From c91046e3bd637580b4b9ccff1cf4a927db96db4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Markus=20K=C3=BChbach?= Date: Thu, 18 Apr 2024 11:32:44 +0200 Subject: [PATCH 01/76] Adds partial capital names as renamable in template generation (#310) * Added feedback from meeting 2024/04/17 * Fix tests * Use lru_cache * Use NXODD_name[nxodd_name] in template --------- Co-authored-by: mkuehbach Co-authored-by: domna --- pynxtools/dataconverter/helpers.py | 28 ++--- .../dataconverter/readers/example/reader.py | 2 +- tests/dataconverter/test_convert.py | 72 +++++++----- tests/dataconverter/test_helpers.py | 107 +++++++++++------- tests/dataconverter/test_writer.py | 18 +-- 5 files changed, 125 insertions(+), 102 deletions(-) diff --git a/pynxtools/dataconverter/helpers.py b/pynxtools/dataconverter/helpers.py index ce7f4e754..2dfbb6c43 100644 --- a/pynxtools/dataconverter/helpers.py +++ b/pynxtools/dataconverter/helpers.py @@ -21,6 +21,7 @@ import logging import re from datetime import datetime, timezone +from functools import lru_cache from typing import Any, Callable, List, Optional, Tuple, Union import h5py @@ -142,6 +143,8 @@ def generate_template_from_nxdl( suffix = "" if "name" in root.attrib: suffix = root.attrib["name"] + if any(map(str.isupper, suffix)): + suffix = f"{suffix}[{suffix.lower()}]" elif "type" in root.attrib: nexus_class = convert_nexus_to_caps(root.attrib["type"]) hdf5name = f"[{convert_nexus_to_suggested_name(root.attrib['type'])}]" @@ -389,20 +392,12 @@ def is_valid_data_field(value, nxdl_type, path): return value -def path_in_data_dict(nxdl_path: str, hdf_path: str, data: dict) -> Tuple[bool, str]: +@lru_cache(maxsize=None) +def path_in_data_dict(nxdl_path: str, data_keys: Tuple[str, ...]) -> Tuple[bool, str]: """Checks if there is an accepted variation of path in the dictionary & returns the path.""" - accepted_unfilled_key = None - for key in data.keys(): - if ( - nxdl_path == convert_data_converter_dict_to_nxdl_path(key) - or convert_data_dict_path_to_hdf5_path(key) == hdf_path - ): - if data[key] is None: - accepted_unfilled_key = key - continue + for key in data_keys: + if nxdl_path == convert_data_converter_dict_to_nxdl_path(key): return True, key - if accepted_unfilled_key: - return True, accepted_unfilled_key return False, None @@ -447,12 +442,7 @@ def all_required_children_are_set(optional_parent_path, data, nxdl_root): if ( nxdl_key[0 : nxdl_key.rfind("/")] == optional_parent_path and is_node_required(nxdl_key, nxdl_root) - and data[ - path_in_data_dict( - nxdl_key, convert_data_dict_path_to_hdf5_path(key), data - )[1] - ] - is None + and data[path_in_data_dict(nxdl_key, tuple(data.keys()))[1]] is None ): return False @@ -517,7 +507,7 @@ def ensure_all_required_fields_exist(template, data, nxdl_root): continue nxdl_path = convert_data_converter_dict_to_nxdl_path(path) is_path_in_data_dict, renamed_path = path_in_data_dict( - nxdl_path, convert_data_dict_path_to_hdf5_path(path), data + nxdl_path, tuple(data.keys()) ) renamed_path = path if renamed_path is None else renamed_path diff --git a/pynxtools/dataconverter/readers/example/reader.py b/pynxtools/dataconverter/readers/example/reader.py index d80de3065..76294b3ac 100644 --- a/pynxtools/dataconverter/readers/example/reader.py +++ b/pynxtools/dataconverter/readers/example/reader.py @@ -84,7 +84,7 @@ def read( # internal links template["/ENTRY[entry]/test_link/internal_link"] = { - "link": "/entry/NXODD_name/posint_value" + "link": "/entry/nxodd_name/posint_value" } # external links diff --git a/tests/dataconverter/test_convert.py b/tests/dataconverter/test_convert.py index f72837313..fda2066d8 100644 --- a/tests/dataconverter/test_convert.py +++ b/tests/dataconverter/test_convert.py @@ -117,7 +117,9 @@ def test_cli(caplog, cli_inputs): result = runner.invoke(dataconverter.main_cli, cli_inputs) if "generate-template" in cli_inputs: assert result.exit_code == 0 - assert '"/ENTRY[entry]/NXODD_name/int_value": null,' in result.stdout + assert ( + '"/ENTRY[entry]/NXODD_name[nxodd_name]/int_value": null,' in result.stdout + ) elif "--input-file" in cli_inputs: assert "test_input" in caplog.text elif result.exit_code == 2: @@ -148,36 +150,44 @@ def test_links_and_virtual_datasets(tmp_path): ) assert result.exit_code == 0 - test_nxs = h5py.File(os.path.join(tmp_path, "test_output.h5"), "r") - assert "entry/test_link/internal_link" in test_nxs - assert isinstance(test_nxs["entry/test_link/internal_link"], h5py.Dataset) - assert "entry/test_link/external_link" in test_nxs - assert isinstance(test_nxs["entry/test_link/external_link"], h5py.Dataset) - assert "entry/test_virtual_dataset/concatenate_datasets" in test_nxs - assert isinstance( - test_nxs["entry/test_virtual_dataset/concatenate_datasets"], h5py.Dataset - ) - assert "entry/test_virtual_dataset/sliced_dataset" in test_nxs - assert isinstance( - test_nxs["entry/test_virtual_dataset/sliced_dataset"], h5py.Dataset - ) - # pylint: disable=no-member - assert test_nxs["entry/test_virtual_dataset/sliced_dataset"].shape == (10, 10, 5) - assert "entry/test_virtual_dataset/sliced_dataset2" in test_nxs - assert isinstance( - test_nxs["entry/test_virtual_dataset/sliced_dataset2"], h5py.Dataset - ) - assert test_nxs["entry/test_virtual_dataset/sliced_dataset2"].shape == (10, 10, 10) - assert "entry/test_virtual_dataset/sliced_dataset3" in test_nxs - assert isinstance( - test_nxs["entry/test_virtual_dataset/sliced_dataset3"], h5py.Dataset - ) - assert test_nxs["entry/test_virtual_dataset/sliced_dataset3"].shape == ( - 10, - 10, - 10, - 2, - ) + with h5py.File(os.path.join(tmp_path, "test_output.h5"), "r") as test_nxs: + assert "entry/test_link/internal_link" in test_nxs + assert isinstance(test_nxs["entry/test_link/internal_link"], h5py.Dataset) + assert "entry/test_link/external_link" in test_nxs + assert isinstance(test_nxs["entry/test_link/external_link"], h5py.Dataset) + assert "entry/test_virtual_dataset/concatenate_datasets" in test_nxs + assert isinstance( + test_nxs["entry/test_virtual_dataset/concatenate_datasets"], h5py.Dataset + ) + assert "entry/test_virtual_dataset/sliced_dataset" in test_nxs + assert isinstance( + test_nxs["entry/test_virtual_dataset/sliced_dataset"], h5py.Dataset + ) + # pylint: disable=no-member + assert test_nxs["entry/test_virtual_dataset/sliced_dataset"].shape == ( + 10, + 10, + 5, + ) + assert "entry/test_virtual_dataset/sliced_dataset2" in test_nxs + assert isinstance( + test_nxs["entry/test_virtual_dataset/sliced_dataset2"], h5py.Dataset + ) + assert test_nxs["entry/test_virtual_dataset/sliced_dataset2"].shape == ( + 10, + 10, + 10, + ) + assert "entry/test_virtual_dataset/sliced_dataset3" in test_nxs + assert isinstance( + test_nxs["entry/test_virtual_dataset/sliced_dataset3"], h5py.Dataset + ) + assert test_nxs["entry/test_virtual_dataset/sliced_dataset3"].shape == ( + 10, + 10, + 10, + 2, + ) restore_xarray_file_from_tmp(tmp_path) diff --git a/tests/dataconverter/test_helpers.py b/tests/dataconverter/test_helpers.py index c04fa1309..48a67b12e 100644 --- a/tests/dataconverter/test_helpers.py +++ b/tests/dataconverter/test_helpers.py @@ -147,23 +147,23 @@ def fixture_filled_test_data(template, tmp_path): ) template.clear() - template["/ENTRY[my_entry]/NXODD_name/float_value"] = 2.0 - template["/ENTRY[my_entry]/NXODD_name/float_value/@units"] = "nm" + template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/float_value"] = 2.0 + template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/float_value/@units"] = "nm" template["/ENTRY[my_entry]/optional_parent/required_child"] = 1 template["/ENTRY[my_entry]/optional_parent/optional_child"] = 1 - template["/ENTRY[my_entry]/NXODD_name/bool_value"] = True - template["/ENTRY[my_entry]/NXODD_name/int_value"] = 2 - template["/ENTRY[my_entry]/NXODD_name/int_value/@units"] = "eV" - template["/ENTRY[my_entry]/NXODD_name/posint_value"] = np.array( + template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/bool_value"] = True + template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/int_value"] = 2 + template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/int_value/@units"] = "eV" + template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/posint_value"] = np.array( [1, 2, 3], dtype=np.int8 ) - template["/ENTRY[my_entry]/NXODD_name/posint_value/@units"] = "kg" - template["/ENTRY[my_entry]/NXODD_name/char_value"] = "just chars" + template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/posint_value/@units"] = "kg" + template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/char_value"] = "just chars" template["/ENTRY[my_entry]/definition"] = "NXtest" template["/ENTRY[my_entry]/definition/@version"] = "2.4.6" template["/ENTRY[my_entry]/program_name"] = "Testing program" - template["/ENTRY[my_entry]/NXODD_name/type"] = "2nd type" - template["/ENTRY[my_entry]/NXODD_name/date_value"] = ( + template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/type"] = "2nd type" + template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/date_value"] = ( "2022-01-22T12" ":14:12.05018+00:00" ) template["/ENTRY[my_entry]/required_group/description"] = "An example description" @@ -176,24 +176,30 @@ def fixture_filled_test_data(template, tmp_path): TEMPLATE = Template() -TEMPLATE["optional"]["/ENTRY[my_entry]/NXODD_name/float_value"] = 2.0 # pylint: disable=E1126 -TEMPLATE["optional"]["/ENTRY[my_entry]/NXODD_name/float_value/@units"] = "nm" # pylint: disable=E1126 +TEMPLATE["optional"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/float_value"] = 2.0 # pylint: disable=E1126 +TEMPLATE["optional"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/float_value/@units"] = ( + "nm" # pylint: disable=E1126 +) TEMPLATE["optional"]["/ENTRY[my_entry]/optional_parent/required_child"] = 1 # pylint: disable=E1126 TEMPLATE["optional"]["/ENTRY[my_entry]/optional_parent/optional_child"] = 1 # pylint: disable=E1126 -TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name/bool_value"] = True # pylint: disable=E1126 -TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name/int_value"] = 2 # pylint: disable=E1126 -TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name/int_value/@units"] = "eV" # pylint: disable=E1126 -TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name/posint_value"] = np.array( +TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/bool_value"] = True # pylint: disable=E1126 +TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/int_value"] = 2 # pylint: disable=E1126 +TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/int_value/@units"] = "eV" # pylint: disable=E1126 +TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/posint_value"] = np.array( [1, 2, 3], # pylint: disable=E1126 dtype=np.int8, ) # pylint: disable=E1126 -TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name/posint_value/@units"] = "kg" # pylint: disable=E1126 -TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name/char_value"] = "just chars" # pylint: disable=E1126 +TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/posint_value/@units"] = ( + "kg" # pylint: disable=E1126 +) +TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/char_value"] = ( + "just chars" # pylint: disable=E1126 +) TEMPLATE["required"]["/ENTRY[my_entry]/definition"] = "NXtest" # pylint: disable=E1126 TEMPLATE["required"]["/ENTRY[my_entry]/definition/@version"] = "2.4.6" # pylint: disable=E1126 TEMPLATE["required"]["/ENTRY[my_entry]/program_name"] = "Testing program" # pylint: disable=E1126 -TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name/type"] = "2nd type" # pylint: disable=E1126 -TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name/date_value"] = ( +TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/type"] = "2nd type" # pylint: disable=E1126 +TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/date_value"] = ( "2022-01-22T12:14:12.05018+00:00" # pylint: disable=E1126 ) TEMPLATE["optional"]["/ENTRY[my_entry]/required_group/description"] = ( @@ -218,9 +224,13 @@ def fixture_filled_test_data(template, tmp_path): "data_dict,error_message", [ pytest.param( - alter_dict(TEMPLATE, "/ENTRY[my_entry]/NXODD_name/int_value", "not_a_num"), + alter_dict( + TEMPLATE, + "/ENTRY[my_entry]/NXODD_name[nxodd_name]/int_value", + "not_a_num", + ), ( - "The value at /ENTRY[my_entry]/NXODD_name/in" + "The value at /ENTRY[my_entry]/NXODD_name[nxodd_name]/in" "t_value should be of Python type: (, , )," " as defined in the NXDL as NX_INT." @@ -229,10 +239,12 @@ def fixture_filled_test_data(template, tmp_path): ), pytest.param( alter_dict( - TEMPLATE, "/ENTRY[my_entry]/NXODD_name/bool_value", "NOT_TRUE_OR_FALSE" + TEMPLATE, + "/ENTRY[my_entry]/NXODD_name[nxodd_name]/bool_value", + "NOT_TRUE_OR_FALSE", ), ( - "The value at /ENTRY[my_entry]/NXODD_name/bool_value sh" + "The value at /ENTRY[my_entry]/NXODD_name[nxodd_name]/bool_value sh" "ould be of Python type: (, , ), as defined in the NXDL as NX_BOOLEAN." ), @@ -240,39 +252,49 @@ def fixture_filled_test_data(template, tmp_path): ), pytest.param( alter_dict( - TEMPLATE, "/ENTRY[my_entry]/NXODD_name/int_value", {"link": "/a-link"} + TEMPLATE, + "/ENTRY[my_entry]/NXODD_name[nxodd_name]/int_value", + {"link": "/a-link"}, ), (""), id="link-dict-instead-of-bool", ), pytest.param( - alter_dict(TEMPLATE, "/ENTRY[my_entry]/NXODD_name/posint_value", -1), + alter_dict( + TEMPLATE, "/ENTRY[my_entry]/NXODD_name[nxodd_name]/posint_value", -1 + ), ( - "The value at /ENTRY[my_entry]/NXODD_name/posint_value " + "The value at /ENTRY[my_entry]/NXODD_name[nxodd_name]/posint_value " "should be a positive int." ), id="negative-posint", ), pytest.param( - alter_dict(TEMPLATE, "/ENTRY[my_entry]/NXODD_name/char_value", 3), + alter_dict( + TEMPLATE, "/ENTRY[my_entry]/NXODD_name[nxodd_name]/char_value", 3 + ), ( - "The value at /ENTRY[my_entry]/NXODD_name/char_value should be of Python type:" + "The value at /ENTRY[my_entry]/NXODD_name[nxodd_name]/char_value should be of Python type:" " (, , )," " as defined in the NXDL as NX_CHAR." ), id="int-instead-of-chars", ), pytest.param( - alter_dict(TEMPLATE, "/ENTRY[my_entry]/NXODD_name/float_value", None), + alter_dict( + TEMPLATE, "/ENTRY[my_entry]/NXODD_name[nxodd_name]/float_value", None + ), "", id="empty-optional-field", ), pytest.param( set_to_none_in_dict( - TEMPLATE, "/ENTRY[my_entry]/NXODD_name/bool_value", "required" + TEMPLATE, + "/ENTRY[my_entry]/NXODD_name[nxodd_name]/bool_value", + "required", ), ( - "The data entry corresponding to /ENTRY[entry]/NXODD_name/bool_value is" + "The data entry corresponding to /ENTRY[entry]/NXODD_name[nxodd_name]/bool_value is" " required and hasn't been supplied by the reader." ), id="empty-required-field", @@ -280,7 +302,7 @@ def fixture_filled_test_data(template, tmp_path): pytest.param( alter_dict( TEMPLATE, - "/ENTRY[my_entry]/NXODD_name/date_value", + "/ENTRY[my_entry]/NXODD_name[nxodd_name]/date_value", "2022-01-22T12:14:12.05018+00:00", ), "", @@ -289,7 +311,7 @@ def fixture_filled_test_data(template, tmp_path): pytest.param( alter_dict( TEMPLATE, - "/ENTRY[my_entry]/NXODD_name/date_value", + "/ENTRY[my_entry]/NXODD_name[nxodd_name]/date_value", "2022-01-22T12:14:12.05018Z", ), "", @@ -298,19 +320,21 @@ def fixture_filled_test_data(template, tmp_path): pytest.param( alter_dict( TEMPLATE, - "/ENTRY[my_entry]/NXODD_name/date_value", + "/ENTRY[my_entry]/NXODD_name[nxodd_name]/date_value", "2022-01-22T12:14:12.05018-00:00", ), - "The date at /ENTRY[my_entry]/NXODD_name/date_value should be a timezone aware" + "The date at /ENTRY[my_entry]/NXODD_name[nxodd_name]/date_value should be a timezone aware" " ISO8601 formatted str. For example, 2022-01-22T12:14:12.05018Z or 2022-01-22" "T12:14:12.05018+00:00.", id="UTC-with--00:00", ), pytest.param(listify_template(TEMPLATE), "", id="lists"), pytest.param( - alter_dict(TEMPLATE, "/ENTRY[my_entry]/NXODD_name/type", "Wrong option"), + alter_dict( + TEMPLATE, "/ENTRY[my_entry]/NXODD_name[nxodd_name]/type", "Wrong option" + ), ( - "The value at /ENTRY[my_entry]/NXODD_name/type should be on of the following" + "The value at /ENTRY[my_entry]/NXODD_name[nxodd_name]/type should be on of the following" " strings: [1st type,2nd type,3rd type,4th type]" ), id="wrong-enum-choice", @@ -427,12 +451,7 @@ def test_validate_data_dict( ) def test_path_in_data_dict(nxdl_path, expected, template): """Unit test for helper function to check if an NXDL path exists in the reader dictionary.""" - assert ( - helpers.path_in_data_dict( - nxdl_path, helpers.convert_data_dict_path_to_hdf5_path(nxdl_path), template - ) - == expected - ) + assert helpers.path_in_data_dict(nxdl_path, tuple(template.keys())) == expected def test_atom_type_extractor_and_hill_conversion(): diff --git a/tests/dataconverter/test_writer.py b/tests/dataconverter/test_writer.py index 55b3cb43b..506940c46 100644 --- a/tests/dataconverter/test_writer.py +++ b/tests/dataconverter/test_writer.py @@ -19,13 +19,17 @@ import os -import pytest import h5py -from pynxtools.dataconverter.exceptions import InvalidDictProvided - +import pytest +from pynxtools.dataconverter.exceptions import InvalidDictProvided from pynxtools.dataconverter.writer import Writer -from .test_helpers import fixture_filled_test_data, fixture_template, alter_dict # pylint: disable=unused-import + +from .test_helpers import ( # pylint: disable=unused-import + alter_dict, + fixture_filled_test_data, + fixture_template, +) @pytest.mark.usefixtures("filled_test_data") @@ -50,9 +54,9 @@ def test_write(writer): """Test for the Writer's write function. Checks whether entries given above get written out.""" writer.write() test_nxs = h5py.File(writer.output_path, "r") - assert test_nxs["/my_entry/NXODD_name/int_value"][()] == 2 - assert test_nxs["/my_entry/NXODD_name/int_value"].attrs["units"] == "eV" - assert test_nxs["/my_entry/NXODD_name/posint_value"].shape == (3,) # pylint: disable=no-member + assert test_nxs["/my_entry/nxodd_name/int_value"][()] == 2 + assert test_nxs["/my_entry/nxodd_name/int_value"].attrs["units"] == "eV" + assert test_nxs["/my_entry/nxodd_name/posint_value"].shape == (3,) # pylint: disable=no-member def test_write_link(writer): From df8001b1a61bfd0769d40d4dca4be805549aaf28 Mon Sep 17 00:00:00 2001 From: Florian Dobener Date: Thu, 18 Apr 2024 18:54:03 +0200 Subject: [PATCH 02/76] Fixes enumeration check (#313) * Fixes enumeration check * Updates get_enums function * Update definitions * Change errors to warnings * Adapt tests * Update defs * Check full inheritance chain for enums * Respond to None in get_enums * Update defs * Cleanup return get_inherited_nodes * Update definitions --- pynxtools/dataconverter/helpers.py | 21 +++++++++++---------- pynxtools/definitions | 2 +- pynxtools/nexus-version.txt | 2 +- tests/dataconverter/test_helpers.py | 10 +++++++++- 4 files changed, 22 insertions(+), 13 deletions(-) diff --git a/pynxtools/dataconverter/helpers.py b/pynxtools/dataconverter/helpers.py index 2dfbb6c43..d81cb1f5d 100644 --- a/pynxtools/dataconverter/helpers.py +++ b/pynxtools/dataconverter/helpers.py @@ -264,14 +264,12 @@ def convert_data_dict_path_to_hdf5_path(path) -> str: return hdf5path -def is_value_valid_element_of_enum(value, elem) -> Tuple[bool, list]: +def is_value_valid_element_of_enum(value, elist) -> Tuple[bool, list]: """Checks whether a value has to be specific from the NXDL enumeration and returns options.""" - if elem is not None: - has_enums, enums = nexus.get_enums(elem) - if has_enums and ( - isinstance(value, list) or value not in enums[0:-1] or value == "" - ): - return False, enums + for elem in elist: + enums = nexus.get_enums(elem) + if enums is not None: + return value in enums, enums return True, [] @@ -465,7 +463,7 @@ def check_optionality_based_on_parent_group(path, nxdl_path, nxdl_root, data, te if is_nxdl_path_a_child( nxdl_path, optional_parent_nxdl ) and not all_required_children_are_set(optional_parent, data, nxdl_root): - raise LookupError( + logger.warning( f"The data entry, {path}, has an optional parent, " f"{optional_parent}, with required children set. Either" f" provide no children for {optional_parent} or provide" @@ -617,9 +615,12 @@ def validate_data_dict(template, data, nxdl_root: ET.Element): else "NXDL_TYPE_UNAVAILABLE" ) data[path] = is_valid_data_field(data[path], nxdl_type, path) - is_valid_enum, enums = is_value_valid_element_of_enum(data[path], elem) + elist = nexus.get_inherited_nodes( + nxdl_path, path.rsplit("/", 1)[-1], nxdl_root + )[2] + is_valid_enum, enums = is_value_valid_element_of_enum(data[path], elist) if not is_valid_enum: - raise ValueError( + logger.warning( f"The value at {path} should be on of the " f"following strings: {enums}" ) diff --git a/pynxtools/definitions b/pynxtools/definitions index 2ac33b2cf..88ff21539 160000 --- a/pynxtools/definitions +++ b/pynxtools/definitions @@ -1 +1 @@ -Subproject commit 2ac33b2cfd753410cfd7e24993d24473453d835d +Subproject commit 88ff215394769fdcd2e15c74c20adec2ae10cbf7 diff --git a/pynxtools/nexus-version.txt b/pynxtools/nexus-version.txt index 29e560261..6ddb90be7 100644 --- a/pynxtools/nexus-version.txt +++ b/pynxtools/nexus-version.txt @@ -1 +1 @@ -v2020.10-1637-g2ac33b2cf \ No newline at end of file +v2020.10-1652-g88ff21539 \ No newline at end of file diff --git a/tests/dataconverter/test_helpers.py b/tests/dataconverter/test_helpers.py index 48a67b12e..e03000b44 100644 --- a/tests/dataconverter/test_helpers.py +++ b/tests/dataconverter/test_helpers.py @@ -335,7 +335,7 @@ def fixture_filled_test_data(template, tmp_path): ), ( "The value at /ENTRY[my_entry]/NXODD_name[nxodd_name]/type should be on of the following" - " strings: [1st type,2nd type,3rd type,4th type]" + " strings: ['1st type', '2nd type', '3rd type', '4th type']" ), id="wrong-enum-choice", ), @@ -430,6 +430,14 @@ def test_validate_data_dict( captured_logs = caplog.records helpers.validate_data_dict(template, data_dict, nxdl_root) assert any(error_message in rec.message for rec in captured_logs) + elif request.node.callspec.id in ( + "wrong-enum-choice", + "atleast-one-required-child-not-provided-optional-parent", + ): + with caplog.at_level(logging.WARNING): + helpers.validate_data_dict(template, data_dict, nxdl_root) + + assert error_message in caplog.text else: with pytest.raises(Exception) as execinfo: helpers.validate_data_dict(template, data_dict, nxdl_root) From ef456ed9e6e549f2868170b14b49eebc37f46a1e Mon Sep 17 00:00:00 2001 From: Florian Dobener Date: Thu, 25 Apr 2024 15:11:19 +0200 Subject: [PATCH 03/76] Write definition and version directly independently from the reader (#312) * Emit a sensible error message if the nxdl does not exist * Fix test for non existing nxdl * Write definition and version automatically * Don't overwrite version * Move get entry names to template --- pynxtools/dataconverter/convert.py | 26 ++++++++++++++++--------- pynxtools/dataconverter/helpers.py | 30 ++++++++++++++++++++++++++++- pynxtools/dataconverter/template.py | 16 +++++++++++++++ tests/dataconverter/test_convert.py | 7 ++++++- tests/dataconverter/test_helpers.py | 24 ++++++++++++++++++++++- 5 files changed, 91 insertions(+), 12 deletions(-) diff --git a/pynxtools/dataconverter/convert.py b/pynxtools/dataconverter/convert.py index fcbb30bae..74670bfa5 100644 --- a/pynxtools/dataconverter/convert.py +++ b/pynxtools/dataconverter/convert.py @@ -207,6 +207,9 @@ def transfer_data_into_template( data = data_reader().read( # type: ignore[operator] template=Template(template), file_paths=input_file, **kwargs ) + entry_names = data.get_all_entry_names() + for entry_name in entry_names: + helpers.write_nexus_def_to_entry(data, entry_name, nxdl_name) if not skip_verify: helpers.validate_data_dict(template, data, nxdl_root) return data @@ -423,15 +426,20 @@ def convert_cli( "The --input-file option is deprecated. Please use the positional arguments instead." ) - convert( - tuple(file_list) + input_file, - reader, - nxdl, - output, - fair, - undocumented, - skip_verify, - ) + try: + convert( + tuple(file_list) + input_file, + reader, + nxdl, + output, + fair, + undocumented, + skip_verify, + ) + except FileNotFoundError as exc: + raise click.BadParameter( + f"{nxdl} is not a valid application definition", param_hint="--nxdl" + ) from exc @main_cli.command() diff --git a/pynxtools/dataconverter/helpers.py b/pynxtools/dataconverter/helpers.py index d81cb1f5d..c186a19f8 100644 --- a/pynxtools/dataconverter/helpers.py +++ b/pynxtools/dataconverter/helpers.py @@ -686,7 +686,7 @@ def add_default_root_attributes(data, filename): def update_and_warn(key: str, value: str): if key in data and data[key] != value: logger.warning( - f"The NXroot entry '{key}' (value: {data[key]}) should not be populated by " + f"The NXroot entry '{key}' (value: {data[key]}) should not be changed by " f"the reader. This is overwritten by the actually used value '{value}'" ) data[key] = value @@ -705,6 +705,34 @@ def update_and_warn(key: str, value: str): update_and_warn("/@h5py_version", h5py.__version__) +def write_nexus_def_to_entry(data, entry_name: str, nxdl_def: str): + """ + Writes the used nexus definition and version to /ENTRY/definition + """ + + def update_and_warn(key: str, value: str, overwrite=False): + if key in data and data[key] is not None and data[key] != value: + report = ( + f"This is overwritten by the actually used value '{value}'" + if overwrite + else f"The provided version '{value}' is kept. We assume you know what you are doing." + ) + logger.log( + logging.WARNING if overwrite else logging.INFO, + f"The entry '{key}' (value: {data[key]}) should not be changed by " + f"the reader. {report}", + ) + if overwrite or data.get(key) is None: + data[key] = value + + update_and_warn(f"/ENTRY[{entry_name}]/definition", nxdl_def, overwrite=True) + update_and_warn( + f"/ENTRY[{entry_name}]/definition/@version", + get_nexus_version(), + overwrite=False, + ) + + def extract_atom_types(formula, mode="hill"): """Extract atom types form chemical formula.""" atom_types: set = set() diff --git a/pynxtools/dataconverter/template.py b/pynxtools/dataconverter/template.py index b01a6dd05..2983e295b 100644 --- a/pynxtools/dataconverter/template.py +++ b/pynxtools/dataconverter/template.py @@ -19,6 +19,8 @@ import copy import json +import re +from typing import Set from pynxtools.dataconverter import helpers @@ -197,6 +199,20 @@ def rename_entry(self, old_name: str, new_name: str, deepcopy=True): internal_dict[f"/ENTRY[{new_name}]{rest_of_path}"] = value del internal_dict[key] + def get_all_entry_names(self) -> Set[str]: + """ + Get all entry names in the template. + + Returns: + Set[str]: A set of entry names. + """ + entry_names = set() + for key in self: + entry_name_match = re.search(r"\/ENTRY\[([a-zA-Z0-9_\.]+)\]", key) + if entry_name_match is not None: + entry_names.add(entry_name_match.group(1)) + return entry_names + def update(self, template): """Merges second template to original or updates values from a dictionary if the type of :code:`template` is dict""" diff --git a/tests/dataconverter/test_convert.py b/tests/dataconverter/test_convert.py index fda2066d8..7d63e2590 100644 --- a/tests/dataconverter/test_convert.py +++ b/tests/dataconverter/test_convert.py @@ -21,6 +21,7 @@ import os from pathlib import Path +import click import h5py import pytest from click.testing import CliRunner @@ -83,7 +84,11 @@ def test_find_nxdl(cli_inputs): runner = CliRunner() result = runner.invoke(dataconverter.convert_cli, cli_inputs) if "NXdoesnotexist" in cli_inputs: - assert isinstance(result.exception, FileNotFoundError) + assert result.exit_code == 2 + assert result.output.endswith( + "Error: Invalid value for --nxdl: " + "NXdoesnotexist is not a valid application definition\n" + ) else: assert isinstance(result.exception, Exception) assert "The chosen NXDL isn't supported by the selected reader." in str( diff --git a/tests/dataconverter/test_helpers.py b/tests/dataconverter/test_helpers.py index e03000b44..8a1319fb6 100644 --- a/tests/dataconverter/test_helpers.py +++ b/tests/dataconverter/test_helpers.py @@ -483,6 +483,8 @@ def test_writing_of_root_attributes(caplog): filename = "my_nexus_file.nxs" with caplog.at_level(logging.WARNING): helpers.add_default_root_attributes(template, filename) + helpers.write_nexus_def_to_entry(template, "entry", "NXtest") + helpers.write_nexus_def_to_entry(template, "entry1", "NXtest") assert "" == caplog.text @@ -497,6 +499,10 @@ def test_writing_of_root_attributes(caplog): assert "/@NeXus_version" in keys_added assert "/@HDF5_version" in keys_added assert "/@h5py_version" in keys_added + assert "/ENTRY[entry]/definition" in keys_added + assert "/ENTRY[entry]/definition/@version" in keys_added + assert "/ENTRY[entry1]/definition" in keys_added + assert "/ENTRY[entry1]/definition/@version" in keys_added def test_warning_on_root_attribute_overwrite(caplog): @@ -510,10 +516,26 @@ def test_warning_on_root_attribute_overwrite(caplog): with caplog.at_level(logging.WARNING): helpers.add_default_root_attributes(template, filname) error_text = ( - "The NXroot entry '/@NX_class' (value: NXwrong) should not be populated by the reader. " + "The NXroot entry '/@NX_class' (value: NXwrong) should not be changed by the reader. " "This is overwritten by the actually used value 'NXroot'" ) assert error_text in caplog.text assert "/@NX_class" in template.keys() assert template["/@NX_class"] == "NXroot" + + +def test_warning_on_definition_changed_by_reader(caplog): + template = Template() + template["/ENTRY[entry]/definition"] = "NXwrong" + with caplog.at_level(logging.WARNING): + helpers.write_nexus_def_to_entry(template, "entry", "NXtest") + + error_text = ( + "The entry '/ENTRY[entry]/definition' (value: NXwrong) should not be changed by the reader. " + "This is overwritten by the actually used value 'NXtest'" + ) + assert error_text in caplog.text + + assert "/ENTRY[entry]/definition" in template.keys() + assert template["/ENTRY[entry]/definition"] == "NXtest" From c4a9466532f961365008cdebde493cdde6dce568 Mon Sep 17 00:00:00 2001 From: Florian Dobener Date: Fri, 26 Apr 2024 12:24:37 +0200 Subject: [PATCH 04/76] Correct validation for required fields in variadic groups (#314) * Add required under optional in group * rename to field * Fix other tests * Check required field provided * Fix all_required_children_are_set * Fix tests * Use if checks instead of try..except * Add routine to check required fields for repeating groups * Delete temporary file * Fix path in data dict test * Fix tests * Cleanup * Remove debugging line * Add collector class * Remove commented lines * Check validation return type and logging * Add tests for repeating groups * Fix report of variadic groups set to all None * Fixes undocumented units and reporting of all none required groups * Use dict paths everywhere --- pynxtools/dataconverter/helpers.py | 357 +++++++++++++++--- .../dataconverter/readers/example/reader.py | 1 + pynxtools/dataconverter/template.py | 15 +- tests/data/dataconverter/NXtest.nxdl.xml | 8 + tests/dataconverter/test_helpers.py | 152 ++++++-- 5 files changed, 435 insertions(+), 98 deletions(-) diff --git a/pynxtools/dataconverter/helpers.py b/pynxtools/dataconverter/helpers.py index c186a19f8..591db424e 100644 --- a/pynxtools/dataconverter/helpers.py +++ b/pynxtools/dataconverter/helpers.py @@ -21,8 +21,9 @@ import logging import re from datetime import datetime, timezone +from enum import Enum from functools import lru_cache -from typing import Any, Callable, List, Optional, Tuple, Union +from typing import Any, Callable, List, Optional, Set, Tuple, Union import h5py import lxml.etree as ET @@ -30,6 +31,8 @@ from ase.data import chemical_symbols from pynxtools import get_nexus_version, get_nexus_version_hash +from pynxtools.dataconverter.template import Template +from pynxtools.definitions.dev_tools.utils.nxdl_utils import get_inherited_nodes from pynxtools.nexus import nexus from pynxtools.nexus.nexus import NxdlAttributeNotFoundError @@ -37,6 +40,93 @@ logger.setLevel(logging.INFO) +class ValidationProblem(Enum): + UnitWithoutDocumentation = 1 + InvalidEnum = 2 + OptionalParentWithoutRequiredGroup = 3 + OptionalParentWithoutRequiredField = 4 + MissingRequiredGroup = 5 + MissingRequiredField = 6 + InvalidType = 7 + InvalidDatetime = 8 + IsNotPosInt = 9 + + +class Collector: + """A class to collect data and return it in a dictionary format.""" + + def __init__(self): + self.data = set() + + def insert_and_log( + self, path: str, log_type: ValidationProblem, value: Optional[Any], *args + ): + """Inserts a path into the data dictionary and logs the action.""" + if value is None: + value = "" + + if log_type == ValidationProblem.UnitWithoutDocumentation: + logger.warning( + f"The unit, {path} = {value}, " + "is being written but has no documentation" + ) + elif log_type == ValidationProblem.InvalidEnum: + logger.warning( + f"The value at {path} should be on of the " + f"following strings: {value}" + ) + elif log_type == ValidationProblem.OptionalParentWithoutRequiredGroup: + logger.warning( + f"The required group, {path}, hasn't been supplied" + f" while its optional parent, {value}, is supplied." + ) + elif log_type == ValidationProblem.OptionalParentWithoutRequiredField: + logger.warning( + f"The data entry, {path}, has an optional parent, " + f"{value}, with required children set. Either" + f" provide no children for {value} or provide" + f" all required ones." + ) + elif log_type == ValidationProblem.MissingRequiredGroup: + logger.warning(f"The required group, {path}, hasn't been supplied.") + elif log_type == ValidationProblem.MissingRequiredField: + logger.warning( + f"The data entry corresponding to {path} is required " + "and hasn't been supplied by the reader.", + ) + elif log_type == ValidationProblem.InvalidType: + logger.warning( + f"The value at {path} should be one of: {value}" + f", as defined in the NXDL as {args[0] if args else ''}." + ) + elif log_type == ValidationProblem.InvalidDatetime: + logger.warning( + f"The value at {path} = {value} should be a timezone aware ISO8601 " + "formatted str. For example, 2022-01-22T12:14:12.05018Z" + " or 2022-01-22T12:14:12.05018+00:00." + ) + elif log_type == ValidationProblem.IsNotPosInt: + logger.warning( + f"The value at {path} should be a positive int, but is {value}." + ) + self.data.add(path) + + def has_validation_problems(self): + """Returns True if there were any validation problems.""" + return len(self.data) > 0 + + def get(self): + """Returns the set of problematic paths.""" + return self.data + + def clear(self): + """Clears the collected data.""" + self.data = set() + + +collector = Collector() + + def is_a_lone_group(xml_element) -> bool: """Checks whether a given group XML element has no field or attributes mentioned""" if xml_element.get("type") == "NXentry": @@ -141,14 +231,17 @@ def generate_template_from_nxdl( return suffix = "" - if "name" in root.attrib: + if "name" in root.attrib and not contains_uppercase(root.attrib["name"]): suffix = root.attrib["name"] - if any(map(str.isupper, suffix)): - suffix = f"{suffix}[{suffix.lower()}]" elif "type" in root.attrib: nexus_class = convert_nexus_to_caps(root.attrib["type"]) - hdf5name = f"[{convert_nexus_to_suggested_name(root.attrib['type'])}]" - suffix = f"{nexus_class}{hdf5name}" + name = root.attrib.get("name") + hdf_name = root.attrib.get("type")[2:] # .removeprefix("NX") (python > 3.8) + suffix = ( + f"{name}[{name.lower()}]" + if name is not None + else f"{nexus_class}[{hdf_name}]" + ) path = path + "/" + (f"@{suffix}" if tag == "attribute" else suffix) @@ -213,8 +306,17 @@ def convert_nexus_to_caps(nexus_name): return nexus_name[2:].upper() +def contains_uppercase(field_name: Optional[str]) -> bool: + """Helper function to check if a field name contains uppercase characters.""" + if field_name is None: + return False + return any(char.isupper() for char in field_name) + + def convert_nexus_to_suggested_name(nexus_name): """Helper function to suggest a name for a group from its NeXus class.""" + if contains_uppercase(nexus_name): + return nexus_name return nexus_name[2:] @@ -365,14 +467,13 @@ def is_valid_data_field(value, nxdl_type, path): if value is None: raise ValueError return accepted_types[0](value) - except ValueError as exc: - raise ValueError( - f"The value at {path} should be of Python type: {accepted_types}" - f", as defined in the NXDL as {nxdl_type}." - ) from exc + except ValueError: + collector.insert_and_log( + path, ValidationProblem.InvalidType, accepted_types, nxdl_type + ) if nxdl_type == "NX_POSINT" and not is_positive_int(value): - raise ValueError(f"The value at {path} should be a positive int.") + collector.insert_and_log(path, ValidationProblem.IsNotPosInt, value) if nxdl_type in ("ISO8601", "NX_DATE_TIME"): iso8601 = re.compile( @@ -381,22 +482,19 @@ def is_valid_data_field(value, nxdl_type, path): ) results = iso8601.search(value) if results is None: - raise ValueError( - f"The date at {path} should be a timezone aware ISO8601 " - f"formatted str. For example, 2022-01-22T12:14:12.05018Z" - f" or 2022-01-22T12:14:12.05018+00:00." - ) + collector.insert_and_log(path, ValidationProblem.InvalidDatetime, value) return value @lru_cache(maxsize=None) -def path_in_data_dict(nxdl_path: str, data_keys: Tuple[str, ...]) -> Tuple[bool, str]: +def path_in_data_dict(nxdl_path: str, data_keys: Tuple[str, ...]) -> List[str]: """Checks if there is an accepted variation of path in the dictionary & returns the path.""" + found_keys = [] for key in data_keys: if nxdl_path == convert_data_converter_dict_to_nxdl_path(key): - return True, key - return False, None + found_keys.append(key) + return found_keys def check_for_optional_parent(path: str, nxdl_root: ET.Element) -> str: @@ -430,17 +528,17 @@ def is_node_required(nxdl_key, nxdl_root): def all_required_children_are_set(optional_parent_path, data, nxdl_root): """Walks over optional parent's children and makes sure all required ones are set""" - optional_parent_path = convert_data_converter_dict_to_nxdl_path( - optional_parent_path - ) for key in data: if key in data["lone_groups"]: continue nxdl_key = convert_data_converter_dict_to_nxdl_path(key) + name = nxdl_key[nxdl_key.rfind("/") + 1 :] + renamed_path = f"{optional_parent_path}/{name}" if ( - nxdl_key[0 : nxdl_key.rfind("/")] == optional_parent_path + nxdl_key[: nxdl_key.rfind("/")] + == convert_data_converter_dict_to_nxdl_path(optional_parent_path) and is_node_required(nxdl_key, nxdl_root) - and data[path_in_data_dict(nxdl_key, tuple(data.keys()))[1]] is None + and (renamed_path not in data or data[renamed_path] is None) ): return False @@ -458,16 +556,22 @@ def is_nxdl_path_a_child(nxdl_path: str, parent: str): def check_optionality_based_on_parent_group(path, nxdl_path, nxdl_root, data, template): """Checks whether field is part of an optional parent and then confirms its optionality""" + + def trim_path_to(parent: str, path: str): + count = len(parent.split("/")) + return "/".join(path.split("/")[:count]) + for optional_parent in template["optional_parents"]: optional_parent_nxdl = convert_data_converter_dict_to_nxdl_path(optional_parent) if is_nxdl_path_a_child( nxdl_path, optional_parent_nxdl - ) and not all_required_children_are_set(optional_parent, data, nxdl_root): - logger.warning( - f"The data entry, {path}, has an optional parent, " - f"{optional_parent}, with required children set. Either" - f" provide no children for {optional_parent} or provide" - f" all required ones." + ) and not all_required_children_are_set( + trim_path_to(optional_parent, path), data, nxdl_root + ): + collector.insert_and_log( + path, + ValidationProblem.OptionalParentWithoutRequiredField, + optional_parent, ) @@ -496,40 +600,147 @@ def does_group_exist(path_to_group, data): return False -# pylint: disable=W1203 +def get_concept_basepath(path: str) -> str: + """Get the concept path from the path""" + path_list = path.split("/") + concept_path = [] + for p in path_list: + if re.search(r"[A-Z]", p): + concept_path.append(p) + return "/" + "/".join(concept_path) + + +def ensure_all_required_fields_exist_in_variadic_groups( + template: Template, data: Template, check_basepaths: Set[str] +): + """ + Checks whether all required fields (according to `template`) + in `data` are present in their respective + variadic groups given by `check_basepaths`. + + Args: + template (Template): The template to use as reference. + data (Template): The template containing the actual data + check_basepaths (Set[str]): + A set of basepaths of the form /ENTRY/MY_GROUP to check for missing fields. + All groups matching the basepath will be checked for missing fields. + """ + + @lru_cache(maxsize=None) + def get_required_fields_from(base_path: str) -> Set[str]: + required_fields = set() + for path in template["required"]: + if ( + get_concept_basepath(convert_data_converter_dict_to_nxdl_path(path)) + == base_path + ): + entry_name = get_name_from_data_dict_entry(path[path.rindex("/") + 1 :]) + if entry_name == "@units": + required_fields.add(f"{path.rsplit('/', 2)[1]}/@units") + continue + required_fields.add( + get_name_from_data_dict_entry(path[path.rindex("/") + 1 :]) + ) + + return required_fields + + @lru_cache(maxsize=None) + def get_concept_variations(base_path: str) -> Set[str]: + paths = set() + for path in data: + if ( + get_concept_basepath(convert_data_converter_dict_to_nxdl_path(path)) + == base_path + ): + paths.add(get_concept_basepath(path)) + return paths + + @lru_cache(maxsize=None) + def are_all_entries_none(path: str) -> bool: + concept_path = get_concept_basepath(path) + for key in filter(lambda x: x.startswith(concept_path), data): + if data[key] is not None: + return False + return True + + for base_path in check_basepaths: + all_fields_are_none = True + for path in get_concept_variations(base_path): + count = 0 + for required_field in get_required_fields_from(base_path): + if ( + f"{path}/{required_field}" not in data + or data[f"{path}/{required_field}"] is None + ): + missing_field = f"{path}/{required_field}" + count += 1 + if not are_all_entries_none(missing_field): + count -= 1 + collector.insert_and_log( + missing_field, ValidationProblem.MissingRequiredField, None + ) + + if count == 0: + # There are either no required fields, all required fields are set, + # or the missing fields already have been reported. + all_fields_are_none = False + + if all_fields_are_none: + # All entries in all variadic groups are None + generic_dict_path = "/" + "/".join( + map(lambda path: f"{path}[{path.lower()}]", base_path.split("/")[1:]) + ) + collector.insert_and_log( + generic_dict_path, ValidationProblem.MissingRequiredGroup, None + ) + + def ensure_all_required_fields_exist(template, data, nxdl_root): """Checks whether all the required fields are in the returned data object.""" + check_basepaths = set() for path in template["required"]: entry_name = get_name_from_data_dict_entry(path[path.rindex("/") + 1 :]) if entry_name == "@units": continue nxdl_path = convert_data_converter_dict_to_nxdl_path(path) - is_path_in_data_dict, renamed_path = path_in_data_dict( - nxdl_path, tuple(data.keys()) - ) + renamed_paths = path_in_data_dict(nxdl_path, tuple(data.keys())) + + if len(renamed_paths) > 1: + check_basepaths.add(get_concept_basepath(nxdl_path)) + continue + + if not renamed_paths: + renamed_path = path + else: + renamed_path = renamed_paths[0] - renamed_path = path if renamed_path is None else renamed_path if path in template["lone_groups"]: opt_parent = check_for_optional_parent(path, nxdl_root) if opt_parent != "<>": if does_group_exist(opt_parent, data) and not does_group_exist( renamed_path, data ): - logger.warning( - f"The required group, {path}, hasn't been supplied" - f" while its optional parent, {opt_parent}, is supplied." + collector.insert_and_log( + renamed_path, + ValidationProblem.OptionalParentWithoutRequiredGroup, + opt_parent, ) continue if not does_group_exist(renamed_path, data): - logger.warning(f"The required group, {path}, hasn't been supplied.") + collector.insert_and_log( + path, + ValidationProblem.MissingRequiredGroup, + None, + ) continue continue - if not is_path_in_data_dict or data[renamed_path] is None: - logger.warning( - f"The data entry corresponding to {path} is required " - f"and hasn't been supplied by the reader.", + if data[renamed_path] is None: + collector.insert_and_log( + renamed_path, ValidationProblem.MissingRequiredField, None ) + ensure_all_required_fields_exist_in_variadic_groups(template, data, check_basepaths) + def try_undocumented(data, nxdl_root: ET.Element): """Tries to move entries used that are from base classes but not in AppDef""" @@ -557,11 +768,12 @@ def try_undocumented(data, nxdl_root: ET.Element): try: elem = nexus.get_node_at_nxdl_path(nxdl_path=nxdl_path, elem=nxdl_root) - data[get_required_string(elem)][path] = data.undocumented[path] + optionality = get_required_string(elem) + data[optionality][path] = data.undocumented[path] del data.undocumented[path] units = f"{path}/@units" if units in data.undocumented: - data[get_required_string(elem)][units] = data.undocumented[units] + data[optionality][units] = data.undocumented[units] del data.undocumented[units] except NxdlAttributeNotFoundError: pass @@ -570,10 +782,11 @@ def try_undocumented(data, nxdl_root: ET.Element): def validate_data_dict(template, data, nxdl_root: ET.Element): """Checks whether all the required paths from the template are returned in data dict.""" assert nxdl_root is not None, "The NXDL file hasn't been loaded." + collector.clear() - # nxdl_path_set helps to skip validation check on the same type of nxdl signiture - # This reduces huge amount of runing time - nxdl_path_to_elm: dict = {} + @lru_cache(maxsize=None) + def get_xml_node(nxdl_path: str) -> ET.Element: + return nexus.get_node_at_nxdl_path(nxdl_path=nxdl_path, elem=nxdl_root) # Make sure all required fields exist. ensure_all_required_fields_exist(template, data, nxdl_root) @@ -584,18 +797,41 @@ def validate_data_dict(template, data, nxdl_root: ET.Element): entry_name = get_name_from_data_dict_entry(path[path.rindex("/") + 1 :]) nxdl_path = convert_data_converter_dict_to_nxdl_path(path) - if entry_name == "@units": - continue - if entry_name[0] == "@" and "@" in nxdl_path: index_of_at = nxdl_path.rindex("@") nxdl_path = nxdl_path[0:index_of_at] + nxdl_path[index_of_at + 1 :] - if nxdl_path in nxdl_path_to_elm: - elem = nxdl_path_to_elm[nxdl_path] - else: - elem = nexus.get_node_at_nxdl_path(nxdl_path=nxdl_path, elem=nxdl_root) - nxdl_path_to_elm[nxdl_path] = elem + if entry_name == "@units": + elempath = get_inherited_nodes(nxdl_path, None, nxdl_root)[1] + elem = elempath[-2] + field_path = path.rsplit("/", 1)[0] + if ( + field_path not in data.get_documented() + and "units" not in elem.attrib + ): + collector.insert_and_log( + path, ValidationProblem.UnitWithoutDocumentation, data[path] + ) + continue + + # TODO: If we want we could also enable unit validation here + # field = nexus.get_node_at_nxdl_path( + # nxdl_path=convert_data_converter_dict_to_nxdl_path( + # # The part below is the backwards compatible version of + # # nxdl_path.removesuffix("/units") + # nxdl_path[:-6] if nxdl_path.endswith("/units") else nxdl_path + # ), + # elem=nxdl_root, + # ) + # nxdl_unit = field.attrib.get("units", "") + # if not is_valid_unit(data[path], nxdl_unit): + # raise ValueError( + # f"Invalid unit in {path}. {data[path]} " + # f"is not in unit category {nxdl_unit}" + # ) + continue + + elem = get_xml_node(nxdl_path) # Only check for validation in the NXDL if we did find the entry # otherwise we just pass it along @@ -620,12 +856,9 @@ def validate_data_dict(template, data, nxdl_root: ET.Element): )[2] is_valid_enum, enums = is_value_valid_element_of_enum(data[path], elist) if not is_valid_enum: - logger.warning( - f"The value at {path} should be on of the " - f"following strings: {enums}" - ) + collector.insert_and_log(path, ValidationProblem.InvalidEnum, enums) - return True + return not collector.has_validation_problems() def remove_namespace_from_tag(tag): diff --git a/pynxtools/dataconverter/readers/example/reader.py b/pynxtools/dataconverter/readers/example/reader.py index 76294b3ac..44ff6ace6 100644 --- a/pynxtools/dataconverter/readers/example/reader.py +++ b/pynxtools/dataconverter/readers/example/reader.py @@ -59,6 +59,7 @@ def read( if ( k.startswith("/ENTRY[entry]/required_group") or k == "/ENTRY[entry]/optional_parent/req_group_in_opt_group" + or k.startswith("/ENTRY[entry]/OPTIONAL_group") ): continue diff --git a/pynxtools/dataconverter/template.py b/pynxtools/dataconverter/template.py index 2983e295b..e45e01f6e 100644 --- a/pynxtools/dataconverter/template.py +++ b/pynxtools/dataconverter/template.py @@ -151,16 +151,13 @@ def __getitem__(self, k): if k in ("optional_parents", "lone_groups"): return getattr(self, k) if k.startswith("/"): - try: + if k in self.optional: return self.optional[k] - except KeyError: - try: - return self.recommended[k] - except KeyError: - try: - return self.required[k] - except KeyError: - return self.undocumented[k] + if k in self.recommended: + return self.recommended[k] + if k in self.required: + return self.required[k] + return self.undocumented.get(k) if k in ("required", "optional", "recommended", "undocumented"): return self.get_optionality(k) raise KeyError( diff --git a/tests/data/dataconverter/NXtest.nxdl.xml b/tests/data/dataconverter/NXtest.nxdl.xml index f4aa0aab4..8695a20c9 100644 --- a/tests/data/dataconverter/NXtest.nxdl.xml +++ b/tests/data/dataconverter/NXtest.nxdl.xml @@ -19,6 +19,14 @@ + + + A dummy entry to test optional parent check for a required child. + + + A dummy entry to test optional parent check for an optional child. + + A dummy entry for a float value. diff --git a/tests/dataconverter/test_helpers.py b/tests/dataconverter/test_helpers.py index 8a1319fb6..723aca5cf 100644 --- a/tests/dataconverter/test_helpers.py +++ b/tests/dataconverter/test_helpers.py @@ -20,6 +20,7 @@ import logging import os import xml.etree.ElementTree as ET +from typing import Optional import numpy as np import pytest @@ -51,14 +52,28 @@ def alter_dict(data_dict: Template, key: str, value: object): return None -def set_to_none_in_dict(data_dict: Template, key: str, optionality: str): +def set_to_none_in_dict(data_dict: Optional[Template], key: str, optionality: str): """Helper function to forcefully set path to 'None'""" - if data_dict is not None: - internal_dict = Template(data_dict) - internal_dict[optionality][key] = None - return internal_dict + if data_dict is None: + return None - return None + internal_dict = Template(data_dict) + internal_dict[optionality][key] = None + return internal_dict + + +def set_whole_group_to_none( + data_dict: Optional[Template], key: str, optionality: str +) -> Optional[Template]: + """Set a whole path to None in the dict""" + if data_dict is None: + return None + + internal_dict = Template(data_dict) + for path in data_dict[optionality]: + if path.startswith(key): + internal_dict[optionality][path] = None + return internal_dict def remove_from_dict(data_dict: Template, key: str, optionality: str = "optional"): @@ -195,6 +210,28 @@ def fixture_filled_test_data(template, tmp_path): TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/char_value"] = ( "just chars" # pylint: disable=E1126 ) +TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_two_name]/bool_value"] = True # pylint: disable=E1126 +TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_two_name]/int_value"] = 2 # pylint: disable=E1126 +TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_two_name]/int_value/@units"] = ( + "eV" # pylint: disable=E1126 +) +TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_two_name]/posint_value"] = ( + np.array( + [1, 2, 3], # pylint: disable=E1126 + dtype=np.int8, + ) +) # pylint: disable=E1126 +TEMPLATE["required"][ + "/ENTRY[my_entry]/NXODD_name[nxodd_two_name]/posint_value/@units" +] = "kg" # pylint: disable=E1126 +TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_two_name]/char_value"] = ( + "just chars" # pylint: disable=E1126 +) +TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_two_name]/type"] = "2nd type" # pylint: disable=E1126 +TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_two_name]/date_value"] = ( + "2022-01-22T12:14:12.05018+00:00" # pylint: disable=E1126 +) +TEMPLATE["required"]["/ENTRY[my_entry]/OPTIONAL_group[my_group]/required_field"] = 1 # pylint: disable=E1126 TEMPLATE["required"]["/ENTRY[my_entry]/definition"] = "NXtest" # pylint: disable=E1126 TEMPLATE["required"]["/ENTRY[my_entry]/definition/@version"] = "2.4.6" # pylint: disable=E1126 TEMPLATE["required"]["/ENTRY[my_entry]/program_name"] = "Testing program" # pylint: disable=E1126 @@ -202,6 +239,7 @@ def fixture_filled_test_data(template, tmp_path): TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/date_value"] = ( "2022-01-22T12:14:12.05018+00:00" # pylint: disable=E1126 ) +TEMPLATE["optional"]["/ENTRY[my_entry]/OPTIONAL_group[my_group]/optional_field"] = 1 TEMPLATE["optional"]["/ENTRY[my_entry]/required_group/description"] = ( "An example description" ) @@ -231,7 +269,7 @@ def fixture_filled_test_data(template, tmp_path): ), ( "The value at /ENTRY[my_entry]/NXODD_name[nxodd_name]/in" - "t_value should be of Python type: (, , , )," " as defined in the NXDL as NX_INT." ), @@ -245,7 +283,7 @@ def fixture_filled_test_data(template, tmp_path): ), ( "The value at /ENTRY[my_entry]/NXODD_name[nxodd_name]/bool_value sh" - "ould be of Python type: (, , , , ), as defined in the NXDL as NX_BOOLEAN." ), id="string-instead-of-int", @@ -265,7 +303,7 @@ def fixture_filled_test_data(template, tmp_path): ), ( "The value at /ENTRY[my_entry]/NXODD_name[nxodd_name]/posint_value " - "should be a positive int." + "should be a positive int, but is -1." ), id="negative-posint", ), @@ -293,12 +331,55 @@ def fixture_filled_test_data(template, tmp_path): "/ENTRY[my_entry]/NXODD_name[nxodd_name]/bool_value", "required", ), + ( + "The data entry corresponding to /ENTRY[my_entry]/NXODD_name[nxodd_name]/bool_value is" + " required and hasn't been supplied by the reader." + ), + id="empty-required-field", + ), + pytest.param( + set_to_none_in_dict( + TEMPLATE, + "/ENTRY[my_entry]/NXODD_name[nxodd_two_name]/bool_value", + "required", + ), + ( + "The data entry corresponding to /ENTRY[my_entry]/NXODD_name[nxodd_two_name]/bool_value is" + " required and hasn't been supplied by the reader." + ), + id="empty-required-field", + ), + pytest.param( + remove_from_dict( + remove_from_dict( + TEMPLATE, + "/ENTRY[my_entry]/NXODD_name[nxodd_two_name]/bool_value", + "required", + ), + "/ENTRY[my_entry]/NXODD_name[nxodd_name]/bool_value", + "required", + ), ( "The data entry corresponding to /ENTRY[entry]/NXODD_name[nxodd_name]/bool_value is" " required and hasn't been supplied by the reader." ), id="empty-required-field", ), + pytest.param( + set_whole_group_to_none( + set_whole_group_to_none( + TEMPLATE, + "/ENTRY[my_entry]/NXODD_name", + "required", + ), + "/ENTRY[my_entry]/NXODD_name", + "optional", + ), + ( + "The required group, /ENTRY[entry]/NXODD_name[nxodd_name], hasn't been supplied." + ), + id="all-required-fields-set-to-none", + ), pytest.param( alter_dict( TEMPLATE, @@ -323,7 +404,8 @@ def fixture_filled_test_data(template, tmp_path): "/ENTRY[my_entry]/NXODD_name[nxodd_name]/date_value", "2022-01-22T12:14:12.05018-00:00", ), - "The date at /ENTRY[my_entry]/NXODD_name[nxodd_name]/date_value should be a timezone aware" + "The value at /ENTRY[my_entry]/NXODD_name[nxodd_name]/date_value" + " = 2022-01-22T12:14:12.05018-00:00 should be a timezone aware" " ISO8601 formatted str. For example, 2022-01-22T12:14:12.05018Z or 2022-01-22" "T12:14:12.05018+00:00.", id="UTC-with--00:00", @@ -351,6 +433,29 @@ def fixture_filled_test_data(template, tmp_path): ), id="atleast-one-required-child-not-provided-optional-parent", ), + pytest.param( + set_to_none_in_dict( + TEMPLATE, + "/ENTRY[my_entry]/OPTIONAL_group[my_group]/required_field", + "required", + ), + ( + "The data entry, /ENTRY[my_entry]/OPTIONAL_group[my_group]/optional_field, has an " + "optional parent, /ENTRY[entry]/OPTIONAL_group[optional_group], with required children set" + ". Either provide no children for /ENTRY[entry]/OPTIONAL_group[optional_group] or provide " + "all required ones." + ), + id="required-field-not-provided-in-variadic-optional-group", + ), + pytest.param( + set_to_none_in_dict( + TEMPLATE, + "/ENTRY[my_entry]/OPTIONAL_group[my_group]/optional_field", + "required", + ), + (""), + id="required-field-provided-in-variadic-optional-group", + ), pytest.param( alter_dict( alter_dict( @@ -378,7 +483,7 @@ def fixture_filled_test_data(template, tmp_path): remove_from_dict( TEMPLATE, "/ENTRY[my_entry]/required_group/description" ), - "/ENTRY[my_entry]/required_group", + "/ENTRY[entry]/required_group", None, ), "The required group, /ENTRY[entry]/required_group, hasn't been supplied.", @@ -415,8 +520,11 @@ def test_validate_data_dict( "int-instead-of-chars", "link-dict-instead-of-bool", "opt-group-completely-removed", + "required-field-provided-in-variadic-optional-group", ): - helpers.validate_data_dict(template, data_dict, nxdl_root) + with caplog.at_level(logging.WARNING): + assert helpers.validate_data_dict(template, data_dict, nxdl_root) + assert caplog.text == "" # Missing required fields caught by logger with warning elif request.node.callspec.id in ( "empty-required-field", @@ -426,22 +534,14 @@ def test_validate_data_dict( "missing-empty-yet-required-group2", ): assert "" == caplog.text - # logger records captured_logs = caplog.records - helpers.validate_data_dict(template, data_dict, nxdl_root) + assert not helpers.validate_data_dict(template, data_dict, nxdl_root) assert any(error_message in rec.message for rec in captured_logs) - elif request.node.callspec.id in ( - "wrong-enum-choice", - "atleast-one-required-child-not-provided-optional-parent", - ): + else: with caplog.at_level(logging.WARNING): - helpers.validate_data_dict(template, data_dict, nxdl_root) + assert not helpers.validate_data_dict(template, data_dict, nxdl_root) assert error_message in caplog.text - else: - with pytest.raises(Exception) as execinfo: - helpers.validate_data_dict(template, data_dict, nxdl_root) - assert (error_message) == str(execinfo.value) @pytest.mark.parametrize( @@ -449,12 +549,10 @@ def test_validate_data_dict( [ pytest.param( "/ENTRY/definition/@version", - (True, "/ENTRY[entry]/definition/@version"), + ["/ENTRY[entry]/definition/@version"], id="path-exists-in-dict", ), - pytest.param( - "/RANDOM/does/not/@exist", (False, None), id="path-does-not-exist-in-dict" - ), + pytest.param("/RANDOM/does/not/@exist", [], id="path-does-not-exist-in-dict"), ], ) def test_path_in_data_dict(nxdl_path, expected, template): From ff4a36d76ae017de2e38d53c25d048ceb8d558a3 Mon Sep 17 00:00:00 2001 From: Florian Dobener Date: Tue, 30 Apr 2024 11:19:44 +0200 Subject: [PATCH 05/76] Update defs (#318) * Update defs * Update nexus-version.txt --- pynxtools/definitions | 2 +- pynxtools/nexus-version.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pynxtools/definitions b/pynxtools/definitions index 88ff21539..4ef8770bc 160000 --- a/pynxtools/definitions +++ b/pynxtools/definitions @@ -1 +1 @@ -Subproject commit 88ff215394769fdcd2e15c74c20adec2ae10cbf7 +Subproject commit 4ef8770bc60f507669b6d62fac1c5f911cba5a9b diff --git a/pynxtools/nexus-version.txt b/pynxtools/nexus-version.txt index 6ddb90be7..e69ef7136 100644 --- a/pynxtools/nexus-version.txt +++ b/pynxtools/nexus-version.txt @@ -1 +1 @@ -v2020.10-1652-g88ff21539 \ No newline at end of file +v2020.10-1656-g4ef8770bc \ No newline at end of file From 80f73ee03f01f8ca288b28c12d81d6e52bc3c9c5 Mon Sep 17 00:00:00 2001 From: Ron Hildebrandt Date: Thu, 2 May 2024 11:13:30 +0200 Subject: [PATCH 06/76] deprecation of ellipsometry reader in favor of its own pynxtools-ellips plugin --- README.md | 10 +- examples/README.md | 18 +- examples/ellipsometry/README.md | 19 - examples/ellipsometry/eln_data.yaml | 69 - examples/ellipsometry/test-data.dat | 9795 ----------------- pynxtools/dataconverter/README.md | 3 +- .../dataconverter/readers/ellips/README.md | 4 - .../dataconverter/readers/ellips/__init__.py | 0 .../dataconverter/readers/ellips/mock.py | 150 - .../dataconverter/readers/ellips/reader.py | 484 - .../dataconverter/readers/ellips/README.md | 15 - .../readers/ellips/eln_data.yaml | 69 - .../readers/ellips/test-data.dat | 9795 ----------------- 13 files changed, 12 insertions(+), 20419 deletions(-) delete mode 100644 examples/ellipsometry/README.md delete mode 100644 examples/ellipsometry/eln_data.yaml delete mode 100644 examples/ellipsometry/test-data.dat delete mode 100644 pynxtools/dataconverter/readers/ellips/README.md delete mode 100644 pynxtools/dataconverter/readers/ellips/__init__.py delete mode 100644 pynxtools/dataconverter/readers/ellips/mock.py delete mode 100644 pynxtools/dataconverter/readers/ellips/reader.py delete mode 100644 tests/data/dataconverter/readers/ellips/README.md delete mode 100644 tests/data/dataconverter/readers/ellips/eln_data.yaml delete mode 100644 tests/data/dataconverter/readers/ellips/test-data.dat diff --git a/README.md b/README.md index 1cbead3d5..be0680360 100644 --- a/README.md +++ b/README.md @@ -53,15 +53,17 @@ data into the NeXus standard and visualising the files content. Documentation for the different tools can be found [here](https://fairmat-nfdi.github.io/pynxtools/). # Plugins -There are a number of plugins available for pynxtools. These are extensions of pynxtools used for reading data of specialized experimental techniques. +There are a number of plugins available for pynxtools. These are extensions of pynxtools used for reading data of specific experimental techniques. - [**pynxtools-mpes**](https://github.com/FAIRmat-NFDI/pynxtools-mpes): A reader for multi-dimensional photoelectron spectroscopy data. - [**pynxtools-stm**](https://github.com/FAIRmat-NFDI/pynxtools-stm): A reader for scanning tunneling microscopy (SPM) and spectroscopy (STS) data. - [**pynxtools-xps**](https://github.com/FAIRmat-NFDI/pynxtools-xps): A reader for X-ray photoelectron spectroscopy (XPS) data. - -Respective readers for the research fields of electron microscopy and atom probe are currently refactored into pynxtools plugins. -Until this refactoring will have become completed, users are advised to use the apm and em readers via pynxtools<=0.1.1. - [**pynxtools-apm**](https://github.com/FAIRmat-NFDI/pynxtools-apm): A reader for atom probe as well as related field ion microscopy data. - [**pynxtools-em**](https://github.com/FAIRmat-NFDI/pynxtools-em): A reader for electron microscopy data. +- [**pynxtools-ellips**](https://github.com/FAIRmat-NFDI/pynxtools-ellips): A reader for ellipsometry data. + +Note that pynxtools-apm and pynxtools-em are currently refactored into pynxtools plugins. +Until this refactoring will have become completed, users are advised to use the apm and em readers via pynxtools<=0.1.1. + You can install each of the plugins together with `pynxtools` by passing the name of the plugin as an extra to the pip install call. For example, for the `pynxtools-mpes` plugin: ```shell diff --git a/examples/README.md b/examples/README.md index 3adacdc88..8327df73c 100644 --- a/examples/README.md +++ b/examples/README.md @@ -1,13 +1,13 @@ ## Getting started -We offer examples of how you can convert your data (raw data, numerical data, metadata), +We offer examples of how you can convert your data (raw data, numerical data, metadata), from your acquisition software or electronic lab notebook (ELN), into a NeXus/HDF5 file using the [dataconverter](../pynxtools/dataconverter) tool. -This tool offers parsers/readers/data extractors for various experimental techniques, including -electron microscopy, photo-emission spectroscopy, optical spectroscopy, atom probe, and other -techniques. Please refer to the individual README's in each sub-directory for details. +This tool offers parsers/readers/data extractors for various experimental techniques via +technique specific plugins. The examples contain code snippets for creating a NeXus/HDF5 file for the experimental technique -according to a standardized application definition (e.g. NXem, NXmpes, NXellipsometry, NXapm). +according to a standardized NeXus application definition (e.g. NXem, NXmpes, NXellipsometry, +NXapm, NXopt, NXmpes_xps, NXraman). Respective [Jupyter Notebooks](https://jupyter.org/) are used for running these examples. There is also a documentation of the [dataconverter](../pynxtools/dataconverter) available. @@ -18,11 +18,3 @@ us if you need help. For giving specific feedback to specific parsers/readers/data extractors please contact the respective developers directly and checkout the domain-specific pynxtools plugins: -### em_om, em_spctrscpy -Markus Kühbach - -### mpes, xps -Florian Dobner, Rubel Mozumder, Lukas Pielsticker - -### ellipsometry -Carola Emminger, Florian Dobner diff --git a/examples/ellipsometry/README.md b/examples/ellipsometry/README.md deleted file mode 100644 index 9c7723e36..000000000 --- a/examples/ellipsometry/README.md +++ /dev/null @@ -1,19 +0,0 @@ -# What is NXellipsometry? - -The [NXellipsometry](https://fairmat-experimental.github.io/nexus-fairmat-proposal/9636feecb79bb32b828b1a9804269573256d7696/ellipsometry-structure.html#ellipsometry) application definition is a standard for converting ellipsometry data to make it FAIR. - -# How to use it? - -First you need to install nexusutuils, please follow the [install instructions](https://github.com/FAIRmat-NFDI/pynxtools) to set it up. -This is an example to use the dataconvert with the `ellips` reader and the `NXellipsometry` application definition. -Just execute - -```shell -dataconverter --reader ellips --nxdl NXellipsometry eln_data.yaml --output SiO2onSi.nxs -``` - -in this directory. - -# Are there detailed examples? - -Yes, [here](https://gitlab.mpcdf.mpg.de/nomad-lab/nomad-remote-tools-hub/-/tree/develop/docker/ellips) you can find an exhaustive example how to use `pynxtools` for your ellipsometry research data pipeline. diff --git a/examples/ellipsometry/eln_data.yaml b/examples/ellipsometry/eln_data.yaml deleted file mode 100644 index f20f75861..000000000 --- a/examples/ellipsometry/eln_data.yaml +++ /dev/null @@ -1,69 +0,0 @@ -Data: - data_identifier: 1 - data_software: WVASE - data_software/@url: https://www.jawoollam.com/ellipsometry-software/wvase - data_software/version: '3.882' - data_type: Psi/Delta - spectrum_type: wavelength - spectrum_unit: angstrom -Instrument: - Beam_path: - Detector: - count_time: - unit: s - value: 1.0 - detector_type: CCD spectrometer - focussing_probes: - angular_spread: - unit: rad - value: 0.2 - data_correction: false - light_source: - source_type: arc lamp - rotating_element: - revolutions: 50.0 - Sample_stage: - environment_conditions: - medium: air - stage_type: manual stage - angle_of_incidence/@unit: degrees - calibration_status: no calibration - company: J. A. Woollam Co. - ellipsometer_type: dual compensator - model: RC2 - model/@version: 0.0.1 - rotating_element_type: compensator (source side) - software: CompleteEASE - software/@url: https://www.jawoollam.com/ellipsometry-software/completeease - software/version: '6.37' -Sample: - atom_types: Si, O - backside_roughness: false - chemical_formula: SiO2 - layer_structure: 2nm SiO2 on Si - sample_history: Commercially purchased sample - sample_name: 2nm SiO2 on Si - sample_type: multi layer - substrate: Si -User: - address: Zum Großen Windkanal 2, 12489 Berlin, Germany - affiliation: Humboldt-Universität zu Berlin - email: surname.name@physik.hu-berlin.de - name: Name Surname -colnames: -- type -- wavelength -- angle_of_incidence -- Psi -- Delta -- err.Psi -- err.Delta -derived_parameter_type: depolarization -experiment_description: RC2 scan on 2nm SiO2 on Si in air -experiment_identifier: exp-ID -experiment_type: NIR-Vis-UV spectroscopic ellipsometry -filename: test-data.dat -plot_name: Psi and Delta -sep: \t -skip: 3 -start_time: '2022-01-27T03:35:00+00:00' \ No newline at end of file diff --git a/examples/ellipsometry/test-data.dat b/examples/ellipsometry/test-data.dat deleted file mode 100644 index 211871453..000000000 --- a/examples/ellipsometry/test-data.dat +++ /dev/null @@ -1,9795 +0,0 @@ -2nm SiO2 on Si on RC2 -VASEmethod[EllipsometerType=4 , CompleteEASE=6.37, AcqTime=15.000, ZoneAve=1, Acq. Parameters=DEFAULT.parms,WinCorrected=1] -Angstroms -E 1930.000000 50.000000 40.014217 142.127655 0.008585 0.034774 -E 1940.000000 50.000000 40.026409 142.307449 0.007827 0.031627 -E 1950.000000 50.000000 40.031204 142.483231 0.007221 0.029106 -E 1960.000000 50.000000 40.045902 142.679901 0.006813 0.027399 -E 1970.000000 50.000000 40.065468 142.866608 0.006478 0.025995 -E 1980.000000 50.000000 40.077728 143.102463 0.006224 0.024925 -E 1990.000000 50.000000 40.080673 143.409317 0.006016 0.024045 -E 2000.000000 50.000000 40.082367 143.746017 0.005829 0.023258 -E 2010.000000 50.000000 40.072388 143.990952 0.005649 0.022496 -E 2020.000000 50.000000 40.073170 144.279099 0.005475 0.021767 -E 2030.000000 50.000000 40.069405 144.611435 0.005311 0.021084 -E 2040.000000 50.000000 40.066757 144.883820 0.005150 0.020417 -E 2050.000000 50.000000 40.061028 145.150055 0.004993 0.019760 -E 2060.000000 50.000000 40.055706 145.396118 0.004843 0.019128 -E 2070.000000 50.000000 40.036533 145.661514 0.004703 0.018531 -E 2080.000000 50.000000 40.017166 145.896454 0.004572 0.017967 -E 2090.000000 50.000000 40.025864 146.114670 0.004443 0.017414 -E 2100.000000 50.000000 40.028156 146.370560 0.004322 0.016892 -E 2110.000000 50.000000 40.012478 146.607407 0.004227 0.016464 -E 2120.000000 50.000000 40.007420 146.799438 0.004136 0.016055 -E 2130.000000 50.000000 40.005928 147.055832 0.004045 0.015653 -E 2140.000000 50.000000 40.001190 147.294281 0.003968 0.015308 -E 2150.000000 50.000000 39.999153 147.531891 0.003896 0.014983 -E 2160.000000 50.000000 39.998287 147.757156 0.003830 0.014690 -E 2170.000000 50.000000 39.997860 147.958969 0.003769 0.014416 -E 2180.000000 50.000000 40.001450 148.183533 0.003709 0.014154 -E 2190.000000 50.000000 39.995445 148.426010 0.003648 0.013888 -E 2200.000000 50.000000 39.998291 148.655228 0.003589 0.013635 -E 2210.000000 50.000000 39.994427 148.901932 0.003533 0.013393 -E 2220.000000 50.000000 39.996326 149.173447 0.003476 0.013150 -E 2230.000000 50.000000 40.008663 149.415985 0.003422 0.012924 -E 2240.000000 50.000000 39.993584 149.634827 0.003373 0.012715 -E 2250.000000 50.000000 39.976269 149.894104 0.003326 0.012516 -E 2260.000000 50.000000 39.961422 150.199326 0.003285 0.012341 -E 2270.000000 50.000000 39.936958 150.453156 0.003245 0.012170 -E 2280.000000 50.000000 39.887856 150.692032 0.003205 0.012001 -E 2290.000000 50.000000 39.843830 150.939880 0.003166 0.011832 -E 2300.000000 50.000000 39.790047 151.197968 0.003131 0.011682 -E 2310.000000 50.000000 39.718216 151.398865 0.003097 0.011536 -E 2320.000000 50.000000 39.650379 151.570877 0.003065 0.011396 -E 2330.000000 50.000000 39.578545 151.704727 0.003040 0.011282 -E 2340.000000 50.000000 39.516590 151.776459 0.003016 0.011177 -E 2350.000000 50.000000 39.465984 151.847092 0.002991 0.011067 -E 2360.000000 50.000000 39.431660 151.908035 0.002969 0.010968 -E 2370.000000 50.000000 39.422081 151.941544 0.002946 0.010871 -E 2380.000000 50.000000 39.417023 151.982651 0.002923 0.010774 -E 2390.000000 50.000000 39.422253 152.004868 0.002904 0.010696 -E 2400.000000 50.000000 39.452198 152.051620 0.002887 0.010625 -E 2410.000000 50.000000 39.490494 152.132095 0.002870 0.010556 -E 2420.000000 50.000000 39.535706 152.168243 0.002854 0.010491 -E 2430.000000 50.000000 39.580338 152.246582 0.002844 0.010446 -E 2440.000000 50.000000 39.634945 152.360504 0.002832 0.010399 -E 2450.000000 50.000000 39.692410 152.490509 0.002822 0.010354 -E 2460.000000 50.000000 39.755169 152.634766 0.002814 0.010319 -E 2470.000000 50.000000 39.813477 152.760513 0.002807 0.010287 -E 2480.000000 50.000000 39.871521 152.897903 0.002800 0.010256 -E 2490.000000 50.000000 39.936161 153.070190 0.002796 0.010234 -E 2500.000000 50.000000 39.989059 153.222900 0.002794 0.010223 -E 2510.000000 50.000000 40.051128 153.431931 0.002795 0.010219 -E 2520.000000 50.000000 40.117176 153.628113 0.002793 0.010206 -E 2530.000000 50.000000 40.174896 153.816116 0.002795 0.010208 -E 2540.000000 50.000000 40.230507 154.022125 0.002803 0.010232 -E 2550.000000 50.000000 40.291935 154.220810 0.002811 0.010253 -E 2560.000000 50.000000 40.348503 154.457199 0.002821 0.010285 -E 2570.000000 50.000000 40.409046 154.663589 0.002832 0.010321 -E 2580.000000 50.000000 40.468143 154.894424 0.002846 0.010363 -E 2590.000000 50.000000 40.519966 155.147614 0.002861 0.010413 -E 2600.000000 50.000000 40.567379 155.406998 0.002880 0.010475 -E 2610.000000 50.000000 40.617954 155.660889 0.002901 0.010543 -E 2620.000000 50.000000 40.666866 155.911163 0.002922 0.010612 -E 2630.000000 50.000000 40.725704 156.188797 0.002943 0.010685 -E 2640.000000 50.000000 40.780777 156.469666 0.002967 0.010766 -E 2650.000000 50.000000 40.836395 156.748627 0.002995 0.010861 -E 2660.000000 50.000000 40.883255 157.057495 0.003026 0.010967 -E 2670.000000 50.000000 40.922371 157.383133 0.003058 0.011076 -E 2680.000000 50.000000 40.966640 157.706467 0.003089 0.011183 -E 2690.000000 50.000000 40.998135 158.048111 0.003121 0.011288 -E 2700.000000 50.000000 41.032158 158.406967 0.003152 0.011395 -E 2710.000000 50.000000 41.058334 158.775909 0.003188 0.011518 -E 2720.000000 50.000000 41.071541 159.117783 0.003224 0.011640 -E 2730.000000 50.000000 41.081215 159.480453 0.003257 0.011751 -E 2740.000000 50.000000 41.071716 159.856735 0.003293 0.011870 -E 2750.000000 50.000000 41.051399 160.225784 0.003328 0.011986 -E 2760.000000 50.000000 41.031219 160.599701 0.003365 0.012111 -E 2770.000000 50.000000 40.996609 160.953598 0.003414 0.012274 -E 2780.000000 50.000000 40.965870 161.285217 0.003444 0.012370 -E 2790.000000 50.000000 40.932110 161.638748 0.003470 0.012452 -E 2800.000000 50.000000 40.886234 161.993454 0.003500 0.012548 -E 2810.000000 50.000000 40.836842 162.321747 0.003534 0.012659 -E 2820.000000 50.000000 40.789928 162.643646 0.003571 0.012779 -E 2830.000000 50.000000 40.746315 162.951172 0.003610 0.012905 -E 2840.000000 50.000000 40.697300 163.257889 0.003643 0.013011 -E 2850.000000 50.000000 40.641205 163.590118 0.003685 0.013151 -E 2860.000000 50.000000 40.589268 163.929962 0.003729 0.013293 -E 2870.000000 50.000000 40.521923 164.278595 0.003769 0.013421 -E 2880.000000 50.000000 40.420925 164.634720 0.003817 0.013577 -E 2890.000000 50.000000 40.328045 164.954636 0.003873 0.013757 -E 2900.000000 50.000000 40.215271 165.289719 0.003929 0.013941 -E 2910.000000 50.000000 40.085327 165.590683 0.003987 0.014125 -E 2920.000000 50.000000 39.949558 165.848618 0.004047 0.014318 -E 2930.000000 50.000000 39.814732 166.057159 0.004105 0.014503 -E 2940.000000 50.000000 39.681282 166.243378 0.004165 0.014694 -E 2950.000000 50.000000 39.559025 166.403976 0.004224 0.014881 -E 2960.000000 50.000000 39.424557 166.545700 0.004281 0.015061 -E 2970.000000 50.000000 39.284615 166.702316 0.004339 0.015242 -E 2980.000000 50.000000 39.176281 166.800934 0.004400 0.015438 -E 2990.000000 50.000000 39.070713 166.863754 0.004461 0.015633 -E 3000.000000 50.000000 38.975414 166.938889 0.004524 0.015836 -E 3010.000000 50.000000 38.878563 167.028732 0.004582 0.016020 -E 3020.000000 50.000000 38.785034 167.112335 0.004641 0.016210 -E 3030.000000 50.000000 38.701351 167.190033 0.004706 0.016422 -E 3040.000000 50.000000 38.622021 167.238129 0.004768 0.016623 -E 3050.000000 50.000000 38.540707 167.255814 0.004840 0.016855 -E 3060.000000 50.000000 38.473972 167.313309 0.004910 0.017083 -E 3070.000000 50.000000 38.416367 167.336746 0.004974 0.017294 -E 3080.000000 50.000000 38.352753 167.337173 0.005046 0.017531 -E 3090.000000 50.000000 38.296818 167.415207 0.005117 0.017763 -E 3100.000000 50.000000 38.234535 167.441376 0.005179 0.017965 -E 3110.000000 50.000000 38.183598 167.477051 0.005243 0.018175 -E 3120.000000 50.000000 38.136162 167.540756 0.005313 0.018406 -E 3130.000000 50.000000 38.092407 167.538284 0.005372 0.018598 -E 3140.000000 50.000000 38.067379 167.591751 0.005435 0.018811 -E 3150.000000 50.000000 38.038094 167.658295 0.005501 0.019030 -E 3160.000000 50.000000 37.972755 167.700485 0.005564 0.019233 -E 3170.000000 50.000000 37.940628 167.764511 0.005628 0.019443 -E 3180.000000 50.000000 37.922256 167.802231 0.005690 0.019650 -E 3190.000000 50.000000 37.879593 167.853348 0.005761 0.019885 -E 3200.000000 50.000000 37.864590 167.880615 0.005822 0.020089 -E 3210.000000 50.000000 37.832973 167.882980 0.005892 0.020323 -E 3220.000000 50.000000 37.801411 167.955002 0.005960 0.020549 -E 3230.000000 50.000000 37.786137 168.017609 0.006024 0.020762 -E 3240.000000 50.000000 37.760193 168.072266 0.006087 0.020973 -E 3250.000000 50.000000 37.734486 168.142548 0.006147 0.021171 -E 3260.000000 50.000000 37.722507 168.166138 0.006246 0.021506 -E 3270.000000 50.000000 37.717068 168.195221 0.006377 0.021952 -E 3280.000000 50.000000 37.697788 168.251404 0.006512 0.022414 -E 3290.000000 50.000000 37.679295 168.307480 0.006618 0.022770 -E 3300.000000 50.000000 37.667194 168.353973 0.006715 0.023097 -E 3310.000000 50.000000 37.655422 168.415344 0.006815 0.023438 -E 3320.000000 50.000000 37.650436 168.450485 0.006888 0.023685 -E 3330.000000 50.000000 37.617416 168.545044 0.006947 0.023879 -E 3340.000000 50.000000 37.599232 168.592285 0.007002 0.024062 -E 3350.000000 50.000000 37.613369 168.608994 0.007046 0.024212 -E 3360.000000 50.000000 37.604439 168.624405 0.007099 0.024388 -E 3370.000000 50.000000 37.584930 168.719299 0.007153 0.024568 -E 3380.000000 50.000000 37.575653 168.810394 0.007181 0.024660 -E 3390.000000 50.000000 37.577919 168.860031 0.007183 0.024664 -E 3400.000000 50.000000 37.574230 168.908295 0.007188 0.024676 -E 3410.000000 50.000000 37.567123 168.965469 0.007210 0.024749 -E 3420.000000 50.000000 37.570904 169.022476 0.007268 0.024944 -E 3430.000000 50.000000 37.571522 169.074249 0.007324 0.025134 -E 3440.000000 50.000000 37.579929 169.119156 0.007362 0.025266 -E 3450.000000 50.000000 37.588264 169.189346 0.007420 0.025461 -E 3460.000000 50.000000 37.608612 169.275452 0.007477 0.025659 -E 3470.000000 50.000000 37.614811 169.341476 0.007538 0.025869 -E 3480.000000 50.000000 37.603127 169.429504 0.007593 0.026051 -E 3490.000000 50.000000 37.625416 169.549103 0.007646 0.026234 -E 3500.000000 50.000000 37.648170 169.580002 0.007700 0.026422 -E 3510.000000 50.000000 37.663067 169.582596 0.007758 0.026622 -E 3520.000000 50.000000 37.691402 169.687897 0.007810 0.026803 -E 3530.000000 50.000000 37.723637 169.808685 0.007859 0.026976 -E 3540.000000 50.000000 37.754620 169.880295 0.007922 0.027195 -E 3550.000000 50.000000 37.797958 169.933289 0.007974 0.027379 -E 3560.000000 50.000000 37.849831 169.988098 0.008019 0.027542 -E 3570.000000 50.000000 37.891800 170.134659 0.008071 0.027726 -E 3580.000000 50.000000 37.922565 170.336197 0.008112 0.027872 -E 3590.000000 50.000000 37.982803 170.505707 0.008158 0.028038 -E 3600.000000 50.000000 38.024326 170.662445 0.008203 0.028199 -E 3610.000000 50.000000 38.081615 170.906219 0.008243 0.028348 -E 3620.000000 50.000000 38.135853 171.112473 0.008268 0.028442 -E 3630.000000 50.000000 38.168762 171.337967 0.008298 0.028550 -E 3640.000000 50.000000 38.186531 171.640808 0.008350 0.028732 -E 3650.000000 50.000000 38.216156 171.916595 0.008406 0.028926 -E 3660.000000 50.000000 38.236397 172.126495 0.008392 0.028883 -E 3670.000000 50.000000 38.225945 172.403900 0.008342 0.028708 -E 3680.000000 50.000000 38.210796 172.800613 0.008327 0.028650 -E 3690.000000 50.000000 38.197086 173.133560 0.008345 0.028707 -E 3700.000000 50.000000 38.148277 173.383606 0.008430 0.028991 -E 3710.000000 50.000000 38.095837 173.670364 0.008547 0.029380 -E 3720.000000 50.000000 38.032112 173.936890 0.008596 0.029535 -E 3730.000000 50.000000 37.943707 174.215485 0.008676 0.029793 -E 3740.000000 50.000000 37.874119 174.512573 0.008747 0.030020 -E 3750.000000 50.000000 37.790680 174.736328 0.008750 0.030015 -E 3760.000000 50.000000 37.704865 174.940979 0.008737 0.029950 -E 3770.000000 50.000000 37.596062 175.179947 0.008757 0.029995 -E 3780.000000 50.000000 37.498409 175.373993 0.008721 0.029854 -E 3790.000000 50.000000 37.405220 175.546112 0.008663 0.029635 -E 3800.000000 50.000000 37.297680 175.649109 0.008680 0.029671 -E 3810.000000 50.000000 37.188995 175.770126 0.008774 0.029968 -E 3820.000000 50.000000 37.098171 175.969315 0.008833 0.030152 -E 3830.000000 50.000000 37.014507 176.030502 0.008786 0.029973 -E 3840.000000 50.000000 36.924168 176.103317 0.008803 0.030013 -E 3850.000000 50.000000 36.822502 176.236786 0.008897 0.030311 -E 3860.000000 50.000000 36.713802 176.322525 0.008860 0.030164 -E 3870.000000 50.000000 36.646366 176.380890 0.008741 0.029745 -E 3880.000000 50.000000 36.579651 176.409058 0.008609 0.029281 -E 3890.000000 50.000000 36.502338 176.418198 0.008638 0.029366 -E 3900.000000 50.000000 36.425442 176.480194 0.008889 0.030202 -E 3910.000000 50.000000 36.363190 176.581223 0.009154 0.031090 -E 3920.000000 50.000000 36.286407 176.644211 0.009107 0.030913 -E 3930.000000 50.000000 36.201965 176.687149 0.008970 0.030434 -E 3940.000000 50.000000 36.144917 176.818680 0.008858 0.030042 -E 3950.000000 50.000000 36.085236 176.845322 0.008833 0.029945 -E 3960.000000 50.000000 36.016956 176.789017 0.008931 0.030262 -E 3970.000000 50.000000 35.941341 176.827469 0.009030 0.030582 -E 3980.000000 50.000000 35.879307 176.878983 0.008910 0.030164 -E 3990.000000 50.000000 35.826954 176.900101 0.008779 0.029710 -E 4000.000000 50.000000 35.776100 176.970474 0.008852 0.029949 -E 4010.000000 50.000000 35.719902 176.991760 0.009057 0.030632 -E 4020.000000 50.000000 35.655972 177.043228 0.009194 0.031082 -E 4030.000000 50.000000 35.577518 177.070251 0.009218 0.031146 -E 4040.000000 50.000000 35.545563 177.065491 0.009139 0.030876 -E 4050.000000 50.000000 35.495491 177.068817 0.008949 0.030224 -E 4060.000000 50.000000 35.432846 177.109039 0.008766 0.029594 -E 4070.000000 50.000000 35.403286 177.165970 0.008794 0.029685 -E 4080.000000 50.000000 35.355564 177.156006 0.009055 0.030555 -E 4090.000000 50.000000 35.301334 177.172852 0.009267 0.031261 -E 4100.000000 50.000000 35.237083 177.218109 0.009303 0.031370 -E 4110.000000 50.000000 35.188622 177.313171 0.009306 0.031371 -E 4120.000000 50.000000 35.170624 177.306259 0.009198 0.031005 -E 4130.000000 50.000000 35.104034 177.247772 0.008937 0.030113 -E 4140.000000 50.000000 35.043255 177.281006 0.008836 0.029762 -E 4150.000000 50.000000 35.005600 177.321503 0.008986 0.030261 -E 4160.000000 50.000000 34.955517 177.313873 0.009074 0.030548 -E 4170.000000 50.000000 34.916336 177.375992 0.009057 0.030485 -E 4180.000000 50.000000 34.901669 177.407135 0.009066 0.030514 -E 4190.000000 50.000000 34.863346 177.399170 0.009170 0.030856 -E 4200.000000 50.000000 34.817463 177.434555 0.009197 0.030940 -E 4210.000000 50.000000 34.781055 177.452011 0.008966 0.030155 -E 4220.000000 50.000000 34.733986 177.486618 0.008679 0.029185 -E 4230.000000 50.000000 34.682716 177.503265 0.008520 0.028640 -E 4240.000000 50.000000 34.650242 177.496902 0.008512 0.028607 -E 4250.000000 50.000000 34.633354 177.511581 0.008803 0.029584 -E 4260.000000 50.000000 34.596397 177.557800 0.009148 0.030738 -E 4270.000000 50.000000 34.553188 177.572067 0.009123 0.030648 -E 4280.000000 50.000000 34.513779 177.548859 0.008859 0.029754 -E 4290.000000 50.000000 34.475517 177.554794 0.008942 0.030026 -E 4300.000000 50.000000 34.435345 177.582626 0.009007 0.030240 -E 4310.000000 50.000000 34.421329 177.605835 0.008931 0.029982 -E 4320.000000 50.000000 34.376854 177.623672 0.009073 0.030452 -E 4330.000000 50.000000 34.334705 177.668076 0.009217 0.030928 -E 4340.000000 50.000000 34.314816 177.691925 0.009004 0.030212 -E 4350.000000 50.000000 34.284607 177.628281 0.008911 0.029897 -E 4360.000000 50.000000 34.273514 177.663055 0.009046 0.030349 -E 4370.000000 50.000000 34.238892 177.723129 0.009050 0.030356 -E 4380.000000 50.000000 34.181824 177.708572 0.009005 0.030195 -E 4390.000000 50.000000 34.145939 177.672760 0.008957 0.030031 -E 4400.000000 50.000000 34.116222 177.686172 0.008919 0.029899 -E 4410.000000 50.000000 34.100842 177.728271 0.008781 0.029435 -E 4420.000000 50.000000 34.075222 177.756226 0.008499 0.028484 -E 4430.000000 50.000000 34.050308 177.717880 0.008465 0.028369 -E 4440.000000 50.000000 34.015442 177.758835 0.008547 0.028640 -E 4450.000000 50.000000 33.988548 177.773682 0.008501 0.028481 -E 4460.000000 50.000000 33.954948 177.788895 0.008446 0.028292 -E 4470.000000 50.000000 33.934479 177.764709 0.008501 0.028474 -E 4480.000000 50.000000 33.914028 177.856125 0.008548 0.028629 -E 4490.000000 50.000000 33.878651 177.794785 0.008543 0.028609 -E 4500.000000 50.000000 33.854729 177.758743 0.008491 0.028434 -E 4510.000000 50.000000 33.820492 177.840668 0.008502 0.028463 -E 4520.000000 50.000000 33.776886 177.878494 0.008549 0.028616 -E 4530.000000 50.000000 33.759460 177.852875 0.008536 0.028569 -E 4540.000000 50.000000 33.735455 177.832672 0.008503 0.028457 -E 4550.000000 50.000000 33.714733 177.822540 0.008458 0.028306 -E 4560.000000 50.000000 33.704601 177.872452 0.008378 0.028035 -E 4570.000000 50.000000 33.678074 177.917725 0.008258 0.027632 -E 4580.000000 50.000000 33.636559 177.929611 0.008084 0.027044 -E 4590.000000 50.000000 33.626522 177.889389 0.007945 0.026581 -E 4600.000000 50.000000 33.593567 177.907730 0.008080 0.027029 -E 4610.000000 50.000000 33.553200 177.946259 0.008294 0.027738 -E 4620.000000 50.000000 33.555958 177.925949 0.008352 0.027933 -E 4630.000000 50.000000 33.526741 177.933365 0.008169 0.027319 -E 4640.000000 50.000000 33.501175 177.989868 0.007871 0.026321 -E 4650.000000 50.000000 33.486938 177.987671 0.007766 0.025970 -E 4660.000000 50.000000 33.454765 177.968781 0.007875 0.026329 -E 4670.000000 50.000000 33.423378 177.969543 0.008038 0.026870 -E 4680.000000 50.000000 33.424896 177.995758 0.008088 0.027038 -E 4690.000000 50.000000 33.397842 177.987778 0.008123 0.027155 -E 4700.000000 50.000000 33.370041 178.043732 0.008289 0.027704 -E 4710.000000 50.000000 33.371391 177.989059 0.008410 0.028110 -E 4720.000000 50.000000 33.349464 177.979721 0.008320 0.027810 -E 4730.000000 50.000000 33.303574 178.023407 0.008160 0.027270 -E 4740.000000 50.000000 33.277538 178.056015 0.008104 0.027080 -E 4750.000000 50.000000 33.270405 178.081085 0.008131 0.027170 -E 4760.000000 50.000000 33.254078 178.071442 0.008103 0.027074 -E 4770.000000 50.000000 33.221539 178.061813 0.008048 0.026887 -E 4780.000000 50.000000 33.193127 178.070435 0.007979 0.026654 -E 4790.000000 50.000000 33.195091 178.042831 0.007900 0.026393 -E 4800.000000 50.000000 33.166759 178.091614 0.007892 0.026364 -E 4810.000000 50.000000 33.138008 178.077972 0.007881 0.026324 -E 4820.000000 50.000000 33.122341 178.086288 0.007885 0.026338 -E 4830.000000 50.000000 33.094799 178.076431 0.007863 0.026261 -E 4840.000000 50.000000 33.079639 178.083008 0.007773 0.025960 -E 4850.000000 50.000000 33.052357 178.074081 0.007426 0.024798 -E 4860.000000 50.000000 33.053864 178.116150 0.006531 0.021810 -E 4870.000000 50.000000 33.058132 178.156006 0.006205 0.020724 -E 4880.000000 50.000000 33.017319 178.120804 0.007143 0.023852 -E 4890.000000 50.000000 33.003746 178.134476 0.007605 0.025395 -E 4900.000000 50.000000 32.984283 178.176758 0.007594 0.025357 -E 4910.000000 50.000000 32.978283 178.214996 0.007525 0.025128 -E 4920.000000 50.000000 32.956657 178.199829 0.007550 0.025209 -E 4930.000000 50.000000 32.933525 178.173294 0.007532 0.025147 -E 4940.000000 50.000000 32.913940 178.151413 0.007478 0.024967 -E 4950.000000 50.000000 32.911964 178.157059 0.007560 0.025242 -E 4960.000000 50.000000 32.881531 178.161972 0.007611 0.025408 -E 4970.000000 50.000000 32.858822 178.179855 0.007557 0.025225 -E 4980.000000 50.000000 32.864136 178.176926 0.007472 0.024945 -E 4990.000000 50.000000 32.834663 178.213440 0.007385 0.024651 -E 5000.000000 50.000000 32.815258 178.205078 0.007355 0.024551 -E 5010.000000 50.000000 32.805588 178.226822 0.007342 0.024509 -E 5020.000000 50.000000 32.784969 178.242462 0.007298 0.024360 -E 5030.000000 50.000000 32.769585 178.250000 0.007298 0.024359 -E 5040.000000 50.000000 32.760220 178.276047 0.007320 0.024434 -E 5050.000000 50.000000 32.740063 178.263199 0.007338 0.024492 -E 5060.000000 50.000000 32.739769 178.250778 0.007308 0.024392 -E 5070.000000 50.000000 32.711628 178.240463 0.007294 0.024346 -E 5080.000000 50.000000 32.683125 178.244003 0.007317 0.024419 -E 5090.000000 50.000000 32.666801 178.249939 0.007316 0.024415 -E 5100.000000 50.000000 32.655312 178.252335 0.007309 0.024391 -E 5110.000000 50.000000 32.653587 178.280502 0.007276 0.024284 -E 5120.000000 50.000000 32.633240 178.288803 0.007236 0.024150 -E 5130.000000 50.000000 32.620815 178.278183 0.007227 0.024118 -E 5140.000000 50.000000 32.612942 178.302292 0.007218 0.024088 -E 5150.000000 50.000000 32.608746 178.300354 0.007203 0.024040 -E 5160.000000 50.000000 32.593616 178.288010 0.007178 0.023958 -E 5170.000000 50.000000 32.565174 178.243484 0.007169 0.023924 -E 5180.000000 50.000000 32.541145 178.303680 0.007154 0.023874 -E 5190.000000 50.000000 32.541000 178.376343 0.007128 0.023789 -E 5200.000000 50.000000 32.530983 178.324631 0.007089 0.023657 -E 5210.000000 50.000000 32.503273 178.303894 0.007071 0.023596 -E 5220.000000 50.000000 32.500504 178.319885 0.007060 0.023561 -E 5230.000000 50.000000 32.490776 178.337082 0.007041 0.023498 -E 5240.000000 50.000000 32.474197 178.314697 0.007028 0.023452 -E 5250.000000 50.000000 32.454178 178.329391 0.007001 0.023364 -E 5260.000000 50.000000 32.433426 178.377777 0.006956 0.023212 -E 5270.000000 50.000000 32.432270 178.394836 0.006893 0.023001 -E 5280.000000 50.000000 32.416321 178.371719 0.006879 0.022956 -E 5290.000000 50.000000 32.397884 178.329987 0.006877 0.022948 -E 5300.000000 50.000000 32.386414 178.365219 0.006860 0.022890 -E 5310.000000 50.000000 32.389595 178.374222 0.006853 0.022872 -E 5320.000000 50.000000 32.365284 178.371201 0.006850 0.022858 -E 5330.000000 50.000000 32.349899 178.379410 0.006802 0.022698 -E 5340.000000 50.000000 32.332909 178.370285 0.006744 0.022504 -E 5350.000000 50.000000 32.331123 178.355042 0.006726 0.022445 -E 5360.000000 50.000000 32.339958 178.382767 0.006710 0.022394 -E 5370.000000 50.000000 32.321171 178.413589 0.006697 0.022351 -E 5380.000000 50.000000 32.305557 178.371643 0.006671 0.022263 -E 5390.000000 50.000000 32.284027 178.378860 0.006625 0.022109 -E 5400.000000 50.000000 32.265327 178.409409 0.006606 0.022045 -E 5410.000000 50.000000 32.254440 178.379242 0.006589 0.021991 -E 5420.000000 50.000000 32.247478 178.380157 0.006543 0.021837 -E 5430.000000 50.000000 32.230713 178.423462 0.006493 0.021669 -E 5440.000000 50.000000 32.222755 178.454376 0.006469 0.021590 -E 5450.000000 50.000000 32.211956 178.415009 0.006454 0.021540 -E 5460.000000 50.000000 32.204159 178.443283 0.006454 0.021540 -E 5470.000000 50.000000 32.189476 178.450058 0.006445 0.021512 -E 5480.000000 50.000000 32.174313 178.417694 0.006398 0.021353 -E 5490.000000 50.000000 32.167347 178.449020 0.006360 0.021226 -E 5500.000000 50.000000 32.159786 178.418228 0.006353 0.021204 -E 5510.000000 50.000000 32.154179 178.433014 0.006353 0.021206 -E 5520.000000 50.000000 32.131420 178.494858 0.006352 0.021202 -E 5530.000000 50.000000 32.117016 178.456589 0.006333 0.021137 -E 5540.000000 50.000000 32.111961 178.439270 0.006304 0.021042 -E 5550.000000 50.000000 32.090481 178.461349 0.006297 0.021017 -E 5560.000000 50.000000 32.070087 178.492432 0.006293 0.021005 -E 5570.000000 50.000000 32.084675 178.481674 0.006266 0.020916 -E 5580.000000 50.000000 32.075497 178.477325 0.006251 0.020867 -E 5590.000000 50.000000 32.058544 178.475708 0.006249 0.020862 -E 5600.000000 50.000000 32.049965 178.445801 0.006231 0.020802 -E 5610.000000 50.000000 32.045315 178.486755 0.006199 0.020694 -E 5620.000000 50.000000 32.034653 178.537750 0.006188 0.020658 -E 5630.000000 50.000000 32.024136 178.493912 0.006180 0.020631 -E 5640.000000 50.000000 32.017735 178.494827 0.006158 0.020558 -E 5650.000000 50.000000 31.994675 178.510040 0.006136 0.020484 -E 5660.000000 50.000000 31.980265 178.466705 0.006116 0.020418 -E 5670.000000 50.000000 31.981194 178.501358 0.006049 0.020195 -E 5680.000000 50.000000 31.962719 178.548798 0.005942 0.019837 -E 5690.000000 50.000000 31.954851 178.543839 0.005821 0.019435 -E 5700.000000 50.000000 31.949465 178.515366 0.005653 0.018873 -E 5710.000000 50.000000 31.932108 178.530457 0.005573 0.018608 -E 5720.000000 50.000000 31.926071 178.546982 0.005530 0.018463 -E 5730.000000 50.000000 31.921820 178.524109 0.005477 0.018288 -E 5740.000000 50.000000 31.910234 178.541550 0.005381 0.017969 -E 5750.000000 50.000000 31.897858 178.547363 0.005326 0.017784 -E 5760.000000 50.000000 31.892660 178.572769 0.005289 0.017662 -E 5770.000000 50.000000 31.893074 178.592056 0.005188 0.017324 -E 5780.000000 50.000000 31.881233 178.568100 0.005116 0.017085 -E 5790.000000 50.000000 31.871187 178.565811 0.005110 0.017066 -E 5800.000000 50.000000 31.858643 178.562546 0.005079 0.016961 -E 5810.000000 50.000000 31.851633 178.557404 0.004954 0.016545 -E 5820.000000 50.000000 31.845757 178.565018 0.004825 0.016116 -E 5830.000000 50.000000 31.832531 178.567398 0.004945 0.016514 -E 5840.000000 50.000000 31.824835 178.594696 0.005177 0.017292 -E 5850.000000 50.000000 31.804821 178.566086 0.005147 0.017189 -E 5860.000000 50.000000 31.802898 178.552200 0.005170 0.017267 -E 5870.000000 50.000000 31.798349 178.589111 0.005222 0.017441 -E 5880.000000 50.000000 31.785278 178.619278 0.005177 0.017293 -E 5890.000000 50.000000 31.783150 178.615356 0.005161 0.017240 -E 5900.000000 50.000000 31.773708 178.580750 0.005332 0.017812 -E 5910.000000 50.000000 31.761044 178.610580 0.005445 0.018188 -E 5920.000000 50.000000 31.753210 178.634888 0.005448 0.018201 -E 5930.000000 50.000000 31.749580 178.611038 0.005362 0.017912 -E 5940.000000 50.000000 31.738647 178.600250 0.005283 0.017649 -E 5950.000000 50.000000 31.739586 178.636856 0.005221 0.017443 -E 5960.000000 50.000000 31.728695 178.629730 0.005227 0.017463 -E 5970.000000 50.000000 31.707270 178.585663 0.005316 0.017761 -E 5980.000000 50.000000 31.705153 178.605759 0.005366 0.017928 -E 5990.000000 50.000000 31.707287 178.604828 0.005369 0.017939 -E 6000.000000 50.000000 31.701927 178.645386 0.005372 0.017949 -E 6010.000000 50.000000 31.673128 178.650726 0.005341 0.017846 -E 6020.000000 50.000000 31.670223 178.648499 0.005280 0.017644 -E 6030.000000 50.000000 31.669506 178.668716 0.005204 0.017388 -E 6040.000000 50.000000 31.657143 178.656250 0.005185 0.017327 -E 6050.000000 50.000000 31.665346 178.651489 0.005289 0.017676 -E 6060.000000 50.000000 31.645723 178.656143 0.005322 0.017786 -E 6070.000000 50.000000 31.630142 178.640732 0.005331 0.017814 -E 6080.000000 50.000000 31.635567 178.642136 0.005351 0.017884 -E 6090.000000 50.000000 31.631227 178.664139 0.005371 0.017951 -E 6100.000000 50.000000 31.616478 178.658173 0.005353 0.017890 -E 6110.000000 50.000000 31.606585 178.671616 0.005328 0.017807 -E 6120.000000 50.000000 31.595495 178.655640 0.005316 0.017767 -E 6130.000000 50.000000 31.588282 178.630539 0.005304 0.017729 -E 6140.000000 50.000000 31.581360 178.675568 0.005291 0.017684 -E 6150.000000 50.000000 31.576214 178.677567 0.005322 0.017791 -E 6160.000000 50.000000 31.562113 178.674561 0.005374 0.017963 -E 6170.000000 50.000000 31.563011 178.682999 0.005401 0.018054 -E 6180.000000 50.000000 31.564058 178.701416 0.005413 0.018097 -E 6190.000000 50.000000 31.550699 178.715561 0.005434 0.018167 -E 6200.000000 50.000000 31.530180 178.676895 0.005413 0.018096 -E 6210.000000 50.000000 31.535299 178.685272 0.005416 0.018107 -E 6220.000000 50.000000 31.525053 178.683365 0.005440 0.018188 -E 6230.000000 50.000000 31.511126 178.671997 0.005413 0.018096 -E 6240.000000 50.000000 31.504509 178.693909 0.005398 0.018046 -E 6250.000000 50.000000 31.516411 178.711594 0.005442 0.018195 -E 6260.000000 50.000000 31.519581 178.717346 0.005476 0.018312 -E 6270.000000 50.000000 31.495024 178.718262 0.005483 0.018334 -E 6280.000000 50.000000 31.482388 178.698730 0.005480 0.018324 -E 6290.000000 50.000000 31.495792 178.674896 0.005478 0.018321 -E 6300.000000 50.000000 31.486073 178.681992 0.005483 0.018337 -E 6310.000000 50.000000 31.473055 178.706879 0.005515 0.018442 -E 6320.000000 50.000000 31.463509 178.748154 0.005525 0.018477 -E 6330.000000 50.000000 31.461937 178.744781 0.005504 0.018409 -E 6340.000000 50.000000 31.455236 178.718063 0.005514 0.018441 -E 6350.000000 50.000000 31.442385 178.746262 0.005515 0.018446 -E 6360.000000 50.000000 31.434116 178.731537 0.005500 0.018396 -E 6370.000000 50.000000 31.428495 178.718735 0.005491 0.018366 -E 6380.000000 50.000000 31.430550 178.727661 0.005498 0.018389 -E 6390.000000 50.000000 31.415495 178.757584 0.005499 0.018394 -E 6400.000000 50.000000 31.416590 178.753250 0.005501 0.018401 -E 6410.000000 50.000000 31.401546 178.721848 0.005511 0.018435 -E 6420.000000 50.000000 31.396229 178.722305 0.005527 0.018488 -E 6430.000000 50.000000 31.400917 178.757202 0.005519 0.018465 -E 6440.000000 50.000000 31.390093 178.760239 0.005521 0.018471 -E 6450.000000 50.000000 31.394989 178.764816 0.005532 0.018510 -E 6460.000000 50.000000 31.389410 178.776215 0.005530 0.018503 -E 6470.000000 50.000000 31.373905 178.806900 0.005527 0.018493 -E 6480.000000 50.000000 31.367498 178.772614 0.005522 0.018477 -E 6490.000000 50.000000 31.373634 178.789993 0.005516 0.018457 -E 6500.000000 50.000000 31.358833 178.772156 0.005513 0.018449 -E 6510.000000 50.000000 31.348343 178.757248 0.005516 0.018457 -E 6520.000000 50.000000 31.350481 178.780930 0.005512 0.018445 -E 6530.000000 50.000000 31.337910 178.771011 0.005517 0.018461 -E 6540.000000 50.000000 31.335159 178.773285 0.005568 0.018635 -E 6550.000000 50.000000 31.317465 178.757309 0.004951 0.016570 -E 6560.000000 50.000000 31.313301 178.766769 0.003475 0.011629 -E 6570.000000 50.000000 31.312868 178.775757 0.003343 0.011187 -E 6580.000000 50.000000 31.313051 178.795670 0.004564 0.015276 -E 6590.000000 50.000000 31.299414 178.787643 0.005477 0.018330 -E 6600.000000 50.000000 31.294270 178.781158 0.005510 0.018444 -E 6610.000000 50.000000 31.293829 178.792282 0.005515 0.018459 -E 6620.000000 50.000000 31.288885 178.827194 0.005502 0.018417 -E 6630.000000 50.000000 31.280191 178.829041 0.005495 0.018393 -E 6640.000000 50.000000 31.280596 178.788666 0.005496 0.018398 -E 6650.000000 50.000000 31.276859 178.805725 0.005498 0.018405 -E 6660.000000 50.000000 31.273216 178.801697 0.005498 0.018406 -E 6670.000000 50.000000 31.263517 178.810226 0.005499 0.018410 -E 6680.000000 50.000000 31.257700 178.820465 0.005494 0.018394 -E 6690.000000 50.000000 31.252985 178.791031 0.005481 0.018352 -E 6700.000000 50.000000 31.237257 178.784622 0.005470 0.018315 -E 6710.000000 50.000000 31.233891 178.811981 0.005472 0.018321 -E 6720.000000 50.000000 31.246092 178.817032 0.005461 0.018286 -E 6730.000000 50.000000 31.242540 178.819656 0.005459 0.018281 -E 6740.000000 50.000000 31.224094 178.826248 0.005470 0.018319 -E 6750.000000 50.000000 31.227314 178.826965 0.005477 0.018341 -E 6760.000000 50.000000 31.222666 178.781754 0.005478 0.018347 -E 6770.000000 50.000000 31.208687 178.797501 0.005475 0.018334 -E 6780.000000 50.000000 31.195593 178.856873 0.005465 0.018302 -E 6790.000000 50.000000 31.197107 178.846725 0.005453 0.018263 -E 6800.000000 50.000000 31.204855 178.841309 0.005445 0.018237 -E 6810.000000 50.000000 31.191763 178.875397 0.005446 0.018242 -E 6820.000000 50.000000 31.182716 178.829514 0.005448 0.018248 -E 6830.000000 50.000000 31.181673 178.817566 0.005444 0.018235 -E 6840.000000 50.000000 31.195156 178.855270 0.005434 0.018203 -E 6850.000000 50.000000 31.188284 178.819061 0.005414 0.018138 -E 6860.000000 50.000000 31.168678 178.792755 0.005416 0.018143 -E 6870.000000 50.000000 31.162106 178.841248 0.005431 0.018193 -E 6880.000000 50.000000 31.143251 178.851349 0.005444 0.018239 -E 6890.000000 50.000000 31.159239 178.840332 0.005443 0.018237 -E 6900.000000 50.000000 31.155603 178.849121 0.005448 0.018254 -E 6910.000000 50.000000 31.135420 178.835342 0.005449 0.018256 -E 6920.000000 50.000000 31.137144 178.834732 0.005444 0.018240 -E 6930.000000 50.000000 31.126457 178.872818 0.005443 0.018239 -E 6940.000000 50.000000 31.120905 178.875870 0.005437 0.018218 -E 6950.000000 50.000000 31.117241 178.866974 0.005443 0.018237 -E 6960.000000 50.000000 31.112432 178.850266 0.005445 0.018247 -E 6970.000000 50.000000 31.123388 178.835358 0.005434 0.018211 -E 6980.000000 50.000000 31.104124 178.896210 0.005428 0.018192 -E 6990.000000 50.000000 31.098114 178.906235 0.005433 0.018208 -E 7000.000000 50.000000 31.095085 178.892853 0.005444 0.018244 -E 7010.000000 50.000000 31.081078 178.900528 0.005455 0.018282 -E 7020.000000 50.000000 31.074520 178.876419 0.005457 0.018288 -E 7030.000000 50.000000 31.070480 178.867905 0.005457 0.018288 -E 7040.000000 50.000000 31.064819 178.881714 0.005468 0.018328 -E 7050.000000 50.000000 31.055788 178.861679 0.005479 0.018363 -E 7060.000000 50.000000 31.059832 178.903122 0.005476 0.018357 -E 7070.000000 50.000000 31.063160 178.913803 0.005455 0.018287 -E 7080.000000 50.000000 31.048452 178.908035 0.005462 0.018310 -E 7090.000000 50.000000 31.045784 178.881073 0.005476 0.018357 -E 7100.000000 50.000000 31.034851 178.903595 0.005491 0.018408 -E 7110.000000 50.000000 31.028952 178.900787 0.005496 0.018423 -E 7120.000000 50.000000 31.040518 178.891785 0.005491 0.018410 -E 7130.000000 50.000000 31.037481 178.908737 0.005492 0.018415 -E 7140.000000 50.000000 31.022884 178.911209 0.005491 0.018410 -E 7150.000000 50.000000 31.013515 178.913055 0.005485 0.018388 -E 7160.000000 50.000000 31.029650 178.893204 0.005486 0.018395 -E 7170.000000 50.000000 31.021046 178.890305 0.005508 0.018467 -E 7180.000000 50.000000 31.014547 178.903992 0.005509 0.018472 -E 7190.000000 50.000000 31.013401 178.922165 0.005510 0.018475 -E 7200.000000 50.000000 31.013029 178.914078 0.005517 0.018501 -E 7210.000000 50.000000 30.987230 178.871231 0.005535 0.018560 -E 7220.000000 50.000000 30.987289 178.896912 0.005536 0.018565 -E 7230.000000 50.000000 30.995527 178.943802 0.005547 0.018602 -E 7240.000000 50.000000 30.992121 178.933716 0.005544 0.018593 -E 7250.000000 50.000000 30.997414 178.908096 0.005521 0.018516 -E 7260.000000 50.000000 30.986610 178.958221 0.005500 0.018448 -E 7270.000000 50.000000 30.976078 178.907928 0.005516 0.018502 -E 7280.000000 50.000000 30.985359 178.954025 0.005519 0.018512 -E 7290.000000 50.000000 30.958941 178.912079 0.005516 0.018502 -E 7300.000000 50.000000 30.955441 178.881165 0.005526 0.018534 -E 7310.000000 50.000000 30.970018 178.934326 0.005517 0.018508 -E 7320.000000 50.000000 30.967836 178.925491 0.005526 0.018537 -E 7330.000000 50.000000 30.942551 178.932831 0.005554 0.018631 -E 7340.000000 50.000000 30.942844 178.943832 0.005549 0.018616 -E 7350.000000 50.000000 30.944115 178.946564 0.005520 0.018518 -E 7360.000000 50.000000 30.958519 178.925674 0.005522 0.018526 -E 7370.000000 50.000000 30.949354 178.926773 0.005545 0.018603 -E 7380.000000 50.000000 30.937155 178.950180 0.005586 0.018741 -E 7390.000000 50.000000 30.918215 178.950317 0.005610 0.018820 -E 7400.000000 50.000000 30.925596 178.967773 0.005587 0.018745 -E 7410.000000 50.000000 30.929365 178.971481 0.005606 0.018811 -E 7420.000000 50.000000 30.913601 178.964386 0.005651 0.018961 -E 7430.000000 50.000000 30.912067 178.987091 0.005668 0.019020 -E 7440.000000 50.000000 30.908552 178.966232 0.005673 0.019035 -E 7450.000000 50.000000 30.904566 178.964752 0.005681 0.019063 -E 7460.000000 50.000000 30.905048 178.952591 0.005684 0.019075 -E 7470.000000 50.000000 30.882610 178.965622 0.005671 0.019030 -E 7480.000000 50.000000 30.888674 179.001068 0.005666 0.019013 -E 7490.000000 50.000000 30.900387 179.001816 0.005685 0.019079 -E 7500.000000 50.000000 30.888287 178.958954 0.005691 0.019101 -E 7510.000000 50.000000 30.879602 178.974899 0.005694 0.019108 -E 7520.000000 50.000000 30.897343 178.977722 0.005729 0.019228 -E 7530.000000 50.000000 30.867914 178.978622 0.005752 0.019306 -E 7540.000000 50.000000 30.862309 178.995621 0.005724 0.019212 -E 7550.000000 50.000000 30.867502 178.991394 0.005734 0.019245 -E 7560.000000 50.000000 30.870747 178.985535 0.005744 0.019281 -E 7570.000000 50.000000 30.885315 178.955658 0.005730 0.019234 -E 7580.000000 50.000000 30.873945 178.966553 0.005723 0.019211 -E 7590.000000 50.000000 30.865316 178.983231 0.005725 0.019217 -E 7600.000000 50.000000 30.862595 178.990982 0.005769 0.019367 -E 7610.000000 50.000000 30.852257 178.983643 0.005816 0.019523 -E 7620.000000 50.000000 30.852055 179.004578 0.005853 0.019648 -E 7630.000000 50.000000 30.847763 179.021774 0.005839 0.019602 -E 7640.000000 50.000000 30.853325 179.032272 0.005827 0.019563 -E 7650.000000 50.000000 30.849291 179.008224 0.005848 0.019635 -E 7660.000000 50.000000 30.840883 178.985535 0.005887 0.019767 -E 7670.000000 50.000000 30.817810 178.953033 0.005945 0.019961 -E 7680.000000 50.000000 30.833277 178.978348 0.005932 0.019918 -E 7690.000000 50.000000 30.846901 179.021576 0.005866 0.019698 -E 7700.000000 50.000000 30.823551 179.026459 0.005848 0.019637 -E 7710.000000 50.000000 30.815535 179.000061 0.005896 0.019797 -E 7720.000000 50.000000 30.825666 178.986099 0.005962 0.020020 -E 7730.000000 50.000000 30.828180 179.017868 0.006004 0.020164 -E 7740.000000 50.000000 30.818300 179.036270 0.006017 0.020206 -E 7750.000000 50.000000 30.807564 179.034576 0.006044 0.020298 -E 7760.000000 50.000000 30.808054 179.010422 0.006079 0.020416 -E 7770.000000 50.000000 30.816341 179.025467 0.006099 0.020484 -E 7780.000000 50.000000 30.806213 179.053818 0.006094 0.020467 -E 7790.000000 50.000000 30.803080 179.024551 0.006056 0.020341 -E 7800.000000 50.000000 30.811068 179.044952 0.006048 0.020315 -E 7810.000000 50.000000 30.794956 179.032745 0.006102 0.020495 -E 7820.000000 50.000000 30.781927 178.995163 0.006136 0.020611 -E 7830.000000 50.000000 30.783207 179.023819 0.006145 0.020639 -E 7840.000000 50.000000 30.780619 179.049408 0.006174 0.020737 -E 7850.000000 50.000000 30.779089 179.035019 0.006222 0.020899 -E 7860.000000 50.000000 30.790827 179.008118 0.006247 0.020987 -E 7870.000000 50.000000 30.782684 179.041885 0.006247 0.020985 -E 7880.000000 50.000000 30.778803 179.055252 0.006236 0.020948 -E 7890.000000 50.000000 30.771376 179.044342 0.006253 0.021005 -E 7900.000000 50.000000 30.753504 179.085953 0.006289 0.021125 -E 7910.000000 50.000000 30.758619 179.059601 0.006295 0.021146 -E 7920.000000 50.000000 30.767996 179.037964 0.006310 0.021198 -E 7930.000000 50.000000 30.762117 179.055832 0.006323 0.021245 -E 7940.000000 50.000000 30.754086 179.031799 0.006311 0.021202 -E 7950.000000 50.000000 30.751663 179.054153 0.006316 0.021220 -E 7960.000000 50.000000 30.756567 179.039108 0.006351 0.021340 -E 7970.000000 50.000000 30.766327 179.028778 0.006382 0.021446 -E 7980.000000 50.000000 30.734531 179.097366 0.006416 0.021556 -E 7990.000000 50.000000 30.733833 179.048767 0.006430 0.021603 -E 8000.000000 50.000000 30.739023 179.049118 0.006423 0.021584 -E 8010.000000 50.000000 30.737614 179.067413 0.006415 0.021557 -E 8020.000000 50.000000 30.736736 179.026779 0.006460 0.021707 -E 8030.000000 50.000000 30.741899 179.041321 0.006497 0.021835 -E 8040.000000 50.000000 30.729853 179.065460 0.006500 0.021844 -E 8050.000000 50.000000 30.728659 179.052490 0.006488 0.021802 -E 8060.000000 50.000000 30.724928 179.032715 0.006508 0.021873 -E 8070.000000 50.000000 30.718481 179.031311 0.006571 0.022082 -E 8080.000000 50.000000 30.707914 179.064285 0.006603 0.022190 -E 8090.000000 50.000000 30.712387 179.078629 0.006562 0.022053 -E 8100.000000 50.000000 30.699265 179.071930 0.006575 0.022096 -E 8110.000000 50.000000 30.703066 179.085846 0.006610 0.022215 -E 8120.000000 50.000000 30.703556 179.065674 0.006655 0.022367 -E 8130.000000 50.000000 30.690233 179.027130 0.006655 0.022369 -E 8140.000000 50.000000 30.705050 179.044785 0.006614 0.022232 -E 8150.000000 50.000000 30.701036 179.069855 0.006639 0.022315 -E 8160.000000 50.000000 30.700886 179.050354 0.006688 0.022480 -E 8170.000000 50.000000 30.686674 179.093216 0.006721 0.022591 -E 8180.000000 50.000000 30.686453 179.087189 0.006705 0.022540 -E 8190.000000 50.000000 30.692768 179.087189 0.006695 0.022507 -E 8200.000000 50.000000 30.678839 179.113998 0.006725 0.022607 -E 8210.000000 50.000000 30.687546 179.103195 0.006758 0.022717 -E 8220.000000 50.000000 30.693928 179.045837 0.006783 0.022804 -E 8230.000000 50.000000 30.682886 179.088181 0.006764 0.022741 -E 8240.000000 50.000000 30.694813 179.129837 0.006750 0.022694 -E 8250.000000 50.000000 30.677614 179.112198 0.006799 0.022858 -E 8260.000000 50.000000 30.671463 179.083237 0.006845 0.023014 -E 8270.000000 50.000000 30.671049 179.075500 0.006832 0.022971 -E 8280.000000 50.000000 30.660326 179.109497 0.006806 0.022882 -E 8290.000000 50.000000 30.661438 179.084335 0.006809 0.022892 -E 8300.000000 50.000000 30.661055 179.067902 0.006874 0.023113 -E 8310.000000 50.000000 30.670876 179.029739 0.006910 0.023236 -E 8320.000000 50.000000 30.660870 179.060242 0.006899 0.023198 -E 8330.000000 50.000000 30.657442 179.129333 0.006867 0.023089 -E 8340.000000 50.000000 30.655273 179.113113 0.006850 0.023034 -E 8350.000000 50.000000 30.648403 179.113770 0.006888 0.023161 -E 8360.000000 50.000000 30.645498 179.072220 0.006945 0.023353 -E 8370.000000 50.000000 30.634562 179.122345 0.006934 0.023315 -E 8380.000000 50.000000 30.630827 179.100021 0.006918 0.023262 -E 8390.000000 50.000000 30.646584 179.118225 0.006932 0.023313 -E 8400.000000 50.000000 30.629320 179.127304 0.006997 0.023530 -E 8410.000000 50.000000 30.635868 179.131744 0.007026 0.023628 -E 8420.000000 50.000000 30.636202 179.120728 0.007012 0.023583 -E 8430.000000 50.000000 30.620808 179.107208 0.006993 0.023516 -E 8440.000000 50.000000 30.626461 179.116043 0.006996 0.023529 -E 8450.000000 50.000000 30.621727 179.124130 0.007032 0.023651 -E 8460.000000 50.000000 30.629612 179.115128 0.007054 0.023723 -E 8470.000000 50.000000 30.618586 179.124008 0.007040 0.023676 -E 8480.000000 50.000000 30.617851 179.133652 0.007011 0.023581 -E 8490.000000 50.000000 30.617220 179.130280 0.007060 0.023746 -E 8500.000000 50.000000 30.621016 179.105408 0.007184 0.024163 -E 8510.000000 50.000000 30.607286 179.103149 0.007236 0.024338 -E 8520.000000 50.000000 30.613688 179.117966 0.007087 0.023839 -E 8530.000000 50.000000 30.615820 179.096146 0.006928 0.023303 -E 8540.000000 50.000000 30.600988 179.087463 0.006905 0.023226 -E 8550.000000 50.000000 30.598515 179.135849 0.007000 0.023546 -E 8560.000000 50.000000 30.582178 179.142242 0.007086 0.023836 -E 8570.000000 50.000000 30.577772 179.108612 0.007115 0.023932 -E 8580.000000 50.000000 30.595299 179.072876 0.007076 0.023804 -E 8590.000000 50.000000 30.584257 179.115494 0.007061 0.023753 -E 8600.000000 50.000000 30.591312 179.150436 0.007082 0.023825 -E 8610.000000 50.000000 30.585142 179.129028 0.007148 0.024045 -E 8620.000000 50.000000 30.583723 179.152725 0.007179 0.024151 -E 8630.000000 50.000000 30.582855 179.130951 0.007179 0.024150 -E 8640.000000 50.000000 30.563791 179.126892 0.007142 0.024025 -E 8650.000000 50.000000 30.568245 179.161285 0.007109 0.023917 -E 8660.000000 50.000000 30.585251 179.109329 0.007138 0.024015 -E 8670.000000 50.000000 30.573238 179.124008 0.007197 0.024213 -E 8680.000000 50.000000 30.563005 179.115128 0.007209 0.024253 -E 8690.000000 50.000000 30.543839 179.141129 0.007208 0.024247 -E 8700.000000 50.000000 30.567396 179.119522 0.007181 0.024159 -E 8710.000000 50.000000 30.570415 179.116257 0.007192 0.024197 -E 8720.000000 50.000000 30.562603 179.131226 0.007233 0.024336 -E 8730.000000 50.000000 30.568039 179.116669 0.007235 0.024344 -E 8740.000000 50.000000 30.562223 179.092163 0.007210 0.024259 -E 8750.000000 50.000000 30.591908 179.143906 0.007177 0.024152 -E 8760.000000 50.000000 30.569475 179.156967 0.007197 0.024216 -E 8770.000000 50.000000 30.542582 179.145096 0.007243 0.024371 -E 8780.000000 50.000000 30.537693 179.144455 0.007271 0.024463 -E 8790.000000 50.000000 30.550413 179.127014 0.007257 0.024418 -E 8800.000000 50.000000 30.544670 179.162796 0.007257 0.024420 -E 8810.000000 50.000000 30.540966 179.157425 0.007286 0.024517 -E 8820.000000 50.000000 30.536751 179.153641 0.007315 0.024616 -E 8830.000000 50.000000 30.531778 179.158188 0.007348 0.024725 -E 8840.000000 50.000000 30.527790 179.113327 0.007355 0.024749 -E 8850.000000 50.000000 30.522085 179.165833 0.007368 0.024793 -E 8860.000000 50.000000 30.541330 179.174347 0.007348 0.024726 -E 8870.000000 50.000000 30.532234 179.133408 0.007331 0.024670 -E 8880.000000 50.000000 30.534040 179.117844 0.007335 0.024686 -E 8890.000000 50.000000 30.532904 179.158615 0.007363 0.024778 -E 8900.000000 50.000000 30.530916 179.176270 0.007389 0.024866 -E 8910.000000 50.000000 30.533978 179.172134 0.007411 0.024943 -E 8920.000000 50.000000 30.530664 179.127396 0.007410 0.024940 -E 8930.000000 50.000000 30.519501 179.188400 0.007408 0.024933 -E 8940.000000 50.000000 30.508657 179.227509 0.007418 0.024965 -E 8950.000000 50.000000 30.508007 179.168793 0.007443 0.025048 -E 8960.000000 50.000000 30.515638 179.212845 0.007469 0.025138 -E 8970.000000 50.000000 30.523994 179.232330 0.007477 0.025165 -E 8980.000000 50.000000 30.498497 179.157867 0.007504 0.025257 -E 8990.000000 50.000000 30.509926 179.183640 0.007490 0.025209 -E 9000.000000 50.000000 30.513290 179.199265 0.007515 0.025294 -E 9010.000000 50.000000 30.509066 179.190979 0.007542 0.025384 -E 9020.000000 50.000000 30.511093 179.202515 0.007541 0.025381 -E 9030.000000 50.000000 30.497572 179.183090 0.007577 0.025502 -E 9040.000000 50.000000 30.511177 179.190094 0.007576 0.025502 -E 9050.000000 50.000000 30.502308 179.186401 0.007566 0.025466 -E 9060.000000 50.000000 30.494431 179.193176 0.007595 0.025566 -E 9070.000000 50.000000 30.497997 179.203308 0.007623 0.025661 -E 9080.000000 50.000000 30.481712 179.168427 0.007669 0.025813 -E 9090.000000 50.000000 30.474869 179.182693 0.007707 0.025942 -E 9100.000000 50.000000 30.477306 179.202789 0.007713 0.025962 -E 9110.000000 50.000000 30.473606 179.136215 0.007689 0.025881 -E 9120.000000 50.000000 30.474220 179.139252 0.007707 0.025942 -E 9130.000000 50.000000 30.470589 179.151428 0.007741 0.026057 -E 9140.000000 50.000000 30.474638 179.142715 0.007800 0.026258 -E 9150.000000 50.000000 30.482721 179.187149 0.007798 0.026251 -E 9160.000000 50.000000 30.460855 179.258652 0.007776 0.026176 -E 9170.000000 50.000000 30.441143 179.219116 0.007774 0.026167 -E 9180.000000 50.000000 30.465021 179.191498 0.007767 0.026148 -E 9190.000000 50.000000 30.484411 179.229477 0.007801 0.026264 -E 9200.000000 50.000000 30.458101 179.182724 0.007874 0.026509 -E 9210.000000 50.000000 30.473791 179.193680 0.007899 0.026594 -E 9220.000000 50.000000 30.462534 179.179825 0.007949 0.026760 -E 9230.000000 50.000000 30.457182 179.200012 0.007972 0.026839 -E 9240.000000 50.000000 30.469297 179.250504 0.007975 0.026850 -E 9250.000000 50.000000 30.443869 179.266052 0.007999 0.026929 -E 9260.000000 50.000000 30.460323 179.208130 0.008025 0.027020 -E 9270.000000 50.000000 30.444481 179.212692 0.008068 0.027164 -E 9280.000000 50.000000 30.445839 179.210403 0.008116 0.027327 -E 9290.000000 50.000000 30.455841 179.173477 0.008140 0.027407 -E 9300.000000 50.000000 30.444048 179.173386 0.008157 0.027464 -E 9310.000000 50.000000 30.442221 179.188797 0.008169 0.027503 -E 9320.000000 50.000000 30.446247 179.195267 0.008175 0.027524 -E 9330.000000 50.000000 30.442486 179.160645 0.008206 0.027631 -E 9340.000000 50.000000 30.414869 179.224701 0.008254 0.027791 -E 9350.000000 50.000000 30.436049 179.189468 0.008293 0.027925 -E 9360.000000 50.000000 30.431337 179.180878 0.008345 0.028097 -E 9370.000000 50.000000 30.455574 179.232025 0.008360 0.028151 -E 9380.000000 50.000000 30.428303 179.305588 0.008380 0.028217 -E 9390.000000 50.000000 30.416456 179.263458 0.008403 0.028294 -E 9400.000000 50.000000 30.418194 179.251511 0.008471 0.028524 -E 9410.000000 50.000000 30.420670 179.223785 0.008516 0.028676 -E 9420.000000 50.000000 30.407969 179.201721 0.008562 0.028829 -E 9430.000000 50.000000 30.429398 179.217667 0.008597 0.028950 -E 9440.000000 50.000000 30.439890 179.214020 0.008602 0.028968 -E 9450.000000 50.000000 30.398888 179.230911 0.008646 0.029114 -E 9460.000000 50.000000 30.398935 179.236938 0.008691 0.029267 -E 9470.000000 50.000000 30.420662 179.248352 0.008728 0.029391 -E 9480.000000 50.000000 30.408142 179.229370 0.008783 0.029578 -E 9490.000000 50.000000 30.378168 179.207001 0.008844 0.029780 -E 9500.000000 50.000000 30.392509 179.238129 0.008878 0.029896 -E 9510.000000 50.000000 30.390265 179.231155 0.008926 0.030060 -E 9520.000000 50.000000 30.429123 179.248169 0.008935 0.030094 -E 9530.000000 50.000000 30.399893 179.268631 0.008990 0.030277 -E 9540.000000 50.000000 30.390615 179.229980 0.009075 0.030563 -E 9550.000000 50.000000 30.390547 179.217697 0.009134 0.030762 -E 9560.000000 50.000000 30.392895 179.220276 0.009156 0.030837 -E 9570.000000 50.000000 30.389643 179.230133 0.009183 0.030927 -E 9580.000000 50.000000 30.377737 179.199310 0.009204 0.030997 -E 9590.000000 50.000000 30.380928 179.237137 0.009249 0.031149 -E 9600.000000 50.000000 30.405680 179.291565 0.009282 0.031264 -E 9610.000000 50.000000 30.403437 179.241318 0.009317 0.031380 -E 9620.000000 50.000000 30.383860 179.228180 0.009376 0.031579 -E 9630.000000 50.000000 30.399109 179.259308 0.009414 0.031709 -E 9640.000000 50.000000 30.405298 179.267120 0.009458 0.031857 -E 9650.000000 50.000000 30.402599 179.285736 0.009514 0.032047 -E 9660.000000 50.000000 30.368048 179.371231 0.009558 0.032190 -E 9670.000000 50.000000 30.381384 179.300720 0.009627 0.032428 -E 9680.000000 50.000000 30.388697 179.171829 0.009697 0.032663 -E 9690.000000 50.000000 30.367689 179.240372 0.009755 0.032857 -E 9700.000000 50.000000 30.368181 179.282715 0.009787 0.032966 -E 9710.000000 50.000000 30.350195 179.237717 0.009844 0.033156 -E 9720.000000 50.000000 30.372107 179.215729 0.009907 0.033369 -E 9730.000000 50.000000 30.368996 179.198013 0.009988 0.033643 -E 9740.000000 50.000000 30.375376 179.232712 0.010046 0.033839 -E 9750.000000 50.000000 30.391548 179.277451 0.010072 0.033931 -E 9760.000000 50.000000 30.364988 179.198975 0.010153 0.034199 -E 9770.000000 50.000000 30.326233 179.267090 0.010242 0.034498 -E 9780.000000 50.000000 30.337753 179.191101 0.010277 0.034618 -E 9790.000000 50.000000 30.351171 179.231247 0.010339 0.034828 -E 9800.000000 50.000000 30.371759 179.235565 0.010413 0.035080 -E 9810.000000 50.000000 30.358463 179.245346 0.010506 0.035392 -E 9820.000000 50.000000 30.375275 179.279587 0.010593 0.035685 -E 9830.000000 50.000000 30.354204 179.228912 0.010642 0.035850 -E 9840.000000 50.000000 30.355606 179.209183 0.010713 0.036092 -E 9850.000000 50.000000 30.335573 179.276886 0.010799 0.036379 -E 9860.000000 50.000000 30.354708 179.243774 0.010864 0.036599 -E 9870.000000 50.000000 30.328585 179.238968 0.010979 0.036985 -E 9880.000000 50.000000 30.325533 179.255768 0.011074 0.037306 -E 9890.000000 50.000000 30.343845 179.306137 0.011131 0.037499 -E 9900.000000 50.000000 30.316839 179.378387 0.011205 0.037747 -E 9910.000000 50.000000 30.322737 179.327591 0.011287 0.038025 -E 9920.000000 50.000000 30.334053 179.270538 0.011382 0.038345 -E 9930.000000 50.000000 30.349192 179.274521 0.011506 0.038765 -E 9940.000000 50.000000 30.335873 179.314056 0.011627 0.039174 -E 9950.000000 50.000000 30.341789 179.262772 0.011695 0.039403 -E 9960.000000 50.000000 30.343061 179.233398 0.011807 0.039780 -E 9970.000000 50.000000 30.329645 179.291138 0.011897 0.040083 -E 9980.000000 50.000000 30.328741 179.268341 0.012044 0.040578 -E 9990.000000 50.000000 30.328070 179.267197 0.012178 0.041030 -E 10000.000000 50.000000 30.328611 179.226379 0.012291 0.041411 -E 10025.000000 50.000000 30.339270 179.299973 0.006073 0.020474 -E 10050.000000 50.000000 30.339325 179.301315 0.005929 0.019987 -E 10075.000000 50.000000 30.333817 179.267303 0.005756 0.019403 -E 10100.000000 50.000000 30.322105 179.272110 0.005623 0.018957 -E 10125.000000 50.000000 30.309557 179.292755 0.005508 0.018568 -E 10150.000000 50.000000 30.315142 179.302734 0.005365 0.018085 -E 10175.000000 50.000000 30.313940 179.291092 0.005238 0.017658 -E 10200.000000 50.000000 30.305952 179.257767 0.005127 0.017282 -E 10225.000000 50.000000 30.307531 179.296371 0.004996 0.016841 -E 10250.000000 50.000000 30.307104 179.332489 0.004878 0.016444 -E 10275.000000 50.000000 30.299210 179.344360 0.004787 0.016137 -E 10300.000000 50.000000 30.292955 179.314941 0.004670 0.015743 -E 10325.000000 50.000000 30.288057 179.277786 0.004548 0.015332 -E 10350.000000 50.000000 30.287609 179.319748 0.004448 0.014995 -E 10375.000000 50.000000 30.285625 179.334183 0.004354 0.014678 -E 10400.000000 50.000000 30.282236 179.322983 0.004266 0.014382 -E 10425.000000 50.000000 30.283077 179.313507 0.004181 0.014095 -E 10450.000000 50.000000 30.283951 179.311157 0.004098 0.013815 -E 10475.000000 50.000000 30.284035 179.323105 0.004017 0.013541 -E 10500.000000 50.000000 30.275732 179.318069 0.003943 0.013293 -E 10525.000000 50.000000 30.265938 179.308975 0.003875 0.013061 -E 10550.000000 50.000000 30.265594 179.313553 0.003808 0.012836 -E 10575.000000 50.000000 30.266068 179.326279 0.003748 0.012636 -E 10600.000000 50.000000 30.267179 179.345642 0.003695 0.012457 -E 10625.000000 50.000000 30.262539 179.342224 0.003621 0.012207 -E 10650.000000 50.000000 30.258621 179.335022 0.003557 0.011990 -E 10675.000000 50.000000 30.256289 179.323181 0.003508 0.011825 -E 10700.000000 50.000000 30.253208 179.340134 0.003445 0.011614 -E 10725.000000 50.000000 30.250164 179.358612 0.003385 0.011411 -E 10750.000000 50.000000 30.247906 179.349945 0.003345 0.011276 -E 10775.000000 50.000000 30.245653 179.346436 0.003285 0.011073 -E 10800.000000 50.000000 30.243423 179.346420 0.003213 0.010832 -E 10825.000000 50.000000 30.242035 179.357773 0.003165 0.010669 -E 10850.000000 50.000000 30.235353 179.355301 0.003115 0.010499 -E 10875.000000 50.000000 30.221809 179.335159 0.003061 0.010316 -E 10900.000000 50.000000 30.223396 179.341934 0.003019 0.010174 -E 10925.000000 50.000000 30.225708 179.352997 0.002976 0.010031 -E 10950.000000 50.000000 30.222435 179.362488 0.002925 0.009858 -E 10975.000000 50.000000 30.219034 179.358246 0.002884 0.009721 -E 11000.000000 50.000000 30.215967 179.349670 0.002849 0.009603 -E 11025.000000 50.000000 30.216478 179.360062 0.002816 0.009492 -E 11050.000000 50.000000 30.212772 179.361710 0.002789 0.009400 -E 11075.000000 50.000000 30.205166 179.355301 0.002767 0.009324 -E 11100.000000 50.000000 30.203367 179.369217 0.002725 0.009184 -E 11125.000000 50.000000 30.203163 179.369629 0.002692 0.009074 -E 11150.000000 50.000000 30.205065 179.343216 0.002677 0.009023 -E 11175.000000 50.000000 30.202225 179.348404 0.002655 0.008949 -E 11200.000000 50.000000 30.198641 179.360519 0.002634 0.008878 -E 11225.000000 50.000000 30.197510 179.363876 0.002623 0.008839 -E 11250.000000 50.000000 30.193401 179.369156 0.002605 0.008777 -E 11275.000000 50.000000 30.187777 179.375504 0.002583 0.008705 -E 11300.000000 50.000000 30.188314 179.380249 0.002580 0.008694 -E 11325.000000 50.000000 30.186563 179.381668 0.002570 0.008659 -E 11350.000000 50.000000 30.182228 179.379333 0.002552 0.008598 -E 11375.000000 50.000000 30.180725 179.376755 0.002543 0.008569 -E 11400.000000 50.000000 30.178709 179.377731 0.002534 0.008537 -E 11425.000000 50.000000 30.174845 179.386353 0.002521 0.008493 -E 11450.000000 50.000000 30.172667 179.384583 0.002509 0.008452 -E 11475.000000 50.000000 30.171057 179.379791 0.002495 0.008407 -E 11500.000000 50.000000 30.169447 179.377579 0.002477 0.008344 -E 11525.000000 50.000000 30.168097 179.379593 0.002459 0.008286 -E 11550.000000 50.000000 30.166924 179.384338 0.002443 0.008231 -E 11575.000000 50.000000 30.166353 179.388702 0.002434 0.008198 -E 11600.000000 50.000000 30.163115 179.384354 0.002416 0.008140 -E 11625.000000 50.000000 30.156796 179.369919 0.002391 0.008053 -E 11650.000000 50.000000 30.156534 179.383987 0.002376 0.008003 -E 11675.000000 50.000000 30.155527 179.396530 0.002360 0.007951 -E 11700.000000 50.000000 30.151423 179.398697 0.002341 0.007884 -E 11725.000000 50.000000 30.149807 179.388351 0.002328 0.007842 -E 11750.000000 50.000000 30.147722 179.380066 0.002316 0.007799 -E 11775.000000 50.000000 30.140188 179.397934 0.002292 0.007720 -E 11800.000000 50.000000 30.140722 179.398956 0.002271 0.007648 -E 11825.000000 50.000000 30.145166 179.391068 0.002251 0.007582 -E 11850.000000 50.000000 30.134302 179.402481 0.002233 0.007520 -E 11875.000000 50.000000 30.129354 179.405533 0.002216 0.007460 -E 11900.000000 50.000000 30.130415 179.400070 0.002198 0.007402 -E 11925.000000 50.000000 30.130629 179.404663 0.002179 0.007336 -E 11950.000000 50.000000 30.130386 179.410660 0.002161 0.007276 -E 11975.000000 50.000000 30.129478 179.417801 0.002147 0.007229 -E 12000.000000 50.000000 30.124651 179.425766 0.002133 0.007181 -E 12025.000000 50.000000 30.120522 179.429428 0.002119 0.007133 -E 12050.000000 50.000000 30.121578 179.419128 0.002104 0.007084 -E 12075.000000 50.000000 30.121286 179.411514 0.002094 0.007049 -E 12100.000000 50.000000 30.119808 179.406479 0.002085 0.007018 -E 12125.000000 50.000000 30.114285 179.410980 0.002072 0.006974 -E 12150.000000 50.000000 30.111580 179.416412 0.002059 0.006932 -E 12175.000000 50.000000 30.111042 179.422562 0.002047 0.006890 -E 12200.000000 50.000000 30.109694 179.425049 0.002042 0.006874 -E 12225.000000 50.000000 30.108868 179.424820 0.002036 0.006853 -E 12250.000000 50.000000 30.108679 179.421219 0.002029 0.006828 -E 12275.000000 50.000000 30.102942 179.429855 0.002027 0.006820 -E 12300.000000 50.000000 30.099190 179.434479 0.002026 0.006819 -E 12325.000000 50.000000 30.100790 179.428040 0.002030 0.006830 -E 12350.000000 50.000000 30.101753 179.434891 0.002024 0.006811 -E 12375.000000 50.000000 30.100403 179.440170 0.002021 0.006799 -E 12400.000000 50.000000 30.091654 179.427048 0.002033 0.006841 -E 12425.000000 50.000000 30.089205 179.429413 0.002029 0.006826 -E 12450.000000 50.000000 30.089598 179.436981 0.002019 0.006793 -E 12475.000000 50.000000 30.088137 179.426987 0.002026 0.006817 -E 12500.000000 50.000000 30.087551 179.424042 0.002020 0.006796 -E 12525.000000 50.000000 30.087547 179.426575 0.002004 0.006742 -E 12550.000000 50.000000 30.083096 179.433182 0.001998 0.006720 -E 12575.000000 50.000000 30.081680 179.434418 0.001990 0.006693 -E 12600.000000 50.000000 30.083725 179.429581 0.001980 0.006658 -E 12625.000000 50.000000 30.080915 179.443893 0.001975 0.006642 -E 12650.000000 50.000000 30.079355 179.451416 0.001968 0.006618 -E 12675.000000 50.000000 30.080673 179.444504 0.001956 0.006577 -E 12700.000000 50.000000 30.076685 179.450378 0.001943 0.006533 -E 12725.000000 50.000000 30.070919 179.451370 0.001934 0.006502 -E 12750.000000 50.000000 30.063442 179.432236 0.001935 0.006506 -E 12775.000000 50.000000 30.065218 179.441727 0.001924 0.006470 -E 12800.000000 50.000000 30.068748 179.457916 0.001910 0.006422 -E 12825.000000 50.000000 30.064947 179.457123 0.001901 0.006390 -E 12850.000000 50.000000 30.063169 179.457260 0.001892 0.006361 -E 12875.000000 50.000000 30.062559 179.457626 0.001884 0.006334 -E 12900.000000 50.000000 30.062298 179.455124 0.001877 0.006309 -E 12925.000000 50.000000 30.058578 179.459946 0.001867 0.006276 -E 12950.000000 50.000000 30.052181 179.470428 0.001856 0.006237 -E 12975.000000 50.000000 30.054710 179.460846 0.001850 0.006217 -E 13000.000000 50.000000 30.054024 179.457184 0.001844 0.006196 -E 13025.000000 50.000000 30.049728 179.460144 0.001837 0.006173 -E 13050.000000 50.000000 30.050802 179.473831 0.001827 0.006139 -E 13075.000000 50.000000 30.050880 179.474670 0.001819 0.006112 -E 13100.000000 50.000000 30.048740 179.454163 0.001815 0.006097 -E 13125.000000 50.000000 30.047749 179.466904 0.001810 0.006081 -E 13150.000000 50.000000 30.046177 179.479095 0.001805 0.006064 -E 13175.000000 50.000000 30.042879 179.477142 0.001799 0.006044 -E 13200.000000 50.000000 30.042889 179.480957 0.001794 0.006026 -E 13225.000000 50.000000 30.042961 179.483276 0.001791 0.006016 -E 13250.000000 50.000000 30.040148 179.475464 0.001794 0.006024 -E 13275.000000 50.000000 30.038237 179.477036 0.001792 0.006018 -E 13300.000000 50.000000 30.036457 179.480713 0.001790 0.006010 -E 13325.000000 50.000000 30.033394 179.474716 0.001793 0.006020 -E 13350.000000 50.000000 30.033972 179.474991 0.001796 0.006030 -E 13375.000000 50.000000 30.036030 179.479111 0.001798 0.006038 -E 13400.000000 50.000000 30.032175 179.485306 0.001799 0.006041 -E 13425.000000 50.000000 30.030514 179.486816 0.001804 0.006055 -E 13450.000000 50.000000 30.030468 179.484711 0.001810 0.006077 -E 13475.000000 50.000000 30.028555 179.483109 0.001822 0.006115 -E 13500.000000 50.000000 30.027227 179.485214 0.001834 0.006155 -E 13525.000000 50.000000 30.026484 179.491074 0.001846 0.006198 -E 13550.000000 50.000000 30.024529 179.488251 0.001871 0.006281 -E 13575.000000 50.000000 30.023066 179.487198 0.001897 0.006367 -E 13600.000000 50.000000 30.022299 179.488770 0.001924 0.006456 -E 13625.000000 50.000000 30.017052 179.487427 0.001941 0.006513 -E 13650.000000 50.000000 30.014164 179.483307 0.001958 0.006569 -E 13675.000000 50.000000 30.015799 179.475098 0.001975 0.006628 -E 13700.000000 50.000000 30.014881 179.482162 0.002022 0.006783 -E 13725.000000 50.000000 30.013321 179.488419 0.002100 0.007046 -E 13750.000000 50.000000 30.011250 179.487076 0.002242 0.007522 -E 13775.000000 50.000000 30.007814 179.496078 0.002446 0.008206 -E 13800.000000 50.000000 30.005411 179.501831 0.002662 0.008928 -E 13825.000000 50.000000 30.007725 179.487244 0.002791 0.009360 -E 13850.000000 50.000000 30.010691 179.479370 0.002769 0.009286 -E 13875.000000 50.000000 30.012869 179.484161 0.002687 0.009013 -E 13900.000000 50.000000 30.012791 179.518799 0.002573 0.008629 -E 13925.000000 50.000000 30.005213 179.504425 0.002503 0.008393 -E 13950.000000 50.000000 29.998327 179.481781 0.002437 0.008171 -E 13975.000000 50.000000 30.004522 179.495712 0.002322 0.007786 -E 14000.000000 50.000000 30.001305 179.505890 0.002254 0.007556 -E 14025.000000 50.000000 29.995764 179.513641 0.002205 0.007391 -E 14050.000000 50.000000 29.999598 179.517258 0.002150 0.007207 -E 14075.000000 50.000000 29.999165 179.513794 0.002112 0.007078 -E 14100.000000 50.000000 29.996456 179.507538 0.002082 0.006977 -E 14125.000000 50.000000 29.994030 179.508728 0.002042 0.006844 -E 14150.000000 50.000000 29.991705 179.506042 0.002016 0.006756 -E 14175.000000 50.000000 29.989847 179.502808 0.001998 0.006695 -E 14200.000000 50.000000 29.992411 179.520416 0.001977 0.006624 -E 14225.000000 50.000000 29.989735 179.526520 0.001964 0.006580 -E 14250.000000 50.000000 29.983471 179.523926 0.001956 0.006554 -E 14275.000000 50.000000 29.983101 179.517593 0.001944 0.006511 -E 14300.000000 50.000000 29.982849 179.512878 0.001935 0.006482 -E 14325.000000 50.000000 29.982729 179.509705 0.001930 0.006464 -E 14350.000000 50.000000 29.983572 179.514709 0.001925 0.006445 -E 14375.000000 50.000000 29.982859 179.516998 0.001919 0.006426 -E 14400.000000 50.000000 29.980696 179.516724 0.001913 0.006406 -E 14425.000000 50.000000 29.980898 179.520294 0.001914 0.006408 -E 14450.000000 50.000000 29.978909 179.524521 0.001911 0.006396 -E 14475.000000 50.000000 29.974642 179.529419 0.001903 0.006369 -E 14500.000000 50.000000 29.976574 179.527008 0.001900 0.006361 -E 14525.000000 50.000000 29.976213 179.519394 0.001902 0.006364 -E 14550.000000 50.000000 29.973116 179.506012 0.001906 0.006380 -E 14575.000000 50.000000 29.976366 179.515472 0.001898 0.006352 -E 14600.000000 50.000000 29.974144 179.523346 0.001898 0.006350 -E 14625.000000 50.000000 29.965015 179.528336 0.001907 0.006381 -E 14650.000000 50.000000 29.966658 179.531723 0.001902 0.006362 -E 14675.000000 50.000000 29.967539 179.526535 0.001903 0.006365 -E 14700.000000 50.000000 29.966734 179.510452 0.001913 0.006398 -E 14725.000000 50.000000 29.968668 179.514587 0.001907 0.006379 -E 14750.000000 50.000000 29.968100 179.518570 0.001907 0.006378 -E 14775.000000 50.000000 29.963980 179.520584 0.001916 0.006406 -E 14800.000000 50.000000 29.965082 179.531891 0.001915 0.006401 -E 14825.000000 50.000000 29.962446 179.532944 0.001914 0.006400 -E 14850.000000 50.000000 29.954145 179.519028 0.001916 0.006407 -E 14875.000000 50.000000 29.957338 179.525589 0.001919 0.006415 -E 14900.000000 50.000000 29.957594 179.528061 0.001924 0.006431 -E 14925.000000 50.000000 29.952391 179.522415 0.001933 0.006459 -E 14950.000000 50.000000 29.955393 179.526550 0.001932 0.006455 -E 14975.000000 50.000000 29.954981 179.528641 0.001936 0.006469 -E 15000.000000 50.000000 29.948786 179.526718 0.001949 0.006513 -E 15025.000000 50.000000 29.953321 179.527344 0.001946 0.006502 -E 15050.000000 50.000000 29.953947 179.536316 0.001949 0.006510 -E 15075.000000 50.000000 29.947922 179.556595 0.001961 0.006550 -E 15100.000000 50.000000 29.948017 179.540634 0.001959 0.006544 -E 15125.000000 50.000000 29.946371 179.535309 0.001960 0.006546 -E 15150.000000 50.000000 29.941725 179.548325 0.001965 0.006562 -E 15175.000000 50.000000 29.941496 179.539444 0.001969 0.006573 -E 15200.000000 50.000000 29.942516 179.537521 0.001974 0.006592 -E 15225.000000 50.000000 29.944754 179.546753 0.001984 0.006623 -E 15250.000000 50.000000 29.942436 179.543625 0.001987 0.006634 -E 15275.000000 50.000000 29.938793 179.544434 0.001994 0.006656 -E 15300.000000 50.000000 29.933817 179.551086 0.002006 0.006694 -E 15325.000000 50.000000 29.938711 179.546188 0.002007 0.006698 -E 15350.000000 50.000000 29.938967 179.542130 0.002012 0.006714 -E 15375.000000 50.000000 29.933300 179.539658 0.002022 0.006747 -E 15400.000000 50.000000 29.931229 179.556473 0.002026 0.006760 -E 15425.000000 50.000000 29.930384 179.565002 0.002036 0.006790 -E 15450.000000 50.000000 29.930771 179.563950 0.002051 0.006841 -E 15475.000000 50.000000 29.938086 179.555161 0.002054 0.006851 -E 15500.000000 50.000000 29.938864 179.553223 0.002061 0.006874 -E 15525.000000 50.000000 29.933184 179.557907 0.002072 0.006908 -E 15550.000000 50.000000 29.931524 179.548126 0.002070 0.006902 -E 15575.000000 50.000000 29.928980 179.545761 0.002078 0.006926 -E 15600.000000 50.000000 29.925861 179.550339 0.002093 0.006976 -E 15625.000000 50.000000 29.927835 179.561096 0.002097 0.006989 -E 15650.000000 50.000000 29.926607 179.560883 0.002106 0.007019 -E 15675.000000 50.000000 29.923122 179.552933 0.002119 0.007060 -E 15700.000000 50.000000 29.923845 179.559723 0.002121 0.007069 -E 15725.000000 50.000000 29.922953 179.564621 0.002130 0.007097 -E 15750.000000 50.000000 29.921459 179.567734 0.002143 0.007139 -E 15775.000000 50.000000 29.924519 179.566864 0.002151 0.007166 -E 15800.000000 50.000000 29.923111 179.571686 0.002160 0.007196 -E 15825.000000 50.000000 29.919291 179.578995 0.002171 0.007230 -E 15850.000000 50.000000 29.917509 179.580063 0.002185 0.007277 -E 15875.000000 50.000000 29.916458 179.571503 0.002194 0.007307 -E 15900.000000 50.000000 29.916624 179.560913 0.002202 0.007330 -E 15925.000000 50.000000 29.920561 179.564209 0.002214 0.007370 -E 15950.000000 50.000000 29.919048 179.572739 0.002229 0.007419 -E 15975.000000 50.000000 29.916357 179.578796 0.002244 0.007469 -E 16000.000000 50.000000 29.917961 179.567841 0.002254 0.007503 -E 16025.000000 50.000000 29.920023 179.572235 0.002264 0.007536 -E 16050.000000 50.000000 29.920021 179.576477 0.002276 0.007576 -E 16075.000000 50.000000 29.913780 179.565414 0.002294 0.007634 -E 16100.000000 50.000000 29.908836 179.570587 0.002309 0.007684 -E 16125.000000 50.000000 29.906479 179.575302 0.002322 0.007726 -E 16150.000000 50.000000 29.909039 179.569382 0.002332 0.007759 -E 16175.000000 50.000000 29.907488 179.565125 0.002353 0.007826 -E 16200.000000 50.000000 29.906897 179.566666 0.002372 0.007890 -E 16225.000000 50.000000 29.909378 179.577866 0.002387 0.007937 -E 16250.000000 50.000000 29.912039 179.586533 0.002403 0.007991 -E 16275.000000 50.000000 29.911755 179.588699 0.002421 0.008051 -E 16300.000000 50.000000 29.907314 179.582184 0.002443 0.008121 -E 16325.000000 50.000000 29.904970 179.578934 0.002463 0.008188 -E 16350.000000 50.000000 29.905828 179.579453 0.002485 0.008262 -E 16375.000000 50.000000 29.910107 179.583878 0.002511 0.008346 -E 16400.000000 50.000000 29.909285 179.576080 0.002530 0.008410 -E 16425.000000 50.000000 29.907387 179.577789 0.002562 0.008514 -E 16450.000000 50.000000 29.904627 179.587250 0.002603 0.008649 -E 16475.000000 50.000000 29.902878 179.588730 0.002620 0.008707 -E 16500.000000 50.000000 29.904718 179.583328 0.002658 0.008832 -E 16525.000000 50.000000 29.907667 179.575714 0.002710 0.009003 -E 16550.000000 50.000000 29.901731 179.584335 0.002758 0.009163 -E 16575.000000 50.000000 29.896313 179.578873 0.002829 0.009397 -E 16600.000000 50.000000 29.893032 179.572754 0.002916 0.009685 -E 16625.000000 50.000000 29.897575 179.594009 0.003016 0.010018 -E 16650.000000 50.000000 29.899906 179.597870 0.003187 0.010585 -E 16675.000000 50.000000 29.900501 179.598389 0.003411 0.011328 -E 16700.000000 50.000000 29.897877 179.608627 0.003687 0.012243 -E 16725.000000 50.000000 29.900707 179.591629 0.004098 0.013605 -E 16750.000000 50.000000 29.904716 179.589706 0.004631 0.015373 -E 16775.000000 50.000000 29.907181 179.644882 0.005301 0.017596 -E 16800.000000 50.000000 29.895750 179.623108 0.006182 0.020522 -E 16825.000000 50.000000 29.893005 179.591934 0.007257 0.024086 -E 16850.000000 50.000000 29.912489 179.569946 0.008470 0.028111 -E 16875.000000 50.000000 29.904127 179.600922 0.009913 0.032898 -E 16900.000000 50.000000 29.893539 179.645523 0.011633 0.038601 -E 16925.000000 50.000000 29.882179 179.699280 0.013605 0.045141 -E 16950.000000 50.000000 29.876783 179.660049 0.015759 0.052284 -E 16975.000000 50.000000 29.872837 179.641144 0.018087 0.060003 -E 17000.000000 50.000000 29.875265 179.633972 0.020630 0.068434 -E 1930.000000 60.000000 38.278538 120.925606 0.008911 0.034066 -E 1940.000000 60.000000 38.289627 121.167152 0.008109 0.030967 -E 1950.000000 60.000000 38.272587 121.402153 0.007470 0.028480 -E 1960.000000 60.000000 38.260330 121.727058 0.007050 0.026845 -E 1970.000000 60.000000 38.263359 122.087471 0.006708 0.025519 -E 1980.000000 60.000000 38.250435 122.430313 0.006447 0.024495 -E 1990.000000 60.000000 38.254402 122.826157 0.006225 0.023632 -E 2000.000000 60.000000 38.248089 123.207130 0.006021 0.022838 -E 2010.000000 60.000000 38.208851 123.652802 0.005855 0.022184 -E 2020.000000 60.000000 38.201485 124.028328 0.005674 0.021483 -E 2030.000000 60.000000 38.186844 124.411926 0.005493 0.020786 -E 2040.000000 60.000000 38.146591 124.798195 0.005337 0.020175 -E 2050.000000 60.000000 38.125309 125.155060 0.005179 0.019562 -E 2060.000000 60.000000 38.112541 125.560593 0.005024 0.018960 -E 2070.000000 60.000000 38.073868 125.876305 0.004877 0.018376 -E 2080.000000 60.000000 38.041710 126.188416 0.004740 0.017830 -E 2090.000000 60.000000 38.023827 126.548409 0.004607 0.017304 -E 2100.000000 60.000000 37.994781 126.865059 0.004488 0.016825 -E 2110.000000 60.000000 37.979832 127.161507 0.004388 0.016416 -E 2120.000000 60.000000 37.957214 127.460625 0.004293 0.016024 -E 2130.000000 60.000000 37.933399 127.870689 0.004201 0.015650 -E 2140.000000 60.000000 37.917744 128.205978 0.004121 0.015320 -E 2150.000000 60.000000 37.906982 128.504715 0.004046 0.015011 -E 2160.000000 60.000000 37.893452 128.830780 0.003979 0.014737 -E 2170.000000 60.000000 37.878872 129.184280 0.003919 0.014485 -E 2180.000000 60.000000 37.867455 129.537735 0.003855 0.014228 -E 2190.000000 60.000000 37.860775 129.854584 0.003790 0.013964 -E 2200.000000 60.000000 37.847683 130.185211 0.003727 0.013712 -E 2210.000000 60.000000 37.830784 130.515106 0.003670 0.013479 -E 2220.000000 60.000000 37.816380 130.892395 0.003611 0.013244 -E 2230.000000 60.000000 37.801361 131.283890 0.003557 0.013029 -E 2240.000000 60.000000 37.778706 131.628616 0.003507 0.012828 -E 2250.000000 60.000000 37.743412 131.985764 0.003463 0.012646 -E 2260.000000 60.000000 37.702560 132.398148 0.003422 0.012478 -E 2270.000000 60.000000 37.650112 132.785751 0.003380 0.012309 -E 2280.000000 60.000000 37.578609 133.152740 0.003341 0.012146 -E 2290.000000 60.000000 37.500362 133.524399 0.003302 0.011982 -E 2300.000000 60.000000 37.402233 133.862473 0.003269 0.011841 -E 2310.000000 60.000000 37.286510 134.168198 0.003240 0.011713 -E 2320.000000 60.000000 37.176014 134.370193 0.003211 0.011586 -E 2330.000000 60.000000 37.065907 134.522812 0.003186 0.011474 -E 2340.000000 60.000000 36.972538 134.655243 0.003163 0.011370 -E 2350.000000 60.000000 36.899826 134.763580 0.003138 0.011264 -E 2360.000000 60.000000 36.847996 134.777390 0.003116 0.011170 -E 2370.000000 60.000000 36.820316 134.843552 0.003092 0.011073 -E 2380.000000 60.000000 36.813324 134.895035 0.003068 0.010978 -E 2390.000000 60.000000 36.829830 134.925934 0.003047 0.010899 -E 2400.000000 60.000000 36.873516 134.992889 0.003028 0.010825 -E 2410.000000 60.000000 36.921291 135.080475 0.003009 0.010757 -E 2420.000000 60.000000 36.972084 135.234268 0.002991 0.010691 -E 2430.000000 60.000000 37.040279 135.401321 0.002978 0.010644 -E 2440.000000 60.000000 37.111458 135.546844 0.002965 0.010595 -E 2450.000000 60.000000 37.185677 135.716415 0.002952 0.010548 -E 2460.000000 60.000000 37.267071 135.944778 0.002942 0.010512 -E 2470.000000 60.000000 37.349518 136.183685 0.002932 0.010480 -E 2480.000000 60.000000 37.428848 136.428253 0.002923 0.010446 -E 2490.000000 60.000000 37.515572 136.672287 0.002916 0.010421 -E 2500.000000 60.000000 37.599571 136.946274 0.002913 0.010412 -E 2510.000000 60.000000 37.672523 137.251846 0.002913 0.010409 -E 2520.000000 60.000000 37.751587 137.545654 0.002910 0.010397 -E 2530.000000 60.000000 37.829937 137.842560 0.002911 0.010401 -E 2540.000000 60.000000 37.906437 138.159271 0.002918 0.010424 -E 2550.000000 60.000000 37.980633 138.489120 0.002924 0.010445 -E 2560.000000 60.000000 38.052593 138.831039 0.002934 0.010477 -E 2570.000000 60.000000 38.130104 139.198883 0.002945 0.010518 -E 2580.000000 60.000000 38.199741 139.574127 0.002958 0.010560 -E 2590.000000 60.000000 38.265358 139.923981 0.002972 0.010609 -E 2600.000000 60.000000 38.340096 140.324966 0.002991 0.010674 -E 2610.000000 60.000000 38.403397 140.742645 0.003011 0.010743 -E 2620.000000 60.000000 38.471260 141.163712 0.003030 0.010809 -E 2630.000000 60.000000 38.548508 141.574554 0.003052 0.010887 -E 2640.000000 60.000000 38.605827 142.005463 0.003078 0.010977 -E 2650.000000 60.000000 38.674141 142.449142 0.003105 0.011070 -E 2660.000000 60.000000 38.742176 142.932846 0.003136 0.011180 -E 2670.000000 60.000000 38.801376 143.432236 0.003168 0.011291 -E 2680.000000 60.000000 38.849037 143.927231 0.003199 0.011399 -E 2690.000000 60.000000 38.892525 144.469009 0.003230 0.011502 -E 2700.000000 60.000000 38.927624 145.003006 0.003263 0.011617 -E 2710.000000 60.000000 38.938728 145.538116 0.003303 0.011751 -E 2720.000000 60.000000 38.951885 146.128418 0.003338 0.011870 -E 2730.000000 60.000000 38.948807 146.727997 0.003373 0.011986 -E 2740.000000 60.000000 38.924351 147.303818 0.003413 0.012119 -E 2750.000000 60.000000 38.890865 147.869202 0.003451 0.012243 -E 2760.000000 60.000000 38.849129 148.433777 0.003492 0.012376 -E 2770.000000 60.000000 38.786488 148.970932 0.003542 0.012540 -E 2780.000000 60.000000 38.711948 149.538452 0.003578 0.012652 -E 2790.000000 60.000000 38.637608 150.072784 0.003609 0.012747 -E 2800.000000 60.000000 38.561638 150.581985 0.003643 0.012852 -E 2810.000000 60.000000 38.491306 151.085861 0.003684 0.012983 -E 2820.000000 60.000000 38.407974 151.590714 0.003727 0.013119 -E 2830.000000 60.000000 38.316181 152.109497 0.003769 0.013248 -E 2840.000000 60.000000 38.230812 152.638489 0.003808 0.013368 -E 2850.000000 60.000000 38.129639 153.146362 0.003858 0.013528 -E 2860.000000 60.000000 38.022018 153.639267 0.003911 0.013692 -E 2870.000000 60.000000 37.907173 154.173355 0.003958 0.013837 -E 2880.000000 60.000000 37.756218 154.745682 0.004016 0.014018 -E 2890.000000 60.000000 37.594189 155.254028 0.004078 0.014209 -E 2900.000000 60.000000 37.404324 155.725388 0.004145 0.014412 -E 2910.000000 60.000000 37.198780 156.210236 0.004216 0.014629 -E 2920.000000 60.000000 36.982185 156.603745 0.004289 0.014851 -E 2930.000000 60.000000 36.750244 156.912109 0.004364 0.015075 -E 2940.000000 60.000000 36.525887 157.233994 0.004435 0.015289 -E 2950.000000 60.000000 36.322727 157.499176 0.004505 0.015499 -E 2960.000000 60.000000 36.112434 157.684692 0.004580 0.015724 -E 2970.000000 60.000000 35.914429 157.861572 0.004650 0.015933 -E 2980.000000 60.000000 35.721848 158.017960 0.004724 0.016159 -E 2990.000000 60.000000 35.556854 158.179062 0.004797 0.016383 -E 3000.000000 60.000000 35.397190 158.308258 0.004872 0.016612 -E 3010.000000 60.000000 35.242344 158.414810 0.004941 0.016822 -E 3020.000000 60.000000 35.087296 158.471970 0.005016 0.017053 -E 3030.000000 60.000000 34.942444 158.543625 0.005099 0.017312 -E 3040.000000 60.000000 34.823170 158.614563 0.005172 0.017541 -E 3050.000000 60.000000 34.712116 158.689301 0.005256 0.017807 -E 3060.000000 60.000000 34.584831 158.759933 0.005337 0.018060 -E 3070.000000 60.000000 34.494347 158.823944 0.005409 0.018289 -E 3080.000000 60.000000 34.409149 158.856583 0.005487 0.018536 -E 3090.000000 60.000000 34.320488 158.893677 0.005569 0.018798 -E 3100.000000 60.000000 34.220039 158.963379 0.005649 0.019049 -E 3110.000000 60.000000 34.131813 159.003479 0.005723 0.019284 -E 3120.000000 60.000000 34.078037 159.040726 0.005799 0.019528 -E 3130.000000 60.000000 34.008434 159.145584 0.005865 0.019737 -E 3140.000000 60.000000 33.922028 159.249649 0.005941 0.019979 -E 3150.000000 60.000000 33.860493 159.308792 0.006022 0.020238 -E 3160.000000 60.000000 33.809444 159.339249 0.006092 0.020465 -E 3170.000000 60.000000 33.743847 159.375107 0.006170 0.020712 -E 3180.000000 60.000000 33.700306 159.452164 0.006236 0.020925 -E 3190.000000 60.000000 33.636578 159.533142 0.006316 0.021184 -E 3200.000000 60.000000 33.597847 159.579269 0.006388 0.021417 -E 3210.000000 60.000000 33.570705 159.651001 0.006465 0.021667 -E 3220.000000 60.000000 33.527607 159.738968 0.006540 0.021909 -E 3230.000000 60.000000 33.492535 159.807205 0.006611 0.022142 -E 3240.000000 60.000000 33.454685 159.904587 0.006684 0.022378 -E 3250.000000 60.000000 33.408737 159.925537 0.006761 0.022628 -E 3260.000000 60.000000 33.386749 160.073517 0.006887 0.023043 -E 3270.000000 60.000000 33.349045 160.167694 0.007041 0.023548 -E 3280.000000 60.000000 33.320282 160.205780 0.007180 0.024009 -E 3290.000000 60.000000 33.310574 160.317963 0.007288 0.024366 -E 3300.000000 60.000000 33.272793 160.365402 0.007405 0.024748 -E 3310.000000 60.000000 33.239120 160.442200 0.007520 0.025124 -E 3320.000000 60.000000 33.248146 160.567780 0.007588 0.025350 -E 3330.000000 60.000000 33.221409 160.651962 0.007652 0.025559 -E 3340.000000 60.000000 33.190601 160.696381 0.007707 0.025736 -E 3350.000000 60.000000 33.160027 160.759171 0.007775 0.025954 -E 3360.000000 60.000000 33.157284 160.913376 0.007829 0.026131 -E 3370.000000 60.000000 33.151142 161.031982 0.007863 0.026244 -E 3380.000000 60.000000 33.128952 161.091217 0.007901 0.026365 -E 3390.000000 60.000000 33.123825 161.248840 0.007905 0.026375 -E 3400.000000 60.000000 33.121628 161.289963 0.007921 0.026424 -E 3410.000000 60.000000 33.117199 161.372971 0.007957 0.026541 -E 3420.000000 60.000000 33.136242 161.551849 0.008015 0.026734 -E 3430.000000 60.000000 33.118813 161.631927 0.008070 0.026916 -E 3440.000000 60.000000 33.120609 161.662888 0.008118 0.027073 -E 3450.000000 60.000000 33.127647 161.751862 0.008197 0.027336 -E 3460.000000 60.000000 33.129829 161.871964 0.008253 0.027521 -E 3470.000000 60.000000 33.143055 162.011581 0.008326 0.027765 -E 3480.000000 60.000000 33.182995 162.125031 0.008376 0.027934 -E 3490.000000 60.000000 33.178242 162.265320 0.008434 0.028125 -E 3500.000000 60.000000 33.208729 162.391495 0.008489 0.028310 -E 3510.000000 60.000000 33.270031 162.455765 0.008542 0.028495 -E 3520.000000 60.000000 33.287575 162.586380 0.008603 0.028698 -E 3530.000000 60.000000 33.324596 162.701187 0.008660 0.028892 -E 3540.000000 60.000000 33.388176 162.842087 0.008724 0.029116 -E 3550.000000 60.000000 33.437271 163.059845 0.008778 0.029299 -E 3560.000000 60.000000 33.500336 163.214371 0.008819 0.029447 -E 3570.000000 60.000000 33.572987 163.434769 0.008865 0.029608 -E 3580.000000 60.000000 33.646152 163.691727 0.008911 0.029775 -E 3590.000000 60.000000 33.727108 163.895004 0.008954 0.029929 -E 3600.000000 60.000000 33.781876 164.222900 0.009003 0.030099 -E 3610.000000 60.000000 33.860466 164.615067 0.009050 0.030268 -E 3620.000000 60.000000 33.944340 165.009338 0.009059 0.030313 -E 3630.000000 60.000000 33.995335 165.418808 0.009084 0.030405 -E 3640.000000 60.000000 34.033634 165.834747 0.009140 0.030598 -E 3650.000000 60.000000 34.030277 166.278992 0.009224 0.030877 -E 3660.000000 60.000000 34.045547 166.755280 0.009199 0.030794 -E 3670.000000 60.000000 34.054699 167.277054 0.009130 0.030562 -E 3680.000000 60.000000 34.021641 167.829895 0.009114 0.030504 -E 3690.000000 60.000000 33.948914 168.359634 0.009167 0.030667 -E 3700.000000 60.000000 33.886036 168.780380 0.009285 0.031048 -E 3710.000000 60.000000 33.799667 169.237854 0.009413 0.031460 -E 3720.000000 60.000000 33.718525 169.740021 0.009466 0.031623 -E 3730.000000 60.000000 33.590622 170.219986 0.009554 0.031894 -E 3740.000000 60.000000 33.436661 170.644150 0.009657 0.032211 -E 3750.000000 60.000000 33.298901 171.032684 0.009678 0.032258 -E 3760.000000 60.000000 33.148689 171.438858 0.009680 0.032237 -E 3770.000000 60.000000 32.987064 171.779633 0.009720 0.032345 -E 3780.000000 60.000000 32.813496 172.089767 0.009697 0.032243 -E 3790.000000 60.000000 32.649033 172.327026 0.009658 0.032089 -E 3800.000000 60.000000 32.504410 172.576401 0.009674 0.032120 -E 3810.000000 60.000000 32.324226 172.783401 0.009788 0.032476 -E 3820.000000 60.000000 32.169716 173.004089 0.009887 0.032784 -E 3830.000000 60.000000 32.045029 173.197052 0.009837 0.032602 -E 3840.000000 60.000000 31.887426 173.305191 0.009873 0.032701 -E 3850.000000 60.000000 31.747267 173.383835 0.009987 0.033065 -E 3860.000000 60.000000 31.593290 173.526245 0.009957 0.032948 -E 3870.000000 60.000000 31.457291 173.761185 0.009832 0.032519 -E 3880.000000 60.000000 31.337835 173.822891 0.009699 0.032070 -E 3890.000000 60.000000 31.201456 173.942535 0.009754 0.032240 -E 3900.000000 60.000000 31.086119 174.092270 0.010046 0.033195 -E 3910.000000 60.000000 30.981161 174.098099 0.010351 0.034194 -E 3920.000000 60.000000 30.857571 174.223724 0.010321 0.034084 -E 3930.000000 60.000000 30.752151 174.301712 0.010158 0.033539 -E 3940.000000 60.000000 30.653267 174.274979 0.010031 0.033113 -E 3950.000000 60.000000 30.538107 174.371429 0.010022 0.033077 -E 3960.000000 60.000000 30.419920 174.473465 0.010147 0.033485 -E 3970.000000 60.000000 30.315388 174.518097 0.010266 0.033872 -E 3980.000000 60.000000 30.223312 174.605606 0.010137 0.033443 -E 3990.000000 60.000000 30.146410 174.663269 0.009991 0.032958 -E 4000.000000 60.000000 30.048800 174.738602 0.010085 0.033266 -E 4010.000000 60.000000 29.952791 174.776459 0.010330 0.034074 -E 4020.000000 60.000000 29.856138 174.821655 0.010492 0.034605 -E 4030.000000 60.000000 29.761572 174.831024 0.010520 0.034698 -E 4040.000000 60.000000 29.693836 174.841888 0.010433 0.034410 -E 4050.000000 60.000000 29.618488 174.864624 0.010228 0.033733 -E 4060.000000 60.000000 29.524929 174.949417 0.010025 0.033064 -E 4070.000000 60.000000 29.432436 175.032135 0.010075 0.033229 -E 4080.000000 60.000000 29.368515 175.057571 0.010378 0.034231 -E 4090.000000 60.000000 29.302229 175.077499 0.010620 0.035031 -E 4100.000000 60.000000 29.227179 175.117371 0.010671 0.035201 -E 4110.000000 60.000000 29.139574 175.125824 0.010677 0.035223 -E 4120.000000 60.000000 29.073658 175.188690 0.010556 0.034825 -E 4130.000000 60.000000 29.017221 175.296875 0.010255 0.033836 -E 4140.000000 60.000000 28.928747 175.270020 0.010152 0.033497 -E 4150.000000 60.000000 28.849491 175.290283 0.010328 0.034084 -E 4160.000000 60.000000 28.766273 175.296829 0.010441 0.034460 -E 4170.000000 60.000000 28.711807 175.350739 0.010416 0.034381 -E 4180.000000 60.000000 28.663584 175.428833 0.010424 0.034412 -E 4190.000000 60.000000 28.568825 175.439590 0.010576 0.034919 -E 4200.000000 60.000000 28.518906 175.427872 0.010613 0.035044 -E 4210.000000 60.000000 28.465252 175.491501 0.010341 0.034152 -E 4220.000000 60.000000 28.393484 175.512482 0.010016 0.033083 -E 4230.000000 60.000000 28.333054 175.529251 0.009825 0.032457 -E 4240.000000 60.000000 28.296436 175.568710 0.009809 0.032408 -E 4250.000000 60.000000 28.235840 175.664185 0.010160 0.033572 -E 4260.000000 60.000000 28.162455 175.715546 0.010574 0.034947 -E 4270.000000 60.000000 28.088741 175.594986 0.010549 0.034873 -E 4280.000000 60.000000 28.031204 175.616592 0.010251 0.033893 -E 4290.000000 60.000000 28.008190 175.663742 0.010336 0.034176 -E 4300.000000 60.000000 27.946365 175.650665 0.010411 0.034431 -E 4310.000000 60.000000 27.897816 175.723389 0.010334 0.034184 -E 4320.000000 60.000000 27.851152 175.799011 0.010494 0.034717 -E 4330.000000 60.000000 27.802034 175.824066 0.010666 0.035292 -E 4340.000000 60.000000 27.741825 175.777390 0.010440 0.034554 -E 4350.000000 60.000000 27.707724 175.843536 0.010328 0.034188 -E 4360.000000 60.000000 27.655363 175.889053 0.010482 0.034704 -E 4370.000000 60.000000 27.593792 175.831848 0.010510 0.034807 -E 4380.000000 60.000000 27.568989 175.843643 0.010441 0.034580 -E 4390.000000 60.000000 27.497252 175.890350 0.010379 0.034386 -E 4400.000000 60.000000 27.432423 175.863876 0.010357 0.034324 -E 4410.000000 60.000000 27.402828 175.894363 0.010187 0.033763 -E 4420.000000 60.000000 27.351501 175.900925 0.009855 0.032673 -E 4430.000000 60.000000 27.305904 175.990524 0.009818 0.032557 -E 4440.000000 60.000000 27.257071 176.074188 0.009920 0.032903 -E 4450.000000 60.000000 27.211569 176.044205 0.009872 0.032751 -E 4460.000000 60.000000 27.175421 176.038147 0.009804 0.032530 -E 4470.000000 60.000000 27.145021 176.047882 0.009859 0.032719 -E 4480.000000 60.000000 27.107508 176.052765 0.009926 0.032946 -E 4490.000000 60.000000 27.057575 176.026657 0.009928 0.032963 -E 4500.000000 60.000000 27.015406 176.047501 0.009876 0.032798 -E 4510.000000 60.000000 26.976776 176.107620 0.009879 0.032815 -E 4520.000000 60.000000 26.933971 176.161606 0.009921 0.032963 -E 4530.000000 60.000000 26.873550 176.117493 0.009921 0.032973 -E 4540.000000 60.000000 26.841284 176.114029 0.009880 0.032841 -E 4550.000000 60.000000 26.810656 176.184128 0.009838 0.032711 -E 4560.000000 60.000000 26.763489 176.192047 0.009762 0.032466 -E 4570.000000 60.000000 26.728596 176.215195 0.009627 0.032023 -E 4580.000000 60.000000 26.702223 176.252228 0.009410 0.031307 -E 4590.000000 60.000000 26.676874 176.214218 0.009252 0.030785 -E 4600.000000 60.000000 26.646814 176.273590 0.009392 0.031259 -E 4610.000000 60.000000 26.619883 176.292831 0.009633 0.032067 -E 4620.000000 60.000000 26.555542 176.210007 0.009731 0.032405 -E 4630.000000 60.000000 26.506369 176.289368 0.009515 0.031697 -E 4640.000000 60.000000 26.474350 176.337646 0.009170 0.030553 -E 4650.000000 60.000000 26.455833 176.291962 0.009048 0.030151 -E 4660.000000 60.000000 26.408234 176.303009 0.009164 0.030547 -E 4670.000000 60.000000 26.380226 176.350204 0.009351 0.031178 -E 4680.000000 60.000000 26.374599 176.368271 0.009425 0.031427 -E 4690.000000 60.000000 26.341553 176.367615 0.009469 0.031581 -E 4700.000000 60.000000 26.293945 176.340240 0.009668 0.032254 -E 4710.000000 60.000000 26.244570 176.373627 0.009821 0.032778 -E 4720.000000 60.000000 26.194862 176.417282 0.009715 0.032437 -E 4730.000000 60.000000 26.190964 176.419846 0.009506 0.031740 -E 4740.000000 60.000000 26.149305 176.446381 0.009446 0.031549 -E 4750.000000 60.000000 26.101995 176.481750 0.009499 0.031738 -E 4760.000000 60.000000 26.088388 176.409637 0.009465 0.031627 -E 4770.000000 60.000000 26.063517 176.455139 0.009384 0.031362 -E 4780.000000 60.000000 26.032337 176.478882 0.009307 0.031114 -E 4790.000000 60.000000 25.999237 176.472275 0.009231 0.030867 -E 4800.000000 60.000000 25.980856 176.504532 0.009210 0.030804 -E 4810.000000 60.000000 25.926596 176.540421 0.009206 0.030802 -E 4820.000000 60.000000 25.901669 176.609268 0.009212 0.030828 -E 4830.000000 60.000000 25.859745 176.582977 0.009187 0.030754 -E 4840.000000 60.000000 25.850281 176.518616 0.009070 0.030366 -E 4850.000000 60.000000 25.826576 176.556473 0.008655 0.028982 -E 4860.000000 60.000000 25.761721 176.573395 0.007631 0.025568 -E 4870.000000 60.000000 25.742886 176.587372 0.007259 0.024324 -E 4880.000000 60.000000 25.733778 176.599365 0.008340 0.027951 -E 4890.000000 60.000000 25.700447 176.624100 0.008891 0.029806 -E 4900.000000 60.000000 25.680149 176.685089 0.008881 0.029778 -E 4910.000000 60.000000 25.651131 176.645981 0.008804 0.029529 -E 4920.000000 60.000000 25.613861 176.612991 0.008834 0.029638 -E 4930.000000 60.000000 25.595921 176.644302 0.008809 0.029558 -E 4940.000000 60.000000 25.572414 176.637589 0.008755 0.029384 -E 4950.000000 60.000000 25.557734 176.668549 0.008845 0.029692 -E 4960.000000 60.000000 25.532616 176.692612 0.008896 0.029869 -E 4970.000000 60.000000 25.488306 176.730316 0.008841 0.029696 -E 4980.000000 60.000000 25.456898 176.730347 0.008758 0.029427 -E 4990.000000 60.000000 25.453512 176.702972 0.008636 0.029017 -E 5000.000000 60.000000 25.423134 176.683350 0.008602 0.028912 -E 5010.000000 60.000000 25.365210 176.707062 0.008608 0.028947 -E 5020.000000 60.000000 25.354765 176.725418 0.008549 0.028754 -E 5030.000000 60.000000 25.368973 176.784119 0.008534 0.028701 -E 5040.000000 60.000000 25.323324 176.793213 0.008570 0.028834 -E 5050.000000 60.000000 25.298212 176.812592 0.008589 0.028903 -E 5060.000000 60.000000 25.266930 176.803223 0.008558 0.028809 -E 5070.000000 60.000000 25.232239 176.860031 0.008547 0.028783 -E 5080.000000 60.000000 25.216959 176.864853 0.008563 0.028842 -E 5090.000000 60.000000 25.189411 176.860596 0.008563 0.028849 -E 5100.000000 60.000000 25.165642 176.862946 0.008565 0.028863 -E 5110.000000 60.000000 25.160057 176.817871 0.008527 0.028738 -E 5120.000000 60.000000 25.131575 176.894211 0.008476 0.028573 -E 5130.000000 60.000000 25.111036 176.897339 0.008472 0.028566 -E 5140.000000 60.000000 25.094059 176.843063 0.008463 0.028542 -E 5150.000000 60.000000 25.063961 176.853561 0.008449 0.028504 -E 5160.000000 60.000000 25.046520 176.905777 0.008422 0.028418 -E 5170.000000 60.000000 25.035845 176.910019 0.008404 0.028363 -E 5180.000000 60.000000 24.996275 176.992508 0.008391 0.028328 -E 5190.000000 60.000000 24.961550 176.952682 0.008372 0.028275 -E 5200.000000 60.000000 24.953186 176.885071 0.008322 0.028110 -E 5210.000000 60.000000 24.939386 176.926926 0.008290 0.028006 -E 5220.000000 60.000000 24.928879 176.874023 0.008283 0.027986 -E 5230.000000 60.000000 24.896118 176.927261 0.008267 0.027941 -E 5240.000000 60.000000 24.874800 176.985977 0.008245 0.027873 -E 5250.000000 60.000000 24.852068 176.943390 0.008216 0.027785 -E 5260.000000 60.000000 24.844517 176.914932 0.008159 0.027593 -E 5270.000000 60.000000 24.826757 176.960922 0.008088 0.027360 -E 5280.000000 60.000000 24.795128 177.054306 0.008075 0.027326 -E 5290.000000 60.000000 24.771000 177.019272 0.008070 0.027318 -E 5300.000000 60.000000 24.737732 176.930389 0.008051 0.027263 -E 5310.000000 60.000000 24.724621 176.955475 0.008047 0.027252 -E 5320.000000 60.000000 24.731998 177.016464 0.008030 0.027194 -E 5330.000000 60.000000 24.708378 177.050461 0.007980 0.027034 -E 5340.000000 60.000000 24.689678 177.071442 0.007913 0.026812 -E 5350.000000 60.000000 24.665508 177.000092 0.007893 0.026751 -E 5360.000000 60.000000 24.649559 177.027817 0.007880 0.026711 -E 5370.000000 60.000000 24.615076 177.047516 0.007872 0.026695 -E 5380.000000 60.000000 24.601282 177.033585 0.007846 0.026614 -E 5390.000000 60.000000 24.594397 177.045776 0.007786 0.026413 -E 5400.000000 60.000000 24.570305 177.004883 0.007755 0.026314 -E 5410.000000 60.000000 24.541460 177.028702 0.007736 0.026259 -E 5420.000000 60.000000 24.516876 177.072250 0.007690 0.026110 -E 5430.000000 60.000000 24.504061 177.122177 0.007630 0.025913 -E 5440.000000 60.000000 24.487879 177.134186 0.007606 0.025837 -E 5450.000000 60.000000 24.479403 177.131561 0.007585 0.025767 -E 5460.000000 60.000000 24.461014 177.110443 0.007584 0.025772 -E 5470.000000 60.000000 24.449705 177.068253 0.007573 0.025736 -E 5480.000000 60.000000 24.431948 177.112625 0.007517 0.025551 -E 5490.000000 60.000000 24.420425 177.143066 0.007468 0.025388 -E 5500.000000 60.000000 24.403137 177.103607 0.007463 0.025378 -E 5510.000000 60.000000 24.365171 177.193512 0.007472 0.025420 -E 5520.000000 60.000000 24.361694 177.201309 0.007460 0.025382 -E 5530.000000 60.000000 24.354019 177.167175 0.007435 0.025302 -E 5540.000000 60.000000 24.331297 177.156281 0.007407 0.025213 -E 5550.000000 60.000000 24.310076 177.201019 0.007398 0.025189 -E 5560.000000 60.000000 24.286383 177.210907 0.007388 0.025164 -E 5570.000000 60.000000 24.273184 177.197266 0.007366 0.025092 -E 5580.000000 60.000000 24.253580 177.187195 0.007354 0.025058 -E 5590.000000 60.000000 24.235178 177.174820 0.007350 0.025051 -E 5600.000000 60.000000 24.244492 177.148453 0.007324 0.024961 -E 5610.000000 60.000000 24.223829 177.142838 0.007289 0.024848 -E 5620.000000 60.000000 24.192204 177.207062 0.007280 0.024828 -E 5630.000000 60.000000 24.192789 177.227020 0.007267 0.024782 -E 5640.000000 60.000000 24.158987 177.222855 0.007248 0.024730 -E 5650.000000 60.000000 24.145668 177.216568 0.007217 0.024628 -E 5660.000000 60.000000 24.147760 177.233765 0.007186 0.024520 -E 5670.000000 60.000000 24.122673 177.266022 0.007116 0.024290 -E 5680.000000 60.000000 24.098763 177.278015 0.006994 0.023883 -E 5690.000000 60.000000 24.084457 177.294998 0.006850 0.023395 -E 5700.000000 60.000000 24.068411 177.254730 0.006654 0.022730 -E 5710.000000 60.000000 24.056971 177.265717 0.006558 0.022406 -E 5720.000000 60.000000 24.049376 177.298965 0.006507 0.022235 -E 5730.000000 60.000000 24.038124 177.283401 0.006445 0.022028 -E 5740.000000 60.000000 24.033388 177.242554 0.006328 0.021630 -E 5750.000000 60.000000 24.016935 177.300812 0.006268 0.021428 -E 5760.000000 60.000000 24.013447 177.288345 0.006223 0.021277 -E 5770.000000 60.000000 23.986019 177.326172 0.006109 0.020895 -E 5780.000000 60.000000 23.954649 177.318146 0.006026 0.020619 -E 5790.000000 60.000000 23.937992 177.303497 0.006018 0.020599 -E 5800.000000 60.000000 23.927343 177.320862 0.005980 0.020470 -E 5810.000000 60.000000 23.910194 177.315750 0.005832 0.019970 -E 5820.000000 60.000000 23.902180 177.302551 0.005683 0.019460 -E 5830.000000 60.000000 23.898197 177.344376 0.005822 0.019938 -E 5840.000000 60.000000 23.890984 177.337479 0.006094 0.020874 -E 5850.000000 60.000000 23.867531 177.351898 0.006053 0.020741 -E 5860.000000 60.000000 23.862738 177.337570 0.006086 0.020854 -E 5870.000000 60.000000 23.841705 177.314804 0.006152 0.021085 -E 5880.000000 60.000000 23.818718 177.382614 0.006095 0.020899 -E 5890.000000 60.000000 23.815479 177.379471 0.006076 0.020835 -E 5900.000000 60.000000 23.781294 177.420197 0.006285 0.021562 -E 5910.000000 60.000000 23.773394 177.407562 0.006415 0.022011 -E 5920.000000 60.000000 23.788116 177.377213 0.006414 0.022003 -E 5930.000000 60.000000 23.763622 177.433228 0.006316 0.021674 -E 5940.000000 60.000000 23.749893 177.401764 0.006223 0.021361 -E 5950.000000 60.000000 23.744230 177.403946 0.006146 0.021097 -E 5960.000000 60.000000 23.732576 177.396774 0.006163 0.021161 -E 5970.000000 60.000000 23.711048 177.412292 0.006269 0.021531 -E 5980.000000 60.000000 23.695925 177.415863 0.006323 0.021722 -E 5990.000000 60.000000 23.695963 177.418259 0.006326 0.021733 -E 6000.000000 60.000000 23.678715 177.423752 0.006336 0.021772 -E 6010.000000 60.000000 23.655920 177.462936 0.006296 0.021642 -E 6020.000000 60.000000 23.660049 177.462341 0.006220 0.021380 -E 6030.000000 60.000000 23.650368 177.466461 0.006133 0.021085 -E 6040.000000 60.000000 23.633137 177.446121 0.006110 0.021012 -E 6050.000000 60.000000 23.623165 177.473923 0.006236 0.021448 -E 6060.000000 60.000000 23.595778 177.475403 0.006279 0.021605 -E 6070.000000 60.000000 23.590128 177.470291 0.006287 0.021632 -E 6080.000000 60.000000 23.586021 177.474121 0.006307 0.021703 -E 6090.000000 60.000000 23.579075 177.509659 0.006331 0.021791 -E 6100.000000 60.000000 23.561781 177.493469 0.006314 0.021738 -E 6110.000000 60.000000 23.542959 177.461365 0.006281 0.021629 -E 6120.000000 60.000000 23.533670 177.503754 0.006267 0.021586 -E 6130.000000 60.000000 23.529503 177.524384 0.006257 0.021551 -E 6140.000000 60.000000 23.523209 177.484436 0.006238 0.021489 -E 6150.000000 60.000000 23.507402 177.506241 0.006278 0.021631 -E 6160.000000 60.000000 23.480627 177.505173 0.006341 0.021857 -E 6170.000000 60.000000 23.485172 177.505722 0.006371 0.021961 -E 6180.000000 60.000000 23.481394 177.540756 0.006383 0.022003 -E 6190.000000 60.000000 23.465061 177.529129 0.006407 0.022091 -E 6200.000000 60.000000 23.448406 177.549957 0.006381 0.022008 -E 6210.000000 60.000000 23.434111 177.552704 0.006390 0.022046 -E 6220.000000 60.000000 23.440290 177.529083 0.006414 0.022125 -E 6230.000000 60.000000 23.433304 177.560608 0.006381 0.022013 -E 6240.000000 60.000000 23.407011 177.528931 0.006366 0.021972 -E 6250.000000 60.000000 23.401293 177.560349 0.006420 0.022160 -E 6260.000000 60.000000 23.393383 177.533539 0.006463 0.022311 -E 6270.000000 60.000000 23.374384 177.520966 0.006470 0.022341 -E 6280.000000 60.000000 23.360737 177.588531 0.006466 0.022334 -E 6290.000000 60.000000 23.359924 177.578293 0.006467 0.022339 -E 6300.000000 60.000000 23.355879 177.538879 0.006470 0.022349 -E 6310.000000 60.000000 23.333220 177.552902 0.006510 0.022496 -E 6320.000000 60.000000 23.330441 177.615753 0.006522 0.022540 -E 6330.000000 60.000000 23.313251 177.597107 0.006502 0.022475 -E 6340.000000 60.000000 23.329514 177.591232 0.006505 0.022484 -E 6350.000000 60.000000 23.306328 177.618011 0.006510 0.022509 -E 6360.000000 60.000000 23.279446 177.609741 0.006493 0.022459 -E 6370.000000 60.000000 23.271742 177.645523 0.006482 0.022422 -E 6380.000000 60.000000 23.262863 177.620682 0.006491 0.022458 -E 6390.000000 60.000000 23.269136 177.634247 0.006489 0.022449 -E 6400.000000 60.000000 23.257414 177.624039 0.006488 0.022450 -E 6410.000000 60.000000 23.237925 177.624390 0.006503 0.022510 -E 6420.000000 60.000000 23.241005 177.613876 0.006523 0.022577 -E 6430.000000 60.000000 23.225437 177.601883 0.006519 0.022570 -E 6440.000000 60.000000 23.225410 177.612579 0.006520 0.022575 -E 6450.000000 60.000000 23.210098 177.665863 0.006532 0.022621 -E 6460.000000 60.000000 23.202560 177.675339 0.006529 0.022615 -E 6470.000000 60.000000 23.201223 177.619400 0.006527 0.022609 -E 6480.000000 60.000000 23.189463 177.664993 0.006520 0.022588 -E 6490.000000 60.000000 23.179300 177.682999 0.006513 0.022568 -E 6500.000000 60.000000 23.169668 177.619186 0.006510 0.022561 -E 6510.000000 60.000000 23.166235 177.629623 0.006513 0.022574 -E 6520.000000 60.000000 23.147350 177.651215 0.006510 0.022569 -E 6530.000000 60.000000 23.121916 177.668320 0.006520 0.022613 -E 6540.000000 60.000000 23.098846 177.651459 0.006584 0.022844 -E 6550.000000 60.000000 23.116974 177.658005 0.005835 0.020242 -E 6560.000000 60.000000 23.119995 177.680695 0.004091 0.014192 -E 6570.000000 60.000000 23.105341 177.692612 0.003950 0.013706 -E 6580.000000 60.000000 23.100025 177.717133 0.005396 0.018724 -E 6590.000000 60.000000 23.098967 177.730362 0.006463 0.022426 -E 6600.000000 60.000000 23.086119 177.661743 0.006505 0.022578 -E 6610.000000 60.000000 23.064373 177.687378 0.006514 0.022616 -E 6620.000000 60.000000 23.049652 177.703949 0.006501 0.022578 -E 6630.000000 60.000000 23.052704 177.703857 0.006491 0.022543 -E 6640.000000 60.000000 23.047125 177.746490 0.006495 0.022558 -E 6650.000000 60.000000 23.044401 177.782654 0.006496 0.022565 -E 6660.000000 60.000000 23.042824 177.752090 0.006495 0.022561 -E 6670.000000 60.000000 23.038898 177.714905 0.006493 0.022557 -E 6680.000000 60.000000 23.020607 177.714157 0.006491 0.022556 -E 6690.000000 60.000000 23.009989 177.782150 0.006477 0.022512 -E 6700.000000 60.000000 22.996492 177.802322 0.006462 0.022464 -E 6710.000000 60.000000 22.981531 177.754059 0.006466 0.022486 -E 6720.000000 60.000000 22.974287 177.727036 0.006459 0.022465 -E 6730.000000 60.000000 22.975689 177.698898 0.006455 0.022448 -E 6740.000000 60.000000 22.975653 177.730789 0.006463 0.022480 -E 6750.000000 60.000000 22.945745 177.771194 0.006478 0.022541 -E 6760.000000 60.000000 22.942505 177.813614 0.006479 0.022545 -E 6770.000000 60.000000 22.940771 177.823914 0.006469 0.022513 -E 6780.000000 60.000000 22.932777 177.777344 0.006457 0.022475 -E 6790.000000 60.000000 22.922951 177.777313 0.006443 0.022431 -E 6800.000000 60.000000 22.912207 177.836395 0.006440 0.022424 -E 6810.000000 60.000000 22.919270 177.780273 0.006433 0.022399 -E 6820.000000 60.000000 22.912466 177.785614 0.006436 0.022410 -E 6830.000000 60.000000 22.887220 177.809402 0.006440 0.022433 -E 6840.000000 60.000000 22.896828 177.766602 0.006427 0.022385 -E 6850.000000 60.000000 22.887571 177.769440 0.006401 0.022298 -E 6860.000000 60.000000 22.882530 177.823517 0.006400 0.022298 -E 6870.000000 60.000000 22.857487 177.828461 0.006424 0.022392 -E 6880.000000 60.000000 22.846786 177.768524 0.006435 0.022435 -E 6890.000000 60.000000 22.846447 177.848480 0.006435 0.022434 -E 6900.000000 60.000000 22.849731 177.828506 0.006440 0.022450 -E 6910.000000 60.000000 22.833378 177.841690 0.006443 0.022467 -E 6920.000000 60.000000 22.817631 177.864685 0.006436 0.022451 -E 6930.000000 60.000000 22.815670 177.844238 0.006432 0.022437 -E 6940.000000 60.000000 22.813316 177.863388 0.006426 0.022416 -E 6950.000000 60.000000 22.802128 177.889282 0.006436 0.022456 -E 6960.000000 60.000000 22.791403 177.863434 0.006438 0.022469 -E 6970.000000 60.000000 22.779713 177.856445 0.006430 0.022447 -E 6980.000000 60.000000 22.772717 177.849625 0.006423 0.022425 -E 6990.000000 60.000000 22.765287 177.901627 0.006429 0.022448 -E 7000.000000 60.000000 22.758118 177.877548 0.006439 0.022484 -E 7010.000000 60.000000 22.753958 177.852234 0.006451 0.022530 -E 7020.000000 60.000000 22.731899 177.906143 0.006458 0.022563 -E 7030.000000 60.000000 22.724483 177.909561 0.006456 0.022559 -E 7040.000000 60.000000 22.714182 177.916306 0.006469 0.022607 -E 7050.000000 60.000000 22.721264 177.877258 0.006477 0.022633 -E 7060.000000 60.000000 22.718897 177.883606 0.006479 0.022643 -E 7070.000000 60.000000 22.699594 177.908157 0.006459 0.022582 -E 7080.000000 60.000000 22.709183 177.936523 0.006459 0.022576 -E 7090.000000 60.000000 22.716799 177.877060 0.006473 0.022623 -E 7100.000000 60.000000 22.692532 177.900482 0.006493 0.022703 -E 7110.000000 60.000000 22.692587 177.915924 0.006495 0.022710 -E 7120.000000 60.000000 22.696188 177.875168 0.006493 0.022705 -E 7130.000000 60.000000 22.681896 177.881073 0.006496 0.022721 -E 7140.000000 60.000000 22.651535 177.912521 0.006498 0.022740 -E 7150.000000 60.000000 22.640230 177.916962 0.006495 0.022732 -E 7160.000000 60.000000 22.659286 177.921967 0.006494 0.022724 -E 7170.000000 60.000000 22.660364 177.924316 0.006513 0.022790 -E 7180.000000 60.000000 22.633854 177.913361 0.006518 0.022818 -E 7190.000000 60.000000 22.631826 177.938492 0.006521 0.022828 -E 7200.000000 60.000000 22.631823 177.986740 0.006531 0.022865 -E 7210.000000 60.000000 22.625467 177.967117 0.006546 0.022921 -E 7220.000000 60.000000 22.627110 177.966080 0.006545 0.022918 -E 7230.000000 60.000000 22.618288 177.910858 0.006561 0.022976 -E 7240.000000 60.000000 22.601906 177.901291 0.006562 0.022988 -E 7250.000000 60.000000 22.600391 177.953644 0.006535 0.022893 -E 7260.000000 60.000000 22.581484 177.972794 0.006511 0.022815 -E 7270.000000 60.000000 22.575077 177.949448 0.006527 0.022873 -E 7280.000000 60.000000 22.580242 178.011246 0.006532 0.022892 -E 7290.000000 60.000000 22.563341 177.984741 0.006529 0.022888 -E 7300.000000 60.000000 22.566044 177.914383 0.006536 0.022910 -E 7310.000000 60.000000 22.581656 177.943008 0.006525 0.022868 -E 7320.000000 60.000000 22.561451 177.947510 0.006540 0.022929 -E 7330.000000 60.000000 22.541941 177.981613 0.006569 0.023037 -E 7340.000000 60.000000 22.545507 178.035965 0.006563 0.023014 -E 7350.000000 60.000000 22.535961 178.004929 0.006533 0.022914 -E 7360.000000 60.000000 22.541826 177.989120 0.006535 0.022920 -E 7370.000000 60.000000 22.533497 177.981964 0.006564 0.023027 -E 7380.000000 60.000000 22.520819 177.995850 0.006610 0.023193 -E 7390.000000 60.000000 22.527637 178.028534 0.006632 0.023268 -E 7400.000000 60.000000 22.515680 178.001816 0.006609 0.023194 -E 7410.000000 60.000000 22.516632 177.997742 0.006636 0.023288 -E 7420.000000 60.000000 22.511715 177.999191 0.006686 0.023466 -E 7430.000000 60.000000 22.507215 178.045364 0.006705 0.023532 -E 7440.000000 60.000000 22.487980 178.008713 0.006716 0.023579 -E 7450.000000 60.000000 22.483122 178.000549 0.006723 0.023609 -E 7460.000000 60.000000 22.493332 178.073715 0.006726 0.023613 -E 7470.000000 60.000000 22.483286 178.078110 0.006704 0.023543 -E 7480.000000 60.000000 22.485950 178.047211 0.006697 0.023517 -E 7490.000000 60.000000 22.477856 178.052338 0.006728 0.023629 -E 7500.000000 60.000000 22.466574 178.051498 0.006734 0.023654 -E 7510.000000 60.000000 22.461020 178.020828 0.006733 0.023655 -E 7520.000000 60.000000 22.462582 178.019623 0.006778 0.023812 -E 7530.000000 60.000000 22.443031 178.028366 0.006803 0.023907 -E 7540.000000 60.000000 22.439404 178.030609 0.006769 0.023790 -E 7550.000000 60.000000 22.426659 178.040207 0.006785 0.023852 -E 7560.000000 60.000000 22.428064 178.074707 0.006797 0.023895 -E 7570.000000 60.000000 22.422287 178.121841 0.006789 0.023870 -E 7580.000000 60.000000 22.416653 178.047180 0.006781 0.023844 -E 7590.000000 60.000000 22.408722 178.029800 0.006783 0.023854 -E 7600.000000 60.000000 22.412252 178.090332 0.006833 0.024028 -E 7610.000000 60.000000 22.410294 178.086914 0.006884 0.024209 -E 7620.000000 60.000000 22.411253 178.091995 0.006922 0.024345 -E 7630.000000 60.000000 22.402851 178.127304 0.006908 0.024298 -E 7640.000000 60.000000 22.391657 178.085999 0.006901 0.024278 -E 7650.000000 60.000000 22.385721 178.105148 0.006925 0.024365 -E 7660.000000 60.000000 22.373652 178.140991 0.006973 0.024541 -E 7670.000000 60.000000 22.385744 178.091293 0.007028 0.024730 -E 7680.000000 60.000000 22.374456 178.105667 0.007021 0.024712 -E 7690.000000 60.000000 22.364637 178.114838 0.006950 0.024466 -E 7700.000000 60.000000 22.374977 178.101624 0.006921 0.024359 -E 7710.000000 60.000000 22.369757 178.115387 0.006974 0.024549 -E 7720.000000 60.000000 22.349991 178.110718 0.007059 0.024856 -E 7730.000000 60.000000 22.337234 178.085754 0.007114 0.025057 -E 7740.000000 60.000000 22.346249 178.084793 0.007127 0.025099 -E 7750.000000 60.000000 22.342316 178.113373 0.007159 0.025214 -E 7760.000000 60.000000 22.335806 178.131699 0.007199 0.025359 -E 7770.000000 60.000000 22.331234 178.136078 0.007225 0.025452 -E 7780.000000 60.000000 22.321560 178.119537 0.007220 0.025437 -E 7790.000000 60.000000 22.322964 178.150238 0.007177 0.025288 -E 7800.000000 60.000000 22.308825 178.104187 0.007168 0.025263 -E 7810.000000 60.000000 22.312635 178.089493 0.007224 0.025459 -E 7820.000000 60.000000 22.293715 178.109055 0.007265 0.025610 -E 7830.000000 60.000000 22.310770 178.138260 0.007267 0.025613 -E 7840.000000 60.000000 22.299282 178.154770 0.007308 0.025762 -E 7850.000000 60.000000 22.301161 178.102005 0.007364 0.025957 -E 7860.000000 60.000000 22.290081 178.135117 0.007400 0.026091 -E 7870.000000 60.000000 22.279110 178.113815 0.007401 0.026101 -E 7880.000000 60.000000 22.282907 178.106873 0.007383 0.026034 -E 7890.000000 60.000000 22.265749 178.147705 0.007404 0.026117 -E 7900.000000 60.000000 22.264475 178.150223 0.007443 0.026256 -E 7910.000000 60.000000 22.270357 178.169449 0.007452 0.026286 -E 7920.000000 60.000000 22.267759 178.202713 0.007470 0.026352 -E 7930.000000 60.000000 22.260138 178.160355 0.007482 0.026398 -E 7940.000000 60.000000 22.243673 178.193069 0.007472 0.026369 -E 7950.000000 60.000000 22.255781 178.180283 0.007472 0.026365 -E 7960.000000 60.000000 22.247274 178.143692 0.007518 0.026531 -E 7970.000000 60.000000 22.226290 178.139160 0.007566 0.026711 -E 7980.000000 60.000000 22.239092 178.148804 0.007589 0.026785 -E 7990.000000 60.000000 22.227200 178.153000 0.007609 0.026863 -E 8000.000000 60.000000 22.221407 178.129761 0.007605 0.026853 -E 8010.000000 60.000000 22.216787 178.183044 0.007598 0.026829 -E 8020.000000 60.000000 22.207472 178.178635 0.007655 0.027035 -E 8030.000000 60.000000 22.211636 178.155670 0.007699 0.027190 -E 8040.000000 60.000000 22.220121 178.169495 0.007694 0.027168 -E 8050.000000 60.000000 22.219318 178.151688 0.007681 0.027125 -E 8060.000000 60.000000 22.233061 178.195190 0.007703 0.027196 -E 8070.000000 60.000000 22.205975 178.232544 0.007780 0.027480 -E 8080.000000 60.000000 22.177593 178.199966 0.007821 0.027639 -E 8090.000000 60.000000 22.192579 178.205048 0.007765 0.027433 -E 8100.000000 60.000000 22.180664 178.242676 0.007783 0.027504 -E 8110.000000 60.000000 22.172976 178.229630 0.007829 0.027671 -E 8120.000000 60.000000 22.168791 178.255569 0.007880 0.027855 -E 8130.000000 60.000000 22.169146 178.217239 0.007875 0.027838 -E 8140.000000 60.000000 22.165722 178.222824 0.007832 0.027687 -E 8150.000000 60.000000 22.174417 178.193665 0.007853 0.027758 -E 8160.000000 60.000000 22.158499 178.167007 0.007921 0.028007 -E 8170.000000 60.000000 22.167601 178.189270 0.007954 0.028118 -E 8180.000000 60.000000 22.167137 178.231918 0.007934 0.028048 -E 8190.000000 60.000000 22.137419 178.193207 0.007935 0.028066 -E 8200.000000 60.000000 22.139910 178.195160 0.007969 0.028187 -E 8210.000000 60.000000 22.122141 178.233658 0.008009 0.028338 -E 8220.000000 60.000000 22.137650 178.283386 0.008028 0.028399 -E 8230.000000 60.000000 22.128965 178.225677 0.008008 0.028330 -E 8240.000000 60.000000 22.146130 178.209824 0.007995 0.028279 -E 8250.000000 60.000000 22.129721 178.253845 0.008058 0.028509 -E 8260.000000 60.000000 22.120701 178.261139 0.008110 0.028698 -E 8270.000000 60.000000 22.110596 178.243576 0.008090 0.028633 -E 8280.000000 60.000000 22.108934 178.226852 0.008057 0.028518 -E 8290.000000 60.000000 22.101248 178.203430 0.008068 0.028560 -E 8300.000000 60.000000 22.117302 178.255890 0.008141 0.028810 -E 8310.000000 60.000000 22.109293 178.255783 0.008195 0.029008 -E 8320.000000 60.000000 22.097250 178.233124 0.008176 0.028945 -E 8330.000000 60.000000 22.085115 178.262283 0.008132 0.028798 -E 8340.000000 60.000000 22.081276 178.318878 0.008119 0.028752 -E 8350.000000 60.000000 22.082947 178.253342 0.008159 0.028895 -E 8360.000000 60.000000 22.079185 178.259857 0.008228 0.029142 -E 8370.000000 60.000000 22.070007 178.248550 0.008212 0.029088 -E 8380.000000 60.000000 22.059643 178.276672 0.008196 0.029038 -E 8390.000000 60.000000 22.064960 178.303162 0.008217 0.029111 -E 8400.000000 60.000000 22.075584 178.257080 0.008285 0.029348 -E 8410.000000 60.000000 22.058067 178.320221 0.008325 0.029499 -E 8420.000000 60.000000 22.055265 178.337006 0.008308 0.029438 -E 8430.000000 60.000000 22.047005 178.285797 0.008282 0.029351 -E 8440.000000 60.000000 22.058552 178.297897 0.008281 0.029344 -E 8450.000000 60.000000 22.060001 178.288757 0.008327 0.029506 -E 8460.000000 60.000000 22.059221 178.236862 0.008353 0.029598 -E 8470.000000 60.000000 22.059013 178.254166 0.008335 0.029536 -E 8480.000000 60.000000 22.046255 178.248657 0.008304 0.029433 -E 8490.000000 60.000000 22.041340 178.292999 0.008370 0.029670 -E 8500.000000 60.000000 22.034254 178.296921 0.008517 0.030196 -E 8510.000000 60.000000 22.034958 178.269608 0.008566 0.030369 -E 8520.000000 60.000000 22.029194 178.291779 0.008392 0.029754 -E 8530.000000 60.000000 22.005846 178.283936 0.008208 0.029114 -E 8540.000000 60.000000 22.005428 178.308716 0.008187 0.029040 -E 8550.000000 60.000000 22.026810 178.336319 0.008299 0.029426 -E 8560.000000 60.000000 22.012371 178.371979 0.008391 0.029763 -E 8570.000000 60.000000 22.006716 178.310272 0.008418 0.029861 -E 8580.000000 60.000000 21.983583 178.309738 0.008391 0.029779 -E 8590.000000 60.000000 22.001495 178.379669 0.008364 0.029673 -E 8600.000000 60.000000 21.996559 178.341400 0.008392 0.029775 -E 8610.000000 60.000000 21.981592 178.290634 0.008467 0.030049 -E 8620.000000 60.000000 21.994213 178.367874 0.008499 0.030158 -E 8630.000000 60.000000 21.990992 178.384766 0.008497 0.030153 -E 8640.000000 60.000000 21.996542 178.299515 0.008443 0.029958 -E 8650.000000 60.000000 21.979038 178.370605 0.008422 0.029893 -E 8660.000000 60.000000 21.973379 178.347839 0.008464 0.030046 -E 8670.000000 60.000000 21.964733 178.325546 0.008528 0.030279 -E 8680.000000 60.000000 21.958700 178.327301 0.008539 0.030322 -E 8690.000000 60.000000 21.956247 178.331818 0.008528 0.030284 -E 8700.000000 60.000000 21.966236 178.347031 0.008502 0.030185 -E 8710.000000 60.000000 21.972345 178.337418 0.008518 0.030238 -E 8720.000000 60.000000 21.983925 178.297623 0.008562 0.030392 -E 8730.000000 60.000000 21.968580 178.384735 0.008568 0.030420 -E 8740.000000 60.000000 21.948498 178.365723 0.008538 0.030324 -E 8750.000000 60.000000 21.949593 178.399323 0.008519 0.030258 -E 8760.000000 60.000000 21.942213 178.371964 0.008524 0.030279 -E 8770.000000 60.000000 21.949587 178.359360 0.008568 0.030433 -E 8780.000000 60.000000 21.944950 178.383377 0.008614 0.030599 -E 8790.000000 60.000000 21.942911 178.363388 0.008600 0.030550 -E 8800.000000 60.000000 21.951010 178.369354 0.008589 0.030508 -E 8810.000000 60.000000 21.947163 178.374283 0.008625 0.030638 -E 8820.000000 60.000000 21.939209 178.337433 0.008663 0.030776 -E 8830.000000 60.000000 21.937107 178.415131 0.008693 0.030884 -E 8840.000000 60.000000 21.919489 178.372940 0.008702 0.030929 -E 8850.000000 60.000000 21.920948 178.402130 0.008723 0.031000 -E 8860.000000 60.000000 21.900164 178.360748 0.008711 0.030970 -E 8870.000000 60.000000 21.900656 178.367233 0.008685 0.030878 -E 8880.000000 60.000000 21.900600 178.354385 0.008688 0.030891 -E 8890.000000 60.000000 21.892473 178.416412 0.008733 0.031054 -E 8900.000000 60.000000 21.899248 178.373550 0.008759 0.031143 -E 8910.000000 60.000000 21.901951 178.346756 0.008776 0.031204 -E 8920.000000 60.000000 21.885592 178.393448 0.008777 0.031217 -E 8930.000000 60.000000 21.875824 178.366333 0.008780 0.031232 -E 8940.000000 60.000000 21.894192 178.349716 0.008788 0.031251 -E 8950.000000 60.000000 21.882618 178.457840 0.008817 0.031361 -E 8960.000000 60.000000 21.885450 178.358368 0.008844 0.031455 -E 8970.000000 60.000000 21.888691 178.398315 0.008860 0.031512 -E 8980.000000 60.000000 21.860714 178.416428 0.008887 0.031625 -E 8990.000000 60.000000 21.848423 178.401764 0.008876 0.031592 -E 9000.000000 60.000000 21.851488 178.400177 0.008909 0.031708 -E 9010.000000 60.000000 21.865358 178.447693 0.008931 0.031778 -E 9020.000000 60.000000 21.848917 178.443222 0.008944 0.031835 -E 9030.000000 60.000000 21.859776 178.440460 0.008977 0.031948 -E 9040.000000 60.000000 21.871992 178.421265 0.008980 0.031952 -E 9050.000000 60.000000 21.856800 178.412506 0.008969 0.031920 -E 9060.000000 60.000000 21.827568 178.393066 0.009005 0.032067 -E 9070.000000 60.000000 21.836170 178.448639 0.009038 0.032180 -E 9080.000000 60.000000 21.839273 178.444199 0.009086 0.032350 -E 9090.000000 60.000000 21.835545 178.459427 0.009129 0.032505 -E 9100.000000 60.000000 21.854099 178.379639 0.009127 0.032485 -E 9110.000000 60.000000 21.828424 178.428101 0.009110 0.032439 -E 9120.000000 60.000000 21.817316 178.498428 0.009135 0.032538 -E 9130.000000 60.000000 21.812695 178.432693 0.009177 0.032690 -E 9140.000000 60.000000 21.849817 178.423492 0.009237 0.032882 -E 9150.000000 60.000000 21.846176 178.450516 0.009235 0.032877 -E 9160.000000 60.000000 21.845827 178.488297 0.009201 0.032756 -E 9170.000000 60.000000 21.816954 178.420578 0.009193 0.032745 -E 9180.000000 60.000000 21.800295 178.427536 0.009210 0.032817 -E 9190.000000 60.000000 21.824718 178.472015 0.009254 0.032958 -E 9200.000000 60.000000 21.795780 178.482681 0.009331 0.033250 -E 9210.000000 60.000000 21.806179 178.436310 0.009367 0.033373 -E 9220.000000 60.000000 21.815031 178.436234 0.009416 0.033543 -E 9230.000000 60.000000 21.814131 178.505341 0.009437 0.033620 -E 9240.000000 60.000000 21.814722 178.437851 0.009449 0.033663 -E 9250.000000 60.000000 21.796761 178.407089 0.009473 0.033759 -E 9260.000000 60.000000 21.802351 178.500381 0.009512 0.033895 -E 9270.000000 60.000000 21.802538 178.438553 0.009565 0.034084 -E 9280.000000 60.000000 21.791098 178.472015 0.009613 0.034263 -E 9290.000000 60.000000 21.788612 178.517960 0.009640 0.034361 -E 9300.000000 60.000000 21.788885 178.458649 0.009658 0.034425 -E 9310.000000 60.000000 21.775236 178.399750 0.009681 0.034516 -E 9320.000000 60.000000 21.785513 178.433090 0.009690 0.034541 -E 9330.000000 60.000000 21.776371 178.456390 0.009729 0.034686 -E 9340.000000 60.000000 21.774694 178.465744 0.009767 0.034822 -E 9350.000000 60.000000 21.753618 178.471664 0.009834 0.035075 -E 9360.000000 60.000000 21.761509 178.537064 0.009890 0.035273 -E 9370.000000 60.000000 21.777344 178.452057 0.009919 0.035363 -E 9380.000000 60.000000 21.765638 178.494293 0.009930 0.035410 -E 9390.000000 60.000000 21.749300 178.530975 0.009954 0.035507 -E 9400.000000 60.000000 21.756546 178.607651 0.010026 0.035761 -E 9410.000000 60.000000 21.772091 178.543015 0.010075 0.035927 -E 9420.000000 60.000000 21.726353 178.449493 0.010146 0.036208 -E 9430.000000 60.000000 21.748781 178.495346 0.010186 0.036340 -E 9440.000000 60.000000 21.755589 178.544983 0.010198 0.036377 -E 9450.000000 60.000000 21.755730 178.496674 0.010236 0.036512 -E 9460.000000 60.000000 21.734049 178.498550 0.010291 0.036723 -E 9470.000000 60.000000 21.718073 178.528732 0.010355 0.036965 -E 9480.000000 60.000000 21.746254 178.545120 0.010402 0.037112 -E 9490.000000 60.000000 21.733887 178.535629 0.010468 0.037355 -E 9500.000000 60.000000 21.730356 178.563721 0.010515 0.037528 -E 9510.000000 60.000000 21.740574 178.530548 0.010552 0.037651 -E 9520.000000 60.000000 21.754387 178.477295 0.010581 0.037747 -E 9530.000000 60.000000 21.712873 178.548370 0.010658 0.038050 -E 9540.000000 60.000000 21.716330 178.580536 0.010738 0.038336 -E 9550.000000 60.000000 21.697985 178.483093 0.010828 0.038670 -E 9560.000000 60.000000 21.713886 178.547333 0.010844 0.038713 -E 9570.000000 60.000000 21.700169 178.424988 0.010871 0.038822 -E 9580.000000 60.000000 21.703438 178.563400 0.010893 0.038900 -E 9590.000000 60.000000 21.715342 178.519913 0.010936 0.039045 -E 9600.000000 60.000000 21.696445 178.516678 0.010998 0.039280 -E 9610.000000 60.000000 21.692188 178.506989 0.011041 0.039437 -E 9620.000000 60.000000 21.706413 178.562256 0.011104 0.039651 -E 9630.000000 60.000000 21.670055 178.517212 0.011171 0.039918 -E 9640.000000 60.000000 21.695177 178.509094 0.011207 0.040030 -E 9650.000000 60.000000 21.694691 178.541336 0.011268 0.040245 -E 9660.000000 60.000000 21.680088 178.476364 0.011309 0.040405 -E 9670.000000 60.000000 21.690182 178.509735 0.011397 0.040712 -E 9680.000000 60.000000 21.669323 178.532700 0.011495 0.041080 -E 9690.000000 60.000000 21.687120 178.468475 0.011542 0.041232 -E 9700.000000 60.000000 21.703526 178.432632 0.011579 0.041354 -E 9710.000000 60.000000 21.679989 178.605270 0.011661 0.041663 -E 9720.000000 60.000000 21.652632 178.618408 0.011743 0.041980 -E 9730.000000 60.000000 21.666468 178.463943 0.011819 0.042240 -E 9740.000000 60.000000 21.686981 178.554581 0.011893 0.042490 -E 9750.000000 60.000000 21.650053 178.569183 0.011948 0.042716 -E 9760.000000 60.000000 21.638020 178.543671 0.012025 0.043001 -E 9770.000000 60.000000 21.655807 178.548386 0.012102 0.043262 -E 9780.000000 60.000000 21.689587 178.574188 0.012154 0.043420 -E 9790.000000 60.000000 21.681307 178.589767 0.012232 0.043707 -E 9800.000000 60.000000 21.647217 178.656036 0.012336 0.044108 -E 9810.000000 60.000000 21.642618 178.609039 0.012443 0.044495 -E 9820.000000 60.000000 21.665108 178.533264 0.012547 0.044848 -E 9830.000000 60.000000 21.651329 178.569427 0.012603 0.045058 -E 9840.000000 60.000000 21.646349 178.506210 0.012678 0.045331 -E 9850.000000 60.000000 21.635328 178.545120 0.012784 0.045720 -E 9860.000000 60.000000 21.631512 178.550064 0.012865 0.046014 -E 9870.000000 60.000000 21.619684 178.583710 0.012996 0.046493 -E 9880.000000 60.000000 21.633751 178.523621 0.013098 0.046846 -E 9890.000000 60.000000 21.607098 178.484573 0.013198 0.047229 -E 9900.000000 60.000000 21.641798 178.621078 0.013248 0.047375 -E 9910.000000 60.000000 21.607477 178.641418 0.013357 0.047799 -E 9920.000000 60.000000 21.637650 178.673798 0.013476 0.048196 -E 9930.000000 60.000000 21.638990 178.596039 0.013627 0.048737 -E 9940.000000 60.000000 21.616859 178.647293 0.013760 0.049232 -E 9950.000000 60.000000 21.594112 178.524567 0.013865 0.049631 -E 9960.000000 60.000000 21.589748 178.573761 0.014004 0.050132 -E 9970.000000 60.000000 21.638680 178.541855 0.014083 0.050368 -E 9980.000000 60.000000 21.613903 178.552582 0.014257 0.051016 -E 9990.000000 60.000000 21.600178 178.566803 0.014414 0.051592 -E 10000.000000 60.000000 21.617170 178.655869 0.014556 0.052083 -E 10025.000000 60.000000 21.613400 178.589783 0.007150 0.025594 -E 10050.000000 60.000000 21.601683 178.616150 0.006984 0.025005 -E 10075.000000 60.000000 21.600893 178.585358 0.006778 0.024269 -E 10100.000000 60.000000 21.597979 178.594193 0.006621 0.023706 -E 10125.000000 60.000000 21.594393 178.617310 0.006483 0.023216 -E 10150.000000 60.000000 21.593006 178.609543 0.006313 0.022608 -E 10175.000000 60.000000 21.588476 178.627548 0.006164 0.022075 -E 10200.000000 60.000000 21.580761 178.671432 0.006033 0.021609 -E 10225.000000 60.000000 21.572716 178.650696 0.005882 0.021071 -E 10250.000000 60.000000 21.563210 178.639053 0.005746 0.020588 -E 10275.000000 60.000000 21.549759 178.666565 0.005641 0.020216 -E 10300.000000 60.000000 21.546684 178.653809 0.005501 0.019719 -E 10325.000000 60.000000 21.547503 178.627777 0.005356 0.019196 -E 10350.000000 60.000000 21.543507 178.630356 0.005238 0.018777 -E 10375.000000 60.000000 21.543716 178.642929 0.005127 0.018377 -E 10400.000000 60.000000 21.547850 178.664688 0.005021 0.017997 -E 10425.000000 60.000000 21.534182 178.645050 0.004924 0.017654 -E 10450.000000 60.000000 21.523212 178.634598 0.004829 0.017316 -E 10475.000000 60.000000 21.521147 178.651443 0.004733 0.016972 -E 10500.000000 60.000000 21.517281 178.659439 0.004644 0.016656 -E 10525.000000 60.000000 21.513479 178.665466 0.004560 0.016357 -E 10550.000000 60.000000 21.513994 178.680710 0.004482 0.016076 -E 10575.000000 60.000000 21.511318 178.689835 0.004413 0.015827 -E 10600.000000 60.000000 21.506002 178.694000 0.004350 0.015605 -E 10625.000000 60.000000 21.505732 178.737381 0.004264 0.015295 -E 10650.000000 60.000000 21.501709 178.735519 0.004188 0.015025 -E 10675.000000 60.000000 21.490791 178.653778 0.004131 0.014822 -E 10700.000000 60.000000 21.483501 178.649109 0.004057 0.014560 -E 10725.000000 60.000000 21.479216 178.664749 0.003986 0.014306 -E 10750.000000 60.000000 21.482841 178.673325 0.003938 0.014134 -E 10775.000000 60.000000 21.478876 178.690079 0.003868 0.013884 -E 10800.000000 60.000000 21.470091 178.711472 0.003785 0.013589 -E 10825.000000 60.000000 21.462147 178.703979 0.003730 0.013391 -E 10850.000000 60.000000 21.457048 178.700943 0.003670 0.013178 -E 10875.000000 60.000000 21.455484 178.703583 0.003604 0.012943 -E 10900.000000 60.000000 21.449657 178.714798 0.003556 0.012770 -E 10925.000000 60.000000 21.445665 178.723343 0.003506 0.012593 -E 10950.000000 60.000000 21.448856 178.720398 0.003444 0.012368 -E 10975.000000 60.000000 21.443577 178.724289 0.003396 0.012198 -E 11000.000000 60.000000 21.435415 178.732910 0.003356 0.012056 -E 11025.000000 60.000000 21.436747 178.756958 0.003318 0.011917 -E 11050.000000 60.000000 21.431517 178.751984 0.003285 0.011801 -E 11075.000000 60.000000 21.420225 178.720230 0.003258 0.011706 -E 11100.000000 60.000000 21.422382 178.720306 0.003209 0.011530 -E 11125.000000 60.000000 21.423105 178.726532 0.003171 0.011393 -E 11150.000000 60.000000 21.419558 178.739792 0.003154 0.011331 -E 11175.000000 60.000000 21.412273 178.739136 0.003128 0.011242 -E 11200.000000 60.000000 21.405275 178.734924 0.003104 0.011154 -E 11225.000000 60.000000 21.403570 178.732635 0.003089 0.011102 -E 11250.000000 60.000000 21.400923 178.745026 0.003067 0.011025 -E 11275.000000 60.000000 21.397530 178.765076 0.003042 0.010936 -E 11300.000000 60.000000 21.389713 178.758133 0.003039 0.010926 -E 11325.000000 60.000000 21.383389 178.760880 0.003028 0.010886 -E 11350.000000 60.000000 21.378786 178.774673 0.003007 0.010812 -E 11375.000000 60.000000 21.381521 178.785431 0.002995 0.010770 -E 11400.000000 60.000000 21.382149 178.790024 0.002984 0.010729 -E 11425.000000 60.000000 21.376387 178.782333 0.002970 0.010678 -E 11450.000000 60.000000 21.368481 178.776291 0.002956 0.010629 -E 11475.000000 60.000000 21.361895 178.770996 0.002940 0.010574 -E 11500.000000 60.000000 21.365162 178.766525 0.002917 0.010491 -E 11525.000000 60.000000 21.360298 178.771576 0.002898 0.010422 -E 11550.000000 60.000000 21.350372 178.783051 0.002880 0.010362 -E 11575.000000 60.000000 21.349922 178.800262 0.002868 0.010317 -E 11600.000000 60.000000 21.348938 178.807129 0.002847 0.010241 -E 11625.000000 60.000000 21.347342 178.802032 0.002816 0.010130 -E 11650.000000 60.000000 21.338564 178.816284 0.002799 0.010071 -E 11675.000000 60.000000 21.330969 178.827591 0.002781 0.010009 -E 11700.000000 60.000000 21.327593 178.827942 0.002758 0.009925 -E 11725.000000 60.000000 21.328339 178.816956 0.002743 0.009869 -E 11750.000000 60.000000 21.329550 178.805115 0.002727 0.009813 -E 11775.000000 60.000000 21.327139 178.805252 0.002700 0.009715 -E 11800.000000 60.000000 21.323463 178.815277 0.002675 0.009627 -E 11825.000000 60.000000 21.318907 178.830612 0.002652 0.009546 -E 11850.000000 60.000000 21.311800 178.836609 0.002631 0.009468 -E 11875.000000 60.000000 21.309372 178.832397 0.002609 0.009393 -E 11900.000000 60.000000 21.311697 178.817841 0.002589 0.009319 -E 11925.000000 60.000000 21.311867 178.820206 0.002565 0.009233 -E 11950.000000 60.000000 21.308857 178.824188 0.002545 0.009159 -E 11975.000000 60.000000 21.300665 178.828705 0.002529 0.009105 -E 12000.000000 60.000000 21.294697 178.839752 0.002513 0.009046 -E 12025.000000 60.000000 21.290438 178.847687 0.002496 0.008986 -E 12050.000000 60.000000 21.289829 178.840942 0.002478 0.008922 -E 12075.000000 60.000000 21.286734 178.849518 0.002466 0.008880 -E 12100.000000 60.000000 21.282536 178.861389 0.002456 0.008844 -E 12125.000000 60.000000 21.278782 178.845490 0.002440 0.008787 -E 12150.000000 60.000000 21.278687 178.847595 0.002425 0.008732 -E 12175.000000 60.000000 21.281370 178.863510 0.002410 0.008678 -E 12200.000000 60.000000 21.273312 178.861145 0.002405 0.008662 -E 12225.000000 60.000000 21.268759 178.864105 0.002399 0.008639 -E 12250.000000 60.000000 21.268482 178.873627 0.002389 0.008605 -E 12275.000000 60.000000 21.269075 178.862457 0.002386 0.008594 -E 12300.000000 60.000000 21.266726 178.856293 0.002386 0.008594 -E 12325.000000 60.000000 21.258284 178.865219 0.002390 0.008609 -E 12350.000000 60.000000 21.251062 178.873978 0.002384 0.008588 -E 12375.000000 60.000000 21.245384 178.879883 0.002380 0.008576 -E 12400.000000 60.000000 21.243769 178.876144 0.002394 0.008626 -E 12425.000000 60.000000 21.243036 178.869293 0.002389 0.008607 -E 12450.000000 60.000000 21.242037 178.863983 0.002377 0.008564 -E 12475.000000 60.000000 21.235929 178.881073 0.002387 0.008600 -E 12500.000000 60.000000 21.236635 178.889847 0.002379 0.008571 -E 12525.000000 60.000000 21.242243 178.892349 0.002358 0.008495 -E 12550.000000 60.000000 21.234257 178.906555 0.002352 0.008474 -E 12575.000000 60.000000 21.230221 178.907639 0.002343 0.008442 -E 12600.000000 60.000000 21.230721 178.893890 0.002331 0.008398 -E 12625.000000 60.000000 21.228958 178.892807 0.002325 0.008377 -E 12650.000000 60.000000 21.226398 178.894714 0.002317 0.008347 -E 12675.000000 60.000000 21.222862 178.899734 0.002303 0.008297 -E 12700.000000 60.000000 21.216702 178.903320 0.002287 0.008243 -E 12725.000000 60.000000 21.212925 178.906952 0.002276 0.008202 -E 12750.000000 60.000000 21.216877 178.911530 0.002277 0.008204 -E 12775.000000 60.000000 21.212503 178.910324 0.002264 0.008159 -E 12800.000000 60.000000 21.205692 178.908264 0.002248 0.008102 -E 12825.000000 60.000000 21.201622 178.911819 0.002238 0.008067 -E 12850.000000 60.000000 21.202280 178.921432 0.002228 0.008029 -E 12875.000000 60.000000 21.205050 178.933487 0.002217 0.007989 -E 12900.000000 60.000000 21.202749 178.936935 0.002209 0.007961 -E 12925.000000 60.000000 21.199600 178.940079 0.002197 0.007919 -E 12950.000000 60.000000 21.195812 178.942856 0.002183 0.007868 -E 12975.000000 60.000000 21.194353 178.930557 0.002177 0.007847 -E 13000.000000 60.000000 21.189571 178.922089 0.002170 0.007821 -E 13025.000000 60.000000 21.181059 178.917908 0.002162 0.007792 -E 13050.000000 60.000000 21.183168 178.923843 0.002150 0.007751 -E 13075.000000 60.000000 21.184031 178.925369 0.002141 0.007717 -E 13100.000000 60.000000 21.181644 178.918762 0.002135 0.007697 -E 13125.000000 60.000000 21.179976 178.936020 0.002130 0.007677 -E 13150.000000 60.000000 21.177814 178.949844 0.002124 0.007655 -E 13175.000000 60.000000 21.174274 178.946884 0.002117 0.007630 -E 13200.000000 60.000000 21.174377 178.939606 0.002111 0.007609 -E 13225.000000 60.000000 21.173948 178.937500 0.002107 0.007596 -E 13250.000000 60.000000 21.168396 178.956070 0.002110 0.007607 -E 13275.000000 60.000000 21.165648 178.959122 0.002108 0.007601 -E 13300.000000 60.000000 21.163738 178.956879 0.002106 0.007592 -E 13325.000000 60.000000 21.160034 178.961426 0.002109 0.007604 -E 13350.000000 60.000000 21.158607 178.957581 0.002113 0.007616 -E 13375.000000 60.000000 21.158293 178.949631 0.002116 0.007628 -E 13400.000000 60.000000 21.156019 178.948990 0.002117 0.007631 -E 13425.000000 60.000000 21.153503 178.958710 0.002122 0.007648 -E 13450.000000 60.000000 21.150789 178.975998 0.002130 0.007678 -E 13475.000000 60.000000 21.148476 178.980377 0.002143 0.007724 -E 13500.000000 60.000000 21.147963 178.974136 0.002157 0.007775 -E 13525.000000 60.000000 21.149271 178.957108 0.002172 0.007830 -E 13550.000000 60.000000 21.145205 178.982895 0.002201 0.007935 -E 13575.000000 60.000000 21.141298 178.991150 0.002231 0.008044 -E 13600.000000 60.000000 21.137802 178.974838 0.002263 0.008160 -E 13625.000000 60.000000 21.138525 178.974426 0.002282 0.008227 -E 13650.000000 60.000000 21.137794 178.979416 0.002301 0.008296 -E 13675.000000 60.000000 21.134073 178.990768 0.002323 0.008375 -E 13700.000000 60.000000 21.131861 178.993134 0.002377 0.008570 -E 13725.000000 60.000000 21.130264 178.994690 0.002469 0.008902 -E 13750.000000 60.000000 21.129519 178.997803 0.002638 0.009509 -E 13775.000000 60.000000 21.129263 178.998016 0.002876 0.010367 -E 13800.000000 60.000000 21.128136 178.995911 0.003126 0.011270 -E 13825.000000 60.000000 21.123857 178.989746 0.003279 0.011820 -E 13850.000000 60.000000 21.118710 178.992096 0.003253 0.011728 -E 13875.000000 60.000000 21.116119 178.997345 0.003157 0.011383 -E 13900.000000 60.000000 21.121500 179.003357 0.003023 0.010898 -E 13925.000000 60.000000 21.120661 179.008316 0.002940 0.010597 -E 13950.000000 60.000000 21.116556 179.009415 0.002861 0.010313 -E 13975.000000 60.000000 21.108747 178.997192 0.002728 0.009837 -E 14000.000000 60.000000 21.101583 178.995193 0.002649 0.009550 -E 14025.000000 60.000000 21.096470 178.998642 0.002591 0.009342 -E 14050.000000 60.000000 21.100515 179.007095 0.002526 0.009107 -E 14075.000000 60.000000 21.102694 179.016617 0.002481 0.008945 -E 14100.000000 60.000000 21.103296 179.023041 0.002446 0.008817 -E 14125.000000 60.000000 21.099791 179.002487 0.002399 0.008649 -E 14150.000000 60.000000 21.097134 179.000122 0.002368 0.008538 -E 14175.000000 60.000000 21.095373 179.009720 0.002347 0.008461 -E 14200.000000 60.000000 21.097595 179.022873 0.002322 0.008372 -E 14225.000000 60.000000 21.096169 179.031937 0.002307 0.008316 -E 14250.000000 60.000000 21.092171 179.037064 0.002298 0.008285 -E 14275.000000 60.000000 21.090797 179.023880 0.002284 0.008232 -E 14300.000000 60.000000 21.085629 179.020325 0.002273 0.008196 -E 14325.000000 60.000000 21.077559 179.024902 0.002267 0.008175 -E 14350.000000 60.000000 21.082062 179.031815 0.002261 0.008150 -E 14375.000000 60.000000 21.080105 179.030136 0.002254 0.008125 -E 14400.000000 60.000000 21.072092 179.020416 0.002247 0.008100 -E 14425.000000 60.000000 21.075012 179.046646 0.002248 0.008105 -E 14450.000000 60.000000 21.075239 179.049545 0.002244 0.008090 -E 14475.000000 60.000000 21.072664 179.028168 0.002234 0.008053 -E 14500.000000 60.000000 21.072016 179.038773 0.002232 0.008044 -E 14525.000000 60.000000 21.069973 179.049438 0.002233 0.008050 -E 14550.000000 60.000000 21.066278 179.059525 0.002239 0.008070 -E 14575.000000 60.000000 21.065853 179.055984 0.002230 0.008038 -E 14600.000000 60.000000 21.063932 179.052399 0.002229 0.008036 -E 14625.000000 60.000000 21.060051 179.049362 0.002239 0.008072 -E 14650.000000 60.000000 21.062275 179.051712 0.002233 0.008047 -E 14675.000000 60.000000 21.061193 179.058289 0.002233 0.008050 -E 14700.000000 60.000000 21.055496 179.070007 0.002245 0.008094 -E 14725.000000 60.000000 21.058531 179.064331 0.002239 0.008069 -E 14750.000000 60.000000 21.056492 179.057724 0.002239 0.008069 -E 14775.000000 60.000000 21.046925 179.051376 0.002249 0.008107 -E 14800.000000 60.000000 21.049509 179.065994 0.002247 0.008101 -E 14825.000000 60.000000 21.047678 179.067917 0.002247 0.008099 -E 14850.000000 60.000000 21.038521 179.050278 0.002249 0.008107 -E 14875.000000 60.000000 21.045326 179.074051 0.002251 0.008115 -E 14900.000000 60.000000 21.047333 179.087021 0.002257 0.008135 -E 14925.000000 60.000000 21.040768 179.080109 0.002267 0.008172 -E 14950.000000 60.000000 21.042368 179.078369 0.002266 0.008166 -E 14975.000000 60.000000 21.040455 179.074432 0.002271 0.008185 -E 15000.000000 60.000000 21.032591 179.066681 0.002287 0.008243 -E 15025.000000 60.000000 21.037014 179.072037 0.002283 0.008226 -E 15050.000000 60.000000 21.036997 179.076767 0.002285 0.008234 -E 15075.000000 60.000000 21.029419 179.079086 0.002299 0.008286 -E 15100.000000 60.000000 21.029924 179.073227 0.002298 0.008280 -E 15125.000000 60.000000 21.029226 179.077362 0.002298 0.008282 -E 15150.000000 60.000000 21.026056 179.095871 0.002304 0.008302 -E 15175.000000 60.000000 21.028156 179.092880 0.002308 0.008316 -E 15200.000000 60.000000 21.026619 179.088623 0.002315 0.008341 -E 15225.000000 60.000000 21.019823 179.084793 0.002326 0.008381 -E 15250.000000 60.000000 21.023294 179.098175 0.002330 0.008394 -E 15275.000000 60.000000 21.021626 179.097488 0.002338 0.008422 -E 15300.000000 60.000000 21.012756 179.078003 0.002351 0.008472 -E 15325.000000 60.000000 21.019438 179.083557 0.002352 0.008476 -E 15350.000000 60.000000 21.020315 179.089401 0.002358 0.008496 -E 15375.000000 60.000000 21.013624 179.094238 0.002370 0.008538 -E 15400.000000 60.000000 21.013042 179.095718 0.002374 0.008553 -E 15425.000000 60.000000 21.010447 179.099075 0.002384 0.008590 -E 15450.000000 60.000000 21.005461 179.104568 0.002402 0.008653 -E 15475.000000 60.000000 21.011929 179.092667 0.002407 0.008670 -E 15500.000000 60.000000 21.010900 179.096878 0.002415 0.008701 -E 15525.000000 60.000000 21.002522 179.116974 0.002427 0.008744 -E 15550.000000 60.000000 21.004925 179.119293 0.002425 0.008736 -E 15575.000000 60.000000 21.004660 179.119247 0.002433 0.008765 -E 15600.000000 60.000000 21.002121 179.116959 0.002450 0.008824 -E 15625.000000 60.000000 21.002026 179.112701 0.002455 0.008844 -E 15650.000000 60.000000 20.998526 179.112137 0.002466 0.008883 -E 15675.000000 60.000000 20.992752 179.114731 0.002480 0.008934 -E 15700.000000 60.000000 20.993113 179.119263 0.002484 0.008948 -E 15725.000000 60.000000 20.994875 179.120514 0.002494 0.008981 -E 15750.000000 60.000000 20.996733 179.119339 0.002507 0.009028 -E 15775.000000 60.000000 20.990519 179.117081 0.002518 0.009070 -E 15800.000000 60.000000 20.987068 179.117050 0.002529 0.009108 -E 15825.000000 60.000000 20.986206 179.118683 0.002540 0.009149 -E 15850.000000 60.000000 20.990820 179.122284 0.002556 0.009205 -E 15875.000000 60.000000 20.990707 179.125916 0.002567 0.009244 -E 15900.000000 60.000000 20.988661 179.129303 0.002576 0.009277 -E 15925.000000 60.000000 20.989021 179.131561 0.002591 0.009329 -E 15950.000000 60.000000 20.984917 179.129135 0.002607 0.009389 -E 15975.000000 60.000000 20.980352 179.130554 0.002624 0.009451 -E 16000.000000 60.000000 20.981201 179.153000 0.002638 0.009499 -E 16025.000000 60.000000 20.976559 179.153442 0.002650 0.009541 -E 16050.000000 60.000000 20.972925 179.142303 0.002663 0.009589 -E 16075.000000 60.000000 20.977463 179.120285 0.002683 0.009660 -E 16100.000000 60.000000 20.974829 179.126328 0.002700 0.009721 -E 16125.000000 60.000000 20.972452 179.138870 0.002715 0.009776 -E 16150.000000 60.000000 20.974855 179.149185 0.002728 0.009820 -E 16175.000000 60.000000 20.972359 179.142212 0.002750 0.009901 -E 16200.000000 60.000000 20.972656 179.141159 0.002772 0.009979 -E 16225.000000 60.000000 20.979527 179.156387 0.002789 0.010040 -E 16250.000000 60.000000 20.969889 179.157104 0.002809 0.010111 -E 16275.000000 60.000000 20.966637 179.151566 0.002830 0.010189 -E 16300.000000 60.000000 20.975115 179.139648 0.002854 0.010273 -E 16325.000000 60.000000 20.971657 179.152267 0.002877 0.010356 -E 16350.000000 60.000000 20.967148 179.159409 0.002904 0.010454 -E 16375.000000 60.000000 20.962227 179.159027 0.002936 0.010568 -E 16400.000000 60.000000 20.963692 179.163391 0.002956 0.010641 -E 16425.000000 60.000000 20.966311 179.167160 0.002992 0.010770 -E 16450.000000 60.000000 20.969114 179.169769 0.003041 0.010943 -E 16475.000000 60.000000 20.960278 179.163971 0.003061 0.011019 -E 16500.000000 60.000000 20.961136 179.174667 0.003105 0.011177 -E 16525.000000 60.000000 20.966970 179.190933 0.003165 0.011390 -E 16550.000000 60.000000 20.962191 179.169907 0.003220 0.011588 -E 16575.000000 60.000000 20.963964 179.175369 0.003302 0.011883 -E 16600.000000 60.000000 20.967409 179.185303 0.003404 0.012247 -E 16625.000000 60.000000 20.963537 179.157074 0.003519 0.012664 -E 16650.000000 60.000000 20.962151 179.161880 0.003718 0.013379 -E 16675.000000 60.000000 20.962458 179.175949 0.003979 0.014317 -E 16700.000000 60.000000 20.964846 179.178604 0.004298 0.015465 -E 16725.000000 60.000000 20.964939 179.173889 0.004778 0.017188 -E 16750.000000 60.000000 20.962988 179.171631 0.005398 0.019418 -E 16775.000000 60.000000 20.957264 179.181000 0.006167 0.022187 -E 16800.000000 60.000000 20.964642 179.161362 0.007190 0.025862 -E 16825.000000 60.000000 20.973606 179.165298 0.008441 0.030356 -E 16850.000000 60.000000 20.979858 179.225937 0.009863 0.035462 -E 16875.000000 60.000000 20.948915 179.180405 0.011534 0.041499 -E 16900.000000 60.000000 20.925520 179.162109 0.013527 0.048692 -E 16925.000000 60.000000 20.918762 179.185135 0.015819 0.056947 -E 16950.000000 60.000000 20.942108 179.076096 0.018319 0.065913 -E 16975.000000 60.000000 20.913437 179.051849 0.021060 0.075819 -E 17000.000000 60.000000 20.852385 179.117813 0.024083 0.086815 -E 1930.000000 70.000000 37.364731 90.587944 0.008912 0.032643 -E 1940.000000 70.000000 37.327927 90.918312 0.008126 0.029728 -E 1950.000000 70.000000 37.274158 91.285599 0.007502 0.027404 -E 1960.000000 70.000000 37.253658 91.658600 0.007096 0.025897 -E 1970.000000 70.000000 37.232479 91.998413 0.006756 0.024630 -E 1980.000000 70.000000 37.205528 92.431091 0.006483 0.023612 -E 1990.000000 70.000000 37.172489 92.904839 0.006278 0.022844 -E 2000.000000 70.000000 37.116592 93.317833 0.006091 0.022137 -E 2010.000000 70.000000 37.061775 93.725319 0.005917 0.021482 -E 2020.000000 70.000000 37.016304 94.225700 0.005743 0.020832 -E 2030.000000 70.000000 36.963127 94.682739 0.005572 0.020195 -E 2040.000000 70.000000 36.901291 95.068840 0.005418 0.019619 -E 2050.000000 70.000000 36.835468 95.499962 0.005268 0.019061 -E 2060.000000 70.000000 36.772411 95.937241 0.005118 0.018501 -E 2070.000000 70.000000 36.703846 96.383453 0.004977 0.017973 -E 2080.000000 70.000000 36.652714 96.756294 0.004841 0.017465 -E 2090.000000 70.000000 36.615101 97.117836 0.004707 0.016968 -E 2100.000000 70.000000 36.548481 97.499702 0.004590 0.016527 -E 2110.000000 70.000000 36.480022 97.927620 0.004493 0.016152 -E 2120.000000 70.000000 36.433453 98.323624 0.004397 0.015788 -E 2130.000000 70.000000 36.375908 98.718651 0.004308 0.015447 -E 2140.000000 70.000000 36.325573 99.132324 0.004230 0.015145 -E 2150.000000 70.000000 36.285294 99.568016 0.004156 0.014864 -E 2160.000000 70.000000 36.236328 99.971344 0.004092 0.014612 -E 2170.000000 70.000000 36.181240 100.366402 0.004033 0.014385 -E 2180.000000 70.000000 36.141354 100.747581 0.003972 0.014148 -E 2190.000000 70.000000 36.106136 101.128822 0.003906 0.013897 -E 2200.000000 70.000000 36.048424 101.608353 0.003850 0.013679 -E 2210.000000 70.000000 36.004749 102.024353 0.003791 0.013453 -E 2220.000000 70.000000 35.962479 102.474487 0.003733 0.013232 -E 2230.000000 70.000000 35.914478 102.920311 0.003680 0.013029 -E 2240.000000 70.000000 35.847569 103.395088 0.003634 0.012849 -E 2250.000000 70.000000 35.773613 103.885582 0.003591 0.012681 -E 2260.000000 70.000000 35.692127 104.354294 0.003551 0.012520 -E 2270.000000 70.000000 35.582951 104.862045 0.003515 0.012375 -E 2280.000000 70.000000 35.453472 105.334129 0.003481 0.012231 -E 2290.000000 70.000000 35.318150 105.749680 0.003447 0.012088 -E 2300.000000 70.000000 35.161972 106.134514 0.003417 0.011961 -E 2310.000000 70.000000 34.984295 106.456078 0.003393 0.011850 -E 2320.000000 70.000000 34.818676 106.705620 0.003369 0.011742 -E 2330.000000 70.000000 34.670010 106.901962 0.003347 0.011642 -E 2340.000000 70.000000 34.535183 107.019730 0.003324 0.011545 -E 2350.000000 70.000000 34.432842 107.095596 0.003301 0.011448 -E 2360.000000 70.000000 34.351742 107.155983 0.003279 0.011361 -E 2370.000000 70.000000 34.315086 107.199654 0.003256 0.011270 -E 2380.000000 70.000000 34.310715 107.277481 0.003229 0.011174 -E 2390.000000 70.000000 34.329380 107.358536 0.003207 0.011096 -E 2400.000000 70.000000 34.363380 107.432564 0.003186 0.011026 -E 2410.000000 70.000000 34.416073 107.574608 0.003166 0.010957 -E 2420.000000 70.000000 34.479912 107.771950 0.003147 0.010894 -E 2430.000000 70.000000 34.547676 108.020248 0.003133 0.010849 -E 2440.000000 70.000000 34.624744 108.262756 0.003119 0.010805 -E 2450.000000 70.000000 34.706661 108.556740 0.003104 0.010756 -E 2460.000000 70.000000 34.781773 108.891022 0.003093 0.010723 -E 2470.000000 70.000000 34.863846 109.214561 0.003084 0.010697 -E 2480.000000 70.000000 34.951580 109.588409 0.003076 0.010673 -E 2490.000000 70.000000 35.034187 109.973900 0.003069 0.010651 -E 2500.000000 70.000000 35.111958 110.371918 0.003066 0.010645 -E 2510.000000 70.000000 35.189865 110.804939 0.003066 0.010648 -E 2520.000000 70.000000 35.267097 111.230530 0.003062 0.010636 -E 2530.000000 70.000000 35.337391 111.670860 0.003065 0.010649 -E 2540.000000 70.000000 35.407669 112.179893 0.003073 0.010679 -E 2550.000000 70.000000 35.477032 112.674950 0.003079 0.010703 -E 2560.000000 70.000000 35.542759 113.134995 0.003091 0.010746 -E 2570.000000 70.000000 35.612579 113.679634 0.003104 0.010793 -E 2580.000000 70.000000 35.679558 114.213135 0.003118 0.010844 -E 2590.000000 70.000000 35.733543 114.767754 0.003136 0.010907 -E 2600.000000 70.000000 35.795723 115.336754 0.003157 0.010978 -E 2610.000000 70.000000 35.860703 115.884056 0.003178 0.011052 -E 2620.000000 70.000000 35.924427 116.493622 0.003200 0.011131 -E 2630.000000 70.000000 35.980713 117.119637 0.003225 0.011218 -E 2640.000000 70.000000 36.030968 117.754684 0.003253 0.011315 -E 2650.000000 70.000000 36.085064 118.407745 0.003284 0.011422 -E 2660.000000 70.000000 36.136944 119.116081 0.003319 0.011542 -E 2670.000000 70.000000 36.175995 119.824684 0.003353 0.011661 -E 2680.000000 70.000000 36.209717 120.552177 0.003387 0.011777 -E 2690.000000 70.000000 36.227795 121.342392 0.003424 0.011902 -E 2700.000000 70.000000 36.230461 122.148163 0.003463 0.012031 -E 2710.000000 70.000000 36.216698 122.968735 0.003507 0.012177 -E 2720.000000 70.000000 36.192696 123.859016 0.003552 0.012325 -E 2730.000000 70.000000 36.138039 124.700455 0.003596 0.012468 -E 2740.000000 70.000000 36.053299 125.508942 0.003644 0.012620 -E 2750.000000 70.000000 35.955658 126.359566 0.003693 0.012773 -E 2760.000000 70.000000 35.853817 127.210060 0.003743 0.012932 -E 2770.000000 70.000000 35.726540 127.983955 0.003805 0.013124 -E 2780.000000 70.000000 35.591911 128.808090 0.003851 0.013265 -E 2790.000000 70.000000 35.442772 129.640686 0.003894 0.013393 -E 2800.000000 70.000000 35.286263 130.410721 0.003943 0.013539 -E 2810.000000 70.000000 35.132835 131.150909 0.003997 0.013700 -E 2820.000000 70.000000 34.968052 131.900406 0.004053 0.013870 -E 2830.000000 70.000000 34.800484 132.662094 0.004109 0.014040 -E 2840.000000 70.000000 34.623726 133.434204 0.004163 0.014201 -E 2850.000000 70.000000 34.451305 134.206909 0.004226 0.014393 -E 2860.000000 70.000000 34.246681 135.003693 0.004296 0.014604 -E 2870.000000 70.000000 34.017262 135.794312 0.004364 0.014805 -E 2880.000000 70.000000 33.755402 136.631180 0.004442 0.015037 -E 2890.000000 70.000000 33.454830 137.405609 0.004532 0.015310 -E 2900.000000 70.000000 33.126427 138.131073 0.004628 0.015597 -E 2910.000000 70.000000 32.764652 138.827225 0.004728 0.015896 -E 2920.000000 70.000000 32.389965 139.340088 0.004834 0.016216 -E 2930.000000 70.000000 32.031475 139.807861 0.004936 0.016524 -E 2940.000000 70.000000 31.677370 140.208817 0.005033 0.016817 -E 2950.000000 70.000000 31.327654 140.538818 0.005133 0.017123 -E 2960.000000 70.000000 31.004843 140.832809 0.005234 0.017439 -E 2970.000000 70.000000 30.681906 141.030594 0.005332 0.017743 -E 2980.000000 70.000000 30.378723 141.186264 0.005431 0.018055 -E 2990.000000 70.000000 30.088404 141.302261 0.005535 0.018389 -E 3000.000000 70.000000 29.856674 141.441391 0.005628 0.018685 -E 3010.000000 70.000000 29.617622 141.536407 0.005714 0.018964 -E 3020.000000 70.000000 29.364843 141.586838 0.005817 0.019298 -E 3030.000000 70.000000 29.152470 141.661591 0.005924 0.019648 -E 3040.000000 70.000000 28.961008 141.737808 0.006021 0.019970 -E 3050.000000 70.000000 28.772602 141.795090 0.006124 0.020311 -E 3060.000000 70.000000 28.593479 141.829575 0.006228 0.020656 -E 3070.000000 70.000000 28.435537 141.907288 0.006325 0.020976 -E 3080.000000 70.000000 28.290312 141.942276 0.006422 0.021300 -E 3090.000000 70.000000 28.149612 141.977341 0.006525 0.021645 -E 3100.000000 70.000000 28.004360 142.055634 0.006621 0.021969 -E 3110.000000 70.000000 27.875938 142.112366 0.006713 0.022278 -E 3120.000000 70.000000 27.759203 142.160355 0.006816 0.022624 -E 3130.000000 70.000000 27.643923 142.266327 0.006900 0.022910 -E 3140.000000 70.000000 27.545515 142.326447 0.006986 0.023200 -E 3150.000000 70.000000 27.444738 142.361801 0.007083 0.023527 -E 3160.000000 70.000000 27.346674 142.391205 0.007176 0.023843 -E 3170.000000 70.000000 27.276217 142.512802 0.007263 0.024135 -E 3180.000000 70.000000 27.188883 142.639313 0.007348 0.024424 -E 3190.000000 70.000000 27.098475 142.707230 0.007449 0.024767 -E 3200.000000 70.000000 27.024204 142.801193 0.007534 0.025057 -E 3210.000000 70.000000 26.950668 142.849411 0.007632 0.025390 -E 3220.000000 70.000000 26.867342 142.914093 0.007743 0.025766 -E 3230.000000 70.000000 26.799820 143.009979 0.007826 0.026052 -E 3240.000000 70.000000 26.749958 143.158997 0.007905 0.026320 -E 3250.000000 70.000000 26.691898 143.326004 0.008008 0.026666 -E 3260.000000 70.000000 26.624580 143.414383 0.008168 0.027208 -E 3270.000000 70.000000 26.588827 143.505005 0.008348 0.027813 -E 3280.000000 70.000000 26.547674 143.647690 0.008523 0.028400 -E 3290.000000 70.000000 26.488834 143.852615 0.008660 0.028865 -E 3300.000000 70.000000 26.436474 143.953354 0.008786 0.029293 -E 3310.000000 70.000000 26.397264 144.055893 0.008925 0.029760 -E 3320.000000 70.000000 26.342291 144.276688 0.009032 0.030127 -E 3330.000000 70.000000 26.317158 144.368408 0.009107 0.030380 -E 3340.000000 70.000000 26.306942 144.455856 0.009170 0.030591 -E 3350.000000 70.000000 26.267775 144.613312 0.009236 0.030816 -E 3360.000000 70.000000 26.204828 144.812012 0.009313 0.031086 -E 3370.000000 70.000000 26.171967 144.969696 0.009369 0.031277 -E 3380.000000 70.000000 26.160604 145.038330 0.009401 0.031385 -E 3390.000000 70.000000 26.145649 145.239670 0.009413 0.031425 -E 3400.000000 70.000000 26.131344 145.414993 0.009436 0.031505 -E 3410.000000 70.000000 26.099709 145.574875 0.009484 0.031670 -E 3420.000000 70.000000 26.077091 145.712830 0.009570 0.031961 -E 3430.000000 70.000000 26.059452 145.914688 0.009640 0.032199 -E 3440.000000 70.000000 26.052078 146.114990 0.009694 0.032378 -E 3450.000000 70.000000 26.073477 146.297180 0.009782 0.032666 -E 3460.000000 70.000000 26.065239 146.498413 0.009862 0.032934 -E 3470.000000 70.000000 26.060627 146.646606 0.009951 0.033232 -E 3480.000000 70.000000 26.062428 146.801163 0.010019 0.033455 -E 3490.000000 70.000000 26.111877 147.066574 0.010081 0.033649 -E 3500.000000 70.000000 26.165169 147.308807 0.010147 0.033858 -E 3510.000000 70.000000 26.194157 147.496277 0.010219 0.034090 -E 3520.000000 70.000000 26.219084 147.731720 0.010295 0.034334 -E 3530.000000 70.000000 26.279291 147.946365 0.010354 0.034517 -E 3540.000000 70.000000 26.356745 148.327927 0.010434 0.034766 -E 3550.000000 70.000000 26.445419 148.634201 0.010493 0.034939 -E 3560.000000 70.000000 26.538935 149.020782 0.010536 0.035062 -E 3570.000000 70.000000 26.612930 149.462906 0.010608 0.035286 -E 3580.000000 70.000000 26.684912 149.837433 0.010675 0.035492 -E 3590.000000 70.000000 26.809250 150.350967 0.010722 0.035623 -E 3600.000000 70.000000 26.868715 150.934235 0.010779 0.035802 -E 3610.000000 70.000000 26.974009 151.630325 0.010824 0.035929 -E 3620.000000 70.000000 27.035006 152.352829 0.010861 0.036042 -E 3630.000000 70.000000 27.063824 153.032623 0.010908 0.036190 -E 3640.000000 70.000000 27.093979 153.851074 0.010980 0.036424 -E 3650.000000 70.000000 27.108665 154.728973 0.011058 0.036678 -E 3660.000000 70.000000 27.074831 155.624710 0.011057 0.036682 -E 3670.000000 70.000000 26.998297 156.526047 0.011003 0.036516 -E 3680.000000 70.000000 26.929335 157.427017 0.010992 0.036491 -E 3690.000000 70.000000 26.823792 158.302948 0.011066 0.036757 -E 3700.000000 70.000000 26.660860 159.244812 0.011236 0.037353 -E 3710.000000 70.000000 26.491405 160.106903 0.011411 0.037974 -E 3720.000000 70.000000 26.299400 160.876572 0.011509 0.038346 -E 3730.000000 70.000000 26.085173 161.752975 0.011636 0.038826 -E 3740.000000 70.000000 25.866016 162.510529 0.011771 0.039340 -E 3750.000000 70.000000 25.607012 163.173447 0.011830 0.039618 -E 3760.000000 70.000000 25.339903 163.804749 0.011844 0.039757 -E 3770.000000 70.000000 25.061275 164.464035 0.011916 0.040105 -E 3780.000000 70.000000 24.787838 164.987610 0.011908 0.040188 -E 3790.000000 70.000000 24.531576 165.428650 0.011868 0.040161 -E 3800.000000 70.000000 24.258633 165.849319 0.011918 0.040459 -E 3810.000000 70.000000 24.003521 166.143723 0.012083 0.041146 -E 3820.000000 70.000000 23.782835 166.495819 0.012211 0.041699 -E 3830.000000 70.000000 23.518969 166.788223 0.012169 0.041705 -E 3840.000000 70.000000 23.263922 166.994232 0.012213 0.042007 -E 3850.000000 70.000000 23.047279 167.277908 0.012367 0.042674 -E 3860.000000 70.000000 22.831839 167.577927 0.012336 0.042712 -E 3870.000000 70.000000 22.600477 167.722458 0.012191 0.042369 -E 3880.000000 70.000000 22.383007 167.853546 0.012036 0.041985 -E 3890.000000 70.000000 22.195124 168.051346 0.012106 0.042368 -E 3900.000000 70.000000 22.027351 168.127670 0.012470 0.043776 -E 3910.000000 70.000000 21.834549 168.254700 0.012862 0.045317 -E 3920.000000 70.000000 21.629786 168.414108 0.012812 0.045318 -E 3930.000000 70.000000 21.460327 168.469009 0.012616 0.044778 -E 3940.000000 70.000000 21.284803 168.617737 0.012482 0.044463 -E 3950.000000 70.000000 21.123819 168.785690 0.012464 0.044549 -E 3960.000000 70.000000 20.966738 168.835236 0.012609 0.045219 -E 3970.000000 70.000000 20.792219 168.900192 0.012767 0.045965 -E 3980.000000 70.000000 20.649120 169.078888 0.012609 0.045544 -E 3990.000000 70.000000 20.511387 169.022369 0.012430 0.045041 -E 4000.000000 70.000000 20.380026 169.138107 0.012529 0.045544 -E 4010.000000 70.000000 20.234409 169.266190 0.012842 0.046845 -E 4020.000000 70.000000 20.083815 169.179916 0.013040 0.047746 -E 4030.000000 70.000000 19.961927 169.274902 0.013061 0.047972 -E 4040.000000 70.000000 19.836092 169.424545 0.012971 0.047796 -E 4050.000000 70.000000 19.681059 169.551529 0.012719 0.047057 -E 4060.000000 70.000000 19.559454 169.606873 0.012460 0.046251 -E 4070.000000 70.000000 19.448360 169.612274 0.012528 0.046642 -E 4080.000000 70.000000 19.306227 169.714233 0.012900 0.048219 -E 4090.000000 70.000000 19.189598 169.779312 0.013204 0.049518 -E 4100.000000 70.000000 19.113008 169.788757 0.013247 0.049786 -E 4110.000000 70.000000 19.005634 169.979553 0.013248 0.049948 -E 4120.000000 70.000000 18.872583 170.033508 0.013106 0.049605 -E 4130.000000 70.000000 18.747465 169.932541 0.012739 0.048398 -E 4140.000000 70.000000 18.675760 170.055191 0.012579 0.047892 -E 4150.000000 70.000000 18.584326 170.128372 0.012785 0.048815 -E 4160.000000 70.000000 18.468733 170.124969 0.012921 0.049512 -E 4170.000000 70.000000 18.346674 170.120895 0.012906 0.049647 -E 4180.000000 70.000000 18.224989 170.109985 0.012930 0.049932 -E 4190.000000 70.000000 18.176970 170.195648 0.013078 0.050582 -E 4200.000000 70.000000 18.107901 170.358521 0.013116 0.050846 -E 4210.000000 70.000000 17.971607 170.357956 0.012796 0.049829 -E 4220.000000 70.000000 17.853750 170.333069 0.012397 0.048469 -E 4230.000000 70.000000 17.735748 170.372864 0.012164 0.047749 -E 4240.000000 70.000000 17.670206 170.417953 0.012150 0.047804 -E 4250.000000 70.000000 17.625563 170.450928 0.012565 0.049511 -E 4260.000000 70.000000 17.522587 170.524078 0.013064 0.051665 -E 4270.000000 70.000000 17.438272 170.655685 0.013026 0.051670 -E 4280.000000 70.000000 17.362068 170.637131 0.012653 0.050329 -E 4290.000000 70.000000 17.220146 170.626587 0.012787 0.051125 -E 4300.000000 70.000000 17.196371 170.641357 0.012849 0.051421 -E 4310.000000 70.000000 17.149319 170.682831 0.012741 0.051077 -E 4320.000000 70.000000 17.024426 170.638824 0.012968 0.052227 -E 4330.000000 70.000000 16.936495 170.573288 0.013179 0.053256 -E 4340.000000 70.000000 16.878851 170.674103 0.012878 0.052154 -E 4350.000000 70.000000 16.770741 170.739502 0.012755 0.051872 -E 4360.000000 70.000000 16.708717 170.709579 0.012940 0.052753 -E 4370.000000 70.000000 16.650553 170.794052 0.012951 0.052919 -E 4380.000000 70.000000 16.561031 170.836426 0.012880 0.052816 -E 4390.000000 70.000000 16.520384 170.861786 0.012787 0.052520 -E 4400.000000 70.000000 16.465357 170.907669 0.012737 0.052430 -E 4410.000000 70.000000 16.366589 170.884613 0.012533 0.051800 -E 4420.000000 70.000000 16.291142 170.941193 0.012133 0.050300 -E 4430.000000 70.000000 16.244478 170.976700 0.012078 0.050171 -E 4440.000000 70.000000 16.189871 171.058792 0.012189 0.050748 -E 4450.000000 70.000000 16.105812 171.049561 0.012133 0.050691 -E 4460.000000 70.000000 16.044970 170.971802 0.012045 0.050452 -E 4470.000000 70.000000 15.996713 171.026199 0.012112 0.050839 -E 4480.000000 70.000000 15.934414 171.059616 0.012179 0.051259 -E 4490.000000 70.000000 15.854892 171.122467 0.012187 0.051467 -E 4500.000000 70.000000 15.804461 171.102005 0.012123 0.051309 -E 4510.000000 70.000000 15.746460 171.155807 0.012128 0.051461 -E 4520.000000 70.000000 15.677960 171.210632 0.012181 0.051843 -E 4530.000000 70.000000 15.617671 171.141861 0.012162 0.051902 -E 4540.000000 70.000000 15.560222 171.307495 0.012112 0.051824 -E 4550.000000 70.000000 15.507298 171.350708 0.012056 0.051707 -E 4560.000000 70.000000 15.448170 171.298752 0.011946 0.051374 -E 4570.000000 70.000000 15.392149 171.349731 0.011769 0.050743 -E 4580.000000 70.000000 15.334008 171.402100 0.011515 0.049781 -E 4590.000000 70.000000 15.283431 171.373672 0.011320 0.049051 -E 4600.000000 70.000000 15.250581 171.278961 0.011492 0.049875 -E 4610.000000 70.000000 15.191825 171.312531 0.011783 0.051279 -E 4620.000000 70.000000 15.131215 171.462875 0.011884 0.051868 -E 4630.000000 70.000000 15.066402 171.403610 0.011614 0.050846 -E 4640.000000 70.000000 15.002156 171.399551 0.011191 0.049144 -E 4650.000000 70.000000 14.977331 171.387329 0.011046 0.048566 -E 4660.000000 70.000000 14.939166 171.391693 0.011192 0.049299 -E 4670.000000 70.000000 14.884884 171.490997 0.011417 0.050421 -E 4680.000000 70.000000 14.830277 171.489349 0.011507 0.050957 -E 4690.000000 70.000000 14.794390 171.535828 0.011564 0.051298 -E 4700.000000 70.000000 14.747604 171.564270 0.011791 0.052426 -E 4710.000000 70.000000 14.663223 171.507507 0.011978 0.053482 -E 4720.000000 70.000000 14.612101 171.505630 0.011843 0.053015 -E 4730.000000 70.000000 14.576301 171.532791 0.011596 0.052007 -E 4740.000000 70.000000 14.557932 171.617233 0.011509 0.051661 -E 4750.000000 70.000000 14.500517 171.555130 0.011557 0.052029 -E 4760.000000 70.000000 14.432364 171.550720 0.011523 0.052060 -E 4770.000000 70.000000 14.379240 171.597382 0.011434 0.051800 -E 4780.000000 70.000000 14.357383 171.649582 0.011324 0.051358 -E 4790.000000 70.000000 14.317633 171.669876 0.011224 0.051010 -E 4800.000000 70.000000 14.263372 171.625305 0.011206 0.051076 -E 4810.000000 70.000000 14.221684 171.641724 0.011184 0.051084 -E 4820.000000 70.000000 14.195223 171.704727 0.011183 0.051155 -E 4830.000000 70.000000 14.155863 171.714539 0.011142 0.051074 -E 4840.000000 70.000000 14.091934 171.836777 0.011019 0.050681 -E 4850.000000 70.000000 14.038381 171.808029 0.010523 0.048537 -E 4860.000000 70.000000 14.002892 171.776321 0.009249 0.042744 -E 4870.000000 70.000000 13.981593 171.844467 0.008796 0.040700 -E 4880.000000 70.000000 13.949656 171.860397 0.010111 0.046867 -E 4890.000000 70.000000 13.914122 171.945236 0.010773 0.050031 -E 4900.000000 70.000000 13.858474 171.882538 0.010769 0.050163 -E 4910.000000 70.000000 13.825664 171.802902 0.010671 0.049798 -E 4920.000000 70.000000 13.780122 171.933701 0.010702 0.050069 -E 4930.000000 70.000000 13.727965 171.949753 0.010670 0.050066 -E 4940.000000 70.000000 13.727051 171.926819 0.010591 0.049698 -E 4950.000000 70.000000 13.662642 171.895416 0.010715 0.050460 -E 4960.000000 70.000000 13.600838 171.905594 0.010785 0.050970 -E 4970.000000 70.000000 13.607749 171.949463 0.010693 0.050514 -E 4980.000000 70.000000 13.576309 171.982239 0.010585 0.050092 -E 4990.000000 70.000000 13.515537 171.991989 0.010458 0.049662 -E 5000.000000 70.000000 13.457089 171.979355 0.010420 0.049651 -E 5010.000000 70.000000 13.436554 171.989716 0.010395 0.049591 -E 5020.000000 70.000000 13.429926 172.039932 0.010317 0.049239 -E 5030.000000 70.000000 13.387953 172.110641 0.010319 0.049369 -E 5040.000000 70.000000 13.360041 172.084671 0.010349 0.049594 -E 5050.000000 70.000000 13.310696 172.056519 0.010374 0.049856 -E 5060.000000 70.000000 13.279428 172.121872 0.010327 0.049724 -E 5070.000000 70.000000 13.254642 172.198151 0.010307 0.049700 -E 5080.000000 70.000000 13.201105 172.238846 0.010335 0.049990 -E 5090.000000 70.000000 13.168996 172.195969 0.010326 0.050046 -E 5100.000000 70.000000 13.146140 172.165359 0.010318 0.050072 -E 5110.000000 70.000000 13.117195 172.132477 0.010276 0.049958 -E 5120.000000 70.000000 13.083791 172.186066 0.010216 0.049767 -E 5130.000000 70.000000 13.062965 172.094604 0.010207 0.049785 -E 5140.000000 70.000000 13.043760 172.055405 0.010195 0.049783 -E 5150.000000 70.000000 12.983300 172.233170 0.010180 0.049894 -E 5160.000000 70.000000 12.963504 172.330917 0.010139 0.049755 -E 5170.000000 70.000000 12.927883 172.290695 0.010124 0.049791 -E 5180.000000 70.000000 12.894392 172.191330 0.010097 0.049759 -E 5190.000000 70.000000 12.864182 172.242233 0.010068 0.049707 -E 5200.000000 70.000000 12.827656 172.320724 0.010014 0.049556 -E 5210.000000 70.000000 12.813833 172.252487 0.009971 0.049383 -E 5220.000000 70.000000 12.783376 172.306595 0.009964 0.049446 -E 5230.000000 70.000000 12.746502 172.369308 0.009934 0.049411 -E 5240.000000 70.000000 12.726078 172.376282 0.009909 0.049346 -E 5250.000000 70.000000 12.694133 172.375122 0.009872 0.049261 -E 5260.000000 70.000000 12.662826 172.307373 0.009802 0.049011 -E 5270.000000 70.000000 12.611479 172.307205 0.009723 0.048775 -E 5280.000000 70.000000 12.587087 172.340744 0.009703 0.048752 -E 5290.000000 70.000000 12.560678 172.371567 0.009690 0.048769 -E 5300.000000 70.000000 12.536326 172.333878 0.009659 0.048689 -E 5310.000000 70.000000 12.530879 172.311676 0.009653 0.048674 -E 5320.000000 70.000000 12.494526 172.376068 0.009644 0.048744 -E 5330.000000 70.000000 12.453995 172.418503 0.009575 0.048521 -E 5340.000000 70.000000 12.445150 172.285965 0.009489 0.048117 -E 5350.000000 70.000000 12.408788 172.361008 0.009468 0.048123 -E 5360.000000 70.000000 12.373638 172.434525 0.009453 0.048160 -E 5370.000000 70.000000 12.359411 172.365692 0.009432 0.048097 -E 5380.000000 70.000000 12.333626 172.357834 0.009400 0.048012 -E 5390.000000 70.000000 12.304389 172.441666 0.009328 0.047742 -E 5400.000000 70.000000 12.287143 172.551682 0.009291 0.047603 -E 5410.000000 70.000000 12.256410 172.454926 0.009268 0.047584 -E 5420.000000 70.000000 12.235332 172.457718 0.009204 0.047324 -E 5430.000000 70.000000 12.215872 172.494812 0.009128 0.046995 -E 5440.000000 70.000000 12.166745 172.449966 0.009105 0.047030 -E 5450.000000 70.000000 12.129880 172.391937 0.009082 0.047025 -E 5460.000000 70.000000 12.115445 172.448883 0.009079 0.047057 -E 5470.000000 70.000000 12.088482 172.588516 0.009067 0.047084 -E 5480.000000 70.000000 12.071642 172.570953 0.008997 0.046772 -E 5490.000000 70.000000 12.048635 172.607513 0.008935 0.046523 -E 5500.000000 70.000000 12.018157 172.614288 0.008923 0.046556 -E 5510.000000 70.000000 11.994914 172.600128 0.008928 0.046656 -E 5520.000000 70.000000 11.987124 172.573135 0.008916 0.046621 -E 5530.000000 70.000000 11.973194 172.569763 0.008884 0.046500 -E 5540.000000 70.000000 11.944142 172.681747 0.008850 0.046413 -E 5550.000000 70.000000 11.912913 172.635971 0.008835 0.046434 -E 5560.000000 70.000000 11.874080 172.600174 0.008823 0.046496 -E 5570.000000 70.000000 11.862383 172.620895 0.008794 0.046383 -E 5580.000000 70.000000 11.842405 172.678940 0.008775 0.046347 -E 5590.000000 70.000000 11.823432 172.662216 0.008770 0.046383 -E 5600.000000 70.000000 11.796490 172.640503 0.008747 0.046352 -E 5610.000000 70.000000 11.789158 172.680634 0.008697 0.046110 -E 5620.000000 70.000000 11.761437 172.676514 0.008678 0.046099 -E 5630.000000 70.000000 11.731346 172.744980 0.008669 0.046149 -E 5640.000000 70.000000 11.721725 172.784668 0.008638 0.046017 -E 5650.000000 70.000000 11.702127 172.761734 0.008600 0.045877 -E 5660.000000 70.000000 11.680478 172.697708 0.008569 0.045782 -E 5670.000000 70.000000 11.655467 172.677963 0.008482 0.045400 -E 5680.000000 70.000000 11.638405 172.836334 0.008332 0.044653 -E 5690.000000 70.000000 11.615869 172.801926 0.008158 0.043790 -E 5700.000000 70.000000 11.590267 172.782944 0.007924 0.042613 -E 5710.000000 70.000000 11.578173 172.838089 0.007808 0.042025 -E 5720.000000 70.000000 11.556172 172.818481 0.007747 0.041765 -E 5730.000000 70.000000 11.532859 172.843155 0.007675 0.041443 -E 5740.000000 70.000000 11.511471 172.876038 0.007536 0.040758 -E 5750.000000 70.000000 11.484875 172.828873 0.007465 0.040452 -E 5760.000000 70.000000 11.465578 172.807892 0.007412 0.040222 -E 5770.000000 70.000000 11.448228 172.881317 0.007270 0.039502 -E 5780.000000 70.000000 11.434128 172.899597 0.007164 0.038969 -E 5790.000000 70.000000 11.413200 172.840317 0.007154 0.038974 -E 5800.000000 70.000000 11.384785 172.818253 0.007106 0.038794 -E 5810.000000 70.000000 11.367579 172.867950 0.006930 0.037882 -E 5820.000000 70.000000 11.354798 172.871658 0.006755 0.036960 -E 5830.000000 70.000000 11.339818 172.862610 0.006919 0.037901 -E 5840.000000 70.000000 11.310710 172.917053 0.007242 0.039757 -E 5850.000000 70.000000 11.303096 172.917038 0.007193 0.039506 -E 5860.000000 70.000000 11.289329 172.975372 0.007228 0.039744 -E 5870.000000 70.000000 11.263792 172.873413 0.007303 0.040234 -E 5880.000000 70.000000 11.235555 172.904160 0.007238 0.039959 -E 5890.000000 70.000000 11.213624 172.935928 0.007218 0.039911 -E 5900.000000 70.000000 11.187429 172.907608 0.007460 0.041332 -E 5910.000000 70.000000 11.180805 172.914032 0.007614 0.042207 -E 5920.000000 70.000000 11.177961 172.959839 0.007613 0.042211 -E 5930.000000 70.000000 11.152356 172.990524 0.007494 0.041632 -E 5940.000000 70.000000 11.136552 172.991684 0.007382 0.041059 -E 5950.000000 70.000000 11.116196 173.031982 0.007293 0.040632 -E 5960.000000 70.000000 11.099436 172.964951 0.007312 0.040787 -E 5970.000000 70.000000 11.082603 172.951935 0.007436 0.041531 -E 5980.000000 70.000000 11.068828 173.037994 0.007501 0.041942 -E 5990.000000 70.000000 11.051756 173.083954 0.007505 0.042019 -E 6000.000000 70.000000 11.032812 173.028671 0.007513 0.042124 -E 6010.000000 70.000000 11.023314 173.053146 0.007459 0.041856 -E 6020.000000 70.000000 11.007709 173.072449 0.007373 0.041424 -E 6030.000000 70.000000 10.987975 173.055161 0.007271 0.040909 -E 6040.000000 70.000000 10.967356 173.081741 0.007242 0.040814 -E 6050.000000 70.000000 10.958225 173.042664 0.007390 0.041676 -E 6060.000000 70.000000 10.951637 173.013596 0.007433 0.041943 -E 6070.000000 70.000000 10.934222 173.079407 0.007443 0.042059 -E 6080.000000 70.000000 10.894495 173.136459 0.007471 0.042348 -E 6090.000000 70.000000 10.883726 173.053802 0.007499 0.042543 -E 6100.000000 70.000000 10.870139 173.141525 0.007473 0.042441 -E 6110.000000 70.000000 10.863460 173.138092 0.007431 0.042225 -E 6120.000000 70.000000 10.852050 173.133850 0.007417 0.042181 -E 6130.000000 70.000000 10.834374 173.186432 0.007401 0.042148 -E 6140.000000 70.000000 10.809425 173.156525 0.007383 0.042131 -E 6150.000000 70.000000 10.792129 173.097427 0.007430 0.042458 -E 6160.000000 70.000000 10.786530 173.175018 0.007497 0.042858 -E 6170.000000 70.000000 10.762918 173.199142 0.007535 0.043158 -E 6180.000000 70.000000 10.747923 173.175949 0.007550 0.043298 -E 6190.000000 70.000000 10.746305 173.110794 0.007576 0.043454 -E 6200.000000 70.000000 10.716991 173.134827 0.007544 0.043371 -E 6210.000000 70.000000 10.709064 173.121582 0.007549 0.043425 -E 6220.000000 70.000000 10.699302 173.145126 0.007579 0.043636 -E 6230.000000 70.000000 10.680178 173.197464 0.007540 0.043480 -E 6240.000000 70.000000 10.664915 173.172318 0.007519 0.043412 -E 6250.000000 70.000000 10.650968 173.239838 0.007586 0.043844 -E 6260.000000 70.000000 10.625656 173.200531 0.007640 0.044250 -E 6270.000000 70.000000 10.636355 173.182098 0.007639 0.044205 -E 6280.000000 70.000000 10.614540 173.205368 0.007632 0.044242 -E 6290.000000 70.000000 10.602071 173.255096 0.007638 0.044324 -E 6300.000000 70.000000 10.578819 173.349869 0.007644 0.044442 -E 6310.000000 70.000000 10.560072 173.298630 0.007683 0.044741 -E 6320.000000 70.000000 10.550346 173.178284 0.007696 0.044850 -E 6330.000000 70.000000 10.533011 173.329056 0.007673 0.044778 -E 6340.000000 70.000000 10.515390 173.339905 0.007684 0.044907 -E 6350.000000 70.000000 10.510254 173.305420 0.007682 0.044919 -E 6360.000000 70.000000 10.502902 173.328125 0.007657 0.044801 -E 6370.000000 70.000000 10.471516 173.342804 0.007645 0.044846 -E 6380.000000 70.000000 10.454593 173.328781 0.007658 0.044986 -E 6390.000000 70.000000 10.450792 173.312042 0.007658 0.044996 -E 6400.000000 70.000000 10.438745 173.288925 0.007657 0.045039 -E 6410.000000 70.000000 10.430684 173.270493 0.007669 0.045140 -E 6420.000000 70.000000 10.415838 173.404144 0.007693 0.045335 -E 6430.000000 70.000000 10.399295 173.536362 0.007685 0.045355 -E 6440.000000 70.000000 10.402256 173.435898 0.007687 0.045355 -E 6450.000000 70.000000 10.388330 173.310867 0.007701 0.045489 -E 6460.000000 70.000000 10.351901 173.357803 0.007699 0.045619 -E 6470.000000 70.000000 10.358933 173.357346 0.007692 0.045547 -E 6480.000000 70.000000 10.361680 173.404663 0.007681 0.045474 -E 6490.000000 70.000000 10.334061 173.408554 0.007672 0.045530 -E 6500.000000 70.000000 10.322186 173.406952 0.007672 0.045575 -E 6510.000000 70.000000 10.308403 173.458206 0.007676 0.045649 -E 6520.000000 70.000000 10.285506 173.402054 0.007669 0.045698 -E 6530.000000 70.000000 10.286395 173.401093 0.007676 0.045733 -E 6540.000000 70.000000 10.288983 173.435364 0.007746 0.046142 -E 6550.000000 70.000000 10.250113 173.468491 0.006866 0.041036 -E 6560.000000 70.000000 10.248907 173.462906 0.004813 0.028771 -E 6570.000000 70.000000 10.250183 173.429825 0.004650 0.027794 -E 6580.000000 70.000000 10.237034 173.436066 0.006353 0.038017 -E 6590.000000 70.000000 10.215320 173.461487 0.007609 0.045614 -E 6600.000000 70.000000 10.200864 173.388412 0.007655 0.045946 -E 6610.000000 70.000000 10.199327 173.367020 0.007661 0.045991 -E 6620.000000 70.000000 10.180434 173.408798 0.007645 0.045969 -E 6630.000000 70.000000 10.177233 173.419464 0.007634 0.045913 -E 6640.000000 70.000000 10.159374 173.487625 0.007639 0.046018 -E 6650.000000 70.000000 10.145863 173.522263 0.007645 0.046105 -E 6660.000000 70.000000 10.140770 173.569214 0.007643 0.046116 -E 6670.000000 70.000000 10.132472 173.557678 0.007641 0.046138 -E 6680.000000 70.000000 10.135470 173.514099 0.007632 0.046069 -E 6690.000000 70.000000 10.106279 173.502441 0.007618 0.046105 -E 6700.000000 70.000000 10.098595 173.622330 0.007597 0.046007 -E 6710.000000 70.000000 10.078350 173.630615 0.007601 0.046113 -E 6720.000000 70.000000 10.063108 173.560822 0.007591 0.046114 -E 6730.000000 70.000000 10.040607 173.474182 0.007588 0.046184 -E 6740.000000 70.000000 10.043713 173.541977 0.007598 0.046233 -E 6750.000000 70.000000 10.032000 173.606796 0.007606 0.046331 -E 6760.000000 70.000000 10.031154 173.488205 0.007605 0.046331 -E 6770.000000 70.000000 10.022972 173.504898 0.007598 0.046320 -E 6780.000000 70.000000 10.011140 173.551910 0.007584 0.046285 -E 6790.000000 70.000000 9.997108 173.572495 0.007568 0.046242 -E 6800.000000 70.000000 9.970707 173.551437 0.007560 0.046303 -E 6810.000000 70.000000 9.975588 173.630203 0.007557 0.046261 -E 6820.000000 70.000000 9.965106 173.666229 0.007560 0.046326 -E 6830.000000 70.000000 9.942946 173.612595 0.007558 0.046404 -E 6840.000000 70.000000 9.949089 173.666382 0.007548 0.046320 -E 6850.000000 70.000000 9.939376 173.623032 0.007517 0.046169 -E 6860.000000 70.000000 9.908001 173.687836 0.007515 0.046285 -E 6870.000000 70.000000 9.909123 173.668350 0.007535 0.046406 -E 6880.000000 70.000000 9.915418 173.652054 0.007545 0.046438 -E 6890.000000 70.000000 9.899430 173.570816 0.007549 0.046530 -E 6900.000000 70.000000 9.884955 173.615494 0.007558 0.046647 -E 6910.000000 70.000000 9.867867 173.714340 0.007556 0.046706 -E 6920.000000 70.000000 9.851445 173.717667 0.007549 0.046733 -E 6930.000000 70.000000 9.842437 173.678726 0.007543 0.046731 -E 6940.000000 70.000000 9.835801 173.842697 0.007534 0.046705 -E 6950.000000 70.000000 9.814747 173.839600 0.007546 0.046867 -E 6960.000000 70.000000 9.800947 173.668976 0.007548 0.046939 -E 6970.000000 70.000000 9.807914 173.715454 0.007534 0.046822 -E 6980.000000 70.000000 9.788121 173.727585 0.007526 0.046856 -E 6990.000000 70.000000 9.771259 173.744690 0.007532 0.046970 -E 7000.000000 70.000000 9.779154 173.776138 0.007543 0.047004 -E 7010.000000 70.000000 9.759831 173.799026 0.007555 0.047163 -E 7020.000000 70.000000 9.754523 173.845306 0.007559 0.047207 -E 7030.000000 70.000000 9.745038 173.830978 0.007558 0.047243 -E 7040.000000 70.000000 9.722622 173.781799 0.007572 0.047430 -E 7050.000000 70.000000 9.711342 173.755203 0.007585 0.047561 -E 7060.000000 70.000000 9.710948 173.855682 0.007588 0.047581 -E 7070.000000 70.000000 9.701822 173.865936 0.007560 0.047445 -E 7080.000000 70.000000 9.694470 173.780518 0.007565 0.047508 -E 7090.000000 70.000000 9.691283 173.845032 0.007583 0.047638 -E 7100.000000 70.000000 9.681171 173.885696 0.007600 0.047785 -E 7110.000000 70.000000 9.669317 173.828506 0.007602 0.047855 -E 7120.000000 70.000000 9.663428 173.793884 0.007604 0.047890 -E 7130.000000 70.000000 9.643742 173.828430 0.007607 0.047994 -E 7140.000000 70.000000 9.640675 173.799622 0.007598 0.047955 -E 7150.000000 70.000000 9.631563 173.814682 0.007592 0.047956 -E 7160.000000 70.000000 9.611721 173.779343 0.007600 0.048092 -E 7170.000000 70.000000 9.603939 173.852066 0.007625 0.048290 -E 7180.000000 70.000000 9.620442 173.986954 0.007623 0.048204 -E 7190.000000 70.000000 9.613693 173.897446 0.007625 0.048246 -E 7200.000000 70.000000 9.582446 173.921173 0.007639 0.048475 -E 7210.000000 70.000000 9.569226 173.999939 0.007655 0.048637 -E 7220.000000 70.000000 9.585300 173.949295 0.007655 0.048566 -E 7230.000000 70.000000 9.567454 173.985458 0.007673 0.048760 -E 7240.000000 70.000000 9.565096 174.004868 0.007670 0.048754 -E 7250.000000 70.000000 9.550028 173.933411 0.007639 0.048624 -E 7260.000000 70.000000 9.521615 173.925705 0.007610 0.048566 -E 7270.000000 70.000000 9.513081 173.940231 0.007629 0.048731 -E 7280.000000 70.000000 9.514208 173.954239 0.007636 0.048769 -E 7290.000000 70.000000 9.518766 173.974365 0.007627 0.048693 -E 7300.000000 70.000000 9.519683 173.952118 0.007635 0.048736 -E 7310.000000 70.000000 9.481967 173.987991 0.007631 0.048884 -E 7320.000000 70.000000 9.492261 173.985123 0.007641 0.048905 -E 7330.000000 70.000000 9.486000 173.950409 0.007673 0.049134 -E 7340.000000 70.000000 9.472294 173.946762 0.007667 0.049163 -E 7350.000000 70.000000 9.466720 174.037369 0.007625 0.048921 -E 7360.000000 70.000000 9.457794 174.025009 0.007630 0.048995 -E 7370.000000 70.000000 9.458140 173.985352 0.007666 0.049222 -E 7380.000000 70.000000 9.451670 173.994141 0.007719 0.049595 -E 7390.000000 70.000000 9.440516 174.064316 0.007748 0.049829 -E 7400.000000 70.000000 9.438191 174.046219 0.007717 0.049646 -E 7410.000000 70.000000 9.428780 174.087830 0.007747 0.049883 -E 7420.000000 70.000000 9.414704 174.083725 0.007805 0.050325 -E 7430.000000 70.000000 9.404902 174.113312 0.007830 0.050533 -E 7440.000000 70.000000 9.382589 174.120255 0.007837 0.050686 -E 7450.000000 70.000000 9.379965 174.132629 0.007845 0.050746 -E 7460.000000 70.000000 9.388845 174.107147 0.007851 0.050746 -E 7470.000000 70.000000 9.375950 174.094406 0.007821 0.050615 -E 7480.000000 70.000000 9.363350 174.080887 0.007818 0.050658 -E 7490.000000 70.000000 9.355113 174.144135 0.007853 0.050926 -E 7500.000000 70.000000 9.361959 174.153854 0.007854 0.050896 -E 7510.000000 70.000000 9.341738 174.149353 0.007853 0.050990 -E 7520.000000 70.000000 9.333494 174.095627 0.007911 0.051405 -E 7530.000000 70.000000 9.338209 174.080933 0.007937 0.051555 -E 7540.000000 70.000000 9.334275 174.142395 0.007893 0.051291 -E 7550.000000 70.000000 9.313696 174.216782 0.007912 0.051514 -E 7560.000000 70.000000 9.318128 174.284729 0.007923 0.051566 -E 7570.000000 70.000000 9.319859 174.220490 0.007915 0.051503 -E 7580.000000 70.000000 9.315630 174.140274 0.007903 0.051445 -E 7590.000000 70.000000 9.309307 174.212372 0.007899 0.051453 -E 7600.000000 70.000000 9.288897 174.206619 0.007962 0.051964 -E 7610.000000 70.000000 9.282671 174.265930 0.008024 0.052402 -E 7620.000000 70.000000 9.275507 174.235352 0.008069 0.052735 -E 7630.000000 70.000000 9.260244 174.149567 0.008050 0.052689 -E 7640.000000 70.000000 9.269856 174.157608 0.008036 0.052547 -E 7650.000000 70.000000 9.257846 174.228058 0.008067 0.052813 -E 7660.000000 70.000000 9.246433 174.235458 0.008122 0.053226 -E 7670.000000 70.000000 9.227341 174.358429 0.008192 0.053787 -E 7680.000000 70.000000 9.227748 174.302567 0.008180 0.053709 -E 7690.000000 70.000000 9.229633 174.262558 0.008095 0.053140 -E 7700.000000 70.000000 9.214854 174.278290 0.008064 0.053012 -E 7710.000000 70.000000 9.205322 174.234344 0.008125 0.053466 -E 7720.000000 70.000000 9.219481 174.289520 0.008214 0.053978 -E 7730.000000 70.000000 9.208651 174.351563 0.008278 0.054453 -E 7740.000000 70.000000 9.184813 174.284821 0.008297 0.054708 -E 7750.000000 70.000000 9.177646 174.259140 0.008335 0.054996 -E 7760.000000 70.000000 9.160827 174.313980 0.008383 0.055403 -E 7770.000000 70.000000 9.166468 174.361023 0.008410 0.055552 -E 7780.000000 70.000000 9.166428 174.266953 0.008402 0.055500 -E 7790.000000 70.000000 9.160894 174.427765 0.008353 0.055208 -E 7800.000000 70.000000 9.157903 174.301712 0.008342 0.055149 -E 7810.000000 70.000000 9.134407 174.226852 0.008411 0.055733 -E 7820.000000 70.000000 9.140054 174.362976 0.008448 0.055954 -E 7830.000000 70.000000 9.150946 174.413727 0.008458 0.055956 -E 7840.000000 70.000000 9.125465 174.317062 0.008505 0.056413 -E 7850.000000 70.000000 9.117087 174.279922 0.008569 0.056882 -E 7860.000000 70.000000 9.108488 174.381577 0.008609 0.057194 -E 7870.000000 70.000000 9.125469 174.330032 0.008602 0.057053 -E 7880.000000 70.000000 9.106487 174.335648 0.008588 0.057067 -E 7890.000000 70.000000 9.090854 174.347092 0.008615 0.057335 -E 7900.000000 70.000000 9.079696 174.458221 0.008658 0.057687 -E 7910.000000 70.000000 9.081581 174.472504 0.008664 0.057718 -E 7920.000000 70.000000 9.088305 174.384888 0.008684 0.057816 -E 7930.000000 70.000000 9.069597 174.463272 0.008705 0.058060 -E 7940.000000 70.000000 9.089453 174.464005 0.008681 0.057790 -E 7950.000000 70.000000 9.067080 174.508240 0.008690 0.057977 -E 7960.000000 70.000000 9.051100 174.423874 0.008742 0.058419 -E 7970.000000 70.000000 9.054414 174.494553 0.008791 0.058725 -E 7980.000000 70.000000 9.044289 174.405136 0.008820 0.058979 -E 7990.000000 70.000000 9.048944 174.376541 0.008839 0.059077 -E 8000.000000 70.000000 9.021362 174.418228 0.008834 0.059208 -E 8010.000000 70.000000 9.019710 174.414276 0.008823 0.059142 -E 8020.000000 70.000000 9.030197 174.388916 0.008885 0.059496 -E 8030.000000 70.000000 9.027197 174.392212 0.008939 0.059882 -E 8040.000000 70.000000 9.009150 174.446243 0.008941 0.059998 -E 8050.000000 70.000000 8.984633 174.459808 0.008928 0.060059 -E 8060.000000 70.000000 8.986261 174.415894 0.008958 0.060255 -E 8070.000000 70.000000 8.992615 174.375305 0.009043 0.060789 -E 8080.000000 70.000000 8.976461 174.352875 0.009080 0.061138 -E 8090.000000 70.000000 8.971928 174.483948 0.009021 0.060765 -E 8100.000000 70.000000 8.972869 174.480133 0.009036 0.060864 -E 8110.000000 70.000000 8.966395 174.470535 0.009085 0.061233 -E 8120.000000 70.000000 8.959633 174.596985 0.009145 0.061678 -E 8130.000000 70.000000 8.971983 174.628052 0.009137 0.061550 -E 8140.000000 70.000000 8.958868 174.599747 0.009089 0.061310 -E 8150.000000 70.000000 8.942255 174.606201 0.009123 0.061637 -E 8160.000000 70.000000 8.958334 174.523941 0.009188 0.061981 -E 8170.000000 70.000000 8.955948 174.514816 0.009229 0.062270 -E 8180.000000 70.000000 8.938348 174.560974 0.009209 0.062247 -E 8190.000000 70.000000 8.939431 174.610413 0.009202 0.062192 -E 8200.000000 70.000000 8.948799 174.641739 0.009245 0.062429 -E 8210.000000 70.000000 8.944346 174.649521 0.009282 0.062705 -E 8220.000000 70.000000 8.910946 174.636475 0.009315 0.063142 -E 8230.000000 70.000000 8.914278 174.437347 0.009282 0.062893 -E 8240.000000 70.000000 8.905667 174.594177 0.009276 0.062913 -E 8250.000000 70.000000 8.893200 174.635208 0.009350 0.063492 -E 8260.000000 70.000000 8.890527 174.555466 0.009405 0.063887 -E 8270.000000 70.000000 8.889400 174.434204 0.009380 0.063722 -E 8280.000000 70.000000 8.885114 174.541473 0.009339 0.063470 -E 8290.000000 70.000000 8.878053 174.571487 0.009350 0.063594 -E 8300.000000 70.000000 8.896312 174.743134 0.009438 0.064074 -E 8310.000000 70.000000 8.896188 174.758728 0.009492 0.064439 -E 8320.000000 70.000000 8.850922 174.587646 0.009474 0.064612 -E 8330.000000 70.000000 8.825754 174.669357 0.009428 0.064466 -E 8340.000000 70.000000 8.850741 174.731064 0.009409 0.064172 -E 8350.000000 70.000000 8.856588 174.554749 0.009452 0.064433 -E 8360.000000 70.000000 8.842800 174.489624 0.009531 0.065060 -E 8370.000000 70.000000 8.839125 174.544144 0.009511 0.064949 -E 8380.000000 70.000000 8.820309 174.659988 0.009496 0.064973 -E 8390.000000 70.000000 8.822253 174.760406 0.009523 0.065144 -E 8400.000000 70.000000 8.820306 174.708344 0.009602 0.065697 -E 8410.000000 70.000000 8.817249 174.726166 0.009638 0.065968 -E 8420.000000 70.000000 8.835634 174.698380 0.009619 0.065711 -E 8430.000000 70.000000 8.800640 174.652252 0.009595 0.065786 -E 8440.000000 70.000000 8.815183 174.678955 0.009597 0.065703 -E 8450.000000 70.000000 8.801238 174.678177 0.009648 0.066141 -E 8460.000000 70.000000 8.787373 174.836914 0.009677 0.066437 -E 8470.000000 70.000000 8.799990 174.777573 0.009654 0.066195 -E 8480.000000 70.000000 8.794261 174.753922 0.009617 0.065982 -E 8490.000000 70.000000 8.780627 174.663406 0.009695 0.066607 -E 8500.000000 70.000000 8.784750 174.669418 0.009866 0.067760 -E 8510.000000 70.000000 8.763975 174.586105 0.009920 0.068273 -E 8520.000000 70.000000 8.748459 174.696381 0.009714 0.066965 -E 8530.000000 70.000000 8.764171 174.869263 0.009494 0.065341 -E 8540.000000 70.000000 8.752581 174.833801 0.009470 0.065258 -E 8550.000000 70.000000 8.746904 174.708878 0.009609 0.066253 -E 8560.000000 70.000000 8.733954 174.660934 0.009713 0.067061 -E 8570.000000 70.000000 8.720658 174.605240 0.009737 0.067320 -E 8580.000000 70.000000 8.735291 174.792511 0.009698 0.066944 -E 8590.000000 70.000000 8.716925 174.710175 0.009674 0.066911 -E 8600.000000 70.000000 8.733969 174.689285 0.009708 0.067025 -E 8610.000000 70.000000 8.724585 174.890839 0.009797 0.067710 -E 8620.000000 70.000000 8.719799 174.816483 0.009837 0.068018 -E 8630.000000 70.000000 8.719354 174.805786 0.009834 0.068000 -E 8640.000000 70.000000 8.701517 174.922363 0.009771 0.067692 -E 8650.000000 70.000000 8.705914 174.856903 0.009739 0.067440 -E 8660.000000 70.000000 8.716096 174.762833 0.009788 0.067710 -E 8670.000000 70.000000 8.706722 174.881805 0.009861 0.068276 -E 8680.000000 70.000000 8.692905 174.813553 0.009870 0.068441 -E 8690.000000 70.000000 8.696210 174.860626 0.009854 0.068309 -E 8700.000000 70.000000 8.675367 174.866287 0.009836 0.068330 -E 8710.000000 70.000000 8.690472 174.910385 0.009858 0.068374 -E 8720.000000 70.000000 8.678859 174.782303 0.009908 0.068806 -E 8730.000000 70.000000 8.647379 174.943115 0.009913 0.069071 -E 8740.000000 70.000000 8.657319 174.847107 0.009873 0.068722 -E 8750.000000 70.000000 8.675156 174.824677 0.009841 0.068370 -E 8760.000000 70.000000 8.670392 174.928223 0.009851 0.068472 -E 8770.000000 70.000000 8.639541 174.787003 0.009912 0.069120 -E 8780.000000 70.000000 8.626282 174.790497 0.009960 0.069551 -E 8790.000000 70.000000 8.620787 174.833664 0.009947 0.069501 -E 8800.000000 70.000000 8.646818 174.813934 0.009937 0.069245 -E 8810.000000 70.000000 8.632964 174.817978 0.009973 0.069598 -E 8820.000000 70.000000 8.621170 175.019318 0.010014 0.069972 -E 8830.000000 70.000000 8.633305 174.994049 0.010051 0.070137 -E 8840.000000 70.000000 8.630743 174.895889 0.010061 0.070225 -E 8850.000000 70.000000 8.618359 175.023682 0.010081 0.070460 -E 8860.000000 70.000000 8.622253 174.903503 0.010060 0.070281 -E 8870.000000 70.000000 8.606414 174.921280 0.010030 0.070190 -E 8880.000000 70.000000 8.595314 174.936859 0.010034 0.070302 -E 8890.000000 70.000000 8.598085 174.983963 0.010079 0.070597 -E 8900.000000 70.000000 8.600169 174.924988 0.010118 0.070858 -E 8910.000000 70.000000 8.591242 174.851532 0.010143 0.071100 -E 8920.000000 70.000000 8.583925 174.981171 0.010140 0.071133 -E 8930.000000 70.000000 8.573763 175.009506 0.010138 0.071194 -E 8940.000000 70.000000 8.555571 174.868820 0.010148 0.071406 -E 8950.000000 70.000000 8.558867 175.066116 0.010183 0.071629 -E 8960.000000 70.000000 8.581882 174.857391 0.010210 0.071639 -E 8970.000000 70.000000 8.561497 174.897034 0.010235 0.071973 -E 8980.000000 70.000000 8.559835 174.913132 0.010255 0.072126 -E 8990.000000 70.000000 8.552236 174.743958 0.010240 0.072080 -E 9000.000000 70.000000 8.550808 174.872910 0.010280 0.072374 -E 9010.000000 70.000000 8.554516 174.972046 0.010310 0.072555 -E 9020.000000 70.000000 8.569343 175.113739 0.010312 0.072453 -E 9030.000000 70.000000 8.549447 175.006912 0.010361 0.072953 -E 9040.000000 70.000000 8.538127 175.084564 0.010371 0.073114 -E 9050.000000 70.000000 8.546661 175.149612 0.010352 0.072912 -E 9060.000000 70.000000 8.537910 174.898056 0.010384 0.073210 -E 9070.000000 70.000000 8.536934 174.930206 0.010427 0.073518 -E 9080.000000 70.000000 8.528360 175.151489 0.010484 0.073992 -E 9090.000000 70.000000 8.528864 174.964355 0.010529 0.074301 -E 9100.000000 70.000000 8.496531 174.854111 0.010541 0.074643 -E 9110.000000 70.000000 8.508589 174.931702 0.010509 0.074321 -E 9120.000000 70.000000 8.508849 175.047348 0.010528 0.074459 -E 9130.000000 70.000000 8.507488 175.007339 0.010577 0.074811 -E 9140.000000 70.000000 8.498118 175.060181 0.010659 0.075471 -E 9150.000000 70.000000 8.504669 175.019135 0.010657 0.075407 -E 9160.000000 70.000000 8.480077 175.054489 0.010622 0.075357 -E 9170.000000 70.000000 8.488358 175.130203 0.010606 0.075178 -E 9180.000000 70.000000 8.487889 175.113403 0.010616 0.075249 -E 9190.000000 70.000000 8.476492 175.066528 0.010674 0.075753 -E 9200.000000 70.000000 8.478591 174.922928 0.010762 0.076364 -E 9210.000000 70.000000 8.472970 175.120880 0.010810 0.076749 -E 9220.000000 70.000000 8.468168 175.132172 0.010861 0.077148 -E 9230.000000 70.000000 8.458891 175.140686 0.010887 0.077416 -E 9240.000000 70.000000 8.458486 175.132370 0.010901 0.077514 -E 9250.000000 70.000000 8.454440 174.966049 0.010924 0.077717 -E 9260.000000 70.000000 8.454695 175.120880 0.010968 0.078025 -E 9270.000000 70.000000 8.466520 175.274689 0.011022 0.078312 -E 9280.000000 70.000000 8.460687 175.196533 0.011080 0.078773 -E 9290.000000 70.000000 8.452767 174.932114 0.011116 0.079099 -E 9300.000000 70.000000 8.446152 174.997421 0.011136 0.079298 -E 9310.000000 70.000000 8.446439 175.049088 0.011154 0.079421 -E 9320.000000 70.000000 8.421367 175.228378 0.011168 0.079736 -E 9330.000000 70.000000 8.395915 175.138718 0.011210 0.080261 -E 9340.000000 70.000000 8.406946 175.194504 0.011258 0.080504 -E 9350.000000 70.000000 8.436943 175.221130 0.011319 0.080683 -E 9360.000000 70.000000 8.448875 175.163834 0.011385 0.081048 -E 9370.000000 70.000000 8.440248 175.347046 0.011417 0.081349 -E 9380.000000 70.000000 8.408854 175.177216 0.011431 0.081729 -E 9390.000000 70.000000 8.403489 175.083237 0.011457 0.081960 -E 9400.000000 70.000000 8.408162 175.171173 0.011548 0.082570 -E 9410.000000 70.000000 8.424427 175.292877 0.011611 0.082881 -E 9420.000000 70.000000 8.414208 175.338913 0.011671 0.083398 -E 9430.000000 70.000000 8.401778 175.036697 0.011735 0.083971 -E 9440.000000 70.000000 8.386297 175.165298 0.011744 0.084178 -E 9450.000000 70.000000 8.380025 175.090759 0.011782 0.084503 -E 9460.000000 70.000000 8.396639 175.237518 0.011840 0.084768 -E 9470.000000 70.000000 8.389497 175.245880 0.011909 0.085330 -E 9480.000000 70.000000 8.396621 175.333664 0.011969 0.085692 -E 9490.000000 70.000000 8.382241 175.256424 0.012039 0.086330 -E 9500.000000 70.000000 8.362041 175.209213 0.012105 0.086992 -E 9510.000000 70.000000 8.383402 175.067734 0.012151 0.087125 -E 9520.000000 70.000000 8.388864 175.043549 0.012188 0.087336 -E 9530.000000 70.000000 8.371493 175.175491 0.012252 0.087963 -E 9540.000000 70.000000 8.340021 175.187088 0.012359 0.089033 -E 9550.000000 70.000000 8.337351 175.201065 0.012446 0.089694 -E 9560.000000 70.000000 8.350050 175.216461 0.012475 0.089776 -E 9570.000000 70.000000 8.361102 175.414444 0.012496 0.089820 -E 9580.000000 70.000000 8.363356 175.371506 0.012526 0.090015 -E 9590.000000 70.000000 8.357409 175.204819 0.012582 0.090472 -E 9600.000000 70.000000 8.345102 175.299271 0.012646 0.091058 -E 9610.000000 70.000000 8.318431 175.428223 0.012694 0.091670 -E 9620.000000 70.000000 8.309038 175.299362 0.012772 0.092333 -E 9630.000000 70.000000 8.321168 175.249100 0.012833 0.092651 -E 9640.000000 70.000000 8.336560 175.282150 0.012887 0.092885 -E 9650.000000 70.000000 8.326828 175.316025 0.012954 0.093466 -E 9660.000000 70.000000 8.315522 175.465591 0.013008 0.093974 -E 9670.000000 70.000000 8.301159 175.563019 0.013099 0.094781 -E 9680.000000 70.000000 8.325414 175.332718 0.013195 0.095217 -E 9690.000000 70.000000 8.325931 175.237335 0.013269 0.095751 -E 9700.000000 70.000000 8.309796 175.099472 0.013308 0.096198 -E 9710.000000 70.000000 8.339731 175.405060 0.013389 0.096469 -E 9720.000000 70.000000 8.282105 175.512756 0.013487 0.097791 -E 9730.000000 70.000000 8.272711 175.393860 0.013586 0.098613 -E 9740.000000 70.000000 8.271445 175.380753 0.013671 0.099248 -E 9750.000000 70.000000 8.296926 175.294891 0.013710 0.099246 -E 9760.000000 70.000000 8.332147 175.336060 0.013790 0.099445 -E 9770.000000 70.000000 8.286115 175.326889 0.013888 0.100660 -E 9780.000000 70.000000 8.277268 175.494949 0.013963 0.101300 -E 9790.000000 70.000000 8.276253 175.254120 0.014057 0.101994 -E 9800.000000 70.000000 8.255424 175.159622 0.014168 0.103038 -E 9810.000000 70.000000 8.281021 175.241699 0.014278 0.103545 -E 9820.000000 70.000000 8.257392 175.382538 0.014402 0.104717 -E 9830.000000 70.000000 8.267316 175.262878 0.014455 0.104990 -E 9840.000000 70.000000 8.238717 175.118729 0.014557 0.106066 -E 9850.000000 70.000000 8.258997 175.342987 0.014659 0.106574 -E 9860.000000 70.000000 8.247291 175.211380 0.014750 0.107375 -E 9870.000000 70.000000 8.250484 175.184814 0.014898 0.108409 -E 9880.000000 70.000000 8.265643 175.353760 0.015018 0.109101 -E 9890.000000 70.000000 8.252702 175.560379 0.015109 0.109920 -E 9900.000000 70.000000 8.256435 175.729752 0.015192 0.110484 -E 9910.000000 70.000000 8.245546 175.558929 0.015307 0.111454 -E 9920.000000 70.000000 8.235231 175.491898 0.015464 0.112723 -E 9930.000000 70.000000 8.251116 175.414871 0.015630 0.113738 -E 9940.000000 70.000000 8.219556 175.596420 0.015775 0.115197 -E 9950.000000 70.000000 8.234161 175.489883 0.015879 0.115764 -E 9960.000000 70.000000 8.210146 175.370544 0.016033 0.117198 -E 9970.000000 70.000000 8.193875 175.396194 0.016151 0.118280 -E 9980.000000 70.000000 8.194836 175.378006 0.016342 0.119662 -E 9990.000000 70.000000 8.212622 175.541595 0.016519 0.120720 -E 10000.000000 70.000000 8.224506 175.505066 0.016685 0.121774 -E 10025.000000 70.000000 8.190679 175.534195 0.008064 0.059091 -E 10050.000000 70.000000 8.184579 175.487549 0.007874 0.057739 -E 10075.000000 70.000000 8.169347 175.522202 0.007645 0.056150 -E 10100.000000 70.000000 8.172769 175.523972 0.007465 0.054810 -E 10125.000000 70.000000 8.182145 175.506378 0.007308 0.053598 -E 10150.000000 70.000000 8.168519 175.433441 0.007121 0.052310 -E 10175.000000 70.000000 8.160705 175.446899 0.006952 0.051115 -E 10200.000000 70.000000 8.158606 175.546753 0.006800 0.050006 -E 10225.000000 70.000000 8.144069 175.528503 0.006631 0.048847 -E 10250.000000 70.000000 8.131223 175.524414 0.006478 0.047789 -E 10275.000000 70.000000 8.125073 175.587662 0.006355 0.046912 -E 10300.000000 70.000000 8.119646 175.573975 0.006197 0.045772 -E 10325.000000 70.000000 8.114458 175.537277 0.006032 0.044584 -E 10350.000000 70.000000 8.107176 175.580444 0.005902 0.043660 -E 10375.000000 70.000000 8.100228 175.584854 0.005778 0.042776 -E 10400.000000 70.000000 8.093657 175.553207 0.005660 0.041934 -E 10425.000000 70.000000 8.086782 175.564911 0.005549 0.041137 -E 10450.000000 70.000000 8.080079 175.578323 0.005440 0.040361 -E 10475.000000 70.000000 8.073559 175.586639 0.005332 0.039595 -E 10500.000000 70.000000 8.071528 175.600754 0.005233 0.038867 -E 10525.000000 70.000000 8.069858 175.616943 0.005139 0.038177 -E 10550.000000 70.000000 8.059555 175.634354 0.005051 0.037564 -E 10575.000000 70.000000 8.049754 175.673370 0.004972 0.037022 -E 10600.000000 70.000000 8.040311 175.730011 0.004902 0.036536 -E 10625.000000 70.000000 8.035843 175.681274 0.004805 0.035833 -E 10650.000000 70.000000 8.030298 175.669708 0.004720 0.035222 -E 10675.000000 70.000000 8.022291 175.729874 0.004654 0.034762 -E 10700.000000 70.000000 8.019765 175.735107 0.004570 0.034143 -E 10725.000000 70.000000 8.017097 175.728210 0.004489 0.033548 -E 10750.000000 70.000000 8.006824 175.736603 0.004436 0.033193 -E 10775.000000 70.000000 7.997991 175.730072 0.004357 0.032636 -E 10800.000000 70.000000 7.990237 175.714401 0.004264 0.031963 -E 10825.000000 70.000000 7.987331 175.731110 0.004200 0.031496 -E 10850.000000 70.000000 7.984536 175.728073 0.004132 0.030999 -E 10875.000000 70.000000 7.981798 175.699738 0.004059 0.030460 -E 10900.000000 70.000000 7.981146 175.736130 0.004003 0.030042 -E 10925.000000 70.000000 7.978756 175.779877 0.003947 0.029626 -E 10950.000000 70.000000 7.970494 175.812225 0.003878 0.029138 -E 10975.000000 70.000000 7.957333 175.834183 0.003824 0.028779 -E 11000.000000 70.000000 7.943127 175.848785 0.003779 0.028481 -E 11025.000000 70.000000 7.939655 175.839844 0.003736 0.028174 -E 11050.000000 70.000000 7.933967 175.815979 0.003700 0.027916 -E 11075.000000 70.000000 7.926233 175.778305 0.003668 0.027702 -E 11100.000000 70.000000 7.924328 175.767487 0.003613 0.027295 -E 11125.000000 70.000000 7.920842 175.778168 0.003571 0.026982 -E 11150.000000 70.000000 7.913671 175.824203 0.003550 0.026850 -E 11175.000000 70.000000 7.912203 175.836578 0.003521 0.026636 -E 11200.000000 70.000000 7.911076 175.838226 0.003493 0.026427 -E 11225.000000 70.000000 7.904621 175.836258 0.003476 0.026320 -E 11250.000000 70.000000 7.900852 175.859985 0.003452 0.026146 -E 11275.000000 70.000000 7.898427 175.899017 0.003424 0.025942 -E 11300.000000 70.000000 7.888583 175.935562 0.003420 0.025938 -E 11325.000000 70.000000 7.880345 175.957703 0.003406 0.025860 -E 11350.000000 70.000000 7.873960 175.963379 0.003382 0.025700 -E 11375.000000 70.000000 7.871910 175.896622 0.003370 0.025612 -E 11400.000000 70.000000 7.869700 175.870316 0.003358 0.025523 -E 11425.000000 70.000000 7.865981 175.948929 0.003341 0.025410 -E 11450.000000 70.000000 7.860325 175.943329 0.003325 0.025299 -E 11475.000000 70.000000 7.855378 175.920532 0.003306 0.025173 -E 11500.000000 70.000000 7.857015 175.953506 0.003280 0.024971 -E 11525.000000 70.000000 7.850841 175.968109 0.003258 0.024818 -E 11550.000000 70.000000 7.839879 175.969925 0.003238 0.024697 -E 11575.000000 70.000000 7.840657 175.944992 0.003224 0.024586 -E 11600.000000 70.000000 7.839085 175.938370 0.003200 0.024411 -E 11625.000000 70.000000 7.834796 175.952881 0.003166 0.024161 -E 11650.000000 70.000000 7.826550 175.967606 0.003146 0.024038 -E 11675.000000 70.000000 7.820414 175.984756 0.003126 0.023900 -E 11700.000000 70.000000 7.819611 176.007156 0.003100 0.023699 -E 11725.000000 70.000000 7.814298 176.046616 0.003082 0.023581 -E 11750.000000 70.000000 7.807539 176.084625 0.003065 0.023466 -E 11775.000000 70.000000 7.800848 176.093231 0.003034 0.023248 -E 11800.000000 70.000000 7.797514 176.088745 0.003006 0.023045 -E 11825.000000 70.000000 7.796220 176.074249 0.002981 0.022851 -E 11850.000000 70.000000 7.795309 176.021408 0.002955 0.022656 -E 11875.000000 70.000000 7.790823 176.011734 0.002931 0.022486 -E 11900.000000 70.000000 7.782712 176.045914 0.002910 0.022341 -E 11925.000000 70.000000 7.774875 176.044586 0.002883 0.022158 -E 11950.000000 70.000000 7.770673 176.061829 0.002859 0.021987 -E 11975.000000 70.000000 7.772564 176.115753 0.002841 0.021841 -E 12000.000000 70.000000 7.768823 176.114288 0.002822 0.021706 -E 12025.000000 70.000000 7.763596 176.105713 0.002803 0.021572 -E 12050.000000 70.000000 7.758069 176.117203 0.002784 0.021435 -E 12075.000000 70.000000 7.754148 176.114685 0.002770 0.021341 -E 12100.000000 70.000000 7.751001 176.109772 0.002758 0.021259 -E 12125.000000 70.000000 7.748141 176.134827 0.002740 0.021124 -E 12150.000000 70.000000 7.746853 176.140488 0.002723 0.020995 -E 12175.000000 70.000000 7.746752 176.131348 0.002707 0.020870 -E 12200.000000 70.000000 7.737659 176.154709 0.002701 0.020850 -E 12225.000000 70.000000 7.731359 176.159393 0.002693 0.020805 -E 12250.000000 70.000000 7.728441 176.141037 0.002683 0.020729 -E 12275.000000 70.000000 7.722176 176.119446 0.002679 0.020718 -E 12300.000000 70.000000 7.717067 176.119141 0.002679 0.020728 -E 12325.000000 70.000000 7.715099 176.162216 0.002683 0.020761 -E 12350.000000 70.000000 7.714838 176.171265 0.002675 0.020706 -E 12375.000000 70.000000 7.712655 176.181992 0.002671 0.020677 -E 12400.000000 70.000000 7.702073 176.232468 0.002687 0.020824 -E 12425.000000 70.000000 7.699123 176.236954 0.002680 0.020783 -E 12450.000000 70.000000 7.698757 176.218033 0.002667 0.020679 -E 12475.000000 70.000000 7.689717 176.193024 0.002677 0.020781 -E 12500.000000 70.000000 7.685834 176.209747 0.002669 0.020723 -E 12525.000000 70.000000 7.685857 176.257202 0.002646 0.020548 -E 12550.000000 70.000000 7.682617 176.267395 0.002638 0.020494 -E 12575.000000 70.000000 7.681589 176.272003 0.002628 0.020414 -E 12600.000000 70.000000 7.683123 176.270309 0.002614 0.020306 -E 12625.000000 70.000000 7.672031 176.254196 0.002608 0.020282 -E 12650.000000 70.000000 7.664077 176.243637 0.002598 0.020228 -E 12675.000000 70.000000 7.663437 176.244873 0.002583 0.020107 -E 12700.000000 70.000000 7.664115 176.262314 0.002565 0.019968 -E 12725.000000 70.000000 7.663427 176.274277 0.002552 0.019871 -E 12750.000000 70.000000 7.658377 176.262756 0.002553 0.019889 -E 12775.000000 70.000000 7.654431 176.272430 0.002539 0.019785 -E 12800.000000 70.000000 7.650038 176.286697 0.002520 0.019651 -E 12825.000000 70.000000 7.641693 176.286774 0.002509 0.019584 -E 12850.000000 70.000000 7.636244 176.276779 0.002497 0.019506 -E 12875.000000 70.000000 7.632925 176.266891 0.002486 0.019421 -E 12900.000000 70.000000 7.634320 176.312042 0.002476 0.019347 -E 12925.000000 70.000000 7.631661 176.336029 0.002464 0.019251 -E 12950.000000 70.000000 7.625803 176.342743 0.002448 0.019140 -E 12975.000000 70.000000 7.623119 176.320633 0.002441 0.019092 -E 13000.000000 70.000000 7.621535 176.325134 0.002432 0.019029 -E 13025.000000 70.000000 7.621192 176.359543 0.002422 0.018950 -E 13050.000000 70.000000 7.617200 176.361801 0.002409 0.018860 -E 13075.000000 70.000000 7.613778 176.351791 0.002399 0.018787 -E 13100.000000 70.000000 7.611639 176.326416 0.002393 0.018742 -E 13125.000000 70.000000 7.610495 176.330688 0.002386 0.018694 -E 13150.000000 70.000000 7.608545 176.341568 0.002379 0.018644 -E 13175.000000 70.000000 7.604410 176.355515 0.002371 0.018588 -E 13200.000000 70.000000 7.605469 176.355850 0.002365 0.018535 -E 13225.000000 70.000000 7.604286 176.357025 0.002361 0.018507 -E 13250.000000 70.000000 7.591013 176.373703 0.002364 0.018557 -E 13275.000000 70.000000 7.587031 176.403366 0.002362 0.018551 -E 13300.000000 70.000000 7.586469 176.431168 0.002359 0.018531 -E 13325.000000 70.000000 7.583136 176.421921 0.002362 0.018562 -E 13350.000000 70.000000 7.581042 176.427261 0.002366 0.018595 -E 13375.000000 70.000000 7.579059 176.439438 0.002369 0.018628 -E 13400.000000 70.000000 7.571485 176.435959 0.002370 0.018654 -E 13425.000000 70.000000 7.570040 176.448456 0.002376 0.018699 -E 13450.000000 70.000000 7.572906 176.472046 0.002385 0.018761 -E 13475.000000 70.000000 7.564561 176.460526 0.002399 0.018891 -E 13500.000000 70.000000 7.562156 176.458862 0.002414 0.019019 -E 13525.000000 70.000000 7.565754 176.467178 0.002431 0.019146 -E 13550.000000 70.000000 7.558186 176.450485 0.002463 0.019412 -E 13575.000000 70.000000 7.554492 176.449326 0.002497 0.019686 -E 13600.000000 70.000000 7.556288 176.469498 0.002532 0.019962 -E 13625.000000 70.000000 7.550681 176.481018 0.002552 0.020135 -E 13650.000000 70.000000 7.546614 176.494598 0.002573 0.020310 -E 13675.000000 70.000000 7.546169 176.512817 0.002598 0.020505 -E 13700.000000 70.000000 7.543208 176.526382 0.002658 0.020984 -E 13725.000000 70.000000 7.540652 176.524902 0.002760 0.021797 -E 13750.000000 70.000000 7.539940 176.490616 0.002947 0.023275 -E 13775.000000 70.000000 7.534299 176.504501 0.003212 0.025382 -E 13800.000000 70.000000 7.529454 176.535294 0.003490 0.027596 -E 13825.000000 70.000000 7.532458 176.569000 0.003657 0.028904 -E 13850.000000 70.000000 7.527297 176.557526 0.003627 0.028687 -E 13875.000000 70.000000 7.524582 176.549332 0.003520 0.027855 -E 13900.000000 70.000000 7.536506 176.592941 0.003373 0.026645 -E 13925.000000 70.000000 7.529437 176.608292 0.003280 0.025935 -E 13950.000000 70.000000 7.517886 176.610550 0.003192 0.025276 -E 13975.000000 70.000000 7.515663 176.602295 0.003045 0.024113 -E 14000.000000 70.000000 7.511015 176.582764 0.002955 0.023416 -E 14025.000000 70.000000 7.507217 176.562317 0.002890 0.022910 -E 14050.000000 70.000000 7.513268 176.562836 0.002819 0.022329 -E 14075.000000 70.000000 7.508609 176.583038 0.002769 0.021951 -E 14100.000000 70.000000 7.500174 176.610352 0.002730 0.021664 -E 14125.000000 70.000000 7.506389 176.611588 0.002679 0.021237 -E 14150.000000 70.000000 7.505394 176.619125 0.002644 0.020967 -E 14175.000000 70.000000 7.500313 176.627182 0.002620 0.020789 -E 14200.000000 70.000000 7.500991 176.596207 0.002593 0.020568 -E 14225.000000 70.000000 7.495366 176.625153 0.002576 0.020447 -E 14250.000000 70.000000 7.485721 176.692307 0.002566 0.020392 -E 14275.000000 70.000000 7.488999 176.636917 0.002549 0.020249 -E 14300.000000 70.000000 7.486016 176.631378 0.002538 0.020166 -E 14325.000000 70.000000 7.478040 176.666504 0.002531 0.020131 -E 14350.000000 70.000000 7.481941 176.646149 0.002524 0.020064 -E 14375.000000 70.000000 7.479649 176.644485 0.002515 0.020005 -E 14400.000000 70.000000 7.471559 176.660431 0.002507 0.019954 -E 14425.000000 70.000000 7.470483 176.682785 0.002509 0.019972 -E 14450.000000 70.000000 7.468678 176.684006 0.002504 0.019939 -E 14475.000000 70.000000 7.466112 176.663254 0.002492 0.019851 -E 14500.000000 70.000000 7.466144 176.726318 0.002490 0.019834 -E 14525.000000 70.000000 7.464204 176.733261 0.002492 0.019850 -E 14550.000000 70.000000 7.459921 176.674973 0.002497 0.019903 -E 14575.000000 70.000000 7.462031 176.658798 0.002487 0.019820 -E 14600.000000 70.000000 7.461195 176.662643 0.002486 0.019814 -E 14625.000000 70.000000 7.456511 176.688614 0.002497 0.019907 -E 14650.000000 70.000000 7.457918 176.668533 0.002490 0.019847 -E 14675.000000 70.000000 7.455740 176.673508 0.002491 0.019863 -E 14700.000000 70.000000 7.448565 176.713913 0.002504 0.019985 -E 14725.000000 70.000000 7.447608 176.740784 0.002497 0.019927 -E 14750.000000 70.000000 7.444593 176.758545 0.002496 0.019930 -E 14775.000000 70.000000 7.438248 176.765793 0.002506 0.020029 -E 14800.000000 70.000000 7.441097 176.774445 0.002505 0.020010 -E 14825.000000 70.000000 7.442250 176.765610 0.002504 0.019999 -E 14850.000000 70.000000 7.440130 176.732758 0.002505 0.020012 -E 14875.000000 70.000000 7.434871 176.730759 0.002509 0.020056 -E 14900.000000 70.000000 7.431441 176.734314 0.002516 0.020117 -E 14925.000000 70.000000 7.430923 176.741989 0.002526 0.020198 -E 14950.000000 70.000000 7.426220 176.755280 0.002525 0.020200 -E 14975.000000 70.000000 7.421728 176.766785 0.002530 0.020256 -E 15000.000000 70.000000 7.417948 176.775284 0.002547 0.020399 -E 15025.000000 70.000000 7.422662 176.796173 0.002543 0.020353 -E 15050.000000 70.000000 7.422897 176.802719 0.002545 0.020372 -E 15075.000000 70.000000 7.415967 176.788086 0.002560 0.020506 -E 15100.000000 70.000000 7.415520 176.778702 0.002559 0.020497 -E 15125.000000 70.000000 7.412258 176.784027 0.002559 0.020511 -E 15150.000000 70.000000 7.404537 176.808609 0.002565 0.020573 -E 15175.000000 70.000000 7.405032 176.782928 0.002570 0.020613 -E 15200.000000 70.000000 7.403090 176.781952 0.002578 0.020680 -E 15225.000000 70.000000 7.397163 176.818069 0.002589 0.020784 -E 15250.000000 70.000000 7.400163 176.813980 0.002594 0.020815 -E 15275.000000 70.000000 7.400557 176.815262 0.002602 0.020883 -E 15300.000000 70.000000 7.396998 176.826309 0.002616 0.021001 -E 15325.000000 70.000000 7.397190 176.793655 0.002618 0.021017 -E 15350.000000 70.000000 7.396678 176.791031 0.002624 0.021067 -E 15375.000000 70.000000 7.395159 176.825745 0.002635 0.021160 -E 15400.000000 70.000000 7.393733 176.860641 0.002641 0.021209 -E 15425.000000 70.000000 7.391715 176.856491 0.002653 0.021307 -E 15450.000000 70.000000 7.389040 176.809631 0.002671 0.021461 -E 15475.000000 70.000000 7.388014 176.867157 0.002677 0.021514 -E 15500.000000 70.000000 7.384254 176.899918 0.002687 0.021598 -E 15525.000000 70.000000 7.377914 176.907028 0.002699 0.021713 -E 15550.000000 70.000000 7.382770 176.879959 0.002697 0.021685 -E 15575.000000 70.000000 7.380264 176.873276 0.002706 0.021761 -E 15600.000000 70.000000 7.371546 176.883621 0.002723 0.021925 -E 15625.000000 70.000000 7.371965 176.865768 0.002729 0.021974 -E 15650.000000 70.000000 7.371367 176.870026 0.002741 0.022067 -E 15675.000000 70.000000 7.370029 176.891083 0.002756 0.022189 -E 15700.000000 70.000000 7.369778 176.898315 0.002761 0.022229 -E 15725.000000 70.000000 7.366600 176.910629 0.002771 0.022321 -E 15750.000000 70.000000 7.362186 176.923096 0.002785 0.022447 -E 15775.000000 70.000000 7.364956 176.905228 0.002798 0.022539 -E 15800.000000 70.000000 7.360466 176.924530 0.002809 0.022643 -E 15825.000000 70.000000 7.353909 176.957230 0.002821 0.022756 -E 15850.000000 70.000000 7.362233 176.930679 0.002839 0.022882 -E 15875.000000 70.000000 7.361823 176.945328 0.002851 0.022974 -E 15900.000000 70.000000 7.357434 176.973526 0.002860 0.023062 -E 15925.000000 70.000000 7.355625 176.964783 0.002878 0.023210 -E 15950.000000 70.000000 7.354343 176.925491 0.002895 0.023352 -E 15975.000000 70.000000 7.354206 176.897400 0.002912 0.023487 -E 16000.000000 70.000000 7.357422 176.956970 0.002928 0.023607 -E 16025.000000 70.000000 7.348132 176.943604 0.002940 0.023734 -E 16050.000000 70.000000 7.339770 176.924194 0.002954 0.023874 -E 16075.000000 70.000000 7.346188 176.959137 0.002977 0.024038 -E 16100.000000 70.000000 7.345031 176.967087 0.002995 0.024185 -E 16125.000000 70.000000 7.341625 176.976135 0.003011 0.024325 -E 16150.000000 70.000000 7.337707 177.003525 0.003026 0.024458 -E 16175.000000 70.000000 7.328842 177.039093 0.003050 0.024676 -E 16200.000000 70.000000 7.326591 177.059418 0.003074 0.024876 -E 16225.000000 70.000000 7.337694 177.049805 0.003095 0.025013 -E 16250.000000 70.000000 7.333883 177.014725 0.003115 0.025183 -E 16275.000000 70.000000 7.329737 177.004547 0.003138 0.025382 -E 16300.000000 70.000000 7.327592 177.033600 0.003166 0.025617 -E 16325.000000 70.000000 7.324088 177.003830 0.003190 0.025824 -E 16350.000000 70.000000 7.324510 176.986649 0.003219 0.026057 -E 16375.000000 70.000000 7.329310 176.987350 0.003254 0.026322 -E 16400.000000 70.000000 7.322974 177.029602 0.003276 0.026521 -E 16425.000000 70.000000 7.321688 177.032928 0.003316 0.026851 -E 16450.000000 70.000000 7.324388 177.003906 0.003370 0.027282 -E 16475.000000 70.000000 7.320839 177.000153 0.003391 0.027462 -E 16500.000000 70.000000 7.322691 177.021255 0.003440 0.027846 -E 16525.000000 70.000000 7.327149 177.051437 0.003506 0.028368 -E 16550.000000 70.000000 7.324503 177.029541 0.003565 0.028855 -E 16575.000000 70.000000 7.319481 177.068283 0.003656 0.029610 -E 16600.000000 70.000000 7.313515 177.109726 0.003768 0.030541 -E 16625.000000 70.000000 7.309005 177.031097 0.003893 0.031567 -E 16650.000000 70.000000 7.318780 177.027328 0.004110 0.033287 -E 16675.000000 70.000000 7.327247 177.066498 0.004395 0.035560 -E 16700.000000 70.000000 7.313661 177.148056 0.004745 0.038451 -E 16725.000000 70.000000 7.303569 177.106842 0.005271 0.042769 -E 16750.000000 70.000000 7.299397 177.051437 0.005950 0.048303 -E 16775.000000 70.000000 7.308707 177.050476 0.006786 0.055027 -E 16800.000000 70.000000 7.301926 177.036774 0.007911 0.064206 -E 16825.000000 70.000000 7.291903 176.975784 0.009287 0.075467 -E 16850.000000 70.000000 7.281566 176.831619 0.010842 0.088219 -E 16875.000000 70.000000 7.298783 177.085953 0.012665 0.102825 -E 16900.000000 70.000000 7.305838 177.267471 0.014837 0.120344 -E 16925.000000 70.000000 7.297638 177.291687 0.017333 0.140733 -E 16950.000000 70.000000 7.332868 177.041245 0.020080 0.162308 -E 16975.000000 70.000000 7.297152 176.912338 0.023077 0.187383 -E 17000.000000 70.000000 7.212368 176.874298 0.026374 0.216504 -uR 1930.000000 50.000000 inf 1.000000 -uR 1940.000000 50.000000 inf 1.000000 -uR 1950.000000 50.000000 inf 1.000000 -uR 1960.000000 50.000000 inf 1.000000 -uR 1970.000000 50.000000 inf 1.000000 -uR 1980.000000 50.000000 inf 1.000000 -uR 1990.000000 50.000000 inf 1.000000 -uR 2000.000000 50.000000 inf 1.000000 -uR 2010.000000 50.000000 inf 1.000000 -uR 2020.000000 50.000000 inf 1.000000 -uR 2030.000000 50.000000 inf 1.000000 -uR 2040.000000 50.000000 inf 1.000000 -uR 2050.000000 50.000000 inf 1.000000 -uR 2060.000000 50.000000 inf 1.000000 -uR 2070.000000 50.000000 inf 1.000000 -uR 2080.000000 50.000000 inf 1.000000 -uR 2090.000000 50.000000 inf 1.000000 -uR 2100.000000 50.000000 inf 1.000000 -uR 2110.000000 50.000000 inf 1.000000 -uR 2120.000000 50.000000 inf 1.000000 -uR 2130.000000 50.000000 inf 1.000000 -uR 2140.000000 50.000000 inf 1.000000 -uR 2150.000000 50.000000 inf 1.000000 -uR 2160.000000 50.000000 inf 1.000000 -uR 2170.000000 50.000000 inf 1.000000 -uR 2180.000000 50.000000 inf 1.000000 -uR 2190.000000 50.000000 inf 1.000000 -uR 2200.000000 50.000000 inf 1.000000 -uR 2210.000000 50.000000 inf 1.000000 -uR 2220.000000 50.000000 inf 1.000000 -uR 2230.000000 50.000000 inf 1.000000 -uR 2240.000000 50.000000 inf 1.000000 -uR 2250.000000 50.000000 inf 1.000000 -uR 2260.000000 50.000000 inf 1.000000 -uR 2270.000000 50.000000 inf 1.000000 -uR 2280.000000 50.000000 inf 1.000000 -uR 2290.000000 50.000000 inf 1.000000 -uR 2300.000000 50.000000 inf 1.000000 -uR 2310.000000 50.000000 inf 1.000000 -uR 2320.000000 50.000000 inf 1.000000 -uR 2330.000000 50.000000 inf 1.000000 -uR 2340.000000 50.000000 inf 1.000000 -uR 2350.000000 50.000000 inf 1.000000 -uR 2360.000000 50.000000 inf 1.000000 -uR 2370.000000 50.000000 inf 1.000000 -uR 2380.000000 50.000000 inf 1.000000 -uR 2390.000000 50.000000 inf 1.000000 -uR 2400.000000 50.000000 inf 1.000000 -uR 2410.000000 50.000000 inf 1.000000 -uR 2420.000000 50.000000 inf 1.000000 -uR 2430.000000 50.000000 inf 1.000000 -uR 2440.000000 50.000000 inf 1.000000 -uR 2450.000000 50.000000 inf 1.000000 -uR 2460.000000 50.000000 inf 1.000000 -uR 2470.000000 50.000000 inf 1.000000 -uR 2480.000000 50.000000 inf 1.000000 -uR 2490.000000 50.000000 inf 1.000000 -uR 2500.000000 50.000000 inf 1.000000 -uR 2510.000000 50.000000 inf 1.000000 -uR 2520.000000 50.000000 inf 1.000000 -uR 2530.000000 50.000000 inf 1.000000 -uR 2540.000000 50.000000 inf 1.000000 -uR 2550.000000 50.000000 inf 1.000000 -uR 2560.000000 50.000000 inf 1.000000 -uR 2570.000000 50.000000 inf 1.000000 -uR 2580.000000 50.000000 inf 1.000000 -uR 2590.000000 50.000000 inf 1.000000 -uR 2600.000000 50.000000 inf 1.000000 -uR 2610.000000 50.000000 inf 1.000000 -uR 2620.000000 50.000000 inf 1.000000 -uR 2630.000000 50.000000 inf 1.000000 -uR 2640.000000 50.000000 inf 1.000000 -uR 2650.000000 50.000000 inf 1.000000 -uR 2660.000000 50.000000 inf 1.000000 -uR 2670.000000 50.000000 inf 1.000000 -uR 2680.000000 50.000000 inf 1.000000 -uR 2690.000000 50.000000 inf 1.000000 -uR 2700.000000 50.000000 inf 1.000000 -uR 2710.000000 50.000000 inf 1.000000 -uR 2720.000000 50.000000 inf 1.000000 -uR 2730.000000 50.000000 inf 1.000000 -uR 2740.000000 50.000000 inf 1.000000 -uR 2750.000000 50.000000 inf 1.000000 -uR 2760.000000 50.000000 inf 1.000000 -uR 2770.000000 50.000000 inf 1.000000 -uR 2780.000000 50.000000 inf 1.000000 -uR 2790.000000 50.000000 inf 1.000000 -uR 2800.000000 50.000000 inf 1.000000 -uR 2810.000000 50.000000 inf 1.000000 -uR 2820.000000 50.000000 inf 1.000000 -uR 2830.000000 50.000000 inf 1.000000 -uR 2840.000000 50.000000 inf 1.000000 -uR 2850.000000 50.000000 inf 1.000000 -uR 2860.000000 50.000000 inf 1.000000 -uR 2870.000000 50.000000 inf 1.000000 -uR 2880.000000 50.000000 inf 1.000000 -uR 2890.000000 50.000000 inf 1.000000 -uR 2900.000000 50.000000 inf 1.000000 -uR 2910.000000 50.000000 inf 1.000000 -uR 2920.000000 50.000000 inf 1.000000 -uR 2930.000000 50.000000 inf 1.000000 -uR 2940.000000 50.000000 inf 1.000000 -uR 2950.000000 50.000000 inf 1.000000 -uR 2960.000000 50.000000 inf 1.000000 -uR 2970.000000 50.000000 inf 1.000000 -uR 2980.000000 50.000000 inf 1.000000 -uR 2990.000000 50.000000 inf 1.000000 -uR 3000.000000 50.000000 inf 1.000000 -uR 3010.000000 50.000000 inf 1.000000 -uR 3020.000000 50.000000 inf 1.000000 -uR 3030.000000 50.000000 inf 1.000000 -uR 3040.000000 50.000000 inf 1.000000 -uR 3050.000000 50.000000 inf 1.000000 -uR 3060.000000 50.000000 inf 1.000000 -uR 3070.000000 50.000000 inf 1.000000 -uR 3080.000000 50.000000 inf 1.000000 -uR 3090.000000 50.000000 inf 1.000000 -uR 3100.000000 50.000000 inf 1.000000 -uR 3110.000000 50.000000 inf 1.000000 -uR 3120.000000 50.000000 inf 1.000000 -uR 3130.000000 50.000000 inf 1.000000 -uR 3140.000000 50.000000 inf 1.000000 -uR 3150.000000 50.000000 inf 1.000000 -uR 3160.000000 50.000000 inf 1.000000 -uR 3170.000000 50.000000 inf 1.000000 -uR 3180.000000 50.000000 inf 1.000000 -uR 3190.000000 50.000000 inf 1.000000 -uR 3200.000000 50.000000 inf 1.000000 -uR 3210.000000 50.000000 inf 1.000000 -uR 3220.000000 50.000000 inf 1.000000 -uR 3230.000000 50.000000 inf 1.000000 -uR 3240.000000 50.000000 inf 1.000000 -uR 3250.000000 50.000000 inf 1.000000 -uR 3260.000000 50.000000 inf 1.000000 -uR 3270.000000 50.000000 inf 1.000000 -uR 3280.000000 50.000000 inf 1.000000 -uR 3290.000000 50.000000 inf 1.000000 -uR 3300.000000 50.000000 inf 1.000000 -uR 3310.000000 50.000000 inf 1.000000 -uR 3320.000000 50.000000 inf 1.000000 -uR 3330.000000 50.000000 inf 1.000000 -uR 3340.000000 50.000000 inf 1.000000 -uR 3350.000000 50.000000 inf 1.000000 -uR 3360.000000 50.000000 inf 1.000000 -uR 3370.000000 50.000000 inf 1.000000 -uR 3380.000000 50.000000 inf 1.000000 -uR 3390.000000 50.000000 inf 1.000000 -uR 3400.000000 50.000000 inf 1.000000 -uR 3410.000000 50.000000 inf 1.000000 -uR 3420.000000 50.000000 inf 1.000000 -uR 3430.000000 50.000000 inf 1.000000 -uR 3440.000000 50.000000 inf 1.000000 -uR 3450.000000 50.000000 inf 1.000000 -uR 3460.000000 50.000000 inf 1.000000 -uR 3470.000000 50.000000 inf 1.000000 -uR 3480.000000 50.000000 inf 1.000000 -uR 3490.000000 50.000000 inf 1.000000 -uR 3500.000000 50.000000 inf 1.000000 -uR 3510.000000 50.000000 inf 1.000000 -uR 3520.000000 50.000000 inf 1.000000 -uR 3530.000000 50.000000 inf 1.000000 -uR 3540.000000 50.000000 inf 1.000000 -uR 3550.000000 50.000000 inf 1.000000 -uR 3560.000000 50.000000 inf 1.000000 -uR 3570.000000 50.000000 inf 1.000000 -uR 3580.000000 50.000000 inf 1.000000 -uR 3590.000000 50.000000 inf 1.000000 -uR 3600.000000 50.000000 inf 1.000000 -uR 3610.000000 50.000000 inf 1.000000 -uR 3620.000000 50.000000 inf 1.000000 -uR 3630.000000 50.000000 inf 1.000000 -uR 3640.000000 50.000000 inf 1.000000 -uR 3650.000000 50.000000 inf 1.000000 -uR 3660.000000 50.000000 inf 1.000000 -uR 3670.000000 50.000000 inf 1.000000 -uR 3680.000000 50.000000 inf 1.000000 -uR 3690.000000 50.000000 inf 1.000000 -uR 3700.000000 50.000000 inf 1.000000 -uR 3710.000000 50.000000 inf 1.000000 -uR 3720.000000 50.000000 inf 1.000000 -uR 3730.000000 50.000000 inf 1.000000 -uR 3740.000000 50.000000 inf 1.000000 -uR 3750.000000 50.000000 inf 1.000000 -uR 3760.000000 50.000000 inf 1.000000 -uR 3770.000000 50.000000 inf 1.000000 -uR 3780.000000 50.000000 inf 1.000000 -uR 3790.000000 50.000000 inf 1.000000 -uR 3800.000000 50.000000 inf 1.000000 -uR 3810.000000 50.000000 inf 1.000000 -uR 3820.000000 50.000000 inf 1.000000 -uR 3830.000000 50.000000 inf 1.000000 -uR 3840.000000 50.000000 inf 1.000000 -uR 3850.000000 50.000000 inf 1.000000 -uR 3860.000000 50.000000 inf 1.000000 -uR 3870.000000 50.000000 inf 1.000000 -uR 3880.000000 50.000000 inf 1.000000 -uR 3890.000000 50.000000 inf 1.000000 -uR 3900.000000 50.000000 inf 1.000000 -uR 3910.000000 50.000000 inf 1.000000 -uR 3920.000000 50.000000 inf 1.000000 -uR 3930.000000 50.000000 inf 1.000000 -uR 3940.000000 50.000000 inf 1.000000 -uR 3950.000000 50.000000 inf 1.000000 -uR 3960.000000 50.000000 inf 1.000000 -uR 3970.000000 50.000000 inf 1.000000 -uR 3980.000000 50.000000 inf 1.000000 -uR 3990.000000 50.000000 inf 1.000000 -uR 4000.000000 50.000000 inf 1.000000 -uR 4010.000000 50.000000 inf 1.000000 -uR 4020.000000 50.000000 inf 1.000000 -uR 4030.000000 50.000000 inf 1.000000 -uR 4040.000000 50.000000 inf 1.000000 -uR 4050.000000 50.000000 inf 1.000000 -uR 4060.000000 50.000000 inf 1.000000 -uR 4070.000000 50.000000 inf 1.000000 -uR 4080.000000 50.000000 inf 1.000000 -uR 4090.000000 50.000000 inf 1.000000 -uR 4100.000000 50.000000 inf 1.000000 -uR 4110.000000 50.000000 inf 1.000000 -uR 4120.000000 50.000000 inf 1.000000 -uR 4130.000000 50.000000 inf 1.000000 -uR 4140.000000 50.000000 inf 1.000000 -uR 4150.000000 50.000000 inf 1.000000 -uR 4160.000000 50.000000 inf 1.000000 -uR 4170.000000 50.000000 inf 1.000000 -uR 4180.000000 50.000000 inf 1.000000 -uR 4190.000000 50.000000 inf 1.000000 -uR 4200.000000 50.000000 inf 1.000000 -uR 4210.000000 50.000000 inf 1.000000 -uR 4220.000000 50.000000 inf 1.000000 -uR 4230.000000 50.000000 inf 1.000000 -uR 4240.000000 50.000000 inf 1.000000 -uR 4250.000000 50.000000 inf 1.000000 -uR 4260.000000 50.000000 inf 1.000000 -uR 4270.000000 50.000000 inf 1.000000 -uR 4280.000000 50.000000 inf 1.000000 -uR 4290.000000 50.000000 inf 1.000000 -uR 4300.000000 50.000000 inf 1.000000 -uR 4310.000000 50.000000 inf 1.000000 -uR 4320.000000 50.000000 inf 1.000000 -uR 4330.000000 50.000000 inf 1.000000 -uR 4340.000000 50.000000 inf 1.000000 -uR 4350.000000 50.000000 inf 1.000000 -uR 4360.000000 50.000000 inf 1.000000 -uR 4370.000000 50.000000 inf 1.000000 -uR 4380.000000 50.000000 inf 1.000000 -uR 4390.000000 50.000000 inf 1.000000 -uR 4400.000000 50.000000 inf 1.000000 -uR 4410.000000 50.000000 inf 1.000000 -uR 4420.000000 50.000000 inf 1.000000 -uR 4430.000000 50.000000 inf 1.000000 -uR 4440.000000 50.000000 inf 1.000000 -uR 4450.000000 50.000000 inf 1.000000 -uR 4460.000000 50.000000 inf 1.000000 -uR 4470.000000 50.000000 inf 1.000000 -uR 4480.000000 50.000000 inf 1.000000 -uR 4490.000000 50.000000 inf 1.000000 -uR 4500.000000 50.000000 inf 1.000000 -uR 4510.000000 50.000000 inf 1.000000 -uR 4520.000000 50.000000 inf 1.000000 -uR 4530.000000 50.000000 inf 1.000000 -uR 4540.000000 50.000000 inf 1.000000 -uR 4550.000000 50.000000 inf 1.000000 -uR 4560.000000 50.000000 inf 1.000000 -uR 4570.000000 50.000000 inf 1.000000 -uR 4580.000000 50.000000 inf 1.000000 -uR 4590.000000 50.000000 inf 1.000000 -uR 4600.000000 50.000000 inf 1.000000 -uR 4610.000000 50.000000 inf 1.000000 -uR 4620.000000 50.000000 inf 1.000000 -uR 4630.000000 50.000000 inf 1.000000 -uR 4640.000000 50.000000 inf 1.000000 -uR 4650.000000 50.000000 inf 1.000000 -uR 4660.000000 50.000000 inf 1.000000 -uR 4670.000000 50.000000 inf 1.000000 -uR 4680.000000 50.000000 inf 1.000000 -uR 4690.000000 50.000000 inf 1.000000 -uR 4700.000000 50.000000 inf 1.000000 -uR 4710.000000 50.000000 inf 1.000000 -uR 4720.000000 50.000000 inf 1.000000 -uR 4730.000000 50.000000 inf 1.000000 -uR 4740.000000 50.000000 inf 1.000000 -uR 4750.000000 50.000000 inf 1.000000 -uR 4760.000000 50.000000 inf 1.000000 -uR 4770.000000 50.000000 inf 1.000000 -uR 4780.000000 50.000000 inf 1.000000 -uR 4790.000000 50.000000 inf 1.000000 -uR 4800.000000 50.000000 inf 1.000000 -uR 4810.000000 50.000000 inf 1.000000 -uR 4820.000000 50.000000 inf 1.000000 -uR 4830.000000 50.000000 inf 1.000000 -uR 4840.000000 50.000000 inf 1.000000 -uR 4850.000000 50.000000 inf 1.000000 -uR 4860.000000 50.000000 inf 1.000000 -uR 4870.000000 50.000000 inf 1.000000 -uR 4880.000000 50.000000 inf 1.000000 -uR 4890.000000 50.000000 inf 1.000000 -uR 4900.000000 50.000000 inf 1.000000 -uR 4910.000000 50.000000 inf 1.000000 -uR 4920.000000 50.000000 inf 1.000000 -uR 4930.000000 50.000000 inf 1.000000 -uR 4940.000000 50.000000 inf 1.000000 -uR 4950.000000 50.000000 inf 1.000000 -uR 4960.000000 50.000000 inf 1.000000 -uR 4970.000000 50.000000 inf 1.000000 -uR 4980.000000 50.000000 inf 1.000000 -uR 4990.000000 50.000000 inf 1.000000 -uR 5000.000000 50.000000 inf 1.000000 -uR 5010.000000 50.000000 inf 1.000000 -uR 5020.000000 50.000000 inf 1.000000 -uR 5030.000000 50.000000 inf 1.000000 -uR 5040.000000 50.000000 inf 1.000000 -uR 5050.000000 50.000000 inf 1.000000 -uR 5060.000000 50.000000 inf 1.000000 -uR 5070.000000 50.000000 inf 1.000000 -uR 5080.000000 50.000000 inf 1.000000 -uR 5090.000000 50.000000 inf 1.000000 -uR 5100.000000 50.000000 inf 1.000000 -uR 5110.000000 50.000000 inf 1.000000 -uR 5120.000000 50.000000 inf 1.000000 -uR 5130.000000 50.000000 inf 1.000000 -uR 5140.000000 50.000000 inf 1.000000 -uR 5150.000000 50.000000 inf 1.000000 -uR 5160.000000 50.000000 inf 1.000000 -uR 5170.000000 50.000000 inf 1.000000 -uR 5180.000000 50.000000 inf 1.000000 -uR 5190.000000 50.000000 inf 1.000000 -uR 5200.000000 50.000000 inf 1.000000 -uR 5210.000000 50.000000 inf 1.000000 -uR 5220.000000 50.000000 inf 1.000000 -uR 5230.000000 50.000000 inf 1.000000 -uR 5240.000000 50.000000 inf 1.000000 -uR 5250.000000 50.000000 inf 1.000000 -uR 5260.000000 50.000000 inf 1.000000 -uR 5270.000000 50.000000 inf 1.000000 -uR 5280.000000 50.000000 inf 1.000000 -uR 5290.000000 50.000000 inf 1.000000 -uR 5300.000000 50.000000 inf 1.000000 -uR 5310.000000 50.000000 inf 1.000000 -uR 5320.000000 50.000000 inf 1.000000 -uR 5330.000000 50.000000 inf 1.000000 -uR 5340.000000 50.000000 inf 1.000000 -uR 5350.000000 50.000000 inf 1.000000 -uR 5360.000000 50.000000 inf 1.000000 -uR 5370.000000 50.000000 inf 1.000000 -uR 5380.000000 50.000000 inf 1.000000 -uR 5390.000000 50.000000 inf 1.000000 -uR 5400.000000 50.000000 inf 1.000000 -uR 5410.000000 50.000000 inf 1.000000 -uR 5420.000000 50.000000 inf 1.000000 -uR 5430.000000 50.000000 inf 1.000000 -uR 5440.000000 50.000000 inf 1.000000 -uR 5450.000000 50.000000 inf 1.000000 -uR 5460.000000 50.000000 inf 1.000000 -uR 5470.000000 50.000000 inf 1.000000 -uR 5480.000000 50.000000 inf 1.000000 -uR 5490.000000 50.000000 inf 1.000000 -uR 5500.000000 50.000000 inf 1.000000 -uR 5510.000000 50.000000 inf 1.000000 -uR 5520.000000 50.000000 inf 1.000000 -uR 5530.000000 50.000000 inf 1.000000 -uR 5540.000000 50.000000 inf 1.000000 -uR 5550.000000 50.000000 inf 1.000000 -uR 5560.000000 50.000000 inf 1.000000 -uR 5570.000000 50.000000 inf 1.000000 -uR 5580.000000 50.000000 inf 1.000000 -uR 5590.000000 50.000000 inf 1.000000 -uR 5600.000000 50.000000 inf 1.000000 -uR 5610.000000 50.000000 inf 1.000000 -uR 5620.000000 50.000000 inf 1.000000 -uR 5630.000000 50.000000 inf 1.000000 -uR 5640.000000 50.000000 inf 1.000000 -uR 5650.000000 50.000000 inf 1.000000 -uR 5660.000000 50.000000 inf 1.000000 -uR 5670.000000 50.000000 inf 1.000000 -uR 5680.000000 50.000000 inf 1.000000 -uR 5690.000000 50.000000 inf 1.000000 -uR 5700.000000 50.000000 inf 1.000000 -uR 5710.000000 50.000000 inf 1.000000 -uR 5720.000000 50.000000 inf 1.000000 -uR 5730.000000 50.000000 inf 1.000000 -uR 5740.000000 50.000000 inf 1.000000 -uR 5750.000000 50.000000 inf 1.000000 -uR 5760.000000 50.000000 inf 1.000000 -uR 5770.000000 50.000000 inf 1.000000 -uR 5780.000000 50.000000 inf 1.000000 -uR 5790.000000 50.000000 inf 1.000000 -uR 5800.000000 50.000000 inf 1.000000 -uR 5810.000000 50.000000 inf 1.000000 -uR 5820.000000 50.000000 inf 1.000000 -uR 5830.000000 50.000000 inf 1.000000 -uR 5840.000000 50.000000 inf 1.000000 -uR 5850.000000 50.000000 inf 1.000000 -uR 5860.000000 50.000000 inf 1.000000 -uR 5870.000000 50.000000 inf 1.000000 -uR 5880.000000 50.000000 inf 1.000000 -uR 5890.000000 50.000000 inf 1.000000 -uR 5900.000000 50.000000 inf 1.000000 -uR 5910.000000 50.000000 inf 1.000000 -uR 5920.000000 50.000000 inf 1.000000 -uR 5930.000000 50.000000 inf 1.000000 -uR 5940.000000 50.000000 inf 1.000000 -uR 5950.000000 50.000000 inf 1.000000 -uR 5960.000000 50.000000 inf 1.000000 -uR 5970.000000 50.000000 inf 1.000000 -uR 5980.000000 50.000000 inf 1.000000 -uR 5990.000000 50.000000 inf 1.000000 -uR 6000.000000 50.000000 inf 1.000000 -uR 6010.000000 50.000000 inf 1.000000 -uR 6020.000000 50.000000 inf 1.000000 -uR 6030.000000 50.000000 inf 1.000000 -uR 6040.000000 50.000000 inf 1.000000 -uR 6050.000000 50.000000 inf 1.000000 -uR 6060.000000 50.000000 inf 1.000000 -uR 6070.000000 50.000000 inf 1.000000 -uR 6080.000000 50.000000 inf 1.000000 -uR 6090.000000 50.000000 inf 1.000000 -uR 6100.000000 50.000000 inf 1.000000 -uR 6110.000000 50.000000 inf 1.000000 -uR 6120.000000 50.000000 inf 1.000000 -uR 6130.000000 50.000000 inf 1.000000 -uR 6140.000000 50.000000 inf 1.000000 -uR 6150.000000 50.000000 inf 1.000000 -uR 6160.000000 50.000000 inf 1.000000 -uR 6170.000000 50.000000 inf 1.000000 -uR 6180.000000 50.000000 inf 1.000000 -uR 6190.000000 50.000000 inf 1.000000 -uR 6200.000000 50.000000 inf 1.000000 -uR 6210.000000 50.000000 inf 1.000000 -uR 6220.000000 50.000000 inf 1.000000 -uR 6230.000000 50.000000 inf 1.000000 -uR 6240.000000 50.000000 inf 1.000000 -uR 6250.000000 50.000000 inf 1.000000 -uR 6260.000000 50.000000 inf 1.000000 -uR 6270.000000 50.000000 inf 1.000000 -uR 6280.000000 50.000000 inf 1.000000 -uR 6290.000000 50.000000 inf 1.000000 -uR 6300.000000 50.000000 inf 1.000000 -uR 6310.000000 50.000000 inf 1.000000 -uR 6320.000000 50.000000 inf 1.000000 -uR 6330.000000 50.000000 inf 1.000000 -uR 6340.000000 50.000000 inf 1.000000 -uR 6350.000000 50.000000 inf 1.000000 -uR 6360.000000 50.000000 inf 1.000000 -uR 6370.000000 50.000000 inf 1.000000 -uR 6380.000000 50.000000 inf 1.000000 -uR 6390.000000 50.000000 inf 1.000000 -uR 6400.000000 50.000000 inf 1.000000 -uR 6410.000000 50.000000 inf 1.000000 -uR 6420.000000 50.000000 inf 1.000000 -uR 6430.000000 50.000000 inf 1.000000 -uR 6440.000000 50.000000 inf 1.000000 -uR 6450.000000 50.000000 inf 1.000000 -uR 6460.000000 50.000000 inf 1.000000 -uR 6470.000000 50.000000 inf 1.000000 -uR 6480.000000 50.000000 inf 1.000000 -uR 6490.000000 50.000000 inf 1.000000 -uR 6500.000000 50.000000 inf 1.000000 -uR 6510.000000 50.000000 inf 1.000000 -uR 6520.000000 50.000000 inf 1.000000 -uR 6530.000000 50.000000 inf 1.000000 -uR 6540.000000 50.000000 inf 1.000000 -uR 6550.000000 50.000000 inf 1.000000 -uR 6560.000000 50.000000 inf 1.000000 -uR 6570.000000 50.000000 inf 1.000000 -uR 6580.000000 50.000000 inf 1.000000 -uR 6590.000000 50.000000 inf 1.000000 -uR 6600.000000 50.000000 inf 1.000000 -uR 6610.000000 50.000000 inf 1.000000 -uR 6620.000000 50.000000 inf 1.000000 -uR 6630.000000 50.000000 inf 1.000000 -uR 6640.000000 50.000000 inf 1.000000 -uR 6650.000000 50.000000 inf 1.000000 -uR 6660.000000 50.000000 inf 1.000000 -uR 6670.000000 50.000000 inf 1.000000 -uR 6680.000000 50.000000 inf 1.000000 -uR 6690.000000 50.000000 inf 1.000000 -uR 6700.000000 50.000000 inf 1.000000 -uR 6710.000000 50.000000 inf 1.000000 -uR 6720.000000 50.000000 inf 1.000000 -uR 6730.000000 50.000000 inf 1.000000 -uR 6740.000000 50.000000 inf 1.000000 -uR 6750.000000 50.000000 inf 1.000000 -uR 6760.000000 50.000000 inf 1.000000 -uR 6770.000000 50.000000 inf 1.000000 -uR 6780.000000 50.000000 inf 1.000000 -uR 6790.000000 50.000000 inf 1.000000 -uR 6800.000000 50.000000 inf 1.000000 -uR 6810.000000 50.000000 inf 1.000000 -uR 6820.000000 50.000000 inf 1.000000 -uR 6830.000000 50.000000 inf 1.000000 -uR 6840.000000 50.000000 inf 1.000000 -uR 6850.000000 50.000000 inf 1.000000 -uR 6860.000000 50.000000 inf 1.000000 -uR 6870.000000 50.000000 inf 1.000000 -uR 6880.000000 50.000000 inf 1.000000 -uR 6890.000000 50.000000 inf 1.000000 -uR 6900.000000 50.000000 inf 1.000000 -uR 6910.000000 50.000000 inf 1.000000 -uR 6920.000000 50.000000 inf 1.000000 -uR 6930.000000 50.000000 inf 1.000000 -uR 6940.000000 50.000000 inf 1.000000 -uR 6950.000000 50.000000 inf 1.000000 -uR 6960.000000 50.000000 inf 1.000000 -uR 6970.000000 50.000000 inf 1.000000 -uR 6980.000000 50.000000 inf 1.000000 -uR 6990.000000 50.000000 inf 1.000000 -uR 7000.000000 50.000000 inf 1.000000 -uR 7010.000000 50.000000 inf 1.000000 -uR 7020.000000 50.000000 inf 1.000000 -uR 7030.000000 50.000000 inf 1.000000 -uR 7040.000000 50.000000 inf 1.000000 -uR 7050.000000 50.000000 inf 1.000000 -uR 7060.000000 50.000000 inf 1.000000 -uR 7070.000000 50.000000 inf 1.000000 -uR 7080.000000 50.000000 inf 1.000000 -uR 7090.000000 50.000000 inf 1.000000 -uR 7100.000000 50.000000 inf 1.000000 -uR 7110.000000 50.000000 inf 1.000000 -uR 7120.000000 50.000000 inf 1.000000 -uR 7130.000000 50.000000 inf 1.000000 -uR 7140.000000 50.000000 inf 1.000000 -uR 7150.000000 50.000000 inf 1.000000 -uR 7160.000000 50.000000 inf 1.000000 -uR 7170.000000 50.000000 inf 1.000000 -uR 7180.000000 50.000000 inf 1.000000 -uR 7190.000000 50.000000 inf 1.000000 -uR 7200.000000 50.000000 inf 1.000000 -uR 7210.000000 50.000000 inf 1.000000 -uR 7220.000000 50.000000 inf 1.000000 -uR 7230.000000 50.000000 inf 1.000000 -uR 7240.000000 50.000000 inf 1.000000 -uR 7250.000000 50.000000 inf 1.000000 -uR 7260.000000 50.000000 inf 1.000000 -uR 7270.000000 50.000000 inf 1.000000 -uR 7280.000000 50.000000 inf 1.000000 -uR 7290.000000 50.000000 inf 1.000000 -uR 7300.000000 50.000000 inf 1.000000 -uR 7310.000000 50.000000 inf 1.000000 -uR 7320.000000 50.000000 inf 1.000000 -uR 7330.000000 50.000000 inf 1.000000 -uR 7340.000000 50.000000 inf 1.000000 -uR 7350.000000 50.000000 inf 1.000000 -uR 7360.000000 50.000000 inf 1.000000 -uR 7370.000000 50.000000 inf 1.000000 -uR 7380.000000 50.000000 inf 1.000000 -uR 7390.000000 50.000000 inf 1.000000 -uR 7400.000000 50.000000 inf 1.000000 -uR 7410.000000 50.000000 inf 1.000000 -uR 7420.000000 50.000000 inf 1.000000 -uR 7430.000000 50.000000 inf 1.000000 -uR 7440.000000 50.000000 inf 1.000000 -uR 7450.000000 50.000000 inf 1.000000 -uR 7460.000000 50.000000 inf 1.000000 -uR 7470.000000 50.000000 inf 1.000000 -uR 7480.000000 50.000000 inf 1.000000 -uR 7490.000000 50.000000 inf 1.000000 -uR 7500.000000 50.000000 inf 1.000000 -uR 7510.000000 50.000000 inf 1.000000 -uR 7520.000000 50.000000 inf 1.000000 -uR 7530.000000 50.000000 inf 1.000000 -uR 7540.000000 50.000000 inf 1.000000 -uR 7550.000000 50.000000 inf 1.000000 -uR 7560.000000 50.000000 inf 1.000000 -uR 7570.000000 50.000000 inf 1.000000 -uR 7580.000000 50.000000 inf 1.000000 -uR 7590.000000 50.000000 inf 1.000000 -uR 7600.000000 50.000000 inf 1.000000 -uR 7610.000000 50.000000 inf 1.000000 -uR 7620.000000 50.000000 inf 1.000000 -uR 7630.000000 50.000000 inf 1.000000 -uR 7640.000000 50.000000 inf 1.000000 -uR 7650.000000 50.000000 inf 1.000000 -uR 7660.000000 50.000000 inf 1.000000 -uR 7670.000000 50.000000 inf 1.000000 -uR 7680.000000 50.000000 inf 1.000000 -uR 7690.000000 50.000000 inf 1.000000 -uR 7700.000000 50.000000 inf 1.000000 -uR 7710.000000 50.000000 inf 1.000000 -uR 7720.000000 50.000000 inf 1.000000 -uR 7730.000000 50.000000 inf 1.000000 -uR 7740.000000 50.000000 inf 1.000000 -uR 7750.000000 50.000000 inf 1.000000 -uR 7760.000000 50.000000 inf 1.000000 -uR 7770.000000 50.000000 inf 1.000000 -uR 7780.000000 50.000000 inf 1.000000 -uR 7790.000000 50.000000 inf 1.000000 -uR 7800.000000 50.000000 inf 1.000000 -uR 7810.000000 50.000000 inf 1.000000 -uR 7820.000000 50.000000 inf 1.000000 -uR 7830.000000 50.000000 inf 1.000000 -uR 7840.000000 50.000000 inf 1.000000 -uR 7850.000000 50.000000 inf 1.000000 -uR 7860.000000 50.000000 inf 1.000000 -uR 7870.000000 50.000000 inf 1.000000 -uR 7880.000000 50.000000 inf 1.000000 -uR 7890.000000 50.000000 inf 1.000000 -uR 7900.000000 50.000000 inf 1.000000 -uR 7910.000000 50.000000 inf 1.000000 -uR 7920.000000 50.000000 inf 1.000000 -uR 7930.000000 50.000000 inf 1.000000 -uR 7940.000000 50.000000 inf 1.000000 -uR 7950.000000 50.000000 inf 1.000000 -uR 7960.000000 50.000000 inf 1.000000 -uR 7970.000000 50.000000 inf 1.000000 -uR 7980.000000 50.000000 inf 1.000000 -uR 7990.000000 50.000000 inf 1.000000 -uR 8000.000000 50.000000 inf 1.000000 -uR 8010.000000 50.000000 inf 1.000000 -uR 8020.000000 50.000000 inf 1.000000 -uR 8030.000000 50.000000 inf 1.000000 -uR 8040.000000 50.000000 inf 1.000000 -uR 8050.000000 50.000000 inf 1.000000 -uR 8060.000000 50.000000 inf 1.000000 -uR 8070.000000 50.000000 inf 1.000000 -uR 8080.000000 50.000000 inf 1.000000 -uR 8090.000000 50.000000 inf 1.000000 -uR 8100.000000 50.000000 inf 1.000000 -uR 8110.000000 50.000000 inf 1.000000 -uR 8120.000000 50.000000 inf 1.000000 -uR 8130.000000 50.000000 inf 1.000000 -uR 8140.000000 50.000000 inf 1.000000 -uR 8150.000000 50.000000 inf 1.000000 -uR 8160.000000 50.000000 inf 1.000000 -uR 8170.000000 50.000000 inf 1.000000 -uR 8180.000000 50.000000 inf 1.000000 -uR 8190.000000 50.000000 inf 1.000000 -uR 8200.000000 50.000000 inf 1.000000 -uR 8210.000000 50.000000 inf 1.000000 -uR 8220.000000 50.000000 inf 1.000000 -uR 8230.000000 50.000000 inf 1.000000 -uR 8240.000000 50.000000 inf 1.000000 -uR 8250.000000 50.000000 inf 1.000000 -uR 8260.000000 50.000000 inf 1.000000 -uR 8270.000000 50.000000 inf 1.000000 -uR 8280.000000 50.000000 inf 1.000000 -uR 8290.000000 50.000000 inf 1.000000 -uR 8300.000000 50.000000 inf 1.000000 -uR 8310.000000 50.000000 inf 1.000000 -uR 8320.000000 50.000000 inf 1.000000 -uR 8330.000000 50.000000 inf 1.000000 -uR 8340.000000 50.000000 inf 1.000000 -uR 8350.000000 50.000000 inf 1.000000 -uR 8360.000000 50.000000 inf 1.000000 -uR 8370.000000 50.000000 inf 1.000000 -uR 8380.000000 50.000000 inf 1.000000 -uR 8390.000000 50.000000 inf 1.000000 -uR 8400.000000 50.000000 inf 1.000000 -uR 8410.000000 50.000000 inf 1.000000 -uR 8420.000000 50.000000 inf 1.000000 -uR 8430.000000 50.000000 inf 1.000000 -uR 8440.000000 50.000000 inf 1.000000 -uR 8450.000000 50.000000 inf 1.000000 -uR 8460.000000 50.000000 inf 1.000000 -uR 8470.000000 50.000000 inf 1.000000 -uR 8480.000000 50.000000 inf 1.000000 -uR 8490.000000 50.000000 inf 1.000000 -uR 8500.000000 50.000000 inf 1.000000 -uR 8510.000000 50.000000 inf 1.000000 -uR 8520.000000 50.000000 inf 1.000000 -uR 8530.000000 50.000000 inf 1.000000 -uR 8540.000000 50.000000 inf 1.000000 -uR 8550.000000 50.000000 inf 1.000000 -uR 8560.000000 50.000000 inf 1.000000 -uR 8570.000000 50.000000 inf 1.000000 -uR 8580.000000 50.000000 inf 1.000000 -uR 8590.000000 50.000000 inf 1.000000 -uR 8600.000000 50.000000 inf 1.000000 -uR 8610.000000 50.000000 inf 1.000000 -uR 8620.000000 50.000000 inf 1.000000 -uR 8630.000000 50.000000 inf 1.000000 -uR 8640.000000 50.000000 inf 1.000000 -uR 8650.000000 50.000000 inf 1.000000 -uR 8660.000000 50.000000 inf 1.000000 -uR 8670.000000 50.000000 inf 1.000000 -uR 8680.000000 50.000000 inf 1.000000 -uR 8690.000000 50.000000 inf 1.000000 -uR 8700.000000 50.000000 inf 1.000000 -uR 8710.000000 50.000000 inf 1.000000 -uR 8720.000000 50.000000 inf 1.000000 -uR 8730.000000 50.000000 inf 1.000000 -uR 8740.000000 50.000000 inf 1.000000 -uR 8750.000000 50.000000 inf 1.000000 -uR 8760.000000 50.000000 inf 1.000000 -uR 8770.000000 50.000000 inf 1.000000 -uR 8780.000000 50.000000 inf 1.000000 -uR 8790.000000 50.000000 inf 1.000000 -uR 8800.000000 50.000000 inf 1.000000 -uR 8810.000000 50.000000 inf 1.000000 -uR 8820.000000 50.000000 inf 1.000000 -uR 8830.000000 50.000000 inf 1.000000 -uR 8840.000000 50.000000 inf 1.000000 -uR 8850.000000 50.000000 inf 1.000000 -uR 8860.000000 50.000000 inf 1.000000 -uR 8870.000000 50.000000 inf 1.000000 -uR 8880.000000 50.000000 inf 1.000000 -uR 8890.000000 50.000000 inf 1.000000 -uR 8900.000000 50.000000 inf 1.000000 -uR 8910.000000 50.000000 inf 1.000000 -uR 8920.000000 50.000000 inf 1.000000 -uR 8930.000000 50.000000 inf 1.000000 -uR 8940.000000 50.000000 inf 1.000000 -uR 8950.000000 50.000000 inf 1.000000 -uR 8960.000000 50.000000 inf 1.000000 -uR 8970.000000 50.000000 inf 1.000000 -uR 8980.000000 50.000000 inf 1.000000 -uR 8990.000000 50.000000 inf 1.000000 -uR 9000.000000 50.000000 inf 1.000000 -uR 9010.000000 50.000000 inf 1.000000 -uR 9020.000000 50.000000 inf 1.000000 -uR 9030.000000 50.000000 inf 1.000000 -uR 9040.000000 50.000000 inf 1.000000 -uR 9050.000000 50.000000 inf 1.000000 -uR 9060.000000 50.000000 inf 1.000000 -uR 9070.000000 50.000000 inf 1.000000 -uR 9080.000000 50.000000 inf 1.000000 -uR 9090.000000 50.000000 inf 1.000000 -uR 9100.000000 50.000000 inf 1.000000 -uR 9110.000000 50.000000 inf 1.000000 -uR 9120.000000 50.000000 inf 1.000000 -uR 9130.000000 50.000000 inf 1.000000 -uR 9140.000000 50.000000 inf 1.000000 -uR 9150.000000 50.000000 inf 1.000000 -uR 9160.000000 50.000000 inf 1.000000 -uR 9170.000000 50.000000 inf 1.000000 -uR 9180.000000 50.000000 inf 1.000000 -uR 9190.000000 50.000000 inf 1.000000 -uR 9200.000000 50.000000 inf 1.000000 -uR 9210.000000 50.000000 inf 1.000000 -uR 9220.000000 50.000000 inf 1.000000 -uR 9230.000000 50.000000 inf 1.000000 -uR 9240.000000 50.000000 inf 1.000000 -uR 9250.000000 50.000000 inf 1.000000 -uR 9260.000000 50.000000 inf 1.000000 -uR 9270.000000 50.000000 inf 1.000000 -uR 9280.000000 50.000000 inf 1.000000 -uR 9290.000000 50.000000 inf 1.000000 -uR 9300.000000 50.000000 inf 1.000000 -uR 9310.000000 50.000000 inf 1.000000 -uR 9320.000000 50.000000 inf 1.000000 -uR 9330.000000 50.000000 inf 1.000000 -uR 9340.000000 50.000000 inf 1.000000 -uR 9350.000000 50.000000 inf 1.000000 -uR 9360.000000 50.000000 inf 1.000000 -uR 9370.000000 50.000000 inf 1.000000 -uR 9380.000000 50.000000 inf 1.000000 -uR 9390.000000 50.000000 inf 1.000000 -uR 9400.000000 50.000000 inf 1.000000 -uR 9410.000000 50.000000 inf 1.000000 -uR 9420.000000 50.000000 inf 1.000000 -uR 9430.000000 50.000000 inf 1.000000 -uR 9440.000000 50.000000 inf 1.000000 -uR 9450.000000 50.000000 inf 1.000000 -uR 9460.000000 50.000000 inf 1.000000 -uR 9470.000000 50.000000 inf 1.000000 -uR 9480.000000 50.000000 inf 1.000000 -uR 9490.000000 50.000000 inf 1.000000 -uR 9500.000000 50.000000 inf 1.000000 -uR 9510.000000 50.000000 inf 1.000000 -uR 9520.000000 50.000000 inf 1.000000 -uR 9530.000000 50.000000 inf 1.000000 -uR 9540.000000 50.000000 inf 1.000000 -uR 9550.000000 50.000000 inf 1.000000 -uR 9560.000000 50.000000 inf 1.000000 -uR 9570.000000 50.000000 inf 1.000000 -uR 9580.000000 50.000000 inf 1.000000 -uR 9590.000000 50.000000 inf 1.000000 -uR 9600.000000 50.000000 inf 1.000000 -uR 9610.000000 50.000000 inf 1.000000 -uR 9620.000000 50.000000 inf 1.000000 -uR 9630.000000 50.000000 inf 1.000000 -uR 9640.000000 50.000000 inf 1.000000 -uR 9650.000000 50.000000 inf 1.000000 -uR 9660.000000 50.000000 inf 1.000000 -uR 9670.000000 50.000000 inf 1.000000 -uR 9680.000000 50.000000 inf 1.000000 -uR 9690.000000 50.000000 inf 1.000000 -uR 9700.000000 50.000000 inf 1.000000 -uR 9710.000000 50.000000 inf 1.000000 -uR 9720.000000 50.000000 inf 1.000000 -uR 9730.000000 50.000000 inf 1.000000 -uR 9740.000000 50.000000 inf 1.000000 -uR 9750.000000 50.000000 inf 1.000000 -uR 9760.000000 50.000000 inf 1.000000 -uR 9770.000000 50.000000 inf 1.000000 -uR 9780.000000 50.000000 inf 1.000000 -uR 9790.000000 50.000000 inf 1.000000 -uR 9800.000000 50.000000 inf 1.000000 -uR 9810.000000 50.000000 inf 1.000000 -uR 9820.000000 50.000000 inf 1.000000 -uR 9830.000000 50.000000 inf 1.000000 -uR 9840.000000 50.000000 inf 1.000000 -uR 9850.000000 50.000000 inf 1.000000 -uR 9860.000000 50.000000 inf 1.000000 -uR 9870.000000 50.000000 inf 1.000000 -uR 9880.000000 50.000000 inf 1.000000 -uR 9890.000000 50.000000 inf 1.000000 -uR 9900.000000 50.000000 inf 1.000000 -uR 9910.000000 50.000000 inf 1.000000 -uR 9920.000000 50.000000 inf 1.000000 -uR 9930.000000 50.000000 inf 1.000000 -uR 9940.000000 50.000000 inf 1.000000 -uR 9950.000000 50.000000 inf 1.000000 -uR 9960.000000 50.000000 inf 1.000000 -uR 9970.000000 50.000000 inf 1.000000 -uR 9980.000000 50.000000 inf 1.000000 -uR 9990.000000 50.000000 inf 1.000000 -uR 10000.000000 50.000000 inf 1.000000 -uR 10025.000000 50.000000 inf 1.000000 -uR 10050.000000 50.000000 inf 1.000000 -uR 10075.000000 50.000000 inf 1.000000 -uR 10100.000000 50.000000 inf 1.000000 -uR 10125.000000 50.000000 inf 1.000000 -uR 10150.000000 50.000000 inf 1.000000 -uR 10175.000000 50.000000 inf 1.000000 -uR 10200.000000 50.000000 inf 1.000000 -uR 10225.000000 50.000000 inf 1.000000 -uR 10250.000000 50.000000 inf 1.000000 -uR 10275.000000 50.000000 inf 1.000000 -uR 10300.000000 50.000000 inf 1.000000 -uR 10325.000000 50.000000 inf 1.000000 -uR 10350.000000 50.000000 inf 1.000000 -uR 10375.000000 50.000000 inf 1.000000 -uR 10400.000000 50.000000 inf 1.000000 -uR 10425.000000 50.000000 inf 1.000000 -uR 10450.000000 50.000000 inf 1.000000 -uR 10475.000000 50.000000 inf 1.000000 -uR 10500.000000 50.000000 inf 1.000000 -uR 10525.000000 50.000000 inf 1.000000 -uR 10550.000000 50.000000 inf 1.000000 -uR 10575.000000 50.000000 inf 1.000000 -uR 10600.000000 50.000000 inf 1.000000 -uR 10625.000000 50.000000 inf 1.000000 -uR 10650.000000 50.000000 inf 1.000000 -uR 10675.000000 50.000000 inf 1.000000 -uR 10700.000000 50.000000 inf 1.000000 -uR 10725.000000 50.000000 inf 1.000000 -uR 10750.000000 50.000000 inf 1.000000 -uR 10775.000000 50.000000 inf 1.000000 -uR 10800.000000 50.000000 inf 1.000000 -uR 10825.000000 50.000000 inf 1.000000 -uR 10850.000000 50.000000 inf 1.000000 -uR 10875.000000 50.000000 inf 1.000000 -uR 10900.000000 50.000000 inf 1.000000 -uR 10925.000000 50.000000 inf 1.000000 -uR 10950.000000 50.000000 inf 1.000000 -uR 10975.000000 50.000000 inf 1.000000 -uR 11000.000000 50.000000 inf 1.000000 -uR 11025.000000 50.000000 inf 1.000000 -uR 11050.000000 50.000000 inf 1.000000 -uR 11075.000000 50.000000 inf 1.000000 -uR 11100.000000 50.000000 inf 1.000000 -uR 11125.000000 50.000000 inf 1.000000 -uR 11150.000000 50.000000 inf 1.000000 -uR 11175.000000 50.000000 inf 1.000000 -uR 11200.000000 50.000000 inf 1.000000 -uR 11225.000000 50.000000 inf 1.000000 -uR 11250.000000 50.000000 inf 1.000000 -uR 11275.000000 50.000000 inf 1.000000 -uR 11300.000000 50.000000 inf 1.000000 -uR 11325.000000 50.000000 inf 1.000000 -uR 11350.000000 50.000000 inf 1.000000 -uR 11375.000000 50.000000 inf 1.000000 -uR 11400.000000 50.000000 inf 1.000000 -uR 11425.000000 50.000000 inf 1.000000 -uR 11450.000000 50.000000 inf 1.000000 -uR 11475.000000 50.000000 inf 1.000000 -uR 11500.000000 50.000000 inf 1.000000 -uR 11525.000000 50.000000 inf 1.000000 -uR 11550.000000 50.000000 inf 1.000000 -uR 11575.000000 50.000000 inf 1.000000 -uR 11600.000000 50.000000 inf 1.000000 -uR 11625.000000 50.000000 inf 1.000000 -uR 11650.000000 50.000000 inf 1.000000 -uR 11675.000000 50.000000 inf 1.000000 -uR 11700.000000 50.000000 inf 1.000000 -uR 11725.000000 50.000000 inf 1.000000 -uR 11750.000000 50.000000 inf 1.000000 -uR 11775.000000 50.000000 inf 1.000000 -uR 11800.000000 50.000000 inf 1.000000 -uR 11825.000000 50.000000 inf 1.000000 -uR 11850.000000 50.000000 inf 1.000000 -uR 11875.000000 50.000000 inf 1.000000 -uR 11900.000000 50.000000 inf 1.000000 -uR 11925.000000 50.000000 inf 1.000000 -uR 11950.000000 50.000000 inf 1.000000 -uR 11975.000000 50.000000 inf 1.000000 -uR 12000.000000 50.000000 inf 1.000000 -uR 12025.000000 50.000000 inf 1.000000 -uR 12050.000000 50.000000 inf 1.000000 -uR 12075.000000 50.000000 inf 1.000000 -uR 12100.000000 50.000000 inf 1.000000 -uR 12125.000000 50.000000 inf 1.000000 -uR 12150.000000 50.000000 inf 1.000000 -uR 12175.000000 50.000000 inf 1.000000 -uR 12200.000000 50.000000 inf 1.000000 -uR 12225.000000 50.000000 inf 1.000000 -uR 12250.000000 50.000000 inf 1.000000 -uR 12275.000000 50.000000 inf 1.000000 -uR 12300.000000 50.000000 inf 1.000000 -uR 12325.000000 50.000000 inf 1.000000 -uR 12350.000000 50.000000 inf 1.000000 -uR 12375.000000 50.000000 inf 1.000000 -uR 12400.000000 50.000000 inf 1.000000 -uR 12425.000000 50.000000 inf 1.000000 -uR 12450.000000 50.000000 inf 1.000000 -uR 12475.000000 50.000000 inf 1.000000 -uR 12500.000000 50.000000 inf 1.000000 -uR 12525.000000 50.000000 inf 1.000000 -uR 12550.000000 50.000000 inf 1.000000 -uR 12575.000000 50.000000 inf 1.000000 -uR 12600.000000 50.000000 inf 1.000000 -uR 12625.000000 50.000000 inf 1.000000 -uR 12650.000000 50.000000 inf 1.000000 -uR 12675.000000 50.000000 inf 1.000000 -uR 12700.000000 50.000000 inf 1.000000 -uR 12725.000000 50.000000 inf 1.000000 -uR 12750.000000 50.000000 inf 1.000000 -uR 12775.000000 50.000000 inf 1.000000 -uR 12800.000000 50.000000 inf 1.000000 -uR 12825.000000 50.000000 inf 1.000000 -uR 12850.000000 50.000000 inf 1.000000 -uR 12875.000000 50.000000 inf 1.000000 -uR 12900.000000 50.000000 inf 1.000000 -uR 12925.000000 50.000000 inf 1.000000 -uR 12950.000000 50.000000 inf 1.000000 -uR 12975.000000 50.000000 inf 1.000000 -uR 13000.000000 50.000000 inf 1.000000 -uR 13025.000000 50.000000 inf 1.000000 -uR 13050.000000 50.000000 inf 1.000000 -uR 13075.000000 50.000000 inf 1.000000 -uR 13100.000000 50.000000 inf 1.000000 -uR 13125.000000 50.000000 inf 1.000000 -uR 13150.000000 50.000000 inf 1.000000 -uR 13175.000000 50.000000 inf 1.000000 -uR 13200.000000 50.000000 inf 1.000000 -uR 13225.000000 50.000000 inf 1.000000 -uR 13250.000000 50.000000 inf 1.000000 -uR 13275.000000 50.000000 inf 1.000000 -uR 13300.000000 50.000000 inf 1.000000 -uR 13325.000000 50.000000 inf 1.000000 -uR 13350.000000 50.000000 inf 1.000000 -uR 13375.000000 50.000000 inf 1.000000 -uR 13400.000000 50.000000 inf 1.000000 -uR 13425.000000 50.000000 inf 1.000000 -uR 13450.000000 50.000000 inf 1.000000 -uR 13475.000000 50.000000 inf 1.000000 -uR 13500.000000 50.000000 inf 1.000000 -uR 13525.000000 50.000000 inf 1.000000 -uR 13550.000000 50.000000 inf 1.000000 -uR 13575.000000 50.000000 inf 1.000000 -uR 13600.000000 50.000000 inf 1.000000 -uR 13625.000000 50.000000 inf 1.000000 -uR 13650.000000 50.000000 inf 1.000000 -uR 13675.000000 50.000000 inf 1.000000 -uR 13700.000000 50.000000 inf 1.000000 -uR 13725.000000 50.000000 inf 1.000000 -uR 13750.000000 50.000000 inf 1.000000 -uR 13775.000000 50.000000 inf 1.000000 -uR 13800.000000 50.000000 inf 1.000000 -uR 13825.000000 50.000000 inf 1.000000 -uR 13850.000000 50.000000 inf 1.000000 -uR 13875.000000 50.000000 inf 1.000000 -uR 13900.000000 50.000000 inf 1.000000 -uR 13925.000000 50.000000 inf 1.000000 -uR 13950.000000 50.000000 inf 1.000000 -uR 13975.000000 50.000000 inf 1.000000 -uR 14000.000000 50.000000 inf 1.000000 -uR 14025.000000 50.000000 inf 1.000000 -uR 14050.000000 50.000000 inf 1.000000 -uR 14075.000000 50.000000 inf 1.000000 -uR 14100.000000 50.000000 inf 1.000000 -uR 14125.000000 50.000000 inf 1.000000 -uR 14150.000000 50.000000 inf 1.000000 -uR 14175.000000 50.000000 inf 1.000000 -uR 14200.000000 50.000000 inf 1.000000 -uR 14225.000000 50.000000 inf 1.000000 -uR 14250.000000 50.000000 inf 1.000000 -uR 14275.000000 50.000000 inf 1.000000 -uR 14300.000000 50.000000 inf 1.000000 -uR 14325.000000 50.000000 inf 1.000000 -uR 14350.000000 50.000000 inf 1.000000 -uR 14375.000000 50.000000 inf 1.000000 -uR 14400.000000 50.000000 inf 1.000000 -uR 14425.000000 50.000000 inf 1.000000 -uR 14450.000000 50.000000 inf 1.000000 -uR 14475.000000 50.000000 inf 1.000000 -uR 14500.000000 50.000000 inf 1.000000 -uR 14525.000000 50.000000 inf 1.000000 -uR 14550.000000 50.000000 inf 1.000000 -uR 14575.000000 50.000000 inf 1.000000 -uR 14600.000000 50.000000 inf 1.000000 -uR 14625.000000 50.000000 inf 1.000000 -uR 14650.000000 50.000000 inf 1.000000 -uR 14675.000000 50.000000 inf 1.000000 -uR 14700.000000 50.000000 inf 1.000000 -uR 14725.000000 50.000000 inf 1.000000 -uR 14750.000000 50.000000 inf 1.000000 -uR 14775.000000 50.000000 inf 1.000000 -uR 14800.000000 50.000000 inf 1.000000 -uR 14825.000000 50.000000 inf 1.000000 -uR 14850.000000 50.000000 inf 1.000000 -uR 14875.000000 50.000000 inf 1.000000 -uR 14900.000000 50.000000 inf 1.000000 -uR 14925.000000 50.000000 inf 1.000000 -uR 14950.000000 50.000000 inf 1.000000 -uR 14975.000000 50.000000 inf 1.000000 -uR 15000.000000 50.000000 inf 1.000000 -uR 15025.000000 50.000000 inf 1.000000 -uR 15050.000000 50.000000 inf 1.000000 -uR 15075.000000 50.000000 inf 1.000000 -uR 15100.000000 50.000000 inf 1.000000 -uR 15125.000000 50.000000 inf 1.000000 -uR 15150.000000 50.000000 inf 1.000000 -uR 15175.000000 50.000000 inf 1.000000 -uR 15200.000000 50.000000 inf 1.000000 -uR 15225.000000 50.000000 inf 1.000000 -uR 15250.000000 50.000000 inf 1.000000 -uR 15275.000000 50.000000 inf 1.000000 -uR 15300.000000 50.000000 inf 1.000000 -uR 15325.000000 50.000000 inf 1.000000 -uR 15350.000000 50.000000 inf 1.000000 -uR 15375.000000 50.000000 inf 1.000000 -uR 15400.000000 50.000000 inf 1.000000 -uR 15425.000000 50.000000 inf 1.000000 -uR 15450.000000 50.000000 inf 1.000000 -uR 15475.000000 50.000000 inf 1.000000 -uR 15500.000000 50.000000 inf 1.000000 -uR 15525.000000 50.000000 inf 1.000000 -uR 15550.000000 50.000000 inf 1.000000 -uR 15575.000000 50.000000 inf 1.000000 -uR 15600.000000 50.000000 inf 1.000000 -uR 15625.000000 50.000000 inf 1.000000 -uR 15650.000000 50.000000 inf 1.000000 -uR 15675.000000 50.000000 inf 1.000000 -uR 15700.000000 50.000000 inf 1.000000 -uR 15725.000000 50.000000 inf 1.000000 -uR 15750.000000 50.000000 inf 1.000000 -uR 15775.000000 50.000000 inf 1.000000 -uR 15800.000000 50.000000 inf 1.000000 -uR 15825.000000 50.000000 inf 1.000000 -uR 15850.000000 50.000000 inf 1.000000 -uR 15875.000000 50.000000 inf 1.000000 -uR 15900.000000 50.000000 inf 1.000000 -uR 15925.000000 50.000000 inf 1.000000 -uR 15950.000000 50.000000 inf 1.000000 -uR 15975.000000 50.000000 inf 1.000000 -uR 16000.000000 50.000000 inf 1.000000 -uR 16025.000000 50.000000 inf 1.000000 -uR 16050.000000 50.000000 inf 1.000000 -uR 16075.000000 50.000000 inf 1.000000 -uR 16100.000000 50.000000 inf 1.000000 -uR 16125.000000 50.000000 inf 1.000000 -uR 16150.000000 50.000000 inf 1.000000 -uR 16175.000000 50.000000 inf 1.000000 -uR 16200.000000 50.000000 inf 1.000000 -uR 16225.000000 50.000000 inf 1.000000 -uR 16250.000000 50.000000 inf 1.000000 -uR 16275.000000 50.000000 inf 1.000000 -uR 16300.000000 50.000000 inf 1.000000 -uR 16325.000000 50.000000 inf 1.000000 -uR 16350.000000 50.000000 inf 1.000000 -uR 16375.000000 50.000000 inf 1.000000 -uR 16400.000000 50.000000 inf 1.000000 -uR 16425.000000 50.000000 inf 1.000000 -uR 16450.000000 50.000000 inf 1.000000 -uR 16475.000000 50.000000 inf 1.000000 -uR 16500.000000 50.000000 inf 1.000000 -uR 16525.000000 50.000000 inf 1.000000 -uR 16550.000000 50.000000 inf 1.000000 -uR 16575.000000 50.000000 inf 1.000000 -uR 16600.000000 50.000000 inf 1.000000 -uR 16625.000000 50.000000 inf 1.000000 -uR 16650.000000 50.000000 inf 1.000000 -uR 16675.000000 50.000000 inf 1.000000 -uR 16700.000000 50.000000 inf 1.000000 -uR 16725.000000 50.000000 inf 1.000000 -uR 16750.000000 50.000000 inf 1.000000 -uR 16775.000000 50.000000 inf 1.000000 -uR 16800.000000 50.000000 inf 1.000000 -uR 16825.000000 50.000000 inf 1.000000 -uR 16850.000000 50.000000 inf 1.000000 -uR 16875.000000 50.000000 inf 1.000000 -uR 16900.000000 50.000000 inf 1.000000 -uR 16925.000000 50.000000 inf 1.000000 -uR 16950.000000 50.000000 inf 1.000000 -uR 16975.000000 50.000000 inf 1.000000 -uR 17000.000000 50.000000 inf 1.000000 -uR 1930.000000 60.000000 inf 1.000000 -uR 1940.000000 60.000000 inf 1.000000 -uR 1950.000000 60.000000 inf 1.000000 -uR 1960.000000 60.000000 inf 1.000000 -uR 1970.000000 60.000000 inf 1.000000 -uR 1980.000000 60.000000 inf 1.000000 -uR 1990.000000 60.000000 inf 1.000000 -uR 2000.000000 60.000000 inf 1.000000 -uR 2010.000000 60.000000 inf 1.000000 -uR 2020.000000 60.000000 inf 1.000000 -uR 2030.000000 60.000000 inf 1.000000 -uR 2040.000000 60.000000 inf 1.000000 -uR 2050.000000 60.000000 inf 1.000000 -uR 2060.000000 60.000000 inf 1.000000 -uR 2070.000000 60.000000 inf 1.000000 -uR 2080.000000 60.000000 inf 1.000000 -uR 2090.000000 60.000000 inf 1.000000 -uR 2100.000000 60.000000 inf 1.000000 -uR 2110.000000 60.000000 inf 1.000000 -uR 2120.000000 60.000000 inf 1.000000 -uR 2130.000000 60.000000 inf 1.000000 -uR 2140.000000 60.000000 inf 1.000000 -uR 2150.000000 60.000000 inf 1.000000 -uR 2160.000000 60.000000 inf 1.000000 -uR 2170.000000 60.000000 inf 1.000000 -uR 2180.000000 60.000000 inf 1.000000 -uR 2190.000000 60.000000 inf 1.000000 -uR 2200.000000 60.000000 inf 1.000000 -uR 2210.000000 60.000000 inf 1.000000 -uR 2220.000000 60.000000 inf 1.000000 -uR 2230.000000 60.000000 inf 1.000000 -uR 2240.000000 60.000000 inf 1.000000 -uR 2250.000000 60.000000 inf 1.000000 -uR 2260.000000 60.000000 inf 1.000000 -uR 2270.000000 60.000000 inf 1.000000 -uR 2280.000000 60.000000 inf 1.000000 -uR 2290.000000 60.000000 inf 1.000000 -uR 2300.000000 60.000000 inf 1.000000 -uR 2310.000000 60.000000 inf 1.000000 -uR 2320.000000 60.000000 inf 1.000000 -uR 2330.000000 60.000000 inf 1.000000 -uR 2340.000000 60.000000 inf 1.000000 -uR 2350.000000 60.000000 inf 1.000000 -uR 2360.000000 60.000000 inf 1.000000 -uR 2370.000000 60.000000 inf 1.000000 -uR 2380.000000 60.000000 inf 1.000000 -uR 2390.000000 60.000000 inf 1.000000 -uR 2400.000000 60.000000 inf 1.000000 -uR 2410.000000 60.000000 inf 1.000000 -uR 2420.000000 60.000000 inf 1.000000 -uR 2430.000000 60.000000 inf 1.000000 -uR 2440.000000 60.000000 inf 1.000000 -uR 2450.000000 60.000000 inf 1.000000 -uR 2460.000000 60.000000 inf 1.000000 -uR 2470.000000 60.000000 inf 1.000000 -uR 2480.000000 60.000000 inf 1.000000 -uR 2490.000000 60.000000 inf 1.000000 -uR 2500.000000 60.000000 inf 1.000000 -uR 2510.000000 60.000000 inf 1.000000 -uR 2520.000000 60.000000 inf 1.000000 -uR 2530.000000 60.000000 inf 1.000000 -uR 2540.000000 60.000000 inf 1.000000 -uR 2550.000000 60.000000 inf 1.000000 -uR 2560.000000 60.000000 inf 1.000000 -uR 2570.000000 60.000000 inf 1.000000 -uR 2580.000000 60.000000 inf 1.000000 -uR 2590.000000 60.000000 inf 1.000000 -uR 2600.000000 60.000000 inf 1.000000 -uR 2610.000000 60.000000 inf 1.000000 -uR 2620.000000 60.000000 inf 1.000000 -uR 2630.000000 60.000000 inf 1.000000 -uR 2640.000000 60.000000 inf 1.000000 -uR 2650.000000 60.000000 inf 1.000000 -uR 2660.000000 60.000000 inf 1.000000 -uR 2670.000000 60.000000 inf 1.000000 -uR 2680.000000 60.000000 inf 1.000000 -uR 2690.000000 60.000000 inf 1.000000 -uR 2700.000000 60.000000 inf 1.000000 -uR 2710.000000 60.000000 inf 1.000000 -uR 2720.000000 60.000000 inf 1.000000 -uR 2730.000000 60.000000 inf 1.000000 -uR 2740.000000 60.000000 inf 1.000000 -uR 2750.000000 60.000000 inf 1.000000 -uR 2760.000000 60.000000 inf 1.000000 -uR 2770.000000 60.000000 inf 1.000000 -uR 2780.000000 60.000000 inf 1.000000 -uR 2790.000000 60.000000 inf 1.000000 -uR 2800.000000 60.000000 inf 1.000000 -uR 2810.000000 60.000000 inf 1.000000 -uR 2820.000000 60.000000 inf 1.000000 -uR 2830.000000 60.000000 inf 1.000000 -uR 2840.000000 60.000000 inf 1.000000 -uR 2850.000000 60.000000 inf 1.000000 -uR 2860.000000 60.000000 inf 1.000000 -uR 2870.000000 60.000000 inf 1.000000 -uR 2880.000000 60.000000 inf 1.000000 -uR 2890.000000 60.000000 inf 1.000000 -uR 2900.000000 60.000000 inf 1.000000 -uR 2910.000000 60.000000 inf 1.000000 -uR 2920.000000 60.000000 inf 1.000000 -uR 2930.000000 60.000000 inf 1.000000 -uR 2940.000000 60.000000 inf 1.000000 -uR 2950.000000 60.000000 inf 1.000000 -uR 2960.000000 60.000000 inf 1.000000 -uR 2970.000000 60.000000 inf 1.000000 -uR 2980.000000 60.000000 inf 1.000000 -uR 2990.000000 60.000000 inf 1.000000 -uR 3000.000000 60.000000 inf 1.000000 -uR 3010.000000 60.000000 inf 1.000000 -uR 3020.000000 60.000000 inf 1.000000 -uR 3030.000000 60.000000 inf 1.000000 -uR 3040.000000 60.000000 inf 1.000000 -uR 3050.000000 60.000000 inf 1.000000 -uR 3060.000000 60.000000 inf 1.000000 -uR 3070.000000 60.000000 inf 1.000000 -uR 3080.000000 60.000000 inf 1.000000 -uR 3090.000000 60.000000 inf 1.000000 -uR 3100.000000 60.000000 inf 1.000000 -uR 3110.000000 60.000000 inf 1.000000 -uR 3120.000000 60.000000 inf 1.000000 -uR 3130.000000 60.000000 inf 1.000000 -uR 3140.000000 60.000000 inf 1.000000 -uR 3150.000000 60.000000 inf 1.000000 -uR 3160.000000 60.000000 inf 1.000000 -uR 3170.000000 60.000000 inf 1.000000 -uR 3180.000000 60.000000 inf 1.000000 -uR 3190.000000 60.000000 inf 1.000000 -uR 3200.000000 60.000000 inf 1.000000 -uR 3210.000000 60.000000 inf 1.000000 -uR 3220.000000 60.000000 inf 1.000000 -uR 3230.000000 60.000000 inf 1.000000 -uR 3240.000000 60.000000 inf 1.000000 -uR 3250.000000 60.000000 inf 1.000000 -uR 3260.000000 60.000000 inf 1.000000 -uR 3270.000000 60.000000 inf 1.000000 -uR 3280.000000 60.000000 inf 1.000000 -uR 3290.000000 60.000000 inf 1.000000 -uR 3300.000000 60.000000 inf 1.000000 -uR 3310.000000 60.000000 inf 1.000000 -uR 3320.000000 60.000000 inf 1.000000 -uR 3330.000000 60.000000 inf 1.000000 -uR 3340.000000 60.000000 inf 1.000000 -uR 3350.000000 60.000000 inf 1.000000 -uR 3360.000000 60.000000 inf 1.000000 -uR 3370.000000 60.000000 inf 1.000000 -uR 3380.000000 60.000000 inf 1.000000 -uR 3390.000000 60.000000 inf 1.000000 -uR 3400.000000 60.000000 inf 1.000000 -uR 3410.000000 60.000000 inf 1.000000 -uR 3420.000000 60.000000 inf 1.000000 -uR 3430.000000 60.000000 inf 1.000000 -uR 3440.000000 60.000000 inf 1.000000 -uR 3450.000000 60.000000 inf 1.000000 -uR 3460.000000 60.000000 inf 1.000000 -uR 3470.000000 60.000000 inf 1.000000 -uR 3480.000000 60.000000 inf 1.000000 -uR 3490.000000 60.000000 inf 1.000000 -uR 3500.000000 60.000000 inf 1.000000 -uR 3510.000000 60.000000 inf 1.000000 -uR 3520.000000 60.000000 inf 1.000000 -uR 3530.000000 60.000000 inf 1.000000 -uR 3540.000000 60.000000 inf 1.000000 -uR 3550.000000 60.000000 inf 1.000000 -uR 3560.000000 60.000000 inf 1.000000 -uR 3570.000000 60.000000 inf 1.000000 -uR 3580.000000 60.000000 inf 1.000000 -uR 3590.000000 60.000000 inf 1.000000 -uR 3600.000000 60.000000 inf 1.000000 -uR 3610.000000 60.000000 inf 1.000000 -uR 3620.000000 60.000000 inf 1.000000 -uR 3630.000000 60.000000 inf 1.000000 -uR 3640.000000 60.000000 inf 1.000000 -uR 3650.000000 60.000000 inf 1.000000 -uR 3660.000000 60.000000 inf 1.000000 -uR 3670.000000 60.000000 inf 1.000000 -uR 3680.000000 60.000000 inf 1.000000 -uR 3690.000000 60.000000 inf 1.000000 -uR 3700.000000 60.000000 inf 1.000000 -uR 3710.000000 60.000000 inf 1.000000 -uR 3720.000000 60.000000 inf 1.000000 -uR 3730.000000 60.000000 inf 1.000000 -uR 3740.000000 60.000000 inf 1.000000 -uR 3750.000000 60.000000 inf 1.000000 -uR 3760.000000 60.000000 inf 1.000000 -uR 3770.000000 60.000000 inf 1.000000 -uR 3780.000000 60.000000 inf 1.000000 -uR 3790.000000 60.000000 inf 1.000000 -uR 3800.000000 60.000000 inf 1.000000 -uR 3810.000000 60.000000 inf 1.000000 -uR 3820.000000 60.000000 inf 1.000000 -uR 3830.000000 60.000000 inf 1.000000 -uR 3840.000000 60.000000 inf 1.000000 -uR 3850.000000 60.000000 inf 1.000000 -uR 3860.000000 60.000000 inf 1.000000 -uR 3870.000000 60.000000 inf 1.000000 -uR 3880.000000 60.000000 inf 1.000000 -uR 3890.000000 60.000000 inf 1.000000 -uR 3900.000000 60.000000 inf 1.000000 -uR 3910.000000 60.000000 inf 1.000000 -uR 3920.000000 60.000000 inf 1.000000 -uR 3930.000000 60.000000 inf 1.000000 -uR 3940.000000 60.000000 inf 1.000000 -uR 3950.000000 60.000000 inf 1.000000 -uR 3960.000000 60.000000 inf 1.000000 -uR 3970.000000 60.000000 inf 1.000000 -uR 3980.000000 60.000000 inf 1.000000 -uR 3990.000000 60.000000 inf 1.000000 -uR 4000.000000 60.000000 inf 1.000000 -uR 4010.000000 60.000000 inf 1.000000 -uR 4020.000000 60.000000 inf 1.000000 -uR 4030.000000 60.000000 inf 1.000000 -uR 4040.000000 60.000000 inf 1.000000 -uR 4050.000000 60.000000 inf 1.000000 -uR 4060.000000 60.000000 inf 1.000000 -uR 4070.000000 60.000000 inf 1.000000 -uR 4080.000000 60.000000 inf 1.000000 -uR 4090.000000 60.000000 inf 1.000000 -uR 4100.000000 60.000000 inf 1.000000 -uR 4110.000000 60.000000 inf 1.000000 -uR 4120.000000 60.000000 inf 1.000000 -uR 4130.000000 60.000000 inf 1.000000 -uR 4140.000000 60.000000 inf 1.000000 -uR 4150.000000 60.000000 inf 1.000000 -uR 4160.000000 60.000000 inf 1.000000 -uR 4170.000000 60.000000 inf 1.000000 -uR 4180.000000 60.000000 inf 1.000000 -uR 4190.000000 60.000000 inf 1.000000 -uR 4200.000000 60.000000 inf 1.000000 -uR 4210.000000 60.000000 inf 1.000000 -uR 4220.000000 60.000000 inf 1.000000 -uR 4230.000000 60.000000 inf 1.000000 -uR 4240.000000 60.000000 inf 1.000000 -uR 4250.000000 60.000000 inf 1.000000 -uR 4260.000000 60.000000 inf 1.000000 -uR 4270.000000 60.000000 inf 1.000000 -uR 4280.000000 60.000000 inf 1.000000 -uR 4290.000000 60.000000 inf 1.000000 -uR 4300.000000 60.000000 inf 1.000000 -uR 4310.000000 60.000000 inf 1.000000 -uR 4320.000000 60.000000 inf 1.000000 -uR 4330.000000 60.000000 inf 1.000000 -uR 4340.000000 60.000000 inf 1.000000 -uR 4350.000000 60.000000 inf 1.000000 -uR 4360.000000 60.000000 inf 1.000000 -uR 4370.000000 60.000000 inf 1.000000 -uR 4380.000000 60.000000 inf 1.000000 -uR 4390.000000 60.000000 inf 1.000000 -uR 4400.000000 60.000000 inf 1.000000 -uR 4410.000000 60.000000 inf 1.000000 -uR 4420.000000 60.000000 inf 1.000000 -uR 4430.000000 60.000000 inf 1.000000 -uR 4440.000000 60.000000 inf 1.000000 -uR 4450.000000 60.000000 inf 1.000000 -uR 4460.000000 60.000000 inf 1.000000 -uR 4470.000000 60.000000 inf 1.000000 -uR 4480.000000 60.000000 inf 1.000000 -uR 4490.000000 60.000000 inf 1.000000 -uR 4500.000000 60.000000 inf 1.000000 -uR 4510.000000 60.000000 inf 1.000000 -uR 4520.000000 60.000000 inf 1.000000 -uR 4530.000000 60.000000 inf 1.000000 -uR 4540.000000 60.000000 inf 1.000000 -uR 4550.000000 60.000000 inf 1.000000 -uR 4560.000000 60.000000 inf 1.000000 -uR 4570.000000 60.000000 inf 1.000000 -uR 4580.000000 60.000000 inf 1.000000 -uR 4590.000000 60.000000 inf 1.000000 -uR 4600.000000 60.000000 inf 1.000000 -uR 4610.000000 60.000000 inf 1.000000 -uR 4620.000000 60.000000 inf 1.000000 -uR 4630.000000 60.000000 inf 1.000000 -uR 4640.000000 60.000000 inf 1.000000 -uR 4650.000000 60.000000 inf 1.000000 -uR 4660.000000 60.000000 inf 1.000000 -uR 4670.000000 60.000000 inf 1.000000 -uR 4680.000000 60.000000 inf 1.000000 -uR 4690.000000 60.000000 inf 1.000000 -uR 4700.000000 60.000000 inf 1.000000 -uR 4710.000000 60.000000 inf 1.000000 -uR 4720.000000 60.000000 inf 1.000000 -uR 4730.000000 60.000000 inf 1.000000 -uR 4740.000000 60.000000 inf 1.000000 -uR 4750.000000 60.000000 inf 1.000000 -uR 4760.000000 60.000000 inf 1.000000 -uR 4770.000000 60.000000 inf 1.000000 -uR 4780.000000 60.000000 inf 1.000000 -uR 4790.000000 60.000000 inf 1.000000 -uR 4800.000000 60.000000 inf 1.000000 -uR 4810.000000 60.000000 inf 1.000000 -uR 4820.000000 60.000000 inf 1.000000 -uR 4830.000000 60.000000 inf 1.000000 -uR 4840.000000 60.000000 inf 1.000000 -uR 4850.000000 60.000000 inf 1.000000 -uR 4860.000000 60.000000 inf 1.000000 -uR 4870.000000 60.000000 inf 1.000000 -uR 4880.000000 60.000000 inf 1.000000 -uR 4890.000000 60.000000 inf 1.000000 -uR 4900.000000 60.000000 inf 1.000000 -uR 4910.000000 60.000000 inf 1.000000 -uR 4920.000000 60.000000 inf 1.000000 -uR 4930.000000 60.000000 inf 1.000000 -uR 4940.000000 60.000000 inf 1.000000 -uR 4950.000000 60.000000 inf 1.000000 -uR 4960.000000 60.000000 inf 1.000000 -uR 4970.000000 60.000000 inf 1.000000 -uR 4980.000000 60.000000 inf 1.000000 -uR 4990.000000 60.000000 inf 1.000000 -uR 5000.000000 60.000000 inf 1.000000 -uR 5010.000000 60.000000 inf 1.000000 -uR 5020.000000 60.000000 inf 1.000000 -uR 5030.000000 60.000000 inf 1.000000 -uR 5040.000000 60.000000 inf 1.000000 -uR 5050.000000 60.000000 inf 1.000000 -uR 5060.000000 60.000000 inf 1.000000 -uR 5070.000000 60.000000 inf 1.000000 -uR 5080.000000 60.000000 inf 1.000000 -uR 5090.000000 60.000000 inf 1.000000 -uR 5100.000000 60.000000 inf 1.000000 -uR 5110.000000 60.000000 inf 1.000000 -uR 5120.000000 60.000000 inf 1.000000 -uR 5130.000000 60.000000 inf 1.000000 -uR 5140.000000 60.000000 inf 1.000000 -uR 5150.000000 60.000000 inf 1.000000 -uR 5160.000000 60.000000 inf 1.000000 -uR 5170.000000 60.000000 inf 1.000000 -uR 5180.000000 60.000000 inf 1.000000 -uR 5190.000000 60.000000 inf 1.000000 -uR 5200.000000 60.000000 inf 1.000000 -uR 5210.000000 60.000000 inf 1.000000 -uR 5220.000000 60.000000 inf 1.000000 -uR 5230.000000 60.000000 inf 1.000000 -uR 5240.000000 60.000000 inf 1.000000 -uR 5250.000000 60.000000 inf 1.000000 -uR 5260.000000 60.000000 inf 1.000000 -uR 5270.000000 60.000000 inf 1.000000 -uR 5280.000000 60.000000 inf 1.000000 -uR 5290.000000 60.000000 inf 1.000000 -uR 5300.000000 60.000000 inf 1.000000 -uR 5310.000000 60.000000 inf 1.000000 -uR 5320.000000 60.000000 inf 1.000000 -uR 5330.000000 60.000000 inf 1.000000 -uR 5340.000000 60.000000 inf 1.000000 -uR 5350.000000 60.000000 inf 1.000000 -uR 5360.000000 60.000000 inf 1.000000 -uR 5370.000000 60.000000 inf 1.000000 -uR 5380.000000 60.000000 inf 1.000000 -uR 5390.000000 60.000000 inf 1.000000 -uR 5400.000000 60.000000 inf 1.000000 -uR 5410.000000 60.000000 inf 1.000000 -uR 5420.000000 60.000000 inf 1.000000 -uR 5430.000000 60.000000 inf 1.000000 -uR 5440.000000 60.000000 inf 1.000000 -uR 5450.000000 60.000000 inf 1.000000 -uR 5460.000000 60.000000 inf 1.000000 -uR 5470.000000 60.000000 inf 1.000000 -uR 5480.000000 60.000000 inf 1.000000 -uR 5490.000000 60.000000 inf 1.000000 -uR 5500.000000 60.000000 inf 1.000000 -uR 5510.000000 60.000000 inf 1.000000 -uR 5520.000000 60.000000 inf 1.000000 -uR 5530.000000 60.000000 inf 1.000000 -uR 5540.000000 60.000000 inf 1.000000 -uR 5550.000000 60.000000 inf 1.000000 -uR 5560.000000 60.000000 inf 1.000000 -uR 5570.000000 60.000000 inf 1.000000 -uR 5580.000000 60.000000 inf 1.000000 -uR 5590.000000 60.000000 inf 1.000000 -uR 5600.000000 60.000000 inf 1.000000 -uR 5610.000000 60.000000 inf 1.000000 -uR 5620.000000 60.000000 inf 1.000000 -uR 5630.000000 60.000000 inf 1.000000 -uR 5640.000000 60.000000 inf 1.000000 -uR 5650.000000 60.000000 inf 1.000000 -uR 5660.000000 60.000000 inf 1.000000 -uR 5670.000000 60.000000 inf 1.000000 -uR 5680.000000 60.000000 inf 1.000000 -uR 5690.000000 60.000000 inf 1.000000 -uR 5700.000000 60.000000 inf 1.000000 -uR 5710.000000 60.000000 inf 1.000000 -uR 5720.000000 60.000000 inf 1.000000 -uR 5730.000000 60.000000 inf 1.000000 -uR 5740.000000 60.000000 inf 1.000000 -uR 5750.000000 60.000000 inf 1.000000 -uR 5760.000000 60.000000 inf 1.000000 -uR 5770.000000 60.000000 inf 1.000000 -uR 5780.000000 60.000000 inf 1.000000 -uR 5790.000000 60.000000 inf 1.000000 -uR 5800.000000 60.000000 inf 1.000000 -uR 5810.000000 60.000000 inf 1.000000 -uR 5820.000000 60.000000 inf 1.000000 -uR 5830.000000 60.000000 inf 1.000000 -uR 5840.000000 60.000000 inf 1.000000 -uR 5850.000000 60.000000 inf 1.000000 -uR 5860.000000 60.000000 inf 1.000000 -uR 5870.000000 60.000000 inf 1.000000 -uR 5880.000000 60.000000 inf 1.000000 -uR 5890.000000 60.000000 inf 1.000000 -uR 5900.000000 60.000000 inf 1.000000 -uR 5910.000000 60.000000 inf 1.000000 -uR 5920.000000 60.000000 inf 1.000000 -uR 5930.000000 60.000000 inf 1.000000 -uR 5940.000000 60.000000 inf 1.000000 -uR 5950.000000 60.000000 inf 1.000000 -uR 5960.000000 60.000000 inf 1.000000 -uR 5970.000000 60.000000 inf 1.000000 -uR 5980.000000 60.000000 inf 1.000000 -uR 5990.000000 60.000000 inf 1.000000 -uR 6000.000000 60.000000 inf 1.000000 -uR 6010.000000 60.000000 inf 1.000000 -uR 6020.000000 60.000000 inf 1.000000 -uR 6030.000000 60.000000 inf 1.000000 -uR 6040.000000 60.000000 inf 1.000000 -uR 6050.000000 60.000000 inf 1.000000 -uR 6060.000000 60.000000 inf 1.000000 -uR 6070.000000 60.000000 inf 1.000000 -uR 6080.000000 60.000000 inf 1.000000 -uR 6090.000000 60.000000 inf 1.000000 -uR 6100.000000 60.000000 inf 1.000000 -uR 6110.000000 60.000000 inf 1.000000 -uR 6120.000000 60.000000 inf 1.000000 -uR 6130.000000 60.000000 inf 1.000000 -uR 6140.000000 60.000000 inf 1.000000 -uR 6150.000000 60.000000 inf 1.000000 -uR 6160.000000 60.000000 inf 1.000000 -uR 6170.000000 60.000000 inf 1.000000 -uR 6180.000000 60.000000 inf 1.000000 -uR 6190.000000 60.000000 inf 1.000000 -uR 6200.000000 60.000000 inf 1.000000 -uR 6210.000000 60.000000 inf 1.000000 -uR 6220.000000 60.000000 inf 1.000000 -uR 6230.000000 60.000000 inf 1.000000 -uR 6240.000000 60.000000 inf 1.000000 -uR 6250.000000 60.000000 inf 1.000000 -uR 6260.000000 60.000000 inf 1.000000 -uR 6270.000000 60.000000 inf 1.000000 -uR 6280.000000 60.000000 inf 1.000000 -uR 6290.000000 60.000000 inf 1.000000 -uR 6300.000000 60.000000 inf 1.000000 -uR 6310.000000 60.000000 inf 1.000000 -uR 6320.000000 60.000000 inf 1.000000 -uR 6330.000000 60.000000 inf 1.000000 -uR 6340.000000 60.000000 inf 1.000000 -uR 6350.000000 60.000000 inf 1.000000 -uR 6360.000000 60.000000 inf 1.000000 -uR 6370.000000 60.000000 inf 1.000000 -uR 6380.000000 60.000000 inf 1.000000 -uR 6390.000000 60.000000 inf 1.000000 -uR 6400.000000 60.000000 inf 1.000000 -uR 6410.000000 60.000000 inf 1.000000 -uR 6420.000000 60.000000 inf 1.000000 -uR 6430.000000 60.000000 inf 1.000000 -uR 6440.000000 60.000000 inf 1.000000 -uR 6450.000000 60.000000 inf 1.000000 -uR 6460.000000 60.000000 inf 1.000000 -uR 6470.000000 60.000000 inf 1.000000 -uR 6480.000000 60.000000 inf 1.000000 -uR 6490.000000 60.000000 inf 1.000000 -uR 6500.000000 60.000000 inf 1.000000 -uR 6510.000000 60.000000 inf 1.000000 -uR 6520.000000 60.000000 inf 1.000000 -uR 6530.000000 60.000000 inf 1.000000 -uR 6540.000000 60.000000 inf 1.000000 -uR 6550.000000 60.000000 inf 1.000000 -uR 6560.000000 60.000000 inf 1.000000 -uR 6570.000000 60.000000 inf 1.000000 -uR 6580.000000 60.000000 inf 1.000000 -uR 6590.000000 60.000000 inf 1.000000 -uR 6600.000000 60.000000 inf 1.000000 -uR 6610.000000 60.000000 inf 1.000000 -uR 6620.000000 60.000000 inf 1.000000 -uR 6630.000000 60.000000 inf 1.000000 -uR 6640.000000 60.000000 inf 1.000000 -uR 6650.000000 60.000000 inf 1.000000 -uR 6660.000000 60.000000 inf 1.000000 -uR 6670.000000 60.000000 inf 1.000000 -uR 6680.000000 60.000000 inf 1.000000 -uR 6690.000000 60.000000 inf 1.000000 -uR 6700.000000 60.000000 inf 1.000000 -uR 6710.000000 60.000000 inf 1.000000 -uR 6720.000000 60.000000 inf 1.000000 -uR 6730.000000 60.000000 inf 1.000000 -uR 6740.000000 60.000000 inf 1.000000 -uR 6750.000000 60.000000 inf 1.000000 -uR 6760.000000 60.000000 inf 1.000000 -uR 6770.000000 60.000000 inf 1.000000 -uR 6780.000000 60.000000 inf 1.000000 -uR 6790.000000 60.000000 inf 1.000000 -uR 6800.000000 60.000000 inf 1.000000 -uR 6810.000000 60.000000 inf 1.000000 -uR 6820.000000 60.000000 inf 1.000000 -uR 6830.000000 60.000000 inf 1.000000 -uR 6840.000000 60.000000 inf 1.000000 -uR 6850.000000 60.000000 inf 1.000000 -uR 6860.000000 60.000000 inf 1.000000 -uR 6870.000000 60.000000 inf 1.000000 -uR 6880.000000 60.000000 inf 1.000000 -uR 6890.000000 60.000000 inf 1.000000 -uR 6900.000000 60.000000 inf 1.000000 -uR 6910.000000 60.000000 inf 1.000000 -uR 6920.000000 60.000000 inf 1.000000 -uR 6930.000000 60.000000 inf 1.000000 -uR 6940.000000 60.000000 inf 1.000000 -uR 6950.000000 60.000000 inf 1.000000 -uR 6960.000000 60.000000 inf 1.000000 -uR 6970.000000 60.000000 inf 1.000000 -uR 6980.000000 60.000000 inf 1.000000 -uR 6990.000000 60.000000 inf 1.000000 -uR 7000.000000 60.000000 inf 1.000000 -uR 7010.000000 60.000000 inf 1.000000 -uR 7020.000000 60.000000 inf 1.000000 -uR 7030.000000 60.000000 inf 1.000000 -uR 7040.000000 60.000000 inf 1.000000 -uR 7050.000000 60.000000 inf 1.000000 -uR 7060.000000 60.000000 inf 1.000000 -uR 7070.000000 60.000000 inf 1.000000 -uR 7080.000000 60.000000 inf 1.000000 -uR 7090.000000 60.000000 inf 1.000000 -uR 7100.000000 60.000000 inf 1.000000 -uR 7110.000000 60.000000 inf 1.000000 -uR 7120.000000 60.000000 inf 1.000000 -uR 7130.000000 60.000000 inf 1.000000 -uR 7140.000000 60.000000 inf 1.000000 -uR 7150.000000 60.000000 inf 1.000000 -uR 7160.000000 60.000000 inf 1.000000 -uR 7170.000000 60.000000 inf 1.000000 -uR 7180.000000 60.000000 inf 1.000000 -uR 7190.000000 60.000000 inf 1.000000 -uR 7200.000000 60.000000 inf 1.000000 -uR 7210.000000 60.000000 inf 1.000000 -uR 7220.000000 60.000000 inf 1.000000 -uR 7230.000000 60.000000 inf 1.000000 -uR 7240.000000 60.000000 inf 1.000000 -uR 7250.000000 60.000000 inf 1.000000 -uR 7260.000000 60.000000 inf 1.000000 -uR 7270.000000 60.000000 inf 1.000000 -uR 7280.000000 60.000000 inf 1.000000 -uR 7290.000000 60.000000 inf 1.000000 -uR 7300.000000 60.000000 inf 1.000000 -uR 7310.000000 60.000000 inf 1.000000 -uR 7320.000000 60.000000 inf 1.000000 -uR 7330.000000 60.000000 inf 1.000000 -uR 7340.000000 60.000000 inf 1.000000 -uR 7350.000000 60.000000 inf 1.000000 -uR 7360.000000 60.000000 inf 1.000000 -uR 7370.000000 60.000000 inf 1.000000 -uR 7380.000000 60.000000 inf 1.000000 -uR 7390.000000 60.000000 inf 1.000000 -uR 7400.000000 60.000000 inf 1.000000 -uR 7410.000000 60.000000 inf 1.000000 -uR 7420.000000 60.000000 inf 1.000000 -uR 7430.000000 60.000000 inf 1.000000 -uR 7440.000000 60.000000 inf 1.000000 -uR 7450.000000 60.000000 inf 1.000000 -uR 7460.000000 60.000000 inf 1.000000 -uR 7470.000000 60.000000 inf 1.000000 -uR 7480.000000 60.000000 inf 1.000000 -uR 7490.000000 60.000000 inf 1.000000 -uR 7500.000000 60.000000 inf 1.000000 -uR 7510.000000 60.000000 inf 1.000000 -uR 7520.000000 60.000000 inf 1.000000 -uR 7530.000000 60.000000 inf 1.000000 -uR 7540.000000 60.000000 inf 1.000000 -uR 7550.000000 60.000000 inf 1.000000 -uR 7560.000000 60.000000 inf 1.000000 -uR 7570.000000 60.000000 inf 1.000000 -uR 7580.000000 60.000000 inf 1.000000 -uR 7590.000000 60.000000 inf 1.000000 -uR 7600.000000 60.000000 inf 1.000000 -uR 7610.000000 60.000000 inf 1.000000 -uR 7620.000000 60.000000 inf 1.000000 -uR 7630.000000 60.000000 inf 1.000000 -uR 7640.000000 60.000000 inf 1.000000 -uR 7650.000000 60.000000 inf 1.000000 -uR 7660.000000 60.000000 inf 1.000000 -uR 7670.000000 60.000000 inf 1.000000 -uR 7680.000000 60.000000 inf 1.000000 -uR 7690.000000 60.000000 inf 1.000000 -uR 7700.000000 60.000000 inf 1.000000 -uR 7710.000000 60.000000 inf 1.000000 -uR 7720.000000 60.000000 inf 1.000000 -uR 7730.000000 60.000000 inf 1.000000 -uR 7740.000000 60.000000 inf 1.000000 -uR 7750.000000 60.000000 inf 1.000000 -uR 7760.000000 60.000000 inf 1.000000 -uR 7770.000000 60.000000 inf 1.000000 -uR 7780.000000 60.000000 inf 1.000000 -uR 7790.000000 60.000000 inf 1.000000 -uR 7800.000000 60.000000 inf 1.000000 -uR 7810.000000 60.000000 inf 1.000000 -uR 7820.000000 60.000000 inf 1.000000 -uR 7830.000000 60.000000 inf 1.000000 -uR 7840.000000 60.000000 inf 1.000000 -uR 7850.000000 60.000000 inf 1.000000 -uR 7860.000000 60.000000 inf 1.000000 -uR 7870.000000 60.000000 inf 1.000000 -uR 7880.000000 60.000000 inf 1.000000 -uR 7890.000000 60.000000 inf 1.000000 -uR 7900.000000 60.000000 inf 1.000000 -uR 7910.000000 60.000000 inf 1.000000 -uR 7920.000000 60.000000 inf 1.000000 -uR 7930.000000 60.000000 inf 1.000000 -uR 7940.000000 60.000000 inf 1.000000 -uR 7950.000000 60.000000 inf 1.000000 -uR 7960.000000 60.000000 inf 1.000000 -uR 7970.000000 60.000000 inf 1.000000 -uR 7980.000000 60.000000 inf 1.000000 -uR 7990.000000 60.000000 inf 1.000000 -uR 8000.000000 60.000000 inf 1.000000 -uR 8010.000000 60.000000 inf 1.000000 -uR 8020.000000 60.000000 inf 1.000000 -uR 8030.000000 60.000000 inf 1.000000 -uR 8040.000000 60.000000 inf 1.000000 -uR 8050.000000 60.000000 inf 1.000000 -uR 8060.000000 60.000000 inf 1.000000 -uR 8070.000000 60.000000 inf 1.000000 -uR 8080.000000 60.000000 inf 1.000000 -uR 8090.000000 60.000000 inf 1.000000 -uR 8100.000000 60.000000 inf 1.000000 -uR 8110.000000 60.000000 inf 1.000000 -uR 8120.000000 60.000000 inf 1.000000 -uR 8130.000000 60.000000 inf 1.000000 -uR 8140.000000 60.000000 inf 1.000000 -uR 8150.000000 60.000000 inf 1.000000 -uR 8160.000000 60.000000 inf 1.000000 -uR 8170.000000 60.000000 inf 1.000000 -uR 8180.000000 60.000000 inf 1.000000 -uR 8190.000000 60.000000 inf 1.000000 -uR 8200.000000 60.000000 inf 1.000000 -uR 8210.000000 60.000000 inf 1.000000 -uR 8220.000000 60.000000 inf 1.000000 -uR 8230.000000 60.000000 inf 1.000000 -uR 8240.000000 60.000000 inf 1.000000 -uR 8250.000000 60.000000 inf 1.000000 -uR 8260.000000 60.000000 inf 1.000000 -uR 8270.000000 60.000000 inf 1.000000 -uR 8280.000000 60.000000 inf 1.000000 -uR 8290.000000 60.000000 inf 1.000000 -uR 8300.000000 60.000000 inf 1.000000 -uR 8310.000000 60.000000 inf 1.000000 -uR 8320.000000 60.000000 inf 1.000000 -uR 8330.000000 60.000000 inf 1.000000 -uR 8340.000000 60.000000 inf 1.000000 -uR 8350.000000 60.000000 inf 1.000000 -uR 8360.000000 60.000000 inf 1.000000 -uR 8370.000000 60.000000 inf 1.000000 -uR 8380.000000 60.000000 inf 1.000000 -uR 8390.000000 60.000000 inf 1.000000 -uR 8400.000000 60.000000 inf 1.000000 -uR 8410.000000 60.000000 inf 1.000000 -uR 8420.000000 60.000000 inf 1.000000 -uR 8430.000000 60.000000 inf 1.000000 -uR 8440.000000 60.000000 inf 1.000000 -uR 8450.000000 60.000000 inf 1.000000 -uR 8460.000000 60.000000 inf 1.000000 -uR 8470.000000 60.000000 inf 1.000000 -uR 8480.000000 60.000000 inf 1.000000 -uR 8490.000000 60.000000 inf 1.000000 -uR 8500.000000 60.000000 inf 1.000000 -uR 8510.000000 60.000000 inf 1.000000 -uR 8520.000000 60.000000 inf 1.000000 -uR 8530.000000 60.000000 inf 1.000000 -uR 8540.000000 60.000000 inf 1.000000 -uR 8550.000000 60.000000 inf 1.000000 -uR 8560.000000 60.000000 inf 1.000000 -uR 8570.000000 60.000000 inf 1.000000 -uR 8580.000000 60.000000 inf 1.000000 -uR 8590.000000 60.000000 inf 1.000000 -uR 8600.000000 60.000000 inf 1.000000 -uR 8610.000000 60.000000 inf 1.000000 -uR 8620.000000 60.000000 inf 1.000000 -uR 8630.000000 60.000000 inf 1.000000 -uR 8640.000000 60.000000 inf 1.000000 -uR 8650.000000 60.000000 inf 1.000000 -uR 8660.000000 60.000000 inf 1.000000 -uR 8670.000000 60.000000 inf 1.000000 -uR 8680.000000 60.000000 inf 1.000000 -uR 8690.000000 60.000000 inf 1.000000 -uR 8700.000000 60.000000 inf 1.000000 -uR 8710.000000 60.000000 inf 1.000000 -uR 8720.000000 60.000000 inf 1.000000 -uR 8730.000000 60.000000 inf 1.000000 -uR 8740.000000 60.000000 inf 1.000000 -uR 8750.000000 60.000000 inf 1.000000 -uR 8760.000000 60.000000 inf 1.000000 -uR 8770.000000 60.000000 inf 1.000000 -uR 8780.000000 60.000000 inf 1.000000 -uR 8790.000000 60.000000 inf 1.000000 -uR 8800.000000 60.000000 inf 1.000000 -uR 8810.000000 60.000000 inf 1.000000 -uR 8820.000000 60.000000 inf 1.000000 -uR 8830.000000 60.000000 inf 1.000000 -uR 8840.000000 60.000000 inf 1.000000 -uR 8850.000000 60.000000 inf 1.000000 -uR 8860.000000 60.000000 inf 1.000000 -uR 8870.000000 60.000000 inf 1.000000 -uR 8880.000000 60.000000 inf 1.000000 -uR 8890.000000 60.000000 inf 1.000000 -uR 8900.000000 60.000000 inf 1.000000 -uR 8910.000000 60.000000 inf 1.000000 -uR 8920.000000 60.000000 inf 1.000000 -uR 8930.000000 60.000000 inf 1.000000 -uR 8940.000000 60.000000 inf 1.000000 -uR 8950.000000 60.000000 inf 1.000000 -uR 8960.000000 60.000000 inf 1.000000 -uR 8970.000000 60.000000 inf 1.000000 -uR 8980.000000 60.000000 inf 1.000000 -uR 8990.000000 60.000000 inf 1.000000 -uR 9000.000000 60.000000 inf 1.000000 -uR 9010.000000 60.000000 inf 1.000000 -uR 9020.000000 60.000000 inf 1.000000 -uR 9030.000000 60.000000 inf 1.000000 -uR 9040.000000 60.000000 inf 1.000000 -uR 9050.000000 60.000000 inf 1.000000 -uR 9060.000000 60.000000 inf 1.000000 -uR 9070.000000 60.000000 inf 1.000000 -uR 9080.000000 60.000000 inf 1.000000 -uR 9090.000000 60.000000 inf 1.000000 -uR 9100.000000 60.000000 inf 1.000000 -uR 9110.000000 60.000000 inf 1.000000 -uR 9120.000000 60.000000 inf 1.000000 -uR 9130.000000 60.000000 inf 1.000000 -uR 9140.000000 60.000000 inf 1.000000 -uR 9150.000000 60.000000 inf 1.000000 -uR 9160.000000 60.000000 inf 1.000000 -uR 9170.000000 60.000000 inf 1.000000 -uR 9180.000000 60.000000 inf 1.000000 -uR 9190.000000 60.000000 inf 1.000000 -uR 9200.000000 60.000000 inf 1.000000 -uR 9210.000000 60.000000 inf 1.000000 -uR 9220.000000 60.000000 inf 1.000000 -uR 9230.000000 60.000000 inf 1.000000 -uR 9240.000000 60.000000 inf 1.000000 -uR 9250.000000 60.000000 inf 1.000000 -uR 9260.000000 60.000000 inf 1.000000 -uR 9270.000000 60.000000 inf 1.000000 -uR 9280.000000 60.000000 inf 1.000000 -uR 9290.000000 60.000000 inf 1.000000 -uR 9300.000000 60.000000 inf 1.000000 -uR 9310.000000 60.000000 inf 1.000000 -uR 9320.000000 60.000000 inf 1.000000 -uR 9330.000000 60.000000 inf 1.000000 -uR 9340.000000 60.000000 inf 1.000000 -uR 9350.000000 60.000000 inf 1.000000 -uR 9360.000000 60.000000 inf 1.000000 -uR 9370.000000 60.000000 inf 1.000000 -uR 9380.000000 60.000000 inf 1.000000 -uR 9390.000000 60.000000 inf 1.000000 -uR 9400.000000 60.000000 inf 1.000000 -uR 9410.000000 60.000000 inf 1.000000 -uR 9420.000000 60.000000 inf 1.000000 -uR 9430.000000 60.000000 inf 1.000000 -uR 9440.000000 60.000000 inf 1.000000 -uR 9450.000000 60.000000 inf 1.000000 -uR 9460.000000 60.000000 inf 1.000000 -uR 9470.000000 60.000000 inf 1.000000 -uR 9480.000000 60.000000 inf 1.000000 -uR 9490.000000 60.000000 inf 1.000000 -uR 9500.000000 60.000000 inf 1.000000 -uR 9510.000000 60.000000 inf 1.000000 -uR 9520.000000 60.000000 inf 1.000000 -uR 9530.000000 60.000000 inf 1.000000 -uR 9540.000000 60.000000 inf 1.000000 -uR 9550.000000 60.000000 inf 1.000000 -uR 9560.000000 60.000000 inf 1.000000 -uR 9570.000000 60.000000 inf 1.000000 -uR 9580.000000 60.000000 inf 1.000000 -uR 9590.000000 60.000000 inf 1.000000 -uR 9600.000000 60.000000 inf 1.000000 -uR 9610.000000 60.000000 inf 1.000000 -uR 9620.000000 60.000000 inf 1.000000 -uR 9630.000000 60.000000 inf 1.000000 -uR 9640.000000 60.000000 inf 1.000000 -uR 9650.000000 60.000000 inf 1.000000 -uR 9660.000000 60.000000 inf 1.000000 -uR 9670.000000 60.000000 inf 1.000000 -uR 9680.000000 60.000000 inf 1.000000 -uR 9690.000000 60.000000 inf 1.000000 -uR 9700.000000 60.000000 inf 1.000000 -uR 9710.000000 60.000000 inf 1.000000 -uR 9720.000000 60.000000 inf 1.000000 -uR 9730.000000 60.000000 inf 1.000000 -uR 9740.000000 60.000000 inf 1.000000 -uR 9750.000000 60.000000 inf 1.000000 -uR 9760.000000 60.000000 inf 1.000000 -uR 9770.000000 60.000000 inf 1.000000 -uR 9780.000000 60.000000 inf 1.000000 -uR 9790.000000 60.000000 inf 1.000000 -uR 9800.000000 60.000000 inf 1.000000 -uR 9810.000000 60.000000 inf 1.000000 -uR 9820.000000 60.000000 inf 1.000000 -uR 9830.000000 60.000000 inf 1.000000 -uR 9840.000000 60.000000 inf 1.000000 -uR 9850.000000 60.000000 inf 1.000000 -uR 9860.000000 60.000000 inf 1.000000 -uR 9870.000000 60.000000 inf 1.000000 -uR 9880.000000 60.000000 inf 1.000000 -uR 9890.000000 60.000000 inf 1.000000 -uR 9900.000000 60.000000 inf 1.000000 -uR 9910.000000 60.000000 inf 1.000000 -uR 9920.000000 60.000000 inf 1.000000 -uR 9930.000000 60.000000 inf 1.000000 -uR 9940.000000 60.000000 inf 1.000000 -uR 9950.000000 60.000000 inf 1.000000 -uR 9960.000000 60.000000 inf 1.000000 -uR 9970.000000 60.000000 inf 1.000000 -uR 9980.000000 60.000000 inf 1.000000 -uR 9990.000000 60.000000 inf 1.000000 -uR 10000.000000 60.000000 inf 1.000000 -uR 10025.000000 60.000000 inf 1.000000 -uR 10050.000000 60.000000 inf 1.000000 -uR 10075.000000 60.000000 inf 1.000000 -uR 10100.000000 60.000000 inf 1.000000 -uR 10125.000000 60.000000 inf 1.000000 -uR 10150.000000 60.000000 inf 1.000000 -uR 10175.000000 60.000000 inf 1.000000 -uR 10200.000000 60.000000 inf 1.000000 -uR 10225.000000 60.000000 inf 1.000000 -uR 10250.000000 60.000000 inf 1.000000 -uR 10275.000000 60.000000 inf 1.000000 -uR 10300.000000 60.000000 inf 1.000000 -uR 10325.000000 60.000000 inf 1.000000 -uR 10350.000000 60.000000 inf 1.000000 -uR 10375.000000 60.000000 inf 1.000000 -uR 10400.000000 60.000000 inf 1.000000 -uR 10425.000000 60.000000 inf 1.000000 -uR 10450.000000 60.000000 inf 1.000000 -uR 10475.000000 60.000000 inf 1.000000 -uR 10500.000000 60.000000 inf 1.000000 -uR 10525.000000 60.000000 inf 1.000000 -uR 10550.000000 60.000000 inf 1.000000 -uR 10575.000000 60.000000 inf 1.000000 -uR 10600.000000 60.000000 inf 1.000000 -uR 10625.000000 60.000000 inf 1.000000 -uR 10650.000000 60.000000 inf 1.000000 -uR 10675.000000 60.000000 inf 1.000000 -uR 10700.000000 60.000000 inf 1.000000 -uR 10725.000000 60.000000 inf 1.000000 -uR 10750.000000 60.000000 inf 1.000000 -uR 10775.000000 60.000000 inf 1.000000 -uR 10800.000000 60.000000 inf 1.000000 -uR 10825.000000 60.000000 inf 1.000000 -uR 10850.000000 60.000000 inf 1.000000 -uR 10875.000000 60.000000 inf 1.000000 -uR 10900.000000 60.000000 inf 1.000000 -uR 10925.000000 60.000000 inf 1.000000 -uR 10950.000000 60.000000 inf 1.000000 -uR 10975.000000 60.000000 inf 1.000000 -uR 11000.000000 60.000000 inf 1.000000 -uR 11025.000000 60.000000 inf 1.000000 -uR 11050.000000 60.000000 inf 1.000000 -uR 11075.000000 60.000000 inf 1.000000 -uR 11100.000000 60.000000 inf 1.000000 -uR 11125.000000 60.000000 inf 1.000000 -uR 11150.000000 60.000000 inf 1.000000 -uR 11175.000000 60.000000 inf 1.000000 -uR 11200.000000 60.000000 inf 1.000000 -uR 11225.000000 60.000000 inf 1.000000 -uR 11250.000000 60.000000 inf 1.000000 -uR 11275.000000 60.000000 inf 1.000000 -uR 11300.000000 60.000000 inf 1.000000 -uR 11325.000000 60.000000 inf 1.000000 -uR 11350.000000 60.000000 inf 1.000000 -uR 11375.000000 60.000000 inf 1.000000 -uR 11400.000000 60.000000 inf 1.000000 -uR 11425.000000 60.000000 inf 1.000000 -uR 11450.000000 60.000000 inf 1.000000 -uR 11475.000000 60.000000 inf 1.000000 -uR 11500.000000 60.000000 inf 1.000000 -uR 11525.000000 60.000000 inf 1.000000 -uR 11550.000000 60.000000 inf 1.000000 -uR 11575.000000 60.000000 inf 1.000000 -uR 11600.000000 60.000000 inf 1.000000 -uR 11625.000000 60.000000 inf 1.000000 -uR 11650.000000 60.000000 inf 1.000000 -uR 11675.000000 60.000000 inf 1.000000 -uR 11700.000000 60.000000 inf 1.000000 -uR 11725.000000 60.000000 inf 1.000000 -uR 11750.000000 60.000000 inf 1.000000 -uR 11775.000000 60.000000 inf 1.000000 -uR 11800.000000 60.000000 inf 1.000000 -uR 11825.000000 60.000000 inf 1.000000 -uR 11850.000000 60.000000 inf 1.000000 -uR 11875.000000 60.000000 inf 1.000000 -uR 11900.000000 60.000000 inf 1.000000 -uR 11925.000000 60.000000 inf 1.000000 -uR 11950.000000 60.000000 inf 1.000000 -uR 11975.000000 60.000000 inf 1.000000 -uR 12000.000000 60.000000 inf 1.000000 -uR 12025.000000 60.000000 inf 1.000000 -uR 12050.000000 60.000000 inf 1.000000 -uR 12075.000000 60.000000 inf 1.000000 -uR 12100.000000 60.000000 inf 1.000000 -uR 12125.000000 60.000000 inf 1.000000 -uR 12150.000000 60.000000 inf 1.000000 -uR 12175.000000 60.000000 inf 1.000000 -uR 12200.000000 60.000000 inf 1.000000 -uR 12225.000000 60.000000 inf 1.000000 -uR 12250.000000 60.000000 inf 1.000000 -uR 12275.000000 60.000000 inf 1.000000 -uR 12300.000000 60.000000 inf 1.000000 -uR 12325.000000 60.000000 inf 1.000000 -uR 12350.000000 60.000000 inf 1.000000 -uR 12375.000000 60.000000 inf 1.000000 -uR 12400.000000 60.000000 inf 1.000000 -uR 12425.000000 60.000000 inf 1.000000 -uR 12450.000000 60.000000 inf 1.000000 -uR 12475.000000 60.000000 inf 1.000000 -uR 12500.000000 60.000000 inf 1.000000 -uR 12525.000000 60.000000 inf 1.000000 -uR 12550.000000 60.000000 inf 1.000000 -uR 12575.000000 60.000000 inf 1.000000 -uR 12600.000000 60.000000 inf 1.000000 -uR 12625.000000 60.000000 inf 1.000000 -uR 12650.000000 60.000000 inf 1.000000 -uR 12675.000000 60.000000 inf 1.000000 -uR 12700.000000 60.000000 inf 1.000000 -uR 12725.000000 60.000000 inf 1.000000 -uR 12750.000000 60.000000 inf 1.000000 -uR 12775.000000 60.000000 inf 1.000000 -uR 12800.000000 60.000000 inf 1.000000 -uR 12825.000000 60.000000 inf 1.000000 -uR 12850.000000 60.000000 inf 1.000000 -uR 12875.000000 60.000000 inf 1.000000 -uR 12900.000000 60.000000 inf 1.000000 -uR 12925.000000 60.000000 inf 1.000000 -uR 12950.000000 60.000000 inf 1.000000 -uR 12975.000000 60.000000 inf 1.000000 -uR 13000.000000 60.000000 inf 1.000000 -uR 13025.000000 60.000000 inf 1.000000 -uR 13050.000000 60.000000 inf 1.000000 -uR 13075.000000 60.000000 inf 1.000000 -uR 13100.000000 60.000000 inf 1.000000 -uR 13125.000000 60.000000 inf 1.000000 -uR 13150.000000 60.000000 inf 1.000000 -uR 13175.000000 60.000000 inf 1.000000 -uR 13200.000000 60.000000 inf 1.000000 -uR 13225.000000 60.000000 inf 1.000000 -uR 13250.000000 60.000000 inf 1.000000 -uR 13275.000000 60.000000 inf 1.000000 -uR 13300.000000 60.000000 inf 1.000000 -uR 13325.000000 60.000000 inf 1.000000 -uR 13350.000000 60.000000 inf 1.000000 -uR 13375.000000 60.000000 inf 1.000000 -uR 13400.000000 60.000000 inf 1.000000 -uR 13425.000000 60.000000 inf 1.000000 -uR 13450.000000 60.000000 inf 1.000000 -uR 13475.000000 60.000000 inf 1.000000 -uR 13500.000000 60.000000 inf 1.000000 -uR 13525.000000 60.000000 inf 1.000000 -uR 13550.000000 60.000000 inf 1.000000 -uR 13575.000000 60.000000 inf 1.000000 -uR 13600.000000 60.000000 inf 1.000000 -uR 13625.000000 60.000000 inf 1.000000 -uR 13650.000000 60.000000 inf 1.000000 -uR 13675.000000 60.000000 inf 1.000000 -uR 13700.000000 60.000000 inf 1.000000 -uR 13725.000000 60.000000 inf 1.000000 -uR 13750.000000 60.000000 inf 1.000000 -uR 13775.000000 60.000000 inf 1.000000 -uR 13800.000000 60.000000 inf 1.000000 -uR 13825.000000 60.000000 inf 1.000000 -uR 13850.000000 60.000000 inf 1.000000 -uR 13875.000000 60.000000 inf 1.000000 -uR 13900.000000 60.000000 inf 1.000000 -uR 13925.000000 60.000000 inf 1.000000 -uR 13950.000000 60.000000 inf 1.000000 -uR 13975.000000 60.000000 inf 1.000000 -uR 14000.000000 60.000000 inf 1.000000 -uR 14025.000000 60.000000 inf 1.000000 -uR 14050.000000 60.000000 inf 1.000000 -uR 14075.000000 60.000000 inf 1.000000 -uR 14100.000000 60.000000 inf 1.000000 -uR 14125.000000 60.000000 inf 1.000000 -uR 14150.000000 60.000000 inf 1.000000 -uR 14175.000000 60.000000 inf 1.000000 -uR 14200.000000 60.000000 inf 1.000000 -uR 14225.000000 60.000000 inf 1.000000 -uR 14250.000000 60.000000 inf 1.000000 -uR 14275.000000 60.000000 inf 1.000000 -uR 14300.000000 60.000000 inf 1.000000 -uR 14325.000000 60.000000 inf 1.000000 -uR 14350.000000 60.000000 inf 1.000000 -uR 14375.000000 60.000000 inf 1.000000 -uR 14400.000000 60.000000 inf 1.000000 -uR 14425.000000 60.000000 inf 1.000000 -uR 14450.000000 60.000000 inf 1.000000 -uR 14475.000000 60.000000 inf 1.000000 -uR 14500.000000 60.000000 inf 1.000000 -uR 14525.000000 60.000000 inf 1.000000 -uR 14550.000000 60.000000 inf 1.000000 -uR 14575.000000 60.000000 inf 1.000000 -uR 14600.000000 60.000000 inf 1.000000 -uR 14625.000000 60.000000 inf 1.000000 -uR 14650.000000 60.000000 inf 1.000000 -uR 14675.000000 60.000000 inf 1.000000 -uR 14700.000000 60.000000 inf 1.000000 -uR 14725.000000 60.000000 inf 1.000000 -uR 14750.000000 60.000000 inf 1.000000 -uR 14775.000000 60.000000 inf 1.000000 -uR 14800.000000 60.000000 inf 1.000000 -uR 14825.000000 60.000000 inf 1.000000 -uR 14850.000000 60.000000 inf 1.000000 -uR 14875.000000 60.000000 inf 1.000000 -uR 14900.000000 60.000000 inf 1.000000 -uR 14925.000000 60.000000 inf 1.000000 -uR 14950.000000 60.000000 inf 1.000000 -uR 14975.000000 60.000000 inf 1.000000 -uR 15000.000000 60.000000 inf 1.000000 -uR 15025.000000 60.000000 inf 1.000000 -uR 15050.000000 60.000000 inf 1.000000 -uR 15075.000000 60.000000 inf 1.000000 -uR 15100.000000 60.000000 inf 1.000000 -uR 15125.000000 60.000000 inf 1.000000 -uR 15150.000000 60.000000 inf 1.000000 -uR 15175.000000 60.000000 inf 1.000000 -uR 15200.000000 60.000000 inf 1.000000 -uR 15225.000000 60.000000 inf 1.000000 -uR 15250.000000 60.000000 inf 1.000000 -uR 15275.000000 60.000000 inf 1.000000 -uR 15300.000000 60.000000 inf 1.000000 -uR 15325.000000 60.000000 inf 1.000000 -uR 15350.000000 60.000000 inf 1.000000 -uR 15375.000000 60.000000 inf 1.000000 -uR 15400.000000 60.000000 inf 1.000000 -uR 15425.000000 60.000000 inf 1.000000 -uR 15450.000000 60.000000 inf 1.000000 -uR 15475.000000 60.000000 inf 1.000000 -uR 15500.000000 60.000000 inf 1.000000 -uR 15525.000000 60.000000 inf 1.000000 -uR 15550.000000 60.000000 inf 1.000000 -uR 15575.000000 60.000000 inf 1.000000 -uR 15600.000000 60.000000 inf 1.000000 -uR 15625.000000 60.000000 inf 1.000000 -uR 15650.000000 60.000000 inf 1.000000 -uR 15675.000000 60.000000 inf 1.000000 -uR 15700.000000 60.000000 inf 1.000000 -uR 15725.000000 60.000000 inf 1.000000 -uR 15750.000000 60.000000 inf 1.000000 -uR 15775.000000 60.000000 inf 1.000000 -uR 15800.000000 60.000000 inf 1.000000 -uR 15825.000000 60.000000 inf 1.000000 -uR 15850.000000 60.000000 inf 1.000000 -uR 15875.000000 60.000000 inf 1.000000 -uR 15900.000000 60.000000 inf 1.000000 -uR 15925.000000 60.000000 inf 1.000000 -uR 15950.000000 60.000000 inf 1.000000 -uR 15975.000000 60.000000 inf 1.000000 -uR 16000.000000 60.000000 inf 1.000000 -uR 16025.000000 60.000000 inf 1.000000 -uR 16050.000000 60.000000 inf 1.000000 -uR 16075.000000 60.000000 inf 1.000000 -uR 16100.000000 60.000000 inf 1.000000 -uR 16125.000000 60.000000 inf 1.000000 -uR 16150.000000 60.000000 inf 1.000000 -uR 16175.000000 60.000000 inf 1.000000 -uR 16200.000000 60.000000 inf 1.000000 -uR 16225.000000 60.000000 inf 1.000000 -uR 16250.000000 60.000000 inf 1.000000 -uR 16275.000000 60.000000 inf 1.000000 -uR 16300.000000 60.000000 inf 1.000000 -uR 16325.000000 60.000000 inf 1.000000 -uR 16350.000000 60.000000 inf 1.000000 -uR 16375.000000 60.000000 inf 1.000000 -uR 16400.000000 60.000000 inf 1.000000 -uR 16425.000000 60.000000 inf 1.000000 -uR 16450.000000 60.000000 inf 1.000000 -uR 16475.000000 60.000000 inf 1.000000 -uR 16500.000000 60.000000 inf 1.000000 -uR 16525.000000 60.000000 inf 1.000000 -uR 16550.000000 60.000000 inf 1.000000 -uR 16575.000000 60.000000 inf 1.000000 -uR 16600.000000 60.000000 inf 1.000000 -uR 16625.000000 60.000000 inf 1.000000 -uR 16650.000000 60.000000 inf 1.000000 -uR 16675.000000 60.000000 inf 1.000000 -uR 16700.000000 60.000000 inf 1.000000 -uR 16725.000000 60.000000 inf 1.000000 -uR 16750.000000 60.000000 inf 1.000000 -uR 16775.000000 60.000000 inf 1.000000 -uR 16800.000000 60.000000 inf 1.000000 -uR 16825.000000 60.000000 inf 1.000000 -uR 16850.000000 60.000000 inf 1.000000 -uR 16875.000000 60.000000 inf 1.000000 -uR 16900.000000 60.000000 inf 1.000000 -uR 16925.000000 60.000000 inf 1.000000 -uR 16950.000000 60.000000 inf 1.000000 -uR 16975.000000 60.000000 inf 1.000000 -uR 17000.000000 60.000000 inf 1.000000 -uR 1930.000000 70.000000 inf 1.000000 -uR 1940.000000 70.000000 inf 1.000000 -uR 1950.000000 70.000000 inf 1.000000 -uR 1960.000000 70.000000 inf 1.000000 -uR 1970.000000 70.000000 inf 1.000000 -uR 1980.000000 70.000000 inf 1.000000 -uR 1990.000000 70.000000 inf 1.000000 -uR 2000.000000 70.000000 inf 1.000000 -uR 2010.000000 70.000000 inf 1.000000 -uR 2020.000000 70.000000 inf 1.000000 -uR 2030.000000 70.000000 inf 1.000000 -uR 2040.000000 70.000000 inf 1.000000 -uR 2050.000000 70.000000 inf 1.000000 -uR 2060.000000 70.000000 inf 1.000000 -uR 2070.000000 70.000000 inf 1.000000 -uR 2080.000000 70.000000 inf 1.000000 -uR 2090.000000 70.000000 inf 1.000000 -uR 2100.000000 70.000000 inf 1.000000 -uR 2110.000000 70.000000 inf 1.000000 -uR 2120.000000 70.000000 inf 1.000000 -uR 2130.000000 70.000000 inf 1.000000 -uR 2140.000000 70.000000 inf 1.000000 -uR 2150.000000 70.000000 inf 1.000000 -uR 2160.000000 70.000000 inf 1.000000 -uR 2170.000000 70.000000 inf 1.000000 -uR 2180.000000 70.000000 inf 1.000000 -uR 2190.000000 70.000000 inf 1.000000 -uR 2200.000000 70.000000 inf 1.000000 -uR 2210.000000 70.000000 inf 1.000000 -uR 2220.000000 70.000000 inf 1.000000 -uR 2230.000000 70.000000 inf 1.000000 -uR 2240.000000 70.000000 inf 1.000000 -uR 2250.000000 70.000000 inf 1.000000 -uR 2260.000000 70.000000 inf 1.000000 -uR 2270.000000 70.000000 inf 1.000000 -uR 2280.000000 70.000000 inf 1.000000 -uR 2290.000000 70.000000 inf 1.000000 -uR 2300.000000 70.000000 inf 1.000000 -uR 2310.000000 70.000000 inf 1.000000 -uR 2320.000000 70.000000 inf 1.000000 -uR 2330.000000 70.000000 inf 1.000000 -uR 2340.000000 70.000000 inf 1.000000 -uR 2350.000000 70.000000 inf 1.000000 -uR 2360.000000 70.000000 inf 1.000000 -uR 2370.000000 70.000000 inf 1.000000 -uR 2380.000000 70.000000 inf 1.000000 -uR 2390.000000 70.000000 inf 1.000000 -uR 2400.000000 70.000000 inf 1.000000 -uR 2410.000000 70.000000 inf 1.000000 -uR 2420.000000 70.000000 inf 1.000000 -uR 2430.000000 70.000000 inf 1.000000 -uR 2440.000000 70.000000 inf 1.000000 -uR 2450.000000 70.000000 inf 1.000000 -uR 2460.000000 70.000000 inf 1.000000 -uR 2470.000000 70.000000 inf 1.000000 -uR 2480.000000 70.000000 inf 1.000000 -uR 2490.000000 70.000000 inf 1.000000 -uR 2500.000000 70.000000 inf 1.000000 -uR 2510.000000 70.000000 inf 1.000000 -uR 2520.000000 70.000000 inf 1.000000 -uR 2530.000000 70.000000 inf 1.000000 -uR 2540.000000 70.000000 inf 1.000000 -uR 2550.000000 70.000000 inf 1.000000 -uR 2560.000000 70.000000 inf 1.000000 -uR 2570.000000 70.000000 inf 1.000000 -uR 2580.000000 70.000000 inf 1.000000 -uR 2590.000000 70.000000 inf 1.000000 -uR 2600.000000 70.000000 inf 1.000000 -uR 2610.000000 70.000000 inf 1.000000 -uR 2620.000000 70.000000 inf 1.000000 -uR 2630.000000 70.000000 inf 1.000000 -uR 2640.000000 70.000000 inf 1.000000 -uR 2650.000000 70.000000 inf 1.000000 -uR 2660.000000 70.000000 inf 1.000000 -uR 2670.000000 70.000000 inf 1.000000 -uR 2680.000000 70.000000 inf 1.000000 -uR 2690.000000 70.000000 inf 1.000000 -uR 2700.000000 70.000000 inf 1.000000 -uR 2710.000000 70.000000 inf 1.000000 -uR 2720.000000 70.000000 inf 1.000000 -uR 2730.000000 70.000000 inf 1.000000 -uR 2740.000000 70.000000 inf 1.000000 -uR 2750.000000 70.000000 inf 1.000000 -uR 2760.000000 70.000000 inf 1.000000 -uR 2770.000000 70.000000 inf 1.000000 -uR 2780.000000 70.000000 inf 1.000000 -uR 2790.000000 70.000000 inf 1.000000 -uR 2800.000000 70.000000 inf 1.000000 -uR 2810.000000 70.000000 inf 1.000000 -uR 2820.000000 70.000000 inf 1.000000 -uR 2830.000000 70.000000 inf 1.000000 -uR 2840.000000 70.000000 inf 1.000000 -uR 2850.000000 70.000000 inf 1.000000 -uR 2860.000000 70.000000 inf 1.000000 -uR 2870.000000 70.000000 inf 1.000000 -uR 2880.000000 70.000000 inf 1.000000 -uR 2890.000000 70.000000 inf 1.000000 -uR 2900.000000 70.000000 inf 1.000000 -uR 2910.000000 70.000000 inf 1.000000 -uR 2920.000000 70.000000 inf 1.000000 -uR 2930.000000 70.000000 inf 1.000000 -uR 2940.000000 70.000000 inf 1.000000 -uR 2950.000000 70.000000 inf 1.000000 -uR 2960.000000 70.000000 inf 1.000000 -uR 2970.000000 70.000000 inf 1.000000 -uR 2980.000000 70.000000 inf 1.000000 -uR 2990.000000 70.000000 inf 1.000000 -uR 3000.000000 70.000000 inf 1.000000 -uR 3010.000000 70.000000 inf 1.000000 -uR 3020.000000 70.000000 inf 1.000000 -uR 3030.000000 70.000000 inf 1.000000 -uR 3040.000000 70.000000 inf 1.000000 -uR 3050.000000 70.000000 inf 1.000000 -uR 3060.000000 70.000000 inf 1.000000 -uR 3070.000000 70.000000 inf 1.000000 -uR 3080.000000 70.000000 inf 1.000000 -uR 3090.000000 70.000000 inf 1.000000 -uR 3100.000000 70.000000 inf 1.000000 -uR 3110.000000 70.000000 inf 1.000000 -uR 3120.000000 70.000000 inf 1.000000 -uR 3130.000000 70.000000 inf 1.000000 -uR 3140.000000 70.000000 inf 1.000000 -uR 3150.000000 70.000000 inf 1.000000 -uR 3160.000000 70.000000 inf 1.000000 -uR 3170.000000 70.000000 inf 1.000000 -uR 3180.000000 70.000000 inf 1.000000 -uR 3190.000000 70.000000 inf 1.000000 -uR 3200.000000 70.000000 inf 1.000000 -uR 3210.000000 70.000000 inf 1.000000 -uR 3220.000000 70.000000 inf 1.000000 -uR 3230.000000 70.000000 inf 1.000000 -uR 3240.000000 70.000000 inf 1.000000 -uR 3250.000000 70.000000 inf 1.000000 -uR 3260.000000 70.000000 inf 1.000000 -uR 3270.000000 70.000000 inf 1.000000 -uR 3280.000000 70.000000 inf 1.000000 -uR 3290.000000 70.000000 inf 1.000000 -uR 3300.000000 70.000000 inf 1.000000 -uR 3310.000000 70.000000 inf 1.000000 -uR 3320.000000 70.000000 inf 1.000000 -uR 3330.000000 70.000000 inf 1.000000 -uR 3340.000000 70.000000 inf 1.000000 -uR 3350.000000 70.000000 inf 1.000000 -uR 3360.000000 70.000000 inf 1.000000 -uR 3370.000000 70.000000 inf 1.000000 -uR 3380.000000 70.000000 inf 1.000000 -uR 3390.000000 70.000000 inf 1.000000 -uR 3400.000000 70.000000 inf 1.000000 -uR 3410.000000 70.000000 inf 1.000000 -uR 3420.000000 70.000000 inf 1.000000 -uR 3430.000000 70.000000 inf 1.000000 -uR 3440.000000 70.000000 inf 1.000000 -uR 3450.000000 70.000000 inf 1.000000 -uR 3460.000000 70.000000 inf 1.000000 -uR 3470.000000 70.000000 inf 1.000000 -uR 3480.000000 70.000000 inf 1.000000 -uR 3490.000000 70.000000 inf 1.000000 -uR 3500.000000 70.000000 inf 1.000000 -uR 3510.000000 70.000000 inf 1.000000 -uR 3520.000000 70.000000 inf 1.000000 -uR 3530.000000 70.000000 inf 1.000000 -uR 3540.000000 70.000000 inf 1.000000 -uR 3550.000000 70.000000 inf 1.000000 -uR 3560.000000 70.000000 inf 1.000000 -uR 3570.000000 70.000000 inf 1.000000 -uR 3580.000000 70.000000 inf 1.000000 -uR 3590.000000 70.000000 inf 1.000000 -uR 3600.000000 70.000000 inf 1.000000 -uR 3610.000000 70.000000 inf 1.000000 -uR 3620.000000 70.000000 inf 1.000000 -uR 3630.000000 70.000000 inf 1.000000 -uR 3640.000000 70.000000 inf 1.000000 -uR 3650.000000 70.000000 inf 1.000000 -uR 3660.000000 70.000000 inf 1.000000 -uR 3670.000000 70.000000 inf 1.000000 -uR 3680.000000 70.000000 inf 1.000000 -uR 3690.000000 70.000000 inf 1.000000 -uR 3700.000000 70.000000 inf 1.000000 -uR 3710.000000 70.000000 inf 1.000000 -uR 3720.000000 70.000000 inf 1.000000 -uR 3730.000000 70.000000 inf 1.000000 -uR 3740.000000 70.000000 inf 1.000000 -uR 3750.000000 70.000000 inf 1.000000 -uR 3760.000000 70.000000 inf 1.000000 -uR 3770.000000 70.000000 inf 1.000000 -uR 3780.000000 70.000000 inf 1.000000 -uR 3790.000000 70.000000 inf 1.000000 -uR 3800.000000 70.000000 inf 1.000000 -uR 3810.000000 70.000000 inf 1.000000 -uR 3820.000000 70.000000 inf 1.000000 -uR 3830.000000 70.000000 inf 1.000000 -uR 3840.000000 70.000000 inf 1.000000 -uR 3850.000000 70.000000 inf 1.000000 -uR 3860.000000 70.000000 inf 1.000000 -uR 3870.000000 70.000000 inf 1.000000 -uR 3880.000000 70.000000 inf 1.000000 -uR 3890.000000 70.000000 inf 1.000000 -uR 3900.000000 70.000000 inf 1.000000 -uR 3910.000000 70.000000 inf 1.000000 -uR 3920.000000 70.000000 inf 1.000000 -uR 3930.000000 70.000000 inf 1.000000 -uR 3940.000000 70.000000 inf 1.000000 -uR 3950.000000 70.000000 inf 1.000000 -uR 3960.000000 70.000000 inf 1.000000 -uR 3970.000000 70.000000 inf 1.000000 -uR 3980.000000 70.000000 inf 1.000000 -uR 3990.000000 70.000000 inf 1.000000 -uR 4000.000000 70.000000 inf 1.000000 -uR 4010.000000 70.000000 inf 1.000000 -uR 4020.000000 70.000000 inf 1.000000 -uR 4030.000000 70.000000 inf 1.000000 -uR 4040.000000 70.000000 inf 1.000000 -uR 4050.000000 70.000000 inf 1.000000 -uR 4060.000000 70.000000 inf 1.000000 -uR 4070.000000 70.000000 inf 1.000000 -uR 4080.000000 70.000000 inf 1.000000 -uR 4090.000000 70.000000 inf 1.000000 -uR 4100.000000 70.000000 inf 1.000000 -uR 4110.000000 70.000000 inf 1.000000 -uR 4120.000000 70.000000 inf 1.000000 -uR 4130.000000 70.000000 inf 1.000000 -uR 4140.000000 70.000000 inf 1.000000 -uR 4150.000000 70.000000 inf 1.000000 -uR 4160.000000 70.000000 inf 1.000000 -uR 4170.000000 70.000000 inf 1.000000 -uR 4180.000000 70.000000 inf 1.000000 -uR 4190.000000 70.000000 inf 1.000000 -uR 4200.000000 70.000000 inf 1.000000 -uR 4210.000000 70.000000 inf 1.000000 -uR 4220.000000 70.000000 inf 1.000000 -uR 4230.000000 70.000000 inf 1.000000 -uR 4240.000000 70.000000 inf 1.000000 -uR 4250.000000 70.000000 inf 1.000000 -uR 4260.000000 70.000000 inf 1.000000 -uR 4270.000000 70.000000 inf 1.000000 -uR 4280.000000 70.000000 inf 1.000000 -uR 4290.000000 70.000000 inf 1.000000 -uR 4300.000000 70.000000 inf 1.000000 -uR 4310.000000 70.000000 inf 1.000000 -uR 4320.000000 70.000000 inf 1.000000 -uR 4330.000000 70.000000 inf 1.000000 -uR 4340.000000 70.000000 inf 1.000000 -uR 4350.000000 70.000000 inf 1.000000 -uR 4360.000000 70.000000 inf 1.000000 -uR 4370.000000 70.000000 inf 1.000000 -uR 4380.000000 70.000000 inf 1.000000 -uR 4390.000000 70.000000 inf 1.000000 -uR 4400.000000 70.000000 inf 1.000000 -uR 4410.000000 70.000000 inf 1.000000 -uR 4420.000000 70.000000 inf 1.000000 -uR 4430.000000 70.000000 inf 1.000000 -uR 4440.000000 70.000000 inf 1.000000 -uR 4450.000000 70.000000 inf 1.000000 -uR 4460.000000 70.000000 inf 1.000000 -uR 4470.000000 70.000000 inf 1.000000 -uR 4480.000000 70.000000 inf 1.000000 -uR 4490.000000 70.000000 inf 1.000000 -uR 4500.000000 70.000000 inf 1.000000 -uR 4510.000000 70.000000 inf 1.000000 -uR 4520.000000 70.000000 inf 1.000000 -uR 4530.000000 70.000000 inf 1.000000 -uR 4540.000000 70.000000 inf 1.000000 -uR 4550.000000 70.000000 inf 1.000000 -uR 4560.000000 70.000000 inf 1.000000 -uR 4570.000000 70.000000 inf 1.000000 -uR 4580.000000 70.000000 inf 1.000000 -uR 4590.000000 70.000000 inf 1.000000 -uR 4600.000000 70.000000 inf 1.000000 -uR 4610.000000 70.000000 inf 1.000000 -uR 4620.000000 70.000000 inf 1.000000 -uR 4630.000000 70.000000 inf 1.000000 -uR 4640.000000 70.000000 inf 1.000000 -uR 4650.000000 70.000000 inf 1.000000 -uR 4660.000000 70.000000 inf 1.000000 -uR 4670.000000 70.000000 inf 1.000000 -uR 4680.000000 70.000000 inf 1.000000 -uR 4690.000000 70.000000 inf 1.000000 -uR 4700.000000 70.000000 inf 1.000000 -uR 4710.000000 70.000000 inf 1.000000 -uR 4720.000000 70.000000 inf 1.000000 -uR 4730.000000 70.000000 inf 1.000000 -uR 4740.000000 70.000000 inf 1.000000 -uR 4750.000000 70.000000 inf 1.000000 -uR 4760.000000 70.000000 inf 1.000000 -uR 4770.000000 70.000000 inf 1.000000 -uR 4780.000000 70.000000 inf 1.000000 -uR 4790.000000 70.000000 inf 1.000000 -uR 4800.000000 70.000000 inf 1.000000 -uR 4810.000000 70.000000 inf 1.000000 -uR 4820.000000 70.000000 inf 1.000000 -uR 4830.000000 70.000000 inf 1.000000 -uR 4840.000000 70.000000 inf 1.000000 -uR 4850.000000 70.000000 inf 1.000000 -uR 4860.000000 70.000000 inf 1.000000 -uR 4870.000000 70.000000 inf 1.000000 -uR 4880.000000 70.000000 inf 1.000000 -uR 4890.000000 70.000000 inf 1.000000 -uR 4900.000000 70.000000 inf 1.000000 -uR 4910.000000 70.000000 inf 1.000000 -uR 4920.000000 70.000000 inf 1.000000 -uR 4930.000000 70.000000 inf 1.000000 -uR 4940.000000 70.000000 inf 1.000000 -uR 4950.000000 70.000000 inf 1.000000 -uR 4960.000000 70.000000 inf 1.000000 -uR 4970.000000 70.000000 inf 1.000000 -uR 4980.000000 70.000000 inf 1.000000 -uR 4990.000000 70.000000 inf 1.000000 -uR 5000.000000 70.000000 inf 1.000000 -uR 5010.000000 70.000000 inf 1.000000 -uR 5020.000000 70.000000 inf 1.000000 -uR 5030.000000 70.000000 inf 1.000000 -uR 5040.000000 70.000000 inf 1.000000 -uR 5050.000000 70.000000 inf 1.000000 -uR 5060.000000 70.000000 inf 1.000000 -uR 5070.000000 70.000000 inf 1.000000 -uR 5080.000000 70.000000 inf 1.000000 -uR 5090.000000 70.000000 inf 1.000000 -uR 5100.000000 70.000000 inf 1.000000 -uR 5110.000000 70.000000 inf 1.000000 -uR 5120.000000 70.000000 inf 1.000000 -uR 5130.000000 70.000000 inf 1.000000 -uR 5140.000000 70.000000 inf 1.000000 -uR 5150.000000 70.000000 inf 1.000000 -uR 5160.000000 70.000000 inf 1.000000 -uR 5170.000000 70.000000 inf 1.000000 -uR 5180.000000 70.000000 inf 1.000000 -uR 5190.000000 70.000000 inf 1.000000 -uR 5200.000000 70.000000 inf 1.000000 -uR 5210.000000 70.000000 inf 1.000000 -uR 5220.000000 70.000000 inf 1.000000 -uR 5230.000000 70.000000 inf 1.000000 -uR 5240.000000 70.000000 inf 1.000000 -uR 5250.000000 70.000000 inf 1.000000 -uR 5260.000000 70.000000 inf 1.000000 -uR 5270.000000 70.000000 inf 1.000000 -uR 5280.000000 70.000000 inf 1.000000 -uR 5290.000000 70.000000 inf 1.000000 -uR 5300.000000 70.000000 inf 1.000000 -uR 5310.000000 70.000000 inf 1.000000 -uR 5320.000000 70.000000 inf 1.000000 -uR 5330.000000 70.000000 inf 1.000000 -uR 5340.000000 70.000000 inf 1.000000 -uR 5350.000000 70.000000 inf 1.000000 -uR 5360.000000 70.000000 inf 1.000000 -uR 5370.000000 70.000000 inf 1.000000 -uR 5380.000000 70.000000 inf 1.000000 -uR 5390.000000 70.000000 inf 1.000000 -uR 5400.000000 70.000000 inf 1.000000 -uR 5410.000000 70.000000 inf 1.000000 -uR 5420.000000 70.000000 inf 1.000000 -uR 5430.000000 70.000000 inf 1.000000 -uR 5440.000000 70.000000 inf 1.000000 -uR 5450.000000 70.000000 inf 1.000000 -uR 5460.000000 70.000000 inf 1.000000 -uR 5470.000000 70.000000 inf 1.000000 -uR 5480.000000 70.000000 inf 1.000000 -uR 5490.000000 70.000000 inf 1.000000 -uR 5500.000000 70.000000 inf 1.000000 -uR 5510.000000 70.000000 inf 1.000000 -uR 5520.000000 70.000000 inf 1.000000 -uR 5530.000000 70.000000 inf 1.000000 -uR 5540.000000 70.000000 inf 1.000000 -uR 5550.000000 70.000000 inf 1.000000 -uR 5560.000000 70.000000 inf 1.000000 -uR 5570.000000 70.000000 inf 1.000000 -uR 5580.000000 70.000000 inf 1.000000 -uR 5590.000000 70.000000 inf 1.000000 -uR 5600.000000 70.000000 inf 1.000000 -uR 5610.000000 70.000000 inf 1.000000 -uR 5620.000000 70.000000 inf 1.000000 -uR 5630.000000 70.000000 inf 1.000000 -uR 5640.000000 70.000000 inf 1.000000 -uR 5650.000000 70.000000 inf 1.000000 -uR 5660.000000 70.000000 inf 1.000000 -uR 5670.000000 70.000000 inf 1.000000 -uR 5680.000000 70.000000 inf 1.000000 -uR 5690.000000 70.000000 inf 1.000000 -uR 5700.000000 70.000000 inf 1.000000 -uR 5710.000000 70.000000 inf 1.000000 -uR 5720.000000 70.000000 inf 1.000000 -uR 5730.000000 70.000000 inf 1.000000 -uR 5740.000000 70.000000 inf 1.000000 -uR 5750.000000 70.000000 inf 1.000000 -uR 5760.000000 70.000000 inf 1.000000 -uR 5770.000000 70.000000 inf 1.000000 -uR 5780.000000 70.000000 inf 1.000000 -uR 5790.000000 70.000000 inf 1.000000 -uR 5800.000000 70.000000 inf 1.000000 -uR 5810.000000 70.000000 inf 1.000000 -uR 5820.000000 70.000000 inf 1.000000 -uR 5830.000000 70.000000 inf 1.000000 -uR 5840.000000 70.000000 inf 1.000000 -uR 5850.000000 70.000000 inf 1.000000 -uR 5860.000000 70.000000 inf 1.000000 -uR 5870.000000 70.000000 inf 1.000000 -uR 5880.000000 70.000000 inf 1.000000 -uR 5890.000000 70.000000 inf 1.000000 -uR 5900.000000 70.000000 inf 1.000000 -uR 5910.000000 70.000000 inf 1.000000 -uR 5920.000000 70.000000 inf 1.000000 -uR 5930.000000 70.000000 inf 1.000000 -uR 5940.000000 70.000000 inf 1.000000 -uR 5950.000000 70.000000 inf 1.000000 -uR 5960.000000 70.000000 inf 1.000000 -uR 5970.000000 70.000000 inf 1.000000 -uR 5980.000000 70.000000 inf 1.000000 -uR 5990.000000 70.000000 inf 1.000000 -uR 6000.000000 70.000000 inf 1.000000 -uR 6010.000000 70.000000 inf 1.000000 -uR 6020.000000 70.000000 inf 1.000000 -uR 6030.000000 70.000000 inf 1.000000 -uR 6040.000000 70.000000 inf 1.000000 -uR 6050.000000 70.000000 inf 1.000000 -uR 6060.000000 70.000000 inf 1.000000 -uR 6070.000000 70.000000 inf 1.000000 -uR 6080.000000 70.000000 inf 1.000000 -uR 6090.000000 70.000000 inf 1.000000 -uR 6100.000000 70.000000 inf 1.000000 -uR 6110.000000 70.000000 inf 1.000000 -uR 6120.000000 70.000000 inf 1.000000 -uR 6130.000000 70.000000 inf 1.000000 -uR 6140.000000 70.000000 inf 1.000000 -uR 6150.000000 70.000000 inf 1.000000 -uR 6160.000000 70.000000 inf 1.000000 -uR 6170.000000 70.000000 inf 1.000000 -uR 6180.000000 70.000000 inf 1.000000 -uR 6190.000000 70.000000 inf 1.000000 -uR 6200.000000 70.000000 inf 1.000000 -uR 6210.000000 70.000000 inf 1.000000 -uR 6220.000000 70.000000 inf 1.000000 -uR 6230.000000 70.000000 inf 1.000000 -uR 6240.000000 70.000000 inf 1.000000 -uR 6250.000000 70.000000 inf 1.000000 -uR 6260.000000 70.000000 inf 1.000000 -uR 6270.000000 70.000000 inf 1.000000 -uR 6280.000000 70.000000 inf 1.000000 -uR 6290.000000 70.000000 inf 1.000000 -uR 6300.000000 70.000000 inf 1.000000 -uR 6310.000000 70.000000 inf 1.000000 -uR 6320.000000 70.000000 inf 1.000000 -uR 6330.000000 70.000000 inf 1.000000 -uR 6340.000000 70.000000 inf 1.000000 -uR 6350.000000 70.000000 inf 1.000000 -uR 6360.000000 70.000000 inf 1.000000 -uR 6370.000000 70.000000 inf 1.000000 -uR 6380.000000 70.000000 inf 1.000000 -uR 6390.000000 70.000000 inf 1.000000 -uR 6400.000000 70.000000 inf 1.000000 -uR 6410.000000 70.000000 inf 1.000000 -uR 6420.000000 70.000000 inf 1.000000 -uR 6430.000000 70.000000 inf 1.000000 -uR 6440.000000 70.000000 inf 1.000000 -uR 6450.000000 70.000000 inf 1.000000 -uR 6460.000000 70.000000 inf 1.000000 -uR 6470.000000 70.000000 inf 1.000000 -uR 6480.000000 70.000000 inf 1.000000 -uR 6490.000000 70.000000 inf 1.000000 -uR 6500.000000 70.000000 inf 1.000000 -uR 6510.000000 70.000000 inf 1.000000 -uR 6520.000000 70.000000 inf 1.000000 -uR 6530.000000 70.000000 inf 1.000000 -uR 6540.000000 70.000000 inf 1.000000 -uR 6550.000000 70.000000 inf 1.000000 -uR 6560.000000 70.000000 inf 1.000000 -uR 6570.000000 70.000000 inf 1.000000 -uR 6580.000000 70.000000 inf 1.000000 -uR 6590.000000 70.000000 inf 1.000000 -uR 6600.000000 70.000000 inf 1.000000 -uR 6610.000000 70.000000 inf 1.000000 -uR 6620.000000 70.000000 inf 1.000000 -uR 6630.000000 70.000000 inf 1.000000 -uR 6640.000000 70.000000 inf 1.000000 -uR 6650.000000 70.000000 inf 1.000000 -uR 6660.000000 70.000000 inf 1.000000 -uR 6670.000000 70.000000 inf 1.000000 -uR 6680.000000 70.000000 inf 1.000000 -uR 6690.000000 70.000000 inf 1.000000 -uR 6700.000000 70.000000 inf 1.000000 -uR 6710.000000 70.000000 inf 1.000000 -uR 6720.000000 70.000000 inf 1.000000 -uR 6730.000000 70.000000 inf 1.000000 -uR 6740.000000 70.000000 inf 1.000000 -uR 6750.000000 70.000000 inf 1.000000 -uR 6760.000000 70.000000 inf 1.000000 -uR 6770.000000 70.000000 inf 1.000000 -uR 6780.000000 70.000000 inf 1.000000 -uR 6790.000000 70.000000 inf 1.000000 -uR 6800.000000 70.000000 inf 1.000000 -uR 6810.000000 70.000000 inf 1.000000 -uR 6820.000000 70.000000 inf 1.000000 -uR 6830.000000 70.000000 inf 1.000000 -uR 6840.000000 70.000000 inf 1.000000 -uR 6850.000000 70.000000 inf 1.000000 -uR 6860.000000 70.000000 inf 1.000000 -uR 6870.000000 70.000000 inf 1.000000 -uR 6880.000000 70.000000 inf 1.000000 -uR 6890.000000 70.000000 inf 1.000000 -uR 6900.000000 70.000000 inf 1.000000 -uR 6910.000000 70.000000 inf 1.000000 -uR 6920.000000 70.000000 inf 1.000000 -uR 6930.000000 70.000000 inf 1.000000 -uR 6940.000000 70.000000 inf 1.000000 -uR 6950.000000 70.000000 inf 1.000000 -uR 6960.000000 70.000000 inf 1.000000 -uR 6970.000000 70.000000 inf 1.000000 -uR 6980.000000 70.000000 inf 1.000000 -uR 6990.000000 70.000000 inf 1.000000 -uR 7000.000000 70.000000 inf 1.000000 -uR 7010.000000 70.000000 inf 1.000000 -uR 7020.000000 70.000000 inf 1.000000 -uR 7030.000000 70.000000 inf 1.000000 -uR 7040.000000 70.000000 inf 1.000000 -uR 7050.000000 70.000000 inf 1.000000 -uR 7060.000000 70.000000 inf 1.000000 -uR 7070.000000 70.000000 inf 1.000000 -uR 7080.000000 70.000000 inf 1.000000 -uR 7090.000000 70.000000 inf 1.000000 -uR 7100.000000 70.000000 inf 1.000000 -uR 7110.000000 70.000000 inf 1.000000 -uR 7120.000000 70.000000 inf 1.000000 -uR 7130.000000 70.000000 inf 1.000000 -uR 7140.000000 70.000000 inf 1.000000 -uR 7150.000000 70.000000 inf 1.000000 -uR 7160.000000 70.000000 inf 1.000000 -uR 7170.000000 70.000000 inf 1.000000 -uR 7180.000000 70.000000 inf 1.000000 -uR 7190.000000 70.000000 inf 1.000000 -uR 7200.000000 70.000000 inf 1.000000 -uR 7210.000000 70.000000 inf 1.000000 -uR 7220.000000 70.000000 inf 1.000000 -uR 7230.000000 70.000000 inf 1.000000 -uR 7240.000000 70.000000 inf 1.000000 -uR 7250.000000 70.000000 inf 1.000000 -uR 7260.000000 70.000000 inf 1.000000 -uR 7270.000000 70.000000 inf 1.000000 -uR 7280.000000 70.000000 inf 1.000000 -uR 7290.000000 70.000000 inf 1.000000 -uR 7300.000000 70.000000 inf 1.000000 -uR 7310.000000 70.000000 inf 1.000000 -uR 7320.000000 70.000000 inf 1.000000 -uR 7330.000000 70.000000 inf 1.000000 -uR 7340.000000 70.000000 inf 1.000000 -uR 7350.000000 70.000000 inf 1.000000 -uR 7360.000000 70.000000 inf 1.000000 -uR 7370.000000 70.000000 inf 1.000000 -uR 7380.000000 70.000000 inf 1.000000 -uR 7390.000000 70.000000 inf 1.000000 -uR 7400.000000 70.000000 inf 1.000000 -uR 7410.000000 70.000000 inf 1.000000 -uR 7420.000000 70.000000 inf 1.000000 -uR 7430.000000 70.000000 inf 1.000000 -uR 7440.000000 70.000000 inf 1.000000 -uR 7450.000000 70.000000 inf 1.000000 -uR 7460.000000 70.000000 inf 1.000000 -uR 7470.000000 70.000000 inf 1.000000 -uR 7480.000000 70.000000 inf 1.000000 -uR 7490.000000 70.000000 inf 1.000000 -uR 7500.000000 70.000000 inf 1.000000 -uR 7510.000000 70.000000 inf 1.000000 -uR 7520.000000 70.000000 inf 1.000000 -uR 7530.000000 70.000000 inf 1.000000 -uR 7540.000000 70.000000 inf 1.000000 -uR 7550.000000 70.000000 inf 1.000000 -uR 7560.000000 70.000000 inf 1.000000 -uR 7570.000000 70.000000 inf 1.000000 -uR 7580.000000 70.000000 inf 1.000000 -uR 7590.000000 70.000000 inf 1.000000 -uR 7600.000000 70.000000 inf 1.000000 -uR 7610.000000 70.000000 inf 1.000000 -uR 7620.000000 70.000000 inf 1.000000 -uR 7630.000000 70.000000 inf 1.000000 -uR 7640.000000 70.000000 inf 1.000000 -uR 7650.000000 70.000000 inf 1.000000 -uR 7660.000000 70.000000 inf 1.000000 -uR 7670.000000 70.000000 inf 1.000000 -uR 7680.000000 70.000000 inf 1.000000 -uR 7690.000000 70.000000 inf 1.000000 -uR 7700.000000 70.000000 inf 1.000000 -uR 7710.000000 70.000000 inf 1.000000 -uR 7720.000000 70.000000 inf 1.000000 -uR 7730.000000 70.000000 inf 1.000000 -uR 7740.000000 70.000000 inf 1.000000 -uR 7750.000000 70.000000 inf 1.000000 -uR 7760.000000 70.000000 inf 1.000000 -uR 7770.000000 70.000000 inf 1.000000 -uR 7780.000000 70.000000 inf 1.000000 -uR 7790.000000 70.000000 inf 1.000000 -uR 7800.000000 70.000000 inf 1.000000 -uR 7810.000000 70.000000 inf 1.000000 -uR 7820.000000 70.000000 inf 1.000000 -uR 7830.000000 70.000000 inf 1.000000 -uR 7840.000000 70.000000 inf 1.000000 -uR 7850.000000 70.000000 inf 1.000000 -uR 7860.000000 70.000000 inf 1.000000 -uR 7870.000000 70.000000 inf 1.000000 -uR 7880.000000 70.000000 inf 1.000000 -uR 7890.000000 70.000000 inf 1.000000 -uR 7900.000000 70.000000 inf 1.000000 -uR 7910.000000 70.000000 inf 1.000000 -uR 7920.000000 70.000000 inf 1.000000 -uR 7930.000000 70.000000 inf 1.000000 -uR 7940.000000 70.000000 inf 1.000000 -uR 7950.000000 70.000000 inf 1.000000 -uR 7960.000000 70.000000 inf 1.000000 -uR 7970.000000 70.000000 inf 1.000000 -uR 7980.000000 70.000000 inf 1.000000 -uR 7990.000000 70.000000 inf 1.000000 -uR 8000.000000 70.000000 inf 1.000000 -uR 8010.000000 70.000000 inf 1.000000 -uR 8020.000000 70.000000 inf 1.000000 -uR 8030.000000 70.000000 inf 1.000000 -uR 8040.000000 70.000000 inf 1.000000 -uR 8050.000000 70.000000 inf 1.000000 -uR 8060.000000 70.000000 inf 1.000000 -uR 8070.000000 70.000000 inf 1.000000 -uR 8080.000000 70.000000 inf 1.000000 -uR 8090.000000 70.000000 inf 1.000000 -uR 8100.000000 70.000000 inf 1.000000 -uR 8110.000000 70.000000 inf 1.000000 -uR 8120.000000 70.000000 inf 1.000000 -uR 8130.000000 70.000000 inf 1.000000 -uR 8140.000000 70.000000 inf 1.000000 -uR 8150.000000 70.000000 inf 1.000000 -uR 8160.000000 70.000000 inf 1.000000 -uR 8170.000000 70.000000 inf 1.000000 -uR 8180.000000 70.000000 inf 1.000000 -uR 8190.000000 70.000000 inf 1.000000 -uR 8200.000000 70.000000 inf 1.000000 -uR 8210.000000 70.000000 inf 1.000000 -uR 8220.000000 70.000000 inf 1.000000 -uR 8230.000000 70.000000 inf 1.000000 -uR 8240.000000 70.000000 inf 1.000000 -uR 8250.000000 70.000000 inf 1.000000 -uR 8260.000000 70.000000 inf 1.000000 -uR 8270.000000 70.000000 inf 1.000000 -uR 8280.000000 70.000000 inf 1.000000 -uR 8290.000000 70.000000 inf 1.000000 -uR 8300.000000 70.000000 inf 1.000000 -uR 8310.000000 70.000000 inf 1.000000 -uR 8320.000000 70.000000 inf 1.000000 -uR 8330.000000 70.000000 inf 1.000000 -uR 8340.000000 70.000000 inf 1.000000 -uR 8350.000000 70.000000 inf 1.000000 -uR 8360.000000 70.000000 inf 1.000000 -uR 8370.000000 70.000000 inf 1.000000 -uR 8380.000000 70.000000 inf 1.000000 -uR 8390.000000 70.000000 inf 1.000000 -uR 8400.000000 70.000000 inf 1.000000 -uR 8410.000000 70.000000 inf 1.000000 -uR 8420.000000 70.000000 inf 1.000000 -uR 8430.000000 70.000000 inf 1.000000 -uR 8440.000000 70.000000 inf 1.000000 -uR 8450.000000 70.000000 inf 1.000000 -uR 8460.000000 70.000000 inf 1.000000 -uR 8470.000000 70.000000 inf 1.000000 -uR 8480.000000 70.000000 inf 1.000000 -uR 8490.000000 70.000000 inf 1.000000 -uR 8500.000000 70.000000 inf 1.000000 -uR 8510.000000 70.000000 inf 1.000000 -uR 8520.000000 70.000000 inf 1.000000 -uR 8530.000000 70.000000 inf 1.000000 -uR 8540.000000 70.000000 inf 1.000000 -uR 8550.000000 70.000000 inf 1.000000 -uR 8560.000000 70.000000 inf 1.000000 -uR 8570.000000 70.000000 inf 1.000000 -uR 8580.000000 70.000000 inf 1.000000 -uR 8590.000000 70.000000 inf 1.000000 -uR 8600.000000 70.000000 inf 1.000000 -uR 8610.000000 70.000000 inf 1.000000 -uR 8620.000000 70.000000 inf 1.000000 -uR 8630.000000 70.000000 inf 1.000000 -uR 8640.000000 70.000000 inf 1.000000 -uR 8650.000000 70.000000 inf 1.000000 -uR 8660.000000 70.000000 inf 1.000000 -uR 8670.000000 70.000000 inf 1.000000 -uR 8680.000000 70.000000 inf 1.000000 -uR 8690.000000 70.000000 inf 1.000000 -uR 8700.000000 70.000000 inf 1.000000 -uR 8710.000000 70.000000 inf 1.000000 -uR 8720.000000 70.000000 inf 1.000000 -uR 8730.000000 70.000000 inf 1.000000 -uR 8740.000000 70.000000 inf 1.000000 -uR 8750.000000 70.000000 inf 1.000000 -uR 8760.000000 70.000000 inf 1.000000 -uR 8770.000000 70.000000 inf 1.000000 -uR 8780.000000 70.000000 inf 1.000000 -uR 8790.000000 70.000000 inf 1.000000 -uR 8800.000000 70.000000 inf 1.000000 -uR 8810.000000 70.000000 inf 1.000000 -uR 8820.000000 70.000000 inf 1.000000 -uR 8830.000000 70.000000 inf 1.000000 -uR 8840.000000 70.000000 inf 1.000000 -uR 8850.000000 70.000000 inf 1.000000 -uR 8860.000000 70.000000 inf 1.000000 -uR 8870.000000 70.000000 inf 1.000000 -uR 8880.000000 70.000000 inf 1.000000 -uR 8890.000000 70.000000 inf 1.000000 -uR 8900.000000 70.000000 inf 1.000000 -uR 8910.000000 70.000000 inf 1.000000 -uR 8920.000000 70.000000 inf 1.000000 -uR 8930.000000 70.000000 inf 1.000000 -uR 8940.000000 70.000000 inf 1.000000 -uR 8950.000000 70.000000 inf 1.000000 -uR 8960.000000 70.000000 inf 1.000000 -uR 8970.000000 70.000000 inf 1.000000 -uR 8980.000000 70.000000 inf 1.000000 -uR 8990.000000 70.000000 inf 1.000000 -uR 9000.000000 70.000000 inf 1.000000 -uR 9010.000000 70.000000 inf 1.000000 -uR 9020.000000 70.000000 inf 1.000000 -uR 9030.000000 70.000000 inf 1.000000 -uR 9040.000000 70.000000 inf 1.000000 -uR 9050.000000 70.000000 inf 1.000000 -uR 9060.000000 70.000000 inf 1.000000 -uR 9070.000000 70.000000 inf 1.000000 -uR 9080.000000 70.000000 inf 1.000000 -uR 9090.000000 70.000000 inf 1.000000 -uR 9100.000000 70.000000 inf 1.000000 -uR 9110.000000 70.000000 inf 1.000000 -uR 9120.000000 70.000000 inf 1.000000 -uR 9130.000000 70.000000 inf 1.000000 -uR 9140.000000 70.000000 inf 1.000000 -uR 9150.000000 70.000000 inf 1.000000 -uR 9160.000000 70.000000 inf 1.000000 -uR 9170.000000 70.000000 inf 1.000000 -uR 9180.000000 70.000000 inf 1.000000 -uR 9190.000000 70.000000 inf 1.000000 -uR 9200.000000 70.000000 inf 1.000000 -uR 9210.000000 70.000000 inf 1.000000 -uR 9220.000000 70.000000 inf 1.000000 -uR 9230.000000 70.000000 inf 1.000000 -uR 9240.000000 70.000000 inf 1.000000 -uR 9250.000000 70.000000 inf 1.000000 -uR 9260.000000 70.000000 inf 1.000000 -uR 9270.000000 70.000000 inf 1.000000 -uR 9280.000000 70.000000 inf 1.000000 -uR 9290.000000 70.000000 inf 1.000000 -uR 9300.000000 70.000000 inf 1.000000 -uR 9310.000000 70.000000 inf 1.000000 -uR 9320.000000 70.000000 inf 1.000000 -uR 9330.000000 70.000000 inf 1.000000 -uR 9340.000000 70.000000 inf 1.000000 -uR 9350.000000 70.000000 inf 1.000000 -uR 9360.000000 70.000000 inf 1.000000 -uR 9370.000000 70.000000 inf 1.000000 -uR 9380.000000 70.000000 inf 1.000000 -uR 9390.000000 70.000000 inf 1.000000 -uR 9400.000000 70.000000 inf 1.000000 -uR 9410.000000 70.000000 inf 1.000000 -uR 9420.000000 70.000000 inf 1.000000 -uR 9430.000000 70.000000 inf 1.000000 -uR 9440.000000 70.000000 inf 1.000000 -uR 9450.000000 70.000000 inf 1.000000 -uR 9460.000000 70.000000 inf 1.000000 -uR 9470.000000 70.000000 inf 1.000000 -uR 9480.000000 70.000000 inf 1.000000 -uR 9490.000000 70.000000 inf 1.000000 -uR 9500.000000 70.000000 inf 1.000000 -uR 9510.000000 70.000000 inf 1.000000 -uR 9520.000000 70.000000 inf 1.000000 -uR 9530.000000 70.000000 inf 1.000000 -uR 9540.000000 70.000000 inf 1.000000 -uR 9550.000000 70.000000 inf 1.000000 -uR 9560.000000 70.000000 inf 1.000000 -uR 9570.000000 70.000000 inf 1.000000 -uR 9580.000000 70.000000 inf 1.000000 -uR 9590.000000 70.000000 inf 1.000000 -uR 9600.000000 70.000000 inf 1.000000 -uR 9610.000000 70.000000 inf 1.000000 -uR 9620.000000 70.000000 inf 1.000000 -uR 9630.000000 70.000000 inf 1.000000 -uR 9640.000000 70.000000 inf 1.000000 -uR 9650.000000 70.000000 inf 1.000000 -uR 9660.000000 70.000000 inf 1.000000 -uR 9670.000000 70.000000 inf 1.000000 -uR 9680.000000 70.000000 inf 1.000000 -uR 9690.000000 70.000000 inf 1.000000 -uR 9700.000000 70.000000 inf 1.000000 -uR 9710.000000 70.000000 inf 1.000000 -uR 9720.000000 70.000000 inf 1.000000 -uR 9730.000000 70.000000 inf 1.000000 -uR 9740.000000 70.000000 inf 1.000000 -uR 9750.000000 70.000000 inf 1.000000 -uR 9760.000000 70.000000 inf 1.000000 -uR 9770.000000 70.000000 inf 1.000000 -uR 9780.000000 70.000000 inf 1.000000 -uR 9790.000000 70.000000 inf 1.000000 -uR 9800.000000 70.000000 inf 1.000000 -uR 9810.000000 70.000000 inf 1.000000 -uR 9820.000000 70.000000 inf 1.000000 -uR 9830.000000 70.000000 inf 1.000000 -uR 9840.000000 70.000000 inf 1.000000 -uR 9850.000000 70.000000 inf 1.000000 -uR 9860.000000 70.000000 inf 1.000000 -uR 9870.000000 70.000000 inf 1.000000 -uR 9880.000000 70.000000 inf 1.000000 -uR 9890.000000 70.000000 inf 1.000000 -uR 9900.000000 70.000000 inf 1.000000 -uR 9910.000000 70.000000 inf 1.000000 -uR 9920.000000 70.000000 inf 1.000000 -uR 9930.000000 70.000000 inf 1.000000 -uR 9940.000000 70.000000 inf 1.000000 -uR 9950.000000 70.000000 inf 1.000000 -uR 9960.000000 70.000000 inf 1.000000 -uR 9970.000000 70.000000 inf 1.000000 -uR 9980.000000 70.000000 inf 1.000000 -uR 9990.000000 70.000000 inf 1.000000 -uR 10000.000000 70.000000 inf 1.000000 -uR 10025.000000 70.000000 inf 1.000000 -uR 10050.000000 70.000000 inf 1.000000 -uR 10075.000000 70.000000 inf 1.000000 -uR 10100.000000 70.000000 inf 1.000000 -uR 10125.000000 70.000000 inf 1.000000 -uR 10150.000000 70.000000 inf 1.000000 -uR 10175.000000 70.000000 inf 1.000000 -uR 10200.000000 70.000000 inf 1.000000 -uR 10225.000000 70.000000 inf 1.000000 -uR 10250.000000 70.000000 inf 1.000000 -uR 10275.000000 70.000000 inf 1.000000 -uR 10300.000000 70.000000 inf 1.000000 -uR 10325.000000 70.000000 inf 1.000000 -uR 10350.000000 70.000000 inf 1.000000 -uR 10375.000000 70.000000 inf 1.000000 -uR 10400.000000 70.000000 inf 1.000000 -uR 10425.000000 70.000000 inf 1.000000 -uR 10450.000000 70.000000 inf 1.000000 -uR 10475.000000 70.000000 inf 1.000000 -uR 10500.000000 70.000000 inf 1.000000 -uR 10525.000000 70.000000 inf 1.000000 -uR 10550.000000 70.000000 inf 1.000000 -uR 10575.000000 70.000000 inf 1.000000 -uR 10600.000000 70.000000 inf 1.000000 -uR 10625.000000 70.000000 inf 1.000000 -uR 10650.000000 70.000000 inf 1.000000 -uR 10675.000000 70.000000 inf 1.000000 -uR 10700.000000 70.000000 inf 1.000000 -uR 10725.000000 70.000000 inf 1.000000 -uR 10750.000000 70.000000 inf 1.000000 -uR 10775.000000 70.000000 inf 1.000000 -uR 10800.000000 70.000000 inf 1.000000 -uR 10825.000000 70.000000 inf 1.000000 -uR 10850.000000 70.000000 inf 1.000000 -uR 10875.000000 70.000000 inf 1.000000 -uR 10900.000000 70.000000 inf 1.000000 -uR 10925.000000 70.000000 inf 1.000000 -uR 10950.000000 70.000000 inf 1.000000 -uR 10975.000000 70.000000 inf 1.000000 -uR 11000.000000 70.000000 inf 1.000000 -uR 11025.000000 70.000000 inf 1.000000 -uR 11050.000000 70.000000 inf 1.000000 -uR 11075.000000 70.000000 inf 1.000000 -uR 11100.000000 70.000000 inf 1.000000 -uR 11125.000000 70.000000 inf 1.000000 -uR 11150.000000 70.000000 inf 1.000000 -uR 11175.000000 70.000000 inf 1.000000 -uR 11200.000000 70.000000 inf 1.000000 -uR 11225.000000 70.000000 inf 1.000000 -uR 11250.000000 70.000000 inf 1.000000 -uR 11275.000000 70.000000 inf 1.000000 -uR 11300.000000 70.000000 inf 1.000000 -uR 11325.000000 70.000000 inf 1.000000 -uR 11350.000000 70.000000 inf 1.000000 -uR 11375.000000 70.000000 inf 1.000000 -uR 11400.000000 70.000000 inf 1.000000 -uR 11425.000000 70.000000 inf 1.000000 -uR 11450.000000 70.000000 inf 1.000000 -uR 11475.000000 70.000000 inf 1.000000 -uR 11500.000000 70.000000 inf 1.000000 -uR 11525.000000 70.000000 inf 1.000000 -uR 11550.000000 70.000000 inf 1.000000 -uR 11575.000000 70.000000 inf 1.000000 -uR 11600.000000 70.000000 inf 1.000000 -uR 11625.000000 70.000000 inf 1.000000 -uR 11650.000000 70.000000 inf 1.000000 -uR 11675.000000 70.000000 inf 1.000000 -uR 11700.000000 70.000000 inf 1.000000 -uR 11725.000000 70.000000 inf 1.000000 -uR 11750.000000 70.000000 inf 1.000000 -uR 11775.000000 70.000000 inf 1.000000 -uR 11800.000000 70.000000 inf 1.000000 -uR 11825.000000 70.000000 inf 1.000000 -uR 11850.000000 70.000000 inf 1.000000 -uR 11875.000000 70.000000 inf 1.000000 -uR 11900.000000 70.000000 inf 1.000000 -uR 11925.000000 70.000000 inf 1.000000 -uR 11950.000000 70.000000 inf 1.000000 -uR 11975.000000 70.000000 inf 1.000000 -uR 12000.000000 70.000000 inf 1.000000 -uR 12025.000000 70.000000 inf 1.000000 -uR 12050.000000 70.000000 inf 1.000000 -uR 12075.000000 70.000000 inf 1.000000 -uR 12100.000000 70.000000 inf 1.000000 -uR 12125.000000 70.000000 inf 1.000000 -uR 12150.000000 70.000000 inf 1.000000 -uR 12175.000000 70.000000 inf 1.000000 -uR 12200.000000 70.000000 inf 1.000000 -uR 12225.000000 70.000000 inf 1.000000 -uR 12250.000000 70.000000 inf 1.000000 -uR 12275.000000 70.000000 inf 1.000000 -uR 12300.000000 70.000000 inf 1.000000 -uR 12325.000000 70.000000 inf 1.000000 -uR 12350.000000 70.000000 inf 1.000000 -uR 12375.000000 70.000000 inf 1.000000 -uR 12400.000000 70.000000 inf 1.000000 -uR 12425.000000 70.000000 inf 1.000000 -uR 12450.000000 70.000000 inf 1.000000 -uR 12475.000000 70.000000 inf 1.000000 -uR 12500.000000 70.000000 inf 1.000000 -uR 12525.000000 70.000000 inf 1.000000 -uR 12550.000000 70.000000 inf 1.000000 -uR 12575.000000 70.000000 inf 1.000000 -uR 12600.000000 70.000000 inf 1.000000 -uR 12625.000000 70.000000 inf 1.000000 -uR 12650.000000 70.000000 inf 1.000000 -uR 12675.000000 70.000000 inf 1.000000 -uR 12700.000000 70.000000 inf 1.000000 -uR 12725.000000 70.000000 inf 1.000000 -uR 12750.000000 70.000000 inf 1.000000 -uR 12775.000000 70.000000 inf 1.000000 -uR 12800.000000 70.000000 inf 1.000000 -uR 12825.000000 70.000000 inf 1.000000 -uR 12850.000000 70.000000 inf 1.000000 -uR 12875.000000 70.000000 inf 1.000000 -uR 12900.000000 70.000000 inf 1.000000 -uR 12925.000000 70.000000 inf 1.000000 -uR 12950.000000 70.000000 inf 1.000000 -uR 12975.000000 70.000000 inf 1.000000 -uR 13000.000000 70.000000 inf 1.000000 -uR 13025.000000 70.000000 inf 1.000000 -uR 13050.000000 70.000000 inf 1.000000 -uR 13075.000000 70.000000 inf 1.000000 -uR 13100.000000 70.000000 inf 1.000000 -uR 13125.000000 70.000000 inf 1.000000 -uR 13150.000000 70.000000 inf 1.000000 -uR 13175.000000 70.000000 inf 1.000000 -uR 13200.000000 70.000000 inf 1.000000 -uR 13225.000000 70.000000 inf 1.000000 -uR 13250.000000 70.000000 inf 1.000000 -uR 13275.000000 70.000000 inf 1.000000 -uR 13300.000000 70.000000 inf 1.000000 -uR 13325.000000 70.000000 inf 1.000000 -uR 13350.000000 70.000000 inf 1.000000 -uR 13375.000000 70.000000 inf 1.000000 -uR 13400.000000 70.000000 inf 1.000000 -uR 13425.000000 70.000000 inf 1.000000 -uR 13450.000000 70.000000 inf 1.000000 -uR 13475.000000 70.000000 inf 1.000000 -uR 13500.000000 70.000000 inf 1.000000 -uR 13525.000000 70.000000 inf 1.000000 -uR 13550.000000 70.000000 inf 1.000000 -uR 13575.000000 70.000000 inf 1.000000 -uR 13600.000000 70.000000 inf 1.000000 -uR 13625.000000 70.000000 inf 1.000000 -uR 13650.000000 70.000000 inf 1.000000 -uR 13675.000000 70.000000 inf 1.000000 -uR 13700.000000 70.000000 inf 1.000000 -uR 13725.000000 70.000000 inf 1.000000 -uR 13750.000000 70.000000 inf 1.000000 -uR 13775.000000 70.000000 inf 1.000000 -uR 13800.000000 70.000000 inf 1.000000 -uR 13825.000000 70.000000 inf 1.000000 -uR 13850.000000 70.000000 inf 1.000000 -uR 13875.000000 70.000000 inf 1.000000 -uR 13900.000000 70.000000 inf 1.000000 -uR 13925.000000 70.000000 inf 1.000000 -uR 13950.000000 70.000000 inf 1.000000 -uR 13975.000000 70.000000 inf 1.000000 -uR 14000.000000 70.000000 inf 1.000000 -uR 14025.000000 70.000000 inf 1.000000 -uR 14050.000000 70.000000 inf 1.000000 -uR 14075.000000 70.000000 inf 1.000000 -uR 14100.000000 70.000000 inf 1.000000 -uR 14125.000000 70.000000 inf 1.000000 -uR 14150.000000 70.000000 inf 1.000000 -uR 14175.000000 70.000000 inf 1.000000 -uR 14200.000000 70.000000 inf 1.000000 -uR 14225.000000 70.000000 inf 1.000000 -uR 14250.000000 70.000000 inf 1.000000 -uR 14275.000000 70.000000 inf 1.000000 -uR 14300.000000 70.000000 inf 1.000000 -uR 14325.000000 70.000000 inf 1.000000 -uR 14350.000000 70.000000 inf 1.000000 -uR 14375.000000 70.000000 inf 1.000000 -uR 14400.000000 70.000000 inf 1.000000 -uR 14425.000000 70.000000 inf 1.000000 -uR 14450.000000 70.000000 inf 1.000000 -uR 14475.000000 70.000000 inf 1.000000 -uR 14500.000000 70.000000 inf 1.000000 -uR 14525.000000 70.000000 inf 1.000000 -uR 14550.000000 70.000000 inf 1.000000 -uR 14575.000000 70.000000 inf 1.000000 -uR 14600.000000 70.000000 inf 1.000000 -uR 14625.000000 70.000000 inf 1.000000 -uR 14650.000000 70.000000 inf 1.000000 -uR 14675.000000 70.000000 inf 1.000000 -uR 14700.000000 70.000000 inf 1.000000 -uR 14725.000000 70.000000 inf 1.000000 -uR 14750.000000 70.000000 inf 1.000000 -uR 14775.000000 70.000000 inf 1.000000 -uR 14800.000000 70.000000 inf 1.000000 -uR 14825.000000 70.000000 inf 1.000000 -uR 14850.000000 70.000000 inf 1.000000 -uR 14875.000000 70.000000 inf 1.000000 -uR 14900.000000 70.000000 inf 1.000000 -uR 14925.000000 70.000000 inf 1.000000 -uR 14950.000000 70.000000 inf 1.000000 -uR 14975.000000 70.000000 inf 1.000000 -uR 15000.000000 70.000000 inf 1.000000 -uR 15025.000000 70.000000 inf 1.000000 -uR 15050.000000 70.000000 inf 1.000000 -uR 15075.000000 70.000000 inf 1.000000 -uR 15100.000000 70.000000 inf 1.000000 -uR 15125.000000 70.000000 inf 1.000000 -uR 15150.000000 70.000000 inf 1.000000 -uR 15175.000000 70.000000 inf 1.000000 -uR 15200.000000 70.000000 inf 1.000000 -uR 15225.000000 70.000000 inf 1.000000 -uR 15250.000000 70.000000 inf 1.000000 -uR 15275.000000 70.000000 inf 1.000000 -uR 15300.000000 70.000000 inf 1.000000 -uR 15325.000000 70.000000 inf 1.000000 -uR 15350.000000 70.000000 inf 1.000000 -uR 15375.000000 70.000000 inf 1.000000 -uR 15400.000000 70.000000 inf 1.000000 -uR 15425.000000 70.000000 inf 1.000000 -uR 15450.000000 70.000000 inf 1.000000 -uR 15475.000000 70.000000 inf 1.000000 -uR 15500.000000 70.000000 inf 1.000000 -uR 15525.000000 70.000000 inf 1.000000 -uR 15550.000000 70.000000 inf 1.000000 -uR 15575.000000 70.000000 inf 1.000000 -uR 15600.000000 70.000000 inf 1.000000 -uR 15625.000000 70.000000 inf 1.000000 -uR 15650.000000 70.000000 inf 1.000000 -uR 15675.000000 70.000000 inf 1.000000 -uR 15700.000000 70.000000 inf 1.000000 -uR 15725.000000 70.000000 inf 1.000000 -uR 15750.000000 70.000000 inf 1.000000 -uR 15775.000000 70.000000 inf 1.000000 -uR 15800.000000 70.000000 inf 1.000000 -uR 15825.000000 70.000000 inf 1.000000 -uR 15850.000000 70.000000 inf 1.000000 -uR 15875.000000 70.000000 inf 1.000000 -uR 15900.000000 70.000000 inf 1.000000 -uR 15925.000000 70.000000 inf 1.000000 -uR 15950.000000 70.000000 inf 1.000000 -uR 15975.000000 70.000000 inf 1.000000 -uR 16000.000000 70.000000 inf 1.000000 -uR 16025.000000 70.000000 inf 1.000000 -uR 16050.000000 70.000000 inf 1.000000 -uR 16075.000000 70.000000 inf 1.000000 -uR 16100.000000 70.000000 inf 1.000000 -uR 16125.000000 70.000000 inf 1.000000 -uR 16150.000000 70.000000 inf 1.000000 -uR 16175.000000 70.000000 inf 1.000000 -uR 16200.000000 70.000000 inf 1.000000 -uR 16225.000000 70.000000 inf 1.000000 -uR 16250.000000 70.000000 inf 1.000000 -uR 16275.000000 70.000000 inf 1.000000 -uR 16300.000000 70.000000 inf 1.000000 -uR 16325.000000 70.000000 inf 1.000000 -uR 16350.000000 70.000000 inf 1.000000 -uR 16375.000000 70.000000 inf 1.000000 -uR 16400.000000 70.000000 inf 1.000000 -uR 16425.000000 70.000000 inf 1.000000 -uR 16450.000000 70.000000 inf 1.000000 -uR 16475.000000 70.000000 inf 1.000000 -uR 16500.000000 70.000000 inf 1.000000 -uR 16525.000000 70.000000 inf 1.000000 -uR 16550.000000 70.000000 inf 1.000000 -uR 16575.000000 70.000000 inf 1.000000 -uR 16600.000000 70.000000 inf 1.000000 -uR 16625.000000 70.000000 inf 1.000000 -uR 16650.000000 70.000000 inf 1.000000 -uR 16675.000000 70.000000 inf 1.000000 -uR 16700.000000 70.000000 inf 1.000000 -uR 16725.000000 70.000000 inf 1.000000 -uR 16750.000000 70.000000 inf 1.000000 -uR 16775.000000 70.000000 inf 1.000000 -uR 16800.000000 70.000000 inf 1.000000 -uR 16825.000000 70.000000 inf 1.000000 -uR 16850.000000 70.000000 inf 1.000000 -uR 16875.000000 70.000000 inf 1.000000 -uR 16900.000000 70.000000 inf 1.000000 -uR 16925.000000 70.000000 inf 1.000000 -uR 16950.000000 70.000000 inf 1.000000 -uR 16975.000000 70.000000 inf 1.000000 -uR 17000.000000 70.000000 inf 1.000000 -dPolE 1930.000000 50.000000 1.800296 0.165269 -dPolE 1940.000000 50.000000 1.309305 0.151484 -dPolE 1950.000000 50.000000 1.143294 0.139903 -dPolE 1960.000000 50.000000 0.887043 0.132319 -dPolE 1970.000000 50.000000 0.694757 0.126028 -dPolE 1980.000000 50.000000 0.787448 0.120852 -dPolE 1990.000000 50.000000 0.930387 0.116504 -dPolE 2000.000000 50.000000 1.026029 0.112678 -dPolE 2010.000000 50.000000 0.923153 0.109269 -dPolE 2020.000000 50.000000 1.070072 0.105676 -dPolE 2030.000000 50.000000 1.417070 0.102034 -dPolE 2040.000000 50.000000 1.349345 0.099043 -dPolE 2050.000000 50.000000 0.993161 0.096469 -dPolE 2060.000000 50.000000 0.997559 0.093567 -dPolE 2070.000000 50.000000 1.097280 0.090721 -dPolE 2080.000000 50.000000 1.217307 0.088023 -dPolE 2090.000000 50.000000 1.076752 0.085695 -dPolE 2100.000000 50.000000 0.785813 0.083661 -dPolE 2110.000000 50.000000 0.828161 0.081721 -dPolE 2120.000000 50.000000 0.944106 0.079806 -dPolE 2130.000000 50.000000 0.904778 0.078062 -dPolE 2140.000000 50.000000 0.990837 0.076453 -dPolE 2150.000000 50.000000 0.953939 0.075051 -dPolE 2160.000000 50.000000 0.904178 0.073805 -dPolE 2170.000000 50.000000 0.742843 0.072741 -dPolE 2180.000000 50.000000 0.737577 0.071572 -dPolE 2190.000000 50.000000 0.847678 0.070257 -dPolE 2200.000000 50.000000 0.925129 0.069029 -dPolE 2210.000000 50.000000 0.760540 0.068060 -dPolE 2220.000000 50.000000 0.823835 0.066873 -dPolE 2230.000000 50.000000 0.825953 0.065823 -dPolE 2240.000000 50.000000 0.809936 0.064850 -dPolE 2250.000000 50.000000 0.868201 0.063857 -dPolE 2260.000000 50.000000 0.796736 0.063094 -dPolE 2270.000000 50.000000 0.730204 0.062330 -dPolE 2280.000000 50.000000 0.815860 0.061441 -dPolE 2290.000000 50.000000 0.798825 0.060635 -dPolE 2300.000000 50.000000 0.798660 0.059902 -dPolE 2310.000000 50.000000 0.689545 0.059261 -dPolE 2320.000000 50.000000 0.492768 0.058720 -dPolE 2330.000000 50.000000 0.614542 0.058064 -dPolE 2340.000000 50.000000 0.836103 0.057390 -dPolE 2350.000000 50.000000 0.737850 0.056930 -dPolE 2360.000000 50.000000 0.695785 0.056493 -dPolE 2370.000000 50.000000 0.597369 0.056114 -dPolE 2380.000000 50.000000 0.632569 0.055644 -dPolE 2390.000000 50.000000 0.747894 0.055213 -dPolE 2400.000000 50.000000 0.713178 0.054940 -dPolE 2410.000000 50.000000 0.619984 0.054720 -dPolE 2420.000000 50.000000 0.573291 0.054491 -dPolE 2430.000000 50.000000 0.690290 0.054250 -dPolE 2440.000000 50.000000 0.612996 0.054136 -dPolE 2450.000000 50.000000 0.700928 0.053920 -dPolE 2460.000000 50.000000 0.754827 0.053783 -dPolE 2470.000000 50.000000 0.632926 0.053779 -dPolE 2480.000000 50.000000 0.642451 0.053692 -dPolE 2490.000000 50.000000 0.615324 0.053677 -dPolE 2500.000000 50.000000 0.628675 0.053685 -dPolE 2510.000000 50.000000 0.585632 0.053768 -dPolE 2520.000000 50.000000 0.447026 0.053875 -dPolE 2530.000000 50.000000 0.473566 0.053946 -dPolE 2540.000000 50.000000 0.547664 0.054089 -dPolE 2550.000000 50.000000 0.562903 0.054265 -dPolE 2560.000000 50.000000 0.603952 0.054475 -dPolE 2570.000000 50.000000 0.617656 0.054727 -dPolE 2580.000000 50.000000 0.617088 0.055021 -dPolE 2590.000000 50.000000 0.491601 0.055448 -dPolE 2600.000000 50.000000 0.517532 0.055822 -dPolE 2610.000000 50.000000 0.666330 0.056140 -dPolE 2620.000000 50.000000 0.595689 0.056626 -dPolE 2630.000000 50.000000 0.573192 0.057104 -dPolE 2640.000000 50.000000 0.497992 0.057657 -dPolE 2650.000000 50.000000 0.458465 0.058262 -dPolE 2660.000000 50.000000 0.449298 0.058901 -dPolE 2670.000000 50.000000 0.424692 0.059559 -dPolE 2680.000000 50.000000 0.412024 0.060203 -dPolE 2690.000000 50.000000 0.526856 0.060734 -dPolE 2700.000000 50.000000 0.427017 0.061441 -dPolE 2710.000000 50.000000 0.392052 0.062185 -dPolE 2720.000000 50.000000 0.427794 0.062861 -dPolE 2730.000000 50.000000 0.417384 0.063511 -dPolE 2740.000000 50.000000 0.470635 0.064146 -dPolE 2750.000000 50.000000 0.361683 0.064896 -dPolE 2760.000000 50.000000 0.284277 0.065668 -dPolE 2770.000000 50.000000 0.416853 0.066462 -dPolE 2780.000000 50.000000 0.288530 0.067123 -dPolE 2790.000000 50.000000 0.407721 0.067484 -dPolE 2800.000000 50.000000 0.408844 0.068022 -dPolE 2810.000000 50.000000 0.243115 0.068787 -dPolE 2820.000000 50.000000 0.317795 0.069390 -dPolE 2830.000000 50.000000 0.449478 0.069972 -dPolE 2840.000000 50.000000 0.432700 0.070578 -dPolE 2850.000000 50.000000 0.535699 0.071249 -dPolE 2860.000000 50.000000 0.423061 0.072141 -dPolE 2870.000000 50.000000 0.291309 0.072962 -dPolE 2880.000000 50.000000 0.313319 0.073775 -dPolE 2890.000000 50.000000 0.375089 0.074682 -dPolE 2900.000000 50.000000 0.468638 0.075560 -dPolE 2910.000000 50.000000 0.206962 0.076782 -dPolE 2920.000000 50.000000 0.225884 0.077768 -dPolE 2930.000000 50.000000 0.326816 0.078618 -dPolE 2940.000000 50.000000 0.511820 0.079408 -dPolE 2950.000000 50.000000 0.569485 0.080313 -dPolE 2960.000000 50.000000 0.356026 0.081448 -dPolE 2970.000000 50.000000 0.308444 0.082413 -dPolE 2980.000000 50.000000 0.419294 0.083300 -dPolE 2990.000000 50.000000 0.312290 0.084425 -dPolE 3000.000000 50.000000 0.302694 0.085484 -dPolE 3010.000000 50.000000 0.359407 0.086365 -dPolE 3020.000000 50.000000 0.230644 0.087489 -dPolE 3030.000000 50.000000 0.114535 0.088724 -dPolE 3040.000000 50.000000 0.094944 0.089791 -dPolE 3050.000000 50.000000 0.131689 0.090955 -dPolE 3060.000000 50.000000 0.298044 0.091955 -dPolE 3070.000000 50.000000 0.321239 0.093032 -dPolE 3080.000000 50.000000 0.495015 0.094055 -dPolE 3090.000000 50.000000 0.344365 0.095464 -dPolE 3100.000000 50.000000 0.079581 0.096846 -dPolE 3110.000000 50.000000 0.253341 0.097726 -dPolE 3120.000000 50.000000 0.237933 0.098964 -dPolE 3130.000000 50.000000 0.153138 0.100086 -dPolE 3140.000000 50.000000 0.304390 0.101024 -dPolE 3150.000000 50.000000 0.257985 0.102252 -dPolE 3160.000000 50.000000 0.169896 0.103412 -dPolE 3170.000000 50.000000 0.130210 0.104581 -dPolE 3180.000000 50.000000 0.259850 0.105514 -dPolE 3190.000000 50.000000 0.309619 0.106678 -dPolE 3200.000000 50.000000 0.294696 0.107791 -dPolE 3210.000000 50.000000 0.322265 0.108987 -dPolE 3220.000000 50.000000 0.242268 0.110300 -dPolE 3230.000000 50.000000 0.341232 0.111294 -dPolE 3240.000000 50.000000 0.385883 0.112343 -dPolE 3250.000000 50.000000 0.418532 0.113341 -dPolE 3260.000000 50.000000 0.269920 0.115361 -dPolE 3270.000000 50.000000 0.193508 0.117881 -dPolE 3280.000000 50.000000 0.319142 0.120150 -dPolE 3290.000000 50.000000 -0.009993 0.122581 -dPolE 3300.000000 50.000000 -0.060110 0.124421 -dPolE 3310.000000 50.000000 0.090350 0.126008 -dPolE 3320.000000 50.000000 0.103279 0.127325 -dPolE 3330.000000 50.000000 0.120887 0.128302 -dPolE 3340.000000 50.000000 0.229203 0.129089 -dPolE 3350.000000 50.000000 0.128285 0.130104 -dPolE 3360.000000 50.000000 0.136950 0.131038 -dPolE 3370.000000 50.000000 0.358729 0.131600 -dPolE 3380.000000 50.000000 0.026798 0.132673 -dPolE 3390.000000 50.000000 0.125807 0.132537 -dPolE 3400.000000 50.000000 0.062923 0.132721 -dPolE 3410.000000 50.000000 0.071446 0.133099 -dPolE 3420.000000 50.000000 0.049430 0.134206 -dPolE 3430.000000 50.000000 0.425948 0.134576 -dPolE 3440.000000 50.000000 0.339736 0.135458 -dPolE 3450.000000 50.000000 -0.231254 0.137559 -dPolE 3460.000000 50.000000 -0.155015 0.138534 -dPolE 3470.000000 50.000000 -0.097722 0.139582 -dPolE 3480.000000 50.000000 -0.091005 0.140545 -dPolE 3490.000000 50.000000 -0.176945 0.141740 -dPolE 3500.000000 50.000000 -0.039910 0.142550 -dPolE 3510.000000 50.000000 0.041152 0.143506 -dPolE 3520.000000 50.000000 -0.115626 0.144841 -dPolE 3530.000000 50.000000 -0.168388 0.145936 -dPolE 3540.000000 50.000000 -0.034318 0.146927 -dPolE 3550.000000 50.000000 0.020299 0.147897 -dPolE 3560.000000 50.000000 0.288599 0.148347 -dPolE 3570.000000 50.000000 0.317733 0.149361 -dPolE 3580.000000 50.000000 -0.117646 0.151069 -dPolE 3590.000000 50.000000 -0.080377 0.152004 -dPolE 3600.000000 50.000000 0.174486 0.152441 -dPolE 3610.000000 50.000000 -0.134719 0.153971 -dPolE 3620.000000 50.000000 -0.072756 0.154455 -dPolE 3630.000000 50.000000 0.223681 0.154501 -dPolE 3640.000000 50.000000 0.254947 0.155456 -dPolE 3650.000000 50.000000 0.219668 0.156635 -dPolE 3660.000000 50.000000 0.149169 0.156585 -dPolE 3670.000000 50.000000 0.025261 0.155881 -dPolE 3680.000000 50.000000 0.169458 0.155253 -dPolE 3690.000000 50.000000 0.042343 0.155808 -dPolE 3700.000000 50.000000 -0.314537 0.158009 -dPolE 3710.000000 50.000000 -0.167547 0.159737 -dPolE 3720.000000 50.000000 0.036098 0.160046 -dPolE 3730.000000 50.000000 0.524714 0.160258 -dPolE 3740.000000 50.000000 0.451944 0.161513 -dPolE 3750.000000 50.000000 -0.096791 0.162511 -dPolE 3760.000000 50.000000 -0.013359 0.161830 -dPolE 3770.000000 50.000000 0.010189 0.161823 -dPolE 3780.000000 50.000000 0.033981 0.160833 -dPolE 3790.000000 50.000000 -0.112086 0.159787 -dPolE 3800.000000 50.000000 0.055447 0.159431 -dPolE 3810.000000 50.000000 0.109895 0.160701 -dPolE 3820.000000 50.000000 -0.004878 0.161755 -dPolE 3830.000000 50.000000 0.228860 0.160133 -dPolE 3840.000000 50.000000 0.128166 0.160381 -dPolE 3850.000000 50.000000 0.127896 0.161768 -dPolE 3860.000000 50.000000 0.147482 0.160719 -dPolE 3870.000000 50.000000 0.078392 0.158488 -dPolE 3880.000000 50.000000 0.183113 0.155667 -dPolE 3890.000000 50.000000 0.075837 0.156180 -dPolE 3900.000000 50.000000 -0.190823 0.161027 -dPolE 3910.000000 50.000000 0.054573 0.165085 -dPolE 3920.000000 50.000000 -0.056193 0.164214 -dPolE 3930.000000 50.000000 0.143494 0.161058 -dPolE 3940.000000 50.000000 0.221944 0.158693 -dPolE 3950.000000 50.000000 0.290965 0.157904 -dPolE 3960.000000 50.000000 0.144584 0.159730 -dPolE 3970.000000 50.000000 0.008712 0.161534 -dPolE 3980.000000 50.000000 0.269035 0.158640 -dPolE 3990.000000 50.000000 0.106360 0.156470 -dPolE 4000.000000 50.000000 0.002007 0.157825 -dPolE 4010.000000 50.000000 0.069213 0.161148 -dPolE 4020.000000 50.000000 0.296454 0.162872 -dPolE 4030.000000 50.000000 0.280878 0.163052 -dPolE 4040.000000 50.000000 0.406466 0.161289 -dPolE 4050.000000 50.000000 0.133208 0.158337 -dPolE 4060.000000 50.000000 0.086758 0.154981 -dPolE 4070.000000 50.000000 -0.120731 0.155810 -dPolE 4080.000000 50.000000 0.127315 0.159735 -dPolE 4090.000000 50.000000 0.174644 0.163186 -dPolE 4100.000000 50.000000 0.006288 0.163954 -dPolE 4110.000000 50.000000 -0.104073 0.164074 -dPolE 4120.000000 50.000000 0.040678 0.161803 -dPolE 4130.000000 50.000000 0.061745 0.156939 -dPolE 4140.000000 50.000000 0.076655 0.154925 -dPolE 4150.000000 50.000000 0.211908 0.157146 -dPolE 4160.000000 50.000000 0.352384 0.158213 -dPolE 4170.000000 50.000000 0.187220 0.158126 -dPolE 4180.000000 50.000000 0.297473 0.158009 -dPolE 4190.000000 50.000000 0.155380 0.159978 -dPolE 4200.000000 50.000000 -0.260014 0.161170 -dPolE 4210.000000 50.000000 -0.135135 0.156724 -dPolE 4220.000000 50.000000 -0.187986 0.151668 -dPolE 4230.000000 50.000000 -0.134411 0.148602 -dPolE 4240.000000 50.000000 0.071185 0.147951 -dPolE 4250.000000 50.000000 -0.003529 0.153107 -dPolE 4260.000000 50.000000 -0.160463 0.159303 -dPolE 4270.000000 50.000000 0.067648 0.158242 -dPolE 4280.000000 50.000000 -0.131821 0.153929 -dPolE 4290.000000 50.000000 0.037076 0.154887 -dPolE 4300.000000 50.000000 0.448109 0.155036 -dPolE 4310.000000 50.000000 0.217249 0.154143 -dPolE 4320.000000 50.000000 -0.048318 0.156983 -dPolE 4330.000000 50.000000 -0.070494 0.159366 -dPolE 4340.000000 50.000000 -0.176044 0.155837 -dPolE 4350.000000 50.000000 -0.088546 0.153950 -dPolE 4360.000000 50.000000 -0.128645 0.156325 -dPolE 4370.000000 50.000000 -0.394212 0.156811 -dPolE 4380.000000 50.000000 -0.103279 0.155223 -dPolE 4390.000000 50.000000 0.121845 0.153821 -dPolE 4400.000000 50.000000 -0.088955 0.153492 -dPolE 4410.000000 50.000000 0.081365 0.150725 -dPolE 4420.000000 50.000000 0.086665 0.145776 -dPolE 4430.000000 50.000000 -0.014363 0.145310 -dPolE 4440.000000 50.000000 0.015489 0.146547 -dPolE 4450.000000 50.000000 -0.187437 0.146050 -dPolE 4460.000000 50.000000 -0.115370 0.144853 -dPolE 4470.000000 50.000000 0.213441 0.145094 -dPolE 4480.000000 50.000000 0.055862 0.146128 -dPolE 4490.000000 50.000000 0.151271 0.145746 -dPolE 4500.000000 50.000000 -0.178894 0.145418 -dPolE 4510.000000 50.000000 0.059054 0.145020 -dPolE 4520.000000 50.000000 0.437804 0.144953 -dPolE 4530.000000 50.000000 0.182228 0.145154 -dPolE 4540.000000 50.000000 0.169528 0.144541 -dPolE 4550.000000 50.000000 0.145362 0.143759 -dPolE 4560.000000 50.000000 0.207362 0.142237 -dPolE 4570.000000 50.000000 -0.007975 0.140516 -dPolE 4580.000000 50.000000 0.080955 0.137257 -dPolE 4590.000000 50.000000 -0.035346 0.135081 -dPolE 4600.000000 50.000000 0.254085 0.136749 -dPolE 4610.000000 50.000000 0.350597 0.140050 -dPolE 4620.000000 50.000000 0.014396 0.141660 -dPolE 4630.000000 50.000000 0.108536 0.138296 -dPolE 4640.000000 50.000000 0.251926 0.132922 -dPolE 4650.000000 50.000000 -0.001623 0.131548 -dPolE 4660.000000 50.000000 0.238133 0.132864 -dPolE 4670.000000 50.000000 0.375109 0.135262 -dPolE 4680.000000 50.000000 -0.029226 0.136835 -dPolE 4690.000000 50.000000 -0.094837 0.137469 -dPolE 4700.000000 50.000000 -0.019352 0.140034 -dPolE 4710.000000 50.000000 0.144652 0.141776 -dPolE 4720.000000 50.000000 -0.009895 0.140484 -dPolE 4730.000000 50.000000 0.151876 0.137336 -dPolE 4740.000000 50.000000 0.292534 0.136052 -dPolE 4750.000000 50.000000 0.057031 0.136908 -dPolE 4760.000000 50.000000 -0.048369 0.136565 -dPolE 4770.000000 50.000000 0.281046 0.134941 -dPolE 4780.000000 50.000000 0.396855 0.133489 -dPolE 4790.000000 50.000000 -0.065348 0.132992 -dPolE 4800.000000 50.000000 0.044034 0.132579 -dPolE 4810.000000 50.000000 0.038859 0.132305 -dPolE 4820.000000 50.000000 -0.042241 0.132470 -dPolE 4830.000000 50.000000 0.033221 0.131875 -dPolE 4840.000000 50.000000 0.060445 0.130272 -dPolE 4850.000000 50.000000 0.254567 0.124052 -dPolE 4860.000000 50.000000 0.007938 0.109458 -dPolE 4870.000000 50.000000 -0.200939 0.104298 -dPolE 4880.000000 50.000000 0.175069 0.119348 -dPolE 4890.000000 50.000000 0.109958 0.127138 -dPolE 4900.000000 50.000000 -0.111818 0.127265 -dPolE 4910.000000 50.000000 -0.120877 0.126110 -dPolE 4920.000000 50.000000 0.108077 0.126071 -dPolE 4930.000000 50.000000 0.093644 0.125726 -dPolE 4940.000000 50.000000 0.168915 0.124648 -dPolE 4950.000000 50.000000 0.224713 0.125916 -dPolE 4960.000000 50.000000 0.464545 0.126260 -dPolE 4970.000000 50.000000 0.298787 0.125565 -dPolE 4980.000000 50.000000 -0.034643 0.124725 -dPolE 4990.000000 50.000000 0.048398 0.123040 -dPolE 5000.000000 50.000000 0.168704 0.122292 -dPolE 5010.000000 50.000000 -0.087461 0.122467 -dPolE 5020.000000 50.000000 -0.076699 0.121648 -dPolE 5030.000000 50.000000 0.029476 0.121429 -dPolE 5040.000000 50.000000 -0.039455 0.121888 -dPolE 5050.000000 50.000000 -0.132226 0.122269 -dPolE 5060.000000 50.000000 0.075363 0.121431 -dPolE 5070.000000 50.000000 0.086714 0.121107 -dPolE 5080.000000 50.000000 0.226341 0.121169 -dPolE 5090.000000 50.000000 0.192571 0.121157 -dPolE 5100.000000 50.000000 0.015308 0.121290 -dPolE 5110.000000 50.000000 0.054975 0.120683 -dPolE 5120.000000 50.000000 0.072871 0.119931 -dPolE 5130.000000 50.000000 -0.029141 0.119897 -dPolE 5140.000000 50.000000 0.099740 0.119520 -dPolE 5150.000000 50.000000 0.060971 0.119323 -dPolE 5160.000000 50.000000 0.061827 0.118870 -dPolE 5170.000000 50.000000 0.172865 0.118455 -dPolE 5180.000000 50.000000 0.150085 0.118177 -dPolE 5190.000000 50.000000 -0.027710 0.118025 -dPolE 5200.000000 50.000000 -0.011730 0.117316 -dPolE 5210.000000 50.000000 0.135303 0.116714 -dPolE 5220.000000 50.000000 0.017534 0.116708 -dPolE 5230.000000 50.000000 0.037074 0.116335 -dPolE 5240.000000 50.000000 0.232838 0.115764 -dPolE 5250.000000 50.000000 0.230460 0.115275 -dPolE 5260.000000 50.000000 0.131573 0.114620 -dPolE 5270.000000 50.000000 -0.040416 0.113828 -dPolE 5280.000000 50.000000 -0.054004 0.113580 -dPolE 5290.000000 50.000000 0.081999 0.113286 -dPolE 5300.000000 50.000000 0.183169 0.112817 -dPolE 5310.000000 50.000000 0.079505 0.112879 -dPolE 5320.000000 50.000000 0.152668 0.112640 -dPolE 5330.000000 50.000000 0.218859 0.111711 -dPolE 5340.000000 50.000000 0.100733 0.110882 -dPolE 5350.000000 50.000000 0.065867 0.110630 -dPolE 5360.000000 50.000000 0.041125 0.110427 -dPolE 5370.000000 50.000000 -0.041298 0.110289 -dPolE 5380.000000 50.000000 -0.163821 0.109988 -dPolE 5390.000000 50.000000 -0.001165 0.108936 -dPolE 5400.000000 50.000000 0.196585 0.108290 -dPolE 5410.000000 50.000000 0.065989 0.108178 -dPolE 5420.000000 50.000000 0.054003 0.107416 -dPolE 5430.000000 50.000000 0.208869 0.106329 -dPolE 5440.000000 50.000000 0.003675 0.106204 -dPolE 5450.000000 50.000000 0.075640 0.105823 -dPolE 5460.000000 50.000000 0.019638 0.105877 -dPolE 5470.000000 50.000000 0.025453 0.105692 -dPolE 5480.000000 50.000000 0.078605 0.104799 -dPolE 5490.000000 50.000000 0.291914 0.103860 -dPolE 5500.000000 50.000000 0.154978 0.103917 -dPolE 5510.000000 50.000000 0.007288 0.104109 -dPolE 5520.000000 50.000000 0.251597 0.103695 -dPolE 5530.000000 50.000000 0.262927 0.103324 -dPolE 5540.000000 50.000000 0.184909 0.102948 -dPolE 5550.000000 50.000000 0.141985 0.102832 -dPolE 5560.000000 50.000000 0.222794 0.102610 -dPolE 5570.000000 50.000000 0.097997 0.102368 -dPolE 5580.000000 50.000000 -0.074096 0.102333 -dPolE 5590.000000 50.000000 0.016439 0.102143 -dPolE 5600.000000 50.000000 -0.024814 0.101881 -dPolE 5610.000000 50.000000 0.053590 0.101229 -dPolE 5620.000000 50.000000 0.015345 0.101076 -dPolE 5630.000000 50.000000 -0.055014 0.101008 -dPolE 5640.000000 50.000000 0.067581 0.100465 -dPolE 5650.000000 50.000000 0.209350 0.099861 -dPolE 5660.000000 50.000000 0.183766 0.099538 -dPolE 5670.000000 50.000000 0.034147 0.098640 -dPolE 5680.000000 50.000000 0.001047 0.096889 -dPolE 5690.000000 50.000000 0.220953 0.094625 -dPolE 5700.000000 50.000000 0.102621 0.092020 -dPolE 5710.000000 50.000000 0.158524 0.090620 -dPolE 5720.000000 50.000000 0.023078 0.090058 -dPolE 5730.000000 50.000000 0.016712 0.089197 -dPolE 5740.000000 50.000000 0.203250 0.087398 -dPolE 5750.000000 50.000000 0.041953 0.086654 -dPolE 5760.000000 50.000000 0.058801 0.086025 -dPolE 5770.000000 50.000000 -0.022308 0.084461 -dPolE 5780.000000 50.000000 -0.048358 0.083299 -dPolE 5790.000000 50.000000 -0.050017 0.083183 -dPolE 5800.000000 50.000000 0.225019 0.082343 -dPolE 5810.000000 50.000000 0.068120 0.080475 -dPolE 5820.000000 50.000000 -0.027139 0.078473 -dPolE 5830.000000 50.000000 0.079912 0.080269 -dPolE 5840.000000 50.000000 0.019994 0.084095 -dPolE 5850.000000 50.000000 0.223458 0.083331 -dPolE 5860.000000 50.000000 0.030743 0.083913 -dPolE 5870.000000 50.000000 -0.118912 0.084910 -dPolE 5880.000000 50.000000 0.128263 0.083884 -dPolE 5890.000000 50.000000 0.089484 0.083664 -dPolE 5900.000000 50.000000 0.116867 0.086382 -dPolE 5910.000000 50.000000 0.208324 0.088068 -dPolE 5920.000000 50.000000 0.144473 0.088185 -dPolE 5930.000000 50.000000 -0.014973 0.086956 -dPolE 5940.000000 50.000000 0.032476 0.085602 -dPolE 5950.000000 50.000000 0.128461 0.084487 -dPolE 5960.000000 50.000000 -0.167574 0.084890 -dPolE 5970.000000 50.000000 -0.134894 0.086260 -dPolE 5980.000000 50.000000 -0.078379 0.086995 -dPolE 5990.000000 50.000000 0.073160 0.086871 -dPolE 6000.000000 50.000000 -0.094883 0.087095 -dPolE 6010.000000 50.000000 0.075651 0.086342 -dPolE 6020.000000 50.000000 0.233663 0.085175 -dPolE 6030.000000 50.000000 0.016935 0.084176 -dPolE 6040.000000 50.000000 0.085509 0.083775 -dPolE 6050.000000 50.000000 0.103160 0.085453 -dPolE 6060.000000 50.000000 0.139184 0.085902 -dPolE 6070.000000 50.000000 0.217320 0.085910 -dPolE 6080.000000 50.000000 0.117454 0.086367 -dPolE 6090.000000 50.000000 0.116997 0.086677 -dPolE 6100.000000 50.000000 0.082328 0.086389 -dPolE 6110.000000 50.000000 0.136203 0.085901 -dPolE 6120.000000 50.000000 0.009316 0.085827 -dPolE 6130.000000 50.000000 0.066587 0.085558 -dPolE 6140.000000 50.000000 0.125345 0.085257 -dPolE 6150.000000 50.000000 0.114226 0.085770 -dPolE 6160.000000 50.000000 0.253806 0.086408 -dPolE 6170.000000 50.000000 0.036396 0.087092 -dPolE 6180.000000 50.000000 0.068975 0.087258 -dPolE 6190.000000 50.000000 0.057711 0.087576 -dPolE 6200.000000 50.000000 0.187830 0.087038 -dPolE 6210.000000 50.000000 0.257577 0.087017 -dPolE 6220.000000 50.000000 0.182095 0.087464 -dPolE 6230.000000 50.000000 0.208268 0.086963 -dPolE 6240.000000 50.000000 0.178754 0.086736 -dPolE 6250.000000 50.000000 0.176668 0.087473 -dPolE 6260.000000 50.000000 0.013634 0.088226 -dPolE 6270.000000 50.000000 0.040806 0.088247 -dPolE 6280.000000 50.000000 0.166859 0.088022 -dPolE 6290.000000 50.000000 -0.003307 0.088222 -dPolE 6300.000000 50.000000 0.023766 0.088244 -dPolE 6310.000000 50.000000 0.194189 0.088521 -dPolE 6320.000000 50.000000 0.143716 0.088720 -dPolE 6330.000000 50.000000 -0.035778 0.088598 -dPolE 6340.000000 50.000000 -0.137409 0.088849 -dPolE 6350.000000 50.000000 0.047055 0.088627 -dPolE 6360.000000 50.000000 0.197790 0.088188 -dPolE 6370.000000 50.000000 0.139298 0.088100 -dPolE 6380.000000 50.000000 0.126999 0.088222 -dPolE 6390.000000 50.000000 0.224429 0.088097 -dPolE 6400.000000 50.000000 0.339885 0.087989 -dPolE 6410.000000 50.000000 0.263878 0.088206 -dPolE 6420.000000 50.000000 0.086179 0.088654 -dPolE 6430.000000 50.000000 0.090886 0.088539 -dPolE 6440.000000 50.000000 0.088437 0.088546 -dPolE 6450.000000 50.000000 0.088480 0.088734 -dPolE 6460.000000 50.000000 -0.013867 0.088807 -dPolE 6470.000000 50.000000 -0.029764 0.088738 -dPolE 6480.000000 50.000000 -0.013523 0.088626 -dPolE 6490.000000 50.000000 0.153556 0.088341 -dPolE 6500.000000 50.000000 0.106668 0.088322 -dPolE 6510.000000 50.000000 -0.021111 0.088486 -dPolE 6520.000000 50.000000 -0.006246 0.088406 -dPolE 6530.000000 50.000000 0.116265 0.088311 -dPolE 6540.000000 50.000000 0.035349 0.089227 -dPolE 6550.000000 50.000000 0.122762 0.079212 -dPolE 6560.000000 50.000000 0.163184 0.055552 -dPolE 6570.000000 50.000000 0.056610 0.053515 -dPolE 6580.000000 50.000000 -0.005562 0.073128 -dPolE 6590.000000 50.000000 0.170017 0.087514 -dPolE 6600.000000 50.000000 0.181117 0.088030 -dPolE 6610.000000 50.000000 0.164257 0.088113 -dPolE 6620.000000 50.000000 0.057600 0.088021 -dPolE 6630.000000 50.000000 0.059182 0.087885 -dPolE 6640.000000 50.000000 0.035482 0.087928 -dPolE 6650.000000 50.000000 -0.028288 0.088026 -dPolE 6660.000000 50.000000 0.046244 0.087931 -dPolE 6670.000000 50.000000 0.199071 0.087745 -dPolE 6680.000000 50.000000 0.041816 0.087834 -dPolE 6690.000000 50.000000 0.027848 0.087635 -dPolE 6700.000000 50.000000 0.206371 0.087220 -dPolE 6710.000000 50.000000 0.109588 0.087344 -dPolE 6720.000000 50.000000 -0.006338 0.087332 -dPolE 6730.000000 50.000000 0.224335 0.087028 -dPolE 6740.000000 50.000000 0.270259 0.087115 -dPolE 6750.000000 50.000000 0.128967 0.087382 -dPolE 6760.000000 50.000000 0.158075 0.087364 -dPolE 6770.000000 50.000000 0.067820 0.087376 -dPolE 6780.000000 50.000000 0.157645 0.087087 -dPolE 6790.000000 50.000000 0.096050 0.086971 -dPolE 6800.000000 50.000000 0.001215 0.086965 -dPolE 6810.000000 50.000000 0.033875 0.086918 -dPolE 6820.000000 50.000000 -0.025716 0.086995 -dPolE 6830.000000 50.000000 0.108789 0.086769 -dPolE 6840.000000 50.000000 0.031227 0.086729 -dPolE 6850.000000 50.000000 0.064386 0.086361 -dPolE 6860.000000 50.000000 0.151911 0.086241 -dPolE 6870.000000 50.000000 -0.059324 0.086703 -dPolE 6880.000000 50.000000 0.098867 0.086700 -dPolE 6890.000000 50.000000 0.104649 0.086709 -dPolE 6900.000000 50.000000 0.108659 0.086774 -dPolE 6910.000000 50.000000 0.019477 0.086838 -dPolE 6920.000000 50.000000 -0.001079 0.086786 -dPolE 6930.000000 50.000000 0.285764 0.086427 -dPolE 6940.000000 50.000000 0.127454 0.086490 -dPolE 6950.000000 50.000000 0.093479 0.086610 -dPolE 6960.000000 50.000000 0.066571 0.086673 -dPolE 6970.000000 50.000000 0.045082 0.086543 -dPolE 6980.000000 50.000000 -0.003794 0.086463 -dPolE 6990.000000 50.000000 -0.039103 0.086562 -dPolE 7000.000000 50.000000 0.146396 0.086510 -dPolE 7010.000000 50.000000 0.164355 0.086638 -dPolE 7020.000000 50.000000 0.197475 0.086609 -dPolE 7030.000000 50.000000 0.245538 0.086544 -dPolE 7040.000000 50.000000 0.104987 0.086879 -dPolE 7050.000000 50.000000 0.130120 0.086991 -dPolE 7060.000000 50.000000 -0.044900 0.087166 -dPolE 7070.000000 50.000000 0.008458 0.086777 -dPolE 7080.000000 50.000000 0.197563 0.086636 -dPolE 7090.000000 50.000000 0.145578 0.086907 -dPolE 7100.000000 50.000000 0.293202 0.086952 -dPolE 7110.000000 50.000000 0.303372 0.086995 -dPolE 7120.000000 50.000000 0.007327 0.087291 -dPolE 7130.000000 50.000000 -0.147363 0.087480 -dPolE 7140.000000 50.000000 0.000161 0.087255 -dPolE 7150.000000 50.000000 0.080451 0.087037 -dPolE 7160.000000 50.000000 0.124682 0.087044 -dPolE 7170.000000 50.000000 0.154713 0.087330 -dPolE 7180.000000 50.000000 0.391845 0.087060 -dPolE 7190.000000 50.000000 0.247556 0.087234 -dPolE 7200.000000 50.000000 -0.021009 0.087660 -dPolE 7210.000000 50.000000 0.206961 0.087622 -dPolE 7220.000000 50.000000 0.268095 0.087571 -dPolE 7230.000000 50.000000 0.183932 0.087856 -dPolE 7240.000000 50.000000 0.134496 0.087856 -dPolE 7250.000000 50.000000 0.049193 0.087597 -dPolE 7260.000000 50.000000 0.196490 0.087082 -dPolE 7270.000000 50.000000 0.101348 0.087417 -dPolE 7280.000000 50.000000 0.026705 0.087565 -dPolE 7290.000000 50.000000 0.182919 0.087284 -dPolE 7300.000000 50.000000 0.187144 0.087414 -dPolE 7310.000000 50.000000 0.110315 0.087406 -dPolE 7320.000000 50.000000 0.136693 0.087505 -dPolE 7330.000000 50.000000 0.356282 0.087638 -dPolE 7340.000000 50.000000 0.329326 0.087595 -dPolE 7350.000000 50.000000 0.215243 0.087262 -dPolE 7360.000000 50.000000 0.103000 0.087457 -dPolE 7370.000000 50.000000 0.051681 0.087857 -dPolE 7380.000000 50.000000 0.110789 0.088408 -dPolE 7390.000000 50.000000 0.202520 0.088632 -dPolE 7400.000000 50.000000 0.209748 0.088278 -dPolE 7410.000000 50.000000 0.060688 0.088767 -dPolE 7420.000000 50.000000 -0.066095 0.089588 -dPolE 7430.000000 50.000000 0.112934 0.089646 -dPolE 7440.000000 50.000000 0.088585 0.089734 -dPolE 7450.000000 50.000000 0.172775 0.089756 -dPolE 7460.000000 50.000000 0.056316 0.089948 -dPolE 7470.000000 50.000000 0.193077 0.089523 -dPolE 7480.000000 50.000000 0.174909 0.089469 -dPolE 7490.000000 50.000000 0.062761 0.089936 -dPolE 7500.000000 50.000000 0.060855 0.090011 -dPolE 7510.000000 50.000000 0.244872 0.089804 -dPolE 7520.000000 50.000000 0.049575 0.090633 -dPolE 7530.000000 50.000000 0.136990 0.090831 -dPolE 7540.000000 50.000000 0.209322 0.090285 -dPolE 7550.000000 50.000000 0.145739 0.090523 -dPolE 7560.000000 50.000000 0.138569 0.090705 -dPolE 7570.000000 50.000000 -0.046040 0.090732 -dPolE 7580.000000 50.000000 0.012444 0.090522 -dPolE 7590.000000 50.000000 0.122851 0.090399 -dPolE 7600.000000 50.000000 0.127555 0.091086 -dPolE 7610.000000 50.000000 0.076953 0.091857 -dPolE 7620.000000 50.000000 0.227230 0.092258 -dPolE 7630.000000 50.000000 0.191899 0.092071 -dPolE 7640.000000 50.000000 -0.046569 0.092184 -dPolE 7650.000000 50.000000 0.035272 0.092411 -dPolE 7660.000000 50.000000 0.085939 0.092946 -dPolE 7670.000000 50.000000 0.370741 0.093453 -dPolE 7680.000000 50.000000 0.034097 0.093696 -dPolE 7690.000000 50.000000 -0.132560 0.092893 -dPolE 7700.000000 50.000000 0.038224 0.092339 -dPolE 7710.000000 50.000000 0.105566 0.092989 -dPolE 7720.000000 50.000000 0.155238 0.093992 -dPolE 7730.000000 50.000000 -0.038229 0.094910 -dPolE 7740.000000 50.000000 -0.074810 0.095132 -dPolE 7750.000000 50.000000 0.169033 0.095227 -dPolE 7760.000000 50.000000 0.172014 0.095775 -dPolE 7770.000000 50.000000 -0.084215 0.096435 -dPolE 7780.000000 50.000000 -0.076788 0.096317 -dPolE 7790.000000 50.000000 -0.132661 0.095782 -dPolE 7800.000000 50.000000 -0.045988 0.095565 -dPolE 7810.000000 50.000000 0.082458 0.096211 -dPolE 7820.000000 50.000000 0.202242 0.096565 -dPolE 7830.000000 50.000000 0.051247 0.096888 -dPolE 7840.000000 50.000000 -0.016075 0.097428 -dPolE 7850.000000 50.000000 -0.024712 0.098190 -dPolE 7860.000000 50.000000 -0.027280 0.098630 -dPolE 7870.000000 50.000000 -0.039165 0.098616 -dPolE 7880.000000 50.000000 0.055663 0.098302 -dPolE 7890.000000 50.000000 0.083523 0.098515 -dPolE 7900.000000 50.000000 0.042025 0.099088 -dPolE 7910.000000 50.000000 -0.038900 0.099300 -dPolE 7920.000000 50.000000 -0.002707 0.099514 -dPolE 7930.000000 50.000000 -0.060735 0.099791 -dPolE 7940.000000 50.000000 0.114926 0.099338 -dPolE 7950.000000 50.000000 0.158055 0.099355 -dPolE 7960.000000 50.000000 0.034721 0.100088 -dPolE 7970.000000 50.000000 -0.028050 0.100686 -dPolE 7980.000000 50.000000 0.142754 0.100896 -dPolE 7990.000000 50.000000 0.011404 0.101288 -dPolE 8000.000000 50.000000 0.102720 0.101082 -dPolE 8010.000000 50.000000 0.097495 0.100955 -dPolE 8020.000000 50.000000 0.046017 0.101724 -dPolE 8030.000000 50.000000 -0.123851 0.102558 -dPolE 8040.000000 50.000000 0.050574 0.102335 -dPolE 8050.000000 50.000000 -0.017222 0.102221 -dPolE 8060.000000 50.000000 0.089364 0.102396 -dPolE 8070.000000 50.000000 0.042678 0.103420 -dPolE 8080.000000 50.000000 -0.003098 0.103959 -dPolE 8090.000000 50.000000 0.101247 0.103183 -dPolE 8100.000000 50.000000 0.023261 0.103453 -dPolE 8110.000000 50.000000 0.035597 0.103999 -dPolE 8120.000000 50.000000 0.312342 0.104326 -dPolE 8130.000000 50.000000 0.321042 0.104287 -dPolE 8140.000000 50.000000 0.067196 0.104031 -dPolE 8150.000000 50.000000 0.135584 0.104311 -dPolE 8160.000000 50.000000 -0.058338 0.105346 -dPolE 8170.000000 50.000000 0.206283 0.105458 -dPolE 8180.000000 50.000000 0.144351 0.105301 -dPolE 8190.000000 50.000000 -0.021273 0.105391 -dPolE 8200.000000 50.000000 0.160751 0.105565 -dPolE 8210.000000 50.000000 0.067518 0.106227 -dPolE 8220.000000 50.000000 -0.043298 0.106805 -dPolE 8230.000000 50.000000 0.058260 0.106332 -dPolE 8240.000000 50.000000 -0.073534 0.106324 -dPolE 8250.000000 50.000000 -0.052135 0.107017 -dPolE 8260.000000 50.000000 -0.040361 0.107711 -dPolE 8270.000000 50.000000 0.044316 0.107385 -dPolE 8280.000000 50.000000 0.087120 0.106878 -dPolE 8290.000000 50.000000 0.162355 0.106817 -dPolE 8300.000000 50.000000 0.156522 0.107853 -dPolE 8310.000000 50.000000 -0.115228 0.108836 -dPolE 8320.000000 50.000000 -0.034172 0.108512 -dPolE 8330.000000 50.000000 0.298596 0.107517 -dPolE 8340.000000 50.000000 0.085277 0.107557 -dPolE 8350.000000 50.000000 0.089903 0.108120 -dPolE 8360.000000 50.000000 0.021599 0.109105 -dPolE 8370.000000 50.000000 -0.075828 0.109035 -dPolE 8380.000000 50.000000 -0.111581 0.108826 -dPolE 8390.000000 50.000000 -0.030440 0.108983 -dPolE 8400.000000 50.000000 0.187362 0.109636 -dPolE 8410.000000 50.000000 0.005064 0.110372 -dPolE 8420.000000 50.000000 -0.007840 0.110175 -dPolE 8430.000000 50.000000 0.257418 0.109434 -dPolE 8440.000000 50.000000 0.202046 0.109587 -dPolE 8450.000000 50.000000 0.252613 0.110066 -dPolE 8460.000000 50.000000 0.108154 0.110630 -dPolE 8470.000000 50.000000 0.010701 0.110520 -dPolE 8480.000000 50.000000 -0.000743 0.110089 -dPolE 8490.000000 50.000000 0.098819 0.110708 -dPolE 8500.000000 50.000000 0.153623 0.112580 -dPolE 8510.000000 50.000000 0.160077 0.113341 -dPolE 8520.000000 50.000000 0.209638 0.110959 -dPolE 8530.000000 50.000000 0.114587 0.108602 -dPolE 8540.000000 50.000000 -0.036440 0.108421 -dPolE 8550.000000 50.000000 -0.022706 0.109885 -dPolE 8560.000000 50.000000 0.078598 0.111040 -dPolE 8570.000000 50.000000 0.290721 0.111162 -dPolE 8580.000000 50.000000 0.174217 0.110781 -dPolE 8590.000000 50.000000 0.248769 0.110403 -dPolE 8600.000000 50.000000 0.007427 0.111107 -dPolE 8610.000000 50.000000 0.164445 0.111881 -dPolE 8620.000000 50.000000 0.196027 0.112319 -dPolE 8630.000000 50.000000 0.186653 0.112324 -dPolE 8640.000000 50.000000 0.292819 0.111533 -dPolE 8650.000000 50.000000 0.240694 0.111114 -dPolE 8660.000000 50.000000 -0.006324 0.111979 -dPolE 8670.000000 50.000000 -0.005926 0.112864 -dPolE 8680.000000 50.000000 -0.092747 0.113151 -dPolE 8690.000000 50.000000 0.346756 0.112414 -dPolE 8700.000000 50.000000 -0.000414 0.112579 -dPolE 8710.000000 50.000000 -0.062710 0.112853 -dPolE 8720.000000 50.000000 -0.082691 0.113510 -dPolE 8730.000000 50.000000 0.086545 0.113307 -dPolE 8740.000000 50.000000 0.292286 0.112583 -dPolE 8750.000000 50.000000 -0.190146 0.112880 -dPolE 8760.000000 50.000000 0.297743 0.112389 -dPolE 8770.000000 50.000000 0.371976 0.112922 -dPolE 8780.000000 50.000000 -0.019009 0.113922 -dPolE 8790.000000 50.000000 -0.014668 0.113737 -dPolE 8800.000000 50.000000 0.076268 0.113592 -dPolE 8810.000000 50.000000 0.051599 0.114064 -dPolE 8820.000000 50.000000 0.242850 0.114223 -dPolE 8830.000000 50.000000 0.290411 0.114639 -dPolE 8840.000000 50.000000 0.215166 0.114850 -dPolE 8850.000000 50.000000 0.320322 0.114876 -dPolE 8860.000000 50.000000 -0.098765 0.115255 -dPolE 8870.000000 50.000000 0.089942 0.114678 -dPolE 8880.000000 50.000000 0.226229 0.114546 -dPolE 8890.000000 50.000000 0.150928 0.115083 -dPolE 8900.000000 50.000000 -0.109509 0.115881 -dPolE 8910.000000 50.000000 -0.026452 0.116117 -dPolE 8920.000000 50.000000 0.130052 0.115851 -dPolE 8930.000000 50.000000 0.062112 0.115891 -dPolE 8940.000000 50.000000 0.034333 0.116050 -dPolE 8950.000000 50.000000 0.054012 0.116401 -dPolE 8960.000000 50.000000 0.313726 0.116437 -dPolE 8970.000000 50.000000 0.160329 0.116820 -dPolE 8980.000000 50.000000 0.356492 0.116867 -dPolE 8990.000000 50.000000 0.144998 0.117000 -dPolE 9000.000000 50.000000 0.088696 0.117490 -dPolE 9010.000000 50.000000 0.115878 0.117853 -dPolE 9020.000000 50.000000 -0.216320 0.118360 -dPolE 9030.000000 50.000000 0.153310 0.118303 -dPolE 9040.000000 50.000000 -0.158908 0.118825 -dPolE 9050.000000 50.000000 -0.176754 0.118661 -dPolE 9060.000000 50.000000 -0.046095 0.118897 -dPolE 9070.000000 50.000000 -0.065826 0.119376 -dPolE 9080.000000 50.000000 0.101046 0.119769 -dPolE 9090.000000 50.000000 -0.035525 0.120563 -dPolE 9100.000000 50.000000 0.106745 0.120434 -dPolE 9110.000000 50.000000 0.072575 0.120100 -dPolE 9120.000000 50.000000 0.211764 0.120159 -dPolE 9130.000000 50.000000 0.011733 0.120998 -dPolE 9140.000000 50.000000 0.205628 0.121629 -dPolE 9150.000000 50.000000 -0.133340 0.122162 -dPolE 9160.000000 50.000000 0.014716 0.121513 -dPolE 9170.000000 50.000000 0.402650 0.120788 -dPolE 9180.000000 50.000000 -0.089517 0.121554 -dPolE 9190.000000 50.000000 -0.264642 0.122428 -dPolE 9200.000000 50.000000 0.050312 0.122978 -dPolE 9210.000000 50.000000 -0.042246 0.123566 -dPolE 9220.000000 50.000000 -0.072586 0.124355 -dPolE 9230.000000 50.000000 -0.019303 0.124616 -dPolE 9240.000000 50.000000 -0.040360 0.124735 -dPolE 9250.000000 50.000000 0.040489 0.124886 -dPolE 9260.000000 50.000000 0.058085 0.125329 -dPolE 9270.000000 50.000000 0.019152 0.126011 -dPolE 9280.000000 50.000000 -0.251246 0.127219 -dPolE 9290.000000 50.000000 -0.109117 0.127383 -dPolE 9300.000000 50.000000 0.061124 0.127320 -dPolE 9310.000000 50.000000 -0.135549 0.127828 -dPolE 9320.000000 50.000000 -0.141168 0.127945 -dPolE 9330.000000 50.000000 0.039010 0.128122 -dPolE 9340.000000 50.000000 0.301763 0.128327 -dPolE 9350.000000 50.000000 -0.021654 0.129562 -dPolE 9360.000000 50.000000 -0.178187 0.130613 -dPolE 9370.000000 50.000000 -0.513879 0.131516 -dPolE 9380.000000 50.000000 0.092847 0.130689 -dPolE 9390.000000 50.000000 0.103578 0.130985 -dPolE 9400.000000 50.000000 0.293533 0.131720 -dPolE 9410.000000 50.000000 0.443151 0.132165 -dPolE 9420.000000 50.000000 0.249497 0.133171 -dPolE 9430.000000 50.000000 0.107559 0.134046 -dPolE 9440.000000 50.000000 -0.134879 0.134592 -dPolE 9450.000000 50.000000 0.254653 0.134440 -dPolE 9460.000000 50.000000 0.345178 0.134981 -dPolE 9470.000000 50.000000 -0.001944 0.136244 -dPolE 9480.000000 50.000000 0.132333 0.136823 -dPolE 9490.000000 50.000000 0.294184 0.137363 -dPolE 9500.000000 50.000000 -0.003509 0.138488 -dPolE 9510.000000 50.000000 0.263690 0.138745 -dPolE 9520.000000 50.000000 -0.293510 0.140054 -dPolE 9530.000000 50.000000 0.042798 0.140181 -dPolE 9540.000000 50.000000 0.311804 0.140968 -dPolE 9550.000000 50.000000 0.131024 0.142227 -dPolE 9560.000000 50.000000 0.035514 0.142755 -dPolE 9570.000000 50.000000 -0.121821 0.143458 -dPolE 9580.000000 50.000000 -0.002760 0.143512 -dPolE 9590.000000 50.000000 0.380709 0.143495 -dPolE 9600.000000 50.000000 0.312854 0.144238 -dPolE 9610.000000 50.000000 0.265319 0.144850 -dPolE 9620.000000 50.000000 0.135979 0.145951 -dPolE 9630.000000 50.000000 0.011726 0.146839 -dPolE 9640.000000 50.000000 0.111303 0.147352 -dPolE 9650.000000 50.000000 0.164094 0.148116 -dPolE 9660.000000 50.000000 0.078386 0.148820 -dPolE 9670.000000 50.000000 0.241180 0.149638 -dPolE 9680.000000 50.000000 0.180797 0.150871 -dPolE 9690.000000 50.000000 0.240106 0.151567 -dPolE 9700.000000 50.000000 0.185906 0.152178 -dPolE 9710.000000 50.000000 0.062739 0.153232 -dPolE 9720.000000 50.000000 0.516779 0.153374 -dPolE 9730.000000 50.000000 0.146127 0.155380 -dPolE 9740.000000 50.000000 0.004950 0.156598 -dPolE 9750.000000 50.000000 -0.080080 0.157257 -dPolE 9760.000000 50.000000 0.134193 0.157948 -dPolE 9770.000000 50.000000 0.620771 0.158154 -dPolE 9780.000000 50.000000 -0.037181 0.160132 -dPolE 9790.000000 50.000000 -0.189255 0.161478 -dPolE 9800.000000 50.000000 0.053000 0.162203 -dPolE 9810.000000 50.000000 0.047044 0.163603 -dPolE 9820.000000 50.000000 0.076751 0.164959 -dPolE 9830.000000 50.000000 0.185161 0.165394 -dPolE 9840.000000 50.000000 0.092227 0.166717 -dPolE 9850.000000 50.000000 0.339304 0.167411 -dPolE 9860.000000 50.000000 0.221574 0.168763 -dPolE 9870.000000 50.000000 0.146577 0.170600 -dPolE 9880.000000 50.000000 0.528997 0.171197 -dPolE 9890.000000 50.000000 0.345494 0.172572 -dPolE 9900.000000 50.000000 0.461024 0.173332 -dPolE 9910.000000 50.000000 0.308098 0.174986 -dPolE 9920.000000 50.000000 -0.162157 0.177604 -dPolE 9930.000000 50.000000 0.006326 0.179214 -dPolE 9940.000000 50.000000 0.334360 0.180260 -dPolE 9950.000000 50.000000 -0.057027 0.182277 -dPolE 9960.000000 50.000000 -0.119932 0.184175 -dPolE 9970.000000 50.000000 -0.006253 0.185234 -dPolE 9980.000000 50.000000 0.519621 0.186215 -dPolE 9990.000000 50.000000 0.267923 0.188910 -dPolE 10000.000000 50.000000 0.248118 0.190716 -dPolE 10025.000000 50.000000 0.152581 0.094372 -dPolE 10050.000000 50.000000 0.046835 0.092254 -dPolE 10075.000000 50.000000 0.071503 0.089518 -dPolE 10100.000000 50.000000 0.064264 0.087440 -dPolE 10125.000000 50.000000 0.045417 0.085643 -dPolE 10150.000000 50.000000 0.050526 0.083420 -dPolE 10175.000000 50.000000 0.081504 0.081413 -dPolE 10200.000000 50.000000 0.138516 0.079604 -dPolE 10225.000000 50.000000 0.023612 0.077694 -dPolE 10250.000000 50.000000 -0.034759 0.075919 -dPolE 10275.000000 50.000000 0.084213 0.074371 -dPolE 10300.000000 50.000000 0.102200 0.072524 -dPolE 10325.000000 50.000000 0.076141 0.070646 -dPolE 10350.000000 50.000000 0.037539 0.069126 -dPolE 10375.000000 50.000000 0.028366 0.067670 -dPolE 10400.000000 50.000000 0.046620 0.066283 -dPolE 10425.000000 50.000000 -0.024087 0.065021 -dPolE 10450.000000 50.000000 -0.068686 0.063770 -dPolE 10475.000000 50.000000 -0.042254 0.062482 -dPolE 10500.000000 50.000000 -0.008435 0.061300 -dPolE 10525.000000 50.000000 0.021159 0.060189 -dPolE 10550.000000 50.000000 0.009279 0.059161 -dPolE 10575.000000 50.000000 0.045246 0.058213 -dPolE 10600.000000 50.000000 0.120174 0.057330 -dPolE 10625.000000 50.000000 0.041877 0.056234 -dPolE 10650.000000 50.000000 0.024311 0.055241 -dPolE 10675.000000 50.000000 0.121992 0.054409 -dPolE 10700.000000 50.000000 0.111421 0.053441 -dPolE 10725.000000 50.000000 0.071521 0.052527 -dPolE 10750.000000 50.000000 0.035966 0.051927 -dPolE 10775.000000 50.000000 -0.006697 0.051020 -dPolE 10800.000000 50.000000 -0.052587 0.049936 -dPolE 10825.000000 50.000000 -0.051546 0.049184 -dPolE 10850.000000 50.000000 -0.013720 0.048367 -dPolE 10875.000000 50.000000 0.071368 0.047459 -dPolE 10900.000000 50.000000 0.013154 0.046843 -dPolE 10925.000000 50.000000 -0.028981 0.046211 -dPolE 10950.000000 50.000000 0.044921 0.045369 -dPolE 10975.000000 50.000000 0.090744 0.044708 -dPolE 11000.000000 50.000000 0.116784 0.044144 -dPolE 11025.000000 50.000000 0.079365 0.043659 -dPolE 11050.000000 50.000000 0.074622 0.043234 -dPolE 11075.000000 50.000000 0.100000 0.042864 -dPolE 11100.000000 50.000000 0.065482 0.042237 -dPolE 11125.000000 50.000000 0.041837 0.041744 -dPolE 11150.000000 50.000000 0.044492 0.041511 -dPolE 11175.000000 50.000000 0.069375 0.041156 -dPolE 11200.000000 50.000000 0.093298 0.040813 -dPolE 11225.000000 50.000000 0.087946 0.040635 -dPolE 11250.000000 50.000000 0.114908 0.040335 -dPolE 11275.000000 50.000000 0.155507 0.039979 -dPolE 11300.000000 50.000000 0.060232 0.039978 -dPolE 11325.000000 50.000000 0.005977 0.039845 -dPolE 11350.000000 50.000000 -0.001503 0.039565 -dPolE 11375.000000 50.000000 0.029070 0.039414 -dPolE 11400.000000 50.000000 0.050225 0.039258 -dPolE 11425.000000 50.000000 0.041431 0.039058 -dPolE 11450.000000 50.000000 0.024371 0.038875 -dPolE 11475.000000 50.000000 0.013225 0.038676 -dPolE 11500.000000 50.000000 0.043588 0.038368 -dPolE 11525.000000 50.000000 0.034056 0.038105 -dPolE 11550.000000 50.000000 0.001495 0.037871 -dPolE 11575.000000 50.000000 0.073277 0.037683 -dPolE 11600.000000 50.000000 0.123967 0.037389 -dPolE 11625.000000 50.000000 0.150184 0.036974 -dPolE 11650.000000 50.000000 0.102966 0.036766 -dPolE 11675.000000 50.000000 0.052358 0.036551 -dPolE 11700.000000 50.000000 0.012720 0.036261 -dPolE 11725.000000 50.000000 0.061797 0.036044 -dPolE 11750.000000 50.000000 0.119468 0.035820 -dPolE 11775.000000 50.000000 0.091141 0.035463 -dPolE 11800.000000 50.000000 0.035242 0.035161 -dPolE 11825.000000 50.000000 -0.026771 0.034889 -dPolE 11850.000000 50.000000 0.082657 0.034549 -dPolE 11875.000000 50.000000 0.151105 0.034241 -dPolE 11900.000000 50.000000 0.178102 0.033964 -dPolE 11925.000000 50.000000 0.072418 0.033706 -dPolE 11950.000000 50.000000 -0.005042 0.033468 -dPolE 11975.000000 50.000000 -0.017378 0.033258 -dPolE 12000.000000 50.000000 0.032459 0.033013 -dPolE 12025.000000 50.000000 0.075808 0.032770 -dPolE 12050.000000 50.000000 0.051718 0.032561 -dPolE 12075.000000 50.000000 0.053770 0.032399 -dPolE 12100.000000 50.000000 0.072295 0.032248 -dPolE 12125.000000 50.000000 0.122173 0.032023 -dPolE 12150.000000 50.000000 0.120936 0.031827 -dPolE 12175.000000 50.000000 0.080726 0.031655 -dPolE 12200.000000 50.000000 0.146554 0.031553 -dPolE 12225.000000 50.000000 0.141716 0.031463 -dPolE 12250.000000 50.000000 0.049742 0.031386 -dPolE 12275.000000 50.000000 0.108819 0.031321 -dPolE 12300.000000 50.000000 0.137050 0.031305 -dPolE 12325.000000 50.000000 0.066105 0.031385 -dPolE 12350.000000 50.000000 0.050572 0.031308 -dPolE 12375.000000 50.000000 0.058425 0.031252 -dPolE 12400.000000 50.000000 0.092348 0.031424 -dPolE 12425.000000 50.000000 0.096442 0.031356 -dPolE 12450.000000 50.000000 0.091021 0.031204 -dPolE 12475.000000 50.000000 0.122796 0.031306 -dPolE 12500.000000 50.000000 0.130061 0.031208 -dPolE 12525.000000 50.000000 0.120036 0.030962 -dPolE 12550.000000 50.000000 0.184366 0.030836 -dPolE 12575.000000 50.000000 0.166628 0.030717 -dPolE 12600.000000 50.000000 0.056298 0.030609 -dPolE 12625.000000 50.000000 0.060937 0.030533 -dPolE 12650.000000 50.000000 0.059844 0.030421 -dPolE 12675.000000 50.000000 0.031463 0.030245 -dPolE 12700.000000 50.000000 0.045291 0.030038 -dPolE 12725.000000 50.000000 0.085928 0.029877 -dPolE 12750.000000 50.000000 0.173254 0.029857 -dPolE 12775.000000 50.000000 0.149223 0.029703 -dPolE 12800.000000 50.000000 0.090681 0.029514 -dPolE 12825.000000 50.000000 0.060579 0.029378 -dPolE 12850.000000 50.000000 0.086419 0.029235 -dPolE 12875.000000 50.000000 0.134316 0.029094 -dPolE 12900.000000 50.000000 0.093290 0.028995 -dPolE 12925.000000 50.000000 0.084218 0.028846 -dPolE 12950.000000 50.000000 0.100563 0.028657 -dPolE 12975.000000 50.000000 0.089612 0.028574 -dPolE 13000.000000 50.000000 0.094492 0.028476 -dPolE 13025.000000 50.000000 0.117111 0.028362 -dPolE 13050.000000 50.000000 0.078422 0.028224 -dPolE 13075.000000 50.000000 0.064552 0.028107 -dPolE 13100.000000 50.000000 0.096692 0.028025 -dPolE 13125.000000 50.000000 0.115457 0.027945 -dPolE 13150.000000 50.000000 0.125393 0.027863 -dPolE 13175.000000 50.000000 0.121085 0.027773 -dPolE 13200.000000 50.000000 0.103467 0.027702 -dPolE 13225.000000 50.000000 0.095719 0.027657 -dPolE 13250.000000 50.000000 0.131886 0.027684 -dPolE 13275.000000 50.000000 0.095692 0.027670 -dPolE 13300.000000 50.000000 0.050700 0.027649 -dPolE 13325.000000 50.000000 0.116515 0.027672 -dPolE 13350.000000 50.000000 0.108039 0.027720 -dPolE 13375.000000 50.000000 0.061545 0.027779 -dPolE 13400.000000 50.000000 0.064221 0.027794 -dPolE 13425.000000 50.000000 0.054148 0.027862 -dPolE 13450.000000 50.000000 0.036366 0.027972 -dPolE 13475.000000 50.000000 0.079189 0.028130 -dPolE 13500.000000 50.000000 0.085544 0.028314 -dPolE 13525.000000 50.000000 0.055045 0.028524 -dPolE 13550.000000 50.000000 0.081256 0.028898 -dPolE 13575.000000 50.000000 0.089659 0.029292 -dPolE 13600.000000 50.000000 0.072629 0.029706 -dPolE 13625.000000 50.000000 0.114777 0.029951 -dPolE 13650.000000 50.000000 0.130876 0.030203 -dPolE 13675.000000 50.000000 0.095649 0.030491 -dPolE 13700.000000 50.000000 0.103346 0.031205 -dPolE 13725.000000 50.000000 0.093872 0.032420 -dPolE 13750.000000 50.000000 0.028327 0.034640 -dPolE 13775.000000 50.000000 0.078082 0.037767 -dPolE 13800.000000 50.000000 0.126841 0.041063 -dPolE 13825.000000 50.000000 0.067339 0.043093 -dPolE 13850.000000 50.000000 0.003209 0.042794 -dPolE 13875.000000 50.000000 -0.031575 0.041560 -dPolE 13900.000000 50.000000 0.012818 0.039770 -dPolE 13925.000000 50.000000 0.032024 0.038672 -dPolE 13950.000000 50.000000 0.029453 0.037646 -dPolE 13975.000000 50.000000 -0.021403 0.035906 -dPolE 14000.000000 50.000000 0.051185 0.034814 -dPolE 14025.000000 50.000000 0.143311 0.034009 -dPolE 14050.000000 50.000000 0.054902 0.033205 -dPolE 14075.000000 50.000000 0.077124 0.032608 -dPolE 14100.000000 50.000000 0.142772 0.032113 -dPolE 14125.000000 50.000000 0.088560 0.031527 -dPolE 14150.000000 50.000000 0.062694 0.031133 -dPolE 14175.000000 50.000000 0.053721 0.030856 -dPolE 14200.000000 50.000000 0.034113 0.030542 -dPolE 14225.000000 50.000000 0.042613 0.030335 -dPolE 14250.000000 50.000000 0.069303 0.030205 -dPolE 14275.000000 50.000000 0.049999 0.030019 -dPolE 14300.000000 50.000000 0.077763 0.029877 -dPolE 14325.000000 50.000000 0.142449 0.029772 -dPolE 14350.000000 50.000000 0.096170 0.029705 -dPolE 14375.000000 50.000000 0.120153 0.029609 -dPolE 14400.000000 50.000000 0.210104 0.029484 -dPolE 14425.000000 50.000000 0.086393 0.029546 -dPolE 14450.000000 50.000000 0.074470 0.029497 -dPolE 14475.000000 50.000000 0.178751 0.029330 -dPolE 14500.000000 50.000000 0.111406 0.029325 -dPolE 14525.000000 50.000000 0.109485 0.029344 -dPolE 14550.000000 50.000000 0.185084 0.029388 -dPolE 14575.000000 50.000000 0.033561 0.029326 -dPolE 14600.000000 50.000000 0.007110 0.029329 -dPolE 14625.000000 50.000000 0.141830 0.029413 -dPolE 14650.000000 50.000000 0.114589 0.029344 -dPolE 14675.000000 50.000000 0.102406 0.029365 -dPolE 14700.000000 50.000000 0.120576 0.029515 -dPolE 14725.000000 50.000000 0.109012 0.029435 -dPolE 14750.000000 50.000000 0.103379 0.029435 -dPolE 14775.000000 50.000000 0.107930 0.029565 -dPolE 14800.000000 50.000000 0.126052 0.029540 -dPolE 14825.000000 50.000000 0.139197 0.029529 -dPolE 14850.000000 50.000000 0.143966 0.029556 -dPolE 14875.000000 50.000000 0.150782 0.029598 -dPolE 14900.000000 50.000000 0.146443 0.029679 -dPolE 14925.000000 50.000000 0.125928 0.029813 -dPolE 14950.000000 50.000000 0.113343 0.029805 -dPolE 14975.000000 50.000000 0.114033 0.029874 -dPolE 15000.000000 50.000000 0.131850 0.030069 -dPolE 15025.000000 50.000000 0.139883 0.030022 -dPolE 15050.000000 50.000000 0.170255 0.030050 -dPolE 15075.000000 50.000000 0.232574 0.030213 -dPolE 15100.000000 50.000000 0.176046 0.030212 -dPolE 15125.000000 50.000000 0.143490 0.030233 -dPolE 15150.000000 50.000000 0.156189 0.030304 -dPolE 15175.000000 50.000000 0.136798 0.030365 -dPolE 15200.000000 50.000000 0.130024 0.030462 -dPolE 15225.000000 50.000000 0.142669 0.030604 -dPolE 15250.000000 50.000000 0.108080 0.030671 -dPolE 15275.000000 50.000000 0.120231 0.030771 -dPolE 15300.000000 50.000000 0.193911 0.030918 -dPolE 15325.000000 50.000000 0.141915 0.030965 -dPolE 15350.000000 50.000000 0.138096 0.031045 -dPolE 15375.000000 50.000000 0.197004 0.031169 -dPolE 15400.000000 50.000000 0.145419 0.031254 -dPolE 15425.000000 50.000000 0.163312 0.031392 -dPolE 15450.000000 50.000000 0.260337 0.031589 -dPolE 15475.000000 50.000000 0.140924 0.031698 -dPolE 15500.000000 50.000000 0.080452 0.031832 -dPolE 15525.000000 50.000000 0.079832 0.031991 -dPolE 15550.000000 50.000000 0.105684 0.031954 -dPolE 15575.000000 50.000000 0.163938 0.032043 -dPolE 15600.000000 50.000000 0.242791 0.032241 -dPolE 15625.000000 50.000000 0.122723 0.032359 -dPolE 15650.000000 50.000000 0.101089 0.032511 -dPolE 15675.000000 50.000000 0.152847 0.032681 -dPolE 15700.000000 50.000000 0.126868 0.032736 -dPolE 15725.000000 50.000000 0.114179 0.032878 -dPolE 15750.000000 50.000000 0.114074 0.033073 -dPolE 15775.000000 50.000000 0.143358 0.033194 -dPolE 15800.000000 50.000000 0.158324 0.033329 -dPolE 15825.000000 50.000000 0.169875 0.033482 -dPolE 15850.000000 50.000000 0.215157 0.033684 -dPolE 15875.000000 50.000000 0.168855 0.033845 -dPolE 15900.000000 50.000000 0.084405 0.033997 -dPolE 15925.000000 50.000000 0.045089 0.034206 -dPolE 15950.000000 50.000000 0.073173 0.034425 -dPolE 15975.000000 50.000000 0.117952 0.034636 -dPolE 16000.000000 50.000000 0.117858 0.034799 -dPolE 16025.000000 50.000000 0.152817 0.034942 -dPolE 16050.000000 50.000000 0.192196 0.035113 -dPolE 16075.000000 50.000000 0.209770 0.035376 -dPolE 16100.000000 50.000000 0.159250 0.035629 -dPolE 16125.000000 50.000000 0.108281 0.035853 -dPolE 16150.000000 50.000000 0.096832 0.036016 -dPolE 16175.000000 50.000000 0.079838 0.036337 -dPolE 16200.000000 50.000000 0.101045 0.036629 -dPolE 16225.000000 50.000000 0.191604 0.036811 -dPolE 16250.000000 50.000000 0.194736 0.037065 -dPolE 16275.000000 50.000000 0.162039 0.037366 -dPolE 16300.000000 50.000000 0.093280 0.037726 -dPolE 16325.000000 50.000000 0.108397 0.038030 -dPolE 16350.000000 50.000000 0.152333 0.038359 -dPolE 16375.000000 50.000000 0.222268 0.038722 -dPolE 16400.000000 50.000000 0.162699 0.039050 -dPolE 16425.000000 50.000000 0.142561 0.039548 -dPolE 16450.000000 50.000000 0.150028 0.040175 -dPolE 16475.000000 50.000000 0.068276 0.040488 -dPolE 16500.000000 50.000000 0.027317 0.041100 -dPolE 16525.000000 50.000000 0.016355 0.041911 -dPolE 16550.000000 50.000000 0.025466 0.042646 -dPolE 16575.000000 50.000000 0.088947 0.043699 -dPolE 16600.000000 50.000000 0.134143 0.045013 -dPolE 16625.000000 50.000000 -0.012207 0.046661 -dPolE 16650.000000 50.000000 0.016130 0.049292 -dPolE 16675.000000 50.000000 0.087027 0.052711 -dPolE 16700.000000 50.000000 0.080981 0.056974 -dPolE 16725.000000 50.000000 -0.025690 0.063414 -dPolE 16750.000000 50.000000 -0.097947 0.071740 -dPolE 16775.000000 50.000000 0.001565 0.082019 -dPolE 16800.000000 50.000000 0.042786 0.095587 -dPolE 16825.000000 50.000000 0.033039 0.112207 -dPolE 16850.000000 50.000000 -0.059271 0.131196 -dPolE 16875.000000 50.000000 -0.164263 0.153737 -dPolE 16900.000000 50.000000 -0.105080 0.180220 -dPolE 16925.000000 50.000000 0.163321 0.209968 -dPolE 16950.000000 50.000000 -0.259923 0.244560 -dPolE 16975.000000 50.000000 -0.650729 0.282122 -dPolE 17000.000000 50.000000 -0.879995 0.322788 -dPolE 1930.000000 60.000000 2.012906 0.166024 -dPolE 1940.000000 60.000000 1.517541 0.151911 -dPolE 1950.000000 60.000000 1.048276 0.140543 -dPolE 1960.000000 60.000000 0.787670 0.132892 -dPolE 1970.000000 60.000000 1.001257 0.125979 -dPolE 1980.000000 60.000000 1.318819 0.120419 -dPolE 1990.000000 60.000000 0.956136 0.116724 -dPolE 2000.000000 60.000000 0.802506 0.113034 -dPolE 2010.000000 60.000000 1.487767 0.108800 -dPolE 2020.000000 60.000000 1.543620 0.105312 -dPolE 2030.000000 60.000000 1.335608 0.102187 -dPolE 2040.000000 60.000000 1.448875 0.099041 -dPolE 2050.000000 60.000000 1.482400 0.096033 -dPolE 2060.000000 60.000000 1.437595 0.093189 -dPolE 2070.000000 60.000000 1.338508 0.090487 -dPolE 2080.000000 60.000000 1.162719 0.088067 -dPolE 2090.000000 60.000000 1.070732 0.085652 -dPolE 2100.000000 60.000000 1.206537 0.083220 -dPolE 2110.000000 60.000000 1.063960 0.081457 -dPolE 2120.000000 60.000000 1.058711 0.079629 -dPolE 2130.000000 60.000000 1.092527 0.077830 -dPolE 2140.000000 60.000000 1.133319 0.076244 -dPolE 2150.000000 60.000000 1.059309 0.074881 -dPolE 2160.000000 60.000000 1.020163 0.073639 -dPolE 2170.000000 60.000000 1.154215 0.072340 -dPolE 2180.000000 60.000000 1.053484 0.071223 -dPolE 2190.000000 60.000000 0.948986 0.070078 -dPolE 2200.000000 60.000000 0.850124 0.068967 -dPolE 2210.000000 60.000000 0.928981 0.067785 -dPolE 2220.000000 60.000000 0.871681 0.066706 -dPolE 2230.000000 60.000000 0.862197 0.065678 -dPolE 2240.000000 60.000000 0.892073 0.064678 -dPolE 2250.000000 60.000000 0.985824 0.063710 -dPolE 2260.000000 60.000000 0.914113 0.062941 -dPolE 2270.000000 60.000000 0.883417 0.062120 -dPolE 2280.000000 60.000000 0.915131 0.061265 -dPolE 2290.000000 60.000000 0.843216 0.060484 -dPolE 2300.000000 60.000000 0.655426 0.059890 -dPolE 2310.000000 60.000000 0.668532 0.059190 -dPolE 2320.000000 60.000000 0.704822 0.058487 -dPolE 2330.000000 60.000000 0.651066 0.057925 -dPolE 2340.000000 60.000000 0.742352 0.057311 -dPolE 2350.000000 60.000000 0.694571 0.056804 -dPolE 2360.000000 60.000000 0.705838 0.056327 -dPolE 2370.000000 60.000000 0.643769 0.055906 -dPolE 2380.000000 60.000000 0.742556 0.055393 -dPolE 2390.000000 60.000000 0.744434 0.055051 -dPolE 2400.000000 60.000000 0.601366 0.054853 -dPolE 2410.000000 60.000000 0.647136 0.054551 -dPolE 2420.000000 60.000000 0.612973 0.054316 -dPolE 2430.000000 60.000000 0.626893 0.054157 -dPolE 2440.000000 60.000000 0.553787 0.054048 -dPolE 2450.000000 60.000000 0.590559 0.053877 -dPolE 2460.000000 60.000000 0.663062 0.053740 -dPolE 2470.000000 60.000000 0.626739 0.053694 -dPolE 2480.000000 60.000000 0.528072 0.053683 -dPolE 2490.000000 60.000000 0.492209 0.053679 -dPolE 2500.000000 60.000000 0.514337 0.053711 -dPolE 2510.000000 60.000000 0.556894 0.053756 -dPolE 2520.000000 60.000000 0.528882 0.053805 -dPolE 2530.000000 60.000000 0.628777 0.053843 -dPolE 2540.000000 60.000000 0.657087 0.054030 -dPolE 2550.000000 60.000000 0.600725 0.054261 -dPolE 2560.000000 60.000000 0.683492 0.054453 -dPolE 2570.000000 60.000000 0.682710 0.054750 -dPolE 2580.000000 60.000000 0.574746 0.055127 -dPolE 2590.000000 60.000000 0.450928 0.055551 -dPolE 2600.000000 60.000000 0.465204 0.055965 -dPolE 2610.000000 60.000000 0.548784 0.056341 -dPolE 2620.000000 60.000000 0.470654 0.056823 -dPolE 2630.000000 60.000000 0.568797 0.057247 -dPolE 2640.000000 60.000000 0.683455 0.057706 -dPolE 2650.000000 60.000000 0.564646 0.058363 -dPolE 2660.000000 60.000000 0.544952 0.059032 -dPolE 2670.000000 60.000000 0.525642 0.059708 -dPolE 2680.000000 60.000000 0.606003 0.060276 -dPolE 2690.000000 60.000000 0.459058 0.060999 -dPolE 2700.000000 60.000000 0.412868 0.061703 -dPolE 2710.000000 60.000000 0.632934 0.062279 -dPolE 2720.000000 60.000000 0.471783 0.063085 -dPolE 2730.000000 60.000000 0.303105 0.063878 -dPolE 2740.000000 60.000000 0.481616 0.064456 -dPolE 2750.000000 60.000000 0.514108 0.065099 -dPolE 2760.000000 60.000000 0.403951 0.065910 -dPolE 2770.000000 60.000000 0.308047 0.066861 -dPolE 2780.000000 60.000000 0.396232 0.067368 -dPolE 2790.000000 60.000000 0.433405 0.067826 -dPolE 2800.000000 60.000000 0.273145 0.068513 -dPolE 2810.000000 60.000000 0.277516 0.069190 -dPolE 2820.000000 60.000000 0.385901 0.069792 -dPolE 2830.000000 60.000000 0.286315 0.070541 -dPolE 2840.000000 60.000000 0.248585 0.071187 -dPolE 2850.000000 60.000000 0.375307 0.071875 -dPolE 2860.000000 60.000000 0.502115 0.072578 -dPolE 2870.000000 60.000000 0.464268 0.073327 -dPolE 2880.000000 60.000000 0.443289 0.074213 -dPolE 2890.000000 60.000000 0.359726 0.075204 -dPolE 2900.000000 60.000000 0.241482 0.076263 -dPolE 2910.000000 60.000000 0.322618 0.077175 -dPolE 2920.000000 60.000000 0.245633 0.078247 -dPolE 2930.000000 60.000000 0.238916 0.079234 -dPolE 2940.000000 60.000000 0.339293 0.080051 -dPolE 2950.000000 60.000000 0.425088 0.080870 -dPolE 2960.000000 60.000000 0.285559 0.081991 -dPolE 2970.000000 60.000000 0.140763 0.083040 -dPolE 2980.000000 60.000000 0.285890 0.083856 -dPolE 2990.000000 60.000000 0.238392 0.084897 -dPolE 3000.000000 60.000000 0.307564 0.085832 -dPolE 3010.000000 60.000000 0.410211 0.086622 -dPolE 3020.000000 60.000000 0.413145 0.087629 -dPolE 3030.000000 60.000000 0.420332 0.088777 -dPolE 3040.000000 60.000000 0.351613 0.089892 -dPolE 3050.000000 60.000000 0.371732 0.091095 -dPolE 3060.000000 60.000000 0.429186 0.092156 -dPolE 3070.000000 60.000000 0.258853 0.093421 -dPolE 3080.000000 60.000000 0.136309 0.094728 -dPolE 3090.000000 60.000000 0.090759 0.096009 -dPolE 3100.000000 60.000000 0.247481 0.096951 -dPolE 3110.000000 60.000000 0.312184 0.097941 -dPolE 3120.000000 60.000000 0.087910 0.099404 -dPolE 3130.000000 60.000000 0.097312 0.100363 -dPolE 3140.000000 60.000000 0.316313 0.101167 -dPolE 3150.000000 60.000000 0.229031 0.102512 -dPolE 3160.000000 60.000000 0.209536 0.103613 -dPolE 3170.000000 60.000000 0.403433 0.104500 -dPolE 3180.000000 60.000000 0.319613 0.105630 -dPolE 3190.000000 60.000000 0.244034 0.106942 -dPolE 3200.000000 60.000000 0.205142 0.108116 -dPolE 3210.000000 60.000000 0.301141 0.109206 -dPolE 3220.000000 60.000000 0.116690 0.110629 -dPolE 3230.000000 60.000000 0.248951 0.111554 -dPolE 3240.000000 60.000000 0.327950 0.112564 -dPolE 3250.000000 60.000000 0.055768 0.114153 -dPolE 3260.000000 60.000000 0.127588 0.116108 -dPolE 3270.000000 60.000000 0.140855 0.118569 -dPolE 3280.000000 60.000000 -0.090111 0.121208 -dPolE 3290.000000 60.000000 -0.250775 0.123269 -dPolE 3300.000000 60.000000 0.108512 0.124537 -dPolE 3310.000000 60.000000 0.315369 0.126020 -dPolE 3320.000000 60.000000 -0.047663 0.127803 -dPolE 3330.000000 60.000000 0.064585 0.128619 -dPolE 3340.000000 60.000000 0.013478 0.129538 -dPolE 3350.000000 60.000000 0.336589 0.130020 -dPolE 3360.000000 60.000000 0.344854 0.130901 -dPolE 3370.000000 60.000000 0.002839 0.132060 -dPolE 3380.000000 60.000000 0.107063 0.132445 -dPolE 3390.000000 60.000000 0.029733 0.132633 -dPolE 3400.000000 60.000000 0.042743 0.132864 -dPolE 3410.000000 60.000000 0.114713 0.133329 -dPolE 3420.000000 60.000000 -0.109458 0.134759 -dPolE 3430.000000 60.000000 -0.016534 0.135476 -dPolE 3440.000000 60.000000 0.057097 0.136153 -dPolE 3450.000000 60.000000 -0.016529 0.137638 -dPolE 3460.000000 60.000000 -0.094496 0.138731 -dPolE 3470.000000 60.000000 0.025352 0.139784 -dPolE 3480.000000 60.000000 0.010211 0.140785 -dPolE 3490.000000 60.000000 0.032855 0.141702 -dPolE 3500.000000 60.000000 0.078735 0.142641 -dPolE 3510.000000 60.000000 -0.145660 0.144171 -dPolE 3520.000000 60.000000 -0.209177 0.145380 -dPolE 3530.000000 60.000000 -0.096237 0.146256 -dPolE 3540.000000 60.000000 -0.011748 0.147407 -dPolE 3550.000000 60.000000 0.070835 0.148319 -dPolE 3560.000000 60.000000 0.234130 0.148924 -dPolE 3570.000000 60.000000 0.074468 0.150262 -dPolE 3580.000000 60.000000 -0.147008 0.151762 -dPolE 3590.000000 60.000000 -0.401542 0.153291 -dPolE 3600.000000 60.000000 0.069330 0.153365 -dPolE 3610.000000 60.000000 0.202357 0.154179 -dPolE 3620.000000 60.000000 -0.250456 0.155569 -dPolE 3630.000000 60.000000 -0.056951 0.155791 -dPolE 3640.000000 60.000000 0.076664 0.156613 -dPolE 3650.000000 60.000000 0.334934 0.157501 -dPolE 3660.000000 60.000000 -0.015695 0.157859 -dPolE 3670.000000 60.000000 -0.165628 0.157011 -dPolE 3680.000000 60.000000 -0.086505 0.156465 -dPolE 3690.000000 60.000000 0.074703 0.156772 -dPolE 3700.000000 60.000000 0.094066 0.158513 -dPolE 3710.000000 60.000000 0.177586 0.160198 -dPolE 3720.000000 60.000000 0.144650 0.160872 -dPolE 3730.000000 60.000000 0.218147 0.161727 -dPolE 3740.000000 60.000000 0.130061 0.163071 -dPolE 3750.000000 60.000000 0.132308 0.162891 -dPolE 3760.000000 60.000000 0.368955 0.161826 -dPolE 3770.000000 60.000000 0.086583 0.162480 -dPolE 3780.000000 60.000000 0.224982 0.161135 -dPolE 3790.000000 60.000000 0.517139 0.159236 -dPolE 3800.000000 60.000000 0.122036 0.159771 -dPolE 3810.000000 60.000000 -0.143888 0.161526 -dPolE 3820.000000 60.000000 0.218056 0.161773 -dPolE 3830.000000 60.000000 0.205284 0.160486 -dPolE 3840.000000 60.000000 0.152828 0.160559 -dPolE 3850.000000 60.000000 0.041870 0.162105 -dPolE 3860.000000 60.000000 0.385637 0.160270 -dPolE 3870.000000 60.000000 0.173754 0.158163 -dPolE 3880.000000 60.000000 0.079956 0.155766 -dPolE 3890.000000 60.000000 0.372540 0.155516 -dPolE 3900.000000 60.000000 0.289990 0.159888 -dPolE 3910.000000 60.000000 0.120917 0.164680 -dPolE 3920.000000 60.000000 0.347971 0.163195 -dPolE 3930.000000 60.000000 0.140706 0.160638 -dPolE 3940.000000 60.000000 -0.135560 0.158817 -dPolE 3950.000000 60.000000 0.175016 0.157565 -dPolE 3960.000000 60.000000 0.429315 0.158530 -dPolE 3970.000000 60.000000 0.233016 0.160381 -dPolE 3980.000000 60.000000 0.095791 0.158290 -dPolE 3990.000000 60.000000 0.090064 0.155715 -dPolE 4000.000000 60.000000 0.408313 0.156133 -dPolE 4010.000000 60.000000 0.019883 0.160375 -dPolE 4020.000000 60.000000 0.262995 0.161961 -dPolE 4030.000000 60.000000 0.606708 0.161273 -dPolE 4040.000000 60.000000 0.044502 0.160865 -dPolE 4050.000000 60.000000 -0.000265 0.157496 -dPolE 4060.000000 60.000000 0.343310 0.153298 -dPolE 4070.000000 60.000000 0.244451 0.153903 -dPolE 4080.000000 60.000000 0.103483 0.158583 -dPolE 4090.000000 60.000000 0.202244 0.161794 -dPolE 4100.000000 60.000000 0.231990 0.162197 -dPolE 4110.000000 60.000000 0.225513 0.161943 -dPolE 4120.000000 60.000000 0.036817 0.160238 -dPolE 4130.000000 60.000000 -0.161719 0.155863 -dPolE 4140.000000 60.000000 0.055976 0.153493 -dPolE 4150.000000 60.000000 0.521694 0.154886 -dPolE 4160.000000 60.000000 0.440408 0.156412 -dPolE 4170.000000 60.000000 0.119660 0.156491 -dPolE 4180.000000 60.000000 0.179259 0.156300 -dPolE 4190.000000 60.000000 0.120551 0.158319 -dPolE 4200.000000 60.000000 0.045001 0.158823 -dPolE 4210.000000 60.000000 0.187368 0.154256 -dPolE 4220.000000 60.000000 0.164454 0.149176 -dPolE 4230.000000 60.000000 -0.001282 0.146429 -dPolE 4240.000000 60.000000 0.075093 0.145910 -dPolE 4250.000000 60.000000 0.193039 0.150652 -dPolE 4260.000000 60.000000 0.107504 0.156677 -dPolE 4270.000000 60.000000 0.190375 0.155843 -dPolE 4280.000000 60.000000 0.197353 0.151204 -dPolE 4290.000000 60.000000 0.396372 0.151957 -dPolE 4300.000000 60.000000 0.411136 0.152785 -dPolE 4310.000000 60.000000 0.168788 0.151966 -dPolE 4320.000000 60.000000 -0.097161 0.154677 -dPolE 4330.000000 60.000000 -0.294491 0.157424 -dPolE 4340.000000 60.000000 0.145084 0.152963 -dPolE 4350.000000 60.000000 -0.127899 0.151738 -dPolE 4360.000000 60.000000 -0.041852 0.153614 -dPolE 4370.000000 60.000000 0.393021 0.152898 -dPolE 4380.000000 60.000000 0.087159 0.152407 -dPolE 4390.000000 60.000000 0.016607 0.151374 -dPolE 4400.000000 60.000000 0.214413 0.150409 -dPolE 4410.000000 60.000000 0.119124 0.148008 -dPolE 4420.000000 60.000000 0.019184 0.143197 -dPolE 4430.000000 60.000000 0.167331 0.142210 -dPolE 4440.000000 60.000000 0.176085 0.143491 -dPolE 4450.000000 60.000000 -0.045418 0.143051 -dPolE 4460.000000 60.000000 0.022234 0.141801 -dPolE 4470.000000 60.000000 -0.093566 0.142707 -dPolE 4480.000000 60.000000 0.087509 0.143185 -dPolE 4490.000000 60.000000 0.218287 0.142785 -dPolE 4500.000000 60.000000 0.019291 0.142262 -dPolE 4510.000000 60.000000 -0.033816 0.142266 -dPolE 4520.000000 60.000000 0.091466 0.142477 -dPolE 4530.000000 60.000000 0.080271 0.142276 -dPolE 4540.000000 60.000000 -0.102243 0.141907 -dPolE 4550.000000 60.000000 0.143918 0.140740 -dPolE 4560.000000 60.000000 0.415811 0.138969 -dPolE 4570.000000 60.000000 0.225204 0.137271 -dPolE 4580.000000 60.000000 0.019862 0.134459 -dPolE 4590.000000 60.000000 0.031293 0.132086 -dPolE 4600.000000 60.000000 -0.200797 0.134403 -dPolE 4610.000000 60.000000 -0.320499 0.137978 -dPolE 4620.000000 60.000000 0.117204 0.138334 -dPolE 4630.000000 60.000000 0.189403 0.134967 -dPolE 4640.000000 60.000000 0.087753 0.130138 -dPolE 4650.000000 60.000000 0.098829 0.128327 -dPolE 4660.000000 60.000000 -0.077205 0.130117 -dPolE 4670.000000 60.000000 -0.245260 0.132979 -dPolE 4680.000000 60.000000 0.005344 0.133564 -dPolE 4690.000000 60.000000 0.090938 0.133917 -dPolE 4700.000000 60.000000 0.025743 0.136678 -dPolE 4710.000000 60.000000 0.214742 0.138321 -dPolE 4720.000000 60.000000 0.173827 0.136733 -dPolE 4730.000000 60.000000 -0.229929 0.134498 -dPolE 4740.000000 60.000000 -0.081735 0.133240 -dPolE 4750.000000 60.000000 0.195827 0.133332 -dPolE 4760.000000 60.000000 0.180940 0.132825 -dPolE 4770.000000 60.000000 -0.005475 0.131929 -dPolE 4780.000000 60.000000 0.210858 0.130367 -dPolE 4790.000000 60.000000 0.070924 0.129433 -dPolE 4800.000000 60.000000 -0.111462 0.129398 -dPolE 4810.000000 60.000000 0.329546 0.128394 -dPolE 4820.000000 60.000000 0.463682 0.128158 -dPolE 4830.000000 60.000000 0.464544 0.127671 -dPolE 4840.000000 60.000000 -0.002532 0.126805 -dPolE 4850.000000 60.000000 -0.131224 0.121136 -dPolE 4860.000000 60.000000 -0.002068 0.106446 -dPolE 4870.000000 60.000000 -0.012645 0.101216 -dPolE 4880.000000 60.000000 0.066608 0.116139 -dPolE 4890.000000 60.000000 0.047193 0.123736 -dPolE 4900.000000 60.000000 0.082183 0.123475 -dPolE 4910.000000 60.000000 0.190313 0.122139 -dPolE 4920.000000 60.000000 0.157589 0.122487 -dPolE 4930.000000 60.000000 0.125586 0.122128 -dPolE 4940.000000 60.000000 0.321886 0.120985 -dPolE 4950.000000 60.000000 0.046117 0.122641 -dPolE 4960.000000 60.000000 -0.108656 0.123517 -dPolE 4970.000000 60.000000 0.126604 0.122227 -dPolE 4980.000000 60.000000 0.199338 0.120867 -dPolE 4990.000000 60.000000 -0.171764 0.119758 -dPolE 5000.000000 60.000000 -0.195585 0.119232 -dPolE 5010.000000 60.000000 0.321588 0.118311 -dPolE 5020.000000 60.000000 0.325229 0.117469 -dPolE 5030.000000 60.000000 -0.055149 0.117903 -dPolE 5040.000000 60.000000 0.004251 0.118164 -dPolE 5050.000000 60.000000 -0.113387 0.118527 -dPolE 5060.000000 60.000000 -0.003599 0.117835 -dPolE 5070.000000 60.000000 0.016080 0.117550 -dPolE 5080.000000 60.000000 0.035811 0.117689 -dPolE 5090.000000 60.000000 0.183251 0.117369 -dPolE 5100.000000 60.000000 0.356640 0.117047 -dPolE 5110.000000 60.000000 0.016492 0.117045 -dPolE 5120.000000 60.000000 0.079526 0.116154 -dPolE 5130.000000 60.000000 0.148511 0.115928 -dPolE 5140.000000 60.000000 0.003792 0.115983 -dPolE 5150.000000 60.000000 -0.014981 0.115731 -dPolE 5160.000000 60.000000 0.185916 0.114992 -dPolE 5170.000000 60.000000 0.023081 0.114969 -dPolE 5180.000000 60.000000 0.058113 0.114609 -dPolE 5190.000000 60.000000 0.234280 0.113978 -dPolE 5200.000000 60.000000 0.021568 0.113598 -dPolE 5210.000000 60.000000 -0.011126 0.113164 -dPolE 5220.000000 60.000000 -0.056340 0.113105 -dPolE 5230.000000 60.000000 0.113413 0.112530 -dPolE 5240.000000 60.000000 0.044475 0.112269 -dPolE 5250.000000 60.000000 0.170499 0.111628 -dPolE 5260.000000 60.000000 0.072612 0.110962 -dPolE 5270.000000 60.000000 -0.044845 0.110125 -dPolE 5280.000000 60.000000 -0.027013 0.109833 -dPolE 5290.000000 60.000000 0.138673 0.109454 -dPolE 5300.000000 60.000000 0.151788 0.109079 -dPolE 5310.000000 60.000000 0.065455 0.109106 -dPolE 5320.000000 60.000000 -0.130497 0.109179 -dPolE 5330.000000 60.000000 0.071921 0.108144 -dPolE 5340.000000 60.000000 0.080741 0.107166 -dPolE 5350.000000 60.000000 0.080720 0.106823 -dPolE 5360.000000 60.000000 0.070902 0.106610 -dPolE 5370.000000 60.000000 0.098840 0.106368 -dPolE 5380.000000 60.000000 0.042272 0.106063 -dPolE 5390.000000 60.000000 -0.016387 0.105314 -dPolE 5400.000000 60.000000 0.096247 0.104663 -dPolE 5410.000000 60.000000 0.057187 0.104383 -dPolE 5420.000000 60.000000 0.060314 0.103689 -dPolE 5430.000000 60.000000 0.158107 0.102714 -dPolE 5440.000000 60.000000 0.346014 0.102088 -dPolE 5450.000000 60.000000 0.123500 0.102076 -dPolE 5460.000000 60.000000 -0.086974 0.102310 -dPolE 5470.000000 60.000000 0.000926 0.102000 -dPolE 5480.000000 60.000000 0.000325 0.101195 -dPolE 5490.000000 60.000000 -0.091806 0.100625 -dPolE 5500.000000 60.000000 0.003272 0.100385 -dPolE 5510.000000 60.000000 0.132771 0.100232 -dPolE 5520.000000 60.000000 0.066032 0.100149 -dPolE 5530.000000 60.000000 0.068240 0.099794 -dPolE 5540.000000 60.000000 -0.002075 0.099448 -dPolE 5550.000000 60.000000 0.065494 0.099182 -dPolE 5560.000000 60.000000 0.228883 0.098771 -dPolE 5570.000000 60.000000 0.179819 0.098499 -dPolE 5580.000000 60.000000 0.229377 0.098224 -dPolE 5590.000000 60.000000 0.200761 0.098161 -dPolE 5600.000000 60.000000 -0.029814 0.098136 -dPolE 5610.000000 60.000000 -0.031860 0.097613 -dPolE 5620.000000 60.000000 0.124401 0.097211 -dPolE 5630.000000 60.000000 -0.012732 0.097206 -dPolE 5640.000000 60.000000 0.199609 0.096599 -dPolE 5650.000000 60.000000 0.111434 0.096258 -dPolE 5660.000000 60.000000 -0.022822 0.096012 -dPolE 5670.000000 60.000000 0.050791 0.094920 -dPolE 5680.000000 60.000000 0.208713 0.093045 -dPolE 5690.000000 60.000000 0.193145 0.091105 -dPolE 5700.000000 60.000000 0.163296 0.088494 -dPolE 5710.000000 60.000000 0.236489 0.087101 -dPolE 5720.000000 60.000000 0.135189 0.086526 -dPolE 5730.000000 60.000000 0.103073 0.085716 -dPolE 5740.000000 60.000000 0.102735 0.084146 -dPolE 5750.000000 60.000000 0.281283 0.083101 -dPolE 5760.000000 60.000000 0.106584 0.082693 -dPolE 5770.000000 60.000000 0.003989 0.081233 -dPolE 5780.000000 60.000000 0.144296 0.079909 -dPolE 5790.000000 60.000000 0.308160 0.079599 -dPolE 5800.000000 60.000000 0.338627 0.079034 -dPolE 5810.000000 60.000000 0.297521 0.077089 -dPolE 5820.000000 60.000000 0.160348 0.075233 -dPolE 5830.000000 60.000000 0.079083 0.077147 -dPolE 5840.000000 60.000000 0.086507 0.080734 -dPolE 5850.000000 60.000000 0.057972 0.080172 -dPolE 5860.000000 60.000000 -0.002917 0.080654 -dPolE 5870.000000 60.000000 0.072600 0.081397 -dPolE 5880.000000 60.000000 0.140201 0.080528 -dPolE 5890.000000 60.000000 0.127896 0.080279 -dPolE 5900.000000 60.000000 0.266977 0.082813 -dPolE 5910.000000 60.000000 0.150759 0.084638 -dPolE 5920.000000 60.000000 0.158137 0.084640 -dPolE 5930.000000 60.000000 0.308715 0.083125 -dPolE 5940.000000 60.000000 0.197292 0.081998 -dPolE 5950.000000 60.000000 0.070092 0.081099 -dPolE 5960.000000 60.000000 0.169407 0.081197 -dPolE 5970.000000 60.000000 0.170079 0.082542 -dPolE 5980.000000 60.000000 0.142755 0.083250 -dPolE 5990.000000 60.000000 0.019858 0.083426 -dPolE 6000.000000 60.000000 0.124299 0.083397 -dPolE 6010.000000 60.000000 0.185808 0.082752 -dPolE 6020.000000 60.000000 -0.012032 0.081977 -dPolE 6030.000000 60.000000 0.036965 0.080755 -dPolE 6040.000000 60.000000 0.065805 0.080384 -dPolE 6050.000000 60.000000 0.156506 0.081915 -dPolE 6060.000000 60.000000 0.257697 0.082311 -dPolE 6070.000000 60.000000 0.051270 0.082622 -dPolE 6080.000000 60.000000 0.035386 0.082889 -dPolE 6090.000000 60.000000 0.275184 0.082930 -dPolE 6100.000000 60.000000 0.296988 0.082644 -dPolE 6110.000000 60.000000 0.176791 0.082296 -dPolE 6120.000000 60.000000 0.182026 0.082092 -dPolE 6130.000000 60.000000 0.198043 0.081923 -dPolE 6140.000000 60.000000 0.023700 0.081856 -dPolE 6150.000000 60.000000 0.111927 0.082241 -dPolE 6160.000000 60.000000 0.250651 0.082854 -dPolE 6170.000000 60.000000 0.173763 0.083344 -dPolE 6180.000000 60.000000 0.139855 0.083521 -dPolE 6190.000000 60.000000 0.063427 0.083886 -dPolE 6200.000000 60.000000 0.169010 0.083391 -dPolE 6210.000000 60.000000 0.323890 0.083307 -dPolE 6220.000000 60.000000 0.102857 0.083870 -dPolE 6230.000000 60.000000 0.116962 0.083402 -dPolE 6240.000000 60.000000 0.292263 0.082961 -dPolE 6250.000000 60.000000 0.133243 0.083827 -dPolE 6260.000000 60.000000 0.013898 0.084501 -dPolE 6270.000000 60.000000 0.160133 0.084381 -dPolE 6280.000000 60.000000 0.269942 0.084180 -dPolE 6290.000000 60.000000 0.164173 0.084307 -dPolE 6300.000000 60.000000 0.079537 0.084424 -dPolE 6310.000000 60.000000 0.238625 0.084717 -dPolE 6320.000000 60.000000 0.288097 0.084811 -dPolE 6330.000000 60.000000 0.245282 0.084552 -dPolE 6340.000000 60.000000 0.092056 0.084808 -dPolE 6350.000000 60.000000 0.160028 0.084743 -dPolE 6360.000000 60.000000 0.283320 0.084320 -dPolE 6370.000000 60.000000 0.236331 0.084203 -dPolE 6380.000000 60.000000 0.162948 0.084389 -dPolE 6390.000000 60.000000 0.159945 0.084372 -dPolE 6400.000000 60.000000 0.235756 0.084243 -dPolE 6410.000000 60.000000 0.137601 0.084513 -dPolE 6420.000000 60.000000 0.085332 0.084828 -dPolE 6430.000000 60.000000 0.166905 0.084651 -dPolE 6440.000000 60.000000 0.177600 0.084652 -dPolE 6450.000000 60.000000 0.225392 0.084712 -dPolE 6460.000000 60.000000 0.183263 0.084707 -dPolE 6470.000000 60.000000 0.168135 0.084692 -dPolE 6480.000000 60.000000 0.130577 0.084612 -dPolE 6490.000000 60.000000 0.082343 0.084552 -dPolE 6500.000000 60.000000 0.091108 0.084478 -dPolE 6510.000000 60.000000 0.017791 0.084591 -dPolE 6520.000000 60.000000 0.148927 0.084355 -dPolE 6530.000000 60.000000 0.193966 0.084378 -dPolE 6540.000000 60.000000 0.386095 0.084938 -dPolE 6550.000000 60.000000 0.161694 0.075539 -dPolE 6560.000000 60.000000 0.025184 0.053060 -dPolE 6570.000000 60.000000 0.074273 0.051177 -dPolE 6580.000000 60.000000 0.143584 0.069831 -dPolE 6590.000000 60.000000 0.153618 0.083617 -dPolE 6600.000000 60.000000 0.188167 0.084097 -dPolE 6610.000000 60.000000 0.212066 0.084132 -dPolE 6620.000000 60.000000 0.178455 0.083975 -dPolE 6630.000000 60.000000 0.200655 0.083825 -dPolE 6640.000000 60.000000 0.178088 0.083882 -dPolE 6650.000000 60.000000 0.054024 0.084031 -dPolE 6660.000000 60.000000 0.029878 0.084035 -dPolE 6670.000000 60.000000 -0.009503 0.084046 -dPolE 6680.000000 60.000000 0.102650 0.083850 -dPolE 6690.000000 60.000000 0.036005 0.083720 -dPolE 6700.000000 60.000000 0.140745 0.083372 -dPolE 6710.000000 60.000000 0.294385 0.083227 -dPolE 6720.000000 60.000000 0.167801 0.083262 -dPolE 6730.000000 60.000000 0.063641 0.083315 -dPolE 6740.000000 60.000000 0.187800 0.083287 -dPolE 6750.000000 60.000000 0.247689 0.083342 -dPolE 6760.000000 60.000000 0.265954 0.083321 -dPolE 6770.000000 60.000000 0.224049 0.083237 -dPolE 6780.000000 60.000000 0.178510 0.083116 -dPolE 6790.000000 60.000000 0.152835 0.082944 -dPolE 6800.000000 60.000000 0.259618 0.082757 -dPolE 6810.000000 60.000000 0.087262 0.082876 -dPolE 6820.000000 60.000000 -0.030939 0.083023 -dPolE 6830.000000 60.000000 0.182961 0.082778 -dPolE 6840.000000 60.000000 0.160519 0.082652 -dPolE 6850.000000 60.000000 0.171789 0.082284 -dPolE 6860.000000 60.000000 0.053327 0.082391 -dPolE 6870.000000 60.000000 0.218266 0.082467 -dPolE 6880.000000 60.000000 0.203370 0.082601 -dPolE 6890.000000 60.000000 0.061948 0.082750 -dPolE 6900.000000 60.000000 0.027185 0.082853 -dPolE 6910.000000 60.000000 0.090774 0.082785 -dPolE 6920.000000 60.000000 0.101120 0.082658 -dPolE 6930.000000 60.000000 0.079887 0.082619 -dPolE 6940.000000 60.000000 0.077907 0.082529 -dPolE 6950.000000 60.000000 0.200988 0.082496 -dPolE 6960.000000 60.000000 0.174280 0.082536 -dPolE 6970.000000 60.000000 0.140318 0.082446 -dPolE 6980.000000 60.000000 0.211945 0.082259 -dPolE 6990.000000 60.000000 0.199837 0.082325 -dPolE 7000.000000 60.000000 0.185053 0.082447 -dPolE 7010.000000 60.000000 0.191758 0.082589 -dPolE 7020.000000 60.000000 0.297614 0.082512 -dPolE 7030.000000 60.000000 0.284766 0.082483 -dPolE 7040.000000 60.000000 0.306752 0.082595 -dPolE 7050.000000 60.000000 0.049521 0.082996 -dPolE 7060.000000 60.000000 0.145427 0.082911 -dPolE 7070.000000 60.000000 0.244727 0.082507 -dPolE 7080.000000 60.000000 0.084332 0.082693 -dPolE 7090.000000 60.000000 -0.097994 0.083089 -dPolE 7100.000000 60.000000 0.251055 0.082905 -dPolE 7110.000000 60.000000 0.027463 0.083177 -dPolE 7120.000000 60.000000 -0.129593 0.083339 -dPolE 7130.000000 60.000000 0.084185 0.083107 -dPolE 7140.000000 60.000000 0.327654 0.082795 -dPolE 7150.000000 60.000000 0.341273 0.082711 -dPolE 7160.000000 60.000000 0.142004 0.082961 -dPolE 7170.000000 60.000000 -0.062626 0.083430 -dPolE 7180.000000 60.000000 0.139195 0.083212 -dPolE 7190.000000 60.000000 0.151693 0.083223 -dPolE 7200.000000 60.000000 0.178745 0.083325 -dPolE 7210.000000 60.000000 0.173650 0.083507 -dPolE 7220.000000 60.000000 0.040657 0.083645 -dPolE 7230.000000 60.000000 0.019403 0.083847 -dPolE 7240.000000 60.000000 0.201372 0.083624 -dPolE 7250.000000 60.000000 0.072531 0.083414 -dPolE 7260.000000 60.000000 0.143067 0.082984 -dPolE 7270.000000 60.000000 0.252953 0.083046 -dPolE 7280.000000 60.000000 0.089824 0.083310 -dPolE 7290.000000 60.000000 0.258245 0.083045 -dPolE 7300.000000 60.000000 0.180000 0.083217 -dPolE 7310.000000 60.000000 -0.050995 0.083369 -dPolE 7320.000000 60.000000 -0.026875 0.083493 -dPolE 7330.000000 60.000000 0.201200 0.083558 -dPolE 7340.000000 60.000000 0.201142 0.083482 -dPolE 7350.000000 60.000000 0.189028 0.083094 -dPolE 7360.000000 60.000000 0.227143 0.083089 -dPolE 7370.000000 60.000000 0.125067 0.083560 -dPolE 7380.000000 60.000000 0.062117 0.084185 -dPolE 7390.000000 60.000000 0.169948 0.084355 -dPolE 7400.000000 60.000000 0.128697 0.084085 -dPolE 7410.000000 60.000000 0.004881 0.084567 -dPolE 7420.000000 60.000000 -0.001962 0.085201 -dPolE 7430.000000 60.000000 -0.087260 0.085519 -dPolE 7440.000000 60.000000 0.229332 0.085251 -dPolE 7450.000000 60.000000 0.346598 0.085201 -dPolE 7460.000000 60.000000 0.034713 0.085610 -dPolE 7470.000000 60.000000 0.093028 0.085248 -dPolE 7480.000000 60.000000 -0.075545 0.085352 -dPolE 7490.000000 60.000000 0.047192 0.085584 -dPolE 7500.000000 60.000000 0.045580 0.085632 -dPolE 7510.000000 60.000000 0.063444 0.085593 -dPolE 7520.000000 60.000000 0.045224 0.086181 -dPolE 7530.000000 60.000000 0.078509 0.086415 -dPolE 7540.000000 60.000000 0.029237 0.086032 -dPolE 7550.000000 60.000000 0.099049 0.086124 -dPolE 7560.000000 60.000000 0.167421 0.086201 -dPolE 7570.000000 60.000000 0.256069 0.085982 -dPolE 7580.000000 60.000000 0.204231 0.085924 -dPolE 7590.000000 60.000000 0.354660 0.085754 -dPolE 7600.000000 60.000000 0.338245 0.086405 -dPolE 7610.000000 60.000000 0.176456 0.087235 -dPolE 7620.000000 60.000000 -0.010395 0.087946 -dPolE 7630.000000 60.000000 0.104322 0.087607 -dPolE 7640.000000 60.000000 0.124780 0.087466 -dPolE 7650.000000 60.000000 0.097981 0.087786 -dPolE 7660.000000 60.000000 0.217367 0.088230 -dPolE 7670.000000 60.000000 0.045520 0.089154 -dPolE 7680.000000 60.000000 0.242028 0.088808 -dPolE 7690.000000 60.000000 0.172157 0.087969 -dPolE 7700.000000 60.000000 -0.043741 0.087871 -dPolE 7710.000000 60.000000 0.006323 0.088474 -dPolE 7720.000000 60.000000 0.046395 0.089456 -dPolE 7730.000000 60.000000 0.232535 0.089902 -dPolE 7740.000000 60.000000 0.125717 0.090210 -dPolE 7750.000000 60.000000 0.154078 0.090568 -dPolE 7760.000000 60.000000 0.136593 0.091082 -dPolE 7770.000000 60.000000 0.111889 0.091427 -dPolE 7780.000000 60.000000 0.103868 0.091341 -dPolE 7790.000000 60.000000 0.135696 0.090767 -dPolE 7800.000000 60.000000 0.222373 0.090515 -dPolE 7810.000000 60.000000 -0.043707 0.091557 -dPolE 7820.000000 60.000000 0.237575 0.091676 -dPolE 7830.000000 60.000000 -0.174745 0.092256 -dPolE 7840.000000 60.000000 0.001376 0.092526 -dPolE 7850.000000 60.000000 -0.019454 0.093256 -dPolE 7860.000000 60.000000 0.205862 0.093405 -dPolE 7870.000000 60.000000 0.133786 0.093486 -dPolE 7880.000000 60.000000 -0.015592 0.093444 -dPolE 7890.000000 60.000000 0.105253 0.093520 -dPolE 7900.000000 60.000000 0.207354 0.093877 -dPolE 7910.000000 60.000000 0.147134 0.094078 -dPolE 7920.000000 60.000000 0.056141 0.094416 -dPolE 7930.000000 60.000000 -0.278233 0.094975 -dPolE 7940.000000 60.000000 0.067886 0.094360 -dPolE 7950.000000 60.000000 0.035684 0.094432 -dPolE 7960.000000 60.000000 0.037822 0.094986 -dPolE 7970.000000 60.000000 0.164968 0.095378 -dPolE 7980.000000 60.000000 -0.021381 0.095930 -dPolE 7990.000000 60.000000 0.021369 0.096104 -dPolE 8000.000000 60.000000 0.039115 0.096016 -dPolE 8010.000000 60.000000 0.200876 0.095700 -dPolE 8020.000000 60.000000 0.150668 0.096458 -dPolE 8030.000000 60.000000 -0.006049 0.097229 -dPolE 8040.000000 60.000000 -0.007201 0.097184 -dPolE 8050.000000 60.000000 0.000144 0.097011 -dPolE 8060.000000 60.000000 -0.171862 0.097543 -dPolE 8070.000000 60.000000 -0.055202 0.098291 -dPolE 8080.000000 60.000000 0.167659 0.098445 -dPolE 8090.000000 60.000000 -0.197306 0.098250 -dPolE 8100.000000 60.000000 -0.097093 0.098318 -dPolE 8110.000000 60.000000 0.064757 0.098664 -dPolE 8120.000000 60.000000 0.098449 0.099254 -dPolE 8130.000000 60.000000 0.065933 0.099234 -dPolE 8140.000000 60.000000 0.101959 0.098630 -dPolE 8150.000000 60.000000 0.020447 0.099024 -dPolE 8160.000000 60.000000 -0.125884 0.100039 -dPolE 8170.000000 60.000000 -0.038215 0.100350 -dPolE 8180.000000 60.000000 0.026441 0.100006 -dPolE 8190.000000 60.000000 0.103361 0.099840 -dPolE 8200.000000 60.000000 0.067673 0.100325 -dPolE 8210.000000 60.000000 0.188639 0.100619 -dPolE 8220.000000 60.000000 -0.079886 0.101264 -dPolE 8230.000000 60.000000 -0.019543 0.100896 -dPolE 8240.000000 60.000000 -0.323460 0.101195 -dPolE 8250.000000 60.000000 -0.062173 0.101587 -dPolE 8260.000000 60.000000 -0.019745 0.102158 -dPolE 8270.000000 60.000000 0.245653 0.101517 -dPolE 8280.000000 60.000000 0.070946 0.101339 -dPolE 8290.000000 60.000000 0.090145 0.101424 -dPolE 8300.000000 60.000000 0.060208 0.102416 -dPolE 8310.000000 60.000000 0.051519 0.103095 -dPolE 8320.000000 60.000000 -0.053318 0.102962 -dPolE 8330.000000 60.000000 0.082070 0.102195 -dPolE 8340.000000 60.000000 0.068009 0.102031 -dPolE 8350.000000 60.000000 -0.072490 0.102739 -dPolE 8360.000000 60.000000 -0.033713 0.103541 -dPolE 8370.000000 60.000000 0.074254 0.103155 -dPolE 8380.000000 60.000000 0.144977 0.102833 -dPolE 8390.000000 60.000000 0.202452 0.103031 -dPolE 8400.000000 60.000000 0.012331 0.104179 -dPolE 8410.000000 60.000000 0.200689 0.104367 -dPolE 8420.000000 60.000000 0.096518 0.104282 -dPolE 8430.000000 60.000000 -0.003237 0.104076 -dPolE 8440.000000 60.000000 -0.044137 0.104156 -dPolE 8450.000000 60.000000 -0.033162 0.104716 -dPolE 8460.000000 60.000000 -0.032217 0.105037 -dPolE 8470.000000 60.000000 0.009517 0.104752 -dPolE 8480.000000 60.000000 -0.010382 0.104356 -dPolE 8490.000000 60.000000 0.026214 0.105118 -dPolE 8500.000000 60.000000 0.004031 0.106978 -dPolE 8510.000000 60.000000 -0.007056 0.107609 -dPolE 8520.000000 60.000000 0.196748 0.105109 -dPolE 8530.000000 60.000000 0.115836 0.102858 -dPolE 8540.000000 60.000000 0.068295 0.102658 -dPolE 8550.000000 60.000000 0.208107 0.103915 -dPolE 8560.000000 60.000000 0.189266 0.105062 -dPolE 8570.000000 60.000000 0.122676 0.105475 -dPolE 8580.000000 60.000000 0.291119 0.104843 -dPolE 8590.000000 60.000000 0.163401 0.104726 -dPolE 8600.000000 60.000000 0.122800 0.105118 -dPolE 8610.000000 60.000000 0.203327 0.105899 -dPolE 8620.000000 60.000000 0.254595 0.106261 -dPolE 8630.000000 60.000000 0.100387 0.106450 -dPolE 8640.000000 60.000000 -0.143099 0.106129 -dPolE 8650.000000 60.000000 0.270118 0.105228 -dPolE 8660.000000 60.000000 0.211600 0.105826 -dPolE 8670.000000 60.000000 0.081225 0.106790 -dPolE 8680.000000 60.000000 0.156393 0.106803 -dPolE 8690.000000 60.000000 0.284784 0.106470 -dPolE 8700.000000 60.000000 -0.093330 0.106707 -dPolE 8710.000000 60.000000 -0.164886 0.107024 -dPolE 8720.000000 60.000000 -0.261765 0.107757 -dPolE 8730.000000 60.000000 0.125406 0.107223 -dPolE 8740.000000 60.000000 0.037430 0.106917 -dPolE 8750.000000 60.000000 0.174532 0.106488 -dPolE 8760.000000 60.000000 0.075162 0.106671 -dPolE 8770.000000 60.000000 -0.180023 0.107611 -dPolE 8780.000000 60.000000 -0.069375 0.108014 -dPolE 8790.000000 60.000000 -0.141326 0.107933 -dPolE 8800.000000 60.000000 -0.156172 0.107840 -dPolE 8810.000000 60.000000 -0.154611 0.108276 -dPolE 8820.000000 60.000000 0.023752 0.108463 -dPolE 8830.000000 60.000000 -0.266025 0.109257 -dPolE 8840.000000 60.000000 -0.063078 0.109034 -dPolE 8850.000000 60.000000 0.004317 0.109190 -dPolE 8860.000000 60.000000 0.198353 0.108699 -dPolE 8870.000000 60.000000 0.202025 0.108369 -dPolE 8880.000000 60.000000 0.115495 0.108537 -dPolE 8890.000000 60.000000 0.291885 0.108811 -dPolE 8900.000000 60.000000 0.071418 0.109478 -dPolE 8910.000000 60.000000 0.148548 0.109585 -dPolE 8920.000000 60.000000 0.017649 0.109749 -dPolE 8930.000000 60.000000 0.140426 0.109569 -dPolE 8940.000000 60.000000 0.074536 0.109818 -dPolE 8950.000000 60.000000 0.054627 0.110177 -dPolE 8960.000000 60.000000 0.124845 0.110413 -dPolE 8970.000000 60.000000 -0.075502 0.110925 -dPolE 8980.000000 60.000000 0.072488 0.110964 -dPolE 8990.000000 60.000000 0.130981 0.110702 -dPolE 9000.000000 60.000000 0.281172 0.110894 -dPolE 9010.000000 60.000000 0.076178 0.111510 -dPolE 9020.000000 60.000000 -0.020340 0.111776 -dPolE 9030.000000 60.000000 0.102377 0.112034 -dPolE 9040.000000 60.000000 0.084048 0.112130 -dPolE 9050.000000 60.000000 -0.022555 0.112106 -dPolE 9060.000000 60.000000 0.067964 0.112343 -dPolE 9070.000000 60.000000 0.070370 0.112772 -dPolE 9080.000000 60.000000 0.198317 0.113183 -dPolE 9090.000000 60.000000 0.120366 0.113825 -dPolE 9100.000000 60.000000 -0.114567 0.114205 -dPolE 9110.000000 60.000000 0.024088 0.113704 -dPolE 9120.000000 60.000000 0.114906 0.113853 -dPolE 9130.000000 60.000000 0.182992 0.114255 -dPolE 9140.000000 60.000000 0.029897 0.115341 -dPolE 9150.000000 60.000000 -0.125045 0.115547 -dPolE 9160.000000 60.000000 -0.174434 0.115192 -dPolE 9170.000000 60.000000 0.049018 0.114665 -dPolE 9180.000000 60.000000 0.208448 0.114584 -dPolE 9190.000000 60.000000 0.044254 0.115449 -dPolE 9200.000000 60.000000 0.031514 0.116349 -dPolE 9210.000000 60.000000 0.061862 0.116778 -dPolE 9220.000000 60.000000 -0.250280 0.117910 -dPolE 9230.000000 60.000000 -0.043079 0.117845 -dPolE 9240.000000 60.000000 -0.140478 0.118150 -dPolE 9250.000000 60.000000 0.050646 0.118089 -dPolE 9260.000000 60.000000 0.046491 0.118596 -dPolE 9270.000000 60.000000 0.076549 0.119207 -dPolE 9280.000000 60.000000 -0.012797 0.119917 -dPolE 9290.000000 60.000000 -0.055536 0.120313 -dPolE 9300.000000 60.000000 0.023674 0.120407 -dPolE 9310.000000 60.000000 0.039636 0.120626 -dPolE 9320.000000 60.000000 -0.105306 0.121003 -dPolE 9330.000000 60.000000 0.016215 0.121262 -dPolE 9340.000000 60.000000 0.089493 0.121605 -dPolE 9350.000000 60.000000 0.197735 0.122196 -dPolE 9360.000000 60.000000 0.228468 0.122872 -dPolE 9370.000000 60.000000 0.156132 0.123387 -dPolE 9380.000000 60.000000 0.058850 0.123650 -dPolE 9390.000000 60.000000 0.257087 0.123568 -dPolE 9400.000000 60.000000 -0.042116 0.124992 -dPolE 9410.000000 60.000000 -0.106206 0.125761 -dPolE 9420.000000 60.000000 0.115229 0.126118 -dPolE 9430.000000 60.000000 0.047629 0.126809 -dPolE 9440.000000 60.000000 0.124309 0.126843 -dPolE 9450.000000 60.000000 0.152086 0.127261 -dPolE 9460.000000 60.000000 0.289476 0.127642 -dPolE 9470.000000 60.000000 0.157019 0.128621 -dPolE 9480.000000 60.000000 0.079362 0.129422 -dPolE 9490.000000 60.000000 -0.051359 0.130428 -dPolE 9500.000000 60.000000 0.078019 0.130779 -dPolE 9510.000000 60.000000 -0.421694 0.132152 -dPolE 9520.000000 60.000000 -0.361005 0.132452 -dPolE 9530.000000 60.000000 0.348417 0.132006 -dPolE 9540.000000 60.000000 -0.157572 0.133928 -dPolE 9550.000000 60.000000 0.051605 0.134605 -dPolE 9560.000000 60.000000 -0.044595 0.135022 -dPolE 9570.000000 60.000000 0.189181 0.134891 -dPolE 9580.000000 60.000000 0.065294 0.135403 -dPolE 9590.000000 60.000000 -0.100555 0.136280 -dPolE 9600.000000 60.000000 -0.014758 0.136830 -dPolE 9610.000000 60.000000 -0.151899 0.137603 -dPolE 9620.000000 60.000000 -0.204871 0.138527 -dPolE 9630.000000 60.000000 0.091369 0.138686 -dPolE 9640.000000 60.000000 0.130819 0.139145 -dPolE 9650.000000 60.000000 0.050353 0.140042 -dPolE 9660.000000 60.000000 0.000318 0.140604 -dPolE 9670.000000 60.000000 0.002702 0.141725 -dPolE 9680.000000 60.000000 0.140764 0.142606 -dPolE 9690.000000 60.000000 -0.098117 0.143705 -dPolE 9700.000000 60.000000 -0.098137 0.144227 -dPolE 9710.000000 60.000000 0.098880 0.144772 -dPolE 9720.000000 60.000000 0.137793 0.145622 -dPolE 9730.000000 60.000000 -0.034847 0.146951 -dPolE 9740.000000 60.000000 -0.107491 0.148091 -dPolE 9750.000000 60.000000 0.461376 0.147500 -dPolE 9760.000000 60.000000 0.547559 0.148233 -dPolE 9770.000000 60.000000 0.047748 0.150256 -dPolE 9780.000000 60.000000 0.076258 0.150961 -dPolE 9790.000000 60.000000 -0.183638 0.152436 -dPolE 9800.000000 60.000000 0.160299 0.152895 -dPolE 9810.000000 60.000000 -0.016715 0.154572 -dPolE 9820.000000 60.000000 -0.127642 0.156178 -dPolE 9830.000000 60.000000 -0.110777 0.156781 -dPolE 9840.000000 60.000000 -0.351283 0.158207 -dPolE 9850.000000 60.000000 0.146068 0.158417 -dPolE 9860.000000 60.000000 -0.030010 0.159784 -dPolE 9870.000000 60.000000 0.314209 0.160613 -dPolE 9880.000000 60.000000 0.213414 0.162150 -dPolE 9890.000000 60.000000 0.659047 0.162299 -dPolE 9900.000000 60.000000 0.124145 0.164228 -dPolE 9910.000000 60.000000 0.315500 0.165022 -dPolE 9920.000000 60.000000 -0.211468 0.167796 -dPolE 9930.000000 60.000000 -0.376168 0.170062 -dPolE 9940.000000 60.000000 0.001004 0.170754 -dPolE 9950.000000 60.000000 0.155815 0.171606 -dPolE 9960.000000 60.000000 0.360583 0.172823 -dPolE 9970.000000 60.000000 -0.071734 0.175018 -dPolE 9980.000000 60.000000 0.133678 0.176588 -dPolE 9990.000000 60.000000 0.249574 0.178191 -dPolE 10000.000000 60.000000 -0.090853 0.180845 -dPolE 10025.000000 60.000000 -0.028233 0.088712 -dPolE 10050.000000 60.000000 0.014940 0.086575 -dPolE 10075.000000 60.000000 0.015081 0.084023 -dPolE 10100.000000 60.000000 0.030145 0.082046 -dPolE 10125.000000 60.000000 0.046799 0.080320 -dPolE 10150.000000 60.000000 0.012352 0.078248 -dPolE 10175.000000 60.000000 0.022360 0.076375 -dPolE 10200.000000 60.000000 0.076728 0.074683 -dPolE 10225.000000 60.000000 -0.007871 0.072883 -dPolE 10250.000000 60.000000 -0.042962 0.071215 -dPolE 10275.000000 60.000000 0.074815 0.069777 -dPolE 10300.000000 60.000000 0.127414 0.068002 -dPolE 10325.000000 60.000000 0.141427 0.066187 -dPolE 10350.000000 60.000000 0.064941 0.064799 -dPolE 10375.000000 60.000000 -0.021832 0.063494 -dPolE 10400.000000 60.000000 -0.117755 0.062271 -dPolE 10425.000000 60.000000 0.017583 0.060935 -dPolE 10450.000000 60.000000 0.104446 0.059669 -dPolE 10475.000000 60.000000 0.046771 0.058525 -dPolE 10500.000000 60.000000 0.062471 0.057412 -dPolE 10525.000000 60.000000 0.085603 0.056355 -dPolE 10550.000000 60.000000 -0.016106 0.055464 -dPolE 10575.000000 60.000000 -0.035527 0.054614 -dPolE 10600.000000 60.000000 0.012084 0.053798 -dPolE 10625.000000 60.000000 0.008438 0.052731 -dPolE 10650.000000 60.000000 -0.010711 0.051807 -dPolE 10675.000000 60.000000 -0.052322 0.051109 -dPolE 10700.000000 60.000000 0.010189 0.050147 -dPolE 10725.000000 60.000000 0.095516 0.049207 -dPolE 10750.000000 60.000000 0.158023 0.048582 -dPolE 10775.000000 60.000000 0.124863 0.047736 -dPolE 10800.000000 60.000000 0.031998 0.046763 -dPolE 10825.000000 60.000000 0.023401 0.046072 -dPolE 10850.000000 60.000000 0.013085 0.045335 -dPolE 10875.000000 60.000000 0.000451 0.044531 -dPolE 10900.000000 60.000000 0.015825 0.043918 -dPolE 10925.000000 60.000000 0.022707 0.043298 -dPolE 10950.000000 60.000000 -0.008086 0.042547 -dPolE 10975.000000 60.000000 0.036824 0.041929 -dPolE 11000.000000 60.000000 0.102091 0.041390 -dPolE 11025.000000 60.000000 0.030784 0.040955 -dPolE 11050.000000 60.000000 0.014113 0.040557 -dPolE 11075.000000 60.000000 0.047790 0.040194 -dPolE 11100.000000 60.000000 -0.064074 0.039653 -dPolE 11125.000000 60.000000 -0.107266 0.039206 -dPolE 11150.000000 60.000000 -0.009972 0.038937 -dPolE 11175.000000 60.000000 0.053561 0.038586 -dPolE 11200.000000 60.000000 0.092227 0.038255 -dPolE 11225.000000 60.000000 0.071701 0.038084 -dPolE 11250.000000 60.000000 0.030383 0.037836 -dPolE 11275.000000 60.000000 -0.018371 0.037552 -dPolE 11300.000000 60.000000 0.046223 0.037474 -dPolE 11325.000000 60.000000 0.084498 0.037307 -dPolE 11350.000000 60.000000 0.092815 0.037041 -dPolE 11375.000000 60.000000 0.049560 0.036926 -dPolE 11400.000000 60.000000 0.019528 0.036801 -dPolE 11425.000000 60.000000 0.030803 0.036614 -dPolE 11450.000000 60.000000 0.022552 0.036438 -dPolE 11475.000000 60.000000 0.002368 0.036252 -dPolE 11500.000000 60.000000 -0.043325 0.035994 -dPolE 11525.000000 60.000000 -0.004360 0.035731 -dPolE 11550.000000 60.000000 0.086785 0.035467 -dPolE 11575.000000 60.000000 0.069320 0.035322 -dPolE 11600.000000 60.000000 0.062252 0.035066 -dPolE 11625.000000 60.000000 0.067226 0.034682 -dPolE 11650.000000 60.000000 0.019173 0.034492 -dPolE 11675.000000 60.000000 -0.005610 0.034281 -dPolE 11700.000000 60.000000 0.031190 0.033974 -dPolE 11725.000000 60.000000 0.025594 0.033786 -dPolE 11750.000000 60.000000 0.019437 0.033598 -dPolE 11775.000000 60.000000 0.069628 0.033240 -dPolE 11800.000000 60.000000 0.087318 0.032927 -dPolE 11825.000000 60.000000 0.087156 0.032644 -dPolE 11850.000000 60.000000 0.113966 0.032358 -dPolE 11875.000000 60.000000 0.084753 0.032111 -dPolE 11900.000000 60.000000 -0.001340 0.031900 -dPolE 11925.000000 60.000000 0.014821 0.031602 -dPolE 11950.000000 60.000000 0.030316 0.031338 -dPolE 11975.000000 60.000000 0.031007 0.031144 -dPolE 12000.000000 60.000000 0.039868 0.030933 -dPolE 12025.000000 60.000000 0.037720 0.030722 -dPolE 12050.000000 60.000000 -0.005148 0.030522 -dPolE 12075.000000 60.000000 0.029793 0.030361 -dPolE 12100.000000 60.000000 0.088235 0.030213 -dPolE 12125.000000 60.000000 0.055161 0.030027 -dPolE 12150.000000 60.000000 0.022252 0.029853 -dPolE 12175.000000 60.000000 -0.010238 0.029688 -dPolE 12200.000000 60.000000 0.056419 0.029598 -dPolE 12225.000000 60.000000 0.091147 0.029499 -dPolE 12250.000000 60.000000 0.086804 0.029388 -dPolE 12275.000000 60.000000 0.070925 0.029359 -dPolE 12300.000000 60.000000 0.066228 0.029357 -dPolE 12325.000000 60.000000 0.086676 0.029392 -dPolE 12350.000000 60.000000 0.094486 0.029312 -dPolE 12375.000000 60.000000 0.093163 0.029264 -dPolE 12400.000000 60.000000 0.072533 0.029443 -dPolE 12425.000000 60.000000 0.075006 0.029376 -dPolE 12450.000000 60.000000 0.091089 0.029224 -dPolE 12475.000000 60.000000 0.123895 0.029328 -dPolE 12500.000000 60.000000 0.074028 0.029253 -dPolE 12525.000000 60.000000 -0.033483 0.029044 -dPolE 12550.000000 60.000000 0.109077 0.028908 -dPolE 12575.000000 60.000000 0.144413 0.028782 -dPolE 12600.000000 60.000000 0.058437 0.028667 -dPolE 12625.000000 60.000000 0.075966 0.028589 -dPolE 12650.000000 60.000000 0.094696 0.028477 -dPolE 12675.000000 60.000000 0.099515 0.028305 -dPolE 12700.000000 60.000000 0.111867 0.028108 -dPolE 12725.000000 60.000000 0.105543 0.027971 -dPolE 12750.000000 60.000000 0.045552 0.028005 -dPolE 12775.000000 60.000000 0.094243 0.027830 -dPolE 12800.000000 60.000000 0.157057 0.027607 -dPolE 12825.000000 60.000000 0.105630 0.027504 -dPolE 12850.000000 60.000000 0.066455 0.027389 -dPolE 12875.000000 60.000000 0.035887 0.027270 -dPolE 12900.000000 60.000000 0.020410 0.027179 -dPolE 12925.000000 60.000000 0.038229 0.027030 -dPolE 12950.000000 60.000000 0.081856 0.026836 -dPolE 12975.000000 60.000000 0.032553 0.026781 -dPolE 13000.000000 60.000000 0.050015 0.026686 -dPolE 13025.000000 60.000000 0.142408 0.026544 -dPolE 13050.000000 60.000000 0.133255 0.026411 -dPolE 13075.000000 60.000000 0.109717 0.026308 -dPolE 13100.000000 60.000000 0.075806 0.026250 -dPolE 13125.000000 60.000000 0.069058 0.026184 -dPolE 13150.000000 60.000000 0.072042 0.026109 -dPolE 13175.000000 60.000000 0.085737 0.026015 -dPolE 13200.000000 60.000000 0.057886 0.025955 -dPolE 13225.000000 60.000000 0.042949 0.025919 -dPolE 13250.000000 60.000000 0.108315 0.025928 -dPolE 13275.000000 60.000000 0.092707 0.025912 -dPolE 13300.000000 60.000000 0.051419 0.025897 -dPolE 13325.000000 60.000000 0.054616 0.025934 -dPolE 13350.000000 60.000000 0.042643 0.025981 -dPolE 13375.000000 60.000000 0.027771 0.026028 -dPolE 13400.000000 60.000000 0.067514 0.026023 -dPolE 13425.000000 60.000000 0.070408 0.026081 -dPolE 13450.000000 60.000000 0.046387 0.026191 -dPolE 13475.000000 60.000000 0.066872 0.026340 -dPolE 13500.000000 60.000000 0.069183 0.026514 -dPolE 13525.000000 60.000000 0.053115 0.026712 -dPolE 13550.000000 60.000000 0.085845 0.027053 -dPolE 13575.000000 60.000000 0.102159 0.027420 -dPolE 13600.000000 60.000000 0.095144 0.027814 -dPolE 13625.000000 60.000000 0.075833 0.028055 -dPolE 13650.000000 60.000000 0.055061 0.028299 -dPolE 13675.000000 60.000000 0.033624 0.028574 -dPolE 13700.000000 60.000000 0.048691 0.029233 -dPolE 13725.000000 60.000000 0.057255 0.030363 -dPolE 13750.000000 60.000000 0.037050 0.032445 -dPolE 13775.000000 60.000000 0.038123 0.035376 -dPolE 13800.000000 60.000000 0.041390 0.038457 -dPolE 13825.000000 60.000000 0.036030 0.040331 -dPolE 13850.000000 60.000000 0.065329 0.039996 -dPolE 13875.000000 60.000000 0.078271 0.038814 -dPolE 13900.000000 60.000000 0.011828 0.037206 -dPolE 13925.000000 60.000000 0.009903 0.036180 -dPolE 13950.000000 60.000000 0.036891 0.035197 -dPolE 13975.000000 60.000000 0.084147 0.033542 -dPolE 14000.000000 60.000000 0.101716 0.032550 -dPolE 14025.000000 60.000000 0.101503 0.031837 -dPolE 14050.000000 60.000000 0.076020 0.031055 -dPolE 14075.000000 60.000000 0.085887 0.030504 -dPolE 14100.000000 60.000000 0.100080 0.030066 -dPolE 14125.000000 60.000000 0.005614 0.029531 -dPolE 14150.000000 60.000000 -0.006844 0.029157 -dPolE 14175.000000 60.000000 0.033111 0.028881 -dPolE 14200.000000 60.000000 0.073260 0.028565 -dPolE 14225.000000 60.000000 0.077547 0.028376 -dPolE 14250.000000 60.000000 0.056470 0.028275 -dPolE 14275.000000 60.000000 0.060366 0.028095 -dPolE 14300.000000 60.000000 0.077886 0.027963 -dPolE 14325.000000 60.000000 0.105138 0.027872 -dPolE 14350.000000 60.000000 0.064205 0.027812 -dPolE 14375.000000 60.000000 0.079985 0.027723 -dPolE 14400.000000 60.000000 0.149029 0.027607 -dPolE 14425.000000 60.000000 0.108470 0.027645 -dPolE 14450.000000 60.000000 0.099185 0.027600 -dPolE 14475.000000 60.000000 0.122440 0.027466 -dPolE 14500.000000 60.000000 0.094435 0.027449 -dPolE 14525.000000 60.000000 0.084937 0.027472 -dPolE 14550.000000 60.000000 0.097289 0.027536 -dPolE 14575.000000 60.000000 0.131121 0.027418 -dPolE 14600.000000 60.000000 0.117873 0.027416 -dPolE 14625.000000 60.000000 0.046516 0.027564 -dPolE 14650.000000 60.000000 0.072603 0.027477 -dPolE 14675.000000 60.000000 0.067111 0.027492 -dPolE 14700.000000 60.000000 0.013863 0.027656 -dPolE 14725.000000 60.000000 0.043866 0.027568 -dPolE 14750.000000 60.000000 0.084915 0.027553 -dPolE 14775.000000 60.000000 0.133137 0.027657 -dPolE 14800.000000 60.000000 0.097319 0.027657 -dPolE 14825.000000 60.000000 0.097904 0.027652 -dPolE 14850.000000 60.000000 0.157144 0.027649 -dPolE 14875.000000 60.000000 0.113022 0.027706 -dPolE 14900.000000 60.000000 0.096779 0.027787 -dPolE 14925.000000 60.000000 0.131541 0.027897 -dPolE 14950.000000 60.000000 0.070906 0.027905 -dPolE 14975.000000 60.000000 0.077865 0.027967 -dPolE 15000.000000 60.000000 0.190921 0.028116 -dPolE 15025.000000 60.000000 0.119457 0.028096 -dPolE 15050.000000 60.000000 0.107327 0.028133 -dPolE 15075.000000 60.000000 0.198812 0.028270 -dPolE 15100.000000 60.000000 0.138324 0.028275 -dPolE 15125.000000 60.000000 0.118994 0.028293 -dPolE 15150.000000 60.000000 0.171684 0.028343 -dPolE 15175.000000 60.000000 0.128593 0.028414 -dPolE 15200.000000 60.000000 0.113702 0.028507 -dPolE 15225.000000 60.000000 0.144703 0.028627 -dPolE 15250.000000 60.000000 0.100057 0.028697 -dPolE 15275.000000 60.000000 0.098524 0.028796 -dPolE 15300.000000 60.000000 0.156220 0.028937 -dPolE 15325.000000 60.000000 0.080271 0.028991 -dPolE 15350.000000 60.000000 0.070001 0.029069 -dPolE 15375.000000 60.000000 0.143262 0.029179 -dPolE 15400.000000 60.000000 0.117103 0.029245 -dPolE 15425.000000 60.000000 0.129355 0.029369 -dPolE 15450.000000 60.000000 0.186493 0.029560 -dPolE 15475.000000 60.000000 0.080729 0.029673 -dPolE 15500.000000 60.000000 0.051417 0.029791 -dPolE 15525.000000 60.000000 0.097866 0.029913 -dPolE 15550.000000 60.000000 0.072962 0.029906 -dPolE 15575.000000 60.000000 0.076957 0.030006 -dPolE 15600.000000 60.000000 0.105694 0.030198 -dPolE 15625.000000 60.000000 0.108342 0.030271 -dPolE 15650.000000 60.000000 0.146007 0.030389 -dPolE 15675.000000 60.000000 0.204098 0.030536 -dPolE 15700.000000 60.000000 0.161623 0.030606 -dPolE 15725.000000 60.000000 0.120567 0.030744 -dPolE 15750.000000 60.000000 0.087784 0.030925 -dPolE 15775.000000 60.000000 0.120695 0.031049 -dPolE 15800.000000 60.000000 0.166283 0.031162 -dPolE 15825.000000 60.000000 0.201194 0.031288 -dPolE 15850.000000 60.000000 0.121909 0.031527 -dPolE 15875.000000 60.000000 0.102598 0.031672 -dPolE 15900.000000 60.000000 0.102780 0.031787 -dPolE 15925.000000 60.000000 0.048238 0.031993 -dPolE 15950.000000 60.000000 0.082709 0.032185 -dPolE 15975.000000 60.000000 0.140983 0.032368 -dPolE 16000.000000 60.000000 0.146004 0.032537 -dPolE 16025.000000 60.000000 0.126116 0.032688 -dPolE 16050.000000 60.000000 0.107963 0.032860 -dPolE 16075.000000 60.000000 0.119102 0.033108 -dPolE 16100.000000 60.000000 0.143339 0.033310 -dPolE 16125.000000 60.000000 0.145674 0.033497 -dPolE 16150.000000 60.000000 0.092035 0.033682 -dPolE 16175.000000 60.000000 0.102580 0.033954 -dPolE 16200.000000 60.000000 0.100219 0.034228 -dPolE 16225.000000 60.000000 0.053519 0.034473 -dPolE 16250.000000 60.000000 0.089997 0.034692 -dPolE 16275.000000 60.000000 0.100000 0.034953 -dPolE 16300.000000 60.000000 0.058810 0.035281 -dPolE 16325.000000 60.000000 0.077632 0.035555 -dPolE 16350.000000 60.000000 0.107098 0.035873 -dPolE 16375.000000 60.000000 0.144228 0.036246 -dPolE 16400.000000 60.000000 0.103292 0.036522 -dPolE 16425.000000 60.000000 0.071317 0.036991 -dPolE 16450.000000 60.000000 0.050178 0.037606 -dPolE 16475.000000 60.000000 0.073654 0.037844 -dPolE 16500.000000 60.000000 0.036698 0.038411 -dPolE 16525.000000 60.000000 -0.026800 0.039193 -dPolE 16550.000000 60.000000 0.007888 0.039853 -dPolE 16575.000000 60.000000 0.016790 0.040873 -dPolE 16600.000000 60.000000 0.017287 0.042136 -dPolE 16625.000000 60.000000 0.038199 0.043555 -dPolE 16650.000000 60.000000 0.014248 0.046034 -dPolE 16675.000000 60.000000 -0.026598 0.049294 -dPolE 16700.000000 60.000000 -0.060107 0.053282 -dPolE 16725.000000 60.000000 -0.048133 0.059218 -dPolE 16750.000000 60.000000 -0.058413 0.066913 -dPolE 16775.000000 60.000000 -0.151986 0.076545 -dPolE 16800.000000 60.000000 -0.205978 0.089329 -dPolE 16825.000000 60.000000 -0.249816 0.104967 -dPolE 16850.000000 60.000000 -0.273560 0.122713 -dPolE 16875.000000 60.000000 -0.074837 0.143036 -dPolE 16900.000000 60.000000 0.029456 0.167441 -dPolE 16925.000000 60.000000 -0.034664 0.195963 -dPolE 16950.000000 60.000000 -0.265935 0.227794 -dPolE 16975.000000 60.000000 -0.064700 0.261015 -dPolE 17000.000000 60.000000 0.360135 0.296375 -dPolE 1930.000000 70.000000 1.591587 0.163632 -dPolE 1940.000000 70.000000 1.486767 0.149081 -dPolE 1950.000000 70.000000 1.333902 0.137545 -dPolE 1960.000000 70.000000 1.070788 0.130336 -dPolE 1970.000000 70.000000 1.077825 0.123873 -dPolE 1980.000000 70.000000 0.958066 0.118861 -dPolE 1990.000000 70.000000 1.018832 0.114831 -dPolE 2000.000000 70.000000 1.112433 0.111053 -dPolE 2010.000000 70.000000 1.441479 0.107226 -dPolE 2020.000000 70.000000 1.533061 0.103793 -dPolE 2030.000000 70.000000 1.371384 0.100762 -dPolE 2040.000000 70.000000 1.572653 0.097563 -dPolE 2050.000000 70.000000 1.712360 0.094545 -dPolE 2060.000000 70.000000 1.548488 0.091897 -dPolE 2070.000000 70.000000 1.635258 0.089105 -dPolE 2080.000000 70.000000 1.577953 0.086613 -dPolE 2090.000000 70.000000 1.249338 0.084484 -dPolE 2100.000000 70.000000 1.343151 0.082142 -dPolE 2110.000000 70.000000 1.241845 0.080339 -dPolE 2120.000000 70.000000 1.026773 0.078736 -dPolE 2130.000000 70.000000 1.197023 0.076841 -dPolE 2140.000000 70.000000 1.211303 0.075314 -dPolE 2150.000000 70.000000 1.088457 0.074034 -dPolE 2160.000000 70.000000 0.980392 0.072874 -dPolE 2170.000000 70.000000 0.992837 0.071712 -dPolE 2180.000000 70.000000 1.047034 0.070482 -dPolE 2190.000000 70.000000 0.978452 0.069300 -dPolE 2200.000000 70.000000 0.953325 0.068212 -dPolE 2210.000000 70.000000 0.926915 0.067102 -dPolE 2220.000000 70.000000 0.947736 0.065975 -dPolE 2230.000000 70.000000 0.856304 0.065026 -dPolE 2240.000000 70.000000 0.853816 0.064099 -dPolE 2250.000000 70.000000 0.744544 0.063306 -dPolE 2260.000000 70.000000 0.502034 0.062655 -dPolE 2270.000000 70.000000 0.523373 0.061832 -dPolE 2280.000000 70.000000 0.593421 0.060961 -dPolE 2290.000000 70.000000 0.585471 0.060155 -dPolE 2300.000000 70.000000 0.537474 0.059440 -dPolE 2310.000000 70.000000 0.602143 0.058697 -dPolE 2320.000000 70.000000 0.624241 0.058015 -dPolE 2330.000000 70.000000 0.649316 0.057387 -dPolE 2340.000000 70.000000 0.666461 0.056794 -dPolE 2350.000000 70.000000 0.575648 0.056315 -dPolE 2360.000000 70.000000 0.615345 0.055808 -dPolE 2370.000000 70.000000 0.778876 0.055239 -dPolE 2380.000000 70.000000 0.659276 0.054874 -dPolE 2390.000000 70.000000 0.561927 0.054608 -dPolE 2400.000000 70.000000 0.546119 0.054332 -dPolE 2410.000000 70.000000 0.503256 0.054099 -dPolE 2420.000000 70.000000 0.574871 0.053822 -dPolE 2430.000000 70.000000 0.547889 0.053707 -dPolE 2440.000000 70.000000 0.585506 0.053562 -dPolE 2450.000000 70.000000 0.486071 0.053492 -dPolE 2460.000000 70.000000 0.474114 0.053428 -dPolE 2470.000000 70.000000 0.468010 0.053403 -dPolE 2480.000000 70.000000 0.516758 0.053355 -dPolE 2490.000000 70.000000 0.491045 0.053362 -dPolE 2500.000000 70.000000 0.470022 0.053443 -dPolE 2510.000000 70.000000 0.418927 0.053587 -dPolE 2520.000000 70.000000 0.310533 0.053697 -dPolE 2530.000000 70.000000 0.453910 0.053747 -dPolE 2540.000000 70.000000 0.442638 0.053992 -dPolE 2550.000000 70.000000 0.362023 0.054257 -dPolE 2560.000000 70.000000 0.481390 0.054475 -dPolE 2570.000000 70.000000 0.501635 0.054785 -dPolE 2580.000000 70.000000 0.401676 0.055197 -dPolE 2590.000000 70.000000 0.413336 0.055582 -dPolE 2600.000000 70.000000 0.478697 0.055979 -dPolE 2610.000000 70.000000 0.551623 0.056384 -dPolE 2620.000000 70.000000 0.523741 0.056888 -dPolE 2630.000000 70.000000 0.506789 0.057423 -dPolE 2640.000000 70.000000 0.441520 0.058041 -dPolE 2650.000000 70.000000 0.526312 0.058598 -dPolE 2660.000000 70.000000 0.467841 0.059331 -dPolE 2670.000000 70.000000 0.376179 0.060075 -dPolE 2680.000000 70.000000 0.405992 0.060706 -dPolE 2690.000000 70.000000 0.445450 0.061359 -dPolE 2700.000000 70.000000 0.344465 0.062138 -dPolE 2710.000000 70.000000 0.440512 0.062826 -dPolE 2720.000000 70.000000 0.472100 0.063572 -dPolE 2730.000000 70.000000 0.481494 0.064279 -dPolE 2740.000000 70.000000 0.511283 0.064988 -dPolE 2750.000000 70.000000 0.483124 0.065736 -dPolE 2760.000000 70.000000 0.417591 0.066540 -dPolE 2770.000000 70.000000 0.483424 0.067376 -dPolE 2780.000000 70.000000 0.473146 0.067998 -dPolE 2790.000000 70.000000 0.497708 0.068508 -dPolE 2800.000000 70.000000 0.487471 0.069131 -dPolE 2810.000000 70.000000 0.417615 0.069879 -dPolE 2820.000000 70.000000 0.469086 0.070543 -dPolE 2830.000000 70.000000 0.373708 0.071337 -dPolE 2840.000000 70.000000 0.293579 0.072053 -dPolE 2850.000000 70.000000 0.234880 0.072905 -dPolE 2860.000000 70.000000 0.264087 0.073724 -dPolE 2870.000000 70.000000 0.357074 0.074382 -dPolE 2880.000000 70.000000 0.288403 0.075299 -dPolE 2890.000000 70.000000 0.259216 0.076310 -dPolE 2900.000000 70.000000 0.346604 0.077206 -dPolE 2910.000000 70.000000 0.285471 0.078238 -dPolE 2920.000000 70.000000 0.454006 0.079073 -dPolE 2930.000000 70.000000 0.594017 0.079865 -dPolE 2940.000000 70.000000 0.452853 0.080861 -dPolE 2950.000000 70.000000 0.267983 0.081938 -dPolE 2960.000000 70.000000 0.384104 0.082753 -dPolE 2970.000000 70.000000 0.445833 0.083538 -dPolE 2980.000000 70.000000 0.368231 0.084520 -dPolE 2990.000000 70.000000 0.585267 0.085271 -dPolE 3000.000000 70.000000 0.416431 0.086378 -dPolE 3010.000000 70.000000 0.244172 0.087379 -dPolE 3020.000000 70.000000 0.369141 0.088228 -dPolE 3030.000000 70.000000 0.541842 0.089164 -dPolE 3040.000000 70.000000 0.497276 0.090252 -dPolE 3050.000000 70.000000 0.456443 0.091413 -dPolE 3060.000000 70.000000 0.462562 0.092541 -dPolE 3070.000000 70.000000 0.272143 0.093839 -dPolE 3080.000000 70.000000 0.164843 0.095072 -dPolE 3090.000000 70.000000 0.072588 0.096379 -dPolE 3100.000000 70.000000 0.107470 0.097404 -dPolE 3110.000000 70.000000 0.334936 0.098147 -dPolE 3120.000000 70.000000 0.242577 0.099484 -dPolE 3130.000000 70.000000 0.268817 0.100398 -dPolE 3140.000000 70.000000 0.212974 0.101480 -dPolE 3150.000000 70.000000 0.123949 0.102755 -dPolE 3160.000000 70.000000 0.161464 0.103805 -dPolE 3170.000000 70.000000 0.120928 0.104941 -dPolE 3180.000000 70.000000 0.183557 0.105854 -dPolE 3190.000000 70.000000 0.045423 0.107272 -dPolE 3200.000000 70.000000 -0.028754 0.108411 -dPolE 3210.000000 70.000000 0.202884 0.109293 -dPolE 3220.000000 70.000000 0.554721 0.110130 -dPolE 3230.000000 70.000000 0.276150 0.111556 -dPolE 3240.000000 70.000000 -0.021296 0.112998 -dPolE 3250.000000 70.000000 -0.001080 0.114270 -dPolE 3260.000000 70.000000 0.138860 0.116148 -dPolE 3270.000000 70.000000 0.196426 0.118527 -dPolE 3280.000000 70.000000 0.141591 0.120980 -dPolE 3290.000000 70.000000 0.047916 0.122908 -dPolE 3300.000000 70.000000 -0.096728 0.124789 -dPolE 3310.000000 70.000000 -0.127447 0.126690 -dPolE 3320.000000 70.000000 -0.060404 0.127932 -dPolE 3330.000000 70.000000 -0.056580 0.128914 -dPolE 3340.000000 70.000000 -0.171090 0.129985 -dPolE 3350.000000 70.000000 -0.232008 0.130902 -dPolE 3360.000000 70.000000 0.219229 0.131009 -dPolE 3370.000000 70.000000 0.171978 0.131772 -dPolE 3380.000000 70.000000 -0.180867 0.132824 -dPolE 3390.000000 70.000000 -0.356722 0.133258 -dPolE 3400.000000 70.000000 -0.022904 0.132954 -dPolE 3410.000000 70.000000 -0.062059 0.133600 -dPolE 3420.000000 70.000000 -0.020276 0.134670 -dPolE 3430.000000 70.000000 0.103516 0.135383 -dPolE 3440.000000 70.000000 -0.052374 0.136403 -dPolE 3450.000000 70.000000 -0.111517 0.137833 -dPolE 3460.000000 70.000000 -0.000185 0.138734 -dPolE 3470.000000 70.000000 0.080217 0.139827 -dPolE 3480.000000 70.000000 0.046608 0.140850 -dPolE 3490.000000 70.000000 0.076985 0.141848 -dPolE 3500.000000 70.000000 0.077537 0.142981 -dPolE 3510.000000 70.000000 -0.038206 0.144329 -dPolE 3520.000000 70.000000 0.193263 0.145037 -dPolE 3530.000000 70.000000 0.060967 0.146358 -dPolE 3540.000000 70.000000 -0.130374 0.148167 -dPolE 3550.000000 70.000000 -0.131683 0.149332 -dPolE 3560.000000 70.000000 -0.107909 0.150255 -dPolE 3570.000000 70.000000 0.031858 0.151288 -dPolE 3580.000000 70.000000 0.228718 0.152117 -dPolE 3590.000000 70.000000 -0.091194 0.153932 -dPolE 3600.000000 70.000000 0.297620 0.154187 -dPolE 3610.000000 70.000000 -0.119926 0.156110 -dPolE 3620.000000 70.000000 -0.039441 0.156726 -dPolE 3630.000000 70.000000 0.141442 0.157133 -dPolE 3640.000000 70.000000 -0.013591 0.158627 -dPolE 3650.000000 70.000000 -0.280542 0.160382 -dPolE 3660.000000 70.000000 -0.056394 0.159765 -dPolE 3670.000000 70.000000 0.221996 0.158094 -dPolE 3680.000000 70.000000 0.036209 0.158055 -dPolE 3690.000000 70.000000 -0.017949 0.158821 -dPolE 3700.000000 70.000000 0.106362 0.160331 -dPolE 3710.000000 70.000000 -0.076365 0.162545 -dPolE 3720.000000 70.000000 -0.304919 0.163658 -dPolE 3730.000000 70.000000 -0.016715 0.163952 -dPolE 3740.000000 70.000000 0.000723 0.164919 -dPolE 3750.000000 70.000000 -0.034469 0.164765 -dPolE 3760.000000 70.000000 0.190925 0.163386 -dPolE 3770.000000 70.000000 0.225634 0.163194 -dPolE 3780.000000 70.000000 0.033753 0.162419 -dPolE 3790.000000 70.000000 0.212710 0.160473 -dPolE 3800.000000 70.000000 0.148692 0.160239 -dPolE 3810.000000 70.000000 0.342735 0.161039 -dPolE 3820.000000 70.000000 0.262857 0.162059 -dPolE 3830.000000 70.000000 0.072354 0.160907 -dPolE 3840.000000 70.000000 0.117039 0.160417 -dPolE 3850.000000 70.000000 0.258889 0.161298 -dPolE 3860.000000 70.000000 0.022802 0.160602 -dPolE 3870.000000 70.000000 -0.013544 0.157938 -dPolE 3880.000000 70.000000 0.089355 0.154926 -dPolE 3890.000000 70.000000 0.149988 0.155022 -dPolE 3900.000000 70.000000 -0.000201 0.159396 -dPolE 3910.000000 70.000000 0.152504 0.163350 -dPolE 3920.000000 70.000000 0.480513 0.161231 -dPolE 3930.000000 70.000000 0.382349 0.158372 -dPolE 3940.000000 70.000000 0.297747 0.156252 -dPolE 3950.000000 70.000000 0.084431 0.155914 -dPolE 3960.000000 70.000000 0.181926 0.156960 -dPolE 3970.000000 70.000000 0.578194 0.157460 -dPolE 3980.000000 70.000000 0.282075 0.155648 -dPolE 3990.000000 70.000000 0.039786 0.153475 -dPolE 4000.000000 70.000000 0.034653 0.154271 -dPolE 4010.000000 70.000000 0.319819 0.157001 -dPolE 4020.000000 70.000000 0.466081 0.158585 -dPolE 4030.000000 70.000000 0.210992 0.158980 -dPolE 4040.000000 70.000000 0.275026 0.157318 -dPolE 4050.000000 70.000000 0.336720 0.153613 -dPolE 4060.000000 70.000000 0.377074 0.150015 -dPolE 4070.000000 70.000000 0.481910 0.150252 -dPolE 4080.000000 70.000000 0.455138 0.154312 -dPolE 4090.000000 70.000000 0.350742 0.157782 -dPolE 4100.000000 70.000000 0.060543 0.158659 -dPolE 4110.000000 70.000000 0.052516 0.158341 -dPolE 4120.000000 70.000000 0.141346 0.156012 -dPolE 4130.000000 70.000000 0.275461 0.150974 -dPolE 4140.000000 70.000000 0.029386 0.149349 -dPolE 4150.000000 70.000000 -0.038453 0.151652 -dPolE 4160.000000 70.000000 0.099878 0.152611 -dPolE 4170.000000 70.000000 0.325643 0.151583 -dPolE 4180.000000 70.000000 0.392706 0.151343 -dPolE 4190.000000 70.000000 0.091862 0.153553 -dPolE 4200.000000 70.000000 -0.292622 0.154599 -dPolE 4210.000000 70.000000 -0.035579 0.149878 -dPolE 4220.000000 70.000000 0.228127 0.144340 -dPolE 4230.000000 70.000000 0.369068 0.141014 -dPolE 4240.000000 70.000000 0.293355 0.140813 -dPolE 4250.000000 70.000000 0.085969 0.145897 -dPolE 4260.000000 70.000000 -0.001398 0.151563 -dPolE 4270.000000 70.000000 0.039642 0.150782 -dPolE 4280.000000 70.000000 0.111178 0.146099 -dPolE 4290.000000 70.000000 0.359181 0.146730 -dPolE 4300.000000 70.000000 0.170715 0.147758 -dPolE 4310.000000 70.000000 -0.300763 0.147327 -dPolE 4320.000000 70.000000 -0.003633 0.148969 -dPolE 4330.000000 70.000000 0.588404 0.149907 -dPolE 4340.000000 70.000000 0.628328 0.146233 -dPolE 4350.000000 70.000000 0.558563 0.144672 -dPolE 4360.000000 70.000000 0.306941 0.147106 -dPolE 4370.000000 70.000000 0.327173 0.147021 -dPolE 4380.000000 70.000000 0.675998 0.145259 -dPolE 4390.000000 70.000000 0.214689 0.145015 -dPolE 4400.000000 70.000000 -0.022017 0.144764 -dPolE 4410.000000 70.000000 0.296698 0.141558 -dPolE 4420.000000 70.000000 0.294059 0.136842 -dPolE 4430.000000 70.000000 0.269583 0.136150 -dPolE 4440.000000 70.000000 0.032787 0.137705 -dPolE 4450.000000 70.000000 0.000075 0.136910 -dPolE 4460.000000 70.000000 0.102685 0.135565 -dPolE 4470.000000 70.000000 0.015716 0.136359 -dPolE 4480.000000 70.000000 -0.036271 0.137056 -dPolE 4490.000000 70.000000 0.038010 0.136793 -dPolE 4500.000000 70.000000 0.194182 0.135650 -dPolE 4510.000000 70.000000 0.150745 0.135636 -dPolE 4520.000000 70.000000 0.156737 0.136046 -dPolE 4530.000000 70.000000 0.009053 0.135957 -dPolE 4540.000000 70.000000 -0.004445 0.135281 -dPolE 4550.000000 70.000000 0.375379 0.133816 -dPolE 4560.000000 70.000000 0.242737 0.132694 -dPolE 4570.000000 70.000000 0.047943 0.130943 -dPolE 4580.000000 70.000000 0.187827 0.127731 -dPolE 4590.000000 70.000000 -0.046732 0.125851 -dPolE 4600.000000 70.000000 -0.129069 0.127833 -dPolE 4610.000000 70.000000 -0.028350 0.130745 -dPolE 4620.000000 70.000000 0.012661 0.131649 -dPolE 4630.000000 70.000000 0.034983 0.128464 -dPolE 4640.000000 70.000000 0.011437 0.123678 -dPolE 4650.000000 70.000000 -0.144683 0.122280 -dPolE 4660.000000 70.000000 0.005674 0.123551 -dPolE 4670.000000 70.000000 -0.136371 0.126152 -dPolE 4680.000000 70.000000 -0.105499 0.126971 -dPolE 4690.000000 70.000000 0.102654 0.127143 -dPolE 4700.000000 70.000000 -0.001645 0.129713 -dPolE 4710.000000 70.000000 0.090944 0.131405 -dPolE 4720.000000 70.000000 0.162166 0.129674 -dPolE 4730.000000 70.000000 0.124136 0.126960 -dPolE 4740.000000 70.000000 -0.043987 0.126245 -dPolE 4750.000000 70.000000 0.142650 0.126316 -dPolE 4760.000000 70.000000 0.298378 0.125526 -dPolE 4770.000000 70.000000 0.235287 0.124547 -dPolE 4780.000000 70.000000 0.116149 0.123495 -dPolE 4790.000000 70.000000 0.076604 0.122382 -dPolE 4800.000000 70.000000 -0.015214 0.122229 -dPolE 4810.000000 70.000000 0.003375 0.121858 -dPolE 4820.000000 70.000000 -0.028611 0.121848 -dPolE 4830.000000 70.000000 -0.126976 0.121478 -dPolE 4840.000000 70.000000 0.062497 0.119685 -dPolE 4850.000000 70.000000 0.188894 0.113984 -dPolE 4860.000000 70.000000 0.095411 0.100253 -dPolE 4870.000000 70.000000 0.065847 0.095347 -dPolE 4880.000000 70.000000 0.058894 0.109548 -dPolE 4890.000000 70.000000 -0.023552 0.116775 -dPolE 4900.000000 70.000000 0.014744 0.116550 -dPolE 4910.000000 70.000000 0.052504 0.115364 -dPolE 4920.000000 70.000000 0.075653 0.115569 -dPolE 4930.000000 70.000000 -0.033627 0.115296 -dPolE 4940.000000 70.000000 -0.043220 0.114447 -dPolE 4950.000000 70.000000 0.272284 0.115149 -dPolE 4960.000000 70.000000 0.124181 0.116023 -dPolE 4970.000000 70.000000 -0.136845 0.115450 -dPolE 4980.000000 70.000000 -0.056424 0.114088 -dPolE 4990.000000 70.000000 0.105364 0.112348 -dPolE 5000.000000 70.000000 0.289539 0.111547 -dPolE 5010.000000 70.000000 0.208638 0.111361 -dPolE 5020.000000 70.000000 -0.040159 0.110889 -dPolE 5030.000000 70.000000 -0.005193 0.110776 -dPolE 5040.000000 70.000000 0.037615 0.110978 -dPolE 5050.000000 70.000000 0.115297 0.111026 -dPolE 5060.000000 70.000000 -0.143253 0.110863 -dPolE 5070.000000 70.000000 -0.121134 0.110562 -dPolE 5080.000000 70.000000 0.134311 0.110361 -dPolE 5090.000000 70.000000 0.006929 0.110404 -dPolE 5100.000000 70.000000 -0.081523 0.110400 -dPolE 5110.000000 70.000000 0.026294 0.109734 -dPolE 5120.000000 70.000000 0.002709 0.109066 -dPolE 5130.000000 70.000000 0.014123 0.108906 -dPolE 5140.000000 70.000000 -0.104844 0.108914 -dPolE 5150.000000 70.000000 0.113212 0.108318 -dPolE 5160.000000 70.000000 0.027502 0.107972 -dPolE 5170.000000 70.000000 0.061658 0.107694 -dPolE 5180.000000 70.000000 -0.028762 0.107475 -dPolE 5190.000000 70.000000 -0.140086 0.107270 -dPolE 5200.000000 70.000000 -0.064944 0.106522 -dPolE 5210.000000 70.000000 0.038993 0.105875 -dPolE 5220.000000 70.000000 0.117610 0.105634 -dPolE 5230.000000 70.000000 0.109318 0.105261 -dPolE 5240.000000 70.000000 -0.146617 0.105319 -dPolE 5250.000000 70.000000 -0.155949 0.104881 -dPolE 5260.000000 70.000000 -0.036281 0.103910 -dPolE 5270.000000 70.000000 0.136735 0.102737 -dPolE 5280.000000 70.000000 0.153482 0.102460 -dPolE 5290.000000 70.000000 0.117062 0.102323 -dPolE 5300.000000 70.000000 0.060490 0.102031 -dPolE 5310.000000 70.000000 0.016235 0.102008 -dPolE 5320.000000 70.000000 0.090539 0.101746 -dPolE 5330.000000 70.000000 0.141081 0.100874 -dPolE 5340.000000 70.000000 -0.012330 0.100169 -dPolE 5350.000000 70.000000 0.002886 0.099859 -dPolE 5360.000000 70.000000 0.097452 0.099515 -dPolE 5370.000000 70.000000 -0.032648 0.099441 -dPolE 5380.000000 70.000000 0.080119 0.098896 -dPolE 5390.000000 70.000000 0.010574 0.098193 -dPolE 5400.000000 70.000000 0.088004 0.097656 -dPolE 5410.000000 70.000000 0.259064 0.097134 -dPolE 5420.000000 70.000000 0.057579 0.096700 -dPolE 5430.000000 70.000000 -0.032372 0.095986 -dPolE 5440.000000 70.000000 0.175586 0.095389 -dPolE 5450.000000 70.000000 0.106692 0.095173 -dPolE 5460.000000 70.000000 0.000020 0.095257 -dPolE 5470.000000 70.000000 0.165417 0.094872 -dPolE 5480.000000 70.000000 0.167424 0.094102 -dPolE 5490.000000 70.000000 0.228326 0.093335 -dPolE 5500.000000 70.000000 0.046361 0.093394 -dPolE 5510.000000 70.000000 0.095957 0.093342 -dPolE 5520.000000 70.000000 0.158728 0.093120 -dPolE 5530.000000 70.000000 0.063093 0.092885 -dPolE 5540.000000 70.000000 -0.072500 0.092654 -dPolE 5550.000000 70.000000 -0.005746 0.092359 -dPolE 5560.000000 70.000000 0.088458 0.092053 -dPolE 5570.000000 70.000000 0.063510 0.091762 -dPolE 5580.000000 70.000000 0.070445 0.091520 -dPolE 5590.000000 70.000000 0.066416 0.091442 -dPolE 5600.000000 70.000000 -0.066667 0.091333 -dPolE 5610.000000 70.000000 -0.035336 0.090752 -dPolE 5620.000000 70.000000 0.055064 0.090396 -dPolE 5630.000000 70.000000 0.035173 0.090280 -dPolE 5640.000000 70.000000 -0.057755 0.090056 -dPolE 5650.000000 70.000000 -0.044679 0.089607 -dPolE 5660.000000 70.000000 0.029434 0.089157 -dPolE 5670.000000 70.000000 0.058578 0.088180 -dPolE 5680.000000 70.000000 -0.013512 0.086680 -dPolE 5690.000000 70.000000 0.064554 0.084742 -dPolE 5700.000000 70.000000 0.039269 0.082304 -dPolE 5710.000000 70.000000 0.056956 0.081055 -dPolE 5720.000000 70.000000 0.139337 0.080303 -dPolE 5730.000000 70.000000 0.031770 0.079635 -dPolE 5740.000000 70.000000 0.065659 0.078130 -dPolE 5750.000000 70.000000 0.108659 0.077311 -dPolE 5760.000000 70.000000 0.166897 0.076672 -dPolE 5770.000000 70.000000 0.114435 0.075234 -dPolE 5780.000000 70.000000 0.082144 0.074154 -dPolE 5790.000000 70.000000 0.096286 0.074007 -dPolE 5800.000000 70.000000 0.048153 0.073524 -dPolE 5810.000000 70.000000 0.189514 0.071541 -dPolE 5820.000000 70.000000 0.163162 0.069741 -dPolE 5830.000000 70.000000 0.109763 0.071468 -dPolE 5840.000000 70.000000 0.183615 0.074692 -dPolE 5850.000000 70.000000 0.176826 0.074171 -dPolE 5860.000000 70.000000 0.192224 0.074503 -dPolE 5870.000000 70.000000 0.158276 0.075281 -dPolE 5880.000000 70.000000 0.180411 0.074550 -dPolE 5890.000000 70.000000 0.182536 0.074306 -dPolE 5900.000000 70.000000 0.205404 0.076741 -dPolE 5910.000000 70.000000 0.181593 0.078338 -dPolE 5920.000000 70.000000 0.179803 0.078320 -dPolE 5930.000000 70.000000 0.182716 0.077059 -dPolE 5940.000000 70.000000 0.110711 0.075961 -dPolE 5950.000000 70.000000 0.246205 0.074884 -dPolE 5960.000000 70.000000 0.126930 0.075174 -dPolE 5970.000000 70.000000 0.113418 0.076438 -dPolE 5980.000000 70.000000 0.149004 0.077053 -dPolE 5990.000000 70.000000 0.167656 0.077049 -dPolE 6000.000000 70.000000 0.189131 0.077078 -dPolE 6010.000000 70.000000 0.139607 0.076568 -dPolE 6020.000000 70.000000 0.176891 0.075625 -dPolE 6030.000000 70.000000 0.070364 0.074656 -dPolE 6040.000000 70.000000 0.090206 0.074315 -dPolE 6050.000000 70.000000 0.213960 0.075684 -dPolE 6060.000000 70.000000 0.294537 0.076031 -dPolE 6070.000000 70.000000 0.197850 0.076215 -dPolE 6080.000000 70.000000 0.142612 0.076513 -dPolE 6090.000000 70.000000 0.191878 0.076729 -dPolE 6100.000000 70.000000 0.103531 0.076537 -dPolE 6110.000000 70.000000 0.154793 0.076041 -dPolE 6120.000000 70.000000 0.193620 0.075834 -dPolE 6130.000000 70.000000 0.190080 0.075647 -dPolE 6140.000000 70.000000 0.156744 0.075472 -dPolE 6150.000000 70.000000 0.271739 0.075807 -dPolE 6160.000000 70.000000 0.208232 0.076543 -dPolE 6170.000000 70.000000 0.167528 0.076948 -dPolE 6180.000000 70.000000 0.034704 0.077226 -dPolE 6190.000000 70.000000 0.074234 0.077442 -dPolE 6200.000000 70.000000 0.235343 0.076903 -dPolE 6210.000000 70.000000 0.190729 0.076983 -dPolE 6220.000000 70.000000 0.058706 0.077424 -dPolE 6230.000000 70.000000 0.116909 0.076939 -dPolE 6240.000000 70.000000 0.181659 0.076634 -dPolE 6250.000000 70.000000 0.159143 0.077312 -dPolE 6260.000000 70.000000 0.214264 0.077776 -dPolE 6270.000000 70.000000 0.082653 0.077911 -dPolE 6280.000000 70.000000 0.134886 0.077753 -dPolE 6290.000000 70.000000 0.087364 0.077850 -dPolE 6300.000000 70.000000 0.254228 0.077698 -dPolE 6310.000000 70.000000 0.203892 0.078131 -dPolE 6320.000000 70.000000 0.147749 0.078303 -dPolE 6330.000000 70.000000 0.280371 0.077897 -dPolE 6340.000000 70.000000 0.194945 0.078079 -dPolE 6350.000000 70.000000 0.106471 0.078151 -dPolE 6360.000000 70.000000 0.052000 0.077944 -dPolE 6370.000000 70.000000 0.201230 0.077620 -dPolE 6380.000000 70.000000 0.349383 0.077570 -dPolE 6390.000000 70.000000 0.234177 0.077677 -dPolE 6400.000000 70.000000 0.205810 0.077685 -dPolE 6410.000000 70.000000 0.113327 0.077894 -dPolE 6420.000000 70.000000 0.076214 0.078153 -dPolE 6430.000000 70.000000 0.260507 0.077856 -dPolE 6440.000000 70.000000 0.250163 0.077882 -dPolE 6450.000000 70.000000 0.178578 0.078078 -dPolE 6460.000000 70.000000 0.210804 0.077985 -dPolE 6470.000000 70.000000 0.069533 0.078063 -dPolE 6480.000000 70.000000 -0.009643 0.078038 -dPolE 6490.000000 70.000000 0.068340 0.077835 -dPolE 6500.000000 70.000000 0.190803 0.077681 -dPolE 6510.000000 70.000000 0.189304 0.077698 -dPolE 6520.000000 70.000000 0.160474 0.077634 -dPolE 6530.000000 70.000000 0.120649 0.077738 -dPolE 6540.000000 70.000000 0.096062 0.078473 -dPolE 6550.000000 70.000000 0.249018 0.069371 -dPolE 6560.000000 70.000000 0.099972 0.048729 -dPolE 6570.000000 70.000000 0.031249 0.047121 -dPolE 6580.000000 70.000000 0.096810 0.064305 -dPolE 6590.000000 70.000000 0.174632 0.076902 -dPolE 6600.000000 70.000000 0.049615 0.077481 -dPolE 6610.000000 70.000000 0.049730 0.077539 -dPolE 6620.000000 70.000000 0.177728 0.077213 -dPolE 6630.000000 70.000000 0.197949 0.077067 -dPolE 6640.000000 70.000000 0.172431 0.077128 -dPolE 6650.000000 70.000000 0.181691 0.077154 -dPolE 6660.000000 70.000000 0.082652 0.077235 -dPolE 6670.000000 70.000000 0.070465 0.077216 -dPolE 6680.000000 70.000000 0.107700 0.077076 -dPolE 6690.000000 70.000000 0.151576 0.076861 -dPolE 6700.000000 70.000000 0.103122 0.076685 -dPolE 6710.000000 70.000000 0.201016 0.076596 -dPolE 6720.000000 70.000000 0.086719 0.076598 -dPolE 6730.000000 70.000000 0.219930 0.076394 -dPolE 6740.000000 70.000000 0.161239 0.076556 -dPolE 6750.000000 70.000000 0.180187 0.076602 -dPolE 6760.000000 70.000000 0.064244 0.076713 -dPolE 6770.000000 70.000000 0.104215 0.076583 -dPolE 6780.000000 70.000000 0.195703 0.076331 -dPolE 6790.000000 70.000000 0.137002 0.076208 -dPolE 6800.000000 70.000000 0.287371 0.075942 -dPolE 6810.000000 70.000000 0.274111 0.075918 -dPolE 6820.000000 70.000000 0.163725 0.076056 -dPolE 6830.000000 70.000000 0.176707 0.075994 -dPolE 6840.000000 70.000000 0.154174 0.075921 -dPolE 6850.000000 70.000000 0.130154 0.075620 -dPolE 6860.000000 70.000000 0.186899 0.075505 -dPolE 6870.000000 70.000000 0.127524 0.075767 -dPolE 6880.000000 70.000000 0.141141 0.075847 -dPolE 6890.000000 70.000000 0.186885 0.075820 -dPolE 6900.000000 70.000000 0.225666 0.075852 -dPolE 6910.000000 70.000000 0.153733 0.075887 -dPolE 6920.000000 70.000000 0.134000 0.075819 -dPolE 6930.000000 70.000000 0.059862 0.075820 -dPolE 6940.000000 70.000000 0.025597 0.075756 -dPolE 6950.000000 70.000000 0.129609 0.075740 -dPolE 6960.000000 70.000000 0.104279 0.075771 -dPolE 6970.000000 70.000000 0.086572 0.075648 -dPolE 6980.000000 70.000000 0.212748 0.075410 -dPolE 6990.000000 70.000000 0.178598 0.075494 -dPolE 7000.000000 70.000000 0.037818 0.075753 -dPolE 7010.000000 70.000000 0.077229 0.075813 -dPolE 7020.000000 70.000000 0.073446 0.075839 -dPolE 7030.000000 70.000000 0.187654 0.075696 -dPolE 7040.000000 70.000000 0.216840 0.075785 -dPolE 7050.000000 70.000000 0.143490 0.075978 -dPolE 7060.000000 70.000000 0.183194 0.075959 -dPolE 7070.000000 70.000000 0.114953 0.075738 -dPolE 7080.000000 70.000000 0.094846 0.075796 -dPolE 7090.000000 70.000000 0.112099 0.075955 -dPolE 7100.000000 70.000000 0.147848 0.076065 -dPolE 7110.000000 70.000000 0.120577 0.076106 -dPolE 7120.000000 70.000000 0.114734 0.076117 -dPolE 7130.000000 70.000000 0.119191 0.076116 -dPolE 7140.000000 70.000000 0.129707 0.076013 -dPolE 7150.000000 70.000000 0.151679 0.075914 -dPolE 7160.000000 70.000000 0.218963 0.075896 -dPolE 7170.000000 70.000000 0.173940 0.076189 -dPolE 7180.000000 70.000000 0.210798 0.076139 -dPolE 7190.000000 70.000000 0.074115 0.076292 -dPolE 7200.000000 70.000000 0.174485 0.076293 -dPolE 7210.000000 70.000000 0.191399 0.076418 -dPolE 7220.000000 70.000000 0.076617 0.076553 -dPolE 7230.000000 70.000000 0.118210 0.076666 -dPolE 7240.000000 70.000000 0.031548 0.076725 -dPolE 7250.000000 70.000000 0.092550 0.076329 -dPolE 7260.000000 70.000000 0.231462 0.075857 -dPolE 7270.000000 70.000000 0.155483 0.076122 -dPolE 7280.000000 70.000000 0.179232 0.076160 -dPolE 7290.000000 70.000000 -0.029399 0.076296 -dPolE 7300.000000 70.000000 -0.022251 0.076358 -dPolE 7310.000000 70.000000 0.201233 0.076041 -dPolE 7320.000000 70.000000 0.084006 0.076277 -dPolE 7330.000000 70.000000 0.175146 0.076482 -dPolE 7340.000000 70.000000 0.243750 0.076337 -dPolE 7350.000000 70.000000 0.059223 0.076108 -dPolE 7360.000000 70.000000 0.031474 0.076176 -dPolE 7370.000000 70.000000 0.076741 0.076477 -dPolE 7380.000000 70.000000 0.068519 0.077008 -dPolE 7390.000000 70.000000 0.087430 0.077255 -dPolE 7400.000000 70.000000 0.121118 0.076910 -dPolE 7410.000000 70.000000 0.129713 0.077187 -dPolE 7420.000000 70.000000 0.036700 0.077850 -dPolE 7430.000000 70.000000 0.205184 0.077900 -dPolE 7440.000000 70.000000 0.201322 0.077951 -dPolE 7450.000000 70.000000 0.201874 0.078016 -dPolE 7460.000000 70.000000 0.098749 0.078198 -dPolE 7470.000000 70.000000 0.059382 0.077925 -dPolE 7480.000000 70.000000 0.127893 0.077808 -dPolE 7490.000000 70.000000 0.063966 0.078216 -dPolE 7500.000000 70.000000 -0.025729 0.078320 -dPolE 7510.000000 70.000000 0.157810 0.078090 -dPolE 7520.000000 70.000000 0.103777 0.078710 -dPolE 7530.000000 70.000000 0.012253 0.079076 -dPolE 7540.000000 70.000000 0.117435 0.078516 -dPolE 7550.000000 70.000000 0.147669 0.078646 -dPolE 7560.000000 70.000000 -0.042479 0.078968 -dPolE 7570.000000 70.000000 0.023384 0.078808 -dPolE 7580.000000 70.000000 0.065810 0.078633 -dPolE 7590.000000 70.000000 -0.001442 0.078661 -dPolE 7600.000000 70.000000 0.126228 0.079120 -dPolE 7610.000000 70.000000 0.216025 0.079629 -dPolE 7620.000000 70.000000 0.166506 0.080123 -dPolE 7630.000000 70.000000 0.073534 0.080021 -dPolE 7640.000000 70.000000 0.041569 0.079920 -dPolE 7650.000000 70.000000 0.038121 0.080219 -dPolE 7660.000000 70.000000 0.085176 0.080689 -dPolE 7670.000000 70.000000 0.094382 0.081355 -dPolE 7680.000000 70.000000 0.073295 0.081260 -dPolE 7690.000000 70.000000 0.051769 0.080436 -dPolE 7700.000000 70.000000 0.114565 0.080038 -dPolE 7710.000000 70.000000 0.146202 0.080598 -dPolE 7720.000000 70.000000 0.058651 0.081591 -dPolE 7730.000000 70.000000 0.119028 0.082138 -dPolE 7740.000000 70.000000 0.018637 0.082420 -dPolE 7750.000000 70.000000 0.053639 0.082743 -dPolE 7760.000000 70.000000 0.083829 0.083163 -dPolE 7770.000000 70.000000 0.011133 0.083519 -dPolE 7780.000000 70.000000 0.048656 0.083392 -dPolE 7790.000000 70.000000 0.058783 0.082886 -dPolE 7800.000000 70.000000 0.107588 0.082709 -dPolE 7810.000000 70.000000 0.158378 0.083306 -dPolE 7820.000000 70.000000 0.134648 0.083711 -dPolE 7830.000000 70.000000 -0.071309 0.084052 -dPolE 7840.000000 70.000000 -0.123098 0.084559 -dPolE 7850.000000 70.000000 0.002444 0.085029 -dPolE 7860.000000 70.000000 0.070002 0.085329 -dPolE 7870.000000 70.000000 0.008931 0.085347 -dPolE 7880.000000 70.000000 0.126764 0.085045 -dPolE 7890.000000 70.000000 0.175751 0.085234 -dPolE 7900.000000 70.000000 0.071446 0.085772 -dPolE 7910.000000 70.000000 0.021580 0.085892 -dPolE 7920.000000 70.000000 -0.043047 0.086174 -dPolE 7930.000000 70.000000 0.124044 0.086152 -dPolE 7940.000000 70.000000 0.058454 0.086015 -dPolE 7950.000000 70.000000 0.020356 0.086121 -dPolE 7960.000000 70.000000 0.056167 0.086577 -dPolE 7970.000000 70.000000 0.128231 0.086969 -dPolE 7980.000000 70.000000 0.166389 0.087197 -dPolE 7990.000000 70.000000 -0.005242 0.087593 -dPolE 8000.000000 70.000000 0.053198 0.087444 -dPolE 8010.000000 70.000000 0.004335 0.087385 -dPolE 8020.000000 70.000000 -0.032724 0.088052 -dPolE 8030.000000 70.000000 -0.027432 0.088582 -dPolE 8040.000000 70.000000 -0.043428 0.088591 -dPolE 8050.000000 70.000000 0.134210 0.088216 -dPolE 8060.000000 70.000000 0.112612 0.088542 -dPolE 8070.000000 70.000000 0.094600 0.089409 -dPolE 8080.000000 70.000000 0.042905 0.089820 -dPolE 8090.000000 70.000000 0.030298 0.089238 -dPolE 8100.000000 70.000000 0.104106 0.089297 -dPolE 8110.000000 70.000000 0.121303 0.089747 -dPolE 8120.000000 70.000000 0.024439 0.090449 -dPolE 8130.000000 70.000000 -0.035846 0.090458 -dPolE 8140.000000 70.000000 -0.074015 0.090018 -dPolE 8150.000000 70.000000 0.142647 0.090051 -dPolE 8160.000000 70.000000 -0.028809 0.090931 -dPolE 8170.000000 70.000000 -0.007807 0.091300 -dPolE 8180.000000 70.000000 0.050191 0.091007 -dPolE 8190.000000 70.000000 0.099577 0.090871 -dPolE 8200.000000 70.000000 -0.105708 0.091572 -dPolE 8210.000000 70.000000 -0.028399 0.091827 -dPolE 8220.000000 70.000000 0.028308 0.092043 -dPolE 8230.000000 70.000000 0.013126 0.091730 -dPolE 8240.000000 70.000000 0.003210 0.091679 -dPolE 8250.000000 70.000000 -0.126330 0.092558 -dPolE 8260.000000 70.000000 -0.068595 0.093026 -dPolE 8270.000000 70.000000 0.086717 0.092567 -dPolE 8280.000000 70.000000 0.112995 0.092118 -dPolE 8290.000000 70.000000 0.007557 0.092357 -dPolE 8300.000000 70.000000 -0.028661 0.093290 -dPolE 8310.000000 70.000000 0.026218 0.093744 -dPolE 8320.000000 70.000000 0.020732 0.093520 -dPolE 8330.000000 70.000000 0.157869 0.092859 -dPolE 8340.000000 70.000000 0.025099 0.092867 -dPolE 8350.000000 70.000000 -0.123805 0.093498 -dPolE 8360.000000 70.000000 0.102070 0.093957 -dPolE 8370.000000 70.000000 -0.012273 0.093906 -dPolE 8380.000000 70.000000 0.027252 0.093683 -dPolE 8390.000000 70.000000 0.014383 0.093964 -dPolE 8400.000000 70.000000 0.018116 0.094731 -dPolE 8410.000000 70.000000 0.109189 0.094963 -dPolE 8420.000000 70.000000 0.040521 0.094879 -dPolE 8430.000000 70.000000 -0.065913 0.094748 -dPolE 8440.000000 70.000000 -0.067413 0.094783 -dPolE 8450.000000 70.000000 -0.073867 0.095269 -dPolE 8460.000000 70.000000 0.067893 0.095350 -dPolE 8470.000000 70.000000 0.139870 0.095039 -dPolE 8480.000000 70.000000 0.019693 0.094828 -dPolE 8490.000000 70.000000 -0.124884 0.095767 -dPolE 8500.000000 70.000000 -0.156429 0.097510 -dPolE 8510.000000 70.000000 -0.153039 0.098008 -dPolE 8520.000000 70.000000 -0.112781 0.095901 -dPolE 8530.000000 70.000000 -0.013177 0.093609 -dPolE 8540.000000 70.000000 -0.057827 0.093422 -dPolE 8550.000000 70.000000 -0.020135 0.094731 -dPolE 8560.000000 70.000000 0.207781 0.095434 -dPolE 8570.000000 70.000000 0.255535 0.095589 -dPolE 8580.000000 70.000000 0.008354 0.095542 -dPolE 8590.000000 70.000000 0.140799 0.095113 -dPolE 8600.000000 70.000000 0.119354 0.095487 -dPolE 8610.000000 70.000000 0.035307 0.096469 -dPolE 8620.000000 70.000000 -0.075645 0.097002 -dPolE 8630.000000 70.000000 0.004445 0.096859 -dPolE 8640.000000 70.000000 0.059680 0.096144 -dPolE 8650.000000 70.000000 -0.105332 0.096054 -dPolE 8660.000000 70.000000 -0.102560 0.096544 -dPolE 8670.000000 70.000000 -0.030524 0.097144 -dPolE 8680.000000 70.000000 0.013191 0.097162 -dPolE 8690.000000 70.000000 -0.122428 0.097191 -dPolE 8700.000000 70.000000 -0.077661 0.096924 -dPolE 8710.000000 70.000000 -0.032900 0.097090 -dPolE 8720.000000 70.000000 -0.012885 0.097542 -dPolE 8730.000000 70.000000 0.157667 0.097326 -dPolE 8740.000000 70.000000 0.143880 0.096961 -dPolE 8750.000000 70.000000 0.026607 0.096819 -dPolE 8760.000000 70.000000 0.045346 0.096882 -dPolE 8770.000000 70.000000 -0.043068 0.097567 -dPolE 8780.000000 70.000000 0.047391 0.097897 -dPolE 8790.000000 70.000000 0.097743 0.097693 -dPolE 8800.000000 70.000000 -0.122301 0.097924 -dPolE 8810.000000 70.000000 -0.042563 0.098153 -dPolE 8820.000000 70.000000 -0.059887 0.098566 -dPolE 8830.000000 70.000000 -0.056642 0.098930 -dPolE 8840.000000 70.000000 -0.093738 0.099073 -dPolE 8850.000000 70.000000 0.018749 0.099101 -dPolE 8860.000000 70.000000 -0.143220 0.099117 -dPolE 8870.000000 70.000000 0.059563 0.098521 -dPolE 8880.000000 70.000000 -0.048442 0.098699 -dPolE 8890.000000 70.000000 -0.184547 0.099330 -dPolE 8900.000000 70.000000 -0.208488 0.099752 -dPolE 8910.000000 70.000000 0.061204 0.099608 -dPolE 8920.000000 70.000000 0.109885 0.099497 -dPolE 8930.000000 70.000000 -0.023908 0.099649 -dPolE 8940.000000 70.000000 0.012116 0.099679 -dPolE 8950.000000 70.000000 0.015102 0.100022 -dPolE 8960.000000 70.000000 -0.051909 0.100397 -dPolE 8970.000000 70.000000 0.025205 0.100513 -dPolE 8980.000000 70.000000 -0.125837 0.100917 -dPolE 8990.000000 70.000000 -0.106164 0.100732 -dPolE 9000.000000 70.000000 -0.037346 0.101026 -dPolE 9010.000000 70.000000 0.115205 0.101103 -dPolE 9020.000000 70.000000 -0.026847 0.101335 -dPolE 9030.000000 70.000000 0.030236 0.101712 -dPolE 9040.000000 70.000000 -0.039271 0.101898 -dPolE 9050.000000 70.000000 -0.077239 0.101768 -dPolE 9060.000000 70.000000 -0.010370 0.101981 -dPolE 9070.000000 70.000000 -0.086949 0.102506 -dPolE 9080.000000 70.000000 -0.143891 0.103141 -dPolE 9090.000000 70.000000 -0.119242 0.103540 -dPolE 9100.000000 70.000000 0.085673 0.103321 -dPolE 9110.000000 70.000000 0.043511 0.103080 -dPolE 9120.000000 70.000000 -0.076594 0.103445 -dPolE 9130.000000 70.000000 -0.072108 0.103908 -dPolE 9140.000000 70.000000 0.008168 0.104588 -dPolE 9150.000000 70.000000 -0.220292 0.104913 -dPolE 9160.000000 70.000000 0.077081 0.104102 -dPolE 9170.000000 70.000000 -0.109409 0.104225 -dPolE 9180.000000 70.000000 0.005502 0.104148 -dPolE 9190.000000 70.000000 0.007427 0.104697 -dPolE 9200.000000 70.000000 0.012564 0.105559 -dPolE 9210.000000 70.000000 0.000690 0.106035 -dPolE 9220.000000 70.000000 -0.152783 0.106752 -dPolE 9230.000000 70.000000 0.009628 0.106758 -dPolE 9240.000000 70.000000 -0.060487 0.106991 -dPolE 9250.000000 70.000000 0.063575 0.107030 -dPolE 9260.000000 70.000000 -0.137575 0.107759 -dPolE 9270.000000 70.000000 -0.054473 0.108177 -dPolE 9280.000000 70.000000 -0.183792 0.108933 -dPolE 9290.000000 70.000000 -0.143408 0.109217 -dPolE 9300.000000 70.000000 -0.084073 0.109311 -dPolE 9310.000000 70.000000 -0.055349 0.109438 -dPolE 9320.000000 70.000000 -0.108978 0.109624 -dPolE 9330.000000 70.000000 -0.030927 0.109889 -dPolE 9340.000000 70.000000 0.054314 0.110231 -dPolE 9350.000000 70.000000 -0.127035 0.111151 -dPolE 9360.000000 70.000000 -0.111230 0.111784 -dPolE 9370.000000 70.000000 -0.071466 0.112019 -dPolE 9380.000000 70.000000 0.079819 0.111881 -dPolE 9390.000000 70.000000 -0.127749 0.112451 -dPolE 9400.000000 70.000000 -0.115274 0.113328 -dPolE 9410.000000 70.000000 -0.102925 0.113952 -dPolE 9420.000000 70.000000 -0.203795 0.114682 -dPolE 9430.000000 70.000000 -0.079955 0.115098 -dPolE 9440.000000 70.000000 -0.100960 0.115199 -dPolE 9450.000000 70.000000 0.033011 0.115337 -dPolE 9460.000000 70.000000 -0.155072 0.116232 -dPolE 9470.000000 70.000000 -0.145331 0.116884 -dPolE 9480.000000 70.000000 -0.192588 0.117553 -dPolE 9490.000000 70.000000 -0.258296 0.118332 -dPolE 9500.000000 70.000000 -0.096283 0.118679 -dPolE 9510.000000 70.000000 -0.009232 0.119015 -dPolE 9520.000000 70.000000 -0.100055 0.119530 -dPolE 9530.000000 70.000000 -0.178912 0.120269 -dPolE 9540.000000 70.000000 0.016349 0.120939 -dPolE 9550.000000 70.000000 0.213172 0.121457 -dPolE 9560.000000 70.000000 -0.036055 0.122178 -dPolE 9570.000000 70.000000 -0.130783 0.122559 -dPolE 9580.000000 70.000000 -0.276977 0.123107 -dPolE 9590.000000 70.000000 -0.145228 0.123413 -dPolE 9600.000000 70.000000 0.059917 0.123670 -dPolE 9610.000000 70.000000 -0.047085 0.124285 -dPolE 9620.000000 70.000000 -0.116907 0.125162 -dPolE 9630.000000 70.000000 0.007982 0.125553 -dPolE 9640.000000 70.000000 -0.168328 0.126412 -dPolE 9650.000000 70.000000 -0.079738 0.126893 -dPolE 9660.000000 70.000000 -0.113084 0.127465 -dPolE 9670.000000 70.000000 -0.165609 0.128430 -dPolE 9680.000000 70.000000 -0.200340 0.129457 -dPolE 9690.000000 70.000000 -0.102812 0.130011 -dPolE 9700.000000 70.000000 -0.184242 0.130510 -dPolE 9710.000000 70.000000 -0.111650 0.131212 -dPolE 9720.000000 70.000000 0.042925 0.131800 -dPolE 9730.000000 70.000000 -0.021852 0.132875 -dPolE 9740.000000 70.000000 0.132754 0.133416 -dPolE 9750.000000 70.000000 -0.225737 0.134498 -dPolE 9760.000000 70.000000 -0.281890 0.135444 -dPolE 9770.000000 70.000000 0.042279 0.135718 -dPolE 9780.000000 70.000000 0.031213 0.136452 -dPolE 9790.000000 70.000000 0.106101 0.137222 -dPolE 9800.000000 70.000000 -0.077202 0.138631 -dPolE 9810.000000 70.000000 -0.101609 0.139790 -dPolE 9820.000000 70.000000 -0.064629 0.140891 -dPolE 9830.000000 70.000000 -0.068827 0.141433 -dPolE 9840.000000 70.000000 0.176781 0.141895 -dPolE 9850.000000 70.000000 -0.096974 0.143472 -dPolE 9860.000000 70.000000 -0.006578 0.144159 -dPolE 9870.000000 70.000000 -0.031664 0.145652 -dPolE 9880.000000 70.000000 -0.191599 0.147177 -dPolE 9890.000000 70.000000 -0.124415 0.147905 -dPolE 9900.000000 70.000000 0.088484 0.148285 -dPolE 9910.000000 70.000000 -0.010064 0.149592 -dPolE 9920.000000 70.000000 -0.161660 0.151424 -dPolE 9930.000000 70.000000 -0.303949 0.153384 -dPolE 9940.000000 70.000000 -0.155101 0.154431 -dPolE 9950.000000 70.000000 0.083986 0.154943 -dPolE 9960.000000 70.000000 -0.016296 0.156620 -dPolE 9970.000000 70.000000 0.144589 0.157392 -dPolE 9980.000000 70.000000 0.143249 0.159249 -dPolE 9990.000000 70.000000 -0.150440 0.161668 -dPolE 10000.000000 70.000000 -0.110606 0.163221 -dPolE 10025.000000 70.000000 0.006812 0.078677 -dPolE 10050.000000 70.000000 0.033280 0.076790 -dPolE 10075.000000 70.000000 0.075009 0.074493 -dPolE 10100.000000 70.000000 0.012870 0.072808 -dPolE 10125.000000 70.000000 -0.075710 0.071368 -dPolE 10150.000000 70.000000 0.030279 0.069433 -dPolE 10175.000000 70.000000 0.029748 0.067782 -dPolE 10200.000000 70.000000 -0.076906 0.066392 -dPolE 10225.000000 70.000000 -0.062878 0.064724 -dPolE 10250.000000 70.000000 -0.036536 0.063198 -dPolE 10275.000000 70.000000 -0.015102 0.061972 -dPolE 10300.000000 70.000000 0.028853 0.060387 -dPolE 10325.000000 70.000000 0.063402 0.058754 -dPolE 10350.000000 70.000000 -0.062004 0.057584 -dPolE 10375.000000 70.000000 -0.055670 0.056365 -dPolE 10400.000000 70.000000 0.072872 0.055111 -dPolE 10425.000000 70.000000 0.098910 0.053997 -dPolE 10450.000000 70.000000 0.062511 0.052960 -dPolE 10475.000000 70.000000 -0.083087 0.052019 -dPolE 10500.000000 70.000000 -0.001128 0.050991 -dPolE 10525.000000 70.000000 0.123771 0.049987 -dPolE 10550.000000 70.000000 -0.004313 0.049210 -dPolE 10575.000000 70.000000 -0.040286 0.048464 -dPolE 10600.000000 70.000000 -0.001314 0.047745 -dPolE 10625.000000 70.000000 -0.019042 0.046812 -dPolE 10650.000000 70.000000 -0.025030 0.045986 -dPolE 10675.000000 70.000000 -0.006424 0.045328 -dPolE 10700.000000 70.000000 -0.015318 0.044512 -dPolE 10725.000000 70.000000 -0.012618 0.043720 -dPolE 10750.000000 70.000000 0.073155 0.043150 -dPolE 10775.000000 70.000000 0.061572 0.042386 -dPolE 10800.000000 70.000000 -0.010398 0.041513 -dPolE 10825.000000 70.000000 0.064924 0.040849 -dPolE 10850.000000 70.000000 0.083024 0.040181 -dPolE 10875.000000 70.000000 0.028408 0.039499 -dPolE 10900.000000 70.000000 -0.073735 0.039010 -dPolE 10925.000000 70.000000 -0.124770 0.038486 -dPolE 10950.000000 70.000000 -0.011745 0.037753 -dPolE 10975.000000 70.000000 0.043302 0.037198 -dPolE 11000.000000 70.000000 0.069940 0.036734 -dPolE 11025.000000 70.000000 0.083896 0.036316 -dPolE 11050.000000 70.000000 0.115750 0.035942 -dPolE 11075.000000 70.000000 0.164115 0.035608 -dPolE 11100.000000 70.000000 0.087824 0.035115 -dPolE 11125.000000 70.000000 0.044422 0.034718 -dPolE 11150.000000 70.000000 0.074747 0.034503 -dPolE 11175.000000 70.000000 0.051224 0.034234 -dPolE 11200.000000 70.000000 0.027105 0.033973 -dPolE 11225.000000 70.000000 0.062793 0.033792 -dPolE 11250.000000 70.000000 0.051990 0.033559 -dPolE 11275.000000 70.000000 0.016998 0.033304 -dPolE 11300.000000 70.000000 0.074598 0.033231 -dPolE 11325.000000 70.000000 0.097672 0.033087 -dPolE 11350.000000 70.000000 0.081544 0.032863 -dPolE 11375.000000 70.000000 0.076166 0.032746 -dPolE 11400.000000 70.000000 0.068828 0.032627 -dPolE 11425.000000 70.000000 0.054459 0.032475 -dPolE 11450.000000 70.000000 0.044122 0.032316 -dPolE 11475.000000 70.000000 0.032761 0.032141 -dPolE 11500.000000 70.000000 0.009760 0.031901 -dPolE 11525.000000 70.000000 0.015214 0.031680 -dPolE 11550.000000 70.000000 0.038551 0.031472 -dPolE 11575.000000 70.000000 0.036614 0.031337 -dPolE 11600.000000 70.000000 0.032238 0.031110 -dPolE 11625.000000 70.000000 0.025058 0.030779 -dPolE 11650.000000 70.000000 0.015590 0.030595 -dPolE 11675.000000 70.000000 0.016101 0.030397 -dPolE 11700.000000 70.000000 0.037929 0.030131 -dPolE 11725.000000 70.000000 0.045867 0.029958 -dPolE 11750.000000 70.000000 0.049415 0.029786 -dPolE 11775.000000 70.000000 0.053501 0.029484 -dPolE 11800.000000 70.000000 0.059004 0.029213 -dPolE 11825.000000 70.000000 0.064218 0.028962 -dPolE 11850.000000 70.000000 0.050253 0.028718 -dPolE 11875.000000 70.000000 0.046572 0.028489 -dPolE 11900.000000 70.000000 0.053323 0.028275 -dPolE 11925.000000 70.000000 0.079530 0.028006 -dPolE 11950.000000 70.000000 0.089011 0.027773 -dPolE 11975.000000 70.000000 0.067459 0.027605 -dPolE 12000.000000 70.000000 0.071567 0.027421 -dPolE 12025.000000 70.000000 0.066121 0.027238 -dPolE 12050.000000 70.000000 0.011220 0.027068 -dPolE 12075.000000 70.000000 0.027049 0.026930 -dPolE 12100.000000 70.000000 0.066094 0.026803 -dPolE 12125.000000 70.000000 0.035420 0.026637 -dPolE 12150.000000 70.000000 0.018385 0.026478 -dPolE 12175.000000 70.000000 0.011979 0.026324 -dPolE 12200.000000 70.000000 0.059720 0.026252 -dPolE 12225.000000 70.000000 0.065164 0.026173 -dPolE 12250.000000 70.000000 0.018579 0.026086 -dPolE 12275.000000 70.000000 0.025677 0.026051 -dPolE 12300.000000 70.000000 0.037487 0.026043 -dPolE 12325.000000 70.000000 0.045386 0.026077 -dPolE 12350.000000 70.000000 0.035247 0.026012 -dPolE 12375.000000 70.000000 0.036068 0.025970 -dPolE 12400.000000 70.000000 0.092622 0.026100 -dPolE 12425.000000 70.000000 0.079267 0.026046 -dPolE 12450.000000 70.000000 0.043820 0.025928 -dPolE 12475.000000 70.000000 0.097409 0.026008 -dPolE 12500.000000 70.000000 0.083026 0.025930 -dPolE 12525.000000 70.000000 0.019673 0.025736 -dPolE 12550.000000 70.000000 0.092411 0.025632 -dPolE 12575.000000 70.000000 0.108301 0.025526 -dPolE 12600.000000 70.000000 0.059839 0.025415 -dPolE 12625.000000 70.000000 0.085187 0.025342 -dPolE 12650.000000 70.000000 0.099598 0.025244 -dPolE 12675.000000 70.000000 0.084149 0.025099 -dPolE 12700.000000 70.000000 0.079196 0.024932 -dPolE 12725.000000 70.000000 0.074591 0.024811 -dPolE 12750.000000 70.000000 0.064857 0.024823 -dPolE 12775.000000 70.000000 0.077203 0.024678 -dPolE 12800.000000 70.000000 0.093051 0.024494 -dPolE 12825.000000 70.000000 0.088572 0.024388 -dPolE 12850.000000 70.000000 0.107036 0.024268 -dPolE 12875.000000 70.000000 0.131399 0.024146 -dPolE 12900.000000 70.000000 0.089568 0.024074 -dPolE 12925.000000 70.000000 0.075375 0.023954 -dPolE 12950.000000 70.000000 0.083305 0.023796 -dPolE 12975.000000 70.000000 0.081726 0.023731 -dPolE 13000.000000 70.000000 0.081996 0.023650 -dPolE 13025.000000 70.000000 0.084333 0.023552 -dPolE 13050.000000 70.000000 0.065459 0.023436 -dPolE 13075.000000 70.000000 0.054320 0.023341 -dPolE 13100.000000 70.000000 0.057780 0.023279 -dPolE 13125.000000 70.000000 0.054970 0.023219 -dPolE 13150.000000 70.000000 0.053520 0.023153 -dPolE 13175.000000 70.000000 0.057470 0.023073 -dPolE 13200.000000 70.000000 0.063494 0.023010 -dPolE 13225.000000 70.000000 0.070928 0.022971 -dPolE 13250.000000 70.000000 0.080909 0.022993 -dPolE 13275.000000 70.000000 0.051857 0.022984 -dPolE 13300.000000 70.000000 0.022699 0.022969 -dPolE 13325.000000 70.000000 0.076654 0.022982 -dPolE 13350.000000 70.000000 0.102865 0.023010 -dPolE 13375.000000 70.000000 0.111541 0.023045 -dPolE 13400.000000 70.000000 0.107587 0.023057 -dPolE 13425.000000 70.000000 0.092557 0.023115 -dPolE 13450.000000 70.000000 0.071000 0.023211 -dPolE 13475.000000 70.000000 0.106587 0.023335 -dPolE 13500.000000 70.000000 0.110952 0.023487 -dPolE 13525.000000 70.000000 0.083744 0.023667 -dPolE 13550.000000 70.000000 0.147604 0.023953 -dPolE 13575.000000 70.000000 0.163248 0.024275 -dPolE 13600.000000 70.000000 0.112383 0.024642 -dPolE 13625.000000 70.000000 0.130552 0.024834 -dPolE 13650.000000 70.000000 0.123440 0.025042 -dPolE 13675.000000 70.000000 0.064734 0.025304 -dPolE 13700.000000 70.000000 0.069468 0.025886 -dPolE 13725.000000 70.000000 0.087003 0.026876 -dPolE 13750.000000 70.000000 0.110178 0.028689 -dPolE 13775.000000 70.000000 0.086923 0.031278 -dPolE 13800.000000 70.000000 0.051496 0.034004 -dPolE 13825.000000 70.000000 0.028648 0.035647 -dPolE 13850.000000 70.000000 0.046143 0.035350 -dPolE 13875.000000 70.000000 0.055333 0.034311 -dPolE 13900.000000 70.000000 0.002944 0.032902 -dPolE 13925.000000 70.000000 0.018140 0.031992 -dPolE 13950.000000 70.000000 0.047368 0.031122 -dPolE 13975.000000 70.000000 0.036399 0.029690 -dPolE 14000.000000 70.000000 0.029442 0.028820 -dPolE 14025.000000 70.000000 0.024933 0.028188 -dPolE 14050.000000 70.000000 0.024012 0.027500 -dPolE 14075.000000 70.000000 0.058673 0.027008 -dPolE 14100.000000 70.000000 0.098919 0.026613 -dPolE 14125.000000 70.000000 0.040108 0.026136 -dPolE 14150.000000 70.000000 0.029215 0.025807 -dPolE 14175.000000 70.000000 0.046739 0.025568 -dPolE 14200.000000 70.000000 0.040847 0.025304 -dPolE 14225.000000 70.000000 0.040553 0.025140 -dPolE 14250.000000 70.000000 0.045288 0.025042 -dPolE 14275.000000 70.000000 0.066948 0.024873 -dPolE 14300.000000 70.000000 0.101485 0.024752 -dPolE 14325.000000 70.000000 0.144912 0.024671 -dPolE 14350.000000 70.000000 0.104514 0.024619 -dPolE 14375.000000 70.000000 0.096325 0.024546 -dPolE 14400.000000 70.000000 0.118386 0.024453 -dPolE 14425.000000 70.000000 0.051843 0.024499 -dPolE 14450.000000 70.000000 0.044830 0.024458 -dPolE 14475.000000 70.000000 0.099677 0.024327 -dPolE 14500.000000 70.000000 0.050029 0.024327 -dPolE 14525.000000 70.000000 0.064940 0.024339 -dPolE 14550.000000 70.000000 0.155146 0.024361 -dPolE 14575.000000 70.000000 0.060414 0.024303 -dPolE 14600.000000 70.000000 0.029659 0.024308 -dPolE 14625.000000 70.000000 0.084604 0.024391 -dPolE 14650.000000 70.000000 0.061521 0.024334 -dPolE 14675.000000 70.000000 0.059383 0.024351 -dPolE 14700.000000 70.000000 0.089484 0.024471 -dPolE 14725.000000 70.000000 0.118830 0.024390 -dPolE 14750.000000 70.000000 0.127631 0.024384 -dPolE 14775.000000 70.000000 0.109367 0.024494 -dPolE 14800.000000 70.000000 0.034031 0.024511 -dPolE 14825.000000 70.000000 0.017250 0.024511 -dPolE 14850.000000 70.000000 0.086492 0.024500 -dPolE 14875.000000 70.000000 0.065683 0.024548 -dPolE 14900.000000 70.000000 0.057442 0.024618 -dPolE 14925.000000 70.000000 0.077460 0.024712 -dPolE 14950.000000 70.000000 0.045533 0.024714 -dPolE 14975.000000 70.000000 0.041801 0.024773 -dPolE 15000.000000 70.000000 0.083780 0.024925 -dPolE 15025.000000 70.000000 0.088659 0.024886 -dPolE 15050.000000 70.000000 0.095401 0.024913 -dPolE 15075.000000 70.000000 0.109194 0.025052 -dPolE 15100.000000 70.000000 0.103116 0.025046 -dPolE 15125.000000 70.000000 0.110659 0.025054 -dPolE 15150.000000 70.000000 0.138644 0.025097 -dPolE 15175.000000 70.000000 0.109977 0.025162 -dPolE 15200.000000 70.000000 0.089726 0.025249 -dPolE 15225.000000 70.000000 0.085784 0.025362 -dPolE 15250.000000 70.000000 0.075452 0.025418 -dPolE 15275.000000 70.000000 0.088063 0.025501 -dPolE 15300.000000 70.000000 0.129723 0.025623 -dPolE 15325.000000 70.000000 0.069571 0.025670 -dPolE 15350.000000 70.000000 0.041761 0.025743 -dPolE 15375.000000 70.000000 0.056999 0.025850 -dPolE 15400.000000 70.000000 0.064877 0.025907 -dPolE 15425.000000 70.000000 0.072747 0.026022 -dPolE 15450.000000 70.000000 0.080838 0.026202 -dPolE 15475.000000 70.000000 0.083334 0.026267 -dPolE 15500.000000 70.000000 0.090283 0.026358 -dPolE 15525.000000 70.000000 0.101656 0.026476 -dPolE 15550.000000 70.000000 0.110235 0.026461 -dPolE 15575.000000 70.000000 0.114928 0.026547 -dPolE 15600.000000 70.000000 0.112863 0.026721 -dPolE 15625.000000 70.000000 0.037594 0.026816 -dPolE 15650.000000 70.000000 0.034065 0.026933 -dPolE 15675.000000 70.000000 0.083328 0.027063 -dPolE 15700.000000 70.000000 0.066327 0.027122 -dPolE 15725.000000 70.000000 0.073002 0.027225 -dPolE 15750.000000 70.000000 0.089386 0.027361 -dPolE 15775.000000 70.000000 0.044818 0.027506 -dPolE 15800.000000 70.000000 0.064880 0.027613 -dPolE 15825.000000 70.000000 0.106870 0.027714 -dPolE 15850.000000 70.000000 0.038943 0.027931 -dPolE 15875.000000 70.000000 0.053389 0.028041 -dPolE 15900.000000 70.000000 0.097113 0.028118 -dPolE 15925.000000 70.000000 0.077599 0.028304 -dPolE 15950.000000 70.000000 0.082359 0.028476 -dPolE 15975.000000 70.000000 0.092483 0.028641 -dPolE 16000.000000 70.000000 0.084092 0.028807 -dPolE 16025.000000 70.000000 0.117735 0.028918 -dPolE 16050.000000 70.000000 0.124147 0.029058 -dPolE 16075.000000 70.000000 0.013779 0.029333 -dPolE 16100.000000 70.000000 0.057156 0.029495 -dPolE 16125.000000 70.000000 0.088385 0.029643 -dPolE 16150.000000 70.000000 0.002192 0.029831 -dPolE 16175.000000 70.000000 0.077811 0.030034 -dPolE 16200.000000 70.000000 0.116008 0.030257 -dPolE 16225.000000 70.000000 0.033283 0.030510 -dPolE 16250.000000 70.000000 0.089212 0.030682 -dPolE 16275.000000 70.000000 0.103785 0.030906 -dPolE 16300.000000 70.000000 0.037108 0.031217 -dPolE 16325.000000 70.000000 0.078843 0.031441 -dPolE 16350.000000 70.000000 0.106385 0.031719 -dPolE 16375.000000 70.000000 0.111403 0.032066 -dPolE 16400.000000 70.000000 0.072915 0.032302 -dPolE 16425.000000 70.000000 0.055535 0.032712 -dPolE 16450.000000 70.000000 0.059390 0.033252 -dPolE 16475.000000 70.000000 0.099431 0.033442 -dPolE 16500.000000 70.000000 0.094490 0.033926 -dPolE 16525.000000 70.000000 0.068718 0.034601 -dPolE 16550.000000 70.000000 0.106094 0.035170 -dPolE 16575.000000 70.000000 0.079572 0.036084 -dPolE 16600.000000 70.000000 0.039594 0.037215 -dPolE 16625.000000 70.000000 0.082032 0.038424 -dPolE 16650.000000 70.000000 0.040110 0.040602 -dPolE 16675.000000 70.000000 0.008557 0.043452 -dPolE 16700.000000 70.000000 0.112667 0.046835 -dPolE 16725.000000 70.000000 0.107670 0.052035 -dPolE 16750.000000 70.000000 0.086537 0.058760 -dPolE 16775.000000 70.000000 0.099584 0.067024 -dPolE 16800.000000 70.000000 0.026520 0.078223 -dPolE 16825.000000 70.000000 -0.001887 0.091867 -dPolE 16850.000000 70.000000 0.093951 0.107110 -dPolE 16875.000000 70.000000 0.015745 0.125295 -dPolE 16900.000000 70.000000 -0.217532 0.147289 -dPolE 16925.000000 70.000000 -0.622895 0.173056 -dPolE 16950.000000 70.000000 -0.393209 0.199934 -dPolE 16975.000000 70.000000 -0.096587 0.228777 -dPolE 17000.000000 70.000000 0.152324 0.260383 \ No newline at end of file diff --git a/pynxtools/dataconverter/README.md b/pynxtools/dataconverter/README.md index b307d58d8..7179eb594 100644 --- a/pynxtools/dataconverter/README.md +++ b/pynxtools/dataconverter/README.md @@ -27,8 +27,7 @@ Options: arguments instead. The path to the input data file to read. (Repeat for more than one file.) - --reader [apm|ellips|em_nion|em_om|em_spctrscpy|example|hall|json_map|json_yml|mpes|sts|transmission|xps|xrd] - The reader to use. default="example" + --reader [example] The reader to use. default="example" --nxdl TEXT The name of the NXDL file to use without extension.This option is required if no '-- params-file' is supplied. diff --git a/pynxtools/dataconverter/readers/ellips/README.md b/pynxtools/dataconverter/readers/ellips/README.md deleted file mode 100644 index 09e0eba92..000000000 --- a/pynxtools/dataconverter/readers/ellips/README.md +++ /dev/null @@ -1,4 +0,0 @@ -# ellips(ometry) reader - -## Contact person in FAIRmat for this reader -Carola Emminger \ No newline at end of file diff --git a/pynxtools/dataconverter/readers/ellips/__init__.py b/pynxtools/dataconverter/readers/ellips/__init__.py deleted file mode 100644 index e69de29bb..000000000 diff --git a/pynxtools/dataconverter/readers/ellips/mock.py b/pynxtools/dataconverter/readers/ellips/mock.py deleted file mode 100644 index 92aa6a5eb..000000000 --- a/pynxtools/dataconverter/readers/ellips/mock.py +++ /dev/null @@ -1,150 +0,0 @@ -# Copyright The NOMAD Authors. -# -# This file is part of NOMAD. See https://nomad-lab.eu for further info. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -"""A generic class for generating duplicate outputs for ellipsometry""" - -import random -import numpy as np -import ase -from pynxtools.dataconverter.helpers import extract_atom_types - - -class MockEllips: - """A generic class for generating duplicate outputs for ELLIPSOMETRY - - Contains: - - mock_sample: - Chooses random entry from sample_list, overwrites sample_name - and extracts atom_types - - mock_chemical_formula: - Creates a list of chemical formulas consisting of two atom types - - modify_spectral_range: - Change spectral range (i.e. wavelength array) and step size. - - mock_angles: - Change value and number of incident angles - - choose_data_type: - Chooses random entry from data_types - - mock_signals: - Mock data if data_type is Psi/Delta or tan(Psi)/cos(Delta) - - mock_mueller_matrix: - Mock data if data_type is Mueller matrix - - mock_template: - Creates mock ellipsometry data (by calling the above routines) - """ - - def __init__(self, data_template) -> None: - self.data = data_template["measured_data"] - self.wavelength = data_template[ - "data_collection/NAME_spectrum[wavelength_spectrum]" - ] - self.atom_types = data_template["atom_types"] - self.sample_list: list = [] - self.data_types = ["Psi/Delta", "tan(Psi)/cos(Delta)", "Mueller matrix"] - self.angles: list = [] - self.number_of_signals = 0 - - def mock_sample(self, data_template) -> None: - """Chooses random entry from sample_list, overwrites sample_name - and extracts atom_types - """ - self.mock_chemical_formula() - name = random.choice(self.sample_list) - self.atom_types = extract_atom_types(name) - data_template["sample_name"] = name - data_template["atom_types"] = self.atom_types - data_template["layer_structure"] = f"{name} bulk" - data_template["experiment_description"] = f"RC2 scan on {name} bulk" - - def choose_data_type(self, data_template) -> None: - """Chooses random entry from data_types""" - data_type = random.choice(self.data_types) - data_template["data_type"] = data_type - if data_type == "Mueller matrix": - self.number_of_signals = 16 - elif data_type in ("Psi/Delta", "tan(Psi)/cos(Delta)"): - self.number_of_signals = 2 - - def mock_chemical_formula(self) -> None: - """Creates a list of chemical formulas consisting of two atom types""" - part_1 = ase.atom.chemical_symbols[1:] - part_2 = list(range(2, 20, 1)) - - for el1 in part_1: - for na1 in part_2: - for el2 in part_1: - for na2 in part_2: - chemical_formula = f"{el1}{na1}{el2}{na2}" - if el1 != el2: - self.sample_list.append(chemical_formula) - - def mock_angles(self, data_template) -> None: - """Change value and number of incident angles""" - angle_list = [40, 45, 50, 55, 60, 65, 70, 75, 80] - for _ in range(random.randrange(1, 4)): - angle = random.choice(angle_list) - self.angles.append(angle) - angle_list.remove(angle) - self.angles.sort() - data_template["angle_of_incidence"] = self.angles - if self.number_of_signals == 2: - self.mock_signals(data_template) - elif self.number_of_signals == 16: - self.mock_mueller_matrix(data_template) - - def mock_signals(self, data_template) -> None: - """Mock data if data_type is Psi/Delta or tan(Psi)/cos(Delta) - considering the (new) number of incident angles - """ - my_numpy_array = np.empty( - [len(self.angles), self.number_of_signals, len(self.wavelength)] - ) - for index in range(0, len(self.angles)): - noise = np.random.normal(0, 0.5, self.data[0, 0, :].size) - my_numpy_array[index] = self.data[0] * random.uniform(0.5, 1.5) + noise - self.data = my_numpy_array - data_template["measured_data"] = my_numpy_array - - def mock_mueller_matrix(self, data_template) -> None: - """Mock data if data_type is Mueller matrix (i.e. 16 elements/signals) - considering the (new) number of incident angles - """ - my_numpy_array = np.empty( - [len(self.angles), self.number_of_signals, len(self.wavelength)] - ) - for idx in range(0, len(self.angles)): - noise = np.random.normal(0, 0.1, self.data[0, 0, :].size) - for m_idx in range(1, self.number_of_signals): - my_numpy_array[idx][m_idx] = self.data[0][0] * random.uniform(0.5, 1.0) - my_numpy_array[idx][m_idx] += noise - my_numpy_array[idx][0] = my_numpy_array[0][0] / my_numpy_array[0][0] - data_template["measured_data"] = my_numpy_array - - def modify_spectral_range(self, data_template) -> None: - """Change spectral range (i.e. wavlength array) and step size, - while length of the wavelength array remains the same. - """ - temp = random.uniform(0.25, 23) - data_template["data_collection/NAME_spectrum[wavelength_spectrum]"] = ( - temp * data_template["data_collection/NAME_spectrum[wavelength_spectrum]"] - ) - - def mock_template(self, data_template) -> None: - """Creates a mock ellipsometry template""" - self.mock_sample(data_template) - self.modify_spectral_range(data_template) - self.choose_data_type(data_template) - self.mock_angles(data_template) diff --git a/pynxtools/dataconverter/readers/ellips/reader.py b/pynxtools/dataconverter/readers/ellips/reader.py deleted file mode 100644 index 7793604f9..000000000 --- a/pynxtools/dataconverter/readers/ellips/reader.py +++ /dev/null @@ -1,484 +0,0 @@ -# -# Copyright The NOMAD Authors. -# -# This file is part of NOMAD. See https://nomad-lab.eu for further info. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -"""An example reader implementation for the DataConverter.""" - -import math -import os -from importlib.metadata import PackageNotFoundError, version -from typing import Any, Tuple - -import numpy as np -import pandas as pd -import yaml - -from pynxtools import get_nexus_version, get_nexus_version_hash -from pynxtools.dataconverter.helpers import extract_atom_types -from pynxtools.dataconverter.readers.base.reader import BaseReader -from pynxtools.dataconverter.readers.ellips.mock import MockEllips -from pynxtools.dataconverter.readers.utils import FlattenSettings, flatten_and_replace - -DEFAULT_HEADER = {"sep": "\t", "skip": 0} - - -CONVERT_DICT = { - "unit": "@units", - "Beam_path": "BEAM_PATH[beam_path]", - "Detector": "DETECTOR[detector]", - "Data": "data_collection", - "Derived_parameters": "derived_parameters", - "Environment": "environment_conditions", - "Instrument": "INSTRUMENT[instrument]", - "Sample": "SAMPLE[sample]", - "Sample_stage": "sample_stage", - "User": "USER[user]", - "Instrument/angle_of_incidence": "INSTRUMENT[instrument]/angle_of_incidence", - "Instrument/angle_of_incidence/unit": "INSTRUMENT[instrument]/angle_of_incidence/@units", - "column_names": "data_collection/column_names", - "data_error": "data_collection/data_error", - "depolarization": "derived_parameters/depolarization", - "measured_data": "data_collection/measured_data", - "software": "software/program", - "data_software": "data_software/program", -} - -CONFIG_KEYS = [ - "colnames", - "derived_parameter_type", - "err-var", - "filename", - "parameters", - "plot_name", - "sep", - "skip", - "spectrum_type", - "spectrum_unit", -] - -REPLACE_NESTED = { - "Instrument/Beam_path": "INSTRUMENT[instrument]/BEAM_PATH[beam_path]", - "Env_Conditions": "INSTRUMENT[instrument]/sample_stage/environment_conditions", - "Instrument": "INSTRUMENT[instrument]", -} - - -def load_header(filename, default): - """load the yaml description file, and apply defaults from - the defalut dict for all keys not found from the file. - - Parameters: - filename: a yaml file containing the definitions - default_header: predefined default values - - Returns: - a dict containing the loaded information - """ - - with open(filename, "rt", encoding="utf8") as file: - header = yaml.safe_load(file) - - clean_header = header - - for key, value in default.items(): - if key not in clean_header: - clean_header[key] = value - - if "sep" in header: - clean_header["sep"] = header["sep"].encode("utf-8").decode("unicode_escape") - - return clean_header - - -def load_as_pandas_array(my_file, header): - """Load a CSV output file using the header dict. - Use the fields: colnames, skip and sep from the header - to instruct the csv reader about: - colnames -- column names - skip -- how many lines to skip - sep -- separator character in the file - - Parameters: - my_file string, file name - header dict header read from a yaml file - - Returns: - A pandas array is returned. - """ - required_parameters = ("colnames", "skip", "sep") - for required_parameter in required_parameters: - if required_parameter not in header: - raise ValueError("colnames, skip and sep are required header parameters!") - - if not os.path.isfile(my_file): - raise IOError(f"File not found error: {my_file}") - - whole_data = pd.read_csv( - my_file, - # use header = None and names to define custom column names - header=None, - names=header["colnames"], - skiprows=header["skip"], - delimiter=header["sep"], - ) - return whole_data - - -def populate_header_dict(file_paths): - """This function creates and populates the header dictionary - reading one or more yaml file. - - Parameters: - file_paths a list of file paths to be read - - Returns: - a dict merging the content of all files - """ - - header = DEFAULT_HEADER - - for file_path in file_paths: - if os.path.splitext(file_path)[1].lower() in [".yaml", ".yml"]: - header = load_header(file_path, header) - if "filename" not in header: - raise KeyError("filename is missing from", file_path) - data_file = os.path.join(os.path.split(file_path)[0], header["filename"]) - - # if the path is not right, try the path provided directly - if not os.path.isfile(data_file): - data_file = header["filename"] - - return header, data_file - - -def populate_template_dict(header, template): - """The template dictionary is then populated according to the content of header dictionary.""" - - if "calibration_filename" in header: - calibration = load_as_pandas_array(header["calibration_filename"], header) - for k in calibration: - header[f"calibration_{k}"] = calibration[k] - - eln_data_dict = flatten_and_replace( - FlattenSettings( - dic=header, - convert_dict=CONVERT_DICT, - replace_nested=REPLACE_NESTED, - ignore_keys=CONFIG_KEYS, - ) - ) - template.update(eln_data_dict) - - return template - - -def header_labels(header, unique_angles): - """Define data labels (column names)""" - - if header["Data"]["data_type"] == "Psi/Delta": - labels = {"Psi": [], "Delta": []} - elif header["Data"]["data_type"] == "tan(Psi)/cos(Delta)": - labels = {"tan(Psi)": [], "cos(Delta)": []} - else: - labels = {} - for i in range(1, 5): - for j in range(1, 5): - labels.update({f"m{i}{j}": []}) - - for angle in enumerate(unique_angles): - for key, val in labels.items(): - val.append(f"{key}_{int(angle[1])}deg") - - return labels - - -def mock_function(header): - """Mock ellipsometry data""" - - mock_header = MockEllips(header) - mock_header.mock_template(header) - - # Defining labels: - mock_angles = header["Instrument/angle_of_incidence"] - - labels = header_labels(header, mock_angles) - - for angle in enumerate(header["Instrument/angle_of_incidence"]): - for key, val in labels.items(): - val.append(f"{key}_{int(angle[1])}deg") - - return header, labels - - -def data_set_dims(whole_data): - """User defined variables to produce slices of the whole data set""" - energy = whole_data["type"].astype(str).values.tolist().count("E") - unique_angles, counts = np.unique( - whole_data["angle_of_incidence"].to_numpy()[0:energy].astype("int64"), - return_counts=True, - ) - - return unique_angles, counts - - -def parameter_array(whole_data, header, unique_angles, counts): - """User defined variables to produce slices of the whole data set""" - my_data_array = np.empty([len(unique_angles), 1, counts[0]]) - - block_idx = [np.int64(0)] - index = 0 - while index < len(whole_data): - index += counts[0] - block_idx.append(index) - - # derived parameters: - # takes last but one column from the right (skips empty columns): - data_index = 1 - temp = ( - whole_data[header["colnames"][-data_index]] - .to_numpy()[block_idx[-1] - 1] - .astype("float64") - ) - - while math.isnan(temp): - temp = ( - whole_data[header["colnames"][-data_index]] - .to_numpy()[block_idx[-1] - 1] - .astype("float64") - ) - data_index += 1 - - for index in range(len(unique_angles)): - my_data_array[index, 0, :] = ( - whole_data[header["colnames"][-data_index]] - .to_numpy()[block_idx[index + 6] : block_idx[index + 7]] - .astype("float64") - ) - - return my_data_array - - -def data_array(whole_data, unique_angles, counts, labels): - """User defined variables to produce slices of the whole data set""" - my_data_array = np.empty([len(unique_angles), len(labels), counts[0]]) - my_error_array = np.empty([len(unique_angles), len(labels), counts[0]]) - - block_idx = [np.int64(0)] - index = 0 - while index < len(whole_data): - index += counts[0] - block_idx.append(index) - - data_index = 0 - for key, val in labels.items(): - for index in range(len(val)): - my_data_array[index, data_index, :] = ( - whole_data[key] - .to_numpy()[block_idx[index] : block_idx[index + 1]] - .astype("float64") - ) - data_index += 1 - - data_index = 0 - for key, val in labels.items(): - for index in range(len(val)): - my_error_array[index, data_index, :] = ( - whole_data[f"err.{key}"] - .to_numpy()[block_idx[index] : block_idx[index + 1]] - .astype("float64") - ) - data_index += 1 - - return my_data_array, my_error_array - - -class EllipsometryReader(BaseReader): - """An example reader implementation for the DataConverter. - Importing metadata from the yaml file based on the last - two parts of the key in the application definition. - """ - - # Whitelist for the NXDLs that the reader supports and can process - supported_nxdls = ["NXellipsometry"] - - @staticmethod - def populate_header_dict_with_datasets(file_paths, is_mock=False): - """This is an ellipsometry-specific processing of data. - - The procedure is the following: - - the header dictionary is initialized reading a yaml file - - the data are read from header["filename"] and saved in a pandas object - - an array is shaped according to application definition in a 5D array (numpy array) - - the array is saved in a HDF5 file as a dataset - - virtual datasets instances are created in the header dictionary, - referencing to data in the created HDF5 file. - - the header is finally returned, ready to be parsed in the final template dictionary - - """ - header, data_file = populate_header_dict(file_paths) - - if os.path.isfile(data_file): - whole_data = load_as_pandas_array(data_file, header) - else: - # this we have tried, we should throw an error... - whole_data = load_as_pandas_array(header["filename"], header) - - unique_angles, counts = data_set_dims(whole_data) - - labels = header_labels(header, unique_angles) - - header["measured_data"], header["data_error"] = data_array( - whole_data, unique_angles, counts, labels - ) - header[header["derived_parameter_type"]] = parameter_array( - whole_data, header, unique_angles, counts - ) - - spectrum_type = header["Data"]["spectrum_type"] - if spectrum_type not in header["colnames"]: - print("ERROR: spectrum type not found in 'colnames'") - header[f"data_collection/NAME_spectrum[{spectrum_type}_spectrum]"] = ( - whole_data[spectrum_type].to_numpy()[0 : counts[0]].astype("float64") - ) - - def write_scan_axis(name: str, values: list, units: str): - base_path = f"Env_Conditions/PARAMETER[{name}]" - header[f"{base_path}/values"] = values - header[f"{base_path}/values/@units"] = units - header[f"{base_path}/number_of_parameters"] = len(values) - header[f"{base_path}/number_of_parameters/@units"] = "" - header[f"{base_path}/parameter_type"] = name - - header["Instrument/angle_of_incidence"] = unique_angles - for axis in ["detection_angle", "incident_angle"]: - write_scan_axis(axis, unique_angles, "degree") - - # Create mocked ellipsometry data template: - if is_mock: - header, labels = mock_function(header) - - if "atom_types" not in header["Sample"]: - header["atom_types"] = extract_atom_types( - header["Sample"]["chemical_formula"] - ) - - return header, labels - - def read( - self, - template: dict = None, - file_paths: Tuple[str] = None, - objects: Tuple[Any] = None, - is_mock: bool = False, - ) -> dict: - """Reads data from given file and returns a filled template dictionary. - - A handlings of virtual datasets is implemented: - - virtual dataset are created inside the final NeXus file. - - The template entry is filled with a dictionary containing the following keys: - - link: the path of the external data file and the path of desired dataset inside it - - shape: numpy array slice object (according to array slice notation) - """ - - if not file_paths: - raise IOError("No input files were given to Ellipsometry Reader.") - - # The header dictionary is filled with entries. - header, labels = EllipsometryReader.populate_header_dict_with_datasets( - file_paths, is_mock - ) - - data_list = [] - for val in labels.values(): - data_list.append(val) - - # The template dictionary is filled - template = populate_template_dict(header, template) - - spectrum_type = header["Data"]["spectrum_type"] - if header["Data"]["spectrum_unit"] == "Angstroms": - spectrum_unit = "angstrom" - else: - spectrum_unit = header["Data"]["spectrum_unit"] - # MK:: Carola, Ron, Flo, Tamas, Sandor refactor the above-mentioned construct - # there has to be a unit parsing control logic already at the level of this reader - # because test-data.data has improper units like Angstroms or degrees - # the fix above prevents that these incorrect units are get just blindly carried - # over into the nxs file and thus causing nomas to fail - template[f"/ENTRY[entry]/plot/AXISNAME[{spectrum_type}]"] = { - "link": f"/entry/data_collection/{spectrum_type}_spectrum" - } - template[ - f"/ENTRY[entry]/data_collection/NAME_spectrum[{spectrum_type}_spectrum]/@units" - ] = spectrum_unit - template[ - f"/ENTRY[entry]/data_collection/NAME_spectrum[{spectrum_type}_spectrum]/@long_name" - ] = f"{spectrum_type} ({spectrum_unit})" - plot_name = header["plot_name"] - for dindx in range(0, len(labels.keys())): - for index, key in enumerate(data_list[dindx]): - template[f"/ENTRY[entry]/plot/DATA[{key}]"] = { - "link": "/entry/data_collection/measured_data", - "shape": np.index_exp[index, dindx, :], - } - # MK:: Carola, Ron, Flo, Tamas, Sandor refactor the following line - # using a proper unit parsing logic - template[f"/ENTRY[entry]/plot/DATA[{key}]/@units"] = "degree" - if dindx == 0 and index == 0: - template[f"/ENTRY[entry]/plot/DATA[{key}]/@long_name"] = ( - f"{plot_name} (degree)" - ) - template[f"/ENTRY[entry]/plot/DATA[{key}_errors]"] = { - "link": "/entry/data_collection/data_error", - "shape": np.index_exp[index, dindx, :], - } - # MK:: Carola, Ron, Flo, Tamas, Sandor refactor the following line - template[f"/ENTRY[entry]/plot/DATA[{key}_errors]/@units"] = "degree" - - # Define default plot showing Psi and Delta at all angles: - template["/@default"] = "entry" - template["/ENTRY[entry]/@default"] = "plot" - template["/ENTRY[entry]/plot/@signal"] = f"{data_list[0][0]}" - template["/ENTRY[entry]/plot/@axes"] = spectrum_type - template["/ENTRY[entry]/plot/title"] = plot_name - - # if len(data_list[0]) > 1: - template["/ENTRY[entry]/plot/@auxiliary_signals"] = data_list[0][1:] - for index in range(1, len(data_list)): - template["/ENTRY[entry]/plot/@auxiliary_signals"] += data_list[index] - - template["/ENTRY[entry]/definition"] = "NXellipsometry" - template["/ENTRY[entry]/definition/@url"] = ( - "https://github.com/FAIRmat-NFDI/nexus_definitions/" - f"blob/{get_nexus_version_hash()}/contributed_definitions/NXellipsometry.nxdl.xml" - ) - template["/ENTRY[entry]/definition/@version"] = get_nexus_version() - template["/ENTRY[entry]/program_name"] = "pynxtools" - try: - template["/ENTRY[entry]/program_name/@version"] = version("pynxtools") - except PackageNotFoundError: - pass - template["/ENTRY[entry]/program_name/@url"] = ( - "https://github.com/FAIRmat-NFDI/pynxtools" - ) - - return template - - -# This has to be set to allow the convert script to use this reader. Set it to "MyDataReader". -READER = EllipsometryReader diff --git a/tests/data/dataconverter/readers/ellips/README.md b/tests/data/dataconverter/readers/ellips/README.md deleted file mode 100644 index 02f7ce96f..000000000 --- a/tests/data/dataconverter/readers/ellips/README.md +++ /dev/null @@ -1,15 +0,0 @@ -# Ellipsometry example - -As an example, a test data set (SiO2 on Si measured with a commercial ellipsometer) is provided. The metadata relevant for this example experiment are structured according to the application definition **NXellipsometry** (the corresponding NXDL file can be found ![here](https://github.com/FAIRmat-Experimental/nexus_definitions/blob/fairmat-ellips/contributed_definitions/NXellipsometry.nxdl.xml)). - -Files in this directory: -- Data file: test-data.dat -- Metadata file: test.yaml -- Notebook with instructions: ELLIPSOMETRY.NeXus.READER.EXAMPLE.02.ipynb -- NeXus file: ellips.test.nxs (will be created if running the notebook) - -## Instructions and notebook -The notebook ELLIPSOMETRY.NeXus.READER.EXAMPLE.02.ipynb contains instructions on how to install Jupyter Lab and the required packages needed to run this example. Furthermore, it is explained how to run the ellipsometry reader and how to create a NeXus file, which then can be inspected within the notebook. - -## Data analysis example -The above test data are analyzed in this ![example](https://gitlab.mpcdf.mpg.de/nomad-lab/nomad-remote-tools-hub/-/tree/develop/docker/ellips/example) using the analysis tool ![pyElli](https://pyelli.readthedocs.io). Please have a look at the notebook ![Ellipsometry workflow example.ipynb](https://gitlab.mpcdf.mpg.de/nomad-lab/nomad-remote-tools-hub/-/blob/develop/docker/ellips/example/Ellipsometry%20workflow%20example.ipynb) for detailed instructions on how to analyze the data, which are being loaded from the NeXus file. diff --git a/tests/data/dataconverter/readers/ellips/eln_data.yaml b/tests/data/dataconverter/readers/ellips/eln_data.yaml deleted file mode 100644 index 785e8e1e6..000000000 --- a/tests/data/dataconverter/readers/ellips/eln_data.yaml +++ /dev/null @@ -1,69 +0,0 @@ -Data: - data_identifier: 1 - data_software: WVASE - data_software/@url: https://www.jawoollam.com/ellipsometry-software/wvase - data_software/version: '3.882' - data_type: Psi/Delta - spectrum_type: wavelength - spectrum_unit: Angstroms -Instrument: - Beam_path: - Detector: - count_time: - unit: s - value: 1.0 - detector_type: CCD spectrometer - focussing_probes: - angular_spread: - unit: rad - value: 0.2 - data_correction: false - light_source: - source_type: arc lamp - rotating_element: - revolutions: 50.0 - Sample_stage: - environment_conditions: - medium: air - stage_type: manual stage - angle_of_incidence/@unit: degrees - calibration_status: no calibration - company: J. A. Woollam Co. - ellipsometer_type: dual compensator - model: RC2 - model/@version: 0.0.1 - rotating_element_type: compensator (source side) - software: CompleteEASE - software/@url: https://www.jawoollam.com/ellipsometry-software/completeease - software/version: '6.37' -Sample: - atom_types: Si, O - backside_roughness: false - chemical_formula: SiO2 - layer_structure: 2nm SiO2 on Si - sample_history: Commercially purchased sample - sample_name: 2nm SiO2 on Si - sample_type: multi layer - substrate: Si -User: - address: Zum Großen Windkanal 2, 12489 Berlin, Germany - affiliation: Humboldt-Universität zu Berlin - email: surname.name@physik.hu-berlin.de - name: Name Surname -colnames: -- type -- wavelength -- angle_of_incidence -- Psi -- Delta -- err.Psi -- err.Delta -derived_parameter_type: depolarization -experiment_description: RC2 scan on 2nm SiO2 on Si in air -experiment_identifier: exp-ID -experiment_type: NIR-Vis-UV spectroscopic ellipsometry -filename: test-data.dat -plot_name: Psi and Delta -sep: \t -skip: 3 -start_time: '2022-01-27T03:35:00+00:00' \ No newline at end of file diff --git a/tests/data/dataconverter/readers/ellips/test-data.dat b/tests/data/dataconverter/readers/ellips/test-data.dat deleted file mode 100644 index 211871453..000000000 --- a/tests/data/dataconverter/readers/ellips/test-data.dat +++ /dev/null @@ -1,9795 +0,0 @@ -2nm SiO2 on Si on RC2 -VASEmethod[EllipsometerType=4 , CompleteEASE=6.37, AcqTime=15.000, ZoneAve=1, Acq. Parameters=DEFAULT.parms,WinCorrected=1] -Angstroms -E 1930.000000 50.000000 40.014217 142.127655 0.008585 0.034774 -E 1940.000000 50.000000 40.026409 142.307449 0.007827 0.031627 -E 1950.000000 50.000000 40.031204 142.483231 0.007221 0.029106 -E 1960.000000 50.000000 40.045902 142.679901 0.006813 0.027399 -E 1970.000000 50.000000 40.065468 142.866608 0.006478 0.025995 -E 1980.000000 50.000000 40.077728 143.102463 0.006224 0.024925 -E 1990.000000 50.000000 40.080673 143.409317 0.006016 0.024045 -E 2000.000000 50.000000 40.082367 143.746017 0.005829 0.023258 -E 2010.000000 50.000000 40.072388 143.990952 0.005649 0.022496 -E 2020.000000 50.000000 40.073170 144.279099 0.005475 0.021767 -E 2030.000000 50.000000 40.069405 144.611435 0.005311 0.021084 -E 2040.000000 50.000000 40.066757 144.883820 0.005150 0.020417 -E 2050.000000 50.000000 40.061028 145.150055 0.004993 0.019760 -E 2060.000000 50.000000 40.055706 145.396118 0.004843 0.019128 -E 2070.000000 50.000000 40.036533 145.661514 0.004703 0.018531 -E 2080.000000 50.000000 40.017166 145.896454 0.004572 0.017967 -E 2090.000000 50.000000 40.025864 146.114670 0.004443 0.017414 -E 2100.000000 50.000000 40.028156 146.370560 0.004322 0.016892 -E 2110.000000 50.000000 40.012478 146.607407 0.004227 0.016464 -E 2120.000000 50.000000 40.007420 146.799438 0.004136 0.016055 -E 2130.000000 50.000000 40.005928 147.055832 0.004045 0.015653 -E 2140.000000 50.000000 40.001190 147.294281 0.003968 0.015308 -E 2150.000000 50.000000 39.999153 147.531891 0.003896 0.014983 -E 2160.000000 50.000000 39.998287 147.757156 0.003830 0.014690 -E 2170.000000 50.000000 39.997860 147.958969 0.003769 0.014416 -E 2180.000000 50.000000 40.001450 148.183533 0.003709 0.014154 -E 2190.000000 50.000000 39.995445 148.426010 0.003648 0.013888 -E 2200.000000 50.000000 39.998291 148.655228 0.003589 0.013635 -E 2210.000000 50.000000 39.994427 148.901932 0.003533 0.013393 -E 2220.000000 50.000000 39.996326 149.173447 0.003476 0.013150 -E 2230.000000 50.000000 40.008663 149.415985 0.003422 0.012924 -E 2240.000000 50.000000 39.993584 149.634827 0.003373 0.012715 -E 2250.000000 50.000000 39.976269 149.894104 0.003326 0.012516 -E 2260.000000 50.000000 39.961422 150.199326 0.003285 0.012341 -E 2270.000000 50.000000 39.936958 150.453156 0.003245 0.012170 -E 2280.000000 50.000000 39.887856 150.692032 0.003205 0.012001 -E 2290.000000 50.000000 39.843830 150.939880 0.003166 0.011832 -E 2300.000000 50.000000 39.790047 151.197968 0.003131 0.011682 -E 2310.000000 50.000000 39.718216 151.398865 0.003097 0.011536 -E 2320.000000 50.000000 39.650379 151.570877 0.003065 0.011396 -E 2330.000000 50.000000 39.578545 151.704727 0.003040 0.011282 -E 2340.000000 50.000000 39.516590 151.776459 0.003016 0.011177 -E 2350.000000 50.000000 39.465984 151.847092 0.002991 0.011067 -E 2360.000000 50.000000 39.431660 151.908035 0.002969 0.010968 -E 2370.000000 50.000000 39.422081 151.941544 0.002946 0.010871 -E 2380.000000 50.000000 39.417023 151.982651 0.002923 0.010774 -E 2390.000000 50.000000 39.422253 152.004868 0.002904 0.010696 -E 2400.000000 50.000000 39.452198 152.051620 0.002887 0.010625 -E 2410.000000 50.000000 39.490494 152.132095 0.002870 0.010556 -E 2420.000000 50.000000 39.535706 152.168243 0.002854 0.010491 -E 2430.000000 50.000000 39.580338 152.246582 0.002844 0.010446 -E 2440.000000 50.000000 39.634945 152.360504 0.002832 0.010399 -E 2450.000000 50.000000 39.692410 152.490509 0.002822 0.010354 -E 2460.000000 50.000000 39.755169 152.634766 0.002814 0.010319 -E 2470.000000 50.000000 39.813477 152.760513 0.002807 0.010287 -E 2480.000000 50.000000 39.871521 152.897903 0.002800 0.010256 -E 2490.000000 50.000000 39.936161 153.070190 0.002796 0.010234 -E 2500.000000 50.000000 39.989059 153.222900 0.002794 0.010223 -E 2510.000000 50.000000 40.051128 153.431931 0.002795 0.010219 -E 2520.000000 50.000000 40.117176 153.628113 0.002793 0.010206 -E 2530.000000 50.000000 40.174896 153.816116 0.002795 0.010208 -E 2540.000000 50.000000 40.230507 154.022125 0.002803 0.010232 -E 2550.000000 50.000000 40.291935 154.220810 0.002811 0.010253 -E 2560.000000 50.000000 40.348503 154.457199 0.002821 0.010285 -E 2570.000000 50.000000 40.409046 154.663589 0.002832 0.010321 -E 2580.000000 50.000000 40.468143 154.894424 0.002846 0.010363 -E 2590.000000 50.000000 40.519966 155.147614 0.002861 0.010413 -E 2600.000000 50.000000 40.567379 155.406998 0.002880 0.010475 -E 2610.000000 50.000000 40.617954 155.660889 0.002901 0.010543 -E 2620.000000 50.000000 40.666866 155.911163 0.002922 0.010612 -E 2630.000000 50.000000 40.725704 156.188797 0.002943 0.010685 -E 2640.000000 50.000000 40.780777 156.469666 0.002967 0.010766 -E 2650.000000 50.000000 40.836395 156.748627 0.002995 0.010861 -E 2660.000000 50.000000 40.883255 157.057495 0.003026 0.010967 -E 2670.000000 50.000000 40.922371 157.383133 0.003058 0.011076 -E 2680.000000 50.000000 40.966640 157.706467 0.003089 0.011183 -E 2690.000000 50.000000 40.998135 158.048111 0.003121 0.011288 -E 2700.000000 50.000000 41.032158 158.406967 0.003152 0.011395 -E 2710.000000 50.000000 41.058334 158.775909 0.003188 0.011518 -E 2720.000000 50.000000 41.071541 159.117783 0.003224 0.011640 -E 2730.000000 50.000000 41.081215 159.480453 0.003257 0.011751 -E 2740.000000 50.000000 41.071716 159.856735 0.003293 0.011870 -E 2750.000000 50.000000 41.051399 160.225784 0.003328 0.011986 -E 2760.000000 50.000000 41.031219 160.599701 0.003365 0.012111 -E 2770.000000 50.000000 40.996609 160.953598 0.003414 0.012274 -E 2780.000000 50.000000 40.965870 161.285217 0.003444 0.012370 -E 2790.000000 50.000000 40.932110 161.638748 0.003470 0.012452 -E 2800.000000 50.000000 40.886234 161.993454 0.003500 0.012548 -E 2810.000000 50.000000 40.836842 162.321747 0.003534 0.012659 -E 2820.000000 50.000000 40.789928 162.643646 0.003571 0.012779 -E 2830.000000 50.000000 40.746315 162.951172 0.003610 0.012905 -E 2840.000000 50.000000 40.697300 163.257889 0.003643 0.013011 -E 2850.000000 50.000000 40.641205 163.590118 0.003685 0.013151 -E 2860.000000 50.000000 40.589268 163.929962 0.003729 0.013293 -E 2870.000000 50.000000 40.521923 164.278595 0.003769 0.013421 -E 2880.000000 50.000000 40.420925 164.634720 0.003817 0.013577 -E 2890.000000 50.000000 40.328045 164.954636 0.003873 0.013757 -E 2900.000000 50.000000 40.215271 165.289719 0.003929 0.013941 -E 2910.000000 50.000000 40.085327 165.590683 0.003987 0.014125 -E 2920.000000 50.000000 39.949558 165.848618 0.004047 0.014318 -E 2930.000000 50.000000 39.814732 166.057159 0.004105 0.014503 -E 2940.000000 50.000000 39.681282 166.243378 0.004165 0.014694 -E 2950.000000 50.000000 39.559025 166.403976 0.004224 0.014881 -E 2960.000000 50.000000 39.424557 166.545700 0.004281 0.015061 -E 2970.000000 50.000000 39.284615 166.702316 0.004339 0.015242 -E 2980.000000 50.000000 39.176281 166.800934 0.004400 0.015438 -E 2990.000000 50.000000 39.070713 166.863754 0.004461 0.015633 -E 3000.000000 50.000000 38.975414 166.938889 0.004524 0.015836 -E 3010.000000 50.000000 38.878563 167.028732 0.004582 0.016020 -E 3020.000000 50.000000 38.785034 167.112335 0.004641 0.016210 -E 3030.000000 50.000000 38.701351 167.190033 0.004706 0.016422 -E 3040.000000 50.000000 38.622021 167.238129 0.004768 0.016623 -E 3050.000000 50.000000 38.540707 167.255814 0.004840 0.016855 -E 3060.000000 50.000000 38.473972 167.313309 0.004910 0.017083 -E 3070.000000 50.000000 38.416367 167.336746 0.004974 0.017294 -E 3080.000000 50.000000 38.352753 167.337173 0.005046 0.017531 -E 3090.000000 50.000000 38.296818 167.415207 0.005117 0.017763 -E 3100.000000 50.000000 38.234535 167.441376 0.005179 0.017965 -E 3110.000000 50.000000 38.183598 167.477051 0.005243 0.018175 -E 3120.000000 50.000000 38.136162 167.540756 0.005313 0.018406 -E 3130.000000 50.000000 38.092407 167.538284 0.005372 0.018598 -E 3140.000000 50.000000 38.067379 167.591751 0.005435 0.018811 -E 3150.000000 50.000000 38.038094 167.658295 0.005501 0.019030 -E 3160.000000 50.000000 37.972755 167.700485 0.005564 0.019233 -E 3170.000000 50.000000 37.940628 167.764511 0.005628 0.019443 -E 3180.000000 50.000000 37.922256 167.802231 0.005690 0.019650 -E 3190.000000 50.000000 37.879593 167.853348 0.005761 0.019885 -E 3200.000000 50.000000 37.864590 167.880615 0.005822 0.020089 -E 3210.000000 50.000000 37.832973 167.882980 0.005892 0.020323 -E 3220.000000 50.000000 37.801411 167.955002 0.005960 0.020549 -E 3230.000000 50.000000 37.786137 168.017609 0.006024 0.020762 -E 3240.000000 50.000000 37.760193 168.072266 0.006087 0.020973 -E 3250.000000 50.000000 37.734486 168.142548 0.006147 0.021171 -E 3260.000000 50.000000 37.722507 168.166138 0.006246 0.021506 -E 3270.000000 50.000000 37.717068 168.195221 0.006377 0.021952 -E 3280.000000 50.000000 37.697788 168.251404 0.006512 0.022414 -E 3290.000000 50.000000 37.679295 168.307480 0.006618 0.022770 -E 3300.000000 50.000000 37.667194 168.353973 0.006715 0.023097 -E 3310.000000 50.000000 37.655422 168.415344 0.006815 0.023438 -E 3320.000000 50.000000 37.650436 168.450485 0.006888 0.023685 -E 3330.000000 50.000000 37.617416 168.545044 0.006947 0.023879 -E 3340.000000 50.000000 37.599232 168.592285 0.007002 0.024062 -E 3350.000000 50.000000 37.613369 168.608994 0.007046 0.024212 -E 3360.000000 50.000000 37.604439 168.624405 0.007099 0.024388 -E 3370.000000 50.000000 37.584930 168.719299 0.007153 0.024568 -E 3380.000000 50.000000 37.575653 168.810394 0.007181 0.024660 -E 3390.000000 50.000000 37.577919 168.860031 0.007183 0.024664 -E 3400.000000 50.000000 37.574230 168.908295 0.007188 0.024676 -E 3410.000000 50.000000 37.567123 168.965469 0.007210 0.024749 -E 3420.000000 50.000000 37.570904 169.022476 0.007268 0.024944 -E 3430.000000 50.000000 37.571522 169.074249 0.007324 0.025134 -E 3440.000000 50.000000 37.579929 169.119156 0.007362 0.025266 -E 3450.000000 50.000000 37.588264 169.189346 0.007420 0.025461 -E 3460.000000 50.000000 37.608612 169.275452 0.007477 0.025659 -E 3470.000000 50.000000 37.614811 169.341476 0.007538 0.025869 -E 3480.000000 50.000000 37.603127 169.429504 0.007593 0.026051 -E 3490.000000 50.000000 37.625416 169.549103 0.007646 0.026234 -E 3500.000000 50.000000 37.648170 169.580002 0.007700 0.026422 -E 3510.000000 50.000000 37.663067 169.582596 0.007758 0.026622 -E 3520.000000 50.000000 37.691402 169.687897 0.007810 0.026803 -E 3530.000000 50.000000 37.723637 169.808685 0.007859 0.026976 -E 3540.000000 50.000000 37.754620 169.880295 0.007922 0.027195 -E 3550.000000 50.000000 37.797958 169.933289 0.007974 0.027379 -E 3560.000000 50.000000 37.849831 169.988098 0.008019 0.027542 -E 3570.000000 50.000000 37.891800 170.134659 0.008071 0.027726 -E 3580.000000 50.000000 37.922565 170.336197 0.008112 0.027872 -E 3590.000000 50.000000 37.982803 170.505707 0.008158 0.028038 -E 3600.000000 50.000000 38.024326 170.662445 0.008203 0.028199 -E 3610.000000 50.000000 38.081615 170.906219 0.008243 0.028348 -E 3620.000000 50.000000 38.135853 171.112473 0.008268 0.028442 -E 3630.000000 50.000000 38.168762 171.337967 0.008298 0.028550 -E 3640.000000 50.000000 38.186531 171.640808 0.008350 0.028732 -E 3650.000000 50.000000 38.216156 171.916595 0.008406 0.028926 -E 3660.000000 50.000000 38.236397 172.126495 0.008392 0.028883 -E 3670.000000 50.000000 38.225945 172.403900 0.008342 0.028708 -E 3680.000000 50.000000 38.210796 172.800613 0.008327 0.028650 -E 3690.000000 50.000000 38.197086 173.133560 0.008345 0.028707 -E 3700.000000 50.000000 38.148277 173.383606 0.008430 0.028991 -E 3710.000000 50.000000 38.095837 173.670364 0.008547 0.029380 -E 3720.000000 50.000000 38.032112 173.936890 0.008596 0.029535 -E 3730.000000 50.000000 37.943707 174.215485 0.008676 0.029793 -E 3740.000000 50.000000 37.874119 174.512573 0.008747 0.030020 -E 3750.000000 50.000000 37.790680 174.736328 0.008750 0.030015 -E 3760.000000 50.000000 37.704865 174.940979 0.008737 0.029950 -E 3770.000000 50.000000 37.596062 175.179947 0.008757 0.029995 -E 3780.000000 50.000000 37.498409 175.373993 0.008721 0.029854 -E 3790.000000 50.000000 37.405220 175.546112 0.008663 0.029635 -E 3800.000000 50.000000 37.297680 175.649109 0.008680 0.029671 -E 3810.000000 50.000000 37.188995 175.770126 0.008774 0.029968 -E 3820.000000 50.000000 37.098171 175.969315 0.008833 0.030152 -E 3830.000000 50.000000 37.014507 176.030502 0.008786 0.029973 -E 3840.000000 50.000000 36.924168 176.103317 0.008803 0.030013 -E 3850.000000 50.000000 36.822502 176.236786 0.008897 0.030311 -E 3860.000000 50.000000 36.713802 176.322525 0.008860 0.030164 -E 3870.000000 50.000000 36.646366 176.380890 0.008741 0.029745 -E 3880.000000 50.000000 36.579651 176.409058 0.008609 0.029281 -E 3890.000000 50.000000 36.502338 176.418198 0.008638 0.029366 -E 3900.000000 50.000000 36.425442 176.480194 0.008889 0.030202 -E 3910.000000 50.000000 36.363190 176.581223 0.009154 0.031090 -E 3920.000000 50.000000 36.286407 176.644211 0.009107 0.030913 -E 3930.000000 50.000000 36.201965 176.687149 0.008970 0.030434 -E 3940.000000 50.000000 36.144917 176.818680 0.008858 0.030042 -E 3950.000000 50.000000 36.085236 176.845322 0.008833 0.029945 -E 3960.000000 50.000000 36.016956 176.789017 0.008931 0.030262 -E 3970.000000 50.000000 35.941341 176.827469 0.009030 0.030582 -E 3980.000000 50.000000 35.879307 176.878983 0.008910 0.030164 -E 3990.000000 50.000000 35.826954 176.900101 0.008779 0.029710 -E 4000.000000 50.000000 35.776100 176.970474 0.008852 0.029949 -E 4010.000000 50.000000 35.719902 176.991760 0.009057 0.030632 -E 4020.000000 50.000000 35.655972 177.043228 0.009194 0.031082 -E 4030.000000 50.000000 35.577518 177.070251 0.009218 0.031146 -E 4040.000000 50.000000 35.545563 177.065491 0.009139 0.030876 -E 4050.000000 50.000000 35.495491 177.068817 0.008949 0.030224 -E 4060.000000 50.000000 35.432846 177.109039 0.008766 0.029594 -E 4070.000000 50.000000 35.403286 177.165970 0.008794 0.029685 -E 4080.000000 50.000000 35.355564 177.156006 0.009055 0.030555 -E 4090.000000 50.000000 35.301334 177.172852 0.009267 0.031261 -E 4100.000000 50.000000 35.237083 177.218109 0.009303 0.031370 -E 4110.000000 50.000000 35.188622 177.313171 0.009306 0.031371 -E 4120.000000 50.000000 35.170624 177.306259 0.009198 0.031005 -E 4130.000000 50.000000 35.104034 177.247772 0.008937 0.030113 -E 4140.000000 50.000000 35.043255 177.281006 0.008836 0.029762 -E 4150.000000 50.000000 35.005600 177.321503 0.008986 0.030261 -E 4160.000000 50.000000 34.955517 177.313873 0.009074 0.030548 -E 4170.000000 50.000000 34.916336 177.375992 0.009057 0.030485 -E 4180.000000 50.000000 34.901669 177.407135 0.009066 0.030514 -E 4190.000000 50.000000 34.863346 177.399170 0.009170 0.030856 -E 4200.000000 50.000000 34.817463 177.434555 0.009197 0.030940 -E 4210.000000 50.000000 34.781055 177.452011 0.008966 0.030155 -E 4220.000000 50.000000 34.733986 177.486618 0.008679 0.029185 -E 4230.000000 50.000000 34.682716 177.503265 0.008520 0.028640 -E 4240.000000 50.000000 34.650242 177.496902 0.008512 0.028607 -E 4250.000000 50.000000 34.633354 177.511581 0.008803 0.029584 -E 4260.000000 50.000000 34.596397 177.557800 0.009148 0.030738 -E 4270.000000 50.000000 34.553188 177.572067 0.009123 0.030648 -E 4280.000000 50.000000 34.513779 177.548859 0.008859 0.029754 -E 4290.000000 50.000000 34.475517 177.554794 0.008942 0.030026 -E 4300.000000 50.000000 34.435345 177.582626 0.009007 0.030240 -E 4310.000000 50.000000 34.421329 177.605835 0.008931 0.029982 -E 4320.000000 50.000000 34.376854 177.623672 0.009073 0.030452 -E 4330.000000 50.000000 34.334705 177.668076 0.009217 0.030928 -E 4340.000000 50.000000 34.314816 177.691925 0.009004 0.030212 -E 4350.000000 50.000000 34.284607 177.628281 0.008911 0.029897 -E 4360.000000 50.000000 34.273514 177.663055 0.009046 0.030349 -E 4370.000000 50.000000 34.238892 177.723129 0.009050 0.030356 -E 4380.000000 50.000000 34.181824 177.708572 0.009005 0.030195 -E 4390.000000 50.000000 34.145939 177.672760 0.008957 0.030031 -E 4400.000000 50.000000 34.116222 177.686172 0.008919 0.029899 -E 4410.000000 50.000000 34.100842 177.728271 0.008781 0.029435 -E 4420.000000 50.000000 34.075222 177.756226 0.008499 0.028484 -E 4430.000000 50.000000 34.050308 177.717880 0.008465 0.028369 -E 4440.000000 50.000000 34.015442 177.758835 0.008547 0.028640 -E 4450.000000 50.000000 33.988548 177.773682 0.008501 0.028481 -E 4460.000000 50.000000 33.954948 177.788895 0.008446 0.028292 -E 4470.000000 50.000000 33.934479 177.764709 0.008501 0.028474 -E 4480.000000 50.000000 33.914028 177.856125 0.008548 0.028629 -E 4490.000000 50.000000 33.878651 177.794785 0.008543 0.028609 -E 4500.000000 50.000000 33.854729 177.758743 0.008491 0.028434 -E 4510.000000 50.000000 33.820492 177.840668 0.008502 0.028463 -E 4520.000000 50.000000 33.776886 177.878494 0.008549 0.028616 -E 4530.000000 50.000000 33.759460 177.852875 0.008536 0.028569 -E 4540.000000 50.000000 33.735455 177.832672 0.008503 0.028457 -E 4550.000000 50.000000 33.714733 177.822540 0.008458 0.028306 -E 4560.000000 50.000000 33.704601 177.872452 0.008378 0.028035 -E 4570.000000 50.000000 33.678074 177.917725 0.008258 0.027632 -E 4580.000000 50.000000 33.636559 177.929611 0.008084 0.027044 -E 4590.000000 50.000000 33.626522 177.889389 0.007945 0.026581 -E 4600.000000 50.000000 33.593567 177.907730 0.008080 0.027029 -E 4610.000000 50.000000 33.553200 177.946259 0.008294 0.027738 -E 4620.000000 50.000000 33.555958 177.925949 0.008352 0.027933 -E 4630.000000 50.000000 33.526741 177.933365 0.008169 0.027319 -E 4640.000000 50.000000 33.501175 177.989868 0.007871 0.026321 -E 4650.000000 50.000000 33.486938 177.987671 0.007766 0.025970 -E 4660.000000 50.000000 33.454765 177.968781 0.007875 0.026329 -E 4670.000000 50.000000 33.423378 177.969543 0.008038 0.026870 -E 4680.000000 50.000000 33.424896 177.995758 0.008088 0.027038 -E 4690.000000 50.000000 33.397842 177.987778 0.008123 0.027155 -E 4700.000000 50.000000 33.370041 178.043732 0.008289 0.027704 -E 4710.000000 50.000000 33.371391 177.989059 0.008410 0.028110 -E 4720.000000 50.000000 33.349464 177.979721 0.008320 0.027810 -E 4730.000000 50.000000 33.303574 178.023407 0.008160 0.027270 -E 4740.000000 50.000000 33.277538 178.056015 0.008104 0.027080 -E 4750.000000 50.000000 33.270405 178.081085 0.008131 0.027170 -E 4760.000000 50.000000 33.254078 178.071442 0.008103 0.027074 -E 4770.000000 50.000000 33.221539 178.061813 0.008048 0.026887 -E 4780.000000 50.000000 33.193127 178.070435 0.007979 0.026654 -E 4790.000000 50.000000 33.195091 178.042831 0.007900 0.026393 -E 4800.000000 50.000000 33.166759 178.091614 0.007892 0.026364 -E 4810.000000 50.000000 33.138008 178.077972 0.007881 0.026324 -E 4820.000000 50.000000 33.122341 178.086288 0.007885 0.026338 -E 4830.000000 50.000000 33.094799 178.076431 0.007863 0.026261 -E 4840.000000 50.000000 33.079639 178.083008 0.007773 0.025960 -E 4850.000000 50.000000 33.052357 178.074081 0.007426 0.024798 -E 4860.000000 50.000000 33.053864 178.116150 0.006531 0.021810 -E 4870.000000 50.000000 33.058132 178.156006 0.006205 0.020724 -E 4880.000000 50.000000 33.017319 178.120804 0.007143 0.023852 -E 4890.000000 50.000000 33.003746 178.134476 0.007605 0.025395 -E 4900.000000 50.000000 32.984283 178.176758 0.007594 0.025357 -E 4910.000000 50.000000 32.978283 178.214996 0.007525 0.025128 -E 4920.000000 50.000000 32.956657 178.199829 0.007550 0.025209 -E 4930.000000 50.000000 32.933525 178.173294 0.007532 0.025147 -E 4940.000000 50.000000 32.913940 178.151413 0.007478 0.024967 -E 4950.000000 50.000000 32.911964 178.157059 0.007560 0.025242 -E 4960.000000 50.000000 32.881531 178.161972 0.007611 0.025408 -E 4970.000000 50.000000 32.858822 178.179855 0.007557 0.025225 -E 4980.000000 50.000000 32.864136 178.176926 0.007472 0.024945 -E 4990.000000 50.000000 32.834663 178.213440 0.007385 0.024651 -E 5000.000000 50.000000 32.815258 178.205078 0.007355 0.024551 -E 5010.000000 50.000000 32.805588 178.226822 0.007342 0.024509 -E 5020.000000 50.000000 32.784969 178.242462 0.007298 0.024360 -E 5030.000000 50.000000 32.769585 178.250000 0.007298 0.024359 -E 5040.000000 50.000000 32.760220 178.276047 0.007320 0.024434 -E 5050.000000 50.000000 32.740063 178.263199 0.007338 0.024492 -E 5060.000000 50.000000 32.739769 178.250778 0.007308 0.024392 -E 5070.000000 50.000000 32.711628 178.240463 0.007294 0.024346 -E 5080.000000 50.000000 32.683125 178.244003 0.007317 0.024419 -E 5090.000000 50.000000 32.666801 178.249939 0.007316 0.024415 -E 5100.000000 50.000000 32.655312 178.252335 0.007309 0.024391 -E 5110.000000 50.000000 32.653587 178.280502 0.007276 0.024284 -E 5120.000000 50.000000 32.633240 178.288803 0.007236 0.024150 -E 5130.000000 50.000000 32.620815 178.278183 0.007227 0.024118 -E 5140.000000 50.000000 32.612942 178.302292 0.007218 0.024088 -E 5150.000000 50.000000 32.608746 178.300354 0.007203 0.024040 -E 5160.000000 50.000000 32.593616 178.288010 0.007178 0.023958 -E 5170.000000 50.000000 32.565174 178.243484 0.007169 0.023924 -E 5180.000000 50.000000 32.541145 178.303680 0.007154 0.023874 -E 5190.000000 50.000000 32.541000 178.376343 0.007128 0.023789 -E 5200.000000 50.000000 32.530983 178.324631 0.007089 0.023657 -E 5210.000000 50.000000 32.503273 178.303894 0.007071 0.023596 -E 5220.000000 50.000000 32.500504 178.319885 0.007060 0.023561 -E 5230.000000 50.000000 32.490776 178.337082 0.007041 0.023498 -E 5240.000000 50.000000 32.474197 178.314697 0.007028 0.023452 -E 5250.000000 50.000000 32.454178 178.329391 0.007001 0.023364 -E 5260.000000 50.000000 32.433426 178.377777 0.006956 0.023212 -E 5270.000000 50.000000 32.432270 178.394836 0.006893 0.023001 -E 5280.000000 50.000000 32.416321 178.371719 0.006879 0.022956 -E 5290.000000 50.000000 32.397884 178.329987 0.006877 0.022948 -E 5300.000000 50.000000 32.386414 178.365219 0.006860 0.022890 -E 5310.000000 50.000000 32.389595 178.374222 0.006853 0.022872 -E 5320.000000 50.000000 32.365284 178.371201 0.006850 0.022858 -E 5330.000000 50.000000 32.349899 178.379410 0.006802 0.022698 -E 5340.000000 50.000000 32.332909 178.370285 0.006744 0.022504 -E 5350.000000 50.000000 32.331123 178.355042 0.006726 0.022445 -E 5360.000000 50.000000 32.339958 178.382767 0.006710 0.022394 -E 5370.000000 50.000000 32.321171 178.413589 0.006697 0.022351 -E 5380.000000 50.000000 32.305557 178.371643 0.006671 0.022263 -E 5390.000000 50.000000 32.284027 178.378860 0.006625 0.022109 -E 5400.000000 50.000000 32.265327 178.409409 0.006606 0.022045 -E 5410.000000 50.000000 32.254440 178.379242 0.006589 0.021991 -E 5420.000000 50.000000 32.247478 178.380157 0.006543 0.021837 -E 5430.000000 50.000000 32.230713 178.423462 0.006493 0.021669 -E 5440.000000 50.000000 32.222755 178.454376 0.006469 0.021590 -E 5450.000000 50.000000 32.211956 178.415009 0.006454 0.021540 -E 5460.000000 50.000000 32.204159 178.443283 0.006454 0.021540 -E 5470.000000 50.000000 32.189476 178.450058 0.006445 0.021512 -E 5480.000000 50.000000 32.174313 178.417694 0.006398 0.021353 -E 5490.000000 50.000000 32.167347 178.449020 0.006360 0.021226 -E 5500.000000 50.000000 32.159786 178.418228 0.006353 0.021204 -E 5510.000000 50.000000 32.154179 178.433014 0.006353 0.021206 -E 5520.000000 50.000000 32.131420 178.494858 0.006352 0.021202 -E 5530.000000 50.000000 32.117016 178.456589 0.006333 0.021137 -E 5540.000000 50.000000 32.111961 178.439270 0.006304 0.021042 -E 5550.000000 50.000000 32.090481 178.461349 0.006297 0.021017 -E 5560.000000 50.000000 32.070087 178.492432 0.006293 0.021005 -E 5570.000000 50.000000 32.084675 178.481674 0.006266 0.020916 -E 5580.000000 50.000000 32.075497 178.477325 0.006251 0.020867 -E 5590.000000 50.000000 32.058544 178.475708 0.006249 0.020862 -E 5600.000000 50.000000 32.049965 178.445801 0.006231 0.020802 -E 5610.000000 50.000000 32.045315 178.486755 0.006199 0.020694 -E 5620.000000 50.000000 32.034653 178.537750 0.006188 0.020658 -E 5630.000000 50.000000 32.024136 178.493912 0.006180 0.020631 -E 5640.000000 50.000000 32.017735 178.494827 0.006158 0.020558 -E 5650.000000 50.000000 31.994675 178.510040 0.006136 0.020484 -E 5660.000000 50.000000 31.980265 178.466705 0.006116 0.020418 -E 5670.000000 50.000000 31.981194 178.501358 0.006049 0.020195 -E 5680.000000 50.000000 31.962719 178.548798 0.005942 0.019837 -E 5690.000000 50.000000 31.954851 178.543839 0.005821 0.019435 -E 5700.000000 50.000000 31.949465 178.515366 0.005653 0.018873 -E 5710.000000 50.000000 31.932108 178.530457 0.005573 0.018608 -E 5720.000000 50.000000 31.926071 178.546982 0.005530 0.018463 -E 5730.000000 50.000000 31.921820 178.524109 0.005477 0.018288 -E 5740.000000 50.000000 31.910234 178.541550 0.005381 0.017969 -E 5750.000000 50.000000 31.897858 178.547363 0.005326 0.017784 -E 5760.000000 50.000000 31.892660 178.572769 0.005289 0.017662 -E 5770.000000 50.000000 31.893074 178.592056 0.005188 0.017324 -E 5780.000000 50.000000 31.881233 178.568100 0.005116 0.017085 -E 5790.000000 50.000000 31.871187 178.565811 0.005110 0.017066 -E 5800.000000 50.000000 31.858643 178.562546 0.005079 0.016961 -E 5810.000000 50.000000 31.851633 178.557404 0.004954 0.016545 -E 5820.000000 50.000000 31.845757 178.565018 0.004825 0.016116 -E 5830.000000 50.000000 31.832531 178.567398 0.004945 0.016514 -E 5840.000000 50.000000 31.824835 178.594696 0.005177 0.017292 -E 5850.000000 50.000000 31.804821 178.566086 0.005147 0.017189 -E 5860.000000 50.000000 31.802898 178.552200 0.005170 0.017267 -E 5870.000000 50.000000 31.798349 178.589111 0.005222 0.017441 -E 5880.000000 50.000000 31.785278 178.619278 0.005177 0.017293 -E 5890.000000 50.000000 31.783150 178.615356 0.005161 0.017240 -E 5900.000000 50.000000 31.773708 178.580750 0.005332 0.017812 -E 5910.000000 50.000000 31.761044 178.610580 0.005445 0.018188 -E 5920.000000 50.000000 31.753210 178.634888 0.005448 0.018201 -E 5930.000000 50.000000 31.749580 178.611038 0.005362 0.017912 -E 5940.000000 50.000000 31.738647 178.600250 0.005283 0.017649 -E 5950.000000 50.000000 31.739586 178.636856 0.005221 0.017443 -E 5960.000000 50.000000 31.728695 178.629730 0.005227 0.017463 -E 5970.000000 50.000000 31.707270 178.585663 0.005316 0.017761 -E 5980.000000 50.000000 31.705153 178.605759 0.005366 0.017928 -E 5990.000000 50.000000 31.707287 178.604828 0.005369 0.017939 -E 6000.000000 50.000000 31.701927 178.645386 0.005372 0.017949 -E 6010.000000 50.000000 31.673128 178.650726 0.005341 0.017846 -E 6020.000000 50.000000 31.670223 178.648499 0.005280 0.017644 -E 6030.000000 50.000000 31.669506 178.668716 0.005204 0.017388 -E 6040.000000 50.000000 31.657143 178.656250 0.005185 0.017327 -E 6050.000000 50.000000 31.665346 178.651489 0.005289 0.017676 -E 6060.000000 50.000000 31.645723 178.656143 0.005322 0.017786 -E 6070.000000 50.000000 31.630142 178.640732 0.005331 0.017814 -E 6080.000000 50.000000 31.635567 178.642136 0.005351 0.017884 -E 6090.000000 50.000000 31.631227 178.664139 0.005371 0.017951 -E 6100.000000 50.000000 31.616478 178.658173 0.005353 0.017890 -E 6110.000000 50.000000 31.606585 178.671616 0.005328 0.017807 -E 6120.000000 50.000000 31.595495 178.655640 0.005316 0.017767 -E 6130.000000 50.000000 31.588282 178.630539 0.005304 0.017729 -E 6140.000000 50.000000 31.581360 178.675568 0.005291 0.017684 -E 6150.000000 50.000000 31.576214 178.677567 0.005322 0.017791 -E 6160.000000 50.000000 31.562113 178.674561 0.005374 0.017963 -E 6170.000000 50.000000 31.563011 178.682999 0.005401 0.018054 -E 6180.000000 50.000000 31.564058 178.701416 0.005413 0.018097 -E 6190.000000 50.000000 31.550699 178.715561 0.005434 0.018167 -E 6200.000000 50.000000 31.530180 178.676895 0.005413 0.018096 -E 6210.000000 50.000000 31.535299 178.685272 0.005416 0.018107 -E 6220.000000 50.000000 31.525053 178.683365 0.005440 0.018188 -E 6230.000000 50.000000 31.511126 178.671997 0.005413 0.018096 -E 6240.000000 50.000000 31.504509 178.693909 0.005398 0.018046 -E 6250.000000 50.000000 31.516411 178.711594 0.005442 0.018195 -E 6260.000000 50.000000 31.519581 178.717346 0.005476 0.018312 -E 6270.000000 50.000000 31.495024 178.718262 0.005483 0.018334 -E 6280.000000 50.000000 31.482388 178.698730 0.005480 0.018324 -E 6290.000000 50.000000 31.495792 178.674896 0.005478 0.018321 -E 6300.000000 50.000000 31.486073 178.681992 0.005483 0.018337 -E 6310.000000 50.000000 31.473055 178.706879 0.005515 0.018442 -E 6320.000000 50.000000 31.463509 178.748154 0.005525 0.018477 -E 6330.000000 50.000000 31.461937 178.744781 0.005504 0.018409 -E 6340.000000 50.000000 31.455236 178.718063 0.005514 0.018441 -E 6350.000000 50.000000 31.442385 178.746262 0.005515 0.018446 -E 6360.000000 50.000000 31.434116 178.731537 0.005500 0.018396 -E 6370.000000 50.000000 31.428495 178.718735 0.005491 0.018366 -E 6380.000000 50.000000 31.430550 178.727661 0.005498 0.018389 -E 6390.000000 50.000000 31.415495 178.757584 0.005499 0.018394 -E 6400.000000 50.000000 31.416590 178.753250 0.005501 0.018401 -E 6410.000000 50.000000 31.401546 178.721848 0.005511 0.018435 -E 6420.000000 50.000000 31.396229 178.722305 0.005527 0.018488 -E 6430.000000 50.000000 31.400917 178.757202 0.005519 0.018465 -E 6440.000000 50.000000 31.390093 178.760239 0.005521 0.018471 -E 6450.000000 50.000000 31.394989 178.764816 0.005532 0.018510 -E 6460.000000 50.000000 31.389410 178.776215 0.005530 0.018503 -E 6470.000000 50.000000 31.373905 178.806900 0.005527 0.018493 -E 6480.000000 50.000000 31.367498 178.772614 0.005522 0.018477 -E 6490.000000 50.000000 31.373634 178.789993 0.005516 0.018457 -E 6500.000000 50.000000 31.358833 178.772156 0.005513 0.018449 -E 6510.000000 50.000000 31.348343 178.757248 0.005516 0.018457 -E 6520.000000 50.000000 31.350481 178.780930 0.005512 0.018445 -E 6530.000000 50.000000 31.337910 178.771011 0.005517 0.018461 -E 6540.000000 50.000000 31.335159 178.773285 0.005568 0.018635 -E 6550.000000 50.000000 31.317465 178.757309 0.004951 0.016570 -E 6560.000000 50.000000 31.313301 178.766769 0.003475 0.011629 -E 6570.000000 50.000000 31.312868 178.775757 0.003343 0.011187 -E 6580.000000 50.000000 31.313051 178.795670 0.004564 0.015276 -E 6590.000000 50.000000 31.299414 178.787643 0.005477 0.018330 -E 6600.000000 50.000000 31.294270 178.781158 0.005510 0.018444 -E 6610.000000 50.000000 31.293829 178.792282 0.005515 0.018459 -E 6620.000000 50.000000 31.288885 178.827194 0.005502 0.018417 -E 6630.000000 50.000000 31.280191 178.829041 0.005495 0.018393 -E 6640.000000 50.000000 31.280596 178.788666 0.005496 0.018398 -E 6650.000000 50.000000 31.276859 178.805725 0.005498 0.018405 -E 6660.000000 50.000000 31.273216 178.801697 0.005498 0.018406 -E 6670.000000 50.000000 31.263517 178.810226 0.005499 0.018410 -E 6680.000000 50.000000 31.257700 178.820465 0.005494 0.018394 -E 6690.000000 50.000000 31.252985 178.791031 0.005481 0.018352 -E 6700.000000 50.000000 31.237257 178.784622 0.005470 0.018315 -E 6710.000000 50.000000 31.233891 178.811981 0.005472 0.018321 -E 6720.000000 50.000000 31.246092 178.817032 0.005461 0.018286 -E 6730.000000 50.000000 31.242540 178.819656 0.005459 0.018281 -E 6740.000000 50.000000 31.224094 178.826248 0.005470 0.018319 -E 6750.000000 50.000000 31.227314 178.826965 0.005477 0.018341 -E 6760.000000 50.000000 31.222666 178.781754 0.005478 0.018347 -E 6770.000000 50.000000 31.208687 178.797501 0.005475 0.018334 -E 6780.000000 50.000000 31.195593 178.856873 0.005465 0.018302 -E 6790.000000 50.000000 31.197107 178.846725 0.005453 0.018263 -E 6800.000000 50.000000 31.204855 178.841309 0.005445 0.018237 -E 6810.000000 50.000000 31.191763 178.875397 0.005446 0.018242 -E 6820.000000 50.000000 31.182716 178.829514 0.005448 0.018248 -E 6830.000000 50.000000 31.181673 178.817566 0.005444 0.018235 -E 6840.000000 50.000000 31.195156 178.855270 0.005434 0.018203 -E 6850.000000 50.000000 31.188284 178.819061 0.005414 0.018138 -E 6860.000000 50.000000 31.168678 178.792755 0.005416 0.018143 -E 6870.000000 50.000000 31.162106 178.841248 0.005431 0.018193 -E 6880.000000 50.000000 31.143251 178.851349 0.005444 0.018239 -E 6890.000000 50.000000 31.159239 178.840332 0.005443 0.018237 -E 6900.000000 50.000000 31.155603 178.849121 0.005448 0.018254 -E 6910.000000 50.000000 31.135420 178.835342 0.005449 0.018256 -E 6920.000000 50.000000 31.137144 178.834732 0.005444 0.018240 -E 6930.000000 50.000000 31.126457 178.872818 0.005443 0.018239 -E 6940.000000 50.000000 31.120905 178.875870 0.005437 0.018218 -E 6950.000000 50.000000 31.117241 178.866974 0.005443 0.018237 -E 6960.000000 50.000000 31.112432 178.850266 0.005445 0.018247 -E 6970.000000 50.000000 31.123388 178.835358 0.005434 0.018211 -E 6980.000000 50.000000 31.104124 178.896210 0.005428 0.018192 -E 6990.000000 50.000000 31.098114 178.906235 0.005433 0.018208 -E 7000.000000 50.000000 31.095085 178.892853 0.005444 0.018244 -E 7010.000000 50.000000 31.081078 178.900528 0.005455 0.018282 -E 7020.000000 50.000000 31.074520 178.876419 0.005457 0.018288 -E 7030.000000 50.000000 31.070480 178.867905 0.005457 0.018288 -E 7040.000000 50.000000 31.064819 178.881714 0.005468 0.018328 -E 7050.000000 50.000000 31.055788 178.861679 0.005479 0.018363 -E 7060.000000 50.000000 31.059832 178.903122 0.005476 0.018357 -E 7070.000000 50.000000 31.063160 178.913803 0.005455 0.018287 -E 7080.000000 50.000000 31.048452 178.908035 0.005462 0.018310 -E 7090.000000 50.000000 31.045784 178.881073 0.005476 0.018357 -E 7100.000000 50.000000 31.034851 178.903595 0.005491 0.018408 -E 7110.000000 50.000000 31.028952 178.900787 0.005496 0.018423 -E 7120.000000 50.000000 31.040518 178.891785 0.005491 0.018410 -E 7130.000000 50.000000 31.037481 178.908737 0.005492 0.018415 -E 7140.000000 50.000000 31.022884 178.911209 0.005491 0.018410 -E 7150.000000 50.000000 31.013515 178.913055 0.005485 0.018388 -E 7160.000000 50.000000 31.029650 178.893204 0.005486 0.018395 -E 7170.000000 50.000000 31.021046 178.890305 0.005508 0.018467 -E 7180.000000 50.000000 31.014547 178.903992 0.005509 0.018472 -E 7190.000000 50.000000 31.013401 178.922165 0.005510 0.018475 -E 7200.000000 50.000000 31.013029 178.914078 0.005517 0.018501 -E 7210.000000 50.000000 30.987230 178.871231 0.005535 0.018560 -E 7220.000000 50.000000 30.987289 178.896912 0.005536 0.018565 -E 7230.000000 50.000000 30.995527 178.943802 0.005547 0.018602 -E 7240.000000 50.000000 30.992121 178.933716 0.005544 0.018593 -E 7250.000000 50.000000 30.997414 178.908096 0.005521 0.018516 -E 7260.000000 50.000000 30.986610 178.958221 0.005500 0.018448 -E 7270.000000 50.000000 30.976078 178.907928 0.005516 0.018502 -E 7280.000000 50.000000 30.985359 178.954025 0.005519 0.018512 -E 7290.000000 50.000000 30.958941 178.912079 0.005516 0.018502 -E 7300.000000 50.000000 30.955441 178.881165 0.005526 0.018534 -E 7310.000000 50.000000 30.970018 178.934326 0.005517 0.018508 -E 7320.000000 50.000000 30.967836 178.925491 0.005526 0.018537 -E 7330.000000 50.000000 30.942551 178.932831 0.005554 0.018631 -E 7340.000000 50.000000 30.942844 178.943832 0.005549 0.018616 -E 7350.000000 50.000000 30.944115 178.946564 0.005520 0.018518 -E 7360.000000 50.000000 30.958519 178.925674 0.005522 0.018526 -E 7370.000000 50.000000 30.949354 178.926773 0.005545 0.018603 -E 7380.000000 50.000000 30.937155 178.950180 0.005586 0.018741 -E 7390.000000 50.000000 30.918215 178.950317 0.005610 0.018820 -E 7400.000000 50.000000 30.925596 178.967773 0.005587 0.018745 -E 7410.000000 50.000000 30.929365 178.971481 0.005606 0.018811 -E 7420.000000 50.000000 30.913601 178.964386 0.005651 0.018961 -E 7430.000000 50.000000 30.912067 178.987091 0.005668 0.019020 -E 7440.000000 50.000000 30.908552 178.966232 0.005673 0.019035 -E 7450.000000 50.000000 30.904566 178.964752 0.005681 0.019063 -E 7460.000000 50.000000 30.905048 178.952591 0.005684 0.019075 -E 7470.000000 50.000000 30.882610 178.965622 0.005671 0.019030 -E 7480.000000 50.000000 30.888674 179.001068 0.005666 0.019013 -E 7490.000000 50.000000 30.900387 179.001816 0.005685 0.019079 -E 7500.000000 50.000000 30.888287 178.958954 0.005691 0.019101 -E 7510.000000 50.000000 30.879602 178.974899 0.005694 0.019108 -E 7520.000000 50.000000 30.897343 178.977722 0.005729 0.019228 -E 7530.000000 50.000000 30.867914 178.978622 0.005752 0.019306 -E 7540.000000 50.000000 30.862309 178.995621 0.005724 0.019212 -E 7550.000000 50.000000 30.867502 178.991394 0.005734 0.019245 -E 7560.000000 50.000000 30.870747 178.985535 0.005744 0.019281 -E 7570.000000 50.000000 30.885315 178.955658 0.005730 0.019234 -E 7580.000000 50.000000 30.873945 178.966553 0.005723 0.019211 -E 7590.000000 50.000000 30.865316 178.983231 0.005725 0.019217 -E 7600.000000 50.000000 30.862595 178.990982 0.005769 0.019367 -E 7610.000000 50.000000 30.852257 178.983643 0.005816 0.019523 -E 7620.000000 50.000000 30.852055 179.004578 0.005853 0.019648 -E 7630.000000 50.000000 30.847763 179.021774 0.005839 0.019602 -E 7640.000000 50.000000 30.853325 179.032272 0.005827 0.019563 -E 7650.000000 50.000000 30.849291 179.008224 0.005848 0.019635 -E 7660.000000 50.000000 30.840883 178.985535 0.005887 0.019767 -E 7670.000000 50.000000 30.817810 178.953033 0.005945 0.019961 -E 7680.000000 50.000000 30.833277 178.978348 0.005932 0.019918 -E 7690.000000 50.000000 30.846901 179.021576 0.005866 0.019698 -E 7700.000000 50.000000 30.823551 179.026459 0.005848 0.019637 -E 7710.000000 50.000000 30.815535 179.000061 0.005896 0.019797 -E 7720.000000 50.000000 30.825666 178.986099 0.005962 0.020020 -E 7730.000000 50.000000 30.828180 179.017868 0.006004 0.020164 -E 7740.000000 50.000000 30.818300 179.036270 0.006017 0.020206 -E 7750.000000 50.000000 30.807564 179.034576 0.006044 0.020298 -E 7760.000000 50.000000 30.808054 179.010422 0.006079 0.020416 -E 7770.000000 50.000000 30.816341 179.025467 0.006099 0.020484 -E 7780.000000 50.000000 30.806213 179.053818 0.006094 0.020467 -E 7790.000000 50.000000 30.803080 179.024551 0.006056 0.020341 -E 7800.000000 50.000000 30.811068 179.044952 0.006048 0.020315 -E 7810.000000 50.000000 30.794956 179.032745 0.006102 0.020495 -E 7820.000000 50.000000 30.781927 178.995163 0.006136 0.020611 -E 7830.000000 50.000000 30.783207 179.023819 0.006145 0.020639 -E 7840.000000 50.000000 30.780619 179.049408 0.006174 0.020737 -E 7850.000000 50.000000 30.779089 179.035019 0.006222 0.020899 -E 7860.000000 50.000000 30.790827 179.008118 0.006247 0.020987 -E 7870.000000 50.000000 30.782684 179.041885 0.006247 0.020985 -E 7880.000000 50.000000 30.778803 179.055252 0.006236 0.020948 -E 7890.000000 50.000000 30.771376 179.044342 0.006253 0.021005 -E 7900.000000 50.000000 30.753504 179.085953 0.006289 0.021125 -E 7910.000000 50.000000 30.758619 179.059601 0.006295 0.021146 -E 7920.000000 50.000000 30.767996 179.037964 0.006310 0.021198 -E 7930.000000 50.000000 30.762117 179.055832 0.006323 0.021245 -E 7940.000000 50.000000 30.754086 179.031799 0.006311 0.021202 -E 7950.000000 50.000000 30.751663 179.054153 0.006316 0.021220 -E 7960.000000 50.000000 30.756567 179.039108 0.006351 0.021340 -E 7970.000000 50.000000 30.766327 179.028778 0.006382 0.021446 -E 7980.000000 50.000000 30.734531 179.097366 0.006416 0.021556 -E 7990.000000 50.000000 30.733833 179.048767 0.006430 0.021603 -E 8000.000000 50.000000 30.739023 179.049118 0.006423 0.021584 -E 8010.000000 50.000000 30.737614 179.067413 0.006415 0.021557 -E 8020.000000 50.000000 30.736736 179.026779 0.006460 0.021707 -E 8030.000000 50.000000 30.741899 179.041321 0.006497 0.021835 -E 8040.000000 50.000000 30.729853 179.065460 0.006500 0.021844 -E 8050.000000 50.000000 30.728659 179.052490 0.006488 0.021802 -E 8060.000000 50.000000 30.724928 179.032715 0.006508 0.021873 -E 8070.000000 50.000000 30.718481 179.031311 0.006571 0.022082 -E 8080.000000 50.000000 30.707914 179.064285 0.006603 0.022190 -E 8090.000000 50.000000 30.712387 179.078629 0.006562 0.022053 -E 8100.000000 50.000000 30.699265 179.071930 0.006575 0.022096 -E 8110.000000 50.000000 30.703066 179.085846 0.006610 0.022215 -E 8120.000000 50.000000 30.703556 179.065674 0.006655 0.022367 -E 8130.000000 50.000000 30.690233 179.027130 0.006655 0.022369 -E 8140.000000 50.000000 30.705050 179.044785 0.006614 0.022232 -E 8150.000000 50.000000 30.701036 179.069855 0.006639 0.022315 -E 8160.000000 50.000000 30.700886 179.050354 0.006688 0.022480 -E 8170.000000 50.000000 30.686674 179.093216 0.006721 0.022591 -E 8180.000000 50.000000 30.686453 179.087189 0.006705 0.022540 -E 8190.000000 50.000000 30.692768 179.087189 0.006695 0.022507 -E 8200.000000 50.000000 30.678839 179.113998 0.006725 0.022607 -E 8210.000000 50.000000 30.687546 179.103195 0.006758 0.022717 -E 8220.000000 50.000000 30.693928 179.045837 0.006783 0.022804 -E 8230.000000 50.000000 30.682886 179.088181 0.006764 0.022741 -E 8240.000000 50.000000 30.694813 179.129837 0.006750 0.022694 -E 8250.000000 50.000000 30.677614 179.112198 0.006799 0.022858 -E 8260.000000 50.000000 30.671463 179.083237 0.006845 0.023014 -E 8270.000000 50.000000 30.671049 179.075500 0.006832 0.022971 -E 8280.000000 50.000000 30.660326 179.109497 0.006806 0.022882 -E 8290.000000 50.000000 30.661438 179.084335 0.006809 0.022892 -E 8300.000000 50.000000 30.661055 179.067902 0.006874 0.023113 -E 8310.000000 50.000000 30.670876 179.029739 0.006910 0.023236 -E 8320.000000 50.000000 30.660870 179.060242 0.006899 0.023198 -E 8330.000000 50.000000 30.657442 179.129333 0.006867 0.023089 -E 8340.000000 50.000000 30.655273 179.113113 0.006850 0.023034 -E 8350.000000 50.000000 30.648403 179.113770 0.006888 0.023161 -E 8360.000000 50.000000 30.645498 179.072220 0.006945 0.023353 -E 8370.000000 50.000000 30.634562 179.122345 0.006934 0.023315 -E 8380.000000 50.000000 30.630827 179.100021 0.006918 0.023262 -E 8390.000000 50.000000 30.646584 179.118225 0.006932 0.023313 -E 8400.000000 50.000000 30.629320 179.127304 0.006997 0.023530 -E 8410.000000 50.000000 30.635868 179.131744 0.007026 0.023628 -E 8420.000000 50.000000 30.636202 179.120728 0.007012 0.023583 -E 8430.000000 50.000000 30.620808 179.107208 0.006993 0.023516 -E 8440.000000 50.000000 30.626461 179.116043 0.006996 0.023529 -E 8450.000000 50.000000 30.621727 179.124130 0.007032 0.023651 -E 8460.000000 50.000000 30.629612 179.115128 0.007054 0.023723 -E 8470.000000 50.000000 30.618586 179.124008 0.007040 0.023676 -E 8480.000000 50.000000 30.617851 179.133652 0.007011 0.023581 -E 8490.000000 50.000000 30.617220 179.130280 0.007060 0.023746 -E 8500.000000 50.000000 30.621016 179.105408 0.007184 0.024163 -E 8510.000000 50.000000 30.607286 179.103149 0.007236 0.024338 -E 8520.000000 50.000000 30.613688 179.117966 0.007087 0.023839 -E 8530.000000 50.000000 30.615820 179.096146 0.006928 0.023303 -E 8540.000000 50.000000 30.600988 179.087463 0.006905 0.023226 -E 8550.000000 50.000000 30.598515 179.135849 0.007000 0.023546 -E 8560.000000 50.000000 30.582178 179.142242 0.007086 0.023836 -E 8570.000000 50.000000 30.577772 179.108612 0.007115 0.023932 -E 8580.000000 50.000000 30.595299 179.072876 0.007076 0.023804 -E 8590.000000 50.000000 30.584257 179.115494 0.007061 0.023753 -E 8600.000000 50.000000 30.591312 179.150436 0.007082 0.023825 -E 8610.000000 50.000000 30.585142 179.129028 0.007148 0.024045 -E 8620.000000 50.000000 30.583723 179.152725 0.007179 0.024151 -E 8630.000000 50.000000 30.582855 179.130951 0.007179 0.024150 -E 8640.000000 50.000000 30.563791 179.126892 0.007142 0.024025 -E 8650.000000 50.000000 30.568245 179.161285 0.007109 0.023917 -E 8660.000000 50.000000 30.585251 179.109329 0.007138 0.024015 -E 8670.000000 50.000000 30.573238 179.124008 0.007197 0.024213 -E 8680.000000 50.000000 30.563005 179.115128 0.007209 0.024253 -E 8690.000000 50.000000 30.543839 179.141129 0.007208 0.024247 -E 8700.000000 50.000000 30.567396 179.119522 0.007181 0.024159 -E 8710.000000 50.000000 30.570415 179.116257 0.007192 0.024197 -E 8720.000000 50.000000 30.562603 179.131226 0.007233 0.024336 -E 8730.000000 50.000000 30.568039 179.116669 0.007235 0.024344 -E 8740.000000 50.000000 30.562223 179.092163 0.007210 0.024259 -E 8750.000000 50.000000 30.591908 179.143906 0.007177 0.024152 -E 8760.000000 50.000000 30.569475 179.156967 0.007197 0.024216 -E 8770.000000 50.000000 30.542582 179.145096 0.007243 0.024371 -E 8780.000000 50.000000 30.537693 179.144455 0.007271 0.024463 -E 8790.000000 50.000000 30.550413 179.127014 0.007257 0.024418 -E 8800.000000 50.000000 30.544670 179.162796 0.007257 0.024420 -E 8810.000000 50.000000 30.540966 179.157425 0.007286 0.024517 -E 8820.000000 50.000000 30.536751 179.153641 0.007315 0.024616 -E 8830.000000 50.000000 30.531778 179.158188 0.007348 0.024725 -E 8840.000000 50.000000 30.527790 179.113327 0.007355 0.024749 -E 8850.000000 50.000000 30.522085 179.165833 0.007368 0.024793 -E 8860.000000 50.000000 30.541330 179.174347 0.007348 0.024726 -E 8870.000000 50.000000 30.532234 179.133408 0.007331 0.024670 -E 8880.000000 50.000000 30.534040 179.117844 0.007335 0.024686 -E 8890.000000 50.000000 30.532904 179.158615 0.007363 0.024778 -E 8900.000000 50.000000 30.530916 179.176270 0.007389 0.024866 -E 8910.000000 50.000000 30.533978 179.172134 0.007411 0.024943 -E 8920.000000 50.000000 30.530664 179.127396 0.007410 0.024940 -E 8930.000000 50.000000 30.519501 179.188400 0.007408 0.024933 -E 8940.000000 50.000000 30.508657 179.227509 0.007418 0.024965 -E 8950.000000 50.000000 30.508007 179.168793 0.007443 0.025048 -E 8960.000000 50.000000 30.515638 179.212845 0.007469 0.025138 -E 8970.000000 50.000000 30.523994 179.232330 0.007477 0.025165 -E 8980.000000 50.000000 30.498497 179.157867 0.007504 0.025257 -E 8990.000000 50.000000 30.509926 179.183640 0.007490 0.025209 -E 9000.000000 50.000000 30.513290 179.199265 0.007515 0.025294 -E 9010.000000 50.000000 30.509066 179.190979 0.007542 0.025384 -E 9020.000000 50.000000 30.511093 179.202515 0.007541 0.025381 -E 9030.000000 50.000000 30.497572 179.183090 0.007577 0.025502 -E 9040.000000 50.000000 30.511177 179.190094 0.007576 0.025502 -E 9050.000000 50.000000 30.502308 179.186401 0.007566 0.025466 -E 9060.000000 50.000000 30.494431 179.193176 0.007595 0.025566 -E 9070.000000 50.000000 30.497997 179.203308 0.007623 0.025661 -E 9080.000000 50.000000 30.481712 179.168427 0.007669 0.025813 -E 9090.000000 50.000000 30.474869 179.182693 0.007707 0.025942 -E 9100.000000 50.000000 30.477306 179.202789 0.007713 0.025962 -E 9110.000000 50.000000 30.473606 179.136215 0.007689 0.025881 -E 9120.000000 50.000000 30.474220 179.139252 0.007707 0.025942 -E 9130.000000 50.000000 30.470589 179.151428 0.007741 0.026057 -E 9140.000000 50.000000 30.474638 179.142715 0.007800 0.026258 -E 9150.000000 50.000000 30.482721 179.187149 0.007798 0.026251 -E 9160.000000 50.000000 30.460855 179.258652 0.007776 0.026176 -E 9170.000000 50.000000 30.441143 179.219116 0.007774 0.026167 -E 9180.000000 50.000000 30.465021 179.191498 0.007767 0.026148 -E 9190.000000 50.000000 30.484411 179.229477 0.007801 0.026264 -E 9200.000000 50.000000 30.458101 179.182724 0.007874 0.026509 -E 9210.000000 50.000000 30.473791 179.193680 0.007899 0.026594 -E 9220.000000 50.000000 30.462534 179.179825 0.007949 0.026760 -E 9230.000000 50.000000 30.457182 179.200012 0.007972 0.026839 -E 9240.000000 50.000000 30.469297 179.250504 0.007975 0.026850 -E 9250.000000 50.000000 30.443869 179.266052 0.007999 0.026929 -E 9260.000000 50.000000 30.460323 179.208130 0.008025 0.027020 -E 9270.000000 50.000000 30.444481 179.212692 0.008068 0.027164 -E 9280.000000 50.000000 30.445839 179.210403 0.008116 0.027327 -E 9290.000000 50.000000 30.455841 179.173477 0.008140 0.027407 -E 9300.000000 50.000000 30.444048 179.173386 0.008157 0.027464 -E 9310.000000 50.000000 30.442221 179.188797 0.008169 0.027503 -E 9320.000000 50.000000 30.446247 179.195267 0.008175 0.027524 -E 9330.000000 50.000000 30.442486 179.160645 0.008206 0.027631 -E 9340.000000 50.000000 30.414869 179.224701 0.008254 0.027791 -E 9350.000000 50.000000 30.436049 179.189468 0.008293 0.027925 -E 9360.000000 50.000000 30.431337 179.180878 0.008345 0.028097 -E 9370.000000 50.000000 30.455574 179.232025 0.008360 0.028151 -E 9380.000000 50.000000 30.428303 179.305588 0.008380 0.028217 -E 9390.000000 50.000000 30.416456 179.263458 0.008403 0.028294 -E 9400.000000 50.000000 30.418194 179.251511 0.008471 0.028524 -E 9410.000000 50.000000 30.420670 179.223785 0.008516 0.028676 -E 9420.000000 50.000000 30.407969 179.201721 0.008562 0.028829 -E 9430.000000 50.000000 30.429398 179.217667 0.008597 0.028950 -E 9440.000000 50.000000 30.439890 179.214020 0.008602 0.028968 -E 9450.000000 50.000000 30.398888 179.230911 0.008646 0.029114 -E 9460.000000 50.000000 30.398935 179.236938 0.008691 0.029267 -E 9470.000000 50.000000 30.420662 179.248352 0.008728 0.029391 -E 9480.000000 50.000000 30.408142 179.229370 0.008783 0.029578 -E 9490.000000 50.000000 30.378168 179.207001 0.008844 0.029780 -E 9500.000000 50.000000 30.392509 179.238129 0.008878 0.029896 -E 9510.000000 50.000000 30.390265 179.231155 0.008926 0.030060 -E 9520.000000 50.000000 30.429123 179.248169 0.008935 0.030094 -E 9530.000000 50.000000 30.399893 179.268631 0.008990 0.030277 -E 9540.000000 50.000000 30.390615 179.229980 0.009075 0.030563 -E 9550.000000 50.000000 30.390547 179.217697 0.009134 0.030762 -E 9560.000000 50.000000 30.392895 179.220276 0.009156 0.030837 -E 9570.000000 50.000000 30.389643 179.230133 0.009183 0.030927 -E 9580.000000 50.000000 30.377737 179.199310 0.009204 0.030997 -E 9590.000000 50.000000 30.380928 179.237137 0.009249 0.031149 -E 9600.000000 50.000000 30.405680 179.291565 0.009282 0.031264 -E 9610.000000 50.000000 30.403437 179.241318 0.009317 0.031380 -E 9620.000000 50.000000 30.383860 179.228180 0.009376 0.031579 -E 9630.000000 50.000000 30.399109 179.259308 0.009414 0.031709 -E 9640.000000 50.000000 30.405298 179.267120 0.009458 0.031857 -E 9650.000000 50.000000 30.402599 179.285736 0.009514 0.032047 -E 9660.000000 50.000000 30.368048 179.371231 0.009558 0.032190 -E 9670.000000 50.000000 30.381384 179.300720 0.009627 0.032428 -E 9680.000000 50.000000 30.388697 179.171829 0.009697 0.032663 -E 9690.000000 50.000000 30.367689 179.240372 0.009755 0.032857 -E 9700.000000 50.000000 30.368181 179.282715 0.009787 0.032966 -E 9710.000000 50.000000 30.350195 179.237717 0.009844 0.033156 -E 9720.000000 50.000000 30.372107 179.215729 0.009907 0.033369 -E 9730.000000 50.000000 30.368996 179.198013 0.009988 0.033643 -E 9740.000000 50.000000 30.375376 179.232712 0.010046 0.033839 -E 9750.000000 50.000000 30.391548 179.277451 0.010072 0.033931 -E 9760.000000 50.000000 30.364988 179.198975 0.010153 0.034199 -E 9770.000000 50.000000 30.326233 179.267090 0.010242 0.034498 -E 9780.000000 50.000000 30.337753 179.191101 0.010277 0.034618 -E 9790.000000 50.000000 30.351171 179.231247 0.010339 0.034828 -E 9800.000000 50.000000 30.371759 179.235565 0.010413 0.035080 -E 9810.000000 50.000000 30.358463 179.245346 0.010506 0.035392 -E 9820.000000 50.000000 30.375275 179.279587 0.010593 0.035685 -E 9830.000000 50.000000 30.354204 179.228912 0.010642 0.035850 -E 9840.000000 50.000000 30.355606 179.209183 0.010713 0.036092 -E 9850.000000 50.000000 30.335573 179.276886 0.010799 0.036379 -E 9860.000000 50.000000 30.354708 179.243774 0.010864 0.036599 -E 9870.000000 50.000000 30.328585 179.238968 0.010979 0.036985 -E 9880.000000 50.000000 30.325533 179.255768 0.011074 0.037306 -E 9890.000000 50.000000 30.343845 179.306137 0.011131 0.037499 -E 9900.000000 50.000000 30.316839 179.378387 0.011205 0.037747 -E 9910.000000 50.000000 30.322737 179.327591 0.011287 0.038025 -E 9920.000000 50.000000 30.334053 179.270538 0.011382 0.038345 -E 9930.000000 50.000000 30.349192 179.274521 0.011506 0.038765 -E 9940.000000 50.000000 30.335873 179.314056 0.011627 0.039174 -E 9950.000000 50.000000 30.341789 179.262772 0.011695 0.039403 -E 9960.000000 50.000000 30.343061 179.233398 0.011807 0.039780 -E 9970.000000 50.000000 30.329645 179.291138 0.011897 0.040083 -E 9980.000000 50.000000 30.328741 179.268341 0.012044 0.040578 -E 9990.000000 50.000000 30.328070 179.267197 0.012178 0.041030 -E 10000.000000 50.000000 30.328611 179.226379 0.012291 0.041411 -E 10025.000000 50.000000 30.339270 179.299973 0.006073 0.020474 -E 10050.000000 50.000000 30.339325 179.301315 0.005929 0.019987 -E 10075.000000 50.000000 30.333817 179.267303 0.005756 0.019403 -E 10100.000000 50.000000 30.322105 179.272110 0.005623 0.018957 -E 10125.000000 50.000000 30.309557 179.292755 0.005508 0.018568 -E 10150.000000 50.000000 30.315142 179.302734 0.005365 0.018085 -E 10175.000000 50.000000 30.313940 179.291092 0.005238 0.017658 -E 10200.000000 50.000000 30.305952 179.257767 0.005127 0.017282 -E 10225.000000 50.000000 30.307531 179.296371 0.004996 0.016841 -E 10250.000000 50.000000 30.307104 179.332489 0.004878 0.016444 -E 10275.000000 50.000000 30.299210 179.344360 0.004787 0.016137 -E 10300.000000 50.000000 30.292955 179.314941 0.004670 0.015743 -E 10325.000000 50.000000 30.288057 179.277786 0.004548 0.015332 -E 10350.000000 50.000000 30.287609 179.319748 0.004448 0.014995 -E 10375.000000 50.000000 30.285625 179.334183 0.004354 0.014678 -E 10400.000000 50.000000 30.282236 179.322983 0.004266 0.014382 -E 10425.000000 50.000000 30.283077 179.313507 0.004181 0.014095 -E 10450.000000 50.000000 30.283951 179.311157 0.004098 0.013815 -E 10475.000000 50.000000 30.284035 179.323105 0.004017 0.013541 -E 10500.000000 50.000000 30.275732 179.318069 0.003943 0.013293 -E 10525.000000 50.000000 30.265938 179.308975 0.003875 0.013061 -E 10550.000000 50.000000 30.265594 179.313553 0.003808 0.012836 -E 10575.000000 50.000000 30.266068 179.326279 0.003748 0.012636 -E 10600.000000 50.000000 30.267179 179.345642 0.003695 0.012457 -E 10625.000000 50.000000 30.262539 179.342224 0.003621 0.012207 -E 10650.000000 50.000000 30.258621 179.335022 0.003557 0.011990 -E 10675.000000 50.000000 30.256289 179.323181 0.003508 0.011825 -E 10700.000000 50.000000 30.253208 179.340134 0.003445 0.011614 -E 10725.000000 50.000000 30.250164 179.358612 0.003385 0.011411 -E 10750.000000 50.000000 30.247906 179.349945 0.003345 0.011276 -E 10775.000000 50.000000 30.245653 179.346436 0.003285 0.011073 -E 10800.000000 50.000000 30.243423 179.346420 0.003213 0.010832 -E 10825.000000 50.000000 30.242035 179.357773 0.003165 0.010669 -E 10850.000000 50.000000 30.235353 179.355301 0.003115 0.010499 -E 10875.000000 50.000000 30.221809 179.335159 0.003061 0.010316 -E 10900.000000 50.000000 30.223396 179.341934 0.003019 0.010174 -E 10925.000000 50.000000 30.225708 179.352997 0.002976 0.010031 -E 10950.000000 50.000000 30.222435 179.362488 0.002925 0.009858 -E 10975.000000 50.000000 30.219034 179.358246 0.002884 0.009721 -E 11000.000000 50.000000 30.215967 179.349670 0.002849 0.009603 -E 11025.000000 50.000000 30.216478 179.360062 0.002816 0.009492 -E 11050.000000 50.000000 30.212772 179.361710 0.002789 0.009400 -E 11075.000000 50.000000 30.205166 179.355301 0.002767 0.009324 -E 11100.000000 50.000000 30.203367 179.369217 0.002725 0.009184 -E 11125.000000 50.000000 30.203163 179.369629 0.002692 0.009074 -E 11150.000000 50.000000 30.205065 179.343216 0.002677 0.009023 -E 11175.000000 50.000000 30.202225 179.348404 0.002655 0.008949 -E 11200.000000 50.000000 30.198641 179.360519 0.002634 0.008878 -E 11225.000000 50.000000 30.197510 179.363876 0.002623 0.008839 -E 11250.000000 50.000000 30.193401 179.369156 0.002605 0.008777 -E 11275.000000 50.000000 30.187777 179.375504 0.002583 0.008705 -E 11300.000000 50.000000 30.188314 179.380249 0.002580 0.008694 -E 11325.000000 50.000000 30.186563 179.381668 0.002570 0.008659 -E 11350.000000 50.000000 30.182228 179.379333 0.002552 0.008598 -E 11375.000000 50.000000 30.180725 179.376755 0.002543 0.008569 -E 11400.000000 50.000000 30.178709 179.377731 0.002534 0.008537 -E 11425.000000 50.000000 30.174845 179.386353 0.002521 0.008493 -E 11450.000000 50.000000 30.172667 179.384583 0.002509 0.008452 -E 11475.000000 50.000000 30.171057 179.379791 0.002495 0.008407 -E 11500.000000 50.000000 30.169447 179.377579 0.002477 0.008344 -E 11525.000000 50.000000 30.168097 179.379593 0.002459 0.008286 -E 11550.000000 50.000000 30.166924 179.384338 0.002443 0.008231 -E 11575.000000 50.000000 30.166353 179.388702 0.002434 0.008198 -E 11600.000000 50.000000 30.163115 179.384354 0.002416 0.008140 -E 11625.000000 50.000000 30.156796 179.369919 0.002391 0.008053 -E 11650.000000 50.000000 30.156534 179.383987 0.002376 0.008003 -E 11675.000000 50.000000 30.155527 179.396530 0.002360 0.007951 -E 11700.000000 50.000000 30.151423 179.398697 0.002341 0.007884 -E 11725.000000 50.000000 30.149807 179.388351 0.002328 0.007842 -E 11750.000000 50.000000 30.147722 179.380066 0.002316 0.007799 -E 11775.000000 50.000000 30.140188 179.397934 0.002292 0.007720 -E 11800.000000 50.000000 30.140722 179.398956 0.002271 0.007648 -E 11825.000000 50.000000 30.145166 179.391068 0.002251 0.007582 -E 11850.000000 50.000000 30.134302 179.402481 0.002233 0.007520 -E 11875.000000 50.000000 30.129354 179.405533 0.002216 0.007460 -E 11900.000000 50.000000 30.130415 179.400070 0.002198 0.007402 -E 11925.000000 50.000000 30.130629 179.404663 0.002179 0.007336 -E 11950.000000 50.000000 30.130386 179.410660 0.002161 0.007276 -E 11975.000000 50.000000 30.129478 179.417801 0.002147 0.007229 -E 12000.000000 50.000000 30.124651 179.425766 0.002133 0.007181 -E 12025.000000 50.000000 30.120522 179.429428 0.002119 0.007133 -E 12050.000000 50.000000 30.121578 179.419128 0.002104 0.007084 -E 12075.000000 50.000000 30.121286 179.411514 0.002094 0.007049 -E 12100.000000 50.000000 30.119808 179.406479 0.002085 0.007018 -E 12125.000000 50.000000 30.114285 179.410980 0.002072 0.006974 -E 12150.000000 50.000000 30.111580 179.416412 0.002059 0.006932 -E 12175.000000 50.000000 30.111042 179.422562 0.002047 0.006890 -E 12200.000000 50.000000 30.109694 179.425049 0.002042 0.006874 -E 12225.000000 50.000000 30.108868 179.424820 0.002036 0.006853 -E 12250.000000 50.000000 30.108679 179.421219 0.002029 0.006828 -E 12275.000000 50.000000 30.102942 179.429855 0.002027 0.006820 -E 12300.000000 50.000000 30.099190 179.434479 0.002026 0.006819 -E 12325.000000 50.000000 30.100790 179.428040 0.002030 0.006830 -E 12350.000000 50.000000 30.101753 179.434891 0.002024 0.006811 -E 12375.000000 50.000000 30.100403 179.440170 0.002021 0.006799 -E 12400.000000 50.000000 30.091654 179.427048 0.002033 0.006841 -E 12425.000000 50.000000 30.089205 179.429413 0.002029 0.006826 -E 12450.000000 50.000000 30.089598 179.436981 0.002019 0.006793 -E 12475.000000 50.000000 30.088137 179.426987 0.002026 0.006817 -E 12500.000000 50.000000 30.087551 179.424042 0.002020 0.006796 -E 12525.000000 50.000000 30.087547 179.426575 0.002004 0.006742 -E 12550.000000 50.000000 30.083096 179.433182 0.001998 0.006720 -E 12575.000000 50.000000 30.081680 179.434418 0.001990 0.006693 -E 12600.000000 50.000000 30.083725 179.429581 0.001980 0.006658 -E 12625.000000 50.000000 30.080915 179.443893 0.001975 0.006642 -E 12650.000000 50.000000 30.079355 179.451416 0.001968 0.006618 -E 12675.000000 50.000000 30.080673 179.444504 0.001956 0.006577 -E 12700.000000 50.000000 30.076685 179.450378 0.001943 0.006533 -E 12725.000000 50.000000 30.070919 179.451370 0.001934 0.006502 -E 12750.000000 50.000000 30.063442 179.432236 0.001935 0.006506 -E 12775.000000 50.000000 30.065218 179.441727 0.001924 0.006470 -E 12800.000000 50.000000 30.068748 179.457916 0.001910 0.006422 -E 12825.000000 50.000000 30.064947 179.457123 0.001901 0.006390 -E 12850.000000 50.000000 30.063169 179.457260 0.001892 0.006361 -E 12875.000000 50.000000 30.062559 179.457626 0.001884 0.006334 -E 12900.000000 50.000000 30.062298 179.455124 0.001877 0.006309 -E 12925.000000 50.000000 30.058578 179.459946 0.001867 0.006276 -E 12950.000000 50.000000 30.052181 179.470428 0.001856 0.006237 -E 12975.000000 50.000000 30.054710 179.460846 0.001850 0.006217 -E 13000.000000 50.000000 30.054024 179.457184 0.001844 0.006196 -E 13025.000000 50.000000 30.049728 179.460144 0.001837 0.006173 -E 13050.000000 50.000000 30.050802 179.473831 0.001827 0.006139 -E 13075.000000 50.000000 30.050880 179.474670 0.001819 0.006112 -E 13100.000000 50.000000 30.048740 179.454163 0.001815 0.006097 -E 13125.000000 50.000000 30.047749 179.466904 0.001810 0.006081 -E 13150.000000 50.000000 30.046177 179.479095 0.001805 0.006064 -E 13175.000000 50.000000 30.042879 179.477142 0.001799 0.006044 -E 13200.000000 50.000000 30.042889 179.480957 0.001794 0.006026 -E 13225.000000 50.000000 30.042961 179.483276 0.001791 0.006016 -E 13250.000000 50.000000 30.040148 179.475464 0.001794 0.006024 -E 13275.000000 50.000000 30.038237 179.477036 0.001792 0.006018 -E 13300.000000 50.000000 30.036457 179.480713 0.001790 0.006010 -E 13325.000000 50.000000 30.033394 179.474716 0.001793 0.006020 -E 13350.000000 50.000000 30.033972 179.474991 0.001796 0.006030 -E 13375.000000 50.000000 30.036030 179.479111 0.001798 0.006038 -E 13400.000000 50.000000 30.032175 179.485306 0.001799 0.006041 -E 13425.000000 50.000000 30.030514 179.486816 0.001804 0.006055 -E 13450.000000 50.000000 30.030468 179.484711 0.001810 0.006077 -E 13475.000000 50.000000 30.028555 179.483109 0.001822 0.006115 -E 13500.000000 50.000000 30.027227 179.485214 0.001834 0.006155 -E 13525.000000 50.000000 30.026484 179.491074 0.001846 0.006198 -E 13550.000000 50.000000 30.024529 179.488251 0.001871 0.006281 -E 13575.000000 50.000000 30.023066 179.487198 0.001897 0.006367 -E 13600.000000 50.000000 30.022299 179.488770 0.001924 0.006456 -E 13625.000000 50.000000 30.017052 179.487427 0.001941 0.006513 -E 13650.000000 50.000000 30.014164 179.483307 0.001958 0.006569 -E 13675.000000 50.000000 30.015799 179.475098 0.001975 0.006628 -E 13700.000000 50.000000 30.014881 179.482162 0.002022 0.006783 -E 13725.000000 50.000000 30.013321 179.488419 0.002100 0.007046 -E 13750.000000 50.000000 30.011250 179.487076 0.002242 0.007522 -E 13775.000000 50.000000 30.007814 179.496078 0.002446 0.008206 -E 13800.000000 50.000000 30.005411 179.501831 0.002662 0.008928 -E 13825.000000 50.000000 30.007725 179.487244 0.002791 0.009360 -E 13850.000000 50.000000 30.010691 179.479370 0.002769 0.009286 -E 13875.000000 50.000000 30.012869 179.484161 0.002687 0.009013 -E 13900.000000 50.000000 30.012791 179.518799 0.002573 0.008629 -E 13925.000000 50.000000 30.005213 179.504425 0.002503 0.008393 -E 13950.000000 50.000000 29.998327 179.481781 0.002437 0.008171 -E 13975.000000 50.000000 30.004522 179.495712 0.002322 0.007786 -E 14000.000000 50.000000 30.001305 179.505890 0.002254 0.007556 -E 14025.000000 50.000000 29.995764 179.513641 0.002205 0.007391 -E 14050.000000 50.000000 29.999598 179.517258 0.002150 0.007207 -E 14075.000000 50.000000 29.999165 179.513794 0.002112 0.007078 -E 14100.000000 50.000000 29.996456 179.507538 0.002082 0.006977 -E 14125.000000 50.000000 29.994030 179.508728 0.002042 0.006844 -E 14150.000000 50.000000 29.991705 179.506042 0.002016 0.006756 -E 14175.000000 50.000000 29.989847 179.502808 0.001998 0.006695 -E 14200.000000 50.000000 29.992411 179.520416 0.001977 0.006624 -E 14225.000000 50.000000 29.989735 179.526520 0.001964 0.006580 -E 14250.000000 50.000000 29.983471 179.523926 0.001956 0.006554 -E 14275.000000 50.000000 29.983101 179.517593 0.001944 0.006511 -E 14300.000000 50.000000 29.982849 179.512878 0.001935 0.006482 -E 14325.000000 50.000000 29.982729 179.509705 0.001930 0.006464 -E 14350.000000 50.000000 29.983572 179.514709 0.001925 0.006445 -E 14375.000000 50.000000 29.982859 179.516998 0.001919 0.006426 -E 14400.000000 50.000000 29.980696 179.516724 0.001913 0.006406 -E 14425.000000 50.000000 29.980898 179.520294 0.001914 0.006408 -E 14450.000000 50.000000 29.978909 179.524521 0.001911 0.006396 -E 14475.000000 50.000000 29.974642 179.529419 0.001903 0.006369 -E 14500.000000 50.000000 29.976574 179.527008 0.001900 0.006361 -E 14525.000000 50.000000 29.976213 179.519394 0.001902 0.006364 -E 14550.000000 50.000000 29.973116 179.506012 0.001906 0.006380 -E 14575.000000 50.000000 29.976366 179.515472 0.001898 0.006352 -E 14600.000000 50.000000 29.974144 179.523346 0.001898 0.006350 -E 14625.000000 50.000000 29.965015 179.528336 0.001907 0.006381 -E 14650.000000 50.000000 29.966658 179.531723 0.001902 0.006362 -E 14675.000000 50.000000 29.967539 179.526535 0.001903 0.006365 -E 14700.000000 50.000000 29.966734 179.510452 0.001913 0.006398 -E 14725.000000 50.000000 29.968668 179.514587 0.001907 0.006379 -E 14750.000000 50.000000 29.968100 179.518570 0.001907 0.006378 -E 14775.000000 50.000000 29.963980 179.520584 0.001916 0.006406 -E 14800.000000 50.000000 29.965082 179.531891 0.001915 0.006401 -E 14825.000000 50.000000 29.962446 179.532944 0.001914 0.006400 -E 14850.000000 50.000000 29.954145 179.519028 0.001916 0.006407 -E 14875.000000 50.000000 29.957338 179.525589 0.001919 0.006415 -E 14900.000000 50.000000 29.957594 179.528061 0.001924 0.006431 -E 14925.000000 50.000000 29.952391 179.522415 0.001933 0.006459 -E 14950.000000 50.000000 29.955393 179.526550 0.001932 0.006455 -E 14975.000000 50.000000 29.954981 179.528641 0.001936 0.006469 -E 15000.000000 50.000000 29.948786 179.526718 0.001949 0.006513 -E 15025.000000 50.000000 29.953321 179.527344 0.001946 0.006502 -E 15050.000000 50.000000 29.953947 179.536316 0.001949 0.006510 -E 15075.000000 50.000000 29.947922 179.556595 0.001961 0.006550 -E 15100.000000 50.000000 29.948017 179.540634 0.001959 0.006544 -E 15125.000000 50.000000 29.946371 179.535309 0.001960 0.006546 -E 15150.000000 50.000000 29.941725 179.548325 0.001965 0.006562 -E 15175.000000 50.000000 29.941496 179.539444 0.001969 0.006573 -E 15200.000000 50.000000 29.942516 179.537521 0.001974 0.006592 -E 15225.000000 50.000000 29.944754 179.546753 0.001984 0.006623 -E 15250.000000 50.000000 29.942436 179.543625 0.001987 0.006634 -E 15275.000000 50.000000 29.938793 179.544434 0.001994 0.006656 -E 15300.000000 50.000000 29.933817 179.551086 0.002006 0.006694 -E 15325.000000 50.000000 29.938711 179.546188 0.002007 0.006698 -E 15350.000000 50.000000 29.938967 179.542130 0.002012 0.006714 -E 15375.000000 50.000000 29.933300 179.539658 0.002022 0.006747 -E 15400.000000 50.000000 29.931229 179.556473 0.002026 0.006760 -E 15425.000000 50.000000 29.930384 179.565002 0.002036 0.006790 -E 15450.000000 50.000000 29.930771 179.563950 0.002051 0.006841 -E 15475.000000 50.000000 29.938086 179.555161 0.002054 0.006851 -E 15500.000000 50.000000 29.938864 179.553223 0.002061 0.006874 -E 15525.000000 50.000000 29.933184 179.557907 0.002072 0.006908 -E 15550.000000 50.000000 29.931524 179.548126 0.002070 0.006902 -E 15575.000000 50.000000 29.928980 179.545761 0.002078 0.006926 -E 15600.000000 50.000000 29.925861 179.550339 0.002093 0.006976 -E 15625.000000 50.000000 29.927835 179.561096 0.002097 0.006989 -E 15650.000000 50.000000 29.926607 179.560883 0.002106 0.007019 -E 15675.000000 50.000000 29.923122 179.552933 0.002119 0.007060 -E 15700.000000 50.000000 29.923845 179.559723 0.002121 0.007069 -E 15725.000000 50.000000 29.922953 179.564621 0.002130 0.007097 -E 15750.000000 50.000000 29.921459 179.567734 0.002143 0.007139 -E 15775.000000 50.000000 29.924519 179.566864 0.002151 0.007166 -E 15800.000000 50.000000 29.923111 179.571686 0.002160 0.007196 -E 15825.000000 50.000000 29.919291 179.578995 0.002171 0.007230 -E 15850.000000 50.000000 29.917509 179.580063 0.002185 0.007277 -E 15875.000000 50.000000 29.916458 179.571503 0.002194 0.007307 -E 15900.000000 50.000000 29.916624 179.560913 0.002202 0.007330 -E 15925.000000 50.000000 29.920561 179.564209 0.002214 0.007370 -E 15950.000000 50.000000 29.919048 179.572739 0.002229 0.007419 -E 15975.000000 50.000000 29.916357 179.578796 0.002244 0.007469 -E 16000.000000 50.000000 29.917961 179.567841 0.002254 0.007503 -E 16025.000000 50.000000 29.920023 179.572235 0.002264 0.007536 -E 16050.000000 50.000000 29.920021 179.576477 0.002276 0.007576 -E 16075.000000 50.000000 29.913780 179.565414 0.002294 0.007634 -E 16100.000000 50.000000 29.908836 179.570587 0.002309 0.007684 -E 16125.000000 50.000000 29.906479 179.575302 0.002322 0.007726 -E 16150.000000 50.000000 29.909039 179.569382 0.002332 0.007759 -E 16175.000000 50.000000 29.907488 179.565125 0.002353 0.007826 -E 16200.000000 50.000000 29.906897 179.566666 0.002372 0.007890 -E 16225.000000 50.000000 29.909378 179.577866 0.002387 0.007937 -E 16250.000000 50.000000 29.912039 179.586533 0.002403 0.007991 -E 16275.000000 50.000000 29.911755 179.588699 0.002421 0.008051 -E 16300.000000 50.000000 29.907314 179.582184 0.002443 0.008121 -E 16325.000000 50.000000 29.904970 179.578934 0.002463 0.008188 -E 16350.000000 50.000000 29.905828 179.579453 0.002485 0.008262 -E 16375.000000 50.000000 29.910107 179.583878 0.002511 0.008346 -E 16400.000000 50.000000 29.909285 179.576080 0.002530 0.008410 -E 16425.000000 50.000000 29.907387 179.577789 0.002562 0.008514 -E 16450.000000 50.000000 29.904627 179.587250 0.002603 0.008649 -E 16475.000000 50.000000 29.902878 179.588730 0.002620 0.008707 -E 16500.000000 50.000000 29.904718 179.583328 0.002658 0.008832 -E 16525.000000 50.000000 29.907667 179.575714 0.002710 0.009003 -E 16550.000000 50.000000 29.901731 179.584335 0.002758 0.009163 -E 16575.000000 50.000000 29.896313 179.578873 0.002829 0.009397 -E 16600.000000 50.000000 29.893032 179.572754 0.002916 0.009685 -E 16625.000000 50.000000 29.897575 179.594009 0.003016 0.010018 -E 16650.000000 50.000000 29.899906 179.597870 0.003187 0.010585 -E 16675.000000 50.000000 29.900501 179.598389 0.003411 0.011328 -E 16700.000000 50.000000 29.897877 179.608627 0.003687 0.012243 -E 16725.000000 50.000000 29.900707 179.591629 0.004098 0.013605 -E 16750.000000 50.000000 29.904716 179.589706 0.004631 0.015373 -E 16775.000000 50.000000 29.907181 179.644882 0.005301 0.017596 -E 16800.000000 50.000000 29.895750 179.623108 0.006182 0.020522 -E 16825.000000 50.000000 29.893005 179.591934 0.007257 0.024086 -E 16850.000000 50.000000 29.912489 179.569946 0.008470 0.028111 -E 16875.000000 50.000000 29.904127 179.600922 0.009913 0.032898 -E 16900.000000 50.000000 29.893539 179.645523 0.011633 0.038601 -E 16925.000000 50.000000 29.882179 179.699280 0.013605 0.045141 -E 16950.000000 50.000000 29.876783 179.660049 0.015759 0.052284 -E 16975.000000 50.000000 29.872837 179.641144 0.018087 0.060003 -E 17000.000000 50.000000 29.875265 179.633972 0.020630 0.068434 -E 1930.000000 60.000000 38.278538 120.925606 0.008911 0.034066 -E 1940.000000 60.000000 38.289627 121.167152 0.008109 0.030967 -E 1950.000000 60.000000 38.272587 121.402153 0.007470 0.028480 -E 1960.000000 60.000000 38.260330 121.727058 0.007050 0.026845 -E 1970.000000 60.000000 38.263359 122.087471 0.006708 0.025519 -E 1980.000000 60.000000 38.250435 122.430313 0.006447 0.024495 -E 1990.000000 60.000000 38.254402 122.826157 0.006225 0.023632 -E 2000.000000 60.000000 38.248089 123.207130 0.006021 0.022838 -E 2010.000000 60.000000 38.208851 123.652802 0.005855 0.022184 -E 2020.000000 60.000000 38.201485 124.028328 0.005674 0.021483 -E 2030.000000 60.000000 38.186844 124.411926 0.005493 0.020786 -E 2040.000000 60.000000 38.146591 124.798195 0.005337 0.020175 -E 2050.000000 60.000000 38.125309 125.155060 0.005179 0.019562 -E 2060.000000 60.000000 38.112541 125.560593 0.005024 0.018960 -E 2070.000000 60.000000 38.073868 125.876305 0.004877 0.018376 -E 2080.000000 60.000000 38.041710 126.188416 0.004740 0.017830 -E 2090.000000 60.000000 38.023827 126.548409 0.004607 0.017304 -E 2100.000000 60.000000 37.994781 126.865059 0.004488 0.016825 -E 2110.000000 60.000000 37.979832 127.161507 0.004388 0.016416 -E 2120.000000 60.000000 37.957214 127.460625 0.004293 0.016024 -E 2130.000000 60.000000 37.933399 127.870689 0.004201 0.015650 -E 2140.000000 60.000000 37.917744 128.205978 0.004121 0.015320 -E 2150.000000 60.000000 37.906982 128.504715 0.004046 0.015011 -E 2160.000000 60.000000 37.893452 128.830780 0.003979 0.014737 -E 2170.000000 60.000000 37.878872 129.184280 0.003919 0.014485 -E 2180.000000 60.000000 37.867455 129.537735 0.003855 0.014228 -E 2190.000000 60.000000 37.860775 129.854584 0.003790 0.013964 -E 2200.000000 60.000000 37.847683 130.185211 0.003727 0.013712 -E 2210.000000 60.000000 37.830784 130.515106 0.003670 0.013479 -E 2220.000000 60.000000 37.816380 130.892395 0.003611 0.013244 -E 2230.000000 60.000000 37.801361 131.283890 0.003557 0.013029 -E 2240.000000 60.000000 37.778706 131.628616 0.003507 0.012828 -E 2250.000000 60.000000 37.743412 131.985764 0.003463 0.012646 -E 2260.000000 60.000000 37.702560 132.398148 0.003422 0.012478 -E 2270.000000 60.000000 37.650112 132.785751 0.003380 0.012309 -E 2280.000000 60.000000 37.578609 133.152740 0.003341 0.012146 -E 2290.000000 60.000000 37.500362 133.524399 0.003302 0.011982 -E 2300.000000 60.000000 37.402233 133.862473 0.003269 0.011841 -E 2310.000000 60.000000 37.286510 134.168198 0.003240 0.011713 -E 2320.000000 60.000000 37.176014 134.370193 0.003211 0.011586 -E 2330.000000 60.000000 37.065907 134.522812 0.003186 0.011474 -E 2340.000000 60.000000 36.972538 134.655243 0.003163 0.011370 -E 2350.000000 60.000000 36.899826 134.763580 0.003138 0.011264 -E 2360.000000 60.000000 36.847996 134.777390 0.003116 0.011170 -E 2370.000000 60.000000 36.820316 134.843552 0.003092 0.011073 -E 2380.000000 60.000000 36.813324 134.895035 0.003068 0.010978 -E 2390.000000 60.000000 36.829830 134.925934 0.003047 0.010899 -E 2400.000000 60.000000 36.873516 134.992889 0.003028 0.010825 -E 2410.000000 60.000000 36.921291 135.080475 0.003009 0.010757 -E 2420.000000 60.000000 36.972084 135.234268 0.002991 0.010691 -E 2430.000000 60.000000 37.040279 135.401321 0.002978 0.010644 -E 2440.000000 60.000000 37.111458 135.546844 0.002965 0.010595 -E 2450.000000 60.000000 37.185677 135.716415 0.002952 0.010548 -E 2460.000000 60.000000 37.267071 135.944778 0.002942 0.010512 -E 2470.000000 60.000000 37.349518 136.183685 0.002932 0.010480 -E 2480.000000 60.000000 37.428848 136.428253 0.002923 0.010446 -E 2490.000000 60.000000 37.515572 136.672287 0.002916 0.010421 -E 2500.000000 60.000000 37.599571 136.946274 0.002913 0.010412 -E 2510.000000 60.000000 37.672523 137.251846 0.002913 0.010409 -E 2520.000000 60.000000 37.751587 137.545654 0.002910 0.010397 -E 2530.000000 60.000000 37.829937 137.842560 0.002911 0.010401 -E 2540.000000 60.000000 37.906437 138.159271 0.002918 0.010424 -E 2550.000000 60.000000 37.980633 138.489120 0.002924 0.010445 -E 2560.000000 60.000000 38.052593 138.831039 0.002934 0.010477 -E 2570.000000 60.000000 38.130104 139.198883 0.002945 0.010518 -E 2580.000000 60.000000 38.199741 139.574127 0.002958 0.010560 -E 2590.000000 60.000000 38.265358 139.923981 0.002972 0.010609 -E 2600.000000 60.000000 38.340096 140.324966 0.002991 0.010674 -E 2610.000000 60.000000 38.403397 140.742645 0.003011 0.010743 -E 2620.000000 60.000000 38.471260 141.163712 0.003030 0.010809 -E 2630.000000 60.000000 38.548508 141.574554 0.003052 0.010887 -E 2640.000000 60.000000 38.605827 142.005463 0.003078 0.010977 -E 2650.000000 60.000000 38.674141 142.449142 0.003105 0.011070 -E 2660.000000 60.000000 38.742176 142.932846 0.003136 0.011180 -E 2670.000000 60.000000 38.801376 143.432236 0.003168 0.011291 -E 2680.000000 60.000000 38.849037 143.927231 0.003199 0.011399 -E 2690.000000 60.000000 38.892525 144.469009 0.003230 0.011502 -E 2700.000000 60.000000 38.927624 145.003006 0.003263 0.011617 -E 2710.000000 60.000000 38.938728 145.538116 0.003303 0.011751 -E 2720.000000 60.000000 38.951885 146.128418 0.003338 0.011870 -E 2730.000000 60.000000 38.948807 146.727997 0.003373 0.011986 -E 2740.000000 60.000000 38.924351 147.303818 0.003413 0.012119 -E 2750.000000 60.000000 38.890865 147.869202 0.003451 0.012243 -E 2760.000000 60.000000 38.849129 148.433777 0.003492 0.012376 -E 2770.000000 60.000000 38.786488 148.970932 0.003542 0.012540 -E 2780.000000 60.000000 38.711948 149.538452 0.003578 0.012652 -E 2790.000000 60.000000 38.637608 150.072784 0.003609 0.012747 -E 2800.000000 60.000000 38.561638 150.581985 0.003643 0.012852 -E 2810.000000 60.000000 38.491306 151.085861 0.003684 0.012983 -E 2820.000000 60.000000 38.407974 151.590714 0.003727 0.013119 -E 2830.000000 60.000000 38.316181 152.109497 0.003769 0.013248 -E 2840.000000 60.000000 38.230812 152.638489 0.003808 0.013368 -E 2850.000000 60.000000 38.129639 153.146362 0.003858 0.013528 -E 2860.000000 60.000000 38.022018 153.639267 0.003911 0.013692 -E 2870.000000 60.000000 37.907173 154.173355 0.003958 0.013837 -E 2880.000000 60.000000 37.756218 154.745682 0.004016 0.014018 -E 2890.000000 60.000000 37.594189 155.254028 0.004078 0.014209 -E 2900.000000 60.000000 37.404324 155.725388 0.004145 0.014412 -E 2910.000000 60.000000 37.198780 156.210236 0.004216 0.014629 -E 2920.000000 60.000000 36.982185 156.603745 0.004289 0.014851 -E 2930.000000 60.000000 36.750244 156.912109 0.004364 0.015075 -E 2940.000000 60.000000 36.525887 157.233994 0.004435 0.015289 -E 2950.000000 60.000000 36.322727 157.499176 0.004505 0.015499 -E 2960.000000 60.000000 36.112434 157.684692 0.004580 0.015724 -E 2970.000000 60.000000 35.914429 157.861572 0.004650 0.015933 -E 2980.000000 60.000000 35.721848 158.017960 0.004724 0.016159 -E 2990.000000 60.000000 35.556854 158.179062 0.004797 0.016383 -E 3000.000000 60.000000 35.397190 158.308258 0.004872 0.016612 -E 3010.000000 60.000000 35.242344 158.414810 0.004941 0.016822 -E 3020.000000 60.000000 35.087296 158.471970 0.005016 0.017053 -E 3030.000000 60.000000 34.942444 158.543625 0.005099 0.017312 -E 3040.000000 60.000000 34.823170 158.614563 0.005172 0.017541 -E 3050.000000 60.000000 34.712116 158.689301 0.005256 0.017807 -E 3060.000000 60.000000 34.584831 158.759933 0.005337 0.018060 -E 3070.000000 60.000000 34.494347 158.823944 0.005409 0.018289 -E 3080.000000 60.000000 34.409149 158.856583 0.005487 0.018536 -E 3090.000000 60.000000 34.320488 158.893677 0.005569 0.018798 -E 3100.000000 60.000000 34.220039 158.963379 0.005649 0.019049 -E 3110.000000 60.000000 34.131813 159.003479 0.005723 0.019284 -E 3120.000000 60.000000 34.078037 159.040726 0.005799 0.019528 -E 3130.000000 60.000000 34.008434 159.145584 0.005865 0.019737 -E 3140.000000 60.000000 33.922028 159.249649 0.005941 0.019979 -E 3150.000000 60.000000 33.860493 159.308792 0.006022 0.020238 -E 3160.000000 60.000000 33.809444 159.339249 0.006092 0.020465 -E 3170.000000 60.000000 33.743847 159.375107 0.006170 0.020712 -E 3180.000000 60.000000 33.700306 159.452164 0.006236 0.020925 -E 3190.000000 60.000000 33.636578 159.533142 0.006316 0.021184 -E 3200.000000 60.000000 33.597847 159.579269 0.006388 0.021417 -E 3210.000000 60.000000 33.570705 159.651001 0.006465 0.021667 -E 3220.000000 60.000000 33.527607 159.738968 0.006540 0.021909 -E 3230.000000 60.000000 33.492535 159.807205 0.006611 0.022142 -E 3240.000000 60.000000 33.454685 159.904587 0.006684 0.022378 -E 3250.000000 60.000000 33.408737 159.925537 0.006761 0.022628 -E 3260.000000 60.000000 33.386749 160.073517 0.006887 0.023043 -E 3270.000000 60.000000 33.349045 160.167694 0.007041 0.023548 -E 3280.000000 60.000000 33.320282 160.205780 0.007180 0.024009 -E 3290.000000 60.000000 33.310574 160.317963 0.007288 0.024366 -E 3300.000000 60.000000 33.272793 160.365402 0.007405 0.024748 -E 3310.000000 60.000000 33.239120 160.442200 0.007520 0.025124 -E 3320.000000 60.000000 33.248146 160.567780 0.007588 0.025350 -E 3330.000000 60.000000 33.221409 160.651962 0.007652 0.025559 -E 3340.000000 60.000000 33.190601 160.696381 0.007707 0.025736 -E 3350.000000 60.000000 33.160027 160.759171 0.007775 0.025954 -E 3360.000000 60.000000 33.157284 160.913376 0.007829 0.026131 -E 3370.000000 60.000000 33.151142 161.031982 0.007863 0.026244 -E 3380.000000 60.000000 33.128952 161.091217 0.007901 0.026365 -E 3390.000000 60.000000 33.123825 161.248840 0.007905 0.026375 -E 3400.000000 60.000000 33.121628 161.289963 0.007921 0.026424 -E 3410.000000 60.000000 33.117199 161.372971 0.007957 0.026541 -E 3420.000000 60.000000 33.136242 161.551849 0.008015 0.026734 -E 3430.000000 60.000000 33.118813 161.631927 0.008070 0.026916 -E 3440.000000 60.000000 33.120609 161.662888 0.008118 0.027073 -E 3450.000000 60.000000 33.127647 161.751862 0.008197 0.027336 -E 3460.000000 60.000000 33.129829 161.871964 0.008253 0.027521 -E 3470.000000 60.000000 33.143055 162.011581 0.008326 0.027765 -E 3480.000000 60.000000 33.182995 162.125031 0.008376 0.027934 -E 3490.000000 60.000000 33.178242 162.265320 0.008434 0.028125 -E 3500.000000 60.000000 33.208729 162.391495 0.008489 0.028310 -E 3510.000000 60.000000 33.270031 162.455765 0.008542 0.028495 -E 3520.000000 60.000000 33.287575 162.586380 0.008603 0.028698 -E 3530.000000 60.000000 33.324596 162.701187 0.008660 0.028892 -E 3540.000000 60.000000 33.388176 162.842087 0.008724 0.029116 -E 3550.000000 60.000000 33.437271 163.059845 0.008778 0.029299 -E 3560.000000 60.000000 33.500336 163.214371 0.008819 0.029447 -E 3570.000000 60.000000 33.572987 163.434769 0.008865 0.029608 -E 3580.000000 60.000000 33.646152 163.691727 0.008911 0.029775 -E 3590.000000 60.000000 33.727108 163.895004 0.008954 0.029929 -E 3600.000000 60.000000 33.781876 164.222900 0.009003 0.030099 -E 3610.000000 60.000000 33.860466 164.615067 0.009050 0.030268 -E 3620.000000 60.000000 33.944340 165.009338 0.009059 0.030313 -E 3630.000000 60.000000 33.995335 165.418808 0.009084 0.030405 -E 3640.000000 60.000000 34.033634 165.834747 0.009140 0.030598 -E 3650.000000 60.000000 34.030277 166.278992 0.009224 0.030877 -E 3660.000000 60.000000 34.045547 166.755280 0.009199 0.030794 -E 3670.000000 60.000000 34.054699 167.277054 0.009130 0.030562 -E 3680.000000 60.000000 34.021641 167.829895 0.009114 0.030504 -E 3690.000000 60.000000 33.948914 168.359634 0.009167 0.030667 -E 3700.000000 60.000000 33.886036 168.780380 0.009285 0.031048 -E 3710.000000 60.000000 33.799667 169.237854 0.009413 0.031460 -E 3720.000000 60.000000 33.718525 169.740021 0.009466 0.031623 -E 3730.000000 60.000000 33.590622 170.219986 0.009554 0.031894 -E 3740.000000 60.000000 33.436661 170.644150 0.009657 0.032211 -E 3750.000000 60.000000 33.298901 171.032684 0.009678 0.032258 -E 3760.000000 60.000000 33.148689 171.438858 0.009680 0.032237 -E 3770.000000 60.000000 32.987064 171.779633 0.009720 0.032345 -E 3780.000000 60.000000 32.813496 172.089767 0.009697 0.032243 -E 3790.000000 60.000000 32.649033 172.327026 0.009658 0.032089 -E 3800.000000 60.000000 32.504410 172.576401 0.009674 0.032120 -E 3810.000000 60.000000 32.324226 172.783401 0.009788 0.032476 -E 3820.000000 60.000000 32.169716 173.004089 0.009887 0.032784 -E 3830.000000 60.000000 32.045029 173.197052 0.009837 0.032602 -E 3840.000000 60.000000 31.887426 173.305191 0.009873 0.032701 -E 3850.000000 60.000000 31.747267 173.383835 0.009987 0.033065 -E 3860.000000 60.000000 31.593290 173.526245 0.009957 0.032948 -E 3870.000000 60.000000 31.457291 173.761185 0.009832 0.032519 -E 3880.000000 60.000000 31.337835 173.822891 0.009699 0.032070 -E 3890.000000 60.000000 31.201456 173.942535 0.009754 0.032240 -E 3900.000000 60.000000 31.086119 174.092270 0.010046 0.033195 -E 3910.000000 60.000000 30.981161 174.098099 0.010351 0.034194 -E 3920.000000 60.000000 30.857571 174.223724 0.010321 0.034084 -E 3930.000000 60.000000 30.752151 174.301712 0.010158 0.033539 -E 3940.000000 60.000000 30.653267 174.274979 0.010031 0.033113 -E 3950.000000 60.000000 30.538107 174.371429 0.010022 0.033077 -E 3960.000000 60.000000 30.419920 174.473465 0.010147 0.033485 -E 3970.000000 60.000000 30.315388 174.518097 0.010266 0.033872 -E 3980.000000 60.000000 30.223312 174.605606 0.010137 0.033443 -E 3990.000000 60.000000 30.146410 174.663269 0.009991 0.032958 -E 4000.000000 60.000000 30.048800 174.738602 0.010085 0.033266 -E 4010.000000 60.000000 29.952791 174.776459 0.010330 0.034074 -E 4020.000000 60.000000 29.856138 174.821655 0.010492 0.034605 -E 4030.000000 60.000000 29.761572 174.831024 0.010520 0.034698 -E 4040.000000 60.000000 29.693836 174.841888 0.010433 0.034410 -E 4050.000000 60.000000 29.618488 174.864624 0.010228 0.033733 -E 4060.000000 60.000000 29.524929 174.949417 0.010025 0.033064 -E 4070.000000 60.000000 29.432436 175.032135 0.010075 0.033229 -E 4080.000000 60.000000 29.368515 175.057571 0.010378 0.034231 -E 4090.000000 60.000000 29.302229 175.077499 0.010620 0.035031 -E 4100.000000 60.000000 29.227179 175.117371 0.010671 0.035201 -E 4110.000000 60.000000 29.139574 175.125824 0.010677 0.035223 -E 4120.000000 60.000000 29.073658 175.188690 0.010556 0.034825 -E 4130.000000 60.000000 29.017221 175.296875 0.010255 0.033836 -E 4140.000000 60.000000 28.928747 175.270020 0.010152 0.033497 -E 4150.000000 60.000000 28.849491 175.290283 0.010328 0.034084 -E 4160.000000 60.000000 28.766273 175.296829 0.010441 0.034460 -E 4170.000000 60.000000 28.711807 175.350739 0.010416 0.034381 -E 4180.000000 60.000000 28.663584 175.428833 0.010424 0.034412 -E 4190.000000 60.000000 28.568825 175.439590 0.010576 0.034919 -E 4200.000000 60.000000 28.518906 175.427872 0.010613 0.035044 -E 4210.000000 60.000000 28.465252 175.491501 0.010341 0.034152 -E 4220.000000 60.000000 28.393484 175.512482 0.010016 0.033083 -E 4230.000000 60.000000 28.333054 175.529251 0.009825 0.032457 -E 4240.000000 60.000000 28.296436 175.568710 0.009809 0.032408 -E 4250.000000 60.000000 28.235840 175.664185 0.010160 0.033572 -E 4260.000000 60.000000 28.162455 175.715546 0.010574 0.034947 -E 4270.000000 60.000000 28.088741 175.594986 0.010549 0.034873 -E 4280.000000 60.000000 28.031204 175.616592 0.010251 0.033893 -E 4290.000000 60.000000 28.008190 175.663742 0.010336 0.034176 -E 4300.000000 60.000000 27.946365 175.650665 0.010411 0.034431 -E 4310.000000 60.000000 27.897816 175.723389 0.010334 0.034184 -E 4320.000000 60.000000 27.851152 175.799011 0.010494 0.034717 -E 4330.000000 60.000000 27.802034 175.824066 0.010666 0.035292 -E 4340.000000 60.000000 27.741825 175.777390 0.010440 0.034554 -E 4350.000000 60.000000 27.707724 175.843536 0.010328 0.034188 -E 4360.000000 60.000000 27.655363 175.889053 0.010482 0.034704 -E 4370.000000 60.000000 27.593792 175.831848 0.010510 0.034807 -E 4380.000000 60.000000 27.568989 175.843643 0.010441 0.034580 -E 4390.000000 60.000000 27.497252 175.890350 0.010379 0.034386 -E 4400.000000 60.000000 27.432423 175.863876 0.010357 0.034324 -E 4410.000000 60.000000 27.402828 175.894363 0.010187 0.033763 -E 4420.000000 60.000000 27.351501 175.900925 0.009855 0.032673 -E 4430.000000 60.000000 27.305904 175.990524 0.009818 0.032557 -E 4440.000000 60.000000 27.257071 176.074188 0.009920 0.032903 -E 4450.000000 60.000000 27.211569 176.044205 0.009872 0.032751 -E 4460.000000 60.000000 27.175421 176.038147 0.009804 0.032530 -E 4470.000000 60.000000 27.145021 176.047882 0.009859 0.032719 -E 4480.000000 60.000000 27.107508 176.052765 0.009926 0.032946 -E 4490.000000 60.000000 27.057575 176.026657 0.009928 0.032963 -E 4500.000000 60.000000 27.015406 176.047501 0.009876 0.032798 -E 4510.000000 60.000000 26.976776 176.107620 0.009879 0.032815 -E 4520.000000 60.000000 26.933971 176.161606 0.009921 0.032963 -E 4530.000000 60.000000 26.873550 176.117493 0.009921 0.032973 -E 4540.000000 60.000000 26.841284 176.114029 0.009880 0.032841 -E 4550.000000 60.000000 26.810656 176.184128 0.009838 0.032711 -E 4560.000000 60.000000 26.763489 176.192047 0.009762 0.032466 -E 4570.000000 60.000000 26.728596 176.215195 0.009627 0.032023 -E 4580.000000 60.000000 26.702223 176.252228 0.009410 0.031307 -E 4590.000000 60.000000 26.676874 176.214218 0.009252 0.030785 -E 4600.000000 60.000000 26.646814 176.273590 0.009392 0.031259 -E 4610.000000 60.000000 26.619883 176.292831 0.009633 0.032067 -E 4620.000000 60.000000 26.555542 176.210007 0.009731 0.032405 -E 4630.000000 60.000000 26.506369 176.289368 0.009515 0.031697 -E 4640.000000 60.000000 26.474350 176.337646 0.009170 0.030553 -E 4650.000000 60.000000 26.455833 176.291962 0.009048 0.030151 -E 4660.000000 60.000000 26.408234 176.303009 0.009164 0.030547 -E 4670.000000 60.000000 26.380226 176.350204 0.009351 0.031178 -E 4680.000000 60.000000 26.374599 176.368271 0.009425 0.031427 -E 4690.000000 60.000000 26.341553 176.367615 0.009469 0.031581 -E 4700.000000 60.000000 26.293945 176.340240 0.009668 0.032254 -E 4710.000000 60.000000 26.244570 176.373627 0.009821 0.032778 -E 4720.000000 60.000000 26.194862 176.417282 0.009715 0.032437 -E 4730.000000 60.000000 26.190964 176.419846 0.009506 0.031740 -E 4740.000000 60.000000 26.149305 176.446381 0.009446 0.031549 -E 4750.000000 60.000000 26.101995 176.481750 0.009499 0.031738 -E 4760.000000 60.000000 26.088388 176.409637 0.009465 0.031627 -E 4770.000000 60.000000 26.063517 176.455139 0.009384 0.031362 -E 4780.000000 60.000000 26.032337 176.478882 0.009307 0.031114 -E 4790.000000 60.000000 25.999237 176.472275 0.009231 0.030867 -E 4800.000000 60.000000 25.980856 176.504532 0.009210 0.030804 -E 4810.000000 60.000000 25.926596 176.540421 0.009206 0.030802 -E 4820.000000 60.000000 25.901669 176.609268 0.009212 0.030828 -E 4830.000000 60.000000 25.859745 176.582977 0.009187 0.030754 -E 4840.000000 60.000000 25.850281 176.518616 0.009070 0.030366 -E 4850.000000 60.000000 25.826576 176.556473 0.008655 0.028982 -E 4860.000000 60.000000 25.761721 176.573395 0.007631 0.025568 -E 4870.000000 60.000000 25.742886 176.587372 0.007259 0.024324 -E 4880.000000 60.000000 25.733778 176.599365 0.008340 0.027951 -E 4890.000000 60.000000 25.700447 176.624100 0.008891 0.029806 -E 4900.000000 60.000000 25.680149 176.685089 0.008881 0.029778 -E 4910.000000 60.000000 25.651131 176.645981 0.008804 0.029529 -E 4920.000000 60.000000 25.613861 176.612991 0.008834 0.029638 -E 4930.000000 60.000000 25.595921 176.644302 0.008809 0.029558 -E 4940.000000 60.000000 25.572414 176.637589 0.008755 0.029384 -E 4950.000000 60.000000 25.557734 176.668549 0.008845 0.029692 -E 4960.000000 60.000000 25.532616 176.692612 0.008896 0.029869 -E 4970.000000 60.000000 25.488306 176.730316 0.008841 0.029696 -E 4980.000000 60.000000 25.456898 176.730347 0.008758 0.029427 -E 4990.000000 60.000000 25.453512 176.702972 0.008636 0.029017 -E 5000.000000 60.000000 25.423134 176.683350 0.008602 0.028912 -E 5010.000000 60.000000 25.365210 176.707062 0.008608 0.028947 -E 5020.000000 60.000000 25.354765 176.725418 0.008549 0.028754 -E 5030.000000 60.000000 25.368973 176.784119 0.008534 0.028701 -E 5040.000000 60.000000 25.323324 176.793213 0.008570 0.028834 -E 5050.000000 60.000000 25.298212 176.812592 0.008589 0.028903 -E 5060.000000 60.000000 25.266930 176.803223 0.008558 0.028809 -E 5070.000000 60.000000 25.232239 176.860031 0.008547 0.028783 -E 5080.000000 60.000000 25.216959 176.864853 0.008563 0.028842 -E 5090.000000 60.000000 25.189411 176.860596 0.008563 0.028849 -E 5100.000000 60.000000 25.165642 176.862946 0.008565 0.028863 -E 5110.000000 60.000000 25.160057 176.817871 0.008527 0.028738 -E 5120.000000 60.000000 25.131575 176.894211 0.008476 0.028573 -E 5130.000000 60.000000 25.111036 176.897339 0.008472 0.028566 -E 5140.000000 60.000000 25.094059 176.843063 0.008463 0.028542 -E 5150.000000 60.000000 25.063961 176.853561 0.008449 0.028504 -E 5160.000000 60.000000 25.046520 176.905777 0.008422 0.028418 -E 5170.000000 60.000000 25.035845 176.910019 0.008404 0.028363 -E 5180.000000 60.000000 24.996275 176.992508 0.008391 0.028328 -E 5190.000000 60.000000 24.961550 176.952682 0.008372 0.028275 -E 5200.000000 60.000000 24.953186 176.885071 0.008322 0.028110 -E 5210.000000 60.000000 24.939386 176.926926 0.008290 0.028006 -E 5220.000000 60.000000 24.928879 176.874023 0.008283 0.027986 -E 5230.000000 60.000000 24.896118 176.927261 0.008267 0.027941 -E 5240.000000 60.000000 24.874800 176.985977 0.008245 0.027873 -E 5250.000000 60.000000 24.852068 176.943390 0.008216 0.027785 -E 5260.000000 60.000000 24.844517 176.914932 0.008159 0.027593 -E 5270.000000 60.000000 24.826757 176.960922 0.008088 0.027360 -E 5280.000000 60.000000 24.795128 177.054306 0.008075 0.027326 -E 5290.000000 60.000000 24.771000 177.019272 0.008070 0.027318 -E 5300.000000 60.000000 24.737732 176.930389 0.008051 0.027263 -E 5310.000000 60.000000 24.724621 176.955475 0.008047 0.027252 -E 5320.000000 60.000000 24.731998 177.016464 0.008030 0.027194 -E 5330.000000 60.000000 24.708378 177.050461 0.007980 0.027034 -E 5340.000000 60.000000 24.689678 177.071442 0.007913 0.026812 -E 5350.000000 60.000000 24.665508 177.000092 0.007893 0.026751 -E 5360.000000 60.000000 24.649559 177.027817 0.007880 0.026711 -E 5370.000000 60.000000 24.615076 177.047516 0.007872 0.026695 -E 5380.000000 60.000000 24.601282 177.033585 0.007846 0.026614 -E 5390.000000 60.000000 24.594397 177.045776 0.007786 0.026413 -E 5400.000000 60.000000 24.570305 177.004883 0.007755 0.026314 -E 5410.000000 60.000000 24.541460 177.028702 0.007736 0.026259 -E 5420.000000 60.000000 24.516876 177.072250 0.007690 0.026110 -E 5430.000000 60.000000 24.504061 177.122177 0.007630 0.025913 -E 5440.000000 60.000000 24.487879 177.134186 0.007606 0.025837 -E 5450.000000 60.000000 24.479403 177.131561 0.007585 0.025767 -E 5460.000000 60.000000 24.461014 177.110443 0.007584 0.025772 -E 5470.000000 60.000000 24.449705 177.068253 0.007573 0.025736 -E 5480.000000 60.000000 24.431948 177.112625 0.007517 0.025551 -E 5490.000000 60.000000 24.420425 177.143066 0.007468 0.025388 -E 5500.000000 60.000000 24.403137 177.103607 0.007463 0.025378 -E 5510.000000 60.000000 24.365171 177.193512 0.007472 0.025420 -E 5520.000000 60.000000 24.361694 177.201309 0.007460 0.025382 -E 5530.000000 60.000000 24.354019 177.167175 0.007435 0.025302 -E 5540.000000 60.000000 24.331297 177.156281 0.007407 0.025213 -E 5550.000000 60.000000 24.310076 177.201019 0.007398 0.025189 -E 5560.000000 60.000000 24.286383 177.210907 0.007388 0.025164 -E 5570.000000 60.000000 24.273184 177.197266 0.007366 0.025092 -E 5580.000000 60.000000 24.253580 177.187195 0.007354 0.025058 -E 5590.000000 60.000000 24.235178 177.174820 0.007350 0.025051 -E 5600.000000 60.000000 24.244492 177.148453 0.007324 0.024961 -E 5610.000000 60.000000 24.223829 177.142838 0.007289 0.024848 -E 5620.000000 60.000000 24.192204 177.207062 0.007280 0.024828 -E 5630.000000 60.000000 24.192789 177.227020 0.007267 0.024782 -E 5640.000000 60.000000 24.158987 177.222855 0.007248 0.024730 -E 5650.000000 60.000000 24.145668 177.216568 0.007217 0.024628 -E 5660.000000 60.000000 24.147760 177.233765 0.007186 0.024520 -E 5670.000000 60.000000 24.122673 177.266022 0.007116 0.024290 -E 5680.000000 60.000000 24.098763 177.278015 0.006994 0.023883 -E 5690.000000 60.000000 24.084457 177.294998 0.006850 0.023395 -E 5700.000000 60.000000 24.068411 177.254730 0.006654 0.022730 -E 5710.000000 60.000000 24.056971 177.265717 0.006558 0.022406 -E 5720.000000 60.000000 24.049376 177.298965 0.006507 0.022235 -E 5730.000000 60.000000 24.038124 177.283401 0.006445 0.022028 -E 5740.000000 60.000000 24.033388 177.242554 0.006328 0.021630 -E 5750.000000 60.000000 24.016935 177.300812 0.006268 0.021428 -E 5760.000000 60.000000 24.013447 177.288345 0.006223 0.021277 -E 5770.000000 60.000000 23.986019 177.326172 0.006109 0.020895 -E 5780.000000 60.000000 23.954649 177.318146 0.006026 0.020619 -E 5790.000000 60.000000 23.937992 177.303497 0.006018 0.020599 -E 5800.000000 60.000000 23.927343 177.320862 0.005980 0.020470 -E 5810.000000 60.000000 23.910194 177.315750 0.005832 0.019970 -E 5820.000000 60.000000 23.902180 177.302551 0.005683 0.019460 -E 5830.000000 60.000000 23.898197 177.344376 0.005822 0.019938 -E 5840.000000 60.000000 23.890984 177.337479 0.006094 0.020874 -E 5850.000000 60.000000 23.867531 177.351898 0.006053 0.020741 -E 5860.000000 60.000000 23.862738 177.337570 0.006086 0.020854 -E 5870.000000 60.000000 23.841705 177.314804 0.006152 0.021085 -E 5880.000000 60.000000 23.818718 177.382614 0.006095 0.020899 -E 5890.000000 60.000000 23.815479 177.379471 0.006076 0.020835 -E 5900.000000 60.000000 23.781294 177.420197 0.006285 0.021562 -E 5910.000000 60.000000 23.773394 177.407562 0.006415 0.022011 -E 5920.000000 60.000000 23.788116 177.377213 0.006414 0.022003 -E 5930.000000 60.000000 23.763622 177.433228 0.006316 0.021674 -E 5940.000000 60.000000 23.749893 177.401764 0.006223 0.021361 -E 5950.000000 60.000000 23.744230 177.403946 0.006146 0.021097 -E 5960.000000 60.000000 23.732576 177.396774 0.006163 0.021161 -E 5970.000000 60.000000 23.711048 177.412292 0.006269 0.021531 -E 5980.000000 60.000000 23.695925 177.415863 0.006323 0.021722 -E 5990.000000 60.000000 23.695963 177.418259 0.006326 0.021733 -E 6000.000000 60.000000 23.678715 177.423752 0.006336 0.021772 -E 6010.000000 60.000000 23.655920 177.462936 0.006296 0.021642 -E 6020.000000 60.000000 23.660049 177.462341 0.006220 0.021380 -E 6030.000000 60.000000 23.650368 177.466461 0.006133 0.021085 -E 6040.000000 60.000000 23.633137 177.446121 0.006110 0.021012 -E 6050.000000 60.000000 23.623165 177.473923 0.006236 0.021448 -E 6060.000000 60.000000 23.595778 177.475403 0.006279 0.021605 -E 6070.000000 60.000000 23.590128 177.470291 0.006287 0.021632 -E 6080.000000 60.000000 23.586021 177.474121 0.006307 0.021703 -E 6090.000000 60.000000 23.579075 177.509659 0.006331 0.021791 -E 6100.000000 60.000000 23.561781 177.493469 0.006314 0.021738 -E 6110.000000 60.000000 23.542959 177.461365 0.006281 0.021629 -E 6120.000000 60.000000 23.533670 177.503754 0.006267 0.021586 -E 6130.000000 60.000000 23.529503 177.524384 0.006257 0.021551 -E 6140.000000 60.000000 23.523209 177.484436 0.006238 0.021489 -E 6150.000000 60.000000 23.507402 177.506241 0.006278 0.021631 -E 6160.000000 60.000000 23.480627 177.505173 0.006341 0.021857 -E 6170.000000 60.000000 23.485172 177.505722 0.006371 0.021961 -E 6180.000000 60.000000 23.481394 177.540756 0.006383 0.022003 -E 6190.000000 60.000000 23.465061 177.529129 0.006407 0.022091 -E 6200.000000 60.000000 23.448406 177.549957 0.006381 0.022008 -E 6210.000000 60.000000 23.434111 177.552704 0.006390 0.022046 -E 6220.000000 60.000000 23.440290 177.529083 0.006414 0.022125 -E 6230.000000 60.000000 23.433304 177.560608 0.006381 0.022013 -E 6240.000000 60.000000 23.407011 177.528931 0.006366 0.021972 -E 6250.000000 60.000000 23.401293 177.560349 0.006420 0.022160 -E 6260.000000 60.000000 23.393383 177.533539 0.006463 0.022311 -E 6270.000000 60.000000 23.374384 177.520966 0.006470 0.022341 -E 6280.000000 60.000000 23.360737 177.588531 0.006466 0.022334 -E 6290.000000 60.000000 23.359924 177.578293 0.006467 0.022339 -E 6300.000000 60.000000 23.355879 177.538879 0.006470 0.022349 -E 6310.000000 60.000000 23.333220 177.552902 0.006510 0.022496 -E 6320.000000 60.000000 23.330441 177.615753 0.006522 0.022540 -E 6330.000000 60.000000 23.313251 177.597107 0.006502 0.022475 -E 6340.000000 60.000000 23.329514 177.591232 0.006505 0.022484 -E 6350.000000 60.000000 23.306328 177.618011 0.006510 0.022509 -E 6360.000000 60.000000 23.279446 177.609741 0.006493 0.022459 -E 6370.000000 60.000000 23.271742 177.645523 0.006482 0.022422 -E 6380.000000 60.000000 23.262863 177.620682 0.006491 0.022458 -E 6390.000000 60.000000 23.269136 177.634247 0.006489 0.022449 -E 6400.000000 60.000000 23.257414 177.624039 0.006488 0.022450 -E 6410.000000 60.000000 23.237925 177.624390 0.006503 0.022510 -E 6420.000000 60.000000 23.241005 177.613876 0.006523 0.022577 -E 6430.000000 60.000000 23.225437 177.601883 0.006519 0.022570 -E 6440.000000 60.000000 23.225410 177.612579 0.006520 0.022575 -E 6450.000000 60.000000 23.210098 177.665863 0.006532 0.022621 -E 6460.000000 60.000000 23.202560 177.675339 0.006529 0.022615 -E 6470.000000 60.000000 23.201223 177.619400 0.006527 0.022609 -E 6480.000000 60.000000 23.189463 177.664993 0.006520 0.022588 -E 6490.000000 60.000000 23.179300 177.682999 0.006513 0.022568 -E 6500.000000 60.000000 23.169668 177.619186 0.006510 0.022561 -E 6510.000000 60.000000 23.166235 177.629623 0.006513 0.022574 -E 6520.000000 60.000000 23.147350 177.651215 0.006510 0.022569 -E 6530.000000 60.000000 23.121916 177.668320 0.006520 0.022613 -E 6540.000000 60.000000 23.098846 177.651459 0.006584 0.022844 -E 6550.000000 60.000000 23.116974 177.658005 0.005835 0.020242 -E 6560.000000 60.000000 23.119995 177.680695 0.004091 0.014192 -E 6570.000000 60.000000 23.105341 177.692612 0.003950 0.013706 -E 6580.000000 60.000000 23.100025 177.717133 0.005396 0.018724 -E 6590.000000 60.000000 23.098967 177.730362 0.006463 0.022426 -E 6600.000000 60.000000 23.086119 177.661743 0.006505 0.022578 -E 6610.000000 60.000000 23.064373 177.687378 0.006514 0.022616 -E 6620.000000 60.000000 23.049652 177.703949 0.006501 0.022578 -E 6630.000000 60.000000 23.052704 177.703857 0.006491 0.022543 -E 6640.000000 60.000000 23.047125 177.746490 0.006495 0.022558 -E 6650.000000 60.000000 23.044401 177.782654 0.006496 0.022565 -E 6660.000000 60.000000 23.042824 177.752090 0.006495 0.022561 -E 6670.000000 60.000000 23.038898 177.714905 0.006493 0.022557 -E 6680.000000 60.000000 23.020607 177.714157 0.006491 0.022556 -E 6690.000000 60.000000 23.009989 177.782150 0.006477 0.022512 -E 6700.000000 60.000000 22.996492 177.802322 0.006462 0.022464 -E 6710.000000 60.000000 22.981531 177.754059 0.006466 0.022486 -E 6720.000000 60.000000 22.974287 177.727036 0.006459 0.022465 -E 6730.000000 60.000000 22.975689 177.698898 0.006455 0.022448 -E 6740.000000 60.000000 22.975653 177.730789 0.006463 0.022480 -E 6750.000000 60.000000 22.945745 177.771194 0.006478 0.022541 -E 6760.000000 60.000000 22.942505 177.813614 0.006479 0.022545 -E 6770.000000 60.000000 22.940771 177.823914 0.006469 0.022513 -E 6780.000000 60.000000 22.932777 177.777344 0.006457 0.022475 -E 6790.000000 60.000000 22.922951 177.777313 0.006443 0.022431 -E 6800.000000 60.000000 22.912207 177.836395 0.006440 0.022424 -E 6810.000000 60.000000 22.919270 177.780273 0.006433 0.022399 -E 6820.000000 60.000000 22.912466 177.785614 0.006436 0.022410 -E 6830.000000 60.000000 22.887220 177.809402 0.006440 0.022433 -E 6840.000000 60.000000 22.896828 177.766602 0.006427 0.022385 -E 6850.000000 60.000000 22.887571 177.769440 0.006401 0.022298 -E 6860.000000 60.000000 22.882530 177.823517 0.006400 0.022298 -E 6870.000000 60.000000 22.857487 177.828461 0.006424 0.022392 -E 6880.000000 60.000000 22.846786 177.768524 0.006435 0.022435 -E 6890.000000 60.000000 22.846447 177.848480 0.006435 0.022434 -E 6900.000000 60.000000 22.849731 177.828506 0.006440 0.022450 -E 6910.000000 60.000000 22.833378 177.841690 0.006443 0.022467 -E 6920.000000 60.000000 22.817631 177.864685 0.006436 0.022451 -E 6930.000000 60.000000 22.815670 177.844238 0.006432 0.022437 -E 6940.000000 60.000000 22.813316 177.863388 0.006426 0.022416 -E 6950.000000 60.000000 22.802128 177.889282 0.006436 0.022456 -E 6960.000000 60.000000 22.791403 177.863434 0.006438 0.022469 -E 6970.000000 60.000000 22.779713 177.856445 0.006430 0.022447 -E 6980.000000 60.000000 22.772717 177.849625 0.006423 0.022425 -E 6990.000000 60.000000 22.765287 177.901627 0.006429 0.022448 -E 7000.000000 60.000000 22.758118 177.877548 0.006439 0.022484 -E 7010.000000 60.000000 22.753958 177.852234 0.006451 0.022530 -E 7020.000000 60.000000 22.731899 177.906143 0.006458 0.022563 -E 7030.000000 60.000000 22.724483 177.909561 0.006456 0.022559 -E 7040.000000 60.000000 22.714182 177.916306 0.006469 0.022607 -E 7050.000000 60.000000 22.721264 177.877258 0.006477 0.022633 -E 7060.000000 60.000000 22.718897 177.883606 0.006479 0.022643 -E 7070.000000 60.000000 22.699594 177.908157 0.006459 0.022582 -E 7080.000000 60.000000 22.709183 177.936523 0.006459 0.022576 -E 7090.000000 60.000000 22.716799 177.877060 0.006473 0.022623 -E 7100.000000 60.000000 22.692532 177.900482 0.006493 0.022703 -E 7110.000000 60.000000 22.692587 177.915924 0.006495 0.022710 -E 7120.000000 60.000000 22.696188 177.875168 0.006493 0.022705 -E 7130.000000 60.000000 22.681896 177.881073 0.006496 0.022721 -E 7140.000000 60.000000 22.651535 177.912521 0.006498 0.022740 -E 7150.000000 60.000000 22.640230 177.916962 0.006495 0.022732 -E 7160.000000 60.000000 22.659286 177.921967 0.006494 0.022724 -E 7170.000000 60.000000 22.660364 177.924316 0.006513 0.022790 -E 7180.000000 60.000000 22.633854 177.913361 0.006518 0.022818 -E 7190.000000 60.000000 22.631826 177.938492 0.006521 0.022828 -E 7200.000000 60.000000 22.631823 177.986740 0.006531 0.022865 -E 7210.000000 60.000000 22.625467 177.967117 0.006546 0.022921 -E 7220.000000 60.000000 22.627110 177.966080 0.006545 0.022918 -E 7230.000000 60.000000 22.618288 177.910858 0.006561 0.022976 -E 7240.000000 60.000000 22.601906 177.901291 0.006562 0.022988 -E 7250.000000 60.000000 22.600391 177.953644 0.006535 0.022893 -E 7260.000000 60.000000 22.581484 177.972794 0.006511 0.022815 -E 7270.000000 60.000000 22.575077 177.949448 0.006527 0.022873 -E 7280.000000 60.000000 22.580242 178.011246 0.006532 0.022892 -E 7290.000000 60.000000 22.563341 177.984741 0.006529 0.022888 -E 7300.000000 60.000000 22.566044 177.914383 0.006536 0.022910 -E 7310.000000 60.000000 22.581656 177.943008 0.006525 0.022868 -E 7320.000000 60.000000 22.561451 177.947510 0.006540 0.022929 -E 7330.000000 60.000000 22.541941 177.981613 0.006569 0.023037 -E 7340.000000 60.000000 22.545507 178.035965 0.006563 0.023014 -E 7350.000000 60.000000 22.535961 178.004929 0.006533 0.022914 -E 7360.000000 60.000000 22.541826 177.989120 0.006535 0.022920 -E 7370.000000 60.000000 22.533497 177.981964 0.006564 0.023027 -E 7380.000000 60.000000 22.520819 177.995850 0.006610 0.023193 -E 7390.000000 60.000000 22.527637 178.028534 0.006632 0.023268 -E 7400.000000 60.000000 22.515680 178.001816 0.006609 0.023194 -E 7410.000000 60.000000 22.516632 177.997742 0.006636 0.023288 -E 7420.000000 60.000000 22.511715 177.999191 0.006686 0.023466 -E 7430.000000 60.000000 22.507215 178.045364 0.006705 0.023532 -E 7440.000000 60.000000 22.487980 178.008713 0.006716 0.023579 -E 7450.000000 60.000000 22.483122 178.000549 0.006723 0.023609 -E 7460.000000 60.000000 22.493332 178.073715 0.006726 0.023613 -E 7470.000000 60.000000 22.483286 178.078110 0.006704 0.023543 -E 7480.000000 60.000000 22.485950 178.047211 0.006697 0.023517 -E 7490.000000 60.000000 22.477856 178.052338 0.006728 0.023629 -E 7500.000000 60.000000 22.466574 178.051498 0.006734 0.023654 -E 7510.000000 60.000000 22.461020 178.020828 0.006733 0.023655 -E 7520.000000 60.000000 22.462582 178.019623 0.006778 0.023812 -E 7530.000000 60.000000 22.443031 178.028366 0.006803 0.023907 -E 7540.000000 60.000000 22.439404 178.030609 0.006769 0.023790 -E 7550.000000 60.000000 22.426659 178.040207 0.006785 0.023852 -E 7560.000000 60.000000 22.428064 178.074707 0.006797 0.023895 -E 7570.000000 60.000000 22.422287 178.121841 0.006789 0.023870 -E 7580.000000 60.000000 22.416653 178.047180 0.006781 0.023844 -E 7590.000000 60.000000 22.408722 178.029800 0.006783 0.023854 -E 7600.000000 60.000000 22.412252 178.090332 0.006833 0.024028 -E 7610.000000 60.000000 22.410294 178.086914 0.006884 0.024209 -E 7620.000000 60.000000 22.411253 178.091995 0.006922 0.024345 -E 7630.000000 60.000000 22.402851 178.127304 0.006908 0.024298 -E 7640.000000 60.000000 22.391657 178.085999 0.006901 0.024278 -E 7650.000000 60.000000 22.385721 178.105148 0.006925 0.024365 -E 7660.000000 60.000000 22.373652 178.140991 0.006973 0.024541 -E 7670.000000 60.000000 22.385744 178.091293 0.007028 0.024730 -E 7680.000000 60.000000 22.374456 178.105667 0.007021 0.024712 -E 7690.000000 60.000000 22.364637 178.114838 0.006950 0.024466 -E 7700.000000 60.000000 22.374977 178.101624 0.006921 0.024359 -E 7710.000000 60.000000 22.369757 178.115387 0.006974 0.024549 -E 7720.000000 60.000000 22.349991 178.110718 0.007059 0.024856 -E 7730.000000 60.000000 22.337234 178.085754 0.007114 0.025057 -E 7740.000000 60.000000 22.346249 178.084793 0.007127 0.025099 -E 7750.000000 60.000000 22.342316 178.113373 0.007159 0.025214 -E 7760.000000 60.000000 22.335806 178.131699 0.007199 0.025359 -E 7770.000000 60.000000 22.331234 178.136078 0.007225 0.025452 -E 7780.000000 60.000000 22.321560 178.119537 0.007220 0.025437 -E 7790.000000 60.000000 22.322964 178.150238 0.007177 0.025288 -E 7800.000000 60.000000 22.308825 178.104187 0.007168 0.025263 -E 7810.000000 60.000000 22.312635 178.089493 0.007224 0.025459 -E 7820.000000 60.000000 22.293715 178.109055 0.007265 0.025610 -E 7830.000000 60.000000 22.310770 178.138260 0.007267 0.025613 -E 7840.000000 60.000000 22.299282 178.154770 0.007308 0.025762 -E 7850.000000 60.000000 22.301161 178.102005 0.007364 0.025957 -E 7860.000000 60.000000 22.290081 178.135117 0.007400 0.026091 -E 7870.000000 60.000000 22.279110 178.113815 0.007401 0.026101 -E 7880.000000 60.000000 22.282907 178.106873 0.007383 0.026034 -E 7890.000000 60.000000 22.265749 178.147705 0.007404 0.026117 -E 7900.000000 60.000000 22.264475 178.150223 0.007443 0.026256 -E 7910.000000 60.000000 22.270357 178.169449 0.007452 0.026286 -E 7920.000000 60.000000 22.267759 178.202713 0.007470 0.026352 -E 7930.000000 60.000000 22.260138 178.160355 0.007482 0.026398 -E 7940.000000 60.000000 22.243673 178.193069 0.007472 0.026369 -E 7950.000000 60.000000 22.255781 178.180283 0.007472 0.026365 -E 7960.000000 60.000000 22.247274 178.143692 0.007518 0.026531 -E 7970.000000 60.000000 22.226290 178.139160 0.007566 0.026711 -E 7980.000000 60.000000 22.239092 178.148804 0.007589 0.026785 -E 7990.000000 60.000000 22.227200 178.153000 0.007609 0.026863 -E 8000.000000 60.000000 22.221407 178.129761 0.007605 0.026853 -E 8010.000000 60.000000 22.216787 178.183044 0.007598 0.026829 -E 8020.000000 60.000000 22.207472 178.178635 0.007655 0.027035 -E 8030.000000 60.000000 22.211636 178.155670 0.007699 0.027190 -E 8040.000000 60.000000 22.220121 178.169495 0.007694 0.027168 -E 8050.000000 60.000000 22.219318 178.151688 0.007681 0.027125 -E 8060.000000 60.000000 22.233061 178.195190 0.007703 0.027196 -E 8070.000000 60.000000 22.205975 178.232544 0.007780 0.027480 -E 8080.000000 60.000000 22.177593 178.199966 0.007821 0.027639 -E 8090.000000 60.000000 22.192579 178.205048 0.007765 0.027433 -E 8100.000000 60.000000 22.180664 178.242676 0.007783 0.027504 -E 8110.000000 60.000000 22.172976 178.229630 0.007829 0.027671 -E 8120.000000 60.000000 22.168791 178.255569 0.007880 0.027855 -E 8130.000000 60.000000 22.169146 178.217239 0.007875 0.027838 -E 8140.000000 60.000000 22.165722 178.222824 0.007832 0.027687 -E 8150.000000 60.000000 22.174417 178.193665 0.007853 0.027758 -E 8160.000000 60.000000 22.158499 178.167007 0.007921 0.028007 -E 8170.000000 60.000000 22.167601 178.189270 0.007954 0.028118 -E 8180.000000 60.000000 22.167137 178.231918 0.007934 0.028048 -E 8190.000000 60.000000 22.137419 178.193207 0.007935 0.028066 -E 8200.000000 60.000000 22.139910 178.195160 0.007969 0.028187 -E 8210.000000 60.000000 22.122141 178.233658 0.008009 0.028338 -E 8220.000000 60.000000 22.137650 178.283386 0.008028 0.028399 -E 8230.000000 60.000000 22.128965 178.225677 0.008008 0.028330 -E 8240.000000 60.000000 22.146130 178.209824 0.007995 0.028279 -E 8250.000000 60.000000 22.129721 178.253845 0.008058 0.028509 -E 8260.000000 60.000000 22.120701 178.261139 0.008110 0.028698 -E 8270.000000 60.000000 22.110596 178.243576 0.008090 0.028633 -E 8280.000000 60.000000 22.108934 178.226852 0.008057 0.028518 -E 8290.000000 60.000000 22.101248 178.203430 0.008068 0.028560 -E 8300.000000 60.000000 22.117302 178.255890 0.008141 0.028810 -E 8310.000000 60.000000 22.109293 178.255783 0.008195 0.029008 -E 8320.000000 60.000000 22.097250 178.233124 0.008176 0.028945 -E 8330.000000 60.000000 22.085115 178.262283 0.008132 0.028798 -E 8340.000000 60.000000 22.081276 178.318878 0.008119 0.028752 -E 8350.000000 60.000000 22.082947 178.253342 0.008159 0.028895 -E 8360.000000 60.000000 22.079185 178.259857 0.008228 0.029142 -E 8370.000000 60.000000 22.070007 178.248550 0.008212 0.029088 -E 8380.000000 60.000000 22.059643 178.276672 0.008196 0.029038 -E 8390.000000 60.000000 22.064960 178.303162 0.008217 0.029111 -E 8400.000000 60.000000 22.075584 178.257080 0.008285 0.029348 -E 8410.000000 60.000000 22.058067 178.320221 0.008325 0.029499 -E 8420.000000 60.000000 22.055265 178.337006 0.008308 0.029438 -E 8430.000000 60.000000 22.047005 178.285797 0.008282 0.029351 -E 8440.000000 60.000000 22.058552 178.297897 0.008281 0.029344 -E 8450.000000 60.000000 22.060001 178.288757 0.008327 0.029506 -E 8460.000000 60.000000 22.059221 178.236862 0.008353 0.029598 -E 8470.000000 60.000000 22.059013 178.254166 0.008335 0.029536 -E 8480.000000 60.000000 22.046255 178.248657 0.008304 0.029433 -E 8490.000000 60.000000 22.041340 178.292999 0.008370 0.029670 -E 8500.000000 60.000000 22.034254 178.296921 0.008517 0.030196 -E 8510.000000 60.000000 22.034958 178.269608 0.008566 0.030369 -E 8520.000000 60.000000 22.029194 178.291779 0.008392 0.029754 -E 8530.000000 60.000000 22.005846 178.283936 0.008208 0.029114 -E 8540.000000 60.000000 22.005428 178.308716 0.008187 0.029040 -E 8550.000000 60.000000 22.026810 178.336319 0.008299 0.029426 -E 8560.000000 60.000000 22.012371 178.371979 0.008391 0.029763 -E 8570.000000 60.000000 22.006716 178.310272 0.008418 0.029861 -E 8580.000000 60.000000 21.983583 178.309738 0.008391 0.029779 -E 8590.000000 60.000000 22.001495 178.379669 0.008364 0.029673 -E 8600.000000 60.000000 21.996559 178.341400 0.008392 0.029775 -E 8610.000000 60.000000 21.981592 178.290634 0.008467 0.030049 -E 8620.000000 60.000000 21.994213 178.367874 0.008499 0.030158 -E 8630.000000 60.000000 21.990992 178.384766 0.008497 0.030153 -E 8640.000000 60.000000 21.996542 178.299515 0.008443 0.029958 -E 8650.000000 60.000000 21.979038 178.370605 0.008422 0.029893 -E 8660.000000 60.000000 21.973379 178.347839 0.008464 0.030046 -E 8670.000000 60.000000 21.964733 178.325546 0.008528 0.030279 -E 8680.000000 60.000000 21.958700 178.327301 0.008539 0.030322 -E 8690.000000 60.000000 21.956247 178.331818 0.008528 0.030284 -E 8700.000000 60.000000 21.966236 178.347031 0.008502 0.030185 -E 8710.000000 60.000000 21.972345 178.337418 0.008518 0.030238 -E 8720.000000 60.000000 21.983925 178.297623 0.008562 0.030392 -E 8730.000000 60.000000 21.968580 178.384735 0.008568 0.030420 -E 8740.000000 60.000000 21.948498 178.365723 0.008538 0.030324 -E 8750.000000 60.000000 21.949593 178.399323 0.008519 0.030258 -E 8760.000000 60.000000 21.942213 178.371964 0.008524 0.030279 -E 8770.000000 60.000000 21.949587 178.359360 0.008568 0.030433 -E 8780.000000 60.000000 21.944950 178.383377 0.008614 0.030599 -E 8790.000000 60.000000 21.942911 178.363388 0.008600 0.030550 -E 8800.000000 60.000000 21.951010 178.369354 0.008589 0.030508 -E 8810.000000 60.000000 21.947163 178.374283 0.008625 0.030638 -E 8820.000000 60.000000 21.939209 178.337433 0.008663 0.030776 -E 8830.000000 60.000000 21.937107 178.415131 0.008693 0.030884 -E 8840.000000 60.000000 21.919489 178.372940 0.008702 0.030929 -E 8850.000000 60.000000 21.920948 178.402130 0.008723 0.031000 -E 8860.000000 60.000000 21.900164 178.360748 0.008711 0.030970 -E 8870.000000 60.000000 21.900656 178.367233 0.008685 0.030878 -E 8880.000000 60.000000 21.900600 178.354385 0.008688 0.030891 -E 8890.000000 60.000000 21.892473 178.416412 0.008733 0.031054 -E 8900.000000 60.000000 21.899248 178.373550 0.008759 0.031143 -E 8910.000000 60.000000 21.901951 178.346756 0.008776 0.031204 -E 8920.000000 60.000000 21.885592 178.393448 0.008777 0.031217 -E 8930.000000 60.000000 21.875824 178.366333 0.008780 0.031232 -E 8940.000000 60.000000 21.894192 178.349716 0.008788 0.031251 -E 8950.000000 60.000000 21.882618 178.457840 0.008817 0.031361 -E 8960.000000 60.000000 21.885450 178.358368 0.008844 0.031455 -E 8970.000000 60.000000 21.888691 178.398315 0.008860 0.031512 -E 8980.000000 60.000000 21.860714 178.416428 0.008887 0.031625 -E 8990.000000 60.000000 21.848423 178.401764 0.008876 0.031592 -E 9000.000000 60.000000 21.851488 178.400177 0.008909 0.031708 -E 9010.000000 60.000000 21.865358 178.447693 0.008931 0.031778 -E 9020.000000 60.000000 21.848917 178.443222 0.008944 0.031835 -E 9030.000000 60.000000 21.859776 178.440460 0.008977 0.031948 -E 9040.000000 60.000000 21.871992 178.421265 0.008980 0.031952 -E 9050.000000 60.000000 21.856800 178.412506 0.008969 0.031920 -E 9060.000000 60.000000 21.827568 178.393066 0.009005 0.032067 -E 9070.000000 60.000000 21.836170 178.448639 0.009038 0.032180 -E 9080.000000 60.000000 21.839273 178.444199 0.009086 0.032350 -E 9090.000000 60.000000 21.835545 178.459427 0.009129 0.032505 -E 9100.000000 60.000000 21.854099 178.379639 0.009127 0.032485 -E 9110.000000 60.000000 21.828424 178.428101 0.009110 0.032439 -E 9120.000000 60.000000 21.817316 178.498428 0.009135 0.032538 -E 9130.000000 60.000000 21.812695 178.432693 0.009177 0.032690 -E 9140.000000 60.000000 21.849817 178.423492 0.009237 0.032882 -E 9150.000000 60.000000 21.846176 178.450516 0.009235 0.032877 -E 9160.000000 60.000000 21.845827 178.488297 0.009201 0.032756 -E 9170.000000 60.000000 21.816954 178.420578 0.009193 0.032745 -E 9180.000000 60.000000 21.800295 178.427536 0.009210 0.032817 -E 9190.000000 60.000000 21.824718 178.472015 0.009254 0.032958 -E 9200.000000 60.000000 21.795780 178.482681 0.009331 0.033250 -E 9210.000000 60.000000 21.806179 178.436310 0.009367 0.033373 -E 9220.000000 60.000000 21.815031 178.436234 0.009416 0.033543 -E 9230.000000 60.000000 21.814131 178.505341 0.009437 0.033620 -E 9240.000000 60.000000 21.814722 178.437851 0.009449 0.033663 -E 9250.000000 60.000000 21.796761 178.407089 0.009473 0.033759 -E 9260.000000 60.000000 21.802351 178.500381 0.009512 0.033895 -E 9270.000000 60.000000 21.802538 178.438553 0.009565 0.034084 -E 9280.000000 60.000000 21.791098 178.472015 0.009613 0.034263 -E 9290.000000 60.000000 21.788612 178.517960 0.009640 0.034361 -E 9300.000000 60.000000 21.788885 178.458649 0.009658 0.034425 -E 9310.000000 60.000000 21.775236 178.399750 0.009681 0.034516 -E 9320.000000 60.000000 21.785513 178.433090 0.009690 0.034541 -E 9330.000000 60.000000 21.776371 178.456390 0.009729 0.034686 -E 9340.000000 60.000000 21.774694 178.465744 0.009767 0.034822 -E 9350.000000 60.000000 21.753618 178.471664 0.009834 0.035075 -E 9360.000000 60.000000 21.761509 178.537064 0.009890 0.035273 -E 9370.000000 60.000000 21.777344 178.452057 0.009919 0.035363 -E 9380.000000 60.000000 21.765638 178.494293 0.009930 0.035410 -E 9390.000000 60.000000 21.749300 178.530975 0.009954 0.035507 -E 9400.000000 60.000000 21.756546 178.607651 0.010026 0.035761 -E 9410.000000 60.000000 21.772091 178.543015 0.010075 0.035927 -E 9420.000000 60.000000 21.726353 178.449493 0.010146 0.036208 -E 9430.000000 60.000000 21.748781 178.495346 0.010186 0.036340 -E 9440.000000 60.000000 21.755589 178.544983 0.010198 0.036377 -E 9450.000000 60.000000 21.755730 178.496674 0.010236 0.036512 -E 9460.000000 60.000000 21.734049 178.498550 0.010291 0.036723 -E 9470.000000 60.000000 21.718073 178.528732 0.010355 0.036965 -E 9480.000000 60.000000 21.746254 178.545120 0.010402 0.037112 -E 9490.000000 60.000000 21.733887 178.535629 0.010468 0.037355 -E 9500.000000 60.000000 21.730356 178.563721 0.010515 0.037528 -E 9510.000000 60.000000 21.740574 178.530548 0.010552 0.037651 -E 9520.000000 60.000000 21.754387 178.477295 0.010581 0.037747 -E 9530.000000 60.000000 21.712873 178.548370 0.010658 0.038050 -E 9540.000000 60.000000 21.716330 178.580536 0.010738 0.038336 -E 9550.000000 60.000000 21.697985 178.483093 0.010828 0.038670 -E 9560.000000 60.000000 21.713886 178.547333 0.010844 0.038713 -E 9570.000000 60.000000 21.700169 178.424988 0.010871 0.038822 -E 9580.000000 60.000000 21.703438 178.563400 0.010893 0.038900 -E 9590.000000 60.000000 21.715342 178.519913 0.010936 0.039045 -E 9600.000000 60.000000 21.696445 178.516678 0.010998 0.039280 -E 9610.000000 60.000000 21.692188 178.506989 0.011041 0.039437 -E 9620.000000 60.000000 21.706413 178.562256 0.011104 0.039651 -E 9630.000000 60.000000 21.670055 178.517212 0.011171 0.039918 -E 9640.000000 60.000000 21.695177 178.509094 0.011207 0.040030 -E 9650.000000 60.000000 21.694691 178.541336 0.011268 0.040245 -E 9660.000000 60.000000 21.680088 178.476364 0.011309 0.040405 -E 9670.000000 60.000000 21.690182 178.509735 0.011397 0.040712 -E 9680.000000 60.000000 21.669323 178.532700 0.011495 0.041080 -E 9690.000000 60.000000 21.687120 178.468475 0.011542 0.041232 -E 9700.000000 60.000000 21.703526 178.432632 0.011579 0.041354 -E 9710.000000 60.000000 21.679989 178.605270 0.011661 0.041663 -E 9720.000000 60.000000 21.652632 178.618408 0.011743 0.041980 -E 9730.000000 60.000000 21.666468 178.463943 0.011819 0.042240 -E 9740.000000 60.000000 21.686981 178.554581 0.011893 0.042490 -E 9750.000000 60.000000 21.650053 178.569183 0.011948 0.042716 -E 9760.000000 60.000000 21.638020 178.543671 0.012025 0.043001 -E 9770.000000 60.000000 21.655807 178.548386 0.012102 0.043262 -E 9780.000000 60.000000 21.689587 178.574188 0.012154 0.043420 -E 9790.000000 60.000000 21.681307 178.589767 0.012232 0.043707 -E 9800.000000 60.000000 21.647217 178.656036 0.012336 0.044108 -E 9810.000000 60.000000 21.642618 178.609039 0.012443 0.044495 -E 9820.000000 60.000000 21.665108 178.533264 0.012547 0.044848 -E 9830.000000 60.000000 21.651329 178.569427 0.012603 0.045058 -E 9840.000000 60.000000 21.646349 178.506210 0.012678 0.045331 -E 9850.000000 60.000000 21.635328 178.545120 0.012784 0.045720 -E 9860.000000 60.000000 21.631512 178.550064 0.012865 0.046014 -E 9870.000000 60.000000 21.619684 178.583710 0.012996 0.046493 -E 9880.000000 60.000000 21.633751 178.523621 0.013098 0.046846 -E 9890.000000 60.000000 21.607098 178.484573 0.013198 0.047229 -E 9900.000000 60.000000 21.641798 178.621078 0.013248 0.047375 -E 9910.000000 60.000000 21.607477 178.641418 0.013357 0.047799 -E 9920.000000 60.000000 21.637650 178.673798 0.013476 0.048196 -E 9930.000000 60.000000 21.638990 178.596039 0.013627 0.048737 -E 9940.000000 60.000000 21.616859 178.647293 0.013760 0.049232 -E 9950.000000 60.000000 21.594112 178.524567 0.013865 0.049631 -E 9960.000000 60.000000 21.589748 178.573761 0.014004 0.050132 -E 9970.000000 60.000000 21.638680 178.541855 0.014083 0.050368 -E 9980.000000 60.000000 21.613903 178.552582 0.014257 0.051016 -E 9990.000000 60.000000 21.600178 178.566803 0.014414 0.051592 -E 10000.000000 60.000000 21.617170 178.655869 0.014556 0.052083 -E 10025.000000 60.000000 21.613400 178.589783 0.007150 0.025594 -E 10050.000000 60.000000 21.601683 178.616150 0.006984 0.025005 -E 10075.000000 60.000000 21.600893 178.585358 0.006778 0.024269 -E 10100.000000 60.000000 21.597979 178.594193 0.006621 0.023706 -E 10125.000000 60.000000 21.594393 178.617310 0.006483 0.023216 -E 10150.000000 60.000000 21.593006 178.609543 0.006313 0.022608 -E 10175.000000 60.000000 21.588476 178.627548 0.006164 0.022075 -E 10200.000000 60.000000 21.580761 178.671432 0.006033 0.021609 -E 10225.000000 60.000000 21.572716 178.650696 0.005882 0.021071 -E 10250.000000 60.000000 21.563210 178.639053 0.005746 0.020588 -E 10275.000000 60.000000 21.549759 178.666565 0.005641 0.020216 -E 10300.000000 60.000000 21.546684 178.653809 0.005501 0.019719 -E 10325.000000 60.000000 21.547503 178.627777 0.005356 0.019196 -E 10350.000000 60.000000 21.543507 178.630356 0.005238 0.018777 -E 10375.000000 60.000000 21.543716 178.642929 0.005127 0.018377 -E 10400.000000 60.000000 21.547850 178.664688 0.005021 0.017997 -E 10425.000000 60.000000 21.534182 178.645050 0.004924 0.017654 -E 10450.000000 60.000000 21.523212 178.634598 0.004829 0.017316 -E 10475.000000 60.000000 21.521147 178.651443 0.004733 0.016972 -E 10500.000000 60.000000 21.517281 178.659439 0.004644 0.016656 -E 10525.000000 60.000000 21.513479 178.665466 0.004560 0.016357 -E 10550.000000 60.000000 21.513994 178.680710 0.004482 0.016076 -E 10575.000000 60.000000 21.511318 178.689835 0.004413 0.015827 -E 10600.000000 60.000000 21.506002 178.694000 0.004350 0.015605 -E 10625.000000 60.000000 21.505732 178.737381 0.004264 0.015295 -E 10650.000000 60.000000 21.501709 178.735519 0.004188 0.015025 -E 10675.000000 60.000000 21.490791 178.653778 0.004131 0.014822 -E 10700.000000 60.000000 21.483501 178.649109 0.004057 0.014560 -E 10725.000000 60.000000 21.479216 178.664749 0.003986 0.014306 -E 10750.000000 60.000000 21.482841 178.673325 0.003938 0.014134 -E 10775.000000 60.000000 21.478876 178.690079 0.003868 0.013884 -E 10800.000000 60.000000 21.470091 178.711472 0.003785 0.013589 -E 10825.000000 60.000000 21.462147 178.703979 0.003730 0.013391 -E 10850.000000 60.000000 21.457048 178.700943 0.003670 0.013178 -E 10875.000000 60.000000 21.455484 178.703583 0.003604 0.012943 -E 10900.000000 60.000000 21.449657 178.714798 0.003556 0.012770 -E 10925.000000 60.000000 21.445665 178.723343 0.003506 0.012593 -E 10950.000000 60.000000 21.448856 178.720398 0.003444 0.012368 -E 10975.000000 60.000000 21.443577 178.724289 0.003396 0.012198 -E 11000.000000 60.000000 21.435415 178.732910 0.003356 0.012056 -E 11025.000000 60.000000 21.436747 178.756958 0.003318 0.011917 -E 11050.000000 60.000000 21.431517 178.751984 0.003285 0.011801 -E 11075.000000 60.000000 21.420225 178.720230 0.003258 0.011706 -E 11100.000000 60.000000 21.422382 178.720306 0.003209 0.011530 -E 11125.000000 60.000000 21.423105 178.726532 0.003171 0.011393 -E 11150.000000 60.000000 21.419558 178.739792 0.003154 0.011331 -E 11175.000000 60.000000 21.412273 178.739136 0.003128 0.011242 -E 11200.000000 60.000000 21.405275 178.734924 0.003104 0.011154 -E 11225.000000 60.000000 21.403570 178.732635 0.003089 0.011102 -E 11250.000000 60.000000 21.400923 178.745026 0.003067 0.011025 -E 11275.000000 60.000000 21.397530 178.765076 0.003042 0.010936 -E 11300.000000 60.000000 21.389713 178.758133 0.003039 0.010926 -E 11325.000000 60.000000 21.383389 178.760880 0.003028 0.010886 -E 11350.000000 60.000000 21.378786 178.774673 0.003007 0.010812 -E 11375.000000 60.000000 21.381521 178.785431 0.002995 0.010770 -E 11400.000000 60.000000 21.382149 178.790024 0.002984 0.010729 -E 11425.000000 60.000000 21.376387 178.782333 0.002970 0.010678 -E 11450.000000 60.000000 21.368481 178.776291 0.002956 0.010629 -E 11475.000000 60.000000 21.361895 178.770996 0.002940 0.010574 -E 11500.000000 60.000000 21.365162 178.766525 0.002917 0.010491 -E 11525.000000 60.000000 21.360298 178.771576 0.002898 0.010422 -E 11550.000000 60.000000 21.350372 178.783051 0.002880 0.010362 -E 11575.000000 60.000000 21.349922 178.800262 0.002868 0.010317 -E 11600.000000 60.000000 21.348938 178.807129 0.002847 0.010241 -E 11625.000000 60.000000 21.347342 178.802032 0.002816 0.010130 -E 11650.000000 60.000000 21.338564 178.816284 0.002799 0.010071 -E 11675.000000 60.000000 21.330969 178.827591 0.002781 0.010009 -E 11700.000000 60.000000 21.327593 178.827942 0.002758 0.009925 -E 11725.000000 60.000000 21.328339 178.816956 0.002743 0.009869 -E 11750.000000 60.000000 21.329550 178.805115 0.002727 0.009813 -E 11775.000000 60.000000 21.327139 178.805252 0.002700 0.009715 -E 11800.000000 60.000000 21.323463 178.815277 0.002675 0.009627 -E 11825.000000 60.000000 21.318907 178.830612 0.002652 0.009546 -E 11850.000000 60.000000 21.311800 178.836609 0.002631 0.009468 -E 11875.000000 60.000000 21.309372 178.832397 0.002609 0.009393 -E 11900.000000 60.000000 21.311697 178.817841 0.002589 0.009319 -E 11925.000000 60.000000 21.311867 178.820206 0.002565 0.009233 -E 11950.000000 60.000000 21.308857 178.824188 0.002545 0.009159 -E 11975.000000 60.000000 21.300665 178.828705 0.002529 0.009105 -E 12000.000000 60.000000 21.294697 178.839752 0.002513 0.009046 -E 12025.000000 60.000000 21.290438 178.847687 0.002496 0.008986 -E 12050.000000 60.000000 21.289829 178.840942 0.002478 0.008922 -E 12075.000000 60.000000 21.286734 178.849518 0.002466 0.008880 -E 12100.000000 60.000000 21.282536 178.861389 0.002456 0.008844 -E 12125.000000 60.000000 21.278782 178.845490 0.002440 0.008787 -E 12150.000000 60.000000 21.278687 178.847595 0.002425 0.008732 -E 12175.000000 60.000000 21.281370 178.863510 0.002410 0.008678 -E 12200.000000 60.000000 21.273312 178.861145 0.002405 0.008662 -E 12225.000000 60.000000 21.268759 178.864105 0.002399 0.008639 -E 12250.000000 60.000000 21.268482 178.873627 0.002389 0.008605 -E 12275.000000 60.000000 21.269075 178.862457 0.002386 0.008594 -E 12300.000000 60.000000 21.266726 178.856293 0.002386 0.008594 -E 12325.000000 60.000000 21.258284 178.865219 0.002390 0.008609 -E 12350.000000 60.000000 21.251062 178.873978 0.002384 0.008588 -E 12375.000000 60.000000 21.245384 178.879883 0.002380 0.008576 -E 12400.000000 60.000000 21.243769 178.876144 0.002394 0.008626 -E 12425.000000 60.000000 21.243036 178.869293 0.002389 0.008607 -E 12450.000000 60.000000 21.242037 178.863983 0.002377 0.008564 -E 12475.000000 60.000000 21.235929 178.881073 0.002387 0.008600 -E 12500.000000 60.000000 21.236635 178.889847 0.002379 0.008571 -E 12525.000000 60.000000 21.242243 178.892349 0.002358 0.008495 -E 12550.000000 60.000000 21.234257 178.906555 0.002352 0.008474 -E 12575.000000 60.000000 21.230221 178.907639 0.002343 0.008442 -E 12600.000000 60.000000 21.230721 178.893890 0.002331 0.008398 -E 12625.000000 60.000000 21.228958 178.892807 0.002325 0.008377 -E 12650.000000 60.000000 21.226398 178.894714 0.002317 0.008347 -E 12675.000000 60.000000 21.222862 178.899734 0.002303 0.008297 -E 12700.000000 60.000000 21.216702 178.903320 0.002287 0.008243 -E 12725.000000 60.000000 21.212925 178.906952 0.002276 0.008202 -E 12750.000000 60.000000 21.216877 178.911530 0.002277 0.008204 -E 12775.000000 60.000000 21.212503 178.910324 0.002264 0.008159 -E 12800.000000 60.000000 21.205692 178.908264 0.002248 0.008102 -E 12825.000000 60.000000 21.201622 178.911819 0.002238 0.008067 -E 12850.000000 60.000000 21.202280 178.921432 0.002228 0.008029 -E 12875.000000 60.000000 21.205050 178.933487 0.002217 0.007989 -E 12900.000000 60.000000 21.202749 178.936935 0.002209 0.007961 -E 12925.000000 60.000000 21.199600 178.940079 0.002197 0.007919 -E 12950.000000 60.000000 21.195812 178.942856 0.002183 0.007868 -E 12975.000000 60.000000 21.194353 178.930557 0.002177 0.007847 -E 13000.000000 60.000000 21.189571 178.922089 0.002170 0.007821 -E 13025.000000 60.000000 21.181059 178.917908 0.002162 0.007792 -E 13050.000000 60.000000 21.183168 178.923843 0.002150 0.007751 -E 13075.000000 60.000000 21.184031 178.925369 0.002141 0.007717 -E 13100.000000 60.000000 21.181644 178.918762 0.002135 0.007697 -E 13125.000000 60.000000 21.179976 178.936020 0.002130 0.007677 -E 13150.000000 60.000000 21.177814 178.949844 0.002124 0.007655 -E 13175.000000 60.000000 21.174274 178.946884 0.002117 0.007630 -E 13200.000000 60.000000 21.174377 178.939606 0.002111 0.007609 -E 13225.000000 60.000000 21.173948 178.937500 0.002107 0.007596 -E 13250.000000 60.000000 21.168396 178.956070 0.002110 0.007607 -E 13275.000000 60.000000 21.165648 178.959122 0.002108 0.007601 -E 13300.000000 60.000000 21.163738 178.956879 0.002106 0.007592 -E 13325.000000 60.000000 21.160034 178.961426 0.002109 0.007604 -E 13350.000000 60.000000 21.158607 178.957581 0.002113 0.007616 -E 13375.000000 60.000000 21.158293 178.949631 0.002116 0.007628 -E 13400.000000 60.000000 21.156019 178.948990 0.002117 0.007631 -E 13425.000000 60.000000 21.153503 178.958710 0.002122 0.007648 -E 13450.000000 60.000000 21.150789 178.975998 0.002130 0.007678 -E 13475.000000 60.000000 21.148476 178.980377 0.002143 0.007724 -E 13500.000000 60.000000 21.147963 178.974136 0.002157 0.007775 -E 13525.000000 60.000000 21.149271 178.957108 0.002172 0.007830 -E 13550.000000 60.000000 21.145205 178.982895 0.002201 0.007935 -E 13575.000000 60.000000 21.141298 178.991150 0.002231 0.008044 -E 13600.000000 60.000000 21.137802 178.974838 0.002263 0.008160 -E 13625.000000 60.000000 21.138525 178.974426 0.002282 0.008227 -E 13650.000000 60.000000 21.137794 178.979416 0.002301 0.008296 -E 13675.000000 60.000000 21.134073 178.990768 0.002323 0.008375 -E 13700.000000 60.000000 21.131861 178.993134 0.002377 0.008570 -E 13725.000000 60.000000 21.130264 178.994690 0.002469 0.008902 -E 13750.000000 60.000000 21.129519 178.997803 0.002638 0.009509 -E 13775.000000 60.000000 21.129263 178.998016 0.002876 0.010367 -E 13800.000000 60.000000 21.128136 178.995911 0.003126 0.011270 -E 13825.000000 60.000000 21.123857 178.989746 0.003279 0.011820 -E 13850.000000 60.000000 21.118710 178.992096 0.003253 0.011728 -E 13875.000000 60.000000 21.116119 178.997345 0.003157 0.011383 -E 13900.000000 60.000000 21.121500 179.003357 0.003023 0.010898 -E 13925.000000 60.000000 21.120661 179.008316 0.002940 0.010597 -E 13950.000000 60.000000 21.116556 179.009415 0.002861 0.010313 -E 13975.000000 60.000000 21.108747 178.997192 0.002728 0.009837 -E 14000.000000 60.000000 21.101583 178.995193 0.002649 0.009550 -E 14025.000000 60.000000 21.096470 178.998642 0.002591 0.009342 -E 14050.000000 60.000000 21.100515 179.007095 0.002526 0.009107 -E 14075.000000 60.000000 21.102694 179.016617 0.002481 0.008945 -E 14100.000000 60.000000 21.103296 179.023041 0.002446 0.008817 -E 14125.000000 60.000000 21.099791 179.002487 0.002399 0.008649 -E 14150.000000 60.000000 21.097134 179.000122 0.002368 0.008538 -E 14175.000000 60.000000 21.095373 179.009720 0.002347 0.008461 -E 14200.000000 60.000000 21.097595 179.022873 0.002322 0.008372 -E 14225.000000 60.000000 21.096169 179.031937 0.002307 0.008316 -E 14250.000000 60.000000 21.092171 179.037064 0.002298 0.008285 -E 14275.000000 60.000000 21.090797 179.023880 0.002284 0.008232 -E 14300.000000 60.000000 21.085629 179.020325 0.002273 0.008196 -E 14325.000000 60.000000 21.077559 179.024902 0.002267 0.008175 -E 14350.000000 60.000000 21.082062 179.031815 0.002261 0.008150 -E 14375.000000 60.000000 21.080105 179.030136 0.002254 0.008125 -E 14400.000000 60.000000 21.072092 179.020416 0.002247 0.008100 -E 14425.000000 60.000000 21.075012 179.046646 0.002248 0.008105 -E 14450.000000 60.000000 21.075239 179.049545 0.002244 0.008090 -E 14475.000000 60.000000 21.072664 179.028168 0.002234 0.008053 -E 14500.000000 60.000000 21.072016 179.038773 0.002232 0.008044 -E 14525.000000 60.000000 21.069973 179.049438 0.002233 0.008050 -E 14550.000000 60.000000 21.066278 179.059525 0.002239 0.008070 -E 14575.000000 60.000000 21.065853 179.055984 0.002230 0.008038 -E 14600.000000 60.000000 21.063932 179.052399 0.002229 0.008036 -E 14625.000000 60.000000 21.060051 179.049362 0.002239 0.008072 -E 14650.000000 60.000000 21.062275 179.051712 0.002233 0.008047 -E 14675.000000 60.000000 21.061193 179.058289 0.002233 0.008050 -E 14700.000000 60.000000 21.055496 179.070007 0.002245 0.008094 -E 14725.000000 60.000000 21.058531 179.064331 0.002239 0.008069 -E 14750.000000 60.000000 21.056492 179.057724 0.002239 0.008069 -E 14775.000000 60.000000 21.046925 179.051376 0.002249 0.008107 -E 14800.000000 60.000000 21.049509 179.065994 0.002247 0.008101 -E 14825.000000 60.000000 21.047678 179.067917 0.002247 0.008099 -E 14850.000000 60.000000 21.038521 179.050278 0.002249 0.008107 -E 14875.000000 60.000000 21.045326 179.074051 0.002251 0.008115 -E 14900.000000 60.000000 21.047333 179.087021 0.002257 0.008135 -E 14925.000000 60.000000 21.040768 179.080109 0.002267 0.008172 -E 14950.000000 60.000000 21.042368 179.078369 0.002266 0.008166 -E 14975.000000 60.000000 21.040455 179.074432 0.002271 0.008185 -E 15000.000000 60.000000 21.032591 179.066681 0.002287 0.008243 -E 15025.000000 60.000000 21.037014 179.072037 0.002283 0.008226 -E 15050.000000 60.000000 21.036997 179.076767 0.002285 0.008234 -E 15075.000000 60.000000 21.029419 179.079086 0.002299 0.008286 -E 15100.000000 60.000000 21.029924 179.073227 0.002298 0.008280 -E 15125.000000 60.000000 21.029226 179.077362 0.002298 0.008282 -E 15150.000000 60.000000 21.026056 179.095871 0.002304 0.008302 -E 15175.000000 60.000000 21.028156 179.092880 0.002308 0.008316 -E 15200.000000 60.000000 21.026619 179.088623 0.002315 0.008341 -E 15225.000000 60.000000 21.019823 179.084793 0.002326 0.008381 -E 15250.000000 60.000000 21.023294 179.098175 0.002330 0.008394 -E 15275.000000 60.000000 21.021626 179.097488 0.002338 0.008422 -E 15300.000000 60.000000 21.012756 179.078003 0.002351 0.008472 -E 15325.000000 60.000000 21.019438 179.083557 0.002352 0.008476 -E 15350.000000 60.000000 21.020315 179.089401 0.002358 0.008496 -E 15375.000000 60.000000 21.013624 179.094238 0.002370 0.008538 -E 15400.000000 60.000000 21.013042 179.095718 0.002374 0.008553 -E 15425.000000 60.000000 21.010447 179.099075 0.002384 0.008590 -E 15450.000000 60.000000 21.005461 179.104568 0.002402 0.008653 -E 15475.000000 60.000000 21.011929 179.092667 0.002407 0.008670 -E 15500.000000 60.000000 21.010900 179.096878 0.002415 0.008701 -E 15525.000000 60.000000 21.002522 179.116974 0.002427 0.008744 -E 15550.000000 60.000000 21.004925 179.119293 0.002425 0.008736 -E 15575.000000 60.000000 21.004660 179.119247 0.002433 0.008765 -E 15600.000000 60.000000 21.002121 179.116959 0.002450 0.008824 -E 15625.000000 60.000000 21.002026 179.112701 0.002455 0.008844 -E 15650.000000 60.000000 20.998526 179.112137 0.002466 0.008883 -E 15675.000000 60.000000 20.992752 179.114731 0.002480 0.008934 -E 15700.000000 60.000000 20.993113 179.119263 0.002484 0.008948 -E 15725.000000 60.000000 20.994875 179.120514 0.002494 0.008981 -E 15750.000000 60.000000 20.996733 179.119339 0.002507 0.009028 -E 15775.000000 60.000000 20.990519 179.117081 0.002518 0.009070 -E 15800.000000 60.000000 20.987068 179.117050 0.002529 0.009108 -E 15825.000000 60.000000 20.986206 179.118683 0.002540 0.009149 -E 15850.000000 60.000000 20.990820 179.122284 0.002556 0.009205 -E 15875.000000 60.000000 20.990707 179.125916 0.002567 0.009244 -E 15900.000000 60.000000 20.988661 179.129303 0.002576 0.009277 -E 15925.000000 60.000000 20.989021 179.131561 0.002591 0.009329 -E 15950.000000 60.000000 20.984917 179.129135 0.002607 0.009389 -E 15975.000000 60.000000 20.980352 179.130554 0.002624 0.009451 -E 16000.000000 60.000000 20.981201 179.153000 0.002638 0.009499 -E 16025.000000 60.000000 20.976559 179.153442 0.002650 0.009541 -E 16050.000000 60.000000 20.972925 179.142303 0.002663 0.009589 -E 16075.000000 60.000000 20.977463 179.120285 0.002683 0.009660 -E 16100.000000 60.000000 20.974829 179.126328 0.002700 0.009721 -E 16125.000000 60.000000 20.972452 179.138870 0.002715 0.009776 -E 16150.000000 60.000000 20.974855 179.149185 0.002728 0.009820 -E 16175.000000 60.000000 20.972359 179.142212 0.002750 0.009901 -E 16200.000000 60.000000 20.972656 179.141159 0.002772 0.009979 -E 16225.000000 60.000000 20.979527 179.156387 0.002789 0.010040 -E 16250.000000 60.000000 20.969889 179.157104 0.002809 0.010111 -E 16275.000000 60.000000 20.966637 179.151566 0.002830 0.010189 -E 16300.000000 60.000000 20.975115 179.139648 0.002854 0.010273 -E 16325.000000 60.000000 20.971657 179.152267 0.002877 0.010356 -E 16350.000000 60.000000 20.967148 179.159409 0.002904 0.010454 -E 16375.000000 60.000000 20.962227 179.159027 0.002936 0.010568 -E 16400.000000 60.000000 20.963692 179.163391 0.002956 0.010641 -E 16425.000000 60.000000 20.966311 179.167160 0.002992 0.010770 -E 16450.000000 60.000000 20.969114 179.169769 0.003041 0.010943 -E 16475.000000 60.000000 20.960278 179.163971 0.003061 0.011019 -E 16500.000000 60.000000 20.961136 179.174667 0.003105 0.011177 -E 16525.000000 60.000000 20.966970 179.190933 0.003165 0.011390 -E 16550.000000 60.000000 20.962191 179.169907 0.003220 0.011588 -E 16575.000000 60.000000 20.963964 179.175369 0.003302 0.011883 -E 16600.000000 60.000000 20.967409 179.185303 0.003404 0.012247 -E 16625.000000 60.000000 20.963537 179.157074 0.003519 0.012664 -E 16650.000000 60.000000 20.962151 179.161880 0.003718 0.013379 -E 16675.000000 60.000000 20.962458 179.175949 0.003979 0.014317 -E 16700.000000 60.000000 20.964846 179.178604 0.004298 0.015465 -E 16725.000000 60.000000 20.964939 179.173889 0.004778 0.017188 -E 16750.000000 60.000000 20.962988 179.171631 0.005398 0.019418 -E 16775.000000 60.000000 20.957264 179.181000 0.006167 0.022187 -E 16800.000000 60.000000 20.964642 179.161362 0.007190 0.025862 -E 16825.000000 60.000000 20.973606 179.165298 0.008441 0.030356 -E 16850.000000 60.000000 20.979858 179.225937 0.009863 0.035462 -E 16875.000000 60.000000 20.948915 179.180405 0.011534 0.041499 -E 16900.000000 60.000000 20.925520 179.162109 0.013527 0.048692 -E 16925.000000 60.000000 20.918762 179.185135 0.015819 0.056947 -E 16950.000000 60.000000 20.942108 179.076096 0.018319 0.065913 -E 16975.000000 60.000000 20.913437 179.051849 0.021060 0.075819 -E 17000.000000 60.000000 20.852385 179.117813 0.024083 0.086815 -E 1930.000000 70.000000 37.364731 90.587944 0.008912 0.032643 -E 1940.000000 70.000000 37.327927 90.918312 0.008126 0.029728 -E 1950.000000 70.000000 37.274158 91.285599 0.007502 0.027404 -E 1960.000000 70.000000 37.253658 91.658600 0.007096 0.025897 -E 1970.000000 70.000000 37.232479 91.998413 0.006756 0.024630 -E 1980.000000 70.000000 37.205528 92.431091 0.006483 0.023612 -E 1990.000000 70.000000 37.172489 92.904839 0.006278 0.022844 -E 2000.000000 70.000000 37.116592 93.317833 0.006091 0.022137 -E 2010.000000 70.000000 37.061775 93.725319 0.005917 0.021482 -E 2020.000000 70.000000 37.016304 94.225700 0.005743 0.020832 -E 2030.000000 70.000000 36.963127 94.682739 0.005572 0.020195 -E 2040.000000 70.000000 36.901291 95.068840 0.005418 0.019619 -E 2050.000000 70.000000 36.835468 95.499962 0.005268 0.019061 -E 2060.000000 70.000000 36.772411 95.937241 0.005118 0.018501 -E 2070.000000 70.000000 36.703846 96.383453 0.004977 0.017973 -E 2080.000000 70.000000 36.652714 96.756294 0.004841 0.017465 -E 2090.000000 70.000000 36.615101 97.117836 0.004707 0.016968 -E 2100.000000 70.000000 36.548481 97.499702 0.004590 0.016527 -E 2110.000000 70.000000 36.480022 97.927620 0.004493 0.016152 -E 2120.000000 70.000000 36.433453 98.323624 0.004397 0.015788 -E 2130.000000 70.000000 36.375908 98.718651 0.004308 0.015447 -E 2140.000000 70.000000 36.325573 99.132324 0.004230 0.015145 -E 2150.000000 70.000000 36.285294 99.568016 0.004156 0.014864 -E 2160.000000 70.000000 36.236328 99.971344 0.004092 0.014612 -E 2170.000000 70.000000 36.181240 100.366402 0.004033 0.014385 -E 2180.000000 70.000000 36.141354 100.747581 0.003972 0.014148 -E 2190.000000 70.000000 36.106136 101.128822 0.003906 0.013897 -E 2200.000000 70.000000 36.048424 101.608353 0.003850 0.013679 -E 2210.000000 70.000000 36.004749 102.024353 0.003791 0.013453 -E 2220.000000 70.000000 35.962479 102.474487 0.003733 0.013232 -E 2230.000000 70.000000 35.914478 102.920311 0.003680 0.013029 -E 2240.000000 70.000000 35.847569 103.395088 0.003634 0.012849 -E 2250.000000 70.000000 35.773613 103.885582 0.003591 0.012681 -E 2260.000000 70.000000 35.692127 104.354294 0.003551 0.012520 -E 2270.000000 70.000000 35.582951 104.862045 0.003515 0.012375 -E 2280.000000 70.000000 35.453472 105.334129 0.003481 0.012231 -E 2290.000000 70.000000 35.318150 105.749680 0.003447 0.012088 -E 2300.000000 70.000000 35.161972 106.134514 0.003417 0.011961 -E 2310.000000 70.000000 34.984295 106.456078 0.003393 0.011850 -E 2320.000000 70.000000 34.818676 106.705620 0.003369 0.011742 -E 2330.000000 70.000000 34.670010 106.901962 0.003347 0.011642 -E 2340.000000 70.000000 34.535183 107.019730 0.003324 0.011545 -E 2350.000000 70.000000 34.432842 107.095596 0.003301 0.011448 -E 2360.000000 70.000000 34.351742 107.155983 0.003279 0.011361 -E 2370.000000 70.000000 34.315086 107.199654 0.003256 0.011270 -E 2380.000000 70.000000 34.310715 107.277481 0.003229 0.011174 -E 2390.000000 70.000000 34.329380 107.358536 0.003207 0.011096 -E 2400.000000 70.000000 34.363380 107.432564 0.003186 0.011026 -E 2410.000000 70.000000 34.416073 107.574608 0.003166 0.010957 -E 2420.000000 70.000000 34.479912 107.771950 0.003147 0.010894 -E 2430.000000 70.000000 34.547676 108.020248 0.003133 0.010849 -E 2440.000000 70.000000 34.624744 108.262756 0.003119 0.010805 -E 2450.000000 70.000000 34.706661 108.556740 0.003104 0.010756 -E 2460.000000 70.000000 34.781773 108.891022 0.003093 0.010723 -E 2470.000000 70.000000 34.863846 109.214561 0.003084 0.010697 -E 2480.000000 70.000000 34.951580 109.588409 0.003076 0.010673 -E 2490.000000 70.000000 35.034187 109.973900 0.003069 0.010651 -E 2500.000000 70.000000 35.111958 110.371918 0.003066 0.010645 -E 2510.000000 70.000000 35.189865 110.804939 0.003066 0.010648 -E 2520.000000 70.000000 35.267097 111.230530 0.003062 0.010636 -E 2530.000000 70.000000 35.337391 111.670860 0.003065 0.010649 -E 2540.000000 70.000000 35.407669 112.179893 0.003073 0.010679 -E 2550.000000 70.000000 35.477032 112.674950 0.003079 0.010703 -E 2560.000000 70.000000 35.542759 113.134995 0.003091 0.010746 -E 2570.000000 70.000000 35.612579 113.679634 0.003104 0.010793 -E 2580.000000 70.000000 35.679558 114.213135 0.003118 0.010844 -E 2590.000000 70.000000 35.733543 114.767754 0.003136 0.010907 -E 2600.000000 70.000000 35.795723 115.336754 0.003157 0.010978 -E 2610.000000 70.000000 35.860703 115.884056 0.003178 0.011052 -E 2620.000000 70.000000 35.924427 116.493622 0.003200 0.011131 -E 2630.000000 70.000000 35.980713 117.119637 0.003225 0.011218 -E 2640.000000 70.000000 36.030968 117.754684 0.003253 0.011315 -E 2650.000000 70.000000 36.085064 118.407745 0.003284 0.011422 -E 2660.000000 70.000000 36.136944 119.116081 0.003319 0.011542 -E 2670.000000 70.000000 36.175995 119.824684 0.003353 0.011661 -E 2680.000000 70.000000 36.209717 120.552177 0.003387 0.011777 -E 2690.000000 70.000000 36.227795 121.342392 0.003424 0.011902 -E 2700.000000 70.000000 36.230461 122.148163 0.003463 0.012031 -E 2710.000000 70.000000 36.216698 122.968735 0.003507 0.012177 -E 2720.000000 70.000000 36.192696 123.859016 0.003552 0.012325 -E 2730.000000 70.000000 36.138039 124.700455 0.003596 0.012468 -E 2740.000000 70.000000 36.053299 125.508942 0.003644 0.012620 -E 2750.000000 70.000000 35.955658 126.359566 0.003693 0.012773 -E 2760.000000 70.000000 35.853817 127.210060 0.003743 0.012932 -E 2770.000000 70.000000 35.726540 127.983955 0.003805 0.013124 -E 2780.000000 70.000000 35.591911 128.808090 0.003851 0.013265 -E 2790.000000 70.000000 35.442772 129.640686 0.003894 0.013393 -E 2800.000000 70.000000 35.286263 130.410721 0.003943 0.013539 -E 2810.000000 70.000000 35.132835 131.150909 0.003997 0.013700 -E 2820.000000 70.000000 34.968052 131.900406 0.004053 0.013870 -E 2830.000000 70.000000 34.800484 132.662094 0.004109 0.014040 -E 2840.000000 70.000000 34.623726 133.434204 0.004163 0.014201 -E 2850.000000 70.000000 34.451305 134.206909 0.004226 0.014393 -E 2860.000000 70.000000 34.246681 135.003693 0.004296 0.014604 -E 2870.000000 70.000000 34.017262 135.794312 0.004364 0.014805 -E 2880.000000 70.000000 33.755402 136.631180 0.004442 0.015037 -E 2890.000000 70.000000 33.454830 137.405609 0.004532 0.015310 -E 2900.000000 70.000000 33.126427 138.131073 0.004628 0.015597 -E 2910.000000 70.000000 32.764652 138.827225 0.004728 0.015896 -E 2920.000000 70.000000 32.389965 139.340088 0.004834 0.016216 -E 2930.000000 70.000000 32.031475 139.807861 0.004936 0.016524 -E 2940.000000 70.000000 31.677370 140.208817 0.005033 0.016817 -E 2950.000000 70.000000 31.327654 140.538818 0.005133 0.017123 -E 2960.000000 70.000000 31.004843 140.832809 0.005234 0.017439 -E 2970.000000 70.000000 30.681906 141.030594 0.005332 0.017743 -E 2980.000000 70.000000 30.378723 141.186264 0.005431 0.018055 -E 2990.000000 70.000000 30.088404 141.302261 0.005535 0.018389 -E 3000.000000 70.000000 29.856674 141.441391 0.005628 0.018685 -E 3010.000000 70.000000 29.617622 141.536407 0.005714 0.018964 -E 3020.000000 70.000000 29.364843 141.586838 0.005817 0.019298 -E 3030.000000 70.000000 29.152470 141.661591 0.005924 0.019648 -E 3040.000000 70.000000 28.961008 141.737808 0.006021 0.019970 -E 3050.000000 70.000000 28.772602 141.795090 0.006124 0.020311 -E 3060.000000 70.000000 28.593479 141.829575 0.006228 0.020656 -E 3070.000000 70.000000 28.435537 141.907288 0.006325 0.020976 -E 3080.000000 70.000000 28.290312 141.942276 0.006422 0.021300 -E 3090.000000 70.000000 28.149612 141.977341 0.006525 0.021645 -E 3100.000000 70.000000 28.004360 142.055634 0.006621 0.021969 -E 3110.000000 70.000000 27.875938 142.112366 0.006713 0.022278 -E 3120.000000 70.000000 27.759203 142.160355 0.006816 0.022624 -E 3130.000000 70.000000 27.643923 142.266327 0.006900 0.022910 -E 3140.000000 70.000000 27.545515 142.326447 0.006986 0.023200 -E 3150.000000 70.000000 27.444738 142.361801 0.007083 0.023527 -E 3160.000000 70.000000 27.346674 142.391205 0.007176 0.023843 -E 3170.000000 70.000000 27.276217 142.512802 0.007263 0.024135 -E 3180.000000 70.000000 27.188883 142.639313 0.007348 0.024424 -E 3190.000000 70.000000 27.098475 142.707230 0.007449 0.024767 -E 3200.000000 70.000000 27.024204 142.801193 0.007534 0.025057 -E 3210.000000 70.000000 26.950668 142.849411 0.007632 0.025390 -E 3220.000000 70.000000 26.867342 142.914093 0.007743 0.025766 -E 3230.000000 70.000000 26.799820 143.009979 0.007826 0.026052 -E 3240.000000 70.000000 26.749958 143.158997 0.007905 0.026320 -E 3250.000000 70.000000 26.691898 143.326004 0.008008 0.026666 -E 3260.000000 70.000000 26.624580 143.414383 0.008168 0.027208 -E 3270.000000 70.000000 26.588827 143.505005 0.008348 0.027813 -E 3280.000000 70.000000 26.547674 143.647690 0.008523 0.028400 -E 3290.000000 70.000000 26.488834 143.852615 0.008660 0.028865 -E 3300.000000 70.000000 26.436474 143.953354 0.008786 0.029293 -E 3310.000000 70.000000 26.397264 144.055893 0.008925 0.029760 -E 3320.000000 70.000000 26.342291 144.276688 0.009032 0.030127 -E 3330.000000 70.000000 26.317158 144.368408 0.009107 0.030380 -E 3340.000000 70.000000 26.306942 144.455856 0.009170 0.030591 -E 3350.000000 70.000000 26.267775 144.613312 0.009236 0.030816 -E 3360.000000 70.000000 26.204828 144.812012 0.009313 0.031086 -E 3370.000000 70.000000 26.171967 144.969696 0.009369 0.031277 -E 3380.000000 70.000000 26.160604 145.038330 0.009401 0.031385 -E 3390.000000 70.000000 26.145649 145.239670 0.009413 0.031425 -E 3400.000000 70.000000 26.131344 145.414993 0.009436 0.031505 -E 3410.000000 70.000000 26.099709 145.574875 0.009484 0.031670 -E 3420.000000 70.000000 26.077091 145.712830 0.009570 0.031961 -E 3430.000000 70.000000 26.059452 145.914688 0.009640 0.032199 -E 3440.000000 70.000000 26.052078 146.114990 0.009694 0.032378 -E 3450.000000 70.000000 26.073477 146.297180 0.009782 0.032666 -E 3460.000000 70.000000 26.065239 146.498413 0.009862 0.032934 -E 3470.000000 70.000000 26.060627 146.646606 0.009951 0.033232 -E 3480.000000 70.000000 26.062428 146.801163 0.010019 0.033455 -E 3490.000000 70.000000 26.111877 147.066574 0.010081 0.033649 -E 3500.000000 70.000000 26.165169 147.308807 0.010147 0.033858 -E 3510.000000 70.000000 26.194157 147.496277 0.010219 0.034090 -E 3520.000000 70.000000 26.219084 147.731720 0.010295 0.034334 -E 3530.000000 70.000000 26.279291 147.946365 0.010354 0.034517 -E 3540.000000 70.000000 26.356745 148.327927 0.010434 0.034766 -E 3550.000000 70.000000 26.445419 148.634201 0.010493 0.034939 -E 3560.000000 70.000000 26.538935 149.020782 0.010536 0.035062 -E 3570.000000 70.000000 26.612930 149.462906 0.010608 0.035286 -E 3580.000000 70.000000 26.684912 149.837433 0.010675 0.035492 -E 3590.000000 70.000000 26.809250 150.350967 0.010722 0.035623 -E 3600.000000 70.000000 26.868715 150.934235 0.010779 0.035802 -E 3610.000000 70.000000 26.974009 151.630325 0.010824 0.035929 -E 3620.000000 70.000000 27.035006 152.352829 0.010861 0.036042 -E 3630.000000 70.000000 27.063824 153.032623 0.010908 0.036190 -E 3640.000000 70.000000 27.093979 153.851074 0.010980 0.036424 -E 3650.000000 70.000000 27.108665 154.728973 0.011058 0.036678 -E 3660.000000 70.000000 27.074831 155.624710 0.011057 0.036682 -E 3670.000000 70.000000 26.998297 156.526047 0.011003 0.036516 -E 3680.000000 70.000000 26.929335 157.427017 0.010992 0.036491 -E 3690.000000 70.000000 26.823792 158.302948 0.011066 0.036757 -E 3700.000000 70.000000 26.660860 159.244812 0.011236 0.037353 -E 3710.000000 70.000000 26.491405 160.106903 0.011411 0.037974 -E 3720.000000 70.000000 26.299400 160.876572 0.011509 0.038346 -E 3730.000000 70.000000 26.085173 161.752975 0.011636 0.038826 -E 3740.000000 70.000000 25.866016 162.510529 0.011771 0.039340 -E 3750.000000 70.000000 25.607012 163.173447 0.011830 0.039618 -E 3760.000000 70.000000 25.339903 163.804749 0.011844 0.039757 -E 3770.000000 70.000000 25.061275 164.464035 0.011916 0.040105 -E 3780.000000 70.000000 24.787838 164.987610 0.011908 0.040188 -E 3790.000000 70.000000 24.531576 165.428650 0.011868 0.040161 -E 3800.000000 70.000000 24.258633 165.849319 0.011918 0.040459 -E 3810.000000 70.000000 24.003521 166.143723 0.012083 0.041146 -E 3820.000000 70.000000 23.782835 166.495819 0.012211 0.041699 -E 3830.000000 70.000000 23.518969 166.788223 0.012169 0.041705 -E 3840.000000 70.000000 23.263922 166.994232 0.012213 0.042007 -E 3850.000000 70.000000 23.047279 167.277908 0.012367 0.042674 -E 3860.000000 70.000000 22.831839 167.577927 0.012336 0.042712 -E 3870.000000 70.000000 22.600477 167.722458 0.012191 0.042369 -E 3880.000000 70.000000 22.383007 167.853546 0.012036 0.041985 -E 3890.000000 70.000000 22.195124 168.051346 0.012106 0.042368 -E 3900.000000 70.000000 22.027351 168.127670 0.012470 0.043776 -E 3910.000000 70.000000 21.834549 168.254700 0.012862 0.045317 -E 3920.000000 70.000000 21.629786 168.414108 0.012812 0.045318 -E 3930.000000 70.000000 21.460327 168.469009 0.012616 0.044778 -E 3940.000000 70.000000 21.284803 168.617737 0.012482 0.044463 -E 3950.000000 70.000000 21.123819 168.785690 0.012464 0.044549 -E 3960.000000 70.000000 20.966738 168.835236 0.012609 0.045219 -E 3970.000000 70.000000 20.792219 168.900192 0.012767 0.045965 -E 3980.000000 70.000000 20.649120 169.078888 0.012609 0.045544 -E 3990.000000 70.000000 20.511387 169.022369 0.012430 0.045041 -E 4000.000000 70.000000 20.380026 169.138107 0.012529 0.045544 -E 4010.000000 70.000000 20.234409 169.266190 0.012842 0.046845 -E 4020.000000 70.000000 20.083815 169.179916 0.013040 0.047746 -E 4030.000000 70.000000 19.961927 169.274902 0.013061 0.047972 -E 4040.000000 70.000000 19.836092 169.424545 0.012971 0.047796 -E 4050.000000 70.000000 19.681059 169.551529 0.012719 0.047057 -E 4060.000000 70.000000 19.559454 169.606873 0.012460 0.046251 -E 4070.000000 70.000000 19.448360 169.612274 0.012528 0.046642 -E 4080.000000 70.000000 19.306227 169.714233 0.012900 0.048219 -E 4090.000000 70.000000 19.189598 169.779312 0.013204 0.049518 -E 4100.000000 70.000000 19.113008 169.788757 0.013247 0.049786 -E 4110.000000 70.000000 19.005634 169.979553 0.013248 0.049948 -E 4120.000000 70.000000 18.872583 170.033508 0.013106 0.049605 -E 4130.000000 70.000000 18.747465 169.932541 0.012739 0.048398 -E 4140.000000 70.000000 18.675760 170.055191 0.012579 0.047892 -E 4150.000000 70.000000 18.584326 170.128372 0.012785 0.048815 -E 4160.000000 70.000000 18.468733 170.124969 0.012921 0.049512 -E 4170.000000 70.000000 18.346674 170.120895 0.012906 0.049647 -E 4180.000000 70.000000 18.224989 170.109985 0.012930 0.049932 -E 4190.000000 70.000000 18.176970 170.195648 0.013078 0.050582 -E 4200.000000 70.000000 18.107901 170.358521 0.013116 0.050846 -E 4210.000000 70.000000 17.971607 170.357956 0.012796 0.049829 -E 4220.000000 70.000000 17.853750 170.333069 0.012397 0.048469 -E 4230.000000 70.000000 17.735748 170.372864 0.012164 0.047749 -E 4240.000000 70.000000 17.670206 170.417953 0.012150 0.047804 -E 4250.000000 70.000000 17.625563 170.450928 0.012565 0.049511 -E 4260.000000 70.000000 17.522587 170.524078 0.013064 0.051665 -E 4270.000000 70.000000 17.438272 170.655685 0.013026 0.051670 -E 4280.000000 70.000000 17.362068 170.637131 0.012653 0.050329 -E 4290.000000 70.000000 17.220146 170.626587 0.012787 0.051125 -E 4300.000000 70.000000 17.196371 170.641357 0.012849 0.051421 -E 4310.000000 70.000000 17.149319 170.682831 0.012741 0.051077 -E 4320.000000 70.000000 17.024426 170.638824 0.012968 0.052227 -E 4330.000000 70.000000 16.936495 170.573288 0.013179 0.053256 -E 4340.000000 70.000000 16.878851 170.674103 0.012878 0.052154 -E 4350.000000 70.000000 16.770741 170.739502 0.012755 0.051872 -E 4360.000000 70.000000 16.708717 170.709579 0.012940 0.052753 -E 4370.000000 70.000000 16.650553 170.794052 0.012951 0.052919 -E 4380.000000 70.000000 16.561031 170.836426 0.012880 0.052816 -E 4390.000000 70.000000 16.520384 170.861786 0.012787 0.052520 -E 4400.000000 70.000000 16.465357 170.907669 0.012737 0.052430 -E 4410.000000 70.000000 16.366589 170.884613 0.012533 0.051800 -E 4420.000000 70.000000 16.291142 170.941193 0.012133 0.050300 -E 4430.000000 70.000000 16.244478 170.976700 0.012078 0.050171 -E 4440.000000 70.000000 16.189871 171.058792 0.012189 0.050748 -E 4450.000000 70.000000 16.105812 171.049561 0.012133 0.050691 -E 4460.000000 70.000000 16.044970 170.971802 0.012045 0.050452 -E 4470.000000 70.000000 15.996713 171.026199 0.012112 0.050839 -E 4480.000000 70.000000 15.934414 171.059616 0.012179 0.051259 -E 4490.000000 70.000000 15.854892 171.122467 0.012187 0.051467 -E 4500.000000 70.000000 15.804461 171.102005 0.012123 0.051309 -E 4510.000000 70.000000 15.746460 171.155807 0.012128 0.051461 -E 4520.000000 70.000000 15.677960 171.210632 0.012181 0.051843 -E 4530.000000 70.000000 15.617671 171.141861 0.012162 0.051902 -E 4540.000000 70.000000 15.560222 171.307495 0.012112 0.051824 -E 4550.000000 70.000000 15.507298 171.350708 0.012056 0.051707 -E 4560.000000 70.000000 15.448170 171.298752 0.011946 0.051374 -E 4570.000000 70.000000 15.392149 171.349731 0.011769 0.050743 -E 4580.000000 70.000000 15.334008 171.402100 0.011515 0.049781 -E 4590.000000 70.000000 15.283431 171.373672 0.011320 0.049051 -E 4600.000000 70.000000 15.250581 171.278961 0.011492 0.049875 -E 4610.000000 70.000000 15.191825 171.312531 0.011783 0.051279 -E 4620.000000 70.000000 15.131215 171.462875 0.011884 0.051868 -E 4630.000000 70.000000 15.066402 171.403610 0.011614 0.050846 -E 4640.000000 70.000000 15.002156 171.399551 0.011191 0.049144 -E 4650.000000 70.000000 14.977331 171.387329 0.011046 0.048566 -E 4660.000000 70.000000 14.939166 171.391693 0.011192 0.049299 -E 4670.000000 70.000000 14.884884 171.490997 0.011417 0.050421 -E 4680.000000 70.000000 14.830277 171.489349 0.011507 0.050957 -E 4690.000000 70.000000 14.794390 171.535828 0.011564 0.051298 -E 4700.000000 70.000000 14.747604 171.564270 0.011791 0.052426 -E 4710.000000 70.000000 14.663223 171.507507 0.011978 0.053482 -E 4720.000000 70.000000 14.612101 171.505630 0.011843 0.053015 -E 4730.000000 70.000000 14.576301 171.532791 0.011596 0.052007 -E 4740.000000 70.000000 14.557932 171.617233 0.011509 0.051661 -E 4750.000000 70.000000 14.500517 171.555130 0.011557 0.052029 -E 4760.000000 70.000000 14.432364 171.550720 0.011523 0.052060 -E 4770.000000 70.000000 14.379240 171.597382 0.011434 0.051800 -E 4780.000000 70.000000 14.357383 171.649582 0.011324 0.051358 -E 4790.000000 70.000000 14.317633 171.669876 0.011224 0.051010 -E 4800.000000 70.000000 14.263372 171.625305 0.011206 0.051076 -E 4810.000000 70.000000 14.221684 171.641724 0.011184 0.051084 -E 4820.000000 70.000000 14.195223 171.704727 0.011183 0.051155 -E 4830.000000 70.000000 14.155863 171.714539 0.011142 0.051074 -E 4840.000000 70.000000 14.091934 171.836777 0.011019 0.050681 -E 4850.000000 70.000000 14.038381 171.808029 0.010523 0.048537 -E 4860.000000 70.000000 14.002892 171.776321 0.009249 0.042744 -E 4870.000000 70.000000 13.981593 171.844467 0.008796 0.040700 -E 4880.000000 70.000000 13.949656 171.860397 0.010111 0.046867 -E 4890.000000 70.000000 13.914122 171.945236 0.010773 0.050031 -E 4900.000000 70.000000 13.858474 171.882538 0.010769 0.050163 -E 4910.000000 70.000000 13.825664 171.802902 0.010671 0.049798 -E 4920.000000 70.000000 13.780122 171.933701 0.010702 0.050069 -E 4930.000000 70.000000 13.727965 171.949753 0.010670 0.050066 -E 4940.000000 70.000000 13.727051 171.926819 0.010591 0.049698 -E 4950.000000 70.000000 13.662642 171.895416 0.010715 0.050460 -E 4960.000000 70.000000 13.600838 171.905594 0.010785 0.050970 -E 4970.000000 70.000000 13.607749 171.949463 0.010693 0.050514 -E 4980.000000 70.000000 13.576309 171.982239 0.010585 0.050092 -E 4990.000000 70.000000 13.515537 171.991989 0.010458 0.049662 -E 5000.000000 70.000000 13.457089 171.979355 0.010420 0.049651 -E 5010.000000 70.000000 13.436554 171.989716 0.010395 0.049591 -E 5020.000000 70.000000 13.429926 172.039932 0.010317 0.049239 -E 5030.000000 70.000000 13.387953 172.110641 0.010319 0.049369 -E 5040.000000 70.000000 13.360041 172.084671 0.010349 0.049594 -E 5050.000000 70.000000 13.310696 172.056519 0.010374 0.049856 -E 5060.000000 70.000000 13.279428 172.121872 0.010327 0.049724 -E 5070.000000 70.000000 13.254642 172.198151 0.010307 0.049700 -E 5080.000000 70.000000 13.201105 172.238846 0.010335 0.049990 -E 5090.000000 70.000000 13.168996 172.195969 0.010326 0.050046 -E 5100.000000 70.000000 13.146140 172.165359 0.010318 0.050072 -E 5110.000000 70.000000 13.117195 172.132477 0.010276 0.049958 -E 5120.000000 70.000000 13.083791 172.186066 0.010216 0.049767 -E 5130.000000 70.000000 13.062965 172.094604 0.010207 0.049785 -E 5140.000000 70.000000 13.043760 172.055405 0.010195 0.049783 -E 5150.000000 70.000000 12.983300 172.233170 0.010180 0.049894 -E 5160.000000 70.000000 12.963504 172.330917 0.010139 0.049755 -E 5170.000000 70.000000 12.927883 172.290695 0.010124 0.049791 -E 5180.000000 70.000000 12.894392 172.191330 0.010097 0.049759 -E 5190.000000 70.000000 12.864182 172.242233 0.010068 0.049707 -E 5200.000000 70.000000 12.827656 172.320724 0.010014 0.049556 -E 5210.000000 70.000000 12.813833 172.252487 0.009971 0.049383 -E 5220.000000 70.000000 12.783376 172.306595 0.009964 0.049446 -E 5230.000000 70.000000 12.746502 172.369308 0.009934 0.049411 -E 5240.000000 70.000000 12.726078 172.376282 0.009909 0.049346 -E 5250.000000 70.000000 12.694133 172.375122 0.009872 0.049261 -E 5260.000000 70.000000 12.662826 172.307373 0.009802 0.049011 -E 5270.000000 70.000000 12.611479 172.307205 0.009723 0.048775 -E 5280.000000 70.000000 12.587087 172.340744 0.009703 0.048752 -E 5290.000000 70.000000 12.560678 172.371567 0.009690 0.048769 -E 5300.000000 70.000000 12.536326 172.333878 0.009659 0.048689 -E 5310.000000 70.000000 12.530879 172.311676 0.009653 0.048674 -E 5320.000000 70.000000 12.494526 172.376068 0.009644 0.048744 -E 5330.000000 70.000000 12.453995 172.418503 0.009575 0.048521 -E 5340.000000 70.000000 12.445150 172.285965 0.009489 0.048117 -E 5350.000000 70.000000 12.408788 172.361008 0.009468 0.048123 -E 5360.000000 70.000000 12.373638 172.434525 0.009453 0.048160 -E 5370.000000 70.000000 12.359411 172.365692 0.009432 0.048097 -E 5380.000000 70.000000 12.333626 172.357834 0.009400 0.048012 -E 5390.000000 70.000000 12.304389 172.441666 0.009328 0.047742 -E 5400.000000 70.000000 12.287143 172.551682 0.009291 0.047603 -E 5410.000000 70.000000 12.256410 172.454926 0.009268 0.047584 -E 5420.000000 70.000000 12.235332 172.457718 0.009204 0.047324 -E 5430.000000 70.000000 12.215872 172.494812 0.009128 0.046995 -E 5440.000000 70.000000 12.166745 172.449966 0.009105 0.047030 -E 5450.000000 70.000000 12.129880 172.391937 0.009082 0.047025 -E 5460.000000 70.000000 12.115445 172.448883 0.009079 0.047057 -E 5470.000000 70.000000 12.088482 172.588516 0.009067 0.047084 -E 5480.000000 70.000000 12.071642 172.570953 0.008997 0.046772 -E 5490.000000 70.000000 12.048635 172.607513 0.008935 0.046523 -E 5500.000000 70.000000 12.018157 172.614288 0.008923 0.046556 -E 5510.000000 70.000000 11.994914 172.600128 0.008928 0.046656 -E 5520.000000 70.000000 11.987124 172.573135 0.008916 0.046621 -E 5530.000000 70.000000 11.973194 172.569763 0.008884 0.046500 -E 5540.000000 70.000000 11.944142 172.681747 0.008850 0.046413 -E 5550.000000 70.000000 11.912913 172.635971 0.008835 0.046434 -E 5560.000000 70.000000 11.874080 172.600174 0.008823 0.046496 -E 5570.000000 70.000000 11.862383 172.620895 0.008794 0.046383 -E 5580.000000 70.000000 11.842405 172.678940 0.008775 0.046347 -E 5590.000000 70.000000 11.823432 172.662216 0.008770 0.046383 -E 5600.000000 70.000000 11.796490 172.640503 0.008747 0.046352 -E 5610.000000 70.000000 11.789158 172.680634 0.008697 0.046110 -E 5620.000000 70.000000 11.761437 172.676514 0.008678 0.046099 -E 5630.000000 70.000000 11.731346 172.744980 0.008669 0.046149 -E 5640.000000 70.000000 11.721725 172.784668 0.008638 0.046017 -E 5650.000000 70.000000 11.702127 172.761734 0.008600 0.045877 -E 5660.000000 70.000000 11.680478 172.697708 0.008569 0.045782 -E 5670.000000 70.000000 11.655467 172.677963 0.008482 0.045400 -E 5680.000000 70.000000 11.638405 172.836334 0.008332 0.044653 -E 5690.000000 70.000000 11.615869 172.801926 0.008158 0.043790 -E 5700.000000 70.000000 11.590267 172.782944 0.007924 0.042613 -E 5710.000000 70.000000 11.578173 172.838089 0.007808 0.042025 -E 5720.000000 70.000000 11.556172 172.818481 0.007747 0.041765 -E 5730.000000 70.000000 11.532859 172.843155 0.007675 0.041443 -E 5740.000000 70.000000 11.511471 172.876038 0.007536 0.040758 -E 5750.000000 70.000000 11.484875 172.828873 0.007465 0.040452 -E 5760.000000 70.000000 11.465578 172.807892 0.007412 0.040222 -E 5770.000000 70.000000 11.448228 172.881317 0.007270 0.039502 -E 5780.000000 70.000000 11.434128 172.899597 0.007164 0.038969 -E 5790.000000 70.000000 11.413200 172.840317 0.007154 0.038974 -E 5800.000000 70.000000 11.384785 172.818253 0.007106 0.038794 -E 5810.000000 70.000000 11.367579 172.867950 0.006930 0.037882 -E 5820.000000 70.000000 11.354798 172.871658 0.006755 0.036960 -E 5830.000000 70.000000 11.339818 172.862610 0.006919 0.037901 -E 5840.000000 70.000000 11.310710 172.917053 0.007242 0.039757 -E 5850.000000 70.000000 11.303096 172.917038 0.007193 0.039506 -E 5860.000000 70.000000 11.289329 172.975372 0.007228 0.039744 -E 5870.000000 70.000000 11.263792 172.873413 0.007303 0.040234 -E 5880.000000 70.000000 11.235555 172.904160 0.007238 0.039959 -E 5890.000000 70.000000 11.213624 172.935928 0.007218 0.039911 -E 5900.000000 70.000000 11.187429 172.907608 0.007460 0.041332 -E 5910.000000 70.000000 11.180805 172.914032 0.007614 0.042207 -E 5920.000000 70.000000 11.177961 172.959839 0.007613 0.042211 -E 5930.000000 70.000000 11.152356 172.990524 0.007494 0.041632 -E 5940.000000 70.000000 11.136552 172.991684 0.007382 0.041059 -E 5950.000000 70.000000 11.116196 173.031982 0.007293 0.040632 -E 5960.000000 70.000000 11.099436 172.964951 0.007312 0.040787 -E 5970.000000 70.000000 11.082603 172.951935 0.007436 0.041531 -E 5980.000000 70.000000 11.068828 173.037994 0.007501 0.041942 -E 5990.000000 70.000000 11.051756 173.083954 0.007505 0.042019 -E 6000.000000 70.000000 11.032812 173.028671 0.007513 0.042124 -E 6010.000000 70.000000 11.023314 173.053146 0.007459 0.041856 -E 6020.000000 70.000000 11.007709 173.072449 0.007373 0.041424 -E 6030.000000 70.000000 10.987975 173.055161 0.007271 0.040909 -E 6040.000000 70.000000 10.967356 173.081741 0.007242 0.040814 -E 6050.000000 70.000000 10.958225 173.042664 0.007390 0.041676 -E 6060.000000 70.000000 10.951637 173.013596 0.007433 0.041943 -E 6070.000000 70.000000 10.934222 173.079407 0.007443 0.042059 -E 6080.000000 70.000000 10.894495 173.136459 0.007471 0.042348 -E 6090.000000 70.000000 10.883726 173.053802 0.007499 0.042543 -E 6100.000000 70.000000 10.870139 173.141525 0.007473 0.042441 -E 6110.000000 70.000000 10.863460 173.138092 0.007431 0.042225 -E 6120.000000 70.000000 10.852050 173.133850 0.007417 0.042181 -E 6130.000000 70.000000 10.834374 173.186432 0.007401 0.042148 -E 6140.000000 70.000000 10.809425 173.156525 0.007383 0.042131 -E 6150.000000 70.000000 10.792129 173.097427 0.007430 0.042458 -E 6160.000000 70.000000 10.786530 173.175018 0.007497 0.042858 -E 6170.000000 70.000000 10.762918 173.199142 0.007535 0.043158 -E 6180.000000 70.000000 10.747923 173.175949 0.007550 0.043298 -E 6190.000000 70.000000 10.746305 173.110794 0.007576 0.043454 -E 6200.000000 70.000000 10.716991 173.134827 0.007544 0.043371 -E 6210.000000 70.000000 10.709064 173.121582 0.007549 0.043425 -E 6220.000000 70.000000 10.699302 173.145126 0.007579 0.043636 -E 6230.000000 70.000000 10.680178 173.197464 0.007540 0.043480 -E 6240.000000 70.000000 10.664915 173.172318 0.007519 0.043412 -E 6250.000000 70.000000 10.650968 173.239838 0.007586 0.043844 -E 6260.000000 70.000000 10.625656 173.200531 0.007640 0.044250 -E 6270.000000 70.000000 10.636355 173.182098 0.007639 0.044205 -E 6280.000000 70.000000 10.614540 173.205368 0.007632 0.044242 -E 6290.000000 70.000000 10.602071 173.255096 0.007638 0.044324 -E 6300.000000 70.000000 10.578819 173.349869 0.007644 0.044442 -E 6310.000000 70.000000 10.560072 173.298630 0.007683 0.044741 -E 6320.000000 70.000000 10.550346 173.178284 0.007696 0.044850 -E 6330.000000 70.000000 10.533011 173.329056 0.007673 0.044778 -E 6340.000000 70.000000 10.515390 173.339905 0.007684 0.044907 -E 6350.000000 70.000000 10.510254 173.305420 0.007682 0.044919 -E 6360.000000 70.000000 10.502902 173.328125 0.007657 0.044801 -E 6370.000000 70.000000 10.471516 173.342804 0.007645 0.044846 -E 6380.000000 70.000000 10.454593 173.328781 0.007658 0.044986 -E 6390.000000 70.000000 10.450792 173.312042 0.007658 0.044996 -E 6400.000000 70.000000 10.438745 173.288925 0.007657 0.045039 -E 6410.000000 70.000000 10.430684 173.270493 0.007669 0.045140 -E 6420.000000 70.000000 10.415838 173.404144 0.007693 0.045335 -E 6430.000000 70.000000 10.399295 173.536362 0.007685 0.045355 -E 6440.000000 70.000000 10.402256 173.435898 0.007687 0.045355 -E 6450.000000 70.000000 10.388330 173.310867 0.007701 0.045489 -E 6460.000000 70.000000 10.351901 173.357803 0.007699 0.045619 -E 6470.000000 70.000000 10.358933 173.357346 0.007692 0.045547 -E 6480.000000 70.000000 10.361680 173.404663 0.007681 0.045474 -E 6490.000000 70.000000 10.334061 173.408554 0.007672 0.045530 -E 6500.000000 70.000000 10.322186 173.406952 0.007672 0.045575 -E 6510.000000 70.000000 10.308403 173.458206 0.007676 0.045649 -E 6520.000000 70.000000 10.285506 173.402054 0.007669 0.045698 -E 6530.000000 70.000000 10.286395 173.401093 0.007676 0.045733 -E 6540.000000 70.000000 10.288983 173.435364 0.007746 0.046142 -E 6550.000000 70.000000 10.250113 173.468491 0.006866 0.041036 -E 6560.000000 70.000000 10.248907 173.462906 0.004813 0.028771 -E 6570.000000 70.000000 10.250183 173.429825 0.004650 0.027794 -E 6580.000000 70.000000 10.237034 173.436066 0.006353 0.038017 -E 6590.000000 70.000000 10.215320 173.461487 0.007609 0.045614 -E 6600.000000 70.000000 10.200864 173.388412 0.007655 0.045946 -E 6610.000000 70.000000 10.199327 173.367020 0.007661 0.045991 -E 6620.000000 70.000000 10.180434 173.408798 0.007645 0.045969 -E 6630.000000 70.000000 10.177233 173.419464 0.007634 0.045913 -E 6640.000000 70.000000 10.159374 173.487625 0.007639 0.046018 -E 6650.000000 70.000000 10.145863 173.522263 0.007645 0.046105 -E 6660.000000 70.000000 10.140770 173.569214 0.007643 0.046116 -E 6670.000000 70.000000 10.132472 173.557678 0.007641 0.046138 -E 6680.000000 70.000000 10.135470 173.514099 0.007632 0.046069 -E 6690.000000 70.000000 10.106279 173.502441 0.007618 0.046105 -E 6700.000000 70.000000 10.098595 173.622330 0.007597 0.046007 -E 6710.000000 70.000000 10.078350 173.630615 0.007601 0.046113 -E 6720.000000 70.000000 10.063108 173.560822 0.007591 0.046114 -E 6730.000000 70.000000 10.040607 173.474182 0.007588 0.046184 -E 6740.000000 70.000000 10.043713 173.541977 0.007598 0.046233 -E 6750.000000 70.000000 10.032000 173.606796 0.007606 0.046331 -E 6760.000000 70.000000 10.031154 173.488205 0.007605 0.046331 -E 6770.000000 70.000000 10.022972 173.504898 0.007598 0.046320 -E 6780.000000 70.000000 10.011140 173.551910 0.007584 0.046285 -E 6790.000000 70.000000 9.997108 173.572495 0.007568 0.046242 -E 6800.000000 70.000000 9.970707 173.551437 0.007560 0.046303 -E 6810.000000 70.000000 9.975588 173.630203 0.007557 0.046261 -E 6820.000000 70.000000 9.965106 173.666229 0.007560 0.046326 -E 6830.000000 70.000000 9.942946 173.612595 0.007558 0.046404 -E 6840.000000 70.000000 9.949089 173.666382 0.007548 0.046320 -E 6850.000000 70.000000 9.939376 173.623032 0.007517 0.046169 -E 6860.000000 70.000000 9.908001 173.687836 0.007515 0.046285 -E 6870.000000 70.000000 9.909123 173.668350 0.007535 0.046406 -E 6880.000000 70.000000 9.915418 173.652054 0.007545 0.046438 -E 6890.000000 70.000000 9.899430 173.570816 0.007549 0.046530 -E 6900.000000 70.000000 9.884955 173.615494 0.007558 0.046647 -E 6910.000000 70.000000 9.867867 173.714340 0.007556 0.046706 -E 6920.000000 70.000000 9.851445 173.717667 0.007549 0.046733 -E 6930.000000 70.000000 9.842437 173.678726 0.007543 0.046731 -E 6940.000000 70.000000 9.835801 173.842697 0.007534 0.046705 -E 6950.000000 70.000000 9.814747 173.839600 0.007546 0.046867 -E 6960.000000 70.000000 9.800947 173.668976 0.007548 0.046939 -E 6970.000000 70.000000 9.807914 173.715454 0.007534 0.046822 -E 6980.000000 70.000000 9.788121 173.727585 0.007526 0.046856 -E 6990.000000 70.000000 9.771259 173.744690 0.007532 0.046970 -E 7000.000000 70.000000 9.779154 173.776138 0.007543 0.047004 -E 7010.000000 70.000000 9.759831 173.799026 0.007555 0.047163 -E 7020.000000 70.000000 9.754523 173.845306 0.007559 0.047207 -E 7030.000000 70.000000 9.745038 173.830978 0.007558 0.047243 -E 7040.000000 70.000000 9.722622 173.781799 0.007572 0.047430 -E 7050.000000 70.000000 9.711342 173.755203 0.007585 0.047561 -E 7060.000000 70.000000 9.710948 173.855682 0.007588 0.047581 -E 7070.000000 70.000000 9.701822 173.865936 0.007560 0.047445 -E 7080.000000 70.000000 9.694470 173.780518 0.007565 0.047508 -E 7090.000000 70.000000 9.691283 173.845032 0.007583 0.047638 -E 7100.000000 70.000000 9.681171 173.885696 0.007600 0.047785 -E 7110.000000 70.000000 9.669317 173.828506 0.007602 0.047855 -E 7120.000000 70.000000 9.663428 173.793884 0.007604 0.047890 -E 7130.000000 70.000000 9.643742 173.828430 0.007607 0.047994 -E 7140.000000 70.000000 9.640675 173.799622 0.007598 0.047955 -E 7150.000000 70.000000 9.631563 173.814682 0.007592 0.047956 -E 7160.000000 70.000000 9.611721 173.779343 0.007600 0.048092 -E 7170.000000 70.000000 9.603939 173.852066 0.007625 0.048290 -E 7180.000000 70.000000 9.620442 173.986954 0.007623 0.048204 -E 7190.000000 70.000000 9.613693 173.897446 0.007625 0.048246 -E 7200.000000 70.000000 9.582446 173.921173 0.007639 0.048475 -E 7210.000000 70.000000 9.569226 173.999939 0.007655 0.048637 -E 7220.000000 70.000000 9.585300 173.949295 0.007655 0.048566 -E 7230.000000 70.000000 9.567454 173.985458 0.007673 0.048760 -E 7240.000000 70.000000 9.565096 174.004868 0.007670 0.048754 -E 7250.000000 70.000000 9.550028 173.933411 0.007639 0.048624 -E 7260.000000 70.000000 9.521615 173.925705 0.007610 0.048566 -E 7270.000000 70.000000 9.513081 173.940231 0.007629 0.048731 -E 7280.000000 70.000000 9.514208 173.954239 0.007636 0.048769 -E 7290.000000 70.000000 9.518766 173.974365 0.007627 0.048693 -E 7300.000000 70.000000 9.519683 173.952118 0.007635 0.048736 -E 7310.000000 70.000000 9.481967 173.987991 0.007631 0.048884 -E 7320.000000 70.000000 9.492261 173.985123 0.007641 0.048905 -E 7330.000000 70.000000 9.486000 173.950409 0.007673 0.049134 -E 7340.000000 70.000000 9.472294 173.946762 0.007667 0.049163 -E 7350.000000 70.000000 9.466720 174.037369 0.007625 0.048921 -E 7360.000000 70.000000 9.457794 174.025009 0.007630 0.048995 -E 7370.000000 70.000000 9.458140 173.985352 0.007666 0.049222 -E 7380.000000 70.000000 9.451670 173.994141 0.007719 0.049595 -E 7390.000000 70.000000 9.440516 174.064316 0.007748 0.049829 -E 7400.000000 70.000000 9.438191 174.046219 0.007717 0.049646 -E 7410.000000 70.000000 9.428780 174.087830 0.007747 0.049883 -E 7420.000000 70.000000 9.414704 174.083725 0.007805 0.050325 -E 7430.000000 70.000000 9.404902 174.113312 0.007830 0.050533 -E 7440.000000 70.000000 9.382589 174.120255 0.007837 0.050686 -E 7450.000000 70.000000 9.379965 174.132629 0.007845 0.050746 -E 7460.000000 70.000000 9.388845 174.107147 0.007851 0.050746 -E 7470.000000 70.000000 9.375950 174.094406 0.007821 0.050615 -E 7480.000000 70.000000 9.363350 174.080887 0.007818 0.050658 -E 7490.000000 70.000000 9.355113 174.144135 0.007853 0.050926 -E 7500.000000 70.000000 9.361959 174.153854 0.007854 0.050896 -E 7510.000000 70.000000 9.341738 174.149353 0.007853 0.050990 -E 7520.000000 70.000000 9.333494 174.095627 0.007911 0.051405 -E 7530.000000 70.000000 9.338209 174.080933 0.007937 0.051555 -E 7540.000000 70.000000 9.334275 174.142395 0.007893 0.051291 -E 7550.000000 70.000000 9.313696 174.216782 0.007912 0.051514 -E 7560.000000 70.000000 9.318128 174.284729 0.007923 0.051566 -E 7570.000000 70.000000 9.319859 174.220490 0.007915 0.051503 -E 7580.000000 70.000000 9.315630 174.140274 0.007903 0.051445 -E 7590.000000 70.000000 9.309307 174.212372 0.007899 0.051453 -E 7600.000000 70.000000 9.288897 174.206619 0.007962 0.051964 -E 7610.000000 70.000000 9.282671 174.265930 0.008024 0.052402 -E 7620.000000 70.000000 9.275507 174.235352 0.008069 0.052735 -E 7630.000000 70.000000 9.260244 174.149567 0.008050 0.052689 -E 7640.000000 70.000000 9.269856 174.157608 0.008036 0.052547 -E 7650.000000 70.000000 9.257846 174.228058 0.008067 0.052813 -E 7660.000000 70.000000 9.246433 174.235458 0.008122 0.053226 -E 7670.000000 70.000000 9.227341 174.358429 0.008192 0.053787 -E 7680.000000 70.000000 9.227748 174.302567 0.008180 0.053709 -E 7690.000000 70.000000 9.229633 174.262558 0.008095 0.053140 -E 7700.000000 70.000000 9.214854 174.278290 0.008064 0.053012 -E 7710.000000 70.000000 9.205322 174.234344 0.008125 0.053466 -E 7720.000000 70.000000 9.219481 174.289520 0.008214 0.053978 -E 7730.000000 70.000000 9.208651 174.351563 0.008278 0.054453 -E 7740.000000 70.000000 9.184813 174.284821 0.008297 0.054708 -E 7750.000000 70.000000 9.177646 174.259140 0.008335 0.054996 -E 7760.000000 70.000000 9.160827 174.313980 0.008383 0.055403 -E 7770.000000 70.000000 9.166468 174.361023 0.008410 0.055552 -E 7780.000000 70.000000 9.166428 174.266953 0.008402 0.055500 -E 7790.000000 70.000000 9.160894 174.427765 0.008353 0.055208 -E 7800.000000 70.000000 9.157903 174.301712 0.008342 0.055149 -E 7810.000000 70.000000 9.134407 174.226852 0.008411 0.055733 -E 7820.000000 70.000000 9.140054 174.362976 0.008448 0.055954 -E 7830.000000 70.000000 9.150946 174.413727 0.008458 0.055956 -E 7840.000000 70.000000 9.125465 174.317062 0.008505 0.056413 -E 7850.000000 70.000000 9.117087 174.279922 0.008569 0.056882 -E 7860.000000 70.000000 9.108488 174.381577 0.008609 0.057194 -E 7870.000000 70.000000 9.125469 174.330032 0.008602 0.057053 -E 7880.000000 70.000000 9.106487 174.335648 0.008588 0.057067 -E 7890.000000 70.000000 9.090854 174.347092 0.008615 0.057335 -E 7900.000000 70.000000 9.079696 174.458221 0.008658 0.057687 -E 7910.000000 70.000000 9.081581 174.472504 0.008664 0.057718 -E 7920.000000 70.000000 9.088305 174.384888 0.008684 0.057816 -E 7930.000000 70.000000 9.069597 174.463272 0.008705 0.058060 -E 7940.000000 70.000000 9.089453 174.464005 0.008681 0.057790 -E 7950.000000 70.000000 9.067080 174.508240 0.008690 0.057977 -E 7960.000000 70.000000 9.051100 174.423874 0.008742 0.058419 -E 7970.000000 70.000000 9.054414 174.494553 0.008791 0.058725 -E 7980.000000 70.000000 9.044289 174.405136 0.008820 0.058979 -E 7990.000000 70.000000 9.048944 174.376541 0.008839 0.059077 -E 8000.000000 70.000000 9.021362 174.418228 0.008834 0.059208 -E 8010.000000 70.000000 9.019710 174.414276 0.008823 0.059142 -E 8020.000000 70.000000 9.030197 174.388916 0.008885 0.059496 -E 8030.000000 70.000000 9.027197 174.392212 0.008939 0.059882 -E 8040.000000 70.000000 9.009150 174.446243 0.008941 0.059998 -E 8050.000000 70.000000 8.984633 174.459808 0.008928 0.060059 -E 8060.000000 70.000000 8.986261 174.415894 0.008958 0.060255 -E 8070.000000 70.000000 8.992615 174.375305 0.009043 0.060789 -E 8080.000000 70.000000 8.976461 174.352875 0.009080 0.061138 -E 8090.000000 70.000000 8.971928 174.483948 0.009021 0.060765 -E 8100.000000 70.000000 8.972869 174.480133 0.009036 0.060864 -E 8110.000000 70.000000 8.966395 174.470535 0.009085 0.061233 -E 8120.000000 70.000000 8.959633 174.596985 0.009145 0.061678 -E 8130.000000 70.000000 8.971983 174.628052 0.009137 0.061550 -E 8140.000000 70.000000 8.958868 174.599747 0.009089 0.061310 -E 8150.000000 70.000000 8.942255 174.606201 0.009123 0.061637 -E 8160.000000 70.000000 8.958334 174.523941 0.009188 0.061981 -E 8170.000000 70.000000 8.955948 174.514816 0.009229 0.062270 -E 8180.000000 70.000000 8.938348 174.560974 0.009209 0.062247 -E 8190.000000 70.000000 8.939431 174.610413 0.009202 0.062192 -E 8200.000000 70.000000 8.948799 174.641739 0.009245 0.062429 -E 8210.000000 70.000000 8.944346 174.649521 0.009282 0.062705 -E 8220.000000 70.000000 8.910946 174.636475 0.009315 0.063142 -E 8230.000000 70.000000 8.914278 174.437347 0.009282 0.062893 -E 8240.000000 70.000000 8.905667 174.594177 0.009276 0.062913 -E 8250.000000 70.000000 8.893200 174.635208 0.009350 0.063492 -E 8260.000000 70.000000 8.890527 174.555466 0.009405 0.063887 -E 8270.000000 70.000000 8.889400 174.434204 0.009380 0.063722 -E 8280.000000 70.000000 8.885114 174.541473 0.009339 0.063470 -E 8290.000000 70.000000 8.878053 174.571487 0.009350 0.063594 -E 8300.000000 70.000000 8.896312 174.743134 0.009438 0.064074 -E 8310.000000 70.000000 8.896188 174.758728 0.009492 0.064439 -E 8320.000000 70.000000 8.850922 174.587646 0.009474 0.064612 -E 8330.000000 70.000000 8.825754 174.669357 0.009428 0.064466 -E 8340.000000 70.000000 8.850741 174.731064 0.009409 0.064172 -E 8350.000000 70.000000 8.856588 174.554749 0.009452 0.064433 -E 8360.000000 70.000000 8.842800 174.489624 0.009531 0.065060 -E 8370.000000 70.000000 8.839125 174.544144 0.009511 0.064949 -E 8380.000000 70.000000 8.820309 174.659988 0.009496 0.064973 -E 8390.000000 70.000000 8.822253 174.760406 0.009523 0.065144 -E 8400.000000 70.000000 8.820306 174.708344 0.009602 0.065697 -E 8410.000000 70.000000 8.817249 174.726166 0.009638 0.065968 -E 8420.000000 70.000000 8.835634 174.698380 0.009619 0.065711 -E 8430.000000 70.000000 8.800640 174.652252 0.009595 0.065786 -E 8440.000000 70.000000 8.815183 174.678955 0.009597 0.065703 -E 8450.000000 70.000000 8.801238 174.678177 0.009648 0.066141 -E 8460.000000 70.000000 8.787373 174.836914 0.009677 0.066437 -E 8470.000000 70.000000 8.799990 174.777573 0.009654 0.066195 -E 8480.000000 70.000000 8.794261 174.753922 0.009617 0.065982 -E 8490.000000 70.000000 8.780627 174.663406 0.009695 0.066607 -E 8500.000000 70.000000 8.784750 174.669418 0.009866 0.067760 -E 8510.000000 70.000000 8.763975 174.586105 0.009920 0.068273 -E 8520.000000 70.000000 8.748459 174.696381 0.009714 0.066965 -E 8530.000000 70.000000 8.764171 174.869263 0.009494 0.065341 -E 8540.000000 70.000000 8.752581 174.833801 0.009470 0.065258 -E 8550.000000 70.000000 8.746904 174.708878 0.009609 0.066253 -E 8560.000000 70.000000 8.733954 174.660934 0.009713 0.067061 -E 8570.000000 70.000000 8.720658 174.605240 0.009737 0.067320 -E 8580.000000 70.000000 8.735291 174.792511 0.009698 0.066944 -E 8590.000000 70.000000 8.716925 174.710175 0.009674 0.066911 -E 8600.000000 70.000000 8.733969 174.689285 0.009708 0.067025 -E 8610.000000 70.000000 8.724585 174.890839 0.009797 0.067710 -E 8620.000000 70.000000 8.719799 174.816483 0.009837 0.068018 -E 8630.000000 70.000000 8.719354 174.805786 0.009834 0.068000 -E 8640.000000 70.000000 8.701517 174.922363 0.009771 0.067692 -E 8650.000000 70.000000 8.705914 174.856903 0.009739 0.067440 -E 8660.000000 70.000000 8.716096 174.762833 0.009788 0.067710 -E 8670.000000 70.000000 8.706722 174.881805 0.009861 0.068276 -E 8680.000000 70.000000 8.692905 174.813553 0.009870 0.068441 -E 8690.000000 70.000000 8.696210 174.860626 0.009854 0.068309 -E 8700.000000 70.000000 8.675367 174.866287 0.009836 0.068330 -E 8710.000000 70.000000 8.690472 174.910385 0.009858 0.068374 -E 8720.000000 70.000000 8.678859 174.782303 0.009908 0.068806 -E 8730.000000 70.000000 8.647379 174.943115 0.009913 0.069071 -E 8740.000000 70.000000 8.657319 174.847107 0.009873 0.068722 -E 8750.000000 70.000000 8.675156 174.824677 0.009841 0.068370 -E 8760.000000 70.000000 8.670392 174.928223 0.009851 0.068472 -E 8770.000000 70.000000 8.639541 174.787003 0.009912 0.069120 -E 8780.000000 70.000000 8.626282 174.790497 0.009960 0.069551 -E 8790.000000 70.000000 8.620787 174.833664 0.009947 0.069501 -E 8800.000000 70.000000 8.646818 174.813934 0.009937 0.069245 -E 8810.000000 70.000000 8.632964 174.817978 0.009973 0.069598 -E 8820.000000 70.000000 8.621170 175.019318 0.010014 0.069972 -E 8830.000000 70.000000 8.633305 174.994049 0.010051 0.070137 -E 8840.000000 70.000000 8.630743 174.895889 0.010061 0.070225 -E 8850.000000 70.000000 8.618359 175.023682 0.010081 0.070460 -E 8860.000000 70.000000 8.622253 174.903503 0.010060 0.070281 -E 8870.000000 70.000000 8.606414 174.921280 0.010030 0.070190 -E 8880.000000 70.000000 8.595314 174.936859 0.010034 0.070302 -E 8890.000000 70.000000 8.598085 174.983963 0.010079 0.070597 -E 8900.000000 70.000000 8.600169 174.924988 0.010118 0.070858 -E 8910.000000 70.000000 8.591242 174.851532 0.010143 0.071100 -E 8920.000000 70.000000 8.583925 174.981171 0.010140 0.071133 -E 8930.000000 70.000000 8.573763 175.009506 0.010138 0.071194 -E 8940.000000 70.000000 8.555571 174.868820 0.010148 0.071406 -E 8950.000000 70.000000 8.558867 175.066116 0.010183 0.071629 -E 8960.000000 70.000000 8.581882 174.857391 0.010210 0.071639 -E 8970.000000 70.000000 8.561497 174.897034 0.010235 0.071973 -E 8980.000000 70.000000 8.559835 174.913132 0.010255 0.072126 -E 8990.000000 70.000000 8.552236 174.743958 0.010240 0.072080 -E 9000.000000 70.000000 8.550808 174.872910 0.010280 0.072374 -E 9010.000000 70.000000 8.554516 174.972046 0.010310 0.072555 -E 9020.000000 70.000000 8.569343 175.113739 0.010312 0.072453 -E 9030.000000 70.000000 8.549447 175.006912 0.010361 0.072953 -E 9040.000000 70.000000 8.538127 175.084564 0.010371 0.073114 -E 9050.000000 70.000000 8.546661 175.149612 0.010352 0.072912 -E 9060.000000 70.000000 8.537910 174.898056 0.010384 0.073210 -E 9070.000000 70.000000 8.536934 174.930206 0.010427 0.073518 -E 9080.000000 70.000000 8.528360 175.151489 0.010484 0.073992 -E 9090.000000 70.000000 8.528864 174.964355 0.010529 0.074301 -E 9100.000000 70.000000 8.496531 174.854111 0.010541 0.074643 -E 9110.000000 70.000000 8.508589 174.931702 0.010509 0.074321 -E 9120.000000 70.000000 8.508849 175.047348 0.010528 0.074459 -E 9130.000000 70.000000 8.507488 175.007339 0.010577 0.074811 -E 9140.000000 70.000000 8.498118 175.060181 0.010659 0.075471 -E 9150.000000 70.000000 8.504669 175.019135 0.010657 0.075407 -E 9160.000000 70.000000 8.480077 175.054489 0.010622 0.075357 -E 9170.000000 70.000000 8.488358 175.130203 0.010606 0.075178 -E 9180.000000 70.000000 8.487889 175.113403 0.010616 0.075249 -E 9190.000000 70.000000 8.476492 175.066528 0.010674 0.075753 -E 9200.000000 70.000000 8.478591 174.922928 0.010762 0.076364 -E 9210.000000 70.000000 8.472970 175.120880 0.010810 0.076749 -E 9220.000000 70.000000 8.468168 175.132172 0.010861 0.077148 -E 9230.000000 70.000000 8.458891 175.140686 0.010887 0.077416 -E 9240.000000 70.000000 8.458486 175.132370 0.010901 0.077514 -E 9250.000000 70.000000 8.454440 174.966049 0.010924 0.077717 -E 9260.000000 70.000000 8.454695 175.120880 0.010968 0.078025 -E 9270.000000 70.000000 8.466520 175.274689 0.011022 0.078312 -E 9280.000000 70.000000 8.460687 175.196533 0.011080 0.078773 -E 9290.000000 70.000000 8.452767 174.932114 0.011116 0.079099 -E 9300.000000 70.000000 8.446152 174.997421 0.011136 0.079298 -E 9310.000000 70.000000 8.446439 175.049088 0.011154 0.079421 -E 9320.000000 70.000000 8.421367 175.228378 0.011168 0.079736 -E 9330.000000 70.000000 8.395915 175.138718 0.011210 0.080261 -E 9340.000000 70.000000 8.406946 175.194504 0.011258 0.080504 -E 9350.000000 70.000000 8.436943 175.221130 0.011319 0.080683 -E 9360.000000 70.000000 8.448875 175.163834 0.011385 0.081048 -E 9370.000000 70.000000 8.440248 175.347046 0.011417 0.081349 -E 9380.000000 70.000000 8.408854 175.177216 0.011431 0.081729 -E 9390.000000 70.000000 8.403489 175.083237 0.011457 0.081960 -E 9400.000000 70.000000 8.408162 175.171173 0.011548 0.082570 -E 9410.000000 70.000000 8.424427 175.292877 0.011611 0.082881 -E 9420.000000 70.000000 8.414208 175.338913 0.011671 0.083398 -E 9430.000000 70.000000 8.401778 175.036697 0.011735 0.083971 -E 9440.000000 70.000000 8.386297 175.165298 0.011744 0.084178 -E 9450.000000 70.000000 8.380025 175.090759 0.011782 0.084503 -E 9460.000000 70.000000 8.396639 175.237518 0.011840 0.084768 -E 9470.000000 70.000000 8.389497 175.245880 0.011909 0.085330 -E 9480.000000 70.000000 8.396621 175.333664 0.011969 0.085692 -E 9490.000000 70.000000 8.382241 175.256424 0.012039 0.086330 -E 9500.000000 70.000000 8.362041 175.209213 0.012105 0.086992 -E 9510.000000 70.000000 8.383402 175.067734 0.012151 0.087125 -E 9520.000000 70.000000 8.388864 175.043549 0.012188 0.087336 -E 9530.000000 70.000000 8.371493 175.175491 0.012252 0.087963 -E 9540.000000 70.000000 8.340021 175.187088 0.012359 0.089033 -E 9550.000000 70.000000 8.337351 175.201065 0.012446 0.089694 -E 9560.000000 70.000000 8.350050 175.216461 0.012475 0.089776 -E 9570.000000 70.000000 8.361102 175.414444 0.012496 0.089820 -E 9580.000000 70.000000 8.363356 175.371506 0.012526 0.090015 -E 9590.000000 70.000000 8.357409 175.204819 0.012582 0.090472 -E 9600.000000 70.000000 8.345102 175.299271 0.012646 0.091058 -E 9610.000000 70.000000 8.318431 175.428223 0.012694 0.091670 -E 9620.000000 70.000000 8.309038 175.299362 0.012772 0.092333 -E 9630.000000 70.000000 8.321168 175.249100 0.012833 0.092651 -E 9640.000000 70.000000 8.336560 175.282150 0.012887 0.092885 -E 9650.000000 70.000000 8.326828 175.316025 0.012954 0.093466 -E 9660.000000 70.000000 8.315522 175.465591 0.013008 0.093974 -E 9670.000000 70.000000 8.301159 175.563019 0.013099 0.094781 -E 9680.000000 70.000000 8.325414 175.332718 0.013195 0.095217 -E 9690.000000 70.000000 8.325931 175.237335 0.013269 0.095751 -E 9700.000000 70.000000 8.309796 175.099472 0.013308 0.096198 -E 9710.000000 70.000000 8.339731 175.405060 0.013389 0.096469 -E 9720.000000 70.000000 8.282105 175.512756 0.013487 0.097791 -E 9730.000000 70.000000 8.272711 175.393860 0.013586 0.098613 -E 9740.000000 70.000000 8.271445 175.380753 0.013671 0.099248 -E 9750.000000 70.000000 8.296926 175.294891 0.013710 0.099246 -E 9760.000000 70.000000 8.332147 175.336060 0.013790 0.099445 -E 9770.000000 70.000000 8.286115 175.326889 0.013888 0.100660 -E 9780.000000 70.000000 8.277268 175.494949 0.013963 0.101300 -E 9790.000000 70.000000 8.276253 175.254120 0.014057 0.101994 -E 9800.000000 70.000000 8.255424 175.159622 0.014168 0.103038 -E 9810.000000 70.000000 8.281021 175.241699 0.014278 0.103545 -E 9820.000000 70.000000 8.257392 175.382538 0.014402 0.104717 -E 9830.000000 70.000000 8.267316 175.262878 0.014455 0.104990 -E 9840.000000 70.000000 8.238717 175.118729 0.014557 0.106066 -E 9850.000000 70.000000 8.258997 175.342987 0.014659 0.106574 -E 9860.000000 70.000000 8.247291 175.211380 0.014750 0.107375 -E 9870.000000 70.000000 8.250484 175.184814 0.014898 0.108409 -E 9880.000000 70.000000 8.265643 175.353760 0.015018 0.109101 -E 9890.000000 70.000000 8.252702 175.560379 0.015109 0.109920 -E 9900.000000 70.000000 8.256435 175.729752 0.015192 0.110484 -E 9910.000000 70.000000 8.245546 175.558929 0.015307 0.111454 -E 9920.000000 70.000000 8.235231 175.491898 0.015464 0.112723 -E 9930.000000 70.000000 8.251116 175.414871 0.015630 0.113738 -E 9940.000000 70.000000 8.219556 175.596420 0.015775 0.115197 -E 9950.000000 70.000000 8.234161 175.489883 0.015879 0.115764 -E 9960.000000 70.000000 8.210146 175.370544 0.016033 0.117198 -E 9970.000000 70.000000 8.193875 175.396194 0.016151 0.118280 -E 9980.000000 70.000000 8.194836 175.378006 0.016342 0.119662 -E 9990.000000 70.000000 8.212622 175.541595 0.016519 0.120720 -E 10000.000000 70.000000 8.224506 175.505066 0.016685 0.121774 -E 10025.000000 70.000000 8.190679 175.534195 0.008064 0.059091 -E 10050.000000 70.000000 8.184579 175.487549 0.007874 0.057739 -E 10075.000000 70.000000 8.169347 175.522202 0.007645 0.056150 -E 10100.000000 70.000000 8.172769 175.523972 0.007465 0.054810 -E 10125.000000 70.000000 8.182145 175.506378 0.007308 0.053598 -E 10150.000000 70.000000 8.168519 175.433441 0.007121 0.052310 -E 10175.000000 70.000000 8.160705 175.446899 0.006952 0.051115 -E 10200.000000 70.000000 8.158606 175.546753 0.006800 0.050006 -E 10225.000000 70.000000 8.144069 175.528503 0.006631 0.048847 -E 10250.000000 70.000000 8.131223 175.524414 0.006478 0.047789 -E 10275.000000 70.000000 8.125073 175.587662 0.006355 0.046912 -E 10300.000000 70.000000 8.119646 175.573975 0.006197 0.045772 -E 10325.000000 70.000000 8.114458 175.537277 0.006032 0.044584 -E 10350.000000 70.000000 8.107176 175.580444 0.005902 0.043660 -E 10375.000000 70.000000 8.100228 175.584854 0.005778 0.042776 -E 10400.000000 70.000000 8.093657 175.553207 0.005660 0.041934 -E 10425.000000 70.000000 8.086782 175.564911 0.005549 0.041137 -E 10450.000000 70.000000 8.080079 175.578323 0.005440 0.040361 -E 10475.000000 70.000000 8.073559 175.586639 0.005332 0.039595 -E 10500.000000 70.000000 8.071528 175.600754 0.005233 0.038867 -E 10525.000000 70.000000 8.069858 175.616943 0.005139 0.038177 -E 10550.000000 70.000000 8.059555 175.634354 0.005051 0.037564 -E 10575.000000 70.000000 8.049754 175.673370 0.004972 0.037022 -E 10600.000000 70.000000 8.040311 175.730011 0.004902 0.036536 -E 10625.000000 70.000000 8.035843 175.681274 0.004805 0.035833 -E 10650.000000 70.000000 8.030298 175.669708 0.004720 0.035222 -E 10675.000000 70.000000 8.022291 175.729874 0.004654 0.034762 -E 10700.000000 70.000000 8.019765 175.735107 0.004570 0.034143 -E 10725.000000 70.000000 8.017097 175.728210 0.004489 0.033548 -E 10750.000000 70.000000 8.006824 175.736603 0.004436 0.033193 -E 10775.000000 70.000000 7.997991 175.730072 0.004357 0.032636 -E 10800.000000 70.000000 7.990237 175.714401 0.004264 0.031963 -E 10825.000000 70.000000 7.987331 175.731110 0.004200 0.031496 -E 10850.000000 70.000000 7.984536 175.728073 0.004132 0.030999 -E 10875.000000 70.000000 7.981798 175.699738 0.004059 0.030460 -E 10900.000000 70.000000 7.981146 175.736130 0.004003 0.030042 -E 10925.000000 70.000000 7.978756 175.779877 0.003947 0.029626 -E 10950.000000 70.000000 7.970494 175.812225 0.003878 0.029138 -E 10975.000000 70.000000 7.957333 175.834183 0.003824 0.028779 -E 11000.000000 70.000000 7.943127 175.848785 0.003779 0.028481 -E 11025.000000 70.000000 7.939655 175.839844 0.003736 0.028174 -E 11050.000000 70.000000 7.933967 175.815979 0.003700 0.027916 -E 11075.000000 70.000000 7.926233 175.778305 0.003668 0.027702 -E 11100.000000 70.000000 7.924328 175.767487 0.003613 0.027295 -E 11125.000000 70.000000 7.920842 175.778168 0.003571 0.026982 -E 11150.000000 70.000000 7.913671 175.824203 0.003550 0.026850 -E 11175.000000 70.000000 7.912203 175.836578 0.003521 0.026636 -E 11200.000000 70.000000 7.911076 175.838226 0.003493 0.026427 -E 11225.000000 70.000000 7.904621 175.836258 0.003476 0.026320 -E 11250.000000 70.000000 7.900852 175.859985 0.003452 0.026146 -E 11275.000000 70.000000 7.898427 175.899017 0.003424 0.025942 -E 11300.000000 70.000000 7.888583 175.935562 0.003420 0.025938 -E 11325.000000 70.000000 7.880345 175.957703 0.003406 0.025860 -E 11350.000000 70.000000 7.873960 175.963379 0.003382 0.025700 -E 11375.000000 70.000000 7.871910 175.896622 0.003370 0.025612 -E 11400.000000 70.000000 7.869700 175.870316 0.003358 0.025523 -E 11425.000000 70.000000 7.865981 175.948929 0.003341 0.025410 -E 11450.000000 70.000000 7.860325 175.943329 0.003325 0.025299 -E 11475.000000 70.000000 7.855378 175.920532 0.003306 0.025173 -E 11500.000000 70.000000 7.857015 175.953506 0.003280 0.024971 -E 11525.000000 70.000000 7.850841 175.968109 0.003258 0.024818 -E 11550.000000 70.000000 7.839879 175.969925 0.003238 0.024697 -E 11575.000000 70.000000 7.840657 175.944992 0.003224 0.024586 -E 11600.000000 70.000000 7.839085 175.938370 0.003200 0.024411 -E 11625.000000 70.000000 7.834796 175.952881 0.003166 0.024161 -E 11650.000000 70.000000 7.826550 175.967606 0.003146 0.024038 -E 11675.000000 70.000000 7.820414 175.984756 0.003126 0.023900 -E 11700.000000 70.000000 7.819611 176.007156 0.003100 0.023699 -E 11725.000000 70.000000 7.814298 176.046616 0.003082 0.023581 -E 11750.000000 70.000000 7.807539 176.084625 0.003065 0.023466 -E 11775.000000 70.000000 7.800848 176.093231 0.003034 0.023248 -E 11800.000000 70.000000 7.797514 176.088745 0.003006 0.023045 -E 11825.000000 70.000000 7.796220 176.074249 0.002981 0.022851 -E 11850.000000 70.000000 7.795309 176.021408 0.002955 0.022656 -E 11875.000000 70.000000 7.790823 176.011734 0.002931 0.022486 -E 11900.000000 70.000000 7.782712 176.045914 0.002910 0.022341 -E 11925.000000 70.000000 7.774875 176.044586 0.002883 0.022158 -E 11950.000000 70.000000 7.770673 176.061829 0.002859 0.021987 -E 11975.000000 70.000000 7.772564 176.115753 0.002841 0.021841 -E 12000.000000 70.000000 7.768823 176.114288 0.002822 0.021706 -E 12025.000000 70.000000 7.763596 176.105713 0.002803 0.021572 -E 12050.000000 70.000000 7.758069 176.117203 0.002784 0.021435 -E 12075.000000 70.000000 7.754148 176.114685 0.002770 0.021341 -E 12100.000000 70.000000 7.751001 176.109772 0.002758 0.021259 -E 12125.000000 70.000000 7.748141 176.134827 0.002740 0.021124 -E 12150.000000 70.000000 7.746853 176.140488 0.002723 0.020995 -E 12175.000000 70.000000 7.746752 176.131348 0.002707 0.020870 -E 12200.000000 70.000000 7.737659 176.154709 0.002701 0.020850 -E 12225.000000 70.000000 7.731359 176.159393 0.002693 0.020805 -E 12250.000000 70.000000 7.728441 176.141037 0.002683 0.020729 -E 12275.000000 70.000000 7.722176 176.119446 0.002679 0.020718 -E 12300.000000 70.000000 7.717067 176.119141 0.002679 0.020728 -E 12325.000000 70.000000 7.715099 176.162216 0.002683 0.020761 -E 12350.000000 70.000000 7.714838 176.171265 0.002675 0.020706 -E 12375.000000 70.000000 7.712655 176.181992 0.002671 0.020677 -E 12400.000000 70.000000 7.702073 176.232468 0.002687 0.020824 -E 12425.000000 70.000000 7.699123 176.236954 0.002680 0.020783 -E 12450.000000 70.000000 7.698757 176.218033 0.002667 0.020679 -E 12475.000000 70.000000 7.689717 176.193024 0.002677 0.020781 -E 12500.000000 70.000000 7.685834 176.209747 0.002669 0.020723 -E 12525.000000 70.000000 7.685857 176.257202 0.002646 0.020548 -E 12550.000000 70.000000 7.682617 176.267395 0.002638 0.020494 -E 12575.000000 70.000000 7.681589 176.272003 0.002628 0.020414 -E 12600.000000 70.000000 7.683123 176.270309 0.002614 0.020306 -E 12625.000000 70.000000 7.672031 176.254196 0.002608 0.020282 -E 12650.000000 70.000000 7.664077 176.243637 0.002598 0.020228 -E 12675.000000 70.000000 7.663437 176.244873 0.002583 0.020107 -E 12700.000000 70.000000 7.664115 176.262314 0.002565 0.019968 -E 12725.000000 70.000000 7.663427 176.274277 0.002552 0.019871 -E 12750.000000 70.000000 7.658377 176.262756 0.002553 0.019889 -E 12775.000000 70.000000 7.654431 176.272430 0.002539 0.019785 -E 12800.000000 70.000000 7.650038 176.286697 0.002520 0.019651 -E 12825.000000 70.000000 7.641693 176.286774 0.002509 0.019584 -E 12850.000000 70.000000 7.636244 176.276779 0.002497 0.019506 -E 12875.000000 70.000000 7.632925 176.266891 0.002486 0.019421 -E 12900.000000 70.000000 7.634320 176.312042 0.002476 0.019347 -E 12925.000000 70.000000 7.631661 176.336029 0.002464 0.019251 -E 12950.000000 70.000000 7.625803 176.342743 0.002448 0.019140 -E 12975.000000 70.000000 7.623119 176.320633 0.002441 0.019092 -E 13000.000000 70.000000 7.621535 176.325134 0.002432 0.019029 -E 13025.000000 70.000000 7.621192 176.359543 0.002422 0.018950 -E 13050.000000 70.000000 7.617200 176.361801 0.002409 0.018860 -E 13075.000000 70.000000 7.613778 176.351791 0.002399 0.018787 -E 13100.000000 70.000000 7.611639 176.326416 0.002393 0.018742 -E 13125.000000 70.000000 7.610495 176.330688 0.002386 0.018694 -E 13150.000000 70.000000 7.608545 176.341568 0.002379 0.018644 -E 13175.000000 70.000000 7.604410 176.355515 0.002371 0.018588 -E 13200.000000 70.000000 7.605469 176.355850 0.002365 0.018535 -E 13225.000000 70.000000 7.604286 176.357025 0.002361 0.018507 -E 13250.000000 70.000000 7.591013 176.373703 0.002364 0.018557 -E 13275.000000 70.000000 7.587031 176.403366 0.002362 0.018551 -E 13300.000000 70.000000 7.586469 176.431168 0.002359 0.018531 -E 13325.000000 70.000000 7.583136 176.421921 0.002362 0.018562 -E 13350.000000 70.000000 7.581042 176.427261 0.002366 0.018595 -E 13375.000000 70.000000 7.579059 176.439438 0.002369 0.018628 -E 13400.000000 70.000000 7.571485 176.435959 0.002370 0.018654 -E 13425.000000 70.000000 7.570040 176.448456 0.002376 0.018699 -E 13450.000000 70.000000 7.572906 176.472046 0.002385 0.018761 -E 13475.000000 70.000000 7.564561 176.460526 0.002399 0.018891 -E 13500.000000 70.000000 7.562156 176.458862 0.002414 0.019019 -E 13525.000000 70.000000 7.565754 176.467178 0.002431 0.019146 -E 13550.000000 70.000000 7.558186 176.450485 0.002463 0.019412 -E 13575.000000 70.000000 7.554492 176.449326 0.002497 0.019686 -E 13600.000000 70.000000 7.556288 176.469498 0.002532 0.019962 -E 13625.000000 70.000000 7.550681 176.481018 0.002552 0.020135 -E 13650.000000 70.000000 7.546614 176.494598 0.002573 0.020310 -E 13675.000000 70.000000 7.546169 176.512817 0.002598 0.020505 -E 13700.000000 70.000000 7.543208 176.526382 0.002658 0.020984 -E 13725.000000 70.000000 7.540652 176.524902 0.002760 0.021797 -E 13750.000000 70.000000 7.539940 176.490616 0.002947 0.023275 -E 13775.000000 70.000000 7.534299 176.504501 0.003212 0.025382 -E 13800.000000 70.000000 7.529454 176.535294 0.003490 0.027596 -E 13825.000000 70.000000 7.532458 176.569000 0.003657 0.028904 -E 13850.000000 70.000000 7.527297 176.557526 0.003627 0.028687 -E 13875.000000 70.000000 7.524582 176.549332 0.003520 0.027855 -E 13900.000000 70.000000 7.536506 176.592941 0.003373 0.026645 -E 13925.000000 70.000000 7.529437 176.608292 0.003280 0.025935 -E 13950.000000 70.000000 7.517886 176.610550 0.003192 0.025276 -E 13975.000000 70.000000 7.515663 176.602295 0.003045 0.024113 -E 14000.000000 70.000000 7.511015 176.582764 0.002955 0.023416 -E 14025.000000 70.000000 7.507217 176.562317 0.002890 0.022910 -E 14050.000000 70.000000 7.513268 176.562836 0.002819 0.022329 -E 14075.000000 70.000000 7.508609 176.583038 0.002769 0.021951 -E 14100.000000 70.000000 7.500174 176.610352 0.002730 0.021664 -E 14125.000000 70.000000 7.506389 176.611588 0.002679 0.021237 -E 14150.000000 70.000000 7.505394 176.619125 0.002644 0.020967 -E 14175.000000 70.000000 7.500313 176.627182 0.002620 0.020789 -E 14200.000000 70.000000 7.500991 176.596207 0.002593 0.020568 -E 14225.000000 70.000000 7.495366 176.625153 0.002576 0.020447 -E 14250.000000 70.000000 7.485721 176.692307 0.002566 0.020392 -E 14275.000000 70.000000 7.488999 176.636917 0.002549 0.020249 -E 14300.000000 70.000000 7.486016 176.631378 0.002538 0.020166 -E 14325.000000 70.000000 7.478040 176.666504 0.002531 0.020131 -E 14350.000000 70.000000 7.481941 176.646149 0.002524 0.020064 -E 14375.000000 70.000000 7.479649 176.644485 0.002515 0.020005 -E 14400.000000 70.000000 7.471559 176.660431 0.002507 0.019954 -E 14425.000000 70.000000 7.470483 176.682785 0.002509 0.019972 -E 14450.000000 70.000000 7.468678 176.684006 0.002504 0.019939 -E 14475.000000 70.000000 7.466112 176.663254 0.002492 0.019851 -E 14500.000000 70.000000 7.466144 176.726318 0.002490 0.019834 -E 14525.000000 70.000000 7.464204 176.733261 0.002492 0.019850 -E 14550.000000 70.000000 7.459921 176.674973 0.002497 0.019903 -E 14575.000000 70.000000 7.462031 176.658798 0.002487 0.019820 -E 14600.000000 70.000000 7.461195 176.662643 0.002486 0.019814 -E 14625.000000 70.000000 7.456511 176.688614 0.002497 0.019907 -E 14650.000000 70.000000 7.457918 176.668533 0.002490 0.019847 -E 14675.000000 70.000000 7.455740 176.673508 0.002491 0.019863 -E 14700.000000 70.000000 7.448565 176.713913 0.002504 0.019985 -E 14725.000000 70.000000 7.447608 176.740784 0.002497 0.019927 -E 14750.000000 70.000000 7.444593 176.758545 0.002496 0.019930 -E 14775.000000 70.000000 7.438248 176.765793 0.002506 0.020029 -E 14800.000000 70.000000 7.441097 176.774445 0.002505 0.020010 -E 14825.000000 70.000000 7.442250 176.765610 0.002504 0.019999 -E 14850.000000 70.000000 7.440130 176.732758 0.002505 0.020012 -E 14875.000000 70.000000 7.434871 176.730759 0.002509 0.020056 -E 14900.000000 70.000000 7.431441 176.734314 0.002516 0.020117 -E 14925.000000 70.000000 7.430923 176.741989 0.002526 0.020198 -E 14950.000000 70.000000 7.426220 176.755280 0.002525 0.020200 -E 14975.000000 70.000000 7.421728 176.766785 0.002530 0.020256 -E 15000.000000 70.000000 7.417948 176.775284 0.002547 0.020399 -E 15025.000000 70.000000 7.422662 176.796173 0.002543 0.020353 -E 15050.000000 70.000000 7.422897 176.802719 0.002545 0.020372 -E 15075.000000 70.000000 7.415967 176.788086 0.002560 0.020506 -E 15100.000000 70.000000 7.415520 176.778702 0.002559 0.020497 -E 15125.000000 70.000000 7.412258 176.784027 0.002559 0.020511 -E 15150.000000 70.000000 7.404537 176.808609 0.002565 0.020573 -E 15175.000000 70.000000 7.405032 176.782928 0.002570 0.020613 -E 15200.000000 70.000000 7.403090 176.781952 0.002578 0.020680 -E 15225.000000 70.000000 7.397163 176.818069 0.002589 0.020784 -E 15250.000000 70.000000 7.400163 176.813980 0.002594 0.020815 -E 15275.000000 70.000000 7.400557 176.815262 0.002602 0.020883 -E 15300.000000 70.000000 7.396998 176.826309 0.002616 0.021001 -E 15325.000000 70.000000 7.397190 176.793655 0.002618 0.021017 -E 15350.000000 70.000000 7.396678 176.791031 0.002624 0.021067 -E 15375.000000 70.000000 7.395159 176.825745 0.002635 0.021160 -E 15400.000000 70.000000 7.393733 176.860641 0.002641 0.021209 -E 15425.000000 70.000000 7.391715 176.856491 0.002653 0.021307 -E 15450.000000 70.000000 7.389040 176.809631 0.002671 0.021461 -E 15475.000000 70.000000 7.388014 176.867157 0.002677 0.021514 -E 15500.000000 70.000000 7.384254 176.899918 0.002687 0.021598 -E 15525.000000 70.000000 7.377914 176.907028 0.002699 0.021713 -E 15550.000000 70.000000 7.382770 176.879959 0.002697 0.021685 -E 15575.000000 70.000000 7.380264 176.873276 0.002706 0.021761 -E 15600.000000 70.000000 7.371546 176.883621 0.002723 0.021925 -E 15625.000000 70.000000 7.371965 176.865768 0.002729 0.021974 -E 15650.000000 70.000000 7.371367 176.870026 0.002741 0.022067 -E 15675.000000 70.000000 7.370029 176.891083 0.002756 0.022189 -E 15700.000000 70.000000 7.369778 176.898315 0.002761 0.022229 -E 15725.000000 70.000000 7.366600 176.910629 0.002771 0.022321 -E 15750.000000 70.000000 7.362186 176.923096 0.002785 0.022447 -E 15775.000000 70.000000 7.364956 176.905228 0.002798 0.022539 -E 15800.000000 70.000000 7.360466 176.924530 0.002809 0.022643 -E 15825.000000 70.000000 7.353909 176.957230 0.002821 0.022756 -E 15850.000000 70.000000 7.362233 176.930679 0.002839 0.022882 -E 15875.000000 70.000000 7.361823 176.945328 0.002851 0.022974 -E 15900.000000 70.000000 7.357434 176.973526 0.002860 0.023062 -E 15925.000000 70.000000 7.355625 176.964783 0.002878 0.023210 -E 15950.000000 70.000000 7.354343 176.925491 0.002895 0.023352 -E 15975.000000 70.000000 7.354206 176.897400 0.002912 0.023487 -E 16000.000000 70.000000 7.357422 176.956970 0.002928 0.023607 -E 16025.000000 70.000000 7.348132 176.943604 0.002940 0.023734 -E 16050.000000 70.000000 7.339770 176.924194 0.002954 0.023874 -E 16075.000000 70.000000 7.346188 176.959137 0.002977 0.024038 -E 16100.000000 70.000000 7.345031 176.967087 0.002995 0.024185 -E 16125.000000 70.000000 7.341625 176.976135 0.003011 0.024325 -E 16150.000000 70.000000 7.337707 177.003525 0.003026 0.024458 -E 16175.000000 70.000000 7.328842 177.039093 0.003050 0.024676 -E 16200.000000 70.000000 7.326591 177.059418 0.003074 0.024876 -E 16225.000000 70.000000 7.337694 177.049805 0.003095 0.025013 -E 16250.000000 70.000000 7.333883 177.014725 0.003115 0.025183 -E 16275.000000 70.000000 7.329737 177.004547 0.003138 0.025382 -E 16300.000000 70.000000 7.327592 177.033600 0.003166 0.025617 -E 16325.000000 70.000000 7.324088 177.003830 0.003190 0.025824 -E 16350.000000 70.000000 7.324510 176.986649 0.003219 0.026057 -E 16375.000000 70.000000 7.329310 176.987350 0.003254 0.026322 -E 16400.000000 70.000000 7.322974 177.029602 0.003276 0.026521 -E 16425.000000 70.000000 7.321688 177.032928 0.003316 0.026851 -E 16450.000000 70.000000 7.324388 177.003906 0.003370 0.027282 -E 16475.000000 70.000000 7.320839 177.000153 0.003391 0.027462 -E 16500.000000 70.000000 7.322691 177.021255 0.003440 0.027846 -E 16525.000000 70.000000 7.327149 177.051437 0.003506 0.028368 -E 16550.000000 70.000000 7.324503 177.029541 0.003565 0.028855 -E 16575.000000 70.000000 7.319481 177.068283 0.003656 0.029610 -E 16600.000000 70.000000 7.313515 177.109726 0.003768 0.030541 -E 16625.000000 70.000000 7.309005 177.031097 0.003893 0.031567 -E 16650.000000 70.000000 7.318780 177.027328 0.004110 0.033287 -E 16675.000000 70.000000 7.327247 177.066498 0.004395 0.035560 -E 16700.000000 70.000000 7.313661 177.148056 0.004745 0.038451 -E 16725.000000 70.000000 7.303569 177.106842 0.005271 0.042769 -E 16750.000000 70.000000 7.299397 177.051437 0.005950 0.048303 -E 16775.000000 70.000000 7.308707 177.050476 0.006786 0.055027 -E 16800.000000 70.000000 7.301926 177.036774 0.007911 0.064206 -E 16825.000000 70.000000 7.291903 176.975784 0.009287 0.075467 -E 16850.000000 70.000000 7.281566 176.831619 0.010842 0.088219 -E 16875.000000 70.000000 7.298783 177.085953 0.012665 0.102825 -E 16900.000000 70.000000 7.305838 177.267471 0.014837 0.120344 -E 16925.000000 70.000000 7.297638 177.291687 0.017333 0.140733 -E 16950.000000 70.000000 7.332868 177.041245 0.020080 0.162308 -E 16975.000000 70.000000 7.297152 176.912338 0.023077 0.187383 -E 17000.000000 70.000000 7.212368 176.874298 0.026374 0.216504 -uR 1930.000000 50.000000 inf 1.000000 -uR 1940.000000 50.000000 inf 1.000000 -uR 1950.000000 50.000000 inf 1.000000 -uR 1960.000000 50.000000 inf 1.000000 -uR 1970.000000 50.000000 inf 1.000000 -uR 1980.000000 50.000000 inf 1.000000 -uR 1990.000000 50.000000 inf 1.000000 -uR 2000.000000 50.000000 inf 1.000000 -uR 2010.000000 50.000000 inf 1.000000 -uR 2020.000000 50.000000 inf 1.000000 -uR 2030.000000 50.000000 inf 1.000000 -uR 2040.000000 50.000000 inf 1.000000 -uR 2050.000000 50.000000 inf 1.000000 -uR 2060.000000 50.000000 inf 1.000000 -uR 2070.000000 50.000000 inf 1.000000 -uR 2080.000000 50.000000 inf 1.000000 -uR 2090.000000 50.000000 inf 1.000000 -uR 2100.000000 50.000000 inf 1.000000 -uR 2110.000000 50.000000 inf 1.000000 -uR 2120.000000 50.000000 inf 1.000000 -uR 2130.000000 50.000000 inf 1.000000 -uR 2140.000000 50.000000 inf 1.000000 -uR 2150.000000 50.000000 inf 1.000000 -uR 2160.000000 50.000000 inf 1.000000 -uR 2170.000000 50.000000 inf 1.000000 -uR 2180.000000 50.000000 inf 1.000000 -uR 2190.000000 50.000000 inf 1.000000 -uR 2200.000000 50.000000 inf 1.000000 -uR 2210.000000 50.000000 inf 1.000000 -uR 2220.000000 50.000000 inf 1.000000 -uR 2230.000000 50.000000 inf 1.000000 -uR 2240.000000 50.000000 inf 1.000000 -uR 2250.000000 50.000000 inf 1.000000 -uR 2260.000000 50.000000 inf 1.000000 -uR 2270.000000 50.000000 inf 1.000000 -uR 2280.000000 50.000000 inf 1.000000 -uR 2290.000000 50.000000 inf 1.000000 -uR 2300.000000 50.000000 inf 1.000000 -uR 2310.000000 50.000000 inf 1.000000 -uR 2320.000000 50.000000 inf 1.000000 -uR 2330.000000 50.000000 inf 1.000000 -uR 2340.000000 50.000000 inf 1.000000 -uR 2350.000000 50.000000 inf 1.000000 -uR 2360.000000 50.000000 inf 1.000000 -uR 2370.000000 50.000000 inf 1.000000 -uR 2380.000000 50.000000 inf 1.000000 -uR 2390.000000 50.000000 inf 1.000000 -uR 2400.000000 50.000000 inf 1.000000 -uR 2410.000000 50.000000 inf 1.000000 -uR 2420.000000 50.000000 inf 1.000000 -uR 2430.000000 50.000000 inf 1.000000 -uR 2440.000000 50.000000 inf 1.000000 -uR 2450.000000 50.000000 inf 1.000000 -uR 2460.000000 50.000000 inf 1.000000 -uR 2470.000000 50.000000 inf 1.000000 -uR 2480.000000 50.000000 inf 1.000000 -uR 2490.000000 50.000000 inf 1.000000 -uR 2500.000000 50.000000 inf 1.000000 -uR 2510.000000 50.000000 inf 1.000000 -uR 2520.000000 50.000000 inf 1.000000 -uR 2530.000000 50.000000 inf 1.000000 -uR 2540.000000 50.000000 inf 1.000000 -uR 2550.000000 50.000000 inf 1.000000 -uR 2560.000000 50.000000 inf 1.000000 -uR 2570.000000 50.000000 inf 1.000000 -uR 2580.000000 50.000000 inf 1.000000 -uR 2590.000000 50.000000 inf 1.000000 -uR 2600.000000 50.000000 inf 1.000000 -uR 2610.000000 50.000000 inf 1.000000 -uR 2620.000000 50.000000 inf 1.000000 -uR 2630.000000 50.000000 inf 1.000000 -uR 2640.000000 50.000000 inf 1.000000 -uR 2650.000000 50.000000 inf 1.000000 -uR 2660.000000 50.000000 inf 1.000000 -uR 2670.000000 50.000000 inf 1.000000 -uR 2680.000000 50.000000 inf 1.000000 -uR 2690.000000 50.000000 inf 1.000000 -uR 2700.000000 50.000000 inf 1.000000 -uR 2710.000000 50.000000 inf 1.000000 -uR 2720.000000 50.000000 inf 1.000000 -uR 2730.000000 50.000000 inf 1.000000 -uR 2740.000000 50.000000 inf 1.000000 -uR 2750.000000 50.000000 inf 1.000000 -uR 2760.000000 50.000000 inf 1.000000 -uR 2770.000000 50.000000 inf 1.000000 -uR 2780.000000 50.000000 inf 1.000000 -uR 2790.000000 50.000000 inf 1.000000 -uR 2800.000000 50.000000 inf 1.000000 -uR 2810.000000 50.000000 inf 1.000000 -uR 2820.000000 50.000000 inf 1.000000 -uR 2830.000000 50.000000 inf 1.000000 -uR 2840.000000 50.000000 inf 1.000000 -uR 2850.000000 50.000000 inf 1.000000 -uR 2860.000000 50.000000 inf 1.000000 -uR 2870.000000 50.000000 inf 1.000000 -uR 2880.000000 50.000000 inf 1.000000 -uR 2890.000000 50.000000 inf 1.000000 -uR 2900.000000 50.000000 inf 1.000000 -uR 2910.000000 50.000000 inf 1.000000 -uR 2920.000000 50.000000 inf 1.000000 -uR 2930.000000 50.000000 inf 1.000000 -uR 2940.000000 50.000000 inf 1.000000 -uR 2950.000000 50.000000 inf 1.000000 -uR 2960.000000 50.000000 inf 1.000000 -uR 2970.000000 50.000000 inf 1.000000 -uR 2980.000000 50.000000 inf 1.000000 -uR 2990.000000 50.000000 inf 1.000000 -uR 3000.000000 50.000000 inf 1.000000 -uR 3010.000000 50.000000 inf 1.000000 -uR 3020.000000 50.000000 inf 1.000000 -uR 3030.000000 50.000000 inf 1.000000 -uR 3040.000000 50.000000 inf 1.000000 -uR 3050.000000 50.000000 inf 1.000000 -uR 3060.000000 50.000000 inf 1.000000 -uR 3070.000000 50.000000 inf 1.000000 -uR 3080.000000 50.000000 inf 1.000000 -uR 3090.000000 50.000000 inf 1.000000 -uR 3100.000000 50.000000 inf 1.000000 -uR 3110.000000 50.000000 inf 1.000000 -uR 3120.000000 50.000000 inf 1.000000 -uR 3130.000000 50.000000 inf 1.000000 -uR 3140.000000 50.000000 inf 1.000000 -uR 3150.000000 50.000000 inf 1.000000 -uR 3160.000000 50.000000 inf 1.000000 -uR 3170.000000 50.000000 inf 1.000000 -uR 3180.000000 50.000000 inf 1.000000 -uR 3190.000000 50.000000 inf 1.000000 -uR 3200.000000 50.000000 inf 1.000000 -uR 3210.000000 50.000000 inf 1.000000 -uR 3220.000000 50.000000 inf 1.000000 -uR 3230.000000 50.000000 inf 1.000000 -uR 3240.000000 50.000000 inf 1.000000 -uR 3250.000000 50.000000 inf 1.000000 -uR 3260.000000 50.000000 inf 1.000000 -uR 3270.000000 50.000000 inf 1.000000 -uR 3280.000000 50.000000 inf 1.000000 -uR 3290.000000 50.000000 inf 1.000000 -uR 3300.000000 50.000000 inf 1.000000 -uR 3310.000000 50.000000 inf 1.000000 -uR 3320.000000 50.000000 inf 1.000000 -uR 3330.000000 50.000000 inf 1.000000 -uR 3340.000000 50.000000 inf 1.000000 -uR 3350.000000 50.000000 inf 1.000000 -uR 3360.000000 50.000000 inf 1.000000 -uR 3370.000000 50.000000 inf 1.000000 -uR 3380.000000 50.000000 inf 1.000000 -uR 3390.000000 50.000000 inf 1.000000 -uR 3400.000000 50.000000 inf 1.000000 -uR 3410.000000 50.000000 inf 1.000000 -uR 3420.000000 50.000000 inf 1.000000 -uR 3430.000000 50.000000 inf 1.000000 -uR 3440.000000 50.000000 inf 1.000000 -uR 3450.000000 50.000000 inf 1.000000 -uR 3460.000000 50.000000 inf 1.000000 -uR 3470.000000 50.000000 inf 1.000000 -uR 3480.000000 50.000000 inf 1.000000 -uR 3490.000000 50.000000 inf 1.000000 -uR 3500.000000 50.000000 inf 1.000000 -uR 3510.000000 50.000000 inf 1.000000 -uR 3520.000000 50.000000 inf 1.000000 -uR 3530.000000 50.000000 inf 1.000000 -uR 3540.000000 50.000000 inf 1.000000 -uR 3550.000000 50.000000 inf 1.000000 -uR 3560.000000 50.000000 inf 1.000000 -uR 3570.000000 50.000000 inf 1.000000 -uR 3580.000000 50.000000 inf 1.000000 -uR 3590.000000 50.000000 inf 1.000000 -uR 3600.000000 50.000000 inf 1.000000 -uR 3610.000000 50.000000 inf 1.000000 -uR 3620.000000 50.000000 inf 1.000000 -uR 3630.000000 50.000000 inf 1.000000 -uR 3640.000000 50.000000 inf 1.000000 -uR 3650.000000 50.000000 inf 1.000000 -uR 3660.000000 50.000000 inf 1.000000 -uR 3670.000000 50.000000 inf 1.000000 -uR 3680.000000 50.000000 inf 1.000000 -uR 3690.000000 50.000000 inf 1.000000 -uR 3700.000000 50.000000 inf 1.000000 -uR 3710.000000 50.000000 inf 1.000000 -uR 3720.000000 50.000000 inf 1.000000 -uR 3730.000000 50.000000 inf 1.000000 -uR 3740.000000 50.000000 inf 1.000000 -uR 3750.000000 50.000000 inf 1.000000 -uR 3760.000000 50.000000 inf 1.000000 -uR 3770.000000 50.000000 inf 1.000000 -uR 3780.000000 50.000000 inf 1.000000 -uR 3790.000000 50.000000 inf 1.000000 -uR 3800.000000 50.000000 inf 1.000000 -uR 3810.000000 50.000000 inf 1.000000 -uR 3820.000000 50.000000 inf 1.000000 -uR 3830.000000 50.000000 inf 1.000000 -uR 3840.000000 50.000000 inf 1.000000 -uR 3850.000000 50.000000 inf 1.000000 -uR 3860.000000 50.000000 inf 1.000000 -uR 3870.000000 50.000000 inf 1.000000 -uR 3880.000000 50.000000 inf 1.000000 -uR 3890.000000 50.000000 inf 1.000000 -uR 3900.000000 50.000000 inf 1.000000 -uR 3910.000000 50.000000 inf 1.000000 -uR 3920.000000 50.000000 inf 1.000000 -uR 3930.000000 50.000000 inf 1.000000 -uR 3940.000000 50.000000 inf 1.000000 -uR 3950.000000 50.000000 inf 1.000000 -uR 3960.000000 50.000000 inf 1.000000 -uR 3970.000000 50.000000 inf 1.000000 -uR 3980.000000 50.000000 inf 1.000000 -uR 3990.000000 50.000000 inf 1.000000 -uR 4000.000000 50.000000 inf 1.000000 -uR 4010.000000 50.000000 inf 1.000000 -uR 4020.000000 50.000000 inf 1.000000 -uR 4030.000000 50.000000 inf 1.000000 -uR 4040.000000 50.000000 inf 1.000000 -uR 4050.000000 50.000000 inf 1.000000 -uR 4060.000000 50.000000 inf 1.000000 -uR 4070.000000 50.000000 inf 1.000000 -uR 4080.000000 50.000000 inf 1.000000 -uR 4090.000000 50.000000 inf 1.000000 -uR 4100.000000 50.000000 inf 1.000000 -uR 4110.000000 50.000000 inf 1.000000 -uR 4120.000000 50.000000 inf 1.000000 -uR 4130.000000 50.000000 inf 1.000000 -uR 4140.000000 50.000000 inf 1.000000 -uR 4150.000000 50.000000 inf 1.000000 -uR 4160.000000 50.000000 inf 1.000000 -uR 4170.000000 50.000000 inf 1.000000 -uR 4180.000000 50.000000 inf 1.000000 -uR 4190.000000 50.000000 inf 1.000000 -uR 4200.000000 50.000000 inf 1.000000 -uR 4210.000000 50.000000 inf 1.000000 -uR 4220.000000 50.000000 inf 1.000000 -uR 4230.000000 50.000000 inf 1.000000 -uR 4240.000000 50.000000 inf 1.000000 -uR 4250.000000 50.000000 inf 1.000000 -uR 4260.000000 50.000000 inf 1.000000 -uR 4270.000000 50.000000 inf 1.000000 -uR 4280.000000 50.000000 inf 1.000000 -uR 4290.000000 50.000000 inf 1.000000 -uR 4300.000000 50.000000 inf 1.000000 -uR 4310.000000 50.000000 inf 1.000000 -uR 4320.000000 50.000000 inf 1.000000 -uR 4330.000000 50.000000 inf 1.000000 -uR 4340.000000 50.000000 inf 1.000000 -uR 4350.000000 50.000000 inf 1.000000 -uR 4360.000000 50.000000 inf 1.000000 -uR 4370.000000 50.000000 inf 1.000000 -uR 4380.000000 50.000000 inf 1.000000 -uR 4390.000000 50.000000 inf 1.000000 -uR 4400.000000 50.000000 inf 1.000000 -uR 4410.000000 50.000000 inf 1.000000 -uR 4420.000000 50.000000 inf 1.000000 -uR 4430.000000 50.000000 inf 1.000000 -uR 4440.000000 50.000000 inf 1.000000 -uR 4450.000000 50.000000 inf 1.000000 -uR 4460.000000 50.000000 inf 1.000000 -uR 4470.000000 50.000000 inf 1.000000 -uR 4480.000000 50.000000 inf 1.000000 -uR 4490.000000 50.000000 inf 1.000000 -uR 4500.000000 50.000000 inf 1.000000 -uR 4510.000000 50.000000 inf 1.000000 -uR 4520.000000 50.000000 inf 1.000000 -uR 4530.000000 50.000000 inf 1.000000 -uR 4540.000000 50.000000 inf 1.000000 -uR 4550.000000 50.000000 inf 1.000000 -uR 4560.000000 50.000000 inf 1.000000 -uR 4570.000000 50.000000 inf 1.000000 -uR 4580.000000 50.000000 inf 1.000000 -uR 4590.000000 50.000000 inf 1.000000 -uR 4600.000000 50.000000 inf 1.000000 -uR 4610.000000 50.000000 inf 1.000000 -uR 4620.000000 50.000000 inf 1.000000 -uR 4630.000000 50.000000 inf 1.000000 -uR 4640.000000 50.000000 inf 1.000000 -uR 4650.000000 50.000000 inf 1.000000 -uR 4660.000000 50.000000 inf 1.000000 -uR 4670.000000 50.000000 inf 1.000000 -uR 4680.000000 50.000000 inf 1.000000 -uR 4690.000000 50.000000 inf 1.000000 -uR 4700.000000 50.000000 inf 1.000000 -uR 4710.000000 50.000000 inf 1.000000 -uR 4720.000000 50.000000 inf 1.000000 -uR 4730.000000 50.000000 inf 1.000000 -uR 4740.000000 50.000000 inf 1.000000 -uR 4750.000000 50.000000 inf 1.000000 -uR 4760.000000 50.000000 inf 1.000000 -uR 4770.000000 50.000000 inf 1.000000 -uR 4780.000000 50.000000 inf 1.000000 -uR 4790.000000 50.000000 inf 1.000000 -uR 4800.000000 50.000000 inf 1.000000 -uR 4810.000000 50.000000 inf 1.000000 -uR 4820.000000 50.000000 inf 1.000000 -uR 4830.000000 50.000000 inf 1.000000 -uR 4840.000000 50.000000 inf 1.000000 -uR 4850.000000 50.000000 inf 1.000000 -uR 4860.000000 50.000000 inf 1.000000 -uR 4870.000000 50.000000 inf 1.000000 -uR 4880.000000 50.000000 inf 1.000000 -uR 4890.000000 50.000000 inf 1.000000 -uR 4900.000000 50.000000 inf 1.000000 -uR 4910.000000 50.000000 inf 1.000000 -uR 4920.000000 50.000000 inf 1.000000 -uR 4930.000000 50.000000 inf 1.000000 -uR 4940.000000 50.000000 inf 1.000000 -uR 4950.000000 50.000000 inf 1.000000 -uR 4960.000000 50.000000 inf 1.000000 -uR 4970.000000 50.000000 inf 1.000000 -uR 4980.000000 50.000000 inf 1.000000 -uR 4990.000000 50.000000 inf 1.000000 -uR 5000.000000 50.000000 inf 1.000000 -uR 5010.000000 50.000000 inf 1.000000 -uR 5020.000000 50.000000 inf 1.000000 -uR 5030.000000 50.000000 inf 1.000000 -uR 5040.000000 50.000000 inf 1.000000 -uR 5050.000000 50.000000 inf 1.000000 -uR 5060.000000 50.000000 inf 1.000000 -uR 5070.000000 50.000000 inf 1.000000 -uR 5080.000000 50.000000 inf 1.000000 -uR 5090.000000 50.000000 inf 1.000000 -uR 5100.000000 50.000000 inf 1.000000 -uR 5110.000000 50.000000 inf 1.000000 -uR 5120.000000 50.000000 inf 1.000000 -uR 5130.000000 50.000000 inf 1.000000 -uR 5140.000000 50.000000 inf 1.000000 -uR 5150.000000 50.000000 inf 1.000000 -uR 5160.000000 50.000000 inf 1.000000 -uR 5170.000000 50.000000 inf 1.000000 -uR 5180.000000 50.000000 inf 1.000000 -uR 5190.000000 50.000000 inf 1.000000 -uR 5200.000000 50.000000 inf 1.000000 -uR 5210.000000 50.000000 inf 1.000000 -uR 5220.000000 50.000000 inf 1.000000 -uR 5230.000000 50.000000 inf 1.000000 -uR 5240.000000 50.000000 inf 1.000000 -uR 5250.000000 50.000000 inf 1.000000 -uR 5260.000000 50.000000 inf 1.000000 -uR 5270.000000 50.000000 inf 1.000000 -uR 5280.000000 50.000000 inf 1.000000 -uR 5290.000000 50.000000 inf 1.000000 -uR 5300.000000 50.000000 inf 1.000000 -uR 5310.000000 50.000000 inf 1.000000 -uR 5320.000000 50.000000 inf 1.000000 -uR 5330.000000 50.000000 inf 1.000000 -uR 5340.000000 50.000000 inf 1.000000 -uR 5350.000000 50.000000 inf 1.000000 -uR 5360.000000 50.000000 inf 1.000000 -uR 5370.000000 50.000000 inf 1.000000 -uR 5380.000000 50.000000 inf 1.000000 -uR 5390.000000 50.000000 inf 1.000000 -uR 5400.000000 50.000000 inf 1.000000 -uR 5410.000000 50.000000 inf 1.000000 -uR 5420.000000 50.000000 inf 1.000000 -uR 5430.000000 50.000000 inf 1.000000 -uR 5440.000000 50.000000 inf 1.000000 -uR 5450.000000 50.000000 inf 1.000000 -uR 5460.000000 50.000000 inf 1.000000 -uR 5470.000000 50.000000 inf 1.000000 -uR 5480.000000 50.000000 inf 1.000000 -uR 5490.000000 50.000000 inf 1.000000 -uR 5500.000000 50.000000 inf 1.000000 -uR 5510.000000 50.000000 inf 1.000000 -uR 5520.000000 50.000000 inf 1.000000 -uR 5530.000000 50.000000 inf 1.000000 -uR 5540.000000 50.000000 inf 1.000000 -uR 5550.000000 50.000000 inf 1.000000 -uR 5560.000000 50.000000 inf 1.000000 -uR 5570.000000 50.000000 inf 1.000000 -uR 5580.000000 50.000000 inf 1.000000 -uR 5590.000000 50.000000 inf 1.000000 -uR 5600.000000 50.000000 inf 1.000000 -uR 5610.000000 50.000000 inf 1.000000 -uR 5620.000000 50.000000 inf 1.000000 -uR 5630.000000 50.000000 inf 1.000000 -uR 5640.000000 50.000000 inf 1.000000 -uR 5650.000000 50.000000 inf 1.000000 -uR 5660.000000 50.000000 inf 1.000000 -uR 5670.000000 50.000000 inf 1.000000 -uR 5680.000000 50.000000 inf 1.000000 -uR 5690.000000 50.000000 inf 1.000000 -uR 5700.000000 50.000000 inf 1.000000 -uR 5710.000000 50.000000 inf 1.000000 -uR 5720.000000 50.000000 inf 1.000000 -uR 5730.000000 50.000000 inf 1.000000 -uR 5740.000000 50.000000 inf 1.000000 -uR 5750.000000 50.000000 inf 1.000000 -uR 5760.000000 50.000000 inf 1.000000 -uR 5770.000000 50.000000 inf 1.000000 -uR 5780.000000 50.000000 inf 1.000000 -uR 5790.000000 50.000000 inf 1.000000 -uR 5800.000000 50.000000 inf 1.000000 -uR 5810.000000 50.000000 inf 1.000000 -uR 5820.000000 50.000000 inf 1.000000 -uR 5830.000000 50.000000 inf 1.000000 -uR 5840.000000 50.000000 inf 1.000000 -uR 5850.000000 50.000000 inf 1.000000 -uR 5860.000000 50.000000 inf 1.000000 -uR 5870.000000 50.000000 inf 1.000000 -uR 5880.000000 50.000000 inf 1.000000 -uR 5890.000000 50.000000 inf 1.000000 -uR 5900.000000 50.000000 inf 1.000000 -uR 5910.000000 50.000000 inf 1.000000 -uR 5920.000000 50.000000 inf 1.000000 -uR 5930.000000 50.000000 inf 1.000000 -uR 5940.000000 50.000000 inf 1.000000 -uR 5950.000000 50.000000 inf 1.000000 -uR 5960.000000 50.000000 inf 1.000000 -uR 5970.000000 50.000000 inf 1.000000 -uR 5980.000000 50.000000 inf 1.000000 -uR 5990.000000 50.000000 inf 1.000000 -uR 6000.000000 50.000000 inf 1.000000 -uR 6010.000000 50.000000 inf 1.000000 -uR 6020.000000 50.000000 inf 1.000000 -uR 6030.000000 50.000000 inf 1.000000 -uR 6040.000000 50.000000 inf 1.000000 -uR 6050.000000 50.000000 inf 1.000000 -uR 6060.000000 50.000000 inf 1.000000 -uR 6070.000000 50.000000 inf 1.000000 -uR 6080.000000 50.000000 inf 1.000000 -uR 6090.000000 50.000000 inf 1.000000 -uR 6100.000000 50.000000 inf 1.000000 -uR 6110.000000 50.000000 inf 1.000000 -uR 6120.000000 50.000000 inf 1.000000 -uR 6130.000000 50.000000 inf 1.000000 -uR 6140.000000 50.000000 inf 1.000000 -uR 6150.000000 50.000000 inf 1.000000 -uR 6160.000000 50.000000 inf 1.000000 -uR 6170.000000 50.000000 inf 1.000000 -uR 6180.000000 50.000000 inf 1.000000 -uR 6190.000000 50.000000 inf 1.000000 -uR 6200.000000 50.000000 inf 1.000000 -uR 6210.000000 50.000000 inf 1.000000 -uR 6220.000000 50.000000 inf 1.000000 -uR 6230.000000 50.000000 inf 1.000000 -uR 6240.000000 50.000000 inf 1.000000 -uR 6250.000000 50.000000 inf 1.000000 -uR 6260.000000 50.000000 inf 1.000000 -uR 6270.000000 50.000000 inf 1.000000 -uR 6280.000000 50.000000 inf 1.000000 -uR 6290.000000 50.000000 inf 1.000000 -uR 6300.000000 50.000000 inf 1.000000 -uR 6310.000000 50.000000 inf 1.000000 -uR 6320.000000 50.000000 inf 1.000000 -uR 6330.000000 50.000000 inf 1.000000 -uR 6340.000000 50.000000 inf 1.000000 -uR 6350.000000 50.000000 inf 1.000000 -uR 6360.000000 50.000000 inf 1.000000 -uR 6370.000000 50.000000 inf 1.000000 -uR 6380.000000 50.000000 inf 1.000000 -uR 6390.000000 50.000000 inf 1.000000 -uR 6400.000000 50.000000 inf 1.000000 -uR 6410.000000 50.000000 inf 1.000000 -uR 6420.000000 50.000000 inf 1.000000 -uR 6430.000000 50.000000 inf 1.000000 -uR 6440.000000 50.000000 inf 1.000000 -uR 6450.000000 50.000000 inf 1.000000 -uR 6460.000000 50.000000 inf 1.000000 -uR 6470.000000 50.000000 inf 1.000000 -uR 6480.000000 50.000000 inf 1.000000 -uR 6490.000000 50.000000 inf 1.000000 -uR 6500.000000 50.000000 inf 1.000000 -uR 6510.000000 50.000000 inf 1.000000 -uR 6520.000000 50.000000 inf 1.000000 -uR 6530.000000 50.000000 inf 1.000000 -uR 6540.000000 50.000000 inf 1.000000 -uR 6550.000000 50.000000 inf 1.000000 -uR 6560.000000 50.000000 inf 1.000000 -uR 6570.000000 50.000000 inf 1.000000 -uR 6580.000000 50.000000 inf 1.000000 -uR 6590.000000 50.000000 inf 1.000000 -uR 6600.000000 50.000000 inf 1.000000 -uR 6610.000000 50.000000 inf 1.000000 -uR 6620.000000 50.000000 inf 1.000000 -uR 6630.000000 50.000000 inf 1.000000 -uR 6640.000000 50.000000 inf 1.000000 -uR 6650.000000 50.000000 inf 1.000000 -uR 6660.000000 50.000000 inf 1.000000 -uR 6670.000000 50.000000 inf 1.000000 -uR 6680.000000 50.000000 inf 1.000000 -uR 6690.000000 50.000000 inf 1.000000 -uR 6700.000000 50.000000 inf 1.000000 -uR 6710.000000 50.000000 inf 1.000000 -uR 6720.000000 50.000000 inf 1.000000 -uR 6730.000000 50.000000 inf 1.000000 -uR 6740.000000 50.000000 inf 1.000000 -uR 6750.000000 50.000000 inf 1.000000 -uR 6760.000000 50.000000 inf 1.000000 -uR 6770.000000 50.000000 inf 1.000000 -uR 6780.000000 50.000000 inf 1.000000 -uR 6790.000000 50.000000 inf 1.000000 -uR 6800.000000 50.000000 inf 1.000000 -uR 6810.000000 50.000000 inf 1.000000 -uR 6820.000000 50.000000 inf 1.000000 -uR 6830.000000 50.000000 inf 1.000000 -uR 6840.000000 50.000000 inf 1.000000 -uR 6850.000000 50.000000 inf 1.000000 -uR 6860.000000 50.000000 inf 1.000000 -uR 6870.000000 50.000000 inf 1.000000 -uR 6880.000000 50.000000 inf 1.000000 -uR 6890.000000 50.000000 inf 1.000000 -uR 6900.000000 50.000000 inf 1.000000 -uR 6910.000000 50.000000 inf 1.000000 -uR 6920.000000 50.000000 inf 1.000000 -uR 6930.000000 50.000000 inf 1.000000 -uR 6940.000000 50.000000 inf 1.000000 -uR 6950.000000 50.000000 inf 1.000000 -uR 6960.000000 50.000000 inf 1.000000 -uR 6970.000000 50.000000 inf 1.000000 -uR 6980.000000 50.000000 inf 1.000000 -uR 6990.000000 50.000000 inf 1.000000 -uR 7000.000000 50.000000 inf 1.000000 -uR 7010.000000 50.000000 inf 1.000000 -uR 7020.000000 50.000000 inf 1.000000 -uR 7030.000000 50.000000 inf 1.000000 -uR 7040.000000 50.000000 inf 1.000000 -uR 7050.000000 50.000000 inf 1.000000 -uR 7060.000000 50.000000 inf 1.000000 -uR 7070.000000 50.000000 inf 1.000000 -uR 7080.000000 50.000000 inf 1.000000 -uR 7090.000000 50.000000 inf 1.000000 -uR 7100.000000 50.000000 inf 1.000000 -uR 7110.000000 50.000000 inf 1.000000 -uR 7120.000000 50.000000 inf 1.000000 -uR 7130.000000 50.000000 inf 1.000000 -uR 7140.000000 50.000000 inf 1.000000 -uR 7150.000000 50.000000 inf 1.000000 -uR 7160.000000 50.000000 inf 1.000000 -uR 7170.000000 50.000000 inf 1.000000 -uR 7180.000000 50.000000 inf 1.000000 -uR 7190.000000 50.000000 inf 1.000000 -uR 7200.000000 50.000000 inf 1.000000 -uR 7210.000000 50.000000 inf 1.000000 -uR 7220.000000 50.000000 inf 1.000000 -uR 7230.000000 50.000000 inf 1.000000 -uR 7240.000000 50.000000 inf 1.000000 -uR 7250.000000 50.000000 inf 1.000000 -uR 7260.000000 50.000000 inf 1.000000 -uR 7270.000000 50.000000 inf 1.000000 -uR 7280.000000 50.000000 inf 1.000000 -uR 7290.000000 50.000000 inf 1.000000 -uR 7300.000000 50.000000 inf 1.000000 -uR 7310.000000 50.000000 inf 1.000000 -uR 7320.000000 50.000000 inf 1.000000 -uR 7330.000000 50.000000 inf 1.000000 -uR 7340.000000 50.000000 inf 1.000000 -uR 7350.000000 50.000000 inf 1.000000 -uR 7360.000000 50.000000 inf 1.000000 -uR 7370.000000 50.000000 inf 1.000000 -uR 7380.000000 50.000000 inf 1.000000 -uR 7390.000000 50.000000 inf 1.000000 -uR 7400.000000 50.000000 inf 1.000000 -uR 7410.000000 50.000000 inf 1.000000 -uR 7420.000000 50.000000 inf 1.000000 -uR 7430.000000 50.000000 inf 1.000000 -uR 7440.000000 50.000000 inf 1.000000 -uR 7450.000000 50.000000 inf 1.000000 -uR 7460.000000 50.000000 inf 1.000000 -uR 7470.000000 50.000000 inf 1.000000 -uR 7480.000000 50.000000 inf 1.000000 -uR 7490.000000 50.000000 inf 1.000000 -uR 7500.000000 50.000000 inf 1.000000 -uR 7510.000000 50.000000 inf 1.000000 -uR 7520.000000 50.000000 inf 1.000000 -uR 7530.000000 50.000000 inf 1.000000 -uR 7540.000000 50.000000 inf 1.000000 -uR 7550.000000 50.000000 inf 1.000000 -uR 7560.000000 50.000000 inf 1.000000 -uR 7570.000000 50.000000 inf 1.000000 -uR 7580.000000 50.000000 inf 1.000000 -uR 7590.000000 50.000000 inf 1.000000 -uR 7600.000000 50.000000 inf 1.000000 -uR 7610.000000 50.000000 inf 1.000000 -uR 7620.000000 50.000000 inf 1.000000 -uR 7630.000000 50.000000 inf 1.000000 -uR 7640.000000 50.000000 inf 1.000000 -uR 7650.000000 50.000000 inf 1.000000 -uR 7660.000000 50.000000 inf 1.000000 -uR 7670.000000 50.000000 inf 1.000000 -uR 7680.000000 50.000000 inf 1.000000 -uR 7690.000000 50.000000 inf 1.000000 -uR 7700.000000 50.000000 inf 1.000000 -uR 7710.000000 50.000000 inf 1.000000 -uR 7720.000000 50.000000 inf 1.000000 -uR 7730.000000 50.000000 inf 1.000000 -uR 7740.000000 50.000000 inf 1.000000 -uR 7750.000000 50.000000 inf 1.000000 -uR 7760.000000 50.000000 inf 1.000000 -uR 7770.000000 50.000000 inf 1.000000 -uR 7780.000000 50.000000 inf 1.000000 -uR 7790.000000 50.000000 inf 1.000000 -uR 7800.000000 50.000000 inf 1.000000 -uR 7810.000000 50.000000 inf 1.000000 -uR 7820.000000 50.000000 inf 1.000000 -uR 7830.000000 50.000000 inf 1.000000 -uR 7840.000000 50.000000 inf 1.000000 -uR 7850.000000 50.000000 inf 1.000000 -uR 7860.000000 50.000000 inf 1.000000 -uR 7870.000000 50.000000 inf 1.000000 -uR 7880.000000 50.000000 inf 1.000000 -uR 7890.000000 50.000000 inf 1.000000 -uR 7900.000000 50.000000 inf 1.000000 -uR 7910.000000 50.000000 inf 1.000000 -uR 7920.000000 50.000000 inf 1.000000 -uR 7930.000000 50.000000 inf 1.000000 -uR 7940.000000 50.000000 inf 1.000000 -uR 7950.000000 50.000000 inf 1.000000 -uR 7960.000000 50.000000 inf 1.000000 -uR 7970.000000 50.000000 inf 1.000000 -uR 7980.000000 50.000000 inf 1.000000 -uR 7990.000000 50.000000 inf 1.000000 -uR 8000.000000 50.000000 inf 1.000000 -uR 8010.000000 50.000000 inf 1.000000 -uR 8020.000000 50.000000 inf 1.000000 -uR 8030.000000 50.000000 inf 1.000000 -uR 8040.000000 50.000000 inf 1.000000 -uR 8050.000000 50.000000 inf 1.000000 -uR 8060.000000 50.000000 inf 1.000000 -uR 8070.000000 50.000000 inf 1.000000 -uR 8080.000000 50.000000 inf 1.000000 -uR 8090.000000 50.000000 inf 1.000000 -uR 8100.000000 50.000000 inf 1.000000 -uR 8110.000000 50.000000 inf 1.000000 -uR 8120.000000 50.000000 inf 1.000000 -uR 8130.000000 50.000000 inf 1.000000 -uR 8140.000000 50.000000 inf 1.000000 -uR 8150.000000 50.000000 inf 1.000000 -uR 8160.000000 50.000000 inf 1.000000 -uR 8170.000000 50.000000 inf 1.000000 -uR 8180.000000 50.000000 inf 1.000000 -uR 8190.000000 50.000000 inf 1.000000 -uR 8200.000000 50.000000 inf 1.000000 -uR 8210.000000 50.000000 inf 1.000000 -uR 8220.000000 50.000000 inf 1.000000 -uR 8230.000000 50.000000 inf 1.000000 -uR 8240.000000 50.000000 inf 1.000000 -uR 8250.000000 50.000000 inf 1.000000 -uR 8260.000000 50.000000 inf 1.000000 -uR 8270.000000 50.000000 inf 1.000000 -uR 8280.000000 50.000000 inf 1.000000 -uR 8290.000000 50.000000 inf 1.000000 -uR 8300.000000 50.000000 inf 1.000000 -uR 8310.000000 50.000000 inf 1.000000 -uR 8320.000000 50.000000 inf 1.000000 -uR 8330.000000 50.000000 inf 1.000000 -uR 8340.000000 50.000000 inf 1.000000 -uR 8350.000000 50.000000 inf 1.000000 -uR 8360.000000 50.000000 inf 1.000000 -uR 8370.000000 50.000000 inf 1.000000 -uR 8380.000000 50.000000 inf 1.000000 -uR 8390.000000 50.000000 inf 1.000000 -uR 8400.000000 50.000000 inf 1.000000 -uR 8410.000000 50.000000 inf 1.000000 -uR 8420.000000 50.000000 inf 1.000000 -uR 8430.000000 50.000000 inf 1.000000 -uR 8440.000000 50.000000 inf 1.000000 -uR 8450.000000 50.000000 inf 1.000000 -uR 8460.000000 50.000000 inf 1.000000 -uR 8470.000000 50.000000 inf 1.000000 -uR 8480.000000 50.000000 inf 1.000000 -uR 8490.000000 50.000000 inf 1.000000 -uR 8500.000000 50.000000 inf 1.000000 -uR 8510.000000 50.000000 inf 1.000000 -uR 8520.000000 50.000000 inf 1.000000 -uR 8530.000000 50.000000 inf 1.000000 -uR 8540.000000 50.000000 inf 1.000000 -uR 8550.000000 50.000000 inf 1.000000 -uR 8560.000000 50.000000 inf 1.000000 -uR 8570.000000 50.000000 inf 1.000000 -uR 8580.000000 50.000000 inf 1.000000 -uR 8590.000000 50.000000 inf 1.000000 -uR 8600.000000 50.000000 inf 1.000000 -uR 8610.000000 50.000000 inf 1.000000 -uR 8620.000000 50.000000 inf 1.000000 -uR 8630.000000 50.000000 inf 1.000000 -uR 8640.000000 50.000000 inf 1.000000 -uR 8650.000000 50.000000 inf 1.000000 -uR 8660.000000 50.000000 inf 1.000000 -uR 8670.000000 50.000000 inf 1.000000 -uR 8680.000000 50.000000 inf 1.000000 -uR 8690.000000 50.000000 inf 1.000000 -uR 8700.000000 50.000000 inf 1.000000 -uR 8710.000000 50.000000 inf 1.000000 -uR 8720.000000 50.000000 inf 1.000000 -uR 8730.000000 50.000000 inf 1.000000 -uR 8740.000000 50.000000 inf 1.000000 -uR 8750.000000 50.000000 inf 1.000000 -uR 8760.000000 50.000000 inf 1.000000 -uR 8770.000000 50.000000 inf 1.000000 -uR 8780.000000 50.000000 inf 1.000000 -uR 8790.000000 50.000000 inf 1.000000 -uR 8800.000000 50.000000 inf 1.000000 -uR 8810.000000 50.000000 inf 1.000000 -uR 8820.000000 50.000000 inf 1.000000 -uR 8830.000000 50.000000 inf 1.000000 -uR 8840.000000 50.000000 inf 1.000000 -uR 8850.000000 50.000000 inf 1.000000 -uR 8860.000000 50.000000 inf 1.000000 -uR 8870.000000 50.000000 inf 1.000000 -uR 8880.000000 50.000000 inf 1.000000 -uR 8890.000000 50.000000 inf 1.000000 -uR 8900.000000 50.000000 inf 1.000000 -uR 8910.000000 50.000000 inf 1.000000 -uR 8920.000000 50.000000 inf 1.000000 -uR 8930.000000 50.000000 inf 1.000000 -uR 8940.000000 50.000000 inf 1.000000 -uR 8950.000000 50.000000 inf 1.000000 -uR 8960.000000 50.000000 inf 1.000000 -uR 8970.000000 50.000000 inf 1.000000 -uR 8980.000000 50.000000 inf 1.000000 -uR 8990.000000 50.000000 inf 1.000000 -uR 9000.000000 50.000000 inf 1.000000 -uR 9010.000000 50.000000 inf 1.000000 -uR 9020.000000 50.000000 inf 1.000000 -uR 9030.000000 50.000000 inf 1.000000 -uR 9040.000000 50.000000 inf 1.000000 -uR 9050.000000 50.000000 inf 1.000000 -uR 9060.000000 50.000000 inf 1.000000 -uR 9070.000000 50.000000 inf 1.000000 -uR 9080.000000 50.000000 inf 1.000000 -uR 9090.000000 50.000000 inf 1.000000 -uR 9100.000000 50.000000 inf 1.000000 -uR 9110.000000 50.000000 inf 1.000000 -uR 9120.000000 50.000000 inf 1.000000 -uR 9130.000000 50.000000 inf 1.000000 -uR 9140.000000 50.000000 inf 1.000000 -uR 9150.000000 50.000000 inf 1.000000 -uR 9160.000000 50.000000 inf 1.000000 -uR 9170.000000 50.000000 inf 1.000000 -uR 9180.000000 50.000000 inf 1.000000 -uR 9190.000000 50.000000 inf 1.000000 -uR 9200.000000 50.000000 inf 1.000000 -uR 9210.000000 50.000000 inf 1.000000 -uR 9220.000000 50.000000 inf 1.000000 -uR 9230.000000 50.000000 inf 1.000000 -uR 9240.000000 50.000000 inf 1.000000 -uR 9250.000000 50.000000 inf 1.000000 -uR 9260.000000 50.000000 inf 1.000000 -uR 9270.000000 50.000000 inf 1.000000 -uR 9280.000000 50.000000 inf 1.000000 -uR 9290.000000 50.000000 inf 1.000000 -uR 9300.000000 50.000000 inf 1.000000 -uR 9310.000000 50.000000 inf 1.000000 -uR 9320.000000 50.000000 inf 1.000000 -uR 9330.000000 50.000000 inf 1.000000 -uR 9340.000000 50.000000 inf 1.000000 -uR 9350.000000 50.000000 inf 1.000000 -uR 9360.000000 50.000000 inf 1.000000 -uR 9370.000000 50.000000 inf 1.000000 -uR 9380.000000 50.000000 inf 1.000000 -uR 9390.000000 50.000000 inf 1.000000 -uR 9400.000000 50.000000 inf 1.000000 -uR 9410.000000 50.000000 inf 1.000000 -uR 9420.000000 50.000000 inf 1.000000 -uR 9430.000000 50.000000 inf 1.000000 -uR 9440.000000 50.000000 inf 1.000000 -uR 9450.000000 50.000000 inf 1.000000 -uR 9460.000000 50.000000 inf 1.000000 -uR 9470.000000 50.000000 inf 1.000000 -uR 9480.000000 50.000000 inf 1.000000 -uR 9490.000000 50.000000 inf 1.000000 -uR 9500.000000 50.000000 inf 1.000000 -uR 9510.000000 50.000000 inf 1.000000 -uR 9520.000000 50.000000 inf 1.000000 -uR 9530.000000 50.000000 inf 1.000000 -uR 9540.000000 50.000000 inf 1.000000 -uR 9550.000000 50.000000 inf 1.000000 -uR 9560.000000 50.000000 inf 1.000000 -uR 9570.000000 50.000000 inf 1.000000 -uR 9580.000000 50.000000 inf 1.000000 -uR 9590.000000 50.000000 inf 1.000000 -uR 9600.000000 50.000000 inf 1.000000 -uR 9610.000000 50.000000 inf 1.000000 -uR 9620.000000 50.000000 inf 1.000000 -uR 9630.000000 50.000000 inf 1.000000 -uR 9640.000000 50.000000 inf 1.000000 -uR 9650.000000 50.000000 inf 1.000000 -uR 9660.000000 50.000000 inf 1.000000 -uR 9670.000000 50.000000 inf 1.000000 -uR 9680.000000 50.000000 inf 1.000000 -uR 9690.000000 50.000000 inf 1.000000 -uR 9700.000000 50.000000 inf 1.000000 -uR 9710.000000 50.000000 inf 1.000000 -uR 9720.000000 50.000000 inf 1.000000 -uR 9730.000000 50.000000 inf 1.000000 -uR 9740.000000 50.000000 inf 1.000000 -uR 9750.000000 50.000000 inf 1.000000 -uR 9760.000000 50.000000 inf 1.000000 -uR 9770.000000 50.000000 inf 1.000000 -uR 9780.000000 50.000000 inf 1.000000 -uR 9790.000000 50.000000 inf 1.000000 -uR 9800.000000 50.000000 inf 1.000000 -uR 9810.000000 50.000000 inf 1.000000 -uR 9820.000000 50.000000 inf 1.000000 -uR 9830.000000 50.000000 inf 1.000000 -uR 9840.000000 50.000000 inf 1.000000 -uR 9850.000000 50.000000 inf 1.000000 -uR 9860.000000 50.000000 inf 1.000000 -uR 9870.000000 50.000000 inf 1.000000 -uR 9880.000000 50.000000 inf 1.000000 -uR 9890.000000 50.000000 inf 1.000000 -uR 9900.000000 50.000000 inf 1.000000 -uR 9910.000000 50.000000 inf 1.000000 -uR 9920.000000 50.000000 inf 1.000000 -uR 9930.000000 50.000000 inf 1.000000 -uR 9940.000000 50.000000 inf 1.000000 -uR 9950.000000 50.000000 inf 1.000000 -uR 9960.000000 50.000000 inf 1.000000 -uR 9970.000000 50.000000 inf 1.000000 -uR 9980.000000 50.000000 inf 1.000000 -uR 9990.000000 50.000000 inf 1.000000 -uR 10000.000000 50.000000 inf 1.000000 -uR 10025.000000 50.000000 inf 1.000000 -uR 10050.000000 50.000000 inf 1.000000 -uR 10075.000000 50.000000 inf 1.000000 -uR 10100.000000 50.000000 inf 1.000000 -uR 10125.000000 50.000000 inf 1.000000 -uR 10150.000000 50.000000 inf 1.000000 -uR 10175.000000 50.000000 inf 1.000000 -uR 10200.000000 50.000000 inf 1.000000 -uR 10225.000000 50.000000 inf 1.000000 -uR 10250.000000 50.000000 inf 1.000000 -uR 10275.000000 50.000000 inf 1.000000 -uR 10300.000000 50.000000 inf 1.000000 -uR 10325.000000 50.000000 inf 1.000000 -uR 10350.000000 50.000000 inf 1.000000 -uR 10375.000000 50.000000 inf 1.000000 -uR 10400.000000 50.000000 inf 1.000000 -uR 10425.000000 50.000000 inf 1.000000 -uR 10450.000000 50.000000 inf 1.000000 -uR 10475.000000 50.000000 inf 1.000000 -uR 10500.000000 50.000000 inf 1.000000 -uR 10525.000000 50.000000 inf 1.000000 -uR 10550.000000 50.000000 inf 1.000000 -uR 10575.000000 50.000000 inf 1.000000 -uR 10600.000000 50.000000 inf 1.000000 -uR 10625.000000 50.000000 inf 1.000000 -uR 10650.000000 50.000000 inf 1.000000 -uR 10675.000000 50.000000 inf 1.000000 -uR 10700.000000 50.000000 inf 1.000000 -uR 10725.000000 50.000000 inf 1.000000 -uR 10750.000000 50.000000 inf 1.000000 -uR 10775.000000 50.000000 inf 1.000000 -uR 10800.000000 50.000000 inf 1.000000 -uR 10825.000000 50.000000 inf 1.000000 -uR 10850.000000 50.000000 inf 1.000000 -uR 10875.000000 50.000000 inf 1.000000 -uR 10900.000000 50.000000 inf 1.000000 -uR 10925.000000 50.000000 inf 1.000000 -uR 10950.000000 50.000000 inf 1.000000 -uR 10975.000000 50.000000 inf 1.000000 -uR 11000.000000 50.000000 inf 1.000000 -uR 11025.000000 50.000000 inf 1.000000 -uR 11050.000000 50.000000 inf 1.000000 -uR 11075.000000 50.000000 inf 1.000000 -uR 11100.000000 50.000000 inf 1.000000 -uR 11125.000000 50.000000 inf 1.000000 -uR 11150.000000 50.000000 inf 1.000000 -uR 11175.000000 50.000000 inf 1.000000 -uR 11200.000000 50.000000 inf 1.000000 -uR 11225.000000 50.000000 inf 1.000000 -uR 11250.000000 50.000000 inf 1.000000 -uR 11275.000000 50.000000 inf 1.000000 -uR 11300.000000 50.000000 inf 1.000000 -uR 11325.000000 50.000000 inf 1.000000 -uR 11350.000000 50.000000 inf 1.000000 -uR 11375.000000 50.000000 inf 1.000000 -uR 11400.000000 50.000000 inf 1.000000 -uR 11425.000000 50.000000 inf 1.000000 -uR 11450.000000 50.000000 inf 1.000000 -uR 11475.000000 50.000000 inf 1.000000 -uR 11500.000000 50.000000 inf 1.000000 -uR 11525.000000 50.000000 inf 1.000000 -uR 11550.000000 50.000000 inf 1.000000 -uR 11575.000000 50.000000 inf 1.000000 -uR 11600.000000 50.000000 inf 1.000000 -uR 11625.000000 50.000000 inf 1.000000 -uR 11650.000000 50.000000 inf 1.000000 -uR 11675.000000 50.000000 inf 1.000000 -uR 11700.000000 50.000000 inf 1.000000 -uR 11725.000000 50.000000 inf 1.000000 -uR 11750.000000 50.000000 inf 1.000000 -uR 11775.000000 50.000000 inf 1.000000 -uR 11800.000000 50.000000 inf 1.000000 -uR 11825.000000 50.000000 inf 1.000000 -uR 11850.000000 50.000000 inf 1.000000 -uR 11875.000000 50.000000 inf 1.000000 -uR 11900.000000 50.000000 inf 1.000000 -uR 11925.000000 50.000000 inf 1.000000 -uR 11950.000000 50.000000 inf 1.000000 -uR 11975.000000 50.000000 inf 1.000000 -uR 12000.000000 50.000000 inf 1.000000 -uR 12025.000000 50.000000 inf 1.000000 -uR 12050.000000 50.000000 inf 1.000000 -uR 12075.000000 50.000000 inf 1.000000 -uR 12100.000000 50.000000 inf 1.000000 -uR 12125.000000 50.000000 inf 1.000000 -uR 12150.000000 50.000000 inf 1.000000 -uR 12175.000000 50.000000 inf 1.000000 -uR 12200.000000 50.000000 inf 1.000000 -uR 12225.000000 50.000000 inf 1.000000 -uR 12250.000000 50.000000 inf 1.000000 -uR 12275.000000 50.000000 inf 1.000000 -uR 12300.000000 50.000000 inf 1.000000 -uR 12325.000000 50.000000 inf 1.000000 -uR 12350.000000 50.000000 inf 1.000000 -uR 12375.000000 50.000000 inf 1.000000 -uR 12400.000000 50.000000 inf 1.000000 -uR 12425.000000 50.000000 inf 1.000000 -uR 12450.000000 50.000000 inf 1.000000 -uR 12475.000000 50.000000 inf 1.000000 -uR 12500.000000 50.000000 inf 1.000000 -uR 12525.000000 50.000000 inf 1.000000 -uR 12550.000000 50.000000 inf 1.000000 -uR 12575.000000 50.000000 inf 1.000000 -uR 12600.000000 50.000000 inf 1.000000 -uR 12625.000000 50.000000 inf 1.000000 -uR 12650.000000 50.000000 inf 1.000000 -uR 12675.000000 50.000000 inf 1.000000 -uR 12700.000000 50.000000 inf 1.000000 -uR 12725.000000 50.000000 inf 1.000000 -uR 12750.000000 50.000000 inf 1.000000 -uR 12775.000000 50.000000 inf 1.000000 -uR 12800.000000 50.000000 inf 1.000000 -uR 12825.000000 50.000000 inf 1.000000 -uR 12850.000000 50.000000 inf 1.000000 -uR 12875.000000 50.000000 inf 1.000000 -uR 12900.000000 50.000000 inf 1.000000 -uR 12925.000000 50.000000 inf 1.000000 -uR 12950.000000 50.000000 inf 1.000000 -uR 12975.000000 50.000000 inf 1.000000 -uR 13000.000000 50.000000 inf 1.000000 -uR 13025.000000 50.000000 inf 1.000000 -uR 13050.000000 50.000000 inf 1.000000 -uR 13075.000000 50.000000 inf 1.000000 -uR 13100.000000 50.000000 inf 1.000000 -uR 13125.000000 50.000000 inf 1.000000 -uR 13150.000000 50.000000 inf 1.000000 -uR 13175.000000 50.000000 inf 1.000000 -uR 13200.000000 50.000000 inf 1.000000 -uR 13225.000000 50.000000 inf 1.000000 -uR 13250.000000 50.000000 inf 1.000000 -uR 13275.000000 50.000000 inf 1.000000 -uR 13300.000000 50.000000 inf 1.000000 -uR 13325.000000 50.000000 inf 1.000000 -uR 13350.000000 50.000000 inf 1.000000 -uR 13375.000000 50.000000 inf 1.000000 -uR 13400.000000 50.000000 inf 1.000000 -uR 13425.000000 50.000000 inf 1.000000 -uR 13450.000000 50.000000 inf 1.000000 -uR 13475.000000 50.000000 inf 1.000000 -uR 13500.000000 50.000000 inf 1.000000 -uR 13525.000000 50.000000 inf 1.000000 -uR 13550.000000 50.000000 inf 1.000000 -uR 13575.000000 50.000000 inf 1.000000 -uR 13600.000000 50.000000 inf 1.000000 -uR 13625.000000 50.000000 inf 1.000000 -uR 13650.000000 50.000000 inf 1.000000 -uR 13675.000000 50.000000 inf 1.000000 -uR 13700.000000 50.000000 inf 1.000000 -uR 13725.000000 50.000000 inf 1.000000 -uR 13750.000000 50.000000 inf 1.000000 -uR 13775.000000 50.000000 inf 1.000000 -uR 13800.000000 50.000000 inf 1.000000 -uR 13825.000000 50.000000 inf 1.000000 -uR 13850.000000 50.000000 inf 1.000000 -uR 13875.000000 50.000000 inf 1.000000 -uR 13900.000000 50.000000 inf 1.000000 -uR 13925.000000 50.000000 inf 1.000000 -uR 13950.000000 50.000000 inf 1.000000 -uR 13975.000000 50.000000 inf 1.000000 -uR 14000.000000 50.000000 inf 1.000000 -uR 14025.000000 50.000000 inf 1.000000 -uR 14050.000000 50.000000 inf 1.000000 -uR 14075.000000 50.000000 inf 1.000000 -uR 14100.000000 50.000000 inf 1.000000 -uR 14125.000000 50.000000 inf 1.000000 -uR 14150.000000 50.000000 inf 1.000000 -uR 14175.000000 50.000000 inf 1.000000 -uR 14200.000000 50.000000 inf 1.000000 -uR 14225.000000 50.000000 inf 1.000000 -uR 14250.000000 50.000000 inf 1.000000 -uR 14275.000000 50.000000 inf 1.000000 -uR 14300.000000 50.000000 inf 1.000000 -uR 14325.000000 50.000000 inf 1.000000 -uR 14350.000000 50.000000 inf 1.000000 -uR 14375.000000 50.000000 inf 1.000000 -uR 14400.000000 50.000000 inf 1.000000 -uR 14425.000000 50.000000 inf 1.000000 -uR 14450.000000 50.000000 inf 1.000000 -uR 14475.000000 50.000000 inf 1.000000 -uR 14500.000000 50.000000 inf 1.000000 -uR 14525.000000 50.000000 inf 1.000000 -uR 14550.000000 50.000000 inf 1.000000 -uR 14575.000000 50.000000 inf 1.000000 -uR 14600.000000 50.000000 inf 1.000000 -uR 14625.000000 50.000000 inf 1.000000 -uR 14650.000000 50.000000 inf 1.000000 -uR 14675.000000 50.000000 inf 1.000000 -uR 14700.000000 50.000000 inf 1.000000 -uR 14725.000000 50.000000 inf 1.000000 -uR 14750.000000 50.000000 inf 1.000000 -uR 14775.000000 50.000000 inf 1.000000 -uR 14800.000000 50.000000 inf 1.000000 -uR 14825.000000 50.000000 inf 1.000000 -uR 14850.000000 50.000000 inf 1.000000 -uR 14875.000000 50.000000 inf 1.000000 -uR 14900.000000 50.000000 inf 1.000000 -uR 14925.000000 50.000000 inf 1.000000 -uR 14950.000000 50.000000 inf 1.000000 -uR 14975.000000 50.000000 inf 1.000000 -uR 15000.000000 50.000000 inf 1.000000 -uR 15025.000000 50.000000 inf 1.000000 -uR 15050.000000 50.000000 inf 1.000000 -uR 15075.000000 50.000000 inf 1.000000 -uR 15100.000000 50.000000 inf 1.000000 -uR 15125.000000 50.000000 inf 1.000000 -uR 15150.000000 50.000000 inf 1.000000 -uR 15175.000000 50.000000 inf 1.000000 -uR 15200.000000 50.000000 inf 1.000000 -uR 15225.000000 50.000000 inf 1.000000 -uR 15250.000000 50.000000 inf 1.000000 -uR 15275.000000 50.000000 inf 1.000000 -uR 15300.000000 50.000000 inf 1.000000 -uR 15325.000000 50.000000 inf 1.000000 -uR 15350.000000 50.000000 inf 1.000000 -uR 15375.000000 50.000000 inf 1.000000 -uR 15400.000000 50.000000 inf 1.000000 -uR 15425.000000 50.000000 inf 1.000000 -uR 15450.000000 50.000000 inf 1.000000 -uR 15475.000000 50.000000 inf 1.000000 -uR 15500.000000 50.000000 inf 1.000000 -uR 15525.000000 50.000000 inf 1.000000 -uR 15550.000000 50.000000 inf 1.000000 -uR 15575.000000 50.000000 inf 1.000000 -uR 15600.000000 50.000000 inf 1.000000 -uR 15625.000000 50.000000 inf 1.000000 -uR 15650.000000 50.000000 inf 1.000000 -uR 15675.000000 50.000000 inf 1.000000 -uR 15700.000000 50.000000 inf 1.000000 -uR 15725.000000 50.000000 inf 1.000000 -uR 15750.000000 50.000000 inf 1.000000 -uR 15775.000000 50.000000 inf 1.000000 -uR 15800.000000 50.000000 inf 1.000000 -uR 15825.000000 50.000000 inf 1.000000 -uR 15850.000000 50.000000 inf 1.000000 -uR 15875.000000 50.000000 inf 1.000000 -uR 15900.000000 50.000000 inf 1.000000 -uR 15925.000000 50.000000 inf 1.000000 -uR 15950.000000 50.000000 inf 1.000000 -uR 15975.000000 50.000000 inf 1.000000 -uR 16000.000000 50.000000 inf 1.000000 -uR 16025.000000 50.000000 inf 1.000000 -uR 16050.000000 50.000000 inf 1.000000 -uR 16075.000000 50.000000 inf 1.000000 -uR 16100.000000 50.000000 inf 1.000000 -uR 16125.000000 50.000000 inf 1.000000 -uR 16150.000000 50.000000 inf 1.000000 -uR 16175.000000 50.000000 inf 1.000000 -uR 16200.000000 50.000000 inf 1.000000 -uR 16225.000000 50.000000 inf 1.000000 -uR 16250.000000 50.000000 inf 1.000000 -uR 16275.000000 50.000000 inf 1.000000 -uR 16300.000000 50.000000 inf 1.000000 -uR 16325.000000 50.000000 inf 1.000000 -uR 16350.000000 50.000000 inf 1.000000 -uR 16375.000000 50.000000 inf 1.000000 -uR 16400.000000 50.000000 inf 1.000000 -uR 16425.000000 50.000000 inf 1.000000 -uR 16450.000000 50.000000 inf 1.000000 -uR 16475.000000 50.000000 inf 1.000000 -uR 16500.000000 50.000000 inf 1.000000 -uR 16525.000000 50.000000 inf 1.000000 -uR 16550.000000 50.000000 inf 1.000000 -uR 16575.000000 50.000000 inf 1.000000 -uR 16600.000000 50.000000 inf 1.000000 -uR 16625.000000 50.000000 inf 1.000000 -uR 16650.000000 50.000000 inf 1.000000 -uR 16675.000000 50.000000 inf 1.000000 -uR 16700.000000 50.000000 inf 1.000000 -uR 16725.000000 50.000000 inf 1.000000 -uR 16750.000000 50.000000 inf 1.000000 -uR 16775.000000 50.000000 inf 1.000000 -uR 16800.000000 50.000000 inf 1.000000 -uR 16825.000000 50.000000 inf 1.000000 -uR 16850.000000 50.000000 inf 1.000000 -uR 16875.000000 50.000000 inf 1.000000 -uR 16900.000000 50.000000 inf 1.000000 -uR 16925.000000 50.000000 inf 1.000000 -uR 16950.000000 50.000000 inf 1.000000 -uR 16975.000000 50.000000 inf 1.000000 -uR 17000.000000 50.000000 inf 1.000000 -uR 1930.000000 60.000000 inf 1.000000 -uR 1940.000000 60.000000 inf 1.000000 -uR 1950.000000 60.000000 inf 1.000000 -uR 1960.000000 60.000000 inf 1.000000 -uR 1970.000000 60.000000 inf 1.000000 -uR 1980.000000 60.000000 inf 1.000000 -uR 1990.000000 60.000000 inf 1.000000 -uR 2000.000000 60.000000 inf 1.000000 -uR 2010.000000 60.000000 inf 1.000000 -uR 2020.000000 60.000000 inf 1.000000 -uR 2030.000000 60.000000 inf 1.000000 -uR 2040.000000 60.000000 inf 1.000000 -uR 2050.000000 60.000000 inf 1.000000 -uR 2060.000000 60.000000 inf 1.000000 -uR 2070.000000 60.000000 inf 1.000000 -uR 2080.000000 60.000000 inf 1.000000 -uR 2090.000000 60.000000 inf 1.000000 -uR 2100.000000 60.000000 inf 1.000000 -uR 2110.000000 60.000000 inf 1.000000 -uR 2120.000000 60.000000 inf 1.000000 -uR 2130.000000 60.000000 inf 1.000000 -uR 2140.000000 60.000000 inf 1.000000 -uR 2150.000000 60.000000 inf 1.000000 -uR 2160.000000 60.000000 inf 1.000000 -uR 2170.000000 60.000000 inf 1.000000 -uR 2180.000000 60.000000 inf 1.000000 -uR 2190.000000 60.000000 inf 1.000000 -uR 2200.000000 60.000000 inf 1.000000 -uR 2210.000000 60.000000 inf 1.000000 -uR 2220.000000 60.000000 inf 1.000000 -uR 2230.000000 60.000000 inf 1.000000 -uR 2240.000000 60.000000 inf 1.000000 -uR 2250.000000 60.000000 inf 1.000000 -uR 2260.000000 60.000000 inf 1.000000 -uR 2270.000000 60.000000 inf 1.000000 -uR 2280.000000 60.000000 inf 1.000000 -uR 2290.000000 60.000000 inf 1.000000 -uR 2300.000000 60.000000 inf 1.000000 -uR 2310.000000 60.000000 inf 1.000000 -uR 2320.000000 60.000000 inf 1.000000 -uR 2330.000000 60.000000 inf 1.000000 -uR 2340.000000 60.000000 inf 1.000000 -uR 2350.000000 60.000000 inf 1.000000 -uR 2360.000000 60.000000 inf 1.000000 -uR 2370.000000 60.000000 inf 1.000000 -uR 2380.000000 60.000000 inf 1.000000 -uR 2390.000000 60.000000 inf 1.000000 -uR 2400.000000 60.000000 inf 1.000000 -uR 2410.000000 60.000000 inf 1.000000 -uR 2420.000000 60.000000 inf 1.000000 -uR 2430.000000 60.000000 inf 1.000000 -uR 2440.000000 60.000000 inf 1.000000 -uR 2450.000000 60.000000 inf 1.000000 -uR 2460.000000 60.000000 inf 1.000000 -uR 2470.000000 60.000000 inf 1.000000 -uR 2480.000000 60.000000 inf 1.000000 -uR 2490.000000 60.000000 inf 1.000000 -uR 2500.000000 60.000000 inf 1.000000 -uR 2510.000000 60.000000 inf 1.000000 -uR 2520.000000 60.000000 inf 1.000000 -uR 2530.000000 60.000000 inf 1.000000 -uR 2540.000000 60.000000 inf 1.000000 -uR 2550.000000 60.000000 inf 1.000000 -uR 2560.000000 60.000000 inf 1.000000 -uR 2570.000000 60.000000 inf 1.000000 -uR 2580.000000 60.000000 inf 1.000000 -uR 2590.000000 60.000000 inf 1.000000 -uR 2600.000000 60.000000 inf 1.000000 -uR 2610.000000 60.000000 inf 1.000000 -uR 2620.000000 60.000000 inf 1.000000 -uR 2630.000000 60.000000 inf 1.000000 -uR 2640.000000 60.000000 inf 1.000000 -uR 2650.000000 60.000000 inf 1.000000 -uR 2660.000000 60.000000 inf 1.000000 -uR 2670.000000 60.000000 inf 1.000000 -uR 2680.000000 60.000000 inf 1.000000 -uR 2690.000000 60.000000 inf 1.000000 -uR 2700.000000 60.000000 inf 1.000000 -uR 2710.000000 60.000000 inf 1.000000 -uR 2720.000000 60.000000 inf 1.000000 -uR 2730.000000 60.000000 inf 1.000000 -uR 2740.000000 60.000000 inf 1.000000 -uR 2750.000000 60.000000 inf 1.000000 -uR 2760.000000 60.000000 inf 1.000000 -uR 2770.000000 60.000000 inf 1.000000 -uR 2780.000000 60.000000 inf 1.000000 -uR 2790.000000 60.000000 inf 1.000000 -uR 2800.000000 60.000000 inf 1.000000 -uR 2810.000000 60.000000 inf 1.000000 -uR 2820.000000 60.000000 inf 1.000000 -uR 2830.000000 60.000000 inf 1.000000 -uR 2840.000000 60.000000 inf 1.000000 -uR 2850.000000 60.000000 inf 1.000000 -uR 2860.000000 60.000000 inf 1.000000 -uR 2870.000000 60.000000 inf 1.000000 -uR 2880.000000 60.000000 inf 1.000000 -uR 2890.000000 60.000000 inf 1.000000 -uR 2900.000000 60.000000 inf 1.000000 -uR 2910.000000 60.000000 inf 1.000000 -uR 2920.000000 60.000000 inf 1.000000 -uR 2930.000000 60.000000 inf 1.000000 -uR 2940.000000 60.000000 inf 1.000000 -uR 2950.000000 60.000000 inf 1.000000 -uR 2960.000000 60.000000 inf 1.000000 -uR 2970.000000 60.000000 inf 1.000000 -uR 2980.000000 60.000000 inf 1.000000 -uR 2990.000000 60.000000 inf 1.000000 -uR 3000.000000 60.000000 inf 1.000000 -uR 3010.000000 60.000000 inf 1.000000 -uR 3020.000000 60.000000 inf 1.000000 -uR 3030.000000 60.000000 inf 1.000000 -uR 3040.000000 60.000000 inf 1.000000 -uR 3050.000000 60.000000 inf 1.000000 -uR 3060.000000 60.000000 inf 1.000000 -uR 3070.000000 60.000000 inf 1.000000 -uR 3080.000000 60.000000 inf 1.000000 -uR 3090.000000 60.000000 inf 1.000000 -uR 3100.000000 60.000000 inf 1.000000 -uR 3110.000000 60.000000 inf 1.000000 -uR 3120.000000 60.000000 inf 1.000000 -uR 3130.000000 60.000000 inf 1.000000 -uR 3140.000000 60.000000 inf 1.000000 -uR 3150.000000 60.000000 inf 1.000000 -uR 3160.000000 60.000000 inf 1.000000 -uR 3170.000000 60.000000 inf 1.000000 -uR 3180.000000 60.000000 inf 1.000000 -uR 3190.000000 60.000000 inf 1.000000 -uR 3200.000000 60.000000 inf 1.000000 -uR 3210.000000 60.000000 inf 1.000000 -uR 3220.000000 60.000000 inf 1.000000 -uR 3230.000000 60.000000 inf 1.000000 -uR 3240.000000 60.000000 inf 1.000000 -uR 3250.000000 60.000000 inf 1.000000 -uR 3260.000000 60.000000 inf 1.000000 -uR 3270.000000 60.000000 inf 1.000000 -uR 3280.000000 60.000000 inf 1.000000 -uR 3290.000000 60.000000 inf 1.000000 -uR 3300.000000 60.000000 inf 1.000000 -uR 3310.000000 60.000000 inf 1.000000 -uR 3320.000000 60.000000 inf 1.000000 -uR 3330.000000 60.000000 inf 1.000000 -uR 3340.000000 60.000000 inf 1.000000 -uR 3350.000000 60.000000 inf 1.000000 -uR 3360.000000 60.000000 inf 1.000000 -uR 3370.000000 60.000000 inf 1.000000 -uR 3380.000000 60.000000 inf 1.000000 -uR 3390.000000 60.000000 inf 1.000000 -uR 3400.000000 60.000000 inf 1.000000 -uR 3410.000000 60.000000 inf 1.000000 -uR 3420.000000 60.000000 inf 1.000000 -uR 3430.000000 60.000000 inf 1.000000 -uR 3440.000000 60.000000 inf 1.000000 -uR 3450.000000 60.000000 inf 1.000000 -uR 3460.000000 60.000000 inf 1.000000 -uR 3470.000000 60.000000 inf 1.000000 -uR 3480.000000 60.000000 inf 1.000000 -uR 3490.000000 60.000000 inf 1.000000 -uR 3500.000000 60.000000 inf 1.000000 -uR 3510.000000 60.000000 inf 1.000000 -uR 3520.000000 60.000000 inf 1.000000 -uR 3530.000000 60.000000 inf 1.000000 -uR 3540.000000 60.000000 inf 1.000000 -uR 3550.000000 60.000000 inf 1.000000 -uR 3560.000000 60.000000 inf 1.000000 -uR 3570.000000 60.000000 inf 1.000000 -uR 3580.000000 60.000000 inf 1.000000 -uR 3590.000000 60.000000 inf 1.000000 -uR 3600.000000 60.000000 inf 1.000000 -uR 3610.000000 60.000000 inf 1.000000 -uR 3620.000000 60.000000 inf 1.000000 -uR 3630.000000 60.000000 inf 1.000000 -uR 3640.000000 60.000000 inf 1.000000 -uR 3650.000000 60.000000 inf 1.000000 -uR 3660.000000 60.000000 inf 1.000000 -uR 3670.000000 60.000000 inf 1.000000 -uR 3680.000000 60.000000 inf 1.000000 -uR 3690.000000 60.000000 inf 1.000000 -uR 3700.000000 60.000000 inf 1.000000 -uR 3710.000000 60.000000 inf 1.000000 -uR 3720.000000 60.000000 inf 1.000000 -uR 3730.000000 60.000000 inf 1.000000 -uR 3740.000000 60.000000 inf 1.000000 -uR 3750.000000 60.000000 inf 1.000000 -uR 3760.000000 60.000000 inf 1.000000 -uR 3770.000000 60.000000 inf 1.000000 -uR 3780.000000 60.000000 inf 1.000000 -uR 3790.000000 60.000000 inf 1.000000 -uR 3800.000000 60.000000 inf 1.000000 -uR 3810.000000 60.000000 inf 1.000000 -uR 3820.000000 60.000000 inf 1.000000 -uR 3830.000000 60.000000 inf 1.000000 -uR 3840.000000 60.000000 inf 1.000000 -uR 3850.000000 60.000000 inf 1.000000 -uR 3860.000000 60.000000 inf 1.000000 -uR 3870.000000 60.000000 inf 1.000000 -uR 3880.000000 60.000000 inf 1.000000 -uR 3890.000000 60.000000 inf 1.000000 -uR 3900.000000 60.000000 inf 1.000000 -uR 3910.000000 60.000000 inf 1.000000 -uR 3920.000000 60.000000 inf 1.000000 -uR 3930.000000 60.000000 inf 1.000000 -uR 3940.000000 60.000000 inf 1.000000 -uR 3950.000000 60.000000 inf 1.000000 -uR 3960.000000 60.000000 inf 1.000000 -uR 3970.000000 60.000000 inf 1.000000 -uR 3980.000000 60.000000 inf 1.000000 -uR 3990.000000 60.000000 inf 1.000000 -uR 4000.000000 60.000000 inf 1.000000 -uR 4010.000000 60.000000 inf 1.000000 -uR 4020.000000 60.000000 inf 1.000000 -uR 4030.000000 60.000000 inf 1.000000 -uR 4040.000000 60.000000 inf 1.000000 -uR 4050.000000 60.000000 inf 1.000000 -uR 4060.000000 60.000000 inf 1.000000 -uR 4070.000000 60.000000 inf 1.000000 -uR 4080.000000 60.000000 inf 1.000000 -uR 4090.000000 60.000000 inf 1.000000 -uR 4100.000000 60.000000 inf 1.000000 -uR 4110.000000 60.000000 inf 1.000000 -uR 4120.000000 60.000000 inf 1.000000 -uR 4130.000000 60.000000 inf 1.000000 -uR 4140.000000 60.000000 inf 1.000000 -uR 4150.000000 60.000000 inf 1.000000 -uR 4160.000000 60.000000 inf 1.000000 -uR 4170.000000 60.000000 inf 1.000000 -uR 4180.000000 60.000000 inf 1.000000 -uR 4190.000000 60.000000 inf 1.000000 -uR 4200.000000 60.000000 inf 1.000000 -uR 4210.000000 60.000000 inf 1.000000 -uR 4220.000000 60.000000 inf 1.000000 -uR 4230.000000 60.000000 inf 1.000000 -uR 4240.000000 60.000000 inf 1.000000 -uR 4250.000000 60.000000 inf 1.000000 -uR 4260.000000 60.000000 inf 1.000000 -uR 4270.000000 60.000000 inf 1.000000 -uR 4280.000000 60.000000 inf 1.000000 -uR 4290.000000 60.000000 inf 1.000000 -uR 4300.000000 60.000000 inf 1.000000 -uR 4310.000000 60.000000 inf 1.000000 -uR 4320.000000 60.000000 inf 1.000000 -uR 4330.000000 60.000000 inf 1.000000 -uR 4340.000000 60.000000 inf 1.000000 -uR 4350.000000 60.000000 inf 1.000000 -uR 4360.000000 60.000000 inf 1.000000 -uR 4370.000000 60.000000 inf 1.000000 -uR 4380.000000 60.000000 inf 1.000000 -uR 4390.000000 60.000000 inf 1.000000 -uR 4400.000000 60.000000 inf 1.000000 -uR 4410.000000 60.000000 inf 1.000000 -uR 4420.000000 60.000000 inf 1.000000 -uR 4430.000000 60.000000 inf 1.000000 -uR 4440.000000 60.000000 inf 1.000000 -uR 4450.000000 60.000000 inf 1.000000 -uR 4460.000000 60.000000 inf 1.000000 -uR 4470.000000 60.000000 inf 1.000000 -uR 4480.000000 60.000000 inf 1.000000 -uR 4490.000000 60.000000 inf 1.000000 -uR 4500.000000 60.000000 inf 1.000000 -uR 4510.000000 60.000000 inf 1.000000 -uR 4520.000000 60.000000 inf 1.000000 -uR 4530.000000 60.000000 inf 1.000000 -uR 4540.000000 60.000000 inf 1.000000 -uR 4550.000000 60.000000 inf 1.000000 -uR 4560.000000 60.000000 inf 1.000000 -uR 4570.000000 60.000000 inf 1.000000 -uR 4580.000000 60.000000 inf 1.000000 -uR 4590.000000 60.000000 inf 1.000000 -uR 4600.000000 60.000000 inf 1.000000 -uR 4610.000000 60.000000 inf 1.000000 -uR 4620.000000 60.000000 inf 1.000000 -uR 4630.000000 60.000000 inf 1.000000 -uR 4640.000000 60.000000 inf 1.000000 -uR 4650.000000 60.000000 inf 1.000000 -uR 4660.000000 60.000000 inf 1.000000 -uR 4670.000000 60.000000 inf 1.000000 -uR 4680.000000 60.000000 inf 1.000000 -uR 4690.000000 60.000000 inf 1.000000 -uR 4700.000000 60.000000 inf 1.000000 -uR 4710.000000 60.000000 inf 1.000000 -uR 4720.000000 60.000000 inf 1.000000 -uR 4730.000000 60.000000 inf 1.000000 -uR 4740.000000 60.000000 inf 1.000000 -uR 4750.000000 60.000000 inf 1.000000 -uR 4760.000000 60.000000 inf 1.000000 -uR 4770.000000 60.000000 inf 1.000000 -uR 4780.000000 60.000000 inf 1.000000 -uR 4790.000000 60.000000 inf 1.000000 -uR 4800.000000 60.000000 inf 1.000000 -uR 4810.000000 60.000000 inf 1.000000 -uR 4820.000000 60.000000 inf 1.000000 -uR 4830.000000 60.000000 inf 1.000000 -uR 4840.000000 60.000000 inf 1.000000 -uR 4850.000000 60.000000 inf 1.000000 -uR 4860.000000 60.000000 inf 1.000000 -uR 4870.000000 60.000000 inf 1.000000 -uR 4880.000000 60.000000 inf 1.000000 -uR 4890.000000 60.000000 inf 1.000000 -uR 4900.000000 60.000000 inf 1.000000 -uR 4910.000000 60.000000 inf 1.000000 -uR 4920.000000 60.000000 inf 1.000000 -uR 4930.000000 60.000000 inf 1.000000 -uR 4940.000000 60.000000 inf 1.000000 -uR 4950.000000 60.000000 inf 1.000000 -uR 4960.000000 60.000000 inf 1.000000 -uR 4970.000000 60.000000 inf 1.000000 -uR 4980.000000 60.000000 inf 1.000000 -uR 4990.000000 60.000000 inf 1.000000 -uR 5000.000000 60.000000 inf 1.000000 -uR 5010.000000 60.000000 inf 1.000000 -uR 5020.000000 60.000000 inf 1.000000 -uR 5030.000000 60.000000 inf 1.000000 -uR 5040.000000 60.000000 inf 1.000000 -uR 5050.000000 60.000000 inf 1.000000 -uR 5060.000000 60.000000 inf 1.000000 -uR 5070.000000 60.000000 inf 1.000000 -uR 5080.000000 60.000000 inf 1.000000 -uR 5090.000000 60.000000 inf 1.000000 -uR 5100.000000 60.000000 inf 1.000000 -uR 5110.000000 60.000000 inf 1.000000 -uR 5120.000000 60.000000 inf 1.000000 -uR 5130.000000 60.000000 inf 1.000000 -uR 5140.000000 60.000000 inf 1.000000 -uR 5150.000000 60.000000 inf 1.000000 -uR 5160.000000 60.000000 inf 1.000000 -uR 5170.000000 60.000000 inf 1.000000 -uR 5180.000000 60.000000 inf 1.000000 -uR 5190.000000 60.000000 inf 1.000000 -uR 5200.000000 60.000000 inf 1.000000 -uR 5210.000000 60.000000 inf 1.000000 -uR 5220.000000 60.000000 inf 1.000000 -uR 5230.000000 60.000000 inf 1.000000 -uR 5240.000000 60.000000 inf 1.000000 -uR 5250.000000 60.000000 inf 1.000000 -uR 5260.000000 60.000000 inf 1.000000 -uR 5270.000000 60.000000 inf 1.000000 -uR 5280.000000 60.000000 inf 1.000000 -uR 5290.000000 60.000000 inf 1.000000 -uR 5300.000000 60.000000 inf 1.000000 -uR 5310.000000 60.000000 inf 1.000000 -uR 5320.000000 60.000000 inf 1.000000 -uR 5330.000000 60.000000 inf 1.000000 -uR 5340.000000 60.000000 inf 1.000000 -uR 5350.000000 60.000000 inf 1.000000 -uR 5360.000000 60.000000 inf 1.000000 -uR 5370.000000 60.000000 inf 1.000000 -uR 5380.000000 60.000000 inf 1.000000 -uR 5390.000000 60.000000 inf 1.000000 -uR 5400.000000 60.000000 inf 1.000000 -uR 5410.000000 60.000000 inf 1.000000 -uR 5420.000000 60.000000 inf 1.000000 -uR 5430.000000 60.000000 inf 1.000000 -uR 5440.000000 60.000000 inf 1.000000 -uR 5450.000000 60.000000 inf 1.000000 -uR 5460.000000 60.000000 inf 1.000000 -uR 5470.000000 60.000000 inf 1.000000 -uR 5480.000000 60.000000 inf 1.000000 -uR 5490.000000 60.000000 inf 1.000000 -uR 5500.000000 60.000000 inf 1.000000 -uR 5510.000000 60.000000 inf 1.000000 -uR 5520.000000 60.000000 inf 1.000000 -uR 5530.000000 60.000000 inf 1.000000 -uR 5540.000000 60.000000 inf 1.000000 -uR 5550.000000 60.000000 inf 1.000000 -uR 5560.000000 60.000000 inf 1.000000 -uR 5570.000000 60.000000 inf 1.000000 -uR 5580.000000 60.000000 inf 1.000000 -uR 5590.000000 60.000000 inf 1.000000 -uR 5600.000000 60.000000 inf 1.000000 -uR 5610.000000 60.000000 inf 1.000000 -uR 5620.000000 60.000000 inf 1.000000 -uR 5630.000000 60.000000 inf 1.000000 -uR 5640.000000 60.000000 inf 1.000000 -uR 5650.000000 60.000000 inf 1.000000 -uR 5660.000000 60.000000 inf 1.000000 -uR 5670.000000 60.000000 inf 1.000000 -uR 5680.000000 60.000000 inf 1.000000 -uR 5690.000000 60.000000 inf 1.000000 -uR 5700.000000 60.000000 inf 1.000000 -uR 5710.000000 60.000000 inf 1.000000 -uR 5720.000000 60.000000 inf 1.000000 -uR 5730.000000 60.000000 inf 1.000000 -uR 5740.000000 60.000000 inf 1.000000 -uR 5750.000000 60.000000 inf 1.000000 -uR 5760.000000 60.000000 inf 1.000000 -uR 5770.000000 60.000000 inf 1.000000 -uR 5780.000000 60.000000 inf 1.000000 -uR 5790.000000 60.000000 inf 1.000000 -uR 5800.000000 60.000000 inf 1.000000 -uR 5810.000000 60.000000 inf 1.000000 -uR 5820.000000 60.000000 inf 1.000000 -uR 5830.000000 60.000000 inf 1.000000 -uR 5840.000000 60.000000 inf 1.000000 -uR 5850.000000 60.000000 inf 1.000000 -uR 5860.000000 60.000000 inf 1.000000 -uR 5870.000000 60.000000 inf 1.000000 -uR 5880.000000 60.000000 inf 1.000000 -uR 5890.000000 60.000000 inf 1.000000 -uR 5900.000000 60.000000 inf 1.000000 -uR 5910.000000 60.000000 inf 1.000000 -uR 5920.000000 60.000000 inf 1.000000 -uR 5930.000000 60.000000 inf 1.000000 -uR 5940.000000 60.000000 inf 1.000000 -uR 5950.000000 60.000000 inf 1.000000 -uR 5960.000000 60.000000 inf 1.000000 -uR 5970.000000 60.000000 inf 1.000000 -uR 5980.000000 60.000000 inf 1.000000 -uR 5990.000000 60.000000 inf 1.000000 -uR 6000.000000 60.000000 inf 1.000000 -uR 6010.000000 60.000000 inf 1.000000 -uR 6020.000000 60.000000 inf 1.000000 -uR 6030.000000 60.000000 inf 1.000000 -uR 6040.000000 60.000000 inf 1.000000 -uR 6050.000000 60.000000 inf 1.000000 -uR 6060.000000 60.000000 inf 1.000000 -uR 6070.000000 60.000000 inf 1.000000 -uR 6080.000000 60.000000 inf 1.000000 -uR 6090.000000 60.000000 inf 1.000000 -uR 6100.000000 60.000000 inf 1.000000 -uR 6110.000000 60.000000 inf 1.000000 -uR 6120.000000 60.000000 inf 1.000000 -uR 6130.000000 60.000000 inf 1.000000 -uR 6140.000000 60.000000 inf 1.000000 -uR 6150.000000 60.000000 inf 1.000000 -uR 6160.000000 60.000000 inf 1.000000 -uR 6170.000000 60.000000 inf 1.000000 -uR 6180.000000 60.000000 inf 1.000000 -uR 6190.000000 60.000000 inf 1.000000 -uR 6200.000000 60.000000 inf 1.000000 -uR 6210.000000 60.000000 inf 1.000000 -uR 6220.000000 60.000000 inf 1.000000 -uR 6230.000000 60.000000 inf 1.000000 -uR 6240.000000 60.000000 inf 1.000000 -uR 6250.000000 60.000000 inf 1.000000 -uR 6260.000000 60.000000 inf 1.000000 -uR 6270.000000 60.000000 inf 1.000000 -uR 6280.000000 60.000000 inf 1.000000 -uR 6290.000000 60.000000 inf 1.000000 -uR 6300.000000 60.000000 inf 1.000000 -uR 6310.000000 60.000000 inf 1.000000 -uR 6320.000000 60.000000 inf 1.000000 -uR 6330.000000 60.000000 inf 1.000000 -uR 6340.000000 60.000000 inf 1.000000 -uR 6350.000000 60.000000 inf 1.000000 -uR 6360.000000 60.000000 inf 1.000000 -uR 6370.000000 60.000000 inf 1.000000 -uR 6380.000000 60.000000 inf 1.000000 -uR 6390.000000 60.000000 inf 1.000000 -uR 6400.000000 60.000000 inf 1.000000 -uR 6410.000000 60.000000 inf 1.000000 -uR 6420.000000 60.000000 inf 1.000000 -uR 6430.000000 60.000000 inf 1.000000 -uR 6440.000000 60.000000 inf 1.000000 -uR 6450.000000 60.000000 inf 1.000000 -uR 6460.000000 60.000000 inf 1.000000 -uR 6470.000000 60.000000 inf 1.000000 -uR 6480.000000 60.000000 inf 1.000000 -uR 6490.000000 60.000000 inf 1.000000 -uR 6500.000000 60.000000 inf 1.000000 -uR 6510.000000 60.000000 inf 1.000000 -uR 6520.000000 60.000000 inf 1.000000 -uR 6530.000000 60.000000 inf 1.000000 -uR 6540.000000 60.000000 inf 1.000000 -uR 6550.000000 60.000000 inf 1.000000 -uR 6560.000000 60.000000 inf 1.000000 -uR 6570.000000 60.000000 inf 1.000000 -uR 6580.000000 60.000000 inf 1.000000 -uR 6590.000000 60.000000 inf 1.000000 -uR 6600.000000 60.000000 inf 1.000000 -uR 6610.000000 60.000000 inf 1.000000 -uR 6620.000000 60.000000 inf 1.000000 -uR 6630.000000 60.000000 inf 1.000000 -uR 6640.000000 60.000000 inf 1.000000 -uR 6650.000000 60.000000 inf 1.000000 -uR 6660.000000 60.000000 inf 1.000000 -uR 6670.000000 60.000000 inf 1.000000 -uR 6680.000000 60.000000 inf 1.000000 -uR 6690.000000 60.000000 inf 1.000000 -uR 6700.000000 60.000000 inf 1.000000 -uR 6710.000000 60.000000 inf 1.000000 -uR 6720.000000 60.000000 inf 1.000000 -uR 6730.000000 60.000000 inf 1.000000 -uR 6740.000000 60.000000 inf 1.000000 -uR 6750.000000 60.000000 inf 1.000000 -uR 6760.000000 60.000000 inf 1.000000 -uR 6770.000000 60.000000 inf 1.000000 -uR 6780.000000 60.000000 inf 1.000000 -uR 6790.000000 60.000000 inf 1.000000 -uR 6800.000000 60.000000 inf 1.000000 -uR 6810.000000 60.000000 inf 1.000000 -uR 6820.000000 60.000000 inf 1.000000 -uR 6830.000000 60.000000 inf 1.000000 -uR 6840.000000 60.000000 inf 1.000000 -uR 6850.000000 60.000000 inf 1.000000 -uR 6860.000000 60.000000 inf 1.000000 -uR 6870.000000 60.000000 inf 1.000000 -uR 6880.000000 60.000000 inf 1.000000 -uR 6890.000000 60.000000 inf 1.000000 -uR 6900.000000 60.000000 inf 1.000000 -uR 6910.000000 60.000000 inf 1.000000 -uR 6920.000000 60.000000 inf 1.000000 -uR 6930.000000 60.000000 inf 1.000000 -uR 6940.000000 60.000000 inf 1.000000 -uR 6950.000000 60.000000 inf 1.000000 -uR 6960.000000 60.000000 inf 1.000000 -uR 6970.000000 60.000000 inf 1.000000 -uR 6980.000000 60.000000 inf 1.000000 -uR 6990.000000 60.000000 inf 1.000000 -uR 7000.000000 60.000000 inf 1.000000 -uR 7010.000000 60.000000 inf 1.000000 -uR 7020.000000 60.000000 inf 1.000000 -uR 7030.000000 60.000000 inf 1.000000 -uR 7040.000000 60.000000 inf 1.000000 -uR 7050.000000 60.000000 inf 1.000000 -uR 7060.000000 60.000000 inf 1.000000 -uR 7070.000000 60.000000 inf 1.000000 -uR 7080.000000 60.000000 inf 1.000000 -uR 7090.000000 60.000000 inf 1.000000 -uR 7100.000000 60.000000 inf 1.000000 -uR 7110.000000 60.000000 inf 1.000000 -uR 7120.000000 60.000000 inf 1.000000 -uR 7130.000000 60.000000 inf 1.000000 -uR 7140.000000 60.000000 inf 1.000000 -uR 7150.000000 60.000000 inf 1.000000 -uR 7160.000000 60.000000 inf 1.000000 -uR 7170.000000 60.000000 inf 1.000000 -uR 7180.000000 60.000000 inf 1.000000 -uR 7190.000000 60.000000 inf 1.000000 -uR 7200.000000 60.000000 inf 1.000000 -uR 7210.000000 60.000000 inf 1.000000 -uR 7220.000000 60.000000 inf 1.000000 -uR 7230.000000 60.000000 inf 1.000000 -uR 7240.000000 60.000000 inf 1.000000 -uR 7250.000000 60.000000 inf 1.000000 -uR 7260.000000 60.000000 inf 1.000000 -uR 7270.000000 60.000000 inf 1.000000 -uR 7280.000000 60.000000 inf 1.000000 -uR 7290.000000 60.000000 inf 1.000000 -uR 7300.000000 60.000000 inf 1.000000 -uR 7310.000000 60.000000 inf 1.000000 -uR 7320.000000 60.000000 inf 1.000000 -uR 7330.000000 60.000000 inf 1.000000 -uR 7340.000000 60.000000 inf 1.000000 -uR 7350.000000 60.000000 inf 1.000000 -uR 7360.000000 60.000000 inf 1.000000 -uR 7370.000000 60.000000 inf 1.000000 -uR 7380.000000 60.000000 inf 1.000000 -uR 7390.000000 60.000000 inf 1.000000 -uR 7400.000000 60.000000 inf 1.000000 -uR 7410.000000 60.000000 inf 1.000000 -uR 7420.000000 60.000000 inf 1.000000 -uR 7430.000000 60.000000 inf 1.000000 -uR 7440.000000 60.000000 inf 1.000000 -uR 7450.000000 60.000000 inf 1.000000 -uR 7460.000000 60.000000 inf 1.000000 -uR 7470.000000 60.000000 inf 1.000000 -uR 7480.000000 60.000000 inf 1.000000 -uR 7490.000000 60.000000 inf 1.000000 -uR 7500.000000 60.000000 inf 1.000000 -uR 7510.000000 60.000000 inf 1.000000 -uR 7520.000000 60.000000 inf 1.000000 -uR 7530.000000 60.000000 inf 1.000000 -uR 7540.000000 60.000000 inf 1.000000 -uR 7550.000000 60.000000 inf 1.000000 -uR 7560.000000 60.000000 inf 1.000000 -uR 7570.000000 60.000000 inf 1.000000 -uR 7580.000000 60.000000 inf 1.000000 -uR 7590.000000 60.000000 inf 1.000000 -uR 7600.000000 60.000000 inf 1.000000 -uR 7610.000000 60.000000 inf 1.000000 -uR 7620.000000 60.000000 inf 1.000000 -uR 7630.000000 60.000000 inf 1.000000 -uR 7640.000000 60.000000 inf 1.000000 -uR 7650.000000 60.000000 inf 1.000000 -uR 7660.000000 60.000000 inf 1.000000 -uR 7670.000000 60.000000 inf 1.000000 -uR 7680.000000 60.000000 inf 1.000000 -uR 7690.000000 60.000000 inf 1.000000 -uR 7700.000000 60.000000 inf 1.000000 -uR 7710.000000 60.000000 inf 1.000000 -uR 7720.000000 60.000000 inf 1.000000 -uR 7730.000000 60.000000 inf 1.000000 -uR 7740.000000 60.000000 inf 1.000000 -uR 7750.000000 60.000000 inf 1.000000 -uR 7760.000000 60.000000 inf 1.000000 -uR 7770.000000 60.000000 inf 1.000000 -uR 7780.000000 60.000000 inf 1.000000 -uR 7790.000000 60.000000 inf 1.000000 -uR 7800.000000 60.000000 inf 1.000000 -uR 7810.000000 60.000000 inf 1.000000 -uR 7820.000000 60.000000 inf 1.000000 -uR 7830.000000 60.000000 inf 1.000000 -uR 7840.000000 60.000000 inf 1.000000 -uR 7850.000000 60.000000 inf 1.000000 -uR 7860.000000 60.000000 inf 1.000000 -uR 7870.000000 60.000000 inf 1.000000 -uR 7880.000000 60.000000 inf 1.000000 -uR 7890.000000 60.000000 inf 1.000000 -uR 7900.000000 60.000000 inf 1.000000 -uR 7910.000000 60.000000 inf 1.000000 -uR 7920.000000 60.000000 inf 1.000000 -uR 7930.000000 60.000000 inf 1.000000 -uR 7940.000000 60.000000 inf 1.000000 -uR 7950.000000 60.000000 inf 1.000000 -uR 7960.000000 60.000000 inf 1.000000 -uR 7970.000000 60.000000 inf 1.000000 -uR 7980.000000 60.000000 inf 1.000000 -uR 7990.000000 60.000000 inf 1.000000 -uR 8000.000000 60.000000 inf 1.000000 -uR 8010.000000 60.000000 inf 1.000000 -uR 8020.000000 60.000000 inf 1.000000 -uR 8030.000000 60.000000 inf 1.000000 -uR 8040.000000 60.000000 inf 1.000000 -uR 8050.000000 60.000000 inf 1.000000 -uR 8060.000000 60.000000 inf 1.000000 -uR 8070.000000 60.000000 inf 1.000000 -uR 8080.000000 60.000000 inf 1.000000 -uR 8090.000000 60.000000 inf 1.000000 -uR 8100.000000 60.000000 inf 1.000000 -uR 8110.000000 60.000000 inf 1.000000 -uR 8120.000000 60.000000 inf 1.000000 -uR 8130.000000 60.000000 inf 1.000000 -uR 8140.000000 60.000000 inf 1.000000 -uR 8150.000000 60.000000 inf 1.000000 -uR 8160.000000 60.000000 inf 1.000000 -uR 8170.000000 60.000000 inf 1.000000 -uR 8180.000000 60.000000 inf 1.000000 -uR 8190.000000 60.000000 inf 1.000000 -uR 8200.000000 60.000000 inf 1.000000 -uR 8210.000000 60.000000 inf 1.000000 -uR 8220.000000 60.000000 inf 1.000000 -uR 8230.000000 60.000000 inf 1.000000 -uR 8240.000000 60.000000 inf 1.000000 -uR 8250.000000 60.000000 inf 1.000000 -uR 8260.000000 60.000000 inf 1.000000 -uR 8270.000000 60.000000 inf 1.000000 -uR 8280.000000 60.000000 inf 1.000000 -uR 8290.000000 60.000000 inf 1.000000 -uR 8300.000000 60.000000 inf 1.000000 -uR 8310.000000 60.000000 inf 1.000000 -uR 8320.000000 60.000000 inf 1.000000 -uR 8330.000000 60.000000 inf 1.000000 -uR 8340.000000 60.000000 inf 1.000000 -uR 8350.000000 60.000000 inf 1.000000 -uR 8360.000000 60.000000 inf 1.000000 -uR 8370.000000 60.000000 inf 1.000000 -uR 8380.000000 60.000000 inf 1.000000 -uR 8390.000000 60.000000 inf 1.000000 -uR 8400.000000 60.000000 inf 1.000000 -uR 8410.000000 60.000000 inf 1.000000 -uR 8420.000000 60.000000 inf 1.000000 -uR 8430.000000 60.000000 inf 1.000000 -uR 8440.000000 60.000000 inf 1.000000 -uR 8450.000000 60.000000 inf 1.000000 -uR 8460.000000 60.000000 inf 1.000000 -uR 8470.000000 60.000000 inf 1.000000 -uR 8480.000000 60.000000 inf 1.000000 -uR 8490.000000 60.000000 inf 1.000000 -uR 8500.000000 60.000000 inf 1.000000 -uR 8510.000000 60.000000 inf 1.000000 -uR 8520.000000 60.000000 inf 1.000000 -uR 8530.000000 60.000000 inf 1.000000 -uR 8540.000000 60.000000 inf 1.000000 -uR 8550.000000 60.000000 inf 1.000000 -uR 8560.000000 60.000000 inf 1.000000 -uR 8570.000000 60.000000 inf 1.000000 -uR 8580.000000 60.000000 inf 1.000000 -uR 8590.000000 60.000000 inf 1.000000 -uR 8600.000000 60.000000 inf 1.000000 -uR 8610.000000 60.000000 inf 1.000000 -uR 8620.000000 60.000000 inf 1.000000 -uR 8630.000000 60.000000 inf 1.000000 -uR 8640.000000 60.000000 inf 1.000000 -uR 8650.000000 60.000000 inf 1.000000 -uR 8660.000000 60.000000 inf 1.000000 -uR 8670.000000 60.000000 inf 1.000000 -uR 8680.000000 60.000000 inf 1.000000 -uR 8690.000000 60.000000 inf 1.000000 -uR 8700.000000 60.000000 inf 1.000000 -uR 8710.000000 60.000000 inf 1.000000 -uR 8720.000000 60.000000 inf 1.000000 -uR 8730.000000 60.000000 inf 1.000000 -uR 8740.000000 60.000000 inf 1.000000 -uR 8750.000000 60.000000 inf 1.000000 -uR 8760.000000 60.000000 inf 1.000000 -uR 8770.000000 60.000000 inf 1.000000 -uR 8780.000000 60.000000 inf 1.000000 -uR 8790.000000 60.000000 inf 1.000000 -uR 8800.000000 60.000000 inf 1.000000 -uR 8810.000000 60.000000 inf 1.000000 -uR 8820.000000 60.000000 inf 1.000000 -uR 8830.000000 60.000000 inf 1.000000 -uR 8840.000000 60.000000 inf 1.000000 -uR 8850.000000 60.000000 inf 1.000000 -uR 8860.000000 60.000000 inf 1.000000 -uR 8870.000000 60.000000 inf 1.000000 -uR 8880.000000 60.000000 inf 1.000000 -uR 8890.000000 60.000000 inf 1.000000 -uR 8900.000000 60.000000 inf 1.000000 -uR 8910.000000 60.000000 inf 1.000000 -uR 8920.000000 60.000000 inf 1.000000 -uR 8930.000000 60.000000 inf 1.000000 -uR 8940.000000 60.000000 inf 1.000000 -uR 8950.000000 60.000000 inf 1.000000 -uR 8960.000000 60.000000 inf 1.000000 -uR 8970.000000 60.000000 inf 1.000000 -uR 8980.000000 60.000000 inf 1.000000 -uR 8990.000000 60.000000 inf 1.000000 -uR 9000.000000 60.000000 inf 1.000000 -uR 9010.000000 60.000000 inf 1.000000 -uR 9020.000000 60.000000 inf 1.000000 -uR 9030.000000 60.000000 inf 1.000000 -uR 9040.000000 60.000000 inf 1.000000 -uR 9050.000000 60.000000 inf 1.000000 -uR 9060.000000 60.000000 inf 1.000000 -uR 9070.000000 60.000000 inf 1.000000 -uR 9080.000000 60.000000 inf 1.000000 -uR 9090.000000 60.000000 inf 1.000000 -uR 9100.000000 60.000000 inf 1.000000 -uR 9110.000000 60.000000 inf 1.000000 -uR 9120.000000 60.000000 inf 1.000000 -uR 9130.000000 60.000000 inf 1.000000 -uR 9140.000000 60.000000 inf 1.000000 -uR 9150.000000 60.000000 inf 1.000000 -uR 9160.000000 60.000000 inf 1.000000 -uR 9170.000000 60.000000 inf 1.000000 -uR 9180.000000 60.000000 inf 1.000000 -uR 9190.000000 60.000000 inf 1.000000 -uR 9200.000000 60.000000 inf 1.000000 -uR 9210.000000 60.000000 inf 1.000000 -uR 9220.000000 60.000000 inf 1.000000 -uR 9230.000000 60.000000 inf 1.000000 -uR 9240.000000 60.000000 inf 1.000000 -uR 9250.000000 60.000000 inf 1.000000 -uR 9260.000000 60.000000 inf 1.000000 -uR 9270.000000 60.000000 inf 1.000000 -uR 9280.000000 60.000000 inf 1.000000 -uR 9290.000000 60.000000 inf 1.000000 -uR 9300.000000 60.000000 inf 1.000000 -uR 9310.000000 60.000000 inf 1.000000 -uR 9320.000000 60.000000 inf 1.000000 -uR 9330.000000 60.000000 inf 1.000000 -uR 9340.000000 60.000000 inf 1.000000 -uR 9350.000000 60.000000 inf 1.000000 -uR 9360.000000 60.000000 inf 1.000000 -uR 9370.000000 60.000000 inf 1.000000 -uR 9380.000000 60.000000 inf 1.000000 -uR 9390.000000 60.000000 inf 1.000000 -uR 9400.000000 60.000000 inf 1.000000 -uR 9410.000000 60.000000 inf 1.000000 -uR 9420.000000 60.000000 inf 1.000000 -uR 9430.000000 60.000000 inf 1.000000 -uR 9440.000000 60.000000 inf 1.000000 -uR 9450.000000 60.000000 inf 1.000000 -uR 9460.000000 60.000000 inf 1.000000 -uR 9470.000000 60.000000 inf 1.000000 -uR 9480.000000 60.000000 inf 1.000000 -uR 9490.000000 60.000000 inf 1.000000 -uR 9500.000000 60.000000 inf 1.000000 -uR 9510.000000 60.000000 inf 1.000000 -uR 9520.000000 60.000000 inf 1.000000 -uR 9530.000000 60.000000 inf 1.000000 -uR 9540.000000 60.000000 inf 1.000000 -uR 9550.000000 60.000000 inf 1.000000 -uR 9560.000000 60.000000 inf 1.000000 -uR 9570.000000 60.000000 inf 1.000000 -uR 9580.000000 60.000000 inf 1.000000 -uR 9590.000000 60.000000 inf 1.000000 -uR 9600.000000 60.000000 inf 1.000000 -uR 9610.000000 60.000000 inf 1.000000 -uR 9620.000000 60.000000 inf 1.000000 -uR 9630.000000 60.000000 inf 1.000000 -uR 9640.000000 60.000000 inf 1.000000 -uR 9650.000000 60.000000 inf 1.000000 -uR 9660.000000 60.000000 inf 1.000000 -uR 9670.000000 60.000000 inf 1.000000 -uR 9680.000000 60.000000 inf 1.000000 -uR 9690.000000 60.000000 inf 1.000000 -uR 9700.000000 60.000000 inf 1.000000 -uR 9710.000000 60.000000 inf 1.000000 -uR 9720.000000 60.000000 inf 1.000000 -uR 9730.000000 60.000000 inf 1.000000 -uR 9740.000000 60.000000 inf 1.000000 -uR 9750.000000 60.000000 inf 1.000000 -uR 9760.000000 60.000000 inf 1.000000 -uR 9770.000000 60.000000 inf 1.000000 -uR 9780.000000 60.000000 inf 1.000000 -uR 9790.000000 60.000000 inf 1.000000 -uR 9800.000000 60.000000 inf 1.000000 -uR 9810.000000 60.000000 inf 1.000000 -uR 9820.000000 60.000000 inf 1.000000 -uR 9830.000000 60.000000 inf 1.000000 -uR 9840.000000 60.000000 inf 1.000000 -uR 9850.000000 60.000000 inf 1.000000 -uR 9860.000000 60.000000 inf 1.000000 -uR 9870.000000 60.000000 inf 1.000000 -uR 9880.000000 60.000000 inf 1.000000 -uR 9890.000000 60.000000 inf 1.000000 -uR 9900.000000 60.000000 inf 1.000000 -uR 9910.000000 60.000000 inf 1.000000 -uR 9920.000000 60.000000 inf 1.000000 -uR 9930.000000 60.000000 inf 1.000000 -uR 9940.000000 60.000000 inf 1.000000 -uR 9950.000000 60.000000 inf 1.000000 -uR 9960.000000 60.000000 inf 1.000000 -uR 9970.000000 60.000000 inf 1.000000 -uR 9980.000000 60.000000 inf 1.000000 -uR 9990.000000 60.000000 inf 1.000000 -uR 10000.000000 60.000000 inf 1.000000 -uR 10025.000000 60.000000 inf 1.000000 -uR 10050.000000 60.000000 inf 1.000000 -uR 10075.000000 60.000000 inf 1.000000 -uR 10100.000000 60.000000 inf 1.000000 -uR 10125.000000 60.000000 inf 1.000000 -uR 10150.000000 60.000000 inf 1.000000 -uR 10175.000000 60.000000 inf 1.000000 -uR 10200.000000 60.000000 inf 1.000000 -uR 10225.000000 60.000000 inf 1.000000 -uR 10250.000000 60.000000 inf 1.000000 -uR 10275.000000 60.000000 inf 1.000000 -uR 10300.000000 60.000000 inf 1.000000 -uR 10325.000000 60.000000 inf 1.000000 -uR 10350.000000 60.000000 inf 1.000000 -uR 10375.000000 60.000000 inf 1.000000 -uR 10400.000000 60.000000 inf 1.000000 -uR 10425.000000 60.000000 inf 1.000000 -uR 10450.000000 60.000000 inf 1.000000 -uR 10475.000000 60.000000 inf 1.000000 -uR 10500.000000 60.000000 inf 1.000000 -uR 10525.000000 60.000000 inf 1.000000 -uR 10550.000000 60.000000 inf 1.000000 -uR 10575.000000 60.000000 inf 1.000000 -uR 10600.000000 60.000000 inf 1.000000 -uR 10625.000000 60.000000 inf 1.000000 -uR 10650.000000 60.000000 inf 1.000000 -uR 10675.000000 60.000000 inf 1.000000 -uR 10700.000000 60.000000 inf 1.000000 -uR 10725.000000 60.000000 inf 1.000000 -uR 10750.000000 60.000000 inf 1.000000 -uR 10775.000000 60.000000 inf 1.000000 -uR 10800.000000 60.000000 inf 1.000000 -uR 10825.000000 60.000000 inf 1.000000 -uR 10850.000000 60.000000 inf 1.000000 -uR 10875.000000 60.000000 inf 1.000000 -uR 10900.000000 60.000000 inf 1.000000 -uR 10925.000000 60.000000 inf 1.000000 -uR 10950.000000 60.000000 inf 1.000000 -uR 10975.000000 60.000000 inf 1.000000 -uR 11000.000000 60.000000 inf 1.000000 -uR 11025.000000 60.000000 inf 1.000000 -uR 11050.000000 60.000000 inf 1.000000 -uR 11075.000000 60.000000 inf 1.000000 -uR 11100.000000 60.000000 inf 1.000000 -uR 11125.000000 60.000000 inf 1.000000 -uR 11150.000000 60.000000 inf 1.000000 -uR 11175.000000 60.000000 inf 1.000000 -uR 11200.000000 60.000000 inf 1.000000 -uR 11225.000000 60.000000 inf 1.000000 -uR 11250.000000 60.000000 inf 1.000000 -uR 11275.000000 60.000000 inf 1.000000 -uR 11300.000000 60.000000 inf 1.000000 -uR 11325.000000 60.000000 inf 1.000000 -uR 11350.000000 60.000000 inf 1.000000 -uR 11375.000000 60.000000 inf 1.000000 -uR 11400.000000 60.000000 inf 1.000000 -uR 11425.000000 60.000000 inf 1.000000 -uR 11450.000000 60.000000 inf 1.000000 -uR 11475.000000 60.000000 inf 1.000000 -uR 11500.000000 60.000000 inf 1.000000 -uR 11525.000000 60.000000 inf 1.000000 -uR 11550.000000 60.000000 inf 1.000000 -uR 11575.000000 60.000000 inf 1.000000 -uR 11600.000000 60.000000 inf 1.000000 -uR 11625.000000 60.000000 inf 1.000000 -uR 11650.000000 60.000000 inf 1.000000 -uR 11675.000000 60.000000 inf 1.000000 -uR 11700.000000 60.000000 inf 1.000000 -uR 11725.000000 60.000000 inf 1.000000 -uR 11750.000000 60.000000 inf 1.000000 -uR 11775.000000 60.000000 inf 1.000000 -uR 11800.000000 60.000000 inf 1.000000 -uR 11825.000000 60.000000 inf 1.000000 -uR 11850.000000 60.000000 inf 1.000000 -uR 11875.000000 60.000000 inf 1.000000 -uR 11900.000000 60.000000 inf 1.000000 -uR 11925.000000 60.000000 inf 1.000000 -uR 11950.000000 60.000000 inf 1.000000 -uR 11975.000000 60.000000 inf 1.000000 -uR 12000.000000 60.000000 inf 1.000000 -uR 12025.000000 60.000000 inf 1.000000 -uR 12050.000000 60.000000 inf 1.000000 -uR 12075.000000 60.000000 inf 1.000000 -uR 12100.000000 60.000000 inf 1.000000 -uR 12125.000000 60.000000 inf 1.000000 -uR 12150.000000 60.000000 inf 1.000000 -uR 12175.000000 60.000000 inf 1.000000 -uR 12200.000000 60.000000 inf 1.000000 -uR 12225.000000 60.000000 inf 1.000000 -uR 12250.000000 60.000000 inf 1.000000 -uR 12275.000000 60.000000 inf 1.000000 -uR 12300.000000 60.000000 inf 1.000000 -uR 12325.000000 60.000000 inf 1.000000 -uR 12350.000000 60.000000 inf 1.000000 -uR 12375.000000 60.000000 inf 1.000000 -uR 12400.000000 60.000000 inf 1.000000 -uR 12425.000000 60.000000 inf 1.000000 -uR 12450.000000 60.000000 inf 1.000000 -uR 12475.000000 60.000000 inf 1.000000 -uR 12500.000000 60.000000 inf 1.000000 -uR 12525.000000 60.000000 inf 1.000000 -uR 12550.000000 60.000000 inf 1.000000 -uR 12575.000000 60.000000 inf 1.000000 -uR 12600.000000 60.000000 inf 1.000000 -uR 12625.000000 60.000000 inf 1.000000 -uR 12650.000000 60.000000 inf 1.000000 -uR 12675.000000 60.000000 inf 1.000000 -uR 12700.000000 60.000000 inf 1.000000 -uR 12725.000000 60.000000 inf 1.000000 -uR 12750.000000 60.000000 inf 1.000000 -uR 12775.000000 60.000000 inf 1.000000 -uR 12800.000000 60.000000 inf 1.000000 -uR 12825.000000 60.000000 inf 1.000000 -uR 12850.000000 60.000000 inf 1.000000 -uR 12875.000000 60.000000 inf 1.000000 -uR 12900.000000 60.000000 inf 1.000000 -uR 12925.000000 60.000000 inf 1.000000 -uR 12950.000000 60.000000 inf 1.000000 -uR 12975.000000 60.000000 inf 1.000000 -uR 13000.000000 60.000000 inf 1.000000 -uR 13025.000000 60.000000 inf 1.000000 -uR 13050.000000 60.000000 inf 1.000000 -uR 13075.000000 60.000000 inf 1.000000 -uR 13100.000000 60.000000 inf 1.000000 -uR 13125.000000 60.000000 inf 1.000000 -uR 13150.000000 60.000000 inf 1.000000 -uR 13175.000000 60.000000 inf 1.000000 -uR 13200.000000 60.000000 inf 1.000000 -uR 13225.000000 60.000000 inf 1.000000 -uR 13250.000000 60.000000 inf 1.000000 -uR 13275.000000 60.000000 inf 1.000000 -uR 13300.000000 60.000000 inf 1.000000 -uR 13325.000000 60.000000 inf 1.000000 -uR 13350.000000 60.000000 inf 1.000000 -uR 13375.000000 60.000000 inf 1.000000 -uR 13400.000000 60.000000 inf 1.000000 -uR 13425.000000 60.000000 inf 1.000000 -uR 13450.000000 60.000000 inf 1.000000 -uR 13475.000000 60.000000 inf 1.000000 -uR 13500.000000 60.000000 inf 1.000000 -uR 13525.000000 60.000000 inf 1.000000 -uR 13550.000000 60.000000 inf 1.000000 -uR 13575.000000 60.000000 inf 1.000000 -uR 13600.000000 60.000000 inf 1.000000 -uR 13625.000000 60.000000 inf 1.000000 -uR 13650.000000 60.000000 inf 1.000000 -uR 13675.000000 60.000000 inf 1.000000 -uR 13700.000000 60.000000 inf 1.000000 -uR 13725.000000 60.000000 inf 1.000000 -uR 13750.000000 60.000000 inf 1.000000 -uR 13775.000000 60.000000 inf 1.000000 -uR 13800.000000 60.000000 inf 1.000000 -uR 13825.000000 60.000000 inf 1.000000 -uR 13850.000000 60.000000 inf 1.000000 -uR 13875.000000 60.000000 inf 1.000000 -uR 13900.000000 60.000000 inf 1.000000 -uR 13925.000000 60.000000 inf 1.000000 -uR 13950.000000 60.000000 inf 1.000000 -uR 13975.000000 60.000000 inf 1.000000 -uR 14000.000000 60.000000 inf 1.000000 -uR 14025.000000 60.000000 inf 1.000000 -uR 14050.000000 60.000000 inf 1.000000 -uR 14075.000000 60.000000 inf 1.000000 -uR 14100.000000 60.000000 inf 1.000000 -uR 14125.000000 60.000000 inf 1.000000 -uR 14150.000000 60.000000 inf 1.000000 -uR 14175.000000 60.000000 inf 1.000000 -uR 14200.000000 60.000000 inf 1.000000 -uR 14225.000000 60.000000 inf 1.000000 -uR 14250.000000 60.000000 inf 1.000000 -uR 14275.000000 60.000000 inf 1.000000 -uR 14300.000000 60.000000 inf 1.000000 -uR 14325.000000 60.000000 inf 1.000000 -uR 14350.000000 60.000000 inf 1.000000 -uR 14375.000000 60.000000 inf 1.000000 -uR 14400.000000 60.000000 inf 1.000000 -uR 14425.000000 60.000000 inf 1.000000 -uR 14450.000000 60.000000 inf 1.000000 -uR 14475.000000 60.000000 inf 1.000000 -uR 14500.000000 60.000000 inf 1.000000 -uR 14525.000000 60.000000 inf 1.000000 -uR 14550.000000 60.000000 inf 1.000000 -uR 14575.000000 60.000000 inf 1.000000 -uR 14600.000000 60.000000 inf 1.000000 -uR 14625.000000 60.000000 inf 1.000000 -uR 14650.000000 60.000000 inf 1.000000 -uR 14675.000000 60.000000 inf 1.000000 -uR 14700.000000 60.000000 inf 1.000000 -uR 14725.000000 60.000000 inf 1.000000 -uR 14750.000000 60.000000 inf 1.000000 -uR 14775.000000 60.000000 inf 1.000000 -uR 14800.000000 60.000000 inf 1.000000 -uR 14825.000000 60.000000 inf 1.000000 -uR 14850.000000 60.000000 inf 1.000000 -uR 14875.000000 60.000000 inf 1.000000 -uR 14900.000000 60.000000 inf 1.000000 -uR 14925.000000 60.000000 inf 1.000000 -uR 14950.000000 60.000000 inf 1.000000 -uR 14975.000000 60.000000 inf 1.000000 -uR 15000.000000 60.000000 inf 1.000000 -uR 15025.000000 60.000000 inf 1.000000 -uR 15050.000000 60.000000 inf 1.000000 -uR 15075.000000 60.000000 inf 1.000000 -uR 15100.000000 60.000000 inf 1.000000 -uR 15125.000000 60.000000 inf 1.000000 -uR 15150.000000 60.000000 inf 1.000000 -uR 15175.000000 60.000000 inf 1.000000 -uR 15200.000000 60.000000 inf 1.000000 -uR 15225.000000 60.000000 inf 1.000000 -uR 15250.000000 60.000000 inf 1.000000 -uR 15275.000000 60.000000 inf 1.000000 -uR 15300.000000 60.000000 inf 1.000000 -uR 15325.000000 60.000000 inf 1.000000 -uR 15350.000000 60.000000 inf 1.000000 -uR 15375.000000 60.000000 inf 1.000000 -uR 15400.000000 60.000000 inf 1.000000 -uR 15425.000000 60.000000 inf 1.000000 -uR 15450.000000 60.000000 inf 1.000000 -uR 15475.000000 60.000000 inf 1.000000 -uR 15500.000000 60.000000 inf 1.000000 -uR 15525.000000 60.000000 inf 1.000000 -uR 15550.000000 60.000000 inf 1.000000 -uR 15575.000000 60.000000 inf 1.000000 -uR 15600.000000 60.000000 inf 1.000000 -uR 15625.000000 60.000000 inf 1.000000 -uR 15650.000000 60.000000 inf 1.000000 -uR 15675.000000 60.000000 inf 1.000000 -uR 15700.000000 60.000000 inf 1.000000 -uR 15725.000000 60.000000 inf 1.000000 -uR 15750.000000 60.000000 inf 1.000000 -uR 15775.000000 60.000000 inf 1.000000 -uR 15800.000000 60.000000 inf 1.000000 -uR 15825.000000 60.000000 inf 1.000000 -uR 15850.000000 60.000000 inf 1.000000 -uR 15875.000000 60.000000 inf 1.000000 -uR 15900.000000 60.000000 inf 1.000000 -uR 15925.000000 60.000000 inf 1.000000 -uR 15950.000000 60.000000 inf 1.000000 -uR 15975.000000 60.000000 inf 1.000000 -uR 16000.000000 60.000000 inf 1.000000 -uR 16025.000000 60.000000 inf 1.000000 -uR 16050.000000 60.000000 inf 1.000000 -uR 16075.000000 60.000000 inf 1.000000 -uR 16100.000000 60.000000 inf 1.000000 -uR 16125.000000 60.000000 inf 1.000000 -uR 16150.000000 60.000000 inf 1.000000 -uR 16175.000000 60.000000 inf 1.000000 -uR 16200.000000 60.000000 inf 1.000000 -uR 16225.000000 60.000000 inf 1.000000 -uR 16250.000000 60.000000 inf 1.000000 -uR 16275.000000 60.000000 inf 1.000000 -uR 16300.000000 60.000000 inf 1.000000 -uR 16325.000000 60.000000 inf 1.000000 -uR 16350.000000 60.000000 inf 1.000000 -uR 16375.000000 60.000000 inf 1.000000 -uR 16400.000000 60.000000 inf 1.000000 -uR 16425.000000 60.000000 inf 1.000000 -uR 16450.000000 60.000000 inf 1.000000 -uR 16475.000000 60.000000 inf 1.000000 -uR 16500.000000 60.000000 inf 1.000000 -uR 16525.000000 60.000000 inf 1.000000 -uR 16550.000000 60.000000 inf 1.000000 -uR 16575.000000 60.000000 inf 1.000000 -uR 16600.000000 60.000000 inf 1.000000 -uR 16625.000000 60.000000 inf 1.000000 -uR 16650.000000 60.000000 inf 1.000000 -uR 16675.000000 60.000000 inf 1.000000 -uR 16700.000000 60.000000 inf 1.000000 -uR 16725.000000 60.000000 inf 1.000000 -uR 16750.000000 60.000000 inf 1.000000 -uR 16775.000000 60.000000 inf 1.000000 -uR 16800.000000 60.000000 inf 1.000000 -uR 16825.000000 60.000000 inf 1.000000 -uR 16850.000000 60.000000 inf 1.000000 -uR 16875.000000 60.000000 inf 1.000000 -uR 16900.000000 60.000000 inf 1.000000 -uR 16925.000000 60.000000 inf 1.000000 -uR 16950.000000 60.000000 inf 1.000000 -uR 16975.000000 60.000000 inf 1.000000 -uR 17000.000000 60.000000 inf 1.000000 -uR 1930.000000 70.000000 inf 1.000000 -uR 1940.000000 70.000000 inf 1.000000 -uR 1950.000000 70.000000 inf 1.000000 -uR 1960.000000 70.000000 inf 1.000000 -uR 1970.000000 70.000000 inf 1.000000 -uR 1980.000000 70.000000 inf 1.000000 -uR 1990.000000 70.000000 inf 1.000000 -uR 2000.000000 70.000000 inf 1.000000 -uR 2010.000000 70.000000 inf 1.000000 -uR 2020.000000 70.000000 inf 1.000000 -uR 2030.000000 70.000000 inf 1.000000 -uR 2040.000000 70.000000 inf 1.000000 -uR 2050.000000 70.000000 inf 1.000000 -uR 2060.000000 70.000000 inf 1.000000 -uR 2070.000000 70.000000 inf 1.000000 -uR 2080.000000 70.000000 inf 1.000000 -uR 2090.000000 70.000000 inf 1.000000 -uR 2100.000000 70.000000 inf 1.000000 -uR 2110.000000 70.000000 inf 1.000000 -uR 2120.000000 70.000000 inf 1.000000 -uR 2130.000000 70.000000 inf 1.000000 -uR 2140.000000 70.000000 inf 1.000000 -uR 2150.000000 70.000000 inf 1.000000 -uR 2160.000000 70.000000 inf 1.000000 -uR 2170.000000 70.000000 inf 1.000000 -uR 2180.000000 70.000000 inf 1.000000 -uR 2190.000000 70.000000 inf 1.000000 -uR 2200.000000 70.000000 inf 1.000000 -uR 2210.000000 70.000000 inf 1.000000 -uR 2220.000000 70.000000 inf 1.000000 -uR 2230.000000 70.000000 inf 1.000000 -uR 2240.000000 70.000000 inf 1.000000 -uR 2250.000000 70.000000 inf 1.000000 -uR 2260.000000 70.000000 inf 1.000000 -uR 2270.000000 70.000000 inf 1.000000 -uR 2280.000000 70.000000 inf 1.000000 -uR 2290.000000 70.000000 inf 1.000000 -uR 2300.000000 70.000000 inf 1.000000 -uR 2310.000000 70.000000 inf 1.000000 -uR 2320.000000 70.000000 inf 1.000000 -uR 2330.000000 70.000000 inf 1.000000 -uR 2340.000000 70.000000 inf 1.000000 -uR 2350.000000 70.000000 inf 1.000000 -uR 2360.000000 70.000000 inf 1.000000 -uR 2370.000000 70.000000 inf 1.000000 -uR 2380.000000 70.000000 inf 1.000000 -uR 2390.000000 70.000000 inf 1.000000 -uR 2400.000000 70.000000 inf 1.000000 -uR 2410.000000 70.000000 inf 1.000000 -uR 2420.000000 70.000000 inf 1.000000 -uR 2430.000000 70.000000 inf 1.000000 -uR 2440.000000 70.000000 inf 1.000000 -uR 2450.000000 70.000000 inf 1.000000 -uR 2460.000000 70.000000 inf 1.000000 -uR 2470.000000 70.000000 inf 1.000000 -uR 2480.000000 70.000000 inf 1.000000 -uR 2490.000000 70.000000 inf 1.000000 -uR 2500.000000 70.000000 inf 1.000000 -uR 2510.000000 70.000000 inf 1.000000 -uR 2520.000000 70.000000 inf 1.000000 -uR 2530.000000 70.000000 inf 1.000000 -uR 2540.000000 70.000000 inf 1.000000 -uR 2550.000000 70.000000 inf 1.000000 -uR 2560.000000 70.000000 inf 1.000000 -uR 2570.000000 70.000000 inf 1.000000 -uR 2580.000000 70.000000 inf 1.000000 -uR 2590.000000 70.000000 inf 1.000000 -uR 2600.000000 70.000000 inf 1.000000 -uR 2610.000000 70.000000 inf 1.000000 -uR 2620.000000 70.000000 inf 1.000000 -uR 2630.000000 70.000000 inf 1.000000 -uR 2640.000000 70.000000 inf 1.000000 -uR 2650.000000 70.000000 inf 1.000000 -uR 2660.000000 70.000000 inf 1.000000 -uR 2670.000000 70.000000 inf 1.000000 -uR 2680.000000 70.000000 inf 1.000000 -uR 2690.000000 70.000000 inf 1.000000 -uR 2700.000000 70.000000 inf 1.000000 -uR 2710.000000 70.000000 inf 1.000000 -uR 2720.000000 70.000000 inf 1.000000 -uR 2730.000000 70.000000 inf 1.000000 -uR 2740.000000 70.000000 inf 1.000000 -uR 2750.000000 70.000000 inf 1.000000 -uR 2760.000000 70.000000 inf 1.000000 -uR 2770.000000 70.000000 inf 1.000000 -uR 2780.000000 70.000000 inf 1.000000 -uR 2790.000000 70.000000 inf 1.000000 -uR 2800.000000 70.000000 inf 1.000000 -uR 2810.000000 70.000000 inf 1.000000 -uR 2820.000000 70.000000 inf 1.000000 -uR 2830.000000 70.000000 inf 1.000000 -uR 2840.000000 70.000000 inf 1.000000 -uR 2850.000000 70.000000 inf 1.000000 -uR 2860.000000 70.000000 inf 1.000000 -uR 2870.000000 70.000000 inf 1.000000 -uR 2880.000000 70.000000 inf 1.000000 -uR 2890.000000 70.000000 inf 1.000000 -uR 2900.000000 70.000000 inf 1.000000 -uR 2910.000000 70.000000 inf 1.000000 -uR 2920.000000 70.000000 inf 1.000000 -uR 2930.000000 70.000000 inf 1.000000 -uR 2940.000000 70.000000 inf 1.000000 -uR 2950.000000 70.000000 inf 1.000000 -uR 2960.000000 70.000000 inf 1.000000 -uR 2970.000000 70.000000 inf 1.000000 -uR 2980.000000 70.000000 inf 1.000000 -uR 2990.000000 70.000000 inf 1.000000 -uR 3000.000000 70.000000 inf 1.000000 -uR 3010.000000 70.000000 inf 1.000000 -uR 3020.000000 70.000000 inf 1.000000 -uR 3030.000000 70.000000 inf 1.000000 -uR 3040.000000 70.000000 inf 1.000000 -uR 3050.000000 70.000000 inf 1.000000 -uR 3060.000000 70.000000 inf 1.000000 -uR 3070.000000 70.000000 inf 1.000000 -uR 3080.000000 70.000000 inf 1.000000 -uR 3090.000000 70.000000 inf 1.000000 -uR 3100.000000 70.000000 inf 1.000000 -uR 3110.000000 70.000000 inf 1.000000 -uR 3120.000000 70.000000 inf 1.000000 -uR 3130.000000 70.000000 inf 1.000000 -uR 3140.000000 70.000000 inf 1.000000 -uR 3150.000000 70.000000 inf 1.000000 -uR 3160.000000 70.000000 inf 1.000000 -uR 3170.000000 70.000000 inf 1.000000 -uR 3180.000000 70.000000 inf 1.000000 -uR 3190.000000 70.000000 inf 1.000000 -uR 3200.000000 70.000000 inf 1.000000 -uR 3210.000000 70.000000 inf 1.000000 -uR 3220.000000 70.000000 inf 1.000000 -uR 3230.000000 70.000000 inf 1.000000 -uR 3240.000000 70.000000 inf 1.000000 -uR 3250.000000 70.000000 inf 1.000000 -uR 3260.000000 70.000000 inf 1.000000 -uR 3270.000000 70.000000 inf 1.000000 -uR 3280.000000 70.000000 inf 1.000000 -uR 3290.000000 70.000000 inf 1.000000 -uR 3300.000000 70.000000 inf 1.000000 -uR 3310.000000 70.000000 inf 1.000000 -uR 3320.000000 70.000000 inf 1.000000 -uR 3330.000000 70.000000 inf 1.000000 -uR 3340.000000 70.000000 inf 1.000000 -uR 3350.000000 70.000000 inf 1.000000 -uR 3360.000000 70.000000 inf 1.000000 -uR 3370.000000 70.000000 inf 1.000000 -uR 3380.000000 70.000000 inf 1.000000 -uR 3390.000000 70.000000 inf 1.000000 -uR 3400.000000 70.000000 inf 1.000000 -uR 3410.000000 70.000000 inf 1.000000 -uR 3420.000000 70.000000 inf 1.000000 -uR 3430.000000 70.000000 inf 1.000000 -uR 3440.000000 70.000000 inf 1.000000 -uR 3450.000000 70.000000 inf 1.000000 -uR 3460.000000 70.000000 inf 1.000000 -uR 3470.000000 70.000000 inf 1.000000 -uR 3480.000000 70.000000 inf 1.000000 -uR 3490.000000 70.000000 inf 1.000000 -uR 3500.000000 70.000000 inf 1.000000 -uR 3510.000000 70.000000 inf 1.000000 -uR 3520.000000 70.000000 inf 1.000000 -uR 3530.000000 70.000000 inf 1.000000 -uR 3540.000000 70.000000 inf 1.000000 -uR 3550.000000 70.000000 inf 1.000000 -uR 3560.000000 70.000000 inf 1.000000 -uR 3570.000000 70.000000 inf 1.000000 -uR 3580.000000 70.000000 inf 1.000000 -uR 3590.000000 70.000000 inf 1.000000 -uR 3600.000000 70.000000 inf 1.000000 -uR 3610.000000 70.000000 inf 1.000000 -uR 3620.000000 70.000000 inf 1.000000 -uR 3630.000000 70.000000 inf 1.000000 -uR 3640.000000 70.000000 inf 1.000000 -uR 3650.000000 70.000000 inf 1.000000 -uR 3660.000000 70.000000 inf 1.000000 -uR 3670.000000 70.000000 inf 1.000000 -uR 3680.000000 70.000000 inf 1.000000 -uR 3690.000000 70.000000 inf 1.000000 -uR 3700.000000 70.000000 inf 1.000000 -uR 3710.000000 70.000000 inf 1.000000 -uR 3720.000000 70.000000 inf 1.000000 -uR 3730.000000 70.000000 inf 1.000000 -uR 3740.000000 70.000000 inf 1.000000 -uR 3750.000000 70.000000 inf 1.000000 -uR 3760.000000 70.000000 inf 1.000000 -uR 3770.000000 70.000000 inf 1.000000 -uR 3780.000000 70.000000 inf 1.000000 -uR 3790.000000 70.000000 inf 1.000000 -uR 3800.000000 70.000000 inf 1.000000 -uR 3810.000000 70.000000 inf 1.000000 -uR 3820.000000 70.000000 inf 1.000000 -uR 3830.000000 70.000000 inf 1.000000 -uR 3840.000000 70.000000 inf 1.000000 -uR 3850.000000 70.000000 inf 1.000000 -uR 3860.000000 70.000000 inf 1.000000 -uR 3870.000000 70.000000 inf 1.000000 -uR 3880.000000 70.000000 inf 1.000000 -uR 3890.000000 70.000000 inf 1.000000 -uR 3900.000000 70.000000 inf 1.000000 -uR 3910.000000 70.000000 inf 1.000000 -uR 3920.000000 70.000000 inf 1.000000 -uR 3930.000000 70.000000 inf 1.000000 -uR 3940.000000 70.000000 inf 1.000000 -uR 3950.000000 70.000000 inf 1.000000 -uR 3960.000000 70.000000 inf 1.000000 -uR 3970.000000 70.000000 inf 1.000000 -uR 3980.000000 70.000000 inf 1.000000 -uR 3990.000000 70.000000 inf 1.000000 -uR 4000.000000 70.000000 inf 1.000000 -uR 4010.000000 70.000000 inf 1.000000 -uR 4020.000000 70.000000 inf 1.000000 -uR 4030.000000 70.000000 inf 1.000000 -uR 4040.000000 70.000000 inf 1.000000 -uR 4050.000000 70.000000 inf 1.000000 -uR 4060.000000 70.000000 inf 1.000000 -uR 4070.000000 70.000000 inf 1.000000 -uR 4080.000000 70.000000 inf 1.000000 -uR 4090.000000 70.000000 inf 1.000000 -uR 4100.000000 70.000000 inf 1.000000 -uR 4110.000000 70.000000 inf 1.000000 -uR 4120.000000 70.000000 inf 1.000000 -uR 4130.000000 70.000000 inf 1.000000 -uR 4140.000000 70.000000 inf 1.000000 -uR 4150.000000 70.000000 inf 1.000000 -uR 4160.000000 70.000000 inf 1.000000 -uR 4170.000000 70.000000 inf 1.000000 -uR 4180.000000 70.000000 inf 1.000000 -uR 4190.000000 70.000000 inf 1.000000 -uR 4200.000000 70.000000 inf 1.000000 -uR 4210.000000 70.000000 inf 1.000000 -uR 4220.000000 70.000000 inf 1.000000 -uR 4230.000000 70.000000 inf 1.000000 -uR 4240.000000 70.000000 inf 1.000000 -uR 4250.000000 70.000000 inf 1.000000 -uR 4260.000000 70.000000 inf 1.000000 -uR 4270.000000 70.000000 inf 1.000000 -uR 4280.000000 70.000000 inf 1.000000 -uR 4290.000000 70.000000 inf 1.000000 -uR 4300.000000 70.000000 inf 1.000000 -uR 4310.000000 70.000000 inf 1.000000 -uR 4320.000000 70.000000 inf 1.000000 -uR 4330.000000 70.000000 inf 1.000000 -uR 4340.000000 70.000000 inf 1.000000 -uR 4350.000000 70.000000 inf 1.000000 -uR 4360.000000 70.000000 inf 1.000000 -uR 4370.000000 70.000000 inf 1.000000 -uR 4380.000000 70.000000 inf 1.000000 -uR 4390.000000 70.000000 inf 1.000000 -uR 4400.000000 70.000000 inf 1.000000 -uR 4410.000000 70.000000 inf 1.000000 -uR 4420.000000 70.000000 inf 1.000000 -uR 4430.000000 70.000000 inf 1.000000 -uR 4440.000000 70.000000 inf 1.000000 -uR 4450.000000 70.000000 inf 1.000000 -uR 4460.000000 70.000000 inf 1.000000 -uR 4470.000000 70.000000 inf 1.000000 -uR 4480.000000 70.000000 inf 1.000000 -uR 4490.000000 70.000000 inf 1.000000 -uR 4500.000000 70.000000 inf 1.000000 -uR 4510.000000 70.000000 inf 1.000000 -uR 4520.000000 70.000000 inf 1.000000 -uR 4530.000000 70.000000 inf 1.000000 -uR 4540.000000 70.000000 inf 1.000000 -uR 4550.000000 70.000000 inf 1.000000 -uR 4560.000000 70.000000 inf 1.000000 -uR 4570.000000 70.000000 inf 1.000000 -uR 4580.000000 70.000000 inf 1.000000 -uR 4590.000000 70.000000 inf 1.000000 -uR 4600.000000 70.000000 inf 1.000000 -uR 4610.000000 70.000000 inf 1.000000 -uR 4620.000000 70.000000 inf 1.000000 -uR 4630.000000 70.000000 inf 1.000000 -uR 4640.000000 70.000000 inf 1.000000 -uR 4650.000000 70.000000 inf 1.000000 -uR 4660.000000 70.000000 inf 1.000000 -uR 4670.000000 70.000000 inf 1.000000 -uR 4680.000000 70.000000 inf 1.000000 -uR 4690.000000 70.000000 inf 1.000000 -uR 4700.000000 70.000000 inf 1.000000 -uR 4710.000000 70.000000 inf 1.000000 -uR 4720.000000 70.000000 inf 1.000000 -uR 4730.000000 70.000000 inf 1.000000 -uR 4740.000000 70.000000 inf 1.000000 -uR 4750.000000 70.000000 inf 1.000000 -uR 4760.000000 70.000000 inf 1.000000 -uR 4770.000000 70.000000 inf 1.000000 -uR 4780.000000 70.000000 inf 1.000000 -uR 4790.000000 70.000000 inf 1.000000 -uR 4800.000000 70.000000 inf 1.000000 -uR 4810.000000 70.000000 inf 1.000000 -uR 4820.000000 70.000000 inf 1.000000 -uR 4830.000000 70.000000 inf 1.000000 -uR 4840.000000 70.000000 inf 1.000000 -uR 4850.000000 70.000000 inf 1.000000 -uR 4860.000000 70.000000 inf 1.000000 -uR 4870.000000 70.000000 inf 1.000000 -uR 4880.000000 70.000000 inf 1.000000 -uR 4890.000000 70.000000 inf 1.000000 -uR 4900.000000 70.000000 inf 1.000000 -uR 4910.000000 70.000000 inf 1.000000 -uR 4920.000000 70.000000 inf 1.000000 -uR 4930.000000 70.000000 inf 1.000000 -uR 4940.000000 70.000000 inf 1.000000 -uR 4950.000000 70.000000 inf 1.000000 -uR 4960.000000 70.000000 inf 1.000000 -uR 4970.000000 70.000000 inf 1.000000 -uR 4980.000000 70.000000 inf 1.000000 -uR 4990.000000 70.000000 inf 1.000000 -uR 5000.000000 70.000000 inf 1.000000 -uR 5010.000000 70.000000 inf 1.000000 -uR 5020.000000 70.000000 inf 1.000000 -uR 5030.000000 70.000000 inf 1.000000 -uR 5040.000000 70.000000 inf 1.000000 -uR 5050.000000 70.000000 inf 1.000000 -uR 5060.000000 70.000000 inf 1.000000 -uR 5070.000000 70.000000 inf 1.000000 -uR 5080.000000 70.000000 inf 1.000000 -uR 5090.000000 70.000000 inf 1.000000 -uR 5100.000000 70.000000 inf 1.000000 -uR 5110.000000 70.000000 inf 1.000000 -uR 5120.000000 70.000000 inf 1.000000 -uR 5130.000000 70.000000 inf 1.000000 -uR 5140.000000 70.000000 inf 1.000000 -uR 5150.000000 70.000000 inf 1.000000 -uR 5160.000000 70.000000 inf 1.000000 -uR 5170.000000 70.000000 inf 1.000000 -uR 5180.000000 70.000000 inf 1.000000 -uR 5190.000000 70.000000 inf 1.000000 -uR 5200.000000 70.000000 inf 1.000000 -uR 5210.000000 70.000000 inf 1.000000 -uR 5220.000000 70.000000 inf 1.000000 -uR 5230.000000 70.000000 inf 1.000000 -uR 5240.000000 70.000000 inf 1.000000 -uR 5250.000000 70.000000 inf 1.000000 -uR 5260.000000 70.000000 inf 1.000000 -uR 5270.000000 70.000000 inf 1.000000 -uR 5280.000000 70.000000 inf 1.000000 -uR 5290.000000 70.000000 inf 1.000000 -uR 5300.000000 70.000000 inf 1.000000 -uR 5310.000000 70.000000 inf 1.000000 -uR 5320.000000 70.000000 inf 1.000000 -uR 5330.000000 70.000000 inf 1.000000 -uR 5340.000000 70.000000 inf 1.000000 -uR 5350.000000 70.000000 inf 1.000000 -uR 5360.000000 70.000000 inf 1.000000 -uR 5370.000000 70.000000 inf 1.000000 -uR 5380.000000 70.000000 inf 1.000000 -uR 5390.000000 70.000000 inf 1.000000 -uR 5400.000000 70.000000 inf 1.000000 -uR 5410.000000 70.000000 inf 1.000000 -uR 5420.000000 70.000000 inf 1.000000 -uR 5430.000000 70.000000 inf 1.000000 -uR 5440.000000 70.000000 inf 1.000000 -uR 5450.000000 70.000000 inf 1.000000 -uR 5460.000000 70.000000 inf 1.000000 -uR 5470.000000 70.000000 inf 1.000000 -uR 5480.000000 70.000000 inf 1.000000 -uR 5490.000000 70.000000 inf 1.000000 -uR 5500.000000 70.000000 inf 1.000000 -uR 5510.000000 70.000000 inf 1.000000 -uR 5520.000000 70.000000 inf 1.000000 -uR 5530.000000 70.000000 inf 1.000000 -uR 5540.000000 70.000000 inf 1.000000 -uR 5550.000000 70.000000 inf 1.000000 -uR 5560.000000 70.000000 inf 1.000000 -uR 5570.000000 70.000000 inf 1.000000 -uR 5580.000000 70.000000 inf 1.000000 -uR 5590.000000 70.000000 inf 1.000000 -uR 5600.000000 70.000000 inf 1.000000 -uR 5610.000000 70.000000 inf 1.000000 -uR 5620.000000 70.000000 inf 1.000000 -uR 5630.000000 70.000000 inf 1.000000 -uR 5640.000000 70.000000 inf 1.000000 -uR 5650.000000 70.000000 inf 1.000000 -uR 5660.000000 70.000000 inf 1.000000 -uR 5670.000000 70.000000 inf 1.000000 -uR 5680.000000 70.000000 inf 1.000000 -uR 5690.000000 70.000000 inf 1.000000 -uR 5700.000000 70.000000 inf 1.000000 -uR 5710.000000 70.000000 inf 1.000000 -uR 5720.000000 70.000000 inf 1.000000 -uR 5730.000000 70.000000 inf 1.000000 -uR 5740.000000 70.000000 inf 1.000000 -uR 5750.000000 70.000000 inf 1.000000 -uR 5760.000000 70.000000 inf 1.000000 -uR 5770.000000 70.000000 inf 1.000000 -uR 5780.000000 70.000000 inf 1.000000 -uR 5790.000000 70.000000 inf 1.000000 -uR 5800.000000 70.000000 inf 1.000000 -uR 5810.000000 70.000000 inf 1.000000 -uR 5820.000000 70.000000 inf 1.000000 -uR 5830.000000 70.000000 inf 1.000000 -uR 5840.000000 70.000000 inf 1.000000 -uR 5850.000000 70.000000 inf 1.000000 -uR 5860.000000 70.000000 inf 1.000000 -uR 5870.000000 70.000000 inf 1.000000 -uR 5880.000000 70.000000 inf 1.000000 -uR 5890.000000 70.000000 inf 1.000000 -uR 5900.000000 70.000000 inf 1.000000 -uR 5910.000000 70.000000 inf 1.000000 -uR 5920.000000 70.000000 inf 1.000000 -uR 5930.000000 70.000000 inf 1.000000 -uR 5940.000000 70.000000 inf 1.000000 -uR 5950.000000 70.000000 inf 1.000000 -uR 5960.000000 70.000000 inf 1.000000 -uR 5970.000000 70.000000 inf 1.000000 -uR 5980.000000 70.000000 inf 1.000000 -uR 5990.000000 70.000000 inf 1.000000 -uR 6000.000000 70.000000 inf 1.000000 -uR 6010.000000 70.000000 inf 1.000000 -uR 6020.000000 70.000000 inf 1.000000 -uR 6030.000000 70.000000 inf 1.000000 -uR 6040.000000 70.000000 inf 1.000000 -uR 6050.000000 70.000000 inf 1.000000 -uR 6060.000000 70.000000 inf 1.000000 -uR 6070.000000 70.000000 inf 1.000000 -uR 6080.000000 70.000000 inf 1.000000 -uR 6090.000000 70.000000 inf 1.000000 -uR 6100.000000 70.000000 inf 1.000000 -uR 6110.000000 70.000000 inf 1.000000 -uR 6120.000000 70.000000 inf 1.000000 -uR 6130.000000 70.000000 inf 1.000000 -uR 6140.000000 70.000000 inf 1.000000 -uR 6150.000000 70.000000 inf 1.000000 -uR 6160.000000 70.000000 inf 1.000000 -uR 6170.000000 70.000000 inf 1.000000 -uR 6180.000000 70.000000 inf 1.000000 -uR 6190.000000 70.000000 inf 1.000000 -uR 6200.000000 70.000000 inf 1.000000 -uR 6210.000000 70.000000 inf 1.000000 -uR 6220.000000 70.000000 inf 1.000000 -uR 6230.000000 70.000000 inf 1.000000 -uR 6240.000000 70.000000 inf 1.000000 -uR 6250.000000 70.000000 inf 1.000000 -uR 6260.000000 70.000000 inf 1.000000 -uR 6270.000000 70.000000 inf 1.000000 -uR 6280.000000 70.000000 inf 1.000000 -uR 6290.000000 70.000000 inf 1.000000 -uR 6300.000000 70.000000 inf 1.000000 -uR 6310.000000 70.000000 inf 1.000000 -uR 6320.000000 70.000000 inf 1.000000 -uR 6330.000000 70.000000 inf 1.000000 -uR 6340.000000 70.000000 inf 1.000000 -uR 6350.000000 70.000000 inf 1.000000 -uR 6360.000000 70.000000 inf 1.000000 -uR 6370.000000 70.000000 inf 1.000000 -uR 6380.000000 70.000000 inf 1.000000 -uR 6390.000000 70.000000 inf 1.000000 -uR 6400.000000 70.000000 inf 1.000000 -uR 6410.000000 70.000000 inf 1.000000 -uR 6420.000000 70.000000 inf 1.000000 -uR 6430.000000 70.000000 inf 1.000000 -uR 6440.000000 70.000000 inf 1.000000 -uR 6450.000000 70.000000 inf 1.000000 -uR 6460.000000 70.000000 inf 1.000000 -uR 6470.000000 70.000000 inf 1.000000 -uR 6480.000000 70.000000 inf 1.000000 -uR 6490.000000 70.000000 inf 1.000000 -uR 6500.000000 70.000000 inf 1.000000 -uR 6510.000000 70.000000 inf 1.000000 -uR 6520.000000 70.000000 inf 1.000000 -uR 6530.000000 70.000000 inf 1.000000 -uR 6540.000000 70.000000 inf 1.000000 -uR 6550.000000 70.000000 inf 1.000000 -uR 6560.000000 70.000000 inf 1.000000 -uR 6570.000000 70.000000 inf 1.000000 -uR 6580.000000 70.000000 inf 1.000000 -uR 6590.000000 70.000000 inf 1.000000 -uR 6600.000000 70.000000 inf 1.000000 -uR 6610.000000 70.000000 inf 1.000000 -uR 6620.000000 70.000000 inf 1.000000 -uR 6630.000000 70.000000 inf 1.000000 -uR 6640.000000 70.000000 inf 1.000000 -uR 6650.000000 70.000000 inf 1.000000 -uR 6660.000000 70.000000 inf 1.000000 -uR 6670.000000 70.000000 inf 1.000000 -uR 6680.000000 70.000000 inf 1.000000 -uR 6690.000000 70.000000 inf 1.000000 -uR 6700.000000 70.000000 inf 1.000000 -uR 6710.000000 70.000000 inf 1.000000 -uR 6720.000000 70.000000 inf 1.000000 -uR 6730.000000 70.000000 inf 1.000000 -uR 6740.000000 70.000000 inf 1.000000 -uR 6750.000000 70.000000 inf 1.000000 -uR 6760.000000 70.000000 inf 1.000000 -uR 6770.000000 70.000000 inf 1.000000 -uR 6780.000000 70.000000 inf 1.000000 -uR 6790.000000 70.000000 inf 1.000000 -uR 6800.000000 70.000000 inf 1.000000 -uR 6810.000000 70.000000 inf 1.000000 -uR 6820.000000 70.000000 inf 1.000000 -uR 6830.000000 70.000000 inf 1.000000 -uR 6840.000000 70.000000 inf 1.000000 -uR 6850.000000 70.000000 inf 1.000000 -uR 6860.000000 70.000000 inf 1.000000 -uR 6870.000000 70.000000 inf 1.000000 -uR 6880.000000 70.000000 inf 1.000000 -uR 6890.000000 70.000000 inf 1.000000 -uR 6900.000000 70.000000 inf 1.000000 -uR 6910.000000 70.000000 inf 1.000000 -uR 6920.000000 70.000000 inf 1.000000 -uR 6930.000000 70.000000 inf 1.000000 -uR 6940.000000 70.000000 inf 1.000000 -uR 6950.000000 70.000000 inf 1.000000 -uR 6960.000000 70.000000 inf 1.000000 -uR 6970.000000 70.000000 inf 1.000000 -uR 6980.000000 70.000000 inf 1.000000 -uR 6990.000000 70.000000 inf 1.000000 -uR 7000.000000 70.000000 inf 1.000000 -uR 7010.000000 70.000000 inf 1.000000 -uR 7020.000000 70.000000 inf 1.000000 -uR 7030.000000 70.000000 inf 1.000000 -uR 7040.000000 70.000000 inf 1.000000 -uR 7050.000000 70.000000 inf 1.000000 -uR 7060.000000 70.000000 inf 1.000000 -uR 7070.000000 70.000000 inf 1.000000 -uR 7080.000000 70.000000 inf 1.000000 -uR 7090.000000 70.000000 inf 1.000000 -uR 7100.000000 70.000000 inf 1.000000 -uR 7110.000000 70.000000 inf 1.000000 -uR 7120.000000 70.000000 inf 1.000000 -uR 7130.000000 70.000000 inf 1.000000 -uR 7140.000000 70.000000 inf 1.000000 -uR 7150.000000 70.000000 inf 1.000000 -uR 7160.000000 70.000000 inf 1.000000 -uR 7170.000000 70.000000 inf 1.000000 -uR 7180.000000 70.000000 inf 1.000000 -uR 7190.000000 70.000000 inf 1.000000 -uR 7200.000000 70.000000 inf 1.000000 -uR 7210.000000 70.000000 inf 1.000000 -uR 7220.000000 70.000000 inf 1.000000 -uR 7230.000000 70.000000 inf 1.000000 -uR 7240.000000 70.000000 inf 1.000000 -uR 7250.000000 70.000000 inf 1.000000 -uR 7260.000000 70.000000 inf 1.000000 -uR 7270.000000 70.000000 inf 1.000000 -uR 7280.000000 70.000000 inf 1.000000 -uR 7290.000000 70.000000 inf 1.000000 -uR 7300.000000 70.000000 inf 1.000000 -uR 7310.000000 70.000000 inf 1.000000 -uR 7320.000000 70.000000 inf 1.000000 -uR 7330.000000 70.000000 inf 1.000000 -uR 7340.000000 70.000000 inf 1.000000 -uR 7350.000000 70.000000 inf 1.000000 -uR 7360.000000 70.000000 inf 1.000000 -uR 7370.000000 70.000000 inf 1.000000 -uR 7380.000000 70.000000 inf 1.000000 -uR 7390.000000 70.000000 inf 1.000000 -uR 7400.000000 70.000000 inf 1.000000 -uR 7410.000000 70.000000 inf 1.000000 -uR 7420.000000 70.000000 inf 1.000000 -uR 7430.000000 70.000000 inf 1.000000 -uR 7440.000000 70.000000 inf 1.000000 -uR 7450.000000 70.000000 inf 1.000000 -uR 7460.000000 70.000000 inf 1.000000 -uR 7470.000000 70.000000 inf 1.000000 -uR 7480.000000 70.000000 inf 1.000000 -uR 7490.000000 70.000000 inf 1.000000 -uR 7500.000000 70.000000 inf 1.000000 -uR 7510.000000 70.000000 inf 1.000000 -uR 7520.000000 70.000000 inf 1.000000 -uR 7530.000000 70.000000 inf 1.000000 -uR 7540.000000 70.000000 inf 1.000000 -uR 7550.000000 70.000000 inf 1.000000 -uR 7560.000000 70.000000 inf 1.000000 -uR 7570.000000 70.000000 inf 1.000000 -uR 7580.000000 70.000000 inf 1.000000 -uR 7590.000000 70.000000 inf 1.000000 -uR 7600.000000 70.000000 inf 1.000000 -uR 7610.000000 70.000000 inf 1.000000 -uR 7620.000000 70.000000 inf 1.000000 -uR 7630.000000 70.000000 inf 1.000000 -uR 7640.000000 70.000000 inf 1.000000 -uR 7650.000000 70.000000 inf 1.000000 -uR 7660.000000 70.000000 inf 1.000000 -uR 7670.000000 70.000000 inf 1.000000 -uR 7680.000000 70.000000 inf 1.000000 -uR 7690.000000 70.000000 inf 1.000000 -uR 7700.000000 70.000000 inf 1.000000 -uR 7710.000000 70.000000 inf 1.000000 -uR 7720.000000 70.000000 inf 1.000000 -uR 7730.000000 70.000000 inf 1.000000 -uR 7740.000000 70.000000 inf 1.000000 -uR 7750.000000 70.000000 inf 1.000000 -uR 7760.000000 70.000000 inf 1.000000 -uR 7770.000000 70.000000 inf 1.000000 -uR 7780.000000 70.000000 inf 1.000000 -uR 7790.000000 70.000000 inf 1.000000 -uR 7800.000000 70.000000 inf 1.000000 -uR 7810.000000 70.000000 inf 1.000000 -uR 7820.000000 70.000000 inf 1.000000 -uR 7830.000000 70.000000 inf 1.000000 -uR 7840.000000 70.000000 inf 1.000000 -uR 7850.000000 70.000000 inf 1.000000 -uR 7860.000000 70.000000 inf 1.000000 -uR 7870.000000 70.000000 inf 1.000000 -uR 7880.000000 70.000000 inf 1.000000 -uR 7890.000000 70.000000 inf 1.000000 -uR 7900.000000 70.000000 inf 1.000000 -uR 7910.000000 70.000000 inf 1.000000 -uR 7920.000000 70.000000 inf 1.000000 -uR 7930.000000 70.000000 inf 1.000000 -uR 7940.000000 70.000000 inf 1.000000 -uR 7950.000000 70.000000 inf 1.000000 -uR 7960.000000 70.000000 inf 1.000000 -uR 7970.000000 70.000000 inf 1.000000 -uR 7980.000000 70.000000 inf 1.000000 -uR 7990.000000 70.000000 inf 1.000000 -uR 8000.000000 70.000000 inf 1.000000 -uR 8010.000000 70.000000 inf 1.000000 -uR 8020.000000 70.000000 inf 1.000000 -uR 8030.000000 70.000000 inf 1.000000 -uR 8040.000000 70.000000 inf 1.000000 -uR 8050.000000 70.000000 inf 1.000000 -uR 8060.000000 70.000000 inf 1.000000 -uR 8070.000000 70.000000 inf 1.000000 -uR 8080.000000 70.000000 inf 1.000000 -uR 8090.000000 70.000000 inf 1.000000 -uR 8100.000000 70.000000 inf 1.000000 -uR 8110.000000 70.000000 inf 1.000000 -uR 8120.000000 70.000000 inf 1.000000 -uR 8130.000000 70.000000 inf 1.000000 -uR 8140.000000 70.000000 inf 1.000000 -uR 8150.000000 70.000000 inf 1.000000 -uR 8160.000000 70.000000 inf 1.000000 -uR 8170.000000 70.000000 inf 1.000000 -uR 8180.000000 70.000000 inf 1.000000 -uR 8190.000000 70.000000 inf 1.000000 -uR 8200.000000 70.000000 inf 1.000000 -uR 8210.000000 70.000000 inf 1.000000 -uR 8220.000000 70.000000 inf 1.000000 -uR 8230.000000 70.000000 inf 1.000000 -uR 8240.000000 70.000000 inf 1.000000 -uR 8250.000000 70.000000 inf 1.000000 -uR 8260.000000 70.000000 inf 1.000000 -uR 8270.000000 70.000000 inf 1.000000 -uR 8280.000000 70.000000 inf 1.000000 -uR 8290.000000 70.000000 inf 1.000000 -uR 8300.000000 70.000000 inf 1.000000 -uR 8310.000000 70.000000 inf 1.000000 -uR 8320.000000 70.000000 inf 1.000000 -uR 8330.000000 70.000000 inf 1.000000 -uR 8340.000000 70.000000 inf 1.000000 -uR 8350.000000 70.000000 inf 1.000000 -uR 8360.000000 70.000000 inf 1.000000 -uR 8370.000000 70.000000 inf 1.000000 -uR 8380.000000 70.000000 inf 1.000000 -uR 8390.000000 70.000000 inf 1.000000 -uR 8400.000000 70.000000 inf 1.000000 -uR 8410.000000 70.000000 inf 1.000000 -uR 8420.000000 70.000000 inf 1.000000 -uR 8430.000000 70.000000 inf 1.000000 -uR 8440.000000 70.000000 inf 1.000000 -uR 8450.000000 70.000000 inf 1.000000 -uR 8460.000000 70.000000 inf 1.000000 -uR 8470.000000 70.000000 inf 1.000000 -uR 8480.000000 70.000000 inf 1.000000 -uR 8490.000000 70.000000 inf 1.000000 -uR 8500.000000 70.000000 inf 1.000000 -uR 8510.000000 70.000000 inf 1.000000 -uR 8520.000000 70.000000 inf 1.000000 -uR 8530.000000 70.000000 inf 1.000000 -uR 8540.000000 70.000000 inf 1.000000 -uR 8550.000000 70.000000 inf 1.000000 -uR 8560.000000 70.000000 inf 1.000000 -uR 8570.000000 70.000000 inf 1.000000 -uR 8580.000000 70.000000 inf 1.000000 -uR 8590.000000 70.000000 inf 1.000000 -uR 8600.000000 70.000000 inf 1.000000 -uR 8610.000000 70.000000 inf 1.000000 -uR 8620.000000 70.000000 inf 1.000000 -uR 8630.000000 70.000000 inf 1.000000 -uR 8640.000000 70.000000 inf 1.000000 -uR 8650.000000 70.000000 inf 1.000000 -uR 8660.000000 70.000000 inf 1.000000 -uR 8670.000000 70.000000 inf 1.000000 -uR 8680.000000 70.000000 inf 1.000000 -uR 8690.000000 70.000000 inf 1.000000 -uR 8700.000000 70.000000 inf 1.000000 -uR 8710.000000 70.000000 inf 1.000000 -uR 8720.000000 70.000000 inf 1.000000 -uR 8730.000000 70.000000 inf 1.000000 -uR 8740.000000 70.000000 inf 1.000000 -uR 8750.000000 70.000000 inf 1.000000 -uR 8760.000000 70.000000 inf 1.000000 -uR 8770.000000 70.000000 inf 1.000000 -uR 8780.000000 70.000000 inf 1.000000 -uR 8790.000000 70.000000 inf 1.000000 -uR 8800.000000 70.000000 inf 1.000000 -uR 8810.000000 70.000000 inf 1.000000 -uR 8820.000000 70.000000 inf 1.000000 -uR 8830.000000 70.000000 inf 1.000000 -uR 8840.000000 70.000000 inf 1.000000 -uR 8850.000000 70.000000 inf 1.000000 -uR 8860.000000 70.000000 inf 1.000000 -uR 8870.000000 70.000000 inf 1.000000 -uR 8880.000000 70.000000 inf 1.000000 -uR 8890.000000 70.000000 inf 1.000000 -uR 8900.000000 70.000000 inf 1.000000 -uR 8910.000000 70.000000 inf 1.000000 -uR 8920.000000 70.000000 inf 1.000000 -uR 8930.000000 70.000000 inf 1.000000 -uR 8940.000000 70.000000 inf 1.000000 -uR 8950.000000 70.000000 inf 1.000000 -uR 8960.000000 70.000000 inf 1.000000 -uR 8970.000000 70.000000 inf 1.000000 -uR 8980.000000 70.000000 inf 1.000000 -uR 8990.000000 70.000000 inf 1.000000 -uR 9000.000000 70.000000 inf 1.000000 -uR 9010.000000 70.000000 inf 1.000000 -uR 9020.000000 70.000000 inf 1.000000 -uR 9030.000000 70.000000 inf 1.000000 -uR 9040.000000 70.000000 inf 1.000000 -uR 9050.000000 70.000000 inf 1.000000 -uR 9060.000000 70.000000 inf 1.000000 -uR 9070.000000 70.000000 inf 1.000000 -uR 9080.000000 70.000000 inf 1.000000 -uR 9090.000000 70.000000 inf 1.000000 -uR 9100.000000 70.000000 inf 1.000000 -uR 9110.000000 70.000000 inf 1.000000 -uR 9120.000000 70.000000 inf 1.000000 -uR 9130.000000 70.000000 inf 1.000000 -uR 9140.000000 70.000000 inf 1.000000 -uR 9150.000000 70.000000 inf 1.000000 -uR 9160.000000 70.000000 inf 1.000000 -uR 9170.000000 70.000000 inf 1.000000 -uR 9180.000000 70.000000 inf 1.000000 -uR 9190.000000 70.000000 inf 1.000000 -uR 9200.000000 70.000000 inf 1.000000 -uR 9210.000000 70.000000 inf 1.000000 -uR 9220.000000 70.000000 inf 1.000000 -uR 9230.000000 70.000000 inf 1.000000 -uR 9240.000000 70.000000 inf 1.000000 -uR 9250.000000 70.000000 inf 1.000000 -uR 9260.000000 70.000000 inf 1.000000 -uR 9270.000000 70.000000 inf 1.000000 -uR 9280.000000 70.000000 inf 1.000000 -uR 9290.000000 70.000000 inf 1.000000 -uR 9300.000000 70.000000 inf 1.000000 -uR 9310.000000 70.000000 inf 1.000000 -uR 9320.000000 70.000000 inf 1.000000 -uR 9330.000000 70.000000 inf 1.000000 -uR 9340.000000 70.000000 inf 1.000000 -uR 9350.000000 70.000000 inf 1.000000 -uR 9360.000000 70.000000 inf 1.000000 -uR 9370.000000 70.000000 inf 1.000000 -uR 9380.000000 70.000000 inf 1.000000 -uR 9390.000000 70.000000 inf 1.000000 -uR 9400.000000 70.000000 inf 1.000000 -uR 9410.000000 70.000000 inf 1.000000 -uR 9420.000000 70.000000 inf 1.000000 -uR 9430.000000 70.000000 inf 1.000000 -uR 9440.000000 70.000000 inf 1.000000 -uR 9450.000000 70.000000 inf 1.000000 -uR 9460.000000 70.000000 inf 1.000000 -uR 9470.000000 70.000000 inf 1.000000 -uR 9480.000000 70.000000 inf 1.000000 -uR 9490.000000 70.000000 inf 1.000000 -uR 9500.000000 70.000000 inf 1.000000 -uR 9510.000000 70.000000 inf 1.000000 -uR 9520.000000 70.000000 inf 1.000000 -uR 9530.000000 70.000000 inf 1.000000 -uR 9540.000000 70.000000 inf 1.000000 -uR 9550.000000 70.000000 inf 1.000000 -uR 9560.000000 70.000000 inf 1.000000 -uR 9570.000000 70.000000 inf 1.000000 -uR 9580.000000 70.000000 inf 1.000000 -uR 9590.000000 70.000000 inf 1.000000 -uR 9600.000000 70.000000 inf 1.000000 -uR 9610.000000 70.000000 inf 1.000000 -uR 9620.000000 70.000000 inf 1.000000 -uR 9630.000000 70.000000 inf 1.000000 -uR 9640.000000 70.000000 inf 1.000000 -uR 9650.000000 70.000000 inf 1.000000 -uR 9660.000000 70.000000 inf 1.000000 -uR 9670.000000 70.000000 inf 1.000000 -uR 9680.000000 70.000000 inf 1.000000 -uR 9690.000000 70.000000 inf 1.000000 -uR 9700.000000 70.000000 inf 1.000000 -uR 9710.000000 70.000000 inf 1.000000 -uR 9720.000000 70.000000 inf 1.000000 -uR 9730.000000 70.000000 inf 1.000000 -uR 9740.000000 70.000000 inf 1.000000 -uR 9750.000000 70.000000 inf 1.000000 -uR 9760.000000 70.000000 inf 1.000000 -uR 9770.000000 70.000000 inf 1.000000 -uR 9780.000000 70.000000 inf 1.000000 -uR 9790.000000 70.000000 inf 1.000000 -uR 9800.000000 70.000000 inf 1.000000 -uR 9810.000000 70.000000 inf 1.000000 -uR 9820.000000 70.000000 inf 1.000000 -uR 9830.000000 70.000000 inf 1.000000 -uR 9840.000000 70.000000 inf 1.000000 -uR 9850.000000 70.000000 inf 1.000000 -uR 9860.000000 70.000000 inf 1.000000 -uR 9870.000000 70.000000 inf 1.000000 -uR 9880.000000 70.000000 inf 1.000000 -uR 9890.000000 70.000000 inf 1.000000 -uR 9900.000000 70.000000 inf 1.000000 -uR 9910.000000 70.000000 inf 1.000000 -uR 9920.000000 70.000000 inf 1.000000 -uR 9930.000000 70.000000 inf 1.000000 -uR 9940.000000 70.000000 inf 1.000000 -uR 9950.000000 70.000000 inf 1.000000 -uR 9960.000000 70.000000 inf 1.000000 -uR 9970.000000 70.000000 inf 1.000000 -uR 9980.000000 70.000000 inf 1.000000 -uR 9990.000000 70.000000 inf 1.000000 -uR 10000.000000 70.000000 inf 1.000000 -uR 10025.000000 70.000000 inf 1.000000 -uR 10050.000000 70.000000 inf 1.000000 -uR 10075.000000 70.000000 inf 1.000000 -uR 10100.000000 70.000000 inf 1.000000 -uR 10125.000000 70.000000 inf 1.000000 -uR 10150.000000 70.000000 inf 1.000000 -uR 10175.000000 70.000000 inf 1.000000 -uR 10200.000000 70.000000 inf 1.000000 -uR 10225.000000 70.000000 inf 1.000000 -uR 10250.000000 70.000000 inf 1.000000 -uR 10275.000000 70.000000 inf 1.000000 -uR 10300.000000 70.000000 inf 1.000000 -uR 10325.000000 70.000000 inf 1.000000 -uR 10350.000000 70.000000 inf 1.000000 -uR 10375.000000 70.000000 inf 1.000000 -uR 10400.000000 70.000000 inf 1.000000 -uR 10425.000000 70.000000 inf 1.000000 -uR 10450.000000 70.000000 inf 1.000000 -uR 10475.000000 70.000000 inf 1.000000 -uR 10500.000000 70.000000 inf 1.000000 -uR 10525.000000 70.000000 inf 1.000000 -uR 10550.000000 70.000000 inf 1.000000 -uR 10575.000000 70.000000 inf 1.000000 -uR 10600.000000 70.000000 inf 1.000000 -uR 10625.000000 70.000000 inf 1.000000 -uR 10650.000000 70.000000 inf 1.000000 -uR 10675.000000 70.000000 inf 1.000000 -uR 10700.000000 70.000000 inf 1.000000 -uR 10725.000000 70.000000 inf 1.000000 -uR 10750.000000 70.000000 inf 1.000000 -uR 10775.000000 70.000000 inf 1.000000 -uR 10800.000000 70.000000 inf 1.000000 -uR 10825.000000 70.000000 inf 1.000000 -uR 10850.000000 70.000000 inf 1.000000 -uR 10875.000000 70.000000 inf 1.000000 -uR 10900.000000 70.000000 inf 1.000000 -uR 10925.000000 70.000000 inf 1.000000 -uR 10950.000000 70.000000 inf 1.000000 -uR 10975.000000 70.000000 inf 1.000000 -uR 11000.000000 70.000000 inf 1.000000 -uR 11025.000000 70.000000 inf 1.000000 -uR 11050.000000 70.000000 inf 1.000000 -uR 11075.000000 70.000000 inf 1.000000 -uR 11100.000000 70.000000 inf 1.000000 -uR 11125.000000 70.000000 inf 1.000000 -uR 11150.000000 70.000000 inf 1.000000 -uR 11175.000000 70.000000 inf 1.000000 -uR 11200.000000 70.000000 inf 1.000000 -uR 11225.000000 70.000000 inf 1.000000 -uR 11250.000000 70.000000 inf 1.000000 -uR 11275.000000 70.000000 inf 1.000000 -uR 11300.000000 70.000000 inf 1.000000 -uR 11325.000000 70.000000 inf 1.000000 -uR 11350.000000 70.000000 inf 1.000000 -uR 11375.000000 70.000000 inf 1.000000 -uR 11400.000000 70.000000 inf 1.000000 -uR 11425.000000 70.000000 inf 1.000000 -uR 11450.000000 70.000000 inf 1.000000 -uR 11475.000000 70.000000 inf 1.000000 -uR 11500.000000 70.000000 inf 1.000000 -uR 11525.000000 70.000000 inf 1.000000 -uR 11550.000000 70.000000 inf 1.000000 -uR 11575.000000 70.000000 inf 1.000000 -uR 11600.000000 70.000000 inf 1.000000 -uR 11625.000000 70.000000 inf 1.000000 -uR 11650.000000 70.000000 inf 1.000000 -uR 11675.000000 70.000000 inf 1.000000 -uR 11700.000000 70.000000 inf 1.000000 -uR 11725.000000 70.000000 inf 1.000000 -uR 11750.000000 70.000000 inf 1.000000 -uR 11775.000000 70.000000 inf 1.000000 -uR 11800.000000 70.000000 inf 1.000000 -uR 11825.000000 70.000000 inf 1.000000 -uR 11850.000000 70.000000 inf 1.000000 -uR 11875.000000 70.000000 inf 1.000000 -uR 11900.000000 70.000000 inf 1.000000 -uR 11925.000000 70.000000 inf 1.000000 -uR 11950.000000 70.000000 inf 1.000000 -uR 11975.000000 70.000000 inf 1.000000 -uR 12000.000000 70.000000 inf 1.000000 -uR 12025.000000 70.000000 inf 1.000000 -uR 12050.000000 70.000000 inf 1.000000 -uR 12075.000000 70.000000 inf 1.000000 -uR 12100.000000 70.000000 inf 1.000000 -uR 12125.000000 70.000000 inf 1.000000 -uR 12150.000000 70.000000 inf 1.000000 -uR 12175.000000 70.000000 inf 1.000000 -uR 12200.000000 70.000000 inf 1.000000 -uR 12225.000000 70.000000 inf 1.000000 -uR 12250.000000 70.000000 inf 1.000000 -uR 12275.000000 70.000000 inf 1.000000 -uR 12300.000000 70.000000 inf 1.000000 -uR 12325.000000 70.000000 inf 1.000000 -uR 12350.000000 70.000000 inf 1.000000 -uR 12375.000000 70.000000 inf 1.000000 -uR 12400.000000 70.000000 inf 1.000000 -uR 12425.000000 70.000000 inf 1.000000 -uR 12450.000000 70.000000 inf 1.000000 -uR 12475.000000 70.000000 inf 1.000000 -uR 12500.000000 70.000000 inf 1.000000 -uR 12525.000000 70.000000 inf 1.000000 -uR 12550.000000 70.000000 inf 1.000000 -uR 12575.000000 70.000000 inf 1.000000 -uR 12600.000000 70.000000 inf 1.000000 -uR 12625.000000 70.000000 inf 1.000000 -uR 12650.000000 70.000000 inf 1.000000 -uR 12675.000000 70.000000 inf 1.000000 -uR 12700.000000 70.000000 inf 1.000000 -uR 12725.000000 70.000000 inf 1.000000 -uR 12750.000000 70.000000 inf 1.000000 -uR 12775.000000 70.000000 inf 1.000000 -uR 12800.000000 70.000000 inf 1.000000 -uR 12825.000000 70.000000 inf 1.000000 -uR 12850.000000 70.000000 inf 1.000000 -uR 12875.000000 70.000000 inf 1.000000 -uR 12900.000000 70.000000 inf 1.000000 -uR 12925.000000 70.000000 inf 1.000000 -uR 12950.000000 70.000000 inf 1.000000 -uR 12975.000000 70.000000 inf 1.000000 -uR 13000.000000 70.000000 inf 1.000000 -uR 13025.000000 70.000000 inf 1.000000 -uR 13050.000000 70.000000 inf 1.000000 -uR 13075.000000 70.000000 inf 1.000000 -uR 13100.000000 70.000000 inf 1.000000 -uR 13125.000000 70.000000 inf 1.000000 -uR 13150.000000 70.000000 inf 1.000000 -uR 13175.000000 70.000000 inf 1.000000 -uR 13200.000000 70.000000 inf 1.000000 -uR 13225.000000 70.000000 inf 1.000000 -uR 13250.000000 70.000000 inf 1.000000 -uR 13275.000000 70.000000 inf 1.000000 -uR 13300.000000 70.000000 inf 1.000000 -uR 13325.000000 70.000000 inf 1.000000 -uR 13350.000000 70.000000 inf 1.000000 -uR 13375.000000 70.000000 inf 1.000000 -uR 13400.000000 70.000000 inf 1.000000 -uR 13425.000000 70.000000 inf 1.000000 -uR 13450.000000 70.000000 inf 1.000000 -uR 13475.000000 70.000000 inf 1.000000 -uR 13500.000000 70.000000 inf 1.000000 -uR 13525.000000 70.000000 inf 1.000000 -uR 13550.000000 70.000000 inf 1.000000 -uR 13575.000000 70.000000 inf 1.000000 -uR 13600.000000 70.000000 inf 1.000000 -uR 13625.000000 70.000000 inf 1.000000 -uR 13650.000000 70.000000 inf 1.000000 -uR 13675.000000 70.000000 inf 1.000000 -uR 13700.000000 70.000000 inf 1.000000 -uR 13725.000000 70.000000 inf 1.000000 -uR 13750.000000 70.000000 inf 1.000000 -uR 13775.000000 70.000000 inf 1.000000 -uR 13800.000000 70.000000 inf 1.000000 -uR 13825.000000 70.000000 inf 1.000000 -uR 13850.000000 70.000000 inf 1.000000 -uR 13875.000000 70.000000 inf 1.000000 -uR 13900.000000 70.000000 inf 1.000000 -uR 13925.000000 70.000000 inf 1.000000 -uR 13950.000000 70.000000 inf 1.000000 -uR 13975.000000 70.000000 inf 1.000000 -uR 14000.000000 70.000000 inf 1.000000 -uR 14025.000000 70.000000 inf 1.000000 -uR 14050.000000 70.000000 inf 1.000000 -uR 14075.000000 70.000000 inf 1.000000 -uR 14100.000000 70.000000 inf 1.000000 -uR 14125.000000 70.000000 inf 1.000000 -uR 14150.000000 70.000000 inf 1.000000 -uR 14175.000000 70.000000 inf 1.000000 -uR 14200.000000 70.000000 inf 1.000000 -uR 14225.000000 70.000000 inf 1.000000 -uR 14250.000000 70.000000 inf 1.000000 -uR 14275.000000 70.000000 inf 1.000000 -uR 14300.000000 70.000000 inf 1.000000 -uR 14325.000000 70.000000 inf 1.000000 -uR 14350.000000 70.000000 inf 1.000000 -uR 14375.000000 70.000000 inf 1.000000 -uR 14400.000000 70.000000 inf 1.000000 -uR 14425.000000 70.000000 inf 1.000000 -uR 14450.000000 70.000000 inf 1.000000 -uR 14475.000000 70.000000 inf 1.000000 -uR 14500.000000 70.000000 inf 1.000000 -uR 14525.000000 70.000000 inf 1.000000 -uR 14550.000000 70.000000 inf 1.000000 -uR 14575.000000 70.000000 inf 1.000000 -uR 14600.000000 70.000000 inf 1.000000 -uR 14625.000000 70.000000 inf 1.000000 -uR 14650.000000 70.000000 inf 1.000000 -uR 14675.000000 70.000000 inf 1.000000 -uR 14700.000000 70.000000 inf 1.000000 -uR 14725.000000 70.000000 inf 1.000000 -uR 14750.000000 70.000000 inf 1.000000 -uR 14775.000000 70.000000 inf 1.000000 -uR 14800.000000 70.000000 inf 1.000000 -uR 14825.000000 70.000000 inf 1.000000 -uR 14850.000000 70.000000 inf 1.000000 -uR 14875.000000 70.000000 inf 1.000000 -uR 14900.000000 70.000000 inf 1.000000 -uR 14925.000000 70.000000 inf 1.000000 -uR 14950.000000 70.000000 inf 1.000000 -uR 14975.000000 70.000000 inf 1.000000 -uR 15000.000000 70.000000 inf 1.000000 -uR 15025.000000 70.000000 inf 1.000000 -uR 15050.000000 70.000000 inf 1.000000 -uR 15075.000000 70.000000 inf 1.000000 -uR 15100.000000 70.000000 inf 1.000000 -uR 15125.000000 70.000000 inf 1.000000 -uR 15150.000000 70.000000 inf 1.000000 -uR 15175.000000 70.000000 inf 1.000000 -uR 15200.000000 70.000000 inf 1.000000 -uR 15225.000000 70.000000 inf 1.000000 -uR 15250.000000 70.000000 inf 1.000000 -uR 15275.000000 70.000000 inf 1.000000 -uR 15300.000000 70.000000 inf 1.000000 -uR 15325.000000 70.000000 inf 1.000000 -uR 15350.000000 70.000000 inf 1.000000 -uR 15375.000000 70.000000 inf 1.000000 -uR 15400.000000 70.000000 inf 1.000000 -uR 15425.000000 70.000000 inf 1.000000 -uR 15450.000000 70.000000 inf 1.000000 -uR 15475.000000 70.000000 inf 1.000000 -uR 15500.000000 70.000000 inf 1.000000 -uR 15525.000000 70.000000 inf 1.000000 -uR 15550.000000 70.000000 inf 1.000000 -uR 15575.000000 70.000000 inf 1.000000 -uR 15600.000000 70.000000 inf 1.000000 -uR 15625.000000 70.000000 inf 1.000000 -uR 15650.000000 70.000000 inf 1.000000 -uR 15675.000000 70.000000 inf 1.000000 -uR 15700.000000 70.000000 inf 1.000000 -uR 15725.000000 70.000000 inf 1.000000 -uR 15750.000000 70.000000 inf 1.000000 -uR 15775.000000 70.000000 inf 1.000000 -uR 15800.000000 70.000000 inf 1.000000 -uR 15825.000000 70.000000 inf 1.000000 -uR 15850.000000 70.000000 inf 1.000000 -uR 15875.000000 70.000000 inf 1.000000 -uR 15900.000000 70.000000 inf 1.000000 -uR 15925.000000 70.000000 inf 1.000000 -uR 15950.000000 70.000000 inf 1.000000 -uR 15975.000000 70.000000 inf 1.000000 -uR 16000.000000 70.000000 inf 1.000000 -uR 16025.000000 70.000000 inf 1.000000 -uR 16050.000000 70.000000 inf 1.000000 -uR 16075.000000 70.000000 inf 1.000000 -uR 16100.000000 70.000000 inf 1.000000 -uR 16125.000000 70.000000 inf 1.000000 -uR 16150.000000 70.000000 inf 1.000000 -uR 16175.000000 70.000000 inf 1.000000 -uR 16200.000000 70.000000 inf 1.000000 -uR 16225.000000 70.000000 inf 1.000000 -uR 16250.000000 70.000000 inf 1.000000 -uR 16275.000000 70.000000 inf 1.000000 -uR 16300.000000 70.000000 inf 1.000000 -uR 16325.000000 70.000000 inf 1.000000 -uR 16350.000000 70.000000 inf 1.000000 -uR 16375.000000 70.000000 inf 1.000000 -uR 16400.000000 70.000000 inf 1.000000 -uR 16425.000000 70.000000 inf 1.000000 -uR 16450.000000 70.000000 inf 1.000000 -uR 16475.000000 70.000000 inf 1.000000 -uR 16500.000000 70.000000 inf 1.000000 -uR 16525.000000 70.000000 inf 1.000000 -uR 16550.000000 70.000000 inf 1.000000 -uR 16575.000000 70.000000 inf 1.000000 -uR 16600.000000 70.000000 inf 1.000000 -uR 16625.000000 70.000000 inf 1.000000 -uR 16650.000000 70.000000 inf 1.000000 -uR 16675.000000 70.000000 inf 1.000000 -uR 16700.000000 70.000000 inf 1.000000 -uR 16725.000000 70.000000 inf 1.000000 -uR 16750.000000 70.000000 inf 1.000000 -uR 16775.000000 70.000000 inf 1.000000 -uR 16800.000000 70.000000 inf 1.000000 -uR 16825.000000 70.000000 inf 1.000000 -uR 16850.000000 70.000000 inf 1.000000 -uR 16875.000000 70.000000 inf 1.000000 -uR 16900.000000 70.000000 inf 1.000000 -uR 16925.000000 70.000000 inf 1.000000 -uR 16950.000000 70.000000 inf 1.000000 -uR 16975.000000 70.000000 inf 1.000000 -uR 17000.000000 70.000000 inf 1.000000 -dPolE 1930.000000 50.000000 1.800296 0.165269 -dPolE 1940.000000 50.000000 1.309305 0.151484 -dPolE 1950.000000 50.000000 1.143294 0.139903 -dPolE 1960.000000 50.000000 0.887043 0.132319 -dPolE 1970.000000 50.000000 0.694757 0.126028 -dPolE 1980.000000 50.000000 0.787448 0.120852 -dPolE 1990.000000 50.000000 0.930387 0.116504 -dPolE 2000.000000 50.000000 1.026029 0.112678 -dPolE 2010.000000 50.000000 0.923153 0.109269 -dPolE 2020.000000 50.000000 1.070072 0.105676 -dPolE 2030.000000 50.000000 1.417070 0.102034 -dPolE 2040.000000 50.000000 1.349345 0.099043 -dPolE 2050.000000 50.000000 0.993161 0.096469 -dPolE 2060.000000 50.000000 0.997559 0.093567 -dPolE 2070.000000 50.000000 1.097280 0.090721 -dPolE 2080.000000 50.000000 1.217307 0.088023 -dPolE 2090.000000 50.000000 1.076752 0.085695 -dPolE 2100.000000 50.000000 0.785813 0.083661 -dPolE 2110.000000 50.000000 0.828161 0.081721 -dPolE 2120.000000 50.000000 0.944106 0.079806 -dPolE 2130.000000 50.000000 0.904778 0.078062 -dPolE 2140.000000 50.000000 0.990837 0.076453 -dPolE 2150.000000 50.000000 0.953939 0.075051 -dPolE 2160.000000 50.000000 0.904178 0.073805 -dPolE 2170.000000 50.000000 0.742843 0.072741 -dPolE 2180.000000 50.000000 0.737577 0.071572 -dPolE 2190.000000 50.000000 0.847678 0.070257 -dPolE 2200.000000 50.000000 0.925129 0.069029 -dPolE 2210.000000 50.000000 0.760540 0.068060 -dPolE 2220.000000 50.000000 0.823835 0.066873 -dPolE 2230.000000 50.000000 0.825953 0.065823 -dPolE 2240.000000 50.000000 0.809936 0.064850 -dPolE 2250.000000 50.000000 0.868201 0.063857 -dPolE 2260.000000 50.000000 0.796736 0.063094 -dPolE 2270.000000 50.000000 0.730204 0.062330 -dPolE 2280.000000 50.000000 0.815860 0.061441 -dPolE 2290.000000 50.000000 0.798825 0.060635 -dPolE 2300.000000 50.000000 0.798660 0.059902 -dPolE 2310.000000 50.000000 0.689545 0.059261 -dPolE 2320.000000 50.000000 0.492768 0.058720 -dPolE 2330.000000 50.000000 0.614542 0.058064 -dPolE 2340.000000 50.000000 0.836103 0.057390 -dPolE 2350.000000 50.000000 0.737850 0.056930 -dPolE 2360.000000 50.000000 0.695785 0.056493 -dPolE 2370.000000 50.000000 0.597369 0.056114 -dPolE 2380.000000 50.000000 0.632569 0.055644 -dPolE 2390.000000 50.000000 0.747894 0.055213 -dPolE 2400.000000 50.000000 0.713178 0.054940 -dPolE 2410.000000 50.000000 0.619984 0.054720 -dPolE 2420.000000 50.000000 0.573291 0.054491 -dPolE 2430.000000 50.000000 0.690290 0.054250 -dPolE 2440.000000 50.000000 0.612996 0.054136 -dPolE 2450.000000 50.000000 0.700928 0.053920 -dPolE 2460.000000 50.000000 0.754827 0.053783 -dPolE 2470.000000 50.000000 0.632926 0.053779 -dPolE 2480.000000 50.000000 0.642451 0.053692 -dPolE 2490.000000 50.000000 0.615324 0.053677 -dPolE 2500.000000 50.000000 0.628675 0.053685 -dPolE 2510.000000 50.000000 0.585632 0.053768 -dPolE 2520.000000 50.000000 0.447026 0.053875 -dPolE 2530.000000 50.000000 0.473566 0.053946 -dPolE 2540.000000 50.000000 0.547664 0.054089 -dPolE 2550.000000 50.000000 0.562903 0.054265 -dPolE 2560.000000 50.000000 0.603952 0.054475 -dPolE 2570.000000 50.000000 0.617656 0.054727 -dPolE 2580.000000 50.000000 0.617088 0.055021 -dPolE 2590.000000 50.000000 0.491601 0.055448 -dPolE 2600.000000 50.000000 0.517532 0.055822 -dPolE 2610.000000 50.000000 0.666330 0.056140 -dPolE 2620.000000 50.000000 0.595689 0.056626 -dPolE 2630.000000 50.000000 0.573192 0.057104 -dPolE 2640.000000 50.000000 0.497992 0.057657 -dPolE 2650.000000 50.000000 0.458465 0.058262 -dPolE 2660.000000 50.000000 0.449298 0.058901 -dPolE 2670.000000 50.000000 0.424692 0.059559 -dPolE 2680.000000 50.000000 0.412024 0.060203 -dPolE 2690.000000 50.000000 0.526856 0.060734 -dPolE 2700.000000 50.000000 0.427017 0.061441 -dPolE 2710.000000 50.000000 0.392052 0.062185 -dPolE 2720.000000 50.000000 0.427794 0.062861 -dPolE 2730.000000 50.000000 0.417384 0.063511 -dPolE 2740.000000 50.000000 0.470635 0.064146 -dPolE 2750.000000 50.000000 0.361683 0.064896 -dPolE 2760.000000 50.000000 0.284277 0.065668 -dPolE 2770.000000 50.000000 0.416853 0.066462 -dPolE 2780.000000 50.000000 0.288530 0.067123 -dPolE 2790.000000 50.000000 0.407721 0.067484 -dPolE 2800.000000 50.000000 0.408844 0.068022 -dPolE 2810.000000 50.000000 0.243115 0.068787 -dPolE 2820.000000 50.000000 0.317795 0.069390 -dPolE 2830.000000 50.000000 0.449478 0.069972 -dPolE 2840.000000 50.000000 0.432700 0.070578 -dPolE 2850.000000 50.000000 0.535699 0.071249 -dPolE 2860.000000 50.000000 0.423061 0.072141 -dPolE 2870.000000 50.000000 0.291309 0.072962 -dPolE 2880.000000 50.000000 0.313319 0.073775 -dPolE 2890.000000 50.000000 0.375089 0.074682 -dPolE 2900.000000 50.000000 0.468638 0.075560 -dPolE 2910.000000 50.000000 0.206962 0.076782 -dPolE 2920.000000 50.000000 0.225884 0.077768 -dPolE 2930.000000 50.000000 0.326816 0.078618 -dPolE 2940.000000 50.000000 0.511820 0.079408 -dPolE 2950.000000 50.000000 0.569485 0.080313 -dPolE 2960.000000 50.000000 0.356026 0.081448 -dPolE 2970.000000 50.000000 0.308444 0.082413 -dPolE 2980.000000 50.000000 0.419294 0.083300 -dPolE 2990.000000 50.000000 0.312290 0.084425 -dPolE 3000.000000 50.000000 0.302694 0.085484 -dPolE 3010.000000 50.000000 0.359407 0.086365 -dPolE 3020.000000 50.000000 0.230644 0.087489 -dPolE 3030.000000 50.000000 0.114535 0.088724 -dPolE 3040.000000 50.000000 0.094944 0.089791 -dPolE 3050.000000 50.000000 0.131689 0.090955 -dPolE 3060.000000 50.000000 0.298044 0.091955 -dPolE 3070.000000 50.000000 0.321239 0.093032 -dPolE 3080.000000 50.000000 0.495015 0.094055 -dPolE 3090.000000 50.000000 0.344365 0.095464 -dPolE 3100.000000 50.000000 0.079581 0.096846 -dPolE 3110.000000 50.000000 0.253341 0.097726 -dPolE 3120.000000 50.000000 0.237933 0.098964 -dPolE 3130.000000 50.000000 0.153138 0.100086 -dPolE 3140.000000 50.000000 0.304390 0.101024 -dPolE 3150.000000 50.000000 0.257985 0.102252 -dPolE 3160.000000 50.000000 0.169896 0.103412 -dPolE 3170.000000 50.000000 0.130210 0.104581 -dPolE 3180.000000 50.000000 0.259850 0.105514 -dPolE 3190.000000 50.000000 0.309619 0.106678 -dPolE 3200.000000 50.000000 0.294696 0.107791 -dPolE 3210.000000 50.000000 0.322265 0.108987 -dPolE 3220.000000 50.000000 0.242268 0.110300 -dPolE 3230.000000 50.000000 0.341232 0.111294 -dPolE 3240.000000 50.000000 0.385883 0.112343 -dPolE 3250.000000 50.000000 0.418532 0.113341 -dPolE 3260.000000 50.000000 0.269920 0.115361 -dPolE 3270.000000 50.000000 0.193508 0.117881 -dPolE 3280.000000 50.000000 0.319142 0.120150 -dPolE 3290.000000 50.000000 -0.009993 0.122581 -dPolE 3300.000000 50.000000 -0.060110 0.124421 -dPolE 3310.000000 50.000000 0.090350 0.126008 -dPolE 3320.000000 50.000000 0.103279 0.127325 -dPolE 3330.000000 50.000000 0.120887 0.128302 -dPolE 3340.000000 50.000000 0.229203 0.129089 -dPolE 3350.000000 50.000000 0.128285 0.130104 -dPolE 3360.000000 50.000000 0.136950 0.131038 -dPolE 3370.000000 50.000000 0.358729 0.131600 -dPolE 3380.000000 50.000000 0.026798 0.132673 -dPolE 3390.000000 50.000000 0.125807 0.132537 -dPolE 3400.000000 50.000000 0.062923 0.132721 -dPolE 3410.000000 50.000000 0.071446 0.133099 -dPolE 3420.000000 50.000000 0.049430 0.134206 -dPolE 3430.000000 50.000000 0.425948 0.134576 -dPolE 3440.000000 50.000000 0.339736 0.135458 -dPolE 3450.000000 50.000000 -0.231254 0.137559 -dPolE 3460.000000 50.000000 -0.155015 0.138534 -dPolE 3470.000000 50.000000 -0.097722 0.139582 -dPolE 3480.000000 50.000000 -0.091005 0.140545 -dPolE 3490.000000 50.000000 -0.176945 0.141740 -dPolE 3500.000000 50.000000 -0.039910 0.142550 -dPolE 3510.000000 50.000000 0.041152 0.143506 -dPolE 3520.000000 50.000000 -0.115626 0.144841 -dPolE 3530.000000 50.000000 -0.168388 0.145936 -dPolE 3540.000000 50.000000 -0.034318 0.146927 -dPolE 3550.000000 50.000000 0.020299 0.147897 -dPolE 3560.000000 50.000000 0.288599 0.148347 -dPolE 3570.000000 50.000000 0.317733 0.149361 -dPolE 3580.000000 50.000000 -0.117646 0.151069 -dPolE 3590.000000 50.000000 -0.080377 0.152004 -dPolE 3600.000000 50.000000 0.174486 0.152441 -dPolE 3610.000000 50.000000 -0.134719 0.153971 -dPolE 3620.000000 50.000000 -0.072756 0.154455 -dPolE 3630.000000 50.000000 0.223681 0.154501 -dPolE 3640.000000 50.000000 0.254947 0.155456 -dPolE 3650.000000 50.000000 0.219668 0.156635 -dPolE 3660.000000 50.000000 0.149169 0.156585 -dPolE 3670.000000 50.000000 0.025261 0.155881 -dPolE 3680.000000 50.000000 0.169458 0.155253 -dPolE 3690.000000 50.000000 0.042343 0.155808 -dPolE 3700.000000 50.000000 -0.314537 0.158009 -dPolE 3710.000000 50.000000 -0.167547 0.159737 -dPolE 3720.000000 50.000000 0.036098 0.160046 -dPolE 3730.000000 50.000000 0.524714 0.160258 -dPolE 3740.000000 50.000000 0.451944 0.161513 -dPolE 3750.000000 50.000000 -0.096791 0.162511 -dPolE 3760.000000 50.000000 -0.013359 0.161830 -dPolE 3770.000000 50.000000 0.010189 0.161823 -dPolE 3780.000000 50.000000 0.033981 0.160833 -dPolE 3790.000000 50.000000 -0.112086 0.159787 -dPolE 3800.000000 50.000000 0.055447 0.159431 -dPolE 3810.000000 50.000000 0.109895 0.160701 -dPolE 3820.000000 50.000000 -0.004878 0.161755 -dPolE 3830.000000 50.000000 0.228860 0.160133 -dPolE 3840.000000 50.000000 0.128166 0.160381 -dPolE 3850.000000 50.000000 0.127896 0.161768 -dPolE 3860.000000 50.000000 0.147482 0.160719 -dPolE 3870.000000 50.000000 0.078392 0.158488 -dPolE 3880.000000 50.000000 0.183113 0.155667 -dPolE 3890.000000 50.000000 0.075837 0.156180 -dPolE 3900.000000 50.000000 -0.190823 0.161027 -dPolE 3910.000000 50.000000 0.054573 0.165085 -dPolE 3920.000000 50.000000 -0.056193 0.164214 -dPolE 3930.000000 50.000000 0.143494 0.161058 -dPolE 3940.000000 50.000000 0.221944 0.158693 -dPolE 3950.000000 50.000000 0.290965 0.157904 -dPolE 3960.000000 50.000000 0.144584 0.159730 -dPolE 3970.000000 50.000000 0.008712 0.161534 -dPolE 3980.000000 50.000000 0.269035 0.158640 -dPolE 3990.000000 50.000000 0.106360 0.156470 -dPolE 4000.000000 50.000000 0.002007 0.157825 -dPolE 4010.000000 50.000000 0.069213 0.161148 -dPolE 4020.000000 50.000000 0.296454 0.162872 -dPolE 4030.000000 50.000000 0.280878 0.163052 -dPolE 4040.000000 50.000000 0.406466 0.161289 -dPolE 4050.000000 50.000000 0.133208 0.158337 -dPolE 4060.000000 50.000000 0.086758 0.154981 -dPolE 4070.000000 50.000000 -0.120731 0.155810 -dPolE 4080.000000 50.000000 0.127315 0.159735 -dPolE 4090.000000 50.000000 0.174644 0.163186 -dPolE 4100.000000 50.000000 0.006288 0.163954 -dPolE 4110.000000 50.000000 -0.104073 0.164074 -dPolE 4120.000000 50.000000 0.040678 0.161803 -dPolE 4130.000000 50.000000 0.061745 0.156939 -dPolE 4140.000000 50.000000 0.076655 0.154925 -dPolE 4150.000000 50.000000 0.211908 0.157146 -dPolE 4160.000000 50.000000 0.352384 0.158213 -dPolE 4170.000000 50.000000 0.187220 0.158126 -dPolE 4180.000000 50.000000 0.297473 0.158009 -dPolE 4190.000000 50.000000 0.155380 0.159978 -dPolE 4200.000000 50.000000 -0.260014 0.161170 -dPolE 4210.000000 50.000000 -0.135135 0.156724 -dPolE 4220.000000 50.000000 -0.187986 0.151668 -dPolE 4230.000000 50.000000 -0.134411 0.148602 -dPolE 4240.000000 50.000000 0.071185 0.147951 -dPolE 4250.000000 50.000000 -0.003529 0.153107 -dPolE 4260.000000 50.000000 -0.160463 0.159303 -dPolE 4270.000000 50.000000 0.067648 0.158242 -dPolE 4280.000000 50.000000 -0.131821 0.153929 -dPolE 4290.000000 50.000000 0.037076 0.154887 -dPolE 4300.000000 50.000000 0.448109 0.155036 -dPolE 4310.000000 50.000000 0.217249 0.154143 -dPolE 4320.000000 50.000000 -0.048318 0.156983 -dPolE 4330.000000 50.000000 -0.070494 0.159366 -dPolE 4340.000000 50.000000 -0.176044 0.155837 -dPolE 4350.000000 50.000000 -0.088546 0.153950 -dPolE 4360.000000 50.000000 -0.128645 0.156325 -dPolE 4370.000000 50.000000 -0.394212 0.156811 -dPolE 4380.000000 50.000000 -0.103279 0.155223 -dPolE 4390.000000 50.000000 0.121845 0.153821 -dPolE 4400.000000 50.000000 -0.088955 0.153492 -dPolE 4410.000000 50.000000 0.081365 0.150725 -dPolE 4420.000000 50.000000 0.086665 0.145776 -dPolE 4430.000000 50.000000 -0.014363 0.145310 -dPolE 4440.000000 50.000000 0.015489 0.146547 -dPolE 4450.000000 50.000000 -0.187437 0.146050 -dPolE 4460.000000 50.000000 -0.115370 0.144853 -dPolE 4470.000000 50.000000 0.213441 0.145094 -dPolE 4480.000000 50.000000 0.055862 0.146128 -dPolE 4490.000000 50.000000 0.151271 0.145746 -dPolE 4500.000000 50.000000 -0.178894 0.145418 -dPolE 4510.000000 50.000000 0.059054 0.145020 -dPolE 4520.000000 50.000000 0.437804 0.144953 -dPolE 4530.000000 50.000000 0.182228 0.145154 -dPolE 4540.000000 50.000000 0.169528 0.144541 -dPolE 4550.000000 50.000000 0.145362 0.143759 -dPolE 4560.000000 50.000000 0.207362 0.142237 -dPolE 4570.000000 50.000000 -0.007975 0.140516 -dPolE 4580.000000 50.000000 0.080955 0.137257 -dPolE 4590.000000 50.000000 -0.035346 0.135081 -dPolE 4600.000000 50.000000 0.254085 0.136749 -dPolE 4610.000000 50.000000 0.350597 0.140050 -dPolE 4620.000000 50.000000 0.014396 0.141660 -dPolE 4630.000000 50.000000 0.108536 0.138296 -dPolE 4640.000000 50.000000 0.251926 0.132922 -dPolE 4650.000000 50.000000 -0.001623 0.131548 -dPolE 4660.000000 50.000000 0.238133 0.132864 -dPolE 4670.000000 50.000000 0.375109 0.135262 -dPolE 4680.000000 50.000000 -0.029226 0.136835 -dPolE 4690.000000 50.000000 -0.094837 0.137469 -dPolE 4700.000000 50.000000 -0.019352 0.140034 -dPolE 4710.000000 50.000000 0.144652 0.141776 -dPolE 4720.000000 50.000000 -0.009895 0.140484 -dPolE 4730.000000 50.000000 0.151876 0.137336 -dPolE 4740.000000 50.000000 0.292534 0.136052 -dPolE 4750.000000 50.000000 0.057031 0.136908 -dPolE 4760.000000 50.000000 -0.048369 0.136565 -dPolE 4770.000000 50.000000 0.281046 0.134941 -dPolE 4780.000000 50.000000 0.396855 0.133489 -dPolE 4790.000000 50.000000 -0.065348 0.132992 -dPolE 4800.000000 50.000000 0.044034 0.132579 -dPolE 4810.000000 50.000000 0.038859 0.132305 -dPolE 4820.000000 50.000000 -0.042241 0.132470 -dPolE 4830.000000 50.000000 0.033221 0.131875 -dPolE 4840.000000 50.000000 0.060445 0.130272 -dPolE 4850.000000 50.000000 0.254567 0.124052 -dPolE 4860.000000 50.000000 0.007938 0.109458 -dPolE 4870.000000 50.000000 -0.200939 0.104298 -dPolE 4880.000000 50.000000 0.175069 0.119348 -dPolE 4890.000000 50.000000 0.109958 0.127138 -dPolE 4900.000000 50.000000 -0.111818 0.127265 -dPolE 4910.000000 50.000000 -0.120877 0.126110 -dPolE 4920.000000 50.000000 0.108077 0.126071 -dPolE 4930.000000 50.000000 0.093644 0.125726 -dPolE 4940.000000 50.000000 0.168915 0.124648 -dPolE 4950.000000 50.000000 0.224713 0.125916 -dPolE 4960.000000 50.000000 0.464545 0.126260 -dPolE 4970.000000 50.000000 0.298787 0.125565 -dPolE 4980.000000 50.000000 -0.034643 0.124725 -dPolE 4990.000000 50.000000 0.048398 0.123040 -dPolE 5000.000000 50.000000 0.168704 0.122292 -dPolE 5010.000000 50.000000 -0.087461 0.122467 -dPolE 5020.000000 50.000000 -0.076699 0.121648 -dPolE 5030.000000 50.000000 0.029476 0.121429 -dPolE 5040.000000 50.000000 -0.039455 0.121888 -dPolE 5050.000000 50.000000 -0.132226 0.122269 -dPolE 5060.000000 50.000000 0.075363 0.121431 -dPolE 5070.000000 50.000000 0.086714 0.121107 -dPolE 5080.000000 50.000000 0.226341 0.121169 -dPolE 5090.000000 50.000000 0.192571 0.121157 -dPolE 5100.000000 50.000000 0.015308 0.121290 -dPolE 5110.000000 50.000000 0.054975 0.120683 -dPolE 5120.000000 50.000000 0.072871 0.119931 -dPolE 5130.000000 50.000000 -0.029141 0.119897 -dPolE 5140.000000 50.000000 0.099740 0.119520 -dPolE 5150.000000 50.000000 0.060971 0.119323 -dPolE 5160.000000 50.000000 0.061827 0.118870 -dPolE 5170.000000 50.000000 0.172865 0.118455 -dPolE 5180.000000 50.000000 0.150085 0.118177 -dPolE 5190.000000 50.000000 -0.027710 0.118025 -dPolE 5200.000000 50.000000 -0.011730 0.117316 -dPolE 5210.000000 50.000000 0.135303 0.116714 -dPolE 5220.000000 50.000000 0.017534 0.116708 -dPolE 5230.000000 50.000000 0.037074 0.116335 -dPolE 5240.000000 50.000000 0.232838 0.115764 -dPolE 5250.000000 50.000000 0.230460 0.115275 -dPolE 5260.000000 50.000000 0.131573 0.114620 -dPolE 5270.000000 50.000000 -0.040416 0.113828 -dPolE 5280.000000 50.000000 -0.054004 0.113580 -dPolE 5290.000000 50.000000 0.081999 0.113286 -dPolE 5300.000000 50.000000 0.183169 0.112817 -dPolE 5310.000000 50.000000 0.079505 0.112879 -dPolE 5320.000000 50.000000 0.152668 0.112640 -dPolE 5330.000000 50.000000 0.218859 0.111711 -dPolE 5340.000000 50.000000 0.100733 0.110882 -dPolE 5350.000000 50.000000 0.065867 0.110630 -dPolE 5360.000000 50.000000 0.041125 0.110427 -dPolE 5370.000000 50.000000 -0.041298 0.110289 -dPolE 5380.000000 50.000000 -0.163821 0.109988 -dPolE 5390.000000 50.000000 -0.001165 0.108936 -dPolE 5400.000000 50.000000 0.196585 0.108290 -dPolE 5410.000000 50.000000 0.065989 0.108178 -dPolE 5420.000000 50.000000 0.054003 0.107416 -dPolE 5430.000000 50.000000 0.208869 0.106329 -dPolE 5440.000000 50.000000 0.003675 0.106204 -dPolE 5450.000000 50.000000 0.075640 0.105823 -dPolE 5460.000000 50.000000 0.019638 0.105877 -dPolE 5470.000000 50.000000 0.025453 0.105692 -dPolE 5480.000000 50.000000 0.078605 0.104799 -dPolE 5490.000000 50.000000 0.291914 0.103860 -dPolE 5500.000000 50.000000 0.154978 0.103917 -dPolE 5510.000000 50.000000 0.007288 0.104109 -dPolE 5520.000000 50.000000 0.251597 0.103695 -dPolE 5530.000000 50.000000 0.262927 0.103324 -dPolE 5540.000000 50.000000 0.184909 0.102948 -dPolE 5550.000000 50.000000 0.141985 0.102832 -dPolE 5560.000000 50.000000 0.222794 0.102610 -dPolE 5570.000000 50.000000 0.097997 0.102368 -dPolE 5580.000000 50.000000 -0.074096 0.102333 -dPolE 5590.000000 50.000000 0.016439 0.102143 -dPolE 5600.000000 50.000000 -0.024814 0.101881 -dPolE 5610.000000 50.000000 0.053590 0.101229 -dPolE 5620.000000 50.000000 0.015345 0.101076 -dPolE 5630.000000 50.000000 -0.055014 0.101008 -dPolE 5640.000000 50.000000 0.067581 0.100465 -dPolE 5650.000000 50.000000 0.209350 0.099861 -dPolE 5660.000000 50.000000 0.183766 0.099538 -dPolE 5670.000000 50.000000 0.034147 0.098640 -dPolE 5680.000000 50.000000 0.001047 0.096889 -dPolE 5690.000000 50.000000 0.220953 0.094625 -dPolE 5700.000000 50.000000 0.102621 0.092020 -dPolE 5710.000000 50.000000 0.158524 0.090620 -dPolE 5720.000000 50.000000 0.023078 0.090058 -dPolE 5730.000000 50.000000 0.016712 0.089197 -dPolE 5740.000000 50.000000 0.203250 0.087398 -dPolE 5750.000000 50.000000 0.041953 0.086654 -dPolE 5760.000000 50.000000 0.058801 0.086025 -dPolE 5770.000000 50.000000 -0.022308 0.084461 -dPolE 5780.000000 50.000000 -0.048358 0.083299 -dPolE 5790.000000 50.000000 -0.050017 0.083183 -dPolE 5800.000000 50.000000 0.225019 0.082343 -dPolE 5810.000000 50.000000 0.068120 0.080475 -dPolE 5820.000000 50.000000 -0.027139 0.078473 -dPolE 5830.000000 50.000000 0.079912 0.080269 -dPolE 5840.000000 50.000000 0.019994 0.084095 -dPolE 5850.000000 50.000000 0.223458 0.083331 -dPolE 5860.000000 50.000000 0.030743 0.083913 -dPolE 5870.000000 50.000000 -0.118912 0.084910 -dPolE 5880.000000 50.000000 0.128263 0.083884 -dPolE 5890.000000 50.000000 0.089484 0.083664 -dPolE 5900.000000 50.000000 0.116867 0.086382 -dPolE 5910.000000 50.000000 0.208324 0.088068 -dPolE 5920.000000 50.000000 0.144473 0.088185 -dPolE 5930.000000 50.000000 -0.014973 0.086956 -dPolE 5940.000000 50.000000 0.032476 0.085602 -dPolE 5950.000000 50.000000 0.128461 0.084487 -dPolE 5960.000000 50.000000 -0.167574 0.084890 -dPolE 5970.000000 50.000000 -0.134894 0.086260 -dPolE 5980.000000 50.000000 -0.078379 0.086995 -dPolE 5990.000000 50.000000 0.073160 0.086871 -dPolE 6000.000000 50.000000 -0.094883 0.087095 -dPolE 6010.000000 50.000000 0.075651 0.086342 -dPolE 6020.000000 50.000000 0.233663 0.085175 -dPolE 6030.000000 50.000000 0.016935 0.084176 -dPolE 6040.000000 50.000000 0.085509 0.083775 -dPolE 6050.000000 50.000000 0.103160 0.085453 -dPolE 6060.000000 50.000000 0.139184 0.085902 -dPolE 6070.000000 50.000000 0.217320 0.085910 -dPolE 6080.000000 50.000000 0.117454 0.086367 -dPolE 6090.000000 50.000000 0.116997 0.086677 -dPolE 6100.000000 50.000000 0.082328 0.086389 -dPolE 6110.000000 50.000000 0.136203 0.085901 -dPolE 6120.000000 50.000000 0.009316 0.085827 -dPolE 6130.000000 50.000000 0.066587 0.085558 -dPolE 6140.000000 50.000000 0.125345 0.085257 -dPolE 6150.000000 50.000000 0.114226 0.085770 -dPolE 6160.000000 50.000000 0.253806 0.086408 -dPolE 6170.000000 50.000000 0.036396 0.087092 -dPolE 6180.000000 50.000000 0.068975 0.087258 -dPolE 6190.000000 50.000000 0.057711 0.087576 -dPolE 6200.000000 50.000000 0.187830 0.087038 -dPolE 6210.000000 50.000000 0.257577 0.087017 -dPolE 6220.000000 50.000000 0.182095 0.087464 -dPolE 6230.000000 50.000000 0.208268 0.086963 -dPolE 6240.000000 50.000000 0.178754 0.086736 -dPolE 6250.000000 50.000000 0.176668 0.087473 -dPolE 6260.000000 50.000000 0.013634 0.088226 -dPolE 6270.000000 50.000000 0.040806 0.088247 -dPolE 6280.000000 50.000000 0.166859 0.088022 -dPolE 6290.000000 50.000000 -0.003307 0.088222 -dPolE 6300.000000 50.000000 0.023766 0.088244 -dPolE 6310.000000 50.000000 0.194189 0.088521 -dPolE 6320.000000 50.000000 0.143716 0.088720 -dPolE 6330.000000 50.000000 -0.035778 0.088598 -dPolE 6340.000000 50.000000 -0.137409 0.088849 -dPolE 6350.000000 50.000000 0.047055 0.088627 -dPolE 6360.000000 50.000000 0.197790 0.088188 -dPolE 6370.000000 50.000000 0.139298 0.088100 -dPolE 6380.000000 50.000000 0.126999 0.088222 -dPolE 6390.000000 50.000000 0.224429 0.088097 -dPolE 6400.000000 50.000000 0.339885 0.087989 -dPolE 6410.000000 50.000000 0.263878 0.088206 -dPolE 6420.000000 50.000000 0.086179 0.088654 -dPolE 6430.000000 50.000000 0.090886 0.088539 -dPolE 6440.000000 50.000000 0.088437 0.088546 -dPolE 6450.000000 50.000000 0.088480 0.088734 -dPolE 6460.000000 50.000000 -0.013867 0.088807 -dPolE 6470.000000 50.000000 -0.029764 0.088738 -dPolE 6480.000000 50.000000 -0.013523 0.088626 -dPolE 6490.000000 50.000000 0.153556 0.088341 -dPolE 6500.000000 50.000000 0.106668 0.088322 -dPolE 6510.000000 50.000000 -0.021111 0.088486 -dPolE 6520.000000 50.000000 -0.006246 0.088406 -dPolE 6530.000000 50.000000 0.116265 0.088311 -dPolE 6540.000000 50.000000 0.035349 0.089227 -dPolE 6550.000000 50.000000 0.122762 0.079212 -dPolE 6560.000000 50.000000 0.163184 0.055552 -dPolE 6570.000000 50.000000 0.056610 0.053515 -dPolE 6580.000000 50.000000 -0.005562 0.073128 -dPolE 6590.000000 50.000000 0.170017 0.087514 -dPolE 6600.000000 50.000000 0.181117 0.088030 -dPolE 6610.000000 50.000000 0.164257 0.088113 -dPolE 6620.000000 50.000000 0.057600 0.088021 -dPolE 6630.000000 50.000000 0.059182 0.087885 -dPolE 6640.000000 50.000000 0.035482 0.087928 -dPolE 6650.000000 50.000000 -0.028288 0.088026 -dPolE 6660.000000 50.000000 0.046244 0.087931 -dPolE 6670.000000 50.000000 0.199071 0.087745 -dPolE 6680.000000 50.000000 0.041816 0.087834 -dPolE 6690.000000 50.000000 0.027848 0.087635 -dPolE 6700.000000 50.000000 0.206371 0.087220 -dPolE 6710.000000 50.000000 0.109588 0.087344 -dPolE 6720.000000 50.000000 -0.006338 0.087332 -dPolE 6730.000000 50.000000 0.224335 0.087028 -dPolE 6740.000000 50.000000 0.270259 0.087115 -dPolE 6750.000000 50.000000 0.128967 0.087382 -dPolE 6760.000000 50.000000 0.158075 0.087364 -dPolE 6770.000000 50.000000 0.067820 0.087376 -dPolE 6780.000000 50.000000 0.157645 0.087087 -dPolE 6790.000000 50.000000 0.096050 0.086971 -dPolE 6800.000000 50.000000 0.001215 0.086965 -dPolE 6810.000000 50.000000 0.033875 0.086918 -dPolE 6820.000000 50.000000 -0.025716 0.086995 -dPolE 6830.000000 50.000000 0.108789 0.086769 -dPolE 6840.000000 50.000000 0.031227 0.086729 -dPolE 6850.000000 50.000000 0.064386 0.086361 -dPolE 6860.000000 50.000000 0.151911 0.086241 -dPolE 6870.000000 50.000000 -0.059324 0.086703 -dPolE 6880.000000 50.000000 0.098867 0.086700 -dPolE 6890.000000 50.000000 0.104649 0.086709 -dPolE 6900.000000 50.000000 0.108659 0.086774 -dPolE 6910.000000 50.000000 0.019477 0.086838 -dPolE 6920.000000 50.000000 -0.001079 0.086786 -dPolE 6930.000000 50.000000 0.285764 0.086427 -dPolE 6940.000000 50.000000 0.127454 0.086490 -dPolE 6950.000000 50.000000 0.093479 0.086610 -dPolE 6960.000000 50.000000 0.066571 0.086673 -dPolE 6970.000000 50.000000 0.045082 0.086543 -dPolE 6980.000000 50.000000 -0.003794 0.086463 -dPolE 6990.000000 50.000000 -0.039103 0.086562 -dPolE 7000.000000 50.000000 0.146396 0.086510 -dPolE 7010.000000 50.000000 0.164355 0.086638 -dPolE 7020.000000 50.000000 0.197475 0.086609 -dPolE 7030.000000 50.000000 0.245538 0.086544 -dPolE 7040.000000 50.000000 0.104987 0.086879 -dPolE 7050.000000 50.000000 0.130120 0.086991 -dPolE 7060.000000 50.000000 -0.044900 0.087166 -dPolE 7070.000000 50.000000 0.008458 0.086777 -dPolE 7080.000000 50.000000 0.197563 0.086636 -dPolE 7090.000000 50.000000 0.145578 0.086907 -dPolE 7100.000000 50.000000 0.293202 0.086952 -dPolE 7110.000000 50.000000 0.303372 0.086995 -dPolE 7120.000000 50.000000 0.007327 0.087291 -dPolE 7130.000000 50.000000 -0.147363 0.087480 -dPolE 7140.000000 50.000000 0.000161 0.087255 -dPolE 7150.000000 50.000000 0.080451 0.087037 -dPolE 7160.000000 50.000000 0.124682 0.087044 -dPolE 7170.000000 50.000000 0.154713 0.087330 -dPolE 7180.000000 50.000000 0.391845 0.087060 -dPolE 7190.000000 50.000000 0.247556 0.087234 -dPolE 7200.000000 50.000000 -0.021009 0.087660 -dPolE 7210.000000 50.000000 0.206961 0.087622 -dPolE 7220.000000 50.000000 0.268095 0.087571 -dPolE 7230.000000 50.000000 0.183932 0.087856 -dPolE 7240.000000 50.000000 0.134496 0.087856 -dPolE 7250.000000 50.000000 0.049193 0.087597 -dPolE 7260.000000 50.000000 0.196490 0.087082 -dPolE 7270.000000 50.000000 0.101348 0.087417 -dPolE 7280.000000 50.000000 0.026705 0.087565 -dPolE 7290.000000 50.000000 0.182919 0.087284 -dPolE 7300.000000 50.000000 0.187144 0.087414 -dPolE 7310.000000 50.000000 0.110315 0.087406 -dPolE 7320.000000 50.000000 0.136693 0.087505 -dPolE 7330.000000 50.000000 0.356282 0.087638 -dPolE 7340.000000 50.000000 0.329326 0.087595 -dPolE 7350.000000 50.000000 0.215243 0.087262 -dPolE 7360.000000 50.000000 0.103000 0.087457 -dPolE 7370.000000 50.000000 0.051681 0.087857 -dPolE 7380.000000 50.000000 0.110789 0.088408 -dPolE 7390.000000 50.000000 0.202520 0.088632 -dPolE 7400.000000 50.000000 0.209748 0.088278 -dPolE 7410.000000 50.000000 0.060688 0.088767 -dPolE 7420.000000 50.000000 -0.066095 0.089588 -dPolE 7430.000000 50.000000 0.112934 0.089646 -dPolE 7440.000000 50.000000 0.088585 0.089734 -dPolE 7450.000000 50.000000 0.172775 0.089756 -dPolE 7460.000000 50.000000 0.056316 0.089948 -dPolE 7470.000000 50.000000 0.193077 0.089523 -dPolE 7480.000000 50.000000 0.174909 0.089469 -dPolE 7490.000000 50.000000 0.062761 0.089936 -dPolE 7500.000000 50.000000 0.060855 0.090011 -dPolE 7510.000000 50.000000 0.244872 0.089804 -dPolE 7520.000000 50.000000 0.049575 0.090633 -dPolE 7530.000000 50.000000 0.136990 0.090831 -dPolE 7540.000000 50.000000 0.209322 0.090285 -dPolE 7550.000000 50.000000 0.145739 0.090523 -dPolE 7560.000000 50.000000 0.138569 0.090705 -dPolE 7570.000000 50.000000 -0.046040 0.090732 -dPolE 7580.000000 50.000000 0.012444 0.090522 -dPolE 7590.000000 50.000000 0.122851 0.090399 -dPolE 7600.000000 50.000000 0.127555 0.091086 -dPolE 7610.000000 50.000000 0.076953 0.091857 -dPolE 7620.000000 50.000000 0.227230 0.092258 -dPolE 7630.000000 50.000000 0.191899 0.092071 -dPolE 7640.000000 50.000000 -0.046569 0.092184 -dPolE 7650.000000 50.000000 0.035272 0.092411 -dPolE 7660.000000 50.000000 0.085939 0.092946 -dPolE 7670.000000 50.000000 0.370741 0.093453 -dPolE 7680.000000 50.000000 0.034097 0.093696 -dPolE 7690.000000 50.000000 -0.132560 0.092893 -dPolE 7700.000000 50.000000 0.038224 0.092339 -dPolE 7710.000000 50.000000 0.105566 0.092989 -dPolE 7720.000000 50.000000 0.155238 0.093992 -dPolE 7730.000000 50.000000 -0.038229 0.094910 -dPolE 7740.000000 50.000000 -0.074810 0.095132 -dPolE 7750.000000 50.000000 0.169033 0.095227 -dPolE 7760.000000 50.000000 0.172014 0.095775 -dPolE 7770.000000 50.000000 -0.084215 0.096435 -dPolE 7780.000000 50.000000 -0.076788 0.096317 -dPolE 7790.000000 50.000000 -0.132661 0.095782 -dPolE 7800.000000 50.000000 -0.045988 0.095565 -dPolE 7810.000000 50.000000 0.082458 0.096211 -dPolE 7820.000000 50.000000 0.202242 0.096565 -dPolE 7830.000000 50.000000 0.051247 0.096888 -dPolE 7840.000000 50.000000 -0.016075 0.097428 -dPolE 7850.000000 50.000000 -0.024712 0.098190 -dPolE 7860.000000 50.000000 -0.027280 0.098630 -dPolE 7870.000000 50.000000 -0.039165 0.098616 -dPolE 7880.000000 50.000000 0.055663 0.098302 -dPolE 7890.000000 50.000000 0.083523 0.098515 -dPolE 7900.000000 50.000000 0.042025 0.099088 -dPolE 7910.000000 50.000000 -0.038900 0.099300 -dPolE 7920.000000 50.000000 -0.002707 0.099514 -dPolE 7930.000000 50.000000 -0.060735 0.099791 -dPolE 7940.000000 50.000000 0.114926 0.099338 -dPolE 7950.000000 50.000000 0.158055 0.099355 -dPolE 7960.000000 50.000000 0.034721 0.100088 -dPolE 7970.000000 50.000000 -0.028050 0.100686 -dPolE 7980.000000 50.000000 0.142754 0.100896 -dPolE 7990.000000 50.000000 0.011404 0.101288 -dPolE 8000.000000 50.000000 0.102720 0.101082 -dPolE 8010.000000 50.000000 0.097495 0.100955 -dPolE 8020.000000 50.000000 0.046017 0.101724 -dPolE 8030.000000 50.000000 -0.123851 0.102558 -dPolE 8040.000000 50.000000 0.050574 0.102335 -dPolE 8050.000000 50.000000 -0.017222 0.102221 -dPolE 8060.000000 50.000000 0.089364 0.102396 -dPolE 8070.000000 50.000000 0.042678 0.103420 -dPolE 8080.000000 50.000000 -0.003098 0.103959 -dPolE 8090.000000 50.000000 0.101247 0.103183 -dPolE 8100.000000 50.000000 0.023261 0.103453 -dPolE 8110.000000 50.000000 0.035597 0.103999 -dPolE 8120.000000 50.000000 0.312342 0.104326 -dPolE 8130.000000 50.000000 0.321042 0.104287 -dPolE 8140.000000 50.000000 0.067196 0.104031 -dPolE 8150.000000 50.000000 0.135584 0.104311 -dPolE 8160.000000 50.000000 -0.058338 0.105346 -dPolE 8170.000000 50.000000 0.206283 0.105458 -dPolE 8180.000000 50.000000 0.144351 0.105301 -dPolE 8190.000000 50.000000 -0.021273 0.105391 -dPolE 8200.000000 50.000000 0.160751 0.105565 -dPolE 8210.000000 50.000000 0.067518 0.106227 -dPolE 8220.000000 50.000000 -0.043298 0.106805 -dPolE 8230.000000 50.000000 0.058260 0.106332 -dPolE 8240.000000 50.000000 -0.073534 0.106324 -dPolE 8250.000000 50.000000 -0.052135 0.107017 -dPolE 8260.000000 50.000000 -0.040361 0.107711 -dPolE 8270.000000 50.000000 0.044316 0.107385 -dPolE 8280.000000 50.000000 0.087120 0.106878 -dPolE 8290.000000 50.000000 0.162355 0.106817 -dPolE 8300.000000 50.000000 0.156522 0.107853 -dPolE 8310.000000 50.000000 -0.115228 0.108836 -dPolE 8320.000000 50.000000 -0.034172 0.108512 -dPolE 8330.000000 50.000000 0.298596 0.107517 -dPolE 8340.000000 50.000000 0.085277 0.107557 -dPolE 8350.000000 50.000000 0.089903 0.108120 -dPolE 8360.000000 50.000000 0.021599 0.109105 -dPolE 8370.000000 50.000000 -0.075828 0.109035 -dPolE 8380.000000 50.000000 -0.111581 0.108826 -dPolE 8390.000000 50.000000 -0.030440 0.108983 -dPolE 8400.000000 50.000000 0.187362 0.109636 -dPolE 8410.000000 50.000000 0.005064 0.110372 -dPolE 8420.000000 50.000000 -0.007840 0.110175 -dPolE 8430.000000 50.000000 0.257418 0.109434 -dPolE 8440.000000 50.000000 0.202046 0.109587 -dPolE 8450.000000 50.000000 0.252613 0.110066 -dPolE 8460.000000 50.000000 0.108154 0.110630 -dPolE 8470.000000 50.000000 0.010701 0.110520 -dPolE 8480.000000 50.000000 -0.000743 0.110089 -dPolE 8490.000000 50.000000 0.098819 0.110708 -dPolE 8500.000000 50.000000 0.153623 0.112580 -dPolE 8510.000000 50.000000 0.160077 0.113341 -dPolE 8520.000000 50.000000 0.209638 0.110959 -dPolE 8530.000000 50.000000 0.114587 0.108602 -dPolE 8540.000000 50.000000 -0.036440 0.108421 -dPolE 8550.000000 50.000000 -0.022706 0.109885 -dPolE 8560.000000 50.000000 0.078598 0.111040 -dPolE 8570.000000 50.000000 0.290721 0.111162 -dPolE 8580.000000 50.000000 0.174217 0.110781 -dPolE 8590.000000 50.000000 0.248769 0.110403 -dPolE 8600.000000 50.000000 0.007427 0.111107 -dPolE 8610.000000 50.000000 0.164445 0.111881 -dPolE 8620.000000 50.000000 0.196027 0.112319 -dPolE 8630.000000 50.000000 0.186653 0.112324 -dPolE 8640.000000 50.000000 0.292819 0.111533 -dPolE 8650.000000 50.000000 0.240694 0.111114 -dPolE 8660.000000 50.000000 -0.006324 0.111979 -dPolE 8670.000000 50.000000 -0.005926 0.112864 -dPolE 8680.000000 50.000000 -0.092747 0.113151 -dPolE 8690.000000 50.000000 0.346756 0.112414 -dPolE 8700.000000 50.000000 -0.000414 0.112579 -dPolE 8710.000000 50.000000 -0.062710 0.112853 -dPolE 8720.000000 50.000000 -0.082691 0.113510 -dPolE 8730.000000 50.000000 0.086545 0.113307 -dPolE 8740.000000 50.000000 0.292286 0.112583 -dPolE 8750.000000 50.000000 -0.190146 0.112880 -dPolE 8760.000000 50.000000 0.297743 0.112389 -dPolE 8770.000000 50.000000 0.371976 0.112922 -dPolE 8780.000000 50.000000 -0.019009 0.113922 -dPolE 8790.000000 50.000000 -0.014668 0.113737 -dPolE 8800.000000 50.000000 0.076268 0.113592 -dPolE 8810.000000 50.000000 0.051599 0.114064 -dPolE 8820.000000 50.000000 0.242850 0.114223 -dPolE 8830.000000 50.000000 0.290411 0.114639 -dPolE 8840.000000 50.000000 0.215166 0.114850 -dPolE 8850.000000 50.000000 0.320322 0.114876 -dPolE 8860.000000 50.000000 -0.098765 0.115255 -dPolE 8870.000000 50.000000 0.089942 0.114678 -dPolE 8880.000000 50.000000 0.226229 0.114546 -dPolE 8890.000000 50.000000 0.150928 0.115083 -dPolE 8900.000000 50.000000 -0.109509 0.115881 -dPolE 8910.000000 50.000000 -0.026452 0.116117 -dPolE 8920.000000 50.000000 0.130052 0.115851 -dPolE 8930.000000 50.000000 0.062112 0.115891 -dPolE 8940.000000 50.000000 0.034333 0.116050 -dPolE 8950.000000 50.000000 0.054012 0.116401 -dPolE 8960.000000 50.000000 0.313726 0.116437 -dPolE 8970.000000 50.000000 0.160329 0.116820 -dPolE 8980.000000 50.000000 0.356492 0.116867 -dPolE 8990.000000 50.000000 0.144998 0.117000 -dPolE 9000.000000 50.000000 0.088696 0.117490 -dPolE 9010.000000 50.000000 0.115878 0.117853 -dPolE 9020.000000 50.000000 -0.216320 0.118360 -dPolE 9030.000000 50.000000 0.153310 0.118303 -dPolE 9040.000000 50.000000 -0.158908 0.118825 -dPolE 9050.000000 50.000000 -0.176754 0.118661 -dPolE 9060.000000 50.000000 -0.046095 0.118897 -dPolE 9070.000000 50.000000 -0.065826 0.119376 -dPolE 9080.000000 50.000000 0.101046 0.119769 -dPolE 9090.000000 50.000000 -0.035525 0.120563 -dPolE 9100.000000 50.000000 0.106745 0.120434 -dPolE 9110.000000 50.000000 0.072575 0.120100 -dPolE 9120.000000 50.000000 0.211764 0.120159 -dPolE 9130.000000 50.000000 0.011733 0.120998 -dPolE 9140.000000 50.000000 0.205628 0.121629 -dPolE 9150.000000 50.000000 -0.133340 0.122162 -dPolE 9160.000000 50.000000 0.014716 0.121513 -dPolE 9170.000000 50.000000 0.402650 0.120788 -dPolE 9180.000000 50.000000 -0.089517 0.121554 -dPolE 9190.000000 50.000000 -0.264642 0.122428 -dPolE 9200.000000 50.000000 0.050312 0.122978 -dPolE 9210.000000 50.000000 -0.042246 0.123566 -dPolE 9220.000000 50.000000 -0.072586 0.124355 -dPolE 9230.000000 50.000000 -0.019303 0.124616 -dPolE 9240.000000 50.000000 -0.040360 0.124735 -dPolE 9250.000000 50.000000 0.040489 0.124886 -dPolE 9260.000000 50.000000 0.058085 0.125329 -dPolE 9270.000000 50.000000 0.019152 0.126011 -dPolE 9280.000000 50.000000 -0.251246 0.127219 -dPolE 9290.000000 50.000000 -0.109117 0.127383 -dPolE 9300.000000 50.000000 0.061124 0.127320 -dPolE 9310.000000 50.000000 -0.135549 0.127828 -dPolE 9320.000000 50.000000 -0.141168 0.127945 -dPolE 9330.000000 50.000000 0.039010 0.128122 -dPolE 9340.000000 50.000000 0.301763 0.128327 -dPolE 9350.000000 50.000000 -0.021654 0.129562 -dPolE 9360.000000 50.000000 -0.178187 0.130613 -dPolE 9370.000000 50.000000 -0.513879 0.131516 -dPolE 9380.000000 50.000000 0.092847 0.130689 -dPolE 9390.000000 50.000000 0.103578 0.130985 -dPolE 9400.000000 50.000000 0.293533 0.131720 -dPolE 9410.000000 50.000000 0.443151 0.132165 -dPolE 9420.000000 50.000000 0.249497 0.133171 -dPolE 9430.000000 50.000000 0.107559 0.134046 -dPolE 9440.000000 50.000000 -0.134879 0.134592 -dPolE 9450.000000 50.000000 0.254653 0.134440 -dPolE 9460.000000 50.000000 0.345178 0.134981 -dPolE 9470.000000 50.000000 -0.001944 0.136244 -dPolE 9480.000000 50.000000 0.132333 0.136823 -dPolE 9490.000000 50.000000 0.294184 0.137363 -dPolE 9500.000000 50.000000 -0.003509 0.138488 -dPolE 9510.000000 50.000000 0.263690 0.138745 -dPolE 9520.000000 50.000000 -0.293510 0.140054 -dPolE 9530.000000 50.000000 0.042798 0.140181 -dPolE 9540.000000 50.000000 0.311804 0.140968 -dPolE 9550.000000 50.000000 0.131024 0.142227 -dPolE 9560.000000 50.000000 0.035514 0.142755 -dPolE 9570.000000 50.000000 -0.121821 0.143458 -dPolE 9580.000000 50.000000 -0.002760 0.143512 -dPolE 9590.000000 50.000000 0.380709 0.143495 -dPolE 9600.000000 50.000000 0.312854 0.144238 -dPolE 9610.000000 50.000000 0.265319 0.144850 -dPolE 9620.000000 50.000000 0.135979 0.145951 -dPolE 9630.000000 50.000000 0.011726 0.146839 -dPolE 9640.000000 50.000000 0.111303 0.147352 -dPolE 9650.000000 50.000000 0.164094 0.148116 -dPolE 9660.000000 50.000000 0.078386 0.148820 -dPolE 9670.000000 50.000000 0.241180 0.149638 -dPolE 9680.000000 50.000000 0.180797 0.150871 -dPolE 9690.000000 50.000000 0.240106 0.151567 -dPolE 9700.000000 50.000000 0.185906 0.152178 -dPolE 9710.000000 50.000000 0.062739 0.153232 -dPolE 9720.000000 50.000000 0.516779 0.153374 -dPolE 9730.000000 50.000000 0.146127 0.155380 -dPolE 9740.000000 50.000000 0.004950 0.156598 -dPolE 9750.000000 50.000000 -0.080080 0.157257 -dPolE 9760.000000 50.000000 0.134193 0.157948 -dPolE 9770.000000 50.000000 0.620771 0.158154 -dPolE 9780.000000 50.000000 -0.037181 0.160132 -dPolE 9790.000000 50.000000 -0.189255 0.161478 -dPolE 9800.000000 50.000000 0.053000 0.162203 -dPolE 9810.000000 50.000000 0.047044 0.163603 -dPolE 9820.000000 50.000000 0.076751 0.164959 -dPolE 9830.000000 50.000000 0.185161 0.165394 -dPolE 9840.000000 50.000000 0.092227 0.166717 -dPolE 9850.000000 50.000000 0.339304 0.167411 -dPolE 9860.000000 50.000000 0.221574 0.168763 -dPolE 9870.000000 50.000000 0.146577 0.170600 -dPolE 9880.000000 50.000000 0.528997 0.171197 -dPolE 9890.000000 50.000000 0.345494 0.172572 -dPolE 9900.000000 50.000000 0.461024 0.173332 -dPolE 9910.000000 50.000000 0.308098 0.174986 -dPolE 9920.000000 50.000000 -0.162157 0.177604 -dPolE 9930.000000 50.000000 0.006326 0.179214 -dPolE 9940.000000 50.000000 0.334360 0.180260 -dPolE 9950.000000 50.000000 -0.057027 0.182277 -dPolE 9960.000000 50.000000 -0.119932 0.184175 -dPolE 9970.000000 50.000000 -0.006253 0.185234 -dPolE 9980.000000 50.000000 0.519621 0.186215 -dPolE 9990.000000 50.000000 0.267923 0.188910 -dPolE 10000.000000 50.000000 0.248118 0.190716 -dPolE 10025.000000 50.000000 0.152581 0.094372 -dPolE 10050.000000 50.000000 0.046835 0.092254 -dPolE 10075.000000 50.000000 0.071503 0.089518 -dPolE 10100.000000 50.000000 0.064264 0.087440 -dPolE 10125.000000 50.000000 0.045417 0.085643 -dPolE 10150.000000 50.000000 0.050526 0.083420 -dPolE 10175.000000 50.000000 0.081504 0.081413 -dPolE 10200.000000 50.000000 0.138516 0.079604 -dPolE 10225.000000 50.000000 0.023612 0.077694 -dPolE 10250.000000 50.000000 -0.034759 0.075919 -dPolE 10275.000000 50.000000 0.084213 0.074371 -dPolE 10300.000000 50.000000 0.102200 0.072524 -dPolE 10325.000000 50.000000 0.076141 0.070646 -dPolE 10350.000000 50.000000 0.037539 0.069126 -dPolE 10375.000000 50.000000 0.028366 0.067670 -dPolE 10400.000000 50.000000 0.046620 0.066283 -dPolE 10425.000000 50.000000 -0.024087 0.065021 -dPolE 10450.000000 50.000000 -0.068686 0.063770 -dPolE 10475.000000 50.000000 -0.042254 0.062482 -dPolE 10500.000000 50.000000 -0.008435 0.061300 -dPolE 10525.000000 50.000000 0.021159 0.060189 -dPolE 10550.000000 50.000000 0.009279 0.059161 -dPolE 10575.000000 50.000000 0.045246 0.058213 -dPolE 10600.000000 50.000000 0.120174 0.057330 -dPolE 10625.000000 50.000000 0.041877 0.056234 -dPolE 10650.000000 50.000000 0.024311 0.055241 -dPolE 10675.000000 50.000000 0.121992 0.054409 -dPolE 10700.000000 50.000000 0.111421 0.053441 -dPolE 10725.000000 50.000000 0.071521 0.052527 -dPolE 10750.000000 50.000000 0.035966 0.051927 -dPolE 10775.000000 50.000000 -0.006697 0.051020 -dPolE 10800.000000 50.000000 -0.052587 0.049936 -dPolE 10825.000000 50.000000 -0.051546 0.049184 -dPolE 10850.000000 50.000000 -0.013720 0.048367 -dPolE 10875.000000 50.000000 0.071368 0.047459 -dPolE 10900.000000 50.000000 0.013154 0.046843 -dPolE 10925.000000 50.000000 -0.028981 0.046211 -dPolE 10950.000000 50.000000 0.044921 0.045369 -dPolE 10975.000000 50.000000 0.090744 0.044708 -dPolE 11000.000000 50.000000 0.116784 0.044144 -dPolE 11025.000000 50.000000 0.079365 0.043659 -dPolE 11050.000000 50.000000 0.074622 0.043234 -dPolE 11075.000000 50.000000 0.100000 0.042864 -dPolE 11100.000000 50.000000 0.065482 0.042237 -dPolE 11125.000000 50.000000 0.041837 0.041744 -dPolE 11150.000000 50.000000 0.044492 0.041511 -dPolE 11175.000000 50.000000 0.069375 0.041156 -dPolE 11200.000000 50.000000 0.093298 0.040813 -dPolE 11225.000000 50.000000 0.087946 0.040635 -dPolE 11250.000000 50.000000 0.114908 0.040335 -dPolE 11275.000000 50.000000 0.155507 0.039979 -dPolE 11300.000000 50.000000 0.060232 0.039978 -dPolE 11325.000000 50.000000 0.005977 0.039845 -dPolE 11350.000000 50.000000 -0.001503 0.039565 -dPolE 11375.000000 50.000000 0.029070 0.039414 -dPolE 11400.000000 50.000000 0.050225 0.039258 -dPolE 11425.000000 50.000000 0.041431 0.039058 -dPolE 11450.000000 50.000000 0.024371 0.038875 -dPolE 11475.000000 50.000000 0.013225 0.038676 -dPolE 11500.000000 50.000000 0.043588 0.038368 -dPolE 11525.000000 50.000000 0.034056 0.038105 -dPolE 11550.000000 50.000000 0.001495 0.037871 -dPolE 11575.000000 50.000000 0.073277 0.037683 -dPolE 11600.000000 50.000000 0.123967 0.037389 -dPolE 11625.000000 50.000000 0.150184 0.036974 -dPolE 11650.000000 50.000000 0.102966 0.036766 -dPolE 11675.000000 50.000000 0.052358 0.036551 -dPolE 11700.000000 50.000000 0.012720 0.036261 -dPolE 11725.000000 50.000000 0.061797 0.036044 -dPolE 11750.000000 50.000000 0.119468 0.035820 -dPolE 11775.000000 50.000000 0.091141 0.035463 -dPolE 11800.000000 50.000000 0.035242 0.035161 -dPolE 11825.000000 50.000000 -0.026771 0.034889 -dPolE 11850.000000 50.000000 0.082657 0.034549 -dPolE 11875.000000 50.000000 0.151105 0.034241 -dPolE 11900.000000 50.000000 0.178102 0.033964 -dPolE 11925.000000 50.000000 0.072418 0.033706 -dPolE 11950.000000 50.000000 -0.005042 0.033468 -dPolE 11975.000000 50.000000 -0.017378 0.033258 -dPolE 12000.000000 50.000000 0.032459 0.033013 -dPolE 12025.000000 50.000000 0.075808 0.032770 -dPolE 12050.000000 50.000000 0.051718 0.032561 -dPolE 12075.000000 50.000000 0.053770 0.032399 -dPolE 12100.000000 50.000000 0.072295 0.032248 -dPolE 12125.000000 50.000000 0.122173 0.032023 -dPolE 12150.000000 50.000000 0.120936 0.031827 -dPolE 12175.000000 50.000000 0.080726 0.031655 -dPolE 12200.000000 50.000000 0.146554 0.031553 -dPolE 12225.000000 50.000000 0.141716 0.031463 -dPolE 12250.000000 50.000000 0.049742 0.031386 -dPolE 12275.000000 50.000000 0.108819 0.031321 -dPolE 12300.000000 50.000000 0.137050 0.031305 -dPolE 12325.000000 50.000000 0.066105 0.031385 -dPolE 12350.000000 50.000000 0.050572 0.031308 -dPolE 12375.000000 50.000000 0.058425 0.031252 -dPolE 12400.000000 50.000000 0.092348 0.031424 -dPolE 12425.000000 50.000000 0.096442 0.031356 -dPolE 12450.000000 50.000000 0.091021 0.031204 -dPolE 12475.000000 50.000000 0.122796 0.031306 -dPolE 12500.000000 50.000000 0.130061 0.031208 -dPolE 12525.000000 50.000000 0.120036 0.030962 -dPolE 12550.000000 50.000000 0.184366 0.030836 -dPolE 12575.000000 50.000000 0.166628 0.030717 -dPolE 12600.000000 50.000000 0.056298 0.030609 -dPolE 12625.000000 50.000000 0.060937 0.030533 -dPolE 12650.000000 50.000000 0.059844 0.030421 -dPolE 12675.000000 50.000000 0.031463 0.030245 -dPolE 12700.000000 50.000000 0.045291 0.030038 -dPolE 12725.000000 50.000000 0.085928 0.029877 -dPolE 12750.000000 50.000000 0.173254 0.029857 -dPolE 12775.000000 50.000000 0.149223 0.029703 -dPolE 12800.000000 50.000000 0.090681 0.029514 -dPolE 12825.000000 50.000000 0.060579 0.029378 -dPolE 12850.000000 50.000000 0.086419 0.029235 -dPolE 12875.000000 50.000000 0.134316 0.029094 -dPolE 12900.000000 50.000000 0.093290 0.028995 -dPolE 12925.000000 50.000000 0.084218 0.028846 -dPolE 12950.000000 50.000000 0.100563 0.028657 -dPolE 12975.000000 50.000000 0.089612 0.028574 -dPolE 13000.000000 50.000000 0.094492 0.028476 -dPolE 13025.000000 50.000000 0.117111 0.028362 -dPolE 13050.000000 50.000000 0.078422 0.028224 -dPolE 13075.000000 50.000000 0.064552 0.028107 -dPolE 13100.000000 50.000000 0.096692 0.028025 -dPolE 13125.000000 50.000000 0.115457 0.027945 -dPolE 13150.000000 50.000000 0.125393 0.027863 -dPolE 13175.000000 50.000000 0.121085 0.027773 -dPolE 13200.000000 50.000000 0.103467 0.027702 -dPolE 13225.000000 50.000000 0.095719 0.027657 -dPolE 13250.000000 50.000000 0.131886 0.027684 -dPolE 13275.000000 50.000000 0.095692 0.027670 -dPolE 13300.000000 50.000000 0.050700 0.027649 -dPolE 13325.000000 50.000000 0.116515 0.027672 -dPolE 13350.000000 50.000000 0.108039 0.027720 -dPolE 13375.000000 50.000000 0.061545 0.027779 -dPolE 13400.000000 50.000000 0.064221 0.027794 -dPolE 13425.000000 50.000000 0.054148 0.027862 -dPolE 13450.000000 50.000000 0.036366 0.027972 -dPolE 13475.000000 50.000000 0.079189 0.028130 -dPolE 13500.000000 50.000000 0.085544 0.028314 -dPolE 13525.000000 50.000000 0.055045 0.028524 -dPolE 13550.000000 50.000000 0.081256 0.028898 -dPolE 13575.000000 50.000000 0.089659 0.029292 -dPolE 13600.000000 50.000000 0.072629 0.029706 -dPolE 13625.000000 50.000000 0.114777 0.029951 -dPolE 13650.000000 50.000000 0.130876 0.030203 -dPolE 13675.000000 50.000000 0.095649 0.030491 -dPolE 13700.000000 50.000000 0.103346 0.031205 -dPolE 13725.000000 50.000000 0.093872 0.032420 -dPolE 13750.000000 50.000000 0.028327 0.034640 -dPolE 13775.000000 50.000000 0.078082 0.037767 -dPolE 13800.000000 50.000000 0.126841 0.041063 -dPolE 13825.000000 50.000000 0.067339 0.043093 -dPolE 13850.000000 50.000000 0.003209 0.042794 -dPolE 13875.000000 50.000000 -0.031575 0.041560 -dPolE 13900.000000 50.000000 0.012818 0.039770 -dPolE 13925.000000 50.000000 0.032024 0.038672 -dPolE 13950.000000 50.000000 0.029453 0.037646 -dPolE 13975.000000 50.000000 -0.021403 0.035906 -dPolE 14000.000000 50.000000 0.051185 0.034814 -dPolE 14025.000000 50.000000 0.143311 0.034009 -dPolE 14050.000000 50.000000 0.054902 0.033205 -dPolE 14075.000000 50.000000 0.077124 0.032608 -dPolE 14100.000000 50.000000 0.142772 0.032113 -dPolE 14125.000000 50.000000 0.088560 0.031527 -dPolE 14150.000000 50.000000 0.062694 0.031133 -dPolE 14175.000000 50.000000 0.053721 0.030856 -dPolE 14200.000000 50.000000 0.034113 0.030542 -dPolE 14225.000000 50.000000 0.042613 0.030335 -dPolE 14250.000000 50.000000 0.069303 0.030205 -dPolE 14275.000000 50.000000 0.049999 0.030019 -dPolE 14300.000000 50.000000 0.077763 0.029877 -dPolE 14325.000000 50.000000 0.142449 0.029772 -dPolE 14350.000000 50.000000 0.096170 0.029705 -dPolE 14375.000000 50.000000 0.120153 0.029609 -dPolE 14400.000000 50.000000 0.210104 0.029484 -dPolE 14425.000000 50.000000 0.086393 0.029546 -dPolE 14450.000000 50.000000 0.074470 0.029497 -dPolE 14475.000000 50.000000 0.178751 0.029330 -dPolE 14500.000000 50.000000 0.111406 0.029325 -dPolE 14525.000000 50.000000 0.109485 0.029344 -dPolE 14550.000000 50.000000 0.185084 0.029388 -dPolE 14575.000000 50.000000 0.033561 0.029326 -dPolE 14600.000000 50.000000 0.007110 0.029329 -dPolE 14625.000000 50.000000 0.141830 0.029413 -dPolE 14650.000000 50.000000 0.114589 0.029344 -dPolE 14675.000000 50.000000 0.102406 0.029365 -dPolE 14700.000000 50.000000 0.120576 0.029515 -dPolE 14725.000000 50.000000 0.109012 0.029435 -dPolE 14750.000000 50.000000 0.103379 0.029435 -dPolE 14775.000000 50.000000 0.107930 0.029565 -dPolE 14800.000000 50.000000 0.126052 0.029540 -dPolE 14825.000000 50.000000 0.139197 0.029529 -dPolE 14850.000000 50.000000 0.143966 0.029556 -dPolE 14875.000000 50.000000 0.150782 0.029598 -dPolE 14900.000000 50.000000 0.146443 0.029679 -dPolE 14925.000000 50.000000 0.125928 0.029813 -dPolE 14950.000000 50.000000 0.113343 0.029805 -dPolE 14975.000000 50.000000 0.114033 0.029874 -dPolE 15000.000000 50.000000 0.131850 0.030069 -dPolE 15025.000000 50.000000 0.139883 0.030022 -dPolE 15050.000000 50.000000 0.170255 0.030050 -dPolE 15075.000000 50.000000 0.232574 0.030213 -dPolE 15100.000000 50.000000 0.176046 0.030212 -dPolE 15125.000000 50.000000 0.143490 0.030233 -dPolE 15150.000000 50.000000 0.156189 0.030304 -dPolE 15175.000000 50.000000 0.136798 0.030365 -dPolE 15200.000000 50.000000 0.130024 0.030462 -dPolE 15225.000000 50.000000 0.142669 0.030604 -dPolE 15250.000000 50.000000 0.108080 0.030671 -dPolE 15275.000000 50.000000 0.120231 0.030771 -dPolE 15300.000000 50.000000 0.193911 0.030918 -dPolE 15325.000000 50.000000 0.141915 0.030965 -dPolE 15350.000000 50.000000 0.138096 0.031045 -dPolE 15375.000000 50.000000 0.197004 0.031169 -dPolE 15400.000000 50.000000 0.145419 0.031254 -dPolE 15425.000000 50.000000 0.163312 0.031392 -dPolE 15450.000000 50.000000 0.260337 0.031589 -dPolE 15475.000000 50.000000 0.140924 0.031698 -dPolE 15500.000000 50.000000 0.080452 0.031832 -dPolE 15525.000000 50.000000 0.079832 0.031991 -dPolE 15550.000000 50.000000 0.105684 0.031954 -dPolE 15575.000000 50.000000 0.163938 0.032043 -dPolE 15600.000000 50.000000 0.242791 0.032241 -dPolE 15625.000000 50.000000 0.122723 0.032359 -dPolE 15650.000000 50.000000 0.101089 0.032511 -dPolE 15675.000000 50.000000 0.152847 0.032681 -dPolE 15700.000000 50.000000 0.126868 0.032736 -dPolE 15725.000000 50.000000 0.114179 0.032878 -dPolE 15750.000000 50.000000 0.114074 0.033073 -dPolE 15775.000000 50.000000 0.143358 0.033194 -dPolE 15800.000000 50.000000 0.158324 0.033329 -dPolE 15825.000000 50.000000 0.169875 0.033482 -dPolE 15850.000000 50.000000 0.215157 0.033684 -dPolE 15875.000000 50.000000 0.168855 0.033845 -dPolE 15900.000000 50.000000 0.084405 0.033997 -dPolE 15925.000000 50.000000 0.045089 0.034206 -dPolE 15950.000000 50.000000 0.073173 0.034425 -dPolE 15975.000000 50.000000 0.117952 0.034636 -dPolE 16000.000000 50.000000 0.117858 0.034799 -dPolE 16025.000000 50.000000 0.152817 0.034942 -dPolE 16050.000000 50.000000 0.192196 0.035113 -dPolE 16075.000000 50.000000 0.209770 0.035376 -dPolE 16100.000000 50.000000 0.159250 0.035629 -dPolE 16125.000000 50.000000 0.108281 0.035853 -dPolE 16150.000000 50.000000 0.096832 0.036016 -dPolE 16175.000000 50.000000 0.079838 0.036337 -dPolE 16200.000000 50.000000 0.101045 0.036629 -dPolE 16225.000000 50.000000 0.191604 0.036811 -dPolE 16250.000000 50.000000 0.194736 0.037065 -dPolE 16275.000000 50.000000 0.162039 0.037366 -dPolE 16300.000000 50.000000 0.093280 0.037726 -dPolE 16325.000000 50.000000 0.108397 0.038030 -dPolE 16350.000000 50.000000 0.152333 0.038359 -dPolE 16375.000000 50.000000 0.222268 0.038722 -dPolE 16400.000000 50.000000 0.162699 0.039050 -dPolE 16425.000000 50.000000 0.142561 0.039548 -dPolE 16450.000000 50.000000 0.150028 0.040175 -dPolE 16475.000000 50.000000 0.068276 0.040488 -dPolE 16500.000000 50.000000 0.027317 0.041100 -dPolE 16525.000000 50.000000 0.016355 0.041911 -dPolE 16550.000000 50.000000 0.025466 0.042646 -dPolE 16575.000000 50.000000 0.088947 0.043699 -dPolE 16600.000000 50.000000 0.134143 0.045013 -dPolE 16625.000000 50.000000 -0.012207 0.046661 -dPolE 16650.000000 50.000000 0.016130 0.049292 -dPolE 16675.000000 50.000000 0.087027 0.052711 -dPolE 16700.000000 50.000000 0.080981 0.056974 -dPolE 16725.000000 50.000000 -0.025690 0.063414 -dPolE 16750.000000 50.000000 -0.097947 0.071740 -dPolE 16775.000000 50.000000 0.001565 0.082019 -dPolE 16800.000000 50.000000 0.042786 0.095587 -dPolE 16825.000000 50.000000 0.033039 0.112207 -dPolE 16850.000000 50.000000 -0.059271 0.131196 -dPolE 16875.000000 50.000000 -0.164263 0.153737 -dPolE 16900.000000 50.000000 -0.105080 0.180220 -dPolE 16925.000000 50.000000 0.163321 0.209968 -dPolE 16950.000000 50.000000 -0.259923 0.244560 -dPolE 16975.000000 50.000000 -0.650729 0.282122 -dPolE 17000.000000 50.000000 -0.879995 0.322788 -dPolE 1930.000000 60.000000 2.012906 0.166024 -dPolE 1940.000000 60.000000 1.517541 0.151911 -dPolE 1950.000000 60.000000 1.048276 0.140543 -dPolE 1960.000000 60.000000 0.787670 0.132892 -dPolE 1970.000000 60.000000 1.001257 0.125979 -dPolE 1980.000000 60.000000 1.318819 0.120419 -dPolE 1990.000000 60.000000 0.956136 0.116724 -dPolE 2000.000000 60.000000 0.802506 0.113034 -dPolE 2010.000000 60.000000 1.487767 0.108800 -dPolE 2020.000000 60.000000 1.543620 0.105312 -dPolE 2030.000000 60.000000 1.335608 0.102187 -dPolE 2040.000000 60.000000 1.448875 0.099041 -dPolE 2050.000000 60.000000 1.482400 0.096033 -dPolE 2060.000000 60.000000 1.437595 0.093189 -dPolE 2070.000000 60.000000 1.338508 0.090487 -dPolE 2080.000000 60.000000 1.162719 0.088067 -dPolE 2090.000000 60.000000 1.070732 0.085652 -dPolE 2100.000000 60.000000 1.206537 0.083220 -dPolE 2110.000000 60.000000 1.063960 0.081457 -dPolE 2120.000000 60.000000 1.058711 0.079629 -dPolE 2130.000000 60.000000 1.092527 0.077830 -dPolE 2140.000000 60.000000 1.133319 0.076244 -dPolE 2150.000000 60.000000 1.059309 0.074881 -dPolE 2160.000000 60.000000 1.020163 0.073639 -dPolE 2170.000000 60.000000 1.154215 0.072340 -dPolE 2180.000000 60.000000 1.053484 0.071223 -dPolE 2190.000000 60.000000 0.948986 0.070078 -dPolE 2200.000000 60.000000 0.850124 0.068967 -dPolE 2210.000000 60.000000 0.928981 0.067785 -dPolE 2220.000000 60.000000 0.871681 0.066706 -dPolE 2230.000000 60.000000 0.862197 0.065678 -dPolE 2240.000000 60.000000 0.892073 0.064678 -dPolE 2250.000000 60.000000 0.985824 0.063710 -dPolE 2260.000000 60.000000 0.914113 0.062941 -dPolE 2270.000000 60.000000 0.883417 0.062120 -dPolE 2280.000000 60.000000 0.915131 0.061265 -dPolE 2290.000000 60.000000 0.843216 0.060484 -dPolE 2300.000000 60.000000 0.655426 0.059890 -dPolE 2310.000000 60.000000 0.668532 0.059190 -dPolE 2320.000000 60.000000 0.704822 0.058487 -dPolE 2330.000000 60.000000 0.651066 0.057925 -dPolE 2340.000000 60.000000 0.742352 0.057311 -dPolE 2350.000000 60.000000 0.694571 0.056804 -dPolE 2360.000000 60.000000 0.705838 0.056327 -dPolE 2370.000000 60.000000 0.643769 0.055906 -dPolE 2380.000000 60.000000 0.742556 0.055393 -dPolE 2390.000000 60.000000 0.744434 0.055051 -dPolE 2400.000000 60.000000 0.601366 0.054853 -dPolE 2410.000000 60.000000 0.647136 0.054551 -dPolE 2420.000000 60.000000 0.612973 0.054316 -dPolE 2430.000000 60.000000 0.626893 0.054157 -dPolE 2440.000000 60.000000 0.553787 0.054048 -dPolE 2450.000000 60.000000 0.590559 0.053877 -dPolE 2460.000000 60.000000 0.663062 0.053740 -dPolE 2470.000000 60.000000 0.626739 0.053694 -dPolE 2480.000000 60.000000 0.528072 0.053683 -dPolE 2490.000000 60.000000 0.492209 0.053679 -dPolE 2500.000000 60.000000 0.514337 0.053711 -dPolE 2510.000000 60.000000 0.556894 0.053756 -dPolE 2520.000000 60.000000 0.528882 0.053805 -dPolE 2530.000000 60.000000 0.628777 0.053843 -dPolE 2540.000000 60.000000 0.657087 0.054030 -dPolE 2550.000000 60.000000 0.600725 0.054261 -dPolE 2560.000000 60.000000 0.683492 0.054453 -dPolE 2570.000000 60.000000 0.682710 0.054750 -dPolE 2580.000000 60.000000 0.574746 0.055127 -dPolE 2590.000000 60.000000 0.450928 0.055551 -dPolE 2600.000000 60.000000 0.465204 0.055965 -dPolE 2610.000000 60.000000 0.548784 0.056341 -dPolE 2620.000000 60.000000 0.470654 0.056823 -dPolE 2630.000000 60.000000 0.568797 0.057247 -dPolE 2640.000000 60.000000 0.683455 0.057706 -dPolE 2650.000000 60.000000 0.564646 0.058363 -dPolE 2660.000000 60.000000 0.544952 0.059032 -dPolE 2670.000000 60.000000 0.525642 0.059708 -dPolE 2680.000000 60.000000 0.606003 0.060276 -dPolE 2690.000000 60.000000 0.459058 0.060999 -dPolE 2700.000000 60.000000 0.412868 0.061703 -dPolE 2710.000000 60.000000 0.632934 0.062279 -dPolE 2720.000000 60.000000 0.471783 0.063085 -dPolE 2730.000000 60.000000 0.303105 0.063878 -dPolE 2740.000000 60.000000 0.481616 0.064456 -dPolE 2750.000000 60.000000 0.514108 0.065099 -dPolE 2760.000000 60.000000 0.403951 0.065910 -dPolE 2770.000000 60.000000 0.308047 0.066861 -dPolE 2780.000000 60.000000 0.396232 0.067368 -dPolE 2790.000000 60.000000 0.433405 0.067826 -dPolE 2800.000000 60.000000 0.273145 0.068513 -dPolE 2810.000000 60.000000 0.277516 0.069190 -dPolE 2820.000000 60.000000 0.385901 0.069792 -dPolE 2830.000000 60.000000 0.286315 0.070541 -dPolE 2840.000000 60.000000 0.248585 0.071187 -dPolE 2850.000000 60.000000 0.375307 0.071875 -dPolE 2860.000000 60.000000 0.502115 0.072578 -dPolE 2870.000000 60.000000 0.464268 0.073327 -dPolE 2880.000000 60.000000 0.443289 0.074213 -dPolE 2890.000000 60.000000 0.359726 0.075204 -dPolE 2900.000000 60.000000 0.241482 0.076263 -dPolE 2910.000000 60.000000 0.322618 0.077175 -dPolE 2920.000000 60.000000 0.245633 0.078247 -dPolE 2930.000000 60.000000 0.238916 0.079234 -dPolE 2940.000000 60.000000 0.339293 0.080051 -dPolE 2950.000000 60.000000 0.425088 0.080870 -dPolE 2960.000000 60.000000 0.285559 0.081991 -dPolE 2970.000000 60.000000 0.140763 0.083040 -dPolE 2980.000000 60.000000 0.285890 0.083856 -dPolE 2990.000000 60.000000 0.238392 0.084897 -dPolE 3000.000000 60.000000 0.307564 0.085832 -dPolE 3010.000000 60.000000 0.410211 0.086622 -dPolE 3020.000000 60.000000 0.413145 0.087629 -dPolE 3030.000000 60.000000 0.420332 0.088777 -dPolE 3040.000000 60.000000 0.351613 0.089892 -dPolE 3050.000000 60.000000 0.371732 0.091095 -dPolE 3060.000000 60.000000 0.429186 0.092156 -dPolE 3070.000000 60.000000 0.258853 0.093421 -dPolE 3080.000000 60.000000 0.136309 0.094728 -dPolE 3090.000000 60.000000 0.090759 0.096009 -dPolE 3100.000000 60.000000 0.247481 0.096951 -dPolE 3110.000000 60.000000 0.312184 0.097941 -dPolE 3120.000000 60.000000 0.087910 0.099404 -dPolE 3130.000000 60.000000 0.097312 0.100363 -dPolE 3140.000000 60.000000 0.316313 0.101167 -dPolE 3150.000000 60.000000 0.229031 0.102512 -dPolE 3160.000000 60.000000 0.209536 0.103613 -dPolE 3170.000000 60.000000 0.403433 0.104500 -dPolE 3180.000000 60.000000 0.319613 0.105630 -dPolE 3190.000000 60.000000 0.244034 0.106942 -dPolE 3200.000000 60.000000 0.205142 0.108116 -dPolE 3210.000000 60.000000 0.301141 0.109206 -dPolE 3220.000000 60.000000 0.116690 0.110629 -dPolE 3230.000000 60.000000 0.248951 0.111554 -dPolE 3240.000000 60.000000 0.327950 0.112564 -dPolE 3250.000000 60.000000 0.055768 0.114153 -dPolE 3260.000000 60.000000 0.127588 0.116108 -dPolE 3270.000000 60.000000 0.140855 0.118569 -dPolE 3280.000000 60.000000 -0.090111 0.121208 -dPolE 3290.000000 60.000000 -0.250775 0.123269 -dPolE 3300.000000 60.000000 0.108512 0.124537 -dPolE 3310.000000 60.000000 0.315369 0.126020 -dPolE 3320.000000 60.000000 -0.047663 0.127803 -dPolE 3330.000000 60.000000 0.064585 0.128619 -dPolE 3340.000000 60.000000 0.013478 0.129538 -dPolE 3350.000000 60.000000 0.336589 0.130020 -dPolE 3360.000000 60.000000 0.344854 0.130901 -dPolE 3370.000000 60.000000 0.002839 0.132060 -dPolE 3380.000000 60.000000 0.107063 0.132445 -dPolE 3390.000000 60.000000 0.029733 0.132633 -dPolE 3400.000000 60.000000 0.042743 0.132864 -dPolE 3410.000000 60.000000 0.114713 0.133329 -dPolE 3420.000000 60.000000 -0.109458 0.134759 -dPolE 3430.000000 60.000000 -0.016534 0.135476 -dPolE 3440.000000 60.000000 0.057097 0.136153 -dPolE 3450.000000 60.000000 -0.016529 0.137638 -dPolE 3460.000000 60.000000 -0.094496 0.138731 -dPolE 3470.000000 60.000000 0.025352 0.139784 -dPolE 3480.000000 60.000000 0.010211 0.140785 -dPolE 3490.000000 60.000000 0.032855 0.141702 -dPolE 3500.000000 60.000000 0.078735 0.142641 -dPolE 3510.000000 60.000000 -0.145660 0.144171 -dPolE 3520.000000 60.000000 -0.209177 0.145380 -dPolE 3530.000000 60.000000 -0.096237 0.146256 -dPolE 3540.000000 60.000000 -0.011748 0.147407 -dPolE 3550.000000 60.000000 0.070835 0.148319 -dPolE 3560.000000 60.000000 0.234130 0.148924 -dPolE 3570.000000 60.000000 0.074468 0.150262 -dPolE 3580.000000 60.000000 -0.147008 0.151762 -dPolE 3590.000000 60.000000 -0.401542 0.153291 -dPolE 3600.000000 60.000000 0.069330 0.153365 -dPolE 3610.000000 60.000000 0.202357 0.154179 -dPolE 3620.000000 60.000000 -0.250456 0.155569 -dPolE 3630.000000 60.000000 -0.056951 0.155791 -dPolE 3640.000000 60.000000 0.076664 0.156613 -dPolE 3650.000000 60.000000 0.334934 0.157501 -dPolE 3660.000000 60.000000 -0.015695 0.157859 -dPolE 3670.000000 60.000000 -0.165628 0.157011 -dPolE 3680.000000 60.000000 -0.086505 0.156465 -dPolE 3690.000000 60.000000 0.074703 0.156772 -dPolE 3700.000000 60.000000 0.094066 0.158513 -dPolE 3710.000000 60.000000 0.177586 0.160198 -dPolE 3720.000000 60.000000 0.144650 0.160872 -dPolE 3730.000000 60.000000 0.218147 0.161727 -dPolE 3740.000000 60.000000 0.130061 0.163071 -dPolE 3750.000000 60.000000 0.132308 0.162891 -dPolE 3760.000000 60.000000 0.368955 0.161826 -dPolE 3770.000000 60.000000 0.086583 0.162480 -dPolE 3780.000000 60.000000 0.224982 0.161135 -dPolE 3790.000000 60.000000 0.517139 0.159236 -dPolE 3800.000000 60.000000 0.122036 0.159771 -dPolE 3810.000000 60.000000 -0.143888 0.161526 -dPolE 3820.000000 60.000000 0.218056 0.161773 -dPolE 3830.000000 60.000000 0.205284 0.160486 -dPolE 3840.000000 60.000000 0.152828 0.160559 -dPolE 3850.000000 60.000000 0.041870 0.162105 -dPolE 3860.000000 60.000000 0.385637 0.160270 -dPolE 3870.000000 60.000000 0.173754 0.158163 -dPolE 3880.000000 60.000000 0.079956 0.155766 -dPolE 3890.000000 60.000000 0.372540 0.155516 -dPolE 3900.000000 60.000000 0.289990 0.159888 -dPolE 3910.000000 60.000000 0.120917 0.164680 -dPolE 3920.000000 60.000000 0.347971 0.163195 -dPolE 3930.000000 60.000000 0.140706 0.160638 -dPolE 3940.000000 60.000000 -0.135560 0.158817 -dPolE 3950.000000 60.000000 0.175016 0.157565 -dPolE 3960.000000 60.000000 0.429315 0.158530 -dPolE 3970.000000 60.000000 0.233016 0.160381 -dPolE 3980.000000 60.000000 0.095791 0.158290 -dPolE 3990.000000 60.000000 0.090064 0.155715 -dPolE 4000.000000 60.000000 0.408313 0.156133 -dPolE 4010.000000 60.000000 0.019883 0.160375 -dPolE 4020.000000 60.000000 0.262995 0.161961 -dPolE 4030.000000 60.000000 0.606708 0.161273 -dPolE 4040.000000 60.000000 0.044502 0.160865 -dPolE 4050.000000 60.000000 -0.000265 0.157496 -dPolE 4060.000000 60.000000 0.343310 0.153298 -dPolE 4070.000000 60.000000 0.244451 0.153903 -dPolE 4080.000000 60.000000 0.103483 0.158583 -dPolE 4090.000000 60.000000 0.202244 0.161794 -dPolE 4100.000000 60.000000 0.231990 0.162197 -dPolE 4110.000000 60.000000 0.225513 0.161943 -dPolE 4120.000000 60.000000 0.036817 0.160238 -dPolE 4130.000000 60.000000 -0.161719 0.155863 -dPolE 4140.000000 60.000000 0.055976 0.153493 -dPolE 4150.000000 60.000000 0.521694 0.154886 -dPolE 4160.000000 60.000000 0.440408 0.156412 -dPolE 4170.000000 60.000000 0.119660 0.156491 -dPolE 4180.000000 60.000000 0.179259 0.156300 -dPolE 4190.000000 60.000000 0.120551 0.158319 -dPolE 4200.000000 60.000000 0.045001 0.158823 -dPolE 4210.000000 60.000000 0.187368 0.154256 -dPolE 4220.000000 60.000000 0.164454 0.149176 -dPolE 4230.000000 60.000000 -0.001282 0.146429 -dPolE 4240.000000 60.000000 0.075093 0.145910 -dPolE 4250.000000 60.000000 0.193039 0.150652 -dPolE 4260.000000 60.000000 0.107504 0.156677 -dPolE 4270.000000 60.000000 0.190375 0.155843 -dPolE 4280.000000 60.000000 0.197353 0.151204 -dPolE 4290.000000 60.000000 0.396372 0.151957 -dPolE 4300.000000 60.000000 0.411136 0.152785 -dPolE 4310.000000 60.000000 0.168788 0.151966 -dPolE 4320.000000 60.000000 -0.097161 0.154677 -dPolE 4330.000000 60.000000 -0.294491 0.157424 -dPolE 4340.000000 60.000000 0.145084 0.152963 -dPolE 4350.000000 60.000000 -0.127899 0.151738 -dPolE 4360.000000 60.000000 -0.041852 0.153614 -dPolE 4370.000000 60.000000 0.393021 0.152898 -dPolE 4380.000000 60.000000 0.087159 0.152407 -dPolE 4390.000000 60.000000 0.016607 0.151374 -dPolE 4400.000000 60.000000 0.214413 0.150409 -dPolE 4410.000000 60.000000 0.119124 0.148008 -dPolE 4420.000000 60.000000 0.019184 0.143197 -dPolE 4430.000000 60.000000 0.167331 0.142210 -dPolE 4440.000000 60.000000 0.176085 0.143491 -dPolE 4450.000000 60.000000 -0.045418 0.143051 -dPolE 4460.000000 60.000000 0.022234 0.141801 -dPolE 4470.000000 60.000000 -0.093566 0.142707 -dPolE 4480.000000 60.000000 0.087509 0.143185 -dPolE 4490.000000 60.000000 0.218287 0.142785 -dPolE 4500.000000 60.000000 0.019291 0.142262 -dPolE 4510.000000 60.000000 -0.033816 0.142266 -dPolE 4520.000000 60.000000 0.091466 0.142477 -dPolE 4530.000000 60.000000 0.080271 0.142276 -dPolE 4540.000000 60.000000 -0.102243 0.141907 -dPolE 4550.000000 60.000000 0.143918 0.140740 -dPolE 4560.000000 60.000000 0.415811 0.138969 -dPolE 4570.000000 60.000000 0.225204 0.137271 -dPolE 4580.000000 60.000000 0.019862 0.134459 -dPolE 4590.000000 60.000000 0.031293 0.132086 -dPolE 4600.000000 60.000000 -0.200797 0.134403 -dPolE 4610.000000 60.000000 -0.320499 0.137978 -dPolE 4620.000000 60.000000 0.117204 0.138334 -dPolE 4630.000000 60.000000 0.189403 0.134967 -dPolE 4640.000000 60.000000 0.087753 0.130138 -dPolE 4650.000000 60.000000 0.098829 0.128327 -dPolE 4660.000000 60.000000 -0.077205 0.130117 -dPolE 4670.000000 60.000000 -0.245260 0.132979 -dPolE 4680.000000 60.000000 0.005344 0.133564 -dPolE 4690.000000 60.000000 0.090938 0.133917 -dPolE 4700.000000 60.000000 0.025743 0.136678 -dPolE 4710.000000 60.000000 0.214742 0.138321 -dPolE 4720.000000 60.000000 0.173827 0.136733 -dPolE 4730.000000 60.000000 -0.229929 0.134498 -dPolE 4740.000000 60.000000 -0.081735 0.133240 -dPolE 4750.000000 60.000000 0.195827 0.133332 -dPolE 4760.000000 60.000000 0.180940 0.132825 -dPolE 4770.000000 60.000000 -0.005475 0.131929 -dPolE 4780.000000 60.000000 0.210858 0.130367 -dPolE 4790.000000 60.000000 0.070924 0.129433 -dPolE 4800.000000 60.000000 -0.111462 0.129398 -dPolE 4810.000000 60.000000 0.329546 0.128394 -dPolE 4820.000000 60.000000 0.463682 0.128158 -dPolE 4830.000000 60.000000 0.464544 0.127671 -dPolE 4840.000000 60.000000 -0.002532 0.126805 -dPolE 4850.000000 60.000000 -0.131224 0.121136 -dPolE 4860.000000 60.000000 -0.002068 0.106446 -dPolE 4870.000000 60.000000 -0.012645 0.101216 -dPolE 4880.000000 60.000000 0.066608 0.116139 -dPolE 4890.000000 60.000000 0.047193 0.123736 -dPolE 4900.000000 60.000000 0.082183 0.123475 -dPolE 4910.000000 60.000000 0.190313 0.122139 -dPolE 4920.000000 60.000000 0.157589 0.122487 -dPolE 4930.000000 60.000000 0.125586 0.122128 -dPolE 4940.000000 60.000000 0.321886 0.120985 -dPolE 4950.000000 60.000000 0.046117 0.122641 -dPolE 4960.000000 60.000000 -0.108656 0.123517 -dPolE 4970.000000 60.000000 0.126604 0.122227 -dPolE 4980.000000 60.000000 0.199338 0.120867 -dPolE 4990.000000 60.000000 -0.171764 0.119758 -dPolE 5000.000000 60.000000 -0.195585 0.119232 -dPolE 5010.000000 60.000000 0.321588 0.118311 -dPolE 5020.000000 60.000000 0.325229 0.117469 -dPolE 5030.000000 60.000000 -0.055149 0.117903 -dPolE 5040.000000 60.000000 0.004251 0.118164 -dPolE 5050.000000 60.000000 -0.113387 0.118527 -dPolE 5060.000000 60.000000 -0.003599 0.117835 -dPolE 5070.000000 60.000000 0.016080 0.117550 -dPolE 5080.000000 60.000000 0.035811 0.117689 -dPolE 5090.000000 60.000000 0.183251 0.117369 -dPolE 5100.000000 60.000000 0.356640 0.117047 -dPolE 5110.000000 60.000000 0.016492 0.117045 -dPolE 5120.000000 60.000000 0.079526 0.116154 -dPolE 5130.000000 60.000000 0.148511 0.115928 -dPolE 5140.000000 60.000000 0.003792 0.115983 -dPolE 5150.000000 60.000000 -0.014981 0.115731 -dPolE 5160.000000 60.000000 0.185916 0.114992 -dPolE 5170.000000 60.000000 0.023081 0.114969 -dPolE 5180.000000 60.000000 0.058113 0.114609 -dPolE 5190.000000 60.000000 0.234280 0.113978 -dPolE 5200.000000 60.000000 0.021568 0.113598 -dPolE 5210.000000 60.000000 -0.011126 0.113164 -dPolE 5220.000000 60.000000 -0.056340 0.113105 -dPolE 5230.000000 60.000000 0.113413 0.112530 -dPolE 5240.000000 60.000000 0.044475 0.112269 -dPolE 5250.000000 60.000000 0.170499 0.111628 -dPolE 5260.000000 60.000000 0.072612 0.110962 -dPolE 5270.000000 60.000000 -0.044845 0.110125 -dPolE 5280.000000 60.000000 -0.027013 0.109833 -dPolE 5290.000000 60.000000 0.138673 0.109454 -dPolE 5300.000000 60.000000 0.151788 0.109079 -dPolE 5310.000000 60.000000 0.065455 0.109106 -dPolE 5320.000000 60.000000 -0.130497 0.109179 -dPolE 5330.000000 60.000000 0.071921 0.108144 -dPolE 5340.000000 60.000000 0.080741 0.107166 -dPolE 5350.000000 60.000000 0.080720 0.106823 -dPolE 5360.000000 60.000000 0.070902 0.106610 -dPolE 5370.000000 60.000000 0.098840 0.106368 -dPolE 5380.000000 60.000000 0.042272 0.106063 -dPolE 5390.000000 60.000000 -0.016387 0.105314 -dPolE 5400.000000 60.000000 0.096247 0.104663 -dPolE 5410.000000 60.000000 0.057187 0.104383 -dPolE 5420.000000 60.000000 0.060314 0.103689 -dPolE 5430.000000 60.000000 0.158107 0.102714 -dPolE 5440.000000 60.000000 0.346014 0.102088 -dPolE 5450.000000 60.000000 0.123500 0.102076 -dPolE 5460.000000 60.000000 -0.086974 0.102310 -dPolE 5470.000000 60.000000 0.000926 0.102000 -dPolE 5480.000000 60.000000 0.000325 0.101195 -dPolE 5490.000000 60.000000 -0.091806 0.100625 -dPolE 5500.000000 60.000000 0.003272 0.100385 -dPolE 5510.000000 60.000000 0.132771 0.100232 -dPolE 5520.000000 60.000000 0.066032 0.100149 -dPolE 5530.000000 60.000000 0.068240 0.099794 -dPolE 5540.000000 60.000000 -0.002075 0.099448 -dPolE 5550.000000 60.000000 0.065494 0.099182 -dPolE 5560.000000 60.000000 0.228883 0.098771 -dPolE 5570.000000 60.000000 0.179819 0.098499 -dPolE 5580.000000 60.000000 0.229377 0.098224 -dPolE 5590.000000 60.000000 0.200761 0.098161 -dPolE 5600.000000 60.000000 -0.029814 0.098136 -dPolE 5610.000000 60.000000 -0.031860 0.097613 -dPolE 5620.000000 60.000000 0.124401 0.097211 -dPolE 5630.000000 60.000000 -0.012732 0.097206 -dPolE 5640.000000 60.000000 0.199609 0.096599 -dPolE 5650.000000 60.000000 0.111434 0.096258 -dPolE 5660.000000 60.000000 -0.022822 0.096012 -dPolE 5670.000000 60.000000 0.050791 0.094920 -dPolE 5680.000000 60.000000 0.208713 0.093045 -dPolE 5690.000000 60.000000 0.193145 0.091105 -dPolE 5700.000000 60.000000 0.163296 0.088494 -dPolE 5710.000000 60.000000 0.236489 0.087101 -dPolE 5720.000000 60.000000 0.135189 0.086526 -dPolE 5730.000000 60.000000 0.103073 0.085716 -dPolE 5740.000000 60.000000 0.102735 0.084146 -dPolE 5750.000000 60.000000 0.281283 0.083101 -dPolE 5760.000000 60.000000 0.106584 0.082693 -dPolE 5770.000000 60.000000 0.003989 0.081233 -dPolE 5780.000000 60.000000 0.144296 0.079909 -dPolE 5790.000000 60.000000 0.308160 0.079599 -dPolE 5800.000000 60.000000 0.338627 0.079034 -dPolE 5810.000000 60.000000 0.297521 0.077089 -dPolE 5820.000000 60.000000 0.160348 0.075233 -dPolE 5830.000000 60.000000 0.079083 0.077147 -dPolE 5840.000000 60.000000 0.086507 0.080734 -dPolE 5850.000000 60.000000 0.057972 0.080172 -dPolE 5860.000000 60.000000 -0.002917 0.080654 -dPolE 5870.000000 60.000000 0.072600 0.081397 -dPolE 5880.000000 60.000000 0.140201 0.080528 -dPolE 5890.000000 60.000000 0.127896 0.080279 -dPolE 5900.000000 60.000000 0.266977 0.082813 -dPolE 5910.000000 60.000000 0.150759 0.084638 -dPolE 5920.000000 60.000000 0.158137 0.084640 -dPolE 5930.000000 60.000000 0.308715 0.083125 -dPolE 5940.000000 60.000000 0.197292 0.081998 -dPolE 5950.000000 60.000000 0.070092 0.081099 -dPolE 5960.000000 60.000000 0.169407 0.081197 -dPolE 5970.000000 60.000000 0.170079 0.082542 -dPolE 5980.000000 60.000000 0.142755 0.083250 -dPolE 5990.000000 60.000000 0.019858 0.083426 -dPolE 6000.000000 60.000000 0.124299 0.083397 -dPolE 6010.000000 60.000000 0.185808 0.082752 -dPolE 6020.000000 60.000000 -0.012032 0.081977 -dPolE 6030.000000 60.000000 0.036965 0.080755 -dPolE 6040.000000 60.000000 0.065805 0.080384 -dPolE 6050.000000 60.000000 0.156506 0.081915 -dPolE 6060.000000 60.000000 0.257697 0.082311 -dPolE 6070.000000 60.000000 0.051270 0.082622 -dPolE 6080.000000 60.000000 0.035386 0.082889 -dPolE 6090.000000 60.000000 0.275184 0.082930 -dPolE 6100.000000 60.000000 0.296988 0.082644 -dPolE 6110.000000 60.000000 0.176791 0.082296 -dPolE 6120.000000 60.000000 0.182026 0.082092 -dPolE 6130.000000 60.000000 0.198043 0.081923 -dPolE 6140.000000 60.000000 0.023700 0.081856 -dPolE 6150.000000 60.000000 0.111927 0.082241 -dPolE 6160.000000 60.000000 0.250651 0.082854 -dPolE 6170.000000 60.000000 0.173763 0.083344 -dPolE 6180.000000 60.000000 0.139855 0.083521 -dPolE 6190.000000 60.000000 0.063427 0.083886 -dPolE 6200.000000 60.000000 0.169010 0.083391 -dPolE 6210.000000 60.000000 0.323890 0.083307 -dPolE 6220.000000 60.000000 0.102857 0.083870 -dPolE 6230.000000 60.000000 0.116962 0.083402 -dPolE 6240.000000 60.000000 0.292263 0.082961 -dPolE 6250.000000 60.000000 0.133243 0.083827 -dPolE 6260.000000 60.000000 0.013898 0.084501 -dPolE 6270.000000 60.000000 0.160133 0.084381 -dPolE 6280.000000 60.000000 0.269942 0.084180 -dPolE 6290.000000 60.000000 0.164173 0.084307 -dPolE 6300.000000 60.000000 0.079537 0.084424 -dPolE 6310.000000 60.000000 0.238625 0.084717 -dPolE 6320.000000 60.000000 0.288097 0.084811 -dPolE 6330.000000 60.000000 0.245282 0.084552 -dPolE 6340.000000 60.000000 0.092056 0.084808 -dPolE 6350.000000 60.000000 0.160028 0.084743 -dPolE 6360.000000 60.000000 0.283320 0.084320 -dPolE 6370.000000 60.000000 0.236331 0.084203 -dPolE 6380.000000 60.000000 0.162948 0.084389 -dPolE 6390.000000 60.000000 0.159945 0.084372 -dPolE 6400.000000 60.000000 0.235756 0.084243 -dPolE 6410.000000 60.000000 0.137601 0.084513 -dPolE 6420.000000 60.000000 0.085332 0.084828 -dPolE 6430.000000 60.000000 0.166905 0.084651 -dPolE 6440.000000 60.000000 0.177600 0.084652 -dPolE 6450.000000 60.000000 0.225392 0.084712 -dPolE 6460.000000 60.000000 0.183263 0.084707 -dPolE 6470.000000 60.000000 0.168135 0.084692 -dPolE 6480.000000 60.000000 0.130577 0.084612 -dPolE 6490.000000 60.000000 0.082343 0.084552 -dPolE 6500.000000 60.000000 0.091108 0.084478 -dPolE 6510.000000 60.000000 0.017791 0.084591 -dPolE 6520.000000 60.000000 0.148927 0.084355 -dPolE 6530.000000 60.000000 0.193966 0.084378 -dPolE 6540.000000 60.000000 0.386095 0.084938 -dPolE 6550.000000 60.000000 0.161694 0.075539 -dPolE 6560.000000 60.000000 0.025184 0.053060 -dPolE 6570.000000 60.000000 0.074273 0.051177 -dPolE 6580.000000 60.000000 0.143584 0.069831 -dPolE 6590.000000 60.000000 0.153618 0.083617 -dPolE 6600.000000 60.000000 0.188167 0.084097 -dPolE 6610.000000 60.000000 0.212066 0.084132 -dPolE 6620.000000 60.000000 0.178455 0.083975 -dPolE 6630.000000 60.000000 0.200655 0.083825 -dPolE 6640.000000 60.000000 0.178088 0.083882 -dPolE 6650.000000 60.000000 0.054024 0.084031 -dPolE 6660.000000 60.000000 0.029878 0.084035 -dPolE 6670.000000 60.000000 -0.009503 0.084046 -dPolE 6680.000000 60.000000 0.102650 0.083850 -dPolE 6690.000000 60.000000 0.036005 0.083720 -dPolE 6700.000000 60.000000 0.140745 0.083372 -dPolE 6710.000000 60.000000 0.294385 0.083227 -dPolE 6720.000000 60.000000 0.167801 0.083262 -dPolE 6730.000000 60.000000 0.063641 0.083315 -dPolE 6740.000000 60.000000 0.187800 0.083287 -dPolE 6750.000000 60.000000 0.247689 0.083342 -dPolE 6760.000000 60.000000 0.265954 0.083321 -dPolE 6770.000000 60.000000 0.224049 0.083237 -dPolE 6780.000000 60.000000 0.178510 0.083116 -dPolE 6790.000000 60.000000 0.152835 0.082944 -dPolE 6800.000000 60.000000 0.259618 0.082757 -dPolE 6810.000000 60.000000 0.087262 0.082876 -dPolE 6820.000000 60.000000 -0.030939 0.083023 -dPolE 6830.000000 60.000000 0.182961 0.082778 -dPolE 6840.000000 60.000000 0.160519 0.082652 -dPolE 6850.000000 60.000000 0.171789 0.082284 -dPolE 6860.000000 60.000000 0.053327 0.082391 -dPolE 6870.000000 60.000000 0.218266 0.082467 -dPolE 6880.000000 60.000000 0.203370 0.082601 -dPolE 6890.000000 60.000000 0.061948 0.082750 -dPolE 6900.000000 60.000000 0.027185 0.082853 -dPolE 6910.000000 60.000000 0.090774 0.082785 -dPolE 6920.000000 60.000000 0.101120 0.082658 -dPolE 6930.000000 60.000000 0.079887 0.082619 -dPolE 6940.000000 60.000000 0.077907 0.082529 -dPolE 6950.000000 60.000000 0.200988 0.082496 -dPolE 6960.000000 60.000000 0.174280 0.082536 -dPolE 6970.000000 60.000000 0.140318 0.082446 -dPolE 6980.000000 60.000000 0.211945 0.082259 -dPolE 6990.000000 60.000000 0.199837 0.082325 -dPolE 7000.000000 60.000000 0.185053 0.082447 -dPolE 7010.000000 60.000000 0.191758 0.082589 -dPolE 7020.000000 60.000000 0.297614 0.082512 -dPolE 7030.000000 60.000000 0.284766 0.082483 -dPolE 7040.000000 60.000000 0.306752 0.082595 -dPolE 7050.000000 60.000000 0.049521 0.082996 -dPolE 7060.000000 60.000000 0.145427 0.082911 -dPolE 7070.000000 60.000000 0.244727 0.082507 -dPolE 7080.000000 60.000000 0.084332 0.082693 -dPolE 7090.000000 60.000000 -0.097994 0.083089 -dPolE 7100.000000 60.000000 0.251055 0.082905 -dPolE 7110.000000 60.000000 0.027463 0.083177 -dPolE 7120.000000 60.000000 -0.129593 0.083339 -dPolE 7130.000000 60.000000 0.084185 0.083107 -dPolE 7140.000000 60.000000 0.327654 0.082795 -dPolE 7150.000000 60.000000 0.341273 0.082711 -dPolE 7160.000000 60.000000 0.142004 0.082961 -dPolE 7170.000000 60.000000 -0.062626 0.083430 -dPolE 7180.000000 60.000000 0.139195 0.083212 -dPolE 7190.000000 60.000000 0.151693 0.083223 -dPolE 7200.000000 60.000000 0.178745 0.083325 -dPolE 7210.000000 60.000000 0.173650 0.083507 -dPolE 7220.000000 60.000000 0.040657 0.083645 -dPolE 7230.000000 60.000000 0.019403 0.083847 -dPolE 7240.000000 60.000000 0.201372 0.083624 -dPolE 7250.000000 60.000000 0.072531 0.083414 -dPolE 7260.000000 60.000000 0.143067 0.082984 -dPolE 7270.000000 60.000000 0.252953 0.083046 -dPolE 7280.000000 60.000000 0.089824 0.083310 -dPolE 7290.000000 60.000000 0.258245 0.083045 -dPolE 7300.000000 60.000000 0.180000 0.083217 -dPolE 7310.000000 60.000000 -0.050995 0.083369 -dPolE 7320.000000 60.000000 -0.026875 0.083493 -dPolE 7330.000000 60.000000 0.201200 0.083558 -dPolE 7340.000000 60.000000 0.201142 0.083482 -dPolE 7350.000000 60.000000 0.189028 0.083094 -dPolE 7360.000000 60.000000 0.227143 0.083089 -dPolE 7370.000000 60.000000 0.125067 0.083560 -dPolE 7380.000000 60.000000 0.062117 0.084185 -dPolE 7390.000000 60.000000 0.169948 0.084355 -dPolE 7400.000000 60.000000 0.128697 0.084085 -dPolE 7410.000000 60.000000 0.004881 0.084567 -dPolE 7420.000000 60.000000 -0.001962 0.085201 -dPolE 7430.000000 60.000000 -0.087260 0.085519 -dPolE 7440.000000 60.000000 0.229332 0.085251 -dPolE 7450.000000 60.000000 0.346598 0.085201 -dPolE 7460.000000 60.000000 0.034713 0.085610 -dPolE 7470.000000 60.000000 0.093028 0.085248 -dPolE 7480.000000 60.000000 -0.075545 0.085352 -dPolE 7490.000000 60.000000 0.047192 0.085584 -dPolE 7500.000000 60.000000 0.045580 0.085632 -dPolE 7510.000000 60.000000 0.063444 0.085593 -dPolE 7520.000000 60.000000 0.045224 0.086181 -dPolE 7530.000000 60.000000 0.078509 0.086415 -dPolE 7540.000000 60.000000 0.029237 0.086032 -dPolE 7550.000000 60.000000 0.099049 0.086124 -dPolE 7560.000000 60.000000 0.167421 0.086201 -dPolE 7570.000000 60.000000 0.256069 0.085982 -dPolE 7580.000000 60.000000 0.204231 0.085924 -dPolE 7590.000000 60.000000 0.354660 0.085754 -dPolE 7600.000000 60.000000 0.338245 0.086405 -dPolE 7610.000000 60.000000 0.176456 0.087235 -dPolE 7620.000000 60.000000 -0.010395 0.087946 -dPolE 7630.000000 60.000000 0.104322 0.087607 -dPolE 7640.000000 60.000000 0.124780 0.087466 -dPolE 7650.000000 60.000000 0.097981 0.087786 -dPolE 7660.000000 60.000000 0.217367 0.088230 -dPolE 7670.000000 60.000000 0.045520 0.089154 -dPolE 7680.000000 60.000000 0.242028 0.088808 -dPolE 7690.000000 60.000000 0.172157 0.087969 -dPolE 7700.000000 60.000000 -0.043741 0.087871 -dPolE 7710.000000 60.000000 0.006323 0.088474 -dPolE 7720.000000 60.000000 0.046395 0.089456 -dPolE 7730.000000 60.000000 0.232535 0.089902 -dPolE 7740.000000 60.000000 0.125717 0.090210 -dPolE 7750.000000 60.000000 0.154078 0.090568 -dPolE 7760.000000 60.000000 0.136593 0.091082 -dPolE 7770.000000 60.000000 0.111889 0.091427 -dPolE 7780.000000 60.000000 0.103868 0.091341 -dPolE 7790.000000 60.000000 0.135696 0.090767 -dPolE 7800.000000 60.000000 0.222373 0.090515 -dPolE 7810.000000 60.000000 -0.043707 0.091557 -dPolE 7820.000000 60.000000 0.237575 0.091676 -dPolE 7830.000000 60.000000 -0.174745 0.092256 -dPolE 7840.000000 60.000000 0.001376 0.092526 -dPolE 7850.000000 60.000000 -0.019454 0.093256 -dPolE 7860.000000 60.000000 0.205862 0.093405 -dPolE 7870.000000 60.000000 0.133786 0.093486 -dPolE 7880.000000 60.000000 -0.015592 0.093444 -dPolE 7890.000000 60.000000 0.105253 0.093520 -dPolE 7900.000000 60.000000 0.207354 0.093877 -dPolE 7910.000000 60.000000 0.147134 0.094078 -dPolE 7920.000000 60.000000 0.056141 0.094416 -dPolE 7930.000000 60.000000 -0.278233 0.094975 -dPolE 7940.000000 60.000000 0.067886 0.094360 -dPolE 7950.000000 60.000000 0.035684 0.094432 -dPolE 7960.000000 60.000000 0.037822 0.094986 -dPolE 7970.000000 60.000000 0.164968 0.095378 -dPolE 7980.000000 60.000000 -0.021381 0.095930 -dPolE 7990.000000 60.000000 0.021369 0.096104 -dPolE 8000.000000 60.000000 0.039115 0.096016 -dPolE 8010.000000 60.000000 0.200876 0.095700 -dPolE 8020.000000 60.000000 0.150668 0.096458 -dPolE 8030.000000 60.000000 -0.006049 0.097229 -dPolE 8040.000000 60.000000 -0.007201 0.097184 -dPolE 8050.000000 60.000000 0.000144 0.097011 -dPolE 8060.000000 60.000000 -0.171862 0.097543 -dPolE 8070.000000 60.000000 -0.055202 0.098291 -dPolE 8080.000000 60.000000 0.167659 0.098445 -dPolE 8090.000000 60.000000 -0.197306 0.098250 -dPolE 8100.000000 60.000000 -0.097093 0.098318 -dPolE 8110.000000 60.000000 0.064757 0.098664 -dPolE 8120.000000 60.000000 0.098449 0.099254 -dPolE 8130.000000 60.000000 0.065933 0.099234 -dPolE 8140.000000 60.000000 0.101959 0.098630 -dPolE 8150.000000 60.000000 0.020447 0.099024 -dPolE 8160.000000 60.000000 -0.125884 0.100039 -dPolE 8170.000000 60.000000 -0.038215 0.100350 -dPolE 8180.000000 60.000000 0.026441 0.100006 -dPolE 8190.000000 60.000000 0.103361 0.099840 -dPolE 8200.000000 60.000000 0.067673 0.100325 -dPolE 8210.000000 60.000000 0.188639 0.100619 -dPolE 8220.000000 60.000000 -0.079886 0.101264 -dPolE 8230.000000 60.000000 -0.019543 0.100896 -dPolE 8240.000000 60.000000 -0.323460 0.101195 -dPolE 8250.000000 60.000000 -0.062173 0.101587 -dPolE 8260.000000 60.000000 -0.019745 0.102158 -dPolE 8270.000000 60.000000 0.245653 0.101517 -dPolE 8280.000000 60.000000 0.070946 0.101339 -dPolE 8290.000000 60.000000 0.090145 0.101424 -dPolE 8300.000000 60.000000 0.060208 0.102416 -dPolE 8310.000000 60.000000 0.051519 0.103095 -dPolE 8320.000000 60.000000 -0.053318 0.102962 -dPolE 8330.000000 60.000000 0.082070 0.102195 -dPolE 8340.000000 60.000000 0.068009 0.102031 -dPolE 8350.000000 60.000000 -0.072490 0.102739 -dPolE 8360.000000 60.000000 -0.033713 0.103541 -dPolE 8370.000000 60.000000 0.074254 0.103155 -dPolE 8380.000000 60.000000 0.144977 0.102833 -dPolE 8390.000000 60.000000 0.202452 0.103031 -dPolE 8400.000000 60.000000 0.012331 0.104179 -dPolE 8410.000000 60.000000 0.200689 0.104367 -dPolE 8420.000000 60.000000 0.096518 0.104282 -dPolE 8430.000000 60.000000 -0.003237 0.104076 -dPolE 8440.000000 60.000000 -0.044137 0.104156 -dPolE 8450.000000 60.000000 -0.033162 0.104716 -dPolE 8460.000000 60.000000 -0.032217 0.105037 -dPolE 8470.000000 60.000000 0.009517 0.104752 -dPolE 8480.000000 60.000000 -0.010382 0.104356 -dPolE 8490.000000 60.000000 0.026214 0.105118 -dPolE 8500.000000 60.000000 0.004031 0.106978 -dPolE 8510.000000 60.000000 -0.007056 0.107609 -dPolE 8520.000000 60.000000 0.196748 0.105109 -dPolE 8530.000000 60.000000 0.115836 0.102858 -dPolE 8540.000000 60.000000 0.068295 0.102658 -dPolE 8550.000000 60.000000 0.208107 0.103915 -dPolE 8560.000000 60.000000 0.189266 0.105062 -dPolE 8570.000000 60.000000 0.122676 0.105475 -dPolE 8580.000000 60.000000 0.291119 0.104843 -dPolE 8590.000000 60.000000 0.163401 0.104726 -dPolE 8600.000000 60.000000 0.122800 0.105118 -dPolE 8610.000000 60.000000 0.203327 0.105899 -dPolE 8620.000000 60.000000 0.254595 0.106261 -dPolE 8630.000000 60.000000 0.100387 0.106450 -dPolE 8640.000000 60.000000 -0.143099 0.106129 -dPolE 8650.000000 60.000000 0.270118 0.105228 -dPolE 8660.000000 60.000000 0.211600 0.105826 -dPolE 8670.000000 60.000000 0.081225 0.106790 -dPolE 8680.000000 60.000000 0.156393 0.106803 -dPolE 8690.000000 60.000000 0.284784 0.106470 -dPolE 8700.000000 60.000000 -0.093330 0.106707 -dPolE 8710.000000 60.000000 -0.164886 0.107024 -dPolE 8720.000000 60.000000 -0.261765 0.107757 -dPolE 8730.000000 60.000000 0.125406 0.107223 -dPolE 8740.000000 60.000000 0.037430 0.106917 -dPolE 8750.000000 60.000000 0.174532 0.106488 -dPolE 8760.000000 60.000000 0.075162 0.106671 -dPolE 8770.000000 60.000000 -0.180023 0.107611 -dPolE 8780.000000 60.000000 -0.069375 0.108014 -dPolE 8790.000000 60.000000 -0.141326 0.107933 -dPolE 8800.000000 60.000000 -0.156172 0.107840 -dPolE 8810.000000 60.000000 -0.154611 0.108276 -dPolE 8820.000000 60.000000 0.023752 0.108463 -dPolE 8830.000000 60.000000 -0.266025 0.109257 -dPolE 8840.000000 60.000000 -0.063078 0.109034 -dPolE 8850.000000 60.000000 0.004317 0.109190 -dPolE 8860.000000 60.000000 0.198353 0.108699 -dPolE 8870.000000 60.000000 0.202025 0.108369 -dPolE 8880.000000 60.000000 0.115495 0.108537 -dPolE 8890.000000 60.000000 0.291885 0.108811 -dPolE 8900.000000 60.000000 0.071418 0.109478 -dPolE 8910.000000 60.000000 0.148548 0.109585 -dPolE 8920.000000 60.000000 0.017649 0.109749 -dPolE 8930.000000 60.000000 0.140426 0.109569 -dPolE 8940.000000 60.000000 0.074536 0.109818 -dPolE 8950.000000 60.000000 0.054627 0.110177 -dPolE 8960.000000 60.000000 0.124845 0.110413 -dPolE 8970.000000 60.000000 -0.075502 0.110925 -dPolE 8980.000000 60.000000 0.072488 0.110964 -dPolE 8990.000000 60.000000 0.130981 0.110702 -dPolE 9000.000000 60.000000 0.281172 0.110894 -dPolE 9010.000000 60.000000 0.076178 0.111510 -dPolE 9020.000000 60.000000 -0.020340 0.111776 -dPolE 9030.000000 60.000000 0.102377 0.112034 -dPolE 9040.000000 60.000000 0.084048 0.112130 -dPolE 9050.000000 60.000000 -0.022555 0.112106 -dPolE 9060.000000 60.000000 0.067964 0.112343 -dPolE 9070.000000 60.000000 0.070370 0.112772 -dPolE 9080.000000 60.000000 0.198317 0.113183 -dPolE 9090.000000 60.000000 0.120366 0.113825 -dPolE 9100.000000 60.000000 -0.114567 0.114205 -dPolE 9110.000000 60.000000 0.024088 0.113704 -dPolE 9120.000000 60.000000 0.114906 0.113853 -dPolE 9130.000000 60.000000 0.182992 0.114255 -dPolE 9140.000000 60.000000 0.029897 0.115341 -dPolE 9150.000000 60.000000 -0.125045 0.115547 -dPolE 9160.000000 60.000000 -0.174434 0.115192 -dPolE 9170.000000 60.000000 0.049018 0.114665 -dPolE 9180.000000 60.000000 0.208448 0.114584 -dPolE 9190.000000 60.000000 0.044254 0.115449 -dPolE 9200.000000 60.000000 0.031514 0.116349 -dPolE 9210.000000 60.000000 0.061862 0.116778 -dPolE 9220.000000 60.000000 -0.250280 0.117910 -dPolE 9230.000000 60.000000 -0.043079 0.117845 -dPolE 9240.000000 60.000000 -0.140478 0.118150 -dPolE 9250.000000 60.000000 0.050646 0.118089 -dPolE 9260.000000 60.000000 0.046491 0.118596 -dPolE 9270.000000 60.000000 0.076549 0.119207 -dPolE 9280.000000 60.000000 -0.012797 0.119917 -dPolE 9290.000000 60.000000 -0.055536 0.120313 -dPolE 9300.000000 60.000000 0.023674 0.120407 -dPolE 9310.000000 60.000000 0.039636 0.120626 -dPolE 9320.000000 60.000000 -0.105306 0.121003 -dPolE 9330.000000 60.000000 0.016215 0.121262 -dPolE 9340.000000 60.000000 0.089493 0.121605 -dPolE 9350.000000 60.000000 0.197735 0.122196 -dPolE 9360.000000 60.000000 0.228468 0.122872 -dPolE 9370.000000 60.000000 0.156132 0.123387 -dPolE 9380.000000 60.000000 0.058850 0.123650 -dPolE 9390.000000 60.000000 0.257087 0.123568 -dPolE 9400.000000 60.000000 -0.042116 0.124992 -dPolE 9410.000000 60.000000 -0.106206 0.125761 -dPolE 9420.000000 60.000000 0.115229 0.126118 -dPolE 9430.000000 60.000000 0.047629 0.126809 -dPolE 9440.000000 60.000000 0.124309 0.126843 -dPolE 9450.000000 60.000000 0.152086 0.127261 -dPolE 9460.000000 60.000000 0.289476 0.127642 -dPolE 9470.000000 60.000000 0.157019 0.128621 -dPolE 9480.000000 60.000000 0.079362 0.129422 -dPolE 9490.000000 60.000000 -0.051359 0.130428 -dPolE 9500.000000 60.000000 0.078019 0.130779 -dPolE 9510.000000 60.000000 -0.421694 0.132152 -dPolE 9520.000000 60.000000 -0.361005 0.132452 -dPolE 9530.000000 60.000000 0.348417 0.132006 -dPolE 9540.000000 60.000000 -0.157572 0.133928 -dPolE 9550.000000 60.000000 0.051605 0.134605 -dPolE 9560.000000 60.000000 -0.044595 0.135022 -dPolE 9570.000000 60.000000 0.189181 0.134891 -dPolE 9580.000000 60.000000 0.065294 0.135403 -dPolE 9590.000000 60.000000 -0.100555 0.136280 -dPolE 9600.000000 60.000000 -0.014758 0.136830 -dPolE 9610.000000 60.000000 -0.151899 0.137603 -dPolE 9620.000000 60.000000 -0.204871 0.138527 -dPolE 9630.000000 60.000000 0.091369 0.138686 -dPolE 9640.000000 60.000000 0.130819 0.139145 -dPolE 9650.000000 60.000000 0.050353 0.140042 -dPolE 9660.000000 60.000000 0.000318 0.140604 -dPolE 9670.000000 60.000000 0.002702 0.141725 -dPolE 9680.000000 60.000000 0.140764 0.142606 -dPolE 9690.000000 60.000000 -0.098117 0.143705 -dPolE 9700.000000 60.000000 -0.098137 0.144227 -dPolE 9710.000000 60.000000 0.098880 0.144772 -dPolE 9720.000000 60.000000 0.137793 0.145622 -dPolE 9730.000000 60.000000 -0.034847 0.146951 -dPolE 9740.000000 60.000000 -0.107491 0.148091 -dPolE 9750.000000 60.000000 0.461376 0.147500 -dPolE 9760.000000 60.000000 0.547559 0.148233 -dPolE 9770.000000 60.000000 0.047748 0.150256 -dPolE 9780.000000 60.000000 0.076258 0.150961 -dPolE 9790.000000 60.000000 -0.183638 0.152436 -dPolE 9800.000000 60.000000 0.160299 0.152895 -dPolE 9810.000000 60.000000 -0.016715 0.154572 -dPolE 9820.000000 60.000000 -0.127642 0.156178 -dPolE 9830.000000 60.000000 -0.110777 0.156781 -dPolE 9840.000000 60.000000 -0.351283 0.158207 -dPolE 9850.000000 60.000000 0.146068 0.158417 -dPolE 9860.000000 60.000000 -0.030010 0.159784 -dPolE 9870.000000 60.000000 0.314209 0.160613 -dPolE 9880.000000 60.000000 0.213414 0.162150 -dPolE 9890.000000 60.000000 0.659047 0.162299 -dPolE 9900.000000 60.000000 0.124145 0.164228 -dPolE 9910.000000 60.000000 0.315500 0.165022 -dPolE 9920.000000 60.000000 -0.211468 0.167796 -dPolE 9930.000000 60.000000 -0.376168 0.170062 -dPolE 9940.000000 60.000000 0.001004 0.170754 -dPolE 9950.000000 60.000000 0.155815 0.171606 -dPolE 9960.000000 60.000000 0.360583 0.172823 -dPolE 9970.000000 60.000000 -0.071734 0.175018 -dPolE 9980.000000 60.000000 0.133678 0.176588 -dPolE 9990.000000 60.000000 0.249574 0.178191 -dPolE 10000.000000 60.000000 -0.090853 0.180845 -dPolE 10025.000000 60.000000 -0.028233 0.088712 -dPolE 10050.000000 60.000000 0.014940 0.086575 -dPolE 10075.000000 60.000000 0.015081 0.084023 -dPolE 10100.000000 60.000000 0.030145 0.082046 -dPolE 10125.000000 60.000000 0.046799 0.080320 -dPolE 10150.000000 60.000000 0.012352 0.078248 -dPolE 10175.000000 60.000000 0.022360 0.076375 -dPolE 10200.000000 60.000000 0.076728 0.074683 -dPolE 10225.000000 60.000000 -0.007871 0.072883 -dPolE 10250.000000 60.000000 -0.042962 0.071215 -dPolE 10275.000000 60.000000 0.074815 0.069777 -dPolE 10300.000000 60.000000 0.127414 0.068002 -dPolE 10325.000000 60.000000 0.141427 0.066187 -dPolE 10350.000000 60.000000 0.064941 0.064799 -dPolE 10375.000000 60.000000 -0.021832 0.063494 -dPolE 10400.000000 60.000000 -0.117755 0.062271 -dPolE 10425.000000 60.000000 0.017583 0.060935 -dPolE 10450.000000 60.000000 0.104446 0.059669 -dPolE 10475.000000 60.000000 0.046771 0.058525 -dPolE 10500.000000 60.000000 0.062471 0.057412 -dPolE 10525.000000 60.000000 0.085603 0.056355 -dPolE 10550.000000 60.000000 -0.016106 0.055464 -dPolE 10575.000000 60.000000 -0.035527 0.054614 -dPolE 10600.000000 60.000000 0.012084 0.053798 -dPolE 10625.000000 60.000000 0.008438 0.052731 -dPolE 10650.000000 60.000000 -0.010711 0.051807 -dPolE 10675.000000 60.000000 -0.052322 0.051109 -dPolE 10700.000000 60.000000 0.010189 0.050147 -dPolE 10725.000000 60.000000 0.095516 0.049207 -dPolE 10750.000000 60.000000 0.158023 0.048582 -dPolE 10775.000000 60.000000 0.124863 0.047736 -dPolE 10800.000000 60.000000 0.031998 0.046763 -dPolE 10825.000000 60.000000 0.023401 0.046072 -dPolE 10850.000000 60.000000 0.013085 0.045335 -dPolE 10875.000000 60.000000 0.000451 0.044531 -dPolE 10900.000000 60.000000 0.015825 0.043918 -dPolE 10925.000000 60.000000 0.022707 0.043298 -dPolE 10950.000000 60.000000 -0.008086 0.042547 -dPolE 10975.000000 60.000000 0.036824 0.041929 -dPolE 11000.000000 60.000000 0.102091 0.041390 -dPolE 11025.000000 60.000000 0.030784 0.040955 -dPolE 11050.000000 60.000000 0.014113 0.040557 -dPolE 11075.000000 60.000000 0.047790 0.040194 -dPolE 11100.000000 60.000000 -0.064074 0.039653 -dPolE 11125.000000 60.000000 -0.107266 0.039206 -dPolE 11150.000000 60.000000 -0.009972 0.038937 -dPolE 11175.000000 60.000000 0.053561 0.038586 -dPolE 11200.000000 60.000000 0.092227 0.038255 -dPolE 11225.000000 60.000000 0.071701 0.038084 -dPolE 11250.000000 60.000000 0.030383 0.037836 -dPolE 11275.000000 60.000000 -0.018371 0.037552 -dPolE 11300.000000 60.000000 0.046223 0.037474 -dPolE 11325.000000 60.000000 0.084498 0.037307 -dPolE 11350.000000 60.000000 0.092815 0.037041 -dPolE 11375.000000 60.000000 0.049560 0.036926 -dPolE 11400.000000 60.000000 0.019528 0.036801 -dPolE 11425.000000 60.000000 0.030803 0.036614 -dPolE 11450.000000 60.000000 0.022552 0.036438 -dPolE 11475.000000 60.000000 0.002368 0.036252 -dPolE 11500.000000 60.000000 -0.043325 0.035994 -dPolE 11525.000000 60.000000 -0.004360 0.035731 -dPolE 11550.000000 60.000000 0.086785 0.035467 -dPolE 11575.000000 60.000000 0.069320 0.035322 -dPolE 11600.000000 60.000000 0.062252 0.035066 -dPolE 11625.000000 60.000000 0.067226 0.034682 -dPolE 11650.000000 60.000000 0.019173 0.034492 -dPolE 11675.000000 60.000000 -0.005610 0.034281 -dPolE 11700.000000 60.000000 0.031190 0.033974 -dPolE 11725.000000 60.000000 0.025594 0.033786 -dPolE 11750.000000 60.000000 0.019437 0.033598 -dPolE 11775.000000 60.000000 0.069628 0.033240 -dPolE 11800.000000 60.000000 0.087318 0.032927 -dPolE 11825.000000 60.000000 0.087156 0.032644 -dPolE 11850.000000 60.000000 0.113966 0.032358 -dPolE 11875.000000 60.000000 0.084753 0.032111 -dPolE 11900.000000 60.000000 -0.001340 0.031900 -dPolE 11925.000000 60.000000 0.014821 0.031602 -dPolE 11950.000000 60.000000 0.030316 0.031338 -dPolE 11975.000000 60.000000 0.031007 0.031144 -dPolE 12000.000000 60.000000 0.039868 0.030933 -dPolE 12025.000000 60.000000 0.037720 0.030722 -dPolE 12050.000000 60.000000 -0.005148 0.030522 -dPolE 12075.000000 60.000000 0.029793 0.030361 -dPolE 12100.000000 60.000000 0.088235 0.030213 -dPolE 12125.000000 60.000000 0.055161 0.030027 -dPolE 12150.000000 60.000000 0.022252 0.029853 -dPolE 12175.000000 60.000000 -0.010238 0.029688 -dPolE 12200.000000 60.000000 0.056419 0.029598 -dPolE 12225.000000 60.000000 0.091147 0.029499 -dPolE 12250.000000 60.000000 0.086804 0.029388 -dPolE 12275.000000 60.000000 0.070925 0.029359 -dPolE 12300.000000 60.000000 0.066228 0.029357 -dPolE 12325.000000 60.000000 0.086676 0.029392 -dPolE 12350.000000 60.000000 0.094486 0.029312 -dPolE 12375.000000 60.000000 0.093163 0.029264 -dPolE 12400.000000 60.000000 0.072533 0.029443 -dPolE 12425.000000 60.000000 0.075006 0.029376 -dPolE 12450.000000 60.000000 0.091089 0.029224 -dPolE 12475.000000 60.000000 0.123895 0.029328 -dPolE 12500.000000 60.000000 0.074028 0.029253 -dPolE 12525.000000 60.000000 -0.033483 0.029044 -dPolE 12550.000000 60.000000 0.109077 0.028908 -dPolE 12575.000000 60.000000 0.144413 0.028782 -dPolE 12600.000000 60.000000 0.058437 0.028667 -dPolE 12625.000000 60.000000 0.075966 0.028589 -dPolE 12650.000000 60.000000 0.094696 0.028477 -dPolE 12675.000000 60.000000 0.099515 0.028305 -dPolE 12700.000000 60.000000 0.111867 0.028108 -dPolE 12725.000000 60.000000 0.105543 0.027971 -dPolE 12750.000000 60.000000 0.045552 0.028005 -dPolE 12775.000000 60.000000 0.094243 0.027830 -dPolE 12800.000000 60.000000 0.157057 0.027607 -dPolE 12825.000000 60.000000 0.105630 0.027504 -dPolE 12850.000000 60.000000 0.066455 0.027389 -dPolE 12875.000000 60.000000 0.035887 0.027270 -dPolE 12900.000000 60.000000 0.020410 0.027179 -dPolE 12925.000000 60.000000 0.038229 0.027030 -dPolE 12950.000000 60.000000 0.081856 0.026836 -dPolE 12975.000000 60.000000 0.032553 0.026781 -dPolE 13000.000000 60.000000 0.050015 0.026686 -dPolE 13025.000000 60.000000 0.142408 0.026544 -dPolE 13050.000000 60.000000 0.133255 0.026411 -dPolE 13075.000000 60.000000 0.109717 0.026308 -dPolE 13100.000000 60.000000 0.075806 0.026250 -dPolE 13125.000000 60.000000 0.069058 0.026184 -dPolE 13150.000000 60.000000 0.072042 0.026109 -dPolE 13175.000000 60.000000 0.085737 0.026015 -dPolE 13200.000000 60.000000 0.057886 0.025955 -dPolE 13225.000000 60.000000 0.042949 0.025919 -dPolE 13250.000000 60.000000 0.108315 0.025928 -dPolE 13275.000000 60.000000 0.092707 0.025912 -dPolE 13300.000000 60.000000 0.051419 0.025897 -dPolE 13325.000000 60.000000 0.054616 0.025934 -dPolE 13350.000000 60.000000 0.042643 0.025981 -dPolE 13375.000000 60.000000 0.027771 0.026028 -dPolE 13400.000000 60.000000 0.067514 0.026023 -dPolE 13425.000000 60.000000 0.070408 0.026081 -dPolE 13450.000000 60.000000 0.046387 0.026191 -dPolE 13475.000000 60.000000 0.066872 0.026340 -dPolE 13500.000000 60.000000 0.069183 0.026514 -dPolE 13525.000000 60.000000 0.053115 0.026712 -dPolE 13550.000000 60.000000 0.085845 0.027053 -dPolE 13575.000000 60.000000 0.102159 0.027420 -dPolE 13600.000000 60.000000 0.095144 0.027814 -dPolE 13625.000000 60.000000 0.075833 0.028055 -dPolE 13650.000000 60.000000 0.055061 0.028299 -dPolE 13675.000000 60.000000 0.033624 0.028574 -dPolE 13700.000000 60.000000 0.048691 0.029233 -dPolE 13725.000000 60.000000 0.057255 0.030363 -dPolE 13750.000000 60.000000 0.037050 0.032445 -dPolE 13775.000000 60.000000 0.038123 0.035376 -dPolE 13800.000000 60.000000 0.041390 0.038457 -dPolE 13825.000000 60.000000 0.036030 0.040331 -dPolE 13850.000000 60.000000 0.065329 0.039996 -dPolE 13875.000000 60.000000 0.078271 0.038814 -dPolE 13900.000000 60.000000 0.011828 0.037206 -dPolE 13925.000000 60.000000 0.009903 0.036180 -dPolE 13950.000000 60.000000 0.036891 0.035197 -dPolE 13975.000000 60.000000 0.084147 0.033542 -dPolE 14000.000000 60.000000 0.101716 0.032550 -dPolE 14025.000000 60.000000 0.101503 0.031837 -dPolE 14050.000000 60.000000 0.076020 0.031055 -dPolE 14075.000000 60.000000 0.085887 0.030504 -dPolE 14100.000000 60.000000 0.100080 0.030066 -dPolE 14125.000000 60.000000 0.005614 0.029531 -dPolE 14150.000000 60.000000 -0.006844 0.029157 -dPolE 14175.000000 60.000000 0.033111 0.028881 -dPolE 14200.000000 60.000000 0.073260 0.028565 -dPolE 14225.000000 60.000000 0.077547 0.028376 -dPolE 14250.000000 60.000000 0.056470 0.028275 -dPolE 14275.000000 60.000000 0.060366 0.028095 -dPolE 14300.000000 60.000000 0.077886 0.027963 -dPolE 14325.000000 60.000000 0.105138 0.027872 -dPolE 14350.000000 60.000000 0.064205 0.027812 -dPolE 14375.000000 60.000000 0.079985 0.027723 -dPolE 14400.000000 60.000000 0.149029 0.027607 -dPolE 14425.000000 60.000000 0.108470 0.027645 -dPolE 14450.000000 60.000000 0.099185 0.027600 -dPolE 14475.000000 60.000000 0.122440 0.027466 -dPolE 14500.000000 60.000000 0.094435 0.027449 -dPolE 14525.000000 60.000000 0.084937 0.027472 -dPolE 14550.000000 60.000000 0.097289 0.027536 -dPolE 14575.000000 60.000000 0.131121 0.027418 -dPolE 14600.000000 60.000000 0.117873 0.027416 -dPolE 14625.000000 60.000000 0.046516 0.027564 -dPolE 14650.000000 60.000000 0.072603 0.027477 -dPolE 14675.000000 60.000000 0.067111 0.027492 -dPolE 14700.000000 60.000000 0.013863 0.027656 -dPolE 14725.000000 60.000000 0.043866 0.027568 -dPolE 14750.000000 60.000000 0.084915 0.027553 -dPolE 14775.000000 60.000000 0.133137 0.027657 -dPolE 14800.000000 60.000000 0.097319 0.027657 -dPolE 14825.000000 60.000000 0.097904 0.027652 -dPolE 14850.000000 60.000000 0.157144 0.027649 -dPolE 14875.000000 60.000000 0.113022 0.027706 -dPolE 14900.000000 60.000000 0.096779 0.027787 -dPolE 14925.000000 60.000000 0.131541 0.027897 -dPolE 14950.000000 60.000000 0.070906 0.027905 -dPolE 14975.000000 60.000000 0.077865 0.027967 -dPolE 15000.000000 60.000000 0.190921 0.028116 -dPolE 15025.000000 60.000000 0.119457 0.028096 -dPolE 15050.000000 60.000000 0.107327 0.028133 -dPolE 15075.000000 60.000000 0.198812 0.028270 -dPolE 15100.000000 60.000000 0.138324 0.028275 -dPolE 15125.000000 60.000000 0.118994 0.028293 -dPolE 15150.000000 60.000000 0.171684 0.028343 -dPolE 15175.000000 60.000000 0.128593 0.028414 -dPolE 15200.000000 60.000000 0.113702 0.028507 -dPolE 15225.000000 60.000000 0.144703 0.028627 -dPolE 15250.000000 60.000000 0.100057 0.028697 -dPolE 15275.000000 60.000000 0.098524 0.028796 -dPolE 15300.000000 60.000000 0.156220 0.028937 -dPolE 15325.000000 60.000000 0.080271 0.028991 -dPolE 15350.000000 60.000000 0.070001 0.029069 -dPolE 15375.000000 60.000000 0.143262 0.029179 -dPolE 15400.000000 60.000000 0.117103 0.029245 -dPolE 15425.000000 60.000000 0.129355 0.029369 -dPolE 15450.000000 60.000000 0.186493 0.029560 -dPolE 15475.000000 60.000000 0.080729 0.029673 -dPolE 15500.000000 60.000000 0.051417 0.029791 -dPolE 15525.000000 60.000000 0.097866 0.029913 -dPolE 15550.000000 60.000000 0.072962 0.029906 -dPolE 15575.000000 60.000000 0.076957 0.030006 -dPolE 15600.000000 60.000000 0.105694 0.030198 -dPolE 15625.000000 60.000000 0.108342 0.030271 -dPolE 15650.000000 60.000000 0.146007 0.030389 -dPolE 15675.000000 60.000000 0.204098 0.030536 -dPolE 15700.000000 60.000000 0.161623 0.030606 -dPolE 15725.000000 60.000000 0.120567 0.030744 -dPolE 15750.000000 60.000000 0.087784 0.030925 -dPolE 15775.000000 60.000000 0.120695 0.031049 -dPolE 15800.000000 60.000000 0.166283 0.031162 -dPolE 15825.000000 60.000000 0.201194 0.031288 -dPolE 15850.000000 60.000000 0.121909 0.031527 -dPolE 15875.000000 60.000000 0.102598 0.031672 -dPolE 15900.000000 60.000000 0.102780 0.031787 -dPolE 15925.000000 60.000000 0.048238 0.031993 -dPolE 15950.000000 60.000000 0.082709 0.032185 -dPolE 15975.000000 60.000000 0.140983 0.032368 -dPolE 16000.000000 60.000000 0.146004 0.032537 -dPolE 16025.000000 60.000000 0.126116 0.032688 -dPolE 16050.000000 60.000000 0.107963 0.032860 -dPolE 16075.000000 60.000000 0.119102 0.033108 -dPolE 16100.000000 60.000000 0.143339 0.033310 -dPolE 16125.000000 60.000000 0.145674 0.033497 -dPolE 16150.000000 60.000000 0.092035 0.033682 -dPolE 16175.000000 60.000000 0.102580 0.033954 -dPolE 16200.000000 60.000000 0.100219 0.034228 -dPolE 16225.000000 60.000000 0.053519 0.034473 -dPolE 16250.000000 60.000000 0.089997 0.034692 -dPolE 16275.000000 60.000000 0.100000 0.034953 -dPolE 16300.000000 60.000000 0.058810 0.035281 -dPolE 16325.000000 60.000000 0.077632 0.035555 -dPolE 16350.000000 60.000000 0.107098 0.035873 -dPolE 16375.000000 60.000000 0.144228 0.036246 -dPolE 16400.000000 60.000000 0.103292 0.036522 -dPolE 16425.000000 60.000000 0.071317 0.036991 -dPolE 16450.000000 60.000000 0.050178 0.037606 -dPolE 16475.000000 60.000000 0.073654 0.037844 -dPolE 16500.000000 60.000000 0.036698 0.038411 -dPolE 16525.000000 60.000000 -0.026800 0.039193 -dPolE 16550.000000 60.000000 0.007888 0.039853 -dPolE 16575.000000 60.000000 0.016790 0.040873 -dPolE 16600.000000 60.000000 0.017287 0.042136 -dPolE 16625.000000 60.000000 0.038199 0.043555 -dPolE 16650.000000 60.000000 0.014248 0.046034 -dPolE 16675.000000 60.000000 -0.026598 0.049294 -dPolE 16700.000000 60.000000 -0.060107 0.053282 -dPolE 16725.000000 60.000000 -0.048133 0.059218 -dPolE 16750.000000 60.000000 -0.058413 0.066913 -dPolE 16775.000000 60.000000 -0.151986 0.076545 -dPolE 16800.000000 60.000000 -0.205978 0.089329 -dPolE 16825.000000 60.000000 -0.249816 0.104967 -dPolE 16850.000000 60.000000 -0.273560 0.122713 -dPolE 16875.000000 60.000000 -0.074837 0.143036 -dPolE 16900.000000 60.000000 0.029456 0.167441 -dPolE 16925.000000 60.000000 -0.034664 0.195963 -dPolE 16950.000000 60.000000 -0.265935 0.227794 -dPolE 16975.000000 60.000000 -0.064700 0.261015 -dPolE 17000.000000 60.000000 0.360135 0.296375 -dPolE 1930.000000 70.000000 1.591587 0.163632 -dPolE 1940.000000 70.000000 1.486767 0.149081 -dPolE 1950.000000 70.000000 1.333902 0.137545 -dPolE 1960.000000 70.000000 1.070788 0.130336 -dPolE 1970.000000 70.000000 1.077825 0.123873 -dPolE 1980.000000 70.000000 0.958066 0.118861 -dPolE 1990.000000 70.000000 1.018832 0.114831 -dPolE 2000.000000 70.000000 1.112433 0.111053 -dPolE 2010.000000 70.000000 1.441479 0.107226 -dPolE 2020.000000 70.000000 1.533061 0.103793 -dPolE 2030.000000 70.000000 1.371384 0.100762 -dPolE 2040.000000 70.000000 1.572653 0.097563 -dPolE 2050.000000 70.000000 1.712360 0.094545 -dPolE 2060.000000 70.000000 1.548488 0.091897 -dPolE 2070.000000 70.000000 1.635258 0.089105 -dPolE 2080.000000 70.000000 1.577953 0.086613 -dPolE 2090.000000 70.000000 1.249338 0.084484 -dPolE 2100.000000 70.000000 1.343151 0.082142 -dPolE 2110.000000 70.000000 1.241845 0.080339 -dPolE 2120.000000 70.000000 1.026773 0.078736 -dPolE 2130.000000 70.000000 1.197023 0.076841 -dPolE 2140.000000 70.000000 1.211303 0.075314 -dPolE 2150.000000 70.000000 1.088457 0.074034 -dPolE 2160.000000 70.000000 0.980392 0.072874 -dPolE 2170.000000 70.000000 0.992837 0.071712 -dPolE 2180.000000 70.000000 1.047034 0.070482 -dPolE 2190.000000 70.000000 0.978452 0.069300 -dPolE 2200.000000 70.000000 0.953325 0.068212 -dPolE 2210.000000 70.000000 0.926915 0.067102 -dPolE 2220.000000 70.000000 0.947736 0.065975 -dPolE 2230.000000 70.000000 0.856304 0.065026 -dPolE 2240.000000 70.000000 0.853816 0.064099 -dPolE 2250.000000 70.000000 0.744544 0.063306 -dPolE 2260.000000 70.000000 0.502034 0.062655 -dPolE 2270.000000 70.000000 0.523373 0.061832 -dPolE 2280.000000 70.000000 0.593421 0.060961 -dPolE 2290.000000 70.000000 0.585471 0.060155 -dPolE 2300.000000 70.000000 0.537474 0.059440 -dPolE 2310.000000 70.000000 0.602143 0.058697 -dPolE 2320.000000 70.000000 0.624241 0.058015 -dPolE 2330.000000 70.000000 0.649316 0.057387 -dPolE 2340.000000 70.000000 0.666461 0.056794 -dPolE 2350.000000 70.000000 0.575648 0.056315 -dPolE 2360.000000 70.000000 0.615345 0.055808 -dPolE 2370.000000 70.000000 0.778876 0.055239 -dPolE 2380.000000 70.000000 0.659276 0.054874 -dPolE 2390.000000 70.000000 0.561927 0.054608 -dPolE 2400.000000 70.000000 0.546119 0.054332 -dPolE 2410.000000 70.000000 0.503256 0.054099 -dPolE 2420.000000 70.000000 0.574871 0.053822 -dPolE 2430.000000 70.000000 0.547889 0.053707 -dPolE 2440.000000 70.000000 0.585506 0.053562 -dPolE 2450.000000 70.000000 0.486071 0.053492 -dPolE 2460.000000 70.000000 0.474114 0.053428 -dPolE 2470.000000 70.000000 0.468010 0.053403 -dPolE 2480.000000 70.000000 0.516758 0.053355 -dPolE 2490.000000 70.000000 0.491045 0.053362 -dPolE 2500.000000 70.000000 0.470022 0.053443 -dPolE 2510.000000 70.000000 0.418927 0.053587 -dPolE 2520.000000 70.000000 0.310533 0.053697 -dPolE 2530.000000 70.000000 0.453910 0.053747 -dPolE 2540.000000 70.000000 0.442638 0.053992 -dPolE 2550.000000 70.000000 0.362023 0.054257 -dPolE 2560.000000 70.000000 0.481390 0.054475 -dPolE 2570.000000 70.000000 0.501635 0.054785 -dPolE 2580.000000 70.000000 0.401676 0.055197 -dPolE 2590.000000 70.000000 0.413336 0.055582 -dPolE 2600.000000 70.000000 0.478697 0.055979 -dPolE 2610.000000 70.000000 0.551623 0.056384 -dPolE 2620.000000 70.000000 0.523741 0.056888 -dPolE 2630.000000 70.000000 0.506789 0.057423 -dPolE 2640.000000 70.000000 0.441520 0.058041 -dPolE 2650.000000 70.000000 0.526312 0.058598 -dPolE 2660.000000 70.000000 0.467841 0.059331 -dPolE 2670.000000 70.000000 0.376179 0.060075 -dPolE 2680.000000 70.000000 0.405992 0.060706 -dPolE 2690.000000 70.000000 0.445450 0.061359 -dPolE 2700.000000 70.000000 0.344465 0.062138 -dPolE 2710.000000 70.000000 0.440512 0.062826 -dPolE 2720.000000 70.000000 0.472100 0.063572 -dPolE 2730.000000 70.000000 0.481494 0.064279 -dPolE 2740.000000 70.000000 0.511283 0.064988 -dPolE 2750.000000 70.000000 0.483124 0.065736 -dPolE 2760.000000 70.000000 0.417591 0.066540 -dPolE 2770.000000 70.000000 0.483424 0.067376 -dPolE 2780.000000 70.000000 0.473146 0.067998 -dPolE 2790.000000 70.000000 0.497708 0.068508 -dPolE 2800.000000 70.000000 0.487471 0.069131 -dPolE 2810.000000 70.000000 0.417615 0.069879 -dPolE 2820.000000 70.000000 0.469086 0.070543 -dPolE 2830.000000 70.000000 0.373708 0.071337 -dPolE 2840.000000 70.000000 0.293579 0.072053 -dPolE 2850.000000 70.000000 0.234880 0.072905 -dPolE 2860.000000 70.000000 0.264087 0.073724 -dPolE 2870.000000 70.000000 0.357074 0.074382 -dPolE 2880.000000 70.000000 0.288403 0.075299 -dPolE 2890.000000 70.000000 0.259216 0.076310 -dPolE 2900.000000 70.000000 0.346604 0.077206 -dPolE 2910.000000 70.000000 0.285471 0.078238 -dPolE 2920.000000 70.000000 0.454006 0.079073 -dPolE 2930.000000 70.000000 0.594017 0.079865 -dPolE 2940.000000 70.000000 0.452853 0.080861 -dPolE 2950.000000 70.000000 0.267983 0.081938 -dPolE 2960.000000 70.000000 0.384104 0.082753 -dPolE 2970.000000 70.000000 0.445833 0.083538 -dPolE 2980.000000 70.000000 0.368231 0.084520 -dPolE 2990.000000 70.000000 0.585267 0.085271 -dPolE 3000.000000 70.000000 0.416431 0.086378 -dPolE 3010.000000 70.000000 0.244172 0.087379 -dPolE 3020.000000 70.000000 0.369141 0.088228 -dPolE 3030.000000 70.000000 0.541842 0.089164 -dPolE 3040.000000 70.000000 0.497276 0.090252 -dPolE 3050.000000 70.000000 0.456443 0.091413 -dPolE 3060.000000 70.000000 0.462562 0.092541 -dPolE 3070.000000 70.000000 0.272143 0.093839 -dPolE 3080.000000 70.000000 0.164843 0.095072 -dPolE 3090.000000 70.000000 0.072588 0.096379 -dPolE 3100.000000 70.000000 0.107470 0.097404 -dPolE 3110.000000 70.000000 0.334936 0.098147 -dPolE 3120.000000 70.000000 0.242577 0.099484 -dPolE 3130.000000 70.000000 0.268817 0.100398 -dPolE 3140.000000 70.000000 0.212974 0.101480 -dPolE 3150.000000 70.000000 0.123949 0.102755 -dPolE 3160.000000 70.000000 0.161464 0.103805 -dPolE 3170.000000 70.000000 0.120928 0.104941 -dPolE 3180.000000 70.000000 0.183557 0.105854 -dPolE 3190.000000 70.000000 0.045423 0.107272 -dPolE 3200.000000 70.000000 -0.028754 0.108411 -dPolE 3210.000000 70.000000 0.202884 0.109293 -dPolE 3220.000000 70.000000 0.554721 0.110130 -dPolE 3230.000000 70.000000 0.276150 0.111556 -dPolE 3240.000000 70.000000 -0.021296 0.112998 -dPolE 3250.000000 70.000000 -0.001080 0.114270 -dPolE 3260.000000 70.000000 0.138860 0.116148 -dPolE 3270.000000 70.000000 0.196426 0.118527 -dPolE 3280.000000 70.000000 0.141591 0.120980 -dPolE 3290.000000 70.000000 0.047916 0.122908 -dPolE 3300.000000 70.000000 -0.096728 0.124789 -dPolE 3310.000000 70.000000 -0.127447 0.126690 -dPolE 3320.000000 70.000000 -0.060404 0.127932 -dPolE 3330.000000 70.000000 -0.056580 0.128914 -dPolE 3340.000000 70.000000 -0.171090 0.129985 -dPolE 3350.000000 70.000000 -0.232008 0.130902 -dPolE 3360.000000 70.000000 0.219229 0.131009 -dPolE 3370.000000 70.000000 0.171978 0.131772 -dPolE 3380.000000 70.000000 -0.180867 0.132824 -dPolE 3390.000000 70.000000 -0.356722 0.133258 -dPolE 3400.000000 70.000000 -0.022904 0.132954 -dPolE 3410.000000 70.000000 -0.062059 0.133600 -dPolE 3420.000000 70.000000 -0.020276 0.134670 -dPolE 3430.000000 70.000000 0.103516 0.135383 -dPolE 3440.000000 70.000000 -0.052374 0.136403 -dPolE 3450.000000 70.000000 -0.111517 0.137833 -dPolE 3460.000000 70.000000 -0.000185 0.138734 -dPolE 3470.000000 70.000000 0.080217 0.139827 -dPolE 3480.000000 70.000000 0.046608 0.140850 -dPolE 3490.000000 70.000000 0.076985 0.141848 -dPolE 3500.000000 70.000000 0.077537 0.142981 -dPolE 3510.000000 70.000000 -0.038206 0.144329 -dPolE 3520.000000 70.000000 0.193263 0.145037 -dPolE 3530.000000 70.000000 0.060967 0.146358 -dPolE 3540.000000 70.000000 -0.130374 0.148167 -dPolE 3550.000000 70.000000 -0.131683 0.149332 -dPolE 3560.000000 70.000000 -0.107909 0.150255 -dPolE 3570.000000 70.000000 0.031858 0.151288 -dPolE 3580.000000 70.000000 0.228718 0.152117 -dPolE 3590.000000 70.000000 -0.091194 0.153932 -dPolE 3600.000000 70.000000 0.297620 0.154187 -dPolE 3610.000000 70.000000 -0.119926 0.156110 -dPolE 3620.000000 70.000000 -0.039441 0.156726 -dPolE 3630.000000 70.000000 0.141442 0.157133 -dPolE 3640.000000 70.000000 -0.013591 0.158627 -dPolE 3650.000000 70.000000 -0.280542 0.160382 -dPolE 3660.000000 70.000000 -0.056394 0.159765 -dPolE 3670.000000 70.000000 0.221996 0.158094 -dPolE 3680.000000 70.000000 0.036209 0.158055 -dPolE 3690.000000 70.000000 -0.017949 0.158821 -dPolE 3700.000000 70.000000 0.106362 0.160331 -dPolE 3710.000000 70.000000 -0.076365 0.162545 -dPolE 3720.000000 70.000000 -0.304919 0.163658 -dPolE 3730.000000 70.000000 -0.016715 0.163952 -dPolE 3740.000000 70.000000 0.000723 0.164919 -dPolE 3750.000000 70.000000 -0.034469 0.164765 -dPolE 3760.000000 70.000000 0.190925 0.163386 -dPolE 3770.000000 70.000000 0.225634 0.163194 -dPolE 3780.000000 70.000000 0.033753 0.162419 -dPolE 3790.000000 70.000000 0.212710 0.160473 -dPolE 3800.000000 70.000000 0.148692 0.160239 -dPolE 3810.000000 70.000000 0.342735 0.161039 -dPolE 3820.000000 70.000000 0.262857 0.162059 -dPolE 3830.000000 70.000000 0.072354 0.160907 -dPolE 3840.000000 70.000000 0.117039 0.160417 -dPolE 3850.000000 70.000000 0.258889 0.161298 -dPolE 3860.000000 70.000000 0.022802 0.160602 -dPolE 3870.000000 70.000000 -0.013544 0.157938 -dPolE 3880.000000 70.000000 0.089355 0.154926 -dPolE 3890.000000 70.000000 0.149988 0.155022 -dPolE 3900.000000 70.000000 -0.000201 0.159396 -dPolE 3910.000000 70.000000 0.152504 0.163350 -dPolE 3920.000000 70.000000 0.480513 0.161231 -dPolE 3930.000000 70.000000 0.382349 0.158372 -dPolE 3940.000000 70.000000 0.297747 0.156252 -dPolE 3950.000000 70.000000 0.084431 0.155914 -dPolE 3960.000000 70.000000 0.181926 0.156960 -dPolE 3970.000000 70.000000 0.578194 0.157460 -dPolE 3980.000000 70.000000 0.282075 0.155648 -dPolE 3990.000000 70.000000 0.039786 0.153475 -dPolE 4000.000000 70.000000 0.034653 0.154271 -dPolE 4010.000000 70.000000 0.319819 0.157001 -dPolE 4020.000000 70.000000 0.466081 0.158585 -dPolE 4030.000000 70.000000 0.210992 0.158980 -dPolE 4040.000000 70.000000 0.275026 0.157318 -dPolE 4050.000000 70.000000 0.336720 0.153613 -dPolE 4060.000000 70.000000 0.377074 0.150015 -dPolE 4070.000000 70.000000 0.481910 0.150252 -dPolE 4080.000000 70.000000 0.455138 0.154312 -dPolE 4090.000000 70.000000 0.350742 0.157782 -dPolE 4100.000000 70.000000 0.060543 0.158659 -dPolE 4110.000000 70.000000 0.052516 0.158341 -dPolE 4120.000000 70.000000 0.141346 0.156012 -dPolE 4130.000000 70.000000 0.275461 0.150974 -dPolE 4140.000000 70.000000 0.029386 0.149349 -dPolE 4150.000000 70.000000 -0.038453 0.151652 -dPolE 4160.000000 70.000000 0.099878 0.152611 -dPolE 4170.000000 70.000000 0.325643 0.151583 -dPolE 4180.000000 70.000000 0.392706 0.151343 -dPolE 4190.000000 70.000000 0.091862 0.153553 -dPolE 4200.000000 70.000000 -0.292622 0.154599 -dPolE 4210.000000 70.000000 -0.035579 0.149878 -dPolE 4220.000000 70.000000 0.228127 0.144340 -dPolE 4230.000000 70.000000 0.369068 0.141014 -dPolE 4240.000000 70.000000 0.293355 0.140813 -dPolE 4250.000000 70.000000 0.085969 0.145897 -dPolE 4260.000000 70.000000 -0.001398 0.151563 -dPolE 4270.000000 70.000000 0.039642 0.150782 -dPolE 4280.000000 70.000000 0.111178 0.146099 -dPolE 4290.000000 70.000000 0.359181 0.146730 -dPolE 4300.000000 70.000000 0.170715 0.147758 -dPolE 4310.000000 70.000000 -0.300763 0.147327 -dPolE 4320.000000 70.000000 -0.003633 0.148969 -dPolE 4330.000000 70.000000 0.588404 0.149907 -dPolE 4340.000000 70.000000 0.628328 0.146233 -dPolE 4350.000000 70.000000 0.558563 0.144672 -dPolE 4360.000000 70.000000 0.306941 0.147106 -dPolE 4370.000000 70.000000 0.327173 0.147021 -dPolE 4380.000000 70.000000 0.675998 0.145259 -dPolE 4390.000000 70.000000 0.214689 0.145015 -dPolE 4400.000000 70.000000 -0.022017 0.144764 -dPolE 4410.000000 70.000000 0.296698 0.141558 -dPolE 4420.000000 70.000000 0.294059 0.136842 -dPolE 4430.000000 70.000000 0.269583 0.136150 -dPolE 4440.000000 70.000000 0.032787 0.137705 -dPolE 4450.000000 70.000000 0.000075 0.136910 -dPolE 4460.000000 70.000000 0.102685 0.135565 -dPolE 4470.000000 70.000000 0.015716 0.136359 -dPolE 4480.000000 70.000000 -0.036271 0.137056 -dPolE 4490.000000 70.000000 0.038010 0.136793 -dPolE 4500.000000 70.000000 0.194182 0.135650 -dPolE 4510.000000 70.000000 0.150745 0.135636 -dPolE 4520.000000 70.000000 0.156737 0.136046 -dPolE 4530.000000 70.000000 0.009053 0.135957 -dPolE 4540.000000 70.000000 -0.004445 0.135281 -dPolE 4550.000000 70.000000 0.375379 0.133816 -dPolE 4560.000000 70.000000 0.242737 0.132694 -dPolE 4570.000000 70.000000 0.047943 0.130943 -dPolE 4580.000000 70.000000 0.187827 0.127731 -dPolE 4590.000000 70.000000 -0.046732 0.125851 -dPolE 4600.000000 70.000000 -0.129069 0.127833 -dPolE 4610.000000 70.000000 -0.028350 0.130745 -dPolE 4620.000000 70.000000 0.012661 0.131649 -dPolE 4630.000000 70.000000 0.034983 0.128464 -dPolE 4640.000000 70.000000 0.011437 0.123678 -dPolE 4650.000000 70.000000 -0.144683 0.122280 -dPolE 4660.000000 70.000000 0.005674 0.123551 -dPolE 4670.000000 70.000000 -0.136371 0.126152 -dPolE 4680.000000 70.000000 -0.105499 0.126971 -dPolE 4690.000000 70.000000 0.102654 0.127143 -dPolE 4700.000000 70.000000 -0.001645 0.129713 -dPolE 4710.000000 70.000000 0.090944 0.131405 -dPolE 4720.000000 70.000000 0.162166 0.129674 -dPolE 4730.000000 70.000000 0.124136 0.126960 -dPolE 4740.000000 70.000000 -0.043987 0.126245 -dPolE 4750.000000 70.000000 0.142650 0.126316 -dPolE 4760.000000 70.000000 0.298378 0.125526 -dPolE 4770.000000 70.000000 0.235287 0.124547 -dPolE 4780.000000 70.000000 0.116149 0.123495 -dPolE 4790.000000 70.000000 0.076604 0.122382 -dPolE 4800.000000 70.000000 -0.015214 0.122229 -dPolE 4810.000000 70.000000 0.003375 0.121858 -dPolE 4820.000000 70.000000 -0.028611 0.121848 -dPolE 4830.000000 70.000000 -0.126976 0.121478 -dPolE 4840.000000 70.000000 0.062497 0.119685 -dPolE 4850.000000 70.000000 0.188894 0.113984 -dPolE 4860.000000 70.000000 0.095411 0.100253 -dPolE 4870.000000 70.000000 0.065847 0.095347 -dPolE 4880.000000 70.000000 0.058894 0.109548 -dPolE 4890.000000 70.000000 -0.023552 0.116775 -dPolE 4900.000000 70.000000 0.014744 0.116550 -dPolE 4910.000000 70.000000 0.052504 0.115364 -dPolE 4920.000000 70.000000 0.075653 0.115569 -dPolE 4930.000000 70.000000 -0.033627 0.115296 -dPolE 4940.000000 70.000000 -0.043220 0.114447 -dPolE 4950.000000 70.000000 0.272284 0.115149 -dPolE 4960.000000 70.000000 0.124181 0.116023 -dPolE 4970.000000 70.000000 -0.136845 0.115450 -dPolE 4980.000000 70.000000 -0.056424 0.114088 -dPolE 4990.000000 70.000000 0.105364 0.112348 -dPolE 5000.000000 70.000000 0.289539 0.111547 -dPolE 5010.000000 70.000000 0.208638 0.111361 -dPolE 5020.000000 70.000000 -0.040159 0.110889 -dPolE 5030.000000 70.000000 -0.005193 0.110776 -dPolE 5040.000000 70.000000 0.037615 0.110978 -dPolE 5050.000000 70.000000 0.115297 0.111026 -dPolE 5060.000000 70.000000 -0.143253 0.110863 -dPolE 5070.000000 70.000000 -0.121134 0.110562 -dPolE 5080.000000 70.000000 0.134311 0.110361 -dPolE 5090.000000 70.000000 0.006929 0.110404 -dPolE 5100.000000 70.000000 -0.081523 0.110400 -dPolE 5110.000000 70.000000 0.026294 0.109734 -dPolE 5120.000000 70.000000 0.002709 0.109066 -dPolE 5130.000000 70.000000 0.014123 0.108906 -dPolE 5140.000000 70.000000 -0.104844 0.108914 -dPolE 5150.000000 70.000000 0.113212 0.108318 -dPolE 5160.000000 70.000000 0.027502 0.107972 -dPolE 5170.000000 70.000000 0.061658 0.107694 -dPolE 5180.000000 70.000000 -0.028762 0.107475 -dPolE 5190.000000 70.000000 -0.140086 0.107270 -dPolE 5200.000000 70.000000 -0.064944 0.106522 -dPolE 5210.000000 70.000000 0.038993 0.105875 -dPolE 5220.000000 70.000000 0.117610 0.105634 -dPolE 5230.000000 70.000000 0.109318 0.105261 -dPolE 5240.000000 70.000000 -0.146617 0.105319 -dPolE 5250.000000 70.000000 -0.155949 0.104881 -dPolE 5260.000000 70.000000 -0.036281 0.103910 -dPolE 5270.000000 70.000000 0.136735 0.102737 -dPolE 5280.000000 70.000000 0.153482 0.102460 -dPolE 5290.000000 70.000000 0.117062 0.102323 -dPolE 5300.000000 70.000000 0.060490 0.102031 -dPolE 5310.000000 70.000000 0.016235 0.102008 -dPolE 5320.000000 70.000000 0.090539 0.101746 -dPolE 5330.000000 70.000000 0.141081 0.100874 -dPolE 5340.000000 70.000000 -0.012330 0.100169 -dPolE 5350.000000 70.000000 0.002886 0.099859 -dPolE 5360.000000 70.000000 0.097452 0.099515 -dPolE 5370.000000 70.000000 -0.032648 0.099441 -dPolE 5380.000000 70.000000 0.080119 0.098896 -dPolE 5390.000000 70.000000 0.010574 0.098193 -dPolE 5400.000000 70.000000 0.088004 0.097656 -dPolE 5410.000000 70.000000 0.259064 0.097134 -dPolE 5420.000000 70.000000 0.057579 0.096700 -dPolE 5430.000000 70.000000 -0.032372 0.095986 -dPolE 5440.000000 70.000000 0.175586 0.095389 -dPolE 5450.000000 70.000000 0.106692 0.095173 -dPolE 5460.000000 70.000000 0.000020 0.095257 -dPolE 5470.000000 70.000000 0.165417 0.094872 -dPolE 5480.000000 70.000000 0.167424 0.094102 -dPolE 5490.000000 70.000000 0.228326 0.093335 -dPolE 5500.000000 70.000000 0.046361 0.093394 -dPolE 5510.000000 70.000000 0.095957 0.093342 -dPolE 5520.000000 70.000000 0.158728 0.093120 -dPolE 5530.000000 70.000000 0.063093 0.092885 -dPolE 5540.000000 70.000000 -0.072500 0.092654 -dPolE 5550.000000 70.000000 -0.005746 0.092359 -dPolE 5560.000000 70.000000 0.088458 0.092053 -dPolE 5570.000000 70.000000 0.063510 0.091762 -dPolE 5580.000000 70.000000 0.070445 0.091520 -dPolE 5590.000000 70.000000 0.066416 0.091442 -dPolE 5600.000000 70.000000 -0.066667 0.091333 -dPolE 5610.000000 70.000000 -0.035336 0.090752 -dPolE 5620.000000 70.000000 0.055064 0.090396 -dPolE 5630.000000 70.000000 0.035173 0.090280 -dPolE 5640.000000 70.000000 -0.057755 0.090056 -dPolE 5650.000000 70.000000 -0.044679 0.089607 -dPolE 5660.000000 70.000000 0.029434 0.089157 -dPolE 5670.000000 70.000000 0.058578 0.088180 -dPolE 5680.000000 70.000000 -0.013512 0.086680 -dPolE 5690.000000 70.000000 0.064554 0.084742 -dPolE 5700.000000 70.000000 0.039269 0.082304 -dPolE 5710.000000 70.000000 0.056956 0.081055 -dPolE 5720.000000 70.000000 0.139337 0.080303 -dPolE 5730.000000 70.000000 0.031770 0.079635 -dPolE 5740.000000 70.000000 0.065659 0.078130 -dPolE 5750.000000 70.000000 0.108659 0.077311 -dPolE 5760.000000 70.000000 0.166897 0.076672 -dPolE 5770.000000 70.000000 0.114435 0.075234 -dPolE 5780.000000 70.000000 0.082144 0.074154 -dPolE 5790.000000 70.000000 0.096286 0.074007 -dPolE 5800.000000 70.000000 0.048153 0.073524 -dPolE 5810.000000 70.000000 0.189514 0.071541 -dPolE 5820.000000 70.000000 0.163162 0.069741 -dPolE 5830.000000 70.000000 0.109763 0.071468 -dPolE 5840.000000 70.000000 0.183615 0.074692 -dPolE 5850.000000 70.000000 0.176826 0.074171 -dPolE 5860.000000 70.000000 0.192224 0.074503 -dPolE 5870.000000 70.000000 0.158276 0.075281 -dPolE 5880.000000 70.000000 0.180411 0.074550 -dPolE 5890.000000 70.000000 0.182536 0.074306 -dPolE 5900.000000 70.000000 0.205404 0.076741 -dPolE 5910.000000 70.000000 0.181593 0.078338 -dPolE 5920.000000 70.000000 0.179803 0.078320 -dPolE 5930.000000 70.000000 0.182716 0.077059 -dPolE 5940.000000 70.000000 0.110711 0.075961 -dPolE 5950.000000 70.000000 0.246205 0.074884 -dPolE 5960.000000 70.000000 0.126930 0.075174 -dPolE 5970.000000 70.000000 0.113418 0.076438 -dPolE 5980.000000 70.000000 0.149004 0.077053 -dPolE 5990.000000 70.000000 0.167656 0.077049 -dPolE 6000.000000 70.000000 0.189131 0.077078 -dPolE 6010.000000 70.000000 0.139607 0.076568 -dPolE 6020.000000 70.000000 0.176891 0.075625 -dPolE 6030.000000 70.000000 0.070364 0.074656 -dPolE 6040.000000 70.000000 0.090206 0.074315 -dPolE 6050.000000 70.000000 0.213960 0.075684 -dPolE 6060.000000 70.000000 0.294537 0.076031 -dPolE 6070.000000 70.000000 0.197850 0.076215 -dPolE 6080.000000 70.000000 0.142612 0.076513 -dPolE 6090.000000 70.000000 0.191878 0.076729 -dPolE 6100.000000 70.000000 0.103531 0.076537 -dPolE 6110.000000 70.000000 0.154793 0.076041 -dPolE 6120.000000 70.000000 0.193620 0.075834 -dPolE 6130.000000 70.000000 0.190080 0.075647 -dPolE 6140.000000 70.000000 0.156744 0.075472 -dPolE 6150.000000 70.000000 0.271739 0.075807 -dPolE 6160.000000 70.000000 0.208232 0.076543 -dPolE 6170.000000 70.000000 0.167528 0.076948 -dPolE 6180.000000 70.000000 0.034704 0.077226 -dPolE 6190.000000 70.000000 0.074234 0.077442 -dPolE 6200.000000 70.000000 0.235343 0.076903 -dPolE 6210.000000 70.000000 0.190729 0.076983 -dPolE 6220.000000 70.000000 0.058706 0.077424 -dPolE 6230.000000 70.000000 0.116909 0.076939 -dPolE 6240.000000 70.000000 0.181659 0.076634 -dPolE 6250.000000 70.000000 0.159143 0.077312 -dPolE 6260.000000 70.000000 0.214264 0.077776 -dPolE 6270.000000 70.000000 0.082653 0.077911 -dPolE 6280.000000 70.000000 0.134886 0.077753 -dPolE 6290.000000 70.000000 0.087364 0.077850 -dPolE 6300.000000 70.000000 0.254228 0.077698 -dPolE 6310.000000 70.000000 0.203892 0.078131 -dPolE 6320.000000 70.000000 0.147749 0.078303 -dPolE 6330.000000 70.000000 0.280371 0.077897 -dPolE 6340.000000 70.000000 0.194945 0.078079 -dPolE 6350.000000 70.000000 0.106471 0.078151 -dPolE 6360.000000 70.000000 0.052000 0.077944 -dPolE 6370.000000 70.000000 0.201230 0.077620 -dPolE 6380.000000 70.000000 0.349383 0.077570 -dPolE 6390.000000 70.000000 0.234177 0.077677 -dPolE 6400.000000 70.000000 0.205810 0.077685 -dPolE 6410.000000 70.000000 0.113327 0.077894 -dPolE 6420.000000 70.000000 0.076214 0.078153 -dPolE 6430.000000 70.000000 0.260507 0.077856 -dPolE 6440.000000 70.000000 0.250163 0.077882 -dPolE 6450.000000 70.000000 0.178578 0.078078 -dPolE 6460.000000 70.000000 0.210804 0.077985 -dPolE 6470.000000 70.000000 0.069533 0.078063 -dPolE 6480.000000 70.000000 -0.009643 0.078038 -dPolE 6490.000000 70.000000 0.068340 0.077835 -dPolE 6500.000000 70.000000 0.190803 0.077681 -dPolE 6510.000000 70.000000 0.189304 0.077698 -dPolE 6520.000000 70.000000 0.160474 0.077634 -dPolE 6530.000000 70.000000 0.120649 0.077738 -dPolE 6540.000000 70.000000 0.096062 0.078473 -dPolE 6550.000000 70.000000 0.249018 0.069371 -dPolE 6560.000000 70.000000 0.099972 0.048729 -dPolE 6570.000000 70.000000 0.031249 0.047121 -dPolE 6580.000000 70.000000 0.096810 0.064305 -dPolE 6590.000000 70.000000 0.174632 0.076902 -dPolE 6600.000000 70.000000 0.049615 0.077481 -dPolE 6610.000000 70.000000 0.049730 0.077539 -dPolE 6620.000000 70.000000 0.177728 0.077213 -dPolE 6630.000000 70.000000 0.197949 0.077067 -dPolE 6640.000000 70.000000 0.172431 0.077128 -dPolE 6650.000000 70.000000 0.181691 0.077154 -dPolE 6660.000000 70.000000 0.082652 0.077235 -dPolE 6670.000000 70.000000 0.070465 0.077216 -dPolE 6680.000000 70.000000 0.107700 0.077076 -dPolE 6690.000000 70.000000 0.151576 0.076861 -dPolE 6700.000000 70.000000 0.103122 0.076685 -dPolE 6710.000000 70.000000 0.201016 0.076596 -dPolE 6720.000000 70.000000 0.086719 0.076598 -dPolE 6730.000000 70.000000 0.219930 0.076394 -dPolE 6740.000000 70.000000 0.161239 0.076556 -dPolE 6750.000000 70.000000 0.180187 0.076602 -dPolE 6760.000000 70.000000 0.064244 0.076713 -dPolE 6770.000000 70.000000 0.104215 0.076583 -dPolE 6780.000000 70.000000 0.195703 0.076331 -dPolE 6790.000000 70.000000 0.137002 0.076208 -dPolE 6800.000000 70.000000 0.287371 0.075942 -dPolE 6810.000000 70.000000 0.274111 0.075918 -dPolE 6820.000000 70.000000 0.163725 0.076056 -dPolE 6830.000000 70.000000 0.176707 0.075994 -dPolE 6840.000000 70.000000 0.154174 0.075921 -dPolE 6850.000000 70.000000 0.130154 0.075620 -dPolE 6860.000000 70.000000 0.186899 0.075505 -dPolE 6870.000000 70.000000 0.127524 0.075767 -dPolE 6880.000000 70.000000 0.141141 0.075847 -dPolE 6890.000000 70.000000 0.186885 0.075820 -dPolE 6900.000000 70.000000 0.225666 0.075852 -dPolE 6910.000000 70.000000 0.153733 0.075887 -dPolE 6920.000000 70.000000 0.134000 0.075819 -dPolE 6930.000000 70.000000 0.059862 0.075820 -dPolE 6940.000000 70.000000 0.025597 0.075756 -dPolE 6950.000000 70.000000 0.129609 0.075740 -dPolE 6960.000000 70.000000 0.104279 0.075771 -dPolE 6970.000000 70.000000 0.086572 0.075648 -dPolE 6980.000000 70.000000 0.212748 0.075410 -dPolE 6990.000000 70.000000 0.178598 0.075494 -dPolE 7000.000000 70.000000 0.037818 0.075753 -dPolE 7010.000000 70.000000 0.077229 0.075813 -dPolE 7020.000000 70.000000 0.073446 0.075839 -dPolE 7030.000000 70.000000 0.187654 0.075696 -dPolE 7040.000000 70.000000 0.216840 0.075785 -dPolE 7050.000000 70.000000 0.143490 0.075978 -dPolE 7060.000000 70.000000 0.183194 0.075959 -dPolE 7070.000000 70.000000 0.114953 0.075738 -dPolE 7080.000000 70.000000 0.094846 0.075796 -dPolE 7090.000000 70.000000 0.112099 0.075955 -dPolE 7100.000000 70.000000 0.147848 0.076065 -dPolE 7110.000000 70.000000 0.120577 0.076106 -dPolE 7120.000000 70.000000 0.114734 0.076117 -dPolE 7130.000000 70.000000 0.119191 0.076116 -dPolE 7140.000000 70.000000 0.129707 0.076013 -dPolE 7150.000000 70.000000 0.151679 0.075914 -dPolE 7160.000000 70.000000 0.218963 0.075896 -dPolE 7170.000000 70.000000 0.173940 0.076189 -dPolE 7180.000000 70.000000 0.210798 0.076139 -dPolE 7190.000000 70.000000 0.074115 0.076292 -dPolE 7200.000000 70.000000 0.174485 0.076293 -dPolE 7210.000000 70.000000 0.191399 0.076418 -dPolE 7220.000000 70.000000 0.076617 0.076553 -dPolE 7230.000000 70.000000 0.118210 0.076666 -dPolE 7240.000000 70.000000 0.031548 0.076725 -dPolE 7250.000000 70.000000 0.092550 0.076329 -dPolE 7260.000000 70.000000 0.231462 0.075857 -dPolE 7270.000000 70.000000 0.155483 0.076122 -dPolE 7280.000000 70.000000 0.179232 0.076160 -dPolE 7290.000000 70.000000 -0.029399 0.076296 -dPolE 7300.000000 70.000000 -0.022251 0.076358 -dPolE 7310.000000 70.000000 0.201233 0.076041 -dPolE 7320.000000 70.000000 0.084006 0.076277 -dPolE 7330.000000 70.000000 0.175146 0.076482 -dPolE 7340.000000 70.000000 0.243750 0.076337 -dPolE 7350.000000 70.000000 0.059223 0.076108 -dPolE 7360.000000 70.000000 0.031474 0.076176 -dPolE 7370.000000 70.000000 0.076741 0.076477 -dPolE 7380.000000 70.000000 0.068519 0.077008 -dPolE 7390.000000 70.000000 0.087430 0.077255 -dPolE 7400.000000 70.000000 0.121118 0.076910 -dPolE 7410.000000 70.000000 0.129713 0.077187 -dPolE 7420.000000 70.000000 0.036700 0.077850 -dPolE 7430.000000 70.000000 0.205184 0.077900 -dPolE 7440.000000 70.000000 0.201322 0.077951 -dPolE 7450.000000 70.000000 0.201874 0.078016 -dPolE 7460.000000 70.000000 0.098749 0.078198 -dPolE 7470.000000 70.000000 0.059382 0.077925 -dPolE 7480.000000 70.000000 0.127893 0.077808 -dPolE 7490.000000 70.000000 0.063966 0.078216 -dPolE 7500.000000 70.000000 -0.025729 0.078320 -dPolE 7510.000000 70.000000 0.157810 0.078090 -dPolE 7520.000000 70.000000 0.103777 0.078710 -dPolE 7530.000000 70.000000 0.012253 0.079076 -dPolE 7540.000000 70.000000 0.117435 0.078516 -dPolE 7550.000000 70.000000 0.147669 0.078646 -dPolE 7560.000000 70.000000 -0.042479 0.078968 -dPolE 7570.000000 70.000000 0.023384 0.078808 -dPolE 7580.000000 70.000000 0.065810 0.078633 -dPolE 7590.000000 70.000000 -0.001442 0.078661 -dPolE 7600.000000 70.000000 0.126228 0.079120 -dPolE 7610.000000 70.000000 0.216025 0.079629 -dPolE 7620.000000 70.000000 0.166506 0.080123 -dPolE 7630.000000 70.000000 0.073534 0.080021 -dPolE 7640.000000 70.000000 0.041569 0.079920 -dPolE 7650.000000 70.000000 0.038121 0.080219 -dPolE 7660.000000 70.000000 0.085176 0.080689 -dPolE 7670.000000 70.000000 0.094382 0.081355 -dPolE 7680.000000 70.000000 0.073295 0.081260 -dPolE 7690.000000 70.000000 0.051769 0.080436 -dPolE 7700.000000 70.000000 0.114565 0.080038 -dPolE 7710.000000 70.000000 0.146202 0.080598 -dPolE 7720.000000 70.000000 0.058651 0.081591 -dPolE 7730.000000 70.000000 0.119028 0.082138 -dPolE 7740.000000 70.000000 0.018637 0.082420 -dPolE 7750.000000 70.000000 0.053639 0.082743 -dPolE 7760.000000 70.000000 0.083829 0.083163 -dPolE 7770.000000 70.000000 0.011133 0.083519 -dPolE 7780.000000 70.000000 0.048656 0.083392 -dPolE 7790.000000 70.000000 0.058783 0.082886 -dPolE 7800.000000 70.000000 0.107588 0.082709 -dPolE 7810.000000 70.000000 0.158378 0.083306 -dPolE 7820.000000 70.000000 0.134648 0.083711 -dPolE 7830.000000 70.000000 -0.071309 0.084052 -dPolE 7840.000000 70.000000 -0.123098 0.084559 -dPolE 7850.000000 70.000000 0.002444 0.085029 -dPolE 7860.000000 70.000000 0.070002 0.085329 -dPolE 7870.000000 70.000000 0.008931 0.085347 -dPolE 7880.000000 70.000000 0.126764 0.085045 -dPolE 7890.000000 70.000000 0.175751 0.085234 -dPolE 7900.000000 70.000000 0.071446 0.085772 -dPolE 7910.000000 70.000000 0.021580 0.085892 -dPolE 7920.000000 70.000000 -0.043047 0.086174 -dPolE 7930.000000 70.000000 0.124044 0.086152 -dPolE 7940.000000 70.000000 0.058454 0.086015 -dPolE 7950.000000 70.000000 0.020356 0.086121 -dPolE 7960.000000 70.000000 0.056167 0.086577 -dPolE 7970.000000 70.000000 0.128231 0.086969 -dPolE 7980.000000 70.000000 0.166389 0.087197 -dPolE 7990.000000 70.000000 -0.005242 0.087593 -dPolE 8000.000000 70.000000 0.053198 0.087444 -dPolE 8010.000000 70.000000 0.004335 0.087385 -dPolE 8020.000000 70.000000 -0.032724 0.088052 -dPolE 8030.000000 70.000000 -0.027432 0.088582 -dPolE 8040.000000 70.000000 -0.043428 0.088591 -dPolE 8050.000000 70.000000 0.134210 0.088216 -dPolE 8060.000000 70.000000 0.112612 0.088542 -dPolE 8070.000000 70.000000 0.094600 0.089409 -dPolE 8080.000000 70.000000 0.042905 0.089820 -dPolE 8090.000000 70.000000 0.030298 0.089238 -dPolE 8100.000000 70.000000 0.104106 0.089297 -dPolE 8110.000000 70.000000 0.121303 0.089747 -dPolE 8120.000000 70.000000 0.024439 0.090449 -dPolE 8130.000000 70.000000 -0.035846 0.090458 -dPolE 8140.000000 70.000000 -0.074015 0.090018 -dPolE 8150.000000 70.000000 0.142647 0.090051 -dPolE 8160.000000 70.000000 -0.028809 0.090931 -dPolE 8170.000000 70.000000 -0.007807 0.091300 -dPolE 8180.000000 70.000000 0.050191 0.091007 -dPolE 8190.000000 70.000000 0.099577 0.090871 -dPolE 8200.000000 70.000000 -0.105708 0.091572 -dPolE 8210.000000 70.000000 -0.028399 0.091827 -dPolE 8220.000000 70.000000 0.028308 0.092043 -dPolE 8230.000000 70.000000 0.013126 0.091730 -dPolE 8240.000000 70.000000 0.003210 0.091679 -dPolE 8250.000000 70.000000 -0.126330 0.092558 -dPolE 8260.000000 70.000000 -0.068595 0.093026 -dPolE 8270.000000 70.000000 0.086717 0.092567 -dPolE 8280.000000 70.000000 0.112995 0.092118 -dPolE 8290.000000 70.000000 0.007557 0.092357 -dPolE 8300.000000 70.000000 -0.028661 0.093290 -dPolE 8310.000000 70.000000 0.026218 0.093744 -dPolE 8320.000000 70.000000 0.020732 0.093520 -dPolE 8330.000000 70.000000 0.157869 0.092859 -dPolE 8340.000000 70.000000 0.025099 0.092867 -dPolE 8350.000000 70.000000 -0.123805 0.093498 -dPolE 8360.000000 70.000000 0.102070 0.093957 -dPolE 8370.000000 70.000000 -0.012273 0.093906 -dPolE 8380.000000 70.000000 0.027252 0.093683 -dPolE 8390.000000 70.000000 0.014383 0.093964 -dPolE 8400.000000 70.000000 0.018116 0.094731 -dPolE 8410.000000 70.000000 0.109189 0.094963 -dPolE 8420.000000 70.000000 0.040521 0.094879 -dPolE 8430.000000 70.000000 -0.065913 0.094748 -dPolE 8440.000000 70.000000 -0.067413 0.094783 -dPolE 8450.000000 70.000000 -0.073867 0.095269 -dPolE 8460.000000 70.000000 0.067893 0.095350 -dPolE 8470.000000 70.000000 0.139870 0.095039 -dPolE 8480.000000 70.000000 0.019693 0.094828 -dPolE 8490.000000 70.000000 -0.124884 0.095767 -dPolE 8500.000000 70.000000 -0.156429 0.097510 -dPolE 8510.000000 70.000000 -0.153039 0.098008 -dPolE 8520.000000 70.000000 -0.112781 0.095901 -dPolE 8530.000000 70.000000 -0.013177 0.093609 -dPolE 8540.000000 70.000000 -0.057827 0.093422 -dPolE 8550.000000 70.000000 -0.020135 0.094731 -dPolE 8560.000000 70.000000 0.207781 0.095434 -dPolE 8570.000000 70.000000 0.255535 0.095589 -dPolE 8580.000000 70.000000 0.008354 0.095542 -dPolE 8590.000000 70.000000 0.140799 0.095113 -dPolE 8600.000000 70.000000 0.119354 0.095487 -dPolE 8610.000000 70.000000 0.035307 0.096469 -dPolE 8620.000000 70.000000 -0.075645 0.097002 -dPolE 8630.000000 70.000000 0.004445 0.096859 -dPolE 8640.000000 70.000000 0.059680 0.096144 -dPolE 8650.000000 70.000000 -0.105332 0.096054 -dPolE 8660.000000 70.000000 -0.102560 0.096544 -dPolE 8670.000000 70.000000 -0.030524 0.097144 -dPolE 8680.000000 70.000000 0.013191 0.097162 -dPolE 8690.000000 70.000000 -0.122428 0.097191 -dPolE 8700.000000 70.000000 -0.077661 0.096924 -dPolE 8710.000000 70.000000 -0.032900 0.097090 -dPolE 8720.000000 70.000000 -0.012885 0.097542 -dPolE 8730.000000 70.000000 0.157667 0.097326 -dPolE 8740.000000 70.000000 0.143880 0.096961 -dPolE 8750.000000 70.000000 0.026607 0.096819 -dPolE 8760.000000 70.000000 0.045346 0.096882 -dPolE 8770.000000 70.000000 -0.043068 0.097567 -dPolE 8780.000000 70.000000 0.047391 0.097897 -dPolE 8790.000000 70.000000 0.097743 0.097693 -dPolE 8800.000000 70.000000 -0.122301 0.097924 -dPolE 8810.000000 70.000000 -0.042563 0.098153 -dPolE 8820.000000 70.000000 -0.059887 0.098566 -dPolE 8830.000000 70.000000 -0.056642 0.098930 -dPolE 8840.000000 70.000000 -0.093738 0.099073 -dPolE 8850.000000 70.000000 0.018749 0.099101 -dPolE 8860.000000 70.000000 -0.143220 0.099117 -dPolE 8870.000000 70.000000 0.059563 0.098521 -dPolE 8880.000000 70.000000 -0.048442 0.098699 -dPolE 8890.000000 70.000000 -0.184547 0.099330 -dPolE 8900.000000 70.000000 -0.208488 0.099752 -dPolE 8910.000000 70.000000 0.061204 0.099608 -dPolE 8920.000000 70.000000 0.109885 0.099497 -dPolE 8930.000000 70.000000 -0.023908 0.099649 -dPolE 8940.000000 70.000000 0.012116 0.099679 -dPolE 8950.000000 70.000000 0.015102 0.100022 -dPolE 8960.000000 70.000000 -0.051909 0.100397 -dPolE 8970.000000 70.000000 0.025205 0.100513 -dPolE 8980.000000 70.000000 -0.125837 0.100917 -dPolE 8990.000000 70.000000 -0.106164 0.100732 -dPolE 9000.000000 70.000000 -0.037346 0.101026 -dPolE 9010.000000 70.000000 0.115205 0.101103 -dPolE 9020.000000 70.000000 -0.026847 0.101335 -dPolE 9030.000000 70.000000 0.030236 0.101712 -dPolE 9040.000000 70.000000 -0.039271 0.101898 -dPolE 9050.000000 70.000000 -0.077239 0.101768 -dPolE 9060.000000 70.000000 -0.010370 0.101981 -dPolE 9070.000000 70.000000 -0.086949 0.102506 -dPolE 9080.000000 70.000000 -0.143891 0.103141 -dPolE 9090.000000 70.000000 -0.119242 0.103540 -dPolE 9100.000000 70.000000 0.085673 0.103321 -dPolE 9110.000000 70.000000 0.043511 0.103080 -dPolE 9120.000000 70.000000 -0.076594 0.103445 -dPolE 9130.000000 70.000000 -0.072108 0.103908 -dPolE 9140.000000 70.000000 0.008168 0.104588 -dPolE 9150.000000 70.000000 -0.220292 0.104913 -dPolE 9160.000000 70.000000 0.077081 0.104102 -dPolE 9170.000000 70.000000 -0.109409 0.104225 -dPolE 9180.000000 70.000000 0.005502 0.104148 -dPolE 9190.000000 70.000000 0.007427 0.104697 -dPolE 9200.000000 70.000000 0.012564 0.105559 -dPolE 9210.000000 70.000000 0.000690 0.106035 -dPolE 9220.000000 70.000000 -0.152783 0.106752 -dPolE 9230.000000 70.000000 0.009628 0.106758 -dPolE 9240.000000 70.000000 -0.060487 0.106991 -dPolE 9250.000000 70.000000 0.063575 0.107030 -dPolE 9260.000000 70.000000 -0.137575 0.107759 -dPolE 9270.000000 70.000000 -0.054473 0.108177 -dPolE 9280.000000 70.000000 -0.183792 0.108933 -dPolE 9290.000000 70.000000 -0.143408 0.109217 -dPolE 9300.000000 70.000000 -0.084073 0.109311 -dPolE 9310.000000 70.000000 -0.055349 0.109438 -dPolE 9320.000000 70.000000 -0.108978 0.109624 -dPolE 9330.000000 70.000000 -0.030927 0.109889 -dPolE 9340.000000 70.000000 0.054314 0.110231 -dPolE 9350.000000 70.000000 -0.127035 0.111151 -dPolE 9360.000000 70.000000 -0.111230 0.111784 -dPolE 9370.000000 70.000000 -0.071466 0.112019 -dPolE 9380.000000 70.000000 0.079819 0.111881 -dPolE 9390.000000 70.000000 -0.127749 0.112451 -dPolE 9400.000000 70.000000 -0.115274 0.113328 -dPolE 9410.000000 70.000000 -0.102925 0.113952 -dPolE 9420.000000 70.000000 -0.203795 0.114682 -dPolE 9430.000000 70.000000 -0.079955 0.115098 -dPolE 9440.000000 70.000000 -0.100960 0.115199 -dPolE 9450.000000 70.000000 0.033011 0.115337 -dPolE 9460.000000 70.000000 -0.155072 0.116232 -dPolE 9470.000000 70.000000 -0.145331 0.116884 -dPolE 9480.000000 70.000000 -0.192588 0.117553 -dPolE 9490.000000 70.000000 -0.258296 0.118332 -dPolE 9500.000000 70.000000 -0.096283 0.118679 -dPolE 9510.000000 70.000000 -0.009232 0.119015 -dPolE 9520.000000 70.000000 -0.100055 0.119530 -dPolE 9530.000000 70.000000 -0.178912 0.120269 -dPolE 9540.000000 70.000000 0.016349 0.120939 -dPolE 9550.000000 70.000000 0.213172 0.121457 -dPolE 9560.000000 70.000000 -0.036055 0.122178 -dPolE 9570.000000 70.000000 -0.130783 0.122559 -dPolE 9580.000000 70.000000 -0.276977 0.123107 -dPolE 9590.000000 70.000000 -0.145228 0.123413 -dPolE 9600.000000 70.000000 0.059917 0.123670 -dPolE 9610.000000 70.000000 -0.047085 0.124285 -dPolE 9620.000000 70.000000 -0.116907 0.125162 -dPolE 9630.000000 70.000000 0.007982 0.125553 -dPolE 9640.000000 70.000000 -0.168328 0.126412 -dPolE 9650.000000 70.000000 -0.079738 0.126893 -dPolE 9660.000000 70.000000 -0.113084 0.127465 -dPolE 9670.000000 70.000000 -0.165609 0.128430 -dPolE 9680.000000 70.000000 -0.200340 0.129457 -dPolE 9690.000000 70.000000 -0.102812 0.130011 -dPolE 9700.000000 70.000000 -0.184242 0.130510 -dPolE 9710.000000 70.000000 -0.111650 0.131212 -dPolE 9720.000000 70.000000 0.042925 0.131800 -dPolE 9730.000000 70.000000 -0.021852 0.132875 -dPolE 9740.000000 70.000000 0.132754 0.133416 -dPolE 9750.000000 70.000000 -0.225737 0.134498 -dPolE 9760.000000 70.000000 -0.281890 0.135444 -dPolE 9770.000000 70.000000 0.042279 0.135718 -dPolE 9780.000000 70.000000 0.031213 0.136452 -dPolE 9790.000000 70.000000 0.106101 0.137222 -dPolE 9800.000000 70.000000 -0.077202 0.138631 -dPolE 9810.000000 70.000000 -0.101609 0.139790 -dPolE 9820.000000 70.000000 -0.064629 0.140891 -dPolE 9830.000000 70.000000 -0.068827 0.141433 -dPolE 9840.000000 70.000000 0.176781 0.141895 -dPolE 9850.000000 70.000000 -0.096974 0.143472 -dPolE 9860.000000 70.000000 -0.006578 0.144159 -dPolE 9870.000000 70.000000 -0.031664 0.145652 -dPolE 9880.000000 70.000000 -0.191599 0.147177 -dPolE 9890.000000 70.000000 -0.124415 0.147905 -dPolE 9900.000000 70.000000 0.088484 0.148285 -dPolE 9910.000000 70.000000 -0.010064 0.149592 -dPolE 9920.000000 70.000000 -0.161660 0.151424 -dPolE 9930.000000 70.000000 -0.303949 0.153384 -dPolE 9940.000000 70.000000 -0.155101 0.154431 -dPolE 9950.000000 70.000000 0.083986 0.154943 -dPolE 9960.000000 70.000000 -0.016296 0.156620 -dPolE 9970.000000 70.000000 0.144589 0.157392 -dPolE 9980.000000 70.000000 0.143249 0.159249 -dPolE 9990.000000 70.000000 -0.150440 0.161668 -dPolE 10000.000000 70.000000 -0.110606 0.163221 -dPolE 10025.000000 70.000000 0.006812 0.078677 -dPolE 10050.000000 70.000000 0.033280 0.076790 -dPolE 10075.000000 70.000000 0.075009 0.074493 -dPolE 10100.000000 70.000000 0.012870 0.072808 -dPolE 10125.000000 70.000000 -0.075710 0.071368 -dPolE 10150.000000 70.000000 0.030279 0.069433 -dPolE 10175.000000 70.000000 0.029748 0.067782 -dPolE 10200.000000 70.000000 -0.076906 0.066392 -dPolE 10225.000000 70.000000 -0.062878 0.064724 -dPolE 10250.000000 70.000000 -0.036536 0.063198 -dPolE 10275.000000 70.000000 -0.015102 0.061972 -dPolE 10300.000000 70.000000 0.028853 0.060387 -dPolE 10325.000000 70.000000 0.063402 0.058754 -dPolE 10350.000000 70.000000 -0.062004 0.057584 -dPolE 10375.000000 70.000000 -0.055670 0.056365 -dPolE 10400.000000 70.000000 0.072872 0.055111 -dPolE 10425.000000 70.000000 0.098910 0.053997 -dPolE 10450.000000 70.000000 0.062511 0.052960 -dPolE 10475.000000 70.000000 -0.083087 0.052019 -dPolE 10500.000000 70.000000 -0.001128 0.050991 -dPolE 10525.000000 70.000000 0.123771 0.049987 -dPolE 10550.000000 70.000000 -0.004313 0.049210 -dPolE 10575.000000 70.000000 -0.040286 0.048464 -dPolE 10600.000000 70.000000 -0.001314 0.047745 -dPolE 10625.000000 70.000000 -0.019042 0.046812 -dPolE 10650.000000 70.000000 -0.025030 0.045986 -dPolE 10675.000000 70.000000 -0.006424 0.045328 -dPolE 10700.000000 70.000000 -0.015318 0.044512 -dPolE 10725.000000 70.000000 -0.012618 0.043720 -dPolE 10750.000000 70.000000 0.073155 0.043150 -dPolE 10775.000000 70.000000 0.061572 0.042386 -dPolE 10800.000000 70.000000 -0.010398 0.041513 -dPolE 10825.000000 70.000000 0.064924 0.040849 -dPolE 10850.000000 70.000000 0.083024 0.040181 -dPolE 10875.000000 70.000000 0.028408 0.039499 -dPolE 10900.000000 70.000000 -0.073735 0.039010 -dPolE 10925.000000 70.000000 -0.124770 0.038486 -dPolE 10950.000000 70.000000 -0.011745 0.037753 -dPolE 10975.000000 70.000000 0.043302 0.037198 -dPolE 11000.000000 70.000000 0.069940 0.036734 -dPolE 11025.000000 70.000000 0.083896 0.036316 -dPolE 11050.000000 70.000000 0.115750 0.035942 -dPolE 11075.000000 70.000000 0.164115 0.035608 -dPolE 11100.000000 70.000000 0.087824 0.035115 -dPolE 11125.000000 70.000000 0.044422 0.034718 -dPolE 11150.000000 70.000000 0.074747 0.034503 -dPolE 11175.000000 70.000000 0.051224 0.034234 -dPolE 11200.000000 70.000000 0.027105 0.033973 -dPolE 11225.000000 70.000000 0.062793 0.033792 -dPolE 11250.000000 70.000000 0.051990 0.033559 -dPolE 11275.000000 70.000000 0.016998 0.033304 -dPolE 11300.000000 70.000000 0.074598 0.033231 -dPolE 11325.000000 70.000000 0.097672 0.033087 -dPolE 11350.000000 70.000000 0.081544 0.032863 -dPolE 11375.000000 70.000000 0.076166 0.032746 -dPolE 11400.000000 70.000000 0.068828 0.032627 -dPolE 11425.000000 70.000000 0.054459 0.032475 -dPolE 11450.000000 70.000000 0.044122 0.032316 -dPolE 11475.000000 70.000000 0.032761 0.032141 -dPolE 11500.000000 70.000000 0.009760 0.031901 -dPolE 11525.000000 70.000000 0.015214 0.031680 -dPolE 11550.000000 70.000000 0.038551 0.031472 -dPolE 11575.000000 70.000000 0.036614 0.031337 -dPolE 11600.000000 70.000000 0.032238 0.031110 -dPolE 11625.000000 70.000000 0.025058 0.030779 -dPolE 11650.000000 70.000000 0.015590 0.030595 -dPolE 11675.000000 70.000000 0.016101 0.030397 -dPolE 11700.000000 70.000000 0.037929 0.030131 -dPolE 11725.000000 70.000000 0.045867 0.029958 -dPolE 11750.000000 70.000000 0.049415 0.029786 -dPolE 11775.000000 70.000000 0.053501 0.029484 -dPolE 11800.000000 70.000000 0.059004 0.029213 -dPolE 11825.000000 70.000000 0.064218 0.028962 -dPolE 11850.000000 70.000000 0.050253 0.028718 -dPolE 11875.000000 70.000000 0.046572 0.028489 -dPolE 11900.000000 70.000000 0.053323 0.028275 -dPolE 11925.000000 70.000000 0.079530 0.028006 -dPolE 11950.000000 70.000000 0.089011 0.027773 -dPolE 11975.000000 70.000000 0.067459 0.027605 -dPolE 12000.000000 70.000000 0.071567 0.027421 -dPolE 12025.000000 70.000000 0.066121 0.027238 -dPolE 12050.000000 70.000000 0.011220 0.027068 -dPolE 12075.000000 70.000000 0.027049 0.026930 -dPolE 12100.000000 70.000000 0.066094 0.026803 -dPolE 12125.000000 70.000000 0.035420 0.026637 -dPolE 12150.000000 70.000000 0.018385 0.026478 -dPolE 12175.000000 70.000000 0.011979 0.026324 -dPolE 12200.000000 70.000000 0.059720 0.026252 -dPolE 12225.000000 70.000000 0.065164 0.026173 -dPolE 12250.000000 70.000000 0.018579 0.026086 -dPolE 12275.000000 70.000000 0.025677 0.026051 -dPolE 12300.000000 70.000000 0.037487 0.026043 -dPolE 12325.000000 70.000000 0.045386 0.026077 -dPolE 12350.000000 70.000000 0.035247 0.026012 -dPolE 12375.000000 70.000000 0.036068 0.025970 -dPolE 12400.000000 70.000000 0.092622 0.026100 -dPolE 12425.000000 70.000000 0.079267 0.026046 -dPolE 12450.000000 70.000000 0.043820 0.025928 -dPolE 12475.000000 70.000000 0.097409 0.026008 -dPolE 12500.000000 70.000000 0.083026 0.025930 -dPolE 12525.000000 70.000000 0.019673 0.025736 -dPolE 12550.000000 70.000000 0.092411 0.025632 -dPolE 12575.000000 70.000000 0.108301 0.025526 -dPolE 12600.000000 70.000000 0.059839 0.025415 -dPolE 12625.000000 70.000000 0.085187 0.025342 -dPolE 12650.000000 70.000000 0.099598 0.025244 -dPolE 12675.000000 70.000000 0.084149 0.025099 -dPolE 12700.000000 70.000000 0.079196 0.024932 -dPolE 12725.000000 70.000000 0.074591 0.024811 -dPolE 12750.000000 70.000000 0.064857 0.024823 -dPolE 12775.000000 70.000000 0.077203 0.024678 -dPolE 12800.000000 70.000000 0.093051 0.024494 -dPolE 12825.000000 70.000000 0.088572 0.024388 -dPolE 12850.000000 70.000000 0.107036 0.024268 -dPolE 12875.000000 70.000000 0.131399 0.024146 -dPolE 12900.000000 70.000000 0.089568 0.024074 -dPolE 12925.000000 70.000000 0.075375 0.023954 -dPolE 12950.000000 70.000000 0.083305 0.023796 -dPolE 12975.000000 70.000000 0.081726 0.023731 -dPolE 13000.000000 70.000000 0.081996 0.023650 -dPolE 13025.000000 70.000000 0.084333 0.023552 -dPolE 13050.000000 70.000000 0.065459 0.023436 -dPolE 13075.000000 70.000000 0.054320 0.023341 -dPolE 13100.000000 70.000000 0.057780 0.023279 -dPolE 13125.000000 70.000000 0.054970 0.023219 -dPolE 13150.000000 70.000000 0.053520 0.023153 -dPolE 13175.000000 70.000000 0.057470 0.023073 -dPolE 13200.000000 70.000000 0.063494 0.023010 -dPolE 13225.000000 70.000000 0.070928 0.022971 -dPolE 13250.000000 70.000000 0.080909 0.022993 -dPolE 13275.000000 70.000000 0.051857 0.022984 -dPolE 13300.000000 70.000000 0.022699 0.022969 -dPolE 13325.000000 70.000000 0.076654 0.022982 -dPolE 13350.000000 70.000000 0.102865 0.023010 -dPolE 13375.000000 70.000000 0.111541 0.023045 -dPolE 13400.000000 70.000000 0.107587 0.023057 -dPolE 13425.000000 70.000000 0.092557 0.023115 -dPolE 13450.000000 70.000000 0.071000 0.023211 -dPolE 13475.000000 70.000000 0.106587 0.023335 -dPolE 13500.000000 70.000000 0.110952 0.023487 -dPolE 13525.000000 70.000000 0.083744 0.023667 -dPolE 13550.000000 70.000000 0.147604 0.023953 -dPolE 13575.000000 70.000000 0.163248 0.024275 -dPolE 13600.000000 70.000000 0.112383 0.024642 -dPolE 13625.000000 70.000000 0.130552 0.024834 -dPolE 13650.000000 70.000000 0.123440 0.025042 -dPolE 13675.000000 70.000000 0.064734 0.025304 -dPolE 13700.000000 70.000000 0.069468 0.025886 -dPolE 13725.000000 70.000000 0.087003 0.026876 -dPolE 13750.000000 70.000000 0.110178 0.028689 -dPolE 13775.000000 70.000000 0.086923 0.031278 -dPolE 13800.000000 70.000000 0.051496 0.034004 -dPolE 13825.000000 70.000000 0.028648 0.035647 -dPolE 13850.000000 70.000000 0.046143 0.035350 -dPolE 13875.000000 70.000000 0.055333 0.034311 -dPolE 13900.000000 70.000000 0.002944 0.032902 -dPolE 13925.000000 70.000000 0.018140 0.031992 -dPolE 13950.000000 70.000000 0.047368 0.031122 -dPolE 13975.000000 70.000000 0.036399 0.029690 -dPolE 14000.000000 70.000000 0.029442 0.028820 -dPolE 14025.000000 70.000000 0.024933 0.028188 -dPolE 14050.000000 70.000000 0.024012 0.027500 -dPolE 14075.000000 70.000000 0.058673 0.027008 -dPolE 14100.000000 70.000000 0.098919 0.026613 -dPolE 14125.000000 70.000000 0.040108 0.026136 -dPolE 14150.000000 70.000000 0.029215 0.025807 -dPolE 14175.000000 70.000000 0.046739 0.025568 -dPolE 14200.000000 70.000000 0.040847 0.025304 -dPolE 14225.000000 70.000000 0.040553 0.025140 -dPolE 14250.000000 70.000000 0.045288 0.025042 -dPolE 14275.000000 70.000000 0.066948 0.024873 -dPolE 14300.000000 70.000000 0.101485 0.024752 -dPolE 14325.000000 70.000000 0.144912 0.024671 -dPolE 14350.000000 70.000000 0.104514 0.024619 -dPolE 14375.000000 70.000000 0.096325 0.024546 -dPolE 14400.000000 70.000000 0.118386 0.024453 -dPolE 14425.000000 70.000000 0.051843 0.024499 -dPolE 14450.000000 70.000000 0.044830 0.024458 -dPolE 14475.000000 70.000000 0.099677 0.024327 -dPolE 14500.000000 70.000000 0.050029 0.024327 -dPolE 14525.000000 70.000000 0.064940 0.024339 -dPolE 14550.000000 70.000000 0.155146 0.024361 -dPolE 14575.000000 70.000000 0.060414 0.024303 -dPolE 14600.000000 70.000000 0.029659 0.024308 -dPolE 14625.000000 70.000000 0.084604 0.024391 -dPolE 14650.000000 70.000000 0.061521 0.024334 -dPolE 14675.000000 70.000000 0.059383 0.024351 -dPolE 14700.000000 70.000000 0.089484 0.024471 -dPolE 14725.000000 70.000000 0.118830 0.024390 -dPolE 14750.000000 70.000000 0.127631 0.024384 -dPolE 14775.000000 70.000000 0.109367 0.024494 -dPolE 14800.000000 70.000000 0.034031 0.024511 -dPolE 14825.000000 70.000000 0.017250 0.024511 -dPolE 14850.000000 70.000000 0.086492 0.024500 -dPolE 14875.000000 70.000000 0.065683 0.024548 -dPolE 14900.000000 70.000000 0.057442 0.024618 -dPolE 14925.000000 70.000000 0.077460 0.024712 -dPolE 14950.000000 70.000000 0.045533 0.024714 -dPolE 14975.000000 70.000000 0.041801 0.024773 -dPolE 15000.000000 70.000000 0.083780 0.024925 -dPolE 15025.000000 70.000000 0.088659 0.024886 -dPolE 15050.000000 70.000000 0.095401 0.024913 -dPolE 15075.000000 70.000000 0.109194 0.025052 -dPolE 15100.000000 70.000000 0.103116 0.025046 -dPolE 15125.000000 70.000000 0.110659 0.025054 -dPolE 15150.000000 70.000000 0.138644 0.025097 -dPolE 15175.000000 70.000000 0.109977 0.025162 -dPolE 15200.000000 70.000000 0.089726 0.025249 -dPolE 15225.000000 70.000000 0.085784 0.025362 -dPolE 15250.000000 70.000000 0.075452 0.025418 -dPolE 15275.000000 70.000000 0.088063 0.025501 -dPolE 15300.000000 70.000000 0.129723 0.025623 -dPolE 15325.000000 70.000000 0.069571 0.025670 -dPolE 15350.000000 70.000000 0.041761 0.025743 -dPolE 15375.000000 70.000000 0.056999 0.025850 -dPolE 15400.000000 70.000000 0.064877 0.025907 -dPolE 15425.000000 70.000000 0.072747 0.026022 -dPolE 15450.000000 70.000000 0.080838 0.026202 -dPolE 15475.000000 70.000000 0.083334 0.026267 -dPolE 15500.000000 70.000000 0.090283 0.026358 -dPolE 15525.000000 70.000000 0.101656 0.026476 -dPolE 15550.000000 70.000000 0.110235 0.026461 -dPolE 15575.000000 70.000000 0.114928 0.026547 -dPolE 15600.000000 70.000000 0.112863 0.026721 -dPolE 15625.000000 70.000000 0.037594 0.026816 -dPolE 15650.000000 70.000000 0.034065 0.026933 -dPolE 15675.000000 70.000000 0.083328 0.027063 -dPolE 15700.000000 70.000000 0.066327 0.027122 -dPolE 15725.000000 70.000000 0.073002 0.027225 -dPolE 15750.000000 70.000000 0.089386 0.027361 -dPolE 15775.000000 70.000000 0.044818 0.027506 -dPolE 15800.000000 70.000000 0.064880 0.027613 -dPolE 15825.000000 70.000000 0.106870 0.027714 -dPolE 15850.000000 70.000000 0.038943 0.027931 -dPolE 15875.000000 70.000000 0.053389 0.028041 -dPolE 15900.000000 70.000000 0.097113 0.028118 -dPolE 15925.000000 70.000000 0.077599 0.028304 -dPolE 15950.000000 70.000000 0.082359 0.028476 -dPolE 15975.000000 70.000000 0.092483 0.028641 -dPolE 16000.000000 70.000000 0.084092 0.028807 -dPolE 16025.000000 70.000000 0.117735 0.028918 -dPolE 16050.000000 70.000000 0.124147 0.029058 -dPolE 16075.000000 70.000000 0.013779 0.029333 -dPolE 16100.000000 70.000000 0.057156 0.029495 -dPolE 16125.000000 70.000000 0.088385 0.029643 -dPolE 16150.000000 70.000000 0.002192 0.029831 -dPolE 16175.000000 70.000000 0.077811 0.030034 -dPolE 16200.000000 70.000000 0.116008 0.030257 -dPolE 16225.000000 70.000000 0.033283 0.030510 -dPolE 16250.000000 70.000000 0.089212 0.030682 -dPolE 16275.000000 70.000000 0.103785 0.030906 -dPolE 16300.000000 70.000000 0.037108 0.031217 -dPolE 16325.000000 70.000000 0.078843 0.031441 -dPolE 16350.000000 70.000000 0.106385 0.031719 -dPolE 16375.000000 70.000000 0.111403 0.032066 -dPolE 16400.000000 70.000000 0.072915 0.032302 -dPolE 16425.000000 70.000000 0.055535 0.032712 -dPolE 16450.000000 70.000000 0.059390 0.033252 -dPolE 16475.000000 70.000000 0.099431 0.033442 -dPolE 16500.000000 70.000000 0.094490 0.033926 -dPolE 16525.000000 70.000000 0.068718 0.034601 -dPolE 16550.000000 70.000000 0.106094 0.035170 -dPolE 16575.000000 70.000000 0.079572 0.036084 -dPolE 16600.000000 70.000000 0.039594 0.037215 -dPolE 16625.000000 70.000000 0.082032 0.038424 -dPolE 16650.000000 70.000000 0.040110 0.040602 -dPolE 16675.000000 70.000000 0.008557 0.043452 -dPolE 16700.000000 70.000000 0.112667 0.046835 -dPolE 16725.000000 70.000000 0.107670 0.052035 -dPolE 16750.000000 70.000000 0.086537 0.058760 -dPolE 16775.000000 70.000000 0.099584 0.067024 -dPolE 16800.000000 70.000000 0.026520 0.078223 -dPolE 16825.000000 70.000000 -0.001887 0.091867 -dPolE 16850.000000 70.000000 0.093951 0.107110 -dPolE 16875.000000 70.000000 0.015745 0.125295 -dPolE 16900.000000 70.000000 -0.217532 0.147289 -dPolE 16925.000000 70.000000 -0.622895 0.173056 -dPolE 16950.000000 70.000000 -0.393209 0.199934 -dPolE 16975.000000 70.000000 -0.096587 0.228777 -dPolE 17000.000000 70.000000 0.152324 0.260383 \ No newline at end of file From 40561b868a0db5e8fad10a08f08cd32ec89f854b Mon Sep 17 00:00:00 2001 From: Ron <139139971+RonHildebrandt@users.noreply.github.com> Date: Fri, 3 May 2024 10:12:10 +0200 Subject: [PATCH 07/76] Update README.md add @lukaspie suggestions. --- examples/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/README.md b/examples/README.md index 8327df73c..f9ba28974 100644 --- a/examples/README.md +++ b/examples/README.md @@ -7,7 +7,7 @@ technique specific plugins. The examples contain code snippets for creating a NeXus/HDF5 file for the experimental technique according to a standardized NeXus application definition (e.g. NXem, NXmpes, NXellipsometry, -NXapm, NXopt, NXmpes_xps, NXraman). +NXapm, NXopt, NXxps, NXraman). Respective [Jupyter Notebooks](https://jupyter.org/) are used for running these examples. There is also a documentation of the [dataconverter](../pynxtools/dataconverter) available. From 4cdabbeec286e97d580ec7ad5c77a7736b1ae27a Mon Sep 17 00:00:00 2001 From: Florian Dobener Date: Fri, 3 May 2024 10:55:27 +0200 Subject: [PATCH 08/76] Update definitions (#324) * Update definitions * Update def file * Update nexus def version * Update to latest nx git tag --- pynxtools/definitions | 2 +- pynxtools/nexus-version.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pynxtools/definitions b/pynxtools/definitions index 4ef8770bc..229774c56 160000 --- a/pynxtools/definitions +++ b/pynxtools/definitions @@ -1 +1 @@ -Subproject commit 4ef8770bc60f507669b6d62fac1c5f911cba5a9b +Subproject commit 229774c56fb710bb1d9008afb49e00be402c7578 diff --git a/pynxtools/nexus-version.txt b/pynxtools/nexus-version.txt index e69ef7136..4f9e3e43a 100644 --- a/pynxtools/nexus-version.txt +++ b/pynxtools/nexus-version.txt @@ -1 +1 @@ -v2020.10-1656-g4ef8770bc \ No newline at end of file +v2022.07-1132-g229774c56 \ No newline at end of file From c57aa185d9a924f4ad5a42929b1386088758dc64 Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Fri, 3 May 2024 11:05:34 +0200 Subject: [PATCH 09/76] fix readme of dataconverter --- pynxtools/dataconverter/README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pynxtools/dataconverter/README.md b/pynxtools/dataconverter/README.md index 7179eb594..7816ff435 100644 --- a/pynxtools/dataconverter/README.md +++ b/pynxtools/dataconverter/README.md @@ -27,7 +27,8 @@ Options: arguments instead. The path to the input data file to read. (Repeat for more than one file.) - --reader [example] The reader to use. default="example" + --reader [example|json_map|json_yml] + The reader to use. default="example" --nxdl TEXT The name of the NXDL file to use without extension.This option is required if no '-- params-file' is supplied. From e531bda660bf14556d2242cb368e4973e1e66fe9 Mon Sep 17 00:00:00 2001 From: Florian Dobener Date: Fri, 3 May 2024 14:29:00 +0200 Subject: [PATCH 10/76] Add pynx-ellips plugin to extras (#327) --- pyproject.toml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 223608597..22904016a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -33,7 +33,7 @@ dependencies = [ "ase>=3.19.0", "mergedeep", "importlib-metadata", - "lxml>=4.9.1", + "lxml>=4.9.1", ] [project.urls] @@ -61,7 +61,7 @@ dev = [ "pre-commit", ] convert = [ - "pynxtools[apm,em,mpes,xps,stm,xrd]", + "pynxtools[apm,em,mpes,xps,stm,xrd,ellips]", ] apm = [ "pynxtools-apm", @@ -81,6 +81,9 @@ stm = [ xrd = [ "pynxtools-xrd", ] +ellips = [ + "pynxtools-ellips", +] [project.scripts] read_nexus = "pynxtools.nexus.nexus:main" From 52f64b296426e010b5304c3b455e9541a2fef0bf Mon Sep 17 00:00:00 2001 From: domna Date: Fri, 3 May 2024 10:15:14 +0200 Subject: [PATCH 11/76] Adds nexus tree structure --- pynxtools/dataconverter/helpers.py | 55 ++++++++++- pynxtools/dataconverter/nexus_tree.py | 131 ++++++++++++++++++++++++++ pyproject.toml | 4 +- 3 files changed, 188 insertions(+), 2 deletions(-) create mode 100644 pynxtools/dataconverter/nexus_tree.py diff --git a/pynxtools/dataconverter/helpers.py b/pynxtools/dataconverter/helpers.py index 591db424e..c27398c01 100644 --- a/pynxtools/dataconverter/helpers.py +++ b/pynxtools/dataconverter/helpers.py @@ -23,7 +23,7 @@ from datetime import datetime, timezone from enum import Enum from functools import lru_cache -from typing import Any, Callable, List, Optional, Set, Tuple, Union +from typing import Any, Callable, List, Literal, Optional, Set, Tuple, Union import h5py import lxml.etree as ET @@ -31,6 +31,7 @@ from ase.data import chemical_symbols from pynxtools import get_nexus_version, get_nexus_version_hash +from pynxtools.dataconverter.nexus_tree import NexusEntity, NexusGroup, NexusNode from pynxtools.dataconverter.template import Template from pynxtools.definitions.dev_tools.utils.nxdl_utils import get_inherited_nodes from pynxtools.nexus import nexus @@ -216,6 +217,58 @@ def add_inherited_children(list_of_children_to_add, path, nxdl_root, template): return template +def generate_tree_from_nxdl( + root: ET._Element, + tree, + nxdl_root: Optional[ET._Element] = None, + nxdl_name: Optional[str] = None, +): + if nxdl_root is None: + nxdl_name = root.attrib["name"] + nxdl_root = root + root = get_first_group(root) + + tag = remove_namespace_from_tag(root.tag) + + if tag == "doc": + return + + optionality: Literal["required", "recommended", "optional"] = "required" + if root.attrib.get("recommended"): + optionality = "recommended" + elif root.attrib.get("optional"): + optionality = "optional" + + is_variadic = contains_uppercase(root.attrib["name"]) + + if tag in ("field", "attribute"): + NexusEntity( + parent=root, + name=root.attrib["name"], + type=tag, + optionality=optionality, + variadic=is_variadic, + unit=root.attrib.get("units"), + dtype=root.attrib["type"], + ) + elif tag == "group": + NexusGroup( + parent=root, + type=tag, + name=root.attrib["name"], + nx_class=root.attrib["type"], + optionality=optionality, + variadic=is_variadic, + occurrence_limits=( + root.attrib.get("minOccurs"), + root.attrib.get("maxOccurs"), + ), + ) + + for child in root: + generate_template_from_nxdl(child, tree, nxdl_root, nxdl_name) + + def generate_template_from_nxdl( root, template, path="", nxdl_root=None, nxdl_name=None ): diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py new file mode 100644 index 000000000..f1a7d2de8 --- /dev/null +++ b/pynxtools/dataconverter/nexus_tree.py @@ -0,0 +1,131 @@ +from typing import Literal, Optional, Tuple + +from anytree import RenderTree, Resolver +from anytree.node.nodemixin import NodeMixin +from pydantic import BaseModel + + +class ReadOnlyError(RuntimeError): + pass + + +class NexusNode(BaseModel, NodeMixin): + name: str + type: Literal["group", "field", "attribute"] + optionality: Literal["required", "recommended", "optional"] + variadic: bool + + def __init__(self, parent, **data) -> None: + super().__init__(**data) + self.__readonly = False + self.parent = parent + self.__readonly = True + + def _pre_attach(self, parent): + if self.__readonly: + raise ReadOnlyError() + + def _pre_detach(self, parent): + raise ReadOnlyError() + + +class NexusGroup(NexusNode): + nx_class: str + occurrence_limits: Tuple[Optional[int], Optional[int]] = (None, None) + + def __repr__(self) -> str: + return ( + f"{self.nx_class[2:].upper()}[{self.name.lower()}] ({self.optionality[:3]})" + ) + + +class NexusEntity(NexusNode): + type: Literal["field", "attribute"] + # TODO: Unit can also be a literal + unit: Optional[str] = None + # TODO: Add complete list of all supported nexus types + # We can also restrict this to the nexus types that are supported by pynx + dtype: Optional[ + Literal[ + "NX_CHAR", + "NX_BINARY", + "NX_BOOLEAN", + "NX_CHAR", + "NX_DATE_TIME", + "ISO8601", + "NX_FLOAT", + "NX_INT", + "NX_UINT", + "NX_NUMBER", + "NX_POSINT", + "NX_COMPLEX", + ] + ] = None + + def __repr__(self) -> str: + if self.type == "attribute": + return f"@{self.name} ({self.optionality[:3]})" + return f"{self.name} ({self.optionality[:3]})" + + +def reset_check(graph: nx.DiGraph): + for node in graph.nodes: + node["is_valid"] = False + + +if __name__ == "__main__": + root = NexusGroup( + name="/", + nx_class="NXroot", + type="group", + optionality="required", + variadic=False, + parent=None, + ) + NexusEntity( + name="default", + type="attribute", + optionality="optional", + variadic=False, + parent=root, + ) + entry = NexusGroup( + name="ENTRY", + nx_class="NXentry", + type="group", + optionality="optional", + variadic=True, + parent=root, + ) + instrument = NexusGroup( + name="INSTRUMENT", + nx_class="NXinstrument", + type="group", + optionality="optional", + variadic=True, + parent=entry, + ) + some_field = NexusEntity( + name="my_setting", + type="field", + optionality="required", + variadic=False, + parent=instrument, + ) + + print(RenderTree(root)) + resolver = Resolver("name") + print(resolver.get(root, "ENTRY/INSTRUMENT/my_setting")) + + +""" +Double graph structure + +One graph holds the concepts for the nexus appdef structure. +An entry is directly relatable to a node (split the path). +This can be used to recursively validate the nexus structure. + +Two step process: +1. Run to concept graph and validate if all directly required fields are present. +2. Go through the entries, map them to the concept graph and validate them recursively. +""" diff --git a/pyproject.toml b/pyproject.toml index 223608597..caf8f7150 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -33,7 +33,9 @@ dependencies = [ "ase>=3.19.0", "mergedeep", "importlib-metadata", - "lxml>=4.9.1", + "lxml>=4.9.1", + "anytree", + "pydantic", ] [project.urls] From f3af28e4831c7f18a93ee26c58646fe0e42e5f0a Mon Sep 17 00:00:00 2001 From: domna Date: Fri, 3 May 2024 12:17:30 +0200 Subject: [PATCH 12/76] Use literals for unit category and extend literal for dtype --- pynxtools/dataconverter/nexus_tree.py | 82 +++++++++++++++++++-------- 1 file changed, 57 insertions(+), 25 deletions(-) diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index f1a7d2de8..a73740d87 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -39,28 +39,65 @@ def __repr__(self) -> str: ) +NexusType = Literal[ + "ISO8601", + "NX_BINARY", + "NX_BOOLEAN", + "NX_CCOMPLEX", + "NX_CHAR", + "NX_CHAR_OR_NUMBER", + "NX_COMPLEX", + "NX_DATE_TIME", + "NX_FLOAT", + "NX_INT", + "NX_NUMBER", + "NX_PCOMPLEX", + "NX_POSINT", + "NX_QUATERNION", + "NX_UINT", +] + +NexusUnitCategory = Literal[ + "NX_ANGLE", + "NX_ANY", + "NX_AREA", + "NX_CHARGE", + "NX_COUNT", + "NX_CROSS_SECTION", + "NX_CURRENT", + "NX_DIMENSIONLESS", + "NX_EMITTANCE", + "NX_ENERGY", + "NX_FLUX", + "NX_FREQUENCY", + "NX_LENGTH", + "NX_MASS", + "NX_MASS_DENSITY", + "NX_MOLECULAR_WEIGHT", + "NX_PERIOD", + "NX_PER_AREA", + "NX_PER_LENGTH", + "NX_POWER", + "NX_PRESSURE", + "NX_PULSES", + "NX_SCATTERING_LENGTH_DENSITY", + "NX_SOLID_ANGLE", + "NX_TEMPERATURE", + "NX_TIME", + "NX_TIME_OF_FLIGHT", + "NX_TRANSFORMATION", + "NX_UNITLESS", + "NX_VOLTAGE", + "NX_VOLUME", + "NX_WAVELENGTH", + "NX_WAVENUMBER", +] + + class NexusEntity(NexusNode): type: Literal["field", "attribute"] - # TODO: Unit can also be a literal - unit: Optional[str] = None - # TODO: Add complete list of all supported nexus types - # We can also restrict this to the nexus types that are supported by pynx - dtype: Optional[ - Literal[ - "NX_CHAR", - "NX_BINARY", - "NX_BOOLEAN", - "NX_CHAR", - "NX_DATE_TIME", - "ISO8601", - "NX_FLOAT", - "NX_INT", - "NX_UINT", - "NX_NUMBER", - "NX_POSINT", - "NX_COMPLEX", - ] - ] = None + unit: Optional[NexusUnitCategory] = None + dtype: Optional[NexusType] = None def __repr__(self) -> str: if self.type == "attribute": @@ -68,11 +105,6 @@ def __repr__(self) -> str: return f"{self.name} ({self.optionality[:3]})" -def reset_check(graph: nx.DiGraph): - for node in graph.nodes: - node["is_valid"] = False - - if __name__ == "__main__": root = NexusGroup( name="/", From 08aca1e340148a323f4527482e10b6d15d9d8386 Mon Sep 17 00:00:00 2001 From: domna Date: Fri, 3 May 2024 16:02:09 +0200 Subject: [PATCH 13/76] Only allow occurences >= 0 --- pynxtools/dataconverter/nexus_tree.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index a73740d87..53ac03750 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -1,8 +1,8 @@ -from typing import Literal, Optional, Tuple +from typing import Annotated, Literal, Optional, Tuple from anytree import RenderTree, Resolver from anytree.node.nodemixin import NodeMixin -from pydantic import BaseModel +from pydantic import BaseModel, Field class ReadOnlyError(RuntimeError): @@ -31,7 +31,10 @@ def _pre_detach(self, parent): class NexusGroup(NexusNode): nx_class: str - occurrence_limits: Tuple[Optional[int], Optional[int]] = (None, None) + occurrence_limits: Tuple[ + Optional[Annotated[int, Field(strict=True, ge=0)]], + Optional[Annotated[int, Field(strict=True, ge=0)]], + ] = (None, None) def __repr__(self) -> str: return ( From 0a3738e407dc4dd6d5221d6b43bcc19ce57705a8 Mon Sep 17 00:00:00 2001 From: domna Date: Fri, 3 May 2024 17:01:52 +0200 Subject: [PATCH 14/76] Add tree generation function --- pynxtools/dataconverter/helpers.py | 111 ++++++++++++++------------ pynxtools/dataconverter/nexus_tree.py | 59 -------------- 2 files changed, 62 insertions(+), 108 deletions(-) diff --git a/pynxtools/dataconverter/helpers.py b/pynxtools/dataconverter/helpers.py index c27398c01..862d58180 100644 --- a/pynxtools/dataconverter/helpers.py +++ b/pynxtools/dataconverter/helpers.py @@ -217,56 +217,69 @@ def add_inherited_children(list_of_children_to_add, path, nxdl_root, template): return template -def generate_tree_from_nxdl( - root: ET._Element, - tree, - nxdl_root: Optional[ET._Element] = None, - nxdl_name: Optional[str] = None, -): - if nxdl_root is None: - nxdl_name = root.attrib["name"] - nxdl_root = root - root = get_first_group(root) - - tag = remove_namespace_from_tag(root.tag) - - if tag == "doc": - return - - optionality: Literal["required", "recommended", "optional"] = "required" - if root.attrib.get("recommended"): - optionality = "recommended" - elif root.attrib.get("optional"): - optionality = "optional" - - is_variadic = contains_uppercase(root.attrib["name"]) - - if tag in ("field", "attribute"): - NexusEntity( - parent=root, - name=root.attrib["name"], - type=tag, - optionality=optionality, - variadic=is_variadic, - unit=root.attrib.get("units"), - dtype=root.attrib["type"], - ) - elif tag == "group": - NexusGroup( - parent=root, - type=tag, - name=root.attrib["name"], - nx_class=root.attrib["type"], - optionality=optionality, - variadic=is_variadic, - occurrence_limits=( - root.attrib.get("minOccurs"), - root.attrib.get("maxOccurs"), - ), - ) +def generate_tree_from_nxdl(root: ET._Element) -> NexusNode: + def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: + tag = remove_namespace_from_tag(xml_elem.tag) + + if tag == "doc": + return + + optionality: Literal["required", "recommended", "optional"] = "required" + if xml_elem.attrib.get("recommended"): + optionality = "recommended" + elif xml_elem.attrib.get("optional"): + optionality = "optional" + + if tag in ("field", "attribute"): + is_variadic = contains_uppercase(xml_elem.attrib["name"]) + current_elem = NexusEntity( + parent=parent, + name=xml_elem.attrib["name"], + type=tag, + optionality=optionality, + variadic=is_variadic, + unit=xml_elem.attrib.get("units"), + dtype=xml_elem.attrib.get("type", "NX_CHAR"), + ) + elif tag == "group": + name = xml_elem.attrib.get("name", xml_elem.attrib["type"][2:].upper()) + is_variadic = contains_uppercase(name) + current_elem = NexusGroup( + parent=parent, + type=tag, + name=name, + nx_class=xml_elem.attrib["type"], + optionality=optionality, + variadic=is_variadic, + occurrence_limits=( + xml_elem.attrib.get("minOccurs"), + xml_elem.attrib.get("maxOccurs"), + ), + ) + elif tag in ("enumeration", "dimensions"): + # TODO: Attach enum values and dims to parent + return + else: + # We don't know the tag, skip processing children of it + # TODO: Add logging or raise an error + return + + for child in xml_elem: + add_children_to(current_elem, child) + + entry = get_first_group(root) + + tree = NexusGroup( + name=root.attrib["name"], + nx_class="NXroot", + type="group", + optionality="required", + variadic=False, + parent=None, + ) + add_children_to(tree, entry) - for child in root: - generate_template_from_nxdl(child, tree, nxdl_root, nxdl_name) + return tree def generate_template_from_nxdl( diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index 53ac03750..3180f39b1 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -1,6 +1,5 @@ from typing import Annotated, Literal, Optional, Tuple -from anytree import RenderTree, Resolver from anytree.node.nodemixin import NodeMixin from pydantic import BaseModel, Field @@ -106,61 +105,3 @@ def __repr__(self) -> str: if self.type == "attribute": return f"@{self.name} ({self.optionality[:3]})" return f"{self.name} ({self.optionality[:3]})" - - -if __name__ == "__main__": - root = NexusGroup( - name="/", - nx_class="NXroot", - type="group", - optionality="required", - variadic=False, - parent=None, - ) - NexusEntity( - name="default", - type="attribute", - optionality="optional", - variadic=False, - parent=root, - ) - entry = NexusGroup( - name="ENTRY", - nx_class="NXentry", - type="group", - optionality="optional", - variadic=True, - parent=root, - ) - instrument = NexusGroup( - name="INSTRUMENT", - nx_class="NXinstrument", - type="group", - optionality="optional", - variadic=True, - parent=entry, - ) - some_field = NexusEntity( - name="my_setting", - type="field", - optionality="required", - variadic=False, - parent=instrument, - ) - - print(RenderTree(root)) - resolver = Resolver("name") - print(resolver.get(root, "ENTRY/INSTRUMENT/my_setting")) - - -""" -Double graph structure - -One graph holds the concepts for the nexus appdef structure. -An entry is directly relatable to a node (split the path). -This can be used to recursively validate the nexus structure. - -Two step process: -1. Run to concept graph and validate if all directly required fields are present. -2. Go through the entries, map them to the concept graph and validate them recursively. -""" From aeae848ee8c8037939433a3200cf31ad23e4736a Mon Sep 17 00:00:00 2001 From: domna Date: Mon, 6 May 2024 11:04:36 +0200 Subject: [PATCH 15/76] Reformatting --- pynxtools/dataconverter/helpers.py | 21 ++++++- pynxtools/dataconverter/nexus_tree.py | 84 ++++++++++++++------------- 2 files changed, 63 insertions(+), 42 deletions(-) diff --git a/pynxtools/dataconverter/helpers.py b/pynxtools/dataconverter/helpers.py index 862d58180..295f65afc 100644 --- a/pynxtools/dataconverter/helpers.py +++ b/pynxtools/dataconverter/helpers.py @@ -253,20 +253,37 @@ def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: variadic=is_variadic, occurrence_limits=( xml_elem.attrib.get("minOccurs"), + # TODO: Treat "unbounded" in maxOccurs properly xml_elem.attrib.get("maxOccurs"), ), ) - elif tag in ("enumeration", "dimensions"): - # TODO: Attach enum values and dims to parent + elif tag == "enumeration": + items: List[str] = [] + for item_tag in xml_elem: + if remove_namespace_from_tag(item_tag.tag) == "item": + items.append(item_tag.attrib["value"]) + parent.items = items + return + elif tag == "dimensions": + # TODO: Attach dims to parent return else: + # TODO: Tags: choice, link # We don't know the tag, skip processing children of it # TODO: Add logging or raise an error return + tags = ("enumeration", "dimensions") + check_tags_in_base_classes = False for child in xml_elem: + if remove_namespace_from_tag(child.tag) not in tags: + check_tags_in_base_classes = True add_children_to(current_elem, child) + if check_tags_in_base_classes: + # TODO: Search for enumeration and dimensions tags in elist parents + pass + entry = get_first_group(root) tree = NexusGroup( diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index 3180f39b1..d8077bff3 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -1,45 +1,8 @@ -from typing import Annotated, Literal, Optional, Tuple +from typing import Annotated, List, Literal, Optional, Tuple +import lxml.etree as ET from anytree.node.nodemixin import NodeMixin -from pydantic import BaseModel, Field - - -class ReadOnlyError(RuntimeError): - pass - - -class NexusNode(BaseModel, NodeMixin): - name: str - type: Literal["group", "field", "attribute"] - optionality: Literal["required", "recommended", "optional"] - variadic: bool - - def __init__(self, parent, **data) -> None: - super().__init__(**data) - self.__readonly = False - self.parent = parent - self.__readonly = True - - def _pre_attach(self, parent): - if self.__readonly: - raise ReadOnlyError() - - def _pre_detach(self, parent): - raise ReadOnlyError() - - -class NexusGroup(NexusNode): - nx_class: str - occurrence_limits: Tuple[ - Optional[Annotated[int, Field(strict=True, ge=0)]], - Optional[Annotated[int, Field(strict=True, ge=0)]], - ] = (None, None) - - def __repr__(self) -> str: - return ( - f"{self.nx_class[2:].upper()}[{self.name.lower()}] ({self.optionality[:3]})" - ) - +from pydantic import BaseModel, Field, InstanceOf NexusType = Literal[ "ISO8601", @@ -59,6 +22,7 @@ def __repr__(self) -> str: "NX_UINT", ] +# TODO: Get types from nxdlTypes.xsd NexusUnitCategory = Literal[ "NX_ANGLE", "NX_ANY", @@ -96,10 +60,50 @@ def __repr__(self) -> str: ] +class ReadOnlyError(RuntimeError): + pass + + +class NexusNode(BaseModel, NodeMixin): + name: str + type: Literal["group", "field", "attribute"] + optionality: Literal["required", "recommended", "optional"] + variadic: bool + inheritance: List[InstanceOf[ET._Element]] = [] + + def __init__(self, parent, **data) -> None: + super().__init__(**data) + self.__readonly = False + self.parent = parent + self.__readonly = True + + def _pre_attach(self, parent): + if self.__readonly: + raise ReadOnlyError() + + def _pre_detach(self, parent): + raise ReadOnlyError() + + +class NexusGroup(NexusNode): + nx_class: str + occurrence_limits: Tuple[ + Optional[Annotated[int, Field(strict=True, ge=0)]], + Optional[Annotated[int, Field(strict=True, ge=0)]], + ] = (None, None) + + def __repr__(self) -> str: + return ( + f"{self.nx_class[2:].upper()}[{self.name.lower()}] ({self.optionality[:3]})" + ) + + class NexusEntity(NexusNode): type: Literal["field", "attribute"] unit: Optional[NexusUnitCategory] = None dtype: Optional[NexusType] = None + items: Optional[List[str]] = None + shape: Optional[Tuple[int, ...]] = None def __repr__(self) -> str: if self.type == "attribute": From 929ecdc59c39c8ad5b5b1c343c31167c9d62078b Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Mon, 6 May 2024 15:10:43 +0200 Subject: [PATCH 16/76] add plugin and links to individual docs to the main docs --- README.md | 24 ------------------------ docs/index.md | 4 +++- docs/reference/plugins.md | 25 +++++++++++++++++++++++++ pynxtools/definitions | 2 +- 4 files changed, 29 insertions(+), 26 deletions(-) create mode 100644 docs/reference/plugins.md diff --git a/README.md b/README.md index be0680360..da079e7af 100644 --- a/README.md +++ b/README.md @@ -52,30 +52,6 @@ data into the NeXus standard and visualising the files content. # Documentation Documentation for the different tools can be found [here](https://fairmat-nfdi.github.io/pynxtools/). -# Plugins -There are a number of plugins available for pynxtools. These are extensions of pynxtools used for reading data of specific experimental techniques. -- [**pynxtools-mpes**](https://github.com/FAIRmat-NFDI/pynxtools-mpes): A reader for multi-dimensional photoelectron spectroscopy data. -- [**pynxtools-stm**](https://github.com/FAIRmat-NFDI/pynxtools-stm): A reader for scanning tunneling microscopy (SPM) and spectroscopy (STS) data. -- [**pynxtools-xps**](https://github.com/FAIRmat-NFDI/pynxtools-xps): A reader for X-ray photoelectron spectroscopy (XPS) data. -- [**pynxtools-apm**](https://github.com/FAIRmat-NFDI/pynxtools-apm): A reader for atom probe as well as related field ion microscopy data. -- [**pynxtools-em**](https://github.com/FAIRmat-NFDI/pynxtools-em): A reader for electron microscopy data. -- [**pynxtools-ellips**](https://github.com/FAIRmat-NFDI/pynxtools-ellips): A reader for ellipsometry data. - -Note that pynxtools-apm and pynxtools-em are currently refactored into pynxtools plugins. -Until this refactoring will have become completed, users are advised to use the apm and em readers via pynxtools<=0.1.1. - - -You can install each of the plugins together with `pynxtools` by passing the name of the plugin as an extra to the pip install call. For example, for the `pynxtools-mpes` plugin: -```shell -pip install pynxtools[mpes] -``` - -In addition, you can also install all of the `pynxtools` reader plugins which are maintained by FAIRmat by passing the `[convert]` extra to the pip install call: -```shell -pip install pynxtools[convert] -``` -There is also a [cookiecutter template](https://github.com/FAIRmat-NFDI/pynxtools-plugin-template) available for creating your own pynxtools plugin. - # Contributing ## Development install diff --git a/docs/index.md b/docs/index.md index 7b9e44a08..3dd79f389 100644 --- a/docs/index.md +++ b/docs/index.md @@ -51,6 +51,8 @@ An introduction to NeXus and its design principles. ### Reference +Within FAIRmat, we maintain a number of reader plugins for different experimental techniques. You can find more information [here](reference/plugins.md). + [Here](reference/definitions.md), you find the detailed list of application definitions and base classes and their respective fields. Or go directly to the [official NIAC](https://manual.nexusformat.org/classes/index.html) @@ -59,4 +61,4 @@ Or go directly to the [official NIAC](https://manual.nexusformat.org/classes/ind -

Project and community

+

Project and community

\ No newline at end of file diff --git a/docs/reference/plugins.md b/docs/reference/plugins.md new file mode 100644 index 000000000..07178ba23 --- /dev/null +++ b/docs/reference/plugins.md @@ -0,0 +1,25 @@ +# Plugins +There are a number of plugins available for pynxtools that are maintained within FAIRmat. These are extensions of pynxtools used for reading data of specific experimental techniques. + +- [**pynxtools-mpes**](https://github.com/FAIRmat-NFDI/pynxtools-mpes): A reader for multi-dimensional photoelectron spectroscopy data. +- [**pynxtools-stm**](https://github.com/FAIRmat-NFDI/pynxtools-stm): A reader for scanning tunneling microscopy (SPM) and spectroscopy (STS) data. +- [**pynxtools-xps**](https://github.com/FAIRmat-NFDI/pynxtools-xps): A reader for X-ray photoelectron spectroscopy (XPS) data. Documentation can be found [here](https://fairmat-nfdi.github.io/pynxtools-xps/). +- [**pynxtools-apm**](https://github.com/FAIRmat-NFDI/pynxtools-apm): A reader for atom probe as well as related field ion microscopy data. Documentation can be found [here](https://fairmat-nfdi.github.io/pynxtools-apm/). +- [**pynxtools-em**](https://github.com/FAIRmat-NFDI/pynxtools-em): A reader for electron microscopy data. Documentation can be found [here](https://fairmat-nfdi.github.io/pynxtools-em/). +- [**pynxtools-ellips**](https://github.com/FAIRmat-NFDI/pynxtools-ellips): A reader for ellipsometry data. Documentation can be found [here](https://fairmat-nfdi.github.io/pynxtools-ellips/). + +## Installation + +You can install each of the plugins together with pynxtools by passing the name of the plugin as an extra to the pip install call. For example, for the pynxtools-mpes plugin: + +``` +pip install pynxtools[mpes] +``` + +In addition, you can also install all of the pynxtools reader plugins which are maintained by FAIRmat by passing the [convert] extra to the pip install call: + +``` +pip install pynxtools[convert] +``` + +There is also a [cookiecutter template](https://github.com/FAIRmat-NFDI/pynxtools-plugin-template) available for creating your own pynxtools plugin. diff --git a/pynxtools/definitions b/pynxtools/definitions index 229774c56..65ab98b9c 160000 --- a/pynxtools/definitions +++ b/pynxtools/definitions @@ -1 +1 @@ -Subproject commit 229774c56fb710bb1d9008afb49e00be402c7578 +Subproject commit 65ab98b9c7f63e42c8013bdba1141f687ae67594 From 836635ffa9f7177a7163954eb4cbcb42d6f70073 Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Mon, 6 May 2024 15:12:55 +0200 Subject: [PATCH 17/76] correct reference in mkdocs.yaml --- mkdocs.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/mkdocs.yaml b/mkdocs.yaml index f02641f6a..35a254020 100644 --- a/mkdocs.yaml +++ b/mkdocs.yaml @@ -14,6 +14,7 @@ nav: - learn/nexus-primer.md - learn/multiple-appdefs.md - Reference: + - reference/plugins.md - reference/definitions.md theme: name: material From efbe7cec4879cec6c0feb2034d816d9b897b72bd Mon Sep 17 00:00:00 2001 From: domna Date: Mon, 6 May 2024 15:51:29 +0200 Subject: [PATCH 18/76] Use lxml everywhere --- pynxtools/dataconverter/convert.py | 4 ++-- pynxtools/nexus/nexus.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pynxtools/dataconverter/convert.py b/pynxtools/dataconverter/convert.py index 74670bfa5..211760e63 100644 --- a/pynxtools/dataconverter/convert.py +++ b/pynxtools/dataconverter/convert.py @@ -24,12 +24,12 @@ import logging import os import sys -import xml.etree.ElementTree as ET from gettext import gettext from pathlib import Path from typing import List, Optional, Tuple import click +import lxml.etree as ET import yaml from click_default_group import DefaultGroup @@ -153,7 +153,7 @@ def transfer_data_into_template( input_file, reader, nxdl_name, - nxdl_root: Optional[ET.Element] = None, + nxdl_root: Optional[ET._Element] = None, skip_verify: bool = False, **kwargs, ): diff --git a/pynxtools/nexus/nexus.py b/pynxtools/nexus/nexus.py index 41b619520..a1c64cc6a 100644 --- a/pynxtools/nexus/nexus.py +++ b/pynxtools/nexus/nexus.py @@ -328,7 +328,7 @@ def get_inherited_hdf_nodes( hdf_root=None, attr=False, ): - """Returns a list of ET.Element for the given path.""" + """Returns a list of ET._Element for the given path.""" # let us start with the given definition file if hdf_node is None: raise ValueError("hdf_node must not be None") From 3ce2034d534424aa92dd16f1cf63ec70acb89779 Mon Sep 17 00:00:00 2001 From: domna Date: Mon, 6 May 2024 15:51:40 +0200 Subject: [PATCH 19/76] Use lxml everywhere --- pynxtools/eln_mapper/scheme_eln.py | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/pynxtools/eln_mapper/scheme_eln.py b/pynxtools/eln_mapper/scheme_eln.py index 029e67550..6c04b4eac 100644 --- a/pynxtools/eln_mapper/scheme_eln.py +++ b/pynxtools/eln_mapper/scheme_eln.py @@ -17,12 +17,13 @@ # limitations under the License. # -from typing import Dict, Any -import xml.etree.ElementTree as ET +from typing import Any, Dict + +import lxml.etree as ET import yaml -from pynxtools.eln_mapper.eln import retrieve_nxdl_file -from pynxtools.dataconverter.helpers import remove_namespace_from_tag +from pynxtools.dataconverter.helpers import remove_namespace_from_tag +from pynxtools.eln_mapper.eln import retrieve_nxdl_file NEXUS_TYPE_TO_NUMPY_TYPE = { "NX_CHAR": { @@ -108,7 +109,7 @@ def construct_field_structure(fld_elem, quntities_dict): construct_decription(fld_elem, fld_dict) -def construct_decription(elm: ET.Element, concept_dict: Dict) -> None: +def construct_decription(elm: ET._Element, concept_dict: Dict) -> None: """Collect doc from concept doc.""" desc_text = "" for child_elm in elm: @@ -121,7 +122,7 @@ def construct_decription(elm: ET.Element, concept_dict: Dict) -> None: concept_dict["description"] = desc_text -def construct_group_structure(grp_elm: ET.Element, subsections: Dict) -> None: +def construct_group_structure(grp_elm: ET._Element, subsections: Dict) -> None: """To construct group structure as follows: : section: @@ -131,7 +132,7 @@ def construct_group_structure(grp_elm: ET.Element, subsections: Dict) -> None: Parameters ---------- - elm : ET.Element + elm : ET._Element Group element subsections : Dict Dict to include group recursively @@ -158,12 +159,12 @@ def construct_group_structure(grp_elm: ET.Element, subsections: Dict) -> None: scan_xml_element_recursively(grp_elm, section) -def _should_skip_iteration(elm: ET.Element) -> bool: +def _should_skip_iteration(elm: ET._Element) -> bool: """Define some elements here that should be skipped. Parameters ---------- - elm : ET.Element + elm : ET._Element The element to investigate to skip """ attr = elm.attrib @@ -176,7 +177,7 @@ def _should_skip_iteration(elm: ET.Element) -> bool: def scan_xml_element_recursively( - nxdl_element: ET.Element, + nxdl_element: ET._Element, recursive_dict: Dict, root_name: str = "", reader_name: str = "", @@ -186,7 +187,7 @@ def scan_xml_element_recursively( Parameters ---------- - nxdl_element : ET.Element + nxdl_element : ET._Element This xml element that will be scanned through the descendants. recursive_dict : Dict A dict that store hierarchical structure of scheme eln. From c2847456076999a0adbd25752936334d51f148d3 Mon Sep 17 00:00:00 2001 From: domna Date: Mon, 6 May 2024 15:52:12 +0200 Subject: [PATCH 20/76] add inheritance list and parsing of dims --- pynxtools/dataconverter/helpers.py | 81 +++++++++++++++++++++------ pynxtools/dataconverter/nexus_tree.py | 10 +++- 2 files changed, 71 insertions(+), 20 deletions(-) diff --git a/pynxtools/dataconverter/helpers.py b/pynxtools/dataconverter/helpers.py index 295f65afc..2e700d4a4 100644 --- a/pynxtools/dataconverter/helpers.py +++ b/pynxtools/dataconverter/helpers.py @@ -31,7 +31,12 @@ from ase.data import chemical_symbols from pynxtools import get_nexus_version, get_nexus_version_hash -from pynxtools.dataconverter.nexus_tree import NexusEntity, NexusGroup, NexusNode +from pynxtools.dataconverter.nexus_tree import ( + NexusChoice, + NexusEntity, + NexusGroup, + NexusNode, +) from pynxtools.dataconverter.template import Template from pynxtools.definitions.dev_tools.utils.nxdl_utils import get_inherited_nodes from pynxtools.nexus import nexus @@ -217,6 +222,25 @@ def add_inherited_children(list_of_children_to_add, path, nxdl_root, template): return template +def get_enumeration_items(elem: ET._Element) -> List[str]: + items: List[str] = [] + for item_tag in elem: + if remove_namespace_from_tag(item_tag.tag) == "item": + items.append(item_tag.attrib["value"]) + + return items + + +def check_enumeration_in_parents_for(node: NexusNode) -> None: + # TODO + pass + + +def check_dimensions_in_parents_for(node: NexusNode) -> None: + # TODO + pass + + def generate_tree_from_nxdl(root: ET._Element) -> NexusNode: def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: tag = remove_namespace_from_tag(xml_elem.tag) @@ -231,10 +255,11 @@ def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: optionality = "optional" if tag in ("field", "attribute"): + name = xml_elem.attrib.get("name") is_variadic = contains_uppercase(xml_elem.attrib["name"]) current_elem = NexusEntity( parent=parent, - name=xml_elem.attrib["name"], + name=name, type=tag, optionality=optionality, variadic=is_variadic, @@ -243,7 +268,13 @@ def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: ) elif tag == "group": name = xml_elem.attrib.get("name", xml_elem.attrib["type"][2:].upper()) + inheritance_chain = get_inherited_nodes("", elem=xml_elem)[2] is_variadic = contains_uppercase(name) + max_occurs = ( + None + if xml_elem.attrib.get("maxOccurs") == "unbounded" + else xml_elem.attrib.get("maxOccurs") + ) current_elem = NexusGroup( parent=parent, type=tag, @@ -253,24 +284,39 @@ def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: variadic=is_variadic, occurrence_limits=( xml_elem.attrib.get("minOccurs"), - # TODO: Treat "unbounded" in maxOccurs properly - xml_elem.attrib.get("maxOccurs"), + max_occurs, ), + inheritance=inheritance_chain, ) elif tag == "enumeration": - items: List[str] = [] - for item_tag in xml_elem: - if remove_namespace_from_tag(item_tag.tag) == "item": - items.append(item_tag.attrib["value"]) + items = get_enumeration_items(xml_elem) parent.items = items return elif tag == "dimensions": - # TODO: Attach dims to parent + rank = xml_elem.attrib["rank"] + dims: List[Optional[int]] = [None] * int(rank) + for dim in xml_elem.findall(f"{namespace}dim"): + idx = int(dim.attrib["index"]) + try: + value = int(dim.attrib["value"]) + dims[idx] = value + except ValueError: + # TODO: Handling of symbols + pass + + parent.shape = tuple(dims) return + elif tag == "choice": + current_elem = NexusChoice( + parent=parent, + name=xml_elem.attrib["name"], + optionality=optionality, + variadic=contains_uppercase(xml_elem.attrib["name"]), + ) else: - # TODO: Tags: choice, link + # TODO: Tags: link # We don't know the tag, skip processing children of it - # TODO: Add logging or raise an error + # TODO: Add logging or raise an error as this is not a known nxdl tag return tags = ("enumeration", "dimensions") @@ -281,10 +327,11 @@ def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: add_children_to(current_elem, child) if check_tags_in_base_classes: - # TODO: Search for enumeration and dimensions tags in elist parents - pass + check_enumeration_in_parents_for(current_elem) + check_dimensions_in_parents_for(current_elem) entry = get_first_group(root) + namespace = "{" + root.nsmap[None] + "}" tree = NexusGroup( name=root.attrib["name"], @@ -580,7 +627,7 @@ def path_in_data_dict(nxdl_path: str, data_keys: Tuple[str, ...]) -> List[str]: return found_keys -def check_for_optional_parent(path: str, nxdl_root: ET.Element) -> str: +def check_for_optional_parent(path: str, nxdl_root: ET._Element) -> str: """Finds a parent in the branch that is optional and returns it's path or s<>.""" parent_path = path.rsplit("/", 1)[0] @@ -825,7 +872,7 @@ def ensure_all_required_fields_exist(template, data, nxdl_root): ensure_all_required_fields_exist_in_variadic_groups(template, data, check_basepaths) -def try_undocumented(data, nxdl_root: ET.Element): +def try_undocumented(data, nxdl_root: ET._Element): """Tries to move entries used that are from base classes but not in AppDef""" for path in list(data.undocumented): entry_name = get_name_from_data_dict_entry(path[path.rindex("/") + 1 :]) @@ -862,13 +909,13 @@ def try_undocumented(data, nxdl_root: ET.Element): pass -def validate_data_dict(template, data, nxdl_root: ET.Element): +def validate_data_dict(template, data, nxdl_root: ET._Element): """Checks whether all the required paths from the template are returned in data dict.""" assert nxdl_root is not None, "The NXDL file hasn't been loaded." collector.clear() @lru_cache(maxsize=None) - def get_xml_node(nxdl_path: str) -> ET.Element: + def get_xml_node(nxdl_path: str) -> ET._Element: return nexus.get_node_at_nxdl_path(nxdl_path=nxdl_path, elem=nxdl_root) # Make sure all required fields exist. diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index d8077bff3..6e9f2fb95 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -66,10 +66,9 @@ class ReadOnlyError(RuntimeError): class NexusNode(BaseModel, NodeMixin): name: str - type: Literal["group", "field", "attribute"] + type: Literal["group", "field", "attribute", "choice"] optionality: Literal["required", "recommended", "optional"] variadic: bool - inheritance: List[InstanceOf[ET._Element]] = [] def __init__(self, parent, **data) -> None: super().__init__(**data) @@ -85,12 +84,17 @@ def _pre_detach(self, parent): raise ReadOnlyError() +class NexusChoice(NexusNode): + type: Literal["choice"] = "choice" + + class NexusGroup(NexusNode): nx_class: str occurrence_limits: Tuple[ Optional[Annotated[int, Field(strict=True, ge=0)]], Optional[Annotated[int, Field(strict=True, ge=0)]], ] = (None, None) + inheritance: List[InstanceOf[ET._Element]] = [] def __repr__(self) -> str: return ( @@ -103,7 +107,7 @@ class NexusEntity(NexusNode): unit: Optional[NexusUnitCategory] = None dtype: Optional[NexusType] = None items: Optional[List[str]] = None - shape: Optional[Tuple[int, ...]] = None + shape: Optional[Tuple[Optional[int], ...]] = None def __repr__(self) -> str: if self.type == "attribute": From bd77a36e42f11ae209ed46fce81f06e69219e849 Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Mon, 6 May 2024 16:30:22 +0200 Subject: [PATCH 21/76] update definitions to fit with master branch --- pynxtools/definitions | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pynxtools/definitions b/pynxtools/definitions index 65ab98b9c..229774c56 160000 --- a/pynxtools/definitions +++ b/pynxtools/definitions @@ -1 +1 @@ -Subproject commit 65ab98b9c7f63e42c8013bdba1141f687ae67594 +Subproject commit 229774c56fb710bb1d9008afb49e00be402c7578 From cc951072dd48440820b60e710abebe21efbdfffb Mon Sep 17 00:00:00 2001 From: domna Date: Mon, 6 May 2024 18:37:36 +0200 Subject: [PATCH 22/76] First steps for validation function --- pynxtools/dataconverter/helpers.py | 132 +------------------------ pynxtools/dataconverter/nexus_tree.py | 133 ++++++++++++++++++++++++++ pynxtools/dataconverter/validation.py | 78 +++++++++++++++ 3 files changed, 212 insertions(+), 131 deletions(-) create mode 100644 pynxtools/dataconverter/validation.py diff --git a/pynxtools/dataconverter/helpers.py b/pynxtools/dataconverter/helpers.py index 2e700d4a4..fdadff9c7 100644 --- a/pynxtools/dataconverter/helpers.py +++ b/pynxtools/dataconverter/helpers.py @@ -23,7 +23,7 @@ from datetime import datetime, timezone from enum import Enum from functools import lru_cache -from typing import Any, Callable, List, Literal, Optional, Set, Tuple, Union +from typing import Any, Callable, List, Optional, Set, Tuple, Union import h5py import lxml.etree as ET @@ -31,12 +31,6 @@ from ase.data import chemical_symbols from pynxtools import get_nexus_version, get_nexus_version_hash -from pynxtools.dataconverter.nexus_tree import ( - NexusChoice, - NexusEntity, - NexusGroup, - NexusNode, -) from pynxtools.dataconverter.template import Template from pynxtools.definitions.dev_tools.utils.nxdl_utils import get_inherited_nodes from pynxtools.nexus import nexus @@ -222,130 +216,6 @@ def add_inherited_children(list_of_children_to_add, path, nxdl_root, template): return template -def get_enumeration_items(elem: ET._Element) -> List[str]: - items: List[str] = [] - for item_tag in elem: - if remove_namespace_from_tag(item_tag.tag) == "item": - items.append(item_tag.attrib["value"]) - - return items - - -def check_enumeration_in_parents_for(node: NexusNode) -> None: - # TODO - pass - - -def check_dimensions_in_parents_for(node: NexusNode) -> None: - # TODO - pass - - -def generate_tree_from_nxdl(root: ET._Element) -> NexusNode: - def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: - tag = remove_namespace_from_tag(xml_elem.tag) - - if tag == "doc": - return - - optionality: Literal["required", "recommended", "optional"] = "required" - if xml_elem.attrib.get("recommended"): - optionality = "recommended" - elif xml_elem.attrib.get("optional"): - optionality = "optional" - - if tag in ("field", "attribute"): - name = xml_elem.attrib.get("name") - is_variadic = contains_uppercase(xml_elem.attrib["name"]) - current_elem = NexusEntity( - parent=parent, - name=name, - type=tag, - optionality=optionality, - variadic=is_variadic, - unit=xml_elem.attrib.get("units"), - dtype=xml_elem.attrib.get("type", "NX_CHAR"), - ) - elif tag == "group": - name = xml_elem.attrib.get("name", xml_elem.attrib["type"][2:].upper()) - inheritance_chain = get_inherited_nodes("", elem=xml_elem)[2] - is_variadic = contains_uppercase(name) - max_occurs = ( - None - if xml_elem.attrib.get("maxOccurs") == "unbounded" - else xml_elem.attrib.get("maxOccurs") - ) - current_elem = NexusGroup( - parent=parent, - type=tag, - name=name, - nx_class=xml_elem.attrib["type"], - optionality=optionality, - variadic=is_variadic, - occurrence_limits=( - xml_elem.attrib.get("minOccurs"), - max_occurs, - ), - inheritance=inheritance_chain, - ) - elif tag == "enumeration": - items = get_enumeration_items(xml_elem) - parent.items = items - return - elif tag == "dimensions": - rank = xml_elem.attrib["rank"] - dims: List[Optional[int]] = [None] * int(rank) - for dim in xml_elem.findall(f"{namespace}dim"): - idx = int(dim.attrib["index"]) - try: - value = int(dim.attrib["value"]) - dims[idx] = value - except ValueError: - # TODO: Handling of symbols - pass - - parent.shape = tuple(dims) - return - elif tag == "choice": - current_elem = NexusChoice( - parent=parent, - name=xml_elem.attrib["name"], - optionality=optionality, - variadic=contains_uppercase(xml_elem.attrib["name"]), - ) - else: - # TODO: Tags: link - # We don't know the tag, skip processing children of it - # TODO: Add logging or raise an error as this is not a known nxdl tag - return - - tags = ("enumeration", "dimensions") - check_tags_in_base_classes = False - for child in xml_elem: - if remove_namespace_from_tag(child.tag) not in tags: - check_tags_in_base_classes = True - add_children_to(current_elem, child) - - if check_tags_in_base_classes: - check_enumeration_in_parents_for(current_elem) - check_dimensions_in_parents_for(current_elem) - - entry = get_first_group(root) - namespace = "{" + root.nsmap[None] + "}" - - tree = NexusGroup( - name=root.attrib["name"], - nx_class="NXroot", - type="group", - optionality="required", - variadic=False, - parent=None, - ) - add_children_to(tree, entry) - - return tree - - def generate_template_from_nxdl( root, template, path="", nxdl_root=None, nxdl_name=None ): diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index 6e9f2fb95..079927edf 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -4,6 +4,14 @@ from anytree.node.nodemixin import NodeMixin from pydantic import BaseModel, Field, InstanceOf +from pynxtools.dataconverter.convert import get_nxdl_root_and_path +from pynxtools.dataconverter.helpers import ( + contains_uppercase, + get_first_group, + remove_namespace_from_tag, +) +from pynxtools.definitions.dev_tools.utils.nxdl_utils import get_inherited_nodes + NexusType = Literal[ "ISO8601", "NX_BINARY", @@ -113,3 +121,128 @@ def __repr__(self) -> str: if self.type == "attribute": return f"@{self.name} ({self.optionality[:3]})" return f"{self.name} ({self.optionality[:3]})" + + +def get_enumeration_items(elem: ET._Element) -> List[str]: + items: List[str] = [] + for item_tag in elem: + if remove_namespace_from_tag(item_tag.tag) == "item": + items.append(item_tag.attrib["value"]) + + return items + + +def check_enumeration_in_parents_for(node: NexusNode) -> None: + # TODO + pass + + +def check_dimensions_in_parents_for(node: NexusNode) -> None: + # TODO + pass + + +def generate_tree_from(appdef: str) -> NexusNode: + def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: + tag = remove_namespace_from_tag(xml_elem.tag) + + if tag == "doc": + return + + optionality: Literal["required", "recommended", "optional"] = "required" + if xml_elem.attrib.get("recommended"): + optionality = "recommended" + elif xml_elem.attrib.get("optional"): + optionality = "optional" + + if tag in ("field", "attribute"): + name = xml_elem.attrib.get("name") + is_variadic = contains_uppercase(xml_elem.attrib["name"]) + current_elem = NexusEntity( + parent=parent, + name=name, + type=tag, + optionality=optionality, + variadic=is_variadic, + unit=xml_elem.attrib.get("units"), + dtype=xml_elem.attrib.get("type", "NX_CHAR"), + ) + elif tag == "group": + name = xml_elem.attrib.get("name", xml_elem.attrib["type"][2:].upper()) + inheritance_chain = get_inherited_nodes("", elem=xml_elem)[2] + is_variadic = contains_uppercase(name) + max_occurs = ( + None + if xml_elem.attrib.get("maxOccurs") == "unbounded" + else xml_elem.attrib.get("maxOccurs") + ) + current_elem = NexusGroup( + parent=parent, + type=tag, + name=name, + nx_class=xml_elem.attrib["type"], + optionality=optionality, + variadic=is_variadic, + occurrence_limits=( + xml_elem.attrib.get("minOccurs"), + max_occurs, + ), + inheritance=inheritance_chain, + ) + elif tag == "enumeration": + items = get_enumeration_items(xml_elem) + parent.items = items + return + elif tag == "dimensions": + rank = xml_elem.attrib["rank"] + dims: List[Optional[int]] = [None] * int(rank) + for dim in xml_elem.findall(f"{namespace}dim"): + idx = int(dim.attrib["index"]) + try: + value = int(dim.attrib["value"]) + dims[idx] = value + except ValueError: + # TODO: Handling of symbols + pass + + parent.shape = tuple(dims) + return + elif tag == "choice": + current_elem = NexusChoice( + parent=parent, + name=xml_elem.attrib["name"], + optionality=optionality, + variadic=contains_uppercase(xml_elem.attrib["name"]), + ) + else: + # TODO: Tags: link + # We don't know the tag, skip processing children of it + # TODO: Add logging or raise an error as this is not a known nxdl tag + return + + tags = ("enumeration", "dimensions") + check_tags_in_base_classes = False + for child in xml_elem: + if remove_namespace_from_tag(child.tag) not in tags: + check_tags_in_base_classes = True + add_children_to(current_elem, child) + + if check_tags_in_base_classes: + check_enumeration_in_parents_for(current_elem) + check_dimensions_in_parents_for(current_elem) + + appdef_xml_root, _ = get_nxdl_root_and_path(appdef) + entry = get_first_group(appdef_xml_root) + namespace = "{" + appdef_xml_root.nsmap[None] + "}" + + tree = NexusGroup( + name=appdef_xml_root.attrib["name"], + nx_class="NXroot", + type="group", + optionality="required", + variadic=False, + parent=None, + ) + add_children_to(tree, entry) + + return tree diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py new file mode 100644 index 000000000..4c87407bc --- /dev/null +++ b/pynxtools/dataconverter/validation.py @@ -0,0 +1,78 @@ +from collections import defaultdict +from functools import reduce +from operator import getitem +from typing import Any, Dict, List, Mapping, Union + +import h5py +import lxml.etree as ET + +from pynxtools.dataconverter.helpers import Collector +from pynxtools.dataconverter.nexus_tree import NexusNode, generate_tree_from +from pynxtools.definitions.dev_tools.utils.nxdl_utils import get_nx_namefit + +collector = Collector() + + +def validate_hdf_group_against(appdef: str, data: h5py.Group): + """Checks whether all the required paths from the template are returned in data dict.""" + + def validate(name: str, data: Union[h5py.Group, h5py.Dataset]): + # Namefit name against tree (use recursive caching) + pass + + tree = generate_tree_from(appdef) + data.visitems(validate) + + +def build_tree_from(mapping: Mapping[str, Any]) -> Mapping[str, Any]: + def get_from(data_tree, map_list): + """Iterate nested dictionary""" + return reduce(getitem, map_list, data_tree) + + # instantiate nested defaultdict of defaultdicts + def tree(): + return defaultdict(tree) + + def default_to_regular_dict(d): + """Convert nested defaultdict to regular dict of dicts.""" + if isinstance(d, defaultdict): + d = {k: default_to_regular_dict(v) for k, v in d.items()} + return d + + data_tree = tree() + + # iterate input dictionary + for k, v in mapping.items(): + _, *keys, final_key = k.split("/") + get_from(data_tree, keys)[final_key] = v + + return default_to_regular_dict(data_tree) + + +def validate_dict_against(appdef: str, mapping: Mapping[str, Any]) -> bool: + tree = generate_tree_from(appdef) + collector.clear() + nested_keys = build_tree_from(mapping) + + def recurse_tree(node: NexusNode, keys: Dict[str, Any]): + for key in keys: + namefit = None + for child in node.children: + if child.name == key: + pass + if child.variadic and get_nx_namefit(key, child.name) >= 0: + namefit = child + break + if namefit is not None and isinstance(keys[key], dict): + recurse_tree(namefit, keys[key]) + + print(nested_keys) + for key in nested_keys: + for child in tree.children: + if get_nx_namefit(key, child.name) >= 0: + print("We fit!") + pass + print(key) + print(child) + + return not collector.has_validation_problems() From a13abe404c9505b598001353526ab258c08e96c8 Mon Sep 17 00:00:00 2001 From: domna Date: Tue, 7 May 2024 16:04:09 +0200 Subject: [PATCH 23/76] First rough validation function --- pynxtools/dataconverter/helpers.py | 54 +++++++--- pynxtools/dataconverter/nexus_tree.py | 11 ++ pynxtools/dataconverter/validation.py | 145 +++++++++++++++++++++----- 3 files changed, 171 insertions(+), 39 deletions(-) diff --git a/pynxtools/dataconverter/helpers.py b/pynxtools/dataconverter/helpers.py index fdadff9c7..fea37829f 100644 --- a/pynxtools/dataconverter/helpers.py +++ b/pynxtools/dataconverter/helpers.py @@ -47,9 +47,13 @@ class ValidationProblem(Enum): OptionalParentWithoutRequiredField = 4 MissingRequiredGroup = 5 MissingRequiredField = 6 - InvalidType = 7 - InvalidDatetime = 8 - IsNotPosInt = 9 + MissingRequiredAttribute = 7 + InvalidType = 8 + InvalidDatetime = 9 + IsNotPosInt = 10 + ExpectedGroup = 11 + MissingDocumentation = 12 + MissingUnit = 13 class Collector: @@ -58,7 +62,7 @@ class Collector: def __init__(self): self.data = set() - def insert_and_log( + def collect_and_log( self, path: str, log_type: ValidationProblem, value: Optional[Any], *args ): """Inserts a path into the data dictionary and logs the action.""" @@ -109,6 +113,16 @@ def insert_and_log( logger.warning( f"The value at {path} should be a positive int, but is {value}." ) + elif log_type == ValidationProblem.ExpectedGroup: + logger.warning( + f"Expected a group at {path} but found a field or attribute." + ) + elif log_type == ValidationProblem.MissingDocumentation: + logger.warning(f"Field {path} written without documentation.") + elif log_type == ValidationProblem.MissingUnit: + logger.warning( + f"Field {path} requires a unit in the unit category {value}." + ) self.data.add(path) def has_validation_problems(self): @@ -330,6 +344,14 @@ def convert_data_converter_entry_to_nxdl_path_entry(entry) -> Union[str, None]: return entry if results is None else results.group(1) +def convert_nxdl_path_entry_to_data_converter_entry(entry) -> str: + """ + Helper function to convert NXDL style entry to data converter style entry: + ENTRY -> ENTRY[entry] + """ + return f"{entry}[{entry.lower()}]" + + def convert_data_converter_dict_to_nxdl_path(path) -> str: """ Helper function to convert data converter style path to NXDL style path: @@ -468,12 +490,12 @@ def is_valid_data_field(value, nxdl_type, path): raise ValueError return accepted_types[0](value) except ValueError: - collector.insert_and_log( + collector.collect_and_log( path, ValidationProblem.InvalidType, accepted_types, nxdl_type ) if nxdl_type == "NX_POSINT" and not is_positive_int(value): - collector.insert_and_log(path, ValidationProblem.IsNotPosInt, value) + collector.collect_and_log(path, ValidationProblem.IsNotPosInt, value) if nxdl_type in ("ISO8601", "NX_DATE_TIME"): iso8601 = re.compile( @@ -482,7 +504,7 @@ def is_valid_data_field(value, nxdl_type, path): ) results = iso8601.search(value) if results is None: - collector.insert_and_log(path, ValidationProblem.InvalidDatetime, value) + collector.collect_and_log(path, ValidationProblem.InvalidDatetime, value) return value @@ -568,7 +590,7 @@ def trim_path_to(parent: str, path: str): ) and not all_required_children_are_set( trim_path_to(optional_parent, path), data, nxdl_root ): - collector.insert_and_log( + collector.collect_and_log( path, ValidationProblem.OptionalParentWithoutRequiredField, optional_parent, @@ -676,7 +698,7 @@ def are_all_entries_none(path: str) -> bool: count += 1 if not are_all_entries_none(missing_field): count -= 1 - collector.insert_and_log( + collector.collect_and_log( missing_field, ValidationProblem.MissingRequiredField, None ) @@ -690,7 +712,7 @@ def are_all_entries_none(path: str) -> bool: generic_dict_path = "/" + "/".join( map(lambda path: f"{path}[{path.lower()}]", base_path.split("/")[1:]) ) - collector.insert_and_log( + collector.collect_and_log( generic_dict_path, ValidationProblem.MissingRequiredGroup, None ) @@ -720,14 +742,14 @@ def ensure_all_required_fields_exist(template, data, nxdl_root): if does_group_exist(opt_parent, data) and not does_group_exist( renamed_path, data ): - collector.insert_and_log( + collector.collect_and_log( renamed_path, ValidationProblem.OptionalParentWithoutRequiredGroup, opt_parent, ) continue if not does_group_exist(renamed_path, data): - collector.insert_and_log( + collector.collect_and_log( path, ValidationProblem.MissingRequiredGroup, None, @@ -735,7 +757,7 @@ def ensure_all_required_fields_exist(template, data, nxdl_root): continue continue if data[renamed_path] is None: - collector.insert_and_log( + collector.collect_and_log( renamed_path, ValidationProblem.MissingRequiredField, None ) @@ -809,7 +831,7 @@ def get_xml_node(nxdl_path: str) -> ET._Element: field_path not in data.get_documented() and "units" not in elem.attrib ): - collector.insert_and_log( + collector.collect_and_log( path, ValidationProblem.UnitWithoutDocumentation, data[path] ) continue @@ -856,7 +878,9 @@ def get_xml_node(nxdl_path: str) -> ET._Element: )[2] is_valid_enum, enums = is_value_valid_element_of_enum(data[path], elist) if not is_valid_enum: - collector.insert_and_log(path, ValidationProblem.InvalidEnum, enums) + collector.collect_and_log( + path, ValidationProblem.InvalidEnum, enums + ) return not collector.has_validation_problems() diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index 079927edf..3ee4584c1 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -1,3 +1,4 @@ +from functools import lru_cache from typing import Annotated, List, Literal, Optional, Tuple import lxml.etree as ET @@ -77,6 +78,7 @@ class NexusNode(BaseModel, NodeMixin): type: Literal["group", "field", "attribute", "choice"] optionality: Literal["required", "recommended", "optional"] variadic: bool + variadic_siblings: List[InstanceOf["NexusNode"]] = [] def __init__(self, parent, **data) -> None: super().__init__(**data) @@ -91,6 +93,15 @@ def _pre_attach(self, parent): def _pre_detach(self, parent): raise ReadOnlyError() + @lru_cache(maxsize=None) + def get_path(self) -> str: + current_node = self + names: List[str] = [] + while current_node.parent is not None: + names.insert(0, current_node.name) + current_node = current_node.parent + return "/" + "/".join(names) + class NexusChoice(NexusNode): type: Literal["choice"] = "choice" diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index 4c87407bc..ef0219718 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -1,12 +1,18 @@ from collections import defaultdict +from dataclasses import dataclass from functools import reduce from operator import getitem -from typing import Any, Dict, List, Mapping, Union +from typing import Any, Dict, List, Mapping, Optional, Union import h5py import lxml.etree as ET +import numpy as np -from pynxtools.dataconverter.helpers import Collector +from pynxtools.dataconverter.helpers import ( + Collector, + ValidationProblem, + is_valid_data_field, +) from pynxtools.dataconverter.nexus_tree import NexusNode, generate_tree_from from pynxtools.definitions.dev_tools.utils.nxdl_utils import get_nx_namefit @@ -25,6 +31,7 @@ def validate(name: str, data: Union[h5py.Group, h5py.Dataset]): def build_tree_from(mapping: Mapping[str, Any]) -> Mapping[str, Any]: + # Based on https://stackoverflow.com/questions/50607128/creating-a-nested-dictionary-from-a-flattened-dictionary def get_from(data_tree, map_list): """Iterate nested dictionary""" return reduce(getitem, map_list, data_tree) @@ -43,36 +50,126 @@ def default_to_regular_dict(d): # iterate input dictionary for k, v in mapping.items(): - _, *keys, final_key = k.split("/") + _, *keys, final_key = k.replace("/@", "@").split("/") get_from(data_tree, keys)[final_key] = v return default_to_regular_dict(data_tree) def validate_dict_against(appdef: str, mapping: Mapping[str, Any]) -> bool: + def get_variations_of(node: NexusNode, keys: Mapping[str, Any]) -> List[str]: + if not node.variadic and node.name in keys: + return [node.name] + + variations = [] + for key in keys: + if get_nx_namefit(key, node.name) >= 0 and key not in [ + x.name for x in node.parent.children + ]: + variations.append(key) + return variations + + def handle_group(node: NexusNode, keys: Mapping[str, Any], prev_path: str): + variants = get_variations_of(node, keys) + if not variants: + if node.optionality == "required" and node.type in missing_type_err: + collector.collect_and_log( + f"{prev_path}/{node.name}", missing_type_err.get(node.type), None + ) + return + for variant in variants: + if not isinstance(keys[variant], Mapping): + collector.collect_and_log( + f"{prev_path}/{variant}", ValidationProblem.ExpectedGroup, None + ) + return + recurse_tree(node, keys[variant], prev_path=f"{prev_path}/{variant}") + + def remove_from_not_visited(path: str) -> str: + if path in not_visited: + not_visited.remove(path) + return path + + def handle_field(node: NexusNode, keys: Mapping[str, Any], prev_path: str): + full_path = remove_from_not_visited(f"{prev_path}/{node.name}") + variants = get_variations_of(node, keys) + if not variants: + if node.optionality == "required" and node.type in missing_type_err: + collector.collect_and_log( + full_path, missing_type_err.get(node.type), None + ) + return + + for variant in variants: + is_valid_data_field( + mapping[f"{prev_path}/{variant}"], node.dtype, f"{prev_path}/{variant}" + ) + if node.unit is not None: + remove_from_not_visited(f"{prev_path}/{variant}/@units") + if f"{variant}@units" not in keys: + collector.collect_and_log( + f"{prev_path}/{variant}", + ValidationProblem.MissingUnit, + node.unit, + ) + # TODO: Check unit + + # TODO: Build variadic map for fields and attributes + # Introduce variadic siblings in NexusNode? + + def handle_attribute(node: NexusNode, keys: Mapping[str, Any], prev_path: str): + full_path = f"{prev_path}/@{node.name}" + if full_path in not_visited: + not_visited.remove(full_path) + if node.name not in keys: + collector.collect_and_log(full_path, missing_type_err.get(node.type), None) + + # TODO: Check variants + + def handle_choice(node: NexusNode, keys: Mapping[str, Any], prev_path: str): + # TODO: Implement this + pass + + def handle_unknown_type(node: NexusNode, keys: Mapping[str, Any], prev_path: str): + # This should normally not happen if + # the handling map includes all types allowed in NexusNode.type + # Still, it's good to have a fallback + # TODO: Raise error or log the issue? + pass + + def recurse_tree(node: NexusNode, keys: Mapping[str, Any], prev_path: str = ""): + for child in node.children: + handling_map.get(child.type, handle_unknown_type)(child, keys, prev_path) + + missing_type_err = { + "field": ValidationProblem.MissingRequiredField, + "group": ValidationProblem.MissingRequiredGroup, + "attribute": ValidationProblem.MissingRequiredAttribute, + } + + handling_map = { + "group": handle_group, + "field": handle_field, + "attribute": handle_attribute, + "choice": handle_choice, + } + tree = generate_tree_from(appdef) collector.clear() + not_visited = list(mapping) nested_keys = build_tree_from(mapping) - - def recurse_tree(node: NexusNode, keys: Dict[str, Any]): - for key in keys: - namefit = None - for child in node.children: - if child.name == key: - pass - if child.variadic and get_nx_namefit(key, child.name) >= 0: - namefit = child - break - if namefit is not None and isinstance(keys[key], dict): - recurse_tree(namefit, keys[key]) - - print(nested_keys) - for key in nested_keys: - for child in tree.children: - if get_nx_namefit(key, child.name) >= 0: - print("We fit!") - pass - print(key) - print(child) + recurse_tree(tree, nested_keys) + + for not_visited_key in not_visited: + if not_visited_key.endswith("/@units"): + collector.collect_and_log( + not_visited_key, + ValidationProblem.UnitWithoutDocumentation, + mapping[not_visited_key], + ) + else: + collector.collect_and_log( + not_visited_key, ValidationProblem.MissingDocumentation, None + ) return not collector.has_validation_problems() From a99949cf988ae43a1a2382606544981582db340c Mon Sep 17 00:00:00 2001 From: domna Date: Tue, 7 May 2024 21:46:16 +0200 Subject: [PATCH 24/76] Choices and proper attributes support --- pynxtools/dataconverter/helpers.py | 14 ++++-- pynxtools/dataconverter/nexus_tree.py | 63 +++++++++++++++++++++++++++ pynxtools/dataconverter/validation.py | 55 ++++++++++++++++++----- 3 files changed, 116 insertions(+), 16 deletions(-) diff --git a/pynxtools/dataconverter/helpers.py b/pynxtools/dataconverter/helpers.py index fea37829f..68602f4b1 100644 --- a/pynxtools/dataconverter/helpers.py +++ b/pynxtools/dataconverter/helpers.py @@ -54,6 +54,7 @@ class ValidationProblem(Enum): ExpectedGroup = 11 MissingDocumentation = 12 MissingUnit = 13 + ChoiceValidationError = 14 class Collector: @@ -61,11 +62,9 @@ class Collector: def __init__(self): self.data = set() + self.logging = True - def collect_and_log( - self, path: str, log_type: ValidationProblem, value: Optional[Any], *args - ): - """Inserts a path into the data dictionary and logs the action.""" + def _log(self, path: str, log_type: ValidationProblem, value: Optional[Any], *args): if value is None: value = "" @@ -123,6 +122,13 @@ def collect_and_log( logger.warning( f"Field {path} requires a unit in the unit category {value}." ) + elif log_type == ValidationProblem.MissingRequiredAttribute: + logger.warning(f'Missing attribute: "{path}"') + + def collect_and_log(self, path: str, *args, **kwargs): + """Inserts a path into the data dictionary and logs the action.""" + if self.logging: + self._log(path, *args, **kwargs) self.data.add(path) def has_validation_problems(self): diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index 3ee4584c1..dea5f6c38 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -102,6 +102,14 @@ def get_path(self) -> str: current_node = current_node.parent return "/" + "/".join(names) + def get_path_and_node(self) -> Tuple[str, List[ET._Element]]: + current_node = self + names: List[str] = [] + while current_node is not None and not isinstance(current_node, NexusGroup): + names.insert(0, current_node.name) + current_node = current_node.parent + return "/".join(names), current_node.inheritance + class NexusChoice(NexusNode): type: Literal["choice"] = "choice" @@ -134,6 +142,60 @@ def __repr__(self) -> str: return f"{self.name} ({self.optionality[:3]})" +def get_unconnected_node_for( + nxdl_path: str, child_xml_elem: ET._Element +) -> Optional[NexusNode]: + # TODO: Remove code duplication in this function and generate_tree_from(...) + *_, elist = get_inherited_nodes(nxdl_path=nxdl_path, elem=child_xml_elem) + if not elist: + return None + xml_elem = elist[0] + tag = remove_namespace_from_tag(xml_elem.tag) + + optionality: Literal["required", "recommended", "optional"] = "required" + if xml_elem.attrib.get("recommended"): + optionality = "recommended" + elif xml_elem.attrib.get("optional"): + optionality = "optional" + + if tag in ("attribute", "field"): + name = xml_elem.attrib.get("name") + is_variadic = contains_uppercase(xml_elem.attrib["name"]) + return NexusEntity( + parent=None, + name=name, + type=tag, + optionality=optionality, + variadic=is_variadic, + unit=xml_elem.attrib.get("units"), + dtype=xml_elem.attrib.get("type", "NX_CHAR"), + ) + elif tag == "group": + name = xml_elem.attrib.get("name", xml_elem.attrib["type"][2:].upper()) + inheritance_chain = get_inherited_nodes("", elem=xml_elem)[2] + is_variadic = contains_uppercase(name) + max_occurs = ( + None + if xml_elem.attrib.get("maxOccurs") == "unbounded" + else xml_elem.attrib.get("maxOccurs") + ) + return NexusGroup( + parent=None, + type=tag, + name=name, + nx_class=xml_elem.attrib["type"], + optionality=optionality, + variadic=is_variadic, + occurrence_limits=( + xml_elem.attrib.get("minOccurs"), + max_occurs, + ), + inheritance=inheritance_chain, + ) + + return None + + def get_enumeration_items(elem: ET._Element) -> List[str]: items: List[str] = [] for item_tag in elem: @@ -253,6 +315,7 @@ def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: optionality="required", variadic=False, parent=None, + inheritance=get_inherited_nodes("", elem=appdef_xml_root)[2], ) add_children_to(tree, entry) diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index ef0219718..e8854fa97 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -1,12 +1,9 @@ from collections import defaultdict -from dataclasses import dataclass from functools import reduce from operator import getitem -from typing import Any, Dict, List, Mapping, Optional, Union +from typing import Any, List, Mapping, Union import h5py -import lxml.etree as ET -import numpy as np from pynxtools.dataconverter.helpers import ( Collector, @@ -69,6 +66,9 @@ def get_variations_of(node: NexusNode, keys: Mapping[str, Any]) -> List[str]: variations.append(key) return variations + def get_field_attributes(name: str, keys: Mapping[str, Any]) -> Mapping[str, Any]: + return {k.split("@")[1]: keys[k] for k in keys if k.startswith(f"{name}@")} + def handle_group(node: NexusNode, keys: Mapping[str, Any], prev_path: str): variants = get_variations_of(node, keys) if not variants: @@ -114,21 +114,50 @@ def handle_field(node: NexusNode, keys: Mapping[str, Any], prev_path: str): ) # TODO: Check unit + recurse_tree( + node, + get_field_attributes(variant, keys), + prev_path=f"{prev_path}/{variant}", + ) + # TODO: Build variadic map for fields and attributes # Introduce variadic siblings in NexusNode? def handle_attribute(node: NexusNode, keys: Mapping[str, Any], prev_path: str): - full_path = f"{prev_path}/@{node.name}" - if full_path in not_visited: - not_visited.remove(full_path) - if node.name not in keys: - collector.collect_and_log(full_path, missing_type_err.get(node.type), None) + full_path = remove_from_not_visited(f"{prev_path}/@{node.name}") + variants = get_variations_of(node, keys) + if not variants: + if node.optionality == "required" and node.type in missing_type_err: + collector.collect_and_log( + full_path, missing_type_err.get(node.type), None + ) + return - # TODO: Check variants + for variant in variants: + is_valid_data_field( + mapping[f"{prev_path}/@{variant}"], + node.dtype, + f"{prev_path}/@{variant}", + ) def handle_choice(node: NexusNode, keys: Mapping[str, Any], prev_path: str): - # TODO: Implement this - pass + global collector + old_collector = collector + collector = Collector() + collector.logging = False + for child in node.children: + collector.clear() + child.name = node.name + handle_group(child, keys, prev_path) + + if not collector.has_validation_problems(): + collector = old_collector + return + + collector = old_collector + collector.collect_and_log( + f"{prev_path}/{node.name}", ValidationProblem.ChoiceValidationError, None + ) def handle_unknown_type(node: NexusNode, keys: Mapping[str, Any], prev_path: str): # This should normally not happen if @@ -161,6 +190,8 @@ def recurse_tree(node: NexusNode, keys: Mapping[str, Any], prev_path: str = ""): recurse_tree(tree, nested_keys) for not_visited_key in not_visited: + # TODO: Check if field is present in the inheritance chain + # and only report it as undocumented if it is not if not_visited_key.endswith("/@units"): collector.collect_and_log( not_visited_key, From 208ede827d7292402d251ae416140ee0f9d7b8aa Mon Sep 17 00:00:00 2001 From: domna Date: Wed, 8 May 2024 09:22:42 +0200 Subject: [PATCH 25/76] Adds testing for tree based validation --- pynxtools/dataconverter/validation.py | 35 ++++++---- tests/dataconverter/test_helpers.py | 51 +------------- tests/dataconverter/test_validation.py | 96 ++++++++++++++++++++++++++ 3 files changed, 119 insertions(+), 63 deletions(-) create mode 100644 tests/dataconverter/test_validation.py diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index e8854fa97..6d24a2e86 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -47,13 +47,17 @@ def default_to_regular_dict(d): # iterate input dictionary for k, v in mapping.items(): - _, *keys, final_key = k.replace("/@", "@").split("/") + _, *keys, final_key = ( + k.replace("/@", "@").split("/") if not k.startswith("/@") else k.split("/") + ) get_from(data_tree, keys)[final_key] = v return default_to_regular_dict(data_tree) -def validate_dict_against(appdef: str, mapping: Mapping[str, Any]) -> bool: +def validate_dict_against( + appdef: str, mapping: Mapping[str, Any], ignore_undocumented: bool = False +) -> bool: def get_variations_of(node: NexusNode, keys: Mapping[str, Any]) -> List[str]: if not node.variadic and node.name in keys: return [node.name] @@ -189,18 +193,19 @@ def recurse_tree(node: NexusNode, keys: Mapping[str, Any], prev_path: str = ""): nested_keys = build_tree_from(mapping) recurse_tree(tree, nested_keys) - for not_visited_key in not_visited: - # TODO: Check if field is present in the inheritance chain - # and only report it as undocumented if it is not - if not_visited_key.endswith("/@units"): - collector.collect_and_log( - not_visited_key, - ValidationProblem.UnitWithoutDocumentation, - mapping[not_visited_key], - ) - else: - collector.collect_and_log( - not_visited_key, ValidationProblem.MissingDocumentation, None - ) + if not ignore_undocumented: + for not_visited_key in not_visited: + # TODO: Check if field is present in the inheritance chain + # and only report it as undocumented if it is not + if not_visited_key.endswith("/@units"): + collector.collect_and_log( + not_visited_key, + ValidationProblem.UnitWithoutDocumentation, + mapping[not_visited_key], + ) + else: + collector.collect_and_log( + not_visited_key, ValidationProblem.MissingDocumentation, None + ) return not collector.has_validation_problems() diff --git a/tests/dataconverter/test_helpers.py b/tests/dataconverter/test_helpers.py index 723aca5cf..784c98eb1 100644 --- a/tests/dataconverter/test_helpers.py +++ b/tests/dataconverter/test_helpers.py @@ -24,10 +24,10 @@ import numpy as np import pytest -from setuptools import distutils from pynxtools.dataconverter import helpers from pynxtools.dataconverter.template import Template +from pynxtools.dataconverter.validation import validate_dict_against def remove_optional_parent(data_dict: Template): @@ -133,7 +133,7 @@ def test_transform_to_intended_dt(input_data, expected_output): def fixture_nxdl_root(): """pytest fixture to load the same NXDL file for all tests.""" nxdl_file = os.path.join("tests", "data", "dataconverter", "NXtest.nxdl.xml") - yield ET.parse(nxdl_file).getroot() + return ET.parse(nxdl_file).getroot() @pytest.fixture(name="template") @@ -142,52 +142,7 @@ def fixture_template(): nxdl_root = ET.parse("tests/data/dataconverter/NXtest.nxdl.xml").getroot() template = Template() helpers.generate_template_from_nxdl(nxdl_root, template) - yield template - - -@pytest.mark.usefixtures("template") -@pytest.fixture(name="filled_test_data") -def fixture_filled_test_data(template, tmp_path): - """pytest fixture to setup a filled in template.""" - - # Copy original measurement file to tmp dir, - # because h5py.ExternalLink is modifying it while - # linking the nxs file. - distutils.file_util.copy_file( - f"{os.path.dirname(__file__)}" - f"/../" - f"data/nexus/" - f"xarray_saved_small_calibration.h5", - tmp_path, - ) - - template.clear() - template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/float_value"] = 2.0 - template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/float_value/@units"] = "nm" - template["/ENTRY[my_entry]/optional_parent/required_child"] = 1 - template["/ENTRY[my_entry]/optional_parent/optional_child"] = 1 - template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/bool_value"] = True - template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/int_value"] = 2 - template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/int_value/@units"] = "eV" - template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/posint_value"] = np.array( - [1, 2, 3], dtype=np.int8 - ) - template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/posint_value/@units"] = "kg" - template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/char_value"] = "just chars" - template["/ENTRY[my_entry]/definition"] = "NXtest" - template["/ENTRY[my_entry]/definition/@version"] = "2.4.6" - template["/ENTRY[my_entry]/program_name"] = "Testing program" - template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/type"] = "2nd type" - template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/date_value"] = ( - "2022-01-22T12" ":14:12.05018+00:00" - ) - template["/ENTRY[my_entry]/required_group/description"] = "An example description" - template["/ENTRY[my_entry]/required_group2/description"] = "An example description" - template["/ENTRY[my_entry]/does/not/exist"] = "random" - template["/ENTRY[my_entry]/links/ext_link"] = { - "link": f"{tmp_path}/" f"xarray_saved_small_cali" f"bration.h5:/axes/ax3" - } - yield template + return template TEMPLATE = Template() diff --git a/tests/dataconverter/test_validation.py b/tests/dataconverter/test_validation.py new file mode 100644 index 000000000..bff336153 --- /dev/null +++ b/tests/dataconverter/test_validation.py @@ -0,0 +1,96 @@ +import logging +from typing import Any, Dict, List, Mapping, Tuple, Union + +import numpy as np +import pytest + +from pynxtools.dataconverter.validation import validate_dict_against + + +def get_data_dict(): + return { + "/my_entry/optional_parent/required_child": 1, + "/my_entry/optional_parent/optional_child": 1, + "/my_entry/nxodd_name/float_value": 2.0, + "/my_entry/nxodd_name/float_value/@units": "nm", + "/my_entry/nxodd_name/bool_value": True, + "/my_entry/nxodd_name/bool_value/@units": "", + "/my_entry/nxodd_name/int_value": 2, + "/my_entry/nxodd_name/int_value/@units": "eV", + "/my_entry/nxodd_name/posint_value": np.array([1, 2, 3], dtype=np.int8), + "/my_entry/nxodd_name/posint_value/@units": "kg", + "/my_entry/nxodd_name/char_value": "just chars", + "/my_entry/nxodd_name/char_value/@units": "", + "/my_entry/nxodd_name/type": "2nd type", + "/my_entry/nxodd_name/date_value": "2022-01-22T12:14:12.05018+00:00", + "/my_entry/nxodd_name/date_value/@units": "", + "/my_entry/nxodd_two_name/bool_value": True, + "/my_entry/nxodd_two_name/bool_value/@units": "", + "/my_entry/nxodd_two_name/int_value": 2, + "/my_entry/nxodd_two_name/int_value/@units": "eV", + "/my_entry/nxodd_two_name/posint_value": np.array([1, 2, 3], dtype=np.int8), + "/my_entry/nxodd_two_name/posint_value/@units": "kg", + "/my_entry/nxodd_two_name/char_value": "just chars", + "/my_entry/nxodd_two_name/char_value/@units": "", + "/my_entry/nxodd_two_name/type": "2nd type", + "/my_entry/nxodd_two_name/date_value": "2022-01-22T12:14:12.05018+00:00", + "/my_entry/nxodd_two_name/date_value/@units": "", + "/my_entry/my_group/required_field": 1, + "/my_entry/definition": "NXtest", + "/my_entry/definition/@version": "2.4.6", + "/my_entry/program_name": "Testing program", + "/my_entry/my_group/optional_field": 1, + "/my_entry/required_group/description": "An example description", + "/my_entry/required_group2/description": "An example description", + "/my_entry/optional_parent/req_group_in_opt_group/data": 1, + "/@default": "Some NXroot attribute", + } + + +def remove_from_dict(keys: Union[Union[List[str], Tuple[str, ...]], str], data_dict): + if isinstance(keys, (list, tuple)): + for key in keys: + data_dict.pop(key, None) + else: + data_dict.pop(keys) + + return data_dict + + +def alter_dict(new_values: Dict[str, Any], data_dict: Dict[str, Any]) -> Dict[str, Any]: + for key, value in new_values.items(): + data_dict[key] = value + return data_dict + + +@pytest.mark.parametrize( + "data_dict", + [ + pytest.param(get_data_dict(), id="valid-unaltered-data-dict"), + pytest.param( + remove_from_dict("/my_entry/nxodd_name/float_value", get_data_dict()), + id="removed-optional-value", + ), + ], +) +def test_valid_data_dict(caplog, data_dict): + with caplog.at_level(logging.WARNING): + validate_dict_against("NXtest", data_dict, ignore_undocumented=True) + assert caplog.text == "" + + +@pytest.mark.parametrize( + "data_dict, error_message", + [ + pytest.param( + remove_from_dict("/my_entry/nxodd_name/bool_value", get_data_dict()), + "The data entry corresponding to /my_entry/nxodd_name/bool_value is required and hasn't been supplied by the reader.", + id="missing-required-value", + ) + ], +) +def test_validation_shows_warning(caplog, data_dict, error_message): + with caplog.at_level(logging.WARNING): + validate_dict_against("NXtest", data_dict, ignore_undocumented=True) + + assert error_message in caplog.text From b4d69c16af0b27ee9ed2e9e9122ab6ab21aed67f Mon Sep 17 00:00:00 2001 From: domna Date: Wed, 8 May 2024 09:31:35 +0200 Subject: [PATCH 26/76] Readd accidentally deleted fixture --- tests/dataconverter/test_helpers.py | 45 +++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/tests/dataconverter/test_helpers.py b/tests/dataconverter/test_helpers.py index 784c98eb1..e81191bfe 100644 --- a/tests/dataconverter/test_helpers.py +++ b/tests/dataconverter/test_helpers.py @@ -145,6 +145,51 @@ def fixture_template(): return template +@pytest.mark.usefixtures("template") +@pytest.fixture(name="filled_test_data") +def fixture_filled_test_data(template, tmp_path): + """pytest fixture to setup a filled in template.""" + + # Copy original measurement file to tmp dir, + # because h5py.ExternalLink is modifying it while + # linking the nxs file. + distutils.file_util.copy_file( + f"{os.path.dirname(__file__)}" + f"/../" + f"data/nexus/" + f"xarray_saved_small_calibration.h5", + tmp_path, + ) + + template.clear() + template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/float_value"] = 2.0 + template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/float_value/@units"] = "nm" + template["/ENTRY[my_entry]/optional_parent/required_child"] = 1 + template["/ENTRY[my_entry]/optional_parent/optional_child"] = 1 + template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/bool_value"] = True + template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/int_value"] = 2 + template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/int_value/@units"] = "eV" + template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/posint_value"] = np.array( + [1, 2, 3], dtype=np.int8 + ) + template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/posint_value/@units"] = "kg" + template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/char_value"] = "just chars" + template["/ENTRY[my_entry]/definition"] = "NXtest" + template["/ENTRY[my_entry]/definition/@version"] = "2.4.6" + template["/ENTRY[my_entry]/program_name"] = "Testing program" + template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/type"] = "2nd type" + template["/ENTRY[my_entry]/NXODD_name[nxodd_name]/date_value"] = ( + "2022-01-22T12" ":14:12.05018+00:00" + ) + template["/ENTRY[my_entry]/required_group/description"] = "An example description" + template["/ENTRY[my_entry]/required_group2/description"] = "An example description" + template["/ENTRY[my_entry]/does/not/exist"] = "random" + template["/ENTRY[my_entry]/links/ext_link"] = { + "link": f"{tmp_path}/" f"xarray_saved_small_cali" f"bration.h5:/axes/ax3" + } + return template + + TEMPLATE = Template() TEMPLATE["optional"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/float_value"] = 2.0 # pylint: disable=E1126 TEMPLATE["optional"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/float_value/@units"] = ( From 7e0109c0c8eb20f94754d070777be46929a82767 Mon Sep 17 00:00:00 2001 From: domna Date: Wed, 8 May 2024 09:34:04 +0200 Subject: [PATCH 27/76] Readd distutils import --- tests/dataconverter/test_helpers.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/dataconverter/test_helpers.py b/tests/dataconverter/test_helpers.py index e81191bfe..0fd68a996 100644 --- a/tests/dataconverter/test_helpers.py +++ b/tests/dataconverter/test_helpers.py @@ -24,6 +24,7 @@ import numpy as np import pytest +from setuptools import distutils from pynxtools.dataconverter import helpers from pynxtools.dataconverter.template import Template From 6cc23452b1e37b3dedf2cb5a88058f3bd869d26b Mon Sep 17 00:00:00 2001 From: domna Date: Wed, 8 May 2024 12:12:31 +0200 Subject: [PATCH 28/76] Fix max occurs and dimensions --- pynxtools/dataconverter/nexus_tree.py | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index dea5f6c38..74e826b25 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -177,7 +177,8 @@ def get_unconnected_node_for( max_occurs = ( None if xml_elem.attrib.get("maxOccurs") == "unbounded" - else xml_elem.attrib.get("maxOccurs") + or xml_elem.attrib.get("maxOccurs") is None + else int(xml_elem.attrib.get("maxOccurs")) ) return NexusGroup( parent=None, @@ -187,7 +188,9 @@ def get_unconnected_node_for( optionality=optionality, variadic=is_variadic, occurrence_limits=( - xml_elem.attrib.get("minOccurs"), + int(xml_elem.attrib.get("minOccurs")) + if xml_elem.attrib.get("minOccurs") is not None + else None, max_occurs, ), inheritance=inheritance_chain, @@ -247,7 +250,8 @@ def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: max_occurs = ( None if xml_elem.attrib.get("maxOccurs") == "unbounded" - else xml_elem.attrib.get("maxOccurs") + or xml_elem.attrib.get("maxOccurs") is None + else int(xml_elem.attrib.get("maxOccurs")) ) current_elem = NexusGroup( parent=parent, @@ -257,7 +261,9 @@ def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: optionality=optionality, variadic=is_variadic, occurrence_limits=( - xml_elem.attrib.get("minOccurs"), + int(xml_elem.attrib.get("minOccurs")) + if xml_elem.attrib.get("minOccurs") is not None + else None, max_occurs, ), inheritance=inheritance_chain, @@ -273,7 +279,7 @@ def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: idx = int(dim.attrib["index"]) try: value = int(dim.attrib["value"]) - dims[idx] = value + dims[idx - 1] = value except ValueError: # TODO: Handling of symbols pass From 29e0b3f7bd6725df38cc9348d938cdea5c50a64e Mon Sep 17 00:00:00 2001 From: domna Date: Wed, 8 May 2024 12:15:14 +0200 Subject: [PATCH 29/76] Test parsing of all appdefs --- tests/dataconverter/test_nexus_tree.py | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 tests/dataconverter/test_nexus_tree.py diff --git a/tests/dataconverter/test_nexus_tree.py b/tests/dataconverter/test_nexus_tree.py new file mode 100644 index 000000000..61e781b68 --- /dev/null +++ b/tests/dataconverter/test_nexus_tree.py @@ -0,0 +1,9 @@ +from pynxtools.dataconverter.nexus_tree import generate_tree_from +from pynxtools.definitions.dev_tools.utils.nxdl_utils import get_app_defs_names + + +def test_parsing_of_all_appdefs(): + """All appdefs are parsed to a tree without raising an error""" + appdefs = get_app_defs_names() + for appdef in appdefs: + generate_tree_from(appdef) From ec46339bca27f1057b3ca8af74ca284c15001cf8 Mon Sep 17 00:00:00 2001 From: domna Date: Wed, 8 May 2024 12:22:41 +0200 Subject: [PATCH 30/76] Don't handle dimensions if the rank is a symbol --- pynxtools/dataconverter/nexus_tree.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index 74e826b25..a43896286 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -274,6 +274,12 @@ def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: return elif tag == "dimensions": rank = xml_elem.attrib["rank"] + if not isinstance(rank, int): + try: + int(rank) + except ValueError: + # TODO: Handling of symbols + return dims: List[Optional[int]] = [None] * int(rank) for dim in xml_elem.findall(f"{namespace}dim"): idx = int(dim.attrib["index"]) From 71e6daea41a0ca9b60d936124dfa0247b4204729 Mon Sep 17 00:00:00 2001 From: domna Date: Thu, 9 May 2024 21:38:41 +0200 Subject: [PATCH 31/76] Properly build inheritance chain --- pynxtools/dataconverter/helpers.py | 3 + pynxtools/dataconverter/nexus_tree.py | 246 ++++++++++++++------------ pynxtools/dataconverter/validation.py | 6 + 3 files changed, 140 insertions(+), 115 deletions(-) diff --git a/pynxtools/dataconverter/helpers.py b/pynxtools/dataconverter/helpers.py index 68602f4b1..379f28df1 100644 --- a/pynxtools/dataconverter/helpers.py +++ b/pynxtools/dataconverter/helpers.py @@ -55,6 +55,7 @@ class ValidationProblem(Enum): MissingDocumentation = 12 MissingUnit = 13 ChoiceValidationError = 14 + UnitWithoutField = 15 class Collector: @@ -124,6 +125,8 @@ def _log(self, path: str, log_type: ValidationProblem, value: Optional[Any], *ar ) elif log_type == ValidationProblem.MissingRequiredAttribute: logger.warning(f'Missing attribute: "{path}"') + elif log_type == ValidationProblem.UnitWithoutField: + logger.warning(f"Unit {path} in dataset without its field {value}") def collect_and_log(self, path: str, *args, **kwargs): """Inserts a path into the data dictionary and logs the action.""" diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index a43896286..e068f2aaa 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -31,7 +31,7 @@ "NX_UINT", ] -# TODO: Get types from nxdlTypes.xsd +# TODO: Write test against existing units in nxdlTypes.xsd NexusUnitCategory = Literal[ "NX_ANGLE", "NX_ANY", @@ -68,6 +68,8 @@ "NX_WAVENUMBER", ] +namespaces = {"nx": "http://definition.nexusformat.org/nxdl/3.1"} + class ReadOnlyError(RuntimeError): pass @@ -76,12 +78,22 @@ class ReadOnlyError(RuntimeError): class NexusNode(BaseModel, NodeMixin): name: str type: Literal["group", "field", "attribute", "choice"] - optionality: Literal["required", "recommended", "optional"] - variadic: bool + optionality: Literal["required", "recommended", "optional"] = "required" + variadic: bool = False variadic_siblings: List[InstanceOf["NexusNode"]] = [] + inheritance: List[InstanceOf[ET._Element]] = [] + + def _set_optionality(self): + if not self.inheritance: + return + if self.inheritance[0].attrib.get("recommended"): + self.optionality = "recommended" + elif self.inheritance[0].attrib.get("optional"): + self.optionality = "optional" def __init__(self, parent, **data) -> None: super().__init__(**data) + self.variadic = contains_uppercase(self.name) self.__readonly = False self.parent = parent self.__readonly = True @@ -93,8 +105,24 @@ def _pre_attach(self, parent): def _pre_detach(self, parent): raise ReadOnlyError() + def _construct_inheritance_chain_from_parent(self): + if self.parent is None: + return + for xml_elem in self.parent.inheritance: + elem = xml_elem.find( + f"nx:{self.type}/[@name='{self.name}']", namespaces=namespaces + ) + if elem is not None: + self.inheritance.append(elem) + @lru_cache(maxsize=None) def get_path(self) -> str: + """ + Gets the path of the current node based on the node name. + + Returns: + str: The full path up to the parent of the current node. + """ current_node = self names: List[str] = [] while current_node.parent is not None: @@ -114,6 +142,10 @@ def get_path_and_node(self) -> Tuple[str, List[ET._Element]]: class NexusChoice(NexusNode): type: Literal["choice"] = "choice" + def __init__(self, **data) -> None: + super().__init__(**data) + self._construct_inheritance_chain_from_parent() + class NexusGroup(NexusNode): nx_class: str @@ -121,7 +153,28 @@ class NexusGroup(NexusNode): Optional[Annotated[int, Field(strict=True, ge=0)]], Optional[Annotated[int, Field(strict=True, ge=0)]], ] = (None, None) - inheritance: List[InstanceOf[ET._Element]] = [] + + def _set_occurence_limits(self): + if not self.inheritance: + return + xml_elem = self.inheritance[0] + max_occurs = ( + None + if xml_elem.attrib.get("maxOccurs") == "unbounded" + or xml_elem.attrib.get("maxOccurs") is None + else int(xml_elem.attrib.get("maxOccurs")) + ) + self.occurrence_limits = ( + int(xml_elem.attrib.get("minOccurs")) + if xml_elem.attrib.get("minOccurs") is not None + else None, + max_occurs, + ) + + def __init__(self, **data) -> None: + super().__init__(**data) + self._set_occurence_limits() + self._set_optionality() def __repr__(self) -> str: return ( @@ -132,10 +185,74 @@ def __repr__(self) -> str: class NexusEntity(NexusNode): type: Literal["field", "attribute"] unit: Optional[NexusUnitCategory] = None - dtype: Optional[NexusType] = None + dtype: NexusType = "NX_CHAR" items: Optional[List[str]] = None shape: Optional[Tuple[Optional[int], ...]] = None + def _set_type(self): + for elem in self.inheritance: + dtype = elem.find( + f"nx:{self.type}[@name='{self.name}']", namespaces=namespaces + ) + if dtype is not None and "type" in dtype.attrib: + self.dtype = dtype.attrib.get("type") + return + + def _set_unit(self): + for elem in self.inheritance: + if "units" in elem.attrib: + self.unit = elem.attrib["units"] + return + + def _set_items(self): + if not self.type == "NX_CHAR": + return + for elem in self.inheritance: + enum = elem.find(f"nx:enumeration", namespaces=namespaces) + if enum is not None: + self.items = [] + for items in elem.findall(f"nx:item", namespaces=namespaces): + self.items.append(items.attrib["value"]) + return + + def _set_shape(self): + for elem in self.inheritance: + dimension = elem.find(f"nx:dimensions", namespaces=namespaces) + if dimension is not None: + break + if not self.inheritance or dimension is None: + return + + rank = dimension.attrib.get("rank") + if rank is not None and not isinstance(rank, int): + try: + int(rank) + except ValueError: + # TODO: Handling of symbols + return + xml_dim = dimension.findall("nx:dim", namespaces=namespaces) + rank = rank if rank is not None else len(xml_dim) + dims: List[Optional[int]] = [None] * int(rank) + for dim in xml_dim: + idx = int(dim.attrib["index"]) + try: + value = int(dim.attrib["value"]) + dims[idx - 1] = value + except ValueError: + # TODO: Handling of symbols + pass + + self.shape = tuple(dims) + + def __init__(self, **data) -> None: + super().__init__(**data) + self._construct_inheritance_chain_from_parent() + self._set_unit() + self._set_type() + self._set_items() + self._set_optionality() + self._set_shape() + def __repr__(self) -> str: if self.type == "attribute": return f"@{self.name} ({self.optionality[:3]})" @@ -152,72 +269,26 @@ def get_unconnected_node_for( xml_elem = elist[0] tag = remove_namespace_from_tag(xml_elem.tag) - optionality: Literal["required", "recommended", "optional"] = "required" - if xml_elem.attrib.get("recommended"): - optionality = "recommended" - elif xml_elem.attrib.get("optional"): - optionality = "optional" - if tag in ("attribute", "field"): - name = xml_elem.attrib.get("name") - is_variadic = contains_uppercase(xml_elem.attrib["name"]) return NexusEntity( parent=None, - name=name, + name=xml_elem.attrib.get("name"), type=tag, - optionality=optionality, - variadic=is_variadic, - unit=xml_elem.attrib.get("units"), - dtype=xml_elem.attrib.get("type", "NX_CHAR"), ) elif tag == "group": name = xml_elem.attrib.get("name", xml_elem.attrib["type"][2:].upper()) - inheritance_chain = get_inherited_nodes("", elem=xml_elem)[2] - is_variadic = contains_uppercase(name) - max_occurs = ( - None - if xml_elem.attrib.get("maxOccurs") == "unbounded" - or xml_elem.attrib.get("maxOccurs") is None - else int(xml_elem.attrib.get("maxOccurs")) - ) + *_, inheritance_chain = get_inherited_nodes("", elem=xml_elem) return NexusGroup( parent=None, type=tag, name=name, nx_class=xml_elem.attrib["type"], - optionality=optionality, - variadic=is_variadic, - occurrence_limits=( - int(xml_elem.attrib.get("minOccurs")) - if xml_elem.attrib.get("minOccurs") is not None - else None, - max_occurs, - ), inheritance=inheritance_chain, ) return None -def get_enumeration_items(elem: ET._Element) -> List[str]: - items: List[str] = [] - for item_tag in elem: - if remove_namespace_from_tag(item_tag.tag) == "item": - items.append(item_tag.attrib["value"]) - - return items - - -def check_enumeration_in_parents_for(node: NexusNode) -> None: - # TODO - pass - - -def check_dimensions_in_parents_for(node: NexusNode) -> None: - # TODO - pass - - def generate_tree_from(appdef: str) -> NexusNode: def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: tag = remove_namespace_from_tag(xml_elem.tag) @@ -225,78 +296,27 @@ def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: if tag == "doc": return - optionality: Literal["required", "recommended", "optional"] = "required" - if xml_elem.attrib.get("recommended"): - optionality = "recommended" - elif xml_elem.attrib.get("optional"): - optionality = "optional" - if tag in ("field", "attribute"): name = xml_elem.attrib.get("name") - is_variadic = contains_uppercase(xml_elem.attrib["name"]) current_elem = NexusEntity( parent=parent, name=name, type=tag, - optionality=optionality, - variadic=is_variadic, - unit=xml_elem.attrib.get("units"), - dtype=xml_elem.attrib.get("type", "NX_CHAR"), ) elif tag == "group": name = xml_elem.attrib.get("name", xml_elem.attrib["type"][2:].upper()) - inheritance_chain = get_inherited_nodes("", elem=xml_elem)[2] - is_variadic = contains_uppercase(name) - max_occurs = ( - None - if xml_elem.attrib.get("maxOccurs") == "unbounded" - or xml_elem.attrib.get("maxOccurs") is None - else int(xml_elem.attrib.get("maxOccurs")) - ) + *_, inheritance_chain = get_inherited_nodes("", elem=xml_elem) current_elem = NexusGroup( parent=parent, type=tag, name=name, nx_class=xml_elem.attrib["type"], - optionality=optionality, - variadic=is_variadic, - occurrence_limits=( - int(xml_elem.attrib.get("minOccurs")) - if xml_elem.attrib.get("minOccurs") is not None - else None, - max_occurs, - ), inheritance=inheritance_chain, ) - elif tag == "enumeration": - items = get_enumeration_items(xml_elem) - parent.items = items - return - elif tag == "dimensions": - rank = xml_elem.attrib["rank"] - if not isinstance(rank, int): - try: - int(rank) - except ValueError: - # TODO: Handling of symbols - return - dims: List[Optional[int]] = [None] * int(rank) - for dim in xml_elem.findall(f"{namespace}dim"): - idx = int(dim.attrib["index"]) - try: - value = int(dim.attrib["value"]) - dims[idx - 1] = value - except ValueError: - # TODO: Handling of symbols - pass - - parent.shape = tuple(dims) - return elif tag == "choice": current_elem = NexusChoice( parent=parent, name=xml_elem.attrib["name"], - optionality=optionality, variadic=contains_uppercase(xml_elem.attrib["name"]), ) else: @@ -305,20 +325,16 @@ def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: # TODO: Add logging or raise an error as this is not a known nxdl tag return - tags = ("enumeration", "dimensions") - check_tags_in_base_classes = False - for child in xml_elem: - if remove_namespace_from_tag(child.tag) not in tags: - check_tags_in_base_classes = True + for child in xml_elem.xpath( + r"*[self::nx:field or self::nx:group or self::nx:attribute]", + namespaces=namespaces, + ): add_children_to(current_elem, child) - if check_tags_in_base_classes: - check_enumeration_in_parents_for(current_elem) - check_dimensions_in_parents_for(current_elem) - appdef_xml_root, _ = get_nxdl_root_and_path(appdef) entry = get_first_group(appdef_xml_root) - namespace = "{" + appdef_xml_root.nsmap[None] + "}" + global namespaces + namespaces = {"nx": appdef_xml_root.nsmap[None]} tree = NexusGroup( name=appdef_xml_root.attrib["name"], diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index 6d24a2e86..8c26f256d 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -198,6 +198,12 @@ def recurse_tree(node: NexusNode, keys: Mapping[str, Any], prev_path: str = ""): # TODO: Check if field is present in the inheritance chain # and only report it as undocumented if it is not if not_visited_key.endswith("/@units"): + if not_visited_key.rsplit("/", 1)[0] not in not_visited: + collector.collect_and_log( + not_visited_key, + ValidationProblem.UnitWithoutField, + not_visited_key.rsplit("/", 1)[0], + ) collector.collect_and_log( not_visited_key, ValidationProblem.UnitWithoutDocumentation, From b1bd257ca57fc715371583e0f74e697c4f304218 Mon Sep 17 00:00:00 2001 From: domna Date: Thu, 9 May 2024 21:44:35 +0200 Subject: [PATCH 32/76] Fix parsing of dims if no value is present --- pynxtools/dataconverter/nexus_tree.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index e068f2aaa..f8ef85c18 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -235,6 +235,9 @@ def _set_shape(self): dims: List[Optional[int]] = [None] * int(rank) for dim in xml_dim: idx = int(dim.attrib["index"]) + if "value" not in dim.attrib: + # This is probably an old dim element with ref + return try: value = int(dim.attrib["value"]) dims[idx - 1] = value From 44816eee84c38d425b68eab1899fcc1fb6237ca5 Mon Sep 17 00:00:00 2001 From: domna Date: Thu, 9 May 2024 21:49:26 +0200 Subject: [PATCH 33/76] Check literal values against actual present units --- pynxtools/dataconverter/nexus_tree.py | 1 - tests/dataconverter/test_nexus_tree.py | 16 ++++++++++++++-- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index f8ef85c18..4d3d26ed6 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -31,7 +31,6 @@ "NX_UINT", ] -# TODO: Write test against existing units in nxdlTypes.xsd NexusUnitCategory = Literal[ "NX_ANGLE", "NX_ANY", diff --git a/tests/dataconverter/test_nexus_tree.py b/tests/dataconverter/test_nexus_tree.py index 61e781b68..75b33cbdb 100644 --- a/tests/dataconverter/test_nexus_tree.py +++ b/tests/dataconverter/test_nexus_tree.py @@ -1,5 +1,10 @@ -from pynxtools.dataconverter.nexus_tree import generate_tree_from -from pynxtools.definitions.dev_tools.utils.nxdl_utils import get_app_defs_names +from typing import get_args + +from pynxtools.dataconverter.nexus_tree import NexusUnitCategory, generate_tree_from +from pynxtools.definitions.dev_tools.utils.nxdl_utils import ( + get_app_defs_names, + get_nx_units, +) def test_parsing_of_all_appdefs(): @@ -7,3 +12,10 @@ def test_parsing_of_all_appdefs(): appdefs = get_app_defs_names() for appdef in appdefs: generate_tree_from(appdef) + + +def test_if_all_units_are_present(): + reference_units = get_nx_units() + pydantic_literal_values = get_args(NexusUnitCategory) + + assert set(reference_units) == set(pydantic_literal_values) From 1656822817adc028b5205db137f463132f4fa180 Mon Sep 17 00:00:00 2001 From: domna Date: Thu, 9 May 2024 21:53:44 +0200 Subject: [PATCH 34/76] Test types against xsd --- pynxtools/dataconverter/nexus_tree.py | 2 -- tests/dataconverter/test_nexus_tree.py | 14 +++++++++++++- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index 4d3d26ed6..3819be9e6 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -14,12 +14,10 @@ from pynxtools.definitions.dev_tools.utils.nxdl_utils import get_inherited_nodes NexusType = Literal[ - "ISO8601", "NX_BINARY", "NX_BOOLEAN", "NX_CCOMPLEX", "NX_CHAR", - "NX_CHAR_OR_NUMBER", "NX_COMPLEX", "NX_DATE_TIME", "NX_FLOAT", diff --git a/tests/dataconverter/test_nexus_tree.py b/tests/dataconverter/test_nexus_tree.py index 75b33cbdb..289ebe634 100644 --- a/tests/dataconverter/test_nexus_tree.py +++ b/tests/dataconverter/test_nexus_tree.py @@ -1,8 +1,13 @@ from typing import get_args -from pynxtools.dataconverter.nexus_tree import NexusUnitCategory, generate_tree_from +from pynxtools.dataconverter.nexus_tree import ( + NexusType, + NexusUnitCategory, + generate_tree_from, +) from pynxtools.definitions.dev_tools.utils.nxdl_utils import ( get_app_defs_names, + get_nx_attribute_type, get_nx_units, ) @@ -19,3 +24,10 @@ def test_if_all_units_are_present(): pydantic_literal_values = get_args(NexusUnitCategory) assert set(reference_units) == set(pydantic_literal_values) + + +def test_if_all_types_are_present(): + reference_types = get_nx_attribute_type() + pydantic_literal_values = get_args(NexusType) + + assert set(reference_types) == set(pydantic_literal_values) From 6ab139b82f6eeccac2a109b8b0f80839490a1dff Mon Sep 17 00:00:00 2001 From: domna Date: Thu, 9 May 2024 21:58:56 +0200 Subject: [PATCH 35/76] Get entry group with etree.find --- pynxtools/dataconverter/nexus_tree.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index 3819be9e6..2eb7b3a64 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -332,7 +332,6 @@ def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: add_children_to(current_elem, child) appdef_xml_root, _ = get_nxdl_root_and_path(appdef) - entry = get_first_group(appdef_xml_root) global namespaces namespaces = {"nx": appdef_xml_root.nsmap[None]} @@ -345,6 +344,7 @@ def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: parent=None, inheritance=get_inherited_nodes("", elem=appdef_xml_root)[2], ) + entry = appdef_xml_root.find("nx:group[@type='NXentry']", namespaces=namespaces) add_children_to(tree, entry) return tree From 16623b981f6283ac8342d89a764bcfc81166f8ae Mon Sep 17 00:00:00 2001 From: domna Date: Thu, 9 May 2024 22:28:41 +0200 Subject: [PATCH 36/76] Handle node adding in NexusNode --- pynxtools/dataconverter/nexus_tree.py | 122 ++++++++++++-------------- pynxtools/dataconverter/validation.py | 4 +- 2 files changed, 60 insertions(+), 66 deletions(-) diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index 2eb7b3a64..2d6aa632b 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -1,5 +1,5 @@ from functools import lru_cache -from typing import Annotated, List, Literal, Optional, Tuple +from typing import Annotated, List, Literal, Optional, Set, Tuple import lxml.etree as ET from anytree.node.nodemixin import NodeMixin @@ -127,6 +127,62 @@ def get_path(self) -> str: current_node = current_node.parent return "/" + "/".join(names) + def get_all_parent_names(self) -> Set[str]: + names = set() + for elem in self.inheritance: + for subelems in elem.xpath( + r"*[self::nx:field or self::nx:group or self::nx:attribute]", + namespaces=namespaces, + ): + if "name" in subelems.attrib: + names.add(subelems.attrib["name"]) + elif "type" in subelems.attrib: + names.add(subelems.attrib["type"][2:].upper()) + + return names + + def add_node_from(self, xml_elem: ET._Element) -> Optional["NexusNode"]: + tag = remove_namespace_from_tag(xml_elem.tag) + if tag in ("field", "attribute"): + name = xml_elem.attrib.get("name") + current_elem = NexusEntity( + parent=self, + name=name, + type=tag, + ) + elif tag == "group": + name = xml_elem.attrib.get("name", xml_elem.attrib["type"][2:].upper()) + *_, inheritance_chain = get_inherited_nodes("", elem=xml_elem) + current_elem = NexusGroup( + parent=self, + type=tag, + name=name, + nx_class=xml_elem.attrib["type"], + inheritance=inheritance_chain, + ) + elif tag == "choice": + current_elem = NexusChoice( + parent=self, + name=xml_elem.attrib["name"], + variadic=contains_uppercase(xml_elem.attrib["name"]), + ) + else: + # TODO: Tags: link + # We don't know the tag, skip processing children of it + # TODO: Add logging or raise an error as this is not a known nxdl tag + return None + + return current_elem + + def add_inherited_node(self, name: str) -> Optional["NexusNode"]: + for elem in self.inheritance: + xml_elem = elem.find( + f"nx:{self.type}[@name='{name}']", namespaces=namespaces + ) + if xml_elem is not None: + return self.add_node_from(xml_elem) + return None + def get_path_and_node(self) -> Tuple[str, List[ET._Element]]: current_node = self names: List[str] = [] @@ -259,71 +315,9 @@ def __repr__(self) -> str: return f"{self.name} ({self.optionality[:3]})" -def get_unconnected_node_for( - nxdl_path: str, child_xml_elem: ET._Element -) -> Optional[NexusNode]: - # TODO: Remove code duplication in this function and generate_tree_from(...) - *_, elist = get_inherited_nodes(nxdl_path=nxdl_path, elem=child_xml_elem) - if not elist: - return None - xml_elem = elist[0] - tag = remove_namespace_from_tag(xml_elem.tag) - - if tag in ("attribute", "field"): - return NexusEntity( - parent=None, - name=xml_elem.attrib.get("name"), - type=tag, - ) - elif tag == "group": - name = xml_elem.attrib.get("name", xml_elem.attrib["type"][2:].upper()) - *_, inheritance_chain = get_inherited_nodes("", elem=xml_elem) - return NexusGroup( - parent=None, - type=tag, - name=name, - nx_class=xml_elem.attrib["type"], - inheritance=inheritance_chain, - ) - - return None - - def generate_tree_from(appdef: str) -> NexusNode: def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: - tag = remove_namespace_from_tag(xml_elem.tag) - - if tag == "doc": - return - - if tag in ("field", "attribute"): - name = xml_elem.attrib.get("name") - current_elem = NexusEntity( - parent=parent, - name=name, - type=tag, - ) - elif tag == "group": - name = xml_elem.attrib.get("name", xml_elem.attrib["type"][2:].upper()) - *_, inheritance_chain = get_inherited_nodes("", elem=xml_elem) - current_elem = NexusGroup( - parent=parent, - type=tag, - name=name, - nx_class=xml_elem.attrib["type"], - inheritance=inheritance_chain, - ) - elif tag == "choice": - current_elem = NexusChoice( - parent=parent, - name=xml_elem.attrib["name"], - variadic=contains_uppercase(xml_elem.attrib["name"]), - ) - else: - # TODO: Tags: link - # We don't know the tag, skip processing children of it - # TODO: Add logging or raise an error as this is not a known nxdl tag - return + current_elem = parent.add_node_from(xml_elem) for child in xml_elem.xpath( r"*[self::nx:field or self::nx:group or self::nx:attribute]", diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index 8c26f256d..3b23d06dd 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -27,7 +27,7 @@ def validate(name: str, data: Union[h5py.Group, h5py.Dataset]): data.visitems(validate) -def build_tree_from(mapping: Mapping[str, Any]) -> Mapping[str, Any]: +def build_nested_dict_from(mapping: Mapping[str, Any]) -> Mapping[str, Any]: # Based on https://stackoverflow.com/questions/50607128/creating-a-nested-dictionary-from-a-flattened-dictionary def get_from(data_tree, map_list): """Iterate nested dictionary""" @@ -190,7 +190,7 @@ def recurse_tree(node: NexusNode, keys: Mapping[str, Any], prev_path: str = ""): tree = generate_tree_from(appdef) collector.clear() not_visited = list(mapping) - nested_keys = build_tree_from(mapping) + nested_keys = build_nested_dict_from(mapping) recurse_tree(tree, nested_keys) if not ignore_undocumented: From ac9d4f6e3881f274d768bac0a209a0e9e55b04bd Mon Sep 17 00:00:00 2001 From: domna Date: Thu, 9 May 2024 22:47:50 +0200 Subject: [PATCH 37/76] Make nexusnode writeable --- pynxtools/dataconverter/nexus_tree.py | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index 2d6aa632b..5ba4259eb 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -68,10 +68,6 @@ namespaces = {"nx": "http://definition.nexusformat.org/nxdl/3.1"} -class ReadOnlyError(RuntimeError): - pass - - class NexusNode(BaseModel, NodeMixin): name: str type: Literal["group", "field", "attribute", "choice"] @@ -91,16 +87,7 @@ def _set_optionality(self): def __init__(self, parent, **data) -> None: super().__init__(**data) self.variadic = contains_uppercase(self.name) - self.__readonly = False self.parent = parent - self.__readonly = True - - def _pre_attach(self, parent): - if self.__readonly: - raise ReadOnlyError() - - def _pre_detach(self, parent): - raise ReadOnlyError() def _construct_inheritance_chain_from_parent(self): if self.parent is None: From 9a76e6b812421687f16b6f34c1a0a7c93bc03ab8 Mon Sep 17 00:00:00 2001 From: domna Date: Fri, 10 May 2024 00:40:21 +0200 Subject: [PATCH 38/76] Check undocumented keys in parents --- pynxtools/dataconverter/nexus_tree.py | 25 +++++++++-------- pynxtools/dataconverter/validation.py | 40 +++++++++++++++++++++++---- 2 files changed, 48 insertions(+), 17 deletions(-) diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index 5ba4259eb..d2feea125 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -8,7 +8,6 @@ from pynxtools.dataconverter.convert import get_nxdl_root_and_path from pynxtools.dataconverter.helpers import ( contains_uppercase, - get_first_group, remove_namespace_from_tag, ) from pynxtools.definitions.dev_tools.utils.nxdl_utils import get_inherited_nodes @@ -114,9 +113,12 @@ def get_path(self) -> str: current_node = current_node.parent return "/" + "/".join(names) - def get_all_parent_names(self) -> Set[str]: + def get_all_children_names(self, depth: Optional[int] = None) -> Set[str]: + if depth is not None and depth < 0: + raise ValueError("Depth must be a positive integer or None") + names = set() - for elem in self.inheritance: + for elem in self.inheritance[:depth]: for subelems in elem.xpath( r"*[self::nx:field or self::nx:group or self::nx:attribute]", namespaces=namespaces, @@ -163,11 +165,12 @@ def add_node_from(self, xml_elem: ET._Element) -> Optional["NexusNode"]: def add_inherited_node(self, name: str) -> Optional["NexusNode"]: for elem in self.inheritance: - xml_elem = elem.find( - f"nx:{self.type}[@name='{name}']", namespaces=namespaces + xml_elem = elem.xpath( + f"*[self::nx:field or self::nx:group or self::nx:attribute][@name='{name}']", + namespaces=namespaces, ) - if xml_elem is not None: - return self.add_node_from(xml_elem) + if xml_elem: + return self.add_node_from(xml_elem[0]) return None def get_path_and_node(self) -> Tuple[str, List[ET._Element]]: @@ -185,6 +188,7 @@ class NexusChoice(NexusNode): def __init__(self, **data) -> None: super().__init__(**data) self._construct_inheritance_chain_from_parent() + self._set_optionality() class NexusGroup(NexusNode): @@ -231,11 +235,8 @@ class NexusEntity(NexusNode): def _set_type(self): for elem in self.inheritance: - dtype = elem.find( - f"nx:{self.type}[@name='{self.name}']", namespaces=namespaces - ) - if dtype is not None and "type" in dtype.attrib: - self.dtype = dtype.attrib.get("type") + if "type" in elem.attrib: + self.dtype = elem.attrib["type"] return def _set_unit(self): diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index 3b23d06dd..b0aca688a 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -1,20 +1,20 @@ from collections import defaultdict from functools import reduce from operator import getitem -from typing import Any, List, Mapping, Union +from typing import Any, Iterable, List, Mapping, Optional, Union import h5py +from anytree import Resolver from pynxtools.dataconverter.helpers import ( Collector, ValidationProblem, + collector, is_valid_data_field, ) from pynxtools.dataconverter.nexus_tree import NexusNode, generate_tree_from from pynxtools.definitions.dev_tools.utils.nxdl_utils import get_nx_namefit -collector = Collector() - def validate_hdf_group_against(appdef: str, data: h5py.Group): """Checks whether all the required paths from the template are returned in data dict.""" @@ -55,6 +55,19 @@ def default_to_regular_dict(d): return default_to_regular_dict(data_tree) +def best_namefit_of(name: str, keys: Iterable[str]) -> Optional[str]: + if name in keys: + return name + + best_match, score = max( + map(lambda x: (x, get_nx_namefit(name, x)), keys), key=lambda x: x[1] + ) + if score < 0: + return None + + return best_match + + def validate_dict_against( appdef: str, mapping: Mapping[str, Any], ignore_undocumented: bool = False ) -> bool: @@ -170,6 +183,23 @@ def handle_unknown_type(node: NexusNode, keys: Mapping[str, Any], prev_path: str # TODO: Raise error or log the issue? pass + def is_documented(key: str, node: NexusNode) -> bool: + for name in key[1:].split("/"): + children = node.get_all_children_names() + best_name = best_namefit_of(name, children) + if best_name is None: + return False + if best_name not in node.get_all_children_names(depth=1): + node = node.add_inherited_node(best_name) + else: + resolver = Resolver("name") + node = resolver.get(node, best_name) + + if node.type != "field": + return False + + return is_valid_data_field(mapping[key], node.dtype, key) + def recurse_tree(node: NexusNode, keys: Mapping[str, Any], prev_path: str = ""): for child in node.children: handling_map.get(child.type, handle_unknown_type)(child, keys, prev_path) @@ -195,8 +225,8 @@ def recurse_tree(node: NexusNode, keys: Mapping[str, Any], prev_path: str = ""): if not ignore_undocumented: for not_visited_key in not_visited: - # TODO: Check if field is present in the inheritance chain - # and only report it as undocumented if it is not + if is_documented(not_visited_key, tree): + continue if not_visited_key.endswith("/@units"): if not_visited_key.rsplit("/", 1)[0] not in not_visited: collector.collect_and_log( From 99cded5426fcb46641d80a08cc49193d8f4d82b9 Mon Sep 17 00:00:00 2001 From: domna Date: Fri, 10 May 2024 07:16:46 +0200 Subject: [PATCH 39/76] Add get_docstring function --- pynxtools/dataconverter/nexus_tree.py | 12 ++++++++ pynxtools/dataconverter/validation.py | 42 +++++++++++++++------------ 2 files changed, 35 insertions(+), 19 deletions(-) diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index d2feea125..fd6ea848b 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -130,6 +130,18 @@ def get_all_children_names(self, depth: Optional[int] = None) -> Set[str]: return names + def get_docstring(self, depth: Optional[int] = None) -> List[str]: + if depth is not None and depth < 0: + raise ValueError("Depth must be a positive integer or None") + + docstrings = [] + for elem in self.inheritance[:depth][::-1]: + doc = elem.find("nx:doc", namespaces=namespaces) + if doc is not None: + docstrings.append(doc.text) + + return docstrings + def add_node_from(self, xml_elem: ET._Element) -> Optional["NexusNode"]: tag = remove_namespace_from_tag(xml_elem.tag) if tag in ("field", "attribute"): diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index b0aca688a..b2f731088 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -184,7 +184,7 @@ def handle_unknown_type(node: NexusNode, keys: Mapping[str, Any], prev_path: str pass def is_documented(key: str, node: NexusNode) -> bool: - for name in key[1:].split("/"): + for name in key[1:].replace("@", "").split("/"): children = node.get_all_children_names() best_name = best_namefit_of(name, children) if best_name is None: @@ -195,7 +195,9 @@ def is_documented(key: str, node: NexusNode) -> bool: resolver = Resolver("name") node = resolver.get(node, best_name) - if node.type != "field": + if "@" not in key and node.type != "field": + return False + if "@" in key and node.type != "attribute": return False return is_valid_data_field(mapping[key], node.dtype, key) @@ -223,25 +225,27 @@ def recurse_tree(node: NexusNode, keys: Mapping[str, Any], prev_path: str = ""): nested_keys = build_nested_dict_from(mapping) recurse_tree(tree, nested_keys) - if not ignore_undocumented: - for not_visited_key in not_visited: - if is_documented(not_visited_key, tree): - continue - if not_visited_key.endswith("/@units"): - if not_visited_key.rsplit("/", 1)[0] not in not_visited: - collector.collect_and_log( - not_visited_key, - ValidationProblem.UnitWithoutField, - not_visited_key.rsplit("/", 1)[0], - ) + if ignore_undocumented: + return not collector.has_validation_problems() + + for not_visited_key in not_visited: + if is_documented(not_visited_key, tree): + continue + if not_visited_key.endswith("/@units"): + if not_visited_key.rsplit("/", 1)[0] not in not_visited: collector.collect_and_log( not_visited_key, - ValidationProblem.UnitWithoutDocumentation, - mapping[not_visited_key], - ) - else: - collector.collect_and_log( - not_visited_key, ValidationProblem.MissingDocumentation, None + ValidationProblem.UnitWithoutField, + not_visited_key.rsplit("/", 1)[0], ) + collector.collect_and_log( + not_visited_key, + ValidationProblem.UnitWithoutDocumentation, + mapping[not_visited_key], + ) + else: + collector.collect_and_log( + not_visited_key, ValidationProblem.MissingDocumentation, None + ) return not collector.has_validation_problems() From ee004dac9f645442098e0475383b9ce0d968a875 Mon Sep 17 00:00:00 2001 From: domna Date: Fri, 10 May 2024 07:51:09 +0200 Subject: [PATCH 40/76] Proper enumeration construction --- pynxtools/dataconverter/nexus_tree.py | 4 ++-- pynxtools/dataconverter/validation.py | 12 +++++++++++- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index fd6ea848b..85f74e3e6 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -258,13 +258,13 @@ def _set_unit(self): return def _set_items(self): - if not self.type == "NX_CHAR": + if not self.dtype == "NX_CHAR": return for elem in self.inheritance: enum = elem.find(f"nx:enumeration", namespaces=namespaces) if enum is not None: self.items = [] - for items in elem.findall(f"nx:item", namespaces=namespaces): + for items in enum.findall(f"nx:item", namespaces=namespaces): self.items.append(items.attrib["value"]) return diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index b2f731088..d2a6ce909 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -28,7 +28,8 @@ def validate(name: str, data: Union[h5py.Group, h5py.Dataset]): def build_nested_dict_from(mapping: Mapping[str, Any]) -> Mapping[str, Any]: - # Based on https://stackoverflow.com/questions/50607128/creating-a-nested-dictionary-from-a-flattened-dictionary + # Based on + # https://stackoverflow.com/questions/50607128/creating-a-nested-dictionary-from-a-flattened-dictionary def get_from(data_tree, map_list): """Iterate nested dictionary""" return reduce(getitem, map_list, data_tree) @@ -121,6 +122,15 @@ def handle_field(node: NexusNode, keys: Mapping[str, Any], prev_path: str): is_valid_data_field( mapping[f"{prev_path}/{variant}"], node.dtype, f"{prev_path}/{variant}" ) + if ( + node.items is not None + and mapping[f"{prev_path}/{variant}"] not in node.items + ): + collector.collect_and_log( + f"{prev_path}/{variant}", + ValidationProblem.InvalidEnum, + node.items, + ) if node.unit is not None: remove_from_not_visited(f"{prev_path}/{variant}/@units") if f"{variant}@units" not in keys: From 1eed9734473e824c9866fcceb3025b787f4c400a Mon Sep 17 00:00:00 2001 From: domna Date: Fri, 10 May 2024 08:09:30 +0200 Subject: [PATCH 41/76] Add required fields and attrs function for nexusnode --- pynxtools/dataconverter/nexus_tree.py | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index 85f74e3e6..34dc0d718 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -130,6 +130,32 @@ def get_all_children_names(self, depth: Optional[int] = None) -> Set[str]: return names + def required_fields_and_attrs_names( + self, + prev_path: str = "", + level: Literal["required", "recommended"] = "required", + ) -> List[str]: + req_children = [] + if level == "recommended": + optionalities: Tuple[str, ...] = ("recommended", "required") + else: + optionalities = ("required",) + for child in self.children: + if ( + child.type in ("field", "attribute") + and child.optionality in optionalities + ): + req_children.append(f"{prev_path}/{child.name}") + + if child.type in ("group", "choice") and child.optionality in optionalities: + req_children.extend( + child.required_fields_and_attrs_names( + prev_path=f"{prev_path}/{child.name}", level=level + ) + ) + + return req_children + def get_docstring(self, depth: Optional[int] = None) -> List[str]: if depth is not None and depth < 0: raise ValueError("Depth must be a positive integer or None") From 7e8f02cba88d9b7db25b820289009cd2c38edd35 Mon Sep 17 00:00:00 2001 From: domna Date: Fri, 10 May 2024 08:19:54 +0200 Subject: [PATCH 42/76] Support for py3.8 --- pynxtools/dataconverter/nexus_tree.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index 34dc0d718..f9592d08a 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -1,9 +1,9 @@ from functools import lru_cache -from typing import Annotated, List, Literal, Optional, Set, Tuple +from typing import List, Literal, Optional, Set, Tuple import lxml.etree as ET from anytree.node.nodemixin import NodeMixin -from pydantic import BaseModel, Field, InstanceOf +from pydantic import BaseModel, InstanceOf from pynxtools.dataconverter.convert import get_nxdl_root_and_path from pynxtools.dataconverter.helpers import ( @@ -232,8 +232,9 @@ def __init__(self, **data) -> None: class NexusGroup(NexusNode): nx_class: str occurrence_limits: Tuple[ - Optional[Annotated[int, Field(strict=True, ge=0)]], - Optional[Annotated[int, Field(strict=True, ge=0)]], + # Use Annotated[int, Field(strict=True, ge=0)] for py>3.8 + Optional[int], + Optional[int], ] = (None, None) def _set_occurence_limits(self): From 527cbf4ce1c40a06e1a501069bc7876a09253a85 Mon Sep 17 00:00:00 2001 From: domna Date: Fri, 10 May 2024 10:49:56 +0200 Subject: [PATCH 43/76] Support CLASSNAME[path] notation in dict --- pynxtools/dataconverter/validation.py | 35 +++++++++++++++++++++++---- 1 file changed, 30 insertions(+), 5 deletions(-) diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index d2a6ce909..ca777d000 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -1,7 +1,25 @@ +# +# Copyright The pynxtools Authors. +# +# This file is part of pynxtools. +# See https://github.com/FAIRmat-NFDI/pynxtools for further info. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# from collections import defaultdict from functools import reduce from operator import getitem -from typing import Any, Iterable, List, Mapping, Optional, Union +from typing import Any, Iterable, List, Mapping, Optional, Tuple, Union import h5py from anytree import Resolver @@ -10,6 +28,7 @@ Collector, ValidationProblem, collector, + convert_data_dict_path_to_hdf5_path, is_valid_data_field, ) from pynxtools.dataconverter.nexus_tree import NexusNode, generate_tree_from @@ -27,7 +46,9 @@ def validate(name: str, data: Union[h5py.Group, h5py.Dataset]): data.visitems(validate) -def build_nested_dict_from(mapping: Mapping[str, Any]) -> Mapping[str, Any]: +def build_nested_dict_from( + mapping: Mapping[str, Any], +) -> Tuple[Mapping[str, Any], Mapping[str, Any]]: # Based on # https://stackoverflow.com/questions/50607128/creating-a-nested-dictionary-from-a-flattened-dictionary def get_from(data_tree, map_list): @@ -47,13 +68,17 @@ def default_to_regular_dict(d): data_tree = tree() # iterate input dictionary + hdf_path_mapping = {} for k, v in mapping.items(): + hdf_path_mapping[convert_data_dict_path_to_hdf5_path(k)] = v _, *keys, final_key = ( - k.replace("/@", "@").split("/") if not k.startswith("/@") else k.split("/") + convert_data_dict_path_to_hdf5_path(k).replace("/@", "@").split("/") + if not k.startswith("/@") + else k.split("/") ) get_from(data_tree, keys)[final_key] = v - return default_to_regular_dict(data_tree) + return default_to_regular_dict(data_tree), hdf_path_mapping def best_namefit_of(name: str, keys: Iterable[str]) -> Optional[str]: @@ -231,8 +256,8 @@ def recurse_tree(node: NexusNode, keys: Mapping[str, Any], prev_path: str = ""): tree = generate_tree_from(appdef) collector.clear() + nested_keys, mapping = build_nested_dict_from(mapping) not_visited = list(mapping) - nested_keys = build_nested_dict_from(mapping) recurse_tree(tree, nested_keys) if ignore_undocumented: From 50ecfa87c6381e2637cd54178c101a0d4d981b4b Mon Sep 17 00:00:00 2001 From: domna Date: Fri, 10 May 2024 12:21:05 +0200 Subject: [PATCH 44/76] Add docstrings for new functions --- pynxtools/dataconverter/helpers.py | 8 +- pynxtools/dataconverter/nexus_tree.py | 256 +++++++++++++++++++++++-- pynxtools/dataconverter/validation.py | 49 ++++- tests/dataconverter/test_validation.py | 18 ++ 4 files changed, 313 insertions(+), 18 deletions(-) diff --git a/pynxtools/dataconverter/helpers.py b/pynxtools/dataconverter/helpers.py index 379f28df1..d94b8adf3 100644 --- a/pynxtools/dataconverter/helpers.py +++ b/pynxtools/dataconverter/helpers.py @@ -377,8 +377,12 @@ def get_name_from_data_dict_entry(entry: str) -> str: ENTRY[entry] -> entry """ - regex = re.compile(r"(?<=\[)(.*?)(?=\])") - results = regex.search(entry) + + @lru_cache(maxsize=None) + def get_regex(): + return re.compile(r"(?<=\[)(.*?)(?=\])") + + results = get_regex().search(entry) if results is None: return entry if entry[0] == "@": diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index f9592d08a..54f4c4e30 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -1,3 +1,33 @@ +# +# Copyright The pynxtools Authors. +# +# This file is part of pynxtools. +# See https://github.com/FAIRmat-NFDI/pynxtools for further info. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +""" +`NexusNode` and its subclasses are a tree implementation based on anytree. +They are used to represent the structure of an NeXus application definition. + +The `NexusNode` representation is typically spares, i.e., it only contains +everything present in the application definition. +However, all necessary parameters are added from the inheritance chain +on the fly when the tree is generated. + +It also allows for adding further nodes from the inheritance chain on the fly. +""" + from functools import lru_cache from typing import List, Literal, Optional, Set, Tuple @@ -64,10 +94,50 @@ "NX_WAVENUMBER", ] +# This is the NeXus namespace for finding tags. +# It's updated from the nxdl file when `generate_tree_from`` is called. namespaces = {"nx": "http://definition.nexusformat.org/nxdl/3.1"} class NexusNode(BaseModel, NodeMixin): + """ + A NexusNode represents one node in the NeXus tree. + It can be either a `group`, `field`, `attribute` or `choice` for which it has + respective subclasses. + + Args: + name (str): + The name of the node. + type (Literal["group", "field", "attribute", "choice"]): + The type of the node, e.g., xml tag in the nxdl file. + optionality (Literal["required", "recommended", "optional"], optional): + The optionality of the node. + This is automatically set on init (in the respective subclasses) + based on the values found in the nxdl file. + Defaults to "required". + variadic (bool): + True if the node name is variadic and can be matched against multiple names. + This is set automatically on init and will be True if the name contains + any uppercase characets and False otherwise. + Defaults to False. + variadic_siblings (List[InstanceOf["NexusNode"]]): + Variadic siblings are names which are connected to each other, e.g., + `AXISNAME` and `AXISNAME_indices` belong together and are variadic siblings. + Defaults to []. + inheritance (List[InstanceOf[ET._Element]]): + The inheritance chain of the node. + The first element of the list is the xml representation of this node. + All following elements are the xml nodes of the node if these are + present in parent classes. + Defaults to []. + parent: (Optional[NexusNode]): + The parent of the node. + This is used by anytree to automatically build parents and children relations + for a tree, i.e., setting the parent of a node is enough to add it to the tree + and to its parent's children. + For the root this is None. + """ + name: str type: Literal["group", "field", "attribute", "choice"] optionality: Literal["required", "recommended", "optional"] = "required" @@ -83,7 +153,7 @@ def _set_optionality(self): elif self.inheritance[0].attrib.get("optional"): self.optionality = "optional" - def __init__(self, parent, **data) -> None: + def __init__(self, parent: Optional["NexusNode"], **data) -> None: super().__init__(**data) self.variadic = contains_uppercase(self.name) self.parent = parent @@ -114,13 +184,33 @@ def get_path(self) -> str: return "/" + "/".join(names) def get_all_children_names(self, depth: Optional[int] = None) -> Set[str]: - if depth is not None and depth < 0: + """ + Get all children names of the current node up to a certain depth. + Only `field`, `group` `choice` or `attribute` are considered as children. + + Args: + depth (Optional[int], optional): + The inheritance depth up to which get children names. + `depth=1` will return only the children of the current node. + `depth=None` will return all children names of all parents. + Defaults to None. + + Raises: + ValueError: If depth is not int or negativ. + + Returns: + Set[str]: A set of children names. + """ + if depth is not None and (not isinstance(depth, int) or depth < 0): raise ValueError("Depth must be a positive integer or None") names = set() for elem in self.inheritance[:depth]: for subelems in elem.xpath( - r"*[self::nx:field or self::nx:group or self::nx:attribute]", + ( + r"*[self::nx:field or self::nx:group " + r"or self::nx:attribute or self::nx:choice]" + ), namespaces=namespaces, ): if "name" in subelems.attrib: @@ -135,6 +225,22 @@ def required_fields_and_attrs_names( prev_path: str = "", level: Literal["required", "recommended"] = "required", ) -> List[str]: + """ + Gets all required fields and attributes names of the current node and its children. + + Args: + prev_path (str, optional): + The path prefix to attach to the names found at this node. Defaults to "". + level (Literal["required", "recommended"], optional): + Denotes which level of requiredness should be returned. + Setting this to `required` will return only required fields and attributes. + Setting this to `recommended` will return + both required and recommended fields and attributes. + Defaults to "required". + + Returns: + List[str]: A list of required fields and attributes names. + """ req_children = [] if level == "recommended": optionalities: Tuple[str, ...] = ("recommended", "required") @@ -145,9 +251,13 @@ def required_fields_and_attrs_names( child.type in ("field", "attribute") and child.optionality in optionalities ): - req_children.append(f"{prev_path}/{child.name}") + attr_prefix = "@" if child.type == "attribute" else "" + req_children.append(f"{prev_path}/{attr_prefix}{child.name}") - if child.type in ("group", "choice") and child.optionality in optionalities: + if ( + child.type in ("field", "group", "choice") + and child.optionality in optionalities + ): req_children.extend( child.required_fields_and_attrs_names( prev_path=f"{prev_path}/{child.name}", level=level @@ -157,6 +267,21 @@ def required_fields_and_attrs_names( return req_children def get_docstring(self, depth: Optional[int] = None) -> List[str]: + """ + Gets the docstrings of the current node and its parents up to a certain depth. + + Args: + depth (Optional[int], optional): + The depth up to which to retrieve the docstrings. + If this is None all docstrings of all parents are returned. + Defaults to None. + + Raises: + ValueError: If depth is not int or negativ. + + Returns: + List[str]: A list of docstrings one for each parent doc. + """ if depth is not None and depth < 0: raise ValueError("Depth must be a positive integer or None") @@ -169,6 +294,19 @@ def get_docstring(self, depth: Optional[int] = None) -> List[str]: return docstrings def add_node_from(self, xml_elem: ET._Element) -> Optional["NexusNode"]: + """ + Adds a children node to this node based on an xml element. + The appropriate subclass is chosen based on the xml tag. + + Args: + xml_elem (lxml.etree._Element): + The nxdl xml node. Defaults to None. + + Returns: + Optional["NexusNode"]: + The children node which was added. + None if the tag of the xml element is not known. + """ tag = remove_namespace_from_tag(xml_elem.tag) if tag in ("field", "attribute"): name = xml_elem.attrib.get("name") @@ -202,6 +340,17 @@ def add_node_from(self, xml_elem: ET._Element) -> Optional["NexusNode"]: return current_elem def add_inherited_node(self, name: str) -> Optional["NexusNode"]: + """ + Adds a children node to this node based on the inheritance chain of the node. + + Args: + name (str): The name of the node to add. + + Returns: + Optional["NexusNode"]: + The NexusNode which was added. + None if no matching subelement was found to add. + """ for elem in self.inheritance: xml_elem = elem.xpath( f"*[self::nx:field or self::nx:group or self::nx:attribute][@name='{name}']", @@ -211,16 +360,19 @@ def add_inherited_node(self, name: str) -> Optional["NexusNode"]: return self.add_node_from(xml_elem[0]) return None - def get_path_and_node(self) -> Tuple[str, List[ET._Element]]: - current_node = self - names: List[str] = [] - while current_node is not None and not isinstance(current_node, NexusGroup): - names.insert(0, current_node.name) - current_node = current_node.parent - return "/".join(names), current_node.inheritance - class NexusChoice(NexusNode): + """ + A representation of a NeXus choice. + It just collects children of the choice from which to choose one. + + Args: + type (Literal["choice"]): + Just ties this node to the choice tag in the nxdl file. + Should and cannot be manually altered. + Defaults to "choice". + """ + type: Literal["choice"] = "choice" def __init__(self, **data) -> None: @@ -230,9 +382,23 @@ def __init__(self, **data) -> None: class NexusGroup(NexusNode): + """ + A NexusGroup represents a group in the NeXus tree + adding the nx_class and occurrence_limits to the NexusNode. + + Args: + nx_class (str): + occurence_limits (Tuple[Optional[int], Optional[int]]): + Denotes the minimum and maximum number of occurrences of the group. + First element denotes the minimum, second one the maximum. + If the respective value is None, then there is no limit. + This is set automatically on init based on the values found in the nxdl file. + Defaults to (None, None). + """ + nx_class: str occurrence_limits: Tuple[ - # Use Annotated[int, Field(strict=True, ge=0)] for py>3.8 + # TODO: Use Annotated[int, Field(strict=True, ge=0)] for py>3.8 Optional[int], Optional[int], ] = (None, None) @@ -266,6 +432,41 @@ def __repr__(self) -> str: class NexusEntity(NexusNode): + """ + A NexusEntity represents a field or an attribute in the NeXus tree. + + Args: + type (Literal["field", "attribute"]): + The type of the entity is restricted to either a `field` or an `attribute`. + unit (Optional[NexusUnitCategory]): + The unit of the entity. + This is set automatically on init based on the values found in the nxdl file. + Also the base classes of these entities are considered. + Defaults to None. + dtype (NexusType): + The nxdl datatype of the entity. + This is set automatically on init based on the values found in the nxdl file. + Also the base classes of these entities are considered. + If it is not present in any of the xml nodes, it will be set to `NX_CHAR`. + Defaults to "NX_CHAR". + items (Optional[List[str]]): + This is a restriction of the field value to a list of items. + Only applies to nodes of dtype `NX_CHAR`. + This is set automatically on init based on the values found in the nxdl file. + Also the base classes of these entities are considered. + If there is no restriction this is set to None. + Defaults to None. + shape (Optional[Tuple[Optional[int], ...]]): + The shape of the entity as given by the dimensions tag. + This is set automatically on init based on the values found in the nxdl file. + Also the base classes of these entities are considered. + If there is no dimension present in any of the xml nodes, it will be set to None. + Contains None for unbounded dimensions. + Symbols in either the `rank` or `value` attribute are not considered + and result in an unbounded shape. + Defaults to None. + """ + type: Literal["field", "attribute"] unit: Optional[NexusUnitCategory] = None dtype: NexusType = "NX_CHAR" @@ -343,11 +544,36 @@ def __repr__(self) -> str: def generate_tree_from(appdef: str) -> NexusNode: + """ + Generates a NexusNode tree from an application definition. + NexusNode is based on anytree nodes and anytree's functions can be used + for displaying and traversal of the tree. + + Args: + appdef (str): The application definition name to generate the NexusNode tree from. + + Returns: + NexusNode: The tree representing the application definition. + """ + def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: + """ + This adds children from the `xml_elem` xml node to the NexusNode `parent` node. + This only considers `field`, `attribute`, `choice` and `group` xml tags + as children. + The function is recursivly called until no more children are found. + + Args: + parent (NexusNode): The NexusNode to attach the children to. + xml_elem (ET._Element): The xml node to get the children from. + """ current_elem = parent.add_node_from(xml_elem) for child in xml_elem.xpath( - r"*[self::nx:field or self::nx:group or self::nx:attribute]", + ( + r"*[self::nx:field or self::nx:group " + r"or self::nx:attribute or self::nx:choice]" + ), namespaces=namespaces, ): add_children_to(current_elem, child) diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index ca777d000..0a2defca7 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -36,7 +36,11 @@ def validate_hdf_group_against(appdef: str, data: h5py.Group): - """Checks whether all the required paths from the template are returned in data dict.""" + """ + Checks whether all the required paths from the template are returned in data dict. + + THIS IS JUST A FUNCTION SKELETON AND IS NOT WORKING YET! + """ def validate(name: str, data: Union[h5py.Group, h5py.Dataset]): # Namefit name against tree (use recursive caching) @@ -49,6 +53,21 @@ def validate(name: str, data: Union[h5py.Group, h5py.Dataset]): def build_nested_dict_from( mapping: Mapping[str, Any], ) -> Tuple[Mapping[str, Any], Mapping[str, Any]]: + """ + Creates a nested mapping from a `/` separated flat mapping. + It also converts data dict paths to HDF5 paths, i.e., + it converts the path `/ENTRY[my_entry]/TEST[test]` to `/my_entry/test`. + + Args: + mapping (Mapping[str, Any]): + The mapping to nest. + + Returns: + Tuple[Mapping[str, Any], Mapping[str, Any]]: + First element is the nested mapping. + Second element is the original dict in hdf5 path notation. + """ + # Based on # https://stackoverflow.com/questions/50607128/creating-a-nested-dictionary-from-a-flattened-dictionary def get_from(data_tree, map_list): @@ -82,6 +101,16 @@ def default_to_regular_dict(d): def best_namefit_of(name: str, keys: Iterable[str]) -> Optional[str]: + """ + Get the best namefit of `name` in `keys`. + + Args: + name (str): The name to fit against the keys. + keys (Iterable[str]): The keys to fit `name` against. + + Returns: + Optional[str]: The best fitting key. None if no fit was found. + """ if name in keys: return name @@ -97,6 +126,24 @@ def best_namefit_of(name: str, keys: Iterable[str]) -> Optional[str]: def validate_dict_against( appdef: str, mapping: Mapping[str, Any], ignore_undocumented: bool = False ) -> bool: + """ + Validates a mapping against the NeXus tree for applicationd definition `appdef`. + + Args: + appdef (str): The appdef name to validate against. + mapping (Mapping[str, Any]): + The mapping containing the data to validate. + This should be a dict of `/` separated paths. + Attributes are denoted with `@` in front of the last element. + ignore_undocumented (bool, optional): + Ignore all undocumented keys in the verification + and just check if the required fields are properly set. + Defaults to False. + + Returns: + bool: True if the mapping is valid according to `appdef`, False otherwise. + """ + def get_variations_of(node: NexusNode, keys: Mapping[str, Any]) -> List[str]: if not node.variadic and node.name in keys: return [node.name] diff --git a/tests/dataconverter/test_validation.py b/tests/dataconverter/test_validation.py index bff336153..dfb3f09e1 100644 --- a/tests/dataconverter/test_validation.py +++ b/tests/dataconverter/test_validation.py @@ -1,3 +1,21 @@ +# +# Copyright The pynxtools Authors. +# +# This file is part of pynxtools. +# See https://github.com/FAIRmat-NFDI/pynxtools for further info. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# import logging from typing import Any, Dict, List, Mapping, Tuple, Union From 6faab62d9f67c3f25359e5e56a94a561baa4e29e Mon Sep 17 00:00:00 2001 From: domna Date: Fri, 10 May 2024 16:46:55 +0200 Subject: [PATCH 45/76] Exchange template verification with tree verification --- pynxtools/dataconverter/convert.py | 59 +-- pynxtools/dataconverter/helpers.py | 366 +++--------------- pynxtools/dataconverter/nexus_tree.py | 14 +- .../dataconverter/readers/example/reader.py | 7 +- pynxtools/dataconverter/validation.py | 5 + .../readers/example/testdata.json | 9 +- .../readers/json_map/data.mapping.json | 23 +- tests/dataconverter/test_helpers.py | 62 +-- tests/dataconverter/test_readers.py | 20 +- tests/dataconverter/test_validation.py | 2 +- 10 files changed, 156 insertions(+), 411 deletions(-) diff --git a/pynxtools/dataconverter/convert.py b/pynxtools/dataconverter/convert.py index 211760e63..0f3969fdb 100644 --- a/pynxtools/dataconverter/convert.py +++ b/pynxtools/dataconverter/convert.py @@ -36,6 +36,7 @@ from pynxtools.dataconverter import helpers from pynxtools.dataconverter.readers.base.reader import BaseReader from pynxtools.dataconverter.template import Template +from pynxtools.dataconverter.validation import validate_dict_against from pynxtools.dataconverter.writer import Writer from pynxtools.nexus import nexus @@ -99,56 +100,6 @@ def get_names_of_all_readers() -> List[str]: return sorted(all_readers + plugins) -def get_nxdl_root_and_path(nxdl: str): - """Get xml root element and file path from nxdl name e.g. NXapm. - - Parameters - ---------- - nxdl: str - Name of nxdl file e.g. NXapm from NXapm.nxdl.xml. - - Returns - ------- - ET.root - Root element of nxdl file. - str - Path of nxdl file. - - Raises - ------ - FileNotFoundError - Error if no file with the given nxdl name is found. - """ - # Reading in the NXDL and generating a template - definitions_path = nexus.get_nexus_definitions_path() - if nxdl == "NXtest": - nxdl_f_path = os.path.join( - f"{os.path.abspath(os.path.dirname(__file__))}/../../", - "tests", - "data", - "dataconverter", - "NXtest.nxdl.xml", - ) - elif nxdl == "NXroot": - nxdl_f_path = os.path.join(definitions_path, "base_classes", "NXroot.nxdl.xml") - else: - nxdl_f_path = os.path.join( - definitions_path, "contributed_definitions", f"{nxdl}.nxdl.xml" - ) - if not os.path.exists(nxdl_f_path): - nxdl_f_path = os.path.join( - definitions_path, "applications", f"{nxdl}.nxdl.xml" - ) - if not os.path.exists(nxdl_f_path): - nxdl_f_path = os.path.join( - definitions_path, "base_classes", f"{nxdl}.nxdl.xml" - ) - if not os.path.exists(nxdl_f_path): - raise FileNotFoundError(f"The nxdl file, {nxdl}, was not found.") - - return ET.parse(nxdl_f_path).getroot(), nxdl_f_path - - def transfer_data_into_template( input_file, reader, @@ -182,7 +133,7 @@ def transfer_data_into_template( """ if nxdl_root is None: - nxdl_root, _ = get_nxdl_root_and_path(nxdl=nxdl_name) + nxdl_root, _ = helpers.get_nxdl_root_and_path(nxdl=nxdl_name) template = Template() helpers.generate_template_from_nxdl(nxdl_root, template) @@ -211,7 +162,7 @@ def transfer_data_into_template( for entry_name in entry_names: helpers.write_nexus_def_to_entry(data, entry_name, nxdl_name) if not skip_verify: - helpers.validate_data_dict(template, data, nxdl_root) + validate_dict_against(nxdl_name, data) return data @@ -254,7 +205,7 @@ def convert( None. """ - nxdl_root, nxdl_f_path = get_nxdl_root_and_path(nxdl) + nxdl_root, nxdl_f_path = helpers.get_nxdl_root_and_path(nxdl) data = transfer_data_into_template( input_file=input_file, @@ -474,7 +425,7 @@ def write_to_file(text): print_or_write = lambda txt: write_to_file(txt) if output else print(txt) - nxdl_root, nxdl_f_path = get_nxdl_root_and_path(nxdl) + nxdl_root, nxdl_f_path = helpers.get_nxdl_root_and_path(nxdl) template = Template() helpers.generate_template_from_nxdl(nxdl_root, template) diff --git a/pynxtools/dataconverter/helpers.py b/pynxtools/dataconverter/helpers.py index d94b8adf3..11c501f78 100644 --- a/pynxtools/dataconverter/helpers.py +++ b/pynxtools/dataconverter/helpers.py @@ -19,11 +19,12 @@ import json import logging +import os import re from datetime import datetime, timezone from enum import Enum from functools import lru_cache -from typing import Any, Callable, List, Optional, Set, Tuple, Union +from typing import Any, Callable, List, Optional, Tuple, Union import h5py import lxml.etree as ET @@ -31,10 +32,7 @@ from ase.data import chemical_symbols from pynxtools import get_nexus_version, get_nexus_version_hash -from pynxtools.dataconverter.template import Template -from pynxtools.definitions.dev_tools.utils.nxdl_utils import get_inherited_nodes from pynxtools.nexus import nexus -from pynxtools.nexus.nexus import NxdlAttributeNotFoundError logger = logging.getLogger(__name__) logger.setLevel(logging.INFO) @@ -43,19 +41,17 @@ class ValidationProblem(Enum): UnitWithoutDocumentation = 1 InvalidEnum = 2 - OptionalParentWithoutRequiredGroup = 3 - OptionalParentWithoutRequiredField = 4 - MissingRequiredGroup = 5 - MissingRequiredField = 6 - MissingRequiredAttribute = 7 - InvalidType = 8 - InvalidDatetime = 9 - IsNotPosInt = 10 - ExpectedGroup = 11 - MissingDocumentation = 12 - MissingUnit = 13 - ChoiceValidationError = 14 - UnitWithoutField = 15 + MissingRequiredGroup = 3 + MissingRequiredField = 4 + MissingRequiredAttribute = 5 + InvalidType = 6 + InvalidDatetime = 7 + IsNotPosInt = 8 + ExpectedGroup = 9 + MissingDocumentation = 10 + MissingUnit = 11 + ChoiceValidationError = 12 + UnitWithoutField = 13 class Collector: @@ -79,18 +75,6 @@ def _log(self, path: str, log_type: ValidationProblem, value: Optional[Any], *ar f"The value at {path} should be on of the " f"following strings: {value}" ) - elif log_type == ValidationProblem.OptionalParentWithoutRequiredGroup: - logger.warning( - f"The required group, {path}, hasn't been supplied" - f" while its optional parent, {value}, is supplied." - ) - elif log_type == ValidationProblem.OptionalParentWithoutRequiredField: - logger.warning( - f"The data entry, {path}, has an optional parent, " - f"{value}, with required children set. Either" - f" provide no children for {value} or provide" - f" all required ones." - ) elif log_type == ValidationProblem.MissingRequiredGroup: logger.warning(f"The required group, {path}, hasn't been supplied.") elif log_type == ValidationProblem.MissingRequiredField: @@ -173,6 +157,56 @@ def get_nxdl_name_from_elem(xml_element) -> str: return name_to_add +def get_nxdl_root_and_path(nxdl: str): + """Get xml root element and file path from nxdl name e.g. NXapm. + + Parameters + ---------- + nxdl: str + Name of nxdl file e.g. NXapm from NXapm.nxdl.xml. + + Returns + ------- + ET.root + Root element of nxdl file. + str + Path of nxdl file. + + Raises + ------ + FileNotFoundError + Error if no file with the given nxdl name is found. + """ + # Reading in the NXDL and generating a template + definitions_path = nexus.get_nexus_definitions_path() + if nxdl == "NXtest": + nxdl_f_path = os.path.join( + f"{os.path.abspath(os.path.dirname(__file__))}/../../", + "tests", + "data", + "dataconverter", + "NXtest.nxdl.xml", + ) + elif nxdl == "NXroot": + nxdl_f_path = os.path.join(definitions_path, "base_classes", "NXroot.nxdl.xml") + else: + nxdl_f_path = os.path.join( + definitions_path, "contributed_definitions", f"{nxdl}.nxdl.xml" + ) + if not os.path.exists(nxdl_f_path): + nxdl_f_path = os.path.join( + definitions_path, "applications", f"{nxdl}.nxdl.xml" + ) + if not os.path.exists(nxdl_f_path): + nxdl_f_path = os.path.join( + definitions_path, "base_classes", f"{nxdl}.nxdl.xml" + ) + if not os.path.exists(nxdl_f_path): + raise FileNotFoundError(f"The nxdl file, {nxdl}, was not found.") + + return ET.parse(nxdl_f_path).getroot(), nxdl_f_path + + def get_all_defined_required_children_for_elem(xml_element): """Gets all possible inherited required children for a given NXDL element""" list_of_children_to_add = set() @@ -589,27 +623,6 @@ def is_nxdl_path_a_child(nxdl_path: str, parent: str): return False -def check_optionality_based_on_parent_group(path, nxdl_path, nxdl_root, data, template): - """Checks whether field is part of an optional parent and then confirms its optionality""" - - def trim_path_to(parent: str, path: str): - count = len(parent.split("/")) - return "/".join(path.split("/")[:count]) - - for optional_parent in template["optional_parents"]: - optional_parent_nxdl = convert_data_converter_dict_to_nxdl_path(optional_parent) - if is_nxdl_path_a_child( - nxdl_path, optional_parent_nxdl - ) and not all_required_children_are_set( - trim_path_to(optional_parent, path), data, nxdl_root - ): - collector.collect_and_log( - path, - ValidationProblem.OptionalParentWithoutRequiredField, - optional_parent, - ) - - def is_group_part_of_path(path_to_group: str, path_of_entry: str) -> bool: """Returns true if a group is contained in a path""" @@ -645,259 +658,6 @@ def get_concept_basepath(path: str) -> str: return "/" + "/".join(concept_path) -def ensure_all_required_fields_exist_in_variadic_groups( - template: Template, data: Template, check_basepaths: Set[str] -): - """ - Checks whether all required fields (according to `template`) - in `data` are present in their respective - variadic groups given by `check_basepaths`. - - Args: - template (Template): The template to use as reference. - data (Template): The template containing the actual data - check_basepaths (Set[str]): - A set of basepaths of the form /ENTRY/MY_GROUP to check for missing fields. - All groups matching the basepath will be checked for missing fields. - """ - - @lru_cache(maxsize=None) - def get_required_fields_from(base_path: str) -> Set[str]: - required_fields = set() - for path in template["required"]: - if ( - get_concept_basepath(convert_data_converter_dict_to_nxdl_path(path)) - == base_path - ): - entry_name = get_name_from_data_dict_entry(path[path.rindex("/") + 1 :]) - if entry_name == "@units": - required_fields.add(f"{path.rsplit('/', 2)[1]}/@units") - continue - required_fields.add( - get_name_from_data_dict_entry(path[path.rindex("/") + 1 :]) - ) - - return required_fields - - @lru_cache(maxsize=None) - def get_concept_variations(base_path: str) -> Set[str]: - paths = set() - for path in data: - if ( - get_concept_basepath(convert_data_converter_dict_to_nxdl_path(path)) - == base_path - ): - paths.add(get_concept_basepath(path)) - return paths - - @lru_cache(maxsize=None) - def are_all_entries_none(path: str) -> bool: - concept_path = get_concept_basepath(path) - for key in filter(lambda x: x.startswith(concept_path), data): - if data[key] is not None: - return False - return True - - for base_path in check_basepaths: - all_fields_are_none = True - for path in get_concept_variations(base_path): - count = 0 - for required_field in get_required_fields_from(base_path): - if ( - f"{path}/{required_field}" not in data - or data[f"{path}/{required_field}"] is None - ): - missing_field = f"{path}/{required_field}" - count += 1 - if not are_all_entries_none(missing_field): - count -= 1 - collector.collect_and_log( - missing_field, ValidationProblem.MissingRequiredField, None - ) - - if count == 0: - # There are either no required fields, all required fields are set, - # or the missing fields already have been reported. - all_fields_are_none = False - - if all_fields_are_none: - # All entries in all variadic groups are None - generic_dict_path = "/" + "/".join( - map(lambda path: f"{path}[{path.lower()}]", base_path.split("/")[1:]) - ) - collector.collect_and_log( - generic_dict_path, ValidationProblem.MissingRequiredGroup, None - ) - - -def ensure_all_required_fields_exist(template, data, nxdl_root): - """Checks whether all the required fields are in the returned data object.""" - check_basepaths = set() - for path in template["required"]: - entry_name = get_name_from_data_dict_entry(path[path.rindex("/") + 1 :]) - if entry_name == "@units": - continue - nxdl_path = convert_data_converter_dict_to_nxdl_path(path) - renamed_paths = path_in_data_dict(nxdl_path, tuple(data.keys())) - - if len(renamed_paths) > 1: - check_basepaths.add(get_concept_basepath(nxdl_path)) - continue - - if not renamed_paths: - renamed_path = path - else: - renamed_path = renamed_paths[0] - - if path in template["lone_groups"]: - opt_parent = check_for_optional_parent(path, nxdl_root) - if opt_parent != "<>": - if does_group_exist(opt_parent, data) and not does_group_exist( - renamed_path, data - ): - collector.collect_and_log( - renamed_path, - ValidationProblem.OptionalParentWithoutRequiredGroup, - opt_parent, - ) - continue - if not does_group_exist(renamed_path, data): - collector.collect_and_log( - path, - ValidationProblem.MissingRequiredGroup, - None, - ) - continue - continue - if data[renamed_path] is None: - collector.collect_and_log( - renamed_path, ValidationProblem.MissingRequiredField, None - ) - - ensure_all_required_fields_exist_in_variadic_groups(template, data, check_basepaths) - - -def try_undocumented(data, nxdl_root: ET._Element): - """Tries to move entries used that are from base classes but not in AppDef""" - for path in list(data.undocumented): - entry_name = get_name_from_data_dict_entry(path[path.rindex("/") + 1 :]) - - nxdl_path = convert_data_converter_dict_to_nxdl_path(path) - - if entry_name == "@units": - field_path = path.rsplit("/", 1)[0] - if field_path in data.get_documented() and path in data.undocumented: - field_requiredness = get_required_string( - nexus.get_node_at_nxdl_path( - nxdl_path=convert_data_converter_dict_to_nxdl_path(field_path), - elem=nxdl_root, - ) - ) - data[field_requiredness][path] = data.undocumented[path] - del data.undocumented[path] - continue - - if entry_name[0] == "@" and "@" in nxdl_path: - index_of_at = nxdl_path.rindex("@") - nxdl_path = nxdl_path[0:index_of_at] + nxdl_path[index_of_at + 1 :] - - try: - elem = nexus.get_node_at_nxdl_path(nxdl_path=nxdl_path, elem=nxdl_root) - optionality = get_required_string(elem) - data[optionality][path] = data.undocumented[path] - del data.undocumented[path] - units = f"{path}/@units" - if units in data.undocumented: - data[optionality][units] = data.undocumented[units] - del data.undocumented[units] - except NxdlAttributeNotFoundError: - pass - - -def validate_data_dict(template, data, nxdl_root: ET._Element): - """Checks whether all the required paths from the template are returned in data dict.""" - assert nxdl_root is not None, "The NXDL file hasn't been loaded." - collector.clear() - - @lru_cache(maxsize=None) - def get_xml_node(nxdl_path: str) -> ET._Element: - return nexus.get_node_at_nxdl_path(nxdl_path=nxdl_path, elem=nxdl_root) - - # Make sure all required fields exist. - ensure_all_required_fields_exist(template, data, nxdl_root) - try_undocumented(data, nxdl_root) - - for path in data.get_documented().keys(): - if data[path] is not None: - entry_name = get_name_from_data_dict_entry(path[path.rindex("/") + 1 :]) - nxdl_path = convert_data_converter_dict_to_nxdl_path(path) - - if entry_name[0] == "@" and "@" in nxdl_path: - index_of_at = nxdl_path.rindex("@") - nxdl_path = nxdl_path[0:index_of_at] + nxdl_path[index_of_at + 1 :] - - if entry_name == "@units": - elempath = get_inherited_nodes(nxdl_path, None, nxdl_root)[1] - elem = elempath[-2] - field_path = path.rsplit("/", 1)[0] - if ( - field_path not in data.get_documented() - and "units" not in elem.attrib - ): - collector.collect_and_log( - path, ValidationProblem.UnitWithoutDocumentation, data[path] - ) - continue - - # TODO: If we want we could also enable unit validation here - # field = nexus.get_node_at_nxdl_path( - # nxdl_path=convert_data_converter_dict_to_nxdl_path( - # # The part below is the backwards compatible version of - # # nxdl_path.removesuffix("/units") - # nxdl_path[:-6] if nxdl_path.endswith("/units") else nxdl_path - # ), - # elem=nxdl_root, - # ) - # nxdl_unit = field.attrib.get("units", "") - # if not is_valid_unit(data[path], nxdl_unit): - # raise ValueError( - # f"Invalid unit in {path}. {data[path]} " - # f"is not in unit category {nxdl_unit}" - # ) - continue - - elem = get_xml_node(nxdl_path) - - # Only check for validation in the NXDL if we did find the entry - # otherwise we just pass it along - if ( - elem is not None - and elem.attrib.get("name") == entry_name - and remove_namespace_from_tag(elem.tag) in ("field", "attribute") - ): - check_optionality_based_on_parent_group( - path, nxdl_path, nxdl_root, data, template - ) - - attrib = elem.attrib - nxdl_type = ( - attrib["type"] - if "type" in attrib.keys() - else "NXDL_TYPE_UNAVAILABLE" - ) - data[path] = is_valid_data_field(data[path], nxdl_type, path) - elist = nexus.get_inherited_nodes( - nxdl_path, path.rsplit("/", 1)[-1], nxdl_root - )[2] - is_valid_enum, enums = is_value_valid_element_of_enum(data[path], elist) - if not is_valid_enum: - collector.collect_and_log( - path, ValidationProblem.InvalidEnum, enums - ) - - return not collector.has_validation_problems() - - def remove_namespace_from_tag(tag): """Helper function to remove the namespace from an XML tag.""" diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index 54f4c4e30..3242cebfe 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -35,9 +35,9 @@ from anytree.node.nodemixin import NodeMixin from pydantic import BaseModel, InstanceOf -from pynxtools.dataconverter.convert import get_nxdl_root_and_path from pynxtools.dataconverter.helpers import ( contains_uppercase, + get_nxdl_root_and_path, remove_namespace_from_tag, ) from pynxtools.definitions.dev_tools.utils.nxdl_utils import get_inherited_nodes @@ -356,6 +356,12 @@ def add_inherited_node(self, name: str) -> Optional["NexusNode"]: f"*[self::nx:field or self::nx:group or self::nx:attribute][@name='{name}']", namespaces=namespaces, ) + if not xml_elem: + # Find group by naming convention + xml_elem = elem.xpath( + f"*[self::nx:group][@type='NX{name.lower()}']", + namespaces=namespaces, + ) if xml_elem: return self.add_node_from(xml_elem[0]) return None @@ -591,6 +597,12 @@ def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: parent=None, inheritance=get_inherited_nodes("", elem=appdef_xml_root)[2], ) + # Set root attributes + nx_root, _ = get_nxdl_root_and_path("NXroot") + for root_attrib in nx_root.findall("nx:attribute", namespaces=namespaces): + child = tree.add_node_from(root_attrib) + child.optionality = "optional" + entry = appdef_xml_root.find("nx:group[@type='NXentry']", namespaces=namespaces) add_children_to(tree, entry) diff --git a/pynxtools/dataconverter/readers/example/reader.py b/pynxtools/dataconverter/readers/example/reader.py index 44ff6ace6..4f492aed8 100644 --- a/pynxtools/dataconverter/readers/example/reader.py +++ b/pynxtools/dataconverter/readers/example/reader.py @@ -66,15 +66,12 @@ def read( field_name = k[k.rfind("/") + 1 :] if field_name != "@units": template[k] = data[field_name] - if ( - f"{field_name}_units" in data.keys() - and f"{k}/@units" in template.keys() - ): + if f"{field_name}_units" in data.keys(): template[f"{k}/@units"] = data[f"{field_name}_units"] template["required"]["/ENTRY[entry]/optional_parent/required_child"] = 1 template["optional"][ - ("/ENTRY[entry]/optional_parent/" "req_group_in_opt_group/DATA[data]") + "/ENTRY[entry]/optional_parent/req_group_in_opt_group/DATA[data]" ] = [0, 1] # Add non template key diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index 0a2defca7..e8f73ed06 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -89,6 +89,9 @@ def default_to_regular_dict(d): # iterate input dictionary hdf_path_mapping = {} for k, v in mapping.items(): + print(f"{k}: {v}") + if v is None: + continue hdf_path_mapping[convert_data_dict_path_to_hdf5_path(k)] = v _, *keys, final_key = ( convert_data_dict_path_to_hdf5_path(k).replace("/@", "@").split("/") @@ -111,6 +114,8 @@ def best_namefit_of(name: str, keys: Iterable[str]) -> Optional[str]: Returns: Optional[str]: The best fitting key. None if no fit was found. """ + if not keys: + return None if name in keys: return name diff --git a/tests/data/dataconverter/readers/example/testdata.json b/tests/data/dataconverter/readers/example/testdata.json index 114e38cf2..21deb40c3 100644 --- a/tests/data/dataconverter/readers/example/testdata.json +++ b/tests/data/dataconverter/readers/example/testdata.json @@ -1,17 +1,20 @@ { "bool_value": true, + "bool_value_units": "", "char_value": "A random string!", + "char_value_units": "", "float_value": 0.1, - "float_value_units": "Units are always strings.", + "float_value_units": "nm", "int_value": -3, - "int_value_units": "m/s^2", + "int_value_units": "eV", "posint_value": 7, - "posint_value_units": "V", + "posint_value_units": "kg", "definition": "NXtest", "definition_version": "0.0.1", "program_name": "Nexus Parser", "type": "2nd type", "date_value": "2022-01-22T12:14:12.05018+00:00", + "date_value_units": "", "required_child": 1, "optional_child": 1, "@version": "1.0" diff --git a/tests/data/dataconverter/readers/json_map/data.mapping.json b/tests/data/dataconverter/readers/json_map/data.mapping.json index 055b0977e..4284b92ca 100644 --- a/tests/data/dataconverter/readers/json_map/data.mapping.json +++ b/tests/data/dataconverter/readers/json_map/data.mapping.json @@ -1,14 +1,17 @@ { - "/ENTRY[entry]/NXODD_name/bool_value": "/a_level_down/bool_value", - "/ENTRY[entry]/NXODD_name/char_value": "/a_level_down/char_value", - "/ENTRY[entry]/NXODD_name/date_value": "/date_value", - "/ENTRY[entry]/NXODD_name/float_value": "/a_level_down/float_value", - "/ENTRY[entry]/NXODD_name/float_value/@units": "/a_level_down/float_value_units", - "/ENTRY[entry]/NXODD_name/int_value": "/a_level_down/int_value", - "/ENTRY[entry]/NXODD_name/int_value/@units": "/a_level_down/another_level_down/int_value_units", - "/ENTRY[entry]/NXODD_name/posint_value": "/a_level_down/another_level_down/posint_value", - "/ENTRY[entry]/NXODD_name/posint_value/@units": "/posint_value_units", - "/ENTRY[entry]/NXODD_name/type": "/type", + "/ENTRY[entry]/NXODD_name[nxodd_name]/bool_value": "/a_level_down/bool_value", + "/ENTRY[entry]/NXODD_name[nxodd_name]/bool_value/@units": "", + "/ENTRY[entry]/NXODD_name[nxodd_name]/char_value": "/a_level_down/char_value", + "/ENTRY[entry]/NXODD_name[nxodd_name]/char_value/@units": "", + "/ENTRY[entry]/NXODD_name[nxodd_name]/date_value": "/date_value", + "/ENTRY[entry]/NXODD_name[nxodd_name]/date_value/@units": "", + "/ENTRY[entry]/NXODD_name[nxodd_name]/float_value": "/a_level_down/float_value", + "/ENTRY[entry]/NXODD_name[nxodd_name]/float_value/@units": "/a_level_down/float_value_units", + "/ENTRY[entry]/NXODD_name[nxodd_name]/int_value": "/a_level_down/int_value", + "/ENTRY[entry]/NXODD_name[nxodd_name]/int_value/@units": "/a_level_down/another_level_down/int_value_units", + "/ENTRY[entry]/NXODD_name[nxodd_name]/posint_value": "/a_level_down/another_level_down/posint_value", + "/ENTRY[entry]/NXODD_name[nxodd_name]/posint_value/@units": "/posint_value_units", + "/ENTRY[entry]/NXODD_name[nxodd_name]/type": "/type", "/ENTRY[entry]/definition": "/definition", "/ENTRY[entry]/definition/@version": "/definition_version", "/ENTRY[entry]/optional_parent/optional_child": { diff --git a/tests/dataconverter/test_helpers.py b/tests/dataconverter/test_helpers.py index 0fd68a996..19f6097e7 100644 --- a/tests/dataconverter/test_helpers.py +++ b/tests/dataconverter/test_helpers.py @@ -199,6 +199,7 @@ def fixture_filled_test_data(template, tmp_path): TEMPLATE["optional"]["/ENTRY[my_entry]/optional_parent/required_child"] = 1 # pylint: disable=E1126 TEMPLATE["optional"]["/ENTRY[my_entry]/optional_parent/optional_child"] = 1 # pylint: disable=E1126 TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/bool_value"] = True # pylint: disable=E1126 +TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/bool_value/@units"] = "" TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/int_value"] = 2 # pylint: disable=E1126 TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/int_value/@units"] = "eV" # pylint: disable=E1126 TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/posint_value"] = np.array( @@ -211,7 +212,11 @@ def fixture_filled_test_data(template, tmp_path): TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/char_value"] = ( "just chars" # pylint: disable=E1126 ) +TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/char_value/@units"] = "" TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_two_name]/bool_value"] = True # pylint: disable=E1126 +TEMPLATE["required"][ + "/ENTRY[my_entry]/NXODD_name[nxodd_two_name]/bool_value/@units" +] = "" TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_two_name]/int_value"] = 2 # pylint: disable=E1126 TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_two_name]/int_value/@units"] = ( "eV" # pylint: disable=E1126 @@ -228,10 +233,16 @@ def fixture_filled_test_data(template, tmp_path): TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_two_name]/char_value"] = ( "just chars" # pylint: disable=E1126 ) +TEMPLATE["required"][ + "/ENTRY[my_entry]/NXODD_name[nxodd_two_name]/char_value/@units" +] = "" TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_two_name]/type"] = "2nd type" # pylint: disable=E1126 TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_two_name]/date_value"] = ( "2022-01-22T12:14:12.05018+00:00" # pylint: disable=E1126 ) +TEMPLATE["required"][ + "/ENTRY[my_entry]/NXODD_name[nxodd_two_name]/date_value/@units" +] = "" TEMPLATE["required"]["/ENTRY[my_entry]/OPTIONAL_group[my_group]/required_field"] = 1 # pylint: disable=E1126 TEMPLATE["required"]["/ENTRY[my_entry]/definition"] = "NXtest" # pylint: disable=E1126 TEMPLATE["required"]["/ENTRY[my_entry]/definition/@version"] = "2.4.6" # pylint: disable=E1126 @@ -240,6 +251,7 @@ def fixture_filled_test_data(template, tmp_path): TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/date_value"] = ( "2022-01-22T12:14:12.05018+00:00" # pylint: disable=E1126 ) +TEMPLATE["required"]["/ENTRY[my_entry]/NXODD_name[nxodd_name]/date_value/@units"] = "" TEMPLATE["optional"]["/ENTRY[my_entry]/OPTIONAL_group[my_group]/optional_field"] = 1 TEMPLATE["optional"]["/ENTRY[my_entry]/required_group/description"] = ( "An example description" @@ -269,7 +281,7 @@ def fixture_filled_test_data(template, tmp_path): "not_a_num", ), ( - "The value at /ENTRY[my_entry]/NXODD_name[nxodd_name]/in" + "The value at /my_entry/nxodd_name/in" "t_value should be one of: (, , )," " as defined in the NXDL as NX_INT." @@ -283,7 +295,7 @@ def fixture_filled_test_data(template, tmp_path): "NOT_TRUE_OR_FALSE", ), ( - "The value at /ENTRY[my_entry]/NXODD_name[nxodd_name]/bool_value sh" + "The value at /my_entry/nxodd_name/bool_value sh" "ould be one of: (, , ), as defined in the NXDL as NX_BOOLEAN." ), @@ -292,7 +304,7 @@ def fixture_filled_test_data(template, tmp_path): pytest.param( alter_dict( TEMPLATE, - "/ENTRY[my_entry]/NXODD_name[nxodd_name]/int_value", + "/my_entry/nxodd_name/int_value", {"link": "/a-link"}, ), (""), @@ -303,7 +315,7 @@ def fixture_filled_test_data(template, tmp_path): TEMPLATE, "/ENTRY[my_entry]/NXODD_name[nxodd_name]/posint_value", -1 ), ( - "The value at /ENTRY[my_entry]/NXODD_name[nxodd_name]/posint_value " + "The value at /my_entry/nxodd_name/posint_value " "should be a positive int, but is -1." ), id="negative-posint", @@ -333,7 +345,7 @@ def fixture_filled_test_data(template, tmp_path): "required", ), ( - "The data entry corresponding to /ENTRY[my_entry]/NXODD_name[nxodd_name]/bool_value is" + "The data entry corresponding to /my_entry/nxodd_name/bool_value is" " required and hasn't been supplied by the reader." ), id="empty-required-field", @@ -345,7 +357,7 @@ def fixture_filled_test_data(template, tmp_path): "required", ), ( - "The data entry corresponding to /ENTRY[my_entry]/NXODD_name[nxodd_two_name]/bool_value is" + "The data entry corresponding to /my_entry/nxodd_two_name/bool_value is" " required and hasn't been supplied by the reader." ), id="empty-required-field", @@ -361,7 +373,7 @@ def fixture_filled_test_data(template, tmp_path): "required", ), ( - "The data entry corresponding to /ENTRY[entry]/NXODD_name[nxodd_name]/bool_value is" + "The data entry corresponding to /my_entry/nxodd_name/bool_value is" " required and hasn't been supplied by the reader." ), id="empty-required-field", @@ -376,9 +388,7 @@ def fixture_filled_test_data(template, tmp_path): "/ENTRY[my_entry]/NXODD_name", "optional", ), - ( - "The required group, /ENTRY[entry]/NXODD_name[nxodd_name], hasn't been supplied." - ), + ("The required group, /my_entry/NXODD_name, hasn't been supplied."), id="all-required-fields-set-to-none", ), pytest.param( @@ -405,7 +415,7 @@ def fixture_filled_test_data(template, tmp_path): "/ENTRY[my_entry]/NXODD_name[nxodd_name]/date_value", "2022-01-22T12:14:12.05018-00:00", ), - "The value at /ENTRY[my_entry]/NXODD_name[nxodd_name]/date_value" + "The value at /my_entry/nxodd_name/date_value" " = 2022-01-22T12:14:12.05018-00:00 should be a timezone aware" " ISO8601 formatted str. For example, 2022-01-22T12:14:12.05018Z or 2022-01-22" "T12:14:12.05018+00:00.", @@ -417,7 +427,7 @@ def fixture_filled_test_data(template, tmp_path): TEMPLATE, "/ENTRY[my_entry]/NXODD_name[nxodd_name]/type", "Wrong option" ), ( - "The value at /ENTRY[my_entry]/NXODD_name[nxodd_name]/type should be on of the following" + "The value at /my_entry/nxodd_name/type should be on of the following" " strings: ['1st type', '2nd type', '3rd type', '4th type']" ), id="wrong-enum-choice", @@ -427,10 +437,8 @@ def fixture_filled_test_data(template, tmp_path): TEMPLATE, "/ENTRY[my_entry]/optional_parent/required_child", "optional" ), ( - "The data entry, /ENTRY[my_entry]/optional_parent/optional_child, has an " - "optional parent, /ENTRY[entry]/optional_parent, with required children set" - ". Either provide no children for /ENTRY[entry]/optional_parent or provide " - "all required ones." + "The data entry corresponding to /my_entry/optional_parent/" + "required_child is required and hasn't been supplied by the reader." ), id="atleast-one-required-child-not-provided-optional-parent", ), @@ -441,10 +449,8 @@ def fixture_filled_test_data(template, tmp_path): "required", ), ( - "The data entry, /ENTRY[my_entry]/OPTIONAL_group[my_group]/optional_field, has an " - "optional parent, /ENTRY[entry]/OPTIONAL_group[optional_group], with required children set" - ". Either provide no children for /ENTRY[entry]/OPTIONAL_group[optional_group] or provide " - "all required ones." + "The data entry corresponding to /my_entry/my_group/required_field " + "is required and hasn't been supplied by the reader." ), id="required-field-not-provided-in-variadic-optional-group", ), @@ -471,12 +477,12 @@ def fixture_filled_test_data(template, tmp_path): pytest.param(TEMPLATE, "", id="valid-data-dict"), pytest.param( remove_from_dict(TEMPLATE, "/ENTRY[my_entry]/required_group/description"), - "The required group, /ENTRY[entry]/required_group, hasn't been supplied.", + "The required group, /my_entry/required_group, hasn't been supplied.", id="missing-empty-yet-required-group", ), pytest.param( remove_from_dict(TEMPLATE, "/ENTRY[my_entry]/required_group2/description"), - "The required group, /ENTRY[entry]/required_group2, hasn't been supplied.", + "The required group, /my_entry/required_group2, hasn't been supplied.", id="missing-empty-yet-required-group2", ), pytest.param( @@ -487,7 +493,7 @@ def fixture_filled_test_data(template, tmp_path): "/ENTRY[entry]/required_group", None, ), - "The required group, /ENTRY[entry]/required_group, hasn't been supplied.", + "The required group, /my_entry/required_group, hasn't been supplied.", id="allow-required-and-empty-group", ), pytest.param( @@ -497,8 +503,8 @@ def fixture_filled_test_data(template, tmp_path): "required", ), ( - "The required group, /ENTRY[entry]/optional_parent/req_group_in_opt_group, hasn't been " - "supplied while its optional parent, /ENTRY[entry]/optional_parent, is supplied." + "The required group, /my_entry/optional_parent/req_group_in_opt_group, " + "hasn't been supplied." ), id="req-group-in-opt-parent-removed", ), @@ -524,7 +530,7 @@ def test_validate_data_dict( "required-field-provided-in-variadic-optional-group", ): with caplog.at_level(logging.WARNING): - assert helpers.validate_data_dict(template, data_dict, nxdl_root) + assert validate_dict_against("NXtest", data_dict) assert caplog.text == "" # Missing required fields caught by logger with warning elif request.node.callspec.id in ( @@ -536,11 +542,11 @@ def test_validate_data_dict( ): assert "" == caplog.text captured_logs = caplog.records - assert not helpers.validate_data_dict(template, data_dict, nxdl_root) + assert not validate_dict_against("NXtest", data_dict) assert any(error_message in rec.message for rec in captured_logs) else: with caplog.at_level(logging.WARNING): - assert not helpers.validate_data_dict(template, data_dict, nxdl_root) + assert not validate_dict_against("NXtest", data_dict) assert error_message in caplog.text diff --git a/tests/dataconverter/test_readers.py b/tests/dataconverter/test_readers.py index 9ba17f4fb..52c78bacb 100644 --- a/tests/dataconverter/test_readers.py +++ b/tests/dataconverter/test_readers.py @@ -18,6 +18,7 @@ """Test cases for readers used for the DataConverter""" import glob +import logging import os import xml.etree.ElementTree as ET from typing import List @@ -26,12 +27,10 @@ from _pytest.mark.structures import ParameterSet from pynxtools.dataconverter.convert import get_names_of_all_readers, get_reader -from pynxtools.dataconverter.helpers import ( - generate_template_from_nxdl, - validate_data_dict, -) +from pynxtools.dataconverter.helpers import generate_template_from_nxdl from pynxtools.dataconverter.readers.base.reader import BaseReader from pynxtools.dataconverter.template import Template +from pynxtools.dataconverter.validation import validate_dict_against def get_reader_name_from_reader_object(reader) -> str: @@ -79,7 +78,7 @@ def test_if_readers_are_children_of_base_reader(reader): @pytest.mark.parametrize("reader", get_all_readers()) -def test_has_correct_read_func(reader): +def test_has_correct_read_func(reader, caplog): """Test if all readers have a valid read function implemented""" assert callable(reader.read) if reader.__name__ not in ["BaseReader"]: @@ -115,5 +114,14 @@ def test_has_correct_read_func(reader): template=Template(template), file_paths=tuple(input_files) ) + if supported_nxdl == "*": + supported_nxdl = "NXtest" + assert isinstance(read_data, Template) - assert validate_data_dict(template, read_data, root) + + # This is a temporary fix because the json_yml example data + # does not produce a valid entry. + if not reader_name == "json_yml": + assert validate_dict_against( + supported_nxdl, read_data, ignore_undocumented=True + ) diff --git a/tests/dataconverter/test_validation.py b/tests/dataconverter/test_validation.py index dfb3f09e1..8f974d36f 100644 --- a/tests/dataconverter/test_validation.py +++ b/tests/dataconverter/test_validation.py @@ -17,7 +17,7 @@ # limitations under the License. # import logging -from typing import Any, Dict, List, Mapping, Tuple, Union +from typing import Any, Dict, List, Tuple, Union import numpy as np import pytest From a980d03dc099873c1217be4829afe8f15e33d1ea Mon Sep 17 00:00:00 2001 From: domna Date: Fri, 10 May 2024 16:53:42 +0200 Subject: [PATCH 46/76] Cleanup --- tests/dataconverter/test_helpers.py | 11 +---------- tests/dataconverter/test_readers.py | 3 +-- 2 files changed, 2 insertions(+), 12 deletions(-) diff --git a/tests/dataconverter/test_helpers.py b/tests/dataconverter/test_helpers.py index 19f6097e7..2413565f2 100644 --- a/tests/dataconverter/test_helpers.py +++ b/tests/dataconverter/test_helpers.py @@ -130,13 +130,6 @@ def test_transform_to_intended_dt(input_data, expected_output): assert result == expected_output -@pytest.fixture(name="nxdl_root") -def fixture_nxdl_root(): - """pytest fixture to load the same NXDL file for all tests.""" - nxdl_file = os.path.join("tests", "data", "dataconverter", "NXtest.nxdl.xml") - return ET.parse(nxdl_file).getroot() - - @pytest.fixture(name="template") def fixture_template(): """pytest fixture to use the same template in all tests""" @@ -513,9 +506,7 @@ def fixture_filled_test_data(template, tmp_path): ), ], ) -def test_validate_data_dict( - caplog, data_dict, error_message, template, nxdl_root, request -): +def test_validate_data_dict(caplog, data_dict, error_message, request): """Unit test for the data validation routine.""" if request.node.callspec.id in ( "valid-data-dict", diff --git a/tests/dataconverter/test_readers.py b/tests/dataconverter/test_readers.py index 52c78bacb..298066f1e 100644 --- a/tests/dataconverter/test_readers.py +++ b/tests/dataconverter/test_readers.py @@ -18,7 +18,6 @@ """Test cases for readers used for the DataConverter""" import glob -import logging import os import xml.etree.ElementTree as ET from typing import List @@ -78,7 +77,7 @@ def test_if_readers_are_children_of_base_reader(reader): @pytest.mark.parametrize("reader", get_all_readers()) -def test_has_correct_read_func(reader, caplog): +def test_has_correct_read_func(reader): """Test if all readers have a valid read function implemented""" assert callable(reader.read) if reader.__name__ not in ["BaseReader"]: From 292dd80ba10b3375208d1a836dfeaff2164e2516 Mon Sep 17 00:00:00 2001 From: domna Date: Fri, 10 May 2024 17:04:47 +0200 Subject: [PATCH 47/76] Remove debugging print --- pynxtools/dataconverter/validation.py | 1 - 1 file changed, 1 deletion(-) diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index e8f73ed06..8507468e0 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -89,7 +89,6 @@ def default_to_regular_dict(d): # iterate input dictionary hdf_path_mapping = {} for k, v in mapping.items(): - print(f"{k}: {v}") if v is None: continue hdf_path_mapping[convert_data_dict_path_to_hdf5_path(k)] = v From 5c167539706f820b12de64a46961fd3580ff84ff Mon Sep 17 00:00:00 2001 From: domna Date: Sat, 11 May 2024 22:38:15 +0200 Subject: [PATCH 48/76] Fixes while testing against real life examples --- pynxtools/dataconverter/helpers.py | 10 +- pynxtools/dataconverter/validation.py | 176 +++++++++++++++++++------ tests/dataconverter/test_helpers.py | 38 +++--- tests/dataconverter/test_validation.py | 4 +- 4 files changed, 167 insertions(+), 61 deletions(-) diff --git a/pynxtools/dataconverter/helpers.py b/pynxtools/dataconverter/helpers.py index 11c501f78..656d88fd6 100644 --- a/pynxtools/dataconverter/helpers.py +++ b/pynxtools/dataconverter/helpers.py @@ -52,6 +52,7 @@ class ValidationProblem(Enum): MissingUnit = 11 ChoiceValidationError = 12 UnitWithoutField = 13 + AttributeForNonExistingField = 14 class Collector: @@ -111,6 +112,11 @@ def _log(self, path: str, log_type: ValidationProblem, value: Optional[Any], *ar logger.warning(f'Missing attribute: "{path}"') elif log_type == ValidationProblem.UnitWithoutField: logger.warning(f"Unit {path} in dataset without its field {value}") + elif log_type == ValidationProblem.AttributeForNonExistingField: + logger.warning( + f"There were attributes set for the field {path}, " + "but the field does not exist." + ) def collect_and_log(self, path: str, *args, **kwargs): """Inserts a path into the data dictionary and logs the action.""" @@ -517,7 +523,7 @@ def convert_str_to_bool_safe(value): return None -def is_valid_data_field(value, nxdl_type, path): +def is_valid_data_field(value, nxdl_type, path) -> bool: """Checks whether a given value is valid according to what is defined in the NXDL. This function will also try to convert typical types, for example int to float, @@ -553,7 +559,7 @@ def is_valid_data_field(value, nxdl_type, path): if results is None: collector.collect_and_log(path, ValidationProblem.InvalidDatetime, value) - return value + return True @lru_cache(maxsize=None) diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index 8507468e0..2cfa96ec5 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -16,6 +16,7 @@ # See the License for the specific language governing permissions and # limitations under the License. # +import re from collections import defaultdict from functools import reduce from operator import getitem @@ -28,10 +29,13 @@ Collector, ValidationProblem, collector, - convert_data_dict_path_to_hdf5_path, is_valid_data_field, ) -from pynxtools.dataconverter.nexus_tree import NexusNode, generate_tree_from +from pynxtools.dataconverter.nexus_tree import ( + NexusEntity, + NexusNode, + generate_tree_from, +) from pynxtools.definitions.dev_tools.utils.nxdl_utils import get_nx_namefit @@ -52,24 +56,21 @@ def validate(name: str, data: Union[h5py.Group, h5py.Dataset]): def build_nested_dict_from( mapping: Mapping[str, Any], -) -> Tuple[Mapping[str, Any], Mapping[str, Any]]: +) -> Mapping[str, Any]: """ Creates a nested mapping from a `/` separated flat mapping. - It also converts data dict paths to HDF5 paths, i.e., - it converts the path `/ENTRY[my_entry]/TEST[test]` to `/my_entry/test`. Args: mapping (Mapping[str, Any]): The mapping to nest. Returns: - Tuple[Mapping[str, Any], Mapping[str, Any]]: - First element is the nested mapping. - Second element is the original dict in hdf5 path notation. + Mapping[str, Any]: The nested mapping. """ # Based on - # https://stackoverflow.com/questions/50607128/creating-a-nested-dictionary-from-a-flattened-dictionary + # https://stackoverflow.com/questions/50607128/ + # creating-a-nested-dictionary-from-a-flattened-dictionary def get_from(data_tree, map_list): """Iterate nested dictionary""" return reduce(getitem, map_list, data_tree) @@ -87,19 +88,47 @@ def default_to_regular_dict(d): data_tree = tree() # iterate input dictionary - hdf_path_mapping = {} for k, v in mapping.items(): if v is None: continue - hdf_path_mapping[convert_data_dict_path_to_hdf5_path(k)] = v - _, *keys, final_key = ( - convert_data_dict_path_to_hdf5_path(k).replace("/@", "@").split("/") - if not k.startswith("/@") - else k.split("/") - ) - get_from(data_tree, keys)[final_key] = v + _, *keys, final_key = k.split("/") + # if final_key.startswith("@") and "/" + "/".join(keys) not in mapping: + # Don't add attributes if the field is not present + # continue + data = get_from(data_tree, keys) + if not isinstance(data, defaultdict): + # Deal with attributes for fields + # Store them in a new key with the name `field_name@attribute_name`` + get_from(data_tree, keys[:-1])[f"{keys[-1]}{final_key}"] = v + else: + data[final_key] = v + + return default_to_regular_dict(data_tree) + + +def get_class_of(name: str) -> Tuple[Optional[str], str]: + """ + Return the class and the name of a data dict entry of the form + `get_class_of("ENTRY[entry]")`, which will return `("ENTRY", "entry")`. + If this is a simple string it will just return this string, i.e. + `get_class_of("entry")` will return `None, "entry"`. + + Args: + name (str): The data dict entry + + Returns: + Tuple[Optional[str], str]: + First element is the class name of the entry, second element is the name. + The class name will be None if it is not present. + """ + name_match = re.search(r"([^\[]+)\[([^\]]+)\](\@.*)?", name) + if name_match is None: + return None, name - return default_to_regular_dict(data_tree), hdf_path_mapping + prefix = name_match.group(3) + return name_match.group( + 1 + ), f"{name_match.group(2)}{'' if prefix is None else prefix}" def best_namefit_of(name: str, keys: Iterable[str]) -> Optional[str]: @@ -115,11 +144,16 @@ def best_namefit_of(name: str, keys: Iterable[str]) -> Optional[str]: """ if not keys: return None - if name in keys: - return name + + nx_name, name2fit = get_class_of(name) + + if name2fit in keys: + return name2fit + if nx_name is not None and nx_name in keys: + return nx_name best_match, score = max( - map(lambda x: (x, get_nx_namefit(name, x)), keys), key=lambda x: x[1] + map(lambda x: (x, get_nx_namefit(name2fit, x)), keys), key=lambda x: x[1] ) if score < 0: return None @@ -154,9 +188,16 @@ def get_variations_of(node: NexusNode, keys: Mapping[str, Any]) -> List[str]: variations = [] for key in keys: - if get_nx_namefit(key, node.name) >= 0 and key not in [ - x.name for x in node.parent.children - ]: + nx_name, name2fit = get_class_of(key) + if node.type == "attribute": + # Remove the starting @ from attributes + name2fit = name2fit[1:] if name2fit.startswith("@") else name2fit + if nx_name is not None and nx_name != node.name: + continue + if ( + get_nx_namefit(name2fit, node.name) >= 0 + and key not in node.parent.get_all_children_names() + ): variations.append(key) return variations @@ -174,7 +215,9 @@ def handle_group(node: NexusNode, keys: Mapping[str, Any], prev_path: str): for variant in variants: if not isinstance(keys[variant], Mapping): collector.collect_and_log( - f"{prev_path}/{variant}", ValidationProblem.ExpectedGroup, None + f"{prev_path}/{variant}", + ValidationProblem.ExpectedGroup, + None, ) return recurse_tree(node, keys[variant], prev_path=f"{prev_path}/{variant}") @@ -192,12 +235,37 @@ def handle_field(node: NexusNode, keys: Mapping[str, Any], prev_path: str): collector.collect_and_log( full_path, missing_type_err.get(node.type), None ) + return for variant in variants: + if node.optionality == "required" and isinstance(keys[variant], Mapping): + # TODO: Check if all fields in the dict are actual attributes + # (startwith @) + all_attrs = True + for entry in keys[variant]: + if not entry.startswith("@"): + all_attrs = False + break + if all_attrs: + collector.collect_and_log( + f"{prev_path}/{variant}", missing_type_err.get(node.type), None + ) + collector.collect_and_log( + f"{prev_path}/{variant}", + ValidationProblem.AttributeForNonExistingField, + None, + ) + return + if variant not in keys or mapping.get(f"{prev_path}/{variant}") is None: + continue + + # Check general validity is_valid_data_field( mapping[f"{prev_path}/{variant}"], node.dtype, f"{prev_path}/{variant}" ) + + # Check enumeration if ( node.items is not None and mapping[f"{prev_path}/{variant}"] not in node.items @@ -207,6 +275,8 @@ def handle_field(node: NexusNode, keys: Mapping[str, Any], prev_path: str): ValidationProblem.InvalidEnum, node.items, ) + + # Check unit category if node.unit is not None: remove_from_not_visited(f"{prev_path}/{variant}/@units") if f"{variant}@units" not in keys: @@ -215,7 +285,7 @@ def handle_field(node: NexusNode, keys: Mapping[str, Any], prev_path: str): ValidationProblem.MissingUnit, node.unit, ) - # TODO: Check unit + # TODO: Check unit with pint recurse_tree( node, @@ -238,9 +308,11 @@ def handle_attribute(node: NexusNode, keys: Mapping[str, Any], prev_path: str): for variant in variants: is_valid_data_field( - mapping[f"{prev_path}/@{variant}"], + mapping[ + f"{prev_path}/{variant if variant.startswith('@') else f'@{variant}'}" + ], node.dtype, - f"{prev_path}/@{variant}", + f"{prev_path}/{variant if variant.startswith('@') else f'@{variant}'}", ) def handle_choice(node: NexusNode, keys: Mapping[str, Any], prev_path: str): @@ -259,7 +331,9 @@ def handle_choice(node: NexusNode, keys: Mapping[str, Any], prev_path: str): collector = old_collector collector.collect_and_log( - f"{prev_path}/{node.name}", ValidationProblem.ChoiceValidationError, None + f"{prev_path}/{node.name}", + ValidationProblem.ChoiceValidationError, + None, ) def handle_unknown_type(node: NexusNode, keys: Mapping[str, Any], prev_path: str): @@ -270,22 +344,40 @@ def handle_unknown_type(node: NexusNode, keys: Mapping[str, Any], prev_path: str pass def is_documented(key: str, node: NexusNode) -> bool: + if mapping.get(key) is None: + # This value is not really set. Skip checking it's documentation. + return True + for name in key[1:].replace("@", "").split("/"): children = node.get_all_children_names() best_name = best_namefit_of(name, children) if best_name is None: return False - if best_name not in node.get_all_children_names(depth=1): - node = node.add_inherited_node(best_name) - else: - resolver = Resolver("name") - node = resolver.get(node, best_name) + + resolver = Resolver("name", relax=True) + child_node = resolver.get(node, best_name) + node = ( + node.add_inherited_node(best_name) if child_node is None else child_node + ) + + if isinstance(mapping[key], dict) and "link" in mapping[key]: + # TODO: Follow link and check consistency with current field + return True if "@" not in key and node.type != "field": return False if "@" in key and node.type != "attribute": return False + if ( + isinstance(node, NexusEntity) + and node.unit is not None + and f"{key}/@units" not in mapping + ): + collector.collect_and_log( + f"{key}", ValidationProblem.MissingUnit, node.unit + ) + return is_valid_data_field(mapping[key], node.dtype, key) def recurse_tree(node: NexusNode, keys: Mapping[str, Any], prev_path: str = ""): @@ -307,7 +399,7 @@ def recurse_tree(node: NexusNode, keys: Mapping[str, Any], prev_path: str = ""): tree = generate_tree_from(appdef) collector.clear() - nested_keys, mapping = build_nested_dict_from(mapping) + nested_keys = build_nested_dict_from(mapping) not_visited = list(mapping) recurse_tree(tree, nested_keys) @@ -315,9 +407,9 @@ def recurse_tree(node: NexusNode, keys: Mapping[str, Any], prev_path: str = ""): return not collector.has_validation_problems() for not_visited_key in not_visited: - if is_documented(not_visited_key, tree): - continue if not_visited_key.endswith("/@units"): + if is_documented(not_visited_key.rsplit("/", 1)[0], tree): + continue if not_visited_key.rsplit("/", 1)[0] not in not_visited: collector.collect_and_log( not_visited_key, @@ -329,9 +421,11 @@ def recurse_tree(node: NexusNode, keys: Mapping[str, Any], prev_path: str = ""): ValidationProblem.UnitWithoutDocumentation, mapping[not_visited_key], ) - else: - collector.collect_and_log( - not_visited_key, ValidationProblem.MissingDocumentation, None - ) + if is_documented(not_visited_key, tree): + continue + + collector.collect_and_log( + not_visited_key, ValidationProblem.MissingDocumentation, None + ) return not collector.has_validation_problems() diff --git a/tests/dataconverter/test_helpers.py b/tests/dataconverter/test_helpers.py index 2413565f2..6acc09657 100644 --- a/tests/dataconverter/test_helpers.py +++ b/tests/dataconverter/test_helpers.py @@ -274,7 +274,7 @@ def fixture_filled_test_data(template, tmp_path): "not_a_num", ), ( - "The value at /my_entry/nxodd_name/in" + "The value at /ENTRY[my_entry]/NXODD_name[nxodd_name]/in" "t_value should be one of: (, , )," " as defined in the NXDL as NX_INT." @@ -288,7 +288,7 @@ def fixture_filled_test_data(template, tmp_path): "NOT_TRUE_OR_FALSE", ), ( - "The value at /my_entry/nxodd_name/bool_value sh" + "The value at /ENTRY[my_entry]/NXODD_name[nxodd_name]/bool_value sh" "ould be one of: (, , ), as defined in the NXDL as NX_BOOLEAN." ), @@ -297,7 +297,7 @@ def fixture_filled_test_data(template, tmp_path): pytest.param( alter_dict( TEMPLATE, - "/my_entry/nxodd_name/int_value", + "/ENTRY[my_entry]/NXODD_name[nxodd_name]/int_value", {"link": "/a-link"}, ), (""), @@ -308,7 +308,7 @@ def fixture_filled_test_data(template, tmp_path): TEMPLATE, "/ENTRY[my_entry]/NXODD_name[nxodd_name]/posint_value", -1 ), ( - "The value at /my_entry/nxodd_name/posint_value " + "The value at /ENTRY[my_entry]/NXODD_name[nxodd_name]/posint_value " "should be a positive int, but is -1." ), id="negative-posint", @@ -338,7 +338,8 @@ def fixture_filled_test_data(template, tmp_path): "required", ), ( - "The data entry corresponding to /my_entry/nxodd_name/bool_value is" + "The data entry corresponding to /ENTRY[my_entry]/NXODD_name[nxodd_name]" + "/bool_value is" " required and hasn't been supplied by the reader." ), id="empty-required-field", @@ -350,7 +351,8 @@ def fixture_filled_test_data(template, tmp_path): "required", ), ( - "The data entry corresponding to /my_entry/nxodd_two_name/bool_value is" + "The data entry corresponding to /ENTRY[my_entry]/" + "NXODD_name[nxodd_two_name]/bool_value is" " required and hasn't been supplied by the reader." ), id="empty-required-field", @@ -366,7 +368,8 @@ def fixture_filled_test_data(template, tmp_path): "required", ), ( - "The data entry corresponding to /my_entry/nxodd_name/bool_value is" + "The data entry corresponding to /ENTRY[my_entry]/NXODD_name[nxodd_name]" + "/bool_value is" " required and hasn't been supplied by the reader." ), id="empty-required-field", @@ -381,7 +384,7 @@ def fixture_filled_test_data(template, tmp_path): "/ENTRY[my_entry]/NXODD_name", "optional", ), - ("The required group, /my_entry/NXODD_name, hasn't been supplied."), + ("The required group, /ENTRY[my_entry]/NXODD_name, hasn't been supplied."), id="all-required-fields-set-to-none", ), pytest.param( @@ -408,7 +411,7 @@ def fixture_filled_test_data(template, tmp_path): "/ENTRY[my_entry]/NXODD_name[nxodd_name]/date_value", "2022-01-22T12:14:12.05018-00:00", ), - "The value at /my_entry/nxodd_name/date_value" + "The value at /ENTRY[my_entry]/NXODD_name[nxodd_name]/date_value" " = 2022-01-22T12:14:12.05018-00:00 should be a timezone aware" " ISO8601 formatted str. For example, 2022-01-22T12:14:12.05018Z or 2022-01-22" "T12:14:12.05018+00:00.", @@ -420,7 +423,8 @@ def fixture_filled_test_data(template, tmp_path): TEMPLATE, "/ENTRY[my_entry]/NXODD_name[nxodd_name]/type", "Wrong option" ), ( - "The value at /my_entry/nxodd_name/type should be on of the following" + "The value at /ENTRY[my_entry]/NXODD_name[nxodd_name]/type should " + "be on of the following" " strings: ['1st type', '2nd type', '3rd type', '4th type']" ), id="wrong-enum-choice", @@ -430,7 +434,7 @@ def fixture_filled_test_data(template, tmp_path): TEMPLATE, "/ENTRY[my_entry]/optional_parent/required_child", "optional" ), ( - "The data entry corresponding to /my_entry/optional_parent/" + "The data entry corresponding to /ENTRY[my_entry]/optional_parent/" "required_child is required and hasn't been supplied by the reader." ), id="atleast-one-required-child-not-provided-optional-parent", @@ -442,7 +446,8 @@ def fixture_filled_test_data(template, tmp_path): "required", ), ( - "The data entry corresponding to /my_entry/my_group/required_field " + "The data entry corresponding to /ENTRY[my_entry]/" + "OPTIONAL_group[my_group]/required_field " "is required and hasn't been supplied by the reader." ), id="required-field-not-provided-in-variadic-optional-group", @@ -470,12 +475,12 @@ def fixture_filled_test_data(template, tmp_path): pytest.param(TEMPLATE, "", id="valid-data-dict"), pytest.param( remove_from_dict(TEMPLATE, "/ENTRY[my_entry]/required_group/description"), - "The required group, /my_entry/required_group, hasn't been supplied.", + "The required group, /ENTRY[my_entry]/required_group, hasn't been supplied.", id="missing-empty-yet-required-group", ), pytest.param( remove_from_dict(TEMPLATE, "/ENTRY[my_entry]/required_group2/description"), - "The required group, /my_entry/required_group2, hasn't been supplied.", + "The required group, /ENTRY[my_entry]/required_group2, hasn't been supplied.", id="missing-empty-yet-required-group2", ), pytest.param( @@ -486,7 +491,7 @@ def fixture_filled_test_data(template, tmp_path): "/ENTRY[entry]/required_group", None, ), - "The required group, /my_entry/required_group, hasn't been supplied.", + "The required group, /ENTRY[my_entry]/required_group, hasn't been supplied.", id="allow-required-and-empty-group", ), pytest.param( @@ -496,7 +501,8 @@ def fixture_filled_test_data(template, tmp_path): "required", ), ( - "The required group, /my_entry/optional_parent/req_group_in_opt_group, " + "The required group, /ENTRY[my_entry]/" + "optional_parent/req_group_in_opt_group, " "hasn't been supplied." ), id="req-group-in-opt-parent-removed", diff --git a/tests/dataconverter/test_validation.py b/tests/dataconverter/test_validation.py index 8f974d36f..cb68b60e8 100644 --- a/tests/dataconverter/test_validation.py +++ b/tests/dataconverter/test_validation.py @@ -93,7 +93,7 @@ def alter_dict(new_values: Dict[str, Any], data_dict: Dict[str, Any]) -> Dict[st ) def test_valid_data_dict(caplog, data_dict): with caplog.at_level(logging.WARNING): - validate_dict_against("NXtest", data_dict, ignore_undocumented=True) + validate_dict_against("NXtest", data_dict) assert caplog.text == "" @@ -109,6 +109,6 @@ def test_valid_data_dict(caplog, data_dict): ) def test_validation_shows_warning(caplog, data_dict, error_message): with caplog.at_level(logging.WARNING): - validate_dict_against("NXtest", data_dict, ignore_undocumented=True) + assert not validate_dict_against("NXtest", data_dict) assert error_message in caplog.text From 3bcea7a60ef1cb694f2aee3ac520c626003b763f Mon Sep 17 00:00:00 2001 From: domna Date: Sun, 12 May 2024 08:33:29 +0200 Subject: [PATCH 49/76] Adds backwards compatibility for old function --- pynxtools/dataconverter/__init__.py | 3 +++ pynxtools/dataconverter/validation.py | 8 ++++++++ 2 files changed, 11 insertions(+) diff --git a/pynxtools/dataconverter/__init__.py b/pynxtools/dataconverter/__init__.py index e69de29bb..ff2879e19 100644 --- a/pynxtools/dataconverter/__init__.py +++ b/pynxtools/dataconverter/__init__.py @@ -0,0 +1,3 @@ +from pynxtools.dataconverter import helpers, validation + +helpers.validate_data_dict = validation.validate_data_dict # type: ignore diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index 2cfa96ec5..cf4bfd193 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -23,6 +23,7 @@ from typing import Any, Iterable, List, Mapping, Optional, Tuple, Union import h5py +import lxml.etree as ET from anytree import Resolver from pynxtools.dataconverter.helpers import ( @@ -429,3 +430,10 @@ def recurse_tree(node: NexusNode, keys: Mapping[str, Any], prev_path: str = ""): ) return not collector.has_validation_problems() + + +# Backwards compatibility +def validate_data_dict( + _: Mapping[str, Any], read_data: Mapping[str, Any], root: ET._Element +) -> bool: + return validate_dict_against(root.attrib["name"], read_data) From 0199b8bed8415792bd0226014e6145808e3ca32b Mon Sep 17 00:00:00 2001 From: domna Date: Mon, 13 May 2024 09:27:24 +0200 Subject: [PATCH 50/76] Use tree for cli template generation --- pynxtools/dataconverter/convert.py | 16 +++++++++------- pynxtools/dataconverter/nexus_tree.py | 11 ++++++++--- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/pynxtools/dataconverter/convert.py b/pynxtools/dataconverter/convert.py index 0f3969fdb..f0b99b08a 100644 --- a/pynxtools/dataconverter/convert.py +++ b/pynxtools/dataconverter/convert.py @@ -26,7 +26,7 @@ import sys from gettext import gettext from pathlib import Path -from typing import List, Optional, Tuple +from typing import List, Literal, Optional, Tuple import click import lxml.etree as ET @@ -34,6 +34,7 @@ from click_default_group import DefaultGroup from pynxtools.dataconverter import helpers +from pynxtools.dataconverter.nexus_tree import generate_tree_from from pynxtools.dataconverter.readers.base.reader import BaseReader from pynxtools.dataconverter.template import Template from pynxtools.dataconverter.validation import validate_dict_against @@ -423,21 +424,22 @@ def write_to_file(text): f.write(text) f.close() - print_or_write = lambda txt: write_to_file(txt) if output else print(txt) + tree = generate_tree_from(nxdl) - nxdl_root, nxdl_f_path = helpers.get_nxdl_root_and_path(nxdl) - template = Template() - helpers.generate_template_from_nxdl(nxdl_root, template) + print_or_write = lambda txt: write_to_file(txt) if output else print(txt) + level: Literal["required", "recommended", "optional"] = "optional" if required: - template = Template(template.get_optionality("required")) + level = "required" + reqs = tree.required_fields_and_attrs_names(level=level) + template = {req: None for req in reqs} if pythonic: print_or_write(str(template)) return print_or_write( json.dumps( - template.get_accumulated_dict(), + template, indent=4, sort_keys=True, ensure_ascii=False, diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index 3242cebfe..b666ac722 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -223,7 +223,7 @@ def get_all_children_names(self, depth: Optional[int] = None) -> Set[str]: def required_fields_and_attrs_names( self, prev_path: str = "", - level: Literal["required", "recommended"] = "required", + level: Literal["required", "recommended", "optional"] = "required", ) -> List[str]: """ Gets all required fields and attributes names of the current node and its children. @@ -231,18 +231,23 @@ def required_fields_and_attrs_names( Args: prev_path (str, optional): The path prefix to attach to the names found at this node. Defaults to "". - level (Literal["required", "recommended"], optional): + level (Literal["required", "recommended", "optional"], optional): Denotes which level of requiredness should be returned. Setting this to `required` will return only required fields and attributes. Setting this to `recommended` will return both required and recommended fields and attributes. + Setting this to "optional" will return all fields and attributes + directly present in the application definition but no fields + inherited from the base classes. Defaults to "required". Returns: List[str]: A list of required fields and attributes names. """ req_children = [] - if level == "recommended": + if level == "optional": + optionalities: Tuple[str, ...] = ("optional", "recommended", "required") + elif level == "recommended": optionalities: Tuple[str, ...] = ("recommended", "required") else: optionalities = ("required",) From 31d93412c1e5829bc86617d23aa10412df8b5def Mon Sep 17 00:00:00 2001 From: domna Date: Mon, 13 May 2024 09:59:45 +0200 Subject: [PATCH 51/76] Use data converter keys for generate template --- pynxtools/dataconverter/convert.py | 4 +++- pynxtools/dataconverter/helpers.py | 16 ++++++++++++++++ pynxtools/dataconverter/nexus_tree.py | 2 +- 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/pynxtools/dataconverter/convert.py b/pynxtools/dataconverter/convert.py index f0b99b08a..012311b99 100644 --- a/pynxtools/dataconverter/convert.py +++ b/pynxtools/dataconverter/convert.py @@ -432,7 +432,9 @@ def write_to_file(text): if required: level = "required" reqs = tree.required_fields_and_attrs_names(level=level) - template = {req: None for req in reqs} + template = { + helpers.convert_nxdl_path_dict_to_data_converter_dict(req): None for req in reqs + } if pythonic: print_or_write(str(template)) diff --git a/pynxtools/dataconverter/helpers.py b/pynxtools/dataconverter/helpers.py index 656d88fd6..2effd5c26 100644 --- a/pynxtools/dataconverter/helpers.py +++ b/pynxtools/dataconverter/helpers.py @@ -401,6 +401,22 @@ def convert_nxdl_path_entry_to_data_converter_entry(entry) -> str: return f"{entry}[{entry.lower()}]" +def convert_nxdl_path_dict_to_data_converter_dict(path) -> str: + """ + Helper function to convert NXDL style path to data converter style path: + /ENTRY/entry -> /ENTRY[entry]/entry + """ + data_converter_path = "" + for entry in path.split("/")[1:]: + if not contains_uppercase(entry): + data_converter_path += f"/{entry}" + continue + data_converter_path += "/" + convert_nxdl_path_entry_to_data_converter_entry( + entry + ) + return data_converter_path + + def convert_data_converter_dict_to_nxdl_path(path) -> str: """ Helper function to convert data converter style path to NXDL style path: diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index b666ac722..d9cf6c5c0 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -248,7 +248,7 @@ def required_fields_and_attrs_names( if level == "optional": optionalities: Tuple[str, ...] = ("optional", "recommended", "required") elif level == "recommended": - optionalities: Tuple[str, ...] = ("recommended", "required") + optionalities = ("recommended", "required") else: optionalities = ("required",) for child in self.children: From e060a81b8f2a32c4b5dd3f680a54b0bd2a66b14b Mon Sep 17 00:00:00 2001 From: domna Date: Mon, 13 May 2024 14:56:11 +0200 Subject: [PATCH 52/76] Also report units in generate template --- pynxtools/dataconverter/nexus_tree.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index d9cf6c5c0..bd8c0bc6e 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -258,6 +258,8 @@ def required_fields_and_attrs_names( ): attr_prefix = "@" if child.type == "attribute" else "" req_children.append(f"{prev_path}/{attr_prefix}{child.name}") + if child.unit: + req_children.append(f"{prev_path}/{attr_prefix}{child.name}/@units") if ( child.type in ("field", "group", "choice") From 2f24d8c941a7db68d9be87c472f6a2d420d226e7 Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Mon, 13 May 2024 16:21:11 +0200 Subject: [PATCH 53/76] update definitions --- pynxtools/definitions | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pynxtools/definitions b/pynxtools/definitions index 229774c56..c7025f188 160000 --- a/pynxtools/definitions +++ b/pynxtools/definitions @@ -1 +1 @@ -Subproject commit 229774c56fb710bb1d9008afb49e00be402c7578 +Subproject commit c7025f1884a4f779498cc46b098c1c188078d004 From b071bd3cb26aa09bedf8601b3e13db2944e663cb Mon Sep 17 00:00:00 2001 From: domna Date: Tue, 14 May 2024 07:29:53 +0200 Subject: [PATCH 54/76] Cleanup req fields and attrib names function --- pynxtools/dataconverter/nexus_tree.py | 46 +++++++++++++-------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index bd8c0bc6e..2008e15a7 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -244,32 +244,32 @@ def required_fields_and_attrs_names( Returns: List[str]: A list of required fields and attributes names. """ + lvl_map = { + "required": ("required",), + "recommended": ("recommended", "required"), + "optional": ("optional", "recommended", "required"), + } + req_children = [] - if level == "optional": - optionalities: Tuple[str, ...] = ("optional", "recommended", "required") - elif level == "recommended": - optionalities = ("recommended", "required") - else: - optionalities = ("required",) + optionalities = lvl_map.get(level, ("required",)) for child in self.children: - if ( - child.type in ("field", "attribute") - and child.optionality in optionalities - ): - attr_prefix = "@" if child.type == "attribute" else "" - req_children.append(f"{prev_path}/{attr_prefix}{child.name}") - if child.unit: - req_children.append(f"{prev_path}/{attr_prefix}{child.name}/@units") - - if ( - child.type in ("field", "group", "choice") - and child.optionality in optionalities - ): - req_children.extend( - child.required_fields_and_attrs_names( - prev_path=f"{prev_path}/{child.name}", level=level - ) + if child.optionality not in optionalities: + continue + + if child.type == "attribute": + req_children.append(f"{prev_path}/@{child.name}") + continue + + if child.type == "field": + req_children.append(f"{prev_path}/{child.name}") + if isinstance(child, NexusEntity) and child.unit is not None: + req_children.append(f"{prev_path}/{child.name}/@units") + + req_children.extend( + child.required_fields_and_attrs_names( + prev_path=f"{prev_path}/{child.name}", level=level ) + ) return req_children From f0b0cd388dbd5c55ca754dc6c6b1ebe1328595a3 Mon Sep 17 00:00:00 2001 From: domna Date: Tue, 14 May 2024 07:30:05 +0200 Subject: [PATCH 55/76] Update definitions --- pynxtools/definitions | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pynxtools/definitions b/pynxtools/definitions index 229774c56..c7025f188 160000 --- a/pynxtools/definitions +++ b/pynxtools/definitions @@ -1 +1 @@ -Subproject commit 229774c56fb710bb1d9008afb49e00be402c7578 +Subproject commit c7025f1884a4f779498cc46b098c1c188078d004 From 2a32a7da09e3c1d759a32ca03fc897bc879d4da1 Mon Sep 17 00:00:00 2001 From: domna Date: Tue, 14 May 2024 07:56:01 +0200 Subject: [PATCH 56/76] Update nexus version --- pynxtools/nexus-version.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pynxtools/nexus-version.txt b/pynxtools/nexus-version.txt index 4f9e3e43a..b1656e0bb 100644 --- a/pynxtools/nexus-version.txt +++ b/pynxtools/nexus-version.txt @@ -1 +1 @@ -v2022.07-1132-g229774c56 \ No newline at end of file +v2022.07-1135-gc7025f188 \ No newline at end of file From b6cd436de244c803f6fb9e124d4e5179ab2d0649 Mon Sep 17 00:00:00 2001 From: domna Date: Tue, 14 May 2024 11:18:08 +0200 Subject: [PATCH 57/76] Ignore undocumented & report namefitting problems --- pynxtools/dataconverter/helpers.py | 6 ++++++ pynxtools/dataconverter/validation.py | 9 +++++---- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/pynxtools/dataconverter/helpers.py b/pynxtools/dataconverter/helpers.py index 2effd5c26..76931dbc6 100644 --- a/pynxtools/dataconverter/helpers.py +++ b/pynxtools/dataconverter/helpers.py @@ -53,6 +53,8 @@ class ValidationProblem(Enum): ChoiceValidationError = 12 UnitWithoutField = 13 AttributeForNonExistingField = 14 + BrokenLink = 15 + FailedNamefitting = 16 class Collector: @@ -117,6 +119,10 @@ def _log(self, path: str, log_type: ValidationProblem, value: Optional[Any], *ar f"There were attributes set for the field {path}, " "but the field does not exist." ) + elif log_type == ValidationProblem.BrokenLink: + logger.warning(f"Broken link at {path} to {value}") + elif log_type == ValidationProblem.FailedNamefitting: + logger.warning(f"Found no namefit of {path} in {value}.") def collect_and_log(self, path: str, *args, **kwargs): """Inserts a path into the data dictionary and logs the action.""" diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index cf4bfd193..ffa74d2ff 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -200,6 +200,10 @@ def get_variations_of(node: NexusNode, keys: Mapping[str, Any]) -> List[str]: and key not in node.parent.get_all_children_names() ): variations.append(key) + if nx_name is not None and not variations: + collector.collect_and_log( + nx_name, ValidationProblem.FailedNamefitting, keys + ) return variations def get_field_attributes(name: str, keys: Mapping[str, Any]) -> Mapping[str, Any]: @@ -353,7 +357,7 @@ def is_documented(key: str, node: NexusNode) -> bool: children = node.get_all_children_names() best_name = best_namefit_of(name, children) if best_name is None: - return False + return ignore_undocumented resolver = Resolver("name", relax=True) child_node = resolver.get(node, best_name) @@ -404,9 +408,6 @@ def recurse_tree(node: NexusNode, keys: Mapping[str, Any], prev_path: str = ""): not_visited = list(mapping) recurse_tree(tree, nested_keys) - if ignore_undocumented: - return not collector.has_validation_problems() - for not_visited_key in not_visited: if not_visited_key.endswith("/@units"): if is_documented(not_visited_key.rsplit("/", 1)[0], tree): From 0ff80ca009c6c32e5a84660c3091f8f2979928e9 Mon Sep 17 00:00:00 2001 From: domna Date: Tue, 14 May 2024 11:28:53 +0200 Subject: [PATCH 58/76] Fix ignore undocumented --- pynxtools/dataconverter/validation.py | 40 +++++++++++++++++++++------ tests/dataconverter/test_readers.py | 12 +++++--- 2 files changed, 39 insertions(+), 13 deletions(-) diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index ffa74d2ff..fac9b82f8 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -232,8 +232,28 @@ def remove_from_not_visited(path: str) -> str: not_visited.remove(path) return path + def _follow_link( + keys: Mapping[str, Any], prev_path: str + ) -> Optional[Mapping[str, Any]]: + if len(keys) == 1 and "link" in keys: + first, *rest = keys["link"].split("/") + linked_keys = mapping.get(first) + for path_elem in rest: + if linked_keys is None: + collector.collect_and_log( + prev_path, ValidationProblem.BrokenLink, keys["link"] + ) + return None + linked_keys = linked_keys.get(path_elem) + return linked_keys + return keys + def handle_field(node: NexusNode, keys: Mapping[str, Any], prev_path: str): full_path = remove_from_not_visited(f"{prev_path}/{node.name}") + # TODO: Follow links + # keys = _follow_link(keys, prev_path) + # if keys is None: + # return variants = get_variations_of(node, keys) if not variants: if node.optionality == "required" and node.type in missing_type_err: @@ -357,7 +377,7 @@ def is_documented(key: str, node: NexusNode) -> bool: children = node.get_all_children_names() best_name = best_namefit_of(name, children) if best_name is None: - return ignore_undocumented + return False resolver = Resolver("name", relax=True) child_node = resolver.get(node, best_name) @@ -418,17 +438,19 @@ def recurse_tree(node: NexusNode, keys: Mapping[str, Any], prev_path: str = ""): ValidationProblem.UnitWithoutField, not_visited_key.rsplit("/", 1)[0], ) - collector.collect_and_log( - not_visited_key, - ValidationProblem.UnitWithoutDocumentation, - mapping[not_visited_key], - ) + if not ignore_undocumented: + collector.collect_and_log( + not_visited_key, + ValidationProblem.UnitWithoutDocumentation, + mapping[not_visited_key], + ) if is_documented(not_visited_key, tree): continue - collector.collect_and_log( - not_visited_key, ValidationProblem.MissingDocumentation, None - ) + if not ignore_undocumented: + collector.collect_and_log( + not_visited_key, ValidationProblem.MissingDocumentation, None + ) return not collector.has_validation_problems() diff --git a/tests/dataconverter/test_readers.py b/tests/dataconverter/test_readers.py index 298066f1e..8c2a4e185 100644 --- a/tests/dataconverter/test_readers.py +++ b/tests/dataconverter/test_readers.py @@ -18,6 +18,7 @@ """Test cases for readers used for the DataConverter""" import glob +import logging import os import xml.etree.ElementTree as ET from typing import List @@ -77,7 +78,7 @@ def test_if_readers_are_children_of_base_reader(reader): @pytest.mark.parametrize("reader", get_all_readers()) -def test_has_correct_read_func(reader): +def test_has_correct_read_func(reader, caplog): """Test if all readers have a valid read function implemented""" assert callable(reader.read) if reader.__name__ not in ["BaseReader"]: @@ -121,6 +122,9 @@ def test_has_correct_read_func(reader): # This is a temporary fix because the json_yml example data # does not produce a valid entry. if not reader_name == "json_yml": - assert validate_dict_against( - supported_nxdl, read_data, ignore_undocumented=True - ) + with caplog.at_level(logging.WARNING): + validate_dict_against( + supported_nxdl, read_data, ignore_undocumented=True + ) + + print(caplog.text) From f6c1251034b10fd3c55fa7010cbeade786bdcfd4 Mon Sep 17 00:00:00 2001 From: domna Date: Tue, 14 May 2024 12:27:30 +0200 Subject: [PATCH 59/76] Add link resolution --- pynxtools/dataconverter/validation.py | 31 ++++++++++++++++----------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index fac9b82f8..6ceab5f37 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -107,7 +107,7 @@ def default_to_regular_dict(d): return default_to_regular_dict(data_tree) -def get_class_of(name: str) -> Tuple[Optional[str], str]: +def split_class_and_name_of(name: str) -> Tuple[Optional[str], str]: """ Return the class and the name of a data dict entry of the form `get_class_of("ENTRY[entry]")`, which will return `("ENTRY", "entry")`. @@ -146,7 +146,7 @@ def best_namefit_of(name: str, keys: Iterable[str]) -> Optional[str]: if not keys: return None - nx_name, name2fit = get_class_of(name) + nx_name, name2fit = split_class_and_name_of(name) if name2fit in keys: return name2fit @@ -189,7 +189,7 @@ def get_variations_of(node: NexusNode, keys: Mapping[str, Any]) -> List[str]: variations = [] for key in keys: - nx_name, name2fit = get_class_of(key) + nx_name, name2fit = split_class_and_name_of(key) if node.type == "attribute": # Remove the starting @ from attributes name2fit = name2fit[1:] if name2fit.startswith("@") else name2fit @@ -236,24 +236,26 @@ def _follow_link( keys: Mapping[str, Any], prev_path: str ) -> Optional[Mapping[str, Any]]: if len(keys) == 1 and "link" in keys: - first, *rest = keys["link"].split("/") - linked_keys = mapping.get(first) - for path_elem in rest: - if linked_keys is None: + current_keys = nested_keys + link_key = None + for path_elem in keys["link"][1:].split("/"): + link_key = None + for dict_path_elem in current_keys: + _, hdf_name = split_class_and_name_of(dict_path_elem) + if hdf_name == path_elem: + link_key = hdf_name + break + if link_key is None: collector.collect_and_log( prev_path, ValidationProblem.BrokenLink, keys["link"] ) return None - linked_keys = linked_keys.get(path_elem) - return linked_keys + current_keys = current_keys[dict_path_elem] + return current_keys return keys def handle_field(node: NexusNode, keys: Mapping[str, Any], prev_path: str): full_path = remove_from_not_visited(f"{prev_path}/{node.name}") - # TODO: Follow links - # keys = _follow_link(keys, prev_path) - # if keys is None: - # return variants = get_variations_of(node, keys) if not variants: if node.optionality == "required" and node.type in missing_type_err: @@ -407,6 +409,9 @@ def is_documented(key: str, node: NexusNode) -> bool: def recurse_tree(node: NexusNode, keys: Mapping[str, Any], prev_path: str = ""): for child in node.children: + keys = _follow_link(keys, prev_path) + if keys is None: + return handling_map.get(child.type, handle_unknown_type)(child, keys, prev_path) missing_type_err = { From 663101ada4b0d7b98cb7d16c0b7a29ba60aa6ead Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Wed, 15 May 2024 12:55:32 +0200 Subject: [PATCH 60/76] update defs again --- pynxtools/definitions | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pynxtools/definitions b/pynxtools/definitions index c7025f188..755fb24be 160000 --- a/pynxtools/definitions +++ b/pynxtools/definitions @@ -1 +1 @@ -Subproject commit c7025f1884a4f779498cc46b098c1c188078d004 +Subproject commit 755fb24be62e9cccd02f232e6512bc25aa6a4c89 From f23d5fb51eec317d31a599dbdd13ca429c1c5f88 Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Wed, 15 May 2024 12:58:47 +0200 Subject: [PATCH 61/76] update nxs version --- .github/workflows/check_nexus_version.yml | 2 +- pynxtools/nexus-version.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/check_nexus_version.yml b/.github/workflows/check_nexus_version.yml index 6b89e30c3..54c056268 100644 --- a/.github/workflows/check_nexus_version.yml +++ b/.github/workflows/check_nexus_version.yml @@ -7,7 +7,7 @@ on: branches: [master] jobs: - linting: + nexus-version: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 diff --git a/pynxtools/nexus-version.txt b/pynxtools/nexus-version.txt index 4f9e3e43a..5f9f77a40 100644 --- a/pynxtools/nexus-version.txt +++ b/pynxtools/nexus-version.txt @@ -1 +1 @@ -v2022.07-1132-g229774c56 \ No newline at end of file +v2022.07-1141-g755fb24be \ No newline at end of file From 4bac471b2f54b32bc8d44795c6150cc6c7678503 Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Wed, 15 May 2024 13:27:19 +0200 Subject: [PATCH 62/76] update reference log --- tests/data/nexus/Ref_nexus_test.log | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/data/nexus/Ref_nexus_test.log b/tests/data/nexus/Ref_nexus_test.log index c20c49feb..0f018879d 100644 --- a/tests/data/nexus/Ref_nexus_test.log +++ b/tests/data/nexus/Ref_nexus_test.log @@ -530,6 +530,7 @@ DEBUG - -> summed DEBUG - -> event DEBUG - -> histogrammed DEBUG - -> decimated +DEBUG - -> pulse counting DEBUG - documentation (NXarpes.nxdl.xml:/ENTRY/INSTRUMENT/analyser/acquisition_mode): DEBUG - DEBUG - documentation (NXdetector.nxdl.xml:/acquisition_mode): From 63fdbbf7df37149f0fa8219132304a71bea61759 Mon Sep 17 00:00:00 2001 From: domna Date: Wed, 15 May 2024 23:06:33 +0200 Subject: [PATCH 63/76] Adds validation for nxdata --- pynxtools/dataconverter/nexus_tree.py | 19 ++++- pynxtools/dataconverter/validation.py | 114 ++++++++++++++++++++++++-- 2 files changed, 123 insertions(+), 10 deletions(-) diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index 2008e15a7..06e35992e 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -29,7 +29,7 @@ """ from functools import lru_cache -from typing import List, Literal, Optional, Set, Tuple +from typing import List, Literal, Optional, Set, Tuple, Union import lxml.etree as ET from anytree.node.nodemixin import NodeMixin @@ -183,6 +183,19 @@ def get_path(self) -> str: current_node = current_node.parent return "/" + "/".join(names) + def search_child_with_name( + self, names: Union[Tuple[str, ...], str] + ) -> Optional["NexusNode"]: + if isinstance(names, str): + names = (names,) + for name in names: + direct_child = next((x for x in self.children if x.name == name), None) + if direct_child is not None: + return direct_child + if name in self.get_all_children_names(): + return self.add_inherited_node(name) + return None + def get_all_children_names(self, depth: Optional[int] = None) -> Set[str]: """ Get all children names of the current node up to a certain depth. @@ -370,7 +383,9 @@ def add_inherited_node(self, name: str) -> Optional["NexusNode"]: namespaces=namespaces, ) if xml_elem: - return self.add_node_from(xml_elem[0]) + new_node = self.add_node_from(xml_elem[0]) + new_node.optionality = "optional" + return new_node return None diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index 6ceab5f37..474ae3bcd 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -24,6 +24,7 @@ import h5py import lxml.etree as ET +import numpy as np from anytree import Resolver from pynxtools.dataconverter.helpers import ( @@ -34,6 +35,7 @@ ) from pynxtools.dataconverter.nexus_tree import ( NexusEntity, + NexusGroup, NexusNode, generate_tree_from, ) @@ -209,7 +211,96 @@ def get_variations_of(node: NexusNode, keys: Mapping[str, Any]) -> List[str]: def get_field_attributes(name: str, keys: Mapping[str, Any]) -> Mapping[str, Any]: return {k.split("@")[1]: keys[k] for k in keys if k.startswith(f"{name}@")} - def handle_group(node: NexusNode, keys: Mapping[str, Any], prev_path: str): + def handle_nxdata(node: NexusGroup, keys: Mapping[str, Any], prev_path: str): + keys = _follow_link(keys, prev_path) + signal = keys.get("@signal") + aux_signals = keys.get("@auxiliary_signals", []) + axes = keys.get("@axes", []) + + if signal is None: + # TODO: Make proper log of missing signal + print(f"Missing signal in {prev_path}") + + data = keys.get(signal) + if data is None: + # TODO: Make proper log of missing data + print(f"Missing data for @signal in {prev_path}/{signal}") + else: + # Attach the base class to the inheritance chain + # if the concept for signal is already defined in the appdef + data_node = node.search_child_with_name((signal, "DATA")) + data_bc_node = node.search_child_with_name("DATA") + data_node.inheritance.append(data_bc_node.inheritance[0]) + for child in data_node.get_all_children_names(): + data_node.search_child_with_name(child) + + handle_field( + node.search_child_with_name((signal, "DATA")), + keys, + prev_path=f"{prev_path}", + ) + + for i, axis in enumerate(axes): + if axis == ".": + continue + index = keys.get(f"{axis}_indices", i) + + axis_data = _follow_link(keys.get(axis), prev_path) + if axis_data is None: + # TODO: Proper log + print(f"Missing data for @axes in {prev_path}/{axis}") + break + else: + # Attach the base class to the inheritance chain + # if the concept for the axis is already defined in the appdef + axis_node = node.search_child_with_name((axis, "AXISNAME")) + axis_bc_node = node.search_child_with_name("AXISNAME") + axis_node.inheritance.append(axis_bc_node.inheritance[0]) + for child in axis_node.get_all_children_names(): + axis_node.search_child_with_name(child) + + handle_field( + node.search_child_with_name((axis, "AXISNAME")), + keys, + prev_path=f"{prev_path}", + ) + if data.shape[index] != len(axis_data): + # TODO: Proper log + print( + f"Length of axis {prev_path}/{axis} does not " + f"match to {prev_path}/{signal} in dimension {index}" + ) + + indices = map(lambda x: f"{x}_indices", axes) + errors = map(lambda x: f"{x}_errors", [signal, *aux_signals, *axes]) + + # Handle all remaining keys which are not part of NXdata + remaining_keys = { + x: keys[x] + for x in keys + if x not in [signal, *axes, *indices, *errors, *aux_signals] + } + recurse_tree( + node, + remaining_keys, + prev_path=f"{prev_path}", + ignore_names=[ + "DATA", + "AXISNAME", + "AXISNAME_indices", + "FIELDNAME_errors", + "signal", + "auxiliary_signals", + "axes", + signal, + *axes, + *indices, + *errors, + *aux_signals, + ], + ) + + def handle_group(node: NexusGroup, keys: Mapping[str, Any], prev_path: str): variants = get_variations_of(node, keys) if not variants: if node.optionality == "required" and node.type in missing_type_err: @@ -225,16 +316,17 @@ def handle_group(node: NexusNode, keys: Mapping[str, Any], prev_path: str): None, ) return - recurse_tree(node, keys[variant], prev_path=f"{prev_path}/{variant}") + if node.nx_class == "NXdata": + handle_nxdata(node, keys[variant], prev_path=f"{prev_path}/{variant}") + else: + recurse_tree(node, keys[variant], prev_path=f"{prev_path}/{variant}") def remove_from_not_visited(path: str) -> str: if path in not_visited: not_visited.remove(path) return path - def _follow_link( - keys: Mapping[str, Any], prev_path: str - ) -> Optional[Mapping[str, Any]]: + def _follow_link(keys: Mapping[str, Any], prev_path: str) -> Optional[Any]: if len(keys) == 1 and "link" in keys: current_keys = nested_keys link_key = None @@ -267,8 +359,7 @@ def handle_field(node: NexusNode, keys: Mapping[str, Any], prev_path: str): for variant in variants: if node.optionality == "required" and isinstance(keys[variant], Mapping): - # TODO: Check if all fields in the dict are actual attributes - # (startwith @) + # Check if all fields in the dict are actual attributes (startwith @) all_attrs = True for entry in keys[variant]: if not entry.startswith("@"): @@ -407,8 +498,15 @@ def is_documented(key: str, node: NexusNode) -> bool: return is_valid_data_field(mapping[key], node.dtype, key) - def recurse_tree(node: NexusNode, keys: Mapping[str, Any], prev_path: str = ""): + def recurse_tree( + node: NexusNode, + keys: Mapping[str, Any], + prev_path: str = "", + ignore_names: Optional[List[str]] = None, + ): for child in node.children: + if ignore_names is not None and child.name in ignore_names: + continue keys = _follow_link(keys, prev_path) if keys is None: return From afc944d27ec5ed392ca8fe50f98d12b1e74e263f Mon Sep 17 00:00:00 2001 From: domna Date: Wed, 15 May 2024 23:14:45 +0200 Subject: [PATCH 64/76] Add documentation and update regression files --- pynxtools/dataconverter/nexus_tree.py | 15 +++++++++++++++ pynxtools/nexus-version.txt | 2 +- tests/data/nexus/Ref_nexus_test.log | 1 - 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index 06e35992e..90401ad46 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -186,6 +186,21 @@ def get_path(self) -> str: def search_child_with_name( self, names: Union[Tuple[str, ...], str] ) -> Optional["NexusNode"]: + """ + This searches a child or children with `names` in the current node. + If the child is not found as a direct child, + it will search in the inheritance chain and add the child to the tree. + + Args: + names (Union[Tuple[str, ...], str]): + Either a single string or a tuple of string. + In case this is a string the child with the specific name is searched. + If it is a tuple, the first match is used. + + Returns: + Optional[NexusNode]: + The node of the child which was added. None if no child was found. + """ if isinstance(names, str): names = (names,) for name in names: diff --git a/pynxtools/nexus-version.txt b/pynxtools/nexus-version.txt index 09132bf67..b1656e0bb 100644 --- a/pynxtools/nexus-version.txt +++ b/pynxtools/nexus-version.txt @@ -1 +1 @@ -v2022.07-1141-g755fb24be +v2022.07-1135-gc7025f188 \ No newline at end of file diff --git a/tests/data/nexus/Ref_nexus_test.log b/tests/data/nexus/Ref_nexus_test.log index 0f018879d..c20c49feb 100644 --- a/tests/data/nexus/Ref_nexus_test.log +++ b/tests/data/nexus/Ref_nexus_test.log @@ -530,7 +530,6 @@ DEBUG - -> summed DEBUG - -> event DEBUG - -> histogrammed DEBUG - -> decimated -DEBUG - -> pulse counting DEBUG - documentation (NXarpes.nxdl.xml:/ENTRY/INSTRUMENT/analyser/acquisition_mode): DEBUG - DEBUG - documentation (NXdetector.nxdl.xml:/acquisition_mode): From 16241d9dc2a7f60ea8fae93f20d186cfc61f20c8 Mon Sep 17 00:00:00 2001 From: domna Date: Thu, 16 May 2024 09:26:47 +0200 Subject: [PATCH 65/76] Fix follow_link for Nones --- pynxtools/dataconverter/validation.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index 474ae3bcd..e3dd188a1 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -326,7 +326,11 @@ def remove_from_not_visited(path: str) -> str: not_visited.remove(path) return path - def _follow_link(keys: Mapping[str, Any], prev_path: str) -> Optional[Any]: + def _follow_link( + keys: Optional[Mapping[str, Any]], prev_path: str + ) -> Optional[Any]: + if keys is None: + return None if len(keys) == 1 and "link" in keys: current_keys = nested_keys link_key = None From 4a7fd15eac399f605096ce5a8b2fbecac7d0be33 Mon Sep 17 00:00:00 2001 From: domna Date: Thu, 16 May 2024 13:15:17 +0200 Subject: [PATCH 66/76] Adds populate_full_tree function --- pynxtools/dataconverter/validation.py | 28 +++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index e3dd188a1..bdf75d5d9 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -562,6 +562,34 @@ def recurse_tree( return not collector.has_validation_problems() +def populate_full_tree(node: NexusNode, max_depth: Optional[int] = 5, depth: int = 0): + """ + Recursively populate the full tree. + + Args: + node (NexusNode): + The current node from which to populate the full tree. + max_depth (Optional[int], optional): + The maximum depth to populate the tree. Defaults to 5. + depth (int, optional): + The current depth. + This is used as a recursive parameter and should be + kept at the default value when calling this function. + Defaults to 0. + """ + if max_depth is not None and depth >= max_depth: + return + if node is None: + # TODO: node is None should actually not happen + # but it does while recursing the tree and it should + # be fixed. + return + for child in node.get_all_children_names(): + print(child) + child_node = node.search_child_with_name(child) + populate_full_tree(child_node, max_depth=max_depth, depth=depth + 1) + + # Backwards compatibility def validate_data_dict( _: Mapping[str, Any], read_data: Mapping[str, Any], root: ET._Element From ca1828414759538c0e93113f5f29c753fd3313b5 Mon Sep 17 00:00:00 2001 From: domna Date: Thu, 16 May 2024 13:29:11 +0200 Subject: [PATCH 67/76] Check for numpy ndarray before checking the shape --- pynxtools/dataconverter/validation.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index bdf75d5d9..bc5b96e8b 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -264,7 +264,7 @@ def handle_nxdata(node: NexusGroup, keys: Mapping[str, Any], prev_path: str): keys, prev_path=f"{prev_path}", ) - if data.shape[index] != len(axis_data): + if isinstance(data, np.ndarray) and data.shape[index] != len(axis_data): # TODO: Proper log print( f"Length of axis {prev_path}/{axis} does not " From 3db0d3efc5a120970867d01ca4b2b0a28488a1c7 Mon Sep 17 00:00:00 2001 From: domna Date: Thu, 16 May 2024 21:20:30 +0200 Subject: [PATCH 68/76] Fix inheritance chain issues --- pynxtools/__init__.py | 2 -- pynxtools/dataconverter/convert.py | 14 +++++++++++++- pynxtools/dataconverter/helpers.py | 17 +++++++++++++++-- pynxtools/dataconverter/nexus_tree.py | 24 +++++++++++++++++++----- pynxtools/dataconverter/validation.py | 12 +++++++----- pynxtools/definitions | 2 +- 6 files changed, 55 insertions(+), 16 deletions(-) diff --git a/pynxtools/__init__.py b/pynxtools/__init__.py index 176d9325b..52a749e5b 100644 --- a/pynxtools/__init__.py +++ b/pynxtools/__init__.py @@ -19,8 +19,6 @@ import os import re from datetime import datetime -from glob import glob -from typing import Union from pynxtools._build_wrapper import get_vcs_version from pynxtools.definitions.dev_tools.globals.nxdl import get_nxdl_version diff --git a/pynxtools/dataconverter/convert.py b/pynxtools/dataconverter/convert.py index 012311b99..a215ff6ac 100644 --- a/pynxtools/dataconverter/convert.py +++ b/pynxtools/dataconverter/convert.py @@ -163,7 +163,11 @@ def transfer_data_into_template( for entry_name in entry_names: helpers.write_nexus_def_to_entry(data, entry_name, nxdl_name) if not skip_verify: - validate_dict_against(nxdl_name, data) + validate_dict_against( + nxdl_name, + data, + ignore_undocumented=kwargs.get("ignore_undocumented", False), + ) return data @@ -318,6 +322,12 @@ def main_cli(): default=False, help="Shows a log output for all undocumented fields", ) +@click.option( + "--ignore-undocumented", + is_flag=True, + default=False, + help="Ignore all undocumented fields during validation.", +) @click.option( "--skip-verify", is_flag=True, @@ -338,6 +348,7 @@ def convert_cli( output: str, fair: bool, params_file: str, + ignore_undocumented: bool, undocumented: bool, skip_verify: bool, mapping: str, @@ -387,6 +398,7 @@ def convert_cli( fair, undocumented, skip_verify, + ignore_undocumented=ignore_undocumented, ) except FileNotFoundError as exc: raise click.BadParameter( diff --git a/pynxtools/dataconverter/helpers.py b/pynxtools/dataconverter/helpers.py index 76931dbc6..6eda203f5 100644 --- a/pynxtools/dataconverter/helpers.py +++ b/pynxtools/dataconverter/helpers.py @@ -124,10 +124,23 @@ def _log(self, path: str, log_type: ValidationProblem, value: Optional[Any], *ar elif log_type == ValidationProblem.FailedNamefitting: logger.warning(f"Found no namefit of {path} in {value}.") - def collect_and_log(self, path: str, *args, **kwargs): + def collect_and_log( + self, + path: str, + log_type: ValidationProblem, + value: Optional[Any], + *args, + **kwargs, + ): """Inserts a path into the data dictionary and logs the action.""" + if log_type == ValidationProblem.MissingUnit and value in ( + "NX_UNITLESS", + "NX_DIMENSIONLESS", + "NX_ANY", + ): + return if self.logging: - self._log(path, *args, **kwargs) + self._log(path, log_type, value, *args, **kwargs) self.data.add(path) def has_validation_problems(self): diff --git a/pynxtools/dataconverter/nexus_tree.py b/pynxtools/dataconverter/nexus_tree.py index 90401ad46..4d4c3968a 100644 --- a/pynxtools/dataconverter/nexus_tree.py +++ b/pynxtools/dataconverter/nexus_tree.py @@ -28,7 +28,6 @@ It also allows for adding further nodes from the inheritance chain on the fly. """ -from functools import lru_cache from typing import List, Literal, Optional, Set, Tuple, Union import lxml.etree as ET @@ -40,7 +39,6 @@ get_nxdl_root_and_path, remove_namespace_from_tag, ) -from pynxtools.definitions.dev_tools.utils.nxdl_utils import get_inherited_nodes NexusType = Literal[ "NX_BINARY", @@ -168,7 +166,6 @@ def _construct_inheritance_chain_from_parent(self): if elem is not None: self.inheritance.append(elem) - @lru_cache(maxsize=None) def get_path(self) -> str: """ Gets the path of the current node based on the node name. @@ -328,6 +325,23 @@ def get_docstring(self, depth: Optional[int] = None) -> List[str]: return docstrings + def _build_inheritance_chain(self, xml_elem: ET._Element) -> List[ET._Element]: + name = xml_elem.attrib.get("name") + inheritance_chain = [xml_elem] + for elem in self.inheritance: + inherited_elem = elem.xpath( + f"nx:group[@type='{xml_elem.attrib['type']}' and @name='{name}']" + if name is not None + else f"nx:group[@type='{xml_elem.attrib['type']}']", + namespaces=namespaces, + ) + if inherited_elem and inherited_elem[0] not in inheritance_chain: + inheritance_chain.append(inherited_elem[0]) + bc_xml_root, _ = get_nxdl_root_and_path(xml_elem.attrib["type"]) + inheritance_chain.append(bc_xml_root) + + return inheritance_chain + def add_node_from(self, xml_elem: ET._Element) -> Optional["NexusNode"]: """ Adds a children node to this node based on an xml element. @@ -352,7 +366,7 @@ def add_node_from(self, xml_elem: ET._Element) -> Optional["NexusNode"]: ) elif tag == "group": name = xml_elem.attrib.get("name", xml_elem.attrib["type"][2:].upper()) - *_, inheritance_chain = get_inherited_nodes("", elem=xml_elem) + inheritance_chain = self._build_inheritance_chain(xml_elem) current_elem = NexusGroup( parent=self, type=tag, @@ -632,7 +646,7 @@ def add_children_to(parent: NexusNode, xml_elem: ET._Element) -> None: optionality="required", variadic=False, parent=None, - inheritance=get_inherited_nodes("", elem=appdef_xml_root)[2], + inheritance=[appdef_xml_root], ) # Set root attributes nx_root, _ = get_nxdl_root_and_path("NXroot") diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index bc5b96e8b..9a1931fec 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -309,12 +309,14 @@ def handle_group(node: NexusGroup, keys: Mapping[str, Any], prev_path: str): ) return for variant in variants: + nx_class, _ = split_class_and_name_of(variant) if not isinstance(keys[variant], Mapping): - collector.collect_and_log( - f"{prev_path}/{variant}", - ValidationProblem.ExpectedGroup, - None, - ) + if nx_class is not None: + collector.collect_and_log( + f"{prev_path}/{variant}", + ValidationProblem.ExpectedGroup, + None, + ) return if node.nx_class == "NXdata": handle_nxdata(node, keys[variant], prev_path=f"{prev_path}/{variant}") diff --git a/pynxtools/definitions b/pynxtools/definitions index c7025f188..755fb24be 160000 --- a/pynxtools/definitions +++ b/pynxtools/definitions @@ -1 +1 @@ -Subproject commit c7025f1884a4f779498cc46b098c1c188078d004 +Subproject commit 755fb24be62e9cccd02f232e6512bc25aa6a4c89 From 16f0cd66dc8bb742f5f7c6347319ac8dca91a978 Mon Sep 17 00:00:00 2001 From: domna Date: Thu, 16 May 2024 21:26:33 +0200 Subject: [PATCH 69/76] Don't pass ignore_undocumented to reader --- pynxtools/dataconverter/convert.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pynxtools/dataconverter/convert.py b/pynxtools/dataconverter/convert.py index a215ff6ac..2ff15ec3c 100644 --- a/pynxtools/dataconverter/convert.py +++ b/pynxtools/dataconverter/convert.py @@ -156,6 +156,12 @@ def transfer_data_into_template( "The chosen NXDL isn't supported by the selected reader." ) + if "ignore_undocumented" in kwargs: + ignore_undocumented = kwargs["ignore_undocumented"] + del kwargs["ignore_undocumented"] + else: + ignore_undocumented = False + data = data_reader().read( # type: ignore[operator] template=Template(template), file_paths=input_file, **kwargs ) @@ -166,7 +172,7 @@ def transfer_data_into_template( validate_dict_against( nxdl_name, data, - ignore_undocumented=kwargs.get("ignore_undocumented", False), + ignore_undocumented=ignore_undocumented, ) return data From e3beacc7a9c10fabd278cd76958776854a021b8a Mon Sep 17 00:00:00 2001 From: domna Date: Thu, 16 May 2024 21:28:47 +0200 Subject: [PATCH 70/76] Adapt regression and version files --- pynxtools/nexus-version.txt | 2 +- tests/data/nexus/Ref_nexus_test.log | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/pynxtools/nexus-version.txt b/pynxtools/nexus-version.txt index b1656e0bb..5f9f77a40 100644 --- a/pynxtools/nexus-version.txt +++ b/pynxtools/nexus-version.txt @@ -1 +1 @@ -v2022.07-1135-gc7025f188 \ No newline at end of file +v2022.07-1141-g755fb24be \ No newline at end of file diff --git a/tests/data/nexus/Ref_nexus_test.log b/tests/data/nexus/Ref_nexus_test.log index c20c49feb..0f018879d 100644 --- a/tests/data/nexus/Ref_nexus_test.log +++ b/tests/data/nexus/Ref_nexus_test.log @@ -530,6 +530,7 @@ DEBUG - -> summed DEBUG - -> event DEBUG - -> histogrammed DEBUG - -> decimated +DEBUG - -> pulse counting DEBUG - documentation (NXarpes.nxdl.xml:/ENTRY/INSTRUMENT/analyser/acquisition_mode): DEBUG - DEBUG - documentation (NXdetector.nxdl.xml:/acquisition_mode): From 2159ed6ad738bf3052d877edd8d7c2cb7d3c03b7 Mon Sep 17 00:00:00 2001 From: domna Date: Thu, 16 May 2024 21:43:51 +0200 Subject: [PATCH 71/76] Properly nxdata problems --- pynxtools/dataconverter/helpers.py | 14 ++++++++++++++ pynxtools/dataconverter/validation.py | 28 +++++++++++++++++---------- 2 files changed, 32 insertions(+), 10 deletions(-) diff --git a/pynxtools/dataconverter/helpers.py b/pynxtools/dataconverter/helpers.py index 6eda203f5..64bed3171 100644 --- a/pynxtools/dataconverter/helpers.py +++ b/pynxtools/dataconverter/helpers.py @@ -55,6 +55,10 @@ class ValidationProblem(Enum): AttributeForNonExistingField = 14 BrokenLink = 15 FailedNamefitting = 16 + NXdataMissingSignal = 17 + NXdataMissingSignalData = 18 + NXdataMissingAxisData = 19 + NXdataAxisMismatch = 20 class Collector: @@ -123,6 +127,16 @@ def _log(self, path: str, log_type: ValidationProblem, value: Optional[Any], *ar logger.warning(f"Broken link at {path} to {value}") elif log_type == ValidationProblem.FailedNamefitting: logger.warning(f"Found no namefit of {path} in {value}.") + elif log_type == ValidationProblem.NXdataMissingSignal: + logger.warning(f"Missing signal in {path}.") + elif log_type == ValidationProblem.NXdataMissingSignalData: + logger.warning(f"Missing data for signal in {path}.") + elif log_type == ValidationProblem.NXdataMissingAxisData: + logger.warning(f"Missing data for @axes in {path}.") + elif log_type == ValidationProblem.NXdataAxisMismatch: + logger.warning( + f"Length of axis {path} does not match to {value} in dimension {args[0]}" + ) def collect_and_log( self, diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index 9a1931fec..fdfa304d2 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -218,16 +218,20 @@ def handle_nxdata(node: NexusGroup, keys: Mapping[str, Any], prev_path: str): axes = keys.get("@axes", []) if signal is None: - # TODO: Make proper log of missing signal - print(f"Missing signal in {prev_path}") + collector.collect_and_log( + f"{prev_path}", ValidationProblem.NXdataMissingSignal, None + ) data = keys.get(signal) if data is None: - # TODO: Make proper log of missing data - print(f"Missing data for @signal in {prev_path}/{signal}") + collector.collect_and_log( + f"{prev_path}/{signal}", ValidationProblem.NXdataMissingSignalData, None + ) else: # Attach the base class to the inheritance chain # if the concept for signal is already defined in the appdef + # TODO: This appends the base class multiple times + # it should be done only once data_node = node.search_child_with_name((signal, "DATA")) data_bc_node = node.search_child_with_name("DATA") data_node.inheritance.append(data_bc_node.inheritance[0]) @@ -247,12 +251,15 @@ def handle_nxdata(node: NexusGroup, keys: Mapping[str, Any], prev_path: str): axis_data = _follow_link(keys.get(axis), prev_path) if axis_data is None: - # TODO: Proper log - print(f"Missing data for @axes in {prev_path}/{axis}") + collector.collect_and_log( + f"{prev_path}/{axis}", ValidationProblem.NXdataMissingAxisData, None + ) break else: # Attach the base class to the inheritance chain # if the concept for the axis is already defined in the appdef + # TODO: This appends the base class multiple times + # it should be done only once axis_node = node.search_child_with_name((axis, "AXISNAME")) axis_bc_node = node.search_child_with_name("AXISNAME") axis_node.inheritance.append(axis_bc_node.inheritance[0]) @@ -265,10 +272,11 @@ def handle_nxdata(node: NexusGroup, keys: Mapping[str, Any], prev_path: str): prev_path=f"{prev_path}", ) if isinstance(data, np.ndarray) and data.shape[index] != len(axis_data): - # TODO: Proper log - print( - f"Length of axis {prev_path}/{axis} does not " - f"match to {prev_path}/{signal} in dimension {index}" + collector.collect_and_log( + f"{prev_path}/{axis}", + ValidationProblem.NXdataAxisMismatch, + f"{prev_path}/{signal}", + index, ) indices = map(lambda x: f"{x}_indices", axes) From b32936ee4c9ef3bcb72e266c9eba04ebdd4fbe9f Mon Sep 17 00:00:00 2001 From: domna Date: Thu, 16 May 2024 21:59:44 +0200 Subject: [PATCH 72/76] Don't require `@signal` in NXdata --- pynxtools/dataconverter/helpers.py | 9 +- pynxtools/dataconverter/validation.py | 113 +++++++++++++------------- 2 files changed, 61 insertions(+), 61 deletions(-) diff --git a/pynxtools/dataconverter/helpers.py b/pynxtools/dataconverter/helpers.py index 64bed3171..222453f7a 100644 --- a/pynxtools/dataconverter/helpers.py +++ b/pynxtools/dataconverter/helpers.py @@ -55,10 +55,9 @@ class ValidationProblem(Enum): AttributeForNonExistingField = 14 BrokenLink = 15 FailedNamefitting = 16 - NXdataMissingSignal = 17 - NXdataMissingSignalData = 18 - NXdataMissingAxisData = 19 - NXdataAxisMismatch = 20 + NXdataMissingSignalData = 17 + NXdataMissingAxisData = 18 + NXdataAxisMismatch = 19 class Collector: @@ -127,8 +126,6 @@ def _log(self, path: str, log_type: ValidationProblem, value: Optional[Any], *ar logger.warning(f"Broken link at {path} to {value}") elif log_type == ValidationProblem.FailedNamefitting: logger.warning(f"Found no namefit of {path} in {value}.") - elif log_type == ValidationProblem.NXdataMissingSignal: - logger.warning(f"Missing signal in {path}.") elif log_type == ValidationProblem.NXdataMissingSignalData: logger.warning(f"Missing data for signal in {path}.") elif log_type == ValidationProblem.NXdataMissingAxisData: diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index fdfa304d2..f8db47811 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -212,72 +212,75 @@ def get_field_attributes(name: str, keys: Mapping[str, Any]) -> Mapping[str, Any return {k.split("@")[1]: keys[k] for k in keys if k.startswith(f"{name}@")} def handle_nxdata(node: NexusGroup, keys: Mapping[str, Any], prev_path: str): - keys = _follow_link(keys, prev_path) - signal = keys.get("@signal") - aux_signals = keys.get("@auxiliary_signals", []) - axes = keys.get("@axes", []) - - if signal is None: - collector.collect_and_log( - f"{prev_path}", ValidationProblem.NXdataMissingSignal, None - ) - - data = keys.get(signal) - if data is None: - collector.collect_and_log( - f"{prev_path}/{signal}", ValidationProblem.NXdataMissingSignalData, None - ) - else: - # Attach the base class to the inheritance chain - # if the concept for signal is already defined in the appdef - # TODO: This appends the base class multiple times - # it should be done only once - data_node = node.search_child_with_name((signal, "DATA")) - data_bc_node = node.search_child_with_name("DATA") - data_node.inheritance.append(data_bc_node.inheritance[0]) - for child in data_node.get_all_children_names(): - data_node.search_child_with_name(child) - - handle_field( - node.search_child_with_name((signal, "DATA")), - keys, - prev_path=f"{prev_path}", - ) - - for i, axis in enumerate(axes): - if axis == ".": - continue - index = keys.get(f"{axis}_indices", i) - - axis_data = _follow_link(keys.get(axis), prev_path) - if axis_data is None: + def check_nxdata(): + data = keys.get(signal) if signal is not None else None + if data is None: collector.collect_and_log( - f"{prev_path}/{axis}", ValidationProblem.NXdataMissingAxisData, None + f"{prev_path}/{signal}", + ValidationProblem.NXdataMissingSignalData, + None, ) - break else: # Attach the base class to the inheritance chain - # if the concept for the axis is already defined in the appdef + # if the concept for signal is already defined in the appdef # TODO: This appends the base class multiple times # it should be done only once - axis_node = node.search_child_with_name((axis, "AXISNAME")) - axis_bc_node = node.search_child_with_name("AXISNAME") - axis_node.inheritance.append(axis_bc_node.inheritance[0]) - for child in axis_node.get_all_children_names(): - axis_node.search_child_with_name(child) + data_node = node.search_child_with_name((signal, "DATA")) + data_bc_node = node.search_child_with_name("DATA") + data_node.inheritance.append(data_bc_node.inheritance[0]) + for child in data_node.get_all_children_names(): + data_node.search_child_with_name(child) handle_field( - node.search_child_with_name((axis, "AXISNAME")), + node.search_child_with_name((signal, "DATA")), keys, prev_path=f"{prev_path}", ) - if isinstance(data, np.ndarray) and data.shape[index] != len(axis_data): - collector.collect_and_log( - f"{prev_path}/{axis}", - ValidationProblem.NXdataAxisMismatch, - f"{prev_path}/{signal}", - index, - ) + + for i, axis in enumerate(axes): + if axis == ".": + continue + index = keys.get(f"{axis}_indices", i) + + axis_data = _follow_link(keys.get(axis), prev_path) + if axis_data is None: + collector.collect_and_log( + f"{prev_path}/{axis}", + ValidationProblem.NXdataMissingAxisData, + None, + ) + break + else: + # Attach the base class to the inheritance chain + # if the concept for the axis is already defined in the appdef + # TODO: This appends the base class multiple times + # it should be done only once + axis_node = node.search_child_with_name((axis, "AXISNAME")) + axis_bc_node = node.search_child_with_name("AXISNAME") + axis_node.inheritance.append(axis_bc_node.inheritance[0]) + for child in axis_node.get_all_children_names(): + axis_node.search_child_with_name(child) + + handle_field( + node.search_child_with_name((axis, "AXISNAME")), + keys, + prev_path=f"{prev_path}", + ) + if isinstance(data, np.ndarray) and data.shape[index] != len(axis_data): + collector.collect_and_log( + f"{prev_path}/{axis}", + ValidationProblem.NXdataAxisMismatch, + f"{prev_path}/{signal}", + index, + ) + + keys = _follow_link(keys, prev_path) + signal = keys.get("@signal") + aux_signals = keys.get("@auxiliary_signals", []) + axes = keys.get("@axes", []) + + if signal is not None: + check_nxdata() indices = map(lambda x: f"{x}_indices", axes) errors = map(lambda x: f"{x}_errors", [signal, *aux_signals, *axes]) From 03c17b655bfb26b2bfcbd375d096ebf2eb723c5a Mon Sep 17 00:00:00 2001 From: domna Date: Thu, 16 May 2024 22:08:24 +0200 Subject: [PATCH 73/76] Don't iterate over string for axes --- pynxtools/dataconverter/validation.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index f8db47811..f076f9c5a 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -237,6 +237,8 @@ def check_nxdata(): prev_path=f"{prev_path}", ) + if isinstance(axes, str): + axes = [axes] for i, axis in enumerate(axes): if axis == ".": continue From 827f80c5395a378a76d398a1485a49b14cadb926 Mon Sep 17 00:00:00 2001 From: domna Date: Thu, 16 May 2024 22:11:22 +0200 Subject: [PATCH 74/76] Correctly check for str as axes --- pynxtools/dataconverter/validation.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index f076f9c5a..f948c1e29 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -237,8 +237,6 @@ def check_nxdata(): prev_path=f"{prev_path}", ) - if isinstance(axes, str): - axes = [axes] for i, axis in enumerate(axes): if axis == ".": continue @@ -280,6 +278,8 @@ def check_nxdata(): signal = keys.get("@signal") aux_signals = keys.get("@auxiliary_signals", []) axes = keys.get("@axes", []) + if isinstance(axes, str): + axes = [axes] if signal is not None: check_nxdata() From 91c0420967a9ea2cf4713bf9e9f2fdc76013b89d Mon Sep 17 00:00:00 2001 From: domna Date: Thu, 16 May 2024 22:40:59 +0200 Subject: [PATCH 75/76] Small nxdata handling improvements --- pynxtools/dataconverter/validation.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/pynxtools/dataconverter/validation.py b/pynxtools/dataconverter/validation.py index f948c1e29..26025eb04 100644 --- a/pynxtools/dataconverter/validation.py +++ b/pynxtools/dataconverter/validation.py @@ -213,7 +213,11 @@ def get_field_attributes(name: str, keys: Mapping[str, Any]) -> Mapping[str, Any def handle_nxdata(node: NexusGroup, keys: Mapping[str, Any], prev_path: str): def check_nxdata(): - data = keys.get(signal) if signal is not None else None + data = ( + keys.get(f"DATA[{signal}]") + if f"DATA[{signal}]" in keys + else keys.get(signal) + ) if data is None: collector.collect_and_log( f"{prev_path}/{signal}", @@ -234,7 +238,7 @@ def check_nxdata(): handle_field( node.search_child_with_name((signal, "DATA")), keys, - prev_path=f"{prev_path}", + prev_path=prev_path, ) for i, axis in enumerate(axes): @@ -242,6 +246,8 @@ def check_nxdata(): continue index = keys.get(f"{axis}_indices", i) + if f"AXISNAME[{axis}]" in keys: + axis = f"AXISNAME[{axis}]" axis_data = _follow_link(keys.get(axis), prev_path) if axis_data is None: collector.collect_and_log( @@ -264,7 +270,7 @@ def check_nxdata(): handle_field( node.search_child_with_name((axis, "AXISNAME")), keys, - prev_path=f"{prev_path}", + prev_path=prev_path, ) if isinstance(data, np.ndarray) and data.shape[index] != len(axis_data): collector.collect_and_log( @@ -296,7 +302,7 @@ def check_nxdata(): recurse_tree( node, remaining_keys, - prev_path=f"{prev_path}", + prev_path=prev_path, ignore_names=[ "DATA", "AXISNAME", From 87f1375c4a422a67740eeb2b575a44a2015c2693 Mon Sep 17 00:00:00 2001 From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com> Date: Fri, 17 May 2024 12:42:59 +0200 Subject: [PATCH 76/76] update definitions --- pynxtools/definitions | 2 +- pynxtools/nexus-version.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pynxtools/definitions b/pynxtools/definitions index 755fb24be..ea6b7b221 160000 --- a/pynxtools/definitions +++ b/pynxtools/definitions @@ -1 +1 @@ -Subproject commit 755fb24be62e9cccd02f232e6512bc25aa6a4c89 +Subproject commit ea6b7b2210c89bc1ee91b696af51991a779c20c8 diff --git a/pynxtools/nexus-version.txt b/pynxtools/nexus-version.txt index 5f9f77a40..0d2ed9c24 100644 --- a/pynxtools/nexus-version.txt +++ b/pynxtools/nexus-version.txt @@ -1 +1 @@ -v2022.07-1141-g755fb24be \ No newline at end of file +v2022.07-1159-gea6b7b221 \ No newline at end of file