diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 99d021359..72f809daf 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,92 +1,92 @@ -name: Tests - -on: [push, pull_request] - -jobs: - unittest: - runs-on: ubuntu-latest - strategy: - matrix: - python-version: [3.9, '3.10', '3.11', '3.12'] - steps: - - name: Checkout PyAutoConf - uses: actions/checkout@v2 - with: - repository: rhayes777/PyAutoConf - path: PyAutoConf - - name: Checkout PyAutoArray - uses: actions/checkout@v2 - with: - path: PyAutoArray - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 - with: - python-version: ${{ matrix.python-version }} - - uses: actions/cache@v2 - id: cache-pip - with: - path: ~/.cache/pip - key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }} - restore-keys: | - ${{ runner.os }}-pip- - - name: Install dependencies - # if: steps.cache-pip.outputs.cache-hit != 'true' - run: | - pip3 install --upgrade pip - pip3 install setuptools - pip3 install wheel - pip3 install pytest coverage pytest-cov - pip3 install -r PyAutoConf/requirements.txt - pip3 install -r PyAutoArray/requirements.txt - pip3 install -r PyAutoArray/optional_requirements.txt - - cd PyAutoArray/autoarray/util/nn/src/nn - export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/runner/work/PyAutoArray/PyAutoArray/PyAutoArray/autoarray/util/nn/src/nn - bash ./configure - cp makefile_autolens makefile - make - cd /home/runner/work/PyAutoArray/PyAutoArray - - - name: Extract branch name - shell: bash - run: | - cd PyAutoArray - echo "##[set-output name=branch;]$(echo ${GITHUB_REF#refs/heads/})" - id: extract_branch - - name: Change to same branch if exists in deps - shell: bash - run: | - export PACKAGES=("PyAutoConf") - export BRANCH="${{ steps.extract_branch.outputs.branch }}" - for PACKAGE in ${PACKAGES[@]}; do - pushd $PACKAGE - export existed_in_remote=$(git ls-remote --heads origin ${BRANCH}) - if [[ -z ${existed_in_remote} ]]; then - echo "Branch $BRANCH did not exist in $PACKAGE" - else - echo "Branch $BRANCH did exist in $PACKAGE" - git fetch - git checkout $BRANCH - fi - popd - done - - name: Run tests - run: | - export ROOT_DIR=`pwd` - export PYTHONPATH=$PYTHONPATH:$ROOT_DIR/PyAutoConf - export PYTHONPATH=$PYTHONPATH:$ROOT_DIR/PyAutoArray - export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/runner/work/PyAutoArray/PyAutoArray/PyAutoArray/autoarray/util/nn/src/nn - pushd PyAutoArray - python3 -m pytest --cov autoarray --cov-report xml:coverage.xml - - name: Slack send - if: ${{ failure() }} - id: slack - uses: slackapi/slack-github-action@v1.21.0 - env: - SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} - with: - channel-id: C03S98FEDK2 - payload: | - { - "text": "${{ github.repository }}/${{ github.ref_name }} (Python ${{ matrix.python-version }}) build result: ${{ job.status }}\n${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}" +name: Tests + +on: [push, pull_request] + +jobs: + unittest: + runs-on: ubuntu-latest + strategy: + matrix: + python-version: [3.9, '3.10', '3.11', '3.12'] + steps: + - name: Checkout PyAutoConf + uses: actions/checkout@v2 + with: + repository: rhayes777/PyAutoConf + path: PyAutoConf + - name: Checkout PyAutoArray + uses: actions/checkout@v2 + with: + path: PyAutoArray + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v4 + with: + python-version: ${{ matrix.python-version }} + - uses: actions/cache@v2 + id: cache-pip + with: + path: ~/.cache/pip + key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }} + restore-keys: | + ${{ runner.os }}-pip- + - name: Install dependencies + # if: steps.cache-pip.outputs.cache-hit != 'true' + run: | + pip3 install --upgrade pip + pip3 install setuptools + pip3 install wheel + pip3 install pytest coverage pytest-cov + pip3 install -r PyAutoConf/requirements.txt + pip3 install -r PyAutoArray/requirements.txt + pip3 install -r PyAutoArray/optional_requirements.txt + + cd PyAutoArray/autoarray/util/nn/src/nn + export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/runner/work/PyAutoArray/PyAutoArray/PyAutoArray/autoarray/util/nn/src/nn + bash ./configure + cp makefile_autolens makefile + make + cd /home/runner/work/PyAutoArray/PyAutoArray + + - name: Extract branch name + shell: bash + run: | + cd PyAutoArray + echo "##[set-output name=branch;]$(echo ${GITHUB_REF#refs/heads/})" + id: extract_branch + - name: Change to same branch if exists in deps + shell: bash + run: | + export PACKAGES=("PyAutoConf") + export BRANCH="${{ steps.extract_branch.outputs.branch }}" + for PACKAGE in ${PACKAGES[@]}; do + pushd $PACKAGE + export existed_in_remote=$(git ls-remote --heads origin ${BRANCH}) + if [[ -z ${existed_in_remote} ]]; then + echo "Branch $BRANCH did not exist in $PACKAGE" + else + echo "Branch $BRANCH did exist in $PACKAGE" + git fetch + git checkout $BRANCH + fi + popd + done + - name: Run tests + run: | + export ROOT_DIR=`pwd` + export PYTHONPATH=$PYTHONPATH:$ROOT_DIR/PyAutoConf + export PYTHONPATH=$PYTHONPATH:$ROOT_DIR/PyAutoArray + export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/runner/work/PyAutoArray/PyAutoArray/PyAutoArray/autoarray/util/nn/src/nn + pushd PyAutoArray + python3 -m pytest --cov autoarray --cov-report xml:coverage.xml + - name: Slack send + if: ${{ failure() }} + id: slack + uses: slackapi/slack-github-action@v1.21.0 + env: + SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} + with: + channel-id: C03S98FEDK2 + payload: | + { + "text": "${{ github.repository }}/${{ github.ref_name }} (Python ${{ matrix.python-version }}) build result: ${{ job.status }}\n${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}" } \ No newline at end of file diff --git a/autoarray/config/general.yaml b/autoarray/config/general.yaml index a6cb8d5dc..622019409 100644 --- a/autoarray/config/general.yaml +++ b/autoarray/config/general.yaml @@ -1,18 +1,18 @@ -fits: - flip_for_ds9: false # If True, the image is flipped before output to a .fits file, which is useful for viewing in DS9. -inversion: - check_reconstruction: true # If True, the inversion's reconstruction is checked to ensure the solution of a meshs's mapper is not an invalid solution where the values are all the same. - use_positive_only_solver: true # If True, inversion's use a positive-only linear algebra solver by default, which is slower but prevents unphysical negative values in the reconstructed solutuion. - no_regularization_add_to_curvature_diag_value : 1.0e-3 # The default value added to the curvature matrix's diagonal when regularization is not applied to a linear object, which prevents inversion's failing due to the matrix being singular. - positive_only_uses_p_initial: true # If True, the positive-only solver of an inversion's uses an initial guess of the reconstructed data's values as which values should be positive, speeding up the solver. - use_border_relocator: false # If True, by default a pixelization's border is used to relocate all pixels outside its border to the border. - reconstruction_vmax_factor: 0.5 # Plots of an Inversion's reconstruction use the reconstructed data's bright value multiplied by this factor. -numba: - use_numba: true - cache: false - nopython: true - parallel: false -pixelization: - voronoi_nn_max_interpolation_neighbors: 300 -structures: - native_binned_only: false # If True, data structures are only stored in their native and binned format. This is used to reduce memory usage in autocti. +fits: + flip_for_ds9: false # If True, the image is flipped before output to a .fits file, which is useful for viewing in DS9. +inversion: + check_reconstruction: true # If True, the inversion's reconstruction is checked to ensure the solution of a meshs's mapper is not an invalid solution where the values are all the same. + use_positive_only_solver: true # If True, inversion's use a positive-only linear algebra solver by default, which is slower but prevents unphysical negative values in the reconstructed solutuion. + no_regularization_add_to_curvature_diag_value : 1.0e-3 # The default value added to the curvature matrix's diagonal when regularization is not applied to a linear object, which prevents inversion's failing due to the matrix being singular. + positive_only_uses_p_initial: true # If True, the positive-only solver of an inversion's uses an initial guess of the reconstructed data's values as which values should be positive, speeding up the solver. + use_border_relocator: false # If True, by default a pixelization's border is used to relocate all pixels outside its border to the border. + reconstruction_vmax_factor: 0.5 # Plots of an Inversion's reconstruction use the reconstructed data's bright value multiplied by this factor. +numba: + use_numba: true + cache: false + nopython: true + parallel: false +pixelization: + voronoi_nn_max_interpolation_neighbors: 300 +structures: + native_binned_only: false # If True, data structures are only stored in their native and binned format. This is used to reduce memory usage in autocti. diff --git a/autoarray/config/grids.yaml b/autoarray/config/grids.yaml index f82eaa5df..1eb72c815 100644 --- a/autoarray/config/grids.yaml +++ b/autoarray/config/grids.yaml @@ -1,3 +1,3 @@ -radial_minimum: - function_name: - class_name: 1.0e-08 +radial_minimum: + function_name: + class_name: 1.0e-08 diff --git a/autoarray/config/logging.yaml b/autoarray/config/logging.yaml index 3a6b54b0c..5c1f22c75 100644 --- a/autoarray/config/logging.yaml +++ b/autoarray/config/logging.yaml @@ -1,22 +1,22 @@ -version: 1 -disable_existing_loggers: false - -handlers: - console: - class: logging.StreamHandler - level: INFO - stream: ext://sys.stdout - formatter: formatter - file: - class: logging.FileHandler - level: INFO - filename: root.log - formatter: formatter - -root: - level: INFO - handlers: [ console, file ] - -formatters: - formatter: - format: '%(asctime)s - %(name)s - %(levelname)s - %(message)s' +version: 1 +disable_existing_loggers: false + +handlers: + console: + class: logging.StreamHandler + level: INFO + stream: ext://sys.stdout + formatter: formatter + file: + class: logging.FileHandler + level: INFO + filename: root.log + formatter: formatter + +root: + level: INFO + handlers: [ console, file ] + +formatters: + formatter: + format: '%(asctime)s - %(name)s - %(levelname)s - %(message)s' diff --git a/autoarray/numpy_wrapper.py b/autoarray/numpy_wrapper.py index 3f534d995..7db7f5df6 100644 --- a/autoarray/numpy_wrapper.py +++ b/autoarray/numpy_wrapper.py @@ -1,37 +1,37 @@ -import logging - -from os import environ - -use_jax = environ.get("USE_JAX", "0") == "1" - -if use_jax: - try: - import jax - from jax import numpy as np, jit - - print("JAX mode enabled") - except ImportError: - raise ImportError( - "JAX is not installed. Please install it with `pip install jax`." - ) -else: - import numpy as np - - def jit(function, *_, **__): - return function - - -try: - from jax._src.tree_util import register_pytree_node - from jax._src.tree_util import register_pytree_node_class - - from jax import Array -except ImportError: - - def register_pytree_node_class(cls): - return cls - - def register_pytree_node(*_, **__): - pass - - Array = np.ndarray +import logging + +from os import environ + +use_jax = environ.get("USE_JAX", "0") == "1" + +if use_jax: + try: + import jax + from jax import numpy as np, jit + + print("JAX mode enabled") + except ImportError: + raise ImportError( + "JAX is not installed. Please install it with `pip install jax`." + ) +else: + import numpy as np + + def jit(function, *_, **__): + return function + + +try: + from jax._src.tree_util import register_pytree_node + from jax._src.tree_util import register_pytree_node_class + + from jax import Array +except ImportError: + + def register_pytree_node_class(cls): + return cls + + def register_pytree_node(*_, **__): + pass + + Array = np.ndarray diff --git a/autoarray/structures/arrays/kernel_2d.py b/autoarray/structures/arrays/kernel_2d.py index 0bef160dc..68290f571 100644 --- a/autoarray/structures/arrays/kernel_2d.py +++ b/autoarray/structures/arrays/kernel_2d.py @@ -52,7 +52,7 @@ def __init__( ) if normalize: - self._array[:] = np.divide(self._array, np.sum(self._array)) + self._array = np.divide(self._array, np.sum(self._array)) @classmethod def no_mask( @@ -84,7 +84,7 @@ def no_mask( If True, the Kernel2D's array values are normalized such that they sum to 1.0. """ values = Array2D.no_mask( - values=values, + values=values.array, shape_native=shape_native, pixel_scales=pixel_scales, origin=origin, diff --git a/autoarray/structures/grids/uniform_2d.py b/autoarray/structures/grids/uniform_2d.py index b1c147af2..5dc52afa9 100644 --- a/autoarray/structures/grids/uniform_2d.py +++ b/autoarray/structures/grids/uniform_2d.py @@ -1,1107 +1,1107 @@ -from __future__ import annotations -from autoarray.numpy_wrapper import np, use_jax -from pathlib import Path -from typing import TYPE_CHECKING, List, Optional, Tuple, Union - -if TYPE_CHECKING: - from autoarray.operators.over_sampling.abstract import AbstractOverSampling - -from autoconf import conf -from autoconf import cached_property - -from autoarray.mask.mask_2d import Mask2D -from autoarray.operators.over_sampling.abstract import AbstractOverSampler -from autoarray.structures.abstract_structure import Structure -from autoarray.structures.arrays.uniform_2d import Array2D -from autoarray.structures.grids.irregular_2d import Grid2DIrregular - -from autoarray.structures.arrays import array_2d_util -from autoarray.structures.grids import grid_2d_util -from autoarray.geometry import geometry_util - -from autoarray import type as ty - - -class Grid2D(Structure): - def __init__( - self, - values: Union[np.ndarray, List], - mask: Mask2D, - store_native: bool = False, - over_sampling: Optional[AbstractOverSampling] = None, - over_sampling_non_uniform: Optional[AbstractOverSampling] = None, - *args, - **kwargs, - ): - """ - A grid of 2D (y,x) coordinates, which are paired to a uniform 2D mask of pixels. Each entry - on the grid corresponds to the (y,x) coordinates at the centre of a pixel of an unmasked pixel. - - A `Grid2D` is ordered such that pixels begin from the top-row (e.g. index [0, 0]) of the corresponding mask - and go right and down. The positive y-axis is upwards and positive x-axis to the right. - - The grid can be stored in two formats: - - - slimmed: all masked entries are removed so the ndarray is shape [total_unmasked_coordinates**2, 2] - - native: it retains the original shape of the grid so the ndarray is - shape [total_y_coordinates, total_x_coordinates, 2]. - - - __Slim__ - - The Grid2D is an ndarray of shape [total_unmasked_coordinates, 2], therefore when `slim` the shape of - the grid is 2, not 1. - - The first element of the ndarray corresponds to the pixel index and second element the y or x coordinate value. - - For example: - - - grid[3,0] = the 4th unmasked pixel's y-coordinate. - - grid[6,1] = the 7th unmasked pixel's x-coordinate. - - Below is a visual illustration of a grid, where a total of 10 pixels are unmasked and are included in \ - the grid. - - .. code-block:: bash - - x x x x x x x x x x - x x x x x x x x x x This is an example mask.Mask2D, where: - x x x x x x x x x x - x x x x O O x x x x x = `True` (Pixel is masked and excluded from the grid) - x x x O O O O x x x O = `False` (Pixel is not masked and included in the grid) - x x x O O O O x x x - x x x x x x x x x x - x x x x x x x x x x - x x x x x x x x x x - x x x x x x x x x x - - The mask pixel index's will come out like this (and the direction of scaled coordinates is highlighted - around the mask. - - .. code-block:: bash - - pixel_scales = 1.0" - - <--- -ve x +ve --> - y x - x x x x x x x x x x ^ grid[0] = [ 1.5, -0.5] - x x x x x x x x x x I grid[1] = [ 1.5, 0.5] - x x x x x x x x x x I grid[2] = [ 0.5, -1.5] - x x x x 0 1 x x x x +ve grid[3] = [ 0.5, -0.5] - x x x 2 3 4 5 x x x y grid[4] = [ 0.5, 0.5] - x x x 6 7 8 9 x x x -ve grid[5] = [ 0.5, 1.5] - x x x x x x x x x x I grid[6] = [-0.5, -1.5] - x x x x x x x x x x I grid[7] = [-0.5, -0.5] - x x x x x x x x x x \/ grid[8] = [-0.5, 0.5] - x x x x x x x x x x grid[9] = [-0.5, 1.5] - - __native__ - - The Grid2D has the same properties as Case 1, but is stored as an an ndarray of shape - [total_y_coordinates, total_x_coordinates, 2]. Therefore when `native` the shape of the - grid is 3, not 2. - - All masked entries on the grid has (y,x) values of (0.0, 0.0). - - For the following example mask: - - .. code-block:: bash - - x x x x x x x x x x - x x x x x x x x x x This is an example mask.Mask2D, where: - x x x x x x x x x x - x x x x O O x x x x x = `True` (Pixel is masked and excluded from the grid) - x x x O O O O x x x O = `False` (Pixel is not masked and included in the grid) - x x x O O O O x x x - x x x x x x x x x x - x x x x x x x x x x - x x x x x x x x x x - x x x x x x x x x x - - In the above grid: - - - grid[0,0,0] = 0.0 (it is masked, thus zero) - - grid[0,0,1] = 0.0 (it is masked, thus zero) - - grid[3,3,0] = 0.0 (it is masked, thus zero) - - grid[3,3,1] = 0.0 (it is masked, thus zero) - - grid[3,4,0] = 1.5 - - grid[3,4,1] = -0.5 - - - - - - **Grid2D Mapping:** - - Every set of (y,x) coordinates in a pixel of the grid maps to an unmasked pixel in the mask. For a uniform - grid, every (y,x) coordinate directly corresponds to the location of its paired unmasked pixel. - - It is not a requirement that grid is uniform and that their coordinates align with the mask. The input grid - could be an irregular set of (y,x) coordinates where the indexing signifies that the (y,x) coordinate - *originates* or *is paired with* the mask's pixels but has had its value change by some aspect of the - calculation. - - This is important for the child project *PyAutoLens*, where grids in the image-plane are ray-traced and - deflected to perform lensing calculations. The grid indexing is used to map pixels between the image-plane and - source-plane. - - Parameters - ---------- - values - The (y,x) coordinates of the grid. - mask - The 2D mask associated with the grid, defining the pixels each grid coordinate is paired with and - originates from. - store_native - If True, the ndarray is stored in its native format [total_y_pixels, total_x_pixels, 2]. This avoids - mapping large data arrays to and from the slim / native formats, which can be a computational bottleneck. - over_sampling - The over sampling scheme, which divides the grid into a sub grid of smaller pixels when computing values - (e.g. images) from the grid so as to approximate the 2D line integral of the amount of light that falls - into each pixel. - """ - values = grid_2d_util.convert_grid_2d( - grid_2d=values, - mask_2d=mask, - store_native=store_native, - ) - - super().__init__(values) - - self.mask = mask - - grid_2d_util.check_grid_2d(grid_2d=values) - - self.over_sampling = over_sampling - self.over_sampling_non_uniform = over_sampling_non_uniform - - @classmethod - def no_mask( - cls, - values: Union[np.ndarray, List], - pixel_scales: ty.PixelScales, - shape_native: Tuple[int, int] = None, - origin: Tuple[float, float] = (0.0, 0.0), - over_sampling: Optional[AbstractOverSampling] = None, - ) -> "Grid2D": - """ - Create a Grid2D (see *Grid2D.__new__*) by inputting the grid coordinates in 1D or 2D, automatically - determining whether to use the 'manual_slim' or 'manual_native' methods. - - From 1D input the method cannot determine the 2D shape of the grid and its mask, thus the shape_native must be - input into this method. The mask is setup as a unmasked `Mask2D` of shape_native. - - The 2D shape of the grid and its mask are determined from the input grid and the mask is setup as an - unmasked `Mask2D` of shape_native. - - Parameters - ---------- - values - The (y,x) coordinates of the grid input as an ndarray of shape [total_unmasked_pixels, 2] - or a list of lists. - shape_native - The 2D shape of the mask the grid is paired with. - pixel_scales - The (y,x) arcsecond-to-pixel units conversion factor of every pixel. If this is input as a `float`, - it is converted to a (float, float). - origin - The origin of the grid's mask. - """ - - pixel_scales = geometry_util.convert_pixel_scales_2d(pixel_scales=pixel_scales) - - values = grid_2d_util.convert_grid(grid=values) - - if len(values.shape) == 2: - grid_2d_util.check_grid_slim(grid=values, shape_native=shape_native) - else: - shape_native = ( - int(values.shape[0]), - int(values.shape[1]), - ) - - mask = Mask2D.all_false( - shape_native=shape_native, - pixel_scales=pixel_scales, - origin=origin, - ) - - return Grid2D( - values=values, - mask=mask, - over_sampling=over_sampling, - ) - - @classmethod - def from_yx_1d( - cls, - y: Union[np.ndarray, List], - x: np.ndarray, - shape_native: Tuple[int, int], - pixel_scales: ty.PixelScales, - origin: Tuple[float, float] = (0.0, 0.0), - over_sampling: Optional[AbstractOverSampling] = None, - ) -> "Grid2D": - """ - Create a Grid2D (see *Grid2D.__new__*) by inputting the grid coordinates as 1D y and x values. - - From 1D input the method cannot determine the 2D shape of the grid and its mask, thus the shape_native must be - input into this method. The mask is setup as a unmasked `Mask2D` of shape_native. - - Parameters - ---------- - y or list - The y coordinates of the grid input as an ndarray of shape [total_coordinates] or list. - x or list - The x coordinates of the grid input as an ndarray of shape [total_coordinates] or list. - shape_native - The 2D shape of the mask the grid is paired with. - pixel_scales - The (y,x) arcsecond-to-pixel units conversion factor of every pixel. If this is input as a `float`, - it is converted to a (float, float). - origin - The origin of the grid's mask. - - Examples - -------- - - .. code-block:: python - - import autoarray as aa - - # Make Grid2D from input np.ndarray. - - grid_2d = aa.Grid2D.from_yx_1d( - y=np.array([1.0, 3.0, 5.0, 7.0]), - x=np.array([2.0, 4.0, 6.0, 8.0]), - shape_native=(2, 2), - pixel_scales=1.0, - ) - - # Make Grid2D from input list. - - grid_2d = aa.Grid2D.from_yx_1d( - y=[1.0, 3.0, 5.0, 7.0], - x=[2.0, 4.0, 6.0, 8.0], - shape_native=(2, 2), - pixel_scales=1.0, - ) - - # Print grid's slim (masked 1D data representation) and - # native (masked 2D data representation) - - print(grid_2d.slim) - print(grid_2d.native) - """ - if type(y) is list: - y = np.asarray(y) - - if type(x) is list: - x = np.asarray(x) - - return cls.no_mask( - values=np.stack((y, x), axis=-1), - shape_native=shape_native, - pixel_scales=pixel_scales, - origin=origin, - over_sampling=over_sampling, - ) - - @classmethod - def from_yx_2d( - cls, - y: Union[np.ndarray, List], - x: Union[np.ndarray, List], - pixel_scales: ty.PixelScales, - origin: Tuple[float, float] = (0.0, 0.0), - over_sampling: Optional[AbstractOverSampling] = None, - ) -> "Grid2D": - """ - Create a Grid2D (see *Grid2D.__new__*) by inputting the grid coordinates as 2D y and x values. - - The 2D shape of the grid and its mask are determined from the input grid and the mask is setup as an - unmasked `Mask2D` of shape_native. - - Parameters - ---------- - y or list - The y coordinates of the grid input as an ndarray of shape [total_coordinates] or list. - x or list - The x coordinates of the grid input as an ndarray of shape [total_coordinates] or list. - pixel_scales - The (y,x) arcsecond-to-pixel units conversion factor of every pixel. If this is input as a `float`, - it is converted to a (float, float). - origin - The origin of the grid's mask. - - Examples - -------- - - .. code-block:: python - - import autoarray as aa - - # Make Grid2D from input list(s). - - grid_2d = aa.Grid2D.from_yx_2d( - y=[[1.0], [3.0]], - x=[[2.0], [4.0]], - pixel_scales=1.0 - ) - """ - if type(y) is list: - y = np.asarray(y) - - if type(x) is list: - x = np.asarray(x) - - return cls.no_mask( - values=np.stack((y, x), axis=-1), - pixel_scales=pixel_scales, - origin=origin, - over_sampling=over_sampling, - ) - - @classmethod - def from_extent( - cls, - extent: Tuple[float, float, float, float], - shape_native: Tuple[int, int], - over_sampling: Optional[AbstractOverSampling] = None, - ) -> "Grid2D": - """ - Create a Grid2D (see *Grid2D.__new__*) by inputting the extent of the (y,x) grid coordinates as an input - (x0, x1, y0, y1) tuple. - - The (y,x) `shape_native` in pixels is also input which determines the resolution of the `Grid2D`. - - (The **PyAutoArray** API typically uses a (y,x) notation, however extent variables begin with x currently. - This will be updated in a future release): - - extent = (x0, x1, y0, y1) = (2.0, 4.0, -2.0, 6.0) - shape_native = (y,x) = (10, 20) - - Parameters - ---------- - extent - The (x0, x1, y0, y1) extent of the grid in scaled coordinates over which the grid is created. - shape_native - The 2D shape of the grid that is created within this extent. - pixel_scales - The (y,x) arcsecond-to-pixel units conversion factor of every pixel. If this is input as a `float`, - it is converted to a (float, float). - origin - The origin of the grid's mask. - """ - - x0, x1, y0, y1 = extent - - ys = np.linspace(y1, y0, shape_native[0]) - xs = np.linspace(x0, x1, shape_native[1]) - - xs_grid, ys_grid = np.meshgrid(xs, ys) - - xs_grid_1d = xs_grid.ravel() - ys_grid_1d = ys_grid.ravel() - - grid_2d = np.vstack((ys_grid_1d, xs_grid_1d)).T - - grid_2d = grid_2d.reshape((shape_native[0], shape_native[1], 2)) - - pixel_scales = ( - abs(grid_2d[0, 0, 0] - grid_2d[1, 0, 0]), - abs(grid_2d[0, 0, 1] - grid_2d[0, 1, 1]), - ) - - return Grid2D.no_mask( - values=grid_2d, - pixel_scales=pixel_scales, - over_sampling=over_sampling, - ) - - @classmethod - def uniform( - cls, - shape_native: Tuple[int, int], - pixel_scales: ty.PixelScales, - origin: Tuple[float, float] = (0.0, 0.0), - over_sampling: Optional[AbstractOverSampling] = None, - ) -> "Grid2D": - """ - Create a `Grid2D` (see *Grid2D.__new__*) as a uniform grid of (y,x) values given an input `shape_native` and - `pixel_scales` of the grid: - - Parameters - ---------- - shape_native - The 2D shape of the uniform grid and the mask that it is paired with. - pixel_scales - The (y,x) scaled units to pixel units conversion factors of every pixel. If this is input as a `float`, - it is converted to a (float, float) tuple. - origin - The origin of the grid's mask. - """ - pixel_scales = geometry_util.convert_pixel_scales_2d(pixel_scales=pixel_scales) - - grid_slim = grid_2d_util.grid_2d_slim_via_shape_native_from( - shape_native=shape_native, - pixel_scales=pixel_scales, - origin=origin, - ) - - return cls.no_mask( - values=grid_slim, - shape_native=shape_native, - pixel_scales=pixel_scales, - origin=origin, - over_sampling=over_sampling, - ) - - @classmethod - def bounding_box( - cls, - bounding_box: np.ndarray, - shape_native: Tuple[int, int], - buffer_around_corners: bool = False, - over_sampling: Optional[AbstractOverSampling] = None, - ) -> "Grid2D": - """ - Create a Grid2D (see *Grid2D.__new__*) from an input bounding box with coordinates [y_min, y_max, x_min, x_max], - where the shape_native is used to compute the (y,x) grid values within this bounding box. - - If buffer_around_corners=True, the grid's (y,x) values fully align with the input bounding box values. This - means the mask's edge pixels extend beyond the bounding box by pixel_scale/2.0. If buffer_around_corners=False, - the grid (y,x) coordinates are defined within the bounding box such that the mask's edge pixels align with - the bouning box. - - Parameters - ---------- - shape_native - The 2D shape of the uniform grid and the mask that it is paired with. - pixel_scales - The (y,x) arcsecond-to-pixel units conversion factor of every pixel. If this is input as a `float`, - it is converted to a (float, float). - origin - The origin of the grid's mask. - buffer_around_corners - Whether the grid is buffered such that the (y,x) values in the centre of its masks' edge pixels align - with the input bounding box values. - """ - y_min, y_max, x_min, x_max = bounding_box - - if not buffer_around_corners: - pixel_scales = ( - (y_max - y_min) / (shape_native[0]), - (x_max - x_min) / (shape_native[1]), - ) - - else: - pixel_scales = ( - (y_max - y_min) / (shape_native[0] - 1), - (x_max - x_min) / (shape_native[1] - 1), - ) - origin = ((y_max + y_min) / 2.0, (x_max + x_min) / 2.0) - - return cls.uniform( - shape_native=shape_native, - pixel_scales=pixel_scales, - origin=origin, - over_sampling=over_sampling, - ) - - @classmethod - def from_mask( - cls, - mask: Mask2D, - over_sampling: Optional[AbstractOverSampling] = None, - ) -> "Grid2D": - """ - Create a Grid2D (see *Grid2D.__new__*) from a mask, where only unmasked pixels are included in the grid (if the - grid is represented in its native 2D masked values are (0.0, 0.0)). - - The mask's pixel_scales and origin properties are used to compute the grid (y,x) coordinates. - - Parameters - ---------- - mask - The mask whose masked pixels are used to setup the grid. - """ - - grid_1d = grid_2d_util.grid_2d_slim_via_mask_from( - mask_2d=np.array(mask), - pixel_scales=mask.pixel_scales, - origin=mask.origin, - ) - - return Grid2D( - values=grid_1d, - mask=mask, - over_sampling=over_sampling, - ) - - @classmethod - def from_fits( - cls, - file_path: Union[Path, str], - pixel_scales: ty.PixelScales, - origin: Tuple[float, float] = (0.0, 0.0), - over_sampling: Optional[AbstractOverSampling] = None, - ) -> "Grid2D": - """ - Create a Grid2D (see *Grid2D.__new__*) from a mask, where only unmasked pixels are included in the grid (if the - grid is represented in its native 2D masked values are (0.0, 0.0)). - - The mask's pixel_scales and origin properties are used to compute the grid (y,x) coordinates. - - Parameters - ---------- - mask - The mask whose masked pixels are used to setup the grid. - """ - - grid_2d = array_2d_util.numpy_array_2d_via_fits_from(file_path=file_path, hdu=0) - - return Grid2D.no_mask( - values=grid_2d, - pixel_scales=pixel_scales, - origin=origin, - over_sampling=over_sampling, - ) - - @classmethod - def blurring_grid_from( - cls, - mask: Mask2D, - kernel_shape_native: Tuple[int, int], - over_sampling: Optional[AbstractOverSampling] = None, - ) -> "Grid2D": - """ - Setup a blurring-grid from a mask, where a blurring grid consists of all pixels that are masked (and - therefore have their values set to (0.0, 0.0)), but are close enough to the unmasked pixels that their values - will be convolved into the unmasked those pixels. This when computing images from - light profile objects. - - The mask's pixel_scales and origin properties are used to compute the blurring grid's (y,x) - coordinates. - - For example, if our mask is as follows: - - .. code-block:: bash - - x x x x x x x x x xI - x x x x x x x x x xI This is an imaging.Mask2D, where - x x x x x x x x x xI - x x x x x x x x x xI x = `True` (Pixel is masked and excluded from lens) - x x x O O O x x x xI O = `False` (Pixel is not masked and included in lens) - x x x O O O x x x xI - x x x O O O x x x xI - x x x x x x x x x xI - x x x x x x x x x xI - x x x x x x x x x xI - - For a PSF of shape (3,3), the following blurring mask is computed (noting that only pixels that are direct - neighbors of the unmasked pixels above will blur light into an unmasked pixel) - - .. code-block:: bash - - x x x x x x x x xI This is an example grid.Mask2D, where - x x x x x x x x xI - x x O O O O O x xI x = `True` (Pixel is masked and excluded from lens) - x x O x x x O x xI O = `False` (Pixel is not masked and included in lens) - x x O x x x O x xI - x x O x x x O x xI - x x O O O O O x xI - x x x x x x x x xI - x x x x x x x x xI - - Thus, the blurring grid coordinates and indexes will be as follows - - .. code-block:: bash - - pixel_scales = 1.0" - - positive negative - y x y x - x x x x x x x x xI I blurring_grid[0] = [2.0, -2.0] blurring_grid[9] = [-1.0, -2.0] - x x x x x x x x xI I blurring_grid[1] = [2.0, -1.0] blurring_grid[10] = [-1.0, 2.0] - x xI0 I1 I2 I3 I4 x xI pos blurring_grid[2] = [2.0, 0.0] blurring_grid[11] = [-2.0, -2.0] - x xI5 x x x I6 x xI y blurring_grid[3] = [2.0, 1.0] blurring_grid[12] = [-2.0, -1.0] - x xI7 x x x I8 x xI I blurring_grid[4] = [2.0, 2.0] blurring_grid[13] = [-2.0, 0.0] - x xI9 x x x I10 x xI neg blurring_grid[5] = [1.0, -2.0] blurring_grid[14] = [-2.0, 1.0] - x xI11I12I13I14I15 x xI I blurring_grid[6] = [1.0, 2.0] blurring_grid[15] = [-2.0, 2.0] - x x x x x x x x xI I blurring_grid[7] = [0.0, -2.0] - x x x x x x x x xI I blurring_grid[8] = [0.0, 2.0] - - For a PSF of shape (5,5), the following blurring mask is computed (noting that pixels are 2 pixels from a - direct unmasked pixels now blur light into an unmasked pixel) - - .. code-block:: bash - - x x x x x x x x xI This is an example grid.Mask2D, where - xIoIoIoIoIoIoIo xI - xIoIoIoIoIoIoIo xI x = `True` (Pixel is masked and excluded from lens) - xIoIo x x xIoIo xI O = `False` (Pixel is not masked and included in lens) - xIoIo x x xIoIo xI - xIoIo x x xIoIo xI - xIoIoIoIoIoIoIo xI - xIoIoIoIoIoIoIo xI - x x x x x x x x xI - - Parameters - ---------- - mask - The mask whose masked pixels are used to setup the blurring grid. - kernel_shape_native - The 2D shape of the kernel which convolves signal from masked pixels to unmasked pixels. - """ - - blurring_mask = mask.derive_mask.blurring_from( - kernel_shape_native=kernel_shape_native - ) - - return cls.from_mask( - mask=blurring_mask, - over_sampling=over_sampling, - ) - - def subtracted_from(self, offset: Tuple[(float, float), np.ndarray]) -> "Grid2D": - if offset[0] == 0.0 and offset[1] == 0.0: - return self - - mask = Mask2D( - mask=self.mask, - pixel_scales=self.pixel_scales, - origin=(self.origin[0] - offset[0], self.origin[1] - offset[1]), - ) - - return Grid2D( - values=self - np.array(offset), - mask=mask, - over_sampling=self.over_sampling, - ) - - @property - def slim(self) -> "Grid2D": - """ - Return a `Grid2D` where the data is stored its `slim` representation, which is an ndarray of shape - [total_unmasked_pixels, 2]. - - If it is already stored in its `slim` representation it is returned as it is. If not, it is mapped from - `native` to `slim` and returned as a new `Grid2D`. - """ - return Grid2D( - values=self, - mask=self.mask, - over_sampling=self.over_sampling, - ) - - @property - def native(self) -> "Grid2D": - """ - Return a `Grid2D` where the data is stored in its `native` representation, which has shape - [total_y_pixels, total_x_pixels, 2]. - - If it is already stored in its `native` representation it is return as it is. If not, it is mapped from - `slim` to `native` and returned as a new `Grid2D`. - - This method is used in the child `Grid2D` classes to create their `native` properties. - """ - return Grid2D( - values=self, - mask=self.mask, - over_sampling=self.over_sampling, - store_native=True, - ) - - @cached_property - def over_sampler(self) -> AbstractOverSampler: - return self.over_sampling.over_sampler_from(mask=self.mask) - - @property - def flipped(self) -> "Grid2D": - """ - Return the grid as an ndarray of shape [total_unmasked_pixels, 2] with flipped values such that coordinates - are given as (x,y) values. - - This is used to interface with Python libraries that require the grid in (x,y) format. - """ - return self.with_new_array(np.fliplr(self.array)) - - @property - def in_radians(self) -> "Grid2D": - """ - Return the grid as an ndarray where all (y,x) values are converted to Radians. - - This grid is used by the interferometer module. - """ - return (self * np.pi) / 648000.0 - - def grid_2d_via_deflection_grid_from(self, deflection_grid: "Grid2D") -> "Grid2D": - """ - Returns a new Grid2D from this grid, where the (y,x) coordinates of this grid have a grid of (y,x) values, - termed the deflection grid, subtracted from them to determine the new grid of (y,x) values. - - This is used by PyAutoLens to perform grid ray-tracing. - - Parameters - ---------- - deflection_grid - The grid of (y,x) coordinates which is subtracted from this grid. - """ - return Grid2D( - values=self - deflection_grid, - mask=self.mask, - over_sampling=self.over_sampling, - ) - - def blurring_grid_via_kernel_shape_from( - self, kernel_shape_native: Tuple[int, int] - ) -> "Grid2D": - """ - Returns the blurring grid from a grid, via an input 2D kernel shape. - - For a full description of blurring grids, checkout *blurring_grid_from*. - - Parameters - ---------- - kernel_shape_native - The 2D shape of the kernel which convolves signal from masked pixels to unmasked pixels. - """ - - from autoarray.operators.over_sampling.uniform import OverSamplingUniform - - return Grid2D.blurring_grid_from( - mask=self.mask, - kernel_shape_native=kernel_shape_native, - over_sampling=OverSamplingUniform(sub_size=1), - ) - - def grid_with_coordinates_within_distance_removed_from( - self, coordinates: Union[np.ndarray, List], distance: float - ) -> "Grid2D": - """Remove all coordinates from this Grid2D which are within a certain distance of an input list of coordinates. - - For example, if the grid has the coordinate (0.0, 0.0) and coordinates=[(0.0, 0.0)], distance=0.1 is input into - this function, a new Grid2D will be created which removes the coordinate (0.0, 0.0). - - Parameters - ---------- - coordinates : [(float, float)] - The list of coordinates which are removed from the grid if they are within the distance threshold. - distance - The distance threshold that coordinates are removed if they are within that of the input coordinates. - """ - - if not isinstance(coordinates, list): - coordinates = [coordinates] - - distance_mask = np.full(fill_value=False, shape=self.shape_native) - - for coordinate in coordinates: - distances = self.distances_to_coordinate_from(coordinate=coordinate) - - distance_mask += distances.native < distance - - mask = Mask2D( - mask=distance_mask, - pixel_scales=self.pixel_scales, - origin=self.origin, - ) - - return Grid2D.from_mask( - mask=mask, - over_sampling=self.over_sampling, - ) - - def squared_distances_to_coordinate_from( - self, coordinate: Tuple[float, float] = (0.0, 0.0) - ) -> Array2D: - """ - Returns the squared distance of every coordinate on the grid from an input coordinate. - - Parameters - ---------- - coordinate - The (y,x) coordinate from which the squared distance of every grid (y,x) coordinate is computed. - """ - if use_jax: - squared_distances = np.square(self.array[:, 0] - coordinate[0]) + np.square( - self.array[:, 1] - coordinate[1] - ) - else: - squared_distances = np.square(self[:, 0] - coordinate[0]) + np.square( - self[:, 1] - coordinate[1] - ) - return Array2D(values=squared_distances, mask=self.mask) - - def distances_to_coordinate_from( - self, coordinate: Tuple[float, float] = (0.0, 0.0) - ) -> Array2D: - """ - Returns the distance of every coordinate on the grid from an input (y,x) coordinate. - - Parameters - ---------- - coordinate - The (y,x) coordinate from which the distance of every grid (y,x) coordinate is computed. - """ - squared_distance = self.squared_distances_to_coordinate_from( - coordinate=coordinate - ) - distances = np.sqrt(squared_distance.array) - return Array2D(values=distances, mask=self.mask) - - def grid_2d_radial_projected_shape_slim_from( - self, centre: Tuple[float, float] = (0.0, 0.0) - ) -> int: - """ - The function `grid_scaled_2d_slim_radial_projected_from()` determines a projected radial grid of points from a - 2D region of coordinates defined by an extent [xmin, xmax, ymin, ymax] and with a (y,x) centre. - - To do this, the function first performs these 3 steps: - - 1) Given the region defined by the extent [xmin, xmax, ymin, ymax], the algorithm finds the longest 1D distance - of the 4 paths from the (y,x) centre to the edge of the region (e.g. following the positive / negative y and - x axes). - - 2) Use the pixel-scale corresponding to the direction chosen (e.g. if the positive x-axis was the longest, the - pixel_scale in the x dimension is used). - - 3) Determine the number of pixels between the centre and the edge of the region using the longest path between - the two chosen above. - - A schematic is shown below: - - .. code-block:: bash - - ------------------- - | | - |<- - - - ->x | x = centre - | | <-> = longest radial path from centre to extent edge - | | - ------------------- - - Using the centre x above, this function finds the longest radial path to the edge of the extent window. - - This function returns the integer number of pixels given by this radial grid, which is then used to create - the radial grid. - - Parameters - ---------- - extent - The extent of the grid the radii grid is computed using, with format [xmin, xmax, ymin, ymax] - centre : (float, flloat) - The (y,x) central coordinate which the radial grid is traced outwards from. - pixel_scales - The (y,x) scaled units to pixel units conversion factor of the 2D mask array. - - Returns - ------- - int - The 1D integer shape of a radial set of points sampling the longest distance from the centre to the edge of the - extent in along the positive x-axis. - """ - - return grid_2d_util._radial_projected_shape_slim_from( - extent=self.geometry.extent, - centre=centre, - pixel_scales=self.mask.pixel_scales, - ) - - def grid_2d_radial_projected_from( - self, - centre: Tuple[float, float] = (0.0, 0.0), - angle: float = 0.0, - shape_slim: Optional[int] = 0, - remove_projected_centre: bool = None, - ) -> Grid2DIrregular: - """ - Determine a projected radial grid of points from a 2D region of coordinates defined by an - extent [xmin, xmax, ymin, ymax] and with a (y,x) centre. - - This functions operates as follows: - - 1) Given the region defined by the extent [xmin, xmax, ymin, ymax], the algorithm finds the longest 1D distance - of the 4 paths from the (y,x) centre to the edge of the region e.g. following the positive / negative y and - x axes. - - 2) Use the pixel-scale corresponding to the direction chosen e.g. if the positive x-axis was the longest, the - pixel_scale in the x dimension is used. - - 3) Determine the number of pixels between the centre and the edge of the region using the longest path between - the two chosen above. - - 4) Create a (y,x) grid of radial points where all points are at the centre's y value = 0.0 and the x values - iterate from the centre in increasing steps of the pixel-scale. - - 5) Rotate these radial coordinates by the input `angle` clockwise. - - A schematic is shown below: - - .. code-block:: bash - - ------------------- - | | - |<- - - - ->x | x = centre - | | <-> = longest radial path from centre to extent edge - | | - ------------------- - - Parameters - ---------- - centre - The (y,x) central coordinate which the radial grid is traced outwards from. - angle - The angle with which the radial coordinates are rotated clockwise. - - Returns - ------- - Grid2DIrregular - A radial set of points sampling the longest distance from the centre to the edge of the extent in along the - positive x-axis. - """ - - grid_radial_projected_2d = ( - grid_2d_util.grid_scaled_2d_slim_radial_projected_from( - extent=self.geometry.extent, - centre=centre, - pixel_scales=self.mask.pixel_scales, - shape_slim=shape_slim, - ) - ) - - grid_radial_projected_2d = geometry_util.transform_grid_2d_to_reference_frame( - grid_2d=grid_radial_projected_2d, centre=centre, angle=angle - ) - - grid_radial_projected_2d = geometry_util.transform_grid_2d_from_reference_frame( - grid_2d=grid_radial_projected_2d, centre=centre, angle=0.0 - ) - - if remove_projected_centre is None: - remove_projected_centre = conf.instance["general"]["grid"][ - "remove_projected_centre" - ] - - if remove_projected_centre: - grid_radial_projected_2d = grid_radial_projected_2d[1:, :] - - return Grid2DIrregular(values=grid_radial_projected_2d) - - @property - def shape_native_scaled_interior(self) -> Tuple[float, float]: - """ - The (y,x) interior 2D shape of the grid in scaled units, computed from the minimum and maximum y and x - values of the grid. - - This differs from the `shape_native_scaled` because the edges of the shape are at the maxima and minima - of the grid's (y,x) values, whereas the `shape_native_scaled` uses the uniform geometry of the grid and its - ``pixel_scales``, which means it has a buffer at each edge of half a ``pixel_scale``. - """ - return ( - np.amax(self[:, 0]) - np.amin(self[:, 0]), - np.amax(self[:, 1]) - np.amin(self[:, 1]), - ) - - @property - def scaled_minima(self) -> Tuple: - """ - The (y,x) minimum values of the grid in scaled units, buffed such that their extent is further than the grid's - extent. - """ - if use_jax: - return ( - np.amin(self.array[:, 0]).astype("float"), - np.amin(self.array[:, 1]).astype("float"), - ) - else: - return ( - np.amin(self[:, 0]).astype("float"), - np.amin(self[:, 1]).astype("float"), - ) - - @property - def scaled_maxima(self) -> Tuple: - """ - The (y,x) maximum values of the grid in scaled units, buffed such that their extent is further than the grid's - extent. - """ - if use_jax: - return ( - np.amax(self.array[:, 0]).astype("float"), - np.amax(self.array[:, 1]).astype("float"), - ) - else: - return ( - np.amax(self[:, 0]).astype("float"), - np.amax(self[:, 1]).astype("float"), - ) - - def extent_with_buffer_from(self, buffer: float = 1.0e-8) -> List[float]: - """ - The extent of the grid in scaled units returned as a list [x_min, x_max, y_min, y_max], where all values are - buffed such that their extent is further than the grid's extent.. - - This follows the format of the extent input parameter in the matplotlib method imshow (and other methods) and - is used for visualization in the plot module. - """ - return [ - self.scaled_minima[1] - buffer, - self.scaled_maxima[1] + buffer, - self.scaled_minima[0] - buffer, - self.scaled_maxima[0] + buffer, - ] - - def padded_grid_from(self, kernel_shape_native: Tuple[int, int]) -> "Grid2D": - """ - When the edge pixels of a mask are unmasked and a convolution is to occur, the signal of edge pixels will - be 'missing' if the grid is used to evaluate the signal via an analytic function. - - To ensure this signal is included the padded grid is used, which is 'buffed' such that it includes all pixels - whose signal will be convolved into the unmasked pixels given the 2D kernel shape. - - Parameters - ---------- - kernel_shape_native - The 2D shape of the kernel which convolves signal from masked pixels to unmasked pixels. - """ - - shape = self.mask.shape - - padded_shape = ( - shape[0] + kernel_shape_native[0] - 1, - shape[1] + kernel_shape_native[1] - 1, - ) - - padded_mask = Mask2D.all_false( - shape_native=padded_shape, - pixel_scales=self.mask.pixel_scales, - ) - - return Grid2D.from_mask( - mask=padded_mask, - over_sampling=self.over_sampling, - ) - - @cached_property - def is_uniform(self) -> bool: - """ - Returns if the grid is uniform, where a uniform grid is defined as a grid where all pixels are separated by - the same pixel-scale in both the y and x directions. - - The method does not check if the x coordinates are uniformly spaced, only the y coordinates, under the - assumption that no calculation will be performed on a grid where the y coordinates are uniformly spaced but the - x coordinates are not. If such a case arises, the method should be updated to check both the y and x coordinates. - - Returns - ------- - Whether the grid is uniform. - """ - - y_diff = self[:, 0][:-1] - self[:, 0][1:] - y_diff = y_diff[y_diff != 0] - - if any(abs(y_diff - self.pixel_scales[0]) > 1.0e-8): - return False - - return True +from __future__ import annotations +from autoarray.numpy_wrapper import np, use_jax +from pathlib import Path +from typing import TYPE_CHECKING, List, Optional, Tuple, Union + +if TYPE_CHECKING: + from autoarray.operators.over_sampling.abstract import AbstractOverSampling + +from autoconf import conf +from autoconf import cached_property + +from autoarray.mask.mask_2d import Mask2D +from autoarray.operators.over_sampling.abstract import AbstractOverSampler +from autoarray.structures.abstract_structure import Structure +from autoarray.structures.arrays.uniform_2d import Array2D +from autoarray.structures.grids.irregular_2d import Grid2DIrregular + +from autoarray.structures.arrays import array_2d_util +from autoarray.structures.grids import grid_2d_util +from autoarray.geometry import geometry_util + +from autoarray import type as ty + + +class Grid2D(Structure): + def __init__( + self, + values: Union[np.ndarray, List], + mask: Mask2D, + store_native: bool = False, + over_sampling: Optional[AbstractOverSampling] = None, + over_sampling_non_uniform: Optional[AbstractOverSampling] = None, + *args, + **kwargs, + ): + """ + A grid of 2D (y,x) coordinates, which are paired to a uniform 2D mask of pixels. Each entry + on the grid corresponds to the (y,x) coordinates at the centre of a pixel of an unmasked pixel. + + A `Grid2D` is ordered such that pixels begin from the top-row (e.g. index [0, 0]) of the corresponding mask + and go right and down. The positive y-axis is upwards and positive x-axis to the right. + + The grid can be stored in two formats: + + - slimmed: all masked entries are removed so the ndarray is shape [total_unmasked_coordinates**2, 2] + - native: it retains the original shape of the grid so the ndarray is + shape [total_y_coordinates, total_x_coordinates, 2]. + + + __Slim__ + + The Grid2D is an ndarray of shape [total_unmasked_coordinates, 2], therefore when `slim` the shape of + the grid is 2, not 1. + + The first element of the ndarray corresponds to the pixel index and second element the y or x coordinate value. + + For example: + + - grid[3,0] = the 4th unmasked pixel's y-coordinate. + - grid[6,1] = the 7th unmasked pixel's x-coordinate. + + Below is a visual illustration of a grid, where a total of 10 pixels are unmasked and are included in \ + the grid. + + .. code-block:: bash + + x x x x x x x x x x + x x x x x x x x x x This is an example mask.Mask2D, where: + x x x x x x x x x x + x x x x O O x x x x x = `True` (Pixel is masked and excluded from the grid) + x x x O O O O x x x O = `False` (Pixel is not masked and included in the grid) + x x x O O O O x x x + x x x x x x x x x x + x x x x x x x x x x + x x x x x x x x x x + x x x x x x x x x x + + The mask pixel index's will come out like this (and the direction of scaled coordinates is highlighted + around the mask. + + .. code-block:: bash + + pixel_scales = 1.0" + + <--- -ve x +ve --> + y x + x x x x x x x x x x ^ grid[0] = [ 1.5, -0.5] + x x x x x x x x x x I grid[1] = [ 1.5, 0.5] + x x x x x x x x x x I grid[2] = [ 0.5, -1.5] + x x x x 0 1 x x x x +ve grid[3] = [ 0.5, -0.5] + x x x 2 3 4 5 x x x y grid[4] = [ 0.5, 0.5] + x x x 6 7 8 9 x x x -ve grid[5] = [ 0.5, 1.5] + x x x x x x x x x x I grid[6] = [-0.5, -1.5] + x x x x x x x x x x I grid[7] = [-0.5, -0.5] + x x x x x x x x x x \/ grid[8] = [-0.5, 0.5] + x x x x x x x x x x grid[9] = [-0.5, 1.5] + + __native__ + + The Grid2D has the same properties as Case 1, but is stored as an an ndarray of shape + [total_y_coordinates, total_x_coordinates, 2]. Therefore when `native` the shape of the + grid is 3, not 2. + + All masked entries on the grid has (y,x) values of (0.0, 0.0). + + For the following example mask: + + .. code-block:: bash + + x x x x x x x x x x + x x x x x x x x x x This is an example mask.Mask2D, where: + x x x x x x x x x x + x x x x O O x x x x x = `True` (Pixel is masked and excluded from the grid) + x x x O O O O x x x O = `False` (Pixel is not masked and included in the grid) + x x x O O O O x x x + x x x x x x x x x x + x x x x x x x x x x + x x x x x x x x x x + x x x x x x x x x x + + In the above grid: + + - grid[0,0,0] = 0.0 (it is masked, thus zero) + - grid[0,0,1] = 0.0 (it is masked, thus zero) + - grid[3,3,0] = 0.0 (it is masked, thus zero) + - grid[3,3,1] = 0.0 (it is masked, thus zero) + - grid[3,4,0] = 1.5 + - grid[3,4,1] = -0.5 + + + + + + **Grid2D Mapping:** + + Every set of (y,x) coordinates in a pixel of the grid maps to an unmasked pixel in the mask. For a uniform + grid, every (y,x) coordinate directly corresponds to the location of its paired unmasked pixel. + + It is not a requirement that grid is uniform and that their coordinates align with the mask. The input grid + could be an irregular set of (y,x) coordinates where the indexing signifies that the (y,x) coordinate + *originates* or *is paired with* the mask's pixels but has had its value change by some aspect of the + calculation. + + This is important for the child project *PyAutoLens*, where grids in the image-plane are ray-traced and + deflected to perform lensing calculations. The grid indexing is used to map pixels between the image-plane and + source-plane. + + Parameters + ---------- + values + The (y,x) coordinates of the grid. + mask + The 2D mask associated with the grid, defining the pixels each grid coordinate is paired with and + originates from. + store_native + If True, the ndarray is stored in its native format [total_y_pixels, total_x_pixels, 2]. This avoids + mapping large data arrays to and from the slim / native formats, which can be a computational bottleneck. + over_sampling + The over sampling scheme, which divides the grid into a sub grid of smaller pixels when computing values + (e.g. images) from the grid so as to approximate the 2D line integral of the amount of light that falls + into each pixel. + """ + values = grid_2d_util.convert_grid_2d( + grid_2d=values, + mask_2d=mask, + store_native=store_native, + ) + + super().__init__(values) + + self.mask = mask + + grid_2d_util.check_grid_2d(grid_2d=values) + + self.over_sampling = over_sampling + self.over_sampling_non_uniform = over_sampling_non_uniform + + @classmethod + def no_mask( + cls, + values: Union[np.ndarray, List], + pixel_scales: ty.PixelScales, + shape_native: Tuple[int, int] = None, + origin: Tuple[float, float] = (0.0, 0.0), + over_sampling: Optional[AbstractOverSampling] = None, + ) -> "Grid2D": + """ + Create a Grid2D (see *Grid2D.__new__*) by inputting the grid coordinates in 1D or 2D, automatically + determining whether to use the 'manual_slim' or 'manual_native' methods. + + From 1D input the method cannot determine the 2D shape of the grid and its mask, thus the shape_native must be + input into this method. The mask is setup as a unmasked `Mask2D` of shape_native. + + The 2D shape of the grid and its mask are determined from the input grid and the mask is setup as an + unmasked `Mask2D` of shape_native. + + Parameters + ---------- + values + The (y,x) coordinates of the grid input as an ndarray of shape [total_unmasked_pixels, 2] + or a list of lists. + shape_native + The 2D shape of the mask the grid is paired with. + pixel_scales + The (y,x) arcsecond-to-pixel units conversion factor of every pixel. If this is input as a `float`, + it is converted to a (float, float). + origin + The origin of the grid's mask. + """ + + pixel_scales = geometry_util.convert_pixel_scales_2d(pixel_scales=pixel_scales) + + values = grid_2d_util.convert_grid(grid=values) + + if len(values.shape) == 2: + grid_2d_util.check_grid_slim(grid=values, shape_native=shape_native) + else: + shape_native = ( + int(values.shape[0]), + int(values.shape[1]), + ) + + mask = Mask2D.all_false( + shape_native=shape_native, + pixel_scales=pixel_scales, + origin=origin, + ) + + return Grid2D( + values=values, + mask=mask, + over_sampling=over_sampling, + ) + + @classmethod + def from_yx_1d( + cls, + y: Union[np.ndarray, List], + x: np.ndarray, + shape_native: Tuple[int, int], + pixel_scales: ty.PixelScales, + origin: Tuple[float, float] = (0.0, 0.0), + over_sampling: Optional[AbstractOverSampling] = None, + ) -> "Grid2D": + """ + Create a Grid2D (see *Grid2D.__new__*) by inputting the grid coordinates as 1D y and x values. + + From 1D input the method cannot determine the 2D shape of the grid and its mask, thus the shape_native must be + input into this method. The mask is setup as a unmasked `Mask2D` of shape_native. + + Parameters + ---------- + y or list + The y coordinates of the grid input as an ndarray of shape [total_coordinates] or list. + x or list + The x coordinates of the grid input as an ndarray of shape [total_coordinates] or list. + shape_native + The 2D shape of the mask the grid is paired with. + pixel_scales + The (y,x) arcsecond-to-pixel units conversion factor of every pixel. If this is input as a `float`, + it is converted to a (float, float). + origin + The origin of the grid's mask. + + Examples + -------- + + .. code-block:: python + + import autoarray as aa + + # Make Grid2D from input np.ndarray. + + grid_2d = aa.Grid2D.from_yx_1d( + y=np.array([1.0, 3.0, 5.0, 7.0]), + x=np.array([2.0, 4.0, 6.0, 8.0]), + shape_native=(2, 2), + pixel_scales=1.0, + ) + + # Make Grid2D from input list. + + grid_2d = aa.Grid2D.from_yx_1d( + y=[1.0, 3.0, 5.0, 7.0], + x=[2.0, 4.0, 6.0, 8.0], + shape_native=(2, 2), + pixel_scales=1.0, + ) + + # Print grid's slim (masked 1D data representation) and + # native (masked 2D data representation) + + print(grid_2d.slim) + print(grid_2d.native) + """ + if type(y) is list: + y = np.asarray(y) + + if type(x) is list: + x = np.asarray(x) + + return cls.no_mask( + values=np.stack((y, x), axis=-1), + shape_native=shape_native, + pixel_scales=pixel_scales, + origin=origin, + over_sampling=over_sampling, + ) + + @classmethod + def from_yx_2d( + cls, + y: Union[np.ndarray, List], + x: Union[np.ndarray, List], + pixel_scales: ty.PixelScales, + origin: Tuple[float, float] = (0.0, 0.0), + over_sampling: Optional[AbstractOverSampling] = None, + ) -> "Grid2D": + """ + Create a Grid2D (see *Grid2D.__new__*) by inputting the grid coordinates as 2D y and x values. + + The 2D shape of the grid and its mask are determined from the input grid and the mask is setup as an + unmasked `Mask2D` of shape_native. + + Parameters + ---------- + y or list + The y coordinates of the grid input as an ndarray of shape [total_coordinates] or list. + x or list + The x coordinates of the grid input as an ndarray of shape [total_coordinates] or list. + pixel_scales + The (y,x) arcsecond-to-pixel units conversion factor of every pixel. If this is input as a `float`, + it is converted to a (float, float). + origin + The origin of the grid's mask. + + Examples + -------- + + .. code-block:: python + + import autoarray as aa + + # Make Grid2D from input list(s). + + grid_2d = aa.Grid2D.from_yx_2d( + y=[[1.0], [3.0]], + x=[[2.0], [4.0]], + pixel_scales=1.0 + ) + """ + if type(y) is list: + y = np.asarray(y) + + if type(x) is list: + x = np.asarray(x) + + return cls.no_mask( + values=np.stack((y, x), axis=-1), + pixel_scales=pixel_scales, + origin=origin, + over_sampling=over_sampling, + ) + + @classmethod + def from_extent( + cls, + extent: Tuple[float, float, float, float], + shape_native: Tuple[int, int], + over_sampling: Optional[AbstractOverSampling] = None, + ) -> "Grid2D": + """ + Create a Grid2D (see *Grid2D.__new__*) by inputting the extent of the (y,x) grid coordinates as an input + (x0, x1, y0, y1) tuple. + + The (y,x) `shape_native` in pixels is also input which determines the resolution of the `Grid2D`. + + (The **PyAutoArray** API typically uses a (y,x) notation, however extent variables begin with x currently. + This will be updated in a future release): + + extent = (x0, x1, y0, y1) = (2.0, 4.0, -2.0, 6.0) + shape_native = (y,x) = (10, 20) + + Parameters + ---------- + extent + The (x0, x1, y0, y1) extent of the grid in scaled coordinates over which the grid is created. + shape_native + The 2D shape of the grid that is created within this extent. + pixel_scales + The (y,x) arcsecond-to-pixel units conversion factor of every pixel. If this is input as a `float`, + it is converted to a (float, float). + origin + The origin of the grid's mask. + """ + + x0, x1, y0, y1 = extent + + ys = np.linspace(y1, y0, shape_native[0]) + xs = np.linspace(x0, x1, shape_native[1]) + + xs_grid, ys_grid = np.meshgrid(xs, ys) + + xs_grid_1d = xs_grid.ravel() + ys_grid_1d = ys_grid.ravel() + + grid_2d = np.vstack((ys_grid_1d, xs_grid_1d)).T + + grid_2d = grid_2d.reshape((shape_native[0], shape_native[1], 2)) + + pixel_scales = ( + abs(grid_2d[0, 0, 0] - grid_2d[1, 0, 0]), + abs(grid_2d[0, 0, 1] - grid_2d[0, 1, 1]), + ) + + return Grid2D.no_mask( + values=grid_2d, + pixel_scales=pixel_scales, + over_sampling=over_sampling, + ) + + @classmethod + def uniform( + cls, + shape_native: Tuple[int, int], + pixel_scales: ty.PixelScales, + origin: Tuple[float, float] = (0.0, 0.0), + over_sampling: Optional[AbstractOverSampling] = None, + ) -> "Grid2D": + """ + Create a `Grid2D` (see *Grid2D.__new__*) as a uniform grid of (y,x) values given an input `shape_native` and + `pixel_scales` of the grid: + + Parameters + ---------- + shape_native + The 2D shape of the uniform grid and the mask that it is paired with. + pixel_scales + The (y,x) scaled units to pixel units conversion factors of every pixel. If this is input as a `float`, + it is converted to a (float, float) tuple. + origin + The origin of the grid's mask. + """ + pixel_scales = geometry_util.convert_pixel_scales_2d(pixel_scales=pixel_scales) + + grid_slim = grid_2d_util.grid_2d_slim_via_shape_native_from( + shape_native=shape_native, + pixel_scales=pixel_scales, + origin=origin, + ) + + return cls.no_mask( + values=grid_slim, + shape_native=shape_native, + pixel_scales=pixel_scales, + origin=origin, + over_sampling=over_sampling, + ) + + @classmethod + def bounding_box( + cls, + bounding_box: np.ndarray, + shape_native: Tuple[int, int], + buffer_around_corners: bool = False, + over_sampling: Optional[AbstractOverSampling] = None, + ) -> "Grid2D": + """ + Create a Grid2D (see *Grid2D.__new__*) from an input bounding box with coordinates [y_min, y_max, x_min, x_max], + where the shape_native is used to compute the (y,x) grid values within this bounding box. + + If buffer_around_corners=True, the grid's (y,x) values fully align with the input bounding box values. This + means the mask's edge pixels extend beyond the bounding box by pixel_scale/2.0. If buffer_around_corners=False, + the grid (y,x) coordinates are defined within the bounding box such that the mask's edge pixels align with + the bouning box. + + Parameters + ---------- + shape_native + The 2D shape of the uniform grid and the mask that it is paired with. + pixel_scales + The (y,x) arcsecond-to-pixel units conversion factor of every pixel. If this is input as a `float`, + it is converted to a (float, float). + origin + The origin of the grid's mask. + buffer_around_corners + Whether the grid is buffered such that the (y,x) values in the centre of its masks' edge pixels align + with the input bounding box values. + """ + y_min, y_max, x_min, x_max = bounding_box + + if not buffer_around_corners: + pixel_scales = ( + (y_max - y_min) / (shape_native[0]), + (x_max - x_min) / (shape_native[1]), + ) + + else: + pixel_scales = ( + (y_max - y_min) / (shape_native[0] - 1), + (x_max - x_min) / (shape_native[1] - 1), + ) + origin = ((y_max + y_min) / 2.0, (x_max + x_min) / 2.0) + + return cls.uniform( + shape_native=shape_native, + pixel_scales=pixel_scales, + origin=origin, + over_sampling=over_sampling, + ) + + @classmethod + def from_mask( + cls, + mask: Mask2D, + over_sampling: Optional[AbstractOverSampling] = None, + ) -> "Grid2D": + """ + Create a Grid2D (see *Grid2D.__new__*) from a mask, where only unmasked pixels are included in the grid (if the + grid is represented in its native 2D masked values are (0.0, 0.0)). + + The mask's pixel_scales and origin properties are used to compute the grid (y,x) coordinates. + + Parameters + ---------- + mask + The mask whose masked pixels are used to setup the grid. + """ + + grid_1d = grid_2d_util.grid_2d_slim_via_mask_from( + mask_2d=np.array(mask), + pixel_scales=mask.pixel_scales, + origin=mask.origin, + ) + + return Grid2D( + values=grid_1d, + mask=mask, + over_sampling=over_sampling, + ) + + @classmethod + def from_fits( + cls, + file_path: Union[Path, str], + pixel_scales: ty.PixelScales, + origin: Tuple[float, float] = (0.0, 0.0), + over_sampling: Optional[AbstractOverSampling] = None, + ) -> "Grid2D": + """ + Create a Grid2D (see *Grid2D.__new__*) from a mask, where only unmasked pixels are included in the grid (if the + grid is represented in its native 2D masked values are (0.0, 0.0)). + + The mask's pixel_scales and origin properties are used to compute the grid (y,x) coordinates. + + Parameters + ---------- + mask + The mask whose masked pixels are used to setup the grid. + """ + + grid_2d = array_2d_util.numpy_array_2d_via_fits_from(file_path=file_path, hdu=0) + + return Grid2D.no_mask( + values=grid_2d, + pixel_scales=pixel_scales, + origin=origin, + over_sampling=over_sampling, + ) + + @classmethod + def blurring_grid_from( + cls, + mask: Mask2D, + kernel_shape_native: Tuple[int, int], + over_sampling: Optional[AbstractOverSampling] = None, + ) -> "Grid2D": + """ + Setup a blurring-grid from a mask, where a blurring grid consists of all pixels that are masked (and + therefore have their values set to (0.0, 0.0)), but are close enough to the unmasked pixels that their values + will be convolved into the unmasked those pixels. This when computing images from + light profile objects. + + The mask's pixel_scales and origin properties are used to compute the blurring grid's (y,x) + coordinates. + + For example, if our mask is as follows: + + .. code-block:: bash + + x x x x x x x x x xI + x x x x x x x x x xI This is an imaging.Mask2D, where + x x x x x x x x x xI + x x x x x x x x x xI x = `True` (Pixel is masked and excluded from lens) + x x x O O O x x x xI O = `False` (Pixel is not masked and included in lens) + x x x O O O x x x xI + x x x O O O x x x xI + x x x x x x x x x xI + x x x x x x x x x xI + x x x x x x x x x xI + + For a PSF of shape (3,3), the following blurring mask is computed (noting that only pixels that are direct + neighbors of the unmasked pixels above will blur light into an unmasked pixel) + + .. code-block:: bash + + x x x x x x x x xI This is an example grid.Mask2D, where + x x x x x x x x xI + x x O O O O O x xI x = `True` (Pixel is masked and excluded from lens) + x x O x x x O x xI O = `False` (Pixel is not masked and included in lens) + x x O x x x O x xI + x x O x x x O x xI + x x O O O O O x xI + x x x x x x x x xI + x x x x x x x x xI + + Thus, the blurring grid coordinates and indexes will be as follows + + .. code-block:: bash + + pixel_scales = 1.0" + + positive negative + y x y x + x x x x x x x x xI I blurring_grid[0] = [2.0, -2.0] blurring_grid[9] = [-1.0, -2.0] + x x x x x x x x xI I blurring_grid[1] = [2.0, -1.0] blurring_grid[10] = [-1.0, 2.0] + x xI0 I1 I2 I3 I4 x xI pos blurring_grid[2] = [2.0, 0.0] blurring_grid[11] = [-2.0, -2.0] + x xI5 x x x I6 x xI y blurring_grid[3] = [2.0, 1.0] blurring_grid[12] = [-2.0, -1.0] + x xI7 x x x I8 x xI I blurring_grid[4] = [2.0, 2.0] blurring_grid[13] = [-2.0, 0.0] + x xI9 x x x I10 x xI neg blurring_grid[5] = [1.0, -2.0] blurring_grid[14] = [-2.0, 1.0] + x xI11I12I13I14I15 x xI I blurring_grid[6] = [1.0, 2.0] blurring_grid[15] = [-2.0, 2.0] + x x x x x x x x xI I blurring_grid[7] = [0.0, -2.0] + x x x x x x x x xI I blurring_grid[8] = [0.0, 2.0] + + For a PSF of shape (5,5), the following blurring mask is computed (noting that pixels are 2 pixels from a + direct unmasked pixels now blur light into an unmasked pixel) + + .. code-block:: bash + + x x x x x x x x xI This is an example grid.Mask2D, where + xIoIoIoIoIoIoIo xI + xIoIoIoIoIoIoIo xI x = `True` (Pixel is masked and excluded from lens) + xIoIo x x xIoIo xI O = `False` (Pixel is not masked and included in lens) + xIoIo x x xIoIo xI + xIoIo x x xIoIo xI + xIoIoIoIoIoIoIo xI + xIoIoIoIoIoIoIo xI + x x x x x x x x xI + + Parameters + ---------- + mask + The mask whose masked pixels are used to setup the blurring grid. + kernel_shape_native + The 2D shape of the kernel which convolves signal from masked pixels to unmasked pixels. + """ + + blurring_mask = mask.derive_mask.blurring_from( + kernel_shape_native=kernel_shape_native + ) + + return cls.from_mask( + mask=blurring_mask, + over_sampling=over_sampling, + ) + + def subtracted_from(self, offset: Tuple[(float, float), np.ndarray]) -> "Grid2D": + if offset[0] == 0.0 and offset[1] == 0.0: + return self + + mask = Mask2D( + mask=self.mask, + pixel_scales=self.pixel_scales, + origin=(self.origin[0] - offset[0], self.origin[1] - offset[1]), + ) + + return Grid2D( + values=self - np.array(offset), + mask=mask, + over_sampling=self.over_sampling, + ) + + @property + def slim(self) -> "Grid2D": + """ + Return a `Grid2D` where the data is stored its `slim` representation, which is an ndarray of shape + [total_unmasked_pixels, 2]. + + If it is already stored in its `slim` representation it is returned as it is. If not, it is mapped from + `native` to `slim` and returned as a new `Grid2D`. + """ + return Grid2D( + values=self, + mask=self.mask, + over_sampling=self.over_sampling, + ) + + @property + def native(self) -> "Grid2D": + """ + Return a `Grid2D` where the data is stored in its `native` representation, which has shape + [total_y_pixels, total_x_pixels, 2]. + + If it is already stored in its `native` representation it is return as it is. If not, it is mapped from + `slim` to `native` and returned as a new `Grid2D`. + + This method is used in the child `Grid2D` classes to create their `native` properties. + """ + return Grid2D( + values=self, + mask=self.mask, + over_sampling=self.over_sampling, + store_native=True, + ) + + @cached_property + def over_sampler(self) -> AbstractOverSampler: + return self.over_sampling.over_sampler_from(mask=self.mask) + + @property + def flipped(self) -> "Grid2D": + """ + Return the grid as an ndarray of shape [total_unmasked_pixels, 2] with flipped values such that coordinates + are given as (x,y) values. + + This is used to interface with Python libraries that require the grid in (x,y) format. + """ + return self.with_new_array(np.fliplr(self.array)) + + @property + def in_radians(self) -> "Grid2D": + """ + Return the grid as an ndarray where all (y,x) values are converted to Radians. + + This grid is used by the interferometer module. + """ + return (self * np.pi) / 648000.0 + + def grid_2d_via_deflection_grid_from(self, deflection_grid: "Grid2D") -> "Grid2D": + """ + Returns a new Grid2D from this grid, where the (y,x) coordinates of this grid have a grid of (y,x) values, + termed the deflection grid, subtracted from them to determine the new grid of (y,x) values. + + This is used by PyAutoLens to perform grid ray-tracing. + + Parameters + ---------- + deflection_grid + The grid of (y,x) coordinates which is subtracted from this grid. + """ + return Grid2D( + values=self - deflection_grid, + mask=self.mask, + over_sampling=self.over_sampling, + ) + + def blurring_grid_via_kernel_shape_from( + self, kernel_shape_native: Tuple[int, int] + ) -> "Grid2D": + """ + Returns the blurring grid from a grid, via an input 2D kernel shape. + + For a full description of blurring grids, checkout *blurring_grid_from*. + + Parameters + ---------- + kernel_shape_native + The 2D shape of the kernel which convolves signal from masked pixels to unmasked pixels. + """ + + from autoarray.operators.over_sampling.uniform import OverSamplingUniform + + return Grid2D.blurring_grid_from( + mask=self.mask, + kernel_shape_native=kernel_shape_native, + over_sampling=OverSamplingUniform(sub_size=1), + ) + + def grid_with_coordinates_within_distance_removed_from( + self, coordinates: Union[np.ndarray, List], distance: float + ) -> "Grid2D": + """Remove all coordinates from this Grid2D which are within a certain distance of an input list of coordinates. + + For example, if the grid has the coordinate (0.0, 0.0) and coordinates=[(0.0, 0.0)], distance=0.1 is input into + this function, a new Grid2D will be created which removes the coordinate (0.0, 0.0). + + Parameters + ---------- + coordinates : [(float, float)] + The list of coordinates which are removed from the grid if they are within the distance threshold. + distance + The distance threshold that coordinates are removed if they are within that of the input coordinates. + """ + + if not isinstance(coordinates, list): + coordinates = [coordinates] + + distance_mask = np.full(fill_value=False, shape=self.shape_native) + + for coordinate in coordinates: + distances = self.distances_to_coordinate_from(coordinate=coordinate) + + distance_mask += distances.native < distance + + mask = Mask2D( + mask=distance_mask, + pixel_scales=self.pixel_scales, + origin=self.origin, + ) + + return Grid2D.from_mask( + mask=mask, + over_sampling=self.over_sampling, + ) + + def squared_distances_to_coordinate_from( + self, coordinate: Tuple[float, float] = (0.0, 0.0) + ) -> Array2D: + """ + Returns the squared distance of every coordinate on the grid from an input coordinate. + + Parameters + ---------- + coordinate + The (y,x) coordinate from which the squared distance of every grid (y,x) coordinate is computed. + """ + if use_jax: + squared_distances = np.square(self.array[:, 0] - coordinate[0]) + np.square( + self.array[:, 1] - coordinate[1] + ) + else: + squared_distances = np.square(self[:, 0] - coordinate[0]) + np.square( + self[:, 1] - coordinate[1] + ) + return Array2D(values=squared_distances, mask=self.mask) + + def distances_to_coordinate_from( + self, coordinate: Tuple[float, float] = (0.0, 0.0) + ) -> Array2D: + """ + Returns the distance of every coordinate on the grid from an input (y,x) coordinate. + + Parameters + ---------- + coordinate + The (y,x) coordinate from which the distance of every grid (y,x) coordinate is computed. + """ + squared_distance = self.squared_distances_to_coordinate_from( + coordinate=coordinate + ) + distances = np.sqrt(squared_distance.array) + return Array2D(values=distances, mask=self.mask) + + def grid_2d_radial_projected_shape_slim_from( + self, centre: Tuple[float, float] = (0.0, 0.0) + ) -> int: + """ + The function `grid_scaled_2d_slim_radial_projected_from()` determines a projected radial grid of points from a + 2D region of coordinates defined by an extent [xmin, xmax, ymin, ymax] and with a (y,x) centre. + + To do this, the function first performs these 3 steps: + + 1) Given the region defined by the extent [xmin, xmax, ymin, ymax], the algorithm finds the longest 1D distance + of the 4 paths from the (y,x) centre to the edge of the region (e.g. following the positive / negative y and + x axes). + + 2) Use the pixel-scale corresponding to the direction chosen (e.g. if the positive x-axis was the longest, the + pixel_scale in the x dimension is used). + + 3) Determine the number of pixels between the centre and the edge of the region using the longest path between + the two chosen above. + + A schematic is shown below: + + .. code-block:: bash + + ------------------- + | | + |<- - - - ->x | x = centre + | | <-> = longest radial path from centre to extent edge + | | + ------------------- + + Using the centre x above, this function finds the longest radial path to the edge of the extent window. + + This function returns the integer number of pixels given by this radial grid, which is then used to create + the radial grid. + + Parameters + ---------- + extent + The extent of the grid the radii grid is computed using, with format [xmin, xmax, ymin, ymax] + centre : (float, flloat) + The (y,x) central coordinate which the radial grid is traced outwards from. + pixel_scales + The (y,x) scaled units to pixel units conversion factor of the 2D mask array. + + Returns + ------- + int + The 1D integer shape of a radial set of points sampling the longest distance from the centre to the edge of the + extent in along the positive x-axis. + """ + + return grid_2d_util._radial_projected_shape_slim_from( + extent=self.geometry.extent, + centre=centre, + pixel_scales=self.mask.pixel_scales, + ) + + def grid_2d_radial_projected_from( + self, + centre: Tuple[float, float] = (0.0, 0.0), + angle: float = 0.0, + shape_slim: Optional[int] = 0, + remove_projected_centre: bool = None, + ) -> Grid2DIrregular: + """ + Determine a projected radial grid of points from a 2D region of coordinates defined by an + extent [xmin, xmax, ymin, ymax] and with a (y,x) centre. + + This functions operates as follows: + + 1) Given the region defined by the extent [xmin, xmax, ymin, ymax], the algorithm finds the longest 1D distance + of the 4 paths from the (y,x) centre to the edge of the region e.g. following the positive / negative y and + x axes. + + 2) Use the pixel-scale corresponding to the direction chosen e.g. if the positive x-axis was the longest, the + pixel_scale in the x dimension is used. + + 3) Determine the number of pixels between the centre and the edge of the region using the longest path between + the two chosen above. + + 4) Create a (y,x) grid of radial points where all points are at the centre's y value = 0.0 and the x values + iterate from the centre in increasing steps of the pixel-scale. + + 5) Rotate these radial coordinates by the input `angle` clockwise. + + A schematic is shown below: + + .. code-block:: bash + + ------------------- + | | + |<- - - - ->x | x = centre + | | <-> = longest radial path from centre to extent edge + | | + ------------------- + + Parameters + ---------- + centre + The (y,x) central coordinate which the radial grid is traced outwards from. + angle + The angle with which the radial coordinates are rotated clockwise. + + Returns + ------- + Grid2DIrregular + A radial set of points sampling the longest distance from the centre to the edge of the extent in along the + positive x-axis. + """ + + grid_radial_projected_2d = ( + grid_2d_util.grid_scaled_2d_slim_radial_projected_from( + extent=self.geometry.extent, + centre=centre, + pixel_scales=self.mask.pixel_scales, + shape_slim=shape_slim, + ) + ) + + grid_radial_projected_2d = geometry_util.transform_grid_2d_to_reference_frame( + grid_2d=grid_radial_projected_2d, centre=centre, angle=angle + ) + + grid_radial_projected_2d = geometry_util.transform_grid_2d_from_reference_frame( + grid_2d=grid_radial_projected_2d, centre=centre, angle=0.0 + ) + + if remove_projected_centre is None: + remove_projected_centre = conf.instance["general"]["grid"][ + "remove_projected_centre" + ] + + if remove_projected_centre: + grid_radial_projected_2d = grid_radial_projected_2d[1:, :] + + return Grid2DIrregular(values=grid_radial_projected_2d) + + @property + def shape_native_scaled_interior(self) -> Tuple[float, float]: + """ + The (y,x) interior 2D shape of the grid in scaled units, computed from the minimum and maximum y and x + values of the grid. + + This differs from the `shape_native_scaled` because the edges of the shape are at the maxima and minima + of the grid's (y,x) values, whereas the `shape_native_scaled` uses the uniform geometry of the grid and its + ``pixel_scales``, which means it has a buffer at each edge of half a ``pixel_scale``. + """ + return ( + np.amax(self[:, 0]) - np.amin(self[:, 0]), + np.amax(self[:, 1]) - np.amin(self[:, 1]), + ) + + @property + def scaled_minima(self) -> Tuple: + """ + The (y,x) minimum values of the grid in scaled units, buffed such that their extent is further than the grid's + extent. + """ + if use_jax: + return ( + np.amin(self.array[:, 0]).astype("float"), + np.amin(self.array[:, 1]).astype("float"), + ) + else: + return ( + np.amin(self[:, 0]).astype("float"), + np.amin(self[:, 1]).astype("float"), + ) + + @property + def scaled_maxima(self) -> Tuple: + """ + The (y,x) maximum values of the grid in scaled units, buffed such that their extent is further than the grid's + extent. + """ + if use_jax: + return ( + np.amax(self.array[:, 0]).astype("float"), + np.amax(self.array[:, 1]).astype("float"), + ) + else: + return ( + np.amax(self[:, 0]).astype("float"), + np.amax(self[:, 1]).astype("float"), + ) + + def extent_with_buffer_from(self, buffer: float = 1.0e-8) -> List[float]: + """ + The extent of the grid in scaled units returned as a list [x_min, x_max, y_min, y_max], where all values are + buffed such that their extent is further than the grid's extent.. + + This follows the format of the extent input parameter in the matplotlib method imshow (and other methods) and + is used for visualization in the plot module. + """ + return [ + self.scaled_minima[1] - buffer, + self.scaled_maxima[1] + buffer, + self.scaled_minima[0] - buffer, + self.scaled_maxima[0] + buffer, + ] + + def padded_grid_from(self, kernel_shape_native: Tuple[int, int]) -> "Grid2D": + """ + When the edge pixels of a mask are unmasked and a convolution is to occur, the signal of edge pixels will + be 'missing' if the grid is used to evaluate the signal via an analytic function. + + To ensure this signal is included the padded grid is used, which is 'buffed' such that it includes all pixels + whose signal will be convolved into the unmasked pixels given the 2D kernel shape. + + Parameters + ---------- + kernel_shape_native + The 2D shape of the kernel which convolves signal from masked pixels to unmasked pixels. + """ + + shape = self.mask.shape + + padded_shape = ( + shape[0] + kernel_shape_native[0] - 1, + shape[1] + kernel_shape_native[1] - 1, + ) + + padded_mask = Mask2D.all_false( + shape_native=padded_shape, + pixel_scales=self.mask.pixel_scales, + ) + + return Grid2D.from_mask( + mask=padded_mask, + over_sampling=self.over_sampling, + ) + + @cached_property + def is_uniform(self) -> bool: + """ + Returns if the grid is uniform, where a uniform grid is defined as a grid where all pixels are separated by + the same pixel-scale in both the y and x directions. + + The method does not check if the x coordinates are uniformly spaced, only the y coordinates, under the + assumption that no calculation will be performed on a grid where the y coordinates are uniformly spaced but the + x coordinates are not. If such a case arises, the method should be updated to check both the y and x coordinates. + + Returns + ------- + Whether the grid is uniform. + """ + + y_diff = self[:, 0][:-1] - self[:, 0][1:] + y_diff = y_diff[y_diff != 0] + + if any(abs(y_diff - self.pixel_scales[0]) > 1.0e-8): + return False + + return True diff --git a/autoarray/structures/triangles/abstract.py b/autoarray/structures/triangles/abstract.py index 919b5909b..379f2f8cf 100644 --- a/autoarray/structures/triangles/abstract.py +++ b/autoarray/structures/triangles/abstract.py @@ -1,276 +1,276 @@ -from abc import abstractmethod, ABC - -import numpy as np - -from autoarray import Grid2D -from autoarray.structures.triangles.shape import Shape - -HEIGHT_FACTOR = 3**0.5 / 2 - - -class AbstractTriangles(ABC): - def __init__( - self, - indices, - vertices, - **kwargs, - ): - """ - Represents a set of triangles in efficient NumPy arrays. - - Parameters - ---------- - indices - The indices of the vertices of the triangles. This is a 2D array where each row is a triangle - with the three indices of the vertices. - vertices - The vertices of the triangles. - """ - self.indices = indices - self.vertices = vertices - - def __len__(self): - return len(self.triangles) - - @property - def area(self) -> float: - """ - The total area covered by the triangles. - """ - triangles = self.triangles - return 0.5 * np.nansum( - np.abs( - (triangles[:, 0, 0] * (triangles[:, 1, 1] - triangles[:, 2, 1])) - + (triangles[:, 1, 0] * (triangles[:, 2, 1] - triangles[:, 0, 1])) - + (triangles[:, 2, 0] * (triangles[:, 0, 1] - triangles[:, 1, 1])) - ) - ) - - @property - @abstractmethod - def numpy(self): - pass - - def _up_sample_triangle(self): - triangles = self.triangles - - m01 = (triangles[:, 0] + triangles[:, 1]) / 2 - m12 = (triangles[:, 1] + triangles[:, 2]) / 2 - m20 = (triangles[:, 2] + triangles[:, 0]) / 2 - - return self.numpy.concatenate( - [ - self.numpy.stack([triangles[:, 1], m12, m01], axis=1), - self.numpy.stack([triangles[:, 2], m20, m12], axis=1), - self.numpy.stack([m01, m12, m20], axis=1), - self.numpy.stack([triangles[:, 0], m01, m20], axis=1), - ], - axis=0, - ) - - def _neighborhood_triangles(self): - triangles = self.triangles - - new_v0 = triangles[:, 1] + triangles[:, 2] - triangles[:, 0] - new_v1 = triangles[:, 0] + triangles[:, 2] - triangles[:, 1] - new_v2 = triangles[:, 0] + triangles[:, 1] - triangles[:, 2] - - return self.numpy.concatenate( - [ - self.numpy.stack([new_v0, triangles[:, 1], triangles[:, 2]], axis=1), - self.numpy.stack([triangles[:, 0], new_v1, triangles[:, 2]], axis=1), - self.numpy.stack([triangles[:, 0], triangles[:, 1], new_v2], axis=1), - triangles, - ], - axis=0, - ) - - def __str__(self): - return f"{self.__class__.__name__} with {len(self.indices)} triangles" - - def __repr__(self): - return str(self) - - @property - @abstractmethod - def triangles(self): - pass - - @classmethod - def for_limits_and_scale( - cls, - y_min: float, - y_max: float, - x_min: float, - x_max: float, - scale: float, - **kwargs, - ) -> "AbstractTriangles": - height = scale * HEIGHT_FACTOR - - vertices = [] - indices = [] - vertex_dict = {} - - def add_vertex(v): - if v not in vertex_dict: - vertex_dict[v] = len(vertices) - vertices.append(v) - return vertex_dict[v] - - rows = [] - for row_y in np.arange(y_min, y_max + height, height): - row = [] - offset = (len(rows) % 2) * scale / 2 - for col_x in np.arange(x_min - offset, x_max + scale, scale): - row.append((row_y, col_x)) - rows.append(row) - - for i in range(len(rows) - 1): - row = rows[i] - next_row = rows[i + 1] - for j in range(len(row)): - if i % 2 == 0 and j < len(next_row) - 1: - t1 = [ - add_vertex(row[j]), - add_vertex(next_row[j]), - add_vertex(next_row[j + 1]), - ] - if j < len(row) - 1: - t2 = [ - add_vertex(row[j]), - add_vertex(row[j + 1]), - add_vertex(next_row[j + 1]), - ] - indices.append(t2) - elif i % 2 == 1 and j < len(next_row) - 1: - t1 = [ - add_vertex(row[j]), - add_vertex(next_row[j]), - add_vertex(row[j + 1]), - ] - indices.append(t1) - if j < len(next_row) - 1: - t2 = [ - add_vertex(next_row[j]), - add_vertex(next_row[j + 1]), - add_vertex(row[j + 1]), - ] - indices.append(t2) - else: - continue - indices.append(t1) - - vertices = np.array(vertices) - indices = np.array(indices) - - return cls( - indices=indices, - vertices=vertices, - **kwargs, - ) - - @classmethod - def for_grid( - cls, - grid: Grid2D, - **kwargs, - ) -> "AbstractTriangles": - """ - Create a grid of equilateral triangles from a regular grid. - - Parameters - ---------- - grid - The regular grid to convert to a grid of triangles. - - Returns - ------- - The grid of triangles. - """ - - scale = grid.pixel_scale - - y = grid[:, 0] - x = grid[:, 1] - - y_min = y.min() - y_max = y.max() - x_min = x.min() - x_max = x.max() - - return cls.for_limits_and_scale( - y_min, - y_max, - x_min, - x_max, - scale, - **kwargs, - ) - - @abstractmethod - def with_vertices(self, vertices: np.ndarray) -> "AbstractTriangles": - """ - Create a new set of triangles with the vertices replaced. - - Parameters - ---------- - vertices - The new vertices to use. - - Returns - ------- - The new set of triangles with the new vertices. - """ - - @abstractmethod - def for_indexes(self, indexes: np.ndarray) -> "AbstractTriangles": - """ - Create a new ArrayTriangles containing indices and vertices corresponding to the given indexes - but without duplicate vertices. - - Parameters - ---------- - indexes - The indexes of the triangles to include in the new ArrayTriangles. - - Returns - ------- - The new ArrayTriangles instance. - """ - - @abstractmethod - def containing_indices(self, shape: Shape) -> np.ndarray: - """ - Find the triangles that insect with a given shape. - - Parameters - ---------- - shape - The shape - - Returns - ------- - The triangles that intersect the shape. - """ - - @abstractmethod - def neighborhood(self) -> "AbstractTriangles": - """ - Create a new set of triangles that are the neighborhood of the current triangles. - - Includes the current triangles and the triangles that share an edge with the current triangles. - """ - - @abstractmethod - def up_sample(self) -> "AbstractTriangles": - """ - Up-sample the triangles by adding a new vertex at the midpoint of each edge. - - This means each triangle becomes four smaller triangles. - """ - - @property - @abstractmethod - def means(self): - pass +from abc import abstractmethod, ABC + +import numpy as np + +from autoarray import Grid2D +from autoarray.structures.triangles.shape import Shape + +HEIGHT_FACTOR = 3**0.5 / 2 + + +class AbstractTriangles(ABC): + def __init__( + self, + indices, + vertices, + **kwargs, + ): + """ + Represents a set of triangles in efficient NumPy arrays. + + Parameters + ---------- + indices + The indices of the vertices of the triangles. This is a 2D array where each row is a triangle + with the three indices of the vertices. + vertices + The vertices of the triangles. + """ + self.indices = indices + self.vertices = vertices + + def __len__(self): + return len(self.triangles) + + @property + def area(self) -> float: + """ + The total area covered by the triangles. + """ + triangles = self.triangles + return 0.5 * np.nansum( + np.abs( + (triangles[:, 0, 0] * (triangles[:, 1, 1] - triangles[:, 2, 1])) + + (triangles[:, 1, 0] * (triangles[:, 2, 1] - triangles[:, 0, 1])) + + (triangles[:, 2, 0] * (triangles[:, 0, 1] - triangles[:, 1, 1])) + ) + ) + + @property + @abstractmethod + def numpy(self): + pass + + def _up_sample_triangle(self): + triangles = self.triangles + + m01 = (triangles[:, 0] + triangles[:, 1]) / 2 + m12 = (triangles[:, 1] + triangles[:, 2]) / 2 + m20 = (triangles[:, 2] + triangles[:, 0]) / 2 + + return self.numpy.concatenate( + [ + self.numpy.stack([triangles[:, 1], m12, m01], axis=1), + self.numpy.stack([triangles[:, 2], m20, m12], axis=1), + self.numpy.stack([m01, m12, m20], axis=1), + self.numpy.stack([triangles[:, 0], m01, m20], axis=1), + ], + axis=0, + ) + + def _neighborhood_triangles(self): + triangles = self.triangles + + new_v0 = triangles[:, 1] + triangles[:, 2] - triangles[:, 0] + new_v1 = triangles[:, 0] + triangles[:, 2] - triangles[:, 1] + new_v2 = triangles[:, 0] + triangles[:, 1] - triangles[:, 2] + + return self.numpy.concatenate( + [ + self.numpy.stack([new_v0, triangles[:, 1], triangles[:, 2]], axis=1), + self.numpy.stack([triangles[:, 0], new_v1, triangles[:, 2]], axis=1), + self.numpy.stack([triangles[:, 0], triangles[:, 1], new_v2], axis=1), + triangles, + ], + axis=0, + ) + + def __str__(self): + return f"{self.__class__.__name__} with {len(self.indices)} triangles" + + def __repr__(self): + return str(self) + + @property + @abstractmethod + def triangles(self): + pass + + @classmethod + def for_limits_and_scale( + cls, + y_min: float, + y_max: float, + x_min: float, + x_max: float, + scale: float, + **kwargs, + ) -> "AbstractTriangles": + height = scale * HEIGHT_FACTOR + + vertices = [] + indices = [] + vertex_dict = {} + + def add_vertex(v): + if v not in vertex_dict: + vertex_dict[v] = len(vertices) + vertices.append(v) + return vertex_dict[v] + + rows = [] + for row_y in np.arange(y_min, y_max + height, height): + row = [] + offset = (len(rows) % 2) * scale / 2 + for col_x in np.arange(x_min - offset, x_max + scale, scale): + row.append((row_y, col_x)) + rows.append(row) + + for i in range(len(rows) - 1): + row = rows[i] + next_row = rows[i + 1] + for j in range(len(row)): + if i % 2 == 0 and j < len(next_row) - 1: + t1 = [ + add_vertex(row[j]), + add_vertex(next_row[j]), + add_vertex(next_row[j + 1]), + ] + if j < len(row) - 1: + t2 = [ + add_vertex(row[j]), + add_vertex(row[j + 1]), + add_vertex(next_row[j + 1]), + ] + indices.append(t2) + elif i % 2 == 1 and j < len(next_row) - 1: + t1 = [ + add_vertex(row[j]), + add_vertex(next_row[j]), + add_vertex(row[j + 1]), + ] + indices.append(t1) + if j < len(next_row) - 1: + t2 = [ + add_vertex(next_row[j]), + add_vertex(next_row[j + 1]), + add_vertex(row[j + 1]), + ] + indices.append(t2) + else: + continue + indices.append(t1) + + vertices = np.array(vertices) + indices = np.array(indices) + + return cls( + indices=indices, + vertices=vertices, + **kwargs, + ) + + @classmethod + def for_grid( + cls, + grid: Grid2D, + **kwargs, + ) -> "AbstractTriangles": + """ + Create a grid of equilateral triangles from a regular grid. + + Parameters + ---------- + grid + The regular grid to convert to a grid of triangles. + + Returns + ------- + The grid of triangles. + """ + + scale = grid.pixel_scale + + y = grid[:, 0] + x = grid[:, 1] + + y_min = y.min() + y_max = y.max() + x_min = x.min() + x_max = x.max() + + return cls.for_limits_and_scale( + y_min, + y_max, + x_min, + x_max, + scale, + **kwargs, + ) + + @abstractmethod + def with_vertices(self, vertices: np.ndarray) -> "AbstractTriangles": + """ + Create a new set of triangles with the vertices replaced. + + Parameters + ---------- + vertices + The new vertices to use. + + Returns + ------- + The new set of triangles with the new vertices. + """ + + @abstractmethod + def for_indexes(self, indexes: np.ndarray) -> "AbstractTriangles": + """ + Create a new ArrayTriangles containing indices and vertices corresponding to the given indexes + but without duplicate vertices. + + Parameters + ---------- + indexes + The indexes of the triangles to include in the new ArrayTriangles. + + Returns + ------- + The new ArrayTriangles instance. + """ + + @abstractmethod + def containing_indices(self, shape: Shape) -> np.ndarray: + """ + Find the triangles that insect with a given shape. + + Parameters + ---------- + shape + The shape + + Returns + ------- + The triangles that intersect the shape. + """ + + @abstractmethod + def neighborhood(self) -> "AbstractTriangles": + """ + Create a new set of triangles that are the neighborhood of the current triangles. + + Includes the current triangles and the triangles that share an edge with the current triangles. + """ + + @abstractmethod + def up_sample(self) -> "AbstractTriangles": + """ + Up-sample the triangles by adding a new vertex at the midpoint of each edge. + + This means each triangle becomes four smaller triangles. + """ + + @property + @abstractmethod + def means(self): + pass diff --git a/autoarray/structures/triangles/abstract_coordinate_array.py b/autoarray/structures/triangles/abstract_coordinate_array.py index 0a5a36b26..b7d386983 100644 --- a/autoarray/structures/triangles/abstract_coordinate_array.py +++ b/autoarray/structures/triangles/abstract_coordinate_array.py @@ -1,171 +1,171 @@ -from abc import ABC, abstractmethod - -import numpy as np - -from autoarray.structures.triangles.abstract import HEIGHT_FACTOR, AbstractTriangles -from autoconf import cached_property - - -class AbstractCoordinateArray(ABC): - def __init__( - self, - coordinates: np.ndarray, - side_length: float, - x_offset: float = 0.0, - y_offset: float = 0.0, - flipped: bool = False, - ): - """ - Represents a set of triangles by integer coordinates. - - Parameters - ---------- - coordinates - Integer x y coordinates for each triangle. - side_length - The side length of the triangles. - flipped - Whether the triangles are flipped upside down. - y_offset - An y_offset to apply to the y coordinates so that up-sampled triangles align. - """ - self.coordinates = coordinates - self.side_length = side_length - self.flipped = flipped - - self.scaling_factors = np.array( - [0.5 * side_length, HEIGHT_FACTOR * side_length] - ) - self.x_offset = x_offset - self.y_offset = y_offset - - @cached_property - def triangles(self) -> np.ndarray: - """ - The vertices of the triangles as an Nx3x2 array. - """ - centres = self.centres - return np.stack( - ( - centres - + self.flip_array - * np.array( - [0.0, 0.5 * self.side_length * HEIGHT_FACTOR], - ), - centres - + self.flip_array - * np.array( - [0.5 * self.side_length, -0.5 * self.side_length * HEIGHT_FACTOR] - ), - centres - + self.flip_array - * np.array( - [-0.5 * self.side_length, -0.5 * self.side_length * HEIGHT_FACTOR] - ), - ), - axis=1, - ) - - @property - def centres(self) -> np.ndarray: - """ - The centres of the triangles. - """ - return self.scaling_factors * self.coordinates + np.array( - [self.x_offset, self.y_offset] - ) - - @cached_property - def flip_mask(self) -> np.ndarray: - """ - A mask for the triangles that are flipped. - - Every other triangle is flipped so that they tessellate. - """ - mask = (self.coordinates[:, 0] + self.coordinates[:, 1]) % 2 != 0 - if self.flipped: - mask = ~mask - return mask - - @cached_property - @abstractmethod - def flip_array(self) -> np.ndarray: - """ - An array of 1s and -1s to flip the triangles. - """ - - def __iter__(self): - return iter(self.triangles) - - @cached_property - @abstractmethod - def _vertices_and_indices(self): - pass - - @property - def vertices(self) -> np.ndarray: - """ - The unique vertices of the triangles. - """ - return self._vertices_and_indices[0] - - @property - def indices(self) -> np.ndarray: - """ - The indices of the vertices of the triangles. - """ - return self._vertices_and_indices[1] - - def with_vertices(self, vertices: np.ndarray) -> AbstractTriangles: - """ - Create a new set of triangles with the vertices replaced. - - Parameters - ---------- - vertices - The new vertices to use. - - Returns - ------- - The new set of triangles with the new vertices. - """ - - @classmethod - def for_limits_and_scale( - cls, - x_min: float, - x_max: float, - y_min: float, - y_max: float, - scale: float = 1.0, - **_, - ): - coordinates = [] - x = x_min - while x < x_max: - y = y_min - while y < y_max: - coordinates.append([x, y]) - y += scale - x += scale - - x_mean = (x_min + x_max) / 2 - y_mean = (y_min + y_max) / 2 - - return cls( - coordinates=np.array(coordinates), - side_length=scale, - x_offset=x_mean, - y_offset=y_mean, - ) - - @property - def means(self): - return np.mean(self.triangles, axis=1) - - @property - def area(self): - return (3**0.5 / 4 * self.side_length**2) * len(self) - - def __len__(self): - return np.count_nonzero(~np.isnan(self.coordinates).any(axis=1)) +from abc import ABC, abstractmethod + +import numpy as np + +from autoarray.structures.triangles.abstract import HEIGHT_FACTOR, AbstractTriangles +from autoconf import cached_property + + +class AbstractCoordinateArray(ABC): + def __init__( + self, + coordinates: np.ndarray, + side_length: float, + x_offset: float = 0.0, + y_offset: float = 0.0, + flipped: bool = False, + ): + """ + Represents a set of triangles by integer coordinates. + + Parameters + ---------- + coordinates + Integer x y coordinates for each triangle. + side_length + The side length of the triangles. + flipped + Whether the triangles are flipped upside down. + y_offset + An y_offset to apply to the y coordinates so that up-sampled triangles align. + """ + self.coordinates = coordinates + self.side_length = side_length + self.flipped = flipped + + self.scaling_factors = np.array( + [0.5 * side_length, HEIGHT_FACTOR * side_length] + ) + self.x_offset = x_offset + self.y_offset = y_offset + + @cached_property + def triangles(self) -> np.ndarray: + """ + The vertices of the triangles as an Nx3x2 array. + """ + centres = self.centres + return np.stack( + ( + centres + + self.flip_array + * np.array( + [0.0, 0.5 * self.side_length * HEIGHT_FACTOR], + ), + centres + + self.flip_array + * np.array( + [0.5 * self.side_length, -0.5 * self.side_length * HEIGHT_FACTOR] + ), + centres + + self.flip_array + * np.array( + [-0.5 * self.side_length, -0.5 * self.side_length * HEIGHT_FACTOR] + ), + ), + axis=1, + ) + + @property + def centres(self) -> np.ndarray: + """ + The centres of the triangles. + """ + return self.scaling_factors * self.coordinates + np.array( + [self.x_offset, self.y_offset] + ) + + @cached_property + def flip_mask(self) -> np.ndarray: + """ + A mask for the triangles that are flipped. + + Every other triangle is flipped so that they tessellate. + """ + mask = (self.coordinates[:, 0] + self.coordinates[:, 1]) % 2 != 0 + if self.flipped: + mask = ~mask + return mask + + @cached_property + @abstractmethod + def flip_array(self) -> np.ndarray: + """ + An array of 1s and -1s to flip the triangles. + """ + + def __iter__(self): + return iter(self.triangles) + + @cached_property + @abstractmethod + def _vertices_and_indices(self): + pass + + @property + def vertices(self) -> np.ndarray: + """ + The unique vertices of the triangles. + """ + return self._vertices_and_indices[0] + + @property + def indices(self) -> np.ndarray: + """ + The indices of the vertices of the triangles. + """ + return self._vertices_and_indices[1] + + def with_vertices(self, vertices: np.ndarray) -> AbstractTriangles: + """ + Create a new set of triangles with the vertices replaced. + + Parameters + ---------- + vertices + The new vertices to use. + + Returns + ------- + The new set of triangles with the new vertices. + """ + + @classmethod + def for_limits_and_scale( + cls, + x_min: float, + x_max: float, + y_min: float, + y_max: float, + scale: float = 1.0, + **_, + ): + coordinates = [] + x = x_min + while x < x_max: + y = y_min + while y < y_max: + coordinates.append([x, y]) + y += scale + x += scale + + x_mean = (x_min + x_max) / 2 + y_mean = (y_min + y_max) / 2 + + return cls( + coordinates=np.array(coordinates), + side_length=scale, + x_offset=x_mean, + y_offset=y_mean, + ) + + @property + def means(self): + return np.mean(self.triangles, axis=1) + + @property + def area(self): + return (3**0.5 / 4 * self.side_length**2) * len(self) + + def __len__(self): + return np.count_nonzero(~np.isnan(self.coordinates).any(axis=1)) diff --git a/autoarray/structures/triangles/array.py b/autoarray/structures/triangles/array.py index 4bf03f9ef..d85979299 100644 --- a/autoarray/structures/triangles/array.py +++ b/autoarray/structures/triangles/array.py @@ -1,121 +1,121 @@ -import numpy as np - -from autoarray.structures.triangles.abstract import AbstractTriangles -from autoarray.structures.triangles.shape import Shape - - -class ArrayTriangles(AbstractTriangles): - @property - def triangles(self): - return self.vertices[self.indices] - - @property - def numpy(self): - return np - - @property - def means(self): - return np.mean(self.triangles, axis=1) - - def containing_indices(self, shape: Shape) -> np.ndarray: - """ - Find the triangles that insect with a given shape. - - Parameters - ---------- - shape - The shape - - Returns - ------- - The triangles that intersect the shape. - """ - inside = shape.mask(self.triangles) - - return np.where(inside)[0] - - def for_indexes(self, indexes: np.ndarray) -> "ArrayTriangles": - """ - Create a new ArrayTriangles containing indices and vertices corresponding to the given indexes - but without duplicate vertices. - - Parameters - ---------- - indexes - The indexes of the triangles to include in the new ArrayTriangles. - - Returns - ------- - The new ArrayTriangles instance. - """ - selected_indices = self.indices[indexes] - - flat_indices = selected_indices.flatten() - unique_vertices, inverse_indices = np.unique( - self.vertices[flat_indices], axis=0, return_inverse=True - ) - - new_indices = inverse_indices.reshape(selected_indices.shape) - - return ArrayTriangles(indices=new_indices, vertices=unique_vertices) - - def up_sample(self) -> "ArrayTriangles": - """ - Up-sample the triangles by adding a new vertex at the midpoint of each edge. - - This means each triangle becomes four smaller triangles. - """ - unique_vertices, inverse_indices = np.unique( - self._up_sample_triangle().reshape(-1, 2), axis=0, return_inverse=True - ) - new_indices = inverse_indices.reshape(-1, 3) - - return ArrayTriangles( - indices=new_indices, - vertices=unique_vertices, - ) - - def neighborhood(self) -> "ArrayTriangles": - """ - Create a new set of triangles that are the neighborhood of the current triangles. - - Includes the current triangles and the triangles that share an edge with the current triangles. - """ - unique_vertices, inverse_indices = np.unique( - self._neighborhood_triangles().reshape(-1, 2), - axis=0, - return_inverse=True, - ) - new_indices = inverse_indices.reshape(-1, 3) - - new_indices_sorted = np.sort(new_indices, axis=1) - - unique_triangles_indices, unique_index_positions = np.unique( - new_indices_sorted, axis=0, return_index=True - ) - - return ArrayTriangles( - indices=unique_triangles_indices, - vertices=unique_vertices, - ) - - def with_vertices(self, vertices: np.ndarray) -> "ArrayTriangles": - """ - Create a new set of triangles with the vertices replaced. - - Parameters - ---------- - vertices - The new vertices to use. - - Returns - ------- - The new set of triangles with the new vertices. - """ - return ArrayTriangles( - indices=self.indices, - vertices=vertices, - ) - - def __iter__(self): - return iter(self.triangles) +import numpy as np + +from autoarray.structures.triangles.abstract import AbstractTriangles +from autoarray.structures.triangles.shape import Shape + + +class ArrayTriangles(AbstractTriangles): + @property + def triangles(self): + return self.vertices[self.indices] + + @property + def numpy(self): + return np + + @property + def means(self): + return np.mean(self.triangles, axis=1) + + def containing_indices(self, shape: Shape) -> np.ndarray: + """ + Find the triangles that insect with a given shape. + + Parameters + ---------- + shape + The shape + + Returns + ------- + The triangles that intersect the shape. + """ + inside = shape.mask(self.triangles) + + return np.where(inside)[0] + + def for_indexes(self, indexes: np.ndarray) -> "ArrayTriangles": + """ + Create a new ArrayTriangles containing indices and vertices corresponding to the given indexes + but without duplicate vertices. + + Parameters + ---------- + indexes + The indexes of the triangles to include in the new ArrayTriangles. + + Returns + ------- + The new ArrayTriangles instance. + """ + selected_indices = self.indices[indexes] + + flat_indices = selected_indices.flatten() + unique_vertices, inverse_indices = np.unique( + self.vertices[flat_indices], axis=0, return_inverse=True + ) + + new_indices = inverse_indices.reshape(selected_indices.shape) + + return ArrayTriangles(indices=new_indices, vertices=unique_vertices) + + def up_sample(self) -> "ArrayTriangles": + """ + Up-sample the triangles by adding a new vertex at the midpoint of each edge. + + This means each triangle becomes four smaller triangles. + """ + unique_vertices, inverse_indices = np.unique( + self._up_sample_triangle().reshape(-1, 2), axis=0, return_inverse=True + ) + new_indices = inverse_indices.reshape(-1, 3) + + return ArrayTriangles( + indices=new_indices, + vertices=unique_vertices, + ) + + def neighborhood(self) -> "ArrayTriangles": + """ + Create a new set of triangles that are the neighborhood of the current triangles. + + Includes the current triangles and the triangles that share an edge with the current triangles. + """ + unique_vertices, inverse_indices = np.unique( + self._neighborhood_triangles().reshape(-1, 2), + axis=0, + return_inverse=True, + ) + new_indices = inverse_indices.reshape(-1, 3) + + new_indices_sorted = np.sort(new_indices, axis=1) + + unique_triangles_indices, unique_index_positions = np.unique( + new_indices_sorted, axis=0, return_index=True + ) + + return ArrayTriangles( + indices=unique_triangles_indices, + vertices=unique_vertices, + ) + + def with_vertices(self, vertices: np.ndarray) -> "ArrayTriangles": + """ + Create a new set of triangles with the vertices replaced. + + Parameters + ---------- + vertices + The new vertices to use. + + Returns + ------- + The new set of triangles with the new vertices. + """ + return ArrayTriangles( + indices=self.indices, + vertices=vertices, + ) + + def __iter__(self): + return iter(self.triangles) diff --git a/autoarray/structures/triangles/coordinate_array.py b/autoarray/structures/triangles/coordinate_array.py index e45f3eed4..2c99ca920 100644 --- a/autoarray/structures/triangles/coordinate_array.py +++ b/autoarray/structures/triangles/coordinate_array.py @@ -1,133 +1,133 @@ -import numpy as np - -from autoarray.structures.triangles.abstract import HEIGHT_FACTOR -from autoarray.structures.triangles.abstract_coordinate_array import ( - AbstractCoordinateArray, -) -from autoarray.structures.triangles.array import ArrayTriangles -from autoconf import cached_property - - -class CoordinateArrayTriangles(AbstractCoordinateArray): - @cached_property - def flip_array(self) -> np.ndarray: - """ - An array of 1s and -1s to flip the triangles. - """ - array = np.ones(self.coordinates.shape[0]) - array[self.flip_mask] = -1 - - return array[:, np.newaxis] - - def up_sample(self) -> "CoordinateArrayTriangles": - """ - Up-sample the triangles by adding a new vertex at the midpoint of each edge. - """ - new_coordinates = np.zeros((4 * self.coordinates.shape[0], 2)) - n_normal = 4 * np.sum(~self.flip_mask) - - new_coordinates[:n_normal] = np.vstack( - ( - 2 * self.coordinates[~self.flip_mask], - 2 * self.coordinates[~self.flip_mask] + np.array([1, 0]), - 2 * self.coordinates[~self.flip_mask] + np.array([-1, 0]), - 2 * self.coordinates[~self.flip_mask] + np.array([0, 1]), - ) - ) - new_coordinates[n_normal:] = np.vstack( - ( - 2 * self.coordinates[self.flip_mask], - 2 * self.coordinates[self.flip_mask] + np.array([1, 1]), - 2 * self.coordinates[self.flip_mask] + np.array([-1, 1]), - 2 * self.coordinates[self.flip_mask] + np.array([0, 1]), - ) - ) - - return CoordinateArrayTriangles( - coordinates=new_coordinates, - side_length=self.side_length / 2, - y_offset=self.y_offset + -0.25 * HEIGHT_FACTOR * self.side_length, - x_offset=self.x_offset, - flipped=True, - ) - - def neighborhood(self) -> "CoordinateArrayTriangles": - """ - Create a new set of triangles that are the neighborhood of the current triangles. - - Ensures that the new triangles are unique. - """ - new_coordinates = np.zeros((4 * self.coordinates.shape[0], 2)) - n_normal = 4 * np.sum(~self.flip_mask) - - new_coordinates[:n_normal] = np.vstack( - ( - self.coordinates[~self.flip_mask], - self.coordinates[~self.flip_mask] + np.array([1, 0]), - self.coordinates[~self.flip_mask] + np.array([-1, 0]), - self.coordinates[~self.flip_mask] + np.array([0, -1]), - ) - ) - new_coordinates[n_normal:] = np.vstack( - ( - self.coordinates[self.flip_mask], - self.coordinates[self.flip_mask] + np.array([1, 0]), - self.coordinates[self.flip_mask] + np.array([-1, 0]), - self.coordinates[self.flip_mask] + np.array([0, 1]), - ) - ) - return CoordinateArrayTriangles( - coordinates=np.unique(new_coordinates, axis=0), - side_length=self.side_length, - y_offset=self.y_offset, - x_offset=self.x_offset, - flipped=self.flipped, - ) - - @cached_property - def _vertices_and_indices(self): - flat_triangles = self.triangles.reshape(-1, 2) - vertices, inverse_indices = np.unique( - flat_triangles, axis=0, return_inverse=True - ) - indices = inverse_indices.reshape(-1, 3) - return vertices, indices - - def with_vertices(self, vertices: np.ndarray) -> ArrayTriangles: - """ - Create a new set of triangles with the vertices replaced. - - Parameters - ---------- - vertices - The new vertices to use. - - Returns - ------- - The new set of triangles with the new vertices. - """ - return ArrayTriangles( - indices=self.indices, - vertices=vertices, - ) - - def for_indexes(self, indexes: np.ndarray) -> "CoordinateArrayTriangles": - """ - Create a new CoordinateArrayTriangles containing triangles corresponding to the given indexes - - Parameters - ---------- - indexes - The indexes of the triangles to include in the new CoordinateArrayTriangles. - - Returns - ------- - The new CoordinateArrayTriangles instance. - """ - return CoordinateArrayTriangles( - coordinates=self.coordinates[indexes], - side_length=self.side_length, - y_offset=self.y_offset, - x_offset=self.x_offset, - flipped=self.flipped, - ) +import numpy as np + +from autoarray.structures.triangles.abstract import HEIGHT_FACTOR +from autoarray.structures.triangles.abstract_coordinate_array import ( + AbstractCoordinateArray, +) +from autoarray.structures.triangles.array import ArrayTriangles +from autoconf import cached_property + + +class CoordinateArrayTriangles(AbstractCoordinateArray): + @cached_property + def flip_array(self) -> np.ndarray: + """ + An array of 1s and -1s to flip the triangles. + """ + array = np.ones(self.coordinates.shape[0]) + array[self.flip_mask] = -1 + + return array[:, np.newaxis] + + def up_sample(self) -> "CoordinateArrayTriangles": + """ + Up-sample the triangles by adding a new vertex at the midpoint of each edge. + """ + new_coordinates = np.zeros((4 * self.coordinates.shape[0], 2)) + n_normal = 4 * np.sum(~self.flip_mask) + + new_coordinates[:n_normal] = np.vstack( + ( + 2 * self.coordinates[~self.flip_mask], + 2 * self.coordinates[~self.flip_mask] + np.array([1, 0]), + 2 * self.coordinates[~self.flip_mask] + np.array([-1, 0]), + 2 * self.coordinates[~self.flip_mask] + np.array([0, 1]), + ) + ) + new_coordinates[n_normal:] = np.vstack( + ( + 2 * self.coordinates[self.flip_mask], + 2 * self.coordinates[self.flip_mask] + np.array([1, 1]), + 2 * self.coordinates[self.flip_mask] + np.array([-1, 1]), + 2 * self.coordinates[self.flip_mask] + np.array([0, 1]), + ) + ) + + return CoordinateArrayTriangles( + coordinates=new_coordinates, + side_length=self.side_length / 2, + y_offset=self.y_offset + -0.25 * HEIGHT_FACTOR * self.side_length, + x_offset=self.x_offset, + flipped=True, + ) + + def neighborhood(self) -> "CoordinateArrayTriangles": + """ + Create a new set of triangles that are the neighborhood of the current triangles. + + Ensures that the new triangles are unique. + """ + new_coordinates = np.zeros((4 * self.coordinates.shape[0], 2)) + n_normal = 4 * np.sum(~self.flip_mask) + + new_coordinates[:n_normal] = np.vstack( + ( + self.coordinates[~self.flip_mask], + self.coordinates[~self.flip_mask] + np.array([1, 0]), + self.coordinates[~self.flip_mask] + np.array([-1, 0]), + self.coordinates[~self.flip_mask] + np.array([0, -1]), + ) + ) + new_coordinates[n_normal:] = np.vstack( + ( + self.coordinates[self.flip_mask], + self.coordinates[self.flip_mask] + np.array([1, 0]), + self.coordinates[self.flip_mask] + np.array([-1, 0]), + self.coordinates[self.flip_mask] + np.array([0, 1]), + ) + ) + return CoordinateArrayTriangles( + coordinates=np.unique(new_coordinates, axis=0), + side_length=self.side_length, + y_offset=self.y_offset, + x_offset=self.x_offset, + flipped=self.flipped, + ) + + @cached_property + def _vertices_and_indices(self): + flat_triangles = self.triangles.reshape(-1, 2) + vertices, inverse_indices = np.unique( + flat_triangles, axis=0, return_inverse=True + ) + indices = inverse_indices.reshape(-1, 3) + return vertices, indices + + def with_vertices(self, vertices: np.ndarray) -> ArrayTriangles: + """ + Create a new set of triangles with the vertices replaced. + + Parameters + ---------- + vertices + The new vertices to use. + + Returns + ------- + The new set of triangles with the new vertices. + """ + return ArrayTriangles( + indices=self.indices, + vertices=vertices, + ) + + def for_indexes(self, indexes: np.ndarray) -> "CoordinateArrayTriangles": + """ + Create a new CoordinateArrayTriangles containing triangles corresponding to the given indexes + + Parameters + ---------- + indexes + The indexes of the triangles to include in the new CoordinateArrayTriangles. + + Returns + ------- + The new CoordinateArrayTriangles instance. + """ + return CoordinateArrayTriangles( + coordinates=self.coordinates[indexes], + side_length=self.side_length, + y_offset=self.y_offset, + x_offset=self.x_offset, + flipped=self.flipped, + ) diff --git a/autoarray/structures/triangles/jax_array.py b/autoarray/structures/triangles/jax_array.py index 9142330ff..d8200a940 100644 --- a/autoarray/structures/triangles/jax_array.py +++ b/autoarray/structures/triangles/jax_array.py @@ -1,288 +1,288 @@ -from jax import numpy as np -from jax.tree_util import register_pytree_node_class - -from autoarray.structures.triangles.abstract import AbstractTriangles -from autoarray.structures.triangles.shape import Shape - -MAX_CONTAINING_SIZE = 10 - - -@register_pytree_node_class -class ArrayTriangles(AbstractTriangles): - def __init__( - self, - indices, - vertices, - max_containing_size=MAX_CONTAINING_SIZE, - ): - super().__init__(indices, vertices) - self.max_containing_size = max_containing_size - - @property - def numpy(self): - return np - - @property - def triangles(self) -> np.ndarray: - """ - The triangles as a 3x2 array of vertices. - """ - - invalid_mask = np.any(self.indices == -1, axis=1) - nan_array = np.full( - (self.indices.shape[0], 3, 2), - np.nan, - dtype=np.float32, - ) - safe_indices = np.where(self.indices == -1, 0, self.indices) - triangle_vertices = self.vertices[safe_indices] - return np.where(invalid_mask[:, None, None], nan_array, triangle_vertices) - - @property - def means(self) -> np.ndarray: - """ - The mean of each triangle. - """ - return np.mean(self.triangles, axis=1) - - def containing_indices(self, shape: Shape) -> np.ndarray: - """ - Find the triangles that insect with a given shape. - - Parameters - ---------- - shape - The shape - - Returns - ------- - The triangles that intersect the shape. - """ - inside = shape.mask(self.triangles) - - return np.where( - inside, - size=self.max_containing_size, - fill_value=-1, - )[0] - - def for_indexes(self, indexes: np.ndarray) -> "ArrayTriangles": - """ - Create a new ArrayTriangles containing indices and vertices corresponding to the given indexes - but without duplicate vertices. - - Parameters - ---------- - indexes - The indexes of the triangles to include in the new ArrayTriangles. - - Returns - ------- - The new ArrayTriangles instance. - """ - selected_indices = select_and_handle_invalid( - data=self.indices, - indices=indexes, - invalid_value=-1, - invalid_replacement=np.array([-1, -1, -1], dtype=np.int32), - ) - - flat_indices = selected_indices.flatten() - - selected_vertices = select_and_handle_invalid( - data=self.vertices, - indices=flat_indices, - invalid_value=-1, - invalid_replacement=np.array([np.nan, np.nan], dtype=np.float32), - ) - - unique_vertices, inv_indices = np.unique( - selected_vertices, - axis=0, - return_inverse=True, - equal_nan=True, - size=selected_indices.shape[0] * 3, - fill_value=np.nan, - ) - - nan_mask = np.isnan(unique_vertices).any(axis=1) - inv_indices = np.where(nan_mask[inv_indices], -1, inv_indices) - - new_indices = inv_indices.reshape(selected_indices.shape) - - new_indices_sorted = np.sort(new_indices, axis=1) - - unique_triangles_indices = np.unique( - new_indices_sorted, - axis=0, - size=new_indices_sorted.shape[0], - fill_value=-1, - ) - - return ArrayTriangles( - indices=unique_triangles_indices, - vertices=unique_vertices, - max_containing_size=self.max_containing_size, - ) - - def up_sample(self) -> "ArrayTriangles": - """ - Up-sample the triangles by adding a new vertex at the midpoint of each edge. - - This means each triangle becomes four smaller triangles. - """ - new_indices, unique_vertices = remove_duplicates(self._up_sample_triangle()) - - return ArrayTriangles( - indices=new_indices, - vertices=unique_vertices, - max_containing_size=self.max_containing_size, - ) - - def neighborhood(self) -> "ArrayTriangles": - """ - Create a new set of triangles that are the neighborhood of the current triangles. - - Includes the current triangles and the triangles that share an edge with the current triangles. - """ - new_indices, unique_vertices = remove_duplicates(self._neighborhood_triangles()) - - return ArrayTriangles( - indices=new_indices, - vertices=unique_vertices, - max_containing_size=self.max_containing_size, - ) - - def with_vertices(self, vertices: np.ndarray) -> "ArrayTriangles": - """ - Create a new set of triangles with the vertices replaced. - - Parameters - ---------- - vertices - The new vertices to use. - - Returns - ------- - The new set of triangles with the new vertices. - """ - return ArrayTriangles( - indices=self.indices, - vertices=vertices, - max_containing_size=self.max_containing_size, - ) - - def __iter__(self): - return iter(self.triangles) - - def tree_flatten(self): - """ - Flatten this model as a PyTree. - """ - return ( - self.indices, - self.vertices, - ), (self.max_containing_size,) - - @classmethod - def tree_unflatten(cls, aux_data, children): - """ - Unflatten a PyTree into a model. - """ - return cls( - indices=children[0], - vertices=children[1], - max_containing_size=aux_data[0], - ) - - @classmethod - def for_limits_and_scale( - cls, - y_min: float, - y_max: float, - x_min: float, - x_max: float, - scale: float, - max_containing_size=MAX_CONTAINING_SIZE, - ) -> "AbstractTriangles": - triangles = super().for_limits_and_scale( - y_min, - y_max, - x_min, - x_max, - scale, - ) - return cls( - indices=np.array(triangles.indices), - vertices=np.array(triangles.vertices), - max_containing_size=max_containing_size, - ) - - -def select_and_handle_invalid( - data: np.ndarray, - indices: np.ndarray, - invalid_value, - invalid_replacement, -): - """ - Select data based on indices, handling invalid indices by replacing them with a specified value. - - Parameters - ---------- - data - The array from which to select data. - indices - The indices used to select data from the array. - invalid_value - The value representing invalid indices. - invalid_replacement - The value to use for invalid entries in the result. - - Returns - ------- - An array with selected data, where invalid indices are replaced with `invalid_replacement`. - """ - invalid_mask = indices == invalid_value - safe_indices = np.where(invalid_mask, 0, indices) - selected_data = data[safe_indices] - selected_data = np.where( - invalid_mask[..., None], - invalid_replacement, - selected_data, - ) - - return selected_data - - -def remove_duplicates(new_triangles): - unique_vertices, inverse_indices = np.unique( - new_triangles.reshape(-1, 2), - axis=0, - return_inverse=True, - size=2 * new_triangles.shape[0], - fill_value=np.nan, - equal_nan=True, - ) - - inverse_indices_flat = inverse_indices.reshape(-1) - selected_vertices = unique_vertices[inverse_indices_flat] - mask = np.any(np.isnan(selected_vertices), axis=1) - inverse_indices_flat = np.where(mask, -1, inverse_indices_flat) - inverse_indices = inverse_indices_flat.reshape(inverse_indices.shape) - - new_indices = inverse_indices.reshape(-1, 3) - - new_indices_sorted = np.sort(new_indices, axis=1) - - unique_triangles_indices = np.unique( - new_indices_sorted, - axis=0, - size=new_indices_sorted.shape[0], - fill_value=np.array( - [-1, -1, -1], - dtype=np.int32, - ), - ) - - return unique_triangles_indices, unique_vertices +from jax import numpy as np +from jax.tree_util import register_pytree_node_class + +from autoarray.structures.triangles.abstract import AbstractTriangles +from autoarray.structures.triangles.shape import Shape + +MAX_CONTAINING_SIZE = 10 + + +@register_pytree_node_class +class ArrayTriangles(AbstractTriangles): + def __init__( + self, + indices, + vertices, + max_containing_size=MAX_CONTAINING_SIZE, + ): + super().__init__(indices, vertices) + self.max_containing_size = max_containing_size + + @property + def numpy(self): + return np + + @property + def triangles(self) -> np.ndarray: + """ + The triangles as a 3x2 array of vertices. + """ + + invalid_mask = np.any(self.indices == -1, axis=1) + nan_array = np.full( + (self.indices.shape[0], 3, 2), + np.nan, + dtype=np.float32, + ) + safe_indices = np.where(self.indices == -1, 0, self.indices) + triangle_vertices = self.vertices[safe_indices] + return np.where(invalid_mask[:, None, None], nan_array, triangle_vertices) + + @property + def means(self) -> np.ndarray: + """ + The mean of each triangle. + """ + return np.mean(self.triangles, axis=1) + + def containing_indices(self, shape: Shape) -> np.ndarray: + """ + Find the triangles that insect with a given shape. + + Parameters + ---------- + shape + The shape + + Returns + ------- + The triangles that intersect the shape. + """ + inside = shape.mask(self.triangles) + + return np.where( + inside, + size=self.max_containing_size, + fill_value=-1, + )[0] + + def for_indexes(self, indexes: np.ndarray) -> "ArrayTriangles": + """ + Create a new ArrayTriangles containing indices and vertices corresponding to the given indexes + but without duplicate vertices. + + Parameters + ---------- + indexes + The indexes of the triangles to include in the new ArrayTriangles. + + Returns + ------- + The new ArrayTriangles instance. + """ + selected_indices = select_and_handle_invalid( + data=self.indices, + indices=indexes, + invalid_value=-1, + invalid_replacement=np.array([-1, -1, -1], dtype=np.int32), + ) + + flat_indices = selected_indices.flatten() + + selected_vertices = select_and_handle_invalid( + data=self.vertices, + indices=flat_indices, + invalid_value=-1, + invalid_replacement=np.array([np.nan, np.nan], dtype=np.float32), + ) + + unique_vertices, inv_indices = np.unique( + selected_vertices, + axis=0, + return_inverse=True, + equal_nan=True, + size=selected_indices.shape[0] * 3, + fill_value=np.nan, + ) + + nan_mask = np.isnan(unique_vertices).any(axis=1) + inv_indices = np.where(nan_mask[inv_indices], -1, inv_indices) + + new_indices = inv_indices.reshape(selected_indices.shape) + + new_indices_sorted = np.sort(new_indices, axis=1) + + unique_triangles_indices = np.unique( + new_indices_sorted, + axis=0, + size=new_indices_sorted.shape[0], + fill_value=-1, + ) + + return ArrayTriangles( + indices=unique_triangles_indices, + vertices=unique_vertices, + max_containing_size=self.max_containing_size, + ) + + def up_sample(self) -> "ArrayTriangles": + """ + Up-sample the triangles by adding a new vertex at the midpoint of each edge. + + This means each triangle becomes four smaller triangles. + """ + new_indices, unique_vertices = remove_duplicates(self._up_sample_triangle()) + + return ArrayTriangles( + indices=new_indices, + vertices=unique_vertices, + max_containing_size=self.max_containing_size, + ) + + def neighborhood(self) -> "ArrayTriangles": + """ + Create a new set of triangles that are the neighborhood of the current triangles. + + Includes the current triangles and the triangles that share an edge with the current triangles. + """ + new_indices, unique_vertices = remove_duplicates(self._neighborhood_triangles()) + + return ArrayTriangles( + indices=new_indices, + vertices=unique_vertices, + max_containing_size=self.max_containing_size, + ) + + def with_vertices(self, vertices: np.ndarray) -> "ArrayTriangles": + """ + Create a new set of triangles with the vertices replaced. + + Parameters + ---------- + vertices + The new vertices to use. + + Returns + ------- + The new set of triangles with the new vertices. + """ + return ArrayTriangles( + indices=self.indices, + vertices=vertices, + max_containing_size=self.max_containing_size, + ) + + def __iter__(self): + return iter(self.triangles) + + def tree_flatten(self): + """ + Flatten this model as a PyTree. + """ + return ( + self.indices, + self.vertices, + ), (self.max_containing_size,) + + @classmethod + def tree_unflatten(cls, aux_data, children): + """ + Unflatten a PyTree into a model. + """ + return cls( + indices=children[0], + vertices=children[1], + max_containing_size=aux_data[0], + ) + + @classmethod + def for_limits_and_scale( + cls, + y_min: float, + y_max: float, + x_min: float, + x_max: float, + scale: float, + max_containing_size=MAX_CONTAINING_SIZE, + ) -> "AbstractTriangles": + triangles = super().for_limits_and_scale( + y_min, + y_max, + x_min, + x_max, + scale, + ) + return cls( + indices=np.array(triangles.indices), + vertices=np.array(triangles.vertices), + max_containing_size=max_containing_size, + ) + + +def select_and_handle_invalid( + data: np.ndarray, + indices: np.ndarray, + invalid_value, + invalid_replacement, +): + """ + Select data based on indices, handling invalid indices by replacing them with a specified value. + + Parameters + ---------- + data + The array from which to select data. + indices + The indices used to select data from the array. + invalid_value + The value representing invalid indices. + invalid_replacement + The value to use for invalid entries in the result. + + Returns + ------- + An array with selected data, where invalid indices are replaced with `invalid_replacement`. + """ + invalid_mask = indices == invalid_value + safe_indices = np.where(invalid_mask, 0, indices) + selected_data = data[safe_indices] + selected_data = np.where( + invalid_mask[..., None], + invalid_replacement, + selected_data, + ) + + return selected_data + + +def remove_duplicates(new_triangles): + unique_vertices, inverse_indices = np.unique( + new_triangles.reshape(-1, 2), + axis=0, + return_inverse=True, + size=2 * new_triangles.shape[0], + fill_value=np.nan, + equal_nan=True, + ) + + inverse_indices_flat = inverse_indices.reshape(-1) + selected_vertices = unique_vertices[inverse_indices_flat] + mask = np.any(np.isnan(selected_vertices), axis=1) + inverse_indices_flat = np.where(mask, -1, inverse_indices_flat) + inverse_indices = inverse_indices_flat.reshape(inverse_indices.shape) + + new_indices = inverse_indices.reshape(-1, 3) + + new_indices_sorted = np.sort(new_indices, axis=1) + + unique_triangles_indices = np.unique( + new_indices_sorted, + axis=0, + size=new_indices_sorted.shape[0], + fill_value=np.array( + [-1, -1, -1], + dtype=np.int32, + ), + ) + + return unique_triangles_indices, unique_vertices diff --git a/autoarray/structures/triangles/jax_coordinate_array.py b/autoarray/structures/triangles/jax_coordinate_array.py index 30aec4eb4..39e630f0e 100644 --- a/autoarray/structures/triangles/jax_coordinate_array.py +++ b/autoarray/structures/triangles/jax_coordinate_array.py @@ -1,195 +1,195 @@ -from jax import numpy as np - -from autoarray.structures.triangles.abstract import HEIGHT_FACTOR -from autoarray.structures.triangles.abstract_coordinate_array import ( - AbstractCoordinateArray, -) -from autoarray.structures.triangles.jax_array import ArrayTriangles -from autoarray.numpy_wrapper import register_pytree_node_class -from autoconf import cached_property - - -@register_pytree_node_class -class CoordinateArrayTriangles(AbstractCoordinateArray): - def tree_flatten(self): - return ( - self.coordinates, - self.side_length, - self.x_offset, - self.y_offset, - ), (self.flipped,) - - @classmethod - def tree_unflatten(cls, aux_data, children): - """ - Create a prior from a flattened PyTree - - Parameters - ---------- - aux_data - Auxiliary information that remains unchanged including - the keys of the dict - children - Child objects subject to change - - Returns - ------- - An instance of this class - """ - return cls(*children, flipped=aux_data[0]) - - @property - def centres(self) -> np.ndarray: - """ - The centres of the triangles. - """ - return self.scaling_factors * self.coordinates + np.array( - [self.x_offset, self.y_offset] - ) - - @cached_property - def flip_mask(self) -> np.ndarray: - """ - A mask for the triangles that are flipped. - - Every other triangle is flipped so that they tessellate. - """ - mask = (self.coordinates[:, 0] + self.coordinates[:, 1]) % 2 != 0 - if self.flipped: - mask = ~mask - return mask - - @cached_property - def flip_array(self) -> np.ndarray: - """ - An array of 1s and -1s to flip the triangles. - """ - array = np.where(self.flip_mask, -1.0, 1.0) - return array[:, None] - - def __iter__(self): - return iter(self.triangles) - - def up_sample(self) -> "CoordinateArrayTriangles": - """ - Up-sample the triangles by adding a new vertex at the midpoint of each edge. - """ - coordinates = self.coordinates - flip_mask = self.flip_mask - - coordinates = 2 * coordinates - - n = coordinates.shape[0] - - shift0 = np.zeros((n, 2)) - shift3 = np.tile(np.array([0, 1]), (n, 1)) - shift1 = np.stack([np.ones(n), np.where(flip_mask, 1.0, 0.0)], axis=1) - shift2 = np.stack([-np.ones(n), np.where(flip_mask, 1.0, 0.0)], axis=1) - shifts = np.stack([shift0, shift1, shift2, shift3], axis=1) - - coordinates_expanded = coordinates[:, None, :] - new_coordinates = coordinates_expanded + shifts - new_coordinates = new_coordinates.reshape(-1, 2) - - return CoordinateArrayTriangles( - coordinates=new_coordinates, - side_length=self.side_length / 2, - flipped=True, - y_offset=self.y_offset + -0.25 * HEIGHT_FACTOR * self.side_length, - x_offset=self.x_offset, - ) - - def neighborhood(self) -> "CoordinateArrayTriangles": - """ - Create a new set of triangles that are the neighborhood of the current triangles. - - Ensures that the new triangles are unique. - """ - coordinates = self.coordinates - flip_mask = self.flip_mask - - shift0 = np.zeros((coordinates.shape[0], 2)) - shift1 = np.tile(np.array([1, 0]), (coordinates.shape[0], 1)) - shift2 = np.tile(np.array([-1, 0]), (coordinates.shape[0], 1)) - - shift3 = np.where( - flip_mask[:, None], - np.tile(np.array([0, 1]), (coordinates.shape[0], 1)), - np.tile(np.array([0, -1]), (coordinates.shape[0], 1)), - ) - - shifts = np.stack([shift0, shift1, shift2, shift3], axis=1) - - coordinates_expanded = coordinates[:, None, :] - new_coordinates = coordinates_expanded + shifts - - new_coordinates = new_coordinates.reshape(-1, 2) - - return CoordinateArrayTriangles( - coordinates=np.unique( - new_coordinates, - axis=0, - size=4 * self.coordinates.shape[0], - fill_value=np.nan, - ), - side_length=self.side_length, - flipped=self.flipped, - y_offset=self.y_offset, - x_offset=self.x_offset, - ) - - @cached_property - def _vertices_and_indices(self): - flat_triangles = self.triangles.reshape(-1, 2) - vertices, inverse_indices = np.unique( - flat_triangles, - axis=0, - return_inverse=True, - size=3 * self.coordinates.shape[0], - ) - indices = inverse_indices.reshape(-1, 3) - return vertices, indices - - def with_vertices(self, vertices: np.ndarray) -> ArrayTriangles: - """ - Create a new set of triangles with the vertices replaced. - - Parameters - ---------- - vertices - The new vertices to use. - - Returns - ------- - The new set of triangles with the new vertices. - """ - return ArrayTriangles( - indices=self.indices, - vertices=vertices, - ) - - def for_indexes(self, indexes: np.ndarray) -> "CoordinateArrayTriangles": - """ - Create a new CoordinateArrayTriangles containing triangles corresponding to the given indexes - - Parameters - ---------- - indexes - The indexes of the triangles to include in the new CoordinateArrayTriangles. - - Returns - ------- - The new CoordinateArrayTriangles instance. - """ - mask = indexes == -1 - safe_indexes = np.where(mask, 0, indexes) - coordinates = self.coordinates[safe_indexes] - coordinates = np.where(mask[:, None], np.nan, coordinates) - - return CoordinateArrayTriangles( - coordinates=coordinates, - side_length=self.side_length, - y_offset=self.y_offset, - x_offset=self.x_offset, - flipped=self.flipped, - ) +from jax import numpy as np + +from autoarray.structures.triangles.abstract import HEIGHT_FACTOR +from autoarray.structures.triangles.abstract_coordinate_array import ( + AbstractCoordinateArray, +) +from autoarray.structures.triangles.jax_array import ArrayTriangles +from autoarray.numpy_wrapper import register_pytree_node_class +from autoconf import cached_property + + +@register_pytree_node_class +class CoordinateArrayTriangles(AbstractCoordinateArray): + def tree_flatten(self): + return ( + self.coordinates, + self.side_length, + self.x_offset, + self.y_offset, + ), (self.flipped,) + + @classmethod + def tree_unflatten(cls, aux_data, children): + """ + Create a prior from a flattened PyTree + + Parameters + ---------- + aux_data + Auxiliary information that remains unchanged including + the keys of the dict + children + Child objects subject to change + + Returns + ------- + An instance of this class + """ + return cls(*children, flipped=aux_data[0]) + + @property + def centres(self) -> np.ndarray: + """ + The centres of the triangles. + """ + return self.scaling_factors * self.coordinates + np.array( + [self.x_offset, self.y_offset] + ) + + @cached_property + def flip_mask(self) -> np.ndarray: + """ + A mask for the triangles that are flipped. + + Every other triangle is flipped so that they tessellate. + """ + mask = (self.coordinates[:, 0] + self.coordinates[:, 1]) % 2 != 0 + if self.flipped: + mask = ~mask + return mask + + @cached_property + def flip_array(self) -> np.ndarray: + """ + An array of 1s and -1s to flip the triangles. + """ + array = np.where(self.flip_mask, -1.0, 1.0) + return array[:, None] + + def __iter__(self): + return iter(self.triangles) + + def up_sample(self) -> "CoordinateArrayTriangles": + """ + Up-sample the triangles by adding a new vertex at the midpoint of each edge. + """ + coordinates = self.coordinates + flip_mask = self.flip_mask + + coordinates = 2 * coordinates + + n = coordinates.shape[0] + + shift0 = np.zeros((n, 2)) + shift3 = np.tile(np.array([0, 1]), (n, 1)) + shift1 = np.stack([np.ones(n), np.where(flip_mask, 1.0, 0.0)], axis=1) + shift2 = np.stack([-np.ones(n), np.where(flip_mask, 1.0, 0.0)], axis=1) + shifts = np.stack([shift0, shift1, shift2, shift3], axis=1) + + coordinates_expanded = coordinates[:, None, :] + new_coordinates = coordinates_expanded + shifts + new_coordinates = new_coordinates.reshape(-1, 2) + + return CoordinateArrayTriangles( + coordinates=new_coordinates, + side_length=self.side_length / 2, + flipped=True, + y_offset=self.y_offset + -0.25 * HEIGHT_FACTOR * self.side_length, + x_offset=self.x_offset, + ) + + def neighborhood(self) -> "CoordinateArrayTriangles": + """ + Create a new set of triangles that are the neighborhood of the current triangles. + + Ensures that the new triangles are unique. + """ + coordinates = self.coordinates + flip_mask = self.flip_mask + + shift0 = np.zeros((coordinates.shape[0], 2)) + shift1 = np.tile(np.array([1, 0]), (coordinates.shape[0], 1)) + shift2 = np.tile(np.array([-1, 0]), (coordinates.shape[0], 1)) + + shift3 = np.where( + flip_mask[:, None], + np.tile(np.array([0, 1]), (coordinates.shape[0], 1)), + np.tile(np.array([0, -1]), (coordinates.shape[0], 1)), + ) + + shifts = np.stack([shift0, shift1, shift2, shift3], axis=1) + + coordinates_expanded = coordinates[:, None, :] + new_coordinates = coordinates_expanded + shifts + + new_coordinates = new_coordinates.reshape(-1, 2) + + return CoordinateArrayTriangles( + coordinates=np.unique( + new_coordinates, + axis=0, + size=4 * self.coordinates.shape[0], + fill_value=np.nan, + ), + side_length=self.side_length, + flipped=self.flipped, + y_offset=self.y_offset, + x_offset=self.x_offset, + ) + + @cached_property + def _vertices_and_indices(self): + flat_triangles = self.triangles.reshape(-1, 2) + vertices, inverse_indices = np.unique( + flat_triangles, + axis=0, + return_inverse=True, + size=3 * self.coordinates.shape[0], + ) + indices = inverse_indices.reshape(-1, 3) + return vertices, indices + + def with_vertices(self, vertices: np.ndarray) -> ArrayTriangles: + """ + Create a new set of triangles with the vertices replaced. + + Parameters + ---------- + vertices + The new vertices to use. + + Returns + ------- + The new set of triangles with the new vertices. + """ + return ArrayTriangles( + indices=self.indices, + vertices=vertices, + ) + + def for_indexes(self, indexes: np.ndarray) -> "CoordinateArrayTriangles": + """ + Create a new CoordinateArrayTriangles containing triangles corresponding to the given indexes + + Parameters + ---------- + indexes + The indexes of the triangles to include in the new CoordinateArrayTriangles. + + Returns + ------- + The new CoordinateArrayTriangles instance. + """ + mask = indexes == -1 + safe_indexes = np.where(mask, 0, indexes) + coordinates = self.coordinates[safe_indexes] + coordinates = np.where(mask[:, None], np.nan, coordinates) + + return CoordinateArrayTriangles( + coordinates=coordinates, + side_length=self.side_length, + y_offset=self.y_offset, + x_offset=self.x_offset, + flipped=self.flipped, + ) diff --git a/autoarray/structures/triangles/shape.py b/autoarray/structures/triangles/shape.py index 273e163be..c1e49d49b 100644 --- a/autoarray/structures/triangles/shape.py +++ b/autoarray/structures/triangles/shape.py @@ -1,392 +1,392 @@ -from abc import ABC, abstractmethod -from typing import List, Tuple - -import numpy as np - -from autoarray.numpy_wrapper import register_pytree_node_class - - -class Shape(ABC): - """ - A shape in the source plane for which we identify corresponding image plane - pixels using up-sampling. - """ - - @property - @abstractmethod - def area(self) -> float: - """ - The area of the shape. - """ - - @abstractmethod - def mask(self, triangles: np.ndarray) -> np.ndarray: - """ - Determine which triangles contain the shape. - - Parameters - ---------- - triangles - The vertices of the triangles. - - Returns - ------- - A boolean array indicating which triangles contain the shape. - """ - - -@register_pytree_node_class -class Point(Shape): - def __init__(self, x: float, y: float): - """ - A point in the source plane for which we want to identify pixels in the - image plane that trace to it. - - Parameters - ---------- - x - y - The coordinates of the point. - """ - self.x = x - self.y = y - - @property - def area(self) -> float: - """ - The area of the point. - """ - return 0.0 - - def mask(self, triangles: np.ndarray) -> np.ndarray: - """ - Determine which triangles contain the point. - - Parameters - ---------- - triangles - The vertices of the triangles - - Returns - ------- - A boolean array indicating which triangles contain the point. - """ - y1, x1 = triangles[:, 0, 1], triangles[:, 0, 0] - y2, x2 = triangles[:, 1, 1], triangles[:, 1, 0] - y3, x3 = triangles[:, 2, 1], triangles[:, 2, 0] - - denominator = (y2 - y3) * (x1 - x3) + (x3 - x2) * (y1 - y3) - - a = ((y2 - y3) * (self.x - x3) + (x3 - x2) * (self.y - y3)) / denominator - b = ((y3 - y1) * (self.x - x3) + (x1 - x3) * (self.y - y3)) / denominator - c = 1 - a - b - - return (0 <= a) & (a <= 1) & (0 <= b) & (b <= 1) & (0 <= c) & (c <= 1) - - def tree_flatten(self): - """ - Flatten this model as a PyTree. - """ - return (self.x, self.y), None - - @classmethod - def tree_unflatten(cls, aux_data, children): - """ - Unflatten a PyTree into a model. - """ - return cls( - x=children[0], - y=children[1], - ) - - -def centroid(triangles: np.ndarray): - y1, x1 = triangles[:, 0, 1], triangles[:, 0, 0] - y2, x2 = triangles[:, 1, 1], triangles[:, 1, 0] - y3, x3 = triangles[:, 2, 1], triangles[:, 2, 0] - - return (x1 + x2 + x3) / 3, (y1 + y2 + y3) / 3 - - -@register_pytree_node_class -class Circle(Point): - def __init__( - self, - x: float, - y: float, - radius: float, - ): - """ - A circle in the source plane for which we want to identify pixels in the - image plane that trace to it. - - Parameters - ---------- - x - y - The coordinates of the center of the circle. - radius - The radius of the circle. - """ - super().__init__(x, y) - self.radius = radius - - @property - def area(self) -> float: - """ - The area of the circle. - """ - return np.pi * self.radius**2 - - def mask(self, triangles: np.ndarray) -> np.ndarray: - """ - Determine which triangles intersect the circle. - - This is approximated by checking if the centroid of the triangle is within - the circle or if the triangle contains the centroid of the circle. - - Parameters - ---------- - triangles - The vertices of the triangles. - - Returns - ------- - A boolean array indicating which triangles intersect the circle. - """ - centroid_x, centroid_y = centroid(triangles) - - a = centroid_x - self.x - b = centroid_y - self.y - - distance_squared = a * a + b * b - - radius_2 = self.radius * self.radius - - return (distance_squared <= radius_2) | super().mask(triangles) - - def tree_flatten(self): - """ - Flatten this model as a PyTree. - """ - return (self.x, self.y, self.radius), None - - @classmethod - def tree_unflatten(cls, aux_data, children): - """ - Unflatten a PyTree into a model. - """ - return cls( - x=children[0], - y=children[1], - radius=children[2], - ) - - -class Triangle(Point): - def __init__( - self, - a: Tuple[float, float], - b: Tuple[float, float], - c: Tuple[float, float], - ): - """ - A triangle in the source plane for which we want to identify pixels in the - image plane that trace to it. - - Parameters - ---------- - a, b, c - The vertices of the triangle. - """ - xs, ys = zip(a, b, c) - super().__init__( - x=np.mean(xs), - y=np.mean(ys), - ) - self.a = a - self.b = b - self.c = c - - def tree_flatten(self): - """ - Flatten this model as a PyTree. - """ - return ( - self.a, - self.b, - self.c, - ), None - - @classmethod - def tree_unflatten(cls, aux_data, children): - """ - Unflatten a PyTree into a model. - """ - return cls( - *children, - ) - - def mask(self, triangles: np.ndarray) -> np.ndarray: - return self.triangle_contains_mask(triangles) | super().mask(triangles) - - def triangle_contains_mask(self, triangles: np.ndarray) -> np.ndarray: - y1, x1 = self.a - y2, x2 = self.b - y3, x3 = self.c - - denominator = (y2 - y3) * (x1 - x3) + (x3 - x2) * (y1 - y3) - - centroid_x, centroid_y = centroid(triangles) - - a = ( - (y2 - y3) * (centroid_x - x3) + (x3 - x2) * (centroid_y - y3) - ) / denominator - b = ( - (y3 - y1) * (centroid_x - x3) + (x1 - x3) * (centroid_y - y3) - ) / denominator - c = 1 - a - b - - return (0 <= a) & (a <= 1) & (0 <= b) & (b <= 1) & (0 <= c) & (c <= 1) - - @property - def area(self) -> float: - """ - The area of the triangle. - """ - return 0.5 * abs( - self.a[0] * (self.b[1] - self.c[1]) - + self.b[0] * (self.c[1] - self.a[1]) - + self.c[0] * (self.a[1] - self.b[1]) - ) - - -class Polygon(Point): - def __init__( - self, - vertices: List[Tuple[float, float]], - ): - """ - A polygon in the source plane for which we want to identify pixels in the - image plane that trace to it. - - Parameters - ---------- - vertices - The vertices of the polygon. - """ - self.vertices = vertices - - if len(vertices) < 3: - raise ValueError("A polygon must have at least 3 vertices.") - - x = np.mean([vertex[0] for vertex in vertices]) - y = np.mean([vertex[1] for vertex in vertices]) - super().__init__(x, y) - - first = vertices[0] - - self.triangles = [ - Triangle( - first, - second, - third, - ) - for second, third in zip(vertices[1:], vertices[2:]) - ] - - @property - def area(self) -> float: - """ - The area of the polygon. - """ - return sum(triangle.area for triangle in self.triangles) - - def tree_flatten(self): - """ - Flatten this model as a PyTree. - """ - return (self.vertices,), None - - @classmethod - def tree_unflatten(cls, aux_data, children): - """ - Unflatten a PyTree into a model. - """ - return cls( - vertices=children[0], - ) - - def mask(self, triangles: np.ndarray) -> np.ndarray: - """ - Determine which triangles intersect the Voronoi cell. - - Parameters - ---------- - triangles - The vertices of the triangles - - Returns - ------- - A boolean array indicating which triangles intersect the Voronoi cell. - """ - return np.any( - [triangle.mask(triangles) for triangle in self.triangles], - axis=0, - ) | super().mask(triangles) - - -class Square(Point): - def __init__(self, top, bottom, left, right): - """ - A square in the source plane for which we want to identify pixels in the - image plane that trace to it. - - Parameters - ---------- - top - bottom - left - right - The coordinates of the top, bottom, left, and right edges of the square. - Coordinates are from the top-left corner of the image. - """ - x = (left + right) / 2 - y = (top + bottom) / 2 - super().__init__(x, y) - self.top = top - self.bottom = bottom - self.left = left - self.right = right - - @property - def area(self) -> float: - """ - The area of the square. - """ - return (self.right - self.left) * (self.bottom - self.top) - - def mask(self, triangles: np.ndarray) -> np.ndarray: - """ - Determine which triangles intersect the square. - - This is approximated by checking if the centroid of the triangle is within - the square or if the triangle contains the centroid of the square. - - Parameters - ---------- - triangles - The vertices of the triangles. - - Returns - ------- - A boolean array indicating which triangles intersect the square. - """ - centroid_x, centroid_y = centroid(triangles) - - return ( - (self.left <= centroid_x) - & (centroid_x <= self.right) - & (self.bottom >= centroid_y) - & (centroid_y >= self.top) - ) | super().mask(triangles) +from abc import ABC, abstractmethod +from typing import List, Tuple + +import numpy as np + +from autoarray.numpy_wrapper import register_pytree_node_class + + +class Shape(ABC): + """ + A shape in the source plane for which we identify corresponding image plane + pixels using up-sampling. + """ + + @property + @abstractmethod + def area(self) -> float: + """ + The area of the shape. + """ + + @abstractmethod + def mask(self, triangles: np.ndarray) -> np.ndarray: + """ + Determine which triangles contain the shape. + + Parameters + ---------- + triangles + The vertices of the triangles. + + Returns + ------- + A boolean array indicating which triangles contain the shape. + """ + + +@register_pytree_node_class +class Point(Shape): + def __init__(self, x: float, y: float): + """ + A point in the source plane for which we want to identify pixels in the + image plane that trace to it. + + Parameters + ---------- + x + y + The coordinates of the point. + """ + self.x = x + self.y = y + + @property + def area(self) -> float: + """ + The area of the point. + """ + return 0.0 + + def mask(self, triangles: np.ndarray) -> np.ndarray: + """ + Determine which triangles contain the point. + + Parameters + ---------- + triangles + The vertices of the triangles + + Returns + ------- + A boolean array indicating which triangles contain the point. + """ + y1, x1 = triangles[:, 0, 1], triangles[:, 0, 0] + y2, x2 = triangles[:, 1, 1], triangles[:, 1, 0] + y3, x3 = triangles[:, 2, 1], triangles[:, 2, 0] + + denominator = (y2 - y3) * (x1 - x3) + (x3 - x2) * (y1 - y3) + + a = ((y2 - y3) * (self.x - x3) + (x3 - x2) * (self.y - y3)) / denominator + b = ((y3 - y1) * (self.x - x3) + (x1 - x3) * (self.y - y3)) / denominator + c = 1 - a - b + + return (0 <= a) & (a <= 1) & (0 <= b) & (b <= 1) & (0 <= c) & (c <= 1) + + def tree_flatten(self): + """ + Flatten this model as a PyTree. + """ + return (self.x, self.y), None + + @classmethod + def tree_unflatten(cls, aux_data, children): + """ + Unflatten a PyTree into a model. + """ + return cls( + x=children[0], + y=children[1], + ) + + +def centroid(triangles: np.ndarray): + y1, x1 = triangles[:, 0, 1], triangles[:, 0, 0] + y2, x2 = triangles[:, 1, 1], triangles[:, 1, 0] + y3, x3 = triangles[:, 2, 1], triangles[:, 2, 0] + + return (x1 + x2 + x3) / 3, (y1 + y2 + y3) / 3 + + +@register_pytree_node_class +class Circle(Point): + def __init__( + self, + x: float, + y: float, + radius: float, + ): + """ + A circle in the source plane for which we want to identify pixels in the + image plane that trace to it. + + Parameters + ---------- + x + y + The coordinates of the center of the circle. + radius + The radius of the circle. + """ + super().__init__(x, y) + self.radius = radius + + @property + def area(self) -> float: + """ + The area of the circle. + """ + return np.pi * self.radius**2 + + def mask(self, triangles: np.ndarray) -> np.ndarray: + """ + Determine which triangles intersect the circle. + + This is approximated by checking if the centroid of the triangle is within + the circle or if the triangle contains the centroid of the circle. + + Parameters + ---------- + triangles + The vertices of the triangles. + + Returns + ------- + A boolean array indicating which triangles intersect the circle. + """ + centroid_x, centroid_y = centroid(triangles) + + a = centroid_x - self.x + b = centroid_y - self.y + + distance_squared = a * a + b * b + + radius_2 = self.radius * self.radius + + return (distance_squared <= radius_2) | super().mask(triangles) + + def tree_flatten(self): + """ + Flatten this model as a PyTree. + """ + return (self.x, self.y, self.radius), None + + @classmethod + def tree_unflatten(cls, aux_data, children): + """ + Unflatten a PyTree into a model. + """ + return cls( + x=children[0], + y=children[1], + radius=children[2], + ) + + +class Triangle(Point): + def __init__( + self, + a: Tuple[float, float], + b: Tuple[float, float], + c: Tuple[float, float], + ): + """ + A triangle in the source plane for which we want to identify pixels in the + image plane that trace to it. + + Parameters + ---------- + a, b, c + The vertices of the triangle. + """ + xs, ys = zip(a, b, c) + super().__init__( + x=np.mean(xs), + y=np.mean(ys), + ) + self.a = a + self.b = b + self.c = c + + def tree_flatten(self): + """ + Flatten this model as a PyTree. + """ + return ( + self.a, + self.b, + self.c, + ), None + + @classmethod + def tree_unflatten(cls, aux_data, children): + """ + Unflatten a PyTree into a model. + """ + return cls( + *children, + ) + + def mask(self, triangles: np.ndarray) -> np.ndarray: + return self.triangle_contains_mask(triangles) | super().mask(triangles) + + def triangle_contains_mask(self, triangles: np.ndarray) -> np.ndarray: + y1, x1 = self.a + y2, x2 = self.b + y3, x3 = self.c + + denominator = (y2 - y3) * (x1 - x3) + (x3 - x2) * (y1 - y3) + + centroid_x, centroid_y = centroid(triangles) + + a = ( + (y2 - y3) * (centroid_x - x3) + (x3 - x2) * (centroid_y - y3) + ) / denominator + b = ( + (y3 - y1) * (centroid_x - x3) + (x1 - x3) * (centroid_y - y3) + ) / denominator + c = 1 - a - b + + return (0 <= a) & (a <= 1) & (0 <= b) & (b <= 1) & (0 <= c) & (c <= 1) + + @property + def area(self) -> float: + """ + The area of the triangle. + """ + return 0.5 * abs( + self.a[0] * (self.b[1] - self.c[1]) + + self.b[0] * (self.c[1] - self.a[1]) + + self.c[0] * (self.a[1] - self.b[1]) + ) + + +class Polygon(Point): + def __init__( + self, + vertices: List[Tuple[float, float]], + ): + """ + A polygon in the source plane for which we want to identify pixels in the + image plane that trace to it. + + Parameters + ---------- + vertices + The vertices of the polygon. + """ + self.vertices = vertices + + if len(vertices) < 3: + raise ValueError("A polygon must have at least 3 vertices.") + + x = np.mean([vertex[0] for vertex in vertices]) + y = np.mean([vertex[1] for vertex in vertices]) + super().__init__(x, y) + + first = vertices[0] + + self.triangles = [ + Triangle( + first, + second, + third, + ) + for second, third in zip(vertices[1:], vertices[2:]) + ] + + @property + def area(self) -> float: + """ + The area of the polygon. + """ + return sum(triangle.area for triangle in self.triangles) + + def tree_flatten(self): + """ + Flatten this model as a PyTree. + """ + return (self.vertices,), None + + @classmethod + def tree_unflatten(cls, aux_data, children): + """ + Unflatten a PyTree into a model. + """ + return cls( + vertices=children[0], + ) + + def mask(self, triangles: np.ndarray) -> np.ndarray: + """ + Determine which triangles intersect the Voronoi cell. + + Parameters + ---------- + triangles + The vertices of the triangles + + Returns + ------- + A boolean array indicating which triangles intersect the Voronoi cell. + """ + return np.any( + [triangle.mask(triangles) for triangle in self.triangles], + axis=0, + ) | super().mask(triangles) + + +class Square(Point): + def __init__(self, top, bottom, left, right): + """ + A square in the source plane for which we want to identify pixels in the + image plane that trace to it. + + Parameters + ---------- + top + bottom + left + right + The coordinates of the top, bottom, left, and right edges of the square. + Coordinates are from the top-left corner of the image. + """ + x = (left + right) / 2 + y = (top + bottom) / 2 + super().__init__(x, y) + self.top = top + self.bottom = bottom + self.left = left + self.right = right + + @property + def area(self) -> float: + """ + The area of the square. + """ + return (self.right - self.left) * (self.bottom - self.top) + + def mask(self, triangles: np.ndarray) -> np.ndarray: + """ + Determine which triangles intersect the square. + + This is approximated by checking if the centroid of the triangle is within + the square or if the triangle contains the centroid of the square. + + Parameters + ---------- + triangles + The vertices of the triangles. + + Returns + ------- + A boolean array indicating which triangles intersect the square. + """ + centroid_x, centroid_y = centroid(triangles) + + return ( + (self.left <= centroid_x) + & (centroid_x <= self.right) + & (self.bottom >= centroid_y) + & (centroid_y >= self.top) + ) | super().mask(triangles) diff --git a/autoarray/util/cholesky_funcs.py b/autoarray/util/cholesky_funcs.py index bd211eeb5..63ab2163b 100644 --- a/autoarray/util/cholesky_funcs.py +++ b/autoarray/util/cholesky_funcs.py @@ -1,100 +1,100 @@ -import numpy as np -from scipy import linalg -import math -import time -from autoarray import numba_util - - -@numba_util.jit() -def _choldowndate(U, x): - n = x.size - for k in range(n - 1): - Ukk = U[k, k] - xk = x[k] - r = math.sqrt(Ukk**2 - xk**2) - c = r / Ukk - s = xk / Ukk - U[k, k] = r - U[k, k + 1 :] = (U[k, (k + 1) :] - s * x[k + 1 :]) / c - x[k + 1 :] = c * x[k + 1 :] - s * U[k, k + 1 :] - - k = n - 1 - U[k, k] = math.sqrt(U[k, k] ** 2 - x[k] ** 2) - return U - - -@numba_util.jit() -def _cholupdate(U, x): - n = x.size - for k in range(n - 1): - Ukk = U[k, k] - xk = x[k] - - r = np.sqrt(Ukk**2 + xk**2) - - c = r / Ukk - s = xk / Ukk - U[k, k] = r - - U[k, k + 1 :] = (U[k, (k + 1) :] + s * x[k + 1 :]) / c - x[k + 1 :] = c * x[k + 1 :] - s * U[k, k + 1 :] - - k = n - 1 - U[k, k] = np.sqrt(U[k, k] ** 2 + x[k] ** 2) - - return U - - -def cholinsert(U, index, x): - S = np.insert(np.insert(U, index, 0, axis=0), index, 0, axis=1) - - S[:index, index] = S12 = linalg.solve_triangular( - U[:index, :index], x[:index], trans=1, lower=False, overwrite_b=True - ) - - S[index, index] = s22 = math.sqrt(x[index] - S12.dot(S12)) - - if index == U.shape[0]: - return S - else: - S[index, index + 1 :] = S23 = (x[index + 1 :] - S12.T @ U[:index, index:]) / s22 - _choldowndate(S[index + 1 :, index + 1 :], S23) # S33 - return S - - -def cholinsertlast(U, x): - """ - Update the Cholesky matrix U by inserting a vector at the end of the matrix - Inserting a vector to the end of U doesn't require _cholupdate, so save some time. - It's a special case of `cholinsert` (as shown above, if index == U.shape[0]) - As in current Cholesky scheme implemented in fnnls, we only use this kind of insertion, so I - separate it out from the `cholinsert`. - """ - index = U.shape[0] - - S = np.insert(np.insert(U, index, 0, axis=0), index, 0, axis=1) - - S[:index, index] = S12 = linalg.solve_triangular( - U[:index, :index], x[:index], trans=1, lower=False, overwrite_b=True - ) - - S[index, index] = s22 = math.sqrt(x[index] - S12.dot(S12)) - - return S - - -def choldeleteindexes(U, indexes): - indexes = sorted(indexes, reverse=True) - - for index in indexes: - L = np.delete(np.delete(U, index, axis=0), index, axis=1) - - # If the deleted index is at the end of matrix, then we do not need to update the U. - - if index == L.shape[0]: - U = L - else: - _cholupdate(L[index:, index:], U[index, index + 1 :]) - U = L - - return U +import numpy as np +from scipy import linalg +import math +import time +from autoarray import numba_util + + +@numba_util.jit() +def _choldowndate(U, x): + n = x.size + for k in range(n - 1): + Ukk = U[k, k] + xk = x[k] + r = math.sqrt(Ukk**2 - xk**2) + c = r / Ukk + s = xk / Ukk + U[k, k] = r + U[k, k + 1 :] = (U[k, (k + 1) :] - s * x[k + 1 :]) / c + x[k + 1 :] = c * x[k + 1 :] - s * U[k, k + 1 :] + + k = n - 1 + U[k, k] = math.sqrt(U[k, k] ** 2 - x[k] ** 2) + return U + + +@numba_util.jit() +def _cholupdate(U, x): + n = x.size + for k in range(n - 1): + Ukk = U[k, k] + xk = x[k] + + r = np.sqrt(Ukk**2 + xk**2) + + c = r / Ukk + s = xk / Ukk + U[k, k] = r + + U[k, k + 1 :] = (U[k, (k + 1) :] + s * x[k + 1 :]) / c + x[k + 1 :] = c * x[k + 1 :] - s * U[k, k + 1 :] + + k = n - 1 + U[k, k] = np.sqrt(U[k, k] ** 2 + x[k] ** 2) + + return U + + +def cholinsert(U, index, x): + S = np.insert(np.insert(U, index, 0, axis=0), index, 0, axis=1) + + S[:index, index] = S12 = linalg.solve_triangular( + U[:index, :index], x[:index], trans=1, lower=False, overwrite_b=True + ) + + S[index, index] = s22 = math.sqrt(x[index] - S12.dot(S12)) + + if index == U.shape[0]: + return S + else: + S[index, index + 1 :] = S23 = (x[index + 1 :] - S12.T @ U[:index, index:]) / s22 + _choldowndate(S[index + 1 :, index + 1 :], S23) # S33 + return S + + +def cholinsertlast(U, x): + """ + Update the Cholesky matrix U by inserting a vector at the end of the matrix + Inserting a vector to the end of U doesn't require _cholupdate, so save some time. + It's a special case of `cholinsert` (as shown above, if index == U.shape[0]) + As in current Cholesky scheme implemented in fnnls, we only use this kind of insertion, so I + separate it out from the `cholinsert`. + """ + index = U.shape[0] + + S = np.insert(np.insert(U, index, 0, axis=0), index, 0, axis=1) + + S[:index, index] = S12 = linalg.solve_triangular( + U[:index, :index], x[:index], trans=1, lower=False, overwrite_b=True + ) + + S[index, index] = s22 = math.sqrt(x[index] - S12.dot(S12)) + + return S + + +def choldeleteindexes(U, indexes): + indexes = sorted(indexes, reverse=True) + + for index in indexes: + L = np.delete(np.delete(U, index, axis=0), index, axis=1) + + # If the deleted index is at the end of matrix, then we do not need to update the U. + + if index == L.shape[0]: + U = L + else: + _cholupdate(L[index:, index:], U[index, index + 1 :]) + U = L + + return U diff --git a/autoarray/util/fnnls.py b/autoarray/util/fnnls.py index 3f49c1f2d..b31d6877f 100644 --- a/autoarray/util/fnnls.py +++ b/autoarray/util/fnnls.py @@ -1,155 +1,155 @@ -import numpy as np -from scipy import linalg as slg - -from autoarray.util.cholesky_funcs import cholinsertlast, choldeleteindexes - -from autoarray import exc - -""" - This file contains functions use the Bro & Jong (1997) algorithm to solve the non-negative least - square problem. The `fnnls and fix_constraint` is orginally copied from - "https://github.com/jvendrow/fnnls". - For our purpose in PyAutoArray, we create `fnnls_modefied` to take ZTZ and ZTx as inputs directly. - Furthermore, we add two functions `fnnls_Cholesky and fix_constraint_Cholesky` to realize a scheme - that solves the lstsq problem in the algorithm by Cholesky factorisation. For ~ 1000 free - parameters, we see a speed up by 2 times and should be more for more parameters. - We have also noticed that by setting the P_initial to be `sla.solve(ZTZ, ZTx, assume_a='pos') > 0` - will speed up our task (~ 1000 free parameters) by ~ 3 times as it significantly reduces the - iteration time. -""" - - -def fnnls_cholesky( - ZTZ, - ZTx, - P_initial=np.zeros(0, dtype=int), -): - """ - Similar to fnnls, but use solving the lstsq problem by updating Cholesky factorisation. - """ - - lstsq = lambda A, x: slg.solve( - A, - x, - assume_a="pos", - overwrite_a=True, - overwrite_b=True, - ) - - n = np.shape(ZTZ)[0] - epsilon = 2.2204e-16 - tolerance = epsilon * n - max_repetitions = 3 - no_update = 0 - loop_count = 0 - loop_count2 = 0 - - P = np.zeros(n, dtype=bool) - P[P_initial] = True - d = np.zeros(n) - w = ZTx - (ZTZ) @ d - s_chol = np.zeros(n) - - if P_initial.shape[0] != 0: - P_number = np.arange(len(P), dtype="int") - P_inorder = P_number[P_initial] - s_chol[P] = lstsq((ZTZ)[P][:, P], (ZTx)[P]) - d = s_chol.clip(min=0) - else: - P_inorder = np.array([], dtype="int") - - # P_inorder is similar as P. They are both used to select solutions in the passive set. - # P_inorder saves the `indexes` of those passive solutions. - # P saves [True/False] for all solutions. True indicates a solution in the passive set while False - # indicates it's in the active set. - # The benifit of P_inorder is that we are able to not only select out solutions in the passive set - # and can sort them in the order of added to the passive set. This will make updating the - # Cholesky factorisation simpler and thus save time. - - while (not np.all(P)) and np.max(w[~P]) > tolerance: - # make copy of passive set to check for change at end of loop - - current_P = P.copy() - idmax = np.argmax(w * ~P) - P_inorder = np.append(P_inorder, int(idmax)) - - if loop_count == 0: - # We need to initialize the Cholesky factorisation, U, for the first loop. - U = slg.cholesky(ZTZ[P_inorder][:, P_inorder]) - else: - U = cholinsertlast(U, ZTZ[idmax][P_inorder]) - - # solve the lstsq problem by cho_solve - - s_chol[P_inorder] = slg.cho_solve((U, False), ZTx[P_inorder]) - - P[idmax] = True - while np.any(P) and np.min(s_chol[P]) <= tolerance: - s_chol, d, P, P_inorder, U = fix_constraint_cholesky( - ZTx=ZTx, - s_chol=s_chol, - d=d, - P=P, - P_inorder=P_inorder, - U=U, - tolerance=tolerance, - ) - - loop_count2 += 1 - if loop_count2 > 10000: - raise RuntimeError - - d = s_chol.copy() - w = ZTx - (ZTZ) @ d - loop_count += 1 - - if loop_count > 10000: - raise RuntimeError - - if np.all(current_P == P): - no_update += 1 - else: - no_update = 0 - - if no_update >= max_repetitions: - break - - return d - - -def fix_constraint_cholesky(ZTx, s_chol, d, P, P_inorder, U, tolerance): - """ - Similar to fix_constraint, but solve the lstsq by Cholesky factorisation. - If this function is called, it means some solutions in the current passive sets needed to be - taken out and put into the active set. - So, this function involves 3 procedure: - 1. Identifying what solutions should be taken out of the current passive set. - 2. Updating the P, P_inorder and the Cholesky factorisation U. - 3. Solving the lstsq by using the new Cholesky factorisation U. - As some solutions are taken out from the passive set, the Cholesky factorisation needs to be - updated by choldeleteindexes. To realize that, we call the `choldeleteindexes` from - cholesky_funcs. - """ - q = P * (s_chol <= tolerance) - alpha = np.min(d[q] / (d[q] - s_chol[q])) - - # set d as close to s as possible while maintaining non-negativity - d = d + alpha * (s_chol - d) - - id_delete = np.where(d[P_inorder] <= tolerance)[0] - - U = choldeleteindexes(U, id_delete) # update the Cholesky factorisation - - P_inorder = np.delete(P_inorder, id_delete) # update the P_inorder - - P[d <= tolerance] = False # update the P - - # solve the lstsq problem by cho_solve - - if len(P_inorder): - # there could be a case where P_inorder is empty. - s_chol[P_inorder] = slg.cho_solve((U, False), ZTx[P_inorder]) - - s_chol[~P] = 0.0 # set solutions taken out of the passive set to be 0 - - return s_chol, d, P, P_inorder, U +import numpy as np +from scipy import linalg as slg + +from autoarray.util.cholesky_funcs import cholinsertlast, choldeleteindexes + +from autoarray import exc + +""" + This file contains functions use the Bro & Jong (1997) algorithm to solve the non-negative least + square problem. The `fnnls and fix_constraint` is orginally copied from + "https://github.com/jvendrow/fnnls". + For our purpose in PyAutoArray, we create `fnnls_modefied` to take ZTZ and ZTx as inputs directly. + Furthermore, we add two functions `fnnls_Cholesky and fix_constraint_Cholesky` to realize a scheme + that solves the lstsq problem in the algorithm by Cholesky factorisation. For ~ 1000 free + parameters, we see a speed up by 2 times and should be more for more parameters. + We have also noticed that by setting the P_initial to be `sla.solve(ZTZ, ZTx, assume_a='pos') > 0` + will speed up our task (~ 1000 free parameters) by ~ 3 times as it significantly reduces the + iteration time. +""" + + +def fnnls_cholesky( + ZTZ, + ZTx, + P_initial=np.zeros(0, dtype=int), +): + """ + Similar to fnnls, but use solving the lstsq problem by updating Cholesky factorisation. + """ + + lstsq = lambda A, x: slg.solve( + A, + x, + assume_a="pos", + overwrite_a=True, + overwrite_b=True, + ) + + n = np.shape(ZTZ)[0] + epsilon = 2.2204e-16 + tolerance = epsilon * n + max_repetitions = 3 + no_update = 0 + loop_count = 0 + loop_count2 = 0 + + P = np.zeros(n, dtype=bool) + P[P_initial] = True + d = np.zeros(n) + w = ZTx - (ZTZ) @ d + s_chol = np.zeros(n) + + if P_initial.shape[0] != 0: + P_number = np.arange(len(P), dtype="int") + P_inorder = P_number[P_initial] + s_chol[P] = lstsq((ZTZ)[P][:, P], (ZTx)[P]) + d = s_chol.clip(min=0) + else: + P_inorder = np.array([], dtype="int") + + # P_inorder is similar as P. They are both used to select solutions in the passive set. + # P_inorder saves the `indexes` of those passive solutions. + # P saves [True/False] for all solutions. True indicates a solution in the passive set while False + # indicates it's in the active set. + # The benifit of P_inorder is that we are able to not only select out solutions in the passive set + # and can sort them in the order of added to the passive set. This will make updating the + # Cholesky factorisation simpler and thus save time. + + while (not np.all(P)) and np.max(w[~P]) > tolerance: + # make copy of passive set to check for change at end of loop + + current_P = P.copy() + idmax = np.argmax(w * ~P) + P_inorder = np.append(P_inorder, int(idmax)) + + if loop_count == 0: + # We need to initialize the Cholesky factorisation, U, for the first loop. + U = slg.cholesky(ZTZ[P_inorder][:, P_inorder]) + else: + U = cholinsertlast(U, ZTZ[idmax][P_inorder]) + + # solve the lstsq problem by cho_solve + + s_chol[P_inorder] = slg.cho_solve((U, False), ZTx[P_inorder]) + + P[idmax] = True + while np.any(P) and np.min(s_chol[P]) <= tolerance: + s_chol, d, P, P_inorder, U = fix_constraint_cholesky( + ZTx=ZTx, + s_chol=s_chol, + d=d, + P=P, + P_inorder=P_inorder, + U=U, + tolerance=tolerance, + ) + + loop_count2 += 1 + if loop_count2 > 10000: + raise RuntimeError + + d = s_chol.copy() + w = ZTx - (ZTZ) @ d + loop_count += 1 + + if loop_count > 10000: + raise RuntimeError + + if np.all(current_P == P): + no_update += 1 + else: + no_update = 0 + + if no_update >= max_repetitions: + break + + return d + + +def fix_constraint_cholesky(ZTx, s_chol, d, P, P_inorder, U, tolerance): + """ + Similar to fix_constraint, but solve the lstsq by Cholesky factorisation. + If this function is called, it means some solutions in the current passive sets needed to be + taken out and put into the active set. + So, this function involves 3 procedure: + 1. Identifying what solutions should be taken out of the current passive set. + 2. Updating the P, P_inorder and the Cholesky factorisation U. + 3. Solving the lstsq by using the new Cholesky factorisation U. + As some solutions are taken out from the passive set, the Cholesky factorisation needs to be + updated by choldeleteindexes. To realize that, we call the `choldeleteindexes` from + cholesky_funcs. + """ + q = P * (s_chol <= tolerance) + alpha = np.min(d[q] / (d[q] - s_chol[q])) + + # set d as close to s as possible while maintaining non-negativity + d = d + alpha * (s_chol - d) + + id_delete = np.where(d[P_inorder] <= tolerance)[0] + + U = choldeleteindexes(U, id_delete) # update the Cholesky factorisation + + P_inorder = np.delete(P_inorder, id_delete) # update the P_inorder + + P[d <= tolerance] = False # update the P + + # solve the lstsq problem by cho_solve + + if len(P_inorder): + # there could be a case where P_inorder is empty. + s_chol[P_inorder] = slg.cho_solve((U, False), ZTx[P_inorder]) + + s_chol[~P] = 0.0 # set solutions taken out of the passive set to be 0 + + return s_chol, d, P, P_inorder, U diff --git a/autoarray/util/nn/README.md b/autoarray/util/nn/README.md index 75f8664a5..e8bcedd25 100644 --- a/autoarray/util/nn/README.md +++ b/autoarray/util/nn/README.md @@ -1,53 +1,53 @@ -Natural Neighbour -================= - -(Natural Neighbours interpolation for PyAutoLens) - -If you want to use the `Voronoi` pixelization, which applies natural neighbor -interpolation (https://en.wikipedia.org/wiki/Natural_neighbor_interpolation) to a Voronoi mesh you must -install this C package. - -This currently requires that PyAutoLens is built from source, e.g. via cloning PyAutoLens and its parent packagees -from GitHub (https://pyautolens.readthedocs.io/en/latest/installation/source.html). - -The code is a slightly modified version of "https://github.com/sakov/nn-c", a natural neighboring interpolation C -code written by Pavel Sakov. - -To install nn for PyAutoLens on a linux machine (and presumably a MAC) follow the steps below: - -1. Put directory 'nn' folders in your global command line variable LD_LIBRARY_PATH. - - export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/your/path/to/autoarray/util/nn/src/nn - -You may wish to add this to your ~/.bashrc file or virtual environment activate script so you do not need to re-enter -the path every time you open a new environment. - -2. go to directory 'nn' - - cd /your/path/to/autoarray/util/nn/src/nn - -3. run: - - ./configure - -3 (Optional) If you receive a permission error running the command above (which has been reported to occur on super computers) then try the following command instead: - - bash ./configure - -4. run the following command is to backup the automatically generated makefile. - - cp makefile_autolens makefile - -5. Run the make command: - - make - -If you see libnnhpi_customized.so, it should be correctly compiled. - -To test the installation go to the folder test_autoarray/util, and run 'pytest' - -To clean all compiled fields, run: - - make distclean - - +Natural Neighbour +================= + +(Natural Neighbours interpolation for PyAutoLens) + +If you want to use the `Voronoi` pixelization, which applies natural neighbor +interpolation (https://en.wikipedia.org/wiki/Natural_neighbor_interpolation) to a Voronoi mesh you must +install this C package. + +This currently requires that PyAutoLens is built from source, e.g. via cloning PyAutoLens and its parent packagees +from GitHub (https://pyautolens.readthedocs.io/en/latest/installation/source.html). + +The code is a slightly modified version of "https://github.com/sakov/nn-c", a natural neighboring interpolation C +code written by Pavel Sakov. + +To install nn for PyAutoLens on a linux machine (and presumably a MAC) follow the steps below: + +1. Put directory 'nn' folders in your global command line variable LD_LIBRARY_PATH. + + export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/your/path/to/autoarray/util/nn/src/nn + +You may wish to add this to your ~/.bashrc file or virtual environment activate script so you do not need to re-enter +the path every time you open a new environment. + +2. go to directory 'nn' + + cd /your/path/to/autoarray/util/nn/src/nn + +3. run: + + ./configure + +3 (Optional) If you receive a permission error running the command above (which has been reported to occur on super computers) then try the following command instead: + + bash ./configure + +4. run the following command is to backup the automatically generated makefile. + + cp makefile_autolens makefile + +5. Run the make command: + + make + +If you see libnnhpi_customized.so, it should be correctly compiled. + +To test the installation go to the folder test_autoarray/util, and run 'pytest' + +To clean all compiled fields, run: + + make distclean + + diff --git a/autoarray/util/nn/nn_py.py b/autoarray/util/nn/nn_py.py index 1c10d8a64..752eb9351 100644 --- a/autoarray/util/nn/nn_py.py +++ b/autoarray/util/nn/nn_py.py @@ -1,108 +1,108 @@ -import numpy as np -import ctypes -import os - - -try: - _file = ( - os.path.realpath(os.path.dirname(__file__)) + "/src/nn/libnnhpi_customized.so" - ) - _mod = ctypes.cdll.LoadLibrary(_file) - - # interpolate_weights_from is for creating a mapper - interpolate_weights_from = _mod.interpolate_weights_from - interpolate_weights_from.argtypes = ( - ctypes.POINTER(ctypes.c_double), - ctypes.POINTER(ctypes.c_double), - ctypes.POINTER(ctypes.c_double), - ctypes.c_int, - ctypes.POINTER(ctypes.c_double), - ctypes.POINTER(ctypes.c_double), - ctypes.c_int, - ctypes.POINTER(ctypes.c_double), - ctypes.POINTER(ctypes.c_int), - ctypes.c_int, - ) - interpolate_weights_from.restype = ctypes.c_int - - # interpolate_from is for plotting - interpolate_from = _mod.interpolate_from - interpolate_from.argtypes = ( - ctypes.POINTER(ctypes.c_double), - ctypes.POINTER(ctypes.c_double), - ctypes.POINTER(ctypes.c_double), - ctypes.c_int, - ctypes.POINTER(ctypes.c_double), - ctypes.POINTER(ctypes.c_double), - ctypes.POINTER(ctypes.c_double), - ctypes.POINTER(ctypes.c_int), - ctypes.c_int, - ) - interpolate_from.restype = ctypes.c_int - - def natural_interpolation_weights(x_in, y_in, x_target, y_target, max_nneighbours): - nin = len(x_in) - nout = len(x_target) - - z_in = np.zeros(len(x_in), dtype=np.double) - - weights_out = np.zeros(nout * max_nneighbours, dtype=np.double) - neighbour_indexes_out = np.zeros(nout * max_nneighbours, dtype=np.intc) - 1 - - flag = interpolate_weights_from( - (x_in.astype(np.double)).ctypes.data_as(ctypes.POINTER(ctypes.c_double)), - (y_in.astype(np.double)).ctypes.data_as(ctypes.POINTER(ctypes.c_double)), - z_in.ctypes.data_as(ctypes.POINTER(ctypes.c_double)), - ctypes.c_int(nin), - (x_target.astype(np.double)).ctypes.data_as( - ctypes.POINTER(ctypes.c_double) - ), - (y_target.astype(np.double)).ctypes.data_as( - ctypes.POINTER(ctypes.c_double) - ), - ctypes.c_int(nout), - weights_out.ctypes.data_as(ctypes.POINTER(ctypes.c_double)), - neighbour_indexes_out.ctypes.data_as(ctypes.POINTER(ctypes.c_int)), - ctypes.c_int(max_nneighbours), - ) - - return ( - weights_out.reshape((nout, max_nneighbours)), - neighbour_indexes_out.reshape((nout, max_nneighbours)), - ) - - def natural_interpolation(x_in, y_in, z_in, x_target, y_target): - nin = len(x_in) - nout = len(x_target) - - z_target = np.zeros(nout, dtype=np.double) - z_marker = np.zeros(nout, dtype=np.intc) - - flag = interpolate_from( - (x_in.astype(np.double)).ctypes.data_as(ctypes.POINTER(ctypes.c_double)), - (y_in.astype(np.double)).ctypes.data_as(ctypes.POINTER(ctypes.c_double)), - (z_in.astype(np.double)).ctypes.data_as(ctypes.POINTER(ctypes.c_double)), - ctypes.c_int(nin), - (x_target.astype(np.double)).ctypes.data_as( - ctypes.POINTER(ctypes.c_double) - ), - (y_target.astype(np.double)).ctypes.data_as( - ctypes.POINTER(ctypes.c_double) - ), - z_target.ctypes.data_as(ctypes.POINTER(ctypes.c_double)), - z_marker.ctypes.data_as(ctypes.POINTER(ctypes.c_int)), - ctypes.c_int(nout), - ) - - for i in range(nout): - if z_marker[i] == -1: - cloest_point_index = np.argmin( - (x_in - x_target[i]) ** 2.0 + (y_in - y_target[i]) ** 2.0 - ) - z_target[i] = z_in[cloest_point_index] - - return z_target - -except OSError: - print("natural neighbour interpolation not loaded.") - raise ImportError +import numpy as np +import ctypes +import os + + +try: + _file = ( + os.path.realpath(os.path.dirname(__file__)) + "/src/nn/libnnhpi_customized.so" + ) + _mod = ctypes.cdll.LoadLibrary(_file) + + # interpolate_weights_from is for creating a mapper + interpolate_weights_from = _mod.interpolate_weights_from + interpolate_weights_from.argtypes = ( + ctypes.POINTER(ctypes.c_double), + ctypes.POINTER(ctypes.c_double), + ctypes.POINTER(ctypes.c_double), + ctypes.c_int, + ctypes.POINTER(ctypes.c_double), + ctypes.POINTER(ctypes.c_double), + ctypes.c_int, + ctypes.POINTER(ctypes.c_double), + ctypes.POINTER(ctypes.c_int), + ctypes.c_int, + ) + interpolate_weights_from.restype = ctypes.c_int + + # interpolate_from is for plotting + interpolate_from = _mod.interpolate_from + interpolate_from.argtypes = ( + ctypes.POINTER(ctypes.c_double), + ctypes.POINTER(ctypes.c_double), + ctypes.POINTER(ctypes.c_double), + ctypes.c_int, + ctypes.POINTER(ctypes.c_double), + ctypes.POINTER(ctypes.c_double), + ctypes.POINTER(ctypes.c_double), + ctypes.POINTER(ctypes.c_int), + ctypes.c_int, + ) + interpolate_from.restype = ctypes.c_int + + def natural_interpolation_weights(x_in, y_in, x_target, y_target, max_nneighbours): + nin = len(x_in) + nout = len(x_target) + + z_in = np.zeros(len(x_in), dtype=np.double) + + weights_out = np.zeros(nout * max_nneighbours, dtype=np.double) + neighbour_indexes_out = np.zeros(nout * max_nneighbours, dtype=np.intc) - 1 + + flag = interpolate_weights_from( + (x_in.astype(np.double)).ctypes.data_as(ctypes.POINTER(ctypes.c_double)), + (y_in.astype(np.double)).ctypes.data_as(ctypes.POINTER(ctypes.c_double)), + z_in.ctypes.data_as(ctypes.POINTER(ctypes.c_double)), + ctypes.c_int(nin), + (x_target.astype(np.double)).ctypes.data_as( + ctypes.POINTER(ctypes.c_double) + ), + (y_target.astype(np.double)).ctypes.data_as( + ctypes.POINTER(ctypes.c_double) + ), + ctypes.c_int(nout), + weights_out.ctypes.data_as(ctypes.POINTER(ctypes.c_double)), + neighbour_indexes_out.ctypes.data_as(ctypes.POINTER(ctypes.c_int)), + ctypes.c_int(max_nneighbours), + ) + + return ( + weights_out.reshape((nout, max_nneighbours)), + neighbour_indexes_out.reshape((nout, max_nneighbours)), + ) + + def natural_interpolation(x_in, y_in, z_in, x_target, y_target): + nin = len(x_in) + nout = len(x_target) + + z_target = np.zeros(nout, dtype=np.double) + z_marker = np.zeros(nout, dtype=np.intc) + + flag = interpolate_from( + (x_in.astype(np.double)).ctypes.data_as(ctypes.POINTER(ctypes.c_double)), + (y_in.astype(np.double)).ctypes.data_as(ctypes.POINTER(ctypes.c_double)), + (z_in.astype(np.double)).ctypes.data_as(ctypes.POINTER(ctypes.c_double)), + ctypes.c_int(nin), + (x_target.astype(np.double)).ctypes.data_as( + ctypes.POINTER(ctypes.c_double) + ), + (y_target.astype(np.double)).ctypes.data_as( + ctypes.POINTER(ctypes.c_double) + ), + z_target.ctypes.data_as(ctypes.POINTER(ctypes.c_double)), + z_marker.ctypes.data_as(ctypes.POINTER(ctypes.c_int)), + ctypes.c_int(nout), + ) + + for i in range(nout): + if z_marker[i] == -1: + cloest_point_index = np.argmin( + (x_in - x_target[i]) ** 2.0 + (y_in - y_target[i]) ** 2.0 + ) + z_target[i] = z_in[cloest_point_index] + + return z_target + +except OSError: + print("natural neighbour interpolation not loaded.") + raise ImportError diff --git a/autoarray/util/nn/src/README.md b/autoarray/util/nn/src/README.md index 1dcddc0cc..89eb2d81f 100644 --- a/autoarray/util/nn/src/README.md +++ b/autoarray/util/nn/src/README.md @@ -1,23 +1,23 @@ -Natural Neighbour -================= - -(Natural Neighbours interpolation) - -**nn** is a C code for Natural Neighbours interpolation of 2D scattered data. It provides a C library and a command line -utility **nnbathy**. - -Algorithmically, it was initially loosely based on the Dave Watson's description of nngridr; code-wise it is an -independent development. You may see a comparison of performance of a (rather old) version of **nn** with nngridr in - - Quanfu Fan, Alon Efrat, Vladlen Koltun, Shankar Krishnan, and Suresh - Venkatasubramanian. Hardware-assisted Natural Neighbor Interpolation. - In Proc. 7th Workshop on Algorithm Engineering and Experiments (ALENEX), 2005. - [pdf](http://nn-c.googlecode.com/files/fan05a.pdf) - -**nn** is coded for robustness (to handle degenerate data) and scalability (to handle millions of data points), subject -to using double precision calculations. For the underlying Delaunay triangulation it calls exact arithmetic code from -[triangle](http://www.cs.cmu.edu/~quake/triangle.html). From v2 it is possible to run **nnbathy** on multiple CPUs with -triangulation stored in shared memory. - - -Checkout **nn** by running `git clone https://github.com/sakov/nn-c` or `svn checkout https://github.com/sakov/nn-c`. +Natural Neighbour +================= + +(Natural Neighbours interpolation) + +**nn** is a C code for Natural Neighbours interpolation of 2D scattered data. It provides a C library and a command line +utility **nnbathy**. + +Algorithmically, it was initially loosely based on the Dave Watson's description of nngridr; code-wise it is an +independent development. You may see a comparison of performance of a (rather old) version of **nn** with nngridr in + + Quanfu Fan, Alon Efrat, Vladlen Koltun, Shankar Krishnan, and Suresh + Venkatasubramanian. Hardware-assisted Natural Neighbor Interpolation. + In Proc. 7th Workshop on Algorithm Engineering and Experiments (ALENEX), 2005. + [pdf](http://nn-c.googlecode.com/files/fan05a.pdf) + +**nn** is coded for robustness (to handle degenerate data) and scalability (to handle millions of data points), subject +to using double precision calculations. For the underlying Delaunay triangulation it calls exact arithmetic code from +[triangle](http://www.cs.cmu.edu/~quake/triangle.html). From v2 it is possible to run **nnbathy** on multiple CPUs with +triangulation stored in shared memory. + + +Checkout **nn** by running `git clone https://github.com/sakov/nn-c` or `svn checkout https://github.com/sakov/nn-c`. diff --git a/autoarray/util/nn/src/nn/.indent.pro b/autoarray/util/nn/src/nn/.indent.pro index 8617db7fa..c66074389 100644 --- a/autoarray/util/nn/src/nn/.indent.pro +++ b/autoarray/util/nn/src/nn/.indent.pro @@ -1,20 +1,20 @@ ---original - -// overwrites to --original ---blank-lines-after-declarations ---blank-lines-after-procedures ---no-blank-lines-after-commas ---declaration-indentation1 ---comment-line-length78 ---dont-break-procedure-type ---dont-break-function-decl-args ---line-length999 ---pointers-to-type-definitions - // works only with the tweaked version of indent - // available from: - // http://www.marine.csiro.au/~sakov/indent-2.2.8a-mod.tar.gz ---swallow-optional-blank-lines ---no-tabs - -// add-ons for my code ---dont-format-first-column-comments // or there will be a mess +--original + +// overwrites to --original +--blank-lines-after-declarations +--blank-lines-after-procedures +--no-blank-lines-after-commas +--declaration-indentation1 +--comment-line-length78 +--dont-break-procedure-type +--dont-break-function-decl-args +--line-length999 +--pointers-to-type-definitions + // works only with the tweaked version of indent + // available from: + // http://www.marine.csiro.au/~sakov/indent-2.2.8a-mod.tar.gz +--swallow-optional-blank-lines +--no-tabs + +// add-ons for my code +--dont-format-first-column-comments // or there will be a mess diff --git a/autoarray/util/nn/src/nn/CHANGELOG b/autoarray/util/nn/src/nn/CHANGELOG index 8d7d20f08..80b3966c9 100644 --- a/autoarray/util/nn/src/nn/CHANGELOG +++ b/autoarray/util/nn/src/nn/CHANGELOG @@ -1,108 +1,108 @@ -v. 2.0.6, 20 July 2021 - -- Got rid of redundant delaunay_getmemsize() in delaynay.c. -v. 2.0.5, 11 May 2021 - -- Added 2nd parallelisation algorithm to nnbathy.c, activated by - -DVIAFILE. -v. 2.0.4, 7 May 2021 - -- A minor correction of #if defined for NMAX in nnbathy.c. - -- Reduced MPIBUFSIZE in nnbathy.c from 4096 to 1024. This has a - marginal effect, but seems to work better for larger number of CPUs. -v. 2.0.3, 7 May 2021 - -- Tuned a bit the distribution of load in the MPI version of nnbathy. - Now the master interpolates if the number of CPUs <= 3; otherwise it - only collects and writes the results. -v. 2.0.2, 7 May 2021 - -- Corrected defect in MPI section of nnbathy.c. -v. 2.0.1, 5 May 2021 - -- Added fflush() to points_write(), which seems to be the problem with - large number of CPUs. -v. 2.0.0, 5 May 2021 - -- Quite a few structural changes. Split `struct delaunay' into - `struct delaunay' and `struct dsearch'. - -- Put some MPI code into delaunay.c and nnbathy.c. See README and - examples/2/README for details. It targets (but not limited to) very - large datasets. In particular, it puts the triangulation into shared - memory. This shared memory functionality of MPI3 can be stripped by - compiling without -DUSE_SHMEM. -v. 1.86.2, 8 June 2017 - -- Minor portability realated changes in hash.[ch] - -- A minor change in makefile -v. 1.86.1, 24 November 2016 - -- Some internal changes in hash.c. -v. 1.86.0, 14 March 2016 - -- A minor modification in an attempt to alleviate a potential - exception in the degenerate case. Not thoroughly tested yet. -v. 1.85.1, 25 Sep 2015 - -- Replaced points_generate2() by points_generate(), seems to work. - This eliminates compilation error for target "tests" -- thanks to - @ocefpaf for the report. -v. 1.85, 1 May 2012 - -- A change in nan.h to distinguish between gcc and icc -v. 1.84, 25 January 2012 - -- Cosmetic: modified descriptions of nnai and nnhpi. -v. 1.83, 19 January 2012 - -- A cosmetic change to avoid compiler warning for delaunay.c - -- Another cosmetic change - updated the list of structure names to be - recognised by `indent' when running "make indent" -v. 1.82, 12 May 2010 - -- Modified "configure" to check whether compiler option - "-fno-force-mem" is supported. -v. 1.81, 29 May 2009 - -- Added flag NN_SERIAL to the default compiler options for building - nnbathy. -v. 1.80, 12 December 2008 - -- Changed the license for compatibility with GPL. Added the file - LICENSE. -v. 1.79, 24 September 2008 - -- Fixed some minor deficiencies in `minell' - thanks to Glen Low for - the bug report and extensive testing. This fix does not affect - performance of `nn'. -v. 1.78, 18 January 2008 - -- Modified Matlab code in the examples to take care of what seems to - be a new behaviour of RANGE function. -v. 1.77, 19 November 2007 - -- Reduced writing the % of the job completed to stderr to the instances - when the reported value has actually changed (with the precision of - 0.1%). -v. 1.76, 16 November 2007 - -- Fixed a defect in nnpi_calculate_weights() that caused double - deallocation in some rare cases (a degenerate point on the convex - hall). Thanks for Maciek Sieczka for reporting this bug. -v. 1.75, 30 October 2007 - -- Modified delaunay_circles_find() and nnpi_reset(). Got rid of the - non-scalable stuff that slowed down processing of big datasets. - Many thanks to John Gerschwitz, Petroleum Geo-Services, for finding - this defect. -v. 1.74, 30 October 2007 - -- Modified treatment of degenerate cases in nnpi_triangle_process(), - many thanks to John Gerschwitz, Petroleum Geo-Services, for exposing - the defect introduced in v. 1.69. Changed EPS_SAME from 1.0e-15 to - 1.0e-8. A number of cosmetic changes. -v. 1.73, 5 July 2007 - -- Removed functional code from within assert()s, which caused problems - for production builds on Visual Studio. Thanks to Alok Saldanha for - reporting this defect. -v. 1.72, 4 July 2007 - -- Moved division by "denom" in circle_build2() and circle_build1() to - after the check on denom == 0; otherwise division on 0 raised - exception on some systems. Thanks to Alok Saldanha for reporting this - bug. -v. 1.71, 17 January 2007 - -- Made the test on whether an output point exactly coincides with - an input point in nnpi_triangle_process() approximate. -v. 1.70, 24 November 2006 - -- Added example 6. -v. 1.69, 22 November 2006 - -- Substantial changes in processing of the degenerate case for Sibson - interpolation. This is the case when an interpolation point is close - to being in between data points. It is no longer handled by a pair - of symmetric displacements of this point; instead, the center of the - corresponding circumcircle is moved elsewhere in a specific way. -v. 1.68, 28 September 2006 - -- Edited README -v. 1.67, 30 August 2006 - -- Introduced -% option (available only when built with -DNN_SERIAL) -v. 1.66, 26 June 2006 - -- Introduced this file - -- Fixed error in reading the command-line input after "-L" - -- Made a few cosmetic changes +v. 2.0.6, 20 July 2021 + -- Got rid of redundant delaunay_getmemsize() in delaynay.c. +v. 2.0.5, 11 May 2021 + -- Added 2nd parallelisation algorithm to nnbathy.c, activated by + -DVIAFILE. +v. 2.0.4, 7 May 2021 + -- A minor correction of #if defined for NMAX in nnbathy.c. + -- Reduced MPIBUFSIZE in nnbathy.c from 4096 to 1024. This has a + marginal effect, but seems to work better for larger number of CPUs. +v. 2.0.3, 7 May 2021 + -- Tuned a bit the distribution of load in the MPI version of nnbathy. + Now the master interpolates if the number of CPUs <= 3; otherwise it + only collects and writes the results. +v. 2.0.2, 7 May 2021 + -- Corrected defect in MPI section of nnbathy.c. +v. 2.0.1, 5 May 2021 + -- Added fflush() to points_write(), which seems to be the problem with + large number of CPUs. +v. 2.0.0, 5 May 2021 + -- Quite a few structural changes. Split `struct delaunay' into + `struct delaunay' and `struct dsearch'. + -- Put some MPI code into delaunay.c and nnbathy.c. See README and + examples/2/README for details. It targets (but not limited to) very + large datasets. In particular, it puts the triangulation into shared + memory. This shared memory functionality of MPI3 can be stripped by + compiling without -DUSE_SHMEM. +v. 1.86.2, 8 June 2017 + -- Minor portability realated changes in hash.[ch] + -- A minor change in makefile +v. 1.86.1, 24 November 2016 + -- Some internal changes in hash.c. +v. 1.86.0, 14 March 2016 + -- A minor modification in an attempt to alleviate a potential + exception in the degenerate case. Not thoroughly tested yet. +v. 1.85.1, 25 Sep 2015 + -- Replaced points_generate2() by points_generate(), seems to work. + This eliminates compilation error for target "tests" -- thanks to + @ocefpaf for the report. +v. 1.85, 1 May 2012 + -- A change in nan.h to distinguish between gcc and icc +v. 1.84, 25 January 2012 + -- Cosmetic: modified descriptions of nnai and nnhpi. +v. 1.83, 19 January 2012 + -- A cosmetic change to avoid compiler warning for delaunay.c + -- Another cosmetic change - updated the list of structure names to be + recognised by `indent' when running "make indent" +v. 1.82, 12 May 2010 + -- Modified "configure" to check whether compiler option + "-fno-force-mem" is supported. +v. 1.81, 29 May 2009 + -- Added flag NN_SERIAL to the default compiler options for building + nnbathy. +v. 1.80, 12 December 2008 + -- Changed the license for compatibility with GPL. Added the file + LICENSE. +v. 1.79, 24 September 2008 + -- Fixed some minor deficiencies in `minell' - thanks to Glen Low for + the bug report and extensive testing. This fix does not affect + performance of `nn'. +v. 1.78, 18 January 2008 + -- Modified Matlab code in the examples to take care of what seems to + be a new behaviour of RANGE function. +v. 1.77, 19 November 2007 + -- Reduced writing the % of the job completed to stderr to the instances + when the reported value has actually changed (with the precision of + 0.1%). +v. 1.76, 16 November 2007 + -- Fixed a defect in nnpi_calculate_weights() that caused double + deallocation in some rare cases (a degenerate point on the convex + hall). Thanks for Maciek Sieczka for reporting this bug. +v. 1.75, 30 October 2007 + -- Modified delaunay_circles_find() and nnpi_reset(). Got rid of the + non-scalable stuff that slowed down processing of big datasets. + Many thanks to John Gerschwitz, Petroleum Geo-Services, for finding + this defect. +v. 1.74, 30 October 2007 + -- Modified treatment of degenerate cases in nnpi_triangle_process(), + many thanks to John Gerschwitz, Petroleum Geo-Services, for exposing + the defect introduced in v. 1.69. Changed EPS_SAME from 1.0e-15 to + 1.0e-8. A number of cosmetic changes. +v. 1.73, 5 July 2007 + -- Removed functional code from within assert()s, which caused problems + for production builds on Visual Studio. Thanks to Alok Saldanha for + reporting this defect. +v. 1.72, 4 July 2007 + -- Moved division by "denom" in circle_build2() and circle_build1() to + after the check on denom == 0; otherwise division on 0 raised + exception on some systems. Thanks to Alok Saldanha for reporting this + bug. +v. 1.71, 17 January 2007 + -- Made the test on whether an output point exactly coincides with + an input point in nnpi_triangle_process() approximate. +v. 1.70, 24 November 2006 + -- Added example 6. +v. 1.69, 22 November 2006 + -- Substantial changes in processing of the degenerate case for Sibson + interpolation. This is the case when an interpolation point is close + to being in between data points. It is no longer handled by a pair + of symmetric displacements of this point; instead, the center of the + corresponding circumcircle is moved elsewhere in a specific way. +v. 1.68, 28 September 2006 + -- Edited README +v. 1.67, 30 August 2006 + -- Introduced -% option (available only when built with -DNN_SERIAL) +v. 1.66, 26 June 2006 + -- Introduced this file + -- Fixed error in reading the command-line input after "-L" + -- Made a few cosmetic changes diff --git a/autoarray/util/nn/src/nn/CUSTOMISE b/autoarray/util/nn/src/nn/CUSTOMISE index 278c1f04f..32dff58e0 100644 --- a/autoarray/util/nn/src/nn/CUSTOMISE +++ b/autoarray/util/nn/src/nn/CUSTOMISE @@ -1,46 +1,46 @@ -# This file is for customizing the configuation process performed by -# `./configure'. This file consists of sh(1) variable-definition lines. -# The value given to those variables by this file will override their default -# values. -# -# Be sure to test whether the variable doesn't exists before setting it. -# -# You can also customize the configuration process via the environment -# variables seen by ./configure. For example: -# -# In csh(1): -# % setenv CC acc -# & setenv CFLAGS -g -# % ./configure -# -# In sh(1) or ksh(1): -# $ CC=acc CFLAGS=-g ./configure -# -# Variables in this file override the environmental ones. -# -############################################################################# - -# C compiler -if [ -z "$CC" ]; then - CC=gcc -fi - -# C compiler flags -if [ -z "$CFLAGS" ]; then - CFLAGS="-g -O2 -Wall -pedantic -D_GNU_SOURCE -std=c99" -fi - -CFLAGS_TRIANGLE="-O2 -w -ffloat-store" -CFLAGS_VULNERABLE="-ffloat-store" - -# Installation prefix (default is /usr/local) -if [ "${prefix}" = "NONE" ]; then - prefix=/usr/local -fi - -if [ "${libdir}" = "\${exec_prefix}/lib" ]; then - libdir="${prefix}/lib${LIBEXT}" -fi - -echo "Using prefix ${prefix}" -echo "Using libdir ${libdir}" +# This file is for customizing the configuation process performed by +# `./configure'. This file consists of sh(1) variable-definition lines. +# The value given to those variables by this file will override their default +# values. +# +# Be sure to test whether the variable doesn't exists before setting it. +# +# You can also customize the configuration process via the environment +# variables seen by ./configure. For example: +# +# In csh(1): +# % setenv CC acc +# & setenv CFLAGS -g +# % ./configure +# +# In sh(1) or ksh(1): +# $ CC=acc CFLAGS=-g ./configure +# +# Variables in this file override the environmental ones. +# +############################################################################# + +# C compiler +if [ -z "$CC" ]; then + CC=gcc +fi + +# C compiler flags +if [ -z "$CFLAGS" ]; then + CFLAGS="-g -O2 -Wall -pedantic -D_GNU_SOURCE -std=c99" +fi + +CFLAGS_TRIANGLE="-O2 -w -ffloat-store" +CFLAGS_VULNERABLE="-ffloat-store" + +# Installation prefix (default is /usr/local) +if [ "${prefix}" = "NONE" ]; then + prefix=/usr/local +fi + +if [ "${libdir}" = "\${exec_prefix}/lib" ]; then + libdir="${prefix}/lib${LIBEXT}" +fi + +echo "Using prefix ${prefix}" +echo "Using libdir ${libdir}" diff --git a/autoarray/util/nn/src/nn/LICENSE b/autoarray/util/nn/src/nn/LICENSE index dc21c32e2..4aec51b93 100644 --- a/autoarray/util/nn/src/nn/LICENSE +++ b/autoarray/util/nn/src/nn/LICENSE @@ -1,24 +1,24 @@ -Copyright (C) 2000-2008 Pavel Sakov and CSIRO - -Redistribution and use of material from the package `nn', with or without -modification, are permitted provided that the following conditions are -met: - - 1. Redistributions of material must retain the above copyright notice, this - list of conditions and the following disclaimer. - 2. The names of the authors may not be used to endorse or promote products - derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS OR IMPLIED -WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO -EVENT SHALL THE AUTHORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT -OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING -IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY -OF SUCH DAMAGE. - -Note: this software makes use of the Triangle software, which is non-free for -commercial use. See the triangle.c and triangle.h files for details. +Copyright (C) 2000-2008 Pavel Sakov and CSIRO + +Redistribution and use of material from the package `nn', with or without +modification, are permitted provided that the following conditions are +met: + + 1. Redistributions of material must retain the above copyright notice, this + list of conditions and the following disclaimer. + 2. The names of the authors may not be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +EVENT SHALL THE AUTHORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT +OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING +IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY +OF SUCH DAMAGE. + +Note: this software makes use of the Triangle software, which is non-free for +commercial use. See the triangle.c and triangle.h files for details. diff --git a/autoarray/util/nn/src/nn/README b/autoarray/util/nn/src/nn/README index b1c7d6aeb..be86bd588 100644 --- a/autoarray/util/nn/src/nn/README +++ b/autoarray/util/nn/src/nn/README @@ -1,90 +1,90 @@ -nn -Natural Neighbours interpolation library -Version 1.86 - -Provides Natural Neighbours interpolation library "libnn.a" and a command line -Natural Neighbours interpolation utility "nnbathy". - -`nn' is a free software. See LICENSE for details. - -(Note that however that `triangle' is not a free softwre.) - -Please send comments and bugs to Pavel.Sakovgmail.com . - - -1. This code has been developed and used mainly on pc-linux platform, however, -it should compile on other platforms. Beware that the configure script -currently does not do much more than a couple of checks. It should be viewed -rather as a prototype for the future than a multi-platform configuration tool. - -`nn' was initially based on the Dave Watson's `nngridr'. Over time, there were -numerous improvements of this original version. You may see comparison of -performance of a rather old version `nn' with `nngridr' in - - Quanfu Fan, Alon Efrat, Vladlen Koltun, Shankar Krishnan, and - Suresh Venkatasubramanian. Hardware-assisted Natural Neighbor Interpolation. - In Proc. 7th Workshop on Algorithm Engineering and Experiments (ALENEX), 2005. - -Note that the current version of `nn' outperforms the version tested in the -above paper both in terms of scalability and robustness. - - -2. To compile, run: - -configure -make -(make install) - -For a few quick tests, run: - -make tests -./nnphi_test -./nnai_test -./ht_test - -From v2.0.0 some MPI code has been added to delaunay.c and nnbathy.c. To compile -it change "MPI = no" in the makefile to "MPI = yes". To test MPI code run -"make mpi" and "make cmp" in examples/2. - -3. Apart from the `nn' library, this code contains `nnbathy' -- a simple -interpolation utility/example based on `nn'. - -Initially, `nnbathy' has been introduced to provide an example of using library -functions from `nn'. Later, evolving along with user requests, it became a quite -functional command-line utility. - - -4. There are a number of examples of using `nnbathy' in "examples" directory: - -examples/1 -- reconstruction of Franke test function -examples/2 -- reconstruction of bathymetry from sonar data -examples/3 -- performance on degenerate data -examples/4 -- reconstruction of topography from satellite altimeter data -examples/5 -- reconstruction of topography from digitised contours -examples/6 -- reconstruction of topography from digitised contours - -These examples has been put up over a a number of years. Some of them used to -cause failures for the older versions of the code. See examples/README for -descriptions. - - -5. Calling `nn' code from a client code is supposed to be straightforward and -simple. Have a look at nnbathy.c for an example. For a basic description of -structures and functions available from `nn', have a look at "nn.h". - - -6. Acknowledgments: - -This library uses the following public code/algorithms: - 1. `triangle' by Jonathan Richard Shewchuk -- for Delaunay triangulation; - 2. Dave Watson's algorithm for Sibson interpolation; - 3. Belikov and Semenov's formulas for non-Sibsonian interpolation. - -Many thanks to David A. Paige, Maciek Sieczka, Nick Cahill and John Gerschwitz -for submitting bug reports and/or data for examples. - - -7. Please acknowledge the use of this software in publications. - -Good luck! -Pavel Sakov +nn +Natural Neighbours interpolation library +Version 1.86 + +Provides Natural Neighbours interpolation library "libnn.a" and a command line +Natural Neighbours interpolation utility "nnbathy". + +`nn' is a free software. See LICENSE for details. + +(Note that however that `triangle' is not a free softwre.) + +Please send comments and bugs to Pavel.Sakovgmail.com . + + +1. This code has been developed and used mainly on pc-linux platform, however, +it should compile on other platforms. Beware that the configure script +currently does not do much more than a couple of checks. It should be viewed +rather as a prototype for the future than a multi-platform configuration tool. + +`nn' was initially based on the Dave Watson's `nngridr'. Over time, there were +numerous improvements of this original version. You may see comparison of +performance of a rather old version `nn' with `nngridr' in + + Quanfu Fan, Alon Efrat, Vladlen Koltun, Shankar Krishnan, and + Suresh Venkatasubramanian. Hardware-assisted Natural Neighbor Interpolation. + In Proc. 7th Workshop on Algorithm Engineering and Experiments (ALENEX), 2005. + +Note that the current version of `nn' outperforms the version tested in the +above paper both in terms of scalability and robustness. + + +2. To compile, run: + +configure +make +(make install) + +For a few quick tests, run: + +make tests +./nnphi_test +./nnai_test +./ht_test + +From v2.0.0 some MPI code has been added to delaunay.c and nnbathy.c. To compile +it change "MPI = no" in the makefile to "MPI = yes". To test MPI code run +"make mpi" and "make cmp" in examples/2. + +3. Apart from the `nn' library, this code contains `nnbathy' -- a simple +interpolation utility/example based on `nn'. + +Initially, `nnbathy' has been introduced to provide an example of using library +functions from `nn'. Later, evolving along with user requests, it became a quite +functional command-line utility. + + +4. There are a number of examples of using `nnbathy' in "examples" directory: + +examples/1 -- reconstruction of Franke test function +examples/2 -- reconstruction of bathymetry from sonar data +examples/3 -- performance on degenerate data +examples/4 -- reconstruction of topography from satellite altimeter data +examples/5 -- reconstruction of topography from digitised contours +examples/6 -- reconstruction of topography from digitised contours + +These examples has been put up over a a number of years. Some of them used to +cause failures for the older versions of the code. See examples/README for +descriptions. + + +5. Calling `nn' code from a client code is supposed to be straightforward and +simple. Have a look at nnbathy.c for an example. For a basic description of +structures and functions available from `nn', have a look at "nn.h". + + +6. Acknowledgments: + +This library uses the following public code/algorithms: + 1. `triangle' by Jonathan Richard Shewchuk -- for Delaunay triangulation; + 2. Dave Watson's algorithm for Sibson interpolation; + 3. Belikov and Semenov's formulas for non-Sibsonian interpolation. + +Many thanks to David A. Paige, Maciek Sieczka, Nick Cahill and John Gerschwitz +for submitting bug reports and/or data for examples. + + +7. Please acknowledge the use of this software in publications. + +Good luck! +Pavel Sakov diff --git a/autoarray/util/nn/src/nn/config.h.in b/autoarray/util/nn/src/nn/config.h.in index 6a4831062..b3a3b8d22 100644 --- a/autoarray/util/nn/src/nn/config.h.in +++ b/autoarray/util/nn/src/nn/config.h.in @@ -1,8 +1,8 @@ -#if defined(_WIN32) -#define isnan _isnan -#define copysign _copysign -#define rint (int) -#define M_PI 3.14159265358979323846 -#define TRILIBRARY -#define NO_TIMER -#endif +#if defined(_WIN32) +#define isnan _isnan +#define copysign _copysign +#define rint (int) +#define M_PI 3.14159265358979323846 +#define TRILIBRARY +#define NO_TIMER +#endif diff --git a/autoarray/util/nn/src/nn/configure b/autoarray/util/nn/src/nn/configure index f3158eabb..8ad7ff204 100644 --- a/autoarray/util/nn/src/nn/configure +++ b/autoarray/util/nn/src/nn/configure @@ -1,4839 +1,4839 @@ -#! /bin/sh -# Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69. -# -# -# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. -# -# -# This configure script is free software; the Free Software Foundation -# gives unlimited permission to copy, distribute and modify it. -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - -as_nl=' -' -export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -# Prefer a ksh shell builtin over an external printf program on Solaris, -# but without wasting forks for bash or zsh. -if test -z "$BASH_VERSION$ZSH_VERSION" \ - && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='print -r --' - as_echo_n='print -rn --' -elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in #( - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -as_myself= -case $0 in #(( - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - -# Unset variables that we do not need and which cause bugs (e.g. in -# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" -# suppresses any "Segmentation fault" message there. '((' could -# trigger a bug in pdksh 5.2.14. -for as_var in BASH_ENV ENV MAIL MAILPATH -do eval test x\${$as_var+set} = xset \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -# Use a proper internal environment variable to ensure we don't fall - # into an infinite loop, continuously re-executing ourselves. - if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then - _as_can_reexec=no; export _as_can_reexec; - # We cannot yet assume a decent shell, so we have to provide a -# neutralization value for shells without unset; and this also -# works around shells that cannot unset nonexistent variables. -# Preserve -v and -x to the replacement shell. -BASH_ENV=/dev/null -ENV=/dev/null -(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV -case $- in # (((( - *v*x* | *x*v* ) as_opts=-vx ;; - *v* ) as_opts=-v ;; - *x* ) as_opts=-x ;; - * ) as_opts= ;; -esac -exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} -# Admittedly, this is quite paranoid, since all the known shells bail -# out after a failed `exec'. -$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 -as_fn_exit 255 - fi - # We don't want this to propagate to other subprocesses. - { _as_can_reexec=; unset _as_can_reexec;} -if test "x$CONFIG_SHELL" = x; then - as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which - # is contrary to our usage. Disable this feature. - alias -g '\${1+\"\$@\"}'='\"\$@\"' - setopt NO_GLOB_SUBST -else - case \`(set -o) 2>/dev/null\` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi -" - as_required="as_fn_return () { (exit \$1); } -as_fn_success () { as_fn_return 0; } -as_fn_failure () { as_fn_return 1; } -as_fn_ret_success () { return 0; } -as_fn_ret_failure () { return 1; } - -exitcode=0 -as_fn_success || { exitcode=1; echo as_fn_success failed.; } -as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } -as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } -as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } -if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : - -else - exitcode=1; echo positional parameters were not saved. -fi -test x\$exitcode = x0 || exit 1 -test -x / || exit 1" - as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO - as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO - eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && - test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 -test \$(( 1 + 1 )) = 2 || exit 1" - if (eval "$as_required") 2>/dev/null; then : - as_have_required=yes -else - as_have_required=no -fi - if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : - -else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -as_found=false -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - as_found=: - case $as_dir in #( - /*) - for as_base in sh bash ksh sh5; do - # Try only shells that exist, to save several forks. - as_shell=$as_dir/$as_base - if { test -f "$as_shell" || test -f "$as_shell.exe"; } && - { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : - CONFIG_SHELL=$as_shell as_have_required=yes - if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : - break 2 -fi -fi - done;; - esac - as_found=false -done -$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && - { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : - CONFIG_SHELL=$SHELL as_have_required=yes -fi; } -IFS=$as_save_IFS - - - if test "x$CONFIG_SHELL" != x; then : - export CONFIG_SHELL - # We cannot yet assume a decent shell, so we have to provide a -# neutralization value for shells without unset; and this also -# works around shells that cannot unset nonexistent variables. -# Preserve -v and -x to the replacement shell. -BASH_ENV=/dev/null -ENV=/dev/null -(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV -case $- in # (((( - *v*x* | *x*v* ) as_opts=-vx ;; - *v* ) as_opts=-v ;; - *x* ) as_opts=-x ;; - * ) as_opts= ;; -esac -exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} -# Admittedly, this is quite paranoid, since all the known shells bail -# out after a failed `exec'. -$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 -exit 255 -fi - - if test x$as_have_required = xno; then : - $as_echo "$0: This script requires a shell more modern than all" - $as_echo "$0: the shells that I found on your system." - if test x${ZSH_VERSION+set} = xset ; then - $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" - $as_echo "$0: be upgraded to zsh 4.3.4 or later." - else - $as_echo "$0: Please tell bug-autoconf@gnu.org about your system, -$0: including any error possibly output before this -$0: message. Then install a modern shell, or manually run -$0: the script under such a shell if you do have one." - fi - exit 1 -fi -fi -fi -SHELL=${CONFIG_SHELL-/bin/sh} -export SHELL -# Unset more variables known to interfere with behavior of common tools. -CLICOLOR_FORCE= GREP_OPTIONS= -unset CLICOLOR_FORCE GREP_OPTIONS - -## --------------------- ## -## M4sh Shell Functions. ## -## --------------------- ## -# as_fn_unset VAR -# --------------- -# Portably unset VAR. -as_fn_unset () -{ - { eval $1=; unset $1;} -} -as_unset=as_fn_unset - -# as_fn_set_status STATUS -# ----------------------- -# Set $? to STATUS, without forking. -as_fn_set_status () -{ - return $1 -} # as_fn_set_status - -# as_fn_exit STATUS -# ----------------- -# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. -as_fn_exit () -{ - set +e - as_fn_set_status $1 - exit $1 -} # as_fn_exit - -# as_fn_mkdir_p -# ------------- -# Create "$as_dir" as a directory, including parents if necessary. -as_fn_mkdir_p () -{ - - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || eval $as_mkdir_p || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" - - -} # as_fn_mkdir_p - -# as_fn_executable_p FILE -# ----------------------- -# Test if FILE is an executable regular file. -as_fn_executable_p () -{ - test -f "$1" && test -x "$1" -} # as_fn_executable_p -# as_fn_append VAR VALUE -# ---------------------- -# Append the text in VALUE to the end of the definition contained in VAR. Take -# advantage of any shell optimizations that allow amortized linear growth over -# repeated appends, instead of the typical quadratic growth present in naive -# implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : - eval 'as_fn_append () - { - eval $1+=\$2 - }' -else - as_fn_append () - { - eval $1=\$$1\$2 - } -fi # as_fn_append - -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - - -# as_fn_error STATUS ERROR [LINENO LOG_FD] -# ---------------------------------------- -# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are -# provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with STATUS, using 1 if that was 0. -as_fn_error () -{ - as_status=$1; test $as_status -eq 0 && as_status=1 - if test "$4"; then - as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 - fi - $as_echo "$as_me: error: $2" >&2 - as_fn_exit $as_status -} # as_fn_error - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - - - as_lineno_1=$LINENO as_lineno_1a=$LINENO - as_lineno_2=$LINENO as_lineno_2a=$LINENO - eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && - test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { - # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) - sed -n ' - p - /[$]LINENO/= - ' <$as_myself | - sed ' - s/[$]LINENO.*/&-/ - t lineno - b - :lineno - N - :loop - s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ - t loop - s/-\n.*// - ' >$as_me.lineno && - chmod +x "$as_me.lineno" || - { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } - - # If we had to re-execute with $CONFIG_SHELL, we're ensured to have - # already done that, so ensure we don't try to do so again and fall - # in an infinite loop. This has already happened in practice. - _as_can_reexec=no; export _as_can_reexec - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensitive to this). - . "./$as_me.lineno" - # Exit status is that of the last command. - exit -} - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in #((((( --n*) - case `echo 'xy\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - xy) ECHO_C='\c';; - *) echo `echo ksh88 bug on AIX 6.1` > /dev/null - ECHO_T=' ';; - esac;; -*) - ECHO_N='-n';; -esac - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -pR'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -pR' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -pR' - fi -else - as_ln_s='cp -pR' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - -if mkdir -p . 2>/dev/null; then - as_mkdir_p='mkdir -p "$as_dir"' -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_test_x='test -x' -as_executable_p=as_fn_executable_p - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -test -n "$DJDIR" || exec 7<&0 &1 - -# Name of the host. -# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, -# so uname gets run too. -ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` - -# -# Initializations. -# -ac_default_prefix=/usr/local -ac_clean_files= -ac_config_libobj_dir=. -LIBOBJS= -cross_compiling=no -subdirs= -MFLAGS= -MAKEFLAGS= - -# Identity of this package. -PACKAGE_NAME= -PACKAGE_TARNAME= -PACKAGE_VERSION= -PACKAGE_STRING= -PACKAGE_BUGREPORT= -PACKAGE_URL= - -ac_unique_file="CUSTOMISE" -# Factoring default headers for most tests. -ac_includes_default="\ -#include -#ifdef HAVE_SYS_TYPES_H -# include -#endif -#ifdef HAVE_SYS_STAT_H -# include -#endif -#ifdef STDC_HEADERS -# include -# include -#else -# ifdef HAVE_STDLIB_H -# include -# endif -#endif -#ifdef HAVE_STRING_H -# if !defined STDC_HEADERS && defined HAVE_MEMORY_H -# include -# endif -# include -#endif -#ifdef HAVE_STRINGS_H -# include -#endif -#ifdef HAVE_INTTYPES_H -# include -#endif -#ifdef HAVE_STDINT_H -# include -#endif -#ifdef HAVE_UNISTD_H -# include -#endif" - -ac_subst_vars='LTLIBOBJS -LIBOBJS -CFLAGS_VULNERABLE -CFLAGS_TRIANGLE -EGREP -GREP -CPP -AR -INSTALL_DATA -INSTALL_SCRIPT -INSTALL_PROGRAM -OBJEXT -EXEEXT -ac_ct_CC -CPPFLAGS -LDFLAGS -CFLAGS -CC -target_alias -host_alias -build_alias -LIBS -ECHO_T -ECHO_N -ECHO_C -DEFS -mandir -localedir -libdir -psdir -pdfdir -dvidir -htmldir -infodir -docdir -oldincludedir -includedir -localstatedir -sharedstatedir -sysconfdir -datadir -datarootdir -libexecdir -sbindir -bindir -program_transform_name -prefix -exec_prefix -PACKAGE_URL -PACKAGE_BUGREPORT -PACKAGE_STRING -PACKAGE_VERSION -PACKAGE_TARNAME -PACKAGE_NAME -PATH_SEPARATOR -SHELL' -ac_subst_files='' -ac_user_opts=' -enable_option_checking -' - ac_precious_vars='build_alias -host_alias -target_alias -CC -CFLAGS -LDFLAGS -LIBS -CPPFLAGS -CPP' - - -# Initialize some variables set by options. -ac_init_help= -ac_init_version=false -ac_unrecognized_opts= -ac_unrecognized_sep= -# The variables have the same names as the options, with -# dashes changed to underlines. -cache_file=/dev/null -exec_prefix=NONE -no_create= -no_recursion= -prefix=NONE -program_prefix=NONE -program_suffix=NONE -program_transform_name=s,x,x, -silent= -site= -srcdir= -verbose= -x_includes=NONE -x_libraries=NONE - -# Installation directory options. -# These are left unexpanded so users can "make install exec_prefix=/foo" -# and all the variables that are supposed to be based on exec_prefix -# by default will actually change. -# Use braces instead of parens because sh, perl, etc. also accept them. -# (The list follows the same order as the GNU Coding Standards.) -bindir='${exec_prefix}/bin' -sbindir='${exec_prefix}/sbin' -libexecdir='${exec_prefix}/libexec' -datarootdir='${prefix}/share' -datadir='${datarootdir}' -sysconfdir='${prefix}/etc' -sharedstatedir='${prefix}/com' -localstatedir='${prefix}/var' -includedir='${prefix}/include' -oldincludedir='/usr/include' -docdir='${datarootdir}/doc/${PACKAGE}' -infodir='${datarootdir}/info' -htmldir='${docdir}' -dvidir='${docdir}' -pdfdir='${docdir}' -psdir='${docdir}' -libdir='${exec_prefix}/lib' -localedir='${datarootdir}/locale' -mandir='${datarootdir}/man' - -ac_prev= -ac_dashdash= -for ac_option -do - # If the previous option needs an argument, assign it. - if test -n "$ac_prev"; then - eval $ac_prev=\$ac_option - ac_prev= - continue - fi - - case $ac_option in - *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; - *=) ac_optarg= ;; - *) ac_optarg=yes ;; - esac - - # Accept the important Cygnus configure options, so we can diagnose typos. - - case $ac_dashdash$ac_option in - --) - ac_dashdash=yes ;; - - -bindir | --bindir | --bindi | --bind | --bin | --bi) - ac_prev=bindir ;; - -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) - bindir=$ac_optarg ;; - - -build | --build | --buil | --bui | --bu) - ac_prev=build_alias ;; - -build=* | --build=* | --buil=* | --bui=* | --bu=*) - build_alias=$ac_optarg ;; - - -cache-file | --cache-file | --cache-fil | --cache-fi \ - | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) - ac_prev=cache_file ;; - -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ - | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) - cache_file=$ac_optarg ;; - - --config-cache | -C) - cache_file=config.cache ;; - - -datadir | --datadir | --datadi | --datad) - ac_prev=datadir ;; - -datadir=* | --datadir=* | --datadi=* | --datad=*) - datadir=$ac_optarg ;; - - -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ - | --dataroo | --dataro | --datar) - ac_prev=datarootdir ;; - -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ - | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) - datarootdir=$ac_optarg ;; - - -disable-* | --disable-*) - ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid feature name: $ac_useropt" - ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"enable_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval enable_$ac_useropt=no ;; - - -docdir | --docdir | --docdi | --doc | --do) - ac_prev=docdir ;; - -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) - docdir=$ac_optarg ;; - - -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) - ac_prev=dvidir ;; - -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) - dvidir=$ac_optarg ;; - - -enable-* | --enable-*) - ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid feature name: $ac_useropt" - ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"enable_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval enable_$ac_useropt=\$ac_optarg ;; - - -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ - | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ - | --exec | --exe | --ex) - ac_prev=exec_prefix ;; - -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ - | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ - | --exec=* | --exe=* | --ex=*) - exec_prefix=$ac_optarg ;; - - -gas | --gas | --ga | --g) - # Obsolete; use --with-gas. - with_gas=yes ;; - - -help | --help | --hel | --he | -h) - ac_init_help=long ;; - -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) - ac_init_help=recursive ;; - -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) - ac_init_help=short ;; - - -host | --host | --hos | --ho) - ac_prev=host_alias ;; - -host=* | --host=* | --hos=* | --ho=*) - host_alias=$ac_optarg ;; - - -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) - ac_prev=htmldir ;; - -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ - | --ht=*) - htmldir=$ac_optarg ;; - - -includedir | --includedir | --includedi | --included | --include \ - | --includ | --inclu | --incl | --inc) - ac_prev=includedir ;; - -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ - | --includ=* | --inclu=* | --incl=* | --inc=*) - includedir=$ac_optarg ;; - - -infodir | --infodir | --infodi | --infod | --info | --inf) - ac_prev=infodir ;; - -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) - infodir=$ac_optarg ;; - - -libdir | --libdir | --libdi | --libd) - ac_prev=libdir ;; - -libdir=* | --libdir=* | --libdi=* | --libd=*) - libdir=$ac_optarg ;; - - -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ - | --libexe | --libex | --libe) - ac_prev=libexecdir ;; - -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ - | --libexe=* | --libex=* | --libe=*) - libexecdir=$ac_optarg ;; - - -localedir | --localedir | --localedi | --localed | --locale) - ac_prev=localedir ;; - -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) - localedir=$ac_optarg ;; - - -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst | --locals) - ac_prev=localstatedir ;; - -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) - localstatedir=$ac_optarg ;; - - -mandir | --mandir | --mandi | --mand | --man | --ma | --m) - ac_prev=mandir ;; - -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) - mandir=$ac_optarg ;; - - -nfp | --nfp | --nf) - # Obsolete; use --without-fp. - with_fp=no ;; - - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c | -n) - no_create=yes ;; - - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) - no_recursion=yes ;; - - -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ - | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ - | --oldin | --oldi | --old | --ol | --o) - ac_prev=oldincludedir ;; - -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ - | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ - | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) - oldincludedir=$ac_optarg ;; - - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - prefix=$ac_optarg ;; - - -program-prefix | --program-prefix | --program-prefi | --program-pref \ - | --program-pre | --program-pr | --program-p) - ac_prev=program_prefix ;; - -program-prefix=* | --program-prefix=* | --program-prefi=* \ - | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) - program_prefix=$ac_optarg ;; - - -program-suffix | --program-suffix | --program-suffi | --program-suff \ - | --program-suf | --program-su | --program-s) - ac_prev=program_suffix ;; - -program-suffix=* | --program-suffix=* | --program-suffi=* \ - | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) - program_suffix=$ac_optarg ;; - - -program-transform-name | --program-transform-name \ - | --program-transform-nam | --program-transform-na \ - | --program-transform-n | --program-transform- \ - | --program-transform | --program-transfor \ - | --program-transfo | --program-transf \ - | --program-trans | --program-tran \ - | --progr-tra | --program-tr | --program-t) - ac_prev=program_transform_name ;; - -program-transform-name=* | --program-transform-name=* \ - | --program-transform-nam=* | --program-transform-na=* \ - | --program-transform-n=* | --program-transform-=* \ - | --program-transform=* | --program-transfor=* \ - | --program-transfo=* | --program-transf=* \ - | --program-trans=* | --program-tran=* \ - | --progr-tra=* | --program-tr=* | --program-t=*) - program_transform_name=$ac_optarg ;; - - -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) - ac_prev=pdfdir ;; - -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) - pdfdir=$ac_optarg ;; - - -psdir | --psdir | --psdi | --psd | --ps) - ac_prev=psdir ;; - -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) - psdir=$ac_optarg ;; - - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - silent=yes ;; - - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) - ac_prev=sbindir ;; - -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ - | --sbi=* | --sb=*) - sbindir=$ac_optarg ;; - - -sharedstatedir | --sharedstatedir | --sharedstatedi \ - | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ - | --sharedst | --shareds | --shared | --share | --shar \ - | --sha | --sh) - ac_prev=sharedstatedir ;; - -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ - | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ - | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ - | --sha=* | --sh=*) - sharedstatedir=$ac_optarg ;; - - -site | --site | --sit) - ac_prev=site ;; - -site=* | --site=* | --sit=*) - site=$ac_optarg ;; - - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - srcdir=$ac_optarg ;; - - -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ - | --syscon | --sysco | --sysc | --sys | --sy) - ac_prev=sysconfdir ;; - -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ - | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) - sysconfdir=$ac_optarg ;; - - -target | --target | --targe | --targ | --tar | --ta | --t) - ac_prev=target_alias ;; - -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) - target_alias=$ac_optarg ;; - - -v | -verbose | --verbose | --verbos | --verbo | --verb) - verbose=yes ;; - - -version | --version | --versio | --versi | --vers | -V) - ac_init_version=: ;; - - -with-* | --with-*) - ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid package name: $ac_useropt" - ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"with_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval with_$ac_useropt=\$ac_optarg ;; - - -without-* | --without-*) - ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - as_fn_error $? "invalid package name: $ac_useropt" - ac_useropt_orig=$ac_useropt - ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` - case $ac_user_opts in - *" -"with_$ac_useropt" -"*) ;; - *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" - ac_unrecognized_sep=', ';; - esac - eval with_$ac_useropt=no ;; - - --x) - # Obsolete; use --with-x. - with_x=yes ;; - - -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ - | --x-incl | --x-inc | --x-in | --x-i) - ac_prev=x_includes ;; - -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ - | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) - x_includes=$ac_optarg ;; - - -x-libraries | --x-libraries | --x-librarie | --x-librari \ - | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) - ac_prev=x_libraries ;; - -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ - | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) - x_libraries=$ac_optarg ;; - - -*) as_fn_error $? "unrecognized option: \`$ac_option' -Try \`$0 --help' for more information" - ;; - - *=*) - ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` - # Reject names that are not valid shell variable names. - case $ac_envvar in #( - '' | [0-9]* | *[!_$as_cr_alnum]* ) - as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; - esac - eval $ac_envvar=\$ac_optarg - export $ac_envvar ;; - - *) - # FIXME: should be removed in autoconf 3.0. - $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 - expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && - $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 - : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}" - ;; - - esac -done - -if test -n "$ac_prev"; then - ac_option=--`echo $ac_prev | sed 's/_/-/g'` - as_fn_error $? "missing argument to $ac_option" -fi - -if test -n "$ac_unrecognized_opts"; then - case $enable_option_checking in - no) ;; - fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; - *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; - esac -fi - -# Check all directory arguments for consistency. -for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ - datadir sysconfdir sharedstatedir localstatedir includedir \ - oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ - libdir localedir mandir -do - eval ac_val=\$$ac_var - # Remove trailing slashes. - case $ac_val in - */ ) - ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` - eval $ac_var=\$ac_val;; - esac - # Be sure to have absolute directory names. - case $ac_val in - [\\/$]* | ?:[\\/]* ) continue;; - NONE | '' ) case $ac_var in *prefix ) continue;; esac;; - esac - as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" -done - -# There might be people who depend on the old broken behavior: `$host' -# used to hold the argument of --host etc. -# FIXME: To remove some day. -build=$build_alias -host=$host_alias -target=$target_alias - -# FIXME: To remove some day. -if test "x$host_alias" != x; then - if test "x$build_alias" = x; then - cross_compiling=maybe - elif test "x$build_alias" != "x$host_alias"; then - cross_compiling=yes - fi -fi - -ac_tool_prefix= -test -n "$host_alias" && ac_tool_prefix=$host_alias- - -test "$silent" = yes && exec 6>/dev/null - - -ac_pwd=`pwd` && test -n "$ac_pwd" && -ac_ls_di=`ls -di .` && -ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || - as_fn_error $? "working directory cannot be determined" -test "X$ac_ls_di" = "X$ac_pwd_ls_di" || - as_fn_error $? "pwd does not report name of working directory" - - -# Find the source files, if location was not specified. -if test -z "$srcdir"; then - ac_srcdir_defaulted=yes - # Try the directory containing this script, then the parent directory. - ac_confdir=`$as_dirname -- "$as_myself" || -$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_myself" : 'X\(//\)[^/]' \| \ - X"$as_myself" : 'X\(//\)$' \| \ - X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_myself" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - srcdir=$ac_confdir - if test ! -r "$srcdir/$ac_unique_file"; then - srcdir=.. - fi -else - ac_srcdir_defaulted=no -fi -if test ! -r "$srcdir/$ac_unique_file"; then - test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." - as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" -fi -ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" -ac_abs_confdir=`( - cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" - pwd)` -# When building in place, set srcdir=. -if test "$ac_abs_confdir" = "$ac_pwd"; then - srcdir=. -fi -# Remove unnecessary trailing slashes from srcdir. -# Double slashes in file names in object file debugging info -# mess up M-x gdb in Emacs. -case $srcdir in -*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; -esac -for ac_var in $ac_precious_vars; do - eval ac_env_${ac_var}_set=\${${ac_var}+set} - eval ac_env_${ac_var}_value=\$${ac_var} - eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} - eval ac_cv_env_${ac_var}_value=\$${ac_var} -done - -# -# Report the --help message. -# -if test "$ac_init_help" = "long"; then - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat <<_ACEOF -\`configure' configures this package to adapt to many kinds of systems. - -Usage: $0 [OPTION]... [VAR=VALUE]... - -To assign environment variables (e.g., CC, CFLAGS...), specify them as -VAR=VALUE. See below for descriptions of some of the useful variables. - -Defaults for the options are specified in brackets. - -Configuration: - -h, --help display this help and exit - --help=short display options specific to this package - --help=recursive display the short help of all the included packages - -V, --version display version information and exit - -q, --quiet, --silent do not print \`checking ...' messages - --cache-file=FILE cache test results in FILE [disabled] - -C, --config-cache alias for \`--cache-file=config.cache' - -n, --no-create do not create output files - --srcdir=DIR find the sources in DIR [configure dir or \`..'] - -Installation directories: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] - --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [PREFIX] - -By default, \`make install' will install all the files in -\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify -an installation prefix other than \`$ac_default_prefix' using \`--prefix', -for instance \`--prefix=\$HOME'. - -For better control, use the options below. - -Fine tuning of the installation directories: - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] - --sysconfdir=DIR read-only single-machine data [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] - --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --libdir=DIR object code libraries [EPREFIX/lib] - --includedir=DIR C header files [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc [/usr/include] - --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] - --datadir=DIR read-only architecture-independent data [DATAROOTDIR] - --infodir=DIR info documentation [DATAROOTDIR/info] - --localedir=DIR locale-dependent data [DATAROOTDIR/locale] - --mandir=DIR man documentation [DATAROOTDIR/man] - --docdir=DIR documentation root [DATAROOTDIR/doc/PACKAGE] - --htmldir=DIR html documentation [DOCDIR] - --dvidir=DIR dvi documentation [DOCDIR] - --pdfdir=DIR pdf documentation [DOCDIR] - --psdir=DIR ps documentation [DOCDIR] -_ACEOF - - cat <<\_ACEOF -_ACEOF -fi - -if test -n "$ac_init_help"; then - - cat <<\_ACEOF - -Some influential environment variables: - CC C compiler command - CFLAGS C compiler flags - LDFLAGS linker flags, e.g. -L if you have libraries in a - nonstandard directory - LIBS libraries to pass to the linker, e.g. -l - CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I if - you have headers in a nonstandard directory - CPP C preprocessor - -Use these variables to override the choices made by `configure' or to help -it to find libraries and programs with nonstandard names/locations. - -Report bugs to the package provider. -_ACEOF -ac_status=$? -fi - -if test "$ac_init_help" = "recursive"; then - # If there are subdirs, report their specific --help. - for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue - test -d "$ac_dir" || - { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || - continue - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - cd "$ac_dir" || { ac_status=$?; continue; } - # Check for guested configure. - if test -f "$ac_srcdir/configure.gnu"; then - echo && - $SHELL "$ac_srcdir/configure.gnu" --help=recursive - elif test -f "$ac_srcdir/configure"; then - echo && - $SHELL "$ac_srcdir/configure" --help=recursive - else - $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 - fi || ac_status=$? - cd "$ac_pwd" || { ac_status=$?; break; } - done -fi - -test -n "$ac_init_help" && exit $ac_status -if $ac_init_version; then - cat <<\_ACEOF -configure -generated by GNU Autoconf 2.69 - -Copyright (C) 2012 Free Software Foundation, Inc. -This configure script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it. -_ACEOF - exit -fi - -## ------------------------ ## -## Autoconf initialization. ## -## ------------------------ ## - -# ac_fn_c_try_compile LINENO -# -------------------------- -# Try to compile conftest.$ac_ext, and return whether this succeeded. -ac_fn_c_try_compile () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - rm -f conftest.$ac_objext - if { { ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_compile") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - grep -v '^ *+' conftest.err >conftest.er1 - cat conftest.er1 >&5 - mv -f conftest.er1 conftest.err - fi - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then : - ac_retval=0 -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=1 -fi - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_try_compile - -# ac_fn_c_try_cpp LINENO -# ---------------------- -# Try to preprocess conftest.$ac_ext, and return whether this succeeded. -ac_fn_c_try_cpp () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - if { { ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - grep -v '^ *+' conftest.err >conftest.er1 - cat conftest.er1 >&5 - mv -f conftest.er1 conftest.err - fi - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } > conftest.i && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then : - ac_retval=0 -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=1 -fi - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_try_cpp - -# ac_fn_c_try_run LINENO -# ---------------------- -# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes -# that executables *can* be run. -ac_fn_c_try_run () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - if { { ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' - { { case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; }; then : - ac_retval=0 -else - $as_echo "$as_me: program exited with status $ac_status" >&5 - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=$ac_status -fi - rm -rf conftest.dSYM conftest_ipa8_conftest.oo - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_try_run - -# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES -# ------------------------------------------------------- -# Tests whether HEADER exists, giving a warning if it cannot be compiled using -# the include files in INCLUDES and setting the cache variable VAR -# accordingly. -ac_fn_c_check_header_mongrel () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - if eval \${$3+:} false; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -$as_echo_n "checking for $2... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -fi -eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -else - # Is the header compilable? -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 -$as_echo_n "checking $2 usability... " >&6; } -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -#include <$2> -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_header_compiler=yes -else - ac_header_compiler=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 -$as_echo "$ac_header_compiler" >&6; } - -# Is the header present? -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 -$as_echo_n "checking $2 presence... " >&6; } -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <$2> -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - ac_header_preproc=yes -else - ac_header_preproc=no -fi -rm -f conftest.err conftest.i conftest.$ac_ext -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 -$as_echo "$ac_header_preproc" >&6; } - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( - yes:no: ) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 -$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 -$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} - ;; - no:yes:* ) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 -$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 -$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 -$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 -$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 -$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} - ;; -esac - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -$as_echo_n "checking for $2... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -else - eval "$3=\$ac_header_compiler" -fi -eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -fi - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - -} # ac_fn_c_check_header_mongrel - -# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES -# ------------------------------------------------------- -# Tests whether HEADER exists and can be compiled using the include files in -# INCLUDES, setting the cache variable VAR accordingly. -ac_fn_c_check_header_compile () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -$as_echo_n "checking for $2... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -#include <$2> -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - eval "$3=yes" -else - eval "$3=no" -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - -} # ac_fn_c_check_header_compile - -# ac_fn_c_try_link LINENO -# ----------------------- -# Try to link conftest.$ac_ext, and return whether this succeeded. -ac_fn_c_try_link () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - rm -f conftest.$ac_objext conftest$ac_exeext - if { { ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - grep -v '^ *+' conftest.err >conftest.er1 - cat conftest.er1 >&5 - mv -f conftest.er1 conftest.err - fi - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - test -x conftest$ac_exeext - }; then : - ac_retval=0 -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_retval=1 -fi - # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information - # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would - # interfere with the next link command; also delete a directory that is - # left behind by Apple's compiler. We do this before executing the actions. - rm -rf conftest.dSYM conftest_ipa8_conftest.oo - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - as_fn_set_status $ac_retval - -} # ac_fn_c_try_link - -# ac_fn_c_check_func LINENO FUNC VAR -# ---------------------------------- -# Tests whether FUNC exists, setting the cache variable VAR accordingly -ac_fn_c_check_func () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -$as_echo_n "checking for $2... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -/* Define $2 to an innocuous variant, in case declares $2. - For example, HP-UX 11i declares gettimeofday. */ -#define $2 innocuous_$2 - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $2 (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef $2 - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char $2 (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined __stub_$2 || defined __stub___$2 -choke me -#endif - -int -main () -{ -return $2 (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - eval "$3=yes" -else - eval "$3=no" -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - -} # ac_fn_c_check_func -cat >config.log <<_ACEOF -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by $as_me, which was -generated by GNU Autoconf 2.69. Invocation command line was - - $ $0 $@ - -_ACEOF -exec 5>>config.log -{ -cat <<_ASUNAME -## --------- ## -## Platform. ## -## --------- ## - -hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` - -/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` -/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` -/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` -/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` - -_ASUNAME - -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - $as_echo "PATH: $as_dir" - done -IFS=$as_save_IFS - -} >&5 - -cat >&5 <<_ACEOF - - -## ----------- ## -## Core tests. ## -## ----------- ## - -_ACEOF - - -# Keep a trace of the command line. -# Strip out --no-create and --no-recursion so they do not pile up. -# Strip out --silent because we don't want to record it for future runs. -# Also quote any args containing shell meta-characters. -# Make two passes to allow for proper duplicate-argument suppression. -ac_configure_args= -ac_configure_args0= -ac_configure_args1= -ac_must_keep_next=false -for ac_pass in 1 2 -do - for ac_arg - do - case $ac_arg in - -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - continue ;; - *\'*) - ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - case $ac_pass in - 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; - 2) - as_fn_append ac_configure_args1 " '$ac_arg'" - if test $ac_must_keep_next = true; then - ac_must_keep_next=false # Got value, back to normal. - else - case $ac_arg in - *=* | --config-cache | -C | -disable-* | --disable-* \ - | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ - | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ - | -with-* | --with-* | -without-* | --without-* | --x) - case "$ac_configure_args0 " in - "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; - esac - ;; - -* ) ac_must_keep_next=true ;; - esac - fi - as_fn_append ac_configure_args " '$ac_arg'" - ;; - esac - done -done -{ ac_configure_args0=; unset ac_configure_args0;} -{ ac_configure_args1=; unset ac_configure_args1;} - -# When interrupted or exit'd, cleanup temporary files, and complete -# config.log. We remove comments because anyway the quotes in there -# would cause problems or look ugly. -# WARNING: Use '\'' to represent an apostrophe within the trap. -# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. -trap 'exit_status=$? - # Save into config.log some information that might help in debugging. - { - echo - - $as_echo "## ---------------- ## -## Cache variables. ## -## ---------------- ##" - echo - # The following way of writing the cache mishandles newlines in values, -( - for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do - eval ac_val=\$$ac_var - case $ac_val in #( - *${as_nl}*) - case $ac_var in #( - *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 -$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; - esac - case $ac_var in #( - _ | IFS | as_nl) ;; #( - BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( - *) { eval $ac_var=; unset $ac_var;} ;; - esac ;; - esac - done - (set) 2>&1 | - case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( - *${as_nl}ac_space=\ *) - sed -n \ - "s/'\''/'\''\\\\'\'''\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" - ;; #( - *) - sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" - ;; - esac | - sort -) - echo - - $as_echo "## ----------------- ## -## Output variables. ## -## ----------------- ##" - echo - for ac_var in $ac_subst_vars - do - eval ac_val=\$$ac_var - case $ac_val in - *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; - esac - $as_echo "$ac_var='\''$ac_val'\''" - done | sort - echo - - if test -n "$ac_subst_files"; then - $as_echo "## ------------------- ## -## File substitutions. ## -## ------------------- ##" - echo - for ac_var in $ac_subst_files - do - eval ac_val=\$$ac_var - case $ac_val in - *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; - esac - $as_echo "$ac_var='\''$ac_val'\''" - done | sort - echo - fi - - if test -s confdefs.h; then - $as_echo "## ----------- ## -## confdefs.h. ## -## ----------- ##" - echo - cat confdefs.h - echo - fi - test "$ac_signal" != 0 && - $as_echo "$as_me: caught signal $ac_signal" - $as_echo "$as_me: exit $exit_status" - } >&5 - rm -f core *.core core.conftest.* && - rm -f -r conftest* confdefs* conf$$* $ac_clean_files && - exit $exit_status -' 0 -for ac_signal in 1 2 13 15; do - trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal -done -ac_signal=0 - -# confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -f -r conftest* confdefs.h - -$as_echo "/* confdefs.h */" > confdefs.h - -# Predefined preprocessor variables. - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_NAME "$PACKAGE_NAME" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_TARNAME "$PACKAGE_TARNAME" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_VERSION "$PACKAGE_VERSION" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_STRING "$PACKAGE_STRING" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" -_ACEOF - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_URL "$PACKAGE_URL" -_ACEOF - - -# Let the site file select an alternate cache file if it wants to. -# Prefer an explicitly selected file to automatically selected ones. -ac_site_file1=NONE -ac_site_file2=NONE -if test -n "$CONFIG_SITE"; then - # We do not want a PATH search for config.site. - case $CONFIG_SITE in #(( - -*) ac_site_file1=./$CONFIG_SITE;; - */*) ac_site_file1=$CONFIG_SITE;; - *) ac_site_file1=./$CONFIG_SITE;; - esac -elif test "x$prefix" != xNONE; then - ac_site_file1=$prefix/share/config.site - ac_site_file2=$prefix/etc/config.site -else - ac_site_file1=$ac_default_prefix/share/config.site - ac_site_file2=$ac_default_prefix/etc/config.site -fi -for ac_site_file in "$ac_site_file1" "$ac_site_file2" -do - test "x$ac_site_file" = xNONE && continue - if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 -$as_echo "$as_me: loading site script $ac_site_file" >&6;} - sed 's/^/| /' "$ac_site_file" >&5 - . "$ac_site_file" \ - || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "failed to load site script $ac_site_file -See \`config.log' for more details" "$LINENO" 5; } - fi -done - -if test -r "$cache_file"; then - # Some versions of bash will fail to source /dev/null (special files - # actually), so we avoid doing that. DJGPP emulates it as a regular file. - if test /dev/null != "$cache_file" && test -f "$cache_file"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 -$as_echo "$as_me: loading cache $cache_file" >&6;} - case $cache_file in - [\\/]* | ?:[\\/]* ) . "$cache_file";; - *) . "./$cache_file";; - esac - fi -else - { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 -$as_echo "$as_me: creating cache $cache_file" >&6;} - >$cache_file -fi - -# Check that the precious variables saved in the cache have kept the same -# value. -ac_cache_corrupted=false -for ac_var in $ac_precious_vars; do - eval ac_old_set=\$ac_cv_env_${ac_var}_set - eval ac_new_set=\$ac_env_${ac_var}_set - eval ac_old_val=\$ac_cv_env_${ac_var}_value - eval ac_new_val=\$ac_env_${ac_var}_value - case $ac_old_set,$ac_new_set in - set,) - { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,set) - { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 -$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,);; - *) - if test "x$ac_old_val" != "x$ac_new_val"; then - # differences in whitespace do not lead to failure. - ac_old_val_w=`echo x $ac_old_val` - ac_new_val_w=`echo x $ac_new_val` - if test "$ac_old_val_w" != "$ac_new_val_w"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 -$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} - ac_cache_corrupted=: - else - { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 -$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} - eval $ac_var=\$ac_old_val - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 -$as_echo "$as_me: former value: \`$ac_old_val'" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 -$as_echo "$as_me: current value: \`$ac_new_val'" >&2;} - fi;; - esac - # Pass precious variables to config.status. - if test "$ac_new_set" = set; then - case $ac_new_val in - *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; - *) ac_arg=$ac_var=$ac_new_val ;; - esac - case " $ac_configure_args " in - *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. - *) as_fn_append ac_configure_args " '$ac_arg'" ;; - esac - fi -done -if $ac_cache_corrupted; then - { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 -$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} - as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 -fi -## -------------------- ## -## Main body of script. ## -## -------------------- ## - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - -ac_config_headers="$ac_config_headers config.h" - - - - - - - - - if test -r CUSTOMISE; then - . ./CUSTOMISE - fi - - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. -set dummy ${ac_tool_prefix}gcc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}gcc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "gcc", so it can be a program name with args. -set dummy gcc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="gcc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 -$as_echo "$ac_ct_CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - if test "x$ac_ct_CC" = x; then - CC="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - CC=$ac_ct_CC - fi -else - CC="$ac_cv_prog_CC" -fi - -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. -set dummy ${ac_tool_prefix}cc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}cc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - fi -fi -if test -z "$CC"; then - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - ac_prog_rejected=no -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then - ac_prog_rejected=yes - continue - fi - ac_cv_prog_CC="cc" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -if test $ac_prog_rejected = yes; then - # We found a bogon in the path, so make sure we never use it. - set dummy $ac_cv_prog_CC - shift - if test $# != 0; then - # We chose a different compiler from the bogus one. - # However, it has the same basename, so the bogon will be chosen - # first if we set CC to just the basename; use the full file name. - shift - ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" - fi -fi -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - -fi -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - for ac_prog in cl.exe - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 -$as_echo "$CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$CC" && break - done -fi -if test -z "$CC"; then - ac_ct_CC=$CC - for ac_prog in cl.exe -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_ac_ct_CC+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 -$as_echo "$ac_ct_CC" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$ac_ct_CC" && break -done - - if test "x$ac_ct_CC" = x; then - CC="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - CC=$ac_ct_CC - fi -fi - -fi - - -test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "no acceptable C compiler found in \$PATH -See \`config.log' for more details" "$LINENO" 5; } - -# Provide some information about the compiler. -$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 -set X $ac_compile -ac_compiler=$2 -for ac_option in --version -v -V -qversion; do - { { ac_try="$ac_compiler $ac_option >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_compiler $ac_option >&5") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - sed '10a\ -... rest of stderr output deleted ... - 10q' conftest.err >conftest.er1 - cat conftest.er1 >&5 - fi - rm -f conftest.er1 conftest.err - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } -done - -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" -# Try to create an executable without -o first, disregard a.out. -# It will help us diagnose broken compilers, and finding out an intuition -# of exeext. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 -$as_echo_n "checking whether the C compiler works... " >&6; } -ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` - -# The possible output files: -ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" - -ac_rmfiles= -for ac_file in $ac_files -do - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; - * ) ac_rmfiles="$ac_rmfiles $ac_file";; - esac -done -rm -f $ac_rmfiles - -if { { ac_try="$ac_link_default" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link_default") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then : - # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. -# So ignore a value of `no', otherwise this would lead to `EXEEXT = no' -# in a Makefile. We should not override ac_cv_exeext if it was cached, -# so that the user can short-circuit this test for compilers unknown to -# Autoconf. -for ac_file in $ac_files '' -do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) - ;; - [ab].out ) - # We found the default executable, but exeext='' is most - # certainly right. - break;; - *.* ) - if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; - then :; else - ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - fi - # We set ac_cv_exeext here because the later test for it is not - # safe: cross compilers may not add the suffix if given an `-o' - # argument, so we may need to know it at that point already. - # Even if this section looks crufty: it has the advantage of - # actually working. - break;; - * ) - break;; - esac -done -test "$ac_cv_exeext" = no && ac_cv_exeext= - -else - ac_file='' -fi -if test -z "$ac_file"; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -$as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error 77 "C compiler cannot create executables -See \`config.log' for more details" "$LINENO" 5; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 -$as_echo_n "checking for C compiler default output file name... " >&6; } -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 -$as_echo "$ac_file" >&6; } -ac_exeext=$ac_cv_exeext - -rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out -ac_clean_files=$ac_clean_files_save -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 -$as_echo_n "checking for suffix of executables... " >&6; } -if { { ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then : - # If both `conftest.exe' and `conftest' are `present' (well, observable) -# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will -# work properly (i.e., refer to `conftest.exe'), while it won't with -# `rm'. -for ac_file in conftest.exe conftest conftest.*; do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; - *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - break;; - * ) break;; - esac -done -else - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details" "$LINENO" 5; } -fi -rm -f conftest conftest$ac_cv_exeext -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 -$as_echo "$ac_cv_exeext" >&6; } - -rm -f conftest.$ac_ext -EXEEXT=$ac_cv_exeext -ac_exeext=$EXEEXT -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -int -main () -{ -FILE *f = fopen ("conftest.out", "w"); - return ferror (f) || fclose (f) != 0; - - ; - return 0; -} -_ACEOF -ac_clean_files="$ac_clean_files conftest.out" -# Check that the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 -$as_echo_n "checking whether we are cross compiling... " >&6; } -if test "$cross_compiling" != yes; then - { { ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } - if { ac_try='./conftest$ac_cv_exeext' - { { case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; }; then - cross_compiling=no - else - if test "$cross_compiling" = maybe; then - cross_compiling=yes - else - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details" "$LINENO" 5; } - fi - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 -$as_echo "$cross_compiling" >&6; } - -rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out -ac_clean_files=$ac_clean_files_save -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 -$as_echo_n "checking for suffix of object files... " >&6; } -if ${ac_cv_objext+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.o conftest.obj -if { { ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_compile") 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; then : - for ac_file in conftest.o conftest.obj conftest.*; do - test -f "$ac_file" || continue; - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; - *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` - break;; - esac -done -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "cannot compute suffix of object files: cannot compile -See \`config.log' for more details" "$LINENO" 5; } -fi -rm -f conftest.$ac_cv_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 -$as_echo "$ac_cv_objext" >&6; } -OBJEXT=$ac_cv_objext -ac_objext=$OBJEXT -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 -$as_echo_n "checking whether we are using the GNU C compiler... " >&6; } -if ${ac_cv_c_compiler_gnu+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ -#ifndef __GNUC__ - choke me -#endif - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_compiler_gnu=yes -else - ac_compiler_gnu=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -ac_cv_c_compiler_gnu=$ac_compiler_gnu - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 -$as_echo "$ac_cv_c_compiler_gnu" >&6; } -if test $ac_compiler_gnu = yes; then - GCC=yes -else - GCC= -fi -ac_test_CFLAGS=${CFLAGS+set} -ac_save_CFLAGS=$CFLAGS -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 -$as_echo_n "checking whether $CC accepts -g... " >&6; } -if ${ac_cv_prog_cc_g+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_save_c_werror_flag=$ac_c_werror_flag - ac_c_werror_flag=yes - ac_cv_prog_cc_g=no - CFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_prog_cc_g=yes -else - CFLAGS="" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - -else - ac_c_werror_flag=$ac_save_c_werror_flag - CFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_prog_cc_g=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ac_c_werror_flag=$ac_save_c_werror_flag -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 -$as_echo "$ac_cv_prog_cc_g" >&6; } -if test "$ac_test_CFLAGS" = set; then - CFLAGS=$ac_save_CFLAGS -elif test $ac_cv_prog_cc_g = yes; then - if test "$GCC" = yes; then - CFLAGS="-g -O2" - else - CFLAGS="-g" - fi -else - if test "$GCC" = yes; then - CFLAGS="-O2" - else - CFLAGS= - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 -$as_echo_n "checking for $CC option to accept ISO C89... " >&6; } -if ${ac_cv_prog_cc_c89+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_cv_prog_cc_c89=no -ac_save_CC=$CC -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -struct stat; -/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ -struct buf { int x; }; -FILE * (*rcsopen) (struct buf *, struct stat *, int); -static char *e (p, i) - char **p; - int i; -{ - return p[i]; -} -static char *f (char * (*g) (char **, int), char **p, ...) -{ - char *s; - va_list v; - va_start (v,p); - s = g (p, va_arg (v,int)); - va_end (v); - return s; -} - -/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has - function prototypes and stuff, but not '\xHH' hex character constants. - These don't provoke an error unfortunately, instead are silently treated - as 'x'. The following induces an error, until -std is added to get - proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an - array size at least. It's necessary to write '\x00'==0 to get something - that's true only with -std. */ -int osf4_cc_array ['\x00' == 0 ? 1 : -1]; - -/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters - inside strings and character constants. */ -#define FOO(x) 'x' -int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; - -int test (int i, double x); -struct s1 {int (*f) (int a);}; -struct s2 {int (*f) (double a);}; -int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); -int argc; -char **argv; -int -main () -{ -return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; - ; - return 0; -} -_ACEOF -for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ - -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" -do - CC="$ac_save_CC $ac_arg" - if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_prog_cc_c89=$ac_arg -fi -rm -f core conftest.err conftest.$ac_objext - test "x$ac_cv_prog_cc_c89" != "xno" && break -done -rm -f conftest.$ac_ext -CC=$ac_save_CC - -fi -# AC_CACHE_VAL -case "x$ac_cv_prog_cc_c89" in - x) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 -$as_echo "none needed" >&6; } ;; - xno) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 -$as_echo "unsupported" >&6; } ;; - *) - CC="$CC $ac_cv_prog_cc_c89" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 -$as_echo "$ac_cv_prog_cc_c89" >&6; } ;; -esac -if test "x$ac_cv_prog_cc_c89" != xno; then : - -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -ac_aux_dir= -for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do - if test -f "$ac_dir/install-sh"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install-sh -c" - break - elif test -f "$ac_dir/install.sh"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install.sh -c" - break - elif test -f "$ac_dir/shtool"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/shtool install -c" - break - fi -done -if test -z "$ac_aux_dir"; then - as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5 -fi - -# These three variables are undocumented and unsupported, -# and are intended to be withdrawn in a future Autoconf release. -# They can cause serious problems if a builder's source tree is in a directory -# whose full name contains unusual characters. -ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. -ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. -ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. - - -# Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AmigaOS /C/install, which installs bootblocks on floppy discs -# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag -# AFS /usr/afsws/bin/install, which mishandles nonexistent args -# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# OS/2's system install, which has a completely different semantic -# ./install, which can be erroneously created by make from ./install.sh. -# Reject install programs that cannot install multiple files. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 -$as_echo_n "checking for a BSD-compatible install... " >&6; } -if test -z "$INSTALL"; then -if ${ac_cv_path_install+:} false; then : - $as_echo_n "(cached) " >&6 -else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - # Account for people who put trailing slashes in PATH elements. -case $as_dir/ in #(( - ./ | .// | /[cC]/* | \ - /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ - ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ - /usr/ucb/* ) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then - if test $ac_prog = install && - grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - elif test $ac_prog = install && - grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # program-specific install script used by HP pwplus--don't use. - : - else - rm -rf conftest.one conftest.two conftest.dir - echo one > conftest.one - echo two > conftest.two - mkdir conftest.dir - if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && - test -s conftest.one && test -s conftest.two && - test -s conftest.dir/conftest.one && - test -s conftest.dir/conftest.two - then - ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" - break 3 - fi - fi - fi - done - done - ;; -esac - - done -IFS=$as_save_IFS - -rm -rf conftest.one conftest.two conftest.dir - -fi - if test "${ac_cv_path_install+set}" = set; then - INSTALL=$ac_cv_path_install - else - # As a last resort, use the slow shell script. Don't cache a - # value for INSTALL within a source directory, because that will - # break other packages using the cache if that directory is - # removed, or if the value is a relative name. - INSTALL=$ac_install_sh - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 -$as_echo "$INSTALL" >&6; } - -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' - -test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' - -test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' - -# Extract the first word of "ar", so it can be a program name with args. -set dummy ar; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if ${ac_cv_prog_AR+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$AR"; then - ac_cv_prog_AR="$AR" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_AR="ar" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_AR" && ac_cv_prog_AR=":" -fi -fi -AR=$ac_cv_prog_AR -if test -n "$AR"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 -$as_echo "$AR" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 -$as_echo_n "checking how to run the C preprocessor... " >&6; } -# On Suns, sometimes $CPP names a directory. -if test -n "$CPP" && test -d "$CPP"; then - CPP= -fi -if test -z "$CPP"; then - if ${ac_cv_prog_CPP+:} false; then : - $as_echo_n "(cached) " >&6 -else - # Double quotes because CPP needs to be expanded - for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" - do - ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - -else - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.i conftest.$ac_ext - - # OK, works on sane cases. Now check whether nonexistent headers - # can be detected and how. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - # Broken: success on invalid input. -continue -else - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.i conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.i conftest.err conftest.$ac_ext -if $ac_preproc_ok; then : - break -fi - - done - ac_cv_prog_CPP=$CPP - -fi - CPP=$ac_cv_prog_CPP -else - ac_cv_prog_CPP=$CPP -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 -$as_echo "$CPP" >&6; } -ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - -else - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.i conftest.$ac_ext - - # OK, works on sane cases. Now check whether nonexistent headers - # can be detected and how. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - # Broken: success on invalid input. -continue -else - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.i conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.i conftest.err conftest.$ac_ext -if $ac_preproc_ok; then : - -else - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error $? "C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details" "$LINENO" 5; } -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 -$as_echo_n "checking for grep that handles long lines and -e... " >&6; } -if ${ac_cv_path_GREP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if test -z "$GREP"; then - ac_path_GREP_found=false - # Loop through the user's path and test for each of PROGNAME-LIST - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in grep ggrep; do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_GREP" || continue -# Check for GNU ac_path_GREP and select it if it is found. - # Check for GNU $ac_path_GREP -case `"$ac_path_GREP" --version 2>&1` in -*GNU*) - ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; -*) - ac_count=0 - $as_echo_n 0123456789 >"conftest.in" - while : - do - cat "conftest.in" "conftest.in" >"conftest.tmp" - mv "conftest.tmp" "conftest.in" - cp "conftest.in" "conftest.nl" - $as_echo 'GREP' >> "conftest.nl" - "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break - diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - as_fn_arith $ac_count + 1 && ac_count=$as_val - if test $ac_count -gt ${ac_path_GREP_max-0}; then - # Best one so far, save it but keep looking for a better one - ac_cv_path_GREP="$ac_path_GREP" - ac_path_GREP_max=$ac_count - fi - # 10*(2^10) chars as input seems more than enough - test $ac_count -gt 10 && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out;; -esac - - $ac_path_GREP_found && break 3 - done - done - done -IFS=$as_save_IFS - if test -z "$ac_cv_path_GREP"; then - as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 - fi -else - ac_cv_path_GREP=$GREP -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 -$as_echo "$ac_cv_path_GREP" >&6; } - GREP="$ac_cv_path_GREP" - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 -$as_echo_n "checking for egrep... " >&6; } -if ${ac_cv_path_EGREP+:} false; then : - $as_echo_n "(cached) " >&6 -else - if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 - then ac_cv_path_EGREP="$GREP -E" - else - if test -z "$EGREP"; then - ac_path_EGREP_found=false - # Loop through the user's path and test for each of PROGNAME-LIST - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in egrep; do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" - as_fn_executable_p "$ac_path_EGREP" || continue -# Check for GNU ac_path_EGREP and select it if it is found. - # Check for GNU $ac_path_EGREP -case `"$ac_path_EGREP" --version 2>&1` in -*GNU*) - ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; -*) - ac_count=0 - $as_echo_n 0123456789 >"conftest.in" - while : - do - cat "conftest.in" "conftest.in" >"conftest.tmp" - mv "conftest.tmp" "conftest.in" - cp "conftest.in" "conftest.nl" - $as_echo 'EGREP' >> "conftest.nl" - "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break - diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - as_fn_arith $ac_count + 1 && ac_count=$as_val - if test $ac_count -gt ${ac_path_EGREP_max-0}; then - # Best one so far, save it but keep looking for a better one - ac_cv_path_EGREP="$ac_path_EGREP" - ac_path_EGREP_max=$ac_count - fi - # 10*(2^10) chars as input seems more than enough - test $ac_count -gt 10 && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out;; -esac - - $ac_path_EGREP_found && break 3 - done - done - done -IFS=$as_save_IFS - if test -z "$ac_cv_path_EGREP"; then - as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 - fi -else - ac_cv_path_EGREP=$EGREP -fi - - fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 -$as_echo "$ac_cv_path_EGREP" >&6; } - EGREP="$ac_cv_path_EGREP" - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 -$as_echo_n "checking for ANSI C header files... " >&6; } -if ${ac_cv_header_stdc+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#include -#include - -int -main () -{ - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_header_stdc=yes -else - ac_cv_header_stdc=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then : - -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then : - -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then : - : -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include -#include -#if ((' ' & 0x0FF) == 0x020) -# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) -#else -# define ISLOWER(c) \ - (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) -# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -#endif - -#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) -int -main () -{ - int i; - for (i = 0; i < 256; i++) - if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) - return 2; - return 0; -} -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - -else - ac_cv_header_stdc=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext -fi - -fi -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 -$as_echo "$ac_cv_header_stdc" >&6; } -if test $ac_cv_header_stdc = yes; then - -$as_echo "#define STDC_HEADERS 1" >>confdefs.h - -fi - -# On IRIX 5.3, sys/types and inttypes.h are conflicting. -for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ - inttypes.h stdint.h unistd.h -do : - as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` -ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default -" -if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - -for ac_header in math.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "math.h" "ac_cv_header_math_h" "$ac_includes_default" -if test "x$ac_cv_header_math_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_MATH_H 1 -_ACEOF - -else - as_fn_error $? "unable to find header" "$LINENO" 5 -fi - -done - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lm" >&5 -$as_echo_n "checking for main in -lm... " >&6; } -if ${ac_cv_lib_m_main+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lm $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - -int -main () -{ -return main (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_m_main=yes -else - ac_cv_lib_m_main=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_m_main" >&5 -$as_echo "$ac_cv_lib_m_main" >&6; } -if test "x$ac_cv_lib_m_main" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBM 1 -_ACEOF - - LIBS="-lm $LIBS" - -else - as_fn_error $? "unable to find library" "$LINENO" 5 -fi -ac_cv_lib_m=ac_cv_lib_m_main - - -for ac_func in realloc strtod strtok hypot -do : - as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" -if eval test \"x\$"$as_ac_var"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF - -else - as_fn_error $? "unable to find function" "$LINENO" 5 -fi -done - - -OLD_CFLAGS=$CFLAGS -CFLAGS="$CFLAGS -fno-force-mem" -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for -fno-force-mem option" >&5 -$as_echo_n "checking for -fno-force-mem option... " >&6; } -if ${ac_cv_fnoforcemem+:} false; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ -char a; - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_cv_fnoforcemem=yes -else - ac_cv_fnoforcemem=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi - -echo $ac_cv_fnoforcemem -if test $ac_cv_fnoforcemem = no; then - CFLAGS=$OLD_CFLAGS -fi - -if test "$ac_cv_fnoforcemem" = yes; then - CFLAGS_VULNERABLE="$CFLAGS_VULNERABLE -fno-force-mem" -fi - - - - - - - -ac_config_files="$ac_config_files makefile" - -cat >confcache <<\_ACEOF -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs, see configure's option --config-cache. -# It is not useful on other systems. If it contains results you don't -# want to keep, you may remove or edit it. -# -# config.status only pays attention to the cache file if you give it -# the --recheck option to rerun configure. -# -# `ac_cv_env_foo' variables (set or unset) will be overridden when -# loading this file, other *unset* `ac_cv_foo' will be assigned the -# following values. - -_ACEOF - -# The following way of writing the cache mishandles newlines in values, -# but we know of no workaround that is simple, portable, and efficient. -# So, we kill variables containing newlines. -# Ultrix sh set writes to stderr and can't be redirected directly, -# and sets the high bit in the cache file unless we assign to the vars. -( - for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do - eval ac_val=\$$ac_var - case $ac_val in #( - *${as_nl}*) - case $ac_var in #( - *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 -$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; - esac - case $ac_var in #( - _ | IFS | as_nl) ;; #( - BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( - *) { eval $ac_var=; unset $ac_var;} ;; - esac ;; - esac - done - - (set) 2>&1 | - case $as_nl`(ac_space=' '; set) 2>&1` in #( - *${as_nl}ac_space=\ *) - # `set' does not quote correctly, so add quotes: double-quote - # substitution turns \\\\ into \\, and sed turns \\ into \. - sed -n \ - "s/'/'\\\\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" - ;; #( - *) - # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" - ;; - esac | - sort -) | - sed ' - /^ac_cv_env_/b end - t clear - :clear - s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ - t end - s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ - :end' >>confcache -if diff "$cache_file" confcache >/dev/null 2>&1; then :; else - if test -w "$cache_file"; then - if test "x$cache_file" != "x/dev/null"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 -$as_echo "$as_me: updating cache $cache_file" >&6;} - if test ! -f "$cache_file" || test -h "$cache_file"; then - cat confcache >"$cache_file" - else - case $cache_file in #( - */* | ?:*) - mv -f confcache "$cache_file"$$ && - mv -f "$cache_file"$$ "$cache_file" ;; #( - *) - mv -f confcache "$cache_file" ;; - esac - fi - fi - else - { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 -$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} - fi -fi -rm -f confcache - -test "x$prefix" = xNONE && prefix=$ac_default_prefix -# Let make expand exec_prefix. -test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - -DEFS=-DHAVE_CONFIG_H - -ac_libobjs= -ac_ltlibobjs= -U= -for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue - # 1. Remove the extension, and $U if already installed. - ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' - ac_i=`$as_echo "$ac_i" | sed "$ac_script"` - # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR - # will be set to the directory where LIBOBJS objects are built. - as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" - as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' -done -LIBOBJS=$ac_libobjs - -LTLIBOBJS=$ac_ltlibobjs - - - -: "${CONFIG_STATUS=./config.status}" -ac_write_fail=0 -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 -$as_echo "$as_me: creating $CONFIG_STATUS" >&6;} -as_write_fail=0 -cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 -#! $SHELL -# Generated by $as_me. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false - -SHELL=\${CONFIG_SHELL-$SHELL} -export SHELL -_ASEOF -cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 -## -------------------- ## -## M4sh Initialization. ## -## -------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in #( - *posix*) : - set -o posix ;; #( - *) : - ;; -esac -fi - - -as_nl=' -' -export as_nl -# Printing a long string crashes Solaris 7 /usr/bin/printf. -as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo -as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -# Prefer a ksh shell builtin over an external printf program on Solaris, -# but without wasting forks for bash or zsh. -if test -z "$BASH_VERSION$ZSH_VERSION" \ - && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='print -r --' - as_echo_n='print -rn --' -elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then - as_echo='printf %s\n' - as_echo_n='printf %s' -else - if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then - as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' - as_echo_n='/usr/ucb/echo -n' - else - as_echo_body='eval expr "X$1" : "X\\(.*\\)"' - as_echo_n_body='eval - arg=$1; - case $arg in #( - *"$as_nl"*) - expr "X$arg" : "X\\(.*\\)$as_nl"; - arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; - esac; - expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" - ' - export as_echo_n_body - as_echo_n='sh -c $as_echo_n_body as_echo' - fi - export as_echo_body - as_echo='sh -c $as_echo_body as_echo' -fi - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - PATH_SEPARATOR=: - (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { - (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || - PATH_SEPARATOR=';' - } -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -as_myself= -case $0 in #(( - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break - done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - exit 1 -fi - -# Unset variables that we do not need and which cause bugs (e.g. in -# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" -# suppresses any "Segmentation fault" message there. '((' could -# trigger a bug in pdksh 5.2.14. -for as_var in BASH_ENV ENV MAIL MAILPATH -do eval test x\${$as_var+set} = xset \ - && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -LC_ALL=C -export LC_ALL -LANGUAGE=C -export LANGUAGE - -# CDPATH. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - - -# as_fn_error STATUS ERROR [LINENO LOG_FD] -# ---------------------------------------- -# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are -# provided, also output the error to LOG_FD, referencing LINENO. Then exit the -# script with STATUS, using 1 if that was 0. -as_fn_error () -{ - as_status=$1; test $as_status -eq 0 && as_status=1 - if test "$4"; then - as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 - fi - $as_echo "$as_me: error: $2" >&2 - as_fn_exit $as_status -} # as_fn_error - - -# as_fn_set_status STATUS -# ----------------------- -# Set $? to STATUS, without forking. -as_fn_set_status () -{ - return $1 -} # as_fn_set_status - -# as_fn_exit STATUS -# ----------------- -# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. -as_fn_exit () -{ - set +e - as_fn_set_status $1 - exit $1 -} # as_fn_exit - -# as_fn_unset VAR -# --------------- -# Portably unset VAR. -as_fn_unset () -{ - { eval $1=; unset $1;} -} -as_unset=as_fn_unset -# as_fn_append VAR VALUE -# ---------------------- -# Append the text in VALUE to the end of the definition contained in VAR. Take -# advantage of any shell optimizations that allow amortized linear growth over -# repeated appends, instead of the typical quadratic growth present in naive -# implementations. -if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : - eval 'as_fn_append () - { - eval $1+=\$2 - }' -else - as_fn_append () - { - eval $1=\$$1\$2 - } -fi # as_fn_append - -# as_fn_arith ARG... -# ------------------ -# Perform arithmetic evaluation on the ARGs, and store the result in the -# global $as_val. Take advantage of shells that can avoid forks. The arguments -# must be portable across $(()) and expr. -if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : - eval 'as_fn_arith () - { - as_val=$(( $* )) - }' -else - as_fn_arith () - { - as_val=`expr "$@" || test $? -eq 1` - } -fi # as_fn_arith - - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in #((((( --n*) - case `echo 'xy\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - xy) ECHO_C='\c';; - *) echo `echo ksh88 bug on AIX 6.1` > /dev/null - ECHO_T=' ';; - esac;; -*) - ECHO_N='-n';; -esac - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir 2>/dev/null -fi -if (echo >conf$$.file) 2>/dev/null; then - if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -pR'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -pR' - elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln - else - as_ln_s='cp -pR' - fi -else - as_ln_s='cp -pR' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - - -# as_fn_mkdir_p -# ------------- -# Create "$as_dir" as a directory, including parents if necessary. -as_fn_mkdir_p () -{ - - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || eval $as_mkdir_p || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" - - -} # as_fn_mkdir_p -if mkdir -p . 2>/dev/null; then - as_mkdir_p='mkdir -p "$as_dir"' -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - - -# as_fn_executable_p FILE -# ----------------------- -# Test if FILE is an executable regular file. -as_fn_executable_p () -{ - test -f "$1" && test -x "$1" -} # as_fn_executable_p -as_test_x='test -x' -as_executable_p=as_fn_executable_p - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -exec 6>&1 -## ----------------------------------- ## -## Main body of $CONFIG_STATUS script. ## -## ----------------------------------- ## -_ASEOF -test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -# Save the log message, to keep $0 and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. -ac_log=" -This file was extended by $as_me, which was -generated by GNU Autoconf 2.69. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -on `(hostname || uname -n) 2>/dev/null | sed 1q` -" - -_ACEOF - -case $ac_config_files in *" -"*) set x $ac_config_files; shift; ac_config_files=$*;; -esac - -case $ac_config_headers in *" -"*) set x $ac_config_headers; shift; ac_config_headers=$*;; -esac - - -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -# Files that config.status was made for. -config_files="$ac_config_files" -config_headers="$ac_config_headers" - -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -ac_cs_usage="\ -\`$as_me' instantiates files and other configuration actions -from templates according to the current configuration. Unless the files -and actions are specified as TAGs, all are instantiated by default. - -Usage: $0 [OPTION]... [TAG]... - - -h, --help print this help, then exit - -V, --version print version number and configuration settings, then exit - --config print configuration, then exit - -q, --quiet, --silent - do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Report bugs to the package provider." - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" -ac_cs_version="\\ -config.status -configured by $0, generated by GNU Autoconf 2.69, - with options \\"\$ac_cs_config\\" - -Copyright (C) 2012 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." - -ac_pwd='$ac_pwd' -srcdir='$srcdir' -INSTALL='$INSTALL' -test -n "\$AWK" || AWK=awk -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -# The default lists apply if the user does not specify any file. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=?*) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; - --*=) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg= - ac_shift=: - ;; - *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - $as_echo "$ac_cs_version"; exit ;; - --config | --confi | --conf | --con | --co | --c ) - $as_echo "$ac_cs_config"; exit ;; - --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - '') as_fn_error $? "missing file argument" ;; - esac - as_fn_append CONFIG_FILES " '$ac_optarg'" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - case $ac_optarg in - *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - as_fn_append CONFIG_HEADERS " '$ac_optarg'" - ac_need_defaults=false;; - --he | --h) - # Conflict between --help and --header - as_fn_error $? "ambiguous option: \`$1' -Try \`$0 --help' for more information.";; - --help | --hel | -h ) - $as_echo "$ac_cs_usage"; exit ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) as_fn_error $? "unrecognized option: \`$1' -Try \`$0 --help' for more information." ;; - - *) as_fn_append ac_config_targets " $1" - ac_need_defaults=false ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -if \$ac_cs_recheck; then - set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion - shift - \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 - CONFIG_SHELL='$SHELL' - export CONFIG_SHELL - exec "\$@" -fi - -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX - $as_echo "$ac_log" -} >&5 - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 - -# Handling of arguments. -for ac_config_target in $ac_config_targets -do - case $ac_config_target in - "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - "makefile") CONFIG_FILES="$CONFIG_FILES makefile" ;; - - *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; - esac -done - - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason against having it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Hook for its removal unless debugging. -# Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. -$debug || -{ - tmp= ac_tmp= - trap 'exit_status=$? - : "${ac_tmp:=$tmp}" - { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status -' 0 - trap 'as_fn_exit 1' 1 2 13 15 -} -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -d "$tmp" -} || -{ - tmp=./conf$$-$RANDOM - (umask 077 && mkdir "$tmp") -} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 -ac_tmp=$tmp - -# Set up the scripts for CONFIG_FILES section. -# No need to generate them if there are no CONFIG_FILES. -# This happens for instance with `./config.status config.h'. -if test -n "$CONFIG_FILES"; then - - -ac_cr=`echo X | tr X '\015'` -# On cygwin, bash can eat \r inside `` if the user requested igncr. -# But we know of no other shell where ac_cr would be empty at this -# point, so we can use a bashism as a fallback. -if test "x$ac_cr" = x; then - eval ac_cr=\$\'\\r\' -fi -ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` -if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then - ac_cs_awk_cr='\\r' -else - ac_cs_awk_cr=$ac_cr -fi - -echo 'BEGIN {' >"$ac_tmp/subs1.awk" && -_ACEOF - - -{ - echo "cat >conf$$subs.awk <<_ACEOF" && - echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && - echo "_ACEOF" -} >conf$$subs.sh || - as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 -ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` -ac_delim='%!_!# ' -for ac_last_try in false false false false false :; do - . ./conf$$subs.sh || - as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 - - ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` - if test $ac_delim_n = $ac_delim_num; then - break - elif $ac_last_try; then - as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 - else - ac_delim="$ac_delim!$ac_delim _$ac_delim!! " - fi -done -rm -f conf$$subs.sh - -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK && -_ACEOF -sed -n ' -h -s/^/S["/; s/!.*/"]=/ -p -g -s/^[^!]*!// -:repl -t repl -s/'"$ac_delim"'$// -t delim -:nl -h -s/\(.\{148\}\)..*/\1/ -t more1 -s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ -p -n -b repl -:more1 -s/["\\]/\\&/g; s/^/"/; s/$/"\\/ -p -g -s/.\{148\}// -t nl -:delim -h -s/\(.\{148\}\)..*/\1/ -t more2 -s/["\\]/\\&/g; s/^/"/; s/$/"/ -p -b -:more2 -s/["\\]/\\&/g; s/^/"/; s/$/"\\/ -p -g -s/.\{148\}// -t delim -' >$CONFIG_STATUS || ac_write_fail=1 -rm -f conf$$subs.awk -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -_ACAWK -cat >>"\$ac_tmp/subs1.awk" <<_ACAWK && - for (key in S) S_is_set[key] = 1 - FS = "" - -} -{ - line = $ 0 - nfields = split(line, field, "@") - substed = 0 - len = length(field[1]) - for (i = 2; i < nfields; i++) { - key = field[i] - keylen = length(key) - if (S_is_set[key]) { - value = S[key] - line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) - len += length(value) + length(field[++i]) - substed = 1 - } else - len += 1 + keylen - } - - print line -} - -_ACAWK -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then - sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" -else - cat -fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ - || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 -_ACEOF - -# VPATH may cause trouble with some makes, so we remove sole $(srcdir), -# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and -# trailing colons and then remove the whole line if VPATH becomes empty -# (actually we leave an empty line to preserve line numbers). -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{ -h -s/// -s/^/:/ -s/[ ]*$/:/ -s/:\$(srcdir):/:/g -s/:\${srcdir}:/:/g -s/:@srcdir@:/:/g -s/^:*// -s/:*$// -x -s/\(=[ ]*\).*/\1/ -G -s/\n// -s/^[^=]*=[ ]*$// -}' -fi - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -fi # test -n "$CONFIG_FILES" - -# Set up the scripts for CONFIG_HEADERS section. -# No need to generate them if there are no CONFIG_HEADERS. -# This happens for instance with `./config.status Makefile'. -if test -n "$CONFIG_HEADERS"; then -cat >"$ac_tmp/defines.awk" <<\_ACAWK || -BEGIN { -_ACEOF - -# Transform confdefs.h into an awk script `defines.awk', embedded as -# here-document in config.status, that substitutes the proper values into -# config.h.in to produce config.h. - -# Create a delimiter string that does not exist in confdefs.h, to ease -# handling of long lines. -ac_delim='%!_!# ' -for ac_last_try in false false :; do - ac_tt=`sed -n "/$ac_delim/p" confdefs.h` - if test -z "$ac_tt"; then - break - elif $ac_last_try; then - as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5 - else - ac_delim="$ac_delim!$ac_delim _$ac_delim!! " - fi -done - -# For the awk script, D is an array of macro values keyed by name, -# likewise P contains macro parameters if any. Preserve backslash -# newline sequences. - -ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* -sed -n ' -s/.\{148\}/&'"$ac_delim"'/g -t rset -:rset -s/^[ ]*#[ ]*define[ ][ ]*/ / -t def -d -:def -s/\\$// -t bsnl -s/["\\]/\\&/g -s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ -D["\1"]=" \3"/p -s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p -d -:bsnl -s/["\\]/\\&/g -s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ -D["\1"]=" \3\\\\\\n"\\/p -t cont -s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p -t cont -d -:cont -n -s/.\{148\}/&'"$ac_delim"'/g -t clear -:clear -s/\\$// -t bsnlc -s/["\\]/\\&/g; s/^/"/; s/$/"/p -d -:bsnlc -s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p -b cont -' >$CONFIG_STATUS || ac_write_fail=1 - -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 - for (key in D) D_is_set[key] = 1 - FS = "" -} -/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ { - line = \$ 0 - split(line, arg, " ") - if (arg[1] == "#") { - defundef = arg[2] - mac1 = arg[3] - } else { - defundef = substr(arg[1], 2) - mac1 = arg[2] - } - split(mac1, mac2, "(") #) - macro = mac2[1] - prefix = substr(line, 1, index(line, defundef) - 1) - if (D_is_set[macro]) { - # Preserve the white space surrounding the "#". - print prefix "define", macro P[macro] D[macro] - next - } else { - # Replace #undef with comments. This is necessary, for example, - # in the case of _POSIX_SOURCE, which is predefined and required - # on some systems where configure will not decide to define it. - if (defundef == "undef") { - print "/*", prefix defundef, macro, "*/" - next - } - } -} -{ print } -_ACAWK -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 - as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 -fi # test -n "$CONFIG_HEADERS" - - -eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS " -shift -for ac_tag -do - case $ac_tag in - :[FHLC]) ac_mode=$ac_tag; continue;; - esac - case $ac_mode$ac_tag in - :[FHL]*:*);; - :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; - :[FH]-) ac_tag=-:-;; - :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; - esac - ac_save_IFS=$IFS - IFS=: - set x $ac_tag - IFS=$ac_save_IFS - shift - ac_file=$1 - shift - - case $ac_mode in - :L) ac_source=$1;; - :[FH]) - ac_file_inputs= - for ac_f - do - case $ac_f in - -) ac_f="$ac_tmp/stdin";; - *) # Look for the file first in the build tree, then in the source tree - # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. - test -f "$ac_f" || - case $ac_f in - [\\/$]*) false;; - *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; - esac || - as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; - esac - case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac - as_fn_append ac_file_inputs " '$ac_f'" - done - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - configure_input='Generated from '` - $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' - `' by configure.' - if test x"$ac_file" != x-; then - configure_input="$ac_file. $configure_input" - { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 -$as_echo "$as_me: creating $ac_file" >&6;} - fi - # Neutralize special characters interpreted by sed in replacement strings. - case $configure_input in #( - *\&* | *\|* | *\\* ) - ac_sed_conf_input=`$as_echo "$configure_input" | - sed 's/[\\\\&|]/\\\\&/g'`;; #( - *) ac_sed_conf_input=$configure_input;; - esac - - case $ac_tag in - *:-:* | *:-) cat >"$ac_tmp/stdin" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; - esac - ;; - esac - - ac_dir=`$as_dirname -- "$ac_file" || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - as_dir="$ac_dir"; as_fn_mkdir_p - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - - case $ac_mode in - :F) - # - # CONFIG_FILE - # - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; - esac -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -# If the template does not know about datarootdir, expand it. -# FIXME: This hack should be removed a few years after 2.60. -ac_datarootdir_hack=; ac_datarootdir_seen= -ac_sed_dataroot=' -/datarootdir/ { - p - q -} -/@datadir@/p -/@docdir@/p -/@infodir@/p -/@localedir@/p -/@mandir@/p' -case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in -*datarootdir*) ac_datarootdir_seen=yes;; -*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 - ac_datarootdir_hack=' - s&@datadir@&$datadir&g - s&@docdir@&$docdir&g - s&@infodir@&$infodir&g - s&@localedir@&$localedir&g - s&@mandir@&$mandir&g - s&\\\${datarootdir}&$datarootdir&g' ;; -esac -_ACEOF - -# Neutralize VPATH when `$srcdir' = `.'. -# Shell code in configure.ac might set extrasub. -# FIXME: do we really want to maintain this feature? -cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -ac_sed_extra="$ac_vpsub -$extrasub -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s|@configure_input@|$ac_sed_conf_input|;t t -s&@top_builddir@&$ac_top_builddir_sub&;t t -s&@top_build_prefix@&$ac_top_build_prefix&;t t -s&@srcdir@&$ac_srcdir&;t t -s&@abs_srcdir@&$ac_abs_srcdir&;t t -s&@top_srcdir@&$ac_top_srcdir&;t t -s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t -s&@builddir@&$ac_builddir&;t t -s&@abs_builddir@&$ac_abs_builddir&;t t -s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -s&@INSTALL@&$ac_INSTALL&;t t -$ac_datarootdir_hack -" -eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ - >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - -test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ - "$ac_tmp/out"`; test -z "$ac_out"; } && - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&5 -$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined" >&2;} - - rm -f "$ac_tmp/stdin" - case $ac_file in - -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; - *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; - esac \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - ;; - :H) - # - # CONFIG_HEADER - # - if test x"$ac_file" != x-; then - { - $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" - } >"$ac_tmp/config.h" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then - { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 -$as_echo "$as_me: $ac_file is unchanged" >&6;} - else - rm -f "$ac_file" - mv "$ac_tmp/config.h" "$ac_file" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - fi - else - $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ - || as_fn_error $? "could not create -" "$LINENO" 5 - fi - ;; - - - esac - -done # for ac_tag - - -as_fn_exit 0 -_ACEOF -ac_clean_files=$ac_clean_files_save - -test $ac_write_fail = 0 || - as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 - - -# configure is writing to config.log, and then calls config.status. -# config.status does its own redirection, appending to config.log. -# Unfortunately, on DOS this fails, as config.log is still kept open -# by configure, so config.status won't be able to write to it; its -# output is simply discarded. So we exec the FD to /dev/null, -# effectively closing config.log, so it can be properly (re)opened and -# appended to by config.status. When coming back to configure, we -# need to make the FD available again. -if test "$no_create" != yes; then - ac_cs_success=: - ac_config_status_args= - test "$silent" = yes && - ac_config_status_args="$ac_config_status_args --quiet" - exec 5>/dev/null - $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false - exec 5>>config.log - # Use ||, not &&, to avoid exiting from the if with $? = 1, which - # would make configure fail if this is the last instruction. - $ac_cs_success || as_fn_exit 1 -fi -if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 -$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} -fi - +#! /bin/sh +# Guess values for system-dependent variables and create Makefiles. +# Generated by GNU Autoconf 2.69. +# +# +# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. +# +# +# This configure script is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac +fi + + +as_nl=' +' +export as_nl +# Printing a long string crashes Solaris 7 /usr/bin/printf. +as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='printf %s\n' + as_echo_n='printf %s' +else + if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then + as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' + as_echo_n='/usr/ucb/echo -n' + else + as_echo_body='eval expr "X$1" : "X\\(.*\\)"' + as_echo_n_body='eval + arg=$1; + case $arg in #( + *"$as_nl"*) + expr "X$arg" : "X\\(.*\\)$as_nl"; + arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; + esac; + expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" + ' + export as_echo_n_body + as_echo_n='sh -c $as_echo_n_body as_echo' + fi + export as_echo_body + as_echo='sh -c $as_echo_body as_echo' +fi + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + + +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +as_myself= +case $0 in #(( + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + exit 1 +fi + +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : +done +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +# Use a proper internal environment variable to ensure we don't fall + # into an infinite loop, continuously re-executing ourselves. + if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then + _as_can_reexec=no; export _as_can_reexec; + # We cannot yet assume a decent shell, so we have to provide a +# neutralization value for shells without unset; and this also +# works around shells that cannot unset nonexistent variables. +# Preserve -v and -x to the replacement shell. +BASH_ENV=/dev/null +ENV=/dev/null +(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV +case $- in # (((( + *v*x* | *x*v* ) as_opts=-vx ;; + *v* ) as_opts=-v ;; + *x* ) as_opts=-x ;; + * ) as_opts= ;; +esac +exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} +# Admittedly, this is quite paranoid, since all the known shells bail +# out after a failed `exec'. +$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 +as_fn_exit 255 + fi + # We don't want this to propagate to other subprocesses. + { _as_can_reexec=; unset _as_can_reexec;} +if test "x$CONFIG_SHELL" = x; then + as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which + # is contrary to our usage. Disable this feature. + alias -g '\${1+\"\$@\"}'='\"\$@\"' + setopt NO_GLOB_SUBST +else + case \`(set -o) 2>/dev/null\` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac +fi +" + as_required="as_fn_return () { (exit \$1); } +as_fn_success () { as_fn_return 0; } +as_fn_failure () { as_fn_return 1; } +as_fn_ret_success () { return 0; } +as_fn_ret_failure () { return 1; } + +exitcode=0 +as_fn_success || { exitcode=1; echo as_fn_success failed.; } +as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } +as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } +as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } +if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : + +else + exitcode=1; echo positional parameters were not saved. +fi +test x\$exitcode = x0 || exit 1 +test -x / || exit 1" + as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO + as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO + eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && + test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 +test \$(( 1 + 1 )) = 2 || exit 1" + if (eval "$as_required") 2>/dev/null; then : + as_have_required=yes +else + as_have_required=no +fi + if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : + +else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +as_found=false +for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + as_found=: + case $as_dir in #( + /*) + for as_base in sh bash ksh sh5; do + # Try only shells that exist, to save several forks. + as_shell=$as_dir/$as_base + if { test -f "$as_shell" || test -f "$as_shell.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : + CONFIG_SHELL=$as_shell as_have_required=yes + if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : + break 2 +fi +fi + done;; + esac + as_found=false +done +$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : + CONFIG_SHELL=$SHELL as_have_required=yes +fi; } +IFS=$as_save_IFS + + + if test "x$CONFIG_SHELL" != x; then : + export CONFIG_SHELL + # We cannot yet assume a decent shell, so we have to provide a +# neutralization value for shells without unset; and this also +# works around shells that cannot unset nonexistent variables. +# Preserve -v and -x to the replacement shell. +BASH_ENV=/dev/null +ENV=/dev/null +(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV +case $- in # (((( + *v*x* | *x*v* ) as_opts=-vx ;; + *v* ) as_opts=-v ;; + *x* ) as_opts=-x ;; + * ) as_opts= ;; +esac +exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} +# Admittedly, this is quite paranoid, since all the known shells bail +# out after a failed `exec'. +$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 +exit 255 +fi + + if test x$as_have_required = xno; then : + $as_echo "$0: This script requires a shell more modern than all" + $as_echo "$0: the shells that I found on your system." + if test x${ZSH_VERSION+set} = xset ; then + $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" + $as_echo "$0: be upgraded to zsh 4.3.4 or later." + else + $as_echo "$0: Please tell bug-autoconf@gnu.org about your system, +$0: including any error possibly output before this +$0: message. Then install a modern shell, or manually run +$0: the script under such a shell if you do have one." + fi + exit 1 +fi +fi +fi +SHELL=${CONFIG_SHELL-/bin/sh} +export SHELL +# Unset more variables known to interfere with behavior of common tools. +CLICOLOR_FORCE= GREP_OPTIONS= +unset CLICOLOR_FORCE GREP_OPTIONS + +## --------------------- ## +## M4sh Shell Functions. ## +## --------------------- ## +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" + + +} # as_fn_mkdir_p + +# as_fn_executable_p FILE +# ----------------------- +# Test if FILE is an executable regular file. +as_fn_executable_p () +{ + test -f "$1" && test -x "$1" +} # as_fn_executable_p +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append + +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith + + +# as_fn_error STATUS ERROR [LINENO LOG_FD] +# ---------------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with STATUS, using 1 if that was 0. +as_fn_error () +{ + as_status=$1; test $as_status -eq 0 && as_status=1 + if test "$4"; then + as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 + fi + $as_echo "$as_me: error: $2" >&2 + as_fn_exit $as_status +} # as_fn_error + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + + + as_lineno_1=$LINENO as_lineno_1a=$LINENO + as_lineno_2=$LINENO as_lineno_2a=$LINENO + eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && + test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { + # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) + sed -n ' + p + /[$]LINENO/= + ' <$as_myself | + sed ' + s/[$]LINENO.*/&-/ + t lineno + b + :lineno + N + :loop + s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ + t loop + s/-\n.*// + ' >$as_me.lineno && + chmod +x "$as_me.lineno" || + { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } + + # If we had to re-execute with $CONFIG_SHELL, we're ensured to have + # already done that, so ensure we don't try to do so again and fall + # in an infinite loop. This has already happened in practice. + _as_can_reexec=no; export _as_can_reexec + # Don't try to exec as it changes $[0], causing all sort of problems + # (the dirname of $[0] is not the place where we might find the + # original and so on. Autoconf is especially sensitive to this). + . "./$as_me.lineno" + # Exit status is that of the last command. + exit +} + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in #((((( +-n*) + case `echo 'xy\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; + esac;; +*) + ECHO_N='-n';; +esac + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir 2>/dev/null +fi +if (echo >conf$$.file) 2>/dev/null; then + if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -pR'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -pR' + elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln + else + as_ln_s='cp -pR' + fi +else + as_ln_s='cp -pR' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + +if mkdir -p . 2>/dev/null; then + as_mkdir_p='mkdir -p "$as_dir"' +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + +as_test_x='test -x' +as_executable_p=as_fn_executable_p + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + + +test -n "$DJDIR" || exec 7<&0 &1 + +# Name of the host. +# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, +# so uname gets run too. +ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` + +# +# Initializations. +# +ac_default_prefix=/usr/local +ac_clean_files= +ac_config_libobj_dir=. +LIBOBJS= +cross_compiling=no +subdirs= +MFLAGS= +MAKEFLAGS= + +# Identity of this package. +PACKAGE_NAME= +PACKAGE_TARNAME= +PACKAGE_VERSION= +PACKAGE_STRING= +PACKAGE_BUGREPORT= +PACKAGE_URL= + +ac_unique_file="CUSTOMISE" +# Factoring default headers for most tests. +ac_includes_default="\ +#include +#ifdef HAVE_SYS_TYPES_H +# include +#endif +#ifdef HAVE_SYS_STAT_H +# include +#endif +#ifdef STDC_HEADERS +# include +# include +#else +# ifdef HAVE_STDLIB_H +# include +# endif +#endif +#ifdef HAVE_STRING_H +# if !defined STDC_HEADERS && defined HAVE_MEMORY_H +# include +# endif +# include +#endif +#ifdef HAVE_STRINGS_H +# include +#endif +#ifdef HAVE_INTTYPES_H +# include +#endif +#ifdef HAVE_STDINT_H +# include +#endif +#ifdef HAVE_UNISTD_H +# include +#endif" + +ac_subst_vars='LTLIBOBJS +LIBOBJS +CFLAGS_VULNERABLE +CFLAGS_TRIANGLE +EGREP +GREP +CPP +AR +INSTALL_DATA +INSTALL_SCRIPT +INSTALL_PROGRAM +OBJEXT +EXEEXT +ac_ct_CC +CPPFLAGS +LDFLAGS +CFLAGS +CC +target_alias +host_alias +build_alias +LIBS +ECHO_T +ECHO_N +ECHO_C +DEFS +mandir +localedir +libdir +psdir +pdfdir +dvidir +htmldir +infodir +docdir +oldincludedir +includedir +localstatedir +sharedstatedir +sysconfdir +datadir +datarootdir +libexecdir +sbindir +bindir +program_transform_name +prefix +exec_prefix +PACKAGE_URL +PACKAGE_BUGREPORT +PACKAGE_STRING +PACKAGE_VERSION +PACKAGE_TARNAME +PACKAGE_NAME +PATH_SEPARATOR +SHELL' +ac_subst_files='' +ac_user_opts=' +enable_option_checking +' + ac_precious_vars='build_alias +host_alias +target_alias +CC +CFLAGS +LDFLAGS +LIBS +CPPFLAGS +CPP' + + +# Initialize some variables set by options. +ac_init_help= +ac_init_version=false +ac_unrecognized_opts= +ac_unrecognized_sep= +# The variables have the same names as the options, with +# dashes changed to underlines. +cache_file=/dev/null +exec_prefix=NONE +no_create= +no_recursion= +prefix=NONE +program_prefix=NONE +program_suffix=NONE +program_transform_name=s,x,x, +silent= +site= +srcdir= +verbose= +x_includes=NONE +x_libraries=NONE + +# Installation directory options. +# These are left unexpanded so users can "make install exec_prefix=/foo" +# and all the variables that are supposed to be based on exec_prefix +# by default will actually change. +# Use braces instead of parens because sh, perl, etc. also accept them. +# (The list follows the same order as the GNU Coding Standards.) +bindir='${exec_prefix}/bin' +sbindir='${exec_prefix}/sbin' +libexecdir='${exec_prefix}/libexec' +datarootdir='${prefix}/share' +datadir='${datarootdir}' +sysconfdir='${prefix}/etc' +sharedstatedir='${prefix}/com' +localstatedir='${prefix}/var' +includedir='${prefix}/include' +oldincludedir='/usr/include' +docdir='${datarootdir}/doc/${PACKAGE}' +infodir='${datarootdir}/info' +htmldir='${docdir}' +dvidir='${docdir}' +pdfdir='${docdir}' +psdir='${docdir}' +libdir='${exec_prefix}/lib' +localedir='${datarootdir}/locale' +mandir='${datarootdir}/man' + +ac_prev= +ac_dashdash= +for ac_option +do + # If the previous option needs an argument, assign it. + if test -n "$ac_prev"; then + eval $ac_prev=\$ac_option + ac_prev= + continue + fi + + case $ac_option in + *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; + *=) ac_optarg= ;; + *) ac_optarg=yes ;; + esac + + # Accept the important Cygnus configure options, so we can diagnose typos. + + case $ac_dashdash$ac_option in + --) + ac_dashdash=yes ;; + + -bindir | --bindir | --bindi | --bind | --bin | --bi) + ac_prev=bindir ;; + -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) + bindir=$ac_optarg ;; + + -build | --build | --buil | --bui | --bu) + ac_prev=build_alias ;; + -build=* | --build=* | --buil=* | --bui=* | --bu=*) + build_alias=$ac_optarg ;; + + -cache-file | --cache-file | --cache-fil | --cache-fi \ + | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) + ac_prev=cache_file ;; + -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ + | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) + cache_file=$ac_optarg ;; + + --config-cache | -C) + cache_file=config.cache ;; + + -datadir | --datadir | --datadi | --datad) + ac_prev=datadir ;; + -datadir=* | --datadir=* | --datadi=* | --datad=*) + datadir=$ac_optarg ;; + + -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ + | --dataroo | --dataro | --datar) + ac_prev=datarootdir ;; + -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ + | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) + datarootdir=$ac_optarg ;; + + -disable-* | --disable-*) + ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid feature name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"enable_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval enable_$ac_useropt=no ;; + + -docdir | --docdir | --docdi | --doc | --do) + ac_prev=docdir ;; + -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) + docdir=$ac_optarg ;; + + -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) + ac_prev=dvidir ;; + -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) + dvidir=$ac_optarg ;; + + -enable-* | --enable-*) + ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid feature name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"enable_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval enable_$ac_useropt=\$ac_optarg ;; + + -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ + | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ + | --exec | --exe | --ex) + ac_prev=exec_prefix ;; + -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ + | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ + | --exec=* | --exe=* | --ex=*) + exec_prefix=$ac_optarg ;; + + -gas | --gas | --ga | --g) + # Obsolete; use --with-gas. + with_gas=yes ;; + + -help | --help | --hel | --he | -h) + ac_init_help=long ;; + -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) + ac_init_help=recursive ;; + -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) + ac_init_help=short ;; + + -host | --host | --hos | --ho) + ac_prev=host_alias ;; + -host=* | --host=* | --hos=* | --ho=*) + host_alias=$ac_optarg ;; + + -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) + ac_prev=htmldir ;; + -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ + | --ht=*) + htmldir=$ac_optarg ;; + + -includedir | --includedir | --includedi | --included | --include \ + | --includ | --inclu | --incl | --inc) + ac_prev=includedir ;; + -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ + | --includ=* | --inclu=* | --incl=* | --inc=*) + includedir=$ac_optarg ;; + + -infodir | --infodir | --infodi | --infod | --info | --inf) + ac_prev=infodir ;; + -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) + infodir=$ac_optarg ;; + + -libdir | --libdir | --libdi | --libd) + ac_prev=libdir ;; + -libdir=* | --libdir=* | --libdi=* | --libd=*) + libdir=$ac_optarg ;; + + -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ + | --libexe | --libex | --libe) + ac_prev=libexecdir ;; + -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ + | --libexe=* | --libex=* | --libe=*) + libexecdir=$ac_optarg ;; + + -localedir | --localedir | --localedi | --localed | --locale) + ac_prev=localedir ;; + -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) + localedir=$ac_optarg ;; + + -localstatedir | --localstatedir | --localstatedi | --localstated \ + | --localstate | --localstat | --localsta | --localst | --locals) + ac_prev=localstatedir ;; + -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ + | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) + localstatedir=$ac_optarg ;; + + -mandir | --mandir | --mandi | --mand | --man | --ma | --m) + ac_prev=mandir ;; + -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) + mandir=$ac_optarg ;; + + -nfp | --nfp | --nf) + # Obsolete; use --without-fp. + with_fp=no ;; + + -no-create | --no-create | --no-creat | --no-crea | --no-cre \ + | --no-cr | --no-c | -n) + no_create=yes ;; + + -no-recursion | --no-recursion | --no-recursio | --no-recursi \ + | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) + no_recursion=yes ;; + + -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ + | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ + | --oldin | --oldi | --old | --ol | --o) + ac_prev=oldincludedir ;; + -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ + | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ + | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) + oldincludedir=$ac_optarg ;; + + -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) + ac_prev=prefix ;; + -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) + prefix=$ac_optarg ;; + + -program-prefix | --program-prefix | --program-prefi | --program-pref \ + | --program-pre | --program-pr | --program-p) + ac_prev=program_prefix ;; + -program-prefix=* | --program-prefix=* | --program-prefi=* \ + | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) + program_prefix=$ac_optarg ;; + + -program-suffix | --program-suffix | --program-suffi | --program-suff \ + | --program-suf | --program-su | --program-s) + ac_prev=program_suffix ;; + -program-suffix=* | --program-suffix=* | --program-suffi=* \ + | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) + program_suffix=$ac_optarg ;; + + -program-transform-name | --program-transform-name \ + | --program-transform-nam | --program-transform-na \ + | --program-transform-n | --program-transform- \ + | --program-transform | --program-transfor \ + | --program-transfo | --program-transf \ + | --program-trans | --program-tran \ + | --progr-tra | --program-tr | --program-t) + ac_prev=program_transform_name ;; + -program-transform-name=* | --program-transform-name=* \ + | --program-transform-nam=* | --program-transform-na=* \ + | --program-transform-n=* | --program-transform-=* \ + | --program-transform=* | --program-transfor=* \ + | --program-transfo=* | --program-transf=* \ + | --program-trans=* | --program-tran=* \ + | --progr-tra=* | --program-tr=* | --program-t=*) + program_transform_name=$ac_optarg ;; + + -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) + ac_prev=pdfdir ;; + -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) + pdfdir=$ac_optarg ;; + + -psdir | --psdir | --psdi | --psd | --ps) + ac_prev=psdir ;; + -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) + psdir=$ac_optarg ;; + + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + silent=yes ;; + + -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) + ac_prev=sbindir ;; + -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ + | --sbi=* | --sb=*) + sbindir=$ac_optarg ;; + + -sharedstatedir | --sharedstatedir | --sharedstatedi \ + | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ + | --sharedst | --shareds | --shared | --share | --shar \ + | --sha | --sh) + ac_prev=sharedstatedir ;; + -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ + | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ + | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ + | --sha=* | --sh=*) + sharedstatedir=$ac_optarg ;; + + -site | --site | --sit) + ac_prev=site ;; + -site=* | --site=* | --sit=*) + site=$ac_optarg ;; + + -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) + ac_prev=srcdir ;; + -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) + srcdir=$ac_optarg ;; + + -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ + | --syscon | --sysco | --sysc | --sys | --sy) + ac_prev=sysconfdir ;; + -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ + | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) + sysconfdir=$ac_optarg ;; + + -target | --target | --targe | --targ | --tar | --ta | --t) + ac_prev=target_alias ;; + -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) + target_alias=$ac_optarg ;; + + -v | -verbose | --verbose | --verbos | --verbo | --verb) + verbose=yes ;; + + -version | --version | --versio | --versi | --vers | -V) + ac_init_version=: ;; + + -with-* | --with-*) + ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid package name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"with_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval with_$ac_useropt=\$ac_optarg ;; + + -without-* | --without-*) + ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid package name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"with_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval with_$ac_useropt=no ;; + + --x) + # Obsolete; use --with-x. + with_x=yes ;; + + -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ + | --x-incl | --x-inc | --x-in | --x-i) + ac_prev=x_includes ;; + -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ + | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) + x_includes=$ac_optarg ;; + + -x-libraries | --x-libraries | --x-librarie | --x-librari \ + | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) + ac_prev=x_libraries ;; + -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ + | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) + x_libraries=$ac_optarg ;; + + -*) as_fn_error $? "unrecognized option: \`$ac_option' +Try \`$0 --help' for more information" + ;; + + *=*) + ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` + # Reject names that are not valid shell variable names. + case $ac_envvar in #( + '' | [0-9]* | *[!_$as_cr_alnum]* ) + as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; + esac + eval $ac_envvar=\$ac_optarg + export $ac_envvar ;; + + *) + # FIXME: should be removed in autoconf 3.0. + $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 + expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && + $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 + : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}" + ;; + + esac +done + +if test -n "$ac_prev"; then + ac_option=--`echo $ac_prev | sed 's/_/-/g'` + as_fn_error $? "missing argument to $ac_option" +fi + +if test -n "$ac_unrecognized_opts"; then + case $enable_option_checking in + no) ;; + fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; + *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; + esac +fi + +# Check all directory arguments for consistency. +for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ + datadir sysconfdir sharedstatedir localstatedir includedir \ + oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ + libdir localedir mandir +do + eval ac_val=\$$ac_var + # Remove trailing slashes. + case $ac_val in + */ ) + ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` + eval $ac_var=\$ac_val;; + esac + # Be sure to have absolute directory names. + case $ac_val in + [\\/$]* | ?:[\\/]* ) continue;; + NONE | '' ) case $ac_var in *prefix ) continue;; esac;; + esac + as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" +done + +# There might be people who depend on the old broken behavior: `$host' +# used to hold the argument of --host etc. +# FIXME: To remove some day. +build=$build_alias +host=$host_alias +target=$target_alias + +# FIXME: To remove some day. +if test "x$host_alias" != x; then + if test "x$build_alias" = x; then + cross_compiling=maybe + elif test "x$build_alias" != "x$host_alias"; then + cross_compiling=yes + fi +fi + +ac_tool_prefix= +test -n "$host_alias" && ac_tool_prefix=$host_alias- + +test "$silent" = yes && exec 6>/dev/null + + +ac_pwd=`pwd` && test -n "$ac_pwd" && +ac_ls_di=`ls -di .` && +ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || + as_fn_error $? "working directory cannot be determined" +test "X$ac_ls_di" = "X$ac_pwd_ls_di" || + as_fn_error $? "pwd does not report name of working directory" + + +# Find the source files, if location was not specified. +if test -z "$srcdir"; then + ac_srcdir_defaulted=yes + # Try the directory containing this script, then the parent directory. + ac_confdir=`$as_dirname -- "$as_myself" || +$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_myself" : 'X\(//\)[^/]' \| \ + X"$as_myself" : 'X\(//\)$' \| \ + X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_myself" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + srcdir=$ac_confdir + if test ! -r "$srcdir/$ac_unique_file"; then + srcdir=.. + fi +else + ac_srcdir_defaulted=no +fi +if test ! -r "$srcdir/$ac_unique_file"; then + test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." + as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" +fi +ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" +ac_abs_confdir=`( + cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" + pwd)` +# When building in place, set srcdir=. +if test "$ac_abs_confdir" = "$ac_pwd"; then + srcdir=. +fi +# Remove unnecessary trailing slashes from srcdir. +# Double slashes in file names in object file debugging info +# mess up M-x gdb in Emacs. +case $srcdir in +*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; +esac +for ac_var in $ac_precious_vars; do + eval ac_env_${ac_var}_set=\${${ac_var}+set} + eval ac_env_${ac_var}_value=\$${ac_var} + eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} + eval ac_cv_env_${ac_var}_value=\$${ac_var} +done + +# +# Report the --help message. +# +if test "$ac_init_help" = "long"; then + # Omit some internal or obsolete options to make the list less imposing. + # This message is too long to be a string in the A/UX 3.1 sh. + cat <<_ACEOF +\`configure' configures this package to adapt to many kinds of systems. + +Usage: $0 [OPTION]... [VAR=VALUE]... + +To assign environment variables (e.g., CC, CFLAGS...), specify them as +VAR=VALUE. See below for descriptions of some of the useful variables. + +Defaults for the options are specified in brackets. + +Configuration: + -h, --help display this help and exit + --help=short display options specific to this package + --help=recursive display the short help of all the included packages + -V, --version display version information and exit + -q, --quiet, --silent do not print \`checking ...' messages + --cache-file=FILE cache test results in FILE [disabled] + -C, --config-cache alias for \`--cache-file=config.cache' + -n, --no-create do not create output files + --srcdir=DIR find the sources in DIR [configure dir or \`..'] + +Installation directories: + --prefix=PREFIX install architecture-independent files in PREFIX + [$ac_default_prefix] + --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX + [PREFIX] + +By default, \`make install' will install all the files in +\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify +an installation prefix other than \`$ac_default_prefix' using \`--prefix', +for instance \`--prefix=\$HOME'. + +For better control, use the options below. + +Fine tuning of the installation directories: + --bindir=DIR user executables [EPREFIX/bin] + --sbindir=DIR system admin executables [EPREFIX/sbin] + --libexecdir=DIR program executables [EPREFIX/libexec] + --sysconfdir=DIR read-only single-machine data [PREFIX/etc] + --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] + --localstatedir=DIR modifiable single-machine data [PREFIX/var] + --libdir=DIR object code libraries [EPREFIX/lib] + --includedir=DIR C header files [PREFIX/include] + --oldincludedir=DIR C header files for non-gcc [/usr/include] + --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] + --datadir=DIR read-only architecture-independent data [DATAROOTDIR] + --infodir=DIR info documentation [DATAROOTDIR/info] + --localedir=DIR locale-dependent data [DATAROOTDIR/locale] + --mandir=DIR man documentation [DATAROOTDIR/man] + --docdir=DIR documentation root [DATAROOTDIR/doc/PACKAGE] + --htmldir=DIR html documentation [DOCDIR] + --dvidir=DIR dvi documentation [DOCDIR] + --pdfdir=DIR pdf documentation [DOCDIR] + --psdir=DIR ps documentation [DOCDIR] +_ACEOF + + cat <<\_ACEOF +_ACEOF +fi + +if test -n "$ac_init_help"; then + + cat <<\_ACEOF + +Some influential environment variables: + CC C compiler command + CFLAGS C compiler flags + LDFLAGS linker flags, e.g. -L if you have libraries in a + nonstandard directory + LIBS libraries to pass to the linker, e.g. -l + CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I if + you have headers in a nonstandard directory + CPP C preprocessor + +Use these variables to override the choices made by `configure' or to help +it to find libraries and programs with nonstandard names/locations. + +Report bugs to the package provider. +_ACEOF +ac_status=$? +fi + +if test "$ac_init_help" = "recursive"; then + # If there are subdirs, report their specific --help. + for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue + test -d "$ac_dir" || + { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || + continue + ac_builddir=. + +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix + +case $srcdir in + .) # We are building in place. + ac_srcdir=. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; +esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + cd "$ac_dir" || { ac_status=$?; continue; } + # Check for guested configure. + if test -f "$ac_srcdir/configure.gnu"; then + echo && + $SHELL "$ac_srcdir/configure.gnu" --help=recursive + elif test -f "$ac_srcdir/configure"; then + echo && + $SHELL "$ac_srcdir/configure" --help=recursive + else + $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 + fi || ac_status=$? + cd "$ac_pwd" || { ac_status=$?; break; } + done +fi + +test -n "$ac_init_help" && exit $ac_status +if $ac_init_version; then + cat <<\_ACEOF +configure +generated by GNU Autoconf 2.69 + +Copyright (C) 2012 Free Software Foundation, Inc. +This configure script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it. +_ACEOF + exit +fi + +## ------------------------ ## +## Autoconf initialization. ## +## ------------------------ ## + +# ac_fn_c_try_compile LINENO +# -------------------------- +# Try to compile conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext + if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_compile + +# ac_fn_c_try_cpp LINENO +# ---------------------- +# Try to preprocess conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_cpp () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } > conftest.i && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_cpp + +# ac_fn_c_try_run LINENO +# ---------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes +# that executables *can* be run. +ac_fn_c_try_run () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' + { { case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then : + ac_retval=0 +else + $as_echo "$as_me: program exited with status $ac_status" >&5 + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=$ac_status +fi + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_run + +# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES +# ------------------------------------------------------- +# Tests whether HEADER exists, giving a warning if it cannot be compiled using +# the include files in INCLUDES and setting the cache variable VAR +# accordingly. +ac_fn_c_check_header_mongrel () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if eval \${$3+:} false; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 +$as_echo_n "checking $2 usability... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +#include <$2> +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_header_compiler=yes +else + ac_header_compiler=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 +$as_echo_n "checking $2 presence... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include <$2> +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + ac_header_preproc=yes +else + ac_header_preproc=no +fi +rm -f conftest.err conftest.i conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( + yes:no: ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} + ;; + no:yes:* ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} + ;; +esac + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + eval "$3=\$ac_header_compiler" +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_c_check_header_mongrel + +# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES +# ------------------------------------------------------- +# Tests whether HEADER exists and can be compiled using the include files in +# INCLUDES, setting the cache variable VAR accordingly. +ac_fn_c_check_header_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +#include <$2> +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_c_check_header_compile + +# ac_fn_c_try_link LINENO +# ----------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_link () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext conftest$ac_exeext + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + test -x conftest$ac_exeext + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information + # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would + # interfere with the next link command; also delete a directory that is + # left behind by Apple's compiler. We do this before executing the actions. + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_link + +# ac_fn_c_check_func LINENO FUNC VAR +# ---------------------------------- +# Tests whether FUNC exists, setting the cache variable VAR accordingly +ac_fn_c_check_func () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Define $2 to an innocuous variant, in case declares $2. + For example, HP-UX 11i declares gettimeofday. */ +#define $2 innocuous_$2 + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $2 (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $2 + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $2 (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$2 || defined __stub___$2 +choke me +#endif + +int +main () +{ +return $2 (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_c_check_func +cat >config.log <<_ACEOF +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. + +It was created by $as_me, which was +generated by GNU Autoconf 2.69. Invocation command line was + + $ $0 $@ + +_ACEOF +exec 5>>config.log +{ +cat <<_ASUNAME +## --------- ## +## Platform. ## +## --------- ## + +hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` +uname -m = `(uname -m) 2>/dev/null || echo unknown` +uname -r = `(uname -r) 2>/dev/null || echo unknown` +uname -s = `(uname -s) 2>/dev/null || echo unknown` +uname -v = `(uname -v) 2>/dev/null || echo unknown` + +/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` +/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` + +/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` +/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` +/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` +/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` +/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` +/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` + +_ASUNAME + +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + $as_echo "PATH: $as_dir" + done +IFS=$as_save_IFS + +} >&5 + +cat >&5 <<_ACEOF + + +## ----------- ## +## Core tests. ## +## ----------- ## + +_ACEOF + + +# Keep a trace of the command line. +# Strip out --no-create and --no-recursion so they do not pile up. +# Strip out --silent because we don't want to record it for future runs. +# Also quote any args containing shell meta-characters. +# Make two passes to allow for proper duplicate-argument suppression. +ac_configure_args= +ac_configure_args0= +ac_configure_args1= +ac_must_keep_next=false +for ac_pass in 1 2 +do + for ac_arg + do + case $ac_arg in + -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + continue ;; + *\'*) + ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + case $ac_pass in + 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; + 2) + as_fn_append ac_configure_args1 " '$ac_arg'" + if test $ac_must_keep_next = true; then + ac_must_keep_next=false # Got value, back to normal. + else + case $ac_arg in + *=* | --config-cache | -C | -disable-* | --disable-* \ + | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ + | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ + | -with-* | --with-* | -without-* | --without-* | --x) + case "$ac_configure_args0 " in + "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; + esac + ;; + -* ) ac_must_keep_next=true ;; + esac + fi + as_fn_append ac_configure_args " '$ac_arg'" + ;; + esac + done +done +{ ac_configure_args0=; unset ac_configure_args0;} +{ ac_configure_args1=; unset ac_configure_args1;} + +# When interrupted or exit'd, cleanup temporary files, and complete +# config.log. We remove comments because anyway the quotes in there +# would cause problems or look ugly. +# WARNING: Use '\'' to represent an apostrophe within the trap. +# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. +trap 'exit_status=$? + # Save into config.log some information that might help in debugging. + { + echo + + $as_echo "## ---------------- ## +## Cache variables. ## +## ---------------- ##" + echo + # The following way of writing the cache mishandles newlines in values, +( + for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 +$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( + *) { eval $ac_var=; unset $ac_var;} ;; + esac ;; + esac + done + (set) 2>&1 | + case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( + *${as_nl}ac_space=\ *) + sed -n \ + "s/'\''/'\''\\\\'\'''\''/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" + ;; #( + *) + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" + ;; + esac | + sort +) + echo + + $as_echo "## ----------------- ## +## Output variables. ## +## ----------------- ##" + echo + for ac_var in $ac_subst_vars + do + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + $as_echo "$ac_var='\''$ac_val'\''" + done | sort + echo + + if test -n "$ac_subst_files"; then + $as_echo "## ------------------- ## +## File substitutions. ## +## ------------------- ##" + echo + for ac_var in $ac_subst_files + do + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + $as_echo "$ac_var='\''$ac_val'\''" + done | sort + echo + fi + + if test -s confdefs.h; then + $as_echo "## ----------- ## +## confdefs.h. ## +## ----------- ##" + echo + cat confdefs.h + echo + fi + test "$ac_signal" != 0 && + $as_echo "$as_me: caught signal $ac_signal" + $as_echo "$as_me: exit $exit_status" + } >&5 + rm -f core *.core core.conftest.* && + rm -f -r conftest* confdefs* conf$$* $ac_clean_files && + exit $exit_status +' 0 +for ac_signal in 1 2 13 15; do + trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal +done +ac_signal=0 + +# confdefs.h avoids OS command line length limits that DEFS can exceed. +rm -f -r conftest* confdefs.h + +$as_echo "/* confdefs.h */" > confdefs.h + +# Predefined preprocessor variables. + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_NAME "$PACKAGE_NAME" +_ACEOF + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_TARNAME "$PACKAGE_TARNAME" +_ACEOF + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_VERSION "$PACKAGE_VERSION" +_ACEOF + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_STRING "$PACKAGE_STRING" +_ACEOF + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" +_ACEOF + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_URL "$PACKAGE_URL" +_ACEOF + + +# Let the site file select an alternate cache file if it wants to. +# Prefer an explicitly selected file to automatically selected ones. +ac_site_file1=NONE +ac_site_file2=NONE +if test -n "$CONFIG_SITE"; then + # We do not want a PATH search for config.site. + case $CONFIG_SITE in #(( + -*) ac_site_file1=./$CONFIG_SITE;; + */*) ac_site_file1=$CONFIG_SITE;; + *) ac_site_file1=./$CONFIG_SITE;; + esac +elif test "x$prefix" != xNONE; then + ac_site_file1=$prefix/share/config.site + ac_site_file2=$prefix/etc/config.site +else + ac_site_file1=$ac_default_prefix/share/config.site + ac_site_file2=$ac_default_prefix/etc/config.site +fi +for ac_site_file in "$ac_site_file1" "$ac_site_file2" +do + test "x$ac_site_file" = xNONE && continue + if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 +$as_echo "$as_me: loading site script $ac_site_file" >&6;} + sed 's/^/| /' "$ac_site_file" >&5 + . "$ac_site_file" \ + || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "failed to load site script $ac_site_file +See \`config.log' for more details" "$LINENO" 5; } + fi +done + +if test -r "$cache_file"; then + # Some versions of bash will fail to source /dev/null (special files + # actually), so we avoid doing that. DJGPP emulates it as a regular file. + if test /dev/null != "$cache_file" && test -f "$cache_file"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 +$as_echo "$as_me: loading cache $cache_file" >&6;} + case $cache_file in + [\\/]* | ?:[\\/]* ) . "$cache_file";; + *) . "./$cache_file";; + esac + fi +else + { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 +$as_echo "$as_me: creating cache $cache_file" >&6;} + >$cache_file +fi + +# Check that the precious variables saved in the cache have kept the same +# value. +ac_cache_corrupted=false +for ac_var in $ac_precious_vars; do + eval ac_old_set=\$ac_cv_env_${ac_var}_set + eval ac_new_set=\$ac_env_${ac_var}_set + eval ac_old_val=\$ac_cv_env_${ac_var}_value + eval ac_new_val=\$ac_env_${ac_var}_value + case $ac_old_set,$ac_new_set in + set,) + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 +$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} + ac_cache_corrupted=: ;; + ,set) + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 +$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} + ac_cache_corrupted=: ;; + ,);; + *) + if test "x$ac_old_val" != "x$ac_new_val"; then + # differences in whitespace do not lead to failure. + ac_old_val_w=`echo x $ac_old_val` + ac_new_val_w=`echo x $ac_new_val` + if test "$ac_old_val_w" != "$ac_new_val_w"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 +$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} + ac_cache_corrupted=: + else + { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 +$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} + eval $ac_var=\$ac_old_val + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 +$as_echo "$as_me: former value: \`$ac_old_val'" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 +$as_echo "$as_me: current value: \`$ac_new_val'" >&2;} + fi;; + esac + # Pass precious variables to config.status. + if test "$ac_new_set" = set; then + case $ac_new_val in + *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; + *) ac_arg=$ac_var=$ac_new_val ;; + esac + case " $ac_configure_args " in + *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. + *) as_fn_append ac_configure_args " '$ac_arg'" ;; + esac + fi +done +if $ac_cache_corrupted; then + { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 +$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} + as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 +fi +## -------------------- ## +## Main body of script. ## +## -------------------- ## + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + +ac_config_headers="$ac_config_headers config.h" + + + + + + + + + if test -r CUSTOMISE; then + . ./CUSTOMISE + fi + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. +set dummy ${ac_tool_prefix}gcc; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_CC="${ac_tool_prefix}gcc" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_CC"; then + ac_ct_CC=$CC + # Extract the first word of "gcc", so it can be a program name with args. +set dummy gcc; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_CC"; then + ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_CC="gcc" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_CC=$ac_cv_prog_ac_ct_CC +if test -n "$ac_ct_CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 +$as_echo "$ac_ct_CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_CC" = x; then + CC="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + CC=$ac_ct_CC + fi +else + CC="$ac_cv_prog_CC" +fi + +if test -z "$CC"; then + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. +set dummy ${ac_tool_prefix}cc; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_CC="${ac_tool_prefix}cc" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + fi +fi +if test -z "$CC"; then + # Extract the first word of "cc", so it can be a program name with args. +set dummy cc; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + ac_prog_rejected=no +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then + ac_prog_rejected=yes + continue + fi + ac_cv_prog_CC="cc" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +if test $ac_prog_rejected = yes; then + # We found a bogon in the path, so make sure we never use it. + set dummy $ac_cv_prog_CC + shift + if test $# != 0; then + # We chose a different compiler from the bogus one. + # However, it has the same basename, so the bogon will be chosen + # first if we set CC to just the basename; use the full file name. + shift + ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" + fi +fi +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$CC"; then + if test -n "$ac_tool_prefix"; then + for ac_prog in cl.exe + do + # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. +set dummy $ac_tool_prefix$ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_CC="$ac_tool_prefix$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$CC" && break + done +fi +if test -z "$CC"; then + ac_ct_CC=$CC + for ac_prog in cl.exe +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_CC"; then + ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_CC="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_CC=$ac_cv_prog_ac_ct_CC +if test -n "$ac_ct_CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 +$as_echo "$ac_ct_CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$ac_ct_CC" && break +done + + if test "x$ac_ct_CC" = x; then + CC="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + CC=$ac_ct_CC + fi +fi + +fi + + +test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "no acceptable C compiler found in \$PATH +See \`config.log' for more details" "$LINENO" 5; } + +# Provide some information about the compiler. +$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 +set X $ac_compile +ac_compiler=$2 +for ac_option in --version -v -V -qversion; do + { { ac_try="$ac_compiler $ac_option >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compiler $ac_option >&5") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + sed '10a\ +... rest of stderr output deleted ... + 10q' conftest.err >conftest.er1 + cat conftest.er1 >&5 + fi + rm -f conftest.er1 conftest.err + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +done + +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +ac_clean_files_save=$ac_clean_files +ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" +# Try to create an executable without -o first, disregard a.out. +# It will help us diagnose broken compilers, and finding out an intuition +# of exeext. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 +$as_echo_n "checking whether the C compiler works... " >&6; } +ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` + +# The possible output files: +ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" + +ac_rmfiles= +for ac_file in $ac_files +do + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; + * ) ac_rmfiles="$ac_rmfiles $ac_file";; + esac +done +rm -f $ac_rmfiles + +if { { ac_try="$ac_link_default" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link_default") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : + # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. +# So ignore a value of `no', otherwise this would lead to `EXEEXT = no' +# in a Makefile. We should not override ac_cv_exeext if it was cached, +# so that the user can short-circuit this test for compilers unknown to +# Autoconf. +for ac_file in $ac_files '' +do + test -f "$ac_file" || continue + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) + ;; + [ab].out ) + # We found the default executable, but exeext='' is most + # certainly right. + break;; + *.* ) + if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; + then :; else + ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + fi + # We set ac_cv_exeext here because the later test for it is not + # safe: cross compilers may not add the suffix if given an `-o' + # argument, so we may need to know it at that point already. + # Even if this section looks crufty: it has the advantage of + # actually working. + break;; + * ) + break;; + esac +done +test "$ac_cv_exeext" = no && ac_cv_exeext= + +else + ac_file='' +fi +if test -z "$ac_file"; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error 77 "C compiler cannot create executables +See \`config.log' for more details" "$LINENO" 5; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 +$as_echo_n "checking for C compiler default output file name... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 +$as_echo "$ac_file" >&6; } +ac_exeext=$ac_cv_exeext + +rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out +ac_clean_files=$ac_clean_files_save +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 +$as_echo_n "checking for suffix of executables... " >&6; } +if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : + # If both `conftest.exe' and `conftest' are `present' (well, observable) +# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will +# work properly (i.e., refer to `conftest.exe'), while it won't with +# `rm'. +for ac_file in conftest.exe conftest conftest.*; do + test -f "$ac_file" || continue + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; + *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + break;; + * ) break;; + esac +done +else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "cannot compute suffix of executables: cannot compile and link +See \`config.log' for more details" "$LINENO" 5; } +fi +rm -f conftest conftest$ac_cv_exeext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 +$as_echo "$ac_cv_exeext" >&6; } + +rm -f conftest.$ac_ext +EXEEXT=$ac_cv_exeext +ac_exeext=$EXEEXT +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +FILE *f = fopen ("conftest.out", "w"); + return ferror (f) || fclose (f) != 0; + + ; + return 0; +} +_ACEOF +ac_clean_files="$ac_clean_files conftest.out" +# Check that the compiler produces executables we can run. If not, either +# the compiler is broken, or we cross compile. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 +$as_echo_n "checking whether we are cross compiling... " >&6; } +if test "$cross_compiling" != yes; then + { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + if { ac_try='./conftest$ac_cv_exeext' + { { case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then + cross_compiling=no + else + if test "$cross_compiling" = maybe; then + cross_compiling=yes + else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "cannot run C compiled programs. +If you meant to cross compile, use \`--host'. +See \`config.log' for more details" "$LINENO" 5; } + fi + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 +$as_echo "$cross_compiling" >&6; } + +rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out +ac_clean_files=$ac_clean_files_save +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 +$as_echo_n "checking for suffix of object files... " >&6; } +if ${ac_cv_objext+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.o conftest.obj +if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : + for ac_file in conftest.o conftest.obj conftest.*; do + test -f "$ac_file" || continue; + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; + *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` + break;; + esac +done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "cannot compute suffix of object files: cannot compile +See \`config.log' for more details" "$LINENO" 5; } +fi +rm -f conftest.$ac_cv_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 +$as_echo "$ac_cv_objext" >&6; } +OBJEXT=$ac_cv_objext +ac_objext=$OBJEXT +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 +$as_echo_n "checking whether we are using the GNU C compiler... " >&6; } +if ${ac_cv_c_compiler_gnu+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ +#ifndef __GNUC__ + choke me +#endif + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_compiler_gnu=yes +else + ac_compiler_gnu=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +ac_cv_c_compiler_gnu=$ac_compiler_gnu + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 +$as_echo "$ac_cv_c_compiler_gnu" >&6; } +if test $ac_compiler_gnu = yes; then + GCC=yes +else + GCC= +fi +ac_test_CFLAGS=${CFLAGS+set} +ac_save_CFLAGS=$CFLAGS +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 +$as_echo_n "checking whether $CC accepts -g... " >&6; } +if ${ac_cv_prog_cc_g+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_save_c_werror_flag=$ac_c_werror_flag + ac_c_werror_flag=yes + ac_cv_prog_cc_g=no + CFLAGS="-g" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_prog_cc_g=yes +else + CFLAGS="" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + +else + ac_c_werror_flag=$ac_save_c_werror_flag + CFLAGS="-g" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_prog_cc_g=yes +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_c_werror_flag=$ac_save_c_werror_flag +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 +$as_echo "$ac_cv_prog_cc_g" >&6; } +if test "$ac_test_CFLAGS" = set; then + CFLAGS=$ac_save_CFLAGS +elif test $ac_cv_prog_cc_g = yes; then + if test "$GCC" = yes; then + CFLAGS="-g -O2" + else + CFLAGS="-g" + fi +else + if test "$GCC" = yes; then + CFLAGS="-O2" + else + CFLAGS= + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 +$as_echo_n "checking for $CC option to accept ISO C89... " >&6; } +if ${ac_cv_prog_cc_c89+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_cv_prog_cc_c89=no +ac_save_CC=$CC +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +struct stat; +/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ +struct buf { int x; }; +FILE * (*rcsopen) (struct buf *, struct stat *, int); +static char *e (p, i) + char **p; + int i; +{ + return p[i]; +} +static char *f (char * (*g) (char **, int), char **p, ...) +{ + char *s; + va_list v; + va_start (v,p); + s = g (p, va_arg (v,int)); + va_end (v); + return s; +} + +/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has + function prototypes and stuff, but not '\xHH' hex character constants. + These don't provoke an error unfortunately, instead are silently treated + as 'x'. The following induces an error, until -std is added to get + proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an + array size at least. It's necessary to write '\x00'==0 to get something + that's true only with -std. */ +int osf4_cc_array ['\x00' == 0 ? 1 : -1]; + +/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters + inside strings and character constants. */ +#define FOO(x) 'x' +int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; + +int test (int i, double x); +struct s1 {int (*f) (int a);}; +struct s2 {int (*f) (double a);}; +int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); +int argc; +char **argv; +int +main () +{ +return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; + ; + return 0; +} +_ACEOF +for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ + -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" +do + CC="$ac_save_CC $ac_arg" + if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_prog_cc_c89=$ac_arg +fi +rm -f core conftest.err conftest.$ac_objext + test "x$ac_cv_prog_cc_c89" != "xno" && break +done +rm -f conftest.$ac_ext +CC=$ac_save_CC + +fi +# AC_CACHE_VAL +case "x$ac_cv_prog_cc_c89" in + x) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 +$as_echo "none needed" >&6; } ;; + xno) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 +$as_echo "unsupported" >&6; } ;; + *) + CC="$CC $ac_cv_prog_cc_c89" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 +$as_echo "$ac_cv_prog_cc_c89" >&6; } ;; +esac +if test "x$ac_cv_prog_cc_c89" != xno; then : + +fi + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +ac_aux_dir= +for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do + if test -f "$ac_dir/install-sh"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install-sh -c" + break + elif test -f "$ac_dir/install.sh"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install.sh -c" + break + elif test -f "$ac_dir/shtool"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/shtool install -c" + break + fi +done +if test -z "$ac_aux_dir"; then + as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5 +fi + +# These three variables are undocumented and unsupported, +# and are intended to be withdrawn in a future Autoconf release. +# They can cause serious problems if a builder's source tree is in a directory +# whose full name contains unusual characters. +ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. +ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. +ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. + + +# Find a good install program. We prefer a C program (faster), +# so one script is as good as another. But avoid the broken or +# incompatible versions: +# SysV /etc/install, /usr/sbin/install +# SunOS /usr/etc/install +# IRIX /sbin/install +# AIX /bin/install +# AmigaOS /C/install, which installs bootblocks on floppy discs +# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag +# AFS /usr/afsws/bin/install, which mishandles nonexistent args +# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" +# OS/2's system install, which has a completely different semantic +# ./install, which can be erroneously created by make from ./install.sh. +# Reject install programs that cannot install multiple files. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 +$as_echo_n "checking for a BSD-compatible install... " >&6; } +if test -z "$INSTALL"; then +if ${ac_cv_path_install+:} false; then : + $as_echo_n "(cached) " >&6 +else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + # Account for people who put trailing slashes in PATH elements. +case $as_dir/ in #(( + ./ | .// | /[cC]/* | \ + /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ + ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ + /usr/ucb/* ) ;; + *) + # OSF1 and SCO ODT 3.0 have their own names for install. + # Don't use installbsd from OSF since it installs stuff as root + # by default. + for ac_prog in ginstall scoinst install; do + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then + if test $ac_prog = install && + grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # AIX install. It has an incompatible calling convention. + : + elif test $ac_prog = install && + grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # program-specific install script used by HP pwplus--don't use. + : + else + rm -rf conftest.one conftest.two conftest.dir + echo one > conftest.one + echo two > conftest.two + mkdir conftest.dir + if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && + test -s conftest.one && test -s conftest.two && + test -s conftest.dir/conftest.one && + test -s conftest.dir/conftest.two + then + ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" + break 3 + fi + fi + fi + done + done + ;; +esac + + done +IFS=$as_save_IFS + +rm -rf conftest.one conftest.two conftest.dir + +fi + if test "${ac_cv_path_install+set}" = set; then + INSTALL=$ac_cv_path_install + else + # As a last resort, use the slow shell script. Don't cache a + # value for INSTALL within a source directory, because that will + # break other packages using the cache if that directory is + # removed, or if the value is a relative name. + INSTALL=$ac_install_sh + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 +$as_echo "$INSTALL" >&6; } + +# Use test -z because SunOS4 sh mishandles braces in ${var-val}. +# It thinks the first close brace ends the variable substitution. +test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' + +test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' + +test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' + +# Extract the first word of "ar", so it can be a program name with args. +set dummy ar; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_AR+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$AR"; then + ac_cv_prog_AR="$AR" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_AR="ar" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + test -z "$ac_cv_prog_AR" && ac_cv_prog_AR=":" +fi +fi +AR=$ac_cv_prog_AR +if test -n "$AR"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 +$as_echo "$AR" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 +$as_echo_n "checking how to run the C preprocessor... " >&6; } +# On Suns, sometimes $CPP names a directory. +if test -n "$CPP" && test -d "$CPP"; then + CPP= +fi +if test -z "$CPP"; then + if ${ac_cv_prog_CPP+:} false; then : + $as_echo_n "(cached) " >&6 +else + # Double quotes because CPP needs to be expanded + for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" + do + ac_preproc_ok=false +for ac_c_preproc_warn_flag in '' yes +do + # Use a header file that comes with gcc, so configuring glibc + # with a fresh cross-compiler works. + # Prefer to if __STDC__ is defined, since + # exists even on freestanding compilers. + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. "Syntax error" is here to catch this case. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __STDC__ +# include +#else +# include +#endif + Syntax error +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + +else + # Broken: fails on valid input. +continue +fi +rm -f conftest.err conftest.i conftest.$ac_ext + + # OK, works on sane cases. Now check whether nonexistent headers + # can be detected and how. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + # Broken: success on invalid input. +continue +else + # Passes both tests. +ac_preproc_ok=: +break +fi +rm -f conftest.err conftest.i conftest.$ac_ext + +done +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +rm -f conftest.i conftest.err conftest.$ac_ext +if $ac_preproc_ok; then : + break +fi + + done + ac_cv_prog_CPP=$CPP + +fi + CPP=$ac_cv_prog_CPP +else + ac_cv_prog_CPP=$CPP +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 +$as_echo "$CPP" >&6; } +ac_preproc_ok=false +for ac_c_preproc_warn_flag in '' yes +do + # Use a header file that comes with gcc, so configuring glibc + # with a fresh cross-compiler works. + # Prefer to if __STDC__ is defined, since + # exists even on freestanding compilers. + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. "Syntax error" is here to catch this case. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __STDC__ +# include +#else +# include +#endif + Syntax error +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + +else + # Broken: fails on valid input. +continue +fi +rm -f conftest.err conftest.i conftest.$ac_ext + + # OK, works on sane cases. Now check whether nonexistent headers + # can be detected and how. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + # Broken: success on invalid input. +continue +else + # Passes both tests. +ac_preproc_ok=: +break +fi +rm -f conftest.err conftest.i conftest.$ac_ext + +done +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +rm -f conftest.i conftest.err conftest.$ac_ext +if $ac_preproc_ok; then : + +else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "C preprocessor \"$CPP\" fails sanity check +See \`config.log' for more details" "$LINENO" 5; } +fi + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 +$as_echo_n "checking for grep that handles long lines and -e... " >&6; } +if ${ac_cv_path_GREP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -z "$GREP"; then + ac_path_GREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in grep ggrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_GREP" || continue +# Check for GNU ac_path_GREP and select it if it is found. + # Check for GNU $ac_path_GREP +case `"$ac_path_GREP" --version 2>&1` in +*GNU*) + ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo 'GREP' >> "conftest.nl" + "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_GREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_GREP="$ac_path_GREP" + ac_path_GREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_GREP_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_GREP"; then + as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + fi +else + ac_cv_path_GREP=$GREP +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 +$as_echo "$ac_cv_path_GREP" >&6; } + GREP="$ac_cv_path_GREP" + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 +$as_echo_n "checking for egrep... " >&6; } +if ${ac_cv_path_EGREP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 + then ac_cv_path_EGREP="$GREP -E" + else + if test -z "$EGREP"; then + ac_path_EGREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in egrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_EGREP" || continue +# Check for GNU ac_path_EGREP and select it if it is found. + # Check for GNU $ac_path_EGREP +case `"$ac_path_EGREP" --version 2>&1` in +*GNU*) + ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo 'EGREP' >> "conftest.nl" + "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_EGREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_EGREP="$ac_path_EGREP" + ac_path_EGREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_EGREP_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_EGREP"; then + as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + fi +else + ac_cv_path_EGREP=$EGREP +fi + + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 +$as_echo "$ac_cv_path_EGREP" >&6; } + EGREP="$ac_cv_path_EGREP" + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 +$as_echo_n "checking for ANSI C header files... " >&6; } +if ${ac_cv_header_stdc+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#include +#include + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_header_stdc=yes +else + ac_cv_header_stdc=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +if test $ac_cv_header_stdc = yes; then + # SunOS 4.x string.h does not declare mem*, contrary to ANSI. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "memchr" >/dev/null 2>&1; then : + +else + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "free" >/dev/null 2>&1; then : + +else + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. + if test "$cross_compiling" = yes; then : + : +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#if ((' ' & 0x0FF) == 0x020) +# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') +# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) +#else +# define ISLOWER(c) \ + (('a' <= (c) && (c) <= 'i') \ + || ('j' <= (c) && (c) <= 'r') \ + || ('s' <= (c) && (c) <= 'z')) +# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) +#endif + +#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) +int +main () +{ + int i; + for (i = 0; i < 256; i++) + if (XOR (islower (i), ISLOWER (i)) + || toupper (i) != TOUPPER (i)) + return 2; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + +else + ac_cv_header_stdc=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 +$as_echo "$ac_cv_header_stdc" >&6; } +if test $ac_cv_header_stdc = yes; then + +$as_echo "#define STDC_HEADERS 1" >>confdefs.h + +fi + +# On IRIX 5.3, sys/types and inttypes.h are conflicting. +for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ + inttypes.h stdint.h unistd.h +do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default +" +if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + +for ac_header in math.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "math.h" "ac_cv_header_math_h" "$ac_includes_default" +if test "x$ac_cv_header_math_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_MATH_H 1 +_ACEOF + +else + as_fn_error $? "unable to find header" "$LINENO" 5 +fi + +done + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lm" >&5 +$as_echo_n "checking for main in -lm... " >&6; } +if ${ac_cv_lib_m_main+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lm $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + +int +main () +{ +return main (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_m_main=yes +else + ac_cv_lib_m_main=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_m_main" >&5 +$as_echo "$ac_cv_lib_m_main" >&6; } +if test "x$ac_cv_lib_m_main" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_LIBM 1 +_ACEOF + + LIBS="-lm $LIBS" + +else + as_fn_error $? "unable to find library" "$LINENO" 5 +fi +ac_cv_lib_m=ac_cv_lib_m_main + + +for ac_func in realloc strtod strtok hypot +do : + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" +if eval test \"x\$"$as_ac_var"\" = x"yes"; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +else + as_fn_error $? "unable to find function" "$LINENO" 5 +fi +done + + +OLD_CFLAGS=$CFLAGS +CFLAGS="$CFLAGS -fno-force-mem" +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for -fno-force-mem option" >&5 +$as_echo_n "checking for -fno-force-mem option... " >&6; } +if ${ac_cv_fnoforcemem+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ +char a; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_fnoforcemem=yes +else + ac_cv_fnoforcemem=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +echo $ac_cv_fnoforcemem +if test $ac_cv_fnoforcemem = no; then + CFLAGS=$OLD_CFLAGS +fi + +if test "$ac_cv_fnoforcemem" = yes; then + CFLAGS_VULNERABLE="$CFLAGS_VULNERABLE -fno-force-mem" +fi + + + + + + + +ac_config_files="$ac_config_files makefile" + +cat >confcache <<\_ACEOF +# This file is a shell script that caches the results of configure +# tests run on this system so they can be shared between configure +# scripts and configure runs, see configure's option --config-cache. +# It is not useful on other systems. If it contains results you don't +# want to keep, you may remove or edit it. +# +# config.status only pays attention to the cache file if you give it +# the --recheck option to rerun configure. +# +# `ac_cv_env_foo' variables (set or unset) will be overridden when +# loading this file, other *unset* `ac_cv_foo' will be assigned the +# following values. + +_ACEOF + +# The following way of writing the cache mishandles newlines in values, +# but we know of no workaround that is simple, portable, and efficient. +# So, we kill variables containing newlines. +# Ultrix sh set writes to stderr and can't be redirected directly, +# and sets the high bit in the cache file unless we assign to the vars. +( + for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 +$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( + *) { eval $ac_var=; unset $ac_var;} ;; + esac ;; + esac + done + + (set) 2>&1 | + case $as_nl`(ac_space=' '; set) 2>&1` in #( + *${as_nl}ac_space=\ *) + # `set' does not quote correctly, so add quotes: double-quote + # substitution turns \\\\ into \\, and sed turns \\ into \. + sed -n \ + "s/'/'\\\\''/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" + ;; #( + *) + # `set' quotes correctly as required by POSIX, so do not add quotes. + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" + ;; + esac | + sort +) | + sed ' + /^ac_cv_env_/b end + t clear + :clear + s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ + t end + s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ + :end' >>confcache +if diff "$cache_file" confcache >/dev/null 2>&1; then :; else + if test -w "$cache_file"; then + if test "x$cache_file" != "x/dev/null"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 +$as_echo "$as_me: updating cache $cache_file" >&6;} + if test ! -f "$cache_file" || test -h "$cache_file"; then + cat confcache >"$cache_file" + else + case $cache_file in #( + */* | ?:*) + mv -f confcache "$cache_file"$$ && + mv -f "$cache_file"$$ "$cache_file" ;; #( + *) + mv -f confcache "$cache_file" ;; + esac + fi + fi + else + { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 +$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} + fi +fi +rm -f confcache + +test "x$prefix" = xNONE && prefix=$ac_default_prefix +# Let make expand exec_prefix. +test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' + +DEFS=-DHAVE_CONFIG_H + +ac_libobjs= +ac_ltlibobjs= +U= +for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue + # 1. Remove the extension, and $U if already installed. + ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' + ac_i=`$as_echo "$ac_i" | sed "$ac_script"` + # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR + # will be set to the directory where LIBOBJS objects are built. + as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" + as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' +done +LIBOBJS=$ac_libobjs + +LTLIBOBJS=$ac_ltlibobjs + + + +: "${CONFIG_STATUS=./config.status}" +ac_write_fail=0 +ac_clean_files_save=$ac_clean_files +ac_clean_files="$ac_clean_files $CONFIG_STATUS" +{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 +$as_echo "$as_me: creating $CONFIG_STATUS" >&6;} +as_write_fail=0 +cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 +#! $SHELL +# Generated by $as_me. +# Run this file to recreate the current configuration. +# Compiler output produced by configure, useful for debugging +# configure, is in config.log if it exists. + +debug=false +ac_cs_recheck=false +ac_cs_silent=false + +SHELL=\${CONFIG_SHELL-$SHELL} +export SHELL +_ASEOF +cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac +fi + + +as_nl=' +' +export as_nl +# Printing a long string crashes Solaris 7 /usr/bin/printf. +as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='printf %s\n' + as_echo_n='printf %s' +else + if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then + as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' + as_echo_n='/usr/ucb/echo -n' + else + as_echo_body='eval expr "X$1" : "X\\(.*\\)"' + as_echo_n_body='eval + arg=$1; + case $arg in #( + *"$as_nl"*) + expr "X$arg" : "X\\(.*\\)$as_nl"; + arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; + esac; + expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" + ' + export as_echo_n_body + as_echo_n='sh -c $as_echo_n_body as_echo' + fi + export as_echo_body + as_echo='sh -c $as_echo_body as_echo' +fi + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + + +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +as_myself= +case $0 in #(( + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + exit 1 +fi + +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : +done +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + + +# as_fn_error STATUS ERROR [LINENO LOG_FD] +# ---------------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with STATUS, using 1 if that was 0. +as_fn_error () +{ + as_status=$1; test $as_status -eq 0 && as_status=1 + if test "$4"; then + as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 + fi + $as_echo "$as_me: error: $2" >&2 + as_fn_exit $as_status +} # as_fn_error + + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append + +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith + + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in #((((( +-n*) + case `echo 'xy\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; + esac;; +*) + ECHO_N='-n';; +esac + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir 2>/dev/null +fi +if (echo >conf$$.file) 2>/dev/null; then + if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -pR'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -pR' + elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln + else + as_ln_s='cp -pR' + fi +else + as_ln_s='cp -pR' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" + + +} # as_fn_mkdir_p +if mkdir -p . 2>/dev/null; then + as_mkdir_p='mkdir -p "$as_dir"' +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + + +# as_fn_executable_p FILE +# ----------------------- +# Test if FILE is an executable regular file. +as_fn_executable_p () +{ + test -f "$1" && test -x "$1" +} # as_fn_executable_p +as_test_x='test -x' +as_executable_p=as_fn_executable_p + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + + +exec 6>&1 +## ----------------------------------- ## +## Main body of $CONFIG_STATUS script. ## +## ----------------------------------- ## +_ASEOF +test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# Save the log message, to keep $0 and so on meaningful, and to +# report actual input values of CONFIG_FILES etc. instead of their +# values after options handling. +ac_log=" +This file was extended by $as_me, which was +generated by GNU Autoconf 2.69. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES + CONFIG_HEADERS = $CONFIG_HEADERS + CONFIG_LINKS = $CONFIG_LINKS + CONFIG_COMMANDS = $CONFIG_COMMANDS + $ $0 $@ + +on `(hostname || uname -n) 2>/dev/null | sed 1q` +" + +_ACEOF + +case $ac_config_files in *" +"*) set x $ac_config_files; shift; ac_config_files=$*;; +esac + +case $ac_config_headers in *" +"*) set x $ac_config_headers; shift; ac_config_headers=$*;; +esac + + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +# Files that config.status was made for. +config_files="$ac_config_files" +config_headers="$ac_config_headers" + +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +ac_cs_usage="\ +\`$as_me' instantiates files and other configuration actions +from templates according to the current configuration. Unless the files +and actions are specified as TAGs, all are instantiated by default. + +Usage: $0 [OPTION]... [TAG]... + + -h, --help print this help, then exit + -V, --version print version number and configuration settings, then exit + --config print configuration, then exit + -q, --quiet, --silent + do not print progress messages + -d, --debug don't remove temporary files + --recheck update $as_me by reconfiguring in the same conditions + --file=FILE[:TEMPLATE] + instantiate the configuration file FILE + --header=FILE[:TEMPLATE] + instantiate the configuration header FILE + +Configuration files: +$config_files + +Configuration headers: +$config_headers + +Report bugs to the package provider." + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" +ac_cs_version="\\ +config.status +configured by $0, generated by GNU Autoconf 2.69, + with options \\"\$ac_cs_config\\" + +Copyright (C) 2012 Free Software Foundation, Inc. +This config.status script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it." + +ac_pwd='$ac_pwd' +srcdir='$srcdir' +INSTALL='$INSTALL' +test -n "\$AWK" || AWK=awk +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# The default lists apply if the user does not specify any file. +ac_need_defaults=: +while test $# != 0 +do + case $1 in + --*=?*) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` + ac_shift=: + ;; + --*=) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg= + ac_shift=: + ;; + *) + ac_option=$1 + ac_optarg=$2 + ac_shift=shift + ;; + esac + + case $ac_option in + # Handling of the options. + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + ac_cs_recheck=: ;; + --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) + $as_echo "$ac_cs_version"; exit ;; + --config | --confi | --conf | --con | --co | --c ) + $as_echo "$ac_cs_config"; exit ;; + --debug | --debu | --deb | --de | --d | -d ) + debug=: ;; + --file | --fil | --fi | --f ) + $ac_shift + case $ac_optarg in + *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + '') as_fn_error $? "missing file argument" ;; + esac + as_fn_append CONFIG_FILES " '$ac_optarg'" + ac_need_defaults=false;; + --header | --heade | --head | --hea ) + $ac_shift + case $ac_optarg in + *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + as_fn_append CONFIG_HEADERS " '$ac_optarg'" + ac_need_defaults=false;; + --he | --h) + # Conflict between --help and --header + as_fn_error $? "ambiguous option: \`$1' +Try \`$0 --help' for more information.";; + --help | --hel | -h ) + $as_echo "$ac_cs_usage"; exit ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil | --si | --s) + ac_cs_silent=: ;; + + # This is an error. + -*) as_fn_error $? "unrecognized option: \`$1' +Try \`$0 --help' for more information." ;; + + *) as_fn_append ac_config_targets " $1" + ac_need_defaults=false ;; + + esac + shift +done + +ac_configure_extra_args= + +if $ac_cs_silent; then + exec 6>/dev/null + ac_configure_extra_args="$ac_configure_extra_args --silent" +fi + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +if \$ac_cs_recheck; then + set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion + shift + \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 + CONFIG_SHELL='$SHELL' + export CONFIG_SHELL + exec "\$@" +fi + +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +exec 5>>config.log +{ + echo + sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX +## Running $as_me. ## +_ASBOX + $as_echo "$ac_log" +} >&5 + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + +# Handling of arguments. +for ac_config_target in $ac_config_targets +do + case $ac_config_target in + "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; + "makefile") CONFIG_FILES="$CONFIG_FILES makefile" ;; + + *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; + esac +done + + +# If the user did not use the arguments to specify the items to instantiate, +# then the envvar interface is used. Set only those that are not. +# We use the long form for the default assignment because of an extremely +# bizarre bug on SunOS 4.1.3. +if $ac_need_defaults; then + test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files + test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers +fi + +# Have a temporary directory for convenience. Make it in the build tree +# simply because there is no reason against having it here, and in addition, +# creating and moving files from /tmp can sometimes cause problems. +# Hook for its removal unless debugging. +# Note that there is a small window in which the directory will not be cleaned: +# after its creation but before its name has been assigned to `$tmp'. +$debug || +{ + tmp= ac_tmp= + trap 'exit_status=$? + : "${ac_tmp:=$tmp}" + { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status +' 0 + trap 'as_fn_exit 1' 1 2 13 15 +} +# Create a (secure) tmp directory for tmp files. + +{ + tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && + test -d "$tmp" +} || +{ + tmp=./conf$$-$RANDOM + (umask 077 && mkdir "$tmp") +} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 +ac_tmp=$tmp + +# Set up the scripts for CONFIG_FILES section. +# No need to generate them if there are no CONFIG_FILES. +# This happens for instance with `./config.status config.h'. +if test -n "$CONFIG_FILES"; then + + +ac_cr=`echo X | tr X '\015'` +# On cygwin, bash can eat \r inside `` if the user requested igncr. +# But we know of no other shell where ac_cr would be empty at this +# point, so we can use a bashism as a fallback. +if test "x$ac_cr" = x; then + eval ac_cr=\$\'\\r\' +fi +ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` +if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then + ac_cs_awk_cr='\\r' +else + ac_cs_awk_cr=$ac_cr +fi + +echo 'BEGIN {' >"$ac_tmp/subs1.awk" && +_ACEOF + + +{ + echo "cat >conf$$subs.awk <<_ACEOF" && + echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && + echo "_ACEOF" +} >conf$$subs.sh || + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 +ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` +ac_delim='%!_!# ' +for ac_last_try in false false false false false :; do + . ./conf$$subs.sh || + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 + + ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` + if test $ac_delim_n = $ac_delim_num; then + break + elif $ac_last_try; then + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " + fi +done +rm -f conf$$subs.sh + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK && +_ACEOF +sed -n ' +h +s/^/S["/; s/!.*/"]=/ +p +g +s/^[^!]*!// +:repl +t repl +s/'"$ac_delim"'$// +t delim +:nl +h +s/\(.\{148\}\)..*/\1/ +t more1 +s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ +p +n +b repl +:more1 +s/["\\]/\\&/g; s/^/"/; s/$/"\\/ +p +g +s/.\{148\}// +t nl +:delim +h +s/\(.\{148\}\)..*/\1/ +t more2 +s/["\\]/\\&/g; s/^/"/; s/$/"/ +p +b +:more2 +s/["\\]/\\&/g; s/^/"/; s/$/"\\/ +p +g +s/.\{148\}// +t delim +' >$CONFIG_STATUS || ac_write_fail=1 +rm -f conf$$subs.awk +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +_ACAWK +cat >>"\$ac_tmp/subs1.awk" <<_ACAWK && + for (key in S) S_is_set[key] = 1 + FS = "" + +} +{ + line = $ 0 + nfields = split(line, field, "@") + substed = 0 + len = length(field[1]) + for (i = 2; i < nfields; i++) { + key = field[i] + keylen = length(key) + if (S_is_set[key]) { + value = S[key] + line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) + len += length(value) + length(field[++i]) + substed = 1 + } else + len += 1 + keylen + } + + print line +} + +_ACAWK +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then + sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" +else + cat +fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ + || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 +_ACEOF + +# VPATH may cause trouble with some makes, so we remove sole $(srcdir), +# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and +# trailing colons and then remove the whole line if VPATH becomes empty +# (actually we leave an empty line to preserve line numbers). +if test "x$srcdir" = x.; then + ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{ +h +s/// +s/^/:/ +s/[ ]*$/:/ +s/:\$(srcdir):/:/g +s/:\${srcdir}:/:/g +s/:@srcdir@:/:/g +s/^:*// +s/:*$// +x +s/\(=[ ]*\).*/\1/ +G +s/\n// +s/^[^=]*=[ ]*$// +}' +fi + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +fi # test -n "$CONFIG_FILES" + +# Set up the scripts for CONFIG_HEADERS section. +# No need to generate them if there are no CONFIG_HEADERS. +# This happens for instance with `./config.status Makefile'. +if test -n "$CONFIG_HEADERS"; then +cat >"$ac_tmp/defines.awk" <<\_ACAWK || +BEGIN { +_ACEOF + +# Transform confdefs.h into an awk script `defines.awk', embedded as +# here-document in config.status, that substitutes the proper values into +# config.h.in to produce config.h. + +# Create a delimiter string that does not exist in confdefs.h, to ease +# handling of long lines. +ac_delim='%!_!# ' +for ac_last_try in false false :; do + ac_tt=`sed -n "/$ac_delim/p" confdefs.h` + if test -z "$ac_tt"; then + break + elif $ac_last_try; then + as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5 + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " + fi +done + +# For the awk script, D is an array of macro values keyed by name, +# likewise P contains macro parameters if any. Preserve backslash +# newline sequences. + +ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* +sed -n ' +s/.\{148\}/&'"$ac_delim"'/g +t rset +:rset +s/^[ ]*#[ ]*define[ ][ ]*/ / +t def +d +:def +s/\\$// +t bsnl +s/["\\]/\\&/g +s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ +D["\1"]=" \3"/p +s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p +d +:bsnl +s/["\\]/\\&/g +s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ +D["\1"]=" \3\\\\\\n"\\/p +t cont +s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p +t cont +d +:cont +n +s/.\{148\}/&'"$ac_delim"'/g +t clear +:clear +s/\\$// +t bsnlc +s/["\\]/\\&/g; s/^/"/; s/$/"/p +d +:bsnlc +s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p +b cont +' >$CONFIG_STATUS || ac_write_fail=1 + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + for (key in D) D_is_set[key] = 1 + FS = "" +} +/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ { + line = \$ 0 + split(line, arg, " ") + if (arg[1] == "#") { + defundef = arg[2] + mac1 = arg[3] + } else { + defundef = substr(arg[1], 2) + mac1 = arg[2] + } + split(mac1, mac2, "(") #) + macro = mac2[1] + prefix = substr(line, 1, index(line, defundef) - 1) + if (D_is_set[macro]) { + # Preserve the white space surrounding the "#". + print prefix "define", macro P[macro] D[macro] + next + } else { + # Replace #undef with comments. This is necessary, for example, + # in the case of _POSIX_SOURCE, which is predefined and required + # on some systems where configure will not decide to define it. + if (defundef == "undef") { + print "/*", prefix defundef, macro, "*/" + next + } + } +} +{ print } +_ACAWK +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 +fi # test -n "$CONFIG_HEADERS" + + +eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS " +shift +for ac_tag +do + case $ac_tag in + :[FHLC]) ac_mode=$ac_tag; continue;; + esac + case $ac_mode$ac_tag in + :[FHL]*:*);; + :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; + :[FH]-) ac_tag=-:-;; + :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; + esac + ac_save_IFS=$IFS + IFS=: + set x $ac_tag + IFS=$ac_save_IFS + shift + ac_file=$1 + shift + + case $ac_mode in + :L) ac_source=$1;; + :[FH]) + ac_file_inputs= + for ac_f + do + case $ac_f in + -) ac_f="$ac_tmp/stdin";; + *) # Look for the file first in the build tree, then in the source tree + # (if the path is not absolute). The absolute path cannot be DOS-style, + # because $ac_f cannot contain `:'. + test -f "$ac_f" || + case $ac_f in + [\\/$]*) false;; + *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; + esac || + as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; + esac + case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac + as_fn_append ac_file_inputs " '$ac_f'" + done + + # Let's still pretend it is `configure' which instantiates (i.e., don't + # use $as_me), people would be surprised to read: + # /* config.h. Generated by config.status. */ + configure_input='Generated from '` + $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' + `' by configure.' + if test x"$ac_file" != x-; then + configure_input="$ac_file. $configure_input" + { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 +$as_echo "$as_me: creating $ac_file" >&6;} + fi + # Neutralize special characters interpreted by sed in replacement strings. + case $configure_input in #( + *\&* | *\|* | *\\* ) + ac_sed_conf_input=`$as_echo "$configure_input" | + sed 's/[\\\\&|]/\\\\&/g'`;; #( + *) ac_sed_conf_input=$configure_input;; + esac + + case $ac_tag in + *:-:* | *:-) cat >"$ac_tmp/stdin" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; + esac + ;; + esac + + ac_dir=`$as_dirname -- "$ac_file" || +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$ac_file" : 'X\(//\)[^/]' \| \ + X"$ac_file" : 'X\(//\)$' \| \ + X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$ac_file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + as_dir="$ac_dir"; as_fn_mkdir_p + ac_builddir=. + +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix + +case $srcdir in + .) # We are building in place. + ac_srcdir=. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; +esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + + case $ac_mode in + :F) + # + # CONFIG_FILE + # + + case $INSTALL in + [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; + *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; + esac +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# If the template does not know about datarootdir, expand it. +# FIXME: This hack should be removed a few years after 2.60. +ac_datarootdir_hack=; ac_datarootdir_seen= +ac_sed_dataroot=' +/datarootdir/ { + p + q +} +/@datadir@/p +/@docdir@/p +/@infodir@/p +/@localedir@/p +/@mandir@/p' +case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in +*datarootdir*) ac_datarootdir_seen=yes;; +*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 +$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + ac_datarootdir_hack=' + s&@datadir@&$datadir&g + s&@docdir@&$docdir&g + s&@infodir@&$infodir&g + s&@localedir@&$localedir&g + s&@mandir@&$mandir&g + s&\\\${datarootdir}&$datarootdir&g' ;; +esac +_ACEOF + +# Neutralize VPATH when `$srcdir' = `.'. +# Shell code in configure.ac might set extrasub. +# FIXME: do we really want to maintain this feature? +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +ac_sed_extra="$ac_vpsub +$extrasub +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +:t +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b +s|@configure_input@|$ac_sed_conf_input|;t t +s&@top_builddir@&$ac_top_builddir_sub&;t t +s&@top_build_prefix@&$ac_top_build_prefix&;t t +s&@srcdir@&$ac_srcdir&;t t +s&@abs_srcdir@&$ac_abs_srcdir&;t t +s&@top_srcdir@&$ac_top_srcdir&;t t +s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t +s&@builddir@&$ac_builddir&;t t +s&@abs_builddir@&$ac_abs_builddir&;t t +s&@abs_top_builddir@&$ac_abs_top_builddir&;t t +s&@INSTALL@&$ac_INSTALL&;t t +$ac_datarootdir_hack +" +eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ + >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + +test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && + { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && + { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ + "$ac_tmp/out"`; test -z "$ac_out"; } && + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined" >&5 +$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined" >&2;} + + rm -f "$ac_tmp/stdin" + case $ac_file in + -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; + *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; + esac \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + ;; + :H) + # + # CONFIG_HEADER + # + if test x"$ac_file" != x-; then + { + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" + } >"$ac_tmp/config.h" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then + { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 +$as_echo "$as_me: $ac_file is unchanged" >&6;} + else + rm -f "$ac_file" + mv "$ac_tmp/config.h" "$ac_file" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + fi + else + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ + || as_fn_error $? "could not create -" "$LINENO" 5 + fi + ;; + + + esac + +done # for ac_tag + + +as_fn_exit 0 +_ACEOF +ac_clean_files=$ac_clean_files_save + +test $ac_write_fail = 0 || + as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 + + +# configure is writing to config.log, and then calls config.status. +# config.status does its own redirection, appending to config.log. +# Unfortunately, on DOS this fails, as config.log is still kept open +# by configure, so config.status won't be able to write to it; its +# output is simply discarded. So we exec the FD to /dev/null, +# effectively closing config.log, so it can be properly (re)opened and +# appended to by config.status. When coming back to configure, we +# need to make the FD available again. +if test "$no_create" != yes; then + ac_cs_success=: + ac_config_status_args= + test "$silent" = yes && + ac_config_status_args="$ac_config_status_args --quiet" + exec 5>/dev/null + $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false + exec 5>>config.log + # Use ||, not &&, to avoid exiting from the if with $? = 1, which + # would make configure fail if this is the last instruction. + $ac_cs_success || as_fn_exit 1 +fi +if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 +$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} +fi + diff --git a/autoarray/util/nn/src/nn/configure.in b/autoarray/util/nn/src/nn/configure.in index 3f22a5bd3..a131087e4 100644 --- a/autoarray/util/nn/src/nn/configure.in +++ b/autoarray/util/nn/src/nn/configure.in @@ -1,114 +1,114 @@ -dnl Configure.in for nn - -AC_INIT(CUSTOMISE) -AC_CONFIG_HEADER(config.h) - -AC_DEFUN(AC_FIND_HEADER, -[AC_MSG_CHECKING(for $1) -header_path= -found_header=no -# Look for the header file in a standard set of common directories. - for ac_dir in \ - $includedir \ - $prefix/include \ - $secondary_prefix/include \ - /usr/include \ - /usr/include/sys \ - /opt/gnu/include \ - /opt/misc/include \ - /usr/local/include \ - ; \ - do - if test -r "$ac_dir/$1"; then - header_path=$ac_dir - found_header=yes - break - fi - done -AC_MSG_RESULT($found_header) - -test "$found_header" = yes && $2 -test "$found_header" = no && $3 -]) - -AC_DEFUN(AC_FIND_LIB, -[AC_MSG_CHECKING(for -l$1) -rqst_lib=$1 -lib_path= -found_lib=no -# Look for the library file in a standard set of common directories. - for ac_dir in \ - $libdir \ - $prefix/lib${LIBEXT} \ - $secondary_prefix/lib${LIBEXT} \ - /usr/lib${LIBEXT} \ - /usr/unsupported/lib${LIBEXT} \ - /opt/gnu/lib${LIBEXT} \ - /opt/misc/lib${LIBEXT} \ - /usr/local/lib${LIBEXT} \ - ; \ -do - for ac_extension in a so sl; do - if test -r $ac_dir/lib${rqst_lib}.$ac_extension; then - lib_path=$ac_dir - found_lib=yes - break 2 - fi - done -done -AC_MSG_RESULT($found_lib) - -test "$found_lib" = yes && $2 -test "$found_lib" = no && $3 -]) - -dnl Get the shell variable to override local customisations. -AC_DEFUN([AC_CUSTOMISE], -[dnl - AC_BEFORE([$0], [AC_DEFAULT])dnl - if test -r CUSTOMISE; then - . ./CUSTOMISE - fi -]) - -AC_CUSTOMISE - -dnl Checks for programs. -AC_PROG_CC -AC_PROG_INSTALL -AC_CHECK_PROG(AR, ar, ar, :) - -dnl Checks for header files. -AC_HEADER_STDC -AC_CHECK_HEADERS(math.h,,AC_MSG_ERROR([unable to find header])) - -dnl Checks for typedefs, structures, and compiler characteristics. - -dnl Check for libraries. -AC_HAVE_LIBRARY(m,,AC_MSG_ERROR([unable to find library])) - -dnl Checks for library functions. -AC_CHECK_FUNCS(realloc strtod strtok hypot,,AC_MSG_ERROR([unable to find function])) - -dnl check compiler option "-fno-force-mem" -OLD_CFLAGS=$CFLAGS -CFLAGS="$CFLAGS -fno-force-mem" -AC_MSG_CHECKING(for -fno-force-mem option) -AC_CACHE_VAL(ac_cv_fnoforcemem, - AC_TRY_COMPILE([], [char a;], ac_cv_fnoforcemem=yes, ac_cv_fnoforcemem=no)) -echo $ac_cv_fnoforcemem -if test $ac_cv_fnoforcemem = no; then - CFLAGS=$OLD_CFLAGS -fi - -if test "$ac_cv_fnoforcemem" = yes; then - CFLAGS_VULNERABLE="$CFLAGS_VULNERABLE -fno-force-mem" -fi - -AC_SUBST(CC) -AC_SUBST(CFLAGS) -AC_SUBST(LDFLAGS) -AC_SUBST(CFLAGS_TRIANGLE) -AC_SUBST(CFLAGS_VULNERABLE) - -AC_OUTPUT(makefile) +dnl Configure.in for nn + +AC_INIT(CUSTOMISE) +AC_CONFIG_HEADER(config.h) + +AC_DEFUN(AC_FIND_HEADER, +[AC_MSG_CHECKING(for $1) +header_path= +found_header=no +# Look for the header file in a standard set of common directories. + for ac_dir in \ + $includedir \ + $prefix/include \ + $secondary_prefix/include \ + /usr/include \ + /usr/include/sys \ + /opt/gnu/include \ + /opt/misc/include \ + /usr/local/include \ + ; \ + do + if test -r "$ac_dir/$1"; then + header_path=$ac_dir + found_header=yes + break + fi + done +AC_MSG_RESULT($found_header) + +test "$found_header" = yes && $2 +test "$found_header" = no && $3 +]) + +AC_DEFUN(AC_FIND_LIB, +[AC_MSG_CHECKING(for -l$1) +rqst_lib=$1 +lib_path= +found_lib=no +# Look for the library file in a standard set of common directories. + for ac_dir in \ + $libdir \ + $prefix/lib${LIBEXT} \ + $secondary_prefix/lib${LIBEXT} \ + /usr/lib${LIBEXT} \ + /usr/unsupported/lib${LIBEXT} \ + /opt/gnu/lib${LIBEXT} \ + /opt/misc/lib${LIBEXT} \ + /usr/local/lib${LIBEXT} \ + ; \ +do + for ac_extension in a so sl; do + if test -r $ac_dir/lib${rqst_lib}.$ac_extension; then + lib_path=$ac_dir + found_lib=yes + break 2 + fi + done +done +AC_MSG_RESULT($found_lib) + +test "$found_lib" = yes && $2 +test "$found_lib" = no && $3 +]) + +dnl Get the shell variable to override local customisations. +AC_DEFUN([AC_CUSTOMISE], +[dnl + AC_BEFORE([$0], [AC_DEFAULT])dnl + if test -r CUSTOMISE; then + . ./CUSTOMISE + fi +]) + +AC_CUSTOMISE + +dnl Checks for programs. +AC_PROG_CC +AC_PROG_INSTALL +AC_CHECK_PROG(AR, ar, ar, :) + +dnl Checks for header files. +AC_HEADER_STDC +AC_CHECK_HEADERS(math.h,,AC_MSG_ERROR([unable to find header])) + +dnl Checks for typedefs, structures, and compiler characteristics. + +dnl Check for libraries. +AC_HAVE_LIBRARY(m,,AC_MSG_ERROR([unable to find library])) + +dnl Checks for library functions. +AC_CHECK_FUNCS(realloc strtod strtok hypot,,AC_MSG_ERROR([unable to find function])) + +dnl check compiler option "-fno-force-mem" +OLD_CFLAGS=$CFLAGS +CFLAGS="$CFLAGS -fno-force-mem" +AC_MSG_CHECKING(for -fno-force-mem option) +AC_CACHE_VAL(ac_cv_fnoforcemem, + AC_TRY_COMPILE([], [char a;], ac_cv_fnoforcemem=yes, ac_cv_fnoforcemem=no)) +echo $ac_cv_fnoforcemem +if test $ac_cv_fnoforcemem = no; then + CFLAGS=$OLD_CFLAGS +fi + +if test "$ac_cv_fnoforcemem" = yes; then + CFLAGS_VULNERABLE="$CFLAGS_VULNERABLE -fno-force-mem" +fi + +AC_SUBST(CC) +AC_SUBST(CFLAGS) +AC_SUBST(LDFLAGS) +AC_SUBST(CFLAGS_TRIANGLE) +AC_SUBST(CFLAGS_VULNERABLE) + +AC_OUTPUT(makefile) diff --git a/autoarray/util/nn/src/nn/delaunay.c b/autoarray/util/nn/src/nn/delaunay.c index 89ca4a1f5..37a280c6e 100644 --- a/autoarray/util/nn/src/nn/delaunay.c +++ b/autoarray/util/nn/src/nn/delaunay.c @@ -1,656 +1,656 @@ -/****************************************************************************** - * - * File: delaunay.c - * - * Created: 04/08/2000 - * - * Author: Pavel Sakov - * CSIRO Marine Research - * - * Purpose: Delaunay triangulation - a wrapper to triangulate() - * - * Description: None - * - * Revisions: 10/06/2003 PS: delaunay_build(); delaunay_destroy(); - * struct delaunay: from now on, only shallow copy of the - * input data is contained in struct delaunay. This saves - * memory and is consistent with libcsa. - * 30/10/2007 PS: added delaunay_addflag() and - * delaunay_resetflags(); modified delaunay_circles_find() - * to reset the flags to 0 on return. This is very important - * for large datasets, many thanks to John Gerschwitz, - * Petroleum Geo-Services, for identifying the problem. - * 05/05/2021 PS: added MPI code. - * - *****************************************************************************/ - -#define ANSI_DECLARATORS /* for triangle.h */ - -#include -#include -#include -#include -#include -#include -#include -#include "triangle.h" -#include "istack_internal.h" -#include "nan.h" -#include "nn.h" -#include "nncommon.h" -#include "delaunay_internal.h" - -#if defined(MPI) -#include - -int nprocesses = 1; -int rank = 0; - -#if defined(USE_SHMEM) -/* - * "sm" stands for "shared memory" - */ -MPI_Comm sm_comm = MPI_COMM_NULL; -int sm_comm_rank = -1; -int sm_comm_size = 0; -#endif -extern int make_iso_compilers_happy; -#endif /* MPI */ - -/* - * This parameter is used in search of tricircles containing a given point: - * if there are no more triangles than N_SEARCH_TURNON - * do linear search - * else - * do more complicated stuff - */ -#define N_SEARCH_TURNON 20 -#define N_FLAGS_TURNON 1000 -#define N_FLAGS_INC 100 - -static void tio_init(struct triangulateio* tio) -{ - tio->pointlist = NULL; - tio->pointattributelist = NULL; - tio->pointmarkerlist = NULL; - tio->numberofpoints = 0; - tio->numberofpointattributes = 0; - tio->trianglelist = NULL; - tio->triangleattributelist = NULL; - tio->trianglearealist = NULL; - tio->neighborlist = NULL; - tio->numberoftriangles = 0; - tio->numberofcorners = 0; - tio->numberoftriangleattributes = 0; - tio->segmentlist = 0; - tio->segmentmarkerlist = NULL; - tio->numberofsegments = 0; - tio->holelist = NULL; - tio->numberofholes = 0; - tio->regionlist = NULL; - tio->numberofregions = 0; - tio->edgelist = NULL; - tio->edgemarkerlist = NULL; - tio->normlist = NULL; - tio->numberofedges = 0; -} - -static void tio_destroy(struct triangulateio* tio) -{ - if (tio->pointlist != NULL) - free(tio->pointlist); - if (tio->pointattributelist != NULL) - free(tio->pointattributelist); - if (tio->pointmarkerlist != NULL) - free(tio->pointmarkerlist); - if (tio->trianglelist != NULL) - free(tio->trianglelist); - if (tio->triangleattributelist != NULL) - free(tio->triangleattributelist); - if (tio->trianglearealist != NULL) - free(tio->trianglearealist); - if (tio->neighborlist != NULL) - free(tio->neighborlist); - if (tio->segmentlist != NULL) - free(tio->segmentlist); - if (tio->segmentmarkerlist != NULL) - free(tio->segmentmarkerlist); - if (tio->holelist != NULL) - free(tio->holelist); - if (tio->regionlist != NULL) - free(tio->regionlist); - if (tio->edgelist != NULL) - free(tio->edgelist); - if (tio->edgemarkerlist != NULL) - free(tio->edgemarkerlist); - if (tio->normlist != NULL) - free(tio->normlist); -} - -static delaunay* delaunay_create() -{ - delaunay* d = calloc(1, sizeof(delaunay)); - - d->xmin = DBL_MAX; - d->xmax = -DBL_MAX; - d->ymin = DBL_MAX; - d->ymax = -DBL_MAX; - - return d; -} - -static void tio2delaunay(struct triangulateio* tio, delaunay* d, void* data) -{ - int i, j; - - if (tio != NULL) { - - /* - * I assume that all input points appear in tio in the same order - * as they were written to tio_in. I have seen no exceptions so far, - * even if duplicate points were presented. Just in case, let us make - * a couple of checks. - */ - assert(tio->numberofpoints == d->npoints); - assert(tio->pointlist[2 * d->npoints - 2] == d->points[d->npoints - 1].x && tio->pointlist[2 * d->npoints - 1] == d->points[d->npoints - 1].y); - - d->ntriangles = tio->numberoftriangles; - d->nedges = tio->numberofedges; - } -#if defined(USE_SHMEM) - MPI_Bcast(&d->ntriangles, 1, MPI_INT, 0, MPI_COMM_WORLD); - MPI_Bcast(&d->nedges, 1, MPI_INT, 0, MPI_COMM_WORLD); -#endif - - d->triangles = data; - d->neighbours = (triangle_neighbours*) &d->triangles[d->ntriangles]; - d->circles = (circle*) &d->neighbours[d->ntriangles]; - d->n_point_triangles = (int*) &d->circles[d->ntriangles]; - d->point_triangles_offset = (int*) &d->n_point_triangles[d->npoints]; - d->point_triangles = (int*) &d->point_triangles_offset[d->npoints]; - d->edges = &d->point_triangles[d->ntriangles * 3]; - - if (tio != NULL) { - if (nn_verbose) - fprintf(stderr, "triangles:\n"); - for (i = 0; i < d->ntriangles; ++i) { - int offset = i * 3; - triangle* t = &d->triangles[i]; - triangle_neighbours* n = &d->neighbours[i]; - circle* c = &d->circles[i]; - int status; - - t->vids[0] = tio->trianglelist[offset]; - t->vids[1] = tio->trianglelist[offset + 1]; - t->vids[2] = tio->trianglelist[offset + 2]; - - n->tids[0] = tio->neighborlist[offset]; - n->tids[1] = tio->neighborlist[offset + 1]; - n->tids[2] = tio->neighborlist[offset + 2]; - - status = circle_build1(c, &d->points[t->vids[0]], &d->points[t->vids[1]], &d->points[t->vids[2]]); - assert(status); - - if (nn_verbose) - fprintf(stderr, " %d: (%d,%d,%d)\n", i, t->vids[0], t->vids[1], t->vids[2]); - } - - for (i = 0; i < d->ntriangles; ++i) { - triangle* t = &d->triangles[i]; - - for (j = 0; j < 3; ++j) - d->n_point_triangles[t->vids[j]]++; - } - for (i = 1; i < d->npoints; ++i) - d->point_triangles_offset[i] = d->point_triangles_offset[i - 1] + d->n_point_triangles[i - 1]; - memset(d->n_point_triangles, 0, d->npoints * sizeof(int)); - - for (i = 0; i < d->ntriangles; ++i) { - triangle* t = &d->triangles[i]; - - for (j = 0; j < 3; ++j) { - int vid = t->vids[j]; - - d->point_triangles[d->point_triangles_offset[vid] + d->n_point_triangles[vid]] = i; - d->n_point_triangles[vid]++; - } - } - memcpy(d->edges, tio->edgelist, d->nedges * 2 * sizeof(int)); - } -#if defined(USE_SHMEM) - MPI_Win_fence(0, d->sm_win_delaunaydata); - MPI_Barrier(sm_comm); -#endif -} - -static size_t delaunay_getdatasize(struct triangulateio* tio) -{ - return tio->numberoftriangles * (sizeof(triangle) + sizeof(triangle_neighbours) + sizeof(circle) + sizeof(int) * 3) + tio->numberofpoints * sizeof(int) * 2 + tio->numberofedges * sizeof(int) * 2; -} - -/* Builds Delaunay triangulation of the given array of points. - * - * @param np Number of points - * @param points Array of points [np] (input) - * @param ns Number of forced segments - * @param segments Array of (forced) segment endpoint indices [2*ns] - * @param nh Number of holes - * @param holes Array of hole (x,y) coordinates [2*nh] - * @return Delaunay triangulation structure with triangulation results - */ -delaunay* delaunay_build(int np, point points[], int ns, int segments[], int nh, double holes[]) -{ - delaunay* d = NULL; - struct triangulateio tio_in; - struct triangulateio tio_out; - int i, j; - -#if defined(USE_SHMEM) - int ntriangles; - - if (sm_comm_rank == 0) { -#endif - char cmd[64] = "eznC"; - - if (np == 0) - return NULL; - - assert(sizeof(REAL) == sizeof(double)); - - tio_init(&tio_in); - tio_in.pointlist = malloc(np * 2 * sizeof(double)); - tio_in.numberofpoints = np; - for (i = 0, j = 0; i < np; ++i) { - tio_in.pointlist[j++] = points[i].x; - tio_in.pointlist[j++] = points[i].y; - } - - if (ns > 0) { - tio_in.segmentlist = malloc(ns * 2 * sizeof(int)); - tio_in.numberofsegments = ns; - memcpy(tio_in.segmentlist, segments, ns * 2 * sizeof(int)); - } - - if (nh > 0) { - tio_in.holelist = malloc(nh * 2 * sizeof(double)); - tio_in.numberofholes = nh; - memcpy(tio_in.holelist, holes, nh * 2 * sizeof(double)); - } - - tio_init(&tio_out); - - if (!nn_verbose) - strcat(cmd, "Q"); - else if (nn_verbose > 1) - strcat(cmd, "VV"); - if (ns != 0) - strcat(cmd, "p"); - - if (nn_verbose) - fflush(stderr); - - /* - * climax - */ - triangulate(cmd, &tio_in, &tio_out, NULL); - - if (nn_verbose) - fflush(stderr); - -#if defined(USE_SHMEM) - ntriangles = tio_out.numberoftriangles; - } - (void) MPI_Bcast(&ntriangles, 1, MPI_INT, 0, MPI_COMM_WORLD); - if (ntriangles == 0) - goto finish; -#endif - -#if !defined(USE_SHMEM) - if (tio_out.numberoftriangles == 0) - goto finish; -#endif - - d = delaunay_create(); - d->npoints = np; - d->points = points; /* (shallow copy) */ - for (i = 0, j = 0; i < np; ++i) { - point* p = &points[i]; - - if (p->x < d->xmin) - d->xmin = p->x; - if (p->x > d->xmax) - d->xmax = p->x; - if (p->y < d->ymin) - d->ymin = p->y; - if (p->y > d->ymax) - d->ymax = p->y; - } - -#if defined(USE_SHMEM) - if (sm_comm_rank == 0) { -#endif - if (nn_verbose) { - fprintf(stderr, "input:\n"); - for (i = 0, j = 0; i < d->npoints; ++i) { - point* p = &d->points[i]; - - fprintf(stderr, " %d: %15.7g %15.7g %15.7g\n", i, p->x, p->y, p->z); - } - } -#if defined(USE_SHMEM) - } -#endif - - { - size_t size = 0; - void* data = NULL; - -#if !defined(USE_SHMEM) - size = delaunay_getdatasize(&tio_out); - data = calloc(1, size); -#else - if (rank == 0) { - size = delaunay_getdatasize(&tio_out); - assert(sizeof(size_t) == sizeof(MPI_UNSIGNED_LONG)); - } - (void) MPI_Bcast(&size, 1, MPI_UNSIGNED_LONG, 0, MPI_COMM_WORLD); - - (void) MPI_Win_allocate_shared((sm_comm_rank == 0) ? size : 0, sizeof(char), MPI_INFO_NULL, sm_comm, &data, &d->sm_win_delaunaydata); - if (sm_comm_rank == 0) { - memset(data, 0, size); - if (nn_verbose) - fprintf(stderr, " MPI: put %u bytes of triangulation data into shared memory\n", (unsigned int) size); - } else { - int disp_unit; - MPI_Aint my_size; - - MPI_Win_shared_query(d->sm_win_delaunaydata, 0, &my_size, &disp_unit, &data); - assert(my_size == size); - assert(disp_unit == sizeof(char)); - assert(data != NULL); - } - MPI_Win_fence(0, d->sm_win_delaunaydata); - MPI_Barrier(sm_comm); -#endif - -#if defined(USE_SHMEM) - if (sm_comm_rank == 0) -#endif - tio2delaunay(&tio_out, d, data); -#if defined(USE_SHMEM) - else - tio2delaunay(NULL, d, data); -#endif - } - - finish: -#if defined(USE_SHMEM) - if (sm_comm_rank == 0) { -#endif - tio_destroy(&tio_in); - tio_destroy(&tio_out); -#if defined(USE_SHMEM) - } -#endif - - return d; -} - -/** Destroys Delaunay triangulation. - * - * @param d Structure to be destroyed - */ -void delaunay_destroy(delaunay* d) -{ - if (d == NULL) - return; - -#if !defined(USE_SHMEM) - if (d->triangles != NULL) - free(d->triangles); -#else - MPI_Win_free(&d->sm_win_delaunaydata); -#endif - free(d); -} - -/** - */ -dsearch* dsearch_build(delaunay* d) -{ - dsearch* ds = calloc(1, sizeof(dsearch)); - - ds->d = d; - ds->first_id = -1; - if (d->ntriangles > 0) - ds->flags = calloc(d->ntriangles, sizeof(int)); - - return ds; -} - -/** - */ -void dsearch_destroy(dsearch* ds) -{ - if (ds->flags != NULL) - free(ds->flags); - if (ds->t_in != NULL) - istack_destroy(ds->t_in); - if (ds->t_out != NULL) - istack_destroy(ds->t_out); - if (ds->flagids != NULL) - free(ds->flagids); - free(ds); -} - -/* Returns whether the point p is on the right side of the vector (p0, p1). - */ -static int onrightside(point* p, point* p0, point* p1) -{ - return (p1->x - p->x) * (p0->y - p->y) > (p0->x - p->x) * (p1->y - p->y); -} - -/* Finds triangle specified point belongs to (if any). - * - * @param d Delaunay triangulation - * @param p Point to be mapped - * @param seed Triangle index to start with - * @return Triangle id if successful, -1 otherwhile - */ -int delaunay_xytoi(delaunay* d, point* p, int id) -{ - triangle* t; - int i; - - if (p->x < d->xmin || p->x > d->xmax || p->y < d->ymin || p->y > d->ymax) - return -1; - - if (id < 0 || id > d->ntriangles) - id = 0; - t = &d->triangles[id]; - do { - for (i = 0; i < 3; ++i) { - int i1 = (i + 1) % 3; - - if (onrightside(p, &d->points[t->vids[i]], &d->points[t->vids[i1]])) { - id = d->neighbours[id].tids[(i + 2) % 3]; - if (id < 0) - return id; - t = &d->triangles[id]; - break; - } - } - } while (i < 3); - - return id; -} - -static void dsearch_addflag(dsearch* ds, int i) -{ - if (ds->nflags == ds->nflagsallocated) { - ds->nflagsallocated += N_FLAGS_INC; - ds->flagids = realloc(ds->flagids, ds->nflagsallocated * sizeof(int)); - } - ds->flagids[ds->nflags] = i; - ds->nflags++; -} - -static void dsearch_resetflags(dsearch* ds) -{ - int i; - - for (i = 0; i < ds->nflags; ++i) - ds->flags[ds->flagids[i]] = 0; - ds->nflags = 0; -} - -/** Find all tricircles specified point belongs to. - * - * @param ds `dsearch' structure - * @param p Point to be mapped - * @param n Pointer to the number of tricircles within `d' containing `p' - * (output) - * @param out Pointer to an array of indices of the corresponding triangles - * [n] (output) - * - * There is a standard search procedure involving search through triangle - * neighbours (not through vertex neighbours). It must be a bit faster due to - * the smaller number of triangle neighbours (3 per triangle) but may fail - * for a point outside convex hall. - * - * We may wish to modify this procedure in future: first check if the point - * is inside the convex hall, and depending on that use one of the two - * search algorithms. It not 100% clear though whether this will lead to a - * substantial speed gains because of the check on convex hall involved. - */ -void dsearch_circles_find(dsearch* ds, point* p, int* n, int** out) -{ - delaunay* d = ds->d; - - /* - * This flag was introduced as a hack to handle some degenerate cases. It - * is set to 1 only if the triangle associated with the first circle is - * already known to contain the point. In this case the circle is assumed - * to contain the point without a check. In my practice this turned - * useful in some cases when point p coincided with one of the vertices - * of a thin triangle. - */ - int contains = 0; - int i; - - if (ds->t_in == NULL) { - ds->t_in = istack_create(); - ds->t_out = istack_create(); - } - - /* - * if there are only a few data points, do linear search - */ - if (d->ntriangles <= N_SEARCH_TURNON) { - istack_reset(ds->t_out); - - for (i = 0; i < d->ntriangles; ++i) { - if (circle_contains(&d->circles[i], p)) { - istack_push(ds->t_out, i); - } - } - - *n = ds->t_out->n; - *out = ds->t_out->v; - - return; - } - /* - * otherwise, do a more complicated stuff - */ - - /* - * It is important to have a reasonable seed here. If the last search - * was successful -- start with the last found tricircle, otherwhile (i) - * try to find a triangle containing p; if fails then (ii) check - * tricircles from the last search; if fails then (iii) make linear - * search through all tricircles - */ - if (ds->first_id < 0 || !circle_contains(&d->circles[ds->first_id], p)) { - /* - * if any triangle contains p -- start with this triangle - */ - ds->first_id = delaunay_xytoi(d, p, ds->first_id); - contains = (ds->first_id >= 0); - - /* - * if no triangle contains p, there still is a chance that it is - * inside some of circumcircles - */ - if (ds->first_id < 0) { - int nn = ds->t_out->n; - int tid = -1; - - /* - * first check results of the last search - */ - for (i = 0; i < nn; ++i) { - tid = ds->t_out->v[i]; - if (circle_contains(&d->circles[tid], p)) - break; - } - /* - * if unsuccessful, search through all circles - */ - if (tid < 0 || i == nn) { - double nt = d->ntriangles; - - for (tid = 0; tid < nt; ++tid) { - if (circle_contains(&d->circles[tid], p)) - break; - } - if (tid == nt) { - istack_reset(ds->t_out); - *n = 0; - *out = NULL; - return; /* failed */ - } - } - ds->first_id = tid; - } - } - - istack_reset(ds->t_in); - istack_reset(ds->t_out); - - istack_push(ds->t_in, ds->first_id); - ds->flags[ds->first_id] = 1; - dsearch_addflag(ds, ds->first_id); - - /* - * main cycle - */ - while (ds->t_in->n > 0) { - int tid = istack_pop(ds->t_in); - triangle* t = &d->triangles[tid]; - - if (contains || circle_contains(&d->circles[tid], p)) { - istack_push(ds->t_out, tid); - for (i = 0; i < 3; ++i) { - int vid = t->vids[i]; - int nt = d->n_point_triangles[vid]; - int j; - - for (j = 0; j < nt; ++j) { - int ntid = d->point_triangles[d->point_triangles_offset[vid] + j]; - - if (ds->flags[ntid] == 0) { - istack_push(ds->t_in, ntid); - ds->flags[ntid] = 1; - dsearch_addflag(ds, ntid); - } - } - } - } - contains = 0; - } - - *n = ds->t_out->n; - *out = ds->t_out->v; - dsearch_resetflags(ds); -} +/****************************************************************************** + * + * File: delaunay.c + * + * Created: 04/08/2000 + * + * Author: Pavel Sakov + * CSIRO Marine Research + * + * Purpose: Delaunay triangulation - a wrapper to triangulate() + * + * Description: None + * + * Revisions: 10/06/2003 PS: delaunay_build(); delaunay_destroy(); + * struct delaunay: from now on, only shallow copy of the + * input data is contained in struct delaunay. This saves + * memory and is consistent with libcsa. + * 30/10/2007 PS: added delaunay_addflag() and + * delaunay_resetflags(); modified delaunay_circles_find() + * to reset the flags to 0 on return. This is very important + * for large datasets, many thanks to John Gerschwitz, + * Petroleum Geo-Services, for identifying the problem. + * 05/05/2021 PS: added MPI code. + * + *****************************************************************************/ + +#define ANSI_DECLARATORS /* for triangle.h */ + +#include +#include +#include +#include +#include +#include +#include +#include "triangle.h" +#include "istack_internal.h" +#include "nan.h" +#include "nn.h" +#include "nncommon.h" +#include "delaunay_internal.h" + +#if defined(MPI) +#include + +int nprocesses = 1; +int rank = 0; + +#if defined(USE_SHMEM) +/* + * "sm" stands for "shared memory" + */ +MPI_Comm sm_comm = MPI_COMM_NULL; +int sm_comm_rank = -1; +int sm_comm_size = 0; +#endif +extern int make_iso_compilers_happy; +#endif /* MPI */ + +/* + * This parameter is used in search of tricircles containing a given point: + * if there are no more triangles than N_SEARCH_TURNON + * do linear search + * else + * do more complicated stuff + */ +#define N_SEARCH_TURNON 20 +#define N_FLAGS_TURNON 1000 +#define N_FLAGS_INC 100 + +static void tio_init(struct triangulateio* tio) +{ + tio->pointlist = NULL; + tio->pointattributelist = NULL; + tio->pointmarkerlist = NULL; + tio->numberofpoints = 0; + tio->numberofpointattributes = 0; + tio->trianglelist = NULL; + tio->triangleattributelist = NULL; + tio->trianglearealist = NULL; + tio->neighborlist = NULL; + tio->numberoftriangles = 0; + tio->numberofcorners = 0; + tio->numberoftriangleattributes = 0; + tio->segmentlist = 0; + tio->segmentmarkerlist = NULL; + tio->numberofsegments = 0; + tio->holelist = NULL; + tio->numberofholes = 0; + tio->regionlist = NULL; + tio->numberofregions = 0; + tio->edgelist = NULL; + tio->edgemarkerlist = NULL; + tio->normlist = NULL; + tio->numberofedges = 0; +} + +static void tio_destroy(struct triangulateio* tio) +{ + if (tio->pointlist != NULL) + free(tio->pointlist); + if (tio->pointattributelist != NULL) + free(tio->pointattributelist); + if (tio->pointmarkerlist != NULL) + free(tio->pointmarkerlist); + if (tio->trianglelist != NULL) + free(tio->trianglelist); + if (tio->triangleattributelist != NULL) + free(tio->triangleattributelist); + if (tio->trianglearealist != NULL) + free(tio->trianglearealist); + if (tio->neighborlist != NULL) + free(tio->neighborlist); + if (tio->segmentlist != NULL) + free(tio->segmentlist); + if (tio->segmentmarkerlist != NULL) + free(tio->segmentmarkerlist); + if (tio->holelist != NULL) + free(tio->holelist); + if (tio->regionlist != NULL) + free(tio->regionlist); + if (tio->edgelist != NULL) + free(tio->edgelist); + if (tio->edgemarkerlist != NULL) + free(tio->edgemarkerlist); + if (tio->normlist != NULL) + free(tio->normlist); +} + +static delaunay* delaunay_create() +{ + delaunay* d = calloc(1, sizeof(delaunay)); + + d->xmin = DBL_MAX; + d->xmax = -DBL_MAX; + d->ymin = DBL_MAX; + d->ymax = -DBL_MAX; + + return d; +} + +static void tio2delaunay(struct triangulateio* tio, delaunay* d, void* data) +{ + int i, j; + + if (tio != NULL) { + + /* + * I assume that all input points appear in tio in the same order + * as they were written to tio_in. I have seen no exceptions so far, + * even if duplicate points were presented. Just in case, let us make + * a couple of checks. + */ + assert(tio->numberofpoints == d->npoints); + assert(tio->pointlist[2 * d->npoints - 2] == d->points[d->npoints - 1].x && tio->pointlist[2 * d->npoints - 1] == d->points[d->npoints - 1].y); + + d->ntriangles = tio->numberoftriangles; + d->nedges = tio->numberofedges; + } +#if defined(USE_SHMEM) + MPI_Bcast(&d->ntriangles, 1, MPI_INT, 0, MPI_COMM_WORLD); + MPI_Bcast(&d->nedges, 1, MPI_INT, 0, MPI_COMM_WORLD); +#endif + + d->triangles = data; + d->neighbours = (triangle_neighbours*) &d->triangles[d->ntriangles]; + d->circles = (circle*) &d->neighbours[d->ntriangles]; + d->n_point_triangles = (int*) &d->circles[d->ntriangles]; + d->point_triangles_offset = (int*) &d->n_point_triangles[d->npoints]; + d->point_triangles = (int*) &d->point_triangles_offset[d->npoints]; + d->edges = &d->point_triangles[d->ntriangles * 3]; + + if (tio != NULL) { + if (nn_verbose) + fprintf(stderr, "triangles:\n"); + for (i = 0; i < d->ntriangles; ++i) { + int offset = i * 3; + triangle* t = &d->triangles[i]; + triangle_neighbours* n = &d->neighbours[i]; + circle* c = &d->circles[i]; + int status; + + t->vids[0] = tio->trianglelist[offset]; + t->vids[1] = tio->trianglelist[offset + 1]; + t->vids[2] = tio->trianglelist[offset + 2]; + + n->tids[0] = tio->neighborlist[offset]; + n->tids[1] = tio->neighborlist[offset + 1]; + n->tids[2] = tio->neighborlist[offset + 2]; + + status = circle_build1(c, &d->points[t->vids[0]], &d->points[t->vids[1]], &d->points[t->vids[2]]); + assert(status); + + if (nn_verbose) + fprintf(stderr, " %d: (%d,%d,%d)\n", i, t->vids[0], t->vids[1], t->vids[2]); + } + + for (i = 0; i < d->ntriangles; ++i) { + triangle* t = &d->triangles[i]; + + for (j = 0; j < 3; ++j) + d->n_point_triangles[t->vids[j]]++; + } + for (i = 1; i < d->npoints; ++i) + d->point_triangles_offset[i] = d->point_triangles_offset[i - 1] + d->n_point_triangles[i - 1]; + memset(d->n_point_triangles, 0, d->npoints * sizeof(int)); + + for (i = 0; i < d->ntriangles; ++i) { + triangle* t = &d->triangles[i]; + + for (j = 0; j < 3; ++j) { + int vid = t->vids[j]; + + d->point_triangles[d->point_triangles_offset[vid] + d->n_point_triangles[vid]] = i; + d->n_point_triangles[vid]++; + } + } + memcpy(d->edges, tio->edgelist, d->nedges * 2 * sizeof(int)); + } +#if defined(USE_SHMEM) + MPI_Win_fence(0, d->sm_win_delaunaydata); + MPI_Barrier(sm_comm); +#endif +} + +static size_t delaunay_getdatasize(struct triangulateio* tio) +{ + return tio->numberoftriangles * (sizeof(triangle) + sizeof(triangle_neighbours) + sizeof(circle) + sizeof(int) * 3) + tio->numberofpoints * sizeof(int) * 2 + tio->numberofedges * sizeof(int) * 2; +} + +/* Builds Delaunay triangulation of the given array of points. + * + * @param np Number of points + * @param points Array of points [np] (input) + * @param ns Number of forced segments + * @param segments Array of (forced) segment endpoint indices [2*ns] + * @param nh Number of holes + * @param holes Array of hole (x,y) coordinates [2*nh] + * @return Delaunay triangulation structure with triangulation results + */ +delaunay* delaunay_build(int np, point points[], int ns, int segments[], int nh, double holes[]) +{ + delaunay* d = NULL; + struct triangulateio tio_in; + struct triangulateio tio_out; + int i, j; + +#if defined(USE_SHMEM) + int ntriangles; + + if (sm_comm_rank == 0) { +#endif + char cmd[64] = "eznC"; + + if (np == 0) + return NULL; + + assert(sizeof(REAL) == sizeof(double)); + + tio_init(&tio_in); + tio_in.pointlist = malloc(np * 2 * sizeof(double)); + tio_in.numberofpoints = np; + for (i = 0, j = 0; i < np; ++i) { + tio_in.pointlist[j++] = points[i].x; + tio_in.pointlist[j++] = points[i].y; + } + + if (ns > 0) { + tio_in.segmentlist = malloc(ns * 2 * sizeof(int)); + tio_in.numberofsegments = ns; + memcpy(tio_in.segmentlist, segments, ns * 2 * sizeof(int)); + } + + if (nh > 0) { + tio_in.holelist = malloc(nh * 2 * sizeof(double)); + tio_in.numberofholes = nh; + memcpy(tio_in.holelist, holes, nh * 2 * sizeof(double)); + } + + tio_init(&tio_out); + + if (!nn_verbose) + strcat(cmd, "Q"); + else if (nn_verbose > 1) + strcat(cmd, "VV"); + if (ns != 0) + strcat(cmd, "p"); + + if (nn_verbose) + fflush(stderr); + + /* + * climax + */ + triangulate(cmd, &tio_in, &tio_out, NULL); + + if (nn_verbose) + fflush(stderr); + +#if defined(USE_SHMEM) + ntriangles = tio_out.numberoftriangles; + } + (void) MPI_Bcast(&ntriangles, 1, MPI_INT, 0, MPI_COMM_WORLD); + if (ntriangles == 0) + goto finish; +#endif + +#if !defined(USE_SHMEM) + if (tio_out.numberoftriangles == 0) + goto finish; +#endif + + d = delaunay_create(); + d->npoints = np; + d->points = points; /* (shallow copy) */ + for (i = 0, j = 0; i < np; ++i) { + point* p = &points[i]; + + if (p->x < d->xmin) + d->xmin = p->x; + if (p->x > d->xmax) + d->xmax = p->x; + if (p->y < d->ymin) + d->ymin = p->y; + if (p->y > d->ymax) + d->ymax = p->y; + } + +#if defined(USE_SHMEM) + if (sm_comm_rank == 0) { +#endif + if (nn_verbose) { + fprintf(stderr, "input:\n"); + for (i = 0, j = 0; i < d->npoints; ++i) { + point* p = &d->points[i]; + + fprintf(stderr, " %d: %15.7g %15.7g %15.7g\n", i, p->x, p->y, p->z); + } + } +#if defined(USE_SHMEM) + } +#endif + + { + size_t size = 0; + void* data = NULL; + +#if !defined(USE_SHMEM) + size = delaunay_getdatasize(&tio_out); + data = calloc(1, size); +#else + if (rank == 0) { + size = delaunay_getdatasize(&tio_out); + assert(sizeof(size_t) == sizeof(MPI_UNSIGNED_LONG)); + } + (void) MPI_Bcast(&size, 1, MPI_UNSIGNED_LONG, 0, MPI_COMM_WORLD); + + (void) MPI_Win_allocate_shared((sm_comm_rank == 0) ? size : 0, sizeof(char), MPI_INFO_NULL, sm_comm, &data, &d->sm_win_delaunaydata); + if (sm_comm_rank == 0) { + memset(data, 0, size); + if (nn_verbose) + fprintf(stderr, " MPI: put %u bytes of triangulation data into shared memory\n", (unsigned int) size); + } else { + int disp_unit; + MPI_Aint my_size; + + MPI_Win_shared_query(d->sm_win_delaunaydata, 0, &my_size, &disp_unit, &data); + assert(my_size == size); + assert(disp_unit == sizeof(char)); + assert(data != NULL); + } + MPI_Win_fence(0, d->sm_win_delaunaydata); + MPI_Barrier(sm_comm); +#endif + +#if defined(USE_SHMEM) + if (sm_comm_rank == 0) +#endif + tio2delaunay(&tio_out, d, data); +#if defined(USE_SHMEM) + else + tio2delaunay(NULL, d, data); +#endif + } + + finish: +#if defined(USE_SHMEM) + if (sm_comm_rank == 0) { +#endif + tio_destroy(&tio_in); + tio_destroy(&tio_out); +#if defined(USE_SHMEM) + } +#endif + + return d; +} + +/** Destroys Delaunay triangulation. + * + * @param d Structure to be destroyed + */ +void delaunay_destroy(delaunay* d) +{ + if (d == NULL) + return; + +#if !defined(USE_SHMEM) + if (d->triangles != NULL) + free(d->triangles); +#else + MPI_Win_free(&d->sm_win_delaunaydata); +#endif + free(d); +} + +/** + */ +dsearch* dsearch_build(delaunay* d) +{ + dsearch* ds = calloc(1, sizeof(dsearch)); + + ds->d = d; + ds->first_id = -1; + if (d->ntriangles > 0) + ds->flags = calloc(d->ntriangles, sizeof(int)); + + return ds; +} + +/** + */ +void dsearch_destroy(dsearch* ds) +{ + if (ds->flags != NULL) + free(ds->flags); + if (ds->t_in != NULL) + istack_destroy(ds->t_in); + if (ds->t_out != NULL) + istack_destroy(ds->t_out); + if (ds->flagids != NULL) + free(ds->flagids); + free(ds); +} + +/* Returns whether the point p is on the right side of the vector (p0, p1). + */ +static int onrightside(point* p, point* p0, point* p1) +{ + return (p1->x - p->x) * (p0->y - p->y) > (p0->x - p->x) * (p1->y - p->y); +} + +/* Finds triangle specified point belongs to (if any). + * + * @param d Delaunay triangulation + * @param p Point to be mapped + * @param seed Triangle index to start with + * @return Triangle id if successful, -1 otherwhile + */ +int delaunay_xytoi(delaunay* d, point* p, int id) +{ + triangle* t; + int i; + + if (p->x < d->xmin || p->x > d->xmax || p->y < d->ymin || p->y > d->ymax) + return -1; + + if (id < 0 || id > d->ntriangles) + id = 0; + t = &d->triangles[id]; + do { + for (i = 0; i < 3; ++i) { + int i1 = (i + 1) % 3; + + if (onrightside(p, &d->points[t->vids[i]], &d->points[t->vids[i1]])) { + id = d->neighbours[id].tids[(i + 2) % 3]; + if (id < 0) + return id; + t = &d->triangles[id]; + break; + } + } + } while (i < 3); + + return id; +} + +static void dsearch_addflag(dsearch* ds, int i) +{ + if (ds->nflags == ds->nflagsallocated) { + ds->nflagsallocated += N_FLAGS_INC; + ds->flagids = realloc(ds->flagids, ds->nflagsallocated * sizeof(int)); + } + ds->flagids[ds->nflags] = i; + ds->nflags++; +} + +static void dsearch_resetflags(dsearch* ds) +{ + int i; + + for (i = 0; i < ds->nflags; ++i) + ds->flags[ds->flagids[i]] = 0; + ds->nflags = 0; +} + +/** Find all tricircles specified point belongs to. + * + * @param ds `dsearch' structure + * @param p Point to be mapped + * @param n Pointer to the number of tricircles within `d' containing `p' + * (output) + * @param out Pointer to an array of indices of the corresponding triangles + * [n] (output) + * + * There is a standard search procedure involving search through triangle + * neighbours (not through vertex neighbours). It must be a bit faster due to + * the smaller number of triangle neighbours (3 per triangle) but may fail + * for a point outside convex hall. + * + * We may wish to modify this procedure in future: first check if the point + * is inside the convex hall, and depending on that use one of the two + * search algorithms. It not 100% clear though whether this will lead to a + * substantial speed gains because of the check on convex hall involved. + */ +void dsearch_circles_find(dsearch* ds, point* p, int* n, int** out) +{ + delaunay* d = ds->d; + + /* + * This flag was introduced as a hack to handle some degenerate cases. It + * is set to 1 only if the triangle associated with the first circle is + * already known to contain the point. In this case the circle is assumed + * to contain the point without a check. In my practice this turned + * useful in some cases when point p coincided with one of the vertices + * of a thin triangle. + */ + int contains = 0; + int i; + + if (ds->t_in == NULL) { + ds->t_in = istack_create(); + ds->t_out = istack_create(); + } + + /* + * if there are only a few data points, do linear search + */ + if (d->ntriangles <= N_SEARCH_TURNON) { + istack_reset(ds->t_out); + + for (i = 0; i < d->ntriangles; ++i) { + if (circle_contains(&d->circles[i], p)) { + istack_push(ds->t_out, i); + } + } + + *n = ds->t_out->n; + *out = ds->t_out->v; + + return; + } + /* + * otherwise, do a more complicated stuff + */ + + /* + * It is important to have a reasonable seed here. If the last search + * was successful -- start with the last found tricircle, otherwhile (i) + * try to find a triangle containing p; if fails then (ii) check + * tricircles from the last search; if fails then (iii) make linear + * search through all tricircles + */ + if (ds->first_id < 0 || !circle_contains(&d->circles[ds->first_id], p)) { + /* + * if any triangle contains p -- start with this triangle + */ + ds->first_id = delaunay_xytoi(d, p, ds->first_id); + contains = (ds->first_id >= 0); + + /* + * if no triangle contains p, there still is a chance that it is + * inside some of circumcircles + */ + if (ds->first_id < 0) { + int nn = ds->t_out->n; + int tid = -1; + + /* + * first check results of the last search + */ + for (i = 0; i < nn; ++i) { + tid = ds->t_out->v[i]; + if (circle_contains(&d->circles[tid], p)) + break; + } + /* + * if unsuccessful, search through all circles + */ + if (tid < 0 || i == nn) { + double nt = d->ntriangles; + + for (tid = 0; tid < nt; ++tid) { + if (circle_contains(&d->circles[tid], p)) + break; + } + if (tid == nt) { + istack_reset(ds->t_out); + *n = 0; + *out = NULL; + return; /* failed */ + } + } + ds->first_id = tid; + } + } + + istack_reset(ds->t_in); + istack_reset(ds->t_out); + + istack_push(ds->t_in, ds->first_id); + ds->flags[ds->first_id] = 1; + dsearch_addflag(ds, ds->first_id); + + /* + * main cycle + */ + while (ds->t_in->n > 0) { + int tid = istack_pop(ds->t_in); + triangle* t = &d->triangles[tid]; + + if (contains || circle_contains(&d->circles[tid], p)) { + istack_push(ds->t_out, tid); + for (i = 0; i < 3; ++i) { + int vid = t->vids[i]; + int nt = d->n_point_triangles[vid]; + int j; + + for (j = 0; j < nt; ++j) { + int ntid = d->point_triangles[d->point_triangles_offset[vid] + j]; + + if (ds->flags[ntid] == 0) { + istack_push(ds->t_in, ntid); + ds->flags[ntid] = 1; + dsearch_addflag(ds, ntid); + } + } + } + } + contains = 0; + } + + *n = ds->t_out->n; + *out = ds->t_out->v; + dsearch_resetflags(ds); +} diff --git a/autoarray/util/nn/src/nn/delaunay.h b/autoarray/util/nn/src/nn/delaunay.h index 53a78f48f..420317a0d 100644 --- a/autoarray/util/nn/src/nn/delaunay.h +++ b/autoarray/util/nn/src/nn/delaunay.h @@ -1,56 +1,56 @@ -/****************************************************************************** - * - * File: delaunay.h - * - * Created: 04/08/2000 - * - * Author: Pavel Sakov - * CSIRO Marine Research - * - * Purpose: Header for delaunay triangulation wrapper - * - * Description: None - * - * Revisions: 30/10/2007 PS: Added fields nflags, nflagsallocated and - * flagids for flag accounting, to make it possible to reset - * only engaged flags rather than the whole array. - * - *****************************************************************************/ - -#if !defined(_DELAUNAY_H) -#define _DELAUNAY_H - -typedef struct { - int vids[3]; -} triangle; - -typedef struct { - int tids[3]; -} triangle_neighbours; - -#if !defined(_STRUCT_DELAUNAY) -#define _STRUCT_DELAUNAY -struct delaunay; -typedef struct delaunay delaunay; -#endif - -delaunay* delaunay_build(int np, point points[], int ns, int segments[], int nh, double holes[]); -void delaunay_destroy(delaunay* d); - -#if defined(MPI) -#include - -extern int nprocesses; -extern int rank; - -#if defined(USE_SHMEM) -/* - * "sm" stands for "shared memory" - */ -extern MPI_Comm sm_comm; -extern int sm_comm_rank; -extern int sm_comm_size; -#endif -#endif - -#endif +/****************************************************************************** + * + * File: delaunay.h + * + * Created: 04/08/2000 + * + * Author: Pavel Sakov + * CSIRO Marine Research + * + * Purpose: Header for delaunay triangulation wrapper + * + * Description: None + * + * Revisions: 30/10/2007 PS: Added fields nflags, nflagsallocated and + * flagids for flag accounting, to make it possible to reset + * only engaged flags rather than the whole array. + * + *****************************************************************************/ + +#if !defined(_DELAUNAY_H) +#define _DELAUNAY_H + +typedef struct { + int vids[3]; +} triangle; + +typedef struct { + int tids[3]; +} triangle_neighbours; + +#if !defined(_STRUCT_DELAUNAY) +#define _STRUCT_DELAUNAY +struct delaunay; +typedef struct delaunay delaunay; +#endif + +delaunay* delaunay_build(int np, point points[], int ns, int segments[], int nh, double holes[]); +void delaunay_destroy(delaunay* d); + +#if defined(MPI) +#include + +extern int nprocesses; +extern int rank; + +#if defined(USE_SHMEM) +/* + * "sm" stands for "shared memory" + */ +extern MPI_Comm sm_comm; +extern int sm_comm_rank; +extern int sm_comm_size; +#endif +#endif + +#endif diff --git a/autoarray/util/nn/src/nn/delaunay_internal.h b/autoarray/util/nn/src/nn/delaunay_internal.h index 3109c5501..9d3497a8a 100644 --- a/autoarray/util/nn/src/nn/delaunay_internal.h +++ b/autoarray/util/nn/src/nn/delaunay_internal.h @@ -1,85 +1,85 @@ -/****************************************************************************** - * - * File: delaunay_internal.h - * - * Created: 05/05/2021 - * - * Author: Pavel Sakov - * BoM - * - * Purpose: Internal header for delaunay triangulation. - * - * Description: Internal header for delaunay triangulation. - * Revisions: - * - *****************************************************************************/ - -#if !defined(_DELAUNAY_INTERNAL_H) -#define _DELAUNAY_INTERNAL_H - -#if defined(MPI) -#include -#endif -#include "istack.h" -#include "delaunay.h" - -/** Structure to perform the Delaunay triangulation of a given array of points. - * - * Contains a deep copy of the input array of points. - * Contains triangles, circles and edges resulted from the triangulation. - * Contains neighbour triangles for each triangle. - * Contains point to triangle map. - */ -struct delaunay { - int npoints; - point* points; - double xmin; - double xmax; - double ymin; - double ymax; - - int ntriangles; - int nedges; - - triangle* triangles; - circle* circles; - triangle_neighbours* neighbours; /* for delaunay_xytoi() */ - int* n_point_triangles; /* n_point_triangles[i] is number of - * triangles i-th point belongs to */ - int* point_triangles_offset; - int* point_triangles; /* point_triangles[point_triangles_offset[i] - * + j] is the index of j-th triangle i-th - * point belongs to */ - int* edges; /* n-th edge is formed by points[edges[n*2]] - * and points[edges[n*2+1]] */ - -#if defined(USE_SHMEM) - MPI_Win sm_win_delaunaydata; -#endif -}; - -typedef struct { - delaunay* d; - - int ntriangles; - int* flags; - int first_id; /* last search result, used in start up of a - * new search */ - istack* t_in; - istack* t_out; - - /* - * to keep track of flags set to 1 in the case of very large data sets - */ - int nflags; - int nflagsallocated; - int* flagids; -} dsearch; - -int delaunay_xytoi(delaunay* d, point* p, int seed); - -dsearch* dsearch_build(delaunay* d); -void dsearch_destroy(dsearch* ds); -void dsearch_circles_find(dsearch* d, point* p, int* n, int** out); - -#endif /* _DELAUNAY_INTERNAL_H */ +/****************************************************************************** + * + * File: delaunay_internal.h + * + * Created: 05/05/2021 + * + * Author: Pavel Sakov + * BoM + * + * Purpose: Internal header for delaunay triangulation. + * + * Description: Internal header for delaunay triangulation. + * Revisions: + * + *****************************************************************************/ + +#if !defined(_DELAUNAY_INTERNAL_H) +#define _DELAUNAY_INTERNAL_H + +#if defined(MPI) +#include +#endif +#include "istack.h" +#include "delaunay.h" + +/** Structure to perform the Delaunay triangulation of a given array of points. + * + * Contains a deep copy of the input array of points. + * Contains triangles, circles and edges resulted from the triangulation. + * Contains neighbour triangles for each triangle. + * Contains point to triangle map. + */ +struct delaunay { + int npoints; + point* points; + double xmin; + double xmax; + double ymin; + double ymax; + + int ntriangles; + int nedges; + + triangle* triangles; + circle* circles; + triangle_neighbours* neighbours; /* for delaunay_xytoi() */ + int* n_point_triangles; /* n_point_triangles[i] is number of + * triangles i-th point belongs to */ + int* point_triangles_offset; + int* point_triangles; /* point_triangles[point_triangles_offset[i] + * + j] is the index of j-th triangle i-th + * point belongs to */ + int* edges; /* n-th edge is formed by points[edges[n*2]] + * and points[edges[n*2+1]] */ + +#if defined(USE_SHMEM) + MPI_Win sm_win_delaunaydata; +#endif +}; + +typedef struct { + delaunay* d; + + int ntriangles; + int* flags; + int first_id; /* last search result, used in start up of a + * new search */ + istack* t_in; + istack* t_out; + + /* + * to keep track of flags set to 1 in the case of very large data sets + */ + int nflags; + int nflagsallocated; + int* flagids; +} dsearch; + +int delaunay_xytoi(delaunay* d, point* p, int seed); + +dsearch* dsearch_build(delaunay* d); +void dsearch_destroy(dsearch* ds); +void dsearch_circles_find(dsearch* d, point* p, int* n, int** out); + +#endif /* _DELAUNAY_INTERNAL_H */ diff --git a/autoarray/util/nn/src/nn/distribute.c b/autoarray/util/nn/src/nn/distribute.c index 064a1c610..f5643ddd1 100644 --- a/autoarray/util/nn/src/nn/distribute.c +++ b/autoarray/util/nn/src/nn/distribute.c @@ -1,124 +1,124 @@ -/****************************************************************************** - * - * File: distribute.c - * - * Created: 12/2012 - * - * Author: Pavel Sakov - * Bureau of Meteorology - * - * Description: Distributes indices in the interval [i1, i2] between `nproc' - * processes. Process IDs are assumed to be in the interval - * [0, nproc-1]. The calling process has ID `rank'. The results - * are stored in 6 global variables, with the following relations - * between them: - * my_number_of_iterations = my_last_iteration - * - my_first_iteration + 1 - * my_number_of_iterations = number_of_iterations[rank] - * my_first_iteration = first_iteratin[rank] - * my_last_iteration = last_iteration[rank] - * - * Revisions: 18/04/2018 PS: `nproc' was supposed to be an alias for - * `nprocesses'; now it can be arbitrary number such that - * 0 < nproc < nprocesses. - * - *****************************************************************************/ - -#include -#include -#include -#include -#include -#if defined(MPI) -#include -#endif -#include "distribute.h" - -int my_number_of_iterations = -1; -int my_first_iteration = -1; -int my_last_iteration = -1; -int* number_of_iterations = NULL; -int* first_iteration = NULL; -int* last_iteration = NULL; - -/** Distributes indices in the interval [i1, i2] between `nproc' processes. - * @param i1 Start of the interval - * @param i2 End of the interval - * @param nproc Number of processes (CPUs) to be be used - * @param myrank ID of the process - * @param prefix Prefix for log printing; NULL to print no log. - * Note that `nprocesses' and `rank' are supposed to be external (global) - * variables. - */ -void distribute_iterations(int i1, int i2, int nproc, int myrank) -{ - int n, npp, i; - -#if defined(MPI) - fflush(stdout); - MPI_Barrier(MPI_COMM_WORLD); -#endif - assert(i2 >= i1); - - if (number_of_iterations == NULL) { - number_of_iterations = malloc(nprocesses * sizeof(int)); - first_iteration = malloc(nprocesses * sizeof(int)); - last_iteration = malloc(nprocesses * sizeof(int)); - } -#if defined(MPI) - MPI_Barrier(MPI_COMM_WORLD); -#endif - - assert(nproc > 0 && nproc <= nprocesses); - - n = i2 - i1 + 1; - npp = n / nproc; - if (n % nproc == 0) { - for (i = 0; i < nproc; ++i) - number_of_iterations[i] = npp; - } else { - int j = n - nproc * npp; - - for (i = 0; i < j; ++i) - number_of_iterations[i] = npp + 1; - for (i = j; i < nproc; ++i) - number_of_iterations[i] = npp; - } - for (i = nproc; i < nprocesses; ++i) - number_of_iterations[i] = 0; -#if defined(MPI) - MPI_Barrier(MPI_COMM_WORLD); -#endif - - first_iteration[0] = i1; - last_iteration[0] = i1 + number_of_iterations[0] - 1; - for (i = 1; i < nproc; ++i) { - first_iteration[i] = last_iteration[i - 1] + 1; - last_iteration[i] = first_iteration[i] + number_of_iterations[i] - 1; - } - for (i = nproc; i < nprocesses; ++i) { - first_iteration[i] = last_iteration[i - 1] + 1; - last_iteration[i] = first_iteration[i] + number_of_iterations[i] - 1; - } - - my_first_iteration = first_iteration[myrank]; - my_last_iteration = last_iteration[myrank]; - my_number_of_iterations = number_of_iterations[myrank]; -} - -/** - */ -void distribute_free(void) -{ - if (number_of_iterations == NULL) - return; - free(number_of_iterations); - number_of_iterations = NULL; - free(first_iteration); - first_iteration = NULL; - free(last_iteration); - last_iteration = NULL; - my_number_of_iterations = -1; - my_first_iteration = -1; - my_last_iteration = -1; -} +/****************************************************************************** + * + * File: distribute.c + * + * Created: 12/2012 + * + * Author: Pavel Sakov + * Bureau of Meteorology + * + * Description: Distributes indices in the interval [i1, i2] between `nproc' + * processes. Process IDs are assumed to be in the interval + * [0, nproc-1]. The calling process has ID `rank'. The results + * are stored in 6 global variables, with the following relations + * between them: + * my_number_of_iterations = my_last_iteration + * - my_first_iteration + 1 + * my_number_of_iterations = number_of_iterations[rank] + * my_first_iteration = first_iteratin[rank] + * my_last_iteration = last_iteration[rank] + * + * Revisions: 18/04/2018 PS: `nproc' was supposed to be an alias for + * `nprocesses'; now it can be arbitrary number such that + * 0 < nproc < nprocesses. + * + *****************************************************************************/ + +#include +#include +#include +#include +#include +#if defined(MPI) +#include +#endif +#include "distribute.h" + +int my_number_of_iterations = -1; +int my_first_iteration = -1; +int my_last_iteration = -1; +int* number_of_iterations = NULL; +int* first_iteration = NULL; +int* last_iteration = NULL; + +/** Distributes indices in the interval [i1, i2] between `nproc' processes. + * @param i1 Start of the interval + * @param i2 End of the interval + * @param nproc Number of processes (CPUs) to be be used + * @param myrank ID of the process + * @param prefix Prefix for log printing; NULL to print no log. + * Note that `nprocesses' and `rank' are supposed to be external (global) + * variables. + */ +void distribute_iterations(int i1, int i2, int nproc, int myrank) +{ + int n, npp, i; + +#if defined(MPI) + fflush(stdout); + MPI_Barrier(MPI_COMM_WORLD); +#endif + assert(i2 >= i1); + + if (number_of_iterations == NULL) { + number_of_iterations = malloc(nprocesses * sizeof(int)); + first_iteration = malloc(nprocesses * sizeof(int)); + last_iteration = malloc(nprocesses * sizeof(int)); + } +#if defined(MPI) + MPI_Barrier(MPI_COMM_WORLD); +#endif + + assert(nproc > 0 && nproc <= nprocesses); + + n = i2 - i1 + 1; + npp = n / nproc; + if (n % nproc == 0) { + for (i = 0; i < nproc; ++i) + number_of_iterations[i] = npp; + } else { + int j = n - nproc * npp; + + for (i = 0; i < j; ++i) + number_of_iterations[i] = npp + 1; + for (i = j; i < nproc; ++i) + number_of_iterations[i] = npp; + } + for (i = nproc; i < nprocesses; ++i) + number_of_iterations[i] = 0; +#if defined(MPI) + MPI_Barrier(MPI_COMM_WORLD); +#endif + + first_iteration[0] = i1; + last_iteration[0] = i1 + number_of_iterations[0] - 1; + for (i = 1; i < nproc; ++i) { + first_iteration[i] = last_iteration[i - 1] + 1; + last_iteration[i] = first_iteration[i] + number_of_iterations[i] - 1; + } + for (i = nproc; i < nprocesses; ++i) { + first_iteration[i] = last_iteration[i - 1] + 1; + last_iteration[i] = first_iteration[i] + number_of_iterations[i] - 1; + } + + my_first_iteration = first_iteration[myrank]; + my_last_iteration = last_iteration[myrank]; + my_number_of_iterations = number_of_iterations[myrank]; +} + +/** + */ +void distribute_free(void) +{ + if (number_of_iterations == NULL) + return; + free(number_of_iterations); + number_of_iterations = NULL; + free(first_iteration); + first_iteration = NULL; + free(last_iteration); + last_iteration = NULL; + my_number_of_iterations = -1; + my_first_iteration = -1; + my_last_iteration = -1; +} diff --git a/autoarray/util/nn/src/nn/distribute.h b/autoarray/util/nn/src/nn/distribute.h index 5b90caad2..ee7cefe7a 100644 --- a/autoarray/util/nn/src/nn/distribute.h +++ b/autoarray/util/nn/src/nn/distribute.h @@ -1,31 +1,31 @@ -/****************************************************************************** - * - * File: distribute.h - * - * Created: 12/2012 - * - * Author: Pavel Sakov - * Bureau of Meteorology - * - * Description: - * - * Revisions: - * - *****************************************************************************/ - -#if !defined(_DISTRIBUTE_H) - -extern int nprocesses; -extern int rank; -extern int my_number_of_iterations; -extern int my_first_iteration; -extern int my_last_iteration; -extern int* number_of_iterations; -extern int* first_iteration; -extern int* last_iteration; - -void distribute_iterations(int i1, int i2, int nproc, int rank); -void distribute_free(void); - -#define _DISTRIBUTE_H -#endif +/****************************************************************************** + * + * File: distribute.h + * + * Created: 12/2012 + * + * Author: Pavel Sakov + * Bureau of Meteorology + * + * Description: + * + * Revisions: + * + *****************************************************************************/ + +#if !defined(_DISTRIBUTE_H) + +extern int nprocesses; +extern int rank; +extern int my_number_of_iterations; +extern int my_first_iteration; +extern int my_last_iteration; +extern int* number_of_iterations; +extern int* first_iteration; +extern int* last_iteration; + +void distribute_iterations(int i1, int i2, int nproc, int rank); +void distribute_free(void); + +#define _DISTRIBUTE_H +#endif diff --git a/autoarray/util/nn/src/nn/examples/1/README b/autoarray/util/nn/src/nn/examples/1/README index 21a092247..362f78125 100644 --- a/autoarray/util/nn/src/nn/examples/1/README +++ b/autoarray/util/nn/src/nn/examples/1/README @@ -1,8 +1,8 @@ -This example reconstructs the Franke test function from 100, 300 and 1000 -random data points in [0,1]^2 square. - -To generate and approximate the data, run ./test.sh. -To visualize, in Matlab run "viewexample". - -Good luck! -Pavel Sakov +This example reconstructs the Franke test function from 100, 300 and 1000 +random data points in [0,1]^2 square. + +To generate and approximate the data, run ./test.sh. +To visualize, in Matlab run "viewexample". + +Good luck! +Pavel Sakov diff --git a/autoarray/util/nn/src/nn/examples/1/generate.awk b/autoarray/util/nn/src/nn/examples/1/generate.awk index 5d49d37b2..dfcaec3ef 100644 --- a/autoarray/util/nn/src/nn/examples/1/generate.awk +++ b/autoarray/util/nn/src/nn/examples/1/generate.awk @@ -1,28 +1,28 @@ -BEGIN { - r = 1; - T = 10000000; - N = 100; -} - -{ - for (i = 0; i < N; ++i) { - x = random(); - y = random(); - xx = x * 9.0; - yy = y * 9.0; - z = 0.75 * exp(- (xx-2) * (xx-2) / 4 - (yy-2) * (yy-2) / 4) + 0.75 * exp(- (xx-2) * (xx-2) / 49 - (yy-2) / 10) + 0.5 * exp(- (xx-7) * (xx-7) / 4 - (yy-3) * (yy-3) / 4) - 0.2 * exp(- (xx-4) * (xx-4) - (yy-7)*(yy-7)); - printf("%.10g %.10g %.10g\n", x, y, z); - } -} - -END { -} - -# One could use in-built generator rand(), but its output may depend on the -# awk implementation used... -# -function random() -{ - r = (r * 40353607) % T; - return r / T; -} +BEGIN { + r = 1; + T = 10000000; + N = 100; +} + +{ + for (i = 0; i < N; ++i) { + x = random(); + y = random(); + xx = x * 9.0; + yy = y * 9.0; + z = 0.75 * exp(- (xx-2) * (xx-2) / 4 - (yy-2) * (yy-2) / 4) + 0.75 * exp(- (xx-2) * (xx-2) / 49 - (yy-2) / 10) + 0.5 * exp(- (xx-7) * (xx-7) / 4 - (yy-3) * (yy-3) / 4) - 0.2 * exp(- (xx-4) * (xx-4) - (yy-7)*(yy-7)); + printf("%.10g %.10g %.10g\n", x, y, z); + } +} + +END { +} + +# One could use in-built generator rand(), but its output may depend on the +# awk implementation used... +# +function random() +{ + r = (r * 40353607) % T; + return r / T; +} diff --git a/autoarray/util/nn/src/nn/examples/1/makefile b/autoarray/util/nn/src/nn/examples/1/makefile index 963080e1c..53acab5cf 100644 --- a/autoarray/util/nn/src/nn/examples/1/makefile +++ b/autoarray/util/nn/src/nn/examples/1/makefile @@ -1,4 +1,4 @@ -all: - ./test.sh -clean: - rm -f data-*.txt out-*.txt *~ core *.ps +all: + ./test.sh +clean: + rm -f data-*.txt out-*.txt *~ core *.ps diff --git a/autoarray/util/nn/src/nn/examples/1/suptitle.m b/autoarray/util/nn/src/nn/examples/1/suptitle.m index 19b025423..803a19a9d 100644 --- a/autoarray/util/nn/src/nn/examples/1/suptitle.m +++ b/autoarray/util/nn/src/nn/examples/1/suptitle.m @@ -1,112 +1,112 @@ -function hout=suptitle(str) -%SUPTITLE Puts a title above all subplots. -% SUPTITLE('text') adds text to the top of the figure -% above all subplots (a "super title"). Use this function -% after all subplot commands. - -% Drea Thomas 6/15/95 drea@mathworks.com -% John Cristion 12/13/00 modified -% Mark Histed 03/13/04 histed@mit.edu: fix disappearing legend on last plot -% -% $Id: suptitle.m,v 1.1.1.1 2008/12/12 16:07:41 pavels Exp $ - -% Warning: If the figure or axis units are non-default, this -% will break. - -% Parameters used to position the supertitle. - -% Amount of the figure window devoted to subplots -plotregion = .92; - -% Y position of title in normalized coordinates -titleypos = .95; - -% Fontsize for supertitle -fs = get(gcf,'defaultaxesfontsize'); - -% Fudge factor to adjust y spacing between subplots -fudge = 1; - -haold = gca; -figunits = get(gcf, 'units'); - -% Get the (approximate) difference between full height (plot + title -% + xlabel) and bounding rectangle. - -if (~strcmp(figunits, 'pixels')), - set(gcf,'units', 'pixels'); - pos = get(gcf, 'position'); - set(gcf, 'units', figunits); -else, - pos = get(gcf, 'position'); -end -ff = (fs - 4) * 1.27 * 5 / pos(4) * fudge; - -% The 5 here reflects about 3 characters of height below -% an axis and 2 above. 1.27 is pixels per point. - -% Determine the bounding rectange for all the plots - -% findobj is a 4.2 thing.. if you don't have 4.2 comment out -% the next line and uncomment the following block. -% -%h = findobj(gcf,'Type','axes'); % Change suggested by Stacy J. Hills -% -% If you don't have 4.2, use this code instead -ch = get(gcf, 'children'); -h = []; -for i = 1:length(ch), - if strcmp(get(ch(i), 'type'), 'axes'), - h = [h, ch(i)]; - end -end - -max_y = 0; -min_y = 1; - -oldtitle = 0; -for i = 1 : length(h), - if (~strcmp(get(h(i), 'Tag'), 'suptitle')), - pos = get(h(i), 'pos'); - if (pos(2) < min_y) - min_y = pos(2) - ff / 5 * 3; - end; - if (pos(4) + pos(2) > max_y) - max_y = pos(4) + pos(2) + ff / 5 * 2; - end; - else - oldtitle = h(i); - end -end - -if max_y > plotregion, - scale = (plotregion - min_y) / (max_y - min_y); - for i = 1 : length(h), - pos = get(h(i), 'position'); - pos(2) = (pos(2)-min_y) * scale + min_y; - pos(4) = pos(4) * scale - (1 - scale) * ff / 5 * 3; - set(h(i),'position',pos); - end -end - -np = get(gcf, 'nextplot'); -set(gcf, 'nextplot', 'add'); -if (oldtitle) - delete(oldtitle); -end -ha = axes('pos', [0 1 1 1], 'visible', 'off', 'Tag', 'suptitle'); -ht = text(.5, titleypos - 1, str); -set(ht, 'horizontalalignment', 'center', 'fontsize', fs); -set(gcf, 'nextplot', np); -axes(haold); - -% fix legend if one exists -legH = findobj(gcf, 'Type', 'Legend'); -if ~isempty(legH) - axes(legH); -end - -if nargout - hout = ht; -end - +function hout=suptitle(str) +%SUPTITLE Puts a title above all subplots. +% SUPTITLE('text') adds text to the top of the figure +% above all subplots (a "super title"). Use this function +% after all subplot commands. + +% Drea Thomas 6/15/95 drea@mathworks.com +% John Cristion 12/13/00 modified +% Mark Histed 03/13/04 histed@mit.edu: fix disappearing legend on last plot +% +% $Id: suptitle.m,v 1.1.1.1 2008/12/12 16:07:41 pavels Exp $ + +% Warning: If the figure or axis units are non-default, this +% will break. + +% Parameters used to position the supertitle. + +% Amount of the figure window devoted to subplots +plotregion = .92; + +% Y position of title in normalized coordinates +titleypos = .95; + +% Fontsize for supertitle +fs = get(gcf,'defaultaxesfontsize'); + +% Fudge factor to adjust y spacing between subplots +fudge = 1; + +haold = gca; +figunits = get(gcf, 'units'); + +% Get the (approximate) difference between full height (plot + title +% + xlabel) and bounding rectangle. + +if (~strcmp(figunits, 'pixels')), + set(gcf,'units', 'pixels'); + pos = get(gcf, 'position'); + set(gcf, 'units', figunits); +else, + pos = get(gcf, 'position'); +end +ff = (fs - 4) * 1.27 * 5 / pos(4) * fudge; + +% The 5 here reflects about 3 characters of height below +% an axis and 2 above. 1.27 is pixels per point. + +% Determine the bounding rectange for all the plots + +% findobj is a 4.2 thing.. if you don't have 4.2 comment out +% the next line and uncomment the following block. +% +%h = findobj(gcf,'Type','axes'); % Change suggested by Stacy J. Hills +% +% If you don't have 4.2, use this code instead +ch = get(gcf, 'children'); +h = []; +for i = 1:length(ch), + if strcmp(get(ch(i), 'type'), 'axes'), + h = [h, ch(i)]; + end +end + +max_y = 0; +min_y = 1; + +oldtitle = 0; +for i = 1 : length(h), + if (~strcmp(get(h(i), 'Tag'), 'suptitle')), + pos = get(h(i), 'pos'); + if (pos(2) < min_y) + min_y = pos(2) - ff / 5 * 3; + end; + if (pos(4) + pos(2) > max_y) + max_y = pos(4) + pos(2) + ff / 5 * 2; + end; + else + oldtitle = h(i); + end +end + +if max_y > plotregion, + scale = (plotregion - min_y) / (max_y - min_y); + for i = 1 : length(h), + pos = get(h(i), 'position'); + pos(2) = (pos(2)-min_y) * scale + min_y; + pos(4) = pos(4) * scale - (1 - scale) * ff / 5 * 3; + set(h(i),'position',pos); + end +end + +np = get(gcf, 'nextplot'); +set(gcf, 'nextplot', 'add'); +if (oldtitle) + delete(oldtitle); +end +ha = axes('pos', [0 1 1 1], 'visible', 'off', 'Tag', 'suptitle'); +ht = text(.5, titleypos - 1, str); +set(ht, 'horizontalalignment', 'center', 'fontsize', fs); +set(gcf, 'nextplot', np); +axes(haold); + +% fix legend if one exists +legH = findobj(gcf, 'Type', 'Legend'); +if ~isempty(legH) + axes(legH); +end + +if nargout + hout = ht; +end + diff --git a/autoarray/util/nn/src/nn/examples/1/test.sh b/autoarray/util/nn/src/nn/examples/1/test.sh index 696a2772a..27b33c88e 100644 --- a/autoarray/util/nn/src/nn/examples/1/test.sh +++ b/autoarray/util/nn/src/nn/examples/1/test.sh @@ -1,25 +1,25 @@ -#!/bin/bash - -if [ ! -x ../../nnbathy ] -then - echo "error: no executable found" - echo 'Run "./configure" and "make" in the source directory' - exit 1 -fi - -echo " Example of Natural Neighbours interpolation:" -echo " Franke test function reconstruction by 100, 300 and 1000 random points" - -for N in 100 300 1000 -do - echo " N = $N:" - echo -n " Generating..." - echo "1" | awk -f ./generate.awk N=$N > data-${N}.txt - echo "done" - echo -n " Interpolating into 256x256 grid..." - ../../nnbathy -i data-$N.txt -n 256x256 > out-${N}.txt - echo "done" -done - -echo " Finished" -echo " To visualize, in Matlab run \"viewexample\"" +#!/bin/bash + +if [ ! -x ../../nnbathy ] +then + echo "error: no executable found" + echo 'Run "./configure" and "make" in the source directory' + exit 1 +fi + +echo " Example of Natural Neighbours interpolation:" +echo " Franke test function reconstruction by 100, 300 and 1000 random points" + +for N in 100 300 1000 +do + echo " N = $N:" + echo -n " Generating..." + echo "1" | awk -f ./generate.awk N=$N > data-${N}.txt + echo "done" + echo -n " Interpolating into 256x256 grid..." + ../../nnbathy -i data-$N.txt -n 256x256 > out-${N}.txt + echo "done" +done + +echo " Finished" +echo " To visualize, in Matlab run \"viewexample\"" diff --git a/autoarray/util/nn/src/nn/examples/1/viewexample.m b/autoarray/util/nn/src/nn/examples/1/viewexample.m index d6e86fd30..6bf8cffe1 100644 --- a/autoarray/util/nn/src/nn/examples/1/viewexample.m +++ b/autoarray/util/nn/src/nn/examples/1/viewexample.m @@ -1,57 +1,57 @@ -function viewexample() - - subplot(3, 1, 1); - view('data-100.txt', 'out-100.txt'); - title('100 data points'); - pause(0.1); - - subplot(3, 1, 2); - view('data-300.txt', 'out-300.txt'); - title('300 data points'); - pause(0.1); - - subplot(3, 1, 3); - view('data-1000.txt', 'out-1000.txt'); - title('1000 data points'); - - suptitle('Interpolation of Franke test function using nnbathy'); - - return - -function view(data, output) - - N = 256; - for i = 0:15 - V(i+1) = i * 0.1; - end - points = load(output); - k = 1; - x = zeros(N, N); - y = zeros(N, N); - z = zeros(N, N); - z1 = zeros(N, N); - for j = N:-1:1 - for i = 1:N - x(j, i) = points(k, 1); - y(j, i) = points(k, 2); - z(j, i) = points(k, 3); - xx = x(j, i) * 9.0; - yy = y(j, i) * 9.0; - z1(j, i) = 0.75 * exp(- (xx-2.0) * (xx-2.0) / 4.0 - (yy-2.0) * (yy-2.0) / 4.0) + 0.75 * exp(- (xx-2.0) * (xx-2.0) / 49.0 - (yy-2.0) / 10.0) + 0.5 * exp(- (xx-7.0) * (xx-7.0) / 4.0 - (yy-3.0) * (yy-3.0) / 4.0) - 0.2 * exp(- (xx-4.0) * (xx-4.0) - (yy-7.0)*(yy-7.0)); - k = k + 1; - end - end - - contour(x, y, z1, V, 'k'); - hold on; - [c, h] = contour(x, y, z, V); - clabel(c, h); - - points = load(data); - x = points(:, 1); - y = points(:, 2); - plot(x, y, 'k+', 'markersize', 3); - axis([0 1 0 1]); - axis square; - - return +function viewexample() + + subplot(3, 1, 1); + view('data-100.txt', 'out-100.txt'); + title('100 data points'); + pause(0.1); + + subplot(3, 1, 2); + view('data-300.txt', 'out-300.txt'); + title('300 data points'); + pause(0.1); + + subplot(3, 1, 3); + view('data-1000.txt', 'out-1000.txt'); + title('1000 data points'); + + suptitle('Interpolation of Franke test function using nnbathy'); + + return + +function view(data, output) + + N = 256; + for i = 0:15 + V(i+1) = i * 0.1; + end + points = load(output); + k = 1; + x = zeros(N, N); + y = zeros(N, N); + z = zeros(N, N); + z1 = zeros(N, N); + for j = N:-1:1 + for i = 1:N + x(j, i) = points(k, 1); + y(j, i) = points(k, 2); + z(j, i) = points(k, 3); + xx = x(j, i) * 9.0; + yy = y(j, i) * 9.0; + z1(j, i) = 0.75 * exp(- (xx-2.0) * (xx-2.0) / 4.0 - (yy-2.0) * (yy-2.0) / 4.0) + 0.75 * exp(- (xx-2.0) * (xx-2.0) / 49.0 - (yy-2.0) / 10.0) + 0.5 * exp(- (xx-7.0) * (xx-7.0) / 4.0 - (yy-3.0) * (yy-3.0) / 4.0) - 0.2 * exp(- (xx-4.0) * (xx-4.0) - (yy-7.0)*(yy-7.0)); + k = k + 1; + end + end + + contour(x, y, z1, V, 'k'); + hold on; + [c, h] = contour(x, y, z, V); + clabel(c, h); + + points = load(data); + x = points(:, 1); + y = points(:, 2); + plot(x, y, 'k+', 'markersize', 3); + axis([0 1 0 1]); + axis square; + + return diff --git a/autoarray/util/nn/src/nn/examples/2/README b/autoarray/util/nn/src/nn/examples/2/README index 0c269621b..b0e96ce7f 100644 --- a/autoarray/util/nn/src/nn/examples/2/README +++ b/autoarray/util/nn/src/nn/examples/2/README @@ -1,29 +1,29 @@ -This example represents interpolation of some real-life bathymetry data -along the shiptrack. - -It is quite tough for interpolation because of the instrumental round-up -of the position of the ship (resulting in a lot of close/duplicate data -points and in data points aligned to nodes of a regular grid) and because -of clustering of data along the track (resulting in a lot of very thin -triangles). - -Early versions if `nn' miserably failed for this data set when interpolating -the raw data, and were dealt with by replacing data in each cell of a 256x256 -subgrid by an averaged value by means of "-d" option of `nnbathy'. The current -version of `nn' is doing much better job; still "-d" option is used because -it speeds up things and because this is the right way to deal with such -clustered data. - -I need to add that `triangle' really shines in this example. - -To reproduce the example, run "./test.sh" or "make". -To visualize, in Matlab run "viewexample". -To clean up, run "make clean" - -From v2.0.0 some MPI code has been added to nnbathy. To compile the parallelised -version change "MPI = no" in ../../makefile to "MPI = yes". To test it run -"make mpi" and "run cmp". To set the number of cores used change NCPU in -mpitest.sh. - -Good luck! -Pavel Sakov +This example represents interpolation of some real-life bathymetry data +along the shiptrack. + +It is quite tough for interpolation because of the instrumental round-up +of the position of the ship (resulting in a lot of close/duplicate data +points and in data points aligned to nodes of a regular grid) and because +of clustering of data along the track (resulting in a lot of very thin +triangles). + +Early versions if `nn' miserably failed for this data set when interpolating +the raw data, and were dealt with by replacing data in each cell of a 256x256 +subgrid by an averaged value by means of "-d" option of `nnbathy'. The current +version of `nn' is doing much better job; still "-d" option is used because +it speeds up things and because this is the right way to deal with such +clustered data. + +I need to add that `triangle' really shines in this example. + +To reproduce the example, run "./test.sh" or "make". +To visualize, in Matlab run "viewexample". +To clean up, run "make clean" + +From v2.0.0 some MPI code has been added to nnbathy. To compile the parallelised +version change "MPI = no" in ../../makefile to "MPI = yes". To test it run +"make mpi" and "run cmp". To set the number of cores used change NCPU in +mpitest.sh. + +Good luck! +Pavel Sakov diff --git a/autoarray/util/nn/src/nn/examples/2/data.txt b/autoarray/util/nn/src/nn/examples/2/data.txt index 27100956d..52e8a75c9 100644 --- a/autoarray/util/nn/src/nn/examples/2/data.txt +++ b/autoarray/util/nn/src/nn/examples/2/data.txt @@ -1,7394 +1,7394 @@ -156.661500 -7.501600 1100.800000 -156.663100 -7.504200 1099.200000 -156.664800 -7.506700 1100.800000 -156.666400 -7.509300 1006.000000 -156.668000 -7.511900 879.600000 -156.669700 -7.514500 868.000000 -156.671400 -7.517100 1012.800000 -156.673000 -7.519800 995.600000 -156.674700 -7.522400 986.000000 -156.676300 -7.525100 1004.800000 -156.677800 -7.527800 993.600000 -156.679200 -7.530500 981.600000 -156.680400 -7.532600 972.000000 -156.681400 -7.534700 1003.600000 -156.682200 -7.536600 1000.800000 -156.683000 -7.538500 997.600000 -156.683600 -7.540000 995.200000 -156.684100 -7.541400 985.600000 -156.684600 -7.542600 980.800000 -156.685100 -7.543900 978.400000 -156.685700 -7.545200 974.400000 -156.686300 -7.546500 974.400000 -156.686900 -7.547700 974.400000 -156.687500 -7.549000 972.400000 -156.688100 -7.550300 975.600000 -156.688700 -7.551600 972.800000 -156.689100 -7.553000 970.800000 -156.689700 -7.554300 974.400000 -156.690300 -7.555500 972.400000 -156.691000 -7.556800 967.600000 -156.691500 -7.558000 962.800000 -156.692300 -7.559000 958.400000 -156.693000 -7.560000 950.800000 -156.693800 -7.561100 945.200000 -156.694800 -7.562100 939.600000 -156.695800 -7.563300 930.000000 -156.696700 -7.564400 923.200000 -156.697600 -7.565500 916.800000 -156.698500 -7.566500 913.600000 -156.699400 -7.567600 908.800000 -156.700300 -7.568700 904.400000 -156.701100 -7.569700 900.400000 -156.702000 -7.570800 892.800000 -156.702900 -7.571800 894.800000 -156.703800 -7.572900 888.400000 -156.704700 -7.574000 874.000000 -156.705600 -7.575000 865.600000 -156.706500 -7.576100 862.000000 -156.707400 -7.577200 853.600000 -156.708200 -7.578200 851.600000 -156.709100 -7.579300 856.800000 -156.709900 -7.580400 856.000000 -156.710800 -7.581500 854.400000 -156.711600 -7.582600 865.600000 -156.712400 -7.583700 857.200000 -156.713300 -7.584700 871.200000 -156.714200 -7.585700 869.600000 -156.715100 -7.586700 870.000000 -156.716000 -7.587700 862.400000 -156.716900 -7.588700 866.400000 -156.717800 -7.589700 866.400000 -156.718700 -7.590700 851.600000 -156.719600 -7.591700 845.600000 -156.720500 -7.592700 836.000000 -156.721400 -7.593700 825.600000 -156.722300 -7.594800 825.200000 -156.723100 -7.595800 824.000000 -156.724000 -7.596900 822.000000 -156.724800 -7.597900 820.400000 -156.725600 -7.598900 823.600000 -156.726500 -7.599900 827.600000 -156.727600 -7.600500 837.600000 -156.728500 -7.599900 850.400000 -156.729300 -7.598900 859.200000 -156.730100 -7.597800 869.600000 -156.730900 -7.596700 879.200000 -156.731800 -7.595600 882.400000 -156.732600 -7.594500 888.800000 -156.732800 -7.593400 894.000000 -156.731900 -7.592400 898.400000 -156.730900 -7.591300 892.800000 -156.729800 -7.590200 896.400000 -156.728700 -7.589100 907.600000 -156.727600 -7.587900 907.600000 -156.726400 -7.586600 915.200000 -156.725200 -7.585200 920.400000 -156.724100 -7.583800 940.800000 -156.722900 -7.582400 950.000000 -156.721700 -7.581000 950.000000 -156.720500 -7.579500 974.400000 -156.719400 -7.578100 980.000000 -156.718200 -7.576600 982.400000 -156.717000 -7.575200 978.400000 -156.715800 -7.573700 975.200000 -156.714600 -7.572300 982.400000 -156.713500 -7.570900 982.400000 -156.712300 -7.569400 988.800000 -156.711100 -7.568000 994.400000 -156.710000 -7.566600 992.400000 -156.708800 -7.565200 999.200000 -156.707600 -7.563800 997.200000 -156.706400 -7.562400 1005.600000 -156.705200 -7.561000 1008.400000 -156.704000 -7.559500 1006.400000 -156.702800 -7.558100 1007.600000 -156.701700 -7.556600 1010.800000 -156.700500 -7.555200 1014.800000 -156.699300 -7.553700 1018.800000 -156.698100 -7.552300 1021.600000 -156.696900 -7.550800 1027.600000 -156.695800 -7.549400 1028.000000 -156.694600 -7.548000 1020.000000 -156.693400 -7.546600 1020.400000 -156.692300 -7.545200 1016.800000 -156.691100 -7.543800 1018.800000 -156.689900 -7.542400 1017.600000 -156.688700 -7.541000 1019.600000 -156.687500 -7.539500 1017.200000 -156.686400 -7.538100 1020.400000 -156.685200 -7.536700 1018.000000 -156.684000 -7.535300 1016.000000 -156.682800 -7.533900 1019.200000 -156.681700 -7.532500 988.000000 -156.680500 -7.531100 980.000000 -156.679300 -7.529700 987.600000 -156.678100 -7.528300 992.400000 -156.677000 -7.526800 1009.200000 -156.675900 -7.525300 1000.400000 -156.674900 -7.523800 989.600000 -156.673800 -7.522200 980.400000 -156.672900 -7.520700 989.200000 -156.671900 -7.519200 1000.800000 -156.671000 -7.517600 978.000000 -156.670100 -7.516000 888.800000 -156.669300 -7.514400 824.400000 -156.668400 -7.512800 818.400000 -156.667500 -7.511200 926.000000 -156.666700 -7.509700 994.000000 -156.665900 -7.508100 1094.000000 -156.664600 -7.506900 1101.600000 -156.663200 -7.507400 1089.600000 -156.662500 -7.508800 1031.200000 -156.663200 -7.509900 986.800000 -156.663900 -7.511200 912.400000 -156.664800 -7.512500 806.000000 -156.665800 -7.513700 752.800000 -156.666900 -7.514900 753.600000 -156.667900 -7.516200 801.600000 -156.668900 -7.517400 899.600000 -156.669900 -7.518700 974.800000 -156.670600 -7.520100 996.800000 -156.669800 -7.521300 983.200000 -156.668400 -7.522200 974.000000 -156.666900 -7.522800 950.000000 -156.665700 -7.521900 938.400000 -156.664600 -7.520700 930.000000 -156.663400 -7.519400 919.600000 -156.662200 -7.518100 906.000000 -156.660900 -7.516800 860.800000 -156.659700 -7.515400 852.000000 -156.658400 -7.514100 890.800000 -156.657200 -7.512700 967.600000 -156.655900 -7.511400 1069.600000 -156.655200 -7.510000 1074.400000 -156.655900 -7.509000 1078.800000 -156.656800 -7.508100 1083.600000 -156.657900 -7.507100 1087.600000 -156.659100 -7.506100 1091.600000 -156.660200 -7.505100 1096.000000 -156.661400 -7.504100 1098.400000 -156.662600 -7.503100 1100.400000 -156.663900 -7.502100 1100.800000 -156.665100 -7.501100 1100.000000 -156.666400 -7.500700 1098.400000 -156.667200 -7.501800 1095.600000 -156.668100 -7.503100 1091.200000 -156.669000 -7.504400 1087.200000 -156.670000 -7.505800 1082.800000 -156.671000 -7.507200 1077.600000 -156.672100 -7.508700 1067.200000 -156.673100 -7.510100 1058.400000 -156.674100 -7.511500 1047.600000 -156.675000 -7.512900 1040.000000 -156.676000 -7.514200 1028.400000 -156.677000 -7.515700 1023.600000 -156.677900 -7.517000 1023.600000 -156.678600 -7.517700 1027.200000 -156.678900 -7.517700 1030.400000 -156.678900 -7.517600 1030.000000 -156.678700 -7.517600 1028.000000 -156.678500 -7.517700 1025.200000 -156.678300 -7.517900 1023.200000 -156.678000 -7.518000 1021.200000 -156.677400 -7.517500 1018.400000 -156.676600 -7.516600 1018.000000 -156.675700 -7.515700 1021.600000 -156.674800 -7.514700 1026.800000 -156.673900 -7.513600 1037.600000 -156.672900 -7.512600 1047.200000 -156.671900 -7.512000 968.000000 -156.670700 -7.512300 948.000000 -156.669500 -7.512600 847.200000 -156.668200 -7.512900 784.000000 -156.666900 -7.513200 760.800000 -156.665500 -7.513600 752.400000 -156.664200 -7.513900 746.000000 -156.662800 -7.514300 737.600000 -156.661500 -7.514600 778.000000 -156.660100 -7.515000 844.400000 -156.658800 -7.515300 934.800000 -156.657400 -7.515600 1008.800000 -156.656100 -7.515700 1009.600000 -156.655500 -7.515000 1020.800000 -156.655300 -7.514200 1041.200000 -156.655100 -7.513300 1053.200000 -156.655200 -7.512500 1061.600000 -156.655700 -7.512200 1063.600000 -156.656400 -7.512000 999.600000 -156.657200 -7.511800 962.800000 -156.658200 -7.511600 928.400000 -156.659100 -7.511300 949.200000 -156.660100 -7.511100 952.400000 -156.661100 -7.510800 984.000000 -156.662200 -7.510600 970.800000 -156.663200 -7.510400 987.600000 -156.664200 -7.510100 982.000000 -156.665200 -7.509900 990.000000 -156.665800 -7.510100 969.200000 -156.665900 -7.510600 938.400000 -156.665600 -7.511000 924.000000 -156.665200 -7.511400 880.800000 -156.664900 -7.511900 830.000000 -156.664500 -7.512500 831.200000 -156.664100 -7.513200 758.800000 -156.663800 -7.513700 751.200000 -156.663500 -7.513800 752.800000 -156.663600 -7.513800 749.200000 -156.663900 -7.513800 749.600000 -156.664200 -7.513700 755.200000 -156.664300 -7.513700 759.200000 -156.664300 -7.513600 761.200000 -156.664400 -7.513500 761.200000 -156.664300 -7.513500 762.400000 -156.664200 -7.513500 760.800000 -156.664300 -7.513600 758.800000 -156.664200 -7.513600 756.000000 -156.664300 -7.513700 756.400000 -156.664500 -7.513900 752.000000 -156.664400 -7.513900 752.400000 -156.664300 -7.513900 752.800000 -156.664200 -7.514000 748.400000 -156.664100 -7.514000 745.600000 -156.664300 -7.514000 746.000000 -156.664400 -7.514000 747.600000 -156.664300 -7.514000 747.600000 -156.664100 -7.513900 747.600000 -156.663900 -7.513900 748.400000 -156.663800 -7.513800 750.000000 -156.664100 -7.513800 748.400000 -156.664200 -7.513800 749.600000 -156.664300 -7.513800 752.000000 -156.664500 -7.513800 754.800000 -156.664400 -7.513800 754.400000 -156.664300 -7.513700 749.600000 -156.664100 -7.513700 758.000000 -156.664100 -7.513600 752.800000 -156.664200 -7.513600 760.400000 -156.664400 -7.513600 759.200000 -156.664500 -7.513500 758.800000 -156.664400 -7.513500 759.200000 -156.664200 -7.513400 769.200000 -156.664000 -7.513300 764.800000 -156.663900 -7.513300 784.800000 -156.664100 -7.513300 792.800000 -156.664400 -7.513300 763.200000 -156.664500 -7.513200 762.400000 -156.664400 -7.513200 800.800000 -156.664200 -7.513100 785.200000 -156.664100 -7.513000 792.400000 -156.664200 -7.513000 824.400000 -156.664100 -7.512900 798.800000 -156.663800 -7.512900 808.800000 -156.663500 -7.512800 830.400000 -156.663200 -7.512700 832.000000 -156.662800 -7.512700 851.600000 -156.662400 -7.512700 821.200000 -156.662000 -7.512600 832.400000 -156.661700 -7.512500 810.000000 -156.661500 -7.512400 811.600000 -156.661200 -7.512300 857.200000 -156.660900 -7.512300 857.600000 -156.660600 -7.512300 870.400000 -156.660000 -7.512400 878.000000 -156.659400 -7.512400 882.000000 -156.658900 -7.512200 919.600000 -156.658500 -7.511800 927.600000 -156.658400 -7.511500 950.800000 -156.658400 -7.511200 947.200000 -156.658600 -7.511100 932.400000 -156.658900 -7.511100 935.200000 -156.659200 -7.511200 933.200000 -156.659600 -7.511400 932.800000 -156.660100 -7.511500 922.000000 -156.660600 -7.511600 919.200000 -156.661000 -7.511900 904.800000 -156.661000 -7.512300 850.400000 -156.660600 -7.512800 827.600000 -156.660200 -7.513300 822.000000 -156.659900 -7.513900 831.200000 -156.659500 -7.514100 832.400000 -156.659300 -7.514100 849.600000 -156.659500 -7.514300 841.200000 -156.659900 -7.514400 823.200000 -156.660200 -7.514500 808.800000 -156.660400 -7.514600 794.400000 -156.660500 -7.514600 792.000000 -156.660500 -7.514500 788.000000 -156.660600 -7.514500 786.000000 -156.660600 -7.514500 785.200000 -156.660800 -7.514500 778.400000 -156.660900 -7.514500 784.400000 -156.660900 -7.514500 777.600000 -156.660700 -7.514500 784.000000 -156.660800 -7.514500 782.800000 -156.660800 -7.514500 774.800000 -156.660900 -7.514500 770.400000 -156.660800 -7.514500 782.400000 -156.660800 -7.514500 856.400000 -156.660800 -7.514500 782.800000 -156.661000 -7.514500 769.200000 -156.661400 -7.514500 754.000000 -156.661700 -7.514600 745.200000 -156.662100 -7.514600 739.600000 -156.662400 -7.514600 736.400000 -156.662800 -7.514600 735.600000 -156.663200 -7.514600 744.800000 -156.663500 -7.514600 741.600000 -156.663800 -7.514600 742.400000 -156.664200 -7.514500 742.000000 -156.664600 -7.514500 743.600000 -156.664800 -7.514500 746.800000 -156.664900 -7.514500 746.000000 -156.664900 -7.514400 746.800000 -156.665000 -7.514400 746.000000 -156.665000 -7.514300 746.000000 -156.665100 -7.514300 745.600000 -156.665100 -7.514300 748.400000 -156.665200 -7.514200 746.000000 -156.665200 -7.514200 746.800000 -156.665000 -7.514100 746.800000 -156.665000 -7.514100 747.200000 -156.664900 -7.514200 747.600000 -156.664800 -7.514200 748.000000 -156.664700 -7.514200 748.400000 -156.664600 -7.514200 746.400000 -156.664500 -7.514200 749.600000 -156.664400 -7.514100 745.600000 -156.664300 -7.514100 745.600000 -156.664200 -7.514100 745.200000 -156.664100 -7.514100 747.200000 -156.664000 -7.514000 750.800000 -156.663900 -7.514000 747.600000 -156.663800 -7.514000 747.200000 -156.663700 -7.514000 748.800000 -156.663800 -7.513900 748.800000 -156.663800 -7.513900 748.800000 -156.663800 -7.513800 753.200000 -156.663700 -7.513800 749.200000 -156.663800 -7.513800 750.000000 -156.663900 -7.513700 763.200000 -156.664000 -7.513600 752.800000 -156.664000 -7.513600 758.400000 -156.664100 -7.513500 762.400000 -156.664200 -7.513500 786.400000 -156.664300 -7.513400 790.000000 -156.664300 -7.513400 775.600000 -156.664300 -7.513300 774.400000 -156.664300 -7.513300 782.000000 -156.664400 -7.513200 766.400000 -156.664400 -7.513100 820.000000 -156.664300 -7.513100 820.000000 -156.664100 -7.513000 838.800000 -156.663900 -7.513000 832.800000 -156.663600 -7.512900 944.400000 -156.663300 -7.512900 830.400000 -156.663000 -7.512800 829.600000 -156.662700 -7.512700 851.200000 -156.662400 -7.512700 865.600000 -156.662100 -7.512600 853.600000 -156.661700 -7.512600 867.600000 -156.661400 -7.512500 876.800000 -156.661000 -7.512400 871.200000 -156.660700 -7.512400 890.000000 -156.660400 -7.512300 864.800000 -156.660200 -7.512300 871.600000 -156.660000 -7.512300 871.600000 -156.659800 -7.512300 880.000000 -156.659500 -7.512200 884.000000 -156.659200 -7.512200 885.600000 -156.659000 -7.512100 893.200000 -156.658700 -7.512000 895.600000 -156.658400 -7.511800 902.400000 -156.658100 -7.511700 919.600000 -156.658000 -7.511700 924.000000 -156.658200 -7.511900 918.400000 -156.658300 -7.511900 915.200000 -156.658400 -7.512000 912.400000 -156.658400 -7.512000 909.200000 -156.658300 -7.512100 898.800000 -156.658200 -7.512100 902.400000 -156.658100 -7.512100 902.400000 -156.658300 -7.512200 905.200000 -156.658900 -7.512400 886.400000 -156.659600 -7.512500 882.400000 -156.660300 -7.512700 857.600000 -156.660900 -7.512800 850.000000 -156.661500 -7.512800 832.400000 -156.661900 -7.512900 820.400000 -156.662400 -7.513100 824.400000 -156.662900 -7.513200 803.600000 -156.663500 -7.513400 761.200000 -156.663900 -7.513500 755.600000 -156.664300 -7.513700 759.200000 -156.664500 -7.513700 755.200000 -156.664700 -7.513700 753.600000 -156.664700 -7.513700 754.800000 -156.664700 -7.513700 755.600000 -156.664600 -7.513600 758.400000 -156.664600 -7.513500 780.000000 -156.664800 -7.513500 757.200000 -156.664900 -7.513400 758.400000 -156.664900 -7.513300 779.200000 -156.664800 -7.513100 785.200000 -156.664800 -7.513000 800.800000 -156.664900 -7.513000 770.400000 -156.664900 -7.513300 757.200000 -156.665000 -7.513700 751.200000 -156.665000 -7.514000 747.600000 -156.664900 -7.514100 747.600000 -156.664800 -7.514200 748.000000 -156.664700 -7.514200 747.600000 -156.664500 -7.514100 747.200000 -156.664400 -7.514100 746.000000 -156.664200 -7.514000 746.800000 -156.664200 -7.514000 746.400000 -156.664300 -7.514000 749.200000 -156.664500 -7.514100 745.600000 -156.664600 -7.514200 749.200000 -156.664700 -7.514200 746.800000 -156.664700 -7.514200 747.600000 -156.664800 -7.514300 747.200000 -156.664900 -7.514300 746.800000 -156.664800 -7.514300 747.200000 -156.664700 -7.514200 748.000000 -156.664500 -7.514100 748.000000 -156.664300 -7.514000 750.800000 -156.664000 -7.513900 748.400000 -156.663800 -7.513700 750.000000 -156.663500 -7.513500 762.000000 -156.663300 -7.513400 767.200000 -156.663000 -7.513200 840.800000 -156.662700 -7.513200 823.600000 -156.662400 -7.513200 828.000000 -156.662100 -7.513100 845.200000 -156.661800 -7.513000 864.400000 -156.661600 -7.513000 865.200000 -156.661300 -7.512900 856.000000 -156.661000 -7.512900 866.400000 -156.660800 -7.512800 868.000000 -156.660700 -7.512700 866.000000 -156.660600 -7.512600 866.800000 -156.660600 -7.512500 864.000000 -156.660700 -7.512700 850.800000 -156.660800 -7.512800 840.800000 -156.660900 -7.512900 850.400000 -156.660900 -7.512900 860.000000 -156.660800 -7.512900 859.600000 -156.660600 -7.512800 852.000000 -156.660600 -7.512800 860.400000 -156.660900 -7.512700 860.800000 -156.660900 -7.512600 863.200000 -156.660800 -7.512500 860.000000 -156.660800 -7.512500 869.200000 -156.660900 -7.512800 821.200000 -156.660900 -7.513000 814.000000 -156.660900 -7.513100 804.800000 -156.660800 -7.513100 811.200000 -156.660600 -7.513000 842.800000 -156.660900 -7.513100 834.000000 -156.661400 -7.513100 862.000000 -156.661900 -7.513000 863.600000 -156.662200 -7.512900 832.800000 -156.662700 -7.512900 828.400000 -156.663100 -7.512800 835.600000 -156.663400 -7.512800 855.600000 -156.664100 -7.512800 843.200000 -156.664500 -7.512800 835.200000 -156.665000 -7.512800 815.600000 -156.665300 -7.512800 794.000000 -156.665400 -7.512700 811.200000 -156.665400 -7.512700 805.200000 -156.665500 -7.512600 788.400000 -156.665500 -7.512600 794.800000 -156.665500 -7.512500 813.600000 -156.665500 -7.512500 800.000000 -156.665400 -7.512400 821.600000 -156.665400 -7.512400 823.600000 -156.665300 -7.512400 813.200000 -156.665300 -7.512300 804.400000 -156.665400 -7.512300 824.000000 -156.665400 -7.512300 820.000000 -156.665300 -7.512200 835.600000 -156.665200 -7.512200 900.000000 -156.665000 -7.512100 845.600000 -156.664900 -7.512100 853.600000 -156.664800 -7.512000 876.400000 -156.664800 -7.512000 925.600000 -156.664700 -7.511900 870.000000 -156.664900 -7.511900 866.000000 -156.665100 -7.511900 862.400000 -156.665100 -7.511900 890.000000 -156.665500 -7.511900 921.200000 -156.665800 -7.511900 915.600000 -156.665900 -7.511800 854.400000 -156.665900 -7.511800 848.000000 -156.665800 -7.511700 856.400000 -156.665900 -7.511700 913.200000 -156.666000 -7.511700 920.400000 -156.666100 -7.511600 914.400000 -156.666200 -7.511600 910.400000 -156.666200 -7.511600 913.600000 -156.666200 -7.511600 916.400000 -156.666400 -7.511600 922.000000 -156.666500 -7.511600 915.600000 -156.666600 -7.511500 913.600000 -156.666800 -7.511500 910.400000 -156.666800 -7.511500 921.600000 -156.666800 -7.511400 916.000000 -156.666600 -7.511400 922.000000 -156.666400 -7.511300 923.600000 -156.666100 -7.511300 930.400000 -156.665900 -7.511200 937.200000 -156.665600 -7.511200 933.600000 -156.665300 -7.511100 925.200000 -156.665000 -7.511000 908.800000 -156.664900 -7.510900 904.800000 -156.664800 -7.510900 904.400000 -156.664600 -7.511000 908.800000 -156.664500 -7.511000 896.000000 -156.664400 -7.511100 892.000000 -156.664200 -7.511200 892.800000 -156.664100 -7.511200 892.400000 -156.664000 -7.511300 884.800000 -156.663900 -7.511300 881.200000 -156.663800 -7.511300 886.400000 -156.663700 -7.511300 887.200000 -156.663500 -7.511400 880.800000 -156.663300 -7.511800 872.400000 -156.663500 -7.512400 841.200000 -156.664300 -7.513700 752.000000 -156.665400 -7.515400 750.000000 -156.666900 -7.517600 841.600000 -156.668500 -7.519900 954.800000 -156.670100 -7.522100 979.600000 -156.671700 -7.524400 964.400000 -156.673300 -7.526700 981.600000 -156.674900 -7.528900 983.200000 -156.676600 -7.531200 965.200000 -156.678400 -7.533700 960.800000 -156.680300 -7.536200 993.200000 -156.682100 -7.538700 996.400000 -156.684000 -7.541300 986.800000 -156.685900 -7.543800 984.400000 -156.687800 -7.546300 987.200000 -156.689500 -7.548900 986.800000 -156.691300 -7.551500 997.200000 -156.693000 -7.554100 995.200000 -156.694800 -7.556600 979.200000 -156.696500 -7.559200 976.400000 -156.698200 -7.561800 956.400000 -156.700000 -7.564300 950.000000 -156.701700 -7.566900 934.800000 -156.703400 -7.569500 918.400000 -156.705200 -7.572000 920.400000 -156.706900 -7.574600 887.200000 -156.708600 -7.576900 869.200000 -156.709700 -7.578600 872.800000 -156.710700 -7.579800 872.400000 -156.711400 -7.580800 870.000000 -156.712100 -7.581500 872.800000 -156.712700 -7.582200 879.600000 -156.713200 -7.582800 876.000000 -156.713700 -7.583300 879.600000 -156.714100 -7.583900 886.000000 -156.714500 -7.584400 890.000000 -156.714800 -7.584700 885.200000 -156.714900 -7.585000 882.000000 -156.715200 -7.585400 880.000000 -156.715400 -7.585600 877.200000 -156.715700 -7.585900 876.000000 -156.715900 -7.586200 876.000000 -156.715900 -7.586300 875.600000 -156.716100 -7.586500 875.600000 -156.716100 -7.586600 875.600000 -156.716000 -7.586500 875.600000 -156.716000 -7.586600 874.800000 -156.716200 -7.586800 875.600000 -156.716200 -7.586800 875.200000 -156.716200 -7.586800 874.000000 -156.716200 -7.586700 875.600000 -156.716200 -7.586700 876.000000 -156.716200 -7.586600 876.800000 -156.716400 -7.586700 877.200000 -156.716400 -7.586700 876.800000 -156.716300 -7.586600 876.800000 -156.716400 -7.586600 877.200000 -156.716300 -7.586600 877.200000 -156.716300 -7.586600 876.400000 -156.716300 -7.586600 876.400000 -156.716200 -7.586600 877.600000 -156.716200 -7.586600 876.400000 -156.716100 -7.586600 876.400000 -156.716000 -7.586500 876.000000 -156.716100 -7.586500 876.400000 -156.716200 -7.586500 876.800000 -156.716200 -7.586500 876.800000 -156.716200 -7.586400 877.200000 -156.716100 -7.586300 876.400000 -156.716200 -7.586300 877.200000 -156.716100 -7.586200 877.200000 -156.716000 -7.586100 877.200000 -156.715800 -7.585900 877.200000 -156.715600 -7.585700 877.200000 -156.715400 -7.585600 878.000000 -156.715200 -7.585400 878.400000 -156.714900 -7.585200 880.000000 -156.714800 -7.585000 880.800000 -156.714800 -7.585000 881.200000 -156.714900 -7.585100 880.800000 -156.715100 -7.585100 880.400000 -156.715200 -7.585200 880.800000 -156.715300 -7.585200 880.400000 -156.715300 -7.585200 882.000000 -156.715400 -7.585200 882.000000 -156.715400 -7.585100 882.000000 -156.715400 -7.585000 883.200000 -156.715400 -7.585000 883.600000 -156.715500 -7.585100 883.200000 -156.715700 -7.585300 882.800000 -156.716100 -7.585500 880.400000 -156.716900 -7.585900 886.000000 -156.717600 -7.586300 888.400000 -156.718300 -7.586600 892.800000 -156.719900 -7.587300 897.200000 -156.722400 -7.588600 884.800000 -156.725200 -7.589900 882.000000 -156.728000 -7.591400 890.400000 -156.730800 -7.592900 888.400000 -156.733600 -7.594300 898.000000 -156.736300 -7.595800 918.800000 -156.739100 -7.597200 939.200000 -156.741900 -7.598700 948.400000 -156.744700 -7.600200 964.000000 -156.747500 -7.601600 976.000000 -156.750300 -7.603100 990.800000 -156.753100 -7.604600 997.600000 -156.755900 -7.606100 1006.000000 -156.758600 -7.607600 1018.400000 -156.761400 -7.609200 1023.200000 -156.764200 -7.610700 1026.400000 -156.767000 -7.612200 1029.600000 -156.769800 -7.613800 1026.400000 -156.772500 -7.615300 1026.000000 -156.775300 -7.616900 1024.400000 -156.778100 -7.618400 1018.800000 -156.780900 -7.620000 1016.800000 -156.783700 -7.621500 1018.800000 -156.786500 -7.623100 1019.600000 -156.789300 -7.624600 1021.600000 -156.792100 -7.626200 1009.600000 -156.794900 -7.627800 1005.200000 -156.797600 -7.629300 1006.000000 -156.800400 -7.630900 1004.400000 -156.803200 -7.632400 1006.800000 -156.806000 -7.634000 1006.000000 -156.808700 -7.635600 1004.800000 -156.811500 -7.637100 1011.200000 -156.814300 -7.638600 1020.800000 -156.817100 -7.640200 1019.200000 -156.819900 -7.641700 1012.000000 -156.822700 -7.643200 1007.200000 -156.825400 -7.644700 1013.600000 -156.828200 -7.646300 1020.000000 -156.831000 -7.647800 1015.200000 -156.833800 -7.649300 1024.800000 -156.836600 -7.650900 1019.200000 -156.839400 -7.652400 1014.800000 -156.842100 -7.654000 1012.800000 -156.844900 -7.655600 1002.800000 -156.847700 -7.657200 1000.000000 -156.850500 -7.658700 1001.600000 -156.853400 -7.660300 997.600000 -156.856200 -7.661900 997.200000 -156.859000 -7.663500 1000.400000 -156.861900 -7.664700 1006.800000 -156.864900 -7.665800 1008.800000 -156.867600 -7.667500 1009.200000 -156.867600 -7.670400 1004.400000 -156.866900 -7.673500 1004.400000 -156.866100 -7.676700 1003.200000 -156.865400 -7.679900 1005.200000 -156.864700 -7.683000 1004.800000 -156.864000 -7.686200 1001.600000 -156.863200 -7.689400 994.800000 -156.862400 -7.692600 980.800000 -156.861700 -7.695800 956.400000 -156.860900 -7.698900 926.000000 -156.860100 -7.702100 905.600000 -156.859200 -7.705300 886.000000 -156.858400 -7.708500 867.200000 -156.857600 -7.711700 852.000000 -156.856700 -7.714900 831.600000 -156.855900 -7.718100 812.000000 -156.855000 -7.721300 795.200000 -156.854100 -7.724500 781.600000 -156.853200 -7.727600 771.200000 -156.852300 -7.730800 762.800000 -156.851400 -7.734000 739.200000 -156.850500 -7.737100 738.800000 -156.849600 -7.740300 733.200000 -156.848700 -7.743500 716.800000 -156.847800 -7.746600 706.000000 -156.846900 -7.749800 691.200000 -156.846000 -7.752900 683.600000 -156.845100 -7.756100 679.600000 -156.844200 -7.759300 635.600000 -156.843200 -7.762500 620.800000 -156.842300 -7.765600 608.000000 -156.841400 -7.768800 609.200000 -156.840500 -7.772000 604.000000 -156.839600 -7.775100 598.000000 -156.838700 -7.778300 589.200000 -156.837700 -7.781500 572.800000 -156.836700 -7.784700 568.400000 -156.835800 -7.787900 566.400000 -156.834800 -7.791200 545.200000 -156.833800 -7.794400 536.800000 -156.832800 -7.797700 529.600000 -156.831800 -7.801000 519.200000 -156.830900 -7.804300 510.800000 -156.830000 -7.807500 508.000000 -156.829000 -7.810800 505.200000 -156.828100 -7.814000 503.200000 -156.827100 -7.817200 500.800000 -156.826200 -7.820500 496.800000 -156.825300 -7.823700 494.000000 -156.824400 -7.826900 493.600000 -156.823500 -7.830200 492.400000 -156.822500 -7.833400 491.600000 -156.821600 -7.836600 488.800000 -156.820700 -7.839800 485.200000 -156.819900 -7.843000 483.600000 -156.819000 -7.846200 481.200000 -156.818200 -7.849500 479.200000 -156.817300 -7.852700 477.200000 -156.816500 -7.855900 476.000000 -156.815700 -7.859100 475.600000 -156.814900 -7.862300 473.600000 -156.814000 -7.865500 466.000000 -156.813200 -7.868700 464.800000 -156.812400 -7.872000 466.800000 -156.811600 -7.875200 467.600000 -156.810700 -7.878400 469.600000 -156.809900 -7.881700 474.400000 -156.809100 -7.884900 473.600000 -156.808300 -7.888200 475.200000 -156.807500 -7.891400 472.800000 -156.806600 -7.894700 472.400000 -156.805800 -7.897900 482.000000 -156.805000 -7.901200 483.600000 -156.804200 -7.904400 485.200000 -156.803400 -7.907600 485.600000 -156.802600 -7.910800 479.200000 -156.801800 -7.914000 479.200000 -156.801000 -7.917200 480.000000 -156.800200 -7.920500 481.200000 -156.799400 -7.923700 483.600000 -156.798600 -7.926900 484.400000 -156.797900 -7.930200 484.400000 -156.797100 -7.933400 484.000000 -156.795600 -7.936200 486.400000 -156.793000 -7.938200 491.600000 -156.790300 -7.940100 497.200000 -156.787600 -7.942000 500.400000 -156.784900 -7.944000 504.400000 -156.782200 -7.945900 509.200000 -156.779500 -7.947800 513.200000 -156.776700 -7.949800 518.400000 -156.774000 -7.951700 523.200000 -156.771200 -7.953700 528.800000 -156.768500 -7.955600 533.600000 -156.765700 -7.957600 541.200000 -156.763000 -7.959500 548.800000 -156.760200 -7.961500 554.800000 -156.757500 -7.963500 557.200000 -156.754700 -7.965500 557.600000 -156.751900 -7.967500 560.400000 -156.749200 -7.969400 558.800000 -156.746500 -7.971500 562.400000 -156.743800 -7.973700 568.000000 -156.741100 -7.975800 578.800000 -156.738400 -7.977900 537.200000 -156.735700 -7.980000 498.400000 -156.732900 -7.982000 529.600000 -156.730100 -7.984000 551.600000 -156.727400 -7.986100 549.600000 -156.724600 -7.988100 548.800000 -156.721800 -7.990100 552.000000 -156.719200 -7.992400 557.600000 -156.717900 -7.995600 546.400000 -156.716500 -7.998900 505.600000 -156.715200 -8.002100 503.200000 -156.713900 -8.005400 504.800000 -156.712600 -8.008600 516.000000 -156.711300 -8.011900 547.600000 -156.710100 -8.015200 520.000000 -156.708900 -8.018400 518.400000 -156.707800 -8.021700 515.600000 -156.706600 -8.025000 523.200000 -156.705400 -8.028300 534.800000 -156.704200 -8.031700 542.000000 -156.703000 -8.035000 550.800000 -156.701800 -8.038300 556.400000 -156.700700 -8.041600 564.000000 -156.699500 -8.045000 581.200000 -156.698400 -8.048300 597.600000 -156.697200 -8.051600 603.200000 -156.696100 -8.055000 629.600000 -156.694900 -8.058300 666.800000 -156.693800 -8.061700 656.400000 -156.692600 -8.065000 669.200000 -156.691400 -8.068300 700.400000 -156.690300 -8.071700 725.600000 -156.689100 -8.075000 753.600000 -156.688000 -8.078400 796.400000 -156.686900 -8.081800 828.400000 -156.685700 -8.085100 832.000000 -156.684600 -8.088500 854.400000 -156.683500 -8.091800 880.000000 -156.682300 -8.095200 904.800000 -156.681200 -8.098600 932.800000 -156.680100 -8.101900 974.000000 -156.678900 -8.105200 977.200000 -156.677800 -8.108600 994.000000 -156.676700 -8.111900 1010.800000 -156.675600 -8.115200 1026.000000 -156.674400 -8.118500 1074.400000 -156.673300 -8.121800 1182.000000 -156.672200 -8.125200 1129.600000 -156.671100 -8.128500 1139.600000 -156.670000 -8.131800 1177.200000 -156.668900 -8.135100 1254.000000 -156.667800 -8.138400 1401.600000 -156.666700 -8.141700 1304.800000 -156.665600 -8.145000 1304.000000 -156.664600 -8.148300 1289.200000 -156.663500 -8.151600 1268.000000 -156.662400 -8.154900 1307.600000 -156.661400 -8.158200 1362.000000 -156.660300 -8.161500 1335.200000 -156.659200 -8.164800 1188.400000 -156.658200 -8.168100 1208.400000 -156.657100 -8.171400 1302.800000 -156.656000 -8.174800 1270.000000 -156.655000 -8.178100 1228.400000 -156.653900 -8.181400 1287.200000 -156.652900 -8.184700 1230.400000 -156.651900 -8.188000 1220.000000 -156.650800 -8.191300 1218.400000 -156.649800 -8.194600 1278.800000 -156.648800 -8.198000 1305.600000 -156.647700 -8.201400 1324.400000 -156.646700 -8.204700 1382.000000 -156.645700 -8.208000 1507.200000 -156.644700 -8.211400 1574.000000 -156.643700 -8.214700 1569.200000 -156.642600 -8.218000 1565.200000 -156.641600 -8.221300 1568.000000 -156.640600 -8.224600 1598.800000 -156.639700 -8.227900 1634.400000 -156.638800 -8.231200 1488.800000 -156.637800 -8.234500 1563.200000 -156.636800 -8.237800 1591.200000 -156.635800 -8.241000 1643.200000 -156.634800 -8.244300 1760.800000 -156.633700 -8.247600 1786.000000 -156.632700 -8.250900 2000.800000 -156.631700 -8.254200 2029.200000 -156.630600 -8.257500 2042.000000 -156.629500 -8.260800 2068.800000 -156.628200 -8.264000 2056.400000 -156.626900 -8.267100 2044.800000 -156.625600 -8.270300 2052.400000 -156.624300 -8.273500 2080.000000 -156.623000 -8.276700 2154.000000 -156.621700 -8.279900 2311.200000 -156.620300 -8.283100 2282.400000 -156.619000 -8.286400 2305.200000 -156.617600 -8.289600 2303.200000 -156.616300 -8.292900 2315.200000 -156.614900 -8.296100 2378.800000 -156.613600 -8.299300 2411.200000 -156.612300 -8.302500 2479.200000 -156.610900 -8.305800 2409.200000 -156.609600 -8.309000 2408.800000 -156.608200 -8.312300 2468.000000 -156.606900 -8.315600 2421.600000 -156.605500 -8.318800 2398.800000 -156.604200 -8.322100 2344.000000 -156.602800 -8.325400 2293.200000 -156.601500 -8.328700 2251.200000 -156.599700 -8.331800 2180.400000 -156.597900 -8.334900 2140.000000 -156.596200 -8.337900 2081.200000 -156.594400 -8.341000 2038.800000 -156.592700 -8.344000 2000.400000 -156.591000 -8.347100 1978.000000 -156.589200 -8.350100 1952.800000 -156.587500 -8.353200 1940.400000 -156.585800 -8.356200 1950.400000 -156.584000 -8.359300 1951.200000 -156.582300 -8.362400 1950.000000 -156.580900 -8.365100 1942.400000 -156.579100 -8.366900 1921.600000 -156.576900 -8.367100 1884.000000 -156.574500 -8.367300 1830.800000 -156.572100 -8.367500 1794.000000 -156.569700 -8.367600 1745.200000 -156.567300 -8.367600 1700.800000 -156.564900 -8.367600 1636.400000 -156.562600 -8.367600 1569.200000 -156.560200 -8.367700 1512.400000 -156.557800 -8.367700 1434.800000 -156.555600 -8.367600 1376.400000 -156.553400 -8.367600 1322.000000 -156.551300 -8.367600 1266.000000 -156.549000 -8.367600 1218.800000 -156.546800 -8.367500 1162.800000 -156.544600 -8.367500 1098.000000 -156.542500 -8.367500 1038.400000 -156.540700 -8.367600 999.600000 -156.538900 -8.367600 940.800000 -156.537200 -8.367600 872.400000 -156.535400 -8.367700 804.800000 -156.533800 -8.367700 752.800000 -156.532400 -8.367800 728.800000 -156.531100 -8.367800 665.600000 -156.529800 -8.367800 621.600000 -156.528500 -8.367900 578.400000 -156.527200 -8.367900 524.000000 -156.526000 -8.367900 479.600000 -156.524800 -8.367900 434.000000 -156.523500 -8.367800 410.800000 -156.522300 -8.367800 372.800000 -156.521100 -8.367800 362.800000 -156.519900 -8.367800 365.200000 -156.518700 -8.367700 404.400000 -156.517500 -8.367700 472.800000 -156.516300 -8.367700 556.000000 -156.515200 -8.367900 623.600000 -156.514100 -8.368000 673.600000 -156.512900 -8.368100 726.800000 -156.512400 -8.367800 767.200000 -156.512500 -8.367200 752.400000 -156.512600 -8.366500 709.600000 -156.512700 -8.365800 670.000000 -156.512800 -8.365000 650.800000 -156.512900 -8.364200 604.000000 -156.513000 -8.363300 573.200000 -156.513300 -8.362600 509.600000 -156.514100 -8.362500 493.600000 -156.515100 -8.362800 459.600000 -156.516100 -8.363100 407.200000 -156.517300 -8.363300 332.000000 -156.518400 -8.363500 297.200000 -156.519700 -8.363700 286.800000 -156.520900 -8.363700 307.200000 -156.522000 -8.363600 302.800000 -156.523100 -8.363400 275.600000 -156.524300 -8.363300 269.600000 -156.525300 -8.363100 304.400000 -156.526300 -8.363000 359.200000 -156.527200 -8.363000 406.400000 -156.528200 -8.363000 431.600000 -156.529100 -8.362900 470.400000 -156.530000 -8.362900 500.000000 -156.530900 -8.362900 532.400000 -156.531700 -8.362800 575.600000 -156.532600 -8.362900 620.400000 -156.532900 -8.363300 625.600000 -156.532700 -8.363700 616.800000 -156.532200 -8.363800 593.600000 -156.531400 -8.363600 562.800000 -156.530300 -8.363400 508.800000 -156.529200 -8.363200 458.800000 -156.528100 -8.363200 428.800000 -156.527100 -8.363100 382.000000 -156.526200 -8.363200 338.400000 -156.525300 -8.363300 296.400000 -156.524600 -8.363400 276.800000 -156.523900 -8.363600 274.000000 -156.523300 -8.363800 278.000000 -156.522900 -8.363900 294.400000 -156.522800 -8.364100 295.600000 -156.522700 -8.364200 296.000000 -156.522500 -8.364100 310.400000 -156.522400 -8.364000 308.000000 -156.522300 -8.364100 308.000000 -156.522200 -8.364100 309.200000 -156.522100 -8.364200 311.600000 -156.522100 -8.364300 313.600000 -156.522200 -8.364000 308.400000 -156.522300 -8.364000 310.000000 -156.522300 -8.364200 313.200000 -156.522300 -8.364300 312.400000 -156.522400 -8.364400 317.200000 -156.522400 -8.364300 312.000000 -156.522400 -8.364300 312.400000 -156.522400 -8.364300 312.800000 -156.522500 -8.364200 308.800000 -156.522500 -8.364200 306.000000 -156.522500 -8.364200 308.800000 -156.522500 -8.364200 314.400000 -156.522500 -8.364200 310.400000 -156.522500 -8.364400 313.600000 -156.522600 -8.364600 304.400000 -156.522700 -8.364900 311.600000 -156.522600 -8.364800 309.200000 -156.522600 -8.364600 306.400000 -156.522600 -8.364500 312.400000 -156.522600 -8.364400 304.400000 -156.522700 -8.364200 308.000000 -156.522600 -8.364100 307.600000 -156.522600 -8.364100 301.200000 -156.522600 -8.364200 300.400000 -156.522600 -8.364200 312.400000 -156.522600 -8.364200 311.600000 -156.522500 -8.364300 313.600000 -156.522500 -8.364400 318.000000 -156.522400 -8.364400 313.200000 -156.522400 -8.364500 319.600000 -156.522400 -8.364700 315.200000 -156.522300 -8.364900 315.200000 -156.522400 -8.365200 316.400000 -156.522500 -8.365500 319.200000 -156.522500 -8.365800 323.200000 -156.522400 -8.365800 322.800000 -156.522200 -8.365500 318.400000 -156.522200 -8.365200 316.400000 -156.522000 -8.364900 316.800000 -156.521900 -8.364900 319.600000 -156.521800 -8.364800 323.600000 -156.521700 -8.364900 323.600000 -156.521700 -8.365100 324.000000 -156.521600 -8.365000 323.600000 -156.521600 -8.364900 324.000000 -156.521600 -8.364800 323.600000 -156.521600 -8.365000 324.800000 -156.521600 -8.365200 325.600000 -156.521500 -8.365200 326.400000 -156.521400 -8.365300 326.800000 -156.521400 -8.365500 328.400000 -156.521400 -8.365700 332.000000 -156.521400 -8.365900 330.000000 -156.521400 -8.366200 332.400000 -156.521500 -8.366600 337.600000 -156.521600 -8.366900 340.800000 -156.521700 -8.367300 350.000000 -156.521800 -8.367600 361.200000 -156.522000 -8.368000 371.600000 -156.522100 -8.368300 382.400000 -156.522200 -8.368600 396.400000 -156.522300 -8.369000 408.000000 -156.522400 -8.369300 421.200000 -156.522600 -8.369700 434.400000 -156.522600 -8.370000 440.000000 -156.522700 -8.370000 443.600000 -156.522900 -8.369600 441.200000 -156.523100 -8.369400 444.000000 -156.523400 -8.369100 440.000000 -156.523800 -8.368900 447.200000 -156.524100 -8.368700 454.800000 -156.524600 -8.368500 457.200000 -156.525000 -8.368300 467.200000 -156.525300 -8.368200 476.800000 -156.525700 -8.368000 478.000000 -156.526100 -8.367900 484.400000 -156.526300 -8.367900 483.600000 -156.526400 -8.368000 492.800000 -156.526300 -8.367900 489.200000 -156.526300 -8.367900 486.800000 -156.526300 -8.368000 484.400000 -156.526200 -8.368100 492.800000 -156.526100 -8.367900 476.400000 -156.526000 -8.367900 483.600000 -156.525900 -8.368000 475.600000 -156.525900 -8.368200 483.600000 -156.525800 -8.368100 482.800000 -156.525900 -8.367800 466.000000 -156.525900 -8.367700 470.800000 -156.525800 -8.367600 460.400000 -156.525600 -8.367400 441.600000 -156.525200 -8.367200 428.000000 -156.524900 -8.367000 409.200000 -156.524500 -8.366800 394.000000 -156.524200 -8.366800 380.400000 -156.523800 -8.366800 372.000000 -156.523600 -8.366700 365.600000 -156.523400 -8.366800 358.400000 -156.523200 -8.366700 350.800000 -156.523000 -8.366700 349.600000 -156.522900 -8.366900 352.000000 -156.522800 -8.367100 355.200000 -156.522700 -8.367400 363.600000 -156.522600 -8.367600 372.400000 -156.522500 -8.367900 378.400000 -156.522500 -8.368100 382.400000 -156.522400 -8.368200 383.200000 -156.522300 -8.368200 381.200000 -156.522200 -8.368300 385.200000 -156.522200 -8.368400 384.800000 -156.522100 -8.368400 386.800000 -156.522000 -8.368600 390.000000 -156.521900 -8.368700 389.600000 -156.521900 -8.368700 388.000000 -156.521800 -8.368800 389.200000 -156.521800 -8.368800 388.800000 -156.521700 -8.369000 386.800000 -156.521700 -8.369100 392.400000 -156.521600 -8.369100 390.400000 -156.521600 -8.369100 384.800000 -156.521500 -8.369200 388.000000 -156.521500 -8.369400 387.600000 -156.521400 -8.369500 390.800000 -156.521400 -8.369600 389.600000 -156.521300 -8.369700 391.600000 -156.521200 -8.369800 398.400000 -156.521100 -8.369900 398.800000 -156.521100 -8.370000 399.200000 -156.521000 -8.370100 405.600000 -156.520900 -8.370300 412.400000 -156.520800 -8.370300 410.000000 -156.520700 -8.370400 418.800000 -156.520600 -8.370500 417.600000 -156.520600 -8.370700 420.400000 -156.520500 -8.370900 426.800000 -156.520400 -8.370900 423.600000 -156.520300 -8.371100 430.800000 -156.520200 -8.371400 441.600000 -156.520100 -8.371700 451.200000 -156.520000 -8.372000 470.000000 -156.520000 -8.372300 480.400000 -156.519900 -8.372600 486.800000 -156.519900 -8.373000 499.200000 -156.519800 -8.373400 508.800000 -156.519800 -8.373700 512.800000 -156.519900 -8.373700 515.600000 -156.520500 -8.373800 528.400000 -156.520900 -8.374700 550.800000 -156.520800 -8.375900 578.000000 -156.520900 -8.377300 608.800000 -156.520900 -8.378800 640.400000 -156.521000 -8.380300 701.200000 -156.521000 -8.381700 744.400000 -156.521100 -8.382900 804.000000 -156.521200 -8.384000 862.000000 -156.521400 -8.385100 892.000000 -156.521500 -8.386100 944.000000 -156.521700 -8.387200 975.200000 -156.521800 -8.388200 1028.000000 -156.521900 -8.389300 1063.600000 -156.522000 -8.390300 1101.200000 -156.522200 -8.391400 1167.200000 -156.522300 -8.392400 1207.200000 -156.522500 -8.393400 1240.800000 -156.522600 -8.394400 1316.000000 -156.522700 -8.395400 1351.600000 -156.522900 -8.396800 1393.600000 -156.523100 -8.398600 1448.000000 -156.523400 -8.400400 1500.400000 -156.523600 -8.402300 1572.400000 -156.523900 -8.404200 1642.000000 -156.524300 -8.406200 1686.800000 -156.524700 -8.408800 1762.000000 -156.525200 -8.411800 1811.600000 -156.525700 -8.415100 1866.800000 -156.526200 -8.418400 1886.800000 -156.526700 -8.421600 1934.800000 -156.527200 -8.425000 1965.600000 -156.527800 -8.428300 2005.600000 -156.528200 -8.431700 2025.600000 -156.528700 -8.435000 2030.800000 -156.529200 -8.438400 2039.200000 -156.529700 -8.441600 2065.600000 -156.530200 -8.445000 2086.800000 -156.530400 -8.448200 2071.600000 -156.529100 -8.451000 2106.800000 -156.526400 -8.451700 2107.200000 -156.524300 -8.449900 2106.400000 -156.524600 -8.447200 2102.400000 -156.527200 -8.446000 2097.600000 -156.529900 -8.447300 2082.000000 -156.530900 -8.450200 2052.000000 -156.531400 -8.453400 2037.600000 -156.531800 -8.456600 2049.600000 -156.532000 -8.459800 2072.800000 -156.532200 -8.463000 2185.600000 -156.532400 -8.466300 2170.400000 -156.532500 -8.469500 2073.200000 -156.532600 -8.472800 2030.800000 -156.532700 -8.476100 1991.600000 -156.532900 -8.479500 1975.200000 -156.533100 -8.482800 1989.600000 -156.533300 -8.486100 1941.200000 -156.533500 -8.489400 1816.000000 -156.533700 -8.492700 1784.800000 -156.533900 -8.496000 1864.800000 -156.534200 -8.499300 1716.000000 -156.534600 -8.502700 1700.800000 -156.535000 -8.506100 1748.800000 -156.535400 -8.509400 1868.000000 -156.535800 -8.512700 1872.800000 -156.536200 -8.515500 1883.200000 -156.536400 -8.518000 1858.000000 -156.536600 -8.520000 1800.800000 -156.536800 -8.521900 1738.800000 -156.536900 -8.523700 1685.600000 -156.537100 -8.525600 1618.400000 -156.537400 -8.527400 1554.400000 -156.537700 -8.529300 1501.600000 -156.538000 -8.531100 1489.600000 -156.538300 -8.533000 1553.200000 -156.538500 -8.534800 1550.800000 -156.538900 -8.536600 1503.200000 -156.539200 -8.538500 1563.200000 -156.539400 -8.540300 1558.400000 -156.539700 -8.542100 1629.600000 -156.540000 -8.544000 1722.800000 -156.540200 -8.545800 1787.600000 -156.540400 -8.547700 1841.600000 -156.539900 -8.549400 1890.400000 -156.538500 -8.550300 1903.200000 -156.537300 -8.550000 1874.800000 -156.536900 -8.549000 1847.200000 -156.536900 -8.548100 1825.200000 -156.536900 -8.547500 1810.000000 -156.536900 -8.547000 1794.400000 -156.537100 -8.546600 1770.000000 -156.537400 -8.546500 1766.400000 -156.537800 -8.546200 1733.600000 -156.538000 -8.546000 1727.200000 -156.538300 -8.545700 1718.400000 -156.538500 -8.545700 1721.600000 -156.538700 -8.545700 1732.400000 -156.538900 -8.545500 1727.200000 -156.538800 -8.545100 1703.200000 -156.538900 -8.544700 1678.800000 -156.538900 -8.544600 1670.000000 -156.539000 -8.544200 1669.200000 -156.539100 -8.543800 1632.800000 -156.539100 -8.543400 1614.000000 -156.539400 -8.543200 1606.400000 -156.539600 -8.543000 1598.800000 -156.539600 -8.542700 1592.800000 -156.539700 -8.542600 1589.200000 -156.539600 -8.542600 1599.200000 -156.539700 -8.542400 1584.000000 -156.539600 -8.542300 1582.800000 -156.539500 -8.542300 1584.800000 -156.539500 -8.542200 1582.400000 -156.539600 -8.542200 1581.200000 -156.539600 -8.542200 1581.600000 -156.539600 -8.542200 1581.600000 -156.539600 -8.542300 1582.800000 -156.539700 -8.542200 1580.400000 -156.539600 -8.542200 1579.600000 -156.539600 -8.542200 1580.800000 -156.539600 -8.542200 1581.200000 -156.539500 -8.542100 1581.200000 -156.539500 -8.542100 1580.400000 -156.539400 -8.542100 1581.200000 -156.539400 -8.542200 1584.000000 -156.539300 -8.542200 1583.200000 -156.539400 -8.542100 1581.200000 -156.539500 -8.542000 1578.800000 -156.539500 -8.542100 1579.200000 -156.539500 -8.542100 1580.400000 -156.539600 -8.542000 1577.600000 -156.539700 -8.541800 1574.400000 -156.539700 -8.541300 1566.800000 -156.539600 -8.540900 1561.200000 -156.539600 -8.540500 1557.200000 -156.539500 -8.540100 1554.000000 -156.539400 -8.539700 1545.200000 -156.539300 -8.539300 1540.000000 -156.539200 -8.538900 1525.200000 -156.539200 -8.538500 1519.200000 -156.539200 -8.538100 1513.200000 -156.539200 -8.537700 1508.400000 -156.539200 -8.537300 1504.400000 -156.539100 -8.537100 1506.400000 -156.538900 -8.536900 1502.400000 -156.538800 -8.536900 1504.000000 -156.538800 -8.536900 1506.400000 -156.538800 -8.536800 1504.800000 -156.538800 -8.536700 1503.200000 -156.538900 -8.536600 1502.800000 -156.538800 -8.536700 1504.000000 -156.538800 -8.536600 1503.200000 -156.538900 -8.536500 1503.200000 -156.538900 -8.536400 1502.800000 -156.538800 -8.536500 1502.400000 -156.538700 -8.536600 1502.800000 -156.538800 -8.536500 1502.800000 -156.538800 -8.536500 1504.000000 -156.538800 -8.536500 1504.800000 -156.538700 -8.536500 1505.200000 -156.538600 -8.536600 1504.800000 -156.538600 -8.536600 1504.800000 -156.538600 -8.536600 1505.200000 -156.538600 -8.536600 1505.200000 -156.538600 -8.536600 1505.600000 -156.538600 -8.536600 1505.600000 -156.538500 -8.536700 1508.000000 -156.538400 -8.536800 1506.800000 -156.538300 -8.536800 1508.400000 -156.538300 -8.536900 1508.000000 -156.538300 -8.536900 1507.600000 -156.538200 -8.536900 1509.200000 -156.538200 -8.536900 1509.200000 -156.538200 -8.536900 1509.200000 -156.538200 -8.536900 1509.200000 -156.538100 -8.537000 1509.600000 -156.538100 -8.537000 1512.000000 -156.538100 -8.536900 1511.200000 -156.538200 -8.536900 1509.600000 -156.538100 -8.537000 1512.800000 -156.538000 -8.537100 1512.400000 -156.538000 -8.537200 1514.400000 -156.537800 -8.537400 1516.400000 -156.537900 -8.537300 1515.600000 -156.538000 -8.537100 1512.800000 -156.538100 -8.536900 1509.600000 -156.538200 -8.536900 1509.200000 -156.538300 -8.536800 1508.000000 -156.538300 -8.536900 1508.000000 -156.538300 -8.536900 1508.800000 -156.538300 -8.536900 1507.600000 -156.538300 -8.537000 1508.400000 -156.538200 -8.537200 1509.600000 -156.538100 -8.537400 1512.400000 -156.538200 -8.537300 1511.600000 -156.538300 -8.537200 1512.000000 -156.538400 -8.537100 1510.000000 -156.538400 -8.537000 1507.600000 -156.538400 -8.537100 1507.600000 -156.538400 -8.537200 1511.600000 -156.538400 -8.537200 1510.800000 -156.538500 -8.537100 1508.000000 -156.538600 -8.537000 1506.800000 -156.538700 -8.536900 1504.800000 -156.538700 -8.536900 1504.400000 -156.538800 -8.536800 1505.200000 -156.539000 -8.536500 1502.800000 -156.539100 -8.536500 1501.600000 -156.539100 -8.536600 1502.400000 -156.539000 -8.536700 1502.400000 -156.538900 -8.536800 1502.800000 -156.538800 -8.536900 1504.400000 -156.538700 -8.537000 1505.200000 -156.538600 -8.537100 1506.400000 -156.538600 -8.537200 1506.800000 -156.538600 -8.537200 1508.800000 -156.538500 -8.537400 1508.800000 -156.538300 -8.537600 1512.000000 -156.538100 -8.537800 1517.200000 -156.537900 -8.538000 1524.000000 -156.538100 -8.538100 1520.400000 -156.538500 -8.538600 1565.200000 -156.539700 -8.540300 1555.200000 -156.541600 -8.542400 1616.800000 -156.543700 -8.544600 1774.400000 -156.545800 -8.546800 1829.200000 -156.547900 -8.549000 1952.800000 -156.550100 -8.551200 2019.200000 -156.552400 -8.553500 2018.400000 -156.554800 -8.555700 2118.800000 -156.557100 -8.558000 2131.600000 -156.559500 -8.560200 2208.800000 -156.561800 -8.562400 2238.800000 -156.564100 -8.564600 2302.000000 -156.566500 -8.566800 2445.600000 -156.568900 -8.569000 2450.000000 -156.571300 -8.571200 2470.400000 -156.573700 -8.573400 2492.400000 -156.576100 -8.575600 2452.400000 -156.578300 -8.577900 2382.800000 -156.580600 -8.580300 2338.000000 -156.582800 -8.582600 2328.400000 -156.585100 -8.585000 2299.600000 -156.587400 -8.587300 2153.200000 -156.589700 -8.589700 2102.000000 -156.592000 -8.592000 2088.000000 -156.594300 -8.594300 2154.000000 -156.596600 -8.596600 2182.000000 -156.598900 -8.599000 2204.400000 -156.601200 -8.601300 2253.200000 -156.603500 -8.603600 2275.600000 -156.605700 -8.605900 2190.400000 -156.608000 -8.608200 2148.800000 -156.610300 -8.610500 2018.000000 -156.612600 -8.612900 1908.800000 -156.614900 -8.615200 1824.400000 -156.617100 -8.617500 1844.800000 -156.619300 -8.619900 1983.600000 -156.621500 -8.622300 2089.600000 -156.623700 -8.624700 2286.000000 -156.625900 -8.627100 2358.800000 -156.628000 -8.629500 2433.200000 -156.630200 -8.631900 2476.000000 -156.632300 -8.634200 2406.000000 -156.634400 -8.636600 2464.800000 -156.636600 -8.639000 2476.000000 -156.638800 -8.641300 2400.800000 -156.640900 -8.643700 2245.200000 -156.643000 -8.646100 2086.400000 -156.645200 -8.648400 1910.800000 -156.647400 -8.650800 1818.800000 -156.649400 -8.653100 1618.800000 -156.651100 -8.655000 1492.400000 -156.652700 -8.656600 1456.000000 -156.654300 -8.658200 1459.600000 -156.655900 -8.659700 1606.400000 -156.657400 -8.661000 1605.200000 -156.658700 -8.662200 1568.000000 -156.659900 -8.663300 1599.600000 -156.661000 -8.664400 1588.000000 -156.662200 -8.665400 1572.800000 -156.663400 -8.666400 1543.600000 -156.664600 -8.667500 1522.400000 -156.665800 -8.668600 1515.200000 -156.667100 -8.669800 1509.200000 -156.668300 -8.671000 1504.400000 -156.669600 -8.672200 1490.000000 -156.670800 -8.673400 1481.600000 -156.672100 -8.674600 1472.800000 -156.673300 -8.675800 1476.000000 -156.674500 -8.676900 1496.400000 -156.675800 -8.678100 1541.200000 -156.677000 -8.679300 1604.400000 -156.678300 -8.680400 1638.800000 -156.679400 -8.681500 1663.600000 -156.680200 -8.682200 1670.400000 -156.680900 -8.682900 1678.800000 -156.681400 -8.683400 1689.200000 -156.681800 -8.683800 1700.400000 -156.682200 -8.684200 1704.400000 -156.682600 -8.684600 1708.400000 -156.683000 -8.685000 1713.200000 -156.683400 -8.685400 1715.600000 -156.683600 -8.685700 1716.000000 -156.683500 -8.686100 1712.800000 -156.683200 -8.686200 1707.600000 -156.682800 -8.686000 1705.200000 -156.682200 -8.685300 1700.800000 -156.681500 -8.684400 1697.600000 -156.680700 -8.683300 1678.800000 -156.679900 -8.682300 1669.200000 -156.679200 -8.681400 1660.400000 -156.678700 -8.681000 1649.200000 -156.678300 -8.680600 1638.400000 -156.678100 -8.680400 1621.600000 -156.678000 -8.680300 1617.200000 -156.677800 -8.679900 1620.400000 -156.677700 -8.679700 1599.600000 -156.677600 -8.679600 1621.200000 -156.677500 -8.679600 1615.200000 -156.677500 -8.679300 1592.800000 -156.677400 -8.679200 1606.800000 -156.677300 -8.679200 1606.800000 -156.677200 -8.679200 1612.800000 -156.677300 -8.679100 1615.200000 -156.677300 -8.679000 1580.400000 -156.677300 -8.679000 1594.000000 -156.677400 -8.678900 1591.200000 -156.677500 -8.678900 1581.600000 -156.677400 -8.678900 1598.800000 -156.677300 -8.678900 1578.400000 -156.677200 -8.678800 1582.400000 -156.677300 -8.678700 1595.600000 -156.677200 -8.678700 1573.200000 -156.677300 -8.678600 1591.600000 -156.677400 -8.678600 1586.800000 -156.677400 -8.678500 1574.000000 -156.677400 -8.678500 1587.600000 -156.677400 -8.678500 1596.000000 -156.677400 -8.678400 1592.000000 -156.677300 -8.678400 1568.400000 -156.677300 -8.678300 1586.400000 -156.677400 -8.678200 1580.800000 -156.677400 -8.678200 1586.000000 -156.677300 -8.678200 1583.600000 -156.677200 -8.678200 1565.600000 -156.677200 -8.678200 1564.000000 -156.677100 -8.678200 1557.200000 -156.677200 -8.677900 1553.200000 -156.677300 -8.677600 1549.600000 -156.677100 -8.677000 1534.000000 -156.676900 -8.676600 1521.200000 -156.676600 -8.676300 1510.000000 -156.676400 -8.676000 1503.200000 -156.676100 -8.675800 1496.800000 -156.675900 -8.675800 1492.800000 -156.675700 -8.675800 1490.400000 -156.675500 -8.675700 1487.200000 -156.675400 -8.675700 1485.600000 -156.675200 -8.675800 1485.200000 -156.675100 -8.675900 1486.000000 -156.674900 -8.675900 1485.200000 -156.674800 -8.676100 1485.200000 -156.674700 -8.676200 1486.400000 -156.674600 -8.676300 1488.000000 -156.674400 -8.676300 1486.800000 -156.674200 -8.676200 1484.800000 -156.674000 -8.676300 1484.400000 -156.673900 -8.676400 1484.800000 -156.673800 -8.676500 1484.000000 -156.673800 -8.676700 1484.800000 -156.673700 -8.676900 1486.000000 -156.673700 -8.677000 1487.200000 -156.673600 -8.677200 1487.600000 -156.673600 -8.677300 1487.600000 -156.673500 -8.677500 1488.800000 -156.673400 -8.677700 1490.000000 -156.673400 -8.677800 1492.000000 -156.673300 -8.678000 1492.000000 -156.673200 -8.678100 1494.000000 -156.673100 -8.678300 1495.200000 -156.673000 -8.678400 1495.600000 -156.672900 -8.678500 1497.600000 -156.672800 -8.678700 1499.200000 -156.672700 -8.678800 1499.600000 -156.672400 -8.678700 1498.000000 -156.672200 -8.678700 1495.600000 -156.672100 -8.678600 1494.400000 -156.671900 -8.678600 1493.200000 -156.671800 -8.678700 1494.000000 -156.671600 -8.678600 1494.000000 -156.671400 -8.678600 1492.400000 -156.671200 -8.678600 1493.200000 -156.671100 -8.678700 1494.400000 -156.671000 -8.678800 1496.400000 -156.670900 -8.678900 1499.200000 -156.670800 -8.679100 1502.400000 -156.670700 -8.679200 1505.600000 -156.670600 -8.679300 1507.600000 -156.670500 -8.679400 1510.000000 -156.670300 -8.679500 1513.200000 -156.670100 -8.679500 1513.200000 -156.670000 -8.679600 1512.800000 -156.669800 -8.679600 1513.200000 -156.669600 -8.679600 1516.800000 -156.669400 -8.679600 1512.800000 -156.669300 -8.679700 1512.800000 -156.669100 -8.679800 1513.600000 -156.669000 -8.679900 1514.400000 -156.668800 -8.680000 1514.000000 -156.668700 -8.680100 1513.200000 -156.668500 -8.680200 1513.200000 -156.668400 -8.680300 1514.400000 -156.668300 -8.680500 1514.000000 -156.668200 -8.680600 1515.200000 -156.668100 -8.680800 1516.400000 -156.668000 -8.681100 1518.800000 -156.668000 -8.681300 1520.800000 -156.667900 -8.681500 1522.800000 -156.667800 -8.681700 1525.200000 -156.667800 -8.681900 1527.600000 -156.667700 -8.682100 1531.200000 -156.667700 -8.682300 1533.200000 -156.667600 -8.682500 1535.200000 -156.667500 -8.682500 1535.600000 -156.667500 -8.682300 1533.600000 -156.667700 -8.682200 1532.000000 -156.668300 -8.682200 1548.400000 -156.669800 -8.682400 1546.400000 -156.671700 -8.682600 1550.800000 -156.673900 -8.682800 1572.400000 -156.676600 -8.683000 1617.200000 -156.679400 -8.683200 1666.400000 -156.682500 -8.683400 1694.800000 -156.685600 -8.683600 1708.000000 -156.688800 -8.683800 1754.800000 -156.691900 -8.684000 1839.600000 -156.695000 -8.684100 1892.000000 -156.698100 -8.684200 1931.200000 -156.701200 -8.684200 1996.400000 -156.704400 -8.684200 1970.800000 -156.707500 -8.684300 2063.600000 -156.710700 -8.684400 2099.200000 -156.713800 -8.684400 2118.800000 -156.717000 -8.684500 2172.400000 -156.720100 -8.684500 2104.000000 -156.723300 -8.684600 2128.000000 -156.726400 -8.684600 2246.000000 -156.729600 -8.684600 2244.000000 -156.732800 -8.684600 2259.600000 -156.735900 -8.684600 2364.000000 -156.739000 -8.684600 2334.400000 -156.742100 -8.684600 2452.400000 -156.745200 -8.684600 2418.400000 -156.748300 -8.684500 2404.800000 -156.751400 -8.684500 2435.600000 -156.754400 -8.684500 2478.800000 -156.757500 -8.684400 2248.000000 -156.760600 -8.684400 2216.000000 -156.763700 -8.684300 2146.000000 -156.766700 -8.684200 2125.600000 -156.769800 -8.684100 2122.000000 -156.773000 -8.684100 2161.200000 -156.776100 -8.684000 2222.400000 -156.779200 -8.683900 2314.000000 -156.782300 -8.683800 2311.600000 -156.785400 -8.683700 2457.200000 -156.788500 -8.683600 2463.600000 -156.791600 -8.683500 2340.000000 -156.794800 -8.683400 2304.400000 -156.797900 -8.683200 2462.000000 -156.800900 -8.683100 2118.000000 -156.804000 -8.683000 2465.200000 -156.807100 -8.682800 2423.600000 -156.810200 -8.682700 2027.600000 -156.813300 -8.682600 2329.600000 -156.816400 -8.682500 2246.800000 -156.819500 -8.682300 2483.200000 -156.822600 -8.682200 2280.800000 -156.825800 -8.682100 2462.800000 -156.828900 -8.681900 2468.400000 -156.832100 -8.681800 2113.600000 -156.835200 -8.681700 2279.600000 -156.838400 -8.681500 2216.400000 -156.841600 -8.681300 2132.400000 -156.844700 -8.681200 2198.400000 -156.847900 -8.681000 2074.400000 -156.851100 -8.680900 2352.400000 -156.854200 -8.680900 2403.200000 -156.857400 -8.680900 2320.000000 -156.860600 -8.680900 2246.000000 -156.863800 -8.680900 2080.000000 -156.867000 -8.680900 2336.800000 -156.870200 -8.680900 2264.000000 -156.873400 -8.680800 3118.400000 -156.876600 -8.680800 3122.400000 -156.879700 -8.680800 3101.200000 -156.882900 -8.680800 3126.400000 -156.886100 -8.680800 2961.600000 -156.889200 -8.680800 2968.000000 -156.892400 -8.680800 3072.000000 -156.895600 -8.680700 3030.400000 -156.898800 -8.680700 3027.600000 -156.901900 -8.680800 3029.200000 -156.905100 -8.680800 3022.400000 -156.908200 -8.680800 3026.800000 -156.911400 -8.680800 3037.200000 -156.914600 -8.680900 3026.800000 -156.917800 -8.681100 3022.000000 -156.920900 -8.681200 3010.800000 -156.924100 -8.681500 3008.000000 -156.927300 -8.681700 2993.600000 -156.930400 -8.681900 2970.400000 -156.933500 -8.682200 2936.000000 -156.935800 -8.682300 2904.000000 -156.937400 -8.682400 2884.400000 -156.938500 -8.682500 2876.000000 -156.939400 -8.682600 2870.000000 -156.940100 -8.682600 2865.200000 -156.940700 -8.682500 2860.800000 -156.941300 -8.682500 2856.800000 -156.941600 -8.682400 2854.800000 -156.941700 -8.682300 2854.000000 -156.941800 -8.682300 2855.200000 -156.941900 -8.682300 2854.000000 -156.941900 -8.682300 2852.800000 -156.941900 -8.682400 2852.800000 -156.942000 -8.682400 2852.400000 -156.942000 -8.682400 2852.400000 -156.942000 -8.682500 2852.000000 -156.942000 -8.682500 2851.600000 -156.942000 -8.682500 2851.200000 -156.942000 -8.682600 2851.200000 -156.942000 -8.682600 2850.800000 -156.942000 -8.682600 2851.200000 -156.941900 -8.682600 2852.000000 -156.941900 -8.682600 2852.400000 -156.941900 -8.682600 2852.800000 -156.941900 -8.682700 2852.800000 -156.941900 -8.682700 2852.400000 -156.941900 -8.682700 2852.000000 -156.941900 -8.682700 2851.600000 -156.941900 -8.682700 2851.600000 -156.941900 -8.682800 2852.000000 -156.941900 -8.682800 2851.600000 -156.941900 -8.682800 2851.200000 -156.941900 -8.682800 2852.800000 -156.941900 -8.682900 2851.200000 -156.941900 -8.682900 2850.800000 -156.941900 -8.682900 2850.800000 -156.941900 -8.683000 2851.200000 -156.941900 -8.683000 2850.400000 -156.941900 -8.683000 2850.800000 -156.941900 -8.683000 2850.400000 -156.941900 -8.683000 2850.800000 -156.941800 -8.683000 2851.200000 -156.941800 -8.683100 2850.800000 -156.941800 -8.683100 2851.200000 -156.941800 -8.683100 2852.000000 -156.941800 -8.683100 2851.200000 -156.941700 -8.683100 2851.200000 -156.941700 -8.683100 2850.800000 -156.941800 -8.683100 2851.200000 -156.941800 -8.683100 2851.200000 -156.941800 -8.683100 2852.000000 -156.941700 -8.683100 2851.600000 -156.941700 -8.683200 2852.000000 -156.941700 -8.683200 2851.600000 -156.941700 -8.683100 2851.600000 -156.941700 -8.683100 2852.000000 -156.941600 -8.683100 2852.400000 -156.941600 -8.683000 2852.800000 -156.941500 -8.683000 2854.000000 -156.941500 -8.683000 2854.400000 -156.941400 -8.683000 2855.200000 -156.941400 -8.683000 2856.000000 -156.941400 -8.683000 2854.800000 -156.941400 -8.683000 2854.800000 -156.941400 -8.683000 2855.200000 -156.941300 -8.683000 2855.200000 -156.941300 -8.683100 2854.400000 -156.941300 -8.683100 2855.200000 -156.941300 -8.683100 2854.800000 -156.941200 -8.683100 2855.200000 -156.941200 -8.683100 2855.200000 -156.941200 -8.683200 2855.600000 -156.941200 -8.683200 2855.200000 -156.941100 -8.683200 2855.200000 -156.941100 -8.683200 2855.600000 -156.941100 -8.683300 2858.000000 -156.941100 -8.683300 2856.800000 -156.941100 -8.683300 2855.200000 -156.941100 -8.683300 2855.600000 -156.941000 -8.683300 2855.600000 -156.941000 -8.683300 2855.600000 -156.941000 -8.683300 2856.000000 -156.941000 -8.683300 2856.000000 -156.941000 -8.683300 2855.600000 -156.940900 -8.683400 2855.600000 -156.940900 -8.683400 2856.000000 -156.940900 -8.683400 2855.600000 -156.940900 -8.683400 2856.000000 -156.940900 -8.683400 2855.600000 -156.940900 -8.683400 2855.600000 -156.940900 -8.683400 2855.600000 -156.940800 -8.683400 2856.400000 -156.940800 -8.683500 2856.000000 -156.940800 -8.683500 2856.000000 -156.940800 -8.683500 2856.400000 -156.940700 -8.683500 2856.800000 -156.940700 -8.683500 2856.800000 -156.940600 -8.683500 2857.200000 -156.940600 -8.683500 2857.600000 -156.940500 -8.683400 2857.600000 -156.940500 -8.683400 2858.400000 -156.940400 -8.683400 2858.800000 -156.940400 -8.683400 2859.200000 -156.940400 -8.683400 2858.800000 -156.940300 -8.683400 2858.800000 -156.940300 -8.683400 2858.800000 -156.940300 -8.683400 2859.200000 -156.940200 -8.683400 2859.600000 -156.940200 -8.683400 2860.000000 -156.940200 -8.683400 2860.800000 -156.940100 -8.683400 2860.800000 -156.940100 -8.683400 2861.200000 -156.940100 -8.683300 2861.200000 -156.940000 -8.683300 2861.200000 -156.940000 -8.683300 2861.200000 -156.940000 -8.683300 2861.600000 -156.939900 -8.683300 2862.000000 -156.939900 -8.683300 2862.000000 -156.939900 -8.683300 2862.800000 -156.939800 -8.683300 2862.800000 -156.939800 -8.683300 2863.200000 -156.939800 -8.683300 2863.600000 -156.939700 -8.683300 2864.000000 -156.939700 -8.683300 2864.800000 -156.939600 -8.683300 2864.800000 -156.939600 -8.683300 2864.800000 -156.939500 -8.683300 2865.200000 -156.939400 -8.683300 2866.000000 -156.939300 -8.683300 2866.800000 -156.939200 -8.683300 2867.600000 -156.939000 -8.683300 2868.400000 -156.938900 -8.683300 2869.200000 -156.938700 -8.683300 2870.400000 -156.938600 -8.683300 2870.400000 -156.938500 -8.683300 2871.200000 -156.938400 -8.683400 2872.000000 -156.938300 -8.683400 2872.800000 -156.938200 -8.683400 2872.400000 -156.938100 -8.683400 2873.600000 -156.937800 -8.683100 2876.000000 -156.937800 -8.682500 2878.800000 -156.938200 -8.682200 2879.600000 -156.938600 -8.682400 2876.000000 -156.938900 -8.683100 2870.000000 -156.939400 -8.684100 2863.600000 -156.939900 -8.685200 2859.600000 -156.940300 -8.686100 2858.400000 -156.940700 -8.687000 2862.000000 -156.941000 -8.687700 2863.200000 -156.941300 -8.688500 2870.800000 -156.941600 -8.689200 2871.600000 -156.941900 -8.689900 2880.800000 -156.942200 -8.690600 2891.600000 -156.942500 -8.691200 2714.400000 -156.942700 -8.691900 2796.800000 -156.943000 -8.692600 2770.000000 -156.943300 -8.693300 2774.000000 -156.943600 -8.693900 2732.400000 -156.943800 -8.694600 2691.600000 -156.944100 -8.695300 2662.800000 -156.944400 -8.696000 2655.200000 -156.944700 -8.696600 2602.800000 -156.944900 -8.697300 2613.200000 -156.945200 -8.698000 2518.800000 -156.945500 -8.698700 2526.000000 -156.945800 -8.699400 2517.200000 -156.946100 -8.700000 2514.000000 -156.946400 -8.700700 2515.600000 -156.946600 -8.701400 2357.200000 -156.946900 -8.702100 2335.600000 -156.947200 -8.702800 2248.000000 -156.947500 -8.703500 2227.200000 -156.947800 -8.704200 2206.400000 -156.948200 -8.704900 2189.600000 -156.948500 -8.705700 2163.200000 -156.948900 -8.706500 2138.000000 -156.949300 -8.707400 2116.000000 -156.949700 -8.708200 2094.800000 -156.950100 -8.709000 2070.000000 -156.950500 -8.709700 2066.000000 -156.950700 -8.710400 2022.800000 -156.950900 -8.710900 2003.200000 -156.951200 -8.711500 1986.000000 -156.951400 -8.712000 1966.000000 -156.951800 -8.712400 1948.400000 -156.952100 -8.712700 2024.800000 -156.952400 -8.713000 1925.600000 -156.952600 -8.713200 1916.400000 -156.952800 -8.713400 1908.400000 -156.953000 -8.713500 1902.000000 -156.953300 -8.713700 1896.000000 -156.953300 -8.713800 1890.000000 -156.953400 -8.713900 1887.600000 -156.953600 -8.713900 1881.600000 -156.953900 -8.714000 1879.200000 -156.954000 -8.714100 1874.000000 -156.954100 -8.714100 1871.200000 -156.954400 -8.714200 1866.000000 -156.954600 -8.714300 1861.600000 -156.954700 -8.714300 1859.200000 -156.954600 -8.714400 1858.000000 -156.954500 -8.714400 1859.200000 -156.954400 -8.714400 1859.600000 -156.954100 -8.714400 1863.200000 -156.954100 -8.714400 1864.400000 -156.954100 -8.714400 1866.800000 -156.954000 -8.714400 1865.600000 -156.953800 -8.714300 1867.600000 -156.953700 -8.714300 1870.400000 -156.954100 -8.714200 1867.200000 -156.954800 -8.714200 1862.800000 -156.955400 -8.714300 1852.400000 -156.955900 -8.714300 1842.400000 -156.956500 -8.714500 1834.400000 -156.956900 -8.714600 1822.800000 -156.957200 -8.714800 1814.800000 -156.957600 -8.715100 1803.200000 -156.958000 -8.715400 1789.600000 -156.958400 -8.715700 1778.000000 -156.958800 -8.715900 1768.000000 -156.959200 -8.716100 1758.400000 -156.959500 -8.716300 1750.000000 -156.959900 -8.716500 1740.000000 -156.960300 -8.716600 1731.600000 -156.960800 -8.716800 1721.600000 -156.961200 -8.716900 1712.800000 -156.961600 -8.717000 1703.600000 -156.962000 -8.717200 1693.600000 -156.962400 -8.717300 1682.400000 -156.962700 -8.717500 1672.800000 -156.963100 -8.717600 1662.400000 -156.963500 -8.717700 1651.200000 -156.963800 -8.717800 1644.800000 -156.964300 -8.718000 1633.600000 -156.964700 -8.718200 1625.600000 -156.965200 -8.718400 1617.600000 -156.965600 -8.718500 1609.200000 -156.966100 -8.718700 1601.200000 -156.966400 -8.718800 1596.800000 -156.966900 -8.719000 1591.600000 -156.967200 -8.719200 1586.800000 -156.967700 -8.719400 1583.200000 -156.968100 -8.719500 1580.000000 -156.968600 -8.719700 1574.000000 -156.968900 -8.719900 1572.000000 -156.969300 -8.720100 1580.400000 -156.969800 -8.720400 1603.200000 -156.970200 -8.720600 1603.600000 -156.970500 -8.720900 1605.600000 -156.970800 -8.721100 1672.400000 -156.971400 -8.721300 1642.800000 -156.971800 -8.721500 1694.400000 -156.972200 -8.721800 1705.600000 -156.972700 -8.722000 1720.000000 -156.972900 -8.722100 1741.600000 -156.973000 -8.722200 1741.200000 -156.973400 -8.722400 1739.600000 -156.973800 -8.722600 1739.200000 -156.974200 -8.722800 1726.000000 -156.974400 -8.723000 1724.400000 -156.974800 -8.723200 1721.600000 -156.975200 -8.723400 1716.000000 -156.975600 -8.723600 1738.000000 -156.976000 -8.723900 1745.600000 -156.976300 -8.724100 1626.800000 -156.976700 -8.724300 1616.000000 -156.977100 -8.724500 1604.800000 -156.977600 -8.724700 1593.600000 -156.977900 -8.724900 1586.000000 -156.978200 -8.725100 1579.600000 -156.978500 -8.725300 1572.000000 -156.978900 -8.725500 1566.000000 -156.979100 -8.725700 1556.800000 -156.979500 -8.725900 1542.400000 -156.979900 -8.726200 1528.000000 -156.980200 -8.726400 1518.800000 -156.980700 -8.726700 1499.600000 -156.981000 -8.726900 1485.200000 -156.981500 -8.727100 1474.800000 -156.981800 -8.727300 1452.400000 -156.982300 -8.727600 1434.400000 -156.982700 -8.727900 1416.400000 -156.983100 -8.728100 1402.000000 -156.983500 -8.728300 1385.200000 -156.983900 -8.728600 1370.400000 -156.984400 -8.728800 1355.600000 -156.984600 -8.729000 1345.600000 -156.985000 -8.729200 1336.000000 -156.985300 -8.729500 1328.000000 -156.985700 -8.729700 1304.000000 -156.986100 -8.729900 1306.400000 -156.986500 -8.730200 1265.600000 -156.986800 -8.730300 1254.000000 -156.987300 -8.730600 1236.800000 -156.987600 -8.730700 1215.600000 -156.988000 -8.730900 1202.800000 -156.988400 -8.731100 1186.800000 -156.988800 -8.731300 1162.800000 -156.989200 -8.731400 1146.400000 -156.989500 -8.731500 1131.200000 -156.989900 -8.731700 1116.400000 -156.990300 -8.731800 1104.000000 -156.990600 -8.731900 1096.000000 -156.991000 -8.732100 1090.000000 -156.991400 -8.732300 1079.200000 -156.991700 -8.732500 1069.600000 -156.992000 -8.732700 1062.000000 -156.992300 -8.732900 1066.800000 -156.992700 -8.733100 1033.200000 -156.993100 -8.733300 1020.400000 -156.993400 -8.733500 1007.600000 -156.993800 -8.733700 996.400000 -156.994100 -8.733800 983.600000 -156.994400 -8.734000 969.600000 -156.994800 -8.734200 955.200000 -156.995100 -8.734300 946.000000 -156.995400 -8.734500 931.600000 -156.995900 -8.734700 915.600000 -156.996300 -8.734800 898.400000 -156.996700 -8.735000 887.200000 -156.997100 -8.735200 876.400000 -156.997600 -8.735300 862.400000 -156.998000 -8.735500 842.400000 -156.998400 -8.735600 817.600000 -156.998800 -8.735800 808.000000 -156.999200 -8.735900 784.800000 -156.999600 -8.736100 773.200000 -157.000000 -8.736200 764.800000 -157.000400 -8.736400 764.800000 -157.000800 -8.736600 752.800000 -157.001200 -8.736700 741.600000 -157.001500 -8.736900 720.800000 -157.001900 -8.737100 706.800000 -157.002300 -8.737400 676.400000 -157.002700 -8.737600 660.000000 -157.003100 -8.737800 644.400000 -157.003500 -8.738000 645.200000 -157.004000 -8.738200 644.800000 -157.004400 -8.738400 646.000000 -157.004700 -8.738600 666.800000 -157.005100 -8.738800 669.200000 -157.005500 -8.739100 690.400000 -157.005800 -8.739300 729.600000 -157.006200 -8.739500 747.200000 -157.006600 -8.739700 737.600000 -157.007000 -8.740000 730.800000 -157.007400 -8.740200 723.200000 -157.007800 -8.740400 712.000000 -157.008000 -8.740700 706.400000 -157.008400 -8.740900 704.000000 -157.008700 -8.741100 701.200000 -157.008900 -8.741300 698.800000 -157.009200 -8.741400 696.800000 -157.009500 -8.741700 692.800000 -157.009800 -8.741900 693.200000 -157.010100 -8.742000 680.800000 -157.010500 -8.742200 680.000000 -157.010900 -8.742300 672.400000 -157.011100 -8.742400 670.400000 -157.011400 -8.742500 669.200000 -157.011600 -8.742700 660.000000 -157.011800 -8.742800 657.600000 -157.012100 -8.742900 649.600000 -157.012400 -8.743000 643.600000 -157.012800 -8.743200 640.800000 -157.013100 -8.743300 638.000000 -157.013300 -8.743400 638.000000 -157.013500 -8.743500 638.000000 -157.013900 -8.743700 640.400000 -157.014700 -8.744000 648.400000 -157.016600 -8.744900 682.000000 -157.019300 -8.746000 780.400000 -157.022200 -8.747200 936.000000 -157.025200 -8.748500 917.600000 -157.028100 -8.749800 799.600000 -157.031000 -8.751200 765.600000 -157.033900 -8.752500 784.000000 -157.036900 -8.753900 793.600000 -157.039800 -8.755300 832.400000 -157.042700 -8.756600 788.000000 -157.045700 -8.758000 757.200000 -157.048600 -8.759300 793.600000 -157.051500 -8.760700 823.600000 -157.054400 -8.762100 910.400000 -157.057400 -8.763400 1087.600000 -157.060300 -8.764800 1163.200000 -157.063200 -8.766200 1205.200000 -157.066000 -8.767700 1303.200000 -157.068900 -8.769100 1433.200000 -157.071200 -8.770100 1518.400000 -157.072900 -8.770900 1580.800000 -157.074200 -8.771700 1610.000000 -157.075200 -8.772300 1714.400000 -157.076000 -8.772900 1804.400000 -157.076800 -8.773400 1838.000000 -157.077400 -8.773900 1848.400000 -157.078100 -8.774400 1972.000000 -157.078700 -8.774800 2007.600000 -157.079200 -8.775200 1989.200000 -157.079800 -8.775700 2010.000000 -157.080400 -8.776000 2023.600000 -157.080900 -8.776400 2050.000000 -157.081400 -8.776600 2082.800000 -157.081900 -8.776500 2074.000000 -157.081900 -8.776000 2034.000000 -157.081400 -8.775800 2023.200000 -157.081000 -8.775800 2047.200000 -157.080500 -8.775500 1972.000000 -157.080100 -8.775400 1955.200000 -157.079800 -8.775400 1900.800000 -157.079400 -8.775300 1892.000000 -157.079100 -8.775200 1884.800000 -157.078900 -8.775100 1877.600000 -157.078600 -8.775100 1872.800000 -157.078300 -8.774900 1866.400000 -157.078100 -8.774900 1861.600000 -157.077700 -8.774500 1854.800000 -157.077500 -8.774300 1850.800000 -157.077200 -8.774100 1844.800000 -157.076800 -8.773900 1798.400000 -157.076400 -8.773700 1858.800000 -157.076200 -8.773600 1752.800000 -157.075800 -8.773400 1706.400000 -157.075300 -8.773100 1686.000000 -157.074900 -8.772900 1622.800000 -157.074500 -8.772600 1596.800000 -157.074000 -8.772400 1577.600000 -157.073600 -8.772300 1560.400000 -157.073100 -8.772100 1550.800000 -157.072700 -8.771900 1539.200000 -157.072200 -8.771700 1526.000000 -157.071800 -8.771600 1514.800000 -157.071300 -8.771300 1494.800000 -157.070800 -8.771100 1494.000000 -157.070500 -8.770900 1466.400000 -157.070100 -8.770700 1454.800000 -157.069600 -8.770400 1440.800000 -157.069200 -8.770200 1428.400000 -157.068800 -8.770000 1416.400000 -157.068400 -8.769800 1406.400000 -157.067900 -8.769600 1384.800000 -157.067500 -8.769400 1371.600000 -157.067100 -8.769200 1352.400000 -157.066600 -8.768900 1328.000000 -157.066200 -8.768800 1308.800000 -157.065700 -8.768600 1298.400000 -157.065300 -8.768400 1284.800000 -157.064900 -8.768200 1278.400000 -157.064400 -8.767900 1257.600000 -157.064000 -8.767700 1260.800000 -157.063600 -8.767600 1243.200000 -157.063100 -8.767300 1230.800000 -157.062600 -8.767100 1217.200000 -157.062300 -8.767000 1212.800000 -157.061800 -8.766800 1204.000000 -157.061400 -8.766500 1201.200000 -157.061000 -8.766300 1198.000000 -157.060600 -8.766100 1190.000000 -157.060100 -8.765800 1182.400000 -157.059700 -8.765700 1173.600000 -157.059300 -8.765500 1165.600000 -157.058800 -8.765200 1148.800000 -157.058400 -8.765000 1144.000000 -157.058000 -8.764800 1122.400000 -157.057600 -8.764600 1102.000000 -157.057100 -8.764400 1083.600000 -157.056700 -8.764300 1055.600000 -157.056200 -8.764000 1032.800000 -157.055800 -8.763800 1012.000000 -157.055400 -8.763600 1007.600000 -157.054900 -8.763400 966.400000 -157.054400 -8.763200 952.000000 -157.054100 -8.763100 942.400000 -157.053700 -8.762800 927.600000 -157.053100 -8.762500 909.600000 -157.052700 -8.762300 899.200000 -157.052300 -8.762100 879.200000 -157.051900 -8.761900 867.200000 -157.051500 -8.761600 854.400000 -157.051000 -8.761400 842.400000 -157.050600 -8.761200 832.400000 -157.050200 -8.761000 824.000000 -157.049800 -8.760800 820.000000 -157.049400 -8.760700 817.200000 -157.048900 -8.760500 822.000000 -157.048400 -8.760200 815.600000 -157.047900 -8.759900 808.000000 -157.047400 -8.759800 803.200000 -157.047000 -8.759600 794.800000 -157.046500 -8.759300 786.800000 -157.046100 -8.759100 780.800000 -157.045700 -8.758900 775.600000 -157.045300 -8.758700 770.400000 -157.044800 -8.758500 766.800000 -157.044400 -8.758300 765.600000 -157.044000 -8.758100 767.200000 -157.043600 -8.757900 772.000000 -157.043200 -8.757700 775.600000 -157.042800 -8.757500 788.400000 -157.042300 -8.757200 792.800000 -157.041900 -8.757000 797.200000 -157.041500 -8.756800 803.600000 -157.041100 -8.756700 811.600000 -157.040600 -8.756300 836.400000 -157.040200 -8.756100 850.800000 -157.039800 -8.755900 854.800000 -157.039400 -8.755700 846.400000 -157.039000 -8.755500 826.800000 -157.038600 -8.755300 826.400000 -157.038000 -8.755000 804.400000 -157.037500 -8.754700 798.400000 -157.037100 -8.754400 796.000000 -157.036700 -8.754100 796.800000 -157.036200 -8.753900 799.600000 -157.035900 -8.753700 807.200000 -157.035500 -8.753400 798.800000 -157.035000 -8.753300 794.800000 -157.034500 -8.753100 793.200000 -157.034000 -8.752900 784.400000 -157.033400 -8.752700 780.000000 -157.033000 -8.752500 777.600000 -157.032600 -8.752300 780.000000 -157.032200 -8.752100 775.200000 -157.031800 -8.751900 766.000000 -157.031400 -8.751600 763.200000 -157.031000 -8.751400 768.000000 -157.030600 -8.751200 782.000000 -157.030100 -8.750900 774.400000 -157.029600 -8.750600 767.600000 -157.029200 -8.750400 768.800000 -157.028700 -8.750200 778.000000 -157.028300 -8.750000 801.200000 -157.027900 -8.749800 805.200000 -157.027500 -8.749600 823.200000 -157.027100 -8.749400 830.400000 -157.026700 -8.749200 842.400000 -157.026300 -8.749000 854.000000 -157.025900 -8.748800 881.200000 -157.025500 -8.748500 887.600000 -157.025100 -8.748300 900.400000 -157.024700 -8.748100 921.200000 -157.024300 -8.747900 923.200000 -157.023900 -8.747600 956.800000 -157.023500 -8.747400 951.600000 -157.023000 -8.747100 925.200000 -157.022600 -8.746900 907.200000 -157.022300 -8.746700 888.400000 -157.022000 -8.746400 874.000000 -157.021600 -8.746200 859.200000 -157.021200 -8.746000 833.200000 -157.020800 -8.745700 841.200000 -157.020300 -8.745500 833.200000 -157.019900 -8.745300 827.200000 -157.019500 -8.745000 760.000000 -157.019100 -8.744800 746.400000 -157.018600 -8.744600 729.600000 -157.018200 -8.744400 718.400000 -157.017800 -8.744200 708.400000 -157.017400 -8.744000 696.400000 -157.017000 -8.743700 688.400000 -157.016500 -8.743600 676.800000 -157.016100 -8.743400 666.800000 -157.015600 -8.743200 660.400000 -157.015100 -8.743000 653.200000 -157.014800 -8.742900 651.600000 -157.014500 -8.742800 650.800000 -157.014100 -8.742600 650.400000 -157.013600 -8.742500 648.800000 -157.013200 -8.742400 650.800000 -157.012800 -8.742200 658.400000 -157.012300 -8.742100 719.600000 -157.011900 -8.741900 720.000000 -157.011500 -8.741800 711.200000 -157.011000 -8.741600 697.200000 -157.010600 -8.741400 698.000000 -157.010200 -8.741200 696.400000 -157.009800 -8.741000 696.400000 -157.009300 -8.740800 698.400000 -157.008900 -8.740600 699.200000 -157.008400 -8.740400 702.800000 -157.008000 -8.740200 710.000000 -157.007500 -8.740000 723.600000 -157.007100 -8.739800 758.800000 -157.006600 -8.739600 730.400000 -157.006100 -8.739400 707.600000 -157.005600 -8.739100 676.800000 -157.005200 -8.738900 667.200000 -157.004700 -8.738700 648.000000 -157.004300 -8.738500 644.000000 -157.003800 -8.738300 644.000000 -157.003400 -8.738000 648.800000 -157.002900 -8.737800 675.600000 -157.002700 -8.737800 664.000000 -157.002700 -8.737800 689.200000 -157.002800 -8.737900 674.800000 -157.002900 -8.738100 660.400000 -157.003000 -8.738200 651.600000 -157.003100 -8.738300 644.800000 -157.003200 -8.738400 642.000000 -157.003200 -8.738500 640.400000 -157.003300 -8.738600 643.200000 -157.003200 -8.738700 643.600000 -157.003200 -8.738800 643.600000 -157.003100 -8.738800 643.600000 -157.003000 -8.738800 647.200000 -157.003000 -8.738900 654.000000 -157.003000 -8.739000 655.600000 -157.003000 -8.739000 646.800000 -157.003000 -8.739100 649.200000 -157.003100 -8.739100 642.800000 -157.003100 -8.739200 651.600000 -157.003200 -8.739200 640.400000 -157.003300 -8.739200 645.200000 -157.003400 -8.739200 642.000000 -157.003500 -8.739200 636.000000 -157.003600 -8.739200 636.000000 -157.003700 -8.739300 636.000000 -157.003800 -8.739200 635.600000 -157.003900 -8.739200 636.000000 -157.004000 -8.739200 636.800000 -157.004100 -8.739100 638.400000 -157.004200 -8.739100 638.400000 -157.004300 -8.739100 638.400000 -157.004400 -8.739000 644.000000 -157.004600 -8.739000 640.800000 -157.004700 -8.738900 643.200000 -157.004800 -8.738900 647.600000 -157.004900 -8.738900 648.400000 -157.005000 -8.738900 653.600000 -157.005200 -8.738900 655.600000 -157.005100 -8.738900 654.400000 -157.004500 -8.738800 643.600000 -157.004400 -8.738100 663.600000 -157.005100 -8.737800 675.600000 -157.006000 -8.738300 714.000000 -157.007000 -8.739000 746.400000 -157.008100 -8.739800 708.000000 -157.009000 -8.740400 698.000000 -157.009600 -8.740800 695.600000 -157.010100 -8.741200 698.400000 -157.010500 -8.741500 694.800000 -157.010700 -8.741600 690.800000 -157.010800 -8.741700 687.600000 -157.010800 -8.741700 686.000000 -157.010800 -8.741700 687.600000 -157.010700 -8.741600 691.200000 -157.010800 -8.741400 694.000000 -157.010800 -8.741300 698.800000 -157.010900 -8.741200 698.800000 -157.011000 -8.741100 699.200000 -157.011100 -8.741100 701.200000 -157.011200 -8.741000 696.800000 -157.011300 -8.741100 701.600000 -157.011400 -8.741100 699.200000 -157.011500 -8.741300 700.000000 -157.011500 -8.741500 707.600000 -157.011500 -8.741700 720.800000 -157.011500 -8.741700 708.000000 -157.011400 -8.741700 708.800000 -157.011400 -8.741800 710.400000 -157.011400 -8.741900 700.800000 -157.011300 -8.742000 718.800000 -157.011200 -8.741900 714.800000 -157.011100 -8.741700 713.600000 -157.011000 -8.741500 725.200000 -157.011200 -8.741300 713.200000 -157.011400 -8.741100 699.200000 -157.011500 -8.741000 722.400000 -157.011400 -8.740900 693.200000 -157.011200 -8.740900 693.200000 -157.011200 -8.740900 694.400000 -157.011100 -8.740900 693.600000 -157.011000 -8.741000 694.400000 -157.010900 -8.741100 696.400000 -157.010900 -8.741200 699.200000 -157.010900 -8.741300 699.600000 -157.010900 -8.741500 701.200000 -157.010900 -8.741500 698.800000 -157.010800 -8.741600 699.600000 -157.010800 -8.741600 697.600000 -157.010800 -8.741700 702.400000 -157.010700 -8.741800 695.200000 -157.010800 -8.741900 695.200000 -157.010700 -8.741900 693.600000 -157.010600 -8.741900 694.800000 -157.010500 -8.741900 693.600000 -157.010500 -8.741900 693.200000 -157.010500 -8.742000 693.600000 -157.010500 -8.742100 692.000000 -157.010500 -8.742200 692.000000 -157.010500 -8.742300 680.800000 -157.010400 -8.742400 689.600000 -157.010400 -8.742600 675.600000 -157.010400 -8.742600 675.600000 -157.010300 -8.742500 676.400000 -157.010400 -8.742100 682.400000 -157.010800 -8.741900 685.200000 -157.011100 -8.742000 680.400000 -157.011500 -8.742300 674.800000 -157.011900 -8.742500 661.600000 -157.012200 -8.742700 652.400000 -157.012300 -8.742900 647.200000 -157.012400 -8.743000 644.000000 -157.012400 -8.743000 644.000000 -157.012400 -8.742900 645.200000 -157.012300 -8.743100 643.600000 -157.012200 -8.743500 642.400000 -157.012200 -8.743600 640.400000 -157.012400 -8.743700 639.600000 -157.012600 -8.743600 638.400000 -157.012600 -8.743500 638.400000 -157.012500 -8.743400 639.200000 -157.012300 -8.743400 641.600000 -157.012300 -8.743300 642.400000 -157.012400 -8.743100 644.000000 -157.012400 -8.743000 646.400000 -157.012300 -8.743000 647.600000 -157.012300 -8.743100 649.200000 -157.012200 -8.743200 648.000000 -157.012100 -8.742800 654.000000 -157.011800 -8.742300 714.800000 -157.011500 -8.741800 710.400000 -157.011200 -8.741300 700.800000 -157.010900 -8.741000 696.400000 -157.010600 -8.740700 694.400000 -157.010400 -8.740500 693.600000 -157.010200 -8.740300 694.000000 -157.009900 -8.740100 696.800000 -157.009700 -8.739800 698.400000 -157.009500 -8.739700 698.800000 -157.009300 -8.739600 699.200000 -157.009200 -8.739500 700.800000 -157.009100 -8.739500 700.000000 -157.009100 -8.739600 700.400000 -157.009100 -8.739600 700.000000 -157.009000 -8.739600 700.000000 -157.008900 -8.739600 700.400000 -157.008900 -8.739600 701.600000 -157.008800 -8.739700 700.800000 -157.008900 -8.739800 700.000000 -157.009000 -8.740000 699.200000 -157.008900 -8.740000 700.400000 -157.008700 -8.739800 701.200000 -157.008600 -8.739700 702.800000 -157.008500 -8.739700 713.200000 -157.008400 -8.739700 704.800000 -157.008400 -8.739700 710.800000 -157.008300 -8.739700 706.800000 -157.008100 -8.739500 731.600000 -157.007800 -8.739200 778.400000 -157.007600 -8.739000 766.800000 -157.007400 -8.738900 761.600000 -157.007200 -8.738700 753.200000 -157.007000 -8.738400 736.400000 -157.006800 -8.738200 729.200000 -157.006600 -8.738100 709.200000 -157.006500 -8.738100 706.800000 -157.006400 -8.738000 704.000000 -157.006300 -8.738000 701.600000 -157.006300 -8.738000 700.000000 -157.006200 -8.738100 700.400000 -157.006200 -8.738100 700.800000 -157.006100 -8.738200 697.600000 -157.006100 -8.738200 699.600000 -157.006000 -8.738300 697.200000 -157.005800 -8.738300 697.200000 -157.005700 -8.738400 697.200000 -157.005500 -8.738400 694.000000 -157.005400 -8.738300 685.200000 -157.005600 -8.738300 691.600000 -157.006000 -8.738300 734.000000 -157.006600 -8.738500 755.600000 -157.007200 -8.738700 746.800000 -157.007800 -8.739100 720.800000 -157.008500 -8.739500 704.800000 -157.009100 -8.739900 698.800000 -157.009700 -8.740200 698.000000 -157.010100 -8.740400 694.000000 -157.010200 -8.740500 693.600000 -157.010100 -8.740700 693.200000 -157.010400 -8.741200 695.600000 -157.010900 -8.741400 700.000000 -157.011300 -8.741700 689.600000 -157.011400 -8.741900 681.600000 -157.011400 -8.741900 682.800000 -157.011400 -8.741800 699.200000 -157.011500 -8.741800 710.400000 -157.011700 -8.741800 711.600000 -157.011800 -8.741800 714.400000 -157.012000 -8.741900 717.600000 -157.012100 -8.742000 718.400000 -157.012100 -8.742100 721.600000 -157.012100 -8.742300 725.200000 -157.012000 -8.742200 723.200000 -157.011900 -8.742200 722.400000 -157.011800 -8.742300 703.200000 -157.011600 -8.742000 716.400000 -157.011400 -8.741800 709.600000 -157.011200 -8.741600 705.200000 -157.011000 -8.741500 701.600000 -157.010800 -8.741200 698.000000 -157.010500 -8.740900 695.600000 -157.010400 -8.740700 694.400000 -157.010200 -8.740400 694.400000 -157.010000 -8.740300 694.800000 -157.009900 -8.740300 697.200000 -157.009700 -8.740300 698.400000 -157.009600 -8.740300 697.200000 -157.009500 -8.740000 697.200000 -157.009500 -8.739900 698.800000 -157.009300 -8.739900 697.600000 -157.009200 -8.739900 698.000000 -157.009000 -8.739900 698.800000 -157.008800 -8.740000 699.200000 -157.008700 -8.740000 700.400000 -157.008600 -8.740000 700.400000 -157.008600 -8.739800 702.000000 -157.008500 -8.739300 707.200000 -157.008200 -8.738800 722.000000 -157.008000 -8.738200 738.400000 -157.007800 -8.737800 746.400000 -157.007600 -8.737300 752.800000 -157.007400 -8.736900 748.000000 -157.007200 -8.736500 716.800000 -157.007000 -8.736100 706.000000 -157.006800 -8.735700 699.200000 -157.006600 -8.735300 693.200000 -157.006400 -8.734900 692.000000 -157.006200 -8.734800 685.200000 -157.006100 -8.734800 688.800000 -157.006100 -8.734900 690.800000 -157.006000 -8.734900 684.000000 -157.005900 -8.735000 679.600000 -157.005900 -8.735100 680.400000 -157.005900 -8.735200 663.600000 -157.005800 -8.735300 662.800000 -157.005700 -8.735300 661.200000 -157.005600 -8.735300 662.400000 -157.005500 -8.735300 664.800000 -157.005400 -8.735200 659.600000 -157.005300 -8.735200 660.400000 -157.005200 -8.735100 659.600000 -157.005100 -8.735100 664.800000 -157.005000 -8.735000 669.200000 -157.004900 -8.735000 666.400000 -157.004800 -8.734900 679.600000 -157.004700 -8.734700 683.600000 -157.004600 -8.734700 676.800000 -157.004500 -8.734700 679.200000 -157.004400 -8.734700 670.800000 -157.004200 -8.734500 690.400000 -157.004100 -8.734400 694.000000 -157.003900 -8.734400 696.400000 -157.003800 -8.734300 700.800000 -157.003700 -8.734200 705.600000 -157.003500 -8.734200 709.600000 -157.003400 -8.734100 713.200000 -157.003200 -8.733900 720.400000 -157.003100 -8.733900 744.800000 -157.002900 -8.733800 742.400000 -157.002800 -8.733800 736.400000 -157.002700 -8.733700 752.800000 -157.002600 -8.733700 764.000000 -157.002400 -8.733700 762.800000 -157.002300 -8.733700 772.400000 -157.002200 -8.733700 772.800000 -157.002000 -8.733800 779.600000 -157.001900 -8.733900 777.600000 -157.001800 -8.734000 775.200000 -157.001700 -8.734000 775.600000 -157.001600 -8.734100 777.600000 -157.001600 -8.734200 773.600000 -157.001500 -8.734300 774.400000 -157.001400 -8.734200 778.800000 -157.000900 -8.733900 808.400000 -157.000100 -8.733800 837.600000 -156.999300 -8.733800 847.600000 -156.998400 -8.733800 860.000000 -156.997600 -8.733800 902.400000 -156.996800 -8.733800 913.600000 -156.996100 -8.733800 957.200000 -156.995300 -8.733800 976.000000 -156.994600 -8.733800 998.000000 -156.993800 -8.733800 1004.800000 -156.993100 -8.733800 1043.600000 -156.992400 -8.733800 1068.800000 -156.991600 -8.733800 1074.000000 -156.991000 -8.733800 1080.400000 -156.990700 -8.733900 1084.400000 -156.990500 -8.733900 1087.600000 -156.990100 -8.733900 1094.000000 -156.989700 -8.733800 1118.400000 -156.989400 -8.733800 1135.600000 -156.989100 -8.733800 1146.000000 -156.988900 -8.733800 1153.600000 -156.988800 -8.733700 1139.600000 -156.988700 -8.733400 1130.000000 -156.988600 -8.733200 1146.800000 -156.988600 -8.733100 1135.600000 -156.988700 -8.733000 1134.000000 -156.988800 -8.732900 1130.800000 -156.988900 -8.732900 1130.800000 -156.989100 -8.732900 1126.000000 -156.989200 -8.732800 1121.200000 -156.989400 -8.732800 1116.800000 -156.989700 -8.732800 1110.000000 -156.989900 -8.732800 1104.000000 -156.990100 -8.732800 1099.600000 -156.990300 -8.732900 1094.400000 -156.990400 -8.732800 1092.400000 -156.990400 -8.732700 1094.000000 -156.990400 -8.732600 1093.600000 -156.990400 -8.732500 1094.400000 -156.990500 -8.732400 1095.600000 -156.990600 -8.732600 1092.000000 -156.990600 -8.732900 1088.800000 -156.990700 -8.733100 1086.800000 -156.990700 -8.733100 1085.600000 -156.990800 -8.733000 1084.800000 -156.990800 -8.732900 1084.400000 -156.990900 -8.733000 1082.400000 -156.991000 -8.732900 1081.600000 -156.991000 -8.732800 1081.600000 -156.991200 -8.732800 1080.800000 -156.991700 -8.732900 1064.800000 -156.992300 -8.733000 1045.600000 -156.992800 -8.733100 1064.800000 -156.993400 -8.733000 1012.800000 -156.993900 -8.732900 999.600000 -156.994400 -8.732900 982.800000 -156.994800 -8.732800 982.800000 -156.995300 -8.732700 958.400000 -156.995700 -8.732700 948.000000 -156.996000 -8.732600 935.600000 -156.996300 -8.732600 929.200000 -156.996400 -8.732500 928.400000 -156.996400 -8.732300 930.800000 -156.996300 -8.732200 931.200000 -156.996400 -8.732100 932.000000 -156.996400 -8.732000 951.600000 -156.996500 -8.732000 948.000000 -156.996400 -8.731900 953.600000 -156.996400 -8.731800 940.000000 -156.996300 -8.731600 956.400000 -156.996300 -8.731600 943.200000 -156.996300 -8.731500 945.200000 -156.996300 -8.731400 956.800000 -156.996300 -8.731300 947.600000 -156.996300 -8.731200 959.200000 -156.996300 -8.731100 960.400000 -156.996300 -8.731000 959.600000 -156.996300 -8.730900 962.000000 -156.996300 -8.730800 962.400000 -156.996400 -8.730800 962.000000 -156.996500 -8.730700 960.000000 -156.996500 -8.730600 959.600000 -156.996500 -8.730500 961.600000 -156.996600 -8.730400 963.600000 -156.996600 -8.730300 964.000000 -156.996700 -8.730200 963.200000 -156.996800 -8.730200 962.800000 -156.996900 -8.730100 962.800000 -156.997100 -8.730000 960.800000 -156.997100 -8.729900 962.400000 -156.997000 -8.729900 964.400000 -156.997000 -8.729800 965.200000 -156.997000 -8.729700 967.600000 -156.997100 -8.729700 966.000000 -156.997300 -8.729600 964.800000 -156.997500 -8.729500 956.800000 -156.997700 -8.729500 954.400000 -156.997800 -8.729400 952.800000 -156.998200 -8.729400 949.200000 -156.998300 -8.729300 941.600000 -156.998400 -8.729200 944.000000 -156.998500 -8.729200 947.200000 -156.998600 -8.729100 946.000000 -156.998700 -8.729000 942.400000 -156.998800 -8.728900 940.800000 -156.998900 -8.728800 944.000000 -156.999100 -8.728800 944.400000 -156.999200 -8.728700 952.000000 -156.999300 -8.728600 951.600000 -156.999500 -8.728600 950.800000 -156.999600 -8.728500 941.200000 -156.999800 -8.728400 939.200000 -157.000000 -8.728400 938.400000 -157.000200 -8.728300 936.000000 -157.000500 -8.728300 933.600000 -157.000500 -8.728200 935.200000 -157.000500 -8.728100 938.000000 -157.000500 -8.728000 940.000000 -157.000400 -8.728000 942.400000 -157.000300 -8.728000 945.200000 -157.000200 -8.727900 949.600000 -157.000100 -8.727900 952.000000 -157.000000 -8.727800 957.200000 -156.999800 -8.727800 959.600000 -156.999700 -8.727700 963.200000 -156.999600 -8.727600 968.000000 -156.999600 -8.727600 968.800000 -156.999800 -8.727500 966.400000 -157.000200 -8.727600 958.000000 -157.000800 -8.728000 942.400000 -157.001500 -8.728500 915.200000 -157.002600 -8.729300 876.000000 -157.003800 -8.730100 850.400000 -157.005300 -8.731300 774.800000 -157.006900 -8.732700 725.600000 -157.008300 -8.733900 780.000000 -157.009300 -8.734700 774.000000 -157.010000 -8.735400 758.800000 -157.010700 -8.736000 715.600000 -157.011300 -8.736600 705.200000 -157.011900 -8.737100 692.800000 -157.012400 -8.737500 687.200000 -157.013000 -8.738000 689.600000 -157.013300 -8.738500 694.400000 -157.013200 -8.739000 696.400000 -157.012700 -8.739000 688.000000 -157.012000 -8.738700 681.200000 -157.011200 -8.738300 679.600000 -157.010500 -8.738000 696.400000 -157.009800 -8.737700 716.000000 -157.009300 -8.737400 725.600000 -157.008800 -8.737200 738.800000 -157.008200 -8.736900 753.600000 -157.007600 -8.736800 774.800000 -157.007000 -8.736600 708.800000 -157.006400 -8.736400 690.000000 -157.005700 -8.736200 668.400000 -157.005000 -8.735900 662.800000 -157.004800 -8.735600 658.000000 -157.005000 -8.735300 658.000000 -157.005300 -8.735100 660.000000 -157.005400 -8.735100 660.400000 -157.005400 -8.735000 664.800000 -157.005400 -8.735000 661.600000 -157.005400 -8.734900 662.000000 -157.005300 -8.734800 662.000000 -157.005300 -8.734800 663.200000 -157.005700 -8.735000 664.800000 -157.006000 -8.735400 663.600000 -157.006200 -8.735800 682.000000 -157.006400 -8.736000 695.600000 -157.006600 -8.736100 765.200000 -157.006700 -8.736100 722.400000 -157.006800 -8.736100 772.800000 -157.006900 -8.736000 783.600000 -157.006900 -8.736000 775.200000 -157.007000 -8.736000 792.400000 -157.007200 -8.736000 779.600000 -157.007200 -8.735900 788.000000 -157.007100 -8.735700 811.600000 -157.007000 -8.735600 796.000000 -157.007000 -8.735500 780.000000 -157.007300 -8.735800 784.400000 -157.007400 -8.736100 780.000000 -157.007600 -8.736200 786.800000 -157.007700 -8.736200 788.400000 -157.007800 -8.736200 765.600000 -157.007900 -8.736200 764.800000 -157.008000 -8.736200 762.800000 -157.008100 -8.736200 760.800000 -157.008200 -8.736200 759.200000 -157.008400 -8.736200 759.200000 -157.008500 -8.736200 756.000000 -157.008600 -8.736100 757.200000 -157.008600 -8.736100 755.600000 -157.008700 -8.736100 755.600000 -157.008900 -8.736200 747.600000 -157.009300 -8.736300 740.400000 -157.009700 -8.736300 728.800000 -157.009800 -8.736300 724.800000 -157.010000 -8.736200 722.000000 -157.010400 -8.736100 718.000000 -157.010700 -8.736100 714.400000 -157.011000 -8.736000 712.800000 -157.011200 -8.735900 710.000000 -157.011700 -8.735900 708.400000 -157.012100 -8.735800 703.600000 -157.012400 -8.735800 700.800000 -157.012600 -8.735800 692.400000 -157.012900 -8.735800 686.000000 -157.013200 -8.735800 676.800000 -157.013400 -8.735900 671.600000 -157.013600 -8.735800 670.400000 -157.013800 -8.735800 676.000000 -157.013800 -8.735700 668.000000 -157.013900 -8.735600 675.600000 -157.013800 -8.735500 658.400000 -157.013800 -8.735400 655.600000 -157.013800 -8.735200 657.600000 -157.013800 -8.735100 652.800000 -157.013800 -8.735000 650.000000 -157.013800 -8.734900 648.000000 -157.013800 -8.734700 646.800000 -157.013800 -8.734500 644.000000 -157.013800 -8.734400 642.800000 -157.013800 -8.734200 641.600000 -157.013800 -8.734000 640.800000 -157.013800 -8.733900 640.400000 -157.013800 -8.733700 639.600000 -157.013700 -8.733500 640.400000 -157.013700 -8.733300 642.400000 -157.013700 -8.733100 641.200000 -157.013700 -8.733000 642.400000 -157.013700 -8.732800 643.600000 -157.013700 -8.732700 646.400000 -157.013800 -8.732500 646.800000 -157.013900 -8.732500 644.800000 -157.014100 -8.732500 643.600000 -157.014300 -8.732400 642.800000 -157.014500 -8.732400 641.600000 -157.014600 -8.732400 640.800000 -157.014800 -8.732300 642.000000 -157.014900 -8.732100 644.000000 -157.015000 -8.732000 647.200000 -157.015000 -8.731900 649.200000 -157.015100 -8.731800 653.200000 -157.015200 -8.731600 656.000000 -157.015200 -8.731500 660.000000 -157.015300 -8.731400 662.800000 -157.015300 -8.731200 667.200000 -157.015400 -8.731100 670.400000 -157.015400 -8.731000 674.800000 -157.015500 -8.730900 678.800000 -157.015500 -8.730700 682.400000 -157.015500 -8.730600 686.800000 -157.015600 -8.730400 692.400000 -157.015600 -8.730300 707.200000 -157.015600 -8.730200 701.200000 -157.015600 -8.730000 710.400000 -157.015600 -8.729900 709.200000 -157.015500 -8.729800 726.400000 -157.015500 -8.729600 719.200000 -157.015500 -8.729500 745.200000 -157.015500 -8.729400 740.400000 -157.015500 -8.729300 739.600000 -157.015500 -8.729200 740.000000 -157.015500 -8.729100 752.000000 -157.015400 -8.729000 761.600000 -157.015400 -8.728800 762.400000 -157.015300 -8.728700 775.200000 -157.015200 -8.728500 783.600000 -157.015500 -8.728600 781.200000 -157.016100 -8.729400 750.000000 -157.016900 -8.730700 725.600000 -157.017800 -8.732200 732.000000 -157.018700 -8.733600 754.400000 -157.019500 -8.735000 764.000000 -157.020200 -8.736200 749.600000 -157.021000 -8.737500 746.000000 -157.021700 -8.738700 732.000000 -157.022500 -8.740000 760.400000 -157.023300 -8.741200 774.800000 -157.024200 -8.742200 828.000000 -157.025000 -8.743200 891.200000 -157.025800 -8.744100 932.000000 -157.026500 -8.744800 891.200000 -157.027300 -8.744900 856.000000 -157.028200 -8.744900 838.000000 -157.028900 -8.744900 828.800000 -157.029600 -8.744800 828.800000 -157.030000 -8.744900 820.400000 -157.030400 -8.744900 814.400000 -157.030700 -8.744800 810.800000 -157.031000 -8.744800 808.800000 -157.031400 -8.744800 827.600000 -157.031900 -8.744600 850.400000 -157.032000 -8.744200 832.800000 -157.031700 -8.743900 843.200000 -157.031200 -8.744000 851.600000 -157.030700 -8.744200 847.600000 -157.030200 -8.744700 825.600000 -157.029800 -8.745200 818.800000 -157.029500 -8.745800 802.000000 -157.029300 -8.746400 782.800000 -157.029200 -8.746900 783.200000 -157.029200 -8.747300 779.200000 -157.029200 -8.747500 778.000000 -157.029200 -8.747500 780.400000 -157.029200 -8.747400 779.200000 -157.029200 -8.747200 778.400000 -157.029200 -8.747000 779.600000 -157.029300 -8.747300 778.000000 -157.029400 -8.747700 775.200000 -157.029500 -8.747900 775.600000 -157.029500 -8.748000 781.200000 -157.029400 -8.748000 778.400000 -157.029400 -8.748200 781.600000 -157.029400 -8.748200 776.400000 -157.029400 -8.748200 776.400000 -157.029300 -8.748600 774.400000 -157.029200 -8.749000 776.000000 -157.029200 -8.749300 771.200000 -157.029100 -8.749500 773.200000 -157.029000 -8.749700 773.200000 -157.028900 -8.749800 772.000000 -157.028800 -8.749800 773.200000 -157.028800 -8.749900 776.000000 -157.028700 -8.750000 774.800000 -157.028700 -8.750000 776.000000 -157.028700 -8.750000 773.600000 -157.028800 -8.749900 772.400000 -157.029000 -8.749900 772.800000 -157.029100 -8.749900 769.600000 -157.029200 -8.750000 768.400000 -157.029300 -8.749900 768.400000 -157.029300 -8.749900 772.400000 -157.029300 -8.749900 768.400000 -157.029100 -8.749900 768.800000 -157.029000 -8.749900 774.800000 -157.029000 -8.750000 774.800000 -157.028900 -8.750100 771.600000 -157.028900 -8.750600 795.600000 -157.028900 -8.751200 808.800000 -157.028800 -8.751700 828.400000 -157.028700 -8.752100 840.400000 -157.028600 -8.752400 846.000000 -157.028500 -8.752800 853.200000 -157.028400 -8.753100 866.800000 -157.028300 -8.753400 867.200000 -157.028100 -8.753500 869.600000 -157.028100 -8.753500 868.800000 -157.027900 -8.753900 897.600000 -157.027800 -8.754200 915.600000 -157.027800 -8.754300 1122.400000 -157.027700 -8.754200 921.600000 -157.027700 -8.754000 903.200000 -157.027600 -8.754100 919.200000 -157.027500 -8.754600 967.600000 -157.027300 -8.754800 948.400000 -157.027200 -8.755000 998.400000 -157.027100 -8.755300 1024.800000 -157.027000 -8.755800 1028.000000 -157.027000 -8.756100 1054.000000 -157.027000 -8.756100 1048.800000 -157.027000 -8.756000 1063.200000 -157.026900 -8.756000 1074.800000 -157.026900 -8.756100 1058.800000 -157.026800 -8.756000 1063.600000 -157.026800 -8.756100 1052.400000 -157.026700 -8.756300 1066.000000 -157.026700 -8.756300 1086.800000 -157.026600 -8.756300 1070.800000 -157.026500 -8.756300 1086.800000 -157.026500 -8.756200 1071.600000 -157.026400 -8.756300 1084.400000 -157.026400 -8.756500 1087.600000 -157.026300 -8.756600 1091.200000 -157.026300 -8.756600 1088.400000 -157.026200 -8.756500 1086.800000 -157.026200 -8.756500 1105.600000 -157.026100 -8.756600 1097.600000 -157.026100 -8.756700 1114.000000 -157.026000 -8.756800 1114.800000 -157.026000 -8.756900 1114.000000 -157.025900 -8.757000 1117.600000 -157.025900 -8.757000 1125.200000 -157.025800 -8.757000 1134.000000 -157.025700 -8.757100 1129.600000 -157.025600 -8.757200 1121.600000 -157.025500 -8.757300 1160.400000 -157.025500 -8.757300 1142.000000 -157.025400 -8.757400 1144.400000 -157.025300 -8.757400 1155.600000 -157.025300 -8.757400 1172.000000 -157.025100 -8.757600 1153.200000 -157.024700 -8.757900 1158.400000 -157.024200 -8.757900 1136.400000 -157.023600 -8.757500 1116.000000 -157.022800 -8.756800 1063.600000 -157.021700 -8.756200 1040.400000 -157.020600 -8.755500 1069.200000 -157.019300 -8.754600 1024.400000 -157.018000 -8.753700 950.400000 -157.016500 -8.752800 898.000000 -157.015100 -8.751900 859.600000 -157.013700 -8.751000 781.600000 -157.012200 -8.750000 733.200000 -157.010800 -8.749100 698.800000 -157.009400 -8.748200 704.800000 -157.007900 -8.747200 721.200000 -157.006500 -8.746300 743.200000 -157.005100 -8.745300 770.800000 -157.003600 -8.744400 755.600000 -157.002200 -8.743400 721.600000 -157.000700 -8.742500 753.600000 -156.999300 -8.741600 821.600000 -156.997800 -8.740600 864.800000 -156.996400 -8.739700 899.600000 -156.994900 -8.738700 933.200000 -156.993400 -8.737800 989.600000 -156.992000 -8.736900 1054.000000 -156.990500 -8.736000 1071.600000 -156.989100 -8.735000 1103.600000 -156.987600 -8.734100 1194.400000 -156.986100 -8.733200 1256.800000 -156.984700 -8.732200 1316.800000 -156.983200 -8.731300 1369.200000 -156.981800 -8.730300 1444.800000 -156.980300 -8.729400 1495.600000 -156.978800 -8.728400 1549.600000 -156.977400 -8.727400 1578.400000 -156.975900 -8.726500 1632.400000 -156.974600 -8.725700 1691.600000 -156.973600 -8.725100 1724.000000 -156.972900 -8.724500 1736.000000 -156.972200 -8.724200 1737.600000 -156.971700 -8.723800 1740.800000 -156.971200 -8.723500 1754.000000 -156.970900 -8.723300 1752.800000 -156.970600 -8.723200 1750.400000 -156.970500 -8.723200 1752.800000 -156.970400 -8.723100 1754.000000 -156.970400 -8.722900 1752.800000 -156.970300 -8.722700 1752.800000 -156.970300 -8.722500 1752.800000 -156.970300 -8.722700 1749.600000 -156.970500 -8.723100 1751.600000 -156.970800 -8.723300 1747.200000 -156.970900 -8.723400 1746.800000 -156.970900 -8.723400 1746.800000 -156.971000 -8.723300 1746.800000 -156.971200 -8.723400 1744.400000 -156.971300 -8.723400 1742.800000 -156.971200 -8.723300 1754.400000 -156.971200 -8.723300 1745.200000 -156.971500 -8.723500 1742.400000 -156.971700 -8.723600 1740.800000 -156.971700 -8.723600 1740.400000 -156.971600 -8.723500 1740.400000 -156.971700 -8.723600 1740.400000 -156.971800 -8.723700 1739.600000 -156.971900 -8.723700 1739.600000 -156.971800 -8.723700 1739.600000 -156.971700 -8.723600 1740.000000 -156.971600 -8.723500 1741.200000 -156.971700 -8.723600 1740.400000 -156.971700 -8.723600 1740.800000 -156.971700 -8.723700 1740.000000 -156.971900 -8.723700 1739.200000 -156.971900 -8.723700 1738.800000 -156.972100 -8.723800 1738.400000 -156.972500 -8.723600 1730.000000 -156.973000 -8.723500 1735.600000 -156.973400 -8.723400 1735.200000 -156.973800 -8.723200 1736.000000 -156.974300 -8.723000 1723.200000 -156.974900 -8.722800 1736.800000 -156.975500 -8.722700 1736.400000 -156.975900 -8.722500 1735.200000 -156.976400 -8.722400 1736.000000 -156.976800 -8.722200 1735.600000 -156.977300 -8.722100 1636.400000 -156.977600 -8.721900 1631.600000 -156.977800 -8.721800 1630.800000 -156.978000 -8.721800 1644.400000 -156.978100 -8.721700 1624.800000 -156.978100 -8.721500 1626.800000 -156.978100 -8.721400 1654.400000 -156.978000 -8.721300 1636.000000 -156.977800 -8.721100 1637.600000 -156.977600 -8.721000 1652.800000 -156.977700 -8.720900 1626.400000 -156.977800 -8.720900 1655.600000 -156.977800 -8.720800 1616.400000 -156.977800 -8.720700 1609.200000 -156.977600 -8.720600 1626.800000 -156.977400 -8.720400 1602.800000 -156.977100 -8.720300 1615.200000 -156.976800 -8.720100 1576.400000 -156.976500 -8.719900 1561.600000 -156.976300 -8.719800 1590.400000 -156.976300 -8.719800 1578.000000 -156.976400 -8.719700 1559.200000 -156.976400 -8.719600 1560.800000 -156.976300 -8.719500 1561.200000 -156.976300 -8.719400 1570.400000 -156.976300 -8.719300 1521.200000 -156.976200 -8.719200 1534.400000 -156.976300 -8.719200 1597.200000 -156.976600 -8.719100 1490.400000 -156.976600 -8.719100 1563.600000 -156.976800 -8.719100 1512.000000 -156.976900 -8.719000 1530.800000 -156.976800 -8.719000 1508.800000 -156.976900 -8.718900 1513.600000 -156.976900 -8.718900 1495.600000 -156.976900 -8.718800 1546.000000 -156.977100 -8.718800 1576.400000 -156.977400 -8.718800 1519.600000 -156.977500 -8.718900 1516.400000 -156.977600 -8.718900 1583.200000 -156.977700 -8.719000 1517.200000 -156.977800 -8.719000 1526.800000 -156.977800 -8.719000 1508.000000 -156.977900 -8.719000 1497.600000 -156.978100 -8.719000 1715.200000 -156.978100 -8.718900 1489.200000 -156.978000 -8.718900 1650.800000 -156.978000 -8.718800 1721.600000 -156.977900 -8.718800 1576.000000 -156.978100 -8.718700 1553.600000 -156.978200 -8.718700 1504.400000 -156.978300 -8.718700 1542.400000 -156.978400 -8.718700 1716.000000 -156.978500 -8.718700 1527.600000 -156.978600 -8.718600 1712.800000 -156.978800 -8.718600 1550.800000 -156.979000 -8.718600 1623.200000 -156.979100 -8.718600 1704.000000 -156.979200 -8.718600 1687.600000 -156.979300 -8.718600 1540.000000 -156.979200 -8.718600 1596.000000 -156.979100 -8.718500 1582.400000 -156.978800 -8.718400 1508.000000 -156.978600 -8.718400 1502.800000 -156.978300 -8.718300 1643.600000 -156.978000 -8.718200 1489.200000 -156.977700 -8.718100 1498.800000 -156.977400 -8.718000 1456.400000 -156.977000 -8.718000 1448.400000 -156.976700 -8.717900 1448.400000 -156.976500 -8.717800 1453.200000 -156.976300 -8.717700 1454.400000 -156.976100 -8.717700 1455.200000 -156.976100 -8.718000 1476.800000 -156.976600 -8.718800 1492.000000 -156.978100 -8.719700 1585.600000 -156.979800 -8.720900 1682.400000 -156.981800 -8.722200 1560.800000 -156.984100 -8.723700 1481.600000 -156.986600 -8.725300 1370.400000 -156.989200 -8.726900 1250.800000 -156.991900 -8.728500 1126.800000 -156.994600 -8.730200 1065.600000 -156.997200 -8.731800 945.600000 -156.999900 -8.733400 827.200000 -157.002600 -8.735000 732.800000 -157.005300 -8.736600 674.800000 -157.008000 -8.738200 738.800000 -157.010700 -8.739800 688.800000 -157.013400 -8.741400 701.200000 -157.016100 -8.743100 668.400000 -157.018800 -8.744700 746.400000 -157.021500 -8.746400 889.600000 -157.024300 -8.748000 925.200000 -157.027000 -8.749700 836.000000 -157.029700 -8.751400 775.600000 -157.032500 -8.753000 785.200000 -157.035200 -8.754600 810.000000 -157.038000 -8.756200 885.200000 -157.040700 -8.757800 858.400000 -157.043500 -8.759300 801.600000 -157.046200 -8.760900 840.000000 -157.048900 -8.762500 891.200000 -157.051700 -8.764100 995.200000 -157.054500 -8.765700 1112.800000 -157.057200 -8.767300 1217.200000 -157.060000 -8.768900 1334.800000 -157.062800 -8.770500 1391.600000 -157.065500 -8.772100 1455.600000 -157.068300 -8.773700 1484.400000 -157.071100 -8.775300 1564.800000 -157.073900 -8.776900 1788.400000 -157.076700 -8.778500 2016.000000 -157.079400 -8.780100 2252.000000 -157.081800 -8.781300 2268.900000 -157.083900 -8.781200 2334.800000 -157.085600 -8.781400 2404.000000 -157.087200 -8.781500 2441.200000 -157.088900 -8.781700 2568.000000 -157.090100 -8.783100 2591.200000 -157.091400 -8.784500 2603.200000 -157.092500 -8.785800 2633.200000 -157.093500 -8.786800 2654.000000 -157.094200 -8.787700 2670.000000 -157.094700 -8.788600 2679.200000 -157.095000 -8.789300 2685.200000 -157.095200 -8.789600 2688.000000 -157.095200 -8.789700 2688.400000 -157.095000 -8.789800 2688.800000 -157.094800 -8.789900 2687.200000 -157.094800 -8.789800 2688.000000 -157.095200 -8.789700 2688.000000 -157.095300 -8.789700 2688.800000 -157.095400 -8.789600 2689.600000 -157.095400 -8.789600 2689.200000 -157.095300 -8.789500 2688.800000 -157.095200 -8.789500 2688.000000 -157.095100 -8.789500 2688.400000 -157.095000 -8.789500 2686.400000 -157.094900 -8.789500 2686.400000 -157.094900 -8.789400 2684.800000 -157.094900 -8.789300 2684.800000 -157.094900 -8.789300 2685.600000 -157.095000 -8.789200 2686.000000 -157.095000 -8.789100 2684.400000 -157.095000 -8.789000 2684.400000 -157.095000 -8.788900 2683.200000 -157.095000 -8.788800 2683.200000 -157.095000 -8.788700 2682.400000 -157.095000 -8.788600 2681.600000 -157.095000 -8.788500 2681.600000 -157.094900 -8.788400 2680.800000 -157.094800 -8.788400 2680.400000 -157.094700 -8.788300 2678.800000 -157.094700 -8.788300 2678.400000 -157.094800 -8.788200 2680.800000 -157.094800 -8.788100 2678.400000 -157.094800 -8.788000 2678.000000 -157.094800 -8.787900 2677.600000 -157.094900 -8.787800 2678.000000 -157.095000 -8.787800 2676.800000 -157.095000 -8.787700 2677.200000 -157.095000 -8.787600 2676.800000 -157.095000 -8.787600 2678.400000 -157.095100 -8.787500 2678.000000 -157.095200 -8.787400 2678.000000 -157.095300 -8.787400 2678.400000 -157.095300 -8.787300 2679.200000 -157.095400 -8.787200 2678.800000 -157.095600 -8.787100 2679.600000 -157.095600 -8.787000 2680.400000 -157.095700 -8.787000 2680.000000 -157.095700 -8.786900 2680.000000 -157.095700 -8.786800 2680.000000 -157.095700 -8.786700 2678.800000 -157.095800 -8.786700 2679.600000 -157.095800 -8.786600 2679.600000 -157.095800 -8.786500 2677.200000 -157.095800 -8.786400 2676.400000 -157.095800 -8.786400 2676.000000 -157.095800 -8.786300 2675.600000 -157.095800 -8.786200 2676.800000 -157.095800 -8.786200 2675.200000 -157.095800 -8.786100 2674.800000 -157.095800 -8.786000 2674.000000 -157.095800 -8.785900 2673.200000 -157.095800 -8.785900 2673.600000 -157.095800 -8.785800 2673.200000 -157.095800 -8.785800 2672.800000 -157.095800 -8.785700 2672.800000 -157.095800 -8.785700 2672.000000 -157.095800 -8.785600 2672.000000 -157.095800 -8.785500 2671.600000 -157.095800 -8.785400 2670.400000 -157.095800 -8.785400 2670.000000 -157.095800 -8.785300 2669.600000 -157.095700 -8.785300 2669.200000 -157.095700 -8.785200 2668.000000 -157.095700 -8.785200 2667.600000 -157.095600 -8.785100 2667.200000 -157.095600 -8.785100 2664.800000 -157.095600 -8.785000 2664.800000 -157.095600 -8.785000 2663.600000 -157.095600 -8.784900 2662.400000 -157.095500 -8.784900 2663.200000 -157.095500 -8.784800 2665.600000 -157.095600 -8.784800 2662.800000 -157.095500 -8.784700 2662.400000 -157.095500 -8.784700 2662.400000 -157.095500 -8.784600 2660.000000 -157.095500 -8.784600 2660.000000 -157.095500 -8.784500 2659.600000 -157.095500 -8.784500 2659.200000 -157.095600 -8.784400 2659.600000 -157.095600 -8.784300 2660.800000 -157.095700 -8.784300 2679.200000 -157.095700 -8.784200 2662.000000 -157.095700 -8.784200 2662.000000 -157.095700 -8.784100 2662.000000 -157.095700 -8.784100 2663.200000 -157.095700 -8.784000 2679.600000 -157.095800 -8.784000 2676.400000 -157.095800 -8.783900 2691.200000 -157.095800 -8.783900 2761.600000 -157.095800 -8.783800 2681.200000 -157.095900 -8.783700 2678.800000 -157.096000 -8.783700 2668.000000 -157.096100 -8.783600 2680.800000 -157.096100 -8.783500 2694.400000 -157.096200 -8.783500 2676.800000 -157.096200 -8.783500 2677.200000 -157.096200 -8.783400 2676.800000 -157.096200 -8.783400 2676.400000 -157.096200 -8.783400 2678.400000 -157.096100 -8.783400 2682.000000 -157.096200 -8.783300 2704.800000 -157.096600 -8.783500 2713.600000 -157.097200 -8.784100 2683.600000 -157.098400 -8.785100 2703.200000 -157.100000 -8.786400 2723.200000 -157.101800 -8.787800 2724.800000 -157.103900 -8.789400 2734.800000 -157.106100 -8.791100 2722.000000 -157.108600 -8.792900 2696.400000 -157.111100 -8.794800 2662.800000 -157.113700 -8.796800 2626.800000 -157.116300 -8.798700 2560.800000 -157.118800 -8.800600 2505.600000 -157.121400 -8.802600 2480.800000 -157.124000 -8.804500 2368.000000 -157.126500 -8.806500 2283.600000 -157.129100 -8.808400 2239.200000 -157.131600 -8.810400 2121.200000 -157.134100 -8.812300 2002.400000 -157.136600 -8.814300 1989.200000 -157.139100 -8.816300 1786.800000 -157.141600 -8.818300 1697.200000 -157.144200 -8.820200 1582.800000 -157.146700 -8.822200 1466.400000 -157.149200 -8.824200 1330.400000 -157.151800 -8.826200 1200.000000 -157.154300 -8.828200 1211.200000 -157.156800 -8.830100 1054.400000 -157.159400 -8.832100 978.400000 -157.161900 -8.834100 956.000000 -157.164400 -8.836200 905.200000 -157.167000 -8.838200 816.400000 -157.169400 -8.840100 860.400000 -157.171900 -8.842100 929.200000 -157.174400 -8.844100 1243.200000 -157.176900 -8.846100 1181.600000 -157.179400 -8.848100 1338.400000 -157.181900 -8.850100 1468.000000 -157.184400 -8.852100 1590.400000 -157.186800 -8.854100 1704.400000 -157.189300 -8.856100 1801.600000 -157.191800 -8.858200 1896.800000 -157.194300 -8.860200 2034.400000 -157.196800 -8.862200 2118.800000 -157.199300 -8.864200 2222.400000 -157.201800 -8.866200 2334.000000 -157.204300 -8.868200 2456.800000 -157.206800 -8.870200 2552.800000 -157.209300 -8.872200 2630.400000 -157.211900 -8.874200 2731.600000 -157.214300 -8.876100 2774.000000 -157.216800 -8.878000 3225.600000 -157.218900 -8.879700 2932.800000 -157.220600 -8.881000 2982.800000 -157.221800 -8.882100 3017.200000 -157.222800 -8.882900 3045.200000 -157.223700 -8.883700 3068.400000 -157.224500 -8.884400 3092.800000 -157.225200 -8.884800 3111.200000 -157.225900 -8.885300 3130.000000 -157.226600 -8.885700 3150.400000 -157.227100 -8.886100 3159.200000 -157.227600 -8.886400 3171.600000 -157.228200 -8.886700 3184.800000 -157.228700 -8.887000 3196.000000 -157.229200 -8.887200 3212.800000 -157.229500 -8.887300 3216.000000 -157.229700 -8.887400 3219.600000 -157.229900 -8.887400 3222.400000 -157.230300 -8.887500 3234.800000 -157.230700 -8.887700 3239.200000 -157.231100 -8.887700 3248.000000 -157.231200 -8.887700 3250.800000 -157.231300 -8.887700 3254.800000 -157.231300 -8.887600 3253.200000 -157.231400 -8.887600 3254.000000 -157.231400 -8.887700 3254.400000 -157.231400 -8.887600 3254.000000 -157.231400 -8.887600 3255.200000 -157.231500 -8.887600 3255.200000 -157.231600 -8.887600 3272.800000 -157.231500 -8.887600 3256.400000 -157.231500 -8.887600 3255.600000 -157.231600 -8.887600 3258.800000 -157.231500 -8.887600 3255.600000 -157.231500 -8.887500 3254.800000 -157.231600 -8.887500 3255.600000 -157.231600 -8.887500 3256.000000 -157.231700 -8.887600 3260.000000 -157.231700 -8.887600 3265.200000 -157.231700 -8.887500 3257.600000 -157.231700 -8.887600 3258.800000 -157.231700 -8.887500 3258.800000 -157.231600 -8.887500 3256.800000 -157.231500 -8.887400 3250.400000 -157.231500 -8.887500 3256.400000 -157.231700 -8.887600 3257.600000 -157.231700 -8.887500 3258.400000 -157.231700 -8.887500 3258.800000 -157.231600 -8.887500 3255.200000 -157.231500 -8.887400 3258.400000 -157.231700 -8.887500 3260.000000 -157.231800 -8.887600 3262.400000 -157.231700 -8.887600 3260.400000 -157.231700 -8.887500 3257.600000 -157.231600 -8.887500 3255.200000 -157.231600 -8.887500 3255.200000 -157.231600 -8.887500 3256.800000 -157.231600 -8.887500 3255.600000 -157.231700 -8.887500 3454.400000 -157.231700 -8.887500 3256.800000 -157.231600 -8.887500 3256.800000 -157.231600 -8.887400 3255.200000 -157.231500 -8.887400 3399.200000 -157.231600 -8.887400 3424.400000 -157.231600 -8.887400 3259.600000 -157.231700 -8.887500 3259.200000 -157.231800 -8.887500 3262.400000 -157.232000 -8.887600 3268.400000 -157.232000 -8.887500 3263.600000 -157.232000 -8.887500 3265.200000 -157.231900 -8.887400 3260.400000 -157.231800 -8.887300 3258.400000 -157.231600 -8.887200 3255.600000 -157.231700 -8.887100 3255.600000 -157.231800 -8.887200 3255.600000 -157.231900 -8.887400 3260.000000 -157.232000 -8.887500 3264.800000 -157.232100 -8.887700 3265.200000 -157.232100 -8.887700 3266.800000 -157.232100 -8.887700 3267.200000 -157.232000 -8.887700 3266.000000 -157.231900 -8.887600 3262.400000 -157.231900 -8.887600 3260.800000 -157.231900 -8.887500 3261.200000 -157.231800 -8.887400 3261.200000 -157.231700 -8.887400 3258.800000 -157.231600 -8.887300 3256.400000 -157.231500 -8.887200 3254.000000 -157.231600 -8.887200 3253.200000 -157.231700 -8.887300 3256.800000 -157.231900 -8.887500 3260.400000 -157.232000 -8.887600 3266.800000 -157.232100 -8.887700 3266.400000 -157.232100 -8.887600 3267.200000 -157.232000 -8.887600 3265.200000 -157.231900 -8.887500 3262.800000 -157.231800 -8.887400 3261.600000 -157.231600 -8.887300 3256.400000 -157.231500 -8.887200 3252.800000 -157.231600 -8.887200 3253.600000 -157.231800 -8.887300 3256.400000 -157.231800 -8.887300 3258.800000 -157.231900 -8.887300 3260.000000 -157.232000 -8.887500 3265.200000 -157.232100 -8.887600 3266.000000 -157.232100 -8.887500 3264.800000 -157.232000 -8.887500 3264.000000 -157.232000 -8.887400 3263.200000 -157.231900 -8.887300 3260.400000 -157.231900 -8.887200 3258.800000 -157.232000 -8.887400 3262.400000 -157.232100 -8.887500 3265.200000 -157.232100 -8.887500 3266.000000 -157.232100 -8.887400 3267.200000 -157.232100 -8.887300 3264.000000 -157.232100 -8.887200 3262.800000 -157.232100 -8.887200 3263.600000 -157.232300 -8.887300 3266.400000 -157.232300 -8.887400 3267.600000 -157.232300 -8.887400 3267.600000 -157.232200 -8.887300 3264.000000 -157.232100 -8.887400 3262.800000 -157.232100 -8.887600 3266.400000 -157.232000 -8.887800 3266.400000 -157.231900 -8.887800 3264.000000 -157.231900 -8.887700 3262.400000 -157.231800 -8.887500 3260.800000 -157.231700 -8.887400 3257.600000 -157.231700 -8.887300 3256.800000 -157.231700 -8.887500 3258.400000 -157.231800 -8.887500 3258.800000 -157.231800 -8.887400 3259.200000 -157.231700 -8.887400 3257.200000 -157.231800 -8.887500 3262.400000 -157.231800 -8.887500 3260.800000 -157.231800 -8.887500 3260.400000 -157.231700 -8.887500 3258.800000 -157.231600 -8.887400 3256.000000 -157.231600 -8.887200 3254.000000 -157.231700 -8.887300 3256.800000 -157.231700 -8.887500 3258.800000 -157.231800 -8.887500 3259.200000 -157.231800 -8.887400 3258.400000 -157.231700 -8.887400 3255.600000 -157.231600 -8.887400 3256.000000 -157.231600 -8.887400 3256.400000 -157.231600 -8.887400 3255.600000 -157.231600 -8.887300 3253.600000 -157.231600 -8.887200 3254.000000 -157.231600 -8.887300 3254.400000 -157.231700 -8.887400 3256.400000 -157.231700 -8.887400 3256.800000 -157.231700 -8.887300 3256.800000 -157.231700 -8.887200 3256.800000 -157.231700 -8.887200 3255.200000 -157.231700 -8.887200 3256.400000 -157.231700 -8.887400 3256.800000 -157.231700 -8.887600 3259.200000 -157.231600 -8.888000 3260.000000 -157.231300 -8.888700 3259.600000 -157.230600 -8.888800 3247.600000 -157.229800 -8.888200 3228.400000 -157.228700 -8.887300 3203.200000 -157.227400 -8.886300 3168.800000 -157.226100 -8.885200 3138.000000 -157.224700 -8.884200 3099.200000 -157.223400 -8.883100 3067.600000 -157.222200 -8.882000 3028.800000 -157.221300 -8.881000 2996.000000 -157.220500 -8.880100 2970.000000 -157.219600 -8.879200 2940.800000 -157.218800 -8.878300 2914.800000 -157.218200 -8.877400 2886.800000 -157.217500 -8.876600 2860.800000 -157.216900 -8.875800 2839.200000 -157.216400 -8.875000 2813.200000 -157.215800 -8.874300 2901.600000 -157.215200 -8.873500 2764.800000 -157.214700 -8.872800 2743.200000 -157.214100 -8.872000 2716.000000 -157.213500 -8.871300 2691.600000 -157.213000 -8.870500 2666.400000 -157.212400 -8.869800 2639.600000 -157.211900 -8.869000 2615.600000 -157.211300 -8.868200 2584.400000 -157.210800 -8.867600 2561.200000 -157.210300 -8.867000 2536.400000 -157.209800 -8.866400 2515.200000 -157.209400 -8.865900 2494.800000 -157.208900 -8.865400 2474.400000 -157.208500 -8.864900 2454.400000 -157.208100 -8.864400 2433.600000 -157.207600 -8.863900 2416.400000 -157.207200 -8.863400 2396.000000 -157.206700 -8.862900 2373.600000 -157.206400 -8.862600 2369.600000 -157.206100 -8.862400 2349.600000 -157.205900 -8.862300 2342.800000 -157.205800 -8.862300 2338.000000 -157.205700 -8.862400 2336.000000 -157.205600 -8.862500 2335.600000 -157.205600 -8.862600 2336.800000 -157.205600 -8.862700 2336.400000 -157.205400 -8.862600 2367.600000 -157.205300 -8.862000 2321.200000 -157.205200 -8.861700 2315.600000 -157.205000 -8.861700 2312.000000 -157.204900 -8.861700 2306.400000 -157.204800 -8.861800 2309.200000 -157.204700 -8.861700 2303.200000 -157.204600 -8.861600 2319.200000 -157.204500 -8.861700 2313.600000 -157.204400 -8.861700 2307.200000 -157.204500 -8.861400 2306.400000 -157.204500 -8.861200 2304.800000 -157.204600 -8.861200 2337.200000 -157.204700 -8.861300 2335.200000 -157.204700 -8.861400 2328.800000 -157.204700 -8.861400 2300.800000 -157.204700 -8.861300 2312.800000 -157.204600 -8.860800 2289.200000 -157.204300 -8.860500 2276.800000 -157.203900 -8.860200 2260.000000 -157.203600 -8.860100 2251.600000 -157.203200 -8.860000 2239.200000 -157.202500 -8.859700 2216.000000 -157.202000 -8.859600 2201.200000 -157.201700 -8.859500 2187.200000 -157.201200 -8.859400 2174.000000 -157.200800 -8.859300 2159.200000 -157.200400 -8.859100 2146.000000 -157.200000 -8.858900 2132.400000 -157.199500 -8.858700 2118.800000 -157.199100 -8.858600 2103.200000 -157.198600 -8.858300 2088.000000 -157.198200 -8.858200 2074.800000 -157.197900 -8.858000 2062.800000 -157.197500 -8.857800 2048.400000 -157.197000 -8.857600 2036.000000 -157.196600 -8.857400 2020.400000 -157.196300 -8.857200 2009.200000 -157.195900 -8.857000 1991.600000 -157.195400 -8.856800 1978.800000 -157.195000 -8.856600 1965.200000 -157.194600 -8.856400 1958.400000 -157.194200 -8.856200 1933.200000 -157.193800 -8.856000 1922.000000 -157.193400 -8.855800 1905.200000 -157.193000 -8.855600 1889.600000 -157.192500 -8.855400 1874.400000 -157.192100 -8.855100 1864.800000 -157.191800 -8.854900 1846.400000 -157.191300 -8.854700 1829.600000 -157.190900 -8.854400 1815.600000 -157.190500 -8.854200 1798.800000 -157.190100 -8.854000 1785.600000 -157.189700 -8.853700 1767.200000 -157.189200 -8.853600 1752.000000 -157.188800 -8.853400 1738.800000 -157.188300 -8.853200 1725.200000 -157.187900 -8.853000 1696.000000 -157.187400 -8.852900 1678.800000 -157.187000 -8.852700 1663.200000 -157.186500 -8.852600 1655.200000 -157.186200 -8.852400 1658.800000 -157.186100 -8.852400 1627.200000 -157.186000 -8.852300 1623.200000 -157.185900 -8.852300 1612.800000 -157.185600 -8.852100 1618.000000 -157.185200 -8.851900 1580.400000 -157.184700 -8.851600 1564.800000 -157.184400 -8.851500 1546.800000 -157.184000 -8.851300 1541.600000 -157.183400 -8.851000 1511.600000 -157.183000 -8.850800 1489.600000 -157.182600 -8.850600 1491.600000 -157.182100 -8.850400 1462.400000 -157.181700 -8.850200 1444.000000 -157.181300 -8.850100 1414.400000 -157.180800 -8.849900 1404.000000 -157.180400 -8.849700 1384.800000 -157.180000 -8.849500 1352.800000 -157.179500 -8.849300 1335.600000 -157.179000 -8.848900 1310.000000 -157.178600 -8.848600 1287.600000 -157.178100 -8.848300 1280.000000 -157.177700 -8.848100 1239.600000 -157.177300 -8.847800 1216.400000 -157.176900 -8.847600 1198.400000 -157.176500 -8.847400 1175.600000 -157.176100 -8.847100 1154.400000 -157.175700 -8.846800 1120.400000 -157.175200 -8.846500 1093.600000 -157.174700 -8.846300 1072.400000 -157.174300 -8.846100 1061.200000 -157.173900 -8.845900 1040.000000 -157.173500 -8.845700 1010.800000 -157.173100 -8.845500 976.800000 -157.172700 -8.845300 940.800000 -157.172200 -8.845000 921.600000 -157.171700 -8.844800 900.000000 -157.171200 -8.844500 882.000000 -157.170800 -8.844300 850.800000 -157.170400 -8.844100 831.200000 -157.170000 -8.843900 812.800000 -157.169600 -8.843700 804.000000 -157.169200 -8.843500 774.400000 -157.168700 -8.843300 760.000000 -157.168300 -8.843100 742.000000 -157.167900 -8.842900 722.400000 -157.167500 -8.842700 713.600000 -157.166900 -8.842500 696.400000 -157.166400 -8.842200 664.000000 -157.166000 -8.842000 648.800000 -157.165600 -8.841800 640.800000 -157.165200 -8.841600 634.400000 -157.164700 -8.841400 630.400000 -157.164300 -8.841200 635.600000 -157.163800 -8.840900 641.600000 -157.163400 -8.840700 636.800000 -157.163000 -8.840500 643.200000 -157.162500 -8.840300 649.200000 -157.162100 -8.840200 645.200000 -157.161600 -8.840000 643.600000 -157.161200 -8.839800 648.800000 -157.160700 -8.839600 656.800000 -157.160400 -8.839400 657.600000 -157.160000 -8.839200 642.400000 -157.159500 -8.839000 641.200000 -157.159100 -8.838700 649.600000 -157.158600 -8.838500 663.200000 -157.158200 -8.838300 674.000000 -157.157800 -8.838100 696.000000 -157.157300 -8.837800 698.400000 -157.156800 -8.837600 688.800000 -157.156300 -8.837400 705.200000 -157.155900 -8.837200 732.000000 -157.155400 -8.837000 727.200000 -157.154900 -8.836700 759.200000 -157.154500 -8.836500 736.800000 -157.154000 -8.836300 757.600000 -157.153700 -8.836200 789.200000 -157.153500 -8.836100 794.400000 -157.153200 -8.836000 822.800000 -157.152900 -8.835900 827.600000 -157.152500 -8.835700 843.200000 -157.152100 -8.835500 848.000000 -157.151800 -8.835400 878.800000 -157.151400 -8.835200 882.800000 -157.151000 -8.835000 890.800000 -157.150700 -8.834900 912.000000 -157.150300 -8.834800 926.000000 -157.149900 -8.834600 949.200000 -157.149500 -8.834400 958.800000 -157.149000 -8.834200 1000.800000 -157.148600 -8.834000 1008.800000 -157.148100 -8.833700 1030.800000 -157.147700 -8.833500 1059.600000 -157.147200 -8.833200 1055.200000 -157.146800 -8.833000 1084.400000 -157.146400 -8.832800 1098.000000 -157.145900 -8.832500 1130.800000 -157.145500 -8.832300 1134.400000 -157.145100 -8.832000 1140.000000 -157.144700 -8.831800 1158.400000 -157.144200 -8.831500 1215.600000 -157.143800 -8.831300 1235.600000 -157.143400 -8.831100 1241.200000 -157.143000 -8.830900 1292.400000 -157.142600 -8.830700 1290.800000 -157.142200 -8.830400 1325.600000 -157.141800 -8.830200 1363.200000 -157.141300 -8.830000 1377.200000 -157.140900 -8.829700 1404.800000 -157.140500 -8.829500 1420.000000 -157.140100 -8.829300 1428.800000 -157.139600 -8.829100 1447.600000 -157.139200 -8.828900 1466.000000 -157.138800 -8.828600 1477.200000 -157.138400 -8.828400 1495.200000 -157.138000 -8.828200 1523.600000 -157.137600 -8.828000 1547.600000 -157.137100 -8.827800 1573.600000 -157.136700 -8.827600 1571.200000 -157.136300 -8.827300 1592.400000 -157.135900 -8.827100 1600.400000 -157.135500 -8.826900 1644.400000 -157.135200 -8.826700 1628.400000 -157.134800 -8.826600 1655.200000 -157.134400 -8.826400 1684.800000 -157.134000 -8.826200 1716.000000 -157.133600 -8.826000 1702.400000 -157.133300 -8.825800 1715.600000 -157.132900 -8.825600 1733.200000 -157.132500 -8.825400 1742.800000 -157.132100 -8.825200 1760.800000 -157.131800 -8.825000 1801.600000 -157.131300 -8.824800 1794.400000 -157.130800 -8.824600 1805.600000 -157.130400 -8.824400 1843.200000 -157.129900 -8.824200 1876.000000 -157.129500 -8.824100 1908.800000 -157.129100 -8.823900 1907.600000 -157.128600 -8.823700 1926.000000 -157.128200 -8.823500 1930.000000 -157.127900 -8.823400 1968.000000 -157.127400 -8.823200 1993.600000 -157.127000 -8.823000 2022.000000 -157.126600 -8.822800 2021.200000 -157.126100 -8.822700 2039.200000 -157.125700 -8.822500 2061.600000 -157.125200 -8.822300 2052.800000 -157.124800 -8.822100 2070.800000 -157.124400 -8.822000 2095.600000 -157.124000 -8.821800 2096.800000 -157.123600 -8.821700 2102.800000 -157.123200 -8.821500 2115.200000 -157.122800 -8.821300 2141.600000 -157.122500 -8.821200 2142.400000 -157.122000 -8.821000 2160.400000 -157.121600 -8.820800 2194.000000 -157.121200 -8.820600 2179.200000 -157.120800 -8.820400 2205.200000 -157.120500 -8.820300 2206.000000 -157.120100 -8.820100 2224.400000 -157.119700 -8.820000 2221.600000 -157.119400 -8.819800 2230.800000 -157.119000 -8.819600 2250.400000 -157.118700 -8.819500 2257.600000 -157.118200 -8.819200 2278.400000 -157.117700 -8.819000 2474.800000 -157.117400 -8.818900 2302.000000 -157.117000 -8.818700 2304.000000 -157.116700 -8.818600 2322.000000 -157.116300 -8.818400 2306.800000 -157.116000 -8.818300 2369.200000 -157.115700 -8.818100 2325.200000 -157.115600 -8.818200 2329.200000 -157.115600 -8.818200 2324.000000 -157.115600 -8.818400 2322.400000 -157.115700 -8.818500 2332.400000 -157.115800 -8.818600 2328.000000 -157.115900 -8.818700 2308.000000 -157.115900 -8.818800 2332.800000 -157.116000 -8.819000 2348.000000 -157.116100 -8.819100 2309.600000 -157.116200 -8.819200 2303.600000 -157.116300 -8.819300 2301.600000 -157.116400 -8.819500 2297.200000 -157.116400 -8.819600 2309.200000 -157.116500 -8.819700 2289.600000 -157.116600 -8.819900 2281.200000 -157.116600 -8.819900 2284.800000 -157.116400 -8.819800 2281.600000 -157.116300 -8.819400 2276.400000 -157.116700 -8.818900 2275.600000 -157.117700 -8.818800 2254.400000 -157.119000 -8.818900 2228.400000 -157.120400 -8.819000 2195.600000 -157.121900 -8.819100 2165.200000 -157.123400 -8.819100 2129.600000 -157.124900 -8.819200 2094.800000 -157.126300 -8.819200 2048.400000 -157.127800 -8.819200 1985.200000 -157.129300 -8.819300 1946.400000 -157.130700 -8.819300 1910.000000 -157.132200 -8.819400 1863.600000 -157.133700 -8.819400 1816.400000 -157.135200 -8.819400 1776.000000 -157.136600 -8.819500 1736.800000 -157.138100 -8.819500 1701.200000 -157.139500 -8.819600 1664.000000 -157.141000 -8.819600 1649.600000 -157.142400 -8.819700 1609.200000 -157.143900 -8.819700 1582.800000 -157.145300 -8.819700 1563.600000 -157.146800 -8.819800 1522.800000 -157.148200 -8.819800 1511.600000 -157.149700 -8.819800 1486.800000 -157.151200 -8.819900 1479.600000 -157.152600 -8.819900 1474.000000 -157.154000 -8.819900 1482.000000 -157.155500 -8.820000 1458.400000 -157.157000 -8.820100 1474.400000 -157.158400 -8.820100 1480.000000 -157.159900 -8.820200 1501.600000 -157.161300 -8.820300 1533.600000 -157.162700 -8.820300 1589.200000 -157.164000 -8.820400 1604.000000 -157.164700 -8.820500 1608.800000 -157.165000 -8.820700 1582.400000 -157.165100 -8.820900 1567.200000 -157.165100 -8.821100 1566.400000 -157.165100 -8.821100 1574.400000 -157.164800 -8.821200 1562.000000 -157.164500 -8.821500 1552.400000 -157.164300 -8.821700 1530.800000 -157.164100 -8.821900 1509.600000 -157.164000 -8.821900 1514.000000 -157.163900 -8.821900 1528.800000 -157.163800 -8.821900 1530.400000 -157.163800 -8.821800 1524.000000 -157.163800 -8.821800 1538.000000 -157.163800 -8.821800 1530.800000 -157.163700 -8.821800 1550.400000 -157.163700 -8.821800 1538.000000 -157.163700 -8.821900 1580.000000 -157.163400 -8.821600 1544.000000 -157.162700 -8.821400 1510.000000 -157.162000 -8.821800 1483.200000 -157.161800 -8.822700 1440.000000 -157.161700 -8.823600 1413.600000 -157.161400 -8.824500 1370.800000 -157.161200 -8.825500 1312.400000 -157.160900 -8.826700 1248.400000 -157.160600 -8.828000 1201.200000 -157.160300 -8.829200 1129.600000 -157.160000 -8.830600 1050.400000 -157.159600 -8.831800 990.400000 -157.159200 -8.833100 935.600000 -157.158800 -8.834400 881.200000 -157.158400 -8.835600 801.600000 -157.158100 -8.836900 743.200000 -157.157800 -8.837900 658.000000 -157.157500 -8.838700 630.800000 -157.157300 -8.839400 613.600000 -157.157100 -8.840000 616.800000 -157.156900 -8.840600 636.000000 -157.156900 -8.840900 628.400000 -157.157200 -8.841100 598.000000 -157.157600 -8.841100 584.000000 -157.157700 -8.841100 587.200000 -157.157800 -8.841100 575.200000 -157.157900 -8.841000 570.000000 -157.158100 -8.841000 562.400000 -157.158200 -8.841000 554.400000 -157.158300 -8.840900 555.600000 -157.158300 -8.840900 552.400000 -157.158500 -8.840900 551.600000 -157.158500 -8.840800 552.000000 -157.158600 -8.840800 561.600000 -157.159300 -8.840800 539.600000 -157.159900 -8.840900 537.200000 -157.160400 -8.841100 552.800000 -157.160900 -8.841200 564.400000 -157.161200 -8.841300 565.600000 -157.161700 -8.841400 570.400000 -157.162200 -8.841500 561.600000 -157.162600 -8.841600 567.600000 -157.162900 -8.841600 583.600000 -157.163400 -8.841700 585.600000 -157.163600 -8.841700 590.800000 -157.163500 -8.841600 591.600000 -157.163200 -8.841500 594.000000 -157.163000 -8.841400 592.400000 -157.162900 -8.841300 594.800000 -157.162700 -8.841200 595.600000 -157.162400 -8.841100 598.800000 -157.162100 -8.841000 588.800000 -157.161900 -8.840800 595.200000 -157.161800 -8.840700 599.200000 -157.161700 -8.840600 613.600000 -157.161600 -8.840500 624.400000 -157.161600 -8.840400 608.800000 -157.161700 -8.840400 618.000000 -157.161700 -8.840300 627.600000 -157.161800 -8.840300 618.000000 -157.162100 -8.840400 616.400000 -157.162300 -8.840400 627.200000 -157.162300 -8.840400 636.400000 -157.162300 -8.840300 649.600000 -157.162400 -8.840300 640.000000 -157.162700 -8.840300 644.400000 -157.162900 -8.840300 635.600000 -157.163000 -8.840300 647.600000 -157.163100 -8.840300 656.000000 -157.163100 -8.840200 668.400000 -157.163100 -8.840200 654.800000 -157.163100 -8.840100 670.400000 -157.163200 -8.840000 673.200000 -157.163300 -8.840000 666.000000 -157.163500 -8.840000 678.800000 -157.163600 -8.840000 672.800000 -157.163700 -8.840000 669.200000 -157.164000 -8.840200 667.600000 -157.164400 -8.840200 674.800000 -157.164900 -8.840300 661.600000 -157.165500 -8.840400 680.000000 -157.166100 -8.840500 706.800000 -157.166700 -8.840500 731.600000 -157.167400 -8.840600 767.600000 -157.168000 -8.840700 808.400000 -157.168500 -8.840800 841.200000 -157.168800 -8.840800 840.800000 -157.169100 -8.841000 837.200000 -157.169900 -8.841200 886.400000 -157.170400 -8.840600 923.600000 -157.170400 -8.839600 934.800000 -157.170300 -8.838600 962.400000 -157.170300 -8.837600 957.200000 -157.170300 -8.836800 968.400000 -157.170300 -8.835800 1012.800000 -157.170200 -8.834800 1064.400000 -157.170200 -8.833800 1123.200000 -157.170200 -8.832800 1238.800000 -157.170300 -8.831700 1226.800000 -157.171000 -8.831000 1235.200000 -157.172100 -8.831100 1224.000000 -157.173700 -8.832000 1231.200000 -157.175700 -8.833000 1267.600000 -157.177800 -8.834200 1394.400000 -157.180000 -8.835300 1432.800000 -157.181900 -8.836300 1514.800000 -157.183100 -8.837100 1544.400000 -157.184000 -8.837800 1566.800000 -157.184800 -8.838300 1609.600000 -157.185600 -8.838700 1591.600000 -157.186300 -8.839100 1623.200000 -157.186800 -8.839500 1662.400000 -157.187300 -8.839700 1694.000000 -157.187900 -8.839800 1692.000000 -157.188300 -8.840000 1712.000000 -157.188800 -8.840200 1750.000000 -157.189200 -8.840400 1709.600000 -157.189500 -8.840500 1737.600000 -157.189900 -8.840700 1776.800000 -157.190200 -8.840700 1839.200000 -157.190700 -8.840800 1819.200000 -157.191000 -8.840900 1813.200000 -157.191500 -8.841000 1882.400000 -157.191900 -8.840900 1936.000000 -157.192200 -8.840800 1938.000000 -157.192300 -8.840700 1869.600000 -157.192200 -8.840600 1836.000000 -157.192000 -8.840500 1814.000000 -157.191800 -8.840500 1786.800000 -157.191700 -8.840500 1788.400000 -157.191600 -8.840500 1815.200000 -157.191600 -8.840600 1798.800000 -157.191600 -8.840700 1770.800000 -157.191600 -8.840800 1785.600000 -157.191600 -8.840900 1798.000000 -157.191600 -8.841000 1794.400000 -157.191500 -8.840900 1831.600000 -157.191400 -8.840900 1842.400000 -157.191300 -8.840600 1826.000000 -157.191300 -8.840300 1892.000000 -157.191200 -8.840200 1842.400000 -157.191000 -8.840100 1832.800000 -157.190900 -8.840100 1836.800000 -157.190700 -8.840200 1814.800000 -157.190600 -8.840200 1828.000000 -157.190400 -8.840200 1872.800000 -157.190300 -8.840100 1858.000000 -157.190100 -8.840100 1782.000000 -157.190000 -8.840100 1822.400000 -157.189900 -8.840000 1783.200000 -157.189800 -8.839900 1794.000000 -157.189600 -8.840000 1792.400000 -157.189500 -8.840000 1768.800000 -157.189300 -8.840100 1765.600000 -157.189200 -8.840200 1762.800000 -157.188900 -8.840100 1716.800000 -157.188200 -8.840000 1615.600000 -157.187700 -8.840100 1604.800000 -157.187200 -8.840100 1594.000000 -157.186700 -8.840100 1604.400000 -157.186300 -8.840200 1582.400000 -157.185800 -8.840300 1496.400000 -157.185300 -8.840300 1508.400000 -157.184900 -8.840400 1504.800000 -157.184700 -8.840500 1474.800000 -157.184600 -8.840500 1511.200000 -157.184600 -8.840600 1455.200000 -157.184600 -8.840600 1469.600000 -157.184400 -8.840600 1445.600000 -157.184300 -8.840600 1459.200000 -157.184400 -8.840600 1459.600000 -157.184300 -8.840600 1457.200000 -157.184300 -8.840600 1434.800000 -157.184400 -8.840600 1460.000000 -157.184500 -8.840600 1512.000000 -157.184600 -8.840600 1434.800000 -157.184700 -8.840600 1470.800000 -157.184700 -8.840600 1456.400000 -157.184700 -8.840600 1460.400000 -157.184800 -8.840600 1462.800000 -157.184900 -8.840500 1486.000000 -157.185200 -8.840600 1478.000000 -157.185400 -8.840600 1471.600000 -157.185700 -8.840700 1485.600000 -157.185900 -8.840700 1519.200000 -157.186000 -8.840700 1505.200000 -157.186100 -8.840700 1502.800000 -157.186000 -8.840700 1500.400000 -157.186000 -8.840600 1509.600000 -157.185900 -8.840600 1512.000000 -157.185900 -8.840600 1519.200000 -157.185800 -8.840600 1508.400000 -157.185700 -8.840600 1492.400000 -157.185700 -8.840500 1496.400000 -157.185700 -8.840500 1562.800000 -157.185500 -8.840500 1526.400000 -157.185400 -8.840500 1488.000000 -157.185300 -8.840400 1498.400000 -157.185300 -8.840400 1498.800000 -157.185200 -8.840400 1491.200000 -157.185100 -8.840400 1457.600000 -157.185000 -8.840300 1451.200000 -157.185000 -8.840300 1486.800000 -157.184900 -8.840300 1466.400000 -157.184800 -8.840300 1471.600000 -157.184800 -8.840200 1513.200000 -157.184700 -8.840200 1484.800000 -157.184600 -8.840200 1537.200000 -157.184500 -8.840200 1569.600000 -157.184500 -8.840100 1504.400000 -157.184400 -8.840100 1478.000000 -157.184300 -8.840100 1504.800000 -157.184200 -8.840100 1491.200000 -157.184100 -8.840100 1452.800000 -157.184000 -8.840100 1472.800000 -157.184000 -8.840100 1454.400000 -157.184000 -8.840000 1466.800000 -157.183800 -8.840000 1448.400000 -157.183600 -8.840000 1456.400000 -157.183400 -8.840000 1491.600000 -157.183300 -8.840000 1467.200000 -157.183200 -8.839900 1443.200000 -157.183100 -8.839900 1432.400000 -157.182900 -8.839900 1408.800000 -157.182800 -8.839800 1452.800000 -157.182700 -8.839800 1429.600000 -157.182500 -8.839800 1420.400000 -157.182300 -8.839700 1422.800000 -157.182200 -8.839700 1422.400000 -157.182200 -8.839700 1410.800000 -157.182000 -8.839700 1410.400000 -157.181900 -8.839600 1394.800000 -157.181800 -8.839600 1458.800000 -157.181700 -8.839600 1401.600000 -157.181500 -8.839600 1396.800000 -157.181300 -8.839600 1382.400000 -157.181200 -8.839600 1386.000000 -157.181000 -8.839600 1371.600000 -157.180800 -8.839600 1356.800000 -157.180700 -8.839600 1372.400000 -157.180600 -8.839700 1358.000000 -157.180500 -8.839700 1352.000000 -157.180300 -8.839700 1342.400000 -157.180200 -8.839700 1333.200000 -157.180000 -8.839700 1339.200000 -157.179900 -8.839700 1325.200000 -157.179800 -8.839700 1325.200000 -157.179800 -8.839700 1318.000000 -157.179700 -8.839700 1325.600000 -157.179700 -8.839600 1323.600000 -157.179600 -8.839600 1328.000000 -157.179500 -8.839600 1315.200000 -157.179100 -8.839500 1339.600000 -157.178900 -8.839200 1338.800000 -157.178700 -8.838400 1342.400000 -157.178600 -8.836900 1380.400000 -157.178400 -8.834800 1424.400000 -157.178100 -8.832400 1416.000000 -157.177800 -8.829800 1465.200000 -157.177600 -8.827100 1577.200000 -157.177200 -8.824300 1702.800000 -157.176900 -8.821200 1837.200000 -157.176600 -8.818000 1995.600000 -157.176300 -8.814800 2068.800000 -157.175900 -8.811600 2163.200000 -157.175500 -8.808400 2217.600000 -157.175200 -8.805200 2319.200000 -157.174800 -8.802000 2339.200000 -157.174500 -8.798900 2319.200000 -157.174100 -8.795700 2321.600000 -157.173700 -8.792400 2370.000000 -157.173300 -8.789200 2426.000000 -157.173000 -8.786000 2479.200000 -157.172600 -8.782800 2541.200000 -157.172300 -8.779600 2605.600000 -157.172000 -8.776400 2672.400000 -157.171600 -8.773200 2727.600000 -157.171300 -8.770000 2774.400000 -157.171000 -8.766700 2810.000000 -157.170700 -8.763500 2871.200000 -157.170400 -8.760300 2929.200000 -157.170000 -8.757100 2959.200000 -157.169700 -8.753800 2994.800000 -157.169400 -8.750600 3017.200000 -157.169000 -8.747400 3025.600000 -157.168700 -8.744200 3039.600000 -157.168400 -8.741000 3053.200000 -157.168000 -8.737800 3059.200000 -157.167700 -8.734600 3061.200000 -157.167400 -8.731400 3060.800000 -157.167000 -8.728300 3060.000000 -157.166700 -8.725100 3053.600000 -157.166400 -8.721900 3049.600000 -157.165900 -8.718800 3006.400000 -157.165400 -8.715600 2893.600000 -157.164900 -8.712500 2798.800000 -157.164400 -8.709300 2682.800000 -157.164000 -8.706100 2600.000000 -157.163500 -8.703000 2578.800000 -157.163100 -8.699800 2592.400000 -157.162600 -8.696700 2479.200000 -157.162200 -8.693600 2427.600000 -157.161700 -8.690400 2290.800000 -157.161200 -8.687300 2249.200000 -157.160800 -8.684200 2232.000000 -157.160300 -8.681000 2267.200000 -157.159800 -8.678100 2282.800000 -157.159400 -8.675800 2416.000000 -157.159000 -8.674000 2309.200000 -157.158600 -8.672700 2288.000000 -157.158300 -8.671600 2292.000000 -157.157900 -8.670600 2274.400000 -157.157600 -8.669700 2264.800000 -157.157300 -8.668800 2248.800000 -157.157100 -8.668100 2238.400000 -157.156900 -8.667400 2227.200000 -157.156600 -8.666700 2220.000000 -157.156500 -8.666000 2213.200000 -157.156400 -8.665500 2210.000000 -157.156400 -8.665000 2208.800000 -157.156500 -8.664400 2206.000000 -157.156500 -8.663800 2212.000000 -157.156600 -8.663300 2210.800000 -157.156500 -8.663200 2209.600000 -157.156400 -8.663000 2211.600000 -157.156400 -8.662800 2211.600000 -157.156400 -8.662700 2210.800000 -157.156400 -8.662600 2210.000000 -157.156400 -8.662400 2211.600000 -157.156200 -8.662400 2213.600000 -157.156100 -8.662300 2217.200000 -157.156000 -8.662200 2219.600000 -157.155800 -8.662100 2222.000000 -157.155600 -8.662100 2225.600000 -157.155400 -8.662000 2228.800000 -157.155500 -8.662000 2228.800000 -157.156100 -8.662200 2219.200000 -157.156400 -8.662400 2211.600000 -157.156600 -8.662400 2209.200000 -157.156700 -8.662400 2207.200000 -157.156700 -8.662400 2207.200000 -157.156800 -8.662300 2206.000000 -157.157000 -8.662400 2203.200000 -157.157100 -8.662400 2202.800000 -157.157000 -8.662400 2204.400000 -157.157000 -8.662400 2202.400000 -157.157000 -8.662400 2204.800000 -157.157000 -8.662400 2203.600000 -157.157000 -8.662400 2202.400000 -157.157000 -8.662400 2203.200000 -157.157100 -8.662400 2202.800000 -157.157200 -8.662400 2202.000000 -157.157100 -8.662400 2205.600000 -157.157100 -8.662300 2202.000000 -157.157100 -8.662300 2202.800000 -157.157000 -8.662300 2202.800000 -157.157000 -8.662400 2202.800000 -157.157000 -8.662500 2202.400000 -157.157000 -8.662400 2204.400000 -157.157000 -8.662500 2202.800000 -157.157000 -8.662400 2203.200000 -157.157000 -8.662400 2203.600000 -157.157000 -8.662400 2203.200000 -157.157100 -8.662400 2202.800000 -157.157100 -8.662400 2202.000000 -157.157100 -8.662400 2201.200000 -157.157000 -8.662300 2202.800000 -157.157000 -8.662400 2203.200000 -157.157100 -8.662400 2202.000000 -157.157100 -8.662400 2281.600000 -157.157100 -8.662400 2265.200000 -157.157100 -8.662400 2265.600000 -157.157100 -8.662400 2281.600000 -157.157200 -8.662500 2283.200000 -157.157300 -8.662600 2284.800000 -157.157700 -8.662600 2236.400000 -157.158100 -8.662700 2190.000000 -157.158400 -8.662900 2183.600000 -157.158800 -8.662900 2186.800000 -157.159200 -8.662900 2169.600000 -157.159500 -8.662900 2183.600000 -157.159600 -8.662800 2183.200000 -157.159600 -8.662800 2164.400000 -157.159700 -8.662700 2163.200000 -157.159700 -8.662700 2162.400000 -157.159700 -8.662700 2161.600000 -157.159600 -8.662700 2163.600000 -157.159600 -8.662600 2164.400000 -157.159600 -8.662600 2174.000000 -157.159600 -8.662500 2163.600000 -157.159600 -8.662500 2163.600000 -157.159700 -8.662500 2163.600000 -157.159600 -8.662400 2164.000000 -157.159700 -8.662400 2163.200000 -157.159800 -8.662400 2162.800000 -157.159700 -8.662300 2162.800000 -157.159700 -8.662300 2163.600000 -157.159700 -8.662300 2164.000000 -157.159700 -8.662200 2164.400000 -157.159700 -8.662200 2182.400000 -157.159700 -8.662100 2164.400000 -157.159800 -8.662100 2163.600000 -157.159900 -8.662100 2163.200000 -157.160100 -8.662100 2161.200000 -157.160100 -8.662000 2160.000000 -157.160100 -8.662000 2160.000000 -157.160200 -8.662000 2159.600000 -157.160200 -8.662000 2159.600000 -157.160100 -8.662000 2160.400000 -157.160000 -8.661900 2161.200000 -157.160100 -8.662000 2164.400000 -157.160200 -8.662000 2159.600000 -157.160200 -8.662000 2159.600000 -157.160100 -8.662000 2160.000000 -157.160000 -8.661900 2162.000000 -157.159900 -8.661900 2182.000000 -157.159900 -8.662000 2172.000000 -157.159900 -8.662000 2182.400000 -157.159700 -8.662000 2164.400000 -157.159500 -8.662000 2167.200000 -157.159200 -8.661900 2184.000000 -157.159000 -8.661900 2185.200000 -157.158800 -8.661800 2178.000000 -157.158600 -8.661700 2182.800000 -157.158400 -8.661700 2189.600000 -157.158700 -8.661800 2182.800000 -157.159000 -8.662000 2178.000000 -157.159100 -8.662100 2173.200000 -157.159100 -8.662100 2184.400000 -157.159000 -8.662100 2175.600000 -157.158900 -8.662100 2176.000000 -157.158800 -8.662100 2179.600000 -157.159000 -8.662200 2174.000000 -157.159100 -8.662300 2172.000000 -157.159000 -8.662300 2174.400000 -157.158900 -8.662300 2174.400000 -157.159000 -8.662300 2185.200000 -157.159200 -8.662500 2170.800000 -157.159300 -8.662600 2167.600000 -157.159500 -8.662700 2166.000000 -157.159500 -8.662700 2164.800000 -157.159600 -8.662800 2163.200000 -157.159700 -8.662900 2164.400000 -157.159800 -8.662900 2202.800000 -157.159800 -8.663000 2176.800000 -157.159900 -8.663000 2201.200000 -157.160000 -8.663100 2158.800000 -157.160100 -8.663100 2158.000000 -157.160200 -8.663100 2157.200000 -157.160300 -8.663200 2156.000000 -157.160400 -8.663200 2155.200000 -157.160600 -8.663300 2153.600000 -157.160700 -8.663400 2152.000000 -157.160900 -8.663400 2151.200000 -157.161100 -8.663500 2150.000000 -157.161200 -8.663600 2146.800000 -157.161400 -8.663700 2144.400000 -157.161600 -8.663800 2135.600000 -157.161800 -8.663800 2139.600000 -157.161900 -8.663900 2131.600000 -157.162100 -8.664000 2127.200000 -157.162300 -8.664100 2125.600000 -157.162400 -8.664200 2122.800000 -157.162600 -8.664300 2122.000000 -157.162700 -8.664400 2124.000000 -157.162900 -8.664500 2120.000000 -157.163000 -8.664600 2120.400000 -157.163100 -8.664700 2119.200000 -157.163200 -8.664700 2119.600000 -157.163100 -8.664700 2119.600000 -157.163000 -8.664600 2120.400000 -157.162800 -8.664500 2120.400000 -157.162600 -8.664400 2122.400000 -157.162300 -8.664300 2129.600000 -157.162100 -8.664200 2135.200000 -157.161800 -8.664100 2142.400000 -157.161500 -8.663900 2141.600000 -157.161200 -8.663800 2146.400000 -157.161300 -8.663800 2149.200000 -157.161800 -8.663600 2140.000000 -157.161700 -8.662900 2137.200000 -157.161500 -8.661700 2144.800000 -157.161300 -8.660400 2164.000000 -157.161000 -8.659100 2190.800000 -157.160800 -8.657800 2202.000000 -157.160600 -8.656800 2204.000000 -157.160500 -8.655800 2206.400000 -157.160300 -8.654900 2212.800000 -157.160200 -8.654100 2202.800000 -157.160000 -8.653500 2251.600000 -157.159500 -8.653300 2260.800000 -157.159000 -8.653800 2257.200000 -157.159200 -8.654900 2228.400000 -157.159400 -8.656200 2252.000000 -157.159700 -8.657900 2212.400000 -157.160000 -8.660100 2193.200000 -157.160300 -8.662400 2158.400000 -157.160600 -8.664700 2156.400000 -157.160900 -8.667000 2176.800000 -157.161200 -8.669200 2210.800000 -157.161400 -8.671500 2242.800000 -157.161600 -8.673800 2242.000000 -157.161800 -8.676100 2252.000000 -157.162000 -8.678400 2248.800000 -157.162200 -8.680700 2248.000000 -157.162400 -8.683000 2261.200000 -157.162600 -8.685300 2228.400000 -157.162800 -8.687700 2237.200000 -157.163000 -8.690000 2255.200000 -157.163200 -8.692300 2271.200000 -157.163300 -8.694600 2427.200000 -157.163600 -8.696800 2433.600000 -157.163700 -8.698900 2508.800000 -157.163900 -8.700700 2586.400000 -157.164100 -8.702400 2574.400000 -157.164200 -8.704000 2580.400000 -157.164400 -8.705600 2590.000000 -157.164500 -8.707200 2658.800000 -157.164600 -8.708800 2680.000000 -157.164700 -8.710300 2800.000000 -157.164800 -8.711900 2828.800000 -157.164900 -8.713400 2842.400000 -157.164900 -8.715000 2888.400000 -157.165000 -8.716600 2936.400000 -157.165100 -8.718100 3006.000000 -157.165200 -8.719600 3021.600000 -157.165300 -8.721100 3035.200000 -157.165400 -8.722700 3048.000000 -157.165500 -8.724300 3052.800000 -157.165600 -8.725800 3053.600000 -157.165700 -8.727400 3057.600000 -157.165900 -8.728900 3060.000000 -157.166000 -8.730500 3060.000000 -157.166200 -8.732000 3060.800000 -157.166300 -8.733600 3061.200000 -157.166500 -8.735100 3060.800000 -157.166600 -8.736600 3060.400000 -157.166700 -8.738200 3058.800000 -157.166900 -8.739700 3056.400000 -157.167000 -8.741200 3052.400000 -157.167200 -8.742700 3041.200000 -157.167300 -8.744300 3031.600000 -157.167500 -8.745800 3026.400000 -157.167600 -8.747400 3021.200000 -157.167800 -8.748900 3018.800000 -157.167800 -8.750500 3015.200000 -157.168000 -8.752000 3008.800000 -157.168100 -8.753600 2996.400000 -157.168200 -8.755200 2983.200000 -157.168300 -8.756800 2967.200000 -157.168500 -8.758300 2948.400000 -157.168600 -8.759800 2934.400000 -157.168800 -8.761800 2908.000000 -157.169000 -8.764200 2878.000000 -157.169200 -8.766700 2827.200000 -157.169400 -8.769300 2794.000000 -157.169800 -8.772100 2759.600000 -157.170200 -8.775000 2705.200000 -157.170300 -8.777700 2653.200000 -157.170200 -8.780500 2593.200000 -157.170200 -8.783000 2532.800000 -157.170200 -8.784700 2500.000000 -157.170200 -8.786000 2469.200000 -157.170100 -8.787000 2450.800000 -157.170100 -8.787600 2435.600000 -157.170100 -8.788100 2426.000000 -157.170000 -8.788500 2416.400000 -157.170000 -8.789000 2405.200000 -157.170100 -8.789500 2395.200000 -157.170200 -8.790100 2382.800000 -157.170300 -8.790800 2371.600000 -157.170500 -8.791500 2356.800000 -157.170600 -8.792100 2345.600000 -157.170800 -8.792700 2334.400000 -157.170900 -8.793300 2323.600000 -157.171000 -8.793600 2318.000000 -157.171100 -8.793800 2316.000000 -157.171200 -8.793900 2314.000000 -157.171300 -8.794000 2312.800000 -157.171300 -8.794100 2310.800000 -157.171400 -8.794100 2312.800000 -157.171500 -8.794000 2314.400000 -157.171500 -8.794100 2314.000000 -157.171400 -8.794300 2308.400000 -157.171400 -8.794500 2304.800000 -157.171500 -8.794500 2306.400000 -157.171500 -8.794500 2305.200000 -157.171600 -8.794500 2306.800000 -157.171600 -8.794600 2305.200000 -157.171500 -8.794700 2301.600000 -157.171500 -8.794800 2300.000000 -157.171500 -8.794800 2298.400000 -157.171500 -8.794800 2300.000000 -157.171500 -8.794800 2301.600000 -157.171500 -8.794900 2297.200000 -157.171500 -8.794900 2297.200000 -157.171500 -8.794900 2296.400000 -157.171600 -8.794900 2298.400000 -157.171600 -8.794900 2298.400000 -157.171600 -8.795000 2297.600000 -157.171700 -8.795000 2296.800000 -157.171700 -8.795000 2296.400000 -157.171800 -8.795000 2297.200000 -157.171700 -8.795100 2295.600000 -157.171600 -8.795200 2292.800000 -157.171500 -8.795300 2290.000000 -157.171100 -8.795700 2280.400000 -157.170500 -8.796100 2264.800000 -157.170100 -8.796400 2252.000000 -157.169700 -8.796600 2242.800000 -157.169400 -8.796900 2235.600000 -157.169100 -8.797100 2226.800000 -157.168900 -8.797400 2222.000000 -157.168500 -8.797600 2212.400000 -157.168300 -8.797800 2206.800000 -157.168200 -8.797800 2205.200000 -157.168200 -8.797900 2204.000000 -157.168100 -8.797900 2203.200000 -157.168000 -8.797900 2202.000000 -157.167900 -8.798000 2200.800000 -157.167900 -8.798000 2198.800000 -157.167900 -8.798000 2201.200000 -157.167900 -8.798000 2199.600000 -157.167900 -8.797900 2200.400000 -157.168100 -8.797900 2201.600000 -157.168100 -8.797900 2202.800000 -157.168200 -8.797800 2204.400000 -157.168300 -8.797800 2206.400000 -157.168300 -8.797800 2205.600000 -157.168300 -8.797800 2205.600000 -157.168300 -8.797800 2206.000000 -157.168300 -8.797800 2206.000000 -157.168200 -8.797900 2204.400000 -157.168100 -8.797900 2202.400000 -157.168000 -8.798000 2199.200000 -157.167900 -8.798000 2198.400000 -157.167900 -8.798000 2198.800000 -157.167900 -8.798000 2199.200000 -157.168000 -8.797900 2200.400000 -157.168100 -8.797900 2202.400000 -157.168000 -8.797900 2200.400000 -157.167900 -8.798000 2199.200000 -157.167800 -8.798000 2198.800000 -157.167700 -8.798000 2196.800000 -157.167500 -8.798100 2193.600000 -157.167300 -8.798200 2190.800000 -157.167200 -8.798300 2188.800000 -157.167100 -8.798400 2188.400000 -157.166900 -8.798500 2182.800000 -157.166700 -8.798700 2177.200000 -157.166400 -8.798900 2171.600000 -157.166200 -8.799100 2165.200000 -157.166100 -8.799200 2161.600000 -157.165900 -8.799300 2158.800000 -157.165800 -8.799400 2155.200000 -157.165600 -8.799500 2152.400000 -157.165500 -8.799600 2148.800000 -157.165300 -8.799600 2146.000000 -157.165300 -8.799700 2144.800000 -157.165300 -8.799700 2144.000000 -157.165200 -8.799700 2142.000000 -157.165100 -8.799700 2142.400000 -157.164900 -8.799800 2138.400000 -157.164700 -8.799900 2134.800000 -157.164500 -8.800000 2131.200000 -157.164300 -8.800000 2128.800000 -157.164300 -8.800100 2127.600000 -157.164200 -8.800000 2129.200000 -157.164100 -8.800000 2128.400000 -157.164100 -8.800000 2128.800000 -157.164000 -8.800000 2128.800000 -157.163900 -8.800000 2128.800000 -157.163700 -8.800000 2127.600000 -157.163400 -8.800200 2122.400000 -157.163200 -8.800300 2118.800000 -157.163100 -8.800400 2116.000000 -157.162900 -8.800500 2112.800000 -157.162800 -8.800600 2108.000000 -157.162600 -8.800700 2106.400000 -157.162400 -8.800800 2100.000000 -157.162200 -8.800900 2095.600000 -157.162000 -8.801100 2091.600000 -157.161900 -8.801100 2088.800000 -157.161800 -8.801200 2085.600000 -157.161600 -8.801400 2082.000000 -157.161400 -8.801500 2075.600000 -157.161000 -8.801800 2068.000000 -157.160800 -8.802000 2057.600000 -157.160600 -8.802200 2050.400000 -157.160300 -8.802500 2041.600000 -157.159900 -8.802800 2029.200000 -157.159700 -8.803000 2019.200000 -157.159500 -8.803200 2012.800000 -157.159400 -8.803300 2007.600000 -157.159300 -8.803400 2004.000000 -157.158900 -8.803600 1993.200000 -157.158300 -8.804000 1981.200000 -157.157500 -8.804500 1955.200000 -157.156700 -8.805100 1934.400000 -157.155900 -8.805700 1915.200000 -157.155100 -8.806600 1885.200000 -157.154900 -8.808200 1842.000000 -157.154500 -8.810300 1780.000000 -157.153900 -8.813000 1713.200000 -157.153400 -8.815600 1627.200000 -157.152900 -8.818300 1551.600000 -157.152400 -8.821000 1460.800000 -157.151800 -8.823700 1280.800000 -157.151300 -8.826500 1235.600000 -157.150800 -8.829200 1165.200000 -157.150200 -8.831900 1058.000000 -157.149700 -8.834600 942.800000 -157.149100 -8.837200 846.000000 -157.148600 -8.839900 845.200000 -157.148000 -8.842600 893.600000 -157.147500 -8.845100 906.800000 -157.147100 -8.847100 888.800000 -157.146700 -8.848900 919.200000 -157.146400 -8.850700 996.800000 -157.146000 -8.852400 1050.800000 -157.145500 -8.854100 1108.800000 -157.145100 -8.855800 1194.000000 -157.144600 -8.857500 1237.200000 -157.144100 -8.859300 1299.600000 -157.143700 -8.861000 1370.000000 -157.143200 -8.862800 1434.000000 -157.142700 -8.864600 1516.000000 -157.142200 -8.866400 1596.800000 -157.141800 -8.868100 1679.200000 -157.141300 -8.869900 1774.000000 -157.141100 -8.871300 1801.200000 -157.141100 -8.872400 1860.000000 -157.141200 -8.873200 1822.800000 -157.141500 -8.873700 1830.400000 -157.141600 -8.874100 1846.800000 -157.141600 -8.874400 1843.200000 -157.141600 -8.874600 1848.400000 -157.142000 -8.874400 1809.600000 -157.142200 -8.874100 1817.200000 -157.142300 -8.874100 1803.200000 -157.142400 -8.873900 1790.000000 -157.142400 -8.873800 1803.200000 -157.142400 -8.873700 1796.400000 -157.142500 -8.873500 1780.800000 -157.142500 -8.873400 1763.200000 -157.142400 -8.873400 1779.200000 -157.142300 -8.873400 1789.200000 -157.142200 -8.873400 1781.600000 -157.142300 -8.873200 1772.000000 -157.142400 -8.873100 1788.800000 -157.142300 -8.873000 1773.200000 -157.142200 -8.873100 1773.200000 -157.142100 -8.873100 1779.600000 -157.141900 -8.873100 1770.000000 -157.141900 -8.872900 1763.200000 -157.142000 -8.872800 1768.400000 -157.142100 -8.872600 1742.800000 -157.142100 -8.872400 1752.000000 -157.142000 -8.872400 1738.000000 -157.141900 -8.872400 1748.800000 -157.141700 -8.872400 1756.800000 -157.141600 -8.872400 1762.400000 -157.141600 -8.872300 1759.200000 -157.141500 -8.872300 1758.800000 -157.141400 -8.872200 1748.800000 -157.141200 -8.872300 1776.400000 -157.141100 -8.872300 1941.200000 -157.140900 -8.872300 1757.200000 -157.140800 -8.872200 1782.400000 -157.141000 -8.872000 1791.600000 -157.141500 -8.871500 1747.200000 -157.142100 -8.871100 1729.200000 -157.142400 -8.870800 1693.600000 -157.142700 -8.870500 1674.400000 -157.143100 -8.870100 1661.600000 -157.143300 -8.869900 1651.200000 -157.143300 -8.869800 1631.200000 -157.143200 -8.869800 1627.200000 -157.143200 -8.869700 1634.400000 -157.143100 -8.869700 1642.800000 -157.143000 -8.869700 1633.200000 -157.142900 -8.869800 1645.600000 -157.142700 -8.869900 1645.200000 -157.142500 -8.869900 1659.200000 -157.142500 -8.869800 1684.000000 -157.142500 -8.869700 1648.800000 -157.142800 -8.869500 1670.400000 -157.142900 -8.869400 1646.400000 -157.142900 -8.869300 1616.400000 -157.142800 -8.869300 1627.200000 -157.142700 -8.869300 1617.600000 -157.142700 -8.869200 1642.400000 -157.142700 -8.869200 1638.400000 -157.142800 -8.869100 1624.400000 -157.142800 -8.868900 1602.400000 -157.142900 -8.868800 1612.800000 -157.143000 -8.868700 1604.800000 -157.143100 -8.868500 1605.600000 -157.143200 -8.868400 1589.200000 -157.143300 -8.868300 1591.600000 -157.143400 -8.868100 1577.200000 -157.143500 -8.868000 1566.000000 -157.143700 -8.867800 1548.400000 -157.143800 -8.867700 1566.400000 -157.143900 -8.867500 1552.800000 -157.144000 -8.867400 1542.400000 -157.144100 -8.867300 1537.600000 -157.144300 -8.867100 1531.600000 -157.144400 -8.867000 1513.200000 -157.144400 -8.866800 1507.600000 -157.144600 -8.866600 1492.800000 -157.144700 -8.866500 1496.000000 -157.144800 -8.866300 1498.400000 -157.144900 -8.866200 1486.000000 -157.145000 -8.865900 1487.600000 -157.145100 -8.865800 1464.800000 -157.145300 -8.865600 1464.800000 -157.145400 -8.865400 1440.800000 -157.145700 -8.865100 1431.200000 -157.145900 -8.864900 1403.200000 -157.146100 -8.864700 1419.600000 -157.146300 -8.864500 1381.200000 -157.146400 -8.864400 1397.600000 -157.146400 -8.864200 1373.600000 -157.146600 -8.864000 1382.000000 -157.146600 -8.863900 1377.600000 -157.146800 -8.863700 1351.600000 -157.146900 -8.863500 1343.200000 -157.147000 -8.863400 1338.800000 -157.147100 -8.863200 1329.200000 -157.147100 -8.863100 1321.600000 -157.147000 -8.863000 1321.600000 -157.146900 -8.863000 1317.200000 -157.146800 -8.863000 1338.000000 -157.146700 -8.863000 1331.600000 -157.146600 -8.863000 1332.800000 -157.146500 -8.863000 1330.800000 -157.146500 -8.862800 1326.000000 -157.146900 -8.862600 1322.800000 -157.147800 -8.862800 1307.600000 -157.149100 -8.863100 1314.800000 -157.150700 -8.863400 1306.000000 -157.152300 -8.863700 1296.400000 -157.154000 -8.864100 1315.200000 -157.155700 -8.864500 1303.600000 -157.157500 -8.864900 1316.800000 -157.159200 -8.865300 1348.800000 -157.160900 -8.865700 1383.200000 -157.162600 -8.866100 1399.600000 -157.164400 -8.866500 1470.800000 -157.166100 -8.866800 1486.000000 -157.167900 -8.867200 1527.600000 -157.169700 -8.867600 1566.400000 -157.171600 -8.868100 1640.400000 -157.173700 -8.868500 1666.400000 -157.175800 -8.869000 1708.400000 -157.178100 -8.869500 1790.400000 -157.180300 -8.870000 1829.600000 -157.182400 -8.870400 1908.400000 -157.184600 -8.870900 1959.600000 -157.186800 -8.871400 2031.600000 -157.188800 -8.871900 2112.000000 -157.190900 -8.872400 2170.000000 -157.193000 -8.872800 2228.000000 -157.195100 -8.873300 2307.200000 -157.197200 -8.873800 2368.000000 -157.199300 -8.874300 2419.200000 -157.201400 -8.874800 2481.200000 -157.203500 -8.875200 2512.800000 -157.205600 -8.875700 2603.200000 -157.207800 -8.876100 2648.800000 -157.209800 -8.876600 2724.800000 -157.212000 -8.877100 2803.600000 -157.214100 -8.877600 2829.600000 -157.216200 -8.878000 2862.000000 -157.218300 -8.878500 2898.000000 -157.220500 -8.878900 2966.800000 -157.222600 -8.879400 3010.800000 -157.224700 -8.879900 3044.800000 -157.226800 -8.880400 3122.800000 -157.229000 -8.880900 3138.800000 -157.231100 -8.881300 3189.200000 -157.233200 -8.881800 3246.800000 -157.235300 -8.882200 3281.600000 -157.237400 -8.882600 3330.800000 -157.239500 -8.883100 3369.200000 -157.241600 -8.883500 3414.800000 -157.243800 -8.884000 3450.000000 -157.245900 -8.884400 3490.400000 -157.248000 -8.884900 3362.800000 -157.250100 -8.885300 3307.600000 -157.252200 -8.885700 3126.400000 -157.254300 -8.886100 3311.200000 -157.256400 -8.886600 3282.400000 -157.258500 -8.887000 3142.700000 -157.260600 -8.887400 3222.400000 -157.262800 -8.887900 2943.200000 -157.264900 -8.888300 3047.200000 -157.267000 -8.888700 3380.400000 -157.269100 -8.889200 3322.400000 -157.271300 -8.889600 3481.600000 -157.273400 -8.890100 3450.800000 -157.275600 -8.890500 3486.800000 -157.277700 -8.891000 3370.800000 -157.279800 -8.891400 3091.200000 -157.281900 -8.891900 3476.000000 -157.284100 -8.892300 3432.000000 -157.286200 -8.892700 3226.000000 -157.288400 -8.893200 3336.000000 -157.290500 -8.893600 3320.400000 -157.292700 -8.894000 3294.400000 -157.294800 -8.894400 3171.200000 -157.296900 -8.894900 3332.800000 -157.299100 -8.895200 3056.800000 -157.301200 -8.895700 3298.800000 -157.303400 -8.896100 3292.400000 -157.305500 -8.896500 2995.200000 -157.307700 -8.896900 3166.400000 -157.309900 -8.897300 3314.800000 -157.312100 -8.897800 3190.800000 -157.314400 -8.898300 3471.600000 -157.316600 -8.898700 3268.400000 -157.318800 -8.899200 3227.200000 -157.321000 -8.899600 3262.800000 -157.323300 -8.900100 3007.600000 -157.325500 -8.900500 3451.600000 -157.327700 -8.900900 3136.000000 -157.330000 -8.901400 2942.000000 -157.332200 -8.901800 3026.400000 -157.334400 -8.902200 3325.600000 -157.336600 -8.902600 3394.400000 -157.338800 -8.903000 3482.400000 -157.341000 -8.903400 3261.200000 -157.343200 -8.903900 3317.200000 -157.345400 -8.904300 3422.400000 -157.347700 -8.904700 3279.600000 -157.349800 -8.905200 3050.400000 -157.352100 -8.905600 3474.400000 -157.354300 -8.906100 3422.000000 -157.356500 -8.906600 3390.800000 -157.358700 -8.907000 3336.000000 -157.360900 -8.907500 3384.000000 -157.363100 -8.908000 3290.400000 -157.365300 -8.908400 3252.400000 -157.367500 -8.908900 3390.400000 -157.369700 -8.909400 3165.200000 -157.371900 -8.909800 3401.200000 -157.374100 -8.910300 3373.200000 -157.376300 -8.910700 3218.000000 -157.378500 -8.911200 2992.600000 -157.380600 -8.911600 3459.200000 -157.382800 -8.912000 3378.400000 -157.385000 -8.912400 3392.000000 -157.387200 -8.912900 3378.000000 -157.389400 -8.913300 3384.000000 -157.391600 -8.913800 3359.200000 -157.393800 -8.914200 3461.600000 -157.396000 -8.914700 3335.600000 -157.398300 -8.915100 3366.800000 -157.400500 -8.915500 3319.600000 -157.402700 -8.916000 3330.400000 -157.404900 -8.916400 3281.600000 -157.407100 -8.916900 3284.400000 -157.409300 -8.917300 3401.100000 -157.411500 -8.917800 3316.400000 -157.413700 -8.918200 3386.000000 -157.415900 -8.918700 3492.400000 -157.418100 -8.919100 3314.800000 -157.420200 -8.919600 3387.200000 -157.422400 -8.920000 3478.000000 -157.424600 -8.920400 3459.600000 -157.426700 -8.920800 3452.400000 -157.428800 -8.921300 3418.400000 -157.431000 -8.921700 3406.000000 -157.433100 -8.922100 3298.800000 -157.435200 -8.922500 3217.200000 -157.437200 -8.922900 3191.600000 -157.439300 -8.923400 3155.600000 -157.441400 -8.923900 3126.800000 -157.443400 -8.924300 3107.200000 -157.445500 -8.924700 3116.400000 -157.447600 -8.925100 3125.600000 -157.449700 -8.925600 2962.400000 -157.451800 -8.926000 3000.400000 -157.453900 -8.926500 2841.600000 -157.456000 -8.926900 2800.400000 -157.458000 -8.927300 2794.000000 -157.460100 -8.927800 2789.600000 -157.462300 -8.928200 2781.200000 -157.464300 -8.928600 2802.000000 -157.466400 -8.929100 2656.800000 -157.468400 -8.929500 2647.600000 -157.470400 -8.929900 2633.200000 -157.472500 -8.930300 2598.800000 -157.474600 -8.930700 2572.400000 -157.476700 -8.931100 2545.600000 -157.478800 -8.931400 2532.000000 -157.480900 -8.931800 2518.400000 -157.483000 -8.932200 2529.600000 -157.485100 -8.932600 2505.200000 -157.487200 -8.932900 2516.000000 -157.489300 -8.933300 2471.200000 -157.491400 -8.933600 2445.600000 -157.493500 -8.934000 2422.400000 -157.495600 -8.934300 2320.000000 -157.497700 -8.934600 2596.000000 -157.499800 -8.935000 2295.600000 -157.501900 -8.935300 2293.600000 -157.504000 -8.935700 2307.200000 -157.506200 -8.936100 2286.800000 -157.508300 -8.936400 2282.800000 -157.510400 -8.936800 2237.600000 -157.512500 -8.937100 2222.800000 -157.514700 -8.937400 2233.600000 -157.516800 -8.937700 2232.400000 -157.519000 -8.938100 2118.400000 -157.521100 -8.938400 2144.400000 -157.523200 -8.938800 2158.400000 -157.525400 -8.939100 2186.400000 -157.527500 -8.939500 2171.600000 -157.529600 -8.939800 2260.800000 -157.531700 -8.940100 2254.800000 -157.533800 -8.940400 2211.600000 -157.535900 -8.940800 2132.400000 -157.538000 -8.941100 2106.400000 -157.540100 -8.941500 2086.800000 -157.542200 -8.941800 2064.000000 -157.544200 -8.942400 2066.400000 -157.546200 -8.942900 2065.600000 -157.548300 -8.943400 2080.800000 -157.550300 -8.943900 2076.800000 -157.552400 -8.944400 2078.400000 -157.554500 -8.945000 2192.800000 -157.556600 -8.945500 2109.600000 -157.558600 -8.946000 2245.200000 -157.560700 -8.946500 2242.000000 -157.562700 -8.946900 2238.000000 -157.564800 -8.947300 2115.600000 -157.566800 -8.947800 2098.000000 -157.568900 -8.948200 2084.400000 -157.571000 -8.948600 2099.600000 -157.573100 -8.949000 2078.400000 -157.575200 -8.949400 2134.800000 -157.577200 -8.949800 2148.000000 -157.579400 -8.950100 2144.400000 -157.581500 -8.950400 2278.400000 -157.583600 -8.950800 2233.200000 -157.585700 -8.951100 2231.600000 -157.587700 -8.951400 2234.400000 -157.589800 -8.951700 2220.000000 -157.591900 -8.952000 2202.400000 -157.594000 -8.952300 2234.400000 -157.596000 -8.952600 2239.600000 -157.598100 -8.952900 2227.600000 -157.600200 -8.953200 2221.600000 -157.602200 -8.953500 2213.600000 -157.604300 -8.953800 2082.400000 -157.606400 -8.954100 2039.200000 -157.608400 -8.954400 1902.800000 -157.610500 -8.954700 1901.200000 -157.612600 -8.955000 1856.800000 -157.614700 -8.955300 1830.400000 -157.616700 -8.955600 1816.400000 -157.618800 -8.955900 1646.800000 -157.620900 -8.956200 1553.600000 -157.623000 -8.956400 1483.200000 -157.625000 -8.956700 1434.800000 -157.627100 -8.957000 1399.600000 -157.629200 -8.957300 1372.400000 -157.631200 -8.957600 1359.600000 -157.633400 -8.957800 1340.800000 -157.635400 -8.958100 1317.600000 -157.637500 -8.958400 1462.000000 -157.639600 -8.958700 1321.600000 -157.641700 -8.958900 1317.200000 -157.643700 -8.959200 1255.200000 -157.645800 -8.959500 1242.000000 -157.647800 -8.959900 1240.000000 -157.649900 -8.960100 1246.400000 -157.651900 -8.960500 1293.600000 -157.654000 -8.960800 1300.800000 -157.656100 -8.961100 1300.800000 -157.658100 -8.961500 1336.400000 -157.660200 -8.961800 1348.400000 -157.662200 -8.962100 1361.200000 -157.664200 -8.962400 1379.200000 -157.666300 -8.962800 1388.000000 -157.668300 -8.963100 1364.400000 -157.670400 -8.963500 1351.200000 -157.672500 -8.963800 1369.600000 -157.674600 -8.964200 1390.000000 -157.676700 -8.964600 1421.200000 -157.678700 -8.965000 1446.400000 -157.680800 -8.965400 1454.000000 -157.682900 -8.965800 1472.800000 -157.685000 -8.966200 1486.400000 -157.687100 -8.966500 1507.200000 -157.689200 -8.966800 1591.600000 -157.691300 -8.967100 1574.400000 -157.693400 -8.967400 1580.800000 -157.695500 -8.967700 1567.200000 -157.697600 -8.968000 1549.600000 -157.699600 -8.968200 1557.600000 -157.701500 -8.968500 1594.400000 -157.703400 -8.968800 1668.400000 -157.705400 -8.969100 1664.800000 -157.707300 -8.969300 1670.400000 -157.709300 -8.969600 1685.200000 -157.711200 -8.969900 1694.800000 -157.713100 -8.970200 1695.200000 -157.715100 -8.970400 1701.600000 -157.717000 -8.970700 1722.000000 -157.719000 -8.971000 1763.200000 -157.721000 -8.971300 1791.600000 -157.722900 -8.971500 1786.000000 -157.724900 -8.971800 1766.800000 -157.726900 -8.972100 1752.400000 -157.728800 -8.972300 1752.400000 -157.730800 -8.972600 1756.400000 -157.732700 -8.972800 1769.600000 -157.734600 -8.973000 1798.000000 -157.736600 -8.973300 1820.000000 -157.738500 -8.973500 1984.400000 -157.740400 -8.973700 1967.600000 -157.742400 -8.973900 1974.800000 -157.744400 -8.974200 1991.600000 -157.746200 -8.974400 2048.400000 -157.748100 -8.974600 2062.800000 -157.750000 -8.974800 2068.800000 -157.751900 -8.975000 2071.200000 -157.753700 -8.975200 2075.200000 -157.755600 -8.975500 2058.400000 -157.757600 -8.975700 2058.800000 -157.759500 -8.975900 2049.600000 -157.761500 -8.976100 2040.000000 -157.763500 -8.976300 2029.600000 -157.765400 -8.976600 2034.800000 -157.767400 -8.976800 2150.000000 -157.769300 -8.977000 2115.200000 -157.771300 -8.977200 2112.000000 -157.773300 -8.977500 2117.200000 -157.775200 -8.977700 2055.600000 -157.777200 -8.977900 2062.400000 -157.779100 -8.978100 2062.400000 -157.781100 -8.978300 2065.600000 -157.783100 -8.978500 2056.000000 -157.785000 -8.978800 2058.800000 -157.787000 -8.979000 2076.800000 -157.789000 -8.979200 2143.600000 -157.791000 -8.979400 2158.400000 -157.792900 -8.979700 2183.200000 -157.794900 -8.979900 2121.200000 -157.796800 -8.980200 2125.600000 -157.798700 -8.980400 2128.800000 -157.800700 -8.980700 2139.600000 -157.802600 -8.981000 2149.600000 -157.804600 -8.981200 2154.400000 -157.806500 -8.981500 2158.000000 -157.808400 -8.981900 2160.800000 -157.810400 -8.982200 2155.200000 -157.812300 -8.982600 2132.400000 -157.814300 -8.983000 2108.400000 -157.816200 -8.983300 2093.200000 -157.818100 -8.983700 2081.200000 -157.820000 -8.984100 2029.200000 -157.821900 -8.984500 2002.400000 -157.823600 -8.984800 2029.200000 -157.825300 -8.985200 1960.000000 -157.827000 -8.985600 1922.400000 -157.828600 -8.986000 1894.400000 -157.830300 -8.986400 1876.000000 -157.832000 -8.986700 1871.600000 -157.833600 -8.987100 1883.600000 -157.835300 -8.987400 1887.200000 -157.837000 -8.987800 1863.200000 -157.838700 -8.988200 1830.000000 -157.840400 -8.988500 1800.400000 -157.842200 -8.988900 1786.800000 -157.844100 -8.989200 1789.600000 -157.845900 -8.989500 1807.600000 -157.847800 -8.989800 1823.600000 -157.849600 -8.990100 1839.200000 -157.851500 -8.990400 1854.000000 -157.853300 -8.990600 1867.600000 -157.855100 -8.990900 1877.200000 -157.857000 -8.991200 1884.800000 -157.858700 -8.991400 1847.200000 -157.860500 -8.991700 1818.800000 -157.862300 -8.992000 1759.600000 -157.864100 -8.992300 1710.000000 -157.865900 -8.992500 1667.200000 -157.867700 -8.992800 1629.600000 -157.869600 -8.993100 1605.200000 -157.871400 -8.993400 1652.800000 -157.873200 -8.993600 1632.400000 -157.875100 -8.993900 1618.800000 -157.876900 -8.994200 1530.800000 -157.878700 -8.994500 1447.600000 -157.880500 -8.994800 1388.000000 -157.882300 -8.995100 1346.400000 -157.884100 -8.995300 1315.600000 -157.885800 -8.995600 1285.600000 -157.887600 -8.995900 1260.800000 -157.889500 -8.996000 1226.800000 -157.891300 -8.996200 1183.600000 -157.893400 -8.996300 1159.600000 -157.895500 -8.996400 1139.600000 -157.897600 -8.996400 1140.400000 -157.899700 -8.996500 1160.000000 -157.901900 -8.996500 1187.200000 -157.904000 -8.996600 1062.000000 -157.906100 -8.996600 1036.800000 -157.908200 -8.996700 1014.800000 -157.910300 -8.996600 993.600000 -157.912300 -8.996600 996.400000 -157.914500 -8.996600 1026.400000 -157.916600 -8.996600 1130.400000 -157.918700 -8.996600 1071.600000 -157.920800 -8.996600 1039.200000 -157.922800 -8.996600 1051.600000 -157.924900 -8.996600 1099.600000 -157.926900 -8.996600 1138.800000 -157.929000 -8.996600 1169.600000 -157.931100 -8.996500 1192.000000 -157.933200 -8.996500 1189.200000 -157.935300 -8.996500 1179.200000 -157.937400 -8.996400 1163.200000 -157.939500 -8.996300 1155.200000 -157.941600 -8.996100 1136.000000 -157.943700 -8.996000 1063.200000 -157.945400 -8.995900 963.200000 -157.947000 -8.995800 890.400000 -157.948300 -8.995700 837.600000 -157.949400 -8.995700 786.400000 -157.950300 -8.995600 769.200000 -157.951100 -8.995500 720.400000 -157.951800 -8.995500 707.200000 -157.952500 -8.995500 680.000000 -157.953100 -8.995500 664.400000 -157.953800 -8.995500 639.600000 -157.954300 -8.995500 620.800000 -157.954900 -8.995400 606.000000 -157.955500 -8.995400 585.200000 -157.956000 -8.995400 571.600000 -157.956500 -8.995300 548.000000 -157.957000 -8.995300 539.600000 -157.957600 -8.995100 529.600000 -157.958000 -8.994700 538.000000 -157.958400 -8.994200 550.000000 -157.958800 -8.993700 555.200000 -157.959200 -8.993300 552.800000 -157.959600 -8.992700 542.000000 -157.960000 -8.992300 528.400000 -157.960400 -8.991800 514.000000 -157.960800 -8.991300 498.400000 -157.961200 -8.990800 484.800000 -157.961700 -8.990300 474.400000 -157.962100 -8.989800 470.400000 -157.962500 -8.989300 471.200000 -157.963000 -8.988800 462.800000 -157.963500 -8.988300 453.600000 -157.963900 -8.987900 448.400000 -157.964400 -8.987400 442.000000 -157.964900 -8.986900 444.000000 -157.965300 -8.986400 445.600000 -157.965800 -8.985900 450.400000 -157.966200 -8.985400 454.000000 -157.966700 -8.984900 462.000000 -157.967200 -8.984500 464.400000 -157.967700 -8.984000 468.400000 -157.968300 -8.983600 472.400000 -157.968900 -8.983200 475.600000 -157.969600 -8.982900 481.200000 -157.970300 -8.982600 485.200000 -157.971000 -8.982500 488.000000 -157.971700 -8.982400 492.800000 -157.972500 -8.982400 492.400000 -157.973100 -8.982500 486.000000 -157.973900 -8.982500 479.600000 -157.974600 -8.982600 480.000000 -157.975400 -8.982700 486.000000 -157.976200 -8.982800 494.400000 -157.976900 -8.983100 490.800000 -157.977500 -8.983500 493.200000 -157.978300 -8.983900 496.000000 -157.979000 -8.984400 495.200000 -157.979700 -8.985000 492.000000 -157.980400 -8.985800 484.000000 -157.981000 -8.986500 490.800000 -157.981600 -8.987400 479.600000 -157.982100 -8.988300 465.200000 -157.982500 -8.989200 461.600000 -157.983000 -8.990200 460.400000 -157.983300 -8.991200 446.400000 -157.983600 -8.992200 436.800000 -157.983800 -8.993200 450.400000 -157.983800 -8.994300 458.000000 -157.983800 -8.995400 458.400000 -157.983800 -8.996400 458.000000 -157.983600 -8.997500 460.800000 -157.983400 -8.998600 465.200000 -157.983100 -8.999700 470.800000 -157.982600 -9.000700 471.200000 -157.981900 -9.001600 470.800000 -157.981100 -9.002400 474.000000 -157.980200 -9.003200 480.000000 -157.979200 -9.003900 474.000000 -157.978200 -9.004400 474.800000 -157.977100 -9.005000 477.600000 -157.976000 -9.005500 477.200000 -157.974900 -9.005900 478.800000 -157.973700 -9.006200 486.000000 -157.972600 -9.006500 484.400000 -157.971500 -9.006700 504.400000 -157.970300 -9.006700 517.600000 -157.969300 -9.006400 528.400000 -157.968300 -9.006000 524.000000 -157.967400 -9.005600 520.400000 -157.966400 -9.005100 535.200000 -157.965300 -9.004600 535.600000 -157.964400 -9.004000 542.400000 -157.963600 -9.003400 548.400000 -157.963100 -9.002800 540.000000 -157.962700 -9.002200 432.400000 -157.962200 -9.001700 378.400000 -157.961500 -9.001300 342.000000 -157.960900 -9.000900 313.600000 -157.960300 -9.000500 298.000000 -157.959700 -9.000000 299.600000 -157.959100 -8.999600 330.000000 -157.958700 -8.999100 360.400000 -157.958300 -8.998500 399.200000 -157.958100 -8.997900 431.600000 -157.958000 -8.997300 456.000000 -157.957900 -8.996700 478.400000 -157.957800 -8.996100 509.200000 -157.957900 -8.995700 498.400000 -157.958200 -8.995900 482.800000 -157.958200 -8.996400 468.000000 -157.958200 -8.997300 438.000000 -157.958300 -8.998500 386.800000 -157.958400 -8.999700 341.600000 -157.958700 -9.000900 358.800000 -157.958800 -9.001800 398.800000 -157.958700 -9.002100 402.800000 -157.958700 -9.002400 407.200000 -157.958700 -9.002700 424.800000 -157.958700 -9.003000 444.400000 -157.958700 -9.003200 471.600000 -157.958500 -9.003100 466.800000 -157.958400 -9.003300 461.600000 -157.958300 -9.003400 476.800000 -157.958100 -9.003400 480.000000 -157.958000 -9.003300 468.400000 -157.957900 -9.003400 478.400000 -157.957700 -9.003600 477.200000 -157.957600 -9.003600 486.400000 -157.957500 -9.003400 482.800000 -157.957400 -9.003000 463.200000 -157.957300 -9.002800 457.200000 -157.957200 -9.002300 440.800000 -157.957200 -9.001800 429.200000 -157.957100 -9.001500 413.600000 -157.957000 -9.001400 412.000000 -157.956900 -9.000800 406.400000 -157.956800 -9.000100 422.400000 -157.956800 -8.999700 413.600000 -157.956700 -8.999400 422.000000 -157.956700 -8.998900 434.800000 -157.956600 -8.998600 440.400000 -157.956700 -8.998200 474.000000 -157.956700 -8.997700 476.800000 -157.956800 -8.997500 473.200000 -157.956800 -8.997400 478.000000 -157.956700 -8.997300 502.000000 -157.956700 -8.997100 500.400000 -157.956800 -8.996900 499.200000 -157.957000 -8.996400 514.400000 -157.957200 -8.996000 521.600000 -157.957300 -8.995600 524.000000 -157.957500 -8.995300 535.600000 -157.957600 -8.994900 543.600000 -157.957800 -8.994500 546.000000 -157.958000 -8.994100 569.600000 -157.958100 -8.993700 572.400000 -157.958300 -8.993400 579.200000 -157.958400 -8.993100 576.000000 -157.958600 -8.992900 573.200000 -157.958900 -8.992500 564.000000 -157.959300 -8.992200 550.000000 -157.959800 -8.991700 536.000000 -157.960100 -8.991300 522.800000 -157.960300 -8.991100 517.600000 -157.960400 -8.990900 511.600000 -157.960500 -8.990800 512.400000 -157.960700 -8.990500 502.000000 -157.960800 -8.990300 498.000000 -157.960900 -8.990200 496.400000 -157.961000 -8.990000 495.200000 -157.961100 -8.989900 494.000000 -157.961200 -8.989700 493.200000 -157.961600 -8.989300 492.400000 -157.961900 -8.989000 491.600000 -157.962100 -8.988800 487.600000 -157.962200 -8.988700 486.800000 -157.962200 -8.988600 488.000000 -157.962400 -8.988400 486.400000 -157.962800 -8.987900 478.800000 -157.963100 -8.987700 477.200000 -157.963200 -8.987500 473.200000 -157.963400 -8.987300 475.600000 -157.963700 -8.987000 469.600000 -157.963900 -8.986800 469.200000 -157.964100 -8.986500 472.800000 -157.964400 -8.986200 490.400000 -157.964700 -8.985900 474.000000 -157.964900 -8.985600 476.400000 -157.965000 -8.985500 481.200000 -157.965300 -8.985300 482.400000 -157.965600 -8.984900 481.200000 -157.965900 -8.984700 484.800000 -157.966500 -8.984500 477.200000 -157.967000 -8.984300 472.000000 -157.967300 -8.984200 469.600000 -157.967500 -8.984100 470.000000 -157.967900 -8.983900 469.600000 -157.968400 -8.983700 469.600000 -157.968700 -8.983600 469.200000 -157.969100 -8.983400 470.400000 -157.969500 -8.983200 474.000000 -157.969800 -8.983100 476.000000 -157.969900 -8.983000 477.200000 -157.970300 -8.982900 480.000000 -157.970900 -8.982600 486.000000 -157.971400 -8.982600 486.000000 -157.972000 -8.982600 487.600000 -157.972400 -8.982600 485.200000 -157.972800 -8.982600 484.000000 -157.973200 -8.982600 483.600000 -157.973700 -8.982600 478.400000 -157.974000 -8.982600 478.800000 -157.974500 -8.982500 484.800000 -157.975100 -8.982500 490.400000 -157.975600 -8.982400 498.800000 -157.976000 -8.982600 498.000000 -157.976600 -8.983000 504.000000 -157.977200 -8.983400 490.400000 -157.977800 -8.983700 495.600000 -157.978300 -8.983900 495.600000 -157.978800 -8.984200 500.000000 -157.979200 -8.984400 499.600000 -157.979400 -8.984600 499.600000 -157.979800 -8.984800 502.000000 -157.980200 -8.985300 495.200000 -157.980600 -8.985700 494.000000 -157.981100 -8.986100 496.000000 -157.981500 -8.986500 504.800000 -157.981900 -8.986900 502.800000 -157.982200 -8.987300 502.000000 -157.982400 -8.987800 488.800000 -157.982800 -8.988400 484.000000 -157.983000 -8.989100 475.600000 -157.983100 -8.989700 470.000000 -157.983300 -8.990300 466.400000 -157.983600 -8.991100 462.000000 -157.983700 -8.991600 450.000000 -157.983800 -8.991900 444.400000 -157.984000 -8.992500 463.600000 -157.984300 -8.993200 469.600000 -157.984500 -8.993800 474.800000 -157.984400 -8.994600 475.600000 -157.984400 -8.995200 473.200000 -157.984300 -8.995700 473.200000 -157.984300 -8.996200 474.400000 -157.984300 -8.996800 476.400000 -157.984200 -8.997300 481.600000 -157.984200 -8.997900 485.200000 -157.984200 -8.998400 486.000000 -157.984000 -8.999100 488.800000 -157.983800 -8.999800 494.400000 -157.983500 -9.000400 492.800000 -157.983100 -9.001000 492.400000 -157.982800 -9.001500 492.800000 -157.982500 -9.001900 492.000000 -157.981900 -9.002400 492.000000 -157.981500 -9.002900 494.400000 -157.981200 -9.003200 502.000000 -157.981000 -9.003400 504.400000 -157.980600 -9.003800 504.800000 -157.980400 -9.004100 506.400000 -157.980300 -9.004300 517.200000 -157.980300 -9.004400 514.000000 -157.980300 -9.004600 516.800000 -157.980300 -9.004700 520.800000 -157.980300 -9.004800 522.800000 -157.980300 -9.004900 526.000000 -157.980300 -9.005000 530.000000 -157.980300 -9.005100 532.800000 -157.980300 -9.005200 536.400000 -157.980300 -9.005300 539.600000 -157.980300 -9.005400 541.600000 -157.980200 -9.005500 544.000000 -157.980200 -9.005700 548.800000 -157.980100 -9.005800 549.600000 -157.980100 -9.005900 552.000000 -157.980100 -9.006000 555.200000 -157.980100 -9.006100 557.600000 -157.980200 -9.006100 560.800000 -157.980200 -9.006200 563.600000 -157.980200 -9.006300 565.600000 -157.980200 -9.006400 568.800000 -157.980300 -9.006400 570.400000 -157.980300 -9.006500 573.200000 -157.980400 -9.006600 575.600000 -157.980400 -9.006600 577.200000 -157.980400 -9.006700 580.400000 -157.980500 -9.006700 583.200000 -157.980500 -9.006800 585.200000 -157.980600 -9.006900 588.400000 -157.980700 -9.006900 590.800000 -157.980800 -9.006900 597.200000 -157.980800 -9.006900 594.400000 -157.980900 -9.007000 597.200000 -157.980900 -9.007000 597.600000 -157.981000 -9.007000 600.800000 -157.981100 -9.007000 602.800000 -157.981100 -9.007000 603.600000 -157.981200 -9.007000 607.600000 -157.981300 -9.007100 606.000000 -157.981300 -9.007100 610.400000 -157.981400 -9.007100 610.000000 -157.981400 -9.007200 612.400000 -157.981500 -9.007400 616.000000 -157.981300 -9.007400 614.400000 -157.980900 -9.007100 600.000000 -157.980700 -9.006900 590.000000 -157.980600 -9.006700 582.800000 -157.980600 -9.006500 577.600000 -157.980600 -9.006300 570.000000 -157.980500 -9.006000 561.200000 -157.980400 -9.005600 548.000000 -157.980300 -9.005300 536.400000 -157.980100 -9.004900 522.000000 -157.979900 -9.004700 514.000000 -157.979700 -9.004800 515.200000 -157.979600 -9.004900 513.600000 -157.979500 -9.005000 517.200000 -157.979500 -9.005100 516.800000 -157.979400 -9.005200 519.200000 -157.979400 -9.005300 523.600000 -157.979300 -9.005500 528.000000 -157.979100 -9.005600 525.600000 -157.979000 -9.005800 528.000000 -157.978500 -9.006100 528.000000 -157.977900 -9.006400 529.600000 -157.977300 -9.006600 527.200000 -157.976700 -9.006700 526.000000 -157.976100 -9.006900 523.200000 -157.975600 -9.007000 520.000000 -157.975100 -9.007100 520.000000 -157.974500 -9.007100 516.400000 -157.974000 -9.007200 513.600000 -157.973400 -9.007200 508.800000 -157.972900 -9.007200 507.200000 -157.972400 -9.007300 509.600000 -157.971900 -9.007300 513.600000 -157.971400 -9.007300 520.000000 -157.971000 -9.007400 526.800000 -157.970600 -9.007400 535.600000 -157.970200 -9.007500 550.000000 -157.969700 -9.007400 548.800000 -157.969300 -9.007400 555.200000 -157.968900 -9.007400 561.600000 -157.968500 -9.007300 564.800000 -157.968100 -9.007300 564.800000 -157.967700 -9.007200 563.200000 -157.967300 -9.007100 566.400000 -157.966800 -9.007000 566.400000 -157.966400 -9.006900 572.400000 -157.966000 -9.006800 582.400000 -157.965600 -9.006700 587.200000 -157.965200 -9.006500 591.600000 -157.964800 -9.006400 596.400000 -157.964400 -9.006400 601.200000 -157.964000 -9.006300 598.400000 -157.963600 -9.006200 615.600000 -157.963200 -9.006100 624.800000 -157.962900 -9.006000 617.600000 -157.962500 -9.005900 634.800000 -157.962100 -9.005800 641.600000 -157.961600 -9.005700 646.400000 -157.961300 -9.005600 654.000000 -157.960900 -9.005500 654.800000 -157.960600 -9.005400 631.200000 -157.960200 -9.005300 611.600000 -157.959900 -9.005300 626.800000 -157.959500 -9.005100 614.000000 -157.959000 -9.005000 583.600000 -157.958600 -9.004900 590.400000 -157.958300 -9.004800 551.600000 -157.957900 -9.004600 548.800000 -157.957600 -9.004400 537.200000 -157.957300 -9.004200 524.000000 -157.957100 -9.004000 511.600000 -157.956900 -9.003600 499.200000 -157.956700 -9.003400 502.000000 -157.956600 -9.003000 481.200000 -157.956400 -9.002700 482.800000 -157.956300 -9.002400 475.600000 -157.956200 -9.002200 474.800000 -157.956300 -9.001900 463.600000 -157.956300 -9.001600 450.000000 -157.956300 -9.001300 451.200000 -157.956300 -9.001000 446.000000 -157.956400 -9.000700 435.600000 -157.956400 -9.000400 434.000000 -157.956500 -9.000100 425.200000 -157.956400 -8.999800 431.600000 -157.956400 -8.999500 436.800000 -157.956300 -8.999200 441.600000 -157.956300 -8.998900 453.200000 -157.956200 -8.998600 462.000000 -157.956300 -8.998200 480.800000 -157.956300 -8.997900 484.800000 -157.956300 -8.997600 503.200000 -157.956300 -8.997300 517.600000 -157.956400 -8.997000 512.000000 -157.956500 -8.996700 518.400000 -157.956600 -8.996400 528.000000 -157.956700 -8.996200 529.600000 -157.956800 -8.995900 542.000000 -157.956800 -8.995600 552.000000 -157.956800 -8.995400 554.800000 -157.956800 -8.995300 553.200000 -157.956800 -8.995200 553.600000 -157.956900 -8.995000 555.200000 -157.957000 -8.994800 560.000000 -157.957200 -8.994600 556.400000 -157.957300 -8.994500 562.000000 -157.957500 -8.994300 568.800000 -157.957500 -8.994100 565.600000 -157.957600 -8.994000 570.800000 -157.957500 -8.993900 568.800000 -157.957700 -8.993700 577.600000 -157.957700 -8.993600 578.000000 -157.957800 -8.993400 597.600000 -157.957900 -8.993200 591.600000 -157.957900 -8.993000 595.600000 -157.957900 -8.992900 596.800000 -157.957800 -8.992900 600.400000 -157.957700 -8.992900 604.400000 -157.957500 -8.992800 609.600000 -157.957400 -8.992900 614.800000 -157.957200 -8.992900 618.800000 -157.957000 -8.992900 607.200000 -157.956800 -8.993000 618.800000 -157.956600 -8.993100 612.400000 -157.956400 -8.993100 611.200000 -157.956200 -8.993200 620.800000 -157.955900 -8.993300 623.600000 -157.955700 -8.993400 652.800000 -157.955400 -8.993500 641.600000 -157.955200 -8.993600 650.800000 -157.954900 -8.993700 653.600000 -157.954600 -8.993800 655.200000 -157.954400 -8.993900 655.600000 -157.954000 -8.993900 662.800000 -157.953900 -8.993900 664.400000 -157.953900 -8.994200 663.600000 -157.954100 -8.994800 648.000000 -157.954300 -8.995300 636.400000 -157.954500 -8.995600 611.200000 -157.954800 -8.995900 589.600000 -157.955100 -8.996300 568.000000 -157.955300 -8.996600 553.600000 -157.955600 -8.997100 528.800000 -157.955900 -8.997500 509.200000 -157.956100 -8.998000 474.000000 -157.956400 -8.998500 443.200000 -157.956700 -8.999000 420.000000 -157.957000 -8.999400 405.600000 -157.957300 -9.000000 386.800000 -157.957600 -9.000500 389.600000 -157.957900 -9.001200 393.600000 -157.958100 -9.001800 417.200000 -157.958300 -9.002500 459.200000 -157.958400 -9.003200 498.000000 -157.958500 -9.003800 544.800000 -157.958500 -9.004100 566.000000 -157.958500 -9.004200 558.000000 -157.958400 -9.004200 530.000000 -157.958400 -9.003800 506.800000 -157.958300 -9.003400 488.800000 -157.958300 -9.002900 440.800000 -157.958200 -9.002500 418.800000 -157.958100 -9.002300 408.000000 -157.957900 -9.002200 414.400000 -157.957700 -9.002100 445.200000 -157.957600 -9.002100 440.000000 -157.957600 -9.002000 438.400000 -157.957700 -9.002000 435.600000 -157.957700 -9.001900 431.600000 -157.957700 -9.001900 427.600000 -157.957500 -9.002100 440.400000 -157.957300 -9.002100 454.000000 -157.957100 -9.002100 459.200000 -157.957000 -9.002200 466.400000 -157.956900 -9.002300 469.600000 -157.956800 -9.002300 482.800000 -157.956700 -9.002400 484.800000 -157.956600 -9.002400 486.000000 -157.956500 -9.002400 495.200000 -157.956400 -9.002500 499.200000 -157.956400 -9.002500 493.600000 -157.956300 -9.002500 493.200000 -157.956300 -9.002500 511.200000 -157.956200 -9.002500 511.200000 -157.956100 -9.002500 510.800000 -157.956000 -9.002500 513.600000 -157.955900 -9.002400 511.200000 -157.955800 -9.002400 504.000000 -157.956100 -9.002600 489.200000 -157.956700 -9.002900 478.800000 -157.957000 -9.003000 489.600000 -157.957100 -9.003100 498.400000 -157.957100 -9.003000 490.800000 -157.957100 -9.002900 503.200000 -157.957100 -9.002800 487.600000 -157.957100 -9.002800 488.000000 -157.957100 -9.002800 490.000000 -157.957100 -9.002900 488.800000 -157.957100 -9.002900 480.800000 -157.957100 -9.003000 503.200000 -157.957100 -9.003100 500.800000 -157.957100 -9.003100 498.000000 -157.957100 -9.003100 492.400000 -157.957100 -9.003100 503.600000 -157.957100 -9.003100 505.200000 -157.957200 -9.003100 498.000000 -157.957200 -9.003100 510.000000 -157.957200 -9.003100 490.000000 -157.957300 -9.003200 492.400000 -157.957300 -9.003300 516.400000 -157.957300 -9.003200 496.400000 -157.957300 -9.003300 510.800000 -157.957300 -9.003400 502.000000 -157.957400 -9.003400 526.800000 -157.957400 -9.003400 521.600000 -157.957400 -9.003400 515.600000 -157.957400 -9.003500 520.800000 -157.957400 -9.003500 506.800000 -157.957400 -9.003400 510.400000 -157.957400 -9.003300 506.800000 -157.957300 -9.003200 503.600000 -157.957200 -9.003200 492.800000 -157.957400 -9.003200 468.400000 -157.957500 -9.003000 469.600000 -157.957800 -9.002800 443.600000 -157.958200 -9.002500 434.400000 -157.958600 -9.002300 411.600000 -157.958900 -9.002000 392.000000 -157.959400 -9.001800 369.600000 -157.959900 -9.001500 358.000000 -157.960400 -9.001200 417.200000 -157.960700 -9.001000 331.600000 -157.960600 -9.001000 347.200000 -157.960400 -9.000900 348.000000 -157.960400 -9.001100 358.800000 -157.960300 -9.001200 354.800000 -157.960200 -9.001300 372.000000 -157.960200 -9.001300 370.000000 -157.960100 -9.001400 385.600000 -157.960000 -9.001700 408.800000 -157.959900 -9.001800 400.400000 -157.959900 -9.002000 416.800000 -157.959900 -9.002100 430.800000 -157.959800 -9.002300 437.600000 -157.959700 -9.002400 448.800000 -157.959700 -9.002400 438.400000 -157.959700 -9.002400 443.600000 -157.959600 -9.002400 460.800000 -157.959600 -9.002300 444.000000 -157.959500 -9.002300 430.800000 -157.959400 -9.002300 435.200000 -157.959300 -9.002400 454.000000 -157.959200 -9.002500 451.200000 -157.959200 -9.002500 451.600000 -157.959100 -9.002600 448.400000 -157.958500 -9.003100 456.000000 -157.957900 -9.002900 452.800000 -157.957700 -9.002500 431.200000 -157.957900 -9.001800 402.400000 -157.958300 -9.000900 359.600000 -157.958800 -8.999900 328.800000 -157.959400 -8.998900 325.200000 -157.959900 -8.997900 360.800000 -157.960500 -8.996900 382.400000 -157.961100 -8.995900 431.200000 -157.961700 -8.994900 437.600000 -157.962300 -8.993900 441.600000 -157.962800 -8.992900 424.400000 -157.963400 -8.991800 404.000000 -157.963900 -8.990800 394.400000 -157.964500 -8.989800 396.000000 -157.965000 -8.988800 391.200000 -157.965600 -8.987900 408.800000 -157.966100 -8.986900 417.600000 -157.966700 -8.986000 434.800000 -157.967300 -8.985200 443.200000 -157.968100 -8.985400 419.600000 -157.969000 -8.985900 391.600000 -157.969900 -8.986300 360.400000 -157.970900 -8.986800 334.000000 -157.971900 -8.987200 313.200000 -157.972900 -8.987700 288.000000 -157.973900 -8.988100 268.000000 -157.974900 -8.988500 274.800000 -157.975900 -8.989000 273.200000 -157.977000 -8.989400 292.400000 -157.978000 -8.989900 316.000000 -157.979100 -8.990300 336.800000 -157.980200 -8.990800 364.400000 -157.981200 -8.991200 397.200000 -157.982300 -8.991600 414.000000 -157.983300 -8.992000 438.800000 -157.983900 -8.992800 446.000000 -157.983500 -8.993500 443.200000 -157.982900 -8.994600 428.400000 -157.982400 -8.995700 407.600000 -157.981800 -8.996900 392.800000 -157.981100 -8.998000 382.400000 -157.980400 -8.999100 378.800000 -157.979700 -9.000300 381.200000 -157.979000 -9.001300 394.800000 -157.978300 -9.002500 418.400000 -157.977500 -9.003600 434.000000 -157.976500 -9.003900 426.400000 -157.975300 -9.003700 411.200000 -157.974000 -9.003600 394.000000 -157.972600 -9.003300 382.800000 -157.971200 -9.003100 393.200000 -157.969800 -9.002800 396.000000 -157.968400 -9.002500 432.000000 -157.966900 -9.002200 444.400000 -157.965500 -9.001900 473.200000 -157.964000 -9.001600 490.000000 -157.962500 -9.001400 360.800000 -157.961200 -9.001100 334.400000 -157.960000 -9.000800 325.200000 -157.958800 -9.000600 340.800000 -157.957600 -9.000400 390.800000 -157.956500 -9.000200 443.200000 -157.955300 -9.000000 479.600000 -157.954100 -9.000000 565.200000 -157.953600 -9.001000 579.200000 -157.954200 -9.003200 584.400000 -157.954800 -9.005800 663.600000 -157.955500 -9.008400 808.800000 -157.956200 -9.011100 862.400000 -157.957000 -9.013700 898.000000 -157.958300 -9.015900 941.600000 -157.959700 -9.018200 978.000000 -157.961300 -9.020400 1012.800000 -157.962800 -9.022600 1058.400000 -157.964400 -9.024800 1106.400000 -157.966100 -9.027000 1156.400000 -157.967600 -9.029100 1202.000000 -157.968700 -9.031500 1258.000000 -157.969700 -9.033700 1311.200000 -157.970200 -9.035200 1343.200000 -157.970600 -9.036200 1366.400000 -157.971000 -9.037000 1381.200000 -157.971300 -9.037600 1394.800000 -157.971500 -9.038100 1406.000000 -157.971700 -9.038500 1414.400000 -157.972000 -9.039000 1424.000000 -157.972400 -9.039400 1432.000000 -157.972900 -9.039800 1438.400000 -157.973100 -9.040000 1443.600000 -157.973500 -9.040400 1452.400000 -157.973700 -9.040800 1459.600000 -157.974100 -9.041100 1466.800000 -157.974500 -9.041400 1472.800000 -157.974700 -9.041600 1476.400000 -157.974600 -9.041600 1478.800000 -157.974600 -9.041700 1478.800000 -157.974700 -9.041800 1480.800000 -157.974700 -9.041800 1481.200000 -157.974600 -9.041800 1481.200000 -157.974800 -9.041900 1482.400000 -157.974800 -9.041900 1482.000000 -157.974900 -9.041900 1482.400000 -157.974800 -9.041800 1481.200000 -157.974800 -9.041700 1478.800000 -157.974800 -9.041700 1479.600000 -157.974700 -9.041700 1478.800000 -157.974800 -9.041700 1478.800000 -157.974900 -9.041700 1478.400000 -157.974800 -9.041600 1478.000000 -157.974900 -9.041600 1477.600000 -157.974900 -9.041600 1476.800000 -157.974800 -9.041500 1476.400000 -157.974800 -9.041500 1477.200000 -157.974800 -9.041600 1478.000000 -157.974800 -9.041600 1478.000000 -157.974800 -9.041600 1478.000000 -157.974800 -9.041600 1477.200000 -157.974800 -9.041700 1476.800000 -157.974700 -9.041600 1476.800000 -157.974700 -9.041600 1476.800000 -157.974800 -9.041600 1476.800000 -157.974800 -9.041600 1478.000000 -157.974800 -9.041700 1478.000000 -157.974900 -9.041700 1478.400000 -157.974900 -9.041600 1479.600000 -157.974800 -9.041600 1478.800000 -157.974900 -9.041700 1479.200000 -157.974900 -9.041700 1478.400000 -157.974900 -9.041700 1478.400000 -157.974800 -9.041600 1477.600000 -157.974700 -9.041600 1476.000000 -157.974800 -9.041600 1476.800000 -157.974900 -9.041700 1478.800000 -157.974800 -9.041700 1479.600000 -157.974800 -9.041700 1478.800000 -157.974800 -9.041700 1479.200000 -157.974800 -9.041700 1479.200000 -157.974800 -9.041700 1478.800000 -157.974900 -9.041700 1479.200000 -157.974800 -9.041700 1479.200000 -157.974900 -9.041700 1478.800000 -157.974800 -9.041700 1478.800000 -157.974900 -9.041700 1479.600000 -157.974900 -9.041700 1479.200000 -157.974900 -9.041700 1480.000000 -157.974900 -9.041700 1479.600000 -157.974900 -9.041700 1478.800000 -157.974900 -9.041700 1479.600000 -157.974900 -9.041700 1477.600000 -157.975000 -9.041700 1478.400000 -157.974900 -9.041600 1477.600000 -157.974900 -9.041600 1476.800000 -157.974900 -9.041600 1476.800000 -157.974800 -9.041600 1476.800000 -157.974800 -9.041600 1476.400000 -157.974800 -9.041500 1476.000000 -157.974800 -9.041600 1476.400000 -157.974700 -9.041500 1474.400000 -157.974500 -9.041400 1473.600000 -157.974300 -9.041400 1472.400000 -157.974100 -9.041300 1471.600000 -157.974200 -9.041300 1470.400000 -157.974500 -9.041300 1470.800000 -157.974800 -9.041400 1474.400000 -157.975300 -9.041800 1480.400000 -157.976000 -9.041400 1470.400000 -157.976300 -9.039700 1433.200000 -157.976800 -9.037200 1373.200000 -157.977300 -9.034600 1311.600000 -157.977900 -9.031900 1250.800000 -157.978500 -9.029100 1184.800000 -157.979300 -9.026500 1122.800000 -157.980100 -9.023900 1058.400000 -157.981200 -9.021400 1000.800000 -157.982300 -9.019200 947.600000 -157.982900 -9.017700 915.600000 -157.983400 -9.016500 890.000000 -157.983800 -9.015600 873.600000 -157.984100 -9.014800 858.000000 -157.984500 -9.014200 844.400000 -157.984900 -9.013600 835.200000 -157.985200 -9.013100 824.000000 -157.985500 -9.012600 814.400000 -157.985800 -9.012100 806.000000 -157.986000 -9.011800 800.800000 -157.986100 -9.011600 801.200000 -157.986100 -9.011500 796.800000 -157.986000 -9.011100 785.200000 -157.985700 -9.010700 771.200000 -157.985400 -9.010600 762.400000 -157.985100 -9.010300 750.400000 -157.984800 -9.010100 740.800000 -157.984600 -9.010000 736.400000 -157.984500 -9.010000 733.600000 -157.984400 -9.010000 732.400000 -157.984200 -9.010100 731.200000 -157.984000 -9.009800 722.000000 -157.983900 -9.009700 718.000000 -157.983900 -9.009300 708.400000 -157.983800 -9.009200 703.200000 -157.983700 -9.009000 697.200000 -157.983600 -9.008900 694.800000 -157.983500 -9.008800 690.800000 -157.983500 -9.008600 685.600000 -157.983600 -9.008400 680.800000 -157.983700 -9.008100 675.200000 -157.983800 -9.007500 660.400000 -157.983600 -9.007100 644.400000 -157.983100 -9.006800 631.600000 -157.982500 -9.006700 616.400000 -157.982000 -9.006500 603.200000 -157.981700 -9.006600 597.600000 -157.981400 -9.006600 596.000000 -157.981300 -9.006700 595.600000 -157.981300 -9.006900 598.800000 -157.981300 -9.007000 604.400000 -157.981300 -9.007200 607.200000 -157.981300 -9.007300 610.400000 -157.981200 -9.007400 614.400000 -157.981100 -9.007500 615.600000 -157.981000 -9.007600 612.400000 -157.980900 -9.007600 612.000000 -157.980700 -9.007700 610.800000 -157.980600 -9.007800 611.200000 -157.980600 -9.007800 612.400000 -157.980600 -9.008000 615.600000 -157.980500 -9.008000 616.800000 -157.980200 -9.007900 610.000000 -157.980000 -9.007900 605.200000 -157.979800 -9.007900 601.200000 -157.979700 -9.007900 600.800000 -157.979600 -9.008000 599.600000 -157.979500 -9.008000 600.400000 -157.979500 -9.008100 602.400000 -157.979500 -9.008200 604.800000 -157.979500 -9.008300 607.600000 -157.979300 -9.008300 605.600000 -157.979000 -9.008300 601.600000 -157.978800 -9.008300 598.800000 -157.978600 -9.008300 596.800000 -157.978500 -9.008300 596.000000 -157.978400 -9.008300 598.400000 -157.978300 -9.008200 590.800000 -157.978200 -9.007900 582.400000 -157.978800 -9.007400 576.000000 -157.979800 -9.006600 577.200000 -157.981100 -9.005500 570.800000 -157.982600 -9.004400 555.600000 -157.984100 -9.003100 556.000000 -157.985700 -9.001700 574.400000 -157.987300 -9.000400 610.800000 -157.988900 -8.999000 634.000000 -157.990300 -8.997500 653.600000 -157.991600 -8.995900 688.800000 -157.992900 -8.994300 721.600000 -157.994200 -8.992600 760.000000 -157.995500 -8.990900 806.400000 -157.996800 -8.989300 856.000000 -157.998100 -8.987600 904.400000 -157.999300 -8.986000 946.400000 -158.000600 -8.984300 1002.400000 -158.001900 -8.982600 1036.800000 -158.003200 -8.980900 1076.000000 -158.004500 -8.979300 1110.400000 -158.005900 -8.977700 1133.200000 -158.007200 -8.976100 1152.800000 -158.008600 -8.974400 1170.000000 -158.009800 -8.973100 1181.200000 -158.010600 -8.972200 1184.000000 -158.011100 -8.971500 1188.000000 -158.011300 -8.971000 1190.000000 -158.011300 -8.970800 1191.600000 -158.011300 -8.970800 1192.000000 -158.011200 -8.970700 1191.200000 -158.011000 -8.970500 1191.200000 -158.010800 -8.970400 1189.600000 -158.010700 -8.970300 1188.800000 -158.010900 -8.970400 1191.200000 -158.011200 -8.970500 1192.000000 -158.011300 -8.970400 1193.200000 -158.011300 -8.970400 1193.200000 -158.011200 -8.970200 1192.400000 -158.011100 -8.970100 1192.800000 -158.011000 -8.970000 1192.400000 -158.011300 -8.970000 1192.800000 -158.011700 -8.970000 1193.200000 -158.011900 -8.970000 1194.000000 -158.011900 -8.970000 1194.800000 -158.011800 -8.969800 1195.200000 -158.011700 -8.969700 1194.800000 -158.011600 -8.969600 1194.000000 -158.011600 -8.969500 1195.200000 -158.011600 -8.969400 1195.200000 -158.011600 -8.969300 1194.800000 -158.011400 -8.969100 1195.600000 -158.011300 -8.969000 1196.000000 -158.011100 -8.968800 1194.800000 -158.010900 -8.968700 1193.200000 -158.011300 -8.968700 1195.600000 -158.011700 -8.968800 1196.400000 -158.011900 -8.968900 1196.000000 -158.011900 -8.968800 1196.000000 -158.011800 -8.968700 1195.600000 -158.011700 -8.968600 1196.000000 -158.011700 -8.968500 1196.000000 -158.011800 -8.968400 1197.200000 -158.011900 -8.968400 1197.600000 -158.011800 -8.968200 1197.200000 -158.011700 -8.968100 1201.600000 -158.011500 -8.967900 1199.200000 -158.011300 -8.967800 1198.000000 -158.011200 -8.967700 1198.800000 -158.011500 -8.967700 1198.000000 -158.011900 -8.967800 1199.200000 -158.012100 -8.967800 1199.200000 -158.012200 -8.967800 1200.800000 -158.012100 -8.967700 1199.600000 -158.011900 -8.967500 1200.400000 -158.011700 -8.967400 1198.400000 -158.011500 -8.967200 1198.000000 -158.011300 -8.967000 1197.200000 -158.011000 -8.966900 1197.600000 -158.010800 -8.966700 1194.800000 -158.010500 -8.966500 1194.400000 -158.010200 -8.966300 1196.000000 -158.009900 -8.966000 1192.400000 -158.009700 -8.965900 1190.800000 -158.009900 -8.966100 1191.200000 -158.009500 -8.966700 1190.000000 -158.007900 -8.967600 1183.200000 -158.006000 -8.968600 1168.400000 -158.003900 -8.969800 1156.800000 -158.001800 -8.971000 1136.400000 -157.999700 -8.972200 1108.800000 -157.997600 -8.973400 1071.200000 -157.995500 -8.974600 1015.600000 -157.993400 -8.975800 950.400000 -157.991300 -8.977000 889.200000 -157.989200 -8.978200 831.600000 -157.987300 -8.979700 776.000000 -157.985800 -8.981100 721.200000 -157.984400 -8.982200 668.800000 -157.983400 -8.983100 624.800000 -157.982700 -8.983700 591.200000 -157.982100 -8.984100 566.000000 -157.981600 -8.984500 546.400000 -157.981300 -8.984700 531.600000 -157.980900 -8.984900 516.000000 -157.980700 -8.985100 506.400000 -157.980400 -8.985200 498.800000 -157.979900 -8.985100 500.800000 -157.979700 -8.985100 504.000000 -157.979600 -8.985100 502.400000 -157.979400 -8.985200 495.600000 -157.979300 -8.985200 492.000000 -157.979100 -8.985200 493.600000 -157.979000 -8.985100 492.800000 -157.978900 -8.985000 487.200000 -157.978700 -8.985000 484.000000 -157.978600 -8.985000 472.800000 -157.978400 -8.985100 472.400000 -157.978300 -8.985100 477.600000 -157.978200 -8.985200 463.200000 -157.978100 -8.985300 470.800000 -157.978000 -8.985300 454.800000 -157.977800 -8.985400 450.000000 -157.977700 -8.985400 452.400000 -157.977500 -8.985400 448.800000 -157.977400 -8.985500 438.000000 -157.977300 -8.985600 437.600000 -157.977200 -8.985700 425.600000 -157.977100 -8.985800 435.200000 -157.977000 -8.985800 414.000000 -157.976800 -8.985900 412.800000 -157.976800 -8.985600 415.200000 -157.976600 -8.985000 437.600000 -157.975900 -8.984400 435.200000 -157.974900 -8.984200 432.800000 -157.973800 -8.984000 434.000000 -157.972600 -8.983700 451.200000 -157.971400 -8.983700 448.000000 -157.970200 -8.983800 452.800000 -157.969000 -8.984000 465.600000 -157.967800 -8.984200 466.400000 -157.966600 -8.984400 494.400000 -157.965400 -8.984600 504.000000 -157.964500 -8.984700 524.800000 -157.963700 -8.984800 534.800000 -157.963300 -8.984900 539.200000 -157.963100 -8.985000 553.200000 -157.963000 -8.985100 546.400000 -157.962900 -8.985100 539.600000 -157.962800 -8.985000 543.200000 -157.963100 -8.984900 538.000000 -157.963200 -8.984800 537.600000 -157.963200 -8.984600 540.800000 -157.963100 -8.984500 546.400000 -157.963000 -8.984400 551.600000 -157.963200 -8.984300 548.800000 -157.963600 -8.984200 543.600000 -157.963700 -8.984000 544.000000 -157.963600 -8.983900 548.000000 -157.963600 -8.983800 553.600000 -157.963400 -8.983700 558.400000 -157.963300 -8.983600 564.400000 -157.963300 -8.983500 565.600000 -157.963600 -8.983400 563.600000 -157.963700 -8.983300 563.200000 -157.963700 -8.983100 566.400000 -157.963600 -8.983000 571.200000 -157.963500 -8.982900 576.800000 -157.963400 -8.982800 581.200000 -157.963200 -8.982700 587.200000 -157.963000 -8.982600 593.600000 -157.962900 -8.982500 598.400000 -157.962800 -8.982400 603.600000 -157.962600 -8.982300 608.800000 -157.962500 -8.982200 614.800000 -157.962500 -8.982100 616.000000 -157.962800 -8.982300 605.200000 -157.962600 -8.982900 603.200000 -157.961200 -8.983000 638.000000 -157.959400 -8.982800 679.200000 -157.957400 -8.982500 728.800000 -157.955300 -8.982200 778.800000 -157.953300 -8.982000 827.600000 -157.951000 -8.981700 874.000000 -157.948500 -8.981400 914.800000 -157.946100 -8.981100 948.000000 -157.943700 -8.980900 953.600000 -157.941300 -8.980600 931.200000 -157.938900 -8.980300 901.200000 -157.936400 -8.980000 897.200000 -157.934000 -8.979700 846.400000 -157.932000 -8.979400 754.000000 -157.930500 -8.979200 684.400000 -157.929400 -8.978800 602.400000 -157.929300 -8.978100 587.600000 -157.929600 -8.977800 589.600000 -157.930100 -8.977900 592.000000 -157.930800 -8.978100 692.000000 -157.931600 -8.978400 752.400000 -157.932500 -8.978700 786.400000 -157.933400 -8.978900 821.200000 -157.934200 -8.979200 854.000000 -157.935000 -8.979500 870.000000 -157.935600 -8.979900 886.800000 -157.936300 -8.980300 899.200000 -157.937000 -8.980700 904.400000 -157.937400 -8.981100 922.800000 -157.937500 -8.981400 928.800000 -157.937700 -8.981700 938.000000 -157.937800 -8.981900 941.200000 -157.937800 -8.981900 939.600000 -157.937800 -8.981800 941.200000 -157.937800 -8.981700 943.200000 -157.937800 -8.981700 942.400000 -157.937800 -8.981600 936.000000 -157.937800 -8.981500 936.000000 -157.937800 -8.981400 940.800000 -157.937800 -8.981400 943.200000 -157.937900 -8.981300 938.400000 -157.937900 -8.981300 945.200000 -157.938000 -8.981300 945.200000 -157.938000 -8.981300 948.000000 -157.938100 -8.981200 926.000000 -157.938100 -8.981200 940.800000 -157.938100 -8.981100 929.600000 -157.938200 -8.981100 948.000000 -157.938200 -8.981000 922.000000 -157.938200 -8.981000 922.800000 -157.938200 -8.980900 926.800000 -157.938300 -8.980800 919.600000 -157.938300 -8.980800 912.000000 -157.938300 -8.980700 909.600000 -157.938400 -8.980700 911.200000 -157.938400 -8.980700 911.600000 -157.938400 -8.980600 910.400000 -157.938400 -8.980500 909.200000 -157.938600 -8.980600 911.600000 -157.938600 -8.980500 912.000000 -157.938600 -8.980400 909.200000 -157.938600 -8.980400 910.000000 -157.938600 -8.980400 909.200000 -157.938700 -8.980300 910.000000 -157.938700 -8.980300 907.200000 -157.938700 -8.980300 908.400000 -157.938700 -8.980200 907.200000 -157.938700 -8.980100 908.800000 -157.938700 -8.980100 905.600000 -157.938700 -8.980100 904.000000 -157.938700 -8.980000 908.400000 -157.938600 -8.979800 900.800000 -157.938500 -8.979700 895.200000 -157.938400 -8.979500 887.200000 -157.938200 -8.979300 886.400000 -157.938100 -8.979200 873.600000 -157.938100 -8.979300 891.200000 -157.938000 -8.979900 897.200000 -157.937900 -8.981300 937.200000 -157.937600 -8.983100 942.400000 -157.937400 -8.985000 998.800000 -157.937100 -8.986800 1045.200000 -157.936900 -8.988700 1072.400000 -157.936700 -8.990600 1102.000000 -157.936400 -8.992500 1127.200000 -157.936200 -8.994400 1149.200000 -157.935900 -8.996400 1175.600000 -157.935800 -8.998300 1194.400000 -157.935600 -9.000300 1217.200000 -157.935500 -9.002200 1243.200000 -157.935300 -9.004200 1267.200000 -157.935200 -9.006100 1289.600000 -157.935000 -9.008100 1313.200000 -157.934900 -9.010100 1334.000000 -157.934700 -9.012000 1350.400000 -157.934600 -9.013900 1354.800000 -157.934400 -9.015800 1354.000000 -157.934300 -9.017700 1357.200000 -157.934100 -9.019600 1364.400000 -157.933900 -9.021600 1378.000000 -157.933700 -9.023400 1392.000000 -157.933600 -9.024800 1406.400000 -157.933400 -9.025900 1417.600000 -157.933300 -9.026900 1427.600000 -157.933200 -9.027700 1436.400000 -157.933200 -9.028400 1443.200000 -157.933200 -9.029100 1450.000000 -157.933300 -9.029800 1457.200000 -157.933300 -9.030400 1464.800000 -157.933300 -9.031000 1472.000000 -157.933300 -9.031300 1476.800000 -157.933200 -9.031500 1480.000000 -157.933200 -9.031600 1481.200000 -157.933200 -9.031600 1481.200000 -157.933200 -9.031800 1482.800000 -157.933100 -9.032000 1486.000000 -157.932900 -9.032000 1488.400000 -157.932700 -9.032100 1490.000000 -157.932500 -9.032100 1492.800000 -157.932300 -9.032200 1494.400000 -157.932100 -9.032300 1497.600000 -157.931900 -9.032400 1499.200000 -157.931700 -9.032300 1500.400000 -157.931500 -9.032400 1502.000000 -157.931300 -9.032400 1504.800000 -157.931100 -9.032500 1506.800000 -157.930900 -9.032500 1508.400000 -157.930700 -9.032500 1510.400000 -157.930500 -9.032500 1510.400000 -157.930300 -9.032500 1511.600000 -157.930100 -9.032500 1512.400000 -157.929900 -9.032600 1514.000000 -157.929800 -9.032600 1515.600000 -157.929600 -9.032600 1517.600000 -157.929400 -9.032600 1519.200000 -157.929200 -9.032700 1519.600000 -157.929100 -9.032700 1522.400000 -157.928900 -9.032700 1522.400000 -157.928700 -9.032700 1523.600000 -157.928600 -9.032700 1526.000000 -157.928400 -9.032700 1526.000000 -157.928200 -9.032600 1526.800000 -157.928000 -9.032600 1528.000000 -157.927800 -9.032600 1529.200000 -157.927600 -9.032600 1530.800000 -157.927400 -9.032600 1532.400000 -157.927300 -9.032600 1533.200000 -157.927100 -9.032600 1534.400000 -157.926900 -9.032600 1535.600000 -157.926700 -9.032600 1537.600000 -157.926600 -9.032600 1539.200000 -157.926400 -9.032600 1540.400000 -157.926200 -9.032700 1544.000000 -157.926000 -9.032700 1543.600000 -157.925900 -9.032700 1544.800000 -157.925700 -9.032800 1546.000000 -157.925500 -9.032900 1548.000000 -157.925300 -9.032900 1549.600000 -157.925200 -9.033000 1551.200000 -157.925000 -9.033100 1554.000000 -157.924800 -9.033200 1554.800000 -157.924500 -9.033200 1556.000000 -157.924300 -9.033200 1558.800000 -157.924100 -9.033200 1557.600000 -157.923900 -9.033300 1558.800000 -157.923700 -9.033300 1559.600000 -157.923500 -9.033400 1560.400000 -157.923200 -9.033200 1560.400000 -157.922800 -9.032900 1560.000000 -157.922000 -9.032700 1559.600000 -157.920500 -9.032300 1537.600000 -157.918600 -9.031700 1534.000000 -157.916600 -9.031200 1556.400000 -157.914500 -9.030600 1570.400000 -157.912400 -9.030000 1586.400000 -157.910400 -9.029400 1593.600000 -157.908100 -9.028800 1595.600000 -157.905600 -9.028100 1600.800000 -157.903200 -9.027300 1604.000000 -157.900400 -9.026300 1596.800000 -157.897400 -9.025200 1587.600000 -157.894300 -9.024100 1594.800000 -157.891200 -9.022900 1689.200000 -157.888000 -9.021800 1688.400000 -157.884900 -9.020600 1690.800000 -157.881800 -9.019400 1696.800000 -157.878600 -9.018300 1711.600000 -157.875400 -9.017200 1748.800000 -157.872300 -9.016000 1783.600000 -157.869100 -9.014900 1812.000000 -157.866000 -9.013800 1853.600000 -157.862800 -9.012700 1916.800000 -157.859600 -9.011500 2004.000000 -157.856500 -9.010400 2068.400000 -157.853300 -9.009200 2141.200000 -157.850200 -9.008100 2156.000000 -157.847100 -9.006900 2154.400000 -157.844000 -9.005800 2169.600000 -157.841000 -9.004700 2166.800000 -157.837900 -9.003600 2141.200000 -157.834900 -9.002500 2182.400000 -157.831800 -9.001400 2182.400000 -157.828700 -9.000200 2190.800000 -157.825700 -8.999100 2205.200000 -157.822600 -8.998000 2219.200000 -157.819600 -8.996900 2244.800000 -157.816500 -8.995800 2242.800000 -157.813400 -8.994700 2246.000000 -157.810400 -8.993600 2249.200000 -157.807300 -8.992500 2241.600000 -157.804300 -8.991400 2222.400000 -157.801300 -8.990300 2180.400000 -157.798300 -8.989200 2125.600000 -157.795300 -8.988200 2094.400000 -157.792400 -8.987200 2105.600000 -157.789400 -8.986100 2126.800000 -157.786400 -8.985000 2195.200000 -157.783500 -8.984000 2118.000000 -157.780500 -8.982900 2081.600000 -157.777500 -8.981800 2106.800000 -157.774500 -8.980700 2060.000000 -157.771500 -8.979600 2058.800000 -157.768500 -8.978600 2104.000000 -157.765500 -8.977500 2046.800000 -157.762500 -8.976400 2032.800000 -157.759600 -8.975400 2048.400000 -157.756600 -8.974300 2047.600000 -157.753700 -8.973200 2047.600000 -157.750800 -8.972200 2027.200000 -157.747800 -8.971100 2016.000000 -157.744900 -8.970100 2015.200000 -157.741900 -8.969000 1974.000000 -157.738900 -8.968000 1835.600000 -157.736000 -8.966900 1770.000000 -157.732900 -8.965900 1734.800000 -157.729900 -8.964900 1716.800000 -157.726900 -8.963900 1655.200000 -157.723900 -8.962800 1597.200000 -157.720900 -8.961800 1552.000000 -157.718000 -8.960900 1488.000000 -157.715000 -8.959900 1442.800000 -157.712100 -8.958900 1406.800000 -157.709100 -8.957900 1362.000000 -157.706100 -8.956900 1354.000000 -157.703100 -8.955900 1332.800000 -157.700100 -8.954900 1260.800000 -157.697100 -8.954000 1248.400000 -157.694100 -8.952900 1271.200000 -157.691100 -8.951900 1226.800000 -157.688100 -8.950900 1127.600000 -157.685100 -8.949900 1081.200000 -157.682200 -8.948900 1034.400000 -157.679200 -8.947900 974.400000 -157.676100 -8.946900 905.600000 -157.673200 -8.945900 860.800000 -157.670200 -8.944900 829.600000 -157.667200 -8.944000 743.600000 -157.664300 -8.943000 686.400000 -157.661300 -8.942000 677.600000 -157.658500 -8.941100 676.000000 -157.655600 -8.940100 671.600000 -157.652700 -8.939100 633.200000 -157.649900 -8.938100 654.800000 -157.647000 -8.937100 625.200000 -157.644100 -8.936000 624.400000 -157.641200 -8.934900 668.000000 -157.638300 -8.933800 669.200000 -157.635500 -8.932600 733.200000 -157.632600 -8.931600 805.600000 -157.629700 -8.930400 841.200000 -157.626800 -8.929300 836.000000 -157.624000 -8.928200 843.600000 -157.621100 -8.927000 879.200000 -157.618200 -8.925800 890.400000 -157.615400 -8.924600 888.800000 -157.612600 -8.923400 922.000000 -157.609700 -8.922300 967.200000 -157.606800 -8.921100 987.200000 -157.604000 -8.919900 1058.400000 -157.601200 -8.918800 1078.000000 -157.598300 -8.917700 1068.800000 -157.595400 -8.916500 1084.400000 -157.592500 -8.915400 1117.200000 -157.589600 -8.914200 1123.200000 -157.586700 -8.913100 1143.600000 -157.583800 -8.911900 1119.200000 -157.580900 -8.910800 1187.600000 -157.578100 -8.909700 1256.400000 -157.575200 -8.908600 1202.400000 -157.572400 -8.907500 1228.800000 -157.569600 -8.906400 1224.400000 -157.566700 -8.905200 1244.800000 -157.563900 -8.904100 1228.800000 -157.561100 -8.903000 1218.800000 -157.558200 -8.901800 1185.600000 -157.555400 -8.900600 1149.200000 -157.552600 -8.899400 1244.000000 -157.549800 -8.898300 1208.800000 -157.546900 -8.897500 1235.600000 -157.544000 -8.896700 1272.000000 -157.541000 -8.895800 1292.800000 -157.538100 -8.895000 1318.400000 -157.535200 -8.894100 1304.000000 -157.532200 -8.893200 1295.600000 -157.529300 -8.892400 1338.400000 -157.526300 -8.891500 1353.600000 -157.523400 -8.890600 1376.000000 -157.520400 -8.889700 1434.000000 -157.517500 -8.888800 1493.600000 -157.514500 -8.888000 1567.200000 -157.511500 -8.887100 1572.800000 -157.508400 -8.886200 1591.600000 -157.505400 -8.885500 1605.600000 -157.502400 -8.884800 1622.800000 -157.499300 -8.884000 1616.000000 -157.496200 -8.883200 1637.200000 -157.493100 -8.882500 1774.400000 -157.490000 -8.881700 1785.600000 -157.486900 -8.880900 1786.400000 -157.483800 -8.880200 1787.200000 -157.480700 -8.879400 1780.400000 -157.477600 -8.878600 1801.600000 -157.474500 -8.877900 1908.800000 -157.471500 -8.877200 1952.000000 -157.468500 -8.876400 1990.000000 -157.465400 -8.875700 2014.400000 -157.462400 -8.874900 2065.600000 -157.459300 -8.874200 2088.800000 -157.456300 -8.873400 2134.400000 -157.453200 -8.872600 2232.000000 -157.450200 -8.871800 2408.400000 -157.447200 -8.871100 2468.000000 -157.444100 -8.870300 2535.600000 -157.441100 -8.869600 2610.400000 -157.438000 -8.868900 2663.600000 -157.435000 -8.868200 2695.200000 -157.431900 -8.867500 2778.400000 -157.428900 -8.866700 2793.600000 -157.425800 -8.866000 2776.800000 -157.422700 -8.865200 2782.400000 -157.419700 -8.864400 2778.000000 -157.416600 -8.863700 2821.200000 -157.413500 -8.862900 2870.400000 -157.410400 -8.862100 2878.800000 -157.407400 -8.861400 2927.200000 -157.404300 -8.860600 3044.800000 -157.401300 -8.859900 3084.000000 -157.398200 -8.859100 3089.600000 -157.395200 -8.858400 3102.400000 -157.392200 -8.857600 3038.800000 -157.389200 -8.856900 3009.600000 -157.386200 -8.856100 2962.000000 -157.383200 -8.855300 2920.000000 -157.380200 -8.854400 2953.200000 -157.377200 -8.853400 2960.800000 -157.374200 -8.852400 3109.200000 -157.371200 -8.851500 3099.600000 -157.368200 -8.850500 3121.600000 -157.365200 -8.849500 3156.400000 -157.362200 -8.848600 3150.000000 -157.359200 -8.847600 3146.000000 -157.356200 -8.846700 3015.600000 -157.353200 -8.845800 2996.800000 -157.350200 -8.844900 2987.600000 -157.347200 -8.844000 3012.800000 -157.344100 -8.843000 2986.800000 -157.341100 -8.842100 2983.200000 -157.338100 -8.841200 2984.800000 -157.335100 -8.840200 2980.800000 -157.332000 -8.839300 3113.200000 -157.329000 -8.838400 3138.800000 -157.326000 -8.837500 3142.400000 -157.322900 -8.836600 3126.000000 -157.319900 -8.835700 3134.800000 -157.316900 -8.834800 3220.400000 -157.313900 -8.833900 3233.600000 -157.310900 -8.833000 3220.000000 -157.307900 -8.832100 3219.200000 -157.304800 -8.831200 3224.800000 -157.301700 -8.830400 3335.200000 -157.298700 -8.829500 3299.600000 -157.295700 -8.828500 3291.600000 -157.292700 -8.827500 3191.600000 -157.289800 -8.826400 3162.400000 -157.286800 -8.825500 3090.800000 -157.283800 -8.824500 3047.200000 -157.280800 -8.823500 2950.800000 -157.277800 -8.822500 2908.000000 -157.274800 -8.821500 2876.800000 -157.271900 -8.820400 2857.200000 -157.268900 -8.819400 2888.000000 -157.266000 -8.818600 2919.200000 -157.263000 -8.817800 2986.800000 -157.259900 -8.817100 3102.400000 -157.256900 -8.816300 3154.400000 -157.253900 -8.815500 3278.400000 -157.250900 -8.814800 3260.800000 -157.247800 -8.814000 3398.000000 -157.244800 -8.813300 3378.400000 -157.241700 -8.812500 3330.800000 -157.238700 -8.811800 3353.600000 -157.235600 -8.811000 3346.400000 -157.232600 -8.810200 3320.400000 -157.229500 -8.809500 3280.800000 -157.226500 -8.808700 3376.000000 -157.223400 -8.807900 3355.200000 -157.220300 -8.807200 3340.400000 -157.217200 -8.806400 3319.600000 -157.214200 -8.805700 3291.200000 -157.211100 -8.804900 3214.800000 -157.208000 -8.804100 3139.600000 -157.205000 -8.803400 3060.000000 -157.201900 -8.802600 2983.600000 -157.198900 -8.801800 2915.600000 -157.195900 -8.801100 2849.600000 -157.192900 -8.800300 2791.600000 -157.189800 -8.799600 2728.000000 -157.186800 -8.798800 2660.800000 -157.183700 -8.798000 2588.400000 -157.180700 -8.797200 2517.200000 -157.177700 -8.796200 2406.400000 -157.174800 -8.795100 2347.600000 -157.171800 -8.794100 2319.600000 -157.168800 -8.793100 2313.200000 -157.165800 -8.792000 2344.000000 -157.162900 -8.791000 2359.200000 -157.159900 -8.790000 2388.000000 -157.156900 -8.789000 2402.400000 -157.154000 -8.787900 2406.800000 -157.151000 -8.786900 2430.400000 -157.148000 -8.785800 2490.000000 -157.145100 -8.784800 2544.800000 -157.142100 -8.783800 2600.800000 -157.139100 -8.782700 2646.000000 -157.136100 -8.781700 2685.600000 -157.133100 -8.780700 2730.800000 -157.130200 -8.779600 2764.400000 -157.127200 -8.778500 2796.000000 -157.124300 -8.777500 2818.400000 -157.121400 -8.776400 2835.200000 -157.118500 -8.775300 2855.200000 -157.115600 -8.774200 2878.400000 -157.112600 -8.773100 2894.000000 -157.109700 -8.772100 2901.600000 -157.106700 -8.771000 2855.200000 -157.103800 -8.770000 2782.400000 -157.100800 -8.768900 2708.000000 -157.097800 -8.767900 2760.800000 -157.094800 -8.766800 2434.800000 -157.091800 -8.765700 2343.200000 -157.088800 -8.764700 2291.200000 -157.085800 -8.763600 2212.000000 -157.082800 -8.762500 2105.200000 -157.079800 -8.761500 1972.400000 -157.076900 -8.760500 3458.000000 -157.073900 -8.759600 3390.800000 -157.070900 -8.758600 3452.800000 -157.068000 -8.757600 1339.900000 -157.065000 -8.756600 1322.400000 -157.062000 -8.755700 1134.400000 -157.059000 -8.754700 973.600000 -157.056000 -8.753800 858.400000 -157.053000 -8.752800 832.000000 -157.050000 -8.751800 792.400000 -157.047000 -8.750800 766.000000 -157.044000 -8.749900 758.000000 -157.041000 -8.748900 767.200000 -157.038000 -8.747900 813.200000 -157.035000 -8.747000 810.400000 -157.032000 -8.746000 779.200000 -157.029000 -8.745000 840.400000 -157.026000 -8.744000 935.200000 -157.023300 -8.743100 792.800000 -157.021600 -8.742600 760.000000 -157.020300 -8.742600 762.400000 -157.019300 -8.742900 758.400000 -157.018300 -8.743000 719.200000 -157.017400 -8.743200 699.600000 -157.016700 -8.743300 681.200000 -157.015900 -8.743400 663.200000 -157.014800 -8.744000 647.600000 -157.013200 -8.744400 639.600000 -157.011600 -8.744900 642.000000 -157.010000 -8.745500 664.400000 -157.008300 -8.746100 687.600000 -157.006700 -8.746800 749.600000 -157.005100 -8.747500 803.600000 -157.003600 -8.748300 862.800000 -157.002100 -8.749000 907.200000 -157.001300 -8.748600 910.800000 -157.001100 -8.747900 902.800000 -157.001200 -8.747300 875.200000 -157.001000 -8.746600 849.600000 -157.000800 -8.745800 834.000000 -157.000600 -8.745000 804.400000 -157.000400 -8.744200 789.200000 -157.000300 -8.743700 779.600000 -157.000200 -8.743100 787.200000 -157.000100 -8.742700 782.400000 -157.000100 -8.742300 779.600000 -157.000000 -8.741900 780.800000 -156.999900 -8.741400 784.000000 -156.999800 -8.740900 787.600000 -156.999700 -8.740300 775.200000 -156.999900 -8.739800 765.200000 -157.000200 -8.739500 755.600000 -157.000600 -8.739000 724.000000 -157.001100 -8.738300 720.000000 -157.001400 -8.737700 713.200000 -157.001500 -8.737400 714.800000 -157.001600 -8.737200 720.000000 -157.001600 -8.737100 724.000000 -157.001600 -8.737000 752.000000 -157.001600 -8.737000 739.200000 -157.001500 -8.737000 724.800000 -157.001500 -8.737100 735.600000 -157.001500 -8.737100 734.400000 -157.001500 -8.737000 736.800000 -157.001500 -8.737000 727.600000 -157.001400 -8.736900 730.000000 -157.001400 -8.736900 742.000000 -157.001400 -8.737000 739.200000 -157.001600 -8.736800 724.800000 -157.002200 -8.736500 708.400000 -157.002900 -8.736500 689.200000 -157.003500 -8.736500 676.000000 -157.004000 -8.736400 670.400000 -157.004600 -8.736300 667.600000 -157.005100 -8.736200 673.200000 -157.005800 -8.736100 672.400000 -157.006300 -8.736000 806.400000 -157.006500 -8.736000 801.600000 -157.006600 -8.735900 748.800000 -157.006700 -8.735800 822.000000 -157.006700 -8.735800 798.800000 -157.006600 -8.735800 802.800000 -157.006400 -8.735700 696.400000 -157.006200 -8.735700 692.000000 -157.006100 -8.735700 682.800000 -157.006200 -8.735600 696.400000 -157.006400 -8.735600 699.600000 -157.006300 -8.735500 696.000000 -157.006200 -8.735500 695.200000 -157.006200 -8.735400 693.200000 -157.006400 -8.735400 696.800000 -157.006500 -8.735300 696.400000 -157.006600 -8.735200 694.400000 -157.006700 -8.735200 728.800000 -157.007200 -8.735100 795.600000 -157.007500 -8.735100 768.800000 -157.007700 -8.735000 794.800000 -157.007800 -8.735000 789.200000 -157.008000 -8.734900 786.400000 -157.008200 -8.734900 786.000000 -157.008500 -8.734800 784.000000 -157.008700 -8.734700 779.600000 -157.009000 -8.734700 786.800000 -157.009300 -8.734600 781.200000 -157.009600 -8.734600 780.000000 -157.009800 -8.734500 772.800000 -157.010000 -8.734400 778.800000 -157.010200 -8.734300 770.800000 -157.010400 -8.734200 777.200000 -157.010600 -8.734100 723.200000 -157.011000 -8.734000 705.600000 -157.011400 -8.734000 692.800000 -157.011700 -8.733900 684.400000 -157.012000 -8.733800 676.800000 -157.012200 -8.733700 670.800000 -157.012500 -8.733600 666.000000 -157.012700 -8.733500 660.800000 -157.012900 -8.733400 656.800000 -157.013000 -8.733400 654.400000 -157.013200 -8.733300 650.800000 -157.013500 -8.733400 645.200000 -157.013700 -8.733900 642.400000 -157.013500 -8.734300 649.200000 -157.013200 -8.734700 661.600000 -157.012800 -8.735100 684.000000 -157.012400 -8.735600 703.600000 -157.012000 -8.736200 703.600000 -157.011500 -8.736700 700.400000 -157.011100 -8.737200 700.000000 -157.010600 -8.737800 696.800000 -157.010100 -8.738300 699.600000 -157.009700 -8.738900 705.200000 -157.009300 -8.739400 699.600000 -157.008800 -8.740000 700.000000 -157.008300 -8.740600 704.000000 -157.007900 -8.741100 711.600000 -157.007400 -8.741600 716.000000 -157.006800 -8.742000 723.600000 -157.006100 -8.742300 727.200000 -157.005700 -8.742500 724.800000 -157.005500 -8.742600 734.800000 -157.005400 -8.742600 735.600000 -157.005400 -8.742700 736.000000 -157.005400 -8.742800 735.600000 -157.005400 -8.742900 739.200000 -157.005400 -8.742900 728.000000 -157.005400 -8.743000 726.800000 -157.005500 -8.743100 739.600000 -157.005500 -8.743200 733.200000 -157.005600 -8.743200 729.200000 -157.005700 -8.743300 731.200000 -157.005800 -8.743300 735.200000 -157.005900 -8.743400 734.400000 -157.005900 -8.743400 734.800000 -157.005600 -8.743300 736.000000 -157.005500 -8.743100 735.600000 -157.005500 -8.742500 732.800000 -157.005600 -8.742200 731.600000 -157.005600 -8.742100 721.200000 -157.005600 -8.742100 728.000000 -157.005500 -8.742100 714.000000 -157.005500 -8.742100 728.800000 -157.005500 -8.742100 730.800000 -157.005500 -8.742200 728.000000 -157.005500 -8.742100 719.600000 -157.005400 -8.742000 709.600000 -157.005400 -8.741900 707.200000 -157.005400 -8.741900 714.400000 -157.005400 -8.741500 706.400000 -157.005500 -8.740900 708.800000 -157.005600 -8.740400 697.600000 -157.005700 -8.739900 703.600000 -157.005900 -8.739400 710.800000 -157.006000 -8.739100 694.000000 -157.006000 -8.738600 703.200000 -157.006100 -8.738100 705.200000 -157.006200 -8.737700 701.200000 -157.006300 -8.737300 799.200000 -157.006400 -8.736900 717.200000 -157.006400 -8.736800 700.800000 -157.006400 -8.736800 695.200000 -157.006400 -8.736900 696.000000 -157.006300 -8.737000 696.800000 -157.006200 -8.737200 696.000000 -157.006100 -8.737400 696.000000 -157.006100 -8.737500 696.000000 -157.006000 -8.737500 693.200000 -157.006000 -8.737500 691.200000 -157.006000 -8.737600 693.200000 -157.006000 -8.737500 694.800000 -157.006000 -8.737500 694.000000 -157.005900 -8.737600 692.800000 -157.005900 -8.737600 690.800000 -157.005900 -8.737600 690.800000 -157.005900 -8.737600 690.000000 -157.005900 -8.737600 689.600000 -157.005800 -8.737600 688.800000 -157.005900 -8.737500 689.200000 -157.005900 -8.737400 689.600000 -157.005800 -8.737400 688.800000 -157.005800 -8.737400 686.000000 -157.005800 -8.737300 689.600000 -157.005800 -8.737200 688.400000 -157.005800 -8.737100 690.400000 -157.005800 -8.737000 686.400000 -157.005800 -8.737000 687.600000 -157.005700 -8.737000 686.800000 -157.005700 -8.736800 685.200000 -157.005800 -8.736500 685.600000 -157.005800 -8.736300 673.600000 -157.005800 -8.736300 681.200000 -157.005700 -8.736300 673.200000 -157.005700 -8.736400 675.200000 -157.005700 -8.736400 687.200000 -157.005700 -8.736400 687.200000 -157.006200 -8.736600 695.200000 -157.006200 -8.737300 692.800000 -157.005100 -8.737700 673.600000 -157.003200 -8.738400 640.800000 -157.000800 -8.739100 746.000000 -156.998400 -8.739800 839.600000 -156.996000 -8.740600 952.800000 -156.993200 -8.741500 1059.200000 -156.990200 -8.742500 1137.600000 -156.987200 -8.743400 1247.200000 -156.984100 -8.744400 1313.200000 -156.981100 -8.745400 1419.600000 -156.978100 -8.746400 1522.800000 -156.975000 -8.747400 1661.200000 -156.972100 -8.748300 1759.200000 -156.969100 -8.749300 1877.600000 -156.966000 -8.750300 2034.000000 -156.963000 -8.751200 2111.600000 -156.960000 -8.752200 2167.600000 -156.956900 -8.753100 3262.100000 -156.953800 -8.754100 3255.000000 -156.950800 -8.755100 3264.800000 -156.947800 -8.756100 3071.600000 -156.944800 -8.757200 3218.400000 -156.941700 -8.758200 2535.600000 -156.938700 -8.759200 2941.200000 -156.935700 -8.760100 2619.200000 -156.932700 -8.761100 2671.000000 -156.929600 -8.762100 2695.200000 -156.926600 -8.763100 2722.000000 -156.923600 -8.764100 2740.800000 -156.920600 -8.765100 2775.200000 -156.917500 -8.766100 2798.800000 -156.914500 -8.767200 2820.000000 -156.911400 -8.768200 2839.200000 -156.908400 -8.769200 2850.800000 -156.905400 -8.770200 2846.400000 -156.902300 -8.771200 2848.000000 -156.899300 -8.772200 2854.000000 -156.896200 -8.773200 2860.400000 -156.893200 -8.774200 2857.600000 -156.890100 -8.775300 2851.600000 -156.887100 -8.776300 2845.600000 -156.884000 -8.777300 2834.800000 -156.880900 -8.778300 2822.800000 -156.877900 -8.779300 2808.800000 -156.874800 -8.780400 2800.800000 -156.871800 -8.781400 2780.000000 -156.868700 -8.782400 2760.000000 -156.865700 -8.783400 2740.400000 -156.862700 -8.784500 2716.000000 -156.859600 -8.785600 2698.800000 -156.856600 -8.786600 2696.800000 -156.853600 -8.787600 2704.400000 -156.850600 -8.788800 2698.800000 -156.847600 -8.790000 2702.400000 -156.844600 -8.791200 2708.400000 -156.841700 -8.792300 2707.200000 -156.838700 -8.793500 2701.200000 -156.835700 -8.794600 2692.400000 -156.832700 -8.795700 2687.600000 -156.829700 -8.796900 2697.600000 -156.826700 -8.798000 2707.600000 -156.823700 -8.799200 2722.000000 -156.820600 -8.800200 2737.600000 -156.817600 -8.801300 2755.200000 -156.814600 -8.802300 2792.400000 -156.811500 -8.803400 3237.600000 -156.808500 -8.804400 2878.000000 -156.805500 -8.805500 3006.000000 -156.803000 -8.806400 3025.200000 -156.801000 -8.807100 2984.800000 -156.799400 -8.807600 3437.200000 -156.798000 -8.808100 3176.800000 -156.797000 -8.808500 3281.200000 -156.796100 -8.808700 3120.000000 -156.795500 -8.808800 3125.200000 -156.794800 -8.808900 3156.400000 -156.794300 -8.809000 3132.800000 -156.793800 -8.809200 3136.000000 -156.793400 -8.809300 3141.600000 -156.793000 -8.809300 3143.600000 -156.792600 -8.809300 3141.600000 -156.792400 -8.809100 3147.600000 -156.792200 -8.808600 3140.400000 -156.792200 -8.808300 3133.200000 -156.792200 -8.808100 3136.800000 -156.792200 -8.807800 3132.000000 -156.792100 -8.807500 3134.800000 -156.792200 -8.807200 3126.800000 -156.792300 -8.806800 3124.800000 -156.792400 -8.806500 3125.200000 -156.792500 -8.806100 3123.200000 -156.792500 -8.805900 3124.800000 -156.792500 -8.805600 2961.600000 -156.792500 -8.805200 2920.000000 -156.792400 -8.804900 2950.800000 -156.792400 -8.804500 2966.800000 -156.792400 -8.804200 2918.400000 -156.792400 -8.804000 2891.600000 -156.792400 -8.803900 2889.200000 -156.792300 -8.803900 2890.000000 -156.792300 -8.803900 2891.600000 -156.792300 -8.804000 2890.000000 -156.792400 -8.804000 2891.200000 -156.792400 -8.804000 2892.000000 -156.792400 -8.804000 2890.000000 -156.792400 -8.804000 2890.400000 -156.792400 -8.804000 2890.000000 -156.792500 -8.804000 2889.600000 -156.792500 -8.804000 2892.400000 -156.792500 -8.803900 2888.800000 -156.792500 -8.803900 2890.000000 -156.792500 -8.803900 2888.400000 -156.792600 -8.803900 2888.800000 -156.792600 -8.803900 2891.200000 -156.792600 -8.803900 2887.600000 -156.792600 -8.803800 2887.600000 -156.792700 -8.803800 2889.600000 -156.792700 -8.803900 2890.000000 -156.792700 -8.803900 2891.600000 -156.792700 -8.803900 2889.200000 -156.792700 -8.803900 2889.600000 -156.792700 -8.803900 2890.400000 -156.792700 -8.803900 2891.200000 -156.792700 -8.803900 2889.200000 -156.792700 -8.803700 2885.200000 -156.792700 -8.803700 2885.600000 -156.792700 -8.803700 2887.200000 -156.792700 -8.803800 2888.400000 -156.792700 -8.803800 2890.400000 -156.792700 -8.803800 2888.800000 -156.792700 -8.803800 2888.400000 -156.792700 -8.803800 2888.800000 -156.792700 -8.803800 2889.200000 -156.792700 -8.803800 2889.200000 -156.792700 -8.803700 2887.600000 -156.792800 -8.803700 2887.600000 -156.792800 -8.803600 2884.400000 -156.792800 -8.803500 2879.600000 -156.792800 -8.803400 2880.400000 -156.792700 -8.802900 2870.800000 -156.792500 -8.802400 2861.200000 -156.792500 -8.802000 2852.400000 -156.792400 -8.801500 2844.800000 -156.792500 -8.801200 2837.200000 -156.792500 -8.800700 2831.600000 -156.792500 -8.800300 2787.600000 -156.792500 -8.799900 2779.600000 -156.792600 -8.799800 2774.800000 -156.792700 -8.799700 2776.400000 -156.792700 -8.799700 2774.800000 -156.792800 -8.799800 2776.400000 -156.792900 -8.799900 2778.400000 -156.793000 -8.799800 2777.600000 -156.793000 -8.799700 2775.200000 -156.793100 -8.799700 2777.600000 -156.793200 -8.799600 2773.600000 -156.793300 -8.799600 2774.000000 -156.793400 -8.799600 2775.200000 -156.793500 -8.799500 2776.800000 -156.793600 -8.799500 2775.200000 -156.793600 -8.799700 2776.800000 -156.793600 -8.799900 2782.400000 -156.793600 -8.800000 2784.400000 -156.793600 -8.800100 2783.600000 -156.793500 -8.800100 2784.000000 -156.793500 -8.800200 2786.000000 -156.793600 -8.800300 2789.200000 -156.793600 -8.800300 2788.800000 -156.793600 -8.800400 2789.200000 -156.793600 -8.800400 2814.800000 -156.793600 -8.800400 2790.400000 -156.793600 -8.800400 2790.000000 -156.793600 -8.800400 2790.000000 -156.793700 -8.800300 2789.600000 -156.793700 -8.800300 2790.000000 -156.793700 -8.800400 2823.200000 -156.793700 -8.800400 2824.000000 -156.793700 -8.800300 2808.800000 -156.793600 -8.800200 2787.200000 -156.793600 -8.800200 2787.600000 -156.793600 -8.800000 2787.200000 -156.793600 -8.799900 2784.000000 -156.793600 -8.799800 2781.200000 -156.793600 -8.799800 2807.600000 -156.793600 -8.799600 2777.600000 -156.793600 -8.799400 2776.000000 -156.793500 -8.799300 2772.400000 -156.793500 -8.799300 2772.800000 -156.793500 -8.799200 2771.200000 -156.793400 -8.799100 2769.600000 -156.793400 -8.798900 2766.800000 -156.793400 -8.798800 2764.000000 -156.793300 -8.798700 2762.800000 -156.793200 -8.798700 2762.800000 -156.793200 -8.798600 2760.400000 -156.793200 -8.798500 2759.200000 -156.793200 -8.798200 2758.000000 -156.793200 -8.798100 2754.400000 -156.793100 -8.798000 2753.600000 -156.793100 -8.797900 2752.400000 -156.793000 -8.797800 2751.200000 -156.793000 -8.797700 2750.400000 -156.793000 -8.797600 2748.800000 -156.792900 -8.797500 2747.600000 -156.793000 -8.797500 2746.800000 -156.793000 -8.797400 2746.000000 -156.793000 -8.797300 2745.200000 -156.793000 -8.797300 2744.800000 -156.793000 -8.797300 2745.600000 -156.793000 -8.797400 2746.000000 -156.793000 -8.797400 2747.200000 -156.793000 -8.797300 2746.000000 -156.793100 -8.797200 2744.800000 -156.793100 -8.797100 2744.400000 -156.793200 -8.797100 2745.600000 -156.793200 -8.797100 2744.800000 -156.793300 -8.797100 2744.000000 -156.793300 -8.797000 2744.800000 -156.793400 -8.797000 2743.600000 -156.793400 -8.797100 2746.800000 -156.793400 -8.797000 2743.600000 -156.793500 -8.797100 2743.600000 -156.793500 -8.797000 2745.200000 -156.793500 -8.796900 2743.600000 -156.793500 -8.796800 2742.400000 -156.793600 -8.796900 2742.000000 -156.793600 -8.796900 2742.400000 -156.793600 -8.796900 2742.400000 -156.793600 -8.796900 2743.200000 -156.793600 -8.796900 2744.400000 -156.793600 -8.796900 2744.400000 -156.793600 -8.797000 2744.000000 -156.793600 -8.796900 2743.600000 -156.793600 -8.796800 2743.200000 -156.793600 -8.796800 2742.400000 -156.793600 -8.796900 2743.200000 -156.793700 -8.797000 2744.400000 -156.793800 -8.797000 2743.200000 -156.793800 -8.797000 2743.600000 -156.793900 -8.796800 2743.200000 -156.794000 -8.796800 2744.800000 -156.794000 -8.796800 2743.200000 -156.794100 -8.796800 2743.200000 -156.794200 -8.796800 2743.600000 -156.794200 -8.796800 2744.400000 -156.794300 -8.797000 2745.200000 -156.794400 -8.797100 2748.800000 -156.794400 -8.797200 2748.400000 -156.794500 -8.797200 2749.600000 -156.794600 -8.797100 2748.400000 -156.794700 -8.797000 2748.400000 -156.794800 -8.796700 2746.800000 -156.794600 -8.796200 2744.000000 -156.794100 -8.795900 2739.600000 -156.793000 -8.796000 2736.800000 -156.791600 -8.796000 2733.200000 -156.790000 -8.796100 2726.400000 -156.788400 -8.796100 2725.200000 -156.786400 -8.796100 2731.200000 -156.783900 -8.796200 2729.200000 -156.780800 -8.796400 2729.200000 -156.777700 -8.796600 2724.000000 -156.774600 -8.796900 2722.400000 -156.771500 -8.797100 2704.000000 -156.768400 -8.797400 2698.000000 -156.765300 -8.797600 2690.000000 -156.762100 -8.797900 2776.400000 -156.759000 -8.798100 2799.600000 -156.755900 -8.798400 2842.000000 -156.752800 -8.798700 2804.800000 -156.749600 -8.799000 2918.400000 -156.746400 -8.799200 2901.600000 -156.743200 -8.799500 2922.400000 -156.740100 -8.799700 3054.000000 -156.736900 -8.800000 3204.000000 -156.733900 -8.800600 3135.200000 -156.731000 -8.801800 3332.800000 -156.728700 -8.803100 3434.400000 -156.727100 -8.804000 3422.800000 -156.725800 -8.804500 3424.000000 -156.724700 -8.805000 3428.800000 -156.723700 -8.805300 3437.600000 -156.722700 -8.805600 3438.800000 -156.721700 -8.805900 3462.000000 -156.720700 -8.805900 3453.200000 -156.719700 -8.805800 3485.600000 -156.718500 -8.805600 3468.800000 -156.717300 -8.805400 3365.600000 -156.716200 -8.805300 3356.400000 -156.715000 -8.805100 3343.200000 -156.713800 -8.805000 3332.000000 -156.712700 -8.804700 3353.200000 -156.711700 -8.804300 3390.800000 -156.710900 -8.803400 3303.200000 -156.710900 -8.802200 3285.600000 -156.711000 -8.800800 3190.400000 -156.711000 -8.799400 3176.000000 -156.711100 -8.798100 3131.600000 -156.711200 -8.796700 3086.000000 -156.711200 -8.795400 3091.600000 -156.711300 -8.794000 3007.600000 -156.711300 -8.792700 2989.600000 -156.711400 -8.791300 2940.400000 -156.711400 -8.789900 2920.000000 -156.711500 -8.788500 2931.600000 -156.711500 -8.787100 2941.200000 -156.711600 -8.785800 2828.000000 -156.711700 -8.784400 2780.000000 -156.711800 -8.783100 2760.000000 -156.711900 -8.781800 2746.400000 -156.711900 -8.780400 2738.800000 -156.712000 -8.779100 2737.600000 -156.712000 -8.777700 2805.200000 -156.712000 -8.776400 2916.400000 -156.712000 -8.775000 2944.400000 -156.712000 -8.773700 2984.400000 -156.711900 -8.772300 3058.800000 -156.711000 -8.771300 3059.600000 -156.709200 -8.769700 3006.800000 -156.707800 -8.767200 2946.800000 -156.708100 -8.764200 2818.800000 -156.707000 -8.761300 2838.400000 -156.704600 -8.759200 2855.600000 -156.702200 -8.757100 2872.400000 -156.699900 -8.755100 2917.200000 -156.697500 -8.753000 2933.200000 -156.695100 -8.751000 2959.600000 -156.692800 -8.748900 2918.000000 -156.690400 -8.746800 2962.800000 -156.688000 -8.744800 2979.200000 -156.685700 -8.742700 3001.600000 -156.683300 -8.740700 3017.200000 -156.680900 -8.738600 3006.000000 -156.678500 -8.736600 3024.000000 -156.676200 -8.734500 2926.400000 -156.674000 -8.732300 2880.800000 -156.671800 -8.730100 2748.000000 -156.669500 -8.727900 2728.400000 -156.667300 -8.725600 2709.600000 -156.665100 -8.723500 2682.400000 -156.662800 -8.721300 2693.200000 -156.660600 -8.719100 2664.000000 -156.658300 -8.716800 2510.000000 -156.656100 -8.714700 2395.200000 -156.653800 -8.712500 2338.800000 -156.651600 -8.710300 2327.600000 -156.649400 -8.708100 2487.600000 -156.647100 -8.705900 2401.200000 -156.644800 -8.703700 2339.600000 -156.642600 -8.701500 2348.400000 -156.640300 -8.699300 2328.800000 -156.638000 -8.697100 2344.800000 -156.635800 -8.694900 2409.200000 -156.633500 -8.692700 2446.800000 -156.631300 -8.690500 2364.800000 -156.629000 -8.688400 2319.200000 -156.626800 -8.686200 2313.200000 -156.624500 -8.684000 2344.800000 -156.622300 -8.681800 2380.400000 -156.620000 -8.679700 2396.800000 -156.617800 -8.677500 2521.200000 -156.615500 -8.675300 2514.000000 -156.613300 -8.673200 2596.800000 -156.611100 -8.671100 2626.400000 -156.608900 -8.668900 2718.000000 -156.606700 -8.666700 2765.200000 -156.604600 -8.664500 2920.400000 -156.602600 -8.662200 2890.800000 -156.600600 -8.659900 2913.600000 -156.598600 -8.657500 2948.400000 -156.596800 -8.655100 2960.400000 -156.594800 -8.652800 2737.200000 -156.592800 -8.650700 2789.200000 -156.590700 -8.648400 2754.000000 -156.588700 -8.646100 2661.200000 -156.586700 -8.643800 2675.200000 -156.584600 -8.641600 2652.000000 -156.582500 -8.639300 2460.400000 -156.580500 -8.637000 2484.000000 -156.578600 -8.634800 2217.600000 -156.576600 -8.632500 2210.000000 -156.574500 -8.630200 2216.400000 -156.572500 -8.627900 2353.600000 -156.570500 -8.625600 2377.200000 -156.568500 -8.623200 2288.800000 -156.566300 -8.621000 2181.600000 -156.564100 -8.618900 2179.600000 -156.561800 -8.616700 2237.200000 -156.559800 -8.614700 2048.800000 -156.558200 -8.613200 2111.200000 -156.557000 -8.612100 1993.600000 -156.556200 -8.611300 2093.200000 -156.555500 -8.610600 2098.400000 -156.554900 -8.609900 2105.200000 -156.554400 -8.609300 1887.600000 -156.553800 -8.608700 1846.400000 -156.553200 -8.608000 1816.400000 -156.552500 -8.607200 1744.000000 -156.551500 -8.606600 1726.400000 -156.550400 -8.606100 1704.400000 -156.549100 -8.605800 1635.200000 -156.547900 -8.605800 1541.600000 -156.546600 -8.605700 1516.400000 -156.545300 -8.605700 1397.200000 -156.543900 -8.605700 1376.800000 -156.542500 -8.605800 1367.600000 -156.541700 -8.605200 1372.800000 -156.542000 -8.604300 1378.800000 -156.542300 -8.603000 1474.800000 -156.543100 -8.602500 1453.600000 -156.544300 -8.602600 1482.400000 -156.545600 -8.602600 1543.600000 -156.546900 -8.602800 1554.800000 -156.547100 -8.603600 1486.000000 -156.547100 -8.604600 1478.400000 -156.547000 -8.605800 1518.000000 -156.546900 -8.607000 1492.000000 -156.546800 -8.608200 1513.200000 -156.546900 -8.609300 1638.000000 -156.547900 -8.609500 1710.000000 -156.549000 -8.609400 1756.800000 -156.549300 -8.608700 1649.200000 -156.548700 -8.608300 1614.800000 -156.547700 -8.608300 1563.600000 -156.546500 -8.608400 1498.400000 -156.545200 -8.608400 1420.000000 -156.543800 -8.608400 1394.000000 -156.542500 -8.608500 1388.800000 -156.541400 -8.608200 1395.200000 -156.541500 -8.607200 1384.400000 -156.541600 -8.605800 1378.800000 -156.541800 -8.604300 1379.600000 -156.542000 -8.602700 1466.800000 -156.541500 -8.601600 1734.400000 -156.540400 -8.601500 1630.400000 -156.539100 -8.601600 1618.000000 -156.539000 -8.602600 1560.800000 -156.539000 -8.603700 1571.200000 -156.538900 -8.605000 1540.800000 -156.538900 -8.606300 1537.600000 -156.538700 -8.607600 1594.800000 -156.537900 -8.607700 1622.400000 -156.536800 -8.607700 1676.400000 -156.535500 -8.607600 1876.400000 -156.535000 -8.606900 1728.400000 -156.535900 -8.606500 1685.600000 -156.537100 -8.606500 1581.600000 -156.538700 -8.606500 1489.600000 -156.540300 -8.606300 1397.600000 -156.541900 -8.606000 1377.600000 -156.543200 -8.605700 1369.600000 -156.544400 -8.605500 1381.600000 -156.545500 -8.605300 1488.800000 -156.546500 -8.605200 1532.000000 -156.547300 -8.605300 1542.800000 -156.548100 -8.605500 1657.200000 -156.548700 -8.605700 1652.000000 -156.549200 -8.605900 1708.000000 -156.549500 -8.605900 1696.800000 -156.549800 -8.605900 1683.600000 -156.550100 -8.605700 1683.600000 -156.550400 -8.605500 1707.600000 -156.550600 -8.605400 1715.200000 -156.550800 -8.605200 1716.000000 -156.550900 -8.605000 1718.000000 -156.551100 -8.604800 1721.600000 -156.551200 -8.604600 1722.000000 -156.551300 -8.604300 1727.600000 -156.551400 -8.604100 1728.000000 -156.551600 -8.603900 1733.600000 -156.551700 -8.603600 1729.600000 -156.551800 -8.603400 1740.400000 -156.551900 -8.603100 1736.000000 -156.552000 -8.602900 1745.600000 -156.552200 -8.602700 1754.400000 -156.552300 -8.602400 1746.000000 -156.552400 -8.602200 1774.400000 -156.552500 -8.602000 1776.400000 -156.552700 -8.601700 1775.600000 -156.552800 -8.601400 1782.000000 -156.552900 -8.601100 1787.600000 -156.553100 -8.600900 1800.000000 -156.553600 -8.600900 1794.400000 -156.554000 -8.601200 1773.200000 -156.554200 -8.601600 1789.600000 -156.554000 -8.602300 1778.400000 -156.553500 -8.602900 1767.600000 -156.552700 -8.603200 1745.600000 -156.551700 -8.603500 1726.000000 -156.550700 -8.603800 1690.400000 -156.549700 -8.604300 1660.800000 -156.549000 -8.604800 1661.200000 -156.548600 -8.605100 1578.800000 -156.548500 -8.605100 1552.800000 -156.548300 -8.604900 1542.000000 -156.548000 -8.604800 1549.600000 -156.547800 -8.604700 1532.000000 -156.547500 -8.604800 1528.400000 -156.547100 -8.605100 1510.800000 -156.546900 -8.605300 1472.800000 -156.546500 -8.605700 1440.400000 -156.546400 -8.605800 1418.000000 -156.546300 -8.605900 1437.200000 -156.546100 -8.605900 1410.400000 -156.546000 -8.605900 1419.600000 -156.546000 -8.605800 1408.800000 -156.546100 -8.605700 1409.200000 -156.546000 -8.605700 1412.000000 -156.546000 -8.605700 1407.200000 -156.546000 -8.605600 1408.800000 -156.545900 -8.605800 1408.800000 -156.546000 -8.605900 1406.400000 -156.546000 -8.606000 1408.000000 -156.546000 -8.606000 1408.000000 -156.545800 -8.606100 1403.200000 -156.545800 -8.606000 1402.400000 -156.545700 -8.606000 1401.200000 -156.545600 -8.605900 1398.400000 -156.545600 -8.605800 1398.800000 -156.545700 -8.605700 1402.000000 -156.545600 -8.605700 1400.000000 -156.545600 -8.605700 1399.600000 -156.545600 -8.605700 1401.600000 -156.545800 -8.605600 1418.400000 -156.545900 -8.605600 1406.400000 -156.545900 -8.605700 1408.000000 -156.545900 -8.605700 1406.400000 -156.545900 -8.605700 1406.400000 -156.545900 -8.605700 1406.800000 -156.545800 -8.605800 1404.000000 -156.545800 -8.605800 1405.200000 -156.545100 -8.606000 1392.400000 -156.544500 -8.605900 1381.600000 -156.544100 -8.605800 1376.400000 -156.543600 -8.605700 1371.600000 -156.543300 -8.605700 1368.800000 -156.542900 -8.605600 1368.800000 -156.542500 -8.605600 1371.200000 -156.542100 -8.605600 1369.200000 -156.541900 -8.605600 1375.600000 -156.541500 -8.605800 1446.400000 -156.541200 -8.605800 1382.400000 -156.541000 -8.605800 1384.000000 -156.541100 -8.605700 1398.800000 -156.541000 -8.605700 1384.400000 -156.541000 -8.605700 1446.400000 -156.541000 -8.605600 1429.200000 -156.540900 -8.605600 1408.800000 -156.541000 -8.605600 1426.800000 -156.540800 -8.605700 1404.400000 -156.540900 -8.605700 1394.400000 -156.540900 -8.605700 1422.000000 -156.540900 -8.605700 1388.000000 -156.541000 -8.605700 1419.600000 -156.540900 -8.605700 1422.400000 -156.540900 -8.605700 1395.200000 -156.541100 -8.605700 1399.600000 -156.541000 -8.605700 1388.000000 -156.541200 -8.605700 1382.400000 -156.541500 -8.605600 1379.600000 -156.541700 -8.605500 1374.800000 -156.541800 -8.605500 1376.000000 -156.541800 -8.605600 1378.000000 -156.541800 -8.605600 1376.400000 -156.541900 -8.605600 1376.000000 -156.542200 -8.605500 1370.800000 -156.542400 -8.605300 1374.800000 -156.542800 -8.605100 1370.000000 -156.543100 -8.605000 1372.400000 -156.543200 -8.604900 1371.600000 -156.543300 -8.604900 1371.600000 -156.543500 -8.604900 1371.200000 -156.543800 -8.604800 1374.800000 -156.544000 -8.604600 1378.800000 -156.544300 -8.604600 1383.600000 -156.544300 -8.604600 1383.200000 -156.544400 -8.604600 1382.800000 -156.544500 -8.604700 1385.200000 -156.544500 -8.604700 1382.800000 -156.544700 -8.604700 1385.600000 -156.544800 -8.604600 1389.200000 -156.545000 -8.604500 1394.400000 -156.545100 -8.604500 1398.000000 -156.545100 -8.604600 1396.400000 -156.545100 -8.604600 1394.400000 -156.545200 -8.604600 1396.800000 -156.545300 -8.604500 1398.000000 -156.545300 -8.604600 1402.400000 -156.545400 -8.604500 1402.400000 -156.545500 -8.604500 1403.600000 -156.545600 -8.604400 1431.600000 -156.545700 -8.604400 1411.600000 -156.545700 -8.604400 1419.600000 -156.545800 -8.604300 1433.600000 -156.545900 -8.604300 1416.000000 -156.546000 -8.604200 1447.600000 -156.546200 -8.604100 1473.600000 -156.546300 -8.604100 1461.200000 -156.546400 -8.604100 1465.600000 -156.546500 -8.604000 1480.400000 -156.546700 -8.603900 1512.400000 -156.546900 -8.603800 1472.400000 -156.546900 -8.603700 1486.400000 -156.547000 -8.603700 1498.400000 -156.547200 -8.603500 1528.800000 -156.547400 -8.603400 1498.000000 -156.547500 -8.603400 1555.200000 -156.547700 -8.603300 1541.200000 -156.547900 -8.603100 1545.600000 -156.548100 -8.603000 1617.600000 -156.548300 -8.602900 1570.000000 -156.548200 -8.603000 1568.400000 -156.548100 -8.603000 1608.800000 -156.548200 -8.603000 1567.600000 -156.548200 -8.603000 1569.200000 -156.548300 -8.602900 1576.400000 -156.548500 -8.602900 1578.400000 -156.548700 -8.602800 1629.600000 -156.548900 -8.602600 1625.200000 -156.549200 -8.602500 1656.000000 -156.549500 -8.602400 1658.800000 -156.549800 -8.602200 1671.200000 -156.550100 -8.602100 1684.800000 -156.550400 -8.601900 1689.200000 -156.550700 -8.601800 1703.600000 -156.551000 -8.601600 1707.600000 -156.551300 -8.601400 1715.200000 -156.551600 -8.601200 1720.400000 -156.551800 -8.601000 1727.200000 -156.552100 -8.600800 1732.400000 -156.552300 -8.600700 1734.400000 -156.552400 -8.601000 1737.200000 -156.551900 -8.601200 1730.000000 -156.550500 -8.601200 1710.400000 -156.548700 -8.601200 1684.000000 -156.546700 -8.601300 1653.200000 -156.544600 -8.601400 1555.600000 -156.542500 -8.601500 1564.000000 -156.540000 -8.601600 1651.600000 -156.537500 -8.601800 1692.000000 -156.535000 -8.602000 1884.800000 -156.532400 -8.602200 1830.400000 -156.529900 -8.602400 1798.400000 -156.527400 -8.602600 1752.400000 -156.524800 -8.602700 1760.800000 -156.522300 -8.603100 1850.400000 -156.519800 -8.603400 1886.400000 -156.517200 -8.603800 1914.000000 -156.514800 -8.604200 1953.200000 -156.512300 -8.604600 1967.200000 -156.509800 -8.605000 1991.200000 -156.507300 -8.604900 1966.400000 -156.506000 -8.602700 1882.400000 -156.505000 -8.600300 1782.800000 -156.504200 -8.597800 1684.400000 -156.503200 -8.595200 1601.200000 -156.502300 -8.592800 1588.000000 -156.501400 -8.591000 1533.600000 -156.500700 -8.589700 1463.600000 -156.500300 -8.584100 1448.000000 -156.501100 -8.585000 1465.200000 -156.501800 -8.585900 1509.200000 -156.502600 -8.586800 1532.800000 -156.503300 -8.587800 1580.000000 -156.504100 -8.588600 1606.000000 -156.504800 -8.589500 1659.200000 -156.505400 -8.590200 1646.400000 -156.505300 -8.590800 1632.800000 -156.504900 -8.590800 1635.200000 -156.504600 -8.590300 1622.400000 -156.504100 -8.589600 1604.000000 -156.503600 -8.588900 1572.800000 -156.503000 -8.588100 1532.400000 -156.502300 -8.587300 1506.400000 -156.501700 -8.586500 1487.200000 -156.501000 -8.585600 1448.800000 -156.500400 -8.584800 1409.600000 -156.500100 -8.580800 1442.000000 -156.500400 -8.581300 1430.800000 -156.500400 -8.581900 1416.000000 -156.500500 -8.582600 1420.400000 -156.500300 -8.583100 1406.800000 -156.500200 -8.583200 1417.200000 +156.661500 -7.501600 1100.800000 +156.663100 -7.504200 1099.200000 +156.664800 -7.506700 1100.800000 +156.666400 -7.509300 1006.000000 +156.668000 -7.511900 879.600000 +156.669700 -7.514500 868.000000 +156.671400 -7.517100 1012.800000 +156.673000 -7.519800 995.600000 +156.674700 -7.522400 986.000000 +156.676300 -7.525100 1004.800000 +156.677800 -7.527800 993.600000 +156.679200 -7.530500 981.600000 +156.680400 -7.532600 972.000000 +156.681400 -7.534700 1003.600000 +156.682200 -7.536600 1000.800000 +156.683000 -7.538500 997.600000 +156.683600 -7.540000 995.200000 +156.684100 -7.541400 985.600000 +156.684600 -7.542600 980.800000 +156.685100 -7.543900 978.400000 +156.685700 -7.545200 974.400000 +156.686300 -7.546500 974.400000 +156.686900 -7.547700 974.400000 +156.687500 -7.549000 972.400000 +156.688100 -7.550300 975.600000 +156.688700 -7.551600 972.800000 +156.689100 -7.553000 970.800000 +156.689700 -7.554300 974.400000 +156.690300 -7.555500 972.400000 +156.691000 -7.556800 967.600000 +156.691500 -7.558000 962.800000 +156.692300 -7.559000 958.400000 +156.693000 -7.560000 950.800000 +156.693800 -7.561100 945.200000 +156.694800 -7.562100 939.600000 +156.695800 -7.563300 930.000000 +156.696700 -7.564400 923.200000 +156.697600 -7.565500 916.800000 +156.698500 -7.566500 913.600000 +156.699400 -7.567600 908.800000 +156.700300 -7.568700 904.400000 +156.701100 -7.569700 900.400000 +156.702000 -7.570800 892.800000 +156.702900 -7.571800 894.800000 +156.703800 -7.572900 888.400000 +156.704700 -7.574000 874.000000 +156.705600 -7.575000 865.600000 +156.706500 -7.576100 862.000000 +156.707400 -7.577200 853.600000 +156.708200 -7.578200 851.600000 +156.709100 -7.579300 856.800000 +156.709900 -7.580400 856.000000 +156.710800 -7.581500 854.400000 +156.711600 -7.582600 865.600000 +156.712400 -7.583700 857.200000 +156.713300 -7.584700 871.200000 +156.714200 -7.585700 869.600000 +156.715100 -7.586700 870.000000 +156.716000 -7.587700 862.400000 +156.716900 -7.588700 866.400000 +156.717800 -7.589700 866.400000 +156.718700 -7.590700 851.600000 +156.719600 -7.591700 845.600000 +156.720500 -7.592700 836.000000 +156.721400 -7.593700 825.600000 +156.722300 -7.594800 825.200000 +156.723100 -7.595800 824.000000 +156.724000 -7.596900 822.000000 +156.724800 -7.597900 820.400000 +156.725600 -7.598900 823.600000 +156.726500 -7.599900 827.600000 +156.727600 -7.600500 837.600000 +156.728500 -7.599900 850.400000 +156.729300 -7.598900 859.200000 +156.730100 -7.597800 869.600000 +156.730900 -7.596700 879.200000 +156.731800 -7.595600 882.400000 +156.732600 -7.594500 888.800000 +156.732800 -7.593400 894.000000 +156.731900 -7.592400 898.400000 +156.730900 -7.591300 892.800000 +156.729800 -7.590200 896.400000 +156.728700 -7.589100 907.600000 +156.727600 -7.587900 907.600000 +156.726400 -7.586600 915.200000 +156.725200 -7.585200 920.400000 +156.724100 -7.583800 940.800000 +156.722900 -7.582400 950.000000 +156.721700 -7.581000 950.000000 +156.720500 -7.579500 974.400000 +156.719400 -7.578100 980.000000 +156.718200 -7.576600 982.400000 +156.717000 -7.575200 978.400000 +156.715800 -7.573700 975.200000 +156.714600 -7.572300 982.400000 +156.713500 -7.570900 982.400000 +156.712300 -7.569400 988.800000 +156.711100 -7.568000 994.400000 +156.710000 -7.566600 992.400000 +156.708800 -7.565200 999.200000 +156.707600 -7.563800 997.200000 +156.706400 -7.562400 1005.600000 +156.705200 -7.561000 1008.400000 +156.704000 -7.559500 1006.400000 +156.702800 -7.558100 1007.600000 +156.701700 -7.556600 1010.800000 +156.700500 -7.555200 1014.800000 +156.699300 -7.553700 1018.800000 +156.698100 -7.552300 1021.600000 +156.696900 -7.550800 1027.600000 +156.695800 -7.549400 1028.000000 +156.694600 -7.548000 1020.000000 +156.693400 -7.546600 1020.400000 +156.692300 -7.545200 1016.800000 +156.691100 -7.543800 1018.800000 +156.689900 -7.542400 1017.600000 +156.688700 -7.541000 1019.600000 +156.687500 -7.539500 1017.200000 +156.686400 -7.538100 1020.400000 +156.685200 -7.536700 1018.000000 +156.684000 -7.535300 1016.000000 +156.682800 -7.533900 1019.200000 +156.681700 -7.532500 988.000000 +156.680500 -7.531100 980.000000 +156.679300 -7.529700 987.600000 +156.678100 -7.528300 992.400000 +156.677000 -7.526800 1009.200000 +156.675900 -7.525300 1000.400000 +156.674900 -7.523800 989.600000 +156.673800 -7.522200 980.400000 +156.672900 -7.520700 989.200000 +156.671900 -7.519200 1000.800000 +156.671000 -7.517600 978.000000 +156.670100 -7.516000 888.800000 +156.669300 -7.514400 824.400000 +156.668400 -7.512800 818.400000 +156.667500 -7.511200 926.000000 +156.666700 -7.509700 994.000000 +156.665900 -7.508100 1094.000000 +156.664600 -7.506900 1101.600000 +156.663200 -7.507400 1089.600000 +156.662500 -7.508800 1031.200000 +156.663200 -7.509900 986.800000 +156.663900 -7.511200 912.400000 +156.664800 -7.512500 806.000000 +156.665800 -7.513700 752.800000 +156.666900 -7.514900 753.600000 +156.667900 -7.516200 801.600000 +156.668900 -7.517400 899.600000 +156.669900 -7.518700 974.800000 +156.670600 -7.520100 996.800000 +156.669800 -7.521300 983.200000 +156.668400 -7.522200 974.000000 +156.666900 -7.522800 950.000000 +156.665700 -7.521900 938.400000 +156.664600 -7.520700 930.000000 +156.663400 -7.519400 919.600000 +156.662200 -7.518100 906.000000 +156.660900 -7.516800 860.800000 +156.659700 -7.515400 852.000000 +156.658400 -7.514100 890.800000 +156.657200 -7.512700 967.600000 +156.655900 -7.511400 1069.600000 +156.655200 -7.510000 1074.400000 +156.655900 -7.509000 1078.800000 +156.656800 -7.508100 1083.600000 +156.657900 -7.507100 1087.600000 +156.659100 -7.506100 1091.600000 +156.660200 -7.505100 1096.000000 +156.661400 -7.504100 1098.400000 +156.662600 -7.503100 1100.400000 +156.663900 -7.502100 1100.800000 +156.665100 -7.501100 1100.000000 +156.666400 -7.500700 1098.400000 +156.667200 -7.501800 1095.600000 +156.668100 -7.503100 1091.200000 +156.669000 -7.504400 1087.200000 +156.670000 -7.505800 1082.800000 +156.671000 -7.507200 1077.600000 +156.672100 -7.508700 1067.200000 +156.673100 -7.510100 1058.400000 +156.674100 -7.511500 1047.600000 +156.675000 -7.512900 1040.000000 +156.676000 -7.514200 1028.400000 +156.677000 -7.515700 1023.600000 +156.677900 -7.517000 1023.600000 +156.678600 -7.517700 1027.200000 +156.678900 -7.517700 1030.400000 +156.678900 -7.517600 1030.000000 +156.678700 -7.517600 1028.000000 +156.678500 -7.517700 1025.200000 +156.678300 -7.517900 1023.200000 +156.678000 -7.518000 1021.200000 +156.677400 -7.517500 1018.400000 +156.676600 -7.516600 1018.000000 +156.675700 -7.515700 1021.600000 +156.674800 -7.514700 1026.800000 +156.673900 -7.513600 1037.600000 +156.672900 -7.512600 1047.200000 +156.671900 -7.512000 968.000000 +156.670700 -7.512300 948.000000 +156.669500 -7.512600 847.200000 +156.668200 -7.512900 784.000000 +156.666900 -7.513200 760.800000 +156.665500 -7.513600 752.400000 +156.664200 -7.513900 746.000000 +156.662800 -7.514300 737.600000 +156.661500 -7.514600 778.000000 +156.660100 -7.515000 844.400000 +156.658800 -7.515300 934.800000 +156.657400 -7.515600 1008.800000 +156.656100 -7.515700 1009.600000 +156.655500 -7.515000 1020.800000 +156.655300 -7.514200 1041.200000 +156.655100 -7.513300 1053.200000 +156.655200 -7.512500 1061.600000 +156.655700 -7.512200 1063.600000 +156.656400 -7.512000 999.600000 +156.657200 -7.511800 962.800000 +156.658200 -7.511600 928.400000 +156.659100 -7.511300 949.200000 +156.660100 -7.511100 952.400000 +156.661100 -7.510800 984.000000 +156.662200 -7.510600 970.800000 +156.663200 -7.510400 987.600000 +156.664200 -7.510100 982.000000 +156.665200 -7.509900 990.000000 +156.665800 -7.510100 969.200000 +156.665900 -7.510600 938.400000 +156.665600 -7.511000 924.000000 +156.665200 -7.511400 880.800000 +156.664900 -7.511900 830.000000 +156.664500 -7.512500 831.200000 +156.664100 -7.513200 758.800000 +156.663800 -7.513700 751.200000 +156.663500 -7.513800 752.800000 +156.663600 -7.513800 749.200000 +156.663900 -7.513800 749.600000 +156.664200 -7.513700 755.200000 +156.664300 -7.513700 759.200000 +156.664300 -7.513600 761.200000 +156.664400 -7.513500 761.200000 +156.664300 -7.513500 762.400000 +156.664200 -7.513500 760.800000 +156.664300 -7.513600 758.800000 +156.664200 -7.513600 756.000000 +156.664300 -7.513700 756.400000 +156.664500 -7.513900 752.000000 +156.664400 -7.513900 752.400000 +156.664300 -7.513900 752.800000 +156.664200 -7.514000 748.400000 +156.664100 -7.514000 745.600000 +156.664300 -7.514000 746.000000 +156.664400 -7.514000 747.600000 +156.664300 -7.514000 747.600000 +156.664100 -7.513900 747.600000 +156.663900 -7.513900 748.400000 +156.663800 -7.513800 750.000000 +156.664100 -7.513800 748.400000 +156.664200 -7.513800 749.600000 +156.664300 -7.513800 752.000000 +156.664500 -7.513800 754.800000 +156.664400 -7.513800 754.400000 +156.664300 -7.513700 749.600000 +156.664100 -7.513700 758.000000 +156.664100 -7.513600 752.800000 +156.664200 -7.513600 760.400000 +156.664400 -7.513600 759.200000 +156.664500 -7.513500 758.800000 +156.664400 -7.513500 759.200000 +156.664200 -7.513400 769.200000 +156.664000 -7.513300 764.800000 +156.663900 -7.513300 784.800000 +156.664100 -7.513300 792.800000 +156.664400 -7.513300 763.200000 +156.664500 -7.513200 762.400000 +156.664400 -7.513200 800.800000 +156.664200 -7.513100 785.200000 +156.664100 -7.513000 792.400000 +156.664200 -7.513000 824.400000 +156.664100 -7.512900 798.800000 +156.663800 -7.512900 808.800000 +156.663500 -7.512800 830.400000 +156.663200 -7.512700 832.000000 +156.662800 -7.512700 851.600000 +156.662400 -7.512700 821.200000 +156.662000 -7.512600 832.400000 +156.661700 -7.512500 810.000000 +156.661500 -7.512400 811.600000 +156.661200 -7.512300 857.200000 +156.660900 -7.512300 857.600000 +156.660600 -7.512300 870.400000 +156.660000 -7.512400 878.000000 +156.659400 -7.512400 882.000000 +156.658900 -7.512200 919.600000 +156.658500 -7.511800 927.600000 +156.658400 -7.511500 950.800000 +156.658400 -7.511200 947.200000 +156.658600 -7.511100 932.400000 +156.658900 -7.511100 935.200000 +156.659200 -7.511200 933.200000 +156.659600 -7.511400 932.800000 +156.660100 -7.511500 922.000000 +156.660600 -7.511600 919.200000 +156.661000 -7.511900 904.800000 +156.661000 -7.512300 850.400000 +156.660600 -7.512800 827.600000 +156.660200 -7.513300 822.000000 +156.659900 -7.513900 831.200000 +156.659500 -7.514100 832.400000 +156.659300 -7.514100 849.600000 +156.659500 -7.514300 841.200000 +156.659900 -7.514400 823.200000 +156.660200 -7.514500 808.800000 +156.660400 -7.514600 794.400000 +156.660500 -7.514600 792.000000 +156.660500 -7.514500 788.000000 +156.660600 -7.514500 786.000000 +156.660600 -7.514500 785.200000 +156.660800 -7.514500 778.400000 +156.660900 -7.514500 784.400000 +156.660900 -7.514500 777.600000 +156.660700 -7.514500 784.000000 +156.660800 -7.514500 782.800000 +156.660800 -7.514500 774.800000 +156.660900 -7.514500 770.400000 +156.660800 -7.514500 782.400000 +156.660800 -7.514500 856.400000 +156.660800 -7.514500 782.800000 +156.661000 -7.514500 769.200000 +156.661400 -7.514500 754.000000 +156.661700 -7.514600 745.200000 +156.662100 -7.514600 739.600000 +156.662400 -7.514600 736.400000 +156.662800 -7.514600 735.600000 +156.663200 -7.514600 744.800000 +156.663500 -7.514600 741.600000 +156.663800 -7.514600 742.400000 +156.664200 -7.514500 742.000000 +156.664600 -7.514500 743.600000 +156.664800 -7.514500 746.800000 +156.664900 -7.514500 746.000000 +156.664900 -7.514400 746.800000 +156.665000 -7.514400 746.000000 +156.665000 -7.514300 746.000000 +156.665100 -7.514300 745.600000 +156.665100 -7.514300 748.400000 +156.665200 -7.514200 746.000000 +156.665200 -7.514200 746.800000 +156.665000 -7.514100 746.800000 +156.665000 -7.514100 747.200000 +156.664900 -7.514200 747.600000 +156.664800 -7.514200 748.000000 +156.664700 -7.514200 748.400000 +156.664600 -7.514200 746.400000 +156.664500 -7.514200 749.600000 +156.664400 -7.514100 745.600000 +156.664300 -7.514100 745.600000 +156.664200 -7.514100 745.200000 +156.664100 -7.514100 747.200000 +156.664000 -7.514000 750.800000 +156.663900 -7.514000 747.600000 +156.663800 -7.514000 747.200000 +156.663700 -7.514000 748.800000 +156.663800 -7.513900 748.800000 +156.663800 -7.513900 748.800000 +156.663800 -7.513800 753.200000 +156.663700 -7.513800 749.200000 +156.663800 -7.513800 750.000000 +156.663900 -7.513700 763.200000 +156.664000 -7.513600 752.800000 +156.664000 -7.513600 758.400000 +156.664100 -7.513500 762.400000 +156.664200 -7.513500 786.400000 +156.664300 -7.513400 790.000000 +156.664300 -7.513400 775.600000 +156.664300 -7.513300 774.400000 +156.664300 -7.513300 782.000000 +156.664400 -7.513200 766.400000 +156.664400 -7.513100 820.000000 +156.664300 -7.513100 820.000000 +156.664100 -7.513000 838.800000 +156.663900 -7.513000 832.800000 +156.663600 -7.512900 944.400000 +156.663300 -7.512900 830.400000 +156.663000 -7.512800 829.600000 +156.662700 -7.512700 851.200000 +156.662400 -7.512700 865.600000 +156.662100 -7.512600 853.600000 +156.661700 -7.512600 867.600000 +156.661400 -7.512500 876.800000 +156.661000 -7.512400 871.200000 +156.660700 -7.512400 890.000000 +156.660400 -7.512300 864.800000 +156.660200 -7.512300 871.600000 +156.660000 -7.512300 871.600000 +156.659800 -7.512300 880.000000 +156.659500 -7.512200 884.000000 +156.659200 -7.512200 885.600000 +156.659000 -7.512100 893.200000 +156.658700 -7.512000 895.600000 +156.658400 -7.511800 902.400000 +156.658100 -7.511700 919.600000 +156.658000 -7.511700 924.000000 +156.658200 -7.511900 918.400000 +156.658300 -7.511900 915.200000 +156.658400 -7.512000 912.400000 +156.658400 -7.512000 909.200000 +156.658300 -7.512100 898.800000 +156.658200 -7.512100 902.400000 +156.658100 -7.512100 902.400000 +156.658300 -7.512200 905.200000 +156.658900 -7.512400 886.400000 +156.659600 -7.512500 882.400000 +156.660300 -7.512700 857.600000 +156.660900 -7.512800 850.000000 +156.661500 -7.512800 832.400000 +156.661900 -7.512900 820.400000 +156.662400 -7.513100 824.400000 +156.662900 -7.513200 803.600000 +156.663500 -7.513400 761.200000 +156.663900 -7.513500 755.600000 +156.664300 -7.513700 759.200000 +156.664500 -7.513700 755.200000 +156.664700 -7.513700 753.600000 +156.664700 -7.513700 754.800000 +156.664700 -7.513700 755.600000 +156.664600 -7.513600 758.400000 +156.664600 -7.513500 780.000000 +156.664800 -7.513500 757.200000 +156.664900 -7.513400 758.400000 +156.664900 -7.513300 779.200000 +156.664800 -7.513100 785.200000 +156.664800 -7.513000 800.800000 +156.664900 -7.513000 770.400000 +156.664900 -7.513300 757.200000 +156.665000 -7.513700 751.200000 +156.665000 -7.514000 747.600000 +156.664900 -7.514100 747.600000 +156.664800 -7.514200 748.000000 +156.664700 -7.514200 747.600000 +156.664500 -7.514100 747.200000 +156.664400 -7.514100 746.000000 +156.664200 -7.514000 746.800000 +156.664200 -7.514000 746.400000 +156.664300 -7.514000 749.200000 +156.664500 -7.514100 745.600000 +156.664600 -7.514200 749.200000 +156.664700 -7.514200 746.800000 +156.664700 -7.514200 747.600000 +156.664800 -7.514300 747.200000 +156.664900 -7.514300 746.800000 +156.664800 -7.514300 747.200000 +156.664700 -7.514200 748.000000 +156.664500 -7.514100 748.000000 +156.664300 -7.514000 750.800000 +156.664000 -7.513900 748.400000 +156.663800 -7.513700 750.000000 +156.663500 -7.513500 762.000000 +156.663300 -7.513400 767.200000 +156.663000 -7.513200 840.800000 +156.662700 -7.513200 823.600000 +156.662400 -7.513200 828.000000 +156.662100 -7.513100 845.200000 +156.661800 -7.513000 864.400000 +156.661600 -7.513000 865.200000 +156.661300 -7.512900 856.000000 +156.661000 -7.512900 866.400000 +156.660800 -7.512800 868.000000 +156.660700 -7.512700 866.000000 +156.660600 -7.512600 866.800000 +156.660600 -7.512500 864.000000 +156.660700 -7.512700 850.800000 +156.660800 -7.512800 840.800000 +156.660900 -7.512900 850.400000 +156.660900 -7.512900 860.000000 +156.660800 -7.512900 859.600000 +156.660600 -7.512800 852.000000 +156.660600 -7.512800 860.400000 +156.660900 -7.512700 860.800000 +156.660900 -7.512600 863.200000 +156.660800 -7.512500 860.000000 +156.660800 -7.512500 869.200000 +156.660900 -7.512800 821.200000 +156.660900 -7.513000 814.000000 +156.660900 -7.513100 804.800000 +156.660800 -7.513100 811.200000 +156.660600 -7.513000 842.800000 +156.660900 -7.513100 834.000000 +156.661400 -7.513100 862.000000 +156.661900 -7.513000 863.600000 +156.662200 -7.512900 832.800000 +156.662700 -7.512900 828.400000 +156.663100 -7.512800 835.600000 +156.663400 -7.512800 855.600000 +156.664100 -7.512800 843.200000 +156.664500 -7.512800 835.200000 +156.665000 -7.512800 815.600000 +156.665300 -7.512800 794.000000 +156.665400 -7.512700 811.200000 +156.665400 -7.512700 805.200000 +156.665500 -7.512600 788.400000 +156.665500 -7.512600 794.800000 +156.665500 -7.512500 813.600000 +156.665500 -7.512500 800.000000 +156.665400 -7.512400 821.600000 +156.665400 -7.512400 823.600000 +156.665300 -7.512400 813.200000 +156.665300 -7.512300 804.400000 +156.665400 -7.512300 824.000000 +156.665400 -7.512300 820.000000 +156.665300 -7.512200 835.600000 +156.665200 -7.512200 900.000000 +156.665000 -7.512100 845.600000 +156.664900 -7.512100 853.600000 +156.664800 -7.512000 876.400000 +156.664800 -7.512000 925.600000 +156.664700 -7.511900 870.000000 +156.664900 -7.511900 866.000000 +156.665100 -7.511900 862.400000 +156.665100 -7.511900 890.000000 +156.665500 -7.511900 921.200000 +156.665800 -7.511900 915.600000 +156.665900 -7.511800 854.400000 +156.665900 -7.511800 848.000000 +156.665800 -7.511700 856.400000 +156.665900 -7.511700 913.200000 +156.666000 -7.511700 920.400000 +156.666100 -7.511600 914.400000 +156.666200 -7.511600 910.400000 +156.666200 -7.511600 913.600000 +156.666200 -7.511600 916.400000 +156.666400 -7.511600 922.000000 +156.666500 -7.511600 915.600000 +156.666600 -7.511500 913.600000 +156.666800 -7.511500 910.400000 +156.666800 -7.511500 921.600000 +156.666800 -7.511400 916.000000 +156.666600 -7.511400 922.000000 +156.666400 -7.511300 923.600000 +156.666100 -7.511300 930.400000 +156.665900 -7.511200 937.200000 +156.665600 -7.511200 933.600000 +156.665300 -7.511100 925.200000 +156.665000 -7.511000 908.800000 +156.664900 -7.510900 904.800000 +156.664800 -7.510900 904.400000 +156.664600 -7.511000 908.800000 +156.664500 -7.511000 896.000000 +156.664400 -7.511100 892.000000 +156.664200 -7.511200 892.800000 +156.664100 -7.511200 892.400000 +156.664000 -7.511300 884.800000 +156.663900 -7.511300 881.200000 +156.663800 -7.511300 886.400000 +156.663700 -7.511300 887.200000 +156.663500 -7.511400 880.800000 +156.663300 -7.511800 872.400000 +156.663500 -7.512400 841.200000 +156.664300 -7.513700 752.000000 +156.665400 -7.515400 750.000000 +156.666900 -7.517600 841.600000 +156.668500 -7.519900 954.800000 +156.670100 -7.522100 979.600000 +156.671700 -7.524400 964.400000 +156.673300 -7.526700 981.600000 +156.674900 -7.528900 983.200000 +156.676600 -7.531200 965.200000 +156.678400 -7.533700 960.800000 +156.680300 -7.536200 993.200000 +156.682100 -7.538700 996.400000 +156.684000 -7.541300 986.800000 +156.685900 -7.543800 984.400000 +156.687800 -7.546300 987.200000 +156.689500 -7.548900 986.800000 +156.691300 -7.551500 997.200000 +156.693000 -7.554100 995.200000 +156.694800 -7.556600 979.200000 +156.696500 -7.559200 976.400000 +156.698200 -7.561800 956.400000 +156.700000 -7.564300 950.000000 +156.701700 -7.566900 934.800000 +156.703400 -7.569500 918.400000 +156.705200 -7.572000 920.400000 +156.706900 -7.574600 887.200000 +156.708600 -7.576900 869.200000 +156.709700 -7.578600 872.800000 +156.710700 -7.579800 872.400000 +156.711400 -7.580800 870.000000 +156.712100 -7.581500 872.800000 +156.712700 -7.582200 879.600000 +156.713200 -7.582800 876.000000 +156.713700 -7.583300 879.600000 +156.714100 -7.583900 886.000000 +156.714500 -7.584400 890.000000 +156.714800 -7.584700 885.200000 +156.714900 -7.585000 882.000000 +156.715200 -7.585400 880.000000 +156.715400 -7.585600 877.200000 +156.715700 -7.585900 876.000000 +156.715900 -7.586200 876.000000 +156.715900 -7.586300 875.600000 +156.716100 -7.586500 875.600000 +156.716100 -7.586600 875.600000 +156.716000 -7.586500 875.600000 +156.716000 -7.586600 874.800000 +156.716200 -7.586800 875.600000 +156.716200 -7.586800 875.200000 +156.716200 -7.586800 874.000000 +156.716200 -7.586700 875.600000 +156.716200 -7.586700 876.000000 +156.716200 -7.586600 876.800000 +156.716400 -7.586700 877.200000 +156.716400 -7.586700 876.800000 +156.716300 -7.586600 876.800000 +156.716400 -7.586600 877.200000 +156.716300 -7.586600 877.200000 +156.716300 -7.586600 876.400000 +156.716300 -7.586600 876.400000 +156.716200 -7.586600 877.600000 +156.716200 -7.586600 876.400000 +156.716100 -7.586600 876.400000 +156.716000 -7.586500 876.000000 +156.716100 -7.586500 876.400000 +156.716200 -7.586500 876.800000 +156.716200 -7.586500 876.800000 +156.716200 -7.586400 877.200000 +156.716100 -7.586300 876.400000 +156.716200 -7.586300 877.200000 +156.716100 -7.586200 877.200000 +156.716000 -7.586100 877.200000 +156.715800 -7.585900 877.200000 +156.715600 -7.585700 877.200000 +156.715400 -7.585600 878.000000 +156.715200 -7.585400 878.400000 +156.714900 -7.585200 880.000000 +156.714800 -7.585000 880.800000 +156.714800 -7.585000 881.200000 +156.714900 -7.585100 880.800000 +156.715100 -7.585100 880.400000 +156.715200 -7.585200 880.800000 +156.715300 -7.585200 880.400000 +156.715300 -7.585200 882.000000 +156.715400 -7.585200 882.000000 +156.715400 -7.585100 882.000000 +156.715400 -7.585000 883.200000 +156.715400 -7.585000 883.600000 +156.715500 -7.585100 883.200000 +156.715700 -7.585300 882.800000 +156.716100 -7.585500 880.400000 +156.716900 -7.585900 886.000000 +156.717600 -7.586300 888.400000 +156.718300 -7.586600 892.800000 +156.719900 -7.587300 897.200000 +156.722400 -7.588600 884.800000 +156.725200 -7.589900 882.000000 +156.728000 -7.591400 890.400000 +156.730800 -7.592900 888.400000 +156.733600 -7.594300 898.000000 +156.736300 -7.595800 918.800000 +156.739100 -7.597200 939.200000 +156.741900 -7.598700 948.400000 +156.744700 -7.600200 964.000000 +156.747500 -7.601600 976.000000 +156.750300 -7.603100 990.800000 +156.753100 -7.604600 997.600000 +156.755900 -7.606100 1006.000000 +156.758600 -7.607600 1018.400000 +156.761400 -7.609200 1023.200000 +156.764200 -7.610700 1026.400000 +156.767000 -7.612200 1029.600000 +156.769800 -7.613800 1026.400000 +156.772500 -7.615300 1026.000000 +156.775300 -7.616900 1024.400000 +156.778100 -7.618400 1018.800000 +156.780900 -7.620000 1016.800000 +156.783700 -7.621500 1018.800000 +156.786500 -7.623100 1019.600000 +156.789300 -7.624600 1021.600000 +156.792100 -7.626200 1009.600000 +156.794900 -7.627800 1005.200000 +156.797600 -7.629300 1006.000000 +156.800400 -7.630900 1004.400000 +156.803200 -7.632400 1006.800000 +156.806000 -7.634000 1006.000000 +156.808700 -7.635600 1004.800000 +156.811500 -7.637100 1011.200000 +156.814300 -7.638600 1020.800000 +156.817100 -7.640200 1019.200000 +156.819900 -7.641700 1012.000000 +156.822700 -7.643200 1007.200000 +156.825400 -7.644700 1013.600000 +156.828200 -7.646300 1020.000000 +156.831000 -7.647800 1015.200000 +156.833800 -7.649300 1024.800000 +156.836600 -7.650900 1019.200000 +156.839400 -7.652400 1014.800000 +156.842100 -7.654000 1012.800000 +156.844900 -7.655600 1002.800000 +156.847700 -7.657200 1000.000000 +156.850500 -7.658700 1001.600000 +156.853400 -7.660300 997.600000 +156.856200 -7.661900 997.200000 +156.859000 -7.663500 1000.400000 +156.861900 -7.664700 1006.800000 +156.864900 -7.665800 1008.800000 +156.867600 -7.667500 1009.200000 +156.867600 -7.670400 1004.400000 +156.866900 -7.673500 1004.400000 +156.866100 -7.676700 1003.200000 +156.865400 -7.679900 1005.200000 +156.864700 -7.683000 1004.800000 +156.864000 -7.686200 1001.600000 +156.863200 -7.689400 994.800000 +156.862400 -7.692600 980.800000 +156.861700 -7.695800 956.400000 +156.860900 -7.698900 926.000000 +156.860100 -7.702100 905.600000 +156.859200 -7.705300 886.000000 +156.858400 -7.708500 867.200000 +156.857600 -7.711700 852.000000 +156.856700 -7.714900 831.600000 +156.855900 -7.718100 812.000000 +156.855000 -7.721300 795.200000 +156.854100 -7.724500 781.600000 +156.853200 -7.727600 771.200000 +156.852300 -7.730800 762.800000 +156.851400 -7.734000 739.200000 +156.850500 -7.737100 738.800000 +156.849600 -7.740300 733.200000 +156.848700 -7.743500 716.800000 +156.847800 -7.746600 706.000000 +156.846900 -7.749800 691.200000 +156.846000 -7.752900 683.600000 +156.845100 -7.756100 679.600000 +156.844200 -7.759300 635.600000 +156.843200 -7.762500 620.800000 +156.842300 -7.765600 608.000000 +156.841400 -7.768800 609.200000 +156.840500 -7.772000 604.000000 +156.839600 -7.775100 598.000000 +156.838700 -7.778300 589.200000 +156.837700 -7.781500 572.800000 +156.836700 -7.784700 568.400000 +156.835800 -7.787900 566.400000 +156.834800 -7.791200 545.200000 +156.833800 -7.794400 536.800000 +156.832800 -7.797700 529.600000 +156.831800 -7.801000 519.200000 +156.830900 -7.804300 510.800000 +156.830000 -7.807500 508.000000 +156.829000 -7.810800 505.200000 +156.828100 -7.814000 503.200000 +156.827100 -7.817200 500.800000 +156.826200 -7.820500 496.800000 +156.825300 -7.823700 494.000000 +156.824400 -7.826900 493.600000 +156.823500 -7.830200 492.400000 +156.822500 -7.833400 491.600000 +156.821600 -7.836600 488.800000 +156.820700 -7.839800 485.200000 +156.819900 -7.843000 483.600000 +156.819000 -7.846200 481.200000 +156.818200 -7.849500 479.200000 +156.817300 -7.852700 477.200000 +156.816500 -7.855900 476.000000 +156.815700 -7.859100 475.600000 +156.814900 -7.862300 473.600000 +156.814000 -7.865500 466.000000 +156.813200 -7.868700 464.800000 +156.812400 -7.872000 466.800000 +156.811600 -7.875200 467.600000 +156.810700 -7.878400 469.600000 +156.809900 -7.881700 474.400000 +156.809100 -7.884900 473.600000 +156.808300 -7.888200 475.200000 +156.807500 -7.891400 472.800000 +156.806600 -7.894700 472.400000 +156.805800 -7.897900 482.000000 +156.805000 -7.901200 483.600000 +156.804200 -7.904400 485.200000 +156.803400 -7.907600 485.600000 +156.802600 -7.910800 479.200000 +156.801800 -7.914000 479.200000 +156.801000 -7.917200 480.000000 +156.800200 -7.920500 481.200000 +156.799400 -7.923700 483.600000 +156.798600 -7.926900 484.400000 +156.797900 -7.930200 484.400000 +156.797100 -7.933400 484.000000 +156.795600 -7.936200 486.400000 +156.793000 -7.938200 491.600000 +156.790300 -7.940100 497.200000 +156.787600 -7.942000 500.400000 +156.784900 -7.944000 504.400000 +156.782200 -7.945900 509.200000 +156.779500 -7.947800 513.200000 +156.776700 -7.949800 518.400000 +156.774000 -7.951700 523.200000 +156.771200 -7.953700 528.800000 +156.768500 -7.955600 533.600000 +156.765700 -7.957600 541.200000 +156.763000 -7.959500 548.800000 +156.760200 -7.961500 554.800000 +156.757500 -7.963500 557.200000 +156.754700 -7.965500 557.600000 +156.751900 -7.967500 560.400000 +156.749200 -7.969400 558.800000 +156.746500 -7.971500 562.400000 +156.743800 -7.973700 568.000000 +156.741100 -7.975800 578.800000 +156.738400 -7.977900 537.200000 +156.735700 -7.980000 498.400000 +156.732900 -7.982000 529.600000 +156.730100 -7.984000 551.600000 +156.727400 -7.986100 549.600000 +156.724600 -7.988100 548.800000 +156.721800 -7.990100 552.000000 +156.719200 -7.992400 557.600000 +156.717900 -7.995600 546.400000 +156.716500 -7.998900 505.600000 +156.715200 -8.002100 503.200000 +156.713900 -8.005400 504.800000 +156.712600 -8.008600 516.000000 +156.711300 -8.011900 547.600000 +156.710100 -8.015200 520.000000 +156.708900 -8.018400 518.400000 +156.707800 -8.021700 515.600000 +156.706600 -8.025000 523.200000 +156.705400 -8.028300 534.800000 +156.704200 -8.031700 542.000000 +156.703000 -8.035000 550.800000 +156.701800 -8.038300 556.400000 +156.700700 -8.041600 564.000000 +156.699500 -8.045000 581.200000 +156.698400 -8.048300 597.600000 +156.697200 -8.051600 603.200000 +156.696100 -8.055000 629.600000 +156.694900 -8.058300 666.800000 +156.693800 -8.061700 656.400000 +156.692600 -8.065000 669.200000 +156.691400 -8.068300 700.400000 +156.690300 -8.071700 725.600000 +156.689100 -8.075000 753.600000 +156.688000 -8.078400 796.400000 +156.686900 -8.081800 828.400000 +156.685700 -8.085100 832.000000 +156.684600 -8.088500 854.400000 +156.683500 -8.091800 880.000000 +156.682300 -8.095200 904.800000 +156.681200 -8.098600 932.800000 +156.680100 -8.101900 974.000000 +156.678900 -8.105200 977.200000 +156.677800 -8.108600 994.000000 +156.676700 -8.111900 1010.800000 +156.675600 -8.115200 1026.000000 +156.674400 -8.118500 1074.400000 +156.673300 -8.121800 1182.000000 +156.672200 -8.125200 1129.600000 +156.671100 -8.128500 1139.600000 +156.670000 -8.131800 1177.200000 +156.668900 -8.135100 1254.000000 +156.667800 -8.138400 1401.600000 +156.666700 -8.141700 1304.800000 +156.665600 -8.145000 1304.000000 +156.664600 -8.148300 1289.200000 +156.663500 -8.151600 1268.000000 +156.662400 -8.154900 1307.600000 +156.661400 -8.158200 1362.000000 +156.660300 -8.161500 1335.200000 +156.659200 -8.164800 1188.400000 +156.658200 -8.168100 1208.400000 +156.657100 -8.171400 1302.800000 +156.656000 -8.174800 1270.000000 +156.655000 -8.178100 1228.400000 +156.653900 -8.181400 1287.200000 +156.652900 -8.184700 1230.400000 +156.651900 -8.188000 1220.000000 +156.650800 -8.191300 1218.400000 +156.649800 -8.194600 1278.800000 +156.648800 -8.198000 1305.600000 +156.647700 -8.201400 1324.400000 +156.646700 -8.204700 1382.000000 +156.645700 -8.208000 1507.200000 +156.644700 -8.211400 1574.000000 +156.643700 -8.214700 1569.200000 +156.642600 -8.218000 1565.200000 +156.641600 -8.221300 1568.000000 +156.640600 -8.224600 1598.800000 +156.639700 -8.227900 1634.400000 +156.638800 -8.231200 1488.800000 +156.637800 -8.234500 1563.200000 +156.636800 -8.237800 1591.200000 +156.635800 -8.241000 1643.200000 +156.634800 -8.244300 1760.800000 +156.633700 -8.247600 1786.000000 +156.632700 -8.250900 2000.800000 +156.631700 -8.254200 2029.200000 +156.630600 -8.257500 2042.000000 +156.629500 -8.260800 2068.800000 +156.628200 -8.264000 2056.400000 +156.626900 -8.267100 2044.800000 +156.625600 -8.270300 2052.400000 +156.624300 -8.273500 2080.000000 +156.623000 -8.276700 2154.000000 +156.621700 -8.279900 2311.200000 +156.620300 -8.283100 2282.400000 +156.619000 -8.286400 2305.200000 +156.617600 -8.289600 2303.200000 +156.616300 -8.292900 2315.200000 +156.614900 -8.296100 2378.800000 +156.613600 -8.299300 2411.200000 +156.612300 -8.302500 2479.200000 +156.610900 -8.305800 2409.200000 +156.609600 -8.309000 2408.800000 +156.608200 -8.312300 2468.000000 +156.606900 -8.315600 2421.600000 +156.605500 -8.318800 2398.800000 +156.604200 -8.322100 2344.000000 +156.602800 -8.325400 2293.200000 +156.601500 -8.328700 2251.200000 +156.599700 -8.331800 2180.400000 +156.597900 -8.334900 2140.000000 +156.596200 -8.337900 2081.200000 +156.594400 -8.341000 2038.800000 +156.592700 -8.344000 2000.400000 +156.591000 -8.347100 1978.000000 +156.589200 -8.350100 1952.800000 +156.587500 -8.353200 1940.400000 +156.585800 -8.356200 1950.400000 +156.584000 -8.359300 1951.200000 +156.582300 -8.362400 1950.000000 +156.580900 -8.365100 1942.400000 +156.579100 -8.366900 1921.600000 +156.576900 -8.367100 1884.000000 +156.574500 -8.367300 1830.800000 +156.572100 -8.367500 1794.000000 +156.569700 -8.367600 1745.200000 +156.567300 -8.367600 1700.800000 +156.564900 -8.367600 1636.400000 +156.562600 -8.367600 1569.200000 +156.560200 -8.367700 1512.400000 +156.557800 -8.367700 1434.800000 +156.555600 -8.367600 1376.400000 +156.553400 -8.367600 1322.000000 +156.551300 -8.367600 1266.000000 +156.549000 -8.367600 1218.800000 +156.546800 -8.367500 1162.800000 +156.544600 -8.367500 1098.000000 +156.542500 -8.367500 1038.400000 +156.540700 -8.367600 999.600000 +156.538900 -8.367600 940.800000 +156.537200 -8.367600 872.400000 +156.535400 -8.367700 804.800000 +156.533800 -8.367700 752.800000 +156.532400 -8.367800 728.800000 +156.531100 -8.367800 665.600000 +156.529800 -8.367800 621.600000 +156.528500 -8.367900 578.400000 +156.527200 -8.367900 524.000000 +156.526000 -8.367900 479.600000 +156.524800 -8.367900 434.000000 +156.523500 -8.367800 410.800000 +156.522300 -8.367800 372.800000 +156.521100 -8.367800 362.800000 +156.519900 -8.367800 365.200000 +156.518700 -8.367700 404.400000 +156.517500 -8.367700 472.800000 +156.516300 -8.367700 556.000000 +156.515200 -8.367900 623.600000 +156.514100 -8.368000 673.600000 +156.512900 -8.368100 726.800000 +156.512400 -8.367800 767.200000 +156.512500 -8.367200 752.400000 +156.512600 -8.366500 709.600000 +156.512700 -8.365800 670.000000 +156.512800 -8.365000 650.800000 +156.512900 -8.364200 604.000000 +156.513000 -8.363300 573.200000 +156.513300 -8.362600 509.600000 +156.514100 -8.362500 493.600000 +156.515100 -8.362800 459.600000 +156.516100 -8.363100 407.200000 +156.517300 -8.363300 332.000000 +156.518400 -8.363500 297.200000 +156.519700 -8.363700 286.800000 +156.520900 -8.363700 307.200000 +156.522000 -8.363600 302.800000 +156.523100 -8.363400 275.600000 +156.524300 -8.363300 269.600000 +156.525300 -8.363100 304.400000 +156.526300 -8.363000 359.200000 +156.527200 -8.363000 406.400000 +156.528200 -8.363000 431.600000 +156.529100 -8.362900 470.400000 +156.530000 -8.362900 500.000000 +156.530900 -8.362900 532.400000 +156.531700 -8.362800 575.600000 +156.532600 -8.362900 620.400000 +156.532900 -8.363300 625.600000 +156.532700 -8.363700 616.800000 +156.532200 -8.363800 593.600000 +156.531400 -8.363600 562.800000 +156.530300 -8.363400 508.800000 +156.529200 -8.363200 458.800000 +156.528100 -8.363200 428.800000 +156.527100 -8.363100 382.000000 +156.526200 -8.363200 338.400000 +156.525300 -8.363300 296.400000 +156.524600 -8.363400 276.800000 +156.523900 -8.363600 274.000000 +156.523300 -8.363800 278.000000 +156.522900 -8.363900 294.400000 +156.522800 -8.364100 295.600000 +156.522700 -8.364200 296.000000 +156.522500 -8.364100 310.400000 +156.522400 -8.364000 308.000000 +156.522300 -8.364100 308.000000 +156.522200 -8.364100 309.200000 +156.522100 -8.364200 311.600000 +156.522100 -8.364300 313.600000 +156.522200 -8.364000 308.400000 +156.522300 -8.364000 310.000000 +156.522300 -8.364200 313.200000 +156.522300 -8.364300 312.400000 +156.522400 -8.364400 317.200000 +156.522400 -8.364300 312.000000 +156.522400 -8.364300 312.400000 +156.522400 -8.364300 312.800000 +156.522500 -8.364200 308.800000 +156.522500 -8.364200 306.000000 +156.522500 -8.364200 308.800000 +156.522500 -8.364200 314.400000 +156.522500 -8.364200 310.400000 +156.522500 -8.364400 313.600000 +156.522600 -8.364600 304.400000 +156.522700 -8.364900 311.600000 +156.522600 -8.364800 309.200000 +156.522600 -8.364600 306.400000 +156.522600 -8.364500 312.400000 +156.522600 -8.364400 304.400000 +156.522700 -8.364200 308.000000 +156.522600 -8.364100 307.600000 +156.522600 -8.364100 301.200000 +156.522600 -8.364200 300.400000 +156.522600 -8.364200 312.400000 +156.522600 -8.364200 311.600000 +156.522500 -8.364300 313.600000 +156.522500 -8.364400 318.000000 +156.522400 -8.364400 313.200000 +156.522400 -8.364500 319.600000 +156.522400 -8.364700 315.200000 +156.522300 -8.364900 315.200000 +156.522400 -8.365200 316.400000 +156.522500 -8.365500 319.200000 +156.522500 -8.365800 323.200000 +156.522400 -8.365800 322.800000 +156.522200 -8.365500 318.400000 +156.522200 -8.365200 316.400000 +156.522000 -8.364900 316.800000 +156.521900 -8.364900 319.600000 +156.521800 -8.364800 323.600000 +156.521700 -8.364900 323.600000 +156.521700 -8.365100 324.000000 +156.521600 -8.365000 323.600000 +156.521600 -8.364900 324.000000 +156.521600 -8.364800 323.600000 +156.521600 -8.365000 324.800000 +156.521600 -8.365200 325.600000 +156.521500 -8.365200 326.400000 +156.521400 -8.365300 326.800000 +156.521400 -8.365500 328.400000 +156.521400 -8.365700 332.000000 +156.521400 -8.365900 330.000000 +156.521400 -8.366200 332.400000 +156.521500 -8.366600 337.600000 +156.521600 -8.366900 340.800000 +156.521700 -8.367300 350.000000 +156.521800 -8.367600 361.200000 +156.522000 -8.368000 371.600000 +156.522100 -8.368300 382.400000 +156.522200 -8.368600 396.400000 +156.522300 -8.369000 408.000000 +156.522400 -8.369300 421.200000 +156.522600 -8.369700 434.400000 +156.522600 -8.370000 440.000000 +156.522700 -8.370000 443.600000 +156.522900 -8.369600 441.200000 +156.523100 -8.369400 444.000000 +156.523400 -8.369100 440.000000 +156.523800 -8.368900 447.200000 +156.524100 -8.368700 454.800000 +156.524600 -8.368500 457.200000 +156.525000 -8.368300 467.200000 +156.525300 -8.368200 476.800000 +156.525700 -8.368000 478.000000 +156.526100 -8.367900 484.400000 +156.526300 -8.367900 483.600000 +156.526400 -8.368000 492.800000 +156.526300 -8.367900 489.200000 +156.526300 -8.367900 486.800000 +156.526300 -8.368000 484.400000 +156.526200 -8.368100 492.800000 +156.526100 -8.367900 476.400000 +156.526000 -8.367900 483.600000 +156.525900 -8.368000 475.600000 +156.525900 -8.368200 483.600000 +156.525800 -8.368100 482.800000 +156.525900 -8.367800 466.000000 +156.525900 -8.367700 470.800000 +156.525800 -8.367600 460.400000 +156.525600 -8.367400 441.600000 +156.525200 -8.367200 428.000000 +156.524900 -8.367000 409.200000 +156.524500 -8.366800 394.000000 +156.524200 -8.366800 380.400000 +156.523800 -8.366800 372.000000 +156.523600 -8.366700 365.600000 +156.523400 -8.366800 358.400000 +156.523200 -8.366700 350.800000 +156.523000 -8.366700 349.600000 +156.522900 -8.366900 352.000000 +156.522800 -8.367100 355.200000 +156.522700 -8.367400 363.600000 +156.522600 -8.367600 372.400000 +156.522500 -8.367900 378.400000 +156.522500 -8.368100 382.400000 +156.522400 -8.368200 383.200000 +156.522300 -8.368200 381.200000 +156.522200 -8.368300 385.200000 +156.522200 -8.368400 384.800000 +156.522100 -8.368400 386.800000 +156.522000 -8.368600 390.000000 +156.521900 -8.368700 389.600000 +156.521900 -8.368700 388.000000 +156.521800 -8.368800 389.200000 +156.521800 -8.368800 388.800000 +156.521700 -8.369000 386.800000 +156.521700 -8.369100 392.400000 +156.521600 -8.369100 390.400000 +156.521600 -8.369100 384.800000 +156.521500 -8.369200 388.000000 +156.521500 -8.369400 387.600000 +156.521400 -8.369500 390.800000 +156.521400 -8.369600 389.600000 +156.521300 -8.369700 391.600000 +156.521200 -8.369800 398.400000 +156.521100 -8.369900 398.800000 +156.521100 -8.370000 399.200000 +156.521000 -8.370100 405.600000 +156.520900 -8.370300 412.400000 +156.520800 -8.370300 410.000000 +156.520700 -8.370400 418.800000 +156.520600 -8.370500 417.600000 +156.520600 -8.370700 420.400000 +156.520500 -8.370900 426.800000 +156.520400 -8.370900 423.600000 +156.520300 -8.371100 430.800000 +156.520200 -8.371400 441.600000 +156.520100 -8.371700 451.200000 +156.520000 -8.372000 470.000000 +156.520000 -8.372300 480.400000 +156.519900 -8.372600 486.800000 +156.519900 -8.373000 499.200000 +156.519800 -8.373400 508.800000 +156.519800 -8.373700 512.800000 +156.519900 -8.373700 515.600000 +156.520500 -8.373800 528.400000 +156.520900 -8.374700 550.800000 +156.520800 -8.375900 578.000000 +156.520900 -8.377300 608.800000 +156.520900 -8.378800 640.400000 +156.521000 -8.380300 701.200000 +156.521000 -8.381700 744.400000 +156.521100 -8.382900 804.000000 +156.521200 -8.384000 862.000000 +156.521400 -8.385100 892.000000 +156.521500 -8.386100 944.000000 +156.521700 -8.387200 975.200000 +156.521800 -8.388200 1028.000000 +156.521900 -8.389300 1063.600000 +156.522000 -8.390300 1101.200000 +156.522200 -8.391400 1167.200000 +156.522300 -8.392400 1207.200000 +156.522500 -8.393400 1240.800000 +156.522600 -8.394400 1316.000000 +156.522700 -8.395400 1351.600000 +156.522900 -8.396800 1393.600000 +156.523100 -8.398600 1448.000000 +156.523400 -8.400400 1500.400000 +156.523600 -8.402300 1572.400000 +156.523900 -8.404200 1642.000000 +156.524300 -8.406200 1686.800000 +156.524700 -8.408800 1762.000000 +156.525200 -8.411800 1811.600000 +156.525700 -8.415100 1866.800000 +156.526200 -8.418400 1886.800000 +156.526700 -8.421600 1934.800000 +156.527200 -8.425000 1965.600000 +156.527800 -8.428300 2005.600000 +156.528200 -8.431700 2025.600000 +156.528700 -8.435000 2030.800000 +156.529200 -8.438400 2039.200000 +156.529700 -8.441600 2065.600000 +156.530200 -8.445000 2086.800000 +156.530400 -8.448200 2071.600000 +156.529100 -8.451000 2106.800000 +156.526400 -8.451700 2107.200000 +156.524300 -8.449900 2106.400000 +156.524600 -8.447200 2102.400000 +156.527200 -8.446000 2097.600000 +156.529900 -8.447300 2082.000000 +156.530900 -8.450200 2052.000000 +156.531400 -8.453400 2037.600000 +156.531800 -8.456600 2049.600000 +156.532000 -8.459800 2072.800000 +156.532200 -8.463000 2185.600000 +156.532400 -8.466300 2170.400000 +156.532500 -8.469500 2073.200000 +156.532600 -8.472800 2030.800000 +156.532700 -8.476100 1991.600000 +156.532900 -8.479500 1975.200000 +156.533100 -8.482800 1989.600000 +156.533300 -8.486100 1941.200000 +156.533500 -8.489400 1816.000000 +156.533700 -8.492700 1784.800000 +156.533900 -8.496000 1864.800000 +156.534200 -8.499300 1716.000000 +156.534600 -8.502700 1700.800000 +156.535000 -8.506100 1748.800000 +156.535400 -8.509400 1868.000000 +156.535800 -8.512700 1872.800000 +156.536200 -8.515500 1883.200000 +156.536400 -8.518000 1858.000000 +156.536600 -8.520000 1800.800000 +156.536800 -8.521900 1738.800000 +156.536900 -8.523700 1685.600000 +156.537100 -8.525600 1618.400000 +156.537400 -8.527400 1554.400000 +156.537700 -8.529300 1501.600000 +156.538000 -8.531100 1489.600000 +156.538300 -8.533000 1553.200000 +156.538500 -8.534800 1550.800000 +156.538900 -8.536600 1503.200000 +156.539200 -8.538500 1563.200000 +156.539400 -8.540300 1558.400000 +156.539700 -8.542100 1629.600000 +156.540000 -8.544000 1722.800000 +156.540200 -8.545800 1787.600000 +156.540400 -8.547700 1841.600000 +156.539900 -8.549400 1890.400000 +156.538500 -8.550300 1903.200000 +156.537300 -8.550000 1874.800000 +156.536900 -8.549000 1847.200000 +156.536900 -8.548100 1825.200000 +156.536900 -8.547500 1810.000000 +156.536900 -8.547000 1794.400000 +156.537100 -8.546600 1770.000000 +156.537400 -8.546500 1766.400000 +156.537800 -8.546200 1733.600000 +156.538000 -8.546000 1727.200000 +156.538300 -8.545700 1718.400000 +156.538500 -8.545700 1721.600000 +156.538700 -8.545700 1732.400000 +156.538900 -8.545500 1727.200000 +156.538800 -8.545100 1703.200000 +156.538900 -8.544700 1678.800000 +156.538900 -8.544600 1670.000000 +156.539000 -8.544200 1669.200000 +156.539100 -8.543800 1632.800000 +156.539100 -8.543400 1614.000000 +156.539400 -8.543200 1606.400000 +156.539600 -8.543000 1598.800000 +156.539600 -8.542700 1592.800000 +156.539700 -8.542600 1589.200000 +156.539600 -8.542600 1599.200000 +156.539700 -8.542400 1584.000000 +156.539600 -8.542300 1582.800000 +156.539500 -8.542300 1584.800000 +156.539500 -8.542200 1582.400000 +156.539600 -8.542200 1581.200000 +156.539600 -8.542200 1581.600000 +156.539600 -8.542200 1581.600000 +156.539600 -8.542300 1582.800000 +156.539700 -8.542200 1580.400000 +156.539600 -8.542200 1579.600000 +156.539600 -8.542200 1580.800000 +156.539600 -8.542200 1581.200000 +156.539500 -8.542100 1581.200000 +156.539500 -8.542100 1580.400000 +156.539400 -8.542100 1581.200000 +156.539400 -8.542200 1584.000000 +156.539300 -8.542200 1583.200000 +156.539400 -8.542100 1581.200000 +156.539500 -8.542000 1578.800000 +156.539500 -8.542100 1579.200000 +156.539500 -8.542100 1580.400000 +156.539600 -8.542000 1577.600000 +156.539700 -8.541800 1574.400000 +156.539700 -8.541300 1566.800000 +156.539600 -8.540900 1561.200000 +156.539600 -8.540500 1557.200000 +156.539500 -8.540100 1554.000000 +156.539400 -8.539700 1545.200000 +156.539300 -8.539300 1540.000000 +156.539200 -8.538900 1525.200000 +156.539200 -8.538500 1519.200000 +156.539200 -8.538100 1513.200000 +156.539200 -8.537700 1508.400000 +156.539200 -8.537300 1504.400000 +156.539100 -8.537100 1506.400000 +156.538900 -8.536900 1502.400000 +156.538800 -8.536900 1504.000000 +156.538800 -8.536900 1506.400000 +156.538800 -8.536800 1504.800000 +156.538800 -8.536700 1503.200000 +156.538900 -8.536600 1502.800000 +156.538800 -8.536700 1504.000000 +156.538800 -8.536600 1503.200000 +156.538900 -8.536500 1503.200000 +156.538900 -8.536400 1502.800000 +156.538800 -8.536500 1502.400000 +156.538700 -8.536600 1502.800000 +156.538800 -8.536500 1502.800000 +156.538800 -8.536500 1504.000000 +156.538800 -8.536500 1504.800000 +156.538700 -8.536500 1505.200000 +156.538600 -8.536600 1504.800000 +156.538600 -8.536600 1504.800000 +156.538600 -8.536600 1505.200000 +156.538600 -8.536600 1505.200000 +156.538600 -8.536600 1505.600000 +156.538600 -8.536600 1505.600000 +156.538500 -8.536700 1508.000000 +156.538400 -8.536800 1506.800000 +156.538300 -8.536800 1508.400000 +156.538300 -8.536900 1508.000000 +156.538300 -8.536900 1507.600000 +156.538200 -8.536900 1509.200000 +156.538200 -8.536900 1509.200000 +156.538200 -8.536900 1509.200000 +156.538200 -8.536900 1509.200000 +156.538100 -8.537000 1509.600000 +156.538100 -8.537000 1512.000000 +156.538100 -8.536900 1511.200000 +156.538200 -8.536900 1509.600000 +156.538100 -8.537000 1512.800000 +156.538000 -8.537100 1512.400000 +156.538000 -8.537200 1514.400000 +156.537800 -8.537400 1516.400000 +156.537900 -8.537300 1515.600000 +156.538000 -8.537100 1512.800000 +156.538100 -8.536900 1509.600000 +156.538200 -8.536900 1509.200000 +156.538300 -8.536800 1508.000000 +156.538300 -8.536900 1508.000000 +156.538300 -8.536900 1508.800000 +156.538300 -8.536900 1507.600000 +156.538300 -8.537000 1508.400000 +156.538200 -8.537200 1509.600000 +156.538100 -8.537400 1512.400000 +156.538200 -8.537300 1511.600000 +156.538300 -8.537200 1512.000000 +156.538400 -8.537100 1510.000000 +156.538400 -8.537000 1507.600000 +156.538400 -8.537100 1507.600000 +156.538400 -8.537200 1511.600000 +156.538400 -8.537200 1510.800000 +156.538500 -8.537100 1508.000000 +156.538600 -8.537000 1506.800000 +156.538700 -8.536900 1504.800000 +156.538700 -8.536900 1504.400000 +156.538800 -8.536800 1505.200000 +156.539000 -8.536500 1502.800000 +156.539100 -8.536500 1501.600000 +156.539100 -8.536600 1502.400000 +156.539000 -8.536700 1502.400000 +156.538900 -8.536800 1502.800000 +156.538800 -8.536900 1504.400000 +156.538700 -8.537000 1505.200000 +156.538600 -8.537100 1506.400000 +156.538600 -8.537200 1506.800000 +156.538600 -8.537200 1508.800000 +156.538500 -8.537400 1508.800000 +156.538300 -8.537600 1512.000000 +156.538100 -8.537800 1517.200000 +156.537900 -8.538000 1524.000000 +156.538100 -8.538100 1520.400000 +156.538500 -8.538600 1565.200000 +156.539700 -8.540300 1555.200000 +156.541600 -8.542400 1616.800000 +156.543700 -8.544600 1774.400000 +156.545800 -8.546800 1829.200000 +156.547900 -8.549000 1952.800000 +156.550100 -8.551200 2019.200000 +156.552400 -8.553500 2018.400000 +156.554800 -8.555700 2118.800000 +156.557100 -8.558000 2131.600000 +156.559500 -8.560200 2208.800000 +156.561800 -8.562400 2238.800000 +156.564100 -8.564600 2302.000000 +156.566500 -8.566800 2445.600000 +156.568900 -8.569000 2450.000000 +156.571300 -8.571200 2470.400000 +156.573700 -8.573400 2492.400000 +156.576100 -8.575600 2452.400000 +156.578300 -8.577900 2382.800000 +156.580600 -8.580300 2338.000000 +156.582800 -8.582600 2328.400000 +156.585100 -8.585000 2299.600000 +156.587400 -8.587300 2153.200000 +156.589700 -8.589700 2102.000000 +156.592000 -8.592000 2088.000000 +156.594300 -8.594300 2154.000000 +156.596600 -8.596600 2182.000000 +156.598900 -8.599000 2204.400000 +156.601200 -8.601300 2253.200000 +156.603500 -8.603600 2275.600000 +156.605700 -8.605900 2190.400000 +156.608000 -8.608200 2148.800000 +156.610300 -8.610500 2018.000000 +156.612600 -8.612900 1908.800000 +156.614900 -8.615200 1824.400000 +156.617100 -8.617500 1844.800000 +156.619300 -8.619900 1983.600000 +156.621500 -8.622300 2089.600000 +156.623700 -8.624700 2286.000000 +156.625900 -8.627100 2358.800000 +156.628000 -8.629500 2433.200000 +156.630200 -8.631900 2476.000000 +156.632300 -8.634200 2406.000000 +156.634400 -8.636600 2464.800000 +156.636600 -8.639000 2476.000000 +156.638800 -8.641300 2400.800000 +156.640900 -8.643700 2245.200000 +156.643000 -8.646100 2086.400000 +156.645200 -8.648400 1910.800000 +156.647400 -8.650800 1818.800000 +156.649400 -8.653100 1618.800000 +156.651100 -8.655000 1492.400000 +156.652700 -8.656600 1456.000000 +156.654300 -8.658200 1459.600000 +156.655900 -8.659700 1606.400000 +156.657400 -8.661000 1605.200000 +156.658700 -8.662200 1568.000000 +156.659900 -8.663300 1599.600000 +156.661000 -8.664400 1588.000000 +156.662200 -8.665400 1572.800000 +156.663400 -8.666400 1543.600000 +156.664600 -8.667500 1522.400000 +156.665800 -8.668600 1515.200000 +156.667100 -8.669800 1509.200000 +156.668300 -8.671000 1504.400000 +156.669600 -8.672200 1490.000000 +156.670800 -8.673400 1481.600000 +156.672100 -8.674600 1472.800000 +156.673300 -8.675800 1476.000000 +156.674500 -8.676900 1496.400000 +156.675800 -8.678100 1541.200000 +156.677000 -8.679300 1604.400000 +156.678300 -8.680400 1638.800000 +156.679400 -8.681500 1663.600000 +156.680200 -8.682200 1670.400000 +156.680900 -8.682900 1678.800000 +156.681400 -8.683400 1689.200000 +156.681800 -8.683800 1700.400000 +156.682200 -8.684200 1704.400000 +156.682600 -8.684600 1708.400000 +156.683000 -8.685000 1713.200000 +156.683400 -8.685400 1715.600000 +156.683600 -8.685700 1716.000000 +156.683500 -8.686100 1712.800000 +156.683200 -8.686200 1707.600000 +156.682800 -8.686000 1705.200000 +156.682200 -8.685300 1700.800000 +156.681500 -8.684400 1697.600000 +156.680700 -8.683300 1678.800000 +156.679900 -8.682300 1669.200000 +156.679200 -8.681400 1660.400000 +156.678700 -8.681000 1649.200000 +156.678300 -8.680600 1638.400000 +156.678100 -8.680400 1621.600000 +156.678000 -8.680300 1617.200000 +156.677800 -8.679900 1620.400000 +156.677700 -8.679700 1599.600000 +156.677600 -8.679600 1621.200000 +156.677500 -8.679600 1615.200000 +156.677500 -8.679300 1592.800000 +156.677400 -8.679200 1606.800000 +156.677300 -8.679200 1606.800000 +156.677200 -8.679200 1612.800000 +156.677300 -8.679100 1615.200000 +156.677300 -8.679000 1580.400000 +156.677300 -8.679000 1594.000000 +156.677400 -8.678900 1591.200000 +156.677500 -8.678900 1581.600000 +156.677400 -8.678900 1598.800000 +156.677300 -8.678900 1578.400000 +156.677200 -8.678800 1582.400000 +156.677300 -8.678700 1595.600000 +156.677200 -8.678700 1573.200000 +156.677300 -8.678600 1591.600000 +156.677400 -8.678600 1586.800000 +156.677400 -8.678500 1574.000000 +156.677400 -8.678500 1587.600000 +156.677400 -8.678500 1596.000000 +156.677400 -8.678400 1592.000000 +156.677300 -8.678400 1568.400000 +156.677300 -8.678300 1586.400000 +156.677400 -8.678200 1580.800000 +156.677400 -8.678200 1586.000000 +156.677300 -8.678200 1583.600000 +156.677200 -8.678200 1565.600000 +156.677200 -8.678200 1564.000000 +156.677100 -8.678200 1557.200000 +156.677200 -8.677900 1553.200000 +156.677300 -8.677600 1549.600000 +156.677100 -8.677000 1534.000000 +156.676900 -8.676600 1521.200000 +156.676600 -8.676300 1510.000000 +156.676400 -8.676000 1503.200000 +156.676100 -8.675800 1496.800000 +156.675900 -8.675800 1492.800000 +156.675700 -8.675800 1490.400000 +156.675500 -8.675700 1487.200000 +156.675400 -8.675700 1485.600000 +156.675200 -8.675800 1485.200000 +156.675100 -8.675900 1486.000000 +156.674900 -8.675900 1485.200000 +156.674800 -8.676100 1485.200000 +156.674700 -8.676200 1486.400000 +156.674600 -8.676300 1488.000000 +156.674400 -8.676300 1486.800000 +156.674200 -8.676200 1484.800000 +156.674000 -8.676300 1484.400000 +156.673900 -8.676400 1484.800000 +156.673800 -8.676500 1484.000000 +156.673800 -8.676700 1484.800000 +156.673700 -8.676900 1486.000000 +156.673700 -8.677000 1487.200000 +156.673600 -8.677200 1487.600000 +156.673600 -8.677300 1487.600000 +156.673500 -8.677500 1488.800000 +156.673400 -8.677700 1490.000000 +156.673400 -8.677800 1492.000000 +156.673300 -8.678000 1492.000000 +156.673200 -8.678100 1494.000000 +156.673100 -8.678300 1495.200000 +156.673000 -8.678400 1495.600000 +156.672900 -8.678500 1497.600000 +156.672800 -8.678700 1499.200000 +156.672700 -8.678800 1499.600000 +156.672400 -8.678700 1498.000000 +156.672200 -8.678700 1495.600000 +156.672100 -8.678600 1494.400000 +156.671900 -8.678600 1493.200000 +156.671800 -8.678700 1494.000000 +156.671600 -8.678600 1494.000000 +156.671400 -8.678600 1492.400000 +156.671200 -8.678600 1493.200000 +156.671100 -8.678700 1494.400000 +156.671000 -8.678800 1496.400000 +156.670900 -8.678900 1499.200000 +156.670800 -8.679100 1502.400000 +156.670700 -8.679200 1505.600000 +156.670600 -8.679300 1507.600000 +156.670500 -8.679400 1510.000000 +156.670300 -8.679500 1513.200000 +156.670100 -8.679500 1513.200000 +156.670000 -8.679600 1512.800000 +156.669800 -8.679600 1513.200000 +156.669600 -8.679600 1516.800000 +156.669400 -8.679600 1512.800000 +156.669300 -8.679700 1512.800000 +156.669100 -8.679800 1513.600000 +156.669000 -8.679900 1514.400000 +156.668800 -8.680000 1514.000000 +156.668700 -8.680100 1513.200000 +156.668500 -8.680200 1513.200000 +156.668400 -8.680300 1514.400000 +156.668300 -8.680500 1514.000000 +156.668200 -8.680600 1515.200000 +156.668100 -8.680800 1516.400000 +156.668000 -8.681100 1518.800000 +156.668000 -8.681300 1520.800000 +156.667900 -8.681500 1522.800000 +156.667800 -8.681700 1525.200000 +156.667800 -8.681900 1527.600000 +156.667700 -8.682100 1531.200000 +156.667700 -8.682300 1533.200000 +156.667600 -8.682500 1535.200000 +156.667500 -8.682500 1535.600000 +156.667500 -8.682300 1533.600000 +156.667700 -8.682200 1532.000000 +156.668300 -8.682200 1548.400000 +156.669800 -8.682400 1546.400000 +156.671700 -8.682600 1550.800000 +156.673900 -8.682800 1572.400000 +156.676600 -8.683000 1617.200000 +156.679400 -8.683200 1666.400000 +156.682500 -8.683400 1694.800000 +156.685600 -8.683600 1708.000000 +156.688800 -8.683800 1754.800000 +156.691900 -8.684000 1839.600000 +156.695000 -8.684100 1892.000000 +156.698100 -8.684200 1931.200000 +156.701200 -8.684200 1996.400000 +156.704400 -8.684200 1970.800000 +156.707500 -8.684300 2063.600000 +156.710700 -8.684400 2099.200000 +156.713800 -8.684400 2118.800000 +156.717000 -8.684500 2172.400000 +156.720100 -8.684500 2104.000000 +156.723300 -8.684600 2128.000000 +156.726400 -8.684600 2246.000000 +156.729600 -8.684600 2244.000000 +156.732800 -8.684600 2259.600000 +156.735900 -8.684600 2364.000000 +156.739000 -8.684600 2334.400000 +156.742100 -8.684600 2452.400000 +156.745200 -8.684600 2418.400000 +156.748300 -8.684500 2404.800000 +156.751400 -8.684500 2435.600000 +156.754400 -8.684500 2478.800000 +156.757500 -8.684400 2248.000000 +156.760600 -8.684400 2216.000000 +156.763700 -8.684300 2146.000000 +156.766700 -8.684200 2125.600000 +156.769800 -8.684100 2122.000000 +156.773000 -8.684100 2161.200000 +156.776100 -8.684000 2222.400000 +156.779200 -8.683900 2314.000000 +156.782300 -8.683800 2311.600000 +156.785400 -8.683700 2457.200000 +156.788500 -8.683600 2463.600000 +156.791600 -8.683500 2340.000000 +156.794800 -8.683400 2304.400000 +156.797900 -8.683200 2462.000000 +156.800900 -8.683100 2118.000000 +156.804000 -8.683000 2465.200000 +156.807100 -8.682800 2423.600000 +156.810200 -8.682700 2027.600000 +156.813300 -8.682600 2329.600000 +156.816400 -8.682500 2246.800000 +156.819500 -8.682300 2483.200000 +156.822600 -8.682200 2280.800000 +156.825800 -8.682100 2462.800000 +156.828900 -8.681900 2468.400000 +156.832100 -8.681800 2113.600000 +156.835200 -8.681700 2279.600000 +156.838400 -8.681500 2216.400000 +156.841600 -8.681300 2132.400000 +156.844700 -8.681200 2198.400000 +156.847900 -8.681000 2074.400000 +156.851100 -8.680900 2352.400000 +156.854200 -8.680900 2403.200000 +156.857400 -8.680900 2320.000000 +156.860600 -8.680900 2246.000000 +156.863800 -8.680900 2080.000000 +156.867000 -8.680900 2336.800000 +156.870200 -8.680900 2264.000000 +156.873400 -8.680800 3118.400000 +156.876600 -8.680800 3122.400000 +156.879700 -8.680800 3101.200000 +156.882900 -8.680800 3126.400000 +156.886100 -8.680800 2961.600000 +156.889200 -8.680800 2968.000000 +156.892400 -8.680800 3072.000000 +156.895600 -8.680700 3030.400000 +156.898800 -8.680700 3027.600000 +156.901900 -8.680800 3029.200000 +156.905100 -8.680800 3022.400000 +156.908200 -8.680800 3026.800000 +156.911400 -8.680800 3037.200000 +156.914600 -8.680900 3026.800000 +156.917800 -8.681100 3022.000000 +156.920900 -8.681200 3010.800000 +156.924100 -8.681500 3008.000000 +156.927300 -8.681700 2993.600000 +156.930400 -8.681900 2970.400000 +156.933500 -8.682200 2936.000000 +156.935800 -8.682300 2904.000000 +156.937400 -8.682400 2884.400000 +156.938500 -8.682500 2876.000000 +156.939400 -8.682600 2870.000000 +156.940100 -8.682600 2865.200000 +156.940700 -8.682500 2860.800000 +156.941300 -8.682500 2856.800000 +156.941600 -8.682400 2854.800000 +156.941700 -8.682300 2854.000000 +156.941800 -8.682300 2855.200000 +156.941900 -8.682300 2854.000000 +156.941900 -8.682300 2852.800000 +156.941900 -8.682400 2852.800000 +156.942000 -8.682400 2852.400000 +156.942000 -8.682400 2852.400000 +156.942000 -8.682500 2852.000000 +156.942000 -8.682500 2851.600000 +156.942000 -8.682500 2851.200000 +156.942000 -8.682600 2851.200000 +156.942000 -8.682600 2850.800000 +156.942000 -8.682600 2851.200000 +156.941900 -8.682600 2852.000000 +156.941900 -8.682600 2852.400000 +156.941900 -8.682600 2852.800000 +156.941900 -8.682700 2852.800000 +156.941900 -8.682700 2852.400000 +156.941900 -8.682700 2852.000000 +156.941900 -8.682700 2851.600000 +156.941900 -8.682700 2851.600000 +156.941900 -8.682800 2852.000000 +156.941900 -8.682800 2851.600000 +156.941900 -8.682800 2851.200000 +156.941900 -8.682800 2852.800000 +156.941900 -8.682900 2851.200000 +156.941900 -8.682900 2850.800000 +156.941900 -8.682900 2850.800000 +156.941900 -8.683000 2851.200000 +156.941900 -8.683000 2850.400000 +156.941900 -8.683000 2850.800000 +156.941900 -8.683000 2850.400000 +156.941900 -8.683000 2850.800000 +156.941800 -8.683000 2851.200000 +156.941800 -8.683100 2850.800000 +156.941800 -8.683100 2851.200000 +156.941800 -8.683100 2852.000000 +156.941800 -8.683100 2851.200000 +156.941700 -8.683100 2851.200000 +156.941700 -8.683100 2850.800000 +156.941800 -8.683100 2851.200000 +156.941800 -8.683100 2851.200000 +156.941800 -8.683100 2852.000000 +156.941700 -8.683100 2851.600000 +156.941700 -8.683200 2852.000000 +156.941700 -8.683200 2851.600000 +156.941700 -8.683100 2851.600000 +156.941700 -8.683100 2852.000000 +156.941600 -8.683100 2852.400000 +156.941600 -8.683000 2852.800000 +156.941500 -8.683000 2854.000000 +156.941500 -8.683000 2854.400000 +156.941400 -8.683000 2855.200000 +156.941400 -8.683000 2856.000000 +156.941400 -8.683000 2854.800000 +156.941400 -8.683000 2854.800000 +156.941400 -8.683000 2855.200000 +156.941300 -8.683000 2855.200000 +156.941300 -8.683100 2854.400000 +156.941300 -8.683100 2855.200000 +156.941300 -8.683100 2854.800000 +156.941200 -8.683100 2855.200000 +156.941200 -8.683100 2855.200000 +156.941200 -8.683200 2855.600000 +156.941200 -8.683200 2855.200000 +156.941100 -8.683200 2855.200000 +156.941100 -8.683200 2855.600000 +156.941100 -8.683300 2858.000000 +156.941100 -8.683300 2856.800000 +156.941100 -8.683300 2855.200000 +156.941100 -8.683300 2855.600000 +156.941000 -8.683300 2855.600000 +156.941000 -8.683300 2855.600000 +156.941000 -8.683300 2856.000000 +156.941000 -8.683300 2856.000000 +156.941000 -8.683300 2855.600000 +156.940900 -8.683400 2855.600000 +156.940900 -8.683400 2856.000000 +156.940900 -8.683400 2855.600000 +156.940900 -8.683400 2856.000000 +156.940900 -8.683400 2855.600000 +156.940900 -8.683400 2855.600000 +156.940900 -8.683400 2855.600000 +156.940800 -8.683400 2856.400000 +156.940800 -8.683500 2856.000000 +156.940800 -8.683500 2856.000000 +156.940800 -8.683500 2856.400000 +156.940700 -8.683500 2856.800000 +156.940700 -8.683500 2856.800000 +156.940600 -8.683500 2857.200000 +156.940600 -8.683500 2857.600000 +156.940500 -8.683400 2857.600000 +156.940500 -8.683400 2858.400000 +156.940400 -8.683400 2858.800000 +156.940400 -8.683400 2859.200000 +156.940400 -8.683400 2858.800000 +156.940300 -8.683400 2858.800000 +156.940300 -8.683400 2858.800000 +156.940300 -8.683400 2859.200000 +156.940200 -8.683400 2859.600000 +156.940200 -8.683400 2860.000000 +156.940200 -8.683400 2860.800000 +156.940100 -8.683400 2860.800000 +156.940100 -8.683400 2861.200000 +156.940100 -8.683300 2861.200000 +156.940000 -8.683300 2861.200000 +156.940000 -8.683300 2861.200000 +156.940000 -8.683300 2861.600000 +156.939900 -8.683300 2862.000000 +156.939900 -8.683300 2862.000000 +156.939900 -8.683300 2862.800000 +156.939800 -8.683300 2862.800000 +156.939800 -8.683300 2863.200000 +156.939800 -8.683300 2863.600000 +156.939700 -8.683300 2864.000000 +156.939700 -8.683300 2864.800000 +156.939600 -8.683300 2864.800000 +156.939600 -8.683300 2864.800000 +156.939500 -8.683300 2865.200000 +156.939400 -8.683300 2866.000000 +156.939300 -8.683300 2866.800000 +156.939200 -8.683300 2867.600000 +156.939000 -8.683300 2868.400000 +156.938900 -8.683300 2869.200000 +156.938700 -8.683300 2870.400000 +156.938600 -8.683300 2870.400000 +156.938500 -8.683300 2871.200000 +156.938400 -8.683400 2872.000000 +156.938300 -8.683400 2872.800000 +156.938200 -8.683400 2872.400000 +156.938100 -8.683400 2873.600000 +156.937800 -8.683100 2876.000000 +156.937800 -8.682500 2878.800000 +156.938200 -8.682200 2879.600000 +156.938600 -8.682400 2876.000000 +156.938900 -8.683100 2870.000000 +156.939400 -8.684100 2863.600000 +156.939900 -8.685200 2859.600000 +156.940300 -8.686100 2858.400000 +156.940700 -8.687000 2862.000000 +156.941000 -8.687700 2863.200000 +156.941300 -8.688500 2870.800000 +156.941600 -8.689200 2871.600000 +156.941900 -8.689900 2880.800000 +156.942200 -8.690600 2891.600000 +156.942500 -8.691200 2714.400000 +156.942700 -8.691900 2796.800000 +156.943000 -8.692600 2770.000000 +156.943300 -8.693300 2774.000000 +156.943600 -8.693900 2732.400000 +156.943800 -8.694600 2691.600000 +156.944100 -8.695300 2662.800000 +156.944400 -8.696000 2655.200000 +156.944700 -8.696600 2602.800000 +156.944900 -8.697300 2613.200000 +156.945200 -8.698000 2518.800000 +156.945500 -8.698700 2526.000000 +156.945800 -8.699400 2517.200000 +156.946100 -8.700000 2514.000000 +156.946400 -8.700700 2515.600000 +156.946600 -8.701400 2357.200000 +156.946900 -8.702100 2335.600000 +156.947200 -8.702800 2248.000000 +156.947500 -8.703500 2227.200000 +156.947800 -8.704200 2206.400000 +156.948200 -8.704900 2189.600000 +156.948500 -8.705700 2163.200000 +156.948900 -8.706500 2138.000000 +156.949300 -8.707400 2116.000000 +156.949700 -8.708200 2094.800000 +156.950100 -8.709000 2070.000000 +156.950500 -8.709700 2066.000000 +156.950700 -8.710400 2022.800000 +156.950900 -8.710900 2003.200000 +156.951200 -8.711500 1986.000000 +156.951400 -8.712000 1966.000000 +156.951800 -8.712400 1948.400000 +156.952100 -8.712700 2024.800000 +156.952400 -8.713000 1925.600000 +156.952600 -8.713200 1916.400000 +156.952800 -8.713400 1908.400000 +156.953000 -8.713500 1902.000000 +156.953300 -8.713700 1896.000000 +156.953300 -8.713800 1890.000000 +156.953400 -8.713900 1887.600000 +156.953600 -8.713900 1881.600000 +156.953900 -8.714000 1879.200000 +156.954000 -8.714100 1874.000000 +156.954100 -8.714100 1871.200000 +156.954400 -8.714200 1866.000000 +156.954600 -8.714300 1861.600000 +156.954700 -8.714300 1859.200000 +156.954600 -8.714400 1858.000000 +156.954500 -8.714400 1859.200000 +156.954400 -8.714400 1859.600000 +156.954100 -8.714400 1863.200000 +156.954100 -8.714400 1864.400000 +156.954100 -8.714400 1866.800000 +156.954000 -8.714400 1865.600000 +156.953800 -8.714300 1867.600000 +156.953700 -8.714300 1870.400000 +156.954100 -8.714200 1867.200000 +156.954800 -8.714200 1862.800000 +156.955400 -8.714300 1852.400000 +156.955900 -8.714300 1842.400000 +156.956500 -8.714500 1834.400000 +156.956900 -8.714600 1822.800000 +156.957200 -8.714800 1814.800000 +156.957600 -8.715100 1803.200000 +156.958000 -8.715400 1789.600000 +156.958400 -8.715700 1778.000000 +156.958800 -8.715900 1768.000000 +156.959200 -8.716100 1758.400000 +156.959500 -8.716300 1750.000000 +156.959900 -8.716500 1740.000000 +156.960300 -8.716600 1731.600000 +156.960800 -8.716800 1721.600000 +156.961200 -8.716900 1712.800000 +156.961600 -8.717000 1703.600000 +156.962000 -8.717200 1693.600000 +156.962400 -8.717300 1682.400000 +156.962700 -8.717500 1672.800000 +156.963100 -8.717600 1662.400000 +156.963500 -8.717700 1651.200000 +156.963800 -8.717800 1644.800000 +156.964300 -8.718000 1633.600000 +156.964700 -8.718200 1625.600000 +156.965200 -8.718400 1617.600000 +156.965600 -8.718500 1609.200000 +156.966100 -8.718700 1601.200000 +156.966400 -8.718800 1596.800000 +156.966900 -8.719000 1591.600000 +156.967200 -8.719200 1586.800000 +156.967700 -8.719400 1583.200000 +156.968100 -8.719500 1580.000000 +156.968600 -8.719700 1574.000000 +156.968900 -8.719900 1572.000000 +156.969300 -8.720100 1580.400000 +156.969800 -8.720400 1603.200000 +156.970200 -8.720600 1603.600000 +156.970500 -8.720900 1605.600000 +156.970800 -8.721100 1672.400000 +156.971400 -8.721300 1642.800000 +156.971800 -8.721500 1694.400000 +156.972200 -8.721800 1705.600000 +156.972700 -8.722000 1720.000000 +156.972900 -8.722100 1741.600000 +156.973000 -8.722200 1741.200000 +156.973400 -8.722400 1739.600000 +156.973800 -8.722600 1739.200000 +156.974200 -8.722800 1726.000000 +156.974400 -8.723000 1724.400000 +156.974800 -8.723200 1721.600000 +156.975200 -8.723400 1716.000000 +156.975600 -8.723600 1738.000000 +156.976000 -8.723900 1745.600000 +156.976300 -8.724100 1626.800000 +156.976700 -8.724300 1616.000000 +156.977100 -8.724500 1604.800000 +156.977600 -8.724700 1593.600000 +156.977900 -8.724900 1586.000000 +156.978200 -8.725100 1579.600000 +156.978500 -8.725300 1572.000000 +156.978900 -8.725500 1566.000000 +156.979100 -8.725700 1556.800000 +156.979500 -8.725900 1542.400000 +156.979900 -8.726200 1528.000000 +156.980200 -8.726400 1518.800000 +156.980700 -8.726700 1499.600000 +156.981000 -8.726900 1485.200000 +156.981500 -8.727100 1474.800000 +156.981800 -8.727300 1452.400000 +156.982300 -8.727600 1434.400000 +156.982700 -8.727900 1416.400000 +156.983100 -8.728100 1402.000000 +156.983500 -8.728300 1385.200000 +156.983900 -8.728600 1370.400000 +156.984400 -8.728800 1355.600000 +156.984600 -8.729000 1345.600000 +156.985000 -8.729200 1336.000000 +156.985300 -8.729500 1328.000000 +156.985700 -8.729700 1304.000000 +156.986100 -8.729900 1306.400000 +156.986500 -8.730200 1265.600000 +156.986800 -8.730300 1254.000000 +156.987300 -8.730600 1236.800000 +156.987600 -8.730700 1215.600000 +156.988000 -8.730900 1202.800000 +156.988400 -8.731100 1186.800000 +156.988800 -8.731300 1162.800000 +156.989200 -8.731400 1146.400000 +156.989500 -8.731500 1131.200000 +156.989900 -8.731700 1116.400000 +156.990300 -8.731800 1104.000000 +156.990600 -8.731900 1096.000000 +156.991000 -8.732100 1090.000000 +156.991400 -8.732300 1079.200000 +156.991700 -8.732500 1069.600000 +156.992000 -8.732700 1062.000000 +156.992300 -8.732900 1066.800000 +156.992700 -8.733100 1033.200000 +156.993100 -8.733300 1020.400000 +156.993400 -8.733500 1007.600000 +156.993800 -8.733700 996.400000 +156.994100 -8.733800 983.600000 +156.994400 -8.734000 969.600000 +156.994800 -8.734200 955.200000 +156.995100 -8.734300 946.000000 +156.995400 -8.734500 931.600000 +156.995900 -8.734700 915.600000 +156.996300 -8.734800 898.400000 +156.996700 -8.735000 887.200000 +156.997100 -8.735200 876.400000 +156.997600 -8.735300 862.400000 +156.998000 -8.735500 842.400000 +156.998400 -8.735600 817.600000 +156.998800 -8.735800 808.000000 +156.999200 -8.735900 784.800000 +156.999600 -8.736100 773.200000 +157.000000 -8.736200 764.800000 +157.000400 -8.736400 764.800000 +157.000800 -8.736600 752.800000 +157.001200 -8.736700 741.600000 +157.001500 -8.736900 720.800000 +157.001900 -8.737100 706.800000 +157.002300 -8.737400 676.400000 +157.002700 -8.737600 660.000000 +157.003100 -8.737800 644.400000 +157.003500 -8.738000 645.200000 +157.004000 -8.738200 644.800000 +157.004400 -8.738400 646.000000 +157.004700 -8.738600 666.800000 +157.005100 -8.738800 669.200000 +157.005500 -8.739100 690.400000 +157.005800 -8.739300 729.600000 +157.006200 -8.739500 747.200000 +157.006600 -8.739700 737.600000 +157.007000 -8.740000 730.800000 +157.007400 -8.740200 723.200000 +157.007800 -8.740400 712.000000 +157.008000 -8.740700 706.400000 +157.008400 -8.740900 704.000000 +157.008700 -8.741100 701.200000 +157.008900 -8.741300 698.800000 +157.009200 -8.741400 696.800000 +157.009500 -8.741700 692.800000 +157.009800 -8.741900 693.200000 +157.010100 -8.742000 680.800000 +157.010500 -8.742200 680.000000 +157.010900 -8.742300 672.400000 +157.011100 -8.742400 670.400000 +157.011400 -8.742500 669.200000 +157.011600 -8.742700 660.000000 +157.011800 -8.742800 657.600000 +157.012100 -8.742900 649.600000 +157.012400 -8.743000 643.600000 +157.012800 -8.743200 640.800000 +157.013100 -8.743300 638.000000 +157.013300 -8.743400 638.000000 +157.013500 -8.743500 638.000000 +157.013900 -8.743700 640.400000 +157.014700 -8.744000 648.400000 +157.016600 -8.744900 682.000000 +157.019300 -8.746000 780.400000 +157.022200 -8.747200 936.000000 +157.025200 -8.748500 917.600000 +157.028100 -8.749800 799.600000 +157.031000 -8.751200 765.600000 +157.033900 -8.752500 784.000000 +157.036900 -8.753900 793.600000 +157.039800 -8.755300 832.400000 +157.042700 -8.756600 788.000000 +157.045700 -8.758000 757.200000 +157.048600 -8.759300 793.600000 +157.051500 -8.760700 823.600000 +157.054400 -8.762100 910.400000 +157.057400 -8.763400 1087.600000 +157.060300 -8.764800 1163.200000 +157.063200 -8.766200 1205.200000 +157.066000 -8.767700 1303.200000 +157.068900 -8.769100 1433.200000 +157.071200 -8.770100 1518.400000 +157.072900 -8.770900 1580.800000 +157.074200 -8.771700 1610.000000 +157.075200 -8.772300 1714.400000 +157.076000 -8.772900 1804.400000 +157.076800 -8.773400 1838.000000 +157.077400 -8.773900 1848.400000 +157.078100 -8.774400 1972.000000 +157.078700 -8.774800 2007.600000 +157.079200 -8.775200 1989.200000 +157.079800 -8.775700 2010.000000 +157.080400 -8.776000 2023.600000 +157.080900 -8.776400 2050.000000 +157.081400 -8.776600 2082.800000 +157.081900 -8.776500 2074.000000 +157.081900 -8.776000 2034.000000 +157.081400 -8.775800 2023.200000 +157.081000 -8.775800 2047.200000 +157.080500 -8.775500 1972.000000 +157.080100 -8.775400 1955.200000 +157.079800 -8.775400 1900.800000 +157.079400 -8.775300 1892.000000 +157.079100 -8.775200 1884.800000 +157.078900 -8.775100 1877.600000 +157.078600 -8.775100 1872.800000 +157.078300 -8.774900 1866.400000 +157.078100 -8.774900 1861.600000 +157.077700 -8.774500 1854.800000 +157.077500 -8.774300 1850.800000 +157.077200 -8.774100 1844.800000 +157.076800 -8.773900 1798.400000 +157.076400 -8.773700 1858.800000 +157.076200 -8.773600 1752.800000 +157.075800 -8.773400 1706.400000 +157.075300 -8.773100 1686.000000 +157.074900 -8.772900 1622.800000 +157.074500 -8.772600 1596.800000 +157.074000 -8.772400 1577.600000 +157.073600 -8.772300 1560.400000 +157.073100 -8.772100 1550.800000 +157.072700 -8.771900 1539.200000 +157.072200 -8.771700 1526.000000 +157.071800 -8.771600 1514.800000 +157.071300 -8.771300 1494.800000 +157.070800 -8.771100 1494.000000 +157.070500 -8.770900 1466.400000 +157.070100 -8.770700 1454.800000 +157.069600 -8.770400 1440.800000 +157.069200 -8.770200 1428.400000 +157.068800 -8.770000 1416.400000 +157.068400 -8.769800 1406.400000 +157.067900 -8.769600 1384.800000 +157.067500 -8.769400 1371.600000 +157.067100 -8.769200 1352.400000 +157.066600 -8.768900 1328.000000 +157.066200 -8.768800 1308.800000 +157.065700 -8.768600 1298.400000 +157.065300 -8.768400 1284.800000 +157.064900 -8.768200 1278.400000 +157.064400 -8.767900 1257.600000 +157.064000 -8.767700 1260.800000 +157.063600 -8.767600 1243.200000 +157.063100 -8.767300 1230.800000 +157.062600 -8.767100 1217.200000 +157.062300 -8.767000 1212.800000 +157.061800 -8.766800 1204.000000 +157.061400 -8.766500 1201.200000 +157.061000 -8.766300 1198.000000 +157.060600 -8.766100 1190.000000 +157.060100 -8.765800 1182.400000 +157.059700 -8.765700 1173.600000 +157.059300 -8.765500 1165.600000 +157.058800 -8.765200 1148.800000 +157.058400 -8.765000 1144.000000 +157.058000 -8.764800 1122.400000 +157.057600 -8.764600 1102.000000 +157.057100 -8.764400 1083.600000 +157.056700 -8.764300 1055.600000 +157.056200 -8.764000 1032.800000 +157.055800 -8.763800 1012.000000 +157.055400 -8.763600 1007.600000 +157.054900 -8.763400 966.400000 +157.054400 -8.763200 952.000000 +157.054100 -8.763100 942.400000 +157.053700 -8.762800 927.600000 +157.053100 -8.762500 909.600000 +157.052700 -8.762300 899.200000 +157.052300 -8.762100 879.200000 +157.051900 -8.761900 867.200000 +157.051500 -8.761600 854.400000 +157.051000 -8.761400 842.400000 +157.050600 -8.761200 832.400000 +157.050200 -8.761000 824.000000 +157.049800 -8.760800 820.000000 +157.049400 -8.760700 817.200000 +157.048900 -8.760500 822.000000 +157.048400 -8.760200 815.600000 +157.047900 -8.759900 808.000000 +157.047400 -8.759800 803.200000 +157.047000 -8.759600 794.800000 +157.046500 -8.759300 786.800000 +157.046100 -8.759100 780.800000 +157.045700 -8.758900 775.600000 +157.045300 -8.758700 770.400000 +157.044800 -8.758500 766.800000 +157.044400 -8.758300 765.600000 +157.044000 -8.758100 767.200000 +157.043600 -8.757900 772.000000 +157.043200 -8.757700 775.600000 +157.042800 -8.757500 788.400000 +157.042300 -8.757200 792.800000 +157.041900 -8.757000 797.200000 +157.041500 -8.756800 803.600000 +157.041100 -8.756700 811.600000 +157.040600 -8.756300 836.400000 +157.040200 -8.756100 850.800000 +157.039800 -8.755900 854.800000 +157.039400 -8.755700 846.400000 +157.039000 -8.755500 826.800000 +157.038600 -8.755300 826.400000 +157.038000 -8.755000 804.400000 +157.037500 -8.754700 798.400000 +157.037100 -8.754400 796.000000 +157.036700 -8.754100 796.800000 +157.036200 -8.753900 799.600000 +157.035900 -8.753700 807.200000 +157.035500 -8.753400 798.800000 +157.035000 -8.753300 794.800000 +157.034500 -8.753100 793.200000 +157.034000 -8.752900 784.400000 +157.033400 -8.752700 780.000000 +157.033000 -8.752500 777.600000 +157.032600 -8.752300 780.000000 +157.032200 -8.752100 775.200000 +157.031800 -8.751900 766.000000 +157.031400 -8.751600 763.200000 +157.031000 -8.751400 768.000000 +157.030600 -8.751200 782.000000 +157.030100 -8.750900 774.400000 +157.029600 -8.750600 767.600000 +157.029200 -8.750400 768.800000 +157.028700 -8.750200 778.000000 +157.028300 -8.750000 801.200000 +157.027900 -8.749800 805.200000 +157.027500 -8.749600 823.200000 +157.027100 -8.749400 830.400000 +157.026700 -8.749200 842.400000 +157.026300 -8.749000 854.000000 +157.025900 -8.748800 881.200000 +157.025500 -8.748500 887.600000 +157.025100 -8.748300 900.400000 +157.024700 -8.748100 921.200000 +157.024300 -8.747900 923.200000 +157.023900 -8.747600 956.800000 +157.023500 -8.747400 951.600000 +157.023000 -8.747100 925.200000 +157.022600 -8.746900 907.200000 +157.022300 -8.746700 888.400000 +157.022000 -8.746400 874.000000 +157.021600 -8.746200 859.200000 +157.021200 -8.746000 833.200000 +157.020800 -8.745700 841.200000 +157.020300 -8.745500 833.200000 +157.019900 -8.745300 827.200000 +157.019500 -8.745000 760.000000 +157.019100 -8.744800 746.400000 +157.018600 -8.744600 729.600000 +157.018200 -8.744400 718.400000 +157.017800 -8.744200 708.400000 +157.017400 -8.744000 696.400000 +157.017000 -8.743700 688.400000 +157.016500 -8.743600 676.800000 +157.016100 -8.743400 666.800000 +157.015600 -8.743200 660.400000 +157.015100 -8.743000 653.200000 +157.014800 -8.742900 651.600000 +157.014500 -8.742800 650.800000 +157.014100 -8.742600 650.400000 +157.013600 -8.742500 648.800000 +157.013200 -8.742400 650.800000 +157.012800 -8.742200 658.400000 +157.012300 -8.742100 719.600000 +157.011900 -8.741900 720.000000 +157.011500 -8.741800 711.200000 +157.011000 -8.741600 697.200000 +157.010600 -8.741400 698.000000 +157.010200 -8.741200 696.400000 +157.009800 -8.741000 696.400000 +157.009300 -8.740800 698.400000 +157.008900 -8.740600 699.200000 +157.008400 -8.740400 702.800000 +157.008000 -8.740200 710.000000 +157.007500 -8.740000 723.600000 +157.007100 -8.739800 758.800000 +157.006600 -8.739600 730.400000 +157.006100 -8.739400 707.600000 +157.005600 -8.739100 676.800000 +157.005200 -8.738900 667.200000 +157.004700 -8.738700 648.000000 +157.004300 -8.738500 644.000000 +157.003800 -8.738300 644.000000 +157.003400 -8.738000 648.800000 +157.002900 -8.737800 675.600000 +157.002700 -8.737800 664.000000 +157.002700 -8.737800 689.200000 +157.002800 -8.737900 674.800000 +157.002900 -8.738100 660.400000 +157.003000 -8.738200 651.600000 +157.003100 -8.738300 644.800000 +157.003200 -8.738400 642.000000 +157.003200 -8.738500 640.400000 +157.003300 -8.738600 643.200000 +157.003200 -8.738700 643.600000 +157.003200 -8.738800 643.600000 +157.003100 -8.738800 643.600000 +157.003000 -8.738800 647.200000 +157.003000 -8.738900 654.000000 +157.003000 -8.739000 655.600000 +157.003000 -8.739000 646.800000 +157.003000 -8.739100 649.200000 +157.003100 -8.739100 642.800000 +157.003100 -8.739200 651.600000 +157.003200 -8.739200 640.400000 +157.003300 -8.739200 645.200000 +157.003400 -8.739200 642.000000 +157.003500 -8.739200 636.000000 +157.003600 -8.739200 636.000000 +157.003700 -8.739300 636.000000 +157.003800 -8.739200 635.600000 +157.003900 -8.739200 636.000000 +157.004000 -8.739200 636.800000 +157.004100 -8.739100 638.400000 +157.004200 -8.739100 638.400000 +157.004300 -8.739100 638.400000 +157.004400 -8.739000 644.000000 +157.004600 -8.739000 640.800000 +157.004700 -8.738900 643.200000 +157.004800 -8.738900 647.600000 +157.004900 -8.738900 648.400000 +157.005000 -8.738900 653.600000 +157.005200 -8.738900 655.600000 +157.005100 -8.738900 654.400000 +157.004500 -8.738800 643.600000 +157.004400 -8.738100 663.600000 +157.005100 -8.737800 675.600000 +157.006000 -8.738300 714.000000 +157.007000 -8.739000 746.400000 +157.008100 -8.739800 708.000000 +157.009000 -8.740400 698.000000 +157.009600 -8.740800 695.600000 +157.010100 -8.741200 698.400000 +157.010500 -8.741500 694.800000 +157.010700 -8.741600 690.800000 +157.010800 -8.741700 687.600000 +157.010800 -8.741700 686.000000 +157.010800 -8.741700 687.600000 +157.010700 -8.741600 691.200000 +157.010800 -8.741400 694.000000 +157.010800 -8.741300 698.800000 +157.010900 -8.741200 698.800000 +157.011000 -8.741100 699.200000 +157.011100 -8.741100 701.200000 +157.011200 -8.741000 696.800000 +157.011300 -8.741100 701.600000 +157.011400 -8.741100 699.200000 +157.011500 -8.741300 700.000000 +157.011500 -8.741500 707.600000 +157.011500 -8.741700 720.800000 +157.011500 -8.741700 708.000000 +157.011400 -8.741700 708.800000 +157.011400 -8.741800 710.400000 +157.011400 -8.741900 700.800000 +157.011300 -8.742000 718.800000 +157.011200 -8.741900 714.800000 +157.011100 -8.741700 713.600000 +157.011000 -8.741500 725.200000 +157.011200 -8.741300 713.200000 +157.011400 -8.741100 699.200000 +157.011500 -8.741000 722.400000 +157.011400 -8.740900 693.200000 +157.011200 -8.740900 693.200000 +157.011200 -8.740900 694.400000 +157.011100 -8.740900 693.600000 +157.011000 -8.741000 694.400000 +157.010900 -8.741100 696.400000 +157.010900 -8.741200 699.200000 +157.010900 -8.741300 699.600000 +157.010900 -8.741500 701.200000 +157.010900 -8.741500 698.800000 +157.010800 -8.741600 699.600000 +157.010800 -8.741600 697.600000 +157.010800 -8.741700 702.400000 +157.010700 -8.741800 695.200000 +157.010800 -8.741900 695.200000 +157.010700 -8.741900 693.600000 +157.010600 -8.741900 694.800000 +157.010500 -8.741900 693.600000 +157.010500 -8.741900 693.200000 +157.010500 -8.742000 693.600000 +157.010500 -8.742100 692.000000 +157.010500 -8.742200 692.000000 +157.010500 -8.742300 680.800000 +157.010400 -8.742400 689.600000 +157.010400 -8.742600 675.600000 +157.010400 -8.742600 675.600000 +157.010300 -8.742500 676.400000 +157.010400 -8.742100 682.400000 +157.010800 -8.741900 685.200000 +157.011100 -8.742000 680.400000 +157.011500 -8.742300 674.800000 +157.011900 -8.742500 661.600000 +157.012200 -8.742700 652.400000 +157.012300 -8.742900 647.200000 +157.012400 -8.743000 644.000000 +157.012400 -8.743000 644.000000 +157.012400 -8.742900 645.200000 +157.012300 -8.743100 643.600000 +157.012200 -8.743500 642.400000 +157.012200 -8.743600 640.400000 +157.012400 -8.743700 639.600000 +157.012600 -8.743600 638.400000 +157.012600 -8.743500 638.400000 +157.012500 -8.743400 639.200000 +157.012300 -8.743400 641.600000 +157.012300 -8.743300 642.400000 +157.012400 -8.743100 644.000000 +157.012400 -8.743000 646.400000 +157.012300 -8.743000 647.600000 +157.012300 -8.743100 649.200000 +157.012200 -8.743200 648.000000 +157.012100 -8.742800 654.000000 +157.011800 -8.742300 714.800000 +157.011500 -8.741800 710.400000 +157.011200 -8.741300 700.800000 +157.010900 -8.741000 696.400000 +157.010600 -8.740700 694.400000 +157.010400 -8.740500 693.600000 +157.010200 -8.740300 694.000000 +157.009900 -8.740100 696.800000 +157.009700 -8.739800 698.400000 +157.009500 -8.739700 698.800000 +157.009300 -8.739600 699.200000 +157.009200 -8.739500 700.800000 +157.009100 -8.739500 700.000000 +157.009100 -8.739600 700.400000 +157.009100 -8.739600 700.000000 +157.009000 -8.739600 700.000000 +157.008900 -8.739600 700.400000 +157.008900 -8.739600 701.600000 +157.008800 -8.739700 700.800000 +157.008900 -8.739800 700.000000 +157.009000 -8.740000 699.200000 +157.008900 -8.740000 700.400000 +157.008700 -8.739800 701.200000 +157.008600 -8.739700 702.800000 +157.008500 -8.739700 713.200000 +157.008400 -8.739700 704.800000 +157.008400 -8.739700 710.800000 +157.008300 -8.739700 706.800000 +157.008100 -8.739500 731.600000 +157.007800 -8.739200 778.400000 +157.007600 -8.739000 766.800000 +157.007400 -8.738900 761.600000 +157.007200 -8.738700 753.200000 +157.007000 -8.738400 736.400000 +157.006800 -8.738200 729.200000 +157.006600 -8.738100 709.200000 +157.006500 -8.738100 706.800000 +157.006400 -8.738000 704.000000 +157.006300 -8.738000 701.600000 +157.006300 -8.738000 700.000000 +157.006200 -8.738100 700.400000 +157.006200 -8.738100 700.800000 +157.006100 -8.738200 697.600000 +157.006100 -8.738200 699.600000 +157.006000 -8.738300 697.200000 +157.005800 -8.738300 697.200000 +157.005700 -8.738400 697.200000 +157.005500 -8.738400 694.000000 +157.005400 -8.738300 685.200000 +157.005600 -8.738300 691.600000 +157.006000 -8.738300 734.000000 +157.006600 -8.738500 755.600000 +157.007200 -8.738700 746.800000 +157.007800 -8.739100 720.800000 +157.008500 -8.739500 704.800000 +157.009100 -8.739900 698.800000 +157.009700 -8.740200 698.000000 +157.010100 -8.740400 694.000000 +157.010200 -8.740500 693.600000 +157.010100 -8.740700 693.200000 +157.010400 -8.741200 695.600000 +157.010900 -8.741400 700.000000 +157.011300 -8.741700 689.600000 +157.011400 -8.741900 681.600000 +157.011400 -8.741900 682.800000 +157.011400 -8.741800 699.200000 +157.011500 -8.741800 710.400000 +157.011700 -8.741800 711.600000 +157.011800 -8.741800 714.400000 +157.012000 -8.741900 717.600000 +157.012100 -8.742000 718.400000 +157.012100 -8.742100 721.600000 +157.012100 -8.742300 725.200000 +157.012000 -8.742200 723.200000 +157.011900 -8.742200 722.400000 +157.011800 -8.742300 703.200000 +157.011600 -8.742000 716.400000 +157.011400 -8.741800 709.600000 +157.011200 -8.741600 705.200000 +157.011000 -8.741500 701.600000 +157.010800 -8.741200 698.000000 +157.010500 -8.740900 695.600000 +157.010400 -8.740700 694.400000 +157.010200 -8.740400 694.400000 +157.010000 -8.740300 694.800000 +157.009900 -8.740300 697.200000 +157.009700 -8.740300 698.400000 +157.009600 -8.740300 697.200000 +157.009500 -8.740000 697.200000 +157.009500 -8.739900 698.800000 +157.009300 -8.739900 697.600000 +157.009200 -8.739900 698.000000 +157.009000 -8.739900 698.800000 +157.008800 -8.740000 699.200000 +157.008700 -8.740000 700.400000 +157.008600 -8.740000 700.400000 +157.008600 -8.739800 702.000000 +157.008500 -8.739300 707.200000 +157.008200 -8.738800 722.000000 +157.008000 -8.738200 738.400000 +157.007800 -8.737800 746.400000 +157.007600 -8.737300 752.800000 +157.007400 -8.736900 748.000000 +157.007200 -8.736500 716.800000 +157.007000 -8.736100 706.000000 +157.006800 -8.735700 699.200000 +157.006600 -8.735300 693.200000 +157.006400 -8.734900 692.000000 +157.006200 -8.734800 685.200000 +157.006100 -8.734800 688.800000 +157.006100 -8.734900 690.800000 +157.006000 -8.734900 684.000000 +157.005900 -8.735000 679.600000 +157.005900 -8.735100 680.400000 +157.005900 -8.735200 663.600000 +157.005800 -8.735300 662.800000 +157.005700 -8.735300 661.200000 +157.005600 -8.735300 662.400000 +157.005500 -8.735300 664.800000 +157.005400 -8.735200 659.600000 +157.005300 -8.735200 660.400000 +157.005200 -8.735100 659.600000 +157.005100 -8.735100 664.800000 +157.005000 -8.735000 669.200000 +157.004900 -8.735000 666.400000 +157.004800 -8.734900 679.600000 +157.004700 -8.734700 683.600000 +157.004600 -8.734700 676.800000 +157.004500 -8.734700 679.200000 +157.004400 -8.734700 670.800000 +157.004200 -8.734500 690.400000 +157.004100 -8.734400 694.000000 +157.003900 -8.734400 696.400000 +157.003800 -8.734300 700.800000 +157.003700 -8.734200 705.600000 +157.003500 -8.734200 709.600000 +157.003400 -8.734100 713.200000 +157.003200 -8.733900 720.400000 +157.003100 -8.733900 744.800000 +157.002900 -8.733800 742.400000 +157.002800 -8.733800 736.400000 +157.002700 -8.733700 752.800000 +157.002600 -8.733700 764.000000 +157.002400 -8.733700 762.800000 +157.002300 -8.733700 772.400000 +157.002200 -8.733700 772.800000 +157.002000 -8.733800 779.600000 +157.001900 -8.733900 777.600000 +157.001800 -8.734000 775.200000 +157.001700 -8.734000 775.600000 +157.001600 -8.734100 777.600000 +157.001600 -8.734200 773.600000 +157.001500 -8.734300 774.400000 +157.001400 -8.734200 778.800000 +157.000900 -8.733900 808.400000 +157.000100 -8.733800 837.600000 +156.999300 -8.733800 847.600000 +156.998400 -8.733800 860.000000 +156.997600 -8.733800 902.400000 +156.996800 -8.733800 913.600000 +156.996100 -8.733800 957.200000 +156.995300 -8.733800 976.000000 +156.994600 -8.733800 998.000000 +156.993800 -8.733800 1004.800000 +156.993100 -8.733800 1043.600000 +156.992400 -8.733800 1068.800000 +156.991600 -8.733800 1074.000000 +156.991000 -8.733800 1080.400000 +156.990700 -8.733900 1084.400000 +156.990500 -8.733900 1087.600000 +156.990100 -8.733900 1094.000000 +156.989700 -8.733800 1118.400000 +156.989400 -8.733800 1135.600000 +156.989100 -8.733800 1146.000000 +156.988900 -8.733800 1153.600000 +156.988800 -8.733700 1139.600000 +156.988700 -8.733400 1130.000000 +156.988600 -8.733200 1146.800000 +156.988600 -8.733100 1135.600000 +156.988700 -8.733000 1134.000000 +156.988800 -8.732900 1130.800000 +156.988900 -8.732900 1130.800000 +156.989100 -8.732900 1126.000000 +156.989200 -8.732800 1121.200000 +156.989400 -8.732800 1116.800000 +156.989700 -8.732800 1110.000000 +156.989900 -8.732800 1104.000000 +156.990100 -8.732800 1099.600000 +156.990300 -8.732900 1094.400000 +156.990400 -8.732800 1092.400000 +156.990400 -8.732700 1094.000000 +156.990400 -8.732600 1093.600000 +156.990400 -8.732500 1094.400000 +156.990500 -8.732400 1095.600000 +156.990600 -8.732600 1092.000000 +156.990600 -8.732900 1088.800000 +156.990700 -8.733100 1086.800000 +156.990700 -8.733100 1085.600000 +156.990800 -8.733000 1084.800000 +156.990800 -8.732900 1084.400000 +156.990900 -8.733000 1082.400000 +156.991000 -8.732900 1081.600000 +156.991000 -8.732800 1081.600000 +156.991200 -8.732800 1080.800000 +156.991700 -8.732900 1064.800000 +156.992300 -8.733000 1045.600000 +156.992800 -8.733100 1064.800000 +156.993400 -8.733000 1012.800000 +156.993900 -8.732900 999.600000 +156.994400 -8.732900 982.800000 +156.994800 -8.732800 982.800000 +156.995300 -8.732700 958.400000 +156.995700 -8.732700 948.000000 +156.996000 -8.732600 935.600000 +156.996300 -8.732600 929.200000 +156.996400 -8.732500 928.400000 +156.996400 -8.732300 930.800000 +156.996300 -8.732200 931.200000 +156.996400 -8.732100 932.000000 +156.996400 -8.732000 951.600000 +156.996500 -8.732000 948.000000 +156.996400 -8.731900 953.600000 +156.996400 -8.731800 940.000000 +156.996300 -8.731600 956.400000 +156.996300 -8.731600 943.200000 +156.996300 -8.731500 945.200000 +156.996300 -8.731400 956.800000 +156.996300 -8.731300 947.600000 +156.996300 -8.731200 959.200000 +156.996300 -8.731100 960.400000 +156.996300 -8.731000 959.600000 +156.996300 -8.730900 962.000000 +156.996300 -8.730800 962.400000 +156.996400 -8.730800 962.000000 +156.996500 -8.730700 960.000000 +156.996500 -8.730600 959.600000 +156.996500 -8.730500 961.600000 +156.996600 -8.730400 963.600000 +156.996600 -8.730300 964.000000 +156.996700 -8.730200 963.200000 +156.996800 -8.730200 962.800000 +156.996900 -8.730100 962.800000 +156.997100 -8.730000 960.800000 +156.997100 -8.729900 962.400000 +156.997000 -8.729900 964.400000 +156.997000 -8.729800 965.200000 +156.997000 -8.729700 967.600000 +156.997100 -8.729700 966.000000 +156.997300 -8.729600 964.800000 +156.997500 -8.729500 956.800000 +156.997700 -8.729500 954.400000 +156.997800 -8.729400 952.800000 +156.998200 -8.729400 949.200000 +156.998300 -8.729300 941.600000 +156.998400 -8.729200 944.000000 +156.998500 -8.729200 947.200000 +156.998600 -8.729100 946.000000 +156.998700 -8.729000 942.400000 +156.998800 -8.728900 940.800000 +156.998900 -8.728800 944.000000 +156.999100 -8.728800 944.400000 +156.999200 -8.728700 952.000000 +156.999300 -8.728600 951.600000 +156.999500 -8.728600 950.800000 +156.999600 -8.728500 941.200000 +156.999800 -8.728400 939.200000 +157.000000 -8.728400 938.400000 +157.000200 -8.728300 936.000000 +157.000500 -8.728300 933.600000 +157.000500 -8.728200 935.200000 +157.000500 -8.728100 938.000000 +157.000500 -8.728000 940.000000 +157.000400 -8.728000 942.400000 +157.000300 -8.728000 945.200000 +157.000200 -8.727900 949.600000 +157.000100 -8.727900 952.000000 +157.000000 -8.727800 957.200000 +156.999800 -8.727800 959.600000 +156.999700 -8.727700 963.200000 +156.999600 -8.727600 968.000000 +156.999600 -8.727600 968.800000 +156.999800 -8.727500 966.400000 +157.000200 -8.727600 958.000000 +157.000800 -8.728000 942.400000 +157.001500 -8.728500 915.200000 +157.002600 -8.729300 876.000000 +157.003800 -8.730100 850.400000 +157.005300 -8.731300 774.800000 +157.006900 -8.732700 725.600000 +157.008300 -8.733900 780.000000 +157.009300 -8.734700 774.000000 +157.010000 -8.735400 758.800000 +157.010700 -8.736000 715.600000 +157.011300 -8.736600 705.200000 +157.011900 -8.737100 692.800000 +157.012400 -8.737500 687.200000 +157.013000 -8.738000 689.600000 +157.013300 -8.738500 694.400000 +157.013200 -8.739000 696.400000 +157.012700 -8.739000 688.000000 +157.012000 -8.738700 681.200000 +157.011200 -8.738300 679.600000 +157.010500 -8.738000 696.400000 +157.009800 -8.737700 716.000000 +157.009300 -8.737400 725.600000 +157.008800 -8.737200 738.800000 +157.008200 -8.736900 753.600000 +157.007600 -8.736800 774.800000 +157.007000 -8.736600 708.800000 +157.006400 -8.736400 690.000000 +157.005700 -8.736200 668.400000 +157.005000 -8.735900 662.800000 +157.004800 -8.735600 658.000000 +157.005000 -8.735300 658.000000 +157.005300 -8.735100 660.000000 +157.005400 -8.735100 660.400000 +157.005400 -8.735000 664.800000 +157.005400 -8.735000 661.600000 +157.005400 -8.734900 662.000000 +157.005300 -8.734800 662.000000 +157.005300 -8.734800 663.200000 +157.005700 -8.735000 664.800000 +157.006000 -8.735400 663.600000 +157.006200 -8.735800 682.000000 +157.006400 -8.736000 695.600000 +157.006600 -8.736100 765.200000 +157.006700 -8.736100 722.400000 +157.006800 -8.736100 772.800000 +157.006900 -8.736000 783.600000 +157.006900 -8.736000 775.200000 +157.007000 -8.736000 792.400000 +157.007200 -8.736000 779.600000 +157.007200 -8.735900 788.000000 +157.007100 -8.735700 811.600000 +157.007000 -8.735600 796.000000 +157.007000 -8.735500 780.000000 +157.007300 -8.735800 784.400000 +157.007400 -8.736100 780.000000 +157.007600 -8.736200 786.800000 +157.007700 -8.736200 788.400000 +157.007800 -8.736200 765.600000 +157.007900 -8.736200 764.800000 +157.008000 -8.736200 762.800000 +157.008100 -8.736200 760.800000 +157.008200 -8.736200 759.200000 +157.008400 -8.736200 759.200000 +157.008500 -8.736200 756.000000 +157.008600 -8.736100 757.200000 +157.008600 -8.736100 755.600000 +157.008700 -8.736100 755.600000 +157.008900 -8.736200 747.600000 +157.009300 -8.736300 740.400000 +157.009700 -8.736300 728.800000 +157.009800 -8.736300 724.800000 +157.010000 -8.736200 722.000000 +157.010400 -8.736100 718.000000 +157.010700 -8.736100 714.400000 +157.011000 -8.736000 712.800000 +157.011200 -8.735900 710.000000 +157.011700 -8.735900 708.400000 +157.012100 -8.735800 703.600000 +157.012400 -8.735800 700.800000 +157.012600 -8.735800 692.400000 +157.012900 -8.735800 686.000000 +157.013200 -8.735800 676.800000 +157.013400 -8.735900 671.600000 +157.013600 -8.735800 670.400000 +157.013800 -8.735800 676.000000 +157.013800 -8.735700 668.000000 +157.013900 -8.735600 675.600000 +157.013800 -8.735500 658.400000 +157.013800 -8.735400 655.600000 +157.013800 -8.735200 657.600000 +157.013800 -8.735100 652.800000 +157.013800 -8.735000 650.000000 +157.013800 -8.734900 648.000000 +157.013800 -8.734700 646.800000 +157.013800 -8.734500 644.000000 +157.013800 -8.734400 642.800000 +157.013800 -8.734200 641.600000 +157.013800 -8.734000 640.800000 +157.013800 -8.733900 640.400000 +157.013800 -8.733700 639.600000 +157.013700 -8.733500 640.400000 +157.013700 -8.733300 642.400000 +157.013700 -8.733100 641.200000 +157.013700 -8.733000 642.400000 +157.013700 -8.732800 643.600000 +157.013700 -8.732700 646.400000 +157.013800 -8.732500 646.800000 +157.013900 -8.732500 644.800000 +157.014100 -8.732500 643.600000 +157.014300 -8.732400 642.800000 +157.014500 -8.732400 641.600000 +157.014600 -8.732400 640.800000 +157.014800 -8.732300 642.000000 +157.014900 -8.732100 644.000000 +157.015000 -8.732000 647.200000 +157.015000 -8.731900 649.200000 +157.015100 -8.731800 653.200000 +157.015200 -8.731600 656.000000 +157.015200 -8.731500 660.000000 +157.015300 -8.731400 662.800000 +157.015300 -8.731200 667.200000 +157.015400 -8.731100 670.400000 +157.015400 -8.731000 674.800000 +157.015500 -8.730900 678.800000 +157.015500 -8.730700 682.400000 +157.015500 -8.730600 686.800000 +157.015600 -8.730400 692.400000 +157.015600 -8.730300 707.200000 +157.015600 -8.730200 701.200000 +157.015600 -8.730000 710.400000 +157.015600 -8.729900 709.200000 +157.015500 -8.729800 726.400000 +157.015500 -8.729600 719.200000 +157.015500 -8.729500 745.200000 +157.015500 -8.729400 740.400000 +157.015500 -8.729300 739.600000 +157.015500 -8.729200 740.000000 +157.015500 -8.729100 752.000000 +157.015400 -8.729000 761.600000 +157.015400 -8.728800 762.400000 +157.015300 -8.728700 775.200000 +157.015200 -8.728500 783.600000 +157.015500 -8.728600 781.200000 +157.016100 -8.729400 750.000000 +157.016900 -8.730700 725.600000 +157.017800 -8.732200 732.000000 +157.018700 -8.733600 754.400000 +157.019500 -8.735000 764.000000 +157.020200 -8.736200 749.600000 +157.021000 -8.737500 746.000000 +157.021700 -8.738700 732.000000 +157.022500 -8.740000 760.400000 +157.023300 -8.741200 774.800000 +157.024200 -8.742200 828.000000 +157.025000 -8.743200 891.200000 +157.025800 -8.744100 932.000000 +157.026500 -8.744800 891.200000 +157.027300 -8.744900 856.000000 +157.028200 -8.744900 838.000000 +157.028900 -8.744900 828.800000 +157.029600 -8.744800 828.800000 +157.030000 -8.744900 820.400000 +157.030400 -8.744900 814.400000 +157.030700 -8.744800 810.800000 +157.031000 -8.744800 808.800000 +157.031400 -8.744800 827.600000 +157.031900 -8.744600 850.400000 +157.032000 -8.744200 832.800000 +157.031700 -8.743900 843.200000 +157.031200 -8.744000 851.600000 +157.030700 -8.744200 847.600000 +157.030200 -8.744700 825.600000 +157.029800 -8.745200 818.800000 +157.029500 -8.745800 802.000000 +157.029300 -8.746400 782.800000 +157.029200 -8.746900 783.200000 +157.029200 -8.747300 779.200000 +157.029200 -8.747500 778.000000 +157.029200 -8.747500 780.400000 +157.029200 -8.747400 779.200000 +157.029200 -8.747200 778.400000 +157.029200 -8.747000 779.600000 +157.029300 -8.747300 778.000000 +157.029400 -8.747700 775.200000 +157.029500 -8.747900 775.600000 +157.029500 -8.748000 781.200000 +157.029400 -8.748000 778.400000 +157.029400 -8.748200 781.600000 +157.029400 -8.748200 776.400000 +157.029400 -8.748200 776.400000 +157.029300 -8.748600 774.400000 +157.029200 -8.749000 776.000000 +157.029200 -8.749300 771.200000 +157.029100 -8.749500 773.200000 +157.029000 -8.749700 773.200000 +157.028900 -8.749800 772.000000 +157.028800 -8.749800 773.200000 +157.028800 -8.749900 776.000000 +157.028700 -8.750000 774.800000 +157.028700 -8.750000 776.000000 +157.028700 -8.750000 773.600000 +157.028800 -8.749900 772.400000 +157.029000 -8.749900 772.800000 +157.029100 -8.749900 769.600000 +157.029200 -8.750000 768.400000 +157.029300 -8.749900 768.400000 +157.029300 -8.749900 772.400000 +157.029300 -8.749900 768.400000 +157.029100 -8.749900 768.800000 +157.029000 -8.749900 774.800000 +157.029000 -8.750000 774.800000 +157.028900 -8.750100 771.600000 +157.028900 -8.750600 795.600000 +157.028900 -8.751200 808.800000 +157.028800 -8.751700 828.400000 +157.028700 -8.752100 840.400000 +157.028600 -8.752400 846.000000 +157.028500 -8.752800 853.200000 +157.028400 -8.753100 866.800000 +157.028300 -8.753400 867.200000 +157.028100 -8.753500 869.600000 +157.028100 -8.753500 868.800000 +157.027900 -8.753900 897.600000 +157.027800 -8.754200 915.600000 +157.027800 -8.754300 1122.400000 +157.027700 -8.754200 921.600000 +157.027700 -8.754000 903.200000 +157.027600 -8.754100 919.200000 +157.027500 -8.754600 967.600000 +157.027300 -8.754800 948.400000 +157.027200 -8.755000 998.400000 +157.027100 -8.755300 1024.800000 +157.027000 -8.755800 1028.000000 +157.027000 -8.756100 1054.000000 +157.027000 -8.756100 1048.800000 +157.027000 -8.756000 1063.200000 +157.026900 -8.756000 1074.800000 +157.026900 -8.756100 1058.800000 +157.026800 -8.756000 1063.600000 +157.026800 -8.756100 1052.400000 +157.026700 -8.756300 1066.000000 +157.026700 -8.756300 1086.800000 +157.026600 -8.756300 1070.800000 +157.026500 -8.756300 1086.800000 +157.026500 -8.756200 1071.600000 +157.026400 -8.756300 1084.400000 +157.026400 -8.756500 1087.600000 +157.026300 -8.756600 1091.200000 +157.026300 -8.756600 1088.400000 +157.026200 -8.756500 1086.800000 +157.026200 -8.756500 1105.600000 +157.026100 -8.756600 1097.600000 +157.026100 -8.756700 1114.000000 +157.026000 -8.756800 1114.800000 +157.026000 -8.756900 1114.000000 +157.025900 -8.757000 1117.600000 +157.025900 -8.757000 1125.200000 +157.025800 -8.757000 1134.000000 +157.025700 -8.757100 1129.600000 +157.025600 -8.757200 1121.600000 +157.025500 -8.757300 1160.400000 +157.025500 -8.757300 1142.000000 +157.025400 -8.757400 1144.400000 +157.025300 -8.757400 1155.600000 +157.025300 -8.757400 1172.000000 +157.025100 -8.757600 1153.200000 +157.024700 -8.757900 1158.400000 +157.024200 -8.757900 1136.400000 +157.023600 -8.757500 1116.000000 +157.022800 -8.756800 1063.600000 +157.021700 -8.756200 1040.400000 +157.020600 -8.755500 1069.200000 +157.019300 -8.754600 1024.400000 +157.018000 -8.753700 950.400000 +157.016500 -8.752800 898.000000 +157.015100 -8.751900 859.600000 +157.013700 -8.751000 781.600000 +157.012200 -8.750000 733.200000 +157.010800 -8.749100 698.800000 +157.009400 -8.748200 704.800000 +157.007900 -8.747200 721.200000 +157.006500 -8.746300 743.200000 +157.005100 -8.745300 770.800000 +157.003600 -8.744400 755.600000 +157.002200 -8.743400 721.600000 +157.000700 -8.742500 753.600000 +156.999300 -8.741600 821.600000 +156.997800 -8.740600 864.800000 +156.996400 -8.739700 899.600000 +156.994900 -8.738700 933.200000 +156.993400 -8.737800 989.600000 +156.992000 -8.736900 1054.000000 +156.990500 -8.736000 1071.600000 +156.989100 -8.735000 1103.600000 +156.987600 -8.734100 1194.400000 +156.986100 -8.733200 1256.800000 +156.984700 -8.732200 1316.800000 +156.983200 -8.731300 1369.200000 +156.981800 -8.730300 1444.800000 +156.980300 -8.729400 1495.600000 +156.978800 -8.728400 1549.600000 +156.977400 -8.727400 1578.400000 +156.975900 -8.726500 1632.400000 +156.974600 -8.725700 1691.600000 +156.973600 -8.725100 1724.000000 +156.972900 -8.724500 1736.000000 +156.972200 -8.724200 1737.600000 +156.971700 -8.723800 1740.800000 +156.971200 -8.723500 1754.000000 +156.970900 -8.723300 1752.800000 +156.970600 -8.723200 1750.400000 +156.970500 -8.723200 1752.800000 +156.970400 -8.723100 1754.000000 +156.970400 -8.722900 1752.800000 +156.970300 -8.722700 1752.800000 +156.970300 -8.722500 1752.800000 +156.970300 -8.722700 1749.600000 +156.970500 -8.723100 1751.600000 +156.970800 -8.723300 1747.200000 +156.970900 -8.723400 1746.800000 +156.970900 -8.723400 1746.800000 +156.971000 -8.723300 1746.800000 +156.971200 -8.723400 1744.400000 +156.971300 -8.723400 1742.800000 +156.971200 -8.723300 1754.400000 +156.971200 -8.723300 1745.200000 +156.971500 -8.723500 1742.400000 +156.971700 -8.723600 1740.800000 +156.971700 -8.723600 1740.400000 +156.971600 -8.723500 1740.400000 +156.971700 -8.723600 1740.400000 +156.971800 -8.723700 1739.600000 +156.971900 -8.723700 1739.600000 +156.971800 -8.723700 1739.600000 +156.971700 -8.723600 1740.000000 +156.971600 -8.723500 1741.200000 +156.971700 -8.723600 1740.400000 +156.971700 -8.723600 1740.800000 +156.971700 -8.723700 1740.000000 +156.971900 -8.723700 1739.200000 +156.971900 -8.723700 1738.800000 +156.972100 -8.723800 1738.400000 +156.972500 -8.723600 1730.000000 +156.973000 -8.723500 1735.600000 +156.973400 -8.723400 1735.200000 +156.973800 -8.723200 1736.000000 +156.974300 -8.723000 1723.200000 +156.974900 -8.722800 1736.800000 +156.975500 -8.722700 1736.400000 +156.975900 -8.722500 1735.200000 +156.976400 -8.722400 1736.000000 +156.976800 -8.722200 1735.600000 +156.977300 -8.722100 1636.400000 +156.977600 -8.721900 1631.600000 +156.977800 -8.721800 1630.800000 +156.978000 -8.721800 1644.400000 +156.978100 -8.721700 1624.800000 +156.978100 -8.721500 1626.800000 +156.978100 -8.721400 1654.400000 +156.978000 -8.721300 1636.000000 +156.977800 -8.721100 1637.600000 +156.977600 -8.721000 1652.800000 +156.977700 -8.720900 1626.400000 +156.977800 -8.720900 1655.600000 +156.977800 -8.720800 1616.400000 +156.977800 -8.720700 1609.200000 +156.977600 -8.720600 1626.800000 +156.977400 -8.720400 1602.800000 +156.977100 -8.720300 1615.200000 +156.976800 -8.720100 1576.400000 +156.976500 -8.719900 1561.600000 +156.976300 -8.719800 1590.400000 +156.976300 -8.719800 1578.000000 +156.976400 -8.719700 1559.200000 +156.976400 -8.719600 1560.800000 +156.976300 -8.719500 1561.200000 +156.976300 -8.719400 1570.400000 +156.976300 -8.719300 1521.200000 +156.976200 -8.719200 1534.400000 +156.976300 -8.719200 1597.200000 +156.976600 -8.719100 1490.400000 +156.976600 -8.719100 1563.600000 +156.976800 -8.719100 1512.000000 +156.976900 -8.719000 1530.800000 +156.976800 -8.719000 1508.800000 +156.976900 -8.718900 1513.600000 +156.976900 -8.718900 1495.600000 +156.976900 -8.718800 1546.000000 +156.977100 -8.718800 1576.400000 +156.977400 -8.718800 1519.600000 +156.977500 -8.718900 1516.400000 +156.977600 -8.718900 1583.200000 +156.977700 -8.719000 1517.200000 +156.977800 -8.719000 1526.800000 +156.977800 -8.719000 1508.000000 +156.977900 -8.719000 1497.600000 +156.978100 -8.719000 1715.200000 +156.978100 -8.718900 1489.200000 +156.978000 -8.718900 1650.800000 +156.978000 -8.718800 1721.600000 +156.977900 -8.718800 1576.000000 +156.978100 -8.718700 1553.600000 +156.978200 -8.718700 1504.400000 +156.978300 -8.718700 1542.400000 +156.978400 -8.718700 1716.000000 +156.978500 -8.718700 1527.600000 +156.978600 -8.718600 1712.800000 +156.978800 -8.718600 1550.800000 +156.979000 -8.718600 1623.200000 +156.979100 -8.718600 1704.000000 +156.979200 -8.718600 1687.600000 +156.979300 -8.718600 1540.000000 +156.979200 -8.718600 1596.000000 +156.979100 -8.718500 1582.400000 +156.978800 -8.718400 1508.000000 +156.978600 -8.718400 1502.800000 +156.978300 -8.718300 1643.600000 +156.978000 -8.718200 1489.200000 +156.977700 -8.718100 1498.800000 +156.977400 -8.718000 1456.400000 +156.977000 -8.718000 1448.400000 +156.976700 -8.717900 1448.400000 +156.976500 -8.717800 1453.200000 +156.976300 -8.717700 1454.400000 +156.976100 -8.717700 1455.200000 +156.976100 -8.718000 1476.800000 +156.976600 -8.718800 1492.000000 +156.978100 -8.719700 1585.600000 +156.979800 -8.720900 1682.400000 +156.981800 -8.722200 1560.800000 +156.984100 -8.723700 1481.600000 +156.986600 -8.725300 1370.400000 +156.989200 -8.726900 1250.800000 +156.991900 -8.728500 1126.800000 +156.994600 -8.730200 1065.600000 +156.997200 -8.731800 945.600000 +156.999900 -8.733400 827.200000 +157.002600 -8.735000 732.800000 +157.005300 -8.736600 674.800000 +157.008000 -8.738200 738.800000 +157.010700 -8.739800 688.800000 +157.013400 -8.741400 701.200000 +157.016100 -8.743100 668.400000 +157.018800 -8.744700 746.400000 +157.021500 -8.746400 889.600000 +157.024300 -8.748000 925.200000 +157.027000 -8.749700 836.000000 +157.029700 -8.751400 775.600000 +157.032500 -8.753000 785.200000 +157.035200 -8.754600 810.000000 +157.038000 -8.756200 885.200000 +157.040700 -8.757800 858.400000 +157.043500 -8.759300 801.600000 +157.046200 -8.760900 840.000000 +157.048900 -8.762500 891.200000 +157.051700 -8.764100 995.200000 +157.054500 -8.765700 1112.800000 +157.057200 -8.767300 1217.200000 +157.060000 -8.768900 1334.800000 +157.062800 -8.770500 1391.600000 +157.065500 -8.772100 1455.600000 +157.068300 -8.773700 1484.400000 +157.071100 -8.775300 1564.800000 +157.073900 -8.776900 1788.400000 +157.076700 -8.778500 2016.000000 +157.079400 -8.780100 2252.000000 +157.081800 -8.781300 2268.900000 +157.083900 -8.781200 2334.800000 +157.085600 -8.781400 2404.000000 +157.087200 -8.781500 2441.200000 +157.088900 -8.781700 2568.000000 +157.090100 -8.783100 2591.200000 +157.091400 -8.784500 2603.200000 +157.092500 -8.785800 2633.200000 +157.093500 -8.786800 2654.000000 +157.094200 -8.787700 2670.000000 +157.094700 -8.788600 2679.200000 +157.095000 -8.789300 2685.200000 +157.095200 -8.789600 2688.000000 +157.095200 -8.789700 2688.400000 +157.095000 -8.789800 2688.800000 +157.094800 -8.789900 2687.200000 +157.094800 -8.789800 2688.000000 +157.095200 -8.789700 2688.000000 +157.095300 -8.789700 2688.800000 +157.095400 -8.789600 2689.600000 +157.095400 -8.789600 2689.200000 +157.095300 -8.789500 2688.800000 +157.095200 -8.789500 2688.000000 +157.095100 -8.789500 2688.400000 +157.095000 -8.789500 2686.400000 +157.094900 -8.789500 2686.400000 +157.094900 -8.789400 2684.800000 +157.094900 -8.789300 2684.800000 +157.094900 -8.789300 2685.600000 +157.095000 -8.789200 2686.000000 +157.095000 -8.789100 2684.400000 +157.095000 -8.789000 2684.400000 +157.095000 -8.788900 2683.200000 +157.095000 -8.788800 2683.200000 +157.095000 -8.788700 2682.400000 +157.095000 -8.788600 2681.600000 +157.095000 -8.788500 2681.600000 +157.094900 -8.788400 2680.800000 +157.094800 -8.788400 2680.400000 +157.094700 -8.788300 2678.800000 +157.094700 -8.788300 2678.400000 +157.094800 -8.788200 2680.800000 +157.094800 -8.788100 2678.400000 +157.094800 -8.788000 2678.000000 +157.094800 -8.787900 2677.600000 +157.094900 -8.787800 2678.000000 +157.095000 -8.787800 2676.800000 +157.095000 -8.787700 2677.200000 +157.095000 -8.787600 2676.800000 +157.095000 -8.787600 2678.400000 +157.095100 -8.787500 2678.000000 +157.095200 -8.787400 2678.000000 +157.095300 -8.787400 2678.400000 +157.095300 -8.787300 2679.200000 +157.095400 -8.787200 2678.800000 +157.095600 -8.787100 2679.600000 +157.095600 -8.787000 2680.400000 +157.095700 -8.787000 2680.000000 +157.095700 -8.786900 2680.000000 +157.095700 -8.786800 2680.000000 +157.095700 -8.786700 2678.800000 +157.095800 -8.786700 2679.600000 +157.095800 -8.786600 2679.600000 +157.095800 -8.786500 2677.200000 +157.095800 -8.786400 2676.400000 +157.095800 -8.786400 2676.000000 +157.095800 -8.786300 2675.600000 +157.095800 -8.786200 2676.800000 +157.095800 -8.786200 2675.200000 +157.095800 -8.786100 2674.800000 +157.095800 -8.786000 2674.000000 +157.095800 -8.785900 2673.200000 +157.095800 -8.785900 2673.600000 +157.095800 -8.785800 2673.200000 +157.095800 -8.785800 2672.800000 +157.095800 -8.785700 2672.800000 +157.095800 -8.785700 2672.000000 +157.095800 -8.785600 2672.000000 +157.095800 -8.785500 2671.600000 +157.095800 -8.785400 2670.400000 +157.095800 -8.785400 2670.000000 +157.095800 -8.785300 2669.600000 +157.095700 -8.785300 2669.200000 +157.095700 -8.785200 2668.000000 +157.095700 -8.785200 2667.600000 +157.095600 -8.785100 2667.200000 +157.095600 -8.785100 2664.800000 +157.095600 -8.785000 2664.800000 +157.095600 -8.785000 2663.600000 +157.095600 -8.784900 2662.400000 +157.095500 -8.784900 2663.200000 +157.095500 -8.784800 2665.600000 +157.095600 -8.784800 2662.800000 +157.095500 -8.784700 2662.400000 +157.095500 -8.784700 2662.400000 +157.095500 -8.784600 2660.000000 +157.095500 -8.784600 2660.000000 +157.095500 -8.784500 2659.600000 +157.095500 -8.784500 2659.200000 +157.095600 -8.784400 2659.600000 +157.095600 -8.784300 2660.800000 +157.095700 -8.784300 2679.200000 +157.095700 -8.784200 2662.000000 +157.095700 -8.784200 2662.000000 +157.095700 -8.784100 2662.000000 +157.095700 -8.784100 2663.200000 +157.095700 -8.784000 2679.600000 +157.095800 -8.784000 2676.400000 +157.095800 -8.783900 2691.200000 +157.095800 -8.783900 2761.600000 +157.095800 -8.783800 2681.200000 +157.095900 -8.783700 2678.800000 +157.096000 -8.783700 2668.000000 +157.096100 -8.783600 2680.800000 +157.096100 -8.783500 2694.400000 +157.096200 -8.783500 2676.800000 +157.096200 -8.783500 2677.200000 +157.096200 -8.783400 2676.800000 +157.096200 -8.783400 2676.400000 +157.096200 -8.783400 2678.400000 +157.096100 -8.783400 2682.000000 +157.096200 -8.783300 2704.800000 +157.096600 -8.783500 2713.600000 +157.097200 -8.784100 2683.600000 +157.098400 -8.785100 2703.200000 +157.100000 -8.786400 2723.200000 +157.101800 -8.787800 2724.800000 +157.103900 -8.789400 2734.800000 +157.106100 -8.791100 2722.000000 +157.108600 -8.792900 2696.400000 +157.111100 -8.794800 2662.800000 +157.113700 -8.796800 2626.800000 +157.116300 -8.798700 2560.800000 +157.118800 -8.800600 2505.600000 +157.121400 -8.802600 2480.800000 +157.124000 -8.804500 2368.000000 +157.126500 -8.806500 2283.600000 +157.129100 -8.808400 2239.200000 +157.131600 -8.810400 2121.200000 +157.134100 -8.812300 2002.400000 +157.136600 -8.814300 1989.200000 +157.139100 -8.816300 1786.800000 +157.141600 -8.818300 1697.200000 +157.144200 -8.820200 1582.800000 +157.146700 -8.822200 1466.400000 +157.149200 -8.824200 1330.400000 +157.151800 -8.826200 1200.000000 +157.154300 -8.828200 1211.200000 +157.156800 -8.830100 1054.400000 +157.159400 -8.832100 978.400000 +157.161900 -8.834100 956.000000 +157.164400 -8.836200 905.200000 +157.167000 -8.838200 816.400000 +157.169400 -8.840100 860.400000 +157.171900 -8.842100 929.200000 +157.174400 -8.844100 1243.200000 +157.176900 -8.846100 1181.600000 +157.179400 -8.848100 1338.400000 +157.181900 -8.850100 1468.000000 +157.184400 -8.852100 1590.400000 +157.186800 -8.854100 1704.400000 +157.189300 -8.856100 1801.600000 +157.191800 -8.858200 1896.800000 +157.194300 -8.860200 2034.400000 +157.196800 -8.862200 2118.800000 +157.199300 -8.864200 2222.400000 +157.201800 -8.866200 2334.000000 +157.204300 -8.868200 2456.800000 +157.206800 -8.870200 2552.800000 +157.209300 -8.872200 2630.400000 +157.211900 -8.874200 2731.600000 +157.214300 -8.876100 2774.000000 +157.216800 -8.878000 3225.600000 +157.218900 -8.879700 2932.800000 +157.220600 -8.881000 2982.800000 +157.221800 -8.882100 3017.200000 +157.222800 -8.882900 3045.200000 +157.223700 -8.883700 3068.400000 +157.224500 -8.884400 3092.800000 +157.225200 -8.884800 3111.200000 +157.225900 -8.885300 3130.000000 +157.226600 -8.885700 3150.400000 +157.227100 -8.886100 3159.200000 +157.227600 -8.886400 3171.600000 +157.228200 -8.886700 3184.800000 +157.228700 -8.887000 3196.000000 +157.229200 -8.887200 3212.800000 +157.229500 -8.887300 3216.000000 +157.229700 -8.887400 3219.600000 +157.229900 -8.887400 3222.400000 +157.230300 -8.887500 3234.800000 +157.230700 -8.887700 3239.200000 +157.231100 -8.887700 3248.000000 +157.231200 -8.887700 3250.800000 +157.231300 -8.887700 3254.800000 +157.231300 -8.887600 3253.200000 +157.231400 -8.887600 3254.000000 +157.231400 -8.887700 3254.400000 +157.231400 -8.887600 3254.000000 +157.231400 -8.887600 3255.200000 +157.231500 -8.887600 3255.200000 +157.231600 -8.887600 3272.800000 +157.231500 -8.887600 3256.400000 +157.231500 -8.887600 3255.600000 +157.231600 -8.887600 3258.800000 +157.231500 -8.887600 3255.600000 +157.231500 -8.887500 3254.800000 +157.231600 -8.887500 3255.600000 +157.231600 -8.887500 3256.000000 +157.231700 -8.887600 3260.000000 +157.231700 -8.887600 3265.200000 +157.231700 -8.887500 3257.600000 +157.231700 -8.887600 3258.800000 +157.231700 -8.887500 3258.800000 +157.231600 -8.887500 3256.800000 +157.231500 -8.887400 3250.400000 +157.231500 -8.887500 3256.400000 +157.231700 -8.887600 3257.600000 +157.231700 -8.887500 3258.400000 +157.231700 -8.887500 3258.800000 +157.231600 -8.887500 3255.200000 +157.231500 -8.887400 3258.400000 +157.231700 -8.887500 3260.000000 +157.231800 -8.887600 3262.400000 +157.231700 -8.887600 3260.400000 +157.231700 -8.887500 3257.600000 +157.231600 -8.887500 3255.200000 +157.231600 -8.887500 3255.200000 +157.231600 -8.887500 3256.800000 +157.231600 -8.887500 3255.600000 +157.231700 -8.887500 3454.400000 +157.231700 -8.887500 3256.800000 +157.231600 -8.887500 3256.800000 +157.231600 -8.887400 3255.200000 +157.231500 -8.887400 3399.200000 +157.231600 -8.887400 3424.400000 +157.231600 -8.887400 3259.600000 +157.231700 -8.887500 3259.200000 +157.231800 -8.887500 3262.400000 +157.232000 -8.887600 3268.400000 +157.232000 -8.887500 3263.600000 +157.232000 -8.887500 3265.200000 +157.231900 -8.887400 3260.400000 +157.231800 -8.887300 3258.400000 +157.231600 -8.887200 3255.600000 +157.231700 -8.887100 3255.600000 +157.231800 -8.887200 3255.600000 +157.231900 -8.887400 3260.000000 +157.232000 -8.887500 3264.800000 +157.232100 -8.887700 3265.200000 +157.232100 -8.887700 3266.800000 +157.232100 -8.887700 3267.200000 +157.232000 -8.887700 3266.000000 +157.231900 -8.887600 3262.400000 +157.231900 -8.887600 3260.800000 +157.231900 -8.887500 3261.200000 +157.231800 -8.887400 3261.200000 +157.231700 -8.887400 3258.800000 +157.231600 -8.887300 3256.400000 +157.231500 -8.887200 3254.000000 +157.231600 -8.887200 3253.200000 +157.231700 -8.887300 3256.800000 +157.231900 -8.887500 3260.400000 +157.232000 -8.887600 3266.800000 +157.232100 -8.887700 3266.400000 +157.232100 -8.887600 3267.200000 +157.232000 -8.887600 3265.200000 +157.231900 -8.887500 3262.800000 +157.231800 -8.887400 3261.600000 +157.231600 -8.887300 3256.400000 +157.231500 -8.887200 3252.800000 +157.231600 -8.887200 3253.600000 +157.231800 -8.887300 3256.400000 +157.231800 -8.887300 3258.800000 +157.231900 -8.887300 3260.000000 +157.232000 -8.887500 3265.200000 +157.232100 -8.887600 3266.000000 +157.232100 -8.887500 3264.800000 +157.232000 -8.887500 3264.000000 +157.232000 -8.887400 3263.200000 +157.231900 -8.887300 3260.400000 +157.231900 -8.887200 3258.800000 +157.232000 -8.887400 3262.400000 +157.232100 -8.887500 3265.200000 +157.232100 -8.887500 3266.000000 +157.232100 -8.887400 3267.200000 +157.232100 -8.887300 3264.000000 +157.232100 -8.887200 3262.800000 +157.232100 -8.887200 3263.600000 +157.232300 -8.887300 3266.400000 +157.232300 -8.887400 3267.600000 +157.232300 -8.887400 3267.600000 +157.232200 -8.887300 3264.000000 +157.232100 -8.887400 3262.800000 +157.232100 -8.887600 3266.400000 +157.232000 -8.887800 3266.400000 +157.231900 -8.887800 3264.000000 +157.231900 -8.887700 3262.400000 +157.231800 -8.887500 3260.800000 +157.231700 -8.887400 3257.600000 +157.231700 -8.887300 3256.800000 +157.231700 -8.887500 3258.400000 +157.231800 -8.887500 3258.800000 +157.231800 -8.887400 3259.200000 +157.231700 -8.887400 3257.200000 +157.231800 -8.887500 3262.400000 +157.231800 -8.887500 3260.800000 +157.231800 -8.887500 3260.400000 +157.231700 -8.887500 3258.800000 +157.231600 -8.887400 3256.000000 +157.231600 -8.887200 3254.000000 +157.231700 -8.887300 3256.800000 +157.231700 -8.887500 3258.800000 +157.231800 -8.887500 3259.200000 +157.231800 -8.887400 3258.400000 +157.231700 -8.887400 3255.600000 +157.231600 -8.887400 3256.000000 +157.231600 -8.887400 3256.400000 +157.231600 -8.887400 3255.600000 +157.231600 -8.887300 3253.600000 +157.231600 -8.887200 3254.000000 +157.231600 -8.887300 3254.400000 +157.231700 -8.887400 3256.400000 +157.231700 -8.887400 3256.800000 +157.231700 -8.887300 3256.800000 +157.231700 -8.887200 3256.800000 +157.231700 -8.887200 3255.200000 +157.231700 -8.887200 3256.400000 +157.231700 -8.887400 3256.800000 +157.231700 -8.887600 3259.200000 +157.231600 -8.888000 3260.000000 +157.231300 -8.888700 3259.600000 +157.230600 -8.888800 3247.600000 +157.229800 -8.888200 3228.400000 +157.228700 -8.887300 3203.200000 +157.227400 -8.886300 3168.800000 +157.226100 -8.885200 3138.000000 +157.224700 -8.884200 3099.200000 +157.223400 -8.883100 3067.600000 +157.222200 -8.882000 3028.800000 +157.221300 -8.881000 2996.000000 +157.220500 -8.880100 2970.000000 +157.219600 -8.879200 2940.800000 +157.218800 -8.878300 2914.800000 +157.218200 -8.877400 2886.800000 +157.217500 -8.876600 2860.800000 +157.216900 -8.875800 2839.200000 +157.216400 -8.875000 2813.200000 +157.215800 -8.874300 2901.600000 +157.215200 -8.873500 2764.800000 +157.214700 -8.872800 2743.200000 +157.214100 -8.872000 2716.000000 +157.213500 -8.871300 2691.600000 +157.213000 -8.870500 2666.400000 +157.212400 -8.869800 2639.600000 +157.211900 -8.869000 2615.600000 +157.211300 -8.868200 2584.400000 +157.210800 -8.867600 2561.200000 +157.210300 -8.867000 2536.400000 +157.209800 -8.866400 2515.200000 +157.209400 -8.865900 2494.800000 +157.208900 -8.865400 2474.400000 +157.208500 -8.864900 2454.400000 +157.208100 -8.864400 2433.600000 +157.207600 -8.863900 2416.400000 +157.207200 -8.863400 2396.000000 +157.206700 -8.862900 2373.600000 +157.206400 -8.862600 2369.600000 +157.206100 -8.862400 2349.600000 +157.205900 -8.862300 2342.800000 +157.205800 -8.862300 2338.000000 +157.205700 -8.862400 2336.000000 +157.205600 -8.862500 2335.600000 +157.205600 -8.862600 2336.800000 +157.205600 -8.862700 2336.400000 +157.205400 -8.862600 2367.600000 +157.205300 -8.862000 2321.200000 +157.205200 -8.861700 2315.600000 +157.205000 -8.861700 2312.000000 +157.204900 -8.861700 2306.400000 +157.204800 -8.861800 2309.200000 +157.204700 -8.861700 2303.200000 +157.204600 -8.861600 2319.200000 +157.204500 -8.861700 2313.600000 +157.204400 -8.861700 2307.200000 +157.204500 -8.861400 2306.400000 +157.204500 -8.861200 2304.800000 +157.204600 -8.861200 2337.200000 +157.204700 -8.861300 2335.200000 +157.204700 -8.861400 2328.800000 +157.204700 -8.861400 2300.800000 +157.204700 -8.861300 2312.800000 +157.204600 -8.860800 2289.200000 +157.204300 -8.860500 2276.800000 +157.203900 -8.860200 2260.000000 +157.203600 -8.860100 2251.600000 +157.203200 -8.860000 2239.200000 +157.202500 -8.859700 2216.000000 +157.202000 -8.859600 2201.200000 +157.201700 -8.859500 2187.200000 +157.201200 -8.859400 2174.000000 +157.200800 -8.859300 2159.200000 +157.200400 -8.859100 2146.000000 +157.200000 -8.858900 2132.400000 +157.199500 -8.858700 2118.800000 +157.199100 -8.858600 2103.200000 +157.198600 -8.858300 2088.000000 +157.198200 -8.858200 2074.800000 +157.197900 -8.858000 2062.800000 +157.197500 -8.857800 2048.400000 +157.197000 -8.857600 2036.000000 +157.196600 -8.857400 2020.400000 +157.196300 -8.857200 2009.200000 +157.195900 -8.857000 1991.600000 +157.195400 -8.856800 1978.800000 +157.195000 -8.856600 1965.200000 +157.194600 -8.856400 1958.400000 +157.194200 -8.856200 1933.200000 +157.193800 -8.856000 1922.000000 +157.193400 -8.855800 1905.200000 +157.193000 -8.855600 1889.600000 +157.192500 -8.855400 1874.400000 +157.192100 -8.855100 1864.800000 +157.191800 -8.854900 1846.400000 +157.191300 -8.854700 1829.600000 +157.190900 -8.854400 1815.600000 +157.190500 -8.854200 1798.800000 +157.190100 -8.854000 1785.600000 +157.189700 -8.853700 1767.200000 +157.189200 -8.853600 1752.000000 +157.188800 -8.853400 1738.800000 +157.188300 -8.853200 1725.200000 +157.187900 -8.853000 1696.000000 +157.187400 -8.852900 1678.800000 +157.187000 -8.852700 1663.200000 +157.186500 -8.852600 1655.200000 +157.186200 -8.852400 1658.800000 +157.186100 -8.852400 1627.200000 +157.186000 -8.852300 1623.200000 +157.185900 -8.852300 1612.800000 +157.185600 -8.852100 1618.000000 +157.185200 -8.851900 1580.400000 +157.184700 -8.851600 1564.800000 +157.184400 -8.851500 1546.800000 +157.184000 -8.851300 1541.600000 +157.183400 -8.851000 1511.600000 +157.183000 -8.850800 1489.600000 +157.182600 -8.850600 1491.600000 +157.182100 -8.850400 1462.400000 +157.181700 -8.850200 1444.000000 +157.181300 -8.850100 1414.400000 +157.180800 -8.849900 1404.000000 +157.180400 -8.849700 1384.800000 +157.180000 -8.849500 1352.800000 +157.179500 -8.849300 1335.600000 +157.179000 -8.848900 1310.000000 +157.178600 -8.848600 1287.600000 +157.178100 -8.848300 1280.000000 +157.177700 -8.848100 1239.600000 +157.177300 -8.847800 1216.400000 +157.176900 -8.847600 1198.400000 +157.176500 -8.847400 1175.600000 +157.176100 -8.847100 1154.400000 +157.175700 -8.846800 1120.400000 +157.175200 -8.846500 1093.600000 +157.174700 -8.846300 1072.400000 +157.174300 -8.846100 1061.200000 +157.173900 -8.845900 1040.000000 +157.173500 -8.845700 1010.800000 +157.173100 -8.845500 976.800000 +157.172700 -8.845300 940.800000 +157.172200 -8.845000 921.600000 +157.171700 -8.844800 900.000000 +157.171200 -8.844500 882.000000 +157.170800 -8.844300 850.800000 +157.170400 -8.844100 831.200000 +157.170000 -8.843900 812.800000 +157.169600 -8.843700 804.000000 +157.169200 -8.843500 774.400000 +157.168700 -8.843300 760.000000 +157.168300 -8.843100 742.000000 +157.167900 -8.842900 722.400000 +157.167500 -8.842700 713.600000 +157.166900 -8.842500 696.400000 +157.166400 -8.842200 664.000000 +157.166000 -8.842000 648.800000 +157.165600 -8.841800 640.800000 +157.165200 -8.841600 634.400000 +157.164700 -8.841400 630.400000 +157.164300 -8.841200 635.600000 +157.163800 -8.840900 641.600000 +157.163400 -8.840700 636.800000 +157.163000 -8.840500 643.200000 +157.162500 -8.840300 649.200000 +157.162100 -8.840200 645.200000 +157.161600 -8.840000 643.600000 +157.161200 -8.839800 648.800000 +157.160700 -8.839600 656.800000 +157.160400 -8.839400 657.600000 +157.160000 -8.839200 642.400000 +157.159500 -8.839000 641.200000 +157.159100 -8.838700 649.600000 +157.158600 -8.838500 663.200000 +157.158200 -8.838300 674.000000 +157.157800 -8.838100 696.000000 +157.157300 -8.837800 698.400000 +157.156800 -8.837600 688.800000 +157.156300 -8.837400 705.200000 +157.155900 -8.837200 732.000000 +157.155400 -8.837000 727.200000 +157.154900 -8.836700 759.200000 +157.154500 -8.836500 736.800000 +157.154000 -8.836300 757.600000 +157.153700 -8.836200 789.200000 +157.153500 -8.836100 794.400000 +157.153200 -8.836000 822.800000 +157.152900 -8.835900 827.600000 +157.152500 -8.835700 843.200000 +157.152100 -8.835500 848.000000 +157.151800 -8.835400 878.800000 +157.151400 -8.835200 882.800000 +157.151000 -8.835000 890.800000 +157.150700 -8.834900 912.000000 +157.150300 -8.834800 926.000000 +157.149900 -8.834600 949.200000 +157.149500 -8.834400 958.800000 +157.149000 -8.834200 1000.800000 +157.148600 -8.834000 1008.800000 +157.148100 -8.833700 1030.800000 +157.147700 -8.833500 1059.600000 +157.147200 -8.833200 1055.200000 +157.146800 -8.833000 1084.400000 +157.146400 -8.832800 1098.000000 +157.145900 -8.832500 1130.800000 +157.145500 -8.832300 1134.400000 +157.145100 -8.832000 1140.000000 +157.144700 -8.831800 1158.400000 +157.144200 -8.831500 1215.600000 +157.143800 -8.831300 1235.600000 +157.143400 -8.831100 1241.200000 +157.143000 -8.830900 1292.400000 +157.142600 -8.830700 1290.800000 +157.142200 -8.830400 1325.600000 +157.141800 -8.830200 1363.200000 +157.141300 -8.830000 1377.200000 +157.140900 -8.829700 1404.800000 +157.140500 -8.829500 1420.000000 +157.140100 -8.829300 1428.800000 +157.139600 -8.829100 1447.600000 +157.139200 -8.828900 1466.000000 +157.138800 -8.828600 1477.200000 +157.138400 -8.828400 1495.200000 +157.138000 -8.828200 1523.600000 +157.137600 -8.828000 1547.600000 +157.137100 -8.827800 1573.600000 +157.136700 -8.827600 1571.200000 +157.136300 -8.827300 1592.400000 +157.135900 -8.827100 1600.400000 +157.135500 -8.826900 1644.400000 +157.135200 -8.826700 1628.400000 +157.134800 -8.826600 1655.200000 +157.134400 -8.826400 1684.800000 +157.134000 -8.826200 1716.000000 +157.133600 -8.826000 1702.400000 +157.133300 -8.825800 1715.600000 +157.132900 -8.825600 1733.200000 +157.132500 -8.825400 1742.800000 +157.132100 -8.825200 1760.800000 +157.131800 -8.825000 1801.600000 +157.131300 -8.824800 1794.400000 +157.130800 -8.824600 1805.600000 +157.130400 -8.824400 1843.200000 +157.129900 -8.824200 1876.000000 +157.129500 -8.824100 1908.800000 +157.129100 -8.823900 1907.600000 +157.128600 -8.823700 1926.000000 +157.128200 -8.823500 1930.000000 +157.127900 -8.823400 1968.000000 +157.127400 -8.823200 1993.600000 +157.127000 -8.823000 2022.000000 +157.126600 -8.822800 2021.200000 +157.126100 -8.822700 2039.200000 +157.125700 -8.822500 2061.600000 +157.125200 -8.822300 2052.800000 +157.124800 -8.822100 2070.800000 +157.124400 -8.822000 2095.600000 +157.124000 -8.821800 2096.800000 +157.123600 -8.821700 2102.800000 +157.123200 -8.821500 2115.200000 +157.122800 -8.821300 2141.600000 +157.122500 -8.821200 2142.400000 +157.122000 -8.821000 2160.400000 +157.121600 -8.820800 2194.000000 +157.121200 -8.820600 2179.200000 +157.120800 -8.820400 2205.200000 +157.120500 -8.820300 2206.000000 +157.120100 -8.820100 2224.400000 +157.119700 -8.820000 2221.600000 +157.119400 -8.819800 2230.800000 +157.119000 -8.819600 2250.400000 +157.118700 -8.819500 2257.600000 +157.118200 -8.819200 2278.400000 +157.117700 -8.819000 2474.800000 +157.117400 -8.818900 2302.000000 +157.117000 -8.818700 2304.000000 +157.116700 -8.818600 2322.000000 +157.116300 -8.818400 2306.800000 +157.116000 -8.818300 2369.200000 +157.115700 -8.818100 2325.200000 +157.115600 -8.818200 2329.200000 +157.115600 -8.818200 2324.000000 +157.115600 -8.818400 2322.400000 +157.115700 -8.818500 2332.400000 +157.115800 -8.818600 2328.000000 +157.115900 -8.818700 2308.000000 +157.115900 -8.818800 2332.800000 +157.116000 -8.819000 2348.000000 +157.116100 -8.819100 2309.600000 +157.116200 -8.819200 2303.600000 +157.116300 -8.819300 2301.600000 +157.116400 -8.819500 2297.200000 +157.116400 -8.819600 2309.200000 +157.116500 -8.819700 2289.600000 +157.116600 -8.819900 2281.200000 +157.116600 -8.819900 2284.800000 +157.116400 -8.819800 2281.600000 +157.116300 -8.819400 2276.400000 +157.116700 -8.818900 2275.600000 +157.117700 -8.818800 2254.400000 +157.119000 -8.818900 2228.400000 +157.120400 -8.819000 2195.600000 +157.121900 -8.819100 2165.200000 +157.123400 -8.819100 2129.600000 +157.124900 -8.819200 2094.800000 +157.126300 -8.819200 2048.400000 +157.127800 -8.819200 1985.200000 +157.129300 -8.819300 1946.400000 +157.130700 -8.819300 1910.000000 +157.132200 -8.819400 1863.600000 +157.133700 -8.819400 1816.400000 +157.135200 -8.819400 1776.000000 +157.136600 -8.819500 1736.800000 +157.138100 -8.819500 1701.200000 +157.139500 -8.819600 1664.000000 +157.141000 -8.819600 1649.600000 +157.142400 -8.819700 1609.200000 +157.143900 -8.819700 1582.800000 +157.145300 -8.819700 1563.600000 +157.146800 -8.819800 1522.800000 +157.148200 -8.819800 1511.600000 +157.149700 -8.819800 1486.800000 +157.151200 -8.819900 1479.600000 +157.152600 -8.819900 1474.000000 +157.154000 -8.819900 1482.000000 +157.155500 -8.820000 1458.400000 +157.157000 -8.820100 1474.400000 +157.158400 -8.820100 1480.000000 +157.159900 -8.820200 1501.600000 +157.161300 -8.820300 1533.600000 +157.162700 -8.820300 1589.200000 +157.164000 -8.820400 1604.000000 +157.164700 -8.820500 1608.800000 +157.165000 -8.820700 1582.400000 +157.165100 -8.820900 1567.200000 +157.165100 -8.821100 1566.400000 +157.165100 -8.821100 1574.400000 +157.164800 -8.821200 1562.000000 +157.164500 -8.821500 1552.400000 +157.164300 -8.821700 1530.800000 +157.164100 -8.821900 1509.600000 +157.164000 -8.821900 1514.000000 +157.163900 -8.821900 1528.800000 +157.163800 -8.821900 1530.400000 +157.163800 -8.821800 1524.000000 +157.163800 -8.821800 1538.000000 +157.163800 -8.821800 1530.800000 +157.163700 -8.821800 1550.400000 +157.163700 -8.821800 1538.000000 +157.163700 -8.821900 1580.000000 +157.163400 -8.821600 1544.000000 +157.162700 -8.821400 1510.000000 +157.162000 -8.821800 1483.200000 +157.161800 -8.822700 1440.000000 +157.161700 -8.823600 1413.600000 +157.161400 -8.824500 1370.800000 +157.161200 -8.825500 1312.400000 +157.160900 -8.826700 1248.400000 +157.160600 -8.828000 1201.200000 +157.160300 -8.829200 1129.600000 +157.160000 -8.830600 1050.400000 +157.159600 -8.831800 990.400000 +157.159200 -8.833100 935.600000 +157.158800 -8.834400 881.200000 +157.158400 -8.835600 801.600000 +157.158100 -8.836900 743.200000 +157.157800 -8.837900 658.000000 +157.157500 -8.838700 630.800000 +157.157300 -8.839400 613.600000 +157.157100 -8.840000 616.800000 +157.156900 -8.840600 636.000000 +157.156900 -8.840900 628.400000 +157.157200 -8.841100 598.000000 +157.157600 -8.841100 584.000000 +157.157700 -8.841100 587.200000 +157.157800 -8.841100 575.200000 +157.157900 -8.841000 570.000000 +157.158100 -8.841000 562.400000 +157.158200 -8.841000 554.400000 +157.158300 -8.840900 555.600000 +157.158300 -8.840900 552.400000 +157.158500 -8.840900 551.600000 +157.158500 -8.840800 552.000000 +157.158600 -8.840800 561.600000 +157.159300 -8.840800 539.600000 +157.159900 -8.840900 537.200000 +157.160400 -8.841100 552.800000 +157.160900 -8.841200 564.400000 +157.161200 -8.841300 565.600000 +157.161700 -8.841400 570.400000 +157.162200 -8.841500 561.600000 +157.162600 -8.841600 567.600000 +157.162900 -8.841600 583.600000 +157.163400 -8.841700 585.600000 +157.163600 -8.841700 590.800000 +157.163500 -8.841600 591.600000 +157.163200 -8.841500 594.000000 +157.163000 -8.841400 592.400000 +157.162900 -8.841300 594.800000 +157.162700 -8.841200 595.600000 +157.162400 -8.841100 598.800000 +157.162100 -8.841000 588.800000 +157.161900 -8.840800 595.200000 +157.161800 -8.840700 599.200000 +157.161700 -8.840600 613.600000 +157.161600 -8.840500 624.400000 +157.161600 -8.840400 608.800000 +157.161700 -8.840400 618.000000 +157.161700 -8.840300 627.600000 +157.161800 -8.840300 618.000000 +157.162100 -8.840400 616.400000 +157.162300 -8.840400 627.200000 +157.162300 -8.840400 636.400000 +157.162300 -8.840300 649.600000 +157.162400 -8.840300 640.000000 +157.162700 -8.840300 644.400000 +157.162900 -8.840300 635.600000 +157.163000 -8.840300 647.600000 +157.163100 -8.840300 656.000000 +157.163100 -8.840200 668.400000 +157.163100 -8.840200 654.800000 +157.163100 -8.840100 670.400000 +157.163200 -8.840000 673.200000 +157.163300 -8.840000 666.000000 +157.163500 -8.840000 678.800000 +157.163600 -8.840000 672.800000 +157.163700 -8.840000 669.200000 +157.164000 -8.840200 667.600000 +157.164400 -8.840200 674.800000 +157.164900 -8.840300 661.600000 +157.165500 -8.840400 680.000000 +157.166100 -8.840500 706.800000 +157.166700 -8.840500 731.600000 +157.167400 -8.840600 767.600000 +157.168000 -8.840700 808.400000 +157.168500 -8.840800 841.200000 +157.168800 -8.840800 840.800000 +157.169100 -8.841000 837.200000 +157.169900 -8.841200 886.400000 +157.170400 -8.840600 923.600000 +157.170400 -8.839600 934.800000 +157.170300 -8.838600 962.400000 +157.170300 -8.837600 957.200000 +157.170300 -8.836800 968.400000 +157.170300 -8.835800 1012.800000 +157.170200 -8.834800 1064.400000 +157.170200 -8.833800 1123.200000 +157.170200 -8.832800 1238.800000 +157.170300 -8.831700 1226.800000 +157.171000 -8.831000 1235.200000 +157.172100 -8.831100 1224.000000 +157.173700 -8.832000 1231.200000 +157.175700 -8.833000 1267.600000 +157.177800 -8.834200 1394.400000 +157.180000 -8.835300 1432.800000 +157.181900 -8.836300 1514.800000 +157.183100 -8.837100 1544.400000 +157.184000 -8.837800 1566.800000 +157.184800 -8.838300 1609.600000 +157.185600 -8.838700 1591.600000 +157.186300 -8.839100 1623.200000 +157.186800 -8.839500 1662.400000 +157.187300 -8.839700 1694.000000 +157.187900 -8.839800 1692.000000 +157.188300 -8.840000 1712.000000 +157.188800 -8.840200 1750.000000 +157.189200 -8.840400 1709.600000 +157.189500 -8.840500 1737.600000 +157.189900 -8.840700 1776.800000 +157.190200 -8.840700 1839.200000 +157.190700 -8.840800 1819.200000 +157.191000 -8.840900 1813.200000 +157.191500 -8.841000 1882.400000 +157.191900 -8.840900 1936.000000 +157.192200 -8.840800 1938.000000 +157.192300 -8.840700 1869.600000 +157.192200 -8.840600 1836.000000 +157.192000 -8.840500 1814.000000 +157.191800 -8.840500 1786.800000 +157.191700 -8.840500 1788.400000 +157.191600 -8.840500 1815.200000 +157.191600 -8.840600 1798.800000 +157.191600 -8.840700 1770.800000 +157.191600 -8.840800 1785.600000 +157.191600 -8.840900 1798.000000 +157.191600 -8.841000 1794.400000 +157.191500 -8.840900 1831.600000 +157.191400 -8.840900 1842.400000 +157.191300 -8.840600 1826.000000 +157.191300 -8.840300 1892.000000 +157.191200 -8.840200 1842.400000 +157.191000 -8.840100 1832.800000 +157.190900 -8.840100 1836.800000 +157.190700 -8.840200 1814.800000 +157.190600 -8.840200 1828.000000 +157.190400 -8.840200 1872.800000 +157.190300 -8.840100 1858.000000 +157.190100 -8.840100 1782.000000 +157.190000 -8.840100 1822.400000 +157.189900 -8.840000 1783.200000 +157.189800 -8.839900 1794.000000 +157.189600 -8.840000 1792.400000 +157.189500 -8.840000 1768.800000 +157.189300 -8.840100 1765.600000 +157.189200 -8.840200 1762.800000 +157.188900 -8.840100 1716.800000 +157.188200 -8.840000 1615.600000 +157.187700 -8.840100 1604.800000 +157.187200 -8.840100 1594.000000 +157.186700 -8.840100 1604.400000 +157.186300 -8.840200 1582.400000 +157.185800 -8.840300 1496.400000 +157.185300 -8.840300 1508.400000 +157.184900 -8.840400 1504.800000 +157.184700 -8.840500 1474.800000 +157.184600 -8.840500 1511.200000 +157.184600 -8.840600 1455.200000 +157.184600 -8.840600 1469.600000 +157.184400 -8.840600 1445.600000 +157.184300 -8.840600 1459.200000 +157.184400 -8.840600 1459.600000 +157.184300 -8.840600 1457.200000 +157.184300 -8.840600 1434.800000 +157.184400 -8.840600 1460.000000 +157.184500 -8.840600 1512.000000 +157.184600 -8.840600 1434.800000 +157.184700 -8.840600 1470.800000 +157.184700 -8.840600 1456.400000 +157.184700 -8.840600 1460.400000 +157.184800 -8.840600 1462.800000 +157.184900 -8.840500 1486.000000 +157.185200 -8.840600 1478.000000 +157.185400 -8.840600 1471.600000 +157.185700 -8.840700 1485.600000 +157.185900 -8.840700 1519.200000 +157.186000 -8.840700 1505.200000 +157.186100 -8.840700 1502.800000 +157.186000 -8.840700 1500.400000 +157.186000 -8.840600 1509.600000 +157.185900 -8.840600 1512.000000 +157.185900 -8.840600 1519.200000 +157.185800 -8.840600 1508.400000 +157.185700 -8.840600 1492.400000 +157.185700 -8.840500 1496.400000 +157.185700 -8.840500 1562.800000 +157.185500 -8.840500 1526.400000 +157.185400 -8.840500 1488.000000 +157.185300 -8.840400 1498.400000 +157.185300 -8.840400 1498.800000 +157.185200 -8.840400 1491.200000 +157.185100 -8.840400 1457.600000 +157.185000 -8.840300 1451.200000 +157.185000 -8.840300 1486.800000 +157.184900 -8.840300 1466.400000 +157.184800 -8.840300 1471.600000 +157.184800 -8.840200 1513.200000 +157.184700 -8.840200 1484.800000 +157.184600 -8.840200 1537.200000 +157.184500 -8.840200 1569.600000 +157.184500 -8.840100 1504.400000 +157.184400 -8.840100 1478.000000 +157.184300 -8.840100 1504.800000 +157.184200 -8.840100 1491.200000 +157.184100 -8.840100 1452.800000 +157.184000 -8.840100 1472.800000 +157.184000 -8.840100 1454.400000 +157.184000 -8.840000 1466.800000 +157.183800 -8.840000 1448.400000 +157.183600 -8.840000 1456.400000 +157.183400 -8.840000 1491.600000 +157.183300 -8.840000 1467.200000 +157.183200 -8.839900 1443.200000 +157.183100 -8.839900 1432.400000 +157.182900 -8.839900 1408.800000 +157.182800 -8.839800 1452.800000 +157.182700 -8.839800 1429.600000 +157.182500 -8.839800 1420.400000 +157.182300 -8.839700 1422.800000 +157.182200 -8.839700 1422.400000 +157.182200 -8.839700 1410.800000 +157.182000 -8.839700 1410.400000 +157.181900 -8.839600 1394.800000 +157.181800 -8.839600 1458.800000 +157.181700 -8.839600 1401.600000 +157.181500 -8.839600 1396.800000 +157.181300 -8.839600 1382.400000 +157.181200 -8.839600 1386.000000 +157.181000 -8.839600 1371.600000 +157.180800 -8.839600 1356.800000 +157.180700 -8.839600 1372.400000 +157.180600 -8.839700 1358.000000 +157.180500 -8.839700 1352.000000 +157.180300 -8.839700 1342.400000 +157.180200 -8.839700 1333.200000 +157.180000 -8.839700 1339.200000 +157.179900 -8.839700 1325.200000 +157.179800 -8.839700 1325.200000 +157.179800 -8.839700 1318.000000 +157.179700 -8.839700 1325.600000 +157.179700 -8.839600 1323.600000 +157.179600 -8.839600 1328.000000 +157.179500 -8.839600 1315.200000 +157.179100 -8.839500 1339.600000 +157.178900 -8.839200 1338.800000 +157.178700 -8.838400 1342.400000 +157.178600 -8.836900 1380.400000 +157.178400 -8.834800 1424.400000 +157.178100 -8.832400 1416.000000 +157.177800 -8.829800 1465.200000 +157.177600 -8.827100 1577.200000 +157.177200 -8.824300 1702.800000 +157.176900 -8.821200 1837.200000 +157.176600 -8.818000 1995.600000 +157.176300 -8.814800 2068.800000 +157.175900 -8.811600 2163.200000 +157.175500 -8.808400 2217.600000 +157.175200 -8.805200 2319.200000 +157.174800 -8.802000 2339.200000 +157.174500 -8.798900 2319.200000 +157.174100 -8.795700 2321.600000 +157.173700 -8.792400 2370.000000 +157.173300 -8.789200 2426.000000 +157.173000 -8.786000 2479.200000 +157.172600 -8.782800 2541.200000 +157.172300 -8.779600 2605.600000 +157.172000 -8.776400 2672.400000 +157.171600 -8.773200 2727.600000 +157.171300 -8.770000 2774.400000 +157.171000 -8.766700 2810.000000 +157.170700 -8.763500 2871.200000 +157.170400 -8.760300 2929.200000 +157.170000 -8.757100 2959.200000 +157.169700 -8.753800 2994.800000 +157.169400 -8.750600 3017.200000 +157.169000 -8.747400 3025.600000 +157.168700 -8.744200 3039.600000 +157.168400 -8.741000 3053.200000 +157.168000 -8.737800 3059.200000 +157.167700 -8.734600 3061.200000 +157.167400 -8.731400 3060.800000 +157.167000 -8.728300 3060.000000 +157.166700 -8.725100 3053.600000 +157.166400 -8.721900 3049.600000 +157.165900 -8.718800 3006.400000 +157.165400 -8.715600 2893.600000 +157.164900 -8.712500 2798.800000 +157.164400 -8.709300 2682.800000 +157.164000 -8.706100 2600.000000 +157.163500 -8.703000 2578.800000 +157.163100 -8.699800 2592.400000 +157.162600 -8.696700 2479.200000 +157.162200 -8.693600 2427.600000 +157.161700 -8.690400 2290.800000 +157.161200 -8.687300 2249.200000 +157.160800 -8.684200 2232.000000 +157.160300 -8.681000 2267.200000 +157.159800 -8.678100 2282.800000 +157.159400 -8.675800 2416.000000 +157.159000 -8.674000 2309.200000 +157.158600 -8.672700 2288.000000 +157.158300 -8.671600 2292.000000 +157.157900 -8.670600 2274.400000 +157.157600 -8.669700 2264.800000 +157.157300 -8.668800 2248.800000 +157.157100 -8.668100 2238.400000 +157.156900 -8.667400 2227.200000 +157.156600 -8.666700 2220.000000 +157.156500 -8.666000 2213.200000 +157.156400 -8.665500 2210.000000 +157.156400 -8.665000 2208.800000 +157.156500 -8.664400 2206.000000 +157.156500 -8.663800 2212.000000 +157.156600 -8.663300 2210.800000 +157.156500 -8.663200 2209.600000 +157.156400 -8.663000 2211.600000 +157.156400 -8.662800 2211.600000 +157.156400 -8.662700 2210.800000 +157.156400 -8.662600 2210.000000 +157.156400 -8.662400 2211.600000 +157.156200 -8.662400 2213.600000 +157.156100 -8.662300 2217.200000 +157.156000 -8.662200 2219.600000 +157.155800 -8.662100 2222.000000 +157.155600 -8.662100 2225.600000 +157.155400 -8.662000 2228.800000 +157.155500 -8.662000 2228.800000 +157.156100 -8.662200 2219.200000 +157.156400 -8.662400 2211.600000 +157.156600 -8.662400 2209.200000 +157.156700 -8.662400 2207.200000 +157.156700 -8.662400 2207.200000 +157.156800 -8.662300 2206.000000 +157.157000 -8.662400 2203.200000 +157.157100 -8.662400 2202.800000 +157.157000 -8.662400 2204.400000 +157.157000 -8.662400 2202.400000 +157.157000 -8.662400 2204.800000 +157.157000 -8.662400 2203.600000 +157.157000 -8.662400 2202.400000 +157.157000 -8.662400 2203.200000 +157.157100 -8.662400 2202.800000 +157.157200 -8.662400 2202.000000 +157.157100 -8.662400 2205.600000 +157.157100 -8.662300 2202.000000 +157.157100 -8.662300 2202.800000 +157.157000 -8.662300 2202.800000 +157.157000 -8.662400 2202.800000 +157.157000 -8.662500 2202.400000 +157.157000 -8.662400 2204.400000 +157.157000 -8.662500 2202.800000 +157.157000 -8.662400 2203.200000 +157.157000 -8.662400 2203.600000 +157.157000 -8.662400 2203.200000 +157.157100 -8.662400 2202.800000 +157.157100 -8.662400 2202.000000 +157.157100 -8.662400 2201.200000 +157.157000 -8.662300 2202.800000 +157.157000 -8.662400 2203.200000 +157.157100 -8.662400 2202.000000 +157.157100 -8.662400 2281.600000 +157.157100 -8.662400 2265.200000 +157.157100 -8.662400 2265.600000 +157.157100 -8.662400 2281.600000 +157.157200 -8.662500 2283.200000 +157.157300 -8.662600 2284.800000 +157.157700 -8.662600 2236.400000 +157.158100 -8.662700 2190.000000 +157.158400 -8.662900 2183.600000 +157.158800 -8.662900 2186.800000 +157.159200 -8.662900 2169.600000 +157.159500 -8.662900 2183.600000 +157.159600 -8.662800 2183.200000 +157.159600 -8.662800 2164.400000 +157.159700 -8.662700 2163.200000 +157.159700 -8.662700 2162.400000 +157.159700 -8.662700 2161.600000 +157.159600 -8.662700 2163.600000 +157.159600 -8.662600 2164.400000 +157.159600 -8.662600 2174.000000 +157.159600 -8.662500 2163.600000 +157.159600 -8.662500 2163.600000 +157.159700 -8.662500 2163.600000 +157.159600 -8.662400 2164.000000 +157.159700 -8.662400 2163.200000 +157.159800 -8.662400 2162.800000 +157.159700 -8.662300 2162.800000 +157.159700 -8.662300 2163.600000 +157.159700 -8.662300 2164.000000 +157.159700 -8.662200 2164.400000 +157.159700 -8.662200 2182.400000 +157.159700 -8.662100 2164.400000 +157.159800 -8.662100 2163.600000 +157.159900 -8.662100 2163.200000 +157.160100 -8.662100 2161.200000 +157.160100 -8.662000 2160.000000 +157.160100 -8.662000 2160.000000 +157.160200 -8.662000 2159.600000 +157.160200 -8.662000 2159.600000 +157.160100 -8.662000 2160.400000 +157.160000 -8.661900 2161.200000 +157.160100 -8.662000 2164.400000 +157.160200 -8.662000 2159.600000 +157.160200 -8.662000 2159.600000 +157.160100 -8.662000 2160.000000 +157.160000 -8.661900 2162.000000 +157.159900 -8.661900 2182.000000 +157.159900 -8.662000 2172.000000 +157.159900 -8.662000 2182.400000 +157.159700 -8.662000 2164.400000 +157.159500 -8.662000 2167.200000 +157.159200 -8.661900 2184.000000 +157.159000 -8.661900 2185.200000 +157.158800 -8.661800 2178.000000 +157.158600 -8.661700 2182.800000 +157.158400 -8.661700 2189.600000 +157.158700 -8.661800 2182.800000 +157.159000 -8.662000 2178.000000 +157.159100 -8.662100 2173.200000 +157.159100 -8.662100 2184.400000 +157.159000 -8.662100 2175.600000 +157.158900 -8.662100 2176.000000 +157.158800 -8.662100 2179.600000 +157.159000 -8.662200 2174.000000 +157.159100 -8.662300 2172.000000 +157.159000 -8.662300 2174.400000 +157.158900 -8.662300 2174.400000 +157.159000 -8.662300 2185.200000 +157.159200 -8.662500 2170.800000 +157.159300 -8.662600 2167.600000 +157.159500 -8.662700 2166.000000 +157.159500 -8.662700 2164.800000 +157.159600 -8.662800 2163.200000 +157.159700 -8.662900 2164.400000 +157.159800 -8.662900 2202.800000 +157.159800 -8.663000 2176.800000 +157.159900 -8.663000 2201.200000 +157.160000 -8.663100 2158.800000 +157.160100 -8.663100 2158.000000 +157.160200 -8.663100 2157.200000 +157.160300 -8.663200 2156.000000 +157.160400 -8.663200 2155.200000 +157.160600 -8.663300 2153.600000 +157.160700 -8.663400 2152.000000 +157.160900 -8.663400 2151.200000 +157.161100 -8.663500 2150.000000 +157.161200 -8.663600 2146.800000 +157.161400 -8.663700 2144.400000 +157.161600 -8.663800 2135.600000 +157.161800 -8.663800 2139.600000 +157.161900 -8.663900 2131.600000 +157.162100 -8.664000 2127.200000 +157.162300 -8.664100 2125.600000 +157.162400 -8.664200 2122.800000 +157.162600 -8.664300 2122.000000 +157.162700 -8.664400 2124.000000 +157.162900 -8.664500 2120.000000 +157.163000 -8.664600 2120.400000 +157.163100 -8.664700 2119.200000 +157.163200 -8.664700 2119.600000 +157.163100 -8.664700 2119.600000 +157.163000 -8.664600 2120.400000 +157.162800 -8.664500 2120.400000 +157.162600 -8.664400 2122.400000 +157.162300 -8.664300 2129.600000 +157.162100 -8.664200 2135.200000 +157.161800 -8.664100 2142.400000 +157.161500 -8.663900 2141.600000 +157.161200 -8.663800 2146.400000 +157.161300 -8.663800 2149.200000 +157.161800 -8.663600 2140.000000 +157.161700 -8.662900 2137.200000 +157.161500 -8.661700 2144.800000 +157.161300 -8.660400 2164.000000 +157.161000 -8.659100 2190.800000 +157.160800 -8.657800 2202.000000 +157.160600 -8.656800 2204.000000 +157.160500 -8.655800 2206.400000 +157.160300 -8.654900 2212.800000 +157.160200 -8.654100 2202.800000 +157.160000 -8.653500 2251.600000 +157.159500 -8.653300 2260.800000 +157.159000 -8.653800 2257.200000 +157.159200 -8.654900 2228.400000 +157.159400 -8.656200 2252.000000 +157.159700 -8.657900 2212.400000 +157.160000 -8.660100 2193.200000 +157.160300 -8.662400 2158.400000 +157.160600 -8.664700 2156.400000 +157.160900 -8.667000 2176.800000 +157.161200 -8.669200 2210.800000 +157.161400 -8.671500 2242.800000 +157.161600 -8.673800 2242.000000 +157.161800 -8.676100 2252.000000 +157.162000 -8.678400 2248.800000 +157.162200 -8.680700 2248.000000 +157.162400 -8.683000 2261.200000 +157.162600 -8.685300 2228.400000 +157.162800 -8.687700 2237.200000 +157.163000 -8.690000 2255.200000 +157.163200 -8.692300 2271.200000 +157.163300 -8.694600 2427.200000 +157.163600 -8.696800 2433.600000 +157.163700 -8.698900 2508.800000 +157.163900 -8.700700 2586.400000 +157.164100 -8.702400 2574.400000 +157.164200 -8.704000 2580.400000 +157.164400 -8.705600 2590.000000 +157.164500 -8.707200 2658.800000 +157.164600 -8.708800 2680.000000 +157.164700 -8.710300 2800.000000 +157.164800 -8.711900 2828.800000 +157.164900 -8.713400 2842.400000 +157.164900 -8.715000 2888.400000 +157.165000 -8.716600 2936.400000 +157.165100 -8.718100 3006.000000 +157.165200 -8.719600 3021.600000 +157.165300 -8.721100 3035.200000 +157.165400 -8.722700 3048.000000 +157.165500 -8.724300 3052.800000 +157.165600 -8.725800 3053.600000 +157.165700 -8.727400 3057.600000 +157.165900 -8.728900 3060.000000 +157.166000 -8.730500 3060.000000 +157.166200 -8.732000 3060.800000 +157.166300 -8.733600 3061.200000 +157.166500 -8.735100 3060.800000 +157.166600 -8.736600 3060.400000 +157.166700 -8.738200 3058.800000 +157.166900 -8.739700 3056.400000 +157.167000 -8.741200 3052.400000 +157.167200 -8.742700 3041.200000 +157.167300 -8.744300 3031.600000 +157.167500 -8.745800 3026.400000 +157.167600 -8.747400 3021.200000 +157.167800 -8.748900 3018.800000 +157.167800 -8.750500 3015.200000 +157.168000 -8.752000 3008.800000 +157.168100 -8.753600 2996.400000 +157.168200 -8.755200 2983.200000 +157.168300 -8.756800 2967.200000 +157.168500 -8.758300 2948.400000 +157.168600 -8.759800 2934.400000 +157.168800 -8.761800 2908.000000 +157.169000 -8.764200 2878.000000 +157.169200 -8.766700 2827.200000 +157.169400 -8.769300 2794.000000 +157.169800 -8.772100 2759.600000 +157.170200 -8.775000 2705.200000 +157.170300 -8.777700 2653.200000 +157.170200 -8.780500 2593.200000 +157.170200 -8.783000 2532.800000 +157.170200 -8.784700 2500.000000 +157.170200 -8.786000 2469.200000 +157.170100 -8.787000 2450.800000 +157.170100 -8.787600 2435.600000 +157.170100 -8.788100 2426.000000 +157.170000 -8.788500 2416.400000 +157.170000 -8.789000 2405.200000 +157.170100 -8.789500 2395.200000 +157.170200 -8.790100 2382.800000 +157.170300 -8.790800 2371.600000 +157.170500 -8.791500 2356.800000 +157.170600 -8.792100 2345.600000 +157.170800 -8.792700 2334.400000 +157.170900 -8.793300 2323.600000 +157.171000 -8.793600 2318.000000 +157.171100 -8.793800 2316.000000 +157.171200 -8.793900 2314.000000 +157.171300 -8.794000 2312.800000 +157.171300 -8.794100 2310.800000 +157.171400 -8.794100 2312.800000 +157.171500 -8.794000 2314.400000 +157.171500 -8.794100 2314.000000 +157.171400 -8.794300 2308.400000 +157.171400 -8.794500 2304.800000 +157.171500 -8.794500 2306.400000 +157.171500 -8.794500 2305.200000 +157.171600 -8.794500 2306.800000 +157.171600 -8.794600 2305.200000 +157.171500 -8.794700 2301.600000 +157.171500 -8.794800 2300.000000 +157.171500 -8.794800 2298.400000 +157.171500 -8.794800 2300.000000 +157.171500 -8.794800 2301.600000 +157.171500 -8.794900 2297.200000 +157.171500 -8.794900 2297.200000 +157.171500 -8.794900 2296.400000 +157.171600 -8.794900 2298.400000 +157.171600 -8.794900 2298.400000 +157.171600 -8.795000 2297.600000 +157.171700 -8.795000 2296.800000 +157.171700 -8.795000 2296.400000 +157.171800 -8.795000 2297.200000 +157.171700 -8.795100 2295.600000 +157.171600 -8.795200 2292.800000 +157.171500 -8.795300 2290.000000 +157.171100 -8.795700 2280.400000 +157.170500 -8.796100 2264.800000 +157.170100 -8.796400 2252.000000 +157.169700 -8.796600 2242.800000 +157.169400 -8.796900 2235.600000 +157.169100 -8.797100 2226.800000 +157.168900 -8.797400 2222.000000 +157.168500 -8.797600 2212.400000 +157.168300 -8.797800 2206.800000 +157.168200 -8.797800 2205.200000 +157.168200 -8.797900 2204.000000 +157.168100 -8.797900 2203.200000 +157.168000 -8.797900 2202.000000 +157.167900 -8.798000 2200.800000 +157.167900 -8.798000 2198.800000 +157.167900 -8.798000 2201.200000 +157.167900 -8.798000 2199.600000 +157.167900 -8.797900 2200.400000 +157.168100 -8.797900 2201.600000 +157.168100 -8.797900 2202.800000 +157.168200 -8.797800 2204.400000 +157.168300 -8.797800 2206.400000 +157.168300 -8.797800 2205.600000 +157.168300 -8.797800 2205.600000 +157.168300 -8.797800 2206.000000 +157.168300 -8.797800 2206.000000 +157.168200 -8.797900 2204.400000 +157.168100 -8.797900 2202.400000 +157.168000 -8.798000 2199.200000 +157.167900 -8.798000 2198.400000 +157.167900 -8.798000 2198.800000 +157.167900 -8.798000 2199.200000 +157.168000 -8.797900 2200.400000 +157.168100 -8.797900 2202.400000 +157.168000 -8.797900 2200.400000 +157.167900 -8.798000 2199.200000 +157.167800 -8.798000 2198.800000 +157.167700 -8.798000 2196.800000 +157.167500 -8.798100 2193.600000 +157.167300 -8.798200 2190.800000 +157.167200 -8.798300 2188.800000 +157.167100 -8.798400 2188.400000 +157.166900 -8.798500 2182.800000 +157.166700 -8.798700 2177.200000 +157.166400 -8.798900 2171.600000 +157.166200 -8.799100 2165.200000 +157.166100 -8.799200 2161.600000 +157.165900 -8.799300 2158.800000 +157.165800 -8.799400 2155.200000 +157.165600 -8.799500 2152.400000 +157.165500 -8.799600 2148.800000 +157.165300 -8.799600 2146.000000 +157.165300 -8.799700 2144.800000 +157.165300 -8.799700 2144.000000 +157.165200 -8.799700 2142.000000 +157.165100 -8.799700 2142.400000 +157.164900 -8.799800 2138.400000 +157.164700 -8.799900 2134.800000 +157.164500 -8.800000 2131.200000 +157.164300 -8.800000 2128.800000 +157.164300 -8.800100 2127.600000 +157.164200 -8.800000 2129.200000 +157.164100 -8.800000 2128.400000 +157.164100 -8.800000 2128.800000 +157.164000 -8.800000 2128.800000 +157.163900 -8.800000 2128.800000 +157.163700 -8.800000 2127.600000 +157.163400 -8.800200 2122.400000 +157.163200 -8.800300 2118.800000 +157.163100 -8.800400 2116.000000 +157.162900 -8.800500 2112.800000 +157.162800 -8.800600 2108.000000 +157.162600 -8.800700 2106.400000 +157.162400 -8.800800 2100.000000 +157.162200 -8.800900 2095.600000 +157.162000 -8.801100 2091.600000 +157.161900 -8.801100 2088.800000 +157.161800 -8.801200 2085.600000 +157.161600 -8.801400 2082.000000 +157.161400 -8.801500 2075.600000 +157.161000 -8.801800 2068.000000 +157.160800 -8.802000 2057.600000 +157.160600 -8.802200 2050.400000 +157.160300 -8.802500 2041.600000 +157.159900 -8.802800 2029.200000 +157.159700 -8.803000 2019.200000 +157.159500 -8.803200 2012.800000 +157.159400 -8.803300 2007.600000 +157.159300 -8.803400 2004.000000 +157.158900 -8.803600 1993.200000 +157.158300 -8.804000 1981.200000 +157.157500 -8.804500 1955.200000 +157.156700 -8.805100 1934.400000 +157.155900 -8.805700 1915.200000 +157.155100 -8.806600 1885.200000 +157.154900 -8.808200 1842.000000 +157.154500 -8.810300 1780.000000 +157.153900 -8.813000 1713.200000 +157.153400 -8.815600 1627.200000 +157.152900 -8.818300 1551.600000 +157.152400 -8.821000 1460.800000 +157.151800 -8.823700 1280.800000 +157.151300 -8.826500 1235.600000 +157.150800 -8.829200 1165.200000 +157.150200 -8.831900 1058.000000 +157.149700 -8.834600 942.800000 +157.149100 -8.837200 846.000000 +157.148600 -8.839900 845.200000 +157.148000 -8.842600 893.600000 +157.147500 -8.845100 906.800000 +157.147100 -8.847100 888.800000 +157.146700 -8.848900 919.200000 +157.146400 -8.850700 996.800000 +157.146000 -8.852400 1050.800000 +157.145500 -8.854100 1108.800000 +157.145100 -8.855800 1194.000000 +157.144600 -8.857500 1237.200000 +157.144100 -8.859300 1299.600000 +157.143700 -8.861000 1370.000000 +157.143200 -8.862800 1434.000000 +157.142700 -8.864600 1516.000000 +157.142200 -8.866400 1596.800000 +157.141800 -8.868100 1679.200000 +157.141300 -8.869900 1774.000000 +157.141100 -8.871300 1801.200000 +157.141100 -8.872400 1860.000000 +157.141200 -8.873200 1822.800000 +157.141500 -8.873700 1830.400000 +157.141600 -8.874100 1846.800000 +157.141600 -8.874400 1843.200000 +157.141600 -8.874600 1848.400000 +157.142000 -8.874400 1809.600000 +157.142200 -8.874100 1817.200000 +157.142300 -8.874100 1803.200000 +157.142400 -8.873900 1790.000000 +157.142400 -8.873800 1803.200000 +157.142400 -8.873700 1796.400000 +157.142500 -8.873500 1780.800000 +157.142500 -8.873400 1763.200000 +157.142400 -8.873400 1779.200000 +157.142300 -8.873400 1789.200000 +157.142200 -8.873400 1781.600000 +157.142300 -8.873200 1772.000000 +157.142400 -8.873100 1788.800000 +157.142300 -8.873000 1773.200000 +157.142200 -8.873100 1773.200000 +157.142100 -8.873100 1779.600000 +157.141900 -8.873100 1770.000000 +157.141900 -8.872900 1763.200000 +157.142000 -8.872800 1768.400000 +157.142100 -8.872600 1742.800000 +157.142100 -8.872400 1752.000000 +157.142000 -8.872400 1738.000000 +157.141900 -8.872400 1748.800000 +157.141700 -8.872400 1756.800000 +157.141600 -8.872400 1762.400000 +157.141600 -8.872300 1759.200000 +157.141500 -8.872300 1758.800000 +157.141400 -8.872200 1748.800000 +157.141200 -8.872300 1776.400000 +157.141100 -8.872300 1941.200000 +157.140900 -8.872300 1757.200000 +157.140800 -8.872200 1782.400000 +157.141000 -8.872000 1791.600000 +157.141500 -8.871500 1747.200000 +157.142100 -8.871100 1729.200000 +157.142400 -8.870800 1693.600000 +157.142700 -8.870500 1674.400000 +157.143100 -8.870100 1661.600000 +157.143300 -8.869900 1651.200000 +157.143300 -8.869800 1631.200000 +157.143200 -8.869800 1627.200000 +157.143200 -8.869700 1634.400000 +157.143100 -8.869700 1642.800000 +157.143000 -8.869700 1633.200000 +157.142900 -8.869800 1645.600000 +157.142700 -8.869900 1645.200000 +157.142500 -8.869900 1659.200000 +157.142500 -8.869800 1684.000000 +157.142500 -8.869700 1648.800000 +157.142800 -8.869500 1670.400000 +157.142900 -8.869400 1646.400000 +157.142900 -8.869300 1616.400000 +157.142800 -8.869300 1627.200000 +157.142700 -8.869300 1617.600000 +157.142700 -8.869200 1642.400000 +157.142700 -8.869200 1638.400000 +157.142800 -8.869100 1624.400000 +157.142800 -8.868900 1602.400000 +157.142900 -8.868800 1612.800000 +157.143000 -8.868700 1604.800000 +157.143100 -8.868500 1605.600000 +157.143200 -8.868400 1589.200000 +157.143300 -8.868300 1591.600000 +157.143400 -8.868100 1577.200000 +157.143500 -8.868000 1566.000000 +157.143700 -8.867800 1548.400000 +157.143800 -8.867700 1566.400000 +157.143900 -8.867500 1552.800000 +157.144000 -8.867400 1542.400000 +157.144100 -8.867300 1537.600000 +157.144300 -8.867100 1531.600000 +157.144400 -8.867000 1513.200000 +157.144400 -8.866800 1507.600000 +157.144600 -8.866600 1492.800000 +157.144700 -8.866500 1496.000000 +157.144800 -8.866300 1498.400000 +157.144900 -8.866200 1486.000000 +157.145000 -8.865900 1487.600000 +157.145100 -8.865800 1464.800000 +157.145300 -8.865600 1464.800000 +157.145400 -8.865400 1440.800000 +157.145700 -8.865100 1431.200000 +157.145900 -8.864900 1403.200000 +157.146100 -8.864700 1419.600000 +157.146300 -8.864500 1381.200000 +157.146400 -8.864400 1397.600000 +157.146400 -8.864200 1373.600000 +157.146600 -8.864000 1382.000000 +157.146600 -8.863900 1377.600000 +157.146800 -8.863700 1351.600000 +157.146900 -8.863500 1343.200000 +157.147000 -8.863400 1338.800000 +157.147100 -8.863200 1329.200000 +157.147100 -8.863100 1321.600000 +157.147000 -8.863000 1321.600000 +157.146900 -8.863000 1317.200000 +157.146800 -8.863000 1338.000000 +157.146700 -8.863000 1331.600000 +157.146600 -8.863000 1332.800000 +157.146500 -8.863000 1330.800000 +157.146500 -8.862800 1326.000000 +157.146900 -8.862600 1322.800000 +157.147800 -8.862800 1307.600000 +157.149100 -8.863100 1314.800000 +157.150700 -8.863400 1306.000000 +157.152300 -8.863700 1296.400000 +157.154000 -8.864100 1315.200000 +157.155700 -8.864500 1303.600000 +157.157500 -8.864900 1316.800000 +157.159200 -8.865300 1348.800000 +157.160900 -8.865700 1383.200000 +157.162600 -8.866100 1399.600000 +157.164400 -8.866500 1470.800000 +157.166100 -8.866800 1486.000000 +157.167900 -8.867200 1527.600000 +157.169700 -8.867600 1566.400000 +157.171600 -8.868100 1640.400000 +157.173700 -8.868500 1666.400000 +157.175800 -8.869000 1708.400000 +157.178100 -8.869500 1790.400000 +157.180300 -8.870000 1829.600000 +157.182400 -8.870400 1908.400000 +157.184600 -8.870900 1959.600000 +157.186800 -8.871400 2031.600000 +157.188800 -8.871900 2112.000000 +157.190900 -8.872400 2170.000000 +157.193000 -8.872800 2228.000000 +157.195100 -8.873300 2307.200000 +157.197200 -8.873800 2368.000000 +157.199300 -8.874300 2419.200000 +157.201400 -8.874800 2481.200000 +157.203500 -8.875200 2512.800000 +157.205600 -8.875700 2603.200000 +157.207800 -8.876100 2648.800000 +157.209800 -8.876600 2724.800000 +157.212000 -8.877100 2803.600000 +157.214100 -8.877600 2829.600000 +157.216200 -8.878000 2862.000000 +157.218300 -8.878500 2898.000000 +157.220500 -8.878900 2966.800000 +157.222600 -8.879400 3010.800000 +157.224700 -8.879900 3044.800000 +157.226800 -8.880400 3122.800000 +157.229000 -8.880900 3138.800000 +157.231100 -8.881300 3189.200000 +157.233200 -8.881800 3246.800000 +157.235300 -8.882200 3281.600000 +157.237400 -8.882600 3330.800000 +157.239500 -8.883100 3369.200000 +157.241600 -8.883500 3414.800000 +157.243800 -8.884000 3450.000000 +157.245900 -8.884400 3490.400000 +157.248000 -8.884900 3362.800000 +157.250100 -8.885300 3307.600000 +157.252200 -8.885700 3126.400000 +157.254300 -8.886100 3311.200000 +157.256400 -8.886600 3282.400000 +157.258500 -8.887000 3142.700000 +157.260600 -8.887400 3222.400000 +157.262800 -8.887900 2943.200000 +157.264900 -8.888300 3047.200000 +157.267000 -8.888700 3380.400000 +157.269100 -8.889200 3322.400000 +157.271300 -8.889600 3481.600000 +157.273400 -8.890100 3450.800000 +157.275600 -8.890500 3486.800000 +157.277700 -8.891000 3370.800000 +157.279800 -8.891400 3091.200000 +157.281900 -8.891900 3476.000000 +157.284100 -8.892300 3432.000000 +157.286200 -8.892700 3226.000000 +157.288400 -8.893200 3336.000000 +157.290500 -8.893600 3320.400000 +157.292700 -8.894000 3294.400000 +157.294800 -8.894400 3171.200000 +157.296900 -8.894900 3332.800000 +157.299100 -8.895200 3056.800000 +157.301200 -8.895700 3298.800000 +157.303400 -8.896100 3292.400000 +157.305500 -8.896500 2995.200000 +157.307700 -8.896900 3166.400000 +157.309900 -8.897300 3314.800000 +157.312100 -8.897800 3190.800000 +157.314400 -8.898300 3471.600000 +157.316600 -8.898700 3268.400000 +157.318800 -8.899200 3227.200000 +157.321000 -8.899600 3262.800000 +157.323300 -8.900100 3007.600000 +157.325500 -8.900500 3451.600000 +157.327700 -8.900900 3136.000000 +157.330000 -8.901400 2942.000000 +157.332200 -8.901800 3026.400000 +157.334400 -8.902200 3325.600000 +157.336600 -8.902600 3394.400000 +157.338800 -8.903000 3482.400000 +157.341000 -8.903400 3261.200000 +157.343200 -8.903900 3317.200000 +157.345400 -8.904300 3422.400000 +157.347700 -8.904700 3279.600000 +157.349800 -8.905200 3050.400000 +157.352100 -8.905600 3474.400000 +157.354300 -8.906100 3422.000000 +157.356500 -8.906600 3390.800000 +157.358700 -8.907000 3336.000000 +157.360900 -8.907500 3384.000000 +157.363100 -8.908000 3290.400000 +157.365300 -8.908400 3252.400000 +157.367500 -8.908900 3390.400000 +157.369700 -8.909400 3165.200000 +157.371900 -8.909800 3401.200000 +157.374100 -8.910300 3373.200000 +157.376300 -8.910700 3218.000000 +157.378500 -8.911200 2992.600000 +157.380600 -8.911600 3459.200000 +157.382800 -8.912000 3378.400000 +157.385000 -8.912400 3392.000000 +157.387200 -8.912900 3378.000000 +157.389400 -8.913300 3384.000000 +157.391600 -8.913800 3359.200000 +157.393800 -8.914200 3461.600000 +157.396000 -8.914700 3335.600000 +157.398300 -8.915100 3366.800000 +157.400500 -8.915500 3319.600000 +157.402700 -8.916000 3330.400000 +157.404900 -8.916400 3281.600000 +157.407100 -8.916900 3284.400000 +157.409300 -8.917300 3401.100000 +157.411500 -8.917800 3316.400000 +157.413700 -8.918200 3386.000000 +157.415900 -8.918700 3492.400000 +157.418100 -8.919100 3314.800000 +157.420200 -8.919600 3387.200000 +157.422400 -8.920000 3478.000000 +157.424600 -8.920400 3459.600000 +157.426700 -8.920800 3452.400000 +157.428800 -8.921300 3418.400000 +157.431000 -8.921700 3406.000000 +157.433100 -8.922100 3298.800000 +157.435200 -8.922500 3217.200000 +157.437200 -8.922900 3191.600000 +157.439300 -8.923400 3155.600000 +157.441400 -8.923900 3126.800000 +157.443400 -8.924300 3107.200000 +157.445500 -8.924700 3116.400000 +157.447600 -8.925100 3125.600000 +157.449700 -8.925600 2962.400000 +157.451800 -8.926000 3000.400000 +157.453900 -8.926500 2841.600000 +157.456000 -8.926900 2800.400000 +157.458000 -8.927300 2794.000000 +157.460100 -8.927800 2789.600000 +157.462300 -8.928200 2781.200000 +157.464300 -8.928600 2802.000000 +157.466400 -8.929100 2656.800000 +157.468400 -8.929500 2647.600000 +157.470400 -8.929900 2633.200000 +157.472500 -8.930300 2598.800000 +157.474600 -8.930700 2572.400000 +157.476700 -8.931100 2545.600000 +157.478800 -8.931400 2532.000000 +157.480900 -8.931800 2518.400000 +157.483000 -8.932200 2529.600000 +157.485100 -8.932600 2505.200000 +157.487200 -8.932900 2516.000000 +157.489300 -8.933300 2471.200000 +157.491400 -8.933600 2445.600000 +157.493500 -8.934000 2422.400000 +157.495600 -8.934300 2320.000000 +157.497700 -8.934600 2596.000000 +157.499800 -8.935000 2295.600000 +157.501900 -8.935300 2293.600000 +157.504000 -8.935700 2307.200000 +157.506200 -8.936100 2286.800000 +157.508300 -8.936400 2282.800000 +157.510400 -8.936800 2237.600000 +157.512500 -8.937100 2222.800000 +157.514700 -8.937400 2233.600000 +157.516800 -8.937700 2232.400000 +157.519000 -8.938100 2118.400000 +157.521100 -8.938400 2144.400000 +157.523200 -8.938800 2158.400000 +157.525400 -8.939100 2186.400000 +157.527500 -8.939500 2171.600000 +157.529600 -8.939800 2260.800000 +157.531700 -8.940100 2254.800000 +157.533800 -8.940400 2211.600000 +157.535900 -8.940800 2132.400000 +157.538000 -8.941100 2106.400000 +157.540100 -8.941500 2086.800000 +157.542200 -8.941800 2064.000000 +157.544200 -8.942400 2066.400000 +157.546200 -8.942900 2065.600000 +157.548300 -8.943400 2080.800000 +157.550300 -8.943900 2076.800000 +157.552400 -8.944400 2078.400000 +157.554500 -8.945000 2192.800000 +157.556600 -8.945500 2109.600000 +157.558600 -8.946000 2245.200000 +157.560700 -8.946500 2242.000000 +157.562700 -8.946900 2238.000000 +157.564800 -8.947300 2115.600000 +157.566800 -8.947800 2098.000000 +157.568900 -8.948200 2084.400000 +157.571000 -8.948600 2099.600000 +157.573100 -8.949000 2078.400000 +157.575200 -8.949400 2134.800000 +157.577200 -8.949800 2148.000000 +157.579400 -8.950100 2144.400000 +157.581500 -8.950400 2278.400000 +157.583600 -8.950800 2233.200000 +157.585700 -8.951100 2231.600000 +157.587700 -8.951400 2234.400000 +157.589800 -8.951700 2220.000000 +157.591900 -8.952000 2202.400000 +157.594000 -8.952300 2234.400000 +157.596000 -8.952600 2239.600000 +157.598100 -8.952900 2227.600000 +157.600200 -8.953200 2221.600000 +157.602200 -8.953500 2213.600000 +157.604300 -8.953800 2082.400000 +157.606400 -8.954100 2039.200000 +157.608400 -8.954400 1902.800000 +157.610500 -8.954700 1901.200000 +157.612600 -8.955000 1856.800000 +157.614700 -8.955300 1830.400000 +157.616700 -8.955600 1816.400000 +157.618800 -8.955900 1646.800000 +157.620900 -8.956200 1553.600000 +157.623000 -8.956400 1483.200000 +157.625000 -8.956700 1434.800000 +157.627100 -8.957000 1399.600000 +157.629200 -8.957300 1372.400000 +157.631200 -8.957600 1359.600000 +157.633400 -8.957800 1340.800000 +157.635400 -8.958100 1317.600000 +157.637500 -8.958400 1462.000000 +157.639600 -8.958700 1321.600000 +157.641700 -8.958900 1317.200000 +157.643700 -8.959200 1255.200000 +157.645800 -8.959500 1242.000000 +157.647800 -8.959900 1240.000000 +157.649900 -8.960100 1246.400000 +157.651900 -8.960500 1293.600000 +157.654000 -8.960800 1300.800000 +157.656100 -8.961100 1300.800000 +157.658100 -8.961500 1336.400000 +157.660200 -8.961800 1348.400000 +157.662200 -8.962100 1361.200000 +157.664200 -8.962400 1379.200000 +157.666300 -8.962800 1388.000000 +157.668300 -8.963100 1364.400000 +157.670400 -8.963500 1351.200000 +157.672500 -8.963800 1369.600000 +157.674600 -8.964200 1390.000000 +157.676700 -8.964600 1421.200000 +157.678700 -8.965000 1446.400000 +157.680800 -8.965400 1454.000000 +157.682900 -8.965800 1472.800000 +157.685000 -8.966200 1486.400000 +157.687100 -8.966500 1507.200000 +157.689200 -8.966800 1591.600000 +157.691300 -8.967100 1574.400000 +157.693400 -8.967400 1580.800000 +157.695500 -8.967700 1567.200000 +157.697600 -8.968000 1549.600000 +157.699600 -8.968200 1557.600000 +157.701500 -8.968500 1594.400000 +157.703400 -8.968800 1668.400000 +157.705400 -8.969100 1664.800000 +157.707300 -8.969300 1670.400000 +157.709300 -8.969600 1685.200000 +157.711200 -8.969900 1694.800000 +157.713100 -8.970200 1695.200000 +157.715100 -8.970400 1701.600000 +157.717000 -8.970700 1722.000000 +157.719000 -8.971000 1763.200000 +157.721000 -8.971300 1791.600000 +157.722900 -8.971500 1786.000000 +157.724900 -8.971800 1766.800000 +157.726900 -8.972100 1752.400000 +157.728800 -8.972300 1752.400000 +157.730800 -8.972600 1756.400000 +157.732700 -8.972800 1769.600000 +157.734600 -8.973000 1798.000000 +157.736600 -8.973300 1820.000000 +157.738500 -8.973500 1984.400000 +157.740400 -8.973700 1967.600000 +157.742400 -8.973900 1974.800000 +157.744400 -8.974200 1991.600000 +157.746200 -8.974400 2048.400000 +157.748100 -8.974600 2062.800000 +157.750000 -8.974800 2068.800000 +157.751900 -8.975000 2071.200000 +157.753700 -8.975200 2075.200000 +157.755600 -8.975500 2058.400000 +157.757600 -8.975700 2058.800000 +157.759500 -8.975900 2049.600000 +157.761500 -8.976100 2040.000000 +157.763500 -8.976300 2029.600000 +157.765400 -8.976600 2034.800000 +157.767400 -8.976800 2150.000000 +157.769300 -8.977000 2115.200000 +157.771300 -8.977200 2112.000000 +157.773300 -8.977500 2117.200000 +157.775200 -8.977700 2055.600000 +157.777200 -8.977900 2062.400000 +157.779100 -8.978100 2062.400000 +157.781100 -8.978300 2065.600000 +157.783100 -8.978500 2056.000000 +157.785000 -8.978800 2058.800000 +157.787000 -8.979000 2076.800000 +157.789000 -8.979200 2143.600000 +157.791000 -8.979400 2158.400000 +157.792900 -8.979700 2183.200000 +157.794900 -8.979900 2121.200000 +157.796800 -8.980200 2125.600000 +157.798700 -8.980400 2128.800000 +157.800700 -8.980700 2139.600000 +157.802600 -8.981000 2149.600000 +157.804600 -8.981200 2154.400000 +157.806500 -8.981500 2158.000000 +157.808400 -8.981900 2160.800000 +157.810400 -8.982200 2155.200000 +157.812300 -8.982600 2132.400000 +157.814300 -8.983000 2108.400000 +157.816200 -8.983300 2093.200000 +157.818100 -8.983700 2081.200000 +157.820000 -8.984100 2029.200000 +157.821900 -8.984500 2002.400000 +157.823600 -8.984800 2029.200000 +157.825300 -8.985200 1960.000000 +157.827000 -8.985600 1922.400000 +157.828600 -8.986000 1894.400000 +157.830300 -8.986400 1876.000000 +157.832000 -8.986700 1871.600000 +157.833600 -8.987100 1883.600000 +157.835300 -8.987400 1887.200000 +157.837000 -8.987800 1863.200000 +157.838700 -8.988200 1830.000000 +157.840400 -8.988500 1800.400000 +157.842200 -8.988900 1786.800000 +157.844100 -8.989200 1789.600000 +157.845900 -8.989500 1807.600000 +157.847800 -8.989800 1823.600000 +157.849600 -8.990100 1839.200000 +157.851500 -8.990400 1854.000000 +157.853300 -8.990600 1867.600000 +157.855100 -8.990900 1877.200000 +157.857000 -8.991200 1884.800000 +157.858700 -8.991400 1847.200000 +157.860500 -8.991700 1818.800000 +157.862300 -8.992000 1759.600000 +157.864100 -8.992300 1710.000000 +157.865900 -8.992500 1667.200000 +157.867700 -8.992800 1629.600000 +157.869600 -8.993100 1605.200000 +157.871400 -8.993400 1652.800000 +157.873200 -8.993600 1632.400000 +157.875100 -8.993900 1618.800000 +157.876900 -8.994200 1530.800000 +157.878700 -8.994500 1447.600000 +157.880500 -8.994800 1388.000000 +157.882300 -8.995100 1346.400000 +157.884100 -8.995300 1315.600000 +157.885800 -8.995600 1285.600000 +157.887600 -8.995900 1260.800000 +157.889500 -8.996000 1226.800000 +157.891300 -8.996200 1183.600000 +157.893400 -8.996300 1159.600000 +157.895500 -8.996400 1139.600000 +157.897600 -8.996400 1140.400000 +157.899700 -8.996500 1160.000000 +157.901900 -8.996500 1187.200000 +157.904000 -8.996600 1062.000000 +157.906100 -8.996600 1036.800000 +157.908200 -8.996700 1014.800000 +157.910300 -8.996600 993.600000 +157.912300 -8.996600 996.400000 +157.914500 -8.996600 1026.400000 +157.916600 -8.996600 1130.400000 +157.918700 -8.996600 1071.600000 +157.920800 -8.996600 1039.200000 +157.922800 -8.996600 1051.600000 +157.924900 -8.996600 1099.600000 +157.926900 -8.996600 1138.800000 +157.929000 -8.996600 1169.600000 +157.931100 -8.996500 1192.000000 +157.933200 -8.996500 1189.200000 +157.935300 -8.996500 1179.200000 +157.937400 -8.996400 1163.200000 +157.939500 -8.996300 1155.200000 +157.941600 -8.996100 1136.000000 +157.943700 -8.996000 1063.200000 +157.945400 -8.995900 963.200000 +157.947000 -8.995800 890.400000 +157.948300 -8.995700 837.600000 +157.949400 -8.995700 786.400000 +157.950300 -8.995600 769.200000 +157.951100 -8.995500 720.400000 +157.951800 -8.995500 707.200000 +157.952500 -8.995500 680.000000 +157.953100 -8.995500 664.400000 +157.953800 -8.995500 639.600000 +157.954300 -8.995500 620.800000 +157.954900 -8.995400 606.000000 +157.955500 -8.995400 585.200000 +157.956000 -8.995400 571.600000 +157.956500 -8.995300 548.000000 +157.957000 -8.995300 539.600000 +157.957600 -8.995100 529.600000 +157.958000 -8.994700 538.000000 +157.958400 -8.994200 550.000000 +157.958800 -8.993700 555.200000 +157.959200 -8.993300 552.800000 +157.959600 -8.992700 542.000000 +157.960000 -8.992300 528.400000 +157.960400 -8.991800 514.000000 +157.960800 -8.991300 498.400000 +157.961200 -8.990800 484.800000 +157.961700 -8.990300 474.400000 +157.962100 -8.989800 470.400000 +157.962500 -8.989300 471.200000 +157.963000 -8.988800 462.800000 +157.963500 -8.988300 453.600000 +157.963900 -8.987900 448.400000 +157.964400 -8.987400 442.000000 +157.964900 -8.986900 444.000000 +157.965300 -8.986400 445.600000 +157.965800 -8.985900 450.400000 +157.966200 -8.985400 454.000000 +157.966700 -8.984900 462.000000 +157.967200 -8.984500 464.400000 +157.967700 -8.984000 468.400000 +157.968300 -8.983600 472.400000 +157.968900 -8.983200 475.600000 +157.969600 -8.982900 481.200000 +157.970300 -8.982600 485.200000 +157.971000 -8.982500 488.000000 +157.971700 -8.982400 492.800000 +157.972500 -8.982400 492.400000 +157.973100 -8.982500 486.000000 +157.973900 -8.982500 479.600000 +157.974600 -8.982600 480.000000 +157.975400 -8.982700 486.000000 +157.976200 -8.982800 494.400000 +157.976900 -8.983100 490.800000 +157.977500 -8.983500 493.200000 +157.978300 -8.983900 496.000000 +157.979000 -8.984400 495.200000 +157.979700 -8.985000 492.000000 +157.980400 -8.985800 484.000000 +157.981000 -8.986500 490.800000 +157.981600 -8.987400 479.600000 +157.982100 -8.988300 465.200000 +157.982500 -8.989200 461.600000 +157.983000 -8.990200 460.400000 +157.983300 -8.991200 446.400000 +157.983600 -8.992200 436.800000 +157.983800 -8.993200 450.400000 +157.983800 -8.994300 458.000000 +157.983800 -8.995400 458.400000 +157.983800 -8.996400 458.000000 +157.983600 -8.997500 460.800000 +157.983400 -8.998600 465.200000 +157.983100 -8.999700 470.800000 +157.982600 -9.000700 471.200000 +157.981900 -9.001600 470.800000 +157.981100 -9.002400 474.000000 +157.980200 -9.003200 480.000000 +157.979200 -9.003900 474.000000 +157.978200 -9.004400 474.800000 +157.977100 -9.005000 477.600000 +157.976000 -9.005500 477.200000 +157.974900 -9.005900 478.800000 +157.973700 -9.006200 486.000000 +157.972600 -9.006500 484.400000 +157.971500 -9.006700 504.400000 +157.970300 -9.006700 517.600000 +157.969300 -9.006400 528.400000 +157.968300 -9.006000 524.000000 +157.967400 -9.005600 520.400000 +157.966400 -9.005100 535.200000 +157.965300 -9.004600 535.600000 +157.964400 -9.004000 542.400000 +157.963600 -9.003400 548.400000 +157.963100 -9.002800 540.000000 +157.962700 -9.002200 432.400000 +157.962200 -9.001700 378.400000 +157.961500 -9.001300 342.000000 +157.960900 -9.000900 313.600000 +157.960300 -9.000500 298.000000 +157.959700 -9.000000 299.600000 +157.959100 -8.999600 330.000000 +157.958700 -8.999100 360.400000 +157.958300 -8.998500 399.200000 +157.958100 -8.997900 431.600000 +157.958000 -8.997300 456.000000 +157.957900 -8.996700 478.400000 +157.957800 -8.996100 509.200000 +157.957900 -8.995700 498.400000 +157.958200 -8.995900 482.800000 +157.958200 -8.996400 468.000000 +157.958200 -8.997300 438.000000 +157.958300 -8.998500 386.800000 +157.958400 -8.999700 341.600000 +157.958700 -9.000900 358.800000 +157.958800 -9.001800 398.800000 +157.958700 -9.002100 402.800000 +157.958700 -9.002400 407.200000 +157.958700 -9.002700 424.800000 +157.958700 -9.003000 444.400000 +157.958700 -9.003200 471.600000 +157.958500 -9.003100 466.800000 +157.958400 -9.003300 461.600000 +157.958300 -9.003400 476.800000 +157.958100 -9.003400 480.000000 +157.958000 -9.003300 468.400000 +157.957900 -9.003400 478.400000 +157.957700 -9.003600 477.200000 +157.957600 -9.003600 486.400000 +157.957500 -9.003400 482.800000 +157.957400 -9.003000 463.200000 +157.957300 -9.002800 457.200000 +157.957200 -9.002300 440.800000 +157.957200 -9.001800 429.200000 +157.957100 -9.001500 413.600000 +157.957000 -9.001400 412.000000 +157.956900 -9.000800 406.400000 +157.956800 -9.000100 422.400000 +157.956800 -8.999700 413.600000 +157.956700 -8.999400 422.000000 +157.956700 -8.998900 434.800000 +157.956600 -8.998600 440.400000 +157.956700 -8.998200 474.000000 +157.956700 -8.997700 476.800000 +157.956800 -8.997500 473.200000 +157.956800 -8.997400 478.000000 +157.956700 -8.997300 502.000000 +157.956700 -8.997100 500.400000 +157.956800 -8.996900 499.200000 +157.957000 -8.996400 514.400000 +157.957200 -8.996000 521.600000 +157.957300 -8.995600 524.000000 +157.957500 -8.995300 535.600000 +157.957600 -8.994900 543.600000 +157.957800 -8.994500 546.000000 +157.958000 -8.994100 569.600000 +157.958100 -8.993700 572.400000 +157.958300 -8.993400 579.200000 +157.958400 -8.993100 576.000000 +157.958600 -8.992900 573.200000 +157.958900 -8.992500 564.000000 +157.959300 -8.992200 550.000000 +157.959800 -8.991700 536.000000 +157.960100 -8.991300 522.800000 +157.960300 -8.991100 517.600000 +157.960400 -8.990900 511.600000 +157.960500 -8.990800 512.400000 +157.960700 -8.990500 502.000000 +157.960800 -8.990300 498.000000 +157.960900 -8.990200 496.400000 +157.961000 -8.990000 495.200000 +157.961100 -8.989900 494.000000 +157.961200 -8.989700 493.200000 +157.961600 -8.989300 492.400000 +157.961900 -8.989000 491.600000 +157.962100 -8.988800 487.600000 +157.962200 -8.988700 486.800000 +157.962200 -8.988600 488.000000 +157.962400 -8.988400 486.400000 +157.962800 -8.987900 478.800000 +157.963100 -8.987700 477.200000 +157.963200 -8.987500 473.200000 +157.963400 -8.987300 475.600000 +157.963700 -8.987000 469.600000 +157.963900 -8.986800 469.200000 +157.964100 -8.986500 472.800000 +157.964400 -8.986200 490.400000 +157.964700 -8.985900 474.000000 +157.964900 -8.985600 476.400000 +157.965000 -8.985500 481.200000 +157.965300 -8.985300 482.400000 +157.965600 -8.984900 481.200000 +157.965900 -8.984700 484.800000 +157.966500 -8.984500 477.200000 +157.967000 -8.984300 472.000000 +157.967300 -8.984200 469.600000 +157.967500 -8.984100 470.000000 +157.967900 -8.983900 469.600000 +157.968400 -8.983700 469.600000 +157.968700 -8.983600 469.200000 +157.969100 -8.983400 470.400000 +157.969500 -8.983200 474.000000 +157.969800 -8.983100 476.000000 +157.969900 -8.983000 477.200000 +157.970300 -8.982900 480.000000 +157.970900 -8.982600 486.000000 +157.971400 -8.982600 486.000000 +157.972000 -8.982600 487.600000 +157.972400 -8.982600 485.200000 +157.972800 -8.982600 484.000000 +157.973200 -8.982600 483.600000 +157.973700 -8.982600 478.400000 +157.974000 -8.982600 478.800000 +157.974500 -8.982500 484.800000 +157.975100 -8.982500 490.400000 +157.975600 -8.982400 498.800000 +157.976000 -8.982600 498.000000 +157.976600 -8.983000 504.000000 +157.977200 -8.983400 490.400000 +157.977800 -8.983700 495.600000 +157.978300 -8.983900 495.600000 +157.978800 -8.984200 500.000000 +157.979200 -8.984400 499.600000 +157.979400 -8.984600 499.600000 +157.979800 -8.984800 502.000000 +157.980200 -8.985300 495.200000 +157.980600 -8.985700 494.000000 +157.981100 -8.986100 496.000000 +157.981500 -8.986500 504.800000 +157.981900 -8.986900 502.800000 +157.982200 -8.987300 502.000000 +157.982400 -8.987800 488.800000 +157.982800 -8.988400 484.000000 +157.983000 -8.989100 475.600000 +157.983100 -8.989700 470.000000 +157.983300 -8.990300 466.400000 +157.983600 -8.991100 462.000000 +157.983700 -8.991600 450.000000 +157.983800 -8.991900 444.400000 +157.984000 -8.992500 463.600000 +157.984300 -8.993200 469.600000 +157.984500 -8.993800 474.800000 +157.984400 -8.994600 475.600000 +157.984400 -8.995200 473.200000 +157.984300 -8.995700 473.200000 +157.984300 -8.996200 474.400000 +157.984300 -8.996800 476.400000 +157.984200 -8.997300 481.600000 +157.984200 -8.997900 485.200000 +157.984200 -8.998400 486.000000 +157.984000 -8.999100 488.800000 +157.983800 -8.999800 494.400000 +157.983500 -9.000400 492.800000 +157.983100 -9.001000 492.400000 +157.982800 -9.001500 492.800000 +157.982500 -9.001900 492.000000 +157.981900 -9.002400 492.000000 +157.981500 -9.002900 494.400000 +157.981200 -9.003200 502.000000 +157.981000 -9.003400 504.400000 +157.980600 -9.003800 504.800000 +157.980400 -9.004100 506.400000 +157.980300 -9.004300 517.200000 +157.980300 -9.004400 514.000000 +157.980300 -9.004600 516.800000 +157.980300 -9.004700 520.800000 +157.980300 -9.004800 522.800000 +157.980300 -9.004900 526.000000 +157.980300 -9.005000 530.000000 +157.980300 -9.005100 532.800000 +157.980300 -9.005200 536.400000 +157.980300 -9.005300 539.600000 +157.980300 -9.005400 541.600000 +157.980200 -9.005500 544.000000 +157.980200 -9.005700 548.800000 +157.980100 -9.005800 549.600000 +157.980100 -9.005900 552.000000 +157.980100 -9.006000 555.200000 +157.980100 -9.006100 557.600000 +157.980200 -9.006100 560.800000 +157.980200 -9.006200 563.600000 +157.980200 -9.006300 565.600000 +157.980200 -9.006400 568.800000 +157.980300 -9.006400 570.400000 +157.980300 -9.006500 573.200000 +157.980400 -9.006600 575.600000 +157.980400 -9.006600 577.200000 +157.980400 -9.006700 580.400000 +157.980500 -9.006700 583.200000 +157.980500 -9.006800 585.200000 +157.980600 -9.006900 588.400000 +157.980700 -9.006900 590.800000 +157.980800 -9.006900 597.200000 +157.980800 -9.006900 594.400000 +157.980900 -9.007000 597.200000 +157.980900 -9.007000 597.600000 +157.981000 -9.007000 600.800000 +157.981100 -9.007000 602.800000 +157.981100 -9.007000 603.600000 +157.981200 -9.007000 607.600000 +157.981300 -9.007100 606.000000 +157.981300 -9.007100 610.400000 +157.981400 -9.007100 610.000000 +157.981400 -9.007200 612.400000 +157.981500 -9.007400 616.000000 +157.981300 -9.007400 614.400000 +157.980900 -9.007100 600.000000 +157.980700 -9.006900 590.000000 +157.980600 -9.006700 582.800000 +157.980600 -9.006500 577.600000 +157.980600 -9.006300 570.000000 +157.980500 -9.006000 561.200000 +157.980400 -9.005600 548.000000 +157.980300 -9.005300 536.400000 +157.980100 -9.004900 522.000000 +157.979900 -9.004700 514.000000 +157.979700 -9.004800 515.200000 +157.979600 -9.004900 513.600000 +157.979500 -9.005000 517.200000 +157.979500 -9.005100 516.800000 +157.979400 -9.005200 519.200000 +157.979400 -9.005300 523.600000 +157.979300 -9.005500 528.000000 +157.979100 -9.005600 525.600000 +157.979000 -9.005800 528.000000 +157.978500 -9.006100 528.000000 +157.977900 -9.006400 529.600000 +157.977300 -9.006600 527.200000 +157.976700 -9.006700 526.000000 +157.976100 -9.006900 523.200000 +157.975600 -9.007000 520.000000 +157.975100 -9.007100 520.000000 +157.974500 -9.007100 516.400000 +157.974000 -9.007200 513.600000 +157.973400 -9.007200 508.800000 +157.972900 -9.007200 507.200000 +157.972400 -9.007300 509.600000 +157.971900 -9.007300 513.600000 +157.971400 -9.007300 520.000000 +157.971000 -9.007400 526.800000 +157.970600 -9.007400 535.600000 +157.970200 -9.007500 550.000000 +157.969700 -9.007400 548.800000 +157.969300 -9.007400 555.200000 +157.968900 -9.007400 561.600000 +157.968500 -9.007300 564.800000 +157.968100 -9.007300 564.800000 +157.967700 -9.007200 563.200000 +157.967300 -9.007100 566.400000 +157.966800 -9.007000 566.400000 +157.966400 -9.006900 572.400000 +157.966000 -9.006800 582.400000 +157.965600 -9.006700 587.200000 +157.965200 -9.006500 591.600000 +157.964800 -9.006400 596.400000 +157.964400 -9.006400 601.200000 +157.964000 -9.006300 598.400000 +157.963600 -9.006200 615.600000 +157.963200 -9.006100 624.800000 +157.962900 -9.006000 617.600000 +157.962500 -9.005900 634.800000 +157.962100 -9.005800 641.600000 +157.961600 -9.005700 646.400000 +157.961300 -9.005600 654.000000 +157.960900 -9.005500 654.800000 +157.960600 -9.005400 631.200000 +157.960200 -9.005300 611.600000 +157.959900 -9.005300 626.800000 +157.959500 -9.005100 614.000000 +157.959000 -9.005000 583.600000 +157.958600 -9.004900 590.400000 +157.958300 -9.004800 551.600000 +157.957900 -9.004600 548.800000 +157.957600 -9.004400 537.200000 +157.957300 -9.004200 524.000000 +157.957100 -9.004000 511.600000 +157.956900 -9.003600 499.200000 +157.956700 -9.003400 502.000000 +157.956600 -9.003000 481.200000 +157.956400 -9.002700 482.800000 +157.956300 -9.002400 475.600000 +157.956200 -9.002200 474.800000 +157.956300 -9.001900 463.600000 +157.956300 -9.001600 450.000000 +157.956300 -9.001300 451.200000 +157.956300 -9.001000 446.000000 +157.956400 -9.000700 435.600000 +157.956400 -9.000400 434.000000 +157.956500 -9.000100 425.200000 +157.956400 -8.999800 431.600000 +157.956400 -8.999500 436.800000 +157.956300 -8.999200 441.600000 +157.956300 -8.998900 453.200000 +157.956200 -8.998600 462.000000 +157.956300 -8.998200 480.800000 +157.956300 -8.997900 484.800000 +157.956300 -8.997600 503.200000 +157.956300 -8.997300 517.600000 +157.956400 -8.997000 512.000000 +157.956500 -8.996700 518.400000 +157.956600 -8.996400 528.000000 +157.956700 -8.996200 529.600000 +157.956800 -8.995900 542.000000 +157.956800 -8.995600 552.000000 +157.956800 -8.995400 554.800000 +157.956800 -8.995300 553.200000 +157.956800 -8.995200 553.600000 +157.956900 -8.995000 555.200000 +157.957000 -8.994800 560.000000 +157.957200 -8.994600 556.400000 +157.957300 -8.994500 562.000000 +157.957500 -8.994300 568.800000 +157.957500 -8.994100 565.600000 +157.957600 -8.994000 570.800000 +157.957500 -8.993900 568.800000 +157.957700 -8.993700 577.600000 +157.957700 -8.993600 578.000000 +157.957800 -8.993400 597.600000 +157.957900 -8.993200 591.600000 +157.957900 -8.993000 595.600000 +157.957900 -8.992900 596.800000 +157.957800 -8.992900 600.400000 +157.957700 -8.992900 604.400000 +157.957500 -8.992800 609.600000 +157.957400 -8.992900 614.800000 +157.957200 -8.992900 618.800000 +157.957000 -8.992900 607.200000 +157.956800 -8.993000 618.800000 +157.956600 -8.993100 612.400000 +157.956400 -8.993100 611.200000 +157.956200 -8.993200 620.800000 +157.955900 -8.993300 623.600000 +157.955700 -8.993400 652.800000 +157.955400 -8.993500 641.600000 +157.955200 -8.993600 650.800000 +157.954900 -8.993700 653.600000 +157.954600 -8.993800 655.200000 +157.954400 -8.993900 655.600000 +157.954000 -8.993900 662.800000 +157.953900 -8.993900 664.400000 +157.953900 -8.994200 663.600000 +157.954100 -8.994800 648.000000 +157.954300 -8.995300 636.400000 +157.954500 -8.995600 611.200000 +157.954800 -8.995900 589.600000 +157.955100 -8.996300 568.000000 +157.955300 -8.996600 553.600000 +157.955600 -8.997100 528.800000 +157.955900 -8.997500 509.200000 +157.956100 -8.998000 474.000000 +157.956400 -8.998500 443.200000 +157.956700 -8.999000 420.000000 +157.957000 -8.999400 405.600000 +157.957300 -9.000000 386.800000 +157.957600 -9.000500 389.600000 +157.957900 -9.001200 393.600000 +157.958100 -9.001800 417.200000 +157.958300 -9.002500 459.200000 +157.958400 -9.003200 498.000000 +157.958500 -9.003800 544.800000 +157.958500 -9.004100 566.000000 +157.958500 -9.004200 558.000000 +157.958400 -9.004200 530.000000 +157.958400 -9.003800 506.800000 +157.958300 -9.003400 488.800000 +157.958300 -9.002900 440.800000 +157.958200 -9.002500 418.800000 +157.958100 -9.002300 408.000000 +157.957900 -9.002200 414.400000 +157.957700 -9.002100 445.200000 +157.957600 -9.002100 440.000000 +157.957600 -9.002000 438.400000 +157.957700 -9.002000 435.600000 +157.957700 -9.001900 431.600000 +157.957700 -9.001900 427.600000 +157.957500 -9.002100 440.400000 +157.957300 -9.002100 454.000000 +157.957100 -9.002100 459.200000 +157.957000 -9.002200 466.400000 +157.956900 -9.002300 469.600000 +157.956800 -9.002300 482.800000 +157.956700 -9.002400 484.800000 +157.956600 -9.002400 486.000000 +157.956500 -9.002400 495.200000 +157.956400 -9.002500 499.200000 +157.956400 -9.002500 493.600000 +157.956300 -9.002500 493.200000 +157.956300 -9.002500 511.200000 +157.956200 -9.002500 511.200000 +157.956100 -9.002500 510.800000 +157.956000 -9.002500 513.600000 +157.955900 -9.002400 511.200000 +157.955800 -9.002400 504.000000 +157.956100 -9.002600 489.200000 +157.956700 -9.002900 478.800000 +157.957000 -9.003000 489.600000 +157.957100 -9.003100 498.400000 +157.957100 -9.003000 490.800000 +157.957100 -9.002900 503.200000 +157.957100 -9.002800 487.600000 +157.957100 -9.002800 488.000000 +157.957100 -9.002800 490.000000 +157.957100 -9.002900 488.800000 +157.957100 -9.002900 480.800000 +157.957100 -9.003000 503.200000 +157.957100 -9.003100 500.800000 +157.957100 -9.003100 498.000000 +157.957100 -9.003100 492.400000 +157.957100 -9.003100 503.600000 +157.957100 -9.003100 505.200000 +157.957200 -9.003100 498.000000 +157.957200 -9.003100 510.000000 +157.957200 -9.003100 490.000000 +157.957300 -9.003200 492.400000 +157.957300 -9.003300 516.400000 +157.957300 -9.003200 496.400000 +157.957300 -9.003300 510.800000 +157.957300 -9.003400 502.000000 +157.957400 -9.003400 526.800000 +157.957400 -9.003400 521.600000 +157.957400 -9.003400 515.600000 +157.957400 -9.003500 520.800000 +157.957400 -9.003500 506.800000 +157.957400 -9.003400 510.400000 +157.957400 -9.003300 506.800000 +157.957300 -9.003200 503.600000 +157.957200 -9.003200 492.800000 +157.957400 -9.003200 468.400000 +157.957500 -9.003000 469.600000 +157.957800 -9.002800 443.600000 +157.958200 -9.002500 434.400000 +157.958600 -9.002300 411.600000 +157.958900 -9.002000 392.000000 +157.959400 -9.001800 369.600000 +157.959900 -9.001500 358.000000 +157.960400 -9.001200 417.200000 +157.960700 -9.001000 331.600000 +157.960600 -9.001000 347.200000 +157.960400 -9.000900 348.000000 +157.960400 -9.001100 358.800000 +157.960300 -9.001200 354.800000 +157.960200 -9.001300 372.000000 +157.960200 -9.001300 370.000000 +157.960100 -9.001400 385.600000 +157.960000 -9.001700 408.800000 +157.959900 -9.001800 400.400000 +157.959900 -9.002000 416.800000 +157.959900 -9.002100 430.800000 +157.959800 -9.002300 437.600000 +157.959700 -9.002400 448.800000 +157.959700 -9.002400 438.400000 +157.959700 -9.002400 443.600000 +157.959600 -9.002400 460.800000 +157.959600 -9.002300 444.000000 +157.959500 -9.002300 430.800000 +157.959400 -9.002300 435.200000 +157.959300 -9.002400 454.000000 +157.959200 -9.002500 451.200000 +157.959200 -9.002500 451.600000 +157.959100 -9.002600 448.400000 +157.958500 -9.003100 456.000000 +157.957900 -9.002900 452.800000 +157.957700 -9.002500 431.200000 +157.957900 -9.001800 402.400000 +157.958300 -9.000900 359.600000 +157.958800 -8.999900 328.800000 +157.959400 -8.998900 325.200000 +157.959900 -8.997900 360.800000 +157.960500 -8.996900 382.400000 +157.961100 -8.995900 431.200000 +157.961700 -8.994900 437.600000 +157.962300 -8.993900 441.600000 +157.962800 -8.992900 424.400000 +157.963400 -8.991800 404.000000 +157.963900 -8.990800 394.400000 +157.964500 -8.989800 396.000000 +157.965000 -8.988800 391.200000 +157.965600 -8.987900 408.800000 +157.966100 -8.986900 417.600000 +157.966700 -8.986000 434.800000 +157.967300 -8.985200 443.200000 +157.968100 -8.985400 419.600000 +157.969000 -8.985900 391.600000 +157.969900 -8.986300 360.400000 +157.970900 -8.986800 334.000000 +157.971900 -8.987200 313.200000 +157.972900 -8.987700 288.000000 +157.973900 -8.988100 268.000000 +157.974900 -8.988500 274.800000 +157.975900 -8.989000 273.200000 +157.977000 -8.989400 292.400000 +157.978000 -8.989900 316.000000 +157.979100 -8.990300 336.800000 +157.980200 -8.990800 364.400000 +157.981200 -8.991200 397.200000 +157.982300 -8.991600 414.000000 +157.983300 -8.992000 438.800000 +157.983900 -8.992800 446.000000 +157.983500 -8.993500 443.200000 +157.982900 -8.994600 428.400000 +157.982400 -8.995700 407.600000 +157.981800 -8.996900 392.800000 +157.981100 -8.998000 382.400000 +157.980400 -8.999100 378.800000 +157.979700 -9.000300 381.200000 +157.979000 -9.001300 394.800000 +157.978300 -9.002500 418.400000 +157.977500 -9.003600 434.000000 +157.976500 -9.003900 426.400000 +157.975300 -9.003700 411.200000 +157.974000 -9.003600 394.000000 +157.972600 -9.003300 382.800000 +157.971200 -9.003100 393.200000 +157.969800 -9.002800 396.000000 +157.968400 -9.002500 432.000000 +157.966900 -9.002200 444.400000 +157.965500 -9.001900 473.200000 +157.964000 -9.001600 490.000000 +157.962500 -9.001400 360.800000 +157.961200 -9.001100 334.400000 +157.960000 -9.000800 325.200000 +157.958800 -9.000600 340.800000 +157.957600 -9.000400 390.800000 +157.956500 -9.000200 443.200000 +157.955300 -9.000000 479.600000 +157.954100 -9.000000 565.200000 +157.953600 -9.001000 579.200000 +157.954200 -9.003200 584.400000 +157.954800 -9.005800 663.600000 +157.955500 -9.008400 808.800000 +157.956200 -9.011100 862.400000 +157.957000 -9.013700 898.000000 +157.958300 -9.015900 941.600000 +157.959700 -9.018200 978.000000 +157.961300 -9.020400 1012.800000 +157.962800 -9.022600 1058.400000 +157.964400 -9.024800 1106.400000 +157.966100 -9.027000 1156.400000 +157.967600 -9.029100 1202.000000 +157.968700 -9.031500 1258.000000 +157.969700 -9.033700 1311.200000 +157.970200 -9.035200 1343.200000 +157.970600 -9.036200 1366.400000 +157.971000 -9.037000 1381.200000 +157.971300 -9.037600 1394.800000 +157.971500 -9.038100 1406.000000 +157.971700 -9.038500 1414.400000 +157.972000 -9.039000 1424.000000 +157.972400 -9.039400 1432.000000 +157.972900 -9.039800 1438.400000 +157.973100 -9.040000 1443.600000 +157.973500 -9.040400 1452.400000 +157.973700 -9.040800 1459.600000 +157.974100 -9.041100 1466.800000 +157.974500 -9.041400 1472.800000 +157.974700 -9.041600 1476.400000 +157.974600 -9.041600 1478.800000 +157.974600 -9.041700 1478.800000 +157.974700 -9.041800 1480.800000 +157.974700 -9.041800 1481.200000 +157.974600 -9.041800 1481.200000 +157.974800 -9.041900 1482.400000 +157.974800 -9.041900 1482.000000 +157.974900 -9.041900 1482.400000 +157.974800 -9.041800 1481.200000 +157.974800 -9.041700 1478.800000 +157.974800 -9.041700 1479.600000 +157.974700 -9.041700 1478.800000 +157.974800 -9.041700 1478.800000 +157.974900 -9.041700 1478.400000 +157.974800 -9.041600 1478.000000 +157.974900 -9.041600 1477.600000 +157.974900 -9.041600 1476.800000 +157.974800 -9.041500 1476.400000 +157.974800 -9.041500 1477.200000 +157.974800 -9.041600 1478.000000 +157.974800 -9.041600 1478.000000 +157.974800 -9.041600 1478.000000 +157.974800 -9.041600 1477.200000 +157.974800 -9.041700 1476.800000 +157.974700 -9.041600 1476.800000 +157.974700 -9.041600 1476.800000 +157.974800 -9.041600 1476.800000 +157.974800 -9.041600 1478.000000 +157.974800 -9.041700 1478.000000 +157.974900 -9.041700 1478.400000 +157.974900 -9.041600 1479.600000 +157.974800 -9.041600 1478.800000 +157.974900 -9.041700 1479.200000 +157.974900 -9.041700 1478.400000 +157.974900 -9.041700 1478.400000 +157.974800 -9.041600 1477.600000 +157.974700 -9.041600 1476.000000 +157.974800 -9.041600 1476.800000 +157.974900 -9.041700 1478.800000 +157.974800 -9.041700 1479.600000 +157.974800 -9.041700 1478.800000 +157.974800 -9.041700 1479.200000 +157.974800 -9.041700 1479.200000 +157.974800 -9.041700 1478.800000 +157.974900 -9.041700 1479.200000 +157.974800 -9.041700 1479.200000 +157.974900 -9.041700 1478.800000 +157.974800 -9.041700 1478.800000 +157.974900 -9.041700 1479.600000 +157.974900 -9.041700 1479.200000 +157.974900 -9.041700 1480.000000 +157.974900 -9.041700 1479.600000 +157.974900 -9.041700 1478.800000 +157.974900 -9.041700 1479.600000 +157.974900 -9.041700 1477.600000 +157.975000 -9.041700 1478.400000 +157.974900 -9.041600 1477.600000 +157.974900 -9.041600 1476.800000 +157.974900 -9.041600 1476.800000 +157.974800 -9.041600 1476.800000 +157.974800 -9.041600 1476.400000 +157.974800 -9.041500 1476.000000 +157.974800 -9.041600 1476.400000 +157.974700 -9.041500 1474.400000 +157.974500 -9.041400 1473.600000 +157.974300 -9.041400 1472.400000 +157.974100 -9.041300 1471.600000 +157.974200 -9.041300 1470.400000 +157.974500 -9.041300 1470.800000 +157.974800 -9.041400 1474.400000 +157.975300 -9.041800 1480.400000 +157.976000 -9.041400 1470.400000 +157.976300 -9.039700 1433.200000 +157.976800 -9.037200 1373.200000 +157.977300 -9.034600 1311.600000 +157.977900 -9.031900 1250.800000 +157.978500 -9.029100 1184.800000 +157.979300 -9.026500 1122.800000 +157.980100 -9.023900 1058.400000 +157.981200 -9.021400 1000.800000 +157.982300 -9.019200 947.600000 +157.982900 -9.017700 915.600000 +157.983400 -9.016500 890.000000 +157.983800 -9.015600 873.600000 +157.984100 -9.014800 858.000000 +157.984500 -9.014200 844.400000 +157.984900 -9.013600 835.200000 +157.985200 -9.013100 824.000000 +157.985500 -9.012600 814.400000 +157.985800 -9.012100 806.000000 +157.986000 -9.011800 800.800000 +157.986100 -9.011600 801.200000 +157.986100 -9.011500 796.800000 +157.986000 -9.011100 785.200000 +157.985700 -9.010700 771.200000 +157.985400 -9.010600 762.400000 +157.985100 -9.010300 750.400000 +157.984800 -9.010100 740.800000 +157.984600 -9.010000 736.400000 +157.984500 -9.010000 733.600000 +157.984400 -9.010000 732.400000 +157.984200 -9.010100 731.200000 +157.984000 -9.009800 722.000000 +157.983900 -9.009700 718.000000 +157.983900 -9.009300 708.400000 +157.983800 -9.009200 703.200000 +157.983700 -9.009000 697.200000 +157.983600 -9.008900 694.800000 +157.983500 -9.008800 690.800000 +157.983500 -9.008600 685.600000 +157.983600 -9.008400 680.800000 +157.983700 -9.008100 675.200000 +157.983800 -9.007500 660.400000 +157.983600 -9.007100 644.400000 +157.983100 -9.006800 631.600000 +157.982500 -9.006700 616.400000 +157.982000 -9.006500 603.200000 +157.981700 -9.006600 597.600000 +157.981400 -9.006600 596.000000 +157.981300 -9.006700 595.600000 +157.981300 -9.006900 598.800000 +157.981300 -9.007000 604.400000 +157.981300 -9.007200 607.200000 +157.981300 -9.007300 610.400000 +157.981200 -9.007400 614.400000 +157.981100 -9.007500 615.600000 +157.981000 -9.007600 612.400000 +157.980900 -9.007600 612.000000 +157.980700 -9.007700 610.800000 +157.980600 -9.007800 611.200000 +157.980600 -9.007800 612.400000 +157.980600 -9.008000 615.600000 +157.980500 -9.008000 616.800000 +157.980200 -9.007900 610.000000 +157.980000 -9.007900 605.200000 +157.979800 -9.007900 601.200000 +157.979700 -9.007900 600.800000 +157.979600 -9.008000 599.600000 +157.979500 -9.008000 600.400000 +157.979500 -9.008100 602.400000 +157.979500 -9.008200 604.800000 +157.979500 -9.008300 607.600000 +157.979300 -9.008300 605.600000 +157.979000 -9.008300 601.600000 +157.978800 -9.008300 598.800000 +157.978600 -9.008300 596.800000 +157.978500 -9.008300 596.000000 +157.978400 -9.008300 598.400000 +157.978300 -9.008200 590.800000 +157.978200 -9.007900 582.400000 +157.978800 -9.007400 576.000000 +157.979800 -9.006600 577.200000 +157.981100 -9.005500 570.800000 +157.982600 -9.004400 555.600000 +157.984100 -9.003100 556.000000 +157.985700 -9.001700 574.400000 +157.987300 -9.000400 610.800000 +157.988900 -8.999000 634.000000 +157.990300 -8.997500 653.600000 +157.991600 -8.995900 688.800000 +157.992900 -8.994300 721.600000 +157.994200 -8.992600 760.000000 +157.995500 -8.990900 806.400000 +157.996800 -8.989300 856.000000 +157.998100 -8.987600 904.400000 +157.999300 -8.986000 946.400000 +158.000600 -8.984300 1002.400000 +158.001900 -8.982600 1036.800000 +158.003200 -8.980900 1076.000000 +158.004500 -8.979300 1110.400000 +158.005900 -8.977700 1133.200000 +158.007200 -8.976100 1152.800000 +158.008600 -8.974400 1170.000000 +158.009800 -8.973100 1181.200000 +158.010600 -8.972200 1184.000000 +158.011100 -8.971500 1188.000000 +158.011300 -8.971000 1190.000000 +158.011300 -8.970800 1191.600000 +158.011300 -8.970800 1192.000000 +158.011200 -8.970700 1191.200000 +158.011000 -8.970500 1191.200000 +158.010800 -8.970400 1189.600000 +158.010700 -8.970300 1188.800000 +158.010900 -8.970400 1191.200000 +158.011200 -8.970500 1192.000000 +158.011300 -8.970400 1193.200000 +158.011300 -8.970400 1193.200000 +158.011200 -8.970200 1192.400000 +158.011100 -8.970100 1192.800000 +158.011000 -8.970000 1192.400000 +158.011300 -8.970000 1192.800000 +158.011700 -8.970000 1193.200000 +158.011900 -8.970000 1194.000000 +158.011900 -8.970000 1194.800000 +158.011800 -8.969800 1195.200000 +158.011700 -8.969700 1194.800000 +158.011600 -8.969600 1194.000000 +158.011600 -8.969500 1195.200000 +158.011600 -8.969400 1195.200000 +158.011600 -8.969300 1194.800000 +158.011400 -8.969100 1195.600000 +158.011300 -8.969000 1196.000000 +158.011100 -8.968800 1194.800000 +158.010900 -8.968700 1193.200000 +158.011300 -8.968700 1195.600000 +158.011700 -8.968800 1196.400000 +158.011900 -8.968900 1196.000000 +158.011900 -8.968800 1196.000000 +158.011800 -8.968700 1195.600000 +158.011700 -8.968600 1196.000000 +158.011700 -8.968500 1196.000000 +158.011800 -8.968400 1197.200000 +158.011900 -8.968400 1197.600000 +158.011800 -8.968200 1197.200000 +158.011700 -8.968100 1201.600000 +158.011500 -8.967900 1199.200000 +158.011300 -8.967800 1198.000000 +158.011200 -8.967700 1198.800000 +158.011500 -8.967700 1198.000000 +158.011900 -8.967800 1199.200000 +158.012100 -8.967800 1199.200000 +158.012200 -8.967800 1200.800000 +158.012100 -8.967700 1199.600000 +158.011900 -8.967500 1200.400000 +158.011700 -8.967400 1198.400000 +158.011500 -8.967200 1198.000000 +158.011300 -8.967000 1197.200000 +158.011000 -8.966900 1197.600000 +158.010800 -8.966700 1194.800000 +158.010500 -8.966500 1194.400000 +158.010200 -8.966300 1196.000000 +158.009900 -8.966000 1192.400000 +158.009700 -8.965900 1190.800000 +158.009900 -8.966100 1191.200000 +158.009500 -8.966700 1190.000000 +158.007900 -8.967600 1183.200000 +158.006000 -8.968600 1168.400000 +158.003900 -8.969800 1156.800000 +158.001800 -8.971000 1136.400000 +157.999700 -8.972200 1108.800000 +157.997600 -8.973400 1071.200000 +157.995500 -8.974600 1015.600000 +157.993400 -8.975800 950.400000 +157.991300 -8.977000 889.200000 +157.989200 -8.978200 831.600000 +157.987300 -8.979700 776.000000 +157.985800 -8.981100 721.200000 +157.984400 -8.982200 668.800000 +157.983400 -8.983100 624.800000 +157.982700 -8.983700 591.200000 +157.982100 -8.984100 566.000000 +157.981600 -8.984500 546.400000 +157.981300 -8.984700 531.600000 +157.980900 -8.984900 516.000000 +157.980700 -8.985100 506.400000 +157.980400 -8.985200 498.800000 +157.979900 -8.985100 500.800000 +157.979700 -8.985100 504.000000 +157.979600 -8.985100 502.400000 +157.979400 -8.985200 495.600000 +157.979300 -8.985200 492.000000 +157.979100 -8.985200 493.600000 +157.979000 -8.985100 492.800000 +157.978900 -8.985000 487.200000 +157.978700 -8.985000 484.000000 +157.978600 -8.985000 472.800000 +157.978400 -8.985100 472.400000 +157.978300 -8.985100 477.600000 +157.978200 -8.985200 463.200000 +157.978100 -8.985300 470.800000 +157.978000 -8.985300 454.800000 +157.977800 -8.985400 450.000000 +157.977700 -8.985400 452.400000 +157.977500 -8.985400 448.800000 +157.977400 -8.985500 438.000000 +157.977300 -8.985600 437.600000 +157.977200 -8.985700 425.600000 +157.977100 -8.985800 435.200000 +157.977000 -8.985800 414.000000 +157.976800 -8.985900 412.800000 +157.976800 -8.985600 415.200000 +157.976600 -8.985000 437.600000 +157.975900 -8.984400 435.200000 +157.974900 -8.984200 432.800000 +157.973800 -8.984000 434.000000 +157.972600 -8.983700 451.200000 +157.971400 -8.983700 448.000000 +157.970200 -8.983800 452.800000 +157.969000 -8.984000 465.600000 +157.967800 -8.984200 466.400000 +157.966600 -8.984400 494.400000 +157.965400 -8.984600 504.000000 +157.964500 -8.984700 524.800000 +157.963700 -8.984800 534.800000 +157.963300 -8.984900 539.200000 +157.963100 -8.985000 553.200000 +157.963000 -8.985100 546.400000 +157.962900 -8.985100 539.600000 +157.962800 -8.985000 543.200000 +157.963100 -8.984900 538.000000 +157.963200 -8.984800 537.600000 +157.963200 -8.984600 540.800000 +157.963100 -8.984500 546.400000 +157.963000 -8.984400 551.600000 +157.963200 -8.984300 548.800000 +157.963600 -8.984200 543.600000 +157.963700 -8.984000 544.000000 +157.963600 -8.983900 548.000000 +157.963600 -8.983800 553.600000 +157.963400 -8.983700 558.400000 +157.963300 -8.983600 564.400000 +157.963300 -8.983500 565.600000 +157.963600 -8.983400 563.600000 +157.963700 -8.983300 563.200000 +157.963700 -8.983100 566.400000 +157.963600 -8.983000 571.200000 +157.963500 -8.982900 576.800000 +157.963400 -8.982800 581.200000 +157.963200 -8.982700 587.200000 +157.963000 -8.982600 593.600000 +157.962900 -8.982500 598.400000 +157.962800 -8.982400 603.600000 +157.962600 -8.982300 608.800000 +157.962500 -8.982200 614.800000 +157.962500 -8.982100 616.000000 +157.962800 -8.982300 605.200000 +157.962600 -8.982900 603.200000 +157.961200 -8.983000 638.000000 +157.959400 -8.982800 679.200000 +157.957400 -8.982500 728.800000 +157.955300 -8.982200 778.800000 +157.953300 -8.982000 827.600000 +157.951000 -8.981700 874.000000 +157.948500 -8.981400 914.800000 +157.946100 -8.981100 948.000000 +157.943700 -8.980900 953.600000 +157.941300 -8.980600 931.200000 +157.938900 -8.980300 901.200000 +157.936400 -8.980000 897.200000 +157.934000 -8.979700 846.400000 +157.932000 -8.979400 754.000000 +157.930500 -8.979200 684.400000 +157.929400 -8.978800 602.400000 +157.929300 -8.978100 587.600000 +157.929600 -8.977800 589.600000 +157.930100 -8.977900 592.000000 +157.930800 -8.978100 692.000000 +157.931600 -8.978400 752.400000 +157.932500 -8.978700 786.400000 +157.933400 -8.978900 821.200000 +157.934200 -8.979200 854.000000 +157.935000 -8.979500 870.000000 +157.935600 -8.979900 886.800000 +157.936300 -8.980300 899.200000 +157.937000 -8.980700 904.400000 +157.937400 -8.981100 922.800000 +157.937500 -8.981400 928.800000 +157.937700 -8.981700 938.000000 +157.937800 -8.981900 941.200000 +157.937800 -8.981900 939.600000 +157.937800 -8.981800 941.200000 +157.937800 -8.981700 943.200000 +157.937800 -8.981700 942.400000 +157.937800 -8.981600 936.000000 +157.937800 -8.981500 936.000000 +157.937800 -8.981400 940.800000 +157.937800 -8.981400 943.200000 +157.937900 -8.981300 938.400000 +157.937900 -8.981300 945.200000 +157.938000 -8.981300 945.200000 +157.938000 -8.981300 948.000000 +157.938100 -8.981200 926.000000 +157.938100 -8.981200 940.800000 +157.938100 -8.981100 929.600000 +157.938200 -8.981100 948.000000 +157.938200 -8.981000 922.000000 +157.938200 -8.981000 922.800000 +157.938200 -8.980900 926.800000 +157.938300 -8.980800 919.600000 +157.938300 -8.980800 912.000000 +157.938300 -8.980700 909.600000 +157.938400 -8.980700 911.200000 +157.938400 -8.980700 911.600000 +157.938400 -8.980600 910.400000 +157.938400 -8.980500 909.200000 +157.938600 -8.980600 911.600000 +157.938600 -8.980500 912.000000 +157.938600 -8.980400 909.200000 +157.938600 -8.980400 910.000000 +157.938600 -8.980400 909.200000 +157.938700 -8.980300 910.000000 +157.938700 -8.980300 907.200000 +157.938700 -8.980300 908.400000 +157.938700 -8.980200 907.200000 +157.938700 -8.980100 908.800000 +157.938700 -8.980100 905.600000 +157.938700 -8.980100 904.000000 +157.938700 -8.980000 908.400000 +157.938600 -8.979800 900.800000 +157.938500 -8.979700 895.200000 +157.938400 -8.979500 887.200000 +157.938200 -8.979300 886.400000 +157.938100 -8.979200 873.600000 +157.938100 -8.979300 891.200000 +157.938000 -8.979900 897.200000 +157.937900 -8.981300 937.200000 +157.937600 -8.983100 942.400000 +157.937400 -8.985000 998.800000 +157.937100 -8.986800 1045.200000 +157.936900 -8.988700 1072.400000 +157.936700 -8.990600 1102.000000 +157.936400 -8.992500 1127.200000 +157.936200 -8.994400 1149.200000 +157.935900 -8.996400 1175.600000 +157.935800 -8.998300 1194.400000 +157.935600 -9.000300 1217.200000 +157.935500 -9.002200 1243.200000 +157.935300 -9.004200 1267.200000 +157.935200 -9.006100 1289.600000 +157.935000 -9.008100 1313.200000 +157.934900 -9.010100 1334.000000 +157.934700 -9.012000 1350.400000 +157.934600 -9.013900 1354.800000 +157.934400 -9.015800 1354.000000 +157.934300 -9.017700 1357.200000 +157.934100 -9.019600 1364.400000 +157.933900 -9.021600 1378.000000 +157.933700 -9.023400 1392.000000 +157.933600 -9.024800 1406.400000 +157.933400 -9.025900 1417.600000 +157.933300 -9.026900 1427.600000 +157.933200 -9.027700 1436.400000 +157.933200 -9.028400 1443.200000 +157.933200 -9.029100 1450.000000 +157.933300 -9.029800 1457.200000 +157.933300 -9.030400 1464.800000 +157.933300 -9.031000 1472.000000 +157.933300 -9.031300 1476.800000 +157.933200 -9.031500 1480.000000 +157.933200 -9.031600 1481.200000 +157.933200 -9.031600 1481.200000 +157.933200 -9.031800 1482.800000 +157.933100 -9.032000 1486.000000 +157.932900 -9.032000 1488.400000 +157.932700 -9.032100 1490.000000 +157.932500 -9.032100 1492.800000 +157.932300 -9.032200 1494.400000 +157.932100 -9.032300 1497.600000 +157.931900 -9.032400 1499.200000 +157.931700 -9.032300 1500.400000 +157.931500 -9.032400 1502.000000 +157.931300 -9.032400 1504.800000 +157.931100 -9.032500 1506.800000 +157.930900 -9.032500 1508.400000 +157.930700 -9.032500 1510.400000 +157.930500 -9.032500 1510.400000 +157.930300 -9.032500 1511.600000 +157.930100 -9.032500 1512.400000 +157.929900 -9.032600 1514.000000 +157.929800 -9.032600 1515.600000 +157.929600 -9.032600 1517.600000 +157.929400 -9.032600 1519.200000 +157.929200 -9.032700 1519.600000 +157.929100 -9.032700 1522.400000 +157.928900 -9.032700 1522.400000 +157.928700 -9.032700 1523.600000 +157.928600 -9.032700 1526.000000 +157.928400 -9.032700 1526.000000 +157.928200 -9.032600 1526.800000 +157.928000 -9.032600 1528.000000 +157.927800 -9.032600 1529.200000 +157.927600 -9.032600 1530.800000 +157.927400 -9.032600 1532.400000 +157.927300 -9.032600 1533.200000 +157.927100 -9.032600 1534.400000 +157.926900 -9.032600 1535.600000 +157.926700 -9.032600 1537.600000 +157.926600 -9.032600 1539.200000 +157.926400 -9.032600 1540.400000 +157.926200 -9.032700 1544.000000 +157.926000 -9.032700 1543.600000 +157.925900 -9.032700 1544.800000 +157.925700 -9.032800 1546.000000 +157.925500 -9.032900 1548.000000 +157.925300 -9.032900 1549.600000 +157.925200 -9.033000 1551.200000 +157.925000 -9.033100 1554.000000 +157.924800 -9.033200 1554.800000 +157.924500 -9.033200 1556.000000 +157.924300 -9.033200 1558.800000 +157.924100 -9.033200 1557.600000 +157.923900 -9.033300 1558.800000 +157.923700 -9.033300 1559.600000 +157.923500 -9.033400 1560.400000 +157.923200 -9.033200 1560.400000 +157.922800 -9.032900 1560.000000 +157.922000 -9.032700 1559.600000 +157.920500 -9.032300 1537.600000 +157.918600 -9.031700 1534.000000 +157.916600 -9.031200 1556.400000 +157.914500 -9.030600 1570.400000 +157.912400 -9.030000 1586.400000 +157.910400 -9.029400 1593.600000 +157.908100 -9.028800 1595.600000 +157.905600 -9.028100 1600.800000 +157.903200 -9.027300 1604.000000 +157.900400 -9.026300 1596.800000 +157.897400 -9.025200 1587.600000 +157.894300 -9.024100 1594.800000 +157.891200 -9.022900 1689.200000 +157.888000 -9.021800 1688.400000 +157.884900 -9.020600 1690.800000 +157.881800 -9.019400 1696.800000 +157.878600 -9.018300 1711.600000 +157.875400 -9.017200 1748.800000 +157.872300 -9.016000 1783.600000 +157.869100 -9.014900 1812.000000 +157.866000 -9.013800 1853.600000 +157.862800 -9.012700 1916.800000 +157.859600 -9.011500 2004.000000 +157.856500 -9.010400 2068.400000 +157.853300 -9.009200 2141.200000 +157.850200 -9.008100 2156.000000 +157.847100 -9.006900 2154.400000 +157.844000 -9.005800 2169.600000 +157.841000 -9.004700 2166.800000 +157.837900 -9.003600 2141.200000 +157.834900 -9.002500 2182.400000 +157.831800 -9.001400 2182.400000 +157.828700 -9.000200 2190.800000 +157.825700 -8.999100 2205.200000 +157.822600 -8.998000 2219.200000 +157.819600 -8.996900 2244.800000 +157.816500 -8.995800 2242.800000 +157.813400 -8.994700 2246.000000 +157.810400 -8.993600 2249.200000 +157.807300 -8.992500 2241.600000 +157.804300 -8.991400 2222.400000 +157.801300 -8.990300 2180.400000 +157.798300 -8.989200 2125.600000 +157.795300 -8.988200 2094.400000 +157.792400 -8.987200 2105.600000 +157.789400 -8.986100 2126.800000 +157.786400 -8.985000 2195.200000 +157.783500 -8.984000 2118.000000 +157.780500 -8.982900 2081.600000 +157.777500 -8.981800 2106.800000 +157.774500 -8.980700 2060.000000 +157.771500 -8.979600 2058.800000 +157.768500 -8.978600 2104.000000 +157.765500 -8.977500 2046.800000 +157.762500 -8.976400 2032.800000 +157.759600 -8.975400 2048.400000 +157.756600 -8.974300 2047.600000 +157.753700 -8.973200 2047.600000 +157.750800 -8.972200 2027.200000 +157.747800 -8.971100 2016.000000 +157.744900 -8.970100 2015.200000 +157.741900 -8.969000 1974.000000 +157.738900 -8.968000 1835.600000 +157.736000 -8.966900 1770.000000 +157.732900 -8.965900 1734.800000 +157.729900 -8.964900 1716.800000 +157.726900 -8.963900 1655.200000 +157.723900 -8.962800 1597.200000 +157.720900 -8.961800 1552.000000 +157.718000 -8.960900 1488.000000 +157.715000 -8.959900 1442.800000 +157.712100 -8.958900 1406.800000 +157.709100 -8.957900 1362.000000 +157.706100 -8.956900 1354.000000 +157.703100 -8.955900 1332.800000 +157.700100 -8.954900 1260.800000 +157.697100 -8.954000 1248.400000 +157.694100 -8.952900 1271.200000 +157.691100 -8.951900 1226.800000 +157.688100 -8.950900 1127.600000 +157.685100 -8.949900 1081.200000 +157.682200 -8.948900 1034.400000 +157.679200 -8.947900 974.400000 +157.676100 -8.946900 905.600000 +157.673200 -8.945900 860.800000 +157.670200 -8.944900 829.600000 +157.667200 -8.944000 743.600000 +157.664300 -8.943000 686.400000 +157.661300 -8.942000 677.600000 +157.658500 -8.941100 676.000000 +157.655600 -8.940100 671.600000 +157.652700 -8.939100 633.200000 +157.649900 -8.938100 654.800000 +157.647000 -8.937100 625.200000 +157.644100 -8.936000 624.400000 +157.641200 -8.934900 668.000000 +157.638300 -8.933800 669.200000 +157.635500 -8.932600 733.200000 +157.632600 -8.931600 805.600000 +157.629700 -8.930400 841.200000 +157.626800 -8.929300 836.000000 +157.624000 -8.928200 843.600000 +157.621100 -8.927000 879.200000 +157.618200 -8.925800 890.400000 +157.615400 -8.924600 888.800000 +157.612600 -8.923400 922.000000 +157.609700 -8.922300 967.200000 +157.606800 -8.921100 987.200000 +157.604000 -8.919900 1058.400000 +157.601200 -8.918800 1078.000000 +157.598300 -8.917700 1068.800000 +157.595400 -8.916500 1084.400000 +157.592500 -8.915400 1117.200000 +157.589600 -8.914200 1123.200000 +157.586700 -8.913100 1143.600000 +157.583800 -8.911900 1119.200000 +157.580900 -8.910800 1187.600000 +157.578100 -8.909700 1256.400000 +157.575200 -8.908600 1202.400000 +157.572400 -8.907500 1228.800000 +157.569600 -8.906400 1224.400000 +157.566700 -8.905200 1244.800000 +157.563900 -8.904100 1228.800000 +157.561100 -8.903000 1218.800000 +157.558200 -8.901800 1185.600000 +157.555400 -8.900600 1149.200000 +157.552600 -8.899400 1244.000000 +157.549800 -8.898300 1208.800000 +157.546900 -8.897500 1235.600000 +157.544000 -8.896700 1272.000000 +157.541000 -8.895800 1292.800000 +157.538100 -8.895000 1318.400000 +157.535200 -8.894100 1304.000000 +157.532200 -8.893200 1295.600000 +157.529300 -8.892400 1338.400000 +157.526300 -8.891500 1353.600000 +157.523400 -8.890600 1376.000000 +157.520400 -8.889700 1434.000000 +157.517500 -8.888800 1493.600000 +157.514500 -8.888000 1567.200000 +157.511500 -8.887100 1572.800000 +157.508400 -8.886200 1591.600000 +157.505400 -8.885500 1605.600000 +157.502400 -8.884800 1622.800000 +157.499300 -8.884000 1616.000000 +157.496200 -8.883200 1637.200000 +157.493100 -8.882500 1774.400000 +157.490000 -8.881700 1785.600000 +157.486900 -8.880900 1786.400000 +157.483800 -8.880200 1787.200000 +157.480700 -8.879400 1780.400000 +157.477600 -8.878600 1801.600000 +157.474500 -8.877900 1908.800000 +157.471500 -8.877200 1952.000000 +157.468500 -8.876400 1990.000000 +157.465400 -8.875700 2014.400000 +157.462400 -8.874900 2065.600000 +157.459300 -8.874200 2088.800000 +157.456300 -8.873400 2134.400000 +157.453200 -8.872600 2232.000000 +157.450200 -8.871800 2408.400000 +157.447200 -8.871100 2468.000000 +157.444100 -8.870300 2535.600000 +157.441100 -8.869600 2610.400000 +157.438000 -8.868900 2663.600000 +157.435000 -8.868200 2695.200000 +157.431900 -8.867500 2778.400000 +157.428900 -8.866700 2793.600000 +157.425800 -8.866000 2776.800000 +157.422700 -8.865200 2782.400000 +157.419700 -8.864400 2778.000000 +157.416600 -8.863700 2821.200000 +157.413500 -8.862900 2870.400000 +157.410400 -8.862100 2878.800000 +157.407400 -8.861400 2927.200000 +157.404300 -8.860600 3044.800000 +157.401300 -8.859900 3084.000000 +157.398200 -8.859100 3089.600000 +157.395200 -8.858400 3102.400000 +157.392200 -8.857600 3038.800000 +157.389200 -8.856900 3009.600000 +157.386200 -8.856100 2962.000000 +157.383200 -8.855300 2920.000000 +157.380200 -8.854400 2953.200000 +157.377200 -8.853400 2960.800000 +157.374200 -8.852400 3109.200000 +157.371200 -8.851500 3099.600000 +157.368200 -8.850500 3121.600000 +157.365200 -8.849500 3156.400000 +157.362200 -8.848600 3150.000000 +157.359200 -8.847600 3146.000000 +157.356200 -8.846700 3015.600000 +157.353200 -8.845800 2996.800000 +157.350200 -8.844900 2987.600000 +157.347200 -8.844000 3012.800000 +157.344100 -8.843000 2986.800000 +157.341100 -8.842100 2983.200000 +157.338100 -8.841200 2984.800000 +157.335100 -8.840200 2980.800000 +157.332000 -8.839300 3113.200000 +157.329000 -8.838400 3138.800000 +157.326000 -8.837500 3142.400000 +157.322900 -8.836600 3126.000000 +157.319900 -8.835700 3134.800000 +157.316900 -8.834800 3220.400000 +157.313900 -8.833900 3233.600000 +157.310900 -8.833000 3220.000000 +157.307900 -8.832100 3219.200000 +157.304800 -8.831200 3224.800000 +157.301700 -8.830400 3335.200000 +157.298700 -8.829500 3299.600000 +157.295700 -8.828500 3291.600000 +157.292700 -8.827500 3191.600000 +157.289800 -8.826400 3162.400000 +157.286800 -8.825500 3090.800000 +157.283800 -8.824500 3047.200000 +157.280800 -8.823500 2950.800000 +157.277800 -8.822500 2908.000000 +157.274800 -8.821500 2876.800000 +157.271900 -8.820400 2857.200000 +157.268900 -8.819400 2888.000000 +157.266000 -8.818600 2919.200000 +157.263000 -8.817800 2986.800000 +157.259900 -8.817100 3102.400000 +157.256900 -8.816300 3154.400000 +157.253900 -8.815500 3278.400000 +157.250900 -8.814800 3260.800000 +157.247800 -8.814000 3398.000000 +157.244800 -8.813300 3378.400000 +157.241700 -8.812500 3330.800000 +157.238700 -8.811800 3353.600000 +157.235600 -8.811000 3346.400000 +157.232600 -8.810200 3320.400000 +157.229500 -8.809500 3280.800000 +157.226500 -8.808700 3376.000000 +157.223400 -8.807900 3355.200000 +157.220300 -8.807200 3340.400000 +157.217200 -8.806400 3319.600000 +157.214200 -8.805700 3291.200000 +157.211100 -8.804900 3214.800000 +157.208000 -8.804100 3139.600000 +157.205000 -8.803400 3060.000000 +157.201900 -8.802600 2983.600000 +157.198900 -8.801800 2915.600000 +157.195900 -8.801100 2849.600000 +157.192900 -8.800300 2791.600000 +157.189800 -8.799600 2728.000000 +157.186800 -8.798800 2660.800000 +157.183700 -8.798000 2588.400000 +157.180700 -8.797200 2517.200000 +157.177700 -8.796200 2406.400000 +157.174800 -8.795100 2347.600000 +157.171800 -8.794100 2319.600000 +157.168800 -8.793100 2313.200000 +157.165800 -8.792000 2344.000000 +157.162900 -8.791000 2359.200000 +157.159900 -8.790000 2388.000000 +157.156900 -8.789000 2402.400000 +157.154000 -8.787900 2406.800000 +157.151000 -8.786900 2430.400000 +157.148000 -8.785800 2490.000000 +157.145100 -8.784800 2544.800000 +157.142100 -8.783800 2600.800000 +157.139100 -8.782700 2646.000000 +157.136100 -8.781700 2685.600000 +157.133100 -8.780700 2730.800000 +157.130200 -8.779600 2764.400000 +157.127200 -8.778500 2796.000000 +157.124300 -8.777500 2818.400000 +157.121400 -8.776400 2835.200000 +157.118500 -8.775300 2855.200000 +157.115600 -8.774200 2878.400000 +157.112600 -8.773100 2894.000000 +157.109700 -8.772100 2901.600000 +157.106700 -8.771000 2855.200000 +157.103800 -8.770000 2782.400000 +157.100800 -8.768900 2708.000000 +157.097800 -8.767900 2760.800000 +157.094800 -8.766800 2434.800000 +157.091800 -8.765700 2343.200000 +157.088800 -8.764700 2291.200000 +157.085800 -8.763600 2212.000000 +157.082800 -8.762500 2105.200000 +157.079800 -8.761500 1972.400000 +157.076900 -8.760500 3458.000000 +157.073900 -8.759600 3390.800000 +157.070900 -8.758600 3452.800000 +157.068000 -8.757600 1339.900000 +157.065000 -8.756600 1322.400000 +157.062000 -8.755700 1134.400000 +157.059000 -8.754700 973.600000 +157.056000 -8.753800 858.400000 +157.053000 -8.752800 832.000000 +157.050000 -8.751800 792.400000 +157.047000 -8.750800 766.000000 +157.044000 -8.749900 758.000000 +157.041000 -8.748900 767.200000 +157.038000 -8.747900 813.200000 +157.035000 -8.747000 810.400000 +157.032000 -8.746000 779.200000 +157.029000 -8.745000 840.400000 +157.026000 -8.744000 935.200000 +157.023300 -8.743100 792.800000 +157.021600 -8.742600 760.000000 +157.020300 -8.742600 762.400000 +157.019300 -8.742900 758.400000 +157.018300 -8.743000 719.200000 +157.017400 -8.743200 699.600000 +157.016700 -8.743300 681.200000 +157.015900 -8.743400 663.200000 +157.014800 -8.744000 647.600000 +157.013200 -8.744400 639.600000 +157.011600 -8.744900 642.000000 +157.010000 -8.745500 664.400000 +157.008300 -8.746100 687.600000 +157.006700 -8.746800 749.600000 +157.005100 -8.747500 803.600000 +157.003600 -8.748300 862.800000 +157.002100 -8.749000 907.200000 +157.001300 -8.748600 910.800000 +157.001100 -8.747900 902.800000 +157.001200 -8.747300 875.200000 +157.001000 -8.746600 849.600000 +157.000800 -8.745800 834.000000 +157.000600 -8.745000 804.400000 +157.000400 -8.744200 789.200000 +157.000300 -8.743700 779.600000 +157.000200 -8.743100 787.200000 +157.000100 -8.742700 782.400000 +157.000100 -8.742300 779.600000 +157.000000 -8.741900 780.800000 +156.999900 -8.741400 784.000000 +156.999800 -8.740900 787.600000 +156.999700 -8.740300 775.200000 +156.999900 -8.739800 765.200000 +157.000200 -8.739500 755.600000 +157.000600 -8.739000 724.000000 +157.001100 -8.738300 720.000000 +157.001400 -8.737700 713.200000 +157.001500 -8.737400 714.800000 +157.001600 -8.737200 720.000000 +157.001600 -8.737100 724.000000 +157.001600 -8.737000 752.000000 +157.001600 -8.737000 739.200000 +157.001500 -8.737000 724.800000 +157.001500 -8.737100 735.600000 +157.001500 -8.737100 734.400000 +157.001500 -8.737000 736.800000 +157.001500 -8.737000 727.600000 +157.001400 -8.736900 730.000000 +157.001400 -8.736900 742.000000 +157.001400 -8.737000 739.200000 +157.001600 -8.736800 724.800000 +157.002200 -8.736500 708.400000 +157.002900 -8.736500 689.200000 +157.003500 -8.736500 676.000000 +157.004000 -8.736400 670.400000 +157.004600 -8.736300 667.600000 +157.005100 -8.736200 673.200000 +157.005800 -8.736100 672.400000 +157.006300 -8.736000 806.400000 +157.006500 -8.736000 801.600000 +157.006600 -8.735900 748.800000 +157.006700 -8.735800 822.000000 +157.006700 -8.735800 798.800000 +157.006600 -8.735800 802.800000 +157.006400 -8.735700 696.400000 +157.006200 -8.735700 692.000000 +157.006100 -8.735700 682.800000 +157.006200 -8.735600 696.400000 +157.006400 -8.735600 699.600000 +157.006300 -8.735500 696.000000 +157.006200 -8.735500 695.200000 +157.006200 -8.735400 693.200000 +157.006400 -8.735400 696.800000 +157.006500 -8.735300 696.400000 +157.006600 -8.735200 694.400000 +157.006700 -8.735200 728.800000 +157.007200 -8.735100 795.600000 +157.007500 -8.735100 768.800000 +157.007700 -8.735000 794.800000 +157.007800 -8.735000 789.200000 +157.008000 -8.734900 786.400000 +157.008200 -8.734900 786.000000 +157.008500 -8.734800 784.000000 +157.008700 -8.734700 779.600000 +157.009000 -8.734700 786.800000 +157.009300 -8.734600 781.200000 +157.009600 -8.734600 780.000000 +157.009800 -8.734500 772.800000 +157.010000 -8.734400 778.800000 +157.010200 -8.734300 770.800000 +157.010400 -8.734200 777.200000 +157.010600 -8.734100 723.200000 +157.011000 -8.734000 705.600000 +157.011400 -8.734000 692.800000 +157.011700 -8.733900 684.400000 +157.012000 -8.733800 676.800000 +157.012200 -8.733700 670.800000 +157.012500 -8.733600 666.000000 +157.012700 -8.733500 660.800000 +157.012900 -8.733400 656.800000 +157.013000 -8.733400 654.400000 +157.013200 -8.733300 650.800000 +157.013500 -8.733400 645.200000 +157.013700 -8.733900 642.400000 +157.013500 -8.734300 649.200000 +157.013200 -8.734700 661.600000 +157.012800 -8.735100 684.000000 +157.012400 -8.735600 703.600000 +157.012000 -8.736200 703.600000 +157.011500 -8.736700 700.400000 +157.011100 -8.737200 700.000000 +157.010600 -8.737800 696.800000 +157.010100 -8.738300 699.600000 +157.009700 -8.738900 705.200000 +157.009300 -8.739400 699.600000 +157.008800 -8.740000 700.000000 +157.008300 -8.740600 704.000000 +157.007900 -8.741100 711.600000 +157.007400 -8.741600 716.000000 +157.006800 -8.742000 723.600000 +157.006100 -8.742300 727.200000 +157.005700 -8.742500 724.800000 +157.005500 -8.742600 734.800000 +157.005400 -8.742600 735.600000 +157.005400 -8.742700 736.000000 +157.005400 -8.742800 735.600000 +157.005400 -8.742900 739.200000 +157.005400 -8.742900 728.000000 +157.005400 -8.743000 726.800000 +157.005500 -8.743100 739.600000 +157.005500 -8.743200 733.200000 +157.005600 -8.743200 729.200000 +157.005700 -8.743300 731.200000 +157.005800 -8.743300 735.200000 +157.005900 -8.743400 734.400000 +157.005900 -8.743400 734.800000 +157.005600 -8.743300 736.000000 +157.005500 -8.743100 735.600000 +157.005500 -8.742500 732.800000 +157.005600 -8.742200 731.600000 +157.005600 -8.742100 721.200000 +157.005600 -8.742100 728.000000 +157.005500 -8.742100 714.000000 +157.005500 -8.742100 728.800000 +157.005500 -8.742100 730.800000 +157.005500 -8.742200 728.000000 +157.005500 -8.742100 719.600000 +157.005400 -8.742000 709.600000 +157.005400 -8.741900 707.200000 +157.005400 -8.741900 714.400000 +157.005400 -8.741500 706.400000 +157.005500 -8.740900 708.800000 +157.005600 -8.740400 697.600000 +157.005700 -8.739900 703.600000 +157.005900 -8.739400 710.800000 +157.006000 -8.739100 694.000000 +157.006000 -8.738600 703.200000 +157.006100 -8.738100 705.200000 +157.006200 -8.737700 701.200000 +157.006300 -8.737300 799.200000 +157.006400 -8.736900 717.200000 +157.006400 -8.736800 700.800000 +157.006400 -8.736800 695.200000 +157.006400 -8.736900 696.000000 +157.006300 -8.737000 696.800000 +157.006200 -8.737200 696.000000 +157.006100 -8.737400 696.000000 +157.006100 -8.737500 696.000000 +157.006000 -8.737500 693.200000 +157.006000 -8.737500 691.200000 +157.006000 -8.737600 693.200000 +157.006000 -8.737500 694.800000 +157.006000 -8.737500 694.000000 +157.005900 -8.737600 692.800000 +157.005900 -8.737600 690.800000 +157.005900 -8.737600 690.800000 +157.005900 -8.737600 690.000000 +157.005900 -8.737600 689.600000 +157.005800 -8.737600 688.800000 +157.005900 -8.737500 689.200000 +157.005900 -8.737400 689.600000 +157.005800 -8.737400 688.800000 +157.005800 -8.737400 686.000000 +157.005800 -8.737300 689.600000 +157.005800 -8.737200 688.400000 +157.005800 -8.737100 690.400000 +157.005800 -8.737000 686.400000 +157.005800 -8.737000 687.600000 +157.005700 -8.737000 686.800000 +157.005700 -8.736800 685.200000 +157.005800 -8.736500 685.600000 +157.005800 -8.736300 673.600000 +157.005800 -8.736300 681.200000 +157.005700 -8.736300 673.200000 +157.005700 -8.736400 675.200000 +157.005700 -8.736400 687.200000 +157.005700 -8.736400 687.200000 +157.006200 -8.736600 695.200000 +157.006200 -8.737300 692.800000 +157.005100 -8.737700 673.600000 +157.003200 -8.738400 640.800000 +157.000800 -8.739100 746.000000 +156.998400 -8.739800 839.600000 +156.996000 -8.740600 952.800000 +156.993200 -8.741500 1059.200000 +156.990200 -8.742500 1137.600000 +156.987200 -8.743400 1247.200000 +156.984100 -8.744400 1313.200000 +156.981100 -8.745400 1419.600000 +156.978100 -8.746400 1522.800000 +156.975000 -8.747400 1661.200000 +156.972100 -8.748300 1759.200000 +156.969100 -8.749300 1877.600000 +156.966000 -8.750300 2034.000000 +156.963000 -8.751200 2111.600000 +156.960000 -8.752200 2167.600000 +156.956900 -8.753100 3262.100000 +156.953800 -8.754100 3255.000000 +156.950800 -8.755100 3264.800000 +156.947800 -8.756100 3071.600000 +156.944800 -8.757200 3218.400000 +156.941700 -8.758200 2535.600000 +156.938700 -8.759200 2941.200000 +156.935700 -8.760100 2619.200000 +156.932700 -8.761100 2671.000000 +156.929600 -8.762100 2695.200000 +156.926600 -8.763100 2722.000000 +156.923600 -8.764100 2740.800000 +156.920600 -8.765100 2775.200000 +156.917500 -8.766100 2798.800000 +156.914500 -8.767200 2820.000000 +156.911400 -8.768200 2839.200000 +156.908400 -8.769200 2850.800000 +156.905400 -8.770200 2846.400000 +156.902300 -8.771200 2848.000000 +156.899300 -8.772200 2854.000000 +156.896200 -8.773200 2860.400000 +156.893200 -8.774200 2857.600000 +156.890100 -8.775300 2851.600000 +156.887100 -8.776300 2845.600000 +156.884000 -8.777300 2834.800000 +156.880900 -8.778300 2822.800000 +156.877900 -8.779300 2808.800000 +156.874800 -8.780400 2800.800000 +156.871800 -8.781400 2780.000000 +156.868700 -8.782400 2760.000000 +156.865700 -8.783400 2740.400000 +156.862700 -8.784500 2716.000000 +156.859600 -8.785600 2698.800000 +156.856600 -8.786600 2696.800000 +156.853600 -8.787600 2704.400000 +156.850600 -8.788800 2698.800000 +156.847600 -8.790000 2702.400000 +156.844600 -8.791200 2708.400000 +156.841700 -8.792300 2707.200000 +156.838700 -8.793500 2701.200000 +156.835700 -8.794600 2692.400000 +156.832700 -8.795700 2687.600000 +156.829700 -8.796900 2697.600000 +156.826700 -8.798000 2707.600000 +156.823700 -8.799200 2722.000000 +156.820600 -8.800200 2737.600000 +156.817600 -8.801300 2755.200000 +156.814600 -8.802300 2792.400000 +156.811500 -8.803400 3237.600000 +156.808500 -8.804400 2878.000000 +156.805500 -8.805500 3006.000000 +156.803000 -8.806400 3025.200000 +156.801000 -8.807100 2984.800000 +156.799400 -8.807600 3437.200000 +156.798000 -8.808100 3176.800000 +156.797000 -8.808500 3281.200000 +156.796100 -8.808700 3120.000000 +156.795500 -8.808800 3125.200000 +156.794800 -8.808900 3156.400000 +156.794300 -8.809000 3132.800000 +156.793800 -8.809200 3136.000000 +156.793400 -8.809300 3141.600000 +156.793000 -8.809300 3143.600000 +156.792600 -8.809300 3141.600000 +156.792400 -8.809100 3147.600000 +156.792200 -8.808600 3140.400000 +156.792200 -8.808300 3133.200000 +156.792200 -8.808100 3136.800000 +156.792200 -8.807800 3132.000000 +156.792100 -8.807500 3134.800000 +156.792200 -8.807200 3126.800000 +156.792300 -8.806800 3124.800000 +156.792400 -8.806500 3125.200000 +156.792500 -8.806100 3123.200000 +156.792500 -8.805900 3124.800000 +156.792500 -8.805600 2961.600000 +156.792500 -8.805200 2920.000000 +156.792400 -8.804900 2950.800000 +156.792400 -8.804500 2966.800000 +156.792400 -8.804200 2918.400000 +156.792400 -8.804000 2891.600000 +156.792400 -8.803900 2889.200000 +156.792300 -8.803900 2890.000000 +156.792300 -8.803900 2891.600000 +156.792300 -8.804000 2890.000000 +156.792400 -8.804000 2891.200000 +156.792400 -8.804000 2892.000000 +156.792400 -8.804000 2890.000000 +156.792400 -8.804000 2890.400000 +156.792400 -8.804000 2890.000000 +156.792500 -8.804000 2889.600000 +156.792500 -8.804000 2892.400000 +156.792500 -8.803900 2888.800000 +156.792500 -8.803900 2890.000000 +156.792500 -8.803900 2888.400000 +156.792600 -8.803900 2888.800000 +156.792600 -8.803900 2891.200000 +156.792600 -8.803900 2887.600000 +156.792600 -8.803800 2887.600000 +156.792700 -8.803800 2889.600000 +156.792700 -8.803900 2890.000000 +156.792700 -8.803900 2891.600000 +156.792700 -8.803900 2889.200000 +156.792700 -8.803900 2889.600000 +156.792700 -8.803900 2890.400000 +156.792700 -8.803900 2891.200000 +156.792700 -8.803900 2889.200000 +156.792700 -8.803700 2885.200000 +156.792700 -8.803700 2885.600000 +156.792700 -8.803700 2887.200000 +156.792700 -8.803800 2888.400000 +156.792700 -8.803800 2890.400000 +156.792700 -8.803800 2888.800000 +156.792700 -8.803800 2888.400000 +156.792700 -8.803800 2888.800000 +156.792700 -8.803800 2889.200000 +156.792700 -8.803800 2889.200000 +156.792700 -8.803700 2887.600000 +156.792800 -8.803700 2887.600000 +156.792800 -8.803600 2884.400000 +156.792800 -8.803500 2879.600000 +156.792800 -8.803400 2880.400000 +156.792700 -8.802900 2870.800000 +156.792500 -8.802400 2861.200000 +156.792500 -8.802000 2852.400000 +156.792400 -8.801500 2844.800000 +156.792500 -8.801200 2837.200000 +156.792500 -8.800700 2831.600000 +156.792500 -8.800300 2787.600000 +156.792500 -8.799900 2779.600000 +156.792600 -8.799800 2774.800000 +156.792700 -8.799700 2776.400000 +156.792700 -8.799700 2774.800000 +156.792800 -8.799800 2776.400000 +156.792900 -8.799900 2778.400000 +156.793000 -8.799800 2777.600000 +156.793000 -8.799700 2775.200000 +156.793100 -8.799700 2777.600000 +156.793200 -8.799600 2773.600000 +156.793300 -8.799600 2774.000000 +156.793400 -8.799600 2775.200000 +156.793500 -8.799500 2776.800000 +156.793600 -8.799500 2775.200000 +156.793600 -8.799700 2776.800000 +156.793600 -8.799900 2782.400000 +156.793600 -8.800000 2784.400000 +156.793600 -8.800100 2783.600000 +156.793500 -8.800100 2784.000000 +156.793500 -8.800200 2786.000000 +156.793600 -8.800300 2789.200000 +156.793600 -8.800300 2788.800000 +156.793600 -8.800400 2789.200000 +156.793600 -8.800400 2814.800000 +156.793600 -8.800400 2790.400000 +156.793600 -8.800400 2790.000000 +156.793600 -8.800400 2790.000000 +156.793700 -8.800300 2789.600000 +156.793700 -8.800300 2790.000000 +156.793700 -8.800400 2823.200000 +156.793700 -8.800400 2824.000000 +156.793700 -8.800300 2808.800000 +156.793600 -8.800200 2787.200000 +156.793600 -8.800200 2787.600000 +156.793600 -8.800000 2787.200000 +156.793600 -8.799900 2784.000000 +156.793600 -8.799800 2781.200000 +156.793600 -8.799800 2807.600000 +156.793600 -8.799600 2777.600000 +156.793600 -8.799400 2776.000000 +156.793500 -8.799300 2772.400000 +156.793500 -8.799300 2772.800000 +156.793500 -8.799200 2771.200000 +156.793400 -8.799100 2769.600000 +156.793400 -8.798900 2766.800000 +156.793400 -8.798800 2764.000000 +156.793300 -8.798700 2762.800000 +156.793200 -8.798700 2762.800000 +156.793200 -8.798600 2760.400000 +156.793200 -8.798500 2759.200000 +156.793200 -8.798200 2758.000000 +156.793200 -8.798100 2754.400000 +156.793100 -8.798000 2753.600000 +156.793100 -8.797900 2752.400000 +156.793000 -8.797800 2751.200000 +156.793000 -8.797700 2750.400000 +156.793000 -8.797600 2748.800000 +156.792900 -8.797500 2747.600000 +156.793000 -8.797500 2746.800000 +156.793000 -8.797400 2746.000000 +156.793000 -8.797300 2745.200000 +156.793000 -8.797300 2744.800000 +156.793000 -8.797300 2745.600000 +156.793000 -8.797400 2746.000000 +156.793000 -8.797400 2747.200000 +156.793000 -8.797300 2746.000000 +156.793100 -8.797200 2744.800000 +156.793100 -8.797100 2744.400000 +156.793200 -8.797100 2745.600000 +156.793200 -8.797100 2744.800000 +156.793300 -8.797100 2744.000000 +156.793300 -8.797000 2744.800000 +156.793400 -8.797000 2743.600000 +156.793400 -8.797100 2746.800000 +156.793400 -8.797000 2743.600000 +156.793500 -8.797100 2743.600000 +156.793500 -8.797000 2745.200000 +156.793500 -8.796900 2743.600000 +156.793500 -8.796800 2742.400000 +156.793600 -8.796900 2742.000000 +156.793600 -8.796900 2742.400000 +156.793600 -8.796900 2742.400000 +156.793600 -8.796900 2743.200000 +156.793600 -8.796900 2744.400000 +156.793600 -8.796900 2744.400000 +156.793600 -8.797000 2744.000000 +156.793600 -8.796900 2743.600000 +156.793600 -8.796800 2743.200000 +156.793600 -8.796800 2742.400000 +156.793600 -8.796900 2743.200000 +156.793700 -8.797000 2744.400000 +156.793800 -8.797000 2743.200000 +156.793800 -8.797000 2743.600000 +156.793900 -8.796800 2743.200000 +156.794000 -8.796800 2744.800000 +156.794000 -8.796800 2743.200000 +156.794100 -8.796800 2743.200000 +156.794200 -8.796800 2743.600000 +156.794200 -8.796800 2744.400000 +156.794300 -8.797000 2745.200000 +156.794400 -8.797100 2748.800000 +156.794400 -8.797200 2748.400000 +156.794500 -8.797200 2749.600000 +156.794600 -8.797100 2748.400000 +156.794700 -8.797000 2748.400000 +156.794800 -8.796700 2746.800000 +156.794600 -8.796200 2744.000000 +156.794100 -8.795900 2739.600000 +156.793000 -8.796000 2736.800000 +156.791600 -8.796000 2733.200000 +156.790000 -8.796100 2726.400000 +156.788400 -8.796100 2725.200000 +156.786400 -8.796100 2731.200000 +156.783900 -8.796200 2729.200000 +156.780800 -8.796400 2729.200000 +156.777700 -8.796600 2724.000000 +156.774600 -8.796900 2722.400000 +156.771500 -8.797100 2704.000000 +156.768400 -8.797400 2698.000000 +156.765300 -8.797600 2690.000000 +156.762100 -8.797900 2776.400000 +156.759000 -8.798100 2799.600000 +156.755900 -8.798400 2842.000000 +156.752800 -8.798700 2804.800000 +156.749600 -8.799000 2918.400000 +156.746400 -8.799200 2901.600000 +156.743200 -8.799500 2922.400000 +156.740100 -8.799700 3054.000000 +156.736900 -8.800000 3204.000000 +156.733900 -8.800600 3135.200000 +156.731000 -8.801800 3332.800000 +156.728700 -8.803100 3434.400000 +156.727100 -8.804000 3422.800000 +156.725800 -8.804500 3424.000000 +156.724700 -8.805000 3428.800000 +156.723700 -8.805300 3437.600000 +156.722700 -8.805600 3438.800000 +156.721700 -8.805900 3462.000000 +156.720700 -8.805900 3453.200000 +156.719700 -8.805800 3485.600000 +156.718500 -8.805600 3468.800000 +156.717300 -8.805400 3365.600000 +156.716200 -8.805300 3356.400000 +156.715000 -8.805100 3343.200000 +156.713800 -8.805000 3332.000000 +156.712700 -8.804700 3353.200000 +156.711700 -8.804300 3390.800000 +156.710900 -8.803400 3303.200000 +156.710900 -8.802200 3285.600000 +156.711000 -8.800800 3190.400000 +156.711000 -8.799400 3176.000000 +156.711100 -8.798100 3131.600000 +156.711200 -8.796700 3086.000000 +156.711200 -8.795400 3091.600000 +156.711300 -8.794000 3007.600000 +156.711300 -8.792700 2989.600000 +156.711400 -8.791300 2940.400000 +156.711400 -8.789900 2920.000000 +156.711500 -8.788500 2931.600000 +156.711500 -8.787100 2941.200000 +156.711600 -8.785800 2828.000000 +156.711700 -8.784400 2780.000000 +156.711800 -8.783100 2760.000000 +156.711900 -8.781800 2746.400000 +156.711900 -8.780400 2738.800000 +156.712000 -8.779100 2737.600000 +156.712000 -8.777700 2805.200000 +156.712000 -8.776400 2916.400000 +156.712000 -8.775000 2944.400000 +156.712000 -8.773700 2984.400000 +156.711900 -8.772300 3058.800000 +156.711000 -8.771300 3059.600000 +156.709200 -8.769700 3006.800000 +156.707800 -8.767200 2946.800000 +156.708100 -8.764200 2818.800000 +156.707000 -8.761300 2838.400000 +156.704600 -8.759200 2855.600000 +156.702200 -8.757100 2872.400000 +156.699900 -8.755100 2917.200000 +156.697500 -8.753000 2933.200000 +156.695100 -8.751000 2959.600000 +156.692800 -8.748900 2918.000000 +156.690400 -8.746800 2962.800000 +156.688000 -8.744800 2979.200000 +156.685700 -8.742700 3001.600000 +156.683300 -8.740700 3017.200000 +156.680900 -8.738600 3006.000000 +156.678500 -8.736600 3024.000000 +156.676200 -8.734500 2926.400000 +156.674000 -8.732300 2880.800000 +156.671800 -8.730100 2748.000000 +156.669500 -8.727900 2728.400000 +156.667300 -8.725600 2709.600000 +156.665100 -8.723500 2682.400000 +156.662800 -8.721300 2693.200000 +156.660600 -8.719100 2664.000000 +156.658300 -8.716800 2510.000000 +156.656100 -8.714700 2395.200000 +156.653800 -8.712500 2338.800000 +156.651600 -8.710300 2327.600000 +156.649400 -8.708100 2487.600000 +156.647100 -8.705900 2401.200000 +156.644800 -8.703700 2339.600000 +156.642600 -8.701500 2348.400000 +156.640300 -8.699300 2328.800000 +156.638000 -8.697100 2344.800000 +156.635800 -8.694900 2409.200000 +156.633500 -8.692700 2446.800000 +156.631300 -8.690500 2364.800000 +156.629000 -8.688400 2319.200000 +156.626800 -8.686200 2313.200000 +156.624500 -8.684000 2344.800000 +156.622300 -8.681800 2380.400000 +156.620000 -8.679700 2396.800000 +156.617800 -8.677500 2521.200000 +156.615500 -8.675300 2514.000000 +156.613300 -8.673200 2596.800000 +156.611100 -8.671100 2626.400000 +156.608900 -8.668900 2718.000000 +156.606700 -8.666700 2765.200000 +156.604600 -8.664500 2920.400000 +156.602600 -8.662200 2890.800000 +156.600600 -8.659900 2913.600000 +156.598600 -8.657500 2948.400000 +156.596800 -8.655100 2960.400000 +156.594800 -8.652800 2737.200000 +156.592800 -8.650700 2789.200000 +156.590700 -8.648400 2754.000000 +156.588700 -8.646100 2661.200000 +156.586700 -8.643800 2675.200000 +156.584600 -8.641600 2652.000000 +156.582500 -8.639300 2460.400000 +156.580500 -8.637000 2484.000000 +156.578600 -8.634800 2217.600000 +156.576600 -8.632500 2210.000000 +156.574500 -8.630200 2216.400000 +156.572500 -8.627900 2353.600000 +156.570500 -8.625600 2377.200000 +156.568500 -8.623200 2288.800000 +156.566300 -8.621000 2181.600000 +156.564100 -8.618900 2179.600000 +156.561800 -8.616700 2237.200000 +156.559800 -8.614700 2048.800000 +156.558200 -8.613200 2111.200000 +156.557000 -8.612100 1993.600000 +156.556200 -8.611300 2093.200000 +156.555500 -8.610600 2098.400000 +156.554900 -8.609900 2105.200000 +156.554400 -8.609300 1887.600000 +156.553800 -8.608700 1846.400000 +156.553200 -8.608000 1816.400000 +156.552500 -8.607200 1744.000000 +156.551500 -8.606600 1726.400000 +156.550400 -8.606100 1704.400000 +156.549100 -8.605800 1635.200000 +156.547900 -8.605800 1541.600000 +156.546600 -8.605700 1516.400000 +156.545300 -8.605700 1397.200000 +156.543900 -8.605700 1376.800000 +156.542500 -8.605800 1367.600000 +156.541700 -8.605200 1372.800000 +156.542000 -8.604300 1378.800000 +156.542300 -8.603000 1474.800000 +156.543100 -8.602500 1453.600000 +156.544300 -8.602600 1482.400000 +156.545600 -8.602600 1543.600000 +156.546900 -8.602800 1554.800000 +156.547100 -8.603600 1486.000000 +156.547100 -8.604600 1478.400000 +156.547000 -8.605800 1518.000000 +156.546900 -8.607000 1492.000000 +156.546800 -8.608200 1513.200000 +156.546900 -8.609300 1638.000000 +156.547900 -8.609500 1710.000000 +156.549000 -8.609400 1756.800000 +156.549300 -8.608700 1649.200000 +156.548700 -8.608300 1614.800000 +156.547700 -8.608300 1563.600000 +156.546500 -8.608400 1498.400000 +156.545200 -8.608400 1420.000000 +156.543800 -8.608400 1394.000000 +156.542500 -8.608500 1388.800000 +156.541400 -8.608200 1395.200000 +156.541500 -8.607200 1384.400000 +156.541600 -8.605800 1378.800000 +156.541800 -8.604300 1379.600000 +156.542000 -8.602700 1466.800000 +156.541500 -8.601600 1734.400000 +156.540400 -8.601500 1630.400000 +156.539100 -8.601600 1618.000000 +156.539000 -8.602600 1560.800000 +156.539000 -8.603700 1571.200000 +156.538900 -8.605000 1540.800000 +156.538900 -8.606300 1537.600000 +156.538700 -8.607600 1594.800000 +156.537900 -8.607700 1622.400000 +156.536800 -8.607700 1676.400000 +156.535500 -8.607600 1876.400000 +156.535000 -8.606900 1728.400000 +156.535900 -8.606500 1685.600000 +156.537100 -8.606500 1581.600000 +156.538700 -8.606500 1489.600000 +156.540300 -8.606300 1397.600000 +156.541900 -8.606000 1377.600000 +156.543200 -8.605700 1369.600000 +156.544400 -8.605500 1381.600000 +156.545500 -8.605300 1488.800000 +156.546500 -8.605200 1532.000000 +156.547300 -8.605300 1542.800000 +156.548100 -8.605500 1657.200000 +156.548700 -8.605700 1652.000000 +156.549200 -8.605900 1708.000000 +156.549500 -8.605900 1696.800000 +156.549800 -8.605900 1683.600000 +156.550100 -8.605700 1683.600000 +156.550400 -8.605500 1707.600000 +156.550600 -8.605400 1715.200000 +156.550800 -8.605200 1716.000000 +156.550900 -8.605000 1718.000000 +156.551100 -8.604800 1721.600000 +156.551200 -8.604600 1722.000000 +156.551300 -8.604300 1727.600000 +156.551400 -8.604100 1728.000000 +156.551600 -8.603900 1733.600000 +156.551700 -8.603600 1729.600000 +156.551800 -8.603400 1740.400000 +156.551900 -8.603100 1736.000000 +156.552000 -8.602900 1745.600000 +156.552200 -8.602700 1754.400000 +156.552300 -8.602400 1746.000000 +156.552400 -8.602200 1774.400000 +156.552500 -8.602000 1776.400000 +156.552700 -8.601700 1775.600000 +156.552800 -8.601400 1782.000000 +156.552900 -8.601100 1787.600000 +156.553100 -8.600900 1800.000000 +156.553600 -8.600900 1794.400000 +156.554000 -8.601200 1773.200000 +156.554200 -8.601600 1789.600000 +156.554000 -8.602300 1778.400000 +156.553500 -8.602900 1767.600000 +156.552700 -8.603200 1745.600000 +156.551700 -8.603500 1726.000000 +156.550700 -8.603800 1690.400000 +156.549700 -8.604300 1660.800000 +156.549000 -8.604800 1661.200000 +156.548600 -8.605100 1578.800000 +156.548500 -8.605100 1552.800000 +156.548300 -8.604900 1542.000000 +156.548000 -8.604800 1549.600000 +156.547800 -8.604700 1532.000000 +156.547500 -8.604800 1528.400000 +156.547100 -8.605100 1510.800000 +156.546900 -8.605300 1472.800000 +156.546500 -8.605700 1440.400000 +156.546400 -8.605800 1418.000000 +156.546300 -8.605900 1437.200000 +156.546100 -8.605900 1410.400000 +156.546000 -8.605900 1419.600000 +156.546000 -8.605800 1408.800000 +156.546100 -8.605700 1409.200000 +156.546000 -8.605700 1412.000000 +156.546000 -8.605700 1407.200000 +156.546000 -8.605600 1408.800000 +156.545900 -8.605800 1408.800000 +156.546000 -8.605900 1406.400000 +156.546000 -8.606000 1408.000000 +156.546000 -8.606000 1408.000000 +156.545800 -8.606100 1403.200000 +156.545800 -8.606000 1402.400000 +156.545700 -8.606000 1401.200000 +156.545600 -8.605900 1398.400000 +156.545600 -8.605800 1398.800000 +156.545700 -8.605700 1402.000000 +156.545600 -8.605700 1400.000000 +156.545600 -8.605700 1399.600000 +156.545600 -8.605700 1401.600000 +156.545800 -8.605600 1418.400000 +156.545900 -8.605600 1406.400000 +156.545900 -8.605700 1408.000000 +156.545900 -8.605700 1406.400000 +156.545900 -8.605700 1406.400000 +156.545900 -8.605700 1406.800000 +156.545800 -8.605800 1404.000000 +156.545800 -8.605800 1405.200000 +156.545100 -8.606000 1392.400000 +156.544500 -8.605900 1381.600000 +156.544100 -8.605800 1376.400000 +156.543600 -8.605700 1371.600000 +156.543300 -8.605700 1368.800000 +156.542900 -8.605600 1368.800000 +156.542500 -8.605600 1371.200000 +156.542100 -8.605600 1369.200000 +156.541900 -8.605600 1375.600000 +156.541500 -8.605800 1446.400000 +156.541200 -8.605800 1382.400000 +156.541000 -8.605800 1384.000000 +156.541100 -8.605700 1398.800000 +156.541000 -8.605700 1384.400000 +156.541000 -8.605700 1446.400000 +156.541000 -8.605600 1429.200000 +156.540900 -8.605600 1408.800000 +156.541000 -8.605600 1426.800000 +156.540800 -8.605700 1404.400000 +156.540900 -8.605700 1394.400000 +156.540900 -8.605700 1422.000000 +156.540900 -8.605700 1388.000000 +156.541000 -8.605700 1419.600000 +156.540900 -8.605700 1422.400000 +156.540900 -8.605700 1395.200000 +156.541100 -8.605700 1399.600000 +156.541000 -8.605700 1388.000000 +156.541200 -8.605700 1382.400000 +156.541500 -8.605600 1379.600000 +156.541700 -8.605500 1374.800000 +156.541800 -8.605500 1376.000000 +156.541800 -8.605600 1378.000000 +156.541800 -8.605600 1376.400000 +156.541900 -8.605600 1376.000000 +156.542200 -8.605500 1370.800000 +156.542400 -8.605300 1374.800000 +156.542800 -8.605100 1370.000000 +156.543100 -8.605000 1372.400000 +156.543200 -8.604900 1371.600000 +156.543300 -8.604900 1371.600000 +156.543500 -8.604900 1371.200000 +156.543800 -8.604800 1374.800000 +156.544000 -8.604600 1378.800000 +156.544300 -8.604600 1383.600000 +156.544300 -8.604600 1383.200000 +156.544400 -8.604600 1382.800000 +156.544500 -8.604700 1385.200000 +156.544500 -8.604700 1382.800000 +156.544700 -8.604700 1385.600000 +156.544800 -8.604600 1389.200000 +156.545000 -8.604500 1394.400000 +156.545100 -8.604500 1398.000000 +156.545100 -8.604600 1396.400000 +156.545100 -8.604600 1394.400000 +156.545200 -8.604600 1396.800000 +156.545300 -8.604500 1398.000000 +156.545300 -8.604600 1402.400000 +156.545400 -8.604500 1402.400000 +156.545500 -8.604500 1403.600000 +156.545600 -8.604400 1431.600000 +156.545700 -8.604400 1411.600000 +156.545700 -8.604400 1419.600000 +156.545800 -8.604300 1433.600000 +156.545900 -8.604300 1416.000000 +156.546000 -8.604200 1447.600000 +156.546200 -8.604100 1473.600000 +156.546300 -8.604100 1461.200000 +156.546400 -8.604100 1465.600000 +156.546500 -8.604000 1480.400000 +156.546700 -8.603900 1512.400000 +156.546900 -8.603800 1472.400000 +156.546900 -8.603700 1486.400000 +156.547000 -8.603700 1498.400000 +156.547200 -8.603500 1528.800000 +156.547400 -8.603400 1498.000000 +156.547500 -8.603400 1555.200000 +156.547700 -8.603300 1541.200000 +156.547900 -8.603100 1545.600000 +156.548100 -8.603000 1617.600000 +156.548300 -8.602900 1570.000000 +156.548200 -8.603000 1568.400000 +156.548100 -8.603000 1608.800000 +156.548200 -8.603000 1567.600000 +156.548200 -8.603000 1569.200000 +156.548300 -8.602900 1576.400000 +156.548500 -8.602900 1578.400000 +156.548700 -8.602800 1629.600000 +156.548900 -8.602600 1625.200000 +156.549200 -8.602500 1656.000000 +156.549500 -8.602400 1658.800000 +156.549800 -8.602200 1671.200000 +156.550100 -8.602100 1684.800000 +156.550400 -8.601900 1689.200000 +156.550700 -8.601800 1703.600000 +156.551000 -8.601600 1707.600000 +156.551300 -8.601400 1715.200000 +156.551600 -8.601200 1720.400000 +156.551800 -8.601000 1727.200000 +156.552100 -8.600800 1732.400000 +156.552300 -8.600700 1734.400000 +156.552400 -8.601000 1737.200000 +156.551900 -8.601200 1730.000000 +156.550500 -8.601200 1710.400000 +156.548700 -8.601200 1684.000000 +156.546700 -8.601300 1653.200000 +156.544600 -8.601400 1555.600000 +156.542500 -8.601500 1564.000000 +156.540000 -8.601600 1651.600000 +156.537500 -8.601800 1692.000000 +156.535000 -8.602000 1884.800000 +156.532400 -8.602200 1830.400000 +156.529900 -8.602400 1798.400000 +156.527400 -8.602600 1752.400000 +156.524800 -8.602700 1760.800000 +156.522300 -8.603100 1850.400000 +156.519800 -8.603400 1886.400000 +156.517200 -8.603800 1914.000000 +156.514800 -8.604200 1953.200000 +156.512300 -8.604600 1967.200000 +156.509800 -8.605000 1991.200000 +156.507300 -8.604900 1966.400000 +156.506000 -8.602700 1882.400000 +156.505000 -8.600300 1782.800000 +156.504200 -8.597800 1684.400000 +156.503200 -8.595200 1601.200000 +156.502300 -8.592800 1588.000000 +156.501400 -8.591000 1533.600000 +156.500700 -8.589700 1463.600000 +156.500300 -8.584100 1448.000000 +156.501100 -8.585000 1465.200000 +156.501800 -8.585900 1509.200000 +156.502600 -8.586800 1532.800000 +156.503300 -8.587800 1580.000000 +156.504100 -8.588600 1606.000000 +156.504800 -8.589500 1659.200000 +156.505400 -8.590200 1646.400000 +156.505300 -8.590800 1632.800000 +156.504900 -8.590800 1635.200000 +156.504600 -8.590300 1622.400000 +156.504100 -8.589600 1604.000000 +156.503600 -8.588900 1572.800000 +156.503000 -8.588100 1532.400000 +156.502300 -8.587300 1506.400000 +156.501700 -8.586500 1487.200000 +156.501000 -8.585600 1448.800000 +156.500400 -8.584800 1409.600000 +156.500100 -8.580800 1442.000000 +156.500400 -8.581300 1430.800000 +156.500400 -8.581900 1416.000000 +156.500500 -8.582600 1420.400000 +156.500300 -8.583100 1406.800000 +156.500200 -8.583200 1417.200000 diff --git a/autoarray/util/nn/src/nn/examples/2/makefile b/autoarray/util/nn/src/nn/examples/2/makefile index 6404550db..c94b99f61 100644 --- a/autoarray/util/nn/src/nn/examples/2/makefile +++ b/autoarray/util/nn/src/nn/examples/2/makefile @@ -1,14 +1,14 @@ -all: - ./test.sh -mpi: - ./mpitest.sh -cmp: - @echo -n " running mpitest.sh..." - @time -f " %es" sh -c '"$$0" "$$1" >/dev/null 2>&1' ./mpitest.sh 512x512 - @for file in lin.txt nn-inf.txt nn-0.txt nn-ns.txt; do mv $$file $${file}.mpi; done - @echo -n " running test.sh..." - @time -f " %es" sh -c '"$$0" "$$1" >/dev/null 2>&1' ./test.sh 512x512 - @echo " comparing results:" - @for file in lin.txt nn-inf.txt nn-0.txt nn-ns.txt; do echo -n " "; diff -qs $$file $${file}.mpi; done -clean: - rm -f lin*.txt* nn-*.txt* *~ core +all: + ./test.sh +mpi: + ./mpitest.sh +cmp: + @echo -n " running mpitest.sh..." + @time -f " %es" sh -c '"$$0" "$$1" >/dev/null 2>&1' ./mpitest.sh 512x512 + @for file in lin.txt nn-inf.txt nn-0.txt nn-ns.txt; do mv $$file $${file}.mpi; done + @echo -n " running test.sh..." + @time -f " %es" sh -c '"$$0" "$$1" >/dev/null 2>&1' ./test.sh 512x512 + @echo " comparing results:" + @for file in lin.txt nn-inf.txt nn-0.txt nn-ns.txt; do echo -n " "; diff -qs $$file $${file}.mpi; done +clean: + rm -f lin*.txt* nn-*.txt* *~ core diff --git a/autoarray/util/nn/src/nn/examples/2/mpitest.sh b/autoarray/util/nn/src/nn/examples/2/mpitest.sh index ad7a3f499..6307b1240 100644 --- a/autoarray/util/nn/src/nn/examples/2/mpitest.sh +++ b/autoarray/util/nn/src/nn/examples/2/mpitest.sh @@ -1,32 +1,32 @@ -#!/bin/bash - -NCPU=4 -RES=256x256 - -if (($# > 0)) -then - RES=$1 -fi - -if [ ! -x ../../nnbathy ] -then - echo "error: no executable found" - echo 'Run "./configure" and "make" in the source directory' - exit 1 -fi - -echo "" -echo -n "Linear interpolation..." -mpirun -np $NCPU ../../nnbathy -i data.txt -n $RES -P alg=l > lin.txt -echo "done" -echo -n "Natural Neighbours Sibson interpolation..." -mpirun -np $NCPU ../../nnbathy -i data.txt -n $RES > nn-inf.txt -echo "done" -echo -n "Natural Neighbours Sibson interpolation with wmin = 0..." -mpirun -np $NCPU ../../nnbathy -i data.txt -n $RES -W 0 > nn-0.txt -echo "done" -echo -n "Natural Neighbours Non-Sibsonian interpolation with wmin = 0..." -mpirun -np $NCPU ../../nnbathy -i data.txt -n $RES -W 0 -P alg=ns > nn-ns.txt -echo "done" -echo "" -echo 'To visualize, in Matlab run "viewexample"' +#!/bin/bash + +NCPU=4 +RES=256x256 + +if (($# > 0)) +then + RES=$1 +fi + +if [ ! -x ../../nnbathy ] +then + echo "error: no executable found" + echo 'Run "./configure" and "make" in the source directory' + exit 1 +fi + +echo "" +echo -n "Linear interpolation..." +mpirun -np $NCPU ../../nnbathy -i data.txt -n $RES -P alg=l > lin.txt +echo "done" +echo -n "Natural Neighbours Sibson interpolation..." +mpirun -np $NCPU ../../nnbathy -i data.txt -n $RES > nn-inf.txt +echo "done" +echo -n "Natural Neighbours Sibson interpolation with wmin = 0..." +mpirun -np $NCPU ../../nnbathy -i data.txt -n $RES -W 0 > nn-0.txt +echo "done" +echo -n "Natural Neighbours Non-Sibsonian interpolation with wmin = 0..." +mpirun -np $NCPU ../../nnbathy -i data.txt -n $RES -W 0 -P alg=ns > nn-ns.txt +echo "done" +echo "" +echo 'To visualize, in Matlab run "viewexample"' diff --git a/autoarray/util/nn/src/nn/examples/2/suptitle.m b/autoarray/util/nn/src/nn/examples/2/suptitle.m index 19b025423..803a19a9d 100644 --- a/autoarray/util/nn/src/nn/examples/2/suptitle.m +++ b/autoarray/util/nn/src/nn/examples/2/suptitle.m @@ -1,112 +1,112 @@ -function hout=suptitle(str) -%SUPTITLE Puts a title above all subplots. -% SUPTITLE('text') adds text to the top of the figure -% above all subplots (a "super title"). Use this function -% after all subplot commands. - -% Drea Thomas 6/15/95 drea@mathworks.com -% John Cristion 12/13/00 modified -% Mark Histed 03/13/04 histed@mit.edu: fix disappearing legend on last plot -% -% $Id: suptitle.m,v 1.1.1.1 2008/12/12 16:07:41 pavels Exp $ - -% Warning: If the figure or axis units are non-default, this -% will break. - -% Parameters used to position the supertitle. - -% Amount of the figure window devoted to subplots -plotregion = .92; - -% Y position of title in normalized coordinates -titleypos = .95; - -% Fontsize for supertitle -fs = get(gcf,'defaultaxesfontsize'); - -% Fudge factor to adjust y spacing between subplots -fudge = 1; - -haold = gca; -figunits = get(gcf, 'units'); - -% Get the (approximate) difference between full height (plot + title -% + xlabel) and bounding rectangle. - -if (~strcmp(figunits, 'pixels')), - set(gcf,'units', 'pixels'); - pos = get(gcf, 'position'); - set(gcf, 'units', figunits); -else, - pos = get(gcf, 'position'); -end -ff = (fs - 4) * 1.27 * 5 / pos(4) * fudge; - -% The 5 here reflects about 3 characters of height below -% an axis and 2 above. 1.27 is pixels per point. - -% Determine the bounding rectange for all the plots - -% findobj is a 4.2 thing.. if you don't have 4.2 comment out -% the next line and uncomment the following block. -% -%h = findobj(gcf,'Type','axes'); % Change suggested by Stacy J. Hills -% -% If you don't have 4.2, use this code instead -ch = get(gcf, 'children'); -h = []; -for i = 1:length(ch), - if strcmp(get(ch(i), 'type'), 'axes'), - h = [h, ch(i)]; - end -end - -max_y = 0; -min_y = 1; - -oldtitle = 0; -for i = 1 : length(h), - if (~strcmp(get(h(i), 'Tag'), 'suptitle')), - pos = get(h(i), 'pos'); - if (pos(2) < min_y) - min_y = pos(2) - ff / 5 * 3; - end; - if (pos(4) + pos(2) > max_y) - max_y = pos(4) + pos(2) + ff / 5 * 2; - end; - else - oldtitle = h(i); - end -end - -if max_y > plotregion, - scale = (plotregion - min_y) / (max_y - min_y); - for i = 1 : length(h), - pos = get(h(i), 'position'); - pos(2) = (pos(2)-min_y) * scale + min_y; - pos(4) = pos(4) * scale - (1 - scale) * ff / 5 * 3; - set(h(i),'position',pos); - end -end - -np = get(gcf, 'nextplot'); -set(gcf, 'nextplot', 'add'); -if (oldtitle) - delete(oldtitle); -end -ha = axes('pos', [0 1 1 1], 'visible', 'off', 'Tag', 'suptitle'); -ht = text(.5, titleypos - 1, str); -set(ht, 'horizontalalignment', 'center', 'fontsize', fs); -set(gcf, 'nextplot', np); -axes(haold); - -% fix legend if one exists -legH = findobj(gcf, 'Type', 'Legend'); -if ~isempty(legH) - axes(legH); -end - -if nargout - hout = ht; -end - +function hout=suptitle(str) +%SUPTITLE Puts a title above all subplots. +% SUPTITLE('text') adds text to the top of the figure +% above all subplots (a "super title"). Use this function +% after all subplot commands. + +% Drea Thomas 6/15/95 drea@mathworks.com +% John Cristion 12/13/00 modified +% Mark Histed 03/13/04 histed@mit.edu: fix disappearing legend on last plot +% +% $Id: suptitle.m,v 1.1.1.1 2008/12/12 16:07:41 pavels Exp $ + +% Warning: If the figure or axis units are non-default, this +% will break. + +% Parameters used to position the supertitle. + +% Amount of the figure window devoted to subplots +plotregion = .92; + +% Y position of title in normalized coordinates +titleypos = .95; + +% Fontsize for supertitle +fs = get(gcf,'defaultaxesfontsize'); + +% Fudge factor to adjust y spacing between subplots +fudge = 1; + +haold = gca; +figunits = get(gcf, 'units'); + +% Get the (approximate) difference between full height (plot + title +% + xlabel) and bounding rectangle. + +if (~strcmp(figunits, 'pixels')), + set(gcf,'units', 'pixels'); + pos = get(gcf, 'position'); + set(gcf, 'units', figunits); +else, + pos = get(gcf, 'position'); +end +ff = (fs - 4) * 1.27 * 5 / pos(4) * fudge; + +% The 5 here reflects about 3 characters of height below +% an axis and 2 above. 1.27 is pixels per point. + +% Determine the bounding rectange for all the plots + +% findobj is a 4.2 thing.. if you don't have 4.2 comment out +% the next line and uncomment the following block. +% +%h = findobj(gcf,'Type','axes'); % Change suggested by Stacy J. Hills +% +% If you don't have 4.2, use this code instead +ch = get(gcf, 'children'); +h = []; +for i = 1:length(ch), + if strcmp(get(ch(i), 'type'), 'axes'), + h = [h, ch(i)]; + end +end + +max_y = 0; +min_y = 1; + +oldtitle = 0; +for i = 1 : length(h), + if (~strcmp(get(h(i), 'Tag'), 'suptitle')), + pos = get(h(i), 'pos'); + if (pos(2) < min_y) + min_y = pos(2) - ff / 5 * 3; + end; + if (pos(4) + pos(2) > max_y) + max_y = pos(4) + pos(2) + ff / 5 * 2; + end; + else + oldtitle = h(i); + end +end + +if max_y > plotregion, + scale = (plotregion - min_y) / (max_y - min_y); + for i = 1 : length(h), + pos = get(h(i), 'position'); + pos(2) = (pos(2)-min_y) * scale + min_y; + pos(4) = pos(4) * scale - (1 - scale) * ff / 5 * 3; + set(h(i),'position',pos); + end +end + +np = get(gcf, 'nextplot'); +set(gcf, 'nextplot', 'add'); +if (oldtitle) + delete(oldtitle); +end +ha = axes('pos', [0 1 1 1], 'visible', 'off', 'Tag', 'suptitle'); +ht = text(.5, titleypos - 1, str); +set(ht, 'horizontalalignment', 'center', 'fontsize', fs); +set(gcf, 'nextplot', np); +axes(haold); + +% fix legend if one exists +legH = findobj(gcf, 'Type', 'Legend'); +if ~isempty(legH) + axes(legH); +end + +if nargout + hout = ht; +end + diff --git a/autoarray/util/nn/src/nn/examples/2/test.sh b/autoarray/util/nn/src/nn/examples/2/test.sh index fc2e13b6d..2ef463d80 100644 --- a/autoarray/util/nn/src/nn/examples/2/test.sh +++ b/autoarray/util/nn/src/nn/examples/2/test.sh @@ -1,31 +1,31 @@ -#!/bin/bash - -RES=256x256 - -if (($# > 0)) -then - RES=$1 -fi - -if [ ! -x ../../nnbathy ] -then - echo "error: no executable found" - echo 'Run "./configure" and "make" in the source directory' - exit 1 -fi - -echo "" -echo -n "Linear interpolation..." -../../nnbathy -i data.txt -n $RES -P alg=l > lin.txt -echo "done" -echo -n "Natural Neighbours Sibson interpolation..." -../../nnbathy -i data.txt -n $RES > nn-inf.txt -echo "done" -echo -n "Natural Neighbours Sibson interpolation with wmin = 0..." -../../nnbathy -i data.txt -n $RES -W 0 > nn-0.txt -echo "done" -echo -n "Natural Neighbours Non-Sibsonian interpolation with wmin = 0..." -../../nnbathy -i data.txt -n $RES -W 0 -P alg=ns > nn-ns.txt -echo "done" -echo "" -echo 'To visualize, in Matlab run "viewexample"' +#!/bin/bash + +RES=256x256 + +if (($# > 0)) +then + RES=$1 +fi + +if [ ! -x ../../nnbathy ] +then + echo "error: no executable found" + echo 'Run "./configure" and "make" in the source directory' + exit 1 +fi + +echo "" +echo -n "Linear interpolation..." +../../nnbathy -i data.txt -n $RES -P alg=l > lin.txt +echo "done" +echo -n "Natural Neighbours Sibson interpolation..." +../../nnbathy -i data.txt -n $RES > nn-inf.txt +echo "done" +echo -n "Natural Neighbours Sibson interpolation with wmin = 0..." +../../nnbathy -i data.txt -n $RES -W 0 > nn-0.txt +echo "done" +echo -n "Natural Neighbours Non-Sibsonian interpolation with wmin = 0..." +../../nnbathy -i data.txt -n $RES -W 0 -P alg=ns > nn-ns.txt +echo "done" +echo "" +echo 'To visualize, in Matlab run "viewexample"' diff --git a/autoarray/util/nn/src/nn/examples/2/viewdata.m b/autoarray/util/nn/src/nn/examples/2/viewdata.m index 4a83960e9..32318a247 100644 --- a/autoarray/util/nn/src/nn/examples/2/viewdata.m +++ b/autoarray/util/nn/src/nn/examples/2/viewdata.m @@ -1,54 +1,54 @@ -function [] = viewdata(fname, verbose) - - if nargin == 1 - verbose = 1; - end - - if verbose - fprintf('plotting data from "%s"\n', fname); - fprintf(' reading %s...', fname); - end - data = load(fname); - x = data(:, 1); - y = data(:, 2); - z = data(:, 3); - clear data; - - if verbose - fprintf('\n'); - end - - if verbose - fprintf(' plotting...'); - end - - xmin = min(x); - xmax = max(x); - ymin = min(y); - ymax = max(y); - zmin = min(z); - zmax = max(z); - n = length(z); - - map = colormap; - axis([xmin xmax ymin ymax]); - axis square; - set(gca, 'box', 'on'); - hold on; - for i = 1 : n - plot(x(i), y(i), 's-', 'color', zcolor(z(i), zmin, zmax, map), 'markersize', 2); - end - - if verbose - fprintf('\n'); - end - - return - -function c = zcolor(z, zmin, zmax, map) - - ind = floor((z - zmin) / (zmax - zmin) * 64 + 1); - ind = min(ind, 64); - c = map(ind, :); - - return +function [] = viewdata(fname, verbose) + + if nargin == 1 + verbose = 1; + end + + if verbose + fprintf('plotting data from "%s"\n', fname); + fprintf(' reading %s...', fname); + end + data = load(fname); + x = data(:, 1); + y = data(:, 2); + z = data(:, 3); + clear data; + + if verbose + fprintf('\n'); + end + + if verbose + fprintf(' plotting...'); + end + + xmin = min(x); + xmax = max(x); + ymin = min(y); + ymax = max(y); + zmin = min(z); + zmax = max(z); + n = length(z); + + map = colormap; + axis([xmin xmax ymin ymax]); + axis square; + set(gca, 'box', 'on'); + hold on; + for i = 1 : n + plot(x(i), y(i), 's-', 'color', zcolor(z(i), zmin, zmax, map), 'markersize', 2); + end + + if verbose + fprintf('\n'); + end + + return + +function c = zcolor(z, zmin, zmax, map) + + ind = floor((z - zmin) / (zmax - zmin) * 64 + 1); + ind = min(ind, 64); + c = map(ind, :); + + return diff --git a/autoarray/util/nn/src/nn/examples/2/viewexample.m b/autoarray/util/nn/src/nn/examples/2/viewexample.m index f8704a46f..85da086e9 100644 --- a/autoarray/util/nn/src/nn/examples/2/viewexample.m +++ b/autoarray/util/nn/src/nn/examples/2/viewexample.m @@ -1,52 +1,52 @@ -figure - -subplot(3, 2, 1); -fname = 'data.txt'; -fprintf('plotting data points from "%s"\n', fname); -fprintf(' reading %s...', fname); -data = load(fname); -xrange = [min(data(:, 1)) max(data(:, 1))]; -yrange = [min(data(:, 2)) max(data(:, 2))]; -zrange = [min(data(:, 3)) max(data(:, 3))]; -fprintf('\n'); -fprintf(' plotting...'); -axis([xrange yrange]); -axis tight; -axis square; -set(gca, 'box', 'on'); -hold on; -plot(data(:, 1), data(:, 2), 'k.', 'markersize', 1); -fprintf('\n'); -clear data; -title('Data points'); -pause(0.1); - -subplot(3, 2, 2); -viewdata('data.txt'); -title('Data'); -pause(0.1); - -subplot(3, 2, 3); -viewinterp('data.txt', 'lin.txt'); -title('Linear interpolation'); -pause(0.1); - -subplot(3, 2, 4); -viewinterp('data.txt', 'nn-inf.txt'); -caxis(zrange); -title(sprintf('Natural Neighbours interpolation\n(extrapolation allowed)')); -pause(0.1); - -subplot(3, 2, 5); -viewinterp('data.txt', 'nn-0.txt'); -caxis(zrange); -title(sprintf('Natural Neighbours interpolation\n(interpolation only)')); -pause(0.1); - -subplot(3, 2, 6); -viewinterp('data.txt', 'nn-ns.txt'); -caxis(zrange); -title(sprintf('Non-Sibsonian NN interpolation\n(interpolation only)')); -pause(0.1); - -suptitle('Interpolation of bathymetry data from sonar using nnbathy'); +figure + +subplot(3, 2, 1); +fname = 'data.txt'; +fprintf('plotting data points from "%s"\n', fname); +fprintf(' reading %s...', fname); +data = load(fname); +xrange = [min(data(:, 1)) max(data(:, 1))]; +yrange = [min(data(:, 2)) max(data(:, 2))]; +zrange = [min(data(:, 3)) max(data(:, 3))]; +fprintf('\n'); +fprintf(' plotting...'); +axis([xrange yrange]); +axis tight; +axis square; +set(gca, 'box', 'on'); +hold on; +plot(data(:, 1), data(:, 2), 'k.', 'markersize', 1); +fprintf('\n'); +clear data; +title('Data points'); +pause(0.1); + +subplot(3, 2, 2); +viewdata('data.txt'); +title('Data'); +pause(0.1); + +subplot(3, 2, 3); +viewinterp('data.txt', 'lin.txt'); +title('Linear interpolation'); +pause(0.1); + +subplot(3, 2, 4); +viewinterp('data.txt', 'nn-inf.txt'); +caxis(zrange); +title(sprintf('Natural Neighbours interpolation\n(extrapolation allowed)')); +pause(0.1); + +subplot(3, 2, 5); +viewinterp('data.txt', 'nn-0.txt'); +caxis(zrange); +title(sprintf('Natural Neighbours interpolation\n(interpolation only)')); +pause(0.1); + +subplot(3, 2, 6); +viewinterp('data.txt', 'nn-ns.txt'); +caxis(zrange); +title(sprintf('Non-Sibsonian NN interpolation\n(interpolation only)')); +pause(0.1); + +suptitle('Interpolation of bathymetry data from sonar using nnbathy'); diff --git a/autoarray/util/nn/src/nn/examples/2/viewinterp.m b/autoarray/util/nn/src/nn/examples/2/viewinterp.m index ebabf2b46..17039dfe7 100644 --- a/autoarray/util/nn/src/nn/examples/2/viewinterp.m +++ b/autoarray/util/nn/src/nn/examples/2/viewinterp.m @@ -1,129 +1,129 @@ -function [h] = viewinterp(fin, fout, verbose) - - if nargin == 2 - verbose = 1; - end - - if verbose - fprintf('plotting data from "%s" and "%s"\n', fin, fout); - fprintf(' reading "%s"...', fin); - end - - data = load(fin); - xin = data(:, 1); - yin = data(:, 2); - - if verbose - fprintf('\n reading "%s"...', fout); - end - - data = load(fout); - x = data(:, 1); - y = data(:, 2); - z = data(:, 3); - clear data; - - if verbose - fprintf('\n'); - end - - if verbose - fprintf(' working out the grid dimensions...') - end - n = length(x); - if x(2) - x(1) ~= 0 & y(2) - y(1) == 0 - xfirst = 1; - xinc = x(2) > x(1); - if xinc - nx = min(find(diff(x) < 0)); - else - nx = min(find(diff(x) > 0)); - end - if mod(n, nx) ~= 0 - error(sprintf('\n Error: could not work out the grid size, n = %d, nx = %d, n / nx = %f\n', n, nx, n / nx)); - end - ny = n / nx; - x = x(1 : nx); - y = y(1 : nx : n); - z = reshape(z, nx, ny)'; - elseif x(2) - x(1) == 0 & y(2) - y(1) ~= 0 - xfirst = 0; - yinc = y(2) > y(1); - if yinc - ny = min(find(diff(y) < 0)); - else - ny = min(find(diff(y) > 0)); - end - if mod(n, ny) ~= 0 - error(sprintf('\n Error: could not work out the grid size, n = %d, ny = %d, n / ny = %.3f\n', n, ny, n / ny)); - end - nx = n / ny; - y = y(1 : ny); - x = x(1 : ny : n); - z = reshape(z, ny, nx); - else - error(' Error: not a rectangular grid'); - end - if verbose - if xfirst - fprintf('%d x %d, stored by rows\n', nx, ny); - else - fprintf('%d x %d, stored by columns\n', nx, ny); - end - end - - if verbose - fprintf(' plotting...'); - end - - h = pcolor_ps(x, y, z); - zrange = [min(min(z)) max(max(z))]; - caxis(zrange); - set(h, 'LineStyle', 'none'); - axis square; - hold on; - plot(xin, yin, 'w.', 'markersize', 1); - - if verbose - fprintf('\n'); - end - - return - -function [h] = pcolor_ps(x, y, A); - - if nargin == 1 - A = x; - [n, m] = size(A); - xx = (0.5 : m + 0.5)'; - yy = (0.5 : n + 0.5)'; - elseif nargin == 3 - n = length(y); - m = length(x); - A = reshape(A, n, m); % just in case - xx = getcorners(x); - yy = getcorners(y); - else - error(sprintf('\n Error: pcolor_ps(): nargin = %d (expected 1 or 3)\n', nargin)); - end - - TMP = zeros(n + 1, m + 1); - TMP(1 : n, 1 : m) = A; - - if nargout == 0 - pcolor(xx, yy, TMP); - else - h = pcolor(xx, yy, TMP); - end - - return - -function [c] = getcorners(x) - - n = length(x); - c = zeros(n + 1, 1); - c(2 : n) = (x(2 : n) + x(1 : n - 1)) / 2; - c(1) = 2 * x(1) - c(2); - c(n + 1) = 2 * x(n) - c(n); - - return +function [h] = viewinterp(fin, fout, verbose) + + if nargin == 2 + verbose = 1; + end + + if verbose + fprintf('plotting data from "%s" and "%s"\n', fin, fout); + fprintf(' reading "%s"...', fin); + end + + data = load(fin); + xin = data(:, 1); + yin = data(:, 2); + + if verbose + fprintf('\n reading "%s"...', fout); + end + + data = load(fout); + x = data(:, 1); + y = data(:, 2); + z = data(:, 3); + clear data; + + if verbose + fprintf('\n'); + end + + if verbose + fprintf(' working out the grid dimensions...') + end + n = length(x); + if x(2) - x(1) ~= 0 & y(2) - y(1) == 0 + xfirst = 1; + xinc = x(2) > x(1); + if xinc + nx = min(find(diff(x) < 0)); + else + nx = min(find(diff(x) > 0)); + end + if mod(n, nx) ~= 0 + error(sprintf('\n Error: could not work out the grid size, n = %d, nx = %d, n / nx = %f\n', n, nx, n / nx)); + end + ny = n / nx; + x = x(1 : nx); + y = y(1 : nx : n); + z = reshape(z, nx, ny)'; + elseif x(2) - x(1) == 0 & y(2) - y(1) ~= 0 + xfirst = 0; + yinc = y(2) > y(1); + if yinc + ny = min(find(diff(y) < 0)); + else + ny = min(find(diff(y) > 0)); + end + if mod(n, ny) ~= 0 + error(sprintf('\n Error: could not work out the grid size, n = %d, ny = %d, n / ny = %.3f\n', n, ny, n / ny)); + end + nx = n / ny; + y = y(1 : ny); + x = x(1 : ny : n); + z = reshape(z, ny, nx); + else + error(' Error: not a rectangular grid'); + end + if verbose + if xfirst + fprintf('%d x %d, stored by rows\n', nx, ny); + else + fprintf('%d x %d, stored by columns\n', nx, ny); + end + end + + if verbose + fprintf(' plotting...'); + end + + h = pcolor_ps(x, y, z); + zrange = [min(min(z)) max(max(z))]; + caxis(zrange); + set(h, 'LineStyle', 'none'); + axis square; + hold on; + plot(xin, yin, 'w.', 'markersize', 1); + + if verbose + fprintf('\n'); + end + + return + +function [h] = pcolor_ps(x, y, A); + + if nargin == 1 + A = x; + [n, m] = size(A); + xx = (0.5 : m + 0.5)'; + yy = (0.5 : n + 0.5)'; + elseif nargin == 3 + n = length(y); + m = length(x); + A = reshape(A, n, m); % just in case + xx = getcorners(x); + yy = getcorners(y); + else + error(sprintf('\n Error: pcolor_ps(): nargin = %d (expected 1 or 3)\n', nargin)); + end + + TMP = zeros(n + 1, m + 1); + TMP(1 : n, 1 : m) = A; + + if nargout == 0 + pcolor(xx, yy, TMP); + else + h = pcolor(xx, yy, TMP); + end + + return + +function [c] = getcorners(x) + + n = length(x); + c = zeros(n + 1, 1); + c(2 : n) = (x(2 : n) + x(1 : n - 1)) / 2; + c(1) = 2 * x(1) - c(2); + c(n + 1) = 2 * x(n) - c(n); + + return diff --git a/autoarray/util/nn/src/nn/examples/3/README b/autoarray/util/nn/src/nn/examples/3/README index 6b0536e01..8f89dcda8 100644 --- a/autoarray/util/nn/src/nn/examples/3/README +++ b/autoarray/util/nn/src/nn/examples/3/README @@ -1,34 +1,34 @@ -This example tests interpolation of degenerate data, when both input and -output points belong to nodes of 101 x 101 regular grid. As a consequence, -a lot of output points turn out to be exactly on edges of Delaunay -triangulation. In this case, Watson's algorithm used for Sibson interpolation -in this package does not work, and the output vertices have to be perturbed. -(The same applies to Belikov and Semenov's formulas for non-Sibsonian -interpolation.) - -A linear function z = 5x - 3y has been chosen for interpolation because -both Sibsonian and non-Sibsonian interpolation should (in theory) reproduce -it exactly, and for both Sibsonian and non-Sibsonian interpolation sum of -absolute discrepancy is calculated. - -I think that this example is a good test of numerical robustness of the -NN interpolation. - -To conduct the test, run "./test.sh" or "make". -To clean up, run "make clean". - -On pc-linux platform v. 1.55 yields: - sum(|z_sibson_i - z_i|) = 4.91393e-10 - sum(|z_nonsibson_i - z_i|) = 3.28898e-14 - -For comparison, libnn version 1.52 gives: - sum(|z_sibson_i - z_i|) = 312.976 - sum(|z_nonsibson_i - z_i|) = 489.882 - -Update 24 November 2006: version 1.69 gives now - sum(|z_sibson_i - z_i|) = 2.07804e-12 - sum(|z_nonsibson_i - z_i|) = 3.53031e-14 -on my Linux box. - -Good luck! -Pavel Sakov +This example tests interpolation of degenerate data, when both input and +output points belong to nodes of 101 x 101 regular grid. As a consequence, +a lot of output points turn out to be exactly on edges of Delaunay +triangulation. In this case, Watson's algorithm used for Sibson interpolation +in this package does not work, and the output vertices have to be perturbed. +(The same applies to Belikov and Semenov's formulas for non-Sibsonian +interpolation.) + +A linear function z = 5x - 3y has been chosen for interpolation because +both Sibsonian and non-Sibsonian interpolation should (in theory) reproduce +it exactly, and for both Sibsonian and non-Sibsonian interpolation sum of +absolute discrepancy is calculated. + +I think that this example is a good test of numerical robustness of the +NN interpolation. + +To conduct the test, run "./test.sh" or "make". +To clean up, run "make clean". + +On pc-linux platform v. 1.55 yields: + sum(|z_sibson_i - z_i|) = 4.91393e-10 + sum(|z_nonsibson_i - z_i|) = 3.28898e-14 + +For comparison, libnn version 1.52 gives: + sum(|z_sibson_i - z_i|) = 312.976 + sum(|z_nonsibson_i - z_i|) = 489.882 + +Update 24 November 2006: version 1.69 gives now + sum(|z_sibson_i - z_i|) = 2.07804e-12 + sum(|z_nonsibson_i - z_i|) = 3.53031e-14 +on my Linux box. + +Good luck! +Pavel Sakov diff --git a/autoarray/util/nn/src/nn/examples/3/generate-data.awk b/autoarray/util/nn/src/nn/examples/3/generate-data.awk index 6437c2fb3..8b89d3bcc 100644 --- a/autoarray/util/nn/src/nn/examples/3/generate-data.awk +++ b/autoarray/util/nn/src/nn/examples/3/generate-data.awk @@ -1,26 +1,26 @@ -BEGIN { - r = 1; - T = 10000000; - N = 300; -} - -{ - for (i = 0; i < N; ++i) { - x = (int(random() * 121.0) - 10.0) / 100.0; - y = (int(random() * 121.0) - 10.0) / 100.0; - z = 5.0 * x - 3.0 * y; - printf("%.10g %.10g %.10g\n", x, y, z); - } -} - -END { -} - -# One could use in-built generator rand(), but its output may depend on the -# awk implementation used... -# -function random() -{ - r = (r * 40353607) % T; - return r / T; -} +BEGIN { + r = 1; + T = 10000000; + N = 300; +} + +{ + for (i = 0; i < N; ++i) { + x = (int(random() * 121.0) - 10.0) / 100.0; + y = (int(random() * 121.0) - 10.0) / 100.0; + z = 5.0 * x - 3.0 * y; + printf("%.10g %.10g %.10g\n", x, y, z); + } +} + +END { +} + +# One could use in-built generator rand(), but its output may depend on the +# awk implementation used... +# +function random() +{ + r = (r * 40353607) % T; + return r / T; +} diff --git a/autoarray/util/nn/src/nn/examples/3/generate-points.awk b/autoarray/util/nn/src/nn/examples/3/generate-points.awk index c44252553..d60266f70 100644 --- a/autoarray/util/nn/src/nn/examples/3/generate-points.awk +++ b/autoarray/util/nn/src/nn/examples/3/generate-points.awk @@ -1,19 +1,19 @@ -BEGIN { - N = 101; - inc = 1.0 / (N - 1); -} - -{ - y = 0.0; - for (j = 0; j < N; ++j) { - x = 0.0; - for (i = 0; i < N; ++i) { - printf("%.2f %.2f %.2f\n", x, y, 5.0 * x - 3.0 * y); - x += inc; - } - y += inc; - } -} - -END { -} +BEGIN { + N = 101; + inc = 1.0 / (N - 1); +} + +{ + y = 0.0; + for (j = 0; j < N; ++j) { + x = 0.0; + for (i = 0; i < N; ++i) { + printf("%.2f %.2f %.2f\n", x, y, 5.0 * x - 3.0 * y); + x += inc; + } + y += inc; + } +} + +END { +} diff --git a/autoarray/util/nn/src/nn/examples/3/makefile b/autoarray/util/nn/src/nn/examples/3/makefile index 2285bd3bf..b6ff66645 100644 --- a/autoarray/util/nn/src/nn/examples/3/makefile +++ b/autoarray/util/nn/src/nn/examples/3/makefile @@ -1,4 +1,4 @@ -all: - @./test.sh -clean: - @rm -f *.txt *~ core +all: + @./test.sh +clean: + @rm -f *.txt *~ core diff --git a/autoarray/util/nn/src/nn/examples/3/test.sh b/autoarray/util/nn/src/nn/examples/3/test.sh index 2bd064b7b..bd974c440 100644 --- a/autoarray/util/nn/src/nn/examples/3/test.sh +++ b/autoarray/util/nn/src/nn/examples/3/test.sh @@ -1,18 +1,18 @@ -#!/bin/bash - -if [ ! -x ../../nnbathy ] -then - echo "error: no executable found" - echo 'Run "./configure" and "make" in the source directory' - exit 1 -fi - -echo | awk -f generate-data.awk > data.txt -echo | awk -f generate-points.awk > points.txt - -../../nnbathy -i data.txt -o points.txt > results.txt -../../nnbathy -i data.txt -o points.txt -P alg=ns > results-ns.txt - -paste -d" " results.txt results-ns.txt points.txt |\ -cut -f"1 2 3 6 9" -d" " |\ -awk '{a = $3 - $5; s1 += (a > 0) ? a : -a; b = $4 - $5; s2 += (b > 0) ? b : -b;} END {print " sum(|z_sibson_i - z_i|) =", s1; print " sum(|z_nonsibson_i - z_i|) =", s2;}' +#!/bin/bash + +if [ ! -x ../../nnbathy ] +then + echo "error: no executable found" + echo 'Run "./configure" and "make" in the source directory' + exit 1 +fi + +echo | awk -f generate-data.awk > data.txt +echo | awk -f generate-points.awk > points.txt + +../../nnbathy -i data.txt -o points.txt > results.txt +../../nnbathy -i data.txt -o points.txt -P alg=ns > results-ns.txt + +paste -d" " results.txt results-ns.txt points.txt |\ +cut -f"1 2 3 6 9" -d" " |\ +awk '{a = $3 - $5; s1 += (a > 0) ? a : -a; b = $4 - $5; s2 += (b > 0) ? b : -b;} END {print " sum(|z_sibson_i - z_i|) =", s1; print " sum(|z_nonsibson_i - z_i|) =", s2;}' diff --git a/autoarray/util/nn/src/nn/examples/4/README b/autoarray/util/nn/src/nn/examples/4/README index 7b95f17a0..6f55f2060 100644 --- a/autoarray/util/nn/src/nn/examples/4/README +++ b/autoarray/util/nn/src/nn/examples/4/README @@ -1,14 +1,14 @@ -This real-life example is run on a topographic data from satellite altimeter. -(Thanks to Prof. David A. Paige, Dept. of Earth and Space Sciences, UCLA.) -Similar to example 3, the data points belong to nodes of a rectangular grid, -but also there is a large gap between two main clusters of data. - -To reproduce the example, run "./test.sh" or "make". -To visualize, in Matlab run "viewexample" or -"viewinterp('data.txt', 'nn-0.txt');". -To clean up, run "make clean". - -Note that the locations of data points are marked by white dots. - -Good luck! -Pavel Sakov +This real-life example is run on a topographic data from satellite altimeter. +(Thanks to Prof. David A. Paige, Dept. of Earth and Space Sciences, UCLA.) +Similar to example 3, the data points belong to nodes of a rectangular grid, +but also there is a large gap between two main clusters of data. + +To reproduce the example, run "./test.sh" or "make". +To visualize, in Matlab run "viewexample" or +"viewinterp('data.txt', 'nn-0.txt');". +To clean up, run "make clean". + +Note that the locations of data points are marked by white dots. + +Good luck! +Pavel Sakov diff --git a/autoarray/util/nn/src/nn/examples/4/data.txt b/autoarray/util/nn/src/nn/examples/4/data.txt index 00c6a1b3e..a8cc16b9b 100644 --- a/autoarray/util/nn/src/nn/examples/4/data.txt +++ b/autoarray/util/nn/src/nn/examples/4/data.txt @@ -1,6552 +1,6552 @@ - 12 810 -1.30203748 - 13 810 -1.3370707 - 14 810 -1.35904384 - 15 810 -1.33274746 - 16 810 -1.20110583 - 17 810 -1.09421909 - 18 810 -1.07493246 - 19 810 -1.09888613 - 20 810 -1.14623666 - 21 810 -1.21364784 - 22 810 -1.26968694 - 23 810 -1.30824888 - 24 810 -1.34657848 - 25 810 -1.40595734 - 26 810 -1.44285488 - 27 810 -1.49050128 - 28 810 -1.52290463 - 29 810 -1.53855014 - 30 810 -1.53150427 - 31 810 -1.5223285 - 32 810 -1.49679387 - 33 810 -1.47309315 - 34 810 -1.46496713 - 35 810 -1.48363125 - 36 810 -1.51846516 - 37 810 -1.55381775 - 38 810 -1.56110978 - 39 810 -1.56200767 - 40 810 -1.54190803 - 41 810 -1.55690992 - 42 810 -1.58453727 - 43 810 -1.62175608 - 44 810 -1.61917162 - 45 810 -1.6158725 - 46 810 -1.62233889 - 47 810 -1.63312697 - 48 810 -1.64505613 - 49 810 -1.65380788 - 50 810 -1.66261578 - 51 810 -1.75684917 - 52 810 -1.73601663 - 53 810 -1.73746967 - 54 810 -1.71702242 - 55 810 -1.68102038 - 56 810 -1.63247061 - 57 810 -1.57788491 - 58 810 -1.56603825 - 59 810 -1.54347575 - 60 810 -1.53408217 - 61 810 -1.5022521 - 62 810 -1.46148455 - 63 810 -1.40481019 - 64 810 -1.30338824 - 65 810 -1.16269648 - 66 810 -0.977204323 - 67 810 -0.745086074 - 68 810 -0.592747569 - 69 810 -0.422946602 - 70 810 -0.230113313 - 71 810 -0.210207611 - 72 810 -0.124083251 - 73 810 -0.107808717 - 74 810 -0.0992874727 - 75 810 -0.0761588141 - 76 810 -0.0423922129 - 77 810 0.0097237546 - 78 810 0.0756147802 - 79 810 0.152305141 - 80 810 0.220092371 - 81 810 0.30284068 - 82 810 0.399555385 - 83 810 0.515715539 - 84 810 0.669182122 - 85 810 0.839081705 - 86 810 1.00175261 - 87 810 1.16069698 - 88 810 1.2869426 - 89 810 1.38756227 - 90 810 1.48141897 - 91 810 1.57770789 - 92 810 1.67449749 - 93 810 1.76413262 - 94 810 1.84614384 - 95 810 1.9199419 - 96 810 2.3046093 - 97 810 2.69442272 - 98 810 3.10111117 - 99 810 3.65042114 - 100 810 4.21897221 - 101 810 4.21948385 - 102 810 4.21882582 - 103 810 4.20133448 - 104 810 4.18612242 - 105 810 4.1588316 - 106 810 4.11192513 - 107 810 4.06019831 - 108 810 4.00032854 - 109 810 3.90546417 - 12 809 -1.34767962 - 13 809 -1.40080941 - 14 809 -1.6143676 - 15 809 -1.29071665 - 16 809 -1.11273766 - 17 809 -0.965529859 - 18 809 -0.806130171 - 19 809 -0.958816946 - 20 809 -1.01969051 - 21 809 -1.11888802 - 22 809 -1.20974505 - 23 809 -1.29390025 - 24 809 -1.36656773 - 25 809 -1.42733586 - 26 809 -1.47582066 - 27 809 -1.52020252 - 28 809 -1.54555213 - 29 809 -1.56160927 - 30 809 -1.55985236 - 31 809 -1.54988611 - 32 809 -1.53464437 - 33 809 -1.52747107 - 34 809 -1.51567912 - 35 809 -1.52150428 - 36 809 -1.54125524 - 37 809 -1.56791925 - 38 809 -1.5683285 - 39 809 -1.56165659 - 40 809 -1.5372777 - 41 809 -1.51481676 - 42 809 -1.61063945 - 43 809 -1.61081123 - 44 809 -1.61263359 - 45 809 -1.61601901 - 46 809 -1.62946534 - 47 809 -1.63629341 - 48 809 -1.64892411 - 49 809 -1.66174042 - 50 809 -1.71273124 - 51 809 -1.74392879 - 52 809 -1.77693844 - 53 809 -1.75605667 - 54 809 -1.7144649 - 55 809 -1.67820203 - 56 809 -1.6524452 - 57 809 -1.59415829 - 58 809 -1.56441665 - 59 809 -1.54162514 - 60 809 -1.52915931 - 61 809 -1.4877677 - 62 809 -1.44842494 - 63 809 -1.38017869 - 64 809 -1.27813482 - 65 809 -1.14340532 - 66 809 -0.983465552 - 67 809 -0.767696917 - 68 809 -0.60516715 - 69 809 -0.438993424 - 70 809 -0.257048845 - 71 809 -0.180409417 - 72 809 -0.139295906 - 73 809 -0.120343991 - 74 809 -0.113523439 - 75 809 -0.100591555 - 76 809 -0.0755676255 - 77 809 -0.0310559087 - 78 809 0.0326190181 - 79 809 0.114623383 - 80 809 0.189793184 - 81 809 0.276997298 - 82 809 0.375828594 - 83 809 0.490063667 - 84 809 0.635742188 - 85 809 0.790543616 - 86 809 0.949823439 - 87 809 1.09717214 - 88 809 1.21248066 - 89 809 1.31237304 - 90 809 1.40239012 - 91 809 1.49983013 - 92 809 1.59803498 - 93 809 1.69449794 - 94 809 1.7791841 - 95 809 1.86479735 - 96 809 2.25755978 - 97 809 2.65572 - 98 809 3.06746078 - 99 809 3.62104416 - 100 809 4.09624386 - 101 809 4.23404455 - 102 809 4.2225337 - 103 809 4.23193789 - 104 809 4.20807981 - 105 809 4.16694403 - 106 809 4.11348772 - 107 809 4.05562735 - 108 809 3.98857355 - 109 809 3.90076685 - 12 808 -1.41096222 - 13 808 -1.50115073 - 14 808 -1.42325866 - 15 808 -1.18379426 - 16 808 -0.973336995 - 17 808 -0.823205411 - 18 808 -0.711516321 - 19 808 -0.818431437 - 20 808 -0.88874495 - 21 808 -1.0067066 - 22 808 -1.11206043 - 23 808 -1.23315167 - 24 808 -1.33838177 - 25 808 -1.4347899 - 26 808 -1.49318445 - 27 808 -1.54773962 - 28 808 -1.57175672 - 29 808 -1.58656681 - 30 808 -1.57920253 - 31 808 -1.56803167 - 32 808 -1.55515075 - 33 808 -1.53934801 - 34 808 -1.52264392 - 35 808 -1.52272356 - 36 808 -1.53822398 - 37 808 -1.55258238 - 38 808 -1.55680013 - 39 808 -1.54873431 - 40 808 -1.51997697 - 41 808 -1.49788225 - 42 808 -1.59149313 - 43 808 -1.59859693 - 44 808 -1.60747874 - 45 808 -1.61858594 - 46 808 -1.63455224 - 47 808 -1.64845502 - 48 808 -1.66029668 - 49 808 -1.69812155 - 50 808 -1.73665345 - 51 808 -1.78797221 - 52 808 -1.7815454 - 53 808 -1.76320219 - 54 808 -1.74227786 - 55 808 -1.70456839 - 56 808 -1.65936267 - 57 808 -1.6099503 - 58 808 -1.57136631 - 59 808 -1.53770959 - 60 808 -1.51421249 - 61 808 -1.46415734 - 62 808 -1.42113686 - 63 808 -1.33917379 - 64 808 -1.23519623 - 65 808 -1.10971141 - 66 808 -0.97137475 - 67 808 -0.782165885 - 68 808 -0.624408245 - 69 808 -0.471317053 - 70 808 -0.312221795 - 71 808 -0.225981906 - 72 808 -0.171775758 - 73 808 -0.142446294 - 74 808 -0.134628788 - 75 808 -0.126891106 - 76 808 -0.113549806 - 77 808 -0.0739343241 - 78 808 -0.0134143066 - 79 808 0.068355009 - 80 808 0.153392673 - 81 808 0.250024021 - 82 808 0.34963572 - 83 808 0.459290743 - 84 808 0.591506779 - 85 808 0.730452657 - 86 808 0.875246048 - 87 808 1.01192009 - 88 808 1.1280266 - 89 808 1.21871734 - 90 808 1.30541897 - 91 808 1.40486765 - 92 808 1.51294041 - 93 808 1.61970329 - 94 808 1.71689057 - 95 808 1.81125712 - 96 808 2.21363115 - 97 808 2.61460948 - 98 808 3.01086402 - 99 808 3.5551331 - 100 808 4.01090574 - 101 808 4.34384108 - 102 808 4.24080801 - 103 808 4.21971321 - 104 808 4.19001102 - 105 808 4.17896414 - 106 808 4.12126493 - 107 808 4.05818558 - 108 808 3.97813511 - 109 808 3.88695145 - 12 807 -1.40867567 - 13 807 -1.39027727 - 14 807 -1.22969377 - 15 807 -0.99678719 - 16 807 -0.81180644 - 17 807 -0.698236048 - 18 807 -0.645253122 - 19 807 -0.710329294 - 20 807 -0.782471001 - 21 807 -0.907180488 - 22 807 -1.02940035 - 23 807 -1.17746913 - 24 807 -1.30885971 - 25 807 -1.42630744 - 26 807 -1.50159407 - 27 807 -1.57637346 - 28 807 -1.60766244 - 29 807 -1.6180824 - 30 807 -1.61138415 - 31 807 -1.58944082 - 32 807 -1.5744257 - 33 807 -1.55660391 - 34 807 -1.53194368 - 35 807 -1.52981925 - 36 807 -1.5371654 - 37 807 -1.52907264 - 38 807 -1.52910972 - 39 807 -1.5247196 - 40 807 -1.50415468 - 41 807 -1.53262949 - 42 807 -1.56267524 - 43 807 -1.58936787 - 44 807 -1.60488105 - 45 807 -1.62196016 - 46 807 -1.64554107 - 47 807 -1.66629589 - 48 807 -1.67924464 - 49 807 -1.72149992 - 50 807 -1.76351976 - 51 807 -1.80332816 - 52 807 -1.79398096 - 53 807 -1.77175486 - 54 807 -1.74989605 - 55 807 -1.70918071 - 56 807 -1.66315031 - 57 807 -1.62238705 - 58 807 -1.5827862 - 59 807 -1.53672087 - 60 807 -1.4936837 - 61 807 -1.43352163 - 62 807 -1.38224709 - 63 807 -1.29102731 - 64 807 -1.18984568 - 65 807 -1.07987356 - 66 807 -0.959859371 - 67 807 -0.790191293 - 68 807 -0.618167341 - 69 807 -0.523843229 - 70 807 -0.392961055 - 71 807 -0.292032212 - 72 807 -0.223203003 - 73 807 -0.179024413 - 74 807 -0.1676438 - 75 807 -0.168417722 - 76 807 -0.160452023 - 77 807 -0.122403443 - 78 807 -0.0614051521 - 79 807 0.0218767095 - 80 807 0.115541965 - 81 807 0.219310269 - 82 807 0.323761702 - 83 807 0.425867766 - 84 807 0.533161581 - 85 807 0.642254591 - 86 807 0.76692605 - 87 807 0.891094685 - 88 807 1.00188684 - 89 807 1.09580219 - 90 807 1.19100785 - 91 807 1.30258155 - 92 807 1.42108202 - 93 807 1.54312694 - 94 807 1.6514498 - 95 807 1.76157618 - 96 807 2.17849255 - 97 807 2.58366728 - 98 807 2.96810865 - 99 807 3.50513363 - 100 807 3.99079132 - 101 807 4.30651999 - 102 807 4.25636578 - 103 807 4.23301506 - 104 807 4.19980621 - 105 807 4.15483761 - 106 807 4.12122917 - 107 807 4.0553751 - 108 807 3.96353841 - 109 807 3.87177753 - 11 806 -1.38298869 - 12 806 -1.36103845 - 13 806 -1.24716735 - 14 806 -1.01928663 - 15 806 -0.78879571 - 16 806 -0.643151045 - 17 806 -0.587653518 - 18 806 -0.542427421 - 19 806 -0.633170128 - 20 806 -0.71402365 - 21 806 -0.83610481 - 22 806 -0.965629935 - 23 806 -1.12627089 - 24 806 -1.26839101 - 25 806 -1.39405119 - 26 806 -1.48889196 - 27 806 -1.57667029 - 28 806 -1.61660635 - 29 806 -1.62812531 - 30 806 -1.62014389 - 31 806 -1.59092367 - 32 806 -1.56944275 - 33 806 -1.54693294 - 34 806 -1.52239788 - 35 806 -1.51502478 - 36 806 -1.51411068 - 37 806 -1.50110686 - 38 806 -1.4955492 - 39 806 -1.49305999 - 40 806 -1.4829452 - 41 806 -1.53483975 - 42 806 -1.56727111 - 43 806 -1.589522 - 44 806 -1.60499632 - 45 806 -1.62817991 - 46 806 -1.65449977 - 47 806 -1.68148267 - 48 806 -1.70316505 - 49 806 -1.74385512 - 50 806 -1.78646064 - 51 806 -1.82958353 - 52 806 -1.81946683 - 53 806 -1.79593599 - 54 806 -1.77103472 - 55 806 -1.72951174 - 56 806 -1.68352425 - 57 806 -1.64020693 - 58 806 -1.59359193 - 59 806 -1.53561926 - 60 806 -1.47407722 - 61 806 -1.40741169 - 62 806 -1.34630907 - 63 806 -1.23858595 - 64 806 -1.14763033 - 65 806 -1.05796313 - 66 806 -0.939278781 - 67 806 -0.791416109 - 68 806 -0.653643191 - 69 806 -0.597586632 - 70 806 -0.465793699 - 71 806 -0.368727893 - 72 806 -0.293130368 - 73 806 -0.241926759 - 74 806 -0.222135007 - 75 806 -0.216776609 - 76 806 -0.206911623 - 77 806 -0.174440667 - 78 806 -0.115598999 - 79 806 -0.0310419928 - 80 806 0.0685588717 - 81 806 0.173346043 - 82 806 0.281069309 - 83 806 0.374922693 - 84 806 0.457918227 - 85 806 0.535243332 - 86 806 0.633704305 - 87 806 0.732575953 - 88 806 0.846347332 - 89 806 0.95953095 - 90 806 1.07346463 - 91 806 1.1986419 - 92 806 1.33182549 - 93 806 1.46880448 - 94 806 1.59195232 - 95 806 1.72564065 - 96 806 2.16012597 - 97 806 2.57538056 - 98 806 2.96607208 - 99 806 3.49217153 - 100 806 3.97809196 - 101 806 4.48807669 - 102 806 4.26131487 - 103 806 4.23262262 - 104 806 4.19602776 - 105 806 4.18066168 - 106 806 4.11432171 - 107 806 4.04037523 - 108 806 3.93788099 - 109 806 3.84690166 - 11 805 -1.33109021 - 12 805 -1.19686174 - 13 805 -0.972935617 - 14 805 -0.737937331 - 15 805 -0.550952792 - 16 805 -0.470192552 - 17 805 -0.466974318 - 18 805 -0.476925462 - 19 805 -0.583136439 - 20 805 -0.683038771 - 21 805 -0.802283525 - 22 805 -0.936774492 - 23 805 -1.09274447 - 24 805 -1.23888612 - 25 805 -1.36195695 - 26 805 -1.46426797 - 27 805 -1.55084705 - 28 805 -1.59524453 - 29 805 -1.61850286 - 30 805 -1.61853409 - 31 805 -1.59225285 - 32 805 -1.56599057 - 33 805 -1.53470743 - 34 805 -1.51036751 - 35 805 -1.49561262 - 36 805 -1.48744178 - 37 805 -1.47592521 - 38 805 -1.4695009 - 39 805 -1.46863854 - 40 805 -1.49732339 - 41 805 -1.53721488 - 42 805 -1.59476972 - 43 805 -1.5973835 - 44 805 -1.61514139 - 45 805 -1.64201689 - 46 805 -1.67177391 - 47 805 -1.69847095 - 48 805 -1.7246418 - 49 805 -1.76367366 - 50 805 -1.80761707 - 51 805 -1.85758889 - 52 805 -1.84695649 - 53 805 -1.82246578 - 54 805 -1.78801119 - 55 805 -1.74326611 - 56 805 -1.6960448 - 57 805 -1.64736605 - 58 805 -1.59380627 - 59 805 -1.53104305 - 60 805 -1.4626466 - 61 805 -1.40243173 - 62 805 -1.33345509 - 63 805 -1.23067772 - 64 805 -1.15587795 - 65 805 -1.06372046 - 66 805 -0.939654768 - 67 805 -0.807082415 - 68 805 -0.678183496 - 69 805 -0.626469731 - 70 805 -0.518796086 - 71 805 -0.427863151 - 72 805 -0.352384269 - 73 805 -0.29925099 - 74 805 -0.274207324 - 75 805 -0.265788287 - 76 805 -0.253467619 - 77 805 -0.225356907 - 78 805 -0.171736822 - 79 805 -0.0880472437 - 80 805 0.0151228029 - 81 805 0.120685637 - 82 805 0.234894142 - 83 805 0.318581283 - 84 805 0.382406205 - 85 805 0.43837899 - 86 805 0.513799906 - 87 805 0.588174522 - 88 805 0.691277862 - 89 805 0.830831468 - 90 805 0.966895938 - 91 805 1.10839796 - 92 805 1.25718653 - 93 805 1.40173554 - 94 805 1.54191601 - 95 805 1.71455157 - 96 805 2.16960645 - 97 805 2.58804393 - 98 805 3.00487709 - 99 805 3.50520396 - 100 805 3.96147299 - 101 805 4.26693392 - 102 805 4.27983046 - 103 805 4.24193001 - 104 805 4.20085907 - 105 805 4.15676928 - 106 805 4.10000658 - 107 805 4.01880121 - 108 805 3.91021109 - 109 805 3.8174386 - 11 804 -1.18919718 - 12 804 -0.953304231 - 13 804 -0.670155466 - 14 804 -0.411249697 - 15 804 -0.243275076 - 16 804 -0.215035811 - 17 804 -0.409941107 - 18 804 -0.447109073 - 19 804 -0.566716969 - 20 804 -0.680707693 - 21 804 -0.798711717 - 22 804 -0.924592078 - 23 804 -1.07153749 - 24 804 -1.20887637 - 25 804 -1.32933629 - 26 804 -1.44280064 - 27 804 -1.52926409 - 28 804 -1.58437538 - 29 804 -1.6087904 - 30 804 -1.61826551 - 31 804 -1.59841096 - 32 804 -1.56918049 - 33 804 -1.52746034 - 34 804 -1.49548078 - 35 804 -1.46857023 - 36 804 -1.45547593 - 37 804 -1.44282365 - 38 804 -1.43752229 - 39 804 -1.4394486 - 40 804 -1.48525453 - 41 804 -1.53736484 - 42 804 -1.59817553 - 43 804 -1.60727227 - 44 804 -1.62861669 - 45 804 -1.65759492 - 46 804 -1.68623197 - 47 804 -1.71520269 - 48 804 -1.73886383 - 49 804 -1.78001285 - 50 804 -1.82345986 - 51 804 -1.87498534 - 52 804 -1.85948098 - 53 804 -1.83417475 - 54 804 -1.79742575 - 55 804 -1.7499404 - 56 804 -1.70269728 - 57 804 -1.65059507 - 58 804 -1.59180093 - 59 804 -1.52983797 - 60 804 -1.46320522 - 61 804 -1.40133607 - 62 804 -1.33170795 - 63 804 -1.24542093 - 64 804 -1.16732514 - 65 804 -1.0739373 - 66 804 -0.944658697 - 67 804 -0.809189796 - 68 804 -0.730431437 - 69 804 -0.645524025 - 70 804 -0.546323299 - 71 804 -0.459890991 - 72 804 -0.389626712 - 73 804 -0.344927371 - 74 804 -0.318507433 - 75 804 -0.312524408 - 76 804 -0.299664795 - 77 804 -0.270999163 - 78 804 -0.214967504 - 79 804 -0.132861331 - 80 804 -0.0279211421 - 81 804 0.0801134333 - 82 804 0.194214448 - 83 804 0.270900846 - 84 804 0.321715534 - 85 804 0.366111428 - 86 804 0.427559406 - 87 804 0.490137517 - 88 804 0.58779496 - 89 804 0.734814465 - 90 804 0.885568559 - 91 804 1.03609324 - 92 804 1.18695164 - 93 804 1.32032347 - 94 804 1.49576688 - 95 804 1.83208942 - 96 804 2.19892335 - 97 804 2.57536411 - 98 804 3.06570721 - 99 804 3.54617691 - 100 804 3.9548049 - 101 804 4.19503975 - 102 804 4.21790075 - 103 804 4.18529463 - 104 804 4.14921236 - 105 804 4.11699247 - 106 804 4.06967688 - 107 804 3.98823261 - 108 804 3.88714862 - 109 804 3.79957843 - 11 803 -0.950640678 - 12 803 -0.66407001 - 13 803 -0.350222349 - 14 803 -0.0887623727 - 15 803 0.0591643229 - 16 803 -0.00245677214 - 17 803 -0.289103687 - 18 803 -0.455613464 - 19 803 -0.585379601 - 20 803 -0.706464529 - 21 803 -0.819767892 - 22 803 -0.941031337 - 23 803 -1.0693202 - 24 803 -1.20374596 - 25 803 -1.3292377 - 26 803 -1.4409349 - 27 803 -1.53148568 - 28 803 -1.58821321 - 29 803 -1.6106596 - 30 803 -1.61756289 - 31 803 -1.60598469 - 32 803 -1.57367229 - 33 803 -1.52399743 - 34 803 -1.48482358 - 35 803 -1.44568789 - 36 803 -1.41773379 - 37 803 -1.40651596 - 38 803 -1.40380549 - 39 803 -1.40962052 - 40 803 -1.46442986 - 41 803 -1.52825773 - 42 803 -1.59375298 - 43 803 -1.61381662 - 44 803 -1.64173555 - 45 803 -1.67053366 - 46 803 -1.70209956 - 47 803 -1.7310847 - 48 803 -1.75659907 - 49 803 -1.79080272 - 50 803 -1.83297169 - 51 803 -1.87855077 - 52 803 -1.8587178 - 53 803 -1.83169234 - 54 803 -1.79354107 - 55 803 -1.75012887 - 56 803 -1.70550144 - 57 803 -1.65031433 - 58 803 -1.59071887 - 59 803 -1.52914608 - 60 803 -1.46739078 - 61 803 -1.40459335 - 62 803 -1.33731401 - 63 803 -1.26139987 - 64 803 -1.1801008 - 65 803 -1.08608735 - 66 803 -0.960675061 - 67 803 -0.830617309 - 68 803 -0.765171468 - 69 803 -0.681221902 - 70 803 -0.581048429 - 71 803 -0.494472057 - 72 803 -0.429379284 - 73 803 -0.388696045 - 74 803 -0.358517468 - 75 803 -0.349433482 - 76 803 -0.335767329 - 77 803 -0.307602108 - 78 803 -0.248581693 - 79 803 -0.158033177 - 80 803 -0.0594554432 - 81 803 0.0603356026 - 82 803 0.172304288 - 83 803 0.23905234 - 84 803 0.293704689 - 85 803 0.327476412 - 86 803 0.375177711 - 87 803 0.432379007 - 88 803 0.534199059 - 89 803 0.67531544 - 90 803 0.836103201 - 91 803 0.988598347 - 92 803 1.12950122 - 93 803 1.27312064 - 94 803 1.4720583 - 95 803 1.84056544 - 96 803 2.2326138 - 97 803 2.64985132 - 98 803 3.12833953 - 99 803 3.59504032 - 100 803 3.99103642 - 101 803 4.16093397 - 102 803 4.14486361 - 103 803 4.11923599 - 104 803 4.09236526 - 105 803 4.07147503 - 106 803 4.0289669 - 107 803 3.96006083 - 108 803 3.87134981 - 109 803 3.77904606 - 11 802 -0.735646784 - 12 802 -0.429429859 - 13 802 -0.0817423537 - 14 802 0.191036388 - 15 802 0.164633557 - 16 802 -0.109633468 - 17 802 -0.338921577 - 18 802 -0.523842454 - 19 802 -0.671017766 - 20 802 -0.782941222 - 21 802 -0.882369936 - 22 802 -0.987433672 - 23 802 -1.1025033 - 24 802 -1.22846615 - 25 802 -1.35973859 - 26 802 -1.46890128 - 27 802 -1.55289781 - 28 802 -1.61104143 - 29 802 -1.63869667 - 30 802 -1.62992907 - 31 802 -1.62448812 - 32 802 -1.57892859 - 33 802 -1.53318107 - 34 802 -1.48564684 - 35 802 -1.4344486 - 36 802 -1.38484073 - 37 802 -1.36162531 - 38 802 -1.35658824 - 39 802 -1.36235189 - 40 802 -1.43842018 - 41 802 -1.51526713 - 42 802 -1.59394038 - 43 802 -1.62645805 - 44 802 -1.65773439 - 45 802 -1.69180977 - 46 802 -1.71760571 - 47 802 -1.7385335 - 48 802 -1.75724316 - 49 802 -1.79813612 - 50 802 -1.83771789 - 51 802 -1.87868798 - 52 802 -1.85787404 - 53 802 -1.829669 - 54 802 -1.79422748 - 55 802 -1.7560674 - 56 802 -1.71318793 - 57 802 -1.6606195 - 58 802 -1.60517001 - 59 802 -1.54258895 - 60 802 -1.4833678 - 61 802 -1.42081511 - 62 802 -1.35195899 - 63 802 -1.28077734 - 64 802 -1.19674408 - 65 802 -1.10146189 - 66 802 -0.985413074 - 67 802 -0.859415293 - 68 802 -0.843373179 - 69 802 -0.72160387 - 70 802 -0.61293608 - 71 802 -0.529367924 - 72 802 -0.468689322 - 73 802 -0.428695202 - 74 802 -0.399107069 - 75 802 -0.386910647 - 76 802 -0.365469962 - 77 802 -0.330679923 - 78 802 -0.26800251 - 79 802 -0.186203942 - 80 802 -0.075903073 - 81 802 0.0468700267 - 82 802 0.151288301 - 83 802 0.213776454 - 84 802 0.264339447 - 85 802 0.295742512 - 86 802 0.331813335 - 87 802 0.385703474 - 88 802 0.495817214 - 89 802 0.638017595 - 90 802 0.80371964 - 91 802 0.955765545 - 92 802 1.08904684 - 93 802 1.24479055 - 94 802 1.42768943 - 95 802 1.82730031 - 96 802 2.24878359 - 97 802 2.69872975 - 98 802 3.18785667 - 99 802 3.6352942 - 100 802 3.97938895 - 101 802 4.06677675 - 102 802 4.07628918 - 103 802 4.05312014 - 104 802 4.04043484 - 105 802 4.03514671 - 106 802 3.99498749 - 107 802 3.92747784 - 108 802 3.84780788 - 109 802 3.75421906 - 11 801 -0.574359536 - 12 801 -0.276037782 - 13 801 0.0542375632 - 14 801 0.483635485 - 15 801 0.0502277985 - 16 801 -0.196743339 - 17 801 -0.463142753 - 18 801 -0.687736034 - 19 801 -0.841510057 - 20 801 -0.934367478 - 21 801 -1.00083256 - 22 801 -1.06775129 - 23 801 -1.15768492 - 24 801 -1.26609504 - 25 801 -1.3924818 - 26 801 -1.49563313 - 27 801 -1.58257747 - 28 801 -1.63780892 - 29 801 -1.67856383 - 30 801 -1.6538012 - 31 801 -1.64258337 - 32 801 -1.59109461 - 33 801 -1.54813612 - 34 801 -1.49239779 - 35 801 -1.43148768 - 36 801 -1.36620295 - 37 801 -1.327389 - 38 801 -1.31062043 - 39 801 -1.31141102 - 40 801 -1.41356754 - 41 801 -1.50359428 - 42 801 -1.58730936 - 43 801 -1.63965309 - 44 801 -1.68641722 - 45 801 -1.71876073 - 46 801 -1.73757446 - 47 801 -1.74985909 - 48 801 -1.76408839 - 49 801 -1.80362976 - 50 801 -1.84088814 - 51 801 -1.87692475 - 52 801 -1.85539556 - 53 801 -1.82864845 - 54 801 -1.79667866 - 55 801 -1.75807226 - 56 801 -1.71462011 - 57 801 -1.66293538 - 58 801 -1.6117872 - 59 801 -1.5509845 - 60 801 -1.49795175 - 61 801 -1.43445909 - 62 801 -1.36549461 - 63 801 -1.29431784 - 64 801 -1.21487641 - 65 801 -1.1180315 - 66 801 -1.00297368 - 67 801 -0.874288797 - 68 801 -0.869208515 - 69 801 -0.751220345 - 70 801 -0.638254821 - 71 801 -0.562760532 - 72 801 -0.508846581 - 73 801 -0.462053835 - 74 801 -0.433705926 - 75 801 -0.421405286 - 76 801 -0.395786732 - 77 801 -0.3501333 - 78 801 -0.283708185 - 79 801 -0.20121029 - 80 801 -0.0895139128 - 81 801 0.0342539363 - 82 801 0.126375943 - 83 801 0.182208106 - 84 801 0.22964865 - 85 801 0.260843962 - 86 801 0.294748247 - 87 801 0.354162067 - 88 801 0.479952931 - 89 801 0.627873302 - 90 801 0.791997731 - 91 801 0.941950142 - 92 801 1.05701005 - 93 801 1.18005812 - 94 801 1.37086749 - 95 801 1.7953012 - 96 801 2.24175 - 97 801 2.71537971 - 98 801 3.22259784 - 99 801 3.6871419 - 100 801 3.91554809 - 101 801 3.95307636 - 102 801 3.97781849 - 103 801 3.97528839 - 104 801 3.98345828 - 105 801 3.98404622 - 106 801 3.94775033 - 107 801 3.88902664 - 108 801 3.81564569 - 109 801 3.73614955 - 11 800 -0.438291192 - 12 800 -0.222987473 - 13 800 0.063791275 - 14 800 0.359441161 - 15 800 -0.0578263402 - 16 800 -0.333665699 - 17 800 -0.632321954 - 18 800 -0.882116497 - 19 800 -1.06091249 - 20 800 -1.14776504 - 21 800 -1.18791151 - 22 800 -1.20804572 - 23 800 -1.26012921 - 24 800 -1.3454603 - 25 800 -1.45689201 - 26 800 -1.55437434 - 27 800 -1.63372302 - 28 800 -1.67777872 - 29 800 -1.72117221 - 30 800 -1.70749545 - 31 800 -1.68963516 - 32 800 -1.64224255 - 33 800 -1.59491396 - 34 800 -1.52182651 - 35 800 -1.45154524 - 36 800 -1.37376988 - 37 800 -1.32283139 - 38 800 -1.29162443 - 39 800 -1.28104627 - 40 800 -1.39992607 - 41 800 -1.49849153 - 42 800 -1.58379686 - 43 800 -1.64285815 - 44 800 -1.70511055 - 45 800 -1.74273407 - 46 800 -1.75564301 - 47 800 -1.7660042 - 48 800 -1.77282882 - 49 800 -1.81140673 - 50 800 -1.84596336 - 51 800 -1.87387061 - 52 800 -1.85137403 - 53 800 -1.83170509 - 54 800 -1.80390286 - 55 800 -1.75733495 - 56 800 -1.71187401 - 57 800 -1.65627968 - 58 800 -1.60185456 - 59 800 -1.5413146 - 60 800 -1.4872179 - 61 800 -1.41924334 - 62 800 -1.35285354 - 63 800 -1.28492093 - 64 800 -1.20905709 - 65 800 -1.11433232 - 66 800 -1.00587201 - 67 800 -0.883681178 - 68 800 -0.894083679 - 69 800 -0.768670022 - 70 800 -0.662748814 - 71 800 -0.591712356 - 72 800 -0.540926754 - 73 800 -0.498380005 - 74 800 -0.474418938 - 75 800 -0.464285642 - 76 800 -0.43865636 - 77 800 -0.384338737 - 78 800 -0.31806615 - 79 800 -0.233064115 - 80 800 -0.123724118 - 81 800 -0.00482360786 - 82 800 0.0799892247 - 83 800 0.142115936 - 84 800 0.180212989 - 85 800 0.221668795 - 86 800 0.258849829 - 87 800 0.334435284 - 88 800 0.479518861 - 89 800 0.63116771 - 90 800 0.792969167 - 91 800 0.932905436 - 92 800 1.03458881 - 93 800 1.11532736 - 94 800 1.2928896 - 95 800 1.74869227 - 96 800 2.21644473 - 97 800 2.69536996 - 98 800 3.20177555 - 99 800 3.62155485 - 100 800 3.79426098 - 101 800 3.84202456 - 102 800 3.86706376 - 103 800 3.88425016 - 104 800 3.92342901 - 105 800 3.91943002 - 106 800 3.88607645 - 107 800 3.83504915 - 108 800 3.76517701 - 109 800 3.69254899 - 11 799 -0.46985516 - 12 799 -0.1556032 - 13 799 0.105594009 - 14 799 0.195360616 - 15 799 -0.192017749 - 16 799 -0.487930834 - 17 799 -0.830826461 - 18 799 -1.08220053 - 19 799 -1.27692032 - 20 799 -1.36128557 - 21 799 -1.39693689 - 22 799 -1.40544856 - 23 799 -1.43164682 - 24 799 -1.48881292 - 25 799 -1.55699301 - 26 799 -1.6411674 - 27 799 -1.7092123 - 28 799 -1.74693251 - 29 799 -1.7762928 - 30 799 -1.76880705 - 31 799 -1.75404382 - 32 799 -1.71413124 - 33 799 -1.67021084 - 34 799 -1.58915317 - 35 799 -1.50136364 - 36 799 -1.41361654 - 37 799 -1.34533679 - 38 799 -1.29959607 - 39 799 -1.28399694 - 40 799 -1.40427983 - 41 799 -1.50586021 - 42 799 -1.59243608 - 43 799 -1.65697491 - 44 799 -1.72328663 - 45 799 -1.75785375 - 46 799 -1.7630347 - 47 799 -1.77061403 - 48 799 -1.77805376 - 49 799 -1.82783055 - 50 799 -1.85754728 - 51 799 -1.87518263 - 52 799 -1.85128617 - 53 799 -1.83373535 - 54 799 -1.80346286 - 55 799 -1.75884175 - 56 799 -1.70242965 - 57 799 -1.6390692 - 58 799 -1.57266366 - 59 799 -1.51079309 - 60 799 -1.45302403 - 61 799 -1.38412309 - 62 799 -1.32114255 - 63 799 -1.25933599 - 64 799 -1.17834425 - 65 799 -1.0942322 - 66 799 -1.00044799 - 67 799 -0.885130644 - 68 799 -0.904167652 - 69 799 -0.79300648 - 70 799 -0.700954914 - 71 799 -0.636076331 - 72 799 -0.582232475 - 73 799 -0.549905419 - 74 799 -0.533147097 - 75 799 -0.52145201 - 76 799 -0.490202039 - 77 799 -0.439360827 - 78 799 -0.375588745 - 79 799 -0.292394578 - 80 799 -0.186520755 - 81 799 -0.0735440701 - 82 799 0.012439575 - 83 799 0.0876822099 - 84 799 0.130104333 - 85 799 0.18013376 - 86 799 0.235403419 - 87 799 0.330266684 - 88 799 0.484717458 - 89 799 0.638332248 - 90 799 0.80360955 - 91 799 0.930040956 - 92 799 1.02361369 - 93 799 1.07377243 - 94 799 1.19582617 - 95 799 1.69798756 - 96 799 2.19128156 - 97 799 2.65859938 - 98 799 3.13636851 - 99 799 3.6135335 - 100 799 3.66181183 - 101 799 3.70480776 - 102 799 3.73773956 - 103 799 3.77723551 - 104 799 3.81585956 - 105 799 3.82001877 - 106 799 3.79719758 - 107 799 3.76150131 - 108 799 3.70352077 - 109 799 3.64231658 - 11 798 -0.383366406 - 12 798 -0.166155934 - 13 798 0.132050559 - 14 798 -0.0751915723 - 15 798 -0.334210157 - 16 798 -0.647198439 - 17 798 -1.03165722 - 18 798 -1.26728749 - 19 798 -1.43801105 - 20 798 -1.52071476 - 21 798 -1.56400871 - 22 798 -1.59542227 - 23 798 -1.6170013 - 24 798 -1.67804134 - 25 798 -1.73486948 - 26 798 -1.7799046 - 27 798 -1.82120395 - 28 798 -1.84142864 - 29 798 -1.84512436 - 30 798 -1.84782362 - 31 798 -1.83938515 - 32 798 -1.80913019 - 33 798 -1.76583731 - 34 798 -1.68619955 - 35 798 -1.57758534 - 36 798 -1.47772837 - 37 798 -1.39879429 - 38 798 -1.33614981 - 39 798 -1.3094964 - 40 798 -1.42949402 - 41 798 -1.52941096 - 42 798 -1.61252737 - 43 798 -1.67888653 - 44 798 -1.7452625 - 45 798 -1.77854764 - 46 798 -1.77937031 - 47 798 -1.78823781 - 48 798 -1.81689215 - 49 798 -1.84878528 - 50 798 -1.89091599 - 51 798 -1.88620412 - 52 798 -1.86611664 - 53 798 -1.85106635 - 54 798 -1.81133103 - 55 798 -1.76438284 - 56 798 -1.69961131 - 57 798 -1.63020694 - 58 798 -1.55650055 - 59 798 -1.48727846 - 60 798 -1.41622567 - 61 798 -1.33921826 - 62 798 -1.28353715 - 63 798 -1.22729397 - 64 798 -1.15478861 - 65 798 -1.08673537 - 66 798 -1.00452983 - 67 798 -0.889486551 - 68 798 -0.903692424 - 69 798 -0.819401026 - 70 798 -0.742981791 - 71 798 -0.687864423 - 72 798 -0.644495428 - 73 798 -0.621795118 - 74 798 -0.598887861 - 75 798 -0.585054159 - 76 798 -0.547078788 - 77 798 -0.500366688 - 78 798 -0.432608634 - 79 798 -0.348642945 - 80 798 -0.251239717 - 81 798 -0.149383917 - 82 798 -0.0685969219 - 83 798 0.0088503724 - 84 798 0.0617225021 - 85 798 0.133780494 - 86 798 0.214337379 - 87 798 0.334214687 - 88 798 0.491241157 - 89 798 0.638931394 - 90 798 0.799774349 - 91 798 0.921999216 - 92 798 1.01354432 - 93 798 1.05575705 - 94 798 1.06929243 - 95 798 1.69237268 - 96 798 2.19023895 - 97 798 2.64367795 - 98 798 3.07947135 - 99 798 3.43724966 - 100 798 3.51192689 - 101 798 3.5602746 - 102 798 3.60289097 - 103 798 3.65690756 - 104 798 3.68892121 - 105 798 3.69758916 - 106 798 3.68784785 - 107 798 3.6658752 - 108 798 3.61777568 - 109 798 3.57063007 - 11 797 -0.409173042 - 12 797 -0.207935721 - 13 797 -0.1579445 - 14 797 -0.280748218 - 15 797 -0.53755343 - 16 797 -0.851378262 - 17 797 -1.19471037 - 18 797 -1.42566347 - 19 797 -1.57810879 - 20 797 -1.64851701 - 21 797 -1.68352866 - 22 797 -1.73084462 - 23 797 -1.76786566 - 24 797 -1.84546912 - 25 797 -1.89665568 - 26 797 -1.91271961 - 27 797 -1.9221288 - 28 797 -1.93122649 - 29 797 -1.90976214 - 30 797 -1.93082845 - 31 797 -1.92641497 - 32 797 -1.89927375 - 33 797 -1.85863125 - 34 797 -1.78148961 - 35 797 -1.66714585 - 36 797 -1.5592128 - 37 797 -1.46653306 - 38 797 -1.3922801 - 39 797 -1.35417223 - 40 797 -1.48350644 - 41 797 -1.5688684 - 42 797 -1.64195287 - 43 797 -1.70528316 - 44 797 -1.76740992 - 45 797 -1.79980254 - 46 797 -1.80483353 - 47 797 -1.81201541 - 48 797 -1.83704853 - 49 797 -1.87232029 - 50 797 -1.90941215 - 51 797 -1.89842379 - 52 797 -1.8848027 - 53 797 -1.87006497 - 54 797 -1.81858206 - 55 797 -1.77209425 - 56 797 -1.69968021 - 57 797 -1.62095106 - 58 797 -1.53859484 - 59 797 -1.46260464 - 60 797 -1.38234663 - 61 797 -1.30987847 - 62 797 -1.25639164 - 63 797 -1.19998443 - 64 797 -1.14602053 - 65 797 -1.09631443 - 66 797 -1.02290142 - 67 797 -0.912280262 - 68 797 -0.925359666 - 69 797 -0.855294645 - 70 797 -0.793163598 - 71 797 -0.751176298 - 72 797 -0.730811357 - 73 797 -0.691418409 - 74 797 -0.671160221 - 75 797 -0.650562704 - 76 797 -0.602794588 - 77 797 -0.554640174 - 78 797 -0.481569707 - 79 797 -0.391131341 - 80 797 -0.302808464 - 81 797 -0.214071661 - 82 797 -0.130040154 - 83 797 -0.0523867197 - 84 797 0.00893631019 - 85 797 0.0957782865 - 86 797 0.199188694 - 87 797 0.342514127 - 88 797 0.499818772 - 89 797 0.65251708 - 90 797 0.803052425 - 91 797 0.920394719 - 92 797 0.99043256 - 93 797 1.04748237 - 94 797 1.22396433 - 95 797 1.74790406 - 96 797 2.23495054 - 97 797 2.66759634 - 98 797 3.05963993 - 99 797 3.29301882 - 100 797 3.3658812 - 101 797 3.41904807 - 102 797 3.47932935 - 103 797 3.53700805 - 104 797 3.56725669 - 105 797 3.58404994 - 106 797 3.58002019 - 107 797 3.56716037 - 108 797 3.53089571 - 109 797 3.49434304 - 10 796 -0.506196976 - 11 796 -0.457462102 - 12 796 -0.400882006 - 13 796 -0.40713641 - 14 796 -0.566563666 - 15 796 -0.814684868 - 16 796 -1.06454825 - 17 796 -1.3204608 - 18 796 -1.53281486 - 19 796 -1.67118394 - 20 796 -1.75098276 - 21 796 -1.77689588 - 22 796 -1.82721126 - 23 796 -1.87441051 - 24 796 -1.94075918 - 25 796 -1.98974597 - 26 796 -2.02034855 - 27 796 -2.00623512 - 28 796 -1.99036217 - 29 796 -1.98120344 - 30 796 -1.99760389 - 31 796 -1.995579 - 32 796 -1.98279381 - 33 796 -1.93885148 - 34 796 -1.86065757 - 35 796 -1.75869858 - 36 796 -1.65497792 - 37 796 -1.55748475 - 38 796 -1.47453701 - 39 796 -1.50361788 - 40 796 -1.55590641 - 41 796 -1.62046587 - 42 796 -1.68062449 - 43 796 -1.73429418 - 44 796 -1.78125536 - 45 796 -1.80854368 - 46 796 -1.80694997 - 47 796 -1.81419599 - 48 796 -1.85276425 - 49 796 -1.8908242 - 50 796 -1.9315654 - 51 796 -1.91280568 - 52 796 -1.90051079 - 53 796 -1.88281202 - 54 796 -1.82593846 - 55 796 -1.77536523 - 56 796 -1.69802642 - 57 796 -1.61306798 - 58 796 -1.52719736 - 59 796 -1.44910169 - 60 796 -1.36754537 - 61 796 -1.30441606 - 62 796 -1.25508893 - 63 796 -1.20710742 - 64 796 -1.1708957 - 65 796 -1.13295853 - 66 796 -1.04653347 - 67 796 -0.946835697 - 68 796 -0.991882086 - 69 796 -0.907253385 - 70 796 -0.857512295 - 71 796 -0.823267519 - 72 796 -0.804110527 - 73 796 -0.763707876 - 74 796 -0.750061393 - 75 796 -0.702572942 - 76 796 -0.644930363 - 77 796 -0.587740064 - 78 796 -0.506359756 - 79 796 -0.41400978 - 80 796 -0.332631946 - 81 796 -0.245438084 - 82 796 -0.159433842 - 83 796 -0.090728268 - 84 796 -0.016196534 - 85 796 0.0846680552 - 86 796 0.200235203 - 87 796 0.352727503 - 88 796 0.513082802 - 89 796 0.673634231 - 90 796 0.803535342 - 91 796 0.897642732 - 92 796 0.967065394 - 93 796 1.08657598 - 94 796 1.35930073 - 95 796 1.8917619 - 96 796 2.33177114 - 97 796 2.72469544 - 98 796 3.05788708 - 99 796 3.1638577 - 100 796 3.23731852 - 101 796 3.31335902 - 102 796 3.38036442 - 103 796 3.4340198 - 104 796 3.46310568 - 105 796 3.48647428 - 106 796 3.47898602 - 107 796 3.47218275 - 108 796 3.44368434 - 109 796 3.41750669 - 10 795 -0.567489922 - 11 795 -0.587553382 - 12 795 -0.590157926 - 13 795 -0.606567085 - 14 795 -0.876754224 - 15 795 -1.10747111 - 16 795 -1.3104682 - 17 795 -1.51410389 - 18 795 -1.69258142 - 19 795 -1.79209602 - 20 795 -1.8355267 - 21 795 -1.84750187 - 22 795 -1.88015175 - 23 795 -1.9343133 - 24 795 -1.98506916 - 25 795 -2.02915621 - 26 795 -2.05518746 - 27 795 -2.04208589 - 28 795 -2.01606536 - 29 795 -2.0210135 - 30 795 -2.03787589 - 31 795 -2.03907514 - 32 795 -2.0309031 - 33 795 -1.99822736 - 34 795 -1.92239439 - 35 795 -1.83240271 - 36 795 -1.72671819 - 37 795 -1.62597394 - 38 795 -1.54993784 - 39 795 -1.58564007 - 40 795 -1.635432 - 41 795 -1.69853437 - 42 795 -1.72826219 - 43 795 -1.75872922 - 44 795 -1.78803611 - 45 795 -1.80905879 - 46 795 -1.81615865 - 47 795 -1.82368481 - 48 795 -1.86421585 - 49 795 -1.90738606 - 50 795 -1.95145512 - 51 795 -1.93438673 - 52 795 -1.92264068 - 53 795 -1.90286136 - 54 795 -1.84641016 - 55 795 -1.79128325 - 56 795 -1.70762944 - 57 795 -1.62183392 - 58 795 -1.53280282 - 59 795 -1.45983946 - 60 795 -1.38583887 - 61 795 -1.33425295 - 62 795 -1.29096973 - 63 795 -1.24147606 - 64 795 -1.21190822 - 65 795 -1.18274486 - 66 795 -1.09245563 - 67 795 -1.06970131 - 68 795 -1.0351553 - 69 795 -0.973328531 - 70 795 -0.924093664 - 71 795 -0.893688321 - 72 795 -0.854484558 - 73 795 -0.825303674 - 74 795 -0.794954002 - 75 795 -0.732771456 - 76 795 -0.671351254 - 77 795 -0.611729801 - 78 795 -0.5149979 - 79 795 -0.424904168 - 80 795 -0.345806777 - 81 795 -0.261963725 - 82 795 -0.175064698 - 83 795 -0.105358154 - 84 795 -0.0217507333 - 85 795 0.0893921703 - 86 795 0.214569792 - 87 795 0.363659024 - 88 795 0.527199388 - 89 795 0.678399861 - 90 795 0.780700624 - 91 795 0.83469528 - 92 795 0.999756515 - 93 795 1.26293755 - 94 795 1.67169929 - 95 795 2.07886267 - 96 795 2.49271464 - 97 795 2.82236648 - 98 795 2.98085332 - 99 795 3.06972098 - 100 795 3.1440897 - 101 795 3.23579168 - 102 795 3.30145431 - 103 795 3.33969808 - 104 795 3.36977172 - 105 795 3.38870978 - 106 795 3.37465262 - 107 795 3.36754322 - 108 795 3.34302211 - 109 795 3.32200718 - 10 794 -0.682154 - 11 794 -0.744010568 - 12 794 -0.776297688 - 13 794 -0.835885048 - 14 794 -1.11760581 - 15 794 -1.3406986 - 16 794 -1.53965807 - 17 794 -1.73797011 - 18 794 -1.86182463 - 19 794 -1.91540706 - 20 794 -1.93133092 - 21 794 -1.93099988 - 22 794 -1.94411409 - 23 794 -1.9742167 - 24 794 -2.00678492 - 25 794 -2.04324007 - 26 794 -2.06114936 - 27 794 -2.05648971 - 28 794 -2.0358963 - 29 794 -2.04298615 - 30 794 -2.05299211 - 31 794 -2.06062794 - 32 794 -2.05006289 - 33 794 -2.02437496 - 34 794 -1.95885384 - 35 794 -1.88152575 - 36 794 -1.78422594 - 37 794 -1.68899012 - 38 794 -1.60853362 - 39 794 -1.65507627 - 40 794 -1.70470321 - 41 794 -1.76213408 - 42 794 -1.77461326 - 43 794 -1.79035378 - 44 794 -1.79915035 - 45 794 -1.80941582 - 46 794 -1.81583428 - 47 794 -1.82519722 - 48 794 -1.87674308 - 49 794 -1.92250037 - 50 794 -1.9685874 - 51 794 -1.95692873 - 52 794 -1.94197166 - 53 794 -1.92096579 - 54 794 -1.87457621 - 55 794 -1.8186636 - 56 794 -1.73060155 - 57 794 -1.64207363 - 58 794 -1.56081796 - 59 794 -1.4885236 - 60 794 -1.42792392 - 61 794 -1.38641942 - 62 794 -1.34912014 - 63 794 -1.30911469 - 64 794 -1.28431344 - 65 794 -1.24162889 - 66 794 -1.159706 - 67 794 -1.15793681 - 68 794 -1.12712491 - 69 794 -1.05937147 - 70 794 -1.00313652 - 71 794 -0.964720905 - 72 794 -0.930240154 - 73 794 -0.896056831 - 74 794 -0.848940372 - 75 794 -0.778749406 - 76 794 -0.706789911 - 77 794 -0.626033127 - 78 794 -0.524252892 - 79 794 -0.434850723 - 80 794 -0.352776378 - 81 794 -0.272152483 - 82 794 -0.185024172 - 83 794 -0.105756104 - 84 794 -0.011935547 - 85 794 0.0985563695 - 86 794 0.229445398 - 87 794 0.376427352 - 88 794 0.531954288 - 89 794 0.661505818 - 90 794 0.764229417 - 91 794 0.9180246 - 92 794 1.17967331 - 93 794 1.50760305 - 94 794 1.8999356 - 95 794 2.28841615 - 96 794 2.69827867 - 97 794 2.885818 - 98 794 2.93534493 - 99 794 3.0103035 - 100 794 3.08307409 - 101 794 3.16881132 - 102 794 3.22332048 - 103 794 3.26760674 - 104 794 3.29331088 - 105 794 3.29864192 - 106 794 3.2731483 - 107 794 3.25765896 - 108 794 3.226928 - 109 794 3.21061635 - 10 793 -0.883767903 - 11 793 -0.920600891 - 12 793 -0.996201694 - 13 793 -1.13963759 - 14 793 -1.34904134 - 15 793 -1.56937242 - 16 793 -1.75184309 - 17 793 -1.92208147 - 18 793 -1.99907315 - 19 793 -2.04611325 - 20 793 -2.03060484 - 21 793 -2.02392077 - 22 793 -2.025599 - 23 793 -2.0343163 - 24 793 -2.04891396 - 25 793 -2.06669831 - 26 793 -2.06913137 - 27 793 -2.05900526 - 28 793 -2.0448525 - 29 793 -2.05167246 - 30 793 -2.05446982 - 31 793 -2.06821084 - 32 793 -2.05739903 - 33 793 -2.03074312 - 34 793 -1.97736514 - 35 793 -1.91712487 - 36 793 -1.83932996 - 37 793 -1.75058782 - 38 793 -1.67376649 - 39 793 -1.71962976 - 40 793 -1.76523256 - 41 793 -1.81820893 - 42 793 -1.81865084 - 43 793 -1.82018554 - 44 793 -1.81638157 - 45 793 -1.81924093 - 46 793 -1.82732296 - 47 793 -1.83818281 - 48 793 -1.89283586 - 49 793 -1.93953991 - 50 793 -1.97883451 - 51 793 -1.97351563 - 52 793 -1.95858598 - 53 793 -1.93486333 - 54 793 -1.895208 - 55 793 -1.83852732 - 56 793 -1.75400198 - 57 793 -1.67894864 - 58 793 -1.6066066 - 59 793 -1.54615247 - 60 793 -1.50222373 - 61 793 -1.4663868 - 62 793 -1.428339 - 63 793 -1.3872813 - 64 793 -1.35144627 - 65 793 -1.29420209 - 66 793 -1.22270167 - 67 793 -1.31494558 - 68 793 -1.24172044 - 69 793 -1.17187142 - 70 793 -1.11416328 - 71 793 -1.0662744 - 72 793 -1.02747536 - 73 793 -0.972173393 - 74 793 -0.903608322 - 75 793 -0.827940822 - 76 793 -0.750493169 - 77 793 -0.650444388 - 78 793 -0.544219077 - 79 793 -0.450531244 - 80 793 -0.364172727 - 81 793 -0.279115498 - 82 793 -0.195217773 - 83 793 -0.104382202 - 84 793 -0.00344824186 - 85 793 0.109335542 - 86 793 0.245469943 - 87 793 0.395463109 - 88 793 0.544038534 - 89 793 0.661593914 - 90 793 0.81545037 - 91 793 1.08558249 - 92 793 1.42118013 - 93 793 1.79935443 - 94 793 2.1243763 - 95 793 2.46446729 - 96 793 2.87522626 - 97 793 2.90466046 - 98 793 2.92756677 - 99 793 2.96411443 - 100 793 3.03052616 - 101 793 3.1033392 - 102 793 3.14837623 - 103 793 3.19863415 - 104 793 3.21922684 - 105 793 3.2129705 - 106 793 3.17652464 - 107 793 3.15238023 - 108 793 3.11785364 - 109 793 3.09983373 - 10 792 -1.02539504 - 11 792 -1.116243 - 12 792 -1.222036 - 13 792 -1.35811949 - 14 792 -1.54923081 - 15 792 -1.74807847 - 16 792 -1.9254247 - 17 792 -2.02239537 - 18 792 -2.10582709 - 19 792 -2.10032821 - 20 792 -2.09138584 - 21 792 -2.08644724 - 22 792 -2.07803226 - 23 792 -2.07817197 - 24 792 -2.07983017 - 25 792 -2.08541989 - 26 792 -2.0804801 - 27 792 -2.06678319 - 28 792 -2.05949211 - 29 792 -2.06366563 - 30 792 -2.06354499 - 31 792 -2.06966114 - 32 792 -2.05424809 - 33 792 -2.02701545 - 34 792 -1.98435926 - 35 792 -1.93497741 - 36 792 -1.87426496 - 37 792 -1.80991685 - 38 792 -1.75102866 - 39 792 -1.77955127 - 40 792 -1.82098234 - 41 792 -1.86340702 - 42 792 -1.85671997 - 43 792 -1.85490596 - 44 792 -1.84466696 - 45 792 -1.84325171 - 46 792 -1.84934986 - 47 792 -1.86156178 - 48 792 -1.91732395 - 49 792 -1.96126699 - 50 792 -1.99785352 - 51 792 -1.99305177 - 52 792 -1.9753921 - 53 792 -1.95311522 - 54 792 -1.91894233 - 55 792 -1.86334467 - 56 792 -1.79119921 - 57 792 -1.71868849 - 58 792 -1.65704286 - 59 792 -1.61414075 - 60 792 -1.57896984 - 61 792 -1.54650986 - 62 792 -1.5107125 - 63 792 -1.46139073 - 64 792 -1.41904891 - 65 792 -1.3465606 - 66 792 -1.33810842 - 67 792 -1.33944142 - 68 792 -1.35715246 - 69 792 -1.293275 - 70 792 -1.23652959 - 71 792 -1.17941523 - 72 792 -1.12782145 - 73 792 -1.06345034 - 74 792 -0.979528487 - 75 792 -0.886846006 - 76 792 -0.791421771 - 77 792 -0.677466929 - 78 792 -0.565612972 - 79 792 -0.468471557 - 80 792 -0.377519518 - 81 792 -0.285409689 - 82 792 -0.200925052 - 83 792 -0.100333378 - 84 792 0.00673828088 - 85 792 0.126982391 - 86 792 0.266557217 - 87 792 0.416221529 - 88 792 0.55367285 - 89 792 0.708249688 - 90 792 0.967646897 - 91 792 1.30496562 - 92 792 1.68961346 - 93 792 2.09732342 - 94 792 2.33464217 - 95 792 2.59629273 - 96 792 2.89159703 - 97 792 2.90140653 - 98 792 2.8999095 - 99 792 2.91104865 - 100 792 2.9698782 - 101 792 3.02387857 - 102 792 3.07048798 - 103 792 3.11194754 - 104 792 3.12787223 - 105 792 3.1199739 - 106 792 3.08814478 - 107 792 3.0544436 - 108 792 3.01440358 - 109 792 2.99084592 - 10 791 -1.25344718 - 11 791 -1.33760393 - 12 791 -1.4255482 - 13 791 -1.52958286 - 14 791 -1.68717611 - 15 791 -1.84217513 - 16 791 -1.96241486 - 17 791 -2.07092094 - 18 791 -2.08969522 - 19 791 -2.08603215 - 20 791 -2.07952094 - 21 791 -2.07859564 - 22 791 -2.08568954 - 23 791 -2.0974369 - 24 791 -2.10179496 - 25 791 -2.10353565 - 26 791 -2.09781146 - 27 791 -2.08657527 - 28 791 -2.08286428 - 29 791 -2.08764315 - 30 791 -2.09227633 - 31 791 -2.09187412 - 32 791 -2.0687921 - 33 791 -2.03499794 - 34 791 -1.99736321 - 35 791 -1.94840813 - 36 791 -1.89660537 - 37 791 -1.8472445 - 38 791 -1.80323911 - 39 791 -1.83140552 - 40 791 -1.87263298 - 41 791 -1.91929495 - 42 791 -1.90670192 - 43 791 -1.89917779 - 44 791 -1.89078271 - 45 791 -1.89058053 - 46 791 -1.8955642 - 47 791 -1.90533376 - 48 791 -1.95031834 - 49 791 -1.98920894 - 50 791 -2.023875 - 51 791 -2.02030969 - 52 791 -2.00384378 - 53 791 -1.9840405 - 54 791 -1.94919145 - 55 791 -1.90117288 - 56 791 -1.83797359 - 57 791 -1.7765249 - 58 791 -1.72495806 - 59 791 -1.69045591 - 60 791 -1.65485585 - 61 791 -1.61796761 - 62 791 -1.57578182 - 63 791 -1.51688826 - 64 791 -1.46223056 - 65 791 -1.3936758 - 66 791 -1.38869083 - 67 791 -1.40441859 - 68 791 -1.44755816 - 69 791 -1.39678049 - 70 791 -1.33709538 - 71 791 -1.28355598 - 72 791 -1.22811568 - 73 791 -1.15128875 - 74 791 -1.05725074 - 75 791 -0.95698148 - 76 791 -0.836469591 - 77 791 -0.705943346 - 78 791 -0.585835874 - 79 791 -0.484271228 - 80 791 -0.388777226 - 81 791 -0.293923706 - 82 791 -0.20302099 - 83 791 -0.0915084258 - 84 791 0.0228603818 - 85 791 0.152453095 - 86 791 0.293428183 - 87 791 0.443598568 - 88 791 0.583594501 - 89 791 0.811801672 - 90 791 1.15201044 - 91 791 1.54848123 - 92 791 1.97734714 - 93 791 2.38531446 - 94 791 2.51684976 - 95 791 2.68081784 - 96 791 2.87002516 - 97 791 2.85859489 - 98 791 2.8322649 - 99 791 2.84925365 - 100 791 2.90381765 - 101 791 2.94535565 - 102 791 2.99059248 - 103 791 3.00929523 - 104 791 3.01023555 - 105 791 2.99565935 - 106 791 2.95512176 - 107 791 2.91690111 - 108 791 2.88696361 - 109 791 2.86662436 - 10 790 -1.4413178 - 11 790 -1.50274646 - 12 790 -1.55728257 - 13 790 -1.64370298 - 14 790 -1.75413322 - 15 790 -1.8750155 - 16 790 -1.93780744 - 17 790 -1.9933095 - 18 790 -2.01784062 - 19 790 -2.03364301 - 20 790 -2.0461576 - 21 790 -2.06202531 - 22 790 -2.08772373 - 23 790 -2.10401177 - 24 790 -2.10835838 - 25 790 -2.11038423 - 26 790 -2.10734034 - 27 790 -2.09786129 - 28 790 -2.10703182 - 29 790 -2.11907816 - 30 790 -2.12776613 - 31 790 -2.1234374 - 32 790 -2.09679151 - 33 790 -2.05541706 - 34 790 -2.01148415 - 35 790 -1.9574852 - 36 790 -1.90849745 - 37 790 -1.86562729 - 38 790 -1.82859218 - 39 790 -1.8751179 - 40 790 -1.9214921 - 41 790 -1.97120166 - 42 790 -1.96294677 - 43 790 -1.9591794 - 44 790 -1.95050323 - 45 790 -1.94706297 - 46 790 -1.9485811 - 47 790 -1.95810425 - 48 790 -1.98968101 - 49 790 -2.01977682 - 50 790 -2.05328512 - 51 790 -2.04346776 - 52 790 -2.02536631 - 53 790 -2.00944233 - 54 790 -1.97981346 - 55 790 -1.94328904 - 56 790 -1.89170945 - 57 790 -1.83713472 - 58 790 -1.79404342 - 59 790 -1.74707711 - 60 790 -1.69980419 - 61 790 -1.65267658 - 62 790 -1.60474372 - 63 790 -1.53760946 - 64 790 -1.47885954 - 65 790 -1.41224039 - 66 790 -1.42558205 - 67 790 -1.44915593 - 68 790 -1.48931074 - 69 790 -1.44416261 - 70 790 -1.38836622 - 71 790 -1.34008205 - 72 790 -1.28712761 - 73 790 -1.21877766 - 74 790 -1.1260227 - 75 790 -1.01811266 - 76 790 -0.881949902 - 77 790 -0.741247535 - 78 790 -0.608354449 - 79 790 -0.495621324 - 80 790 -0.396402836 - 81 790 -0.305333972 - 82 790 -0.201804936 - 83 790 -0.0796438009 - 84 790 0.0473813787 - 85 790 0.187211394 - 86 790 0.340926617 - 87 790 0.493163884 - 88 790 0.662485838 - 89 790 0.966072917 - 90 790 1.34470093 - 91 790 1.80642295 - 92 790 2.24484801 - 93 790 2.63996768 - 94 790 2.65442777 - 95 790 2.7293179 - 96 790 2.836694 - 97 790 2.79215789 - 98 790 2.74435759 - 99 790 2.7667644 - 100 790 2.81542015 - 101 790 2.85852456 - 102 790 2.89868879 - 103 790 2.90171504 - 104 790 2.88518095 - 105 790 2.84848261 - 106 790 2.79480553 - 107 790 2.76212764 - 108 790 2.7385242 - 109 790 2.73532248 - 10 789 -1.61245835 - 11 789 -1.65002966 - 12 789 -1.67596912 - 13 789 -1.72637141 - 14 789 -1.78365266 - 15 789 -1.82356775 - 16 789 -1.86283731 - 17 789 -1.9418602 - 18 789 -1.97322452 - 19 789 -2.00259614 - 20 789 -2.03304386 - 21 789 -2.0613687 - 22 789 -2.09185195 - 23 789 -2.11148834 - 24 789 -2.11638927 - 25 789 -2.12015033 - 26 789 -2.11988521 - 27 789 -2.10943508 - 28 789 -2.12045693 - 29 789 -2.14537215 - 30 789 -2.16486669 - 31 789 -2.1672852 - 32 789 -2.13161516 - 33 789 -2.08512497 - 34 789 -2.03043795 - 35 789 -1.97585726 - 36 789 -1.9305594 - 37 789 -1.89187491 - 38 789 -1.86008537 - 39 789 -1.91581964 - 40 789 -1.96916974 - 41 789 -2.01878309 - 42 789 -2.02482176 - 43 789 -2.02864313 - 44 789 -2.02680683 - 45 789 -2.01512957 - 46 789 -2.0100491 - 47 789 -2.00871468 - 48 789 -2.00374269 - 49 789 -2.08207607 - 50 789 -2.06585264 - 51 789 -2.0505507 - 52 789 -2.03271818 - 53 789 -2.02537394 - 54 789 -2.00015092 - 55 789 -1.97320902 - 56 789 -1.93006837 - 57 789 -1.88075387 - 58 789 -1.853791 - 59 789 -1.79863238 - 60 789 -1.73833394 - 61 789 -1.68766201 - 62 789 -1.62737489 - 63 789 -1.5460099 - 64 789 -1.48480487 - 65 789 -1.42403138 - 66 789 -1.45259058 - 67 789 -1.47952545 - 68 789 -1.50523782 - 69 789 -1.45603096 - 70 789 -1.41300189 - 71 789 -1.35654569 - 72 789 -1.31712866 - 73 789 -1.255463 - 74 789 -1.17787611 - 75 789 -1.06973469 - 76 789 -0.926356137 - 77 789 -0.780866086 - 78 789 -0.63317281 - 79 789 -0.508586407 - 80 789 -0.406823486 - 81 789 -0.315645754 - 82 789 -0.199037969 - 83 789 -0.0688402131 - 84 789 0.0780374482 - 85 789 0.242599338 - 86 789 0.41658628 - 87 789 0.575373471 - 88 789 0.777978957 - 89 789 1.09566724 - 90 789 1.51516378 - 91 789 1.97291136 - 92 789 2.43147659 - 93 789 2.78976369 - 94 789 2.73207664 - 95 789 2.7422204 - 96 789 2.7823441 - 97 789 2.71507835 - 98 789 2.67704177 - 99 789 2.68920374 - 100 789 2.72658277 - 101 789 2.78223896 - 102 789 2.81368375 - 103 789 2.80999184 - 104 789 2.77615643 - 105 789 2.71980095 - 106 789 2.65513444 - 107 789 2.6169157 - 108 789 2.5970993 - 109 789 2.61588001 - 10 788 -1.77324939 - 11 788 -1.79162288 - 12 788 -1.78591633 - 13 788 -1.80669081 - 14 788 -1.81244469 - 15 788 -1.82787931 - 16 788 -1.84037054 - 17 788 -1.89037144 - 18 788 -1.91724503 - 19 788 -1.96073127 - 20 788 -2.00898623 - 21 788 -2.06255627 - 22 788 -2.10450149 - 23 788 -2.10578227 - 24 788 -2.1171 - 25 788 -2.13530231 - 26 788 -2.13323545 - 27 788 -2.12394285 - 28 788 -2.14597893 - 29 788 -2.1825645 - 30 788 -2.19224405 - 31 788 -2.18529677 - 32 788 -2.1500566 - 33 788 -2.11080265 - 34 788 -2.05215907 - 35 788 -2.00231433 - 36 788 -1.95681334 - 37 788 -1.92110491 - 38 788 -1.8973676 - 39 788 -1.95928633 - 40 788 -2.01712775 - 41 788 -2.07620692 - 42 788 -2.09863186 - 43 788 -2.10930467 - 44 788 -2.10127759 - 45 788 -2.08276606 - 46 788 -2.06843662 - 47 788 -2.05177855 - 48 788 -2.06855011 - 49 788 -2.10077143 - 50 788 -2.07990146 - 51 788 -2.05605459 - 52 788 -2.03299522 - 53 788 -2.02427745 - 54 788 -2.00045896 - 55 788 -1.9804033 - 56 788 -1.94918358 - 57 788 -1.9062891 - 58 788 -1.87827349 - 59 788 -1.8265928 - 60 788 -1.76687896 - 61 788 -1.70496488 - 62 788 -1.63554525 - 63 788 -1.5602423 - 64 788 -1.4977653 - 65 788 -1.44337022 - 66 788 -1.4788115 - 67 788 -1.50771689 - 68 788 -1.5275017 - 69 788 -1.48580909 - 70 788 -1.44005346 - 71 788 -1.39003789 - 72 788 -1.32495797 - 73 788 -1.27030265 - 74 788 -1.20984781 - 75 788 -1.10488462 - 76 788 -0.962385535 - 77 788 -0.813379526 - 78 788 -0.659402668 - 79 788 -0.524343252 - 80 788 -0.411026984 - 81 788 -0.31685254 - 82 788 -0.188864261 - 83 788 -0.0329793692 - 84 788 0.141367882 - 85 788 0.324915498 - 86 788 0.518902659 - 87 788 0.706111312 - 88 788 0.907103956 - 89 788 1.16079247 - 90 788 1.57658935 - 91 788 2.03711724 - 92 788 2.46390104 - 93 788 2.82433391 - 94 788 2.73902702 - 95 788 2.71843123 - 96 788 2.72633171 - 97 788 2.66196108 - 98 788 2.61631513 - 99 788 2.60840511 - 100 788 2.62728405 - 101 788 2.68592691 - 102 788 2.72292113 - 103 788 2.72284698 - 104 788 2.68537045 - 105 788 2.62974477 - 106 788 2.57523513 - 107 788 2.5413177 - 108 788 2.52151251 - 109 788 2.53763986 - 9 787 -1.83333039 - 10 787 -1.89586759 - 11 787 -1.92424309 - 12 787 -1.9112103 - 13 787 -1.90357363 - 14 787 -1.8715868 - 15 787 -1.85575914 - 16 787 -1.83989882 - 17 787 -1.86677873 - 18 787 -1.90386462 - 19 787 -1.95898521 - 20 787 -2.00958776 - 21 787 -2.06578708 - 22 787 -2.11175728 - 23 787 -2.10599995 - 24 787 -2.14715719 - 25 787 -2.15065479 - 26 787 -2.15084434 - 27 787 -2.15043259 - 28 787 -2.18324018 - 29 787 -2.22307801 - 30 787 -2.22856545 - 31 787 -2.2224791 - 32 787 -2.18315625 - 33 787 -2.13708591 - 34 787 -2.08958101 - 35 787 -2.0229218 - 36 787 -1.98662198 - 37 787 -1.96087003 - 38 787 -1.945243 - 39 787 -2.00602484 - 40 787 -2.06524086 - 41 787 -2.12827349 - 42 787 -2.15654111 - 43 787 -2.17357969 - 44 787 -2.1672945 - 45 787 -2.13876605 - 46 787 -2.1073215 - 47 787 -2.07170558 - 48 787 -2.10165358 - 49 787 -2.12795115 - 50 787 -2.09809089 - 51 787 -2.07403374 - 52 787 -2.04947162 - 53 787 -2.03336525 - 54 787 -2.00466895 - 55 787 -1.97936618 - 56 787 -1.95193851 - 57 787 -1.91144431 - 58 787 -1.87907076 - 59 787 -1.83125103 - 60 787 -1.78767383 - 61 787 -1.72224903 - 62 787 -1.65151799 - 63 787 -1.58010066 - 64 787 -1.522403 - 65 787 -1.47156262 - 66 787 -1.51039815 - 67 787 -1.54095268 - 68 787 -1.56636965 - 69 787 -1.49963939 - 70 787 -1.44759917 - 71 787 -1.3897202 - 72 787 -1.34073293 - 73 787 -1.28545296 - 74 787 -1.23404443 - 75 787 -1.1368829 - 76 787 -1.00562382 - 77 787 -0.849042833 - 78 787 -0.686658025 - 79 787 -0.536974609 - 80 787 -0.410360366 - 81 787 -0.301766843 - 82 787 -0.147609249 - 83 787 0.0520456545 - 84 787 0.256967753 - 85 787 0.456310868 - 86 787 0.665254891 - 87 787 0.868827343 - 88 787 1.06861162 - 89 787 1.2917105 - 90 787 1.52029443 - 91 787 1.96530855 - 92 787 2.38829136 - 93 787 2.73862457 - 94 787 2.68666863 - 95 787 2.66316748 - 96 787 2.65869021 - 97 787 2.5981071 - 98 787 2.55195522 - 99 787 2.53146601 - 100 787 2.53833961 - 101 787 2.5913856 - 102 787 2.62649918 - 103 787 2.63110042 - 104 787 2.60402465 - 105 787 2.5604403 - 106 787 2.52267694 - 107 787 2.49584985 - 108 787 2.48124623 - 109 787 2.49217796 - 9 786 -1.84664249 - 10 786 -1.91591442 - 11 786 -1.94653118 - 12 786 -1.92800963 - 13 786 -1.90386653 - 14 786 -1.87613118 - 15 786 -1.85133731 - 16 786 -1.82081282 - 17 786 -1.84470153 - 18 786 -1.87764883 - 19 786 -1.93962491 - 20 786 -1.99030852 - 21 786 -2.06102252 - 22 786 -2.09851766 - 23 786 -2.11453319 - 24 786 -2.12396193 - 25 786 -2.13713193 - 26 786 -2.14137149 - 27 786 -2.16659331 - 28 786 -2.22191119 - 29 786 -2.23079586 - 30 786 -2.27656651 - 31 786 -2.26752734 - 32 786 -2.20985603 - 33 786 -2.14879775 - 34 786 -2.12481141 - 35 786 -2.08796668 - 36 786 -2.02560735 - 37 786 -2.01127815 - 38 786 -1.9980135 - 39 786 -2.05608201 - 40 786 -2.11152172 - 41 786 -2.1690836 - 42 786 -2.18657708 - 43 786 -2.19573116 - 44 786 -2.18069172 - 45 786 -2.14722705 - 46 786 -2.11595654 - 47 786 -2.07724166 - 48 786 -2.17147946 - 49 786 -2.14373922 - 50 786 -2.11095452 - 51 786 -2.09253955 - 52 786 -2.07227492 - 53 786 -2.048913 - 54 786 -2.01037407 - 55 786 -1.98310542 - 56 786 -1.9529326 - 57 786 -1.90867138 - 58 786 -1.87709177 - 59 786 -1.83695602 - 60 786 -1.8006767 - 61 786 -1.73847067 - 62 786 -1.67641878 - 63 786 -1.61698008 - 64 786 -1.56099033 - 65 786 -1.50835752 - 66 786 -1.54947186 - 67 786 -1.58245778 - 68 786 -1.60440505 - 69 786 -1.54440451 - 70 786 -1.49060845 - 71 786 -1.42785668 - 72 786 -1.37161326 - 73 786 -1.31469548 - 74 786 -1.26360035 - 75 786 -1.17600203 - 76 786 -1.05698633 - 77 786 -0.902410209 - 78 786 -0.735596538 - 79 786 -0.569439769 - 80 786 -0.432667106 - 81 786 -0.309416384 - 82 786 -0.096624881 - 83 786 0.163801119 - 84 786 0.400109231 - 85 786 0.622712076 - 86 786 0.841099083 - 87 786 1.04240286 - 88 786 1.23916864 - 89 786 1.3792212 - 90 786 1.54631639 - 91 786 1.86685622 - 92 786 2.26954794 - 93 786 2.6235683 - 94 786 2.59089828 - 95 786 2.58235002 - 96 786 2.59000015 - 97 786 2.54315162 - 98 786 2.50004864 - 99 786 2.47578931 - 100 786 2.47377658 - 101 786 2.50616717 - 102 786 2.5292902 - 103 786 2.5297308 - 104 786 2.51068282 - 105 786 2.48558617 - 106 786 2.45783234 - 107 786 2.43639827 - 108 786 2.43213511 - 109 786 2.43861699 - 9 785 -1.87284553 - 10 785 -1.9542098 - 11 785 -1.9127357 - 12 785 -1.92551744 - 13 785 -1.86959362 - 14 785 -1.81006479 - 15 785 -1.78698277 - 16 785 -1.76383531 - 17 785 -1.79233146 - 18 785 -1.86124396 - 19 785 -1.93651259 - 20 785 -1.9945966 - 21 785 -2.02899504 - 22 785 -2.06197357 - 23 785 -2.09673929 - 24 785 -2.10701847 - 25 785 -2.12716699 - 26 785 -2.15083694 - 27 785 -2.17889452 - 28 785 -2.24394035 - 29 785 -2.26175094 - 30 785 -2.30946183 - 31 785 -2.30164313 - 32 785 -2.25916076 - 33 785 -2.20767617 - 34 785 -2.15073729 - 35 785 -2.10864735 - 36 785 -2.08700585 - 37 785 -2.07203031 - 38 785 -2.05977583 - 39 785 -2.10792947 - 40 785 -2.15618634 - 41 785 -2.20462894 - 42 785 -2.20762515 - 43 785 -2.20180702 - 44 785 -2.17679834 - 45 785 -2.14118814 - 46 785 -2.11088181 - 47 785 -2.07051873 - 48 785 -2.165622 - 49 785 -2.14589071 - 50 785 -2.1233418 - 51 785 -2.11637211 - 52 785 -2.10052443 - 53 785 -2.07577729 - 54 785 -2.0327208 - 55 785 -1.9990083 - 56 785 -1.95773923 - 57 785 -1.90584862 - 58 785 -1.87611914 - 59 785 -1.84661186 - 60 785 -1.8112998 - 61 785 -1.75573778 - 62 785 -1.70616019 - 63 785 -1.64977717 - 64 785 -1.59581947 - 65 785 -1.54755676 - 66 785 -1.60359168 - 67 785 -1.63030112 - 68 785 -1.65357149 - 69 785 -1.59828758 - 70 785 -1.54366279 - 71 785 -1.47679126 - 72 785 -1.4125061 - 73 785 -1.35478663 - 74 785 -1.29679596 - 75 785 -1.20950961 - 76 785 -1.09745622 - 77 785 -0.950073421 - 78 785 -0.790242553 - 79 785 -0.617883742 - 80 785 -0.464530647 - 81 785 -0.283242255 - 82 785 -0.0171201173 - 83 785 0.282123387 - 84 785 0.544264853 - 85 785 0.806216955 - 86 785 1.02471292 - 87 785 1.18598247 - 88 785 1.32353473 - 89 785 1.42467308 - 90 785 1.56062102 - 91 785 1.75717998 - 92 785 2.14673376 - 93 785 2.46024942 - 94 785 2.47229147 - 95 785 2.49259639 - 96 785 2.49682546 - 97 785 2.46291685 - 98 785 2.42412281 - 99 785 2.4140985 - 100 785 2.41046453 - 101 785 2.42124104 - 102 785 2.43976355 - 103 785 2.4390192 - 104 785 2.4199183 - 105 785 2.40231872 - 106 785 2.37664032 - 107 785 2.3506403 - 108 785 2.35555005 - 109 785 2.36368966 - 16 784 -1.69276643 - 17 784 -1.73522794 - 18 784 -1.851933 - 19 784 -1.94624984 - 20 784 -2.00358963 - 21 784 -1.95912492 - 22 784 -2.00228786 - 23 784 -2.02699304 - 24 784 -2.072335 - 25 784 -2.11963582 - 26 784 -2.18561339 - 27 784 -2.22281551 - 28 784 -2.27359724 - 29 784 -2.30146575 - 30 784 -2.32577825 - 31 784 -2.33546376 - 32 784 -2.30611825 - 33 784 -2.25944543 - 34 784 -2.215379 - 35 784 -2.18443561 - 36 784 -2.15598822 - 37 784 -2.13601017 - 38 784 -2.11784577 - 39 784 -2.16243744 - 40 784 -2.20193458 - 41 784 -2.23623013 - 42 784 -2.22496581 - 43 784 -2.20980263 - 44 784 -2.18023777 - 45 784 -2.14612246 - 46 784 -2.10818124 - 47 784 -2.12737346 - 48 784 -2.14312434 - 49 784 -2.15683389 - 50 784 -2.14370561 - 51 784 -2.1400001 - 52 784 -2.12779403 - 53 784 -2.10821342 - 54 784 -2.06538725 - 55 784 -2.02261615 - 56 784 -1.96836519 - 57 784 -1.91123927 - 58 784 -1.87764454 - 59 784 -1.85749364 - 60 784 -1.8222456 - 61 784 -1.78040385 - 62 784 -1.74552691 - 63 784 -1.70030475 - 64 784 -1.64518154 - 65 784 -1.63635564 - 66 784 -1.65295684 - 67 784 -1.72068775 - 68 784 -1.67473805 - 69 784 -1.62833083 - 70 784 -1.57719779 - 71 784 -1.51587594 - 72 784 -1.44668186 - 73 784 -1.38835669 - 74 784 -1.32270634 - 75 784 -1.23822546 - 76 784 -1.12645531 - 77 784 -0.983278155 - 78 784 -0.820533097 - 79 784 -0.6450876 - 80 784 -0.472253531 - 81 784 -0.265769094 - 82 784 0.0610158704 - 83 784 0.373146832 - 84 784 0.667780042 - 85 784 0.921940625 - 86 784 1.10621846 - 87 784 1.21152294 - 88 784 1.28306079 - 89 784 1.38514912 - 90 784 1.49796212 - 91 784 1.68946445 - 92 784 1.9612962 - 93 784 2.28490567 - 94 784 2.35808277 - 95 784 2.38247681 - 96 784 2.40190005 - 97 784 2.39044261 - 98 784 2.36585093 - 99 784 2.36242223 - 100 784 2.35712957 - 101 784 2.35747147 - 102 784 2.36213398 - 103 784 2.35357308 - 104 784 2.34000516 - 105 784 2.31534648 - 106 784 2.29559445 - 107 784 2.27098274 - 108 784 2.26958656 - 109 784 2.26848507 - 23 783 -2.01815414 - 24 783 -2.02677536 - 25 783 -2.13798428 - 26 783 -2.27894735 - 27 783 -2.27849126 - 28 783 -2.30225301 - 29 783 -2.3401401 - 30 783 -2.34153128 - 31 783 -2.34379292 - 32 783 -2.32878423 - 33 783 -2.28792763 - 34 783 -2.26399159 - 35 783 -2.25100088 - 36 783 -2.23084188 - 37 783 -2.2039063 - 38 783 -2.17407227 - 39 783 -2.22583747 - 40 783 -2.25418401 - 41 783 -2.26630616 - 42 783 -2.24058867 - 43 783 -2.21861649 - 44 783 -2.18706536 - 45 783 -2.15536427 - 46 783 -2.11419415 - 47 783 -2.14356375 - 48 783 -2.16357231 - 49 783 -2.17228603 - 50 783 -2.16767383 - 51 783 -2.17724323 - 52 783 -2.17257714 - 53 783 -2.16258788 - 54 783 -2.12309027 - 55 783 -2.07251811 - 56 783 -2.00428224 - 57 783 -1.94045997 - 58 783 -1.89893162 - 59 783 -1.86860454 - 60 783 -1.83541894 - 61 783 -1.80838823 - 62 783 -1.77867186 - 63 783 -1.74041653 - 64 783 -1.6791141 - 65 783 -1.6761024 - 66 783 -1.69014776 - 67 783 -1.71842802 - 68 783 -1.67126513 - 69 783 -1.6315366 - 70 783 -1.58593357 - 71 783 -1.53541923 - 72 783 -1.47290313 - 73 783 -1.42213595 - 74 783 -1.35825312 - 75 783 -1.26551771 - 76 783 -1.15041792 - 77 783 -0.996947348 - 78 783 -0.825743914 - 79 783 -0.646795452 - 80 783 -0.456980228 - 81 783 -0.222905919 - 82 783 0.102952421 - 83 783 0.41858384 - 84 783 0.712164044 - 85 783 0.949696481 - 86 783 1.0027411 - 87 783 1.11825955 - 88 783 1.22102392 - 89 783 1.34642184 - 90 783 1.44183648 - 91 783 1.51738548 - 92 783 1.7498039 - 93 783 2.11962652 - 94 783 2.15852547 - 95 783 2.2757771 - 96 783 2.30524683 - 97 783 2.31527901 - 98 783 2.29875064 - 99 783 2.29012871 - 100 783 2.29180694 - 101 783 2.29029274 - 102 783 2.28520632 - 103 783 2.27383184 - 104 783 2.25877357 - 105 783 2.2391789 - 106 783 2.20411873 - 107 783 2.1869657 - 108 783 2.17594624 - 109 783 2.16068554 - 31 782 -2.35088181 - 32 782 -2.32435536 - 33 782 -2.27801037 - 34 782 -2.27975345 - 35 782 -2.30190825 - 36 782 -2.32566595 - 37 782 -2.27908254 - 38 782 -2.25753641 - 39 782 -2.27927995 - 40 782 -2.35131049 - 41 782 -2.30483723 - 42 782 -2.263695 - 43 782 -2.2275281 - 44 782 -2.19337654 - 45 782 -2.16571069 - 46 782 -2.12995386 - 47 782 -2.16970181 - 48 782 -2.19326401 - 49 782 -2.20328522 - 50 782 -2.20627546 - 51 782 -2.22198629 - 52 782 -2.22514415 - 53 782 -2.22279596 - 54 782 -2.19111419 - 55 782 -2.14068651 - 56 782 -2.06451082 - 57 782 -1.99204588 - 58 782 -1.93495357 - 59 782 -1.89111423 - 60 782 -1.85714602 - 61 782 -1.82881153 - 62 782 -1.79890382 - 63 782 -1.75888038 - 64 782 -1.70432615 - 65 782 -1.69704628 - 66 782 -1.70337856 - 67 782 -1.71591091 - 68 782 -1.67787671 - 69 782 -1.6357832 - 70 782 -1.59384036 - 71 782 -1.55218184 - 72 782 -1.49966943 - 73 782 -1.45550096 - 74 782 -1.38562763 - 75 782 -1.28564858 - 76 782 -1.16030335 - 77 782 -0.998609781 - 78 782 -0.820345342 - 79 782 -0.635105431 - 80 782 -0.431378663 - 81 782 -0.196523562 - 82 782 0.108823821 - 83 782 0.414206266 - 84 782 0.67077589 - 85 782 0.788637638 - 86 782 0.939923763 - 87 782 1.00498486 - 88 782 1.12767529 - 89 782 1.28038251 - 90 782 1.3869971 - 91 782 1.54913235 - 92 782 1.75147367 - 93 782 2.06894279 - 94 782 2.0593667 - 95 782 2.19320011 - 96 782 2.23181581 - 97 782 2.25050569 - 98 782 2.24296808 - 99 782 2.23951149 - 100 782 2.23220253 - 101 782 2.22713971 - 102 782 2.21481633 - 103 782 2.20381594 - 104 782 2.17869687 - 105 782 2.14632082 - 106 782 2.14764261 - 107 782 2.11985493 - 108 782 2.08111954 - 109 782 2.05572701 - 38 781 -2.30122399 - 39 781 -2.31856346 - 40 781 -2.32553792 - 41 781 -2.314533 - 42 781 -2.2840147 - 43 781 -2.25144124 - 44 781 -2.22219729 - 45 781 -2.19735146 - 46 781 -2.16529369 - 47 781 -2.21051931 - 48 781 -2.23710155 - 49 781 -2.24592638 - 50 781 -2.25072265 - 51 781 -2.27205849 - 52 781 -2.28656483 - 53 781 -2.29920506 - 54 781 -2.26989269 - 55 781 -2.21877384 - 56 781 -2.14765239 - 57 781 -2.06480026 - 58 781 -1.9843291 - 59 781 -1.92840481 - 60 781 -1.88291705 - 61 781 -1.84543407 - 62 781 -1.80979145 - 63 781 -1.76168656 - 64 781 -1.70628619 - 65 781 -1.707932 - 66 781 -1.70892549 - 67 781 -1.71237457 - 68 781 -1.67229664 - 69 781 -1.63987505 - 70 781 -1.59326613 - 71 781 -1.55568504 - 72 781 -1.50987017 - 73 781 -1.46220779 - 74 781 -1.39539063 - 75 781 -1.29986036 - 76 781 -1.16379762 - 77 781 -0.992211998 - 78 781 -0.808043957 - 79 781 -0.604676068 - 80 781 -0.387709349 - 81 781 -0.146701545 - 82 781 0.114130341 - 83 781 0.362835169 - 84 781 0.504262865 - 85 781 0.669007301 - 86 781 0.790802419 - 87 781 0.897485018 - 88 781 0.975178182 - 89 781 1.21813083 - 90 781 1.49182856 - 91 781 1.72062898 - 92 781 1.90142429 - 93 781 2.07854676 - 94 781 2.05612206 - 95 781 2.16251469 - 96 781 2.19145942 - 97 781 2.19124699 - 98 781 2.17833114 - 99 781 2.16482949 - 100 781 2.15852737 - 101 781 2.15105462 - 102 781 2.14081192 - 103 781 2.13055468 - 104 781 2.09994817 - 105 781 2.08820796 - 106 781 2.07366562 - 107 781 2.03469396 - 108 781 1.9890908 - 109 781 1.96277928 - 39 780 -2.33436298 - 40 780 -2.33430147 - 41 780 -2.32054377 - 42 780 -2.29498768 - 43 780 -2.26442432 - 44 780 -2.23666453 - 45 780 -2.22125435 - 46 780 -2.23043036 - 47 780 -2.25989556 - 48 780 -2.29382515 - 49 780 -2.31791496 - 50 780 -2.32569337 - 51 780 -2.33889604 - 52 780 -2.35375094 - 53 780 -2.37081838 - 54 780 -2.35212111 - 55 780 -2.31073737 - 56 780 -2.24352551 - 57 780 -2.14766216 - 58 780 -2.05540681 - 59 780 -1.98997164 - 60 780 -1.93147457 - 61 780 -1.8783052 - 62 780 -1.83944917 - 63 780 -1.78048539 - 64 780 -1.72469926 - 65 780 -1.66199601 - 66 780 -1.75675094 - 67 780 -1.71596456 - 68 780 -1.67614913 - 69 780 -1.63484323 - 70 780 -1.58580709 - 71 780 -1.55046141 - 72 780 -1.48819673 - 73 780 -1.4469744 - 74 780 -1.38096607 - 75 780 -1.28229189 - 76 780 -1.13655794 - 77 780 -0.971586108 - 78 780 -0.790181875 - 79 780 -0.570073187 - 80 780 -0.32925719 - 81 780 -0.0898785368 - 82 780 0.150616795 - 83 780 0.275719076 - 84 780 0.369177699 - 85 780 0.533106148 - 86 780 0.662469983 - 87 780 0.896959186 - 88 780 1.1600796 - 89 780 1.44372487 - 90 780 1.74374485 - 91 780 1.93155491 - 92 780 2.04960775 - 93 780 2.07734179 - 94 780 2.10571885 - 95 780 2.1388495 - 96 780 2.14520693 - 97 780 2.12188339 - 98 780 2.09420323 - 99 780 2.07526565 - 100 780 2.06221867 - 101 780 2.05603456 - 102 780 2.05460453 - 103 780 2.04893208 - 104 780 2.03516698 - 105 780 2.00250483 - 106 780 1.97711861 - 107 780 1.9492178 - 108 780 1.91877103 - 109 780 1.88393211 - 46 779 -2.25482774 - 47 779 -2.28813815 - 48 779 -2.38869047 - 49 779 -2.39767241 - 50 779 -2.4042275 - 51 779 -2.41722417 - 52 779 -2.40094137 - 53 779 -2.39881444 - 54 779 -2.395087 - 55 779 -2.37194347 - 56 779 -2.33039308 - 57 779 -2.24685144 - 58 779 -2.15570903 - 59 779 -2.07773137 - 60 779 -2.00647807 - 61 779 -1.93112695 - 62 779 -1.88050783 - 63 779 -1.81152439 - 64 779 -1.74551713 - 65 779 -1.67466545 - 66 779 -1.76084352 - 67 779 -1.71762037 - 68 779 -1.67502975 - 69 779 -1.62268186 - 70 779 -1.57273364 - 71 779 -1.53023171 - 72 779 -1.47637665 - 73 779 -1.41392696 - 74 779 -1.35643697 - 75 779 -1.25058579 - 76 779 -1.10093522 - 77 779 -0.942115307 - 78 779 -0.750929415 - 79 779 -0.515286624 - 80 779 -0.271668643 - 81 779 -0.0307417903 - 82 779 0.182381809 - 83 779 0.233955652 - 84 779 0.294637173 - 85 779 0.389105767 - 86 779 0.663983107 - 87 779 0.982203782 - 88 779 1.32239866 - 89 779 1.64717722 - 90 779 1.9224745 - 91 779 2.11211085 - 92 779 2.18120646 - 93 779 2.13607836 - 94 779 2.10915971 - 95 779 2.08627343 - 96 779 2.07911658 - 97 779 2.02487707 - 98 779 1.98380029 - 99 779 1.95631886 - 100 779 1.94138134 - 101 779 1.94407368 - 102 779 1.95340526 - 103 779 1.94907713 - 104 779 1.94280374 - 105 779 1.91579342 - 106 779 1.9205488 - 107 779 1.88015282 - 108 779 1.84069729 - 109 779 1.80923045 - 54 778 -2.42493415 - 55 778 -2.39336514 - 56 778 -2.36183739 - 57 778 -2.32030463 - 58 778 -2.26370311 - 59 778 -2.17238927 - 60 778 -2.08718061 - 61 778 -2.02409577 - 62 778 -1.93648148 - 63 778 -1.84283495 - 64 778 -1.76296294 - 65 778 -1.68391442 - 66 778 -1.75548363 - 67 778 -1.71709156 - 68 778 -1.668311 - 69 778 -1.61001885 - 70 778 -1.55892897 - 71 778 -1.50846529 - 72 778 -1.45034087 - 73 778 -1.39360178 - 74 778 -1.3300947 - 75 778 -1.22090518 - 76 778 -1.07478809 - 77 778 -0.917649329 - 78 778 -0.699365914 - 79 778 -0.435322016 - 80 778 -0.193161383 - 81 778 0.0330874845 - 82 778 0.206346527 - 83 778 0.244766206 - 84 778 0.29963401 - 85 778 0.354618609 - 86 778 0.713460386 - 87 778 1.11164749 - 88 778 1.5114671 - 89 778 1.86626792 - 90 778 2.12456894 - 91 778 2.29072046 - 92 778 2.28900409 - 93 778 2.17982173 - 94 778 2.09522462 - 95 778 2.05243158 - 96 778 1.95596826 - 97 778 1.88780522 - 98 778 1.84378803 - 99 778 1.80455911 - 100 778 1.79646242 - 101 778 1.81242919 - 102 778 1.83102202 - 103 778 1.83657956 - 104 778 1.84140182 - 105 778 1.84397995 - 106 778 1.81041551 - 107 778 1.7800703 - 108 778 1.75099361 - 109 778 1.7300967 - 61 777 -2.07910013 - 62 777 -2.00479984 - 63 777 -1.870749 - 64 777 -1.76896775 - 65 777 -1.7053144 - 66 777 -1.75837278 - 67 777 -1.69926369 - 68 777 -1.64433277 - 69 777 -1.58063579 - 70 777 -1.53157556 - 71 777 -1.48635602 - 72 777 -1.44069707 - 73 777 -1.3878417 - 74 777 -1.31459486 - 75 777 -1.20392382 - 76 777 -1.06567824 - 77 777 -0.854459643 - 78 777 -0.659156859 - 79 777 -0.370916069 - 80 777 -0.108170651 - 81 777 0.119592495 - 82 777 0.258637309 - 83 777 0.2779769 - 84 777 0.322108001 - 85 777 0.48692888 - 86 777 0.800417185 - 87 777 1.23753095 - 88 777 1.67845356 - 89 777 2.05164313 - 90 777 2.29870629 - 91 777 2.45315742 - 92 777 2.41201162 - 93 777 2.16936874 - 94 777 2.04478073 - 95 777 1.98214793 - 96 777 1.83720946 - 97 777 1.74710739 - 98 777 1.69982958 - 99 777 1.66908836 - 100 777 1.68098974 - 101 777 1.70555317 - 102 777 1.73006153 - 103 777 1.74016166 - 104 777 1.74062014 - 105 777 1.73521483 - 106 777 1.70330572 - 107 777 1.684273 - 108 777 1.66323829 - 109 777 1.66184771 - 70 776 -1.51354766 - 71 776 -1.47562599 - 72 776 -1.4249475 - 73 776 -1.34461987 - 74 776 -1.28618062 - 75 776 -1.1676625 - 76 776 -1.01663101 - 77 776 -0.827254176 - 78 776 -0.535457909 - 79 776 -0.31390056 - 80 776 -0.0747686103 - 81 776 0.200008392 - 82 776 0.341812968 - 83 776 0.376705766 - 84 776 0.420655012 - 85 776 0.479351282 - 86 776 0.838044107 - 87 776 1.30445242 - 88 776 1.77842665 - 89 776 2.16769385 - 90 776 2.51348281 - 91 776 2.45873833 - 92 776 2.29214597 - 93 776 2.11762381 - 94 776 1.92314255 - 95 776 1.83728862 - 96 776 1.70468414 - 97 776 1.62357235 - 98 776 1.58639669 - 99 776 1.56604517 - 100 776 1.58015013 - 101 776 1.62449718 - 102 776 1.66205513 - 103 776 1.6703018 - 104 776 1.67924905 - 105 776 1.67048049 - 106 776 1.64135396 - 107 776 1.6170758 - 108 776 1.59862471 - 109 776 1.58836746 - 78 775 -0.476499707 - 79 775 -0.278397501 - 80 775 -0.0500860959 - 81 775 0.171151459 - 82 775 0.415754616 - 83 775 0.437409639 - 84 775 0.447546363 - 85 775 0.436408013 - 86 775 0.829370558 - 87 775 1.27087331 - 88 775 1.70288002 - 89 775 2.10525584 - 90 775 2.46298838 - 91 775 2.43164444 - 92 775 2.24908423 - 93 775 2.04579687 - 94 775 1.80468559 - 95 775 1.71923435 - 96 775 1.60030329 - 97 775 1.53319609 - 98 775 1.51456416 - 99 775 1.51187968 - 100 775 1.5558933 - 101 775 1.60490835 - 102 775 1.6386162 - 103 775 1.65357614 - 104 775 1.65778422 - 105 775 1.63912547 - 106 775 1.60552061 - 107 775 1.56803346 - 108 775 1.54648364 - 109 775 1.52077317 - 86 774 0.730226457 - 87 774 1.22385681 - 88 774 1.68012083 - 89 774 2.08218908 - 90 774 2.44409323 - 91 774 2.40651035 - 92 774 2.22873855 - 93 774 2.01305032 - 94 774 1.73948586 - 95 774 1.57145333 - 96 774 1.48651934 - 97 774 1.42247808 - 98 774 1.43188822 - 99 774 1.47388935 - 100 774 1.54344606 - 101 774 1.59438944 - 102 774 1.62170231 - 103 774 1.63261187 - 104 774 1.63625145 - 105 774 1.61239421 - 106 774 1.58697188 - 107 774 1.54203057 - 108 774 1.51120341 - 109 774 1.47870576 - 97 773 1.42901659 - 98 773 1.37620556 - 99 773 1.4683708 - 100 773 1.54254127 - 101 773 1.6075865 - 102 773 1.59966373 - 103 773 1.60558856 - 104 773 1.61817253 - 105 773 1.59142315 - 106 773 1.5714978 - 107 773 1.53245187 - 108 773 1.50729954 - 109 773 1.46369708 - 105 772 1.59890115 - 106 772 1.5817107 - 107 772 1.54983032 - 108 772 1.49414814 - 109 772 1.44768357 - 106 746 4.54287815 - 107 746 4.48947334 - 108 746 4.44109058 - 109 746 4.39686632 - 95 745 5.06484556 - 96 745 5.08174706 - 97 745 5.05682135 - 98 745 5.05665922 - 99 745 5.07430267 - 100 745 5.11458397 - 101 745 5.13972473 - 102 745 5.11767578 - 103 745 5.02241898 - 104 745 4.83554649 - 105 745 4.74324465 - 106 745 4.6681118 - 107 745 4.60517168 - 108 745 4.56210136 - 109 745 4.51832247 - 82 744 3.7308991 - 83 744 3.84474421 - 84 744 3.96426463 - 85 744 4.08640146 - 86 744 4.20334101 - 87 744 4.32642031 - 88 744 4.43819475 - 89 744 4.56014919 - 90 744 4.67005157 - 91 744 4.77648258 - 92 744 4.90817881 - 93 744 5.00548172 - 94 744 5.08573246 - 95 744 5.10452223 - 96 744 5.09668636 - 97 744 5.08477926 - 98 744 5.09217405 - 99 744 5.12275791 - 100 744 5.17350101 - 101 744 5.21705437 - 102 744 5.14835739 - 103 744 5.05909967 - 104 744 4.94980478 - 105 744 4.86967516 - 106 744 4.79980183 - 107 744 4.72943211 - 108 744 4.67459059 - 109 744 4.6281352 - 69 743 1.74227548 - 70 743 1.90524876 - 71 743 1.98898387 - 72 743 2.02553415 - 73 743 2.11973429 - 74 743 2.21153474 - 75 743 2.37879729 - 76 743 2.53216434 - 77 743 2.74373937 - 78 743 2.94660926 - 79 743 3.14061713 - 80 743 3.32407427 - 81 743 3.52388906 - 82 743 3.72005033 - 83 743 3.8421433 - 84 743 3.97178674 - 85 743 4.10551357 - 86 743 4.22596121 - 87 743 4.34920406 - 88 743 4.46762848 - 89 743 4.59158897 - 90 743 4.70535135 - 91 743 4.81780863 - 92 743 4.92481947 - 93 743 5.0152483 - 94 743 5.09232044 - 95 743 5.10746288 - 96 743 5.10666895 - 97 743 5.10077143 - 98 743 5.11879396 - 99 743 5.16670322 - 100 743 5.23129654 - 101 743 5.28896236 - 102 743 5.20914984 - 103 743 5.13011646 - 104 743 5.05707216 - 105 743 4.98394537 - 106 743 4.91270208 - 107 743 4.83726835 - 108 743 4.77434921 - 109 743 4.72035408 - 57 742 -0.579016507 - 58 742 -0.581547737 - 59 742 -0.465997159 - 60 742 -0.255380929 - 61 742 0.0306923222 - 62 742 0.264508724 - 63 742 0.410443842 - 64 742 0.465434074 - 65 742 0.519085944 - 66 742 0.922867119 - 67 742 1.20316184 - 68 742 1.39117336 - 69 742 1.64669991 - 70 742 2.02790189 - 71 742 2.12158155 - 72 742 2.20398068 - 73 742 2.3101418 - 74 742 2.43578887 - 75 742 2.58904195 - 76 742 2.74473333 - 77 742 2.9267447 - 78 742 3.09658504 - 79 742 3.25086784 - 80 742 3.39996672 - 81 742 3.55943894 - 82 742 3.69945502 - 83 742 3.84375 - 84 742 3.97647357 - 85 742 4.11281157 - 86 742 4.24091196 - 87 742 4.37100172 - 88 742 4.49708128 - 89 742 4.62740898 - 90 742 4.75070286 - 91 742 4.86867571 - 92 742 4.96394253 - 93 742 5.04182053 - 94 742 5.09877348 - 95 742 5.11283302 - 96 742 5.11513853 - 97 742 5.11706161 - 98 742 5.14800406 - 99 742 5.21396446 - 100 742 5.29243231 - 101 742 5.3582468 - 102 742 5.26915932 - 103 742 5.19822454 - 104 742 5.14609385 - 105 742 5.07359171 - 106 742 5.00068569 - 107 742 4.91976976 - 108 742 4.84987116 - 109 742 4.78626108 - 46 741 -0.803193212 - 47 741 -0.767127097 - 48 741 -0.739719093 - 49 741 -0.705534816 - 50 741 -0.670609713 - 51 741 -0.629096329 - 52 741 -0.616066277 - 53 741 -0.608504772 - 54 741 -0.560564101 - 55 741 -0.533415675 - 56 741 -0.490771562 - 57 741 -0.440527201 - 58 741 -0.399256647 - 59 741 -0.28837505 - 60 741 -0.099573791 - 61 741 0.154327571 - 62 741 0.356924325 - 63 741 0.529402316 - 64 741 0.627850115 - 65 741 0.658207536 - 66 741 0.985850513 - 67 741 1.27590907 - 68 741 1.46780026 - 69 741 1.83020616 - 70 741 2.17221785 - 71 741 2.28552318 - 72 741 2.38259482 - 73 741 2.49625015 - 74 741 2.63728571 - 75 741 2.79885554 - 76 741 2.94833732 - 77 741 3.10183787 - 78 741 3.23701763 - 79 741 3.35886574 - 80 741 3.46771574 - 81 741 3.58717823 - 82 741 3.70577693 - 83 741 3.84130549 - 84 741 3.97757888 - 85 741 4.11921406 - 86 741 4.25575829 - 87 741 4.39674807 - 88 741 4.53356552 - 89 741 4.66855097 - 90 741 4.79806328 - 91 741 4.9190383 - 92 741 5.02536392 - 93 741 5.09826374 - 94 741 5.11533308 - 95 741 5.11252642 - 96 741 5.11597347 - 97 741 5.12753439 - 98 741 5.16350603 - 99 741 5.23262453 - 100 741 5.31819963 - 101 741 5.39549875 - 102 741 5.31681347 - 103 741 5.2512002 - 104 741 5.20113659 - 105 741 5.13162184 - 106 741 5.060534 - 107 741 4.9785428 - 108 741 4.90762091 - 109 741 4.84027576 - 27 740 -0.469966829 - 28 740 -0.496150434 - 29 740 -0.517351091 - 30 740 -0.518895507 - 31 740 -0.599323571 - 32 740 -0.666434228 - 33 740 -0.723929465 - 34 740 -0.767108858 - 35 740 -0.826573849 - 36 740 -0.823229849 - 37 740 -0.829961479 - 38 740 -0.886125088 - 39 740 -1.00637758 - 40 740 -0.97433579 - 41 740 -0.934223771 - 42 740 -0.933725476 - 43 740 -0.886762798 - 44 740 -0.838911474 - 45 740 -0.803500354 - 46 740 -0.77267617 - 47 740 -0.74310559 - 48 740 -0.713265002 - 49 740 -0.677545071 - 50 740 -0.629139066 - 51 740 -0.578738868 - 52 740 -0.539546013 - 53 740 -0.492376566 - 54 740 -0.467034996 - 55 740 -0.402640432 - 56 740 -0.372167289 - 57 740 -0.313872874 - 58 740 -0.239179015 - 59 740 -0.107358463 - 60 740 0.0580863655 - 61 740 0.291463882 - 62 740 0.47195214 - 63 740 0.647660673 - 64 740 0.737354994 - 65 740 0.759454966 - 66 740 1.13013113 - 67 740 1.44218564 - 68 740 1.68829834 - 69 740 2.04202819 - 70 740 2.37040567 - 71 740 2.44910669 - 72 740 2.55847406 - 73 740 2.68595004 - 74 740 2.83677816 - 75 740 3.00129533 - 76 740 3.15492272 - 77 740 3.27983832 - 78 740 3.37127638 - 79 740 3.44897127 - 80 740 3.5221386 - 81 740 3.60805082 - 82 740 3.71406889 - 83 740 3.84130883 - 84 740 3.97398281 - 85 740 4.12194443 - 86 740 4.26727724 - 87 740 4.42050314 - 88 740 4.56782627 - 89 740 4.70846844 - 90 740 4.83756542 - 91 740 4.96474409 - 92 740 5.07348585 - 93 740 5.12700701 - 94 740 5.14407635 - 95 740 5.13045025 - 96 740 5.13812494 - 97 740 5.14656258 - 98 740 5.18560457 - 99 740 5.25518322 - 100 740 5.33840656 - 101 740 5.41231394 - 102 740 5.35313654 - 103 740 5.29132032 - 104 740 5.2283144 - 105 740 5.16382933 - 106 740 5.09792566 - 107 740 5.01704788 - 108 740 4.95188665 - 109 740 4.88293648 - 16 739 -0.369087428 - 17 739 -0.378056675 - 18 739 -0.372855991 - 19 739 -0.369649947 - 20 739 -0.3638677 - 21 739 -0.358957559 - 22 739 -0.353254437 - 23 739 -0.349834979 - 24 739 -0.348867208 - 25 739 -0.370611846 - 26 739 -0.378052264 - 27 739 -0.414408714 - 28 739 -0.444954127 - 29 739 -0.478946328 - 30 739 -0.530404568 - 31 739 -0.604949296 - 32 739 -0.676186085 - 33 739 -0.729581773 - 34 739 -0.78275156 - 35 739 -0.774266839 - 36 739 -0.772230446 - 37 739 -0.805390537 - 38 739 -0.857169747 - 39 739 -0.925988913 - 40 739 -0.931511581 - 41 739 -0.893920541 - 42 739 -0.870574117 - 43 739 -0.841253281 - 44 739 -0.81435585 - 45 739 -0.780196905 - 46 739 -0.748487413 - 47 739 -0.708678126 - 48 739 -0.674962759 - 49 739 -0.639403462 - 50 739 -0.574021578 - 51 739 -0.509375811 - 52 739 -0.455108732 - 53 739 -0.397658259 - 54 739 -0.355725884 - 55 739 -0.303558648 - 56 739 -0.26248616 - 57 739 -0.177177802 - 58 739 -0.0720942989 - 59 739 0.0649008155 - 60 739 0.240842715 - 61 739 0.444624513 - 62 739 0.615586936 - 63 739 0.747422338 - 64 739 0.805152714 - 65 739 0.920306027 - 66 739 1.34214759 - 67 739 1.67315245 - 68 739 1.99035788 - 69 739 2.32437515 - 70 739 2.50761676 - 71 739 2.59934187 - 72 739 2.71354699 - 73 739 2.85324812 - 74 739 3.00520039 - 75 739 3.15858388 - 76 739 3.27768087 - 77 739 3.37761712 - 78 739 3.45180607 - 79 739 3.50888515 - 80 739 3.560642 - 81 739 3.62815809 - 82 739 3.72662234 - 83 739 3.84711981 - 84 739 3.97707677 - 85 739 4.12603807 - 86 739 4.28169441 - 87 739 4.44499493 - 88 739 4.60302067 - 89 739 4.75204563 - 90 739 4.87701368 - 91 739 4.99524355 - 92 739 5.10135031 - 93 739 5.15058899 - 94 739 5.18910027 - 95 739 5.19024086 - 96 739 5.18940783 - 97 739 5.19944477 - 98 739 5.23212147 - 99 739 5.28588247 - 100 739 5.36267424 - 101 739 5.43181801 - 102 739 5.39187002 - 103 739 5.32920742 - 104 739 5.25383615 - 105 739 5.19291496 - 106 739 5.12832928 - 107 739 5.049366 - 108 739 4.98391581 - 109 739 4.90615606 - 9 738 -0.168273076 - 10 738 -0.17454651 - 11 738 -0.174106568 - 12 738 -0.214476198 - 13 738 -0.239945441 - 14 738 -0.268168569 - 15 738 -0.321202695 - 16 738 -0.345222682 - 17 738 -0.3551265 - 18 738 -0.349452168 - 19 738 -0.346029341 - 20 738 -0.342023969 - 21 738 -0.334575742 - 22 738 -0.329088449 - 23 738 -0.320663154 - 24 738 -0.31398347 - 25 738 -0.316147029 - 26 738 -0.321025461 - 27 738 -0.354946822 - 28 738 -0.381578147 - 29 738 -0.416699737 - 30 738 -0.505320907 - 31 738 -0.600668907 - 32 738 -0.741764367 - 33 738 -0.743617356 - 34 738 -0.736424267 - 35 738 -0.724455655 - 36 738 -0.714886665 - 37 738 -0.754835308 - 38 738 -0.799883962 - 39 738 -0.843988419 - 40 738 -0.846850932 - 41 738 -0.824832141 - 42 738 -0.806597531 - 43 738 -0.786748171 - 44 738 -0.776881456 - 45 738 -0.743346095 - 46 738 -0.710049689 - 47 738 -0.667819202 - 48 738 -0.62800622 - 49 738 -0.58407557 - 50 738 -0.50383091 - 51 738 -0.42721957 - 52 738 -0.364219308 - 53 738 -0.292843312 - 54 738 -0.234248102 - 55 738 -0.1848775 - 56 738 -0.143124089 - 57 738 -0.0521817021 - 58 738 0.0784452483 - 59 738 0.24364984 - 60 738 0.422341794 - 61 738 0.608420908 - 62 738 0.780583382 - 63 738 0.931956887 - 64 738 1.08771038 - 65 738 1.30150676 - 66 738 1.59479761 - 67 738 1.92453742 - 68 738 2.2816515 - 69 738 2.56001711 - 70 738 2.64191937 - 71 738 2.74718952 - 72 738 2.86385822 - 73 738 2.98528647 - 74 738 3.1181879 - 75 738 3.25281334 - 76 738 3.3532052 - 77 738 3.43136811 - 78 738 3.49885154 - 79 738 3.54388571 - 80 738 3.5884707 - 81 738 3.64432716 - 82 738 3.73001719 - 83 738 3.8476615 - 84 738 3.98002315 - 85 738 4.13533688 - 86 738 4.29936695 - 87 738 4.464324 - 88 738 4.62428331 - 89 738 4.78027344 - 90 738 4.90258217 - 91 738 5.01426125 - 92 738 5.11725092 - 93 738 5.19665956 - 94 738 5.24091959 - 95 738 5.27237177 - 96 738 5.29166937 - 97 738 5.30594778 - 98 738 5.33434343 - 99 738 5.3819685 - 100 738 5.44377375 - 101 738 5.49348402 - 102 738 5.44320583 - 103 738 5.37612629 - 104 738 5.29150105 - 105 738 5.23098612 - 106 738 5.16611052 - 107 738 5.0920558 - 108 738 5.01671076 - 109 738 4.9295001 - 9 737 -0.176577762 - 10 737 -0.171025023 - 11 737 -0.179510862 - 12 737 -0.18700403 - 13 737 -0.22660169 - 14 737 -0.254883915 - 15 737 -0.303613365 - 16 737 -0.326693416 - 17 737 -0.332534254 - 18 737 -0.321994692 - 19 737 -0.320618719 - 20 737 -0.316523015 - 21 737 -0.310522527 - 22 737 -0.308085501 - 23 737 -0.302523047 - 24 737 -0.295610934 - 25 737 -0.286748618 - 26 737 -0.279953718 - 27 737 -0.300133884 - 28 737 -0.323817432 - 29 737 -0.358550817 - 30 737 -0.470387816 - 31 737 -0.57987535 - 32 737 -0.694483936 - 33 737 -0.694022775 - 34 737 -0.684039116 - 35 737 -0.669199765 - 36 737 -0.652103722 - 37 737 -0.695712626 - 38 737 -0.738300622 - 39 737 -0.774677098 - 40 737 -0.76685977 - 41 737 -0.74977845 - 42 737 -0.740113139 - 43 737 -0.728337288 - 44 737 -0.688651741 - 45 737 -0.686323345 - 46 737 -0.64720571 - 47 737 -0.599240363 - 48 737 -0.545927584 - 49 737 -0.487997174 - 50 737 -0.39847368 - 51 737 -0.313418031 - 52 737 -0.239041567 - 53 737 -0.169789121 - 54 737 -0.119419008 - 55 737 -0.080561094 - 56 737 -0.0281641241 - 57 737 0.0614691786 - 58 737 0.222084895 - 59 737 0.409773916 - 60 737 0.604675293 - 61 737 0.803355813 - 62 737 1.00344074 - 63 737 1.18505704 - 64 737 1.34359455 - 65 737 1.57623506 - 66 737 1.87214935 - 67 737 2.1512177 - 68 737 2.49369073 - 69 737 2.63565302 - 70 737 2.74820852 - 71 737 2.85510015 - 72 737 2.96776795 - 73 737 3.08672452 - 74 737 3.20304823 - 75 737 3.30045104 - 76 737 3.3832314 - 77 737 3.44524169 - 78 737 3.50454545 - 79 737 3.54439306 - 80 737 3.59082866 - 81 737 3.64834428 - 82 737 3.7337482 - 83 737 3.86373043 - 84 737 4.00404119 - 85 737 4.16694069 - 86 737 4.33247805 - 87 737 4.50119877 - 88 737 4.65790129 - 89 737 4.81246758 - 90 737 4.93885851 - 91 737 5.04954863 - 92 737 5.14794016 - 93 737 5.23714876 - 94 737 5.30801821 - 95 737 5.36248302 - 96 737 5.40367031 - 97 737 5.42125845 - 98 737 5.44558334 - 99 737 5.48947096 - 100 737 5.54306221 - 101 737 5.57491446 - 102 737 5.50902367 - 103 737 5.43549824 - 104 737 5.35116482 - 105 737 5.2903595 - 106 737 5.22143459 - 107 737 5.14721775 - 108 737 5.05971956 - 109 737 4.96106339 - 9 736 -0.181888312 - 10 736 -0.175720334 - 11 736 -0.182280883 - 12 736 -0.184681758 - 13 736 -0.213266239 - 14 736 -0.236109987 - 15 736 -0.278541595 - 16 736 -0.30395028 - 17 736 -0.292254984 - 18 736 -0.302053303 - 19 736 -0.295921475 - 20 736 -0.286121666 - 21 736 -0.28777498 - 22 736 -0.283413678 - 23 736 -0.284079671 - 24 736 -0.279147565 - 25 736 -0.272949815 - 26 736 -0.26535216 - 27 736 -0.277795017 - 28 736 -0.294212013 - 29 736 -0.323034734 - 30 736 -0.433852285 - 31 736 -0.542367816 - 32 736 -0.647418737 - 33 736 -0.63554424 - 34 736 -0.619758129 - 35 736 -0.604231775 - 36 736 -0.582819164 - 37 736 -0.63878113 - 38 736 -0.682544291 - 39 736 -0.714430809 - 40 736 -0.689807236 - 41 736 -0.668377101 - 42 736 -0.65888536 - 43 736 -0.651772857 - 44 736 -0.641019642 - 45 736 -0.605275512 - 46 736 -0.562182009 - 47 736 -0.512983501 - 48 736 -0.45020467 - 49 736 -0.380556703 - 50 736 -0.286595762 - 51 736 -0.193473697 - 52 736 -0.108971737 - 53 736 -0.0357568972 - 54 736 0.015879821 - 55 736 0.0462846085 - 56 736 0.115439877 - 57 736 0.216234803 - 58 736 0.384956539 - 59 736 0.575080574 - 60 736 0.774695694 - 61 736 0.975417852 - 62 736 1.21749258 - 63 736 1.46688056 - 64 736 1.73545814 - 65 736 1.99117911 - 66 736 2.10526133 - 67 736 2.33107734 - 68 736 2.60518837 - 69 736 2.72670388 - 70 736 2.83682561 - 71 736 2.93912745 - 72 736 3.04416299 - 73 736 3.16171813 - 74 736 3.26849985 - 75 736 3.34848022 - 76 736 3.41236138 - 77 736 3.46935058 - 78 736 3.51911569 - 79 736 3.56649995 - 80 736 3.60584331 - 81 736 3.65662217 - 82 736 3.74964285 - 83 736 3.8978703 - 84 736 4.05674362 - 85 736 4.23011112 - 86 736 4.39624596 - 87 736 4.56115198 - 88 736 4.70080233 - 89 736 4.84327507 - 90 736 4.96768045 - 91 736 5.079772 - 92 736 5.19251108 - 93 736 5.29591465 - 94 736 5.39752483 - 95 736 5.45205021 - 96 736 5.49519491 - 97 736 5.5246067 - 98 736 5.54782677 - 99 736 5.58987856 - 100 736 5.63119459 - 101 736 5.66310406 - 102 736 5.57944298 - 103 736 5.50308704 - 104 736 5.4271121 - 105 736 5.36521387 - 106 736 5.29109001 - 107 736 5.21093464 - 108 736 5.11404085 - 109 736 5.01067781 - 9 735 -0.183289185 - 10 735 -0.176091924 - 11 735 -0.179421991 - 12 735 -0.183903441 - 13 735 -0.205452755 - 14 735 -0.221795037 - 15 735 -0.245973751 - 16 735 -0.266586542 - 17 735 -0.286986411 - 18 735 -0.277885348 - 19 735 -0.265953243 - 20 735 -0.263740361 - 21 735 -0.256432742 - 22 735 -0.26169005 - 23 735 -0.265272081 - 24 735 -0.265912712 - 25 735 -0.265185654 - 26 735 -0.263866812 - 27 735 -0.271402955 - 28 735 -0.277397543 - 29 735 -0.293771088 - 30 735 -0.397363096 - 31 735 -0.502503872 - 32 735 -0.610086739 - 33 735 -0.592340171 - 34 735 -0.568256438 - 35 735 -0.551166832 - 36 735 -0.531369686 - 37 735 -0.590767145 - 38 735 -0.636017799 - 39 735 -0.671048462 - 40 735 -0.640193462 - 41 735 -0.61562562 - 42 735 -0.596569479 - 43 735 -0.579028904 - 44 735 -0.555561185 - 45 735 -0.509317458 - 46 735 -0.465254962 - 47 735 -0.41690731 - 48 735 -0.35424909 - 49 735 -0.283472717 - 50 735 -0.194186583 - 51 735 -0.089100644 - 52 735 0.0134852901 - 53 735 0.102550723 - 54 735 0.179157659 - 55 735 0.228329524 - 56 735 0.299823731 - 57 735 0.404135257 - 58 735 0.57408303 - 59 735 0.750590801 - 60 735 0.940011621 - 61 735 1.146703 - 62 735 1.40146327 - 63 735 1.66136646 - 64 735 1.92710412 - 65 735 2.16882181 - 66 735 2.28864217 - 67 735 2.45917487 - 68 735 2.66969895 - 69 735 2.7936182 - 70 735 2.89907622 - 71 735 2.99682665 - 72 735 3.09246063 - 73 735 3.20698047 - 74 735 3.30214238 - 75 735 3.38203812 - 76 735 3.43779492 - 77 735 3.49280953 - 78 735 3.53881001 - 79 735 3.58839154 - 80 735 3.62093592 - 81 735 3.6726222 - 82 735 3.79679775 - 83 735 3.96743751 - 84 735 4.13810444 - 85 735 4.32223749 - 86 735 4.49317884 - 87 735 4.64841604 - 88 735 4.77123547 - 89 735 4.89989281 - 90 735 5.01203537 - 91 735 5.1198082 - 92 735 5.24619389 - 93 735 5.3630085 - 94 735 5.47421455 - 95 735 5.53349733 - 96 735 5.58114719 - 97 735 5.61589289 - 98 735 5.63258362 - 99 735 5.67435122 - 100 735 5.70246935 - 101 735 5.73027992 - 102 735 5.64589739 - 103 735 5.5705719 - 104 735 5.50282335 - 105 735 5.44143534 - 106 735 5.36700678 - 107 735 5.27897072 - 108 735 5.18030167 - 109 735 5.06913948 - 9 734 -0.17552796 - 10 734 -0.166196406 - 11 734 -0.163607061 - 12 734 -0.168079227 - 13 734 -0.176946893 - 14 734 -0.189874634 - 15 734 -0.204943478 - 16 734 -0.225378543 - 17 734 -0.245744258 - 18 734 -0.253811657 - 19 734 -0.23906751 - 20 734 -0.244901001 - 21 734 -0.244714484 - 22 734 -0.24199377 - 23 734 -0.242051885 - 24 734 -0.248099238 - 25 734 -0.248635858 - 26 734 -0.250932246 - 27 734 -0.256589979 - 28 734 -0.2577672 - 29 734 -0.264355093 - 30 734 -0.357018083 - 31 734 -0.458998859 - 32 734 -0.569915354 - 33 734 -0.557860672 - 34 734 -0.536105037 - 35 734 -0.522823036 - 36 734 -0.501746416 - 37 734 -0.553645551 - 38 734 -0.598946691 - 39 734 -0.637708127 - 40 734 -0.60457921 - 41 734 -0.576134384 - 42 734 -0.550912261 - 43 734 -0.516474247 - 44 734 -0.478213459 - 45 734 -0.427380949 - 46 734 -0.381367743 - 47 734 -0.326871157 - 48 734 -0.259481013 - 49 734 -0.188391656 - 50 734 -0.0988945886 - 51 734 0.0180570669 - 52 734 0.136726499 - 53 734 0.24834466 - 54 734 0.34490186 - 55 734 0.425398916 - 56 734 0.514561534 - 57 734 0.645988286 - 58 734 0.802235723 - 59 734 0.949433982 - 60 734 1.11009705 - 61 734 1.30852187 - 62 734 1.54563594 - 63 734 1.79914296 - 64 734 2.06096339 - 65 734 2.28393888 - 66 734 2.4105525 - 67 734 2.55523562 - 68 734 2.70384765 - 69 734 2.84187174 - 70 734 2.94925714 - 71 734 3.04076552 - 72 734 3.13096094 - 73 734 3.24469757 - 74 734 3.32604456 - 75 734 3.38110113 - 76 734 3.45698738 - 77 734 3.51319337 - 78 734 3.55584908 - 79 734 3.61245418 - 80 734 3.66252589 - 81 734 3.73957992 - 82 734 3.8842485 - 83 734 4.05145788 - 84 734 4.22972059 - 85 734 4.43432617 - 86 734 4.61213398 - 87 734 4.74516582 - 88 734 4.84846401 - 89 734 4.96288681 - 90 734 5.06468964 - 91 734 5.17263651 - 92 734 5.31061983 - 93 734 5.43436527 - 94 734 5.55180407 - 95 734 5.62229729 - 96 734 5.67792034 - 97 734 5.71249485 - 98 734 5.72510004 - 99 734 5.74888039 - 100 734 5.76045942 - 101 734 5.78033924 - 102 734 5.70563316 - 103 734 5.63165808 - 104 734 5.56586027 - 105 734 5.50744247 - 106 734 5.40672731 - 107 734 5.33910751 - 108 734 5.23982811 - 109 734 5.12630939 - 9 733 -0.156285763 - 10 733 -0.143394649 - 11 733 -0.13636291 - 12 733 -0.145151496 - 13 733 -0.146793574 - 14 733 -0.15418078 - 15 733 -0.163311645 - 16 733 -0.19123596 - 17 733 -0.207803339 - 18 733 -0.219391719 - 19 733 -0.215686649 - 20 733 -0.229360968 - 21 733 -0.231311649 - 22 733 -0.227565557 - 23 733 -0.224029914 - 24 733 -0.229796991 - 25 733 -0.227882937 - 26 733 -0.228366822 - 27 733 -0.227187619 - 28 733 -0.223820433 - 29 733 -0.222355589 - 30 733 -0.306940049 - 31 733 -0.406912297 - 32 733 -0.518300176 - 33 733 -0.519349992 - 34 733 -0.508436143 - 35 733 -0.504016459 - 36 733 -0.482327282 - 37 733 -0.522075951 - 38 733 -0.565499008 - 39 733 -0.614392698 - 40 733 -0.582579732 - 41 733 -0.554148078 - 42 733 -0.525325835 - 43 733 -0.478075296 - 44 733 -0.428601176 - 45 733 -0.366768628 - 46 733 -0.308396071 - 47 733 -0.240919977 - 48 733 -0.161198795 - 49 733 -0.0783853158 - 50 733 0.0149013065 - 51 733 0.127153262 - 52 733 0.268545359 - 53 733 0.39511767 - 54 733 0.505491197 - 55 733 0.599132836 - 56 733 0.705840349 - 57 733 0.848637104 - 58 733 0.999172747 - 59 733 1.1542381 - 60 733 1.32079923 - 61 733 1.50775564 - 62 733 1.71077275 - 63 733 1.95596397 - 64 733 2.19587493 - 65 733 2.38121438 - 66 733 2.51348972 - 67 733 2.631145 - 68 733 2.76236534 - 69 733 2.89437556 - 70 733 2.99045825 - 71 733 3.0790391 - 72 733 3.15788174 - 73 733 3.25532198 - 74 733 3.3284936 - 75 733 3.39634085 - 76 733 3.46510458 - 77 733 3.52271914 - 78 733 3.56571531 - 79 733 3.63645887 - 80 733 3.71093392 - 81 733 3.83059287 - 82 733 3.9906733 - 83 733 4.17497015 - 84 733 4.36939573 - 85 733 4.5519228 - 86 733 4.70675564 - 87 733 4.82924795 - 88 733 4.92954111 - 89 733 5.03735161 - 90 733 5.14235926 - 91 733 5.25646162 - 92 733 5.37053394 - 93 733 5.52100563 - 94 733 5.63630819 - 95 733 5.73279428 - 96 733 5.78899288 - 97 733 5.82017708 - 98 733 5.82639694 - 99 733 5.82814026 - 100 733 5.8243413 - 101 733 5.82694578 - 102 733 5.76608419 - 103 733 5.69045353 - 104 733 5.60310555 - 105 733 5.54202223 - 106 733 5.46907711 - 107 733 5.38201666 - 108 733 5.28454685 - 109 733 5.18014574 - 9 732 -0.123948857 - 10 732 -0.10711927 - 11 732 -0.0983287394 - 12 732 -0.106178351 - 13 732 -0.106069468 - 14 732 -0.110748179 - 15 732 -0.116740361 - 16 732 -0.150708124 - 17 732 -0.172367796 - 18 732 -0.187758908 - 19 732 -0.194161251 - 20 732 -0.211965948 - 21 732 -0.211055294 - 22 732 -0.204363897 - 23 732 -0.199194461 - 24 732 -0.195895627 - 25 732 -0.185312137 - 26 732 -0.17873694 - 27 732 -0.175713494 - 28 732 -0.173754513 - 29 732 -0.168493286 - 30 732 -0.236478955 - 31 732 -0.338212997 - 32 732 -0.466731071 - 33 732 -0.477246225 - 34 732 -0.471994251 - 35 732 -0.478655636 - 36 732 -0.457678109 - 37 732 -0.487605065 - 38 732 -0.528301477 - 39 732 -0.58045423 - 40 732 -0.543822408 - 41 732 -0.513688624 - 42 732 -0.48208946 - 43 732 -0.428255469 - 44 732 -0.373415589 - 45 732 -0.304615796 - 46 732 -0.239895567 - 47 732 -0.160439521 - 48 732 -0.0643667579 - 49 732 0.0384183973 - 50 732 0.147396907 - 51 732 0.260503858 - 52 732 0.401108384 - 53 732 0.541965306 - 54 732 0.634668469 - 55 732 0.755731344 - 56 732 0.848433495 - 57 732 0.981792867 - 58 732 1.14200962 - 59 732 1.31263518 - 60 732 1.50488305 - 61 732 1.71525168 - 62 732 1.92144299 - 63 732 2.12639451 - 64 732 2.3279047 - 65 732 2.46633005 - 66 732 2.58081436 - 67 732 2.69957805 - 68 732 2.8214128 - 69 732 2.95007992 - 70 732 3.03164935 - 71 732 3.11999822 - 72 732 3.18805766 - 73 732 3.26178598 - 74 732 3.3343873 - 75 732 3.42105079 - 76 732 3.48117876 - 77 732 3.55051374 - 78 732 3.60604644 - 79 732 3.69460225 - 80 732 3.79319811 - 81 732 3.94374061 - 82 732 4.11356688 - 83 732 4.30154324 - 84 732 4.49416971 - 85 732 4.66089058 - 86 732 4.7982893 - 87 732 4.92280483 - 88 732 5.03405476 - 89 732 5.13959599 - 90 732 5.25174046 - 91 732 5.37682724 - 92 732 5.49543667 - 93 732 5.62406635 - 94 732 5.74294233 - 95 732 5.85936451 - 96 732 5.91026306 - 97 732 5.920228 - 98 732 5.92195272 - 99 732 5.91607285 - 100 732 5.90548897 - 101 732 5.8830328 - 102 732 5.86749935 - 103 732 5.74090815 - 104 732 5.64036226 - 105 732 5.55187035 - 106 732 5.48049688 - 107 732 5.40208864 - 108 732 5.31664467 - 109 732 5.22570419 - 9 731 -0.0759293288 - 10 731 -0.0497515947 - 11 731 -0.0419986509 - 12 731 -0.0514654629 - 13 731 -0.0568712242 - 14 731 -0.0633018911 - 15 731 -0.0750704408 - 16 731 -0.10680189 - 17 731 -0.130154416 - 18 731 -0.151430294 - 19 731 -0.163545534 - 20 731 -0.178489387 - 21 731 -0.173074827 - 22 731 -0.163718879 - 23 731 -0.15579699 - 24 731 -0.138632938 - 25 731 -0.116101205 - 26 731 -0.097550422 - 27 731 -0.0853995457 - 28 731 -0.075463511 - 29 731 -0.0714576468 - 30 731 -0.136962712 - 31 731 -0.238364309 - 32 731 -0.392874151 - 33 731 -0.41870448 - 34 731 -0.424578965 - 35 731 -0.438119739 - 36 731 -0.421310425 - 37 731 -0.442856222 - 38 731 -0.47944054 - 39 731 -0.532732069 - 40 731 -0.491505474 - 41 731 -0.456326753 - 42 731 -0.413776457 - 43 731 -0.357961476 - 44 731 -0.298318416 - 45 731 -0.23006402 - 46 731 -0.162888244 - 47 731 -0.0744473264 - 48 731 0.041919373 - 49 731 0.175851494 - 50 731 0.291652352 - 51 731 0.403896481 - 52 731 0.540716767 - 53 731 0.676912606 - 54 731 0.800821185 - 55 731 0.905445695 - 56 731 0.978961766 - 57 731 1.09975719 - 58 731 1.28407359 - 59 731 1.46938157 - 60 731 1.6963836 - 61 731 1.92950702 - 62 731 2.14061713 - 63 731 2.32913661 - 64 731 2.4630127 - 65 731 2.56154013 - 66 731 2.64975739 - 67 731 2.76058984 - 68 731 2.87585354 - 69 731 2.99611545 - 70 731 3.06967878 - 71 731 3.14245582 - 72 731 3.2047267 - 73 731 3.29308534 - 74 731 3.35032678 - 75 731 3.44295359 - 76 731 3.52215624 - 77 731 3.60188079 - 78 731 3.67682695 - 79 731 3.77658296 - 80 731 3.88787818 - 81 731 4.05085564 - 82 731 4.22568226 - 83 731 4.4107666 - 84 731 4.57637024 - 85 731 4.73517227 - 86 731 4.867167 - 87 731 5.00089645 - 88 731 5.13267136 - 89 731 5.25523233 - 90 731 5.38457823 - 91 731 5.51957321 - 92 731 5.64563036 - 93 731 5.73171711 - 94 731 5.84582615 - 95 731 5.98932552 - 96 731 6.02641344 - 97 731 6.02063799 - 98 731 6.01460886 - 99 731 6.00249863 - 100 731 5.98134995 - 101 731 5.94027567 - 102 731 5.91794586 - 103 731 5.77947855 - 104 731 5.6600914 - 105 731 5.55311632 - 106 731 5.4890275 - 107 731 5.42075205 - 108 731 5.35426855 - 109 731 5.28071785 - 10 730 0.0324857272 - 11 730 0.0430701971 - 12 730 0.0382850431 - 13 730 0.0318890475 - 14 730 0.0225076973 - 15 730 0.00369422091 - 16 730 -0.0239512865 - 17 730 -0.0519991517 - 18 730 -0.0844742507 - 19 730 -0.112100713 - 20 730 -0.128963009 - 21 730 -0.12259388 - 22 730 -0.108622201 - 23 730 -0.0919610709 - 24 730 -0.0652618483 - 25 730 -0.0335757993 - 26 730 -0.000859978027 - 27 730 0.0255042799 - 28 730 0.0455911942 - 29 730 0.0536629707 - 30 730 0.0342269354 - 31 730 -0.129327014 - 32 730 -0.239248902 - 33 730 -0.335333139 - 34 730 -0.362799436 - 35 730 -0.377544075 - 36 730 -0.36765638 - 37 730 -0.383283287 - 38 730 -0.415891796 - 39 730 -0.46271348 - 40 730 -0.419367284 - 41 730 -0.384184152 - 42 730 -0.330868214 - 43 730 -0.276061088 - 44 730 -0.210455135 - 45 730 -0.139177307 - 46 730 -0.0602705702 - 47 730 0.0273690801 - 48 730 0.150374934 - 49 730 0.295281261 - 50 730 0.440160632 - 51 730 0.567240715 - 52 730 0.703927219 - 53 730 0.819282115 - 54 730 0.925680041 - 55 730 1.03813028 - 56 730 1.13302135 - 57 730 1.26772106 - 58 730 1.43838406 - 59 730 1.67735088 - 60 730 1.87420201 - 61 730 2.0996592 - 62 730 2.29203129 - 63 730 2.45363379 - 64 730 2.56290913 - 65 730 2.64055705 - 66 730 2.71712399 - 67 730 2.81579876 - 68 730 2.92326427 - 69 730 3.03887057 - 70 730 3.101969 - 71 730 3.15849185 - 72 730 3.22018814 - 73 730 3.29367018 - 74 730 3.38505363 - 75 730 3.48860002 - 76 730 3.58719039 - 77 730 3.67591739 - 78 730 3.77351546 - 79 730 3.88120198 - 80 730 4.00208759 - 81 730 4.15063858 - 82 730 4.32034683 - 83 730 4.4969449 - 84 730 4.65473318 - 85 730 4.79836988 - 86 730 4.92259264 - 87 730 5.05796289 - 88 730 5.19520617 - 89 730 5.34345722 - 90 730 5.4871397 - 91 730 5.62582207 - 92 730 5.7549181 - 93 730 5.8160758 - 94 730 5.92452002 - 95 730 6.07426882 - 96 730 6.0897994 - 97 730 6.08153868 - 98 730 6.06916761 - 99 730 6.05340958 - 100 730 6.02257872 - 101 730 5.98934031 - 102 730 5.94351721 - 103 730 5.7954092 - 104 730 5.66811657 - 105 730 5.54949331 - 106 730 5.49019337 - 107 730 5.43654108 - 108 730 5.38950205 - 109 730 5.33368158 - 10 729 0.154584348 - 11 729 0.17153357 - 12 729 0.181513548 - 13 729 0.184035033 - 14 729 0.174540892 - 15 729 0.152698115 - 16 729 0.120589748 - 17 729 0.0787840635 - 18 729 0.0348568186 - 19 729 -0.00719054416 - 20 729 -0.0409044102 - 21 729 -0.0493140779 - 22 729 -0.0397335142 - 23 729 -0.0227457192 - 24 729 0.0108348457 - 25 729 0.0522240065 - 26 729 0.0945628732 - 27 729 0.131293371 - 28 729 0.161538452 - 29 729 0.113412485 - 30 729 0.0889500827 - 31 729 -0.0148428977 - 32 729 -0.13498041 - 33 729 -0.249250591 - 34 729 -0.283525765 - 35 729 -0.296750605 - 36 729 -0.292935669 - 37 729 -0.306513727 - 38 729 -0.337932676 - 39 729 -0.379929274 - 40 729 -0.345854551 - 41 729 -0.316299856 - 42 729 -0.262314528 - 43 729 -0.196839899 - 44 729 -0.125291079 - 45 729 -0.0541470349 - 46 729 0.0340219103 - 47 729 0.123143978 - 48 729 0.244540468 - 49 729 0.398942381 - 50 729 0.555026352 - 51 729 0.683723629 - 52 729 0.815137088 - 53 729 0.938555062 - 54 729 1.04542375 - 55 729 1.15537345 - 56 729 1.27287245 - 57 729 1.4406985 - 58 729 1.62449586 - 59 729 1.82326257 - 60 729 2.07583094 - 61 729 2.28070951 - 62 729 2.44711328 - 63 729 2.59139204 - 64 729 2.66897321 - 65 729 2.71619296 - 66 729 2.76945901 - 67 729 2.8659308 - 68 729 2.96311235 - 69 729 3.06853914 - 70 729 3.10811186 - 71 729 3.161762 - 72 729 3.23098421 - 73 729 3.32062531 - 74 729 3.42781258 - 75 729 3.53820753 - 76 729 3.65602732 - 77 729 3.76112843 - 78 729 3.87058783 - 79 729 3.97619057 - 80 729 4.09602165 - 81 729 4.23248911 - 82 729 4.39298868 - 83 729 4.55482769 - 84 729 4.71182442 - 85 729 4.84406853 - 86 729 4.96009874 - 87 729 5.09838581 - 88 729 5.23878813 - 89 729 5.39517069 - 90 729 5.53697348 - 91 729 5.66491795 - 92 729 5.78352547 - 93 729 5.86709881 - 94 729 5.97025967 - 95 729 6.09647131 - 96 729 6.10638237 - 97 729 6.09381485 - 98 729 6.0725317 - 99 729 6.04819393 - 100 729 6.01859045 - 101 729 5.98498392 - 102 729 5.93194389 - 103 729 5.79489708 - 104 729 5.66568136 - 105 729 5.54517078 - 106 729 5.4911623 - 107 729 5.44744539 - 108 729 5.41282988 - 109 729 5.37383223 - 10 728 0.309549212 - 11 728 0.336030185 - 12 728 0.353254288 - 13 728 0.360833406 - 14 728 0.356583893 - 15 728 0.333412498 - 16 728 0.293396384 - 17 728 0.238580957 - 18 728 0.181326047 - 19 728 0.124534078 - 20 728 0.0782200992 - 21 728 0.0526429527 - 22 728 0.0445697084 - 23 728 0.0543690249 - 24 728 0.0850599408 - 25 728 0.128282622 - 26 728 0.171212286 - 27 728 0.210658118 - 28 728 0.238525793 - 29 728 0.249958888 - 30 728 0.217680573 - 31 728 0.0792406872 - 32 728 -0.0352127701 - 33 728 -0.155792579 - 34 728 -0.181503996 - 35 728 -0.1933541 - 36 728 -0.194776461 - 37 728 -0.211747527 - 38 728 -0.246405438 - 39 728 -0.295492738 - 40 728 -0.271430224 - 41 728 -0.252334058 - 42 728 -0.20845075 - 43 728 -0.136763245 - 44 728 -0.0590586551 - 45 728 0.0206459351 - 46 728 0.116518006 - 47 728 0.209053159 - 48 728 0.330078125 - 49 728 0.47495997 - 50 728 0.637598157 - 51 728 0.765051126 - 52 728 0.898632228 - 53 728 1.03559017 - 54 728 1.16047645 - 55 728 1.28760242 - 56 728 1.43298614 - 57 728 1.61139822 - 58 728 1.80998373 - 59 728 2.03474212 - 60 728 2.25088906 - 61 728 2.44071531 - 62 728 2.60015726 - 63 728 2.74126458 - 64 728 2.77128363 - 65 728 2.79418159 - 66 728 2.83282804 - 67 728 2.91068506 - 68 728 2.99360275 - 69 728 3.08663106 - 70 728 3.12257314 - 71 728 3.18737936 - 72 728 3.27056074 - 73 728 3.37744021 - 74 728 3.5082109 - 75 728 3.63111663 - 76 728 3.75586176 - 77 728 3.86619759 - 78 728 3.9791379 - 79 728 4.07984209 - 80 728 4.19849968 - 81 728 4.32492733 - 82 728 4.46831942 - 83 728 4.61772346 - 84 728 4.77272749 - 85 728 4.91018629 - 86 728 5.01329803 - 87 728 5.14469814 - 88 728 5.28328896 - 89 728 5.44090605 - 90 728 5.56560135 - 91 728 5.68426657 - 92 728 5.80628538 - 93 728 5.8897419 - 94 728 5.98616934 - 95 728 6.10243702 - 96 728 6.10391951 - 97 728 6.08454561 - 98 728 6.05578756 - 99 728 6.02671814 - 100 728 5.99605989 - 101 728 5.9628315 - 102 728 5.91709995 - 103 728 5.7812686 - 104 728 5.65512896 - 105 728 5.53495884 - 106 728 5.48873138 - 107 728 5.45512772 - 108 728 5.43151283 - 109 728 5.40453911 - 10 727 0.530376852 - 11 727 0.524300635 - 12 727 0.530472994 - 13 727 0.533468127 - 14 727 0.527790904 - 15 727 0.505342126 - 16 727 0.466153234 - 17 727 0.40406093 - 18 727 0.326889068 - 19 727 0.256352454 - 20 727 0.194311395 - 21 727 0.161570191 - 22 727 0.136840239 - 23 727 0.132199615 - 24 727 0.154784545 - 25 727 0.189559937 - 26 727 0.229072168 - 27 727 0.269669354 - 28 727 0.294499904 - 29 727 0.297635168 - 30 727 0.269415915 - 31 727 0.174754158 - 32 727 0.0682205483 - 33 727 -0.0489864051 - 34 727 -0.0677210391 - 35 727 -0.0747825652 - 36 727 -0.0691158175 - 37 727 -0.102380343 - 38 727 -0.142877206 - 39 727 -0.193323791 - 40 727 -0.190725163 - 41 727 -0.192521051 - 42 727 -0.167643622 - 43 727 -0.101123109 - 44 727 -0.0159678347 - 45 727 0.0737577528 - 46 727 0.178489193 - 47 727 0.287004322 - 48 727 0.416186035 - 49 727 0.557883799 - 50 727 0.708765149 - 51 727 0.832201064 - 52 727 0.973679543 - 53 727 1.11680162 - 54 727 1.25266302 - 55 727 1.40380847 - 56 727 1.56768143 - 57 727 1.76197863 - 58 727 1.97227716 - 59 727 2.20527434 - 60 727 2.40563583 - 61 727 2.58365178 - 62 727 2.73303461 - 63 727 2.84133339 - 64 727 2.80049515 - 65 727 2.87212586 - 66 727 2.90820456 - 67 727 2.94252491 - 68 727 3.00810099 - 69 727 3.10157609 - 70 727 3.13628817 - 71 727 3.21688032 - 72 727 3.32463098 - 73 727 3.44937491 - 74 727 3.59661174 - 75 727 3.72879434 - 76 727 3.84433627 - 77 727 3.96473718 - 78 727 4.07831049 - 79 727 4.18006706 - 80 727 4.30180168 - 81 727 4.42287588 - 82 727 4.55052948 - 83 727 4.69673538 - 84 727 4.84211159 - 85 727 4.97487211 - 86 727 5.07769156 - 87 727 5.19365978 - 88 727 5.32249022 - 89 727 5.4675293 - 90 727 5.6063714 - 91 727 5.70444727 - 92 727 5.82371378 - 93 727 5.89305592 - 94 727 5.98286104 - 95 727 6.08245945 - 96 727 6.0782876 - 97 727 6.06024837 - 98 727 6.02285814 - 99 727 5.98752403 - 100 727 5.95631027 - 101 727 5.92615461 - 102 727 5.88856697 - 103 727 5.7576766 - 104 727 5.63882351 - 105 727 5.52223063 - 106 727 5.49058962 - 107 727 5.46468067 - 108 727 5.44517279 - 109 727 5.42407036 - 10 726 0.817560971 - 11 726 0.75503999 - 12 726 0.727672815 - 13 726 0.704819739 - 14 726 0.677927613 - 15 726 0.653178096 - 16 726 0.614780128 - 17 726 0.549811423 - 18 726 0.470073164 - 19 726 0.39456144 - 20 726 0.330363691 - 21 726 0.287397355 - 22 726 0.252901286 - 23 726 0.237401709 - 24 726 0.244958401 - 25 726 0.268909097 - 26 726 0.296192288 - 27 726 0.333275288 - 28 726 0.35651651 - 29 726 0.357024312 - 30 726 0.34235099 - 31 726 0.274469614 - 32 726 0.18216151 - 33 726 0.0754281133 - 34 726 0.0559286363 - 35 726 0.0529920943 - 36 726 0.0627015829 - 37 726 0.01454644 - 38 726 -0.0307656676 - 39 726 -0.076842837 - 40 726 -0.0944673494 - 41 726 -0.117387265 - 42 726 -0.107619204 - 43 726 -0.0452656858 - 44 726 0.044817809 - 45 726 0.151684999 - 46 726 0.266461849 - 47 726 0.388749033 - 48 726 0.520351052 - 49 726 0.654834449 - 50 726 0.796230853 - 51 726 0.934467673 - 52 726 1.07962775 - 53 726 1.22273529 - 54 726 1.36064243 - 55 726 1.53010964 - 56 726 1.71095288 - 57 726 1.90259099 - 58 726 2.10799861 - 59 726 2.32207465 - 60 726 2.50660801 - 61 726 2.66155457 - 62 726 2.77154303 - 63 726 2.84783387 - 64 726 2.89019871 - 65 726 2.88449454 - 66 726 2.91995311 - 67 726 2.95482111 - 68 726 3.0104723 - 69 726 3.0629611 - 70 726 3.1202445 - 71 726 3.22949958 - 72 726 3.36895418 - 73 726 3.52203131 - 74 726 3.67563272 - 75 726 3.81778002 - 76 726 3.94596481 - 77 726 4.06224775 - 78 726 4.1767621 - 79 726 4.279737 - 80 726 4.41140318 - 81 726 4.52119446 - 82 726 4.64701271 - 83 726 4.77917576 - 84 726 4.9100585 - 85 726 5.03169441 - 86 726 5.13360548 - 87 726 5.23115396 - 88 726 5.34113121 - 89 726 5.46665907 - 90 726 5.59312391 - 91 726 5.70601845 - 92 726 5.80884552 - 93 726 5.87916231 - 94 726 5.96329165 - 95 726 6.06219101 - 96 726 6.05391645 - 97 726 6.0282712 - 98 726 5.98386669 - 99 726 5.9434967 - 100 726 5.9051218 - 101 726 5.8720355 - 102 726 5.83589602 - 103 726 5.7258091 - 104 726 5.61913586 - 105 726 5.51470518 - 106 726 5.49690342 - 107 726 5.48054218 - 108 726 5.46040821 - 109 726 5.44117689 - 10 725 1.12871289 - 11 725 1.03249753 - 12 725 0.981420398 - 13 725 0.932765126 - 14 725 0.874848545 - 15 725 0.821830988 - 16 725 0.771048307 - 17 725 0.70936811 - 18 725 0.633882225 - 19 725 0.564757705 - 20 725 0.498149276 - 21 725 0.453834385 - 22 725 0.417032123 - 23 725 0.40106681 - 24 725 0.392130762 - 25 725 0.391568273 - 26 725 0.402714759 - 27 725 0.431279689 - 28 725 0.454871476 - 29 725 0.461905658 - 30 725 0.458947182 - 31 725 0.392416775 - 32 725 0.308088601 - 33 725 0.213502854 - 34 725 0.190285325 - 35 725 0.181969166 - 36 725 0.181038499 - 37 725 0.133555427 - 38 725 0.0845621675 - 39 725 0.0369848013 - 40 725 0.0103973998 - 41 725 -0.0202949829 - 42 725 -0.0179595333 - 43 725 0.043656677 - 44 725 0.135498479 - 45 725 0.258593202 - 46 725 0.389610827 - 47 725 0.522133291 - 48 725 0.647059083 - 49 725 0.768827498 - 50 725 0.899204969 - 51 725 1.05009317 - 52 725 1.19019079 - 53 725 1.34047985 - 54 725 1.48260224 - 55 725 1.66309595 - 56 725 1.84019423 - 57 725 2.02048326 - 58 725 2.21486282 - 59 725 2.39939165 - 60 725 2.56238818 - 61 725 2.69582462 - 62 725 2.78021526 - 63 725 2.84009624 - 64 725 2.87889266 - 65 725 2.88097501 - 66 725 2.89473772 - 67 725 2.94702625 - 68 725 3.00663185 - 69 725 3.05921888 - 70 725 3.13748932 - 71 725 3.25548577 - 72 725 3.41261482 - 73 725 3.59100199 - 74 725 3.76544213 - 75 725 3.91195035 - 76 725 4.03562689 - 77 725 4.1549139 - 78 725 4.2710557 - 79 725 4.39089489 - 80 725 4.5130682 - 81 725 4.6375556 - 82 725 4.76108503 - 83 725 4.87987804 - 84 725 4.99067402 - 85 725 5.09236288 - 86 725 5.18375158 - 87 725 5.26655483 - 88 725 5.36164045 - 89 725 5.4689002 - 90 725 5.58605242 - 91 725 5.68637514 - 92 725 5.77732563 - 93 725 5.85012245 - 94 725 5.93036747 - 95 725 6.02239323 - 96 725 6.01361561 - 97 725 5.98018312 - 98 725 5.93208838 - 99 725 5.88707781 - 100 725 5.84458256 - 101 725 5.81149769 - 102 725 5.78192139 - 103 725 5.68876362 - 104 725 5.5965414 - 105 725 5.50939369 - 106 725 5.50528622 - 107 725 5.5016222 - 108 725 5.48487425 - 109 725 5.46225882 - 10 724 1.40858662 - 11 724 1.32286894 - 12 724 1.26536942 - 13 724 1.19878304 - 14 724 1.1248672 - 15 724 1.05241656 - 16 724 0.981919944 - 17 724 0.907137632 - 18 724 0.820297301 - 19 724 0.745700121 - 20 724 0.682344615 - 21 724 0.634774804 - 22 724 0.597011089 - 23 724 0.578237653 - 24 724 0.561271846 - 25 724 0.550958395 - 26 724 0.554685891 - 27 724 0.57339102 - 28 724 0.589950085 - 29 724 0.596186399 - 30 724 0.59787488 - 31 724 0.530270219 - 32 724 0.446022898 - 33 724 0.351291865 - 34 724 0.323276788 - 35 724 0.305630803 - 36 724 0.289760917 - 37 724 0.256109953 - 38 724 0.210841 - 39 724 0.13242279 - 40 724 0.11479535 - 41 724 0.099768497 - 42 724 0.106008239 - 43 724 0.17129828 - 44 724 0.259647876 - 45 724 0.389976561 - 46 724 0.538001955 - 47 724 0.68531394 - 48 724 0.806107283 - 49 724 0.921101451 - 50 724 1.07728851 - 51 724 1.20197845 - 52 724 1.32759213 - 53 724 1.48043334 - 54 724 1.6275456 - 55 724 1.80155408 - 56 724 1.96036923 - 57 724 2.12412643 - 58 724 2.28633642 - 59 724 2.43970203 - 60 724 2.57862687 - 61 724 2.69974613 - 62 724 2.76546192 - 63 724 2.81904101 - 64 724 2.86030459 - 65 724 2.86427283 - 66 724 2.85179973 - 67 724 2.92222452 - 68 724 2.99137545 - 69 724 3.07607102 - 70 724 3.17818856 - 71 724 3.31660318 - 72 724 3.48553181 - 73 724 3.68870354 - 74 724 3.86562037 - 75 724 4.01671982 - 76 724 4.14073753 - 77 724 4.2735796 - 78 724 4.39313364 - 79 724 4.52173519 - 80 724 4.6488452 - 81 724 4.77074909 - 82 724 4.88433886 - 83 724 4.98803043 - 84 724 5.07760239 - 85 724 5.15940428 - 86 724 5.23859167 - 87 724 5.31128311 - 88 724 5.39502239 - 89 724 5.48656416 - 90 724 5.58462811 - 91 724 5.67199326 - 92 724 5.7480545 - 93 724 5.80872202 - 94 724 5.88218307 - 95 724 5.97184706 - 96 724 5.95940781 - 97 724 5.92628765 - 98 724 5.87533236 - 99 724 5.82891655 - 100 724 5.78734636 - 101 724 5.75717258 - 102 724 5.73229551 - 103 724 5.64957237 - 104 724 5.57019091 - 105 724 5.49601841 - 106 724 5.50502157 - 107 724 5.51023626 - 108 724 5.50326872 - 109 724 5.48211527 - 10 723 1.60883224 - 11 723 1.56987035 - 12 723 1.53468037 - 13 723 1.48878884 - 14 723 1.40857542 - 15 723 1.3162204 - 16 723 1.21889925 - 17 723 1.12106252 - 18 723 1.0124023 - 19 723 0.921204567 - 20 723 0.846218705 - 21 723 0.79499799 - 22 723 0.755616128 - 23 723 0.731676221 - 24 723 0.709324181 - 25 723 0.705589294 - 26 723 0.713192821 - 27 723 0.732795358 - 28 723 0.748623013 - 29 723 0.757882774 - 30 723 0.75545454 - 31 723 0.685904145 - 32 723 0.598457336 - 33 723 0.48925969 - 34 723 0.457767993 - 35 723 0.435124695 - 36 723 0.408214986 - 37 723 0.393756747 - 38 723 0.347592473 - 39 723 0.30235365 - 40 723 0.249474555 - 41 723 0.26749751 - 42 723 0.295624018 - 43 723 0.367374033 - 44 723 0.450456053 - 45 723 0.570843756 - 46 723 0.714399874 - 47 723 0.858104348 - 48 723 0.973744988 - 49 723 1.08072448 - 50 723 1.22784114 - 51 723 1.34854186 - 52 723 1.51393771 - 53 723 1.64902127 - 54 723 1.83033001 - 55 723 1.97157145 - 56 723 2.09128213 - 57 723 2.22318745 - 58 723 2.34421086 - 59 723 2.46512938 - 60 723 2.57837844 - 61 723 2.68615818 - 62 723 2.74151134 - 63 723 2.78977108 - 64 723 2.8318193 - 65 723 2.84332967 - 66 723 2.81515431 - 67 723 2.89424706 - 68 723 2.98934603 - 69 723 3.09605289 - 70 723 3.22705364 - 71 723 3.39126968 - 72 723 3.57592916 - 73 723 3.73725748 - 74 723 3.93894005 - 75 723 4.09311104 - 76 723 4.21861839 - 77 723 4.35827732 - 78 723 4.51483107 - 79 723 4.63993645 - 80 723 4.76956654 - 81 723 4.89603615 - 82 723 4.98170853 - 83 723 5.09110165 - 84 723 5.1651082 - 85 723 5.23417425 - 86 723 5.30519485 - 87 723 5.37345791 - 88 723 5.44065666 - 89 723 5.50649166 - 90 723 5.57384491 - 91 723 5.6427598 - 92 723 5.70154953 - 93 723 5.75593233 - 94 723 5.8219471 - 95 723 5.8938365 - 96 723 5.88533354 - 97 723 5.85435486 - 98 723 5.81200266 - 99 723 5.76241159 - 100 723 5.72404528 - 101 723 5.6982708 - 102 723 5.68126726 - 103 723 5.60800743 - 104 723 5.53914118 - 105 723 5.47564459 - 106 723 5.49514055 - 107 723 5.5073781 - 108 723 5.50879669 - 109 723 5.49478006 - 10 722 1.76968038 - 11 722 1.73083711 - 12 722 1.70317113 - 13 722 1.67392313 - 14 722 1.6097424 - 15 722 1.53073168 - 16 722 1.43357003 - 17 722 1.31466377 - 18 722 1.18908823 - 19 722 1.07592332 - 20 722 0.981556177 - 21 722 0.911243081 - 22 722 0.867213309 - 23 722 0.839506269 - 24 722 0.830833435 - 25 722 0.843430102 - 26 722 0.870474041 - 27 722 0.901784122 - 28 722 0.927009761 - 29 722 0.938525856 - 30 722 0.932206035 - 31 722 0.859347224 - 32 722 0.768622756 - 33 722 0.657965839 - 34 722 0.618341804 - 35 722 0.593384504 - 36 722 0.559776306 - 37 722 0.533242106 - 38 722 0.498050958 - 39 722 0.454881191 - 40 722 0.411621571 - 41 722 0.45584619 - 42 722 0.519202173 - 43 722 0.601952612 - 44 722 0.688260734 - 45 722 0.796930075 - 46 722 0.911505759 - 47 722 1.03565514 - 48 722 1.13821077 - 49 722 1.24326503 - 50 722 1.3908695 - 51 722 1.52600312 - 52 722 1.66871512 - 53 722 1.8278749 - 54 722 1.99122989 - 55 722 2.11080408 - 56 722 2.20601511 - 57 722 2.30475283 - 58 722 2.39570856 - 59 722 2.48951316 - 60 722 2.57779098 - 61 722 2.66386819 - 62 722 2.71235204 - 63 722 2.75273824 - 64 722 2.79002404 - 65 722 2.81316662 - 66 722 2.79903913 - 67 722 2.88913751 - 68 722 2.99213743 - 69 722 3.10865641 - 70 722 3.25603366 - 71 722 3.43323088 - 72 722 3.63679838 - 73 722 3.79047728 - 74 722 3.99155903 - 75 722 4.14461565 - 76 722 4.27608109 - 77 722 4.41365051 - 78 722 4.57878399 - 79 722 4.71452141 - 80 722 4.85869455 - 81 722 4.94523144 - 82 722 5.02761698 - 83 722 5.15934467 - 84 722 5.23543262 - 85 722 5.30494547 - 86 722 5.37607527 - 87 722 5.44422054 - 88 722 5.49521494 - 89 722 5.53693533 - 90 722 5.57429838 - 91 722 5.60761213 - 92 722 5.63349152 - 93 722 5.69518948 - 94 722 5.75478649 - 95 722 5.81155014 - 96 722 5.81387138 - 97 722 5.79401588 - 98 722 5.75169182 - 99 722 5.7018199 - 100 722 5.66586399 - 101 722 5.63647318 - 102 722 5.62597513 - 103 722 5.56366539 - 104 722 5.5037303 - 105 722 5.44808578 - 106 722 5.47819901 - 107 722 5.49835634 - 108 722 5.50746489 - 109 722 5.49465036 - 10 721 1.92333126 - 11 721 1.85159492 - 12 721 1.80002904 - 13 721 1.76223123 - 14 721 1.70426834 - 15 721 1.63586748 - 16 721 1.55253983 - 17 721 1.42949295 - 18 721 1.29617357 - 19 721 1.17473817 - 20 721 1.07460642 - 21 721 0.999458969 - 22 721 0.96649611 - 23 721 0.945744157 - 24 721 0.947857916 - 25 721 0.972580075 - 26 721 1.02087843 - 27 721 1.07075536 - 28 721 1.11079788 - 29 721 1.13640726 - 30 721 1.13241553 - 31 721 1.04691517 - 32 721 0.955663621 - 33 721 0.856334209 - 34 721 0.807503641 - 35 721 0.777806878 - 36 721 0.748226345 - 37 721 0.716881812 - 38 721 0.665823817 - 39 721 0.571047366 - 40 721 0.594062984 - 41 721 0.641488791 - 42 721 0.715261698 - 43 721 0.808437884 - 44 721 0.908040881 - 45 721 1.00337005 - 46 721 1.09566343 - 47 721 1.20398724 - 48 721 1.30916882 - 49 721 1.41877949 - 50 721 1.53435576 - 51 721 1.69398701 - 52 721 1.84152913 - 53 721 1.99527287 - 54 721 2.13334608 - 55 721 2.22813916 - 56 721 2.29778075 - 57 721 2.36197352 - 58 721 2.42592978 - 59 721 2.49155617 - 60 721 2.55530763 - 61 721 2.61421132 - 62 721 2.66720128 - 63 721 2.7039566 - 64 721 2.73909187 - 65 721 2.76573825 - 66 721 2.7788837 - 67 721 2.86659455 - 68 721 2.97787476 - 69 721 3.11536884 - 70 721 3.25888634 - 71 721 3.432127 - 72 721 3.62356591 - 73 721 3.81243205 - 74 721 3.97538471 - 75 721 4.13613844 - 76 721 4.28063011 - 77 721 4.4239316 - 78 721 4.58893871 - 79 721 4.74486351 - 80 721 4.88912344 - 81 721 5.01586151 - 82 721 5.11410046 - 83 721 5.19811535 - 84 721 5.2824316 - 85 721 5.35236073 - 86 721 5.42921019 - 87 721 5.50121307 - 88 721 5.54210043 - 89 721 5.56084394 - 90 721 5.57505846 - 91 721 5.57605457 - 92 721 5.57853937 - 93 721 5.6314621 - 94 721 5.68297434 - 95 721 5.7445631 - 96 721 5.75405788 - 97 721 5.74648285 - 98 721 5.7079339 - 99 721 5.65377998 - 100 721 5.61310291 - 101 721 5.57769489 - 102 721 5.56961298 - 103 721 5.51830912 - 104 721 5.4652257 - 105 721 5.41371202 - 106 721 5.45057106 - 107 721 5.47387981 - 108 721 5.49169922 - 109 721 5.48750687 - 10 720 2.02519846 - 11 720 1.97256231 - 12 720 1.89119411 - 13 720 1.82858276 - 14 720 1.76991093 - 15 720 1.69744551 - 16 720 1.62494266 - 17 720 1.51493239 - 18 720 1.38825321 - 19 720 1.26576149 - 20 720 1.16350377 - 21 720 1.08786333 - 22 720 1.0658164 - 23 720 1.06452096 - 24 720 1.08207273 - 25 720 1.11995459 - 26 720 1.17781234 - 27 720 1.23495722 - 28 720 1.28640211 - 29 720 1.32674778 - 30 720 1.33273554 - 31 720 1.24040532 - 32 720 1.15444088 - 33 720 1.06179655 - 34 720 1.01327503 - 35 720 0.980181575 - 36 720 0.956135452 - 37 720 0.916371346 - 38 720 0.858475208 - 39 720 0.778877318 - 40 720 0.794337749 - 41 720 0.826185405 - 42 720 0.896874905 - 43 720 0.982775271 - 44 720 1.07543886 - 45 720 1.1700443 - 46 720 1.26157904 - 47 720 1.36896086 - 48 720 1.47350264 - 49 720 1.58995187 - 50 720 1.71792507 - 51 720 1.89475691 - 52 720 2.01745343 - 53 720 2.14233994 - 54 720 2.24163079 - 55 720 2.30396962 - 56 720 2.34971428 - 57 720 2.38779259 - 58 720 2.43135118 - 59 720 2.48251963 - 60 720 2.53324604 - 61 720 2.57054734 - 62 720 2.59831405 - 63 720 2.62568402 - 64 720 2.65034032 - 65 720 2.69272208 - 66 720 2.73481297 - 67 720 2.81328225 - 68 720 2.94789577 - 69 720 3.09034848 - 70 720 3.2343719 - 71 720 3.40807343 - 72 720 3.58492589 - 73 720 3.75816107 - 74 720 3.92641687 - 75 720 4.08360672 - 76 720 4.23831844 - 77 720 4.40419245 - 78 720 4.58304977 - 79 720 4.76141119 - 80 720 4.90658092 - 81 720 5.02997875 - 82 720 5.13665628 - 83 720 5.23349094 - 84 720 5.31500387 - 85 720 5.38587713 - 86 720 5.46210337 - 87 720 5.52333736 - 88 720 5.55526209 - 89 720 5.5640583 - 90 720 5.56946993 - 91 720 5.55694723 - 92 720 5.54495335 - 93 720 5.5464325 - 94 720 5.61499071 - 95 720 5.66446495 - 96 720 5.71078157 - 97 720 5.70559502 - 98 720 5.66996908 - 99 720 5.61486101 - 100 720 5.57196045 - 101 720 5.5332942 - 102 720 5.51777792 - 103 720 5.47565079 - 104 720 5.42676926 - 105 720 5.37382126 - 106 720 5.41902065 - 107 720 5.44553804 - 108 720 5.46771383 - 109 720 5.46826553 - 10 719 2.13850284 - 11 719 2.09637642 - 12 719 1.9883157 - 13 719 1.89955199 - 14 719 1.81977665 - 15 719 1.73509884 - 16 719 1.66556084 - 17 719 1.57127953 - 18 719 1.45361984 - 19 719 1.33386695 - 20 719 1.2554729 - 21 719 1.19635344 - 22 719 1.18520987 - 23 719 1.2112875 - 24 719 1.25184989 - 25 719 1.30257058 - 26 719 1.35953438 - 27 719 1.40967357 - 28 719 1.45237577 - 29 719 1.48844898 - 30 719 1.50309837 - 31 719 1.43644249 - 32 719 1.36154819 - 33 719 1.27644312 - 34 719 1.23396611 - 35 719 1.20081592 - 36 719 1.18391407 - 37 719 1.13151693 - 38 719 1.07102537 - 39 719 1.0172894 - 40 719 1.01904035 - 41 719 1.03495002 - 42 719 1.07733142 - 43 719 1.13939297 - 44 719 1.21642172 - 45 719 1.30714834 - 46 719 1.4012928 - 47 719 1.51495481 - 48 719 1.63079321 - 49 719 1.77009439 - 50 719 1.91358316 - 51 719 2.07137895 - 52 719 2.17298198 - 53 719 2.26019287 - 54 719 2.3255322 - 55 719 2.35761476 - 56 719 2.38907623 - 57 719 2.40393806 - 58 719 2.42665076 - 59 719 2.46849275 - 60 719 2.50391459 - 61 719 2.53969431 - 62 719 2.53603959 - 63 719 2.53209186 - 64 719 2.56590295 - 65 719 2.62096572 - 66 719 2.67967129 - 67 719 2.74396873 - 68 719 2.91541409 - 69 719 3.06103325 - 70 719 3.21260834 - 71 719 3.37911153 - 72 719 3.53768849 - 73 719 3.69858551 - 74 719 3.85583401 - 75 719 4.01460171 - 76 719 4.18280268 - 77 719 4.36590147 - 78 719 4.5668478 - 79 719 4.76669931 - 80 719 4.94247866 - 81 719 5.07291603 - 82 719 5.17824841 - 83 719 5.26770687 - 84 719 5.33928585 - 85 719 5.40968132 - 86 719 5.48269081 - 87 719 5.53386641 - 88 719 5.55944347 - 89 719 5.56308889 - 90 719 5.56161594 - 91 719 5.53928232 - 92 719 5.51857996 - 93 719 5.50397062 - 94 719 5.54882956 - 95 719 5.59708357 - 96 719 5.66232681 - 97 719 5.64940786 - 98 719 5.61978769 - 99 719 5.56854057 - 100 719 5.52492809 - 101 719 5.48982954 - 102 719 5.47338343 - 103 719 5.43818808 - 104 719 5.39755154 - 105 719 5.33330488 - 106 719 5.37840128 - 107 719 5.40865326 - 108 719 5.43377352 - 109 719 5.43951368 - 11 718 2.19494629 - 12 718 2.05571246 - 13 718 1.94102168 - 14 718 1.84218037 - 15 718 1.75154853 - 16 718 1.67694306 - 17 718 1.59532201 - 18 718 1.50539815 - 19 718 1.41584396 - 20 718 1.36516774 - 21 718 1.33234882 - 22 718 1.33990896 - 23 718 1.38646603 - 24 718 1.44588351 - 25 718 1.5022254 - 26 718 1.55960381 - 27 718 1.60783863 - 28 718 1.64410031 - 29 718 1.67359304 - 30 718 1.68778491 - 31 718 1.63566577 - 32 718 1.57524824 - 33 718 1.51133323 - 34 718 1.47819805 - 35 718 1.44955635 - 36 718 1.4307332 - 37 718 1.3531698 - 38 718 1.28283155 - 39 718 1.23019421 - 40 718 1.21648526 - 41 718 1.22483146 - 42 718 1.2564671 - 43 718 1.30247986 - 44 718 1.36383581 - 45 718 1.4570266 - 46 718 1.55289483 - 47 718 1.66329515 - 48 718 1.77991927 - 49 718 1.92777407 - 50 718 2.06050038 - 51 718 2.1729722 - 52 718 2.27304053 - 53 718 2.33751559 - 54 718 2.35221672 - 55 718 2.37238812 - 56 718 2.39552093 - 57 718 2.41020656 - 58 718 2.42149019 - 59 718 2.45978069 - 60 718 2.48355412 - 61 718 2.50959182 - 62 718 2.48576808 - 63 718 2.46185207 - 64 718 2.47580957 - 65 718 2.53610158 - 66 718 2.59855962 - 67 718 2.75298882 - 68 718 2.88376784 - 69 718 3.03100824 - 70 718 3.1738317 - 71 718 3.33467579 - 72 718 3.48736763 - 73 718 3.63822079 - 74 718 3.77988815 - 75 718 3.93803644 - 76 718 4.12116814 - 77 718 4.32613373 - 78 718 4.54106712 - 79 718 4.76610041 - 80 718 4.96114159 - 81 718 5.10725021 - 82 718 5.21563768 - 83 718 5.3030262 - 84 718 5.36824226 - 85 718 5.43325186 - 86 718 5.50049782 - 87 718 5.5401473 - 88 718 5.55792952 - 89 718 5.56009865 - 90 718 5.55217981 - 91 718 5.51846981 - 92 718 5.49053478 - 93 718 5.46559095 - 94 718 5.48114014 - 95 718 5.51680231 - 96 718 5.57716656 - 97 718 5.56236887 - 98 718 5.53925037 - 99 718 5.49601221 - 100 718 5.45764685 - 101 718 5.43030214 - 102 718 5.42089319 - 103 718 5.42841959 - 104 718 5.36598301 - 105 718 5.33918858 - 106 718 5.33382702 - 107 718 5.36092567 - 108 718 5.3898983 - 109 718 5.39980173 - 11 717 2.16590238 - 12 717 2.0974586 - 13 717 1.94574046 - 14 717 1.82854414 - 15 717 1.72852659 - 16 717 1.65228248 - 17 717 1.59077907 - 18 717 1.54139328 - 19 717 1.5047971 - 20 717 1.49918234 - 21 717 1.50031078 - 22 717 1.52905738 - 23 717 1.59037375 - 24 717 1.6620847 - 25 717 1.73066914 - 26 717 1.79337227 - 27 717 1.83307302 - 28 717 1.85586202 - 29 717 1.87515557 - 30 717 1.89076543 - 31 717 1.83929753 - 32 717 1.78978133 - 33 717 1.7501179 - 34 717 1.7268399 - 35 717 1.69754732 - 36 717 1.67192578 - 37 717 1.57168078 - 38 717 1.48150849 - 39 717 1.40604818 - 40 717 1.38172698 - 41 717 1.39312148 - 42 717 1.41881514 - 43 717 1.45966434 - 44 717 1.51484692 - 45 717 1.60956717 - 46 717 1.73342931 - 47 717 1.8180809 - 48 717 1.94506896 - 49 717 2.08702731 - 50 717 2.18133688 - 51 717 2.25559282 - 52 717 2.32610345 - 53 717 2.36203766 - 54 717 2.336483 - 55 717 2.36667681 - 56 717 2.38520408 - 57 717 2.39463568 - 58 717 2.41437507 - 59 717 2.44250345 - 60 717 2.4639008 - 61 717 2.47950006 - 62 717 2.46022606 - 63 717 2.43380713 - 64 717 2.4449091 - 65 717 2.55753994 - 66 717 2.6206646 - 67 717 2.7146461 - 68 717 2.85559797 - 69 717 2.99654818 - 70 717 3.15032601 - 71 717 3.29813457 - 72 717 3.43392539 - 73 717 3.56181145 - 74 717 3.69237208 - 75 717 3.84640765 - 76 717 4.04279947 - 77 717 4.26549149 - 78 717 4.50002861 - 79 717 4.74938107 - 80 717 4.96272135 - 81 717 5.12815714 - 82 717 5.2437315 - 83 717 5.33193064 - 84 717 5.3851347 - 85 717 5.44535351 - 86 717 5.50875187 - 87 717 5.54283047 - 88 717 5.56128263 - 89 717 5.56184912 - 90 717 5.54098749 - 91 717 5.49764442 - 92 717 5.45267487 - 93 717 5.4099865 - 94 717 5.39470339 - 95 717 5.41194057 - 96 717 5.4610095 - 97 717 5.44545269 - 98 717 5.423069 - 99 717 5.38840675 - 100 717 5.36081314 - 101 717 5.3482995 - 102 717 5.35259342 - 103 717 5.36987257 - 104 717 5.32366657 - 105 717 5.29773808 - 106 717 5.2829423 - 107 717 5.30861807 - 108 717 5.33692074 - 109 717 5.35428715 - 11 716 2.21135211 - 12 716 2.10708976 - 13 716 1.92697096 - 14 716 1.79800177 - 15 716 1.69730496 - 16 716 1.64200068 - 17 716 1.61170483 - 18 716 1.61274731 - 19 716 1.62245536 - 20 716 1.64428639 - 21 716 1.66923261 - 22 716 1.7102927 - 23 716 1.78006768 - 24 716 1.86057937 - 25 716 1.94333816 - 26 716 2.01500559 - 27 716 2.05472207 - 28 716 2.08447409 - 29 716 2.10194492 - 30 716 2.11401916 - 31 716 2.03393674 - 32 716 1.98508143 - 33 716 1.98547602 - 34 716 1.97089791 - 35 716 1.94641697 - 36 716 1.90996003 - 37 716 1.77593815 - 38 716 1.66636288 - 39 716 1.56482935 - 40 716 1.52573657 - 41 716 1.53272629 - 42 716 1.56566918 - 43 716 1.62043869 - 44 716 1.68959498 - 45 716 1.7962352 - 46 716 1.89836633 - 47 716 2.00724149 - 48 716 2.1189785 - 49 716 2.23014545 - 50 716 2.29574013 - 51 716 2.33787441 - 52 716 2.36490822 - 53 716 2.38638043 - 54 716 2.34623384 - 55 716 2.37064981 - 56 716 2.37457752 - 57 716 2.37856841 - 58 716 2.41555762 - 59 716 2.42964101 - 60 716 2.44226217 - 61 716 2.46076035 - 62 716 2.43460441 - 63 716 2.3923409 - 64 716 2.39985991 - 65 716 2.50357509 - 66 716 2.60406876 - 67 716 2.69006443 - 68 716 2.82137036 - 69 716 2.95532227 - 70 716 3.10209203 - 71 716 3.21530104 - 72 716 3.34116936 - 73 716 3.45338964 - 74 716 3.58506155 - 75 716 3.73342609 - 76 716 3.93853354 - 77 716 4.17214727 - 78 716 4.42216492 - 79 716 4.68772697 - 80 716 4.9192524 - 81 716 5.09722042 - 82 716 5.22789335 - 83 716 5.32344437 - 84 716 5.37855387 - 85 716 5.44329596 - 86 716 5.50413227 - 87 716 5.53263998 - 88 716 5.54402924 - 89 716 5.53407812 - 90 716 5.50138092 - 91 716 5.44003916 - 92 716 5.37658978 - 93 716 5.31112003 - 94 716 5.24100733 - 95 716 5.31987762 - 96 716 5.30364895 - 97 716 5.2808733 - 98 716 5.26192427 - 99 716 5.24796438 - 100 716 5.23463726 - 101 716 5.23897696 - 102 716 5.25318289 - 103 716 5.28795147 - 104 716 5.25814629 - 105 716 5.24139833 - 106 716 5.2361269 - 107 716 5.2679081 - 108 716 5.2958889 - 109 716 5.32041121 - 11 715 2.19735098 - 12 715 2.05824423 - 13 715 1.91725659 - 14 715 1.82942164 - 15 715 1.75899923 - 16 715 1.72580302 - 17 715 1.7055403 - 18 715 1.72298801 - 19 715 1.75169706 - 20 715 1.78503692 - 21 715 1.82030106 - 22 715 1.86577809 - 23 715 1.92563796 - 24 715 2.01033902 - 25 715 2.0974791 - 26 715 2.18388486 - 27 715 2.24443412 - 28 715 2.28469324 - 29 715 2.29854441 - 30 715 2.30498719 - 31 715 2.19985747 - 32 715 2.14516139 - 33 715 2.13448262 - 34 715 2.12708354 - 35 715 2.11872721 - 36 715 2.10007071 - 37 715 1.96101713 - 38 715 1.84316874 - 39 715 1.72490644 - 40 715 1.67512333 - 41 715 1.668383 - 42 715 1.69739377 - 43 715 1.75691271 - 44 715 1.84311509 - 45 715 1.96325505 - 46 715 2.07270646 - 47 715 2.17883587 - 48 715 2.25809526 - 49 715 2.3211441 - 50 715 2.36187744 - 51 715 2.38254142 - 52 715 2.38808393 - 53 715 2.37958455 - 54 715 2.3511157 - 55 715 2.37070322 - 56 715 2.38374519 - 57 715 2.39173484 - 58 715 2.42841363 - 59 715 2.42250824 - 60 715 2.42735314 - 61 715 2.43824649 - 62 715 2.40269971 - 63 715 2.35740972 - 64 715 2.38768172 - 65 715 2.47159481 - 66 715 2.59253573 - 67 715 2.67748785 - 68 715 2.78011036 - 69 715 2.90190244 - 70 715 3.03534651 - 71 715 3.12533569 - 72 715 3.24373436 - 73 715 3.3478353 - 74 715 3.50209618 - 75 715 3.65054631 - 76 715 3.8183291 - 77 715 4.04171991 - 78 715 4.29950619 - 79 715 4.57382822 - 80 715 4.83100462 - 81 715 5.02715492 - 82 715 5.17384481 - 83 715 5.28170824 - 84 715 5.35255003 - 85 715 5.4260993 - 86 715 5.48590612 - 87 715 5.50498629 - 88 715 5.50443792 - 89 715 5.48028898 - 90 715 5.43253136 - 91 715 5.34559584 - 92 715 5.26395893 - 93 715 5.17525196 - 94 715 5.08537102 - 95 715 5.1315341 - 96 715 5.11448431 - 97 715 5.09514236 - 98 715 5.07763004 - 99 715 5.07881546 - 100 715 5.08735943 - 101 715 5.11219025 - 102 715 5.14735746 - 103 715 5.19505215 - 104 715 5.17727757 - 105 715 5.17126369 - 106 715 5.18307829 - 107 715 5.22691298 - 108 715 5.25956821 - 109 715 5.29002523 - 11 714 2.20424271 - 12 714 2.09331989 - 13 714 1.98491919 - 14 714 1.93864727 - 15 714 1.89365888 - 16 714 1.87906122 - 17 714 1.86972046 - 18 714 1.88310468 - 19 714 1.90092552 - 20 714 1.92050123 - 21 714 1.9569211 - 22 714 2.00038362 - 23 714 2.05325532 - 24 714 2.13410783 - 25 714 2.2231288 - 26 714 2.30680275 - 27 714 2.3657794 - 28 714 2.39806652 - 29 714 2.41128373 - 30 714 2.41882515 - 31 714 2.32788634 - 32 714 2.26655459 - 33 714 2.22561216 - 34 714 2.23121595 - 35 714 2.23771405 - 36 714 2.24715281 - 37 714 2.12780976 - 38 714 2.01500249 - 39 714 1.90681756 - 40 714 1.84631085 - 41 714 1.81701505 - 42 714 1.82173967 - 43 714 1.87814593 - 44 714 1.96958709 - 45 714 2.08633995 - 46 714 2.1889751 - 47 714 2.27758884 - 48 714 2.35307217 - 49 714 2.39349651 - 50 714 2.39208055 - 51 714 2.38396239 - 52 714 2.37079453 - 53 714 2.3482945 - 54 714 2.31704593 - 55 714 2.32964206 - 56 714 2.3606534 - 57 714 2.38450289 - 58 714 2.42668939 - 59 714 2.42033458 - 60 714 2.41892433 - 61 714 2.41446543 - 62 714 2.38834476 - 63 714 2.3448627 - 64 714 2.37930918 - 65 714 2.44738483 - 66 714 2.55339313 - 67 714 2.63030028 - 68 714 2.72771835 - 69 714 2.83730435 - 70 714 2.95653963 - 71 714 3.06113434 - 72 714 3.16311002 - 73 714 3.28048897 - 74 714 3.40228224 - 75 714 3.54715681 - 76 714 3.73413229 - 77 714 3.93746305 - 78 714 4.18038511 - 79 714 4.43750095 - 80 714 4.69928455 - 81 714 4.91409683 - 82 714 5.09040117 - 83 714 5.22457314 - 84 714 5.31076717 - 85 714 5.383461 - 86 714 5.44738817 - 87 714 5.46036053 - 88 714 5.45049238 - 89 714 5.41680193 - 90 714 5.35561323 - 91 714 5.240839 - 92 714 5.14178419 - 93 714 5.03672647 - 94 714 4.94719648 - 95 714 4.94388771 - 96 714 4.93395424 - 97 714 4.92432928 - 98 714 4.92452621 - 99 714 4.94575405 - 100 714 4.96908474 - 101 714 5.0007391 - 102 714 5.0413065 - 103 714 5.09474421 - 104 714 5.08451462 - 105 714 5.08423901 - 106 714 5.10442495 - 107 714 5.163589 - 108 714 5.20720291 - 109 714 5.2455802 - 11 713 2.28380132 - 12 713 2.18517828 - 13 713 2.10372949 - 14 713 2.09835148 - 15 713 2.10075593 - 16 713 2.11283588 - 17 713 2.12884998 - 18 713 2.15172362 - 19 713 2.1368432 - 20 713 2.12783241 - 21 713 2.1525836 - 22 713 2.18297744 - 23 713 2.22827101 - 24 713 2.29577923 - 25 713 2.36817718 - 26 713 2.42502356 - 27 713 2.46520519 - 28 713 2.48278904 - 29 713 2.48488975 - 30 713 2.49137783 - 31 713 2.42909741 - 32 713 2.36558723 - 33 713 2.30311775 - 34 713 2.32871962 - 35 713 2.35593104 - 36 713 2.39014244 - 37 713 2.28104854 - 38 713 2.18120337 - 39 713 2.09038234 - 40 713 2.02290606 - 41 713 1.97020566 - 42 713 1.94408309 - 43 713 1.97618783 - 44 713 2.05288815 - 45 713 2.15683055 - 46 713 2.25370121 - 47 713 2.33794141 - 48 713 2.40977192 - 49 713 2.44471431 - 50 713 2.40194964 - 51 713 2.36804581 - 52 713 2.31445456 - 53 713 2.25580072 - 54 713 2.21814942 - 55 713 2.21323967 - 56 713 2.26041412 - 57 713 2.30413866 - 58 713 2.38072562 - 59 713 2.39916253 - 60 713 2.3964076 - 61 713 2.3894453 - 62 713 2.37221837 - 63 713 2.33626175 - 64 713 2.37111807 - 65 713 2.43002939 - 66 713 2.5245502 - 67 713 2.56927872 - 68 713 2.66177511 - 69 713 2.76424885 - 70 713 2.87145281 - 71 713 2.99472833 - 72 713 3.10205531 - 73 713 3.24944925 - 74 713 3.37035775 - 75 713 3.51040077 - 76 713 3.68378162 - 77 713 3.88073492 - 78 713 4.1038847 - 79 713 4.32966614 - 80 713 4.56793928 - 81 713 4.78875017 - 82 713 4.9896493 - 83 713 5.1424551 - 84 713 5.24543381 - 85 713 5.33119774 - 86 713 5.35695076 - 87 713 5.40352917 - 88 713 5.38298225 - 89 713 5.34109592 - 90 713 5.26955462 - 91 713 5.14999104 - 92 713 5.04414272 - 93 713 4.93235636 - 94 713 4.81984949 - 95 713 4.80495596 - 96 713 4.78743362 - 97 713 4.79080153 - 98 713 4.81032991 - 99 713 4.8418293 - 100 713 4.87412119 - 101 713 4.91028929 - 102 713 4.95299435 - 103 713 5.00326872 - 104 713 4.9761095 - 105 713 4.97362614 - 106 713 5.00308371 - 107 713 5.07454014 - 108 713 5.12522173 - 109 713 5.16650772 - 11 712 2.42104983 - 12 712 2.3129096 - 13 712 2.25065684 - 14 712 2.26710749 - 15 712 2.30837607 - 16 712 2.35927534 - 17 712 2.41778994 - 18 712 2.49261761 - 19 712 2.48206353 - 20 712 2.45874166 - 21 712 2.46574116 - 22 712 2.47642779 - 23 712 2.50607038 - 24 712 2.55926037 - 25 712 2.60457969 - 26 712 2.62893319 - 27 712 2.63253069 - 28 712 2.60750294 - 29 712 2.58328915 - 30 712 2.57808828 - 31 712 2.52467537 - 32 712 2.45926714 - 33 712 2.38797331 - 34 712 2.42813063 - 35 712 2.47250724 - 36 712 2.52608371 - 37 712 2.42183876 - 38 712 2.33437085 - 39 712 2.26757908 - 40 712 2.19502449 - 41 712 2.12374854 - 42 712 2.07411432 - 43 712 2.08007026 - 44 712 2.13600254 - 45 712 2.21060991 - 46 712 2.29995155 - 47 712 2.37871575 - 48 712 2.44116855 - 49 712 2.47994876 - 50 712 2.41115475 - 51 712 2.33189154 - 52 712 2.23451567 - 53 712 2.13601708 - 54 712 2.06249905 - 55 712 2.05501175 - 56 712 2.11674404 - 57 712 2.18946767 - 58 712 2.29153562 - 59 712 2.33613825 - 60 712 2.34650779 - 61 712 2.34090424 - 62 712 2.34122896 - 63 712 2.3148613 - 64 712 2.32924962 - 65 712 2.37418008 - 66 712 2.42814302 - 67 712 2.48964357 - 68 712 2.58981538 - 69 712 2.68681407 - 70 712 2.78349018 - 71 712 2.91342711 - 72 712 3.04243755 - 73 712 3.17847204 - 74 712 3.33191395 - 75 712 3.49192882 - 76 712 3.66272163 - 77 712 3.85560727 - 78 712 4.05630875 - 79 712 4.25873518 - 80 712 4.45595789 - 81 712 4.66234112 - 82 712 4.86389923 - 83 712 5.03344059 - 84 712 5.1604805 - 85 712 5.21858072 - 86 712 5.27637672 - 87 712 5.32569838 - 88 712 5.29491854 - 89 712 5.24537706 - 90 712 5.15809345 - 91 712 5.0384016 - 92 712 4.93194294 - 93 712 4.81762314 - 94 712 4.7074275 - 95 712 4.6849122 - 96 712 4.65963364 - 97 712 4.66599989 - 98 712 4.69410276 - 99 712 4.73213482 - 100 712 4.77561903 - 101 712 4.81091118 - 102 712 4.84922075 - 103 712 4.88812304 - 104 712 4.84501743 - 105 712 4.83544779 - 106 712 4.85627794 - 107 712 4.9428792 - 108 712 5.00535727 - 109 712 5.04932928 - 11 711 2.45727777 - 12 711 2.43463778 - 13 711 2.40629339 - 14 711 2.45486665 - 15 711 2.53666258 - 16 711 2.62521243 - 17 711 2.70827198 - 18 711 2.794209 - 19 711 2.82998919 - 20 711 2.82798195 - 21 711 2.83264494 - 22 711 2.83295465 - 23 711 2.84322071 - 24 711 2.87604189 - 25 711 2.89171195 - 26 711 2.88069081 - 27 711 2.83931351 - 28 711 2.78154206 - 29 711 2.7264452 - 30 711 2.69398284 - 31 711 2.62550592 - 32 711 2.55503106 - 33 711 2.48368859 - 34 711 2.53974509 - 35 711 2.59119129 - 36 711 2.65152049 - 37 711 2.54189086 - 38 711 2.46258926 - 39 711 2.42257667 - 40 711 2.35145712 - 41 711 2.26981735 - 42 711 2.20935702 - 43 711 2.19776702 - 44 711 2.22010946 - 45 711 2.27138972 - 46 711 2.3421874 - 47 711 2.4098022 - 48 711 2.4615922 - 49 711 2.49826765 - 50 711 2.44454789 - 51 711 2.33838773 - 52 711 2.20144868 - 53 711 2.0406785 - 54 711 1.91119838 - 55 711 1.88817954 - 56 711 1.95609975 - 57 711 2.05031013 - 58 711 2.17131639 - 59 711 2.251688 - 60 711 2.27587199 - 61 711 2.27396679 - 62 711 2.2771163 - 63 711 2.2573247 - 64 711 2.25658393 - 65 711 2.28536415 - 66 711 2.37292385 - 67 711 2.42186904 - 68 711 2.51415372 - 69 711 2.61198664 - 70 711 2.69883418 - 71 711 2.82332635 - 72 711 2.96590996 - 73 711 3.12999082 - 74 711 3.28781986 - 75 711 3.46316457 - 76 711 3.64913678 - 77 711 3.8380053 - 78 711 4.02198076 - 79 711 4.20480776 - 80 711 4.3747921 - 81 711 4.55560875 - 82 711 4.73796177 - 83 711 4.90714931 - 84 711 5.04841137 - 85 711 5.10906172 - 86 711 5.16860104 - 87 711 5.23226643 - 88 711 5.19637775 - 89 711 5.13133574 - 90 711 5.02283287 - 91 711 4.89416265 - 92 711 4.78350592 - 93 711 4.66837978 - 94 711 4.56149101 - 95 711 4.55106163 - 96 711 4.51835442 - 97 711 4.52524614 - 98 711 4.55915117 - 99 711 4.60631132 - 100 711 4.65096951 - 101 711 4.68155384 - 102 711 4.71002722 - 103 711 4.7291913 - 104 711 4.68605423 - 105 711 4.66922712 - 106 711 4.67509699 - 107 711 4.77271318 - 108 711 4.84805202 - 109 711 4.90322924 - 11 710 2.47346878 - 12 710 2.53909421 - 13 710 2.57201076 - 14 710 2.65539169 - 15 710 2.74140477 - 16 710 2.86358929 - 17 710 2.95968175 - 18 710 3.05366755 - 19 710 3.11706591 - 20 710 3.16119289 - 21 710 3.18410301 - 22 710 3.19675255 - 23 710 3.21044588 - 24 710 3.21760488 - 25 710 3.18551755 - 26 710 3.13119388 - 27 710 3.05324221 - 28 710 2.95561171 - 29 710 2.8718183 - 30 710 2.81971788 - 31 710 2.72643971 - 32 710 2.64805508 - 33 710 2.58585978 - 34 710 2.64792204 - 35 710 2.69905233 - 36 710 2.75129652 - 37 710 2.62941074 - 38 710 2.55134511 - 39 710 2.52503562 - 40 710 2.45627356 - 41 710 2.38287592 - 42 710 2.31535196 - 43 710 2.28910351 - 44 710 2.28559279 - 45 710 2.31523681 - 46 710 2.35908341 - 47 710 2.41788816 - 48 710 2.47412443 - 49 710 2.51626229 - 50 710 2.47402883 - 51 710 2.35587215 - 52 710 2.19746971 - 53 710 2.00371909 - 54 710 1.83109462 - 55 710 1.76415837 - 56 710 1.82439244 - 57 710 1.92892194 - 58 710 2.05348301 - 59 710 2.15520406 - 60 710 2.1895864 - 61 710 2.18822813 - 62 710 2.18819737 - 63 710 2.17802 - 64 710 2.17438579 - 65 710 2.21015668 - 66 710 2.28020501 - 67 710 2.34168649 - 68 710 2.43586183 - 69 710 2.53708768 - 70 710 2.65136743 - 71 710 2.76170254 - 72 710 2.92174864 - 73 710 3.07006955 - 74 710 3.23925328 - 75 710 3.42534232 - 76 710 3.61701846 - 77 710 3.80530453 - 78 710 3.97817874 - 79 710 4.14522505 - 80 710 4.29892206 - 81 710 4.44733477 - 82 710 4.59821367 - 83 710 4.75538731 - 84 710 4.89233303 - 85 710 5.00394535 - 86 710 5.07165051 - 87 710 5.09862423 - 88 710 5.07323742 - 89 710 4.99385786 - 90 710 4.87502623 - 91 710 4.73408985 - 92 710 4.60487032 - 93 710 4.47685862 - 94 710 4.36737204 - 95 710 4.38195801 - 96 710 4.36082029 - 97 710 4.37341499 - 98 710 4.41251945 - 99 710 4.455791 - 100 710 4.48981047 - 101 710 4.50770521 - 102 710 4.52276468 - 103 710 4.53297853 - 104 710 4.50258732 - 105 710 4.48751068 - 106 710 4.46747589 - 107 710 4.57860136 - 108 710 4.65716124 - 109 710 4.72017002 + 12 810 -1.30203748 + 13 810 -1.3370707 + 14 810 -1.35904384 + 15 810 -1.33274746 + 16 810 -1.20110583 + 17 810 -1.09421909 + 18 810 -1.07493246 + 19 810 -1.09888613 + 20 810 -1.14623666 + 21 810 -1.21364784 + 22 810 -1.26968694 + 23 810 -1.30824888 + 24 810 -1.34657848 + 25 810 -1.40595734 + 26 810 -1.44285488 + 27 810 -1.49050128 + 28 810 -1.52290463 + 29 810 -1.53855014 + 30 810 -1.53150427 + 31 810 -1.5223285 + 32 810 -1.49679387 + 33 810 -1.47309315 + 34 810 -1.46496713 + 35 810 -1.48363125 + 36 810 -1.51846516 + 37 810 -1.55381775 + 38 810 -1.56110978 + 39 810 -1.56200767 + 40 810 -1.54190803 + 41 810 -1.55690992 + 42 810 -1.58453727 + 43 810 -1.62175608 + 44 810 -1.61917162 + 45 810 -1.6158725 + 46 810 -1.62233889 + 47 810 -1.63312697 + 48 810 -1.64505613 + 49 810 -1.65380788 + 50 810 -1.66261578 + 51 810 -1.75684917 + 52 810 -1.73601663 + 53 810 -1.73746967 + 54 810 -1.71702242 + 55 810 -1.68102038 + 56 810 -1.63247061 + 57 810 -1.57788491 + 58 810 -1.56603825 + 59 810 -1.54347575 + 60 810 -1.53408217 + 61 810 -1.5022521 + 62 810 -1.46148455 + 63 810 -1.40481019 + 64 810 -1.30338824 + 65 810 -1.16269648 + 66 810 -0.977204323 + 67 810 -0.745086074 + 68 810 -0.592747569 + 69 810 -0.422946602 + 70 810 -0.230113313 + 71 810 -0.210207611 + 72 810 -0.124083251 + 73 810 -0.107808717 + 74 810 -0.0992874727 + 75 810 -0.0761588141 + 76 810 -0.0423922129 + 77 810 0.0097237546 + 78 810 0.0756147802 + 79 810 0.152305141 + 80 810 0.220092371 + 81 810 0.30284068 + 82 810 0.399555385 + 83 810 0.515715539 + 84 810 0.669182122 + 85 810 0.839081705 + 86 810 1.00175261 + 87 810 1.16069698 + 88 810 1.2869426 + 89 810 1.38756227 + 90 810 1.48141897 + 91 810 1.57770789 + 92 810 1.67449749 + 93 810 1.76413262 + 94 810 1.84614384 + 95 810 1.9199419 + 96 810 2.3046093 + 97 810 2.69442272 + 98 810 3.10111117 + 99 810 3.65042114 + 100 810 4.21897221 + 101 810 4.21948385 + 102 810 4.21882582 + 103 810 4.20133448 + 104 810 4.18612242 + 105 810 4.1588316 + 106 810 4.11192513 + 107 810 4.06019831 + 108 810 4.00032854 + 109 810 3.90546417 + 12 809 -1.34767962 + 13 809 -1.40080941 + 14 809 -1.6143676 + 15 809 -1.29071665 + 16 809 -1.11273766 + 17 809 -0.965529859 + 18 809 -0.806130171 + 19 809 -0.958816946 + 20 809 -1.01969051 + 21 809 -1.11888802 + 22 809 -1.20974505 + 23 809 -1.29390025 + 24 809 -1.36656773 + 25 809 -1.42733586 + 26 809 -1.47582066 + 27 809 -1.52020252 + 28 809 -1.54555213 + 29 809 -1.56160927 + 30 809 -1.55985236 + 31 809 -1.54988611 + 32 809 -1.53464437 + 33 809 -1.52747107 + 34 809 -1.51567912 + 35 809 -1.52150428 + 36 809 -1.54125524 + 37 809 -1.56791925 + 38 809 -1.5683285 + 39 809 -1.56165659 + 40 809 -1.5372777 + 41 809 -1.51481676 + 42 809 -1.61063945 + 43 809 -1.61081123 + 44 809 -1.61263359 + 45 809 -1.61601901 + 46 809 -1.62946534 + 47 809 -1.63629341 + 48 809 -1.64892411 + 49 809 -1.66174042 + 50 809 -1.71273124 + 51 809 -1.74392879 + 52 809 -1.77693844 + 53 809 -1.75605667 + 54 809 -1.7144649 + 55 809 -1.67820203 + 56 809 -1.6524452 + 57 809 -1.59415829 + 58 809 -1.56441665 + 59 809 -1.54162514 + 60 809 -1.52915931 + 61 809 -1.4877677 + 62 809 -1.44842494 + 63 809 -1.38017869 + 64 809 -1.27813482 + 65 809 -1.14340532 + 66 809 -0.983465552 + 67 809 -0.767696917 + 68 809 -0.60516715 + 69 809 -0.438993424 + 70 809 -0.257048845 + 71 809 -0.180409417 + 72 809 -0.139295906 + 73 809 -0.120343991 + 74 809 -0.113523439 + 75 809 -0.100591555 + 76 809 -0.0755676255 + 77 809 -0.0310559087 + 78 809 0.0326190181 + 79 809 0.114623383 + 80 809 0.189793184 + 81 809 0.276997298 + 82 809 0.375828594 + 83 809 0.490063667 + 84 809 0.635742188 + 85 809 0.790543616 + 86 809 0.949823439 + 87 809 1.09717214 + 88 809 1.21248066 + 89 809 1.31237304 + 90 809 1.40239012 + 91 809 1.49983013 + 92 809 1.59803498 + 93 809 1.69449794 + 94 809 1.7791841 + 95 809 1.86479735 + 96 809 2.25755978 + 97 809 2.65572 + 98 809 3.06746078 + 99 809 3.62104416 + 100 809 4.09624386 + 101 809 4.23404455 + 102 809 4.2225337 + 103 809 4.23193789 + 104 809 4.20807981 + 105 809 4.16694403 + 106 809 4.11348772 + 107 809 4.05562735 + 108 809 3.98857355 + 109 809 3.90076685 + 12 808 -1.41096222 + 13 808 -1.50115073 + 14 808 -1.42325866 + 15 808 -1.18379426 + 16 808 -0.973336995 + 17 808 -0.823205411 + 18 808 -0.711516321 + 19 808 -0.818431437 + 20 808 -0.88874495 + 21 808 -1.0067066 + 22 808 -1.11206043 + 23 808 -1.23315167 + 24 808 -1.33838177 + 25 808 -1.4347899 + 26 808 -1.49318445 + 27 808 -1.54773962 + 28 808 -1.57175672 + 29 808 -1.58656681 + 30 808 -1.57920253 + 31 808 -1.56803167 + 32 808 -1.55515075 + 33 808 -1.53934801 + 34 808 -1.52264392 + 35 808 -1.52272356 + 36 808 -1.53822398 + 37 808 -1.55258238 + 38 808 -1.55680013 + 39 808 -1.54873431 + 40 808 -1.51997697 + 41 808 -1.49788225 + 42 808 -1.59149313 + 43 808 -1.59859693 + 44 808 -1.60747874 + 45 808 -1.61858594 + 46 808 -1.63455224 + 47 808 -1.64845502 + 48 808 -1.66029668 + 49 808 -1.69812155 + 50 808 -1.73665345 + 51 808 -1.78797221 + 52 808 -1.7815454 + 53 808 -1.76320219 + 54 808 -1.74227786 + 55 808 -1.70456839 + 56 808 -1.65936267 + 57 808 -1.6099503 + 58 808 -1.57136631 + 59 808 -1.53770959 + 60 808 -1.51421249 + 61 808 -1.46415734 + 62 808 -1.42113686 + 63 808 -1.33917379 + 64 808 -1.23519623 + 65 808 -1.10971141 + 66 808 -0.97137475 + 67 808 -0.782165885 + 68 808 -0.624408245 + 69 808 -0.471317053 + 70 808 -0.312221795 + 71 808 -0.225981906 + 72 808 -0.171775758 + 73 808 -0.142446294 + 74 808 -0.134628788 + 75 808 -0.126891106 + 76 808 -0.113549806 + 77 808 -0.0739343241 + 78 808 -0.0134143066 + 79 808 0.068355009 + 80 808 0.153392673 + 81 808 0.250024021 + 82 808 0.34963572 + 83 808 0.459290743 + 84 808 0.591506779 + 85 808 0.730452657 + 86 808 0.875246048 + 87 808 1.01192009 + 88 808 1.1280266 + 89 808 1.21871734 + 90 808 1.30541897 + 91 808 1.40486765 + 92 808 1.51294041 + 93 808 1.61970329 + 94 808 1.71689057 + 95 808 1.81125712 + 96 808 2.21363115 + 97 808 2.61460948 + 98 808 3.01086402 + 99 808 3.5551331 + 100 808 4.01090574 + 101 808 4.34384108 + 102 808 4.24080801 + 103 808 4.21971321 + 104 808 4.19001102 + 105 808 4.17896414 + 106 808 4.12126493 + 107 808 4.05818558 + 108 808 3.97813511 + 109 808 3.88695145 + 12 807 -1.40867567 + 13 807 -1.39027727 + 14 807 -1.22969377 + 15 807 -0.99678719 + 16 807 -0.81180644 + 17 807 -0.698236048 + 18 807 -0.645253122 + 19 807 -0.710329294 + 20 807 -0.782471001 + 21 807 -0.907180488 + 22 807 -1.02940035 + 23 807 -1.17746913 + 24 807 -1.30885971 + 25 807 -1.42630744 + 26 807 -1.50159407 + 27 807 -1.57637346 + 28 807 -1.60766244 + 29 807 -1.6180824 + 30 807 -1.61138415 + 31 807 -1.58944082 + 32 807 -1.5744257 + 33 807 -1.55660391 + 34 807 -1.53194368 + 35 807 -1.52981925 + 36 807 -1.5371654 + 37 807 -1.52907264 + 38 807 -1.52910972 + 39 807 -1.5247196 + 40 807 -1.50415468 + 41 807 -1.53262949 + 42 807 -1.56267524 + 43 807 -1.58936787 + 44 807 -1.60488105 + 45 807 -1.62196016 + 46 807 -1.64554107 + 47 807 -1.66629589 + 48 807 -1.67924464 + 49 807 -1.72149992 + 50 807 -1.76351976 + 51 807 -1.80332816 + 52 807 -1.79398096 + 53 807 -1.77175486 + 54 807 -1.74989605 + 55 807 -1.70918071 + 56 807 -1.66315031 + 57 807 -1.62238705 + 58 807 -1.5827862 + 59 807 -1.53672087 + 60 807 -1.4936837 + 61 807 -1.43352163 + 62 807 -1.38224709 + 63 807 -1.29102731 + 64 807 -1.18984568 + 65 807 -1.07987356 + 66 807 -0.959859371 + 67 807 -0.790191293 + 68 807 -0.618167341 + 69 807 -0.523843229 + 70 807 -0.392961055 + 71 807 -0.292032212 + 72 807 -0.223203003 + 73 807 -0.179024413 + 74 807 -0.1676438 + 75 807 -0.168417722 + 76 807 -0.160452023 + 77 807 -0.122403443 + 78 807 -0.0614051521 + 79 807 0.0218767095 + 80 807 0.115541965 + 81 807 0.219310269 + 82 807 0.323761702 + 83 807 0.425867766 + 84 807 0.533161581 + 85 807 0.642254591 + 86 807 0.76692605 + 87 807 0.891094685 + 88 807 1.00188684 + 89 807 1.09580219 + 90 807 1.19100785 + 91 807 1.30258155 + 92 807 1.42108202 + 93 807 1.54312694 + 94 807 1.6514498 + 95 807 1.76157618 + 96 807 2.17849255 + 97 807 2.58366728 + 98 807 2.96810865 + 99 807 3.50513363 + 100 807 3.99079132 + 101 807 4.30651999 + 102 807 4.25636578 + 103 807 4.23301506 + 104 807 4.19980621 + 105 807 4.15483761 + 106 807 4.12122917 + 107 807 4.0553751 + 108 807 3.96353841 + 109 807 3.87177753 + 11 806 -1.38298869 + 12 806 -1.36103845 + 13 806 -1.24716735 + 14 806 -1.01928663 + 15 806 -0.78879571 + 16 806 -0.643151045 + 17 806 -0.587653518 + 18 806 -0.542427421 + 19 806 -0.633170128 + 20 806 -0.71402365 + 21 806 -0.83610481 + 22 806 -0.965629935 + 23 806 -1.12627089 + 24 806 -1.26839101 + 25 806 -1.39405119 + 26 806 -1.48889196 + 27 806 -1.57667029 + 28 806 -1.61660635 + 29 806 -1.62812531 + 30 806 -1.62014389 + 31 806 -1.59092367 + 32 806 -1.56944275 + 33 806 -1.54693294 + 34 806 -1.52239788 + 35 806 -1.51502478 + 36 806 -1.51411068 + 37 806 -1.50110686 + 38 806 -1.4955492 + 39 806 -1.49305999 + 40 806 -1.4829452 + 41 806 -1.53483975 + 42 806 -1.56727111 + 43 806 -1.589522 + 44 806 -1.60499632 + 45 806 -1.62817991 + 46 806 -1.65449977 + 47 806 -1.68148267 + 48 806 -1.70316505 + 49 806 -1.74385512 + 50 806 -1.78646064 + 51 806 -1.82958353 + 52 806 -1.81946683 + 53 806 -1.79593599 + 54 806 -1.77103472 + 55 806 -1.72951174 + 56 806 -1.68352425 + 57 806 -1.64020693 + 58 806 -1.59359193 + 59 806 -1.53561926 + 60 806 -1.47407722 + 61 806 -1.40741169 + 62 806 -1.34630907 + 63 806 -1.23858595 + 64 806 -1.14763033 + 65 806 -1.05796313 + 66 806 -0.939278781 + 67 806 -0.791416109 + 68 806 -0.653643191 + 69 806 -0.597586632 + 70 806 -0.465793699 + 71 806 -0.368727893 + 72 806 -0.293130368 + 73 806 -0.241926759 + 74 806 -0.222135007 + 75 806 -0.216776609 + 76 806 -0.206911623 + 77 806 -0.174440667 + 78 806 -0.115598999 + 79 806 -0.0310419928 + 80 806 0.0685588717 + 81 806 0.173346043 + 82 806 0.281069309 + 83 806 0.374922693 + 84 806 0.457918227 + 85 806 0.535243332 + 86 806 0.633704305 + 87 806 0.732575953 + 88 806 0.846347332 + 89 806 0.95953095 + 90 806 1.07346463 + 91 806 1.1986419 + 92 806 1.33182549 + 93 806 1.46880448 + 94 806 1.59195232 + 95 806 1.72564065 + 96 806 2.16012597 + 97 806 2.57538056 + 98 806 2.96607208 + 99 806 3.49217153 + 100 806 3.97809196 + 101 806 4.48807669 + 102 806 4.26131487 + 103 806 4.23262262 + 104 806 4.19602776 + 105 806 4.18066168 + 106 806 4.11432171 + 107 806 4.04037523 + 108 806 3.93788099 + 109 806 3.84690166 + 11 805 -1.33109021 + 12 805 -1.19686174 + 13 805 -0.972935617 + 14 805 -0.737937331 + 15 805 -0.550952792 + 16 805 -0.470192552 + 17 805 -0.466974318 + 18 805 -0.476925462 + 19 805 -0.583136439 + 20 805 -0.683038771 + 21 805 -0.802283525 + 22 805 -0.936774492 + 23 805 -1.09274447 + 24 805 -1.23888612 + 25 805 -1.36195695 + 26 805 -1.46426797 + 27 805 -1.55084705 + 28 805 -1.59524453 + 29 805 -1.61850286 + 30 805 -1.61853409 + 31 805 -1.59225285 + 32 805 -1.56599057 + 33 805 -1.53470743 + 34 805 -1.51036751 + 35 805 -1.49561262 + 36 805 -1.48744178 + 37 805 -1.47592521 + 38 805 -1.4695009 + 39 805 -1.46863854 + 40 805 -1.49732339 + 41 805 -1.53721488 + 42 805 -1.59476972 + 43 805 -1.5973835 + 44 805 -1.61514139 + 45 805 -1.64201689 + 46 805 -1.67177391 + 47 805 -1.69847095 + 48 805 -1.7246418 + 49 805 -1.76367366 + 50 805 -1.80761707 + 51 805 -1.85758889 + 52 805 -1.84695649 + 53 805 -1.82246578 + 54 805 -1.78801119 + 55 805 -1.74326611 + 56 805 -1.6960448 + 57 805 -1.64736605 + 58 805 -1.59380627 + 59 805 -1.53104305 + 60 805 -1.4626466 + 61 805 -1.40243173 + 62 805 -1.33345509 + 63 805 -1.23067772 + 64 805 -1.15587795 + 65 805 -1.06372046 + 66 805 -0.939654768 + 67 805 -0.807082415 + 68 805 -0.678183496 + 69 805 -0.626469731 + 70 805 -0.518796086 + 71 805 -0.427863151 + 72 805 -0.352384269 + 73 805 -0.29925099 + 74 805 -0.274207324 + 75 805 -0.265788287 + 76 805 -0.253467619 + 77 805 -0.225356907 + 78 805 -0.171736822 + 79 805 -0.0880472437 + 80 805 0.0151228029 + 81 805 0.120685637 + 82 805 0.234894142 + 83 805 0.318581283 + 84 805 0.382406205 + 85 805 0.43837899 + 86 805 0.513799906 + 87 805 0.588174522 + 88 805 0.691277862 + 89 805 0.830831468 + 90 805 0.966895938 + 91 805 1.10839796 + 92 805 1.25718653 + 93 805 1.40173554 + 94 805 1.54191601 + 95 805 1.71455157 + 96 805 2.16960645 + 97 805 2.58804393 + 98 805 3.00487709 + 99 805 3.50520396 + 100 805 3.96147299 + 101 805 4.26693392 + 102 805 4.27983046 + 103 805 4.24193001 + 104 805 4.20085907 + 105 805 4.15676928 + 106 805 4.10000658 + 107 805 4.01880121 + 108 805 3.91021109 + 109 805 3.8174386 + 11 804 -1.18919718 + 12 804 -0.953304231 + 13 804 -0.670155466 + 14 804 -0.411249697 + 15 804 -0.243275076 + 16 804 -0.215035811 + 17 804 -0.409941107 + 18 804 -0.447109073 + 19 804 -0.566716969 + 20 804 -0.680707693 + 21 804 -0.798711717 + 22 804 -0.924592078 + 23 804 -1.07153749 + 24 804 -1.20887637 + 25 804 -1.32933629 + 26 804 -1.44280064 + 27 804 -1.52926409 + 28 804 -1.58437538 + 29 804 -1.6087904 + 30 804 -1.61826551 + 31 804 -1.59841096 + 32 804 -1.56918049 + 33 804 -1.52746034 + 34 804 -1.49548078 + 35 804 -1.46857023 + 36 804 -1.45547593 + 37 804 -1.44282365 + 38 804 -1.43752229 + 39 804 -1.4394486 + 40 804 -1.48525453 + 41 804 -1.53736484 + 42 804 -1.59817553 + 43 804 -1.60727227 + 44 804 -1.62861669 + 45 804 -1.65759492 + 46 804 -1.68623197 + 47 804 -1.71520269 + 48 804 -1.73886383 + 49 804 -1.78001285 + 50 804 -1.82345986 + 51 804 -1.87498534 + 52 804 -1.85948098 + 53 804 -1.83417475 + 54 804 -1.79742575 + 55 804 -1.7499404 + 56 804 -1.70269728 + 57 804 -1.65059507 + 58 804 -1.59180093 + 59 804 -1.52983797 + 60 804 -1.46320522 + 61 804 -1.40133607 + 62 804 -1.33170795 + 63 804 -1.24542093 + 64 804 -1.16732514 + 65 804 -1.0739373 + 66 804 -0.944658697 + 67 804 -0.809189796 + 68 804 -0.730431437 + 69 804 -0.645524025 + 70 804 -0.546323299 + 71 804 -0.459890991 + 72 804 -0.389626712 + 73 804 -0.344927371 + 74 804 -0.318507433 + 75 804 -0.312524408 + 76 804 -0.299664795 + 77 804 -0.270999163 + 78 804 -0.214967504 + 79 804 -0.132861331 + 80 804 -0.0279211421 + 81 804 0.0801134333 + 82 804 0.194214448 + 83 804 0.270900846 + 84 804 0.321715534 + 85 804 0.366111428 + 86 804 0.427559406 + 87 804 0.490137517 + 88 804 0.58779496 + 89 804 0.734814465 + 90 804 0.885568559 + 91 804 1.03609324 + 92 804 1.18695164 + 93 804 1.32032347 + 94 804 1.49576688 + 95 804 1.83208942 + 96 804 2.19892335 + 97 804 2.57536411 + 98 804 3.06570721 + 99 804 3.54617691 + 100 804 3.9548049 + 101 804 4.19503975 + 102 804 4.21790075 + 103 804 4.18529463 + 104 804 4.14921236 + 105 804 4.11699247 + 106 804 4.06967688 + 107 804 3.98823261 + 108 804 3.88714862 + 109 804 3.79957843 + 11 803 -0.950640678 + 12 803 -0.66407001 + 13 803 -0.350222349 + 14 803 -0.0887623727 + 15 803 0.0591643229 + 16 803 -0.00245677214 + 17 803 -0.289103687 + 18 803 -0.455613464 + 19 803 -0.585379601 + 20 803 -0.706464529 + 21 803 -0.819767892 + 22 803 -0.941031337 + 23 803 -1.0693202 + 24 803 -1.20374596 + 25 803 -1.3292377 + 26 803 -1.4409349 + 27 803 -1.53148568 + 28 803 -1.58821321 + 29 803 -1.6106596 + 30 803 -1.61756289 + 31 803 -1.60598469 + 32 803 -1.57367229 + 33 803 -1.52399743 + 34 803 -1.48482358 + 35 803 -1.44568789 + 36 803 -1.41773379 + 37 803 -1.40651596 + 38 803 -1.40380549 + 39 803 -1.40962052 + 40 803 -1.46442986 + 41 803 -1.52825773 + 42 803 -1.59375298 + 43 803 -1.61381662 + 44 803 -1.64173555 + 45 803 -1.67053366 + 46 803 -1.70209956 + 47 803 -1.7310847 + 48 803 -1.75659907 + 49 803 -1.79080272 + 50 803 -1.83297169 + 51 803 -1.87855077 + 52 803 -1.8587178 + 53 803 -1.83169234 + 54 803 -1.79354107 + 55 803 -1.75012887 + 56 803 -1.70550144 + 57 803 -1.65031433 + 58 803 -1.59071887 + 59 803 -1.52914608 + 60 803 -1.46739078 + 61 803 -1.40459335 + 62 803 -1.33731401 + 63 803 -1.26139987 + 64 803 -1.1801008 + 65 803 -1.08608735 + 66 803 -0.960675061 + 67 803 -0.830617309 + 68 803 -0.765171468 + 69 803 -0.681221902 + 70 803 -0.581048429 + 71 803 -0.494472057 + 72 803 -0.429379284 + 73 803 -0.388696045 + 74 803 -0.358517468 + 75 803 -0.349433482 + 76 803 -0.335767329 + 77 803 -0.307602108 + 78 803 -0.248581693 + 79 803 -0.158033177 + 80 803 -0.0594554432 + 81 803 0.0603356026 + 82 803 0.172304288 + 83 803 0.23905234 + 84 803 0.293704689 + 85 803 0.327476412 + 86 803 0.375177711 + 87 803 0.432379007 + 88 803 0.534199059 + 89 803 0.67531544 + 90 803 0.836103201 + 91 803 0.988598347 + 92 803 1.12950122 + 93 803 1.27312064 + 94 803 1.4720583 + 95 803 1.84056544 + 96 803 2.2326138 + 97 803 2.64985132 + 98 803 3.12833953 + 99 803 3.59504032 + 100 803 3.99103642 + 101 803 4.16093397 + 102 803 4.14486361 + 103 803 4.11923599 + 104 803 4.09236526 + 105 803 4.07147503 + 106 803 4.0289669 + 107 803 3.96006083 + 108 803 3.87134981 + 109 803 3.77904606 + 11 802 -0.735646784 + 12 802 -0.429429859 + 13 802 -0.0817423537 + 14 802 0.191036388 + 15 802 0.164633557 + 16 802 -0.109633468 + 17 802 -0.338921577 + 18 802 -0.523842454 + 19 802 -0.671017766 + 20 802 -0.782941222 + 21 802 -0.882369936 + 22 802 -0.987433672 + 23 802 -1.1025033 + 24 802 -1.22846615 + 25 802 -1.35973859 + 26 802 -1.46890128 + 27 802 -1.55289781 + 28 802 -1.61104143 + 29 802 -1.63869667 + 30 802 -1.62992907 + 31 802 -1.62448812 + 32 802 -1.57892859 + 33 802 -1.53318107 + 34 802 -1.48564684 + 35 802 -1.4344486 + 36 802 -1.38484073 + 37 802 -1.36162531 + 38 802 -1.35658824 + 39 802 -1.36235189 + 40 802 -1.43842018 + 41 802 -1.51526713 + 42 802 -1.59394038 + 43 802 -1.62645805 + 44 802 -1.65773439 + 45 802 -1.69180977 + 46 802 -1.71760571 + 47 802 -1.7385335 + 48 802 -1.75724316 + 49 802 -1.79813612 + 50 802 -1.83771789 + 51 802 -1.87868798 + 52 802 -1.85787404 + 53 802 -1.829669 + 54 802 -1.79422748 + 55 802 -1.7560674 + 56 802 -1.71318793 + 57 802 -1.6606195 + 58 802 -1.60517001 + 59 802 -1.54258895 + 60 802 -1.4833678 + 61 802 -1.42081511 + 62 802 -1.35195899 + 63 802 -1.28077734 + 64 802 -1.19674408 + 65 802 -1.10146189 + 66 802 -0.985413074 + 67 802 -0.859415293 + 68 802 -0.843373179 + 69 802 -0.72160387 + 70 802 -0.61293608 + 71 802 -0.529367924 + 72 802 -0.468689322 + 73 802 -0.428695202 + 74 802 -0.399107069 + 75 802 -0.386910647 + 76 802 -0.365469962 + 77 802 -0.330679923 + 78 802 -0.26800251 + 79 802 -0.186203942 + 80 802 -0.075903073 + 81 802 0.0468700267 + 82 802 0.151288301 + 83 802 0.213776454 + 84 802 0.264339447 + 85 802 0.295742512 + 86 802 0.331813335 + 87 802 0.385703474 + 88 802 0.495817214 + 89 802 0.638017595 + 90 802 0.80371964 + 91 802 0.955765545 + 92 802 1.08904684 + 93 802 1.24479055 + 94 802 1.42768943 + 95 802 1.82730031 + 96 802 2.24878359 + 97 802 2.69872975 + 98 802 3.18785667 + 99 802 3.6352942 + 100 802 3.97938895 + 101 802 4.06677675 + 102 802 4.07628918 + 103 802 4.05312014 + 104 802 4.04043484 + 105 802 4.03514671 + 106 802 3.99498749 + 107 802 3.92747784 + 108 802 3.84780788 + 109 802 3.75421906 + 11 801 -0.574359536 + 12 801 -0.276037782 + 13 801 0.0542375632 + 14 801 0.483635485 + 15 801 0.0502277985 + 16 801 -0.196743339 + 17 801 -0.463142753 + 18 801 -0.687736034 + 19 801 -0.841510057 + 20 801 -0.934367478 + 21 801 -1.00083256 + 22 801 -1.06775129 + 23 801 -1.15768492 + 24 801 -1.26609504 + 25 801 -1.3924818 + 26 801 -1.49563313 + 27 801 -1.58257747 + 28 801 -1.63780892 + 29 801 -1.67856383 + 30 801 -1.6538012 + 31 801 -1.64258337 + 32 801 -1.59109461 + 33 801 -1.54813612 + 34 801 -1.49239779 + 35 801 -1.43148768 + 36 801 -1.36620295 + 37 801 -1.327389 + 38 801 -1.31062043 + 39 801 -1.31141102 + 40 801 -1.41356754 + 41 801 -1.50359428 + 42 801 -1.58730936 + 43 801 -1.63965309 + 44 801 -1.68641722 + 45 801 -1.71876073 + 46 801 -1.73757446 + 47 801 -1.74985909 + 48 801 -1.76408839 + 49 801 -1.80362976 + 50 801 -1.84088814 + 51 801 -1.87692475 + 52 801 -1.85539556 + 53 801 -1.82864845 + 54 801 -1.79667866 + 55 801 -1.75807226 + 56 801 -1.71462011 + 57 801 -1.66293538 + 58 801 -1.6117872 + 59 801 -1.5509845 + 60 801 -1.49795175 + 61 801 -1.43445909 + 62 801 -1.36549461 + 63 801 -1.29431784 + 64 801 -1.21487641 + 65 801 -1.1180315 + 66 801 -1.00297368 + 67 801 -0.874288797 + 68 801 -0.869208515 + 69 801 -0.751220345 + 70 801 -0.638254821 + 71 801 -0.562760532 + 72 801 -0.508846581 + 73 801 -0.462053835 + 74 801 -0.433705926 + 75 801 -0.421405286 + 76 801 -0.395786732 + 77 801 -0.3501333 + 78 801 -0.283708185 + 79 801 -0.20121029 + 80 801 -0.0895139128 + 81 801 0.0342539363 + 82 801 0.126375943 + 83 801 0.182208106 + 84 801 0.22964865 + 85 801 0.260843962 + 86 801 0.294748247 + 87 801 0.354162067 + 88 801 0.479952931 + 89 801 0.627873302 + 90 801 0.791997731 + 91 801 0.941950142 + 92 801 1.05701005 + 93 801 1.18005812 + 94 801 1.37086749 + 95 801 1.7953012 + 96 801 2.24175 + 97 801 2.71537971 + 98 801 3.22259784 + 99 801 3.6871419 + 100 801 3.91554809 + 101 801 3.95307636 + 102 801 3.97781849 + 103 801 3.97528839 + 104 801 3.98345828 + 105 801 3.98404622 + 106 801 3.94775033 + 107 801 3.88902664 + 108 801 3.81564569 + 109 801 3.73614955 + 11 800 -0.438291192 + 12 800 -0.222987473 + 13 800 0.063791275 + 14 800 0.359441161 + 15 800 -0.0578263402 + 16 800 -0.333665699 + 17 800 -0.632321954 + 18 800 -0.882116497 + 19 800 -1.06091249 + 20 800 -1.14776504 + 21 800 -1.18791151 + 22 800 -1.20804572 + 23 800 -1.26012921 + 24 800 -1.3454603 + 25 800 -1.45689201 + 26 800 -1.55437434 + 27 800 -1.63372302 + 28 800 -1.67777872 + 29 800 -1.72117221 + 30 800 -1.70749545 + 31 800 -1.68963516 + 32 800 -1.64224255 + 33 800 -1.59491396 + 34 800 -1.52182651 + 35 800 -1.45154524 + 36 800 -1.37376988 + 37 800 -1.32283139 + 38 800 -1.29162443 + 39 800 -1.28104627 + 40 800 -1.39992607 + 41 800 -1.49849153 + 42 800 -1.58379686 + 43 800 -1.64285815 + 44 800 -1.70511055 + 45 800 -1.74273407 + 46 800 -1.75564301 + 47 800 -1.7660042 + 48 800 -1.77282882 + 49 800 -1.81140673 + 50 800 -1.84596336 + 51 800 -1.87387061 + 52 800 -1.85137403 + 53 800 -1.83170509 + 54 800 -1.80390286 + 55 800 -1.75733495 + 56 800 -1.71187401 + 57 800 -1.65627968 + 58 800 -1.60185456 + 59 800 -1.5413146 + 60 800 -1.4872179 + 61 800 -1.41924334 + 62 800 -1.35285354 + 63 800 -1.28492093 + 64 800 -1.20905709 + 65 800 -1.11433232 + 66 800 -1.00587201 + 67 800 -0.883681178 + 68 800 -0.894083679 + 69 800 -0.768670022 + 70 800 -0.662748814 + 71 800 -0.591712356 + 72 800 -0.540926754 + 73 800 -0.498380005 + 74 800 -0.474418938 + 75 800 -0.464285642 + 76 800 -0.43865636 + 77 800 -0.384338737 + 78 800 -0.31806615 + 79 800 -0.233064115 + 80 800 -0.123724118 + 81 800 -0.00482360786 + 82 800 0.0799892247 + 83 800 0.142115936 + 84 800 0.180212989 + 85 800 0.221668795 + 86 800 0.258849829 + 87 800 0.334435284 + 88 800 0.479518861 + 89 800 0.63116771 + 90 800 0.792969167 + 91 800 0.932905436 + 92 800 1.03458881 + 93 800 1.11532736 + 94 800 1.2928896 + 95 800 1.74869227 + 96 800 2.21644473 + 97 800 2.69536996 + 98 800 3.20177555 + 99 800 3.62155485 + 100 800 3.79426098 + 101 800 3.84202456 + 102 800 3.86706376 + 103 800 3.88425016 + 104 800 3.92342901 + 105 800 3.91943002 + 106 800 3.88607645 + 107 800 3.83504915 + 108 800 3.76517701 + 109 800 3.69254899 + 11 799 -0.46985516 + 12 799 -0.1556032 + 13 799 0.105594009 + 14 799 0.195360616 + 15 799 -0.192017749 + 16 799 -0.487930834 + 17 799 -0.830826461 + 18 799 -1.08220053 + 19 799 -1.27692032 + 20 799 -1.36128557 + 21 799 -1.39693689 + 22 799 -1.40544856 + 23 799 -1.43164682 + 24 799 -1.48881292 + 25 799 -1.55699301 + 26 799 -1.6411674 + 27 799 -1.7092123 + 28 799 -1.74693251 + 29 799 -1.7762928 + 30 799 -1.76880705 + 31 799 -1.75404382 + 32 799 -1.71413124 + 33 799 -1.67021084 + 34 799 -1.58915317 + 35 799 -1.50136364 + 36 799 -1.41361654 + 37 799 -1.34533679 + 38 799 -1.29959607 + 39 799 -1.28399694 + 40 799 -1.40427983 + 41 799 -1.50586021 + 42 799 -1.59243608 + 43 799 -1.65697491 + 44 799 -1.72328663 + 45 799 -1.75785375 + 46 799 -1.7630347 + 47 799 -1.77061403 + 48 799 -1.77805376 + 49 799 -1.82783055 + 50 799 -1.85754728 + 51 799 -1.87518263 + 52 799 -1.85128617 + 53 799 -1.83373535 + 54 799 -1.80346286 + 55 799 -1.75884175 + 56 799 -1.70242965 + 57 799 -1.6390692 + 58 799 -1.57266366 + 59 799 -1.51079309 + 60 799 -1.45302403 + 61 799 -1.38412309 + 62 799 -1.32114255 + 63 799 -1.25933599 + 64 799 -1.17834425 + 65 799 -1.0942322 + 66 799 -1.00044799 + 67 799 -0.885130644 + 68 799 -0.904167652 + 69 799 -0.79300648 + 70 799 -0.700954914 + 71 799 -0.636076331 + 72 799 -0.582232475 + 73 799 -0.549905419 + 74 799 -0.533147097 + 75 799 -0.52145201 + 76 799 -0.490202039 + 77 799 -0.439360827 + 78 799 -0.375588745 + 79 799 -0.292394578 + 80 799 -0.186520755 + 81 799 -0.0735440701 + 82 799 0.012439575 + 83 799 0.0876822099 + 84 799 0.130104333 + 85 799 0.18013376 + 86 799 0.235403419 + 87 799 0.330266684 + 88 799 0.484717458 + 89 799 0.638332248 + 90 799 0.80360955 + 91 799 0.930040956 + 92 799 1.02361369 + 93 799 1.07377243 + 94 799 1.19582617 + 95 799 1.69798756 + 96 799 2.19128156 + 97 799 2.65859938 + 98 799 3.13636851 + 99 799 3.6135335 + 100 799 3.66181183 + 101 799 3.70480776 + 102 799 3.73773956 + 103 799 3.77723551 + 104 799 3.81585956 + 105 799 3.82001877 + 106 799 3.79719758 + 107 799 3.76150131 + 108 799 3.70352077 + 109 799 3.64231658 + 11 798 -0.383366406 + 12 798 -0.166155934 + 13 798 0.132050559 + 14 798 -0.0751915723 + 15 798 -0.334210157 + 16 798 -0.647198439 + 17 798 -1.03165722 + 18 798 -1.26728749 + 19 798 -1.43801105 + 20 798 -1.52071476 + 21 798 -1.56400871 + 22 798 -1.59542227 + 23 798 -1.6170013 + 24 798 -1.67804134 + 25 798 -1.73486948 + 26 798 -1.7799046 + 27 798 -1.82120395 + 28 798 -1.84142864 + 29 798 -1.84512436 + 30 798 -1.84782362 + 31 798 -1.83938515 + 32 798 -1.80913019 + 33 798 -1.76583731 + 34 798 -1.68619955 + 35 798 -1.57758534 + 36 798 -1.47772837 + 37 798 -1.39879429 + 38 798 -1.33614981 + 39 798 -1.3094964 + 40 798 -1.42949402 + 41 798 -1.52941096 + 42 798 -1.61252737 + 43 798 -1.67888653 + 44 798 -1.7452625 + 45 798 -1.77854764 + 46 798 -1.77937031 + 47 798 -1.78823781 + 48 798 -1.81689215 + 49 798 -1.84878528 + 50 798 -1.89091599 + 51 798 -1.88620412 + 52 798 -1.86611664 + 53 798 -1.85106635 + 54 798 -1.81133103 + 55 798 -1.76438284 + 56 798 -1.69961131 + 57 798 -1.63020694 + 58 798 -1.55650055 + 59 798 -1.48727846 + 60 798 -1.41622567 + 61 798 -1.33921826 + 62 798 -1.28353715 + 63 798 -1.22729397 + 64 798 -1.15478861 + 65 798 -1.08673537 + 66 798 -1.00452983 + 67 798 -0.889486551 + 68 798 -0.903692424 + 69 798 -0.819401026 + 70 798 -0.742981791 + 71 798 -0.687864423 + 72 798 -0.644495428 + 73 798 -0.621795118 + 74 798 -0.598887861 + 75 798 -0.585054159 + 76 798 -0.547078788 + 77 798 -0.500366688 + 78 798 -0.432608634 + 79 798 -0.348642945 + 80 798 -0.251239717 + 81 798 -0.149383917 + 82 798 -0.0685969219 + 83 798 0.0088503724 + 84 798 0.0617225021 + 85 798 0.133780494 + 86 798 0.214337379 + 87 798 0.334214687 + 88 798 0.491241157 + 89 798 0.638931394 + 90 798 0.799774349 + 91 798 0.921999216 + 92 798 1.01354432 + 93 798 1.05575705 + 94 798 1.06929243 + 95 798 1.69237268 + 96 798 2.19023895 + 97 798 2.64367795 + 98 798 3.07947135 + 99 798 3.43724966 + 100 798 3.51192689 + 101 798 3.5602746 + 102 798 3.60289097 + 103 798 3.65690756 + 104 798 3.68892121 + 105 798 3.69758916 + 106 798 3.68784785 + 107 798 3.6658752 + 108 798 3.61777568 + 109 798 3.57063007 + 11 797 -0.409173042 + 12 797 -0.207935721 + 13 797 -0.1579445 + 14 797 -0.280748218 + 15 797 -0.53755343 + 16 797 -0.851378262 + 17 797 -1.19471037 + 18 797 -1.42566347 + 19 797 -1.57810879 + 20 797 -1.64851701 + 21 797 -1.68352866 + 22 797 -1.73084462 + 23 797 -1.76786566 + 24 797 -1.84546912 + 25 797 -1.89665568 + 26 797 -1.91271961 + 27 797 -1.9221288 + 28 797 -1.93122649 + 29 797 -1.90976214 + 30 797 -1.93082845 + 31 797 -1.92641497 + 32 797 -1.89927375 + 33 797 -1.85863125 + 34 797 -1.78148961 + 35 797 -1.66714585 + 36 797 -1.5592128 + 37 797 -1.46653306 + 38 797 -1.3922801 + 39 797 -1.35417223 + 40 797 -1.48350644 + 41 797 -1.5688684 + 42 797 -1.64195287 + 43 797 -1.70528316 + 44 797 -1.76740992 + 45 797 -1.79980254 + 46 797 -1.80483353 + 47 797 -1.81201541 + 48 797 -1.83704853 + 49 797 -1.87232029 + 50 797 -1.90941215 + 51 797 -1.89842379 + 52 797 -1.8848027 + 53 797 -1.87006497 + 54 797 -1.81858206 + 55 797 -1.77209425 + 56 797 -1.69968021 + 57 797 -1.62095106 + 58 797 -1.53859484 + 59 797 -1.46260464 + 60 797 -1.38234663 + 61 797 -1.30987847 + 62 797 -1.25639164 + 63 797 -1.19998443 + 64 797 -1.14602053 + 65 797 -1.09631443 + 66 797 -1.02290142 + 67 797 -0.912280262 + 68 797 -0.925359666 + 69 797 -0.855294645 + 70 797 -0.793163598 + 71 797 -0.751176298 + 72 797 -0.730811357 + 73 797 -0.691418409 + 74 797 -0.671160221 + 75 797 -0.650562704 + 76 797 -0.602794588 + 77 797 -0.554640174 + 78 797 -0.481569707 + 79 797 -0.391131341 + 80 797 -0.302808464 + 81 797 -0.214071661 + 82 797 -0.130040154 + 83 797 -0.0523867197 + 84 797 0.00893631019 + 85 797 0.0957782865 + 86 797 0.199188694 + 87 797 0.342514127 + 88 797 0.499818772 + 89 797 0.65251708 + 90 797 0.803052425 + 91 797 0.920394719 + 92 797 0.99043256 + 93 797 1.04748237 + 94 797 1.22396433 + 95 797 1.74790406 + 96 797 2.23495054 + 97 797 2.66759634 + 98 797 3.05963993 + 99 797 3.29301882 + 100 797 3.3658812 + 101 797 3.41904807 + 102 797 3.47932935 + 103 797 3.53700805 + 104 797 3.56725669 + 105 797 3.58404994 + 106 797 3.58002019 + 107 797 3.56716037 + 108 797 3.53089571 + 109 797 3.49434304 + 10 796 -0.506196976 + 11 796 -0.457462102 + 12 796 -0.400882006 + 13 796 -0.40713641 + 14 796 -0.566563666 + 15 796 -0.814684868 + 16 796 -1.06454825 + 17 796 -1.3204608 + 18 796 -1.53281486 + 19 796 -1.67118394 + 20 796 -1.75098276 + 21 796 -1.77689588 + 22 796 -1.82721126 + 23 796 -1.87441051 + 24 796 -1.94075918 + 25 796 -1.98974597 + 26 796 -2.02034855 + 27 796 -2.00623512 + 28 796 -1.99036217 + 29 796 -1.98120344 + 30 796 -1.99760389 + 31 796 -1.995579 + 32 796 -1.98279381 + 33 796 -1.93885148 + 34 796 -1.86065757 + 35 796 -1.75869858 + 36 796 -1.65497792 + 37 796 -1.55748475 + 38 796 -1.47453701 + 39 796 -1.50361788 + 40 796 -1.55590641 + 41 796 -1.62046587 + 42 796 -1.68062449 + 43 796 -1.73429418 + 44 796 -1.78125536 + 45 796 -1.80854368 + 46 796 -1.80694997 + 47 796 -1.81419599 + 48 796 -1.85276425 + 49 796 -1.8908242 + 50 796 -1.9315654 + 51 796 -1.91280568 + 52 796 -1.90051079 + 53 796 -1.88281202 + 54 796 -1.82593846 + 55 796 -1.77536523 + 56 796 -1.69802642 + 57 796 -1.61306798 + 58 796 -1.52719736 + 59 796 -1.44910169 + 60 796 -1.36754537 + 61 796 -1.30441606 + 62 796 -1.25508893 + 63 796 -1.20710742 + 64 796 -1.1708957 + 65 796 -1.13295853 + 66 796 -1.04653347 + 67 796 -0.946835697 + 68 796 -0.991882086 + 69 796 -0.907253385 + 70 796 -0.857512295 + 71 796 -0.823267519 + 72 796 -0.804110527 + 73 796 -0.763707876 + 74 796 -0.750061393 + 75 796 -0.702572942 + 76 796 -0.644930363 + 77 796 -0.587740064 + 78 796 -0.506359756 + 79 796 -0.41400978 + 80 796 -0.332631946 + 81 796 -0.245438084 + 82 796 -0.159433842 + 83 796 -0.090728268 + 84 796 -0.016196534 + 85 796 0.0846680552 + 86 796 0.200235203 + 87 796 0.352727503 + 88 796 0.513082802 + 89 796 0.673634231 + 90 796 0.803535342 + 91 796 0.897642732 + 92 796 0.967065394 + 93 796 1.08657598 + 94 796 1.35930073 + 95 796 1.8917619 + 96 796 2.33177114 + 97 796 2.72469544 + 98 796 3.05788708 + 99 796 3.1638577 + 100 796 3.23731852 + 101 796 3.31335902 + 102 796 3.38036442 + 103 796 3.4340198 + 104 796 3.46310568 + 105 796 3.48647428 + 106 796 3.47898602 + 107 796 3.47218275 + 108 796 3.44368434 + 109 796 3.41750669 + 10 795 -0.567489922 + 11 795 -0.587553382 + 12 795 -0.590157926 + 13 795 -0.606567085 + 14 795 -0.876754224 + 15 795 -1.10747111 + 16 795 -1.3104682 + 17 795 -1.51410389 + 18 795 -1.69258142 + 19 795 -1.79209602 + 20 795 -1.8355267 + 21 795 -1.84750187 + 22 795 -1.88015175 + 23 795 -1.9343133 + 24 795 -1.98506916 + 25 795 -2.02915621 + 26 795 -2.05518746 + 27 795 -2.04208589 + 28 795 -2.01606536 + 29 795 -2.0210135 + 30 795 -2.03787589 + 31 795 -2.03907514 + 32 795 -2.0309031 + 33 795 -1.99822736 + 34 795 -1.92239439 + 35 795 -1.83240271 + 36 795 -1.72671819 + 37 795 -1.62597394 + 38 795 -1.54993784 + 39 795 -1.58564007 + 40 795 -1.635432 + 41 795 -1.69853437 + 42 795 -1.72826219 + 43 795 -1.75872922 + 44 795 -1.78803611 + 45 795 -1.80905879 + 46 795 -1.81615865 + 47 795 -1.82368481 + 48 795 -1.86421585 + 49 795 -1.90738606 + 50 795 -1.95145512 + 51 795 -1.93438673 + 52 795 -1.92264068 + 53 795 -1.90286136 + 54 795 -1.84641016 + 55 795 -1.79128325 + 56 795 -1.70762944 + 57 795 -1.62183392 + 58 795 -1.53280282 + 59 795 -1.45983946 + 60 795 -1.38583887 + 61 795 -1.33425295 + 62 795 -1.29096973 + 63 795 -1.24147606 + 64 795 -1.21190822 + 65 795 -1.18274486 + 66 795 -1.09245563 + 67 795 -1.06970131 + 68 795 -1.0351553 + 69 795 -0.973328531 + 70 795 -0.924093664 + 71 795 -0.893688321 + 72 795 -0.854484558 + 73 795 -0.825303674 + 74 795 -0.794954002 + 75 795 -0.732771456 + 76 795 -0.671351254 + 77 795 -0.611729801 + 78 795 -0.5149979 + 79 795 -0.424904168 + 80 795 -0.345806777 + 81 795 -0.261963725 + 82 795 -0.175064698 + 83 795 -0.105358154 + 84 795 -0.0217507333 + 85 795 0.0893921703 + 86 795 0.214569792 + 87 795 0.363659024 + 88 795 0.527199388 + 89 795 0.678399861 + 90 795 0.780700624 + 91 795 0.83469528 + 92 795 0.999756515 + 93 795 1.26293755 + 94 795 1.67169929 + 95 795 2.07886267 + 96 795 2.49271464 + 97 795 2.82236648 + 98 795 2.98085332 + 99 795 3.06972098 + 100 795 3.1440897 + 101 795 3.23579168 + 102 795 3.30145431 + 103 795 3.33969808 + 104 795 3.36977172 + 105 795 3.38870978 + 106 795 3.37465262 + 107 795 3.36754322 + 108 795 3.34302211 + 109 795 3.32200718 + 10 794 -0.682154 + 11 794 -0.744010568 + 12 794 -0.776297688 + 13 794 -0.835885048 + 14 794 -1.11760581 + 15 794 -1.3406986 + 16 794 -1.53965807 + 17 794 -1.73797011 + 18 794 -1.86182463 + 19 794 -1.91540706 + 20 794 -1.93133092 + 21 794 -1.93099988 + 22 794 -1.94411409 + 23 794 -1.9742167 + 24 794 -2.00678492 + 25 794 -2.04324007 + 26 794 -2.06114936 + 27 794 -2.05648971 + 28 794 -2.0358963 + 29 794 -2.04298615 + 30 794 -2.05299211 + 31 794 -2.06062794 + 32 794 -2.05006289 + 33 794 -2.02437496 + 34 794 -1.95885384 + 35 794 -1.88152575 + 36 794 -1.78422594 + 37 794 -1.68899012 + 38 794 -1.60853362 + 39 794 -1.65507627 + 40 794 -1.70470321 + 41 794 -1.76213408 + 42 794 -1.77461326 + 43 794 -1.79035378 + 44 794 -1.79915035 + 45 794 -1.80941582 + 46 794 -1.81583428 + 47 794 -1.82519722 + 48 794 -1.87674308 + 49 794 -1.92250037 + 50 794 -1.9685874 + 51 794 -1.95692873 + 52 794 -1.94197166 + 53 794 -1.92096579 + 54 794 -1.87457621 + 55 794 -1.8186636 + 56 794 -1.73060155 + 57 794 -1.64207363 + 58 794 -1.56081796 + 59 794 -1.4885236 + 60 794 -1.42792392 + 61 794 -1.38641942 + 62 794 -1.34912014 + 63 794 -1.30911469 + 64 794 -1.28431344 + 65 794 -1.24162889 + 66 794 -1.159706 + 67 794 -1.15793681 + 68 794 -1.12712491 + 69 794 -1.05937147 + 70 794 -1.00313652 + 71 794 -0.964720905 + 72 794 -0.930240154 + 73 794 -0.896056831 + 74 794 -0.848940372 + 75 794 -0.778749406 + 76 794 -0.706789911 + 77 794 -0.626033127 + 78 794 -0.524252892 + 79 794 -0.434850723 + 80 794 -0.352776378 + 81 794 -0.272152483 + 82 794 -0.185024172 + 83 794 -0.105756104 + 84 794 -0.011935547 + 85 794 0.0985563695 + 86 794 0.229445398 + 87 794 0.376427352 + 88 794 0.531954288 + 89 794 0.661505818 + 90 794 0.764229417 + 91 794 0.9180246 + 92 794 1.17967331 + 93 794 1.50760305 + 94 794 1.8999356 + 95 794 2.28841615 + 96 794 2.69827867 + 97 794 2.885818 + 98 794 2.93534493 + 99 794 3.0103035 + 100 794 3.08307409 + 101 794 3.16881132 + 102 794 3.22332048 + 103 794 3.26760674 + 104 794 3.29331088 + 105 794 3.29864192 + 106 794 3.2731483 + 107 794 3.25765896 + 108 794 3.226928 + 109 794 3.21061635 + 10 793 -0.883767903 + 11 793 -0.920600891 + 12 793 -0.996201694 + 13 793 -1.13963759 + 14 793 -1.34904134 + 15 793 -1.56937242 + 16 793 -1.75184309 + 17 793 -1.92208147 + 18 793 -1.99907315 + 19 793 -2.04611325 + 20 793 -2.03060484 + 21 793 -2.02392077 + 22 793 -2.025599 + 23 793 -2.0343163 + 24 793 -2.04891396 + 25 793 -2.06669831 + 26 793 -2.06913137 + 27 793 -2.05900526 + 28 793 -2.0448525 + 29 793 -2.05167246 + 30 793 -2.05446982 + 31 793 -2.06821084 + 32 793 -2.05739903 + 33 793 -2.03074312 + 34 793 -1.97736514 + 35 793 -1.91712487 + 36 793 -1.83932996 + 37 793 -1.75058782 + 38 793 -1.67376649 + 39 793 -1.71962976 + 40 793 -1.76523256 + 41 793 -1.81820893 + 42 793 -1.81865084 + 43 793 -1.82018554 + 44 793 -1.81638157 + 45 793 -1.81924093 + 46 793 -1.82732296 + 47 793 -1.83818281 + 48 793 -1.89283586 + 49 793 -1.93953991 + 50 793 -1.97883451 + 51 793 -1.97351563 + 52 793 -1.95858598 + 53 793 -1.93486333 + 54 793 -1.895208 + 55 793 -1.83852732 + 56 793 -1.75400198 + 57 793 -1.67894864 + 58 793 -1.6066066 + 59 793 -1.54615247 + 60 793 -1.50222373 + 61 793 -1.4663868 + 62 793 -1.428339 + 63 793 -1.3872813 + 64 793 -1.35144627 + 65 793 -1.29420209 + 66 793 -1.22270167 + 67 793 -1.31494558 + 68 793 -1.24172044 + 69 793 -1.17187142 + 70 793 -1.11416328 + 71 793 -1.0662744 + 72 793 -1.02747536 + 73 793 -0.972173393 + 74 793 -0.903608322 + 75 793 -0.827940822 + 76 793 -0.750493169 + 77 793 -0.650444388 + 78 793 -0.544219077 + 79 793 -0.450531244 + 80 793 -0.364172727 + 81 793 -0.279115498 + 82 793 -0.195217773 + 83 793 -0.104382202 + 84 793 -0.00344824186 + 85 793 0.109335542 + 86 793 0.245469943 + 87 793 0.395463109 + 88 793 0.544038534 + 89 793 0.661593914 + 90 793 0.81545037 + 91 793 1.08558249 + 92 793 1.42118013 + 93 793 1.79935443 + 94 793 2.1243763 + 95 793 2.46446729 + 96 793 2.87522626 + 97 793 2.90466046 + 98 793 2.92756677 + 99 793 2.96411443 + 100 793 3.03052616 + 101 793 3.1033392 + 102 793 3.14837623 + 103 793 3.19863415 + 104 793 3.21922684 + 105 793 3.2129705 + 106 793 3.17652464 + 107 793 3.15238023 + 108 793 3.11785364 + 109 793 3.09983373 + 10 792 -1.02539504 + 11 792 -1.116243 + 12 792 -1.222036 + 13 792 -1.35811949 + 14 792 -1.54923081 + 15 792 -1.74807847 + 16 792 -1.9254247 + 17 792 -2.02239537 + 18 792 -2.10582709 + 19 792 -2.10032821 + 20 792 -2.09138584 + 21 792 -2.08644724 + 22 792 -2.07803226 + 23 792 -2.07817197 + 24 792 -2.07983017 + 25 792 -2.08541989 + 26 792 -2.0804801 + 27 792 -2.06678319 + 28 792 -2.05949211 + 29 792 -2.06366563 + 30 792 -2.06354499 + 31 792 -2.06966114 + 32 792 -2.05424809 + 33 792 -2.02701545 + 34 792 -1.98435926 + 35 792 -1.93497741 + 36 792 -1.87426496 + 37 792 -1.80991685 + 38 792 -1.75102866 + 39 792 -1.77955127 + 40 792 -1.82098234 + 41 792 -1.86340702 + 42 792 -1.85671997 + 43 792 -1.85490596 + 44 792 -1.84466696 + 45 792 -1.84325171 + 46 792 -1.84934986 + 47 792 -1.86156178 + 48 792 -1.91732395 + 49 792 -1.96126699 + 50 792 -1.99785352 + 51 792 -1.99305177 + 52 792 -1.9753921 + 53 792 -1.95311522 + 54 792 -1.91894233 + 55 792 -1.86334467 + 56 792 -1.79119921 + 57 792 -1.71868849 + 58 792 -1.65704286 + 59 792 -1.61414075 + 60 792 -1.57896984 + 61 792 -1.54650986 + 62 792 -1.5107125 + 63 792 -1.46139073 + 64 792 -1.41904891 + 65 792 -1.3465606 + 66 792 -1.33810842 + 67 792 -1.33944142 + 68 792 -1.35715246 + 69 792 -1.293275 + 70 792 -1.23652959 + 71 792 -1.17941523 + 72 792 -1.12782145 + 73 792 -1.06345034 + 74 792 -0.979528487 + 75 792 -0.886846006 + 76 792 -0.791421771 + 77 792 -0.677466929 + 78 792 -0.565612972 + 79 792 -0.468471557 + 80 792 -0.377519518 + 81 792 -0.285409689 + 82 792 -0.200925052 + 83 792 -0.100333378 + 84 792 0.00673828088 + 85 792 0.126982391 + 86 792 0.266557217 + 87 792 0.416221529 + 88 792 0.55367285 + 89 792 0.708249688 + 90 792 0.967646897 + 91 792 1.30496562 + 92 792 1.68961346 + 93 792 2.09732342 + 94 792 2.33464217 + 95 792 2.59629273 + 96 792 2.89159703 + 97 792 2.90140653 + 98 792 2.8999095 + 99 792 2.91104865 + 100 792 2.9698782 + 101 792 3.02387857 + 102 792 3.07048798 + 103 792 3.11194754 + 104 792 3.12787223 + 105 792 3.1199739 + 106 792 3.08814478 + 107 792 3.0544436 + 108 792 3.01440358 + 109 792 2.99084592 + 10 791 -1.25344718 + 11 791 -1.33760393 + 12 791 -1.4255482 + 13 791 -1.52958286 + 14 791 -1.68717611 + 15 791 -1.84217513 + 16 791 -1.96241486 + 17 791 -2.07092094 + 18 791 -2.08969522 + 19 791 -2.08603215 + 20 791 -2.07952094 + 21 791 -2.07859564 + 22 791 -2.08568954 + 23 791 -2.0974369 + 24 791 -2.10179496 + 25 791 -2.10353565 + 26 791 -2.09781146 + 27 791 -2.08657527 + 28 791 -2.08286428 + 29 791 -2.08764315 + 30 791 -2.09227633 + 31 791 -2.09187412 + 32 791 -2.0687921 + 33 791 -2.03499794 + 34 791 -1.99736321 + 35 791 -1.94840813 + 36 791 -1.89660537 + 37 791 -1.8472445 + 38 791 -1.80323911 + 39 791 -1.83140552 + 40 791 -1.87263298 + 41 791 -1.91929495 + 42 791 -1.90670192 + 43 791 -1.89917779 + 44 791 -1.89078271 + 45 791 -1.89058053 + 46 791 -1.8955642 + 47 791 -1.90533376 + 48 791 -1.95031834 + 49 791 -1.98920894 + 50 791 -2.023875 + 51 791 -2.02030969 + 52 791 -2.00384378 + 53 791 -1.9840405 + 54 791 -1.94919145 + 55 791 -1.90117288 + 56 791 -1.83797359 + 57 791 -1.7765249 + 58 791 -1.72495806 + 59 791 -1.69045591 + 60 791 -1.65485585 + 61 791 -1.61796761 + 62 791 -1.57578182 + 63 791 -1.51688826 + 64 791 -1.46223056 + 65 791 -1.3936758 + 66 791 -1.38869083 + 67 791 -1.40441859 + 68 791 -1.44755816 + 69 791 -1.39678049 + 70 791 -1.33709538 + 71 791 -1.28355598 + 72 791 -1.22811568 + 73 791 -1.15128875 + 74 791 -1.05725074 + 75 791 -0.95698148 + 76 791 -0.836469591 + 77 791 -0.705943346 + 78 791 -0.585835874 + 79 791 -0.484271228 + 80 791 -0.388777226 + 81 791 -0.293923706 + 82 791 -0.20302099 + 83 791 -0.0915084258 + 84 791 0.0228603818 + 85 791 0.152453095 + 86 791 0.293428183 + 87 791 0.443598568 + 88 791 0.583594501 + 89 791 0.811801672 + 90 791 1.15201044 + 91 791 1.54848123 + 92 791 1.97734714 + 93 791 2.38531446 + 94 791 2.51684976 + 95 791 2.68081784 + 96 791 2.87002516 + 97 791 2.85859489 + 98 791 2.8322649 + 99 791 2.84925365 + 100 791 2.90381765 + 101 791 2.94535565 + 102 791 2.99059248 + 103 791 3.00929523 + 104 791 3.01023555 + 105 791 2.99565935 + 106 791 2.95512176 + 107 791 2.91690111 + 108 791 2.88696361 + 109 791 2.86662436 + 10 790 -1.4413178 + 11 790 -1.50274646 + 12 790 -1.55728257 + 13 790 -1.64370298 + 14 790 -1.75413322 + 15 790 -1.8750155 + 16 790 -1.93780744 + 17 790 -1.9933095 + 18 790 -2.01784062 + 19 790 -2.03364301 + 20 790 -2.0461576 + 21 790 -2.06202531 + 22 790 -2.08772373 + 23 790 -2.10401177 + 24 790 -2.10835838 + 25 790 -2.11038423 + 26 790 -2.10734034 + 27 790 -2.09786129 + 28 790 -2.10703182 + 29 790 -2.11907816 + 30 790 -2.12776613 + 31 790 -2.1234374 + 32 790 -2.09679151 + 33 790 -2.05541706 + 34 790 -2.01148415 + 35 790 -1.9574852 + 36 790 -1.90849745 + 37 790 -1.86562729 + 38 790 -1.82859218 + 39 790 -1.8751179 + 40 790 -1.9214921 + 41 790 -1.97120166 + 42 790 -1.96294677 + 43 790 -1.9591794 + 44 790 -1.95050323 + 45 790 -1.94706297 + 46 790 -1.9485811 + 47 790 -1.95810425 + 48 790 -1.98968101 + 49 790 -2.01977682 + 50 790 -2.05328512 + 51 790 -2.04346776 + 52 790 -2.02536631 + 53 790 -2.00944233 + 54 790 -1.97981346 + 55 790 -1.94328904 + 56 790 -1.89170945 + 57 790 -1.83713472 + 58 790 -1.79404342 + 59 790 -1.74707711 + 60 790 -1.69980419 + 61 790 -1.65267658 + 62 790 -1.60474372 + 63 790 -1.53760946 + 64 790 -1.47885954 + 65 790 -1.41224039 + 66 790 -1.42558205 + 67 790 -1.44915593 + 68 790 -1.48931074 + 69 790 -1.44416261 + 70 790 -1.38836622 + 71 790 -1.34008205 + 72 790 -1.28712761 + 73 790 -1.21877766 + 74 790 -1.1260227 + 75 790 -1.01811266 + 76 790 -0.881949902 + 77 790 -0.741247535 + 78 790 -0.608354449 + 79 790 -0.495621324 + 80 790 -0.396402836 + 81 790 -0.305333972 + 82 790 -0.201804936 + 83 790 -0.0796438009 + 84 790 0.0473813787 + 85 790 0.187211394 + 86 790 0.340926617 + 87 790 0.493163884 + 88 790 0.662485838 + 89 790 0.966072917 + 90 790 1.34470093 + 91 790 1.80642295 + 92 790 2.24484801 + 93 790 2.63996768 + 94 790 2.65442777 + 95 790 2.7293179 + 96 790 2.836694 + 97 790 2.79215789 + 98 790 2.74435759 + 99 790 2.7667644 + 100 790 2.81542015 + 101 790 2.85852456 + 102 790 2.89868879 + 103 790 2.90171504 + 104 790 2.88518095 + 105 790 2.84848261 + 106 790 2.79480553 + 107 790 2.76212764 + 108 790 2.7385242 + 109 790 2.73532248 + 10 789 -1.61245835 + 11 789 -1.65002966 + 12 789 -1.67596912 + 13 789 -1.72637141 + 14 789 -1.78365266 + 15 789 -1.82356775 + 16 789 -1.86283731 + 17 789 -1.9418602 + 18 789 -1.97322452 + 19 789 -2.00259614 + 20 789 -2.03304386 + 21 789 -2.0613687 + 22 789 -2.09185195 + 23 789 -2.11148834 + 24 789 -2.11638927 + 25 789 -2.12015033 + 26 789 -2.11988521 + 27 789 -2.10943508 + 28 789 -2.12045693 + 29 789 -2.14537215 + 30 789 -2.16486669 + 31 789 -2.1672852 + 32 789 -2.13161516 + 33 789 -2.08512497 + 34 789 -2.03043795 + 35 789 -1.97585726 + 36 789 -1.9305594 + 37 789 -1.89187491 + 38 789 -1.86008537 + 39 789 -1.91581964 + 40 789 -1.96916974 + 41 789 -2.01878309 + 42 789 -2.02482176 + 43 789 -2.02864313 + 44 789 -2.02680683 + 45 789 -2.01512957 + 46 789 -2.0100491 + 47 789 -2.00871468 + 48 789 -2.00374269 + 49 789 -2.08207607 + 50 789 -2.06585264 + 51 789 -2.0505507 + 52 789 -2.03271818 + 53 789 -2.02537394 + 54 789 -2.00015092 + 55 789 -1.97320902 + 56 789 -1.93006837 + 57 789 -1.88075387 + 58 789 -1.853791 + 59 789 -1.79863238 + 60 789 -1.73833394 + 61 789 -1.68766201 + 62 789 -1.62737489 + 63 789 -1.5460099 + 64 789 -1.48480487 + 65 789 -1.42403138 + 66 789 -1.45259058 + 67 789 -1.47952545 + 68 789 -1.50523782 + 69 789 -1.45603096 + 70 789 -1.41300189 + 71 789 -1.35654569 + 72 789 -1.31712866 + 73 789 -1.255463 + 74 789 -1.17787611 + 75 789 -1.06973469 + 76 789 -0.926356137 + 77 789 -0.780866086 + 78 789 -0.63317281 + 79 789 -0.508586407 + 80 789 -0.406823486 + 81 789 -0.315645754 + 82 789 -0.199037969 + 83 789 -0.0688402131 + 84 789 0.0780374482 + 85 789 0.242599338 + 86 789 0.41658628 + 87 789 0.575373471 + 88 789 0.777978957 + 89 789 1.09566724 + 90 789 1.51516378 + 91 789 1.97291136 + 92 789 2.43147659 + 93 789 2.78976369 + 94 789 2.73207664 + 95 789 2.7422204 + 96 789 2.7823441 + 97 789 2.71507835 + 98 789 2.67704177 + 99 789 2.68920374 + 100 789 2.72658277 + 101 789 2.78223896 + 102 789 2.81368375 + 103 789 2.80999184 + 104 789 2.77615643 + 105 789 2.71980095 + 106 789 2.65513444 + 107 789 2.6169157 + 108 789 2.5970993 + 109 789 2.61588001 + 10 788 -1.77324939 + 11 788 -1.79162288 + 12 788 -1.78591633 + 13 788 -1.80669081 + 14 788 -1.81244469 + 15 788 -1.82787931 + 16 788 -1.84037054 + 17 788 -1.89037144 + 18 788 -1.91724503 + 19 788 -1.96073127 + 20 788 -2.00898623 + 21 788 -2.06255627 + 22 788 -2.10450149 + 23 788 -2.10578227 + 24 788 -2.1171 + 25 788 -2.13530231 + 26 788 -2.13323545 + 27 788 -2.12394285 + 28 788 -2.14597893 + 29 788 -2.1825645 + 30 788 -2.19224405 + 31 788 -2.18529677 + 32 788 -2.1500566 + 33 788 -2.11080265 + 34 788 -2.05215907 + 35 788 -2.00231433 + 36 788 -1.95681334 + 37 788 -1.92110491 + 38 788 -1.8973676 + 39 788 -1.95928633 + 40 788 -2.01712775 + 41 788 -2.07620692 + 42 788 -2.09863186 + 43 788 -2.10930467 + 44 788 -2.10127759 + 45 788 -2.08276606 + 46 788 -2.06843662 + 47 788 -2.05177855 + 48 788 -2.06855011 + 49 788 -2.10077143 + 50 788 -2.07990146 + 51 788 -2.05605459 + 52 788 -2.03299522 + 53 788 -2.02427745 + 54 788 -2.00045896 + 55 788 -1.9804033 + 56 788 -1.94918358 + 57 788 -1.9062891 + 58 788 -1.87827349 + 59 788 -1.8265928 + 60 788 -1.76687896 + 61 788 -1.70496488 + 62 788 -1.63554525 + 63 788 -1.5602423 + 64 788 -1.4977653 + 65 788 -1.44337022 + 66 788 -1.4788115 + 67 788 -1.50771689 + 68 788 -1.5275017 + 69 788 -1.48580909 + 70 788 -1.44005346 + 71 788 -1.39003789 + 72 788 -1.32495797 + 73 788 -1.27030265 + 74 788 -1.20984781 + 75 788 -1.10488462 + 76 788 -0.962385535 + 77 788 -0.813379526 + 78 788 -0.659402668 + 79 788 -0.524343252 + 80 788 -0.411026984 + 81 788 -0.31685254 + 82 788 -0.188864261 + 83 788 -0.0329793692 + 84 788 0.141367882 + 85 788 0.324915498 + 86 788 0.518902659 + 87 788 0.706111312 + 88 788 0.907103956 + 89 788 1.16079247 + 90 788 1.57658935 + 91 788 2.03711724 + 92 788 2.46390104 + 93 788 2.82433391 + 94 788 2.73902702 + 95 788 2.71843123 + 96 788 2.72633171 + 97 788 2.66196108 + 98 788 2.61631513 + 99 788 2.60840511 + 100 788 2.62728405 + 101 788 2.68592691 + 102 788 2.72292113 + 103 788 2.72284698 + 104 788 2.68537045 + 105 788 2.62974477 + 106 788 2.57523513 + 107 788 2.5413177 + 108 788 2.52151251 + 109 788 2.53763986 + 9 787 -1.83333039 + 10 787 -1.89586759 + 11 787 -1.92424309 + 12 787 -1.9112103 + 13 787 -1.90357363 + 14 787 -1.8715868 + 15 787 -1.85575914 + 16 787 -1.83989882 + 17 787 -1.86677873 + 18 787 -1.90386462 + 19 787 -1.95898521 + 20 787 -2.00958776 + 21 787 -2.06578708 + 22 787 -2.11175728 + 23 787 -2.10599995 + 24 787 -2.14715719 + 25 787 -2.15065479 + 26 787 -2.15084434 + 27 787 -2.15043259 + 28 787 -2.18324018 + 29 787 -2.22307801 + 30 787 -2.22856545 + 31 787 -2.2224791 + 32 787 -2.18315625 + 33 787 -2.13708591 + 34 787 -2.08958101 + 35 787 -2.0229218 + 36 787 -1.98662198 + 37 787 -1.96087003 + 38 787 -1.945243 + 39 787 -2.00602484 + 40 787 -2.06524086 + 41 787 -2.12827349 + 42 787 -2.15654111 + 43 787 -2.17357969 + 44 787 -2.1672945 + 45 787 -2.13876605 + 46 787 -2.1073215 + 47 787 -2.07170558 + 48 787 -2.10165358 + 49 787 -2.12795115 + 50 787 -2.09809089 + 51 787 -2.07403374 + 52 787 -2.04947162 + 53 787 -2.03336525 + 54 787 -2.00466895 + 55 787 -1.97936618 + 56 787 -1.95193851 + 57 787 -1.91144431 + 58 787 -1.87907076 + 59 787 -1.83125103 + 60 787 -1.78767383 + 61 787 -1.72224903 + 62 787 -1.65151799 + 63 787 -1.58010066 + 64 787 -1.522403 + 65 787 -1.47156262 + 66 787 -1.51039815 + 67 787 -1.54095268 + 68 787 -1.56636965 + 69 787 -1.49963939 + 70 787 -1.44759917 + 71 787 -1.3897202 + 72 787 -1.34073293 + 73 787 -1.28545296 + 74 787 -1.23404443 + 75 787 -1.1368829 + 76 787 -1.00562382 + 77 787 -0.849042833 + 78 787 -0.686658025 + 79 787 -0.536974609 + 80 787 -0.410360366 + 81 787 -0.301766843 + 82 787 -0.147609249 + 83 787 0.0520456545 + 84 787 0.256967753 + 85 787 0.456310868 + 86 787 0.665254891 + 87 787 0.868827343 + 88 787 1.06861162 + 89 787 1.2917105 + 90 787 1.52029443 + 91 787 1.96530855 + 92 787 2.38829136 + 93 787 2.73862457 + 94 787 2.68666863 + 95 787 2.66316748 + 96 787 2.65869021 + 97 787 2.5981071 + 98 787 2.55195522 + 99 787 2.53146601 + 100 787 2.53833961 + 101 787 2.5913856 + 102 787 2.62649918 + 103 787 2.63110042 + 104 787 2.60402465 + 105 787 2.5604403 + 106 787 2.52267694 + 107 787 2.49584985 + 108 787 2.48124623 + 109 787 2.49217796 + 9 786 -1.84664249 + 10 786 -1.91591442 + 11 786 -1.94653118 + 12 786 -1.92800963 + 13 786 -1.90386653 + 14 786 -1.87613118 + 15 786 -1.85133731 + 16 786 -1.82081282 + 17 786 -1.84470153 + 18 786 -1.87764883 + 19 786 -1.93962491 + 20 786 -1.99030852 + 21 786 -2.06102252 + 22 786 -2.09851766 + 23 786 -2.11453319 + 24 786 -2.12396193 + 25 786 -2.13713193 + 26 786 -2.14137149 + 27 786 -2.16659331 + 28 786 -2.22191119 + 29 786 -2.23079586 + 30 786 -2.27656651 + 31 786 -2.26752734 + 32 786 -2.20985603 + 33 786 -2.14879775 + 34 786 -2.12481141 + 35 786 -2.08796668 + 36 786 -2.02560735 + 37 786 -2.01127815 + 38 786 -1.9980135 + 39 786 -2.05608201 + 40 786 -2.11152172 + 41 786 -2.1690836 + 42 786 -2.18657708 + 43 786 -2.19573116 + 44 786 -2.18069172 + 45 786 -2.14722705 + 46 786 -2.11595654 + 47 786 -2.07724166 + 48 786 -2.17147946 + 49 786 -2.14373922 + 50 786 -2.11095452 + 51 786 -2.09253955 + 52 786 -2.07227492 + 53 786 -2.048913 + 54 786 -2.01037407 + 55 786 -1.98310542 + 56 786 -1.9529326 + 57 786 -1.90867138 + 58 786 -1.87709177 + 59 786 -1.83695602 + 60 786 -1.8006767 + 61 786 -1.73847067 + 62 786 -1.67641878 + 63 786 -1.61698008 + 64 786 -1.56099033 + 65 786 -1.50835752 + 66 786 -1.54947186 + 67 786 -1.58245778 + 68 786 -1.60440505 + 69 786 -1.54440451 + 70 786 -1.49060845 + 71 786 -1.42785668 + 72 786 -1.37161326 + 73 786 -1.31469548 + 74 786 -1.26360035 + 75 786 -1.17600203 + 76 786 -1.05698633 + 77 786 -0.902410209 + 78 786 -0.735596538 + 79 786 -0.569439769 + 80 786 -0.432667106 + 81 786 -0.309416384 + 82 786 -0.096624881 + 83 786 0.163801119 + 84 786 0.400109231 + 85 786 0.622712076 + 86 786 0.841099083 + 87 786 1.04240286 + 88 786 1.23916864 + 89 786 1.3792212 + 90 786 1.54631639 + 91 786 1.86685622 + 92 786 2.26954794 + 93 786 2.6235683 + 94 786 2.59089828 + 95 786 2.58235002 + 96 786 2.59000015 + 97 786 2.54315162 + 98 786 2.50004864 + 99 786 2.47578931 + 100 786 2.47377658 + 101 786 2.50616717 + 102 786 2.5292902 + 103 786 2.5297308 + 104 786 2.51068282 + 105 786 2.48558617 + 106 786 2.45783234 + 107 786 2.43639827 + 108 786 2.43213511 + 109 786 2.43861699 + 9 785 -1.87284553 + 10 785 -1.9542098 + 11 785 -1.9127357 + 12 785 -1.92551744 + 13 785 -1.86959362 + 14 785 -1.81006479 + 15 785 -1.78698277 + 16 785 -1.76383531 + 17 785 -1.79233146 + 18 785 -1.86124396 + 19 785 -1.93651259 + 20 785 -1.9945966 + 21 785 -2.02899504 + 22 785 -2.06197357 + 23 785 -2.09673929 + 24 785 -2.10701847 + 25 785 -2.12716699 + 26 785 -2.15083694 + 27 785 -2.17889452 + 28 785 -2.24394035 + 29 785 -2.26175094 + 30 785 -2.30946183 + 31 785 -2.30164313 + 32 785 -2.25916076 + 33 785 -2.20767617 + 34 785 -2.15073729 + 35 785 -2.10864735 + 36 785 -2.08700585 + 37 785 -2.07203031 + 38 785 -2.05977583 + 39 785 -2.10792947 + 40 785 -2.15618634 + 41 785 -2.20462894 + 42 785 -2.20762515 + 43 785 -2.20180702 + 44 785 -2.17679834 + 45 785 -2.14118814 + 46 785 -2.11088181 + 47 785 -2.07051873 + 48 785 -2.165622 + 49 785 -2.14589071 + 50 785 -2.1233418 + 51 785 -2.11637211 + 52 785 -2.10052443 + 53 785 -2.07577729 + 54 785 -2.0327208 + 55 785 -1.9990083 + 56 785 -1.95773923 + 57 785 -1.90584862 + 58 785 -1.87611914 + 59 785 -1.84661186 + 60 785 -1.8112998 + 61 785 -1.75573778 + 62 785 -1.70616019 + 63 785 -1.64977717 + 64 785 -1.59581947 + 65 785 -1.54755676 + 66 785 -1.60359168 + 67 785 -1.63030112 + 68 785 -1.65357149 + 69 785 -1.59828758 + 70 785 -1.54366279 + 71 785 -1.47679126 + 72 785 -1.4125061 + 73 785 -1.35478663 + 74 785 -1.29679596 + 75 785 -1.20950961 + 76 785 -1.09745622 + 77 785 -0.950073421 + 78 785 -0.790242553 + 79 785 -0.617883742 + 80 785 -0.464530647 + 81 785 -0.283242255 + 82 785 -0.0171201173 + 83 785 0.282123387 + 84 785 0.544264853 + 85 785 0.806216955 + 86 785 1.02471292 + 87 785 1.18598247 + 88 785 1.32353473 + 89 785 1.42467308 + 90 785 1.56062102 + 91 785 1.75717998 + 92 785 2.14673376 + 93 785 2.46024942 + 94 785 2.47229147 + 95 785 2.49259639 + 96 785 2.49682546 + 97 785 2.46291685 + 98 785 2.42412281 + 99 785 2.4140985 + 100 785 2.41046453 + 101 785 2.42124104 + 102 785 2.43976355 + 103 785 2.4390192 + 104 785 2.4199183 + 105 785 2.40231872 + 106 785 2.37664032 + 107 785 2.3506403 + 108 785 2.35555005 + 109 785 2.36368966 + 16 784 -1.69276643 + 17 784 -1.73522794 + 18 784 -1.851933 + 19 784 -1.94624984 + 20 784 -2.00358963 + 21 784 -1.95912492 + 22 784 -2.00228786 + 23 784 -2.02699304 + 24 784 -2.072335 + 25 784 -2.11963582 + 26 784 -2.18561339 + 27 784 -2.22281551 + 28 784 -2.27359724 + 29 784 -2.30146575 + 30 784 -2.32577825 + 31 784 -2.33546376 + 32 784 -2.30611825 + 33 784 -2.25944543 + 34 784 -2.215379 + 35 784 -2.18443561 + 36 784 -2.15598822 + 37 784 -2.13601017 + 38 784 -2.11784577 + 39 784 -2.16243744 + 40 784 -2.20193458 + 41 784 -2.23623013 + 42 784 -2.22496581 + 43 784 -2.20980263 + 44 784 -2.18023777 + 45 784 -2.14612246 + 46 784 -2.10818124 + 47 784 -2.12737346 + 48 784 -2.14312434 + 49 784 -2.15683389 + 50 784 -2.14370561 + 51 784 -2.1400001 + 52 784 -2.12779403 + 53 784 -2.10821342 + 54 784 -2.06538725 + 55 784 -2.02261615 + 56 784 -1.96836519 + 57 784 -1.91123927 + 58 784 -1.87764454 + 59 784 -1.85749364 + 60 784 -1.8222456 + 61 784 -1.78040385 + 62 784 -1.74552691 + 63 784 -1.70030475 + 64 784 -1.64518154 + 65 784 -1.63635564 + 66 784 -1.65295684 + 67 784 -1.72068775 + 68 784 -1.67473805 + 69 784 -1.62833083 + 70 784 -1.57719779 + 71 784 -1.51587594 + 72 784 -1.44668186 + 73 784 -1.38835669 + 74 784 -1.32270634 + 75 784 -1.23822546 + 76 784 -1.12645531 + 77 784 -0.983278155 + 78 784 -0.820533097 + 79 784 -0.6450876 + 80 784 -0.472253531 + 81 784 -0.265769094 + 82 784 0.0610158704 + 83 784 0.373146832 + 84 784 0.667780042 + 85 784 0.921940625 + 86 784 1.10621846 + 87 784 1.21152294 + 88 784 1.28306079 + 89 784 1.38514912 + 90 784 1.49796212 + 91 784 1.68946445 + 92 784 1.9612962 + 93 784 2.28490567 + 94 784 2.35808277 + 95 784 2.38247681 + 96 784 2.40190005 + 97 784 2.39044261 + 98 784 2.36585093 + 99 784 2.36242223 + 100 784 2.35712957 + 101 784 2.35747147 + 102 784 2.36213398 + 103 784 2.35357308 + 104 784 2.34000516 + 105 784 2.31534648 + 106 784 2.29559445 + 107 784 2.27098274 + 108 784 2.26958656 + 109 784 2.26848507 + 23 783 -2.01815414 + 24 783 -2.02677536 + 25 783 -2.13798428 + 26 783 -2.27894735 + 27 783 -2.27849126 + 28 783 -2.30225301 + 29 783 -2.3401401 + 30 783 -2.34153128 + 31 783 -2.34379292 + 32 783 -2.32878423 + 33 783 -2.28792763 + 34 783 -2.26399159 + 35 783 -2.25100088 + 36 783 -2.23084188 + 37 783 -2.2039063 + 38 783 -2.17407227 + 39 783 -2.22583747 + 40 783 -2.25418401 + 41 783 -2.26630616 + 42 783 -2.24058867 + 43 783 -2.21861649 + 44 783 -2.18706536 + 45 783 -2.15536427 + 46 783 -2.11419415 + 47 783 -2.14356375 + 48 783 -2.16357231 + 49 783 -2.17228603 + 50 783 -2.16767383 + 51 783 -2.17724323 + 52 783 -2.17257714 + 53 783 -2.16258788 + 54 783 -2.12309027 + 55 783 -2.07251811 + 56 783 -2.00428224 + 57 783 -1.94045997 + 58 783 -1.89893162 + 59 783 -1.86860454 + 60 783 -1.83541894 + 61 783 -1.80838823 + 62 783 -1.77867186 + 63 783 -1.74041653 + 64 783 -1.6791141 + 65 783 -1.6761024 + 66 783 -1.69014776 + 67 783 -1.71842802 + 68 783 -1.67126513 + 69 783 -1.6315366 + 70 783 -1.58593357 + 71 783 -1.53541923 + 72 783 -1.47290313 + 73 783 -1.42213595 + 74 783 -1.35825312 + 75 783 -1.26551771 + 76 783 -1.15041792 + 77 783 -0.996947348 + 78 783 -0.825743914 + 79 783 -0.646795452 + 80 783 -0.456980228 + 81 783 -0.222905919 + 82 783 0.102952421 + 83 783 0.41858384 + 84 783 0.712164044 + 85 783 0.949696481 + 86 783 1.0027411 + 87 783 1.11825955 + 88 783 1.22102392 + 89 783 1.34642184 + 90 783 1.44183648 + 91 783 1.51738548 + 92 783 1.7498039 + 93 783 2.11962652 + 94 783 2.15852547 + 95 783 2.2757771 + 96 783 2.30524683 + 97 783 2.31527901 + 98 783 2.29875064 + 99 783 2.29012871 + 100 783 2.29180694 + 101 783 2.29029274 + 102 783 2.28520632 + 103 783 2.27383184 + 104 783 2.25877357 + 105 783 2.2391789 + 106 783 2.20411873 + 107 783 2.1869657 + 108 783 2.17594624 + 109 783 2.16068554 + 31 782 -2.35088181 + 32 782 -2.32435536 + 33 782 -2.27801037 + 34 782 -2.27975345 + 35 782 -2.30190825 + 36 782 -2.32566595 + 37 782 -2.27908254 + 38 782 -2.25753641 + 39 782 -2.27927995 + 40 782 -2.35131049 + 41 782 -2.30483723 + 42 782 -2.263695 + 43 782 -2.2275281 + 44 782 -2.19337654 + 45 782 -2.16571069 + 46 782 -2.12995386 + 47 782 -2.16970181 + 48 782 -2.19326401 + 49 782 -2.20328522 + 50 782 -2.20627546 + 51 782 -2.22198629 + 52 782 -2.22514415 + 53 782 -2.22279596 + 54 782 -2.19111419 + 55 782 -2.14068651 + 56 782 -2.06451082 + 57 782 -1.99204588 + 58 782 -1.93495357 + 59 782 -1.89111423 + 60 782 -1.85714602 + 61 782 -1.82881153 + 62 782 -1.79890382 + 63 782 -1.75888038 + 64 782 -1.70432615 + 65 782 -1.69704628 + 66 782 -1.70337856 + 67 782 -1.71591091 + 68 782 -1.67787671 + 69 782 -1.6357832 + 70 782 -1.59384036 + 71 782 -1.55218184 + 72 782 -1.49966943 + 73 782 -1.45550096 + 74 782 -1.38562763 + 75 782 -1.28564858 + 76 782 -1.16030335 + 77 782 -0.998609781 + 78 782 -0.820345342 + 79 782 -0.635105431 + 80 782 -0.431378663 + 81 782 -0.196523562 + 82 782 0.108823821 + 83 782 0.414206266 + 84 782 0.67077589 + 85 782 0.788637638 + 86 782 0.939923763 + 87 782 1.00498486 + 88 782 1.12767529 + 89 782 1.28038251 + 90 782 1.3869971 + 91 782 1.54913235 + 92 782 1.75147367 + 93 782 2.06894279 + 94 782 2.0593667 + 95 782 2.19320011 + 96 782 2.23181581 + 97 782 2.25050569 + 98 782 2.24296808 + 99 782 2.23951149 + 100 782 2.23220253 + 101 782 2.22713971 + 102 782 2.21481633 + 103 782 2.20381594 + 104 782 2.17869687 + 105 782 2.14632082 + 106 782 2.14764261 + 107 782 2.11985493 + 108 782 2.08111954 + 109 782 2.05572701 + 38 781 -2.30122399 + 39 781 -2.31856346 + 40 781 -2.32553792 + 41 781 -2.314533 + 42 781 -2.2840147 + 43 781 -2.25144124 + 44 781 -2.22219729 + 45 781 -2.19735146 + 46 781 -2.16529369 + 47 781 -2.21051931 + 48 781 -2.23710155 + 49 781 -2.24592638 + 50 781 -2.25072265 + 51 781 -2.27205849 + 52 781 -2.28656483 + 53 781 -2.29920506 + 54 781 -2.26989269 + 55 781 -2.21877384 + 56 781 -2.14765239 + 57 781 -2.06480026 + 58 781 -1.9843291 + 59 781 -1.92840481 + 60 781 -1.88291705 + 61 781 -1.84543407 + 62 781 -1.80979145 + 63 781 -1.76168656 + 64 781 -1.70628619 + 65 781 -1.707932 + 66 781 -1.70892549 + 67 781 -1.71237457 + 68 781 -1.67229664 + 69 781 -1.63987505 + 70 781 -1.59326613 + 71 781 -1.55568504 + 72 781 -1.50987017 + 73 781 -1.46220779 + 74 781 -1.39539063 + 75 781 -1.29986036 + 76 781 -1.16379762 + 77 781 -0.992211998 + 78 781 -0.808043957 + 79 781 -0.604676068 + 80 781 -0.387709349 + 81 781 -0.146701545 + 82 781 0.114130341 + 83 781 0.362835169 + 84 781 0.504262865 + 85 781 0.669007301 + 86 781 0.790802419 + 87 781 0.897485018 + 88 781 0.975178182 + 89 781 1.21813083 + 90 781 1.49182856 + 91 781 1.72062898 + 92 781 1.90142429 + 93 781 2.07854676 + 94 781 2.05612206 + 95 781 2.16251469 + 96 781 2.19145942 + 97 781 2.19124699 + 98 781 2.17833114 + 99 781 2.16482949 + 100 781 2.15852737 + 101 781 2.15105462 + 102 781 2.14081192 + 103 781 2.13055468 + 104 781 2.09994817 + 105 781 2.08820796 + 106 781 2.07366562 + 107 781 2.03469396 + 108 781 1.9890908 + 109 781 1.96277928 + 39 780 -2.33436298 + 40 780 -2.33430147 + 41 780 -2.32054377 + 42 780 -2.29498768 + 43 780 -2.26442432 + 44 780 -2.23666453 + 45 780 -2.22125435 + 46 780 -2.23043036 + 47 780 -2.25989556 + 48 780 -2.29382515 + 49 780 -2.31791496 + 50 780 -2.32569337 + 51 780 -2.33889604 + 52 780 -2.35375094 + 53 780 -2.37081838 + 54 780 -2.35212111 + 55 780 -2.31073737 + 56 780 -2.24352551 + 57 780 -2.14766216 + 58 780 -2.05540681 + 59 780 -1.98997164 + 60 780 -1.93147457 + 61 780 -1.8783052 + 62 780 -1.83944917 + 63 780 -1.78048539 + 64 780 -1.72469926 + 65 780 -1.66199601 + 66 780 -1.75675094 + 67 780 -1.71596456 + 68 780 -1.67614913 + 69 780 -1.63484323 + 70 780 -1.58580709 + 71 780 -1.55046141 + 72 780 -1.48819673 + 73 780 -1.4469744 + 74 780 -1.38096607 + 75 780 -1.28229189 + 76 780 -1.13655794 + 77 780 -0.971586108 + 78 780 -0.790181875 + 79 780 -0.570073187 + 80 780 -0.32925719 + 81 780 -0.0898785368 + 82 780 0.150616795 + 83 780 0.275719076 + 84 780 0.369177699 + 85 780 0.533106148 + 86 780 0.662469983 + 87 780 0.896959186 + 88 780 1.1600796 + 89 780 1.44372487 + 90 780 1.74374485 + 91 780 1.93155491 + 92 780 2.04960775 + 93 780 2.07734179 + 94 780 2.10571885 + 95 780 2.1388495 + 96 780 2.14520693 + 97 780 2.12188339 + 98 780 2.09420323 + 99 780 2.07526565 + 100 780 2.06221867 + 101 780 2.05603456 + 102 780 2.05460453 + 103 780 2.04893208 + 104 780 2.03516698 + 105 780 2.00250483 + 106 780 1.97711861 + 107 780 1.9492178 + 108 780 1.91877103 + 109 780 1.88393211 + 46 779 -2.25482774 + 47 779 -2.28813815 + 48 779 -2.38869047 + 49 779 -2.39767241 + 50 779 -2.4042275 + 51 779 -2.41722417 + 52 779 -2.40094137 + 53 779 -2.39881444 + 54 779 -2.395087 + 55 779 -2.37194347 + 56 779 -2.33039308 + 57 779 -2.24685144 + 58 779 -2.15570903 + 59 779 -2.07773137 + 60 779 -2.00647807 + 61 779 -1.93112695 + 62 779 -1.88050783 + 63 779 -1.81152439 + 64 779 -1.74551713 + 65 779 -1.67466545 + 66 779 -1.76084352 + 67 779 -1.71762037 + 68 779 -1.67502975 + 69 779 -1.62268186 + 70 779 -1.57273364 + 71 779 -1.53023171 + 72 779 -1.47637665 + 73 779 -1.41392696 + 74 779 -1.35643697 + 75 779 -1.25058579 + 76 779 -1.10093522 + 77 779 -0.942115307 + 78 779 -0.750929415 + 79 779 -0.515286624 + 80 779 -0.271668643 + 81 779 -0.0307417903 + 82 779 0.182381809 + 83 779 0.233955652 + 84 779 0.294637173 + 85 779 0.389105767 + 86 779 0.663983107 + 87 779 0.982203782 + 88 779 1.32239866 + 89 779 1.64717722 + 90 779 1.9224745 + 91 779 2.11211085 + 92 779 2.18120646 + 93 779 2.13607836 + 94 779 2.10915971 + 95 779 2.08627343 + 96 779 2.07911658 + 97 779 2.02487707 + 98 779 1.98380029 + 99 779 1.95631886 + 100 779 1.94138134 + 101 779 1.94407368 + 102 779 1.95340526 + 103 779 1.94907713 + 104 779 1.94280374 + 105 779 1.91579342 + 106 779 1.9205488 + 107 779 1.88015282 + 108 779 1.84069729 + 109 779 1.80923045 + 54 778 -2.42493415 + 55 778 -2.39336514 + 56 778 -2.36183739 + 57 778 -2.32030463 + 58 778 -2.26370311 + 59 778 -2.17238927 + 60 778 -2.08718061 + 61 778 -2.02409577 + 62 778 -1.93648148 + 63 778 -1.84283495 + 64 778 -1.76296294 + 65 778 -1.68391442 + 66 778 -1.75548363 + 67 778 -1.71709156 + 68 778 -1.668311 + 69 778 -1.61001885 + 70 778 -1.55892897 + 71 778 -1.50846529 + 72 778 -1.45034087 + 73 778 -1.39360178 + 74 778 -1.3300947 + 75 778 -1.22090518 + 76 778 -1.07478809 + 77 778 -0.917649329 + 78 778 -0.699365914 + 79 778 -0.435322016 + 80 778 -0.193161383 + 81 778 0.0330874845 + 82 778 0.206346527 + 83 778 0.244766206 + 84 778 0.29963401 + 85 778 0.354618609 + 86 778 0.713460386 + 87 778 1.11164749 + 88 778 1.5114671 + 89 778 1.86626792 + 90 778 2.12456894 + 91 778 2.29072046 + 92 778 2.28900409 + 93 778 2.17982173 + 94 778 2.09522462 + 95 778 2.05243158 + 96 778 1.95596826 + 97 778 1.88780522 + 98 778 1.84378803 + 99 778 1.80455911 + 100 778 1.79646242 + 101 778 1.81242919 + 102 778 1.83102202 + 103 778 1.83657956 + 104 778 1.84140182 + 105 778 1.84397995 + 106 778 1.81041551 + 107 778 1.7800703 + 108 778 1.75099361 + 109 778 1.7300967 + 61 777 -2.07910013 + 62 777 -2.00479984 + 63 777 -1.870749 + 64 777 -1.76896775 + 65 777 -1.7053144 + 66 777 -1.75837278 + 67 777 -1.69926369 + 68 777 -1.64433277 + 69 777 -1.58063579 + 70 777 -1.53157556 + 71 777 -1.48635602 + 72 777 -1.44069707 + 73 777 -1.3878417 + 74 777 -1.31459486 + 75 777 -1.20392382 + 76 777 -1.06567824 + 77 777 -0.854459643 + 78 777 -0.659156859 + 79 777 -0.370916069 + 80 777 -0.108170651 + 81 777 0.119592495 + 82 777 0.258637309 + 83 777 0.2779769 + 84 777 0.322108001 + 85 777 0.48692888 + 86 777 0.800417185 + 87 777 1.23753095 + 88 777 1.67845356 + 89 777 2.05164313 + 90 777 2.29870629 + 91 777 2.45315742 + 92 777 2.41201162 + 93 777 2.16936874 + 94 777 2.04478073 + 95 777 1.98214793 + 96 777 1.83720946 + 97 777 1.74710739 + 98 777 1.69982958 + 99 777 1.66908836 + 100 777 1.68098974 + 101 777 1.70555317 + 102 777 1.73006153 + 103 777 1.74016166 + 104 777 1.74062014 + 105 777 1.73521483 + 106 777 1.70330572 + 107 777 1.684273 + 108 777 1.66323829 + 109 777 1.66184771 + 70 776 -1.51354766 + 71 776 -1.47562599 + 72 776 -1.4249475 + 73 776 -1.34461987 + 74 776 -1.28618062 + 75 776 -1.1676625 + 76 776 -1.01663101 + 77 776 -0.827254176 + 78 776 -0.535457909 + 79 776 -0.31390056 + 80 776 -0.0747686103 + 81 776 0.200008392 + 82 776 0.341812968 + 83 776 0.376705766 + 84 776 0.420655012 + 85 776 0.479351282 + 86 776 0.838044107 + 87 776 1.30445242 + 88 776 1.77842665 + 89 776 2.16769385 + 90 776 2.51348281 + 91 776 2.45873833 + 92 776 2.29214597 + 93 776 2.11762381 + 94 776 1.92314255 + 95 776 1.83728862 + 96 776 1.70468414 + 97 776 1.62357235 + 98 776 1.58639669 + 99 776 1.56604517 + 100 776 1.58015013 + 101 776 1.62449718 + 102 776 1.66205513 + 103 776 1.6703018 + 104 776 1.67924905 + 105 776 1.67048049 + 106 776 1.64135396 + 107 776 1.6170758 + 108 776 1.59862471 + 109 776 1.58836746 + 78 775 -0.476499707 + 79 775 -0.278397501 + 80 775 -0.0500860959 + 81 775 0.171151459 + 82 775 0.415754616 + 83 775 0.437409639 + 84 775 0.447546363 + 85 775 0.436408013 + 86 775 0.829370558 + 87 775 1.27087331 + 88 775 1.70288002 + 89 775 2.10525584 + 90 775 2.46298838 + 91 775 2.43164444 + 92 775 2.24908423 + 93 775 2.04579687 + 94 775 1.80468559 + 95 775 1.71923435 + 96 775 1.60030329 + 97 775 1.53319609 + 98 775 1.51456416 + 99 775 1.51187968 + 100 775 1.5558933 + 101 775 1.60490835 + 102 775 1.6386162 + 103 775 1.65357614 + 104 775 1.65778422 + 105 775 1.63912547 + 106 775 1.60552061 + 107 775 1.56803346 + 108 775 1.54648364 + 109 775 1.52077317 + 86 774 0.730226457 + 87 774 1.22385681 + 88 774 1.68012083 + 89 774 2.08218908 + 90 774 2.44409323 + 91 774 2.40651035 + 92 774 2.22873855 + 93 774 2.01305032 + 94 774 1.73948586 + 95 774 1.57145333 + 96 774 1.48651934 + 97 774 1.42247808 + 98 774 1.43188822 + 99 774 1.47388935 + 100 774 1.54344606 + 101 774 1.59438944 + 102 774 1.62170231 + 103 774 1.63261187 + 104 774 1.63625145 + 105 774 1.61239421 + 106 774 1.58697188 + 107 774 1.54203057 + 108 774 1.51120341 + 109 774 1.47870576 + 97 773 1.42901659 + 98 773 1.37620556 + 99 773 1.4683708 + 100 773 1.54254127 + 101 773 1.6075865 + 102 773 1.59966373 + 103 773 1.60558856 + 104 773 1.61817253 + 105 773 1.59142315 + 106 773 1.5714978 + 107 773 1.53245187 + 108 773 1.50729954 + 109 773 1.46369708 + 105 772 1.59890115 + 106 772 1.5817107 + 107 772 1.54983032 + 108 772 1.49414814 + 109 772 1.44768357 + 106 746 4.54287815 + 107 746 4.48947334 + 108 746 4.44109058 + 109 746 4.39686632 + 95 745 5.06484556 + 96 745 5.08174706 + 97 745 5.05682135 + 98 745 5.05665922 + 99 745 5.07430267 + 100 745 5.11458397 + 101 745 5.13972473 + 102 745 5.11767578 + 103 745 5.02241898 + 104 745 4.83554649 + 105 745 4.74324465 + 106 745 4.6681118 + 107 745 4.60517168 + 108 745 4.56210136 + 109 745 4.51832247 + 82 744 3.7308991 + 83 744 3.84474421 + 84 744 3.96426463 + 85 744 4.08640146 + 86 744 4.20334101 + 87 744 4.32642031 + 88 744 4.43819475 + 89 744 4.56014919 + 90 744 4.67005157 + 91 744 4.77648258 + 92 744 4.90817881 + 93 744 5.00548172 + 94 744 5.08573246 + 95 744 5.10452223 + 96 744 5.09668636 + 97 744 5.08477926 + 98 744 5.09217405 + 99 744 5.12275791 + 100 744 5.17350101 + 101 744 5.21705437 + 102 744 5.14835739 + 103 744 5.05909967 + 104 744 4.94980478 + 105 744 4.86967516 + 106 744 4.79980183 + 107 744 4.72943211 + 108 744 4.67459059 + 109 744 4.6281352 + 69 743 1.74227548 + 70 743 1.90524876 + 71 743 1.98898387 + 72 743 2.02553415 + 73 743 2.11973429 + 74 743 2.21153474 + 75 743 2.37879729 + 76 743 2.53216434 + 77 743 2.74373937 + 78 743 2.94660926 + 79 743 3.14061713 + 80 743 3.32407427 + 81 743 3.52388906 + 82 743 3.72005033 + 83 743 3.8421433 + 84 743 3.97178674 + 85 743 4.10551357 + 86 743 4.22596121 + 87 743 4.34920406 + 88 743 4.46762848 + 89 743 4.59158897 + 90 743 4.70535135 + 91 743 4.81780863 + 92 743 4.92481947 + 93 743 5.0152483 + 94 743 5.09232044 + 95 743 5.10746288 + 96 743 5.10666895 + 97 743 5.10077143 + 98 743 5.11879396 + 99 743 5.16670322 + 100 743 5.23129654 + 101 743 5.28896236 + 102 743 5.20914984 + 103 743 5.13011646 + 104 743 5.05707216 + 105 743 4.98394537 + 106 743 4.91270208 + 107 743 4.83726835 + 108 743 4.77434921 + 109 743 4.72035408 + 57 742 -0.579016507 + 58 742 -0.581547737 + 59 742 -0.465997159 + 60 742 -0.255380929 + 61 742 0.0306923222 + 62 742 0.264508724 + 63 742 0.410443842 + 64 742 0.465434074 + 65 742 0.519085944 + 66 742 0.922867119 + 67 742 1.20316184 + 68 742 1.39117336 + 69 742 1.64669991 + 70 742 2.02790189 + 71 742 2.12158155 + 72 742 2.20398068 + 73 742 2.3101418 + 74 742 2.43578887 + 75 742 2.58904195 + 76 742 2.74473333 + 77 742 2.9267447 + 78 742 3.09658504 + 79 742 3.25086784 + 80 742 3.39996672 + 81 742 3.55943894 + 82 742 3.69945502 + 83 742 3.84375 + 84 742 3.97647357 + 85 742 4.11281157 + 86 742 4.24091196 + 87 742 4.37100172 + 88 742 4.49708128 + 89 742 4.62740898 + 90 742 4.75070286 + 91 742 4.86867571 + 92 742 4.96394253 + 93 742 5.04182053 + 94 742 5.09877348 + 95 742 5.11283302 + 96 742 5.11513853 + 97 742 5.11706161 + 98 742 5.14800406 + 99 742 5.21396446 + 100 742 5.29243231 + 101 742 5.3582468 + 102 742 5.26915932 + 103 742 5.19822454 + 104 742 5.14609385 + 105 742 5.07359171 + 106 742 5.00068569 + 107 742 4.91976976 + 108 742 4.84987116 + 109 742 4.78626108 + 46 741 -0.803193212 + 47 741 -0.767127097 + 48 741 -0.739719093 + 49 741 -0.705534816 + 50 741 -0.670609713 + 51 741 -0.629096329 + 52 741 -0.616066277 + 53 741 -0.608504772 + 54 741 -0.560564101 + 55 741 -0.533415675 + 56 741 -0.490771562 + 57 741 -0.440527201 + 58 741 -0.399256647 + 59 741 -0.28837505 + 60 741 -0.099573791 + 61 741 0.154327571 + 62 741 0.356924325 + 63 741 0.529402316 + 64 741 0.627850115 + 65 741 0.658207536 + 66 741 0.985850513 + 67 741 1.27590907 + 68 741 1.46780026 + 69 741 1.83020616 + 70 741 2.17221785 + 71 741 2.28552318 + 72 741 2.38259482 + 73 741 2.49625015 + 74 741 2.63728571 + 75 741 2.79885554 + 76 741 2.94833732 + 77 741 3.10183787 + 78 741 3.23701763 + 79 741 3.35886574 + 80 741 3.46771574 + 81 741 3.58717823 + 82 741 3.70577693 + 83 741 3.84130549 + 84 741 3.97757888 + 85 741 4.11921406 + 86 741 4.25575829 + 87 741 4.39674807 + 88 741 4.53356552 + 89 741 4.66855097 + 90 741 4.79806328 + 91 741 4.9190383 + 92 741 5.02536392 + 93 741 5.09826374 + 94 741 5.11533308 + 95 741 5.11252642 + 96 741 5.11597347 + 97 741 5.12753439 + 98 741 5.16350603 + 99 741 5.23262453 + 100 741 5.31819963 + 101 741 5.39549875 + 102 741 5.31681347 + 103 741 5.2512002 + 104 741 5.20113659 + 105 741 5.13162184 + 106 741 5.060534 + 107 741 4.9785428 + 108 741 4.90762091 + 109 741 4.84027576 + 27 740 -0.469966829 + 28 740 -0.496150434 + 29 740 -0.517351091 + 30 740 -0.518895507 + 31 740 -0.599323571 + 32 740 -0.666434228 + 33 740 -0.723929465 + 34 740 -0.767108858 + 35 740 -0.826573849 + 36 740 -0.823229849 + 37 740 -0.829961479 + 38 740 -0.886125088 + 39 740 -1.00637758 + 40 740 -0.97433579 + 41 740 -0.934223771 + 42 740 -0.933725476 + 43 740 -0.886762798 + 44 740 -0.838911474 + 45 740 -0.803500354 + 46 740 -0.77267617 + 47 740 -0.74310559 + 48 740 -0.713265002 + 49 740 -0.677545071 + 50 740 -0.629139066 + 51 740 -0.578738868 + 52 740 -0.539546013 + 53 740 -0.492376566 + 54 740 -0.467034996 + 55 740 -0.402640432 + 56 740 -0.372167289 + 57 740 -0.313872874 + 58 740 -0.239179015 + 59 740 -0.107358463 + 60 740 0.0580863655 + 61 740 0.291463882 + 62 740 0.47195214 + 63 740 0.647660673 + 64 740 0.737354994 + 65 740 0.759454966 + 66 740 1.13013113 + 67 740 1.44218564 + 68 740 1.68829834 + 69 740 2.04202819 + 70 740 2.37040567 + 71 740 2.44910669 + 72 740 2.55847406 + 73 740 2.68595004 + 74 740 2.83677816 + 75 740 3.00129533 + 76 740 3.15492272 + 77 740 3.27983832 + 78 740 3.37127638 + 79 740 3.44897127 + 80 740 3.5221386 + 81 740 3.60805082 + 82 740 3.71406889 + 83 740 3.84130883 + 84 740 3.97398281 + 85 740 4.12194443 + 86 740 4.26727724 + 87 740 4.42050314 + 88 740 4.56782627 + 89 740 4.70846844 + 90 740 4.83756542 + 91 740 4.96474409 + 92 740 5.07348585 + 93 740 5.12700701 + 94 740 5.14407635 + 95 740 5.13045025 + 96 740 5.13812494 + 97 740 5.14656258 + 98 740 5.18560457 + 99 740 5.25518322 + 100 740 5.33840656 + 101 740 5.41231394 + 102 740 5.35313654 + 103 740 5.29132032 + 104 740 5.2283144 + 105 740 5.16382933 + 106 740 5.09792566 + 107 740 5.01704788 + 108 740 4.95188665 + 109 740 4.88293648 + 16 739 -0.369087428 + 17 739 -0.378056675 + 18 739 -0.372855991 + 19 739 -0.369649947 + 20 739 -0.3638677 + 21 739 -0.358957559 + 22 739 -0.353254437 + 23 739 -0.349834979 + 24 739 -0.348867208 + 25 739 -0.370611846 + 26 739 -0.378052264 + 27 739 -0.414408714 + 28 739 -0.444954127 + 29 739 -0.478946328 + 30 739 -0.530404568 + 31 739 -0.604949296 + 32 739 -0.676186085 + 33 739 -0.729581773 + 34 739 -0.78275156 + 35 739 -0.774266839 + 36 739 -0.772230446 + 37 739 -0.805390537 + 38 739 -0.857169747 + 39 739 -0.925988913 + 40 739 -0.931511581 + 41 739 -0.893920541 + 42 739 -0.870574117 + 43 739 -0.841253281 + 44 739 -0.81435585 + 45 739 -0.780196905 + 46 739 -0.748487413 + 47 739 -0.708678126 + 48 739 -0.674962759 + 49 739 -0.639403462 + 50 739 -0.574021578 + 51 739 -0.509375811 + 52 739 -0.455108732 + 53 739 -0.397658259 + 54 739 -0.355725884 + 55 739 -0.303558648 + 56 739 -0.26248616 + 57 739 -0.177177802 + 58 739 -0.0720942989 + 59 739 0.0649008155 + 60 739 0.240842715 + 61 739 0.444624513 + 62 739 0.615586936 + 63 739 0.747422338 + 64 739 0.805152714 + 65 739 0.920306027 + 66 739 1.34214759 + 67 739 1.67315245 + 68 739 1.99035788 + 69 739 2.32437515 + 70 739 2.50761676 + 71 739 2.59934187 + 72 739 2.71354699 + 73 739 2.85324812 + 74 739 3.00520039 + 75 739 3.15858388 + 76 739 3.27768087 + 77 739 3.37761712 + 78 739 3.45180607 + 79 739 3.50888515 + 80 739 3.560642 + 81 739 3.62815809 + 82 739 3.72662234 + 83 739 3.84711981 + 84 739 3.97707677 + 85 739 4.12603807 + 86 739 4.28169441 + 87 739 4.44499493 + 88 739 4.60302067 + 89 739 4.75204563 + 90 739 4.87701368 + 91 739 4.99524355 + 92 739 5.10135031 + 93 739 5.15058899 + 94 739 5.18910027 + 95 739 5.19024086 + 96 739 5.18940783 + 97 739 5.19944477 + 98 739 5.23212147 + 99 739 5.28588247 + 100 739 5.36267424 + 101 739 5.43181801 + 102 739 5.39187002 + 103 739 5.32920742 + 104 739 5.25383615 + 105 739 5.19291496 + 106 739 5.12832928 + 107 739 5.049366 + 108 739 4.98391581 + 109 739 4.90615606 + 9 738 -0.168273076 + 10 738 -0.17454651 + 11 738 -0.174106568 + 12 738 -0.214476198 + 13 738 -0.239945441 + 14 738 -0.268168569 + 15 738 -0.321202695 + 16 738 -0.345222682 + 17 738 -0.3551265 + 18 738 -0.349452168 + 19 738 -0.346029341 + 20 738 -0.342023969 + 21 738 -0.334575742 + 22 738 -0.329088449 + 23 738 -0.320663154 + 24 738 -0.31398347 + 25 738 -0.316147029 + 26 738 -0.321025461 + 27 738 -0.354946822 + 28 738 -0.381578147 + 29 738 -0.416699737 + 30 738 -0.505320907 + 31 738 -0.600668907 + 32 738 -0.741764367 + 33 738 -0.743617356 + 34 738 -0.736424267 + 35 738 -0.724455655 + 36 738 -0.714886665 + 37 738 -0.754835308 + 38 738 -0.799883962 + 39 738 -0.843988419 + 40 738 -0.846850932 + 41 738 -0.824832141 + 42 738 -0.806597531 + 43 738 -0.786748171 + 44 738 -0.776881456 + 45 738 -0.743346095 + 46 738 -0.710049689 + 47 738 -0.667819202 + 48 738 -0.62800622 + 49 738 -0.58407557 + 50 738 -0.50383091 + 51 738 -0.42721957 + 52 738 -0.364219308 + 53 738 -0.292843312 + 54 738 -0.234248102 + 55 738 -0.1848775 + 56 738 -0.143124089 + 57 738 -0.0521817021 + 58 738 0.0784452483 + 59 738 0.24364984 + 60 738 0.422341794 + 61 738 0.608420908 + 62 738 0.780583382 + 63 738 0.931956887 + 64 738 1.08771038 + 65 738 1.30150676 + 66 738 1.59479761 + 67 738 1.92453742 + 68 738 2.2816515 + 69 738 2.56001711 + 70 738 2.64191937 + 71 738 2.74718952 + 72 738 2.86385822 + 73 738 2.98528647 + 74 738 3.1181879 + 75 738 3.25281334 + 76 738 3.3532052 + 77 738 3.43136811 + 78 738 3.49885154 + 79 738 3.54388571 + 80 738 3.5884707 + 81 738 3.64432716 + 82 738 3.73001719 + 83 738 3.8476615 + 84 738 3.98002315 + 85 738 4.13533688 + 86 738 4.29936695 + 87 738 4.464324 + 88 738 4.62428331 + 89 738 4.78027344 + 90 738 4.90258217 + 91 738 5.01426125 + 92 738 5.11725092 + 93 738 5.19665956 + 94 738 5.24091959 + 95 738 5.27237177 + 96 738 5.29166937 + 97 738 5.30594778 + 98 738 5.33434343 + 99 738 5.3819685 + 100 738 5.44377375 + 101 738 5.49348402 + 102 738 5.44320583 + 103 738 5.37612629 + 104 738 5.29150105 + 105 738 5.23098612 + 106 738 5.16611052 + 107 738 5.0920558 + 108 738 5.01671076 + 109 738 4.9295001 + 9 737 -0.176577762 + 10 737 -0.171025023 + 11 737 -0.179510862 + 12 737 -0.18700403 + 13 737 -0.22660169 + 14 737 -0.254883915 + 15 737 -0.303613365 + 16 737 -0.326693416 + 17 737 -0.332534254 + 18 737 -0.321994692 + 19 737 -0.320618719 + 20 737 -0.316523015 + 21 737 -0.310522527 + 22 737 -0.308085501 + 23 737 -0.302523047 + 24 737 -0.295610934 + 25 737 -0.286748618 + 26 737 -0.279953718 + 27 737 -0.300133884 + 28 737 -0.323817432 + 29 737 -0.358550817 + 30 737 -0.470387816 + 31 737 -0.57987535 + 32 737 -0.694483936 + 33 737 -0.694022775 + 34 737 -0.684039116 + 35 737 -0.669199765 + 36 737 -0.652103722 + 37 737 -0.695712626 + 38 737 -0.738300622 + 39 737 -0.774677098 + 40 737 -0.76685977 + 41 737 -0.74977845 + 42 737 -0.740113139 + 43 737 -0.728337288 + 44 737 -0.688651741 + 45 737 -0.686323345 + 46 737 -0.64720571 + 47 737 -0.599240363 + 48 737 -0.545927584 + 49 737 -0.487997174 + 50 737 -0.39847368 + 51 737 -0.313418031 + 52 737 -0.239041567 + 53 737 -0.169789121 + 54 737 -0.119419008 + 55 737 -0.080561094 + 56 737 -0.0281641241 + 57 737 0.0614691786 + 58 737 0.222084895 + 59 737 0.409773916 + 60 737 0.604675293 + 61 737 0.803355813 + 62 737 1.00344074 + 63 737 1.18505704 + 64 737 1.34359455 + 65 737 1.57623506 + 66 737 1.87214935 + 67 737 2.1512177 + 68 737 2.49369073 + 69 737 2.63565302 + 70 737 2.74820852 + 71 737 2.85510015 + 72 737 2.96776795 + 73 737 3.08672452 + 74 737 3.20304823 + 75 737 3.30045104 + 76 737 3.3832314 + 77 737 3.44524169 + 78 737 3.50454545 + 79 737 3.54439306 + 80 737 3.59082866 + 81 737 3.64834428 + 82 737 3.7337482 + 83 737 3.86373043 + 84 737 4.00404119 + 85 737 4.16694069 + 86 737 4.33247805 + 87 737 4.50119877 + 88 737 4.65790129 + 89 737 4.81246758 + 90 737 4.93885851 + 91 737 5.04954863 + 92 737 5.14794016 + 93 737 5.23714876 + 94 737 5.30801821 + 95 737 5.36248302 + 96 737 5.40367031 + 97 737 5.42125845 + 98 737 5.44558334 + 99 737 5.48947096 + 100 737 5.54306221 + 101 737 5.57491446 + 102 737 5.50902367 + 103 737 5.43549824 + 104 737 5.35116482 + 105 737 5.2903595 + 106 737 5.22143459 + 107 737 5.14721775 + 108 737 5.05971956 + 109 737 4.96106339 + 9 736 -0.181888312 + 10 736 -0.175720334 + 11 736 -0.182280883 + 12 736 -0.184681758 + 13 736 -0.213266239 + 14 736 -0.236109987 + 15 736 -0.278541595 + 16 736 -0.30395028 + 17 736 -0.292254984 + 18 736 -0.302053303 + 19 736 -0.295921475 + 20 736 -0.286121666 + 21 736 -0.28777498 + 22 736 -0.283413678 + 23 736 -0.284079671 + 24 736 -0.279147565 + 25 736 -0.272949815 + 26 736 -0.26535216 + 27 736 -0.277795017 + 28 736 -0.294212013 + 29 736 -0.323034734 + 30 736 -0.433852285 + 31 736 -0.542367816 + 32 736 -0.647418737 + 33 736 -0.63554424 + 34 736 -0.619758129 + 35 736 -0.604231775 + 36 736 -0.582819164 + 37 736 -0.63878113 + 38 736 -0.682544291 + 39 736 -0.714430809 + 40 736 -0.689807236 + 41 736 -0.668377101 + 42 736 -0.65888536 + 43 736 -0.651772857 + 44 736 -0.641019642 + 45 736 -0.605275512 + 46 736 -0.562182009 + 47 736 -0.512983501 + 48 736 -0.45020467 + 49 736 -0.380556703 + 50 736 -0.286595762 + 51 736 -0.193473697 + 52 736 -0.108971737 + 53 736 -0.0357568972 + 54 736 0.015879821 + 55 736 0.0462846085 + 56 736 0.115439877 + 57 736 0.216234803 + 58 736 0.384956539 + 59 736 0.575080574 + 60 736 0.774695694 + 61 736 0.975417852 + 62 736 1.21749258 + 63 736 1.46688056 + 64 736 1.73545814 + 65 736 1.99117911 + 66 736 2.10526133 + 67 736 2.33107734 + 68 736 2.60518837 + 69 736 2.72670388 + 70 736 2.83682561 + 71 736 2.93912745 + 72 736 3.04416299 + 73 736 3.16171813 + 74 736 3.26849985 + 75 736 3.34848022 + 76 736 3.41236138 + 77 736 3.46935058 + 78 736 3.51911569 + 79 736 3.56649995 + 80 736 3.60584331 + 81 736 3.65662217 + 82 736 3.74964285 + 83 736 3.8978703 + 84 736 4.05674362 + 85 736 4.23011112 + 86 736 4.39624596 + 87 736 4.56115198 + 88 736 4.70080233 + 89 736 4.84327507 + 90 736 4.96768045 + 91 736 5.079772 + 92 736 5.19251108 + 93 736 5.29591465 + 94 736 5.39752483 + 95 736 5.45205021 + 96 736 5.49519491 + 97 736 5.5246067 + 98 736 5.54782677 + 99 736 5.58987856 + 100 736 5.63119459 + 101 736 5.66310406 + 102 736 5.57944298 + 103 736 5.50308704 + 104 736 5.4271121 + 105 736 5.36521387 + 106 736 5.29109001 + 107 736 5.21093464 + 108 736 5.11404085 + 109 736 5.01067781 + 9 735 -0.183289185 + 10 735 -0.176091924 + 11 735 -0.179421991 + 12 735 -0.183903441 + 13 735 -0.205452755 + 14 735 -0.221795037 + 15 735 -0.245973751 + 16 735 -0.266586542 + 17 735 -0.286986411 + 18 735 -0.277885348 + 19 735 -0.265953243 + 20 735 -0.263740361 + 21 735 -0.256432742 + 22 735 -0.26169005 + 23 735 -0.265272081 + 24 735 -0.265912712 + 25 735 -0.265185654 + 26 735 -0.263866812 + 27 735 -0.271402955 + 28 735 -0.277397543 + 29 735 -0.293771088 + 30 735 -0.397363096 + 31 735 -0.502503872 + 32 735 -0.610086739 + 33 735 -0.592340171 + 34 735 -0.568256438 + 35 735 -0.551166832 + 36 735 -0.531369686 + 37 735 -0.590767145 + 38 735 -0.636017799 + 39 735 -0.671048462 + 40 735 -0.640193462 + 41 735 -0.61562562 + 42 735 -0.596569479 + 43 735 -0.579028904 + 44 735 -0.555561185 + 45 735 -0.509317458 + 46 735 -0.465254962 + 47 735 -0.41690731 + 48 735 -0.35424909 + 49 735 -0.283472717 + 50 735 -0.194186583 + 51 735 -0.089100644 + 52 735 0.0134852901 + 53 735 0.102550723 + 54 735 0.179157659 + 55 735 0.228329524 + 56 735 0.299823731 + 57 735 0.404135257 + 58 735 0.57408303 + 59 735 0.750590801 + 60 735 0.940011621 + 61 735 1.146703 + 62 735 1.40146327 + 63 735 1.66136646 + 64 735 1.92710412 + 65 735 2.16882181 + 66 735 2.28864217 + 67 735 2.45917487 + 68 735 2.66969895 + 69 735 2.7936182 + 70 735 2.89907622 + 71 735 2.99682665 + 72 735 3.09246063 + 73 735 3.20698047 + 74 735 3.30214238 + 75 735 3.38203812 + 76 735 3.43779492 + 77 735 3.49280953 + 78 735 3.53881001 + 79 735 3.58839154 + 80 735 3.62093592 + 81 735 3.6726222 + 82 735 3.79679775 + 83 735 3.96743751 + 84 735 4.13810444 + 85 735 4.32223749 + 86 735 4.49317884 + 87 735 4.64841604 + 88 735 4.77123547 + 89 735 4.89989281 + 90 735 5.01203537 + 91 735 5.1198082 + 92 735 5.24619389 + 93 735 5.3630085 + 94 735 5.47421455 + 95 735 5.53349733 + 96 735 5.58114719 + 97 735 5.61589289 + 98 735 5.63258362 + 99 735 5.67435122 + 100 735 5.70246935 + 101 735 5.73027992 + 102 735 5.64589739 + 103 735 5.5705719 + 104 735 5.50282335 + 105 735 5.44143534 + 106 735 5.36700678 + 107 735 5.27897072 + 108 735 5.18030167 + 109 735 5.06913948 + 9 734 -0.17552796 + 10 734 -0.166196406 + 11 734 -0.163607061 + 12 734 -0.168079227 + 13 734 -0.176946893 + 14 734 -0.189874634 + 15 734 -0.204943478 + 16 734 -0.225378543 + 17 734 -0.245744258 + 18 734 -0.253811657 + 19 734 -0.23906751 + 20 734 -0.244901001 + 21 734 -0.244714484 + 22 734 -0.24199377 + 23 734 -0.242051885 + 24 734 -0.248099238 + 25 734 -0.248635858 + 26 734 -0.250932246 + 27 734 -0.256589979 + 28 734 -0.2577672 + 29 734 -0.264355093 + 30 734 -0.357018083 + 31 734 -0.458998859 + 32 734 -0.569915354 + 33 734 -0.557860672 + 34 734 -0.536105037 + 35 734 -0.522823036 + 36 734 -0.501746416 + 37 734 -0.553645551 + 38 734 -0.598946691 + 39 734 -0.637708127 + 40 734 -0.60457921 + 41 734 -0.576134384 + 42 734 -0.550912261 + 43 734 -0.516474247 + 44 734 -0.478213459 + 45 734 -0.427380949 + 46 734 -0.381367743 + 47 734 -0.326871157 + 48 734 -0.259481013 + 49 734 -0.188391656 + 50 734 -0.0988945886 + 51 734 0.0180570669 + 52 734 0.136726499 + 53 734 0.24834466 + 54 734 0.34490186 + 55 734 0.425398916 + 56 734 0.514561534 + 57 734 0.645988286 + 58 734 0.802235723 + 59 734 0.949433982 + 60 734 1.11009705 + 61 734 1.30852187 + 62 734 1.54563594 + 63 734 1.79914296 + 64 734 2.06096339 + 65 734 2.28393888 + 66 734 2.4105525 + 67 734 2.55523562 + 68 734 2.70384765 + 69 734 2.84187174 + 70 734 2.94925714 + 71 734 3.04076552 + 72 734 3.13096094 + 73 734 3.24469757 + 74 734 3.32604456 + 75 734 3.38110113 + 76 734 3.45698738 + 77 734 3.51319337 + 78 734 3.55584908 + 79 734 3.61245418 + 80 734 3.66252589 + 81 734 3.73957992 + 82 734 3.8842485 + 83 734 4.05145788 + 84 734 4.22972059 + 85 734 4.43432617 + 86 734 4.61213398 + 87 734 4.74516582 + 88 734 4.84846401 + 89 734 4.96288681 + 90 734 5.06468964 + 91 734 5.17263651 + 92 734 5.31061983 + 93 734 5.43436527 + 94 734 5.55180407 + 95 734 5.62229729 + 96 734 5.67792034 + 97 734 5.71249485 + 98 734 5.72510004 + 99 734 5.74888039 + 100 734 5.76045942 + 101 734 5.78033924 + 102 734 5.70563316 + 103 734 5.63165808 + 104 734 5.56586027 + 105 734 5.50744247 + 106 734 5.40672731 + 107 734 5.33910751 + 108 734 5.23982811 + 109 734 5.12630939 + 9 733 -0.156285763 + 10 733 -0.143394649 + 11 733 -0.13636291 + 12 733 -0.145151496 + 13 733 -0.146793574 + 14 733 -0.15418078 + 15 733 -0.163311645 + 16 733 -0.19123596 + 17 733 -0.207803339 + 18 733 -0.219391719 + 19 733 -0.215686649 + 20 733 -0.229360968 + 21 733 -0.231311649 + 22 733 -0.227565557 + 23 733 -0.224029914 + 24 733 -0.229796991 + 25 733 -0.227882937 + 26 733 -0.228366822 + 27 733 -0.227187619 + 28 733 -0.223820433 + 29 733 -0.222355589 + 30 733 -0.306940049 + 31 733 -0.406912297 + 32 733 -0.518300176 + 33 733 -0.519349992 + 34 733 -0.508436143 + 35 733 -0.504016459 + 36 733 -0.482327282 + 37 733 -0.522075951 + 38 733 -0.565499008 + 39 733 -0.614392698 + 40 733 -0.582579732 + 41 733 -0.554148078 + 42 733 -0.525325835 + 43 733 -0.478075296 + 44 733 -0.428601176 + 45 733 -0.366768628 + 46 733 -0.308396071 + 47 733 -0.240919977 + 48 733 -0.161198795 + 49 733 -0.0783853158 + 50 733 0.0149013065 + 51 733 0.127153262 + 52 733 0.268545359 + 53 733 0.39511767 + 54 733 0.505491197 + 55 733 0.599132836 + 56 733 0.705840349 + 57 733 0.848637104 + 58 733 0.999172747 + 59 733 1.1542381 + 60 733 1.32079923 + 61 733 1.50775564 + 62 733 1.71077275 + 63 733 1.95596397 + 64 733 2.19587493 + 65 733 2.38121438 + 66 733 2.51348972 + 67 733 2.631145 + 68 733 2.76236534 + 69 733 2.89437556 + 70 733 2.99045825 + 71 733 3.0790391 + 72 733 3.15788174 + 73 733 3.25532198 + 74 733 3.3284936 + 75 733 3.39634085 + 76 733 3.46510458 + 77 733 3.52271914 + 78 733 3.56571531 + 79 733 3.63645887 + 80 733 3.71093392 + 81 733 3.83059287 + 82 733 3.9906733 + 83 733 4.17497015 + 84 733 4.36939573 + 85 733 4.5519228 + 86 733 4.70675564 + 87 733 4.82924795 + 88 733 4.92954111 + 89 733 5.03735161 + 90 733 5.14235926 + 91 733 5.25646162 + 92 733 5.37053394 + 93 733 5.52100563 + 94 733 5.63630819 + 95 733 5.73279428 + 96 733 5.78899288 + 97 733 5.82017708 + 98 733 5.82639694 + 99 733 5.82814026 + 100 733 5.8243413 + 101 733 5.82694578 + 102 733 5.76608419 + 103 733 5.69045353 + 104 733 5.60310555 + 105 733 5.54202223 + 106 733 5.46907711 + 107 733 5.38201666 + 108 733 5.28454685 + 109 733 5.18014574 + 9 732 -0.123948857 + 10 732 -0.10711927 + 11 732 -0.0983287394 + 12 732 -0.106178351 + 13 732 -0.106069468 + 14 732 -0.110748179 + 15 732 -0.116740361 + 16 732 -0.150708124 + 17 732 -0.172367796 + 18 732 -0.187758908 + 19 732 -0.194161251 + 20 732 -0.211965948 + 21 732 -0.211055294 + 22 732 -0.204363897 + 23 732 -0.199194461 + 24 732 -0.195895627 + 25 732 -0.185312137 + 26 732 -0.17873694 + 27 732 -0.175713494 + 28 732 -0.173754513 + 29 732 -0.168493286 + 30 732 -0.236478955 + 31 732 -0.338212997 + 32 732 -0.466731071 + 33 732 -0.477246225 + 34 732 -0.471994251 + 35 732 -0.478655636 + 36 732 -0.457678109 + 37 732 -0.487605065 + 38 732 -0.528301477 + 39 732 -0.58045423 + 40 732 -0.543822408 + 41 732 -0.513688624 + 42 732 -0.48208946 + 43 732 -0.428255469 + 44 732 -0.373415589 + 45 732 -0.304615796 + 46 732 -0.239895567 + 47 732 -0.160439521 + 48 732 -0.0643667579 + 49 732 0.0384183973 + 50 732 0.147396907 + 51 732 0.260503858 + 52 732 0.401108384 + 53 732 0.541965306 + 54 732 0.634668469 + 55 732 0.755731344 + 56 732 0.848433495 + 57 732 0.981792867 + 58 732 1.14200962 + 59 732 1.31263518 + 60 732 1.50488305 + 61 732 1.71525168 + 62 732 1.92144299 + 63 732 2.12639451 + 64 732 2.3279047 + 65 732 2.46633005 + 66 732 2.58081436 + 67 732 2.69957805 + 68 732 2.8214128 + 69 732 2.95007992 + 70 732 3.03164935 + 71 732 3.11999822 + 72 732 3.18805766 + 73 732 3.26178598 + 74 732 3.3343873 + 75 732 3.42105079 + 76 732 3.48117876 + 77 732 3.55051374 + 78 732 3.60604644 + 79 732 3.69460225 + 80 732 3.79319811 + 81 732 3.94374061 + 82 732 4.11356688 + 83 732 4.30154324 + 84 732 4.49416971 + 85 732 4.66089058 + 86 732 4.7982893 + 87 732 4.92280483 + 88 732 5.03405476 + 89 732 5.13959599 + 90 732 5.25174046 + 91 732 5.37682724 + 92 732 5.49543667 + 93 732 5.62406635 + 94 732 5.74294233 + 95 732 5.85936451 + 96 732 5.91026306 + 97 732 5.920228 + 98 732 5.92195272 + 99 732 5.91607285 + 100 732 5.90548897 + 101 732 5.8830328 + 102 732 5.86749935 + 103 732 5.74090815 + 104 732 5.64036226 + 105 732 5.55187035 + 106 732 5.48049688 + 107 732 5.40208864 + 108 732 5.31664467 + 109 732 5.22570419 + 9 731 -0.0759293288 + 10 731 -0.0497515947 + 11 731 -0.0419986509 + 12 731 -0.0514654629 + 13 731 -0.0568712242 + 14 731 -0.0633018911 + 15 731 -0.0750704408 + 16 731 -0.10680189 + 17 731 -0.130154416 + 18 731 -0.151430294 + 19 731 -0.163545534 + 20 731 -0.178489387 + 21 731 -0.173074827 + 22 731 -0.163718879 + 23 731 -0.15579699 + 24 731 -0.138632938 + 25 731 -0.116101205 + 26 731 -0.097550422 + 27 731 -0.0853995457 + 28 731 -0.075463511 + 29 731 -0.0714576468 + 30 731 -0.136962712 + 31 731 -0.238364309 + 32 731 -0.392874151 + 33 731 -0.41870448 + 34 731 -0.424578965 + 35 731 -0.438119739 + 36 731 -0.421310425 + 37 731 -0.442856222 + 38 731 -0.47944054 + 39 731 -0.532732069 + 40 731 -0.491505474 + 41 731 -0.456326753 + 42 731 -0.413776457 + 43 731 -0.357961476 + 44 731 -0.298318416 + 45 731 -0.23006402 + 46 731 -0.162888244 + 47 731 -0.0744473264 + 48 731 0.041919373 + 49 731 0.175851494 + 50 731 0.291652352 + 51 731 0.403896481 + 52 731 0.540716767 + 53 731 0.676912606 + 54 731 0.800821185 + 55 731 0.905445695 + 56 731 0.978961766 + 57 731 1.09975719 + 58 731 1.28407359 + 59 731 1.46938157 + 60 731 1.6963836 + 61 731 1.92950702 + 62 731 2.14061713 + 63 731 2.32913661 + 64 731 2.4630127 + 65 731 2.56154013 + 66 731 2.64975739 + 67 731 2.76058984 + 68 731 2.87585354 + 69 731 2.99611545 + 70 731 3.06967878 + 71 731 3.14245582 + 72 731 3.2047267 + 73 731 3.29308534 + 74 731 3.35032678 + 75 731 3.44295359 + 76 731 3.52215624 + 77 731 3.60188079 + 78 731 3.67682695 + 79 731 3.77658296 + 80 731 3.88787818 + 81 731 4.05085564 + 82 731 4.22568226 + 83 731 4.4107666 + 84 731 4.57637024 + 85 731 4.73517227 + 86 731 4.867167 + 87 731 5.00089645 + 88 731 5.13267136 + 89 731 5.25523233 + 90 731 5.38457823 + 91 731 5.51957321 + 92 731 5.64563036 + 93 731 5.73171711 + 94 731 5.84582615 + 95 731 5.98932552 + 96 731 6.02641344 + 97 731 6.02063799 + 98 731 6.01460886 + 99 731 6.00249863 + 100 731 5.98134995 + 101 731 5.94027567 + 102 731 5.91794586 + 103 731 5.77947855 + 104 731 5.6600914 + 105 731 5.55311632 + 106 731 5.4890275 + 107 731 5.42075205 + 108 731 5.35426855 + 109 731 5.28071785 + 10 730 0.0324857272 + 11 730 0.0430701971 + 12 730 0.0382850431 + 13 730 0.0318890475 + 14 730 0.0225076973 + 15 730 0.00369422091 + 16 730 -0.0239512865 + 17 730 -0.0519991517 + 18 730 -0.0844742507 + 19 730 -0.112100713 + 20 730 -0.128963009 + 21 730 -0.12259388 + 22 730 -0.108622201 + 23 730 -0.0919610709 + 24 730 -0.0652618483 + 25 730 -0.0335757993 + 26 730 -0.000859978027 + 27 730 0.0255042799 + 28 730 0.0455911942 + 29 730 0.0536629707 + 30 730 0.0342269354 + 31 730 -0.129327014 + 32 730 -0.239248902 + 33 730 -0.335333139 + 34 730 -0.362799436 + 35 730 -0.377544075 + 36 730 -0.36765638 + 37 730 -0.383283287 + 38 730 -0.415891796 + 39 730 -0.46271348 + 40 730 -0.419367284 + 41 730 -0.384184152 + 42 730 -0.330868214 + 43 730 -0.276061088 + 44 730 -0.210455135 + 45 730 -0.139177307 + 46 730 -0.0602705702 + 47 730 0.0273690801 + 48 730 0.150374934 + 49 730 0.295281261 + 50 730 0.440160632 + 51 730 0.567240715 + 52 730 0.703927219 + 53 730 0.819282115 + 54 730 0.925680041 + 55 730 1.03813028 + 56 730 1.13302135 + 57 730 1.26772106 + 58 730 1.43838406 + 59 730 1.67735088 + 60 730 1.87420201 + 61 730 2.0996592 + 62 730 2.29203129 + 63 730 2.45363379 + 64 730 2.56290913 + 65 730 2.64055705 + 66 730 2.71712399 + 67 730 2.81579876 + 68 730 2.92326427 + 69 730 3.03887057 + 70 730 3.101969 + 71 730 3.15849185 + 72 730 3.22018814 + 73 730 3.29367018 + 74 730 3.38505363 + 75 730 3.48860002 + 76 730 3.58719039 + 77 730 3.67591739 + 78 730 3.77351546 + 79 730 3.88120198 + 80 730 4.00208759 + 81 730 4.15063858 + 82 730 4.32034683 + 83 730 4.4969449 + 84 730 4.65473318 + 85 730 4.79836988 + 86 730 4.92259264 + 87 730 5.05796289 + 88 730 5.19520617 + 89 730 5.34345722 + 90 730 5.4871397 + 91 730 5.62582207 + 92 730 5.7549181 + 93 730 5.8160758 + 94 730 5.92452002 + 95 730 6.07426882 + 96 730 6.0897994 + 97 730 6.08153868 + 98 730 6.06916761 + 99 730 6.05340958 + 100 730 6.02257872 + 101 730 5.98934031 + 102 730 5.94351721 + 103 730 5.7954092 + 104 730 5.66811657 + 105 730 5.54949331 + 106 730 5.49019337 + 107 730 5.43654108 + 108 730 5.38950205 + 109 730 5.33368158 + 10 729 0.154584348 + 11 729 0.17153357 + 12 729 0.181513548 + 13 729 0.184035033 + 14 729 0.174540892 + 15 729 0.152698115 + 16 729 0.120589748 + 17 729 0.0787840635 + 18 729 0.0348568186 + 19 729 -0.00719054416 + 20 729 -0.0409044102 + 21 729 -0.0493140779 + 22 729 -0.0397335142 + 23 729 -0.0227457192 + 24 729 0.0108348457 + 25 729 0.0522240065 + 26 729 0.0945628732 + 27 729 0.131293371 + 28 729 0.161538452 + 29 729 0.113412485 + 30 729 0.0889500827 + 31 729 -0.0148428977 + 32 729 -0.13498041 + 33 729 -0.249250591 + 34 729 -0.283525765 + 35 729 -0.296750605 + 36 729 -0.292935669 + 37 729 -0.306513727 + 38 729 -0.337932676 + 39 729 -0.379929274 + 40 729 -0.345854551 + 41 729 -0.316299856 + 42 729 -0.262314528 + 43 729 -0.196839899 + 44 729 -0.125291079 + 45 729 -0.0541470349 + 46 729 0.0340219103 + 47 729 0.123143978 + 48 729 0.244540468 + 49 729 0.398942381 + 50 729 0.555026352 + 51 729 0.683723629 + 52 729 0.815137088 + 53 729 0.938555062 + 54 729 1.04542375 + 55 729 1.15537345 + 56 729 1.27287245 + 57 729 1.4406985 + 58 729 1.62449586 + 59 729 1.82326257 + 60 729 2.07583094 + 61 729 2.28070951 + 62 729 2.44711328 + 63 729 2.59139204 + 64 729 2.66897321 + 65 729 2.71619296 + 66 729 2.76945901 + 67 729 2.8659308 + 68 729 2.96311235 + 69 729 3.06853914 + 70 729 3.10811186 + 71 729 3.161762 + 72 729 3.23098421 + 73 729 3.32062531 + 74 729 3.42781258 + 75 729 3.53820753 + 76 729 3.65602732 + 77 729 3.76112843 + 78 729 3.87058783 + 79 729 3.97619057 + 80 729 4.09602165 + 81 729 4.23248911 + 82 729 4.39298868 + 83 729 4.55482769 + 84 729 4.71182442 + 85 729 4.84406853 + 86 729 4.96009874 + 87 729 5.09838581 + 88 729 5.23878813 + 89 729 5.39517069 + 90 729 5.53697348 + 91 729 5.66491795 + 92 729 5.78352547 + 93 729 5.86709881 + 94 729 5.97025967 + 95 729 6.09647131 + 96 729 6.10638237 + 97 729 6.09381485 + 98 729 6.0725317 + 99 729 6.04819393 + 100 729 6.01859045 + 101 729 5.98498392 + 102 729 5.93194389 + 103 729 5.79489708 + 104 729 5.66568136 + 105 729 5.54517078 + 106 729 5.4911623 + 107 729 5.44744539 + 108 729 5.41282988 + 109 729 5.37383223 + 10 728 0.309549212 + 11 728 0.336030185 + 12 728 0.353254288 + 13 728 0.360833406 + 14 728 0.356583893 + 15 728 0.333412498 + 16 728 0.293396384 + 17 728 0.238580957 + 18 728 0.181326047 + 19 728 0.124534078 + 20 728 0.0782200992 + 21 728 0.0526429527 + 22 728 0.0445697084 + 23 728 0.0543690249 + 24 728 0.0850599408 + 25 728 0.128282622 + 26 728 0.171212286 + 27 728 0.210658118 + 28 728 0.238525793 + 29 728 0.249958888 + 30 728 0.217680573 + 31 728 0.0792406872 + 32 728 -0.0352127701 + 33 728 -0.155792579 + 34 728 -0.181503996 + 35 728 -0.1933541 + 36 728 -0.194776461 + 37 728 -0.211747527 + 38 728 -0.246405438 + 39 728 -0.295492738 + 40 728 -0.271430224 + 41 728 -0.252334058 + 42 728 -0.20845075 + 43 728 -0.136763245 + 44 728 -0.0590586551 + 45 728 0.0206459351 + 46 728 0.116518006 + 47 728 0.209053159 + 48 728 0.330078125 + 49 728 0.47495997 + 50 728 0.637598157 + 51 728 0.765051126 + 52 728 0.898632228 + 53 728 1.03559017 + 54 728 1.16047645 + 55 728 1.28760242 + 56 728 1.43298614 + 57 728 1.61139822 + 58 728 1.80998373 + 59 728 2.03474212 + 60 728 2.25088906 + 61 728 2.44071531 + 62 728 2.60015726 + 63 728 2.74126458 + 64 728 2.77128363 + 65 728 2.79418159 + 66 728 2.83282804 + 67 728 2.91068506 + 68 728 2.99360275 + 69 728 3.08663106 + 70 728 3.12257314 + 71 728 3.18737936 + 72 728 3.27056074 + 73 728 3.37744021 + 74 728 3.5082109 + 75 728 3.63111663 + 76 728 3.75586176 + 77 728 3.86619759 + 78 728 3.9791379 + 79 728 4.07984209 + 80 728 4.19849968 + 81 728 4.32492733 + 82 728 4.46831942 + 83 728 4.61772346 + 84 728 4.77272749 + 85 728 4.91018629 + 86 728 5.01329803 + 87 728 5.14469814 + 88 728 5.28328896 + 89 728 5.44090605 + 90 728 5.56560135 + 91 728 5.68426657 + 92 728 5.80628538 + 93 728 5.8897419 + 94 728 5.98616934 + 95 728 6.10243702 + 96 728 6.10391951 + 97 728 6.08454561 + 98 728 6.05578756 + 99 728 6.02671814 + 100 728 5.99605989 + 101 728 5.9628315 + 102 728 5.91709995 + 103 728 5.7812686 + 104 728 5.65512896 + 105 728 5.53495884 + 106 728 5.48873138 + 107 728 5.45512772 + 108 728 5.43151283 + 109 728 5.40453911 + 10 727 0.530376852 + 11 727 0.524300635 + 12 727 0.530472994 + 13 727 0.533468127 + 14 727 0.527790904 + 15 727 0.505342126 + 16 727 0.466153234 + 17 727 0.40406093 + 18 727 0.326889068 + 19 727 0.256352454 + 20 727 0.194311395 + 21 727 0.161570191 + 22 727 0.136840239 + 23 727 0.132199615 + 24 727 0.154784545 + 25 727 0.189559937 + 26 727 0.229072168 + 27 727 0.269669354 + 28 727 0.294499904 + 29 727 0.297635168 + 30 727 0.269415915 + 31 727 0.174754158 + 32 727 0.0682205483 + 33 727 -0.0489864051 + 34 727 -0.0677210391 + 35 727 -0.0747825652 + 36 727 -0.0691158175 + 37 727 -0.102380343 + 38 727 -0.142877206 + 39 727 -0.193323791 + 40 727 -0.190725163 + 41 727 -0.192521051 + 42 727 -0.167643622 + 43 727 -0.101123109 + 44 727 -0.0159678347 + 45 727 0.0737577528 + 46 727 0.178489193 + 47 727 0.287004322 + 48 727 0.416186035 + 49 727 0.557883799 + 50 727 0.708765149 + 51 727 0.832201064 + 52 727 0.973679543 + 53 727 1.11680162 + 54 727 1.25266302 + 55 727 1.40380847 + 56 727 1.56768143 + 57 727 1.76197863 + 58 727 1.97227716 + 59 727 2.20527434 + 60 727 2.40563583 + 61 727 2.58365178 + 62 727 2.73303461 + 63 727 2.84133339 + 64 727 2.80049515 + 65 727 2.87212586 + 66 727 2.90820456 + 67 727 2.94252491 + 68 727 3.00810099 + 69 727 3.10157609 + 70 727 3.13628817 + 71 727 3.21688032 + 72 727 3.32463098 + 73 727 3.44937491 + 74 727 3.59661174 + 75 727 3.72879434 + 76 727 3.84433627 + 77 727 3.96473718 + 78 727 4.07831049 + 79 727 4.18006706 + 80 727 4.30180168 + 81 727 4.42287588 + 82 727 4.55052948 + 83 727 4.69673538 + 84 727 4.84211159 + 85 727 4.97487211 + 86 727 5.07769156 + 87 727 5.19365978 + 88 727 5.32249022 + 89 727 5.4675293 + 90 727 5.6063714 + 91 727 5.70444727 + 92 727 5.82371378 + 93 727 5.89305592 + 94 727 5.98286104 + 95 727 6.08245945 + 96 727 6.0782876 + 97 727 6.06024837 + 98 727 6.02285814 + 99 727 5.98752403 + 100 727 5.95631027 + 101 727 5.92615461 + 102 727 5.88856697 + 103 727 5.7576766 + 104 727 5.63882351 + 105 727 5.52223063 + 106 727 5.49058962 + 107 727 5.46468067 + 108 727 5.44517279 + 109 727 5.42407036 + 10 726 0.817560971 + 11 726 0.75503999 + 12 726 0.727672815 + 13 726 0.704819739 + 14 726 0.677927613 + 15 726 0.653178096 + 16 726 0.614780128 + 17 726 0.549811423 + 18 726 0.470073164 + 19 726 0.39456144 + 20 726 0.330363691 + 21 726 0.287397355 + 22 726 0.252901286 + 23 726 0.237401709 + 24 726 0.244958401 + 25 726 0.268909097 + 26 726 0.296192288 + 27 726 0.333275288 + 28 726 0.35651651 + 29 726 0.357024312 + 30 726 0.34235099 + 31 726 0.274469614 + 32 726 0.18216151 + 33 726 0.0754281133 + 34 726 0.0559286363 + 35 726 0.0529920943 + 36 726 0.0627015829 + 37 726 0.01454644 + 38 726 -0.0307656676 + 39 726 -0.076842837 + 40 726 -0.0944673494 + 41 726 -0.117387265 + 42 726 -0.107619204 + 43 726 -0.0452656858 + 44 726 0.044817809 + 45 726 0.151684999 + 46 726 0.266461849 + 47 726 0.388749033 + 48 726 0.520351052 + 49 726 0.654834449 + 50 726 0.796230853 + 51 726 0.934467673 + 52 726 1.07962775 + 53 726 1.22273529 + 54 726 1.36064243 + 55 726 1.53010964 + 56 726 1.71095288 + 57 726 1.90259099 + 58 726 2.10799861 + 59 726 2.32207465 + 60 726 2.50660801 + 61 726 2.66155457 + 62 726 2.77154303 + 63 726 2.84783387 + 64 726 2.89019871 + 65 726 2.88449454 + 66 726 2.91995311 + 67 726 2.95482111 + 68 726 3.0104723 + 69 726 3.0629611 + 70 726 3.1202445 + 71 726 3.22949958 + 72 726 3.36895418 + 73 726 3.52203131 + 74 726 3.67563272 + 75 726 3.81778002 + 76 726 3.94596481 + 77 726 4.06224775 + 78 726 4.1767621 + 79 726 4.279737 + 80 726 4.41140318 + 81 726 4.52119446 + 82 726 4.64701271 + 83 726 4.77917576 + 84 726 4.9100585 + 85 726 5.03169441 + 86 726 5.13360548 + 87 726 5.23115396 + 88 726 5.34113121 + 89 726 5.46665907 + 90 726 5.59312391 + 91 726 5.70601845 + 92 726 5.80884552 + 93 726 5.87916231 + 94 726 5.96329165 + 95 726 6.06219101 + 96 726 6.05391645 + 97 726 6.0282712 + 98 726 5.98386669 + 99 726 5.9434967 + 100 726 5.9051218 + 101 726 5.8720355 + 102 726 5.83589602 + 103 726 5.7258091 + 104 726 5.61913586 + 105 726 5.51470518 + 106 726 5.49690342 + 107 726 5.48054218 + 108 726 5.46040821 + 109 726 5.44117689 + 10 725 1.12871289 + 11 725 1.03249753 + 12 725 0.981420398 + 13 725 0.932765126 + 14 725 0.874848545 + 15 725 0.821830988 + 16 725 0.771048307 + 17 725 0.70936811 + 18 725 0.633882225 + 19 725 0.564757705 + 20 725 0.498149276 + 21 725 0.453834385 + 22 725 0.417032123 + 23 725 0.40106681 + 24 725 0.392130762 + 25 725 0.391568273 + 26 725 0.402714759 + 27 725 0.431279689 + 28 725 0.454871476 + 29 725 0.461905658 + 30 725 0.458947182 + 31 725 0.392416775 + 32 725 0.308088601 + 33 725 0.213502854 + 34 725 0.190285325 + 35 725 0.181969166 + 36 725 0.181038499 + 37 725 0.133555427 + 38 725 0.0845621675 + 39 725 0.0369848013 + 40 725 0.0103973998 + 41 725 -0.0202949829 + 42 725 -0.0179595333 + 43 725 0.043656677 + 44 725 0.135498479 + 45 725 0.258593202 + 46 725 0.389610827 + 47 725 0.522133291 + 48 725 0.647059083 + 49 725 0.768827498 + 50 725 0.899204969 + 51 725 1.05009317 + 52 725 1.19019079 + 53 725 1.34047985 + 54 725 1.48260224 + 55 725 1.66309595 + 56 725 1.84019423 + 57 725 2.02048326 + 58 725 2.21486282 + 59 725 2.39939165 + 60 725 2.56238818 + 61 725 2.69582462 + 62 725 2.78021526 + 63 725 2.84009624 + 64 725 2.87889266 + 65 725 2.88097501 + 66 725 2.89473772 + 67 725 2.94702625 + 68 725 3.00663185 + 69 725 3.05921888 + 70 725 3.13748932 + 71 725 3.25548577 + 72 725 3.41261482 + 73 725 3.59100199 + 74 725 3.76544213 + 75 725 3.91195035 + 76 725 4.03562689 + 77 725 4.1549139 + 78 725 4.2710557 + 79 725 4.39089489 + 80 725 4.5130682 + 81 725 4.6375556 + 82 725 4.76108503 + 83 725 4.87987804 + 84 725 4.99067402 + 85 725 5.09236288 + 86 725 5.18375158 + 87 725 5.26655483 + 88 725 5.36164045 + 89 725 5.4689002 + 90 725 5.58605242 + 91 725 5.68637514 + 92 725 5.77732563 + 93 725 5.85012245 + 94 725 5.93036747 + 95 725 6.02239323 + 96 725 6.01361561 + 97 725 5.98018312 + 98 725 5.93208838 + 99 725 5.88707781 + 100 725 5.84458256 + 101 725 5.81149769 + 102 725 5.78192139 + 103 725 5.68876362 + 104 725 5.5965414 + 105 725 5.50939369 + 106 725 5.50528622 + 107 725 5.5016222 + 108 725 5.48487425 + 109 725 5.46225882 + 10 724 1.40858662 + 11 724 1.32286894 + 12 724 1.26536942 + 13 724 1.19878304 + 14 724 1.1248672 + 15 724 1.05241656 + 16 724 0.981919944 + 17 724 0.907137632 + 18 724 0.820297301 + 19 724 0.745700121 + 20 724 0.682344615 + 21 724 0.634774804 + 22 724 0.597011089 + 23 724 0.578237653 + 24 724 0.561271846 + 25 724 0.550958395 + 26 724 0.554685891 + 27 724 0.57339102 + 28 724 0.589950085 + 29 724 0.596186399 + 30 724 0.59787488 + 31 724 0.530270219 + 32 724 0.446022898 + 33 724 0.351291865 + 34 724 0.323276788 + 35 724 0.305630803 + 36 724 0.289760917 + 37 724 0.256109953 + 38 724 0.210841 + 39 724 0.13242279 + 40 724 0.11479535 + 41 724 0.099768497 + 42 724 0.106008239 + 43 724 0.17129828 + 44 724 0.259647876 + 45 724 0.389976561 + 46 724 0.538001955 + 47 724 0.68531394 + 48 724 0.806107283 + 49 724 0.921101451 + 50 724 1.07728851 + 51 724 1.20197845 + 52 724 1.32759213 + 53 724 1.48043334 + 54 724 1.6275456 + 55 724 1.80155408 + 56 724 1.96036923 + 57 724 2.12412643 + 58 724 2.28633642 + 59 724 2.43970203 + 60 724 2.57862687 + 61 724 2.69974613 + 62 724 2.76546192 + 63 724 2.81904101 + 64 724 2.86030459 + 65 724 2.86427283 + 66 724 2.85179973 + 67 724 2.92222452 + 68 724 2.99137545 + 69 724 3.07607102 + 70 724 3.17818856 + 71 724 3.31660318 + 72 724 3.48553181 + 73 724 3.68870354 + 74 724 3.86562037 + 75 724 4.01671982 + 76 724 4.14073753 + 77 724 4.2735796 + 78 724 4.39313364 + 79 724 4.52173519 + 80 724 4.6488452 + 81 724 4.77074909 + 82 724 4.88433886 + 83 724 4.98803043 + 84 724 5.07760239 + 85 724 5.15940428 + 86 724 5.23859167 + 87 724 5.31128311 + 88 724 5.39502239 + 89 724 5.48656416 + 90 724 5.58462811 + 91 724 5.67199326 + 92 724 5.7480545 + 93 724 5.80872202 + 94 724 5.88218307 + 95 724 5.97184706 + 96 724 5.95940781 + 97 724 5.92628765 + 98 724 5.87533236 + 99 724 5.82891655 + 100 724 5.78734636 + 101 724 5.75717258 + 102 724 5.73229551 + 103 724 5.64957237 + 104 724 5.57019091 + 105 724 5.49601841 + 106 724 5.50502157 + 107 724 5.51023626 + 108 724 5.50326872 + 109 724 5.48211527 + 10 723 1.60883224 + 11 723 1.56987035 + 12 723 1.53468037 + 13 723 1.48878884 + 14 723 1.40857542 + 15 723 1.3162204 + 16 723 1.21889925 + 17 723 1.12106252 + 18 723 1.0124023 + 19 723 0.921204567 + 20 723 0.846218705 + 21 723 0.79499799 + 22 723 0.755616128 + 23 723 0.731676221 + 24 723 0.709324181 + 25 723 0.705589294 + 26 723 0.713192821 + 27 723 0.732795358 + 28 723 0.748623013 + 29 723 0.757882774 + 30 723 0.75545454 + 31 723 0.685904145 + 32 723 0.598457336 + 33 723 0.48925969 + 34 723 0.457767993 + 35 723 0.435124695 + 36 723 0.408214986 + 37 723 0.393756747 + 38 723 0.347592473 + 39 723 0.30235365 + 40 723 0.249474555 + 41 723 0.26749751 + 42 723 0.295624018 + 43 723 0.367374033 + 44 723 0.450456053 + 45 723 0.570843756 + 46 723 0.714399874 + 47 723 0.858104348 + 48 723 0.973744988 + 49 723 1.08072448 + 50 723 1.22784114 + 51 723 1.34854186 + 52 723 1.51393771 + 53 723 1.64902127 + 54 723 1.83033001 + 55 723 1.97157145 + 56 723 2.09128213 + 57 723 2.22318745 + 58 723 2.34421086 + 59 723 2.46512938 + 60 723 2.57837844 + 61 723 2.68615818 + 62 723 2.74151134 + 63 723 2.78977108 + 64 723 2.8318193 + 65 723 2.84332967 + 66 723 2.81515431 + 67 723 2.89424706 + 68 723 2.98934603 + 69 723 3.09605289 + 70 723 3.22705364 + 71 723 3.39126968 + 72 723 3.57592916 + 73 723 3.73725748 + 74 723 3.93894005 + 75 723 4.09311104 + 76 723 4.21861839 + 77 723 4.35827732 + 78 723 4.51483107 + 79 723 4.63993645 + 80 723 4.76956654 + 81 723 4.89603615 + 82 723 4.98170853 + 83 723 5.09110165 + 84 723 5.1651082 + 85 723 5.23417425 + 86 723 5.30519485 + 87 723 5.37345791 + 88 723 5.44065666 + 89 723 5.50649166 + 90 723 5.57384491 + 91 723 5.6427598 + 92 723 5.70154953 + 93 723 5.75593233 + 94 723 5.8219471 + 95 723 5.8938365 + 96 723 5.88533354 + 97 723 5.85435486 + 98 723 5.81200266 + 99 723 5.76241159 + 100 723 5.72404528 + 101 723 5.6982708 + 102 723 5.68126726 + 103 723 5.60800743 + 104 723 5.53914118 + 105 723 5.47564459 + 106 723 5.49514055 + 107 723 5.5073781 + 108 723 5.50879669 + 109 723 5.49478006 + 10 722 1.76968038 + 11 722 1.73083711 + 12 722 1.70317113 + 13 722 1.67392313 + 14 722 1.6097424 + 15 722 1.53073168 + 16 722 1.43357003 + 17 722 1.31466377 + 18 722 1.18908823 + 19 722 1.07592332 + 20 722 0.981556177 + 21 722 0.911243081 + 22 722 0.867213309 + 23 722 0.839506269 + 24 722 0.830833435 + 25 722 0.843430102 + 26 722 0.870474041 + 27 722 0.901784122 + 28 722 0.927009761 + 29 722 0.938525856 + 30 722 0.932206035 + 31 722 0.859347224 + 32 722 0.768622756 + 33 722 0.657965839 + 34 722 0.618341804 + 35 722 0.593384504 + 36 722 0.559776306 + 37 722 0.533242106 + 38 722 0.498050958 + 39 722 0.454881191 + 40 722 0.411621571 + 41 722 0.45584619 + 42 722 0.519202173 + 43 722 0.601952612 + 44 722 0.688260734 + 45 722 0.796930075 + 46 722 0.911505759 + 47 722 1.03565514 + 48 722 1.13821077 + 49 722 1.24326503 + 50 722 1.3908695 + 51 722 1.52600312 + 52 722 1.66871512 + 53 722 1.8278749 + 54 722 1.99122989 + 55 722 2.11080408 + 56 722 2.20601511 + 57 722 2.30475283 + 58 722 2.39570856 + 59 722 2.48951316 + 60 722 2.57779098 + 61 722 2.66386819 + 62 722 2.71235204 + 63 722 2.75273824 + 64 722 2.79002404 + 65 722 2.81316662 + 66 722 2.79903913 + 67 722 2.88913751 + 68 722 2.99213743 + 69 722 3.10865641 + 70 722 3.25603366 + 71 722 3.43323088 + 72 722 3.63679838 + 73 722 3.79047728 + 74 722 3.99155903 + 75 722 4.14461565 + 76 722 4.27608109 + 77 722 4.41365051 + 78 722 4.57878399 + 79 722 4.71452141 + 80 722 4.85869455 + 81 722 4.94523144 + 82 722 5.02761698 + 83 722 5.15934467 + 84 722 5.23543262 + 85 722 5.30494547 + 86 722 5.37607527 + 87 722 5.44422054 + 88 722 5.49521494 + 89 722 5.53693533 + 90 722 5.57429838 + 91 722 5.60761213 + 92 722 5.63349152 + 93 722 5.69518948 + 94 722 5.75478649 + 95 722 5.81155014 + 96 722 5.81387138 + 97 722 5.79401588 + 98 722 5.75169182 + 99 722 5.7018199 + 100 722 5.66586399 + 101 722 5.63647318 + 102 722 5.62597513 + 103 722 5.56366539 + 104 722 5.5037303 + 105 722 5.44808578 + 106 722 5.47819901 + 107 722 5.49835634 + 108 722 5.50746489 + 109 722 5.49465036 + 10 721 1.92333126 + 11 721 1.85159492 + 12 721 1.80002904 + 13 721 1.76223123 + 14 721 1.70426834 + 15 721 1.63586748 + 16 721 1.55253983 + 17 721 1.42949295 + 18 721 1.29617357 + 19 721 1.17473817 + 20 721 1.07460642 + 21 721 0.999458969 + 22 721 0.96649611 + 23 721 0.945744157 + 24 721 0.947857916 + 25 721 0.972580075 + 26 721 1.02087843 + 27 721 1.07075536 + 28 721 1.11079788 + 29 721 1.13640726 + 30 721 1.13241553 + 31 721 1.04691517 + 32 721 0.955663621 + 33 721 0.856334209 + 34 721 0.807503641 + 35 721 0.777806878 + 36 721 0.748226345 + 37 721 0.716881812 + 38 721 0.665823817 + 39 721 0.571047366 + 40 721 0.594062984 + 41 721 0.641488791 + 42 721 0.715261698 + 43 721 0.808437884 + 44 721 0.908040881 + 45 721 1.00337005 + 46 721 1.09566343 + 47 721 1.20398724 + 48 721 1.30916882 + 49 721 1.41877949 + 50 721 1.53435576 + 51 721 1.69398701 + 52 721 1.84152913 + 53 721 1.99527287 + 54 721 2.13334608 + 55 721 2.22813916 + 56 721 2.29778075 + 57 721 2.36197352 + 58 721 2.42592978 + 59 721 2.49155617 + 60 721 2.55530763 + 61 721 2.61421132 + 62 721 2.66720128 + 63 721 2.7039566 + 64 721 2.73909187 + 65 721 2.76573825 + 66 721 2.7788837 + 67 721 2.86659455 + 68 721 2.97787476 + 69 721 3.11536884 + 70 721 3.25888634 + 71 721 3.432127 + 72 721 3.62356591 + 73 721 3.81243205 + 74 721 3.97538471 + 75 721 4.13613844 + 76 721 4.28063011 + 77 721 4.4239316 + 78 721 4.58893871 + 79 721 4.74486351 + 80 721 4.88912344 + 81 721 5.01586151 + 82 721 5.11410046 + 83 721 5.19811535 + 84 721 5.2824316 + 85 721 5.35236073 + 86 721 5.42921019 + 87 721 5.50121307 + 88 721 5.54210043 + 89 721 5.56084394 + 90 721 5.57505846 + 91 721 5.57605457 + 92 721 5.57853937 + 93 721 5.6314621 + 94 721 5.68297434 + 95 721 5.7445631 + 96 721 5.75405788 + 97 721 5.74648285 + 98 721 5.7079339 + 99 721 5.65377998 + 100 721 5.61310291 + 101 721 5.57769489 + 102 721 5.56961298 + 103 721 5.51830912 + 104 721 5.4652257 + 105 721 5.41371202 + 106 721 5.45057106 + 107 721 5.47387981 + 108 721 5.49169922 + 109 721 5.48750687 + 10 720 2.02519846 + 11 720 1.97256231 + 12 720 1.89119411 + 13 720 1.82858276 + 14 720 1.76991093 + 15 720 1.69744551 + 16 720 1.62494266 + 17 720 1.51493239 + 18 720 1.38825321 + 19 720 1.26576149 + 20 720 1.16350377 + 21 720 1.08786333 + 22 720 1.0658164 + 23 720 1.06452096 + 24 720 1.08207273 + 25 720 1.11995459 + 26 720 1.17781234 + 27 720 1.23495722 + 28 720 1.28640211 + 29 720 1.32674778 + 30 720 1.33273554 + 31 720 1.24040532 + 32 720 1.15444088 + 33 720 1.06179655 + 34 720 1.01327503 + 35 720 0.980181575 + 36 720 0.956135452 + 37 720 0.916371346 + 38 720 0.858475208 + 39 720 0.778877318 + 40 720 0.794337749 + 41 720 0.826185405 + 42 720 0.896874905 + 43 720 0.982775271 + 44 720 1.07543886 + 45 720 1.1700443 + 46 720 1.26157904 + 47 720 1.36896086 + 48 720 1.47350264 + 49 720 1.58995187 + 50 720 1.71792507 + 51 720 1.89475691 + 52 720 2.01745343 + 53 720 2.14233994 + 54 720 2.24163079 + 55 720 2.30396962 + 56 720 2.34971428 + 57 720 2.38779259 + 58 720 2.43135118 + 59 720 2.48251963 + 60 720 2.53324604 + 61 720 2.57054734 + 62 720 2.59831405 + 63 720 2.62568402 + 64 720 2.65034032 + 65 720 2.69272208 + 66 720 2.73481297 + 67 720 2.81328225 + 68 720 2.94789577 + 69 720 3.09034848 + 70 720 3.2343719 + 71 720 3.40807343 + 72 720 3.58492589 + 73 720 3.75816107 + 74 720 3.92641687 + 75 720 4.08360672 + 76 720 4.23831844 + 77 720 4.40419245 + 78 720 4.58304977 + 79 720 4.76141119 + 80 720 4.90658092 + 81 720 5.02997875 + 82 720 5.13665628 + 83 720 5.23349094 + 84 720 5.31500387 + 85 720 5.38587713 + 86 720 5.46210337 + 87 720 5.52333736 + 88 720 5.55526209 + 89 720 5.5640583 + 90 720 5.56946993 + 91 720 5.55694723 + 92 720 5.54495335 + 93 720 5.5464325 + 94 720 5.61499071 + 95 720 5.66446495 + 96 720 5.71078157 + 97 720 5.70559502 + 98 720 5.66996908 + 99 720 5.61486101 + 100 720 5.57196045 + 101 720 5.5332942 + 102 720 5.51777792 + 103 720 5.47565079 + 104 720 5.42676926 + 105 720 5.37382126 + 106 720 5.41902065 + 107 720 5.44553804 + 108 720 5.46771383 + 109 720 5.46826553 + 10 719 2.13850284 + 11 719 2.09637642 + 12 719 1.9883157 + 13 719 1.89955199 + 14 719 1.81977665 + 15 719 1.73509884 + 16 719 1.66556084 + 17 719 1.57127953 + 18 719 1.45361984 + 19 719 1.33386695 + 20 719 1.2554729 + 21 719 1.19635344 + 22 719 1.18520987 + 23 719 1.2112875 + 24 719 1.25184989 + 25 719 1.30257058 + 26 719 1.35953438 + 27 719 1.40967357 + 28 719 1.45237577 + 29 719 1.48844898 + 30 719 1.50309837 + 31 719 1.43644249 + 32 719 1.36154819 + 33 719 1.27644312 + 34 719 1.23396611 + 35 719 1.20081592 + 36 719 1.18391407 + 37 719 1.13151693 + 38 719 1.07102537 + 39 719 1.0172894 + 40 719 1.01904035 + 41 719 1.03495002 + 42 719 1.07733142 + 43 719 1.13939297 + 44 719 1.21642172 + 45 719 1.30714834 + 46 719 1.4012928 + 47 719 1.51495481 + 48 719 1.63079321 + 49 719 1.77009439 + 50 719 1.91358316 + 51 719 2.07137895 + 52 719 2.17298198 + 53 719 2.26019287 + 54 719 2.3255322 + 55 719 2.35761476 + 56 719 2.38907623 + 57 719 2.40393806 + 58 719 2.42665076 + 59 719 2.46849275 + 60 719 2.50391459 + 61 719 2.53969431 + 62 719 2.53603959 + 63 719 2.53209186 + 64 719 2.56590295 + 65 719 2.62096572 + 66 719 2.67967129 + 67 719 2.74396873 + 68 719 2.91541409 + 69 719 3.06103325 + 70 719 3.21260834 + 71 719 3.37911153 + 72 719 3.53768849 + 73 719 3.69858551 + 74 719 3.85583401 + 75 719 4.01460171 + 76 719 4.18280268 + 77 719 4.36590147 + 78 719 4.5668478 + 79 719 4.76669931 + 80 719 4.94247866 + 81 719 5.07291603 + 82 719 5.17824841 + 83 719 5.26770687 + 84 719 5.33928585 + 85 719 5.40968132 + 86 719 5.48269081 + 87 719 5.53386641 + 88 719 5.55944347 + 89 719 5.56308889 + 90 719 5.56161594 + 91 719 5.53928232 + 92 719 5.51857996 + 93 719 5.50397062 + 94 719 5.54882956 + 95 719 5.59708357 + 96 719 5.66232681 + 97 719 5.64940786 + 98 719 5.61978769 + 99 719 5.56854057 + 100 719 5.52492809 + 101 719 5.48982954 + 102 719 5.47338343 + 103 719 5.43818808 + 104 719 5.39755154 + 105 719 5.33330488 + 106 719 5.37840128 + 107 719 5.40865326 + 108 719 5.43377352 + 109 719 5.43951368 + 11 718 2.19494629 + 12 718 2.05571246 + 13 718 1.94102168 + 14 718 1.84218037 + 15 718 1.75154853 + 16 718 1.67694306 + 17 718 1.59532201 + 18 718 1.50539815 + 19 718 1.41584396 + 20 718 1.36516774 + 21 718 1.33234882 + 22 718 1.33990896 + 23 718 1.38646603 + 24 718 1.44588351 + 25 718 1.5022254 + 26 718 1.55960381 + 27 718 1.60783863 + 28 718 1.64410031 + 29 718 1.67359304 + 30 718 1.68778491 + 31 718 1.63566577 + 32 718 1.57524824 + 33 718 1.51133323 + 34 718 1.47819805 + 35 718 1.44955635 + 36 718 1.4307332 + 37 718 1.3531698 + 38 718 1.28283155 + 39 718 1.23019421 + 40 718 1.21648526 + 41 718 1.22483146 + 42 718 1.2564671 + 43 718 1.30247986 + 44 718 1.36383581 + 45 718 1.4570266 + 46 718 1.55289483 + 47 718 1.66329515 + 48 718 1.77991927 + 49 718 1.92777407 + 50 718 2.06050038 + 51 718 2.1729722 + 52 718 2.27304053 + 53 718 2.33751559 + 54 718 2.35221672 + 55 718 2.37238812 + 56 718 2.39552093 + 57 718 2.41020656 + 58 718 2.42149019 + 59 718 2.45978069 + 60 718 2.48355412 + 61 718 2.50959182 + 62 718 2.48576808 + 63 718 2.46185207 + 64 718 2.47580957 + 65 718 2.53610158 + 66 718 2.59855962 + 67 718 2.75298882 + 68 718 2.88376784 + 69 718 3.03100824 + 70 718 3.1738317 + 71 718 3.33467579 + 72 718 3.48736763 + 73 718 3.63822079 + 74 718 3.77988815 + 75 718 3.93803644 + 76 718 4.12116814 + 77 718 4.32613373 + 78 718 4.54106712 + 79 718 4.76610041 + 80 718 4.96114159 + 81 718 5.10725021 + 82 718 5.21563768 + 83 718 5.3030262 + 84 718 5.36824226 + 85 718 5.43325186 + 86 718 5.50049782 + 87 718 5.5401473 + 88 718 5.55792952 + 89 718 5.56009865 + 90 718 5.55217981 + 91 718 5.51846981 + 92 718 5.49053478 + 93 718 5.46559095 + 94 718 5.48114014 + 95 718 5.51680231 + 96 718 5.57716656 + 97 718 5.56236887 + 98 718 5.53925037 + 99 718 5.49601221 + 100 718 5.45764685 + 101 718 5.43030214 + 102 718 5.42089319 + 103 718 5.42841959 + 104 718 5.36598301 + 105 718 5.33918858 + 106 718 5.33382702 + 107 718 5.36092567 + 108 718 5.3898983 + 109 718 5.39980173 + 11 717 2.16590238 + 12 717 2.0974586 + 13 717 1.94574046 + 14 717 1.82854414 + 15 717 1.72852659 + 16 717 1.65228248 + 17 717 1.59077907 + 18 717 1.54139328 + 19 717 1.5047971 + 20 717 1.49918234 + 21 717 1.50031078 + 22 717 1.52905738 + 23 717 1.59037375 + 24 717 1.6620847 + 25 717 1.73066914 + 26 717 1.79337227 + 27 717 1.83307302 + 28 717 1.85586202 + 29 717 1.87515557 + 30 717 1.89076543 + 31 717 1.83929753 + 32 717 1.78978133 + 33 717 1.7501179 + 34 717 1.7268399 + 35 717 1.69754732 + 36 717 1.67192578 + 37 717 1.57168078 + 38 717 1.48150849 + 39 717 1.40604818 + 40 717 1.38172698 + 41 717 1.39312148 + 42 717 1.41881514 + 43 717 1.45966434 + 44 717 1.51484692 + 45 717 1.60956717 + 46 717 1.73342931 + 47 717 1.8180809 + 48 717 1.94506896 + 49 717 2.08702731 + 50 717 2.18133688 + 51 717 2.25559282 + 52 717 2.32610345 + 53 717 2.36203766 + 54 717 2.336483 + 55 717 2.36667681 + 56 717 2.38520408 + 57 717 2.39463568 + 58 717 2.41437507 + 59 717 2.44250345 + 60 717 2.4639008 + 61 717 2.47950006 + 62 717 2.46022606 + 63 717 2.43380713 + 64 717 2.4449091 + 65 717 2.55753994 + 66 717 2.6206646 + 67 717 2.7146461 + 68 717 2.85559797 + 69 717 2.99654818 + 70 717 3.15032601 + 71 717 3.29813457 + 72 717 3.43392539 + 73 717 3.56181145 + 74 717 3.69237208 + 75 717 3.84640765 + 76 717 4.04279947 + 77 717 4.26549149 + 78 717 4.50002861 + 79 717 4.74938107 + 80 717 4.96272135 + 81 717 5.12815714 + 82 717 5.2437315 + 83 717 5.33193064 + 84 717 5.3851347 + 85 717 5.44535351 + 86 717 5.50875187 + 87 717 5.54283047 + 88 717 5.56128263 + 89 717 5.56184912 + 90 717 5.54098749 + 91 717 5.49764442 + 92 717 5.45267487 + 93 717 5.4099865 + 94 717 5.39470339 + 95 717 5.41194057 + 96 717 5.4610095 + 97 717 5.44545269 + 98 717 5.423069 + 99 717 5.38840675 + 100 717 5.36081314 + 101 717 5.3482995 + 102 717 5.35259342 + 103 717 5.36987257 + 104 717 5.32366657 + 105 717 5.29773808 + 106 717 5.2829423 + 107 717 5.30861807 + 108 717 5.33692074 + 109 717 5.35428715 + 11 716 2.21135211 + 12 716 2.10708976 + 13 716 1.92697096 + 14 716 1.79800177 + 15 716 1.69730496 + 16 716 1.64200068 + 17 716 1.61170483 + 18 716 1.61274731 + 19 716 1.62245536 + 20 716 1.64428639 + 21 716 1.66923261 + 22 716 1.7102927 + 23 716 1.78006768 + 24 716 1.86057937 + 25 716 1.94333816 + 26 716 2.01500559 + 27 716 2.05472207 + 28 716 2.08447409 + 29 716 2.10194492 + 30 716 2.11401916 + 31 716 2.03393674 + 32 716 1.98508143 + 33 716 1.98547602 + 34 716 1.97089791 + 35 716 1.94641697 + 36 716 1.90996003 + 37 716 1.77593815 + 38 716 1.66636288 + 39 716 1.56482935 + 40 716 1.52573657 + 41 716 1.53272629 + 42 716 1.56566918 + 43 716 1.62043869 + 44 716 1.68959498 + 45 716 1.7962352 + 46 716 1.89836633 + 47 716 2.00724149 + 48 716 2.1189785 + 49 716 2.23014545 + 50 716 2.29574013 + 51 716 2.33787441 + 52 716 2.36490822 + 53 716 2.38638043 + 54 716 2.34623384 + 55 716 2.37064981 + 56 716 2.37457752 + 57 716 2.37856841 + 58 716 2.41555762 + 59 716 2.42964101 + 60 716 2.44226217 + 61 716 2.46076035 + 62 716 2.43460441 + 63 716 2.3923409 + 64 716 2.39985991 + 65 716 2.50357509 + 66 716 2.60406876 + 67 716 2.69006443 + 68 716 2.82137036 + 69 716 2.95532227 + 70 716 3.10209203 + 71 716 3.21530104 + 72 716 3.34116936 + 73 716 3.45338964 + 74 716 3.58506155 + 75 716 3.73342609 + 76 716 3.93853354 + 77 716 4.17214727 + 78 716 4.42216492 + 79 716 4.68772697 + 80 716 4.9192524 + 81 716 5.09722042 + 82 716 5.22789335 + 83 716 5.32344437 + 84 716 5.37855387 + 85 716 5.44329596 + 86 716 5.50413227 + 87 716 5.53263998 + 88 716 5.54402924 + 89 716 5.53407812 + 90 716 5.50138092 + 91 716 5.44003916 + 92 716 5.37658978 + 93 716 5.31112003 + 94 716 5.24100733 + 95 716 5.31987762 + 96 716 5.30364895 + 97 716 5.2808733 + 98 716 5.26192427 + 99 716 5.24796438 + 100 716 5.23463726 + 101 716 5.23897696 + 102 716 5.25318289 + 103 716 5.28795147 + 104 716 5.25814629 + 105 716 5.24139833 + 106 716 5.2361269 + 107 716 5.2679081 + 108 716 5.2958889 + 109 716 5.32041121 + 11 715 2.19735098 + 12 715 2.05824423 + 13 715 1.91725659 + 14 715 1.82942164 + 15 715 1.75899923 + 16 715 1.72580302 + 17 715 1.7055403 + 18 715 1.72298801 + 19 715 1.75169706 + 20 715 1.78503692 + 21 715 1.82030106 + 22 715 1.86577809 + 23 715 1.92563796 + 24 715 2.01033902 + 25 715 2.0974791 + 26 715 2.18388486 + 27 715 2.24443412 + 28 715 2.28469324 + 29 715 2.29854441 + 30 715 2.30498719 + 31 715 2.19985747 + 32 715 2.14516139 + 33 715 2.13448262 + 34 715 2.12708354 + 35 715 2.11872721 + 36 715 2.10007071 + 37 715 1.96101713 + 38 715 1.84316874 + 39 715 1.72490644 + 40 715 1.67512333 + 41 715 1.668383 + 42 715 1.69739377 + 43 715 1.75691271 + 44 715 1.84311509 + 45 715 1.96325505 + 46 715 2.07270646 + 47 715 2.17883587 + 48 715 2.25809526 + 49 715 2.3211441 + 50 715 2.36187744 + 51 715 2.38254142 + 52 715 2.38808393 + 53 715 2.37958455 + 54 715 2.3511157 + 55 715 2.37070322 + 56 715 2.38374519 + 57 715 2.39173484 + 58 715 2.42841363 + 59 715 2.42250824 + 60 715 2.42735314 + 61 715 2.43824649 + 62 715 2.40269971 + 63 715 2.35740972 + 64 715 2.38768172 + 65 715 2.47159481 + 66 715 2.59253573 + 67 715 2.67748785 + 68 715 2.78011036 + 69 715 2.90190244 + 70 715 3.03534651 + 71 715 3.12533569 + 72 715 3.24373436 + 73 715 3.3478353 + 74 715 3.50209618 + 75 715 3.65054631 + 76 715 3.8183291 + 77 715 4.04171991 + 78 715 4.29950619 + 79 715 4.57382822 + 80 715 4.83100462 + 81 715 5.02715492 + 82 715 5.17384481 + 83 715 5.28170824 + 84 715 5.35255003 + 85 715 5.4260993 + 86 715 5.48590612 + 87 715 5.50498629 + 88 715 5.50443792 + 89 715 5.48028898 + 90 715 5.43253136 + 91 715 5.34559584 + 92 715 5.26395893 + 93 715 5.17525196 + 94 715 5.08537102 + 95 715 5.1315341 + 96 715 5.11448431 + 97 715 5.09514236 + 98 715 5.07763004 + 99 715 5.07881546 + 100 715 5.08735943 + 101 715 5.11219025 + 102 715 5.14735746 + 103 715 5.19505215 + 104 715 5.17727757 + 105 715 5.17126369 + 106 715 5.18307829 + 107 715 5.22691298 + 108 715 5.25956821 + 109 715 5.29002523 + 11 714 2.20424271 + 12 714 2.09331989 + 13 714 1.98491919 + 14 714 1.93864727 + 15 714 1.89365888 + 16 714 1.87906122 + 17 714 1.86972046 + 18 714 1.88310468 + 19 714 1.90092552 + 20 714 1.92050123 + 21 714 1.9569211 + 22 714 2.00038362 + 23 714 2.05325532 + 24 714 2.13410783 + 25 714 2.2231288 + 26 714 2.30680275 + 27 714 2.3657794 + 28 714 2.39806652 + 29 714 2.41128373 + 30 714 2.41882515 + 31 714 2.32788634 + 32 714 2.26655459 + 33 714 2.22561216 + 34 714 2.23121595 + 35 714 2.23771405 + 36 714 2.24715281 + 37 714 2.12780976 + 38 714 2.01500249 + 39 714 1.90681756 + 40 714 1.84631085 + 41 714 1.81701505 + 42 714 1.82173967 + 43 714 1.87814593 + 44 714 1.96958709 + 45 714 2.08633995 + 46 714 2.1889751 + 47 714 2.27758884 + 48 714 2.35307217 + 49 714 2.39349651 + 50 714 2.39208055 + 51 714 2.38396239 + 52 714 2.37079453 + 53 714 2.3482945 + 54 714 2.31704593 + 55 714 2.32964206 + 56 714 2.3606534 + 57 714 2.38450289 + 58 714 2.42668939 + 59 714 2.42033458 + 60 714 2.41892433 + 61 714 2.41446543 + 62 714 2.38834476 + 63 714 2.3448627 + 64 714 2.37930918 + 65 714 2.44738483 + 66 714 2.55339313 + 67 714 2.63030028 + 68 714 2.72771835 + 69 714 2.83730435 + 70 714 2.95653963 + 71 714 3.06113434 + 72 714 3.16311002 + 73 714 3.28048897 + 74 714 3.40228224 + 75 714 3.54715681 + 76 714 3.73413229 + 77 714 3.93746305 + 78 714 4.18038511 + 79 714 4.43750095 + 80 714 4.69928455 + 81 714 4.91409683 + 82 714 5.09040117 + 83 714 5.22457314 + 84 714 5.31076717 + 85 714 5.383461 + 86 714 5.44738817 + 87 714 5.46036053 + 88 714 5.45049238 + 89 714 5.41680193 + 90 714 5.35561323 + 91 714 5.240839 + 92 714 5.14178419 + 93 714 5.03672647 + 94 714 4.94719648 + 95 714 4.94388771 + 96 714 4.93395424 + 97 714 4.92432928 + 98 714 4.92452621 + 99 714 4.94575405 + 100 714 4.96908474 + 101 714 5.0007391 + 102 714 5.0413065 + 103 714 5.09474421 + 104 714 5.08451462 + 105 714 5.08423901 + 106 714 5.10442495 + 107 714 5.163589 + 108 714 5.20720291 + 109 714 5.2455802 + 11 713 2.28380132 + 12 713 2.18517828 + 13 713 2.10372949 + 14 713 2.09835148 + 15 713 2.10075593 + 16 713 2.11283588 + 17 713 2.12884998 + 18 713 2.15172362 + 19 713 2.1368432 + 20 713 2.12783241 + 21 713 2.1525836 + 22 713 2.18297744 + 23 713 2.22827101 + 24 713 2.29577923 + 25 713 2.36817718 + 26 713 2.42502356 + 27 713 2.46520519 + 28 713 2.48278904 + 29 713 2.48488975 + 30 713 2.49137783 + 31 713 2.42909741 + 32 713 2.36558723 + 33 713 2.30311775 + 34 713 2.32871962 + 35 713 2.35593104 + 36 713 2.39014244 + 37 713 2.28104854 + 38 713 2.18120337 + 39 713 2.09038234 + 40 713 2.02290606 + 41 713 1.97020566 + 42 713 1.94408309 + 43 713 1.97618783 + 44 713 2.05288815 + 45 713 2.15683055 + 46 713 2.25370121 + 47 713 2.33794141 + 48 713 2.40977192 + 49 713 2.44471431 + 50 713 2.40194964 + 51 713 2.36804581 + 52 713 2.31445456 + 53 713 2.25580072 + 54 713 2.21814942 + 55 713 2.21323967 + 56 713 2.26041412 + 57 713 2.30413866 + 58 713 2.38072562 + 59 713 2.39916253 + 60 713 2.3964076 + 61 713 2.3894453 + 62 713 2.37221837 + 63 713 2.33626175 + 64 713 2.37111807 + 65 713 2.43002939 + 66 713 2.5245502 + 67 713 2.56927872 + 68 713 2.66177511 + 69 713 2.76424885 + 70 713 2.87145281 + 71 713 2.99472833 + 72 713 3.10205531 + 73 713 3.24944925 + 74 713 3.37035775 + 75 713 3.51040077 + 76 713 3.68378162 + 77 713 3.88073492 + 78 713 4.1038847 + 79 713 4.32966614 + 80 713 4.56793928 + 81 713 4.78875017 + 82 713 4.9896493 + 83 713 5.1424551 + 84 713 5.24543381 + 85 713 5.33119774 + 86 713 5.35695076 + 87 713 5.40352917 + 88 713 5.38298225 + 89 713 5.34109592 + 90 713 5.26955462 + 91 713 5.14999104 + 92 713 5.04414272 + 93 713 4.93235636 + 94 713 4.81984949 + 95 713 4.80495596 + 96 713 4.78743362 + 97 713 4.79080153 + 98 713 4.81032991 + 99 713 4.8418293 + 100 713 4.87412119 + 101 713 4.91028929 + 102 713 4.95299435 + 103 713 5.00326872 + 104 713 4.9761095 + 105 713 4.97362614 + 106 713 5.00308371 + 107 713 5.07454014 + 108 713 5.12522173 + 109 713 5.16650772 + 11 712 2.42104983 + 12 712 2.3129096 + 13 712 2.25065684 + 14 712 2.26710749 + 15 712 2.30837607 + 16 712 2.35927534 + 17 712 2.41778994 + 18 712 2.49261761 + 19 712 2.48206353 + 20 712 2.45874166 + 21 712 2.46574116 + 22 712 2.47642779 + 23 712 2.50607038 + 24 712 2.55926037 + 25 712 2.60457969 + 26 712 2.62893319 + 27 712 2.63253069 + 28 712 2.60750294 + 29 712 2.58328915 + 30 712 2.57808828 + 31 712 2.52467537 + 32 712 2.45926714 + 33 712 2.38797331 + 34 712 2.42813063 + 35 712 2.47250724 + 36 712 2.52608371 + 37 712 2.42183876 + 38 712 2.33437085 + 39 712 2.26757908 + 40 712 2.19502449 + 41 712 2.12374854 + 42 712 2.07411432 + 43 712 2.08007026 + 44 712 2.13600254 + 45 712 2.21060991 + 46 712 2.29995155 + 47 712 2.37871575 + 48 712 2.44116855 + 49 712 2.47994876 + 50 712 2.41115475 + 51 712 2.33189154 + 52 712 2.23451567 + 53 712 2.13601708 + 54 712 2.06249905 + 55 712 2.05501175 + 56 712 2.11674404 + 57 712 2.18946767 + 58 712 2.29153562 + 59 712 2.33613825 + 60 712 2.34650779 + 61 712 2.34090424 + 62 712 2.34122896 + 63 712 2.3148613 + 64 712 2.32924962 + 65 712 2.37418008 + 66 712 2.42814302 + 67 712 2.48964357 + 68 712 2.58981538 + 69 712 2.68681407 + 70 712 2.78349018 + 71 712 2.91342711 + 72 712 3.04243755 + 73 712 3.17847204 + 74 712 3.33191395 + 75 712 3.49192882 + 76 712 3.66272163 + 77 712 3.85560727 + 78 712 4.05630875 + 79 712 4.25873518 + 80 712 4.45595789 + 81 712 4.66234112 + 82 712 4.86389923 + 83 712 5.03344059 + 84 712 5.1604805 + 85 712 5.21858072 + 86 712 5.27637672 + 87 712 5.32569838 + 88 712 5.29491854 + 89 712 5.24537706 + 90 712 5.15809345 + 91 712 5.0384016 + 92 712 4.93194294 + 93 712 4.81762314 + 94 712 4.7074275 + 95 712 4.6849122 + 96 712 4.65963364 + 97 712 4.66599989 + 98 712 4.69410276 + 99 712 4.73213482 + 100 712 4.77561903 + 101 712 4.81091118 + 102 712 4.84922075 + 103 712 4.88812304 + 104 712 4.84501743 + 105 712 4.83544779 + 106 712 4.85627794 + 107 712 4.9428792 + 108 712 5.00535727 + 109 712 5.04932928 + 11 711 2.45727777 + 12 711 2.43463778 + 13 711 2.40629339 + 14 711 2.45486665 + 15 711 2.53666258 + 16 711 2.62521243 + 17 711 2.70827198 + 18 711 2.794209 + 19 711 2.82998919 + 20 711 2.82798195 + 21 711 2.83264494 + 22 711 2.83295465 + 23 711 2.84322071 + 24 711 2.87604189 + 25 711 2.89171195 + 26 711 2.88069081 + 27 711 2.83931351 + 28 711 2.78154206 + 29 711 2.7264452 + 30 711 2.69398284 + 31 711 2.62550592 + 32 711 2.55503106 + 33 711 2.48368859 + 34 711 2.53974509 + 35 711 2.59119129 + 36 711 2.65152049 + 37 711 2.54189086 + 38 711 2.46258926 + 39 711 2.42257667 + 40 711 2.35145712 + 41 711 2.26981735 + 42 711 2.20935702 + 43 711 2.19776702 + 44 711 2.22010946 + 45 711 2.27138972 + 46 711 2.3421874 + 47 711 2.4098022 + 48 711 2.4615922 + 49 711 2.49826765 + 50 711 2.44454789 + 51 711 2.33838773 + 52 711 2.20144868 + 53 711 2.0406785 + 54 711 1.91119838 + 55 711 1.88817954 + 56 711 1.95609975 + 57 711 2.05031013 + 58 711 2.17131639 + 59 711 2.251688 + 60 711 2.27587199 + 61 711 2.27396679 + 62 711 2.2771163 + 63 711 2.2573247 + 64 711 2.25658393 + 65 711 2.28536415 + 66 711 2.37292385 + 67 711 2.42186904 + 68 711 2.51415372 + 69 711 2.61198664 + 70 711 2.69883418 + 71 711 2.82332635 + 72 711 2.96590996 + 73 711 3.12999082 + 74 711 3.28781986 + 75 711 3.46316457 + 76 711 3.64913678 + 77 711 3.8380053 + 78 711 4.02198076 + 79 711 4.20480776 + 80 711 4.3747921 + 81 711 4.55560875 + 82 711 4.73796177 + 83 711 4.90714931 + 84 711 5.04841137 + 85 711 5.10906172 + 86 711 5.16860104 + 87 711 5.23226643 + 88 711 5.19637775 + 89 711 5.13133574 + 90 711 5.02283287 + 91 711 4.89416265 + 92 711 4.78350592 + 93 711 4.66837978 + 94 711 4.56149101 + 95 711 4.55106163 + 96 711 4.51835442 + 97 711 4.52524614 + 98 711 4.55915117 + 99 711 4.60631132 + 100 711 4.65096951 + 101 711 4.68155384 + 102 711 4.71002722 + 103 711 4.7291913 + 104 711 4.68605423 + 105 711 4.66922712 + 106 711 4.67509699 + 107 711 4.77271318 + 108 711 4.84805202 + 109 711 4.90322924 + 11 710 2.47346878 + 12 710 2.53909421 + 13 710 2.57201076 + 14 710 2.65539169 + 15 710 2.74140477 + 16 710 2.86358929 + 17 710 2.95968175 + 18 710 3.05366755 + 19 710 3.11706591 + 20 710 3.16119289 + 21 710 3.18410301 + 22 710 3.19675255 + 23 710 3.21044588 + 24 710 3.21760488 + 25 710 3.18551755 + 26 710 3.13119388 + 27 710 3.05324221 + 28 710 2.95561171 + 29 710 2.8718183 + 30 710 2.81971788 + 31 710 2.72643971 + 32 710 2.64805508 + 33 710 2.58585978 + 34 710 2.64792204 + 35 710 2.69905233 + 36 710 2.75129652 + 37 710 2.62941074 + 38 710 2.55134511 + 39 710 2.52503562 + 40 710 2.45627356 + 41 710 2.38287592 + 42 710 2.31535196 + 43 710 2.28910351 + 44 710 2.28559279 + 45 710 2.31523681 + 46 710 2.35908341 + 47 710 2.41788816 + 48 710 2.47412443 + 49 710 2.51626229 + 50 710 2.47402883 + 51 710 2.35587215 + 52 710 2.19746971 + 53 710 2.00371909 + 54 710 1.83109462 + 55 710 1.76415837 + 56 710 1.82439244 + 57 710 1.92892194 + 58 710 2.05348301 + 59 710 2.15520406 + 60 710 2.1895864 + 61 710 2.18822813 + 62 710 2.18819737 + 63 710 2.17802 + 64 710 2.17438579 + 65 710 2.21015668 + 66 710 2.28020501 + 67 710 2.34168649 + 68 710 2.43586183 + 69 710 2.53708768 + 70 710 2.65136743 + 71 710 2.76170254 + 72 710 2.92174864 + 73 710 3.07006955 + 74 710 3.23925328 + 75 710 3.42534232 + 76 710 3.61701846 + 77 710 3.80530453 + 78 710 3.97817874 + 79 710 4.14522505 + 80 710 4.29892206 + 81 710 4.44733477 + 82 710 4.59821367 + 83 710 4.75538731 + 84 710 4.89233303 + 85 710 5.00394535 + 86 710 5.07165051 + 87 710 5.09862423 + 88 710 5.07323742 + 89 710 4.99385786 + 90 710 4.87502623 + 91 710 4.73408985 + 92 710 4.60487032 + 93 710 4.47685862 + 94 710 4.36737204 + 95 710 4.38195801 + 96 710 4.36082029 + 97 710 4.37341499 + 98 710 4.41251945 + 99 710 4.455791 + 100 710 4.48981047 + 101 710 4.50770521 + 102 710 4.52276468 + 103 710 4.53297853 + 104 710 4.50258732 + 105 710 4.48751068 + 106 710 4.46747589 + 107 710 4.57860136 + 108 710 4.65716124 + 109 710 4.72017002 diff --git a/autoarray/util/nn/src/nn/examples/4/makefile b/autoarray/util/nn/src/nn/examples/4/makefile index 6cd506764..ea2b06fd7 100644 --- a/autoarray/util/nn/src/nn/examples/4/makefile +++ b/autoarray/util/nn/src/nn/examples/4/makefile @@ -1,4 +1,4 @@ -all: - ./test.sh -clean: - rm -f lin*.txt nn-*.txt *~ core +all: + ./test.sh +clean: + rm -f lin*.txt nn-*.txt *~ core diff --git a/autoarray/util/nn/src/nn/examples/4/test.sh b/autoarray/util/nn/src/nn/examples/4/test.sh index df1c59b2c..cbd851383 100644 --- a/autoarray/util/nn/src/nn/examples/4/test.sh +++ b/autoarray/util/nn/src/nn/examples/4/test.sh @@ -1,26 +1,26 @@ -#!/bin/bash - -N=201 - -if [ ! -x ../../nnbathy ] -then - echo "error: no executable found" - echo 'Run "./configure" and "make" in the source directory' - exit 1 -fi - -echo "" -echo -n "Linear interpolation..." -../../nnbathy -i data.txt -n "$N"x"$N" -P alg=l > lin.txt -echo "done" -echo -n "Natural Neighbours Sibson interpolation..." -../../nnbathy -i data.txt -n "$N"x"$N" > nn-inf.txt -echo "done" -echo -n "Natural Neighbours Sibson interpolation with wmin = 0..." -../../nnbathy -i data.txt -n "$N"x"$N" -W 0 > nn-0.txt -echo "done" -echo -n "Natural Neighbours Non-Sibsonian interpolation with wmin = 0..." -../../nnbathy -i data.txt -n "$N"x"$N" -P alg=ns -W 0 > nn-ns.txt -echo "done" -echo "" -echo 'To visualize, in Matlab run "viewexample"' +#!/bin/bash + +N=201 + +if [ ! -x ../../nnbathy ] +then + echo "error: no executable found" + echo 'Run "./configure" and "make" in the source directory' + exit 1 +fi + +echo "" +echo -n "Linear interpolation..." +../../nnbathy -i data.txt -n "$N"x"$N" -P alg=l > lin.txt +echo "done" +echo -n "Natural Neighbours Sibson interpolation..." +../../nnbathy -i data.txt -n "$N"x"$N" > nn-inf.txt +echo "done" +echo -n "Natural Neighbours Sibson interpolation with wmin = 0..." +../../nnbathy -i data.txt -n "$N"x"$N" -W 0 > nn-0.txt +echo "done" +echo -n "Natural Neighbours Non-Sibsonian interpolation with wmin = 0..." +../../nnbathy -i data.txt -n "$N"x"$N" -P alg=ns -W 0 > nn-ns.txt +echo "done" +echo "" +echo 'To visualize, in Matlab run "viewexample"' diff --git a/autoarray/util/nn/src/nn/examples/4/viewdata.m b/autoarray/util/nn/src/nn/examples/4/viewdata.m index cf6455bad..87015c49c 100644 --- a/autoarray/util/nn/src/nn/examples/4/viewdata.m +++ b/autoarray/util/nn/src/nn/examples/4/viewdata.m @@ -1,54 +1,54 @@ -function [] = viewdata(fname, verbose) - - if nargin == 1 - verbose = 1; - end - - if verbose - fprintf('plotting data from "%s"\n', fname); - fprintf(' reading %s...', fname); - end - data = load(fname); - x = data(:, 1); - y = data(:, 2); - z = data(:, 3); - clear data; - - if verbose - fprintf('\n'); - end - - if verbose - fprintf(' plotting...'); - end - - xmin = min(x); - xmax = max(x); - ymin = min(y); - ymax = max(y); - zmin = min(z); - zmax = max(z); - n = length(z); - - map = colormap; - axis([xmin xmax ymin ymax]); - axis square; - set(gca, 'box', 'on'); - hold on; - for i = 1 : n - plot(x(i), y(i), 's-', 'color', zcolor(z(i), zmin, zmax, map), 'markersize', 2); - end - - if verbose - fprintf('\n'); - end - - return - -function c = zcolor(z, zmin, zmax, map) - - ind = floor((z - zmin) / (zmax - zmin) * 64 + 1); - ind = min(ind, 64); - c = map(ind, :); - - return +function [] = viewdata(fname, verbose) + + if nargin == 1 + verbose = 1; + end + + if verbose + fprintf('plotting data from "%s"\n', fname); + fprintf(' reading %s...', fname); + end + data = load(fname); + x = data(:, 1); + y = data(:, 2); + z = data(:, 3); + clear data; + + if verbose + fprintf('\n'); + end + + if verbose + fprintf(' plotting...'); + end + + xmin = min(x); + xmax = max(x); + ymin = min(y); + ymax = max(y); + zmin = min(z); + zmax = max(z); + n = length(z); + + map = colormap; + axis([xmin xmax ymin ymax]); + axis square; + set(gca, 'box', 'on'); + hold on; + for i = 1 : n + plot(x(i), y(i), 's-', 'color', zcolor(z(i), zmin, zmax, map), 'markersize', 2); + end + + if verbose + fprintf('\n'); + end + + return + +function c = zcolor(z, zmin, zmax, map) + + ind = floor((z - zmin) / (zmax - zmin) * 64 + 1); + ind = min(ind, 64); + c = map(ind, :); + + return diff --git a/autoarray/util/nn/src/nn/examples/4/viewexample.m b/autoarray/util/nn/src/nn/examples/4/viewexample.m index 6ce1d1018..16c1588a9 100644 --- a/autoarray/util/nn/src/nn/examples/4/viewexample.m +++ b/autoarray/util/nn/src/nn/examples/4/viewexample.m @@ -1,52 +1,52 @@ -figure - -subplot(3, 2, 1); -fname = 'data.txt'; -fprintf('plotting data points from "%s"\n', fname); -fprintf(' reading %s...', fname); -data = load(fname); -xrange = [min(data(:, 1)) max(data(:, 1))]; -yrange = [min(data(:, 2)) max(data(:, 2))]; -zrange = [min(data(:, 3)) max(data(:, 3))]; -fprintf('\n'); -fprintf(' plotting...'); -axis([xrange yrange]); -axis tight; -axis square; -set(gca, 'box', 'on'); -hold on; -plot(data(:, 1), data(:, 2), 'k.', 'markersize', 1); -fprintf('\n'); -clear data; -title('Data points'); -pause(0.1); - -subplot(3, 2, 2); -viewdata('data.txt'); -title('Data'); -pause(0.1); - -subplot(3, 2, 3); -viewinterp('data.txt', 'lin.txt'); -title('Linear interpolation'); -pause(0.1); - -subplot(3, 2, 4); -viewinterp('data.txt', 'nn-inf.txt'); -caxis(zrange); -title(sprintf('Natural Neighbours interpolation\n(extrapolation allowed)')); -pause(0.1); - -subplot(3, 2, 5); -viewinterp('data.txt', 'nn-0.txt'); -caxis(zrange); -title(sprintf('Natural Neighbours interpolation\n(interpolation only)')); -pause(0.1); - -subplot(3, 2, 6); -viewinterp('data.txt', 'nn-ns.txt'); -caxis(zrange); -title(sprintf('Non-Sibsonian NN interpolation\n(interpolation only)')); -pause(0.1); - -suptitle('Interpolation of topographic data from satellite altimeter using nnbathy'); +figure + +subplot(3, 2, 1); +fname = 'data.txt'; +fprintf('plotting data points from "%s"\n', fname); +fprintf(' reading %s...', fname); +data = load(fname); +xrange = [min(data(:, 1)) max(data(:, 1))]; +yrange = [min(data(:, 2)) max(data(:, 2))]; +zrange = [min(data(:, 3)) max(data(:, 3))]; +fprintf('\n'); +fprintf(' plotting...'); +axis([xrange yrange]); +axis tight; +axis square; +set(gca, 'box', 'on'); +hold on; +plot(data(:, 1), data(:, 2), 'k.', 'markersize', 1); +fprintf('\n'); +clear data; +title('Data points'); +pause(0.1); + +subplot(3, 2, 2); +viewdata('data.txt'); +title('Data'); +pause(0.1); + +subplot(3, 2, 3); +viewinterp('data.txt', 'lin.txt'); +title('Linear interpolation'); +pause(0.1); + +subplot(3, 2, 4); +viewinterp('data.txt', 'nn-inf.txt'); +caxis(zrange); +title(sprintf('Natural Neighbours interpolation\n(extrapolation allowed)')); +pause(0.1); + +subplot(3, 2, 5); +viewinterp('data.txt', 'nn-0.txt'); +caxis(zrange); +title(sprintf('Natural Neighbours interpolation\n(interpolation only)')); +pause(0.1); + +subplot(3, 2, 6); +viewinterp('data.txt', 'nn-ns.txt'); +caxis(zrange); +title(sprintf('Non-Sibsonian NN interpolation\n(interpolation only)')); +pause(0.1); + +suptitle('Interpolation of topographic data from satellite altimeter using nnbathy'); diff --git a/autoarray/util/nn/src/nn/examples/4/viewinterp.m b/autoarray/util/nn/src/nn/examples/4/viewinterp.m index f43e5d4f2..ab44e5bbf 100644 --- a/autoarray/util/nn/src/nn/examples/4/viewinterp.m +++ b/autoarray/util/nn/src/nn/examples/4/viewinterp.m @@ -1,129 +1,129 @@ -function [h] = viewinterp(fin, fout, verbose) - - if nargin == 2 - verbose = 1; - end - - if verbose - fprintf('plotting data from "%s" and "%s"\n', fin, fout); - fprintf(' reading "%s"...', fin); - end - - data = load(fin); - xin = data(:, 1); - yin = data(:, 2); - - if verbose - fprintf('\n reading "%s"...', fout); - end - - data = load(fout); - x = data(:, 1); - y = data(:, 2); - z = data(:, 3); - clear data; - - if verbose - fprintf('\n'); - end - - if verbose - fprintf(' working out the grid dimensions...') - end - n = length(x); - if x(2) - x(1) ~= 0 & y(2) - y(1) == 0 - xfirst = 1; - xinc = x(2) > x(1); - if xinc - nx = min(find(diff(x) < 0)); - else - nx = min(find(diff(x) > 0)); - end - if mod(n, nx) ~= 0 - error(sprintf('\n Error: could not work out the grid size, n = %d, nx = %d, n / nx = %f\n', n, nx, n / nx)); - end - ny = n / nx; - x = x(1 : nx); - y = y(1 : nx : n); - z = reshape(z, nx, ny)'; - elseif x(2) - x(1) == 0 & y(2) - y(1) ~= 0 - xfirst = 0; - yinc = y(2) > y(1); - if yinc - ny = min(find(diff(y) < 0)); - else - ny = min(find(diff(y) > 0)); - end - if mod(n, ny) ~= 0 - error(sprintf('\n Error: could not work out the grid size, n = %d, ny = %d, n / ny = %.3f\n', n, ny, n / ny)); - end - nx = n / ny; - y = y(1 : ny); - x = x(1 : ny : n); - z = reshape(z, ny, nx); - else - error(' Error: not a rectangular grid'); - end - if verbose - if xfirst - fprintf('%d x %d, stored by rows\n', nx, ny); - else - fprintf('%d x %d, stored by columns\n', nx, ny); - end - end - - if verbose - fprintf(' plotting...'); - end - - h = pcolor_ps(x, y, z); - zrange = [min(min(z)) max(max(z))]; - caxis(zrange); - set(h, 'LineStyle', 'none'); - axis square; - hold on; - plot(xin, yin, 'w.', 'markersize', 1); - - if verbose - fprintf('\n'); - end - - return - -function [h] = pcolor_ps(x, y, A); - - if nargin == 1 - A = x; - [n, m] = size(A); - xx = (0.5 : m + 0.5)'; - yy = (0.5 : n + 0.5)'; - elseif nargin == 3 - n = length(y); - m = length(x); - A = reshape(A, n, m); % just in case - xx = getcorners(x); - yy = getcorners(y); - else - error(sprintf('\n Error: pcolor_ps(): nargin = %d (expected 1 or 3)\n', nargin)); - end - - TMP = zeros(n + 1, m + 1); - TMP(1 : n, 1 : m) = A; - - if nargout == 0 - pcolor(xx, yy, TMP); - else - h = pcolor(xx, yy, TMP); - end - - return - -function [c] = getcorners(x) - - n = length(x); - c = zeros(n + 1, 1); - c(2 : n) = (x(2 : n) + x(1 : n - 1)) / 2; - c(1) = 2 * x(1) - c(2); - c(n + 1) = 2 * x(n) - c(n); - - return +function [h] = viewinterp(fin, fout, verbose) + + if nargin == 2 + verbose = 1; + end + + if verbose + fprintf('plotting data from "%s" and "%s"\n', fin, fout); + fprintf(' reading "%s"...', fin); + end + + data = load(fin); + xin = data(:, 1); + yin = data(:, 2); + + if verbose + fprintf('\n reading "%s"...', fout); + end + + data = load(fout); + x = data(:, 1); + y = data(:, 2); + z = data(:, 3); + clear data; + + if verbose + fprintf('\n'); + end + + if verbose + fprintf(' working out the grid dimensions...') + end + n = length(x); + if x(2) - x(1) ~= 0 & y(2) - y(1) == 0 + xfirst = 1; + xinc = x(2) > x(1); + if xinc + nx = min(find(diff(x) < 0)); + else + nx = min(find(diff(x) > 0)); + end + if mod(n, nx) ~= 0 + error(sprintf('\n Error: could not work out the grid size, n = %d, nx = %d, n / nx = %f\n', n, nx, n / nx)); + end + ny = n / nx; + x = x(1 : nx); + y = y(1 : nx : n); + z = reshape(z, nx, ny)'; + elseif x(2) - x(1) == 0 & y(2) - y(1) ~= 0 + xfirst = 0; + yinc = y(2) > y(1); + if yinc + ny = min(find(diff(y) < 0)); + else + ny = min(find(diff(y) > 0)); + end + if mod(n, ny) ~= 0 + error(sprintf('\n Error: could not work out the grid size, n = %d, ny = %d, n / ny = %.3f\n', n, ny, n / ny)); + end + nx = n / ny; + y = y(1 : ny); + x = x(1 : ny : n); + z = reshape(z, ny, nx); + else + error(' Error: not a rectangular grid'); + end + if verbose + if xfirst + fprintf('%d x %d, stored by rows\n', nx, ny); + else + fprintf('%d x %d, stored by columns\n', nx, ny); + end + end + + if verbose + fprintf(' plotting...'); + end + + h = pcolor_ps(x, y, z); + zrange = [min(min(z)) max(max(z))]; + caxis(zrange); + set(h, 'LineStyle', 'none'); + axis square; + hold on; + plot(xin, yin, 'w.', 'markersize', 1); + + if verbose + fprintf('\n'); + end + + return + +function [h] = pcolor_ps(x, y, A); + + if nargin == 1 + A = x; + [n, m] = size(A); + xx = (0.5 : m + 0.5)'; + yy = (0.5 : n + 0.5)'; + elseif nargin == 3 + n = length(y); + m = length(x); + A = reshape(A, n, m); % just in case + xx = getcorners(x); + yy = getcorners(y); + else + error(sprintf('\n Error: pcolor_ps(): nargin = %d (expected 1 or 3)\n', nargin)); + end + + TMP = zeros(n + 1, m + 1); + TMP(1 : n, 1 : m) = A; + + if nargout == 0 + pcolor(xx, yy, TMP); + else + h = pcolor(xx, yy, TMP); + end + + return + +function [c] = getcorners(x) + + n = length(x); + c = zeros(n + 1, 1); + c(2 : n) = (x(2 : n) + x(1 : n - 1)) / 2; + c(1) = 2 * x(1) - c(2); + c(n + 1) = 2 * x(n) - c(n); + + return diff --git a/autoarray/util/nn/src/nn/examples/5/README b/autoarray/util/nn/src/nn/examples/5/README index 8af1d6dd7..62447445d 100644 --- a/autoarray/util/nn/src/nn/examples/5/README +++ b/autoarray/util/nn/src/nn/examples/5/README @@ -1,12 +1,12 @@ -This example is run on elevation data obtained from digitised contours. -(Thanks to Maciej Sieczka, Institute of Plant Biology, Wroclaw University.) -It is characterised by strong clustering of data points and big gaps between -clusters. - -To reproduce the example, run "./test.sh" or "make". -To visualize, in Matlab run "viewexample" (which takes time to plot) or -"viewinterp('data.txt', 'nn.txt');". -To clean up, run "make clean". - -Good luck! -Pavel Sakov +This example is run on elevation data obtained from digitised contours. +(Thanks to Maciej Sieczka, Institute of Plant Biology, Wroclaw University.) +It is characterised by strong clustering of data points and big gaps between +clusters. + +To reproduce the example, run "./test.sh" or "make". +To visualize, in Matlab run "viewexample" (which takes time to plot) or +"viewinterp('data.txt', 'nn.txt');". +To clean up, run "make clean". + +Good luck! +Pavel Sakov diff --git a/autoarray/util/nn/src/nn/examples/5/data.txt b/autoarray/util/nn/src/nn/examples/5/data.txt index 6f9b72715..f6e582ef4 100644 --- a/autoarray/util/nn/src/nn/examples/5/data.txt +++ b/autoarray/util/nn/src/nn/examples/5/data.txt @@ -1,51492 +1,51492 @@ -593424.65 5685133.29 120.00 -593433.18 5685138.47 120.00 -593435.34 5685000.20 125.00 -593441.71 5685143.64 120.00 -593444.21 5685004.79 125.00 -593450.56 5685147.55 120.00 -593452.71 5684302.35 125.00 -593453.08 5685009.38 125.00 -593453.50 5684139.67 120.00 -593454.13 5684111.96 120.00 -593455.46 5683573.53 120.00 -593460.14 5684309.02 125.00 -593460.51 5685146.87 120.00 -593461.48 5684145.53 120.00 -593461.94 5685013.98 125.00 -593463.19 5684107.92 120.00 -593464.89 5683570.46 120.00 -593468.86 5684313.54 125.00 -593469.47 5684151.40 120.00 -593470.25 5685144.95 120.00 -593470.67 5685018.80 125.00 -593472.14 5684103.67 120.00 -593474.31 5683567.39 120.00 -593477.29 5684157.46 120.00 -593478.33 5684316.68 125.00 -593478.73 5685024.69 125.00 -593479.78 5684097.81 120.00 -593479.85 5685142.21 120.00 -593483.78 5683564.84 120.00 -593484.73 5684163.99 120.00 -593485.35 5684089.61 120.00 -593486.95 5685030.30 125.00 -593487.99 5684319.19 125.00 -593488.41 5684080.24 120.00 -593489.41 5685139.34 120.00 -593491.12 5684070.70 120.00 -593492.18 5684170.53 120.00 -593492.82 5684060.95 120.00 -593493.58 5683566.38 120.00 -593494.32 5684051.15 120.00 -593496.21 5685034.05 125.00 -593497.46 5684041.89 120.00 -593497.76 5684321.29 125.00 -593498.90 5685136.26 120.00 -593499.62 5684177.06 120.00 -593502.31 5684033.26 120.00 -593503.37 5683567.91 120.00 -593504.05 5683789.02 120.00 -593504.13 5683798.94 120.00 -593504.56 5683779.19 120.00 -593505.17 5683808.71 120.00 -593505.46 5685037.80 125.00 -593505.94 5684184.64 120.00 -593507.38 5684323.88 125.00 -593507.39 5683769.69 120.00 -593507.90 5683818.24 120.00 -593508.00 5684025.14 120.00 -593508.07 5685139.16 120.00 -593510.90 5683827.66 120.00 -593511.84 5683761.00 120.00 -593511.88 5684192.56 120.00 -593512.51 5684016.48 120.00 -593512.94 5683570.49 120.00 -593514.85 5684006.85 120.00 -593515.35 5685038.17 125.00 -593515.39 5685144.95 120.00 -593515.74 5683836.31 120.00 -593516.82 5684327.14 125.00 -593517.18 5683997.21 120.00 -593517.67 5684200.59 120.00 -593517.76 5683753.05 120.00 -593518.56 5683987.40 120.00 -593519.06 5685154.23 120.00 -593519.88 5683977.57 120.00 -593520.58 5683844.97 120.00 -593521.69 5683967.86 120.00 -593522.41 5684209.28 120.00 -593522.47 5683573.20 120.00 -593523.21 5685163.30 120.00 -593523.68 5683745.09 120.00 -593524.71 5680997.31 108.75 -593524.78 5683958.43 120.00 -593525.33 5685038.02 125.00 -593525.42 5683853.62 120.00 -593525.54 5681066.59 106.25 -593525.69 5681126.51 105.00 -593525.75 5684331.46 125.00 -593525.75 5681029.20 107.50 -593527.00 5680573.93 120.00 -593527.15 5684217.98 120.00 -593527.86 5683949.01 120.00 -593527.87 5685172.07 120.00 -593527.98 5680931.58 111.25 -593528.32 5680858.27 113.75 -593528.98 5680961.79 110.00 -593530.25 5683862.28 120.00 -593530.36 5683737.79 120.00 -593530.94 5683939.59 120.00 -593531.16 5680889.02 112.50 -593531.57 5680774.11 116.25 -593531.88 5684226.68 120.00 -593532.01 5683575.92 120.00 -593532.28 5680820.45 115.00 -593532.59 5683929.82 120.00 -593533.37 5681120.15 105.00 -593534.10 5684336.93 125.00 -593534.11 5683871.30 120.00 -593534.16 5680994.07 108.75 -593534.19 5683920.03 120.00 -593534.27 5685179.73 120.00 -593534.30 5685033.70 125.00 -593534.51 5681062.22 106.25 -593534.56 5681024.49 107.50 -593535.31 5680661.78 117.50 -593535.47 5680442.43 123.75 -593535.80 5683910.25 120.00 -593536.02 5680604.55 118.75 -593536.16 5683881.00 120.00 -593536.22 5680253.91 126.25 -593536.41 5680570.65 120.00 -593536.68 5680765.52 116.25 -593536.83 5684235.24 120.00 -593536.85 5680368.70 125.00 -593537.31 5680928.18 111.25 -593537.32 5683730.73 120.00 -593537.40 5683900.46 120.00 -593537.77 5680535.72 121.25 -593538.21 5683890.70 120.00 -593538.30 5680857.67 113.75 -593538.34 5680958.29 110.00 -593538.75 5680505.65 122.50 -593540.07 5680652.99 117.50 -593540.67 5685187.39 120.00 -593540.75 5680886.44 112.50 -593540.84 5680815.37 115.00 -593541.30 5680756.67 116.25 -593541.56 5683578.23 120.00 -593541.74 5680599.67 118.75 -593541.83 5684343.22 125.00 -593541.83 5681115.32 105.00 -593543.10 5684242.91 120.00 -593543.36 5681019.79 107.50 -593543.36 5680990.19 108.75 -593543.49 5681057.84 106.25 -593543.79 5685031.13 125.00 -593543.92 5680447.68 123.75 -593544.10 5680259.88 126.25 -593544.37 5680375.21 125.00 -593544.77 5683724.19 120.00 -593544.84 5680644.21 117.50 -593545.27 5680747.49 116.25 -593545.81 5680567.36 120.00 -593546.77 5680925.17 111.25 -593547.46 5680594.78 118.75 -593547.49 5685194.67 120.00 -593547.69 5680954.79 110.00 -593547.69 5680536.43 121.25 -593547.74 5680854.94 113.75 -593547.76 5680808.28 115.00 -593548.56 5680507.28 122.50 -593548.93 5684350.23 125.00 -593549.19 5680738.30 116.25 -593549.62 5684250.28 120.00 -593550.13 5680635.76 117.50 -593550.34 5680883.85 112.50 -593551.31 5683576.40 120.00 -593551.55 5681113.40 105.00 -593551.90 5680381.72 125.00 -593551.98 5680265.85 126.25 -593552.22 5683717.64 120.00 -593552.38 5680452.93 123.75 -593552.42 5681015.71 107.50 -593552.51 5680986.17 108.75 -593552.58 5681053.81 106.25 -593553.04 5680729.07 116.25 -593553.71 5685030.05 125.00 -593554.38 5685201.89 120.00 -593554.47 5680800.93 115.00 -593554.84 5680588.16 118.75 -593555.22 5680564.08 120.00 -593555.86 5680627.57 117.50 -593556.04 5684357.25 125.00 -593556.33 5680922.50 111.25 -593556.78 5680850.68 113.75 -593556.89 5680719.84 116.25 -593557.04 5680951.30 110.00 -593557.62 5680537.14 121.25 -593558.37 5684254.91 120.00 -593558.38 5680508.91 122.50 -593558.75 5680272.77 126.25 -593559.42 5680388.23 125.00 -593559.60 5680880.26 112.50 -593559.85 5683711.33 120.00 -593560.74 5680710.62 116.25 -593560.79 5680793.27 115.00 -593561.05 5683574.56 120.00 -593561.20 5680457.34 123.75 -593561.28 5685209.10 120.00 -593561.52 5681113.63 105.00 -593561.65 5680982.14 108.75 -593561.96 5681012.77 107.50 -593562.23 5680619.90 117.50 -593562.24 5681051.29 106.25 -593562.33 5680581.76 118.75 -593563.15 5684364.26 125.00 -593563.46 5680281.46 126.25 -593563.64 5685028.97 125.00 -593564.64 5680560.84 120.00 -593564.88 5680701.52 116.25 -593565.65 5680846.09 113.75 -593565.87 5680919.71 111.25 -593566.07 5685217.80 120.00 -593566.40 5680947.80 110.00 -593566.62 5680785.21 115.00 -593567.13 5684259.54 120.00 -593567.31 5680394.25 125.00 -593567.55 5680537.84 121.25 -593567.67 5683705.22 120.00 -593567.76 5685266.33 120.00 -593567.88 5685276.31 120.00 -593568.19 5680510.35 122.50 -593568.42 5685256.43 120.00 -593568.82 5680876.56 112.50 -593569.35 5680289.20 126.25 -593569.55 5680692.68 116.25 -593569.66 5685227.00 120.00 -593569.70 5680613.45 117.50 -593570.29 5685285.73 120.00 -593570.53 5685246.68 120.00 -593570.57 5681117.67 105.00 -593570.81 5680459.92 123.75 -593570.83 5683574.72 120.00 -593571.14 5685236.87 120.00 -593571.30 5684369.98 125.00 -593571.31 5680979.85 108.75 -593571.50 5681009.83 107.50 -593571.93 5685033.48 125.00 -593572.00 5681049.23 106.25 -593572.10 5680580.03 118.75 -593572.46 5680777.15 115.00 -593574.08 5680557.65 120.00 -593574.17 5680840.86 113.75 -593574.22 5680683.85 116.25 -593574.81 5685294.63 120.00 -593575.36 5680916.79 111.25 -593575.48 5683699.12 120.00 -593575.62 5680399.71 125.00 -593575.75 5680944.30 110.00 -593575.88 5684264.17 120.00 -593576.83 5680295.66 126.25 -593577.40 5680537.57 121.25 -593577.74 5680768.75 115.00 -593577.74 5680872.37 112.50 -593577.91 5685041.21 125.00 -593578.05 5680509.01 122.50 -593578.41 5680608.56 117.50 -593579.55 5681122.00 105.00 -593579.66 5684375.44 125.00 -593579.75 5685303.30 120.00 -593579.88 5685050.80 125.00 -593580.00 5683577.84 120.00 -593580.25 5680676.00 116.25 -593580.42 5680462.51 123.75 -593580.44 5685060.77 125.00 -593581.01 5685070.74 125.00 -593581.07 5681007.00 107.50 -593581.16 5680978.16 108.75 -593581.88 5680578.38 118.75 -593581.88 5681047.82 106.25 -593581.98 5685341.47 120.00 -593582.23 5680759.87 115.00 -593582.44 5680835.32 113.75 -593583.00 5685312.70 120.00 -593583.30 5683693.02 120.00 -593583.52 5680554.46 120.00 -593583.71 5685080.31 125.00 -593583.93 5680405.18 125.00 -593583.99 5684269.83 120.00 -593584.32 5680302.12 126.25 -593584.62 5685331.85 120.00 -593584.85 5680913.86 111.25 -593585.24 5680941.20 110.00 -593585.34 5680865.97 112.50 -593585.82 5679242.41 125.00 -593585.94 5685322.24 120.00 -593586.72 5680750.99 115.00 -593586.75 5685089.82 125.00 -593586.86 5685350.02 120.00 -593586.93 5680603.35 117.50 -593587.07 5680535.21 121.25 -593587.26 5680668.87 116.25 -593587.91 5680507.67 122.50 -593588.18 5683583.39 120.00 -593588.41 5684380.09 125.00 -593588.45 5681126.49 105.00 -593589.04 5680084.31 126.25 -593589.25 5680828.02 113.75 -593589.73 5680074.45 126.25 -593590.01 5680093.94 126.25 -593590.17 5680464.42 123.75 -593590.44 5680064.59 126.25 -593590.50 5683686.32 120.00 -593590.66 5681004.21 107.50 -593590.83 5680975.72 108.75 -593590.83 5680741.94 115.00 -593591.43 5680308.98 126.25 -593591.61 5679250.50 125.00 -593591.69 5680576.98 118.75 -593591.76 5681046.40 106.25 -593591.93 5684275.75 120.00 -593592.29 5680054.88 126.25 -593592.42 5680410.09 125.00 -593592.60 5685097.47 125.00 -593592.92 5680859.55 112.50 -593593.09 5683592.00 120.00 -593593.12 5680551.81 120.00 -593593.39 5680103.23 126.25 -593593.69 5685356.90 120.00 -593594.13 5680045.17 126.25 -593594.18 5680910.49 111.25 -593594.27 5680661.74 116.25 -593594.62 5680732.74 115.00 -593594.79 5680938.30 110.00 -593594.98 5680819.83 113.75 -593595.88 5680035.44 126.25 -593596.22 5680600.59 117.50 -593596.44 5683678.38 120.00 -593596.74 5680532.85 121.25 -593596.78 5680112.52 126.25 -593597.17 5683600.94 120.00 -593597.44 5681130.74 105.00 -593597.48 5680505.28 122.50 -593597.53 5680025.69 126.25 -593597.91 5684383.15 125.00 -593598.31 5679257.75 125.00 -593598.44 5680315.95 126.25 -593598.46 5680723.57 115.00 -593599.18 5680015.95 126.25 -593599.45 5683610.59 120.00 -593599.88 5684281.66 120.00 -593599.91 5680121.89 126.25 -593600.02 5680465.60 123.75 -593600.17 5685103.98 125.00 -593600.23 5681001.39 107.50 -593600.36 5680972.73 108.75 -593600.45 5683669.64 120.00 -593600.51 5680853.13 112.50 -593600.72 5680811.64 113.75 -593600.89 5683620.37 120.00 -593600.95 5681042.54 106.25 -593601.06 5680006.24 126.25 -593601.51 5680575.59 118.75 -593601.67 5683630.25 120.00 -593601.91 5683659.83 120.00 -593602.27 5685361.99 120.00 -593602.36 5680410.32 125.00 -593602.45 5683640.14 120.00 -593602.78 5680549.38 120.00 -593602.97 5680131.29 126.25 -593603.08 5680657.11 116.25 -593603.11 5679996.57 126.25 -593603.23 5683650.02 120.00 -593603.33 5680906.63 111.25 -593603.44 5680714.95 115.00 -593604.35 5680935.39 110.00 -593605.15 5679986.90 126.25 -593605.45 5680322.92 126.25 -593605.86 5679264.23 125.00 -593606.04 5680529.37 121.25 -593606.18 5680599.81 117.50 -593606.45 5680803.45 113.75 -593606.67 5680501.44 122.50 -593607.19 5679977.23 126.25 -593607.19 5681132.80 105.00 -593607.53 5684385.71 125.00 -593607.74 5685110.49 125.00 -593607.80 5684287.60 120.00 -593607.83 5680139.56 126.25 -593608.09 5680846.71 112.50 -593608.42 5680706.34 115.00 -593609.79 5680998.50 107.50 -593609.86 5680464.08 123.75 -593609.88 5679967.72 126.25 -593609.89 5680969.73 108.75 -593610.12 5681038.59 106.25 -593610.86 5685367.08 120.00 -593611.38 5680574.63 118.75 -593611.69 5680901.42 111.25 -593612.07 5680652.75 116.25 -593612.24 5680409.96 125.00 -593612.43 5680546.92 120.00 -593612.85 5679958.29 126.25 -593613.42 5679270.70 125.00 -593613.63 5680328.01 126.25 -593613.90 5680932.49 110.00 -593613.97 5680796.90 113.75 -593614.97 5680146.40 126.25 -593615.26 5680839.89 112.50 -593615.26 5680525.62 121.25 -593615.31 5680699.18 115.00 -593615.73 5680497.33 122.50 -593615.73 5684293.54 120.00 -593616.08 5685115.98 125.00 -593616.14 5680599.07 117.50 -593616.31 5681129.80 105.00 -593616.99 5679949.51 126.25 -593617.43 5684387.02 125.00 -593618.87 5680788.53 113.75 -593619.29 5681034.65 106.25 -593619.34 5680995.62 107.50 -593619.37 5680966.59 108.75 -593619.43 5680461.61 123.75 -593619.49 5680895.27 111.25 -593620.53 5685367.53 120.00 -593620.94 5679277.20 125.00 -593621.13 5680648.52 116.25 -593621.25 5680573.68 118.75 -593621.64 5680832.27 112.50 -593621.84 5680407.35 125.00 -593622.07 5680544.37 120.00 -593622.11 5680153.23 126.25 -593622.40 5680779.17 113.75 -593622.98 5680331.23 126.25 -593623.15 5684300.06 120.00 -593623.46 5680929.58 110.00 -593623.47 5680693.77 115.00 -593623.51 5679942.09 126.25 -593623.60 5680096.97 125.00 -593624.18 5680087.04 125.00 -593624.45 5685121.44 125.00 -593624.49 5680521.87 121.25 -593624.72 5680493.09 122.50 -593624.76 5680077.11 125.00 -593625.25 5681125.39 105.00 -593625.34 5680067.18 125.00 -593625.66 5680769.73 113.75 -593626.08 5680598.04 117.50 -593626.98 5680888.75 111.25 -593627.25 5680057.45 125.00 -593627.33 5684388.32 125.00 -593627.49 5681029.01 106.25 -593627.95 5680824.61 112.50 -593628.30 5679283.90 125.00 -593628.58 5680457.70 123.75 -593628.72 5680963.06 108.75 -593628.77 5680992.43 107.50 -593629.00 5680760.40 113.75 -593629.13 5680105.19 125.00 -593629.74 5680047.82 125.00 -593629.99 5684307.22 120.00 -593630.01 5680159.10 126.25 -593630.26 5680644.45 116.25 -593630.48 5685366.76 120.00 -593630.92 5679935.56 126.25 -593631.12 5680572.72 118.75 -593631.43 5680404.75 125.00 -593631.70 5680541.81 120.00 -593632.23 5680038.19 125.00 -593632.32 5680334.46 126.25 -593632.52 5680689.65 115.00 -593633.01 5680926.68 110.00 -593633.06 5680487.77 122.50 -593633.27 5685125.98 125.00 -593633.29 5681119.59 105.00 -593633.30 5680816.24 112.50 -593633.71 5680518.13 121.25 -593634.40 5680882.15 111.25 -593634.72 5680028.56 125.00 -593634.74 5680752.21 113.75 -593634.78 5680113.38 125.00 -593635.54 5681023.11 106.25 -593635.66 5679290.59 125.00 -593635.99 5680596.83 117.50 -593636.13 5680451.24 123.75 -593636.94 5680018.86 125.00 -593637.23 5684389.63 125.00 -593637.44 5680987.49 107.50 -593638.06 5680959.53 108.75 -593638.25 5684312.46 120.00 -593638.34 5679929.02 126.25 -593638.39 5680164.34 126.25 -593638.64 5680807.86 112.50 -593639.08 5680009.15 125.00 -593639.39 5680640.37 116.25 -593640.40 5685365.72 120.00 -593640.46 5680874.50 111.25 -593640.61 5680744.15 113.75 -593640.84 5680481.58 122.50 -593640.92 5681113.17 105.00 -593640.99 5680571.71 118.75 -593641.03 5680402.14 125.00 -593641.23 5679999.44 125.00 -593641.29 5680539.14 120.00 -593641.57 5680685.50 115.00 -593641.60 5680512.10 121.25 -593641.66 5680120.53 125.00 -593641.69 5680335.36 126.25 -593641.87 5680922.16 110.00 -593641.95 5680798.58 112.50 -593642.60 5685129.54 125.00 -593643.04 5679297.26 125.00 -593643.37 5679989.72 125.00 -593643.53 5681017.13 106.25 -593643.61 5680444.68 123.75 -593644.96 5680865.64 111.25 -593645.07 5680789.23 112.50 -593645.91 5680595.63 117.50 -593646.11 5680982.55 107.50 -593646.11 5680170.37 126.25 -593647.01 5684391.61 125.00 -593647.35 5681105.58 105.00 -593647.41 5680956.01 108.75 -593647.44 5684315.55 120.00 -593647.54 5679980.75 125.00 -593648.43 5680737.92 113.75 -593648.52 5680636.30 116.25 -593648.68 5680475.45 122.50 -593649.08 5680127.14 125.00 -593649.39 5680505.91 121.25 -593649.39 5680396.86 125.00 -593650.30 5685364.48 120.00 -593650.31 5680857.29 111.25 -593650.38 5680535.06 120.00 -593650.54 5679303.80 125.00 -593650.55 5680917.22 110.00 -593650.61 5680681.33 115.00 -593650.68 5680570.17 118.75 -593651.09 5680438.11 123.75 -593651.09 5680332.30 126.25 -593651.32 5681010.89 106.25 -593651.37 5680781.55 112.50 -593651.93 5685133.10 125.00 -593652.19 5679971.96 125.00 -593652.79 5680177.66 126.25 -593653.39 5681097.67 105.00 -593654.79 5680977.61 107.50 -593655.26 5680079.85 123.75 -593655.47 5680089.76 123.75 -593655.49 5680069.86 123.75 -593655.76 5680849.00 111.25 -593655.83 5680594.42 117.50 -593656.27 5680951.40 108.75 -593656.38 5680731.86 113.75 -593656.67 5680469.52 122.50 -593656.78 5684393.68 125.00 -593656.87 5680133.32 125.00 -593657.13 5680499.66 121.25 -593657.21 5679311.00 125.00 -593657.27 5684316.28 120.00 -593657.55 5680391.18 125.00 -593657.62 5680632.14 116.25 -593658.05 5681088.85 105.00 -593658.10 5679964.18 125.00 -593658.30 5680774.53 112.50 -593658.86 5680911.76 110.00 -593659.11 5681004.64 106.25 -593659.23 5680530.58 120.00 -593659.25 5680099.01 123.75 -593659.30 5680565.26 118.75 -593659.44 5680432.70 123.75 -593659.57 5680839.82 111.25 -593659.64 5680677.17 115.00 -593660.03 5680184.32 126.25 -593660.25 5685364.11 120.00 -593660.49 5680329.25 126.25 -593661.26 5685136.66 125.00 -593661.54 5680830.11 111.25 -593662.04 5679319.70 125.00 -593662.71 5681080.04 105.00 -593663.33 5680108.13 123.75 -593663.54 5680972.81 107.50 -593664.38 5680725.86 113.75 -593664.41 5680820.70 111.25 -593664.62 5680493.10 121.25 -593664.66 5680463.59 122.50 -593664.66 5680139.51 125.00 -593665.11 5680946.75 108.75 -593665.48 5680591.88 117.50 -593665.72 5680385.49 125.00 -593665.73 5679957.80 125.00 -593666.27 5680768.59 112.50 -593666.37 5680905.18 110.00 -593666.55 5684395.74 125.00 -593666.70 5680627.96 116.25 -593666.82 5684318.90 120.00 -593666.87 5679328.40 125.00 -593667.11 5680524.49 120.00 -593667.41 5680999.16 106.25 -593667.80 5680427.30 123.75 -593667.92 5680560.36 118.75 -593668.09 5680190.04 126.25 -593668.32 5680672.35 115.00 -593668.68 5680116.32 123.75 -593669.58 5680812.34 111.25 -593669.62 5681073.31 105.00 -593670.02 5680326.62 126.25 -593670.23 5685364.34 120.00 -593670.91 5679337.44 125.00 -593671.20 5685135.71 125.00 -593672.04 5680486.47 121.25 -593672.41 5680968.25 107.50 -593672.44 5680719.95 113.75 -593672.48 5680145.66 125.00 -593672.74 5680457.78 122.50 -593673.36 5679951.43 125.00 -593673.86 5680941.92 108.75 -593673.90 5680379.84 125.00 -593673.92 5680898.66 110.00 -593674.12 5679346.86 125.00 -593674.23 5680762.66 112.50 -593675.00 5680518.40 120.00 -593675.16 5680589.40 117.50 -593675.78 5680623.77 116.25 -593676.09 5680994.22 106.25 -593676.15 5680195.76 126.25 -593676.26 5684321.89 120.00 -593676.35 5680422.21 123.75 -593676.39 5684397.31 125.00 -593676.42 5680122.63 123.75 -593676.59 5680805.30 111.25 -593676.59 5680555.55 118.75 -593676.73 5680667.02 115.00 -593677.34 5679356.27 125.00 -593678.19 5681068.22 105.00 -593679.24 5680479.60 121.25 -593679.39 5679365.89 125.00 -593679.47 5679405.67 125.00 -593679.53 5679415.62 125.00 -593679.57 5680324.07 126.25 -593679.66 5679375.84 125.00 -593679.69 5679425.56 125.00 -593679.70 5679395.73 125.00 -593679.92 5679385.78 125.00 -593680.16 5679944.18 125.00 -593680.21 5685364.57 120.00 -593680.30 5680151.80 125.00 -593680.55 5680714.10 113.75 -593680.89 5680452.08 122.50 -593681.14 5685134.74 125.00 -593681.30 5680963.70 107.50 -593681.37 5679435.36 125.00 -593681.56 5680755.95 112.50 -593682.46 5680374.77 125.00 -593682.51 5680936.93 108.75 -593682.87 5684504.76 125.00 -593682.88 5680512.31 120.00 -593683.05 5679445.17 125.00 -593683.42 5680895.60 110.00 -593683.69 5680202.13 126.25 -593683.88 5684514.70 125.00 -593684.04 5680129.09 123.75 -593684.74 5684495.33 125.00 -593684.86 5680586.99 117.50 -593684.95 5680417.20 123.75 -593685.06 5680990.62 106.25 -593685.12 5680800.66 111.25 -593685.28 5680550.77 118.75 -593685.29 5680620.76 116.25 -593685.30 5680661.99 115.00 -593685.65 5684325.04 120.00 -593686.36 5684397.87 125.00 -593686.44 5680472.72 121.25 -593686.87 5679936.83 125.00 -593687.39 5681069.99 105.00 -593687.49 5679453.99 125.00 -593688.12 5680157.95 125.00 -593688.65 5680708.25 113.75 -593688.79 5684522.92 125.00 -593688.86 5680749.22 112.50 -593689.04 5684486.32 125.00 -593689.05 5680446.38 122.50 -593689.12 5680321.52 126.25 -593690.02 5685366.11 120.00 -593690.77 5680506.22 120.00 -593691.02 5680369.70 125.00 -593691.05 5680208.73 126.25 -593691.10 5685134.44 125.00 -593691.23 5680962.68 107.50 -593691.35 5680135.91 123.75 -593691.96 5680935.03 108.75 -593692.21 5679462.75 125.00 -593693.06 5680893.64 110.00 -593693.45 5680412.03 123.75 -593693.58 5679929.48 125.00 -593694.07 5680546.25 118.75 -593694.33 5680658.32 115.00 -593694.60 5680584.81 117.50 -593694.68 5680798.00 111.25 -593694.92 5680618.08 116.25 -593694.98 5684325.13 120.00 -593695.00 5680991.47 106.25 -593695.40 5680468.77 121.25 -593695.41 5684478.65 125.00 -593695.67 5681075.27 105.00 -593695.80 5684529.92 125.00 -593695.92 5680164.12 125.00 -593696.07 5684397.53 125.00 -593696.50 5680082.59 122.50 -593696.66 5680743.08 112.50 -593697.33 5680703.30 113.75 -593697.33 5680440.89 122.50 -593697.54 5679470.83 125.00 -593698.41 5680215.34 126.25 -593698.65 5680142.73 123.75 -593698.87 5680319.95 126.25 -593698.98 5680092.22 122.50 -593699.76 5685368.29 120.00 -593699.89 5680365.23 125.00 -593699.98 5680502.65 120.00 -593700.23 5680805.91 111.25 -593700.26 5679922.12 125.00 -593701.07 5685134.74 125.00 -593701.10 5680962.10 107.50 -593701.54 5680101.82 122.50 -593701.89 5680935.59 108.75 -593701.89 5680406.75 123.75 -593702.10 5684471.24 125.00 -593702.92 5680997.39 106.25 -593703.02 5680894.34 110.00 -593703.22 5681081.79 105.00 -593703.72 5680170.30 125.00 -593703.74 5680544.07 118.75 -593704.14 5684391.65 125.00 -593704.23 5684321.59 120.00 -593704.28 5680658.54 115.00 -593704.37 5684535.06 125.00 -593704.38 5680582.74 117.50 -593704.59 5680615.89 116.25 -593704.70 5680737.26 112.50 -593704.84 5680465.60 121.25 -593704.99 5680222.71 126.25 -593706.00 5680813.99 111.25 -593706.06 5680436.11 122.50 -593706.08 5679475.93 125.00 -593706.10 5680698.51 113.75 -593706.17 5680149.31 123.75 -593706.95 5679914.75 125.00 -593707.10 5680110.06 122.50 -593708.56 5684463.63 125.00 -593708.66 5680318.55 126.25 -593708.94 5680361.11 125.00 -593709.46 5680499.59 120.00 -593709.61 5685369.36 120.00 -593709.78 5681004.30 106.25 -593709.93 5681089.14 105.00 -593710.44 5680401.69 123.75 -593710.50 5680965.47 107.50 -593710.78 5685137.08 125.00 -593711.15 5680822.42 111.25 -593711.15 5684384.66 125.00 -593711.29 5680938.94 108.75 -593711.52 5680176.47 125.00 -593711.56 5680230.10 126.25 -593712.14 5680898.10 110.00 -593712.66 5680118.30 122.50 -593713.19 5681013.68 106.25 -593713.41 5684317.88 120.00 -593713.42 5680541.88 118.75 -593713.45 5684539.20 125.00 -593713.63 5679907.38 125.00 -593713.65 5680739.04 112.50 -593714.05 5680155.45 123.75 -593714.18 5680583.05 117.50 -593714.21 5680659.14 115.00 -593714.27 5680462.43 121.25 -593714.51 5680617.14 116.25 -593714.70 5679480.88 125.00 -593714.74 5684455.78 125.00 -593714.78 5680431.33 122.50 -593714.95 5680831.59 111.25 -593715.59 5680697.07 113.75 -593716.43 5681096.70 105.00 -593717.16 5680238.19 126.25 -593717.32 5681022.75 106.25 -593717.44 5684376.92 125.00 -593717.71 5680971.72 107.50 -593718.22 5680126.54 122.50 -593718.27 5680357.72 125.00 -593718.45 5680317.15 126.25 -593718.46 5680183.46 125.00 -593718.76 5680840.77 111.25 -593718.93 5680496.50 120.00 -593719.58 5685368.98 120.00 -593719.74 5680398.15 123.75 -593720.13 5685140.30 125.00 -593720.25 5680943.36 108.75 -593720.31 5679900.01 125.00 -593720.46 5680903.42 110.00 -593721.11 5680745.57 112.50 -593721.83 5681031.65 106.25 -593721.93 5680161.60 123.75 -593722.09 5684449.16 125.00 -593722.19 5680246.70 126.25 -593722.57 5684314.09 120.00 -593722.97 5680849.76 111.25 -593723.09 5680539.70 118.75 -593723.17 5681104.04 105.00 -593723.24 5684538.20 125.00 -593723.46 5680979.87 107.50 -593723.52 5680426.57 122.50 -593723.65 5680459.09 121.25 -593723.72 5679485.07 125.00 -593723.83 5680661.08 115.00 -593723.86 5680585.33 117.50 -593724.18 5680191.60 125.00 -593724.43 5680618.39 116.25 -593724.43 5680134.27 122.50 -593725.46 5680698.56 113.75 -593725.75 5680754.25 112.50 -593726.42 5681040.51 106.25 -593726.63 5684373.03 125.00 -593726.95 5679892.60 125.00 -593727.29 5680255.15 126.25 -593727.50 5680910.50 110.00 -593727.54 5680858.58 111.25 -593727.58 5680763.99 112.50 -593727.79 5680354.84 125.00 -593728.25 5680315.93 126.25 -593728.26 5680948.89 108.75 -593728.52 5685145.67 125.00 -593728.60 5680494.75 120.00 -593728.62 5680988.40 107.50 -593728.90 5680394.28 123.75 -593729.25 5680773.78 112.50 -593729.42 5680168.18 123.75 -593729.53 5685368.52 120.00 -593729.90 5680199.74 125.00 -593730.28 5684443.66 125.00 -593730.69 5681110.30 105.00 -593730.84 5680783.59 112.50 -593731.21 5680141.54 122.50 -593731.76 5681048.94 106.25 -593732.10 5684311.55 120.00 -593732.11 5680867.40 111.25 -593732.34 5680421.96 122.50 -593732.39 5680793.40 112.50 -593732.74 5679489.27 125.00 -593732.78 5680541.40 118.75 -593732.84 5680589.69 117.50 -593733.00 5680664.94 115.00 -593733.02 5680455.72 121.25 -593733.09 5684537.54 125.00 -593733.30 5680622.72 116.25 -593733.39 5680997.16 107.50 -593733.60 5680703.55 113.75 -593733.99 5680803.21 112.50 -593734.14 5680956.97 108.75 -593734.53 5679886.24 125.00 -593734.54 5680917.59 110.00 -593735.39 5680260.82 126.25 -593735.83 5685152.47 125.00 -593736.01 5680812.93 112.50 -593736.15 5684370.83 125.00 -593736.32 5680207.30 125.00 -593736.52 5680175.22 123.75 -593736.67 5680876.21 111.25 -593737.07 5681057.40 106.25 -593737.32 5680351.96 125.00 -593737.85 5680389.93 123.75 -593737.99 5680148.82 122.50 -593738.02 5680822.66 112.50 -593738.12 5680315.33 126.25 -593738.17 5681005.93 107.50 -593738.33 5685363.81 120.00 -593738.54 5680495.17 120.00 -593740.00 5681113.87 105.00 -593740.26 5684443.89 125.00 -593740.46 5680964.70 108.75 -593740.97 5684314.57 120.00 -593741.15 5680417.34 122.50 -593741.24 5680709.92 113.75 -593741.60 5681066.29 106.25 -593741.69 5680924.55 110.00 -593741.81 5679493.30 125.00 -593741.83 5680594.05 117.50 -593741.93 5680627.77 116.25 -593742.01 5680544.61 118.75 -593742.17 5680668.81 115.00 -593742.18 5680884.48 111.25 -593742.38 5680452.35 121.25 -593742.54 5680831.35 112.50 -593742.60 5679880.43 125.00 -593742.91 5684539.34 125.00 -593743.19 5680214.49 125.00 -593743.20 5680182.65 123.75 -593743.23 5685159.17 125.00 -593743.49 5680266.49 126.25 -593743.59 5681014.30 107.50 -593744.77 5680156.09 122.50 -593745.60 5684373.11 125.00 -593746.72 5680972.49 108.75 -593746.91 5680349.52 125.00 -593747.00 5680386.47 123.75 -593747.16 5685359.17 120.00 -593747.74 5680892.71 111.25 -593747.90 5680717.35 113.75 -593747.99 5680314.74 126.25 -593747.99 5680839.65 112.50 -593748.32 5680497.10 120.00 -593748.44 5680081.16 121.25 -593748.88 5680931.48 110.00 -593748.89 5680071.33 121.25 -593749.10 5681022.63 107.50 -593749.31 5681117.44 105.00 -593749.34 5681072.35 106.25 -593749.50 5684319.61 120.00 -593749.76 5680091.03 121.25 -593749.86 5680190.10 123.75 -593749.94 5684441.59 125.00 -593750.06 5680599.69 117.50 -593750.06 5680221.68 125.00 -593750.29 5680550.05 118.75 -593750.58 5680414.77 122.50 -593750.67 5679874.61 125.00 -593750.78 5680632.38 116.25 -593750.79 5685165.69 125.00 -593751.26 5680272.52 126.25 -593751.48 5680061.68 121.25 -593751.55 5680163.36 122.50 -593751.61 5680671.96 115.00 -593751.63 5679494.88 125.00 -593751.85 5680449.42 121.25 -593752.47 5680784.82 113.75 -593752.60 5684541.68 125.00 -593752.63 5680100.60 121.25 -593752.70 5680774.83 113.75 -593752.91 5680980.33 108.75 -593752.92 5680764.83 113.75 -593753.06 5680848.19 112.50 -593753.13 5680794.72 113.75 -593753.22 5680754.84 113.75 -593753.36 5684378.95 125.00 -593753.67 5680725.30 113.75 -593753.93 5680900.46 111.25 -593754.61 5680744.94 113.75 -593755.05 5680052.35 121.25 -593755.19 5681030.45 107.50 -593755.26 5680558.06 118.75 -593755.34 5680110.22 121.25 -593755.48 5680804.44 113.75 -593755.87 5680735.05 113.75 -593756.07 5680938.41 110.00 -593756.35 5685355.27 120.00 -593756.52 5680197.55 123.75 -593756.79 5684435.36 125.00 -593756.85 5680349.34 125.00 -593756.95 5680386.70 123.75 -593757.14 5680312.23 126.25 -593757.16 5684325.78 120.00 -593757.23 5680228.58 125.00 -593757.87 5681077.41 106.25 -593757.92 5680988.93 108.75 -593757.92 5680119.87 121.25 -593757.92 5680499.54 120.00 -593757.95 5680279.80 126.25 -593758.11 5679868.05 125.00 -593758.12 5680856.71 112.50 -593758.20 5680605.49 117.50 -593758.34 5680170.63 122.50 -593758.65 5680043.03 121.25 -593758.83 5684387.30 125.00 -593759.10 5681119.20 105.00 -593759.40 5680813.48 113.75 -593759.99 5680636.28 116.25 -593760.03 5685168.89 125.00 -593760.42 5680907.98 111.25 -593760.48 5680413.76 122.50 -593760.53 5680129.52 121.25 -593760.73 5680566.32 118.75 -593761.14 5684426.39 125.00 -593761.14 5680674.79 115.00 -593761.46 5679496.44 125.00 -593761.73 5680448.20 121.25 -593761.83 5684396.79 125.00 -593762.10 5684544.77 125.00 -593762.48 5680997.82 108.75 -593762.65 5681037.08 107.50 -593762.77 5684416.65 125.00 -593762.93 5684406.70 125.00 -593763.02 5680945.54 110.00 -593763.20 5680204.98 123.75 -593763.69 5680139.00 121.25 -593763.75 5680034.47 121.25 -593764.23 5680287.27 126.25 -593764.25 5684332.69 120.00 -593764.59 5680235.27 125.00 -593764.68 5680864.17 112.50 -593764.81 5680821.89 113.75 -593765.00 5680306.23 126.25 -593765.12 5680177.89 122.50 -593765.15 5679861.02 125.00 -593765.41 5680297.08 126.25 -593765.54 5685351.37 120.00 -593766.31 5680574.52 118.75 -593766.34 5680611.28 117.50 -593766.80 5680349.16 125.00 -593766.90 5680915.50 111.25 -593766.90 5680386.92 123.75 -593766.96 5680503.74 120.00 -593767.32 5681080.64 106.25 -593767.77 5681006.23 108.75 -593768.22 5680954.07 110.00 -593768.45 5680147.71 121.25 -593768.96 5681120.66 105.00 -593769.17 5680026.07 121.25 -593769.20 5680640.17 116.25 -593769.83 5685170.25 125.00 -593769.87 5680212.42 123.75 -593770.11 5681043.71 107.50 -593770.27 5680830.26 113.75 -593770.38 5680412.75 122.50 -593770.56 5684550.00 125.00 -593770.82 5680677.09 115.00 -593771.11 5679853.10 125.00 -593771.20 5680871.67 112.50 -593771.29 5679497.95 125.00 -593771.35 5684339.60 120.00 -593771.59 5680447.53 121.25 -593771.95 5680241.96 125.00 -593772.30 5680582.41 118.75 -593773.10 5680183.59 122.50 -593773.41 5680923.01 111.25 -593773.41 5680962.59 110.00 -593773.54 5685345.67 120.00 -593773.84 5680156.12 121.25 -593773.89 5680510.71 120.00 -593774.25 5681013.83 108.75 -593774.47 5680617.08 117.50 -593774.58 5680017.67 121.25 -593776.17 5680838.33 113.75 -593776.65 5679844.85 125.00 -593776.72 5680349.36 125.00 -593776.80 5680387.89 123.75 -593777.07 5681082.45 106.25 -593777.25 5680519.96 120.00 -593777.35 5680879.47 112.50 -593778.34 5680590.28 118.75 -593778.35 5680644.18 116.25 -593778.55 5680216.99 123.75 -593778.61 5680971.12 110.00 -593778.91 5684555.48 125.00 -593778.92 5681121.00 105.00 -593779.25 5681047.07 107.50 -593779.30 5680248.67 125.00 -593779.40 5680681.78 115.00 -593779.43 5680164.39 121.25 -593779.58 5680529.61 120.00 -593779.66 5684344.80 120.00 -593779.79 5685169.49 125.00 -593779.95 5680930.48 111.25 -593779.99 5680805.38 115.00 -593780.19 5680413.74 122.50 -593780.40 5680539.54 120.00 -593780.44 5680795.44 115.00 -593780.55 5680009.69 121.25 -593780.75 5685338.77 120.00 -593780.88 5680785.50 115.00 -593781.12 5679499.45 125.00 -593781.16 5681020.84 108.75 -593781.33 5680449.58 121.25 -593781.37 5680775.56 115.00 -593781.78 5680814.92 115.00 -593781.82 5679836.39 125.00 -593781.87 5680765.62 115.00 -593781.96 5680188.10 122.50 -593782.08 5680846.40 113.75 -593783.33 5680621.68 117.50 -593783.50 5680755.85 115.00 -593783.87 5680886.93 112.50 -593784.09 5680548.57 120.00 -593784.38 5680598.14 118.75 -593785.24 5680978.54 110.00 -593785.37 5679827.10 125.00 -593785.59 5680172.27 121.25 -593785.63 5680824.09 115.00 -593785.83 5680746.17 115.00 -593785.99 5680688.99 115.00 -593786.49 5680937.95 111.25 -593786.59 5680350.65 125.00 -593786.64 5680255.38 125.00 -593786.71 5680388.90 123.75 -593787.00 5680002.05 121.25 -593787.01 5681083.42 106.25 -593787.12 5684561.14 125.00 -593787.40 5680648.43 116.25 -593787.80 5685331.72 120.00 -593787.83 5680220.71 123.75 -593787.98 5680854.47 113.75 -593788.17 5680736.50 115.00 -593788.53 5684349.20 120.00 -593788.89 5681121.23 105.00 -593788.91 5679817.80 125.00 -593788.98 5681049.29 107.50 -593789.09 5680557.19 120.00 -593789.63 5680833.17 115.00 -593789.67 5685170.61 125.00 -593789.96 5680415.60 122.50 -593790.17 5680726.76 115.00 -593790.39 5681024.67 108.75 -593790.43 5680193.28 122.50 -593790.97 5679500.83 125.00 -593791.07 5680451.63 121.25 -593791.14 5680893.70 112.50 -593791.23 5680697.44 115.00 -593791.97 5680179.89 121.25 -593792.11 5680717.00 115.00 -593792.14 5680985.76 110.00 -593792.27 5680626.13 117.50 -593792.77 5680707.19 115.00 -593792.78 5680603.00 118.75 -593793.04 5680945.43 111.25 -593793.45 5679994.42 121.25 -593793.47 5679809.10 125.00 -593793.86 5680862.55 113.75 -593793.98 5680262.09 125.00 -593794.24 5685324.10 120.00 -593794.32 5680565.67 120.00 -593794.48 5684567.89 125.00 -593796.28 5680840.58 115.00 -593796.42 5680351.72 125.00 -593796.45 5680652.69 116.25 -593796.47 5680390.74 123.75 -593796.96 5681084.17 106.25 -593797.10 5680224.44 123.75 -593797.39 5684353.63 120.00 -593797.43 5680901.37 112.50 -593798.72 5681051.51 107.50 -593798.77 5681119.97 105.00 -593798.81 5680198.64 122.50 -593799.47 5680952.99 111.25 -593799.53 5685172.20 125.00 -593799.62 5681028.50 108.75 -593799.66 5680574.06 120.00 -593799.71 5680417.61 122.50 -593799.74 5680870.64 113.75 -593799.86 5679801.48 125.00 -593799.90 5679986.79 121.25 -593800.35 5680185.32 121.25 -593800.42 5680991.20 110.00 -593800.69 5685316.48 120.00 -593800.81 5680453.67 121.25 -593800.91 5679501.06 125.00 -593801.14 5680630.74 117.50 -593801.19 5680608.18 118.75 -593801.32 5680268.80 125.00 -593802.38 5684573.96 125.00 -593802.92 5680847.98 115.00 -593803.31 5680080.16 120.00 -593803.55 5680909.19 112.50 -593803.90 5680070.43 120.00 -593804.43 5680090.04 120.00 -593804.59 5680961.30 111.25 -593805.50 5680656.94 116.25 -593805.55 5680099.93 120.00 -593805.61 5680878.73 113.75 -593805.65 5680348.01 125.00 -593806.15 5684358.26 120.00 -593806.17 5680392.96 123.75 -593806.25 5679793.85 125.00 -593806.38 5680228.16 123.75 -593806.41 5680784.98 116.25 -593806.59 5680794.97 116.25 -593806.67 5680109.81 120.00 -593806.70 5680060.88 120.00 -593806.78 5680804.97 116.25 -593806.82 5679979.58 121.25 -593806.87 5680580.94 120.00 -593806.93 5681084.65 106.25 -593807.19 5680203.99 122.50 -593807.99 5680775.15 116.25 -593808.08 5680814.78 116.25 -593808.08 5680918.03 112.50 -593808.34 5685310.14 120.00 -593808.46 5680970.22 111.25 -593808.59 5681052.89 107.50 -593808.66 5681118.65 105.00 -593808.67 5680275.51 125.00 -593809.16 5680996.02 110.00 -593809.28 5680613.91 118.75 -593809.38 5685173.84 125.00 -593809.43 5680419.75 122.50 -593809.49 5681028.33 108.75 -593809.49 5680051.34 120.00 -593809.55 5680189.20 121.25 -593809.69 5680855.27 115.00 -593810.09 5680457.08 121.25 -593810.10 5680765.38 116.25 -593810.18 5680119.10 120.00 -593810.48 5680634.26 117.50 -593810.86 5679501.28 125.00 -593811.11 5680824.31 116.25 -593811.13 5684578.55 125.00 -593811.64 5680886.71 113.75 -593812.20 5680755.60 116.25 -593812.29 5680041.79 120.00 -593812.62 5680926.86 112.50 -593812.64 5679786.23 125.00 -593813.63 5680662.43 116.25 -593813.75 5679972.39 121.25 -593813.78 5680128.37 120.00 -593814.08 5680587.82 120.00 -593814.77 5680833.51 116.25 -593814.88 5680344.30 125.00 -593814.90 5684362.89 120.00 -593814.98 5680746.00 116.25 -593815.26 5680282.92 125.00 -593815.45 5680232.33 123.75 -593815.54 5680977.19 111.25 -593815.57 5680209.34 122.50 -593815.94 5680394.74 123.75 -593816.67 5680862.36 115.00 -593816.75 5685304.83 120.00 -593816.90 5681085.14 106.25 -593817.37 5680619.64 118.75 -593817.38 5680137.64 120.00 -593817.56 5680935.48 112.50 -593817.62 5680894.71 113.75 -593817.79 5680736.41 116.25 -593817.90 5681000.85 110.00 -593818.40 5680640.30 117.50 -593818.46 5680548.34 121.25 -593818.51 5681054.03 107.50 -593818.53 5681117.25 105.00 -593818.81 5680192.96 121.25 -593819.03 5679778.61 125.00 -593819.08 5680461.35 121.25 -593819.14 5680421.88 122.50 -593819.31 5685174.58 125.00 -593819.45 5681027.67 108.75 -593820.39 5680669.80 116.25 -593820.69 5684581.44 125.00 -593820.69 5679965.20 121.25 -593820.70 5680726.84 116.25 -593820.80 5679501.51 125.00 -593820.83 5680558.01 121.25 -593820.86 5680841.44 116.25 -593821.28 5680538.85 121.25 -593821.29 5680594.69 120.00 -593821.46 5680290.70 125.00 -593822.27 5680338.74 125.00 -593822.31 5680146.02 120.00 -593822.68 5680943.99 112.50 -593823.39 5680902.88 113.75 -593823.48 5684367.78 120.00 -593823.66 5680869.45 115.00 -593823.76 5680717.32 116.25 -593824.20 5680529.33 121.25 -593824.27 5680237.00 123.75 -593824.42 5680981.40 111.25 -593824.53 5680300.00 125.00 -593824.58 5680213.53 122.50 -593824.65 5680567.02 121.25 -593825.29 5680678.06 116.25 -593825.62 5685300.25 120.00 -593825.77 5680791.68 117.50 -593825.81 5679771.36 125.00 -593825.86 5680395.62 123.75 -593825.97 5680624.55 118.75 -593826.01 5680329.52 125.00 -593826.34 5680801.65 117.50 -593826.39 5680646.30 117.50 -593826.55 5680319.59 125.00 -593826.78 5680687.95 116.25 -593826.80 5680309.68 125.00 -593826.81 5680707.80 116.25 -593826.87 5681085.54 106.25 -593826.90 5681004.96 110.00 -593826.95 5680849.37 116.25 -593827.02 5680519.79 121.25 -593827.22 5680811.60 117.50 -593827.26 5680697.93 116.25 -593827.79 5680781.97 117.50 -593827.87 5680197.12 121.25 -593828.08 5679958.47 121.25 -593828.08 5680465.61 121.25 -593828.23 5680821.54 117.50 -593828.38 5681115.69 105.00 -593828.42 5681055.17 107.50 -593828.93 5680911.19 113.75 -593828.95 5685172.92 125.00 -593828.96 5680423.33 122.50 -593828.96 5680951.58 112.50 -593829.16 5680600.56 120.00 -593829.35 5681029.02 108.75 -593829.50 5680152.90 120.00 -593829.84 5680510.24 121.25 -593829.87 5680877.18 115.00 -593830.36 5680575.18 121.25 -593830.42 5680772.33 117.50 -593830.51 5684583.22 125.00 -593830.73 5684374.52 120.00 -593830.75 5679501.74 125.00 -593832.31 5680830.51 117.50 -593832.67 5680500.70 121.25 -593832.69 5680242.39 123.75 -593833.08 5680857.27 116.25 -593833.14 5679764.64 125.00 -593833.64 5680985.10 111.25 -593833.65 5680217.59 122.50 -593833.87 5680919.88 113.75 -593833.92 5680762.97 117.50 -593834.51 5680652.13 117.50 -593834.60 5680472.44 121.25 -593834.69 5680629.27 118.75 -593835.04 5685297.15 120.00 -593835.21 5680491.08 121.25 -593835.53 5679951.82 121.25 -593835.66 5680885.28 115.00 -593835.77 5680396.49 123.75 -593836.12 5680958.47 112.50 -593836.53 5680202.10 121.25 -593836.68 5680159.78 120.00 -593836.72 5681006.78 110.00 -593836.77 5680582.54 121.25 -593836.85 5681085.77 106.25 -593837.21 5680839.21 117.50 -593837.41 5680753.61 117.50 -593837.71 5680481.44 121.25 -593837.75 5684381.49 120.00 -593838.03 5685168.83 125.00 -593838.26 5681115.58 105.00 -593838.34 5681056.32 107.50 -593838.35 5680604.42 120.00 -593838.82 5680928.57 113.75 -593838.89 5680423.94 122.50 -593839.25 5681030.37 108.75 -593839.58 5684587.02 125.00 -593839.60 5680864.85 116.25 -593839.74 5679757.30 125.00 -593840.67 5679502.23 125.00 -593840.91 5680744.26 117.50 -593841.04 5680247.87 123.75 -593841.19 5680893.54 115.00 -593841.53 5680659.21 117.50 -593841.70 5680848.13 117.50 -593842.20 5679671.78 125.00 -593842.42 5680222.23 122.50 -593842.86 5679945.03 121.25 -593843.07 5680988.19 111.25 -593843.42 5680633.99 118.75 -593843.50 5680965.11 112.50 -593843.70 5679661.94 125.00 -593843.86 5680166.66 120.00 -593844.24 5679681.50 125.00 -593844.35 5684388.89 120.00 -593844.41 5680734.90 117.50 -593844.75 5685294.85 120.00 -593844.94 5680936.46 113.75 -593845.05 5679748.89 125.00 -593845.19 5680207.08 121.25 -593845.53 5680587.27 121.25 -593845.71 5680396.98 123.75 -593845.73 5679652.29 125.00 -593845.91 5680857.19 117.50 -593846.11 5680872.43 116.25 -593846.24 5679691.25 125.00 -593846.46 5685163.48 125.00 -593846.52 5680901.95 115.00 -593846.54 5681008.59 110.00 -593846.79 5681086.29 106.25 -593847.11 5680667.44 117.50 -593847.13 5680725.30 117.50 -593847.25 5684398.18 120.00 -593847.53 5680608.27 120.00 -593848.04 5684592.31 125.00 -593848.12 5679701.01 125.00 -593848.16 5684686.38 125.00 -593848.17 5681116.67 105.00 -593848.19 5681057.92 107.50 -593848.52 5684696.33 125.00 -593848.82 5680424.55 122.50 -593849.00 5679739.83 125.00 -593849.15 5681031.72 108.75 -593849.38 5680253.39 123.75 -593849.44 5684407.84 120.00 -593849.49 5684676.53 125.00 -593849.71 5684706.25 125.00 -593849.76 5679937.81 121.25 -593849.85 5680715.70 117.50 -593849.92 5679710.80 125.00 -593850.45 5679504.01 125.00 -593850.50 5679643.56 125.00 -593850.83 5680227.54 122.50 -593851.05 5680173.54 120.00 -593851.05 5680971.56 112.50 -593851.14 5680676.53 117.50 -593851.23 5680944.22 113.75 -593851.43 5679720.63 125.00 -593851.55 5680639.66 118.75 -593851.72 5684666.79 125.00 -593851.84 5680789.77 118.75 -593851.85 5680910.35 115.00 -593851.85 5680799.69 118.75 -593852.15 5680864.93 117.50 -593852.16 5679730.40 125.00 -593852.38 5680686.38 117.50 -593852.39 5680779.96 118.75 -593852.45 5684417.21 120.00 -593852.56 5680991.14 111.25 -593852.63 5680880.01 116.25 -593852.72 5680809.49 118.75 -593852.95 5680706.33 117.50 -593853.09 5680696.35 117.50 -593853.76 5684600.21 125.00 -593854.13 5680211.55 121.25 -593854.29 5680591.99 121.25 -593854.53 5685157.66 125.00 -593854.54 5684657.22 125.00 -593854.69 5685295.24 120.00 -593855.23 5680819.09 118.75 -593855.43 5684714.19 125.00 -593855.66 5680397.21 123.75 -593855.68 5679635.11 125.00 -593855.94 5680770.70 118.75 -593856.36 5681010.41 110.00 -593856.37 5681089.08 106.25 -593856.66 5679930.58 121.25 -593856.68 5684426.17 120.00 -593856.89 5680611.68 120.00 -593857.20 5680918.74 115.00 -593857.37 5684647.64 125.00 -593857.39 5680888.78 116.25 -593857.71 5680258.90 123.75 -593857.73 5680828.68 118.75 -593858.04 5681059.55 107.50 -593858.12 5681117.17 105.00 -593858.37 5680950.93 113.75 -593858.51 5684608.99 125.00 -593858.57 5680179.94 120.00 -593858.70 5680425.56 122.50 -593858.74 5680872.44 117.50 -593858.77 5681034.35 108.75 -593859.24 5680232.85 122.50 -593859.32 5680072.53 118.75 -593859.50 5680761.44 118.75 -593859.51 5680976.41 112.50 -593859.52 5680082.52 118.75 -593859.56 5680062.55 118.75 -593859.64 5680645.39 118.75 -593859.72 5680092.51 118.75 -593859.95 5684638.00 125.00 -593860.15 5680052.57 118.75 -593860.24 5679505.78 125.00 -593861.22 5680837.82 118.75 -593861.59 5684618.23 125.00 -593861.88 5684628.21 125.00 -593861.92 5685150.94 125.00 -593862.07 5680993.98 111.25 -593862.21 5684721.45 125.00 -593862.22 5679627.62 125.00 -593862.26 5680102.03 118.75 -593862.59 5680927.10 115.00 -593862.60 5680897.30 116.25 -593862.86 5680800.96 120.00 -593862.92 5680043.00 118.75 -593863.05 5680752.18 118.75 -593863.10 5680215.95 121.25 -593863.14 5680596.50 121.25 -593863.34 5680810.86 120.00 -593863.56 5679923.35 121.25 -593864.03 5680791.07 120.00 -593864.35 5684432.30 120.00 -593864.52 5680820.75 120.00 -593864.65 5685295.90 120.00 -593865.33 5680879.94 117.50 -593865.61 5680397.44 123.75 -593865.93 5680033.46 118.75 -593865.96 5681091.87 106.25 -593865.98 5680111.30 118.75 -593866.04 5680264.42 123.75 -593866.18 5681012.22 110.00 -593866.27 5680615.05 120.00 -593866.61 5680742.92 118.75 -593866.70 5680781.56 120.00 -593866.87 5680845.98 118.75 -593867.33 5680955.37 113.75 -593867.37 5680184.59 120.00 -593867.73 5680651.13 118.75 -593867.84 5680237.81 122.50 -593867.88 5681061.19 107.50 -593868.09 5681117.40 105.00 -593868.23 5680935.26 115.00 -593868.25 5680905.55 116.25 -593868.37 5681037.15 108.75 -593868.51 5680427.27 122.50 -593868.76 5679620.12 125.00 -593868.94 5680979.54 112.50 -593869.30 5685144.22 125.00 -593869.69 5680829.25 120.00 -593869.71 5680120.58 118.75 -593869.81 5679508.49 125.00 -593870.13 5680733.66 118.75 -593870.32 5684727.27 125.00 -593870.41 5680772.31 120.00 -593870.58 5679916.25 121.25 -593871.69 5680996.46 111.25 -593871.89 5680887.48 117.50 -593872.07 5680220.35 121.25 -593872.52 5680854.13 118.75 -593872.75 5680599.09 121.25 -593872.85 5680724.12 118.75 -593872.88 5680546.28 122.50 -593873.04 5684436.43 120.00 -593873.75 5680129.59 118.75 -593873.89 5680913.80 116.25 -593874.07 5680555.97 122.50 -593874.36 5680838.02 120.00 -593874.53 5680763.25 120.00 -593874.60 5685296.55 120.00 -593874.85 5680269.13 123.75 -593874.86 5680620.04 120.00 -593875.00 5680536.55 122.50 -593875.18 5680714.49 118.75 -593875.43 5680942.13 115.00 -593875.44 5681094.97 106.25 -593875.56 5680397.43 123.75 -593875.72 5681015.11 110.00 -593875.76 5679613.09 125.00 -593875.77 5680656.93 118.75 -593876.16 5680189.24 120.00 -593876.34 5680565.66 122.50 -593876.39 5680959.60 113.75 -593876.70 5685137.51 125.00 -593876.80 5680242.11 122.50 -593876.94 5680816.53 121.25 -593876.97 5680806.69 121.25 -593877.31 5680704.80 118.75 -593877.34 5681120.95 105.00 -593877.48 5680527.03 122.50 -593877.61 5679909.14 121.25 -593877.68 5680895.56 117.50 -593877.73 5681062.83 107.50 -593877.96 5681039.94 108.75 -593878.07 5680847.25 120.00 -593878.14 5680862.30 118.75 -593878.31 5680428.97 122.50 -593878.61 5680981.79 112.50 -593878.78 5680796.90 121.25 -593878.81 5684732.49 125.00 -593879.04 5680754.36 120.00 -593879.07 5680666.10 118.75 -593879.28 5680922.22 116.25 -593879.35 5679511.30 125.00 -593880.03 5680695.26 118.75 -593880.12 5680825.74 121.25 -593880.58 5680787.11 121.25 -593881.15 5680999.41 111.25 -593881.17 5680224.48 121.25 -593881.40 5680685.50 118.75 -593881.89 5680675.61 118.75 -593882.00 5680573.69 122.50 -593882.14 5680135.02 118.75 -593882.35 5680601.69 121.25 -593882.49 5680904.32 117.50 -593882.84 5684437.84 120.00 -593883.07 5680745.27 120.00 -593883.14 5680948.25 115.00 -593883.32 5680625.30 120.00 -593883.33 5679606.64 125.00 -593883.35 5680855.70 120.00 -593883.41 5680870.69 118.75 -593883.69 5680273.80 123.75 -593884.46 5685131.35 125.00 -593884.55 5680778.16 121.25 -593884.57 5685297.11 120.00 -593884.58 5680930.70 116.25 -593884.63 5679902.04 121.25 -593884.67 5680520.16 122.50 -593884.86 5681098.27 106.25 -593884.95 5680193.89 120.00 -593885.19 5681018.28 110.00 -593885.20 5680834.30 121.25 -593885.49 5680396.81 123.75 -593885.60 5680963.49 113.75 -593885.76 5680246.42 122.50 -593886.54 5680735.93 120.00 -593886.66 5681124.46 105.00 -593887.36 5681065.38 107.50 -593887.47 5681042.97 108.75 -593887.69 5684737.01 125.00 -593888.10 5680430.71 122.50 -593888.32 5680983.90 112.50 -593888.38 5680912.28 117.50 -593888.58 5680803.28 122.50 -593888.63 5680864.15 120.00 -593888.68 5680879.09 118.75 -593888.89 5679514.12 125.00 -593888.90 5680813.23 122.50 -593889.09 5680769.35 121.25 -593889.40 5680579.86 122.50 -593889.49 5680511.81 122.50 -593889.88 5680726.54 120.00 -593890.08 5680842.97 121.25 -593890.29 5680228.56 121.25 -593890.37 5681003.10 111.25 -593890.53 5680140.45 118.75 -593890.78 5680938.26 116.25 -593890.79 5679600.07 125.00 -593890.97 5680793.84 122.50 -593891.36 5680631.18 120.00 -593891.96 5680604.29 121.25 -593892.05 5679895.35 121.25 -593892.11 5680952.56 115.00 -593892.22 5680822.53 122.50 -593892.51 5684437.07 120.00 -593892.52 5680278.47 123.75 -593892.63 5680760.05 121.25 -593892.78 5680717.01 120.00 -593893.12 5680502.63 122.50 -593893.55 5685127.23 125.00 -593893.74 5680198.54 120.00 -593893.96 5680887.49 118.75 -593893.96 5680872.57 120.00 -593894.28 5681101.57 106.25 -593894.54 5685297.58 120.00 -593894.66 5681021.45 110.00 -593894.66 5680250.85 122.50 -593894.81 5680967.37 113.75 -593894.93 5680851.67 121.25 -593894.96 5680784.73 122.50 -593895.42 5680396.41 123.75 -593895.45 5680919.33 117.50 -593895.48 5680707.44 120.00 -593896.09 5681127.70 105.00 -593896.51 5680750.89 121.25 -593896.69 5681046.82 108.75 -593896.72 5680831.33 122.50 -593896.89 5680697.57 120.00 -593896.92 5681068.24 107.50 -593897.28 5680988.18 112.50 -593897.46 5684739.10 125.00 -593897.78 5679518.56 125.00 -593897.80 5680638.66 120.00 -593897.87 5679593.08 125.00 -593897.88 5680432.57 122.50 -593898.31 5680687.71 120.00 -593898.63 5680494.35 122.50 -593898.67 5680583.47 122.50 -593898.92 5680145.88 118.75 -593899.35 5680880.95 120.00 -593899.35 5680943.40 116.25 -593899.39 5680895.78 118.75 -593899.42 5680232.63 121.25 -593899.59 5681006.81 111.25 -593899.61 5680775.93 122.50 -593899.64 5679888.86 121.25 -593899.77 5680677.86 120.00 -593899.77 5680860.36 121.25 -593900.12 5680648.25 120.00 -593900.54 5680741.78 121.25 -593901.00 5680608.09 121.25 -593901.08 5680956.87 115.00 -593901.23 5680668.00 120.00 -593901.43 5680658.12 120.00 -593901.50 5680282.83 123.75 -593902.06 5684434.44 120.00 -593902.53 5680203.18 120.00 -593902.67 5685123.17 125.00 -593902.78 5680839.21 122.50 -593902.92 5680925.97 117.50 -593903.52 5680255.37 122.50 -593903.60 5681025.80 110.00 -593903.76 5681104.69 106.25 -593903.91 5680971.50 113.75 -593904.14 5680486.07 122.50 -593904.51 5685298.05 120.00 -593904.56 5680732.68 121.25 -593904.67 5680869.03 121.25 -593904.73 5680889.34 120.00 -593904.80 5680767.47 122.50 -593904.96 5679586.09 125.00 -593904.99 5680903.97 118.75 -593905.36 5680396.96 123.75 -593905.81 5681129.84 105.00 -593905.90 5681050.67 108.75 -593906.23 5680992.48 112.50 -593906.48 5681071.12 107.50 -593906.64 5679523.10 125.00 -593907.21 5684741.24 125.00 -593907.23 5679882.36 121.25 -593907.31 5680151.31 118.75 -593907.61 5680434.53 122.50 -593907.72 5680587.54 122.50 -593907.93 5680948.53 116.25 -593908.59 5680723.58 121.25 -593908.64 5680236.48 121.25 -593908.80 5681010.52 111.25 -593908.85 5680847.10 122.50 -593909.12 5680613.85 121.25 -593909.63 5680477.77 122.50 -593909.96 5680877.45 121.25 -593910.18 5680960.88 115.00 -593910.24 5680897.62 120.00 -593910.39 5680932.60 117.50 -593910.58 5680912.16 118.75 -593910.60 5680759.39 122.50 -593910.89 5680286.25 123.75 -593911.17 5679578.39 125.00 -593911.33 5680207.83 120.00 -593911.83 5680714.22 121.25 -593911.97 5684435.66 120.00 -593912.31 5681030.69 110.00 -593912.37 5680259.90 122.50 -593912.55 5685121.75 125.00 -593912.95 5680975.77 113.75 -593913.44 5681107.12 106.25 -593913.94 5680704.49 121.25 -593914.19 5680855.47 122.50 -593914.33 5685297.10 120.00 -593914.33 5680469.12 122.50 -593914.76 5679875.79 121.25 -593915.12 5679528.28 125.00 -593915.18 5681054.38 108.75 -593915.26 5680885.88 121.25 -593915.30 5680996.51 112.50 -593915.30 5680397.51 123.75 -593915.48 5680157.06 118.75 -593915.61 5680440.45 122.50 -593915.63 5681131.58 105.00 -593916.03 5681074.02 107.50 -593916.24 5680592.67 122.50 -593916.40 5680694.85 121.25 -593916.41 5680751.31 122.50 -593916.55 5680919.98 118.75 -593916.70 5680953.28 116.25 -593916.75 5679570.15 125.00 -593916.83 5680905.10 120.00 -593916.85 5680459.49 122.50 -593916.96 5684743.41 125.00 -593917.11 5680449.55 122.50 -593917.23 5680619.62 121.25 -593917.86 5680240.33 121.25 -593918.01 5681014.24 111.25 -593918.61 5680550.31 123.75 -593918.74 5680938.05 117.50 -593918.94 5680559.92 123.75 -593919.13 5680540.37 123.75 -593919.15 5680685.29 121.25 -593919.21 5680864.06 122.50 -593919.38 5680964.66 115.00 -593920.12 5680212.48 120.00 -593920.27 5680289.68 123.75 -593920.55 5680894.31 121.25 -593921.12 5681035.36 110.00 -593921.23 5680264.42 122.50 -593921.49 5684438.45 120.00 -593921.90 5680675.72 121.25 -593921.96 5680743.05 122.50 -593921.99 5680980.04 113.75 -593922.09 5680628.25 121.25 -593922.21 5679534.84 125.00 -593922.21 5685123.31 125.00 -593922.23 5679561.85 125.00 -593922.27 5679869.19 121.25 -593923.12 5681109.55 106.25 -593923.42 5680912.57 120.00 -593923.48 5680163.05 118.75 -593923.74 5680531.70 123.75 -593923.98 5685294.58 120.00 -593924.23 5680872.65 122.50 -593924.58 5681057.75 108.75 -593924.68 5680999.77 112.50 -593924.69 5680925.64 118.75 -593924.72 5680597.87 122.50 -593924.91 5680666.23 121.25 -593925.24 5680398.06 123.75 -593925.53 5681132.40 105.00 -593925.58 5681076.92 107.50 -593925.95 5680957.09 116.25 -593926.03 5680566.90 123.75 -593926.07 5680902.48 121.25 -593926.77 5680637.03 121.25 -593926.93 5684743.96 125.00 -593927.13 5679543.48 125.00 -593927.20 5680243.85 121.25 -593927.22 5681017.95 111.25 -593927.28 5680943.23 117.50 -593927.38 5680734.71 122.50 -593927.43 5680656.67 121.25 -593927.49 5679553.42 125.00 -593927.66 5680646.72 121.25 -593928.40 5680968.87 115.00 -593928.57 5680044.74 117.50 -593928.91 5680217.13 120.00 -593929.08 5680523.30 123.75 -593929.25 5680881.24 122.50 -593929.60 5680054.64 117.50 -593929.66 5680293.11 123.75 -593929.81 5679862.64 121.25 -593929.85 5680034.97 117.50 -593930.54 5680919.39 120.00 -593930.57 5681038.57 110.00 -593930.64 5680064.54 117.50 -593930.82 5680266.96 122.50 -593930.87 5684441.87 120.00 -593931.08 5680984.20 113.75 -593931.48 5680169.05 118.75 -593931.67 5680074.44 117.50 -593931.78 5685126.19 125.00 -593932.02 5680025.26 117.50 -593932.03 5680725.92 122.50 -593932.80 5681111.99 106.25 -593932.84 5680931.30 118.75 -593932.99 5680603.37 122.50 -593933.12 5680573.89 123.75 -593933.46 5685291.53 120.00 -593933.99 5681061.12 108.75 -593934.06 5681003.03 112.50 -593934.20 5680015.54 117.50 -593934.66 5680793.79 123.75 -593934.85 5680515.19 123.75 -593934.91 5680716.52 122.50 -593935.13 5680399.12 123.75 -593935.13 5681079.82 107.50 -593935.19 5680960.90 116.25 -593935.26 5680906.30 121.25 -593935.32 5680783.86 123.75 -593935.50 5681132.63 105.00 -593935.83 5680083.49 117.50 -593936.02 5680803.62 123.75 -593936.23 5680947.64 117.50 -593936.59 5680706.71 122.50 -593936.61 5681021.16 111.25 -593936.69 5680246.98 121.25 -593936.87 5680887.11 122.50 -593936.90 5684744.51 125.00 -593937.38 5680973.15 115.00 -593937.51 5679856.27 121.25 -593937.90 5680221.36 120.00 -593938.11 5680774.50 123.75 -593938.88 5680813.15 123.75 -593938.97 5680296.73 123.75 -593939.13 5680697.09 122.50 -593939.24 5680924.23 120.00 -593939.48 5680175.03 118.75 -593940.00 5680092.52 117.50 -593940.03 5681041.78 110.00 -593940.25 5684445.29 120.00 -593940.37 5680580.69 123.75 -593940.41 5680987.79 113.75 -593940.48 5680269.34 122.50 -593940.48 5680609.91 122.50 -593940.63 5680507.09 123.75 -593940.88 5685130.11 125.00 -593940.98 5680936.95 118.75 -593942.09 5680687.63 122.50 -593942.57 5680765.61 123.75 -593942.58 5681113.96 106.25 -593942.63 5685287.59 120.00 -593943.45 5681006.29 112.50 -593943.59 5681063.86 108.75 -593944.00 5680821.19 123.75 -593944.18 5680101.56 117.50 -593944.44 5680964.70 116.25 -593944.69 5681082.73 107.50 -593944.80 5680908.99 121.25 -593944.98 5680400.54 123.75 -593945.04 5681135.43 105.00 -593945.21 5679849.90 121.25 -593945.31 5680951.81 117.50 -593946.02 5680890.10 122.50 -593946.17 5681023.84 111.25 -593946.18 5680250.11 121.25 -593946.25 5680977.65 115.00 -593946.62 5680678.77 122.50 -593946.74 5680756.59 123.75 -593946.88 5684744.58 125.00 -593947.08 5680225.19 120.00 -593947.50 5680929.74 120.00 -593947.95 5680587.15 123.75 -593947.98 5680616.46 122.50 -593948.06 5680180.15 118.75 -593948.29 5680300.36 123.75 -593948.45 5680500.94 123.75 -593949.06 5680110.21 117.50 -593949.13 5680942.61 118.75 -593949.53 5685135.11 125.00 -593949.62 5684448.71 120.00 -593949.65 5681044.40 110.00 -593949.74 5680991.39 113.75 -593949.86 5680747.14 123.75 -593950.13 5680271.71 122.50 -593951.14 5680669.91 122.50 -593951.57 5680737.42 123.75 -593951.67 5680827.53 123.75 -593951.98 5685284.10 120.00 -593952.19 5680727.49 123.75 -593952.42 5681115.60 106.25 -593953.07 5681008.63 112.50 -593953.11 5679843.81 121.25 -593953.23 5681066.50 108.75 -593953.35 5680717.60 123.75 -593953.86 5680968.04 116.25 -593954.24 5681085.60 107.50 -593954.35 5680118.65 117.50 -593954.38 5680955.99 117.50 -593954.38 5680403.51 123.75 -593954.53 5681138.48 105.00 -593954.55 5680910.96 121.25 -593954.73 5680623.75 122.50 -593954.81 5680707.77 123.75 -593955.52 5680593.61 123.75 -593955.67 5680661.05 122.50 -593955.71 5680980.45 115.00 -593955.74 5681026.52 111.25 -593955.85 5679663.13 121.25 -593955.94 5680889.33 122.50 -593955.95 5680252.14 121.25 -593956.15 5679673.12 121.25 -593956.26 5680229.02 120.00 -593956.49 5680933.03 120.00 -593956.65 5680185.26 118.75 -593956.71 5680495.41 123.75 -593956.87 5684744.47 125.00 -593957.12 5679653.26 121.25 -593957.38 5680698.16 123.75 -593957.96 5679682.84 121.25 -593958.14 5680301.79 123.75 -593958.17 5685140.11 125.00 -593958.50 5680945.02 118.75 -593958.73 5680651.70 122.50 -593959.04 5684452.00 120.00 -593959.20 5680994.59 113.75 -593959.41 5681046.50 110.00 -593959.45 5680632.02 122.50 -593959.53 5679643.72 121.25 -593959.64 5680127.08 117.50 -593959.94 5680273.17 122.50 -593959.95 5680688.54 123.75 -593960.38 5680831.32 123.75 -593960.47 5680641.90 122.50 -593961.34 5679838.15 121.25 -593961.67 5685282.19 120.00 -593962.26 5679691.73 121.25 -593962.27 5681117.24 106.25 -593962.86 5681010.28 112.50 -593963.15 5681067.59 108.75 -593963.17 5680599.95 123.75 -593963.43 5680970.75 116.25 -593963.50 5680407.51 123.75 -593963.54 5680959.84 117.50 -593963.78 5681136.99 105.00 -593964.09 5681087.21 107.50 -593964.30 5680912.78 121.25 -593965.07 5680680.02 123.75 -593965.15 5680490.13 123.75 -593965.24 5680190.38 118.75 -593965.29 5680886.03 122.50 -593965.40 5681028.82 111.25 -593965.43 5680232.86 120.00 -593965.45 5680135.10 117.50 -593965.48 5680982.31 115.00 -593965.78 5680253.93 121.25 -593966.01 5679636.11 121.25 -593966.34 5680559.42 125.00 -593966.41 5680934.00 120.00 -593966.85 5684744.55 125.00 -593966.91 5680549.54 125.00 -593967.60 5685143.37 125.00 -593968.07 5680302.92 123.75 -593968.07 5679699.86 121.25 -593968.35 5680946.17 118.75 -593968.67 5684454.64 120.00 -593968.73 5680997.63 113.75 -593969.18 5681048.60 110.00 -593969.29 5679832.13 121.25 -593969.84 5680274.10 122.50 -593970.29 5680671.55 123.75 -593970.30 5680832.16 123.75 -593970.63 5680567.35 125.00 -593971.01 5680540.97 125.00 -593971.63 5685281.52 120.00 -593972.04 5680604.46 123.75 -593972.21 5681118.08 106.25 -593972.48 5679628.50 121.25 -593972.52 5680142.10 117.50 -593972.52 5680411.71 123.75 -593972.66 5681011.94 112.50 -593972.88 5681132.93 105.00 -593973.09 5681068.57 108.75 -593973.36 5680971.92 116.25 -593973.42 5680484.62 123.75 -593973.52 5680960.23 117.50 -593973.90 5680910.14 121.25 -593973.94 5681088.81 107.50 -593974.22 5679707.73 121.25 -593974.42 5680194.30 118.75 -593974.58 5680882.47 122.50 -593974.98 5680235.23 120.00 -593975.11 5681030.87 111.25 -593975.28 5680983.97 115.00 -593975.61 5680255.73 121.25 -593975.71 5680663.22 123.75 -593976.30 5680934.66 120.00 -593976.64 5679825.36 121.25 -593976.83 5684744.78 125.00 -593977.04 5680533.11 125.00 -593977.09 5685146.45 125.00 -593977.17 5680779.36 125.00 -593977.88 5680574.10 125.00 -593978.03 5680302.30 123.75 -593978.20 5680947.33 118.75 -593978.37 5684456.90 120.00 -593978.54 5680999.09 113.75 -593978.91 5681050.81 110.00 -593978.98 5679620.91 121.25 -593979.59 5680149.11 117.50 -593979.75 5680274.95 122.50 -593980.22 5680833.01 123.75 -593980.44 5680788.11 125.00 -593980.60 5679715.42 121.25 -593980.92 5680608.97 123.75 -593981.05 5680478.23 123.75 -593981.11 5685284.52 120.00 -593981.42 5680416.17 123.75 -593981.55 5680770.44 125.00 -593981.57 5681128.04 105.00 -593982.17 5681118.62 106.25 -593982.28 5680655.75 123.75 -593982.46 5681013.54 112.50 -593983.04 5681069.50 108.75 -593983.29 5680973.09 116.25 -593983.46 5680907.39 121.25 -593983.50 5680960.62 117.50 -593983.67 5680198.07 118.75 -593983.70 5680878.55 122.50 -593983.83 5681090.19 107.50 -593984.32 5679818.96 121.25 -593984.83 5681032.92 111.25 -593984.88 5680236.27 120.00 -593985.05 5680527.61 125.00 -593985.23 5680984.20 115.00 -593985.55 5680256.17 121.25 -593985.72 5679613.54 121.25 -593985.85 5680761.49 125.00 -593985.99 5680932.33 120.00 -593986.05 5680579.38 125.00 -593986.67 5680156.11 117.50 -593986.82 5684745.00 125.00 -593986.89 5685147.30 125.00 -593986.93 5679723.15 121.25 -593988.00 5680301.53 123.75 -593988.08 5680947.67 118.75 -593988.23 5684458.45 120.00 -593988.48 5681053.66 110.00 -593988.52 5680999.55 113.75 -593988.78 5680648.21 123.75 -593988.81 5680472.00 123.75 -593989.09 5680792.15 125.00 -593989.68 5680275.31 122.50 -593989.79 5680613.48 123.75 -593989.85 5680830.62 123.75 -593990.05 5680752.48 125.00 -593990.23 5681123.09 105.00 -593990.31 5680420.63 123.75 -593990.56 5685287.71 120.00 -593991.95 5681118.38 106.25 -593992.01 5679812.58 121.25 -593992.23 5680873.43 122.50 -593992.29 5681014.99 112.50 -593992.46 5679606.16 121.25 -593992.74 5680742.98 125.00 -593992.78 5680903.89 121.25 -593992.93 5680201.84 118.75 -593992.99 5681070.39 108.75 -593993.20 5679730.94 121.25 -593993.25 5680973.26 116.25 -593993.47 5680960.46 117.50 -593993.74 5680163.12 117.50 -593993.75 5681091.28 107.50 -593993.80 5680522.97 125.00 -593994.08 5680021.53 116.25 -593994.20 5680733.18 125.00 -593994.51 5681035.15 111.25 -593994.62 5680031.51 116.25 -593994.77 5680237.31 120.00 -593994.81 5680723.26 125.00 -593994.94 5680464.37 123.75 -593995.01 5680640.45 123.75 -593995.07 5680011.73 116.25 -593995.18 5680984.42 115.00 -593995.26 5680582.99 125.00 -593995.35 5680041.48 116.25 -593995.55 5680256.09 121.25 -593995.70 5680930.16 120.00 -593995.83 5680621.06 123.75 -593996.24 5680630.66 123.75 -593996.61 5680713.53 125.00 -593996.67 5680051.39 116.25 -593996.68 5684745.94 125.00 -593996.86 5685146.80 125.00 -593996.92 5680428.01 123.75 -593997.94 5680002.15 116.25 -593997.96 5680300.77 123.75 -593997.99 5680947.36 118.75 -593998.05 5681056.51 110.00 -593998.09 5684460.00 120.00 -593998.16 5680796.20 125.00 -593998.51 5681000.03 113.75 -593998.88 5681118.15 105.00 -593999.19 5680060.90 116.25 -593999.46 5679738.72 121.25 -593999.47 5680828.05 123.75 -593999.47 5680704.05 125.00 -593999.52 5679599.17 121.25 -593999.62 5680275.67 122.50 -593999.62 5679806.11 121.25 -594000.07 5680455.85 123.75 -594000.21 5685288.49 120.00 -594000.55 5681113.32 106.25 -594000.81 5679992.57 116.25 -594001.15 5680869.05 122.50 -594001.51 5680436.59 123.75 -594002.03 5681016.84 112.50 -594002.10 5680168.35 117.50 -594002.10 5680900.40 121.25 -594002.19 5680205.61 118.75 -594002.27 5680446.32 123.75 -594002.59 5680518.41 125.00 -594002.94 5681071.28 108.75 -594003.23 5680972.67 116.25 -594003.40 5680959.40 117.50 -594003.59 5680695.01 125.00 -594003.67 5681092.38 107.50 -594004.02 5680587.54 125.00 -594004.10 5680069.61 116.25 -594004.17 5681037.45 111.25 -594004.66 5680238.36 120.00 -594005.12 5680984.65 115.00 -594005.54 5680256.02 121.25 -594005.66 5680929.86 120.00 -594005.73 5679746.50 121.25 -594006.22 5684748.90 125.00 -594006.83 5685146.29 125.00 -594007.06 5679799.45 121.25 -594007.54 5681113.20 105.00 -594007.62 5681059.35 110.00 -594007.64 5680945.83 118.75 -594007.90 5680299.76 123.75 -594007.94 5680797.81 125.00 -594007.95 5684461.56 120.00 -594007.98 5679593.84 121.25 -594008.48 5681000.78 113.75 -594008.73 5680686.60 125.00 -594008.99 5680825.17 123.75 -594009.02 5680078.31 116.25 -594009.15 5681108.25 106.25 -594009.56 5680276.02 122.50 -594010.06 5685286.84 120.00 -594010.24 5680865.01 122.50 -594010.42 5679755.25 121.25 -594010.95 5680172.89 117.50 -594011.42 5680896.90 121.25 -594011.43 5680513.95 125.00 -594011.63 5681019.40 112.50 -594012.11 5680206.16 118.75 -594012.41 5680592.79 125.00 -594012.78 5681073.00 108.75 -594013.21 5680973.05 116.25 -594013.38 5680959.27 117.50 -594013.59 5681093.48 107.50 -594013.84 5681039.75 111.25 -594014.45 5680086.68 116.25 -594014.49 5679764.37 121.25 -594014.51 5679792.78 121.25 -594014.55 5680239.40 120.00 -594014.97 5680678.87 125.00 -594015.04 5680985.13 115.00 -594015.52 5680256.15 121.25 -594015.52 5680928.71 120.00 -594015.93 5684751.20 125.00 -594016.20 5681108.26 105.00 -594016.43 5679588.51 121.25 -594016.66 5685144.70 125.00 -594016.93 5680942.73 118.75 -594017.14 5685443.45 120.00 -594017.24 5681061.96 110.00 -594017.59 5679783.35 121.25 -594017.75 5679773.81 121.25 -594017.76 5681103.19 106.25 -594017.77 5680798.43 125.00 -594017.79 5680298.34 123.75 -594017.79 5685453.25 120.00 -594017.81 5684463.11 120.00 -594018.45 5681001.54 113.75 -594018.52 5680822.29 123.75 -594019.06 5685433.65 120.00 -594019.49 5680276.38 122.50 -594019.56 5680861.69 122.50 -594019.69 5685463.04 120.00 -594020.00 5685287.50 120.00 -594020.08 5680176.82 117.50 -594020.40 5680509.80 125.00 -594020.52 5680094.62 116.25 -594020.80 5680598.04 125.00 -594021.00 5680894.21 121.25 -594021.23 5681021.95 112.50 -594021.55 5685424.08 120.00 -594021.79 5680671.68 125.00 -594022.10 5680206.38 118.75 -594022.61 5681074.77 108.75 -594023.19 5680973.72 116.25 -594023.38 5680959.27 117.50 -594023.51 5681094.57 107.50 -594023.55 5681041.76 111.25 -594024.41 5685471.81 120.00 -594024.44 5680240.44 120.00 -594024.80 5680987.10 115.00 -594024.86 5681103.31 105.00 -594024.88 5679583.18 121.25 -594025.30 5680926.81 120.00 -594025.42 5680257.51 121.25 -594025.72 5684753.16 125.00 -594026.36 5681098.12 106.25 -594026.38 5685142.46 125.00 -594026.59 5680102.57 116.25 -594026.67 5685415.51 120.00 -594026.84 5680942.95 118.75 -594027.19 5681062.81 110.00 -594027.61 5680797.03 125.00 -594027.67 5684464.66 120.00 -594027.68 5680296.93 123.75 -594027.85 5680605.04 125.00 -594028.29 5681003.21 113.75 -594028.33 5680821.68 123.75 -594029.11 5680664.96 125.00 -594029.35 5680860.06 122.50 -594029.40 5680275.85 122.50 -594029.43 5680180.23 117.50 -594029.60 5680506.14 125.00 -594029.95 5685288.31 120.00 -594030.47 5685479.61 120.00 -594030.71 5680892.20 121.25 -594030.83 5681024.51 112.50 -594031.78 5685406.94 120.00 -594032.09 5680206.61 118.75 -594032.56 5681075.59 108.75 -594032.72 5681091.73 107.50 -594032.72 5680110.46 116.25 -594033.16 5680974.40 116.25 -594033.34 5680959.92 117.50 -594033.40 5681043.08 111.25 -594033.52 5681098.37 105.00 -594033.71 5679578.59 121.25 -594034.33 5680241.48 120.00 -594034.45 5680612.43 125.00 -594034.55 5680989.06 115.00 -594034.91 5681092.97 106.25 -594034.98 5680927.79 120.00 -594035.31 5680258.87 121.25 -594035.43 5684755.38 125.00 -594035.61 5680657.54 125.00 -594036.11 5685140.21 125.00 -594036.60 5685398.20 120.00 -594036.73 5680943.40 118.75 -594037.14 5681063.66 110.00 -594037.17 5684467.24 120.00 -594037.46 5680796.29 125.00 -594037.58 5680295.86 123.75 -594037.67 5685486.52 120.00 -594038.11 5681005.08 113.75 -594038.28 5680822.11 123.75 -594038.78 5680183.65 117.50 -594038.80 5680502.47 125.00 -594039.29 5680274.81 122.50 -594039.30 5680860.25 122.50 -594039.52 5685290.58 120.00 -594039.70 5680620.76 125.00 -594040.20 5680117.09 116.25 -594040.62 5681025.74 112.50 -594040.63 5680891.45 121.25 -594041.23 5680649.34 125.00 -594041.27 5685389.38 120.00 -594041.63 5681087.23 107.50 -594042.09 5680206.84 118.75 -594042.18 5681093.42 105.00 -594042.52 5681076.40 108.75 -594042.91 5680976.37 116.25 -594042.99 5679574.88 121.25 -594043.18 5680630.07 125.00 -594043.24 5680639.75 125.00 -594043.24 5681044.40 111.25 -594043.31 5680960.66 117.50 -594043.37 5681087.68 106.25 -594043.67 5685379.82 120.00 -594044.18 5680242.84 120.00 -594044.38 5680990.52 115.00 -594044.58 5680930.42 120.00 -594044.66 5684759.20 125.00 -594045.06 5685493.17 120.00 -594045.09 5685369.94 120.00 -594045.21 5680260.23 121.25 -594045.75 5685359.99 120.00 -594045.86 5685138.06 125.00 -594045.87 5684472.13 120.00 -594046.28 5685350.02 120.00 -594046.51 5680945.08 118.75 -594047.03 5681062.53 110.00 -594047.33 5680797.38 125.00 -594047.49 5680297.12 123.75 -594047.56 5685340.16 120.00 -594047.57 5680748.15 126.25 -594047.66 5680498.07 125.00 -594047.68 5680123.73 116.25 -594047.94 5681006.95 113.75 -594048.03 5680187.31 117.50 -594048.15 5680823.00 123.75 -594048.41 5680921.53 120.00 -594048.42 5680739.48 126.25 -594048.65 5685294.62 120.00 -594049.17 5680274.44 122.50 -594049.24 5680860.45 122.50 -594049.81 5685330.44 120.00 -594050.03 5681081.84 107.50 -594050.33 5680893.19 121.25 -594050.55 5681025.96 112.50 -594050.83 5681088.48 105.00 -594051.84 5681082.40 106.25 -594052.08 5680207.07 118.75 -594052.16 5685320.74 120.00 -594052.28 5679571.25 121.25 -594052.45 5681077.08 108.75 -594052.55 5680979.00 116.25 -594052.78 5680755.85 126.25 -594053.07 5680962.69 117.50 -594053.09 5681045.55 111.25 -594053.74 5685498.10 120.00 -594053.89 5684763.01 125.00 -594054.00 5680244.40 120.00 -594054.14 5680992.17 115.00 -594054.57 5684477.03 120.00 -594054.62 5685301.60 120.00 -594054.80 5685311.12 120.00 -594055.11 5680261.57 121.25 -594055.15 5680130.37 116.25 -594055.80 5685137.12 125.00 -594055.83 5680733.84 126.25 -594056.01 5680947.74 118.75 -594056.43 5680493.48 125.00 -594056.91 5681061.07 110.00 -594056.91 5680191.80 117.50 -594057.07 5680799.35 125.00 -594057.27 5680924.89 120.00 -594057.40 5680298.38 123.75 -594057.81 5680825.41 123.75 -594057.85 5681008.02 113.75 -594058.42 5681076.43 107.50 -594058.55 5680862.77 122.50 -594059.01 5680763.06 126.25 -594059.04 5680893.26 121.25 -594059.04 5680275.63 122.50 -594059.49 5681083.53 105.00 -594060.13 5684485.05 120.00 -594060.44 5681077.34 106.25 -594060.49 5681026.12 112.50 -594061.37 5681072.58 108.75 -594061.81 5680209.16 118.75 -594062.26 5679570.76 121.25 -594062.30 5680137.34 116.25 -594062.42 5685503.03 120.00 -594062.45 5680980.37 116.25 -594062.80 5680964.96 117.50 -594062.97 5681044.50 111.25 -594063.59 5684763.16 125.00 -594063.70 5680994.93 115.00 -594063.82 5680245.95 120.00 -594064.39 5680729.64 126.25 -594064.65 5680488.23 125.00 -594064.72 5680885.08 121.25 -594065.02 5680262.90 121.25 -594065.02 5684493.75 120.00 -594065.28 5680951.26 118.75 -594065.37 5680018.29 115.00 -594065.65 5680028.25 115.00 -594065.74 5685136.18 125.00 -594065.80 5680196.28 117.50 -594065.83 5680929.97 120.00 -594066.38 5680038.22 115.00 -594066.62 5680008.38 115.00 -594066.76 5680801.50 125.00 -594066.82 5681060.19 110.00 -594066.94 5680868.11 122.50 -594067.11 5680048.19 115.00 -594067.34 5680299.43 123.75 -594067.47 5680827.82 123.75 -594067.51 5681072.41 107.50 -594067.84 5681008.56 113.75 -594067.86 5679998.46 115.00 -594068.17 5681078.62 105.00 -594068.38 5680764.74 126.25 -594068.91 5680276.83 122.50 -594069.11 5680144.66 116.25 -594069.33 5681072.81 106.25 -594069.35 5680057.88 115.00 -594069.92 5684502.45 120.00 -594070.08 5679988.82 115.00 -594070.29 5681068.08 108.75 -594070.42 5681026.18 112.50 -594070.73 5680480.41 125.00 -594071.18 5680886.39 121.25 -594071.50 5680211.63 118.75 -594072.17 5680876.41 122.50 -594072.24 5679570.27 121.25 -594072.30 5680067.43 115.00 -594072.30 5685504.26 120.00 -594072.36 5680981.74 116.25 -594072.51 5680745.83 127.00 -594072.53 5680967.23 117.50 -594072.84 5681043.45 111.25 -594073.39 5680996.83 115.00 -594073.49 5684761.84 125.00 -594073.55 5680728.23 126.25 -594073.66 5680247.40 120.00 -594074.35 5679979.78 115.00 -594074.35 5680935.14 120.00 -594074.55 5680954.79 118.75 -594074.69 5680200.76 117.50 -594074.81 5684511.15 120.00 -594074.92 5680264.23 121.25 -594075.39 5680076.92 115.00 -594075.70 5685136.12 125.00 -594075.92 5680151.99 116.25 -594076.24 5680804.47 125.00 -594076.78 5680831.28 123.75 -594076.81 5680472.60 125.00 -594076.81 5681060.41 110.00 -594076.83 5681068.81 107.50 -594076.89 5681073.79 105.00 -594077.32 5680299.93 123.75 -594077.76 5680766.43 126.25 -594077.79 5681009.42 113.75 -594078.01 5680893.63 121.25 -594078.61 5679970.74 115.00 -594078.79 5680278.02 122.50 -594078.87 5681069.98 106.25 -594079.23 5681063.65 108.75 -594079.35 5684520.01 120.00 -594079.57 5680463.17 125.00 -594080.29 5680085.63 115.00 -594080.35 5681026.23 112.50 -594080.59 5680215.46 118.75 -594081.57 5680875.95 122.50 -594081.84 5680433.86 125.00 -594082.00 5680453.57 125.00 -594082.16 5679569.06 121.25 -594082.20 5680443.75 125.00 -594082.22 5685505.39 120.00 -594082.26 5680983.10 116.25 -594082.32 5680969.12 117.50 -594082.66 5680730.61 126.25 -594082.66 5680423.99 125.00 -594082.72 5681042.41 111.25 -594082.75 5684529.40 120.00 -594083.14 5680939.82 120.00 -594083.16 5680158.84 116.25 -594083.34 5680997.06 115.00 -594083.39 5684760.51 125.00 -594083.51 5680248.77 120.00 -594083.57 5680414.14 125.00 -594083.58 5680205.25 117.50 -594084.12 5680957.09 118.75 -594084.48 5680901.19 121.25 -594084.82 5680265.58 121.25 -594085.10 5680404.36 125.00 -594085.20 5680094.34 115.00 -594085.67 5685136.70 125.00 -594085.67 5681069.16 105.00 -594085.79 5680807.18 125.00 -594086.03 5680834.98 123.75 -594086.16 5684538.78 120.00 -594086.49 5681066.44 107.50 -594086.62 5680394.57 125.00 -594086.78 5681060.81 110.00 -594087.28 5680766.24 126.25 -594087.30 5680300.43 123.75 -594087.74 5681010.42 113.75 -594088.15 5680384.79 125.00 -594088.55 5681067.54 106.25 -594088.66 5680279.21 122.50 -594089.02 5680220.83 118.75 -594089.19 5681064.40 108.75 -594089.56 5684548.16 120.00 -594089.67 5680375.01 125.00 -594090.29 5681026.29 112.50 -594090.95 5680165.11 116.25 -594090.96 5680908.75 121.25 -594091.31 5680102.23 115.00 -594091.42 5680874.58 122.50 -594091.43 5680734.25 126.25 -594091.76 5680365.46 125.00 -594092.06 5679567.74 121.25 -594092.13 5685506.52 120.00 -594092.14 5680984.67 116.25 -594092.16 5680943.97 120.00 -594092.23 5680970.34 117.50 -594092.47 5680209.73 117.50 -594092.59 5681042.15 111.25 -594092.97 5684557.54 120.00 -594093.28 5680997.36 115.00 -594093.29 5684759.19 125.00 -594093.36 5680250.14 120.00 -594093.98 5680958.18 118.75 -594094.66 5680267.33 121.25 -594095.27 5680838.68 123.75 -594095.38 5680809.76 125.00 -594095.44 5685138.43 125.00 -594095.63 5681068.72 105.00 -594096.08 5680763.24 126.25 -594096.43 5681065.71 107.50 -594096.76 5681061.33 110.00 -594097.00 5684566.67 120.00 -594097.28 5680300.94 123.75 -594097.45 5680226.19 118.75 -594097.49 5680357.38 125.00 -594097.59 5680110.01 115.00 -594097.69 5681011.41 113.75 -594098.10 5680915.60 121.25 -594098.18 5681067.58 106.25 -594098.51 5680280.51 122.50 -594098.74 5680171.37 116.25 -594099.15 5681065.16 108.75 -594099.44 5680739.40 126.25 -594100.21 5681025.92 112.50 -594101.04 5684575.80 120.00 -594101.29 5680875.01 122.50 -594101.77 5680213.22 117.50 -594101.89 5680946.10 120.00 -594101.99 5679566.84 121.25 -594102.01 5680986.24 116.25 -594102.03 5680972.30 117.50 -594102.08 5685506.33 120.00 -594102.22 5680757.01 126.25 -594102.46 5681043.29 111.25 -594103.14 5684757.56 125.00 -594103.20 5680998.09 115.00 -594103.22 5680251.51 120.00 -594103.22 5680349.31 125.00 -594103.32 5680747.82 126.25 -594103.83 5680959.27 118.75 -594104.50 5680269.01 121.25 -594104.88 5680812.64 125.00 -594105.05 5685141.15 125.00 -594105.08 5684584.93 120.00 -594105.14 5680839.77 123.75 -594105.25 5681071.04 105.00 -594105.90 5681067.61 107.50 -594106.10 5680921.52 121.25 -594106.70 5681062.10 110.00 -594106.84 5680229.47 118.75 -594106.90 5680177.02 116.25 -594107.03 5680112.05 115.00 -594107.26 5680301.49 123.75 -594107.64 5681012.40 113.75 -594107.75 5681070.39 106.25 -594108.35 5680281.98 122.50 -594109.02 5681066.67 108.75 -594109.11 5684594.05 120.00 -594110.14 5681025.52 112.50 -594110.46 5680343.01 125.00 -594111.16 5680876.26 122.50 -594111.23 5680216.32 117.50 -594111.69 5680947.87 120.00 -594111.96 5680986.92 116.25 -594111.97 5679567.18 121.25 -594111.99 5680972.71 117.50 -594112.04 5685505.68 120.00 -594112.33 5681044.43 111.25 -594112.98 5684755.90 125.00 -594113.07 5680252.89 120.00 -594113.13 5680998.83 115.00 -594113.15 5684603.18 120.00 -594113.68 5680960.43 118.75 -594114.32 5685144.75 125.00 -594114.44 5681074.71 105.00 -594114.46 5680269.87 121.25 -594114.81 5680812.86 125.00 -594115.05 5680840.72 123.75 -594115.05 5681071.57 107.50 -594115.27 5680924.68 121.25 -594116.23 5680179.13 116.25 -594116.41 5680232.37 118.75 -594116.49 5681064.06 110.00 -594116.92 5681074.25 106.25 -594116.96 5680113.21 115.00 -594117.08 5680303.29 123.75 -594117.63 5681012.74 113.75 -594118.18 5680283.46 122.50 -594118.86 5681068.41 108.75 -594119.37 5680338.70 125.00 -594119.46 5684610.66 120.00 -594120.06 5681025.11 112.50 -594120.50 5680879.65 122.50 -594120.69 5680219.39 117.50 -594121.58 5680949.07 120.00 -594121.96 5680987.03 116.25 -594121.96 5679567.51 121.25 -594121.98 5685504.81 120.00 -594121.98 5680972.92 117.50 -594122.20 5681045.42 111.25 -594122.83 5684754.25 125.00 -594122.87 5681080.03 105.00 -594122.92 5680254.26 120.00 -594123.05 5680999.57 115.00 -594123.24 5685149.24 125.00 -594123.47 5680961.73 118.75 -594124.39 5680270.91 121.25 -594124.46 5681074.89 107.50 -594124.57 5680838.64 123.75 -594124.74 5680813.08 125.00 -594125.09 5680926.34 121.25 -594125.75 5680176.06 116.25 -594125.82 5681078.77 106.25 -594125.97 5680235.28 118.75 -594126.20 5680109.49 115.00 -594126.28 5681066.02 110.00 -594126.91 5680305.10 123.75 -594127.38 5684616.59 120.00 -594127.62 5681012.96 113.75 -594128.01 5680284.93 122.50 -594128.28 5680334.38 125.00 -594128.76 5681069.28 108.75 -594129.47 5680883.88 122.50 -594129.99 5681024.86 112.50 -594130.28 5680222.09 117.50 -594131.49 5681085.04 105.00 -594131.53 5680948.98 120.00 -594131.84 5685503.28 120.00 -594131.92 5680386.26 126.25 -594131.94 5680973.47 117.50 -594131.95 5679567.85 121.25 -594131.95 5680987.14 116.25 -594132.14 5681045.46 111.25 -594132.15 5685153.74 125.00 -594132.41 5680376.29 126.25 -594132.70 5684752.69 125.00 -594132.77 5680255.63 120.00 -594132.89 5680366.32 126.25 -594132.97 5681000.30 115.00 -594133.02 5681079.77 107.50 -594133.39 5680961.73 118.75 -594133.66 5680170.17 116.25 -594133.92 5680835.24 123.75 -594134.15 5681084.17 106.25 -594134.23 5680272.67 121.25 -594134.37 5680395.73 126.25 -594134.56 5680811.95 125.00 -594134.90 5680928.00 121.25 -594135.42 5680105.62 115.00 -594135.57 5680238.05 118.75 -594136.14 5681065.51 110.00 -594136.49 5684620.63 120.00 -594136.75 5680306.83 123.75 -594137.32 5680330.36 125.00 -594137.58 5681012.67 113.75 -594137.85 5680286.40 122.50 -594138.10 5680404.98 126.25 -594138.11 5680888.82 122.50 -594138.12 5681092.41 105.00 -594138.69 5681068.53 108.75 -594139.20 5680358.59 126.25 -594139.86 5680224.79 117.50 -594139.91 5681025.30 112.50 -594140.84 5681085.97 107.50 -594141.07 5685158.23 125.00 -594141.17 5680163.57 116.25 -594141.42 5680948.25 120.00 -594141.68 5681090.70 106.25 -594141.70 5685501.76 120.00 -594141.83 5680414.24 126.25 -594141.85 5680974.53 117.50 -594141.93 5679568.25 121.25 -594141.95 5680987.25 116.25 -594142.07 5681045.50 111.25 -594142.58 5684751.24 125.00 -594142.60 5680830.65 123.75 -594142.62 5680257.00 120.00 -594142.68 5680999.14 115.00 -594143.14 5680960.41 118.75 -594143.52 5679984.86 113.75 -594143.70 5680923.46 121.25 -594144.06 5680274.42 121.25 -594144.07 5680100.74 115.00 -594144.31 5680810.04 125.00 -594144.51 5681100.06 105.00 -594145.35 5679994.44 113.75 -594145.41 5680239.80 118.75 -594145.50 5680350.85 126.25 -594145.56 5680423.49 126.25 -594145.97 5684623.76 120.00 -594146.03 5681064.09 110.00 -594146.39 5680326.39 125.00 -594146.74 5680307.03 123.75 -594147.31 5680155.73 116.25 -594147.42 5681010.94 113.75 -594147.64 5679975.75 113.75 -594147.70 5680287.61 122.50 -594147.92 5680889.13 122.50 -594148.45 5681066.41 108.75 -594148.66 5681092.17 107.50 -594148.87 5681097.63 106.25 -594149.23 5680003.17 113.75 -594149.69 5680223.73 117.50 -594149.84 5681025.74 112.50 -594149.99 5685162.72 125.00 -594151.01 5680945.56 120.00 -594151.27 5681107.35 105.00 -594151.50 5680971.98 117.50 -594151.57 5685500.24 120.00 -594151.76 5679966.64 113.75 -594151.80 5680343.11 126.25 -594151.91 5679568.64 121.25 -594151.95 5680987.36 116.25 -594152.00 5681045.54 111.25 -594152.13 5680827.78 123.75 -594152.16 5680918.26 121.25 -594152.17 5680094.89 115.00 -594152.19 5680996.21 115.00 -594152.46 5684749.80 125.00 -594152.47 5680258.37 120.00 -594152.74 5680957.92 118.75 -594153.10 5680147.58 116.25 -594153.90 5680276.17 121.25 -594154.06 5680808.12 125.00 -594154.28 5680428.06 126.25 -594155.25 5680241.54 118.75 -594155.44 5684626.89 120.00 -594155.48 5680322.48 125.00 -594155.62 5680884.41 122.50 -594155.84 5681062.22 110.00 -594156.10 5681104.51 106.25 -594156.48 5681098.37 107.50 -594156.73 5680307.23 123.75 -594157.27 5681009.20 113.75 -594157.31 5679958.46 113.75 -594157.58 5680008.66 113.75 -594157.64 5680287.84 122.50 -594157.95 5685168.57 125.00 -594158.32 5681065.14 108.75 -594158.61 5680139.25 116.25 -594158.82 5681113.86 105.00 -594158.92 5680220.57 117.50 -594159.71 5681025.32 112.50 -594160.04 5680338.10 126.25 -594160.22 5680912.43 121.25 -594160.28 5680089.04 115.00 -594160.60 5680942.86 120.00 -594161.13 5685502.79 120.00 -594161.16 5680969.42 117.50 -594161.30 5685539.59 120.00 -594161.41 5680984.43 116.25 -594161.51 5680953.53 118.75 -594161.66 5680824.92 123.75 -594161.68 5681043.31 111.25 -594161.71 5680993.31 115.00 -594161.89 5679569.15 121.25 -594162.00 5685549.47 120.00 -594162.28 5680260.00 120.00 -594162.34 5684748.36 125.00 -594162.36 5680877.16 122.50 -594162.57 5681112.05 106.25 -594163.29 5680432.34 126.25 -594163.67 5680130.63 116.25 -594163.79 5680277.62 121.25 -594163.87 5680806.63 125.00 -594164.01 5679951.05 113.75 -594164.33 5685530.08 120.00 -594164.41 5681104.41 107.50 -594164.42 5685558.72 120.00 -594164.49 5681121.78 105.00 -594165.07 5680320.01 125.00 -594165.08 5684629.43 120.00 -594165.09 5680243.27 118.75 -594165.16 5685175.48 125.00 -594165.82 5681062.04 110.00 -594165.94 5680014.15 113.75 -594166.21 5685520.30 120.00 -594166.69 5685510.63 120.00 -594166.72 5680307.43 123.75 -594167.07 5681007.26 113.75 -594167.47 5680215.46 117.50 -594167.58 5680288.06 122.50 -594168.26 5680083.03 115.00 -594168.29 5680906.60 121.25 -594168.30 5681064.74 108.75 -594168.34 5681120.20 106.25 -594168.55 5681130.88 105.00 -594168.72 5680122.00 116.25 -594169.42 5680334.69 126.25 -594169.54 5681023.83 112.50 -594169.85 5680939.17 120.00 -594169.89 5680948.21 118.75 -594169.96 5680870.74 122.50 -594170.56 5680966.03 117.50 -594170.72 5679943.63 113.75 -594170.76 5680980.90 116.25 -594171.34 5680990.83 115.00 -594171.35 5681041.06 111.25 -594171.39 5680822.92 123.75 -594171.73 5685565.52 120.00 -594171.86 5679569.83 121.25 -594172.03 5680261.93 120.00 -594172.10 5684747.45 125.00 -594172.36 5685182.40 125.00 -594172.77 5680435.08 126.25 -594173.03 5680112.98 116.25 -594173.69 5680278.96 121.25 -594173.73 5680805.44 125.00 -594173.78 5681139.35 105.00 -594173.86 5681106.45 107.50 -594174.34 5680208.56 117.50 -594174.55 5680240.07 118.75 -594174.66 5680317.54 125.00 -594174.86 5684631.41 120.00 -594175.00 5681127.60 106.25 -594175.78 5681061.57 110.00 -594175.88 5680015.19 113.75 -594176.11 5680076.83 115.00 -594176.58 5680901.09 121.25 -594176.72 5680307.63 123.75 -594176.74 5681004.73 113.75 -594177.16 5681068.09 108.75 -594177.27 5680386.81 127.00 -594177.47 5679936.26 113.75 -594177.53 5680288.29 122.50 -594178.05 5680865.07 122.50 -594178.13 5680104.68 116.25 -594178.80 5680331.28 126.25 -594178.99 5680935.23 120.00 -594179.23 5681147.70 105.00 -594179.36 5681022.34 112.50 -594179.37 5680946.13 118.75 -594179.57 5685189.31 125.00 -594179.95 5680962.61 117.50 -594179.96 5685570.81 120.00 -594180.00 5680200.38 117.50 -594180.11 5680977.36 116.25 -594180.37 5684753.04 125.00 -594181.05 5680988.73 115.00 -594181.18 5681039.90 111.25 -594181.24 5680821.46 123.75 -594181.79 5680263.85 120.00 -594181.83 5679570.50 121.25 -594181.95 5681134.77 106.25 -594182.63 5680234.56 118.75 -594182.65 5680436.43 126.25 -594183.58 5680804.12 125.00 -594183.59 5680280.30 121.25 -594183.84 5681106.57 107.50 -594183.95 5680070.63 115.00 -594184.43 5680316.99 125.00 -594184.55 5679929.21 113.75 -594184.64 5684633.40 120.00 -594184.68 5681156.05 105.00 -594184.87 5680895.58 121.25 -594185.37 5681073.77 108.75 -594185.66 5681060.10 110.00 -594185.66 5685197.22 125.00 -594185.67 5680192.19 117.50 -594185.82 5680016.20 113.75 -594186.43 5681002.30 113.75 -594186.58 5680099.32 116.25 -594186.59 5684760.77 125.00 -594186.70 5680307.93 123.75 -594187.04 5680860.82 122.50 -594187.47 5680288.52 122.50 -594187.74 5680930.47 120.00 -594188.60 5680330.27 126.25 -594189.18 5681020.86 112.50 -594189.24 5680945.15 118.75 -594189.31 5685574.30 120.00 -594189.46 5680973.81 116.25 -594189.48 5680959.66 117.50 -594189.85 5680227.66 118.75 -594190.08 5680183.40 117.50 -594190.95 5680987.79 115.00 -594191.03 5681138.39 106.25 -594191.10 5681039.47 111.25 -594191.17 5680821.47 123.75 -594191.55 5680265.78 120.00 -594191.64 5679922.16 113.75 -594191.75 5685205.13 125.00 -594191.81 5679570.93 121.25 -594191.93 5681161.75 105.00 -594192.15 5680064.92 115.00 -594192.56 5680436.92 126.25 -594193.00 5680173.88 117.50 -594193.11 5684768.19 125.00 -594193.16 5680890.08 121.25 -594193.42 5680802.76 125.00 -594193.54 5680280.11 121.25 -594193.72 5681079.26 108.75 -594193.82 5681106.68 107.50 -594194.31 5680317.61 125.00 -594194.46 5684635.16 120.00 -594195.09 5680094.11 116.25 -594195.54 5681058.72 110.00 -594195.77 5680017.21 113.75 -594196.12 5680164.47 117.50 -594196.32 5681000.83 113.75 -594196.69 5680308.34 123.75 -594196.72 5680858.96 122.50 -594196.91 5680656.38 125.00 -594197.08 5680220.75 118.75 -594197.41 5680288.74 122.50 -594197.44 5680928.35 120.00 -594197.66 5685213.15 125.00 -594198.50 5680646.58 125.00 -594198.58 5680330.27 126.25 -594198.65 5680969.88 116.25 -594198.73 5679915.10 113.75 -594199.08 5681021.66 112.50 -594199.09 5685575.22 120.00 -594199.09 5680945.46 118.75 -594199.19 5680957.93 117.50 -594200.28 5680636.82 125.00 -594200.44 5680059.33 115.00 -594200.62 5681141.16 106.25 -594200.86 5680986.86 115.00 -594200.91 5680819.82 123.75 -594201.01 5681040.03 111.25 -594201.16 5684774.11 125.00 -594201.43 5680266.55 120.00 -594201.64 5685222.31 125.00 -594201.71 5681163.70 105.00 -594201.79 5679570.67 121.25 -594202.50 5680436.03 126.25 -594202.51 5680156.84 117.50 -594202.51 5680664.37 125.00 -594202.90 5680888.88 121.25 -594203.03 5680800.25 125.00 -594203.12 5681082.35 108.75 -594203.15 5680212.83 118.75 -594203.26 5680627.34 125.00 -594203.30 5681109.73 107.50 -594203.51 5680279.46 121.25 -594204.19 5680318.23 125.00 -594204.25 5680012.01 113.75 -594204.31 5684636.80 120.00 -594204.53 5680090.82 116.25 -594205.49 5681057.84 110.00 -594205.62 5685231.47 125.00 -594205.73 5679907.99 113.75 -594206.24 5680617.86 125.00 -594206.29 5681000.35 113.75 -594206.56 5680857.54 122.50 -594206.67 5680308.75 123.75 -594207.35 5680288.97 122.50 -594207.40 5680928.59 120.00 -594208.36 5680331.63 126.25 -594208.48 5680971.72 116.25 -594208.67 5680608.23 125.00 -594208.73 5680053.74 115.00 -594208.90 5680149.21 117.50 -594208.95 5680946.60 118.75 -594208.98 5681022.45 112.50 -594209.03 5680204.76 118.75 -594209.06 5685574.91 120.00 -594209.14 5680958.85 117.50 -594209.24 5680671.25 125.00 -594209.60 5685240.63 125.00 -594210.02 5684778.36 125.00 -594210.29 5679899.09 113.75 -594210.30 5681143.53 106.25 -594210.54 5680817.34 123.75 -594210.75 5680987.92 115.00 -594210.90 5681040.93 111.25 -594210.96 5680598.56 125.00 -594211.37 5680266.77 120.00 -594211.48 5681165.66 105.00 -594211.78 5679570.31 121.25 -594211.97 5680529.69 125.00 -594212.44 5680435.13 126.25 -594212.46 5680006.33 113.75 -594212.59 5680797.55 125.00 -594212.76 5681112.94 107.50 -594212.81 5681084.77 108.75 -594212.83 5680888.27 121.25 -594212.95 5680519.84 125.00 -594213.25 5680588.90 125.00 -594213.46 5680539.51 125.00 -594213.49 5680278.96 121.25 -594213.57 5685249.79 125.00 -594213.64 5684640.02 120.00 -594213.95 5680319.73 125.00 -594213.97 5680087.52 116.25 -594214.43 5680579.04 125.00 -594214.64 5680510.08 125.00 -594214.85 5679890.20 113.75 -594214.95 5680549.33 125.00 -594215.44 5681056.97 110.00 -594215.47 5680197.21 118.75 -594215.50 5680559.23 125.00 -594215.53 5680569.16 125.00 -594215.80 5685259.50 125.00 -594215.82 5680142.06 117.50 -594216.06 5681001.91 113.75 -594216.40 5680856.06 122.50 -594216.53 5680310.37 123.75 -594217.13 5680930.16 120.00 -594217.29 5680289.20 122.50 -594217.78 5680500.65 125.00 -594217.84 5685269.28 125.00 -594217.92 5680334.49 126.25 -594218.07 5680050.36 115.00 -594218.30 5680973.56 116.25 -594218.81 5680947.62 118.75 -594218.83 5680673.85 125.00 -594218.89 5681023.20 112.50 -594218.96 5679881.09 113.75 -594219.04 5685574.60 120.00 -594219.09 5680959.78 117.50 -594219.63 5684781.06 125.00 -594219.88 5685279.05 125.00 -594220.12 5681145.32 106.25 -594220.18 5680814.85 123.75 -594220.43 5680000.29 113.75 -594220.61 5680792.14 125.00 -594220.64 5680988.97 115.00 -594220.75 5681042.17 111.25 -594221.25 5681167.67 105.00 -594221.27 5680266.69 120.00 -594221.75 5679569.66 121.25 -594222.15 5685288.78 125.00 -594222.21 5681116.14 107.50 -594222.35 5680434.80 126.25 -594222.53 5681087.10 108.75 -594222.58 5684644.46 120.00 -594222.71 5680888.10 121.25 -594222.89 5680135.05 117.50 -594223.07 5679871.98 113.75 -594223.34 5680191.05 118.75 -594223.42 5680084.24 116.25 -594223.48 5680278.75 121.25 -594223.60 5680493.04 125.00 -594223.65 5680321.73 125.00 -594224.53 5685298.48 125.00 -594225.33 5681057.55 110.00 -594225.68 5681004.65 113.75 -594225.73 5679862.36 113.75 -594226.22 5680854.46 122.50 -594226.37 5680312.13 123.75 -594226.59 5680339.31 126.25 -594226.65 5680933.09 120.00 -594227.16 5680784.67 125.00 -594227.22 5680289.52 122.50 -594227.62 5680047.42 115.00 -594228.14 5679852.66 113.75 -594228.18 5680974.22 116.25 -594228.40 5679994.25 113.75 -594228.51 5680676.06 125.00 -594228.67 5680948.64 118.75 -594228.79 5681023.95 112.50 -594228.86 5685572.87 120.00 -594229.08 5680959.80 117.50 -594229.24 5684783.76 125.00 -594229.36 5680811.04 123.75 -594229.48 5685306.96 125.00 -594229.88 5680746.38 125.00 -594229.95 5681147.10 106.25 -594230.41 5679842.93 113.75 -594230.61 5681043.40 111.25 -594230.65 5680128.90 117.50 -594230.68 5680756.28 125.00 -594230.71 5680263.56 120.00 -594230.95 5680776.12 125.00 -594231.01 5681169.70 105.00 -594231.18 5680766.19 125.00 -594231.42 5680185.27 118.75 -594231.49 5680487.07 125.00 -594231.52 5684648.90 120.00 -594231.67 5681119.33 107.50 -594231.69 5679568.80 121.25 -594232.12 5680436.81 126.25 -594232.16 5680891.23 121.25 -594232.22 5681089.52 108.75 -594232.68 5679833.20 113.75 -594232.98 5680081.34 116.25 -594233.35 5680323.72 125.00 -594233.47 5680278.55 121.25 -594234.47 5679823.37 113.75 -594234.60 5680535.46 123.75 -594235.01 5680525.53 123.75 -594235.06 5680344.60 126.25 -594235.19 5681059.16 110.00 -594235.26 5680803.52 123.75 -594235.29 5681007.40 113.75 -594235.48 5685314.93 125.00 -594235.53 5680545.33 123.75 -594235.60 5680738.30 125.00 -594235.78 5680851.72 122.50 -594236.08 5679813.51 113.75 -594236.20 5680313.88 123.75 -594236.47 5680934.77 120.00 -594236.75 5679793.65 113.75 -594237.06 5680290.94 122.50 -594237.18 5680044.48 115.00 -594237.35 5679803.63 113.75 -594237.64 5680555.06 123.75 -594238.05 5679991.90 113.75 -594238.12 5680973.14 116.25 -594238.15 5680257.11 120.00 -594238.21 5680678.22 125.00 -594238.34 5680516.34 123.75 -594238.54 5680949.47 118.75 -594238.57 5681025.57 112.50 -594238.68 5684787.00 125.00 -594238.69 5685571.09 120.00 -594238.97 5680123.43 117.50 -594239.07 5680959.80 117.50 -594239.64 5681149.37 106.25 -594239.66 5680564.81 123.75 -594240.08 5680794.81 123.75 -594240.26 5680482.39 125.00 -594240.33 5681045.35 111.25 -594240.35 5679784.71 113.75 -594240.58 5681172.38 105.00 -594240.83 5680181.90 118.75 -594240.96 5684652.13 120.00 -594241.12 5681122.53 107.50 -594241.47 5680730.29 125.00 -594241.54 5679567.08 121.25 -594241.59 5680574.57 123.75 -594241.62 5680894.35 121.25 -594241.80 5681092.36 108.75 -594242.07 5680436.73 126.25 -594242.35 5680248.21 120.00 -594242.55 5680078.43 116.25 -594242.89 5680326.24 125.00 -594243.14 5680350.43 126.25 -594243.14 5680584.39 123.75 -594243.46 5680278.24 121.25 -594244.04 5680594.30 123.75 -594244.17 5680508.44 123.75 -594244.90 5681010.15 113.75 -594244.94 5680604.21 123.75 -594244.96 5685317.65 125.00 -594244.98 5680786.15 123.75 -594245.00 5680614.15 123.75 -594245.05 5681060.76 110.00 -594245.34 5679267.70 121.25 -594245.35 5680848.99 122.50 -594245.50 5679776.14 113.75 -594245.76 5680238.88 120.00 -594246.04 5680315.64 123.75 -594246.20 5680936.79 120.00 -594246.81 5680041.81 115.00 -594246.90 5680292.36 122.50 -594247.29 5680117.97 117.50 -594247.49 5680681.13 125.00 -594247.61 5680722.48 125.00 -594247.72 5680623.22 123.75 -594247.83 5679989.86 113.75 -594247.98 5684790.62 125.00 -594248.29 5681027.63 112.50 -594248.40 5680949.60 118.75 -594248.51 5685569.31 120.00 -594248.83 5680229.42 120.00 -594249.00 5681152.81 106.25 -594249.02 5680477.71 125.00 -594249.06 5680959.80 117.50 -594249.52 5680777.31 123.75 -594249.88 5681175.97 105.00 -594250.00 5681047.65 111.25 -594250.01 5680177.99 118.75 -594250.41 5684655.34 120.00 -594250.58 5681125.73 107.50 -594250.96 5680356.62 126.25 -594251.08 5680897.41 121.25 -594251.38 5681095.19 108.75 -594251.42 5679565.63 121.25 -594252.04 5680436.34 126.25 -594252.07 5680329.96 125.00 -594252.11 5680075.52 116.25 -594252.15 5679768.73 113.75 -594252.20 5679260.43 121.25 -594252.44 5680503.02 123.75 -594253.30 5680768.10 123.75 -594253.44 5680277.90 121.25 -594253.52 5680220.69 120.00 -594253.59 5680631.24 123.75 -594253.71 5680714.64 125.00 -594254.41 5680845.26 122.50 -594254.49 5680688.18 125.00 -594254.51 5681012.89 113.75 -594254.74 5685317.59 125.00 -594254.74 5681063.05 110.00 -594255.40 5680112.21 117.50 -594255.56 5680940.22 120.00 -594255.91 5680317.22 123.75 -594256.35 5684796.01 125.00 -594256.45 5680039.14 115.00 -594256.74 5680293.78 122.50 -594257.65 5679988.01 113.75 -594257.87 5680473.25 125.00 -594258.04 5681029.50 112.50 -594258.05 5680705.71 125.00 -594258.08 5680951.76 118.75 -594258.19 5685566.94 120.00 -594258.26 5680759.52 123.75 -594258.31 5680363.35 126.25 -594258.37 5681156.26 106.25 -594258.82 5680173.31 118.75 -594259.10 5679761.55 113.75 -594259.11 5679253.22 121.25 -594259.18 5681179.57 105.00 -594259.33 5680696.44 125.00 -594259.67 5681049.90 111.25 -594260.00 5684657.95 120.00 -594260.03 5681128.92 107.50 -594260.37 5680213.98 120.00 -594260.72 5680638.13 123.75 -594260.83 5680899.45 121.25 -594260.95 5681098.06 108.75 -594261.20 5680498.30 123.75 -594261.24 5680333.67 125.00 -594261.37 5679564.69 121.25 -594261.68 5680072.62 116.25 -594262.01 5680435.96 126.25 -594262.29 5680839.18 122.50 -594263.34 5680106.20 117.50 -594263.41 5680277.28 121.25 -594264.06 5680751.49 123.75 -594264.13 5681015.64 113.75 -594264.29 5681065.98 110.00 -594264.57 5684801.68 125.00 -594264.59 5685316.06 125.00 -594264.91 5680943.64 120.00 -594265.36 5680370.42 126.25 -594265.82 5680318.49 123.75 -594266.08 5680036.47 115.00 -594266.60 5680295.08 122.50 -594266.66 5679755.05 113.75 -594266.73 5679246.76 121.25 -594267.21 5680167.87 118.75 -594267.39 5680470.39 125.00 -594267.55 5679986.57 113.75 -594267.75 5681159.69 106.25 -594267.81 5685564.29 120.00 -594267.86 5681031.04 112.50 -594268.46 5681183.22 105.00 -594269.28 5680209.68 120.00 -594269.44 5681051.68 111.25 -594269.47 5680642.69 123.75 -594269.65 5681131.57 107.50 -594269.90 5684659.14 120.00 -594269.96 5680338.36 125.00 -594270.16 5680833.09 122.50 -594270.48 5681101.04 108.75 -594270.57 5680901.49 121.25 -594270.66 5680495.22 123.75 -594271.14 5679562.76 121.25 -594271.27 5680100.19 117.50 -594271.30 5680069.89 116.25 -594271.70 5680745.11 123.75 -594271.78 5680434.65 126.25 -594272.24 5680377.63 126.25 -594272.82 5684807.30 125.00 -594273.36 5680276.32 121.25 -594273.74 5681018.39 113.75 -594273.84 5681068.89 110.00 -594274.35 5679240.30 121.25 -594274.57 5685316.29 125.00 -594274.59 5679748.97 113.75 -594275.59 5680162.43 118.75 -594275.61 5680320.50 123.75 -594275.63 5680549.60 122.50 -594275.84 5680034.34 115.00 -594275.87 5680559.11 122.50 -594276.18 5680568.62 122.50 -594276.37 5680578.14 122.50 -594276.37 5680587.66 122.50 -594276.53 5680295.60 122.50 -594276.59 5680540.13 122.50 -594276.90 5680467.54 125.00 -594277.18 5681162.96 106.25 -594277.43 5681033.59 112.50 -594277.44 5679985.13 113.75 -594277.49 5685561.84 120.00 -594277.54 5680597.06 122.50 -594277.74 5681186.87 105.00 -594277.99 5680826.96 122.50 -594278.21 5680385.62 126.25 -594278.65 5680343.10 125.00 -594278.94 5680645.76 123.75 -594278.98 5680207.49 120.00 -594279.21 5681053.46 111.25 -594279.30 5680531.29 122.50 -594279.33 5681134.00 107.50 -594279.81 5684660.34 120.00 -594279.84 5680491.47 123.75 -594280.02 5681104.03 108.75 -594280.09 5680739.77 123.75 -594280.28 5680902.59 121.25 -594280.72 5680097.13 117.50 -594280.84 5679560.34 121.25 -594280.97 5680430.78 126.25 -594281.02 5680067.56 116.25 -594281.15 5680605.44 122.50 -594281.46 5684812.32 125.00 -594281.97 5679233.83 121.25 -594282.54 5679742.90 113.75 -594283.30 5680275.36 121.25 -594283.33 5681021.20 113.75 -594283.41 5681071.73 110.00 -594283.97 5680156.98 118.75 -594284.18 5680393.62 126.25 -594284.51 5685316.83 125.00 -594284.57 5680461.24 125.00 -594284.61 5680523.39 122.50 -594285.37 5680820.28 122.50 -594285.48 5680321.89 123.75 -594285.64 5680032.37 115.00 -594286.41 5680295.74 122.50 -594286.61 5681166.23 106.25 -594286.85 5681036.73 112.50 -594287.02 5681190.52 105.00 -594287.23 5685559.70 120.00 -594287.39 5679984.48 113.75 -594288.25 5680203.92 120.00 -594288.27 5680345.18 125.00 -594288.50 5680648.55 123.75 -594288.58 5680486.71 123.75 -594288.72 5680734.92 123.75 -594288.74 5680610.93 122.50 -594288.99 5681055.24 111.25 -594289.01 5681136.44 107.50 -594289.50 5681005.08 115.00 -594289.55 5681107.01 108.75 -594289.74 5684661.12 120.00 -594289.84 5680899.84 121.25 -594290.09 5684817.35 125.00 -594290.16 5680401.61 126.25 -594290.18 5679556.88 121.25 -594290.24 5680094.20 117.50 -594290.52 5680427.99 126.25 -594290.65 5679228.93 121.25 -594290.71 5680065.11 116.25 -594291.10 5680516.58 122.50 -594291.39 5680269.61 121.25 -594292.22 5680454.89 125.00 -594292.24 5680151.37 118.75 -594292.38 5679742.67 113.75 -594292.61 5681075.52 110.00 -594292.74 5680813.60 122.50 -594292.86 5681024.22 113.75 -594294.14 5685319.47 125.00 -594295.44 5680322.51 123.75 -594295.44 5680030.40 115.00 -594295.67 5681170.37 106.25 -594295.77 5680261.00 121.25 -594295.97 5680292.99 122.50 -594296.13 5680409.61 126.25 -594296.29 5681039.81 112.50 -594296.31 5681194.13 105.00 -594296.98 5685557.55 120.00 -594297.30 5679985.09 113.75 -594297.32 5680481.95 123.75 -594297.42 5680200.09 120.00 -594297.59 5680614.41 122.50 -594298.00 5681006.22 115.00 -594298.01 5680651.40 123.75 -594298.03 5680346.87 125.00 -594298.34 5684822.94 125.00 -594298.44 5680732.76 123.75 -594298.66 5681139.00 107.50 -594298.73 5681057.16 111.25 -594298.74 5680510.92 122.50 -594299.02 5680251.55 121.25 -594299.14 5681109.84 108.75 -594299.31 5680896.76 121.25 -594299.48 5679224.26 121.25 -594299.65 5679554.34 121.25 -594299.72 5684660.87 120.00 -594299.75 5680091.27 117.50 -594299.88 5680425.21 126.25 -594300.12 5680806.93 122.50 -594300.32 5680062.35 116.25 -594300.52 5680145.77 118.75 -594301.40 5679745.94 113.75 -594301.51 5681080.04 110.00 -594302.10 5680417.60 126.25 -594302.53 5681026.78 113.75 -594302.66 5680242.24 121.25 -594303.77 5685322.12 125.00 -594304.56 5681174.91 106.25 -594305.04 5680319.76 123.75 -594305.14 5680552.06 121.25 -594305.38 5680030.65 115.00 -594305.52 5680290.24 122.50 -594305.71 5680542.47 121.25 -594305.75 5680657.66 123.75 -594305.76 5681042.81 112.50 -594305.90 5681196.87 105.00 -594306.06 5680561.56 121.25 -594306.32 5680195.70 120.00 -594306.39 5684828.86 125.00 -594306.39 5680617.88 122.50 -594306.45 5681007.57 115.00 -594306.60 5680505.55 122.50 -594306.70 5680532.89 121.25 -594306.78 5685555.74 120.00 -594306.89 5679987.91 113.75 -594307.50 5680800.25 122.50 -594307.51 5679894.44 112.50 -594307.84 5680347.52 125.00 -594307.99 5679904.24 112.50 -594308.10 5680730.41 123.75 -594308.29 5681141.61 107.50 -594308.40 5681059.42 111.25 -594308.52 5679220.19 121.25 -594308.57 5680523.47 121.25 -594308.74 5681112.58 108.75 -594308.79 5680140.16 118.75 -594308.82 5680234.53 121.25 -594308.91 5679884.76 112.50 -594309.13 5679752.23 113.75 -594309.39 5680088.84 117.50 -594309.53 5684662.38 120.00 -594309.64 5679554.46 121.25 -594310.02 5680060.04 116.25 -594310.61 5680570.05 121.25 -594310.86 5681083.40 110.00 -594311.11 5679913.04 112.50 -594311.11 5680514.17 121.25 -594312.19 5681029.33 113.75 -594312.23 5679875.58 112.50 -594313.09 5680664.35 123.75 -594313.40 5685324.76 125.00 -594313.52 5681179.22 106.25 -594314.44 5684834.77 125.00 -594314.54 5681010.42 115.00 -594314.65 5680317.01 123.75 -594314.78 5680286.96 122.50 -594314.85 5680190.59 120.00 -594314.87 5680622.19 122.50 -594315.25 5680032.02 115.00 -594315.36 5681045.36 112.50 -594315.49 5681199.60 105.00 -594315.55 5680794.57 122.50 -594315.64 5680227.23 121.25 -594316.26 5679866.64 112.50 -594316.48 5679759.00 113.75 -594316.49 5679990.72 113.75 -594316.70 5685554.65 120.00 -594317.26 5680726.52 123.75 -594317.69 5680576.32 121.25 -594317.73 5680346.97 125.00 -594317.90 5681144.30 107.50 -594317.93 5680136.20 118.75 -594318.07 5681061.68 111.25 -594318.35 5681115.32 108.75 -594318.38 5679218.59 121.25 -594318.92 5679918.90 112.50 -594319.20 5680087.19 117.50 -594319.23 5684664.69 120.00 -594319.63 5679554.54 121.25 -594319.85 5680671.65 123.75 -594319.96 5680058.97 116.25 -594320.17 5684842.92 125.00 -594320.51 5681085.97 110.00 -594320.71 5679857.89 112.50 -594321.88 5681031.43 113.75 -594322.12 5680280.25 122.50 -594322.80 5681012.53 115.00 -594322.97 5680627.19 122.50 -594323.03 5685327.40 125.00 -594323.17 5680220.72 121.25 -594323.36 5681180.94 106.25 -594323.39 5680185.49 120.00 -594323.41 5680312.38 123.75 -594323.56 5679766.05 113.75 -594324.48 5680790.19 122.50 -594324.97 5680034.36 115.00 -594325.00 5681047.74 112.50 -594325.07 5681202.34 105.00 -594325.63 5679849.48 112.50 -594325.85 5684851.14 125.00 -594325.91 5680581.28 121.25 -594326.08 5679993.52 113.75 -594326.62 5685553.77 120.00 -594326.73 5679924.75 112.50 -594326.92 5680724.18 123.75 -594327.14 5680678.37 123.75 -594327.22 5681147.87 107.50 -594327.24 5680132.58 118.75 -594327.31 5680345.49 125.00 -594327.74 5681063.94 111.25 -594328.00 5681117.90 108.75 -594328.03 5680923.80 120.00 -594328.24 5679216.99 121.25 -594328.66 5684667.95 120.00 -594328.67 5680272.97 122.50 -594329.02 5680085.53 117.50 -594329.62 5679554.46 121.25 -594329.90 5680057.90 116.25 -594330.13 5681088.65 110.00 -594330.31 5680633.24 122.50 -594330.46 5679773.28 113.75 -594331.02 5680179.14 120.00 -594331.22 5680214.80 121.25 -594331.34 5681013.31 115.00 -594331.52 5684859.36 125.00 -594331.76 5681029.87 113.75 -594331.85 5680307.02 123.75 -594332.56 5679842.53 112.50 -594332.75 5680263.90 122.50 -594332.87 5685328.81 125.00 -594333.19 5681182.66 106.25 -594333.42 5680785.81 122.50 -594333.87 5680916.37 120.00 -594334.54 5680585.55 121.25 -594334.66 5681205.09 105.00 -594334.69 5680036.70 115.00 -594334.80 5681048.54 112.50 -594335.07 5680684.39 123.75 -594335.62 5680254.45 122.50 -594335.63 5680340.13 125.00 -594335.70 5679928.56 112.50 -594335.91 5679995.37 113.75 -594336.27 5680720.99 123.75 -594336.54 5685554.86 120.00 -594336.55 5681151.43 107.50 -594336.61 5680129.10 118.75 -594336.91 5684867.75 125.00 -594337.37 5679780.50 113.75 -594337.46 5681065.98 111.25 -594337.57 5680244.70 122.50 -594337.63 5680639.34 122.50 -594337.66 5681120.44 108.75 -594337.78 5684671.84 120.00 -594338.11 5679215.46 121.25 -594338.80 5680083.69 117.50 -594339.12 5680300.23 123.75 -594339.14 5680173.50 120.00 -594339.27 5680208.88 121.25 -594339.61 5679554.39 121.25 -594339.63 5681091.73 110.00 -594339.82 5680909.09 120.00 -594339.88 5681014.10 115.00 -594339.90 5680057.71 116.25 -594340.72 5679837.99 112.50 -594341.56 5680235.84 122.50 -594341.63 5681028.31 113.75 -594341.79 5684876.46 125.00 -594342.35 5680781.43 122.50 -594342.83 5685329.46 125.00 -594342.85 5680590.43 121.25 -594342.95 5681184.71 106.25 -594343.00 5680690.41 123.75 -594343.95 5680334.76 125.00 -594344.23 5681207.87 105.00 -594344.39 5680039.11 115.00 -594344.71 5681047.97 112.50 -594344.76 5679932.20 112.50 -594344.83 5680716.09 123.75 -594344.86 5679787.11 113.75 -594345.25 5680292.41 123.75 -594345.73 5679997.22 113.75 -594345.80 5684885.56 125.00 -594345.87 5681155.00 107.50 -594346.03 5684677.45 120.00 -594346.16 5680126.16 118.75 -594346.47 5685555.96 120.00 -594347.22 5681067.84 111.25 -594347.29 5681123.08 108.75 -594347.43 5680227.82 122.50 -594347.69 5680698.74 123.75 -594347.82 5680168.64 120.00 -594347.89 5680203.87 121.25 -594348.10 5679215.46 121.25 -594348.47 5680081.34 117.50 -594348.47 5680905.31 120.00 -594348.93 5684895.04 125.00 -594349.12 5681094.82 110.00 -594349.25 5680326.44 125.00 -594349.61 5679554.31 121.25 -594349.89 5680057.52 116.25 -594350.40 5679838.94 112.50 -594350.54 5680283.93 123.75 -594350.82 5680708.19 123.75 -594351.15 5680595.32 121.25 -594351.51 5681026.76 113.75 -594352.09 5680779.46 122.50 -594352.32 5684904.38 125.00 -594352.39 5679793.68 113.75 -594352.60 5681187.27 106.25 -594352.80 5685330.10 125.00 -594352.81 5684684.70 120.00 -594352.91 5679937.52 112.50 -594353.80 5681210.66 105.00 -594354.07 5680041.62 115.00 -594354.42 5680318.00 125.00 -594354.62 5680221.07 122.50 -594354.63 5681047.40 112.50 -594355.41 5679999.49 113.75 -594355.42 5681157.89 107.50 -594355.71 5680123.22 118.75 -594355.84 5680275.46 123.75 -594356.30 5681127.40 108.75 -594356.39 5685557.05 120.00 -594356.67 5680164.11 120.00 -594356.67 5681070.62 111.25 -594356.74 5680199.23 121.25 -594357.13 5680901.53 120.00 -594357.43 5680265.75 123.75 -594358.09 5679215.46 121.25 -594358.14 5680078.98 117.50 -594358.28 5680255.79 123.75 -594358.32 5684912.37 125.00 -594358.64 5681097.83 110.00 -594359.19 5684692.37 120.00 -594359.57 5679553.69 121.25 -594359.59 5680309.56 125.00 -594359.89 5680057.33 116.25 -594359.92 5679800.25 113.75 -594360.07 5679840.62 112.50 -594360.91 5679943.12 112.50 -594361.43 5681026.02 113.75 -594361.67 5680246.59 123.75 -594361.86 5680777.59 122.50 -594362.24 5681189.84 106.25 -594362.52 5680215.06 122.50 -594362.75 5685330.52 125.00 -594363.38 5681213.45 105.00 -594364.01 5680042.59 115.00 -594364.22 5680300.80 125.00 -594364.29 5680004.08 113.75 -594364.32 5684920.35 125.00 -594364.42 5681048.39 112.50 -594364.60 5680118.74 118.75 -594364.99 5681160.72 107.50 -594365.30 5681131.72 108.75 -594365.56 5680194.55 121.25 -594365.57 5684700.04 120.00 -594365.59 5681074.99 111.25 -594365.70 5680159.96 120.00 -594365.78 5685560.16 120.00 -594365.82 5680897.85 120.00 -594367.54 5679218.59 121.25 -594367.65 5680238.72 123.75 -594367.81 5680076.62 117.50 -594368.16 5681100.85 110.00 -594368.44 5679805.37 113.75 -594368.63 5679949.08 112.50 -594368.85 5680292.05 125.00 -594369.54 5679552.91 121.25 -594369.76 5679842.15 112.50 -594369.88 5680057.14 116.25 -594370.35 5684928.30 125.00 -594370.67 5680282.48 125.00 -594371.37 5680210.52 122.50 -594371.42 5681026.37 113.75 -594371.46 5680272.61 125.00 -594371.63 5680775.72 122.50 -594371.73 5684707.89 120.00 -594371.98 5681192.02 106.25 -594372.63 5685329.06 125.00 -594372.78 5681216.72 105.00 -594373.18 5680008.67 113.75 -594373.30 5680113.83 118.75 -594373.84 5680263.08 125.00 -594373.97 5680043.47 115.00 -594374.10 5681050.61 112.50 -594374.12 5680189.41 121.25 -594374.21 5681136.24 108.75 -594374.51 5681079.36 111.25 -594374.56 5681163.55 107.50 -594374.72 5680231.65 123.75 -594374.74 5680155.81 120.00 -594374.98 5685564.04 120.00 -594375.06 5680895.92 120.00 -594376.01 5679955.46 112.50 -594376.54 5679222.91 121.25 -594377.10 5680253.73 125.00 -594377.33 5679809.93 113.75 -594377.39 5680073.90 117.50 -594377.61 5684935.17 125.00 -594377.69 5681103.86 110.00 -594377.83 5684715.79 120.00 -594379.29 5679551.14 121.25 -594379.49 5679843.40 112.50 -594379.73 5680055.58 116.25 -594380.22 5680205.99 122.50 -594381.41 5680773.85 122.50 -594381.41 5681026.72 113.75 -594381.44 5681195.16 106.25 -594381.75 5680245.13 125.00 -594381.82 5680108.63 118.75 -594381.97 5681220.58 105.00 -594382.06 5680013.26 113.75 -594382.06 5680224.94 123.75 -594382.12 5680183.43 121.25 -594382.51 5685327.60 125.00 -594382.92 5681141.14 108.75 -594383.40 5679961.84 112.50 -594383.43 5681083.72 111.25 -594383.76 5681052.94 112.50 -594383.78 5680151.66 120.00 -594383.93 5680044.34 115.00 -594383.97 5681166.82 107.50 -594384.18 5685567.91 120.00 -594384.30 5680893.98 120.00 -594384.86 5684942.04 125.00 -594384.88 5680281.16 126.25 -594384.97 5684722.73 120.00 -594385.45 5679227.43 121.25 -594385.50 5680290.98 126.25 -594385.54 5680271.26 126.25 -594386.42 5679466.14 121.25 -594386.42 5679476.13 121.25 -594386.42 5679486.12 121.25 -594386.42 5679496.11 121.25 -594386.74 5679544.97 121.25 -594386.82 5679812.85 113.75 -594386.94 5680071.10 117.50 -594387.09 5681107.21 110.00 -594387.28 5680261.48 126.25 -594387.84 5679506.00 121.25 -594387.91 5679456.27 121.25 -594388.33 5680238.02 125.00 -594389.07 5680201.45 122.50 -594389.22 5679844.68 112.50 -594389.28 5679515.89 121.25 -594389.52 5680053.57 116.25 -594389.53 5679535.64 121.25 -594389.72 5679446.45 121.25 -594389.73 5680102.52 118.75 -594390.13 5680177.45 121.25 -594390.67 5679968.36 112.50 -594390.71 5679525.78 121.25 -594390.72 5680219.96 123.75 -594390.81 5681198.62 106.25 -594391.05 5681029.03 113.75 -594391.08 5680252.40 126.25 -594391.16 5681224.45 105.00 -594391.21 5680772.33 122.50 -594391.57 5680015.34 113.75 -594391.75 5681145.80 108.75 -594391.81 5680145.80 120.00 -594391.98 5679436.71 121.25 -594391.99 5685324.79 125.00 -594392.35 5684729.45 120.00 -594392.43 5681087.87 111.25 -594392.86 5680297.66 126.25 -594392.99 5681171.10 107.50 -594392.99 5679233.86 121.25 -594393.29 5681055.74 112.50 -594393.52 5685571.41 120.00 -594393.56 5680892.19 120.00 -594393.61 5679376.98 121.25 -594393.66 5679426.90 121.25 -594393.73 5679386.97 121.25 -594393.84 5680044.36 115.00 -594393.86 5679396.96 121.25 -594393.91 5679366.99 121.25 -594393.98 5684946.03 125.00 -594394.26 5679416.92 121.25 -594394.27 5679406.94 121.25 -594394.37 5679357.01 121.25 -594396.16 5679347.31 121.25 -594396.34 5681110.95 110.00 -594396.49 5680068.30 117.50 -594396.55 5680095.31 118.75 -594396.57 5679815.03 113.75 -594396.77 5680260.93 127.50 -594396.77 5680270.14 127.50 -594397.49 5680234.26 125.00 -594397.63 5680196.42 122.50 -594397.69 5679975.14 112.50 -594397.85 5680171.12 121.25 -594398.26 5680246.86 126.25 -594398.83 5679846.68 112.50 -594399.41 5680052.15 116.25 -594399.46 5680139.58 120.00 -594399.78 5679338.00 121.25 -594400.09 5680216.62 123.75 -594400.13 5679240.85 121.25 -594400.18 5681202.05 106.25 -594400.44 5684735.22 120.00 -594400.54 5681032.20 113.75 -594400.70 5681227.18 105.00 -594400.84 5681149.94 108.75 -594401.11 5685320.71 125.00 -594401.16 5680772.56 122.50 -594401.20 5680277.29 127.50 -594401.57 5680015.51 113.75 -594402.00 5681175.38 107.50 -594402.04 5680301.14 126.25 -594402.04 5681090.40 111.25 -594402.77 5679328.48 121.25 -594402.77 5680087.49 118.75 -594402.81 5681058.55 112.50 -594402.91 5685574.78 120.00 -594402.95 5680254.04 127.50 -594402.99 5680892.65 120.00 -594403.18 5684949.90 125.00 -594403.68 5680042.57 115.00 -594404.41 5679249.81 121.25 -594404.49 5680130.99 120.00 -594405.07 5679981.39 112.50 -594405.16 5679318.78 121.25 -594405.24 5680164.40 121.25 -594405.60 5681114.70 110.00 -594405.92 5680190.94 122.50 -594406.04 5680065.50 117.50 -594406.32 5679817.21 113.75 -594406.49 5680230.24 125.00 -594406.91 5680209.39 123.75 -594407.14 5679259.39 121.25 -594407.17 5679309.01 121.25 -594407.79 5680244.07 126.25 -594408.16 5680121.89 120.00 -594408.27 5679299.08 121.25 -594408.44 5679848.68 112.50 -594408.51 5678867.03 110.00 -594408.65 5684740.79 120.00 -594408.96 5679289.13 121.25 -594408.99 5679279.14 121.25 -594409.21 5679269.15 121.25 -594409.35 5680051.05 116.25 -594409.92 5681154.10 108.75 -594409.99 5681203.86 106.25 -594410.02 5681035.36 113.75 -594410.08 5680278.26 127.50 -594410.13 5680112.14 120.00 -594410.22 5685316.62 125.00 -594410.32 5680081.30 118.75 -594410.48 5681229.10 105.00 -594410.94 5680249.57 127.50 -594411.10 5680772.79 122.50 -594411.21 5680259.09 127.80 -594411.22 5681179.06 107.50 -594411.57 5680015.68 113.75 -594411.64 5681092.93 111.25 -594411.86 5680302.10 126.25 -594412.26 5680157.42 121.25 -594412.31 5685578.15 120.00 -594412.33 5681061.39 112.50 -594412.47 5684953.56 125.00 -594412.68 5680102.66 120.00 -594413.47 5680040.62 115.00 -594413.62 5680201.98 123.75 -594414.01 5679985.33 112.50 -594414.06 5680185.23 122.50 -594414.21 5680224.03 125.00 -594414.96 5680061.19 117.50 -594415.03 5681117.96 110.00 -594415.70 5684747.85 120.00 -594415.74 5678873.91 110.00 -594415.82 5679820.26 113.75 -594416.03 5680148.17 121.25 -594416.37 5680108.59 121.25 -594416.84 5679853.40 112.50 -594417.06 5680118.56 121.25 -594417.55 5680243.66 126.25 -594417.67 5680273.34 127.50 -594417.76 5680128.52 121.25 -594417.83 5680138.51 121.25 -594418.56 5680047.33 116.25 -594418.83 5680094.91 120.00 -594418.91 5681158.47 108.75 -594419.08 5679748.31 115.00 -594419.24 5680076.77 118.75 -594419.24 5681039.12 113.75 -594419.30 5685312.48 125.00 -594419.61 5680250.19 127.50 -594419.81 5681205.68 106.25 -594420.08 5680216.28 125.00 -594420.31 5681230.62 105.00 -594420.45 5680194.70 123.75 -594420.59 5680100.40 121.25 -594420.76 5681000.71 115.00 -594421.00 5681181.04 107.50 -594421.20 5681095.62 111.25 -594421.38 5681065.34 112.50 -594421.55 5680015.37 113.75 -594421.77 5680301.65 126.25 -594421.91 5684956.83 125.00 -594421.95 5685577.42 120.00 -594422.12 5680179.41 122.50 -594422.43 5679738.97 115.00 -594422.62 5680265.96 127.50 -594422.68 5680036.74 115.00 -594422.76 5684754.91 120.00 -594422.98 5678880.79 110.00 -594423.16 5679988.47 112.50 -594423.63 5680056.31 117.50 -594423.87 5679756.48 115.00 -594424.55 5681120.98 110.00 -594424.56 5680101.43 122.50 -594424.57 5680256.93 127.50 -594424.78 5679859.17 112.50 -594424.89 5680111.33 122.50 -594424.97 5680207.68 125.00 -594425.20 5679823.72 113.75 -594426.00 5680503.86 119.00 -594426.63 5679730.05 115.00 -594426.83 5680494.12 119.00 -594427.43 5680244.74 126.25 -594427.56 5680090.38 120.00 -594427.65 5680043.16 116.25 -594427.91 5680188.05 123.75 -594427.94 5681044.03 113.75 -594427.99 5680513.41 119.00 -594428.02 5684763.36 120.00 -594428.15 5680072.25 118.75 -594428.17 5685307.90 125.00 -594428.39 5681161.01 108.75 -594428.53 5681005.81 115.00 -594428.79 5680094.81 121.25 -594429.44 5680172.77 122.50 -594429.70 5681206.91 106.25 -594430.05 5680485.02 119.00 -594430.06 5681070.17 112.50 -594430.07 5680522.96 119.00 -594430.13 5678887.76 110.00 -594430.24 5680119.26 122.50 -594430.28 5681230.58 105.00 -594430.49 5679763.83 115.00 -594430.65 5681098.67 111.25 -594430.79 5681183.02 107.50 -594431.15 5684960.51 125.00 -594431.27 5679866.47 112.50 -594431.31 5685574.38 120.00 -594431.51 5680014.53 113.75 -594431.65 5680300.60 126.25 -594431.76 5680780.30 119.00 -594431.79 5680770.47 119.00 -594432.03 5680033.36 115.00 -594432.10 5680790.13 119.00 -594432.20 5680201.84 125.00 -594432.25 5680096.32 122.50 -594432.50 5680051.79 117.50 -594432.52 5679722.23 115.00 -594432.54 5680532.38 119.00 -594432.85 5679989.66 112.50 -594433.10 5680082.18 120.00 -594433.10 5680799.90 119.00 -594433.11 5684771.95 120.00 -594433.13 5679829.23 113.75 -594433.18 5680220.04 126.25 -594433.19 5680210.44 126.25 -594433.96 5680761.01 119.00 -594434.05 5681124.06 110.00 -594434.44 5680476.33 119.00 -594434.57 5679875.56 112.50 -594435.04 5680087.07 121.25 -594435.26 5680127.81 122.50 -594435.34 5680065.50 118.75 -594435.44 5680107.45 123.75 -594435.45 5681011.99 115.00 -594436.05 5680165.34 122.50 -594436.22 5680751.47 119.00 -594436.48 5680117.21 123.75 -594436.65 5680808.74 119.00 -594436.72 5681048.83 113.75 -594436.92 5680541.12 119.00 -594437.05 5685303.32 125.00 -594437.06 5678894.94 110.00 -594437.12 5680040.51 116.25 -594437.14 5680184.30 123.75 -594437.16 5679885.03 112.50 -594437.33 5680245.47 126.25 -594438.13 5680074.34 120.00 -594438.21 5684780.53 120.00 -594438.35 5681161.82 108.75 -594438.46 5679769.38 115.00 -594438.90 5680089.47 122.50 -594439.10 5681074.28 112.50 -594439.14 5680227.64 126.25 -594439.32 5680742.27 119.00 -594439.38 5685568.52 120.00 -594439.59 5679836.86 113.75 -594439.66 5681207.52 106.25 -594439.70 5684965.66 125.00 -594439.77 5680136.60 122.50 -594439.95 5680156.23 122.50 -594440.03 5680468.61 119.00 -594440.11 5681101.73 111.25 -594440.16 5680126.02 123.75 -594440.25 5681230.54 105.00 -594440.52 5680146.52 122.50 -594440.57 5681185.00 107.50 -594440.98 5679717.05 115.00 -594441.05 5679893.92 112.50 -594441.07 5680099.40 123.75 -594441.11 5680079.14 121.25 -594441.21 5680298.04 126.25 -594441.49 5680014.77 113.75 -594441.54 5680047.63 117.50 -594441.91 5680459.02 119.00 -594441.94 5680207.54 126.25 -594441.95 5680032.20 115.00 -594441.99 5680200.32 125.00 -594442.28 5681018.29 115.00 -594442.54 5679990.85 112.50 -594442.68 5680059.02 118.75 -594442.91 5680081.05 122.50 -594442.93 5680816.31 119.00 -594443.11 5680548.42 119.00 -594443.30 5684789.11 120.00 -594443.72 5681126.34 110.00 -594443.73 5678902.38 110.00 -594443.79 5680449.42 119.00 -594443.89 5680733.56 119.00 -594445.57 5681053.48 113.75 -594445.74 5680439.85 119.00 -594445.92 5685298.74 125.00 -594446.00 5680133.89 123.75 -594446.05 5679844.49 113.75 -594446.29 5680242.54 126.25 -594446.30 5680180.32 123.75 -594446.37 5679902.16 112.50 -594446.44 5680234.38 126.25 -594446.67 5685561.90 120.00 -594446.99 5684972.17 125.00 -594447.09 5680039.90 116.25 -594447.10 5680070.17 120.00 -594447.71 5680430.27 119.00 -594447.72 5680092.23 123.75 -594447.77 5679772.80 115.00 -594448.16 5681078.36 112.50 -594448.28 5681161.56 108.75 -594448.34 5684797.73 120.00 -594448.74 5680101.46 125.00 -594448.79 5681024.92 115.00 -594449.04 5680725.18 119.00 -594449.40 5680292.86 126.25 -594449.44 5679711.86 115.00 -594449.63 5681207.77 106.25 -594449.74 5681103.83 111.25 -594449.79 5680074.74 121.25 -594450.15 5681229.96 105.00 -594450.25 5680109.69 125.00 -594450.29 5681183.16 107.50 -594450.40 5678909.81 110.00 -594450.51 5680212.52 126.25 -594450.60 5680554.70 119.00 -594451.17 5680047.27 117.50 -594451.26 5680821.42 119.00 -594451.48 5680015.25 113.75 -594451.83 5680200.56 125.00 -594451.88 5680055.13 118.75 -594451.91 5680076.82 122.50 -594451.95 5680032.14 115.00 -594452.11 5685553.54 120.00 -594452.21 5679991.26 112.50 -594452.39 5679852.17 113.75 -594452.57 5680141.20 123.75 -594452.75 5684980.33 125.00 -594452.84 5679909.34 112.50 -594453.36 5684806.35 120.00 -594453.64 5681127.47 110.00 -594453.91 5679862.04 113.75 -594454.19 5680716.79 119.00 -594454.46 5681058.03 113.75 -594454.62 5679746.79 116.25 -594455.00 5680175.50 123.75 -594455.10 5680099.53 125.00 -594455.16 5685295.10 125.00 -594455.18 5679737.77 116.25 -594455.44 5679871.92 113.75 -594455.82 5681030.90 115.00 -594455.93 5680285.45 126.25 -594456.50 5680066.93 120.00 -594456.61 5680103.84 125.10 -594456.67 5680427.05 119.00 -594456.82 5678917.44 110.00 -594457.07 5680114.61 125.00 -594457.07 5680039.28 116.25 -594457.09 5679776.22 115.00 -594457.25 5680091.30 123.75 -594457.27 5679706.36 115.00 -594457.49 5681081.50 112.50 -594458.01 5681159.53 108.75 -594458.32 5679881.25 113.75 -594458.43 5685545.90 120.00 -594458.51 5684988.49 125.00 -594458.56 5684814.85 120.00 -594458.62 5680218.27 126.25 -594458.80 5680070.43 121.25 -594459.61 5681207.44 106.25 -594459.65 5681104.49 111.25 -594459.76 5680558.11 119.00 -594459.79 5681227.40 105.00 -594459.80 5679754.64 116.25 -594459.85 5681180.41 107.50 -594460.24 5679711.43 116.25 -594460.31 5680825.19 119.00 -594460.73 5679915.17 112.50 -594460.96 5680146.23 123.75 -594460.97 5680276.89 126.25 -594461.02 5679989.49 112.50 -594461.04 5680104.53 125.00 -594461.05 5680048.50 117.50 -594461.05 5679721.29 116.25 -594461.08 5679729.82 116.25 -594461.44 5680014.98 113.75 -594461.46 5680199.47 125.00 -594461.56 5680074.62 122.50 -594461.61 5679697.99 115.00 -594461.63 5680055.20 118.75 -594461.67 5680710.40 119.00 -594461.94 5680032.08 115.00 -594462.46 5678925.68 110.00 -594462.91 5680169.51 123.75 -594462.97 5679702.18 116.25 -594463.14 5680112.56 125.00 -594463.41 5681125.78 110.00 -594463.75 5681035.74 115.00 -594464.00 5681061.02 113.75 -594464.04 5679889.46 113.75 -594464.26 5684996.65 125.00 -594464.83 5685292.62 125.00 -594465.04 5684822.44 120.00 -594465.42 5680096.11 123.75 -594465.45 5680268.02 126.25 -594465.65 5685539.01 120.00 -594465.73 5680063.23 120.00 -594465.79 5679780.95 115.00 -594466.08 5680429.12 119.00 -594466.19 5680224.69 126.25 -594467.01 5679067.52 110.00 -594467.07 5680039.47 116.25 -594467.34 5681082.80 112.50 -594467.38 5679922.15 112.50 -594467.39 5681156.11 108.75 -594467.56 5679057.55 110.00 -594467.62 5679760.68 116.25 -594467.64 5679077.32 110.00 -594468.10 5678933.92 110.00 -594468.59 5680069.42 121.25 -594468.64 5679985.89 112.50 -594468.92 5680561.52 119.00 -594468.93 5681176.26 107.50 -594469.21 5681204.79 106.25 -594469.24 5679047.78 110.00 -594469.28 5680142.14 123.75 -594469.42 5681224.85 105.00 -594469.56 5681105.14 111.25 -594469.65 5680828.17 119.00 -594469.67 5680704.76 119.00 -594470.02 5685004.81 125.00 -594470.54 5679695.68 115.00 -594470.56 5679896.91 113.75 -594470.60 5680259.52 126.25 -594470.70 5680104.39 123.75 -594470.84 5680196.29 125.00 -594470.95 5680049.27 117.50 -594471.03 5680074.29 122.50 -594471.04 5679086.71 110.00 -594471.33 5679700.45 116.25 -594471.37 5680013.84 113.75 -594471.54 5680056.21 118.75 -594471.83 5680030.65 115.00 -594471.88 5680166.82 123.75 -594472.01 5679038.18 110.00 -594472.21 5684829.11 120.00 -594472.46 5681037.83 115.00 -594472.51 5679929.58 112.50 -594472.61 5680113.95 123.75 -594472.63 5680231.97 126.25 -594472.98 5680133.53 123.75 -594473.11 5681123.40 110.00 -594473.20 5680123.71 123.75 -594473.35 5678942.40 110.00 -594473.54 5681064.01 113.75 -594474.51 5685290.21 125.00 -594474.55 5685535.55 120.00 -594474.57 5679785.55 115.00 -594474.78 5679028.59 110.00 -594475.01 5679980.07 112.50 -594475.10 5680060.75 120.00 -594475.17 5680432.62 119.00 -594475.59 5680251.01 126.25 -594476.16 5679765.69 116.25 -594476.34 5680241.10 126.25 -594476.34 5679095.16 110.00 -594476.37 5681151.73 108.75 -594476.52 5679937.67 112.50 -594476.69 5685012.23 125.00 -594477.06 5680039.73 116.25 -594477.23 5681083.29 112.50 -594477.55 5679018.99 110.00 -594477.82 5680565.54 119.00 -594478.00 5681172.10 107.50 -594478.14 5678951.16 110.00 -594478.20 5679903.36 113.75 -594478.26 5679706.59 116.25 -594478.43 5680700.34 119.00 -594478.58 5680069.28 121.25 -594478.78 5681201.96 106.25 -594479.05 5681222.26 105.00 -594479.21 5680079.94 122.50 -594479.44 5681104.57 111.25 -594479.45 5680829.08 119.00 -594479.61 5679851.55 115.00 -594479.84 5679861.43 115.00 -594479.96 5680199.46 125.00 -594480.12 5679009.34 110.00 -594480.18 5679871.35 115.00 -594480.45 5679695.14 115.00 -594480.52 5679881.26 115.00 -594480.86 5679891.18 115.00 -594480.91 5680049.15 117.50 -594481.09 5680361.83 120.00 -594481.16 5679945.38 112.50 -594481.29 5679873.82 116.25 -594481.30 5680012.70 113.75 -594481.33 5684833.16 120.00 -594481.34 5680170.03 123.75 -594481.45 5680055.35 118.75 -594481.75 5681037.65 115.00 -594481.77 5680029.96 115.00 -594481.80 5679103.51 110.00 -594481.92 5678960.28 110.00 -594482.56 5678999.66 110.00 -594482.74 5681120.75 110.00 -594483.02 5680438.24 119.00 -594483.03 5679883.53 116.25 -594483.07 5679790.41 115.00 -594483.11 5681065.78 113.75 -594483.15 5679864.35 116.25 -594483.39 5679976.88 112.50 -594483.46 5685019.57 125.00 -594483.72 5678970.10 110.00 -594484.42 5685534.08 120.00 -594484.48 5685290.74 125.00 -594484.52 5680062.39 120.00 -594484.79 5678989.95 110.00 -594484.80 5679770.52 116.25 -594484.99 5679712.49 116.25 -594485.02 5678979.97 110.00 -594485.12 5680087.82 122.50 -594485.15 5681146.97 108.75 -594485.84 5679909.80 113.75 -594486.19 5679844.12 115.00 -594486.48 5680075.16 121.25 -594486.63 5680569.78 119.00 -594486.70 5679898.68 115.00 -594486.72 5680205.68 125.00 -594486.77 5681167.34 107.50 -594487.05 5680039.35 116.25 -594487.16 5681083.09 112.50 -594487.38 5681197.02 106.25 -594487.60 5679951.36 112.50 -594487.62 5680696.82 119.00 -594487.68 5679891.91 116.25 -594487.75 5679111.53 110.00 -594487.87 5680097.27 122.50 -594487.98 5681217.83 105.00 -594488.17 5680176.90 123.75 -594488.36 5679878.22 117.50 -594488.61 5680445.86 119.00 -594489.08 5680107.08 122.50 -594489.16 5680117.03 122.50 -594489.17 5679798.23 115.00 -594489.22 5680830.22 119.00 -594489.30 5681103.35 111.25 -594489.33 5680126.96 122.50 -594489.76 5679856.94 116.25 -594490.00 5680136.89 122.50 -594490.23 5685026.91 125.00 -594490.26 5679695.50 115.00 -594490.44 5679868.54 117.50 -594490.45 5684837.21 120.00 -594490.49 5680214.83 125.00 -594490.70 5679835.28 115.00 -594490.86 5680049.15 117.50 -594491.03 5681037.30 115.00 -594491.03 5680361.83 120.00 -594491.14 5680455.30 119.00 -594491.23 5680011.58 113.75 -594491.27 5680057.22 118.75 -594491.28 5680083.77 121.25 -594491.68 5680069.29 120.00 -594491.77 5680029.96 115.00 -594492.32 5681117.96 110.00 -594492.35 5679977.61 112.50 -594492.42 5679886.72 117.50 -594492.79 5681063.28 113.75 -594492.87 5680146.36 122.50 -594493.31 5680464.82 119.00 -594493.55 5679905.85 115.00 -594493.59 5680185.21 123.75 -594493.63 5679774.99 116.25 -594493.80 5679806.83 115.00 -594493.89 5680224.12 125.00 -594493.93 5681142.19 108.75 -594494.16 5679915.28 113.75 -594494.34 5685533.04 120.00 -594494.45 5685291.27 125.00 -594494.52 5680474.51 119.00 -594494.58 5679714.44 116.25 -594494.68 5679118.55 110.00 -594494.84 5679898.83 116.25 -594494.87 5679826.35 115.00 -594494.96 5680093.04 121.25 -594495.51 5679816.45 115.00 -594495.52 5681162.53 107.50 -594495.75 5681191.58 106.25 -594495.76 5680484.21 119.00 -594495.83 5679954.95 112.50 -594496.13 5680570.32 119.00 -594496.28 5679735.17 117.50 -594496.32 5679882.11 118.75 -594496.41 5680233.66 125.00 -594496.70 5681080.49 112.50 -594496.79 5679849.88 116.25 -594496.86 5679860.88 117.50 -594496.91 5681213.39 105.00 -594496.92 5680698.97 119.00 -594497.03 5680038.84 116.25 -594497.17 5680155.26 122.50 -594497.19 5680194.53 123.75 -594497.88 5680102.58 121.25 -594497.89 5680243.45 125.00 -594497.90 5679873.03 118.75 -594498.33 5680493.64 119.00 -594498.45 5680076.49 120.00 -594498.62 5680063.77 118.75 -594498.69 5685032.19 125.00 -594498.85 5679894.37 117.50 -594498.94 5680831.68 119.00 -594499.09 5680112.50 121.25 -594499.14 5681102.02 111.25 -594499.39 5680707.97 119.00 -594499.44 5680403.23 118.75 -594499.47 5679744.49 117.50 -594499.47 5680253.23 125.00 -594499.88 5679697.91 115.00 -594499.90 5684840.05 120.00 -594500.44 5679912.91 115.00 -594500.63 5679980.75 112.50 -594500.65 5680014.94 113.75 -594500.79 5680049.80 117.50 -594500.80 5680203.85 123.75 -594500.90 5680503.07 119.00 -594500.97 5680362.12 120.00 -594501.65 5680122.13 121.25 -594501.69 5681114.50 110.00 -594501.73 5679906.03 116.25 -594501.75 5680030.33 115.00 -594501.79 5681060.08 113.75 -594502.09 5679780.12 116.25 -594502.33 5680163.76 122.50 -594502.37 5680715.92 119.00 -594502.60 5679889.34 118.75 -594502.68 5681137.39 108.75 -594502.79 5679920.33 113.75 -594502.81 5680213.63 123.75 -594502.86 5679124.28 110.00 -594503.47 5680512.50 119.00 -594503.53 5680261.99 125.00 -594503.61 5679865.89 118.75 -594503.73 5680084.91 120.00 -594503.80 5679718.01 116.25 -594503.98 5681185.93 106.25 -594504.02 5681157.34 107.50 -594504.30 5685532.46 120.00 -594504.43 5685291.61 125.00 -594504.55 5681050.47 113.75 -594504.74 5679956.43 112.50 -594505.11 5680522.13 119.00 -594505.18 5679752.39 117.50 -594505.27 5680131.41 121.25 -594505.35 5679901.96 117.50 -594505.39 5679844.85 116.25 -594505.50 5680568.94 119.00 -594505.56 5679856.04 117.50 -594505.57 5680223.23 123.75 -594505.63 5681076.13 112.50 -594505.69 5680070.82 118.75 -594505.84 5681208.95 105.00 -594506.02 5679734.61 117.50 -594506.28 5679987.75 112.50 -594506.46 5680041.71 116.25 -594506.56 5680531.79 119.00 -594507.21 5685037.40 125.00 -594507.50 5680172.25 122.50 -594508.16 5680541.44 119.00 -594508.31 5680056.09 117.50 -594508.58 5680093.60 120.00 -594508.69 5680232.72 123.75 -594508.73 5680832.52 119.00 -594508.90 5681100.22 111.25 -594509.11 5679917.73 115.00 -594509.13 5679896.29 118.75 -594509.32 5680270.02 125.00 -594509.38 5680404.28 118.75 -594509.39 5679700.71 115.00 -594509.41 5679912.36 116.25 -594509.70 5680551.09 119.00 -594509.75 5680140.34 121.25 -594509.82 5684841.16 120.00 -594510.05 5680018.34 113.75 -594510.12 5679785.86 116.25 -594510.46 5679130.72 110.00 -594510.60 5681082.39 112.50 -594510.74 5680079.44 118.75 -594510.86 5680560.79 119.00 -594510.88 5680362.88 120.00 -594511.06 5681111.05 110.00 -594511.16 5679995.28 112.50 -594511.27 5680473.73 117.50 -594511.39 5680032.33 115.00 -594511.44 5681132.57 108.75 -594511.74 5680716.30 119.00 -594511.76 5679924.26 113.75 -594511.97 5680242.16 123.75 -594512.05 5681151.41 107.50 -594512.06 5680102.80 120.00 -594512.08 5679861.43 118.75 -594512.12 5681180.16 106.25 -594512.14 5681044.13 113.75 -594512.33 5680464.19 117.50 -594512.56 5679758.45 117.50 -594512.68 5680180.74 122.50 -594512.79 5679722.15 116.25 -594513.21 5679954.03 112.50 -594513.23 5680483.49 117.50 -594514.01 5679839.93 116.25 -594514.14 5680112.52 120.00 -594514.27 5680149.25 121.25 -594514.27 5685531.88 120.00 -594514.41 5685291.84 125.00 -594514.63 5679904.88 117.50 -594514.70 5680278.32 125.00 -594514.77 5681204.52 105.00 -594514.84 5679852.42 117.50 -594515.18 5680493.25 117.50 -594515.24 5680251.61 123.75 -594515.41 5680046.09 116.25 -594515.62 5680062.85 117.50 -594515.69 5680454.82 117.50 -594515.70 5679736.40 117.50 -594515.71 5680088.11 118.75 -594515.76 5685042.57 125.00 -594515.90 5679877.68 119.00 -594517.07 5680189.53 122.50 -594517.13 5680503.02 117.50 -594517.15 5681089.44 112.50 -594517.20 5680121.97 120.00 -594517.24 5679901.30 118.75 -594517.68 5679792.26 116.25 -594517.75 5679137.55 110.00 -594518.15 5680000.94 112.50 -594518.56 5680832.74 119.00 -594518.67 5681098.41 111.25 -594518.68 5679704.19 115.00 -594518.77 5680158.17 121.25 -594518.83 5679917.99 115.00 -594518.97 5680199.29 122.50 -594519.05 5680260.81 123.75 -594519.05 5680445.45 117.50 -594519.17 5680512.76 117.50 -594519.22 5679912.00 116.25 -594519.32 5680405.32 118.75 -594519.33 5680022.05 113.75 -594519.66 5679948.14 112.50 -594519.74 5684842.26 120.00 -594519.92 5680286.74 125.00 -594520.19 5681127.75 108.75 -594520.27 5681174.39 106.25 -594520.33 5681107.36 110.00 -594520.60 5680036.23 115.00 -594520.69 5680096.78 118.75 -594520.76 5680364.06 120.00 -594520.83 5680131.21 120.00 -594521.00 5681147.16 107.50 -594521.03 5680713.31 119.00 -594521.23 5681044.57 113.75 -594521.33 5679860.35 118.75 -594521.37 5680522.47 117.50 -594521.42 5680208.92 122.50 -594521.52 5679923.84 113.75 -594521.83 5679761.78 117.50 -594521.92 5679749.32 118.00 -594522.06 5679725.51 116.25 -594522.81 5680069.74 117.50 -594523.13 5680167.16 121.25 -594523.56 5680532.18 117.50 -594523.70 5681200.08 105.00 -594523.90 5679841.06 116.25 -594523.93 5680051.33 116.25 -594524.06 5680485.84 116.25 -594524.21 5685531.05 120.00 -594524.22 5679852.22 117.50 -594524.29 5680269.28 123.75 -594524.34 5685291.54 125.00 -594524.35 5679904.31 117.50 -594524.36 5685047.63 125.00 -594524.39 5680218.41 122.50 -594524.94 5679739.82 117.50 -594525.03 5679144.38 110.00 -594525.06 5679940.90 112.50 -594525.13 5680295.15 125.00 -594525.37 5680476.07 116.25 -594525.52 5680139.98 120.00 -594525.91 5679898.37 118.75 -594525.98 5679797.36 116.25 -594526.47 5680495.54 116.25 -594526.63 5680104.77 118.75 -594526.76 5681090.14 112.50 -594527.24 5680004.89 112.50 -594527.47 5680176.16 121.25 -594527.47 5680227.85 122.50 -594527.65 5680541.24 117.50 -594527.72 5680706.72 119.00 -594527.87 5680441.22 117.50 -594527.97 5679707.67 115.00 -594528.36 5679916.02 115.00 -594528.39 5681096.38 111.25 -594528.40 5680832.60 119.00 -594528.56 5679908.87 116.25 -594528.63 5681169.07 106.25 -594528.70 5680467.10 116.25 -594528.88 5680505.25 116.25 -594528.88 5680024.69 113.75 -594529.10 5679864.62 118.75 -594529.15 5684845.51 120.00 -594529.22 5680304.06 125.00 -594529.26 5680406.36 118.75 -594529.27 5680077.24 117.50 -594529.38 5681103.16 110.00 -594529.81 5680040.12 115.00 -594529.90 5681125.55 108.75 -594530.39 5681143.78 107.50 -594530.63 5680365.25 120.00 -594530.70 5681047.76 113.75 -594530.70 5679919.90 113.75 -594530.74 5680276.91 123.75 -594530.97 5680237.16 122.50 -594531.06 5680148.23 120.00 -594531.47 5679763.37 117.50 -594531.47 5680323.38 125.00 -594531.49 5680185.31 121.25 -594531.66 5679975.12 111.25 -594531.66 5679727.91 116.25 -594531.90 5680550.24 117.50 -594531.92 5680313.59 125.00 -594532.27 5679846.45 116.25 -594532.29 5679151.23 110.00 -594532.32 5680056.74 116.25 -594532.42 5680514.51 116.25 -594532.50 5679891.62 118.75 -594532.71 5679873.22 118.75 -594532.72 5680698.28 119.00 -594532.77 5681195.94 105.00 -594532.97 5685052.70 125.00 -594533.01 5679899.60 117.50 -594533.04 5680112.43 118.75 -594533.43 5679856.03 117.50 -594533.55 5679935.75 112.50 -594533.56 5681083.96 112.50 -594534.04 5685289.17 125.00 -594534.15 5685530.14 120.00 -594534.31 5679742.75 117.50 -594534.47 5680246.47 122.50 -594534.50 5679882.63 118.75 -594534.89 5680194.68 121.25 -594534.96 5680085.41 117.50 -594534.97 5679798.10 116.25 -594535.77 5679966.10 111.25 -594536.44 5680156.58 120.00 -594536.47 5681055.04 113.75 -594536.56 5679983.63 111.25 -594536.65 5680558.83 117.50 -594536.66 5679903.27 116.25 -594536.78 5681064.80 113.75 -594536.87 5680461.39 116.25 -594537.02 5680437.31 117.50 -594537.03 5680006.68 112.50 -594537.19 5680284.55 123.75 -594537.19 5679911.49 115.00 -594537.21 5680523.28 116.25 -594537.41 5680204.34 121.25 -594537.50 5681074.86 112.50 -594537.52 5679710.29 115.00 -594537.97 5681093.77 111.25 -594538.22 5681166.31 106.25 -594538.23 5680832.38 119.00 -594538.52 5684848.96 120.00 -594538.82 5680025.75 113.75 -594538.90 5679864.39 117.50 -594538.96 5679158.66 110.00 -594539.02 5680043.99 115.00 -594539.10 5680405.78 118.75 -594539.17 5681101.18 110.00 -594539.25 5680255.17 122.50 -594539.46 5680120.10 118.75 -594539.69 5681123.54 108.75 -594539.89 5679915.95 113.75 -594539.92 5680214.01 121.25 -594539.93 5681140.84 107.50 -594540.12 5680364.42 120.00 -594540.12 5679852.46 116.25 -594540.13 5679893.05 117.50 -594540.40 5680062.63 116.25 -594540.86 5679958.03 111.25 -594541.06 5679763.10 117.50 -594541.14 5679874.03 117.50 -594541.21 5680695.16 119.00 -594541.27 5679730.30 116.25 -594541.30 5680165.26 120.00 -594541.45 5685057.96 125.00 -594541.91 5681191.97 105.00 -594542.01 5680532.05 116.25 -594542.03 5680223.78 121.25 -594542.04 5679930.59 112.50 -594542.46 5680091.96 117.50 -594542.75 5679792.07 116.25 -594543.52 5679883.73 117.50 -594543.56 5685286.31 125.00 -594543.64 5680292.18 123.75 -594544.02 5680233.57 121.25 -594544.07 5679744.02 117.50 -594544.07 5685529.07 120.00 -594544.08 5679989.51 111.25 -594544.12 5679896.68 116.25 -594544.18 5680263.81 122.50 -594544.55 5680564.89 117.50 -594544.57 5681071.03 112.50 -594544.76 5681063.96 113.75 -594545.25 5680128.23 118.75 -594545.63 5679906.30 115.00 -594545.63 5679166.10 110.00 -594545.91 5680457.12 116.25 -594545.95 5680174.03 120.00 -594546.60 5680434.68 117.50 -594546.75 5679586.80 110.00 -594546.76 5679859.88 116.25 -594546.80 5680008.56 112.50 -594546.81 5680540.82 116.25 -594547.15 5679576.83 110.00 -594547.21 5679712.46 115.00 -594547.49 5684853.07 120.00 -594547.55 5681091.16 111.25 -594547.82 5681163.55 106.25 -594547.93 5680830.86 119.00 -594547.94 5680242.74 121.25 -594548.08 5680301.09 123.75 -594548.47 5680068.53 116.25 -594548.62 5679911.09 113.75 -594548.76 5680026.81 113.75 -594548.83 5680403.53 118.75 -594548.87 5680359.68 120.00 -594548.95 5680044.78 115.00 -594548.95 5681099.20 110.00 -594549.08 5680183.47 120.00 -594549.11 5680272.44 122.50 -594549.24 5679757.60 117.50 -594549.27 5679567.07 110.00 -594549.39 5681121.17 108.75 -594549.44 5679784.77 116.25 -594549.48 5679888.71 116.25 -594549.52 5681138.09 107.50 -594549.71 5679953.57 111.25 -594549.83 5685063.40 125.00 -594549.93 5680319.94 123.75 -594549.96 5680098.50 117.50 -594550.54 5679869.10 116.25 -594550.76 5680136.56 118.75 -594550.79 5679595.27 110.00 -594550.91 5680696.06 119.00 -594551.05 5679879.03 116.25 -594551.06 5681188.00 105.00 -594551.08 5679731.61 116.25 -594551.12 5680193.20 120.00 -594551.19 5679927.01 112.50 -594551.21 5680499.26 115.00 -594551.39 5679557.32 110.00 -594552.05 5680251.85 121.25 -594552.11 5680310.19 123.75 -594552.30 5679173.53 110.00 -594552.46 5680570.94 117.50 -594552.51 5685281.88 125.00 -594552.55 5679748.54 117.50 -594553.01 5679547.47 110.00 -594553.40 5679992.59 111.25 -594553.57 5680202.82 120.00 -594553.89 5685527.29 120.00 -594553.93 5679900.86 115.00 -594554.26 5680508.67 115.00 -594554.35 5681061.14 113.75 -594554.49 5681071.56 112.50 -594554.56 5679537.60 110.00 -594554.99 5684859.65 120.00 -594554.99 5680546.43 116.25 -594555.19 5680490.09 115.00 -594555.20 5680280.29 122.50 -594555.29 5680453.67 116.25 -594556.28 5680144.90 118.75 -594556.28 5680432.37 117.50 -594556.55 5680074.43 116.25 -594556.55 5680010.48 112.50 -594556.69 5680353.83 120.00 -594556.73 5680212.25 120.00 -594556.78 5679778.13 116.25 -594557.02 5680827.35 119.00 -594557.09 5679712.99 115.00 -594557.14 5681088.55 111.25 -594557.33 5681160.53 106.25 -594557.35 5679906.22 113.75 -594557.46 5680105.05 117.50 -594557.60 5679602.57 110.00 -594557.89 5679181.79 110.00 -594558.16 5679528.38 110.00 -594558.20 5685068.84 125.00 -594558.41 5680259.42 121.25 -594558.55 5679949.09 111.25 -594558.57 5680401.27 118.75 -594558.70 5680027.87 113.75 -594558.87 5681098.08 110.00 -594558.93 5680045.33 115.00 -594559.08 5681118.72 108.75 -594559.18 5681135.60 107.50 -594559.88 5680288.95 122.50 -594560.12 5680699.12 119.00 -594560.22 5679893.80 115.00 -594560.26 5680481.69 115.00 -594560.26 5681184.17 105.00 -594560.28 5680221.51 120.00 -594560.36 5680577.00 117.50 -594560.38 5680516.13 115.00 -594560.82 5679924.57 112.50 -594560.88 5679733.01 116.25 -594561.01 5680153.59 118.75 -594561.30 5685277.15 125.00 -594562.40 5679855.23 115.00 -594562.49 5684866.24 120.00 -594562.57 5679519.43 110.00 -594562.65 5679865.08 115.00 -594563.03 5680346.16 120.00 -594563.13 5679994.44 111.25 -594563.28 5679190.19 110.00 -594563.37 5679845.36 115.00 -594563.43 5680551.79 116.25 -594563.52 5680298.20 122.50 -594563.71 5685525.51 120.00 -594563.77 5679884.54 115.00 -594563.87 5680163.17 118.75 -594563.94 5681058.32 113.75 -594563.97 5679771.33 116.25 -594564.06 5679874.90 115.00 -594564.23 5681070.20 112.50 -594564.46 5679835.50 115.00 -594564.66 5680080.26 116.25 -594564.74 5679899.68 113.75 -594564.81 5680450.63 116.25 -594564.90 5680230.32 120.00 -594564.96 5680111.59 117.50 -594565.21 5680266.73 121.25 -594565.49 5680822.41 119.00 -594565.73 5680429.48 117.50 -594565.79 5685075.25 125.00 -594565.95 5680317.41 122.50 -594566.30 5680307.74 122.50 -594566.31 5680012.41 112.50 -594566.37 5679510.21 110.00 -594566.62 5681085.63 111.25 -594566.63 5679825.82 115.00 -594566.73 5680172.75 118.75 -594566.73 5681157.19 106.25 -594567.01 5679713.22 115.00 -594567.07 5680396.48 118.75 -594567.25 5679605.07 110.00 -594567.36 5679944.56 111.25 -594567.64 5680474.95 115.00 -594568.12 5680522.46 115.00 -594568.26 5680583.05 117.50 -594568.31 5680030.15 113.75 -594568.48 5680704.30 119.00 -594568.52 5680048.14 115.00 -594568.59 5681115.70 108.75 -594568.68 5679198.59 110.00 -594568.81 5681097.20 110.00 -594568.85 5681133.10 107.50 -594568.89 5679816.16 115.00 -594568.94 5680338.18 120.00 -594569.53 5680239.12 120.00 -594569.59 5680182.33 118.75 -594569.63 5679500.77 110.00 -594569.74 5681181.07 105.00 -594569.77 5679920.77 112.50 -594569.89 5684872.93 120.00 -594569.93 5685272.13 125.00 -594570.66 5679734.54 116.25 -594570.98 5679764.34 116.25 -594571.20 5680274.72 121.25 -594571.39 5680119.11 117.50 -594571.41 5679806.56 115.00 -594571.44 5679892.27 113.75 -594571.87 5680557.15 116.25 -594572.61 5679997.10 111.25 -594572.80 5685082.36 125.00 -594572.87 5680191.77 118.75 -594572.90 5679491.34 110.00 -594573.05 5680085.71 116.25 -594573.10 5680315.88 121.25 -594573.28 5680816.42 119.00 -594573.43 5681055.19 113.75 -594573.53 5685523.74 120.00 -594573.88 5681067.82 112.50 -594573.91 5679207.09 110.00 -594574.26 5680329.79 120.00 -594574.32 5679882.76 113.75 -594574.34 5680424.48 117.50 -594574.42 5680247.58 120.00 -594574.44 5680448.01 116.25 -594574.84 5680390.20 118.75 -594575.09 5680711.38 119.00 -594575.56 5679797.55 115.00 -594575.80 5680469.42 115.00 -594575.83 5680015.27 112.50 -594575.88 5681082.05 111.25 -594576.16 5680201.20 118.75 -594576.16 5680589.11 117.50 -594576.17 5679481.90 110.00 -594576.17 5679940.03 111.25 -594576.23 5680528.15 115.00 -594576.46 5681155.24 106.25 -594576.51 5679873.04 113.75 -594576.52 5679715.72 115.00 -594577.03 5684879.91 120.00 -594577.04 5679606.20 110.00 -594577.10 5680282.78 121.25 -594577.22 5680127.19 117.50 -594577.25 5679863.07 113.75 -594577.34 5679833.13 113.75 -594577.43 5679756.87 116.25 -594577.44 5680034.24 113.75 -594577.52 5679914.56 112.50 -594577.70 5679843.12 113.75 -594577.90 5680051.56 115.00 -594577.99 5679853.11 113.75 -594577.99 5681112.32 108.75 -594578.09 5680807.86 119.00 -594578.40 5679216.01 110.00 -594578.51 5681130.60 107.50 -594578.56 5685267.10 125.00 -594578.60 5680720.37 119.00 -594578.63 5681095.41 110.00 -594578.73 5679739.34 116.25 -594578.78 5679472.28 110.00 -594578.91 5680730.20 119.00 -594579.21 5681177.97 105.00 -594579.56 5680740.01 119.00 -594579.74 5679788.55 115.00 -594579.81 5685089.47 125.00 -594580.17 5680210.33 118.75 -594580.35 5679823.65 113.75 -594580.39 5680749.82 119.00 -594580.53 5680562.13 116.25 -594580.61 5680255.36 120.00 -594580.96 5679462.53 110.00 -594581.03 5680309.81 121.25 -594581.06 5680759.63 119.00 -594581.16 5679412.65 110.00 -594581.21 5679422.64 110.00 -594581.24 5680798.54 119.00 -594581.26 5679432.62 110.00 -594581.31 5679442.61 110.00 -594581.36 5679748.28 116.25 -594581.36 5679452.60 110.00 -594581.44 5680091.15 116.25 -594581.44 5680769.46 119.00 -594581.46 5679402.67 110.00 -594581.60 5680001.25 111.25 -594581.91 5679392.70 110.00 -594582.02 5679966.17 110.00 -594582.23 5680324.36 120.00 -594582.35 5679382.72 110.00 -594582.59 5680291.13 121.25 -594582.86 5681051.86 113.75 -594582.90 5679224.92 110.00 -594582.93 5680135.32 117.50 -594582.95 5680419.49 117.50 -594583.01 5680384.46 118.75 -594583.11 5685520.95 120.00 -594583.13 5680788.90 119.00 -594583.21 5680443.21 116.25 -594583.26 5680779.11 119.00 -594583.39 5679372.81 110.00 -594583.52 5681065.44 112.50 -594583.55 5679907.08 112.50 -594583.63 5679814.21 113.75 -594583.64 5679976.03 110.00 -594583.79 5680595.48 117.50 -594584.16 5684886.89 120.00 -594584.38 5680935.47 120.00 -594584.38 5679779.77 115.00 -594584.68 5680300.89 121.25 -594584.75 5680219.21 118.75 -594584.82 5679935.30 111.25 -594584.97 5680465.42 115.00 -594585.14 5679362.98 110.00 -594585.15 5681078.47 111.25 -594585.23 5680018.49 112.50 -594585.55 5680531.76 115.00 -594585.56 5679719.69 115.00 -594585.96 5679234.39 110.00 -594586.24 5680144.70 117.50 -594586.38 5681154.12 106.25 -594586.56 5680038.33 113.75 -594586.66 5685096.72 125.00 -594586.80 5680263.14 120.00 -594586.90 5679353.15 110.00 -594586.98 5679605.32 110.00 -594587.06 5680055.56 115.00 -594587.10 5680847.25 120.00 -594587.21 5679897.85 112.50 -594587.39 5681108.93 108.75 -594587.41 5679958.01 110.00 -594587.83 5685263.43 125.00 -594588.18 5681128.12 107.50 -594588.43 5681093.47 110.00 -594588.58 5680837.85 120.00 -594588.61 5679244.02 110.00 -594588.66 5679343.32 110.00 -594588.71 5681174.96 105.00 -594589.02 5679771.00 115.00 -594589.10 5680856.58 120.00 -594589.15 5680801.29 120.00 -594589.33 5680566.88 116.25 -594589.34 5680228.09 118.75 -594589.40 5680097.18 116.25 -594589.56 5680154.09 117.50 -594589.87 5679888.30 112.50 -594590.11 5679333.45 110.00 -594590.19 5680828.44 120.00 -594590.20 5679983.23 110.00 -594590.60 5680005.41 111.25 -594590.70 5679253.77 110.00 -594590.90 5679323.50 110.00 -594590.99 5681046.23 113.75 -594591.04 5680602.31 117.50 -594591.09 5680413.77 117.50 -594591.22 5679927.73 111.25 -594591.42 5680379.06 118.75 -594591.50 5679868.63 112.50 -594591.53 5684893.55 120.00 -594591.54 5679878.56 112.50 -594591.54 5679858.70 112.50 -594591.68 5679313.54 110.00 -594591.68 5680437.97 116.25 -594592.04 5679303.56 110.00 -594592.13 5680493.67 113.75 -594592.16 5680324.54 120.00 -594592.23 5680819.12 120.00 -594592.27 5679293.58 110.00 -594592.27 5679263.63 110.00 -594592.49 5679273.61 110.00 -594592.49 5679283.60 110.00 -594592.59 5681061.54 112.50 -594592.67 5685518.08 120.00 -594592.99 5680270.93 120.00 -594593.02 5680163.42 117.50 -594593.05 5679848.89 112.50 -594593.19 5685104.28 125.00 -594593.23 5680809.92 120.00 -594593.35 5680864.61 120.00 -594593.47 5679762.13 115.00 -594593.69 5679725.17 115.00 -594593.88 5680934.59 120.00 -594594.13 5680461.43 115.00 -594594.30 5680502.64 113.75 -594594.30 5680022.58 112.50 -594594.34 5679951.00 110.00 -594594.41 5681074.89 111.25 -594594.87 5680535.37 115.00 -594595.08 5680958.98 118.25 -594595.28 5680236.13 118.75 -594595.34 5681149.96 106.25 -594595.48 5680060.71 115.00 -594595.67 5680042.44 113.75 -594596.00 5680280.27 120.00 -594596.01 5680484.66 113.75 -594596.21 5680104.47 116.25 -594596.29 5679839.58 112.50 -594596.57 5681104.99 108.75 -594596.57 5680172.72 117.50 -594596.85 5679605.82 110.00 -594597.23 5685260.10 125.00 -594597.61 5679920.16 111.25 -594597.69 5681125.21 107.50 -594597.87 5679753.24 115.00 -594597.92 5679734.14 115.00 -594598.03 5681090.95 110.00 -594598.13 5680571.62 116.25 -594598.16 5680970.48 117.50 -594598.28 5680609.13 117.50 -594598.30 5681172.21 105.00 -594598.73 5679988.42 110.00 -594598.76 5681039.93 113.75 -594598.79 5680289.80 120.00 -594599.04 5680407.79 117.50 -594599.34 5680431.54 116.25 -594599.56 5679743.54 115.00 -594599.71 5680009.27 111.25 -594599.76 5680319.00 120.00 -594599.83 5680373.66 118.75 -594600.12 5680182.02 117.50 -594600.19 5685111.30 125.00 -594600.25 5684898.40 120.00 -594600.37 5679830.53 112.50 -594600.42 5680871.03 120.00 -594600.79 5681055.93 112.50 -594600.86 5680510.09 113.75 -594601.17 5680299.41 120.00 -594601.25 5680244.14 118.75 -594601.44 5679911.22 111.25 -594601.82 5680309.27 120.00 -594601.94 5680455.34 115.00 -594602.22 5685515.20 120.00 -594602.47 5679945.19 110.00 -594602.57 5680112.15 116.25 -594602.82 5680477.34 113.75 -594602.96 5680067.34 115.00 -594603.34 5680026.73 112.50 -594603.38 5680933.71 120.00 -594603.53 5681071.00 111.25 -594603.61 5680540.22 115.00 -594604.08 5679901.68 111.25 -594604.12 5681145.20 106.25 -594604.56 5680047.02 113.75 -594604.66 5680957.26 118.25 -594604.95 5679891.81 111.25 -594605.06 5680190.65 117.50 -594605.20 5680616.25 117.50 -594605.64 5681032.98 113.75 -594605.69 5681100.92 108.75 -594605.97 5679881.96 111.25 -594606.22 5680577.30 116.25 -594606.57 5680966.15 117.50 -594606.62 5681120.75 107.50 -594606.63 5679607.85 110.00 -594606.99 5680401.80 117.50 -594607.00 5680425.11 116.25 -594607.06 5681086.69 110.00 -594607.14 5685258.92 125.00 -594607.21 5680252.16 118.75 -594607.28 5679993.58 110.00 -594607.29 5680120.96 116.25 -594607.70 5679872.20 111.25 -594607.89 5681169.47 105.00 -594608.00 5680876.81 120.00 -594608.54 5685116.78 125.00 -594608.57 5680516.22 113.75 -594608.72 5680369.14 118.75 -594608.95 5681050.27 112.50 -594609.04 5680012.62 111.25 -594609.36 5680448.63 115.00 -594609.40 5681023.71 113.75 -594609.43 5679862.44 111.25 -594609.54 5680074.86 115.00 -594609.62 5684901.43 120.00 -594610.20 5680199.17 117.50 -594610.23 5680980.00 115.00 -594610.24 5680470.65 113.75 -594610.42 5679939.16 110.00 -594610.99 5680624.34 117.50 -594611.01 5680130.20 116.25 -594611.21 5685511.18 120.00 -594611.22 5679852.70 111.25 -594611.65 5680032.20 112.50 -594612.23 5680930.66 120.00 -594612.27 5681066.27 111.25 -594612.34 5680545.09 115.00 -594612.64 5681014.28 113.75 -594612.98 5680260.29 118.75 -594613.02 5679842.95 111.25 -594613.03 5681140.70 106.25 -594613.13 5680584.53 116.25 -594613.14 5680052.03 113.75 -594613.51 5680837.35 118.25 -594614.06 5680139.72 116.25 -594614.27 5680955.62 118.25 -594614.60 5680395.38 117.50 -594614.82 5681096.86 108.75 -594614.98 5680961.82 117.50 -594615.09 5681004.59 113.75 -594615.26 5680082.96 115.00 -594615.48 5680207.60 117.50 -594615.54 5681116.29 107.50 -594615.65 5680420.27 116.25 -594615.71 5680882.42 120.00 -594615.92 5679998.59 110.00 -594616.09 5681082.42 110.00 -594616.15 5681043.55 112.50 -594616.40 5679609.89 110.00 -594616.76 5680846.53 118.25 -594616.77 5680441.93 115.00 -594616.78 5680632.44 117.50 -594616.88 5685122.27 125.00 -594616.95 5680269.47 118.75 -594617.01 5680149.27 116.25 -594617.06 5685257.73 125.00 -594617.47 5681166.72 105.00 -594617.76 5680364.87 118.75 -594617.84 5680519.96 113.75 -594618.03 5679932.70 110.00 -594618.11 5680464.50 113.75 -594618.18 5680995.15 113.75 -594618.36 5680015.97 111.25 -594618.62 5680974.57 115.00 -594618.76 5679834.92 111.25 -594619.25 5685505.26 120.00 -594619.43 5680092.04 115.00 -594619.45 5684903.15 120.00 -594619.95 5680158.83 116.25 -594620.03 5680591.76 116.25 -594620.30 5680037.02 112.50 -594620.30 5681060.45 111.25 -594620.38 5680058.93 113.75 -594620.40 5680889.99 120.00 -594620.65 5680926.17 120.00 -594620.84 5680550.35 115.00 -594620.92 5680278.64 118.75 -594621.13 5680215.80 117.50 -594621.51 5680101.80 115.00 -594621.94 5681136.20 106.25 -594622.35 5680899.34 120.00 -594622.37 5680389.19 117.50 -594622.50 5681035.91 112.50 -594622.57 5680640.54 117.50 -594622.69 5680854.04 118.25 -594622.98 5680986.38 113.75 -594623.14 5680168.31 116.25 -594623.39 5680111.62 115.00 -594623.53 5680952.81 118.25 -594623.78 5679924.74 110.00 -594623.84 5680918.13 120.00 -594623.94 5681092.79 108.75 -594624.12 5680959.47 117.50 -594624.29 5680908.68 120.00 -594624.47 5681111.82 107.50 -594624.63 5680415.89 116.25 -594624.65 5679826.95 111.25 -594624.88 5680287.81 118.75 -594625.00 5679614.65 110.00 -594625.03 5680436.35 115.00 -594625.06 5681078.05 110.00 -594625.16 5680002.02 110.00 -594625.42 5680121.40 115.00 -594625.42 5685127.42 125.00 -594626.17 5680458.58 113.75 -594626.54 5680360.11 118.75 -594626.67 5685260.38 125.00 -594626.78 5680224.00 117.50 -594626.92 5680177.50 116.25 -594626.94 5680598.99 116.25 -594627.11 5680523.70 113.75 -594627.11 5680066.30 113.75 -594627.14 5681164.30 105.00 -594627.26 5680297.49 118.75 -594627.26 5680648.40 117.50 -594627.29 5685499.35 120.00 -594627.52 5681027.60 112.50 -594627.59 5680970.44 115.00 -594627.69 5680019.31 111.25 -594628.19 5681054.42 111.25 -594628.39 5680130.93 115.00 -594628.45 5679915.92 110.00 -594629.10 5680041.49 112.50 -594629.24 5680555.77 115.00 -594629.30 5684904.55 120.00 -594629.35 5680307.27 118.75 -594629.53 5680860.97 118.25 -594629.87 5680979.89 113.75 -594630.72 5680140.63 115.00 -594630.77 5680383.86 117.50 -594630.81 5681131.62 106.25 -594630.89 5680232.82 117.50 -594631.84 5680316.93 118.75 -594631.98 5679906.60 110.00 -594632.25 5680185.96 116.25 -594632.37 5680948.78 118.25 -594632.51 5680818.90 117.50 -594632.54 5680242.64 117.50 -594633.07 5681088.72 108.75 -594633.18 5679620.38 110.00 -594633.26 5680410.84 116.25 -594633.34 5680957.37 117.50 -594633.36 5681072.49 110.00 -594633.40 5681107.36 107.50 -594633.54 5680431.10 115.00 -594633.56 5680073.94 113.75 -594633.72 5680809.33 117.50 -594633.73 5680606.33 116.25 -594634.16 5685132.26 125.00 -594634.19 5680252.45 117.50 -594634.20 5680452.62 113.75 -594634.82 5680828.06 117.50 -594634.93 5680004.08 110.00 -594635.05 5679897.11 110.00 -594635.09 5680262.34 117.50 -594635.19 5680272.29 117.50 -594635.24 5685493.33 120.00 -594635.25 5680326.32 118.75 -594635.25 5680355.21 118.75 -594635.46 5680149.43 115.00 -594635.90 5680868.34 118.25 -594636.09 5681048.40 111.25 -594636.18 5685263.39 125.00 -594636.19 5680800.13 117.50 -594636.38 5680527.44 113.75 -594636.60 5679887.24 110.00 -594636.62 5680083.14 113.75 -594636.76 5680023.28 111.25 -594636.83 5679972.22 108.75 -594636.90 5681162.28 105.00 -594637.12 5680047.38 112.50 -594637.12 5680345.62 118.75 -594637.30 5680281.90 117.50 -594637.31 5680968.11 115.00 -594637.43 5679962.38 108.75 -594637.45 5680561.46 115.00 -594637.57 5680194.43 116.25 -594638.14 5679877.37 110.00 -594638.14 5680837.12 117.50 -594638.23 5680093.00 113.75 -594638.32 5679628.56 110.00 -594638.55 5680335.73 118.75 -594639.12 5680976.18 113.75 -594639.18 5680378.53 117.50 -594639.27 5684904.01 120.00 -594639.27 5680994.74 111.25 -594639.68 5681127.04 106.25 -594639.83 5679867.53 110.00 -594639.85 5680102.87 113.75 -594639.95 5680490.85 112.50 -594640.20 5680158.23 115.00 -594640.29 5680791.40 117.50 -594640.43 5680613.74 116.25 -594640.50 5680943.41 118.25 -594640.53 5680291.32 117.50 -594640.54 5680985.45 111.25 -594641.46 5680112.74 113.75 -594641.54 5679857.69 110.00 -594641.66 5681066.94 110.00 -594641.66 5680953.63 117.50 -594641.82 5679980.30 108.75 -594641.84 5680481.64 112.50 -594641.89 5680405.80 116.25 -594642.02 5680446.40 113.75 -594642.05 5680425.85 115.00 -594642.16 5680875.81 118.25 -594642.17 5679637.77 110.00 -594642.19 5681084.66 108.75 -594642.32 5685137.98 125.00 -594642.33 5681102.90 107.50 -594642.48 5680203.13 116.25 -594642.71 5685486.71 120.00 -594642.88 5681041.20 111.25 -594643.08 5680122.60 113.75 -594643.16 5680845.33 117.50 -594643.29 5679847.87 110.00 -594643.61 5679686.82 110.00 -594643.76 5680300.73 117.50 -594644.19 5679955.09 108.75 -594644.31 5680782.64 117.50 -594644.38 5679647.41 110.00 -594644.75 5680005.72 110.00 -594645.09 5680053.34 112.50 -594645.10 5680958.81 116.25 -594645.11 5680166.94 115.00 -594645.14 5680132.35 113.75 -594645.36 5680531.77 113.75 -594645.40 5685267.22 125.00 -594645.50 5679657.34 110.00 -594645.52 5680567.37 115.00 -594645.72 5679677.19 110.00 -594645.77 5680027.42 111.25 -594646.04 5679667.31 110.00 -594646.14 5679696.48 110.00 -594646.26 5680498.28 112.50 -594646.27 5681159.29 105.00 -594646.36 5679838.36 110.00 -594646.87 5680372.31 117.50 -594646.93 5680212.08 116.25 -594647.00 5680936.24 118.25 -594647.10 5680310.09 117.50 -594647.14 5680621.16 116.25 -594647.27 5680967.28 115.00 -594647.30 5680473.70 112.50 -594648.00 5680773.73 117.50 -594648.09 5680946.71 117.50 -594648.26 5680883.40 118.25 -594648.30 5680853.49 117.50 -594648.52 5681122.41 106.25 -594648.63 5680141.72 113.75 -594648.95 5680974.37 113.75 -594649.20 5679705.97 110.00 -594649.23 5684903.48 120.00 -594649.30 5685144.99 125.00 -594649.37 5680988.35 111.25 -594649.42 5679828.86 110.00 -594649.46 5680062.12 112.50 -594649.84 5680440.17 113.75 -594649.96 5681061.39 110.00 -594650.17 5685480.08 120.00 -594650.26 5680175.50 115.00 -594650.40 5679984.51 108.75 -594650.52 5680400.75 116.25 -594650.53 5680420.57 115.00 -594650.64 5681079.38 108.75 -594651.33 5680764.72 117.50 -594651.38 5680221.03 116.25 -594651.42 5681098.82 107.50 -594652.31 5680755.13 117.50 -594652.49 5680270.21 116.25 -594652.66 5680260.24 116.25 -594652.76 5680928.42 118.25 -594652.85 5679819.50 110.00 -594652.89 5680318.19 117.50 -594652.94 5680150.65 113.75 -594653.04 5679715.19 110.00 -594653.08 5680629.15 116.25 -594653.10 5680280.15 116.25 -594653.22 5680891.72 118.25 -594653.34 5680071.27 112.50 -594653.41 5679951.24 108.75 -594653.42 5680573.47 115.00 -594653.76 5680954.58 116.25 -594653.77 5680365.14 117.50 -594653.82 5680861.40 117.50 -594653.89 5680250.31 116.25 -594653.95 5680536.89 113.75 -594654.04 5680466.48 112.50 -594654.20 5680939.48 117.50 -594654.26 5680230.39 116.25 -594654.29 5680032.35 111.25 -594654.37 5680504.04 112.50 -594654.69 5681153.95 105.00 -594654.74 5680005.94 110.00 -594654.77 5680240.38 116.25 -594655.08 5685472.27 120.00 -594655.15 5685266.54 125.00 -594655.30 5685462.29 120.00 -594655.30 5685152.97 125.00 -594655.54 5680183.99 115.00 -594655.87 5685452.33 120.00 -594656.06 5680289.70 116.25 -594656.26 5680964.02 115.00 -594656.75 5680327.17 117.50 -594656.91 5679724.39 110.00 -594657.11 5679810.47 110.00 -594657.12 5680080.47 112.50 -594657.15 5681054.49 110.00 -594657.30 5681117.65 106.25 -594657.31 5680994.22 111.25 -594657.35 5680919.85 118.25 -594657.36 5680900.51 118.25 -594657.48 5685442.83 120.00 -594657.80 5680356.69 117.50 -594657.98 5680394.21 116.25 -594658.03 5680434.45 113.75 -594658.33 5680637.66 116.25 -594658.49 5680910.18 118.25 -594658.51 5680346.76 117.50 -594658.56 5680414.70 115.00 -594658.68 5680972.26 113.75 -594658.81 5680158.74 113.75 -594658.84 5681073.67 108.75 -594658.96 5680931.36 117.50 -594659.12 5680336.84 117.50 -594659.20 5684902.95 120.00 -594659.29 5680869.34 117.50 -594659.40 5680299.06 116.25 -594659.65 5680458.26 112.50 -594660.12 5679986.82 108.75 -594660.20 5679733.82 110.00 -594660.48 5680580.54 115.00 -594660.72 5685161.35 125.00 -594660.77 5681095.32 107.50 -594660.89 5680089.68 112.50 -594660.94 5680192.39 115.00 -594661.38 5679801.44 110.00 -594661.49 5680948.96 116.25 -594662.04 5680038.52 111.25 -594662.45 5679947.04 108.75 -594662.53 5680542.01 113.75 -594662.95 5679743.42 110.00 -594663.17 5681148.71 105.00 -594663.26 5680922.94 117.50 -594663.28 5680508.47 112.50 -594663.40 5680878.06 117.50 -594663.57 5680646.17 116.25 -594664.14 5680099.05 112.50 -594664.21 5681047.42 110.00 -594664.67 5680006.75 110.00 -594664.68 5680166.83 113.75 -594664.93 5685436.19 120.00 -594664.95 5680387.04 116.25 -594664.96 5679792.14 110.00 -594665.01 5685264.95 125.00 -594665.13 5680201.46 115.00 -594665.23 5680307.19 116.25 -594665.37 5680959.89 115.00 -594665.63 5679753.04 110.00 -594665.64 5680999.21 111.25 -594665.66 5680407.67 115.00 -594665.92 5685169.87 125.00 -594666.07 5681112.90 106.25 -594666.29 5680887.07 117.50 -594666.32 5680428.85 113.75 -594666.39 5680108.74 112.50 -594666.93 5680588.12 115.00 -594667.07 5681068.03 108.75 -594667.31 5680451.93 112.50 -594667.42 5680967.41 113.75 -594667.57 5680914.51 117.50 -594667.79 5679762.77 110.00 -594667.92 5679782.61 110.00 -594668.64 5680118.43 112.50 -594668.78 5679772.66 110.00 -594668.80 5680942.69 116.25 -594669.17 5684902.45 120.00 -594669.18 5680896.08 117.50 -594669.32 5680210.54 115.00 -594669.39 5680828.83 116.25 -594669.41 5680905.29 117.50 -594669.79 5680044.69 111.25 -594669.81 5681039.23 110.00 -594669.97 5685257.10 125.00 -594670.02 5680259.96 115.00 -594670.09 5679987.40 108.75 -594670.12 5681091.83 107.50 -594670.24 5680269.92 115.00 -594670.35 5685178.73 125.00 -594670.80 5680279.90 115.00 -594670.97 5679941.87 108.75 -594671.05 5680315.31 116.25 -594671.12 5680547.13 113.75 -594671.16 5680379.28 116.25 -594671.37 5680220.27 115.00 -594671.57 5680250.08 115.00 -594671.57 5680819.15 116.25 -594671.84 5681143.78 105.00 -594672.19 5680512.89 112.50 -594672.36 5680838.19 116.25 -594672.43 5680596.46 115.00 -594672.57 5680240.16 115.00 -594672.64 5680127.53 112.50 -594672.66 5680230.16 115.00 -594672.76 5680400.63 115.00 -594673.07 5685188.34 125.00 -594673.13 5685247.72 125.00 -594673.26 5680954.03 115.00 -594673.39 5680171.64 113.75 -594673.70 5680289.25 115.00 -594673.70 5680444.59 112.50 -594673.81 5680422.32 113.75 -594673.90 5685432.71 120.00 -594674.13 5685237.79 125.00 -594674.31 5680809.66 116.25 -594674.58 5680008.05 110.00 -594674.89 5681108.24 106.25 -594674.99 5680935.48 116.25 -594675.08 5685198.07 125.00 -594675.26 5681000.81 111.25 -594675.61 5685208.04 125.00 -594675.62 5681031.17 110.00 -594675.70 5685227.93 125.00 -594675.72 5680961.92 113.75 -594675.74 5680847.53 116.25 -594676.15 5685218.01 125.00 -594676.18 5681063.92 108.75 -594676.46 5680370.80 116.25 -594676.85 5680323.46 116.25 -594677.23 5680136.34 112.50 -594677.54 5680050.87 111.25 -594677.61 5680605.01 115.00 -594677.70 5679934.49 108.75 -594677.79 5680554.46 113.75 -594678.24 5680298.16 115.00 -594678.26 5680435.76 112.50 -594678.82 5680800.83 116.25 -594679.13 5684901.95 120.00 -594679.47 5681088.33 107.50 -594679.78 5680927.13 116.25 -594679.83 5680393.56 115.00 -594680.07 5679987.88 108.75 -594680.17 5680856.35 116.25 -594680.25 5680946.88 115.00 -594680.50 5681138.85 105.00 -594680.66 5680415.04 113.75 -594680.67 5680518.08 112.50 -594680.78 5680361.96 116.25 -594681.20 5680177.72 113.75 -594681.37 5680332.27 116.25 -594681.76 5680483.24 111.25 -594682.25 5680352.07 116.25 -594682.30 5681023.75 110.00 -594682.40 5680059.09 111.25 -594682.44 5680144.81 112.50 -594682.72 5680342.18 116.25 -594682.75 5680613.59 115.00 -594682.95 5679868.17 108.75 -594683.08 5679858.26 108.75 -594683.43 5680955.55 113.75 -594683.72 5679926.64 108.75 -594683.74 5685431.03 120.00 -594683.80 5680918.38 116.25 -594684.02 5680269.74 113.75 -594684.08 5680562.23 113.75 -594684.13 5680996.62 111.25 -594684.14 5680474.02 111.25 -594684.28 5679848.35 108.75 -594684.37 5679878.06 108.75 -594684.48 5680009.35 110.00 -594684.48 5681105.47 106.25 -594684.76 5680792.88 116.25 -594684.89 5680938.10 115.00 -594685.14 5680428.58 112.50 -594685.14 5680305.27 115.00 -594685.29 5681059.82 108.75 -594685.41 5680864.78 116.25 -594685.48 5679838.43 108.75 -594685.68 5680068.44 111.25 -594685.79 5679887.95 108.75 -594686.19 5680259.98 113.75 -594686.19 5680278.98 113.75 -594686.36 5680491.79 111.25 -594686.89 5680386.49 115.00 -594686.91 5679828.54 108.75 -594686.94 5679897.87 108.75 -594687.56 5680407.81 113.75 -594687.77 5679917.51 108.75 -594687.79 5680153.13 112.50 -594687.82 5680909.63 116.25 -594687.90 5680622.16 115.00 -594688.06 5679907.80 108.75 -594688.35 5680524.36 112.50 -594688.36 5680250.22 113.75 -594688.40 5680465.13 111.25 -594688.41 5680184.66 113.75 -594688.51 5679818.68 108.75 -594688.65 5681016.28 110.00 -594688.97 5680077.79 111.25 -594688.99 5681085.36 107.50 -594689.07 5684902.01 120.00 -594689.17 5680929.06 115.00 -594689.39 5679985.39 108.75 -594689.84 5681135.39 105.00 -594690.12 5679808.82 108.75 -594690.37 5680570.00 113.75 -594690.53 5680240.46 113.75 -594690.70 5680784.93 116.25 -594690.81 5680287.81 113.75 -594690.91 5680948.99 113.75 -594691.21 5680900.63 116.25 -594691.38 5680872.34 116.25 -594692.04 5680421.42 112.50 -594692.25 5680087.14 111.25 -594692.63 5680991.61 111.25 -594692.77 5680311.72 115.00 -594693.04 5680630.73 115.00 -594693.21 5680498.96 111.25 -594693.38 5680881.74 116.25 -594693.45 5680920.03 115.00 -594693.57 5685429.34 120.00 -594693.59 5680891.37 116.25 -594693.87 5680012.66 110.00 -594693.96 5680379.41 115.00 -594694.02 5680231.10 113.75 -594694.07 5681102.69 106.25 -594694.08 5680457.02 111.25 -594694.28 5680192.66 113.75 -594694.41 5681055.76 108.75 -594694.54 5680532.09 112.50 -594694.69 5680400.79 113.75 -594695.71 5680096.43 111.25 -594695.78 5680940.26 113.75 -594695.97 5680966.44 112.50 -594696.47 5680776.85 116.25 -594696.58 5680577.83 113.75 -594696.59 5680157.78 112.50 -594697.18 5680202.02 113.75 -594697.49 5680295.25 113.75 -594697.62 5680221.78 113.75 -594697.74 5680911.00 115.00 -594698.23 5679980.74 108.75 -594698.38 5680639.17 115.00 -594698.44 5681014.28 110.00 -594698.63 5681082.78 107.50 -594698.64 5680211.91 113.75 -594698.94 5684903.52 120.00 -594699.04 5680414.35 112.50 -594699.22 5680105.69 111.25 -594699.25 5681132.10 105.00 -594700.05 5680506.12 111.25 -594700.06 5680449.18 111.25 -594700.46 5680371.87 115.00 -594700.61 5680901.46 115.00 -594700.66 5680931.53 113.75 -594700.67 5680539.92 112.50 -594700.67 5680317.84 115.00 -594701.13 5680986.59 111.25 -594701.81 5680393.78 113.75 -594702.16 5680768.72 116.25 -594702.57 5680831.75 115.00 -594702.62 5680891.71 115.00 -594702.74 5680585.71 113.75 -594702.85 5680881.71 115.00 -594702.94 5680959.38 112.50 -594702.99 5680841.74 115.00 -594703.08 5680871.72 115.00 -594703.22 5680016.19 110.00 -594703.26 5685431.61 120.00 -594703.26 5680861.72 115.00 -594703.42 5680851.73 115.00 -594703.68 5681100.00 106.25 -594703.79 5680922.14 113.75 -594703.98 5680822.00 115.00 -594704.07 5681053.18 108.75 -594704.25 5680647.26 115.00 -594704.43 5680113.69 111.25 -594705.18 5680162.76 112.50 -594705.59 5680300.93 113.75 -594705.98 5680912.39 113.75 -594706.04 5680407.28 112.50 -594706.27 5680363.73 115.00 -594706.80 5679975.61 108.75 -594706.86 5680325.61 115.00 -594706.88 5680812.43 115.00 -594707.04 5680547.56 112.50 -594707.15 5680513.04 111.25 -594707.63 5681473.83 100.00 -594707.72 5680270.36 112.50 -594707.85 5680443.05 111.25 -594708.17 5680902.63 113.75 -594708.22 5681012.27 110.00 -594708.25 5680950.97 112.50 -594708.27 5681080.18 107.50 -594708.45 5681483.39 100.00 -594708.55 5684906.07 120.00 -594708.62 5681280.31 100.00 -594708.65 5681464.03 100.00 -594708.77 5680980.49 111.25 -594708.79 5680761.36 116.25 -594708.83 5681129.33 105.00 -594708.89 5680593.59 113.75 -594708.91 5680260.65 112.50 -594709.03 5680386.87 113.75 -594709.34 5680354.45 115.00 -594709.67 5681454.23 100.00 -594710.00 5680655.42 115.00 -594710.30 5680334.79 115.00 -594710.63 5680279.70 112.50 -594710.69 5680892.96 113.75 -594711.02 5680344.60 115.00 -594711.07 5679937.09 107.50 -594711.31 5680803.51 115.00 -594711.68 5680251.12 112.50 -594711.98 5681492.59 100.00 -594712.25 5680020.19 110.00 -594712.32 5680119.68 111.25 -594712.46 5681287.04 100.00 -594712.93 5685434.06 120.00 -594713.03 5680400.20 112.50 -594713.12 5679927.32 107.50 -594713.29 5681049.50 108.75 -594713.33 5680168.47 112.50 -594713.34 5680883.32 113.75 -594713.38 5680555.22 112.50 -594713.49 5681098.17 106.25 -594713.56 5680942.56 112.50 -594713.75 5680306.68 113.75 -594713.84 5680664.64 115.00 -594714.25 5680519.95 111.25 -594714.66 5680601.73 113.75 -594715.09 5680241.78 112.50 -594715.17 5679917.55 107.50 -594715.28 5679970.34 108.75 -594715.57 5680973.34 111.25 -594715.64 5680436.93 111.25 -594715.98 5680873.68 113.75 -594716.10 5680794.73 115.00 -594716.15 5681501.52 100.00 -594716.22 5681275.99 100.00 -594716.30 5681283.59 99.50 -594716.37 5680380.08 113.75 -594716.43 5679907.67 107.50 -594717.08 5679897.71 107.50 -594717.51 5681008.88 110.00 -594717.71 5679867.80 107.50 -594717.74 5679887.75 107.50 -594717.80 5679877.78 107.50 -594717.85 5681077.38 107.50 -594717.97 5684909.36 120.00 -594718.29 5679942.50 107.50 -594718.39 5680285.92 112.50 -594718.43 5681126.65 105.00 -594718.54 5680933.99 112.50 -594718.63 5680864.04 113.75 -594718.69 5680673.39 115.00 -594718.80 5680563.56 112.50 -594719.30 5680027.26 110.00 -594719.81 5680610.30 113.75 -594719.86 5679858.05 107.50 -594719.87 5680392.98 112.50 -594720.07 5680233.17 112.50 -594720.38 5681510.43 100.00 -594720.58 5680125.00 111.25 -594720.95 5680527.24 111.25 -594721.10 5680786.08 115.00 -594721.27 5680854.39 113.75 -594721.44 5680174.23 112.50 -594721.60 5681287.30 100.00 -594721.77 5680312.65 113.75 -594721.85 5680924.61 112.50 -594722.01 5679848.30 107.50 -594722.13 5681044.85 108.75 -594722.20 5680966.05 111.25 -594722.70 5685436.02 120.00 -594722.77 5680844.52 113.75 -594722.89 5681519.80 100.00 -594722.97 5680682.39 115.00 -594723.05 5680430.38 111.25 -594723.05 5679964.07 108.75 -594723.30 5681096.34 106.25 -594723.56 5681280.87 100.00 -594723.71 5680373.29 113.75 -594723.84 5681529.61 100.00 -594724.07 5680834.61 113.75 -594724.17 5679838.56 107.50 -594724.78 5681539.43 100.00 -594724.81 5680571.48 112.50 -594724.97 5680618.87 113.75 -594725.04 5680224.56 112.50 -594725.15 5680915.23 112.50 -594726.17 5680777.46 115.00 -594726.32 5679828.81 107.50 -594726.35 5680034.33 110.00 -594726.38 5681004.30 110.00 -594726.71 5680385.75 112.50 -594726.79 5680691.62 115.00 -594726.92 5680291.01 112.50 -594727.03 5680825.11 113.75 -594727.39 5684912.65 120.00 -594727.42 5680534.74 111.25 -594727.43 5681074.58 107.50 -594727.55 5680957.75 111.25 -594727.57 5679945.61 107.50 -594728.03 5681123.96 105.00 -594728.06 5679818.99 107.50 -594728.07 5681548.58 100.00 -594728.46 5680364.55 113.75 -594728.53 5680905.87 112.50 -594729.54 5680180.00 112.50 -594729.65 5679809.13 107.50 -594729.75 5680318.65 113.75 -594729.91 5680128.34 111.25 -594729.99 5680215.93 112.50 -594730.12 5680627.44 113.75 -594730.12 5680423.43 111.25 -594730.49 5681039.37 108.75 -594730.53 5680815.74 113.75 -594730.56 5680043.21 110.00 -594730.85 5680579.35 112.50 -594731.23 5679959.06 108.75 -594731.24 5680768.84 115.00 -594731.40 5680700.49 115.00 -594732.33 5681557.48 100.00 -594732.52 5680896.76 112.50 -594732.63 5685437.01 120.00 -594732.90 5680949.46 111.25 -594732.97 5680355.63 113.75 -594733.11 5681094.50 106.25 -594733.55 5680378.53 112.50 -594733.63 5680636.79 113.75 -594733.67 5680759.22 115.00 -594734.00 5680052.59 110.00 -594734.04 5680806.39 113.75 -594734.14 5680327.63 113.75 -594734.23 5680998.20 110.00 -594734.75 5680709.84 115.00 -594734.82 5680207.23 112.50 -594735.38 5680588.20 112.50 -594735.39 5680187.90 112.50 -594735.61 5680295.84 112.50 -594735.64 5680749.42 115.00 -594735.73 5680940.02 111.25 -594735.90 5680539.83 111.25 -594736.06 5680197.42 112.50 -594736.44 5681070.51 107.50 -594736.52 5680887.65 112.50 -594736.56 5684916.59 120.00 -594736.58 5681566.37 100.00 -594736.71 5680484.01 110.00 -594736.72 5680739.52 115.00 -594736.98 5680729.53 115.00 -594737.07 5680646.18 113.75 -594737.15 5680719.54 115.00 -594737.18 5680416.48 111.25 -594737.34 5680346.67 113.75 -594737.49 5681120.80 105.00 -594737.53 5679946.22 107.50 -594737.89 5680061.78 110.00 -594738.02 5680797.22 113.75 -594738.09 5680336.70 113.75 -594738.39 5680474.49 110.00 -594738.43 5680930.53 111.25 -594738.70 5680493.79 110.00 -594738.84 5681033.89 108.75 -594739.30 5680131.50 111.25 -594739.87 5680878.29 112.50 -594739.91 5680597.06 112.50 -594740.17 5680371.11 112.50 -594740.51 5680655.56 113.75 -594740.77 5680920.95 111.25 -594741.19 5679959.57 108.75 -594741.51 5680455.16 110.00 -594741.62 5680465.04 110.00 -594741.78 5680991.66 110.00 -594741.78 5680070.98 110.00 -594742.01 5680788.04 113.75 -594742.30 5680911.20 111.25 -594742.56 5685438.00 120.00 -594742.60 5680547.11 111.25 -594743.01 5681093.22 106.25 -594743.08 5680258.63 111.25 -594743.09 5681573.75 100.00 -594743.17 5680868.91 112.50 -594743.49 5680268.46 111.25 -594743.50 5680502.55 110.00 -594743.55 5680446.06 110.00 -594743.75 5680665.02 113.75 -594743.87 5680409.18 111.25 -594744.42 5680300.44 112.50 -594744.91 5681065.22 107.50 -594744.94 5680249.16 111.25 -594745.17 5680901.84 111.25 -594745.24 5680605.43 112.50 -594745.67 5680080.18 110.00 -594745.72 5684920.56 120.00 -594745.99 5680778.87 113.75 -594746.48 5680859.52 112.50 -594746.68 5680674.58 113.75 -594746.71 5680363.62 112.50 -594746.95 5681117.65 105.00 -594747.20 5681028.42 108.75 -594747.31 5679944.92 107.50 -594748.52 5680984.29 110.00 -594748.79 5680134.36 111.25 -594748.91 5680849.88 112.50 -594749.04 5680554.64 111.25 -594749.14 5680240.19 111.25 -594749.15 5680892.81 111.25 -594749.18 5680276.57 111.25 -594749.29 5680684.23 113.75 -594749.58 5680510.27 110.00 -594749.72 5680438.21 110.00 -594750.15 5680769.79 113.75 -594750.32 5680401.66 111.25 -594751.02 5680613.52 112.50 -594751.04 5679961.20 108.75 -594751.33 5681577.99 100.00 -594751.40 5680840.26 112.50 -594751.74 5680088.08 110.00 -594751.83 5680693.89 113.75 -594752.42 5685437.60 120.00 -594752.54 5681090.81 106.25 -594753.14 5680883.78 111.25 -594753.25 5680356.12 112.50 -594753.35 5681059.90 107.50 -594753.54 5680304.41 112.50 -594754.06 5681021.22 108.75 -594754.33 5679939.82 107.50 -594754.44 5680760.76 113.75 -594754.76 5680830.90 112.50 -594754.96 5680703.38 113.75 -594755.13 5680232.34 111.25 -594755.14 5684923.73 120.00 -594755.16 5680562.43 111.25 -594755.20 5680976.88 110.00 -594755.22 5680622.40 112.50 -594755.98 5680430.42 110.00 -594756.09 5679930.00 107.50 -594756.41 5681114.50 105.00 -594756.73 5680394.11 111.25 -594756.84 5680282.46 111.25 -594757.13 5680516.81 110.00 -594757.62 5680821.40 112.50 -594757.69 5680875.02 111.25 -594757.77 5679920.16 107.50 -594757.90 5680138.15 111.25 -594758.15 5680631.91 112.50 -594758.15 5680095.73 110.00 -594758.29 5680712.81 113.75 -594758.39 5680751.62 113.75 -594758.58 5680967.49 110.00 -594758.78 5680347.86 112.50 -594759.31 5680811.60 112.50 -594759.49 5679910.33 107.50 -594760.12 5680741.77 113.75 -594760.65 5681013.71 108.75 -594760.72 5680311.16 112.50 -594760.91 5679961.15 108.75 -594761.00 5680801.80 112.50 -594761.08 5681579.39 100.00 -594761.11 5680641.41 112.50 -594761.21 5681053.74 107.50 -594761.29 5680570.21 111.25 -594761.29 5681086.01 106.25 -594761.46 5680224.72 111.25 -594761.47 5679900.54 107.50 -594761.61 5680722.24 113.75 -594761.85 5680731.92 113.75 -594761.95 5680958.09 110.00 -594762.20 5680422.64 110.00 -594762.21 5685435.66 120.00 -594762.30 5680866.30 111.25 -594762.75 5680386.24 111.25 -594763.53 5680339.22 112.50 -594763.81 5680792.33 112.50 -594764.15 5680650.88 112.50 -594764.50 5679922.79 108.75 -594764.56 5680523.48 110.00 -594764.59 5679932.78 108.75 -594764.83 5679952.66 108.75 -594764.84 5679915.89 108.75 -594764.88 5684925.91 120.00 -594764.96 5680413.04 110.00 -594765.01 5679942.76 108.75 -594765.05 5680102.95 110.00 -594765.33 5680948.69 110.00 -594765.34 5680579.22 111.25 -594765.53 5680319.85 112.50 -594765.67 5680286.96 111.25 -594765.70 5681110.89 105.00 -594765.87 5680660.63 112.50 -594766.03 5680329.62 112.50 -594766.77 5680142.54 111.25 -594766.92 5680857.57 111.25 -594766.96 5680670.52 112.50 -594767.18 5679894.48 107.50 -594767.24 5681006.20 108.75 -594767.36 5679925.56 108.75 -594767.68 5680255.54 110.00 -594767.83 5680783.23 112.50 -594768.26 5680217.52 111.25 -594768.71 5680939.30 110.00 -594768.78 5680378.37 111.25 -594768.95 5680265.19 110.00 -594769.06 5681047.59 107.50 -594769.28 5679935.36 108.75 -594769.38 5680588.22 111.25 -594769.49 5681080.38 106.25 -594770.27 5680679.86 112.50 -594770.77 5681578.65 100.00 -594770.88 5685431.52 120.00 -594771.30 5679945.15 108.75 -594771.45 5680848.80 111.25 -594771.75 5680530.41 110.00 -594771.76 5680997.29 108.75 -594771.85 5680774.14 112.50 -594772.09 5680929.90 110.00 -594772.21 5680109.86 110.00 -594772.25 5680246.73 110.00 -594772.30 5679888.35 106.25 -594772.31 5680409.69 110.00 -594772.48 5679900.36 107.50 -594772.52 5679878.37 106.25 -594772.75 5679868.39 106.25 -594773.35 5680597.26 111.25 -594773.82 5679954.81 108.75 -594773.86 5679858.50 106.25 -594773.89 5680689.13 112.50 -594774.58 5680291.28 111.25 -594774.63 5684928.02 120.00 -594774.91 5681107.08 105.00 -594774.95 5680370.62 111.25 -594775.07 5680210.32 111.25 -594775.77 5679848.71 106.25 -594775.77 5679909.78 107.50 -594775.81 5681040.25 107.50 -594775.87 5680920.66 110.00 -594775.88 5680765.04 112.50 -594775.94 5679799.26 106.25 -594775.97 5680840.03 111.25 -594776.20 5680145.60 111.25 -594776.25 5680988.37 108.75 -594776.44 5680606.63 111.25 -594776.55 5680271.66 110.00 -594777.24 5681074.09 106.25 -594777.42 5679809.13 106.25 -594777.51 5679896.81 106.25 -594777.51 5680698.39 112.50 -594777.68 5679838.91 106.25 -594778.14 5680238.67 110.00 -594778.20 5685424.74 120.00 -594778.48 5679828.99 106.25 -594778.71 5679819.01 106.25 -594778.94 5680537.33 110.00 -594778.98 5679962.62 108.75 -594779.06 5679919.20 107.50 -594779.50 5680830.92 111.25 -594779.53 5680616.01 111.25 -594779.86 5680911.51 110.00 -594779.96 5680755.97 112.50 -594780.41 5681576.58 100.00 -594780.54 5680115.37 110.00 -594780.60 5680979.38 108.75 -594781.20 5680707.63 112.50 -594781.27 5680821.20 111.25 -594781.41 5680363.11 111.25 -594781.87 5680203.11 111.25 -594782.30 5680409.92 110.00 -594782.43 5681032.78 107.50 -594782.61 5680625.38 111.25 -594782.84 5679928.35 107.50 -594782.85 5679905.24 106.25 -594782.95 5680746.58 112.50 -594783.03 5680811.49 111.25 -594783.39 5680295.79 111.25 -594783.84 5680902.35 110.00 -594783.95 5680545.95 110.00 -594783.99 5680151.53 111.25 -594784.04 5680230.61 110.00 -594784.17 5681103.36 105.00 -594784.32 5680736.73 112.50 -594784.45 5680970.16 108.75 -594784.47 5684929.52 120.00 -594784.61 5681067.39 106.25 -594784.72 5680726.80 112.50 -594784.79 5680801.78 111.25 -594784.91 5680716.86 112.50 -594785.15 5680276.47 110.00 -594785.53 5685417.96 120.00 -594785.63 5680634.78 111.25 -594786.93 5679968.64 108.75 -594787.25 5680194.86 111.25 -594787.33 5681024.12 107.50 -594787.82 5680893.19 110.00 -594787.87 5680355.59 111.25 -594788.21 5680644.31 111.25 -594788.22 5680502.00 108.75 -594788.30 5680960.94 108.75 -594788.41 5680403.56 110.00 -594788.45 5680492.01 108.75 -594788.84 5680554.66 110.00 -594788.86 5680120.88 110.00 -594789.06 5680792.92 111.25 -594789.24 5679936.01 107.50 -594789.46 5679912.72 106.25 -594789.86 5681573.96 100.00 -594790.01 5680222.60 110.00 -594790.42 5680158.86 111.25 -594790.76 5680482.32 108.75 -594790.80 5680653.83 111.25 -594791.34 5680564.21 110.00 -594791.49 5681060.16 106.25 -594791.57 5680301.38 111.25 -594791.80 5680884.03 110.00 -594791.93 5680951.65 108.75 -594792.00 5681015.30 107.50 -594792.10 5680186.22 111.25 -594792.73 5680394.57 110.00 -594792.97 5680574.06 110.00 -594792.98 5685411.35 120.00 -594793.28 5680510.60 108.75 -594793.35 5680472.67 108.75 -594793.39 5680663.36 111.25 -594793.45 5681099.74 105.00 -594793.58 5680784.14 111.25 -594793.71 5679975.92 108.75 -594794.37 5680348.12 111.25 -594794.43 5684930.16 120.00 -594794.44 5680280.15 110.00 -594794.76 5680583.87 110.00 -594794.91 5680167.69 111.25 -594795.13 5680942.18 108.75 -594795.46 5680177.00 111.25 -594795.64 5679943.67 107.50 -594795.81 5680672.93 111.25 -594796.06 5680214.66 110.00 -594796.07 5680463.06 108.75 -594796.15 5679920.13 106.25 -594796.23 5680385.22 110.00 -594796.31 5680875.13 110.00 -594796.66 5681006.47 107.50 -594796.67 5680127.11 110.00 -594798.14 5680775.39 111.25 -594798.19 5680682.51 111.25 -594798.28 5681052.86 106.25 -594798.33 5680932.71 108.75 -594798.48 5680593.13 110.00 -594798.91 5681570.04 100.00 -594799.00 5680453.51 108.75 -594799.49 5680518.41 108.75 -594799.73 5680375.87 110.00 -594800.04 5679983.66 108.75 -594800.24 5680306.14 111.25 -594800.60 5680692.08 111.25 -594800.88 5680997.48 107.50 -594800.96 5680340.72 111.25 -594801.15 5680866.40 110.00 -594801.19 5680443.80 108.75 -594801.52 5680923.25 108.75 -594801.67 5685406.44 120.00 -594802.04 5679951.33 107.50 -594802.10 5680602.44 110.00 -594802.12 5680206.72 110.00 -594802.19 5681095.14 105.00 -594802.73 5680433.95 108.75 -594802.74 5681043.93 106.25 -594802.75 5680766.66 111.25 -594803.01 5680987.73 107.50 -594803.06 5679993.18 108.75 -594803.30 5680366.55 110.00 -594803.45 5680701.53 111.25 -594803.73 5680283.82 110.00 -594804.34 5685074.59 120.00 -594804.40 5684930.54 120.00 -594804.43 5680133.39 110.00 -594804.56 5679925.45 106.25 -594804.76 5685064.64 120.00 -594804.97 5680913.88 108.75 -594805.02 5680331.81 111.25 -594805.14 5680977.98 107.50 -594805.30 5685054.67 120.00 -594805.30 5680424.29 108.75 -594805.60 5680611.79 110.00 -594805.86 5680526.10 108.75 -594805.89 5680042.50 108.75 -594805.99 5680857.66 110.00 -594806.05 5680052.48 108.75 -594806.08 5680002.70 108.75 -594806.20 5680313.00 111.25 -594806.29 5680710.98 111.25 -594806.50 5680062.46 108.75 -594806.58 5680032.53 108.75 -594806.67 5680072.45 108.75 -594807.08 5680012.59 108.75 -594807.19 5681035.00 106.25 -594807.28 5680022.57 108.75 -594807.37 5680757.94 111.25 -594807.53 5680357.50 110.00 -594807.54 5685084.04 120.00 -594807.81 5680968.37 107.50 -594807.85 5680414.63 108.75 -594807.99 5685045.22 120.00 -594808.01 5681566.29 100.00 -594808.18 5680198.78 110.00 -594808.36 5680322.49 111.25 -594808.44 5679958.99 107.50 -594808.49 5680082.15 108.75 -594808.83 5680904.66 108.75 -594809.09 5680621.15 110.00 -594809.10 5680720.45 111.25 -594809.24 5680848.43 110.00 -594809.50 5679855.18 105.00 -594809.55 5680141.94 110.00 -594809.59 5679865.15 105.00 -594809.69 5679845.22 105.00 -594809.89 5679875.10 105.00 -594810.06 5681089.02 105.00 -594810.08 5679785.53 105.00 -594810.23 5680838.50 110.00 -594810.33 5679835.27 105.00 -594810.36 5685401.54 120.00 -594810.70 5680958.82 107.50 -594810.76 5680828.53 110.00 -594810.82 5679795.48 105.00 -594810.98 5679825.32 105.00 -594811.25 5680818.55 110.00 -594811.28 5685093.26 120.00 -594811.50 5680534.31 108.75 -594811.55 5679805.42 105.00 -594811.56 5680630.81 110.00 -594811.62 5679815.37 105.00 -594811.63 5681026.06 106.25 -594811.71 5680091.61 108.75 -594811.71 5680749.11 111.25 -594811.74 5680808.58 110.00 -594811.75 5680729.96 111.25 -594811.92 5680406.79 108.75 -594811.96 5685036.06 120.00 -594812.09 5679884.82 105.00 -594812.09 5680348.67 110.00 -594812.60 5680189.94 110.00 -594812.90 5680287.71 110.00 -594813.06 5679930.69 106.25 -594813.28 5680151.08 110.00 -594813.39 5680895.79 108.75 -594813.40 5681016.24 106.25 -594813.41 5684933.28 120.00 -594813.52 5680640.60 110.00 -594813.87 5680739.48 111.25 -594813.92 5680798.90 110.00 -594814.42 5680949.60 107.50 -594814.74 5679894.32 105.00 -594814.93 5680101.06 108.75 -594815.11 5679966.41 107.50 -594815.16 5681006.41 106.25 -594815.33 5680650.42 110.00 -594815.56 5680160.80 110.00 -594815.94 5685026.91 120.00 -594816.09 5680180.59 110.00 -594816.17 5685101.96 120.00 -594816.24 5685199.22 120.00 -594816.51 5680542.95 108.75 -594816.60 5680170.66 110.00 -594816.70 5680660.31 110.00 -594816.89 5680789.37 110.00 -594817.25 5685209.15 120.00 -594817.32 5685189.35 120.00 -594817.48 5681563.56 100.00 -594817.93 5681082.90 105.00 -594817.95 5680996.92 106.25 -594818.02 5680670.21 110.00 -594818.27 5685219.08 120.00 -594818.42 5680887.16 108.75 -594818.51 5680341.01 110.00 -594818.95 5685179.51 120.00 -594818.97 5680940.71 107.50 -594819.05 5685396.63 120.00 -594819.28 5685229.00 120.00 -594819.46 5680109.96 108.75 -594819.91 5685017.75 120.00 -594820.08 5680679.96 110.00 -594820.59 5680780.27 110.00 -594820.59 5685169.66 120.00 -594820.93 5684939.84 120.00 -594821.00 5685110.68 120.00 -594821.17 5680404.83 108.75 -594821.30 5680293.11 110.00 -594821.39 5679901.75 105.00 -594821.42 5679936.14 106.25 -594821.51 5680551.60 108.75 -594821.87 5679973.76 107.50 -594822.26 5685159.82 120.00 -594822.32 5680987.95 106.25 -594822.64 5680689.61 110.00 -594822.86 5685008.32 120.00 -594823.40 5685237.80 120.00 -594823.43 5680878.52 108.75 -594823.51 5680931.82 107.50 -594823.79 5685120.26 120.00 -594823.95 5685149.99 120.00 -594824.01 5684998.41 120.00 -594824.03 5684948.70 120.00 -594824.05 5680118.84 108.75 -594824.19 5681075.35 105.00 -594824.62 5685140.05 120.00 -594824.85 5685130.07 120.00 -594825.10 5684958.63 120.00 -594825.16 5684988.49 120.00 -594825.20 5680699.26 110.00 -594825.54 5684968.60 120.00 -594825.55 5680560.71 108.75 -594825.57 5680333.96 110.00 -594825.98 5684978.57 120.00 -594825.99 5680396.08 108.75 -594826.01 5680246.44 108.75 -594826.70 5680978.97 106.25 -594826.75 5680236.51 108.75 -594826.95 5681560.82 100.00 -594826.96 5679982.15 107.50 -594827.35 5680128.24 108.75 -594827.65 5680773.22 110.00 -594827.91 5680226.59 108.75 -594828.02 5680869.65 108.75 -594828.05 5680922.94 107.50 -594828.27 5685393.09 120.00 -594828.49 5679908.68 105.00 -594829.02 5685246.05 120.00 -594829.13 5680216.67 108.75 -594829.16 5680570.02 108.75 -594829.25 5681066.77 105.00 -594829.30 5680299.07 110.00 -594829.53 5679941.90 106.25 -594829.68 5680386.85 108.75 -594830.14 5680255.54 108.75 -594830.19 5680707.81 110.00 -594830.20 5680137.81 108.75 -594830.65 5679991.43 107.50 -594830.74 5680206.81 108.75 -594831.01 5680969.97 106.25 -594831.28 5680040.43 107.50 -594831.39 5680050.40 107.50 -594831.62 5680060.38 107.50 -594832.16 5680070.34 107.50 -594832.34 5680196.95 108.75 -594832.38 5680147.54 108.75 -594832.61 5680860.77 108.75 -594832.65 5680377.31 108.75 -594832.68 5680914.09 107.50 -594832.69 5680579.37 108.75 -594832.79 5680327.06 110.00 -594832.81 5680764.80 110.00 -594833.03 5680317.09 110.00 -594833.06 5680030.61 107.50 -594833.25 5680000.97 107.50 -594833.26 5680307.11 110.00 -594833.30 5680080.26 107.50 -594833.69 5680187.05 108.75 -594833.97 5681058.01 105.00 -594834.16 5680157.38 108.75 -594834.36 5680010.89 107.50 -594834.38 5680264.58 108.75 -594834.63 5685254.30 120.00 -594834.64 5680090.14 107.50 -594834.82 5680960.75 106.25 -594834.84 5680177.13 108.75 -594834.84 5680020.79 107.50 -594834.93 5680716.51 110.00 -594835.18 5680589.04 108.75 -594835.61 5680367.76 108.75 -594835.94 5680167.21 108.75 -594836.34 5680755.51 110.00 -594836.42 5679949.12 106.25 -594836.50 5679914.62 105.00 -594836.62 5681559.09 100.00 -594836.76 5680099.89 107.50 -594836.80 5680851.74 108.75 -594837.35 5680905.27 107.50 -594837.66 5680598.72 108.75 -594837.68 5681048.75 105.00 -594837.91 5680726.02 110.00 -594837.99 5685390.80 120.00 -594838.57 5680358.22 108.75 -594838.64 5680951.52 106.25 -594838.81 5680735.97 110.00 -594838.83 5680745.84 110.00 -594839.37 5680273.23 108.75 -594839.44 5680842.11 108.75 -594839.79 5680109.34 107.50 -594840.15 5680608.40 108.75 -594841.37 5681039.49 105.00 -594841.40 5680832.31 108.75 -594841.74 5685261.01 120.00 -594841.77 5680348.76 108.75 -594842.30 5680896.62 107.50 -594842.40 5680618.11 108.75 -594843.32 5679956.34 106.25 -594843.35 5680822.51 108.75 -594843.38 5680628.06 108.75 -594843.49 5680942.92 106.25 -594844.05 5680118.36 107.50 -594844.32 5680281.91 108.75 -594844.36 5680638.00 108.75 -594844.51 5679920.55 105.00 -594844.99 5681030.20 105.00 -594845.05 5680339.32 108.75 -594845.18 5680235.62 107.50 -594845.38 5680647.94 108.75 -594845.77 5680812.83 108.75 -594846.18 5680225.72 107.50 -594846.41 5681557.99 100.00 -594846.63 5680657.84 108.75 -594846.77 5680245.48 107.50 -594847.53 5680215.83 107.50 -594847.76 5685388.81 120.00 -594847.86 5680888.33 107.50 -594848.14 5680329.82 108.75 -594848.31 5680127.39 107.50 -594848.50 5680667.65 108.75 -594848.53 5680803.23 108.75 -594848.54 5680290.91 108.75 -594848.61 5681020.91 105.00 -594849.31 5679964.28 106.25 -594849.67 5680206.09 107.50 -594849.74 5680935.13 106.25 -594850.16 5685266.36 120.00 -594850.18 5680254.60 107.50 -594850.35 5680320.09 108.75 -594850.37 5680677.47 108.75 -594850.68 5680136.98 107.50 -594851.03 5680300.58 108.75 -594851.67 5680793.76 108.75 -594851.82 5680196.34 107.50 -594852.05 5680146.87 107.50 -594852.30 5681011.65 105.00 -594852.31 5680310.29 108.75 -594852.53 5679926.48 105.00 -594852.65 5680687.19 108.75 -594853.41 5680156.75 107.50 -594853.43 5680880.04 107.50 -594853.85 5680186.57 107.50 -594854.37 5680176.61 107.50 -594854.78 5680166.64 107.50 -594854.84 5679972.59 106.25 -594854.94 5680263.31 107.50 -594855.05 5680696.89 108.75 -594855.81 5680784.67 108.75 -594856.00 5680927.35 106.25 -594856.10 5681002.43 105.00 -594856.21 5681556.88 100.00 -594857.46 5680706.59 108.75 -594857.60 5685387.14 120.00 -594858.58 5680272.60 107.50 -594858.59 5685271.71 120.00 -594858.75 5679981.70 106.25 -594859.14 5680775.30 108.75 -594859.55 5680872.16 107.50 -594859.82 5680716.29 108.75 -594859.91 5680993.21 105.00 -594861.11 5679931.55 105.00 -594861.56 5680765.61 108.75 -594861.94 5679991.15 106.25 -594862.11 5680726.02 108.75 -594862.23 5680281.89 107.50 -594862.28 5680919.60 106.25 -594862.78 5680001.03 106.25 -594863.02 5680735.93 108.75 -594863.06 5680011.01 106.25 -594863.07 5680040.94 106.25 -594863.30 5680030.97 106.25 -594863.32 5680050.86 106.25 -594863.35 5680020.99 106.25 -594863.43 5680745.92 108.75 -594863.71 5680984.00 105.00 -594863.84 5680755.90 108.75 -594865.50 5680291.32 107.50 -594866.00 5681555.78 100.00 -594866.15 5680060.43 106.25 -594866.36 5685384.14 120.00 -594867.01 5685277.07 120.00 -594867.34 5680869.22 107.50 -594867.99 5680975.00 105.00 -594868.44 5680859.30 107.50 -594868.61 5680300.80 107.50 -594868.63 5680911.89 106.25 -594869.01 5680476.90 107.50 -594869.05 5680069.98 106.25 -594869.55 5680849.38 107.50 -594869.65 5680467.06 107.50 -594869.71 5679936.59 105.00 -594869.80 5680486.85 107.50 -594870.02 5685374.85 120.00 -594870.41 5680310.55 107.50 -594870.65 5680839.46 107.50 -594870.89 5680496.75 107.50 -594871.13 5680320.50 107.50 -594871.34 5680350.42 107.50 -594871.56 5680340.44 107.50 -594871.79 5680330.46 107.50 -594871.89 5680829.57 107.50 -594872.02 5680457.36 107.50 -594872.06 5685365.15 120.00 -594872.65 5680966.19 105.00 -594872.95 5680506.52 107.50 -594873.39 5685355.25 120.00 -594873.84 5680078.73 106.25 -594873.85 5680359.98 107.50 -594874.04 5680819.82 107.50 -594874.38 5680447.67 107.50 -594874.42 5685345.33 120.00 -594874.97 5680904.19 106.25 -594875.15 5680516.25 107.50 -594875.34 5685335.39 120.00 -594875.42 5685282.44 120.00 -594875.69 5681553.99 100.00 -594876.18 5680810.07 107.50 -594876.92 5680438.01 107.50 -594877.01 5680369.45 107.50 -594877.84 5680957.79 105.00 -594878.02 5680525.81 107.50 -594878.32 5679941.63 105.00 -594878.44 5680800.36 107.50 -594878.63 5680087.49 106.25 -594878.92 5685326.39 120.00 -594879.51 5680379.07 107.50 -594879.68 5680428.42 107.50 -594880.86 5680388.96 107.50 -594880.90 5680535.37 107.50 -594881.10 5685290.64 120.00 -594882.17 5680418.79 107.50 -594882.20 5680398.86 107.50 -594882.40 5680408.81 107.50 -594882.40 5680791.20 107.50 -594882.44 5680897.79 106.25 -594882.83 5680096.53 106.25 -594884.01 5680544.85 107.50 -594884.41 5685318.05 120.00 -594884.77 5680242.33 106.25 -594884.83 5680232.40 106.25 -594885.19 5680252.31 106.25 -594885.20 5680951.05 105.00 -594885.34 5681552.00 100.00 -594886.20 5680262.19 106.25 -594886.36 5680782.03 107.50 -594886.65 5680105.75 106.25 -594886.68 5685298.88 120.00 -594886.80 5680222.61 106.25 -594886.92 5679946.67 105.00 -594886.93 5685308.86 120.00 -594887.38 5680554.24 107.50 -594888.61 5680271.88 106.25 -594888.78 5680212.83 106.25 -594889.40 5680564.00 107.50 -594889.44 5680772.56 107.50 -594889.53 5680693.30 107.50 -594890.11 5680683.34 107.50 -594890.31 5680703.24 107.50 -594890.48 5680114.97 106.25 -594890.70 5680673.37 107.50 -594891.01 5680281.57 106.25 -594891.02 5680203.10 106.25 -594891.03 5680892.70 106.25 -594891.18 5680573.82 107.50 -594891.27 5680713.18 107.50 -594891.28 5680663.41 107.50 -594891.58 5680653.43 107.50 -594891.91 5680643.46 107.50 -594892.13 5680723.12 107.50 -594892.16 5680762.95 107.50 -594892.55 5680944.32 105.00 -594892.59 5680291.40 106.25 -594892.63 5680633.50 107.50 -594892.69 5680753.04 107.50 -594892.71 5680743.06 107.50 -594892.74 5680733.08 107.50 -594892.95 5680583.65 107.50 -594893.22 5680593.61 107.50 -594893.29 5680193.38 106.25 -594893.31 5680603.59 107.50 -594893.36 5680623.55 107.50 -594893.40 5680613.57 107.50 -594893.47 5680301.34 106.25 -594893.65 5679953.90 105.00 -594894.30 5680124.19 106.25 -594894.38 5680311.28 106.25 -594894.99 5681550.01 100.00 -594895.34 5680321.22 106.25 -594895.56 5680183.66 106.25 -594895.74 5680134.01 106.25 -594896.20 5680884.19 106.25 -594896.53 5680331.12 106.25 -594896.68 5680143.95 106.25 -594897.10 5680173.84 106.25 -594897.32 5680163.87 106.25 -594897.55 5680153.89 106.25 -594898.20 5680340.96 106.25 -594899.87 5680350.80 106.25 -594899.93 5679961.64 105.00 -594900.20 5680937.94 105.00 -594901.31 5680875.61 106.25 -594903.53 5680360.02 106.25 -594904.41 5679970.44 105.00 -594904.64 5680866.24 106.25 -594904.70 5681548.37 100.00 -594907.65 5680856.72 106.25 -594907.79 5680369.05 106.25 -594907.88 5680846.82 106.25 -594908.09 5679979.71 105.00 -594908.13 5680931.89 105.00 -594908.57 5680836.95 106.25 -594910.42 5679989.26 105.00 -594910.81 5679999.22 105.00 -594910.92 5680827.25 106.25 -594911.21 5680009.19 105.00 -594912.05 5680378.07 106.25 -594912.56 5680019.06 105.00 -594913.28 5680817.55 106.25 -594914.13 5680028.90 105.00 -594914.52 5681547.54 100.00 -594915.21 5680387.53 106.25 -594915.32 5680925.08 105.00 -594916.05 5680807.96 106.25 -594916.58 5680038.57 105.00 -594918.23 5680397.05 106.25 -594918.97 5680798.41 106.25 -594919.03 5680048.23 105.00 -594921.24 5680406.56 106.25 -594921.59 5680917.33 105.00 -594921.75 5680057.82 105.00 -594921.89 5680788.87 106.25 -594922.76 5680416.36 106.25 -594922.88 5680466.18 106.25 -594923.13 5680456.22 106.25 -594923.44 5680426.32 106.25 -594923.64 5680446.25 106.25 -594924.11 5680436.28 106.25 -594924.19 5680476.07 106.25 -594924.34 5681546.70 100.00 -594924.57 5680067.39 105.00 -594924.75 5680779.31 106.25 -594925.51 5680485.97 106.25 -594926.93 5680495.85 106.25 -594927.14 5680909.21 105.00 -594927.38 5680076.95 105.00 -594927.62 5680769.74 106.25 -594927.75 5680260.27 105.00 -594927.98 5680250.30 105.00 -594928.02 5680270.22 105.00 -594928.46 5680505.71 106.25 -594928.50 5680240.36 105.00 -594928.94 5680280.15 105.00 -594929.78 5680899.60 105.00 -594929.86 5680290.08 105.00 -594929.98 5680515.58 106.25 -594930.08 5680230.52 105.00 -594930.19 5680086.52 105.00 -594930.49 5680760.18 106.25 -594930.77 5680300.01 105.00 -594931.50 5680525.44 106.25 -594931.82 5680750.34 106.25 -594931.97 5680309.89 105.00 -594932.40 5680670.63 106.25 -594932.42 5680889.98 105.00 -594932.49 5680220.89 105.00 -594932.52 5680740.38 106.25 -594932.60 5680660.78 106.25 -594933.12 5680680.58 106.25 -594933.23 5680730.43 106.25 -594933.57 5680095.89 105.00 -594933.78 5680720.46 106.25 -594933.84 5680690.54 106.25 -594934.01 5680710.48 106.25 -594934.11 5681547.58 100.00 -594934.23 5680319.60 105.00 -594934.23 5680700.50 106.25 -594935.18 5680534.67 106.25 -594935.50 5680880.50 105.00 -594935.56 5680651.24 106.25 -594936.02 5680211.57 105.00 -594936.49 5680329.31 105.00 -594937.12 5680105.21 105.00 -594938.52 5680641.71 106.25 -594938.65 5680871.04 105.00 -594939.20 5680338.88 105.00 -594939.27 5680543.78 106.25 -594939.55 5680202.25 105.00 -594940.42 5680631.92 106.25 -594940.50 5680114.59 105.00 -594941.05 5680861.38 105.00 -594941.90 5680553.40 106.25 -594942.29 5680622.11 106.25 -594942.39 5680192.71 105.00 -594943.02 5680348.09 105.00 -594943.09 5680851.62 105.00 -594943.64 5680124.05 105.00 -594943.87 5681548.98 100.00 -594944.33 5680612.34 106.25 -594944.42 5680182.95 105.00 -594944.47 5680563.05 106.25 -594945.13 5680841.86 105.00 -594946.10 5680173.12 105.00 -594946.24 5680602.55 106.25 -594946.25 5680572.87 106.25 -594946.76 5680133.52 105.00 -594946.83 5680357.31 105.00 -594947.17 5680832.10 105.00 -594947.26 5680592.62 106.25 -594947.49 5680143.46 105.00 -594947.77 5680163.30 105.00 -594947.98 5680582.70 106.25 -594948.23 5680153.41 105.00 -594949.44 5680822.40 105.00 -594950.69 5680366.50 105.00 -594952.46 5680812.89 105.00 -594953.47 5681551.07 100.00 -594954.63 5680375.66 105.00 -594955.48 5680803.39 105.00 -594958.50 5680793.89 105.00 -594958.58 5680384.81 105.00 -594961.52 5680784.39 105.00 -594962.53 5680393.97 105.00 -594962.91 5681553.91 100.00 -594964.67 5680774.93 105.00 -594966.43 5680403.14 105.00 -594967.85 5680765.50 105.00 -594967.92 5680725.84 105.00 -594968.43 5680715.88 105.00 -594968.48 5680412.90 105.00 -594968.79 5680755.57 105.00 -594968.94 5680735.74 105.00 -594968.94 5680705.92 105.00 -594969.72 5680745.65 105.00 -594969.84 5680696.01 105.00 -594970.52 5680422.66 105.00 -594971.81 5680686.24 105.00 -594972.32 5681556.84 100.00 -594972.65 5680432.40 105.00 -594973.78 5680676.46 105.00 -594974.84 5680442.13 105.00 -594975.75 5680666.69 105.00 -594977.04 5680451.85 105.00 -594978.30 5680657.06 105.00 -594978.68 5681354.64 100.00 -594978.85 5680461.63 105.00 -594979.15 5680471.59 105.00 -594979.45 5680481.56 105.00 -594979.91 5680491.51 105.00 -594980.85 5681347.87 100.00 -594981.29 5680647.55 105.00 -594981.45 5680501.36 105.00 -594981.63 5681560.09 100.00 -594982.99 5680511.21 105.00 -594984.27 5680638.04 105.00 -594984.53 5680521.06 105.00 -594984.66 5681361.15 100.00 -594986.10 5680530.91 105.00 -594986.41 5681567.80 100.00 -594986.52 5681354.52 99.50 -594987.26 5680628.52 105.00 -594988.66 5680540.55 105.00 -594989.59 5681577.11 100.00 -594989.68 5681348.04 100.00 -594989.74 5680618.87 105.00 -594991.21 5680550.18 105.00 -594992.09 5680609.18 105.00 -594993.00 5681362.60 100.00 -594993.76 5680559.82 105.00 -594994.21 5681354.46 100.00 -594994.30 5680599.47 105.00 -594994.78 5680569.72 105.00 -594994.90 5681585.42 100.00 -594995.48 5680579.66 105.00 -594995.69 5680589.59 105.00 -595000.15 5681378.18 100.00 -595001.46 5681592.49 100.00 -595006.75 5681374.01 100.00 -595008.04 5681383.22 100.00 -595009.75 5681597.33 100.00 -595015.69 5681379.45 99.50 -595016.45 5681373.56 100.00 -595017.74 5681384.00 100.00 -595019.10 5681594.21 100.00 -595024.30 5681378.91 99.50 -595026.07 5681372.06 100.00 -595027.48 5681383.90 100.00 -595028.79 5681595.19 100.00 -595032.92 5681378.40 99.50 -595035.73 5681371.83 100.00 -595037.21 5681383.69 100.00 -595038.08 5681597.53 100.00 -595041.54 5681378.79 99.50 -595043.39 5678374.26 101.25 -595044.57 5681604.95 100.00 -595045.43 5681372.71 100.00 -595045.58 5678364.58 101.25 -595045.81 5678383.96 101.25 -595045.92 5681548.70 100.00 -595046.22 5681558.67 100.00 -595046.76 5681384.72 100.00 -595047.84 5681568.22 100.00 -595048.71 5678355.11 101.25 -595048.88 5681613.36 100.00 -595049.73 5681539.49 100.00 -595050.16 5681379.18 99.50 -595050.24 5681623.13 100.00 -595050.82 5678392.54 101.25 -595051.59 5681632.89 100.00 -595052.32 5678345.80 101.25 -595052.95 5681642.65 100.00 -595053.23 5681576.60 100.00 -595053.57 5681530.28 100.00 -595054.92 5681374.76 100.00 -595055.10 5678401.49 101.25 -595055.87 5681651.93 100.00 -595055.99 5681387.80 100.00 -595057.18 5678337.11 101.25 -595057.36 5681585.68 100.00 -595057.85 5678411.07 101.25 -595057.86 5681521.28 100.00 -595059.87 5678420.86 101.25 -595060.27 5681660.74 100.00 -595061.38 5681512.09 100.00 -595061.65 5681594.68 100.00 -595061.79 5681502.12 100.00 -595061.89 5678430.64 101.25 -595062.20 5681492.15 100.00 -595062.54 5678328.68 101.25 -595063.66 5681381.80 100.00 -595064.34 5681377.24 100.00 -595064.48 5681482.57 100.00 -595066.62 5681667.73 100.00 -595066.73 5681603.27 100.00 -595067.90 5678320.25 101.25 -595068.01 5681473.24 100.00 -595068.13 5678438.44 101.25 -595069.55 5681612.77 100.00 -595072.03 5681464.12 100.00 -595072.77 5678311.55 101.25 -595073.88 5681621.62 100.00 -595074.40 5678446.21 101.25 -595075.18 5681672.62 100.00 -595076.55 5681455.23 100.00 -595076.98 5678302.48 101.25 -595080.39 5681628.98 100.00 -595080.66 5681723.78 100.00 -595080.72 5679031.74 101.25 -595081.07 5681446.33 100.00 -595081.08 5679041.72 101.25 -595081.16 5678293.41 101.25 -595081.41 5678453.33 101.25 -595081.88 5679051.66 101.25 -595082.01 5681679.54 100.00 -595082.75 5679022.18 101.25 -595083.87 5679061.45 101.25 -595084.46 5678283.98 101.25 -595085.59 5681437.44 100.00 -595086.22 5681715.65 100.00 -595086.27 5679071.13 101.25 -595086.56 5679012.95 101.25 -595087.76 5678274.55 101.25 -595088.20 5681687.21 100.00 -595088.55 5681634.71 100.00 -595089.44 5681706.45 100.00 -595089.56 5679080.56 101.25 -595089.94 5678457.88 101.25 -595090.01 5681696.81 100.00 -595090.36 5679003.71 101.25 -595090.88 5678265.07 101.25 -595090.89 5681428.99 100.00 -595092.45 5679313.50 101.25 -595092.81 5679303.57 101.25 -595092.87 5679089.99 101.25 -595092.96 5679323.47 101.25 -595093.51 5678255.43 101.25 -595094.28 5679333.38 101.25 -595094.60 5679293.74 101.25 -595096.31 5681420.62 100.00 -595096.39 5679283.91 101.25 -595096.45 5679099.31 101.25 -595096.46 5679343.10 101.25 -595096.79 5678246.10 101.25 -595096.98 5681640.05 100.00 -595097.93 5678997.51 101.25 -595098.47 5679274.14 101.25 -595099.22 5679352.70 101.25 -595099.48 5678460.79 101.25 -595099.95 5681411.42 100.00 -595100.04 5679108.64 101.25 -595100.67 5679264.39 101.25 -595102.20 5679362.23 101.25 -595102.58 5678237.95 101.25 -595102.86 5679254.64 101.25 -595103.58 5681402.17 100.00 -595103.59 5679117.97 101.25 -595105.02 5679244.89 101.25 -595105.86 5679371.52 101.25 -595106.05 5681644.03 100.00 -595106.38 5678992.20 101.25 -595106.95 5679127.39 101.25 -595107.17 5679235.13 101.25 -595108.18 5681393.32 100.00 -595108.37 5678229.81 101.25 -595108.63 5678464.80 101.25 -595108.76 5681383.42 100.00 -595109.03 5679225.32 101.25 -595109.09 5681373.45 100.00 -595109.52 5679380.82 101.25 -595109.97 5681363.52 100.00 -595110.30 5679136.80 101.25 -595110.76 5679215.48 101.25 -595112.09 5681354.03 100.00 -595112.54 5679205.65 101.25 -595113.19 5679390.12 101.25 -595113.44 5679146.28 101.25 -595114.29 5679156.21 101.25 -595114.36 5679195.82 101.25 -595114.65 5678222.09 101.25 -595115.11 5678987.35 101.25 -595115.18 5679166.16 101.25 -595115.50 5681647.24 100.00 -595116.18 5679186.00 101.25 -595116.19 5679176.10 101.25 -595116.74 5679399.45 101.25 -595117.78 5678468.81 101.25 -595118.23 5681346.28 100.00 -595120.22 5679408.82 101.25 -595121.86 5678215.18 101.25 -595121.90 5678980.14 101.25 -595123.70 5679418.18 101.25 -595124.94 5681650.46 100.00 -595126.49 5679427.76 101.25 -595126.56 5681340.80 100.00 -595127.17 5678472.18 101.25 -595128.30 5678972.47 101.25 -595128.94 5679437.45 101.25 -595129.08 5678208.27 101.25 -595131.38 5679447.14 101.25 -595133.30 5679456.94 101.25 -595134.73 5679655.77 101.25 -595134.88 5678964.95 101.25 -595134.90 5681335.32 100.00 -595135.00 5679466.78 101.25 -595135.17 5679665.71 101.25 -595135.45 5679645.80 101.25 -595136.17 5679635.84 101.25 -595136.29 5679675.64 101.25 -595136.61 5678201.71 101.25 -595136.68 5678475.25 101.25 -595136.85 5679625.87 101.25 -595136.93 5679476.58 101.25 -595137.28 5679615.89 101.25 -595137.41 5679685.57 101.25 -595137.70 5679605.91 101.25 -595138.25 5679595.93 101.25 -595138.85 5679585.96 101.25 -595139.45 5679575.99 101.25 -595139.51 5679695.33 101.25 -595139.59 5679486.21 101.25 -595139.96 5679566.01 101.25 -595140.16 5679506.08 101.25 -595140.21 5679556.02 101.25 -595140.31 5679496.09 101.25 -595140.32 5679516.06 101.25 -595140.45 5679546.03 101.25 -595140.49 5679526.05 101.25 -595140.66 5679536.04 101.25 -595141.58 5678957.54 101.25 -595141.77 5679705.06 101.25 -595142.23 5681328.57 100.00 -595144.22 5678195.24 101.25 -595144.47 5679714.65 101.25 -595146.28 5678477.90 101.25 -595148.08 5679723.97 101.25 -595148.28 5678950.13 101.25 -595149.48 5681321.72 100.00 -595151.69 5679733.29 101.25 -595151.83 5678188.77 101.25 -595154.97 5678942.71 101.25 -595155.29 5679742.61 101.25 -595156.20 5678479.16 101.25 -595157.07 5681315.34 100.00 -595158.06 5679752.20 101.25 -595159.45 5678182.30 101.25 -595160.72 5679761.83 101.25 -595161.67 5678935.30 101.25 -595163.35 5679771.47 101.25 -595165.28 5678174.32 101.25 -595165.54 5679781.22 101.25 -595165.91 5681310.73 100.00 -595166.02 5678480.76 101.25 -595167.73 5679790.97 101.25 -595167.83 5678927.46 101.25 -595169.92 5679800.71 101.25 -595170.37 5678165.73 101.25 -595172.28 5679810.41 101.25 -595173.53 5678919.25 101.25 -595174.25 5678156.53 101.25 -595174.76 5681306.12 100.00 -595175.41 5678484.18 101.25 -595175.59 5679819.84 101.25 -595178.91 5679829.26 101.25 -595179.23 5678911.05 101.25 -595180.65 5678149.15 101.25 -595182.96 5679838.38 101.25 -595184.12 5681303.72 100.00 -595184.45 5678488.10 101.25 -595184.64 5678902.66 101.25 -595184.99 5678140.25 101.25 -595186.95 5678130.45 101.25 -595187.40 5679847.33 101.25 -595188.91 5678120.65 101.25 -595189.59 5681744.87 100.00 -595189.81 5678894.11 101.25 -595190.94 5678495.70 101.25 -595191.19 5678110.99 101.25 -595191.84 5679856.28 101.25 -595194.09 5681303.96 100.00 -595194.98 5678885.55 101.25 -595196.29 5679865.22 101.25 -595196.43 5678102.56 101.25 -595197.15 5678072.98 101.25 -595197.45 5678503.27 101.25 -595197.66 5678082.92 101.25 -595198.26 5678063.05 101.25 -595198.60 5681749.15 100.00 -595198.62 5678092.86 101.25 -595198.98 5678876.50 101.25 -595200.93 5679874.07 101.25 -595201.70 5678866.88 101.25 -595202.29 5678054.31 101.25 -595204.00 5681304.75 100.00 -595204.12 5678510.70 101.25 -595204.42 5678857.27 101.25 -595205.89 5679882.74 101.25 -595205.98 5678847.44 101.25 -595206.81 5678837.49 101.25 -595207.62 5681753.43 100.00 -595207.67 5678827.53 101.25 -595208.66 5678817.59 101.25 -595208.76 5678046.74 101.25 -595209.65 5678807.65 101.25 -595210.63 5678797.71 101.25 -595210.85 5679891.41 101.25 -595211.29 5678517.66 101.25 -595212.22 5678787.84 101.25 -595213.72 5681306.98 100.00 -595213.84 5678777.98 101.25 -595215.55 5678768.14 101.25 -595215.80 5679900.09 101.25 -595216.31 5678040.20 101.25 -595216.69 5681757.60 100.00 -595217.30 5678758.30 101.25 -595219.20 5678748.50 101.25 -595219.65 5679909.26 101.25 -595220.22 5678522.14 101.25 -595221.25 5678738.72 101.25 -595222.85 5679918.73 101.25 -595223.40 5678728.96 101.25 -595223.45 5681309.21 100.00 -595224.89 5679928.47 101.25 -595224.98 5678035.45 101.25 -595225.80 5681761.67 100.00 -595226.41 5679938.35 101.25 -595227.23 5678719.78 101.25 -595227.92 5679948.23 101.25 -595228.97 5678423.10 100.00 -595229.05 5678432.89 100.00 -595229.17 5678526.57 101.25 -595229.34 5679958.11 101.25 -595229.77 5679968.09 101.25 -595230.20 5679978.07 101.25 -595230.28 5678442.80 100.00 -595230.81 5679988.04 101.25 -595231.35 5678452.73 100.00 -595232.37 5678462.67 100.00 -595232.81 5679997.82 101.25 -595232.93 5678414.17 100.00 -595232.96 5678711.68 101.25 -595232.96 5681312.15 100.00 -595234.31 5681766.77 100.00 -595234.41 5678032.86 101.25 -595234.82 5680007.61 101.25 -595235.79 5678471.96 100.00 -595236.84 5680017.39 101.25 -595238.15 5678530.94 101.25 -595239.33 5678703.98 101.25 -595240.24 5680026.79 101.25 -595241.02 5678480.08 100.00 -595241.37 5678408.82 100.00 -595242.22 5681772.85 100.00 -595242.38 5681315.45 100.00 -595243.65 5680036.18 101.25 -595244.05 5680290.09 101.25 -595244.36 5680280.19 101.25 -595244.39 5678033.34 101.25 -595245.08 5680300.03 101.25 -595245.95 5680270.33 101.25 -595246.11 5680309.97 101.25 -595246.15 5678696.69 101.25 -595247.05 5680045.58 101.25 -595247.26 5678535.05 101.25 -595247.53 5680260.46 101.25 -595247.61 5680319.83 101.25 -595249.49 5680250.67 101.25 -595249.49 5678485.37 100.00 -595249.61 5679319.69 100.00 -595249.65 5680329.61 101.25 -595249.99 5681779.11 100.00 -595250.30 5680055.02 101.25 -595250.33 5679309.93 100.00 -595250.72 5678405.46 100.00 -595250.77 5679329.61 100.00 -595251.09 5681320.12 100.00 -595251.72 5680339.39 101.25 -595251.73 5680240.93 101.25 -595251.93 5679339.54 100.00 -595253.13 5678689.54 101.25 -595253.17 5679300.36 100.00 -595253.52 5680064.48 101.25 -595253.88 5680349.14 101.25 -595253.97 5680231.20 101.25 -595254.15 5678035.23 101.25 -595254.49 5679349.09 100.00 -595255.20 5678231.19 100.00 -595255.96 5680221.41 101.25 -595256.03 5680358.90 101.25 -595256.37 5678539.16 101.25 -595256.45 5680074.02 101.25 -595256.58 5678241.08 100.00 -595257.02 5680368.80 101.25 -595257.06 5679291.25 100.00 -595257.40 5681785.80 100.00 -595257.41 5680378.79 101.25 -595257.75 5680211.58 101.25 -595257.96 5678250.98 100.00 -595258.36 5679358.30 100.00 -595258.42 5680083.81 101.25 -595258.44 5678489.55 100.00 -595259.22 5680388.56 101.25 -595259.30 5681325.80 100.00 -595259.55 5680201.75 101.25 -595260.11 5678682.39 101.25 -595260.29 5678402.60 100.00 -595260.39 5680093.61 101.25 -595261.74 5680192.01 101.25 -595261.75 5680398.22 101.25 -595262.22 5679367.51 100.00 -595262.32 5679282.76 100.00 -595262.37 5680103.40 101.25 -595262.44 5678258.55 100.00 -595263.87 5678037.48 101.25 -595264.16 5680113.23 101.25 -595264.27 5680182.34 101.25 -595264.29 5680407.89 101.25 -595264.81 5681792.49 100.00 -595265.82 5680123.08 101.25 -595266.02 5678541.63 101.25 -595266.10 5679376.72 100.00 -595266.80 5680172.68 101.25 -595266.82 5680417.55 101.25 -595267.22 5681331.85 100.00 -595267.48 5680132.93 101.25 -595267.79 5678676.03 101.25 -595267.85 5679274.55 100.00 -595268.12 5680162.80 101.25 -595268.13 5678491.96 100.00 -595268.48 5680142.85 101.25 -595268.62 5680152.84 101.25 -595269.35 5680427.22 101.25 -595269.91 5678399.90 100.00 -595269.99 5679385.92 100.00 -595270.24 5681044.98 101.25 -595271.54 5678262.66 100.00 -595272.54 5681798.81 100.00 -595273.74 5678038.99 101.25 -595273.88 5679395.12 100.00 -595273.94 5680436.08 101.25 -595274.68 5681338.44 100.00 -595275.69 5678669.90 101.25 -595275.78 5678543.79 101.25 -595276.30 5681037.04 101.25 -595276.66 5679269.85 100.00 -595277.77 5679404.32 100.00 -595277.82 5678494.38 100.00 -595278.61 5680444.91 101.25 -595279.43 5678397.00 100.00 -595280.26 5681805.13 100.00 -595280.87 5678265.93 100.00 -595281.33 5679413.65 100.00 -595282.03 5681344.78 100.00 -595282.36 5681029.09 101.25 -595282.73 5678043.37 101.25 -595283.29 5680453.74 101.25 -595283.59 5678663.79 101.25 -595284.58 5679423.09 100.00 -595285.47 5679265.14 100.00 -595285.53 5678545.94 101.25 -595287.75 5678495.40 100.00 -595287.81 5678391.56 100.00 -595287.84 5679432.53 100.00 -595287.99 5681811.45 100.00 -595288.74 5680462.06 101.25 -595288.84 5681021.51 101.25 -595290.81 5678266.87 100.00 -595291.08 5679441.98 100.00 -595291.52 5678657.72 101.25 -595291.82 5681346.69 100.00 -595292.53 5678042.69 101.25 -595293.65 5681819.62 100.00 -595294.19 5679451.47 100.00 -595294.58 5678384.58 100.00 -595294.65 5679261.43 100.00 -595295.07 5680469.78 101.25 -595295.32 5678547.94 101.25 -595295.70 5681014.25 101.25 -595297.30 5679460.97 100.00 -595297.70 5678496.34 100.00 -595299.07 5681828.00 100.00 -595299.40 5678375.84 100.00 -595299.46 5678651.64 101.25 -595300.41 5679470.46 100.00 -595300.76 5678267.81 100.00 -595301.61 5681348.61 100.00 -595301.69 5680477.27 101.25 -595302.43 5678041.37 101.25 -595302.57 5681006.99 101.25 -595303.57 5678366.77 100.00 -595304.39 5679259.19 100.00 -595304.50 5681836.38 100.00 -595305.13 5678549.83 101.25 -595305.57 5679478.96 100.00 -595307.56 5678645.80 101.25 -595307.64 5678497.28 100.00 -595307.75 5678357.69 100.00 -595308.38 5680484.68 101.25 -595309.71 5681000.04 101.25 -595309.92 5681844.76 100.00 -595309.97 5678271.36 100.00 -595311.05 5679487.31 100.00 -595311.51 5681349.74 100.00 -595311.89 5678348.60 100.00 -595312.34 5678040.05 101.25 -595314.12 5679256.94 100.00 -595314.94 5678551.72 101.25 -595315.08 5680492.10 101.25 -595315.35 5681853.14 100.00 -595315.76 5678640.10 101.25 -595316.04 5678339.51 100.00 -595317.59 5678497.14 100.00 -595317.73 5680994.08 101.25 -595318.18 5679494.21 100.00 -595318.93 5678275.77 100.00 -595319.25 5679681.43 100.00 -595319.30 5678003.08 101.25 -595319.57 5678009.82 101.25 -595320.30 5679691.36 100.00 -595320.49 5678330.58 100.00 -595320.78 5681861.52 100.00 -595320.83 5679671.84 100.00 -595321.06 5680500.10 101.25 -595321.35 5679701.29 100.00 -595321.45 5681350.50 100.00 -595322.32 5678040.09 101.25 -595322.40 5679711.23 100.00 -595323.22 5678633.56 101.25 -595323.86 5679254.73 100.00 -595324.19 5679721.04 100.00 -595324.42 5679662.52 100.00 -595324.55 5678554.40 101.25 -595324.97 5678993.66 100.00 -595325.07 5678283.53 100.00 -595325.16 5678321.74 100.00 -595325.68 5680988.04 101.25 -595325.82 5679500.65 100.00 -595325.91 5678983.75 100.00 -595326.20 5681869.90 100.00 -595326.28 5679730.81 100.00 -595326.53 5678016.76 101.25 -595326.99 5680508.14 101.25 -595327.04 5678973.83 100.00 -595327.41 5678312.15 100.00 -595327.46 5679003.34 100.00 -595327.54 5678496.27 100.00 -595328.28 5679653.36 100.00 -595328.31 5678963.92 100.00 -595328.49 5679740.55 100.00 -595328.66 5678302.24 100.00 -595328.89 5678292.25 100.00 -595328.90 5678001.05 101.25 -595328.97 5682733.65 101.25 -595329.79 5678626.03 101.25 -595329.89 5678954.06 100.00 -595329.95 5679013.01 100.00 -595330.17 5682742.83 101.25 -595331.40 5681351.27 100.00 -595331.46 5678944.19 100.00 -595331.50 5679750.07 100.00 -595331.63 5681878.28 100.00 -595332.31 5678040.22 101.25 -595332.64 5678934.28 100.00 -595332.92 5680516.18 101.25 -595333.04 5680981.28 101.25 -595333.08 5678559.06 101.25 -595333.45 5679507.09 100.00 -595333.61 5678924.33 100.00 -595333.82 5679253.92 100.00 -595333.86 5682752.12 101.25 -595334.27 5682725.30 101.25 -595334.52 5679759.59 100.00 -595334.53 5678022.75 101.25 -595334.58 5678914.39 100.00 -595334.67 5679645.68 100.00 -595335.55 5678904.45 100.00 -595336.35 5678618.50 101.25 -595336.38 5678894.50 100.00 -595336.39 5679019.66 100.00 -595336.62 5678032.36 101.25 -595337.14 5678884.54 100.00 -595337.17 5681886.57 100.00 -595337.37 5679769.17 100.00 -595337.49 5678495.39 100.00 -595337.90 5678874.58 100.00 -595338.87 5678001.69 101.25 -595339.06 5678864.67 100.00 -595339.22 5680523.93 101.25 -595340.16 5679778.76 100.00 -595340.22 5678566.05 101.25 -595340.39 5680974.52 101.25 -595341.06 5679638.00 100.00 -595341.07 5678854.89 100.00 -595341.11 5682758.59 101.25 -595341.36 5679513.20 100.00 -595341.37 5681351.68 100.00 -595341.50 5682718.39 101.25 -595342.65 5679788.42 100.00 -595342.92 5678610.97 101.25 -595343.58 5678845.25 100.00 -595343.77 5679253.11 100.00 -595343.81 5681894.02 100.00 -595344.57 5679798.23 100.00 -595345.64 5680531.58 101.25 -595345.85 5679022.23 100.00 -595346.49 5679808.03 100.00 -595346.84 5678573.52 101.25 -595346.95 5678602.03 101.25 -595347.21 5678835.94 100.00 -595347.44 5678494.51 100.00 -595347.58 5679630.43 100.00 -595347.72 5680967.73 101.25 -595348.11 5679817.88 100.00 -595348.34 5679937.61 100.00 -595348.43 5679867.72 100.00 -595348.53 5679947.59 100.00 -595348.64 5679927.63 100.00 -595348.70 5679877.70 100.00 -595348.84 5678002.34 101.25 -595348.84 5679857.74 100.00 -595348.94 5679917.64 100.00 -595349.02 5679827.82 100.00 -595349.03 5679887.69 100.00 -595349.04 5679957.57 100.00 -595349.24 5679907.66 100.00 -595349.25 5679847.76 100.00 -595349.26 5679519.30 100.00 -595349.31 5682764.31 101.25 -595349.35 5679897.67 100.00 -595349.54 5679967.54 100.00 -595349.66 5679837.78 100.00 -595349.91 5678582.79 101.25 -595349.93 5678592.49 101.25 -595350.05 5679977.52 100.00 -595350.34 5682715.00 101.25 -595350.45 5681901.47 100.00 -595351.17 5679987.43 100.00 -595351.34 5681352.06 100.00 -595352.40 5680538.87 101.25 -595352.50 5678827.49 100.00 -595352.82 5679997.28 100.00 -595353.73 5679252.29 100.00 -595354.22 5679622.97 100.00 -595354.44 5680960.34 101.25 -595354.46 5680007.13 100.00 -595355.77 5679023.39 100.00 -595356.11 5680016.99 100.00 -595356.84 5679525.74 100.00 -595357.10 5681908.92 100.00 -595357.39 5678493.64 100.00 -595357.52 5682770.02 101.25 -595357.94 5678819.11 100.00 -595358.00 5680026.79 100.00 -595358.78 5678003.20 101.25 -595359.99 5680036.58 100.00 -595360.29 5682714.02 101.25 -595360.39 5679615.11 100.00 -595360.54 5680544.66 101.25 -595361.05 5680952.85 101.25 -595361.29 5681352.55 100.00 -595361.97 5680046.37 100.00 -595363.06 5679533.56 100.00 -595363.41 5678810.75 100.00 -595363.68 5679251.48 100.00 -595363.96 5680056.16 100.00 -595364.19 5681915.90 100.00 -595365.61 5682775.89 101.25 -595365.73 5679023.57 100.00 -595365.95 5680065.95 100.00 -595366.52 5679607.23 100.00 -595366.76 5680944.66 101.25 -595367.21 5678491.86 100.00 -595367.94 5680075.74 100.00 -595367.94 5679542.23 100.00 -595368.50 5678005.51 101.25 -595368.89 5678802.40 100.00 -595369.73 5680548.37 101.25 -595369.90 5680085.53 100.00 -595370.27 5682714.44 101.25 -595371.12 5681354.26 100.00 -595371.82 5679598.87 100.00 -595371.87 5680095.33 100.00 -595371.91 5681922.23 100.00 -595372.43 5679551.15 100.00 -595372.48 5680936.46 101.25 -595373.44 5682782.12 101.25 -595373.64 5679250.67 100.00 -595373.83 5680105.12 100.00 -595375.37 5680114.96 100.00 -595375.50 5679589.58 100.00 -595375.57 5680124.95 100.00 -595375.64 5680174.89 100.00 -595375.71 5680164.90 100.00 -595375.72 5679023.33 100.00 -595375.73 5679560.58 100.00 -595375.78 5680134.94 100.00 -595375.78 5680154.92 100.00 -595375.85 5680144.93 100.00 -595376.08 5680184.87 100.00 -595376.69 5680194.84 100.00 -595376.72 5678796.36 100.00 -595376.97 5678489.76 100.00 -595377.31 5680204.81 100.00 -595377.71 5679579.91 100.00 -595378.15 5680214.75 100.00 -595378.19 5680928.27 101.25 -595378.22 5678007.83 101.25 -595379.02 5679570.01 100.00 -595379.24 5680551.41 101.25 -595379.63 5681928.56 100.00 -595379.84 5680224.60 100.00 -595380.24 5682715.11 101.25 -595380.66 5682577.39 100.00 -595380.95 5681355.97 100.00 -595381.26 5682788.35 101.25 -595381.54 5680234.44 100.00 -595382.56 5680919.35 101.25 -595383.45 5679252.27 100.00 -595383.87 5680244.12 100.00 -595384.43 5682568.76 100.00 -595384.50 5682586.13 100.00 -595385.02 5678790.79 100.00 -595385.70 5679023.23 100.00 -595386.25 5680910.06 101.25 -595386.74 5678487.65 100.00 -595387.13 5680253.57 100.00 -595387.35 5681934.89 100.00 -595387.40 5678011.30 101.25 -595388.71 5682794.99 101.25 -595388.86 5680554.13 101.25 -595390.04 5682717.01 101.25 -595390.38 5680263.01 100.00 -595390.49 5681358.76 100.00 -595390.62 5680901.09 101.25 -595392.44 5682563.66 100.00 -595393.25 5679254.25 100.00 -595393.39 5678785.34 100.00 -595393.64 5680272.45 100.00 -595393.81 5682588.21 100.00 -595394.37 5678018.07 101.25 -595395.21 5680892.21 101.25 -595395.66 5679023.99 100.00 -595395.77 5682802.08 101.25 -595396.50 5678485.55 100.00 -595396.61 5681938.52 100.00 -595397.71 5680281.57 100.00 -595398.31 5678027.25 101.25 -595398.52 5680556.66 101.25 -595399.37 5682720.35 101.25 -595399.79 5680883.33 101.25 -595399.84 5681362.24 100.00 -595401.81 5680290.68 100.00 -595401.98 5682563.88 100.00 -595402.81 5678782.10 100.00 -595402.82 5682809.16 101.25 -595403.04 5679256.23 100.00 -595403.14 5682590.21 100.00 -595403.63 5680784.90 101.25 -595403.75 5680874.25 101.25 -595403.81 5680774.94 101.25 -595403.94 5680794.89 101.25 -595404.24 5680804.88 101.25 -595404.55 5680814.86 101.25 -595404.93 5680765.01 101.25 -595405.29 5680824.81 101.25 -595405.32 5680864.38 101.25 -595405.62 5679024.75 100.00 -595405.98 5681941.96 100.00 -595406.05 5680755.08 101.25 -595406.08 5678033.27 101.25 -595406.09 5680299.67 100.00 -595406.30 5678483.59 100.00 -595406.54 5680834.73 101.25 -595406.89 5680854.52 101.25 -595407.17 5680745.15 101.25 -595407.79 5680844.64 101.25 -595408.21 5682725.03 101.25 -595408.28 5680558.50 101.25 -595408.51 5682578.33 99.75 -595409.09 5680735.39 101.25 -595409.19 5681365.72 100.00 -595410.82 5682814.69 101.25 -595411.43 5682564.99 100.00 -595412.13 5680725.88 101.25 -595412.31 5678779.02 100.00 -595412.63 5682591.29 100.00 -595412.84 5679258.13 100.00 -595412.86 5680307.02 100.00 -595414.71 5678037.95 101.25 -595415.16 5680716.36 101.25 -595415.53 5681944.69 100.00 -595415.58 5679025.52 100.00 -595416.14 5678481.89 100.00 -595417.07 5682729.67 101.25 -595418.14 5681370.07 100.00 -595418.20 5680706.84 101.25 -595418.27 5680558.59 101.25 -595419.63 5680314.36 100.00 -595420.56 5682816.53 101.25 -595420.78 5682566.89 100.00 -595421.97 5678776.60 100.00 -595422.07 5682592.65 100.00 -595422.43 5680697.84 101.25 -595422.66 5679259.96 100.00 -595424.60 5678039.36 101.25 -595424.88 5679028.91 100.00 -595425.41 5681946.08 100.00 -595425.98 5678480.18 100.00 -595426.20 5682733.75 101.25 -595426.40 5680321.71 100.00 -595426.94 5681374.78 100.00 -595427.28 5680689.10 101.25 -595428.26 5680558.68 101.25 -595429.99 5682569.06 100.00 -595430.33 5682815.15 101.25 -595431.50 5682594.13 100.00 -595431.85 5678775.15 100.00 -595432.13 5680680.37 101.25 -595432.48 5679261.79 100.00 -595433.17 5680329.05 100.00 -595434.45 5679030.14 100.00 -595434.58 5678039.29 101.25 -595435.26 5681946.42 100.00 -595435.52 5682737.34 101.25 -595435.74 5681379.48 100.00 -595435.82 5678478.47 100.00 -595436.93 5682575.63 100.00 -595437.97 5680672.26 101.25 -595438.25 5680558.63 101.25 -595439.87 5682812.16 101.25 -595440.55 5680335.66 100.00 -595440.63 5682591.91 100.00 -595441.74 5678773.70 100.00 -595441.78 5682583.06 100.00 -595442.30 5679263.61 100.00 -595443.83 5680664.17 101.25 -595444.39 5679029.15 100.00 -595444.57 5678039.34 101.25 -595444.73 5681383.66 100.00 -595445.03 5681944.36 100.00 -595445.07 5682740.30 101.25 -595445.71 5678477.72 100.00 -595448.23 5680558.16 101.25 -595449.07 5680340.86 100.00 -595449.23 5682808.68 101.25 -595449.75 5680656.12 101.25 -595451.63 5678772.74 100.00 -595452.12 5679265.44 100.00 -595454.33 5679028.16 100.00 -595454.44 5681385.97 100.00 -595454.55 5678039.70 101.25 -595454.64 5682743.18 101.25 -595454.79 5681942.29 100.00 -595455.66 5678478.61 100.00 -595455.79 5680648.17 101.25 -595457.60 5680346.06 100.00 -595458.21 5680557.70 101.25 -595458.36 5682804.61 101.25 -595461.57 5678773.71 100.00 -595461.86 5680640.22 101.25 -595462.02 5679265.49 100.00 -595464.14 5681388.28 100.00 -595464.17 5679027.84 100.00 -595464.43 5678041.20 101.25 -595464.53 5682744.60 101.25 -595464.56 5681940.22 100.00 -595465.60 5678479.50 100.00 -595466.85 5680349.68 100.00 -595467.49 5682800.53 101.25 -595468.20 5680557.54 101.25 -595468.62 5680632.87 101.25 -595471.52 5678774.68 100.00 -595471.97 5679264.52 100.00 -595473.30 5679031.89 100.00 -595473.77 5678043.97 101.25 -595474.07 5681389.16 100.00 -595474.32 5681938.10 100.00 -595474.43 5682746.02 101.25 -595475.39 5680625.52 101.25 -595475.55 5678480.39 100.00 -595476.38 5680352.69 100.00 -595476.65 5682796.52 101.25 -595478.08 5680558.34 101.25 -595481.50 5678774.85 100.00 -595481.52 5678442.35 98.75 -595481.91 5679263.56 100.00 -595482.13 5679036.56 100.00 -595482.15 5680618.17 101.25 -595482.69 5678048.28 101.25 -595483.15 5678451.70 98.75 -595484.02 5681389.91 100.00 -595484.07 5681935.99 100.00 -595484.12 5678433.13 98.75 -595484.33 5682747.44 101.25 -595485.31 5678482.45 100.00 -595485.87 5682792.64 101.25 -595485.90 5680355.71 100.00 -595487.79 5680560.70 101.25 -595487.87 5680609.98 101.25 -595489.16 5678424.54 98.75 -595489.59 5679043.03 100.00 -595490.23 5678458.70 98.75 -595491.49 5678774.83 100.00 -595491.85 5679262.59 100.00 -595492.00 5678051.91 101.25 -595493.48 5680601.72 101.25 -595493.83 5681933.88 100.00 -595493.96 5681390.71 100.00 -595494.22 5682746.48 101.25 -595494.30 5678416.01 98.75 -595494.36 5678614.61 100.00 -595494.59 5678604.62 100.00 -595494.82 5678594.64 100.00 -595495.01 5678484.84 100.00 -595495.08 5682788.76 101.25 -595495.55 5680358.26 100.00 -595496.31 5680564.79 101.25 -595496.49 5679050.25 100.00 -595496.83 5678584.90 100.00 -595497.82 5680592.85 101.25 -595498.47 5678623.10 100.00 -595499.34 5678461.51 98.75 -595499.35 5678575.23 100.00 -595499.49 5678407.52 98.75 -595500.62 5680573.60 101.25 -595500.73 5680583.29 101.25 -595501.36 5678055.38 101.25 -595501.47 5678774.80 100.00 -595501.71 5679261.27 100.00 -595503.16 5679057.69 100.00 -595503.40 5678566.29 100.00 -595503.72 5681932.56 100.00 -595503.85 5681392.05 100.00 -595504.11 5682744.99 101.25 -595504.30 5682784.89 101.25 -595504.64 5678399.00 98.75 -595504.65 5678487.34 100.00 -595504.82 5678630.80 100.00 -595505.44 5680359.02 100.00 -595509.22 5678462.69 98.75 -595509.31 5678558.24 100.00 -595509.74 5678390.45 98.75 -595509.75 5679065.20 100.00 -595511.01 5679257.62 100.00 -595511.22 5678057.00 101.25 -595511.46 5678774.77 100.00 -595512.17 5678637.55 100.00 -595512.60 5678493.39 100.00 -595513.60 5681393.78 100.00 -595513.64 5682781.37 101.25 -595513.65 5681932.58 100.00 -595513.97 5682743.34 101.25 -595515.42 5680358.82 100.00 -595516.18 5678383.08 98.75 -595516.52 5678551.33 100.00 -595517.14 5679071.88 100.00 -595518.92 5678464.90 98.75 -595519.61 5678644.23 100.00 -595520.12 5678499.93 100.00 -595520.28 5679253.91 100.00 -595521.07 5678058.63 101.25 -595521.33 5678775.33 100.00 -595522.30 5681398.66 100.00 -595522.69 5678543.60 100.00 -595523.36 5682779.01 101.25 -595523.60 5681933.42 100.00 -595523.72 5682741.14 101.25 -595524.14 5682493.46 100.00 -595524.46 5678377.75 98.75 -595524.81 5679078.28 100.00 -595525.26 5680357.09 100.00 -595526.18 5682501.38 100.00 -595526.80 5678507.32 100.00 -595527.69 5678534.96 100.00 -595528.46 5678467.75 98.75 -595528.52 5682484.78 100.00 -595528.84 5678645.20 100.00 -595529.38 5679249.80 100.00 -595530.56 5678779.16 100.00 -595530.97 5678057.80 101.25 -595531.00 5681403.54 100.00 -595531.10 5678525.83 100.00 -595531.74 5678515.86 100.00 -595532.48 5679084.68 100.00 -595533.07 5682507.87 100.00 -595533.15 5682777.01 101.25 -595533.48 5682738.94 101.25 -595533.54 5681934.26 100.00 -595533.94 5678374.71 98.75 -595535.10 5680355.35 100.00 -595536.73 5682479.75 100.00 -595537.96 5678470.74 98.75 -595538.00 5678648.77 100.00 -595538.49 5679245.69 100.00 -595539.09 5681409.33 100.00 -595539.79 5678782.99 100.00 -595540.15 5679091.08 100.00 -595540.66 5678055.80 101.25 -595542.32 5682510.88 100.00 -595543.01 5682775.37 101.25 -595543.24 5682736.79 101.25 -595543.42 5678371.67 98.75 -595543.42 5681935.63 100.00 -595544.36 5680351.68 100.00 -595546.22 5682477.67 100.00 -595546.67 5678653.73 100.00 -595546.73 5678475.38 98.75 -595546.82 5681415.61 100.00 -595547.59 5679241.58 100.00 -595547.89 5679097.39 100.00 -595549.32 5678785.93 100.00 -595549.57 5678051.28 101.25 -595552.00 5682511.28 100.00 -595552.73 5682776.90 101.25 -595552.90 5678368.64 98.75 -595553.08 5682735.02 101.25 -595553.27 5681937.26 100.00 -595553.56 5680347.80 100.00 -595554.62 5678481.32 98.75 -595555.25 5678658.84 100.00 -595555.59 5679235.61 100.00 -595555.71 5682475.58 100.00 -595555.86 5679103.43 100.00 -595556.04 5681419.42 100.00 -595558.10 5678046.17 101.25 -595558.92 5678788.71 100.00 -595561.65 5678488.37 98.75 -595561.70 5678364.07 98.75 -595561.72 5682511.50 100.00 -595562.18 5680342.74 100.00 -595562.32 5681940.98 100.00 -595562.35 5682779.62 101.25 -595562.93 5682733.24 101.25 -595563.53 5679229.55 100.00 -595563.82 5679109.46 100.00 -595564.01 5678663.53 100.00 -595565.26 5681423.22 100.00 -595565.36 5682475.45 100.00 -595565.85 5678039.87 101.25 -595565.94 5682495.51 99.75 -595568.07 5678495.93 98.75 -595568.51 5678791.49 100.00 -595570.29 5678359.03 98.75 -595570.74 5681946.34 100.00 -595570.80 5680337.69 100.00 -595571.41 5682510.97 100.00 -595571.44 5679223.46 100.00 -595571.83 5682782.71 101.25 -595571.99 5679115.20 100.00 -595572.73 5682732.21 101.25 -595573.64 5678666.21 100.00 -595573.80 5678504.07 98.75 -595574.47 5678034.90 101.25 -595574.48 5681427.03 100.00 -595575.07 5682475.94 100.00 -595577.79 5678352.81 98.75 -595577.85 5680330.85 100.00 -595577.92 5678794.85 100.00 -595579.21 5681951.63 100.00 -595579.36 5679217.36 100.00 -595579.58 5678512.18 98.75 -595579.67 5682788.92 101.25 -595580.30 5679120.74 100.00 -595581.10 5682510.16 100.00 -595582.36 5682734.90 101.25 -595583.26 5678668.89 100.00 -595583.45 5678030.66 101.25 -595583.50 5678344.66 98.75 -595583.75 5681430.71 100.00 -595583.95 5680322.95 100.00 -595584.77 5682476.61 100.00 -595585.37 5678520.28 98.75 -595585.40 5682882.88 101.25 -595586.40 5679210.34 100.00 -595586.42 5682872.96 101.25 -595587.28 5678798.33 100.00 -595587.49 5682892.33 101.25 -595587.52 5682795.12 101.25 -595587.83 5681956.66 100.00 -595588.22 5682863.12 101.25 -595588.61 5679126.28 100.00 -595589.21 5678336.50 98.75 -595589.84 5682853.25 101.25 -595590.06 5680315.04 100.00 -595590.80 5682510.63 100.00 -595591.05 5678528.46 98.75 -595591.08 5682843.33 101.25 -595591.85 5682804.03 101.25 -595591.95 5682901.28 101.25 -595591.99 5682737.60 101.25 -595592.33 5682833.41 101.25 -595592.88 5678671.57 100.00 -595593.02 5681434.35 100.00 -595593.02 5679202.85 100.00 -595593.24 5678031.58 101.25 -595593.27 5682823.46 101.25 -595594.08 5682813.49 101.25 -595594.45 5682477.39 100.00 -595594.84 5680306.31 100.00 -595594.92 5678328.34 98.75 -595595.67 5679133.24 100.00 -595596.45 5681961.69 100.00 -595596.64 5678801.82 100.00 -595597.14 5682909.83 101.25 -595597.31 5678536.12 98.75 -595599.31 5680297.37 100.00 -595599.50 5679195.26 100.00 -595600.08 5678038.86 101.25 -595600.43 5681441.02 100.00 -595600.51 5682511.10 100.00 -595600.61 5678320.18 98.75 -595600.76 5682741.65 101.25 -595601.19 5679141.55 100.00 -595601.25 5678048.53 101.25 -595602.55 5678672.86 100.00 -595603.46 5682917.47 101.25 -595603.73 5680288.42 100.00 -595603.86 5682479.40 100.00 -595604.17 5678057.91 101.25 -595604.74 5678542.75 98.75 -595605.07 5681966.72 100.00 -595605.32 5679187.15 100.00 -595605.92 5678805.50 100.00 -595606.26 5678311.97 98.75 -595606.59 5679149.96 100.00 -595607.26 5682749.24 101.25 -595607.59 5681447.96 100.00 -595608.09 5680279.42 100.00 -595608.35 5678066.99 101.25 -595609.47 5679178.11 100.00 -595610.22 5682511.42 100.00 -595610.85 5682924.20 101.25 -595610.96 5679158.72 100.00 -595611.93 5679168.66 100.00 -595612.28 5678304.11 98.75 -595612.33 5678670.82 100.00 -595612.43 5678076.10 101.25 -595612.44 5680270.43 100.00 -595612.46 5678548.96 98.75 -595612.93 5682482.89 100.00 -595613.77 5682756.84 101.25 -595613.91 5681971.33 100.00 -595614.58 5681455.07 100.00 -595615.14 5678809.36 100.00 -595616.99 5680261.55 100.00 -595617.23 5678084.76 101.25 -595619.02 5682929.93 101.25 -595619.66 5682510.60 100.00 -595620.27 5682764.44 101.25 -595620.31 5678298.74 98.75 -595620.82 5681540.37 100.00 -595621.57 5678552.56 98.75 -595621.58 5681462.19 100.00 -595621.82 5680252.80 100.00 -595621.94 5678668.19 100.00 -595622.00 5682486.39 100.00 -595623.04 5681975.38 100.00 -595623.10 5681532.22 100.00 -595623.93 5678092.17 101.25 -595624.01 5681549.69 100.00 -595624.07 5682773.55 101.25 -595624.35 5678813.22 100.00 -595625.90 5682503.90 100.00 -595626.38 5682494.82 100.00 -595626.64 5680244.05 100.00 -595627.17 5682783.06 101.25 -595627.44 5682927.90 101.25 -595628.57 5681469.30 100.00 -595629.02 5681440.19 100.00 -595630.18 5678297.42 98.75 -595630.26 5681430.79 100.00 -595630.27 5682792.57 101.25 -595630.38 5681449.48 100.00 -595630.75 5682918.46 101.25 -595631.36 5678664.86 100.00 -595631.47 5680235.31 100.00 -595631.49 5678553.37 98.75 -595631.72 5681883.31 98.75 -595631.91 5681421.77 100.00 -595632.10 5678097.81 101.25 -595632.16 5681979.43 100.00 -595632.58 5681534.15 100.00 -595632.70 5681875.22 98.75 -595633.29 5678817.58 100.00 -595633.35 5681458.19 100.00 -595633.54 5682908.86 101.25 -595634.77 5682801.49 101.25 -595635.52 5681476.46 100.00 -595636.29 5680226.56 100.00 -595637.35 5682900.73 101.25 -595637.90 5681890.28 98.75 -595638.86 5681433.54 99.50 -595639.39 5682810.36 101.25 -595639.45 5678659.36 100.00 -595640.02 5681442.25 99.50 -595640.05 5678296.09 98.75 -595640.25 5681464.69 100.00 -595640.59 5681422.09 100.00 -595640.71 5681539.90 100.00 -595641.01 5678102.07 101.25 -595641.03 5681871.34 98.75 -595641.12 5680217.81 100.00 -595641.17 5681983.70 100.00 -595641.38 5678553.53 98.75 -595641.50 5678823.28 100.00 -595642.16 5681483.90 100.00 -595642.23 5681450.31 99.50 -595644.39 5682818.96 101.25 -595645.78 5680208.98 100.00 -595646.67 5678652.46 100.00 -595647.05 5682898.74 101.25 -595647.13 5681892.94 98.75 -595647.58 5681428.41 100.00 -595647.87 5681491.70 100.00 -595648.19 5681501.65 100.00 -595648.36 5681882.27 98.50 -595649.38 5681540.92 100.00 -595649.46 5681455.29 99.50 -595649.46 5681465.37 100.00 -595649.54 5681511.54 100.00 -595649.71 5678828.97 100.00 -595649.96 5681988.44 100.00 -595650.00 5678296.20 98.75 -595650.16 5680200.01 100.00 -595650.30 5681872.05 98.75 -595650.54 5681531.37 100.00 -595650.76 5678104.25 101.25 -595650.89 5681521.42 100.00 -595650.93 5682826.53 101.25 -595651.14 5678551.59 98.75 -595653.21 5681436.03 100.00 -595653.80 5678645.47 100.00 -595654.55 5680191.03 100.00 -595655.56 5682893.61 101.25 -595656.36 5681895.60 98.75 -595657.20 5681459.89 100.00 -595657.49 5681444.41 100.00 -595657.92 5678834.66 100.00 -595658.75 5681993.17 100.00 -595658.93 5680182.05 100.00 -595659.32 5681875.32 98.75 -595659.95 5678296.43 98.75 -595660.35 5682829.69 101.25 -595660.65 5678105.54 101.25 -595660.91 5678638.45 100.00 -595660.91 5678549.65 98.75 -595660.96 5681453.22 100.00 -595663.32 5680173.08 100.00 -595663.76 5682887.90 101.25 -595665.64 5678840.97 100.00 -595665.82 5681895.29 98.75 -595667.12 5681880.67 98.75 -595667.54 5681997.91 100.00 -595667.74 5680164.12 100.00 -595668.02 5678631.43 100.00 -595668.52 5678669.66 101.25 -595669.70 5682830.88 101.25 -595669.91 5678296.65 98.75 -595670.59 5678106.58 101.25 -595670.68 5678547.71 98.75 -595671.05 5681888.56 98.75 -595671.37 5681542.08 100.00 -595671.89 5682882.07 101.25 -595672.10 5681532.95 100.00 -595672.15 5680155.16 100.00 -595673.17 5678847.53 100.00 -595673.53 5681550.84 100.00 -595673.59 5678661.42 101.25 -595673.61 5678673.75 101.25 -595675.03 5682466.28 100.00 -595675.13 5678624.42 100.00 -595675.17 5682456.50 100.00 -595675.29 5682004.17 100.00 -595675.59 5682476.12 100.00 -595676.51 5681559.50 100.00 -595677.31 5680146.67 100.00 -595677.90 5682825.30 101.25 -595678.47 5681527.48 100.00 -595679.81 5682447.74 100.00 -595679.83 5678295.94 98.75 -595680.22 5682876.70 101.25 -595680.36 5678545.40 98.75 -595680.50 5678105.81 101.25 -595680.70 5678854.10 100.00 -595680.72 5678654.60 101.25 -595681.02 5678686.61 101.25 -595681.09 5678677.86 101.25 -595681.37 5679343.86 98.75 -595682.24 5682483.47 100.00 -595682.24 5678617.40 100.00 -595682.39 5679334.01 98.75 -595682.50 5679353.72 98.75 -595682.93 5682010.59 100.00 -595683.14 5682816.94 101.25 -595683.58 5680138.90 100.00 -595684.60 5679324.42 98.75 -595684.64 5679363.29 98.75 -595686.75 5681525.33 100.00 -595687.22 5682807.81 101.25 -595688.25 5679315.19 98.75 -595688.34 5682443.06 100.00 -595688.43 5682491.19 100.00 -595688.46 5678648.48 101.25 -595688.87 5679372.27 98.75 -595688.99 5682018.53 100.00 -595688.99 5678859.65 100.00 -595689.71 5682873.54 101.25 -595689.74 5678295.02 98.75 -595689.85 5680131.12 100.00 -595690.04 5678543.05 98.75 -595690.37 5678611.77 100.00 -595690.41 5678104.50 101.25 -595690.68 5682798.47 101.25 -595690.72 5678687.60 101.25 -595692.93 5682788.72 101.25 -595693.11 5679381.24 98.75 -595694.06 5682499.35 100.00 -595694.29 5679307.35 98.75 -595694.93 5681528.99 100.00 -595695.04 5682026.46 100.00 -595695.18 5682778.98 101.25 -595696.19 5678642.36 101.25 -595697.31 5682438.83 100.00 -595697.39 5680124.95 100.00 -595697.78 5678864.28 100.00 -595698.14 5682702.60 101.25 -595698.53 5679389.32 98.75 -595698.61 5682769.62 101.25 -595698.93 5682692.63 101.25 -595699.11 5682507.81 100.00 -595699.17 5678607.04 100.00 -595699.45 5678293.34 98.75 -595699.47 5682872.03 101.25 -595699.60 5678100.60 101.25 -595699.70 5678540.66 98.75 -595700.58 5678687.83 101.25 -595700.70 5682682.85 101.25 -595701.15 5682712.12 101.25 -595701.35 5679300.43 98.75 -595701.63 5681535.23 100.00 -595701.63 5682033.89 100.00 -595702.55 5682760.43 101.25 -595704.05 5678636.40 101.25 -595704.23 5682721.63 101.25 -595704.47 5682515.71 100.00 -595704.52 5682673.87 101.25 -595705.94 5682433.96 100.00 -595705.95 5682751.09 101.25 -595705.97 5679395.89 98.75 -595706.39 5680120.62 100.00 -595706.67 5682731.29 101.25 -595707.12 5678867.83 100.00 -595707.44 5682741.20 101.25 -595707.97 5678602.32 100.00 -595708.33 5681541.47 100.00 -595708.45 5678289.10 98.75 -595708.86 5679293.95 98.75 -595709.07 5678097.70 101.25 -595709.30 5678538.00 98.75 -595709.31 5682040.26 100.00 -595709.47 5682871.94 101.25 -595710.38 5678687.06 101.25 -595712.24 5678630.91 101.25 -595712.38 5678651.15 102.50 -595712.39 5682667.69 101.25 -595712.52 5682521.49 100.00 -595713.41 5679402.46 98.75 -595714.53 5682429.01 100.00 -595715.07 5678660.48 102.50 -595715.40 5680116.29 100.00 -595716.41 5678642.32 102.50 -595716.45 5678871.38 100.00 -595716.63 5679287.89 98.75 -595716.78 5678597.59 100.00 -595717.04 5682046.58 100.00 -595717.46 5678284.85 98.75 -595718.80 5682874.82 101.25 -595718.89 5678535.35 98.75 -595718.97 5678096.30 101.25 -595720.09 5678685.41 101.25 -595720.25 5682661.52 101.25 -595720.65 5678625.82 101.25 -595720.84 5679409.03 98.75 -595722.08 5682422.62 100.00 -595722.36 5682522.73 100.00 -595723.16 5678636.05 102.50 -595723.23 5681888.31 98.75 -595724.34 5678662.81 102.50 -595724.40 5680111.97 100.00 -595725.15 5682052.40 100.00 -595725.69 5678279.34 98.75 -595725.79 5678874.94 100.00 -595725.90 5678593.62 100.00 -595725.90 5679284.36 98.75 -595726.93 5681893.05 98.75 -595727.54 5682879.61 101.25 -595728.49 5678532.69 98.75 -595728.69 5681882.15 98.75 -595728.87 5678094.99 101.25 -595728.90 5679414.77 98.75 -595729.45 5678682.31 101.25 -595729.54 5682416.09 100.00 -595729.69 5682661.19 101.25 -595729.69 5678621.87 101.25 -595731.74 5678631.51 102.50 -595732.19 5682523.97 100.00 -595733.19 5681886.11 98.50 -595733.52 5678273.19 98.75 -595733.92 5680109.18 100.00 -595733.95 5678662.69 102.50 -595734.31 5682056.12 100.00 -595735.18 5679280.83 98.75 -595735.26 5681891.42 98.75 -595735.37 5678590.44 100.00 -595735.44 5678876.24 100.00 -595735.59 5682885.54 101.25 -595736.22 5681878.31 98.75 -595736.57 5682409.10 100.00 -595737.36 5679419.94 98.75 -595738.12 5678530.21 98.75 -595738.77 5678094.35 101.25 -595738.79 5678679.14 101.25 -595738.99 5678618.78 101.25 -595739.10 5681720.43 98.75 -595739.59 5682662.57 101.25 -595740.53 5678266.12 98.75 -595740.53 5678627.60 102.50 -595741.91 5681711.84 98.75 -595742.07 5682524.55 100.00 -595743.18 5681888.06 98.75 -595743.25 5682891.94 101.25 -595743.43 5678646.06 103.75 -595743.59 5678661.58 102.50 -595743.68 5682402.25 100.00 -595743.71 5680107.21 100.00 -595743.83 5682059.12 100.00 -595744.23 5681727.88 98.75 -595744.30 5679276.95 98.75 -595744.35 5681880.12 98.75 -595744.84 5678587.26 100.00 -595745.14 5678854.66 100.12 -595745.40 5678875.40 100.00 -595745.55 5678638.43 103.75 -595745.83 5679425.12 98.75 -595746.12 5678258.06 98.75 -595747.92 5678528.44 98.75 -595748.00 5678098.18 101.25 -595748.09 5678675.84 101.25 -595748.68 5682666.73 101.25 -595748.69 5678616.98 101.25 -595748.86 5681704.73 98.75 -595750.12 5678626.11 102.50 -595750.29 5678648.86 103.75 -595750.30 5678249.03 98.75 -595750.57 5682898.76 101.25 -595751.98 5682524.78 100.00 -595752.90 5682398.61 100.00 -595753.13 5679272.44 98.75 -595753.18 5678660.07 102.50 -595753.20 5678634.43 103.75 -595753.48 5681731.37 98.75 -595753.50 5680105.25 100.00 -595753.55 5682057.97 100.00 -595754.32 5678871.19 100.00 -595754.32 5678584.11 100.00 -595754.70 5679429.36 98.75 -595754.78 5678640.94 104.00 -595756.50 5681698.58 98.75 -595757.39 5678672.55 101.25 -595757.50 5678750.55 100.00 -595757.71 5682671.01 101.25 -595757.72 5678526.67 98.75 -595757.78 5678100.15 101.25 -595758.17 5678760.52 100.00 -595758.39 5682904.98 101.25 -595758.39 5678615.18 101.25 -595758.88 5678770.48 100.00 -595758.95 5678647.44 103.75 -595759.17 5678740.99 100.00 -595759.62 5678780.44 100.00 -595759.74 5678624.81 102.50 -595761.49 5678633.20 103.75 -595761.89 5682525.01 100.00 -595761.93 5678790.09 100.00 -595761.97 5679267.92 98.75 -595762.12 5682394.98 100.00 -595762.16 5678865.32 100.00 -595762.22 5678656.63 102.50 -595762.95 5681734.41 98.75 -595763.31 5682055.89 100.00 -595763.42 5680104.93 100.00 -595763.82 5678581.00 100.00 -595764.26 5679432.02 98.75 -595764.57 5678732.85 100.00 -595765.03 5678799.59 100.00 -595765.53 5681694.41 98.75 -595766.47 5682910.80 101.25 -595766.62 5678669.11 101.25 -595766.66 5678643.27 103.75 -595766.70 5682675.39 101.25 -595767.47 5678524.68 98.75 -595767.61 5678101.94 101.25 -595768.07 5678613.29 101.25 -595768.08 5678857.27 100.00 -595768.13 5678809.09 100.00 -595768.73 5678635.34 103.75 -595769.39 5678623.85 102.50 -595770.81 5679263.41 98.75 -595770.83 5681714.20 98.50 -595771.17 5678652.86 102.50 -595771.23 5678818.58 100.00 -595771.28 5678847.90 100.00 -595771.60 5682466.23 99.50 -595771.73 5682393.06 100.00 -595771.80 5682524.97 100.00 -595772.24 5678726.63 100.00 -595772.45 5682052.25 100.00 -595772.80 5681735.54 98.75 -595773.09 5678838.13 100.00 -595773.31 5678577.90 100.00 -595773.39 5680105.48 100.00 -595773.69 5678828.16 100.00 -595773.82 5679434.68 98.75 -595774.72 5681690.84 98.75 -595775.38 5678664.57 101.25 -595775.69 5682679.77 101.25 -595776.14 5682913.33 101.25 -595777.19 5678522.48 98.75 -595777.58 5678101.90 101.25 -595777.74 5678611.34 101.25 -595778.15 5679256.77 98.75 -595778.21 5679064.57 98.75 -595778.71 5679054.66 98.75 -595778.92 5678625.17 102.50 -595779.21 5679044.74 98.75 -595779.71 5679034.83 98.75 -595779.88 5678648.57 102.50 -595779.97 5679074.32 98.75 -595780.21 5679024.92 98.75 -595780.92 5682046.98 100.00 -595781.24 5679015.06 98.75 -595781.56 5682392.93 100.00 -595781.72 5682524.90 100.00 -595781.80 5679084.08 98.75 -595782.00 5678724.51 100.00 -595782.49 5679005.21 98.75 -595782.49 5681733.83 98.75 -595782.90 5678575.18 100.00 -595783.36 5680106.03 100.00 -595783.38 5679437.34 98.75 -595783.81 5678995.38 98.75 -595784.13 5678660.02 101.25 -595784.29 5679093.64 98.75 -595784.61 5681689.72 98.75 -595784.62 5682684.26 101.25 -595785.41 5679250.00 98.75 -595786.00 5678985.71 98.75 -595786.01 5682914.86 101.25 -595786.90 5678520.29 98.75 -595787.44 5678609.54 101.25 -595787.48 5678101.27 101.25 -595787.93 5678643.30 102.50 -595787.93 5679102.87 98.75 -595788.20 5678976.03 98.75 -595788.20 5678628.00 102.50 -595788.76 5682040.85 100.00 -595790.26 5681727.62 98.75 -595790.93 5682396.16 100.00 -595791.33 5678966.61 98.75 -595791.58 5679112.10 98.75 -595791.63 5682524.83 100.00 -595791.82 5678723.34 100.00 -595792.59 5678635.66 102.50 -595792.68 5679243.24 98.75 -595792.74 5678573.47 100.00 -595792.79 5678655.29 101.25 -595792.89 5679440.19 98.75 -595793.16 5682689.47 101.25 -595793.34 5680106.57 100.00 -595793.96 5681692.01 98.75 -595794.46 5682104.31 100.00 -595795.00 5678957.41 98.75 -595795.22 5679121.33 98.75 -595795.96 5682094.44 100.00 -595795.97 5682915.74 101.25 -595796.01 5678785.76 100.00 -595796.45 5678795.15 100.00 -595796.45 5682113.73 100.00 -595796.60 5678097.17 101.25 -595796.68 5678518.84 98.75 -595797.05 5682035.50 100.00 -595797.10 5678776.22 100.00 -595797.22 5678608.39 101.25 -595797.32 5681720.75 98.75 -595798.30 5679235.24 98.75 -595798.87 5679130.56 98.75 -595799.08 5678948.36 98.75 -595799.56 5678804.22 100.00 -595800.01 5682085.77 100.00 -595800.19 5682399.67 100.00 -595800.72 5682122.60 100.00 -595801.14 5678768.03 100.00 -595801.18 5678650.21 101.25 -595801.54 5682524.76 100.00 -595801.68 5678724.78 100.00 -595801.69 5682694.68 101.25 -595802.05 5679139.95 98.75 -595802.28 5679443.39 98.75 -595802.58 5678571.76 100.00 -595802.65 5682841.99 101.25 -595802.80 5679226.40 98.75 -595802.83 5681696.44 98.75 -595803.04 5681712.63 98.75 -595803.10 5680108.68 100.00 -595803.16 5678939.32 98.75 -595804.66 5682850.80 101.25 -595804.88 5678812.03 100.00 -595805.12 5679149.39 98.75 -595805.87 5678093.45 101.25 -595805.94 5682916.57 101.25 -595806.18 5682031.46 100.00 -595806.64 5678519.07 98.75 -595806.78 5678930.09 98.75 -595806.93 5678609.05 101.25 -595807.03 5681704.14 98.75 -595807.24 5679217.53 98.75 -595807.92 5682080.58 100.00 -595808.15 5678643.27 101.25 -595808.19 5679158.83 98.75 -595808.35 5678763.00 100.00 -595808.85 5682836.33 101.25 -595809.17 5682403.78 100.00 -595809.28 5679207.82 98.75 -595809.44 5682964.20 101.25 -595809.55 5682127.26 100.00 -595810.03 5678920.71 98.75 -595810.18 5682973.81 101.25 -595810.22 5679168.52 98.75 -595811.06 5682697.97 101.25 -595811.32 5679198.11 98.75 -595811.42 5682525.50 100.00 -595811.43 5678726.96 100.00 -595811.47 5682858.00 101.25 -595811.69 5679178.32 98.75 -595811.79 5679188.24 98.75 -595811.96 5679444.74 98.75 -595812.42 5678570.05 100.00 -595812.50 5678634.42 101.25 -595812.68 5680111.41 100.00 -595813.03 5682954.87 101.25 -595813.27 5678911.33 98.75 -595813.49 5678816.27 100.00 -595813.89 5678615.79 101.25 -595814.70 5682026.58 100.00 -595814.90 5678432.99 98.75 -595815.20 5678089.87 101.25 -595815.22 5678901.54 98.75 -595815.51 5682919.38 101.25 -595815.95 5678625.28 101.25 -595816.08 5682979.06 101.25 -595816.59 5678519.29 98.75 -595816.63 5682945.54 101.25 -595817.29 5682409.47 100.00 -595817.65 5682078.48 100.00 -595817.65 5678891.88 98.75 -595817.83 5678764.53 100.00 -595818.53 5682131.59 100.00 -595818.57 5678441.53 98.75 -595818.83 5682836.55 101.25 -595818.85 5682864.72 101.25 -595819.63 5682936.00 101.25 -595819.93 5678425.57 98.75 -595820.29 5678792.76 100.25 -595820.70 5682700.63 101.25 -595821.10 5682926.45 101.25 -595821.22 5678728.96 100.00 -595821.29 5682526.39 100.00 -595821.35 5678882.61 98.75 -595821.42 5682019.19 100.00 -595821.88 5679444.60 98.75 -595822.06 5680114.86 100.00 -595822.17 5678252.60 98.75 -595822.27 5678568.34 100.00 -595822.69 5678818.44 100.00 -595824.22 5678085.66 101.25 -595825.29 5682872.36 101.25 -595825.41 5682415.15 100.00 -595825.42 5678262.01 98.75 -595825.96 5678447.60 98.75 -595826.08 5682979.11 101.25 -595826.52 5678519.90 98.75 -595826.76 5678874.63 98.75 -595826.88 5682074.68 100.00 -595827.09 5682011.11 100.00 -595827.17 5678766.68 100.00 -595827.69 5678419.98 98.75 -595827.82 5682135.24 100.00 -595828.10 5682839.97 101.25 -595829.11 5678271.22 98.75 -595829.76 5681881.07 98.75 -595830.34 5682703.30 101.25 -595831.01 5678730.95 100.00 -595831.05 5682527.71 100.00 -595831.34 5680118.46 100.00 -595831.38 5682002.09 100.00 -595831.63 5679442.77 98.75 -595831.66 5682880.05 101.25 -595831.99 5678816.01 100.00 -595832.10 5678566.60 100.00 -595832.86 5678080.64 101.25 -595833.33 5682421.07 100.00 -595833.97 5678279.91 98.75 -595834.18 5678452.51 98.75 -595834.76 5678868.65 98.75 -595834.92 5681872.78 98.75 -595835.42 5681887.37 98.75 -595835.94 5681993.22 100.00 -595836.08 5682979.30 101.25 -595836.11 5682070.88 100.00 -595836.30 5678769.68 100.00 -595836.44 5678520.81 98.75 -595836.73 5678417.40 98.75 -595837.12 5678433.50 99.00 -595837.13 5682138.84 100.00 -595837.17 5682844.16 101.25 -595838.24 5680125.68 100.00 -595838.26 5682887.54 101.25 -595838.83 5678288.60 98.75 -595839.92 5682706.15 101.25 -595840.10 5682531.76 100.00 -595840.18 5682428.24 100.00 -595840.66 5678733.48 100.00 -595840.73 5681984.46 100.00 -595841.19 5678813.26 100.00 -595841.41 5679443.25 98.75 -595841.52 5678075.66 101.25 -595841.93 5678564.82 100.00 -595842.02 5681865.99 98.75 -595843.30 5678297.49 98.75 -595843.43 5678863.97 98.75 -595843.82 5678452.72 98.75 -595844.61 5681890.27 98.75 -595844.80 5682066.09 100.00 -595845.04 5682894.88 101.25 -595845.14 5680132.90 100.00 -595845.56 5678771.96 100.00 -595846.00 5682848.83 101.25 -595846.07 5682979.70 101.25 -595846.20 5681976.13 100.00 -595846.35 5678417.90 98.75 -595846.35 5678521.72 98.75 -595846.47 5682142.36 100.00 -595847.08 5682435.35 100.00 -595847.47 5678306.54 98.75 -595848.48 5682537.03 100.00 -595849.12 5681859.21 98.75 -595849.29 5682709.63 101.25 -595850.19 5678736.47 100.00 -595850.35 5678810.33 100.00 -595851.02 5678072.59 101.25 -595851.12 5681871.50 98.50 -595851.21 5679444.78 98.75 -595851.63 5678315.58 98.75 -595851.76 5678563.04 100.00 -595851.82 5682902.21 101.25 -595852.24 5681968.22 100.00 -595852.76 5680139.36 100.00 -595852.89 5677960.03 101.25 -595852.91 5678860.79 98.75 -595852.96 5682060.34 100.00 -595853.32 5678451.31 98.75 -595853.72 5681886.61 98.75 -595854.18 5677969.34 101.25 -595854.22 5682854.49 101.25 -595854.39 5682442.05 100.00 -595855.00 5682982.70 101.25 -595855.16 5678772.48 100.00 -595855.68 5677950.63 101.25 -595855.76 5682145.99 100.00 -595855.92 5678419.03 98.75 -595856.24 5678324.40 98.75 -595856.26 5682911.16 101.25 -595856.27 5678522.46 98.75 -595856.79 5682542.42 100.00 -595857.52 5681854.21 98.75 -595858.66 5682713.12 101.25 -595859.46 5681961.33 100.00 -595859.72 5678739.46 100.00 -595859.78 5678808.68 100.00 -595860.43 5680145.75 100.00 -595860.55 5678069.58 101.25 -595860.68 5682920.12 101.25 -595861.03 5679446.26 98.75 -595861.08 5677942.22 101.25 -595861.12 5682054.60 100.00 -595861.16 5678333.05 98.75 -595861.44 5677975.06 101.25 -595861.50 5681880.62 98.75 -595861.70 5682448.74 100.00 -595861.70 5678562.35 100.00 -595862.34 5678857.51 98.75 -595862.40 5682860.22 101.25 -595862.79 5678449.53 98.75 -595863.13 5682988.27 101.25 -595863.34 5677874.61 101.25 -595863.55 5679900.13 98.75 -595864.24 5678774.51 100.00 -595864.50 5682150.82 100.00 -595864.76 5678422.89 98.75 -595864.83 5679890.70 98.75 -595865.09 5682929.08 101.25 -595865.20 5677884.43 101.25 -595865.24 5682547.61 100.00 -595865.81 5677933.42 101.25 -595865.84 5681181.14 100.00 -595866.00 5678341.75 98.75 -595866.06 5681953.89 100.00 -595866.13 5677865.19 101.25 -595866.13 5678521.14 98.75 -595866.63 5679909.43 98.75 -595866.74 5682718.83 101.25 -595866.77 5681854.60 98.75 -595866.83 5681189.83 100.00 -595867.05 5677894.25 101.25 -595868.11 5680152.15 100.00 -595868.25 5677904.16 101.25 -595868.44 5678805.28 100.00 -595868.64 5677924.06 101.25 -595869.01 5682455.44 100.00 -595869.23 5677914.10 101.25 -595869.25 5678742.45 100.00 -595869.28 5681874.63 98.75 -595869.30 5682048.88 100.00 -595870.18 5678066.92 101.25 -595870.22 5681172.19 100.00 -595870.25 5678350.75 98.75 -595870.67 5678444.44 98.75 -595870.67 5679448.32 98.75 -595870.76 5682937.29 101.25 -595871.04 5677856.78 101.25 -595871.21 5677975.37 101.25 -595871.53 5682864.15 101.25 -595871.68 5678562.00 100.00 -595871.73 5678854.12 98.75 -595871.87 5681945.77 100.00 -595871.95 5679917.79 98.75 -595872.11 5678780.02 100.00 -595872.12 5678428.67 98.75 -595872.81 5682988.03 101.25 -595872.86 5679885.60 98.75 -595873.24 5682155.64 100.00 -595873.82 5682552.58 100.00 -595873.87 5678797.94 100.00 -595874.69 5678788.53 100.00 -595875.18 5678359.37 98.75 -595875.19 5681859.07 98.75 -595875.23 5680159.11 100.00 -595875.25 5682723.79 101.25 -595875.26 5682463.11 100.00 -595875.42 5681163.78 100.00 -595875.88 5681867.92 98.75 -595876.00 5678519.83 98.75 -595876.08 5678437.12 98.75 -595876.34 5681189.03 100.00 -595877.68 5682043.45 100.00 -595878.33 5682943.60 101.25 -595878.34 5677849.96 101.25 -595878.62 5681938.44 100.00 -595878.78 5678745.43 100.00 -595879.81 5678064.26 101.25 -595879.93 5679451.89 98.75 -595880.21 5679923.30 98.75 -595880.91 5682867.60 101.25 -595881.08 5677973.78 101.25 -595881.09 5678850.63 98.75 -595881.53 5682470.76 100.00 -595881.59 5679880.92 98.75 -595881.63 5678561.15 100.00 -595881.96 5678365.40 98.75 -595881.97 5680166.49 100.00 -595882.01 5682160.41 100.00 -595882.05 5681156.33 100.00 -595882.39 5682557.54 100.00 -595882.58 5682985.94 101.25 -595884.27 5681183.51 100.00 -595884.67 5682727.15 101.25 -595885.87 5678518.51 98.75 -595886.38 5682038.70 100.00 -595886.64 5682949.16 101.25 -595887.11 5677845.43 101.25 -595887.30 5681933.64 100.00 -595888.09 5679929.30 98.75 -595888.32 5678748.41 100.00 -595888.67 5681148.88 100.00 -595888.70 5680173.87 100.00 -595889.19 5679455.46 98.75 -595889.50 5678061.85 101.25 -595889.86 5682476.13 100.00 -595890.05 5679875.73 98.75 -595890.19 5678846.52 98.75 -595890.20 5681511.29 100.00 -595890.31 5682870.98 101.25 -595890.57 5681175.78 100.00 -595890.63 5677970.94 101.25 -595890.97 5682562.51 100.00 -595891.00 5682164.74 100.00 -595891.58 5678560.30 100.00 -595891.91 5678365.49 98.75 -595892.37 5682983.88 101.25 -595894.09 5682730.50 101.25 -595895.14 5682954.38 101.25 -595895.43 5680181.25 100.00 -595895.53 5681141.67 100.00 -595895.64 5678516.60 98.75 -595895.69 5679935.69 98.75 -595895.88 5682035.63 100.00 -595896.37 5677841.68 101.25 -595896.85 5681168.04 100.00 -595897.00 5681932.29 100.00 -595897.14 5681504.13 100.00 -595897.89 5678751.21 100.00 -595898.12 5679870.01 98.75 -595898.19 5682481.50 100.00 -595898.77 5679456.91 98.75 -595899.30 5678059.92 101.25 -595899.60 5678843.34 98.75 -595899.74 5682874.26 101.25 -595899.99 5682169.08 100.00 -595900.07 5677967.69 101.25 -595900.43 5682565.48 100.00 -595901.54 5678559.45 100.00 -595901.76 5678364.08 98.75 -595902.26 5682982.58 101.25 -595902.55 5680188.26 100.00 -595902.84 5679942.48 98.75 -595903.13 5681160.30 100.00 -595903.18 5681135.28 100.00 -595903.51 5682733.86 101.25 -595904.06 5682958.85 101.25 -595904.08 5681496.97 100.00 -595904.89 5677836.46 101.25 -595905.37 5682032.55 100.00 -595905.41 5678514.68 98.75 -595905.68 5679863.58 98.75 -595906.39 5682487.08 100.00 -595906.83 5681933.21 100.00 -595907.73 5678054.95 101.25 -595907.85 5678751.97 100.00 -595908.45 5679455.59 98.75 -595908.51 5682174.28 100.00 -595908.76 5679950.45 98.75 -595909.18 5682877.54 101.25 -595909.36 5678841.19 98.75 -595909.52 5677964.44 101.25 -595909.58 5678357.93 98.75 -595909.69 5680195.24 100.00 -595909.88 5682568.46 100.00 -595910.31 5679854.81 98.75 -595910.43 5681489.30 100.00 -595910.64 5681153.82 100.00 -595910.83 5681128.88 100.00 -595911.49 5678558.61 100.00 -595912.24 5682981.87 101.25 -595913.04 5682736.81 101.25 -595913.09 5679959.31 98.75 -595913.35 5677831.16 101.25 -595913.41 5682962.38 101.25 -595914.56 5682492.69 100.00 -595914.96 5682029.79 100.00 -595915.18 5678512.76 98.75 -595915.63 5678048.84 101.25 -595915.65 5679846.52 98.75 -595916.37 5681936.12 100.00 -595916.63 5681481.49 100.00 -595916.66 5678350.99 98.75 -595916.84 5680202.22 100.00 -595916.85 5679450.30 98.75 -595917.01 5682179.51 100.00 -595917.11 5679968.34 98.75 -595917.81 5678752.72 100.00 -595918.39 5677960.09 101.25 -595918.39 5681122.38 100.00 -595918.59 5681147.81 100.00 -595918.61 5682880.83 101.25 -595919.11 5678839.04 98.75 -595919.58 5682570.29 100.00 -595921.47 5678558.63 100.00 -595921.77 5677825.79 101.25 -595922.19 5682980.97 101.25 -595922.23 5679839.09 98.75 -595922.52 5679976.66 98.75 -595922.75 5682965.90 101.25 -595922.84 5682738.81 101.25 -595923.25 5678343.52 98.75 -595923.53 5682496.90 100.00 -595923.98 5680209.20 100.00 -595924.25 5678043.95 101.25 -595924.36 5681475.45 100.00 -595924.62 5682027.27 100.00 -595925.01 5678511.13 98.75 -595925.19 5679444.96 98.75 -595925.51 5682184.75 100.00 -595925.90 5681115.83 100.00 -595926.26 5681937.07 100.00 -595926.38 5677954.09 101.25 -595927.11 5678749.60 100.00 -595927.38 5681143.44 100.00 -595927.84 5682884.62 101.25 -595927.87 5679985.02 98.75 -595929.03 5678838.59 98.75 -595929.43 5682571.44 100.00 -595929.83 5678336.05 98.75 -595930.04 5679832.98 98.75 -595930.20 5677820.41 101.25 -595930.78 5679436.76 98.75 -595931.12 5680216.19 100.00 -595931.40 5681107.60 100.00 -595931.46 5678558.86 100.00 -595931.64 5682970.44 101.25 -595932.08 5682982.23 101.25 -595932.60 5682500.89 100.00 -595932.64 5682740.82 101.25 -595932.99 5681470.46 100.00 -595933.07 5679993.47 98.75 -595933.46 5678040.06 101.25 -595933.67 5682023.45 100.00 -595933.82 5677947.48 101.25 -595934.11 5682189.82 100.00 -595934.83 5678509.52 98.75 -595936.23 5681937.57 100.00 -595936.25 5678745.58 100.00 -595936.36 5679428.56 98.75 -595936.46 5681099.01 100.00 -595936.86 5682888.90 101.25 -595936.93 5681140.57 100.00 -595936.93 5678329.09 98.75 -595938.10 5679827.19 98.75 -595938.27 5680223.17 100.00 -595938.27 5680001.92 98.75 -595938.62 5677815.03 101.25 -595939.01 5678838.81 98.75 -595939.27 5682572.59 100.00 -595940.25 5679419.73 98.75 -595940.43 5682975.19 101.25 -595940.59 5677940.14 101.25 -595941.28 5679409.86 98.75 -595941.39 5681090.35 100.00 -595941.42 5678559.55 100.00 -595941.62 5681465.48 100.00 -595941.79 5682017.65 100.00 -595941.84 5682504.49 100.00 -595941.88 5682984.20 101.25 -595942.27 5682743.47 101.25 -595942.37 5679400.00 98.75 -595942.85 5678036.67 101.25 -595942.93 5682194.48 100.00 -595943.30 5680010.47 98.75 -595943.51 5679390.14 98.75 -595944.20 5679380.27 98.75 -595944.78 5678509.70 98.75 -595944.86 5679370.70 98.75 -595945.00 5678323.63 98.75 -595945.18 5678741.10 100.00 -595945.41 5680230.15 100.00 -595945.80 5681081.41 100.00 -595945.89 5682893.18 101.25 -595946.20 5679821.46 98.75 -595946.21 5681937.61 100.00 -595946.47 5681137.70 100.00 -595947.16 5677809.85 101.25 -595947.70 5677933.12 101.25 -595948.30 5680019.04 98.75 -595948.96 5678839.46 98.75 -595949.12 5682573.74 100.00 -595949.22 5682979.93 101.25 -595949.27 5682011.18 100.00 -595950.10 5679362.27 98.75 -595950.49 5681460.96 100.00 -595950.52 5682200.21 100.00 -595950.93 5682508.38 100.00 -595951.01 5682988.07 101.25 -595951.38 5678560.33 100.00 -595951.46 5681073.52 100.00 -595951.86 5682746.30 101.25 -595952.16 5678033.07 101.25 -595952.55 5680237.13 100.00 -595953.30 5680027.61 98.75 -595954.05 5679815.45 98.75 -595954.07 5678736.54 100.00 -595954.32 5678512.27 98.75 -595954.57 5678320.90 98.75 -595954.98 5682897.32 101.25 -595954.98 5677926.29 101.25 -595955.25 5681133.06 100.00 -595955.27 5682003.20 100.00 -595955.62 5679354.02 98.75 -595955.72 5677804.69 101.25 -595956.08 5681938.37 100.00 -595957.88 5682984.78 101.25 -595958.30 5680036.18 98.75 -595958.77 5682572.12 100.00 -595958.79 5678841.23 98.75 -595959.54 5681067.69 100.00 -595959.58 5682513.22 100.00 -595959.70 5681457.14 100.00 -595959.79 5680244.01 100.00 -595960.50 5682200.44 100.00 -595960.54 5679807.94 98.75 -595960.58 5682990.98 101.25 -595960.89 5678028.22 101.25 -595960.92 5678563.00 100.00 -595961.25 5679345.86 98.75 -595961.28 5681995.23 100.00 -595961.52 5682748.62 101.25 -595962.27 5677919.45 101.25 -595962.63 5679798.26 98.75 -595962.98 5678732.04 100.00 -595963.74 5678515.49 98.75 -595963.86 5681128.02 100.00 -595964.15 5682901.28 101.25 -595964.28 5677799.54 101.25 -595964.32 5678319.82 98.75 -595964.44 5680043.97 98.75 -595965.03 5681941.93 100.00 -595966.50 5681986.78 100.00 -595966.80 5678672.59 100.00 -595967.02 5678662.60 100.00 -595967.25 5680250.65 100.00 -595967.47 5679338.37 98.75 -595967.63 5681061.86 100.00 -595967.67 5682986.65 101.25 -595968.24 5682518.06 100.00 -595968.36 5682569.61 100.00 -595968.41 5679778.15 98.75 -595968.51 5678652.81 100.00 -595968.62 5678843.00 98.75 -595968.91 5681453.32 100.00 -595969.14 5678022.73 101.25 -595969.44 5679217.62 98.75 -595969.45 5679227.54 98.75 -595969.92 5679237.38 98.75 -595969.99 5678567.11 100.00 -595970.08 5682994.12 101.25 -595970.14 5677913.32 101.25 -595970.21 5678681.69 100.00 -595970.46 5682201.07 100.00 -595970.66 5680051.70 98.75 -595970.73 5681977.74 100.00 -595971.04 5679729.69 98.75 -595971.06 5679208.22 98.75 -595971.06 5681949.81 100.00 -595971.45 5679739.35 98.75 -595971.52 5682748.35 101.25 -595971.59 5678643.33 100.00 -595971.81 5679028.17 98.10 -595971.94 5678727.62 100.00 -595972.34 5679768.98 98.75 -595972.55 5681123.14 100.00 -595972.59 5679749.21 98.75 -595972.92 5679759.18 98.75 -595973.15 5678518.74 98.75 -595973.27 5679246.73 98.75 -595973.33 5682905.23 101.25 -595973.54 5677795.95 101.25 -595973.65 5679720.06 98.75 -595973.67 5681968.23 100.00 -595974.25 5678320.50 98.75 -595974.67 5678690.62 100.00 -595974.72 5680257.29 100.00 -595975.67 5681958.67 100.00 -595976.05 5678015.52 101.25 -595976.25 5679710.42 98.75 -595976.35 5679333.97 98.75 -595976.39 5678634.57 100.00 -595976.51 5681057.60 100.00 -595976.86 5679200.17 98.75 -595976.88 5680059.43 98.75 -595977.07 5681485.13 98.75 -595977.10 5682522.50 100.00 -595977.64 5682987.41 101.25 -595977.69 5681448.67 100.00 -595977.82 5678719.67 100.00 -595978.04 5682567.53 100.00 -595978.18 5677907.39 101.25 -595978.29 5678572.60 100.00 -595978.40 5678699.89 100.00 -595978.46 5678709.82 100.00 -595978.48 5678844.41 98.75 -595978.65 5679255.02 98.75 -595979.99 5679701.34 98.75 -595980.42 5682201.76 100.00 -595980.91 5678625.68 100.00 -595981.24 5682746.77 101.25 -595981.30 5681118.39 100.00 -595981.49 5678007.32 101.25 -595982.05 5681492.06 98.75 -595982.18 5680263.93 100.00 -595982.41 5681477.89 98.75 -595982.52 5678522.11 98.75 -595982.67 5679192.12 98.75 -595982.78 5682908.22 101.25 -595983.06 5677792.90 101.25 -595983.11 5680067.16 98.75 -595984.19 5678321.18 98.75 -595984.31 5679263.17 98.75 -595984.36 5679328.12 98.75 -595984.79 5678616.47 100.00 -595985.50 5677998.17 101.25 -595985.92 5679693.32 98.75 -595985.97 5682526.91 100.00 -595986.00 5681054.55 100.00 -595986.01 5678578.94 100.00 -595986.19 5681443.45 100.00 -595986.28 5677901.54 101.25 -595987.60 5682988.16 101.25 -595987.80 5682565.77 100.00 -595988.46 5678844.28 98.75 -595988.67 5678607.27 100.00 -595989.17 5677988.88 101.25 -595989.21 5679184.91 98.75 -595989.23 5678587.69 100.00 -595989.65 5680270.57 100.00 -595989.78 5680074.49 98.75 -595989.97 5679271.32 98.75 -595990.03 5678597.65 100.00 -595990.26 5682203.10 100.00 -595990.51 5682743.01 101.25 -595990.54 5681114.62 100.00 -595990.90 5677923.81 101.25 -595991.01 5681483.80 98.25 -595991.26 5681492.69 98.75 -595991.27 5681474.49 98.75 -595991.86 5679685.30 98.75 -595991.89 5678525.47 98.75 -595992.16 5679322.00 98.75 -595992.58 5677789.87 101.25 -595992.64 5682909.86 101.25 -595993.07 5681436.77 100.00 -595993.26 5677979.79 101.25 -595993.98 5678322.92 98.75 -595994.49 5677895.85 101.25 -595995.28 5682530.27 100.00 -595995.49 5681051.50 100.00 -595995.96 5677931.05 101.25 -595996.04 5679279.18 98.75 -595996.16 5677916.64 101.25 -595996.65 5680081.65 98.75 -595997.05 5682607.44 101.25 -595997.11 5680277.21 100.00 -595997.36 5682597.52 101.25 -595997.48 5681427.82 100.00 -595997.55 5682564.01 100.00 -595997.58 5682988.56 101.25 -595997.91 5679677.36 98.75 -595997.92 5679180.16 98.75 -595997.95 5682617.40 101.25 -595998.07 5677971.03 101.25 -595998.37 5681481.94 98.25 -595998.45 5678844.15 98.75 -595998.86 5682627.36 101.25 -595998.96 5682587.65 101.25 -595999.48 5679315.31 98.75 -595999.77 5681110.86 100.00 -595999.86 5682205.84 100.00 -595999.92 5682740.05 101.25 -596000.29 5681471.60 98.75 -596000.70 5681491.69 98.75 -596000.71 5679287.72 98.75 -596001.26 5678528.83 98.75 -596001.88 5681418.88 100.00 -596001.89 5682636.85 101.25 -596002.27 5677787.45 101.25 -596002.49 5682911.49 101.25 -596003.08 5677890.75 101.25 -596003.14 5677962.43 101.25 -596003.24 5678326.21 98.75 -596003.35 5679297.29 98.75 -596003.52 5680088.82 98.75 -596003.59 5679307.15 98.75 -596003.80 5682579.64 101.25 -596003.96 5679669.42 98.75 -596004.57 5680283.85 100.00 -596004.62 5677911.33 101.25 -596004.69 5682533.38 100.00 -596004.98 5681048.44 100.00 -596005.73 5681480.08 98.25 -596005.75 5677930.67 101.25 -596006.28 5681409.94 100.00 -596006.63 5679175.40 98.75 -596007.37 5682562.71 100.00 -596007.56 5682988.94 101.25 -596008.40 5678843.39 98.75 -596008.63 5682644.19 101.25 -596008.69 5677954.14 101.25 -596009.02 5682209.79 100.00 -596009.04 5681107.21 100.00 -596009.31 5681468.63 98.75 -596009.86 5682740.59 101.25 -596010.04 5681490.07 98.75 -596010.39 5680095.98 98.75 -596010.95 5678530.85 98.75 -596011.67 5677885.65 101.25 -596011.87 5681401.73 100.00 -596011.88 5678331.15 98.75 -596011.95 5677784.96 101.25 -596012.02 5680290.50 100.00 -596012.35 5682913.04 101.25 -596012.41 5682575.91 101.25 -596012.74 5679664.80 98.75 -596013.00 5679833.23 98.75 -596013.09 5681478.23 98.25 -596013.14 5677906.12 101.25 -596013.45 5682537.83 100.00 -596013.62 5679823.36 98.75 -596014.14 5679842.89 98.75 -596014.48 5681045.42 100.00 -596015.08 5677946.47 101.25 -596015.11 5677927.45 101.25 -596015.37 5679170.71 98.75 -596015.80 5682651.12 101.25 -596016.87 5679813.93 98.75 -596017.24 5682561.81 100.00 -596017.26 5680103.14 98.75 -596017.54 5682989.32 101.25 -596017.63 5681317.50 100.00 -596017.71 5682214.66 100.00 -596017.96 5681393.83 100.00 -596018.03 5681327.46 100.00 -596018.24 5678841.89 98.75 -596018.33 5681465.67 98.75 -596018.60 5681104.39 100.00 -596018.73 5680297.90 100.00 -596019.20 5681307.79 100.00 -596019.25 5682744.02 101.25 -596019.26 5681487.86 98.75 -596019.38 5681337.29 100.00 -596019.43 5679851.35 98.75 -596020.12 5679804.49 98.75 -596020.45 5681476.37 98.25 -596020.60 5677881.26 101.25 -596020.84 5678532.00 98.75 -596021.31 5678334.20 98.75 -596021.45 5677781.88 101.25 -596021.65 5682543.39 100.00 -596021.67 5677900.90 101.25 -596021.67 5679660.33 98.75 -596021.70 5681346.99 100.00 -596022.33 5682912.52 101.25 -596022.40 5682576.26 101.25 -596023.00 5679794.94 98.75 -596023.19 5677940.72 101.25 -596023.30 5682657.67 101.25 -596023.47 5681385.64 100.00 -596023.99 5681356.69 100.00 -596024.13 5680110.30 98.75 -596024.26 5677923.45 101.25 -596024.45 5681045.07 100.00 -596024.53 5679166.89 98.75 -596025.44 5680305.31 100.00 -596025.74 5679785.35 98.75 -596025.84 5682560.06 100.00 -596026.10 5681366.43 100.00 -596026.12 5682220.02 100.00 -596026.37 5681376.10 100.00 -596027.08 5681303.92 100.00 -596027.12 5682550.36 100.00 -596027.39 5679856.77 98.75 -596027.45 5681467.43 98.75 -596027.52 5682989.77 101.25 -596027.83 5678839.06 98.75 -596027.95 5681484.04 98.75 -596028.16 5681101.56 100.00 -596028.88 5682746.43 101.25 -596029.19 5681227.26 100.00 -596029.31 5679776.09 98.75 -596029.64 5682665.40 101.25 -596029.93 5677877.67 101.25 -596030.69 5678533.46 98.75 -596030.71 5681217.41 100.00 -596030.85 5677778.60 101.25 -596030.86 5681475.80 98.75 -596030.92 5679656.75 98.75 -596030.99 5680117.46 98.75 -596031.02 5677897.55 101.25 -596031.02 5678336.21 98.75 -596032.15 5680312.71 100.00 -596032.28 5677936.63 101.25 -596032.31 5682912.01 101.25 -596032.40 5682576.66 101.25 -596033.42 5677919.44 101.25 -596033.69 5679163.06 98.75 -596034.04 5679767.30 98.75 -596034.17 5682225.93 100.00 -596034.41 5681044.71 100.00 -596034.74 5682674.00 101.25 -596035.37 5681234.08 100.00 -596036.91 5681302.29 100.00 -596036.97 5679858.35 98.75 -596037.41 5678836.24 98.75 -596037.42 5682991.12 101.25 -596037.73 5681098.74 100.00 -596037.81 5681211.32 100.00 -596038.61 5680123.82 98.75 -596038.82 5682747.50 101.25 -596038.87 5679758.59 98.75 -596039.01 5677772.83 101.25 -596039.20 5682682.89 101.25 -596039.25 5677874.07 101.25 -596039.33 5680319.64 100.00 -596040.06 5683038.25 101.25 -596040.52 5678535.05 98.75 -596040.57 5679654.21 98.75 -596040.60 5677894.71 101.25 -596040.95 5678337.01 98.75 -596041.53 5677932.86 101.25 -596041.71 5682702.37 101.25 -596042.08 5682232.02 100.00 -596042.19 5682692.38 101.25 -596042.28 5682911.49 101.25 -596042.36 5682577.44 101.25 -596042.60 5679158.56 98.75 -596042.68 5677915.71 101.25 -596043.42 5683315.39 100.00 -596043.79 5682712.10 101.25 -596044.21 5681238.41 100.00 -596044.37 5681044.35 100.00 -596045.34 5679750.99 98.75 -596045.43 5683324.07 100.00 -596045.73 5680327.12 100.00 -596046.28 5680130.11 98.75 -596046.37 5681206.21 100.00 -596046.67 5678832.73 98.75 -596046.80 5681301.19 100.00 -596046.94 5679857.94 98.75 -596047.32 5682992.47 101.25 -596047.39 5681101.13 100.00 -596047.51 5682721.37 101.25 -596048.49 5677770.30 101.25 -596048.65 5682746.44 101.25 -596048.85 5677872.45 101.25 -596049.32 5679649.48 98.75 -596049.80 5683040.47 101.25 -596049.99 5680336.15 100.00 -596050.18 5678537.34 98.75 -596050.25 5677892.17 101.25 -596050.31 5683308.59 100.00 -596050.73 5677928.99 101.25 -596050.86 5678337.92 98.75 -596050.97 5682235.27 100.00 -596051.49 5682730.54 101.25 -596051.52 5679154.05 98.75 -596051.81 5679743.39 98.75 -596051.84 5679994.79 97.50 -596051.95 5677911.97 101.25 -596052.26 5682911.03 101.25 -596052.26 5680004.57 97.50 -596052.33 5682578.21 101.25 -596052.95 5679985.18 97.50 -596053.61 5681048.01 100.00 -596053.61 5683329.71 100.00 -596053.64 5681241.66 100.00 -596053.96 5680136.39 98.75 -596054.48 5680345.08 100.00 -596054.53 5682739.75 101.25 -596054.78 5681200.87 100.00 -596055.13 5678827.41 98.75 -596055.55 5679975.74 97.50 -596056.18 5680013.04 97.50 -596056.34 5679855.13 98.75 -596056.44 5681104.90 100.00 -596056.76 5681300.71 100.00 -596057.22 5682993.82 101.25 -596057.86 5680354.47 100.00 -596057.95 5679644.47 98.75 -596058.27 5679735.79 98.75 -596058.35 5677768.72 101.25 -596058.80 5677873.34 101.25 -596059.12 5679966.64 97.50 -596059.29 5677923.83 101.25 -596059.38 5683304.52 100.00 -596059.54 5683042.70 101.25 -596059.69 5678540.30 98.75 -596059.97 5677889.82 101.25 -596060.48 5682522.59 101.25 -596060.71 5679150.36 98.75 -596060.73 5678339.23 98.75 -596060.95 5682235.32 100.00 -596061.03 5682512.66 101.25 -596061.19 5680363.89 100.00 -596061.22 5677908.23 101.25 -596061.61 5682532.51 101.25 -596061.64 5680142.68 98.75 -596062.04 5682575.98 101.25 -596062.18 5680020.77 97.50 -596062.19 5682912.09 101.25 -596062.31 5683334.50 100.00 -596062.62 5682502.79 101.25 -596062.71 5678821.05 98.75 -596062.82 5681051.84 100.00 -596063.06 5681244.90 100.00 -596063.20 5681195.53 100.00 -596063.44 5682542.34 101.25 -596063.62 5680373.55 100.00 -596064.57 5681110.68 100.00 -596064.74 5679728.19 98.75 -596065.17 5679959.73 97.50 -596065.44 5679851.04 98.75 -596065.44 5680383.37 100.00 -596065.54 5682493.44 101.25 -596066.33 5679336.56 102.00 -596066.61 5679639.58 98.75 -596066.69 5682551.68 101.25 -596066.71 5681300.07 100.00 -596066.73 5679345.85 102.00 -596066.95 5682996.03 101.25 -596067.26 5680393.19 100.00 -596067.55 5680028.96 97.50 -596067.85 5677918.68 101.25 -596067.89 5677876.39 101.25 -596067.93 5679326.83 102.00 -596068.27 5677769.26 101.25 -596068.48 5678544.50 98.75 -596068.66 5677885.48 101.25 -596069.07 5682569.55 101.25 -596069.08 5680403.02 100.00 -596069.15 5683303.15 100.00 -596069.28 5683044.92 101.25 -596069.36 5678813.61 98.75 -596069.43 5680148.82 98.75 -596069.52 5679317.09 102.00 -596070.43 5681057.95 100.00 -596070.50 5680412.90 100.00 -596070.52 5679148.61 98.75 -596070.59 5682560.88 101.25 -596070.60 5678340.53 98.75 -596070.64 5677904.92 101.25 -596070.89 5679720.40 98.75 -596070.93 5681189.27 100.00 -596070.93 5682235.16 100.00 -596071.05 5682485.09 101.25 -596071.12 5679307.36 102.00 -596071.17 5683338.94 100.00 -596071.51 5680422.83 100.00 -596071.54 5679954.55 97.50 -596072.07 5681249.11 100.00 -596072.13 5682913.14 101.25 -596072.32 5679353.98 102.00 -596072.52 5680432.77 100.00 -596072.53 5681116.65 100.00 -596072.71 5679297.62 102.00 -596072.96 5680037.12 97.50 -596073.41 5680442.72 100.00 -596073.57 5680452.70 100.00 -596073.73 5680462.69 100.00 -596073.88 5680472.68 100.00 -596074.04 5680482.67 100.00 -596074.30 5679287.89 102.00 -596074.38 5679846.61 98.75 -596074.98 5679711.30 98.75 -596075.41 5680492.48 100.00 -596075.89 5678551.16 98.75 -596075.90 5679278.15 102.00 -596076.02 5678806.16 98.75 -596076.54 5677913.75 101.25 -596076.56 5682476.75 101.25 -596076.59 5679639.58 98.75 -596076.66 5681299.40 100.00 -596076.67 5682998.36 101.25 -596077.19 5681065.27 100.00 -596077.30 5680154.86 98.75 -596077.49 5679268.41 102.00 -596077.91 5679362.11 102.00 -596077.99 5682968.03 100.00 -596078.06 5680502.11 100.00 -596078.12 5682958.66 100.00 -596078.21 5677770.33 101.25 -596078.39 5680045.26 97.50 -596078.40 5681182.66 100.00 -596078.58 5679702.01 98.75 -596078.71 5681786.49 100.00 -596079.02 5683047.13 101.25 -596079.05 5683302.32 100.00 -596079.08 5679258.68 102.00 -596079.33 5682240.26 100.00 -596079.56 5681123.72 100.00 -596079.64 5681777.84 100.00 -596080.13 5677902.41 101.25 -596080.32 5679150.52 98.75 -596080.47 5678341.84 98.75 -596080.68 5679248.94 102.00 -596080.71 5680511.74 100.00 -596081.03 5679951.92 97.50 -596081.11 5683339.31 100.00 -596081.11 5681253.07 100.00 -596081.36 5679692.43 98.75 -596082.07 5682913.97 101.25 -596082.12 5682468.44 101.25 -596082.27 5679239.21 102.00 -596082.68 5678798.71 98.75 -596083.46 5678557.62 98.75 -596083.50 5679370.24 102.00 -596083.51 5679842.59 98.75 -596083.58 5681791.59 100.00 -596083.60 5680053.55 97.50 -596083.87 5679229.47 102.00 -596084.06 5681072.49 100.00 -596084.14 5679682.85 98.75 -596084.27 5680520.99 100.00 -596084.37 5677908.13 101.25 -596084.38 5679644.51 98.75 -596084.45 5681770.22 100.00 -596084.89 5682975.25 100.00 -596085.18 5680160.90 98.75 -596085.46 5679219.74 102.00 -596085.46 5679672.98 98.75 -596085.87 5681176.06 100.00 -596085.92 5682952.93 100.00 -596086.33 5681297.10 100.00 -596086.38 5683000.69 101.25 -596086.43 5679663.05 98.75 -596086.50 5681130.86 100.00 -596087.05 5679210.00 102.00 -596087.40 5679653.12 98.75 -596087.62 5683111.66 100.00 -596088.01 5677772.08 101.25 -596088.30 5682460.67 101.25 -596088.65 5679200.26 102.00 -596088.75 5680061.87 97.50 -596088.76 5683049.34 101.25 -596088.87 5682243.22 100.00 -596088.96 5683301.49 100.00 -596089.09 5679378.37 102.00 -596089.35 5681762.71 100.00 -596089.37 5680529.58 100.00 -596089.40 5678791.33 98.75 -596089.57 5681774.55 100.25 -596090.13 5679152.43 98.75 -596090.24 5679190.53 102.00 -596090.26 5678343.69 98.75 -596090.63 5679949.76 97.50 -596090.90 5678564.21 98.75 -596090.91 5681167.99 100.00 -596090.99 5681254.40 100.00 -596091.04 5683339.68 100.00 -596091.36 5681787.05 100.00 -596091.50 5681079.13 100.00 -596091.84 5679180.79 102.00 -596092.05 5682913.63 101.25 -596092.41 5681138.87 100.00 -596092.53 5682981.67 100.00 -596092.68 5679838.66 98.75 -596093.05 5680166.94 98.75 -596093.24 5681158.30 100.00 -596093.43 5679171.06 102.00 -596093.58 5683320.97 100.50 -596094.47 5680538.17 100.00 -596094.60 5681148.60 100.00 -596094.68 5679386.50 102.00 -596094.81 5681292.63 100.00 -596095.49 5682950.06 100.00 -596096.01 5683003.34 101.25 -596096.04 5682454.38 101.25 -596096.13 5678783.95 98.75 -596096.35 5678572.54 98.75 -596096.70 5681779.78 100.00 -596096.81 5680066.95 97.50 -596097.55 5683112.77 100.00 -596097.58 5677774.93 101.25 -596097.66 5682247.85 100.00 -596097.76 5681759.46 100.00 -596098.50 5683051.55 101.25 -596098.90 5683301.57 100.00 -596098.94 5681085.77 100.00 -596099.81 5680546.60 100.00 -596100.03 5678345.59 98.75 -596100.05 5679153.49 98.75 -596100.27 5679394.63 102.00 -596100.34 5679948.11 97.50 -596100.34 5682987.90 100.00 -596100.82 5680173.11 98.75 -596100.82 5681255.88 100.00 -596100.93 5683340.66 100.00 -596101.41 5681285.16 100.00 -596101.54 5681772.31 100.00 -596101.80 5678580.87 98.75 -596102.04 5682913.30 101.25 -596102.13 5679835.70 98.75 -596102.58 5679170.79 102.00 -596102.84 5681763.43 100.00 -596102.86 5678776.56 98.75 -596104.59 5682449.20 101.25 -596105.07 5682947.29 100.00 -596105.35 5680554.91 100.00 -596105.61 5683006.09 101.25 -596105.71 5680070.97 97.50 -596105.86 5679402.76 102.00 -596106.31 5682252.82 100.00 -596107.25 5678589.20 98.75 -596107.26 5677777.40 101.25 -596107.44 5681090.45 100.00 -596107.48 5683113.89 100.00 -596108.24 5683053.77 101.25 -596108.31 5680179.61 98.75 -596108.84 5683301.65 100.00 -596109.14 5681278.89 100.00 -596109.64 5681260.54 100.00 -596109.66 5678347.81 98.75 -596109.69 5682991.32 100.00 -596109.70 5679945.25 97.50 -596110.01 5679154.25 98.75 -596110.70 5681800.50 98.75 -596110.81 5683341.52 100.00 -596110.89 5680563.23 100.00 -596111.05 5681270.31 100.00 -596111.45 5679410.89 102.00 -596112.00 5679834.22 98.75 -596112.02 5682912.96 101.25 -596112.14 5678773.02 98.75 -596112.43 5679171.39 102.00 -596113.15 5682444.02 101.25 -596113.43 5681809.35 98.75 -596114.08 5678596.27 98.75 -596114.53 5682258.48 100.00 -596114.75 5681791.88 98.75 -596115.06 5682947.52 100.00 -596115.22 5683008.84 101.25 -596115.30 5680072.94 97.50 -596115.81 5680186.11 98.75 -596116.96 5677779.79 101.25 -596117.04 5679419.02 102.00 -596117.05 5681093.09 100.00 -596117.29 5683115.56 100.00 -596117.31 5680570.83 100.00 -596117.55 5678353.88 98.75 -596117.97 5683056.07 101.25 -596118.78 5683301.75 100.00 -596118.78 5679941.45 97.50 -596119.28 5682994.11 100.00 -596119.85 5681816.95 98.75 -596119.96 5679155.01 98.75 -596120.02 5679828.76 98.75 -596120.55 5683339.53 100.00 -596121.54 5678769.63 98.75 -596121.92 5682914.29 101.25 -596121.94 5682439.28 101.25 -596122.28 5679171.99 102.00 -596122.52 5678601.29 98.75 -596122.63 5679427.14 102.00 -596122.72 5682264.19 100.00 -596122.79 5681786.53 98.75 -596123.30 5680192.62 98.75 -596124.21 5680578.06 100.00 -596124.82 5683011.58 101.25 -596124.89 5680074.92 97.50 -596125.05 5682947.74 100.00 -596125.61 5678359.68 98.75 -596126.68 5681095.64 100.00 -596126.82 5683118.54 100.00 -596126.87 5677781.05 101.25 -596127.39 5679822.06 98.75 -596127.69 5683058.37 101.25 -596127.88 5679937.67 97.50 -596128.22 5679435.27 102.00 -596128.57 5681821.83 98.75 -596128.59 5683303.36 100.00 -596128.91 5682996.76 100.00 -596129.94 5679154.65 98.75 -596130.33 5683339.60 100.00 -596130.71 5680199.22 98.75 -596130.94 5682269.84 100.00 -596130.95 5682434.95 101.25 -596131.11 5680585.28 100.00 -596131.28 5678767.61 98.75 -596131.59 5678600.62 98.75 -596131.82 5682915.61 101.25 -596131.93 5678367.12 98.75 -596132.13 5679172.58 102.00 -596132.22 5681783.21 98.75 -596133.29 5679814.01 98.75 -596133.81 5679443.40 102.00 -596134.19 5683125.29 100.00 -596134.36 5678386.60 98.75 -596134.47 5680076.92 97.50 -596134.48 5678396.53 98.75 -596134.59 5678376.65 98.75 -596134.65 5683013.32 101.25 -596134.77 5682949.82 100.00 -596136.61 5681094.82 100.00 -596136.62 5678406.21 98.75 -596136.79 5677782.08 101.25 -596137.02 5679934.01 97.50 -596137.41 5683060.68 101.25 -596137.71 5681825.83 98.75 -596137.93 5680592.58 100.00 -596138.06 5680205.89 98.75 -596138.40 5683304.96 100.00 -596138.57 5682999.31 100.00 -596139.19 5679805.97 98.75 -596139.24 5682429.43 101.25 -596139.29 5682275.30 100.00 -596139.40 5679451.53 102.00 -596139.77 5683133.46 100.00 -596139.92 5679154.19 98.75 -596140.08 5678595.50 98.75 -596140.13 5683341.24 100.00 -596140.98 5678519.78 98.75 -596141.16 5678766.10 98.75 -596141.58 5682917.71 101.25 -596141.90 5679173.56 102.00 -596142.09 5681781.85 98.75 -596142.29 5678414.39 98.75 -596142.56 5678510.06 98.75 -596143.64 5680080.08 97.50 -596144.15 5683142.43 100.00 -596144.40 5682952.46 100.00 -596144.53 5683014.74 101.25 -596144.63 5680599.99 100.00 -596144.94 5679797.83 98.75 -596144.99 5679459.66 102.00 -596145.00 5680212.98 98.75 -596146.00 5679930.04 97.50 -596146.28 5678527.87 98.75 -596146.55 5681094.00 100.00 -596146.70 5678588.06 98.75 -596146.75 5677781.54 101.25 -596146.77 5682422.92 101.25 -596147.01 5681829.50 98.75 -596147.22 5683061.75 101.25 -596147.96 5678422.57 98.75 -596147.97 5682280.23 100.00 -596148.00 5678501.82 98.75 -596148.21 5683306.57 100.00 -596148.28 5683001.64 100.00 -596148.85 5683151.22 100.00 -596149.51 5679788.96 98.75 -596149.90 5679153.74 98.75 -596149.94 5683342.84 100.00 -596150.57 5679467.79 102.00 -596151.00 5678764.41 98.75 -596151.20 5679176.84 102.00 -596151.25 5682920.13 101.25 -596151.33 5680607.39 100.00 -596151.79 5680220.20 98.75 -596152.03 5681780.82 98.75 -596152.32 5680084.61 97.50 -596153.34 5682415.38 101.25 -596153.49 5678580.77 98.75 -596153.74 5679467.13 102.00 -596153.97 5678493.84 98.75 -596153.99 5682955.25 100.00 -596154.01 5678430.42 98.75 -596154.08 5679780.09 98.75 -596154.19 5679447.43 102.00 -596154.22 5679437.56 102.00 -596154.30 5679924.73 97.50 -596154.35 5679457.29 102.00 -596154.42 5683016.16 101.25 -596154.44 5679427.70 102.00 -596154.62 5683159.38 100.00 -596154.81 5678532.66 98.75 -596155.24 5679417.90 102.00 -596155.66 5677777.05 101.25 -596156.16 5681091.54 100.00 -596156.48 5681832.59 98.75 -596156.93 5682284.64 100.00 -596157.08 5679408.21 102.00 -596157.12 5680228.56 98.75 -596157.19 5683061.01 101.25 -596157.86 5683308.86 100.00 -596157.99 5683003.99 100.00 -596158.21 5680614.63 100.00 -596158.81 5682407.02 101.25 -596159.01 5679398.53 102.00 -596159.03 5680988.16 100.00 -596159.16 5679771.64 98.75 -596159.39 5682512.22 102.50 -596159.47 5682521.53 102.50 -596159.63 5679152.04 98.75 -596159.85 5683343.66 100.00 -596159.95 5680998.09 100.00 -596160.06 5678485.97 98.75 -596160.08 5682924.80 101.25 -596160.39 5683167.54 100.00 -596160.43 5678573.63 98.75 -596160.50 5679180.12 102.00 -596160.81 5678762.52 98.75 -596160.88 5680978.55 100.00 -596160.92 5680089.27 97.50 -596161.43 5679388.97 102.00 -596161.48 5682397.58 101.25 -596161.52 5678436.96 98.75 -596161.94 5681780.83 98.75 -596162.46 5680236.93 98.75 -596162.60 5679919.43 97.50 -596162.91 5682387.68 101.25 -596163.41 5682530.60 102.50 -596163.49 5677770.84 101.25 -596163.55 5682958.16 100.00 -596163.84 5679379.40 102.00 -596164.06 5680969.10 100.00 -596164.16 5681006.91 100.00 -596164.17 5683018.14 101.25 -596164.19 5679671.29 100.00 -596164.34 5682377.79 101.25 -596164.44 5679681.27 100.00 -596164.77 5678532.89 98.75 -596165.02 5682503.96 102.50 -596165.47 5680621.49 100.00 -596165.66 5681088.52 100.00 -596165.67 5679661.47 100.00 -596165.87 5679369.75 102.00 -596166.28 5682367.98 101.25 -596166.28 5681834.51 98.75 -596166.30 5682287.24 100.00 -596166.45 5678478.34 98.75 -596167.07 5679765.56 98.75 -596167.15 5683060.27 101.25 -596167.36 5678566.49 98.75 -596167.40 5683311.67 100.00 -596167.59 5683006.77 100.00 -596167.63 5679651.68 100.00 -596167.79 5680245.29 98.75 -596167.88 5679360.09 102.00 -596168.29 5683173.58 100.00 -596168.44 5682358.22 101.25 -596169.03 5678443.50 98.75 -596169.10 5679148.91 98.75 -596169.16 5682928.92 101.25 -596169.39 5680094.19 97.50 -596169.43 5681015.37 100.00 -596169.75 5683344.48 100.00 -596169.81 5679183.40 102.00 -596169.90 5679350.43 102.00 -596169.92 5682537.60 102.50 -596170.62 5678760.63 98.75 -596170.71 5680961.86 100.00 -596170.74 5679913.90 97.50 -596171.23 5679642.43 100.00 -596171.32 5677764.63 101.25 -596171.79 5681782.52 98.75 -596171.87 5680254.31 98.75 -596172.10 5679192.16 102.00 -596172.17 5679340.83 102.00 -596172.34 5681081.72 100.00 -596172.35 5679687.09 100.00 -596172.62 5678470.53 98.75 -596172.73 5680628.35 100.00 -596172.83 5679202.00 102.00 -596172.87 5682349.31 101.25 -596173.46 5682959.45 100.00 -596173.51 5679211.84 100.00 -596173.51 5679211.84 102.00 -596173.52 5682499.00 102.50 -596173.58 5683021.51 101.25 -596173.94 5678559.08 98.75 -596174.17 5679220.76 102.00 -596174.29 5678535.54 98.75 -596174.37 5678451.84 98.75 -596174.48 5681023.97 100.00 -596174.56 5679331.26 102.00 -596174.83 5679229.68 102.00 -596174.98 5679759.48 98.75 -596175.41 5678461.46 98.75 -596175.48 5679238.60 102.00 -596175.52 5679633.43 100.00 -596175.61 5680263.50 98.75 -596176.02 5679321.52 102.00 -596176.09 5681836.43 98.75 -596176.14 5679247.52 102.00 -596176.24 5681072.62 100.00 -596176.28 5682287.17 100.00 -596176.45 5683179.29 100.00 -596176.73 5683314.98 100.00 -596176.80 5679256.44 102.00 -596176.80 5681033.66 100.00 -596177.08 5683061.24 101.25 -596177.15 5679311.72 102.00 -596177.19 5683009.54 100.00 -596177.46 5679265.36 102.00 -596177.77 5682340.61 101.25 -596177.86 5680099.10 97.50 -596177.87 5680954.93 100.00 -596178.11 5679274.28 102.00 -596178.29 5679301.92 102.00 -596178.30 5680990.39 98.75 -596178.39 5681043.48 100.00 -596178.43 5679907.74 97.50 -596178.50 5682932.45 101.25 -596178.76 5680883.30 100.00 -596178.77 5679283.20 102.00 -596178.78 5678550.37 98.75 -596178.88 5679146.90 98.75 -596179.12 5682541.50 102.50 -596179.43 5681053.40 100.00 -596179.43 5679292.12 100.00 -596179.43 5679292.12 102.00 -596179.52 5681063.20 100.00 -596179.66 5683345.30 100.00 -596179.96 5680272.39 98.75 -596180.00 5680980.58 98.75 -596180.29 5680892.76 100.00 -596180.42 5678758.74 98.75 -596180.45 5679624.75 100.00 -596180.48 5677760.66 101.25 -596180.74 5679692.37 100.00 -596180.74 5680999.93 98.75 -596180.82 5680634.19 100.00 -596181.54 5681784.70 98.75 -596181.86 5679206.83 100.00 -596181.87 5678541.47 98.75 -596182.04 5680874.00 100.00 -596182.44 5681009.67 98.75 -596182.87 5680971.30 98.75 -596182.98 5683024.88 101.25 -596182.99 5682495.95 102.50 -596183.08 5681019.61 98.75 -596183.15 5682961.54 100.00 -596183.87 5681029.52 98.75 -596183.97 5679756.10 98.75 -596184.38 5680901.82 100.00 -596184.57 5679615.75 100.00 -596184.67 5682333.37 101.25 -596184.90 5680947.86 100.00 -596184.97 5683481.95 100.00 -596185.03 5680280.92 98.75 -596185.52 5683319.63 100.00 -596185.92 5681838.25 98.75 -596186.20 5683013.82 100.00 -596186.22 5682286.57 100.00 -596186.33 5683180.71 100.00 -596186.36 5679901.98 97.50 -596186.78 5682938.04 101.25 -596186.92 5681039.00 98.75 -596187.01 5683062.32 101.25 -596187.02 5680104.27 97.50 -596187.03 5679606.08 100.00 -596187.70 5682546.44 102.50 -596188.05 5680866.05 100.00 -596188.44 5679288.44 100.00 -596188.81 5679146.13 98.75 -596188.86 5680910.70 100.00 -596188.99 5678396.78 100.00 -596189.07 5680289.96 98.75 -596189.08 5680639.80 100.00 -596189.26 5683343.83 100.00 -596189.27 5680963.68 98.75 -596189.36 5678387.29 100.00 -596189.66 5677756.72 101.25 -596189.73 5678755.20 98.75 -596189.93 5679596.53 100.00 -596189.94 5680939.47 100.00 -596189.96 5681048.48 98.75 -596189.99 5683490.17 100.00 -596190.17 5678406.65 100.00 -596190.22 5679201.83 100.00 -596190.47 5679694.55 100.00 -596191.13 5681131.10 98.75 -596191.24 5681787.11 98.75 -596191.46 5683475.58 100.00 -596191.88 5682326.49 101.25 -596192.15 5680920.11 100.00 -596192.30 5683028.48 101.25 -596192.40 5682965.32 100.00 -596192.63 5680930.04 100.00 -596192.70 5682493.58 102.50 -596192.73 5680299.18 98.75 -596193.07 5678378.32 100.00 -596193.08 5679587.07 100.00 -596193.18 5681121.36 98.75 -596193.89 5679755.07 98.75 -596194.29 5683324.31 100.00 -596194.41 5681057.34 98.75 -596194.44 5678348.67 100.00 -596194.57 5678368.49 100.00 -596194.92 5678358.60 100.00 -596195.07 5682943.62 101.25 -596195.11 5683018.34 100.00 -596195.28 5679897.79 97.50 -596195.46 5682552.73 102.50 -596195.68 5680956.05 98.75 -596195.87 5678492.26 100.00 -596195.90 5681838.73 98.75 -596195.90 5678413.77 100.00 -596196.07 5680860.77 100.00 -596196.12 5682285.27 100.00 -596196.16 5680107.93 97.50 -596196.23 5683182.03 100.00 -596196.47 5678483.29 100.00 -596196.64 5678339.02 100.00 -596196.92 5683062.95 101.25 -596196.98 5680308.11 98.75 -596197.17 5681138.25 98.75 -596197.34 5680645.42 100.00 -596197.46 5679284.76 100.00 -596197.54 5681112.65 98.75 -596198.00 5679578.39 100.00 -596198.21 5683339.76 100.00 -596198.55 5683494.58 100.00 -596198.79 5679145.85 98.75 -596198.81 5680889.05 98.75 -596198.92 5678751.30 98.75 -596199.15 5678329.40 100.00 -596199.29 5677754.46 101.25 -596199.43 5681065.94 98.75 -596199.45 5679199.70 100.00 -596200.08 5682320.77 101.25 -596200.19 5679696.84 100.00 -596200.78 5680898.29 98.75 -596200.79 5681790.05 98.75 -596200.83 5683331.57 100.00 -596200.90 5683475.16 100.00 -596201.57 5683032.21 101.25 -596201.65 5682969.09 100.00 -596201.94 5680879.80 98.75 -596202.02 5680316.67 98.75 -596202.30 5682490.88 102.50 -596202.33 5678498.11 100.00 -596202.68 5680949.00 98.75 -596202.87 5681075.12 98.75 -596203.35 5682949.21 101.25 -596203.38 5679570.11 100.00 -596203.51 5681104.69 98.75 -596203.66 5679755.07 98.75 -596203.80 5683023.27 100.00 -596203.93 5678320.99 100.00 -596204.10 5678419.40 100.00 -596204.10 5683485.43 100.50 -596204.52 5681094.80 98.75 -596204.58 5682556.83 102.50 -596204.65 5681084.92 98.75 -596204.80 5679898.09 97.50 -596204.86 5678477.96 100.00 -596205.04 5680112.17 97.50 -596205.39 5680857.22 100.00 -596205.82 5679279.79 100.00 -596205.82 5680650.60 100.00 -596205.88 5681839.21 98.75 -596205.93 5681141.91 98.75 -596206.08 5682284.60 100.00 -596206.20 5683181.39 100.00 -596206.23 5680870.81 98.75 -596206.66 5683060.75 101.25 -596207.11 5683498.99 100.00 -596207.15 5680905.94 98.75 -596208.02 5679149.55 98.75 -596208.12 5678747.39 98.75 -596209.09 5682316.56 101.25 -596209.17 5679199.12 100.00 -596209.21 5677753.25 101.25 -596209.56 5680941.86 98.75 -596209.71 5683478.65 100.00 -596209.74 5680322.71 98.75 -596209.88 5679699.20 100.00 -596210.34 5681793.00 98.75 -596210.52 5678313.55 100.00 -596210.82 5683035.97 101.25 -596210.91 5678342.30 101.25 -596210.93 5682972.80 100.00 -596211.28 5679564.01 100.00 -596211.54 5682487.06 102.50 -596211.60 5682954.85 101.25 -596212.26 5678498.67 100.00 -596212.28 5680914.32 98.75 -596212.80 5678352.10 101.25 -596212.85 5679758.96 98.75 -596212.93 5678423.91 100.00 -596212.94 5683027.07 100.00 -596213.42 5679273.80 100.00 -596213.67 5678473.43 100.00 -596213.69 5682560.94 102.50 -596213.81 5680116.62 97.50 -596213.91 5680864.71 98.75 -596213.91 5678333.01 101.25 -596214.22 5679900.63 97.50 -596214.69 5678361.90 101.25 -596214.83 5680933.62 98.75 -596215.01 5680854.70 100.00 -596215.18 5680654.10 100.00 -596215.49 5680923.69 98.75 -596215.81 5683503.10 100.00 -596215.81 5681143.14 98.75 -596215.82 5683183.36 100.00 -596215.83 5678371.81 101.25 -596215.87 5681839.60 98.75 -596215.96 5682283.42 100.00 -596216.24 5683058.11 101.25 -596216.63 5678391.70 101.25 -596216.86 5678381.73 101.25 -596217.21 5679153.47 98.75 -596217.54 5678543.33 100.00 -596217.75 5678744.89 98.75 -596217.76 5682023.45 98.75 -596217.91 5680328.33 98.75 -596217.99 5678307.13 100.00 -596218.02 5678553.01 100.00 -596218.11 5682480.39 102.50 -596218.24 5683483.11 100.00 -596218.25 5683042.42 101.25 -596218.33 5678401.36 101.25 -596218.41 5682312.94 101.25 -596218.46 5679201.55 100.00 -596218.53 5678324.24 101.25 -596218.56 5682031.89 98.75 -596219.17 5677753.82 101.25 -596219.58 5679701.55 100.00 -596219.74 5682960.64 101.25 -596219.74 5679558.80 100.00 -596219.77 5679266.52 100.00 -596219.87 5677899.79 101.25 -596220.00 5681795.54 98.75 -596220.21 5682976.50 100.00 -596221.37 5683051.60 101.25 -596221.64 5678428.54 100.00 -596221.78 5678534.88 100.00 -596221.89 5678410.66 101.25 -596222.04 5679762.85 98.75 -596222.19 5678498.78 100.00 -596222.28 5681235.57 98.75 -596222.62 5683029.56 100.00 -596222.78 5682471.55 102.50 -596222.80 5682565.05 102.50 -596222.84 5678469.57 100.00 -596223.07 5679904.96 97.50 -596223.17 5680862.17 98.75 -596223.66 5680116.88 97.50 -596223.97 5681244.68 98.75 -596224.42 5678316.18 101.25 -596224.64 5677761.68 101.25 -596224.68 5679258.11 100.00 -596224.73 5683506.71 100.00 -596224.76 5680852.61 100.00 -596224.80 5680656.74 100.00 -596225.08 5681146.39 98.75 -596225.08 5678558.53 100.00 -596225.25 5682017.37 98.75 -596225.28 5677891.92 101.25 -596225.28 5683186.56 100.00 -596225.56 5680098.52 97.50 -596225.68 5682281.16 100.00 -596225.86 5681839.83 98.75 -596225.92 5677901.42 101.25 -596226.29 5678301.65 100.00 -596226.41 5679157.35 98.75 -596226.52 5680333.20 98.75 -596226.76 5683487.61 100.00 -596227.40 5682034.47 98.75 -596227.52 5678742.79 98.75 -596227.52 5681227.78 98.75 -596227.63 5679204.84 100.00 -596227.73 5682309.32 101.25 -596227.81 5678418.69 101.25 -596227.93 5682966.31 101.25 -596228.39 5682463.43 102.50 -596228.40 5677770.78 101.25 -596228.66 5680091.72 97.50 -596228.66 5679554.34 100.00 -596228.69 5678435.55 100.00 -596229.16 5678528.22 100.00 -596229.27 5679249.53 100.00 -596229.31 5679703.78 100.00 -596229.49 5682980.21 100.00 -596229.71 5681797.92 98.75 -596230.31 5678308.13 101.25 -596230.35 5679587.82 100.70 -596230.67 5679767.85 98.75 -596230.80 5677780.48 101.25 -596230.85 5680106.83 97.50 -596231.69 5679909.65 97.50 -596231.83 5681249.83 98.75 -596231.90 5678499.64 100.00 -596231.91 5682569.15 102.50 -596231.97 5678465.66 100.00 -596232.30 5683032.04 100.00 -596232.72 5680114.42 97.50 -596232.86 5677885.42 101.25 -596233.09 5680861.89 98.75 -596233.10 5679240.59 100.00 -596233.31 5678260.92 100.00 -596233.39 5677790.12 101.25 -596233.66 5683510.32 100.00 -596233.88 5679212.19 100.00 -596233.95 5681150.90 98.75 -596234.19 5681845.02 98.75 -596234.51 5680659.10 100.00 -596234.51 5680850.51 100.00 -596234.52 5677896.34 101.25 -596234.59 5678296.18 100.00 -596234.64 5678425.78 101.25 -596234.68 5683189.96 100.00 -596234.71 5678560.75 100.00 -596234.85 5682014.60 98.75 -596234.92 5679162.48 98.75 -596234.94 5683492.67 100.00 -596235.02 5679231.05 100.00 -596235.40 5682278.90 100.00 -596235.52 5680337.38 98.75 -596235.52 5678442.77 100.00 -596235.59 5679221.38 100.00 -596236.23 5683457.65 100.00 -596236.33 5682457.35 102.50 -596236.50 5681223.64 98.75 -596236.51 5680085.78 97.50 -596236.60 5677799.42 101.25 -596236.72 5678521.78 100.00 -596236.74 5682305.01 101.25 -596237.08 5682033.75 98.75 -596237.27 5678740.64 98.75 -596237.72 5682968.29 101.25 -596237.85 5679550.91 100.00 -596238.22 5679774.07 98.75 -596238.25 5678302.10 101.25 -596238.76 5682983.91 100.00 -596239.01 5678269.07 100.00 -596239.04 5679706.00 100.00 -596239.48 5679915.68 97.50 -596239.59 5681799.17 98.75 -596239.80 5678504.86 100.00 -596239.88 5678288.22 100.00 -596240.10 5681158.73 98.75 -596240.28 5678460.21 100.00 -596240.37 5677878.83 101.25 -596240.59 5678450.85 100.00 -596240.75 5683465.56 100.00 -596240.86 5678399.96 102.50 -596240.97 5678278.71 100.00 -596241.03 5682573.26 102.50 -596241.19 5681253.23 98.75 -596241.84 5681215.24 98.75 -596242.01 5678407.05 102.50 -596242.10 5683033.96 100.00 -596242.30 5681850.87 98.75 -596242.75 5680864.31 98.75 -596242.85 5678514.18 100.00 -596242.87 5678431.42 101.25 -596242.98 5683497.98 100.00 -596243.05 5679168.28 98.75 -596243.21 5677891.40 101.25 -596243.24 5683510.12 100.00 -596243.36 5683451.89 100.00 -596243.86 5680342.68 98.75 -596244.02 5683193.50 100.00 -596244.04 5682010.84 98.75 -596244.08 5679782.15 98.75 -596244.14 5681167.61 98.75 -596244.24 5680660.45 100.00 -596244.37 5680849.05 100.00 -596244.56 5678562.08 100.00 -596244.64 5682452.17 102.50 -596244.76 5680080.41 97.50 -596244.79 5677805.15 101.25 -596244.92 5682275.88 100.00 -596245.61 5682300.40 101.25 -596246.23 5678296.11 101.25 -596246.24 5682029.74 98.75 -596246.69 5679922.36 97.50 -596246.73 5681177.23 98.75 -596246.82 5678737.73 98.75 -596246.92 5683472.35 100.00 -596247.19 5681206.84 98.75 -596247.41 5679711.05 100.00 -596247.57 5682969.40 101.25 -596247.71 5681196.95 98.75 -596247.76 5677872.11 101.25 -596247.82 5679550.61 100.00 -596248.04 5681186.99 98.75 -596248.29 5678393.83 102.50 -596248.36 5678414.40 102.50 -596248.46 5682986.26 100.00 -596248.91 5679176.34 98.75 -596249.02 5681858.21 98.75 -596249.28 5683505.16 100.00 -596249.57 5681799.71 98.75 -596249.93 5679790.23 98.75 -596250.21 5682577.19 102.50 -596250.90 5681254.10 98.75 -596251.65 5683464.46 100.50 -596251.76 5677886.25 101.25 -596251.85 5678435.66 101.25 -596251.93 5680348.46 98.75 -596251.97 5683035.26 100.00 -596252.12 5678288.15 101.25 -596252.32 5680867.04 98.75 -596252.34 5683451.52 100.00 -596252.74 5682005.93 98.75 -596253.11 5683197.58 100.00 -596253.13 5680075.22 97.50 -596253.56 5679929.42 97.50 -596253.67 5683478.12 100.00 -596254.08 5680658.72 100.00 -596254.23 5680847.59 100.00 -596254.33 5677807.52 101.25 -596254.47 5678562.80 100.00 -596254.51 5682450.56 102.50 -596254.53 5682273.27 100.00 -596254.64 5679184.51 98.75 -596254.73 5682296.32 101.25 -596255.18 5677865.41 101.25 -596255.19 5679717.29 100.00 -596255.53 5681865.80 98.75 -596255.95 5679798.18 98.75 -596255.97 5682028.10 98.75 -596256.38 5678734.82 98.75 -596256.89 5678389.33 102.50 -596257.49 5678279.74 101.25 -596257.54 5682968.80 101.25 -596257.60 5678416.08 102.50 -596257.80 5679550.32 100.00 -596258.02 5680068.25 97.50 -596258.21 5682988.45 100.00 -596258.21 5680058.53 97.50 -596258.54 5679937.60 97.50 -596259.00 5679193.50 98.75 -596259.17 5683456.68 100.00 -596259.30 5681248.75 98.75 -596259.43 5682581.06 102.50 -596259.48 5681799.26 98.75 -596259.53 5681998.61 98.75 -596259.95 5677880.53 101.25 -596260.09 5680354.06 98.75 -596260.54 5681874.45 98.75 -596261.09 5678439.44 101.25 -596261.10 5680049.11 97.50 -596261.52 5679946.99 97.50 -596261.87 5680869.87 98.75 -596261.89 5683202.36 100.00 -596261.96 5683035.49 100.00 -596262.14 5679806.01 98.75 -596262.68 5683479.68 100.00 -596262.71 5678271.24 101.25 -596262.80 5677858.95 101.25 -596262.91 5679723.61 100.00 -596263.62 5679202.34 98.75 -596263.92 5680656.98 100.00 -596264.00 5681239.98 98.75 -596264.06 5680039.72 97.50 -596264.09 5680846.12 100.00 -596264.17 5678561.18 100.00 -596264.20 5677809.10 101.25 -596264.26 5682293.62 101.25 -596264.37 5682271.59 100.00 -596264.37 5682448.95 102.50 -596264.50 5679956.38 97.50 -596265.06 5681883.33 98.75 -596265.18 5678730.63 98.75 -596265.21 5681942.38 98.75 -596265.45 5683463.36 100.00 -596265.46 5681990.74 98.75 -596265.67 5681932.39 98.75 -596265.71 5678385.49 102.50 -596265.95 5682027.87 98.75 -596266.11 5678420.67 102.50 -596266.13 5681922.41 98.75 -596266.72 5681912.43 98.75 -596267.31 5681952.09 98.75 -596267.39 5680030.45 97.50 -596267.52 5682968.20 101.25 -596267.59 5679552.22 100.00 -596267.95 5681902.52 98.75 -596268.12 5682988.46 100.00 -596268.14 5677874.80 101.25 -596268.41 5681231.05 98.75 -596268.64 5681892.67 98.75 -596268.65 5682584.92 102.50 -596268.72 5681981.30 98.75 -596268.78 5679210.90 98.75 -596268.83 5679965.20 97.50 -596269.01 5678263.52 101.25 -596269.28 5681797.29 98.75 -596269.34 5680357.67 98.75 -596269.36 5679812.79 98.75 -596269.83 5683207.99 100.00 -596269.83 5681961.76 98.75 -596270.24 5679730.38 100.00 -596270.32 5678443.22 101.25 -596270.53 5677852.65 101.25 -596270.72 5680021.18 97.50 -596270.73 5681971.62 98.75 -596270.76 5683470.72 100.00 -596271.37 5680872.87 98.75 -596271.84 5683479.38 100.00 -596271.95 5683035.71 100.00 -596272.34 5678723.66 98.75 -596272.51 5681100.01 98.75 -596273.09 5681222.38 98.75 -596273.46 5679973.89 97.50 -596273.62 5680654.60 100.00 -596273.76 5678558.59 100.00 -596273.83 5680845.39 100.00 -596274.17 5677809.50 101.25 -596274.21 5682292.67 101.25 -596274.23 5682270.08 100.00 -596274.23 5679219.20 98.75 -596274.27 5682447.57 102.50 -596274.35 5680012.03 97.50 -596274.56 5678425.44 102.50 -596274.85 5683216.62 100.00 -596275.27 5678383.85 102.50 -596275.87 5679983.34 97.50 -596275.94 5682028.10 98.75 -596276.38 5677869.16 101.25 -596276.74 5681091.17 98.75 -596277.18 5679993.09 97.50 -596277.29 5679818.83 98.75 -596277.38 5679554.18 100.00 -596277.49 5682967.98 101.25 -596277.57 5679737.16 100.00 -596277.73 5680002.92 97.50 -596277.85 5682588.83 102.50 -596278.09 5682987.78 100.00 -596278.62 5680361.14 98.75 -596278.68 5678448.57 101.25 -596278.81 5681794.30 98.75 -596279.14 5678716.43 98.75 -596279.24 5677847.75 101.25 -596279.53 5681104.14 98.75 -596279.87 5683225.26 100.00 -596280.62 5681215.87 98.75 -596280.82 5680876.01 98.75 -596281.82 5679225.69 98.75 -596281.92 5683036.27 100.00 -596282.20 5680850.71 100.00 -596282.37 5681083.01 98.75 -596282.81 5678430.55 102.50 -596283.28 5680652.08 100.00 -596283.36 5678555.99 100.00 -596283.81 5678707.60 98.75 -596284.00 5677808.45 101.25 -596284.17 5682291.72 101.25 -596284.19 5682446.37 102.50 -596284.20 5682269.70 100.00 -596284.73 5677863.67 101.25 -596284.84 5678382.21 102.50 -596284.89 5679743.93 100.00 -596284.89 5683233.90 100.00 -596285.55 5679824.41 98.75 -596285.89 5682027.56 98.75 -596286.74 5678454.45 101.25 -596286.86 5679557.25 100.00 -596286.92 5681098.08 98.75 -596286.95 5682592.96 102.50 -596287.48 5682968.21 101.25 -596287.94 5677842.84 101.25 -596288.06 5682987.10 100.00 -596288.16 5681790.79 98.75 -596288.16 5681209.36 98.75 -596288.31 5680363.29 98.75 -596288.48 5678698.77 98.75 -596288.97 5681075.79 98.75 -596289.63 5683242.69 100.00 -596289.77 5679231.62 98.75 -596289.87 5680857.08 100.00 -596289.97 5680879.94 98.75 -596291.06 5678435.66 102.50 -596291.86 5683037.21 100.00 -596292.18 5678689.51 98.75 -596292.22 5679750.71 100.00 -596292.95 5680649.55 100.00 -596292.95 5678553.39 100.00 -596293.08 5677858.19 101.25 -596293.18 5681090.40 98.75 -596293.35 5678411.57 102.75 -596293.73 5677806.46 101.25 -596294.08 5682292.24 101.25 -596294.14 5679829.49 98.75 -596294.15 5682445.56 102.50 -596294.18 5682269.42 100.00 -596294.30 5683251.52 100.00 -596294.48 5678382.04 102.50 -596294.91 5678460.16 101.25 -596295.77 5678680.20 98.75 -596295.79 5682026.18 98.75 -596295.96 5677836.89 101.25 -596296.24 5682596.29 102.50 -596296.37 5679560.24 100.00 -596296.90 5681069.84 98.75 -596297.14 5681205.29 98.75 -596297.38 5681786.92 98.75 -596297.47 5682968.43 101.25 -596297.54 5680863.45 100.00 -596298.00 5680365.44 98.75 -596298.03 5682986.85 100.00 -596298.89 5679235.70 98.75 -596298.89 5680884.24 98.75 -596298.97 5683260.35 100.00 -596299.42 5678440.59 102.50 -596299.46 5679757.57 100.00 -596300.50 5681083.82 98.75 -596300.83 5678671.59 98.75 -596301.35 5677852.59 101.25 -596301.66 5683039.12 100.00 -596301.90 5678549.10 100.00 -596302.09 5682018.54 98.75 -596302.86 5680648.66 100.00 -596302.96 5679834.11 98.75 -596303.72 5677806.30 101.25 -596303.73 5678464.83 101.25 -596303.78 5677830.68 101.25 -596303.96 5682293.76 101.25 -596304.09 5678382.91 102.50 -596304.12 5682444.84 102.50 -596304.16 5682269.65 100.00 -596304.85 5681063.92 98.75 -596305.04 5683268.26 100.00 -596305.23 5680869.80 100.00 -596305.89 5678662.98 98.75 -596306.22 5682596.64 102.50 -596306.26 5679561.59 100.00 -596306.47 5681201.79 98.75 -596306.56 5679764.59 100.00 -596306.70 5680890.42 98.75 -596306.74 5681783.45 98.75 -596306.94 5682009.99 98.75 -596307.37 5682521.44 103.00 -596307.46 5682968.66 101.25 -596307.89 5680365.37 98.75 -596308.02 5682987.07 100.00 -596308.06 5681961.03 98.75 -596308.07 5681971.02 98.75 -596308.16 5678444.77 102.50 -596308.47 5681077.92 98.75 -596308.52 5679237.69 98.75 -596309.26 5677846.48 101.25 -596309.48 5681980.90 98.75 -596309.86 5682000.43 98.75 -596310.76 5678544.60 100.00 -596311.12 5681951.79 98.75 -596311.13 5681990.76 98.75 -596311.22 5677824.01 101.25 -596311.35 5683276.01 100.00 -596311.40 5683041.30 100.00 -596311.45 5678654.69 98.75 -596312.08 5679838.16 98.75 -596312.51 5678387.72 102.50 -596312.55 5678469.49 101.25 -596312.84 5680648.23 100.00 -596312.91 5680876.15 100.00 -596313.59 5677807.45 101.25 -596313.85 5682295.28 101.25 -596314.06 5682268.64 100.00 -596314.06 5681060.27 98.75 -596314.09 5682444.13 102.50 -596314.51 5680896.61 98.75 -596315.32 5679769.27 100.00 -596315.79 5681942.96 98.75 -596316.14 5679562.94 100.00 -596316.21 5682596.98 102.50 -596316.27 5681780.45 98.75 -596316.27 5681200.95 98.75 -596316.67 5681072.70 98.75 -596316.92 5677815.81 101.25 -596317.09 5682966.09 101.25 -596317.16 5677840.37 101.25 -596317.22 5678447.65 102.50 -596317.25 5678646.55 98.75 -596317.80 5680365.01 98.75 -596318.01 5682987.30 100.00 -596318.29 5679235.67 98.75 -596319.08 5683282.22 100.00 -596319.21 5678394.73 102.50 -596319.47 5680904.95 98.75 -596319.69 5678540.24 100.00 -596320.15 5683046.09 100.00 -596320.60 5680882.50 100.00 -596321.20 5679842.21 98.75 -596321.53 5681934.80 98.75 -596321.65 5678473.43 101.25 -596322.82 5680647.80 100.00 -596323.04 5678638.42 98.75 -596323.28 5681056.61 98.75 -596323.30 5680914.14 98.75 -596323.77 5682296.31 101.25 -596323.93 5682267.17 100.00 -596324.05 5682443.62 102.50 -596324.28 5679773.65 100.00 -596324.69 5678402.52 102.50 -596325.06 5677834.25 101.25 -596326.05 5681778.48 98.75 -596326.07 5679563.78 100.00 -596326.20 5682597.16 102.50 -596326.23 5681200.95 98.75 -596326.58 5681072.40 98.75 -596326.69 5682963.36 101.25 -596326.70 5680923.50 98.75 -596326.89 5679230.65 98.75 -596326.89 5678446.83 102.50 -596327.28 5680362.48 98.75 -596327.29 5683287.90 100.00 -596327.55 5681926.81 98.75 -596327.80 5680889.29 100.00 -596328.00 5682987.53 100.00 -596328.09 5678411.61 102.50 -596328.86 5683050.99 100.00 -596329.12 5678537.09 100.00 -596330.00 5679846.81 98.75 -596330.08 5678631.44 98.75 -596330.52 5680932.65 98.75 -596331.31 5678475.90 101.25 -596331.77 5677826.94 101.25 -596331.95 5681969.67 100.00 -596332.38 5678420.22 102.50 -596332.77 5680647.68 100.00 -596332.83 5681054.40 98.75 -596333.21 5680897.66 100.00 -596333.24 5679778.04 100.00 -596333.38 5682263.96 100.00 -596333.56 5681918.83 98.75 -596333.60 5681979.37 100.00 -596333.77 5682296.54 101.25 -596333.86 5682445.52 102.50 -596334.50 5681960.28 100.00 -596335.25 5681989.08 100.00 -596335.42 5679225.45 98.75 -596335.44 5682959.19 101.25 -596335.52 5683293.57 100.00 -596335.89 5678443.96 102.50 -596335.92 5681776.95 98.75 -596336.03 5679564.19 100.00 -596336.15 5682596.23 102.50 -596336.40 5681072.81 98.75 -596336.54 5680358.92 98.75 -596336.62 5680940.35 98.75 -596336.76 5681998.80 100.00 -596337.52 5683055.97 100.00 -596337.76 5678625.06 98.75 -596337.99 5682987.76 100.00 -596338.07 5679852.68 98.75 -596338.07 5678428.08 102.50 -596338.25 5677819.36 101.25 -596338.54 5678533.95 100.00 -596338.77 5681952.04 100.00 -596339.37 5681910.71 98.75 -596339.62 5680905.12 100.00 -596340.75 5678436.77 102.50 -596341.21 5678476.58 101.25 -596342.31 5679782.21 100.00 -596342.35 5682951.98 101.25 -596342.38 5682693.62 101.25 -596342.58 5680649.59 100.00 -596342.71 5681053.59 98.75 -596342.77 5682703.60 101.25 -596342.81 5682260.69 100.00 -596342.84 5679218.88 98.75 -596343.48 5682713.55 101.25 -596343.67 5682447.41 102.50 -596343.77 5682296.39 101.25 -596343.83 5682003.08 100.00 -596343.87 5683299.06 100.00 -596344.28 5681902.01 98.75 -596344.65 5681078.30 98.75 -596345.19 5680874.72 100.00 -596345.24 5680944.97 98.75 -596345.32 5682723.36 101.25 -596345.45 5678618.68 98.75 -596345.48 5677812.46 101.25 -596345.90 5679565.69 100.00 -596345.92 5681776.85 98.75 -596345.98 5679858.73 98.75 -596346.10 5682595.30 102.50 -596346.18 5683060.95 100.00 -596347.17 5682733.18 101.25 -596347.33 5680866.29 100.00 -596347.46 5680911.29 100.00 -596347.61 5682986.24 100.00 -596347.87 5681948.28 100.00 -596347.97 5678530.80 100.00 -596348.64 5682686.33 101.25 -596348.70 5682944.32 101.25 -596349.05 5682742.99 101.25 -596349.19 5681893.30 98.75 -596349.73 5679211.65 98.75 -596351.19 5678476.63 101.25 -596351.49 5679786.12 100.00 -596351.71 5680882.25 100.00 -596351.83 5682752.59 101.25 -596352.05 5682257.00 100.00 -596352.21 5683304.55 100.00 -596352.38 5680651.50 100.00 -596352.56 5681052.98 98.75 -596352.82 5679866.00 98.75 -596353.13 5678612.29 98.75 -596353.38 5682001.57 100.00 -596353.49 5682449.30 102.50 -596353.77 5682296.20 101.25 -596353.87 5677807.24 101.25 -596353.89 5681081.29 98.75 -596353.95 5680860.52 100.00 -596354.13 5682935.94 101.25 -596354.60 5682762.19 101.25 -596354.84 5683065.93 100.00 -596354.94 5681885.29 98.75 -596355.14 5680945.99 98.75 -596355.15 5681974.65 100.25 -596355.56 5681779.45 98.75 -596355.65 5680349.36 98.75 -596355.71 5679567.47 100.00 -596356.03 5682594.17 102.50 -596356.28 5682916.67 101.25 -596356.41 5682926.65 101.25 -596356.51 5682906.68 101.25 -596356.67 5682680.79 101.25 -596356.70 5682982.09 100.00 -596356.71 5680914.89 100.00 -596357.15 5678671.65 99.60 -596357.16 5681945.89 100.00 -596357.18 5679205.07 98.75 -596357.24 5680890.55 100.00 -596357.37 5682771.78 101.25 -596357.40 5678527.65 100.00 -596358.27 5682897.19 101.25 -596358.30 5679873.94 98.75 -596359.57 5682781.52 101.25 -596360.39 5679883.68 98.75 -596360.67 5679790.04 100.00 -596360.69 5682252.03 100.00 -596360.80 5678605.90 98.75 -596361.16 5678476.67 101.25 -596361.67 5682791.29 101.25 -596361.82 5683306.32 100.00 -596361.91 5681056.26 98.75 -596362.11 5680899.23 100.00 -596362.30 5680652.72 100.00 -596362.54 5681878.79 98.75 -596362.86 5677802.89 101.25 -596362.89 5681999.03 100.00 -596363.01 5682452.35 102.50 -596363.50 5683070.92 100.00 -596363.66 5679893.11 98.75 -596363.68 5680908.79 100.00 -596363.73 5682296.85 101.25 -596363.78 5682801.06 101.25 -596363.79 5681081.01 98.75 -596363.92 5680860.27 100.00 -596363.95 5680343.83 98.75 -596364.18 5682889.15 101.25 -596364.94 5681782.88 98.75 -596365.03 5680946.07 98.75 -596365.24 5679199.22 98.75 -596365.38 5679569.93 100.00 -596365.63 5682977.70 100.00 -596365.88 5682592.86 102.50 -596365.88 5682810.82 101.25 -596365.94 5681949.46 100.00 -596366.18 5682677.71 101.25 -596366.85 5678524.54 100.00 -596366.86 5679902.55 98.75 -596367.54 5682820.66 101.25 -596368.04 5682880.26 101.25 -596368.47 5678599.50 98.75 -596368.56 5679912.38 98.75 -596368.76 5682830.58 101.25 -596369.78 5682870.42 101.25 -596369.84 5679793.96 100.00 -596369.87 5682248.10 100.00 -596369.97 5682840.49 101.25 -596370.08 5682860.44 101.25 -596370.13 5681872.29 98.75 -596370.25 5679922.22 98.75 -596370.31 5682850.45 101.25 -596371.14 5678476.94 101.25 -596371.29 5681059.48 98.75 -596371.54 5683076.74 100.00 -596371.59 5683308.17 100.00 -596371.65 5679191.57 98.75 -596371.71 5677798.24 101.25 -596371.82 5680337.79 98.75 -596371.99 5681995.27 100.00 -596372.21 5680653.94 100.00 -596372.52 5682455.40 102.50 -596372.68 5682970.63 100.00 -596372.82 5682585.66 102.50 -596373.42 5680940.72 98.75 -596373.60 5681955.62 100.00 -596373.67 5679931.51 98.75 -596373.68 5682297.79 101.25 -596373.69 5681080.43 98.75 -596373.89 5680860.03 100.00 -596374.28 5681786.46 98.75 -596374.95 5679572.74 100.00 -596374.97 5683231.15 100.00 -596375.68 5682674.64 101.25 -596375.97 5680931.09 98.75 -596376.06 5683221.22 100.00 -596376.14 5678593.10 98.75 -596376.29 5678521.43 100.00 -596377.87 5679940.56 98.75 -596378.07 5679183.91 98.75 -596378.16 5680921.38 98.75 -596378.53 5680330.40 98.75 -596378.76 5682962.87 100.00 -596378.81 5683083.59 100.00 -596378.91 5679798.13 100.00 -596379.07 5681868.48 98.75 -596379.43 5683239.69 100.00 -596379.57 5682246.38 100.00 -596379.76 5682578.47 102.50 -596380.51 5677793.52 101.25 -596380.68 5681962.46 100.00 -596380.69 5681062.61 98.75 -596381.08 5681991.50 100.00 -596381.10 5678477.44 101.25 -596381.27 5683310.59 100.00 -596381.59 5681258.32 98.75 -596382.04 5682458.45 102.50 -596382.11 5679949.59 98.75 -596382.13 5680655.11 100.00 -596382.28 5683213.96 100.00 -596382.29 5681248.35 98.75 -596382.56 5680913.34 98.75 -596382.82 5682301.84 101.25 -596382.83 5682569.00 102.50 -596383.03 5682953.84 100.00 -596383.58 5681079.85 98.75 -596383.70 5678586.57 98.75 -596383.84 5680860.45 100.00 -596383.85 5680322.13 98.75 -596383.86 5681238.51 98.75 -596384.00 5681788.63 98.75 -596384.48 5679176.26 98.75 -596384.49 5679575.70 100.00 -596384.82 5683091.53 100.00 -596385.13 5682671.41 101.25 -596385.71 5682559.43 102.50 -596385.73 5678518.33 100.00 -596386.16 5681228.78 98.75 -596386.18 5683246.89 100.00 -596386.49 5679958.56 98.75 -596386.77 5682944.59 100.00 -596387.61 5680312.90 98.75 -596387.71 5681969.35 100.00 -596387.96 5679802.33 100.00 -596388.69 5682549.93 102.50 -596388.83 5681866.33 98.75 -596389.06 5681219.30 98.75 -596389.22 5681986.38 100.00 -596389.23 5680303.06 98.75 -596389.26 5677788.68 101.25 -596389.54 5682245.97 100.00 -596390.15 5682935.18 100.00 -596390.39 5680213.58 98.75 -596390.49 5681062.55 98.75 -596390.51 5680223.56 98.75 -596390.60 5683099.68 100.00 -596390.64 5680233.54 98.75 -596390.75 5680203.66 98.75 -596390.85 5680293.21 98.75 -596390.95 5680243.51 98.75 -596391.01 5678478.39 101.25 -596391.10 5680908.22 98.75 -596391.24 5683311.23 100.00 -596391.25 5678580.04 98.75 -596391.35 5682306.92 101.25 -596391.39 5680253.48 98.75 -596391.56 5682461.50 102.50 -596391.63 5683211.92 100.00 -596391.75 5681977.46 100.00 -596391.84 5680263.45 98.75 -596391.90 5679169.65 98.75 -596391.98 5680653.46 100.00 -596392.06 5679966.64 98.75 -596392.11 5679582.08 100.00 -596392.29 5680273.41 98.75 -596392.47 5680283.37 98.75 -596393.05 5680193.95 98.75 -596393.43 5681080.67 98.75 -596393.67 5682925.84 100.00 -596393.79 5680861.06 100.00 -596393.84 5681790.42 98.75 -596394.04 5683253.07 100.00 -596394.25 5681210.76 98.75 -596394.56 5682668.09 101.25 -596395.18 5678515.22 100.00 -596395.34 5680184.24 98.75 -596396.38 5683107.83 100.00 -596396.46 5682543.64 102.50 -596396.47 5678424.51 101.25 -596397.34 5682916.54 100.00 -596397.37 5679805.23 100.00 -596397.80 5680174.57 98.75 -596397.94 5678433.00 101.25 -596397.97 5677783.80 101.25 -596398.78 5681866.58 98.75 -596398.80 5678573.50 98.75 -596399.14 5682313.18 101.25 -596399.43 5679973.37 98.75 -596399.43 5681202.21 98.75 -596399.52 5682246.20 100.00 -596399.76 5679588.48 100.00 -596399.84 5679163.59 98.75 -596400.34 5681062.43 98.75 -596400.78 5678480.40 101.25 -596400.79 5680165.05 98.75 -596400.85 5680906.24 98.75 -596401.05 5682464.63 102.50 -596401.11 5682907.30 100.00 -596401.12 5683312.57 100.00 -596401.61 5683211.37 100.00 -596401.77 5683116.24 100.00 -596401.83 5680651.80 100.00 -596401.99 5683259.10 100.00 -596403.25 5681081.98 98.75 -596403.36 5678417.91 101.25 -596403.63 5680862.69 100.00 -596403.73 5681790.55 98.75 -596403.77 5680155.53 98.75 -596403.98 5682664.77 101.25 -596404.22 5682537.34 102.50 -596404.62 5678512.11 100.00 -596405.13 5681194.02 98.75 -596405.91 5682898.54 100.00 -596406.38 5678437.27 101.25 -596406.65 5677778.86 101.25 -596406.75 5680146.01 98.75 -596406.94 5683124.79 100.00 -596406.94 5682319.44 101.25 -596407.22 5679979.60 98.75 -596407.30 5679806.16 100.00 -596407.52 5679594.75 100.00 -596408.05 5679158.02 98.75 -596408.20 5678570.47 98.75 -596408.75 5681867.20 98.75 -596408.83 5682249.75 100.00 -596408.90 5680136.28 98.75 -596409.42 5682889.43 100.00 -596410.08 5681064.26 98.75 -596410.37 5682879.56 100.00 -596410.54 5682467.79 102.50 -596410.62 5678481.81 101.25 -596410.70 5683263.99 100.00 -596410.74 5680905.27 98.75 -596410.82 5680126.48 98.75 -596410.97 5683314.24 100.00 -596411.21 5681186.08 98.75 -596411.51 5683210.04 100.00 -596411.69 5680650.24 100.00 -596412.12 5681085.13 98.75 -596412.30 5682531.49 102.50 -596412.44 5682840.23 100.00 -596412.73 5680116.69 98.75 -596412.75 5678414.54 101.25 -596412.80 5682850.19 100.00 -596412.89 5683132.66 100.00 -596413.09 5682830.26 100.00 -596413.17 5680862.25 100.00 -596413.28 5682870.00 100.00 -596413.43 5682661.55 101.25 -596413.54 5682860.16 100.00 -596413.66 5681789.42 98.75 -596413.75 5682820.29 100.00 -596414.06 5678509.00 100.00 -596414.72 5682325.73 101.25 -596415.01 5679985.83 98.75 -596415.05 5680107.02 98.75 -596415.28 5679601.03 100.00 -596415.33 5677773.90 101.25 -596416.02 5678438.19 101.25 -596416.57 5682811.03 100.00 -596417.24 5679807.08 100.00 -596417.44 5681872.14 98.75 -596417.49 5679154.76 98.75 -596417.86 5678567.95 98.75 -596417.97 5681070.16 98.75 -596418.06 5682253.53 100.00 -596418.11 5681179.05 98.75 -596418.48 5682473.14 102.50 -596418.67 5680097.72 98.75 -596418.81 5681092.44 98.75 -596419.41 5683268.87 100.00 -596420.37 5678408.50 101.25 -596420.54 5683139.08 100.00 -596420.55 5683316.65 100.00 -596420.59 5678481.80 101.25 -596420.60 5680904.14 98.75 -596420.71 5682526.08 102.50 -596421.41 5683208.71 100.00 -596421.62 5680649.16 100.00 -596421.95 5682802.62 100.00 -596422.14 5679608.26 100.00 -596422.19 5680858.00 100.00 -596422.29 5680088.42 98.75 -596422.33 5682332.21 101.25 -596422.70 5681785.16 98.75 -596422.90 5679991.94 98.75 -596422.90 5682658.35 101.25 -596423.50 5678505.89 100.00 -596424.18 5677769.28 101.25 -596424.69 5682480.97 102.50 -596425.78 5678436.11 101.25 -596425.90 5681076.01 98.75 -596426.13 5681877.07 98.75 -596426.13 5680079.22 98.75 -596426.25 5682518.10 102.50 -596426.34 5682259.10 100.00 -596426.55 5681173.70 98.75 -596426.93 5679151.49 98.75 -596427.21 5679807.15 100.00 -596427.53 5678565.44 98.75 -596427.86 5678401.90 101.25 -596428.55 5683272.90 100.00 -596428.73 5683144.69 100.00 -596428.92 5679615.58 100.00 -596429.07 5683321.86 100.00 -596429.51 5682489.59 102.50 -596429.95 5680901.13 98.75 -596430.04 5682338.57 101.25 -596430.57 5678481.80 101.25 -596430.72 5682509.16 102.50 -596430.78 5679998.06 98.75 -596430.93 5681779.62 98.75 -596431.17 5682800.11 100.00 -596431.17 5680070.61 98.75 -596431.22 5680853.77 100.00 -596431.24 5683209.86 100.00 -596431.31 5682499.23 102.50 -596431.55 5680648.09 100.00 -596432.36 5682655.15 101.25 -596432.92 5678502.70 100.00 -596433.23 5677765.05 101.25 -596434.47 5682264.88 100.00 -596434.82 5681882.01 98.75 -596434.99 5681168.34 98.75 -596435.55 5678434.16 101.25 -596435.56 5681078.16 98.75 -596436.04 5679622.52 100.00 -596436.21 5680062.00 98.75 -596436.36 5680006.32 98.75 -596436.75 5679152.90 98.75 -596436.94 5678397.79 101.25 -596437.19 5679807.03 100.00 -596437.34 5678564.49 98.75 -596437.68 5683326.87 100.00 -596437.68 5683149.12 100.00 -596437.82 5683276.59 100.00 -596437.91 5682344.75 101.25 -596438.13 5680895.45 98.75 -596438.41 5679884.28 100.00 -596438.62 5681773.25 98.75 -596438.66 5679893.62 100.00 -596439.75 5679902.99 100.00 -596440.31 5678479.96 101.25 -596440.36 5680849.78 100.00 -596440.85 5683212.40 100.00 -596441.03 5682800.09 100.00 -596441.21 5680645.57 100.00 -596441.26 5680053.40 98.75 -596441.83 5682651.95 101.25 -596441.89 5680014.63 98.75 -596442.00 5679876.42 100.00 -596442.23 5682271.16 100.00 -596442.33 5678499.50 100.00 -596442.52 5677761.68 101.25 -596442.60 5681888.06 98.75 -596443.12 5680043.64 98.75 -596443.53 5681163.16 98.75 -596443.72 5679911.49 100.00 -596443.77 5681764.69 98.75 -596444.16 5679628.32 100.00 -596444.71 5680033.79 98.75 -596444.89 5680023.96 98.75 -596444.90 5681081.49 98.75 -596445.05 5682351.50 101.25 -596445.53 5678434.14 101.25 -596446.07 5680889.44 98.75 -596446.50 5678397.03 101.25 -596446.60 5679154.57 98.75 -596446.64 5683153.55 100.00 -596447.17 5679806.91 100.00 -596447.31 5678565.17 98.75 -596447.40 5683329.17 100.00 -596447.45 5683279.23 100.00 -596447.61 5681755.46 98.75 -596448.21 5679919.70 100.00 -596448.23 5679899.20 100.50 -596449.19 5681895.58 98.75 -596449.25 5682360.57 101.25 -596449.49 5680845.80 100.00 -596449.84 5679879.32 100.00 -596449.97 5678477.44 101.25 -596450.04 5683216.32 100.00 -596450.67 5682802.46 100.00 -596450.82 5680642.85 100.00 -596451.29 5682648.75 101.25 -596451.35 5682274.25 100.00 -596451.74 5678496.31 100.00 -596451.95 5681746.47 98.75 -596452.26 5681158.28 98.75 -596452.46 5677760.74 101.25 -596452.98 5679632.63 100.00 -596453.94 5682369.36 101.25 -596454.30 5680884.15 98.75 -596454.58 5679887.48 100.00 -596455.51 5678434.12 101.25 -596455.58 5683158.00 100.00 -596455.66 5681903.19 98.75 -596456.01 5678397.25 101.25 -596456.45 5683283.45 100.00 -596456.45 5679156.23 98.75 -596456.62 5679922.21 100.00 -596456.72 5681737.69 98.75 -596457.14 5683331.32 100.00 -596457.15 5679806.82 100.00 -596457.27 5678565.85 98.75 -596457.85 5679896.19 100.00 -596458.65 5680841.85 100.00 -596458.92 5678473.03 101.25 -596459.27 5683220.13 100.00 -596459.49 5682643.13 101.25 -596459.61 5679905.46 100.00 -596459.68 5682806.77 100.00 -596459.76 5682377.50 101.25 -596460.43 5680640.13 100.00 -596460.98 5681153.40 98.75 -596461.15 5678493.09 100.00 -596461.25 5682275.50 100.00 -596461.37 5679914.73 100.00 -596461.49 5681728.90 98.75 -596461.69 5681911.09 98.75 -596462.06 5678389.85 101.25 -596462.41 5677759.80 101.25 -596462.44 5681473.10 98.75 -596462.65 5679635.09 100.00 -596462.68 5681481.98 98.75 -596463.61 5678380.02 101.25 -596463.83 5678370.04 101.25 -596463.85 5680881.34 98.75 -596464.51 5683162.48 100.00 -596464.56 5678360.10 101.25 -596465.22 5683288.24 100.00 -596465.45 5678433.46 101.25 -596465.58 5682385.63 101.25 -596465.77 5681920.21 98.75 -596465.86 5679159.50 98.75 -596466.07 5679921.13 98.75 -596466.23 5679930.04 98.75 -596466.51 5681720.26 98.75 -596466.75 5678467.07 101.25 -596467.01 5678350.63 101.25 -596467.13 5679806.76 100.00 -596467.13 5683331.26 100.00 -596467.23 5678565.22 98.75 -596467.45 5681295.43 98.75 -596467.52 5682637.19 101.25 -596467.83 5680837.97 100.00 -596467.98 5681465.79 98.75 -596468.03 5679912.06 98.75 -596468.45 5678848.98 98.75 -596468.58 5682269.44 100.00 -596468.93 5683222.66 100.00 -596469.19 5681286.12 98.75 -596469.62 5682807.21 100.00 -596469.69 5678858.86 98.75 -596469.72 5681488.69 98.75 -596469.73 5678488.07 100.00 -596469.93 5681149.11 98.75 -596470.04 5680637.41 100.00 -596471.93 5682393.16 101.25 -596471.95 5679935.64 98.75 -596472.00 5681711.94 98.75 -596472.11 5678868.55 98.75 -596472.28 5678342.16 101.25 -596472.32 5677760.61 101.25 -596472.37 5681303.41 98.75 -596472.42 5679637.13 100.00 -596472.92 5679905.36 98.75 -596473.07 5681925.94 98.75 -596473.25 5682260.62 100.00 -596473.40 5678840.78 98.75 -596473.40 5680878.51 98.75 -596473.44 5683166.97 100.00 -596474.03 5678460.45 101.25 -596474.29 5683292.39 100.00 -596474.51 5679921.50 98.70 -596474.74 5678878.19 98.75 -596475.19 5679163.07 98.75 -596475.39 5678432.70 101.25 -596475.55 5682631.25 101.25 -596475.95 5682583.63 101.25 -596476.37 5678295.28 101.25 -596476.54 5678285.69 101.25 -596476.63 5681280.63 98.75 -596477.02 5680834.08 100.00 -596477.02 5679807.37 100.00 -596477.11 5683331.26 100.00 -596477.17 5678564.33 98.75 -596477.36 5682573.74 101.25 -596477.42 5678333.61 101.25 -596477.45 5678887.80 98.75 -596477.75 5681463.89 98.75 -596477.88 5682251.77 100.00 -596478.08 5678305.11 101.25 -596478.40 5678483.24 100.00 -596478.42 5681704.28 98.75 -596478.45 5681493.40 98.75 -596478.46 5682593.27 101.25 -596478.60 5683225.18 100.00 -596478.95 5678907.29 98.75 -596479.60 5682807.32 100.00 -596479.64 5678832.98 98.75 -596479.64 5682622.35 101.25 -596479.65 5680634.69 100.00 -596479.68 5681146.91 98.75 -596479.89 5678916.81 98.75 -596480.16 5678897.41 98.75 -596480.17 5678314.87 101.25 -596480.32 5679907.57 98.75 -596480.57 5682564.45 101.25 -596480.68 5678276.62 101.25 -596480.70 5681308.41 98.75 -596480.74 5682397.87 101.25 -596480.88 5679933.85 98.75 -596480.96 5682602.93 101.25 -596481.21 5683173.22 100.00 -596481.31 5678324.77 101.25 -596481.59 5682242.51 100.00 -596482.09 5682612.86 101.25 -596482.16 5677762.36 101.25 -596482.20 5679639.10 100.00 -596482.78 5681924.06 98.75 -596482.90 5679924.78 98.75 -596482.92 5680875.59 98.75 -596483.53 5683296.20 100.00 -596483.78 5678458.34 101.25 -596483.87 5679915.63 98.75 -596484.05 5678267.23 101.25 -596484.31 5678925.78 98.75 -596484.52 5679166.64 98.75 -596484.79 5681696.58 98.75 -596485.05 5680828.31 100.00 -596485.32 5682233.25 100.00 -596485.34 5682555.67 101.25 -596485.37 5678432.93 101.25 -596486.12 5681277.51 98.75 -596486.66 5678825.93 98.75 -596486.69 5679809.84 100.00 -596486.80 5683333.69 100.00 -596487.12 5678563.45 98.75 -596487.49 5678479.21 100.00 -596487.75 5681464.12 98.75 -596488.13 5681495.87 98.75 -596488.50 5683226.13 100.00 -596488.95 5683179.53 100.00 -596489.15 5680631.67 100.00 -596489.43 5681144.71 98.75 -596489.56 5682402.59 101.25 -596489.59 5682807.01 100.00 -596489.59 5681917.25 98.75 -596490.67 5681309.15 98.75 -596490.74 5682547.34 101.25 -596490.76 5678933.29 98.75 -596491.06 5681688.79 98.75 -596491.21 5680908.76 97.50 -596491.93 5677764.42 101.25 -596491.98 5679641.07 100.00 -596492.45 5680872.67 98.75 -596492.65 5683300.27 100.00 -596492.71 5680821.93 100.00 -596492.73 5679172.09 98.75 -596493.10 5682226.99 100.00 -596493.61 5678456.72 101.25 -596494.77 5678820.44 98.75 -596495.30 5678433.39 101.25 -596495.62 5681274.39 98.75 -596495.65 5680900.13 97.50 -596495.77 5681909.39 98.75 -596496.16 5679812.97 100.00 -596496.53 5683335.85 100.00 -596496.58 5678475.18 100.00 -596497.07 5678562.68 98.75 -596497.13 5683185.26 100.00 -596497.16 5680916.02 97.50 -596497.48 5682539.97 101.25 -596497.74 5681464.34 98.75 -596497.93 5681497.55 98.75 -596498.12 5682407.70 101.25 -596498.18 5680627.41 100.00 -596498.48 5683226.54 100.00 -596498.87 5678938.06 98.75 -596499.27 5681143.40 98.75 -596499.36 5681683.26 98.75 -596499.57 5682806.71 100.00 -596500.33 5679178.57 98.75 -596500.38 5680815.56 100.00 -596500.64 5681309.89 98.75 -596500.74 5682220.57 100.00 -596501.33 5680868.36 98.75 -596501.73 5683304.43 100.00 -596501.74 5677766.30 101.25 -596501.76 5679643.07 100.00 -596501.87 5680924.71 97.50 -596502.08 5681901.64 98.75 -596502.47 5678453.38 101.25 -596503.93 5680895.51 97.50 -596504.22 5682532.60 101.25 -596504.38 5678437.39 101.25 -596504.39 5678817.75 98.75 -596505.10 5681271.23 98.75 -596505.39 5683190.87 100.00 -596505.52 5679816.42 100.00 -596505.91 5678471.75 100.00 -596505.99 5682413.87 101.25 -596506.51 5683336.37 100.00 -596506.91 5680933.17 97.50 -596507.05 5678563.23 98.75 -596507.22 5680623.15 100.00 -596507.68 5681463.46 98.75 -596507.85 5678445.62 101.25 -596507.85 5681677.99 98.75 -596507.92 5681497.78 98.75 -596507.93 5679185.05 98.75 -596508.04 5680809.18 100.00 -596508.25 5682214.00 100.00 -596508.47 5683226.96 100.00 -596508.65 5681894.11 98.75 -596508.82 5678938.92 98.75 -596509.26 5681143.63 98.75 -596509.44 5682808.28 100.00 -596509.57 5680862.81 98.75 -596510.62 5681310.15 98.75 -596510.90 5683308.40 100.00 -596510.97 5682525.22 101.25 -596511.45 5679645.46 100.00 -596511.66 5677767.46 101.25 -596513.47 5678813.65 98.75 -596513.60 5680896.88 97.50 -596513.86 5682420.04 101.25 -596514.00 5683195.94 100.00 -596514.17 5680940.03 97.50 -596514.40 5679820.82 100.00 -596514.43 5681267.65 98.75 -596515.24 5681886.60 98.75 -596515.25 5678468.36 100.00 -596515.53 5679191.53 98.75 -596515.71 5680802.81 100.00 -596516.28 5680618.95 100.00 -596516.34 5683336.30 100.00 -596516.67 5681673.30 98.75 -596516.88 5680856.05 98.75 -596516.95 5678563.13 98.75 -596517.01 5682209.82 100.00 -596517.66 5681463.02 98.75 -596517.71 5682517.85 101.25 -596517.86 5681498.76 98.75 -596518.40 5683227.95 100.00 -596518.77 5678939.77 98.75 -596519.25 5681143.86 98.75 -596519.31 5682809.84 100.00 -596519.73 5683312.81 100.00 -596519.84 5679650.85 100.00 -596520.61 5681309.92 98.75 -596521.34 5678807.61 98.75 -596521.62 5677768.12 101.25 -596521.73 5682426.21 101.25 -596521.87 5681879.11 98.75 -596522.07 5680847.70 98.75 -596522.61 5683201.01 100.00 -596522.72 5680900.80 97.50 -596522.72 5679826.33 100.00 -596522.85 5679198.30 98.75 -596522.91 5680626.40 100.00 -596523.12 5680796.14 100.00 -596523.16 5680923.63 97.50 -596523.22 5680942.03 97.50 -596523.66 5678463.27 100.00 -596523.76 5681264.07 98.75 -596524.39 5680933.10 97.50 -596524.45 5682510.48 101.25 -596524.52 5683321.44 100.00 -596524.93 5683331.20 100.00 -596525.49 5681668.60 98.75 -596526.44 5680838.76 98.75 -596526.59 5678560.52 98.75 -596526.73 5682208.27 100.00 -596527.25 5681002.97 97.50 -596527.42 5681464.23 98.75 -596527.75 5681500.17 98.75 -596528.14 5681147.81 98.75 -596528.23 5679656.26 100.00 -596528.30 5683229.24 100.00 -596528.53 5681871.67 98.75 -596528.66 5682813.20 100.00 -596528.76 5678939.89 98.75 -596528.79 5678800.96 98.75 -596528.92 5680829.11 98.75 -596529.25 5681012.07 97.50 -596529.51 5679205.74 98.75 -596529.53 5680633.85 100.00 -596529.60 5682432.38 101.25 -596529.91 5680819.28 98.75 -596530.46 5680789.40 100.00 -596530.60 5681309.69 98.75 -596530.81 5683206.59 100.00 -596530.87 5680919.38 97.50 -596531.38 5680897.63 97.50 -596531.41 5679831.21 100.00 -596531.61 5677768.31 101.25 -596532.04 5678458.34 100.00 -596532.41 5682504.58 101.25 -596533.10 5681260.49 98.75 -596533.78 5680995.41 97.50 -596534.55 5681664.45 98.75 -596535.27 5681864.28 98.75 -596535.48 5680612.42 100.00 -596535.78 5678793.83 98.75 -596536.08 5683223.80 100.00 -596536.14 5678557.58 98.75 -596536.16 5680641.30 100.00 -596536.18 5679213.18 98.75 -596536.40 5683214.81 100.00 -596536.58 5682209.89 100.00 -596536.83 5681467.61 98.75 -596536.92 5681152.52 98.75 -596537.02 5680781.89 100.00 -596537.45 5679659.99 100.00 -596537.53 5681502.23 98.75 -596537.88 5682817.06 100.00 -596538.20 5681013.89 97.50 -596538.66 5682436.61 101.25 -596538.75 5678940.02 98.75 -596540.37 5679835.60 100.00 -596540.42 5680987.94 97.50 -596540.56 5681309.00 98.75 -596540.72 5680917.74 97.50 -596541.01 5682499.51 101.25 -596541.19 5680895.88 97.50 -596541.30 5680607.68 100.00 -596541.58 5677767.82 101.25 -596541.73 5679083.76 99.70 -596541.77 5678456.28 100.00 -596542.09 5680619.78 100.00 -596542.43 5681256.92 98.75 -596542.78 5680648.75 100.00 -596542.90 5678786.83 98.75 -596543.57 5680774.38 100.00 -596544.04 5681661.32 98.75 -596544.40 5681860.24 98.75 -596544.40 5679218.58 98.75 -596545.66 5678554.57 98.75 -596546.16 5681156.32 98.75 -596546.23 5681470.99 98.75 -596546.43 5682211.50 100.00 -596546.90 5679663.13 100.00 -596546.92 5681008.98 97.50 -596547.30 5681504.32 98.75 -596547.62 5682819.27 100.00 -596547.73 5682440.83 101.25 -596547.78 5680981.24 97.50 -596548.70 5680627.15 100.00 -596548.73 5678939.99 98.75 -596548.85 5679840.84 100.00 -596549.41 5680656.20 100.00 -596549.94 5680766.71 100.00 -596550.12 5682496.04 101.25 -596550.32 5680603.61 100.00 -596550.35 5678780.18 98.75 -596550.48 5681307.87 98.75 -596550.69 5680918.18 97.50 -596551.08 5680894.47 97.50 -596551.49 5678454.23 100.00 -596551.56 5677767.37 101.25 -596551.98 5681254.07 98.75 -596553.12 5681657.20 98.75 -596553.34 5679223.03 98.75 -596553.75 5681856.78 98.75 -596555.09 5681160.75 98.75 -596555.19 5678551.57 98.75 -596555.30 5680634.51 100.00 -596555.40 5681003.70 97.50 -596555.47 5680974.89 97.50 -596556.03 5680663.65 100.00 -596556.09 5681472.09 98.75 -596556.22 5680758.96 100.00 -596556.29 5682213.11 100.00 -596556.76 5679664.65 100.00 -596556.88 5682444.72 101.25 -596556.94 5679846.66 100.00 -596556.99 5681506.79 98.75 -596557.37 5682821.45 100.00 -596558.68 5678939.13 98.75 -596558.72 5678774.99 98.75 -596559.38 5680599.64 100.00 -596560.09 5682496.58 101.25 -596560.34 5680920.36 97.50 -596560.42 5681308.87 98.75 -596561.06 5680893.93 97.50 -596561.23 5678452.24 100.00 -596561.56 5677767.37 101.25 -596561.62 5681652.08 98.75 -596561.75 5681251.93 98.75 -596561.91 5680641.88 100.00 -596562.28 5679227.48 98.75 -596562.42 5680751.16 100.00 -596562.54 5680967.82 97.50 -596562.65 5680671.10 100.00 -596563.37 5681854.06 98.75 -596563.61 5681165.97 98.75 -596563.71 5680998.18 97.50 -596564.83 5679852.78 100.00 -596564.84 5678548.98 98.75 -596565.91 5682215.72 100.00 -596566.08 5681472.55 98.75 -596566.62 5679666.18 100.00 -596566.67 5681509.26 98.75 -596566.84 5682445.64 101.25 -596567.15 5682822.73 100.00 -596567.94 5678771.14 98.75 -596568.47 5680595.74 100.00 -596568.48 5680743.24 100.00 -596568.52 5680649.24 100.00 -596568.63 5678938.28 98.75 -596568.84 5681645.18 98.75 -596569.20 5681049.08 97.50 -596569.28 5680678.55 100.00 -596569.74 5680923.77 97.50 -596569.98 5682497.71 101.25 -596570.37 5681309.88 98.75 -596570.87 5680962.52 97.50 -596570.89 5679232.49 98.75 -596571.04 5678450.63 100.00 -596571.05 5680893.74 97.50 -596571.08 5680991.42 97.50 -596571.51 5681249.78 98.75 -596571.55 5677767.37 101.25 -596572.14 5681171.18 98.75 -596572.72 5679858.89 100.00 -596573.01 5681851.49 98.75 -596574.31 5681042.46 97.50 -596574.49 5678546.41 98.75 -596574.54 5680735.32 100.00 -596574.99 5682035.20 98.75 -596575.04 5681055.75 97.50 -596575.13 5680656.61 100.00 -596575.46 5682218.61 100.00 -596575.90 5680686.00 100.00 -596576.06 5681473.02 98.75 -596576.41 5679664.72 100.00 -596576.41 5681638.67 98.75 -596576.44 5681511.10 98.75 -596576.80 5682446.56 101.25 -596577.04 5682821.32 100.00 -596577.51 5678768.98 98.75 -596577.56 5680591.83 100.00 -596578.52 5680984.75 97.50 -596578.58 5678937.42 98.75 -596578.98 5679238.35 98.75 -596578.99 5680927.54 97.50 -596579.66 5682500.18 101.25 -596579.84 5682027.31 98.75 -596579.85 5680958.13 97.50 -596580.26 5682042.78 98.75 -596580.31 5681310.89 98.75 -596580.73 5681176.30 98.75 -596580.84 5678448.95 100.00 -596580.97 5679863.97 100.00 -596581.04 5680893.74 97.50 -596581.13 5683174.24 98.75 -596581.38 5677768.88 101.25 -596581.40 5681248.69 98.75 -596581.53 5680728.28 100.00 -596581.73 5680663.97 100.00 -596581.94 5683167.84 98.75 -596582.53 5680693.45 100.00 -596582.94 5681037.67 97.50 -596582.99 5681850.94 98.75 -596584.14 5678543.83 98.75 -596584.24 5681632.44 98.75 -596584.57 5681054.40 97.50 -596585.16 5682220.89 100.00 -596585.57 5681470.19 98.75 -596586.18 5679662.69 100.00 -596586.32 5680978.50 97.50 -596586.44 5681511.33 98.75 -596586.53 5683182.46 98.75 -596586.60 5680933.93 97.50 -596586.74 5680588.15 100.00 -596586.77 5680951.42 97.50 -596586.79 5682446.34 101.25 -596586.84 5682819.63 100.00 -596587.06 5679244.21 98.75 -596587.48 5678768.62 98.75 -596587.53 5682022.11 98.75 -596588.31 5678935.39 98.75 -596588.34 5680671.34 100.00 -596588.59 5682504.48 101.25 -596588.92 5682046.80 98.75 -596589.09 5680721.78 100.00 -596589.15 5680700.90 100.00 -596589.27 5681181.49 98.75 -596590.25 5681310.83 98.75 -596590.39 5680942.66 97.50 -596590.58 5678446.98 100.00 -596590.83 5679863.54 100.00 -596590.90 5677771.51 101.25 -596590.99 5680894.15 97.50 -596591.03 5680653.43 100.30 -596591.22 5683169.56 98.75 -596591.39 5681248.33 98.75 -596592.01 5681033.91 97.50 -596592.97 5681850.39 98.75 -596593.23 5681042.01 97.00 -596593.84 5683189.28 98.75 -596593.85 5681629.86 98.75 -596593.94 5681051.29 97.50 -596593.98 5678542.25 98.75 -596594.30 5680972.50 97.50 -596594.58 5682223.83 100.00 -596594.95 5680678.70 100.00 -596595.00 5681466.90 98.75 -596595.47 5682814.61 100.00 -596595.70 5679248.88 98.75 -596595.78 5680708.36 100.00 -596595.93 5679660.57 100.00 -596596.00 5680584.66 100.00 -596596.17 5681509.22 98.75 -596596.63 5682023.89 98.75 -596596.69 5680715.33 100.00 -596596.79 5682446.01 101.25 -596597.23 5682509.49 101.25 -596597.28 5678766.70 98.75 -596597.52 5681187.13 98.75 -596597.88 5678932.52 98.75 -596597.94 5682035.87 98.50 -596598.07 5682050.11 98.75 -596598.68 5677777.78 101.25 -596598.74 5679857.79 100.00 -596599.60 5683174.92 98.75 -596599.92 5682345.18 101.25 -596600.19 5681309.75 98.75 -596600.28 5682335.55 101.25 -596600.33 5678445.01 100.00 -596600.73 5680896.43 97.50 -596601.12 5683196.12 98.75 -596601.32 5681038.41 97.00 -596601.36 5681248.38 98.75 -596601.43 5681030.95 97.50 -596601.55 5680686.07 100.00 -596601.99 5682354.96 101.25 -596602.58 5680966.90 97.50 -596602.96 5681850.09 98.75 -596603.03 5681461.48 98.75 -596603.18 5681194.68 98.75 -596603.29 5681048.12 97.50 -596603.41 5682228.50 100.00 -596603.55 5681627.43 98.75 -596603.66 5679849.41 100.00 -596603.89 5678540.97 98.75 -596604.11 5682809.58 100.00 -596604.68 5682327.03 101.25 -596604.99 5680981.16 97.50 -596605.26 5680581.16 100.00 -596605.39 5682028.08 98.75 -596605.39 5679251.30 98.75 -596605.52 5677785.05 101.25 -596605.60 5679658.13 100.00 -596605.87 5682514.50 101.25 -596605.88 5681506.84 98.75 -596605.93 5679839.73 100.00 -596606.13 5681204.23 98.75 -596606.78 5682445.66 101.25 -596607.08 5678764.78 98.75 -596607.27 5682052.92 98.75 -596607.30 5679829.84 100.00 -596607.44 5678929.65 98.75 -596607.49 5683181.07 98.75 -596608.14 5680987.72 97.50 -596608.16 5680693.43 100.00 -596608.32 5683203.05 98.75 -596608.38 5682362.63 101.25 -596608.63 5679819.95 100.00 -596608.68 5680972.69 97.50 -596609.70 5681454.05 98.75 -596609.73 5681035.68 97.00 -596610.07 5678443.05 100.00 -596610.13 5681308.67 98.75 -596610.13 5680960.38 97.50 -596610.46 5680898.71 97.50 -596610.74 5679810.29 100.00 -596610.95 5681028.37 97.50 -596611.02 5677793.29 101.25 -596611.26 5681249.75 98.75 -596612.51 5681044.60 97.50 -596612.88 5682231.54 100.00 -596612.90 5681624.32 98.75 -596612.95 5681850.15 98.75 -596613.06 5682805.16 100.00 -596613.63 5682033.24 98.75 -596613.67 5682323.18 101.25 -596613.75 5680964.98 97.50 -596613.83 5678540.86 98.75 -596614.52 5680577.67 100.00 -596614.77 5680700.80 100.00 -596614.84 5682370.27 101.25 -596615.05 5681208.39 98.75 -596615.12 5683187.51 98.75 -596615.20 5679253.02 98.75 -596615.21 5679655.46 100.00 -596615.30 5681503.77 98.75 -596615.40 5682517.50 101.25 -596615.53 5683209.97 98.75 -596615.61 5677802.16 101.25 -596615.67 5680973.33 97.25 -596615.85 5679801.98 100.00 -596616.38 5681446.61 98.75 -596616.67 5680985.08 97.50 -596616.77 5682445.30 101.25 -596616.93 5678763.19 98.75 -596616.98 5682052.37 98.75 -596617.00 5678926.74 98.75 -596617.42 5680953.54 97.50 -596617.53 5677811.94 101.25 -596618.21 5681033.14 97.00 -596619.58 5678440.31 100.00 -596620.05 5681309.55 98.75 -596620.34 5680899.80 97.50 -596620.62 5681026.35 97.50 -596620.78 5677821.31 101.25 -596620.99 5682378.14 101.25 -596621.04 5680959.45 97.50 -596621.14 5681618.67 98.75 -596621.16 5681251.12 98.75 -596621.62 5681040.80 97.50 -596621.80 5682038.51 98.75 -596622.05 5682800.80 100.00 -596622.60 5682233.00 100.00 -596622.69 5683194.03 98.75 -596622.73 5683216.90 98.75 -596622.89 5681849.56 98.75 -596622.95 5680695.23 100.00 -596623.16 5680978.44 97.50 -596623.34 5681439.43 98.75 -596623.67 5682323.41 101.25 -596623.79 5678541.56 98.75 -596623.83 5681498.55 98.75 -596623.84 5680574.36 100.00 -596623.92 5679796.12 100.00 -596624.02 5682046.42 98.75 -596624.58 5681211.05 98.75 -596624.69 5680946.68 97.50 -596624.73 5679652.44 100.00 -596624.93 5682520.49 101.25 -596625.15 5679253.87 98.75 -596626.24 5677829.47 101.25 -596626.55 5678923.83 98.75 -596626.75 5682445.78 101.25 -596626.80 5682386.28 101.25 -596626.81 5681031.40 97.00 -596626.89 5678762.34 98.75 -596627.46 5681610.98 98.75 -596627.63 5680970.53 97.50 -596628.21 5680961.35 97.50 -596628.72 5678436.40 100.00 -596629.94 5683223.82 98.75 -596629.98 5681310.74 98.75 -596630.26 5683200.56 98.75 -596630.30 5681432.26 98.75 -596630.33 5680899.94 97.50 -596630.39 5681025.09 97.50 -596631.06 5681252.49 98.75 -596631.09 5681038.75 97.50 -596631.13 5680689.67 100.00 -596631.20 5682796.81 100.00 -596631.63 5680939.48 97.50 -596632.36 5681493.34 98.75 -596632.53 5682394.48 101.25 -596632.53 5682231.99 100.00 -596632.69 5681847.59 98.75 -596632.90 5677836.88 101.25 -596633.08 5679792.65 100.00 -596633.22 5680571.23 100.00 -596633.57 5682324.41 101.25 -596633.71 5678542.74 98.75 -596634.20 5679649.30 100.00 -596634.50 5681212.27 98.75 -596634.54 5682523.12 101.25 -596635.11 5679254.72 98.75 -596635.66 5681031.40 97.00 -596636.11 5678921.05 98.75 -596636.64 5678760.20 98.75 -596636.68 5681424.64 98.75 -596636.71 5682446.64 101.25 -596637.05 5681611.65 98.75 -596637.19 5683230.70 98.75 -596637.34 5683207.61 98.75 -596637.59 5678432.03 100.00 -596638.27 5677845.24 101.25 -596639.17 5682401.76 101.25 -596639.50 5681313.56 98.75 -596639.61 5680933.72 97.50 -596640.22 5680685.78 100.00 -596640.23 5681024.27 97.50 -596640.33 5680900.08 97.50 -596640.55 5682793.31 100.00 -596640.85 5681039.44 97.50 -596640.92 5681254.14 98.75 -596641.36 5681489.02 98.75 -596641.65 5681843.57 98.75 -596641.76 5681416.04 98.75 -596641.93 5682228.74 100.00 -596642.13 5681619.13 98.75 -596642.27 5681628.99 98.75 -596642.61 5680568.11 100.00 -596642.62 5677854.24 101.25 -596642.74 5679790.20 100.00 -596643.31 5682326.65 101.25 -596643.50 5679645.70 100.00 -596643.59 5678544.15 98.75 -596643.90 5681072.32 97.50 -596644.37 5681032.61 97.00 -596644.42 5683214.66 98.75 -596644.42 5681213.50 98.75 -596644.43 5683237.59 98.75 -596644.46 5682524.34 101.25 -596644.77 5681062.67 97.50 -596644.95 5681638.62 98.75 -596645.06 5679255.57 98.75 -596645.55 5678426.07 100.00 -596645.73 5678923.74 98.75 -596646.37 5678757.97 98.75 -596646.65 5682447.75 101.25 -596646.84 5681081.39 97.50 -596646.85 5681407.43 98.75 -596646.99 5681648.39 98.75 -596647.39 5682407.44 101.25 -596648.44 5681053.50 97.50 -596648.46 5681658.27 98.75 -596648.59 5680929.34 97.50 -596648.62 5681044.12 97.50 -596648.71 5677861.97 101.25 -596648.88 5681317.02 98.75 -596649.51 5680682.39 100.00 -596649.91 5682789.81 100.00 -596649.91 5681668.16 98.75 -596650.07 5681023.45 97.50 -596650.31 5680900.59 97.50 -596650.40 5681484.75 98.75 -596650.75 5681255.95 98.75 -596651.07 5681840.34 98.75 -596651.21 5681678.07 98.75 -596651.33 5682225.43 100.00 -596651.51 5683221.71 98.75 -596651.74 5683244.40 98.75 -596652.04 5679786.57 100.00 -596652.12 5681398.99 98.75 -596652.38 5680566.56 100.00 -596652.50 5681687.98 98.75 -596652.63 5681074.36 97.00 -596652.63 5679641.72 100.00 -596652.98 5681034.68 97.00 -596653.05 5681086.87 97.50 -596653.06 5682328.90 101.25 -596653.48 5678545.56 98.75 -596653.53 5678420.15 100.00 -596653.94 5681216.35 98.75 -596653.98 5681064.73 97.00 -596654.39 5682525.39 101.25 -596654.87 5681697.56 98.75 -596654.96 5679256.83 98.75 -596655.20 5678926.89 98.75 -596655.32 5681055.10 97.00 -596655.62 5682413.13 101.25 -596655.93 5677868.88 101.25 -596656.23 5678756.56 98.75 -596656.58 5682448.92 101.25 -596657.53 5682057.93 98.75 -596658.05 5681045.82 97.00 -596658.21 5680927.04 97.50 -596658.65 5683228.70 98.75 -596658.70 5681318.85 98.75 -596658.85 5680679.13 100.00 -596658.97 5682785.77 100.00 -596659.14 5681080.52 97.50 -596659.44 5683250.76 98.75 -596659.81 5681021.89 97.50 -596660.01 5682048.24 98.75 -596660.06 5681392.92 98.75 -596660.14 5681482.59 98.75 -596660.21 5680900.02 97.50 -596660.56 5682067.23 98.75 -596660.62 5681256.50 98.75 -596660.82 5681838.36 98.75 -596661.09 5681703.79 98.75 -596661.10 5681070.87 97.50 -596661.15 5682223.64 100.00 -596661.33 5679782.95 100.00 -596661.40 5679636.95 100.00 -596661.58 5681036.76 97.00 -596661.80 5678414.63 100.00 -596662.04 5681061.04 97.50 -596662.12 5682332.83 101.25 -596662.14 5680564.90 100.00 -596662.39 5682038.54 98.75 -596663.26 5681219.94 98.75 -596663.30 5677875.58 101.25 -596663.41 5678546.34 98.75 -596664.35 5682526.19 101.25 -596664.55 5679259.50 98.75 -596664.56 5678930.37 98.75 -596664.98 5682415.73 101.25 -596665.31 5682076.02 98.75 -596665.79 5683235.69 98.75 -596666.20 5678755.97 98.75 -596666.34 5681052.59 97.50 -596666.51 5682450.09 101.25 -596666.91 5682779.70 100.00 -596667.15 5683257.13 98.75 -596668.01 5681386.86 98.75 -596668.03 5682030.29 98.75 -596668.13 5680926.18 97.50 -596668.26 5680676.11 100.00 -596668.53 5681320.68 98.75 -596669.23 5683214.41 100.00 -596669.25 5681479.10 98.75 -596669.51 5681020.03 97.50 -596670.03 5682084.83 98.75 -596670.04 5680898.21 97.50 -596670.16 5679632.17 100.00 -596670.32 5683205.37 100.00 -596670.46 5682338.31 101.25 -596670.56 5681255.43 98.75 -596670.74 5679779.60 100.00 -596670.76 5681837.32 98.75 -596670.77 5681034.36 97.00 -596670.82 5678410.67 100.00 -596670.97 5682221.85 100.00 -596671.06 5681703.63 98.75 -596671.57 5678937.40 98.75 -596671.67 5681225.28 98.75 -596671.77 5677880.88 101.25 -596671.88 5680563.18 100.00 -596672.57 5681044.93 97.50 -596673.24 5683242.25 98.75 -596673.40 5678546.24 98.75 -596673.63 5683222.18 100.00 -596673.66 5680835.21 97.50 -596674.01 5679262.70 98.75 -596674.21 5682093.91 98.75 -596674.31 5682526.51 101.25 -596674.85 5682773.64 100.00 -596674.93 5682416.72 101.25 -596675.77 5683262.14 98.75 -596675.98 5682453.28 101.25 -596676.11 5682024.40 98.75 -596676.17 5678755.38 98.75 -596676.37 5681381.47 98.75 -596677.16 5681472.99 98.75 -596677.58 5682103.24 98.75 -596677.94 5680674.08 100.00 -596678.09 5680926.91 97.50 -596678.24 5681249.49 98.75 -596678.28 5682344.55 101.25 -596678.35 5681322.47 98.75 -596678.42 5678944.67 98.75 -596678.89 5679627.34 100.00 -596678.93 5682142.84 98.75 -596678.94 5683200.85 100.00 -596679.21 5681018.18 97.50 -596679.48 5682113.05 98.75 -596679.50 5682152.80 98.75 -596679.72 5682132.88 98.75 -596679.89 5680896.56 97.50 -596679.92 5681230.93 98.75 -596679.97 5681031.95 97.00 -596680.16 5679776.31 100.00 -596680.23 5682162.77 98.75 -596680.31 5677886.03 101.25 -596680.34 5678407.87 100.00 -596680.51 5681839.23 98.75 -596680.52 5682122.91 98.75 -596680.53 5681701.30 98.75 -596680.79 5682220.05 100.00 -596681.23 5683228.37 100.00 -596681.27 5682766.22 100.00 -596681.34 5681240.57 98.75 -596681.62 5680561.46 100.00 -596682.10 5681042.56 97.50 -596682.12 5682172.56 98.75 -596682.27 5683246.51 98.75 -596682.47 5680830.49 97.50 -596683.39 5678546.13 98.75 -596683.44 5679265.99 98.75 -596684.19 5682018.52 98.75 -596684.27 5682525.80 101.25 -596684.30 5681466.09 98.75 -596684.41 5682182.28 98.75 -596684.89 5682417.64 101.25 -596685.06 5683265.43 98.75 -596685.27 5678951.94 98.75 -596685.35 5681377.08 98.75 -596685.43 5682456.55 101.25 -596685.99 5682350.91 101.25 -596686.15 5678755.13 98.75 -596686.40 5682757.65 100.00 -596686.95 5681693.64 98.75 -596687.27 5679621.92 100.00 -596687.63 5680672.04 100.00 -596687.94 5681319.63 98.75 -596688.05 5680927.73 97.50 -596688.65 5683199.63 100.00 -596689.00 5681016.94 97.50 -596689.18 5681029.66 97.00 -596689.25 5683233.98 100.00 -596689.74 5679774.26 100.00 -596689.79 5677889.19 101.25 -596689.85 5681842.36 98.75 -596689.87 5680896.97 97.50 -596690.09 5678960.59 98.75 -596690.16 5678406.31 100.00 -596690.29 5681458.12 98.75 -596690.46 5682190.18 98.75 -596690.66 5682218.86 100.00 -596691.31 5683250.78 98.75 -596691.33 5680832.61 97.50 -596691.41 5680560.00 100.00 -596691.53 5682749.08 100.00 -596691.71 5681040.30 97.50 -596692.86 5679269.33 98.75 -596692.96 5681685.68 98.75 -596693.33 5682014.49 98.75 -596693.38 5678546.15 98.75 -596693.67 5682357.31 101.25 -596694.24 5682525.09 101.25 -596694.31 5681372.66 98.75 -596694.39 5678969.61 98.75 -596694.85 5682418.56 101.25 -596694.88 5682459.82 101.25 -596694.91 5683267.15 98.75 -596695.04 5681449.33 98.75 -596695.64 5679616.48 100.00 -596696.14 5678755.13 98.75 -596697.32 5680670.06 100.00 -596697.43 5682197.11 98.75 -596697.52 5681316.79 98.75 -596697.81 5681848.39 98.75 -596697.92 5680929.31 97.50 -596697.97 5683217.50 100.50 -596698.04 5680839.41 97.50 -596698.15 5681677.14 98.75 -596698.34 5683199.67 100.00 -596698.51 5681027.84 97.00 -596698.56 5682741.98 100.00 -596698.69 5678978.62 98.75 -596698.80 5681015.75 97.50 -596698.94 5680895.93 97.50 -596699.01 5683234.82 100.00 -596699.27 5677892.35 101.25 -596699.51 5678403.03 100.00 -596699.68 5679775.09 100.00 -596700.64 5682219.09 100.00 -596700.65 5681441.10 98.75 -596700.90 5683253.43 98.75 -596701.22 5680558.72 100.00 -596701.32 5681038.03 97.50 -596701.36 5682363.72 101.25 -596702.14 5680848.48 97.50 -596702.45 5679271.71 98.75 -596702.50 5682010.51 98.75 -596702.82 5678987.72 98.75 -596702.88 5680886.74 97.50 -596703.16 5681368.00 98.75 -596703.35 5681668.60 98.75 -596703.36 5678546.21 98.75 -596703.97 5679610.99 100.00 -596704.21 5682524.48 101.25 -596704.62 5681855.71 98.75 -596704.66 5682461.51 101.25 -596704.78 5683268.63 98.75 -596704.84 5682418.98 101.25 -596705.06 5680858.04 97.50 -596705.58 5682734.87 100.00 -596705.78 5680877.18 97.50 -596706.12 5678755.12 98.75 -596706.32 5682201.65 98.75 -596706.83 5678996.87 98.75 -596707.04 5680668.21 100.00 -596707.06 5681433.48 98.75 -596707.31 5681314.78 98.75 -596707.79 5680930.90 97.50 -596707.84 5681026.03 97.00 -596707.98 5680867.60 97.50 -596707.98 5683201.38 100.00 -596708.60 5681014.56 97.50 -596708.73 5683235.42 100.00 -596708.76 5678399.40 100.00 -596708.96 5679777.64 100.00 -596709.12 5682370.02 101.25 -596709.16 5677893.68 101.25 -596709.56 5681660.88 98.75 -596710.42 5682220.81 100.00 -596710.53 5679006.11 98.75 -596710.70 5683255.26 98.75 -596710.93 5681035.77 97.50 -596711.05 5680557.69 100.00 -596711.42 5682006.02 98.75 -596711.86 5681862.50 98.75 -596711.99 5681363.34 98.75 -596712.30 5679605.50 100.00 -596712.43 5679271.94 98.75 -596712.46 5679015.91 98.75 -596712.58 5682727.75 100.00 -596713.27 5681916.75 98.75 -596713.35 5678546.43 98.75 -596713.75 5681908.05 98.75 -596714.20 5682524.48 101.25 -596714.37 5681925.58 98.75 -596714.39 5679025.71 98.75 -596714.63 5682462.32 101.25 -596714.76 5683268.96 98.75 -596714.83 5682419.41 101.25 -596715.17 5681427.63 98.75 -596715.66 5682205.20 98.75 -596716.11 5678755.12 98.75 -596716.32 5679035.51 98.75 -596716.71 5681315.53 98.75 -596716.76 5680666.36 100.00 -596716.79 5681653.98 98.75 -596716.86 5679783.74 100.00 -596717.00 5682376.17 101.25 -596717.08 5681023.97 97.00 -596717.41 5680933.58 97.50 -596717.61 5683203.15 100.00 -596717.77 5683231.65 100.00 -596717.80 5678395.27 100.00 -596718.00 5681011.58 97.50 -596718.22 5681998.87 98.75 -596718.25 5679045.31 98.75 -596718.84 5681901.24 98.75 -596718.89 5682945.75 100.00 -596719.08 5677894.90 101.25 -596719.21 5682720.27 100.00 -596719.78 5681357.07 98.75 -596719.86 5682223.98 100.00 -596720.36 5681915.52 98.50 -596720.48 5681033.31 97.50 -596720.69 5683255.48 98.75 -596720.94 5680557.64 100.00 -596721.00 5681865.64 98.75 -596721.16 5679601.12 100.00 -596721.34 5679054.81 98.75 -596721.69 5682937.43 100.00 -596722.24 5679270.10 98.75 -596722.45 5681927.46 98.75 -596723.33 5678546.65 98.75 -596723.58 5681422.31 98.75 -596723.61 5679791.07 100.00 -596724.00 5681647.06 98.75 -596724.19 5682524.49 101.25 -596724.43 5679064.31 98.75 -596724.53 5681991.12 98.75 -596724.60 5682463.14 101.25 -596724.73 5682953.11 100.00 -596724.75 5683269.28 98.75 -596724.80 5682420.08 101.25 -596724.89 5682382.32 101.25 -596724.94 5682208.92 98.75 -596725.05 5681321.00 98.75 -596725.66 5681019.87 97.00 -596725.81 5681349.77 98.75 -596725.81 5682712.78 100.00 -596726.08 5678755.71 98.75 -596726.47 5683227.17 100.00 -596726.48 5680664.50 100.00 -596726.50 5683207.25 100.00 -596726.79 5678391.03 100.00 -596726.85 5681904.98 98.75 -596726.92 5680931.26 97.50 -596727.36 5681008.44 97.50 -596727.50 5681339.92 98.75 -596727.88 5681637.85 98.75 -596727.91 5681330.06 98.75 -596728.91 5679073.13 98.75 -596728.96 5677893.86 101.25 -596729.04 5681921.77 98.75 -596729.06 5682227.81 100.00 -596729.15 5681485.04 98.75 -596729.83 5681030.11 97.50 -596729.96 5681982.72 98.75 -596730.23 5681912.94 98.75 -596730.26 5679798.52 100.00 -596730.40 5682932.88 100.00 -596730.60 5683256.51 98.75 -596730.68 5679598.10 100.00 -596730.83 5680557.71 100.00 -596730.99 5681865.87 98.75 -596731.30 5682704.43 100.00 -596731.42 5681494.78 98.75 -596731.63 5679266.77 98.75 -596731.96 5678550.87 98.75 -596732.12 5681628.81 98.75 -596732.83 5681419.31 98.75 -596733.11 5682387.95 101.25 -596733.96 5683220.97 100.00 -596734.04 5682212.98 98.75 -596734.17 5682524.59 101.25 -596734.23 5682955.85 100.00 -596734.23 5681015.78 97.00 -596734.30 5682422.99 101.25 -596734.47 5679081.43 98.75 -596734.56 5682463.95 101.25 -596734.74 5683269.61 98.75 -596735.05 5683211.56 100.00 -596735.34 5681503.96 98.75 -596735.38 5681974.32 98.75 -596735.62 5678386.48 100.00 -596735.85 5680661.38 100.00 -596735.85 5679806.63 100.00 -596735.86 5681003.41 97.50 -596736.03 5678756.50 98.75 -596736.34 5678633.44 98.75 -596736.42 5680928.17 97.50 -596736.47 5678643.42 98.75 -596736.68 5678653.41 98.75 -596736.84 5681479.34 98.75 -596736.86 5681620.01 98.75 -596737.04 5682696.26 100.00 -596737.28 5682233.47 100.00 -596737.87 5678623.57 98.75 -596738.83 5677892.34 101.25 -596738.85 5679259.87 98.75 -596739.17 5681026.92 97.50 -596739.42 5681513.08 98.75 -596739.53 5678613.72 98.75 -596739.74 5682929.98 100.00 -596739.89 5679815.73 100.00 -596739.95 5681522.92 98.75 -596740.00 5678556.79 98.75 -596740.03 5679089.73 98.75 -596740.30 5679595.77 100.00 -596740.46 5683258.18 98.75 -596740.64 5680558.97 100.00 -596740.71 5681965.87 98.75 -596740.92 5681864.71 98.75 -596741.48 5681532.71 98.75 -596741.67 5678603.97 98.75 -596741.90 5679250.64 98.75 -596741.95 5682392.63 101.25 -596742.41 5681010.95 97.00 -596742.47 5682218.34 98.75 -596742.49 5681611.80 98.75 -596742.69 5681420.99 98.75 -596743.01 5679240.74 98.75 -596743.03 5678660.86 98.75 -596743.30 5682688.48 100.00 -596743.34 5682427.14 101.25 -596743.43 5679230.76 98.75 -596743.59 5682959.03 100.00 -596743.92 5683273.10 98.75 -596743.95 5678594.24 98.75 -596743.98 5678381.11 100.00 -596744.01 5680997.85 97.50 -596744.16 5682524.82 101.25 -596744.45 5679221.05 98.75 -596744.48 5682465.16 101.25 -596745.04 5678564.91 98.75 -596745.15 5680658.02 100.00 -596745.16 5679098.25 98.75 -596745.19 5680923.39 97.50 -596745.50 5681541.71 98.75 -596745.51 5682239.13 100.00 -596745.79 5678584.45 98.75 -596745.92 5679823.68 100.00 -596745.99 5678757.30 98.75 -596746.01 5681957.39 98.75 -596746.64 5681480.94 98.75 -596746.88 5678574.52 98.75 -596747.63 5678668.90 98.75 -596748.51 5681023.73 97.50 -596748.63 5677893.60 101.25 -596748.74 5681604.00 98.75 -596748.97 5679107.48 98.75 -596749.21 5683262.85 98.75 -596749.40 5679212.38 98.75 -596749.48 5682929.09 100.00 -596749.72 5682680.87 100.00 -596750.21 5681867.58 98.75 -596750.28 5679595.61 100.00 -596750.45 5680560.23 100.00 -596750.56 5681006.06 97.00 -596750.74 5682223.94 98.75 -596750.95 5681426.18 98.75 -596750.96 5682396.97 101.25 -596751.04 5681550.03 98.75 -596751.42 5681949.00 98.75 -596751.48 5677745.09 101.25 -596751.76 5682432.54 101.25 -596751.95 5679831.63 100.00 -596752.03 5680992.09 97.50 -596752.34 5678375.73 100.00 -596752.47 5677735.66 101.25 -596752.79 5679116.72 98.75 -596752.82 5683277.63 98.75 -596752.95 5682962.21 100.00 -596753.60 5682244.97 100.00 -596753.61 5679203.32 98.75 -596753.72 5682527.59 101.25 -596754.16 5681595.65 98.75 -596754.28 5680919.39 97.50 -596754.37 5682466.64 101.25 -596754.46 5680654.66 100.00 -596754.69 5677754.55 101.25 -596755.21 5681485.29 98.75 -596755.78 5680928.55 97.50 -596755.79 5678756.20 98.75 -596756.11 5678674.18 98.75 -596756.58 5681558.35 98.75 -596756.60 5679125.95 98.75 -596756.66 5681018.26 97.50 -596756.67 5680938.50 97.50 -596757.14 5677727.41 101.25 -596757.42 5680948.47 97.50 -596757.58 5681941.12 98.75 -596757.81 5679194.26 98.75 -596757.81 5683267.94 98.75 -596758.06 5677896.72 101.25 -596758.10 5680958.44 97.50 -596758.11 5682675.45 100.00 -596758.17 5679839.40 100.00 -596758.17 5680984.36 97.50 -596758.55 5682230.18 98.75 -596758.70 5681001.17 97.00 -596758.83 5681586.82 98.75 -596759.13 5681431.91 98.75 -596759.15 5682931.18 100.00 -596759.32 5681871.70 98.75 -596759.32 5679135.53 98.75 -596759.66 5680968.26 97.50 -596759.80 5679598.02 100.00 -596759.81 5680563.32 100.00 -596759.93 5683284.46 98.75 -596759.97 5682401.30 101.25 -596760.23 5682437.85 101.25 -596760.39 5677762.71 101.25 -596760.40 5681567.34 98.75 -596760.50 5681493.66 98.75 -596761.04 5678370.95 100.00 -596761.18 5682251.46 100.00 -596761.26 5681577.22 98.75 -596761.38 5679185.03 98.75 -596761.55 5679145.26 98.75 -596762.26 5679175.08 98.75 -596762.69 5679155.13 98.75 -596762.78 5679165.11 98.75 -596762.82 5682962.81 100.00 -596763.15 5681503.30 98.75 -596763.24 5682530.63 101.25 -596763.73 5681933.25 98.75 -596763.77 5680651.30 100.00 -596764.26 5682468.12 101.25 -596764.32 5680976.63 97.50 -596764.45 5678679.67 98.75 -596764.58 5681012.37 97.50 -596765.47 5678753.75 98.75 -596766.05 5677722.89 101.25 -596766.05 5679845.52 100.00 -596766.35 5682236.42 98.75 -596766.45 5683292.03 98.75 -596766.60 5682670.37 100.00 -596766.65 5683272.50 98.75 -596766.69 5681878.45 98.75 -596767.13 5677900.90 101.25 -596767.29 5681512.35 98.75 -596767.36 5681437.57 98.75 -596767.71 5682258.98 100.00 -596768.41 5682406.57 101.25 -596768.43 5677768.39 101.25 -596768.94 5682932.18 100.00 -596769.02 5681924.81 98.75 -596769.04 5680566.87 100.00 -596769.12 5682442.43 101.25 -596769.12 5679601.59 100.00 -596769.96 5678366.57 100.00 -596770.78 5680983.70 97.50 -596771.46 5681005.30 97.50 -596772.16 5680646.13 100.00 -596772.31 5681886.68 98.75 -596772.42 5682534.54 101.25 -596772.58 5678685.46 98.75 -596772.61 5682963.97 100.00 -596772.89 5683299.67 98.75 -596773.01 5681520.37 98.75 -596773.70 5681915.98 98.75 -596774.02 5682266.72 100.00 -596774.08 5679851.36 100.00 -596774.11 5681906.03 98.75 -596774.16 5682242.66 98.75 -596774.26 5682467.98 101.25 -596774.33 5681896.04 98.75 -596774.34 5680849.51 100.00 -596774.34 5680859.28 100.00 -596774.62 5679957.98 100.00 -596774.97 5681444.05 98.75 -596775.01 5680868.87 100.00 -596775.14 5678751.27 98.75 -596775.27 5677719.30 101.25 -596775.87 5679948.08 100.00 -596776.16 5683275.59 98.75 -596776.16 5677905.19 101.25 -596776.40 5682412.59 101.25 -596776.59 5682670.59 100.00 -596777.13 5680840.24 100.00 -596777.17 5680997.54 97.50 -596777.28 5677773.01 101.25 -596777.46 5679607.04 100.00 -596777.79 5680571.49 100.00 -596778.00 5682447.01 101.25 -596778.35 5683307.97 98.75 -596778.49 5679966.57 100.00 -596778.76 5679938.66 100.00 -596778.82 5682932.40 100.00 -596779.16 5678362.82 100.00 -596779.41 5680987.92 97.50 -596779.50 5680909.64 97.50 -596779.68 5678692.39 98.75 -596779.84 5680877.37 100.00 -596780.07 5680919.08 97.50 -596780.23 5682274.53 100.00 -596780.38 5680640.62 100.00 -596780.52 5680831.08 100.00 -596780.57 5680928.53 97.50 -596780.67 5681526.76 98.75 -596780.81 5680947.82 97.50 -596780.91 5680937.99 97.50 -596781.88 5682536.53 101.25 -596782.02 5682248.82 98.75 -596782.31 5682965.88 100.00 -596782.32 5680903.35 97.50 -596782.60 5680957.37 97.50 -596782.86 5683316.89 98.75 -596782.92 5681450.10 98.75 -596783.56 5679854.49 100.00 -596783.82 5679930.24 100.00 -596783.86 5682419.24 101.25 -596783.90 5680821.91 100.00 -596784.03 5678746.71 98.75 -596784.20 5682467.08 101.25 -596784.35 5679974.65 100.00 -596784.45 5678701.16 98.75 -596784.94 5677909.85 101.25 -596784.98 5680885.49 100.00 -596785.09 5677717.44 101.25 -596785.43 5683279.05 98.75 -596785.69 5682453.14 101.25 -596785.76 5679612.58 100.00 -596786.31 5680576.48 100.00 -596786.38 5677777.13 101.25 -596786.57 5682670.82 100.00 -596786.86 5682281.95 100.00 -596787.01 5680633.35 100.00 -596787.25 5680930.95 97.50 -596787.65 5683325.63 98.75 -596788.44 5678359.26 100.00 -596788.60 5682931.02 100.00 -596788.86 5681532.50 98.75 -596788.94 5680964.42 97.50 -596788.99 5680987.94 97.50 -596789.26 5678709.91 98.75 -596789.90 5682254.97 98.75 -596790.65 5682461.62 101.25 -596790.73 5680814.92 100.00 -596791.04 5681455.93 98.75 -596791.41 5682425.79 101.25 -596791.43 5679923.78 100.00 -596791.64 5680901.95 97.50 -596791.80 5682968.59 100.00 -596791.83 5682535.65 101.25 -596792.55 5683286.06 98.75 -596792.57 5677916.31 101.25 -596792.92 5678742.16 98.75 -596793.03 5679857.63 100.00 -596793.36 5680625.76 100.00 -596793.65 5683333.63 98.75 -596793.65 5679976.78 100.00 -596794.10 5680888.99 100.00 -596794.13 5679618.00 100.00 -596794.17 5680582.48 100.00 -596794.44 5682288.44 100.00 -596794.58 5681173.74 97.50 -596795.04 5677717.53 101.25 -596795.24 5678717.92 98.75 -596795.25 5680914.89 97.25 -596795.49 5677781.24 101.25 -596795.58 5680926.66 97.50 -596796.32 5682668.83 100.00 -596797.55 5680807.93 100.00 -596797.66 5678355.56 100.00 -596797.91 5680968.21 97.50 -596798.26 5681531.25 98.75 -596798.40 5682929.87 100.00 -596798.57 5680988.14 97.50 -596798.59 5682259.90 98.75 -596798.86 5679917.17 100.00 -596799.02 5680617.68 100.00 -596799.16 5681461.75 98.75 -596799.29 5682431.95 101.25 -596799.42 5683293.31 98.75 -596800.04 5678735.55 98.75 -596800.04 5680590.18 100.00 -596800.22 5678726.40 98.75 -596800.85 5679863.66 100.00 -596800.91 5677921.50 101.25 -596800.92 5681166.63 97.50 -596801.10 5680901.95 97.50 -596801.18 5682971.73 100.00 -596801.23 5681834.83 97.50 -596801.79 5682535.07 101.25 -596801.87 5682295.10 100.00 -596802.81 5683337.46 98.75 -596802.83 5679962.58 100.15 -596803.02 5680599.46 100.00 -596803.09 5681826.51 97.50 -596803.21 5679622.14 100.00 -596803.55 5679976.83 100.00 -596803.59 5680887.11 100.00 -596804.01 5679908.62 100.00 -596804.09 5680609.18 100.00 -596804.35 5677785.81 101.25 -596804.48 5680923.85 97.50 -596804.58 5680801.15 100.00 -596805.01 5677718.06 101.25 -596805.84 5682665.94 100.00 -596806.39 5683300.43 98.75 -596806.70 5678351.42 100.00 -596806.72 5679871.41 100.00 -596806.98 5681467.92 98.75 -596807.16 5682438.11 101.25 -596807.33 5682264.74 98.75 -596807.36 5681527.34 98.75 -596807.49 5680969.80 97.50 -596807.84 5681842.13 97.50 -596808.11 5680988.56 97.50 -596808.17 5681160.69 97.50 -596808.29 5682930.09 100.00 -596808.83 5679899.93 100.00 -596809.80 5682300.75 100.00 -596810.19 5679880.75 100.00 -596810.24 5680904.28 97.50 -596810.38 5677924.70 101.25 -596810.55 5682974.86 100.00 -596810.95 5682953.40 100.50 -596811.74 5680794.50 100.00 -596811.78 5682535.30 101.25 -596811.79 5679890.40 100.00 -596812.11 5683341.13 98.75 -596812.35 5679626.13 100.00 -596812.45 5681825.66 97.50 -596812.95 5677790.89 101.25 -596813.10 5680884.89 100.00 -596813.43 5679975.41 100.00 -596813.65 5681475.36 98.75 -596813.74 5680922.35 97.50 -596813.77 5680832.26 100.50 -596814.20 5683306.67 98.75 -596814.79 5682661.51 100.00 -596814.99 5677718.54 101.25 -596815.37 5681848.71 97.50 -596815.40 5681521.67 98.75 -596815.74 5678347.28 100.00 -596816.14 5682442.42 101.25 -596816.59 5682268.15 98.75 -596816.61 5681156.28 97.50 -596817.31 5680991.23 97.50 -596817.33 5680969.80 97.50 -596818.00 5682931.50 100.00 -596818.07 5680908.48 97.50 -596818.89 5681483.79 98.75 -596819.45 5680788.78 100.00 -596819.47 5680147.18 100.00 -596819.52 5682303.01 100.00 -596819.71 5680156.84 100.00 -596820.17 5677926.38 101.25 -596820.17 5682977.15 100.00 -596820.19 5680878.22 100.00 -596820.39 5680916.93 97.50 -596820.50 5681513.07 98.75 -596821.38 5681493.45 98.75 -596821.55 5677795.98 101.25 -596821.59 5682537.04 101.25 -596821.75 5679629.50 100.00 -596821.90 5681828.15 97.50 -596821.95 5683340.69 98.75 -596821.99 5681503.29 98.75 -596822.05 5679970.44 100.00 -596822.30 5680166.26 100.00 -596822.33 5680137.68 100.00 -596822.98 5683309.14 98.75 -596823.79 5678341.48 100.00 -596824.49 5681852.44 97.50 -596824.52 5682659.59 100.00 -596824.98 5677718.93 101.25 -596825.36 5681152.66 97.50 -596825.40 5680996.14 97.50 -596825.69 5682445.34 101.25 -596826.30 5680128.66 100.00 -596826.41 5682269.95 98.75 -596826.70 5680871.04 100.00 -596826.82 5680971.32 97.50 -596827.53 5682934.13 100.00 -596828.20 5680174.24 100.00 -596828.66 5680785.52 100.00 -596829.45 5682303.37 100.00 -596829.70 5677801.73 101.25 -596829.79 5682979.44 100.00 -596830.11 5677927.37 101.25 -596830.60 5679965.30 100.00 -596830.80 5678334.46 100.00 -596830.86 5681832.57 97.50 -596831.19 5679632.68 100.00 -596831.33 5680862.44 100.00 -596831.38 5682539.06 101.25 -596831.84 5683339.44 98.75 -596831.86 5680120.68 100.00 -596832.49 5683306.42 98.75 -596833.05 5681001.91 97.50 -596834.04 5681855.40 97.50 -596834.09 5680182.22 100.00 -596834.41 5682658.17 100.00 -596834.63 5681150.51 97.50 -596834.92 5677718.59 101.25 -596835.32 5682448.03 101.25 -596835.62 5680975.72 97.50 -596835.96 5680853.84 100.00 -596836.31 5682269.60 98.75 -596836.41 5682938.47 100.00 -596837.19 5678326.95 100.00 -596837.63 5677807.82 101.25 -596837.91 5680782.57 100.00 -596839.19 5679960.21 100.00 -596839.40 5682979.80 100.00 -596839.42 5682303.43 100.00 -596839.75 5677926.57 101.25 -596840.23 5681836.05 97.50 -596840.56 5680115.90 100.00 -596840.57 5681007.83 97.50 -596840.81 5683335.02 98.75 -596840.99 5678317.76 100.00 -596841.00 5679634.50 100.00 -596841.16 5682541.09 101.25 -596841.47 5683302.04 98.75 -596841.49 5680845.80 100.00 -596842.77 5680186.56 100.00 -596843.48 5681858.65 97.50 -596843.56 5681147.34 97.50 -596843.82 5680981.08 97.50 -596844.03 5682452.81 101.25 -596844.33 5682657.18 100.00 -596844.79 5677717.05 101.25 -596844.91 5678308.63 100.00 -596844.99 5682943.30 100.00 -596845.55 5677813.90 101.25 -596846.25 5682268.61 98.75 -596847.24 5680837.90 100.00 -596847.60 5680783.76 100.00 -596847.84 5679955.23 100.00 -596848.35 5681013.42 97.50 -596848.63 5677922.13 101.25 -596848.93 5682977.21 100.00 -596849.25 5680111.12 100.00 -596849.35 5681840.04 97.50 -596849.37 5682304.23 100.00 -596849.45 5678299.79 100.00 -596849.89 5683330.88 98.75 -596850.18 5682545.29 101.25 -596850.52 5683297.81 98.75 -596850.72 5679636.68 100.00 -596851.24 5682459.74 101.25 -596851.67 5680987.02 97.50 -596852.00 5680190.20 100.00 -596852.26 5681143.59 97.50 -596852.31 5680829.58 100.00 -596852.64 5681862.67 97.50 -596852.79 5682949.36 100.00 -596853.48 5677819.99 101.25 -596854.00 5678290.95 100.00 -596854.32 5682657.19 100.00 -596854.59 5677715.16 101.25 -596854.75 5677914.23 101.25 -596855.98 5681019.20 97.50 -596856.03 5682269.09 98.75 -596856.49 5679950.26 100.00 -596856.90 5680820.95 100.00 -596857.09 5680785.31 100.00 -596857.66 5681845.60 97.50 -596857.71 5682973.08 100.00 -596857.94 5680106.34 100.00 -596858.29 5680994.23 97.50 -596858.32 5682466.80 101.25 -596859.08 5682549.82 101.25 -596859.22 5682305.46 100.00 -596859.32 5683327.59 98.75 -596859.69 5682956.16 100.00 -596860.03 5683294.74 98.75 -596860.14 5679639.98 100.00 -596860.59 5678283.60 100.00 -596860.81 5677906.29 101.25 -596860.90 5677826.68 101.25 -596861.43 5681792.99 98.75 -596861.48 5680812.33 100.00 -596861.50 5680192.65 100.00 -596861.63 5681141.83 97.50 -596861.79 5681866.68 97.50 -596862.61 5681783.34 98.75 -596862.83 5680793.21 100.00 -596862.92 5680802.88 100.00 -596863.49 5682965.06 100.00 -596863.99 5681801.67 98.75 -596864.26 5677712.63 101.25 -596864.31 5682657.20 100.00 -596864.74 5681001.51 97.50 -596864.80 5681022.33 97.50 -596864.87 5682273.76 98.75 -596865.13 5679945.26 100.00 -596865.17 5682474.07 101.25 -596865.49 5681190.14 98.75 -596866.47 5679274.21 100.00 -596866.70 5679264.22 100.00 -596866.85 5677898.33 101.25 -596866.89 5680102.09 100.00 -596867.46 5681846.57 97.50 -596867.61 5679254.40 100.00 -596867.61 5678276.56 100.00 -596867.98 5682554.36 101.25 -596868.32 5677833.37 101.25 -596868.43 5682309.31 100.00 -596868.75 5683324.29 98.75 -596869.28 5681198.43 98.75 -596869.55 5679643.29 100.00 -596869.57 5683291.79 98.75 -596870.34 5679283.30 100.00 -596870.75 5681139.56 97.50 -596870.95 5681870.70 97.50 -596871.03 5681778.00 98.75 -596871.25 5681808.50 98.75 -596871.30 5677889.42 101.25 -596871.33 5682481.92 101.25 -596871.39 5680193.36 100.00 -596871.51 5681183.42 98.75 -596872.15 5679245.52 100.00 -596873.64 5682278.53 98.75 -596873.92 5677710.11 101.25 -596874.03 5681004.77 97.50 -596874.13 5679941.13 100.00 -596874.22 5681024.10 97.50 -596874.25 5682657.95 100.00 -596874.33 5677841.31 101.25 -596874.71 5679292.28 100.00 -596875.49 5677880.34 101.25 -596875.97 5680098.09 100.00 -596876.62 5677850.80 101.25 -596876.77 5682314.65 100.00 -596876.99 5682558.65 101.25 -596877.35 5677870.70 101.25 -596877.45 5681846.97 97.50 -596877.77 5677860.73 101.25 -596878.10 5681202.76 98.75 -596878.19 5683321.00 98.75 -596878.19 5681133.61 97.50 -596878.34 5679647.84 100.00 -596878.37 5679237.71 100.00 -596879.09 5682488.22 101.25 -596879.14 5681772.22 98.75 -596879.15 5683288.94 98.75 -596879.93 5681812.27 98.75 -596880.25 5681874.33 97.50 -596881.26 5679299.60 100.00 -596881.29 5680194.07 100.00 -596881.29 5681181.83 98.75 -596881.72 5682284.41 98.75 -596883.16 5677706.31 101.25 -596883.49 5681006.43 97.50 -596883.66 5681025.67 97.50 -596883.76 5679938.52 100.00 -596884.15 5682659.31 100.00 -596884.20 5682321.28 100.00 -596884.58 5679229.89 100.00 -596885.05 5680094.09 100.00 -596885.63 5681127.66 97.50 -596886.16 5682562.64 101.25 -596886.60 5679653.44 100.00 -596887.01 5681766.10 98.75 -596887.27 5681845.22 97.50 -596887.38 5681206.24 98.75 -596887.39 5683317.11 98.75 -596887.78 5682493.16 101.25 -596888.74 5679306.22 100.00 -596888.86 5683286.67 98.75 -596889.47 5679221.20 100.00 -596889.74 5681877.48 97.50 -596889.80 5682290.29 98.75 -596889.83 5681813.26 98.75 -596890.72 5681119.83 97.50 -596891.18 5681182.51 98.75 -596891.20 5680194.32 100.00 -596891.25 5682328.35 100.00 -596892.36 5677702.40 101.25 -596893.04 5681027.60 97.50 -596893.27 5681005.35 97.50 -596893.39 5679935.90 100.00 -596894.04 5682659.41 100.00 -596894.12 5680090.09 100.00 -596894.21 5679212.40 100.00 -596894.39 5679659.60 100.00 -596894.46 5681759.61 98.75 -596894.88 5681111.26 97.50 -596895.32 5682566.62 101.25 -596896.48 5682498.10 101.25 -596896.50 5681210.14 98.75 -596896.70 5679311.96 100.00 -596896.95 5683314.61 98.75 -596897.08 5681843.27 97.50 -596897.87 5682296.18 98.75 -596897.99 5682335.71 100.00 -596898.75 5683285.25 98.75 -596898.95 5679203.61 100.00 -596899.07 5681102.70 97.50 -596899.23 5681880.64 97.50 -596899.50 5681751.01 98.75 -596899.73 5681812.02 98.75 -596901.07 5681183.20 98.75 -596901.12 5680194.55 100.00 -596901.29 5679666.81 100.00 -596901.48 5677698.33 101.25 -596901.60 5681031.51 97.50 -596903.02 5679933.28 100.00 -596903.11 5681005.48 97.50 -596903.20 5680086.09 100.00 -596903.26 5681094.15 97.50 -596903.92 5682657.95 100.00 -596904.10 5679195.06 100.00 -596904.53 5681742.40 98.75 -596904.70 5682569.60 101.25 -596904.98 5681084.78 97.50 -596905.57 5682302.53 98.75 -596905.60 5681214.07 98.75 -596905.67 5682342.01 100.00 -596906.17 5682500.18 101.25 -596906.31 5679314.68 100.00 -596906.85 5681841.22 97.50 -596906.87 5683313.84 98.75 -596906.91 5681075.47 97.50 -596907.38 5679254.16 101.25 -596907.84 5681038.51 97.50 -596908.31 5679262.91 101.25 -596908.35 5679673.86 100.00 -596908.36 5681733.20 98.75 -596908.73 5683285.36 98.75 -596908.81 5681883.47 97.50 -596909.47 5679186.64 100.00 -596909.54 5677692.65 101.25 -596909.57 5681811.50 98.75 -596910.33 5681047.54 97.50 -596910.45 5681066.63 97.50 -596910.73 5681185.21 98.75 -596911.03 5680194.78 100.00 -596911.04 5681057.07 97.50 -596912.16 5680081.84 100.00 -596912.18 5681723.99 98.75 -596912.19 5681008.08 97.50 -596912.26 5679929.51 100.00 -596912.89 5682309.32 98.75 -596913.40 5679246.37 101.25 -596913.70 5682347.94 100.00 -596913.81 5682656.50 100.00 -596913.81 5679177.77 100.00 -596914.69 5682569.83 101.25 -596914.70 5681218.00 98.75 -596915.49 5679680.83 100.00 -596915.92 5679317.40 100.00 -596915.97 5681837.15 97.50 -596916.05 5682501.71 101.25 -596916.25 5683317.28 98.75 -596916.41 5679168.12 100.00 -596916.84 5677685.83 101.25 -596916.94 5679267.70 101.25 -596917.19 5681715.62 98.75 -596917.55 5679079.16 100.00 -596918.45 5681886.12 97.50 -596918.62 5683286.13 98.75 -596918.79 5679069.46 100.00 -596918.84 5679089.06 100.00 -596919.00 5679158.48 100.00 -596919.18 5681814.14 98.75 -596920.14 5679098.96 100.00 -596920.22 5682316.12 98.75 -596920.31 5681187.78 98.75 -596920.34 5681013.59 97.50 -596920.62 5679924.33 100.00 -596920.93 5680195.42 100.00 -596920.93 5679148.72 100.00 -596920.97 5680077.29 100.00 -596921.04 5679240.13 101.25 -596921.43 5679108.86 100.00 -596921.67 5679059.90 100.00 -596921.82 5679138.77 100.00 -596921.90 5681206.89 99.00 -596922.09 5679118.81 100.00 -596922.14 5679128.80 100.00 -596922.82 5679687.60 100.00 -596922.88 5682351.65 100.00 -596923.27 5682653.54 100.00 -596923.79 5681221.95 98.75 -596924.13 5677679.00 101.25 -596924.17 5679050.23 100.00 -596924.19 5681022.22 97.50 -596924.40 5683322.31 98.75 -596924.63 5681708.98 98.75 -596924.67 5682570.05 101.25 -596924.72 5681044.46 97.50 -596925.05 5678657.57 100.00 -596925.53 5679320.12 100.00 -596925.57 5679272.48 101.25 -596925.72 5678667.54 100.00 -596925.90 5682503.43 101.25 -596925.94 5681837.91 97.50 -596926.40 5678677.50 100.00 -596926.67 5679040.56 100.00 -596926.68 5681026.51 97.50 -596927.23 5678648.01 100.00 -596927.24 5683290.91 98.75 -596927.35 5681053.35 97.50 -596927.68 5682322.76 98.75 -596928.12 5679917.74 100.00 -596928.12 5681888.58 97.50 -596928.30 5679233.45 101.25 -596928.34 5678687.26 100.00 -596928.80 5681816.77 98.75 -596929.32 5681191.91 98.75 -596929.40 5679030.97 100.00 -596929.79 5680072.74 100.00 -596930.04 5683330.56 98.75 -596930.24 5679694.28 100.00 -596930.60 5678638.61 100.00 -596930.80 5680196.37 100.00 -596930.87 5678696.92 100.00 -596932.43 5682354.49 100.00 -596932.45 5682649.60 100.00 -596932.62 5677673.80 101.25 -596932.88 5681225.91 98.75 -596933.00 5679021.65 100.00 -596933.58 5681019.57 97.50 -596934.02 5681058.40 97.50 -596934.18 5678629.29 100.00 -596934.19 5678706.31 100.00 -596934.20 5679277.26 101.25 -596934.35 5681708.09 98.75 -596934.63 5681160.00 97.50 -596934.66 5682570.28 101.25 -596934.84 5683339.30 98.75 -596934.88 5683297.35 98.75 -596935.33 5679910.85 100.00 -596935.37 5679321.62 100.00 -596935.44 5679226.64 101.25 -596935.52 5682328.95 98.75 -596935.75 5682505.12 101.25 -596935.90 5681838.68 97.50 -596936.60 5679012.33 100.00 -596936.97 5681822.38 98.75 -596937.07 5681150.58 97.50 -596938.04 5679700.41 100.00 -596938.11 5681888.43 97.50 -596938.20 5678715.45 100.00 -596938.28 5678620.18 100.00 -596938.31 5681010.95 97.50 -596938.33 5681196.05 98.75 -596938.74 5681165.54 97.50 -596938.84 5680068.76 100.00 -596939.35 5683348.21 98.75 -596940.21 5679003.02 100.00 -596940.67 5680197.35 100.00 -596941.32 5677668.89 101.25 -596941.63 5682645.66 100.00 -596941.75 5681141.99 97.50 -596942.22 5679903.63 100.00 -596942.22 5678724.60 100.00 -596942.25 5681055.24 97.50 -596942.31 5682355.91 100.00 -596942.37 5683303.95 98.75 -596942.38 5678611.07 100.00 -596942.52 5681226.89 98.75 -596942.71 5681182.10 98.00 -596942.76 5681002.18 97.50 -596943.13 5679220.98 101.25 -596943.71 5679279.38 101.25 -596943.99 5678993.78 100.00 -596944.02 5683357.05 98.75 -596944.21 5681708.99 98.75 -596944.57 5682569.05 101.25 -596944.94 5682332.19 98.75 -596944.97 5681828.33 98.75 -596945.06 5681046.74 97.50 -596945.31 5679322.55 100.00 -596945.67 5682506.38 101.25 -596945.76 5681840.17 97.50 -596946.24 5678733.74 100.00 -596946.48 5678601.97 100.00 -596946.91 5679704.97 100.00 -596947.07 5680993.34 97.50 -596947.47 5681199.83 98.75 -596947.51 5681175.32 98.00 -596947.58 5681134.22 97.50 -596947.77 5678984.54 100.00 -596948.11 5681888.28 97.50 -596948.13 5681164.76 97.50 -596948.22 5680065.51 100.00 -596948.82 5678827.72 100.00 -596949.10 5683311.34 98.75 -596949.11 5679896.41 100.00 -596949.62 5678837.63 100.00 -596949.71 5681039.11 97.50 -596950.39 5683364.66 98.75 -596950.42 5677665.25 101.25 -596950.52 5680198.56 100.00 -596950.56 5678742.74 100.00 -596950.74 5678847.55 100.00 -596950.83 5678817.93 100.00 -596950.92 5681186.09 98.00 -596951.04 5682642.36 100.00 -596951.40 5678975.24 100.00 -596951.86 5678857.48 100.00 -596952.22 5682355.60 100.00 -596952.42 5681226.47 98.75 -596952.65 5678594.14 100.00 -596952.90 5679219.55 101.25 -596953.10 5678808.24 100.00 -596953.31 5678867.35 100.00 -596953.49 5679280.70 101.25 -596953.68 5678965.52 100.00 -596953.98 5681711.00 98.75 -596954.19 5681831.97 98.75 -596954.28 5680987.05 97.50 -596954.46 5682567.71 101.25 -596954.67 5682332.66 98.75 -596955.07 5678751.65 100.00 -596955.13 5681128.30 97.50 -596955.25 5679323.50 100.00 -596955.30 5678877.13 100.00 -596955.36 5683319.02 98.75 -596955.47 5681842.54 97.50 -596955.59 5682507.63 101.25 -596955.79 5679709.53 100.00 -596955.96 5678955.79 100.00 -596955.99 5679889.19 100.00 -596956.62 5681176.33 98.00 -596956.93 5681202.81 98.75 -596957.29 5683371.89 98.75 -596957.29 5678886.92 100.00 -596957.34 5678799.19 100.00 -596957.51 5681162.00 97.50 -596957.59 5680062.26 100.00 -596957.85 5681034.67 97.50 -596958.10 5681887.88 97.50 -596958.24 5678946.07 100.00 -596958.94 5678586.38 100.00 -596959.01 5678896.76 100.00 -596959.23 5683328.23 98.75 -596959.45 5681189.84 98.00 -596959.58 5678760.56 100.00 -596959.94 5678936.24 100.00 -596960.36 5680199.77 100.00 -596960.37 5677664.37 101.25 -596960.62 5682639.52 100.00 -596960.63 5678906.61 100.00 -596961.06 5678770.27 100.00 -596961.34 5678926.35 100.00 -596961.50 5678780.24 100.00 -596961.58 5678790.15 100.00 -596962.13 5682354.47 100.00 -596962.25 5678916.47 100.00 -596962.32 5681226.06 98.75 -596962.49 5680981.63 97.50 -596962.66 5679218.11 101.25 -596962.85 5681122.61 97.50 -596962.87 5679881.96 100.00 -596963.01 5679278.64 101.25 -596963.63 5681835.17 98.75 -596963.65 5683379.60 98.75 -596963.65 5681711.95 98.75 -596964.00 5682332.48 98.75 -596964.37 5682566.38 101.25 -596964.61 5679714.19 100.00 -596965.19 5681844.90 97.50 -596965.19 5679324.48 100.00 -596965.24 5678578.63 100.00 -596965.27 5682506.99 101.25 -596965.45 5683335.86 98.75 -596965.64 5681178.66 98.00 -596966.38 5681205.79 98.75 -596966.92 5681032.82 97.50 -596966.95 5681162.37 97.50 -596967.05 5680059.64 100.00 -596968.05 5681886.99 97.50 -596968.41 5681192.43 98.00 -596968.43 5683388.06 98.75 -596969.53 5683407.93 98.75 -596969.58 5683397.94 98.75 -596969.60 5681777.66 99.25 -596969.78 5679874.76 100.00 -596970.14 5680201.42 100.00 -596970.35 5677664.47 101.25 -596970.46 5682638.66 100.00 -596970.75 5681117.17 97.50 -596971.02 5682350.03 100.00 -596971.06 5683417.62 98.75 -596971.38 5680977.90 97.50 -596971.89 5681228.39 98.75 -596972.42 5679216.68 101.25 -596972.54 5679276.38 101.25 -596972.55 5678571.84 100.00 -596972.94 5683342.25 98.75 -596972.98 5681708.43 98.75 -596972.99 5682328.13 98.75 -596973.43 5681836.97 98.75 -596973.44 5679718.84 100.00 -596974.27 5682565.10 101.25 -596974.33 5681182.01 98.00 -596974.35 5681167.86 97.50 -596974.51 5682503.16 101.25 -596974.86 5683426.87 98.75 -596974.91 5681847.23 97.50 -596975.13 5679325.46 100.00 -596975.83 5681208.79 98.75 -596976.05 5681033.82 97.50 -596976.95 5680060.20 100.00 -596977.04 5681195.91 98.00 -596977.11 5679867.99 100.00 -596978.01 5681886.10 97.50 -596978.64 5681111.72 97.50 -596979.83 5682345.34 100.00 -596979.88 5680203.28 100.00 -596979.92 5678565.09 100.00 -596980.05 5681175.78 97.50 -596980.08 5683435.31 98.75 -596980.34 5677664.74 101.25 -596980.35 5682639.38 100.00 -596981.05 5680976.10 97.50 -596981.41 5681231.17 98.75 -596981.41 5679212.83 101.25 -596981.46 5682322.85 98.75 -596982.32 5679723.40 100.00 -596982.39 5681705.14 98.75 -596982.41 5679276.60 101.25 -596982.44 5683345.34 98.75 -596982.63 5681186.19 98.00 -596983.28 5681838.06 98.75 -596983.61 5682499.01 101.25 -596984.18 5682563.82 101.25 -596984.42 5681037.66 97.50 -596984.44 5679861.22 100.00 -596984.65 5681849.45 97.50 -596984.97 5681212.36 98.75 -596985.05 5679326.54 100.00 -596985.86 5681198.77 98.00 -596986.02 5681105.63 97.50 -596986.85 5680060.76 100.00 -596987.28 5678558.34 100.00 -596987.70 5681180.69 97.50 -596987.70 5681888.22 97.50 -596988.28 5682340.04 100.00 -596988.56 5683439.81 98.75 -596989.11 5681046.02 97.50 -596989.19 5681192.60 98.00 -596989.69 5680203.72 100.00 -596989.76 5682642.76 100.00 -596989.81 5682317.36 98.75 -596989.89 5681226.96 98.75 -596990.33 5677665.01 101.25 -596990.65 5680975.46 97.50 -596990.67 5681030.07 97.50 -596990.69 5679209.68 101.25 -596990.94 5683350.58 98.75 -596991.19 5679727.96 100.00 -596991.72 5681705.40 98.75 -596991.98 5679854.69 100.00 -596992.14 5681218.92 98.75 -596992.27 5679276.77 101.25 -596992.82 5682495.15 101.25 -596992.99 5681099.04 97.50 -596993.22 5681837.33 98.75 -596994.00 5681054.28 97.50 -596994.09 5682562.53 101.25 -596994.63 5681850.03 97.50 -596994.64 5678551.59 100.00 -596994.65 5679329.31 100.00 -596995.57 5679245.13 101.50 -596996.67 5682334.65 100.00 -596996.76 5680061.32 100.00 -596996.95 5681177.51 97.50 -596997.36 5681890.83 97.50 -596997.36 5681022.98 97.50 -596997.81 5681091.12 97.50 -596997.97 5681063.00 97.50 -596998.05 5683357.17 98.75 -596998.15 5683438.32 98.75 -596998.48 5682312.39 98.75 -596998.49 5682647.56 100.00 -596998.66 5679734.52 100.00 -596999.56 5680202.77 100.00 -596999.58 5681710.71 98.75 -596999.68 5679848.34 100.00 -596999.71 5681072.26 97.50 -596999.93 5681081.85 97.50 -597000.02 5680978.43 97.50 -597000.30 5679207.44 101.25 -597000.31 5677664.56 101.25 -597000.60 5680136.03 100.50 -597001.01 5678543.91 100.00 -597002.14 5679276.64 101.25 -597002.27 5682491.88 101.25 -597003.00 5683365.86 98.75 -597003.01 5681170.33 97.50 -597003.09 5681836.26 98.75 -597004.02 5682562.87 101.25 -597004.24 5679332.09 100.00 -597004.52 5681719.37 98.75 -597004.58 5681850.27 97.50 -597005.44 5679741.77 100.00 -597005.66 5681017.70 97.50 -597005.82 5683432.34 98.75 -597005.98 5682331.06 100.00 -597006.62 5681161.33 97.50 -597006.66 5680061.88 100.00 -597006.79 5679841.34 100.00 -597007.14 5682652.55 100.00 -597007.15 5681892.43 97.50 -597007.16 5682307.44 98.75 -597007.32 5678536.17 100.00 -597007.94 5683374.54 98.75 -597009.44 5680201.81 100.00 -597009.55 5680980.78 97.50 -597009.86 5681727.78 98.75 -597009.91 5679205.21 101.25 -597010.07 5681152.44 97.50 -597010.29 5677664.24 101.25 -597010.92 5679750.11 100.00 -597011.29 5680895.52 98.75 -597011.72 5682488.61 101.25 -597011.78 5683424.40 98.75 -597012.00 5679276.57 101.25 -597012.43 5681832.77 98.75 -597013.60 5678528.40 100.00 -597013.79 5679834.23 100.00 -597013.82 5681012.24 97.50 -597013.90 5682564.15 101.25 -597014.10 5679333.70 100.00 -597014.31 5681847.98 97.50 -597015.30 5682327.47 100.00 -597015.37 5681736.09 98.75 -597016.02 5679758.64 100.00 -597016.11 5682656.94 100.00 -597016.50 5682304.05 98.75 -597016.56 5680062.44 100.00 -597017.14 5681892.51 97.50 -597017.31 5683416.11 98.75 -597017.74 5683375.80 98.75 -597018.43 5681151.19 97.50 -597019.21 5680200.27 100.00 -597019.22 5679768.09 100.00 -597019.23 5680982.50 97.50 -597019.32 5681211.33 97.50 -597019.45 5681202.17 97.50 -597019.67 5679206.66 101.25 -597019.77 5678520.55 100.00 -597020.26 5679826.79 100.00 -597020.28 5677664.24 101.25 -597020.57 5680891.79 98.75 -597020.77 5681005.29 97.50 -597020.85 5679777.89 100.00 -597020.88 5681744.40 98.75 -597020.91 5682484.68 101.25 -597021.77 5681829.28 98.75 -597021.87 5679276.80 101.25 -597022.02 5679787.81 100.00 -597022.72 5681192.95 97.50 -597022.88 5681220.44 97.50 -597023.18 5679797.72 100.00 -597023.41 5679817.32 100.00 -597023.50 5682566.92 101.25 -597023.96 5679335.28 100.00 -597023.97 5683408.66 98.75 -597024.04 5681845.69 97.50 -597024.35 5679807.63 100.00 -597024.59 5682323.83 100.00 -597025.34 5681183.53 97.50 -597025.51 5682659.58 100.00 -597025.57 5680997.07 97.50 -597025.94 5678512.70 100.00 -597026.11 5682301.28 98.75 -597026.46 5680063.06 100.00 -597026.82 5680987.92 97.50 -597027.14 5681892.55 97.50 -597027.29 5681155.14 97.50 -597027.56 5683374.64 98.75 -597027.71 5681174.04 97.50 -597027.82 5681751.54 98.75 -597028.89 5680198.08 100.00 -597029.41 5681227.22 97.50 -597029.43 5679208.10 101.25 -597029.91 5681164.51 97.50 -597029.93 5680888.33 98.75 -597030.09 5682480.76 101.25 -597030.26 5677663.80 101.25 -597030.79 5681825.31 98.75 -597031.73 5679277.02 101.25 -597031.76 5678504.58 100.00 -597032.22 5683403.31 98.75 -597033.12 5682569.62 101.25 -597033.77 5681843.40 97.50 -597033.82 5679336.86 100.00 -597033.88 5682320.18 100.00 -597034.88 5682296.57 98.75 -597034.89 5681758.57 98.75 -597035.50 5682659.84 100.00 -597036.36 5680063.69 100.00 -597036.79 5681889.94 97.50 -597037.31 5683372.48 98.75 -597037.53 5678496.43 100.00 -597037.71 5681818.13 98.75 -597038.24 5681230.56 97.50 -597038.57 5680195.89 100.00 -597039.22 5679209.35 101.25 -597039.53 5682477.50 101.25 -597039.63 5680885.90 98.75 -597040.22 5677663.04 101.25 -597040.94 5679940.10 98.75 -597041.19 5683398.91 98.75 -597041.36 5679930.34 98.75 -597041.37 5682017.01 98.75 -597041.40 5679275.32 101.25 -597041.69 5682314.07 100.00 -597041.91 5683354.87 98.75 -597042.28 5682007.11 98.75 -597042.59 5682026.93 98.75 -597043.01 5682570.99 101.25 -597043.14 5683364.55 98.75 -597043.30 5678488.28 100.00 -597043.43 5681763.71 98.75 -597043.51 5681841.11 97.50 -597043.53 5682291.57 98.75 -597043.68 5683346.06 98.75 -597043.76 5681997.24 98.75 -597043.79 5679337.17 100.00 -597044.62 5681810.95 98.75 -597045.16 5681885.25 97.50 -597045.45 5682660.78 100.00 -597045.76 5679921.45 98.75 -597046.17 5682035.91 98.75 -597046.26 5680064.32 100.00 -597046.44 5679947.07 98.75 -597047.73 5681048.81 98.75 -597047.89 5680192.52 100.00 -597047.99 5681231.35 97.50 -597048.50 5683392.47 98.75 -597048.68 5681988.97 98.75 -597049.02 5679210.51 101.25 -597049.02 5682474.38 101.25 -597049.22 5682307.51 100.00 -597049.32 5680883.46 98.75 -597050.15 5677662.07 101.25 -597050.70 5679913.00 98.75 -597050.77 5678481.74 100.00 -597051.00 5679273.07 101.25 -597051.06 5681770.10 98.75 -597051.18 5681803.44 98.75 -597051.18 5683339.57 98.75 -597051.74 5682285.99 98.75 -597051.82 5681877.80 97.50 -597052.07 5682043.98 98.75 -597052.55 5681837.29 97.50 -597052.76 5682570.29 101.25 -597052.83 5681056.20 98.75 -597053.25 5683383.72 98.75 -597053.76 5679337.08 100.00 -597054.40 5682663.93 100.00 -597054.76 5679952.46 98.75 -597055.52 5682001.48 100.00 -597056.18 5680064.60 100.00 -597056.32 5681226.35 97.50 -597056.62 5682300.81 100.00 -597056.81 5681983.15 98.75 -597056.89 5682011.18 100.00 -597057.22 5680189.14 100.00 -597057.40 5681777.41 98.75 -597057.62 5681795.83 98.75 -597057.97 5682052.05 98.75 -597057.98 5680878.69 98.75 -597058.19 5681063.39 98.75 -597058.49 5679906.87 98.75 -597058.61 5678475.55 100.00 -597058.77 5682472.24 101.25 -597058.77 5682278.89 98.75 -597058.81 5679211.67 101.25 -597059.47 5683334.00 98.75 -597059.71 5681871.70 97.50 -597059.83 5679268.68 101.25 -597059.96 5677660.19 101.25 -597060.04 5683377.24 98.75 -597060.34 5681786.94 98.75 -597060.74 5681831.55 97.50 -597061.16 5682020.14 100.00 -597061.21 5681994.98 100.00 -597061.69 5682670.76 100.00 -597062.35 5682567.51 101.25 -597063.55 5682293.64 100.00 -597063.68 5679335.89 100.00 -597063.89 5681070.32 98.75 -597064.04 5679955.79 98.75 -597064.48 5681220.96 97.50 -597064.97 5682059.16 98.75 -597064.99 5681977.41 98.75 -597065.79 5682271.78 98.75 -597066.09 5680064.82 100.00 -597066.29 5679900.74 98.75 -597066.30 5680873.14 98.75 -597066.45 5678469.36 100.00 -597066.55 5680185.76 100.00 -597066.75 5681684.18 97.50 -597066.84 5682028.34 100.00 -597067.32 5682678.97 100.00 -597067.34 5681693.28 97.50 -597067.50 5679262.78 101.25 -597068.06 5681866.37 97.50 -597068.31 5683331.10 98.75 -597068.42 5679213.81 101.25 -597068.48 5681674.33 97.50 -597068.56 5682470.23 101.25 -597069.18 5683373.21 98.75 -597069.20 5681188.14 97.50 -597069.36 5681826.50 97.50 -597069.59 5681077.25 98.75 -597069.90 5677659.27 101.25 -597070.20 5681664.49 97.50 -597070.27 5682286.26 100.00 -597070.37 5681991.66 100.00 -597071.11 5683789.04 98.75 -597071.40 5681178.66 97.50 -597071.86 5682564.47 101.25 -597072.07 5682687.61 100.00 -597072.11 5682066.16 98.75 -597072.23 5682526.94 101.86 -597072.59 5681215.48 97.50 -597072.67 5682884.31 100.00 -597072.78 5682264.64 98.75 -597072.99 5682697.55 100.00 -597073.54 5679958.62 98.75 -597073.59 5679334.68 100.00 -597073.65 5679894.13 98.75 -597073.85 5681655.18 97.50 -597073.98 5682707.49 100.00 -597073.99 5679255.34 101.25 -597074.00 5681974.10 98.75 -597074.17 5682034.95 100.00 -597074.23 5682894.18 100.00 -597074.29 5678463.17 100.00 -597074.55 5681700.20 97.50 -597074.62 5680867.59 98.75 -597075.01 5680973.35 98.75 -597075.03 5682717.43 100.00 -597075.37 5679219.51 101.25 -597075.56 5681083.96 98.75 -597075.71 5682875.21 100.00 -597075.87 5680182.39 100.00 -597076.01 5680065.05 100.00 -597077.08 5682727.01 100.00 -597077.18 5681191.14 97.50 -597077.69 5681863.69 97.50 -597077.71 5681171.56 97.50 -597077.83 5683333.50 98.75 -597078.33 5681822.24 97.50 -597078.46 5682903.20 100.00 -597078.49 5682469.44 101.25 -597078.56 5683369.75 98.75 -597079.01 5682281.61 100.00 -597079.22 5682257.10 98.75 -597079.24 5682073.16 98.75 -597079.26 5679247.32 101.25 -597079.73 5679228.37 101.25 -597079.87 5677658.58 101.25 -597080.25 5681647.84 97.50 -597080.32 5681992.51 100.00 -597080.60 5679887.05 98.75 -597080.81 5683790.20 98.75 -597081.03 5682866.86 100.00 -597081.11 5679237.63 101.25 -597081.18 5682560.86 101.25 -597081.58 5681090.62 98.75 -597081.90 5681212.77 97.50 -597082.13 5678456.99 100.00 -597082.21 5682040.87 100.00 -597082.32 5681706.49 97.50 -597082.34 5680861.26 98.75 -597082.53 5682735.38 100.00 -597083.45 5679958.35 98.75 -597083.51 5679333.45 100.00 -597083.84 5681975.05 98.75 -597083.85 5682248.24 98.75 -597084.13 5680977.13 98.75 -597084.27 5682911.14 100.00 -597084.50 5683340.94 98.75 -597085.14 5681165.21 97.50 -597085.57 5680180.63 100.00 -597085.93 5680065.27 100.00 -597086.35 5682080.18 98.75 -597086.66 5682275.73 100.00 -597086.83 5681189.60 97.50 -597087.32 5681861.01 97.50 -597087.52 5681138.24 97.50 -597087.54 5679879.97 98.75 -597087.98 5681147.48 97.50 -597088.05 5681819.91 97.50 -597088.05 5682471.77 101.25 -597088.09 5682859.79 100.00 -597088.19 5683369.86 98.75 -597088.48 5682239.38 98.75 -597088.72 5681642.81 97.50 -597089.34 5681156.80 97.50 -597089.37 5682742.63 100.00 -597089.85 5677658.98 101.25 -597089.97 5678450.80 100.00 -597089.98 5680854.81 98.75 -597090.08 5681994.17 100.00 -597090.15 5681712.70 97.50 -597090.19 5683792.90 98.75 -597090.24 5682046.80 100.00 -597090.41 5681208.37 97.50 -597090.48 5682557.22 101.25 -597091.17 5683348.38 98.75 -597091.41 5682918.14 100.00 -597091.69 5680983.26 98.75 -597091.74 5678679.80 101.25 -597091.91 5678670.04 101.25 -597092.31 5682267.50 100.00 -597092.63 5681131.03 97.50 -597093.08 5678689.70 101.25 -597093.11 5682230.53 98.75 -597093.28 5679334.22 100.00 -597093.36 5679958.08 98.75 -597093.44 5682087.23 98.75 -597093.53 5681977.49 98.75 -597094.06 5682851.91 100.00 -597094.52 5681193.24 97.50 -597094.54 5678699.57 101.25 -597095.15 5678660.59 101.25 -597095.44 5680179.62 100.00 -597095.79 5680064.81 100.00 -597096.29 5679875.46 98.75 -597096.51 5682749.59 100.00 -597096.60 5681857.32 97.50 -597096.70 5681815.01 97.50 -597097.11 5681201.85 97.50 -597097.13 5682258.80 100.00 -597097.37 5678444.12 100.00 -597097.46 5682475.14 101.25 -597097.68 5683372.76 98.75 -597097.83 5680848.62 98.75 -597098.13 5681718.57 97.50 -597098.22 5682052.80 100.00 -597098.30 5681642.48 97.50 -597098.39 5678651.13 101.25 -597098.49 5682222.10 98.75 -597098.54 5682925.14 100.00 -597098.67 5680990.25 98.75 -597098.72 5683354.90 98.75 -597098.73 5682843.08 100.00 -597098.85 5678708.58 101.25 -597099.13 5683796.70 98.75 -597099.40 5681997.75 100.00 -597099.65 5677658.32 101.25 -597099.77 5682553.54 101.25 -597100.40 5682094.40 98.75 -597101.27 5682249.72 100.00 -597102.26 5681129.84 97.50 -597102.75 5681727.43 97.50 -597102.93 5679336.78 100.00 -597103.16 5678717.60 101.25 -597103.24 5681979.86 98.75 -597103.25 5679957.42 98.75 -597103.45 5678642.58 101.25 -597103.89 5682213.70 98.75 -597104.50 5678437.12 100.00 -597104.63 5681809.04 97.50 -597104.79 5683379.41 98.75 -597104.97 5683022.90 100.00 -597105.14 5682835.53 100.00 -597105.25 5682754.43 100.00 -597105.30 5679871.31 98.75 -597105.30 5680178.62 100.00 -597105.42 5682240.64 100.00 -597105.43 5680997.43 98.75 -597105.58 5680063.17 100.00 -597105.72 5680842.48 98.75 -597105.76 5682932.04 100.00 -597105.79 5681853.38 97.50 -597106.02 5682059.03 100.00 -597106.49 5682479.35 101.25 -597106.53 5683361.13 98.75 -597106.80 5681736.55 97.50 -597107.19 5683031.49 100.00 -597107.36 5682101.57 98.75 -597107.47 5678726.62 101.25 -597107.98 5683800.78 98.75 -597108.04 5681644.71 97.50 -597108.60 5682001.61 100.00 -597108.99 5677654.78 101.25 -597108.99 5678634.27 101.25 -597109.05 5682549.86 101.25 -597109.25 5682205.26 98.75 -597109.59 5682231.57 100.00 -597110.30 5681745.92 97.50 -597110.45 5683387.63 98.75 -597111.05 5681005.55 98.75 -597111.51 5681801.79 97.50 -597111.63 5678430.13 100.00 -597111.79 5678735.63 101.25 -597111.85 5683618.45 100.00 -597111.86 5679341.13 100.00 -597111.86 5683625.44 100.00 -597111.87 5683016.70 100.00 -597112.04 5681129.84 97.50 -597112.21 5682828.47 100.00 -597112.68 5682939.17 100.00 -597112.97 5681982.14 98.75 -597113.13 5679956.50 98.75 -597113.26 5681846.88 97.50 -597113.62 5680836.35 98.75 -597113.80 5681755.28 97.50 -597113.82 5682065.26 100.00 -597113.98 5682759.28 100.00 -597114.26 5683367.44 98.75 -597114.30 5679867.16 98.75 -597114.31 5682108.75 98.75 -597114.34 5682222.84 100.00 -597114.42 5682196.71 98.75 -597114.54 5678625.95 101.25 -597115.03 5680176.74 100.00 -597115.36 5680061.53 100.00 -597115.44 5682483.75 101.25 -597115.67 5683036.77 100.00 -597115.71 5683396.13 98.75 -597116.10 5678744.65 101.25 -597116.68 5681013.67 98.75 -597116.69 5681764.83 97.50 -597117.05 5681793.75 97.50 -597117.11 5683804.27 98.75 -597117.33 5682948.01 100.00 -597117.34 5679916.12 98.50 -597117.41 5683760.70 98.75 -597117.72 5682005.66 100.00 -597117.73 5677650.03 101.25 -597117.76 5678422.40 100.00 -597118.38 5682546.30 101.25 -597119.04 5681774.55 97.50 -597119.22 5683612.65 100.00 -597119.27 5678617.15 101.25 -597119.51 5683375.94 98.75 -597119.60 5682188.17 98.75 -597120.11 5681784.23 97.50 -597120.25 5682214.80 100.00 -597120.47 5681839.98 97.50 -597120.56 5679346.03 100.00 -597120.66 5682823.25 100.00 -597120.73 5678753.50 101.25 -597120.85 5683404.70 98.75 -597120.94 5683628.49 100.00 -597121.08 5681134.05 97.50 -597121.21 5682115.97 98.75 -597121.34 5682071.74 100.00 -597121.40 5680830.07 98.75 -597121.46 5683013.91 100.00 -597122.37 5678413.53 100.00 -597122.67 5681984.55 98.75 -597122.71 5682764.15 100.00 -597123.00 5679955.58 98.75 -597123.09 5681021.14 98.75 -597123.90 5679864.78 98.75 -597123.94 5678608.32 101.25 -597124.72 5680174.62 100.00 -597124.77 5683384.44 98.75 -597124.78 5682179.62 98.75 -597124.92 5682486.91 101.25 -597124.92 5683040.35 100.00 -597124.92 5677577.79 101.25 -597125.18 5680060.19 100.00 -597125.36 5682953.74 100.00 -597125.38 5678762.35 101.25 -597125.63 5677644.16 101.25 -597125.97 5677587.54 101.25 -597126.50 5683761.63 98.75 -597126.63 5683412.70 98.75 -597126.81 5682080.09 100.00 -597126.82 5682207.29 100.00 -597126.97 5678404.67 100.00 -597127.05 5682009.21 100.00 -597127.09 5681141.60 97.50 -597127.12 5677568.36 101.25 -597127.34 5678598.93 101.25 -597127.54 5683620.15 100.50 -597128.12 5682123.20 98.75 -597128.16 5682544.27 101.25 -597128.44 5683611.49 100.00 -597128.64 5679351.87 100.00 -597128.96 5677597.07 101.25 -597128.99 5682170.58 98.75 -597129.08 5680823.67 98.75 -597129.17 5681835.05 97.50 -597129.40 5682818.42 100.00 -597129.99 5681028.22 98.75 -597130.04 5678771.19 101.25 -597130.64 5683628.71 100.00 -597130.67 5678589.50 101.25 -597130.85 5677635.64 101.25 -597131.03 5682769.52 100.00 -597131.06 5683011.21 100.00 -597131.42 5683391.71 98.75 -597131.57 5678395.81 100.00 -597131.97 5679951.34 98.75 -597131.99 5677606.59 101.25 -597132.16 5681150.18 97.50 -597132.32 5681987.13 98.75 -597132.62 5682131.91 98.75 -597132.91 5682161.39 98.75 -597133.18 5677560.41 101.25 -597133.18 5677626.15 101.25 -597133.45 5682087.53 100.00 -597133.49 5682199.86 100.00 -597133.59 5679862.67 98.75 -597133.78 5682959.12 100.00 -597134.00 5678580.08 101.25 -597134.08 5682151.62 98.75 -597134.13 5677616.20 101.25 -597134.16 5682141.63 98.75 -597134.27 5680171.98 100.00 -597134.49 5683043.22 100.00 -597134.66 5682488.78 101.25 -597134.87 5683418.20 98.75 -597135.00 5681159.62 97.50 -597135.05 5680059.17 100.00 -597135.06 5678386.46 100.00 -597135.16 5683764.68 98.75 -597135.38 5678779.63 101.25 -597136.22 5682013.09 100.00 -597136.51 5679358.02 100.00 -597136.76 5680817.27 98.75 -597136.98 5681169.40 97.50 -597137.29 5678570.64 101.25 -597137.46 5681034.53 98.75 -597137.62 5682812.87 100.00 -597137.72 5682776.94 100.00 -597137.78 5683613.81 100.00 -597137.86 5681830.12 97.50 -597137.94 5682542.25 101.25 -597138.43 5678377.05 100.00 -597138.96 5681179.17 97.50 -597139.18 5683398.00 98.75 -597139.74 5683626.97 100.00 -597140.14 5682094.94 100.00 -597140.18 5682192.45 100.00 -597140.36 5678561.13 101.25 -597140.79 5678788.03 101.25 -597140.94 5679947.11 98.75 -597141.03 5683011.81 100.00 -597141.41 5681188.82 97.50 -597141.55 5682785.95 100.00 -597141.80 5678367.65 100.00 -597141.84 5681990.01 98.75 -597142.59 5677557.89 101.25 -597142.65 5682963.70 100.00 -597143.28 5679860.56 98.75 -597143.43 5678551.62 101.25 -597143.67 5680168.80 100.00 -597143.76 5683767.85 98.75 -597143.81 5682805.48 100.00 -597144.20 5683619.36 100.00 -597144.29 5682795.55 100.00 -597144.38 5679364.16 100.00 -597144.44 5683043.68 100.00 -597144.44 5680810.88 98.75 -597144.48 5683420.92 98.75 -597144.56 5681198.28 97.50 -597144.61 5682489.63 101.25 -597144.75 5682018.27 100.00 -597144.92 5680058.15 100.00 -597145.18 5678358.25 100.00 -597146.18 5681039.18 98.75 -597146.56 5681825.19 97.50 -597146.80 5678542.23 101.25 -597146.81 5682102.37 100.00 -597147.04 5682185.21 100.00 -597147.09 5683403.99 98.75 -597147.62 5678795.23 101.25 -597147.72 5682540.23 101.25 -597147.96 5681207.64 97.50 -597148.55 5678348.85 100.00 -597149.90 5679942.88 98.75 -597150.06 5682057.86 101.25 -597150.09 5681995.65 98.75 -597150.53 5680802.99 98.75 -597150.97 5683012.74 100.00 -597151.03 5678533.17 101.25 -597151.56 5682968.23 100.00 -597151.62 5683772.59 98.75 -597151.75 5682111.04 100.00 -597151.78 5681216.86 97.50 -597152.00 5679370.60 100.00 -597152.01 5677560.32 101.25 -597152.27 5682065.38 101.25 -597152.45 5678339.68 100.00 -597152.86 5682177.23 100.00 -597152.92 5682023.95 100.00 -597152.98 5679858.55 98.75 -597153.06 5680165.62 100.00 -597154.13 5683423.36 98.75 -597154.35 5683044.60 100.00 -597154.52 5682490.87 101.25 -597154.78 5680057.13 100.00 -597154.91 5681043.80 98.75 -597155.07 5678801.89 101.25 -597155.25 5678524.12 101.25 -597155.59 5681226.07 97.50 -597155.84 5681821.46 97.50 -597156.38 5682119.89 100.00 -597156.39 5680794.89 98.75 -597156.90 5678330.74 100.00 -597156.94 5683405.61 98.75 -597157.12 5683779.37 98.75 -597157.28 5682168.28 100.00 -597157.69 5682540.21 101.25 -597157.83 5682054.17 101.25 -597158.34 5682001.28 98.75 -597158.57 5682072.57 101.25 -597158.80 5679938.52 98.75 -597159.00 5679377.72 100.00 -597159.06 5681235.41 97.50 -597159.91 5683788.02 98.75 -597160.08 5682129.03 100.00 -597160.09 5682158.88 100.00 -597160.22 5678515.47 101.25 -597160.46 5682972.77 100.00 -597160.46 5677565.56 101.25 -597160.54 5683797.17 98.75 -597160.57 5682030.36 100.00 -597160.85 5682138.98 100.00 -597160.88 5683013.23 100.00 -597160.96 5682148.93 100.00 -597161.24 5683806.33 98.75 -597161.24 5681406.02 98.75 -597161.35 5678321.79 100.00 -597161.88 5680161.18 100.00 -597162.09 5681600.28 97.50 -597162.11 5683815.46 98.75 -597162.25 5680786.79 98.75 -597162.52 5678808.55 101.25 -597162.57 5681244.75 97.50 -597162.85 5679859.47 98.75 -597163.68 5681048.34 98.75 -597163.88 5681538.96 98.75 -597164.10 5683422.68 98.75 -597164.11 5683046.73 100.00 -597164.15 5681397.88 98.75 -597164.40 5682492.35 101.25 -597164.65 5680056.11 100.00 -597165.12 5681414.92 98.75 -597165.14 5681817.80 97.50 -597165.54 5681529.39 98.75 -597165.65 5678507.08 101.25 -597165.95 5682078.68 101.25 -597165.96 5683823.44 98.75 -597166.00 5679384.84 100.00 -597166.40 5678313.26 100.00 -597166.56 5679035.38 100.00 -597166.59 5681253.87 97.50 -597166.59 5682006.92 98.75 -597166.64 5679045.31 100.00 -597166.67 5683407.93 98.75 -597167.03 5681592.55 97.50 -597167.05 5679933.02 98.75 -597167.18 5679025.69 100.00 -597167.36 5682054.49 101.25 -597167.43 5681519.87 98.75 -597167.68 5682540.43 101.25 -597168.00 5677572.05 101.25 -597168.51 5681424.01 98.75 -597169.10 5682035.52 100.00 -597169.39 5680779.92 98.75 -597169.62 5681510.41 98.75 -597169.79 5682976.09 100.00 -597169.97 5678815.21 101.25 -597170.42 5680156.13 100.00 -597170.58 5679053.81 100.00 -597170.61 5681263.00 97.50 -597170.84 5683012.38 100.00 -597171.05 5681433.33 98.75 -597171.08 5678498.69 101.25 -597171.38 5683652.23 100.00 -597171.39 5681500.87 98.75 -597171.50 5683830.76 98.75 -597172.24 5681442.97 98.75 -597172.41 5681394.85 98.75 -597172.46 5681052.88 98.75 -597172.72 5679860.38 98.75 -597172.79 5681537.39 98.75 -597172.93 5678305.69 100.00 -597172.98 5681491.29 98.75 -597173.25 5679017.84 100.00 -597173.41 5681452.61 98.75 -597173.45 5683660.35 100.00 -597173.47 5679391.38 100.00 -597173.71 5682084.23 101.25 -597173.85 5681481.63 98.75 -597173.88 5683048.80 100.00 -597173.93 5683423.65 98.75 -597174.27 5682493.87 101.25 -597174.42 5681471.94 98.75 -597174.45 5681814.15 97.50 -597174.50 5681293.93 97.50 -597174.50 5681462.26 98.75 -597174.53 5680055.27 100.00 -597174.75 5679926.81 98.75 -597174.88 5682012.50 98.75 -597174.92 5681589.42 97.50 -597174.99 5677579.19 101.25 -597175.00 5681271.94 97.50 -597175.61 5682072.21 101.30 -597176.40 5683410.19 98.75 -597176.50 5678490.30 101.25 -597176.84 5682055.86 101.25 -597176.99 5679061.39 100.00 -597177.23 5680773.72 98.75 -597177.44 5682538.67 101.25 -597177.85 5682040.32 100.00 -597178.51 5681529.54 98.75 -597178.87 5678819.72 101.25 -597178.95 5680151.08 100.00 -597179.45 5678298.13 100.00 -597179.55 5682978.23 100.00 -597179.76 5681302.41 97.50 -597180.40 5681280.11 97.50 -597180.68 5682798.24 100.26 -597180.76 5683011.32 100.00 -597180.76 5679011.98 100.00 -597180.88 5683650.95 100.00 -597180.94 5678481.34 101.25 -597181.17 5677587.02 101.25 -597181.30 5681398.36 98.75 -597181.71 5681056.19 98.75 -597181.92 5679396.71 100.00 -597182.01 5683663.49 100.00 -597182.10 5682088.86 101.25 -597182.14 5679920.19 98.75 -597182.15 5682499.60 101.25 -597182.29 5681520.71 98.75 -597182.50 5679861.88 98.75 -597183.06 5678289.08 100.00 -597183.18 5682018.07 98.75 -597183.40 5679068.97 100.00 -597183.59 5681455.94 99.00 -597183.66 5683425.94 98.75 -597183.71 5683050.60 100.00 -597184.01 5681588.15 97.50 -597184.31 5681812.65 97.50 -597184.44 5680055.06 100.00 -597184.92 5683764.82 98.75 -597184.95 5683757.46 98.75 -597185.02 5681310.89 97.50 -597185.07 5680767.51 98.75 -597185.26 5681511.47 98.75 -597185.28 5681406.94 98.75 -597185.38 5678279.37 100.00 -597185.38 5678472.39 101.25 -597186.29 5683411.63 98.75 -597186.33 5682057.23 101.25 -597186.76 5682044.83 100.00 -597186.78 5682535.23 101.25 -597187.79 5680146.62 100.00 -597187.83 5678824.15 101.25 -597188.18 5683685.35 100.00 -597188.24 5681502.22 98.75 -597188.62 5681416.06 98.75 -597188.65 5681285.71 97.50 -597189.31 5682980.36 100.00 -597189.52 5679913.58 98.75 -597189.59 5682506.27 101.25 -597189.79 5677591.90 101.25 -597189.83 5678463.44 101.25 -597190.14 5679008.71 100.00 -597190.27 5681492.75 98.75 -597190.28 5681319.37 97.50 -597190.29 5679402.16 100.00 -597190.45 5683650.75 100.00 -597190.54 5683009.29 100.00 -597190.68 5682093.10 101.25 -597190.70 5679075.18 100.00 -597191.25 5681058.77 98.75 -597191.48 5682023.64 98.75 -597191.57 5683664.22 100.00 -597191.82 5681425.23 98.75 -597191.88 5681483.17 98.75 -597192.09 5683528.38 100.00 -597192.17 5679864.10 98.75 -597192.44 5681591.17 97.50 -597192.57 5681444.49 98.75 -597192.67 5681434.78 98.75 -597192.84 5681454.19 98.75 -597192.86 5678453.92 101.25 -597193.20 5681463.90 98.75 -597193.49 5681473.60 98.75 -597193.53 5683052.41 100.00 -597193.57 5683427.03 98.75 -597193.59 5680762.28 98.75 -597194.22 5681811.37 97.50 -597194.30 5683767.86 98.75 -597194.36 5680054.85 100.00 -597194.62 5683690.64 100.00 -597194.62 5683755.79 98.75 -597194.70 5682061.88 101.25 -597195.38 5682530.22 101.25 -597195.58 5678655.30 102.50 -597195.61 5683679.98 100.00 -597195.83 5678444.38 101.25 -597195.96 5682048.69 100.00 -597195.98 5678665.09 102.50 -597195.99 5681327.56 97.50 -597196.10 5683411.65 98.75 -597196.23 5682513.69 101.25 -597196.57 5678645.39 102.50 -597196.79 5678828.58 101.25 -597196.92 5680142.75 100.00 -597197.20 5683521.65 100.00 -597197.26 5679907.37 98.75 -597197.56 5678635.48 102.50 -597197.69 5683533.91 100.00 -597198.43 5679407.94 100.00 -597198.52 5681287.01 97.50 -597198.60 5678674.69 102.50 -597198.69 5677596.45 101.25 -597198.79 5678434.84 101.25 -597199.20 5682981.79 100.00 -597199.21 5683829.89 98.75 -597199.35 5678424.88 101.25 -597199.42 5682522.99 101.25 -597199.51 5679005.45 100.00 -597199.73 5682095.39 101.25 -597199.77 5678414.89 101.25 -597199.79 5678625.85 102.50 -597200.04 5683650.76 100.00 -597200.19 5678404.91 101.25 -597200.23 5679077.95 100.00 -597200.26 5683006.97 100.00 -597200.36 5681595.49 97.50 -597200.76 5682027.21 98.75 -597200.78 5681061.35 98.75 -597201.10 5683665.29 100.00 -597201.36 5679867.45 98.75 -597201.36 5682068.23 101.25 -597201.63 5678684.07 102.50 -597201.67 5678395.04 101.25 -597201.77 5681335.70 97.50 -597202.12 5680757.08 98.75 -597203.15 5678616.48 102.50 -597203.38 5683053.92 100.00 -597203.39 5683425.50 98.75 -597203.40 5678385.19 101.25 -597203.79 5683770.98 98.75 -597204.11 5681811.25 97.50 -597204.16 5680055.83 100.00 -597204.23 5683693.13 100.00 -597204.35 5683837.00 98.75 -597204.53 5683756.34 98.75 -597204.54 5683822.47 98.75 -597204.88 5679901.07 98.75 -597204.91 5681603.45 97.50 -597205.05 5683518.51 100.00 -597205.05 5683526.57 100.50 -597205.07 5683678.39 100.00 -597205.22 5682052.41 100.00 -597205.34 5678375.43 101.25 -597205.42 5682076.87 101.25 -597205.77 5683409.14 98.75 -597205.81 5678832.75 101.25 -597206.05 5680138.88 100.00 -597206.50 5683535.09 100.00 -597206.57 5679413.73 100.00 -597206.66 5681344.38 97.50 -597206.68 5678607.17 102.50 -597207.80 5677600.47 101.25 -597208.24 5682086.02 101.25 -597208.39 5681574.70 96.90 -597208.41 5681288.26 97.50 -597208.51 5678691.27 102.50 -597208.96 5681611.65 97.50 -597209.06 5679873.23 98.75 -597209.09 5682983.23 100.00 -597209.29 5679003.72 100.00 -597209.31 5682095.13 101.25 -597209.63 5683650.77 100.00 -597209.68 5679892.39 98.75 -597209.77 5679080.71 100.00 -597210.02 5683005.25 100.00 -597210.23 5682030.40 98.75 -597210.26 5678366.73 101.25 -597210.30 5678597.89 102.50 -597210.47 5681063.17 98.75 -597210.58 5679883.03 98.75 -597210.62 5683666.37 100.00 -597210.88 5681582.70 96.90 -597210.88 5680752.36 98.75 -597211.33 5681566.56 96.90 -597211.41 5681353.16 97.50 -597212.73 5681619.86 97.50 -597213.12 5683423.30 98.75 -597213.15 5683774.48 98.75 -597213.37 5683053.90 100.00 -597213.86 5680057.90 100.00 -597213.91 5678588.61 102.50 -597213.92 5683519.11 100.00 -597213.96 5681812.95 97.50 -597213.97 5683822.47 98.75 -597214.03 5683694.89 100.00 -597214.07 5683839.18 98.75 -597214.20 5683758.77 98.75 -597214.30 5683601.65 100.00 -597214.51 5679419.79 100.00 -597214.71 5683531.86 100.00 -597215.00 5683679.19 100.00 -597215.09 5681362.39 97.50 -597215.18 5682052.93 100.00 -597215.18 5678358.03 101.25 -597215.28 5680135.33 100.00 -597215.39 5678698.46 102.50 -597215.46 5683658.21 100.50 -597215.49 5683406.86 98.75 -597215.80 5678832.70 101.25 -597215.94 5683830.91 98.50 -597216.82 5683608.06 100.00 -597217.39 5677603.03 101.25 -597217.95 5681586.97 96.90 -597218.09 5681562.84 96.90 -597218.12 5681371.90 97.50 -597218.29 5681289.61 97.50 -597218.60 5678579.84 102.50 -597218.99 5682984.50 100.00 -597219.07 5679002.00 100.00 -597219.21 5683650.99 100.00 -597219.25 5683524.74 100.00 -597219.31 5679083.47 100.00 -597219.72 5682033.55 98.75 -597219.87 5681625.18 97.50 -597220.00 5683005.36 100.00 -597220.05 5680748.66 98.75 -597220.15 5683667.44 100.00 -597220.19 5678349.38 101.25 -597220.28 5681064.33 98.75 -597221.41 5681381.30 97.50 -597221.70 5681818.71 97.50 -597222.41 5679425.90 100.00 -597222.42 5683778.21 98.75 -597222.43 5683419.65 98.75 -597222.46 5683597.22 100.00 -597222.55 5683713.72 98.75 -597222.61 5678705.28 102.50 -597223.36 5683053.87 100.00 -597223.41 5683842.51 98.75 -597223.44 5678571.14 102.50 -597223.56 5680059.98 100.00 -597223.65 5683761.96 98.75 -597223.73 5683824.45 98.75 -597223.73 5683833.16 98.50 -597223.89 5683696.22 100.00 -597224.93 5683679.40 100.00 -597225.00 5681583.95 96.90 -597225.09 5680133.89 100.00 -597225.15 5682053.45 100.00 -597225.23 5681566.66 96.90 -597225.36 5678340.83 101.25 -597225.38 5683405.44 98.75 -597225.65 5683611.52 100.00 -597225.79 5678832.65 101.25 -597226.04 5681390.14 97.50 -597226.39 5681575.31 96.90 -597226.99 5681620.99 97.50 -597227.00 5683707.32 98.75 -597227.37 5677602.49 101.25 -597227.56 5680742.06 98.75 -597227.84 5681399.91 97.50 -597228.07 5681291.56 97.50 -597228.23 5678998.29 100.00 -597228.33 5681826.13 97.50 -597228.63 5682986.52 100.00 -597228.77 5683651.38 100.00 -597228.95 5679082.91 100.00 -597228.98 5678562.96 102.50 -597229.34 5681409.78 97.50 -597229.42 5682035.91 98.75 -597229.68 5683668.51 100.00 -597229.95 5683004.39 100.00 -597230.09 5681065.49 98.75 -597230.20 5683719.27 98.75 -597230.31 5679432.01 100.00 -597230.53 5678332.28 101.25 -597230.53 5678711.32 102.50 -597231.52 5683835.41 98.50 -597231.67 5683781.99 98.75 -597231.91 5683596.51 100.00 -597232.38 5683419.68 98.75 -597232.66 5681418.92 97.50 -597232.82 5683765.95 98.75 -597232.89 5683845.17 98.75 -597233.04 5683051.59 100.00 -597233.26 5680062.06 100.00 -597233.46 5681834.71 97.50 -597233.51 5683826.29 98.75 -597233.79 5683697.21 100.00 -597234.16 5681479.09 98.75 -597234.47 5683614.99 100.00 -597234.87 5683678.89 100.00 -597234.91 5680132.44 100.00 -597235.03 5680735.41 98.75 -597235.13 5682053.28 100.00 -597235.24 5683406.30 98.75 -597235.35 5678835.47 101.25 -597235.47 5681487.23 98.75 -597235.52 5683550.57 100.00 -597235.70 5678323.72 101.25 -597235.96 5678555.86 102.50 -597236.99 5683706.94 98.75 -597237.27 5678994.19 100.00 -597237.29 5682991.50 100.00 -597237.34 5677601.92 101.25 -597237.75 5683654.72 100.00 -597237.89 5681293.25 97.50 -597238.28 5683000.06 100.00 -597238.35 5681427.12 97.50 -597238.42 5683605.10 100.25 -597238.53 5681470.75 98.75 -597238.59 5681843.29 97.50 -597238.59 5683664.98 100.00 -597238.65 5679080.78 100.00 -597239.13 5679436.57 100.00 -597239.17 5682038.09 98.75 -597239.31 5683837.67 98.50 -597239.45 5678715.56 102.50 -597239.65 5683722.50 98.75 -597239.90 5681066.65 98.75 -597239.92 5683543.84 100.00 -597239.99 5683558.48 100.00 -597240.57 5678315.03 101.25 -597240.80 5683786.05 98.75 -597240.87 5681853.02 97.50 -597241.33 5683597.54 100.00 -597241.90 5683770.12 98.75 -597242.21 5683421.45 98.75 -597242.25 5680728.51 98.75 -597242.65 5683048.87 100.00 -597242.67 5683830.20 98.75 -597242.79 5683846.26 98.75 -597242.93 5678548.75 102.50 -597242.96 5680064.14 100.00 -597243.15 5681862.76 97.50 -597243.63 5683698.71 100.00 -597243.88 5683616.18 100.00 -597243.94 5678305.62 101.25 -597244.42 5681490.68 98.75 -597244.54 5680130.16 100.00 -597244.62 5683660.06 100.00 -597244.79 5683679.52 100.00 -597244.80 5682055.03 100.00 -597244.88 5678838.50 101.25 -597245.09 5683408.01 98.75 -597245.49 5678988.71 100.00 -597245.53 5681463.90 98.75 -597246.11 5683710.73 98.75 -597246.17 5681433.28 97.50 -597247.06 5681871.95 97.50 -597247.32 5677601.34 101.25 -597247.38 5678296.24 101.25 -597247.80 5681294.32 97.50 -597248.15 5683564.05 100.00 -597248.26 5679440.62 100.00 -597248.34 5679078.65 100.00 -597248.75 5678719.11 102.50 -597249.02 5682039.78 98.75 -597249.04 5678540.91 102.50 -597249.14 5683725.64 98.75 -597249.48 5680721.60 98.75 -597249.54 5683542.08 100.00 -597249.61 5681068.44 98.75 -597249.93 5683790.12 98.75 -597250.45 5683599.90 100.00 -597250.65 5681605.26 95.00 -597250.87 5683774.52 98.75 -597250.87 5683835.58 98.75 -597250.95 5678286.91 101.25 -597251.09 5681881.10 97.50 -597251.88 5683423.97 98.75 -597252.33 5683844.07 98.75 -597252.53 5683047.39 100.00 -597252.54 5681457.05 98.75 -597252.74 5680065.50 100.00 -597252.96 5681614.26 95.00 -597253.29 5683617.01 100.00 -597253.35 5678982.65 100.00 -597253.43 5683700.39 100.00 -597254.07 5680127.41 100.00 -597254.11 5681491.89 98.75 -597254.20 5682058.37 100.00 -597254.38 5683411.41 98.75 -597254.40 5678841.52 101.25 -597254.66 5681596.32 95.00 -597254.68 5681437.76 97.50 -597254.71 5683680.40 100.00 -597254.83 5678532.81 102.50 -597255.12 5683715.06 98.75 -597256.27 5680714.26 98.75 -597256.71 5681586.79 95.00 -597256.98 5677603.68 101.25 -597257.07 5678279.01 101.25 -597257.39 5679444.67 100.00 -597257.71 5681295.40 97.50 -597257.72 5681576.93 95.00 -597257.82 5681888.35 97.50 -597257.90 5683565.58 100.00 -597257.91 5681566.95 95.00 -597257.95 5679076.16 100.00 -597258.06 5678722.66 102.50 -597258.08 5683553.10 100.50 -597258.18 5683729.89 98.75 -597258.68 5683604.32 100.00 -597258.87 5682041.47 98.75 -597259.09 5681604.19 94.50 -597259.31 5683793.57 98.75 -597259.31 5683542.45 100.00 -597259.33 5681070.17 98.75 -597260.28 5683777.49 98.75 -597260.62 5678524.71 102.50 -597261.02 5683612.35 100.00 -597261.21 5678976.59 100.00 -597261.43 5681617.37 95.00 -597261.43 5681453.16 98.75 -597261.46 5683426.72 98.75 -597262.25 5681559.07 95.00 -597262.42 5683046.61 100.00 -597262.66 5680065.73 100.00 -597262.90 5680706.78 98.75 -597262.94 5683703.35 100.00 -597263.18 5678271.11 101.25 -597263.36 5683415.81 98.75 -597263.60 5680124.66 100.00 -597263.66 5682061.58 100.00 -597263.90 5681492.38 98.75 -597263.93 5678844.55 101.25 -597264.44 5683718.65 98.75 -597264.61 5683681.34 100.00 -597264.65 5681438.14 97.50 -597265.46 5678516.12 102.50 -597265.58 5681894.26 97.50 -597265.63 5683692.72 100.50 -597266.49 5681871.57 98.75 -597266.52 5679448.72 100.00 -597266.69 5677605.90 101.25 -597267.11 5681570.12 94.30 -597267.14 5683734.27 98.75 -597267.52 5679073.51 100.00 -597267.58 5678725.54 102.50 -597267.63 5681296.44 97.50 -597267.68 5683566.88 100.00 -597268.26 5681592.52 95.00 -597268.31 5682044.42 98.75 -597268.56 5681612.05 95.00 -597268.64 5678506.69 102.50 -597268.95 5683795.94 98.75 -597269.04 5683544.11 100.00 -597269.07 5678970.52 100.00 -597269.07 5681864.42 98.75 -597269.13 5681071.45 98.75 -597269.41 5681880.50 98.75 -597269.53 5680699.30 98.75 -597269.65 5681602.40 95.00 -597270.18 5683778.89 98.75 -597270.35 5683431.28 98.75 -597270.62 5681449.82 98.75 -597271.18 5678497.10 102.50 -597271.34 5681583.41 95.00 -597271.58 5683629.81 98.75 -597271.68 5681559.11 95.00 -597272.06 5678266.59 101.25 -597272.20 5683420.47 98.75 -597272.35 5683047.74 100.00 -597272.58 5680065.95 100.00 -597272.65 5678487.25 102.50 -597272.81 5683704.06 100.00 -597273.06 5682064.88 100.00 -597273.06 5680121.70 100.00 -597273.45 5678847.57 101.25 -597273.68 5681492.87 98.75 -597273.73 5683722.29 98.75 -597273.75 5679455.53 100.00 -597274.01 5678447.56 102.50 -597274.13 5678477.40 102.50 -597274.17 5678457.52 102.50 -597274.33 5678467.47 102.50 -597274.37 5683683.30 100.00 -597274.63 5681438.43 97.50 -597274.74 5683635.29 98.75 -597275.04 5683740.40 98.75 -597275.35 5681896.35 97.50 -597275.54 5680691.32 98.75 -597276.30 5681574.76 95.00 -597276.48 5678438.07 102.50 -597276.64 5677606.78 101.25 -597277.09 5679070.86 100.00 -597277.14 5678728.35 102.50 -597277.23 5682048.92 98.75 -597277.24 5678964.92 100.00 -597277.47 5683549.12 100.00 -597277.55 5681297.43 97.50 -597277.55 5683567.04 100.00 -597277.65 5681655.47 97.50 -597278.08 5681566.09 95.00 -597278.32 5681884.59 98.75 -597278.57 5681665.01 97.50 -597278.79 5681864.70 98.75 -597278.87 5683797.06 98.75 -597278.94 5681071.58 98.75 -597279.25 5683435.83 98.75 -597280.08 5678428.79 102.50 -597280.09 5683779.25 98.75 -597280.38 5681449.01 98.75 -597280.80 5679462.60 100.00 -597280.83 5678854.15 101.25 -597280.89 5683627.80 98.75 -597280.94 5683425.31 98.75 -597280.95 5682071.00 100.00 -597281.03 5678262.19 101.25 -597281.32 5680683.17 98.75 -597282.06 5683049.68 100.00 -597282.12 5683727.71 98.75 -597282.26 5681673.68 97.50 -597282.31 5681647.18 97.50 -597282.44 5680118.47 100.00 -597282.44 5681470.17 99.00 -597282.49 5680066.18 100.00 -597282.65 5683702.98 100.00 -597282.67 5683746.85 98.75 -597283.46 5681493.45 98.75 -597283.68 5678419.50 102.50 -597284.13 5683685.25 100.00 -597284.27 5683555.85 100.00 -597284.49 5683637.44 98.75 -597284.60 5681438.70 97.50 -597285.13 5681898.44 97.50 -597285.87 5678960.01 100.00 -597286.04 5682564.34 100.00 -597286.15 5683564.57 100.00 -597286.16 5682053.41 98.75 -597286.36 5682574.10 100.00 -597286.59 5677607.65 101.25 -597286.66 5679068.21 100.00 -597286.69 5678731.16 102.50 -597286.89 5679470.51 100.00 -597287.10 5680675.01 98.75 -597287.39 5681299.02 97.50 -597287.41 5678410.27 102.50 -597287.57 5681888.15 98.75 -597287.72 5681639.44 97.50 -597288.12 5683440.43 98.75 -597288.35 5681867.33 98.75 -597288.46 5678860.53 101.25 -597288.62 5681679.81 97.50 -597288.76 5681070.52 98.75 -597288.86 5682554.77 100.00 -597288.86 5683797.29 98.75 -597288.87 5682077.07 100.00 -597289.08 5682583.36 100.00 -597289.31 5683754.19 98.75 -597289.79 5683429.91 98.75 -597289.79 5683733.90 98.75 -597290.00 5678257.79 101.25 -597290.02 5683778.16 98.75 -597290.14 5681448.13 98.75 -597290.78 5683629.03 98.75 -597290.90 5680113.47 100.00 -597291.20 5678401.06 102.50 -597291.24 5683053.62 100.00 -597291.38 5683698.45 100.00 -597291.85 5683690.62 100.00 -597292.41 5680066.19 100.00 -597292.52 5682545.50 100.00 -597292.93 5679478.47 100.00 -597293.23 5681494.04 98.75 -597294.13 5683640.05 98.75 -597294.24 5680668.05 98.75 -597294.29 5681436.42 97.50 -597294.31 5683762.72 98.75 -597294.89 5681900.60 97.50 -597294.92 5678956.49 100.00 -597295.29 5682057.47 98.75 -597295.53 5682374.20 100.00 -597295.66 5681634.07 97.50 -597295.70 5683741.96 98.75 -597295.76 5682364.22 100.00 -597295.87 5678392.46 102.50 -597295.98 5682354.24 100.00 -597296.13 5678734.31 102.50 -597296.23 5679065.56 100.00 -597296.31 5683772.51 98.75 -597296.51 5677606.64 101.25 -597296.55 5682536.37 100.00 -597296.70 5682589.81 100.00 -597296.76 5682383.96 100.00 -597296.79 5678866.05 101.25 -597296.86 5682083.06 100.00 -597296.99 5683445.03 98.75 -597297.19 5681300.83 97.50 -597297.46 5681888.84 98.75 -597297.66 5682526.54 100.00 -597297.92 5681682.07 97.50 -597298.03 5681869.32 98.75 -597298.17 5682516.57 100.00 -597298.47 5681072.32 98.75 -597298.85 5683797.52 98.75 -597298.97 5679486.42 100.00 -597298.97 5680107.70 100.00 -597299.04 5682506.63 100.00 -597299.13 5683433.47 98.75 -597299.43 5678254.51 101.25 -597299.82 5681446.66 98.75 -597299.89 5682393.44 100.00 -597300.42 5683057.56 100.00 -597300.56 5683631.08 98.75 -597300.92 5682497.03 100.00 -597301.56 5680661.24 98.75 -597301.60 5683750.02 98.75 -597301.82 5682346.45 100.00 -597302.29 5681490.41 98.75 -597302.33 5680065.98 100.00 -597303.02 5682402.92 100.00 -597303.07 5678385.58 102.50 -597303.72 5683642.85 98.75 -597303.80 5681657.08 97.75 -597303.96 5681433.96 97.50 -597304.04 5681629.73 97.50 -597304.41 5682061.54 98.75 -597304.55 5682595.91 100.00 -597304.63 5681902.85 97.50 -597304.82 5678955.79 100.00 -597304.94 5678871.82 101.25 -597305.03 5682088.76 100.00 -597305.06 5679494.34 100.00 -597305.53 5678737.61 102.50 -597306.09 5679066.72 100.00 -597306.14 5682412.40 100.00 -597306.37 5683448.30 98.75 -597306.42 5677605.39 101.25 -597306.71 5682488.90 100.00 -597306.91 5683758.42 98.75 -597306.95 5681302.80 97.50 -597307.10 5680102.01 100.00 -597307.11 5681879.60 98.50 -597307.27 5681680.96 97.50 -597307.35 5681889.53 98.75 -597307.68 5681868.34 98.75 -597308.18 5681074.14 98.75 -597308.23 5682338.81 100.00 -597308.47 5683437.03 98.75 -597308.78 5683796.41 98.75 -597308.79 5678251.12 101.25 -597308.82 5681449.52 98.75 -597308.89 5680654.44 98.75 -597309.26 5682421.89 100.00 -597309.60 5683061.50 100.00 -597310.27 5678378.71 102.50 -597310.42 5683632.67 98.75 -597310.69 5683767.67 98.75 -597310.97 5681485.91 98.75 -597311.27 5679502.16 100.00 -597311.86 5682480.49 100.00 -597312.25 5680065.76 100.00 -597312.38 5682431.37 100.00 -597312.94 5678877.81 101.25 -597313.29 5681437.48 97.50 -597313.38 5681627.63 97.50 -597313.45 5683645.13 98.75 -597313.47 5682600.39 100.00 -597313.54 5682065.60 98.75 -597313.70 5682093.71 100.00 -597313.76 5682470.69 100.00 -597314.30 5681902.33 97.50 -597314.35 5682330.92 100.00 -597314.40 5682441.09 100.00 -597314.72 5678955.10 100.00 -597314.92 5678740.91 102.50 -597315.36 5680096.53 100.00 -597315.51 5682451.01 100.00 -597315.59 5681676.40 97.50 -597315.66 5682460.89 100.00 -597315.75 5681414.88 97.50 -597315.95 5679067.87 100.00 -597316.01 5677602.67 101.25 -597316.07 5683450.70 98.75 -597316.18 5681306.57 97.50 -597316.28 5680203.61 98.75 -597316.46 5681877.12 98.50 -597316.78 5681405.12 97.50 -597316.99 5678371.38 102.50 -597317.04 5681865.06 98.75 -597317.07 5683774.69 98.75 -597317.16 5678245.65 101.25 -597317.24 5681890.21 98.75 -597317.32 5681454.22 98.75 -597317.75 5680649.88 98.75 -597317.91 5681075.86 98.75 -597318.06 5683439.41 98.75 -597318.07 5681479.41 98.75 -597318.10 5683225.74 100.00 -597318.24 5679509.19 100.00 -597318.77 5683796.59 98.75 -597318.78 5683065.44 100.00 -597319.21 5682101.43 100.00 -597319.31 5680195.58 98.75 -597320.00 5679013.85 101.00 -597320.33 5683633.90 98.75 -597320.66 5683217.57 100.00 -597320.94 5678883.81 101.25 -597321.00 5682323.53 100.00 -597321.36 5681423.00 97.50 -597321.40 5681630.86 97.50 -597321.65 5682130.57 100.00 -597322.04 5680067.09 100.00 -597322.39 5682604.87 100.00 -597322.56 5681441.19 97.50 -597322.58 5682110.78 100.00 -597322.64 5682069.75 98.75 -597323.06 5682120.69 100.00 -597323.11 5680210.75 98.75 -597323.20 5683647.31 98.75 -597323.21 5678363.61 102.50 -597323.33 5682140.24 100.00 -597323.50 5681471.48 98.75 -597323.52 5681461.81 98.75 -597323.61 5681671.17 97.50 -597323.63 5680091.04 100.00 -597323.91 5681899.58 97.50 -597324.31 5681406.11 97.50 -597324.31 5678744.22 102.50 -597324.54 5678955.28 100.00 -597324.76 5680187.33 98.75 -597324.92 5677598.36 101.25 -597325.42 5681310.34 97.50 -597325.52 5678240.18 101.25 -597325.80 5679069.12 100.00 -597325.82 5681874.63 98.50 -597325.84 5683452.54 98.75 -597326.08 5681861.08 98.75 -597326.08 5683778.81 98.75 -597326.09 5682149.83 100.00 -597326.31 5679515.08 100.00 -597326.53 5683230.38 100.00 -597326.74 5681887.38 98.75 -597326.75 5680645.53 98.75 -597327.67 5681077.41 98.75 -597327.96 5683069.37 100.00 -597328.03 5683439.99 98.75 -597328.11 5680073.44 100.00 -597328.39 5680082.51 100.00 -597328.46 5682316.90 100.00 -597328.65 5681637.12 97.50 -597328.76 5683796.82 98.75 -597329.27 5681429.01 97.50 -597329.43 5678355.83 102.50 -597329.44 5683216.98 100.00 -597329.51 5678888.81 101.25 -597329.79 5681663.86 97.50 -597329.92 5681447.88 97.50 -597330.25 5683635.15 98.75 -597330.77 5682158.56 100.00 -597331.39 5682609.19 100.00 -597331.66 5682074.04 98.75 -597332.35 5680213.48 98.75 -597332.52 5681456.94 97.50 -597333.15 5683648.21 98.75 -597333.32 5677592.94 101.25 -597333.40 5681896.42 97.50 -597333.43 5681316.25 97.50 -597333.50 5681466.86 97.50 -597333.71 5678747.52 102.50 -597333.73 5680183.78 98.75 -597333.88 5678234.72 101.25 -597334.03 5681405.33 97.50 -597334.10 5678957.97 100.00 -597334.15 5681386.25 97.50 -597334.58 5681855.97 98.75 -597334.70 5681870.89 98.50 -597335.07 5678347.64 102.50 -597335.30 5681396.00 97.50 -597335.41 5681476.65 97.50 -597335.50 5678596.30 103.75 -597335.64 5679070.41 100.00 -597335.64 5677736.59 101.25 -597335.69 5680641.06 98.75 -597335.69 5683781.54 98.75 -597335.81 5679516.73 100.00 -597335.83 5683452.54 98.75 -597335.83 5681643.45 97.50 -597335.84 5683232.98 100.00 -597335.91 5682310.26 100.00 -597336.05 5678586.55 103.75 -597336.11 5682166.99 100.00 -597336.25 5681884.54 98.75 -597336.27 5681656.80 97.50 -597336.78 5677726.83 101.25 -597336.98 5681434.17 97.50 -597337.32 5681486.45 97.50 -597337.33 5677746.44 101.25 -597337.37 5683072.71 100.00 -597337.42 5681078.95 98.75 -597337.48 5678576.71 103.75 -597338.01 5683440.57 98.75 -597338.55 5683798.66 98.75 -597338.63 5681377.78 97.50 -597338.67 5678892.81 101.25 -597338.92 5678566.86 103.75 -597339.01 5678605.61 103.75 -597339.02 5677717.09 101.25 -597339.03 5677756.29 101.25 -597339.07 5683217.88 100.00 -597339.97 5678556.96 103.75 -597340.15 5683636.48 98.75 -597340.28 5681323.23 97.50 -597340.41 5678339.24 102.50 -597340.42 5682078.84 98.75 -597340.43 5682613.43 100.00 -597340.72 5677766.13 101.25 -597340.97 5678547.06 103.75 -597341.27 5677707.35 101.25 -597341.46 5682175.42 100.00 -597341.76 5677587.59 101.25 -597341.97 5678537.16 103.75 -597342.06 5680215.33 98.75 -597342.53 5678614.92 103.75 -597342.60 5677775.95 101.25 -597342.62 5678229.89 101.25 -597342.87 5681893.21 97.50 -597342.92 5681649.91 97.50 -597343.10 5678750.82 102.50 -597343.10 5683649.11 98.75 -597343.18 5680180.87 98.75 -597343.31 5682303.56 100.00 -597343.38 5681866.60 98.50 -597343.65 5678960.65 100.00 -597343.70 5681852.18 98.75 -597343.99 5678527.43 103.75 -597344.37 5680636.11 98.75 -597344.49 5677785.76 101.25 -597345.16 5683235.58 100.00 -597345.35 5681880.75 98.75 -597345.43 5683783.72 98.75 -597345.48 5679071.51 100.00 -597345.69 5681331.57 97.50 -597345.76 5678330.84 102.50 -597345.76 5683451.54 98.75 -597345.76 5679516.60 100.00 -597345.95 5681371.00 97.50 -597346.04 5678624.23 103.75 -597346.16 5678517.72 103.75 -597346.19 5678497.88 103.75 -597346.26 5681430.52 97.50 -597346.32 5678487.94 103.75 -597346.38 5677795.57 101.25 -597346.49 5678507.83 103.75 -597346.56 5677698.91 101.25 -597346.81 5682183.85 100.00 -597346.88 5683075.79 100.00 -597346.90 5678478.01 103.75 -597347.08 5681081.03 98.75 -597347.47 5678468.07 103.75 -597347.83 5678896.82 101.25 -597347.93 5683440.12 98.75 -597348.28 5678458.18 103.75 -597348.30 5683800.84 98.75 -597348.68 5683218.93 100.00 -597349.16 5682083.69 98.75 -597349.28 5677805.12 101.25 -597349.46 5682617.67 100.00 -597350.06 5683637.81 98.75 -597350.36 5677582.51 101.25 -597350.71 5682296.85 100.00 -597350.98 5678448.60 103.75 -597351.11 5678322.44 102.50 -597351.11 5681887.63 97.50 -597351.42 5678225.15 101.25 -597351.56 5680218.08 98.75 -597352.01 5682192.36 100.00 -597352.05 5681515.79 98.75 -597352.29 5677814.65 101.25 -597352.31 5678631.84 103.75 -597352.63 5681338.45 97.50 -597352.63 5680177.96 98.75 -597352.91 5678752.51 102.50 -597353.05 5683650.01 98.75 -597353.06 5680631.16 98.75 -597353.14 5678963.57 100.00 -597353.47 5681850.97 98.75 -597353.67 5678439.02 103.75 -597353.82 5677692.23 101.25 -597354.07 5681876.02 98.75 -597354.18 5681365.39 97.50 -597354.47 5683238.18 100.00 -597355.29 5683785.36 98.75 -597355.30 5677824.17 101.25 -597355.30 5679070.04 100.00 -597355.47 5682090.94 98.75 -597355.53 5679514.50 100.00 -597355.66 5683450.22 98.75 -597355.76 5681427.49 97.50 -597356.38 5683078.86 100.00 -597356.46 5678314.04 102.50 -597356.71 5681083.24 98.75 -597356.72 5682201.16 100.00 -597356.83 5678901.16 101.25 -597356.88 5681346.47 97.50 -597357.07 5678429.67 103.75 -597357.55 5682623.48 100.00 -597357.60 5681356.18 97.50 -597357.78 5683438.43 98.75 -597358.10 5682290.15 100.00 -597358.21 5683802.06 98.75 -597358.24 5683220.41 100.00 -597358.24 5677576.56 101.25 -597358.31 5677833.70 101.25 -597358.83 5681867.69 98.75 -597358.99 5681881.54 97.50 -597359.06 5678639.15 103.75 -597359.14 5682100.16 98.75 -597359.60 5681858.04 98.75 -597359.66 5678219.57 101.25 -597360.01 5683637.05 98.75 -597360.50 5678420.33 103.75 -597360.98 5677843.33 101.25 -597361.05 5680220.82 98.75 -597361.70 5682109.82 98.75 -597361.70 5682209.82 100.00 -597361.85 5681515.58 98.75 -597361.96 5677686.45 101.25 -597361.96 5680626.63 98.75 -597362.19 5678305.92 102.50 -597362.36 5680176.32 98.75 -597362.39 5678755.11 102.50 -597362.52 5678966.83 100.00 -597362.93 5679508.06 100.00 -597363.04 5683650.39 98.75 -597363.21 5683242.29 100.00 -597363.33 5682119.67 98.75 -597363.56 5677852.98 101.25 -597364.26 5682282.33 100.00 -597364.49 5681337.70 98.75 -597364.68 5678411.47 103.75 -597364.81 5677569.04 101.25 -597364.83 5682129.55 98.75 -597365.12 5679068.57 100.00 -597365.14 5681873.65 97.50 -597365.15 5683787.00 98.75 -597365.47 5682629.56 100.00 -597365.49 5681425.93 97.50 -597365.57 5683448.89 98.75 -597365.89 5683081.94 100.00 -597366.05 5678904.97 101.25 -597366.13 5677862.63 101.25 -597366.20 5681085.89 98.75 -597366.54 5682139.36 98.75 -597366.55 5678112.58 101.25 -597366.74 5678645.26 103.75 -597366.81 5682218.39 100.00 -597366.93 5678122.56 101.25 -597367.62 5683436.73 98.75 -597367.80 5683221.89 100.00 -597367.97 5678214.17 101.25 -597368.15 5683803.16 98.75 -597368.35 5678132.43 101.25 -597368.48 5678298.20 102.50 -597368.71 5677872.29 101.25 -597369.87 5682274.11 100.00 -597369.97 5683636.22 98.75 -597370.02 5679501.02 100.00 -597370.14 5678142.26 101.25 -597370.31 5677680.96 101.25 -597370.89 5680221.53 98.75 -597371.02 5678760.08 102.50 -597371.12 5680622.62 98.75 -597371.25 5681865.74 97.50 -597371.51 5682148.03 98.75 -597371.57 5681515.10 98.75 -597371.57 5677561.70 101.25 -597371.71 5678404.42 103.75 -597371.87 5678970.15 100.00 -597371.89 5683246.56 100.00 -597371.93 5682226.96 100.00 -597372.15 5680174.95 98.75 -597372.20 5677881.63 101.25 -597372.75 5678105.03 101.25 -597373.03 5683650.76 98.75 -597373.09 5681342.14 98.75 -597373.39 5682635.63 100.00 -597373.80 5678151.23 101.25 -597373.84 5682264.95 100.00 -597373.88 5679492.07 100.00 -597374.94 5679067.10 100.00 -597375.00 5683788.64 98.75 -597375.32 5681089.69 98.75 -597375.44 5678908.41 101.25 -597375.46 5681425.93 97.50 -597375.49 5683447.75 98.75 -597375.50 5678291.17 102.50 -597375.51 5678649.97 103.75 -597375.57 5682236.17 100.00 -597375.65 5683083.51 100.00 -597376.01 5677890.87 101.25 -597376.47 5682156.70 98.75 -597376.51 5683225.97 100.00 -597376.65 5679482.48 100.00 -597377.22 5678210.42 101.25 -597377.27 5681857.76 97.50 -597377.47 5683435.04 98.75 -597377.53 5682255.72 100.00 -597378.13 5683803.48 98.75 -597378.28 5682245.77 100.00 -597378.74 5678397.38 103.75 -597378.99 5677676.23 101.25 -597379.13 5677555.17 101.25 -597379.53 5681509.38 98.75 -597379.55 5678097.71 101.25 -597379.59 5678765.12 102.50 -597379.82 5677900.10 101.25 -597379.96 5683635.76 98.75 -597380.11 5678158.97 101.25 -597380.28 5680618.62 98.75 -597380.33 5679473.22 100.00 -597380.76 5680221.97 98.75 -597380.98 5678974.09 100.00 -597381.06 5683249.62 100.00 -597381.28 5682641.73 100.00 -597381.94 5680173.58 98.75 -597382.16 5683240.24 100.50 -597382.23 5681345.61 98.75 -597382.39 5681096.22 98.75 -597382.47 5682164.42 98.75 -597382.84 5678284.44 102.50 -597383.01 5683651.17 98.75 -597383.28 5681849.78 97.50 -597383.86 5677909.23 101.25 -597384.28 5678654.68 103.75 -597384.46 5679464.12 100.00 -597384.79 5679066.06 100.00 -597384.82 5678911.84 101.25 -597384.93 5683788.10 98.75 -597384.98 5677547.21 101.25 -597385.12 5683230.38 100.00 -597385.40 5681426.47 97.50 -597385.43 5683446.73 98.75 -597385.63 5683083.74 100.00 -597385.77 5678390.34 103.75 -597385.92 5678167.09 101.25 -597386.30 5678206.30 101.25 -597386.82 5682650.04 100.00 -597387.35 5678771.36 102.50 -597387.35 5683433.54 98.75 -597387.67 5681504.06 98.75 -597388.12 5683803.70 98.75 -597388.48 5678093.33 101.25 -597388.58 5679455.02 100.00 -597388.69 5677673.86 101.25 -597388.72 5681103.79 98.75 -597388.79 5677917.92 101.25 -597389.20 5683632.93 98.75 -597389.22 5681841.73 97.50 -597389.50 5680614.77 98.75 -597390.02 5677538.59 101.25 -597390.09 5678978.04 100.00 -597390.27 5683252.58 100.00 -597390.34 5682170.55 98.75 -597390.63 5680222.18 98.75 -597391.37 5681349.08 98.75 -597391.40 5678175.44 101.25 -597391.63 5680171.63 98.75 -597392.13 5678280.73 102.50 -597392.36 5682658.34 100.00 -597392.70 5679445.93 100.00 -597392.99 5683651.63 98.75 -597393.04 5678659.39 103.75 -597393.40 5678383.98 103.75 -597393.76 5683234.71 100.00 -597394.18 5677926.30 101.25 -597394.22 5677529.54 101.25 -597394.35 5678914.82 101.25 -597394.55 5678200.75 101.25 -597394.72 5679065.95 100.00 -597394.88 5683787.12 98.75 -597395.02 5681833.59 97.50 -597395.11 5678777.60 102.50 -597395.29 5681427.71 97.50 -597395.38 5683445.71 98.75 -597395.62 5683083.97 100.00 -597396.10 5678184.23 101.25 -597396.20 5681110.24 98.75 -597396.84 5682667.25 100.00 -597397.24 5683432.05 98.75 -597397.31 5681502.23 98.75 -597397.56 5678089.16 101.25 -597397.67 5683627.63 98.75 -597397.79 5682177.20 98.75 -597397.95 5683801.98 98.75 -597398.10 5677520.33 101.25 -597398.41 5677671.58 101.25 -597398.73 5679438.07 100.00 -597398.77 5680611.01 98.75 -597399.53 5683255.37 100.00 -597399.64 5678980.46 100.00 -597400.03 5678458.10 105.00 -597400.23 5677934.25 101.25 -597400.32 5678193.28 101.25 -597400.36 5680220.46 98.75 -597400.46 5681352.67 98.75 -597400.97 5681825.61 97.50 -597400.97 5678276.08 102.50 -597401.09 5682676.28 100.00 -597401.25 5678467.96 105.00 -597401.30 5680169.55 98.75 -597401.31 5678377.95 103.75 -597401.85 5678664.01 103.75 -597402.15 5678784.63 102.50 -597402.42 5683239.01 100.00 -597402.59 5678477.82 105.00 -597402.98 5683652.08 98.75 -597403.57 5681116.81 98.75 -597403.73 5678448.87 105.00 -597403.92 5677512.24 101.25 -597404.03 5678917.29 101.25 -597404.12 5678487.64 105.00 -597404.65 5679065.84 100.00 -597404.81 5683786.04 98.75 -597405.19 5681428.52 97.50 -597405.25 5682183.86 98.75 -597405.32 5683444.69 98.75 -597405.33 5678082.99 101.25 -597405.38 5679430.62 100.00 -597405.54 5680064.54 100.00 -597405.57 5682685.19 100.00 -597405.59 5683083.61 100.00 -597406.10 5677942.32 101.25 -597406.25 5680073.67 100.00 -597406.29 5678497.34 105.00 -597406.33 5681504.19 98.75 -597406.57 5683623.10 98.75 -597407.12 5683430.55 98.75 -597407.28 5678429.72 105.00 -597407.43 5678439.64 105.00 -597407.77 5683800.11 98.75 -597407.85 5680606.88 98.75 -597408.38 5677670.84 101.25 -597408.55 5678507.01 105.00 -597408.89 5678419.97 105.00 -597408.98 5683256.64 100.00 -597409.03 5678791.83 102.50 -597409.22 5678371.91 103.75 -597409.27 5681356.89 98.75 -597409.46 5678981.97 100.00 -597409.66 5681820.66 97.50 -597409.70 5678516.89 105.00 -597409.76 5678271.31 102.50 -597409.90 5677504.23 101.25 -597410.13 5680218.98 98.75 -597410.35 5682693.96 100.00 -597410.38 5677951.35 101.25 -597410.41 5681123.94 98.75 -597410.72 5679422.26 100.00 -597410.73 5678668.52 103.75 -597410.84 5678526.77 105.00 -597410.90 5680167.24 98.75 -597410.96 5678536.71 105.00 -597411.08 5678546.65 105.00 -597411.18 5681974.53 97.50 -597411.19 5678556.60 105.00 -597411.67 5683241.07 100.00 -597412.38 5678566.42 105.00 -597412.71 5682190.51 98.75 -597412.83 5678076.38 101.25 -597412.85 5683653.38 98.75 -597413.13 5680060.43 100.00 -597413.47 5681738.28 97.50 -597413.72 5678919.76 101.25 -597413.80 5681964.89 97.50 -597413.81 5680079.92 100.00 -597414.01 5683616.84 98.75 -597414.33 5681132.89 98.75 -597414.44 5678576.15 105.00 -597414.58 5679065.73 100.00 -597414.59 5681983.80 97.50 -597414.66 5677960.37 101.25 -597414.70 5683784.62 98.75 -597414.90 5681508.97 98.75 -597414.91 5682983.30 100.00 -597415.07 5678412.35 105.00 -597415.10 5681427.44 97.50 -597415.12 5682702.73 100.00 -597415.26 5683443.66 98.75 -597415.39 5679413.43 100.00 -597415.53 5683082.62 100.00 -597416.13 5678364.82 103.75 -597416.42 5680601.74 98.75 -597416.49 5678585.88 105.00 -597416.73 5683428.10 98.75 -597416.84 5678797.94 102.50 -597417.52 5683797.94 98.75 -597417.70 5681142.17 98.75 -597417.83 5677498.38 101.25 -597417.85 5681993.23 97.50 -597418.08 5681361.12 98.75 -597418.34 5677670.09 101.25 -597418.64 5683256.22 100.00 -597418.76 5682974.62 100.00 -597418.86 5682991.61 100.00 -597418.92 5681817.64 97.50 -597419.12 5678267.86 102.50 -597419.14 5681957.09 97.50 -597419.27 5678983.47 100.00 -597419.60 5678673.02 103.75 -597419.98 5680218.14 98.75 -597420.01 5683608.84 98.75 -597420.06 5679404.60 100.00 -597420.24 5678594.86 105.00 -597420.29 5680164.16 98.75 -597420.33 5678069.78 101.25 -597420.52 5682002.86 97.50 -597421.28 5677967.77 101.25 -597421.28 5682195.56 98.75 -597421.33 5683241.55 100.00 -597421.60 5680085.87 100.00 -597422.44 5681733.94 97.50 -597422.49 5678357.17 103.75 -597422.59 5683655.58 98.75 -597422.60 5680057.88 100.00 -597422.88 5681150.57 98.75 -597422.97 5683599.52 98.75 -597423.14 5681514.15 98.75 -597423.27 5682012.46 97.50 -597423.41 5678407.44 105.00 -597423.50 5678921.53 101.25 -597423.93 5683780.79 98.75 -597424.06 5682707.18 100.00 -597424.22 5681696.07 98.75 -597424.40 5679066.11 100.00 -597424.48 5679395.65 100.00 -597424.79 5683440.72 98.75 -597425.00 5678803.65 102.50 -597425.00 5680596.61 98.75 -597425.01 5681426.34 97.50 -597425.47 5683081.63 100.00 -597425.58 5683589.88 98.75 -597425.97 5683424.29 98.75 -597426.11 5678602.88 105.00 -597426.39 5682021.95 97.50 -597426.72 5677493.85 101.25 -597426.89 5681365.35 98.75 -597427.05 5682969.30 100.00 -597427.28 5683795.76 98.75 -597427.38 5682995.47 100.00 -597427.83 5677673.15 101.25 -597428.15 5681158.93 98.75 -597428.20 5683257.17 100.00 -597428.21 5679358.20 100.00 -597428.34 5683580.27 98.75 -597428.42 5678264.25 102.50 -597428.50 5678677.48 103.75 -597428.58 5677974.56 101.25 -597428.74 5681956.40 97.50 -597428.82 5679386.65 100.00 -597428.88 5678349.55 103.75 -597428.90 5681817.07 97.50 -597429.02 5678064.89 101.25 -597429.12 5678984.56 100.00 -597429.48 5680091.69 100.00 -597429.59 5681521.53 98.75 -597429.69 5680161.07 98.75 -597429.83 5680217.31 98.75 -597430.11 5682200.23 98.75 -597430.19 5683243.92 100.00 -597431.05 5682030.55 97.50 -597431.10 5683570.67 98.75 -597431.37 5679377.11 100.00 -597432.03 5681732.68 97.50 -597432.11 5679367.32 100.00 -597432.27 5680056.95 100.00 -597432.34 5683657.79 98.75 -597432.44 5678610.44 105.00 -597432.84 5678404.57 105.00 -597433.00 5682711.64 100.00 -597433.15 5683776.92 98.75 -597433.48 5679070.14 100.00 -597433.49 5678921.75 101.25 -597433.54 5680591.41 98.75 -597433.54 5681167.21 98.75 -597433.70 5683898.13 98.75 -597433.89 5681694.88 98.75 -597433.95 5678807.94 102.50 -597434.08 5683561.13 98.75 -597434.25 5683437.53 98.75 -597434.33 5679350.31 100.00 -597434.92 5681425.22 97.50 -597435.19 5682134.66 97.50 -597435.21 5683420.48 98.75 -597435.24 5683082.61 100.00 -597435.47 5681370.03 98.75 -597435.59 5682124.68 97.50 -597435.60 5678342.21 103.75 -597436.05 5681528.91 98.75 -597436.08 5682144.37 97.50 -597436.19 5677492.63 101.25 -597436.50 5677980.65 101.25 -597436.56 5682966.24 100.00 -597437.03 5683793.58 98.75 -597437.22 5682997.14 100.00 -597437.25 5683250.53 100.00 -597437.36 5678259.78 102.50 -597437.37 5683551.75 98.75 -597437.43 5677675.82 101.25 -597437.47 5678681.79 103.75 -597437.56 5681960.96 97.50 -597437.75 5682037.97 97.50 -597437.78 5683258.20 100.00 -597437.82 5678060.15 101.25 -597437.97 5681940.48 97.50 -597438.41 5681948.95 97.50 -597438.71 5680093.33 100.00 -597438.79 5681818.09 97.50 -597438.95 5682204.90 98.75 -597439.05 5678984.79 100.00 -597439.05 5680157.90 98.75 -597439.16 5681175.34 98.75 -597439.69 5680216.47 98.75 -597439.77 5682116.00 97.50 -597440.45 5679342.42 100.00 -597440.57 5682153.29 97.50 -597440.62 5678616.10 105.00 -597440.93 5682717.63 100.00 -597441.49 5680585.35 98.75 -597441.59 5683661.43 98.75 -597441.72 5681536.91 98.75 -597441.98 5681733.28 97.50 -597442.07 5680056.98 100.00 -597442.33 5678334.87 103.75 -597442.35 5678402.54 105.00 -597442.53 5683773.48 98.75 -597442.55 5679074.17 100.00 -597442.65 5683413.87 98.75 -597443.08 5683432.85 98.75 -597443.09 5678811.88 102.50 -597443.11 5683543.56 98.75 -597443.38 5683895.65 98.75 -597443.48 5678921.98 101.25 -597443.52 5681695.49 98.75 -597443.97 5681374.84 98.75 -597444.16 5682045.62 97.50 -597444.66 5677986.34 101.25 -597444.77 5681183.47 98.75 -597444.85 5681425.06 97.50 -597444.88 5683085.25 100.00 -597445.01 5681934.89 97.50 -597445.62 5682107.90 97.50 -597445.87 5682962.65 100.00 -597445.97 5678254.71 102.50 -597446.05 5677494.22 101.25 -597446.07 5681966.19 97.50 -597446.29 5682161.28 97.50 -597446.44 5678686.10 103.75 -597446.57 5679334.53 100.00 -597446.81 5683791.54 98.75 -597446.85 5682999.79 100.00 -597447.20 5678057.00 101.25 -597447.28 5677677.50 101.25 -597447.30 5681952.87 97.50 -597448.27 5680154.32 98.75 -597448.39 5682207.98 98.75 -597448.51 5680093.20 100.00 -597448.54 5682724.10 100.00 -597448.64 5681819.78 97.50 -597448.80 5678621.76 105.00 -597448.94 5678985.57 100.00 -597449.05 5678327.53 103.75 -597449.43 5680579.28 98.75 -597449.55 5680215.84 98.75 -597449.61 5681542.52 98.75 -597449.93 5683407.03 98.75 -597449.96 5683536.63 98.75 -597450.32 5682099.13 97.50 -597450.38 5681191.60 98.75 -597450.43 5682053.40 97.50 -597450.62 5683665.72 98.75 -597450.92 5678397.70 105.00 -597451.59 5679078.26 100.00 -597451.72 5681735.12 97.50 -597451.86 5681700.66 98.75 -597451.88 5680057.01 100.00 -597451.91 5683428.17 98.75 -597452.28 5681379.96 98.75 -597452.30 5678815.63 102.50 -597452.45 5683772.72 98.75 -597452.69 5679326.64 100.00 -597453.06 5683893.18 98.75 -597453.45 5678921.66 101.25 -597453.70 5677990.61 101.25 -597453.70 5682167.98 97.50 -597454.45 5678249.41 102.50 -597454.49 5682090.05 97.50 -597454.54 5683087.70 100.00 -597454.80 5681425.75 97.50 -597454.93 5681970.80 97.50 -597454.96 5681935.05 97.50 -597455.08 5682958.77 100.00 -597455.40 5678690.41 103.75 -597455.49 5682061.95 97.50 -597455.58 5678320.03 103.75 -597455.73 5677496.69 101.25 -597456.12 5681199.64 98.75 -597456.15 5682730.57 100.00 -597456.23 5683003.18 100.00 -597456.66 5683790.12 98.75 -597456.95 5678054.81 101.25 -597457.08 5678627.20 105.00 -597457.10 5677679.36 101.25 -597457.16 5680572.95 98.75 -597457.21 5683400.19 98.75 -597457.22 5681953.59 97.50 -597457.48 5680150.74 98.75 -597457.50 5682080.55 97.50 -597458.04 5681547.53 98.75 -597458.09 5682210.41 98.75 -597458.17 5681817.45 97.50 -597458.31 5680093.42 100.00 -597458.43 5678391.21 105.00 -597458.75 5683531.88 98.75 -597458.81 5679318.75 100.00 -597458.82 5678986.53 100.00 -597458.99 5681707.30 98.75 -597459.43 5680215.61 98.75 -597459.64 5683670.01 98.75 -597459.84 5682070.94 97.50 -597460.06 5681385.88 98.75 -597460.22 5683422.66 98.75 -597460.57 5679082.50 100.00 -597461.23 5677996.95 101.25 -597461.29 5681737.87 97.50 -597461.63 5680057.75 100.00 -597461.87 5681207.67 98.75 -597461.94 5682173.30 97.50 -597461.98 5678817.97 102.50 -597462.11 5678312.52 103.75 -597462.43 5683772.25 98.75 -597462.65 5678243.73 102.50 -597462.69 5682737.99 100.00 -597462.74 5683890.70 98.75 -597463.42 5678920.86 101.25 -597463.84 5678382.87 105.00 -597464.05 5678695.33 103.75 -597464.12 5681974.69 97.50 -597464.29 5682954.89 100.00 -597464.53 5683087.92 100.00 -597464.54 5681937.88 97.50 -597464.56 5680566.23 98.75 -597464.58 5679310.60 100.00 -597464.68 5681427.05 97.50 -597465.28 5683394.31 98.75 -597465.47 5677498.38 101.25 -597465.62 5683006.43 100.00 -597465.77 5681714.39 98.75 -597466.63 5683790.84 98.75 -597466.64 5678629.94 105.00 -597466.70 5678052.67 101.25 -597466.88 5677681.38 101.25 -597467.02 5680148.60 98.75 -597467.17 5681954.28 97.50 -597467.54 5683527.14 98.75 -597467.60 5681548.44 98.75 -597467.62 5681215.71 98.75 -597467.68 5681814.35 97.50 -597467.80 5682212.72 98.75 -597467.89 5678004.38 101.25 -597468.11 5680093.65 100.00 -597468.12 5683675.27 98.75 -597468.13 5682746.37 100.00 -597468.32 5683416.80 98.75 -597468.48 5678988.74 100.00 -597468.72 5678305.08 103.75 -597469.19 5680214.03 98.75 -597469.26 5678374.53 105.00 -597469.32 5679292.61 100.00 -597469.75 5680181.29 98.50 -597469.76 5679086.01 100.00 -597470.11 5678237.07 102.50 -597470.15 5679302.31 100.00 -597470.18 5679282.88 100.00 -597470.32 5681742.11 97.50 -597471.35 5680058.99 100.00 -597471.37 5682176.61 97.50 -597471.65 5678820.32 102.50 -597471.96 5680559.51 98.75 -597472.37 5683773.23 98.75 -597472.46 5683888.43 98.75 -597472.56 5681390.58 97.50 -597472.60 5678700.40 103.75 -597472.78 5682755.21 100.00 -597472.93 5679273.28 100.00 -597473.38 5678920.06 101.25 -597473.42 5681223.71 98.75 -597473.43 5683388.53 98.75 -597473.49 5682951.00 100.00 -597473.64 5681720.24 98.75 -597473.78 5681976.88 97.50 -597474.31 5678011.80 101.25 -597474.32 5681939.79 97.50 -597474.52 5683088.15 100.00 -597474.62 5681427.52 97.50 -597475.43 5678366.76 105.00 -597475.45 5677497.86 101.25 -597475.47 5683521.23 98.75 -597475.56 5683007.37 100.00 -597475.64 5678297.94 103.75 -597475.89 5681394.32 97.50 -597476.17 5683410.66 98.75 -597476.20 5678632.67 105.00 -597476.48 5683680.75 98.75 -597476.52 5679263.96 100.00 -597476.59 5683791.59 98.75 -597476.69 5678052.90 101.25 -597476.71 5681545.29 98.75 -597476.75 5677682.95 101.25 -597476.88 5680147.93 98.75 -597477.06 5681955.66 97.50 -597477.25 5681811.46 97.50 -597477.34 5682764.09 100.00 -597477.57 5678230.42 102.50 -597477.77 5682213.07 98.75 -597477.85 5680094.56 100.00 -597478.10 5678991.19 100.00 -597478.95 5680212.44 98.75 -597479.25 5680552.67 98.75 -597479.30 5680076.03 100.50 -597479.30 5681746.43 97.50 -597479.35 5681231.61 98.75 -597479.62 5679087.24 100.00 -597480.10 5679254.64 100.00 -597480.74 5682180.08 97.50 -597480.89 5678519.37 106.25 -597481.08 5680060.22 100.00 -597481.15 5678509.61 106.25 -597481.16 5678705.48 103.75 -597481.33 5678822.66 102.50 -597481.59 5683382.75 98.75 -597481.70 5681725.58 98.75 -597481.86 5678529.27 106.25 -597481.97 5678539.20 106.25 -597482.30 5682772.76 100.00 -597482.30 5683774.33 98.75 -597482.36 5681389.15 97.50 -597482.37 5678359.69 105.00 -597482.40 5683887.32 98.75 -597482.53 5683514.16 98.75 -597482.56 5678290.79 103.75 -597482.70 5682947.12 100.00 -597482.96 5683403.34 98.75 -597483.34 5678919.27 101.25 -597483.46 5678015.28 101.25 -597483.63 5678548.80 106.25 -597483.68 5679245.31 100.00 -597483.73 5681977.81 97.50 -597483.90 5681424.06 97.50 -597484.18 5681941.40 97.50 -597484.25 5678500.16 106.25 -597484.50 5683088.38 100.00 -597484.83 5683686.24 98.75 -597484.84 5679235.48 100.00 -597485.23 5681239.54 98.75 -597485.34 5679225.50 100.00 -597485.35 5681396.81 97.50 -597485.40 5677497.90 101.25 -597485.47 5678997.74 100.00 -597485.51 5678636.08 105.00 -597485.53 5683007.95 100.00 -597485.61 5681541.17 98.75 -597485.76 5678224.72 102.50 -597485.91 5680545.21 98.75 -597486.25 5683309.90 98.75 -597486.30 5677682.71 101.25 -597486.43 5683793.37 98.75 -597486.62 5681958.48 97.50 -597486.68 5678053.13 101.25 -597486.75 5680147.26 98.75 -597486.82 5681808.57 97.50 -597487.05 5678490.62 106.25 -597487.18 5682216.30 98.75 -597487.34 5678558.03 106.25 -597487.45 5679215.81 100.00 -597487.47 5680096.27 100.00 -597487.60 5682781.22 100.00 -597488.04 5683302.57 98.75 -597488.26 5681750.79 97.50 -597488.35 5680209.77 98.75 -597488.91 5683506.53 98.75 -597488.98 5678480.87 106.25 -597489.14 5678711.35 103.75 -597489.17 5681248.60 98.75 -597489.47 5679088.48 100.00 -597489.48 5678283.64 103.75 -597490.09 5682183.58 97.50 -597490.24 5678471.00 106.25 -597490.30 5678353.70 105.00 -597490.37 5679206.26 100.00 -597490.39 5683378.62 98.75 -597490.82 5680061.29 100.00 -597490.91 5683397.50 98.75 -597491.16 5678824.18 102.50 -597491.18 5682942.00 100.00 -597491.37 5681725.31 98.75 -597491.41 5678461.13 106.25 -597492.08 5678566.74 106.25 -597492.11 5681387.42 97.50 -597492.26 5678011.63 101.25 -597492.26 5683775.13 98.75 -597492.28 5683888.48 98.75 -597492.54 5679004.72 100.00 -597492.56 5680537.76 98.75 -597492.67 5678451.26 106.25 -597492.74 5683692.31 98.75 -597492.90 5682789.69 100.00 -597492.97 5681534.73 98.75 -597493.11 5681257.66 98.75 -597493.27 5683497.71 98.75 -597493.30 5678918.40 101.25 -597493.54 5681421.79 97.50 -597493.58 5681979.37 97.50 -597494.08 5678441.41 106.25 -597494.12 5679197.02 100.00 -597494.15 5681940.83 97.50 -597494.23 5678219.42 102.50 -597494.34 5683086.64 100.00 -597494.59 5678640.14 105.00 -597494.61 5681399.76 97.50 -597494.72 5683315.19 98.75 -597494.99 5677677.79 101.25 -597495.31 5677499.20 101.25 -597495.35 5683487.93 98.75 -597495.49 5678431.57 106.25 -597495.52 5683008.18 100.00 -597495.65 5678275.79 103.75 -597495.91 5682221.16 98.75 -597496.26 5683795.14 98.75 -597496.33 5680100.45 100.00 -597496.39 5681805.68 97.50 -597496.42 5681958.87 97.50 -597496.42 5680148.98 98.75 -597496.54 5678051.73 101.25 -597496.55 5681853.97 97.50 -597496.62 5678717.92 103.75 -597497.12 5680205.20 98.75 -597497.45 5678575.07 106.25 -597497.57 5678003.61 101.25 -597497.67 5678347.08 105.00 -597497.91 5683303.01 98.75 -597498.14 5681751.83 97.50 -597498.15 5683478.41 98.75 -597498.23 5679187.92 100.00 -597498.35 5678422.24 106.25 -597499.08 5682935.89 100.00 -597499.13 5680530.22 98.75 -597499.18 5679087.93 100.00 -597499.27 5682187.51 97.50 -597499.66 5679011.63 100.00 -597499.72 5683392.78 98.75 -597499.77 5681720.73 98.75 -597500.04 5677993.92 101.25 -597500.21 5682796.09 100.00 -597500.21 5681528.12 98.75 -597500.28 5683698.87 98.75 -597500.29 5683377.25 98.75 -597500.57 5680062.26 100.00 -597500.58 5681406.86 97.50 -597500.92 5681415.72 97.50 -597501.04 5678825.47 102.50 -597501.11 5681384.25 97.50 -597501.14 5677984.00 101.25 -597501.50 5681861.45 97.50 -597501.82 5678267.95 103.75 -597502.14 5677974.06 101.25 -597502.16 5683890.01 98.75 -597502.23 5681847.73 97.50 -597502.23 5683775.81 98.75 -597502.62 5677671.37 101.25 -597502.67 5683469.50 98.75 -597502.73 5678214.14 102.50 -597503.25 5678917.46 101.25 -597503.26 5681981.79 97.50 -597503.36 5677964.19 101.25 -597503.43 5682227.67 98.75 -597503.44 5683320.08 98.75 -597503.54 5678413.75 106.25 -597503.68 5678644.17 105.00 -597503.76 5679179.73 100.00 -597503.95 5678724.63 103.75 -597504.11 5681940.26 97.50 -597504.17 5683084.86 100.00 -597504.18 5677502.47 101.25 -597504.39 5678339.74 105.00 -597504.45 5682927.51 100.00 -597504.62 5681712.20 98.75 -597505.02 5683005.68 100.00 -597505.51 5678580.91 106.25 -597505.61 5680522.61 98.75 -597505.76 5681375.70 97.50 -597505.89 5680200.64 98.75 -597505.96 5683797.49 98.75 -597506.04 5680100.63 100.00 -597506.06 5680151.19 98.75 -597506.12 5678049.42 101.25 -597506.16 5681803.70 97.50 -597506.38 5681958.51 97.50 -597507.00 5679018.32 100.00 -597507.29 5681521.34 98.75 -597507.41 5683305.43 98.75 -597507.81 5681750.50 97.50 -597507.88 5683705.36 98.75 -597508.19 5682192.01 97.50 -597508.34 5678260.41 103.75 -597508.36 5677955.54 101.25 -597508.75 5679085.26 100.00 -597508.78 5681703.36 98.75 -597508.81 5678405.32 106.25 -597508.83 5682801.14 100.00 -597509.06 5683390.70 98.75 -597509.20 5683462.37 98.75 -597509.29 5677663.95 101.25 -597509.44 5682918.86 100.00 -597509.44 5681366.50 97.50 -597510.21 5683376.21 98.75 -597510.33 5680063.24 100.00 -597510.33 5679172.21 100.00 -597510.39 5678732.21 103.75 -597510.61 5683885.96 98.75 -597510.73 5681865.13 97.50 -597510.86 5677509.90 101.25 -597510.91 5678826.76 102.50 -597511.10 5678332.41 105.00 -597511.25 5678208.92 102.50 -597511.86 5681849.66 97.50 -597511.94 5681356.92 97.50 -597511.98 5681694.08 98.75 -597512.07 5682232.59 98.75 -597512.09 5680514.99 98.75 -597512.15 5681985.95 97.50 -597512.20 5683775.19 98.75 -597512.20 5683324.88 98.75 -597513.07 5678647.46 105.00 -597513.19 5678916.52 101.25 -597513.47 5678042.65 101.25 -597513.56 5678586.75 106.25 -597513.83 5682909.89 100.00 -597513.88 5683082.62 100.00 -597513.93 5681938.82 97.50 -597514.13 5681514.30 98.75 -597514.31 5678397.03 106.25 -597514.33 5679025.01 100.00 -597514.37 5683002.16 100.00 -597514.76 5680196.28 98.75 -597515.10 5682199.06 97.50 -597515.13 5681744.28 97.50 -597515.26 5678253.22 103.75 -597515.36 5681684.91 98.75 -597515.57 5683800.24 98.75 -597515.74 5677656.32 101.25 -597515.78 5683711.48 98.75 -597515.80 5680152.16 98.75 -597515.84 5680100.36 100.00 -597515.98 5683310.57 98.75 -597516.06 5681802.24 97.50 -597516.32 5678323.96 105.00 -597516.36 5681958.74 97.50 -597516.38 5677950.70 101.25 -597516.83 5678739.80 103.75 -597516.87 5681348.78 97.50 -597516.98 5682806.91 100.00 -597517.22 5679165.02 100.00 -597517.71 5677517.17 101.25 -597517.80 5679081.28 100.00 -597518.12 5683459.50 98.75 -597518.56 5683879.90 98.75 -597518.57 5680507.38 98.75 -597519.00 5682901.37 100.00 -597519.00 5683391.66 98.75 -597519.29 5681992.94 97.50 -597519.78 5678203.69 102.50 -597519.92 5681868.93 97.50 -597519.97 5680064.88 100.00 -597520.10 5678035.29 101.25 -597520.20 5683376.43 98.75 -597520.24 5681931.88 97.50 -597520.61 5681506.97 98.75 -597520.78 5678828.05 102.50 -597520.92 5681853.81 97.50 -597520.95 5683329.71 98.75 -597520.97 5682237.13 98.75 -597521.33 5681736.48 97.50 -597521.45 5678315.44 105.00 -597521.55 5682206.68 97.50 -597521.61 5678592.59 106.25 -597521.65 5681677.38 98.75 -597522.17 5683774.57 98.75 -597522.18 5677648.68 101.25 -597522.21 5681922.32 97.50 -597522.26 5679030.74 100.00 -597522.43 5678391.39 106.25 -597522.45 5678650.74 105.00 -597522.80 5677525.62 101.25 -597523.15 5678915.59 101.25 -597523.31 5683079.33 100.00 -597523.47 5678248.43 103.75 -597523.70 5680192.06 98.75 -597523.82 5678746.88 103.75 -597523.92 5682999.21 100.00 -597523.98 5683717.01 98.75 -597524.48 5681912.66 97.50 -597524.55 5683315.71 98.75 -597524.91 5682893.36 100.00 -597524.97 5679158.72 100.00 -597525.02 5677954.37 101.25 -597525.16 5683803.03 98.75 -597525.27 5678026.75 101.25 -597525.29 5681344.55 97.50 -597525.49 5681955.21 97.50 -597525.50 5680099.10 100.00 -597525.52 5682000.73 97.50 -597525.66 5680151.52 98.75 -597525.95 5681800.78 97.50 -597526.37 5682809.48 100.00 -597526.42 5680501.24 98.75 -597526.47 5681499.10 98.75 -597526.59 5678306.93 105.00 -597526.69 5679076.85 100.00 -597526.88 5677534.74 101.25 -597527.19 5681728.43 97.50 -597527.31 5683875.17 98.75 -597527.95 5681669.86 98.75 -597528.02 5683460.87 98.75 -597528.30 5678198.47 102.50 -597528.58 5681873.89 97.50 -597528.61 5677641.04 101.25 -597528.91 5683392.83 98.75 -597529.11 5678384.32 106.25 -597529.38 5678598.80 106.25 -597529.48 5680067.22 100.00 -597529.69 5683334.56 98.75 -597529.70 5681858.56 97.50 -597529.84 5682212.05 97.50 -597529.87 5682241.68 98.75 -597530.12 5683377.35 98.75 -597530.19 5677962.84 101.25 -597530.22 5678018.07 101.25 -597530.72 5678828.73 102.50 -597530.81 5678753.96 103.75 -597531.17 5678655.34 105.00 -597531.18 5681905.91 97.50 -597531.53 5682008.71 97.50 -597531.55 5679034.23 100.00 -597531.90 5678298.52 105.00 -597532.12 5683773.58 98.75 -597532.39 5679152.11 100.00 -597532.52 5681491.41 98.75 -597532.57 5681720.04 97.50 -597532.64 5677542.90 101.25 -597532.70 5680187.99 98.75 -597532.79 5683076.19 100.00 -597532.95 5682887.44 100.00 -597533.10 5678914.69 101.25 -597533.15 5683320.79 98.75 -597533.29 5678246.66 103.75 -597533.29 5681349.63 97.50 -597533.55 5683719.89 98.75 -597533.55 5678375.55 106.25 -597533.58 5682997.05 100.00 -597533.80 5677972.16 101.25 -597534.20 5681950.34 97.50 -597534.35 5681424.33 97.50 -597534.47 5680495.31 98.75 -597534.68 5678009.13 101.25 -597534.72 5683805.96 98.75 -597534.85 5681662.90 98.75 -597534.92 5681881.53 97.50 -597535.01 5680096.72 100.00 -597535.34 5681797.52 97.50 -597535.54 5680151.20 98.75 -597535.58 5679072.43 100.00 -597535.87 5682017.69 97.50 -597535.87 5677634.31 101.25 -597535.87 5678365.88 106.25 -597535.99 5683870.27 98.75 -597536.05 5681710.87 97.50 -597536.27 5682810.83 100.00 -597536.32 5681681.49 97.50 -597536.38 5678505.80 107.50 -597536.52 5678192.80 102.50 -597536.62 5681415.73 97.50 -597536.73 5678515.63 107.50 -597536.85 5681691.23 97.50 -597537.13 5681924.62 97.25 -597537.20 5678604.95 106.25 -597537.21 5678290.11 105.00 -597537.58 5678495.89 107.50 -597537.80 5680072.20 100.00 -597537.83 5681358.38 97.50 -597537.87 5683462.53 98.75 -597537.96 5677981.22 101.25 -597538.03 5683340.00 98.75 -597538.05 5681701.11 97.50 -597538.13 5681863.90 97.50 -597538.17 5682247.16 98.75 -597538.23 5678356.21 106.25 -597538.25 5678760.53 103.75 -597538.33 5679144.07 100.00 -597538.40 5681368.27 97.50 -597538.48 5683395.72 98.75 -597538.48 5681899.17 97.50 -597538.64 5682216.78 97.50 -597539.05 5678525.34 107.50 -597539.09 5678486.06 107.50 -597539.36 5678660.98 105.00 -597539.46 5681484.47 98.75 -597539.51 5679040.01 100.00 -597539.63 5678000.51 101.25 -597539.81 5681889.87 97.50 -597539.84 5681378.05 97.50 -597539.97 5683379.04 98.75 -597540.07 5682026.76 97.50 -597540.24 5677548.41 101.25 -597540.35 5677990.54 101.25 -597540.36 5681431.83 97.50 -597540.65 5678829.36 102.50 -597541.00 5682881.51 100.00 -597541.11 5678346.69 106.25 -597541.33 5681672.88 97.50 -597541.65 5678534.94 107.50 -597541.72 5682036.53 97.50 -597541.76 5683325.87 98.75 -597541.86 5683771.54 98.75 -597541.97 5680184.53 98.75 -597542.23 5681656.48 98.75 -597542.32 5679065.48 100.00 -597542.41 5683073.50 100.00 -597542.54 5681944.96 97.50 -597542.55 5681387.52 97.50 -597542.59 5683723.94 98.75 -597542.73 5682046.47 97.50 -597542.75 5678476.77 107.50 -597542.76 5680489.78 98.75 -597542.98 5678244.37 103.75 -597543.05 5678913.79 101.25 -597543.57 5682996.98 100.00 -597543.89 5683809.91 98.75 -597544.11 5677628.65 101.25 -597544.24 5682056.34 97.50 -597544.27 5679136.04 100.00 -597544.33 5683864.75 98.75 -597544.36 5681871.59 97.50 -597544.42 5678186.67 102.50 -597544.51 5680079.10 100.00 -597544.51 5680094.34 100.00 -597544.56 5681793.67 97.50 -597544.99 5679047.76 100.00 -597545.08 5678611.02 106.25 -597545.32 5681413.65 97.50 -597545.42 5680151.43 98.75 -597545.83 5682253.55 98.75 -597545.85 5683346.22 98.75 -597545.89 5681396.82 97.50 -597546.14 5678338.13 106.25 -597546.17 5682812.18 100.00 -597546.25 5678766.45 103.75 -597546.37 5678286.39 105.00 -597546.39 5681477.54 98.75 -597546.41 5678543.72 107.50 -597546.41 5678467.49 107.50 -597546.52 5681664.39 97.50 -597546.71 5682065.94 97.50 -597547.37 5678666.87 105.00 -597547.63 5679057.33 100.00 -597547.69 5683464.39 98.75 -597547.83 5682220.47 97.50 -597547.95 5683398.91 98.75 -597548.06 5681936.63 97.50 -597548.41 5681406.40 97.50 -597548.87 5683786.67 97.50 -597548.96 5681436.75 97.50 -597548.97 5681880.44 97.50 -597549.04 5682875.58 100.00 -597549.75 5683381.07 98.75 -597549.85 5680087.32 100.00 -597549.91 5677550.91 101.25 -597550.20 5679128.01 100.00 -597550.33 5683330.99 98.75 -597550.50 5681651.20 98.75 -597550.59 5678829.98 102.50 -597550.64 5683712.92 97.50 -597550.67 5678458.46 107.50 -597550.87 5683767.52 98.75 -597550.91 5682075.01 97.50 -597551.10 5683729.19 98.75 -597551.16 5678552.50 107.50 -597551.23 5680181.06 98.75 -597551.36 5678329.67 106.25 -597551.47 5683857.94 98.75 -597551.72 5680485.34 98.75 -597551.84 5683795.51 97.50 -597552.03 5683070.80 100.00 -597552.32 5678180.54 102.50 -597552.44 5678241.21 103.75 -597552.65 5682260.85 98.75 -597552.68 5677623.57 101.25 -597552.88 5681656.71 97.50 -597552.92 5683814.15 98.75 -597552.96 5678617.09 106.25 -597552.99 5678914.55 101.25 -597553.21 5681889.44 97.50 -597553.33 5681470.60 98.75 -597553.56 5682996.79 100.00 -597553.57 5681928.31 97.50 -597553.66 5683352.46 98.75 -597554.25 5681791.43 97.50 -597554.25 5678772.36 103.75 -597554.69 5680153.65 98.75 -597554.87 5679119.18 100.00 -597555.13 5678449.53 107.50 -597555.18 5678673.02 105.00 -597555.30 5678282.06 105.00 -597555.67 5681918.67 97.50 -597555.70 5681899.11 97.50 -597555.80 5683707.39 97.50 -597555.90 5682083.57 97.50 -597556.12 5682812.91 100.00 -597556.68 5683849.59 98.75 -597557.10 5683783.44 97.50 -597557.20 5681908.80 97.50 -597557.26 5683394.76 97.50 -597557.40 5683402.16 98.75 -597557.47 5683466.41 98.75 -597557.57 5682222.70 97.50 -597558.09 5683337.30 98.75 -597558.15 5678559.40 107.50 -597558.53 5683718.87 97.50 -597558.55 5678322.80 106.25 -597558.56 5682873.88 100.00 -597558.72 5683735.62 98.75 -597558.77 5681645.93 98.75 -597558.94 5678512.71 108.75 -597559.11 5682268.38 98.75 -597559.25 5683276.27 98.75 -597559.48 5683383.34 98.75 -597559.51 5683762.53 98.75 -597559.54 5679110.35 100.00 -597559.57 5683840.02 98.75 -597559.59 5678440.60 107.50 -597559.81 5681649.65 97.50 -597559.84 5677551.69 101.25 -597559.99 5678382.65 107.50 -597560.15 5680177.29 98.75 -597560.17 5683820.79 98.75 -597560.22 5678174.41 102.50 -597560.26 5681463.67 98.75 -597560.32 5678502.84 108.75 -597560.32 5683388.93 97.50 -597560.35 5678372.78 107.50 -597560.46 5683800.46 97.50 -597560.53 5678830.61 102.50 -597560.68 5680480.89 98.75 -597560.75 5678623.28 106.25 -597560.80 5681636.34 98.75 -597561.23 5678392.55 107.50 -597561.28 5678522.19 108.75 -597561.35 5683358.84 98.75 -597561.49 5683830.30 98.75 -597561.65 5683068.10 100.00 -597561.68 5677619.23 101.25 -597561.70 5678492.97 108.75 -597561.91 5678238.06 103.75 -597562.06 5682287.78 98.75 -597562.20 5678362.98 107.50 -597562.27 5682091.27 97.50 -597562.29 5682277.79 98.75 -597562.30 5680159.85 98.75 -597562.30 5682297.74 98.75 -597562.37 5678679.82 105.00 -597562.37 5683269.82 98.75 -597562.49 5678777.89 103.75 -597562.93 5678915.59 101.25 -597563.40 5682997.70 100.00 -597563.41 5678431.44 107.50 -597563.51 5678402.26 107.50 -597563.63 5682307.65 98.75 -597564.02 5683753.72 98.75 -597564.12 5681789.84 97.50 -597564.12 5680168.27 98.75 -597564.19 5683743.88 98.75 -597564.32 5678277.96 105.00 -597564.65 5678531.57 108.75 -597564.95 5682317.55 98.75 -597565.47 5678421.68 107.50 -597565.48 5678353.55 107.50 -597565.59 5678484.00 108.75 -597565.71 5683707.75 97.50 -597565.84 5683343.60 98.75 -597565.96 5678411.94 107.50 -597565.98 5678316.19 106.25 -597566.11 5682813.14 100.00 -597566.13 5678565.36 107.50 -597566.31 5679103.17 100.00 -597566.47 5683398.55 97.50 -597566.84 5683282.75 98.75 -597566.89 5683785.16 97.50 -597566.95 5683405.02 98.75 -597567.16 5683468.86 98.75 -597567.53 5682223.21 97.50 -597567.54 5682327.19 98.75 -597567.72 5683722.27 97.50 -597567.96 5681643.91 97.50 -597568.10 5678168.26 102.50 -597568.53 5678629.47 106.25 -597568.54 5682873.51 100.00 -597568.55 5678540.70 108.75 -597568.61 5681701.19 97.50 -597568.69 5678687.49 105.00 -597569.04 5683365.22 98.75 -597569.08 5678344.30 107.50 -597569.17 5681691.60 97.50 -597569.22 5683385.62 98.75 -597569.25 5683805.11 97.50 -597569.43 5680476.08 98.75 -597569.51 5677553.48 101.25 -597569.82 5683715.32 97.25 -597569.99 5683390.47 97.50 -597570.05 5681463.37 98.75 -597570.30 5677614.20 101.25 -597570.34 5682336.78 98.75 -597570.36 5678233.05 103.75 -597570.39 5678831.82 102.50 -597570.75 5682096.55 97.50 -597570.83 5678475.52 108.75 -597571.43 5681681.89 97.50 -597571.44 5678782.24 103.75 -597571.44 5683066.28 100.00 -597572.13 5681710.52 97.50 -597572.24 5683270.88 98.75 -597572.87 5678916.63 101.25 -597573.13 5682999.99 100.00 -597573.53 5678309.72 106.25 -597573.60 5683349.90 98.75 -597573.71 5678274.76 105.00 -597573.77 5679096.52 100.00 -597573.92 5681788.09 97.50 -597574.35 5678548.52 108.75 -597574.84 5683396.70 97.25 -597574.87 5683373.32 98.75 -597574.90 5682345.50 98.75 -597574.96 5678570.03 107.50 -597575.01 5678695.17 105.00 -597575.38 5678336.56 107.50 -597575.55 5683709.01 97.50 -597575.93 5683812.23 97.50 -597575.98 5678162.09 102.50 -597575.99 5683401.56 97.50 -597576.09 5682813.36 100.00 -597576.17 5678635.84 106.25 -597576.50 5683787.72 97.50 -597576.52 5683285.22 98.75 -597576.54 5681719.44 97.50 -597576.75 5683406.99 98.75 -597576.84 5683471.36 98.75 -597576.84 5678467.60 108.75 -597577.24 5681673.85 97.50 -597577.36 5681219.15 98.75 -597577.52 5682223.44 97.50 -597577.56 5681646.59 97.50 -597577.63 5683722.87 97.50 -597577.80 5681980.68 97.50 -597578.06 5680471.02 98.75 -597578.11 5678226.75 103.75 -597578.15 5681209.19 98.75 -597578.52 5682873.13 100.00 -597578.69 5681970.75 97.50 -597578.72 5677557.34 101.25 -597578.82 5677608.98 101.25 -597578.88 5681228.93 98.75 -597579.05 5681199.24 98.75 -597579.08 5683387.17 98.75 -597579.16 5681990.47 97.50 -597579.51 5683178.25 98.75 -597579.53 5683393.44 97.50 -597579.67 5683716.50 97.25 -597579.74 5683850.08 97.50 -597579.83 5682100.24 97.50 -597579.86 5681463.23 98.75 -597580.17 5678833.71 102.50 -597580.39 5678786.60 103.75 -597580.40 5681189.34 98.75 -597580.63 5683381.49 98.75 -597580.65 5683840.18 97.50 -597580.83 5682353.55 98.75 -597580.84 5682573.55 98.75 -597580.85 5682583.53 98.75 -597581.13 5680945.73 98.75 -597581.24 5683973.27 97.50 -597581.27 5683170.98 98.75 -597581.34 5678702.84 105.00 -597581.36 5683356.20 98.75 -597581.36 5683065.06 100.00 -597581.42 5681238.58 98.75 -597581.44 5679090.15 100.00 -597581.60 5680955.69 98.75 -597581.61 5683820.39 97.50 -597581.72 5681727.81 97.50 -597581.76 5681179.44 98.75 -597581.77 5681655.38 97.50 -597581.78 5681665.14 97.50 -597581.85 5681961.40 97.50 -597581.92 5683273.39 98.75 -597582.01 5683830.32 97.50 -597582.06 5681782.28 97.50 -597582.17 5680965.67 98.75 -597582.35 5678305.12 106.25 -597582.74 5680975.65 98.75 -597582.85 5683002.28 100.00 -597582.85 5678917.08 101.25 -597582.87 5678459.74 108.75 -597582.97 5678330.15 107.50 -597583.10 5678271.55 105.00 -597583.11 5678553.26 108.75 -597583.60 5681169.63 98.75 -597583.76 5682592.94 98.75 -597583.77 5678642.26 106.25 -597583.78 5678574.69 107.50 -597583.85 5678155.93 102.50 -597583.90 5683398.54 97.25 -597583.97 5680985.56 98.75 -597584.00 5680936.16 98.75 -597584.30 5677600.77 101.25 -597584.61 5681998.52 97.50 -597584.73 5683857.41 97.50 -597585.05 5681247.89 98.75 -597585.18 5682564.55 98.75 -597585.22 5680995.48 98.75 -597585.40 5683710.28 97.50 -597585.73 5683403.83 97.50 -597585.75 5678220.34 103.75 -597585.86 5681159.89 98.75 -597585.94 5681952.30 97.50 -597586.05 5683790.50 97.50 -597586.08 5682813.59 100.00 -597586.21 5683287.69 98.75 -597586.23 5677563.58 101.25 -597586.46 5683474.06 98.75 -597586.52 5680465.73 98.75 -597586.55 5683408.97 98.75 -597586.60 5681005.37 98.75 -597586.78 5678450.58 108.75 -597587.25 5682221.38 97.50 -597587.27 5681257.56 98.75 -597587.40 5680926.82 98.75 -597587.49 5683723.90 97.50 -597587.73 5683373.34 97.50 -597588.12 5681150.16 98.75 -597588.15 5683388.05 98.75 -597588.20 5681267.50 98.75 -597588.26 5678709.91 105.00 -597588.51 5682872.75 100.00 -597588.54 5681277.49 98.75 -597588.58 5677591.86 101.25 -597588.70 5683180.97 98.75 -597588.74 5682601.18 98.75 -597588.75 5681015.13 98.75 -597588.80 5682359.05 98.75 -597589.21 5683395.83 97.50 -597589.22 5683362.37 98.75 -597589.44 5678790.62 103.75 -597589.44 5681287.38 98.75 -597589.51 5683717.67 97.25 -597589.57 5679084.34 100.00 -597589.67 5681463.23 98.75 -597589.69 5682101.82 97.50 -597589.89 5683381.85 97.50 -597589.94 5678835.60 102.50 -597590.02 5681733.33 97.50 -597590.30 5677572.09 101.25 -597590.43 5681140.43 98.75 -597590.54 5677582.06 101.25 -597590.83 5678649.21 106.25 -597590.84 5678441.48 108.75 -597590.85 5681973.55 98.75 -597590.90 5681024.89 98.75 -597590.95 5678324.16 107.50 -597590.99 5683975.20 97.50 -597591.00 5678265.59 105.00 -597591.04 5681943.93 97.50 -597591.11 5678300.43 106.25 -597591.13 5683170.02 98.75 -597591.28 5683063.85 100.00 -597591.38 5678149.36 102.50 -597591.48 5682005.71 97.50 -597591.54 5678558.58 108.75 -597591.60 5683275.87 98.75 -597592.30 5681296.96 98.75 -597592.34 5678579.82 107.50 -597592.52 5680918.23 98.75 -597592.64 5683004.19 100.00 -597592.72 5682558.47 98.75 -597592.75 5681130.71 98.75 -597592.84 5678917.50 101.25 -597592.97 5683400.38 97.25 -597593.27 5678213.78 103.75 -597593.45 5678382.94 108.75 -597593.64 5681982.18 98.75 -597593.82 5681034.39 98.75 -597593.88 5683853.69 97.50 -597594.16 5678373.11 108.75 -597594.51 5680459.71 98.75 -597594.80 5678432.37 108.75 -597595.00 5679444.00 98.75 -597595.08 5681121.00 98.75 -597595.16 5681306.53 98.75 -597595.24 5683711.54 97.50 -597595.32 5678392.73 108.75 -597595.32 5683794.04 97.50 -597595.51 5683376.43 97.50 -597595.56 5683405.56 97.50 -597595.59 5683381.61 97.25 -597595.77 5683290.57 98.75 -597595.79 5678422.45 108.75 -597595.89 5682815.03 100.00 -597595.98 5678716.18 105.00 -597596.03 5683412.04 98.75 -597596.08 5683476.77 98.75 -597596.10 5679434.34 98.75 -597596.35 5679453.90 98.75 -597596.52 5678402.60 108.75 -597596.79 5678412.54 108.75 -597596.83 5678363.60 108.75 -597596.86 5683388.99 97.50 -597596.93 5682218.93 97.50 -597597.11 5683368.50 98.75 -597597.15 5678656.89 106.25 -597597.18 5682877.12 100.00 -597597.25 5681111.24 98.75 -597597.26 5683725.63 97.50 -597597.42 5682606.13 98.75 -597597.69 5679078.54 100.00 -597597.78 5680909.74 98.75 -597597.94 5682363.10 98.75 -597597.97 5681043.48 98.75 -597598.02 5681316.11 98.75 -597598.47 5681937.27 97.50 -597598.48 5683182.92 98.75 -597598.73 5678142.59 102.50 -597598.78 5681970.47 98.75 -597598.80 5678259.45 105.00 -597599.07 5678294.47 106.25 -597599.09 5681979.73 99.00 -597599.11 5683396.44 97.50 -597599.14 5681737.34 97.50 -597599.19 5681990.46 98.75 -597599.23 5678318.59 107.50 -597599.26 5681101.45 98.75 -597599.27 5678792.14 103.75 -597599.36 5683718.66 97.25 -597599.36 5679424.90 98.75 -597599.42 5682103.80 97.50 -597599.47 5681463.23 98.75 -597599.71 5679463.30 98.75 -597599.77 5678836.99 102.50 -597599.93 5682011.01 97.50 -597599.96 5678563.90 108.75 -597600.32 5682552.09 98.75 -597600.50 5683978.04 97.50 -597600.66 5678585.34 107.50 -597600.79 5678207.23 103.75 -597600.88 5683389.18 97.25 -597600.89 5681325.68 98.75 -597600.91 5678354.51 108.75 -597601.11 5683169.66 98.75 -597601.17 5683062.48 100.00 -597601.27 5681091.66 98.75 -597601.29 5683278.32 98.75 -597601.79 5681052.70 98.75 -597601.95 5683847.87 97.50 -597601.98 5683384.04 97.50 -597602.03 5683402.22 97.25 -597602.18 5680900.77 98.75 -597602.49 5680453.69 98.75 -597602.56 5683005.41 100.00 -597602.82 5678917.92 101.25 -597602.95 5681081.81 98.75 -597603.16 5679472.68 98.75 -597603.88 5678722.13 105.00 -597604.35 5678663.72 106.25 -597604.45 5683798.01 97.50 -597604.55 5681071.95 98.75 -597604.95 5681334.79 98.75 -597604.96 5681062.18 98.75 -597604.99 5678345.42 108.75 -597605.00 5683408.46 97.50 -597605.01 5683374.62 98.75 -597605.15 5683711.53 97.50 -597605.28 5683480.47 98.75 -597605.28 5683293.63 98.75 -597605.33 5683415.69 98.75 -597605.47 5681977.45 98.75 -597605.53 5682817.67 100.00 -597605.57 5682882.55 100.00 -597605.81 5679072.73 100.00 -597605.89 5681930.61 97.50 -597605.91 5680891.53 98.75 -597605.95 5678252.58 105.00 -597606.09 5678135.81 102.50 -597606.12 5678512.92 110.00 -597606.18 5683396.74 97.25 -597606.31 5682610.61 98.75 -597606.52 5682544.33 98.75 -597606.65 5682216.64 97.50 -597606.92 5678522.68 110.00 -597606.99 5679418.52 98.75 -597607.03 5681987.16 98.75 -597607.16 5683726.34 97.50 -597607.40 5682365.80 98.75 -597607.47 5678503.11 110.00 -597607.66 5678313.24 107.50 -597608.02 5678200.35 103.75 -597608.03 5678290.23 106.25 -597608.07 5678569.68 108.75 -597608.10 5683185.61 98.75 -597608.13 5682108.69 97.50 -597608.53 5682016.03 97.50 -597608.56 5681740.33 97.50 -597608.62 5680881.92 98.75 -597608.65 5679480.96 98.75 -597608.74 5678532.42 110.00 -597608.83 5678493.30 110.00 -597608.97 5683391.19 97.50 -597608.97 5678590.86 107.50 -597609.11 5678793.67 103.75 -597609.23 5683717.74 97.25 -597609.28 5681463.23 98.75 -597609.60 5681343.58 98.75 -597609.73 5678837.08 102.50 -597609.82 5683981.51 97.50 -597610.47 5680447.67 98.75 -597610.61 5683843.09 97.50 -597610.72 5678483.64 110.00 -597610.97 5683280.77 98.75 -597611.00 5683060.69 100.00 -597611.10 5683404.06 97.25 -597611.10 5683169.29 98.75 -597611.31 5680872.29 98.75 -597611.46 5678338.41 108.75 -597611.79 5682535.84 98.75 -597611.90 5678670.19 106.25 -597611.99 5683381.69 98.75 -597612.00 5678541.54 110.00 -597612.47 5683006.63 100.00 -597612.75 5678916.92 101.25 -597612.92 5678245.52 105.00 -597613.28 5678725.36 105.00 -597613.50 5678129.11 102.50 -597613.51 5681970.73 97.50 -597613.95 5680862.65 98.75 -597613.95 5679066.94 100.00 -597613.97 5683412.87 97.50 -597613.98 5683485.39 98.75 -597614.18 5683799.70 97.50 -597614.44 5683419.77 98.75 -597614.53 5679489.05 98.75 -597614.53 5681979.97 97.50 -597614.66 5678474.55 110.00 -597614.88 5683296.42 98.75 -597615.07 5683711.20 97.50 -597615.15 5678193.37 103.75 -597615.16 5682820.31 100.00 -597615.37 5681927.57 97.50 -597615.52 5682883.49 100.00 -597615.79 5682613.76 98.75 -597615.84 5678307.55 107.50 -597615.96 5683398.33 97.50 -597616.06 5678575.63 108.75 -597616.24 5678597.68 107.50 -597616.47 5682214.79 97.50 -597616.54 5678285.31 106.25 -597616.55 5682114.01 97.50 -597616.72 5681350.59 98.75 -597616.80 5679417.09 98.75 -597617.05 5682527.34 98.75 -597617.06 5681961.75 97.50 -597617.06 5683727.06 97.50 -597617.37 5682366.37 98.75 -597617.68 5682020.01 97.50 -597617.77 5678549.60 110.00 -597617.85 5683187.75 98.75 -597618.04 5683409.95 97.25 -597618.33 5680441.50 98.75 -597618.37 5683389.39 98.75 -597618.44 5681741.60 97.50 -597618.46 5680853.81 98.75 -597618.61 5678465.46 110.00 -597618.94 5678795.20 103.75 -597619.10 5683716.82 97.25 -597619.43 5683983.99 97.50 -597619.53 5678238.12 105.00 -597619.69 5678837.17 102.50 -597619.74 5683839.17 97.50 -597619.77 5678676.12 106.25 -597619.93 5678333.16 108.75 -597620.40 5679497.13 98.75 -597620.78 5683058.69 100.00 -597620.81 5683282.36 98.75 -597621.09 5683169.33 98.75 -597621.44 5681986.53 97.50 -597621.72 5678123.41 102.50 -597622.11 5679061.17 100.00 -597622.29 5678186.39 103.75 -597622.30 5681700.86 97.50 -597622.36 5683005.33 100.00 -597622.55 5678456.38 110.00 -597622.55 5681691.42 97.50 -597622.68 5678915.73 101.25 -597622.68 5683490.31 98.75 -597622.69 5678728.58 105.00 -597622.91 5683417.33 97.50 -597622.92 5683405.50 97.50 -597623.24 5683424.52 98.75 -597623.45 5678301.09 107.50 -597623.51 5678604.52 107.50 -597623.54 5681357.89 98.75 -597623.56 5680845.21 98.75 -597623.76 5681681.93 97.50 -597623.88 5678278.65 106.25 -597624.02 5681954.60 97.50 -597624.05 5678581.59 108.75 -597624.07 5683800.65 97.50 -597624.21 5682120.43 97.50 -597624.28 5682824.00 100.00 -597624.50 5683299.13 98.75 -597624.66 5678556.59 110.00 -597624.74 5681434.44 98.75 -597624.75 5683397.08 98.75 -597624.90 5683710.21 97.50 -597624.91 5681924.63 97.50 -597625.13 5681424.59 98.75 -597625.19 5682521.81 98.75 -597625.27 5682616.92 98.75 -597625.46 5682884.42 100.00 -597625.67 5683414.90 97.25 -597626.14 5678230.72 105.00 -597626.20 5680435.33 98.75 -597626.32 5682214.37 97.50 -597626.42 5681444.13 98.75 -597626.70 5678447.39 110.00 -597626.72 5679415.90 98.75 -597626.80 5682024.06 97.50 -597626.84 5683725.60 97.50 -597626.92 5679504.68 98.75 -597627.01 5681672.89 97.50 -597627.35 5682366.92 98.75 -597627.43 5678326.61 108.75 -597627.71 5683189.37 98.75 -597628.05 5681415.03 98.75 -597628.05 5681708.14 97.50 -597628.37 5681742.49 97.50 -597628.88 5678795.15 103.75 -597628.96 5683715.80 97.25 -597628.98 5678679.81 106.25 -597629.14 5681365.85 98.75 -597629.17 5683985.99 97.50 -597629.60 5683837.91 97.50 -597629.64 5678837.26 102.50 -597629.78 5678293.40 107.50 -597629.81 5679054.94 100.00 -597629.94 5678117.72 102.50 -597630.06 5678180.26 103.75 -597630.13 5681405.27 98.75 -597630.22 5678271.21 106.25 -597630.27 5681663.85 97.50 -597630.36 5683055.86 100.00 -597630.52 5681990.67 97.50 -597630.63 5683411.85 97.50 -597630.66 5680838.62 98.75 -597630.68 5683423.43 97.50 -597630.76 5683283.38 98.75 -597630.87 5681453.08 98.75 -597630.93 5678438.43 110.00 -597630.94 5678611.19 107.50 -597630.94 5681375.68 98.75 -597631.08 5683169.40 98.75 -597631.24 5678588.49 108.75 -597631.47 5683404.32 98.75 -597631.50 5683494.95 98.75 -597631.91 5681395.43 98.75 -597632.06 5682126.60 97.50 -597632.08 5683429.18 98.75 -597632.10 5678731.80 105.00 -597632.21 5682830.08 100.00 -597632.23 5683005.51 100.00 -597632.37 5678562.80 110.00 -597632.42 5681385.56 98.75 -597632.60 5678914.54 101.25 -597633.18 5681950.81 97.50 -597633.25 5678223.81 105.00 -597633.66 5683419.21 97.25 -597633.71 5681920.27 97.50 -597633.72 5679512.00 98.75 -597633.84 5682516.81 98.75 -597633.88 5678370.23 110.00 -597634.01 5683801.08 97.50 -597634.06 5680429.15 98.75 -597634.08 5683301.95 98.75 -597634.25 5678429.18 110.00 -597634.38 5682620.90 98.75 -597634.54 5683707.85 97.50 -597634.56 5678380.11 110.00 -597634.84 5678319.95 108.75 -597634.88 5678262.46 106.25 -597635.13 5682217.88 97.50 -597635.17 5678360.43 110.00 -597635.23 5678390.00 110.00 -597635.41 5682885.34 100.00 -597635.76 5682028.45 97.50 -597635.80 5679046.95 100.00 -597636.10 5678419.44 110.00 -597636.14 5678399.86 110.00 -597636.56 5679414.23 98.75 -597636.61 5683723.82 97.50 -597636.68 5678350.65 110.00 -597637.32 5678409.69 110.00 -597637.33 5682367.45 98.75 -597637.57 5683191.00 98.75 -597637.59 5678618.62 107.50 -597637.66 5681708.41 97.50 -597637.69 5681739.54 97.50 -597637.71 5678684.58 106.25 -597638.16 5678112.03 102.50 -597638.40 5681658.88 97.50 -597638.60 5683713.49 97.25 -597638.71 5678175.29 103.75 -597638.83 5678795.02 103.75 -597638.92 5683987.99 97.50 -597639.25 5678290.57 107.50 -597639.32 5683427.89 97.50 -597639.48 5683837.04 97.50 -597639.52 5680834.03 98.75 -597639.60 5678837.35 102.50 -597639.73 5683052.43 100.00 -597639.78 5683415.87 97.50 -597639.88 5681993.85 97.50 -597639.93 5678593.19 108.75 -597639.99 5682132.68 97.50 -597640.21 5681456.41 98.75 -597640.23 5682836.02 100.00 -597640.52 5679519.32 98.75 -597640.63 5678217.18 105.00 -597640.64 5680421.78 98.75 -597640.67 5683408.22 98.75 -597640.72 5683284.15 98.75 -597640.99 5683498.09 98.75 -597641.00 5683433.68 98.75 -597641.08 5683169.58 98.75 -597641.09 5678567.22 110.00 -597641.24 5678254.87 106.25 -597641.41 5678510.16 111.25 -597641.46 5681914.03 97.50 -597641.59 5678734.70 105.00 -597641.78 5679038.95 100.00 -597641.91 5682225.22 97.50 -597642.06 5683007.25 100.00 -597642.07 5683422.70 97.25 -597642.22 5678912.09 101.25 -597642.31 5678313.36 108.75 -597642.37 5678500.29 111.25 -597642.60 5681947.55 97.50 -597642.88 5682626.14 98.75 -597643.35 5683305.67 98.75 -597643.45 5682514.08 98.75 -597643.56 5678490.38 111.25 -597643.83 5681494.78 98.75 -597643.87 5683802.22 97.50 -597644.05 5683705.05 97.50 -597644.12 5678344.36 110.00 -597644.36 5678625.92 107.50 -597644.62 5681685.92 96.00 -597644.64 5680862.67 100.00 -597644.74 5678480.48 111.25 -597644.81 5682032.63 97.50 -597645.19 5682884.21 100.00 -597645.61 5680872.03 100.00 -597645.66 5678519.18 111.25 -597645.85 5681504.25 98.75 -597645.87 5681513.88 98.75 -597646.02 5681734.30 97.50 -597646.22 5680413.49 98.75 -597646.26 5678106.16 102.50 -597646.28 5679411.91 98.75 -597646.29 5683721.72 97.50 -597646.33 5678470.65 111.25 -597646.71 5678688.67 106.25 -597647.18 5681905.86 97.50 -597647.25 5681709.00 97.50 -597647.26 5682368.20 98.75 -597647.28 5681655.39 97.50 -597647.33 5679526.64 98.75 -597647.37 5678170.31 103.75 -597647.44 5682233.52 97.50 -597647.46 5678285.33 107.50 -597647.50 5683191.98 98.75 -597647.74 5681523.33 98.75 -597647.85 5678247.50 106.25 -597647.87 5679031.04 100.00 -597648.06 5680900.36 100.00 -597648.23 5678210.81 105.00 -597648.24 5683711.19 97.25 -597648.25 5680881.18 100.00 -597648.35 5680890.85 100.00 -597648.42 5682841.75 100.00 -597648.69 5680830.08 98.75 -597648.78 5678794.88 103.75 -597648.84 5683988.56 97.50 -597648.87 5683430.81 97.50 -597648.95 5683419.85 97.50 -597648.96 5678597.42 108.75 -597648.97 5678461.03 111.25 -597648.98 5683048.65 100.00 -597649.25 5682136.40 97.50 -597649.31 5680856.16 100.00 -597649.40 5683837.83 97.50 -597649.55 5681459.74 98.75 -597649.55 5678836.93 102.50 -597649.76 5681995.20 97.50 -597649.87 5683412.12 98.75 -597649.92 5678528.21 111.25 -597649.95 5681532.75 98.75 -597650.12 5678307.18 108.75 -597650.15 5683437.70 98.75 -597650.33 5683286.36 98.75 -597650.41 5678570.57 110.00 -597650.48 5683501.23 98.75 -597650.48 5683426.20 97.25 -597651.07 5683169.81 98.75 -597651.18 5682631.72 98.75 -597651.43 5678736.10 105.00 -597651.56 5681542.29 98.75 -597651.58 5678908.59 101.25 -597651.61 5678451.40 111.25 -597651.71 5683009.84 100.00 -597651.81 5680405.20 98.75 -597651.97 5678338.32 110.00 -597652.16 5678632.15 107.50 -597652.25 5681945.03 97.50 -597652.75 5683309.03 98.75 -597652.83 5682241.94 97.50 -597653.08 5682511.39 98.75 -597653.09 5681551.84 98.75 -597653.19 5681897.91 97.50 -597653.39 5683701.70 97.50 -597653.66 5683804.01 97.50 -597654.14 5679533.94 98.75 -597654.18 5680907.85 100.00 -597654.18 5682036.05 97.50 -597654.32 5678100.25 102.50 -597654.50 5679023.57 100.00 -597654.62 5681561.40 98.75 -597654.66 5678536.84 111.25 -597654.84 5682881.65 100.00 -597655.08 5678279.05 107.50 -597655.25 5678240.92 106.25 -597655.76 5683718.74 97.50 -597655.87 5681712.89 97.50 -597655.98 5679409.55 98.75 -597655.99 5678204.62 105.00 -597656.14 5678165.56 103.75 -597656.19 5681570.94 98.75 -597656.22 5682847.95 100.00 -597656.34 5678691.17 106.25 -597656.39 5682372.27 98.75 -597656.42 5681655.06 97.50 -597656.83 5678442.99 111.25 -597657.15 5683880.48 97.50 -597657.26 5680396.82 98.75 -597657.27 5680860.87 100.00 -597657.44 5683843.57 97.50 -597657.48 5683192.42 98.75 -597657.50 5680885.77 100.50 -597657.78 5681580.49 98.75 -597657.86 5683708.80 97.25 -597657.94 5678300.99 108.75 -597657.96 5683870.75 97.50 -597658.22 5683044.87 100.00 -597658.23 5683423.55 97.50 -597658.54 5678599.66 108.75 -597658.54 5680828.69 98.75 -597658.59 5682139.90 97.50 -597658.60 5683433.04 97.50 -597658.62 5678793.60 103.75 -597658.78 5683989.06 97.50 -597658.89 5681463.06 98.75 -597659.11 5682017.42 97.25 -597659.12 5683429.00 97.25 -597659.20 5683415.66 98.75 -597659.47 5682637.29 98.75 -597659.48 5678433.81 111.25 -597659.49 5678836.50 102.50 -597659.54 5683440.98 98.75 -597659.56 5681590.00 98.75 -597659.57 5678383.93 111.25 -597659.57 5683290.17 98.75 -597659.63 5681994.26 97.50 -597659.71 5678423.84 111.25 -597659.71 5678393.91 111.25 -597659.74 5678573.91 110.00 -597659.79 5681890.43 97.50 -597659.82 5678332.28 110.00 -597659.86 5678403.89 111.25 -597659.94 5678413.86 111.25 -597659.98 5683504.30 98.75 -597660.11 5678373.98 111.25 -597660.68 5681940.37 97.50 -597660.72 5678637.17 107.50 -597660.76 5682247.56 97.50 -597660.87 5678904.91 101.25 -597660.96 5679541.25 98.75 -597661.00 5679016.00 100.00 -597661.02 5678364.05 111.25 -597661.06 5683170.04 98.75 -597661.28 5678737.50 105.00 -597661.35 5681599.51 98.75 -597661.45 5683888.99 97.50 -597661.55 5683861.47 97.50 -597661.56 5683011.30 100.00 -597661.94 5678354.11 111.25 -597662.16 5678094.05 102.50 -597662.18 5680913.29 100.00 -597662.31 5678272.31 107.50 -597662.38 5683311.70 98.75 -597662.57 5678542.92 111.25 -597662.68 5680388.42 98.75 -597662.69 5683808.15 97.50 -597662.71 5682508.74 98.75 -597662.74 5683698.37 97.50 -597662.88 5678234.59 106.25 -597663.10 5681706.57 97.50 -597663.21 5683851.67 97.50 -597663.49 5682854.79 100.00 -597663.58 5682039.39 97.50 -597663.77 5680867.90 100.00 -597664.09 5678344.74 111.25 -597664.39 5682878.78 100.00 -597664.46 5681154.55 100.00 -597664.54 5681659.99 97.50 -597664.81 5678200.47 105.00 -597664.99 5678160.96 103.75 -597665.23 5683715.76 97.50 -597665.58 5679406.78 98.75 -597665.65 5681698.01 97.50 -597665.75 5678294.81 108.75 -597665.88 5681882.53 97.50 -597665.96 5678693.66 106.25 -597665.97 5681669.24 97.50 -597666.04 5681688.41 97.50 -597666.19 5681164.33 100.00 -597666.26 5681144.90 100.00 -597666.29 5682372.89 98.75 -597666.32 5678324.83 110.00 -597666.52 5681678.82 97.50 -597666.80 5679007.87 100.00 -597666.98 5681932.79 97.50 -597667.43 5679548.81 98.75 -597667.45 5683706.26 97.25 -597667.46 5683192.86 98.75 -597667.47 5683041.09 100.00 -597667.80 5683426.27 97.50 -597667.93 5683431.31 97.25 -597668.00 5683295.19 98.75 -597668.10 5680380.02 98.75 -597668.27 5682642.01 98.75 -597668.40 5678791.78 103.75 -597668.41 5683895.96 97.50 -597668.43 5681464.88 98.75 -597668.44 5683434.79 97.50 -597668.44 5678600.72 108.75 -597668.48 5680827.68 98.75 -597668.51 5682141.08 97.50 -597668.58 5683988.22 97.50 -597668.69 5681135.27 100.00 -597668.73 5683418.68 98.75 -597668.90 5681997.96 97.50 -597669.06 5680989.71 100.00 -597669.28 5683443.22 98.75 -597669.37 5680875.79 100.00 -597669.42 5678575.34 110.00 -597669.44 5678836.06 102.50 -597669.57 5678087.42 102.50 -597669.61 5678265.67 107.50 -597669.63 5682252.15 97.50 -597669.66 5682871.82 100.00 -597669.72 5678641.48 107.50 -597669.73 5683506.51 98.75 -597670.07 5681173.44 100.00 -597670.14 5682862.25 100.00 -597670.15 5678901.22 101.25 -597670.32 5681873.76 97.50 -597670.42 5680979.88 100.00 -597670.48 5678549.01 111.25 -597670.63 5678228.41 106.25 -597670.75 5680999.08 100.00 -597670.97 5680911.80 100.00 -597671.01 5678337.56 111.25 -597671.04 5683170.39 98.75 -597671.19 5678738.11 105.00 -597671.24 5681923.76 97.50 -597671.32 5681125.70 100.00 -597671.51 5683012.28 100.00 -597671.74 5683812.25 97.50 -597672.01 5683314.37 98.75 -597672.37 5683695.96 97.50 -597672.56 5679557.38 98.75 -597672.70 5682508.52 98.75 -597672.72 5678317.27 110.00 -597673.07 5679000.14 100.00 -597673.18 5681914.01 97.50 -597673.40 5682041.18 97.50 -597673.63 5680371.69 98.75 -597673.75 5681864.42 97.50 -597673.84 5678156.35 103.75 -597673.94 5681116.12 100.00 -597674.01 5681182.55 100.00 -597674.32 5678197.64 105.00 -597674.39 5680902.84 100.00 -597674.55 5680883.97 100.00 -597674.69 5683712.78 97.50 -597674.98 5681904.19 97.50 -597675.10 5683302.18 98.75 -597675.18 5679404.01 98.75 -597675.30 5680893.20 100.00 -597675.31 5678292.07 108.75 -597675.34 5681106.30 100.00 -597675.36 5678079.27 102.50 -597675.40 5678481.23 112.50 -597675.65 5678695.72 106.25 -597675.95 5681007.37 100.00 -597676.02 5683902.24 97.50 -597676.28 5682373.12 98.75 -597676.78 5681096.48 100.00 -597676.86 5678490.95 112.50 -597676.88 5681894.40 97.50 -597676.91 5683432.82 97.25 -597676.94 5679566.28 98.75 -597677.05 5683703.81 97.25 -597677.12 5683038.83 100.00 -597677.41 5683193.66 98.75 -597677.49 5681191.84 100.00 -597677.54 5682645.28 98.75 -597677.63 5683428.07 97.50 -597677.93 5678330.37 111.25 -597678.02 5678471.68 112.50 -597678.05 5683985.50 97.50 -597678.05 5680974.14 100.00 -597678.13 5681855.45 97.50 -597678.16 5678789.87 103.75 -597678.17 5682001.65 97.50 -597678.22 5678260.81 107.50 -597678.25 5683421.69 98.75 -597678.28 5683436.53 97.50 -597678.32 5681464.16 98.75 -597678.33 5681086.67 100.00 -597678.33 5678600.57 108.75 -597678.43 5682142.26 97.50 -597678.47 5680827.60 98.75 -597678.70 5678896.09 101.25 -597678.77 5678645.65 107.50 -597678.90 5678223.19 106.25 -597678.90 5678833.90 102.50 -597679.03 5683445.41 98.75 -597679.19 5680363.38 98.75 -597679.32 5678575.57 110.00 -597679.47 5683508.72 98.75 -597679.56 5682253.25 97.50 -597679.57 5679575.92 98.75 -597679.58 5678500.14 112.50 -597680.17 5678993.11 100.00 -597680.23 5681076.96 100.00 -597680.32 5678549.63 111.25 -597680.96 5681201.14 100.00 -597681.02 5683170.89 98.75 -597681.07 5678312.16 110.00 -597681.08 5678462.27 112.50 -597681.13 5678738.34 105.00 -597681.15 5678071.12 102.50 -597681.23 5681885.64 97.50 -597681.33 5683814.92 97.50 -597681.41 5683012.39 100.00 -597681.77 5683316.13 98.75 -597682.00 5683693.56 97.50 -597682.09 5683910.12 97.50 -597682.20 5679585.56 98.75 -597682.60 5678364.81 112.50 -597682.69 5682508.31 98.75 -597682.70 5678151.74 103.75 -597682.86 5679595.52 98.75 -597683.09 5681014.27 100.00 -597683.21 5682042.98 97.50 -597683.35 5678374.63 112.50 -597683.45 5680766.99 98.50 -597683.49 5678355.22 112.50 -597683.51 5679605.49 98.75 -597683.66 5680756.99 98.50 -597683.92 5683977.47 97.50 -597683.93 5681067.75 100.00 -597684.15 5678196.40 105.00 -597684.35 5678452.93 112.50 -597684.37 5683710.82 97.50 -597684.38 5681847.70 97.50 -597684.39 5681210.46 100.00 -597684.70 5678288.86 108.75 -597684.73 5680747.06 98.50 -597684.74 5680355.07 98.75 -597684.78 5679401.23 98.75 -597684.86 5678323.19 111.25 -597684.92 5683304.00 98.75 -597685.09 5679615.36 98.75 -597685.16 5678384.37 112.50 -597685.34 5683919.44 97.50 -597685.60 5678695.95 106.25 -597685.71 5680775.82 98.50 -597685.89 5683434.29 97.25 -597686.17 5682007.50 97.50 -597686.27 5682373.35 98.75 -597686.57 5678062.74 102.50 -597686.75 5679625.21 98.75 -597686.82 5678394.12 112.50 -597686.82 5680737.45 98.50 -597686.87 5683702.46 97.25 -597686.91 5678256.10 107.50 -597686.96 5681877.47 97.50 -597686.97 5678443.38 112.50 -597687.03 5683037.57 100.00 -597687.11 5681460.12 98.75 -597687.11 5678890.69 101.25 -597687.17 5680970.36 100.00 -597687.17 5683968.31 97.50 -597687.21 5681417.51 98.75 -597687.22 5678506.44 112.50 -597687.25 5683195.37 98.75 -597687.27 5678986.09 100.00 -597687.49 5682646.25 98.75 -597687.53 5683429.38 97.50 -597687.61 5678829.07 102.50 -597687.62 5678403.99 112.50 -597687.62 5681426.85 98.75 -597687.67 5678786.94 103.75 -597687.78 5681219.79 100.00 -597687.87 5683929.05 97.50 -597688.01 5683438.81 97.50 -597688.04 5683423.65 98.75 -597688.20 5678599.15 108.75 -597688.21 5681058.81 100.00 -597688.29 5678220.01 106.25 -597688.30 5678433.62 112.50 -597688.39 5682142.95 97.50 -597688.42 5678413.86 112.50 -597688.46 5680827.58 98.75 -597688.74 5678646.21 107.50 -597688.83 5683447.35 98.75 -597688.84 5678423.73 112.50 -597688.98 5683958.53 97.50 -597689.18 5681407.83 98.75 -597689.22 5678575.80 110.00 -597689.41 5683509.64 98.75 -597689.49 5682254.35 97.50 -597689.88 5678307.64 110.00 -597690.06 5683948.67 97.50 -597690.11 5683938.74 97.50 -597690.29 5678549.76 111.25 -597690.34 5679634.53 98.75 -597690.47 5681020.90 100.00 -597690.74 5680347.08 98.75 -597690.83 5678736.21 105.00 -597690.89 5678348.65 112.50 -597690.91 5683817.59 97.50 -597691.01 5683171.38 98.75 -597691.20 5683803.98 97.50 -597691.22 5681229.10 100.00 -597691.26 5683010.97 100.00 -597691.26 5678053.91 102.50 -597691.46 5678146.97 103.75 -597691.75 5683694.32 97.50 -597691.77 5683316.36 98.75 -597692.05 5681398.34 98.75 -597692.12 5680728.98 98.50 -597692.24 5682040.43 97.50 -597692.46 5681049.90 100.00 -597692.59 5681850.60 97.50 -597692.61 5681869.26 97.50 -597692.68 5682508.10 98.75 -597692.81 5682014.91 97.50 -597692.90 5681030.53 100.00 -597693.21 5681944.86 97.50 -597693.54 5680782.03 98.50 -597693.70 5678978.45 100.00 -597693.73 5678284.70 108.75 -597693.74 5681434.55 98.75 -597693.75 5678194.45 105.00 -597693.77 5681452.99 98.75 -597693.84 5679397.04 98.75 -597694.06 5678319.47 111.25 -597694.25 5683709.93 97.50 -597694.37 5683641.14 97.50 -597694.46 5681040.17 100.00 -597694.70 5681859.51 97.50 -597694.75 5683305.83 98.75 -597694.83 5683435.98 97.25 -597694.85 5678512.75 112.50 -597694.92 5681388.85 98.75 -597695.52 5678695.37 106.25 -597695.52 5678885.29 101.25 -597695.57 5682369.80 98.75 -597695.72 5683649.68 97.50 -597695.93 5678252.08 107.50 -597695.95 5678045.07 102.50 -597696.21 5681237.68 100.00 -597696.31 5678824.23 102.50 -597696.49 5681443.87 98.75 -597696.67 5683702.10 97.25 -597696.78 5680968.93 100.00 -597696.85 5679642.04 98.75 -597696.92 5680339.22 98.75 -597696.94 5683036.30 100.00 -597696.94 5683797.46 97.50 -597697.10 5683197.08 98.75 -597697.18 5678784.01 103.75 -597697.43 5682647.23 98.75 -597697.44 5680720.51 98.50 -597697.45 5683430.61 97.50 -597697.48 5682023.39 97.50 -597697.72 5683441.19 97.50 -597697.85 5678217.49 106.25 -597697.89 5683425.36 98.75 -597698.06 5678597.74 108.75 -597698.09 5680825.45 98.75 -597698.10 5682033.09 97.50 -597698.27 5681379.56 98.75 -597698.33 5683808.42 97.50 -597698.38 5682143.18 97.50 -597698.57 5678645.79 107.50 -597698.63 5683449.29 98.75 -597698.70 5678303.12 110.00 -597698.72 5678457.15 113.75 -597698.89 5681936.92 97.50 -597698.98 5678574.24 110.00 -597699.38 5683510.28 98.75 -597699.42 5682255.47 97.50 -597699.69 5678344.14 112.50 -597700.03 5678141.86 103.75 -597700.12 5678970.79 100.00 -597700.27 5678549.40 111.25 -597700.30 5678466.28 113.75 -597700.34 5681950.81 97.50 -597700.44 5678036.14 102.50 -597700.52 5678733.96 105.00 -597700.80 5683818.57 97.50 -597700.89 5683172.84 98.75 -597701.15 5683634.55 97.50 -597701.15 5683012.34 100.00 -597701.20 5681246.26 100.00 -597701.53 5683695.99 97.50 -597701.76 5683316.58 98.75 -597701.95 5682504.61 98.75 -597702.36 5681631.36 98.75 -597702.45 5680711.88 98.50 -597702.66 5678190.09 105.00 -597702.83 5679392.68 98.75 -597702.86 5678878.50 101.25 -597702.86 5678280.78 108.75 -597702.89 5681370.79 98.75 -597703.10 5680331.36 98.75 -597703.13 5680783.86 98.50 -597703.25 5678448.29 113.75 -597703.40 5678315.95 111.25 -597703.61 5679649.41 98.75 -597703.69 5683438.12 97.25 -597703.80 5678516.43 112.50 -597704.01 5678475.51 113.75 -597704.05 5678818.11 102.50 -597704.14 5683709.05 97.50 -597704.47 5682365.26 98.75 -597704.60 5683307.10 98.75 -597704.71 5678027.10 102.50 -597704.96 5678248.06 107.50 -597705.30 5683651.83 97.50 -597705.42 5678694.47 106.25 -597706.42 5683703.89 97.25 -597706.46 5683033.75 100.00 -597706.55 5678364.76 113.75 -597706.65 5680969.98 100.00 -597706.69 5678781.08 103.75 -597706.80 5683872.45 97.50 -597706.83 5683796.38 97.50 -597706.87 5678374.39 113.75 -597706.95 5683198.78 98.75 -597707.01 5678963.63 100.00 -597707.07 5680703.01 98.50 -597707.29 5683432.27 97.50 -597707.38 5682648.23 98.75 -597707.51 5681362.02 98.75 -597707.55 5683442.62 97.50 -597707.58 5678215.58 106.25 -597707.73 5683427.07 98.75 -597707.84 5681932.80 97.50 -597707.84 5678299.40 110.00 -597707.93 5678596.32 108.75 -597707.96 5680824.75 98.75 -597707.99 5678439.55 113.75 -597708.04 5678642.61 107.50 -597708.11 5683882.13 97.50 -597708.16 5683809.82 97.50 -597708.16 5683452.31 98.75 -597708.31 5683353.10 98.75 -597708.37 5682143.41 97.50 -597708.39 5678017.84 102.50 -597708.60 5678136.75 103.75 -597708.68 5678484.28 113.75 -597708.72 5678572.42 110.00 -597708.73 5681702.64 98.75 -597708.78 5678340.25 112.50 -597708.80 5681252.46 100.00 -597709.21 5683511.65 98.75 -597709.31 5681638.12 98.75 -597709.35 5682256.63 97.50 -597709.96 5681953.08 97.50 -597710.04 5683641.21 97.25 -597710.06 5678383.81 113.75 -597710.07 5678731.22 105.00 -597710.10 5678548.48 111.25 -597710.13 5678356.58 113.75 -597710.14 5683891.91 97.50 -597710.18 5678871.70 101.25 -597710.48 5680324.68 98.75 -597710.50 5683632.00 97.50 -597710.71 5683818.72 97.50 -597710.76 5683174.41 98.75 -597710.92 5681463.33 98.75 -597711.07 5678184.81 105.00 -597711.07 5678811.06 102.50 -597711.10 5683013.09 100.00 -597711.10 5682500.61 98.75 -597711.20 5678008.24 102.50 -597711.32 5683697.67 97.50 -597711.47 5683863.62 97.50 -597711.69 5680694.15 98.50 -597711.69 5681353.03 98.75 -597711.75 5683316.81 98.75 -597711.88 5679388.45 98.75 -597712.04 5683901.71 97.50 -597712.31 5678277.68 108.75 -597712.59 5680102.84 100.00 -597712.74 5679653.04 98.75 -597712.76 5680782.27 98.50 -597713.05 5683911.65 97.50 -597713.12 5678431.03 113.75 -597713.14 5678393.27 113.75 -597713.17 5678314.11 111.25 -597713.33 5682360.63 98.75 -597713.48 5678517.91 112.50 -597713.63 5683711.93 97.50 -597713.94 5683346.25 98.75 -597714.00 5678244.07 107.50 -597714.06 5683921.59 97.50 -597714.30 5680111.88 100.00 -597714.57 5677998.91 102.50 -597714.57 5683306.37 98.75 -597714.82 5678691.61 106.25 -597714.87 5678957.47 100.00 -597715.07 5683931.53 97.50 -597715.09 5683651.76 97.50 -597715.25 5683358.44 98.75 -597715.42 5683029.33 100.00 -597715.52 5678402.90 113.75 -597715.79 5678777.18 103.75 -597715.98 5681344.13 98.75 -597716.12 5680972.92 100.00 -597716.14 5683854.79 97.50 -597716.17 5683705.68 97.25 -597716.24 5680685.25 98.50 -597716.25 5681644.88 98.75 -597716.30 5683020.23 100.00 -597716.37 5683941.41 97.50 -597716.46 5683436.05 97.50 -597716.60 5683813.54 97.50 -597716.64 5683796.58 97.50 -597716.78 5678211.94 106.25 -597716.89 5681258.22 100.00 -597716.91 5683199.33 98.75 -597717.02 5678412.73 113.75 -597717.04 5678131.43 103.75 -597717.25 5678296.31 110.00 -597717.32 5682649.23 98.75 -597717.39 5681930.17 97.50 -597717.40 5678864.80 101.25 -597717.50 5678639.43 107.50 -597717.54 5683442.85 97.50 -597717.61 5683428.52 98.75 -597717.68 5683455.35 98.75 -597717.79 5678594.91 108.75 -597717.96 5680824.72 98.75 -597717.99 5678336.60 112.50 -597717.99 5682145.87 97.50 -597718.10 5678804.00 102.50 -597718.10 5678487.28 113.75 -597718.23 5680318.37 98.75 -597718.25 5678422.51 113.75 -597718.34 5681701.36 98.75 -597718.52 5678571.05 110.00 -597718.70 5683514.78 98.75 -597718.71 5683951.12 97.50 -597718.94 5678178.79 105.00 -597719.05 5681468.90 98.75 -597719.12 5678544.22 111.25 -597719.27 5682257.79 97.50 -597719.51 5678728.11 105.00 -597719.85 5681953.74 97.50 -597719.89 5678355.02 113.75 -597720.22 5683630.77 97.50 -597720.35 5677990.76 102.50 -597720.38 5682496.88 98.75 -597720.48 5678648.53 107.50 -597720.62 5680676.27 98.50 -597720.70 5683175.42 98.75 -597720.75 5680119.09 100.00 -597721.01 5683699.75 97.50 -597721.01 5679384.41 98.75 -597721.05 5683960.83 97.50 -597721.21 5680097.84 100.00 -597721.72 5683316.74 98.75 -597721.89 5678275.04 108.75 -597721.96 5682355.60 98.75 -597722.35 5681336.54 98.75 -597722.39 5679654.40 98.75 -597722.72 5681652.09 98.75 -597722.73 5678951.30 100.00 -597722.73 5680781.50 98.50 -597723.04 5678312.66 111.25 -597723.12 5683714.83 97.50 -597723.33 5678516.90 112.50 -597723.39 5683970.55 97.50 -597723.46 5678241.19 107.50 -597723.54 5683344.13 98.75 -597723.76 5678857.10 101.25 -597724.03 5678687.89 106.25 -597724.24 5683849.07 97.50 -597724.41 5683304.88 98.75 -597724.51 5678772.38 103.75 -597724.61 5683649.61 97.50 -597724.62 5680667.11 98.50 -597724.74 5678608.69 108.00 -597724.85 5678618.45 108.00 -597724.86 5678657.02 107.50 -597725.19 5680976.94 100.00 -597725.23 5683358.94 98.75 -597725.35 5678125.90 103.75 -597725.50 5678628.16 108.00 -597725.58 5678797.60 102.50 -597725.69 5683708.39 97.25 -597725.81 5678448.39 115.00 -597725.92 5678208.10 106.25 -597726.33 5683798.83 97.50 -597726.43 5681260.07 100.00 -597726.45 5681926.22 97.50 -597726.81 5677983.15 102.50 -597726.89 5683979.87 97.50 -597726.90 5683199.56 98.75 -597727.03 5681474.68 98.75 -597727.07 5678173.20 105.00 -597727.07 5678296.30 110.00 -597727.09 5681940.63 97.25 -597727.20 5683458.38 98.75 -597727.26 5682650.23 98.75 -597727.26 5680314.58 98.75 -597727.40 5678637.72 108.00 -597727.50 5681698.37 98.75 -597727.53 5682148.83 97.50 -597727.56 5680657.61 98.50 -597727.57 5683429.42 98.75 -597727.60 5678488.94 113.75 -597727.65 5678593.74 108.75 -597727.86 5678335.81 112.50 -597727.95 5680824.80 98.75 -597728.19 5683517.92 98.75 -597728.37 5678570.05 110.00 -597728.43 5678541.11 111.25 -597728.93 5682260.33 97.50 -597728.98 5678725.06 105.00 -597729.06 5683633.81 97.50 -597729.20 5678357.38 113.75 -597729.46 5681659.04 98.75 -597729.47 5680647.80 98.50 -597729.69 5682493.26 98.75 -597729.73 5681954.39 97.50 -597729.89 5680637.85 98.50 -597730.12 5678849.39 101.25 -597730.15 5679380.36 98.75 -597730.30 5680121.53 100.00 -597730.41 5680094.08 100.00 -597730.41 5678440.69 115.00 -597730.44 5682350.31 98.75 -597730.58 5683702.38 97.50 -597730.58 5678945.14 100.00 -597730.65 5681331.34 98.75 -597730.65 5683176.33 98.75 -597730.76 5683642.82 97.50 -597730.87 5683989.03 97.50 -597730.91 5678646.82 108.00 -597731.56 5683315.05 98.75 -597731.58 5678272.78 108.75 -597731.75 5678663.58 107.50 -597732.03 5678605.22 108.00 -597732.27 5679652.88 98.75 -597732.37 5678455.21 115.00 -597732.52 5680628.36 98.50 -597732.57 5683843.56 97.50 -597732.62 5683717.73 97.50 -597732.69 5680780.73 98.50 -597732.74 5678314.52 111.25 -597732.91 5678238.31 107.50 -597732.99 5678515.08 112.50 -597733.22 5678767.57 103.75 -597733.46 5678684.72 106.25 -597733.46 5683344.02 98.75 -597733.61 5677975.82 102.50 -597733.65 5678120.36 103.75 -597733.96 5680981.56 100.00 -597734.06 5683302.28 98.75 -597734.38 5681692.32 98.75 -597734.63 5678793.46 102.50 -597734.64 5681480.94 98.75 -597734.71 5678203.58 106.25 -597734.85 5683998.19 97.50 -597735.08 5683711.56 97.25 -597735.21 5683359.45 98.75 -597735.21 5681255.56 100.00 -597735.41 5681922.00 97.50 -597735.43 5683449.05 97.50 -597735.92 5678432.47 115.00 -597736.02 5683801.08 97.50 -597736.07 5678169.03 105.00 -597736.31 5680619.11 98.50 -597736.46 5678654.68 108.00 -597736.53 5681665.66 98.75 -597736.67 5682152.62 97.50 -597736.68 5678841.85 101.25 -597736.71 5681939.97 97.25 -597736.80 5683461.15 98.75 -597736.89 5683199.78 98.75 -597736.94 5680312.05 98.75 -597736.96 5678296.84 110.00 -597736.97 5678485.61 113.75 -597736.99 5678363.56 113.75 -597737.14 5682651.71 98.75 -597737.37 5678595.48 108.75 -597737.52 5683430.31 98.75 -597737.67 5680826.66 98.75 -597737.69 5678612.23 108.00 -597737.73 5678336.17 112.50 -597737.91 5683520.15 98.75 -597738.23 5678569.04 110.00 -597738.31 5682263.51 97.50 -597738.40 5678540.75 111.25 -597738.45 5678938.99 100.00 -597738.46 5678722.06 105.00 -597739.00 5682489.63 98.75 -597739.02 5682345.27 98.75 -597739.03 5684007.26 97.50 -597739.12 5681674.44 98.75 -597739.24 5679376.24 98.75 -597739.30 5681683.97 98.75 -597739.40 5678621.84 108.00 -597739.43 5681326.73 98.75 -597739.53 5681955.76 97.50 -597739.72 5680090.55 100.00 -597740.01 5680123.70 100.00 -597740.05 5683705.26 97.50 -597740.33 5683442.14 97.50 -597740.43 5680610.00 98.50 -597740.60 5683177.23 98.75 -597740.85 5678423.84 115.00 -597740.91 5678665.33 107.50 -597741.22 5678233.13 107.50 -597741.28 5677969.47 102.50 -597741.41 5683313.35 98.75 -597741.50 5678272.21 108.75 -597741.79 5679650.35 98.75 -597741.80 5678114.64 103.75 -597741.86 5683839.89 97.50 -597742.00 5679262.84 98.75 -597742.05 5678456.91 115.00 -597742.06 5678763.02 103.75 -597742.11 5683720.63 97.50 -597742.17 5678631.19 108.00 -597742.21 5678317.56 111.25 -597742.23 5679252.85 98.75 -597742.26 5678511.61 112.50 -597742.41 5681487.00 98.75 -597742.46 5679242.86 98.75 -597742.63 5680780.86 98.50 -597742.69 5679232.88 98.75 -597742.72 5680985.84 100.00 -597742.89 5678681.55 106.25 -597743.29 5678198.60 106.25 -597743.29 5684016.30 97.50 -597743.36 5678834.41 101.25 -597743.40 5683345.06 98.75 -597743.61 5678650.36 108.00 -597743.69 5678789.31 102.50 -597743.71 5683299.69 98.75 -597743.87 5681250.70 100.00 -597744.03 5678640.67 108.00 -597744.47 5683714.73 97.25 -597744.54 5683452.56 97.50 -597744.86 5682158.35 97.50 -597744.90 5678369.59 113.75 -597744.96 5679272.22 98.75 -597745.17 5678601.69 108.75 -597745.19 5683359.31 98.75 -597745.21 5681920.71 97.50 -597745.59 5679223.67 98.75 -597745.62 5678166.54 105.00 -597745.71 5683803.33 97.50 -597745.71 5678480.92 113.75 -597746.32 5681939.32 97.25 -597746.32 5678932.84 100.00 -597746.41 5683463.89 98.75 -597746.52 5680602.15 98.50 -597746.61 5680309.52 98.75 -597746.67 5682268.99 97.50 -597746.85 5678297.37 110.00 -597746.88 5683199.72 98.75 -597746.93 5682653.71 98.75 -597747.17 5678338.31 112.50 -597747.18 5680829.72 98.75 -597747.33 5683432.13 98.75 -597747.56 5684025.33 97.50 -597747.64 5679370.82 98.75 -597747.73 5683521.97 98.75 -597748.02 5682064.48 97.50 -597748.04 5678719.87 105.00 -597748.08 5678568.04 110.00 -597748.21 5681322.20 98.75 -597748.26 5678539.70 111.25 -597748.62 5682486.96 98.75 -597748.71 5682342.84 98.75 -597748.86 5678107.59 103.75 -597748.87 5683709.81 97.50 -597748.87 5679281.41 98.75 -597749.04 5678418.22 115.00 -597749.10 5680087.20 100.00 -597749.21 5678227.31 107.50 -597749.29 5678660.78 107.50 -597749.30 5681957.42 97.50 -597749.35 5677963.56 102.50 -597749.64 5680126.25 100.00 -597749.77 5682054.73 97.50 -597750.03 5678826.98 101.25 -597750.17 5683442.57 97.50 -597750.18 5681493.06 98.75 -597750.38 5678452.67 115.00 -597750.54 5679645.51 98.75 -597750.55 5683177.60 98.75 -597750.76 5678506.86 112.50 -597750.81 5679215.16 98.75 -597750.84 5678432.47 115.25 -597751.01 5678758.65 103.75 -597751.05 5683724.91 97.50 -597751.15 5683836.22 97.50 -597751.26 5683311.66 98.75 -597751.35 5678321.56 111.25 -597751.43 5678271.74 108.75 -597751.98 5678193.88 106.25 -597752.36 5681245.56 100.00 -597752.46 5678680.40 106.25 -597752.52 5680782.31 98.50 -597752.62 5680986.53 100.00 -597752.72 5678785.13 102.50 -597752.79 5679290.61 98.75 -597752.86 5682164.32 97.50 -597753.03 5678474.25 113.75 -597753.04 5678375.29 113.75 -597753.18 5683347.07 98.75 -597753.19 5680594.73 98.50 -597753.35 5678606.01 108.75 -597753.36 5682072.00 97.50 -597753.38 5683719.02 97.25 -597753.39 5682045.68 97.50 -597753.58 5683298.41 98.75 -597754.17 5683454.73 97.50 -597754.31 5684032.65 97.50 -597754.85 5678927.98 100.00 -597754.85 5681921.44 97.50 -597755.03 5682274.47 97.50 -597755.05 5683449.41 97.25 -597755.07 5678099.91 103.75 -597755.18 5683358.84 98.75 -597755.28 5678164.29 105.00 -597755.30 5683805.99 97.50 -597755.84 5678343.11 112.50 -597755.84 5681939.47 97.25 -597755.88 5683467.05 98.75 -597755.94 5679365.31 98.75 -597756.02 5679206.63 98.75 -597756.23 5678300.49 110.00 -597756.37 5678444.81 115.00 -597756.38 5680307.43 98.75 -597756.55 5678654.63 107.50 -597756.60 5680833.06 98.75 -597756.64 5682656.04 98.75 -597756.69 5679299.80 98.75 -597756.88 5683199.64 98.75 -597757.07 5683434.34 98.75 -597757.21 5678820.09 101.25 -597757.31 5681762.17 97.50 -597757.38 5681499.75 98.75 -597757.44 5677957.69 102.50 -597757.61 5683523.07 98.75 -597757.69 5683714.37 97.50 -597757.75 5678565.99 110.00 -597757.83 5678536.90 111.25 -597757.97 5678720.43 105.00 -597758.13 5681322.20 98.75 -597758.14 5678500.26 112.50 -597758.17 5678223.23 107.50 -597758.18 5678415.03 115.00 -597758.30 5682484.45 98.75 -597758.41 5682340.41 98.75 -597758.48 5682037.18 97.50 -597758.55 5680084.07 100.00 -597759.02 5681959.29 97.50 -597759.28 5679640.67 98.75 -597759.40 5680128.20 100.00 -597759.79 5678091.11 103.75 -597759.90 5683729.39 97.50 -597759.91 5683444.25 97.50 -597760.04 5678467.20 113.75 -597760.12 5678754.68 103.75 -597760.47 5683176.47 98.75 -597760.49 5678325.55 111.25 -597760.52 5683832.83 97.50 -597760.58 5679309.00 98.75 -597760.69 5679197.80 98.75 -597760.86 5680588.32 98.50 -597760.98 5682170.14 97.50 -597761.21 5684039.87 97.50 -597761.24 5683311.63 98.75 -597761.30 5678380.84 113.75 -597761.31 5678190.54 106.25 -597761.37 5678271.49 108.75 -597761.39 5681340.19 98.75 -597761.50 5682054.86 97.25 -597761.67 5679357.12 98.75 -597761.76 5678780.94 102.50 -597761.88 5678602.28 108.75 -597762.03 5681244.81 100.00 -597762.13 5683723.70 97.25 -597762.15 5680784.88 98.50 -597762.24 5680988.94 100.00 -597762.25 5678682.16 106.25 -597762.64 5681770.52 97.50 -597762.69 5681762.37 98.75 -597762.95 5683349.06 98.75 -597763.25 5682072.54 97.50 -597763.38 5682279.94 97.50 -597763.55 5683297.68 98.75 -597763.65 5683457.51 97.50 -597764.00 5678655.71 107.50 -597764.03 5681507.02 98.75 -597764.20 5678082.16 103.75 -597764.25 5681924.59 97.50 -597764.37 5678439.20 115.00 -597764.46 5678925.26 100.00 -597764.48 5679318.21 98.75 -597764.49 5679347.72 98.75 -597764.52 5678347.86 112.50 -597764.58 5683451.40 97.25 -597764.80 5678161.51 105.00 -597764.83 5678592.76 108.75 -597764.88 5683808.66 97.50 -597764.95 5683360.38 98.75 -597765.03 5681942.37 97.25 -597765.18 5683470.72 98.75 -597765.25 5678814.15 101.25 -597765.29 5682030.08 97.50 -597765.36 5679188.97 98.75 -597765.51 5678493.65 112.50 -597765.63 5678303.41 110.00 -597765.96 5680836.55 98.75 -597765.97 5677952.47 102.50 -597766.07 5679327.94 98.75 -597766.10 5678459.32 113.75 -597766.20 5680305.56 98.75 -597766.20 5682658.94 98.75 -597766.31 5679337.90 98.75 -597766.37 5682046.54 97.25 -597766.51 5683718.91 97.50 -597766.57 5681344.17 97.50 -597766.80 5683436.62 98.75 -597766.87 5683199.56 98.75 -597766.92 5679634.30 98.75 -597767.35 5678563.54 110.00 -597767.41 5678534.09 111.25 -597767.51 5678220.28 107.50 -597767.58 5683522.48 98.75 -597767.82 5681324.04 98.75 -597767.89 5682481.67 98.75 -597767.90 5678720.84 105.00 -597767.99 5678416.60 115.00 -597768.01 5678703.73 106.25 -597768.16 5682338.55 98.75 -597768.32 5680083.69 100.00 -597768.49 5678073.15 103.75 -597768.53 5680581.91 98.50 -597768.62 5678583.55 108.75 -597768.65 5681961.63 97.50 -597768.74 5683733.92 97.50 -597768.90 5684046.16 97.50 -597769.00 5681778.09 97.50 -597769.23 5680129.71 100.00 -597769.37 5678751.00 103.75 -597769.50 5682175.36 97.50 -597769.52 5683446.53 97.50 -597769.65 5678694.03 106.25 -597769.67 5678329.47 111.25 -597770.03 5679180.14 98.75 -597770.07 5678608.06 108.00 -597770.35 5683831.06 97.50 -597770.37 5678662.53 107.50 -597770.38 5683175.13 98.75 -597770.68 5681514.29 98.75 -597770.79 5678431.85 115.00 -597770.79 5678776.76 102.50 -597770.87 5683728.37 97.25 -597770.95 5678188.42 106.25 -597771.02 5678382.57 113.75 -597771.14 5678598.42 108.00 -597771.20 5681767.34 98.75 -597771.21 5681340.72 98.75 -597771.23 5683311.76 98.75 -597771.24 5682038.23 97.25 -597771.32 5678271.40 108.75 -597771.41 5682068.79 97.50 -597771.61 5678617.78 108.00 -597771.70 5680787.83 98.50 -597771.80 5680991.60 100.00 -597771.83 5682285.27 97.50 -597771.93 5678684.42 106.25 -597771.95 5681245.03 100.00 -597772.16 5678451.43 113.75 -597772.46 5678919.58 100.00 -597772.54 5678064.04 103.75 -597772.55 5682023.33 97.50 -597772.94 5683348.79 98.75 -597773.22 5678352.58 112.50 -597773.31 5678627.47 108.00 -597773.32 5683459.56 97.50 -597773.38 5678808.44 101.25 -597773.54 5683297.81 98.75 -597773.54 5678422.55 115.00 -597773.70 5678488.12 112.50 -597773.77 5679170.91 98.75 -597774.04 5681925.90 97.50 -597774.12 5683453.38 97.25 -597774.14 5680108.37 100.50 -597774.18 5681945.39 97.25 -597774.21 5678158.36 105.00 -597774.33 5679627.60 98.75 -597774.40 5683474.56 98.75 -597774.40 5677947.11 102.50 -597774.64 5683362.84 98.75 -597774.77 5683809.23 97.50 -597774.83 5678727.11 105.00 -597775.15 5680840.47 98.75 -597775.32 5681346.50 97.50 -597775.39 5683723.36 97.50 -597775.42 5678637.09 108.00 -597775.53 5678303.78 110.00 -597775.72 5682662.00 98.75 -597775.79 5678529.15 111.25 -597775.80 5678577.87 108.75 -597776.02 5678054.69 103.75 -597776.04 5680303.82 98.75 -597776.17 5680575.47 98.50 -597776.44 5682060.36 97.50 -597776.49 5683439.07 98.75 -597776.84 5679161.40 98.75 -597776.84 5683199.00 98.75 -597776.94 5678561.09 110.00 -597777.14 5684051.81 97.50 -597777.26 5678668.89 107.50 -597777.28 5678218.88 107.50 -597777.45 5681326.40 98.75 -597777.46 5682478.77 98.75 -597777.51 5683738.56 97.50 -597777.53 5678646.70 108.00 -597777.56 5683521.90 98.75 -597777.69 5681782.57 97.50 -597777.90 5678703.59 106.25 -597777.96 5681520.94 98.75 -597778.15 5682338.78 98.75 -597778.17 5678592.24 108.00 -597778.23 5680084.62 100.00 -597778.27 5681963.96 97.50 -597778.44 5682179.72 97.50 -597778.70 5678747.59 103.75 -597778.82 5682032.63 97.25 -597779.14 5683448.81 97.50 -597779.18 5680129.94 100.00 -597779.41 5678444.67 113.75 -597779.50 5678045.34 103.75 -597779.56 5678329.18 111.25 -597779.57 5681772.54 98.75 -597779.57 5683733.12 97.25 -597779.91 5679151.89 98.75 -597779.95 5678772.98 102.50 -597779.97 5678913.00 100.00 -597780.18 5683829.28 97.50 -597780.25 5683173.56 98.75 -597780.42 5682290.37 97.50 -597780.66 5682051.40 97.50 -597780.70 5678186.67 106.25 -597780.73 5680995.65 100.00 -597780.87 5678384.00 113.75 -597780.89 5681342.65 98.75 -597781.05 5678734.86 105.00 -597781.23 5678271.45 108.75 -597781.23 5683311.89 98.75 -597781.25 5680790.78 98.50 -597781.68 5682019.50 97.50 -597781.74 5679620.89 98.75 -597781.88 5681244.92 100.00 -597782.01 5680567.37 98.50 -597782.09 5678482.87 112.50 -597782.40 5677941.11 102.50 -597782.93 5683348.53 98.75 -597782.96 5678154.00 105.00 -597783.06 5679142.41 98.75 -597783.06 5678654.84 108.00 -597783.11 5683460.86 97.50 -597783.12 5678352.80 112.50 -597783.12 5681948.98 97.25 -597783.19 5683479.20 98.75 -597783.20 5678522.46 111.25 -597783.27 5678807.02 101.25 -597783.44 5683298.54 98.75 -597783.65 5683455.37 97.25 -597783.89 5681927.02 97.50 -597784.19 5681348.23 97.50 -597784.26 5683727.81 97.50 -597784.30 5678674.14 107.50 -597784.36 5678036.63 103.75 -597784.55 5683362.56 98.75 -597784.72 5683809.46 97.50 -597784.73 5682666.27 98.75 -597784.81 5680842.37 98.75 -597784.88 5682042.43 97.50 -597785.04 5681051.06 100.00 -597785.20 5678574.55 108.75 -597785.28 5681527.54 98.75 -597785.38 5684057.46 97.50 -597785.43 5678304.16 110.00 -597785.45 5681060.86 100.00 -597786.01 5680303.05 98.75 -597786.18 5683441.52 98.75 -597786.26 5679132.95 98.75 -597786.30 5683743.18 97.50 -597786.41 5678558.19 110.00 -597786.79 5681786.47 97.50 -597786.79 5683198.13 98.75 -597786.89 5681041.30 100.00 -597786.96 5681002.86 100.00 -597786.97 5682475.73 98.75 -597786.99 5678217.01 107.50 -597787.11 5678438.42 113.75 -597787.15 5682027.78 97.25 -597787.23 5681327.86 98.75 -597787.34 5678742.56 105.00 -597787.48 5683520.88 98.75 -597787.50 5678906.44 100.00 -597787.66 5678702.56 106.25 -597787.75 5682183.36 97.50 -597787.83 5681966.53 97.50 -597787.83 5678590.77 108.00 -597787.86 5680559.26 98.50 -597787.92 5681777.79 98.75 -597788.13 5680085.67 100.00 -597788.14 5682339.01 98.75 -597788.24 5683737.93 97.25 -597788.36 5678745.19 103.75 -597788.61 5681031.53 100.00 -597788.76 5683451.07 97.50 -597789.01 5682295.48 97.50 -597789.12 5680129.99 100.00 -597789.35 5678027.99 103.75 -597789.38 5679614.45 98.75 -597789.45 5679123.48 98.75 -597789.52 5678328.50 111.25 -597789.79 5678771.40 102.50 -597790.01 5683827.51 97.50 -597790.06 5678147.12 105.00 -597790.13 5681021.72 100.00 -597790.18 5683172.57 98.75 -597790.22 5678183.92 106.25 -597790.29 5678267.36 108.75 -597790.40 5677935.11 102.50 -597790.46 5681345.04 98.75 -597790.48 5678477.61 112.50 -597790.60 5678515.78 111.25 -597790.63 5680794.18 98.50 -597790.71 5678385.43 113.75 -597790.89 5683485.57 98.75 -597790.89 5681011.98 100.00 -597790.93 5682016.01 97.50 -597790.94 5681068.14 100.00 -597791.22 5683312.05 98.75 -597791.70 5681244.08 100.00 -597791.71 5682035.28 97.50 -597792.07 5681952.56 97.25 -597792.16 5678655.22 108.00 -597792.61 5681534.14 98.75 -597792.80 5681930.70 97.50 -597792.89 5683462.21 97.50 -597792.90 5683301.77 98.75 -597792.90 5683349.13 98.75 -597792.99 5678352.06 112.50 -597793.07 5683732.37 97.50 -597793.14 5681349.60 97.50 -597793.16 5678805.60 101.25 -597793.18 5683457.36 97.25 -597793.61 5684063.11 97.50 -597793.64 5682670.80 98.75 -597793.85 5678674.76 107.50 -597794.10 5680551.45 98.50 -597794.35 5678553.57 110.00 -597794.43 5679114.94 98.75 -597794.51 5683361.74 98.75 -597794.63 5683809.19 97.50 -597794.79 5680842.89 98.75 -597794.92 5678575.00 108.75 -597794.99 5677853.01 102.50 -597795.03 5678899.88 100.00 -597795.08 5683747.79 97.50 -597795.22 5677863.01 102.50 -597795.24 5678302.86 110.00 -597795.68 5678138.99 105.00 -597795.91 5683443.78 98.75 -597795.93 5678433.81 113.75 -597795.98 5680302.28 98.75 -597796.02 5678507.62 111.25 -597796.15 5678213.33 107.50 -597796.17 5682471.83 98.75 -597796.19 5681789.55 97.50 -597796.36 5678586.50 108.00 -597796.38 5682025.11 97.25 -597796.43 5678741.49 105.00 -597796.61 5678021.21 103.75 -597796.69 5683517.56 98.75 -597796.75 5683197.25 98.75 -597796.79 5677872.75 102.50 -597796.95 5683742.67 97.25 -597797.08 5681970.06 97.50 -597797.11 5679608.12 98.75 -597797.11 5681328.68 98.75 -597797.16 5681781.05 98.75 -597797.25 5678700.15 106.25 -597797.39 5682342.41 98.75 -597797.48 5682184.87 97.50 -597797.52 5678544.19 110.00 -597797.60 5682300.58 97.50 -597797.95 5680087.30 100.00 -597797.98 5677844.50 102.50 -597798.20 5678745.00 103.75 -597798.23 5677928.96 102.50 -597798.37 5680669.18 98.45 -597798.40 5683453.28 97.50 -597798.48 5678178.67 106.25 -597798.60 5683491.93 98.75 -597798.73 5680127.40 100.00 -597798.84 5678472.31 112.50 -597799.18 5681073.67 100.00 -597799.28 5678648.42 108.00 -597799.36 5678390.35 113.75 -597799.44 5678328.51 111.25 -597799.58 5678264.12 108.75 -597799.62 5678769.82 102.50 -597799.64 5681958.30 97.25 -597799.84 5683825.72 97.50 -597799.86 5680797.98 98.50 -597799.95 5678130.03 105.00 -597800.04 5681540.58 98.75 -597800.16 5683172.04 98.75 -597800.19 5677882.16 102.50 -597800.21 5681346.34 98.75 -597800.23 5678498.58 111.25 -597800.33 5679106.87 98.75 -597800.38 5682031.03 97.50 -597800.39 5680543.68 98.50 -597800.48 5682013.36 97.50 -597800.84 5681240.51 100.00 -597801.07 5681936.16 97.50 -597801.21 5683312.28 98.75 -597801.60 5683737.45 97.50 -597801.69 5681352.52 97.50 -597802.06 5683501.18 98.75 -597802.23 5682675.91 98.75 -597802.26 5678536.81 110.00 -597802.34 5682464.03 98.75 -597802.51 5678893.26 100.00 -597802.51 5683464.48 97.50 -597802.55 5684067.33 97.50 -597802.64 5678353.84 112.50 -597802.71 5683459.35 97.25 -597802.73 5683303.32 98.75 -597802.88 5683349.73 98.75 -597803.03 5678804.06 101.25 -597803.19 5677920.28 102.50 -597803.28 5683510.96 98.75 -597803.39 5678071.57 105.00 -597803.39 5678081.49 105.00 -597803.40 5678675.40 107.50 -597803.46 5678120.81 105.00 -597803.60 5677891.56 102.50 -597803.75 5678091.40 105.00 -597803.87 5683752.40 97.50 -597804.15 5678014.68 103.75 -597804.32 5681976.10 97.50 -597804.36 5683363.19 98.75 -597804.43 5678428.79 113.75 -597804.47 5683807.68 97.50 -597804.60 5680841.71 98.75 -597804.75 5678101.27 105.00 -597804.75 5678576.63 108.75 -597804.84 5679601.80 98.75 -597804.89 5678736.65 105.00 -597804.91 5678729.05 105.00 -597805.03 5678301.39 110.00 -597805.13 5678209.25 107.50 -597805.40 5678584.20 108.00 -597805.43 5678640.73 108.00 -597805.65 5681792.47 97.50 -597805.69 5678111.14 105.00 -597805.69 5682022.60 97.25 -597805.73 5683445.63 98.75 -597805.82 5683747.10 97.25 -597805.95 5681944.52 97.50 -597805.95 5680301.61 98.75 -597806.18 5678719.64 105.00 -597806.19 5682305.69 97.50 -597806.25 5677901.09 102.50 -597806.25 5677911.09 102.50 -597806.29 5677839.17 102.50 -597806.34 5678172.64 106.25 -597806.45 5682346.64 98.75 -597806.57 5679099.11 98.75 -597806.60 5681783.90 98.75 -597806.61 5678491.34 111.25 -597806.68 5681964.88 97.25 -597806.70 5683196.37 98.75 -597806.84 5678697.75 106.25 -597806.90 5678062.44 105.00 -597806.99 5681329.33 98.75 -597807.47 5682185.14 97.50 -597807.47 5681079.12 100.00 -597807.50 5682455.64 98.75 -597807.66 5678468.05 112.50 -597807.76 5680089.01 100.00 -597807.85 5678395.49 113.75 -597808.03 5683455.50 97.50 -597808.07 5680537.72 98.50 -597808.12 5678745.78 103.75 -597808.22 5680124.37 100.00 -597808.65 5681545.38 98.75 -597808.76 5681885.93 97.50 -597808.92 5681234.74 100.00 -597809.29 5678330.11 111.25 -597809.45 5678768.22 102.50 -597809.47 5680799.74 98.50 -597809.49 5678263.22 108.75 -597809.58 5678886.21 100.00 -597809.58 5681984.49 97.50 -597809.66 5683823.93 97.50 -597809.67 5681348.94 98.75 -597809.95 5682028.70 97.50 -597809.98 5682445.96 98.75 -597810.02 5682010.72 97.50 -597810.04 5683173.08 98.75 -597810.13 5683742.52 97.50 -597810.34 5681355.08 97.50 -597810.67 5681953.18 97.50 -597810.69 5678632.50 108.00 -597810.81 5682681.03 98.75 -597811.18 5678053.48 105.00 -597811.20 5683312.51 98.75 -597811.21 5678007.63 103.75 -597811.40 5678421.69 113.75 -597811.95 5682436.21 98.75 -597812.02 5678536.65 110.00 -597812.08 5684070.33 97.50 -597812.13 5683466.74 97.50 -597812.14 5681895.33 97.50 -597812.23 5678712.54 105.00 -597812.24 5683461.34 97.25 -597812.35 5678355.77 112.50 -597812.66 5683304.43 98.75 -597812.66 5683757.01 97.50 -597812.73 5683350.92 98.75 -597812.74 5678674.31 107.50 -597812.79 5678801.90 101.25 -597812.90 5682426.33 98.75 -597813.47 5682353.65 98.75 -597813.50 5678587.55 108.00 -597813.57 5678204.10 107.50 -597813.69 5681971.49 97.25 -597813.72 5679597.25 98.75 -597813.80 5679092.21 98.75 -597813.94 5678412.28 113.75 -597814.03 5683146.02 98.75 -597814.04 5683137.87 98.75 -597814.08 5678402.54 113.75 -597814.18 5683365.03 98.75 -597814.26 5682018.67 97.25 -597814.27 5680839.20 98.75 -597814.30 5683806.18 97.50 -597814.34 5678579.25 108.75 -597814.44 5681993.12 97.50 -597814.64 5678167.27 106.25 -597814.67 5678299.12 110.00 -597814.68 5678623.51 108.00 -597814.69 5683751.53 97.25 -597814.72 5682310.88 97.50 -597814.73 5678485.53 111.25 -597815.23 5681085.29 100.00 -597815.34 5681794.54 97.50 -597815.52 5678044.56 105.00 -597815.55 5683447.49 98.75 -597815.58 5682002.59 97.50 -597815.68 5677835.75 102.50 -597815.93 5680300.97 98.75 -597816.28 5681785.07 98.75 -597816.34 5681961.30 97.50 -597816.57 5681904.15 97.50 -597816.60 5678696.21 106.25 -597816.66 5683195.50 98.75 -597816.91 5681329.11 98.75 -597816.99 5678879.65 100.00 -597816.99 5681228.97 100.00 -597817.00 5682417.21 98.75 -597817.17 5680533.60 98.50 -597817.25 5678465.60 112.50 -597817.26 5681550.18 98.75 -597817.42 5682185.95 97.50 -597817.56 5680090.81 100.00 -597817.72 5680121.38 100.00 -597817.81 5678744.49 103.75 -597817.82 5683456.88 97.50 -597818.17 5678000.48 103.75 -597818.59 5682687.28 98.75 -597818.66 5683747.60 97.50 -597818.83 5678595.81 108.00 -597819.05 5678614.69 108.00 -597819.13 5681351.73 98.75 -597819.13 5681979.44 97.25 -597819.17 5678331.46 111.25 -597819.18 5678261.06 108.75 -597819.26 5681356.64 97.50 -597819.27 5678766.63 102.50 -597819.30 5680798.05 98.50 -597819.49 5683822.13 97.50 -597819.83 5682027.94 97.50 -597819.90 5683174.75 98.75 -597820.23 5682361.00 98.75 -597820.62 5678605.49 108.00 -597820.85 5678707.59 105.00 -597820.98 5682408.05 98.75 -597821.02 5679085.31 98.75 -597821.09 5683313.55 98.75 -597821.21 5678540.35 110.00 -597821.35 5678036.68 105.00 -597821.45 5683761.62 97.50 -597821.58 5684073.40 97.50 -597821.66 5682012.50 97.25 -597821.75 5683469.01 97.50 -597821.78 5683463.32 97.25 -597821.85 5678478.59 111.25 -597821.90 5678671.53 107.50 -597822.00 5683371.11 98.75 -597822.06 5678357.70 112.50 -597822.10 5683150.78 98.75 -597822.12 5683354.34 98.75 -597822.30 5683132.53 98.75 -597822.55 5678799.75 101.25 -597822.62 5683305.09 98.75 -597822.66 5679592.79 98.75 -597822.73 5681968.79 97.50 -597822.74 5681091.79 100.00 -597822.77 5681386.39 97.50 -597822.79 5681911.97 97.50 -597822.86 5678200.76 107.50 -597822.90 5682316.63 97.50 -597823.07 5678583.46 108.75 -597823.31 5680834.93 98.75 -597823.31 5681206.28 100.04 -597823.43 5681377.23 97.50 -597823.50 5678162.84 106.25 -597823.53 5683756.01 97.25 -597824.08 5682370.23 98.75 -597824.08 5683804.39 97.50 -597824.22 5681556.93 98.75 -597824.30 5678296.80 110.00 -597824.58 5681987.39 97.25 -597824.62 5681797.92 97.50 -597824.72 5681222.75 100.00 -597824.82 5682398.83 98.75 -597825.08 5677832.33 102.50 -597825.31 5677993.55 103.75 -597825.37 5683449.34 98.75 -597825.71 5681787.16 98.75 -597825.91 5680300.34 98.75 -597826.13 5678875.63 100.00 -597826.16 5682190.59 97.50 -597826.20 5682693.75 98.75 -597826.30 5678629.75 108.75 -597826.34 5681362.56 97.50 -597826.38 5678694.71 106.25 -597826.42 5680529.96 98.50 -597826.61 5683194.62 98.75 -597826.82 5681329.04 98.75 -597826.85 5680094.36 100.00 -597826.90 5678463.37 112.50 -597827.11 5678255.43 108.75 -597827.28 5680118.61 100.00 -597827.32 5678741.56 103.75 -597827.36 5683752.37 97.50 -597827.49 5678619.93 108.75 -597827.49 5681996.19 97.25 -597827.61 5683458.25 97.50 -597827.61 5680792.51 98.50 -597827.81 5682389.42 98.75 -597827.89 5682005.82 97.25 -597827.93 5682379.45 98.75 -597828.10 5678639.02 108.75 -597828.18 5678501.40 111.00 -597828.34 5678029.65 105.00 -597828.58 5678471.23 111.25 -597828.60 5681920.09 97.50 -597828.71 5678701.65 105.00 -597828.86 5679079.14 98.75 -597828.88 5681351.26 97.00 -597829.07 5678332.20 111.25 -597829.11 5682024.60 97.50 -597829.12 5678492.43 111.00 -597829.14 5678765.53 102.50 -597829.19 5681393.92 97.50 -597829.27 5680763.36 98.50 -597829.31 5683820.34 97.50 -597829.52 5678591.06 108.75 -597829.66 5678155.15 106.25 -597829.72 5683377.44 98.75 -597829.75 5683176.41 98.75 -597829.77 5680773.30 98.50 -597830.06 5681975.46 97.50 -597830.18 5680753.40 98.50 -597830.20 5678610.34 108.75 -597830.24 5681098.28 100.00 -597830.33 5681564.66 98.75 -597830.36 5680783.23 98.50 -597830.37 5678544.11 110.00 -597830.54 5683765.60 97.50 -597830.81 5683835.24 98.75 -597830.87 5683315.64 98.75 -597830.91 5678125.71 106.25 -597830.95 5678086.07 106.25 -597831.04 5684076.61 97.50 -597831.07 5682322.37 97.50 -597831.12 5678115.80 106.25 -597831.12 5678135.61 106.25 -597831.13 5678669.01 107.50 -597831.17 5678145.51 106.25 -597831.20 5678095.98 106.25 -597831.25 5678600.57 108.75 -597831.31 5683465.30 97.25 -597831.32 5678105.89 106.25 -597831.38 5683471.28 97.50 -597831.46 5683357.86 98.75 -597831.70 5683153.17 98.75 -597831.75 5678357.28 112.50 -597831.82 5678076.23 106.25 -597832.03 5679589.54 98.75 -597832.05 5681343.38 97.00 -597832.12 5683130.68 98.75 -597832.18 5678197.45 107.50 -597832.35 5683760.54 97.25 -597832.37 5680830.72 98.75 -597832.41 5678798.66 101.25 -597832.52 5681373.90 97.50 -597832.61 5683305.15 98.75 -597833.42 5682700.66 98.75 -597833.54 5677987.90 103.75 -597833.67 5681801.91 97.50 -597833.81 5678294.51 110.00 -597833.86 5683802.56 97.50 -597833.95 5681928.52 97.50 -597833.97 5681219.74 100.00 -597834.33 5681368.37 97.50 -597834.34 5681358.55 97.00 -597834.36 5677828.63 102.50 -597834.40 5678507.55 111.00 -597834.48 5678248.75 108.75 -597834.66 5682195.82 97.50 -597834.77 5681791.04 98.75 -597834.89 5678463.50 111.25 -597834.97 5678485.08 111.00 -597835.16 5683841.39 98.75 -597835.19 5683451.20 98.75 -597835.28 5678871.61 100.00 -597835.37 5681573.13 98.75 -597835.46 5678643.98 108.75 -597835.63 5678067.10 106.25 -597835.89 5680299.90 98.75 -597835.94 5680098.20 100.00 -597835.99 5682017.60 97.50 -597836.11 5678693.00 106.25 -597836.11 5683757.05 97.50 -597836.11 5678023.48 105.00 -597836.21 5678696.35 105.00 -597836.32 5680528.59 98.50 -597836.33 5680745.70 98.50 -597836.44 5683196.31 98.75 -597836.55 5678461.19 112.50 -597836.73 5681329.27 98.75 -597836.74 5681982.74 97.50 -597836.85 5680115.85 100.00 -597836.93 5679073.25 98.75 -597837.15 5678740.15 103.75 -597837.28 5683460.24 97.50 -597837.29 5681937.85 97.50 -597837.38 5680702.88 98.50 -597837.48 5683828.54 98.75 -597837.54 5683383.67 98.75 -597837.68 5681398.98 97.50 -597837.78 5681104.74 100.00 -597838.51 5678328.95 111.25 -597839.09 5678765.76 102.50 -597839.14 5680711.54 98.50 -597839.16 5683818.69 97.50 -597839.24 5682328.12 97.50 -597839.26 5683548.51 98.75 -597839.46 5678548.04 110.00 -597839.63 5683177.92 98.75 -597839.65 5683769.55 97.50 -597839.87 5681947.50 97.50 -597840.05 5683362.97 98.75 -597840.21 5678745.73 103.75 -597840.28 5681581.66 98.75 -597840.50 5684079.82 97.50 -597840.63 5680106.99 100.00 -597840.64 5683317.73 98.75 -597840.65 5682707.56 98.75 -597840.73 5678666.30 107.50 -597840.74 5678058.62 106.25 -597840.84 5683467.28 97.25 -597840.95 5683473.73 97.50 -597841.30 5683764.80 97.25 -597841.43 5678355.17 112.50 -597841.53 5678194.24 107.50 -597841.53 5681341.71 97.00 -597841.55 5680826.77 98.75 -597841.69 5683153.40 98.75 -597841.70 5682009.72 97.50 -597841.77 5677982.26 103.75 -597841.79 5679587.38 98.75 -597841.83 5682202.77 97.50 -597841.95 5683128.90 98.75 -597842.00 5678754.96 103.75 -597842.35 5678797.70 101.25 -597842.37 5681806.64 97.50 -597842.49 5681373.35 97.50 -597842.53 5681990.62 97.50 -597842.56 5683304.65 98.75 -597842.71 5678243.19 108.75 -597843.07 5681362.05 97.00 -597843.19 5678702.41 105.00 -597843.20 5678291.87 110.00 -597843.35 5677824.26 102.50 -597843.40 5681956.75 97.50 -597843.43 5682084.92 97.50 -597843.56 5681217.28 100.00 -597843.68 5680695.53 98.50 -597843.78 5683802.05 97.50 -597843.79 5678465.08 111.25 -597843.80 5678509.52 111.00 -597843.89 5681590.84 98.75 -597843.92 5681794.71 98.75 -597844.02 5678482.64 111.00 -597844.09 5683540.65 98.75 -597844.54 5678867.96 100.00 -597844.56 5682000.24 97.50 -597844.85 5680740.48 98.50 -597844.86 5678018.80 105.00 -597844.86 5683761.73 97.50 -597845.00 5679067.36 98.75 -597845.12 5683452.22 98.75 -597845.14 5683841.62 98.75 -597845.32 5681111.20 100.00 -597845.32 5678642.57 108.75 -597845.85 5678691.28 106.25 -597845.87 5680299.29 98.75 -597845.87 5682094.54 97.50 -597845.97 5683389.03 98.75 -597846.20 5681404.00 97.50 -597846.24 5681331.44 98.75 -597846.25 5678459.20 112.50 -597846.26 5680528.92 98.50 -597846.27 5683198.13 98.75 -597846.33 5683823.93 98.75 -597846.54 5680717.51 98.50 -597846.67 5683554.35 98.75 -597846.94 5683462.34 97.50 -597847.03 5682075.60 97.50 -597847.13 5682715.17 98.75 -597847.21 5678761.04 103.75 -597847.41 5682333.87 97.50 -597847.50 5681600.01 98.75 -597847.99 5678325.87 111.25 -597848.24 5678052.57 106.25 -597848.45 5681965.38 97.50 -597848.54 5682104.17 97.50 -597848.66 5678547.92 110.00 -597848.87 5683773.22 97.50 -597848.95 5683366.87 98.75 -597848.98 5684084.96 97.50 -597849.01 5682209.72 97.50 -597849.05 5678765.99 102.50 -597849.09 5683817.55 97.50 -597849.51 5683179.42 98.75 -597849.91 5683321.28 98.75 -597850.26 5683769.05 97.25 -597850.34 5678709.05 105.00 -597850.38 5683469.25 97.25 -597850.41 5683476.59 97.50 -597850.44 5681609.38 98.75 -597850.47 5678664.12 107.50 -597850.56 5678190.45 107.50 -597850.73 5680822.82 98.75 -597850.78 5677977.99 103.75 -597850.87 5681343.25 97.00 -597850.93 5682066.43 97.50 -597851.05 5678237.77 108.75 -597851.07 5681811.37 97.50 -597851.21 5678353.83 112.50 -597851.39 5682113.75 97.50 -597851.54 5679585.23 98.75 -597851.68 5683153.44 98.75 -597851.79 5683127.13 98.75 -597851.92 5678287.45 110.00 -597852.16 5677819.57 102.50 -597852.27 5678796.54 101.25 -597852.40 5683302.91 98.75 -597852.45 5680690.73 98.50 -597852.55 5681619.01 98.75 -597852.71 5681362.38 97.00 -597852.84 5678469.29 111.25 -597852.85 5679061.21 98.75 -597852.87 5681117.65 100.00 -597852.92 5678752.89 103.75 -597852.92 5681411.39 97.50 -597852.96 5681214.09 100.00 -597853.13 5678485.70 111.00 -597853.14 5681798.17 98.75 -597853.26 5678510.56 111.00 -597853.50 5681974.00 97.50 -597853.61 5682722.78 98.75 -597853.62 5683537.91 98.75 -597853.65 5680735.75 98.50 -597853.73 5683801.76 97.50 -597853.81 5678014.54 105.00 -597854.05 5683394.88 98.75 -597854.20 5683764.85 97.50 -597854.24 5678865.56 100.00 -597854.34 5682123.29 97.50 -597854.82 5683451.48 98.75 -597854.87 5681628.59 98.75 -597855.05 5678640.49 108.75 -597855.11 5683841.85 98.75 -597855.41 5681335.20 98.75 -597855.58 5678689.54 106.25 -597855.70 5682217.12 97.50 -597855.80 5680298.18 98.75 -597855.81 5678457.14 112.50 -597856.08 5682057.87 97.50 -597856.09 5683821.96 98.75 -597856.13 5683199.69 98.75 -597856.20 5680529.87 98.50 -597856.26 5683556.79 98.75 -597856.32 5680715.45 98.50 -597856.42 5683465.14 97.50 -597856.66 5682337.32 97.50 -597857.05 5682132.90 97.50 -597857.08 5678048.13 106.25 -597857.16 5684090.69 97.50 -597857.26 5681638.15 98.75 -597857.58 5678323.11 111.25 -597858.01 5678544.62 110.00 -597858.09 5683604.77 98.75 -597858.18 5683776.66 97.50 -597858.31 5681982.75 97.50 -597858.63 5682142.76 97.50 -597858.68 5678184.81 107.50 -597858.78 5678744.85 103.75 -597858.80 5678704.02 105.00 -597858.87 5683325.69 98.75 -597858.94 5683366.61 98.75 -597859.00 5678766.21 102.50 -597859.01 5683816.40 97.50 -597859.33 5683772.94 97.25 -597859.37 5680817.83 98.75 -597859.39 5683180.93 98.75 -597859.61 5681816.39 97.50 -597859.83 5679054.06 98.75 -597859.84 5677973.81 103.75 -597859.87 5683479.45 97.50 -597859.91 5683471.23 97.25 -597860.02 5681647.60 98.75 -597860.02 5681346.30 97.00 -597860.03 5681754.11 98.75 -597860.09 5682730.38 98.75 -597860.29 5678662.30 107.50 -597860.32 5681418.08 97.50 -597860.47 5682152.58 97.50 -597860.49 5681744.26 98.75 -597860.52 5677814.09 102.50 -597860.65 5678283.03 110.00 -597860.71 5681207.88 100.00 -597860.73 5678235.74 108.75 -597860.95 5681734.42 98.75 -597861.00 5681123.34 100.00 -597861.09 5678353.40 112.50 -597861.24 5682049.31 97.50 -597861.27 5678507.20 111.00 -597861.40 5679583.76 98.75 -597861.41 5680686.32 98.50 -597861.51 5678489.77 111.00 -597861.62 5683125.35 98.75 -597861.65 5683299.49 98.75 -597861.65 5681358.77 97.00 -597861.67 5683153.32 98.75 -597861.83 5683401.15 98.75 -597861.93 5682224.93 97.50 -597861.97 5678473.30 111.25 -597861.99 5680730.24 98.50 -597862.20 5678795.38 101.25 -597862.23 5681724.65 98.75 -597862.45 5682162.35 97.50 -597862.52 5681763.33 98.75 -597862.68 5683596.84 98.75 -597862.75 5681798.73 98.75 -597862.78 5681991.69 97.50 -597862.90 5678010.56 105.00 -597863.26 5678450.62 112.50 -597863.28 5681656.90 98.75 -597863.48 5683538.60 98.75 -597863.64 5684097.97 97.50 -597863.67 5683801.46 97.50 -597863.70 5681714.90 98.75 -597863.79 5683611.43 98.75 -597863.89 5683766.99 97.50 -597863.93 5678863.15 100.00 -597863.95 5683447.43 98.75 -597864.19 5678498.22 111.00 -597864.23 5678176.92 107.50 -597864.63 5678637.75 108.75 -597864.72 5678736.87 103.75 -597864.89 5682739.14 98.75 -597865.05 5681336.99 98.75 -597865.08 5681940.57 96.25 -597865.09 5683842.07 98.75 -597865.31 5678687.78 106.25 -597865.35 5678147.97 107.50 -597865.51 5681705.22 98.75 -597865.54 5678138.09 107.50 -597865.73 5678128.21 107.50 -597865.74 5680297.06 98.75 -597865.74 5680810.21 98.75 -597865.76 5680715.06 98.50 -597865.90 5683467.95 97.50 -597865.91 5678157.83 107.50 -597865.94 5683820.49 98.75 -597865.94 5683558.96 98.75 -597865.97 5682040.59 97.50 -597866.01 5683831.72 99.00 -597866.07 5683200.75 98.75 -597866.09 5682001.00 97.50 -597866.12 5681950.02 96.25 -597866.18 5680530.21 98.50 -597866.20 5678044.24 106.25 -597866.32 5682339.87 97.50 -597866.36 5681772.37 98.75 -597866.54 5681666.21 98.75 -597866.59 5678167.69 107.50 -597866.81 5679046.92 98.75 -597867.10 5677967.23 103.75 -597867.12 5683331.33 98.75 -597867.13 5678118.53 107.50 -597867.21 5678320.49 111.25 -597867.35 5678541.33 110.00 -597867.42 5681676.02 98.75 -597867.51 5681695.57 98.75 -597867.53 5683779.93 97.50 -597867.73 5682030.76 97.50 -597867.74 5681424.76 97.50 -597867.79 5682010.85 97.50 -597867.87 5678276.49 110.00 -597867.98 5681821.68 97.50 -597868.05 5682170.63 97.50 -597868.16 5682232.74 97.50 -597868.16 5682020.78 97.50 -597868.21 5678701.07 105.00 -597868.23 5681685.84 98.75 -597868.46 5681201.68 100.00 -597868.55 5684106.66 97.50 -597868.63 5683364.37 98.75 -597868.66 5681791.70 98.75 -597868.85 5680723.33 98.50 -597868.88 5678767.33 102.50 -597868.89 5677808.61 102.50 -597868.92 5683815.18 97.50 -597868.99 5681781.85 98.75 -597869.08 5683407.92 98.75 -597869.12 5683774.47 97.25 -597869.13 5681129.03 100.00 -597869.17 5681349.33 97.00 -597869.22 5683474.07 97.25 -597869.30 5683482.42 97.50 -597869.34 5683180.52 98.75 -597869.68 5682747.92 98.75 -597869.90 5678443.62 112.50 -597870.10 5678660.44 107.50 -597870.19 5681840.81 96.25 -597870.29 5678109.17 107.50 -597870.33 5680681.99 98.50 -597870.41 5683294.69 98.75 -597870.53 5678234.03 108.75 -597870.53 5681958.61 96.25 -597870.57 5680772.41 98.75 -597870.89 5681932.88 96.25 -597870.91 5681356.60 97.00 -597870.99 5678353.63 112.50 -597871.08 5680801.91 98.75 -597871.23 5683122.67 98.75 -597871.30 5678476.83 111.25 -597871.36 5679582.93 98.75 -597871.54 5683594.15 98.75 -597871.66 5683153.19 98.75 -597871.72 5680762.56 98.75 -597871.89 5678433.92 112.50 -597872.04 5678006.69 105.00 -597872.06 5680782.28 98.75 -597872.08 5678796.56 101.25 -597872.16 5678731.21 103.75 -597872.83 5683442.85 98.75 -597872.98 5680792.16 98.75 -597872.98 5679039.08 98.75 -597873.06 5683613.80 98.75 -597873.07 5681834.29 96.25 -597873.29 5683539.88 98.75 -597873.39 5678633.18 108.75 -597873.44 5678099.80 107.50 -597873.47 5684115.36 97.50 -597873.58 5683769.14 97.50 -597873.61 5677959.67 103.75 -597873.61 5683801.45 97.50 -597873.69 5678861.06 100.00 -597874.08 5682178.57 97.50 -597874.46 5682756.69 98.75 -597874.82 5683416.11 98.75 -597874.88 5678269.66 110.00 -597874.91 5681194.29 100.00 -597874.94 5681337.69 98.75 -597874.98 5683337.43 98.75 -597875.02 5678685.98 106.25 -597875.05 5683841.50 98.75 -597875.36 5678040.47 106.25 -597875.48 5683470.32 97.50 -597875.50 5681431.05 97.50 -597875.64 5678424.80 112.50 -597875.67 5680295.94 98.75 -597875.68 5683560.78 98.75 -597875.90 5683820.05 98.75 -597875.99 5682342.32 97.50 -597876.01 5683201.82 98.75 -597876.04 5681942.50 96.00 -597876.18 5680530.21 98.50 -597876.23 5681966.19 96.25 -597876.33 5681827.00 97.50 -597876.34 5682238.22 97.50 -597876.69 5678538.04 110.00 -597876.88 5681952.44 96.00 -597876.90 5681135.20 100.00 -597876.91 5678318.14 111.25 -597877.11 5680674.64 98.50 -597877.26 5677803.14 102.50 -597877.40 5683780.95 97.50 -597877.57 5680754.70 98.75 -597877.88 5678698.74 105.00 -597878.01 5678359.56 112.50 -597878.02 5683361.04 98.75 -597878.25 5681926.93 96.25 -597878.26 5683425.40 98.75 -597878.27 5683288.72 98.75 -597878.33 5683434.59 98.75 -597878.48 5683477.07 97.25 -597878.60 5684123.90 97.50 -597878.71 5683485.43 97.50 -597878.73 5678768.79 102.50 -597878.76 5681350.44 97.00 -597878.84 5683813.96 97.50 -597878.88 5681845.66 96.25 -597878.88 5679031.02 98.75 -597878.97 5683775.59 97.25 -597879.25 5682765.47 98.75 -597879.30 5683179.75 98.75 -597879.54 5678657.68 107.50 -597879.78 5678415.81 112.50 -597880.04 5678092.78 107.50 -597880.18 5677952.16 103.75 -597880.37 5678233.37 108.75 -597880.41 5681186.03 100.00 -597880.52 5681357.09 97.00 -597880.61 5683119.29 98.75 -597880.66 5678479.33 111.25 -597880.76 5682185.99 97.50 -597881.03 5683592.93 98.75 -597881.30 5678003.12 105.00 -597881.30 5683345.10 98.75 -597881.32 5679582.10 98.75 -597881.54 5683154.31 98.75 -597881.80 5678627.84 108.75 -597881.89 5678729.09 103.75 -597881.94 5678262.91 110.00 -597881.96 5678798.07 101.25 -597882.01 5678368.35 112.50 -597882.11 5681838.52 96.25 -597882.21 5680666.15 98.50 -597882.39 5683615.97 98.75 -597882.91 5683542.29 98.75 -597883.04 5681959.75 96.00 -597883.40 5683770.48 97.50 -597883.51 5678859.25 100.00 -597883.53 5681972.51 96.25 -597883.56 5683801.68 97.50 -597883.72 5683354.19 98.75 -597883.86 5678406.78 112.50 -597884.08 5681435.06 97.50 -597884.13 5678378.02 112.50 -597884.59 5678683.48 106.25 -597884.61 5681141.46 100.00 -597884.79 5679022.96 98.75 -597884.79 5681338.77 98.75 -597884.84 5683281.24 98.75 -597884.87 5682773.66 98.75 -597884.90 5678037.77 106.25 -597884.90 5683564.43 98.75 -597884.93 5683840.44 98.75 -597885.11 5681831.56 97.50 -597885.17 5684131.43 97.50 -597885.18 5683472.22 97.50 -597885.29 5681177.41 100.00 -597885.33 5682242.46 97.50 -597885.39 5680748.54 98.75 -597885.42 5680293.81 98.75 -597885.74 5680656.86 98.50 -597885.77 5678387.78 112.50 -597885.86 5683819.93 98.75 -597885.94 5683202.88 98.75 -597885.97 5682342.89 97.50 -597886.03 5678534.74 110.00 -597886.16 5680529.98 98.50 -597886.43 5678318.75 111.25 -597886.47 5677799.32 102.50 -597886.77 5677944.66 103.75 -597886.79 5681927.39 96.25 -597886.95 5678397.61 112.50 -597887.28 5683781.97 97.50 -597887.61 5681945.60 96.25 -597887.72 5678698.54 105.00 -597887.74 5683480.07 97.25 -597887.82 5678652.10 107.50 -597887.93 5681849.88 96.25 -597888.07 5678087.22 107.50 -597888.13 5683488.44 97.50 -597888.34 5680647.28 98.50 -597888.39 5681351.10 97.00 -597888.42 5682192.41 97.50 -597888.62 5678769.84 102.50 -597888.75 5683812.75 97.50 -597888.82 5678621.00 108.75 -597888.85 5683776.35 97.25 -597889.20 5678228.79 108.75 -597889.27 5683178.98 98.75 -597889.30 5681936.09 96.25 -597889.37 5681168.37 100.00 -597889.53 5683114.83 98.75 -597889.53 5681149.43 100.00 -597889.59 5683272.45 98.75 -597889.95 5677998.48 105.00 -597890.00 5681358.66 97.00 -597890.06 5678476.20 111.25 -597890.09 5679014.51 98.75 -597890.47 5681966.41 96.00 -597890.49 5678258.14 110.00 -597890.53 5683591.72 98.75 -597891.05 5683157.26 98.75 -597891.12 5679580.28 98.75 -597891.28 5681842.49 96.25 -597891.41 5682781.21 98.75 -597891.46 5683618.98 98.75 -597891.64 5681159.13 100.00 -597891.69 5678727.71 103.75 -597891.72 5677936.26 103.75 -597891.73 5684138.95 97.50 -597891.84 5678799.59 101.25 -597892.00 5681977.12 96.25 -597892.39 5681953.99 96.25 -597892.65 5683543.86 98.75 -597893.24 5680742.40 98.75 -597893.27 5683771.55 97.50 -597893.33 5678857.43 100.00 -597893.50 5683802.03 97.50 -597893.70 5678528.61 110.00 -597893.96 5678680.86 106.25 -597893.98 5681835.96 97.50 -597894.05 5678034.05 106.25 -597894.06 5681435.06 97.50 -597894.49 5681405.59 95.50 -597894.59 5677926.70 103.75 -597894.61 5683837.99 98.75 -597894.62 5683566.44 98.75 -597894.65 5681339.87 98.75 -597894.65 5678323.90 111.25 -597894.75 5683474.54 97.50 -597894.80 5678613.03 108.75 -597894.97 5682245.10 97.50 -597895.05 5679005.84 98.75 -597895.10 5680291.33 98.75 -597895.23 5680640.04 98.50 -597895.48 5683264.59 98.75 -597895.71 5683821.47 98.75 -597895.80 5677795.71 102.50 -597895.88 5678646.22 107.50 -597895.92 5683203.41 98.75 -597895.94 5682343.46 97.50 -597895.97 5678468.16 111.25 -597896.08 5682198.83 97.50 -597896.10 5680528.93 98.50 -597896.65 5683484.00 97.25 -597897.00 5681854.07 96.25 -597897.13 5683492.50 97.50 -597897.15 5683782.95 97.50 -597897.34 5678083.80 107.50 -597897.40 5677917.13 103.75 -597897.55 5678697.88 105.00 -597897.90 5681352.72 97.00 -597897.92 5677992.60 105.00 -597897.95 5682788.77 98.75 -597898.06 5678224.28 108.75 -597898.33 5681972.54 96.00 -597898.43 5684146.36 97.50 -597898.54 5683814.32 97.50 -597898.57 5678770.07 102.50 -597898.66 5678332.97 111.25 -597898.68 5683175.97 98.75 -597898.73 5683777.12 97.25 -597898.98 5681362.19 97.00 -597899.10 5678253.52 110.00 -597899.19 5683112.25 98.75 -597899.85 5683161.57 98.75 -597900.01 5678997.16 98.75 -597900.01 5681982.43 96.25 -597900.06 5683590.81 98.75 -597900.21 5677907.55 103.75 -597900.47 5680735.50 98.75 -597900.49 5681846.34 96.25 -597900.71 5678605.02 108.75 -597900.73 5683621.13 98.75 -597900.79 5681958.70 96.25 -597900.86 5679578.04 98.75 -597901.09 5678522.02 110.00 -597901.64 5678727.55 103.75 -597901.72 5678801.11 101.25 -597902.17 5678686.36 106.25 -597902.34 5678342.24 111.25 -597902.55 5683544.19 98.75 -597902.65 5678460.80 111.25 -597902.95 5681840.13 97.50 -597903.01 5678029.82 106.25 -597903.03 5680633.80 98.50 -597903.14 5683772.62 97.50 -597903.21 5678855.99 100.00 -597903.23 5683258.29 98.75 -597903.36 5683803.31 97.50 -597903.44 5682061.41 96.25 -597903.66 5683606.37 99.00 -597903.74 5682205.24 97.50 -597903.79 5683478.55 97.50 -597903.87 5681343.26 98.75 -597903.95 5678640.39 107.50 -597904.05 5681435.06 97.50 -597904.08 5678595.64 108.75 -597904.08 5683834.87 98.75 -597904.29 5678216.88 108.75 -597904.33 5683568.45 98.75 -597904.37 5678188.05 108.75 -597904.39 5682070.98 96.25 -597904.49 5680287.92 98.75 -597904.72 5677898.79 103.75 -597904.75 5682243.37 97.50 -597904.79 5678178.11 108.75 -597905.01 5678197.93 108.75 -597905.21 5683169.53 98.75 -597905.22 5678168.17 108.75 -597905.32 5682795.51 98.75 -597905.38 5677793.08 102.50 -597905.48 5683823.25 98.75 -597905.49 5684153.31 97.50 -597905.55 5683487.95 97.25 -597905.72 5680526.42 98.50 -597905.84 5683556.61 99.00 -597905.91 5683203.64 98.75 -597905.91 5682344.15 97.50 -597905.93 5681858.53 96.25 -597905.99 5681978.92 96.00 -597906.02 5683496.81 97.50 -597906.20 5678158.27 108.75 -597906.38 5678207.78 108.75 -597906.50 5678990.15 98.75 -597906.55 5678080.20 107.50 -597906.64 5681989.25 96.25 -597906.87 5677988.33 105.00 -597906.98 5678351.07 111.25 -597907.07 5683782.60 97.50 -597907.18 5678586.17 108.75 -597907.19 5678148.38 108.75 -597907.29 5678695.88 105.00 -597907.35 5681354.66 97.00 -597907.50 5681366.73 97.00 -597907.61 5682052.45 96.25 -597908.04 5678249.53 110.00 -597908.07 5678453.12 111.25 -597908.30 5678443.14 111.25 -597908.31 5683816.41 97.50 -597908.34 5680729.78 98.75 -597908.52 5678770.29 102.50 -597908.53 5678433.17 111.25 -597908.79 5678515.82 110.00 -597908.83 5678138.61 108.75 -597908.84 5683109.66 98.75 -597908.90 5681963.93 96.25 -597909.61 5683590.09 98.75 -597909.84 5681849.84 96.25 -597909.87 5678685.85 106.25 -597910.22 5683622.43 98.75 -597910.26 5678576.69 108.75 -597910.40 5677890.58 103.75 -597910.48 5680627.16 98.50 -597910.60 5679575.80 98.75 -597910.73 5681997.96 96.25 -597910.91 5682212.20 97.50 -597911.53 5683253.36 98.75 -597911.59 5678800.29 101.25 -597911.59 5678727.39 103.75 -597911.63 5678359.90 111.25 -597911.66 5678423.95 111.25 -597911.72 5683829.76 98.75 -597911.92 5682077.43 96.25 -597912.00 5678025.66 106.25 -597912.23 5681843.58 97.50 -597912.27 5683546.17 98.75 -597912.57 5683483.07 97.50 -597912.66 5678129.67 108.75 -597912.70 5682802.25 98.75 -597912.75 5678635.75 107.50 -597912.91 5681347.34 98.75 -597913.03 5683773.36 97.50 -597913.12 5678854.76 100.00 -597913.23 5683804.58 97.50 -597913.28 5682007.26 96.25 -597913.52 5682238.97 97.50 -597913.66 5681985.31 96.00 -597913.79 5680284.25 98.75 -597914.05 5683570.40 98.75 -597914.11 5678567.55 108.75 -597914.22 5683502.33 97.50 -597914.26 5683492.24 97.25 -597914.32 5684157.98 97.50 -597914.86 5681863.00 96.25 -597915.01 5682045.92 96.25 -597915.15 5681970.84 96.25 -597915.20 5680523.25 98.50 -597915.29 5677791.72 102.50 -597915.52 5682220.53 97.50 -597915.56 5678985.95 98.75 -597915.67 5678076.40 107.50 -597915.83 5677984.06 105.00 -597915.88 5682344.85 97.50 -597915.90 5683203.86 98.75 -597915.90 5680618.87 98.50 -597915.93 5681358.49 97.00 -597916.28 5678368.73 111.25 -597916.32 5678415.13 111.25 -597916.57 5681366.73 97.00 -597916.86 5678693.30 105.00 -597916.91 5683781.74 97.50 -597916.92 5678510.16 110.00 -597916.97 5678245.53 110.00 -597917.02 5678679.02 106.25 -597917.30 5682230.36 97.50 -597917.67 5682618.95 98.75 -597917.72 5682609.79 98.75 -597918.07 5680727.81 98.75 -597918.07 5683818.50 97.50 -597918.17 5677884.36 103.75 -597918.47 5678770.47 102.50 -597918.70 5682084.65 96.25 -597918.72 5683109.61 98.75 -597918.85 5683591.25 98.75 -597919.05 5678558.90 108.75 -597919.25 5681853.18 96.25 -597919.39 5681979.51 96.25 -597919.57 5683620.39 98.75 -597919.63 5678122.58 108.75 -597919.74 5678628.63 107.50 -597919.76 5680893.29 98.75 -597920.08 5682809.00 98.75 -597920.27 5680609.90 98.50 -597920.27 5679573.40 98.75 -597920.40 5678377.79 111.25 -597920.91 5680902.56 98.75 -597920.99 5678406.31 111.25 -597921.22 5683487.85 97.50 -597921.33 5682011.82 96.25 -597921.47 5678798.74 101.25 -597921.50 5678726.71 103.75 -597921.50 5683252.70 98.75 -597921.52 5681847.03 97.50 -597921.74 5678023.84 106.25 -597921.87 5681351.53 98.75 -597921.98 5683548.16 98.75 -597922.30 5683497.73 97.25 -597922.32 5683775.86 97.50 -597922.42 5683507.84 97.50 -597922.52 5680884.37 98.75 -597922.86 5678852.66 100.00 -597923.09 5680280.58 98.75 -597923.10 5683805.62 97.50 -597923.15 5684162.65 97.50 -597923.18 5682627.26 98.75 -597923.48 5682602.21 98.75 -597923.54 5678387.26 111.25 -597923.63 5681988.19 96.25 -597923.69 5680600.51 98.50 -597923.81 5681867.43 96.25 -597923.86 5683571.89 98.75 -597924.02 5682049.41 96.25 -597924.05 5678396.97 111.25 -597924.16 5678672.19 106.25 -597924.19 5678550.36 108.75 -597924.47 5682092.63 96.25 -597924.63 5678981.75 98.75 -597924.72 5678239.72 110.00 -597925.01 5678073.28 107.50 -597925.05 5678504.50 110.00 -597925.07 5680524.36 98.50 -597925.19 5677790.36 102.50 -597925.35 5677981.70 105.00 -597925.69 5681997.52 96.25 -597925.82 5682345.69 97.50 -597925.86 5683613.37 98.75 -597925.87 5683203.30 98.75 -597926.16 5678689.76 105.00 -597926.40 5677879.02 103.75 -597926.42 5680875.93 98.75 -597926.60 5680909.91 98.75 -597926.83 5683595.74 98.75 -597926.95 5682007.09 96.25 -597927.01 5678116.13 108.75 -597927.06 5680591.10 98.50 -597927.43 5678622.26 107.50 -597927.53 5682058.25 96.25 -597927.72 5682068.16 96.25 -597927.92 5680729.49 98.75 -597927.97 5678767.48 102.50 -597928.03 5683818.95 97.50 -597928.25 5682101.66 96.25 -597928.25 5682150.89 96.25 -597928.61 5682814.06 98.75 -597928.64 5682078.03 96.25 -597928.64 5683515.51 97.50 -597928.67 5681856.51 96.25 -597928.67 5683110.47 98.75 -597928.73 5678231.17 110.00 -597929.06 5681358.36 98.75 -597929.16 5678612.61 107.50 -597929.18 5682635.18 98.75 -597929.19 5679568.88 98.75 -597929.33 5678541.82 108.75 -597929.52 5682141.06 96.25 -597929.74 5683604.86 98.75 -597929.79 5683503.87 97.25 -597929.79 5683492.78 97.50 -597929.82 5682111.45 96.25 -597929.93 5678211.79 110.00 -597930.05 5678221.57 110.00 -597930.37 5680581.67 98.50 -597930.41 5678202.06 110.00 -597930.50 5682121.32 96.25 -597930.77 5682131.23 96.25 -597930.95 5681850.05 97.50 -597930.99 5680867.85 98.75 -597931.29 5682596.01 98.75 -597931.32 5678725.10 103.75 -597931.34 5678797.19 101.25 -597931.39 5683551.14 98.75 -597931.45 5683253.12 98.75 -597931.52 5678665.58 106.25 -597931.56 5678022.86 106.25 -597932.27 5680276.69 98.75 -597932.39 5678192.48 110.00 -597932.49 5678849.99 100.00 -597932.68 5682159.74 96.25 -597932.86 5681871.67 96.25 -597933.05 5683805.36 97.50 -597933.17 5678498.83 110.00 -597933.49 5682086.57 96.25 -597933.57 5683570.72 98.75 -597933.68 5680572.24 98.50 -597933.70 5678977.55 98.75 -597933.80 5680528.39 98.50 -597934.49 5678182.93 110.00 -597934.65 5678071.12 107.50 -597934.90 5678604.85 107.50 -597934.94 5683523.13 97.50 -597934.98 5680913.20 98.75 -597935.15 5677789.52 102.50 -597935.20 5677980.50 105.00 -597935.36 5682348.67 97.50 -597935.59 5678686.62 105.00 -597935.84 5683202.66 98.75 -597935.98 5682642.48 98.75 -597936.21 5678534.65 108.75 -597936.24 5677877.38 103.75 -597936.25 5681365.18 98.75 -597936.43 5683510.99 97.25 -597936.43 5678112.96 108.75 -597937.14 5683499.28 97.50 -597937.28 5680895.68 96.25 -597937.47 5678764.48 102.50 -597937.54 5682818.54 98.75 -597937.77 5680731.18 98.75 -597938.02 5683819.18 97.50 -597938.10 5679564.36 98.75 -597938.13 5680563.29 98.50 -597938.28 5678173.91 110.00 -597938.36 5681858.73 96.25 -597938.50 5680862.30 98.75 -597938.53 5683112.00 98.75 -597938.70 5678491.12 110.00 -597938.91 5682167.34 96.25 -597939.30 5682094.48 96.25 -597939.37 5682590.19 98.75 -597939.56 5678659.89 106.25 -597939.60 5683556.24 98.75 -597940.10 5681374.13 98.75 -597940.38 5681853.06 97.50 -597940.66 5680271.25 98.75 -597940.77 5678596.78 107.50 -597941.05 5683564.74 98.75 -597941.05 5678723.10 103.75 -597941.08 5678794.97 101.25 -597941.34 5683530.66 97.50 -597941.40 5683254.06 98.75 -597941.48 5678022.86 106.25 -597941.48 5680534.79 98.50 -597941.90 5681875.90 96.25 -597941.92 5680554.11 98.50 -597942.11 5678847.32 100.00 -597942.33 5678481.90 110.00 -597942.78 5682649.77 98.75 -597942.97 5683804.98 97.50 -597942.98 5683518.19 97.25 -597943.00 5678973.94 98.75 -597943.28 5678527.63 108.75 -597943.34 5678165.61 110.00 -597943.84 5683506.54 97.50 -597943.99 5680544.33 98.50 -597944.11 5680912.02 98.75 -597944.50 5678071.01 107.50 -597945.09 5678683.69 105.00 -597945.10 5677980.20 105.00 -597945.13 5677788.84 102.50 -597945.22 5682350.27 97.50 -597945.23 5682102.30 96.25 -597945.65 5678472.60 110.00 -597945.82 5683202.01 98.75 -597945.86 5678109.78 108.75 -597946.10 5678588.38 107.50 -597946.16 5677876.89 103.75 -597946.24 5682998.31 98.75 -597946.38 5680863.46 98.75 -597946.48 5682823.02 98.75 -597946.96 5678761.47 102.50 -597947.01 5679559.84 98.75 -597947.25 5681379.90 98.75 -597947.26 5682172.21 96.25 -597947.38 5678462.84 110.00 -597947.56 5680733.17 98.75 -597947.66 5678654.30 106.25 -597947.68 5683816.85 97.50 -597947.71 5683538.22 97.50 -597947.82 5682584.91 98.75 -597948.24 5681860.13 96.25 -597948.28 5683114.17 98.75 -597949.05 5680265.80 98.75 -597949.11 5678453.09 110.00 -597949.28 5683525.61 97.25 -597949.29 5683007.07 98.75 -597949.51 5678519.87 108.75 -597949.57 5682657.07 98.75 -597949.99 5678569.33 107.50 -597950.02 5682110.84 96.25 -597950.05 5683514.23 97.50 -597950.09 5678159.22 110.00 -597950.18 5678579.32 107.50 -597950.54 5678720.25 103.75 -597950.77 5678792.54 101.25 -597950.78 5680871.68 98.75 -597950.89 5678443.35 110.00 -597950.95 5681880.14 96.25 -597951.17 5683256.06 98.75 -597951.35 5678023.47 106.25 -597951.43 5678843.92 100.00 -597951.46 5680907.07 98.75 -597951.66 5678559.59 107.50 -597951.93 5683800.67 97.50 -597952.22 5678329.28 110.00 -597952.46 5678970.74 98.75 -597953.33 5678319.54 110.00 -597953.36 5683546.32 97.50 -597953.61 5682992.52 98.75 -597953.73 5680880.54 98.75 -597953.99 5682354.71 97.50 -597954.01 5678073.41 107.50 -597954.15 5678434.00 110.00 -597954.32 5682119.67 96.25 -597954.40 5678338.94 110.00 -597954.59 5678680.76 105.00 -597954.67 5678647.34 106.25 -597955.02 5677980.34 105.00 -597955.11 5677788.40 102.50 -597955.44 5682827.44 98.75 -597955.49 5678511.90 108.75 -597955.59 5683533.03 97.25 -597955.59 5680889.57 98.75 -597955.59 5680898.91 98.75 -597955.63 5678550.54 107.50 -597955.64 5678108.31 108.75 -597955.79 5683201.41 98.75 -597955.92 5679555.33 98.75 -597956.05 5681384.43 98.75 -597956.08 5683522.05 97.50 -597956.14 5677877.19 103.75 -597956.28 5682579.62 98.75 -597956.36 5678758.20 102.50 -597956.42 5682664.32 98.75 -597956.43 5683013.90 98.75 -597956.48 5678310.38 110.00 -597956.59 5678348.60 110.00 -597956.59 5682175.56 96.25 -597957.30 5683814.15 97.50 -597957.35 5680735.16 98.75 -597957.42 5678424.65 110.00 -597957.43 5680260.36 98.75 -597957.44 5682503.04 98.75 -597958.04 5683116.33 98.75 -597958.21 5682128.68 96.25 -597958.83 5678358.25 110.00 -597959.00 5683554.45 97.50 -597959.14 5678715.23 103.75 -597959.44 5682512.81 98.75 -597959.69 5682493.57 98.75 -597959.70 5678157.38 110.00 -597959.94 5681884.47 96.25 -597960.02 5680923.43 98.75 -597960.17 5678839.08 100.00 -597960.40 5678789.89 101.25 -597960.68 5678415.30 110.00 -597960.80 5683796.23 97.50 -597960.88 5683258.42 98.75 -597961.21 5678024.56 106.25 -597961.46 5678503.92 108.75 -597961.58 5678542.57 107.50 -597961.66 5683540.63 97.25 -597961.69 5678640.38 106.25 -597961.93 5678967.54 98.75 -597961.97 5683529.99 97.50 -597962.00 5678367.63 110.00 -597962.10 5682137.70 96.25 -597962.24 5678302.32 110.00 -597962.39 5682360.13 97.50 -597962.44 5682522.32 98.75 -597962.90 5682990.19 98.75 -597963.01 5682484.16 98.75 -597963.30 5682671.53 98.75 -597963.53 5678075.80 107.50 -597963.85 5680916.08 98.75 -597964.06 5678377.29 110.00 -597964.14 5678677.98 105.00 -597964.35 5677882.36 103.75 -597964.47 5681389.67 98.75 -597964.50 5683019.63 98.75 -597964.51 5682831.63 98.75 -597964.51 5678406.16 110.00 -597964.58 5683562.60 97.50 -597964.75 5677982.08 105.00 -597964.83 5679550.81 98.75 -597964.87 5682574.56 98.75 -597965.04 5682147.07 96.25 -597965.11 5677788.20 102.50 -597965.55 5678107.50 108.75 -597965.56 5678387.08 110.00 -597965.77 5678754.93 102.50 -597965.77 5683200.88 98.75 -597966.06 5680931.24 98.75 -597966.41 5680255.97 98.75 -597966.50 5682175.79 96.25 -597966.54 5682474.84 98.75 -597966.61 5682531.38 98.75 -597966.92 5683811.44 97.50 -597967.06 5678396.87 110.00 -597967.13 5683548.69 97.25 -597967.15 5678495.75 108.75 -597967.16 5680735.87 98.75 -597967.22 5683788.63 97.50 -597967.73 5678710.21 103.75 -597967.79 5683118.50 98.75 -597968.12 5683537.74 97.50 -597968.20 5678535.10 107.50 -597968.53 5681768.27 97.50 -597968.84 5678633.54 106.25 -597968.90 5678834.23 100.00 -597968.92 5681888.86 96.25 -597969.14 5678154.82 110.00 -597969.48 5682367.15 97.50 -597969.89 5678786.76 101.25 -597970.19 5682678.74 98.75 -597970.37 5682154.98 96.25 -597970.39 5678296.92 110.00 -597970.40 5682465.69 98.75 -597970.64 5681760.50 97.50 -597970.78 5682540.43 98.75 -597970.83 5683259.29 98.75 -597970.97 5678026.14 106.25 -597971.39 5678964.34 98.75 -597971.87 5681396.16 98.75 -597971.95 5683569.13 97.50 -597972.19 5677888.52 103.75 -597972.31 5678672.47 105.00 -597972.59 5683556.75 97.25 -597972.73 5678487.49 108.75 -597972.79 5682569.02 98.75 -597972.79 5682989.80 98.75 -597972.89 5680911.95 98.75 -597973.41 5678076.14 107.50 -597973.47 5683023.46 98.75 -597973.58 5682835.82 98.75 -597973.74 5679546.29 98.75 -597973.79 5682549.86 98.75 -597973.96 5680937.32 98.75 -597974.26 5678527.16 107.50 -597974.28 5683545.46 97.50 -597974.45 5677984.19 105.00 -597974.67 5681775.20 97.50 -597974.74 5682375.44 97.50 -597974.77 5678288.30 110.00 -597975.11 5677788.01 102.50 -597975.17 5678751.66 102.50 -597975.40 5680251.60 98.75 -597975.48 5678106.96 108.75 -597975.69 5682559.65 98.75 -597975.75 5683200.35 98.75 -597975.99 5678626.72 106.25 -597976.20 5678705.00 103.75 -597976.26 5683788.61 97.50 -597976.33 5682457.68 98.75 -597976.41 5682176.02 96.25 -597976.53 5683808.72 97.50 -597976.96 5681894.70 96.25 -597977.01 5680734.14 98.75 -597977.19 5678478.61 108.75 -597977.57 5683120.54 98.75 -597977.63 5678829.39 100.00 -597977.88 5678279.13 110.00 -597978.30 5677896.41 103.75 -597978.54 5682159.18 96.25 -597978.54 5678152.13 110.00 -597978.63 5682384.64 97.50 -597978.93 5681399.78 98.75 -597979.01 5678269.41 110.00 -597979.38 5678783.63 101.25 -597979.42 5683254.99 98.75 -597979.65 5682681.75 98.75 -597979.86 5678666.01 105.00 -597980.12 5678519.08 107.50 -597980.17 5678617.79 106.25 -597980.29 5681760.50 97.50 -597980.67 5678027.44 106.25 -597980.68 5683553.00 97.50 -597980.85 5683573.24 97.50 -597980.86 5678961.14 98.75 -597981.23 5678259.95 110.00 -597981.25 5678469.51 108.75 -597981.48 5680943.86 98.75 -597982.00 5683781.75 97.50 -597982.47 5682840.34 98.75 -597982.54 5682990.83 98.75 -597982.69 5682393.77 97.50 -597982.80 5680910.89 98.75 -597983.02 5683026.06 98.75 -597983.12 5682450.74 98.75 -597983.14 5679543.28 98.75 -597983.19 5681779.72 97.50 -597983.29 5678076.48 107.50 -597984.22 5677985.92 105.00 -597984.24 5678608.78 106.25 -597984.32 5677904.36 103.75 -597984.51 5678699.52 103.75 -597984.53 5680247.52 98.75 -597984.58 5678748.39 102.50 -597984.63 5678250.77 110.00 -597984.63 5683772.15 97.50 -597984.71 5681901.00 96.25 -597984.79 5678460.20 108.75 -597984.98 5677786.57 102.50 -597985.42 5678106.72 108.75 -597985.44 5680654.28 98.75 -597985.73 5683199.83 98.75 -597985.76 5678510.85 107.50 -597985.93 5680730.01 98.75 -597986.03 5682178.29 96.25 -597986.18 5678824.23 100.00 -597986.19 5678658.59 105.00 -597986.20 5683806.24 97.50 -597986.53 5681393.41 98.75 -597986.83 5682402.87 97.50 -597986.93 5683560.65 97.50 -597987.23 5680663.90 98.75 -597987.43 5683122.21 98.75 -597987.47 5677913.82 103.75 -597987.63 5678599.50 106.25 -597987.68 5683249.37 98.75 -597987.90 5683762.77 97.50 -597987.98 5678149.55 110.00 -597988.15 5678450.82 108.75 -597988.34 5682159.65 96.25 -597988.52 5680950.91 98.75 -597988.98 5678780.88 101.25 -597989.14 5683569.16 97.50 -597989.20 5682684.59 98.75 -597989.34 5680645.33 98.75 -597989.46 5681763.11 97.50 -597990.11 5678242.69 110.00 -597990.15 5681976.40 96.25 -597990.25 5678649.51 105.00 -597990.32 5678957.94 98.75 -597990.43 5678502.02 107.50 -597990.50 5678026.15 106.25 -597990.78 5681423.39 97.50 -597990.85 5678590.15 106.25 -597990.96 5682411.96 97.50 -597990.97 5682845.61 98.75 -597990.97 5681908.28 96.25 -597991.56 5681985.66 96.25 -597991.63 5681966.57 96.25 -597992.19 5682993.03 98.75 -597992.25 5680672.44 98.75 -597992.30 5681782.82 97.50 -597992.58 5683028.60 98.75 -597992.64 5682451.19 98.75 -597992.71 5680909.83 98.75 -597992.87 5678694.12 103.75 -597992.89 5683754.37 97.50 -597992.91 5677922.02 103.75 -597993.01 5679541.75 98.75 -597993.10 5678075.33 107.50 -597993.35 5680723.49 98.75 -597993.69 5680243.51 98.75 -597993.70 5681956.80 96.25 -597993.71 5681917.88 96.25 -597993.85 5678580.73 106.25 -597993.95 5678442.77 108.75 -597993.99 5677987.66 105.00 -597994.04 5678745.29 102.50 -597994.40 5678640.47 105.00 -597994.56 5682182.99 96.25 -597994.65 5678818.94 100.00 -597994.68 5681387.98 98.75 -597994.82 5677784.78 102.50 -597994.90 5678493.12 107.50 -597995.03 5678105.05 108.75 -597995.33 5678234.41 110.00 -597995.51 5683243.29 98.75 -597995.52 5681432.10 97.50 -597995.57 5680957.96 98.75 -597995.59 5682420.79 97.50 -597995.70 5681419.92 97.50 -597995.71 5683199.41 98.75 -597995.76 5681947.03 96.25 -597995.97 5683804.15 97.50 -597996.46 5681927.48 96.25 -597996.84 5678571.31 106.25 -597997.27 5683123.95 98.75 -597997.44 5678147.06 110.00 -597997.45 5681937.18 96.25 -597997.50 5680639.57 98.75 -597997.59 5678483.50 107.50 -597997.69 5682157.25 96.25 -597998.49 5681766.50 97.50 -597998.70 5678778.54 101.25 -597998.78 5678631.54 105.00 -597998.89 5682686.92 98.75 -597999.29 5677929.69 103.75 -597999.47 5682850.87 98.75 -597999.71 5681991.43 96.25 -597999.80 5678954.79 98.75 -597999.83 5680715.89 98.75 -597999.84 5678561.89 106.25 -598000.07 5678434.92 108.75 -598000.16 5680678.28 98.75 -598000.29 5678473.89 107.50 -598000.33 5678024.89 106.25 -598000.40 5683748.08 97.50 -598000.72 5681440.54 97.50 -598000.82 5678226.33 110.00 -598000.96 5682456.36 98.75 -598001.09 5682429.13 97.50 -598001.19 5678688.68 103.75 -598001.52 5681785.66 97.50 -598001.87 5682995.10 98.75 -598002.01 5683235.69 98.75 -598002.05 5678552.30 106.25 -598002.16 5682189.34 96.25 -598002.18 5683031.00 98.75 -598002.61 5680908.71 98.75 -598002.85 5680239.51 98.75 -598002.87 5680964.69 98.75 -598002.89 5679540.22 98.75 -598002.90 5678074.10 107.50 -598003.08 5680706.54 98.75 -598003.29 5678813.93 100.00 -598003.32 5678542.49 106.25 -598003.36 5678464.39 107.50 -598003.53 5680687.19 98.75 -598003.61 5678742.54 102.50 -598003.75 5677989.46 105.00 -598003.79 5678622.97 105.00 -598003.97 5681384.52 98.75 -598004.06 5678100.88 108.75 -598004.50 5677782.38 102.50 -598004.55 5678153.57 110.00 -598004.80 5683202.21 98.75 -598005.19 5683581.31 97.50 -598005.41 5681421.90 97.50 -598005.47 5680633.59 98.75 -598005.73 5680696.94 98.75 -598005.86 5677937.19 103.75 -598005.93 5683804.12 97.50 -598005.98 5681922.84 96.00 -598006.19 5678427.05 108.75 -598006.52 5682437.51 97.50 -598006.80 5678218.59 110.00 -598006.84 5678455.03 107.50 -598006.84 5682153.70 96.25 -598007.06 5683125.41 98.75 -598007.29 5681770.42 97.50 -598007.60 5682856.65 98.75 -598008.10 5681446.93 97.50 -598008.20 5678534.14 106.25 -598008.41 5678776.20 101.25 -598008.47 5682462.84 98.75 -598008.50 5683228.10 98.75 -598008.66 5682688.90 98.75 -598008.99 5683751.19 97.50 -598009.16 5678682.75 103.75 -598009.19 5678614.63 105.00 -598009.28 5678951.63 98.75 -598009.43 5682196.07 96.25 -598009.83 5678417.77 108.75 -598009.94 5678161.70 110.00 -598010.21 5678024.06 106.25 -598010.42 5679147.83 97.50 -598010.66 5681884.72 97.50 -598010.68 5678209.77 110.00 -598010.73 5681788.51 97.50 -598010.92 5683589.19 97.50 -598011.05 5683209.40 98.75 -598011.36 5680969.91 98.75 -598011.48 5678180.76 110.00 -598011.56 5682997.13 98.75 -598011.63 5678170.98 110.00 -598011.65 5682446.09 97.50 -598011.75 5683219.10 98.75 -598011.78 5683033.41 98.75 -598011.84 5679157.39 97.50 -598011.90 5683575.59 97.50 -598012.01 5678190.53 110.00 -598012.04 5680235.58 98.75 -598012.11 5678809.26 100.00 -598012.22 5680626.22 98.75 -598012.44 5682620.31 99.00 -598012.52 5680907.59 98.75 -598012.62 5678200.29 110.00 -598012.69 5678072.73 107.50 -598012.77 5679538.76 98.75 -598012.88 5678605.44 105.00 -598012.98 5677944.18 103.75 -598013.06 5679138.24 97.50 -598013.07 5682146.44 96.25 -598013.12 5678096.78 108.75 -598013.22 5678739.97 102.50 -598013.22 5681380.97 98.75 -598013.28 5681434.79 96.20 -598013.29 5678339.78 108.75 -598013.47 5678408.50 108.75 -598013.48 5677991.43 105.00 -598013.80 5678349.64 108.75 -598014.01 5677779.28 102.50 -598014.09 5678526.21 106.25 -598014.45 5682470.82 98.75 -598014.49 5678449.01 107.50 -598014.78 5678359.55 108.75 -598014.79 5678329.93 108.75 -598015.15 5681423.74 97.50 -598015.20 5683800.74 97.50 -598015.23 5681636.53 97.50 -598015.48 5682862.79 98.75 -598015.48 5678369.49 108.75 -598015.62 5678675.19 103.75 -598015.96 5681774.64 97.50 -598016.18 5678596.05 105.00 -598016.23 5681452.62 97.50 -598016.36 5678399.00 108.75 -598016.59 5683122.46 98.75 -598016.70 5682202.81 96.25 -598016.77 5678379.37 108.75 -598016.78 5682454.66 97.50 -598016.82 5683757.18 97.50 -598016.84 5679165.12 97.50 -598016.98 5678320.24 108.75 -598017.12 5679129.58 97.50 -598018.19 5678774.16 101.25 -598018.22 5678389.21 108.75 -598018.32 5682687.97 98.75 -598018.36 5683595.80 97.50 -598018.52 5680618.46 98.75 -598018.63 5682138.35 96.25 -598018.76 5678948.48 98.75 -598019.20 5678586.61 105.00 -598019.46 5681888.25 97.50 -598019.77 5681639.10 97.50 -598019.87 5682479.14 98.75 -598019.94 5681791.36 97.50 -598019.99 5678518.27 106.25 -598019.99 5678310.74 108.75 -598020.09 5678023.23 106.25 -598020.42 5678576.74 105.00 -598020.64 5677950.57 103.75 -598021.08 5678804.95 100.00 -598021.19 5680971.33 98.75 -598021.37 5683035.84 98.75 -598021.40 5680232.05 98.75 -598021.44 5682997.59 98.75 -598021.69 5681191.31 98.75 -598021.70 5683577.11 97.50 -598021.91 5682463.24 97.50 -598021.99 5681438.63 96.20 -598022.06 5678667.60 103.75 -598022.15 5681181.79 98.75 -598022.24 5678567.00 105.00 -598022.26 5681376.89 98.75 -598022.41 5680906.38 98.75 -598022.42 5678093.40 108.75 -598022.48 5678071.37 107.50 -598022.72 5679537.86 98.75 -598022.84 5681630.31 97.50 -598022.93 5678737.73 102.50 -598023.28 5683795.02 97.50 -598023.32 5677991.50 105.00 -598023.36 5682868.94 98.75 -598023.45 5682210.05 96.25 -598023.46 5678444.87 107.50 -598023.48 5677776.08 102.50 -598023.60 5682129.87 96.25 -598024.12 5682488.15 98.75 -598024.38 5678301.80 108.75 -598024.39 5680806.08 100.00 -598024.40 5681427.32 97.50 -598024.62 5683016.71 98.70 -598024.70 5681457.75 97.50 -598024.84 5681198.03 98.75 -598024.88 5679123.35 97.50 -598025.24 5678557.52 105.00 -598025.50 5680611.54 98.75 -598025.61 5680796.19 100.00 -598025.64 5683602.54 97.50 -598025.66 5683118.28 98.75 -598025.70 5679169.65 97.50 -598025.80 5678510.28 106.25 -598026.08 5678658.50 103.75 -598026.30 5683760.19 97.50 -598026.30 5682472.21 97.50 -598026.82 5681172.95 98.75 -598027.91 5682685.24 98.75 -598028.03 5678772.43 101.25 -598028.15 5678292.59 108.75 -598028.24 5678945.32 98.75 -598028.38 5682497.17 98.75 -598028.86 5680814.83 100.00 -598028.93 5678548.29 105.00 -598029.02 5681889.64 97.50 -598029.24 5677955.16 103.75 -598029.61 5681638.86 96.25 -598029.61 5681638.86 97.50 -598029.72 5678346.07 107.50 -598029.73 5682217.72 96.25 -598029.99 5678022.86 106.25 -598030.10 5678649.40 103.75 -598030.18 5682122.71 96.25 -598030.56 5681624.21 97.50 -598030.57 5682481.24 97.50 -598030.75 5680228.52 98.75 -598030.82 5678802.75 100.00 -598030.97 5683038.27 98.75 -598031.00 5681441.50 96.20 -598031.02 5683580.31 97.50 -598031.10 5682875.20 98.75 -598031.13 5680971.74 98.75 -598031.19 5683789.09 97.50 -598031.28 5678283.15 108.75 -598031.33 5682997.95 98.75 -598031.39 5678502.13 106.25 -598031.58 5680788.46 100.00 -598031.62 5683610.50 97.50 -598031.65 5681373.77 98.75 -598032.05 5682506.43 98.75 -598032.07 5678091.91 108.75 -598032.30 5680905.12 98.75 -598032.36 5678071.53 107.50 -598032.63 5678735.50 102.50 -598032.63 5679117.12 97.50 -598032.64 5677772.07 102.50 -598032.67 5679536.96 98.75 -598032.72 5678355.00 107.50 -598032.73 5678539.10 105.00 -598033.04 5678442.08 107.50 -598033.21 5677990.75 105.00 -598033.32 5681165.48 98.75 -598033.59 5681193.20 98.75 -598033.91 5681430.05 97.50 -598033.92 5678640.21 103.75 -598033.93 5678273.58 108.75 -598034.25 5680606.70 98.75 -598034.40 5681459.41 97.50 -598034.77 5681632.44 96.25 -598034.83 5682490.28 97.50 -598034.91 5679173.21 97.50 -598035.02 5683114.85 98.75 -598035.14 5678340.99 107.50 -598035.35 5682515.84 98.75 -598035.79 5683763.11 97.50 -598035.97 5678263.85 108.75 -598036.09 5681616.26 97.50 -598036.25 5680821.42 100.00 -598036.26 5682883.77 98.75 -598036.38 5678939.74 98.75 -598036.48 5681646.64 96.00 -598036.92 5681653.47 96.00 -598036.93 5680801.75 100.40 -598036.98 5678493.98 106.25 -598036.99 5682224.46 96.25 -598037.07 5683618.80 97.50 -598037.40 5678630.89 103.75 -598037.40 5680899.85 98.75 -598037.50 5682682.51 98.75 -598037.85 5678770.57 101.25 -598038.17 5682118.07 96.25 -598038.24 5678254.20 108.75 -598038.26 5678530.86 105.00 -598038.50 5684052.61 95.00 -598038.65 5682525.24 98.75 -598038.66 5681890.16 97.50 -598038.90 5677957.56 103.75 -598039.21 5682499.26 97.50 -598039.70 5683585.17 97.50 -598039.87 5678022.89 106.25 -598040.10 5680224.99 98.75 -598040.17 5683647.43 97.50 -598040.22 5683637.65 97.50 -598040.29 5678361.47 107.50 -598040.30 5680784.08 100.00 -598040.38 5681443.17 96.20 -598040.48 5681158.52 98.75 -598040.55 5681607.51 97.50 -598040.56 5678800.55 100.00 -598040.61 5683627.99 97.50 -598040.62 5683040.13 98.75 -598040.64 5678096.95 108.75 -598040.77 5683788.79 97.50 -598040.88 5678621.57 103.75 -598040.94 5679111.94 97.50 -598041.10 5680971.74 98.75 -598041.16 5681370.95 98.75 -598041.22 5682998.31 98.75 -598041.41 5682892.33 98.75 -598041.42 5677767.42 102.50 -598041.91 5681628.69 96.25 -598041.98 5678073.61 107.50 -598042.00 5680948.64 98.50 -598042.23 5679538.40 98.75 -598042.33 5678733.27 102.50 -598042.43 5683782.32 96.25 -598042.46 5681188.61 98.75 -598042.58 5678485.82 106.25 -598042.68 5678439.58 107.50 -598042.77 5678611.94 103.75 -598042.99 5678601.99 103.75 -598043.11 5677989.96 105.00 -598043.16 5681598.02 97.50 -598043.22 5678592.04 103.75 -598043.28 5678245.63 108.75 -598043.30 5680897.30 98.75 -598043.41 5682533.96 98.75 -598043.52 5678582.10 103.75 -598043.54 5681432.40 97.50 -598043.63 5680603.55 98.75 -598043.74 5683656.48 97.50 -598043.83 5684060.90 95.00 -598043.88 5682508.09 97.50 -598043.97 5680827.71 100.00 -598044.01 5678522.75 105.00 -598044.09 5678933.39 98.75 -598044.18 5678572.17 103.75 -598044.26 5681460.19 97.50 -598044.59 5682230.46 96.25 -598044.59 5679175.52 97.50 -598044.65 5683112.17 98.75 -598044.84 5678562.24 103.75 -598044.95 5678342.36 107.50 -598045.12 5682222.35 95.00 -598045.32 5681657.38 96.00 -598045.65 5683762.52 97.50 -598045.79 5683774.59 96.25 -598045.89 5681647.81 96.00 -598045.90 5682122.10 96.25 -598046.24 5682214.00 95.00 -598046.56 5682900.90 98.75 -598046.71 5678552.57 103.75 -598047.02 5682679.54 98.75 -598047.45 5683591.17 97.50 -598047.66 5678768.66 101.25 -598047.73 5681589.69 97.50 -598048.17 5678477.67 106.25 -598048.31 5681890.50 97.50 -598048.45 5681152.86 98.75 -598048.54 5682516.93 97.50 -598048.64 5682542.45 98.75 -598048.77 5678366.66 107.50 -598048.88 5677957.56 103.75 -598048.90 5678237.44 108.75 -598049.06 5683664.88 97.50 -598049.21 5678102.00 108.75 -598049.32 5680221.13 98.75 -598049.37 5677761.36 102.50 -598049.58 5678514.52 105.00 -598049.59 5678024.84 106.25 -598049.67 5681627.67 96.25 -598049.69 5680781.51 100.00 -598049.78 5683786.51 96.25 -598049.82 5681444.28 96.20 -598049.90 5682140.14 96.25 -598050.13 5678543.22 103.75 -598050.30 5678798.35 100.00 -598050.36 5683791.52 97.50 -598050.50 5679109.19 97.50 -598050.51 5683039.81 98.75 -598050.66 5681368.12 98.75 -598050.92 5682130.37 96.25 -598050.95 5680972.99 98.75 -598051.08 5682999.06 98.75 -598051.21 5680834.55 100.00 -598051.37 5679542.45 98.75 -598051.38 5681184.11 98.75 -598051.54 5678076.13 107.50 -598051.54 5683780.26 96.00 -598051.80 5678927.04 98.75 -598051.90 5682228.60 95.00 -598051.96 5678730.73 102.50 -598052.08 5682149.09 96.25 -598052.45 5684065.95 95.00 -598052.52 5682908.90 98.75 -598052.59 5682220.64 94.90 -598052.64 5678438.86 107.50 -598052.84 5677991.24 105.00 -598052.90 5680899.87 98.75 -598053.12 5682525.81 97.50 -598053.32 5680603.40 98.75 -598053.45 5681432.04 97.50 -598053.54 5678533.87 103.75 -598053.76 5678469.52 106.25 -598053.82 5682550.97 98.75 -598053.95 5683598.70 97.50 -598054.18 5681459.93 97.50 -598054.27 5683109.50 98.75 -598054.41 5679177.07 97.50 -598054.49 5682231.04 96.25 -598054.54 5681633.06 96.25 -598054.56 5678505.91 105.00 -598054.57 5678344.95 107.50 -598054.58 5681659.66 96.00 -598054.77 5681582.82 97.50 -598054.91 5683758.87 97.50 -598055.03 5683773.62 96.25 -598055.03 5678229.61 108.75 -598055.04 5681650.49 96.00 -598055.64 5683628.04 97.50 -598055.75 5682215.03 95.00 -598055.81 5683672.17 97.50 -598055.88 5681641.15 96.25 -598055.88 5681641.15 97.50 -598055.96 5677753.85 102.50 -598056.31 5683608.34 97.50 -598056.48 5682676.39 98.75 -598056.64 5682535.10 97.50 -598056.68 5683618.14 97.50 -598056.75 5683637.89 97.50 -598057.47 5678766.74 101.25 -598057.54 5681109.52 100.00 -598057.58 5678524.83 103.75 -598057.60 5678107.33 108.75 -598057.85 5682157.03 96.25 -598057.91 5681149.64 98.75 -598057.91 5681890.00 97.50 -598057.92 5678370.65 107.50 -598058.19 5683647.73 97.50 -598058.34 5680841.51 100.00 -598058.41 5680216.97 98.75 -598058.61 5678431.34 107.50 -598058.67 5682916.78 98.75 -598058.75 5678028.43 106.25 -598058.75 5677958.40 103.75 -598058.94 5682559.53 98.75 -598059.04 5683785.95 96.25 -598059.32 5681444.90 96.20 -598059.33 5678461.35 106.25 -598059.39 5680783.79 100.00 -598059.47 5682544.62 97.50 -598059.52 5678920.68 98.75 -598059.70 5678220.97 108.75 -598059.73 5678497.44 105.00 -598059.93 5679106.08 97.50 -598060.03 5681574.51 97.50 -598060.04 5678796.15 100.00 -598060.24 5681365.65 98.75 -598060.25 5683792.91 97.50 -598060.32 5681179.63 98.75 -598060.39 5679546.71 98.75 -598060.40 5683039.48 98.75 -598060.61 5681100.64 100.00 -598060.72 5678079.76 107.50 -598060.75 5680974.84 98.75 -598060.94 5682999.91 98.75 -598061.00 5678300.27 107.50 -598061.17 5682175.55 96.25 -598061.17 5682165.73 96.25 -598061.28 5682227.41 95.00 -598061.56 5678728.09 102.50 -598061.75 5683657.02 97.50 -598062.00 5684067.01 95.00 -598062.23 5680903.37 98.75 -598062.39 5683679.62 97.50 -598062.47 5677746.26 102.50 -598062.48 5677993.58 105.00 -598062.66 5683778.10 96.25 -598062.70 5680606.79 98.75 -598062.97 5678516.47 103.75 -598063.01 5681116.00 100.00 -598063.13 5683753.44 97.50 -598063.14 5678211.64 108.75 -598063.25 5678290.65 107.50 -598063.36 5681431.68 97.50 -598063.51 5682184.80 96.25 -598063.61 5682220.41 95.00 -598063.74 5681462.20 97.50 -598063.82 5678309.53 107.50 -598063.85 5681661.85 96.00 -598063.93 5683106.92 98.75 -598064.07 5678162.24 108.75 -598064.07 5678172.18 108.75 -598064.09 5682568.06 98.75 -598064.09 5678422.99 107.50 -598064.16 5681565.63 97.50 -598064.27 5679178.34 97.50 -598064.36 5681652.45 96.00 -598064.38 5682231.61 96.25 -598064.50 5678152.31 108.75 -598064.55 5678344.65 107.50 -598064.58 5678114.11 108.75 -598064.74 5678182.10 108.75 -598064.91 5678453.19 106.25 -598064.94 5678201.93 108.75 -598065.04 5682924.48 98.75 -598065.30 5682552.73 97.50 -598065.32 5678142.39 108.75 -598065.44 5678192.02 108.75 -598065.69 5681641.57 97.50 -598065.69 5678281.07 107.50 -598065.94 5682673.23 98.75 -598066.08 5680847.70 100.00 -598066.12 5678489.82 105.00 -598066.86 5681093.09 100.00 -598066.99 5678374.82 107.50 -598067.10 5678914.18 98.75 -598067.28 5678764.83 101.25 -598067.37 5681146.42 98.75 -598067.40 5680212.62 98.75 -598067.42 5683664.82 97.50 -598067.43 5681888.37 97.50 -598067.51 5678033.04 106.25 -598067.51 5681556.37 97.50 -598067.82 5678123.18 108.75 -598068.01 5682193.52 96.25 -598068.12 5678133.13 108.75 -598068.35 5677961.12 103.75 -598068.37 5678508.11 103.75 -598068.57 5683687.42 97.50 -598068.78 5679552.14 98.75 -598068.83 5681445.47 96.20 -598068.84 5677738.57 102.50 -598069.05 5679102.09 97.50 -598069.06 5678271.87 107.50 -598069.14 5684060.16 95.00 -598069.22 5680785.46 100.00 -598069.29 5681175.23 98.75 -598069.32 5682576.55 98.75 -598069.78 5678793.95 100.00 -598069.84 5678083.57 107.50 -598069.92 5678336.73 107.50 -598070.00 5683037.31 98.75 -598070.06 5681364.25 98.75 -598070.12 5678317.24 107.50 -598070.33 5683746.62 97.50 -598070.40 5680977.34 98.75 -598070.46 5678415.34 107.50 -598070.49 5678445.03 106.25 -598070.64 5683001.62 98.75 -598070.74 5678724.59 102.50 -598071.14 5682560.84 97.50 -598071.15 5680907.77 98.75 -598071.16 5681547.29 97.50 -598071.81 5677996.94 105.00 -598071.84 5680610.83 98.75 -598072.06 5682931.49 98.75 -598072.10 5678326.98 107.50 -598072.36 5684050.70 95.00 -598072.54 5681115.60 100.00 -598072.70 5678482.38 105.00 -598073.02 5682402.63 96.25 -598073.05 5681664.31 96.00 -598073.16 5681465.28 97.50 -598073.28 5681431.60 97.50 -598073.31 5682228.20 96.25 -598073.50 5677729.73 102.50 -598073.59 5683104.38 98.75 -598073.77 5681653.91 96.00 -598074.09 5678500.00 103.75 -598074.17 5684040.93 95.00 -598074.18 5679179.16 97.50 -598074.24 5678380.95 107.50 -598074.51 5682392.76 96.25 -598074.54 5683695.38 97.50 -598074.55 5682585.04 98.75 -598074.60 5682412.09 96.25 -598074.65 5678907.63 98.75 -598074.93 5681087.50 100.00 -598074.95 5683671.32 97.50 -598075.05 5684030.98 95.00 -598075.10 5680851.42 100.00 -598075.29 5678264.20 107.50 -598075.47 5681640.65 97.50 -598075.69 5678038.63 106.25 -598075.75 5682672.23 98.75 -598075.76 5682199.42 96.25 -598076.06 5680207.62 98.75 -598076.07 5678436.87 106.25 -598076.24 5684021.22 95.00 -598076.76 5681143.04 98.75 -598076.96 5681886.76 97.50 -598076.97 5682568.95 97.50 -598077.02 5682040.16 96.25 -598077.08 5683739.31 97.50 -598077.13 5678763.16 101.25 -598077.15 5681176.24 98.75 -598077.16 5679557.57 98.75 -598077.28 5678408.05 107.50 -598077.46 5681539.73 97.50 -598077.66 5678306.84 106.25 -598077.66 5682383.33 96.25 -598077.95 5677963.83 103.75 -598078.16 5679098.11 97.50 -598078.17 5677720.89 102.50 -598078.18 5681446.58 96.20 -598078.22 5678353.00 106.25 -598078.45 5678362.88 106.25 -598078.63 5682421.23 96.25 -598078.76 5678718.68 102.50 -598078.82 5680617.46 98.75 -598078.90 5682030.68 96.25 -598078.95 5678087.38 107.50 -598078.99 5678389.73 107.50 -598079.04 5680787.12 100.00 -598079.43 5683034.41 98.75 -598079.53 5678791.77 100.00 -598079.87 5681362.84 98.75 -598079.89 5680912.57 98.75 -598079.89 5678475.51 105.00 -598079.91 5681109.12 100.00 -598079.95 5682593.42 98.75 -598080.05 5680979.83 98.75 -598080.10 5683004.47 98.75 -598080.31 5682049.53 96.25 -598080.44 5678399.60 107.50 -598080.55 5682936.25 98.75 -598080.74 5678297.53 106.25 -598080.80 5678492.65 103.75 -598080.84 5677711.26 102.50 -598081.09 5678000.46 105.00 -598081.17 5682222.33 96.25 -598081.33 5682374.05 96.25 -598081.52 5683702.38 97.50 -598081.52 5681080.67 100.00 -598081.63 5678344.02 106.25 -598081.65 5678428.71 106.25 -598081.75 5684012.88 95.00 -598081.77 5678256.74 107.50 -598081.79 5683730.70 97.50 -598082.15 5678315.65 106.25 -598082.30 5678901.24 98.75 -598082.40 5681665.78 96.00 -598082.62 5681467.52 97.50 -598082.81 5682577.07 97.50 -598082.81 5678371.72 106.25 -598083.01 5681432.92 97.50 -598083.02 5680626.43 98.75 -598083.07 5683101.30 98.75 -598083.18 5682430.07 96.25 -598083.24 5681654.89 96.00 -598083.55 5682022.19 96.25 -598083.88 5678044.21 106.25 -598084.02 5678288.20 106.25 -598084.10 5678334.69 106.25 -598084.12 5679179.39 97.50 -598084.13 5683721.03 97.50 -598084.45 5683711.21 97.50 -598084.72 5680202.63 98.75 -598084.80 5681182.54 98.75 -598084.81 5678324.83 106.25 -598084.92 5677702.24 102.50 -598084.95 5680852.92 100.00 -598085.01 5682200.84 96.25 -598085.19 5681639.59 97.50 -598085.28 5681534.28 97.50 -598085.47 5681138.15 98.75 -598085.63 5682601.61 98.75 -598085.67 5679562.80 98.75 -598085.68 5681071.78 100.00 -598085.72 5682672.18 98.75 -598086.27 5680635.87 98.75 -598086.36 5677969.06 103.75 -598086.42 5682365.47 96.25 -598086.52 5681885.38 97.50 -598086.53 5680919.09 98.75 -598086.55 5681451.11 96.20 -598086.78 5678712.77 102.50 -598086.99 5678761.54 101.25 -598087.03 5678092.94 107.50 -598087.03 5683028.08 98.75 -598087.08 5678468.64 105.00 -598087.28 5679094.13 97.50 -598087.29 5681102.65 100.00 -598087.29 5678420.59 106.25 -598087.45 5682054.30 96.25 -598087.51 5678485.30 103.75 -598087.59 5683010.94 98.75 -598087.73 5684004.88 95.00 -598087.74 5678380.26 106.25 -598087.87 5682215.02 96.25 -598088.30 5682297.79 96.25 -598088.47 5678249.47 107.50 -598088.64 5682585.18 97.50 -598088.81 5680789.06 100.00 -598088.81 5682307.64 96.25 -598088.94 5678279.60 106.25 -598089.02 5682438.16 96.25 -598089.35 5678789.95 100.00 -598089.41 5680928.63 98.75 -598089.47 5681062.73 100.00 -598089.50 5680982.97 98.75 -598089.70 5682287.91 96.25 -598089.77 5680645.24 98.75 -598089.78 5681362.67 98.75 -598090.11 5677693.69 102.50 -598090.25 5678004.28 105.00 -598090.28 5683020.17 98.75 -598090.31 5682014.91 96.25 -598090.38 5682356.38 96.25 -598090.50 5682937.13 98.75 -598090.55 5682317.48 96.25 -598091.16 5678896.63 98.75 -598091.32 5682609.80 98.75 -598091.57 5680938.36 98.75 -598091.92 5681666.09 96.00 -598092.25 5683097.35 98.75 -598092.27 5681436.08 97.50 -598092.28 5682327.31 96.25 -598092.42 5681466.02 97.50 -598092.63 5681656.14 96.00 -598092.63 5678048.72 106.25 -598092.92 5682278.47 96.25 -598093.07 5681188.16 98.75 -598093.13 5681053.63 100.00 -598093.16 5678412.64 106.25 -598093.26 5682346.82 96.25 -598093.27 5680654.60 98.75 -598093.38 5680197.63 98.75 -598093.44 5678388.33 106.25 -598093.77 5679181.04 97.50 -598093.91 5683997.02 95.00 -598094.02 5682337.14 96.25 -598094.18 5681133.26 98.75 -598094.27 5678461.77 105.00 -598094.34 5678478.08 103.75 -598094.34 5679567.77 98.75 -598094.38 5681095.87 100.00 -598094.45 5682593.31 97.50 -598094.47 5681530.76 97.50 -598094.51 5677974.81 103.75 -598094.56 5681641.88 97.50 -598094.70 5680852.30 100.00 -598094.72 5678099.15 107.50 -598094.79 5678706.87 102.50 -598094.81 5682200.27 96.25 -598094.99 5678242.06 107.50 -598095.07 5679088.23 97.50 -598095.16 5682050.49 96.25 -598095.30 5677685.14 102.50 -598095.42 5682445.74 96.25 -598095.51 5680947.08 98.75 -598095.55 5682672.87 98.75 -598095.68 5682209.13 96.25 -598096.13 5681884.83 97.50 -598096.23 5682269.05 96.25 -598096.78 5678273.75 106.25 -598096.86 5678759.93 101.25 -598096.89 5681044.57 100.00 -598097.01 5682617.99 98.75 -598097.07 5682007.63 96.25 -598097.09 5678551.54 102.50 -598097.81 5678561.47 102.50 -598098.14 5678108.39 107.50 -598098.39 5678697.63 102.50 -598098.53 5678571.40 102.50 -598098.53 5680791.23 100.00 -598098.84 5681662.01 96.00 -598098.90 5678396.57 106.25 -598098.91 5680986.23 98.75 -598098.95 5678541.90 102.50 -598099.02 5678404.68 106.25 -598099.17 5678788.12 100.00 -598099.25 5683988.65 95.00 -598099.40 5678008.11 105.00 -598099.45 5681442.92 97.50 -598099.70 5681362.52 98.75 -598099.72 5682601.76 97.50 -598100.03 5678892.02 98.75 -598100.46 5682938.02 98.75 -598100.63 5681461.23 97.50 -598100.69 5677676.74 102.50 -598100.71 5678157.13 107.50 -598100.85 5678234.11 107.50 -598100.86 5678581.04 102.50 -598100.99 5678166.99 107.50 -598101.00 5678147.25 107.50 -598101.16 5681194.03 98.75 -598101.32 5682042.70 96.25 -598101.37 5681035.84 100.00 -598101.42 5680191.73 98.75 -598101.43 5683093.40 98.75 -598101.46 5678117.70 107.50 -598101.46 5678352.02 105.00 -598101.46 5678454.90 105.00 -598101.47 5681089.09 100.00 -598101.72 5683950.16 95.00 -598101.72 5678471.40 103.75 -598101.74 5681712.28 97.50 -598101.84 5678688.29 102.50 -598101.90 5678532.39 102.50 -598101.91 5678127.55 107.50 -598101.92 5678052.17 106.25 -598101.97 5679081.06 97.50 -598102.05 5678137.42 107.50 -598102.08 5680658.98 98.75 -598102.43 5678176.75 107.50 -598102.58 5683940.33 95.00 -598102.66 5677980.57 103.75 -598102.70 5678678.39 102.50 -598102.70 5681647.33 97.50 -598102.74 5681717.33 97.50 -598102.79 5682626.11 98.75 -598102.90 5681128.36 98.75 -598102.95 5679184.88 97.50 -598102.96 5682452.28 96.25 -598103.03 5679572.68 98.75 -598103.10 5681620.21 97.50 -598103.15 5683979.49 95.00 -598103.21 5680953.06 98.75 -598103.26 5681452.03 97.50 -598103.31 5681629.78 97.50 -598103.46 5678668.46 102.50 -598103.51 5683959.95 95.00 -598103.57 5678342.30 105.00 -598103.60 5678590.62 102.50 -598103.81 5678361.47 105.00 -598103.86 5682263.14 96.25 -598103.92 5681529.70 97.50 -598104.10 5681610.42 97.50 -598104.14 5682197.21 96.25 -598104.28 5682610.66 97.50 -598104.38 5680849.93 100.00 -598104.40 5678186.44 107.50 -598104.57 5682001.30 96.25 -598104.72 5682205.57 96.25 -598104.72 5681702.98 97.50 -598104.78 5682676.65 98.75 -598104.85 5678522.88 102.50 -598105.23 5683969.71 95.00 -598105.37 5678196.26 107.50 -598105.48 5678225.38 107.50 -598105.61 5678658.77 102.50 -598105.79 5681885.05 97.50 -598105.81 5678332.62 105.00 -598105.86 5681027.12 100.00 -598106.04 5678270.20 106.25 -598106.13 5678206.12 107.50 -598106.34 5678600.19 102.50 -598106.49 5681600.87 97.50 -598106.67 5678758.06 101.25 -598106.89 5678215.97 107.50 -598107.05 5677669.02 102.50 -598107.15 5683931.44 95.00 -598107.80 5681655.11 97.50 -598107.84 5682306.89 96.25 -598107.93 5681201.06 98.75 -598107.96 5682035.37 96.25 -598108.05 5678370.31 105.00 -598108.07 5682422.51 96.00 -598108.18 5678649.15 102.50 -598108.19 5681693.78 97.50 -598108.23 5681638.27 97.50 -598108.27 5680793.36 100.00 -598108.27 5678322.99 105.00 -598108.29 5681082.08 100.00 -598108.42 5678609.93 102.50 -598108.59 5682634.22 98.75 -598108.65 5678448.03 105.00 -598108.68 5680988.18 98.75 -598108.77 5683892.57 95.00 -598108.86 5681591.32 97.50 -598108.87 5679073.90 97.50 -598108.89 5678887.40 98.75 -598108.90 5678010.72 105.00 -598108.90 5682619.50 97.50 -598108.96 5678786.16 100.00 -598109.00 5678313.10 105.00 -598109.10 5678464.73 103.75 -598109.11 5682382.02 96.25 -598109.19 5680185.44 98.75 -598109.61 5681362.30 98.75 -598109.70 5681710.37 97.50 -598109.73 5681664.76 97.50 -598109.78 5678639.34 102.50 -598110.02 5678514.55 102.50 -598110.04 5683902.41 95.00 -598110.19 5678303.23 105.00 -598110.33 5682297.22 96.25 -598110.42 5682938.75 98.75 -598110.51 5678619.66 102.50 -598110.52 5681018.48 100.00 -598110.56 5682316.45 96.25 -598110.61 5682372.62 96.25 -598110.61 5683089.45 98.75 -598110.62 5681684.27 97.50 -598110.76 5683922.23 95.00 -598110.78 5683882.78 95.00 -598110.87 5682458.35 96.25 -598110.89 5681581.69 97.50 -598111.08 5678629.46 102.50 -598111.18 5681122.80 98.75 -598111.20 5678055.64 106.25 -598111.23 5681674.44 97.50 -598111.24 5682391.77 96.25 -598111.41 5680662.34 98.75 -598111.53 5683912.27 95.00 -598111.65 5677984.59 103.75 -598111.69 5681535.09 97.50 -598112.28 5679576.48 98.75 -598112.49 5679187.68 97.50 -598112.64 5681209.87 98.75 -598112.79 5683872.99 95.00 -598112.83 5682287.56 96.25 -598112.91 5681572.05 97.50 -598112.92 5680955.32 98.75 -598113.24 5681996.45 96.25 -598113.40 5677661.30 102.50 -598113.47 5682194.14 96.25 -598113.59 5682265.38 96.25 -598113.60 5682325.96 96.25 -598113.65 5680846.29 100.00 -598113.67 5681073.87 100.00 -598114.01 5682680.42 98.75 -598114.47 5678377.90 105.00 -598114.62 5682205.02 96.25 -598114.64 5682642.10 98.75 -598114.80 5682363.56 96.25 -598115.07 5681562.45 97.50 -598115.12 5678440.57 105.00 -598115.23 5681009.87 100.00 -598115.38 5678266.89 106.25 -598115.40 5682028.79 96.25 -598115.45 5681885.26 97.50 -598115.77 5679066.73 97.50 -598116.06 5681219.16 98.75 -598116.07 5681702.93 97.50 -598116.08 5682626.45 97.50 -598116.15 5681644.11 97.50 -598116.23 5678506.76 102.50 -598116.27 5678457.86 103.75 -598116.44 5681543.46 97.50 -598116.46 5683863.73 95.00 -598116.49 5678756.17 101.25 -598116.97 5680179.16 98.75 -598117.29 5681552.86 97.50 -598117.32 5682335.22 96.25 -598117.67 5682399.14 96.25 -598117.75 5678882.79 98.75 -598117.79 5678296.85 105.00 -598118.02 5680795.39 100.00 -598118.20 5681228.92 98.75 -598118.54 5680989.14 98.75 -598118.72 5678784.03 100.00 -598118.73 5678011.98 105.00 -598119.06 5681065.67 100.00 -598119.24 5682279.90 96.25 -598119.26 5682463.76 96.25 -598119.27 5682354.65 96.25 -598119.28 5681116.94 98.75 -598119.52 5681361.93 98.75 -598119.76 5681037.24 100.50 -598119.82 5682344.68 96.25 -598120.14 5683086.48 98.75 -598120.32 5678432.10 105.00 -598120.40 5682939.38 98.75 -598120.45 5678059.21 106.25 -598120.89 5678385.49 105.00 -598120.93 5681238.47 98.75 -598120.97 5677654.79 102.50 -598121.24 5677987.37 103.75 -598121.32 5680663.59 98.75 -598121.53 5681694.74 97.50 -598121.63 5681991.29 96.25 -598121.74 5682270.87 96.25 -598121.75 5679579.47 98.75 -598121.89 5678498.57 102.50 -598122.06 5679190.38 97.50 -598122.29 5678449.94 103.75 -598122.36 5682648.41 98.75 -598122.37 5683856.40 95.00 -598122.74 5680956.70 98.75 -598122.76 5682190.97 96.25 -598122.81 5682022.17 96.25 -598122.95 5680842.72 100.00 -598123.31 5682633.35 97.50 -598123.34 5682683.92 98.75 -598123.51 5681004.83 100.00 -598123.72 5679060.98 97.50 -598123.86 5681650.17 97.50 -598124.20 5678422.99 105.00 -598124.30 5680172.38 98.75 -598124.39 5678262.93 106.25 -598124.49 5682204.79 96.25 -598124.80 5681057.72 100.00 -598124.94 5681883.72 97.50 -598125.37 5678394.12 105.00 -598125.66 5678290.84 105.00 -598126.24 5681246.90 98.75 -598126.30 5678754.29 101.25 -598126.40 5681110.15 98.75 -598126.55 5681686.28 97.50 -598127.25 5682401.90 96.25 -598127.33 5678879.96 98.75 -598127.38 5681983.19 96.25 -598127.43 5678490.30 102.50 -598127.45 5678403.80 105.00 -598127.56 5678413.63 105.00 -598127.88 5680796.85 100.00 -598128.31 5678442.02 103.75 -598128.46 5678781.82 100.00 -598128.51 5680988.87 98.75 -598128.55 5682467.34 96.25 -598128.65 5678011.98 105.00 -598128.68 5677648.42 102.50 -598129.42 5681361.56 98.75 -598129.65 5678062.90 106.25 -598129.73 5682015.05 96.25 -598129.76 5683083.75 98.75 -598129.79 5681677.02 97.50 -598130.08 5682654.72 98.75 -598130.10 5681657.79 97.50 -598130.35 5681049.64 100.00 -598130.37 5682940.04 98.75 -598130.80 5682639.95 97.50 -598131.04 5683851.50 95.00 -598131.17 5677988.08 103.75 -598131.24 5680663.61 98.75 -598131.43 5680165.38 98.75 -598131.47 5681667.50 97.50 -598131.60 5679581.14 98.75 -598131.88 5679188.73 97.50 -598131.95 5681101.84 98.75 -598132.05 5682187.79 96.25 -598132.09 5678256.78 106.25 -598132.16 5681000.22 100.00 -598132.35 5681254.81 98.75 -598132.56 5681974.80 96.25 -598132.59 5680840.20 100.00 -598132.59 5679056.47 97.50 -598132.71 5680956.93 98.75 -598132.72 5682687.29 98.75 -598132.98 5678482.03 102.50 -598133.57 5678433.71 103.75 -598133.99 5678748.18 101.25 -598134.16 5682206.96 96.25 -598134.17 5678285.74 105.00 -598134.77 5681040.88 100.00 -598135.42 5682129.03 96.25 -598135.77 5681965.40 96.25 -598136.22 5681935.91 96.25 -598136.31 5678424.14 103.75 -598136.39 5677642.05 102.50 -598136.70 5681945.83 96.25 -598136.72 5682008.00 96.25 -598136.89 5681093.17 98.75 -598136.92 5678877.14 98.75 -598137.04 5682403.87 96.25 -598137.08 5678171.56 106.25 -598137.18 5681955.75 96.25 -598137.24 5678181.45 106.25 -598137.30 5682119.28 96.25 -598137.34 5680799.77 100.00 -598137.34 5678161.65 106.25 -598137.61 5678151.75 106.25 -598137.93 5678374.98 103.75 -598137.95 5682660.83 98.75 -598138.00 5681263.02 98.75 -598138.04 5682470.10 96.25 -598138.18 5678779.53 100.00 -598138.30 5682646.56 97.50 -598138.42 5680987.87 98.75 -598138.42 5678384.90 103.75 -598138.52 5678473.76 102.50 -598138.55 5678011.73 105.00 -598138.57 5680158.37 98.75 -598138.59 5678191.27 106.25 -598138.76 5678066.77 106.25 -598138.83 5678249.51 106.25 -598139.01 5678394.84 103.75 -598139.05 5678414.58 103.75 -598139.33 5681361.16 98.75 -598139.35 5678142.02 106.25 -598139.37 5683081.02 98.75 -598139.60 5678404.77 103.75 -598139.83 5683847.46 95.00 -598139.86 5681272.57 98.75 -598139.93 5678201.09 106.25 -598140.25 5682941.55 98.75 -598140.57 5678365.38 103.75 -598140.73 5681033.16 100.00 -598141.05 5681282.48 98.75 -598141.14 5677988.57 103.75 -598141.17 5681877.05 97.50 -598141.17 5680662.50 98.75 -598141.19 5678132.29 106.25 -598141.25 5680835.97 100.00 -598141.27 5680996.56 100.00 -598141.32 5681084.21 98.75 -598141.36 5678741.43 101.25 -598141.45 5679582.81 98.75 -598141.46 5679051.97 97.50 -598141.46 5682185.19 96.25 -598141.56 5678210.86 106.25 -598141.69 5679187.08 97.50 -598141.79 5682441.63 96.25 -598141.91 5681214.34 97.50 -598141.91 5680960.10 98.75 -598141.98 5678122.41 106.25 -598142.01 5678240.22 106.25 -598142.30 5682690.06 98.75 -598142.40 5681312.32 98.75 -598142.52 5681292.36 98.75 -598142.63 5681302.33 98.75 -598142.80 5678280.87 105.00 -598142.95 5677634.55 102.50 -598143.02 5678112.55 106.25 -598143.20 5678355.79 103.75 -598143.22 5681204.77 97.50 -598143.35 5681224.20 97.50 -598143.35 5678230.45 106.25 -598143.40 5678220.60 106.25 -598143.59 5678465.20 102.50 -598143.73 5682209.45 96.25 -598144.03 5682450.14 96.25 -598144.69 5682002.73 96.25 -598144.71 5682112.99 96.25 -598144.78 5681321.48 98.75 -598144.84 5678073.99 106.25 -598145.24 5678102.93 106.25 -598145.41 5681075.10 98.75 -598145.60 5680151.27 98.75 -598145.76 5682653.21 97.50 -598145.96 5682666.78 98.75 -598146.40 5680803.88 100.00 -598146.41 5682406.84 96.25 -598146.50 5678874.32 98.75 -598147.19 5681025.77 100.00 -598147.21 5681233.19 97.50 -598147.26 5678093.23 106.25 -598147.29 5681195.77 97.50 -598147.44 5678083.49 106.25 -598147.47 5678346.93 103.75 -598147.48 5678550.61 101.25 -598147.56 5680984.85 98.75 -598147.69 5682433.64 96.25 -598147.81 5678560.60 101.25 -598147.86 5678540.79 101.25 -598147.90 5678777.24 100.00 -598148.00 5682470.31 96.25 -598148.05 5678734.02 101.25 -598148.15 5678570.59 101.25 -598148.29 5680828.92 100.00 -598148.32 5678009.99 105.00 -598148.50 5678456.53 102.50 -598149.20 5682945.93 98.75 -598149.21 5681360.32 98.75 -598149.23 5677626.77 102.50 -598149.25 5681065.87 98.75 -598149.30 5683080.31 98.75 -598149.80 5683847.01 95.00 -598150.33 5679047.46 97.50 -598150.37 5680992.90 100.00 -598150.44 5682009.84 96.25 -598150.66 5678580.16 101.25 -598150.78 5681329.47 98.75 -598150.91 5682457.21 96.25 -598151.02 5677987.42 103.75 -598151.10 5681876.07 97.50 -598151.11 5680661.39 98.75 -598151.25 5682184.41 96.25 -598151.39 5679582.09 98.75 -598151.46 5680962.11 98.75 -598151.50 5679185.40 97.50 -598151.89 5682692.79 98.75 -598151.90 5682106.51 96.25 -598152.04 5678277.25 105.00 -598152.18 5682019.62 96.25 -598152.38 5680811.31 100.00 -598152.58 5680144.11 98.75 -598152.63 5678532.01 101.25 -598152.81 5682213.43 96.25 -598152.91 5678338.59 103.75 -598153.09 5681056.65 98.75 -598153.09 5680820.51 100.00 -598153.11 5682659.98 97.50 -598153.41 5678447.87 102.50 -598153.76 5681188.18 97.50 -598153.78 5681240.26 97.50 -598153.96 5682672.72 98.75 -598154.00 5678589.59 101.25 -598154.59 5678726.46 101.25 -598154.69 5682412.42 96.25 -598155.10 5682088.07 96.25 -598155.34 5677618.85 102.50 -598155.45 5681020.61 100.00 -598155.65 5682427.62 96.25 -598155.91 5680979.49 98.75 -598156.03 5682028.55 96.25 -598156.09 5678871.50 98.75 -598156.37 5682097.92 96.25 -598156.41 5678678.65 101.25 -598156.46 5678668.65 101.25 -598156.51 5678658.66 101.25 -598156.57 5678648.67 101.25 -598156.78 5682078.66 96.25 -598157.14 5678638.69 101.25 -598157.33 5678599.01 101.25 -598157.37 5678774.21 100.00 -598157.40 5678523.23 101.25 -598157.70 5678628.71 101.25 -598157.75 5678438.91 102.50 -598157.90 5682471.24 96.25 -598157.99 5681336.27 98.75 -598158.09 5678008.25 105.00 -598158.10 5678688.44 101.25 -598158.23 5682950.07 98.75 -598158.27 5678618.73 101.25 -598158.34 5678330.26 103.75 -598158.56 5678717.60 101.25 -598158.65 5678608.75 101.25 -598158.89 5681048.83 98.75 -598159.09 5681359.49 98.75 -598159.29 5683079.91 98.75 -598159.48 5680989.24 100.00 -598159.56 5680136.95 98.75 -598159.68 5683848.46 95.00 -598159.78 5679044.41 97.50 -598159.84 5682419.43 96.25 -598160.46 5682666.75 97.50 -598160.49 5678698.14 101.25 -598160.57 5682458.93 96.25 -598160.64 5681874.16 97.50 -598160.80 5678707.86 101.25 -598160.85 5677985.76 103.75 -598161.00 5677610.71 102.50 -598161.01 5680660.10 98.75 -598161.19 5682693.70 98.75 -598161.25 5681181.61 97.50 -598161.27 5679183.52 97.50 -598161.27 5678273.63 105.00 -598161.33 5679581.14 98.75 -598161.41 5680962.66 98.75 -598161.54 5682036.81 96.25 -598161.89 5682217.42 96.25 -598161.97 5682678.67 98.75 -598162.09 5678429.95 102.50 -598162.54 5681245.01 97.50 -598162.83 5682070.96 96.25 -598163.38 5678515.29 101.25 -598163.56 5677601.04 102.50 -598163.92 5678322.04 103.75 -598164.00 5681015.79 100.00 -598164.83 5680975.03 98.75 -598165.75 5678868.96 98.75 -598165.78 5681342.50 98.75 -598166.41 5681042.25 98.75 -598166.43 5678420.99 102.50 -598166.45 5677591.48 102.50 -598166.48 5678770.10 100.00 -598166.58 5682687.16 98.75 -598166.63 5680129.90 98.75 -598166.67 5682045.31 96.25 -598167.65 5678005.72 105.00 -598167.83 5682470.22 96.25 -598167.99 5680984.40 100.00 -598168.16 5682951.16 98.75 -598168.22 5682540.91 96.25 -598168.28 5682672.94 97.50 -598168.38 5681867.86 97.50 -598168.62 5681174.91 97.50 -598168.96 5681358.58 98.75 -598169.28 5683079.53 98.75 -598169.32 5679041.58 97.50 -598169.49 5680945.70 98.75 -598169.57 5683849.91 95.00 -598169.85 5682063.94 96.25 -598169.92 5678268.84 105.00 -598169.93 5678507.74 101.25 -598169.95 5678411.67 102.50 -598170.17 5677582.20 102.50 -598170.19 5682456.37 96.25 -598170.30 5677982.55 103.75 -598170.46 5682054.26 96.25 -598170.84 5678314.88 103.75 -598170.88 5680658.54 98.75 -598171.04 5679181.64 97.50 -598171.09 5682221.09 96.25 -598171.28 5679580.19 98.75 -598171.33 5680963.68 98.75 -598171.53 5682549.86 96.25 -598171.77 5680936.14 98.75 -598172.13 5681247.28 97.50 -598172.31 5681350.07 98.75 -598172.76 5682533.65 96.25 -598173.11 5681859.48 97.50 -598173.31 5681014.03 100.00 -598173.47 5678402.36 102.50 -598173.61 5678763.21 100.00 -598173.83 5680954.36 98.75 -598173.94 5681035.68 98.75 -598173.96 5677572.95 102.50 -598174.37 5680972.82 98.75 -598174.56 5680123.81 98.75 -598175.21 5678392.64 102.50 -598175.25 5681167.47 97.50 -598175.48 5678866.72 98.75 -598175.61 5678020.13 106.25 -598175.86 5681849.91 97.50 -598176.07 5678382.72 102.50 -598176.20 5680927.18 98.75 -598176.50 5682678.60 97.50 -598176.71 5678500.41 101.25 -598176.93 5678372.80 102.50 -598176.97 5678002.30 105.00 -598177.09 5680981.70 100.00 -598177.69 5678262.93 105.00 -598177.75 5682469.14 96.25 -598177.75 5678307.72 103.75 -598177.81 5677563.72 102.50 -598177.81 5681840.13 97.50 -598178.11 5682952.07 98.75 -598178.32 5678362.94 102.50 -598178.38 5678027.58 106.25 -598178.41 5682450.70 96.25 -598178.47 5683854.22 95.00 -598178.49 5681830.17 97.50 -598178.73 5682392.90 96.25 -598178.83 5681357.64 98.75 -598178.86 5679038.76 97.50 -598179.05 5682555.51 96.25 -598179.18 5681820.22 97.50 -598179.27 5683079.33 98.75 -598179.60 5678011.95 106.25 -598179.75 5677979.34 103.75 -598179.78 5678353.09 102.50 -598179.81 5682383.11 96.25 -598179.99 5680917.94 98.75 -598180.32 5682224.71 96.25 -598180.54 5678756.01 100.00 -598180.79 5680657.86 98.75 -598180.95 5679180.87 97.50 -598180.95 5679578.16 98.75 -598181.11 5681159.41 97.50 -598181.24 5680964.71 98.75 -598181.99 5681248.72 97.50 -598182.07 5682531.48 96.25 -598182.14 5682373.48 96.25 -598182.49 5680117.72 98.75 -598182.64 5678254.34 105.00 -598182.67 5681011.90 100.00 -598182.74 5680956.11 98.75 -598182.93 5681031.97 98.75 -598183.19 5678343.98 102.50 -598183.24 5682401.81 96.25 -598183.25 5677555.48 102.50 -598183.25 5681811.14 97.50 -598183.71 5680908.66 98.75 -598183.77 5678493.33 101.25 -598183.80 5680975.11 98.75 -598185.22 5678864.48 98.75 -598185.28 5678301.18 103.75 -598185.33 5682683.27 97.50 -598185.93 5681150.77 97.50 -598186.02 5680983.22 100.00 -598186.17 5682444.46 96.25 -598186.21 5682364.36 96.25 -598186.28 5677998.88 105.00 -598187.13 5683859.20 95.00 -598187.15 5678029.99 106.25 -598187.44 5681802.08 97.50 -598187.46 5678748.82 100.00 -598187.60 5678245.74 105.00 -598187.63 5682467.67 96.25 -598187.69 5680899.49 98.75 -598187.78 5678008.40 106.25 -598188.08 5682952.80 98.75 -598188.17 5678573.41 100.00 -598188.19 5679035.35 97.50 -598188.63 5678335.64 102.50 -598188.67 5682558.11 96.25 -598188.78 5683077.10 98.75 -598189.02 5682409.90 96.25 -598189.04 5678563.65 100.00 -598189.17 5677976.06 103.75 -598189.34 5678583.23 100.00 -598189.54 5681141.48 97.50 -598190.16 5679574.27 98.75 -598190.25 5677548.36 102.50 -598190.42 5680111.63 98.75 -598190.52 5678593.05 100.00 -598190.68 5678553.90 100.00 -598190.77 5680658.53 98.75 -598190.82 5678486.25 101.25 -598190.88 5679180.27 97.50 -598191.13 5678739.58 100.00 -598191.16 5680965.71 98.75 -598191.58 5682533.81 96.25 -598191.68 5681008.01 100.00 -598191.84 5681250.27 97.50 -598191.91 5678602.83 100.00 -598191.92 5680890.45 98.75 -598192.07 5678017.03 106.50 -598192.08 5680990.93 100.00 -598192.33 5678544.15 100.00 -598192.35 5682436.90 96.25 -598192.46 5682356.62 96.25 -598192.67 5681029.72 98.75 -598192.69 5681793.65 97.50 -598192.69 5680955.20 98.75 -598193.02 5682689.24 97.50 -598193.16 5681132.19 97.50 -598193.22 5678237.57 105.00 -598193.25 5678295.22 103.75 -598193.37 5678612.61 100.00 -598193.54 5680976.63 98.75 -598194.15 5682418.35 96.25 -598194.16 5678327.36 102.50 -598194.56 5678730.20 100.00 -598194.83 5678622.39 100.00 -598194.96 5678862.25 98.75 -598195.29 5680998.98 100.00 -598195.42 5678026.20 106.25 -598195.45 5677995.10 105.00 -598195.63 5678632.23 100.00 -598195.65 5683864.33 95.00 -598195.80 5678661.88 100.00 -598195.97 5678642.11 100.00 -598195.99 5682462.36 96.25 -598196.02 5678651.99 100.00 -598196.04 5682427.63 96.25 -598196.46 5678005.74 106.25 -598196.68 5678535.36 100.00 -598197.29 5678671.59 100.00 -598197.30 5681123.13 97.50 -598197.33 5679031.42 97.50 -598197.60 5680971.22 98.75 -598197.61 5677541.59 102.50 -598197.63 5680882.40 98.75 -598197.78 5678479.10 101.25 -598197.84 5683072.89 98.75 -598197.93 5682952.13 98.75 -598197.99 5678720.83 100.00 -598198.22 5678710.94 100.00 -598198.41 5682560.21 96.25 -598198.42 5680105.63 98.75 -598198.44 5678701.06 100.00 -598198.48 5677972.48 103.75 -598198.54 5681785.57 97.50 -598198.67 5678691.17 100.00 -598198.78 5682697.40 97.50 -598198.90 5678681.29 100.00 -598198.97 5678229.48 105.00 -598199.36 5679570.39 98.75 -598199.79 5678319.15 102.50 -598200.06 5682350.50 96.25 -598200.74 5680659.21 98.75 -598200.82 5679180.26 97.50 -598200.86 5682537.37 96.25 -598201.16 5683872.67 95.00 -598201.58 5678526.77 100.00 -598201.67 5681251.92 97.50 -598201.76 5678290.01 103.75 -598202.02 5681114.51 97.50 -598202.31 5678470.19 101.25 -598202.40 5681027.47 98.75 -598202.45 5680953.09 98.75 -598203.32 5677533.45 102.50 -598203.33 5682455.67 96.25 -598203.51 5678022.12 106.25 -598203.78 5677812.97 102.50 -598204.10 5678123.91 105.00 -598204.12 5677822.96 102.50 -598204.24 5682399.38 96.25 -598204.45 5678859.21 98.75 -598204.47 5682389.40 96.25 -598204.52 5677832.95 102.50 -598204.57 5677991.19 105.00 -598204.66 5681777.72 97.50 -598204.71 5678221.39 105.00 -598204.76 5678114.04 105.00 -598204.76 5682705.39 97.50 -598204.88 5677803.03 102.50 -598205.04 5683207.93 97.50 -598205.32 5680876.02 98.75 -598205.33 5678004.35 106.25 -598205.43 5678310.94 102.50 -598205.60 5678104.17 105.00 -598205.89 5682409.17 96.25 -598206.03 5683198.58 97.50 -598206.22 5677842.65 102.50 -598206.42 5680099.64 98.75 -598206.65 5679028.55 97.50 -598206.76 5677793.39 102.50 -598206.82 5678518.42 100.00 -598206.85 5678461.29 101.25 -598207.47 5683070.23 98.75 -598207.67 5682949.86 98.75 -598207.80 5677968.90 103.75 -598208.07 5682418.91 96.25 -598208.08 5678133.00 105.00 -598208.20 5682560.96 96.25 -598208.46 5683875.26 95.00 -598208.59 5679566.55 98.75 -598208.62 5677524.97 102.50 -598209.09 5682346.24 96.25 -598209.72 5682448.12 96.25 -598209.92 5682428.73 96.25 -598210.15 5677851.84 102.50 -598210.34 5683865.79 95.00 -598210.43 5678213.28 105.00 -598210.46 5682540.04 96.25 -598210.50 5678285.21 103.75 -598210.52 5682382.38 96.25 -598210.56 5681109.36 97.50 -598210.57 5678016.39 106.25 -598210.72 5680659.56 98.75 -598210.77 5679180.48 97.50 -598211.06 5678302.73 102.50 -598211.24 5681254.72 97.50 -598211.31 5683190.10 97.50 -598211.39 5678452.39 101.25 -598211.54 5682712.74 97.50 -598211.66 5683215.10 97.50 -598211.72 5681770.67 97.50 -598211.76 5682438.54 96.25 -598212.08 5678142.09 105.00 -598212.11 5681025.09 98.75 -598212.17 5680950.78 98.75 -598212.17 5683855.97 95.00 -598212.22 5678096.78 105.00 -598212.60 5677785.27 102.50 -598212.66 5678008.25 106.25 -598212.80 5678510.54 100.00 -598213.80 5678855.68 98.75 -598213.83 5677516.44 102.50 -598214.04 5677988.39 105.00 -598214.06 5683846.16 95.00 -598214.09 5677861.03 102.50 -598214.42 5680093.64 98.75 -598214.51 5680872.54 98.75 -598214.57 5678443.02 101.25 -598215.71 5678151.31 105.00 -598216.01 5678205.07 105.00 -598216.31 5683836.44 95.00 -598216.40 5678433.20 101.25 -598216.51 5682339.60 96.25 -598216.57 5679029.30 97.50 -598217.13 5683067.65 98.75 -598217.30 5677966.19 103.75 -598217.40 5682947.59 98.75 -598217.89 5683182.59 97.50 -598217.90 5679562.92 98.75 -598218.03 5686422.27 95.00 -598218.08 5682559.70 96.25 -598218.23 5678423.37 101.25 -598218.28 5677777.04 102.50 -598218.31 5682720.08 97.50 -598218.46 5681763.31 97.50 -598218.59 5678502.54 100.00 -598218.63 5678279.67 103.75 -598218.76 5677507.77 102.50 -598219.05 5678160.66 105.00 -598219.19 5678089.75 105.00 -598219.24 5686412.40 95.00 -598219.30 5683221.54 97.50 -598219.31 5678297.07 102.50 -598219.31 5677869.54 102.50 -598219.50 5681105.52 97.50 -598219.59 5683827.00 95.00 -598219.79 5678413.50 101.25 -598220.10 5681259.13 97.50 -598220.22 5682380.23 96.25 -598220.37 5682540.62 96.25 -598220.66 5679179.64 97.50 -598220.71 5680659.79 98.75 -598220.78 5677879.43 102.50 -598221.33 5678403.63 101.25 -598221.58 5678196.86 105.00 -598221.80 5681022.67 98.75 -598221.92 5680948.58 98.75 -598222.23 5677498.39 102.50 -598222.24 5677889.32 102.50 -598222.29 5680087.47 98.75 -598222.34 5678170.02 105.00 -598222.86 5678393.75 101.25 -598222.93 5683817.58 95.00 -598223.15 5678852.14 98.75 -598223.55 5678493.99 100.00 -598223.78 5677986.51 105.00 -598223.78 5677899.20 102.50 -598223.82 5682332.80 96.25 -598223.82 5677768.72 102.50 -598224.17 5680870.00 98.75 -598224.40 5678383.88 101.25 -598224.47 5683175.07 97.50 -598224.71 5677488.73 102.50 -598224.76 5681755.60 97.50 -598224.77 5683422.50 95.00 -598225.48 5678179.44 105.00 -598225.52 5678272.45 103.75 -598225.65 5677909.02 102.50 -598226.01 5682726.25 97.50 -598226.26 5686406.20 95.00 -598226.49 5679030.04 97.50 -598226.75 5683808.34 95.00 -598226.85 5683065.33 98.75 -598226.88 5683228.05 97.50 -598226.88 5678083.48 105.00 -598226.89 5677478.98 102.50 -598227.12 5682945.28 98.75 -598227.16 5678188.65 105.00 -598227.20 5679559.28 98.75 -598227.26 5677965.58 103.75 -598227.51 5677918.85 102.50 -598227.55 5678291.42 102.50 -598228.00 5682559.44 96.25 -598228.18 5678374.67 101.25 -598228.66 5681264.25 97.50 -598228.94 5678485.71 100.00 -598229.37 5677760.40 102.50 -598229.46 5681105.07 97.50 -598229.48 5677469.32 102.50 -598230.01 5683798.92 95.00 -598230.06 5677928.31 102.50 -598230.07 5682379.43 96.25 -598230.07 5683166.86 97.50 -598230.13 5680081.27 98.75 -598230.34 5682540.76 96.25 -598230.46 5681747.42 97.50 -598230.53 5679178.40 97.50 -598230.70 5680660.02 98.75 -598231.20 5678264.30 103.75 -598231.32 5681019.81 98.75 -598231.71 5680946.57 98.75 -598231.85 5678847.37 98.75 -598232.04 5677459.65 102.50 -598232.27 5678365.55 101.25 -598232.28 5682327.62 96.25 -598232.68 5683789.29 95.00 -598232.76 5683425.93 95.00 -598233.00 5686399.03 95.00 -598233.41 5678076.17 105.00 -598233.61 5677987.51 105.00 -598233.72 5680867.10 98.75 -598234.28 5683234.75 97.50 -598234.34 5679036.02 97.50 -598234.38 5677449.93 102.50 -598234.43 5678477.48 100.00 -598234.49 5678284.34 102.50 -598234.73 5682731.14 97.50 -598234.78 5681738.56 97.50 -598234.92 5677752.08 102.50 -598235.36 5683779.66 95.00 -598235.51 5677350.37 102.50 -598235.68 5677360.36 102.50 -598235.92 5683158.89 97.50 -598236.01 5677340.38 102.50 -598236.14 5677440.10 102.50 -598236.18 5677370.34 102.50 -598236.20 5682359.16 96.00 -598236.35 5683243.86 97.50 -598236.54 5679555.73 98.75 -598236.66 5678255.95 103.75 -598236.68 5677330.41 102.50 -598236.76 5683065.83 98.75 -598236.81 5677380.32 102.50 -598236.82 5681269.98 97.50 -598236.84 5682942.96 98.75 -598237.11 5678356.86 101.25 -598237.13 5677935.38 102.50 -598237.22 5677964.97 103.75 -598237.38 5683769.87 95.00 -598237.49 5677430.19 102.50 -598237.52 5677390.30 102.50 -598237.53 5681575.94 97.50 -598237.62 5681585.91 97.50 -598237.69 5681729.02 97.50 -598237.83 5682561.08 96.25 -598237.84 5677320.48 102.50 -598237.86 5680074.94 98.75 -598238.23 5677400.27 102.50 -598238.46 5677410.26 102.50 -598238.46 5677420.26 102.50 -598238.80 5678067.84 105.00 -598238.99 5677742.98 102.50 -598239.01 5677310.55 102.50 -598239.15 5682198.92 96.25 -598239.16 5682381.71 96.25 -598239.25 5683760.05 95.00 -598239.41 5681104.61 97.50 -598239.47 5682538.92 96.25 -598239.52 5681566.33 97.50 -598239.91 5678469.25 100.00 -598239.93 5681014.75 98.75 -598240.11 5678841.75 98.75 -598240.18 5681595.55 97.50 -598240.40 5679177.16 97.50 -598240.53 5686392.60 95.00 -598240.68 5680659.93 98.75 -598240.77 5678058.17 105.00 -598240.82 5678276.60 102.50 -598241.09 5682322.93 96.25 -598241.16 5683252.62 97.50 -598241.36 5677300.83 102.50 -598241.47 5681719.80 97.50 -598241.50 5680944.56 98.75 -598242.06 5679042.29 97.50 -598242.11 5678129.36 103.75 -598242.19 5678139.25 103.75 -598242.29 5678048.37 105.00 -598242.36 5678247.76 103.75 -598242.46 5683750.63 95.00 -598242.60 5686373.23 95.00 -598242.68 5683427.08 95.00 -598242.75 5681605.19 97.50 -598242.83 5681277.71 97.50 -598242.89 5678348.70 101.25 -598242.90 5677733.78 102.50 -598242.95 5680863.28 98.75 -598243.10 5686383.16 95.00 -598243.17 5677989.75 105.00 -598243.43 5686363.45 95.00 -598243.75 5682390.56 96.25 -598243.79 5683153.04 97.50 -598243.82 5681557.35 97.50 -598243.93 5678038.61 105.00 -598244.03 5678120.05 103.75 -598244.05 5682734.41 97.50 -598244.36 5683500.58 95.00 -598244.47 5677291.44 102.50 -598244.84 5682530.52 96.25 -598244.96 5680067.91 98.75 -598245.14 5677941.16 102.50 -598245.23 5682400.24 96.25 -598245.34 5678460.99 100.00 -598245.48 5682410.22 96.25 -598245.50 5681710.67 97.50 -598245.82 5683510.47 95.00 -598246.08 5679050.69 97.50 -598246.21 5679553.23 98.75 -598246.23 5683741.38 95.00 -598246.28 5678148.36 103.75 -598246.39 5681614.48 97.50 -598246.56 5682940.65 98.75 -598246.71 5683065.99 98.75 -598246.74 5686325.46 95.00 -598246.75 5683491.02 95.00 -598246.87 5683260.80 97.50 -598246.90 5679080.38 97.50 -598247.00 5678268.74 102.50 -598247.09 5677724.70 102.50 -598247.16 5677965.62 103.75 -598247.24 5679070.44 97.50 -598247.32 5686335.21 95.00 -598247.42 5679090.31 97.50 -598247.48 5682563.50 96.25 -598247.60 5682196.61 96.25 -598247.60 5679060.52 97.50 -598247.64 5686354.58 95.00 -598247.94 5679100.25 97.50 -598247.96 5681286.26 97.50 -598248.09 5681008.97 98.75 -598248.37 5678029.73 105.00 -598248.38 5678836.14 98.75 -598248.57 5679110.16 97.50 -598248.66 5678340.54 101.25 -598249.03 5678240.33 103.75 -598249.19 5679172.66 97.50 -598249.27 5686344.95 95.00 -598249.30 5681701.46 97.50 -598249.33 5682323.35 96.25 -598249.37 5681104.08 97.50 -598249.66 5686316.17 95.00 -598249.83 5677282.99 102.50 -598249.85 5683481.52 95.00 -598249.97 5681549.49 97.50 -598250.03 5681623.77 97.50 -598250.18 5678157.54 103.75 -598250.37 5682418.67 96.25 -598250.62 5680658.92 98.75 -598250.68 5683518.93 95.00 -598250.77 5678452.73 100.00 -598250.96 5682522.65 96.25 -598251.11 5678113.12 103.75 -598251.26 5677715.62 102.50 -598251.31 5680942.66 98.75 -598251.87 5678571.66 98.75 -598251.99 5679119.51 97.50 -598251.99 5683733.38 95.00 -598252.02 5683430.37 95.00 -598252.07 5680060.88 98.75 -598252.07 5677994.06 105.00 -598252.21 5680859.56 98.75 -598252.29 5681691.94 97.50 -598252.37 5678562.30 98.75 -598252.50 5681633.43 97.50 -598253.00 5678260.74 102.50 -598253.05 5678020.99 105.00 -598253.16 5681389.36 97.50 -598253.38 5683151.72 97.50 -598253.47 5681379.40 97.50 -598253.56 5681369.43 97.50 -598253.72 5683667.72 95.00 -598253.73 5681294.39 97.50 -598253.84 5682736.40 97.50 -598253.84 5678166.83 103.75 -598253.90 5683267.78 97.50 -598254.02 5677945.76 102.50 -598254.27 5678443.60 100.00 -598254.59 5683677.36 95.00 -598254.77 5681643.14 97.50 -598254.87 5681359.64 97.50 -598255.04 5678332.91 101.25 -598255.18 5677274.55 102.50 -598255.20 5681682.40 97.50 -598255.27 5677706.46 102.50 -598255.28 5683473.16 95.00 -598255.41 5679128.85 97.50 -598255.45 5682200.30 96.25 -598255.70 5678232.91 103.75 -598255.88 5679550.73 98.75 -598256.07 5681002.97 98.75 -598256.09 5679165.97 97.50 -598256.16 5681541.66 97.50 -598256.29 5682938.34 98.75 -598256.51 5682330.21 96.25 -598256.66 5683065.03 98.75 -598256.80 5681652.91 97.50 -598256.84 5678434.05 100.00 -598256.86 5686309.74 95.00 -598256.93 5678830.97 98.75 -598257.08 5677966.70 103.75 -598257.09 5682565.67 96.25 -598257.18 5683658.54 95.00 -598257.23 5681672.63 97.50 -598257.40 5678553.67 98.75 -598257.41 5678002.42 105.00 -598257.43 5678012.19 105.00 -598257.43 5678579.44 98.75 -598257.61 5681350.05 97.50 -598257.70 5680052.68 98.75 -598258.00 5681662.81 97.50 -598258.72 5678175.25 103.75 -598258.77 5677697.13 102.50 -598258.81 5683726.08 95.00 -598258.83 5679138.19 97.50 -598258.96 5682517.21 96.25 -598259.07 5682423.34 96.25 -598259.32 5681103.55 97.50 -598259.39 5678424.50 100.00 -598259.39 5683464.14 95.00 -598259.52 5681302.50 97.50 -598259.59 5678253.24 102.50 -598260.23 5683436.01 95.00 -598260.26 5678109.15 103.75 -598260.49 5680657.36 98.75 -598260.63 5683519.82 95.00 -598260.70 5681340.57 97.50 -598260.94 5683683.91 95.00 -598260.96 5677687.37 102.50 -598260.97 5679147.88 97.50 -598261.15 5680940.91 98.75 -598261.15 5679157.40 97.50 -598261.76 5683273.95 97.50 -598261.91 5681533.60 97.50 -598261.93 5678414.95 100.00 -598261.99 5680857.50 98.75 -598262.27 5682338.37 96.25 -598262.36 5678326.12 101.25 -598262.36 5678225.48 103.75 -598262.71 5683454.71 95.00 -598262.89 5678545.31 98.75 -598262.93 5680044.16 98.75 -598262.97 5677268.64 102.50 -598263.13 5677949.88 102.50 -598263.19 5683153.63 97.50 -598263.28 5682204.21 96.25 -598263.29 5677677.65 102.50 -598263.34 5681311.61 97.50 -598263.71 5682737.67 97.50 -598263.78 5681331.09 97.50 -598263.90 5683444.94 95.00 -598263.92 5680996.78 98.75 -598263.99 5683651.22 95.00 -598264.71 5686303.69 95.00 -598265.05 5681321.26 97.50 -598265.14 5681524.16 97.50 -598265.29 5678405.72 100.00 -598265.48 5678825.80 98.75 -598265.50 5679548.05 98.75 -598265.62 5683061.18 98.75 -598265.92 5683719.05 95.00 -598265.93 5682935.74 98.75 -598266.22 5678181.84 103.75 -598266.28 5677969.54 103.75 -598266.36 5677668.14 102.50 -598266.47 5678583.71 98.75 -598266.68 5678246.23 102.50 -598266.82 5682563.50 96.25 -598267.39 5678217.02 103.75 -598267.94 5686294.61 95.00 -598267.95 5681514.59 97.50 -598268.04 5678536.75 98.75 -598268.18 5682513.44 96.25 -598268.18 5680035.65 98.75 -598268.19 5681406.78 97.50 -598268.69 5677658.45 102.50 -598268.83 5682421.23 96.25 -598269.28 5681103.08 97.50 -598269.48 5682345.27 96.25 -598269.61 5683280.13 97.50 -598269.69 5678319.32 101.25 -598269.94 5678106.89 103.75 -598270.01 5678397.03 100.00 -598270.16 5677648.56 102.50 -598270.18 5681494.94 97.50 -598270.18 5681504.91 97.50 -598270.21 5683518.64 95.00 -598270.34 5680655.69 98.75 -598270.54 5683682.79 95.00 -598270.65 5681484.97 97.50 -598270.71 5683643.83 95.00 -598270.92 5682208.45 96.25 -598270.97 5681416.37 97.50 -598270.99 5680939.16 98.75 -598271.25 5678207.82 103.75 -598271.43 5686285.60 95.00 -598271.60 5681475.06 97.50 -598271.64 5677638.67 102.50 -598271.77 5680990.60 98.75 -598271.77 5680855.44 98.75 -598271.86 5677264.28 102.50 -598272.10 5677954.26 102.50 -598272.30 5683711.38 95.00 -598272.62 5683151.13 97.50 -598272.93 5678528.03 98.75 -598273.44 5680027.15 98.75 -598273.47 5678188.55 103.75 -598273.58 5681425.99 97.50 -598273.67 5681465.30 97.50 -598273.70 5682737.90 97.50 -598273.74 5677628.89 102.50 -598274.02 5678820.63 98.75 -598274.09 5683055.87 98.75 -598274.10 5677975.73 103.75 -598274.33 5678198.49 103.75 -598274.77 5678388.37 100.00 -598274.84 5678240.45 102.50 -598274.90 5679544.67 98.75 -598275.43 5683288.13 97.50 -598275.53 5682932.96 98.75 -598275.75 5678587.18 98.75 -598275.85 5677619.12 102.50 -598275.87 5681455.57 97.50 -598275.96 5681435.68 97.50 -598276.11 5682559.90 96.25 -598276.11 5682277.96 96.25 -598276.18 5681445.65 97.50 -598276.48 5682352.39 96.25 -598276.72 5683635.84 95.00 -598277.17 5678312.69 101.25 -598277.58 5682416.44 96.25 -598277.60 5682510.25 96.25 -598277.83 5682213.82 96.25 -598277.88 5677609.33 102.50 -598278.01 5686278.19 95.00 -598278.49 5678519.77 98.75 -598278.51 5683513.06 95.00 -598278.57 5683676.84 95.00 -598278.73 5683703.75 95.00 -598278.78 5680018.70 98.75 -598279.24 5681102.68 97.50 -598279.37 5683143.76 97.50 -598279.53 5678104.57 103.75 -598279.72 5677599.50 102.50 -598279.75 5680984.60 98.75 -598279.87 5686268.42 95.00 -598280.23 5680656.93 98.75 -598280.72 5683296.61 97.50 -598280.82 5680937.41 98.75 -598280.83 5677959.15 102.50 -598281.03 5678380.72 100.00 -598281.45 5678233.13 102.50 -598281.46 5678813.98 98.75 -598281.55 5680853.39 98.75 -598281.73 5683627.29 95.00 -598281.75 5677262.83 102.50 -598281.76 5682221.21 96.25 -598281.82 5683049.54 98.75 -598281.83 5677982.04 103.75 -598282.33 5686258.80 95.00 -598282.50 5683393.72 97.50 -598282.61 5682408.01 96.25 -598282.74 5682359.97 96.25 -598283.31 5677590.28 102.50 -598283.61 5682738.78 97.50 -598284.22 5686249.09 95.00 -598284.31 5680010.37 98.75 -598284.31 5679541.30 98.75 -598284.75 5678306.18 101.25 -598284.91 5678512.11 98.75 -598285.13 5682930.16 98.75 -598285.17 5683135.63 97.50 -598285.30 5683617.97 95.00 -598285.33 5682369.61 96.25 -598285.35 5683305.30 97.50 -598285.40 5682556.30 96.25 -598285.45 5683505.94 95.00 -598285.54 5683696.44 95.00 -598285.66 5678588.54 98.75 -598285.89 5682504.72 96.25 -598286.00 5682278.89 96.25 -598286.07 5683384.39 97.50 -598286.08 5683315.27 97.50 -598286.15 5686239.41 95.00 -598286.82 5683325.23 97.50 -598286.89 5678224.77 102.50 -598287.19 5682399.14 96.25 -598287.29 5678373.07 100.00 -598287.48 5678098.54 103.75 -598287.49 5681137.80 97.25 -598287.55 5683335.20 97.50 -598287.74 5682389.19 96.25 -598287.78 5683678.31 95.00 -598287.93 5682379.25 96.25 -598287.98 5677581.44 102.50 -598288.17 5683608.39 95.00 -598288.22 5680979.29 98.75 -598288.29 5683345.16 97.50 -598288.70 5681104.56 97.50 -598288.74 5682485.70 96.25 -598288.80 5678807.20 98.75 -598288.84 5683355.14 97.50 -598288.99 5678503.01 98.75 -598289.29 5677964.47 102.50 -598289.36 5683365.12 97.50 -598289.38 5682475.76 96.25 -598289.45 5686230.03 95.00 -598289.46 5682495.63 96.25 -598289.52 5683043.17 98.75 -598289.65 5683375.06 97.50 -598289.80 5683687.40 95.00 -598289.83 5680002.03 98.75 -598290.01 5677987.72 103.75 -598290.11 5680658.40 98.75 -598290.15 5678055.75 103.75 -598290.39 5683598.65 95.00 -598290.56 5681146.43 97.25 -598290.66 5680935.62 98.75 -598290.86 5682466.05 96.25 -598290.96 5678045.85 103.75 -598291.08 5678215.69 102.50 -598291.45 5680853.30 98.75 -598291.55 5677262.98 102.50 -598292.47 5678299.86 101.25 -598292.60 5683588.92 95.00 -598292.84 5686220.68 95.00 -598292.88 5678493.80 98.75 -598293.25 5678365.19 100.00 -598293.28 5682741.19 97.50 -598293.32 5683499.93 95.00 -598293.52 5683130.20 97.50 -598293.71 5679537.93 98.75 -598293.85 5677573.43 102.50 -598294.04 5678206.18 102.50 -598294.16 5678037.01 103.75 -598294.63 5682927.09 98.75 -598294.70 5682283.34 96.25 -598294.77 5682553.45 96.25 -598294.79 5678091.93 103.75 -598294.82 5681111.85 97.50 -598295.03 5678064.45 103.75 -598295.11 5681135.52 97.25 -598295.43 5679993.76 98.75 -598295.45 5682457.20 96.25 -598295.54 5678590.01 98.75 -598295.75 5686211.17 95.00 -598295.89 5683579.48 95.00 -598296.47 5678196.48 102.50 -598296.69 5680973.99 98.75 -598296.77 5678484.59 98.75 -598296.89 5681153.87 97.25 -598297.00 5678801.80 98.75 -598297.17 5683036.74 98.75 -598297.24 5680613.76 98.75 -598297.39 5683569.60 95.00 -598297.64 5680621.33 98.75 -598297.74 5677969.82 102.50 -598298.08 5678186.61 102.50 -598298.13 5686306.80 95.00 -598298.36 5683559.67 95.00 -598298.39 5683549.68 95.00 -598298.44 5678073.72 103.75 -598298.56 5677992.87 103.75 -598298.62 5686201.65 95.00 -598299.01 5678357.15 100.00 -598299.33 5681120.74 97.50 -598299.53 5686316.39 95.00 -598299.69 5678176.74 102.50 -598299.80 5678293.11 101.25 -598299.87 5678083.34 103.75 -598300.01 5680659.77 98.75 -598300.21 5683539.95 95.00 -598300.45 5677565.91 102.50 -598300.47 5680933.76 98.75 -598300.75 5686297.36 95.00 -598301.10 5678475.59 98.75 -598301.17 5686192.06 95.00 -598301.22 5677265.54 102.50 -598301.24 5682449.09 96.25 -598301.40 5680854.23 98.75 -598301.40 5686182.11 95.00 -598301.58 5679985.87 98.75 -598301.61 5678030.41 103.75 -598301.69 5679531.99 98.75 -598301.87 5682290.10 96.25 -598301.99 5683124.90 97.50 -598302.13 5682558.95 96.25 -598302.26 5686172.30 95.00 -598302.27 5682745.55 97.50 -598302.58 5683496.60 95.00 -598302.78 5681141.48 97.25 -598302.87 5681130.01 97.50 -598302.96 5678167.35 102.50 -598303.31 5681161.21 97.25 -598304.14 5682924.01 98.75 -598304.65 5683531.39 95.00 -598304.66 5683030.12 98.75 -598304.77 5678349.12 100.00 -598304.85 5680607.97 98.75 -598305.35 5678591.95 98.75 -598305.35 5680969.12 98.75 -598305.50 5678466.61 98.75 -598305.68 5686288.78 95.00 -598306.18 5686323.77 95.00 -598306.32 5678798.20 98.75 -598306.33 5678285.61 101.25 -598306.40 5680625.84 98.75 -598306.42 5686163.35 95.00 -598306.66 5677974.11 102.50 -598307.05 5677558.40 102.50 -598307.09 5677997.99 103.75 -598307.42 5678158.46 102.50 -598307.73 5679977.99 98.75 -598308.50 5681138.24 97.50 -598308.71 5682297.29 96.25 -598309.09 5682443.49 96.25 -598309.46 5682564.87 96.25 -598309.49 5679525.75 98.75 -598309.70 5680662.00 98.75 -598309.74 5681168.56 97.25 -598309.86 5678025.00 103.75 -598309.89 5681148.16 97.25 -598310.29 5680931.89 98.75 -598310.31 5677269.50 102.50 -598310.54 5678458.04 98.75 -598310.55 5683119.87 97.50 -598311.04 5678341.48 100.00 -598311.34 5680855.17 98.75 -598311.37 5678277.00 101.25 -598312.01 5686281.05 95.00 -598312.03 5682746.72 97.50 -598312.34 5683497.42 95.00 -598312.56 5683525.34 95.00 -598312.74 5683024.47 98.75 -598312.89 5686155.79 95.00 -598312.90 5678015.49 103.75 -598313.01 5678005.72 103.75 -598313.22 5680603.37 98.75 -598313.29 5682920.03 98.75 -598313.42 5678150.47 102.50 -598313.75 5677550.98 102.50 -598313.88 5679970.11 98.75 -598314.86 5678594.97 98.75 -598314.93 5680966.26 98.75 -598315.08 5681145.70 97.50 -598315.28 5686327.40 95.00 -598315.53 5678267.93 101.25 -598315.64 5678794.61 98.75 -598315.99 5682304.04 96.25 -598316.04 5680627.39 98.75 -598316.07 5681175.98 97.25 -598316.43 5677976.18 102.50 -598316.51 5681155.32 97.25 -598316.82 5678450.26 98.75 -598317.26 5679519.48 98.75 -598317.45 5686147.24 95.00 -598317.58 5678334.08 100.00 -598317.73 5682438.70 96.25 -598318.34 5686273.31 95.00 -598318.61 5679961.31 98.75 -598318.75 5686137.47 95.00 -598318.96 5682564.02 96.25 -598318.96 5680665.69 98.75 -598318.97 5677274.49 102.50 -598319.17 5686127.82 95.00 -598319.42 5678142.47 102.50 -598320.10 5680929.99 98.75 -598320.47 5677543.58 102.50 -598320.53 5683119.47 97.50 -598320.55 5683502.50 95.00 -598321.29 5680856.12 98.75 -598321.90 5680599.64 98.75 -598321.91 5682745.68 97.50 -598321.97 5681152.91 97.50 -598322.12 5679952.03 98.75 -598322.17 5683022.27 98.75 -598322.25 5678260.67 101.25 -598322.31 5681183.49 97.25 -598322.33 5682915.77 98.75 -598322.41 5683525.03 95.00 -598322.74 5682388.28 96.25 -598322.79 5682396.67 96.25 -598322.88 5679511.22 98.75 -598323.14 5681162.49 97.25 -598323.14 5678442.52 98.75 -598323.96 5678598.93 98.75 -598324.13 5678326.67 100.00 -598324.51 5679942.32 98.75 -598324.52 5680963.46 98.75 -598324.69 5686265.60 95.00 -598324.85 5678792.28 98.75 -598324.86 5686326.57 95.00 -598325.00 5682307.65 96.25 -598325.12 5682432.01 96.25 -598325.61 5680629.42 98.75 -598325.88 5679872.66 98.75 -598325.94 5677281.36 102.50 -598325.95 5678134.91 102.50 -598326.28 5677977.91 102.50 -598326.31 5679932.52 98.75 -598326.54 5679882.63 98.75 -598326.73 5677535.80 102.50 -598326.83 5686121.48 95.00 -598326.91 5679922.54 98.75 -598326.96 5682558.12 96.25 -598327.20 5679892.61 98.75 -598327.52 5679912.56 98.75 -598327.62 5682405.19 96.25 -598327.68 5680670.57 98.75 -598327.86 5679902.59 98.75 -598328.00 5683509.15 95.00 -598328.50 5679502.96 98.75 -598328.52 5679863.09 98.75 -598328.55 5681190.99 97.25 -598328.86 5681160.11 97.50 -598328.91 5678253.23 101.25 -598329.30 5682508.57 95.75 -598329.40 5681169.97 97.25 -598329.54 5678434.83 98.75 -598329.89 5680927.95 98.75 -598329.94 5682627.86 96.25 -598330.35 5683120.38 97.50 -598330.45 5682382.02 96.25 -598330.52 5682414.71 96.25 -598330.76 5682618.20 96.25 -598330.85 5678319.45 100.00 -598331.05 5686257.88 95.00 -598331.05 5683025.92 98.75 -598331.20 5682424.32 96.25 -598331.24 5680857.02 98.75 -598331.42 5680598.76 98.75 -598331.51 5682637.63 96.25 -598331.59 5679853.58 98.75 -598331.68 5682743.62 97.50 -598331.80 5677289.46 102.50 -598331.80 5682912.78 98.75 -598332.07 5678604.77 98.75 -598332.33 5679493.87 98.75 -598332.36 5683525.86 95.00 -598332.49 5677527.63 102.50 -598332.75 5678127.58 102.50 -598333.13 5686113.80 95.00 -598333.38 5678797.48 98.75 -598334.20 5680960.97 98.75 -598334.50 5686323.99 95.00 -598334.60 5682310.18 96.25 -598334.66 5679844.06 98.75 -598334.92 5680632.69 98.75 -598334.97 5679484.23 98.75 -598335.11 5680677.04 98.75 -598335.16 5683516.08 95.00 -598335.32 5682609.93 96.25 -598335.57 5681167.48 97.50 -598335.71 5678245.93 101.25 -598335.72 5681177.41 97.25 -598335.94 5678427.15 98.75 -598336.21 5677978.68 102.50 -598336.25 5682555.26 96.25 -598336.31 5682646.14 96.25 -598336.57 5686249.56 95.00 -598336.70 5681196.36 97.25 -598337.46 5677518.97 102.50 -598337.47 5679474.57 98.75 -598337.74 5679834.55 98.75 -598337.99 5677297.29 102.50 -598338.28 5683032.82 98.75 -598338.39 5678119.36 102.50 -598338.76 5678313.52 100.00 -598339.11 5679464.71 98.75 -598339.28 5686105.98 95.00 -598339.68 5680925.98 98.75 -598339.89 5683123.35 97.50 -598339.98 5682380.75 96.25 -598340.19 5678610.61 98.75 -598340.40 5683524.14 95.00 -598340.42 5686240.53 95.00 -598340.79 5680599.35 98.75 -598340.81 5679454.87 98.75 -598340.81 5679825.04 98.75 -598341.23 5680857.25 98.75 -598341.25 5680684.91 98.75 -598341.27 5682740.79 97.50 -598341.57 5682910.68 98.75 -598341.91 5678802.68 98.75 -598342.09 5678419.28 98.75 -598342.16 5681174.97 97.50 -598342.20 5677510.16 102.50 -598342.23 5681184.68 97.25 -598342.30 5678238.47 101.25 -598342.40 5686230.73 95.00 -598343.25 5678110.66 102.50 -598343.88 5680958.48 98.75 -598343.89 5679815.53 98.75 -598344.18 5679445.47 98.75 -598344.26 5682312.48 96.25 -598344.32 5680635.73 98.75 -598344.32 5686322.60 95.00 -598344.55 5681202.17 97.25 -598344.80 5682607.76 96.25 -598344.97 5677304.45 102.50 -598345.11 5686097.93 95.00 -598345.15 5686221.13 95.00 -598345.26 5683039.97 98.75 -598345.45 5682556.64 96.25 -598345.89 5682648.73 96.25 -598346.21 5677978.59 102.50 -598346.26 5677501.06 102.50 -598346.68 5678307.59 100.00 -598347.06 5679806.04 98.75 -598347.07 5678101.42 102.50 -598347.13 5678229.73 101.25 -598347.30 5680692.87 98.75 -598347.63 5678617.25 98.75 -598347.97 5678411.19 98.75 -598348.38 5679436.49 98.75 -598348.66 5683128.08 97.50 -598348.74 5681182.45 97.50 -598348.84 5678809.54 98.75 -598349.06 5681191.65 97.25 -598349.15 5686212.04 95.00 -598349.52 5682382.53 96.25 -598349.56 5677491.62 102.50 -598349.56 5680924.50 98.75 -598349.99 5680601.77 98.75 -598350.34 5679796.60 98.75 -598350.61 5678092.07 102.50 -598350.70 5678220.45 101.25 -598350.85 5682737.96 97.50 -598350.87 5686089.82 95.00 -598351.23 5680857.48 98.75 -598351.53 5682911.18 98.75 -598351.71 5681208.77 97.25 -598351.94 5677311.61 102.50 -598352.69 5677482.13 102.50 -598353.01 5682563.12 96.25 -598353.03 5678818.43 98.75 -598353.27 5680639.81 98.75 -598353.59 5680956.14 98.75 -598353.61 5679787.15 98.75 -598353.77 5678210.95 101.25 -598353.86 5686203.25 95.00 -598353.96 5682314.61 96.25 -598354.01 5678082.66 102.50 -598354.19 5679428.37 98.75 -598354.23 5677662.06 101.25 -598354.24 5677652.15 101.25 -598354.24 5683043.22 98.75 -598354.29 5686323.35 95.00 -598354.58 5680699.50 98.75 -598354.58 5682609.16 96.25 -598354.66 5678403.82 98.75 -598354.88 5678624.14 98.75 -598354.95 5677672.02 101.25 -598355.02 5678302.10 100.00 -598355.03 5678828.22 98.75 -598355.32 5681189.94 97.50 -598355.34 5677472.49 102.50 -598355.85 5682648.73 96.25 -598356.07 5681198.44 97.25 -598356.07 5677681.90 101.25 -598356.19 5677978.01 102.50 -598356.23 5677642.37 101.25 -598356.47 5678072.99 102.50 -598356.92 5679777.72 98.75 -598356.93 5678201.48 101.25 -598357.02 5678838.01 98.75 -598357.32 5683133.07 97.50 -598357.40 5686082.36 95.00 -598357.88 5677462.82 102.50 -598357.94 5686194.16 95.00 -598358.23 5677632.59 101.25 -598358.30 5678063.17 102.50 -598358.39 5682387.06 96.25 -598358.61 5681215.67 97.25 -598358.76 5677691.51 101.25 -598359.23 5677318.45 102.50 -598359.45 5680923.01 98.75 -598359.54 5680601.35 98.75 -598359.61 5678847.65 98.75 -598359.68 5677452.98 102.50 -598359.85 5678053.29 102.50 -598359.92 5682570.20 96.25 -598360.01 5679420.24 98.75 -598360.08 5678192.01 101.25 -598360.50 5682735.42 97.50 -598360.84 5677622.96 101.25 -598361.07 5680855.88 98.75 -598361.40 5678043.41 102.50 -598361.41 5682912.32 98.75 -598361.45 5677701.13 101.25 -598361.49 5677443.15 102.50 -598361.89 5678396.91 98.75 -598362.16 5680644.07 98.75 -598362.37 5678630.67 98.75 -598362.49 5678857.21 98.75 -598362.49 5677711.00 101.25 -598362.84 5677720.97 101.25 -598362.94 5680704.99 98.75 -598363.09 5681205.22 97.25 -598363.13 5679769.89 98.75 -598363.29 5677433.31 102.50 -598363.31 5680953.80 98.75 -598363.52 5678033.64 102.50 -598363.54 5677730.92 101.25 -598363.59 5682317.02 96.25 -598363.60 5686185.92 95.00 -598363.65 5678182.69 101.25 -598363.65 5681194.80 97.50 -598363.90 5682606.47 96.25 -598364.11 5683044.77 98.75 -598364.13 5678298.16 100.00 -598364.16 5677613.62 101.25 -598364.26 5686324.11 95.00 -598364.37 5677423.37 102.50 -598364.42 5686075.31 95.00 -598364.69 5677740.84 101.25 -598365.08 5682578.72 96.25 -598365.36 5677980.03 102.50 -598365.37 5678866.78 98.75 -598365.43 5677413.43 102.50 -598365.70 5677780.66 101.25 -598365.81 5682648.49 96.25 -598365.84 5678023.92 102.50 -598365.84 5677750.75 101.25 -598365.97 5679412.23 98.75 -598365.98 5677770.68 101.25 -598366.13 5677403.46 102.50 -598366.19 5683137.58 97.50 -598366.25 5677760.70 101.25 -598366.34 5681221.61 97.25 -598366.67 5677393.50 102.50 -598366.78 5677325.01 102.50 -598366.87 5677790.53 101.25 -598367.18 5682391.74 96.25 -598367.34 5682588.20 96.25 -598367.57 5682501.84 96.25 -598367.89 5686177.17 95.00 -598368.12 5678173.80 101.25 -598368.24 5682598.12 96.25 -598368.44 5682492.08 96.25 -598368.64 5677800.35 101.25 -598368.89 5677334.72 102.50 -598369.02 5678014.48 102.50 -598369.06 5686167.24 95.00 -598369.08 5680600.76 98.75 -598369.33 5680921.53 98.75 -598369.34 5679762.05 98.75 -598369.42 5678390.34 98.75 -598369.57 5677605.23 101.25 -598369.72 5681113.26 98.75 -598369.91 5677384.04 102.50 -598370.08 5686157.30 95.00 -598370.12 5681211.98 97.25 -598370.31 5682733.52 97.50 -598370.39 5677344.59 102.50 -598370.55 5681103.45 98.75 -598370.55 5680853.17 98.75 -598370.64 5678875.16 98.75 -598370.75 5686067.65 95.00 -598370.96 5682915.29 98.75 -598371.15 5677354.56 102.50 -598371.16 5677809.99 101.25 -598371.25 5680647.93 98.75 -598371.48 5678634.77 98.75 -598371.86 5677364.54 102.50 -598372.02 5682321.66 96.25 -598372.21 5680708.61 98.75 -598372.22 5682510.66 96.25 -598372.35 5686147.63 95.00 -598372.51 5681122.82 98.75 -598372.58 5677374.51 102.50 -598372.69 5679404.84 98.75 -598373.01 5682483.87 96.25 -598373.03 5680951.46 98.75 -598373.06 5678005.33 102.50 -598373.06 5681093.86 98.75 -598373.16 5681197.70 97.50 -598373.17 5678165.19 101.25 -598373.17 5686058.09 95.00 -598373.23 5677986.19 102.50 -598373.51 5686320.33 95.00 -598373.52 5681220.66 97.25 -598373.56 5678294.86 100.00 -598373.98 5683046.31 98.75 -598374.09 5677819.54 101.25 -598374.55 5677995.69 102.50 -598374.98 5677596.84 101.25 -598375.53 5686138.15 95.00 -598375.54 5682648.81 96.25 -598375.55 5679754.22 98.75 -598375.61 5682397.07 96.25 -598375.64 5683140.84 97.50 -598376.35 5681084.47 98.75 -598376.47 5681131.85 98.75 -598376.54 5678883.23 98.75 -598376.58 5686048.75 95.00 -598377.00 5678383.82 98.75 -598377.26 5682519.24 96.25 -598378.07 5677828.64 101.25 -598378.57 5680599.61 98.75 -598378.67 5682675.29 96.25 -598378.96 5682921.23 98.75 -598379.04 5680847.91 98.75 -598379.14 5678157.20 101.25 -598379.21 5680920.04 98.75 -598379.32 5682328.40 96.25 -598379.41 5679397.45 98.75 -598379.57 5682665.49 96.25 -598379.89 5686129.18 95.00 -598380.22 5682732.29 97.50 -598380.83 5680650.14 98.75 -598380.97 5678636.38 98.75 -598381.04 5682656.04 96.25 -598381.23 5681075.80 98.75 -598381.50 5686040.27 95.00 -598381.96 5682485.65 96.25 -598382.02 5680710.32 98.75 -598382.16 5677589.97 101.25 -598382.72 5677837.48 101.25 -598382.74 5680949.09 98.75 -598382.74 5682527.57 96.25 -598382.76 5686316.56 95.00 -598382.84 5681139.37 98.75 -598383.01 5683050.06 98.75 -598383.10 5681198.34 97.50 -598383.23 5678292.57 100.00 -598383.29 5678890.51 98.75 -598384.01 5679748.92 98.75 -598384.15 5682402.19 96.25 -598384.56 5686120.35 95.00 -598384.58 5678377.30 98.75 -598384.72 5678148.98 101.25 -598384.74 5682682.40 96.25 -598385.19 5683143.73 97.50 -598385.83 5679389.84 98.75 -598385.95 5682335.75 96.25 -598386.94 5682927.26 98.75 -598387.30 5680842.28 98.75 -598387.41 5681068.13 98.75 -598387.77 5680601.78 98.75 -598387.81 5677846.04 101.25 -598387.99 5686032.78 95.00 -598388.13 5682492.18 96.25 -598389.09 5680918.56 98.75 -598389.31 5678140.12 101.25 -598389.41 5677583.12 101.25 -598389.81 5686111.92 95.00 -598389.87 5682534.32 96.25 -598390.17 5682731.38 97.50 -598390.54 5678634.09 98.75 -598390.56 5680651.87 98.75 -598390.57 5681145.43 98.75 -598390.62 5682582.68 96.25 -598390.63 5679381.08 98.75 -598390.79 5678897.12 98.75 -598390.93 5682592.64 96.25 -598391.83 5683054.67 98.75 -598391.89 5681195.22 97.50 -598391.89 5682501.40 96.25 -598391.92 5686312.65 95.00 -598391.93 5680711.56 98.75 -598392.44 5680946.72 98.75 -598392.52 5679743.68 98.75 -598393.06 5682342.12 96.25 -598393.06 5682406.07 96.25 -598393.14 5678291.24 100.00 -598393.36 5678372.81 98.75 -598393.59 5677854.18 101.25 -598393.77 5682686.54 96.25 -598393.91 5678131.26 101.25 -598394.36 5680835.23 98.75 -598394.59 5681061.24 98.75 -598394.88 5682933.31 98.75 -598394.90 5683146.07 97.50 -598394.96 5682601.44 96.25 -598395.44 5679372.32 98.75 -598395.98 5682510.48 96.25 -598396.16 5677575.77 101.25 -598396.48 5680605.42 98.75 -598396.54 5686027.70 95.00 -598396.54 5686104.53 95.00 -598396.68 5682574.78 96.25 -598397.90 5682540.23 96.25 -598398.28 5678903.72 98.75 -598398.31 5678122.30 101.25 -598398.79 5686305.38 95.00 -598399.02 5680917.71 98.75 -598399.17 5678629.04 98.75 -598399.64 5677862.11 101.25 -598400.11 5682730.95 97.50 -598400.12 5681148.12 98.75 -598400.24 5679363.56 98.75 -598400.30 5681189.98 97.50 -598400.36 5680650.94 98.75 -598400.39 5680827.27 98.75 -598401.01 5678112.83 101.25 -598401.28 5683056.57 98.75 -598401.33 5679738.97 98.75 -598401.61 5678286.05 100.00 -598401.68 5680713.58 98.75 -598402.02 5682940.30 98.75 -598402.04 5681054.64 98.75 -598402.21 5678102.92 101.25 -598402.25 5680944.83 98.75 -598402.36 5682518.12 96.25 -598402.62 5682344.79 96.25 -598402.71 5678369.28 98.75 -598402.90 5678092.96 101.25 -598402.94 5677568.45 101.25 -598402.98 5682405.11 96.25 -598403.18 5680612.04 98.75 -598403.22 5682606.50 96.25 -598403.27 5686097.15 95.00 -598403.37 5682688.99 96.25 -598404.41 5678083.09 101.25 -598404.74 5683147.38 97.50 -598404.82 5686022.23 95.00 -598405.20 5682569.78 96.25 -598405.66 5686298.12 95.00 -598406.09 5677869.73 101.25 -598406.18 5678073.29 101.25 -598406.29 5682545.60 96.25 -598406.33 5680819.24 98.75 -598406.82 5680551.16 98.75 -598406.86 5679356.26 98.75 -598406.90 5678622.71 98.75 -598407.20 5678906.89 98.75 -598408.13 5680620.22 98.75 -598408.79 5683050.66 98.75 -598408.86 5682525.67 96.25 -598408.97 5680917.67 98.75 -598409.16 5682947.30 98.75 -598409.30 5681185.71 97.50 -598409.60 5677561.03 101.25 -598409.74 5678063.97 101.25 -598409.80 5681048.44 98.75 -598409.86 5678280.43 100.00 -598410.05 5682732.04 97.50 -598410.05 5681147.46 98.75 -598410.14 5680649.59 98.75 -598410.33 5679734.63 98.75 -598410.50 5686090.25 95.00 -598410.53 5680541.90 98.75 -598411.20 5680716.60 98.75 -598411.32 5686015.50 95.00 -598411.50 5686290.09 95.00 -598411.51 5686005.63 95.00 -598411.82 5682400.64 96.25 -598412.07 5678365.75 98.75 -598412.10 5682685.69 96.25 -598412.10 5680943.13 98.75 -598412.15 5680811.12 98.75 -598412.16 5678054.30 101.25 -598412.20 5682347.36 96.25 -598412.36 5682675.80 96.25 -598412.40 5677877.45 101.25 -598412.68 5682604.47 96.25 -598412.92 5682465.46 96.25 -598414.13 5680627.53 98.75 -598414.14 5680557.10 98.75 -598414.23 5680532.64 98.75 -598414.27 5683150.40 97.50 -598414.30 5678044.55 101.25 -598414.38 5679349.68 98.75 -598414.64 5678616.38 98.75 -598414.65 5685996.20 95.00 -598414.81 5682550.77 96.25 -598414.95 5677552.60 101.25 -598415.01 5683042.85 98.75 -598415.08 5682569.42 96.25 -598415.65 5681139.63 98.75 -598416.34 5682667.43 96.25 -598416.59 5686281.49 95.00 -598416.60 5682458.79 96.25 -598416.73 5681129.74 98.75 -598416.91 5682531.30 96.25 -598417.17 5678907.51 98.75 -598417.57 5681119.82 98.75 -598417.64 5682952.35 98.75 -598417.80 5680802.88 98.75 -598417.81 5686083.43 95.00 -598418.07 5678274.73 100.00 -598418.16 5677885.60 101.25 -598418.41 5681109.90 98.75 -598418.58 5680914.93 98.75 -598418.74 5682252.44 96.25 -598418.90 5678035.75 101.25 -598418.92 5680523.85 98.75 -598419.09 5681184.80 97.50 -598419.12 5681044.97 98.75 -598419.26 5681099.99 98.75 -598419.34 5679730.29 98.75 -598419.40 5682735.18 97.50 -598419.57 5679087.24 98.75 -598419.63 5685987.81 95.00 -598419.81 5681125.33 97.50 -598419.89 5680648.01 98.75 -598419.93 5681115.36 97.50 -598420.09 5679077.26 98.75 -598420.28 5681105.40 97.50 -598420.29 5677544.17 101.25 -598420.38 5682472.01 96.25 -598420.45 5682395.65 96.25 -598420.50 5680720.26 98.75 -598420.64 5682598.56 96.25 -598420.74 5683034.68 98.75 -598420.79 5681090.16 98.75 -598420.99 5681112.98 96.25 -598421.02 5681122.78 96.25 -598421.06 5681095.46 97.50 -598421.14 5677895.08 101.25 -598421.27 5680633.89 98.75 -598421.44 5678362.27 98.75 -598421.61 5678609.23 98.75 -598421.67 5681103.20 96.25 -598421.68 5686272.89 95.00 -598421.85 5679096.18 98.75 -598421.91 5679343.11 98.75 -598422.05 5680942.82 98.75 -598422.11 5682348.04 96.25 -598422.13 5681135.02 97.50 -598422.23 5682260.91 96.25 -598422.29 5683229.78 97.50 -598422.47 5681080.34 98.75 -598422.68 5681060.60 98.75 -598422.95 5683155.06 97.50 -598422.97 5681132.38 96.25 -598423.00 5681093.52 96.25 -598423.31 5679068.18 98.75 -598423.36 5682564.61 96.25 -598423.38 5683239.71 97.50 -598423.46 5680794.63 98.75 -598423.49 5680558.45 98.75 -598423.51 5682555.64 96.25 -598423.59 5681070.51 98.75 -598423.70 5680515.09 98.75 -598423.73 5681085.90 97.50 -598423.92 5677904.66 101.25 -598423.94 5683220.03 97.50 -598423.98 5678027.17 101.25 -598425.11 5686076.61 95.00 -598425.13 5678267.91 100.00 -598425.18 5682245.06 96.25 -598425.36 5681084.00 96.25 -598425.52 5683025.91 98.75 -598425.53 5682664.66 96.25 -598425.63 5677535.73 101.25 -598425.68 5682536.02 96.25 -598425.71 5680505.36 98.75 -598426.07 5682461.05 96.25 -598426.23 5683249.19 97.50 -598426.26 5680642.03 98.75 -598426.37 5683210.34 97.50 -598426.45 5681076.33 97.50 -598426.50 5685980.73 95.00 -598426.58 5681141.41 96.25 -598427.02 5681143.66 97.50 -598427.14 5678908.12 98.75 -598427.21 5682955.26 98.75 -598427.23 5677914.06 101.25 -598428.19 5680912.19 98.75 -598428.21 5681066.52 97.50 -598428.29 5680496.01 98.75 -598428.36 5679725.98 98.75 -598428.36 5681052.74 98.75 -598428.37 5681041.31 98.75 -598428.43 5682739.46 97.50 -598428.46 5678601.94 98.75 -598428.48 5680786.00 98.75 -598428.50 5681074.72 96.25 -598428.64 5682601.97 96.25 -598428.72 5683200.63 97.50 -598428.81 5682477.28 96.25 -598428.86 5680725.67 98.75 -598428.88 5679059.89 98.75 -598428.90 5682390.37 96.25 -598429.04 5681184.58 97.50 -598429.10 5678018.60 101.25 -598429.28 5679102.71 98.75 -598429.41 5683162.39 97.50 -598429.65 5682252.19 95.00 -598429.69 5677923.71 101.25 -598429.83 5677526.68 101.25 -598429.84 5686267.58 95.00 -598429.92 5677642.52 100.00 -598430.28 5677652.33 100.00 -598430.65 5679338.36 98.75 -598430.67 5678259.60 100.00 -598431.07 5683190.91 97.50 -598431.11 5681120.27 96.00 -598431.14 5678359.86 98.75 -598431.27 5682264.73 96.25 -598431.34 5681110.68 96.00 -598431.80 5681101.10 96.00 -598431.95 5680941.76 98.75 -598432.01 5682348.73 96.25 -598432.15 5683018.46 98.75 -598432.24 5683256.42 97.50 -598432.87 5683181.10 97.50 -598432.90 5681148.77 96.25 -598433.07 5681129.64 96.00 -598433.13 5677633.06 100.00 -598433.16 5686070.93 95.00 -598433.29 5680777.24 98.75 -598433.43 5680557.62 98.75 -598433.43 5681091.72 96.00 -598433.51 5677932.93 101.25 -598433.64 5682259.17 95.00 -598433.69 5681150.67 97.50 -598433.93 5677517.58 101.25 -598433.95 5682610.22 96.25 -598433.97 5678009.89 101.25 -598434.02 5681059.05 97.50 -598434.02 5683171.18 97.50 -598434.13 5682240.77 96.25 -598434.31 5681066.73 96.25 -598434.45 5679051.59 98.75 -598434.92 5682244.07 95.00 -598434.96 5682539.65 96.25 -598435.07 5682465.31 96.25 -598435.22 5685975.94 95.00 -598435.36 5677660.94 100.00 -598435.40 5682664.07 96.25 -598435.51 5678594.86 98.75 -598435.55 5682960.46 98.75 -598435.85 5682620.00 96.25 -598435.86 5680489.52 98.75 -598435.95 5678251.13 100.00 -598436.60 5681082.66 96.00 -598436.62 5682629.93 96.25 -598436.67 5680731.82 98.75 -598436.69 5681138.43 96.00 -598436.74 5678910.41 98.75 -598436.96 5681048.05 98.75 -598437.15 5677942.22 101.25 -598437.25 5681036.84 98.75 -598437.35 5682385.09 96.25 -598437.40 5679721.71 98.75 -598437.43 5682482.29 96.25 -598437.49 5680908.53 98.75 -598437.61 5682743.41 97.50 -598437.73 5677508.35 101.25 -598437.96 5677624.38 100.00 -598438.06 5679107.48 98.75 -598438.09 5680768.48 98.75 -598438.28 5681180.86 97.50 -598438.43 5678000.96 101.25 -598438.71 5683010.93 98.75 -598438.77 5686263.11 95.00 -598439.63 5679334.01 98.75 -598439.97 5678183.09 100.00 -598440.03 5678242.02 100.00 -598440.07 5677951.75 101.25 -598440.22 5680944.54 98.75 -598440.36 5682268.74 96.25 -598440.43 5677669.54 100.00 -598440.83 5678193.04 100.00 -598440.84 5678357.45 98.75 -598440.91 5681154.34 96.25 -598441.00 5682638.52 96.25 -598441.10 5677961.68 101.25 -598441.11 5677991.44 101.25 -598441.30 5683259.98 97.50 -598441.42 5678173.24 100.00 -598441.43 5677499.08 101.25 -598441.44 5681146.73 96.00 -598441.68 5678202.99 100.00 -598441.69 5681107.30 96.00 -598441.88 5680759.35 98.75 -598441.89 5677971.63 101.25 -598441.92 5682349.13 96.25 -598442.14 5681074.85 96.00 -598442.14 5681155.91 97.50 -598442.23 5680739.94 98.75 -598442.36 5686067.04 95.00 -598442.38 5681116.80 96.00 -598442.49 5677981.59 101.25 -598442.53 5678212.95 100.00 -598442.53 5681062.43 96.25 -598442.62 5681055.22 97.50 -598442.90 5682261.76 95.00 -598442.92 5681097.97 96.00 -598443.20 5678163.41 100.00 -598443.26 5678222.91 100.00 -598443.29 5679046.97 98.75 -598443.29 5680925.12 100.00 -598443.31 5677615.94 100.00 -598443.32 5680556.41 98.75 -598443.43 5680483.03 98.75 -598443.47 5678588.87 98.75 -598443.57 5682238.66 96.25 -598443.65 5682470.39 96.25 -598443.69 5680749.52 98.75 -598443.92 5682965.92 98.75 -598443.94 5685971.16 95.00 -598443.96 5682241.06 95.00 -598443.99 5678232.87 100.00 -598444.28 5682543.17 96.25 -598444.38 5681029.90 98.75 -598444.39 5681173.93 97.50 -598444.48 5677489.58 101.25 -598444.85 5682660.92 96.25 -598444.85 5683003.05 98.75 -598445.99 5678914.17 98.75 -598446.11 5682380.39 96.25 -598446.17 5682487.08 96.25 -598446.21 5681164.31 97.50 -598446.22 5679717.02 98.75 -598446.24 5677677.66 100.00 -598446.54 5681125.20 96.00 -598446.74 5680904.75 98.75 -598446.81 5682747.30 97.50 -598446.82 5681047.61 98.75 -598446.84 5679112.25 98.75 -598447.02 5681089.29 96.00 -598447.35 5686258.01 95.00 -598447.40 5678154.66 100.00 -598447.47 5682975.01 98.75 -598447.53 5677480.07 101.25 -598447.93 5680916.98 100.00 -598448.01 5680931.11 100.00 -598448.81 5681159.93 96.25 -598449.08 5682256.10 94.75 -598449.09 5682994.25 98.75 -598449.20 5682637.39 96.25 -598449.23 5679331.23 98.75 -598449.27 5682273.19 96.25 -598449.35 5681068.80 96.00 -598449.41 5681152.09 96.00 -598449.96 5680942.31 98.75 -598450.14 5681022.69 98.75 -598450.14 5677608.68 100.00 -598450.17 5683373.99 96.25 -598450.26 5678354.28 98.75 -598450.41 5682984.56 98.75 -598450.58 5677470.57 101.25 -598450.74 5683257.89 97.50 -598451.57 5686063.14 95.00 -598451.84 5678583.40 98.75 -598451.85 5682348.88 96.25 -598451.95 5681061.85 96.25 -598452.03 5677685.79 100.00 -598452.10 5681101.57 96.25 -598452.16 5682475.58 96.25 -598452.17 5679042.38 98.75 -598452.22 5682264.53 95.00 -598452.23 5681081.24 96.00 -598452.32 5682250.07 94.75 -598452.51 5681055.34 97.50 -598452.75 5681132.51 96.00 -598452.75 5681111.41 96.25 -598452.81 5685966.67 95.00 -598452.87 5678146.39 100.00 -598452.89 5680480.08 98.75 -598453.24 5680555.38 98.75 -598453.42 5682239.97 96.25 -598453.58 5682242.46 95.00 -598453.66 5681092.17 96.25 -598454.20 5682542.32 96.25 -598454.22 5682657.53 96.25 -598454.30 5680609.43 98.75 -598454.53 5682492.38 96.25 -598454.55 5682628.99 96.25 -598454.84 5677461.65 101.25 -598454.91 5679712.07 98.75 -598455.25 5678917.92 98.75 -598455.28 5681120.89 96.25 -598455.53 5679117.18 98.75 -598455.56 5682378.38 96.25 -598455.59 5686252.37 95.00 -598455.67 5680600.84 98.75 -598455.90 5681072.53 96.00 -598455.99 5680900.97 98.75 -598456.25 5681050.66 98.75 -598456.37 5680912.26 100.00 -598456.54 5682749.48 97.50 -598456.64 5683366.51 96.25 -598456.66 5678137.15 100.00 -598456.67 5681182.30 96.25 -598457.09 5686238.30 95.10 -598457.11 5677601.52 100.00 -598457.17 5682261.47 94.75 -598457.37 5681157.45 96.00 -598457.48 5677694.16 100.00 -598457.64 5680930.19 100.00 -598457.82 5682278.03 96.25 -598458.45 5683251.53 97.50 -598458.63 5681160.90 96.25 -598458.83 5679328.45 98.75 -598458.99 5681083.86 96.25 -598459.10 5681018.34 98.75 -598459.17 5678349.74 98.75 -598459.67 5682620.45 96.25 -598459.69 5680940.06 98.75 -598460.09 5681189.95 96.25 -598460.15 5681138.56 96.00 -598460.16 5680592.10 98.75 -598460.34 5678578.20 98.75 -598460.42 5677453.38 101.25 -598460.46 5678127.91 100.00 -598460.50 5682287.37 96.25 -598460.59 5681066.62 96.25 -598460.65 5682480.79 96.25 -598460.77 5686059.25 95.00 -598460.98 5682268.57 95.00 -598461.08 5682253.52 94.75 -598461.15 5681128.32 96.25 -598461.16 5681060.30 97.50 -598461.22 5679038.16 98.75 -598461.51 5682350.43 96.25 -598461.68 5682499.32 96.25 -598461.81 5685962.42 95.00 -598461.99 5683358.23 96.25 -598462.46 5682246.21 95.00 -598462.60 5680614.96 98.75 -598462.64 5680478.27 98.75 -598462.85 5682242.88 96.25 -598462.90 5681175.33 96.25 -598462.94 5677702.53 100.00 -598463.19 5680554.68 98.75 -598463.46 5679706.90 98.75 -598463.50 5682539.14 96.25 -598463.53 5681075.37 96.25 -598463.55 5682654.03 96.25 -598463.63 5686246.47 95.00 -598463.67 5681057.29 98.75 -598463.86 5682322.11 96.25 -598463.93 5677594.23 100.00 -598464.20 5679122.15 98.75 -598464.26 5678118.67 100.00 -598464.41 5683243.78 97.50 -598464.51 5678921.68 98.75 -598465.19 5682754.10 97.50 -598465.35 5680897.48 98.75 -598465.40 5682379.89 96.25 -598465.68 5682266.47 94.75 -598465.77 5680910.00 100.00 -598465.97 5681145.88 96.00 -598466.01 5677445.11 101.25 -598466.25 5681155.10 96.00 -598466.89 5681067.92 97.50 -598466.93 5683349.67 96.25 -598467.00 5682614.57 96.25 -598467.01 5680928.09 100.00 -598467.02 5680584.86 98.75 -598467.62 5677711.33 100.00 -598467.68 5681156.94 96.25 -598467.87 5678109.36 100.00 -598467.93 5678344.93 98.75 -598468.05 5681013.99 98.75 -598468.19 5682506.81 96.25 -598468.32 5680919.03 100.50 -598468.62 5681181.74 96.00 -598468.65 5685955.24 95.00 -598468.71 5679328.90 98.75 -598468.85 5683234.83 97.50 -598469.10 5680936.70 98.75 -598469.38 5686054.32 95.00 -598469.41 5682273.40 95.00 -598469.43 5681133.66 96.25 -598469.52 5681192.21 96.25 -598469.70 5678574.70 98.75 -598469.89 5682484.36 96.25 -598469.95 5682257.41 94.75 -598470.18 5681372.44 96.25 -598470.18 5677586.43 100.00 -598470.51 5679034.72 98.75 -598470.60 5681064.37 98.75 -598470.67 5678099.77 100.00 -598470.77 5682251.24 95.00 -598470.86 5686239.56 95.00 -598470.92 5682353.58 96.25 -598471.23 5682533.22 96.25 -598471.53 5682247.75 96.25 -598471.57 5681380.88 96.25 -598471.60 5677436.83 101.25 -598471.73 5678283.37 100.00 -598471.76 5680618.71 98.75 -598471.78 5683341.05 96.25 -598471.84 5677720.39 100.00 -598472.10 5679701.92 98.75 -598472.18 5681076.16 97.50 -598472.31 5681176.38 96.25 -598472.36 5682326.90 96.25 -598472.48 5682649.61 96.25 -598472.59 5680477.56 98.75 -598472.60 5680556.16 98.75 -598472.81 5678927.17 98.75 -598472.87 5679127.12 98.75 -598473.15 5683225.81 97.50 -598473.32 5682759.91 97.50 -598473.48 5678090.18 100.00 -598473.58 5678274.67 100.00 -598473.96 5682514.94 96.25 -598474.11 5677729.93 100.00 -598474.15 5680577.96 98.75 -598474.25 5682619.03 96.25 -598474.54 5682270.02 94.75 -598474.77 5681509.64 96.25 -598474.79 5680894.20 98.75 -598475.10 5682382.19 96.25 -598475.10 5677739.84 100.00 -598475.12 5682524.77 96.25 -598475.17 5680907.74 100.00 -598475.39 5685947.93 95.00 -598476.04 5681518.71 96.25 -598476.12 5681500.49 96.25 -598476.16 5683332.19 96.25 -598476.19 5680925.03 100.00 -598476.25 5686231.41 95.00 -598476.32 5678291.31 100.00 -598476.43 5677578.64 100.00 -598476.59 5678339.93 98.75 -598476.64 5681418.80 96.25 -598476.92 5681153.61 96.25 -598477.00 5681009.64 98.75 -598477.08 5681071.73 98.75 -598477.25 5682263.83 94.75 -598477.40 5686048.35 95.00 -598477.41 5683216.77 97.50 -598477.91 5677749.42 100.00 -598478.09 5682277.77 95.00 -598478.21 5681138.18 96.25 -598478.35 5677429.51 101.25 -598478.44 5682257.18 95.00 -598478.52 5680933.33 98.75 -598478.53 5678081.57 100.00 -598478.56 5678266.27 100.00 -598478.64 5679329.98 98.75 -598478.88 5681316.21 96.25 -598478.96 5681386.83 96.25 -598479.07 5678571.20 98.75 -598479.15 5682254.16 96.25 -598479.16 5681492.03 96.25 -598479.30 5686222.01 95.00 -598479.37 5681192.49 96.25 -598479.39 5681372.42 96.25 -598479.41 5682358.53 96.25 -598479.50 5682486.90 96.25 -598479.52 5686212.01 95.00 -598479.75 5686202.02 95.00 -598479.76 5682627.34 96.25 -598479.86 5681082.29 97.50 -598479.91 5686172.05 95.00 -598479.98 5682643.29 96.25 -598479.98 5686192.03 95.00 -598480.00 5680562.09 98.75 -598480.07 5686182.04 95.00 -598480.43 5679033.53 98.75 -598480.44 5678933.61 98.75 -598480.65 5677759.03 100.00 -598480.68 5683323.41 96.25 -598481.05 5682766.21 97.50 -598481.08 5681002.93 98.75 -598481.11 5680993.63 98.75 -598481.16 5681412.71 96.25 -598481.22 5680621.86 98.75 -598481.24 5680571.98 98.75 -598481.26 5679697.90 98.75 -598481.46 5681178.91 96.25 -598481.53 5679132.09 98.75 -598481.66 5683207.73 97.50 -598481.87 5686162.29 95.00 -598481.89 5681426.50 96.25 -598481.97 5682328.70 96.25 -598482.05 5681512.14 96.00 -598482.53 5680476.74 98.75 -598482.57 5685941.05 95.00 -598482.68 5677570.85 100.00 -598482.69 5681308.21 96.25 -598482.88 5681524.80 96.25 -598482.99 5677768.74 100.00 -598483.64 5678072.99 100.00 -598483.65 5681381.13 96.00 -598484.07 5682386.38 96.25 -598484.31 5678258.37 100.00 -598484.41 5680891.51 98.75 -598484.44 5678333.82 98.75 -598484.58 5680905.47 100.00 -598484.82 5683198.27 97.50 -598484.85 5686152.84 95.00 -598485.13 5682635.73 96.25 -598485.36 5681485.22 96.25 -598485.37 5677422.42 101.25 -598485.41 5686042.38 95.00 -598485.42 5681322.09 96.25 -598485.47 5680922.36 100.00 -598485.62 5682263.74 95.00 -598485.83 5681076.41 98.75 -598485.87 5678290.69 100.00 -598486.47 5682260.91 96.25 -598486.60 5677777.99 100.00 -598486.70 5680985.39 98.75 -598486.74 5681154.70 96.25 -598486.95 5682364.90 96.25 -598487.04 5683315.83 96.25 -598487.38 5682278.41 95.00 -598487.40 5681141.77 96.25 -598487.60 5683188.68 97.50 -598487.62 5679333.98 98.75 -598487.70 5677562.26 100.00 -598487.73 5681390.72 96.25 -598487.83 5678940.32 98.75 -598487.93 5680929.99 98.75 -598488.18 5682773.10 97.50 -598488.27 5681375.74 96.25 -598488.30 5678567.40 98.75 -598488.75 5682484.99 96.25 -598488.82 5681423.34 96.00 -598489.10 5681191.16 96.25 -598489.22 5681316.62 96.00 -598489.40 5679138.24 98.75 -598489.49 5678064.93 100.00 -598489.53 5681084.73 97.50 -598489.63 5681252.12 96.25 -598489.96 5681430.91 96.25 -598490.00 5681260.37 96.25 -598490.04 5681414.79 96.25 -598490.18 5686144.39 95.00 -598490.35 5679032.63 98.75 -598490.38 5683179.08 97.50 -598490.69 5679695.29 98.75 -598490.70 5681309.30 96.25 -598490.80 5685935.63 95.00 -598490.86 5680624.30 98.75 -598490.87 5678251.34 100.00 -598491.03 5677786.95 100.00 -598491.21 5681177.53 96.25 -598491.21 5681510.15 96.25 -598491.53 5681528.10 96.25 -598491.72 5682328.27 96.25 -598491.85 5681500.91 96.25 -598491.92 5678327.19 98.75 -598492.13 5677553.31 100.00 -598492.17 5682392.00 96.25 -598492.24 5682782.23 97.50 -598492.32 5682270.79 95.00 -598492.34 5686035.39 95.00 -598492.38 5677415.32 101.25 -598492.42 5680475.51 98.75 -598492.81 5683169.41 97.50 -598492.86 5682268.50 96.25 -598493.05 5683308.03 96.25 -598493.32 5681491.78 96.25 -598493.52 5682372.35 96.25 -598493.54 5681325.63 96.25 -598493.99 5681483.31 96.25 -598494.09 5680903.81 100.00 -598494.11 5683159.50 97.50 -598494.12 5680889.27 98.75 -598494.53 5678267.65 100.25 -598494.83 5680919.93 100.00 -598494.86 5678286.86 100.00 -598495.24 5680980.43 98.75 -598495.27 5681079.50 98.75 -598495.29 5681184.85 96.25 -598495.70 5681518.24 96.25 -598495.79 5683149.65 97.50 -598495.81 5681146.40 96.25 -598495.86 5678057.23 100.00 -598495.94 5678945.71 98.75 -598496.12 5677795.38 100.00 -598496.31 5682791.36 97.50 -598496.57 5677544.36 100.00 -598496.60 5681154.96 96.25 -598496.71 5679337.77 98.75 -598496.83 5681380.19 96.25 -598497.19 5678562.82 98.75 -598497.19 5681392.68 96.25 -598497.21 5679144.47 98.75 -598497.32 5682479.90 96.25 -598497.35 5683299.12 96.25 -598497.66 5680927.70 98.75 -598497.69 5686137.94 95.00 -598497.85 5686027.05 95.00 -598498.27 5682276.85 96.25 -598498.38 5681313.84 96.25 -598498.38 5681418.96 96.25 -598498.41 5678319.73 98.75 -598498.76 5681249.39 96.25 -598498.81 5683140.21 97.50 -598499.00 5681264.52 96.25 -598499.06 5681430.85 96.25 -598499.08 5682399.18 96.25 -598499.19 5681087.17 97.50 -598499.50 5681526.68 96.25 -598499.57 5678247.38 100.00 -598499.67 5685931.14 95.00 -598500.27 5679033.85 98.75 -598500.28 5677535.10 100.00 -598500.47 5677409.61 101.25 -598500.68 5679695.52 98.75 -598500.70 5680625.94 98.75 -598501.35 5682329.46 96.25 -598501.47 5682377.30 96.25 -598501.66 5683290.22 96.25 -598501.72 5682799.75 97.50 -598501.87 5681594.73 96.25 -598502.11 5678049.43 100.00 -598502.32 5680474.27 98.75 -598502.35 5681326.91 96.25 -598502.73 5678281.39 100.00 -598502.89 5683131.08 97.50 -598503.36 5686018.71 95.00 -598503.46 5682285.35 96.25 -598503.57 5678311.16 98.75 -598503.60 5682472.38 96.25 -598503.67 5680902.46 100.00 -598503.67 5677525.70 100.00 -598503.76 5680594.28 100.00 -598503.77 5677801.81 100.00 -598504.01 5680975.72 98.75 -598504.09 5680917.24 100.00 -598504.11 5680888.90 98.75 -598504.50 5681604.02 96.25 -598504.70 5680585.38 100.00 -598504.70 5682407.38 96.25 -598505.03 5679150.69 98.75 -598505.04 5681080.23 98.75 -598505.38 5682695.86 96.25 -598505.64 5678948.11 98.75 -598505.79 5681383.78 96.25 -598505.88 5686065.32 96.30 -598506.07 5678558.23 98.75 -598506.08 5682705.19 96.25 -598506.14 5686132.73 95.00 -598506.33 5681395.77 96.25 -598506.46 5683281.59 96.25 -598506.54 5679339.57 98.75 -598506.73 5681316.90 96.25 -598506.90 5681422.75 96.25 -598507.06 5677516.30 100.00 -598507.15 5682808.14 97.50 -598507.39 5680925.41 98.75 -598507.42 5682513.37 96.25 -598507.56 5681588.03 96.25 -598507.79 5683122.40 97.50 -598507.81 5681269.14 96.25 -598508.10 5681252.84 96.25 -598508.14 5682504.04 96.25 -598508.15 5681432.80 96.25 -598508.34 5678041.62 100.00 -598508.67 5685926.89 95.00 -598508.69 5678248.71 100.00 -598508.71 5681666.03 96.25 -598508.83 5681613.03 96.25 -598508.97 5682464.01 96.25 -598509.04 5681085.98 97.50 -598509.14 5681675.76 96.25 -598509.16 5677404.70 101.25 -598509.56 5678274.39 100.00 -598509.66 5682523.05 96.25 -598509.77 5682415.95 96.25 -598509.78 5682687.14 96.25 -598509.94 5681323.90 96.25 -598510.02 5680577.16 100.00 -598510.18 5679035.07 98.75 -598510.33 5677506.86 100.00 -598510.60 5680626.98 98.75 -598510.60 5681622.61 96.25 -598510.63 5680600.56 100.00 -598510.68 5679695.74 98.75 -598510.76 5677808.93 100.00 -598510.77 5686012.00 95.00 -598510.93 5682331.37 96.25 -598510.96 5679158.35 98.75 -598511.37 5682376.69 96.25 -598511.53 5682289.50 96.25 -598511.56 5682817.09 97.50 -598511.72 5683273.21 96.25 -598511.73 5680471.29 98.75 -598512.18 5678306.13 98.75 -598512.40 5681714.08 96.25 -598512.51 5682425.32 96.25 -598512.52 5680567.80 100.00 -598512.63 5680912.71 100.00 -598512.68 5681685.03 96.25 -598512.75 5680970.96 98.75 -598512.80 5682454.81 96.25 -598513.10 5683113.94 97.50 -598513.24 5680901.11 100.00 -598513.30 5682495.75 96.25 -598513.34 5682435.25 96.25 -598513.39 5681631.83 96.25 -598513.63 5681723.98 96.25 -598513.71 5681657.57 96.25 -598513.89 5678256.60 100.00 -598514.00 5682709.64 96.25 -598514.05 5682445.19 96.25 -598514.06 5682531.61 96.25 -598514.07 5680889.36 98.75 -598514.25 5681704.36 96.25 -598514.35 5677497.74 100.00 -598514.41 5678033.70 100.00 -598514.44 5678265.91 100.00 -598514.78 5681387.32 96.25 -598514.81 5681427.42 96.25 -598514.90 5679167.54 98.75 -598514.92 5681079.07 98.75 -598515.12 5681694.55 96.25 -598515.22 5678554.36 98.75 -598515.29 5682678.92 96.25 -598515.31 5686128.75 95.00 -598515.34 5678950.52 98.75 -598515.68 5681397.86 96.25 -598515.77 5681590.97 96.25 -598516.32 5679341.62 98.75 -598516.45 5681733.57 96.25 -598516.54 5681258.13 96.25 -598516.58 5681273.85 96.25 -598516.79 5680922.17 98.75 -598516.96 5685921.41 95.00 -598516.98 5683264.83 96.25 -598517.19 5681433.93 96.25 -598517.22 5677816.50 100.00 -598517.48 5680560.35 100.00 -598517.75 5682824.79 97.50 -598517.96 5677399.99 101.25 -598518.40 5682669.50 96.25 -598518.54 5686005.74 95.00 -598518.55 5681640.39 96.25 -598518.84 5679176.72 98.75 -598518.95 5681084.94 97.50 -598519.13 5680906.07 100.00 -598519.16 5677489.00 100.00 -598519.36 5681600.13 96.25 -598519.68 5678100.77 98.75 -598519.68 5681649.65 96.25 -598519.94 5678025.38 100.00 -598520.15 5679035.11 98.75 -598520.15 5683106.86 97.50 -598520.27 5682659.85 96.25 -598520.30 5680599.00 100.00 -598520.49 5678300.65 98.75 -598520.54 5682333.15 96.25 -598520.55 5680627.47 98.75 -598520.67 5679695.97 98.75 -598520.77 5682649.94 96.25 -598520.78 5680467.14 98.75 -598520.97 5682374.40 96.25 -598520.99 5682538.46 96.25 -598521.01 5682489.49 96.25 -598521.12 5683255.89 96.25 -598521.34 5681742.14 96.25 -598521.40 5682290.83 96.25 -598521.46 5680966.14 98.75 -598521.47 5678091.84 98.75 -598521.48 5681609.87 96.25 -598521.87 5681392.97 96.25 -598522.00 5677825.27 100.00 -598522.78 5679185.90 98.75 -598522.90 5685859.70 95.00 -598523.22 5682708.21 96.25 -598523.28 5685849.87 95.00 -598523.92 5680890.89 98.75 -598524.09 5678108.99 98.75 -598524.55 5686124.94 95.00 -598524.67 5677480.66 100.00 -598524.78 5681263.73 96.25 -598524.79 5683246.71 96.25 -598524.79 5681077.78 98.75 -598524.95 5678552.07 98.75 -598525.04 5678952.92 98.75 -598525.11 5681618.90 96.25 -598525.13 5682831.50 97.50 -598525.22 5685915.87 95.00 -598525.25 5680402.04 98.75 -598525.46 5678017.05 100.00 -598525.61 5685869.27 95.00 -598525.66 5681277.93 96.25 -598525.88 5680918.03 98.75 -598526.09 5679343.70 98.75 -598526.23 5680411.95 98.75 -598526.37 5680556.70 100.00 -598526.40 5685840.85 95.00 -598526.61 5677395.03 101.25 -598526.63 5685999.87 95.00 -598526.79 5677834.04 100.00 -598527.16 5678084.14 98.75 -598527.23 5683099.82 97.50 -598527.25 5680421.87 98.75 -598527.55 5681749.96 96.25 -598527.64 5679194.61 98.75 -598528.32 5682482.78 96.25 -598528.39 5678294.55 98.75 -598528.50 5680460.83 98.75 -598528.50 5683237.55 96.25 -598528.68 5680431.73 98.75 -598528.79 5685878.68 95.00 -598528.89 5681084.22 97.50 -598529.01 5682644.76 96.25 -598529.29 5680392.93 98.75 -598529.33 5680595.38 100.00 -598529.73 5682336.41 96.25 -598529.87 5685907.08 95.00 -598530.09 5679699.00 98.75 -598530.13 5679034.70 98.75 -598530.17 5677843.42 100.00 -598530.26 5680625.19 98.75 -598530.28 5680961.54 98.75 -598530.32 5680441.57 98.75 -598530.58 5682541.03 96.25 -598530.88 5682373.96 96.25 -598530.99 5678008.73 100.00 -598531.09 5680451.39 98.75 -598531.21 5681626.77 96.25 -598531.21 5682292.53 96.25 -598531.30 5678115.48 98.75 -598531.79 5677473.68 100.00 -598532.04 5682703.68 96.25 -598532.25 5680911.03 98.75 -598532.33 5685887.98 95.00 -598532.72 5685897.82 95.00 -598532.73 5681269.72 96.25 -598532.74 5685833.18 95.00 -598532.81 5679203.16 98.75 -598532.81 5682474.22 96.25 -598533.01 5681758.28 96.25 -598533.17 5682837.41 97.50 -598533.22 5677852.93 100.00 -598533.31 5686120.34 95.00 -598533.34 5680383.82 98.75 -598533.45 5680893.78 98.75 -598533.94 5683229.28 96.25 -598533.95 5681075.12 98.75 -598534.39 5682425.61 96.25 -598534.49 5677862.84 100.00 -598534.56 5682435.16 96.25 -598534.64 5678077.92 98.75 -598534.66 5677999.53 100.00 -598534.68 5678549.77 98.75 -598534.71 5677882.73 100.00 -598534.77 5678955.14 98.75 -598534.89 5682464.57 96.25 -598535.02 5685994.44 95.00 -598535.03 5681281.31 96.25 -598535.05 5677389.70 101.25 -598535.33 5677872.76 100.00 -598535.67 5681767.75 96.25 -598535.76 5683095.17 97.50 -598535.98 5682454.70 96.25 -598536.00 5679344.62 98.75 -598536.07 5680555.35 100.00 -598536.29 5678288.46 98.75 -598536.51 5677892.55 100.00 -598536.75 5682444.85 96.25 -598536.77 5680902.12 98.75 -598536.90 5681723.07 96.25 -598537.15 5681777.63 96.25 -598537.56 5677989.97 100.00 -598537.63 5681713.31 96.25 -598537.92 5681080.14 97.50 -598537.98 5679211.71 98.75 -598537.99 5681634.11 96.25 -598538.07 5682640.76 96.25 -598538.19 5682416.62 96.25 -598538.44 5680591.98 100.00 -598538.64 5681732.80 96.25 -598538.65 5682340.40 96.25 -598538.93 5677902.24 100.00 -598539.00 5677466.77 100.00 -598539.32 5680957.38 98.75 -598539.39 5681786.86 96.25 -598539.40 5683221.04 96.25 -598539.42 5679702.59 98.75 -598539.48 5678120.57 98.75 -598539.97 5680622.90 98.75 -598540.11 5679034.29 98.75 -598540.13 5682375.73 96.25 -598540.21 5682543.38 96.25 -598540.32 5680377.29 98.75 -598540.45 5677980.41 100.00 -598540.64 5682698.74 96.25 -598541.01 5682294.31 96.25 -598541.02 5681275.22 96.25 -598541.13 5686114.11 95.00 -598541.51 5677911.89 100.00 -598541.52 5682842.90 97.50 -598541.53 5681068.76 98.75 -598542.06 5685829.90 95.00 -598542.47 5681741.87 96.25 -598542.73 5681642.78 96.25 -598543.05 5681652.71 96.25 -598543.05 5681662.70 96.25 -598543.05 5681672.70 96.25 -598543.15 5679220.26 98.75 -598543.37 5677970.85 100.00 -598543.41 5685989.01 95.00 -598543.49 5677384.37 101.25 -598543.69 5677921.64 100.00 -598543.71 5678074.58 98.75 -598543.73 5681286.11 96.25 -598543.99 5680542.00 100.00 -598544.19 5678282.37 98.75 -598544.43 5680551.02 100.00 -598544.46 5678548.40 98.75 -598544.65 5678956.65 98.75 -598544.70 5681682.55 96.25 -598544.89 5687257.26 95.00 -598545.01 5681710.06 96.25 -598545.04 5680532.78 100.00 -598545.32 5683092.25 97.50 -598545.47 5687247.32 95.00 -598545.83 5681074.43 97.50 -598545.87 5677931.39 100.00 -598545.99 5679344.85 98.75 -598546.08 5686105.45 95.00 -598546.11 5677961.27 100.00 -598546.14 5683213.80 96.25 -598546.30 5677951.28 100.00 -598546.49 5677941.30 100.00 -598546.53 5687237.38 95.00 -598546.79 5682636.25 96.25 -598546.92 5681793.35 96.25 -598546.99 5677460.90 100.00 -598547.19 5682412.48 96.25 -598547.69 5682343.94 96.25 -598547.74 5680952.13 98.75 -598547.77 5687227.47 95.00 -598547.94 5679707.53 98.75 -598548.06 5680590.11 100.00 -598548.12 5682381.63 96.25 -598548.15 5679028.62 98.75 -598548.38 5681061.55 98.75 -598548.63 5681749.40 96.25 -598548.68 5678118.59 98.75 -598548.82 5681691.34 96.25 -598548.87 5680372.16 98.75 -598549.00 5687217.56 95.00 -598549.16 5687266.30 95.00 -598549.18 5679228.21 98.75 -598549.25 5682693.81 96.25 -598549.68 5680620.63 98.75 -598549.86 5682290.23 96.25 -598549.91 5682848.32 97.50 -598550.03 5687207.63 95.00 -598550.07 5682544.59 96.25 -598550.10 5687197.64 95.00 -598550.16 5687187.65 95.00 -598550.23 5687177.66 95.00 -598550.37 5681278.34 96.25 -598550.45 5681293.34 96.25 -598550.66 5687167.69 95.00 -598551.17 5686096.86 95.00 -598551.36 5687157.72 95.00 -598551.41 5677378.45 101.25 -598551.51 5685826.81 95.00 -598551.64 5678275.76 98.75 -598552.03 5685983.95 95.00 -598552.06 5687147.75 95.00 -598552.18 5681066.76 97.50 -598552.69 5681079.91 96.25 -598552.76 5687137.79 95.00 -598552.88 5683206.56 96.25 -598553.09 5678072.40 98.75 -598553.30 5678961.40 98.75 -598553.42 5687275.33 95.00 -598553.62 5680531.40 100.00 -598554.16 5682629.62 96.25 -598554.38 5678549.63 98.75 -598554.80 5681729.53 96.75 -598554.83 5681710.61 96.25 -598555.00 5683089.80 97.50 -598555.17 5687128.12 95.00 -598555.36 5679236.06 98.75 -598555.39 5681054.48 98.75 -598555.52 5677455.71 100.00 -598555.69 5679713.84 98.75 -598555.71 5679022.09 98.75 -598555.80 5681756.20 96.25 -598555.88 5680946.41 98.75 -598555.94 5681088.18 96.25 -598555.96 5678112.38 98.75 -598555.96 5681797.62 96.25 -598555.97 5679344.74 98.75 -598556.63 5681697.34 96.25 -598556.77 5686088.60 95.00 -598556.85 5681300.98 96.25 -598556.96 5681070.94 96.25 -598557.11 5682412.08 96.25 -598557.35 5682345.36 96.25 -598557.40 5682385.10 96.25 -598557.43 5678102.78 98.75 -598557.68 5687284.37 95.00 -598557.70 5677370.70 101.25 -598557.83 5680589.87 100.00 -598557.87 5682688.90 96.25 -598557.88 5687118.50 95.00 -598558.34 5682853.68 97.50 -598558.45 5680369.90 98.75 -598558.64 5682286.00 96.25 -598558.74 5678268.74 98.75 -598558.97 5681059.46 97.50 -598559.08 5681233.32 96.25 -598559.39 5680618.39 98.75 -598559.44 5681242.75 96.25 -598559.53 5682543.27 96.25 -598559.89 5683199.58 96.25 -598560.25 5681279.18 96.25 -598560.58 5687108.89 95.00 -598560.65 5685978.89 95.00 -598560.75 5687293.86 95.00 -598561.16 5685824.45 95.00 -598561.27 5682622.73 96.25 -598561.64 5680565.98 101.00 -598561.70 5678966.80 98.75 -598561.96 5681047.23 98.75 -598561.97 5680536.48 100.00 -598562.02 5681062.53 96.25 -598562.09 5679243.29 98.75 -598562.66 5681763.32 96.25 -598562.76 5678072.57 98.75 -598562.81 5678095.21 98.75 -598562.95 5686080.75 95.00 -598563.04 5680939.52 98.75 -598563.07 5679015.33 98.75 -598563.29 5687099.27 95.00 -598563.44 5679720.16 98.75 -598563.51 5681308.39 96.25 -598563.56 5677449.79 100.00 -598563.61 5687303.43 95.00 -598563.96 5681400.66 96.25 -598563.99 5677362.95 101.25 -598564.03 5681803.30 96.25 -598564.07 5681093.86 96.25 -598564.19 5681051.13 97.50 -598564.31 5678550.85 98.75 -598564.45 5683191.24 96.25 -598564.56 5682406.78 96.25 -598564.59 5681712.15 96.25 -598564.91 5683088.72 97.50 -598564.95 5687089.46 95.00 -598565.05 5682474.35 96.50 -598565.13 5687313.27 95.00 -598565.66 5681701.32 96.25 -598565.79 5681053.81 96.25 -598565.84 5687079.51 95.00 -598565.96 5682389.96 96.25 -598565.96 5679344.42 98.75 -598566.18 5687323.21 95.00 -598566.62 5687333.19 95.00 -598566.73 5687069.56 95.00 -598566.80 5682859.01 97.50 -598566.86 5678262.95 98.75 -598566.91 5683181.68 96.25 -598566.96 5682281.11 96.25 -598566.98 5687343.17 95.00 -598567.06 5682345.19 96.25 -598567.35 5687353.15 95.00 -598567.42 5682686.33 96.25 -598567.47 5681244.35 96.25 -598567.47 5681228.54 96.25 -598567.58 5680589.53 100.00 -598567.69 5687059.63 95.00 -598567.71 5687363.14 95.00 -598567.93 5681407.75 96.25 -598567.94 5682615.73 96.25 -598568.08 5687373.12 95.00 -598568.09 5680369.55 98.75 -598568.26 5681235.59 96.00 -598568.36 5681039.83 98.75 -598568.56 5682539.14 96.25 -598568.59 5685972.89 95.00 -598568.96 5682398.42 96.25 -598569.04 5678087.73 98.75 -598569.13 5680616.28 98.75 -598569.15 5681042.78 97.50 -598569.40 5678972.98 98.75 -598569.42 5679007.76 98.75 -598569.56 5681276.82 96.25 -598569.72 5681770.22 96.25 -598569.75 5679727.86 98.75 -598569.95 5687382.93 95.00 -598570.01 5680542.09 100.00 -598570.08 5680932.48 98.75 -598570.25 5686074.03 95.00 -598570.34 5678078.68 98.75 -598570.59 5681810.65 96.25 -598570.62 5686750.80 95.00 -598570.64 5679248.46 98.75 -598570.91 5685822.52 95.00 -598570.99 5687050.20 95.00 -598571.08 5677355.93 101.25 -598571.12 5681045.87 96.25 -598571.23 5681313.87 96.25 -598571.35 5683172.84 96.25 -598571.44 5677443.66 100.00 -598571.50 5678485.12 98.75 -598571.64 5678508.61 98.75 -598571.87 5681395.32 96.25 -598571.93 5683081.76 97.50 -598571.94 5678492.96 98.75 -598571.94 5687392.72 95.00 -598572.18 5681134.05 96.25 -598572.28 5678500.79 98.75 -598572.57 5681099.00 96.25 -598573.02 5678555.58 98.75 -598573.27 5681742.34 96.25 -598573.58 5683004.09 97.50 -598573.66 5681751.77 96.25 -598573.89 5683014.05 97.50 -598574.00 5682274.38 96.25 -598574.17 5687402.45 95.00 -598574.17 5681714.56 96.25 -598574.18 5681142.90 96.25 -598574.24 5681819.95 96.25 -598574.29 5687040.77 95.00 -598574.40 5682994.17 97.50 -598574.50 5682865.08 97.50 -598574.54 5678999.18 98.75 -598574.58 5686757.95 95.00 -598574.66 5681032.35 98.75 -598575.02 5678257.22 98.75 -598575.07 5678517.79 98.75 -598575.08 5683023.97 97.50 -598575.28 5682531.91 96.25 -598575.36 5681703.68 96.25 -598575.49 5686742.28 95.00 -598575.55 5678980.86 98.75 -598575.59 5681238.75 96.25 -598575.78 5683164.00 96.25 -598575.79 5679735.83 98.75 -598575.81 5681124.77 96.25 -598575.84 5681732.84 96.25 -598575.95 5679344.09 98.75 -598576.01 5681035.71 97.50 -598576.04 5681269.66 96.25 -598576.11 5685966.31 95.00 -598576.56 5682342.90 96.25 -598576.63 5681038.06 96.25 -598576.64 5680374.68 98.75 -598576.64 5687031.07 95.00 -598576.65 5678476.78 98.75 -598576.73 5683073.05 97.50 -598576.99 5680586.76 100.00 -598577.01 5683033.75 97.50 -598577.05 5687412.01 95.00 -598577.05 5682683.94 96.25 -598577.12 5680925.44 98.75 -598577.24 5681227.27 96.25 -598577.26 5681411.22 96.25 -598577.34 5682984.62 97.50 -598577.34 5681776.28 96.25 -598577.47 5682612.98 96.25 -598577.74 5678990.04 98.75 -598577.82 5681829.28 96.25 -598577.89 5681723.26 96.25 -598577.97 5680547.80 100.00 -598578.20 5686067.97 95.00 -598578.34 5677349.08 101.25 -598578.65 5687021.29 95.00 -598578.69 5683063.28 97.50 -598578.90 5681760.15 96.25 -598579.02 5681186.33 96.25 -598579.05 5677437.19 100.00 -598579.07 5680615.46 98.75 -598579.19 5679253.64 98.75 -598579.32 5681105.97 96.25 -598579.59 5683053.36 97.50 -598579.62 5683043.39 97.50 -598579.73 5681115.62 96.25 -598579.79 5682873.56 97.50 -598579.84 5685818.76 95.00 -598579.93 5687421.58 95.00 -598580.40 5683155.26 96.25 -598580.45 5682523.54 96.25 -598580.66 5687011.50 95.00 -598580.68 5681313.14 96.25 -598580.88 5681150.19 96.25 -598581.05 5681769.75 96.25 -598581.17 5681261.12 96.25 -598581.33 5681838.64 96.25 -598581.49 5678525.10 98.75 -598581.63 5682268.32 96.25 -598581.66 5681393.65 96.25 -598581.67 5681025.57 98.75 -598581.67 5682975.76 97.50 -598581.75 5678560.44 98.75 -598581.80 5678468.44 98.75 -598582.11 5679743.55 98.75 -598582.18 5681231.64 96.25 -598582.54 5681028.33 97.50 -598582.67 5687001.72 95.00 -598582.86 5681177.14 96.25 -598582.92 5681030.93 96.25 -598583.19 5678251.49 98.75 -598583.63 5685959.73 95.00 -598583.64 5682882.77 97.50 -598583.69 5686991.79 95.00 -598583.71 5687430.75 95.00 -598583.74 5686736.67 95.00 -598583.75 5682676.62 96.25 -598583.85 5686760.71 95.00 -598583.98 5680918.24 98.75 -598584.03 5680381.30 98.75 -598584.40 5686981.83 95.00 -598584.74 5682514.58 96.25 -598584.82 5681706.92 96.25 -598585.04 5681191.97 96.25 -598585.28 5683146.65 96.25 -598585.43 5686061.09 95.00 -598585.71 5686971.96 95.00 -598585.71 5681740.86 96.25 -598585.78 5677342.42 101.25 -598585.93 5679343.78 98.75 -598585.93 5680553.51 100.00 -598586.05 5681305.18 96.25 -598586.13 5681847.38 96.25 -598586.15 5682341.10 96.25 -598586.39 5680584.00 100.00 -598586.56 5677430.61 100.00 -598586.59 5681295.40 96.25 -598586.67 5681158.25 96.25 -598586.80 5682609.65 96.25 -598586.84 5681413.92 96.25 -598587.02 5681168.09 96.25 -598587.10 5681789.84 96.25 -598587.36 5682892.04 97.50 -598587.42 5681798.90 96.25 -598587.49 5682967.64 97.50 -598587.72 5685812.69 95.00 -598587.74 5679258.81 98.75 -598588.08 5681731.19 96.25 -598588.09 5681285.68 96.25 -598588.13 5686962.27 95.00 -598588.26 5678532.19 98.75 -598588.83 5687439.32 95.00 -598588.91 5681255.02 96.25 -598589.01 5680614.65 98.75 -598589.13 5678462.26 98.75 -598589.16 5679750.64 98.75 -598589.17 5681019.31 98.75 -598589.42 5682262.49 96.25 -598590.01 5681021.93 97.50 -598590.04 5682506.55 96.25 -598590.13 5681024.68 96.25 -598590.16 5683138.05 96.25 -598590.45 5682669.31 96.25 -598590.46 5680910.69 98.75 -598590.49 5678565.29 98.75 -598590.60 5682901.48 97.50 -598590.64 5685952.62 95.00 -598590.92 5681276.13 96.25 -598591.08 5680388.35 98.75 -598591.29 5686952.83 95.00 -598591.35 5678245.75 98.75 -598591.49 5681394.87 96.25 -598591.65 5681185.27 96.25 -598591.70 5686053.36 95.00 -598591.77 5681747.41 96.25 -598592.02 5681855.42 96.25 -598592.08 5677334.73 101.25 -598592.36 5681722.16 96.25 -598592.38 5682958.96 97.50 -598592.45 5681807.53 96.25 -598592.64 5682293.27 96.25 -598592.95 5680576.79 100.00 -598593.00 5677422.97 100.00 -598593.01 5686732.94 95.00 -598593.01 5681712.42 96.25 -598593.14 5686764.37 95.00 -598593.44 5682911.06 97.50 -598593.54 5680559.64 100.00 -598593.96 5687447.90 95.00 -598594.16 5682603.30 96.25 -598595.16 5683129.52 96.25 -598595.29 5686943.67 95.00 -598595.47 5685806.49 95.00 -598595.76 5682339.36 96.25 -598595.81 5679342.94 98.75 -598595.95 5682920.73 97.50 -598596.22 5679757.73 98.75 -598596.23 5682285.20 96.25 -598596.24 5680567.90 100.00 -598596.32 5680396.82 98.75 -598596.41 5679263.77 98.75 -598596.46 5681416.48 96.25 -598596.51 5681792.32 96.25 -598596.76 5682949.98 97.50 -598596.95 5680903.14 98.75 -598597.07 5681268.41 96.25 -598597.20 5678532.44 98.75 -598597.24 5681816.30 96.25 -598597.36 5686045.12 95.00 -598597.41 5678457.01 98.75 -598597.48 5685945.33 95.00 -598597.80 5681014.71 98.75 -598597.99 5681187.89 96.25 -598597.99 5677326.69 101.25 -598598.01 5682257.89 96.25 -598598.14 5681019.45 96.25 -598598.22 5681251.58 96.25 -598598.24 5681863.23 96.25 -598598.27 5682930.45 97.50 -598598.51 5682501.37 96.25 -598598.53 5687456.78 95.00 -598598.60 5681017.36 97.50 -598598.66 5682940.29 97.50 -598598.66 5681197.35 96.25 -598598.94 5682664.47 96.25 -598598.95 5680613.84 98.75 -598599.19 5678570.21 98.75 -598599.30 5686934.52 95.00 -598599.51 5678240.01 98.75 -598599.60 5678496.67 99.00 -598599.74 5682297.52 96.25 -598599.77 5682441.99 96.25 -598599.95 5681743.66 96.25 -598600.03 5681951.11 96.25 -598600.20 5677416.06 100.00 -598600.38 5681961.02 96.25 -598600.52 5682595.69 96.25 -598600.72 5683121.34 96.25 -598600.74 5682451.76 96.25 -598601.19 5686035.99 95.00 -598601.23 5681396.90 96.25 -598601.26 5686924.73 95.00 -598601.51 5680405.34 98.75 -598601.62 5685798.67 95.00 -598601.69 5681941.25 96.25 -598602.02 5681825.08 96.25 -598602.28 5686729.22 95.00 -598602.36 5686764.40 95.00 -598602.47 5681872.28 96.25 -598603.02 5686914.90 95.00 -598603.09 5687465.67 95.00 -598603.27 5679764.81 98.75 -598603.33 5681931.39 96.25 -598603.44 5680895.59 98.75 -598603.63 5681799.34 96.25 -598603.90 5677318.64 101.25 -598604.23 5680414.85 98.75 -598604.28 5686904.99 95.00 -598604.30 5686026.49 95.00 -598604.31 5685938.03 95.00 -598604.58 5682280.35 96.25 -598604.78 5681921.50 96.25 -598605.08 5679268.74 98.75 -598605.20 5679339.52 98.75 -598605.24 5682337.01 96.25 -598605.31 5681881.81 96.25 -598605.54 5686895.08 95.00 -598605.64 5681264.53 96.25 -598605.73 5682460.04 96.25 -598605.97 5678452.24 98.75 -598605.97 5678232.41 98.75 -598606.08 5681419.02 96.25 -598606.12 5681834.19 96.25 -598606.23 5681911.62 96.25 -598606.27 5683113.15 96.25 -598606.39 5680424.58 98.75 -598606.51 5678529.91 98.75 -598606.53 5681901.63 96.25 -598606.70 5681891.64 96.25 -598606.82 5682435.01 96.25 -598606.83 5682253.89 96.25 -598606.91 5686885.18 95.00 -598607.26 5681016.77 96.25 -598607.39 5681012.76 98.75 -598607.50 5681196.06 96.25 -598607.52 5681737.14 96.25 -598607.65 5687474.56 95.00 -598607.76 5685790.85 95.00 -598607.78 5678575.33 98.75 -598607.98 5681014.36 97.50 -598607.98 5681250.65 96.25 -598608.11 5682501.78 96.25 -598608.44 5686875.31 95.00 -598608.59 5686017.47 95.00 -598608.64 5677410.92 100.00 -598608.65 5682663.10 96.25 -598608.67 5680434.29 98.75 -598608.69 5680612.38 98.75 -598609.10 5682590.91 96.25 -598609.25 5681964.43 96.25 -598609.40 5682297.71 96.25 -598609.71 5678693.49 98.75 -598610.02 5686865.45 95.00 -598610.16 5681117.70 96.25 -598610.23 5681843.30 96.25 -598610.35 5679771.87 98.75 -598610.45 5686758.61 95.00 -598610.78 5681806.32 96.25 -598610.86 5685930.49 95.00 -598610.93 5681399.16 96.25 -598611.04 5680443.98 98.75 -598611.47 5677312.50 101.25 -598611.58 5678683.83 98.75 -598611.58 5686725.59 95.00 -598611.96 5681127.50 96.25 -598611.98 5686855.65 95.00 -598611.99 5683105.09 96.25 -598612.01 5680890.58 98.75 -598612.43 5678224.81 98.75 -598612.45 5678887.83 98.75 -598612.50 5678897.55 98.75 -598612.62 5682275.00 96.25 -598612.87 5686008.44 95.00 -598612.94 5678702.93 98.75 -598613.04 5679274.70 98.75 -598613.40 5687482.68 95.00 -598613.40 5680453.67 98.75 -598613.75 5682427.90 96.25 -598613.88 5685783.01 95.00 -598613.89 5681852.58 96.25 -598613.94 5686845.86 95.00 -598614.02 5682332.85 96.25 -598614.03 5678523.62 98.75 -598614.14 5678674.17 98.75 -598614.33 5681188.83 96.25 -598614.53 5678447.48 98.75 -598614.59 5679336.11 98.75 -598614.82 5678907.27 98.75 -598614.84 5678878.13 98.75 -598615.28 5682462.75 96.25 -598615.29 5678581.84 98.75 -598615.30 5681730.88 96.25 -598615.31 5681264.78 96.25 -598615.73 5681421.48 96.25 -598615.82 5686836.05 95.00 -598615.90 5683161.57 95.00 -598615.96 5680463.30 98.75 -598616.30 5682251.58 96.25 -598616.66 5681015.05 96.25 -598616.67 5686826.10 95.00 -598616.77 5681862.15 96.25 -598617.04 5681011.68 98.75 -598617.14 5681135.28 96.25 -598617.20 5681110.71 96.25 -598617.23 5678868.42 98.75 -598617.28 5686751.32 95.00 -598617.31 5685922.86 95.00 -598617.39 5682382.31 96.25 -598617.43 5682391.44 96.25 -598617.48 5680607.68 98.75 -598617.57 5679778.79 98.75 -598617.57 5686816.15 95.00 -598617.63 5678664.80 98.75 -598617.64 5681252.77 96.25 -598617.66 5683152.10 95.00 -598617.69 5682666.37 96.25 -598617.70 5681959.51 96.25 -598617.77 5683097.06 96.25 -598617.80 5681013.63 97.50 -598617.90 5682586.34 96.25 -598617.92 5682503.29 96.25 -598618.07 5681813.15 96.25 -598618.13 5678216.62 98.75 -598618.26 5677409.15 100.00 -598618.41 5678916.04 98.75 -598618.60 5678711.18 98.75 -598618.70 5686806.22 95.00 -598618.77 5681871.89 96.25 -598618.79 5686000.57 95.00 -598619.00 5683170.89 95.00 -598619.06 5682297.90 96.25 -598619.16 5680472.74 98.75 -598619.57 5687490.54 95.00 -598619.60 5681881.85 96.25 -598619.77 5685774.99 95.00 -598619.96 5682401.03 96.25 -598619.96 5686796.31 95.00 -598619.98 5678858.83 98.75 -598620.22 5677307.69 101.25 -598620.43 5681891.81 96.25 -598620.47 5682420.59 96.25 -598620.48 5683142.64 95.00 -598620.56 5681401.69 96.25 -598620.59 5679281.25 98.75 -598620.69 5680885.71 98.75 -598620.90 5686721.98 95.00 -598621.01 5681901.78 96.25 -598621.05 5681911.77 96.25 -598621.10 5681921.77 96.25 -598621.45 5678655.57 98.75 -598621.51 5682410.76 96.25 -598621.55 5678517.34 98.75 -598621.69 5686786.47 95.00 -598621.97 5682273.39 96.25 -598622.31 5681931.68 96.25 -598622.36 5678588.91 98.75 -598622.37 5680482.18 98.75 -598622.82 5681183.62 96.25 -598622.94 5679330.93 98.75 -598622.94 5682286.65 96.50 -598623.10 5678442.72 98.75 -598623.11 5683133.12 95.00 -598623.33 5681941.61 96.25 -598623.41 5685765.90 95.00 -598623.43 5685914.98 95.00 -598623.48 5681951.60 96.25 -598623.61 5682374.85 96.25 -598623.63 5681725.36 96.25 -598623.73 5681269.62 96.25 -598623.82 5686776.74 95.00 -598624.01 5678849.68 98.75 -598624.23 5683179.26 95.00 -598624.26 5678208.98 98.75 -598624.34 5683123.38 95.00 -598624.38 5678719.33 98.75 -598624.54 5682673.55 96.25 -598624.78 5679785.71 98.75 -598624.81 5683113.52 95.00 -598625.02 5683090.35 96.25 -598625.15 5682463.35 96.25 -598625.17 5681141.11 96.25 -598625.36 5681423.98 96.25 -598625.57 5680491.62 98.75 -598625.69 5678646.52 98.75 -598625.82 5682252.29 96.25 -598625.84 5687498.31 95.00 -598625.89 5685993.53 95.00 -598625.92 5681112.31 96.25 -598625.92 5685756.28 95.00 -598626.14 5686748.62 95.00 -598626.15 5681015.01 96.25 -598626.27 5680602.97 98.75 -598626.62 5682581.61 96.25 -598626.72 5682621.31 96.00 -598626.81 5681012.15 98.75 -598627.11 5681817.28 96.25 -598627.11 5678920.96 98.75 -598627.16 5678509.32 98.75 -598627.19 5686767.34 95.00 -598627.21 5678597.61 98.75 -598627.22 5682506.69 96.25 -598627.38 5681253.30 96.25 -598627.44 5682302.59 96.25 -598627.60 5681013.72 97.50 -598627.87 5682682.49 96.25 -598628.09 5678840.56 98.75 -598628.13 5679287.80 98.75 -598628.17 5683104.29 95.00 -598628.25 5677408.99 100.00 -598628.78 5680501.07 98.75 -598628.82 5686757.49 95.00 -598628.92 5678637.23 98.75 -598628.99 5685906.67 95.00 -598629.09 5678607.25 98.75 -598629.11 5683138.24 94.75 -598629.14 5678627.23 98.75 -598629.21 5685746.96 95.00 -598629.37 5678617.24 98.75 -598629.52 5683128.50 94.75 -598629.55 5682692.27 96.25 -598629.76 5680882.00 98.75 -598629.87 5677305.54 101.25 -598630.16 5681718.46 96.25 -598630.18 5681404.23 96.25 -598630.19 5686718.31 95.00 -598630.33 5680510.78 98.75 -598630.33 5680520.75 98.75 -598630.45 5679324.35 98.75 -598630.55 5678727.19 98.75 -598630.71 5682277.22 96.25 -598630.75 5681276.68 96.25 -598630.99 5681120.89 96.25 -598631.01 5683185.79 95.00 -598631.38 5681416.57 95.85 -598631.57 5681178.85 96.25 -598631.68 5683118.89 94.75 -598631.72 5679792.89 98.75 -598631.88 5679296.95 98.75 -598632.22 5681699.01 96.25 -598632.22 5680530.42 98.75 -598632.24 5678831.46 98.75 -598632.33 5683083.68 96.25 -598632.45 5678440.16 98.75 -598632.57 5682371.39 96.25 -598632.71 5678501.24 98.75 -598632.75 5687505.53 95.00 -598632.96 5681708.94 96.25 -598633.38 5685986.97 95.00 -598633.46 5682701.36 96.25 -598633.50 5678205.21 98.75 -598633.95 5685738.21 95.00 -598633.96 5681145.80 96.25 -598634.15 5681689.20 96.25 -598634.16 5683146.43 94.75 -598634.29 5683109.39 94.75 -598634.69 5685898.50 95.00 -598634.75 5681018.52 96.25 -598634.84 5681427.03 96.25 -598634.98 5679315.89 98.75 -598635.07 5682463.73 96.25 -598635.23 5682308.27 96.25 -598635.27 5683097.73 95.00 -598635.27 5681248.53 96.25 -598635.29 5679306.35 98.75 -598635.34 5682576.89 96.25 -598635.37 5682254.24 96.25 -598635.46 5680599.16 98.75 -598635.80 5680539.55 98.75 -598635.82 5678925.87 98.75 -598636.00 5678492.07 98.75 -598636.01 5681015.01 98.75 -598636.31 5686710.97 95.00 -598636.48 5681820.73 96.25 -598636.63 5681017.16 97.50 -598636.76 5678822.54 98.75 -598636.78 5682506.61 96.25 -598637.17 5678734.69 98.75 -598637.28 5677413.26 100.00 -598637.41 5682284.12 96.25 -598638.02 5679800.64 98.75 -598638.05 5683100.52 94.75 -598638.18 5681283.32 96.25 -598638.46 5686672.05 95.00 -598638.57 5682709.76 96.25 -598638.68 5685729.47 95.00 -598638.78 5686682.03 95.00 -598638.87 5678482.70 98.75 -598638.99 5681239.55 96.25 -598639.01 5681172.35 96.25 -598639.22 5686692.01 95.00 -598639.62 5680880.62 98.75 -598639.68 5686662.14 95.00 -598639.73 5681407.04 96.25 -598639.78 5681681.34 96.25 -598639.79 5681125.52 96.25 -598639.81 5677305.80 101.25 -598639.86 5686701.98 95.00 -598640.13 5683187.13 95.00 -598640.29 5687511.95 95.00 -598640.35 5681153.12 96.25 -598640.42 5683078.60 96.25 -598640.48 5686533.75 95.00 -598640.52 5686524.05 95.00 -598640.90 5686652.22 95.00 -598641.20 5681163.00 96.25 -598641.56 5685981.22 95.00 -598641.80 5678439.48 98.75 -598641.83 5681230.04 96.25 -598642.16 5678814.19 98.75 -598642.37 5682371.21 96.25 -598642.41 5682292.30 96.25 -598642.61 5681023.96 96.25 -598642.66 5685892.46 95.00 -598642.70 5678473.73 98.75 -598642.71 5686474.79 95.00 -598642.77 5681698.12 96.25 -598642.92 5686642.45 95.00 -598643.13 5686465.05 95.00 -598643.17 5686514.45 95.00 -598643.18 5683091.83 95.00 -598643.27 5682570.96 96.25 -598643.33 5681688.14 96.25 -598643.39 5678205.09 98.75 -598643.40 5686504.46 95.00 -598643.46 5686543.10 95.00 -598643.54 5683146.51 94.75 -598643.81 5678742.16 98.75 -598643.81 5681020.47 98.75 -598643.83 5682309.51 96.25 -598644.07 5681023.51 97.50 -598644.12 5686494.50 95.00 -598644.15 5680545.00 98.75 -598644.32 5681430.08 96.25 -598644.33 5682257.87 96.25 -598644.37 5677763.99 100.00 -598644.42 5681260.34 96.25 -598644.64 5679808.09 98.75 -598644.66 5686484.59 95.00 -598644.69 5678930.45 98.75 -598644.74 5681268.99 96.25 -598644.74 5681086.90 96.25 -598644.85 5682717.44 96.25 -598644.88 5680595.88 98.75 -598644.93 5682464.91 96.25 -598645.01 5681096.37 96.25 -598645.38 5682301.49 96.25 -598645.39 5686632.78 95.00 -598645.40 5683094.05 94.75 -598645.55 5686455.36 95.00 -598645.64 5685722.77 95.00 -598645.78 5677418.38 100.00 -598646.06 5681823.58 96.25 -598646.14 5682503.91 96.25 -598646.34 5677755.24 100.00 -598646.34 5681288.64 96.25 -598646.52 5682275.58 95.00 -598646.65 5681221.52 96.25 -598646.67 5681088.66 97.50 -598646.79 5678464.89 98.75 -598647.16 5681077.71 96.25 -598647.42 5681706.20 96.25 -598647.53 5683181.11 95.00 -598647.68 5681098.39 97.50 -598647.71 5681733.51 96.25 -598647.91 5681031.70 96.25 -598648.31 5681723.73 96.25 -598648.34 5682284.49 95.00 -598648.40 5678806.38 98.75 -598648.40 5681094.26 98.75 -598648.45 5681130.45 96.25 -598648.53 5677772.17 100.00 -598648.71 5678455.28 98.75 -598648.86 5681105.01 96.25 -598648.87 5687517.07 95.00 -598648.92 5678446.21 98.75 -598648.95 5681079.17 97.50 -598649.01 5681084.75 98.75 -598649.16 5677308.96 101.25 -598649.22 5681410.04 96.25 -598649.42 5686623.64 95.00 -598649.48 5680879.28 98.75 -598649.52 5681031.55 97.50 -598649.66 5681028.30 98.75 -598649.74 5685975.48 95.00 -598649.75 5678750.17 98.75 -598650.15 5683076.83 96.25 -598650.21 5686549.87 95.00 -598650.33 5681068.70 96.25 -598650.62 5685886.42 95.00 -598650.66 5681742.99 96.25 -598650.74 5682293.51 95.00 -598650.93 5681276.54 96.25 -598651.08 5682564.83 96.25 -598651.16 5686447.52 95.00 -598651.29 5681040.58 96.25 -598651.35 5682303.04 95.00 -598651.46 5683086.57 95.00 -598651.53 5683141.27 94.75 -598651.57 5682724.22 96.25 -598651.77 5681075.36 98.75 -598651.91 5682263.55 96.25 -598652.00 5682373.62 96.25 -598652.03 5681714.59 96.25 -598652.18 5678797.15 98.75 -598652.19 5681254.21 96.25 -598652.41 5679814.39 98.75 -598652.44 5687290.33 95.00 -598652.47 5681069.97 97.50 -598652.49 5681059.42 96.25 -598652.50 5680550.44 98.75 -598652.65 5681213.95 96.25 -598652.70 5681040.86 97.50 -598653.03 5681049.88 96.25 -598653.18 5682470.11 96.25 -598653.20 5687300.16 95.00 -598653.21 5678206.11 98.75 -598653.32 5682497.05 96.25 -598653.40 5681102.51 98.75 -598653.53 5681106.18 97.50 -598653.54 5686614.54 95.00 -598653.54 5677424.67 100.00 -598653.58 5683173.35 95.00 -598653.60 5681037.11 98.75 -598653.91 5678934.32 98.75 -598653.97 5685717.34 95.00 -598654.06 5681752.39 96.25 -598654.08 5681431.44 96.25 -598654.16 5681050.52 97.50 -598654.16 5681060.36 97.50 -598654.32 5680592.69 98.75 -598654.55 5683090.71 94.75 -598654.55 5678758.84 98.75 -598654.83 5687310.02 95.00 -598654.88 5681066.09 98.75 -598654.95 5681828.07 96.25 -598655.06 5677750.95 100.00 -598655.31 5681046.72 98.75 -598655.65 5681111.67 96.25 -598655.72 5682274.83 95.00 -598655.81 5681056.49 98.75 -598655.85 5678787.85 98.75 -598655.87 5681291.54 96.25 -598656.37 5677778.23 100.00 -598656.49 5681204.77 96.25 -598656.52 5687281.31 95.00 -598656.62 5687319.84 95.00 -598656.88 5683133.03 94.75 -598656.94 5682487.86 96.25 -598656.95 5681761.96 96.25 -598657.09 5682271.79 96.25 -598657.11 5687522.66 95.00 -598657.21 5678768.48 98.75 -598657.21 5681135.17 96.25 -598657.44 5685969.14 95.00 -598657.46 5682309.70 95.00 -598657.54 5682478.34 96.25 -598658.02 5686605.61 95.00 -598658.26 5682652.86 96.25 -598658.27 5678778.21 98.75 -598658.31 5677312.96 101.25 -598658.58 5685880.38 95.00 -598658.83 5681412.25 96.25 -598658.99 5681246.93 96.25 -598659.08 5682558.98 96.25 -598659.31 5681281.93 96.25 -598659.37 5686442.13 95.00 -598659.43 5680879.28 98.75 -598659.55 5677432.59 100.00 -598659.61 5682720.74 96.25 -598659.77 5687329.16 95.00 -598659.79 5682282.89 95.00 -598659.94 5683077.75 96.25 -598660.04 5686551.68 95.00 -598660.14 5682643.54 96.25 -598660.17 5679820.69 98.75 -598660.25 5681771.36 96.25 -598660.71 5683086.38 95.00 -598660.81 5681112.72 97.50 -598660.91 5683166.73 95.00 -598660.97 5682711.13 96.25 -598661.00 5683124.13 94.75 -598661.00 5682280.72 96.25 -598661.11 5681195.94 96.25 -598661.33 5682662.30 96.25 -598661.63 5682376.04 96.25 -598661.71 5681107.24 98.75 -598661.83 5683095.83 94.75 -598661.88 5682701.27 96.25 -598662.25 5680551.93 98.75 -598662.31 5685711.91 95.00 -598662.44 5678209.90 98.75 -598662.50 5686596.68 95.00 -598662.98 5683114.48 94.75 -598663.17 5682291.88 95.00 -598663.21 5681238.08 96.25 -598663.44 5678934.99 98.75 -598663.60 5682671.91 96.25 -598663.63 5682634.25 96.25 -598663.67 5682691.51 96.25 -598663.78 5680589.54 98.75 -598663.90 5681116.40 96.25 -598663.93 5681832.45 96.25 -598663.98 5682289.98 96.25 -598664.03 5681431.66 96.25 -598664.08 5683104.68 94.75 -598664.28 5677441.29 100.00 -598664.32 5687283.18 95.00 -598664.73 5687529.12 95.00 -598664.79 5681780.26 96.25 -598664.80 5685962.38 95.00 -598664.90 5677749.28 100.00 -598664.92 5682681.74 96.25 -598665.09 5682301.28 95.00 -598665.12 5687337.54 95.00 -598665.78 5681292.41 96.25 -598666.08 5677780.55 100.00 -598666.20 5681139.46 96.25 -598666.50 5685874.29 95.00 -598666.54 5681228.68 96.25 -598666.60 5682299.37 96.25 -598666.74 5682310.74 95.00 -598667.30 5681188.22 96.25 -598667.55 5677450.72 100.00 -598667.71 5677316.29 101.25 -598667.91 5682554.58 96.25 -598668.08 5683092.36 95.00 -598668.23 5683160.11 95.00 -598668.53 5686588.80 95.00 -598668.74 5686440.39 95.00 -598668.78 5681412.45 96.25 -598668.88 5680882.34 98.75 -598669.02 5679825.29 98.75 -598669.10 5681283.67 96.25 -598669.11 5682308.79 96.25 -598669.33 5681789.17 96.25 -598669.36 5682626.17 96.25 -598669.73 5683079.13 96.25 -598669.96 5686552.65 95.00 -598670.03 5687537.41 95.00 -598670.29 5681219.45 96.25 -598670.65 5681112.38 97.50 -598670.76 5687290.82 95.00 -598670.94 5682379.48 96.25 -598671.12 5678214.69 98.75 -598671.29 5677459.97 100.00 -598671.46 5685708.07 95.00 -598671.57 5681106.56 98.75 -598671.62 5682318.21 96.25 -598671.70 5680551.05 98.75 -598672.00 5685955.45 95.00 -598672.03 5683101.33 95.00 -598672.13 5681837.69 96.25 -598673.12 5687343.53 95.00 -598673.24 5678933.00 98.75 -598673.35 5681119.45 96.25 -598673.45 5680587.44 98.75 -598673.90 5681430.55 96.25 -598674.04 5681180.88 96.25 -598674.42 5685868.18 95.00 -598674.57 5687546.31 95.00 -598674.89 5677749.28 100.00 -598675.18 5686581.35 95.00 -598675.18 5682618.14 96.25 -598675.41 5683110.60 95.00 -598675.64 5677468.96 100.00 -598675.66 5687299.45 95.00 -598675.72 5681292.60 96.25 -598675.85 5677781.88 100.00 -598675.86 5681141.85 96.25 -598676.07 5681690.01 96.25 -598676.76 5683155.14 95.00 -598676.98 5681795.41 96.25 -598677.10 5682550.84 96.25 -598677.20 5677319.38 101.25 -598677.64 5681213.10 96.25 -598677.76 5686444.13 95.00 -598678.02 5679829.64 98.75 -598678.11 5681845.70 96.25 -598678.33 5680885.43 98.75 -598678.65 5681281.69 96.25 -598678.73 5681412.73 96.25 -598678.74 5682385.59 96.25 -598678.99 5685948.31 95.00 -598679.02 5682324.47 96.25 -598679.03 5678220.75 98.75 -598679.15 5682609.10 96.25 -598679.41 5677764.57 100.25 -598679.42 5681699.16 96.25 -598679.47 5687555.02 95.00 -598679.55 5683078.81 96.25 -598679.93 5686553.34 95.00 -598679.94 5680545.44 98.75 -598680.17 5681110.04 97.50 -598680.43 5677477.72 100.00 -598680.72 5685704.44 95.00 -598680.80 5681103.25 98.75 -598681.13 5681173.89 96.25 -598681.20 5687349.40 95.00 -598681.87 5686573.93 95.00 -598681.94 5687306.99 95.00 -598682.05 5681684.13 96.25 -598682.26 5682365.24 96.25 -598682.33 5685862.08 95.00 -598682.66 5682599.83 96.25 -598683.04 5678931.01 98.75 -598683.09 5681118.96 96.25 -598683.36 5683112.53 95.00 -598683.40 5680586.85 98.75 -598683.75 5681429.12 96.25 -598684.11 5681853.69 96.25 -598684.38 5687563.72 95.00 -598684.47 5681146.58 96.25 -598684.87 5677749.28 100.00 -598685.25 5686450.74 95.00 -598685.28 5681707.25 96.25 -598685.29 5683150.16 95.00 -598685.51 5682392.60 96.25 -598685.53 5677486.31 100.00 -598685.67 5681292.10 96.25 -598685.78 5677780.84 100.00 -598685.86 5678227.95 98.75 -598685.98 5685941.17 95.00 -598686.04 5681165.49 96.25 -598686.22 5682373.61 96.25 -598686.24 5682546.98 96.25 -598686.51 5681797.67 96.25 -598686.87 5677321.59 101.25 -598687.14 5682329.68 96.25 -598687.38 5681212.09 96.25 -598687.39 5679833.12 98.75 -598687.57 5681155.73 96.25 -598687.67 5682591.43 96.25 -598687.92 5680888.10 98.75 -598687.97 5686556.97 95.00 -598688.00 5681278.27 96.25 -598688.11 5682430.98 96.25 -598688.19 5680539.83 98.75 -598688.56 5686566.51 95.00 -598688.63 5682440.50 96.25 -598688.67 5681413.22 96.25 -598688.72 5682421.07 96.25 -598688.81 5683076.00 96.25 -598689.24 5687355.33 95.00 -598689.60 5681107.21 97.50 -598689.62 5685700.02 95.00 -598689.75 5682411.20 96.25 -598689.83 5687313.03 95.00 -598689.86 5687572.07 95.00 -598689.90 5681099.40 98.75 -598689.98 5682401.47 96.25 -598690.11 5685855.82 95.00 -598690.42 5681689.16 96.25 -598690.69 5681861.22 96.25 -598690.77 5681715.59 96.25 -598691.25 5677494.49 100.00 -598691.51 5678236.17 98.75 -598691.89 5683107.99 95.00 -598692.15 5681114.88 96.25 -598692.17 5678927.01 98.75 -598692.20 5685933.35 95.00 -598692.26 5681754.10 96.25 -598692.53 5681744.24 96.25 -598693.32 5686456.61 95.00 -598693.36 5680586.27 98.75 -598693.58 5681427.51 96.25 -598693.85 5683145.24 95.00 -598694.07 5682583.85 96.25 -598694.26 5682379.43 96.25 -598694.54 5681734.45 96.25 -598694.56 5681724.77 96.25 -598694.86 5677749.28 100.00 -598694.90 5682542.24 96.25 -598694.97 5681763.57 96.25 -598695.21 5681186.81 96.25 -598695.48 5687580.33 95.00 -598695.48 5681292.87 96.25 -598695.59 5677778.99 100.00 -598696.27 5682332.84 96.25 -598696.32 5680893.17 98.75 -598696.32 5680534.06 98.75 -598696.40 5681797.29 96.25 -598696.82 5677322.41 101.25 -598696.99 5682444.85 96.25 -598697.01 5681274.01 96.25 -598697.02 5683070.63 96.25 -598697.04 5679834.79 98.75 -598697.05 5681214.07 96.25 -598697.10 5687361.50 95.00 -598697.26 5681868.74 96.25 -598697.26 5685848.84 95.00 -598697.34 5681195.84 96.25 -598697.38 5678244.22 98.75 -598697.53 5681696.13 96.25 -598697.64 5677502.08 100.00 -598698.07 5681102.25 97.50 -598698.25 5685695.17 95.00 -598698.38 5685925.49 95.00 -598698.48 5687318.02 95.00 -598698.59 5681414.05 96.25 -598698.75 5678076.22 98.75 -598698.98 5678066.82 98.75 -598699.11 5681095.81 98.75 -598699.69 5683102.01 95.00 -598700.15 5681108.95 96.25 -598700.33 5681422.64 96.25 -598700.56 5678921.64 98.75 -598700.84 5681771.56 96.25 -598701.16 5681179.13 96.25 -598702.05 5686459.67 95.00 -598702.54 5683140.55 95.00 -598702.71 5678058.06 98.75 -598702.88 5682384.35 96.25 -598702.92 5680583.77 98.75 -598703.05 5682580.16 96.25 -598703.15 5682536.72 96.25 -598703.22 5683062.92 96.25 -598703.33 5681876.67 96.25 -598703.61 5681203.58 96.25 -598703.67 5687585.64 95.00 -598704.00 5681703.71 96.25 -598704.25 5678251.45 98.75 -598704.25 5677774.64 100.00 -598704.26 5680899.17 98.75 -598704.39 5678083.86 98.75 -598704.41 5685841.86 95.00 -598704.44 5680528.26 98.75 -598704.44 5681296.64 96.25 -598704.55 5685917.64 95.00 -598704.84 5677749.15 100.00 -598704.95 5687367.68 95.00 -598705.44 5685688.30 95.00 -598705.57 5681211.80 96.25 -598705.70 5682335.02 96.25 -598705.73 5681794.39 96.25 -598705.93 5677507.66 100.00 -598706.44 5681097.06 97.50 -598706.50 5683094.85 95.00 -598706.51 5681271.20 96.25 -598706.77 5677322.02 101.25 -598706.87 5682444.90 96.25 -598706.89 5687323.41 95.00 -598707.02 5679834.28 98.75 -598707.38 5681779.11 96.25 -598707.90 5681171.78 96.25 -598708.02 5683054.40 96.25 -598708.19 5681103.07 96.25 -598708.40 5681092.44 98.75 -598708.63 5681123.38 96.25 -598708.67 5678915.79 98.75 -598709.04 5681884.87 96.25 -598709.12 5681712.29 96.25 -598709.17 5678050.64 98.75 -598710.49 5681132.33 96.25 -598710.74 5681751.29 96.25 -598710.88 5680578.32 98.75 -598710.95 5686456.02 95.00 -598710.95 5677767.34 100.00 -598711.02 5685910.03 95.00 -598711.13 5678258.68 98.75 -598711.22 5683135.85 95.00 -598711.57 5685834.88 95.00 -598711.59 5681303.57 96.25 -598711.65 5683045.20 96.25 -598711.78 5681114.08 96.25 -598711.87 5681760.84 96.25 -598711.89 5681787.59 96.25 -598712.00 5680905.42 98.75 -598712.03 5681721.67 96.25 -598712.04 5681741.38 96.25 -598712.06 5682532.51 96.25 -598712.15 5687374.42 95.00 -598712.25 5682387.08 96.25 -598712.60 5687590.13 95.00 -598712.64 5685681.43 95.00 -598712.74 5683087.20 95.00 -598712.77 5682579.75 96.25 -598713.48 5678086.49 98.75 -598713.56 5681731.55 96.25 -598713.93 5680525.77 98.75 -598714.14 5681814.70 96.25 -598714.27 5681893.38 96.25 -598714.32 5677513.06 100.00 -598714.39 5681164.22 96.25 -598714.48 5681824.38 96.25 -598714.60 5677750.17 100.00 -598714.79 5681091.83 97.50 -598715.16 5687329.00 95.00 -598715.30 5683036.01 96.25 -598715.30 5682336.39 96.25 -598715.62 5678043.21 98.75 -598716.05 5681105.08 96.25 -598716.12 5679177.11 98.75 -598716.21 5677759.08 100.00 -598716.31 5679186.71 98.75 -598716.36 5679830.91 98.75 -598716.38 5681269.93 96.25 -598716.56 5681087.10 98.75 -598716.63 5677320.72 101.25 -598716.76 5682444.06 96.25 -598716.78 5678909.94 98.75 -598717.31 5687382.98 95.00 -598717.42 5680570.79 98.75 -598717.69 5679167.23 98.75 -598717.91 5685902.79 95.00 -598718.07 5685827.45 95.00 -598718.22 5678265.69 98.75 -598718.28 5686449.37 95.00 -598718.54 5678752.23 98.75 -598718.56 5683129.25 95.00 -598718.60 5681310.65 96.25 -598718.69 5685673.57 95.00 -598718.69 5681767.18 96.25 -598718.97 5683079.54 95.00 -598719.02 5681137.09 96.25 -598719.51 5680911.96 98.75 -598719.58 5679157.48 98.75 -598719.84 5678060.48 98.50 -598720.06 5681832.60 96.25 -598720.52 5678761.67 98.75 -598720.67 5681900.97 96.25 -598720.70 5679195.70 98.75 -598720.80 5681810.34 96.25 -598720.87 5681156.65 96.25 -598720.88 5682391.62 96.25 -598721.37 5682529.11 96.25 -598721.83 5687593.59 95.00 -598722.02 5678035.74 98.75 -598722.12 5685818.31 95.00 -598722.47 5687335.80 95.00 -598722.51 5681760.45 96.25 -598722.52 5682580.20 96.25 -598722.55 5681750.47 96.25 -598722.62 5678743.62 98.75 -598722.68 5683031.88 96.25 -598722.70 5681740.51 96.25 -598722.85 5687391.29 95.00 -598722.86 5677518.25 100.00 -598722.90 5681480.52 96.25 -598723.22 5678085.10 98.75 -598723.57 5681087.48 97.50 -598723.60 5682400.67 96.25 -598723.64 5681730.56 96.25 -598723.76 5680524.06 98.75 -598724.04 5680563.35 98.75 -598724.18 5681080.80 98.75 -598724.44 5685665.46 95.00 -598724.57 5681720.61 96.25 -598724.80 5685895.55 95.00 -598724.88 5679149.00 98.75 -598724.99 5682336.31 96.25 -598725.01 5679825.96 98.75 -598725.28 5683071.95 95.00 -598725.32 5678272.70 98.75 -598725.48 5681472.19 96.25 -598725.51 5681710.66 96.25 -598725.75 5681840.81 96.25 -598725.85 5683122.60 95.00 -598725.96 5681317.27 96.25 -598726.26 5677318.11 101.25 -598726.30 5681269.03 96.25 -598726.36 5681700.70 96.25 -598726.58 5678908.26 98.75 -598726.67 5682444.67 96.25 -598726.95 5682409.99 96.25 -598727.01 5680918.50 98.75 -598727.03 5683078.08 94.75 -598727.05 5679202.27 98.75 -598727.19 5681690.74 96.25 -598727.26 5686444.99 95.00 -598727.28 5678768.57 98.75 -598727.31 5685809.82 95.00 -598727.76 5687399.98 95.00 -598728.44 5681135.88 96.25 -598729.12 5678029.15 98.75 -598729.17 5681905.22 96.25 -598729.18 5686401.01 95.00 -598729.35 5681681.15 96.25 -598729.45 5678736.34 98.75 -598729.52 5683086.84 94.75 -598729.76 5685657.14 95.00 -598729.78 5687342.61 95.00 -598730.06 5681152.79 96.25 -598730.13 5681813.91 96.25 -598730.18 5679140.53 98.75 -598730.32 5681485.54 96.25 -598730.63 5683070.40 94.75 -598730.94 5682526.67 96.25 -598731.08 5681849.21 96.25 -598731.08 5683114.23 95.00 -598731.18 5678079.70 98.75 -598731.27 5682575.52 96.25 -598731.37 5686409.75 95.00 -598731.70 5680556.96 98.75 -598731.77 5687594.61 95.00 -598731.82 5683064.57 95.00 -598732.31 5677521.16 100.00 -598732.42 5678279.72 98.75 -598732.46 5685647.56 95.00 -598732.54 5683031.12 96.25 -598732.88 5681084.43 97.50 -598732.91 5682417.48 96.25 -598733.04 5685801.63 95.00 -598733.05 5681076.57 98.75 -598733.19 5685890.29 95.00 -598733.30 5680526.74 98.75 -598733.40 5679820.53 98.75 -598733.51 5681858.91 96.25 -598733.62 5687407.71 95.00 -598734.32 5681322.70 96.25 -598734.53 5680778.68 97.50 -598734.66 5682336.45 96.25 -598734.71 5681470.72 96.25 -598734.77 5681672.96 96.25 -598734.92 5680924.43 98.75 -598734.93 5681868.76 96.25 -598735.02 5686393.37 95.00 -598735.15 5685637.99 95.00 -598735.18 5681265.59 96.25 -598735.20 5681898.55 96.25 -598735.22 5682449.64 96.25 -598735.33 5677314.04 101.25 -598735.37 5679131.98 98.75 -598735.43 5678774.34 98.75 -598735.67 5681878.73 96.25 -598736.08 5681888.71 96.25 -598736.25 5686440.62 95.00 -598736.37 5678906.27 98.75 -598736.74 5678071.87 98.75 -598736.74 5679204.73 98.75 -598737.03 5678730.09 98.75 -598737.40 5683106.82 95.00 -598737.79 5681132.45 96.25 -598737.79 5685628.36 95.00 -598737.82 5687348.54 95.00 -598737.88 5681778.85 96.25 -598737.92 5686417.30 95.00 -598738.36 5678028.71 98.75 -598738.49 5681479.49 96.00 -598738.59 5683086.35 94.75 -598738.60 5681769.19 96.25 -598738.62 5679812.11 98.75 -598738.95 5683066.50 94.75 -598739.23 5685793.79 95.00 -598739.25 5681148.93 96.25 -598739.36 5680550.58 98.75 -598739.44 5682570.17 96.25 -598739.62 5681487.61 96.25 -598739.94 5681813.87 96.25 -598740.46 5679123.38 98.75 -598740.56 5685618.77 95.00 -598740.60 5678285.41 98.75 -598740.63 5683060.11 95.00 -598740.74 5682525.07 96.25 -598740.85 5678062.93 98.75 -598741.02 5680532.88 98.75 -598741.44 5682422.43 96.25 -598741.67 5681705.61 96.25 -598741.71 5687595.63 95.00 -598741.97 5681285.15 96.25 -598741.99 5687413.16 95.00 -598742.01 5683033.72 96.25 -598742.03 5685885.62 95.00 -598742.08 5677523.22 100.00 -598742.16 5681072.76 98.75 -598742.28 5681696.68 96.25 -598742.43 5681666.54 96.25 -598742.62 5680542.13 98.75 -598742.65 5681786.63 96.25 -598742.66 5681083.67 97.50 -598742.67 5681760.23 96.25 -598742.83 5680930.36 98.75 -598742.86 5681259.24 96.25 -598743.18 5686425.73 95.00 -598743.52 5679803.40 98.75 -598743.62 5678053.62 98.75 -598743.86 5679055.88 98.75 -598743.93 5679045.88 98.75 -598743.95 5681325.16 96.25 -598743.95 5686389.13 95.00 -598743.99 5679035.89 98.75 -598744.03 5682453.14 96.25 -598744.05 5679025.89 98.75 -598744.12 5686435.44 95.00 -598744.14 5682338.43 96.25 -598744.18 5677309.42 101.25 -598744.26 5681470.76 96.25 -598744.45 5680778.68 97.50 -598744.48 5678778.48 98.75 -598744.69 5678043.84 98.75 -598745.07 5683100.60 95.00 -598745.13 5681294.06 96.25 -598745.49 5682562.31 96.25 -598745.50 5679065.71 98.75 -598745.52 5685610.10 95.00 -598745.55 5679114.77 98.75 -598745.56 5685786.06 95.00 -598745.75 5678034.05 98.75 -598746.09 5678903.92 98.75 -598746.13 5678725.97 98.75 -598746.43 5679207.20 98.75 -598746.57 5679016.44 98.75 -598746.68 5687352.84 95.00 -598746.98 5681128.64 96.25 -598747.28 5683083.33 94.75 -598747.48 5683063.02 94.75 -598747.56 5679075.49 98.75 -598747.56 5681277.32 96.25 -598747.57 5679105.14 98.75 -598747.89 5679794.41 98.75 -598747.89 5681688.47 96.25 -598748.36 5681809.21 96.25 -598748.66 5679095.20 98.75 -598748.80 5681486.41 96.25 -598748.86 5678291.01 98.75 -598748.90 5681659.00 96.25 -598748.95 5681146.79 96.25 -598749.11 5681251.49 96.25 -598749.24 5681752.73 96.25 -598749.62 5679085.27 98.75 -598750.01 5681966.83 96.25 -598750.05 5683057.49 95.00 -598750.50 5682426.49 96.25 -598750.61 5682524.72 96.25 -598750.86 5685880.95 95.00 -598750.98 5681957.14 96.25 -598750.98 5680935.94 98.75 -598751.03 5679007.53 98.75 -598751.24 5679785.03 98.75 -598751.35 5683036.91 96.25 -598751.60 5681706.33 96.25 -598751.63 5687596.76 95.00 -598751.63 5687415.43 95.00 -598751.66 5685778.14 95.00 -598751.67 5685602.42 95.00 -598751.81 5677303.09 101.25 -598751.83 5681074.46 98.75 -598751.90 5677525.06 100.00 -598751.92 5681789.63 96.25 -598752.14 5681976.55 96.25 -598752.39 5681085.15 97.50 -598752.65 5681300.50 96.25 -598752.90 5683094.61 95.00 -598753.18 5682556.33 96.25 -598753.21 5682341.86 96.25 -598753.24 5686385.44 95.00 -598753.43 5682451.28 96.25 -598753.52 5681203.64 96.75 -598753.64 5681472.39 96.25 -598753.74 5678782.22 98.75 -598753.85 5681324.26 96.25 -598753.97 5679775.41 98.75 -598754.16 5680776.79 97.50 -598754.42 5681986.24 96.25 -598754.80 5681650.94 96.25 -598755.02 5681270.72 96.25 -598755.23 5678721.84 98.75 -598755.33 5683078.86 94.75 -598755.55 5681123.56 96.25 -598755.89 5678901.94 98.75 -598756.06 5679209.85 98.75 -598756.20 5683060.73 94.75 -598756.23 5687355.77 95.00 -598756.27 5681683.28 96.25 -598756.50 5682434.08 96.25 -598756.66 5681804.38 96.25 -598756.66 5681641.12 96.25 -598756.71 5681245.49 96.25 -598756.71 5679765.80 98.75 -598756.78 5681995.91 96.25 -598757.51 5678999.92 98.75 -598757.77 5685770.23 95.00 -598758.02 5682005.77 96.25 -598758.16 5681484.66 96.25 -598758.43 5682443.04 96.25 -598758.55 5681958.46 96.25 -598758.62 5681749.45 96.25 -598758.70 5678292.52 98.75 -598758.75 5681145.00 96.25 -598758.92 5682015.68 96.25 -598759.07 5677296.24 101.25 -598759.20 5680941.42 98.75 -598759.48 5679756.19 98.75 -598759.71 5683042.19 96.25 -598759.75 5685597.00 95.00 -598759.80 5683056.87 95.00 -598760.01 5681631.84 96.25 -598760.23 5681306.97 96.25 -598760.38 5685877.97 95.00 -598760.53 5682524.95 96.25 -598760.77 5681703.38 96.25 -598760.90 5681968.02 96.25 -598761.26 5681728.91 96.25 -598761.33 5683089.46 95.00 -598761.35 5681077.09 98.75 -598761.46 5687417.22 95.00 -598761.53 5687598.09 95.00 -598761.56 5681088.71 97.50 -598761.72 5677526.90 100.00 -598761.83 5682025.20 96.25 -598761.87 5681789.75 96.25 -598762.12 5682552.14 96.25 -598762.27 5679746.59 98.75 -598762.35 5682345.04 96.25 -598762.95 5686383.37 95.00 -598762.96 5681977.75 96.25 -598762.97 5683073.74 94.75 -598763.01 5681264.84 96.25 -598763.08 5681721.34 96.25 -598763.17 5678785.43 98.75 -598763.18 5681472.72 96.25 -598763.22 5683065.06 94.75 -598763.50 5681322.37 96.25 -598763.82 5680774.53 97.50 -598763.85 5685762.30 95.00 -598764.18 5681118.59 96.25 -598764.35 5677287.84 101.25 -598764.57 5678718.42 98.75 -598764.86 5681987.52 96.25 -598764.95 5681623.16 96.25 -598765.07 5679736.99 98.75 -598765.21 5678993.57 98.75 -598765.41 5682034.46 96.25 -598765.49 5682008.71 96.00 -598765.51 5679213.13 98.75 -598765.71 5678900.09 98.75 -598765.82 5681241.44 96.25 -598765.85 5687358.31 95.00 -598766.02 5681681.21 96.25 -598766.44 5681805.08 96.25 -598766.63 5681314.53 96.25 -598767.60 5680946.58 98.75 -598767.66 5681997.04 96.25 -598767.70 5681484.66 96.25 -598768.08 5683047.47 96.25 -598768.22 5681746.74 96.25 -598768.56 5681143.20 96.25 -598768.65 5678293.30 98.75 -598769.24 5677279.14 101.25 -598769.26 5683058.83 95.00 -598769.42 5683083.98 95.00 -598769.43 5681698.42 96.25 -598769.68 5685595.94 95.00 -598769.74 5685874.65 95.00 -598769.91 5685754.35 95.00 -598770.26 5681714.47 96.25 -598770.28 5682526.66 96.25 -598770.38 5681614.77 96.25 -598770.47 5681729.16 96.25 -598770.69 5681092.40 97.50 -598770.87 5681079.78 98.75 -598770.95 5680352.87 98.75 -598771.16 5682006.36 96.25 -598771.29 5679729.40 98.75 -598771.30 5677529.62 100.00 -598771.35 5687599.78 95.00 -598771.45 5687417.45 95.00 -598771.53 5682549.00 96.25 -598771.57 5681259.73 96.25 -598771.60 5681790.63 96.25 -598771.60 5682041.41 96.25 -598771.68 5680768.63 97.50 -598771.73 5680362.81 98.75 -598771.96 5682346.39 96.25 -598771.96 5681566.20 96.25 -598772.08 5680343.14 98.75 -598772.64 5681473.98 96.25 -598772.66 5681576.17 96.25 -598772.74 5686383.18 95.00 -598772.93 5678787.56 98.75 -598773.03 5677269.91 101.25 -598773.05 5678987.37 98.75 -598773.32 5681114.65 96.25 -598773.53 5682015.96 96.25 -598773.58 5681556.88 96.25 -598773.65 5681586.12 96.25 -598774.02 5680372.52 98.75 -598774.09 5681635.36 96.25 -598774.28 5681605.68 96.25 -598774.29 5678716.10 98.75 -598774.36 5681236.42 96.25 -598774.36 5683075.44 95.00 -598774.82 5682025.83 96.25 -598774.94 5678896.41 98.75 -598774.96 5679216.40 98.75 -598775.04 5680333.61 98.75 -598775.05 5681596.00 96.25 -598775.14 5681809.72 96.25 -598775.29 5683066.20 95.00 -598775.51 5677260.28 101.25 -598775.57 5681643.93 96.25 -598775.84 5687358.53 95.00 -598775.88 5681626.45 96.25 -598775.90 5682035.72 96.25 -598775.92 5681681.69 96.25 -598776.00 5685746.43 95.00 -598776.36 5680382.21 98.75 -598776.44 5683052.75 96.25 -598776.81 5680950.15 98.75 -598777.10 5681325.13 96.25 -598777.22 5681483.92 96.25 -598777.37 5677250.48 101.25 -598777.85 5681744.12 96.25 -598777.92 5680324.06 98.75 -598778.23 5681693.73 96.25 -598778.31 5679722.28 98.75 -598778.38 5685869.62 95.00 -598778.44 5685600.03 95.00 -598778.48 5681709.04 96.25 -598778.49 5681142.39 96.25 -598778.60 5678294.01 98.75 -598778.80 5681333.46 96.25 -598779.06 5680762.06 97.50 -598779.17 5682530.37 96.25 -598779.24 5677240.67 101.25 -598779.89 5680391.48 98.75 -598779.97 5680314.30 98.75 -598780.13 5681095.18 97.50 -598780.18 5681726.87 96.25 -598780.21 5678980.60 98.75 -598780.47 5681082.11 98.75 -598780.62 5681794.89 96.25 -598780.71 5677532.98 100.00 -598780.75 5681619.15 96.25 -598780.77 5681633.16 96.50 -598780.80 5682545.47 96.25 -598780.80 5687603.01 95.00 -598781.01 5681257.07 96.25 -598781.32 5687418.64 95.00 -598781.44 5677230.93 101.25 -598781.54 5681553.66 96.25 -598781.56 5682347.60 96.25 -598781.68 5681817.10 96.25 -598781.97 5686386.81 95.00 -598782.03 5680304.54 98.75 -598782.09 5685738.50 95.00 -598782.16 5681474.70 96.25 -598782.36 5681230.49 96.25 -598782.69 5678789.69 98.75 -598782.76 5682186.01 96.25 -598783.11 5681646.74 96.25 -598783.15 5681114.33 96.25 -598783.68 5677221.21 101.25 -598783.98 5678892.14 98.75 -598784.01 5678713.79 98.75 -598784.08 5680294.78 98.75 -598784.09 5682195.72 96.25 -598784.14 5682538.06 96.25 -598784.29 5680400.43 98.75 -598784.40 5679219.68 98.75 -598784.56 5680753.80 97.50 -598784.58 5682176.38 96.25 -598784.73 5678752.24 99.00 -598784.80 5683058.04 96.25 -598784.88 5678971.76 98.75 -598785.45 5679715.36 98.75 -598785.53 5681578.04 96.25 -598785.73 5681325.78 96.25 -598785.75 5680284.95 98.75 -598785.80 5681681.04 96.25 -598785.82 5687358.24 95.00 -598785.85 5681340.55 96.25 -598785.91 5681480.95 96.25 -598786.02 5681826.10 96.25 -598786.04 5680953.69 98.75 -598786.37 5683460.74 95.00 -598786.49 5678155.01 98.75 -598786.56 5681568.12 96.25 -598786.71 5683450.82 95.00 -598786.89 5677211.79 101.25 -598786.91 5678164.48 98.75 -598787.04 5683470.61 95.00 -598787.17 5685865.11 95.00 -598787.22 5685604.78 95.00 -598787.25 5681704.73 96.25 -598787.41 5680275.11 98.75 -598787.43 5681695.87 96.25 -598787.46 5681741.45 96.25 -598787.68 5681621.77 96.25 -598787.86 5683440.95 95.00 -598787.90 5681587.75 96.25 -598788.01 5681639.42 96.25 -598788.38 5682204.72 96.25 -598788.42 5681141.62 96.25 -598788.56 5678294.40 98.75 -598788.57 5680409.43 98.75 -598788.81 5681800.47 96.25 -598788.85 5681558.78 96.25 -598789.02 5683431.07 95.00 -598789.02 5678145.34 98.75 -598789.08 5680265.28 98.75 -598789.08 5681223.13 96.25 -598789.29 5683480.30 95.00 -598789.31 5681098.69 97.50 -598789.55 5682170.60 96.25 -598789.56 5685731.96 95.00 -598789.83 5681630.48 96.25 -598789.88 5677536.93 100.00 -598789.91 5681724.66 96.25 -598790.00 5677458.79 100.00 -598790.07 5680745.55 97.50 -598790.13 5681835.20 96.25 -598790.18 5683421.19 95.00 -598790.22 5686392.44 95.00 -598790.23 5681082.40 98.75 -598790.26 5687606.23 95.00 -598790.32 5681259.38 96.25 -598790.50 5678963.64 98.75 -598790.57 5678173.78 98.75 -598790.80 5677202.61 101.25 -598790.81 5680255.46 98.75 -598790.94 5687421.15 95.00 -598791.06 5682345.82 96.25 -598791.35 5678135.63 98.75 -598791.54 5683489.99 95.00 -598791.67 5677449.19 100.00 -598792.15 5680418.74 98.75 -598792.53 5680245.63 98.75 -598792.57 5682213.76 96.25 -598792.58 5683411.58 95.00 -598792.60 5678789.09 98.75 -598792.67 5681595.43 96.25 -598792.71 5681347.82 96.25 -598793.03 5678887.88 98.75 -598793.09 5681114.89 96.25 -598793.14 5683063.36 96.25 -598793.39 5681844.65 96.25 -598793.52 5681932.24 96.25 -598793.60 5687456.97 95.00 -598793.79 5678714.00 98.75 -598793.79 5683499.67 95.00 -598793.84 5681942.23 96.25 -598794.12 5679221.94 98.75 -598794.25 5680235.81 98.75 -598794.30 5681330.82 96.25 -598794.38 5687466.88 95.00 -598794.43 5681676.68 96.25 -598794.57 5680736.72 97.50 -598794.75 5679711.69 98.75 -598794.76 5681215.14 96.25 -598795.03 5682177.90 96.25 -598795.14 5681922.47 96.25 -598795.45 5683402.05 95.00 -598795.46 5680956.68 98.75 -598795.51 5687447.16 95.00 -598795.73 5680428.05 98.75 -598795.79 5687357.76 95.00 -598795.92 5680225.97 98.75 -598796.13 5677466.51 100.00 -598796.18 5681951.67 96.25 -598796.19 5678126.88 98.75 -598796.36 5681806.92 96.25 -598796.40 5683362.54 95.00 -598796.53 5682222.91 96.25 -598796.55 5682204.62 96.00 -598796.58 5685607.52 95.00 -598796.63 5683372.48 95.00 -598796.63 5681737.81 96.25 -598796.65 5681854.10 96.25 -598796.76 5677194.80 101.25 -598796.81 5678181.21 98.75 -598796.85 5683382.42 95.00 -598796.87 5683352.65 95.00 -598796.97 5681265.75 96.25 -598797.08 5683392.37 95.00 -598797.15 5685864.83 95.00 -598797.21 5683509.00 95.00 -598797.44 5687437.36 95.00 -598797.50 5685725.90 95.00 -598797.53 5687428.15 95.00 -598797.66 5681912.80 96.25 -598797.73 5678956.73 98.75 -598797.97 5683459.31 96.25 -598798.04 5680437.75 98.75 -598798.04 5681143.93 96.25 -598798.07 5686398.62 95.00 -598798.14 5681205.76 96.25 -598798.20 5682232.60 96.25 -598798.34 5681102.52 97.50 -598798.40 5680216.46 98.75 -598798.49 5678293.99 98.75 -598798.52 5683342.85 95.00 -598798.73 5682339.95 96.25 -598798.84 5682242.55 96.25 -598798.85 5680727.77 97.50 -598798.87 5682187.09 96.25 -598798.92 5677541.18 100.00 -598799.02 5687475.07 95.00 -598799.11 5683450.28 96.25 -598799.14 5687610.76 95.00 -598799.23 5682252.18 96.25 -598799.36 5681863.71 96.25 -598799.48 5681723.20 96.25 -598799.50 5681355.15 96.25 -598799.82 5681903.04 96.25 -598800.03 5681275.22 96.25 -598800.07 5681081.53 98.75 -598800.23 5680447.48 98.75 -598800.31 5681582.67 96.25 -598800.48 5677446.80 100.00 -598800.55 5681592.66 96.25 -598800.74 5683069.61 96.25 -598800.79 5683518.27 95.00 -598800.82 5681669.06 96.25 -598800.92 5681960.47 96.25 -598800.98 5680718.15 97.50 -598801.01 5681931.30 96.00 -598801.02 5681940.88 96.00 -598801.02 5678118.14 98.75 -598801.23 5683467.96 96.25 -598801.24 5681815.62 96.25 -598801.47 5681893.21 96.25 -598801.78 5683333.47 95.00 -598801.86 5681873.39 96.25 -598801.98 5677897.80 98.75 -598802.14 5681337.01 96.25 -598802.14 5681196.77 96.25 -598802.24 5677457.62 99.50 -598802.27 5681883.25 96.25 -598802.33 5677474.15 100.00 -598802.35 5681284.88 96.25 -598802.35 5680708.33 97.50 -598802.54 5678788.06 98.75 -598802.59 5682196.33 96.25 -598802.80 5677888.59 98.75 -598802.94 5678886.64 98.75 -598802.99 5681115.99 96.25 -598803.05 5681730.56 96.25 -598803.21 5681573.79 96.25 -598803.27 5678157.39 98.50 -598803.59 5680698.48 97.50 -598803.61 5678715.81 98.75 -598803.77 5677187.69 101.25 -598803.79 5681922.20 96.00 -598803.85 5678948.83 98.75 -598803.87 5680208.11 98.75 -598803.93 5679223.85 98.75 -598803.98 5681949.97 96.00 -598804.03 5681294.51 96.25 -598804.35 5681659.80 96.25 -598804.37 5683527.55 95.00 -598804.54 5678187.40 98.75 -598804.63 5679710.69 98.75 -598804.68 5680466.01 98.75 -598804.97 5680959.31 98.75 -598805.03 5683444.49 96.25 -598805.05 5683460.42 96.30 -598805.14 5685935.17 95.00 -598805.20 5680456.05 98.75 -598805.47 5682332.97 96.25 -598805.49 5677906.33 98.75 -598805.55 5685925.31 95.00 -598805.57 5680688.79 97.50 -598805.62 5685720.21 95.00 -598805.63 5681527.59 96.25 -598805.70 5687358.00 95.00 -598805.84 5682205.73 96.25 -598806.09 5685867.44 95.00 -598806.11 5681824.32 96.25 -598806.21 5682376.34 96.25 -598806.24 5687481.97 95.00 -598806.28 5683324.72 95.00 -598806.53 5681968.71 96.25 -598806.54 5681149.04 96.25 -598806.55 5683077.25 96.25 -598806.57 5685607.75 95.00 -598806.64 5685945.01 95.00 -598806.66 5681620.37 96.25 -598806.70 5683474.89 96.25 -598806.82 5681630.27 96.25 -598806.82 5681650.21 96.25 -598806.85 5686403.04 95.00 -598807.07 5681640.24 96.25 -598807.36 5678110.49 98.75 -598807.50 5681913.34 96.00 -598807.59 5677464.45 99.50 -598807.72 5678290.21 98.75 -598807.74 5677545.86 100.00 -598807.87 5680474.54 98.75 -598807.89 5681519.01 96.25 -598807.90 5682254.83 96.25 -598807.92 5687615.53 95.00 -598807.94 5682215.47 96.25 -598807.95 5683536.83 95.00 -598808.06 5681104.14 97.50 -598808.09 5685915.64 95.00 -598808.35 5680679.26 97.50 -598808.72 5681358.45 96.25 -598808.97 5677451.79 100.00 -598808.98 5681189.53 96.25 -598809.07 5681930.87 96.00 -598809.08 5682225.37 96.25 -598809.18 5683086.78 96.25 -598809.20 5681957.95 96.00 -598809.32 5681233.09 96.25 -598809.33 5680199.77 98.75 -598809.37 5677881.68 98.75 -598809.44 5677480.97 100.00 -598809.74 5681343.29 96.25 -598809.79 5681921.32 96.00 -598809.83 5682245.24 96.25 -598809.91 5678940.88 98.75 -598809.92 5681080.66 98.75 -598809.92 5681833.52 96.25 -598810.09 5682235.28 96.25 -598810.10 5685876.30 95.00 -598810.38 5681566.86 96.25 -598810.51 5685954.11 95.00 -598810.59 5681940.19 96.00 -598810.66 5683451.01 96.25 -598810.74 5685906.00 95.00 -598810.80 5677180.61 101.25 -598810.95 5683096.48 96.25 -598811.23 5681611.73 96.25 -598811.30 5685886.16 95.00 -598811.31 5681223.33 96.25 -598811.32 5681295.99 96.25 -598811.52 5683546.10 95.00 -598811.56 5682325.45 96.25 -598811.58 5680669.93 97.50 -598811.59 5685896.15 95.00 -598811.70 5683460.13 96.25 -598811.89 5678890.07 98.75 -598811.98 5683469.38 96.25 -598812.28 5678785.83 98.75 -598812.33 5681534.66 96.25 -598812.35 5683316.85 95.00 -598812.48 5680483.21 98.75 -598812.62 5683106.09 96.25 -598812.91 5681115.91 96.25 -598812.95 5677471.27 99.50 -598813.15 5679075.91 98.75 -598813.23 5681241.60 96.25 -598813.25 5680493.16 98.75 -598813.42 5679085.72 98.75 -598813.44 5682370.69 96.25 -598813.44 5681842.86 96.25 -598813.44 5681975.73 96.25 -598813.45 5678717.51 98.75 -598813.64 5681949.26 96.00 -598813.88 5679224.91 98.75 -598813.97 5687488.28 95.00 -598814.06 5678184.68 98.75 -598814.11 5681155.40 96.25 -598814.47 5681181.21 96.25 -598814.54 5681286.82 96.25 -598814.59 5679710.62 98.75 -598814.68 5680961.16 98.75 -598814.74 5681583.26 96.25 -598814.93 5677907.60 98.75 -598814.94 5677459.64 100.00 -598815.09 5678932.39 98.75 -598815.16 5687361.02 95.00 -598815.17 5680191.70 98.75 -598815.25 5678104.58 98.75 -598815.37 5685718.01 95.00 -598815.44 5681965.24 96.00 -598815.72 5683555.10 95.00 -598816.00 5680502.58 98.75 -598816.12 5687621.15 95.00 -598816.12 5686402.35 95.00 -598816.27 5679066.45 98.75 -598816.30 5685606.25 95.00 -598816.38 5682342.26 96.25 -598816.46 5677550.73 100.00 -598816.51 5682351.99 96.25 -598816.54 5681214.94 96.25 -598816.60 5685961.45 95.00 -598816.72 5680661.45 97.50 -598816.80 5681852.24 96.25 -598816.81 5681517.36 96.25 -598816.87 5682361.58 96.25 -598816.92 5677875.99 98.75 -598816.94 5677487.26 100.00 -598817.05 5679094.60 98.75 -598817.06 5678286.73 98.75 -598817.78 5681277.42 96.25 -598817.81 5681560.18 96.25 -598817.82 5681105.35 97.50 -598817.83 5683114.50 96.25 -598817.93 5681957.84 96.00 -598818.30 5677478.10 99.50 -598818.42 5683308.97 95.00 -598818.54 5677174.31 101.25 -598818.60 5681249.98 96.25 -598818.65 5681357.89 96.25 -598819.11 5681077.15 98.75 -598819.20 5681333.91 96.25 -598819.31 5681606.13 96.25 -598819.44 5681326.02 96.25 -598819.44 5681861.86 96.25 -598819.52 5678923.43 98.75 -598819.54 5681574.60 96.25 -598819.55 5678147.53 98.75 -598819.70 5681342.40 96.25 -598819.74 5678177.35 98.75 -598819.79 5678157.49 98.75 -598819.81 5683564.15 95.00 -598819.95 5682323.64 96.25 -598819.95 5681172.89 96.25 -598820.01 5678895.87 98.75 -598820.07 5681163.07 96.25 -598820.12 5678137.57 98.75 -598820.86 5678167.43 98.75 -598820.99 5681590.56 96.25 -598821.03 5680511.08 98.75 -598821.09 5677467.33 100.00 -598821.37 5681931.19 96.25 -598821.47 5680183.96 98.75 -598821.56 5682351.13 96.00 -598821.63 5681966.68 96.00 -598821.68 5678127.70 98.75 -598821.69 5686394.64 95.00 -598821.87 5680652.96 97.50 -598821.88 5687494.38 95.00 -598821.91 5681537.41 96.25 -598821.92 5681981.01 96.25 -598821.93 5681921.23 96.25 -598821.95 5681871.51 96.25 -598822.02 5678783.60 98.75 -598822.15 5678722.16 98.75 -598822.33 5681268.58 96.25 -598822.39 5681940.99 96.25 -598822.44 5679059.38 98.75 -598822.58 5681911.28 96.25 -598822.78 5681881.45 96.25 -598822.82 5681114.97 96.25 -598822.84 5681258.91 96.25 -598822.97 5678107.82 98.75 -598822.97 5678117.81 98.75 -598823.09 5683573.54 95.00 -598823.09 5678914.12 98.75 -598823.36 5681901.33 96.25 -598823.52 5686384.96 95.00 -598823.54 5682359.06 96.00 -598823.60 5683300.50 95.00 -598823.61 5681891.39 96.25 -598823.78 5687627.57 95.00 -598823.78 5679101.65 98.75 -598823.82 5679225.96 98.75 -598823.85 5687365.96 95.00 -598824.09 5682340.60 96.25 -598824.24 5677870.02 98.75 -598824.24 5678904.59 98.75 -598824.39 5677906.34 98.75 -598824.39 5680963.02 98.75 -598824.43 5679712.38 98.75 -598824.48 5685601.15 95.00 -598824.55 5681552.84 96.25 -598824.74 5686375.05 95.00 -598824.88 5681209.50 96.25 -598824.95 5681950.63 96.25 -598825.12 5685715.80 95.00 -598825.19 5681522.72 96.25 -598825.42 5677490.12 100.00 -598826.17 5677552.85 100.00 -598826.22 5685963.96 95.00 -598826.33 5678283.13 98.75 -598826.34 5677168.08 101.25 -598826.97 5677475.20 100.00 -598826.99 5683582.54 95.00 -598827.03 5683111.68 96.25 -598827.43 5681568.57 96.25 -598827.44 5680518.72 98.75 -598827.57 5681105.68 97.50 -598827.71 5683446.67 95.00 -598827.78 5680645.12 97.50 -598827.82 5683455.48 95.00 -598827.83 5681544.53 96.25 -598827.99 5686366.24 95.00 -598828.21 5681073.30 98.75 -598828.40 5682366.27 96.00 -598828.44 5680177.13 98.75 -598828.56 5681356.73 96.25 -598828.61 5683291.91 95.00 -598828.77 5682349.60 96.00 -598828.82 5681603.17 96.25 -598828.90 5682327.38 96.25 -598828.92 5683525.66 95.00 -598829.20 5681328.12 96.25 -598829.62 5683463.65 95.00 -598829.75 5681958.95 96.25 -598829.78 5687500.49 95.00 -598830.53 5678727.59 98.75 -598830.56 5682042.22 96.25 -598830.69 5677863.00 98.75 -598830.87 5679054.10 98.75 -598830.89 5681590.85 96.25 -598831.02 5681984.89 96.25 -598831.09 5685593.65 95.00 -598831.25 5687634.18 95.00 -598831.29 5683535.21 95.00 -598831.38 5683439.93 95.00 -598831.69 5677483.85 100.00 -598831.76 5678781.37 98.75 -598831.82 5682346.64 96.25 -598832.12 5681529.91 96.25 -598832.53 5687370.89 95.00 -598832.54 5681112.80 96.25 -598832.54 5679230.63 98.75 -598832.55 5681180.27 96.25 -598832.90 5679105.63 98.75 -598833.02 5683517.76 95.00 -598833.08 5682388.43 96.25 -598833.25 5681204.09 96.25 -598833.33 5682032.62 96.25 -598833.49 5680526.65 98.75 -598833.50 5682398.10 96.25 -598833.74 5683453.10 94.90 -598833.77 5677904.69 98.75 -598833.85 5680965.73 98.75 -598833.86 5683589.73 95.00 -598834.27 5679714.14 98.75 -598834.35 5677162.12 101.25 -598834.54 5682051.29 96.25 -598834.67 5685718.33 95.00 -598834.67 5685584.34 95.00 -598834.68 5683105.50 96.25 -598834.75 5683284.09 95.00 -598834.98 5682355.54 96.00 -598835.25 5680638.59 97.50 -598835.26 5678278.67 98.75 -598835.52 5681170.76 96.25 -598835.84 5682369.47 96.00 -598835.93 5685962.40 95.00 -598836.00 5677554.65 100.00 -598836.04 5681597.39 96.25 -598836.07 5683447.28 95.00 -598836.09 5681563.62 96.25 -598836.41 5686360.89 95.00 -598836.55 5682023.22 96.25 -598836.86 5681068.58 98.75 -598836.94 5681965.87 96.25 -598836.97 5683532.45 94.90 -598837.07 5681103.09 97.50 -598837.23 5677856.06 98.75 -598837.42 5683463.81 95.00 -598837.46 5682380.05 96.25 -598837.66 5687506.64 95.00 -598837.66 5680173.34 98.75 -598838.05 5683541.62 95.00 -598838.06 5682330.55 96.25 -598838.15 5687641.41 95.00 -598838.21 5685574.99 95.00 -598838.32 5681354.73 96.25 -598838.33 5681161.20 96.25 -598838.50 5683455.69 95.00 -598838.58 5678733.47 98.75 -598838.58 5682060.42 96.25 -598838.65 5682353.72 96.25 -598838.73 5681331.16 96.25 -598839.17 5681186.15 96.25 -598839.41 5682405.93 96.25 -598839.52 5682362.80 96.00 -598839.54 5680534.58 98.75 -598839.66 5683523.64 95.00 -598839.71 5679049.50 98.75 -598840.28 5681535.44 96.25 -598840.41 5678776.39 98.75 -598840.56 5681987.67 96.25 -598840.63 5679236.45 98.75 -598840.73 5683596.92 95.00 -598840.80 5683097.73 96.25 -598840.90 5683276.28 95.00 -598840.95 5682395.48 95.00 -598841.52 5682041.46 95.80 -598841.76 5687374.55 95.00 -598841.80 5682385.88 95.00 -598841.91 5682014.79 96.25 -598842.01 5685565.76 95.00 -598842.03 5679109.62 98.75 -598842.05 5681199.62 96.25 -598842.07 5681151.97 96.25 -598842.25 5681110.58 96.25 -598842.32 5682069.69 96.25 -598842.36 5677156.16 101.25 -598842.63 5677901.76 98.75 -598842.74 5683143.28 95.00 -598842.79 5680632.13 97.50 -598843.11 5680969.20 98.75 -598843.45 5685722.73 95.00 -598843.63 5683536.81 94.90 -598843.76 5678273.47 98.75 -598843.99 5679716.45 98.75 -598844.57 5682049.72 95.80 -598844.64 5682404.38 95.00 -598844.74 5681558.64 96.25 -598844.97 5685958.14 95.00 -598845.00 5682361.20 96.25 -598845.13 5686356.02 95.00 -598845.22 5681063.30 98.75 -598845.51 5682034.07 95.80 -598845.53 5687512.79 95.00 -598845.64 5687648.00 95.00 -598845.65 5680542.46 98.75 -598845.75 5681996.08 96.25 -598845.79 5677556.61 100.00 -598845.84 5681970.36 96.25 -598845.87 5685556.54 95.00 -598845.89 5682378.85 96.25 -598845.96 5682005.70 96.25 -598845.96 5677852.83 98.75 -598846.02 5683605.25 95.00 -598846.08 5682413.16 96.25 -598846.17 5678739.97 98.75 -598846.39 5682325.25 96.25 -598846.61 5683431.55 96.25 -598846.66 5681100.88 97.50 -598846.72 5683546.10 95.00 -598846.80 5683441.35 96.25 -598846.89 5680169.56 98.75 -598846.91 5683089.95 96.25 -598847.05 5683268.46 95.00 -598847.11 5682025.51 95.90 -598847.16 5681143.42 96.25 -598847.41 5682078.29 96.25 -598847.57 5683528.37 95.00 -598847.77 5682016.83 95.90 -598847.77 5683460.89 96.25 -598848.05 5683470.68 96.25 -598848.13 5679243.06 98.75 -598848.23 5679044.39 98.75 -598848.25 5683451.07 96.25 -598848.29 5681334.00 96.25 -598848.29 5681355.42 96.25 -598848.52 5683555.77 95.00 -598848.93 5678771.23 98.75 -598849.01 5681184.61 96.25 -598849.37 5682384.28 95.00 -598849.60 5681538.45 96.25 -598849.72 5685547.32 95.00 -598849.86 5683423.79 96.25 -598849.98 5683479.97 96.25 -598850.28 5682041.42 95.80 -598850.31 5677896.10 98.75 -598850.56 5683519.18 95.00 -598850.60 5680626.02 97.50 -598850.65 5683565.34 95.00 -598850.68 5677150.70 101.25 -598850.73 5683614.01 95.00 -598850.89 5682050.47 95.80 -598850.93 5680975.09 98.75 -598851.22 5685950.82 95.00 -598851.26 5685728.97 95.00 -598851.28 5683539.01 94.90 -598851.30 5681196.08 96.25 -598851.35 5687377.35 95.00 -598851.39 5682411.63 95.00 -598851.42 5682368.49 96.25 -598851.62 5683139.42 95.00 -598851.85 5680550.28 98.75 -598851.92 5679110.74 98.75 -598851.94 5683259.83 95.00 -598851.96 5681108.35 96.25 -598852.17 5678268.11 98.75 -598852.70 5683623.72 95.00 -598852.90 5681135.28 96.25 -598852.95 5683082.12 96.25 -598853.08 5683509.67 95.00 -598853.20 5682086.41 96.25 -598853.21 5682009.22 95.90 -598853.30 5683450.82 96.30 -598853.32 5687654.38 95.00 -598853.39 5681057.76 98.75 -598853.40 5687518.94 95.00 -598853.43 5681976.79 96.25 -598853.50 5685538.08 95.00 -598853.57 5679719.30 98.75 -598853.61 5682419.47 96.25 -598853.76 5678746.46 98.75 -598853.98 5683547.44 94.90 -598854.33 5686352.13 95.00 -598854.47 5681557.29 96.25 -598854.73 5685738.13 95.00 -598854.90 5683531.48 94.90 -598855.04 5682320.57 96.25 -598855.06 5683574.14 95.00 -598855.11 5683556.15 94.90 -598855.21 5685757.75 95.00 -598855.26 5682381.83 96.25 -598855.43 5683522.97 94.90 -598855.49 5677852.47 98.75 -598855.50 5685767.74 95.00 -598855.52 5678763.72 98.75 -598855.55 5677558.78 100.00 -598855.63 5679249.66 98.75 -598855.71 5680164.91 98.75 -598855.72 5683564.97 94.90 -598855.84 5683514.43 94.90 -598856.01 5683632.94 95.00 -598856.07 5682026.74 95.90 -598856.17 5685777.71 95.00 -598856.27 5685942.20 95.00 -598856.27 5685747.82 95.00 -598856.40 5679038.71 98.75 -598856.41 5681100.24 97.50 -598857.09 5683251.37 95.00 -598857.13 5685787.66 95.00 -598857.17 5683429.28 96.25 -598857.28 5685528.83 95.00 -598857.43 5683477.92 96.25 -598857.48 5685932.39 95.00 -598857.62 5681484.87 96.25 -598857.70 5682388.96 95.00 -598857.81 5678755.37 98.75 -598857.85 5680982.12 98.75 -598858.03 5677890.51 98.75 -598858.05 5680558.09 98.75 -598858.05 5683504.66 95.00 -598858.18 5685922.42 95.00 -598858.21 5681335.24 96.25 -598858.27 5681355.92 96.25 -598858.36 5683468.13 96.25 -598858.42 5680619.90 97.50 -598858.70 5681494.75 96.25 -598858.72 5685797.50 95.00 -598858.77 5682418.21 95.00 -598858.85 5681183.13 96.25 -598858.97 5683074.27 96.25 -598859.04 5682045.43 96.25 -598859.15 5681127.62 96.25 -598859.18 5682017.90 95.90 -598859.23 5682055.16 96.25 -598859.24 5677145.62 101.25 -598859.28 5681537.07 96.25 -598859.33 5685519.09 95.00 -598859.43 5683572.92 94.90 -598859.43 5683523.07 95.00 -598859.54 5682094.13 96.25 -598859.54 5683532.91 95.00 -598859.55 5683438.79 96.25 -598859.61 5683458.38 96.25 -598859.76 5677462.29 100.00 -598859.77 5683562.11 95.00 -598859.85 5683582.73 95.00 -598859.90 5681191.05 96.25 -598859.98 5683513.24 95.00 -598859.98 5682373.32 96.25 -598860.06 5683134.71 95.00 -598860.08 5685912.76 95.00 -598860.12 5687526.16 95.00 -598860.17 5683448.61 96.25 -598860.24 5682008.39 95.90 -598860.39 5677453.45 100.00 -598860.39 5683542.71 95.00 -598860.68 5682426.25 96.25 -598860.91 5681983.40 96.25 -598860.93 5685509.23 95.00 -598860.95 5678263.38 98.75 -598861.03 5683641.53 95.00 -598861.07 5683552.49 95.00 -598861.15 5687379.23 95.00 -598861.19 5685807.19 95.00 -598861.24 5677471.17 100.00 -598861.29 5681051.83 98.75 -598861.71 5686345.61 95.00 -598861.77 5679112.22 98.75 -598861.80 5683346.63 95.00 -598861.91 5681108.24 96.25 -598861.94 5677757.75 98.75 -598861.96 5683355.27 95.00 -598862.01 5681310.52 96.25 -598862.25 5683571.64 95.00 -598862.52 5685499.37 95.00 -598862.72 5687657.64 95.00 -598862.75 5681503.88 96.25 -598862.80 5682387.84 96.25 -598862.96 5679256.41 98.75 -598863.02 5682036.37 96.25 -598863.15 5679722.15 98.75 -598863.17 5682064.15 96.25 -598863.26 5683243.57 95.00 -598863.37 5683405.40 95.00 -598863.76 5683415.32 95.00 -598863.84 5681559.31 96.25 -598863.86 5683521.43 96.25 -598863.97 5679032.30 98.75 -598864.12 5685489.51 95.00 -598864.21 5683511.62 96.25 -598864.30 5682317.58 96.25 -598864.34 5685903.73 95.00 -598864.42 5680160.06 98.75 -598864.45 5680989.48 98.75 -598864.56 5683591.29 95.00 -598864.58 5677855.01 98.75 -598864.69 5680565.43 98.75 -598864.75 5683482.12 96.25 -598864.81 5677446.06 100.00 -598864.88 5682395.79 95.00 -598864.95 5681568.84 96.25 -598864.95 5683338.31 95.00 -598864.98 5683472.14 96.25 -598865.14 5683363.63 95.00 -598865.18 5683531.32 96.25 -598865.21 5677767.09 98.75 -598865.29 5681513.49 96.25 -598865.37 5677560.32 100.00 -598865.62 5683580.89 95.00 -598865.63 5677884.79 98.75 -598865.64 5687534.49 95.00 -598865.65 5683492.04 96.25 -598866.03 5683541.25 96.25 -598866.08 5683551.24 96.25 -598866.10 5681101.79 97.50 -598866.14 5683561.22 96.25 -598866.22 5681991.58 96.25 -598866.26 5681481.31 96.25 -598866.35 5687572.80 95.00 -598866.40 5683067.89 96.25 -598866.40 5682424.54 95.00 -598866.41 5677138.67 101.25 -598866.51 5682101.19 96.25 -598866.54 5683501.91 96.25 -598866.73 5683349.41 94.90 -598866.79 5683600.87 95.00 -598866.79 5683397.55 95.00 -598866.98 5685815.13 95.00 -598867.04 5683424.46 95.00 -598867.09 5683462.44 96.25 -598867.14 5681043.98 98.75 -598867.21 5685480.02 95.00 -598867.23 5682433.58 96.25 -598867.26 5683649.15 95.00 -598867.26 5677750.45 98.75 -598867.27 5681121.99 96.25 -598867.45 5680615.91 97.50 -598867.56 5681531.85 96.25 -598867.68 5679265.22 98.75 -598867.71 5681523.17 96.25 -598867.79 5683570.90 96.25 -598867.79 5686337.91 95.00 -598867.99 5677476.05 100.00 -598868.05 5677460.22 99.75 -598868.12 5687582.24 95.00 -598868.12 5681336.48 96.25 -598868.22 5683129.49 95.00 -598868.26 5681356.07 96.25 -598868.31 5681575.01 96.25 -598868.45 5687563.03 95.00 -598868.47 5681306.19 96.25 -598868.61 5682072.46 96.25 -598868.82 5683610.50 95.00 -598869.12 5683590.08 95.00 -598869.22 5682028.56 96.25 -598869.39 5680997.84 98.75 -598869.43 5683235.78 95.00 -598869.52 5683411.13 94.90 -598869.61 5682375.02 96.25 -598869.67 5682394.87 96.25 -598869.74 5683452.81 96.25 -598869.90 5681314.94 96.25 -598869.90 5678259.07 98.75 -598869.93 5687543.49 95.00 -598869.96 5687553.16 95.00 -598870.04 5685895.64 95.00 -598870.05 5682000.78 96.25 -598870.52 5686328.30 95.00 -598870.73 5683363.13 95.00 -598870.73 5679025.02 98.75 -598870.74 5677775.32 98.75 -598870.85 5683620.13 95.00 -598871.01 5687380.83 95.00 -598871.11 5683336.49 95.00 -598871.51 5683580.16 96.25 -598871.58 5679113.92 98.75 -598871.63 5677877.37 98.75 -598871.64 5683354.23 95.00 -598871.84 5687591.50 95.00 -598871.86 5681108.49 96.25 -598871.88 5682402.79 95.00 -598872.04 5677860.72 98.75 -598872.04 5679391.25 98.75 -598872.16 5683345.30 95.00 -598872.16 5686318.46 95.00 -598872.30 5681035.56 98.75 -598872.32 5679401.23 98.75 -598872.36 5687659.86 95.00 -598872.44 5682441.91 96.25 -598872.50 5679381.26 98.75 -598872.65 5682010.41 96.25 -598872.77 5677446.56 100.00 -598872.79 5681007.11 98.75 -598872.83 5679411.22 98.75 -598872.95 5685823.13 95.00 -598872.96 5685472.04 95.00 -598872.97 5680570.99 98.75 -598872.97 5679371.27 98.75 -598873.03 5679273.64 98.75 -598873.05 5679722.17 98.75 -598873.10 5683629.71 95.00 -598873.10 5683422.10 95.00 -598873.14 5680155.22 98.75 -598873.23 5683599.03 95.00 -598873.34 5679421.20 98.75 -598873.44 5683061.37 96.25 -598873.49 5683402.41 95.00 -598873.56 5682431.31 95.00 -598873.63 5682318.74 96.25 -598873.74 5683412.34 95.00 -598873.90 5683443.75 96.25 -598873.97 5679431.18 98.75 -598873.99 5683226.95 95.00 -598874.01 5677132.20 101.25 -598874.07 5679361.34 98.75 -598874.14 5682019.93 96.25 -598874.51 5683655.95 95.00 -598874.53 5677471.36 100.00 -598874.54 5682107.15 96.25 -598874.54 5681016.84 98.75 -598874.63 5681567.68 96.25 -598874.78 5681485.88 96.25 -598874.94 5677869.05 98.75 -598875.22 5683589.43 96.25 -598875.36 5677560.32 100.00 -598875.37 5679351.43 98.75 -598875.50 5682079.67 96.25 -598875.59 5681104.26 97.50 -598875.76 5683123.58 95.00 -598875.98 5686309.23 95.00 -598875.98 5682402.41 96.25 -598876.29 5681026.57 98.75 -598876.42 5679440.50 98.75 -598876.57 5679016.95 98.75 -598876.64 5683513.18 96.25 -598876.68 5679341.52 98.75 -598876.69 5680612.29 97.50 -598876.69 5681118.79 96.25 -598876.71 5685888.20 95.00 -598876.78 5683052.06 96.25 -598876.82 5677750.40 98.75 -598876.89 5683608.14 95.00 -598877.04 5683638.73 95.00 -598877.20 5677454.17 100.00 -598877.35 5683561.40 96.25 -598877.38 5677764.18 98.50 -598877.45 5677463.00 100.00 -598877.50 5683523.12 96.25 -598877.54 5683503.34 96.25 -598877.84 5679331.59 98.75 -598877.91 5682450.05 96.25 -598877.91 5681514.42 96.25 -598877.93 5683434.65 96.25 -598878.04 5681337.73 96.25 -598878.24 5681494.46 96.25 -598878.24 5679281.97 98.75 -598878.26 5681356.22 96.25 -598878.36 5683533.07 96.25 -598878.42 5681504.44 96.25 -598878.42 5681305.33 96.25 -598878.43 5677781.45 98.75 -598878.45 5683218.06 95.00 -598878.54 5683463.79 96.25 -598878.81 5685831.23 95.00 -598878.88 5682409.81 95.00 -598878.91 5683598.71 96.25 -598879.00 5679321.66 98.75 -598879.32 5683473.74 96.25 -598879.37 5682376.14 96.25 -598879.48 5682439.26 95.00 -598879.50 5679291.88 98.75 -598879.59 5678256.69 98.75 -598879.61 5683493.57 96.25 -598879.63 5683617.59 95.00 -598879.71 5683571.11 96.25 -598879.72 5681316.19 96.25 -598879.76 5683551.78 96.25 -598879.90 5683454.03 96.25 -598880.01 5686300.12 95.00 -598880.01 5685465.10 95.00 -598880.10 5683483.69 96.25 -598880.12 5683042.75 96.25 -598880.15 5679311.73 98.75 -598880.26 5683424.94 96.25 -598880.38 5687596.68 95.00 -598880.42 5682088.33 96.25 -598880.62 5687383.41 95.00 -598880.76 5679301.80 98.75 -598880.96 5681559.98 96.25 -598881.08 5681523.76 96.25 -598881.17 5683647.66 95.00 -598881.24 5680576.56 98.75 -598881.25 5683365.47 96.25 -598881.36 5679115.78 98.75 -598881.48 5683355.48 96.25 -598881.63 5681110.09 96.25 -598881.64 5677125.77 101.25 -598881.71 5683345.50 96.25 -598881.76 5683315.55 96.25 -598881.77 5683115.98 95.00 -598881.80 5683662.71 95.00 -598881.87 5683542.23 96.25 -598881.89 5683325.54 96.25 -598881.93 5683335.52 96.25 -598882.26 5682320.52 96.25 -598882.30 5680151.42 98.75 -598882.33 5683375.39 96.25 -598882.35 5687659.83 95.00 -598882.37 5683627.04 95.00 -598882.42 5679008.89 98.75 -598882.42 5679448.50 98.75 -598882.58 5683415.23 96.25 -598882.58 5683305.67 96.25 -598882.60 5683607.99 96.25 -598882.60 5683444.44 96.25 -598882.72 5682112.88 96.25 -598882.84 5683209.14 95.00 -598883.01 5683405.26 96.25 -598883.03 5679721.51 98.75 -598883.04 5685880.46 95.00 -598883.39 5683395.28 96.25 -598883.42 5683385.32 96.25 -598883.46 5683033.44 96.25 -598883.57 5682408.58 96.25 -598883.65 5677771.11 98.50 -598883.69 5682457.99 96.25 -598884.54 5681108.37 97.50 -598884.77 5683295.92 96.25 -598885.23 5677755.24 98.75 -598885.35 5677560.32 100.00 -598885.41 5683579.01 96.25 -598885.41 5677788.10 98.75 -598885.66 5685838.45 95.00 -598885.78 5681116.87 96.25 -598885.79 5682416.91 95.00 -598885.80 5686291.98 95.00 -598886.07 5682096.24 96.25 -598886.23 5683617.29 96.25 -598886.37 5681170.34 96.25 -598886.37 5680611.18 97.50 -598886.43 5682446.32 95.00 -598886.66 5683635.89 95.00 -598886.92 5683200.08 95.00 -598886.95 5683286.18 96.25 -598887.77 5683108.38 95.00 -598887.93 5681339.16 96.25 -598888.13 5683436.12 96.25 -598888.23 5681356.78 96.25 -598888.40 5683670.07 95.00 -598888.41 5681305.48 96.25 -598888.53 5683557.76 95.00 -598888.78 5679001.32 98.75 -598888.87 5683652.06 95.00 -598888.95 5685460.82 95.00 -598889.05 5679455.75 98.75 -598889.07 5682375.44 96.25 -598889.20 5687601.16 95.00 -598889.22 5677119.28 101.25 -598889.30 5678254.40 98.75 -598889.36 5685872.72 95.00 -598889.39 5683551.15 95.00 -598889.58 5683025.94 96.25 -598889.59 5683626.69 96.25 -598889.60 5681555.65 96.25 -598889.60 5685706.92 95.00 -598889.71 5681315.77 96.25 -598889.86 5680581.51 98.75 -598889.91 5677797.00 98.75 -598889.92 5677778.03 98.50 -598890.01 5681176.06 96.25 -598890.09 5687386.61 95.00 -598890.19 5681523.43 96.25 -598890.30 5683276.82 96.25 -598890.32 5683644.98 95.00 -598890.72 5679119.01 98.75 -598891.00 5683191.01 95.00 -598891.10 5682316.32 96.25 -598891.27 5682117.92 96.25 -598891.40 5682464.07 96.25 -598891.41 5683327.28 96.25 -598891.55 5682414.32 96.25 -598891.86 5680148.58 98.75 -598892.09 5685716.46 95.00 -598892.15 5683337.09 96.25 -598892.15 5677762.37 98.75 -598892.15 5683554.37 94.90 -598892.16 5685845.79 95.00 -598892.22 5683586.31 96.25 -598892.34 5687659.80 95.00 -598892.71 5682424.00 95.00 -598892.78 5686284.84 95.00 -598892.93 5683317.42 96.25 -598892.96 5683636.09 96.25 -598892.97 5685697.52 95.00 -598893.00 5679721.08 98.75 -598893.05 5683427.56 96.25 -598893.10 5683100.31 95.00 -598893.22 5683397.97 96.25 -598893.24 5685726.38 95.00 -598893.61 5681163.83 96.25 -598893.64 5682453.03 95.00 -598893.96 5681515.75 96.25 -598894.01 5677806.10 98.75 -598894.02 5683388.01 96.25 -598894.19 5681110.30 97.50 -598894.27 5683407.85 96.25 -598894.35 5683267.70 96.25 -598894.55 5683346.77 96.25 -598894.65 5683417.71 96.25 -598894.74 5683307.60 96.25 -598894.75 5685864.31 95.00 -598894.76 5677563.45 100.00 -598894.93 5682100.14 96.25 -598895.01 5685736.15 95.00 -598895.03 5683378.17 96.25 -598895.08 5683181.94 95.00 -598895.12 5681505.88 96.25 -598895.31 5685855.27 95.00 -598895.38 5677815.89 98.75 -598895.82 5683676.44 95.00 -598896.08 5683557.91 95.00 -598896.19 5677784.96 98.50 -598896.29 5680611.40 97.50 -598896.37 5677112.32 101.25 -598896.49 5683018.88 96.25 -598896.63 5678995.19 98.75 -598896.63 5683297.79 96.25 -598896.65 5683550.28 95.00 -598897.34 5682422.01 96.25 -598897.43 5681549.72 96.25 -598897.52 5678563.57 98.75 -598897.55 5678573.55 98.75 -598897.58 5678583.53 98.75 -598897.77 5683594.46 96.25 -598897.82 5681340.58 96.25 -598897.89 5679460.43 98.75 -598898.01 5682371.45 96.25 -598898.04 5683091.98 95.00 -598898.15 5683644.32 96.25 -598898.16 5683258.47 96.25 -598898.19 5681357.57 96.25 -598898.27 5683328.40 95.00 -598898.40 5681305.80 96.25 -598898.40 5677770.15 98.75 -598898.44 5685689.17 95.00 -598898.56 5685745.49 95.00 -598898.82 5687391.30 95.00 -598898.84 5677824.79 98.75 -598898.92 5685460.15 95.00 -598898.95 5680585.62 98.75 -598898.96 5687603.29 95.00 -598899.06 5678252.43 98.75 -598899.11 5683338.14 95.00 -598899.39 5682431.32 95.00 -598899.64 5682469.37 96.25 -598899.65 5683354.26 96.25 -598899.67 5683288.36 96.25 -598899.69 5683318.69 95.00 -598899.69 5681316.29 96.25 -598899.82 5679123.04 98.75 -598900.00 5681175.84 96.25 -598900.21 5678593.03 98.75 -598900.23 5686278.19 95.00 -598900.72 5682314.11 96.25 -598900.85 5682119.77 96.25 -598901.06 5687655.01 95.00 -598901.10 5683308.98 95.00 -598901.57 5681480.64 96.25 -598901.58 5680146.40 98.75 -598901.59 5683174.46 95.00 -598901.67 5683249.13 96.25 -598901.71 5683347.54 95.00 -598901.81 5678555.31 98.75 -598901.82 5677792.37 98.50 -598901.90 5683603.55 96.25 -598901.97 5685754.87 95.00 -598902.20 5683555.80 95.00 -598902.44 5682457.58 95.00 -598902.65 5683371.72 96.25 -598902.81 5681499.72 96.25 -598902.82 5683011.29 96.25 -598902.86 5683484.98 95.00 -598902.89 5683083.59 95.00 -598902.90 5681160.15 96.25 -598902.95 5679722.08 98.75 -598903.53 5677105.35 101.25 -598903.68 5681490.39 96.25 -598903.70 5678602.38 98.75 -598903.87 5683279.30 96.25 -598903.94 5681111.17 97.50 -598904.01 5685680.88 95.00 -598904.09 5677567.03 100.00 -598904.47 5678989.07 98.75 -598904.49 5683681.19 95.00 -598904.65 5677777.93 98.75 -598904.91 5682100.14 96.25 -598904.92 5685764.42 95.00 -598904.93 5681543.14 96.25 -598904.98 5683478.64 95.00 -598905.03 5677832.62 98.75 -598905.04 5683299.99 95.00 -598905.19 5683239.78 96.25 -598905.20 5682439.08 95.00 -598905.28 5683651.31 96.25 -598905.58 5680614.57 97.50 -598906.02 5683612.64 96.25 -598906.25 5682366.07 96.25 -598906.66 5677800.36 98.50 -598906.73 5679465.10 98.75 -598906.99 5682423.24 96.25 -598907.10 5687396.88 95.00 -598907.49 5682475.05 96.25 -598907.64 5686271.52 95.00 -598907.66 5683075.16 95.00 -598907.78 5681340.93 96.25 -598907.97 5685463.75 95.00 -598908.04 5683492.02 95.00 -598908.16 5681358.35 96.25 -598908.16 5683270.28 96.25 -598908.24 5683167.07 95.00 -598908.27 5679128.28 98.75 -598908.38 5681306.26 96.25 -598908.38 5681474.96 96.25 -598908.44 5683343.75 95.00 -598908.46 5680588.40 98.75 -598908.67 5687605.56 95.00 -598908.69 5678548.08 98.75 -598908.70 5683230.43 96.25 -598908.91 5683665.48 95.00 -598908.92 5683290.98 95.00 -598909.03 5678252.07 98.75 -598909.03 5683354.18 96.25 -598909.16 5683003.69 96.25 -598909.50 5678610.47 98.75 -598909.55 5685672.56 95.00 -598909.55 5683621.98 96.25 -598909.67 5681316.86 96.25 -598909.74 5683065.87 95.00 -598909.75 5687650.06 95.00 -598909.81 5683488.08 94.90 -598909.99 5681175.93 96.25 -598910.27 5683365.26 96.25 -598910.37 5682312.08 96.25 -598910.52 5682117.28 96.25 -598910.58 5683500.43 95.00 -598910.64 5685771.99 95.00 -598910.73 5683056.23 95.00 -598910.98 5687368.22 95.00 -598911.01 5677098.78 101.25 -598911.41 5677785.25 98.75 -598911.42 5680144.75 98.75 -598911.49 5677808.36 98.50 -598912.00 5682457.30 95.00 -598912.25 5683482.78 95.00 -598912.42 5683658.29 96.25 -598912.48 5683261.28 96.25 -598912.51 5681157.48 96.25 -598912.57 5677572.25 100.00 -598912.65 5681536.83 96.25 -598912.76 5677838.89 98.75 -598912.85 5683221.36 96.25 -598912.89 5683046.84 95.00 -598912.89 5679723.07 98.75 -598912.92 5683282.03 95.00 -598912.96 5683335.09 95.00 -598913.04 5683631.33 96.25 -598913.05 5683674.30 95.00 -598913.43 5686263.38 95.00 -598913.55 5681128.12 96.25 -598913.60 5682482.73 96.25 -598913.78 5681110.85 97.50 -598913.87 5682041.38 96.25 -598913.92 5683682.63 95.00 -598913.98 5687377.60 95.00 -598914.07 5678987.06 98.75 -598914.10 5682441.50 95.00 -598914.28 5681118.39 96.25 -598914.32 5683345.86 96.25 -598914.53 5683303.94 94.75 -598914.57 5682097.80 96.25 -598914.63 5682360.95 96.25 -598914.73 5680618.43 97.50 -598914.84 5683159.63 95.00 -598914.85 5682032.22 96.25 -598914.92 5685664.16 95.00 -598914.97 5682995.70 96.25 -598915.23 5687402.70 95.00 -598915.41 5683490.72 95.00 -598915.57 5679469.77 98.75 -598915.65 5683506.24 95.00 -598915.75 5687360.59 95.00 -598915.96 5683037.65 95.00 -598916.10 5683325.79 95.00 -598916.13 5685469.31 95.00 -598916.47 5678617.37 98.75 -598916.63 5678542.18 98.75 -598916.67 5683666.97 95.00 -598916.78 5679133.46 98.75 -598916.78 5682422.27 96.25 -598916.81 5683252.28 96.25 -598917.02 5682491.86 96.25 -598917.06 5677815.84 98.50 -598917.21 5681478.38 96.25 -598917.23 5683212.38 96.25 -598917.37 5682050.43 96.25 -598917.54 5683499.23 95.00 -598917.63 5683358.52 96.25 -598917.70 5681341.62 96.25 -598917.72 5687609.80 95.00 -598917.75 5683640.01 96.25 -598918.03 5681359.79 96.25 -598918.13 5683273.72 95.00 -598918.19 5683028.26 95.00 -598918.27 5680590.20 98.75 -598918.35 5681306.96 96.25 -598918.43 5687645.12 95.00 -598918.46 5677792.31 98.75 -598918.60 5685654.89 95.00 -598918.69 5685777.90 95.00 -598918.70 5686254.89 95.00 -598918.91 5677092.67 101.25 -598918.96 5678252.78 98.75 -598919.01 5683337.05 96.25 -598919.36 5681178.43 96.25 -598919.56 5683018.67 95.00 -598919.56 5681317.85 96.25 -598919.79 5681135.89 96.25 -598920.02 5682501.21 96.25 -598920.03 5682114.20 96.25 -598920.11 5682310.49 96.25 -598920.48 5682987.49 96.25 -598920.55 5681530.74 96.25 -598920.57 5687384.62 95.00 -598920.65 5677845.00 98.75 -598920.67 5682024.12 96.25 -598920.86 5683663.53 96.25 -598920.88 5685645.16 95.00 -598920.90 5677577.77 100.00 -598921.19 5683151.98 95.00 -598921.25 5680143.09 98.75 -598921.25 5683317.51 95.00 -598921.50 5683009.28 95.00 -598921.59 5681154.64 96.25 -598921.60 5686245.53 95.00 -598921.82 5682457.58 95.00 -598921.90 5683203.56 96.25 -598921.90 5683243.71 96.25 -598922.09 5683264.96 95.00 -598922.66 5679725.16 98.75 -598922.97 5683674.67 95.00 -598923.00 5677823.05 98.50 -598923.03 5685476.53 95.00 -598923.06 5685635.42 95.00 -598923.15 5686235.66 95.00 -598923.20 5683255.21 95.00 -598923.28 5681145.18 96.25 -598923.28 5681114.17 96.25 -598923.41 5683328.09 96.25 -598923.62 5681110.53 97.50 -598923.64 5682357.70 96.25 -598923.65 5682058.18 96.25 -598923.87 5683647.90 96.25 -598923.93 5678985.71 98.75 -598923.95 5682440.41 95.00 -598923.96 5680622.07 97.50 -598924.13 5682094.96 96.25 -598924.14 5687406.85 95.00 -598924.23 5682510.01 96.25 -598924.52 5687356.21 95.00 -598924.78 5683351.55 96.25 -598924.94 5678622.66 98.75 -598924.97 5682407.90 96.25 -598925.20 5678537.06 98.75 -598925.24 5686225.89 95.00 -598925.25 5681484.30 96.25 -598925.30 5679471.93 98.75 -598925.31 5679138.60 98.75 -598925.63 5677799.24 98.75 -598925.80 5685625.89 95.00 -598925.85 5683308.95 95.00 -598925.98 5682979.27 96.25 -598926.20 5687638.87 95.00 -598926.27 5683000.84 95.00 -598926.34 5685784.28 95.00 -598926.52 5682422.95 96.25 -598926.57 5683194.73 96.25 -598926.76 5687614.04 95.00 -598926.97 5677086.80 101.25 -598927.23 5683235.27 96.25 -598927.49 5681343.64 96.25 -598927.54 5683144.33 95.00 -598927.55 5679067.94 99.00 -598927.74 5683299.43 95.00 -598927.83 5683319.13 96.25 -598927.86 5681361.63 96.25 -598927.86 5686216.27 95.00 -598927.89 5677584.75 100.00 -598927.97 5683289.62 95.00 -598928.12 5680591.75 98.75 -598928.17 5682399.04 96.25 -598928.18 5681524.31 96.25 -598928.18 5681308.60 96.25 -598928.24 5683247.70 95.00 -598928.85 5678253.99 98.75 -598928.88 5681180.59 96.25 -598928.95 5677830.26 98.50 -598929.01 5681321.11 96.25 -598929.31 5682019.73 96.25 -598929.34 5677849.71 98.75 -598929.35 5687389.32 95.00 -598929.44 5682307.58 96.25 -598929.49 5682111.01 96.25 -598929.56 5683682.11 95.00 -598929.56 5683668.44 96.25 -598929.99 5683655.79 96.25 -598930.22 5682065.67 96.25 -598930.23 5681157.22 96.00 -598930.26 5682517.71 96.25 -598930.30 5683280.15 95.00 -598930.56 5682970.53 96.25 -598930.74 5685482.89 95.00 -598930.85 5685617.27 95.00 -598930.92 5682460.45 95.00 -598931.04 5682413.82 96.25 -598931.09 5680141.44 98.75 -598931.32 5682493.39 95.00 -598931.35 5686206.91 95.00 -598931.57 5687630.86 95.00 -598931.63 5682992.78 95.00 -598931.93 5683344.58 96.25 -598932.13 5681147.98 96.00 -598932.35 5687411.94 95.00 -598932.38 5679727.48 98.75 -598932.55 5682503.01 95.00 -598932.56 5683226.82 96.25 -598932.65 5683310.39 96.25 -598932.90 5682090.91 96.25 -598932.90 5687621.73 95.00 -598933.04 5683187.22 96.25 -598933.07 5677805.89 98.75 -598933.13 5681113.13 96.25 -598933.20 5680625.67 97.50 -598933.22 5682358.34 96.25 -598933.35 5685791.41 95.00 -598933.42 5681109.38 97.50 -598933.59 5679477.38 98.75 -598933.72 5678627.25 98.75 -598933.77 5678531.95 98.75 -598933.80 5682439.39 95.00 -598933.84 5678986.52 98.75 -598933.95 5687358.07 95.00 -598933.95 5679143.50 98.75 -598934.13 5677592.55 100.00 -598934.20 5681488.72 96.25 -598934.25 5682391.31 96.25 -598934.54 5683300.61 96.25 -598934.65 5683271.50 95.00 -598934.73 5683137.54 95.00 -598934.77 5682961.58 96.25 -598934.94 5682340.76 96.25 -598934.95 5683290.69 96.25 -598935.27 5683253.53 95.00 -598935.29 5677081.28 101.25 -598935.65 5682332.54 96.25 -598935.94 5686198.07 95.00 -598935.95 5682425.51 96.25 -598936.00 5682486.25 95.00 -598936.08 5681164.55 96.00 -598936.20 5683689.51 95.00 -598936.25 5682512.16 95.00 -598936.57 5682073.25 96.25 -598936.67 5682525.14 96.25 -598936.78 5685609.22 95.00 -598936.82 5682502.17 94.75 -598936.98 5681521.17 96.25 -598937.06 5683662.83 96.25 -598937.07 5681346.37 96.25 -598937.21 5682984.87 95.00 -598937.41 5683281.62 96.25 -598937.65 5683262.84 95.00 -598937.68 5681363.48 96.25 -598937.79 5682082.22 96.25 -598937.86 5681310.99 96.25 -598938.00 5680593.13 98.75 -598938.12 5682105.97 96.25 -598938.16 5682467.21 95.00 -598938.28 5681324.81 96.25 -598938.38 5682303.40 96.25 -598938.48 5687393.39 95.00 -598938.50 5683218.80 96.25 -598938.53 5678256.41 98.75 -598938.62 5677853.37 98.75 -598938.80 5681180.10 96.25 -598938.98 5682952.63 96.25 -598939.00 5685488.25 95.00 -598939.04 5683337.58 96.25 -598939.05 5682018.02 96.25 -598939.22 5683670.39 96.25 -598939.38 5687419.04 95.00 -598939.63 5682383.12 96.25 -598939.73 5681141.67 96.00 -598939.92 5682409.68 96.25 -598939.95 5677813.04 98.75 -598940.29 5682364.72 96.25 -598940.35 5685798.53 95.00 -598940.37 5677600.35 100.00 -598940.39 5683180.46 96.25 -598940.93 5680139.82 98.75 -598940.96 5686189.44 95.00 -598941.41 5682493.49 95.00 -598941.74 5679483.18 98.75 -598942.01 5682347.54 96.25 -598942.13 5679729.68 98.75 -598942.30 5680629.61 97.50 -598942.34 5678526.84 98.75 -598942.39 5683697.29 95.00 -598942.50 5682943.39 96.25 -598942.54 5683131.38 95.00 -598942.54 5682374.06 96.25 -598942.80 5682976.95 95.00 -598942.83 5682532.79 96.25 -598942.92 5687362.21 95.00 -598942.97 5681107.04 97.50 -598943.03 5681114.54 96.25 -598943.23 5682326.51 96.25 -598943.25 5678630.21 98.75 -598943.32 5679146.86 98.75 -598943.38 5682518.10 95.00 -598943.39 5682503.17 95.00 -598943.42 5678988.84 98.75 -598943.55 5685601.91 95.00 -598943.67 5682439.47 95.00 -598943.80 5681488.10 96.25 -598944.34 5677077.08 101.25 -598944.42 5683274.62 96.25 -598944.58 5683210.88 96.25 -598945.16 5683258.95 95.00 -598945.26 5682428.62 96.25 -598945.29 5682474.08 95.00 -598945.52 5682454.42 94.75 -598945.66 5682099.60 96.25 -598945.72 5677821.18 98.75 -598945.93 5681165.48 96.00 -598945.94 5682934.12 96.25 -598945.97 5682297.48 96.25 -598946.13 5683330.55 96.25 -598946.17 5677608.48 100.00 -598946.18 5681368.62 96.25 -598946.46 5686181.10 95.00 -598946.47 5677849.39 98.75 -598946.47 5681349.77 96.25 -598946.68 5681330.00 96.25 -598946.83 5685806.09 95.00 -598946.86 5687425.52 95.00 -598946.95 5681521.17 96.25 -598947.03 5682512.35 95.00 -598947.06 5681314.89 96.25 -598947.46 5682054.26 96.25 -598947.58 5680595.68 98.75 -598947.60 5687397.46 95.00 -598947.72 5682397.41 96.25 -598947.80 5678259.83 98.75 -598948.04 5683251.01 95.00 -598948.29 5683174.43 96.25 -598948.33 5682063.60 96.25 -598948.34 5682540.89 96.25 -598948.51 5685491.30 95.00 -598948.57 5683705.08 95.00 -598948.59 5677830.62 98.75 -598948.64 5682969.24 95.00 -598948.71 5681180.60 96.25 -598948.90 5681138.04 96.00 -598948.94 5682017.64 96.25 -598949.01 5682407.11 96.25 -598949.27 5683417.77 96.25 -598949.36 5682388.61 96.25 -598949.48 5682460.74 94.75 -598949.52 5679489.45 98.75 -598949.72 5677840.37 98.75 -598949.73 5682353.79 96.25 -598949.86 5682925.08 96.25 -598950.00 5683124.80 95.00 -598950.36 5682482.59 95.00 -598950.44 5683202.83 96.25 -598950.49 5683426.94 96.25 -598950.63 5685594.87 95.00 -598950.77 5680138.20 98.75 -598950.78 5687368.39 95.00 -598950.92 5678521.75 98.75 -598951.05 5680634.28 97.50 -598951.12 5683253.80 94.90 -598951.71 5682091.77 96.25 -598951.78 5681482.09 96.25 -598951.88 5677616.68 100.00 -598951.94 5679731.60 98.75 -598952.04 5682321.96 96.25 -598952.11 5686172.86 95.00 -598952.12 5682072.85 96.25 -598952.18 5681103.61 97.50 -598952.24 5683268.42 96.25 -598952.33 5681112.70 96.25 -598952.60 5685814.25 95.00 -598952.65 5683408.37 96.25 -598952.66 5678992.54 98.75 -598952.90 5682290.61 96.25 -598952.93 5678632.05 98.75 -598952.98 5681337.65 96.25 -598953.07 5679148.22 98.75 -598953.28 5682549.37 96.25 -598953.41 5677072.89 101.25 -598953.42 5682441.23 95.00 -598953.43 5683257.68 95.00 -598953.73 5681375.16 96.25 -598953.97 5682379.95 96.25 -598954.07 5683056.92 95.00 -598954.09 5683713.33 95.00 -598954.18 5682491.71 95.00 -598954.38 5682453.75 94.75 -598954.42 5681321.37 96.25 -598954.70 5683193.80 96.25 -598954.82 5682082.47 96.25 -598954.83 5682429.36 96.25 -598954.89 5683330.98 96.25 -598954.93 5681347.14 96.25 -598955.01 5682916.63 96.25 -598955.07 5682961.99 95.00 -598955.07 5683398.70 96.25 -598955.64 5681509.19 96.25 -598955.68 5681163.39 96.00 -598955.73 5687430.12 95.00 -598955.86 5683047.85 95.00 -598956.13 5682049.64 96.25 -598956.17 5682361.01 96.25 -598956.37 5678264.95 98.75 -598956.49 5683174.29 96.25 -598956.60 5679496.47 98.75 -598956.74 5681522.91 96.25 -598956.74 5683247.35 95.00 -598956.83 5683184.08 96.25 -598956.96 5680599.09 98.75 -598957.03 5683388.91 96.25 -598957.03 5682370.51 96.25 -598957.07 5687400.60 95.00 -598957.08 5682410.75 96.25 -598957.28 5682397.83 96.25 -598957.32 5683433.44 96.25 -598957.32 5682342.42 96.00 -598957.38 5682539.77 95.00 -598957.58 5677624.88 100.00 -598957.70 5682500.98 95.00 -598957.76 5686164.62 95.00 -598957.84 5682420.48 96.25 -598958.00 5682464.81 94.75 -598958.18 5682021.39 96.25 -598958.18 5685491.14 95.00 -598958.25 5683119.45 95.00 -598958.28 5681183.34 96.25 -598958.34 5685822.43 95.00 -598958.40 5683379.04 96.25 -598958.45 5685588.65 95.00 -598958.55 5681330.25 96.25 -598958.55 5682530.57 95.00 -598958.60 5681137.20 96.00 -598959.19 5683369.09 96.25 -598959.33 5683064.79 95.00 -598959.51 5678516.66 98.75 -598959.54 5681475.79 96.25 -598959.56 5681097.90 97.50 -598959.66 5682556.82 96.25 -598959.81 5680638.95 97.50 -598959.94 5681106.46 96.25 -598959.97 5683721.29 95.00 -598959.98 5683359.13 96.25 -598960.04 5682383.20 96.00 -598960.13 5687371.44 95.00 -598960.15 5682908.18 96.25 -598960.26 5683038.95 95.00 -598960.31 5683339.18 96.25 -598960.35 5683349.16 96.25 -598960.36 5683262.61 96.25 -598960.38 5682611.84 96.25 -598960.59 5680136.45 98.75 -598960.70 5682549.13 95.00 -598960.86 5682621.79 96.25 -598960.89 5683251.88 95.00 -598961.19 5682601.94 96.25 -598961.30 5682285.43 96.25 -598961.31 5682318.60 96.25 -598961.35 5683614.32 95.00 -598961.49 5680960.85 98.75 -598961.49 5682954.73 95.00 -598961.50 5682350.89 96.00 -598961.51 5681339.80 96.25 -598961.55 5682510.10 95.00 -598961.75 5679733.53 98.75 -598961.90 5683604.48 95.00 -598961.90 5678996.25 98.75 -598962.07 5682337.42 96.00 -598962.27 5681502.09 96.25 -598962.27 5681088.43 97.50 -598962.29 5681513.29 96.25 -598962.33 5682445.55 95.00 -598962.35 5683424.81 96.25 -598962.50 5680951.13 98.75 -598962.57 5682458.10 94.75 -598962.58 5681379.47 96.25 -598962.61 5677069.03 101.25 -598962.89 5686156.07 95.00 -598962.91 5678631.71 98.75 -598962.98 5683594.59 95.00 -598963.02 5679148.45 98.75 -598963.15 5680970.47 98.75 -598963.15 5679504.01 98.75 -598963.28 5677633.09 100.00 -598963.51 5682472.44 94.75 -598963.54 5682631.29 96.25 -598963.90 5683623.93 95.00 -598964.05 5685830.62 95.00 -598964.30 5683029.89 95.00 -598964.36 5682592.89 96.25 -598964.51 5680941.71 98.75 -598964.56 5682375.69 96.00 -598964.67 5687432.64 95.00 -598964.90 5682558.19 95.00 -598965.02 5683584.87 95.00 -598965.20 5678269.05 98.75 -598965.25 5681160.65 96.00 -598965.39 5682564.76 96.25 -598965.51 5681079.10 97.50 -598965.57 5681348.88 96.25 -598965.57 5682899.95 96.25 -598965.71 5682946.14 95.00 -598965.93 5683415.57 96.25 -598966.02 5682048.24 96.25 -598966.08 5685582.23 95.00 -598966.09 5682393.35 96.25 -598966.12 5682499.62 94.75 -598966.15 5682386.17 96.00 -598966.26 5680602.67 98.75 -598966.27 5681525.82 96.25 -598966.44 5683633.55 95.00 -598966.51 5681098.93 96.25 -598966.62 5682481.31 94.75 -598966.65 5687403.43 95.00 -598966.75 5682610.48 95.00 -598966.97 5682026.10 96.25 -598967.07 5682533.54 95.00 -598967.16 5683575.16 95.00 -598967.28 5683115.30 95.00 -598967.38 5682358.32 96.00 -598967.49 5686147.21 95.00 -598967.55 5680978.96 98.75 -598967.62 5683727.40 95.00 -598967.69 5682490.34 94.75 -598967.85 5679512.77 98.75 -598967.86 5685488.78 95.00 -598967.86 5683020.63 95.00 -598967.86 5681470.32 96.25 -598967.93 5682619.99 95.00 -598967.95 5681185.80 96.25 -598968.02 5683256.22 96.25 -598968.10 5678511.58 98.75 -598968.13 5682516.20 95.00 -598968.23 5681139.36 96.00 -598968.32 5682639.97 96.25 -598968.54 5681069.72 97.50 -598968.54 5683066.62 95.00 -598968.57 5680643.62 97.50 -598968.60 5683405.95 96.25 -598968.79 5682367.69 96.00 -598968.79 5682507.77 94.75 -598968.88 5682343.87 96.00 -598968.98 5683643.16 95.00 -598969.17 5682937.09 95.00 -598969.19 5680933.13 98.75 -598969.30 5683565.45 95.00 -598969.32 5682464.69 94.75 -598969.57 5677640.84 100.00 -598969.70 5682280.25 96.25 -598969.77 5685838.81 95.00 -598969.85 5682629.38 95.00 -598969.88 5687373.60 95.00 -598970.29 5683682.66 95.00 -598970.38 5682451.30 95.00 -598970.39 5680134.56 98.75 -598970.52 5683672.72 95.00 -598970.59 5682566.35 95.00 -598970.64 5682573.03 96.25 -598970.74 5683662.78 95.00 -598970.94 5682316.24 96.25 -598970.97 5683652.84 95.00 -598971.12 5686137.90 95.00 -598971.16 5681497.58 96.25 -598971.25 5681060.23 97.50 -598971.28 5683396.33 96.25 -598971.33 5678999.46 98.75 -598971.44 5683555.74 95.00 -598971.49 5682605.63 95.00 -598971.56 5679735.45 98.75 -598971.76 5683011.50 95.00 -598971.87 5677065.31 101.25 -598972.16 5679521.79 98.75 -598972.24 5681513.90 96.25 -598972.39 5682379.62 96.00 -598972.44 5681379.28 96.25 -598972.53 5682892.93 96.25 -598972.60 5682588.52 96.25 -598972.68 5682541.81 95.00 -598972.75 5682352.52 96.00 -598972.78 5682473.46 94.75 -598972.88 5678631.36 98.75 -598972.93 5685574.96 95.00 -598972.98 5679148.68 98.75 -598973.05 5681154.79 96.00 -598973.10 5683692.15 95.00 -598973.20 5681354.20 96.25 -598973.23 5682928.31 95.00 -598973.45 5683721.58 95.00 -598973.58 5683546.03 95.00 -598973.61 5687428.19 95.00 -598973.86 5682501.45 94.75 -598974.11 5682637.71 95.00 -598974.28 5681050.85 97.50 -598974.44 5681443.70 96.25 -598974.49 5682482.74 94.75 -598974.55 5682388.19 96.25 -598974.55 5681093.86 96.25 -598974.73 5683701.85 95.00 -598974.75 5686128.59 95.00 -598974.83 5683536.17 95.00 -598974.94 5682627.70 94.75 -598974.98 5682492.12 94.75 -598975.00 5683711.79 95.00 -598975.18 5678268.91 98.75 -598975.30 5682646.55 96.25 -598975.35 5680606.78 98.75 -598975.46 5682361.58 96.00 -598975.46 5683249.57 96.25 -598975.55 5681529.41 96.25 -598975.57 5682370.73 96.00 -598975.57 5682614.26 95.00 -598975.57 5681145.41 96.00 -598975.60 5680925.76 98.75 -598975.81 5683002.44 95.00 -598975.93 5683387.60 96.25 -598975.94 5682047.01 96.25 -598975.96 5683526.29 95.00 -598976.03 5677648.46 100.00 -598976.23 5687406.26 95.00 -598976.33 5685846.23 95.00 -598976.34 5680982.08 98.75 -598976.50 5682513.13 95.00 -598976.69 5682027.91 96.25 -598976.69 5678506.50 98.75 -598976.71 5683112.18 95.00 -598976.74 5681182.08 96.25 -598976.77 5685484.27 95.00 -598976.88 5679530.60 98.75 -598976.92 5683516.39 95.00 -598977.03 5680648.79 97.50 -598977.04 5681467.17 96.25 -598977.28 5686118.93 95.00 -598977.41 5682458.20 95.00 -598977.50 5682919.61 95.00 -598977.58 5682573.37 95.00 -598977.60 5682596.52 96.25 -598977.74 5683506.48 95.00 -598977.84 5681102.62 96.25 -598977.89 5681041.66 97.50 -598978.18 5682579.15 96.25 -598978.43 5682606.46 96.25 -598978.44 5682275.75 96.25 -598978.45 5683066.28 95.00 -598978.46 5682530.32 96.25 -598978.56 5683496.57 95.00 -598978.73 5682623.32 95.00 -598979.49 5682885.90 96.25 -598979.51 5683486.68 95.00 -598979.59 5681112.46 96.25 -598979.65 5680131.71 98.75 -598979.66 5682520.64 96.25 -598979.72 5687375.31 95.00 -598979.78 5685567.68 95.00 -598979.80 5686109.26 95.00 -598979.89 5682993.39 95.00 -598980.04 5681493.03 96.25 -598980.06 5680947.37 99.00 -598980.25 5682548.19 95.00 -598980.52 5683476.78 95.00 -598980.52 5683010.75 96.25 -598980.61 5682314.04 96.25 -598980.65 5681437.38 96.25 -598980.78 5679002.61 98.75 -598980.93 5683298.53 96.30 -598980.97 5681449.32 96.25 -598981.05 5683020.63 96.25 -598981.27 5677061.94 101.25 -598981.34 5679737.55 98.75 -598981.38 5683379.24 96.25 -598981.50 5681032.48 97.50 -598981.50 5682504.65 95.00 -598981.52 5682615.90 96.25 -598981.53 5683466.89 95.00 -598981.61 5679539.41 98.75 -598981.68 5682539.04 96.25 -598981.76 5682910.91 95.00 -598981.95 5681376.21 96.25 -598982.02 5680918.39 98.75 -598982.14 5678044.10 98.75 -598982.15 5683001.04 96.25 -598982.22 5681514.00 96.25 -598982.22 5682381.91 96.25 -598982.24 5682642.04 95.00 -598982.53 5678053.91 98.75 -598982.56 5682466.51 95.00 -598982.62 5678633.50 98.75 -598982.67 5687423.96 95.00 -598982.80 5678034.25 98.75 -598982.80 5683457.03 95.00 -598982.80 5683030.31 96.25 -598982.81 5679147.71 98.75 -598982.90 5683242.91 96.25 -598983.13 5677655.35 100.00 -598983.19 5681354.05 96.25 -598983.26 5682567.67 94.75 -598983.49 5682901.57 95.00 -598983.70 5680976.88 98.75 -598983.80 5686100.17 95.00 -598983.81 5682891.89 95.00 -598983.98 5678063.67 98.75 -598984.02 5685852.61 95.00 -598984.06 5681534.57 96.25 -598984.09 5680611.51 98.75 -598984.11 5682984.41 95.00 -598984.21 5682631.00 95.00 -598984.34 5683447.21 95.00 -598984.45 5682650.50 96.25 -598984.77 5681023.17 97.50 -598984.84 5682495.41 95.00 -598985.01 5682562.96 94.75 -598985.14 5678268.47 98.75 -598985.22 5681120.71 96.25 -598985.28 5687409.83 95.00 -598985.28 5678501.43 98.75 -598985.35 5681177.91 96.25 -598985.38 5680046.55 98.75 -598985.44 5678073.44 98.75 -598985.46 5680654.03 97.50 -598985.49 5680056.30 98.75 -598985.59 5682579.32 95.00 -598985.59 5682512.79 96.25 -598985.69 5685479.76 95.00 -598985.69 5681211.98 96.25 -598985.69 5682044.97 96.25 -598985.72 5682475.83 95.00 -598985.83 5681202.22 96.25 -598985.88 5683437.39 95.00 -598985.89 5678024.90 98.75 -598985.98 5682025.89 96.25 -598986.00 5682878.45 96.25 -598986.24 5683109.37 95.00 -598986.33 5679548.22 98.75 -598986.35 5680124.36 98.75 -598986.44 5682485.71 95.00 -598986.73 5682275.26 95.00 -598986.94 5681466.21 96.25 -598986.94 5680909.95 98.75 -598986.96 5683370.96 96.25 -598986.99 5682583.49 96.25 -598987.25 5682992.50 96.25 -598987.38 5680036.77 98.75 -598987.52 5683234.07 96.25 -598987.58 5682272.03 96.25 -598987.64 5685561.55 95.00 -598987.65 5680066.04 98.75 -598987.82 5681013.79 97.50 -598987.84 5678015.41 98.75 -598987.90 5683427.65 95.00 -598987.97 5681221.60 96.25 -598987.98 5683063.49 95.00 -598988.00 5679009.42 98.75 -598988.03 5682623.25 96.25 -598988.18 5678082.92 98.75 -598988.21 5682546.20 96.25 -598988.22 5680968.24 98.75 -598988.28 5682554.14 95.00 -598988.34 5682975.43 95.00 -598988.47 5686091.34 95.00 -598988.86 5683038.02 96.25 -598988.93 5681488.51 96.25 -598989.39 5680075.85 98.75 -598989.43 5682638.76 95.00 -598989.55 5687376.86 95.00 -598989.72 5682375.70 96.25 -598989.78 5680027.10 98.75 -598989.89 5687418.24 95.00 -598989.96 5683417.93 95.00 -598990.05 5681193.29 96.25 -598990.18 5677057.57 101.25 -598990.42 5682312.57 96.25 -598990.55 5681437.24 96.25 -598990.57 5681004.31 97.50 -598990.57 5682572.95 94.75 -598990.80 5680115.47 98.75 -598990.90 5680085.71 98.75 -598990.90 5681450.46 96.25 -598990.92 5678092.41 98.75 -598991.10 5679739.70 98.75 -598991.51 5682504.95 96.25 -598991.54 5677660.74 100.00 -598991.55 5679018.46 98.75 -598991.56 5680105.52 98.75 -598991.69 5681377.14 96.25 -598991.77 5680901.46 98.75 -598991.82 5681515.65 96.25 -598991.85 5679556.51 98.75 -598991.86 5681350.00 96.25 -598991.89 5680959.18 98.75 -598992.03 5685858.47 95.00 -598992.08 5681540.51 96.25 -598992.20 5678636.29 98.75 -598992.22 5683408.25 95.00 -598992.30 5680617.17 98.75 -598992.32 5681184.01 96.25 -598992.33 5680095.58 98.75 -598992.34 5683225.33 96.25 -598992.44 5681230.54 96.25 -598992.50 5679145.42 98.75 -598992.57 5682966.45 95.00 -598992.69 5681250.06 96.25 -598992.92 5683362.95 96.25 -598993.01 5682279.97 95.00 -598993.03 5682984.40 96.25 -598993.17 5681240.15 96.25 -598993.23 5682566.78 94.75 -598993.29 5678101.99 98.75 -598993.29 5682366.45 96.25 -598993.74 5679028.16 98.75 -598993.81 5681330.29 96.25 -598993.81 5681340.28 96.25 -598993.88 5680018.18 98.75 -598993.88 5682653.61 96.25 -598993.89 5680659.27 97.50 -598994.04 5678007.76 98.75 -598994.18 5686083.17 95.00 -598994.22 5678497.02 98.75 -598994.40 5681259.89 96.25 -598994.56 5685475.17 95.00 -598994.84 5681122.73 96.25 -598994.99 5682021.69 96.25 -598995.06 5678267.38 98.75 -598995.07 5682582.48 95.00 -598995.14 5680995.74 97.50 -598995.18 5679038.01 98.75 -598995.25 5682042.07 96.25 -598995.29 5682630.09 96.25 -598995.31 5683398.80 95.00 -598995.35 5678111.64 98.75 -598995.45 5680950.08 98.75 -598995.49 5683353.69 96.25 -598995.63 5682271.54 95.00 -598995.73 5685555.69 95.00 -598995.78 5683106.56 95.00 -598995.90 5682560.39 95.00 -598996.00 5682587.37 96.25 -598996.14 5682552.01 96.25 -598996.16 5681462.97 96.25 -598996.26 5682356.99 96.25 -598996.26 5681320.91 96.25 -598996.61 5680892.96 98.75 -598996.72 5682268.31 96.25 -598996.78 5682957.46 95.00 -598997.48 5678121.28 98.75 -598997.50 5683060.70 95.00 -598997.63 5679047.61 98.75 -598997.63 5683216.87 96.25 -598997.95 5681484.25 96.25 -598997.95 5683344.08 96.25 -598998.06 5682424.76 94.75 -598998.15 5679564.27 98.75 -598998.39 5677998.89 98.75 -598998.40 5682577.51 94.75 -598998.40 5683389.35 95.00 -598998.41 5683040.85 96.25 -598998.68 5677052.33 101.25 -598998.82 5687380.56 95.00 -598998.93 5680940.94 98.75 -598998.99 5682347.46 96.25 -598999.00 5680624.56 98.75 -598999.13 5681522.10 96.25 -598999.43 5681454.57 96.25 -598999.47 5682503.81 96.25 -598999.53 5682415.13 94.75 -598999.74 5680010.12 98.75 -598999.80 5681382.94 96.25 -598999.83 5682977.16 96.25 -598999.96 5677666.12 100.00 -599000.00 5678130.82 98.75 -599000.13 5682311.95 96.25 -599000.31 5686075.29 95.00 -599000.54 5681437.62 96.25 -599000.88 5679140.18 98.75 -599000.88 5679741.73 98.75 -599000.95 5682948.45 95.00 -599001.01 5683207.53 96.25 -599001.04 5680987.83 97.50 -599001.07 5685862.74 95.00 -599001.10 5679056.94 98.75 -599001.10 5681265.86 96.25 -599001.10 5681538.84 96.25 -599001.12 5683334.61 96.25 -599001.21 5682571.12 94.75 -599001.75 5683379.99 95.00 -599001.77 5678639.12 98.75 -599002.09 5677989.77 98.75 -599002.14 5680931.71 98.75 -599002.39 5682338.14 96.25 -599002.67 5682278.85 95.00 -599002.72 5680663.77 97.50 -599003.28 5685470.30 95.00 -599003.28 5678492.84 98.75 -599003.34 5682512.84 96.25 -599003.42 5682406.13 94.75 -599003.48 5681319.20 96.25 -599003.52 5682566.64 95.00 -599003.61 5682655.77 96.25 -599003.63 5682634.87 96.25 -599003.86 5681208.04 96.25 -599003.86 5681218.03 96.25 -599003.95 5682557.97 96.25 -599003.99 5685550.08 95.00 -599004.00 5678139.80 98.75 -599004.20 5680887.28 98.75 -599004.26 5681530.24 96.25 -599004.30 5681228.01 96.25 -599004.46 5682451.65 94.75 -599004.52 5682267.77 95.00 -599004.53 5682018.79 96.25 -599004.55 5682585.64 95.00 -599004.57 5682038.44 96.25 -599004.66 5683198.32 96.25 -599004.69 5683325.29 96.25 -599004.83 5681123.03 96.25 -599004.85 5681198.14 96.25 -599004.86 5682429.35 94.75 -599004.89 5681237.99 96.25 -599004.94 5678266.01 98.75 -599004.99 5682939.39 95.00 -599005.02 5677980.34 98.75 -599005.10 5680632.39 98.75 -599005.15 5683370.65 95.00 -599005.22 5682590.74 96.25 -599005.45 5681328.73 96.25 -599005.47 5683104.42 95.00 -599005.54 5682318.89 96.25 -599005.62 5682328.78 96.25 -599005.68 5682522.39 96.25 -599005.75 5682264.33 96.25 -599005.76 5681257.89 96.25 -599005.79 5681247.94 96.25 -599006.04 5682582.35 94.75 -599006.21 5682969.67 96.25 -599006.25 5679570.10 98.75 -599006.36 5681338.68 96.25 -599006.76 5686067.68 95.00 -599006.88 5683057.47 95.00 -599006.90 5680979.90 97.50 -599006.94 5680923.28 98.75 -599006.99 5679064.85 98.75 -599007.01 5682459.68 94.75 -599007.07 5677046.93 101.25 -599007.16 5687386.04 95.00 -599007.23 5681481.13 96.25 -599007.36 5681389.48 96.25 -599007.39 5679132.67 98.75 -599007.55 5681371.55 96.25 -599007.74 5681188.74 96.25 -599007.95 5677970.92 98.75 -599008.23 5683039.56 96.25 -599008.28 5680005.31 98.75 -599008.31 5683315.98 96.25 -599008.52 5677671.26 100.00 -599008.55 5683361.30 95.00 -599008.77 5682576.11 94.75 -599008.95 5682930.28 95.00 -599008.96 5682531.33 96.25 -599009.37 5682444.54 94.75 -599009.57 5681348.00 96.25 -599009.61 5681380.67 96.25 -599009.84 5683189.78 96.25 -599009.98 5680641.09 98.75 -599010.10 5685867.00 95.00 -599010.13 5682421.23 94.75 -599010.17 5678147.26 98.75 -599010.24 5681498.55 96.25 -599010.30 5682960.59 96.25 -599010.32 5682630.44 96.25 -599010.53 5681437.70 96.25 -599010.69 5680914.25 98.75 -599010.77 5680970.82 97.50 -599010.84 5681488.62 96.25 -599010.86 5682402.00 94.75 -599010.88 5679741.96 98.75 -599011.15 5682572.88 95.00 -599011.34 5678641.95 98.75 -599011.55 5682564.22 96.25 -599011.56 5683351.83 95.00 -599011.67 5680668.06 97.50 -599011.83 5682275.21 95.00 -599011.85 5682744.25 96.25 -599011.87 5679540.79 97.50 -599012.01 5685465.43 95.00 -599012.26 5683306.81 96.25 -599012.27 5685544.49 95.00 -599012.35 5678488.66 98.75 -599012.43 5682411.61 94.75 -599012.89 5682735.02 96.25 -599012.91 5682921.18 95.00 -599012.98 5682659.15 96.25 -599013.16 5680888.42 98.75 -599013.33 5679550.11 97.50 -599013.47 5681180.56 96.25 -599013.48 5682264.22 95.00 -599013.50 5679072.38 98.75 -599013.64 5686060.43 95.00 -599013.82 5679125.06 98.75 -599013.82 5677962.98 98.75 -599014.02 5682588.80 95.00 -599014.16 5682035.68 96.25 -599014.16 5682686.72 96.25 -599014.22 5682951.45 96.25 -599014.34 5682582.96 94.75 -599014.36 5683297.14 96.25 -599014.38 5682594.15 96.25 -599014.39 5682017.30 96.25 -599014.43 5680905.22 98.75 -599014.46 5678263.25 98.75 -599014.47 5679575.79 98.75 -599014.48 5683342.32 95.00 -599014.54 5681121.67 96.25 -599014.63 5680961.74 97.50 -599014.76 5682260.30 96.25 -599015.08 5682457.27 94.75 -599015.12 5680649.63 98.75 -599015.22 5682696.54 96.25 -599015.28 5681388.09 96.25 -599015.28 5683102.76 95.00 -599015.34 5677041.34 101.25 -599015.48 5683181.57 96.25 -599015.49 5687391.56 95.00 -599015.58 5683287.23 96.25 -599015.66 5681502.41 96.25 -599015.98 5682448.65 94.75 -599016.04 5682911.77 95.00 -599016.08 5681369.81 96.25 -599016.17 5683053.97 95.00 -599016.26 5682725.65 96.25 -599016.44 5681048.38 96.25 -599016.62 5682677.07 96.25 -599016.75 5681038.46 96.25 -599016.82 5683277.32 96.25 -599016.83 5680952.12 97.50 -599016.87 5681354.55 96.25 -599016.93 5682536.70 96.25 -599017.11 5683332.74 95.00 -599017.15 5677676.29 100.00 -599017.16 5680895.85 98.75 -599017.30 5681171.39 96.25 -599017.70 5682667.26 96.25 -599017.76 5681028.52 96.25 -599017.97 5678153.06 98.75 -599018.05 5680004.17 98.75 -599018.06 5681058.25 96.25 -599018.06 5683267.41 96.25 -599018.06 5683038.03 96.25 -599018.10 5682942.28 96.25 -599018.11 5682715.97 96.25 -599018.24 5682706.00 96.25 -599018.68 5682628.75 96.25 -599018.71 5685458.11 95.00 -599018.80 5682750.60 96.25 -599018.95 5680942.49 97.50 -599019.00 5679116.62 98.75 -599019.03 5679536.74 97.50 -599019.12 5682902.33 95.00 -599019.14 5682570.46 96.25 -599019.17 5679557.97 97.50 -599019.45 5683323.08 95.00 -599019.61 5682577.68 95.00 -599019.62 5685537.78 95.00 -599019.71 5681068.10 96.25 -599019.73 5685869.60 95.00 -599020.38 5679079.58 98.75 -599020.52 5686053.19 95.00 -599020.52 5681437.70 96.25 -599020.53 5680672.53 97.50 -599020.59 5680657.96 98.75 -599020.71 5681162.00 96.25 -599020.74 5677956.35 98.75 -599020.87 5679742.18 98.75 -599021.00 5678644.45 98.75 -599021.32 5682274.81 95.00 -599021.59 5678484.95 98.75 -599021.77 5683258.17 96.25 -599021.80 5683313.41 95.00 -599021.81 5683173.85 96.25 -599021.84 5681019.57 96.25 -599021.89 5682933.08 96.25 -599021.99 5680933.10 97.50 -599022.06 5681077.82 96.25 -599022.14 5681495.02 96.25 -599022.37 5681116.43 96.25 -599022.49 5682599.68 96.25 -599022.70 5682261.77 95.00 -599022.72 5677034.61 101.25 -599022.75 5682637.23 96.25 -599022.92 5679107.53 98.75 -599023.24 5682592.67 95.00 -599023.30 5679580.47 98.75 -599023.74 5682037.25 96.25 -599023.75 5678259.60 98.75 -599023.77 5682256.43 96.25 -599023.80 5687397.11 95.00 -599024.27 5682015.96 96.25 -599024.31 5683303.79 95.00 -599024.42 5681087.53 96.25 -599024.61 5679088.05 98.75 -599024.63 5681374.99 96.25 -599025.08 5683101.11 95.00 -599025.15 5680923.76 97.50 -599025.20 5682719.95 95.00 -599025.34 5685529.70 95.00 -599025.45 5679097.90 98.75 -599025.49 5681359.38 96.25 -599025.51 5683050.62 95.00 -599025.51 5682710.92 95.00 -599025.68 5682923.87 96.25 -599025.69 5683248.99 96.25 -599025.79 5677681.32 100.00 -599026.01 5681097.34 96.25 -599026.14 5681107.33 96.25 -599026.19 5682375.91 95.00 -599026.27 5682701.88 95.00 -599026.31 5682366.24 95.00 -599026.59 5681154.25 96.25 -599026.71 5682692.82 95.00 -599026.73 5682646.30 96.25 -599026.75 5682537.29 96.25 -599026.84 5681010.91 96.25 -599026.86 5683294.18 95.00 -599027.11 5685453.20 95.00 -599027.22 5679563.81 97.50 -599027.40 5686045.94 95.00 -599027.65 5683035.49 96.25 -599027.67 5682575.35 96.25 -599027.80 5678153.87 98.75 -599027.85 5680005.13 98.75 -599027.98 5682866.99 96.25 -599028.20 5682753.93 96.25 -599028.24 5679476.62 98.75 -599028.31 5680914.41 97.50 -599028.48 5679539.91 97.50 -599028.50 5680663.96 98.75 -599028.52 5682385.12 95.00 -599028.53 5682914.34 96.25 -599028.82 5682581.18 95.00 -599028.97 5682280.80 95.00 -599029.31 5680677.15 97.50 -599029.42 5685872.05 95.00 -599029.42 5683167.51 96.25 -599029.47 5683284.59 95.00 -599029.53 5681433.66 96.25 -599029.56 5685520.75 95.00 -599029.65 5681488.47 96.25 -599029.80 5677952.43 98.75 -599030.03 5682357.11 95.00 -599030.04 5677027.84 101.25 -599030.06 5679485.17 98.75 -599030.21 5681001.58 96.25 -599030.31 5682725.40 95.00 -599030.38 5680904.80 97.50 -599030.71 5678646.74 98.75 -599030.72 5682686.62 95.00 -599030.73 5679467.24 98.75 -599030.86 5679742.19 98.75 -599030.89 5682604.75 96.25 -599030.95 5685510.86 95.00 -599031.08 5683240.67 96.25 -599031.13 5678482.01 98.75 -599031.28 5682904.78 96.25 -599031.76 5680895.03 97.50 -599031.78 5682654.89 96.25 -599031.84 5678253.82 98.75 -599031.89 5682705.95 94.75 -599031.95 5679585.43 98.75 -599032.03 5682263.33 95.00 -599032.43 5682875.89 96.25 -599032.44 5682596.57 95.00 -599032.49 5685500.99 95.00 -599032.54 5682041.93 96.25 -599032.75 5683275.20 95.00 -599032.79 5682376.75 94.74 -599032.86 5680991.94 96.25 -599032.89 5686037.59 95.00 -599032.90 5682260.18 96.25 -599033.01 5682347.75 95.00 -599033.13 5680885.26 97.50 -599033.14 5681380.23 96.25 -599033.49 5687398.95 95.00 -599033.88 5682895.17 96.25 -599033.90 5682288.98 95.00 -599034.02 5682298.84 95.00 -599034.20 5682015.20 96.25 -599034.28 5682308.69 95.00 -599034.37 5677686.43 100.00 -599034.62 5682318.54 95.00 -599034.84 5685491.28 95.00 -599034.84 5682885.50 96.25 -599034.86 5683099.30 95.00 -599034.94 5683047.53 95.00 -599034.95 5681362.60 96.25 -599035.09 5682338.12 95.00 -599035.12 5679458.98 98.75 -599035.18 5682384.69 94.74 -599035.36 5682328.37 95.00 -599035.60 5680982.33 96.25 -599035.62 5682369.70 94.74 -599035.75 5682692.33 95.00 -599035.80 5679568.88 97.50 -599035.82 5682464.42 95.00 -599035.89 5682540.62 96.25 -599036.11 5682719.20 95.00 -599036.17 5681153.85 96.25 -599036.19 5677019.98 101.25 -599036.20 5682580.25 96.25 -599036.22 5682474.27 95.00 -599036.34 5682454.61 95.00 -599036.48 5682390.52 95.00 -599036.48 5683266.02 95.00 -599036.50 5685449.88 95.00 -599036.74 5680669.57 98.75 -599036.86 5681427.09 96.25 -599037.07 5683032.28 96.25 -599037.14 5682663.30 96.25 -599037.18 5686028.59 95.00 -599037.20 5682701.27 95.00 -599037.22 5683232.80 96.25 -599037.37 5680008.10 98.75 -599037.48 5679491.38 98.75 -599037.51 5678153.08 98.75 -599037.53 5682585.81 95.00 -599037.53 5682757.42 96.25 -599037.63 5682710.25 95.00 -599037.80 5683162.13 96.25 -599037.81 5680682.27 97.50 -599037.87 5681482.87 96.25 -599037.87 5679543.25 97.50 -599038.20 5682444.98 95.00 -599038.50 5685926.68 95.00 -599038.52 5680972.77 96.25 -599038.82 5682483.74 95.00 -599039.08 5685874.55 95.00 -599039.16 5685916.72 95.00 -599039.24 5682269.58 95.00 -599039.31 5677950.19 98.75 -599039.60 5678247.57 98.75 -599039.66 5682472.00 94.75 -599039.79 5679591.64 98.75 -599040.16 5682462.28 94.75 -599040.25 5682563.29 96.50 -599040.43 5682606.55 96.25 -599040.46 5682265.58 96.25 -599040.51 5678648.33 98.75 -599040.66 5678479.07 98.75 -599040.73 5683223.73 96.25 -599040.74 5685483.53 95.00 -599040.79 5679741.05 98.75 -599041.30 5683257.32 95.00 -599041.33 5686019.50 95.00 -599041.43 5680963.21 96.25 -599041.46 5682046.11 96.25 -599041.63 5682600.49 95.00 -599041.70 5677011.68 101.25 -599041.71 5685935.84 95.00 -599041.71 5682481.51 94.75 -599041.76 5682435.83 95.00 -599042.03 5682452.86 94.75 -599042.03 5682671.98 96.25 -599042.16 5679452.30 98.75 -599042.18 5682492.98 95.00 -599042.63 5683213.93 96.25 -599042.71 5681382.34 96.25 -599042.84 5682387.07 94.74 -599042.91 5677691.61 100.00 -599043.02 5680953.36 96.25 -599043.03 5682372.96 94.74 -599043.24 5682740.61 96.25 -599043.34 5682731.01 96.25 -599043.36 5681159.75 96.25 -599043.45 5687399.63 95.00 -599043.55 5681419.67 96.25 -599043.73 5682278.12 95.00 -599043.90 5683043.29 95.00 -599043.97 5680870.32 96.25 -599044.01 5682721.07 96.25 -599044.06 5685908.13 95.00 -599044.14 5680943.44 96.25 -599044.16 5679574.31 97.50 -599044.18 5682014.95 96.25 -599044.52 5683096.97 95.00 -599044.54 5683204.12 96.25 -599044.58 5682711.12 96.25 -599044.63 5682274.52 96.25 -599044.68 5681363.99 96.25 -599044.81 5682490.67 94.75 -599044.83 5682584.91 96.25 -599044.87 5682544.63 96.25 -599044.87 5680933.47 96.25 -599044.89 5680888.82 96.25 -599045.28 5680879.57 96.25 -599045.30 5682681.37 96.25 -599045.33 5686010.35 95.00 -599045.37 5682763.49 96.25 -599045.45 5680674.43 98.75 -599045.75 5682701.22 96.25 -599045.93 5683248.52 95.00 -599045.94 5682691.27 96.25 -599046.00 5682287.41 95.00 -599046.11 5683028.15 96.25 -599046.20 5680687.57 97.50 -599046.25 5682391.85 95.00 -599046.38 5679494.40 98.75 -599046.39 5682590.08 95.00 -599046.39 5685448.47 95.00 -599046.41 5682444.28 94.75 -599046.52 5685881.08 95.00 -599046.59 5682380.57 94.74 -599046.63 5683194.38 96.25 -599046.63 5677003.01 101.25 -599046.80 5685475.64 95.00 -599046.89 5678150.21 98.75 -599046.89 5680011.07 98.75 -599046.94 5681478.78 96.25 -599047.05 5677835.58 100.00 -599047.17 5682501.36 95.00 -599047.22 5678241.12 98.75 -599047.24 5683159.57 96.25 -599047.28 5679546.52 97.50 -599047.35 5682427.72 95.00 -599047.46 5685943.80 95.00 -599047.57 5680863.00 96.25 -599047.57 5682296.94 95.00 -599047.62 5679597.85 98.75 -599047.63 5680923.95 96.25 -599047.79 5682283.74 96.25 -599048.01 5685898.97 95.00 -599048.10 5682306.56 95.00 -599048.30 5681168.42 96.25 -599048.46 5682316.21 95.00 -599048.70 5686000.95 95.00 -599048.74 5682293.56 96.25 -599048.81 5682325.86 95.00 -599049.12 5677949.07 98.75 -599049.17 5682335.50 95.00 -599049.18 5680895.74 96.25 -599049.24 5677844.99 100.00 -599049.38 5682345.15 95.00 -599049.38 5682354.80 95.00 -599049.43 5679445.87 98.75 -599049.51 5682748.36 96.25 -599049.69 5682303.38 96.25 -599049.80 5682609.06 96.25 -599049.98 5682313.24 96.25 -599050.05 5683185.00 96.25 -599050.06 5682498.65 94.75 -599050.10 5682323.11 96.25 -599050.22 5682332.97 96.25 -599050.23 5683239.56 95.00 -599050.38 5682342.84 96.25 -599050.41 5681412.40 96.25 -599050.49 5678648.56 98.75 -599050.51 5678477.61 98.75 -599050.58 5679739.20 98.75 -599050.60 5682352.71 96.25 -599050.77 5677826.75 100.00 -599050.82 5682604.41 95.00 -599050.94 5680877.29 96.10 -599051.43 5682046.77 96.25 -599051.43 5685889.72 95.00 -599051.66 5677696.42 100.00 -599051.75 5682771.11 96.25 -599051.94 5681450.39 96.50 -599052.00 5682472.52 94.75 -599052.08 5685991.54 95.00 -599052.22 5685467.26 95.00 -599052.30 5682942.56 96.25 -599052.45 5681177.50 96.25 -599052.53 5681383.15 96.25 -599052.65 5682436.80 94.75 -599052.77 5682363.75 95.00 -599052.82 5681187.48 96.25 -599052.89 5679579.05 97.50 -599052.90 5682462.82 94.75 -599052.95 5676995.32 101.25 -599053.19 5681197.47 96.25 -599053.25 5682549.72 96.25 -599053.37 5678233.33 98.75 -599053.42 5682482.06 94.75 -599053.43 5687400.10 95.00 -599053.47 5683175.61 96.25 -599053.53 5682420.06 95.00 -599053.62 5681207.46 96.25 -599053.63 5682011.86 96.25 -599053.77 5682508.67 95.00 -599053.79 5682950.81 96.25 -599053.82 5682361.78 96.25 -599053.83 5683043.29 95.00 -599053.89 5683166.08 96.25 -599054.06 5682588.31 96.25 -599054.07 5681217.44 96.25 -599054.20 5683094.68 95.00 -599054.21 5680679.20 98.75 -599054.53 5682453.26 94.75 -599054.53 5683230.59 95.00 -599054.63 5681363.20 96.25 -599054.64 5680692.66 97.50 -599055.01 5683023.70 96.25 -599055.06 5681227.32 96.25 -599055.10 5680917.73 96.25 -599055.10 5685950.22 95.00 -599055.13 5679604.37 98.75 -599055.24 5685450.05 95.00 -599055.62 5682756.24 96.25 -599055.68 5682593.37 95.00 -599055.68 5680892.06 96.25 -599055.82 5678147.21 98.75 -599055.84 5682933.25 96.25 -599055.99 5679495.76 98.75 -599056.05 5682390.86 95.00 -599056.16 5680864.85 96.25 -599056.24 5682491.35 94.75 -599056.24 5680014.42 98.75 -599056.27 5677851.74 100.00 -599056.29 5685982.52 95.00 -599056.45 5685458.21 95.00 -599056.54 5681477.13 96.25 -599056.86 5682428.09 94.75 -599057.07 5682443.87 94.75 -599057.08 5679440.19 98.75 -599057.15 5681405.02 96.25 -599057.18 5679547.70 97.50 -599057.61 5682500.62 94.75 -599058.09 5680883.07 96.25 -599058.24 5682778.62 96.25 -599058.25 5681024.98 96.25 -599058.32 5681236.77 96.25 -599058.49 5682474.94 95.00 -599058.58 5682613.45 96.25 -599058.65 5682371.40 95.00 -599058.65 5682465.28 95.00 -599058.68 5680873.77 96.25 -599058.77 5677841.40 100.25 -599058.83 5683221.63 95.00 -599058.92 5677947.91 98.75 -599058.94 5681034.94 96.25 -599059.02 5677823.14 100.00 -599059.14 5678225.19 98.75 -599059.51 5682369.68 96.25 -599059.55 5678606.48 99.10 -599059.68 5682455.60 95.00 -599059.70 5676987.98 101.25 -599059.82 5679735.54 98.75 -599060.14 5682516.20 95.00 -599060.17 5682484.51 95.00 -599060.17 5682924.25 96.25 -599060.35 5682607.33 95.00 -599060.42 5678476.47 98.75 -599060.44 5681015.35 96.25 -599060.47 5678648.79 98.75 -599060.47 5682944.89 96.25 -599060.59 5682043.75 96.25 -599060.66 5677700.75 100.00 -599060.73 5682413.42 95.00 -599060.90 5679612.54 98.75 -599060.99 5685973.71 95.00 -599061.19 5681387.84 96.25 -599061.25 5681044.59 96.25 -599061.40 5682555.22 96.25 -599061.57 5681246.22 96.25 -599061.59 5679583.89 97.50 -599061.73 5682764.11 96.25 -599062.22 5682435.61 94.75 -599062.40 5681256.07 96.25 -599062.86 5682008.13 96.25 -599063.10 5681397.31 96.25 -599063.13 5680683.66 98.75 -599063.13 5683212.66 95.00 -599063.24 5681266.02 96.25 -599063.28 5681005.79 96.25 -599063.34 5683045.77 95.00 -599063.36 5685955.73 95.00 -599063.41 5687400.57 95.00 -599063.53 5682589.15 96.25 -599063.59 5682446.88 95.00 -599063.92 5682421.57 94.75 -599063.95 5683092.75 95.00 -599063.98 5681285.87 96.25 -599064.15 5681361.18 96.25 -599064.25 5682493.35 95.00 -599064.37 5681275.95 96.25 -599064.49 5681324.38 96.25 -599064.56 5680692.42 97.50 -599064.61 5683024.94 96.25 -599064.67 5680019.75 98.75 -599064.76 5682935.87 96.25 -599064.78 5682915.40 96.25 -599064.88 5680915.88 96.25 -599064.91 5678217.05 98.75 -599065.04 5685964.58 95.00 -599065.10 5681334.24 96.25 -599065.13 5677855.92 100.00 -599065.22 5682595.61 95.00 -599065.48 5682393.25 95.00 -599065.60 5679497.12 98.75 -599065.65 5682378.00 95.00 -599065.68 5678147.65 98.75 -599065.70 5682785.24 96.25 -599066.35 5679620.88 98.75 -599066.48 5681477.77 96.25 -599066.52 5681314.63 96.25 -599066.59 5679438.27 98.75 -599066.79 5682523.46 95.00 -599066.80 5682376.34 96.25 -599067.07 5676981.25 101.25 -599067.08 5679548.87 97.50 -599067.38 5680996.75 96.25 -599067.49 5683203.73 95.00 -599067.64 5679466.63 99.00 -599067.83 5682616.64 96.25 -599067.85 5681294.97 96.25 -599067.90 5682471.14 96.25 -599067.94 5682406.72 95.00 -599068.09 5677827.15 100.00 -599068.19 5681304.83 96.25 -599068.32 5682428.11 94.75 -599068.57 5682771.34 96.25 -599068.61 5679730.77 98.75 -599068.66 5679590.79 97.50 -599068.68 5682502.00 95.00 -599068.72 5677946.70 98.75 -599068.82 5682438.68 95.00 -599069.15 5681050.11 96.25 -599069.18 5682561.22 96.25 -599069.19 5682926.92 96.25 -599069.27 5681343.32 96.25 -599069.48 5682039.34 96.25 -599069.52 5681424.59 96.25 -599069.60 5681353.07 96.25 -599069.67 5682480.72 96.25 -599069.76 5682461.71 96.25 -599070.01 5682609.88 95.00 -599070.04 5681414.63 96.25 -599070.27 5678474.96 98.75 -599070.33 5679630.05 98.75 -599070.44 5678649.01 98.75 -599070.52 5677700.98 100.00 -599071.00 5678209.16 98.75 -599071.43 5682003.25 96.25 -599071.55 5682415.53 94.75 -599071.92 5682908.44 96.25 -599072.15 5680987.99 96.25 -599072.32 5679897.86 97.50 -599072.44 5683030.65 96.25 -599072.72 5682398.54 95.00 -599072.74 5683195.29 95.00 -599072.79 5683048.80 95.00 -599072.88 5682489.82 96.25 -599072.90 5680910.34 96.25 -599072.99 5681433.76 96.25 -599072.99 5680683.78 98.75 -599073.09 5679907.73 97.50 -599073.10 5680025.08 98.75 -599073.22 5682530.85 95.00 -599073.22 5682587.53 96.25 -599073.39 5687401.04 95.00 -599073.67 5679639.45 98.75 -599073.68 5681405.54 96.25 -599073.71 5683090.83 95.00 -599073.76 5679888.00 97.50 -599073.83 5682453.03 96.25 -599073.86 5682382.96 95.00 -599073.93 5682510.20 95.00 -599074.24 5680690.84 97.50 -599074.45 5676974.53 101.25 -599074.49 5679917.59 97.50 -599074.54 5682918.59 96.25 -599074.68 5679598.72 97.50 -599074.69 5677857.77 100.00 -599074.71 5682788.70 96.25 -599074.88 5677834.39 100.00 -599074.99 5682596.89 95.00 -599075.02 5682431.18 95.00 -599075.20 5679495.66 98.75 -599075.20 5682380.84 96.25 -599075.26 5678149.72 98.75 -599075.43 5681482.17 96.25 -599075.81 5679927.47 97.50 -599075.93 5679724.29 98.75 -599075.94 5679878.29 97.50 -599076.09 5680978.80 96.25 -599076.11 5679436.36 98.75 -599076.32 5679649.09 98.75 -599076.45 5682422.75 94.75 -599076.76 5682958.61 96.25 -599076.93 5682567.27 96.25 -599077.02 5679549.26 97.50 -599077.17 5679937.35 97.50 -599077.30 5681995.19 96.25 -599077.31 5682619.16 96.25 -599077.67 5678201.89 98.75 -599077.75 5682774.77 96.25 -599077.77 5682408.80 94.75 -599077.98 5682498.09 96.25 -599078.00 5683186.85 95.00 -599078.08 5681442.22 96.25 -599078.46 5677945.21 98.75 -599078.62 5679947.21 97.50 -599078.66 5679607.75 97.50 -599078.68 5679868.71 97.50 -599078.70 5682539.04 95.00 -599078.90 5681048.04 96.25 -599078.98 5679658.73 98.75 -599079.36 5682039.21 96.25 -599079.39 5682445.03 96.25 -599079.47 5682518.19 95.00 -599079.52 5677698.33 100.00 -599079.65 5680969.50 96.25 -599079.67 5682612.42 95.00 -599079.86 5676966.27 101.25 -599079.88 5682399.57 94.75 -599080.03 5679957.08 97.50 -599080.03 5678472.86 98.75 -599080.06 5679976.99 97.50 -599080.23 5679967.02 97.50 -599080.32 5681986.19 96.25 -599080.33 5680677.70 98.75 -599080.37 5681398.23 96.25 -599080.40 5678648.74 98.75 -599080.44 5683001.96 96.25 -599080.50 5680903.84 96.25 -599080.51 5681976.22 96.25 -599080.98 5682904.22 96.25 -599081.06 5683035.03 96.25 -599081.30 5681966.28 96.25 -599081.42 5679859.13 97.50 -599081.45 5679715.99 98.75 -599081.49 5680959.68 96.25 -599081.53 5680030.41 98.75 -599081.61 5679668.37 98.75 -599081.66 5677841.63 100.00 -599081.70 5683009.80 96.25 -599081.86 5682950.65 96.25 -599081.87 5679617.19 97.50 -599081.93 5679986.44 97.50 -599082.46 5676879.37 101.25 -599082.52 5682912.59 96.25 -599082.53 5683048.73 95.00 -599082.96 5682588.22 96.25 -599083.15 5682467.43 96.50 -599083.18 5682385.06 95.00 -599083.29 5682506.25 96.25 -599083.33 5680949.86 96.25 -599083.37 5687401.50 95.00 -599083.38 5680687.16 97.50 -599083.46 5679849.37 97.50 -599083.46 5683088.91 95.00 -599083.65 5676889.28 101.25 -599083.84 5682427.08 95.00 -599083.98 5679492.01 98.75 -599084.14 5683179.03 95.00 -599084.25 5679678.01 98.75 -599084.31 5676957.34 101.25 -599084.56 5682790.19 96.25 -599084.60 5677857.22 100.00 -599084.68 5681485.83 96.25 -599084.81 5682597.68 95.00 -599084.82 5678151.87 98.75 -599084.83 5682383.02 96.25 -599084.90 5681449.50 96.25 -599084.99 5676899.17 101.25 -599085.09 5681957.26 96.25 -599085.10 5682418.35 94.75 -599085.22 5679839.57 97.50 -599085.38 5682994.63 96.25 -599085.43 5682525.89 95.00 -599085.48 5682958.13 96.25 -599085.55 5679436.02 98.75 -599085.58 5682546.09 95.00 -599085.63 5682437.84 96.25 -599085.71 5679626.36 97.50 -599085.88 5680940.21 96.25 -599085.89 5682571.12 96.25 -599086.19 5681368.56 96.50 -599086.25 5679707.22 98.75 -599086.56 5679829.69 97.50 -599086.57 5676870.55 101.25 -599086.65 5679687.70 98.75 -599086.67 5677691.35 100.00 -599086.73 5679819.73 97.50 -599086.75 5679550.36 97.50 -599087.03 5682620.49 96.25 -599087.10 5678198.94 98.75 -599087.10 5677378.50 100.00 -599087.24 5677849.78 100.00 -599087.24 5679994.77 97.50 -599087.30 5680670.58 98.75 -599087.31 5676908.88 101.25 -599087.34 5679809.83 97.50 -599087.42 5679697.67 98.75 -599087.45 5681043.27 96.25 -599087.60 5682774.55 96.25 -599087.61 5677387.60 100.00 -599087.88 5677942.28 98.75 -599088.42 5681392.38 96.25 -599088.46 5676948.26 101.25 -599088.48 5680898.23 96.25 -599088.49 5682897.83 96.25 -599088.51 5682395.89 94.75 -599088.53 5677369.34 100.00 -599088.55 5682042.72 96.25 -599088.60 5682514.41 96.25 -599088.79 5680037.24 98.75 -599088.92 5680930.69 96.25 -599089.02 5681300.97 96.25 -599089.24 5681291.10 96.25 -599089.29 5679800.05 97.50 -599089.36 5676918.63 101.25 -599089.52 5682613.84 95.00 -599089.54 5677396.66 100.00 -599089.79 5678470.76 98.75 -599089.81 5683011.93 96.25 -599089.90 5682905.94 96.25 -599089.95 5676938.50 101.25 -599090.02 5682534.44 95.00 -599090.12 5683033.48 96.25 -599090.12 5681948.69 96.25 -599090.26 5679635.23 97.50 -599090.34 5682945.77 96.25 -599090.34 5678647.84 98.75 -599090.37 5683171.29 95.00 -599090.50 5676928.55 101.25 -599090.83 5680680.61 97.50 -599091.01 5681310.57 96.25 -599091.49 5682987.84 96.25 -599091.82 5680921.13 96.25 -599091.87 5679486.48 98.75 -599092.08 5683046.61 95.00 -599092.11 5681281.55 96.25 -599092.26 5682523.43 96.25 -599092.28 5677683.15 100.00 -599092.33 5682422.32 95.00 -599092.47 5682553.15 95.00 -599092.62 5682386.99 95.00 -599092.70 5682589.53 96.25 -599093.05 5677405.21 100.00 -599093.28 5683087.41 95.00 -599093.29 5687402.67 95.00 -599093.59 5679791.22 97.50 -599093.60 5682787.46 96.25 -599093.88 5682998.20 96.00 -599093.90 5682889.61 96.25 -599094.15 5681488.98 96.25 -599094.31 5680911.47 96.25 -599094.43 5682415.76 94.75 -599094.45 5677363.01 100.00 -599094.45 5682385.19 96.25 -599094.49 5682599.11 95.00 -599094.52 5682435.23 96.25 -599094.57 5680663.75 98.75 -599094.66 5681451.48 96.25 -599094.68 5678152.42 98.75 -599094.80 5680001.27 97.50 -599094.85 5679438.82 98.75 -599094.86 5682542.82 95.00 -599094.86 5681319.73 96.25 -599094.93 5681998.70 96.25 -599094.95 5680901.55 96.25 -599094.95 5682955.25 96.25 -599094.98 5676865.18 101.25 -599095.15 5682574.43 96.25 -599095.21 5682532.68 96.25 -599095.32 5679555.19 97.50 -599095.49 5681037.36 96.25 -599095.60 5677635.14 100.00 -599095.76 5680752.00 97.00 -599095.94 5678201.91 98.75 -599095.98 5681988.78 96.25 -599095.98 5680044.15 98.75 -599096.01 5682898.05 96.25 -599096.01 5682049.37 96.25 -599096.10 5677625.19 100.00 -599096.17 5679643.19 97.50 -599096.49 5681386.52 96.25 -599096.61 5683163.54 95.00 -599096.68 5682008.37 96.25 -599096.79 5682621.25 96.25 -599096.82 5681329.52 96.25 -599096.87 5681272.86 96.25 -599096.91 5679892.60 97.50 -599097.15 5682772.02 96.25 -599097.22 5677939.07 98.75 -599097.34 5677644.98 100.00 -599097.38 5677382.74 99.50 -599097.39 5680759.12 97.00 -599097.46 5679882.85 97.50 -599097.48 5677674.62 100.00 -599097.79 5679478.79 98.75 -599097.85 5683007.79 96.25 -599097.87 5682880.44 96.25 -599097.90 5677615.75 100.00 -599097.92 5682398.33 94.75 -599098.16 5679902.42 97.50 -599098.28 5680674.05 97.50 -599098.38 5677664.85 100.00 -599098.48 5682981.96 96.25 -599098.49 5682541.70 96.25 -599098.50 5677654.86 100.00 -599098.75 5681979.25 96.25 -599098.76 5683028.54 96.25 -599098.77 5681339.30 96.25 -599098.86 5681943.87 96.25 -599099.27 5682941.50 96.25 -599099.40 5678468.22 98.75 -599099.49 5682614.47 95.00 -599099.69 5679783.44 97.50 -599099.85 5682559.66 95.00 -599100.16 5678022.87 98.75 -599100.28 5678646.94 98.75 -599100.41 5678210.51 98.75 -599100.44 5679873.34 97.50 -599100.48 5683041.33 95.00 -599100.73 5681349.08 96.25 -599101.06 5682781.10 96.25 -599101.09 5678032.70 98.75 -599101.09 5682418.41 95.00 -599101.10 5682057.77 96.25 -599101.14 5682550.23 95.00 -599101.20 5680656.32 98.75 -599101.32 5677405.22 100.00 -599101.87 5681378.42 96.25 -599101.95 5682890.02 96.25 -599101.95 5682389.44 95.00 -599102.04 5679562.55 97.50 -599102.10 5681969.85 96.25 -599102.18 5682440.77 96.25 -599102.20 5681264.42 96.25 -599102.27 5678013.35 98.75 -599102.35 5680007.77 97.50 -599102.42 5682591.04 96.25 -599102.51 5682496.72 96.25 -599102.62 5677364.10 100.00 -599102.66 5679444.16 98.75 -599102.68 5679650.72 97.50 -599102.69 5681358.86 96.25 -599102.70 5682487.01 96.25 -599102.93 5678220.16 98.75 -599102.96 5683155.90 95.00 -599103.06 5679853.79 97.50 -599103.06 5679863.76 97.50 -599103.17 5680051.06 98.75 -599103.19 5683086.62 95.00 -599103.19 5687403.97 95.00 -599103.21 5681368.82 96.25 -599103.21 5682506.44 96.25 -599103.34 5681031.21 96.25 -599103.39 5682413.14 94.75 -599103.45 5680230.37 100.00 -599103.50 5682014.99 96.25 -599103.66 5681491.40 96.25 -599103.71 5682872.36 96.25 -599103.77 5682477.38 96.25 -599103.85 5682602.12 95.00 -599103.96 5678149.26 98.75 -599104.00 5682387.70 96.25 -599104.10 5676861.33 101.25 -599104.21 5679471.62 98.75 -599104.26 5682067.25 96.25 -599104.40 5681451.95 96.25 -599104.47 5678041.89 98.75 -599104.50 5682952.64 96.25 -599104.51 5682516.05 96.25 -599104.51 5682577.41 96.25 -599104.53 5679910.04 97.50 -599104.76 5682765.77 96.25 -599104.91 5679844.13 97.50 -599105.06 5682404.39 94.75 -599105.09 5680666.90 97.50 -599105.10 5680752.25 97.00 -599105.18 5683002.35 96.25 -599105.33 5677609.06 100.00 -599105.88 5678004.22 98.75 -599105.97 5678229.66 98.75 -599105.99 5680762.65 97.00 -599106.05 5681255.31 96.25 -599106.12 5679452.44 98.75 -599106.27 5679462.13 98.75 -599106.42 5677935.50 98.75 -599106.61 5682621.02 96.25 -599106.72 5682449.38 96.25 -599106.85 5682525.51 96.25 -599107.10 5682468.23 96.25 -599107.10 5682773.17 96.25 -599107.13 5680731.05 97.00 -599107.20 5683023.27 96.25 -599107.24 5682543.53 96.25 -599107.26 5682983.12 96.25 -599107.37 5677398.54 100.00 -599107.39 5680648.50 98.75 -599107.42 5679834.50 97.50 -599107.53 5679777.42 97.50 -599107.64 5679570.57 97.50 -599108.01 5681245.53 96.25 -599108.01 5682882.07 96.25 -599108.20 5682564.68 95.00 -599108.26 5677370.95 100.00 -599108.37 5681941.28 96.25 -599108.39 5681962.13 96.25 -599108.42 5678463.97 98.75 -599108.61 5677380.21 100.00 -599108.66 5683035.73 95.00 -599108.70 5682458.79 96.25 -599108.76 5682938.88 96.25 -599108.87 5680671.67 97.00 -599108.95 5677389.47 100.00 -599109.01 5682534.98 96.25 -599109.25 5678239.08 98.75 -599109.46 5682615.02 95.00 -599109.58 5682075.33 96.25 -599109.68 5680679.23 97.00 -599109.71 5683148.60 95.00 -599110.05 5682554.15 95.00 -599110.05 5680014.10 97.50 -599110.12 5678645.43 98.75 -599110.19 5682419.46 95.00 -599110.26 5681235.81 96.25 -599110.34 5680058.00 98.75 -599110.51 5681024.49 96.25 -599110.55 5680725.16 97.00 -599110.63 5679656.74 97.50 -599110.77 5682865.34 96.25 -599110.79 5679580.02 97.50 -599110.87 5679825.29 97.50 -599110.90 5678049.00 98.75 -599111.08 5680658.99 97.50 -599111.21 5677996.11 98.75 -599111.21 5682392.15 95.00 -599111.31 5680759.08 97.00 -599111.43 5682764.26 96.25 -599111.79 5681486.72 96.25 -599111.96 5680737.52 97.00 -599112.14 5682592.40 96.25 -599112.32 5678144.43 98.75 -599112.32 5682019.56 96.25 -599112.43 5682996.78 96.25 -599112.47 5679916.07 97.50 -599112.81 5677602.45 100.00 -599112.99 5683087.80 95.00 -599113.02 5687405.73 95.00 -599113.43 5680640.58 98.75 -599113.52 5682390.27 96.25 -599113.64 5676858.40 101.25 -599113.70 5681226.65 96.25 -599113.71 5682602.12 95.00 -599113.86 5682988.62 96.25 -599113.94 5679589.48 97.50 -599113.96 5682874.04 96.25 -599114.02 5682579.89 96.25 -599114.06 5681449.64 96.25 -599114.10 5682950.24 96.25 -599114.55 5681015.37 96.25 -599115.00 5682520.75 95.00 -599115.23 5678246.97 98.75 -599115.46 5682511.02 95.00 -599115.63 5683017.98 96.25 -599115.71 5677932.21 98.75 -599115.91 5682501.30 95.00 -599116.02 5681478.00 96.25 -599116.15 5680666.34 97.00 -599116.40 5682426.67 95.00 -599116.40 5682620.39 96.25 -599116.44 5679966.17 97.50 -599116.45 5683141.29 95.00 -599116.50 5679773.08 97.50 -599116.51 5681956.59 96.25 -599116.60 5682530.30 95.00 -599116.66 5683029.84 95.00 -599116.82 5680650.90 97.50 -599116.84 5680729.56 97.00 -599117.16 5679598.91 97.50 -599117.23 5682491.68 95.00 -599117.27 5682549.37 95.00 -599117.30 5679817.99 97.50 -599117.34 5682568.36 95.00 -599117.44 5678459.71 98.75 -599117.63 5680020.56 97.50 -599117.71 5678136.50 98.75 -599117.78 5680676.06 97.00 -599117.83 5682080.82 96.25 -599118.01 5679956.55 97.50 -599118.14 5679663.24 97.50 -599118.14 5679975.78 97.50 -599118.21 5681939.61 96.25 -599118.30 5682936.36 96.25 -599118.32 5680063.79 98.75 -599118.40 5682858.90 96.25 -599118.58 5681006.24 96.25 -599118.59 5681106.80 96.25 -599118.64 5678055.11 98.75 -599118.66 5680632.08 98.75 -599118.67 5681116.63 96.25 -599118.71 5682539.80 95.00 -599118.77 5680737.17 97.00 -599119.18 5682482.14 95.00 -599119.44 5682614.50 95.00 -599119.69 5681096.89 96.25 -599119.81 5681218.76 96.25 -599119.84 5677991.31 98.75 -599119.85 5678643.20 98.75 -599119.89 5682025.84 96.25 -599120.12 5681428.10 96.25 -599120.33 5678126.98 98.75 -599120.37 5682395.20 95.00 -599120.40 5679922.11 97.50 -599120.48 5682435.47 95.00 -599120.49 5682866.47 96.25 -599120.71 5679608.19 97.50 -599121.13 5677596.91 100.00 -599121.22 5681126.27 96.25 -599121.29 5681087.05 96.25 -599121.62 5678254.64 98.75 -599121.97 5682592.62 96.25 -599122.43 5680659.76 97.00 -599122.49 5682473.02 95.00 -599122.49 5680642.75 97.50 -599122.59 5681136.15 96.25 -599122.63 5679984.28 97.50 -599122.64 5683133.56 95.00 -599122.65 5678117.39 98.75 -599122.66 5680997.14 96.25 -599122.70 5683089.80 95.00 -599122.80 5687407.77 95.00 -599122.83 5682393.56 96.25 -599123.19 5682444.83 95.00 -599123.21 5682599.62 95.00 -599123.29 5676856.19 101.25 -599123.38 5681077.30 96.25 -599123.66 5682581.72 96.25 -599123.77 5682948.14 96.25 -599123.86 5681146.04 96.25 -599123.88 5680623.59 98.75 -599123.94 5681450.45 96.25 -599124.10 5681419.45 96.25 -599124.14 5683012.81 96.25 -599124.65 5678107.72 98.75 -599124.65 5683023.96 95.00 -599124.68 5680027.61 97.50 -599125.00 5679670.47 97.50 -599125.18 5682454.31 95.00 -599125.30 5680670.93 97.00 -599125.30 5678062.40 98.75 -599125.37 5679768.54 97.50 -599125.42 5677930.44 98.75 -599125.50 5681952.32 96.25 -599125.61 5681155.85 96.25 -599125.72 5681477.45 96.25 -599125.76 5679616.79 97.50 -599125.83 5679951.74 97.50 -599125.98 5679813.08 97.50 -599126.01 5682464.01 95.00 -599126.10 5682033.64 96.25 -599126.18 5682619.49 96.25 -599126.26 5682852.72 96.25 -599126.32 5681067.83 96.25 -599126.42 5681211.29 96.25 -599126.69 5682571.30 95.00 -599126.74 5681432.60 96.25 -599126.91 5681935.40 96.25 -599126.95 5682429.59 94.75 -599126.96 5678456.78 98.75 -599127.14 5682083.86 96.25 -599127.14 5682906.72 96.25 -599127.24 5680068.25 98.75 -599127.28 5682932.21 96.25 -599127.50 5680988.48 96.25 -599127.62 5682438.35 94.75 -599127.86 5683125.10 95.00 -599127.94 5678098.41 98.75 -599128.06 5681165.52 96.25 -599128.12 5682860.02 96.25 -599128.32 5680634.73 97.50 -599128.47 5677986.53 98.75 -599128.69 5680653.15 97.00 -599128.77 5683097.68 95.00 -599128.99 5678261.34 98.75 -599129.07 5680615.07 98.75 -599129.24 5679926.47 97.50 -599129.42 5682613.98 95.00 -599129.44 5677591.37 100.00 -599129.56 5682398.15 95.00 -599129.57 5678640.97 98.75 -599129.75 5681058.58 96.25 -599130.47 5681048.63 96.25 -599130.51 5681175.18 96.25 -599130.65 5679989.96 97.50 -599130.69 5682913.47 96.25 -599130.77 5678070.46 98.75 -599130.89 5679625.33 97.50 -599131.10 5678089.06 98.75 -599131.18 5681038.68 96.25 -599131.26 5680664.05 97.00 -599131.29 5682590.93 96.25 -599131.54 5682446.35 94.75 -599131.54 5683116.12 95.00 -599131.73 5680034.66 97.50 -599131.77 5679677.79 97.50 -599132.13 5681413.69 96.25 -599132.13 5682396.85 96.25 -599132.23 5682041.51 96.25 -599132.40 5681028.78 96.25 -599132.51 5683106.22 95.00 -599132.61 5682423.91 94.75 -599132.64 5687408.75 95.00 -599132.66 5683007.66 96.25 -599132.69 5682596.90 95.00 -599132.92 5679971.74 97.75 -599132.93 5681454.51 96.25 -599132.97 5681184.85 96.25 -599133.03 5682899.37 96.25 -599133.19 5681203.97 96.25 -599133.27 5676856.34 101.25 -599133.35 5682845.71 96.25 -599133.38 5683019.27 95.00 -599133.39 5680980.42 96.25 -599133.43 5682582.81 96.25 -599133.53 5682946.47 96.25 -599133.75 5679763.33 97.50 -599133.76 5678079.56 98.75 -599133.87 5680606.33 98.75 -599134.31 5680626.81 97.50 -599134.60 5682406.37 95.00 -599134.61 5681929.06 96.25 -599134.63 5681194.63 96.25 -599134.75 5681948.57 96.25 -599135.00 5681480.60 96.25 -599135.06 5679809.01 97.50 -599135.07 5677930.36 98.75 -599135.37 5681428.09 96.25 -599135.53 5679952.41 97.50 -599135.65 5682507.35 95.00 -599135.75 5682853.56 96.25 -599135.79 5682517.21 95.00 -599135.86 5682617.87 96.25 -599135.89 5680648.72 97.00 -599136.00 5682927.52 96.25 -599136.01 5681019.69 96.25 -599136.23 5682573.63 95.00 -599136.33 5677980.84 98.75 -599136.49 5682497.55 95.00 -599136.57 5682086.37 96.25 -599136.60 5678454.20 98.75 -599136.65 5678267.70 98.75 -599136.65 5680656.74 97.00 -599136.75 5680071.00 98.75 -599137.25 5682526.93 95.00 -599137.41 5679632.86 97.50 -599137.71 5682430.99 94.75 -599137.75 5677585.83 100.00 -599137.80 5682448.33 94.75 -599138.22 5682790.33 96.25 -599138.25 5679685.36 97.50 -599138.34 5681462.89 96.25 -599138.35 5681420.33 96.00 -599138.43 5682487.91 95.00 -599138.62 5679929.84 97.50 -599138.68 5680597.59 98.75 -599138.78 5682837.35 96.25 -599139.03 5682536.62 95.00 -599139.30 5682439.77 94.75 -599139.30 5678638.75 98.75 -599139.36 5680618.35 97.50 -599139.40 5682613.47 95.00 -599139.69 5679994.04 97.50 -599139.80 5682915.44 96.25 -599140.23 5682402.00 96.25 -599140.37 5682046.66 96.25 -599140.49 5680038.96 97.50 -599140.53 5679756.03 97.50 -599140.76 5681010.96 96.25 -599140.87 5682906.61 96.00 -599140.99 5682478.40 95.00 -599141.32 5683002.76 96.25 -599141.34 5682782.19 96.25 -599141.44 5681411.23 96.25 -599141.65 5682413.26 95.00 -599141.66 5682592.89 95.00 -599141.75 5682519.65 96.25 -599141.76 5679802.61 97.50 -599141.93 5682509.80 96.25 -599142.03 5680976.17 96.25 -599142.06 5681922.44 96.25 -599142.20 5683014.70 95.00 -599142.25 5682898.07 96.25 -599142.41 5677973.06 98.75 -599142.49 5677935.69 98.75 -599142.59 5687407.83 95.00 -599142.82 5682499.93 96.25 -599142.86 5681942.83 96.25 -599143.01 5682545.56 95.00 -599143.14 5682846.85 96.25 -599143.24 5680588.72 98.75 -599143.25 5676856.50 101.25 -599143.35 5680609.26 97.50 -599143.38 5682945.66 96.25 -599143.45 5682529.41 96.25 -599143.63 5682828.61 96.25 -599143.76 5682490.07 96.25 -599143.83 5682093.12 96.25 -599143.98 5679957.21 97.50 -599144.08 5679640.23 97.50 -599144.14 5681484.27 96.25 -599144.19 5681001.59 96.25 -599144.23 5679693.30 97.50 -599144.45 5682935.68 96.00 -599144.73 5682469.34 95.00 -599144.77 5678226.93 100.00 -599144.97 5682614.76 96.25 -599145.18 5682924.02 96.25 -599145.36 5681428.09 96.25 -599145.37 5678272.56 98.75 -599145.40 5682577.25 95.00 -599145.46 5677579.52 100.00 -599145.86 5681469.39 96.25 -599145.97 5677963.98 98.75 -599146.24 5678451.61 98.75 -599146.29 5682421.83 95.00 -599146.53 5680072.92 98.75 -599146.54 5682795.67 96.25 -599146.67 5680991.93 96.25 -599146.68 5678235.62 100.00 -599146.75 5682538.50 96.25 -599146.77 5682480.63 96.25 -599146.87 5677944.37 98.75 -599146.87 5677954.24 98.75 -599147.11 5682102.44 96.25 -599147.31 5679748.73 97.50 -599147.33 5680600.17 97.50 -599147.37 5679934.61 97.50 -599147.37 5680579.65 98.75 -599147.42 5682585.78 95.00 -599147.67 5682460.01 95.00 -599147.84 5680982.09 96.25 -599148.10 5682819.67 96.25 -599148.43 5679998.75 97.50 -599148.57 5682112.21 96.25 -599148.77 5682406.36 96.25 -599148.85 5682913.64 96.25 -599149.03 5678636.52 98.75 -599149.47 5679701.78 97.50 -599149.52 5681915.81 96.25 -599149.73 5682450.38 95.00 -599149.78 5682049.25 96.25 -599149.91 5682471.25 96.25 -599149.92 5682839.50 96.25 -599149.92 5682777.27 96.25 -599149.97 5680041.96 97.50 -599149.98 5682430.92 95.00 -599149.99 5682997.88 96.25 -599150.67 5682550.21 95.00 -599150.72 5679964.39 97.50 -599150.78 5681936.77 96.25 -599151.09 5683010.29 95.00 -599151.10 5682440.71 95.00 -599151.14 5681412.57 96.25 -599151.26 5687403.24 95.00 -599151.51 5680570.57 98.75 -599151.62 5682897.05 96.25 -599151.66 5679801.39 97.50 -599152.00 5678220.15 100.00 -599152.12 5679740.02 97.50 -599152.20 5679646.02 97.50 -599152.40 5680591.64 97.50 -599152.43 5682810.67 96.25 -599152.67 5679711.16 97.50 -599152.76 5677572.70 100.00 -599153.21 5682944.79 96.25 -599153.23 5676856.67 101.25 -599153.57 5681475.73 96.25 -599153.57 5682933.40 96.00 -599153.87 5681483.62 96.25 -599153.98 5682543.36 96.25 -599154.03 5682504.96 96.25 -599154.06 5682495.06 96.25 -599154.08 5678277.41 98.75 -599154.27 5682800.92 96.25 -599154.71 5682514.83 96.25 -599154.74 5679730.52 97.50 -599154.77 5682921.56 96.25 -599155.01 5679940.87 97.50 -599155.22 5681429.36 96.25 -599155.41 5679720.74 97.50 -599155.62 5678239.28 100.00 -599155.70 5682463.21 96.25 -599155.85 5682524.68 96.25 -599155.87 5681908.12 96.25 -599156.16 5682831.70 96.25 -599156.19 5678451.37 98.75 -599156.30 5680074.96 98.75 -599156.40 5682787.95 95.75 -599156.55 5682118.22 96.25 -599156.62 5682534.56 96.25 -599156.75 5679972.26 97.50 -599156.87 5680562.18 98.75 -599157.32 5679654.24 97.50 -599157.53 5680583.15 97.50 -599157.85 5682910.99 96.25 -599157.86 5676744.68 101.25 -599157.89 5682409.31 96.25 -599158.13 5681930.08 96.25 -599158.13 5679999.83 97.50 -599158.38 5676754.25 101.25 -599158.67 5682993.00 96.25 -599158.76 5678634.29 98.75 -599159.07 5681418.65 96.25 -599159.30 5682486.65 96.25 -599159.59 5682047.45 96.25 -599159.73 5682775.51 96.25 -599159.87 5680043.15 97.50 -599159.89 5687398.24 95.00 -599160.07 5677565.89 100.00 -599160.10 5683006.13 95.00 -599160.38 5682548.85 95.00 -599161.03 5682897.43 96.25 -599161.15 5679799.06 97.50 -599161.54 5678217.51 100.00 -599161.73 5679663.15 97.50 -599161.90 5678228.91 100.25 -599162.04 5682434.55 96.25 -599162.05 5679947.93 97.50 -599162.14 5681900.37 96.25 -599162.14 5679980.60 97.50 -599162.33 5682823.84 96.25 -599162.68 5680554.08 98.75 -599162.70 5682931.12 96.00 -599162.75 5682942.14 96.25 -599162.80 5676736.55 101.25 -599162.88 5680574.79 97.50 -599162.90 5678282.06 98.75 -599162.99 5676858.73 101.25 -599163.08 5682426.23 96.25 -599163.36 5682457.05 96.25 -599163.40 5681427.02 96.25 -599163.82 5682125.08 96.25 -599163.84 5676762.26 101.25 -599164.63 5682920.86 96.25 -599164.85 5681922.72 96.25 -599165.52 5678239.28 100.00 -599165.60 5677557.58 100.00 -599165.96 5680077.44 98.75 -599166.17 5678451.32 98.75 -599166.55 5682479.89 96.25 -599167.12 5681891.84 96.25 -599167.15 5682875.22 96.25 -599167.27 5682910.99 96.25 -599167.38 5682410.55 96.25 -599167.41 5682730.73 96.25 -599167.48 5679998.29 97.50 -599167.51 5679988.95 97.50 -599167.67 5682542.34 95.00 -599167.74 5679670.99 97.50 -599168.06 5679955.88 97.50 -599168.09 5682815.66 96.25 -599168.14 5682989.99 96.25 -599168.42 5680566.56 97.50 -599168.66 5678633.61 98.75 -599168.94 5687394.05 95.00 -599169.05 5681913.70 96.25 -599169.07 5683001.89 95.00 -599169.08 5682773.22 96.25 -599169.15 5680546.49 98.75 -599169.28 5682738.58 96.25 -599169.41 5682045.68 96.25 -599169.62 5679793.80 97.50 -599169.73 5680043.92 97.50 -599170.32 5676730.00 101.25 -599170.34 5682436.33 96.25 -599170.43 5682879.23 96.25 -599170.44 5682898.04 96.25 -599170.94 5681882.63 96.25 -599171.09 5677549.23 100.00 -599171.11 5676769.10 101.25 -599171.22 5677029.69 100.00 -599171.29 5678218.15 100.00 -599171.37 5682423.06 96.25 -599171.47 5677020.34 100.00 -599171.72 5677011.00 100.00 -599171.82 5682928.84 96.00 -599172.09 5678285.95 98.75 -599172.15 5682429.20 96.50 -599172.20 5682939.22 96.25 -599172.25 5682454.95 96.25 -599172.41 5682129.76 96.25 -599172.48 5682806.75 96.25 -599172.83 5676859.91 101.25 -599173.63 5681905.53 96.25 -599173.64 5682505.16 95.00 -599174.06 5679963.83 97.50 -599174.16 5682723.92 96.25 -599174.28 5680558.55 97.50 -599174.52 5682920.33 96.25 -599174.72 5682475.08 96.25 -599174.75 5681873.41 96.25 -599174.78 5677038.33 100.00 -599175.08 5678236.64 100.00 -599175.20 5679677.59 97.50 -599175.32 5682765.53 96.25 -599175.38 5682495.39 95.00 -599175.43 5682870.09 96.25 -599175.62 5677002.61 100.00 -599175.65 5680538.93 98.75 -599175.73 5682514.35 95.00 -599175.76 5680079.24 98.75 -599175.82 5678453.06 98.75 -599176.07 5682537.24 95.00 -599176.17 5682909.02 96.25 -599176.23 5682797.48 96.25 -599176.58 5677540.88 100.00 -599176.59 5682407.98 96.25 -599176.64 5679787.00 97.50 -599177.46 5682986.60 96.25 -599177.48 5682996.63 95.00 -599177.61 5681474.76 96.25 -599178.46 5687391.03 95.00 -599178.49 5676724.31 101.25 -599178.60 5681864.21 96.25 -599178.64 5678633.58 98.75 -599178.85 5682739.10 96.25 -599178.89 5682901.61 96.25 -599178.98 5679972.48 97.50 -599179.25 5682044.04 96.25 -599179.28 5680041.06 97.50 -599179.34 5676774.65 101.25 -599179.40 5678222.19 100.00 -599179.52 5682435.57 96.25 -599179.85 5677045.94 100.00 -599179.89 5682876.69 96.25 -599180.21 5682501.97 94.75 -599180.21 5682788.31 96.25 -599180.39 5682423.25 96.25 -599180.46 5680550.81 97.50 -599180.49 5682135.41 96.25 -599180.75 5681898.75 96.25 -599180.94 5682926.52 96.00 -599181.05 5682757.34 96.25 -599181.14 5682488.84 95.00 -599181.28 5678289.83 98.75 -599181.43 5679685.19 97.50 -599181.62 5682936.15 96.25 -599181.64 5678231.05 100.00 -599181.91 5677532.44 100.00 -599182.00 5682456.75 96.25 -599182.00 5682598.33 95.00 -599182.19 5680531.39 98.75 -599182.42 5679778.88 97.50 -599182.56 5681855.05 96.25 -599182.81 5676859.55 101.25 -599182.89 5681466.67 96.25 -599183.10 5677000.55 100.00 -599183.22 5681275.85 96.25 -599183.24 5682719.77 96.25 -599183.51 5681480.18 96.25 -599183.77 5681266.01 96.25 -599184.05 5682917.99 96.25 -599184.11 5679980.88 97.50 -599184.11 5682865.66 96.25 -599184.31 5682514.69 95.00 -599184.32 5682779.20 96.25 -599184.43 5682474.74 96.25 -599184.70 5677028.91 99.50 -599184.94 5681889.82 96.25 -599185.02 5682403.60 96.25 -599185.16 5678456.58 98.75 -599185.19 5682429.93 96.25 -599185.34 5682536.02 95.00 -599185.61 5680080.80 98.75 -599185.90 5682991.37 95.00 -599186.01 5682981.51 96.25 -599186.24 5681256.57 96.25 -599186.31 5679693.88 97.50 -599186.32 5680522.35 98.75 -599186.43 5681285.04 96.25 -599186.52 5682143.22 96.25 -599186.92 5677523.80 100.00 -599187.01 5676719.11 101.25 -599187.06 5680543.40 97.50 -599187.17 5682495.73 95.00 -599187.20 5682734.25 96.25 -599187.58 5682505.56 95.00 -599187.65 5679770.44 97.50 -599187.85 5682890.13 96.25 -599187.98 5676779.64 101.25 -599187.98 5687388.00 95.00 -599188.04 5681880.34 96.25 -599188.15 5677049.34 100.00 -599188.58 5680037.58 97.50 -599188.60 5678126.23 100.00 -599188.62 5678633.46 98.75 -599189.11 5682043.91 96.25 -599189.13 5682873.38 96.25 -599189.17 5682591.88 95.00 -599189.28 5682770.52 96.25 -599189.53 5680109.66 98.75 -599189.54 5682752.07 96.25 -599189.82 5682613.81 96.25 -599189.84 5681459.86 96.25 -599189.85 5677006.32 100.00 -599190.02 5681849.39 96.25 -599190.03 5682924.13 96.00 -599190.13 5678116.50 100.00 -599190.25 5680513.18 98.75 -599190.32 5680132.95 98.75 -599190.44 5681247.73 96.25 -599190.59 5681293.94 96.25 -599190.82 5681870.77 96.25 -599190.84 5678291.88 98.75 -599191.10 5682933.31 96.25 -599191.19 5679702.58 97.50 -599191.30 5682713.92 96.25 -599191.46 5682459.66 96.25 -599191.76 5679987.26 97.50 -599191.79 5679761.37 97.50 -599191.84 5682859.62 96.25 -599191.94 5677515.16 100.00 -599192.13 5678135.54 100.00 -599192.14 5682542.68 95.00 -599192.31 5676856.56 101.25 -599192.39 5681477.21 96.25 -599192.58 5682604.43 96.25 -599192.66 5682397.84 96.25 -599192.80 5682150.91 96.25 -599192.99 5679712.29 97.50 -599193.15 5680535.61 97.50 -599193.39 5682914.71 96.25 -599193.61 5680115.77 98.75 -599193.77 5678107.64 100.00 -599193.77 5680086.49 98.75 -599193.79 5682478.01 96.25 -599194.04 5682726.97 96.25 -599194.15 5682405.24 95.00 -599194.19 5680504.02 98.75 -599194.31 5679722.17 97.50 -599194.36 5682884.09 96.25 -599194.50 5678460.10 98.75 -599194.57 5682976.43 96.25 -599194.65 5682460.06 96.25 -599194.69 5679752.03 97.50 -599194.72 5677014.17 100.00 -599194.74 5682986.99 95.00 -599194.83 5679742.06 97.50 -599194.95 5682395.46 95.00 -599194.97 5679732.09 97.50 -599195.18 5681861.79 96.25 -599195.25 5681451.75 96.25 -599195.39 5680125.21 98.75 -599195.69 5681302.37 96.25 -599195.73 5681239.43 96.25 -599195.75 5676714.68 101.25 -599195.91 5680140.04 98.75 -599196.13 5682893.62 96.25 -599196.41 5676784.96 101.25 -599196.51 5677506.28 100.00 -599196.77 5682414.57 95.00 -599197.03 5677047.69 100.00 -599197.12 5682705.83 96.25 -599197.33 5682765.02 96.25 -599197.52 5678143.55 100.00 -599197.64 5682389.94 96.25 -599197.69 5680526.78 97.50 -599197.78 5681852.42 96.25 -599197.89 5687386.73 95.00 -599198.00 5680034.58 97.50 -599198.17 5682550.46 95.00 -599198.20 5680494.89 98.75 -599198.21 5680105.67 98.75 -599198.22 5677022.84 100.00 -599198.27 5682869.78 96.25 -599198.42 5682588.19 95.00 -599198.58 5678632.90 98.75 -599198.69 5682852.59 96.25 -599198.71 5682748.08 96.25 -599198.98 5682045.36 96.25 -599199.13 5682921.74 96.00 -599199.42 5679993.64 97.50 -599199.64 5681443.22 96.25 -599199.64 5681311.16 96.25 -599199.67 5681267.42 96.00 -599200.28 5681320.99 96.25 -599200.29 5681471.50 96.25 -599200.33 5682598.15 96.25 -599200.43 5681230.78 96.25 -599200.54 5682387.43 95.00 -599200.58 5682381.20 96.25 -599200.60 5682930.50 96.25 -599200.71 5677497.22 100.00 -599200.81 5678100.60 100.00 -599200.82 5678291.88 98.75 -599200.89 5676851.67 101.25 -599200.93 5677031.74 100.00 -599201.01 5682156.47 96.25 -599201.03 5682719.83 96.25 -599201.20 5682423.29 95.00 -599201.55 5681433.67 96.25 -599201.57 5680517.68 97.50 -599201.63 5680117.95 98.75 -599201.89 5680092.28 98.75 -599202.20 5680485.75 98.75 -599202.55 5677040.94 100.00 -599202.60 5682697.49 96.25 -599202.63 5682433.01 95.00 -599202.81 5682911.70 96.25 -599202.84 5682372.11 96.25 -599202.97 5678465.31 98.75 -599203.15 5682971.39 96.25 -599203.18 5682377.82 95.00 -599203.31 5682480.64 96.25 -599203.41 5681329.70 96.25 -599203.46 5681424.11 96.25 -599203.76 5676791.53 101.25 -599203.86 5682558.37 95.00 -599204.05 5682881.83 96.25 -599204.14 5682983.82 95.00 -599204.24 5682462.54 96.25 -599204.29 5682442.61 95.00 -599204.69 5680144.19 98.75 -599204.77 5680508.29 97.50 -599205.08 5678150.03 100.00 -599205.52 5682368.14 95.00 -599205.54 5681173.91 96.25 -599205.54 5682845.56 96.25 -599205.73 5676714.68 101.25 -599206.07 5682893.18 96.25 -599206.16 5680101.11 98.75 -599206.22 5681183.87 96.25 -599206.30 5682051.68 96.25 -599206.34 5682363.42 96.25 -599206.56 5682761.27 96.25 -599206.65 5681223.29 96.25 -599206.82 5681164.15 96.25 -599206.91 5680476.97 98.75 -599207.17 5682688.61 96.25 -599207.25 5682865.82 96.25 -599207.49 5682712.22 96.25 -599207.54 5681465.03 96.25 -599207.71 5682743.74 96.25 -599207.80 5687385.49 95.00 -599207.82 5680035.64 97.50 -599207.85 5678093.56 100.00 -599208.00 5677490.44 100.00 -599208.14 5682586.13 95.00 -599208.22 5682919.35 96.00 -599208.44 5682592.56 96.25 -599208.54 5678632.34 98.75 -599208.55 5681193.51 96.25 -599208.69 5681416.06 96.25 -599208.77 5680499.25 97.50 -599208.78 5676845.63 101.25 -599209.17 5676799.92 101.25 -599209.52 5682450.28 95.00 -599209.57 5681154.55 96.25 -599209.69 5682161.44 96.25 -599209.91 5682060.90 96.25 -599210.06 5682927.61 96.25 -599210.56 5682355.08 96.25 -599210.79 5678291.69 98.75 -599210.85 5682679.34 96.25 -599211.25 5681332.98 96.25 -599211.28 5682837.63 96.25 -599211.31 5678470.80 98.75 -599211.84 5681285.72 96.25 -599211.92 5680468.35 98.75 -599212.14 5682967.18 96.25 -599212.31 5681144.94 96.25 -599212.48 5682909.58 96.25 -599212.78 5681295.53 96.25 -599212.83 5682362.11 95.00 -599213.08 5682482.31 96.25 -599213.19 5682070.33 96.25 -599213.30 5678155.56 100.00 -599213.34 5682850.86 96.00 -599213.55 5682980.65 95.00 -599213.59 5680490.57 97.50 -599213.61 5682559.84 95.00 -599213.72 5681305.34 96.25 -599213.80 5682704.47 96.25 -599213.80 5676837.00 101.25 -599213.84 5682465.02 96.25 -599213.84 5682879.95 96.25 -599213.92 5681276.10 96.25 -599214.09 5676719.40 101.25 -599214.14 5681324.98 96.25 -599214.35 5679993.44 97.00 -599214.42 5680145.13 98.75 -599214.43 5681458.14 96.25 -599214.58 5681315.14 96.25 -599214.58 5676808.30 101.25 -599215.16 5682080.10 96.25 -599215.41 5682409.87 95.00 -599215.52 5682860.71 96.25 -599215.54 5678087.25 100.00 -599215.55 5682347.14 96.25 -599215.56 5681199.60 96.25 -599215.57 5681221.53 96.25 -599215.71 5677484.16 100.00 -599215.74 5682757.50 96.25 -599215.84 5682738.01 96.25 -599215.87 5682891.44 96.25 -599215.99 5682670.78 96.25 -599216.05 5681266.49 96.25 -599216.44 5682419.78 95.00 -599216.65 5681135.95 96.25 -599216.70 5682400.14 95.00 -599216.75 5676827.55 101.25 -599216.77 5682829.50 96.25 -599216.85 5677272.95 100.00 -599216.92 5680459.72 98.75 -599217.08 5682089.89 96.25 -599217.09 5677264.19 100.00 -599217.28 5676817.82 101.25 -599217.32 5682916.96 96.00 -599217.42 5680481.43 97.50 -599217.52 5682429.67 95.00 -599217.62 5681417.14 96.25 -599217.63 5682455.88 95.00 -599217.64 5680037.35 97.50 -599217.79 5687385.52 95.00 -599217.94 5682584.36 95.00 -599218.02 5682589.78 96.25 -599218.14 5679984.80 97.00 -599218.19 5681256.87 96.25 -599218.51 5678631.78 98.75 -599218.79 5681437.05 96.00 -599219.00 5682164.86 96.25 -599219.28 5682696.16 96.25 -599219.34 5677255.86 100.00 -599219.53 5682924.72 96.25 -599219.65 5678476.28 98.75 -599220.54 5682339.20 96.25 -599220.72 5678290.70 98.75 -599220.96 5680472.16 97.50 -599221.01 5676726.58 101.25 -599221.05 5681126.99 96.25 -599221.13 5682662.21 96.25 -599221.34 5682963.38 96.25 -599221.35 5682438.87 95.00 -599221.39 5682391.40 95.00 -599221.58 5682905.97 96.25 -599221.73 5681247.68 96.25 -599221.90 5680029.11 97.50 -599221.93 5680451.09 98.75 -599221.93 5679976.15 97.00 -599222.06 5678160.30 100.00 -599222.17 5682853.65 96.25 -599222.23 5681228.51 96.25 -599222.24 5681452.46 96.25 -599222.38 5682359.51 95.00 -599222.56 5679996.64 97.00 -599222.57 5682098.10 96.25 -599222.66 5682821.64 96.25 -599222.93 5682483.42 96.25 -599222.95 5682977.47 95.00 -599222.97 5682468.72 96.25 -599223.39 5682876.99 96.25 -599223.39 5682560.93 95.00 -599223.44 5678081.19 100.00 -599223.64 5681238.03 96.25 -599223.96 5682751.81 96.25 -599224.16 5682732.57 96.25 -599224.18 5682687.46 96.25 -599224.19 5680143.11 98.75 -599224.31 5680105.14 96.00 -599224.34 5677261.99 99.75 -599224.49 5677479.39 100.00 -599224.50 5677274.09 100.00 -599224.89 5681200.83 96.25 -599224.95 5682887.25 96.25 -599225.04 5677249.70 100.00 -599225.12 5680463.32 97.50 -599225.30 5682331.13 96.25 -599225.72 5679967.50 97.00 -599225.85 5682461.29 95.00 -599226.04 5681422.01 96.25 -599226.08 5682382.64 95.00 -599226.16 5680020.87 97.50 -599226.27 5682653.64 96.25 -599226.66 5681118.84 96.25 -599227.16 5678482.79 98.75 -599227.19 5682845.21 96.25 -599227.32 5682446.22 95.00 -599227.58 5679990.40 97.00 -599227.73 5682582.53 95.00 -599227.78 5687385.56 95.00 -599227.79 5680443.02 98.75 -599227.80 5676733.89 101.25 -599227.93 5682588.75 96.25 -599228.47 5678631.21 98.75 -599228.63 5682167.54 96.25 -599228.77 5682663.02 96.00 -599228.98 5682363.96 95.00 -599229.00 5682921.82 96.25 -599229.04 5682537.88 96.25 -599229.08 5682678.75 96.25 -599229.17 5682105.54 96.25 -599229.44 5682373.27 95.00 -599229.95 5682322.98 96.25 -599230.20 5682901.10 96.25 -599230.23 5682528.50 96.25 -599230.30 5677268.26 100.00 -599230.32 5678288.53 98.75 -599230.43 5682959.32 96.25 -599230.75 5681447.71 96.25 -599230.91 5678164.84 100.00 -599230.98 5682818.80 96.25 -599230.98 5679981.59 97.00 -599231.03 5679961.43 97.00 -599231.17 5680027.13 97.50 -599231.27 5682433.28 96.25 -599231.34 5678075.12 100.00 -599231.35 5682745.08 96.25 -599231.46 5682645.11 96.25 -599231.55 5680455.76 97.50 -599231.73 5682836.53 96.25 -599231.79 5682473.25 96.25 -599232.19 5681142.34 96.00 -599232.33 5682974.22 95.00 -599232.34 5682485.41 96.25 -599232.67 5677251.40 100.00 -599232.94 5682874.03 96.25 -599233.21 5682561.26 95.00 -599233.23 5682424.00 96.25 -599233.29 5682729.36 96.25 -599233.36 5677260.13 100.00 -599233.39 5681111.46 96.25 -599233.44 5680139.43 98.75 -599233.57 5682669.83 96.25 -599233.62 5682467.36 95.00 -599233.65 5681196.99 96.25 -599233.68 5680434.97 98.75 -599233.84 5680036.01 97.50 -599233.95 5677476.24 100.00 -599234.50 5678489.54 98.75 -599234.59 5682314.84 96.25 -599234.84 5682885.91 96.25 -599235.00 5681425.49 96.25 -599235.12 5682519.99 96.25 -599235.14 5682827.40 96.25 -599235.19 5679973.14 97.00 -599235.26 5682442.35 96.25 -599235.82 5682451.42 95.00 -599236.03 5681133.59 96.00 -599236.31 5682112.50 96.25 -599236.36 5682542.89 96.25 -599236.60 5680044.86 97.50 -599236.71 5682736.78 96.25 -599236.95 5676737.63 101.25 -599237.46 5682580.54 95.00 -599237.67 5682637.28 96.25 -599237.77 5687385.55 95.00 -599237.84 5682660.80 96.25 -599237.89 5682588.33 96.25 -599238.05 5680448.27 97.50 -599238.19 5682170.44 96.25 -599238.25 5682918.30 96.25 -599238.45 5678630.95 98.75 -599238.50 5681145.85 96.00 -599238.85 5682896.29 96.25 -599239.08 5682479.91 96.25 -599239.12 5678068.93 100.00 -599239.23 5681103.39 96.25 -599239.30 5682306.73 96.25 -599239.34 5678284.27 98.75 -599239.35 5682492.42 96.25 -599239.46 5682955.13 96.25 -599239.54 5679964.76 97.00 -599239.57 5682416.36 96.25 -599239.74 5680427.07 98.75 -599239.92 5681189.22 96.25 -599239.95 5678169.03 100.00 -599240.02 5682511.52 96.25 -599240.30 5681125.05 96.00 -599240.40 5681447.50 96.25 -599241.48 5682473.29 95.00 -599241.68 5680133.97 98.75 -599241.70 5682970.96 95.00 -599241.97 5682501.81 96.25 -599242.08 5681093.88 96.25 -599242.28 5678495.79 98.75 -599242.31 5682651.88 96.25 -599242.73 5682872.05 96.25 -599242.89 5682559.87 95.00 -599243.60 5682877.15 96.00 -599243.61 5682446.30 96.25 -599243.61 5677474.10 100.00 -599243.87 5682629.45 96.25 -599244.13 5682298.69 96.25 -599244.40 5680440.65 97.50 -599244.50 5686248.75 95.00 -599244.62 5681427.02 96.25 -599244.64 5682883.94 96.25 -599244.67 5682116.66 96.25 -599244.82 5682524.57 96.50 -599245.10 5681139.09 96.00 -599245.11 5681116.80 96.00 -599245.16 5682454.71 95.00 -599245.51 5678061.29 100.00 -599245.55 5681180.98 96.25 -599245.65 5680046.45 97.50 -599245.80 5686238.85 95.00 -599246.03 5681084.89 96.25 -599246.17 5686258.30 95.00 -599246.18 5682575.73 95.00 -599246.23 5682543.56 96.25 -599246.36 5676740.96 101.25 -599246.43 5680751.19 96.25 -599246.52 5680419.75 98.75 -599246.90 5682409.67 96.25 -599246.90 5682485.94 96.25 -599247.34 5687382.71 95.00 -599247.49 5682914.75 96.25 -599247.67 5686229.10 95.00 -599247.73 5682587.24 96.25 -599247.74 5680126.57 98.75 -599247.74 5682173.41 96.25 -599247.88 5682643.59 96.25 -599247.95 5682892.41 96.25 -599248.42 5678630.73 98.75 -599248.53 5678280.38 98.75 -599248.73 5682951.70 96.25 -599248.99 5678173.21 100.00 -599249.25 5682290.86 96.25 -599249.41 5681451.21 96.25 -599249.48 5686267.73 95.00 -599249.79 5682478.58 95.00 -599250.06 5678502.04 98.75 -599250.25 5681108.74 96.00 -599250.31 5680068.28 96.00 -599250.37 5680432.72 97.50 -599250.48 5680742.54 96.25 -599250.49 5680116.98 98.75 -599250.70 5682622.26 96.25 -599250.88 5681172.54 96.25 -599250.92 5681131.51 96.00 -599251.08 5682967.70 95.00 -599251.64 5678053.50 100.00 -599251.78 5686220.00 95.00 -599251.81 5682555.67 95.00 -599251.94 5681076.84 96.25 -599252.30 5680411.65 98.75 -599252.43 5682537.79 96.25 -599252.57 5682870.27 96.25 -599253.29 5682448.60 96.25 -599253.46 5682635.30 96.25 -599253.60 5677474.43 100.00 -599254.00 5682459.07 95.00 -599254.15 5681429.02 96.25 -599254.18 5682114.75 96.25 -599254.20 5680755.69 96.25 -599254.40 5680049.50 97.50 -599254.45 5682881.98 96.25 -599254.52 5682492.20 96.25 -599254.55 5677975.49 100.00 -599254.82 5677985.43 100.00 -599254.91 5682570.92 95.00 -599254.97 5680075.27 96.00 -599255.00 5677965.55 100.00 -599255.11 5682404.07 96.25 -599255.22 5678044.21 100.00 -599255.32 5682283.71 96.25 -599255.47 5680062.74 96.00 -599255.49 5677995.37 100.00 -599255.71 5681100.90 96.00 -599255.98 5686210.94 95.00 -599256.03 5682528.58 96.25 -599256.10 5676740.82 101.25 -599256.22 5681164.09 96.25 -599256.35 5680424.80 97.50 -599256.36 5680735.06 96.25 -599256.45 5681123.72 96.00 -599256.50 5678005.26 100.00 -599256.60 5682583.20 96.25 -599256.72 5687379.36 95.00 -599256.74 5682911.21 96.25 -599256.81 5680402.84 98.75 -599256.86 5678135.07 101.25 -599257.00 5682485.27 95.00 -599257.02 5686271.29 95.00 -599257.11 5682382.16 96.25 -599257.12 5682888.68 96.25 -599257.40 5682175.88 96.25 -599257.60 5678810.49 98.75 -599257.74 5678276.56 98.75 -599257.80 5680746.08 96.10 -599257.83 5678800.56 98.75 -599257.86 5678034.66 100.00 -599258.11 5681455.55 96.25 -599258.15 5681069.01 96.25 -599258.18 5682372.30 96.25 -599258.31 5677956.16 100.00 -599258.32 5678015.05 100.00 -599258.40 5678630.50 98.75 -599258.46 5682548.89 95.00 -599258.54 5682950.01 96.25 -599258.61 5678175.78 100.00 -599258.66 5682616.23 96.25 -599259.07 5682519.14 96.25 -599259.49 5678504.25 98.75 -599259.57 5678024.85 100.00 -599259.76 5678143.84 101.25 -599259.98 5680393.39 98.75 -599260.14 5680119.51 98.75 -599260.28 5682499.91 96.25 -599260.45 5682964.44 95.00 -599260.62 5678126.98 101.25 -599260.73 5682628.68 96.25 -599260.81 5682539.38 95.00 -599261.06 5682454.22 96.25 -599261.13 5678819.12 98.75 -599261.19 5686202.42 95.00 -599261.67 5681093.49 96.00 -599261.70 5681115.74 96.00 -599261.81 5677946.88 100.00 -599261.85 5682509.69 96.25 -599261.92 5681155.89 96.25 -599261.96 5682564.00 95.00 -599262.13 5682464.74 95.00 -599262.29 5682276.55 96.25 -599262.32 5680416.87 97.50 -599262.34 5682868.23 96.25 -599262.46 5680053.70 97.50 -599262.71 5680078.36 96.00 -599262.92 5681060.30 96.25 -599263.05 5680066.30 96.00 -599263.18 5680759.22 96.25 -599263.26 5682110.60 96.25 -599263.31 5682492.71 95.00 -599263.47 5681431.61 96.25 -599263.50 5677475.55 100.00 -599263.74 5678792.73 98.75 -599263.97 5682530.06 95.00 -599263.99 5682576.59 96.25 -599264.08 5682879.35 96.25 -599264.19 5682399.96 96.25 -599264.29 5680732.64 96.25 -599265.07 5682382.87 96.25 -599265.43 5682365.61 96.25 -599265.56 5687374.71 95.00 -599265.75 5680749.92 96.25 -599265.87 5676738.98 101.25 -599265.97 5682907.64 96.25 -599266.11 5681460.88 96.25 -599266.40 5686193.90 95.00 -599266.46 5682885.40 96.25 -599266.48 5680385.83 98.75 -599266.79 5682462.39 96.25 -599266.83 5682520.64 95.00 -599266.84 5678150.84 101.25 -599266.87 5681107.70 96.00 -599266.98 5686271.34 95.00 -599267.10 5680408.20 97.50 -599267.18 5681051.26 96.25 -599267.23 5680740.42 96.25 -599267.25 5682175.61 96.25 -599267.39 5678274.00 98.75 -599267.69 5682612.21 96.25 -599267.88 5680073.42 96.00 -599268.05 5682501.35 95.00 -599268.17 5677939.21 100.00 -599268.19 5681148.24 96.25 -599268.23 5678178.36 100.00 -599268.28 5682556.41 95.00 -599268.30 5678629.31 98.75 -599268.34 5678825.60 98.75 -599268.35 5682948.33 96.25 -599268.76 5682511.06 95.00 -599268.77 5682472.17 95.00 -599268.80 5678121.36 101.25 -599268.97 5680060.31 97.50 -599269.26 5682269.38 96.25 -599269.42 5678505.26 98.75 -599269.66 5680122.29 98.75 -599269.68 5682624.55 96.25 -599269.72 5682960.87 95.00 -599269.81 5681090.71 96.00 -599269.89 5682568.55 96.25 -599270.03 5678785.05 98.75 -599270.08 5681438.74 96.25 -599271.11 5682546.86 95.00 -599271.29 5681042.16 96.25 -599271.29 5681099.23 96.00 -599271.63 5680399.37 97.50 -599271.71 5681468.85 96.25 -599271.80 5682864.99 96.25 -599272.47 5682470.59 96.25 -599272.77 5682394.86 96.25 -599272.89 5682359.01 96.25 -599272.89 5686186.31 95.00 -599272.98 5680378.26 98.75 -599273.11 5682109.15 96.25 -599273.35 5682875.66 96.25 -599273.36 5677477.17 100.00 -599273.46 5682377.49 96.25 -599273.48 5682480.78 95.00 -599273.94 5682537.31 95.00 -599273.99 5687369.42 95.00 -599274.18 5682559.61 96.25 -599274.52 5677931.53 100.00 -599275.00 5676734.98 101.25 -599275.21 5682904.08 96.25 -599275.25 5681032.99 96.25 -599275.28 5680067.11 97.50 -599275.41 5681141.44 96.25 -599275.80 5682882.12 96.25 -599276.12 5681339.58 97.50 -599276.13 5678154.48 101.25 -599276.17 5680390.54 97.50 -599276.22 5682262.21 96.25 -599276.23 5686267.56 95.00 -599276.67 5678777.74 98.75 -599276.89 5681329.88 97.50 -599277.14 5678271.92 98.75 -599277.16 5682174.52 96.25 -599277.17 5682609.06 96.25 -599277.29 5681445.30 96.25 -599277.31 5682527.94 95.00 -599277.42 5678829.63 98.75 -599277.43 5681349.32 97.50 -599277.54 5682489.84 95.00 -599277.54 5680128.41 98.75 -599277.78 5681476.42 96.25 -599277.79 5682550.31 96.25 -599277.85 5678180.94 100.00 -599277.99 5678117.47 101.25 -599278.20 5682946.92 96.25 -599278.20 5678628.06 98.75 -599278.52 5682478.51 96.25 -599278.53 5681320.19 97.50 -599278.81 5681023.67 96.25 -599278.98 5682957.30 95.00 -599279.29 5682621.83 96.25 -599279.34 5678505.75 98.75 -599279.39 5682351.44 96.25 -599279.48 5680370.69 98.75 -599279.90 5682518.40 95.00 -599279.98 5686179.50 95.00 -599280.37 5681358.66 97.50 -599280.40 5681387.36 97.50 -599280.56 5682860.38 96.25 -599280.65 5681397.02 97.50 -599280.86 5682508.49 95.00 -599281.07 5682540.89 96.25 -599281.25 5682389.70 96.25 -599281.31 5677924.25 100.00 -599281.52 5680382.22 97.50 -599281.70 5681133.69 96.25 -599281.82 5682498.57 95.00 -599281.89 5681406.77 97.50 -599282.08 5681014.23 96.25 -599282.14 5682871.11 96.25 -599282.50 5681368.16 97.50 -599282.52 5681311.55 97.50 -599282.66 5682374.55 96.25 -599282.72 5682254.62 96.25 -599282.99 5682107.77 96.25 -599283.02 5687365.44 95.00 -599283.03 5677479.65 100.00 -599283.23 5681377.95 97.50 -599283.31 5676729.44 101.25 -599283.63 5680072.17 97.50 -599283.88 5682486.91 96.25 -599284.18 5682899.97 96.25 -599284.50 5681451.85 96.25 -599284.57 5682531.55 96.25 -599284.79 5678772.01 98.75 -599285.00 5682878.46 96.25 -599285.22 5680362.54 98.75 -599285.30 5681482.33 96.25 -599285.40 5681415.89 97.50 -599285.42 5680134.52 98.75 -599285.81 5678155.87 101.25 -599285.89 5686265.69 95.00 -599285.93 5678111.63 101.25 -599286.01 5682343.98 96.25 -599286.11 5682723.54 96.25 -599286.11 5682733.08 96.25 -599286.51 5681005.36 96.25 -599286.82 5682606.48 96.25 -599286.86 5682381.67 96.25 -599286.92 5682172.94 96.25 -599286.94 5678270.04 98.75 -599286.95 5678831.98 98.75 -599287.00 5682862.86 96.25 -599287.35 5681125.48 96.25 -599287.45 5680374.27 97.50 -599287.66 5678179.33 100.00 -599288.07 5682945.63 96.25 -599288.10 5678626.80 98.75 -599288.15 5677917.01 100.00 -599288.24 5682953.72 95.00 -599288.37 5682522.33 96.25 -599288.96 5686336.91 95.00 -599288.99 5682619.45 96.25 -599289.10 5678504.02 98.75 -599289.18 5686175.63 95.00 -599289.19 5682247.01 96.25 -599289.59 5681460.12 96.25 -599289.60 5686327.23 95.00 -599289.64 5681305.53 97.50 -599289.78 5682714.74 96.25 -599290.05 5686346.84 95.00 -599290.63 5682494.26 96.25 -599290.73 5677964.04 101.25 -599290.96 5680354.38 98.75 -599291.40 5677954.26 101.25 -599291.48 5682217.63 96.25 -599291.55 5676723.81 101.25 -599291.89 5682513.01 96.25 -599291.95 5677973.85 101.25 -599291.99 5682237.42 96.25 -599292.02 5681422.87 97.50 -599292.18 5682738.13 96.25 -599292.32 5680076.51 97.50 -599292.37 5682227.59 96.25 -599292.49 5681116.91 96.25 -599292.50 5680141.49 98.75 -599292.71 5682894.93 96.25 -599292.72 5687363.28 95.00 -599292.73 5677482.03 100.00 -599292.88 5682336.75 96.25 -599292.88 5682720.75 96.00 -599292.90 5678766.28 98.75 -599292.96 5682107.93 96.25 -599293.30 5686270.55 95.00 -599293.34 5678104.97 101.25 -599293.38 5680366.31 97.50 -599293.47 5686356.18 95.00 -599293.52 5686318.04 95.00 -599293.76 5680998.99 96.25 -599293.95 5682503.34 96.25 -599294.13 5682874.64 96.25 -599294.21 5682706.37 96.25 -599294.45 5677944.77 101.25 -599294.49 5681468.55 96.25 -599294.74 5681484.64 96.25 -599294.86 5677909.65 100.00 -599295.08 5682208.53 96.25 -599295.15 5682167.61 96.25 -599295.67 5686308.34 95.00 -599295.78 5678155.71 101.25 -599295.95 5682260.59 95.70 -599296.26 5680752.90 96.25 -599296.46 5682730.52 96.25 -599296.48 5682603.95 96.25 -599296.69 5680346.22 98.75 -599296.82 5678833.07 98.75 -599296.86 5678269.07 98.75 -599296.93 5678497.83 98.75 -599296.98 5677982.31 101.25 -599297.32 5682250.92 95.70 -599297.48 5678177.66 100.00 -599297.50 5682950.15 95.00 -599297.62 5686365.25 95.00 -599297.67 5681477.73 96.25 -599297.72 5686298.58 95.00 -599297.74 5681108.41 96.25 -599297.76 5686279.33 95.00 -599297.94 5682944.35 96.25 -599298.00 5678625.54 98.75 -599298.06 5682231.49 95.70 -599298.24 5680743.25 96.25 -599298.52 5682241.24 95.70 -599298.63 5686172.66 95.00 -599298.74 5682617.26 96.25 -599298.75 5677100.04 100.00 -599298.98 5681079.17 96.25 -599298.99 5682221.78 95.70 -599299.02 5680149.04 98.75 -599299.03 5681069.19 96.25 -599299.21 5680358.28 97.50 -599299.30 5681303.72 97.50 -599299.39 5682721.67 96.25 -599299.40 5682673.02 96.25 -599299.44 5681059.22 96.25 -599299.55 5677109.63 100.00 -599299.62 5681429.09 97.50 -599299.72 5676718.07 101.25 -599299.72 5678097.38 101.25 -599299.81 5681089.13 96.25 -599299.93 5682329.69 96.25 -599300.29 5681099.09 96.25 -599300.36 5686288.95 95.00 -599300.46 5681049.28 96.25 -599300.70 5682889.23 96.25 -599300.90 5677090.61 100.00 -599301.08 5677937.32 101.25 -599301.27 5678760.93 98.75 -599301.35 5682200.75 96.25 -599301.47 5682703.78 96.25 -599301.47 5680758.63 96.25 -599301.56 5680079.54 97.50 -599301.56 5677902.29 100.00 -599302.11 5681001.23 96.25 -599302.33 5682212.65 95.70 -599302.38 5686374.03 95.00 -599302.57 5677483.62 100.00 -599302.65 5680734.32 96.25 -599302.66 5687362.26 95.00 -599302.71 5682712.75 96.25 -599302.80 5682679.18 96.25 -599302.84 5682108.71 96.25 -599302.89 5682161.53 96.25 -599302.93 5682262.20 95.70 -599303.12 5681039.73 96.25 -599303.43 5680338.87 98.75 -599303.62 5682664.49 96.25 -599303.68 5682873.55 96.25 -599304.03 5677989.36 101.25 -599304.47 5677118.22 100.00 -599304.77 5678491.65 98.75 -599304.98 5680350.21 97.50 -599305.01 5678151.98 101.25 -599305.13 5679671.91 98.75 -599305.49 5682901.92 96.25 -599305.53 5678089.27 101.25 -599305.53 5680156.58 98.75 -599305.86 5677893.31 100.00 -599305.93 5681010.46 96.25 -599306.09 5682253.61 95.70 -599306.11 5682601.30 96.25 -599306.39 5681020.35 96.25 -599306.39 5681030.34 96.25 -599306.66 5682243.87 95.70 -599306.68 5679662.25 98.75 -599306.70 5678834.17 98.75 -599306.76 5682946.58 95.00 -599306.77 5686383.00 95.00 -599306.81 5678268.38 98.75 -599306.98 5682322.63 96.25 -599307.02 5677968.80 102.50 -599307.06 5678175.10 100.00 -599307.06 5682881.83 96.25 -599307.12 5679681.68 98.75 -599307.18 5682940.73 96.25 -599307.38 5677959.33 102.50 -599307.71 5682893.02 96.25 -599307.73 5682234.23 95.70 -599307.85 5677930.03 101.25 -599307.86 5682193.18 96.25 -599307.91 5678624.31 98.75 -599307.95 5680725.85 96.25 -599308.00 5677084.99 100.00 -599308.33 5681433.64 97.50 -599308.33 5682447.35 96.25 -599308.37 5680752.13 96.25 -599308.53 5682615.37 96.25 -599308.56 5686171.57 95.00 -599309.01 5676714.99 101.25 -599309.01 5681305.08 97.50 -599309.15 5679691.43 98.75 -599309.23 5679652.62 98.75 -599309.60 5677126.47 100.00 -599309.66 5678755.61 98.75 -599310.15 5677884.32 100.00 -599310.30 5680331.64 98.75 -599310.43 5682657.30 96.25 -599310.50 5682454.04 96.25 -599310.53 5677977.45 102.50 -599310.64 5678080.75 101.25 -599310.72 5682224.93 95.70 -599310.78 5678484.01 98.75 -599311.09 5680342.40 97.50 -599311.12 5677950.65 102.50 -599311.15 5686391.98 95.00 -599311.28 5682210.01 95.70 -599311.30 5680080.24 97.50 -599311.31 5682674.32 96.25 -599311.78 5679642.98 98.75 -599311.99 5677995.36 101.25 -599312.15 5680164.04 98.75 -599312.37 5686451.25 95.00 -599312.37 5682111.69 96.25 -599312.56 5677483.62 100.00 -599312.59 5682161.98 96.25 -599312.60 5687361.37 95.00 -599312.60 5682285.23 96.25 -599312.60 5682904.23 96.25 -599312.66 5686461.02 95.00 -599312.74 5682884.67 96.25 -599312.95 5680743.25 96.25 -599312.96 5686441.28 95.00 -599313.10 5682314.91 96.25 -599313.17 5682275.27 96.25 -599313.17 5682295.17 96.25 -599313.34 5679700.47 98.75 -599313.54 5686431.31 95.00 -599313.73 5686401.61 95.00 -599313.87 5682265.32 96.25 -599314.10 5682305.10 96.25 -599314.18 5678148.06 101.25 -599314.26 5680718.12 96.25 -599314.27 5686421.35 95.00 -599314.40 5677875.32 100.00 -599314.77 5682742.02 96.25 -599314.98 5682186.17 96.25 -599315.04 5678071.81 101.25 -599315.10 5678475.01 98.75 -599315.12 5686411.39 95.00 -599315.55 5682255.49 96.25 -599315.70 5682598.49 96.25 -599316.02 5677924.31 101.25 -599316.02 5682943.01 95.00 -599316.26 5682216.96 95.70 -599316.40 5682936.99 96.25 -599316.41 5678171.67 100.00 -599316.57 5678835.27 98.75 -599316.63 5682649.56 96.25 -599316.75 5680734.04 96.25 -599316.77 5678268.33 98.75 -599316.88 5682733.93 96.25 -599316.99 5680708.64 96.25 -599317.04 5681438.19 97.50 -599317.07 5677132.96 100.00 -599317.17 5680324.41 98.75 -599317.43 5677082.01 100.00 -599317.48 5680334.80 97.50 -599317.54 5681351.84 98.00 -599317.60 5677865.89 100.00 -599317.60 5686469.70 95.00 -599317.81 5678623.09 98.75 -599317.83 5679635.09 98.75 -599317.86 5682445.31 96.25 -599317.99 5677983.07 102.50 -599318.04 5678750.29 98.75 -599318.23 5686169.31 95.00 -599318.30 5679708.91 98.75 -599318.47 5682614.35 96.25 -599318.60 5677944.91 102.50 -599318.73 5681306.54 97.50 -599318.84 5676713.41 101.25 -599318.94 5682168.27 96.25 -599319.01 5678465.87 98.75 -599319.06 5682750.72 96.25 -599319.08 5682924.99 96.25 -599319.11 5682877.21 96.25 -599319.28 5682668.43 96.25 -599319.54 5680170.74 98.75 -599319.59 5682246.81 96.25 -599319.75 5682118.19 96.25 -599319.76 5678063.03 101.25 -599319.77 5678001.57 101.25 -599319.86 5682177.95 96.25 -599320.20 5682454.12 96.25 -599320.80 5677856.46 100.00 -599321.03 5680079.49 97.50 -599321.10 5680699.53 96.25 -599321.43 5682900.02 96.25 -599321.59 5678456.23 98.75 -599321.82 5686673.64 95.00 -599322.05 5680725.71 96.25 -599322.09 5686664.06 95.00 -599322.40 5682917.18 96.25 -599322.40 5677482.33 100.00 -599322.51 5682641.59 96.25 -599322.55 5687362.25 95.00 -599322.55 5677112.87 99.50 -599322.78 5680316.27 98.75 -599322.84 5682888.42 95.00 -599323.26 5678143.94 101.25 -599323.35 5680689.84 96.25 -599323.52 5682237.72 96.25 -599323.54 5682741.86 96.00 -599323.86 5680327.20 97.50 -599323.99 5679627.25 98.75 -599324.00 5677847.02 100.00 -599324.17 5678446.59 98.75 -599324.19 5677918.60 101.25 -599324.87 5678054.47 101.25 -599325.00 5682600.56 96.25 -599325.26 5682939.38 95.00 -599325.49 5686682.55 95.00 -599325.69 5682933.40 96.25 -599325.71 5682228.05 96.25 -599325.76 5677137.68 100.00 -599325.76 5678168.25 100.00 -599325.88 5682879.28 95.00 -599325.92 5682870.14 96.25 -599326.10 5679715.12 98.75 -599326.19 5682733.04 96.25 -599326.41 5681440.14 97.50 -599326.44 5678836.37 98.75 -599326.46 5686472.42 95.00 -599326.46 5678745.02 98.75 -599326.48 5677078.04 100.00 -599326.62 5682609.36 96.25 -599326.70 5678267.87 98.75 -599326.79 5677940.17 102.50 -599326.81 5682125.24 96.25 -599326.88 5682925.33 96.25 -599326.92 5680177.45 98.75 -599327.01 5677985.97 102.50 -599327.05 5680680.57 96.25 -599327.09 5678008.35 101.25 -599327.22 5682442.58 96.25 -599327.33 5682662.64 96.25 -599327.48 5680307.47 98.75 -599327.67 5686166.05 95.00 -599327.73 5678623.01 98.75 -599327.81 5681310.11 97.50 -599327.90 5682749.80 96.25 -599327.99 5678437.42 98.75 -599328.32 5682633.55 96.25 -599328.82 5676713.62 101.25 -599328.82 5678045.35 101.25 -599328.90 5682218.78 96.25 -599329.20 5680727.32 96.25 -599329.27 5686657.94 95.00 -599329.27 5682910.27 96.25 -599329.28 5682479.96 96.25 -599329.89 5682453.24 96.25 -599329.91 5679619.27 98.75 -599330.03 5682895.27 96.25 -599330.24 5680319.60 97.50 -599330.31 5677839.35 100.00 -599330.52 5680737.23 96.25 -599330.63 5682740.78 96.25 -599330.67 5680671.27 96.25 -599330.77 5680078.74 97.50 -599330.80 5682882.32 94.75 -599331.02 5682887.51 95.00 -599331.67 5678035.81 101.25 -599331.86 5682133.84 96.25 -599331.98 5686690.15 95.00 -599332.11 5682642.63 95.00 -599332.12 5677480.01 100.00 -599332.14 5677113.12 99.50 -599332.16 5677912.61 101.25 -599332.17 5680298.67 98.75 -599332.26 5678016.25 101.25 -599332.32 5680812.59 96.25 -599332.34 5678139.82 101.25 -599332.43 5678428.48 98.75 -599332.50 5687363.13 95.00 -599332.65 5680746.92 96.25 -599333.20 5682872.49 95.00 -599333.31 5680822.29 96.25 -599333.59 5682864.00 96.25 -599333.67 5678026.12 101.25 -599333.83 5682210.10 96.25 -599333.90 5679721.32 98.75 -599334.19 5679610.27 98.75 -599334.31 5680184.15 98.75 -599334.38 5682436.29 96.25 -599334.45 5682919.14 96.25 -599334.46 5682935.66 95.00 -599334.52 5682634.44 95.00 -599334.67 5680662.22 96.25 -599334.96 5682472.09 96.25 -599334.97 5678739.90 98.75 -599334.97 5677072.95 100.00 -599334.97 5682929.82 96.25 -599335.04 5677141.14 100.00 -599335.12 5678164.83 100.00 -599335.15 5677935.70 102.50 -599335.53 5682657.08 96.25 -599335.54 5681436.56 97.50 -599335.91 5682627.18 96.25 -599335.97 5680311.52 97.50 -599336.29 5677987.74 102.50 -599336.36 5678835.93 98.75 -599336.39 5682481.91 96.25 -599336.40 5686473.39 95.00 -599336.51 5680804.42 96.25 -599336.61 5678266.76 98.75 -599336.72 5677831.73 100.00 -599336.74 5681314.23 97.50 -599336.86 5682142.48 96.25 -599336.91 5682904.15 96.25 -599337.44 5680831.14 96.25 -599337.57 5686165.72 95.00 -599337.63 5678420.09 98.75 -599337.67 5678623.88 98.75 -599338.24 5680698.50 96.00 -599338.27 5682638.33 94.75 -599338.39 5686697.81 95.00 -599338.43 5682890.20 96.25 -599338.47 5676716.07 101.25 -599338.47 5679601.27 98.75 -599338.51 5682646.10 95.00 -599338.51 5680291.02 98.75 -599338.87 5677962.07 101.00 -599339.04 5680752.45 96.25 -599339.21 5686657.71 95.00 -599339.51 5682451.63 96.25 -599339.56 5682882.32 95.00 -599340.09 5677906.57 101.25 -599340.50 5680077.92 97.50 -599340.52 5680191.86 98.75 -599340.56 5682907.21 96.00 -599340.75 5682203.03 96.25 -599340.87 5680654.42 96.25 -599341.31 5680303.16 97.50 -599341.52 5678135.94 101.25 -599341.57 5682629.57 95.00 -599341.73 5677113.38 99.50 -599341.76 5682858.56 96.25 -599341.77 5682912.64 96.25 -599341.81 5682873.64 95.00 -599341.84 5677477.70 100.00 -599341.91 5681429.07 97.50 -599341.92 5682430.41 96.25 -599342.05 5681655.79 96.25 -599342.30 5680690.53 96.00 -599342.42 5687363.16 95.00 -599342.76 5679592.27 98.75 -599343.39 5679724.30 98.75 -599343.40 5682149.27 96.25 -599343.43 5680838.79 96.25 -599343.45 5682639.52 95.00 -599343.48 5678734.77 98.75 -599343.61 5682924.89 96.25 -599343.61 5682620.99 96.25 -599343.67 5682931.95 95.00 -599343.75 5682651.54 96.25 -599343.95 5677825.08 100.00 -599344.06 5677106.13 99.50 -599344.21 5682897.64 96.25 -599344.24 5682468.38 96.25 -599344.32 5677144.61 100.00 -599344.33 5677933.39 102.50 -599344.45 5681319.94 97.50 -599344.47 5678161.41 100.00 -599344.54 5677072.19 100.00 -599344.67 5678413.01 98.75 -599344.83 5680744.31 96.25 -599344.84 5680806.63 96.25 -599345.12 5680283.54 98.75 -599345.39 5681400.60 97.50 -599345.44 5681419.93 97.50 -599345.58 5681663.18 96.25 -599345.62 5682478.13 96.25 -599345.72 5677987.32 102.50 -599345.86 5681410.36 97.50 -599345.97 5680200.21 98.75 -599346.14 5682352.63 96.25 -599346.26 5678107.18 105.00 -599346.28 5678835.42 98.75 -599346.36 5686474.19 95.00 -599346.36 5680682.57 96.00 -599346.39 5682884.51 96.25 -599346.39 5677098.87 99.50 -599346.53 5678265.65 98.75 -599346.65 5686702.96 95.00 -599346.66 5680294.80 97.50 -599346.96 5678099.37 105.00 -599347.04 5679583.27 98.75 -599347.04 5681390.94 97.50 -599347.28 5682850.45 96.25 -599347.34 5682631.93 95.00 -599347.37 5680646.83 96.25 -599347.38 5686167.60 95.00 -599347.53 5678625.33 98.75 -599347.63 5682900.90 96.00 -599347.68 5682195.87 96.25 -599347.71 5677900.17 101.25 -599347.73 5676719.60 101.25 -599348.42 5681568.35 96.25 -599348.54 5681649.96 96.25 -599348.64 5680735.24 96.25 -599348.85 5677118.83 99.50 -599348.86 5682905.92 96.25 -599349.02 5681576.75 96.25 -599349.07 5682449.77 96.25 -599349.20 5686657.71 95.00 -599349.28 5680815.35 96.25 -599349.87 5682345.65 96.25 -599350.11 5680275.06 98.75 -599350.22 5682438.44 96.00 -599350.22 5680077.09 97.50 -599350.42 5680674.60 96.00 -599350.59 5681381.78 97.50 -599350.63 5678205.38 100.00 -599350.78 5678132.25 101.25 -599350.83 5680845.20 96.25 -599350.84 5681327.41 97.50 -599350.94 5680208.81 98.75 -599351.01 5682471.49 96.00 -599351.11 5680725.56 96.25 -599351.16 5682428.08 96.25 -599351.28 5679574.25 98.75 -599351.41 5682891.02 96.25 -599351.55 5677475.34 100.00 -599351.62 5678214.24 100.00 -599351.70 5678405.93 98.75 -599351.89 5680286.37 97.50 -599351.98 5678729.64 98.75 -599352.09 5682646.19 96.25 -599352.18 5682699.25 96.25 -599352.18 5682919.83 96.25 -599352.19 5682841.96 96.25 -599352.21 5677078.46 100.00 -599352.22 5686176.07 95.00 -599352.28 5687361.56 95.00 -599352.49 5680824.63 96.25 -599352.51 5677819.99 100.00 -599352.56 5682927.54 95.00 -599352.60 5682148.31 96.25 -599352.66 5680715.70 96.25 -599352.88 5682617.49 96.25 -599352.93 5679727.16 98.75 -599353.01 5678196.20 100.00 -599353.26 5678093.31 105.00 -599353.48 5680638.93 96.25 -599353.64 5682877.89 96.25 -599353.77 5677932.61 102.50 -599353.77 5677932.61 105.00 -599353.80 5682465.51 96.25 -599353.89 5677892.49 101.25 -599353.89 5677147.14 100.00 -599353.89 5680265.83 98.75 -599353.93 5681665.32 96.25 -599354.08 5682789.71 96.25 -599354.10 5678158.89 100.00 -599354.39 5682188.49 96.25 -599354.45 5678109.67 105.00 -599354.49 5680666.64 96.00 -599354.60 5677353.26 100.00 -599354.60 5681372.82 97.50 -599354.62 5680705.94 96.25 -599354.62 5680218.08 98.75 -599354.70 5682894.58 96.00 -599354.88 5677984.87 102.50 -599355.23 5682352.19 96.25 -599355.48 5686477.00 95.00 -599355.50 5682476.80 96.25 -599355.51 5679565.23 98.75 -599355.55 5682898.78 96.25 -599355.57 5682832.90 96.25 -599355.76 5677363.19 100.00 -599355.82 5681583.67 96.25 -599355.86 5686185.37 95.00 -599355.87 5686706.79 95.00 -599355.98 5677124.27 99.50 -599356.20 5678834.92 98.75 -599356.25 5682796.81 96.25 -599356.26 5678263.49 98.75 -599356.38 5676724.58 101.25 -599356.68 5680277.68 97.50 -599356.69 5682703.17 96.25 -599356.85 5682823.16 96.25 -599356.86 5681646.20 96.25 -599357.09 5682339.12 96.25 -599357.14 5680832.77 96.25 -599357.15 5681566.54 96.25 -599357.22 5681334.88 97.50 -599357.27 5678627.47 98.75 -599357.48 5686994.89 95.00 -599357.62 5682179.15 96.25 -599357.62 5677086.73 100.00 -599357.65 5680696.41 96.25 -599357.67 5680256.60 98.75 -599357.69 5682691.78 96.25 -599357.80 5682781.04 96.25 -599357.84 5677344.19 100.00 -599357.97 5681363.63 97.50 -599357.99 5682140.12 96.25 -599358.23 5687004.84 95.00 -599358.27 5678219.44 100.00 -599358.30 5680227.35 98.75 -599358.55 5680658.68 96.00 -599358.58 5682447.59 96.25 -599358.61 5682884.40 96.25 -599358.62 5677883.71 101.25 -599358.74 5678398.86 98.75 -599358.75 5680851.00 96.25 -599358.85 5681654.96 96.00 -599358.86 5686656.23 95.00 -599359.04 5680246.74 98.75 -599359.17 5681344.40 97.50 -599359.18 5682870.03 96.25 -599359.29 5680630.82 96.25 -599359.53 5677372.41 100.00 -599359.55 5682813.74 96.25 -599359.60 5678099.66 105.25 -599359.62 5682640.03 96.25 -599359.72 5686194.58 95.00 -599359.73 5679556.20 98.75 -599359.95 5680076.26 97.50 -599360.06 5678128.60 101.25 -599360.10 5687014.61 95.00 -599360.26 5680236.84 98.75 -599360.28 5686986.23 95.00 -599360.29 5681354.09 97.50 -599360.45 5681575.72 96.00 -599360.49 5677096.10 100.00 -599360.60 5682914.58 96.25 -599360.91 5682428.08 96.25 -599361.07 5677472.39 100.00 -599361.11 5677926.39 105.00 -599361.19 5682169.84 96.25 -599361.20 5677815.18 100.00 -599361.29 5682772.08 96.25 -599361.31 5678726.24 98.75 -599361.38 5678089.75 105.00 -599361.46 5687074.27 95.00 -599361.48 5680268.99 97.50 -599361.62 5687024.43 95.00 -599361.77 5682888.27 96.00 -599361.77 5678193.23 100.00 -599361.92 5682924.37 95.00 -599362.15 5687359.97 95.00 -599362.38 5680687.81 96.25 -599362.39 5687064.33 95.00 -599362.41 5687034.39 95.00 -599362.45 5682615.85 96.25 -599362.50 5682891.90 96.25 -599362.51 5677934.13 105.00 -599362.62 5687054.34 95.00 -599362.64 5687083.86 95.00 -599362.76 5679728.74 98.75 -599362.84 5687044.36 95.00 -599362.85 5677335.59 100.00 -599362.94 5678106.64 105.00 -599362.95 5681664.07 96.25 -599362.96 5686483.60 95.00 -599362.98 5682131.48 96.25 -599363.10 5677129.71 99.50 -599363.15 5682861.05 96.25 -599363.24 5677874.88 101.25 -599363.47 5677149.67 100.00 -599363.51 5682467.89 96.25 -599363.60 5682790.81 96.25 -599363.62 5677981.27 102.50 -599363.76 5682684.52 96.25 -599363.77 5682347.68 96.25 -599363.81 5678156.74 100.00 -599363.85 5686203.68 95.00 -599363.87 5682804.99 96.25 -599364.03 5679547.21 98.75 -599364.09 5682697.41 96.25 -599364.20 5680622.12 96.25 -599364.21 5682631.31 96.25 -599364.36 5682332.64 96.25 -599364.68 5680259.73 97.50 -599364.83 5681587.67 96.25 -599364.86 5682763.15 96.25 -599364.95 5682160.60 96.25 -599364.96 5676729.67 101.25 -599365.10 5686710.62 95.00 -599365.34 5681642.81 96.25 -599365.46 5682476.56 96.25 -599365.58 5677104.45 100.00 -599365.58 5677380.30 100.00 -599365.77 5680837.36 96.25 -599365.94 5678261.09 98.75 -599366.05 5682878.05 96.25 -599366.11 5678834.42 98.75 -599366.38 5678392.48 98.75 -599366.52 5681569.61 96.25 -599366.54 5680249.98 97.50 -599366.61 5687093.02 95.00 -599367.02 5678629.61 98.75 -599367.13 5682852.07 96.25 -599367.23 5682907.17 96.25 -599367.25 5677865.75 101.25 -599367.44 5686651.40 95.00 -599367.58 5678221.24 100.00 -599367.60 5682621.99 96.25 -599367.62 5682443.94 96.25 -599367.74 5682685.71 96.00 -599367.74 5680854.93 96.25 -599367.89 5686589.26 95.00 -599368.20 5682881.31 96.00 -599368.25 5680240.21 97.50 -599368.26 5682123.02 96.25 -599368.26 5686980.22 95.00 -599368.34 5686491.97 95.00 -599368.46 5682782.51 96.25 -599368.63 5682754.30 96.25 -599368.65 5680680.03 96.25 -599368.72 5679538.42 98.75 -599368.83 5686579.47 95.00 -599369.09 5682151.63 96.25 -599369.11 5680613.41 96.25 -599369.33 5682768.14 96.00 -599369.33 5678124.95 101.25 -599369.61 5677328.24 100.00 -599369.65 5682885.22 96.25 -599369.68 5680076.35 97.50 -599369.91 5677938.62 105.00 -599370.01 5682677.41 96.25 -599370.01 5677923.08 105.00 -599370.07 5682842.72 96.25 -599370.16 5680230.47 97.50 -599370.23 5677135.15 99.50 -599370.30 5686598.96 95.00 -599370.34 5682690.29 96.25 -599370.37 5677468.73 100.00 -599370.38 5678090.11 105.00 -599370.63 5682428.84 96.25 -599370.65 5678722.85 98.75 -599370.67 5677812.09 100.00 -599370.70 5686569.66 95.00 -599370.94 5678191.12 100.00 -599371.01 5678102.51 105.00 -599371.05 5682798.96 96.25 -599371.49 5686209.52 95.00 -599371.52 5681661.64 96.25 -599371.52 5682921.84 95.00 -599371.80 5687357.91 95.00 -599371.94 5677112.02 100.00 -599372.05 5682342.55 96.25 -599372.06 5677387.91 100.00 -599372.17 5677977.18 102.50 -599372.17 5677977.18 105.00 -599372.33 5682773.73 96.25 -599372.43 5680220.81 97.50 -599372.49 5679730.80 98.75 -599372.52 5686559.84 95.00 -599372.54 5687100.95 95.00 -599372.77 5686500.92 95.00 -599372.78 5682833.28 96.25 -599372.86 5680767.00 97.50 -599372.90 5682328.00 96.25 -599373.06 5680211.07 97.50 -599373.10 5682470.59 96.25 -599373.17 5682759.46 96.00 -599373.19 5680604.31 96.25 -599373.21 5676735.29 101.25 -599373.23 5677151.15 100.00 -599373.31 5681584.85 96.25 -599373.49 5680671.29 96.25 -599373.50 5682871.69 96.25 -599373.50 5682746.01 96.25 -599373.59 5681575.73 96.25 -599373.60 5682114.59 96.25 -599373.62 5686643.54 95.00 -599373.68 5678155.39 100.00 -599373.73 5680757.32 97.50 -599373.74 5677858.19 101.25 -599373.86 5682899.74 96.25 -599373.86 5679530.02 98.75 -599374.19 5686714.72 95.00 -599374.32 5680776.71 97.50 -599374.35 5681642.22 96.25 -599374.37 5686550.02 95.00 -599374.45 5678386.62 98.75 -599374.51 5682874.24 96.00 -599374.89 5678206.11 100.25 -599375.13 5682476.37 96.25 -599375.14 5680840.29 96.25 -599375.37 5686607.49 95.00 -599375.43 5682823.83 96.25 -599375.60 5686510.50 95.00 -599375.64 5682144.11 96.25 -599375.69 5678259.07 98.75 -599375.90 5677945.26 105.00 -599375.92 5682764.81 96.25 -599376.02 5678833.76 98.75 -599376.17 5680747.77 97.50 -599376.21 5678095.69 105.00 -599376.23 5680201.97 97.50 -599376.23 5682814.04 96.25 -599376.38 5677320.88 100.00 -599376.44 5682670.48 96.25 -599376.55 5686520.40 95.00 -599376.56 5686540.27 95.00 -599376.62 5680786.29 97.50 -599376.66 5682440.30 96.25 -599376.75 5680858.85 96.25 -599376.80 5682804.30 96.25 -599376.80 5682878.54 96.25 -599376.81 5678631.54 98.75 -599376.93 5678220.53 100.00 -599377.01 5682750.78 96.00 -599377.06 5686530.38 95.00 -599377.08 5680595.11 96.25 -599377.15 5682683.74 96.25 -599377.26 5686980.07 95.00 -599377.47 5677969.98 105.00 -599377.97 5678120.11 101.25 -599378.22 5680662.50 96.25 -599378.30 5681655.58 96.25 -599378.37 5682737.72 96.25 -599378.53 5677119.41 100.00 -599378.65 5677395.42 100.00 -599378.79 5677463.40 100.00 -599378.89 5686635.16 95.00 -599378.93 5682106.16 96.25 -599379.11 5687108.49 95.00 -599379.28 5677920.80 105.00 -599379.40 5680077.26 97.50 -599379.62 5687351.69 95.00 -599379.74 5682755.99 96.25 -599379.75 5682425.39 96.25 -599379.83 5677952.90 105.00 -599379.94 5677982.79 105.00 -599379.99 5678719.46 98.75 -599380.04 5682864.44 96.25 -599380.07 5682891.96 96.25 -599380.14 5677809.00 100.00 -599380.25 5686214.32 95.00 -599380.25 5682337.29 96.25 -599380.28 5686616.18 95.00 -599380.39 5680193.14 97.50 -599380.42 5678191.36 100.00 -599380.48 5677961.67 105.00 -599380.48 5677851.02 101.25 -599380.72 5680739.03 97.50 -599380.86 5678379.06 98.75 -599380.91 5682742.13 96.00 -599381.08 5681647.65 96.25 -599381.30 5682867.64 96.00 -599381.38 5680586.09 96.25 -599381.46 5676740.91 101.25 -599381.48 5682136.02 96.25 -599381.55 5682323.51 96.25 -599381.83 5686625.75 95.00 -599381.84 5682728.78 96.25 -599381.95 5679524.20 98.75 -599381.99 5680653.25 96.25 -599382.05 5679733.59 98.75 -599382.53 5677313.06 100.00 -599382.77 5680793.84 97.50 -599382.85 5686719.71 95.00 -599383.04 5677150.78 100.00 -599383.28 5682676.91 96.25 -599383.35 5686987.99 95.00 -599383.55 5678154.05 100.00 -599384.00 5682871.91 96.25 -599384.28 5680843.86 96.25 -599384.41 5677127.37 100.00 -599384.59 5680184.32 97.50 -599384.59 5682747.69 96.25 -599384.80 5677199.81 100.00 -599384.86 5682667.69 96.25 -599384.86 5682733.50 96.00 -599384.94 5682719.68 96.25 -599385.09 5677403.05 100.00 -599385.13 5678449.71 100.00 -599385.27 5678459.42 100.00 -599385.28 5680730.31 97.50 -599385.64 5678258.34 98.75 -599385.70 5687115.99 95.00 -599385.70 5682436.63 96.25 -599385.78 5678440.00 100.00 -599385.90 5680862.21 96.25 -599385.91 5678832.83 98.75 -599385.97 5678469.12 100.00 -599386.02 5680853.19 96.00 -599386.03 5677209.67 100.00 -599386.08 5678114.31 101.25 -599386.29 5678219.06 100.00 -599386.33 5677189.96 100.00 -599386.37 5682884.26 96.25 -599386.39 5682857.00 96.25 -599386.42 5678430.29 100.00 -599386.47 5677457.17 100.00 -599386.67 5678478.83 100.00 -599386.68 5678633.00 98.75 -599386.74 5680644.46 96.25 -599386.75 5682099.96 96.25 -599386.88 5678371.10 98.75 -599386.96 5682127.69 96.25 -599387.44 5687345.47 95.00 -599387.83 5678420.77 100.00 -599388.01 5680754.04 97.80 -599388.02 5677304.71 100.00 -599388.12 5682861.08 96.00 -599388.16 5680578.96 96.25 -599388.43 5682331.99 96.25 -599388.59 5682738.98 96.25 -599388.64 5682710.81 96.25 -599388.82 5677986.47 105.00 -599388.84 5677219.21 100.00 -599388.85 5677921.74 105.00 -599389.03 5682422.52 96.25 -599389.09 5680078.45 97.50 -599389.32 5678716.07 98.75 -599389.36 5686727.06 95.00 -599389.61 5680606.91 96.00 -599389.64 5677806.03 100.00 -599389.85 5686217.04 95.00 -599389.89 5678191.60 100.00 -599389.90 5686995.53 95.00 -599389.91 5676746.22 101.25 -599390.04 5679518.38 98.75 -599390.09 5677848.35 101.25 -599390.14 5680721.74 97.50 -599390.18 5682319.00 96.25 -599390.18 5678487.66 100.00 -599390.29 5677135.34 100.00 -599390.36 5677144.85 100.00 -599390.43 5682864.59 96.25 -599390.82 5680177.15 97.50 -599391.14 5678071.05 101.25 -599391.21 5682118.70 96.25 -599391.22 5677410.94 100.00 -599391.32 5677181.57 100.00 -599391.48 5680635.67 96.25 -599391.60 5678411.79 100.00 -599391.62 5679736.39 98.75 -599391.90 5678061.74 101.25 -599391.90 5680795.62 97.50 -599392.01 5682729.99 96.25 -599392.04 5677448.94 100.00 -599392.43 5677228.53 100.00 -599392.89 5678363.13 98.75 -599392.90 5682876.74 96.25 -599393.03 5687122.78 95.00 -599393.20 5682849.97 96.25 -599393.37 5678152.41 100.00 -599393.50 5677296.35 100.00 -599393.54 5687337.65 95.00 -599393.54 5680847.12 96.25 -599393.71 5678080.69 101.25 -599393.73 5682702.75 96.25 -599394.11 5678108.41 101.25 -599394.30 5682853.89 96.00 -599394.57 5682093.77 96.25 -599394.68 5686735.51 95.00 -599394.76 5677420.20 100.00 -599394.99 5681481.34 97.50 -599395.09 5678496.06 100.00 -599395.10 5682434.85 96.25 -599395.10 5682109.52 96.25 -599395.31 5677238.08 100.00 -599395.36 5678402.82 100.00 -599395.39 5678216.41 100.00 -599395.42 5680599.55 96.00 -599395.57 5678257.86 98.75 -599395.62 5677948.33 105.50 -599395.65 5682721.09 96.25 -599395.68 5680713.67 97.50 -599395.71 5680572.41 96.25 -599395.71 5680862.66 96.25 -599395.80 5678831.89 98.75 -599396.17 5678052.74 101.25 -599396.19 5678090.34 101.25 -599396.21 5677429.99 100.00 -599396.32 5687003.18 95.00 -599396.35 5677439.93 100.00 -599396.40 5682856.84 96.25 -599396.52 5678633.93 98.75 -599396.68 5682326.84 96.25 -599396.75 5680627.20 96.25 -599397.38 5677287.32 100.00 -599397.79 5677247.76 100.00 -599398.07 5678099.68 101.25 -599398.12 5678196.29 100.00 -599398.22 5677985.12 105.00 -599398.31 5677923.33 105.00 -599398.36 5676751.54 101.25 -599398.40 5679513.01 98.75 -599398.54 5680171.16 97.50 -599398.57 5681489.81 97.50 -599398.60 5682421.15 96.25 -599398.61 5686744.57 95.00 -599398.66 5678712.69 98.75 -599398.71 5680080.02 97.50 -599398.79 5682314.44 96.25 -599398.90 5678355.17 98.75 -599398.96 5687329.28 95.00 -599398.97 5677277.48 100.00 -599399.12 5678393.85 100.00 -599399.17 5677803.13 100.00 -599399.31 5682100.47 96.25 -599399.43 5682869.23 96.25 -599399.44 5677257.60 100.00 -599399.48 5686219.68 95.00 -599399.65 5682712.35 96.25 -599399.76 5677267.52 100.00 -599399.79 5677846.12 101.25 -599399.92 5682842.87 96.25 -599400.00 5678504.46 100.00 -599400.32 5677178.27 100.00 -599400.36 5687129.57 95.00 -599400.36 5680791.16 97.50 -599400.48 5682846.70 96.00 -599400.99 5686754.27 95.00 -599401.19 5679739.18 98.75 -599401.23 5680592.19 96.00 -599401.57 5682703.50 96.25 -599402.36 5680981.92 96.25 -599402.46 5687011.07 95.00 -599402.60 5682849.27 96.25 -599402.68 5680619.16 96.25 -599402.97 5678211.20 100.00 -599402.99 5680707.57 97.50 -599402.99 5678384.93 100.00 -599403.08 5680849.45 96.25 -599403.18 5678150.72 100.00 -599403.23 5680565.84 96.25 -599403.27 5678045.98 101.25 -599403.33 5687320.30 95.00 -599403.50 5682092.03 96.25 -599404.03 5681481.67 97.50 -599404.32 5680782.36 97.50 -599404.44 5678203.07 100.00 -599404.81 5682435.31 96.25 -599404.91 5678512.86 100.00 -599405.32 5678259.99 98.75 -599405.42 5681988.45 96.25 -599405.45 5680862.23 96.25 -599405.50 5682322.71 96.25 -599405.60 5686763.08 95.00 -599405.69 5678830.96 98.75 -599405.74 5680164.61 97.50 -599406.07 5682384.32 96.25 -599406.17 5680772.72 97.50 -599406.21 5678631.54 98.75 -599406.29 5682835.44 96.25 -599406.31 5687137.59 95.00 -599406.33 5682862.07 96.25 -599406.43 5677980.23 105.00 -599406.66 5682839.52 96.00 -599406.78 5676756.90 101.25 -599406.81 5681997.37 96.25 -599407.00 5678349.86 98.75 -599407.32 5679508.55 98.75 -599407.43 5682309.96 96.25 -599407.54 5680762.97 97.50 -599407.64 5677925.63 105.00 -599407.68 5680585.40 96.00 -599407.81 5678376.48 100.00 -599407.85 5682553.99 96.25 -599408.09 5680082.70 97.50 -599408.27 5682422.44 96.25 -599408.43 5678711.30 98.75 -599408.48 5682392.04 96.25 -599408.70 5677800.23 100.00 -599408.72 5680753.19 97.50 -599408.86 5687018.70 95.00 -599408.94 5682841.82 96.25 -599408.95 5680611.39 96.25 -599409.23 5686221.86 95.00 -599409.60 5677181.47 100.00 -599409.64 5677844.54 101.25 -599409.75 5681474.74 97.50 -599409.79 5687312.98 95.00 -599409.82 5678521.26 100.00 -599409.83 5680975.72 96.25 -599409.84 5680743.40 97.50 -599410.48 5687214.08 95.00 -599410.65 5680559.14 96.25 -599410.67 5687224.07 95.00 -599410.70 5686771.68 95.00 -599410.76 5679741.97 98.75 -599410.91 5687204.12 95.00 -599410.92 5681445.25 97.50 -599410.92 5681455.11 97.50 -599410.92 5681464.96 97.50 -599411.30 5678040.08 101.25 -599411.66 5681435.44 97.50 -599411.74 5687194.16 95.00 -599412.24 5687145.63 95.00 -599412.33 5680852.47 96.25 -599412.39 5686324.25 95.00 -599412.43 5680708.15 97.50 -599412.44 5680157.51 97.50 -599412.53 5680734.00 97.50 -599412.63 5678368.02 100.00 -599412.65 5682828.01 96.25 -599412.66 5681425.64 97.50 -599412.87 5678148.43 100.00 -599412.92 5677973.18 105.00 -599412.96 5686334.22 95.00 -599413.25 5686314.31 95.00 -599413.32 5682854.98 96.25 -599413.42 5687233.67 95.00 -599413.58 5681984.57 96.25 -599413.61 5687184.38 95.00 -599413.65 5681415.84 97.50 -599413.92 5682546.24 96.25 -599414.17 5680578.63 96.00 -599414.30 5678264.03 98.75 -599414.31 5682380.24 96.25 -599414.33 5682318.58 96.25 -599414.35 5682435.59 96.25 -599414.62 5686304.42 95.00 -599414.63 5680859.05 96.25 -599414.72 5682003.21 96.25 -599415.13 5676762.38 101.25 -599415.22 5682834.33 96.25 -599415.29 5681406.14 97.50 -599415.35 5678529.22 100.00 -599415.49 5687154.85 95.00 -599415.50 5680603.85 96.25 -599415.53 5678829.66 98.75 -599415.68 5682428.66 96.25 -599415.90 5678629.15 98.75 -599416.03 5687174.68 95.00 -599416.03 5682555.42 96.25 -599416.04 5686780.11 95.00 -599416.13 5682759.58 96.25 -599416.15 5687025.53 95.00 -599416.16 5678345.90 98.75 -599416.26 5679504.15 98.75 -599416.41 5687164.76 95.00 -599416.54 5682306.50 96.25 -599416.60 5680725.03 97.50 -599416.66 5686294.64 95.00 -599416.86 5682819.20 96.25 -599416.96 5680086.71 97.50 -599416.99 5686342.90 95.00 -599417.01 5680969.27 96.25 -599417.23 5677926.37 105.00 -599417.30 5682749.95 96.25 -599417.33 5682394.78 96.25 -599417.46 5681396.53 97.50 -599417.51 5681995.64 96.00 -599417.69 5687306.87 95.00 -599417.85 5680715.79 97.50 -599417.92 5677186.99 100.00 -599418.06 5680552.44 96.25 -599418.17 5680149.70 97.50 -599418.18 5678360.32 100.00 -599418.22 5677797.33 100.00 -599418.33 5678710.50 98.75 -599418.42 5682768.64 96.25 -599418.46 5677965.38 105.00 -599418.59 5682740.33 96.25 -599418.88 5681143.38 97.50 -599418.94 5686224.21 95.00 -599419.01 5686284.94 95.00 -599419.36 5677842.36 101.25 -599419.49 5687240.95 95.00 -599419.63 5681386.92 97.50 -599419.68 5678034.68 101.25 -599419.90 5682730.72 96.25 -599420.31 5682847.89 96.25 -599420.32 5679744.77 98.75 -599420.67 5680571.87 96.00 -599420.86 5682539.27 96.25 -599421.04 5682826.46 96.25 -599421.22 5682721.10 96.25 -599421.81 5681377.31 97.50 -599421.87 5682810.92 96.25 -599422.03 5686275.45 95.00 -599422.03 5678536.24 100.00 -599422.05 5680596.30 96.25 -599422.22 5681989.24 96.25 -599422.32 5680961.14 96.25 -599422.37 5686787.84 95.00 -599422.53 5678146.04 100.00 -599422.58 5680141.02 97.50 -599422.83 5678269.21 98.75 -599423.13 5686350.79 95.00 -599423.21 5682314.58 96.25 -599423.22 5680093.61 97.50 -599423.66 5682378.95 96.25 -599423.69 5682659.55 96.25 -599423.72 5682007.37 96.25 -599423.73 5682711.89 96.25 -599423.75 5681151.95 97.50 -599423.84 5676767.05 101.25 -599423.84 5677957.50 105.00 -599423.89 5678495.23 100.00 -599423.98 5681367.70 97.50 -599424.16 5678504.82 100.00 -599424.32 5682650.98 96.25 -599424.42 5678514.41 100.00 -599424.66 5682550.68 96.25 -599424.95 5682770.01 96.25 -599425.14 5680131.61 97.50 -599425.23 5687029.03 95.00 -599425.26 5679499.86 98.75 -599425.32 5678341.93 98.75 -599425.35 5677193.54 100.00 -599425.37 5678828.30 98.75 -599425.48 5682388.26 96.00 -599425.59 5678626.76 98.75 -599425.64 5682303.04 96.25 -599425.96 5680546.34 96.25 -599426.02 5686266.29 95.00 -599426.16 5681358.10 97.50 -599426.20 5687301.64 95.00 -599426.49 5680102.72 97.50 -599426.70 5682395.09 96.25 -599426.72 5678355.65 100.00 -599426.77 5686229.94 95.00 -599426.83 5677926.81 105.00 -599426.85 5682818.59 96.25 -599427.02 5677792.72 100.00 -599427.12 5680122.09 97.50 -599427.30 5682840.81 96.25 -599427.41 5678028.48 101.25 -599427.58 5678487.17 100.00 -599427.60 5680112.34 97.50 -599427.63 5680953.01 96.25 -599427.85 5687246.35 95.00 -599427.98 5678523.31 100.00 -599428.00 5680588.29 96.25 -599428.23 5678709.68 98.75 -599428.23 5682532.76 96.25 -599428.28 5682760.91 96.25 -599428.45 5682803.68 96.25 -599428.51 5682703.45 96.25 -599428.61 5681160.52 97.50 -599428.92 5677839.69 101.25 -599429.04 5686256.77 95.00 -599429.25 5681996.20 96.25 -599429.67 5681348.91 97.50 -599429.74 5679748.03 98.75 -599429.76 5678766.27 99.00 -599429.82 5678542.08 100.00 -599429.99 5682642.97 96.25 -599430.08 5678532.49 100.00 -599430.35 5677950.44 105.00 -599431.15 5682005.12 96.25 -599431.20 5686355.84 95.00 -599431.22 5682751.66 96.25 -599431.24 5678274.57 98.75 -599431.34 5680578.94 96.25 -599431.40 5677201.49 100.00 -599431.50 5686791.87 95.00 -599431.61 5678141.94 100.00 -599431.80 5682660.34 96.25 -599431.90 5682712.13 95.00 -599432.15 5682310.71 96.25 -599432.16 5682703.80 95.00 -599432.35 5686247.35 95.00 -599432.49 5686237.69 95.00 -599432.65 5682694.68 96.25 -599432.75 5678401.81 101.25 -599432.84 5682810.85 96.25 -599432.85 5682742.16 96.25 -599432.86 5681169.40 97.50 -599432.90 5682545.31 96.25 -599432.94 5680944.89 96.25 -599433.04 5682377.91 96.25 -599433.12 5678411.52 101.25 -599433.39 5681339.78 97.50 -599433.44 5676769.79 101.25 -599433.49 5679494.47 98.75 -599433.78 5682833.27 96.25 -599433.92 5677932.46 105.00 -599434.08 5680540.52 96.25 -599434.10 5678392.11 101.25 -599434.26 5682298.51 96.25 -599434.33 5677941.69 105.00 -599434.34 5678021.32 101.25 -599434.43 5678421.24 101.25 -599434.48 5678337.97 98.75 -599434.55 5687027.49 95.00 -599434.74 5678480.88 100.00 -599434.81 5677298.13 100.00 -599434.93 5682732.83 96.25 -599435.13 5687297.17 95.00 -599435.20 5678826.89 98.75 -599435.28 5678351.02 100.00 -599435.38 5678624.82 98.75 -599435.45 5678382.40 101.25 -599435.47 5677307.97 100.00 -599435.47 5682526.13 96.25 -599435.70 5677288.18 100.00 -599435.70 5677787.85 100.00 -599435.73 5678430.95 101.25 -599435.98 5682394.01 96.25 -599436.08 5681178.55 97.50 -599436.13 5682797.84 96.25 -599436.36 5682635.47 96.25 -599436.37 5681188.40 97.50 -599436.48 5677210.07 100.00 -599436.67 5681198.24 97.50 -599436.75 5682685.88 96.25 -599436.75 5677278.25 100.00 -599436.94 5687250.49 95.00 -599436.96 5680570.68 96.25 -599437.10 5681330.66 97.50 -599437.15 5682695.58 95.00 -599437.21 5681208.08 97.50 -599437.51 5677834.63 101.25 -599437.92 5682640.62 96.00 -599437.93 5680936.58 96.25 -599437.97 5681217.90 97.50 -599438.01 5677317.62 100.00 -599438.13 5678708.85 98.75 -599438.32 5678546.09 100.00 -599438.51 5682653.37 96.25 -599438.57 5677268.43 100.00 -599438.81 5682723.94 96.25 -599438.88 5682803.15 96.25 -599438.89 5678440.07 101.25 -599439.10 5679751.44 98.75 -599439.46 5678280.21 98.75 -599439.72 5686797.52 95.00 -599439.79 5681227.58 97.50 -599440.05 5682825.54 96.25 -599440.31 5677219.23 100.00 -599440.51 5682699.95 94.75 -599440.54 5678013.51 101.25 -599440.55 5678137.58 100.00 -599440.57 5677258.65 100.00 -599440.64 5679487.53 98.75 -599440.77 5686358.71 95.00 -599440.81 5682710.40 95.00 -599441.02 5681321.63 97.50 -599441.09 5682539.85 96.25 -599441.29 5682307.35 96.25 -599441.85 5678375.49 101.25 -599442.04 5682518.79 96.25 -599442.12 5680534.60 96.25 -599442.19 5677326.70 100.00 -599442.19 5680927.86 96.25 -599442.23 5677248.80 100.00 -599442.43 5687022.02 95.00 -599442.48 5682377.91 96.25 -599442.67 5682627.91 96.25 -599442.70 5677228.89 100.00 -599442.77 5687291.03 95.00 -599442.88 5678475.81 100.00 -599442.98 5682294.20 96.25 -599443.04 5680562.75 96.25 -599443.05 5677238.88 100.00 -599443.22 5686983.57 95.00 -599443.40 5676769.48 101.25 -599443.48 5678448.73 101.25 -599443.48 5686973.83 95.00 -599443.63 5678334.00 98.75 -599443.74 5682688.86 95.00 -599443.87 5677782.24 100.00 -599444.00 5678346.71 100.00 -599444.14 5682645.31 96.25 -599444.29 5682679.82 96.25 -599444.31 5679992.85 97.50 -599444.35 5687257.12 95.00 -599444.55 5682390.04 96.25 -599444.56 5682716.12 96.25 -599444.60 5678824.02 98.75 -599445.18 5678622.98 98.75 -599445.36 5681312.78 97.50 -599445.48 5686993.28 95.00 -599446.01 5677829.46 101.25 -599446.32 5682817.81 96.25 -599446.62 5687003.11 95.00 -599446.73 5678005.70 101.25 -599446.74 5687013.10 95.00 -599446.93 5680919.41 96.25 -599447.10 5678546.09 100.00 -599447.10 5682703.14 95.00 -599447.12 5686804.07 95.00 -599447.42 5677335.16 100.00 -599447.99 5681229.14 97.50 -599448.02 5678708.03 98.75 -599448.09 5679480.91 98.75 -599448.46 5678284.43 98.75 -599448.47 5679754.84 98.75 -599448.82 5687283.20 95.00 -599448.89 5682511.76 96.25 -599448.92 5682620.32 96.25 -599449.07 5682534.09 96.25 -599449.12 5678456.68 101.25 -599449.17 5678132.58 100.00 -599449.29 5686966.86 95.00 -599449.37 5678369.21 101.25 -599449.47 5682637.03 96.25 -599449.67 5681303.93 97.50 -599449.85 5680555.49 96.25 -599450.07 5680528.54 96.25 -599450.31 5682708.31 96.25 -599450.36 5686357.14 95.00 -599450.76 5682305.84 96.25 -599450.98 5687264.39 95.00 -599451.32 5677775.64 100.00 -599451.68 5682809.42 96.25 -599451.76 5678472.99 100.00 -599451.78 5682673.65 96.25 -599451.81 5682376.69 96.25 -599451.99 5682695.14 95.00 -599452.00 5682290.54 96.25 -599452.28 5682685.70 95.00 -599452.32 5687273.84 95.00 -599452.47 5686812.43 95.00 -599452.47 5678329.37 98.75 -599452.47 5678341.95 100.00 -599452.54 5680911.49 96.25 -599452.89 5676766.83 101.25 -599453.03 5679988.06 97.50 -599453.24 5677343.28 100.00 -599453.26 5682386.49 96.25 -599453.30 5681294.77 97.50 -599453.30 5677822.65 101.25 -599453.62 5678819.86 98.75 -599454.22 5677999.12 101.25 -599454.49 5682612.28 96.25 -599454.99 5678621.15 98.75 -599455.54 5682517.08 96.00 -599455.73 5682629.45 96.25 -599455.74 5679474.53 98.75 -599456.06 5682700.49 96.25 -599456.08 5678543.33 100.00 -599456.19 5686821.70 95.00 -599456.33 5681227.43 97.50 -599456.49 5682505.50 96.25 -599456.68 5678462.32 101.25 -599456.87 5682528.08 96.25 -599456.93 5681285.61 97.50 -599457.01 5682801.02 96.25 -599457.37 5678363.58 101.25 -599457.55 5680549.15 96.25 -599457.62 5678127.33 100.00 -599457.68 5678705.93 98.75 -599457.69 5678288.23 98.75 -599458.15 5680903.57 96.25 -599458.18 5680522.72 96.25 -599458.32 5686962.59 95.00 -599458.38 5679754.24 98.75 -599458.78 5677769.03 100.00 -599459.32 5682296.68 96.00 -599459.61 5682668.12 96.25 -599459.96 5686354.38 95.00 -599459.98 5677815.30 101.25 -599460.46 5682305.39 96.25 -599460.69 5678336.74 100.00 -599460.90 5682374.27 96.25 -599460.93 5676761.05 101.25 -599461.04 5682286.91 96.25 -599461.31 5678324.73 98.75 -599461.33 5678472.38 100.00 -599461.70 5682692.60 96.25 -599461.90 5679983.58 97.50 -599461.95 5681277.19 97.50 -599461.98 5686829.82 95.00 -599462.00 5682621.86 96.25 -599462.05 5682605.98 96.25 -599462.42 5682384.20 96.25 -599462.62 5677345.90 100.00 -599462.64 5678815.69 98.75 -599462.89 5678537.19 100.00 -599462.97 5682793.08 96.25 -599463.09 5677994.89 101.25 -599463.26 5682512.23 96.00 -599463.36 5679468.11 98.75 -599463.38 5681233.78 97.50 -599464.41 5680896.15 96.25 -599464.67 5682500.13 96.25 -599464.73 5682522.16 96.25 -599464.80 5678619.32 98.75 -599465.64 5678358.33 101.25 -599465.76 5679512.28 99.20 -599465.82 5680543.54 96.25 -599465.86 5678121.73 100.00 -599465.99 5677807.34 101.25 -599466.00 5678465.35 101.25 -599466.37 5678292.84 98.75 -599466.38 5676752.82 101.25 -599466.66 5677762.95 100.00 -599466.83 5680517.72 96.25 -599467.07 5681268.79 97.50 -599467.17 5678703.00 98.75 -599467.21 5686958.04 95.00 -599467.25 5682684.64 96.25 -599467.40 5676693.45 101.25 -599468.14 5678330.59 100.00 -599468.17 5679752.64 98.75 -599468.30 5686837.52 95.00 -599468.35 5676743.12 101.25 -599468.54 5676703.36 101.25 -599468.56 5682614.53 96.25 -599468.56 5682666.68 96.25 -599468.60 5678318.18 98.75 -599469.09 5678530.13 100.00 -599469.20 5686350.60 95.00 -599469.30 5681241.66 97.50 -599469.53 5682785.59 96.25 -599469.53 5676733.22 101.25 -599469.68 5676713.28 101.25 -599469.80 5676723.24 101.25 -599469.82 5682303.03 96.25 -599470.01 5682372.16 96.25 -599470.18 5682284.24 96.25 -599470.54 5679461.20 98.75 -599470.67 5682675.66 96.25 -599470.81 5678473.87 100.00 -599470.83 5680888.90 96.25 -599470.89 5679979.32 97.50 -599470.92 5676684.11 101.25 -599470.99 5682507.39 96.00 -599471.37 5682605.80 96.25 -599471.43 5682381.44 96.25 -599471.48 5681259.98 97.50 -599471.66 5678811.53 98.75 -599472.07 5677799.44 101.25 -599472.50 5677991.60 101.25 -599472.60 5677345.39 100.00 -599472.64 5681250.40 97.50 -599472.84 5678351.70 101.25 -599473.18 5682517.11 96.25 -599473.29 5678309.90 98.75 -599473.32 5678299.99 98.75 -599473.44 5682495.66 96.25 -599473.60 5680537.35 96.25 -599474.16 5678116.24 100.00 -599474.46 5678616.81 98.75 -599474.55 5677756.87 100.00 -599475.38 5686952.88 95.00 -599475.50 5678467.76 101.25 -599475.55 5686844.39 95.00 -599475.59 5678324.44 100.00 -599475.70 5678523.47 100.00 -599475.91 5680513.73 96.25 -599476.08 5682778.10 96.25 -599476.57 5676676.26 101.25 -599476.66 5678700.08 98.75 -599476.71 5686942.98 95.00 -599476.91 5682376.20 96.25 -599477.49 5677956.07 105.00 -599477.68 5677946.89 105.00 -599477.71 5679749.78 98.75 -599477.72 5679454.29 98.75 -599477.74 5682297.69 96.25 -599478.04 5686933.07 95.00 -599478.34 5686346.58 95.00 -599478.37 5680882.78 96.25 -599478.42 5677791.76 101.25 -599478.43 5686853.20 95.00 -599478.49 5686923.10 95.00 -599478.50 5682288.38 96.25 -599478.65 5686863.18 95.00 -599478.72 5682502.54 96.00 -599478.88 5686873.17 95.00 -599478.89 5686913.11 95.00 -599479.11 5686883.16 95.00 -599479.29 5686903.13 95.00 -599479.33 5686893.15 95.00 -599479.55 5678344.64 101.25 -599479.66 5679974.62 97.50 -599479.90 5678476.91 100.00 -599479.98 5678806.12 98.75 -599480.68 5680530.29 96.25 -599481.48 5677938.35 105.00 -599481.55 5677341.50 100.00 -599481.63 5682512.07 96.25 -599481.93 5677988.36 101.25 -599482.22 5682491.20 96.25 -599482.44 5677750.79 100.00 -599482.48 5678110.76 100.00 -599482.78 5678517.29 100.00 -599482.91 5677961.36 105.00 -599483.05 5678318.28 100.00 -599483.43 5682771.39 96.25 -599484.10 5678614.22 98.75 -599484.36 5678336.10 101.25 -599484.78 5677784.08 101.25 -599484.90 5679447.38 98.75 -599485.03 5678470.03 101.25 -599485.28 5677929.81 105.00 -599485.42 5676673.32 101.25 -599485.49 5680510.88 96.25 -599485.79 5679744.24 98.75 -599486.02 5678696.78 98.75 -599486.38 5680877.39 96.25 -599486.98 5682498.69 96.00 -599487.00 5678483.10 100.00 -599487.30 5678799.61 98.75 -599487.88 5680523.37 96.25 -599488.03 5682704.02 96.25 -599488.13 5686344.86 95.00 -599488.37 5679969.83 97.50 -599490.00 5678104.37 100.00 -599490.02 5677336.21 100.00 -599490.09 5682507.02 96.25 -599490.19 5678511.62 100.00 -599490.20 5677943.02 105.25 -599490.22 5682764.22 96.25 -599490.32 5682712.70 96.25 -599490.72 5677745.28 100.00 -599491.08 5678416.97 102.00 -599491.28 5682487.34 96.25 -599491.38 5677985.19 101.25 -599491.57 5678313.75 100.00 -599491.59 5677776.87 101.25 -599491.71 5682694.87 96.25 -599491.99 5678331.17 101.25 -599492.08 5679440.46 98.75 -599492.10 5677960.33 105.00 -599492.19 5680514.72 96.25 -599493.22 5679737.61 98.75 -599493.34 5678791.72 98.75 -599493.55 5677925.76 105.00 -599493.69 5678489.99 100.00 -599493.73 5678611.62 98.75 -599494.64 5678471.96 101.25 -599495.06 5680873.05 96.25 -599495.27 5682494.88 96.00 -599495.31 5678693.26 98.75 -599495.36 5676673.87 101.25 -599495.54 5682755.81 96.25 -599495.85 5682336.41 96.25 -599496.65 5678096.95 100.00 -599496.70 5682686.28 96.25 -599497.61 5682008.06 96.25 -599497.77 5679966.58 97.50 -599498.03 5686345.48 95.00 -599498.13 5677330.39 100.00 -599498.41 5677953.80 105.00 -599498.70 5678507.61 100.00 -599499.04 5682502.94 96.25 -599499.09 5677739.87 100.00 -599499.29 5682712.99 96.25 -599499.51 5677770.82 101.25 -599499.82 5678326.62 101.25 -599499.88 5678784.33 98.75 -599500.02 5679730.33 98.75 -599500.14 5678309.28 100.00 -599500.32 5679435.00 98.75 -599500.33 5682483.49 96.25 -599500.44 5678496.80 100.00 -599500.48 5678049.01 100.00 -599500.83 5682343.83 96.25 -599500.85 5677982.08 101.25 -599500.87 5682747.40 96.25 -599500.96 5678088.44 100.00 -599501.00 5682066.79 96.25 -599501.63 5682677.65 96.25 -599501.80 5678039.98 100.00 -599502.19 5677928.67 105.00 -599502.41 5678078.58 100.00 -599502.68 5678058.73 100.00 -599502.90 5678068.66 100.00 -599503.02 5682620.49 96.25 -599503.04 5682013.66 96.25 -599503.26 5677321.84 100.00 -599503.26 5682630.40 96.25 -599503.29 5678608.78 98.75 -599503.48 5682610.56 96.25 -599503.55 5682491.07 96.00 -599503.60 5677946.04 105.00 -599503.66 5682334.29 96.25 -599503.74 5680868.71 96.25 -599504.04 5682640.31 96.25 -599504.30 5678473.61 101.25 -599504.60 5678689.74 98.75 -599504.75 5682704.79 96.25 -599504.82 5682058.54 96.25 -599505.02 5676676.37 101.25 -599505.03 5677936.91 105.00 -599505.13 5682001.69 96.25 -599505.78 5682738.74 96.25 -599506.53 5682669.01 96.25 -599506.81 5682649.85 96.25 -599506.83 5679723.05 98.75 -599506.93 5686349.61 95.00 -599507.20 5678503.61 100.00 -599507.21 5682351.00 96.25 -599507.37 5679964.08 97.50 -599507.43 5677764.76 101.25 -599507.45 5678031.78 100.00 -599507.45 5677734.47 100.00 -599507.60 5682601.88 96.25 -599507.77 5678778.31 98.75 -599508.01 5682498.88 96.25 -599508.30 5678323.36 101.25 -599508.38 5677313.26 100.00 -599508.40 5682659.56 96.25 -599508.45 5680607.07 96.25 -599508.67 5678304.73 100.00 -599509.01 5679430.16 98.75 -599509.16 5682479.12 96.25 -599509.19 5682066.97 96.25 -599509.77 5677977.71 101.25 -599510.69 5682730.08 96.25 -599511.24 5678186.04 98.75 -599511.34 5682697.35 96.25 -599511.68 5682051.93 96.25 -599511.78 5679714.57 98.75 -599511.84 5682487.27 96.00 -599512.16 5682102.28 96.25 -599512.36 5682011.44 96.25 -599512.67 5678605.37 98.75 -599512.76 5680865.13 96.25 -599512.80 5682337.25 96.25 -599513.16 5681995.90 96.25 -599513.38 5680598.73 96.25 -599513.48 5678195.77 98.75 -599513.63 5677304.76 100.00 -599513.70 5682093.66 96.25 -599513.82 5686356.53 95.00 -599513.87 5678686.17 98.75 -599513.97 5682644.60 96.00 -599513.98 5678475.15 101.25 -599514.00 5681955.50 96.25 -599514.01 5676680.48 101.25 -599514.17 5678177.37 98.75 -599514.19 5682604.58 96.25 -599514.29 5678024.65 100.00 -599514.34 5680612.16 96.25 -599514.37 5682357.33 96.25 -599514.67 5682287.29 97.50 -599515.35 5677758.70 101.25 -599515.35 5678503.57 100.00 -599515.56 5682721.41 96.25 -599515.63 5679705.37 98.75 -599515.73 5678205.51 98.75 -599515.73 5678772.38 98.75 -599515.82 5677729.06 100.00 -599516.15 5682688.83 96.25 -599516.73 5679423.87 98.75 -599516.90 5679961.69 97.50 -599516.92 5682494.69 96.25 -599517.00 5678299.85 100.00 -599517.16 5678321.95 101.25 -599517.72 5682062.71 96.25 -599517.96 5682474.72 96.25 -599517.98 5678215.24 98.75 -599518.48 5677972.84 101.25 -599518.59 5682045.36 96.25 -599518.83 5681947.13 96.25 -599518.97 5682108.20 96.25 -599519.09 5682613.22 96.25 -599519.28 5681427.15 97.40 -599519.36 5686364.84 95.00 -599519.48 5679696.18 98.75 -599519.76 5681960.60 96.25 -599519.79 5682679.58 96.25 -599519.89 5687130.07 95.00 -599520.08 5681988.74 96.25 -599520.09 5682292.47 97.50 -599520.10 5678169.33 98.75 -599520.12 5682483.46 96.00 -599520.13 5682280.34 97.50 -599520.37 5678224.94 98.75 -599520.41 5682712.72 96.25 -599520.66 5677297.68 100.00 -599520.72 5687120.41 95.00 -599520.81 5682006.17 96.25 -599520.92 5680592.63 96.25 -599520.93 5682089.00 96.25 -599521.54 5680861.18 96.25 -599521.84 5682340.48 96.25 -599521.87 5681436.39 97.40 -599522.05 5678601.97 98.75 -599522.10 5678680.80 98.75 -599522.24 5676686.10 101.25 -599522.34 5682362.57 96.25 -599522.40 5678019.23 100.00 -599522.78 5678234.64 98.75 -599522.94 5682622.37 96.25 -599523.12 5679686.91 98.75 -599523.43 5682670.34 96.25 -599523.70 5678474.85 101.25 -599523.75 5680610.20 96.25 -599523.87 5687139.23 95.00 -599523.89 5677753.83 101.25 -599524.04 5678501.98 100.00 -599524.13 5687112.01 95.00 -599524.17 5677825.50 101.25 -599524.30 5678767.35 98.75 -599524.46 5679417.58 98.75 -599524.52 5677724.24 100.00 -599524.63 5682056.25 96.25 -599524.63 5682098.78 96.00 -599524.66 5678160.51 98.75 -599524.91 5686373.15 95.00 -599525.03 5682038.34 96.25 -599525.13 5679956.10 97.50 -599525.18 5678244.34 98.75 -599525.27 5682704.03 96.25 -599525.41 5677816.69 101.25 -599525.43 5678298.48 100.00 -599525.80 5678336.21 101.25 -599525.83 5682490.51 96.25 -599525.85 5678323.01 101.25 -599525.91 5682660.72 96.25 -599525.93 5677966.23 101.25 -599526.01 5681421.68 97.40 -599526.46 5679677.52 98.75 -599526.49 5682469.80 96.25 -599526.57 5682631.62 96.25 -599526.90 5681941.41 96.25 -599527.04 5681981.62 96.25 -599527.46 5681954.29 96.25 -599527.59 5678254.04 98.75 -599527.68 5678345.83 101.25 -599527.83 5677290.75 100.00 -599528.05 5681443.78 97.40 -599528.09 5682109.09 96.25 -599528.21 5682285.13 97.75 -599528.37 5682651.09 96.25 -599528.41 5682479.65 96.00 -599528.48 5682641.27 96.25 -599528.53 5678151.30 98.75 -599528.58 5680854.49 96.25 -599528.61 5682277.24 97.50 -599528.68 5682000.13 96.25 -599528.75 5680586.96 96.25 -599529.16 5682292.66 97.50 -599529.28 5678375.06 101.25 -599529.30 5678355.49 101.25 -599529.40 5682354.81 96.00 -599529.51 5678365.26 101.25 -599529.73 5676692.62 101.25 -599529.76 5682345.91 96.25 -599529.81 5679668.13 98.75 -599529.84 5678674.58 98.75 -599529.96 5678263.74 98.75 -599530.04 5687146.57 95.00 -599530.12 5682695.34 96.25 -599530.20 5682088.42 96.25 -599530.62 5686381.34 95.00 -599530.65 5678329.97 101.25 -599531.10 5678597.80 98.75 -599531.17 5682049.32 96.25 -599531.18 5682031.06 96.25 -599531.41 5682365.73 96.25 -599531.54 5678141.79 98.75 -599531.87 5678384.41 101.25 -599532.08 5678016.90 100.00 -599532.19 5679411.28 98.75 -599532.31 5680605.64 96.25 -599532.33 5678273.45 98.75 -599532.39 5682039.25 96.00 -599532.78 5678762.19 98.75 -599532.86 5681658.77 97.50 -599532.88 5678502.49 100.00 -599532.91 5680595.12 96.00 -599532.93 5677959.14 101.25 -599533.03 5677830.04 101.25 -599533.31 5677719.55 100.00 -599533.38 5677750.77 101.25 -599533.44 5678473.76 101.25 -599533.53 5681650.07 97.50 -599533.57 5679950.84 97.50 -599533.86 5677811.40 101.25 -599533.91 5679659.13 98.75 -599533.92 5687110.02 95.00 -599534.01 5678302.94 100.00 -599534.04 5681974.54 96.25 -599534.24 5678132.17 98.75 -599534.69 5682486.23 96.25 -599534.96 5682464.79 96.25 -599535.22 5681935.94 96.25 -599535.41 5682686.91 96.25 -599535.43 5681424.25 97.40 -599535.49 5681948.42 96.25 -599535.73 5681449.80 97.40 -599535.73 5678393.37 101.25 -599536.00 5676700.39 101.25 -599536.18 5681993.58 96.25 -599536.43 5686389.47 95.00 -599536.49 5682105.40 96.25 -599536.84 5678667.53 98.75 -599536.94 5678122.55 98.75 -599536.95 5677286.67 100.00 -599537.09 5680582.01 96.25 -599537.46 5682023.89 96.25 -599537.47 5682042.16 96.25 -599537.51 5682277.52 97.50 -599537.88 5682351.00 96.25 -599538.16 5682291.10 97.50 -599538.56 5677950.99 101.25 -599538.95 5687150.89 95.00 -599538.97 5682091.41 96.25 -599539.60 5679650.95 98.75 -599539.86 5678113.01 98.75 -599539.92 5679404.99 98.75 -599540.01 5678593.30 98.75 -599540.35 5687116.57 95.00 -599540.51 5678309.96 100.00 -599540.53 5682368.72 96.25 -599540.62 5678277.83 98.75 -599540.71 5682678.48 96.25 -599540.77 5678401.78 101.25 -599540.81 5681664.41 97.50 -599540.87 5680601.09 96.25 -599541.17 5678756.87 98.75 -599541.41 5677941.67 101.25 -599541.72 5678503.01 100.00 -599541.77 5678014.58 100.00 -599541.78 5679945.35 97.50 -599541.79 5676708.50 101.25 -599542.10 5677714.86 100.00 -599542.22 5678469.93 101.25 -599542.31 5681969.71 96.25 -599542.42 5681648.69 97.50 -599542.51 5677931.76 101.25 -599542.73 5677832.37 101.25 -599542.82 5681430.11 97.40 -599542.86 5677747.71 101.25 -599542.89 5682098.85 96.25 -599543.08 5682283.78 97.50 -599543.18 5686396.49 95.00 -599543.26 5682459.49 96.25 -599543.43 5678103.67 98.75 -599543.45 5682481.73 96.25 -599543.64 5677810.31 101.25 -599543.69 5682034.93 96.25 -599543.81 5681987.18 96.25 -599543.82 5681455.26 97.40 -599543.83 5678660.47 98.75 -599543.84 5681943.00 96.25 -599543.87 5677921.88 101.25 -599543.99 5681931.35 96.25 -599544.43 5682017.37 96.25 -599544.83 5682600.84 96.25 -599544.83 5682610.79 96.25 -599544.83 5682620.75 96.25 -599545.15 5682590.91 96.25 -599545.18 5682669.59 96.25 -599545.22 5677912.01 101.25 -599545.29 5679642.76 98.75 -599545.96 5678410.09 101.25 -599546.05 5682630.59 96.25 -599546.07 5677282.59 100.00 -599546.08 5680578.44 96.25 -599546.08 5678317.73 100.00 -599546.55 5677902.12 101.25 -599546.61 5682354.99 96.25 -599546.93 5682581.12 96.25 -599546.99 5678094.34 98.75 -599547.07 5676716.97 101.25 -599547.64 5679398.69 98.75 -599547.79 5682660.21 96.25 -599547.89 5682640.37 96.25 -599547.90 5677892.25 101.25 -599547.92 5679937.52 97.50 -599548.10 5681438.23 97.40 -599548.16 5682650.27 96.25 -599548.42 5687154.07 95.00 -599548.71 5682571.33 96.25 -599548.92 5678588.81 98.75 -599549.03 5678326.93 100.00 -599549.20 5681669.32 97.50 -599549.42 5680596.51 96.25 -599549.53 5687120.33 95.00 -599549.56 5678751.55 98.75 -599549.68 5678463.75 101.25 -599549.90 5682370.67 96.25 -599549.91 5682027.70 96.25 -599550.04 5678281.16 98.75 -599550.47 5678501.69 100.00 -599550.61 5682475.26 96.25 -599550.82 5678653.42 98.75 -599550.89 5677710.18 100.00 -599550.90 5678085.15 98.75 -599551.16 5678011.38 100.00 -599551.22 5677882.85 101.25 -599551.30 5678418.30 101.25 -599551.48 5677836.90 101.25 -599551.60 5679635.10 98.75 -599551.68 5681651.60 97.50 -599551.74 5681981.16 96.25 -599551.74 5682011.29 96.25 -599551.83 5686401.44 95.00 -599551.84 5682561.99 96.25 -599551.98 5678336.13 100.00 -599551.98 5681967.34 96.25 -599552.12 5681460.40 97.40 -599552.22 5682430.66 96.20 -599552.35 5676725.44 101.25 -599552.35 5677744.64 101.25 -599552.39 5681937.91 96.25 -599552.53 5681446.94 97.40 -599552.57 5682458.12 96.25 -599553.28 5681927.76 96.25 -599553.58 5677810.31 101.25 -599554.05 5679929.69 97.50 -599554.27 5677873.36 101.25 -599554.45 5678345.57 100.00 -599554.90 5678075.99 98.75 -599554.98 5678455.78 101.25 -599555.12 5678743.32 98.75 -599555.22 5682466.85 96.25 -599555.37 5679392.40 98.75 -599555.62 5680577.28 96.25 -599555.72 5677280.90 100.00 -599555.85 5682357.24 96.25 -599556.12 5678426.70 101.25 -599556.37 5682553.13 96.25 -599556.55 5681455.84 97.40 -599556.72 5678446.14 101.25 -599556.91 5678355.01 100.00 -599557.15 5677863.81 101.25 -599557.16 5678436.45 101.25 -599557.25 5677844.48 101.25 -599557.38 5682021.77 96.25 -599557.63 5680591.37 96.25 -599557.66 5682433.93 96.20 -599557.78 5687152.27 95.00 -599557.87 5681673.76 97.50 -599558.06 5678584.96 98.75 -599558.21 5676733.48 101.25 -599558.27 5678646.89 98.75 -599558.38 5687121.73 95.00 -599558.64 5679628.05 98.75 -599558.81 5677854.03 101.25 -599559.21 5678500.27 100.00 -599559.40 5682426.37 96.20 -599559.44 5682369.57 96.25 -599559.56 5678284.21 98.75 -599559.98 5686407.18 95.00 -599560.01 5677706.37 100.00 -599560.08 5678067.70 98.75 -599560.22 5679921.89 97.50 -599560.26 5682007.49 96.25 -599560.35 5678007.53 100.00 -599560.36 5681656.03 97.50 -599560.82 5681977.13 96.25 -599560.95 5681464.55 97.40 -599561.27 5680583.80 96.25 -599561.27 5681933.79 96.25 -599561.36 5682544.54 96.25 -599561.56 5681964.70 96.25 -599561.73 5677741.26 101.25 -599562.30 5676663.45 101.25 -599562.66 5681924.50 96.25 -599562.72 5676673.08 101.25 -599563.09 5678362.57 100.00 -599563.43 5679386.54 98.75 -599563.51 5677811.29 101.25 -599564.23 5678744.47 98.75 -599564.42 5682015.45 96.25 -599564.70 5687156.37 95.00 -599564.91 5676740.88 101.25 -599565.25 5682356.02 96.25 -599565.36 5687114.59 95.00 -599565.71 5677280.75 100.00 -599565.96 5686415.18 95.00 -599566.03 5679621.41 98.75 -599566.20 5678177.48 98.75 -599566.25 5678640.98 98.75 -599566.44 5682432.46 96.20 -599566.86 5676655.05 101.25 -599566.90 5681677.36 97.50 -599566.90 5679914.52 97.50 -599566.98 5678496.18 100.00 -599567.09 5682536.41 96.25 -599567.31 5678187.30 98.75 -599567.61 5678061.14 98.75 -599567.67 5678000.96 100.00 -599567.68 5678167.63 98.75 -599567.80 5678582.81 98.75 -599568.24 5682426.46 96.20 -599568.40 5682007.17 96.25 -599568.55 5681331.50 97.50 -599568.98 5682368.47 96.25 -599569.06 5681660.40 97.50 -599569.25 5679796.34 97.50 -599569.41 5678284.68 98.75 -599569.67 5677703.95 100.00 -599569.86 5678369.57 100.00 -599569.98 5681973.22 96.25 -599570.10 5679805.17 97.50 -599570.43 5686423.79 95.00 -599570.52 5681960.36 96.25 -599570.62 5687164.35 95.00 -599570.63 5678196.65 98.75 -599570.72 5678158.11 98.75 -599571.10 5677737.85 101.25 -599571.21 5681933.73 96.25 -599571.31 5681325.62 97.50 -599571.55 5676677.76 101.25 -599571.61 5679380.85 98.75 -599571.67 5686433.71 95.00 -599572.16 5679787.93 97.50 -599572.28 5676747.55 101.25 -599572.43 5681922.73 96.25 -599572.76 5687121.18 95.00 -599572.83 5682528.28 96.25 -599572.89 5678633.61 98.75 -599572.98 5681670.19 97.00 -599573.17 5676647.30 101.25 -599573.19 5678741.88 98.75 -599573.40 5677812.52 101.25 -599573.41 5677907.30 100.00 -599573.59 5679907.15 97.50 -599574.01 5686443.39 95.00 -599574.15 5677917.08 100.00 -599574.28 5679615.83 98.75 -599574.49 5681338.56 97.50 -599574.60 5677993.80 100.00 -599574.62 5678491.69 100.00 -599574.69 5682354.43 96.25 -599574.93 5678205.67 98.75 -599575.13 5677897.49 100.00 -599575.26 5677283.44 100.00 -599575.47 5678054.99 98.75 -599575.54 5679811.56 97.50 -599575.90 5678149.61 98.75 -599575.92 5682518.88 96.25 -599576.06 5677926.86 100.00 -599576.08 5681680.65 97.50 -599576.20 5678376.92 100.00 -599576.81 5686452.98 95.00 -599577.31 5678278.57 98.75 -599577.50 5677887.91 100.00 -599577.55 5678580.66 98.75 -599577.66 5679789.85 97.25 -599577.94 5682365.12 96.25 -599577.97 5681664.35 97.50 -599578.25 5677936.57 100.00 -599578.36 5687170.58 95.00 -599578.39 5679781.42 97.50 -599578.42 5679373.84 98.75 -599578.65 5682509.31 96.25 -599578.89 5677985.19 100.00 -599578.92 5678214.83 98.75 -599579.08 5681969.19 96.25 -599579.33 5677701.54 100.00 -599579.42 5678626.13 98.75 -599579.48 5681956.02 96.25 -599579.48 5676639.54 101.25 -599579.68 5678483.35 100.00 -599579.75 5679798.00 97.25 -599579.88 5686462.46 95.00 -599580.20 5676753.62 101.25 -599580.45 5687069.77 95.00 -599580.56 5677734.73 101.25 -599580.73 5677946.22 100.00 -599580.74 5679900.25 97.50 -599580.82 5676681.40 101.25 -599580.99 5681324.09 97.50 -599581.05 5681935.26 96.25 -599581.26 5677975.52 100.00 -599581.36 5687079.54 95.00 -599581.58 5681673.42 97.00 -599581.61 5678385.04 100.00 -599581.64 5687059.85 95.00 -599581.88 5678737.06 98.75 -599581.94 5687019.98 95.00 -599582.13 5682500.01 96.25 -599582.21 5687121.45 95.00 -599582.23 5687029.96 95.00 -599582.26 5681924.33 96.25 -599582.27 5681344.47 97.50 -599582.33 5687010.01 95.00 -599582.53 5687039.95 95.00 -599582.54 5679610.24 98.75 -599582.55 5677879.36 100.00 -599582.59 5682357.81 96.25 -599582.66 5677955.96 100.00 -599582.81 5678224.04 98.75 -599582.83 5687049.93 95.00 -599583.06 5678142.97 98.75 -599583.11 5687000.05 95.00 -599583.29 5677813.46 101.25 -599583.56 5679809.66 97.50 -599583.63 5677965.85 100.00 -599583.67 5678049.28 98.75 -599583.74 5679365.42 98.75 -599583.89 5686990.09 95.00 -599584.01 5687178.82 95.00 -599584.10 5678271.59 98.75 -599584.33 5686471.41 95.00 -599584.41 5687243.97 95.00 -599584.42 5687088.85 95.00 -599584.61 5679785.13 97.25 -599584.75 5678475.02 100.00 -599584.75 5677286.57 100.00 -599585.25 5681683.93 97.50 -599585.77 5686980.36 95.00 -599585.87 5687253.19 95.00 -599585.89 5681948.48 96.25 -599586.14 5678233.45 98.75 -599586.22 5679778.29 97.50 -599586.25 5676632.26 101.25 -599586.27 5687263.12 95.00 -599586.56 5679793.25 97.25 -599586.77 5682491.26 96.25 -599586.77 5687273.07 95.00 -599586.88 5681668.29 97.50 -599587.02 5678393.16 100.00 -599587.29 5678578.50 98.75 -599587.84 5678621.06 98.75 -599588.05 5681964.87 96.25 -599588.05 5679893.51 97.50 -599588.10 5678262.43 98.75 -599588.16 5679802.01 97.50 -599588.25 5682179.49 96.25 -599588.29 5679356.57 98.75 -599588.29 5676759.42 101.25 -599588.42 5682189.44 96.25 -599588.58 5682199.39 96.25 -599588.77 5686480.36 95.00 -599588.99 5677699.12 100.00 -599589.01 5677871.78 100.00 -599589.03 5686970.91 95.00 -599589.03 5681939.63 96.25 -599589.30 5678242.93 98.75 -599589.33 5682169.60 96.25 -599589.34 5677765.21 105.00 -599589.55 5681351.04 97.50 -599589.65 5678466.58 100.00 -599589.84 5687282.58 95.00 -599589.88 5678252.70 98.75 -599589.94 5681326.60 97.50 -599590.13 5677731.90 101.25 -599590.18 5681676.65 97.00 -599590.20 5687186.58 95.00 -599590.35 5676684.43 101.25 -599590.37 5682209.11 96.25 -599590.54 5682159.72 96.25 -599590.56 5678732.24 98.75 -599590.79 5679604.66 98.75 -599590.84 5678402.12 100.00 -599590.92 5679793.30 97.50 -599591.44 5682149.81 96.25 -599591.54 5678137.70 98.75 -599591.76 5677756.21 105.00 -599591.79 5679784.32 97.50 -599591.80 5679347.28 98.75 -599591.88 5686577.34 95.00 -599592.07 5687123.03 95.00 -599592.10 5681925.45 96.25 -599592.16 5686587.32 95.00 -599592.36 5678044.41 98.75 -599592.39 5686961.51 95.00 -599592.49 5686489.60 95.00 -599592.50 5686597.30 95.00 -599592.65 5682139.97 96.25 -599592.75 5687094.36 95.00 -599592.84 5686607.29 95.00 -599592.85 5682483.38 96.25 -599593.19 5677812.24 101.25 -599593.36 5682218.60 96.25 -599593.99 5687241.16 95.00 -599594.08 5676626.05 101.25 -599594.38 5677289.20 100.00 -599594.39 5686567.67 95.00 -599594.43 5681687.19 97.50 -599594.48 5679337.68 98.75 -599594.48 5678411.17 100.00 -599594.53 5678458.13 100.00 -599594.98 5686617.01 95.00 -599595.28 5677771.67 105.00 -599595.43 5682287.15 96.25 -599595.44 5679886.84 97.50 -599595.48 5686499.13 95.00 -599595.63 5687290.30 95.00 -599595.77 5686952.10 95.00 -599595.79 5681672.24 97.50 -599595.81 5682277.28 96.25 -599595.94 5677864.71 100.00 -599596.20 5686557.84 95.00 -599596.23 5682130.69 96.25 -599596.34 5681959.62 96.25 -599596.49 5682297.05 96.25 -599596.69 5678616.55 98.75 -599596.74 5682227.96 96.25 -599596.82 5681357.60 97.50 -599596.94 5682474.57 96.25 -599596.99 5679328.03 98.75 -599597.02 5682267.40 96.25 -599597.03 5678420.57 100.00 -599597.12 5678576.80 98.75 -599597.15 5686626.75 95.00 -599597.25 5682257.45 96.25 -599597.60 5686706.11 95.00 -599597.61 5682306.94 96.25 -599597.63 5682247.51 96.25 -599597.69 5676762.54 101.25 -599597.75 5686696.15 95.00 -599597.79 5677749.38 105.00 -599597.81 5676928.65 101.25 -599597.84 5678725.85 98.75 -599597.85 5687193.00 95.00 -599597.96 5678449.13 100.00 -599598.15 5686548.05 95.00 -599598.19 5681936.21 96.00 -599598.21 5677695.54 100.00 -599598.24 5686716.08 95.00 -599598.29 5682237.58 96.25 -599598.40 5681331.52 97.50 -599598.44 5676938.35 101.25 -599598.48 5686508.66 95.00 -599598.51 5687129.70 95.00 -599598.65 5686636.63 95.00 -599598.71 5686686.21 95.00 -599598.78 5681679.87 97.00 -599598.85 5686942.60 95.00 -599598.87 5686726.05 95.00 -599599.06 5679599.09 98.75 -599599.08 5682316.78 96.25 -599599.17 5682464.86 96.25 -599599.31 5678430.06 100.00 -599599.50 5686736.02 95.00 -599599.69 5677729.10 101.25 -599599.75 5686775.92 95.00 -599599.81 5686538.23 95.00 -599599.82 5682121.40 96.25 -599599.95 5678439.57 100.00 -599600.00 5686676.30 95.00 -599600.09 5686528.24 95.00 -599600.10 5686745.99 95.00 -599600.15 5686646.51 95.00 -599600.23 5686785.88 95.00 -599600.24 5676685.60 101.25 -599600.26 5686765.94 95.00 -599600.29 5678038.45 98.75 -599600.34 5679318.75 98.75 -599600.39 5676919.01 101.25 -599600.56 5682326.63 96.25 -599600.70 5686755.96 95.00 -599600.77 5686518.28 95.00 -599600.84 5678134.89 98.75 -599600.93 5686795.85 95.00 -599600.94 5687234.61 95.00 -599601.04 5686656.46 95.00 -599601.32 5682455.15 96.25 -599601.33 5686666.40 95.00 -599601.34 5687099.30 95.00 -599601.60 5681866.03 96.25 -599601.60 5682336.52 96.25 -599601.77 5686933.05 95.00 -599601.95 5681924.04 96.25 -599601.96 5676619.89 101.25 -599602.22 5686805.70 95.00 -599602.31 5681951.65 96.25 -599602.48 5682346.44 96.25 -599602.85 5679880.21 97.50 -599602.98 5677810.50 101.25 -599603.00 5686923.20 95.00 -599603.13 5687296.90 95.00 -599603.19 5676946.63 101.25 -599603.28 5681875.04 96.25 -599603.35 5682356.35 96.25 -599603.42 5682445.42 96.25 -599603.47 5686913.22 95.00 -599603.62 5681690.44 97.50 -599603.64 5678717.78 98.75 -599604.03 5677858.90 100.00 -599604.13 5677291.35 100.00 -599604.20 5687137.30 95.00 -599604.22 5682366.27 96.25 -599604.31 5686903.29 95.00 -599604.38 5677773.80 105.00 -599604.50 5682112.66 96.25 -599604.80 5676910.40 101.25 -599604.85 5681363.16 97.50 -599605.09 5682376.18 96.25 -599605.09 5681674.92 97.50 -599605.17 5686815.25 95.00 -599605.44 5679310.18 98.75 -599605.51 5682435.69 96.25 -599605.70 5687199.17 95.00 -599605.85 5682386.10 96.25 -599606.11 5678613.52 98.75 -599606.13 5686893.46 95.00 -599606.36 5677745.47 105.00 -599606.41 5681337.18 97.50 -599606.48 5681417.87 97.50 -599606.55 5677758.92 105.50 -599606.55 5682425.80 96.25 -599606.56 5682396.03 96.25 -599606.64 5679592.67 98.75 -599606.79 5681408.77 97.50 -599606.80 5687226.52 95.00 -599606.96 5681858.65 96.25 -599606.96 5678575.16 98.75 -599607.00 5680828.18 97.50 -599607.02 5677690.89 100.00 -599607.27 5682405.96 96.25 -599607.44 5681682.94 97.00 -599607.45 5682415.88 96.25 -599607.48 5676764.47 101.25 -599607.81 5678031.87 98.75 -599607.86 5681943.39 96.25 -599607.96 5686883.64 95.00 -599608.11 5686824.80 95.00 -599609.27 5677726.32 101.25 -599609.29 5687104.44 95.00 -599609.71 5682104.18 96.25 -599609.71 5678709.92 98.75 -599609.86 5676613.76 101.25 -599609.91 5687207.53 95.00 -599609.92 5686873.85 95.00 -599609.99 5687304.14 95.00 -599610.03 5680837.34 97.50 -599610.20 5687217.35 95.00 -599610.21 5676686.39 101.25 -599610.26 5679873.58 97.50 -599610.67 5686834.45 95.00 -599610.78 5678133.97 98.75 -599611.11 5676952.59 101.25 -599611.43 5681867.62 95.15 -599611.47 5679302.39 98.75 -599611.51 5681921.42 96.25 -599611.63 5681426.20 97.50 -599611.73 5676903.21 101.25 -599611.83 5681878.77 96.25 -599611.87 5686864.05 95.00 -599612.33 5677853.44 100.00 -599612.65 5677808.05 101.25 -599612.78 5686854.10 95.00 -599612.79 5686844.21 95.00 -599612.80 5681693.69 97.50 -599613.13 5677771.25 105.00 -599613.23 5681368.23 97.50 -599613.78 5681935.40 96.25 -599613.84 5687138.49 95.00 -599613.89 5679585.82 98.75 -599614.12 5677291.35 100.00 -599614.48 5678024.52 98.75 -599614.66 5681676.79 97.50 -599614.76 5681342.25 97.50 -599614.92 5682095.70 96.25 -599615.27 5677742.59 105.00 -599615.31 5687112.41 95.00 -599615.67 5678610.82 98.75 -599615.80 5678702.08 98.75 -599615.83 5677686.25 100.00 -599615.83 5681858.31 96.25 -599616.06 5681407.84 97.50 -599616.22 5681685.62 97.00 -599616.56 5687311.67 95.00 -599616.81 5678573.52 98.75 -599617.14 5681434.33 97.50 -599617.42 5676765.13 101.25 -599617.57 5679866.84 97.50 -599618.35 5687130.84 95.00 -599618.68 5680841.87 97.50 -599618.75 5676896.12 101.25 -599618.85 5677723.57 101.25 -599618.91 5679295.76 98.75 -599619.18 5676610.23 101.25 -599619.42 5687120.94 95.00 -599619.44 5681915.77 96.25 -599619.66 5687321.02 95.00 -599620.07 5681874.91 96.25 -599620.14 5678016.30 98.75 -599620.16 5681214.31 98.75 -599620.18 5676687.19 101.25 -599620.34 5676955.76 101.25 -599620.44 5679578.34 98.75 -599620.54 5677765.39 105.00 -599620.61 5678132.20 98.75 -599620.64 5681928.21 96.25 -599620.67 5682087.62 96.25 -599620.87 5680709.42 97.50 -599621.30 5677849.11 100.00 -599621.32 5681865.69 96.25 -599621.41 5677803.74 101.25 -599621.64 5681373.27 97.50 -599622.05 5678694.35 98.75 -599622.10 5681696.60 97.50 -599622.15 5687330.69 95.00 -599622.67 5680699.68 97.50 -599622.85 5681347.79 97.50 -599622.89 5681442.28 97.50 -599623.14 5687340.62 95.00 -599624.11 5677291.29 100.00 -599624.22 5681678.66 97.50 -599624.22 5681205.45 98.75 -599624.63 5687350.36 95.00 -599624.66 5677681.64 100.00 -599624.71 5677742.68 105.00 -599624.79 5681412.32 97.50 -599624.83 5679860.03 97.50 -599624.90 5680717.97 97.50 -599625.00 5681688.30 97.00 -599625.13 5681907.63 96.25 -599625.13 5678007.64 98.75 -599625.23 5678608.11 98.75 -599625.92 5676889.17 101.25 -599626.35 5679289.13 98.75 -599626.53 5681219.03 98.75 -599626.65 5678571.87 98.75 -599626.70 5679570.59 98.75 -599627.11 5680691.08 97.50 -599627.26 5682080.16 96.25 -599627.40 5676765.37 101.25 -599627.99 5681921.50 96.25 -599628.20 5680844.33 97.50 -599628.26 5677759.96 105.00 -599628.37 5678686.69 98.75 -599628.56 5677721.31 101.25 -599628.79 5676607.57 101.25 -599629.30 5677797.64 101.25 -599629.64 5687359.00 95.00 -599630.12 5681378.17 97.50 -599630.12 5677998.99 98.75 -599630.14 5676687.99 101.25 -599630.29 5676956.60 101.25 -599630.35 5677844.96 100.00 -599630.36 5678130.03 98.75 -599630.93 5681353.33 97.50 -599631.20 5681447.44 97.50 -599631.37 5681198.52 98.75 -599631.40 5681699.51 97.50 -599632.08 5679853.22 97.50 -599632.24 5681900.79 96.25 -599632.96 5679562.83 98.75 -599633.00 5680683.11 97.50 -599633.08 5676882.22 101.25 -599633.23 5680723.21 97.50 -599633.23 5681417.30 97.50 -599633.30 5677745.61 105.00 -599633.53 5677677.12 100.00 -599633.78 5681680.52 97.50 -599633.79 5679282.50 98.75 -599633.80 5681690.96 97.00 -599634.10 5677291.11 100.00 -599634.33 5681212.98 98.75 -599634.64 5678606.52 98.75 -599634.69 5678679.03 98.75 -599634.92 5677753.81 105.00 -599635.11 5677990.33 98.75 -599635.36 5681914.80 96.25 -599636.03 5678568.73 98.75 -599636.95 5677791.24 101.25 -599637.38 5676765.47 101.25 -599637.72 5687364.75 95.00 -599638.00 5680845.04 97.50 -599638.05 5681191.14 98.75 -599638.30 5677719.21 101.25 -599638.54 5681383.16 97.50 -599638.55 5679554.59 98.75 -599638.60 5676605.68 101.25 -599639.02 5681358.86 97.50 -599639.44 5679846.53 97.50 -599639.45 5681452.75 97.50 -599639.46 5677840.95 100.00 -599639.75 5678126.83 98.75 -599639.85 5678670.57 98.75 -599639.93 5681894.47 96.25 -599640.13 5676687.91 101.25 -599640.25 5676957.31 101.25 -599640.40 5679275.04 98.75 -599640.46 5680676.97 97.50 -599640.56 5676875.61 101.25 -599640.69 5681702.43 97.50 -599641.04 5677982.41 98.75 -599641.44 5681422.69 97.50 -599641.53 5681206.10 98.75 -599642.24 5681439.01 97.30 -599642.41 5677672.60 100.00 -599642.44 5681646.79 97.50 -599642.54 5680725.83 97.50 -599642.76 5681656.58 97.50 -599642.81 5681692.72 97.00 -599643.01 5681908.43 96.25 -599643.15 5678611.64 98.75 -599643.17 5678968.65 97.50 -599643.23 5681682.88 97.50 -599643.57 5677288.10 100.00 -599643.92 5677784.14 101.25 -599643.93 5679546.20 98.75 -599644.76 5678661.94 98.75 -599645.05 5678564.47 98.75 -599645.22 5678959.08 97.50 -599645.24 5681184.24 98.75 -599645.34 5681390.22 97.50 -599645.84 5680931.06 97.50 -599645.92 5678978.13 97.50 -599645.98 5680921.32 97.50 -599646.15 5681637.72 97.50 -599646.32 5687369.74 95.00 -599646.80 5679839.85 97.50 -599646.96 5680940.83 97.50 -599646.99 5679267.56 98.75 -599647.09 5681458.84 97.50 -599647.36 5676765.47 101.25 -599647.41 5681363.86 97.50 -599647.66 5680911.63 97.50 -599647.83 5680845.12 97.50 -599648.03 5676868.98 101.25 -599648.09 5677717.31 101.25 -599648.27 5677975.52 98.75 -599648.45 5680950.54 97.50 -599648.45 5678121.92 98.75 -599648.50 5681889.41 96.25 -599648.58 5677836.94 100.00 -599648.60 5676605.64 101.25 -599648.87 5681199.38 98.75 -599649.23 5680672.37 97.50 -599649.31 5679537.81 98.75 -599649.33 5681153.73 97.50 -599649.40 5678950.07 97.50 -599649.44 5680901.96 97.50 -599649.70 5681427.99 97.50 -599650.05 5676958.72 101.25 -599650.07 5681705.06 97.50 -599650.13 5676687.76 101.25 -599650.32 5681658.42 97.50 -599650.41 5680960.18 97.50 -599650.47 5678653.82 98.75 -599650.59 5677776.73 101.25 -599650.67 5681902.07 96.25 -599650.95 5681398.10 97.50 -599651.33 5677668.22 100.00 -599651.37 5681162.99 97.50 -599651.43 5681629.30 97.50 -599651.66 5678616.77 98.75 -599651.82 5681694.48 97.00 -599652.40 5680726.71 97.50 -599652.43 5681177.35 98.75 -599652.49 5681467.03 97.50 -599652.52 5677283.94 100.00 -599652.64 5680892.66 97.50 -599652.69 5681685.24 97.50 -599652.79 5678985.15 97.50 -599653.04 5681144.59 97.50 -599653.16 5678940.87 97.50 -599653.46 5679259.99 98.75 -599653.50 5680969.41 97.50 -599653.95 5678560.00 98.75 -599654.19 5679833.18 97.50 -599654.28 5678931.00 97.50 -599654.64 5681504.30 97.50 -599654.97 5678911.18 97.50 -599655.06 5678901.24 97.50 -599655.15 5681406.95 97.50 -599655.21 5678921.11 97.50 -599655.28 5678891.31 97.50 -599655.41 5678645.48 98.75 -599655.41 5679529.97 98.75 -599655.43 5676862.28 101.25 -599655.51 5677968.63 98.75 -599655.60 5678625.80 98.75 -599655.68 5687373.21 95.00 -599655.98 5678635.56 98.75 -599656.24 5681513.44 97.50 -599656.26 5681368.07 97.50 -599656.53 5681494.67 97.50 -599656.53 5678881.52 97.50 -599656.93 5681193.54 98.75 -599657.15 5678117.01 98.75 -599657.20 5676766.86 101.25 -599657.33 5681884.82 96.25 -599657.54 5680701.83 97.75 -599657.63 5680845.40 97.50 -599657.66 5681484.95 97.50 -599657.67 5677832.89 100.00 -599657.79 5680925.38 97.50 -599657.86 5680884.46 97.50 -599657.89 5677717.94 101.25 -599657.89 5681475.23 97.50 -599657.92 5681621.70 97.50 -599657.95 5681433.30 97.50 -599658.10 5680915.55 97.50 -599658.21 5680935.07 97.50 -599658.21 5681652.35 97.50 -599658.24 5680978.03 97.50 -599658.26 5680668.31 97.50 -599658.30 5677770.42 101.25 -599658.38 5676604.12 101.25 -599658.61 5681896.10 96.25 -599659.12 5678871.93 97.50 -599659.44 5676962.11 101.25 -599659.54 5681707.35 97.50 -599659.71 5679252.23 98.75 -599659.79 5681170.66 98.75 -599659.84 5680906.02 97.50 -599660.13 5676687.62 101.25 -599660.19 5677277.54 100.00 -599660.48 5681162.30 97.50 -599660.68 5678991.02 97.50 -599660.73 5681138.26 97.50 -599660.91 5677665.49 100.00 -599661.22 5681414.47 97.50 -599661.45 5681521.58 97.50 -599661.58 5679826.53 97.50 -599662.01 5679522.50 98.75 -599662.11 5680726.29 97.50 -599662.14 5681687.61 97.50 -599662.24 5678554.44 98.75 -599662.39 5680943.97 97.50 -599662.74 5677961.73 98.75 -599663.20 5680986.50 97.50 -599663.60 5676856.97 101.25 -599663.77 5680897.00 97.50 -599663.95 5678863.24 97.50 -599663.98 5680876.76 97.50 -599664.35 5678402.57 98.75 -599664.51 5681614.22 97.50 -599664.89 5680850.25 97.50 -599664.89 5687377.06 95.00 -599664.94 5681372.62 97.50 -599664.99 5681187.69 98.75 -599665.40 5681645.44 97.50 -599665.54 5678111.61 98.75 -599665.68 5681439.23 97.50 -599665.96 5679244.46 98.75 -599666.07 5677764.18 101.25 -599666.12 5678392.84 98.75 -599666.40 5681880.72 96.25 -599666.57 5680952.88 97.50 -599666.59 5677828.58 100.00 -599666.77 5676769.48 101.25 -599666.80 5677721.64 101.25 -599667.25 5681891.40 96.25 -599667.46 5678411.59 98.75 -599667.65 5681164.54 98.75 -599667.89 5680665.99 97.50 -599667.97 5681155.94 97.50 -599667.99 5676601.37 101.25 -599668.19 5677271.57 100.00 -599668.24 5681421.30 97.50 -599668.33 5681131.82 97.50 -599668.61 5679515.03 98.75 -599668.68 5676965.87 101.25 -599668.78 5678854.55 97.50 -599668.97 5679819.88 97.50 -599669.01 5681709.64 97.50 -599669.14 5680859.06 97.50 -599669.14 5681527.67 97.50 -599669.46 5680994.09 97.50 -599669.47 5680868.89 97.50 -599669.57 5680889.23 97.50 -599669.61 5678995.39 97.50 -599669.87 5676688.69 101.25 -599670.49 5677662.75 100.00 -599670.51 5681399.99 97.20 -599670.53 5678548.89 98.75 -599670.53 5678383.89 98.75 -599671.38 5680961.45 97.50 -599671.48 5681690.33 97.50 -599671.48 5680723.07 97.50 -599671.64 5681475.80 97.50 -599671.69 5678845.09 97.50 -599671.73 5677756.14 101.25 -599672.01 5677958.51 98.75 -599672.12 5681607.76 97.50 -599672.16 5681446.59 97.50 -599672.41 5678420.26 98.75 -599672.64 5681466.04 97.50 -599673.00 5681638.96 97.50 -599673.05 5681181.84 98.75 -599673.09 5677821.03 100.00 -599673.18 5676854.15 101.25 -599673.27 5681456.25 97.50 -599673.29 5678105.31 98.75 -599673.49 5681377.39 97.50 -599673.73 5679238.24 98.75 -599673.78 5681886.58 96.25 -599673.88 5687381.41 95.00 -599674.02 5677728.40 101.25 -599674.02 5678835.44 97.50 -599674.31 5681157.24 98.75 -599674.61 5681148.52 97.50 -599674.99 5681484.51 97.50 -599675.54 5681876.78 96.25 -599675.72 5678825.65 97.50 -599675.73 5681125.15 97.50 -599675.73 5676773.86 101.25 -599675.80 5679508.21 98.75 -599675.81 5681001.57 97.50 -599676.02 5681427.16 97.50 -599676.22 5680970.02 97.50 -599676.37 5677265.84 100.00 -599676.46 5678540.90 98.75 -599676.58 5680882.33 97.50 -599676.64 5677747.46 101.25 -599676.91 5681618.83 97.00 -599677.05 5678376.67 98.75 -599677.09 5677737.56 101.25 -599677.19 5679814.29 97.50 -599677.20 5678429.01 98.75 -599677.37 5676597.93 101.25 -599677.65 5676970.26 101.25 -599677.72 5680667.29 97.50 -599678.04 5679000.54 97.50 -599678.47 5681510.69 97.20 -599678.60 5681711.31 97.50 -599678.87 5681526.91 97.50 -599678.96 5676692.85 101.25 -599679.07 5680797.52 96.25 -599679.59 5678816.54 97.50 -599679.61 5677813.50 100.00 -599680.01 5681384.31 97.50 -599680.21 5677661.47 100.00 -599680.37 5681149.34 98.75 -599680.41 5681602.50 97.50 -599680.49 5681632.37 97.50 -599680.68 5680719.38 97.50 -599680.69 5681693.51 97.50 -599681.03 5681175.90 98.75 -599681.03 5678099.00 98.75 -599681.48 5681141.31 97.50 -599681.59 5679232.11 98.75 -599681.68 5687387.66 95.00 -599681.69 5677956.01 98.75 -599681.97 5678437.77 98.75 -599682.15 5681491.05 97.50 -599682.26 5678532.78 98.75 -599682.65 5680977.40 97.50 -599682.95 5676853.23 101.25 -599683.50 5681118.93 97.50 -599683.57 5680875.45 97.50 -599683.90 5679502.41 98.75 -599683.94 5676779.55 101.25 -599684.03 5680789.46 96.25 -599684.19 5677259.64 100.00 -599684.39 5681432.27 97.50 -599684.49 5681006.18 97.50 -599684.66 5678808.01 97.50 -599684.97 5678370.59 98.75 -599685.18 5681392.64 97.50 -599685.50 5679808.82 97.50 -599685.83 5679006.72 97.50 -599686.17 5678446.80 98.75 -599686.32 5677806.14 100.00 -599686.39 5680847.63 97.50 -599686.51 5678523.77 98.75 -599686.61 5676974.65 101.25 -599686.62 5676594.15 101.25 -599686.97 5681141.89 98.75 -599686.97 5680857.27 97.50 -599687.54 5680668.59 97.50 -599687.55 5680866.87 97.50 -599687.69 5681133.56 97.50 -599687.86 5676697.39 101.25 -599688.13 5681710.69 97.50 -599688.35 5681169.14 98.75 -599688.56 5681525.41 97.50 -599688.78 5681626.80 97.50 -599688.78 5678092.69 98.75 -599689.23 5681401.54 97.50 -599689.27 5680838.31 97.50 -599689.43 5680984.53 97.50 -599689.63 5679226.27 98.75 -599689.65 5678456.15 98.75 -599689.82 5680828.58 97.50 -599689.85 5681599.26 97.50 -599689.86 5680715.67 97.50 -599689.90 5681696.69 97.50 -599689.99 5680782.13 96.25 -599690.12 5678799.71 97.50 -599690.15 5677662.15 100.00 -599690.62 5678514.68 98.75 -599690.95 5687390.74 95.00 -599691.24 5681494.20 97.50 -599691.32 5677953.35 98.75 -599691.48 5681113.00 97.50 -599692.00 5679496.60 98.75 -599692.14 5676785.24 101.25 -599692.34 5677254.14 100.00 -599692.42 5681429.76 97.50 -599692.68 5681011.57 97.50 -599692.88 5681410.61 97.50 -599692.89 5676854.07 101.25 -599693.03 5677798.79 100.00 -599693.09 5678505.15 98.75 -599693.13 5678465.51 98.75 -599693.31 5681125.37 97.50 -599693.74 5678365.89 98.75 -599693.78 5681134.63 98.75 -599693.82 5679803.38 97.50 -599693.93 5681420.35 97.50 -599693.94 5678495.21 98.75 -599694.35 5678475.28 98.75 -599694.45 5678485.26 98.75 -599694.53 5681704.75 97.50 -599694.87 5679010.73 97.50 -599695.62 5676978.95 101.25 -599695.66 5681162.39 98.75 -599695.88 5676590.39 101.25 -599696.34 5680775.10 96.25 -599696.53 5680991.33 97.50 -599696.59 5680799.51 96.25 -599696.63 5676702.19 101.25 -599696.81 5680671.96 97.50 -599696.97 5678087.03 98.75 -599697.07 5681621.23 97.50 -599697.59 5681521.93 97.50 -599697.75 5678793.55 97.50 -599698.63 5679222.00 98.75 -599698.78 5681594.81 97.50 -599699.07 5681126.24 98.75 -599699.10 5680712.09 97.50 -599700.01 5677663.17 100.00 -599700.19 5681108.16 97.50 -599700.50 5681017.55 97.50 -599700.50 5679491.48 98.75 -599700.65 5677949.99 98.75 -599700.71 5681118.69 97.50 -599700.74 5687392.73 95.00 -599700.91 5681492.83 97.50 -599701.04 5676789.65 101.25 -599701.17 5676859.60 101.25 -599701.52 5677794.06 100.00 -599701.73 5677250.71 100.00 -599702.15 5679797.93 97.50 -599702.72 5678361.55 98.75 -599702.88 5681155.52 98.75 -599703.67 5680793.22 96.25 -599703.86 5680997.89 97.50 -599704.32 5680770.03 96.25 -599704.50 5679011.58 97.50 -599704.72 5676708.01 101.25 -599704.80 5676982.86 101.25 -599705.23 5676586.83 101.25 -599705.36 5681615.67 97.50 -599706.03 5678082.97 98.75 -599706.05 5678788.09 97.50 -599706.14 5681517.10 97.50 -599706.33 5680673.96 97.50 -599706.84 5681120.02 98.75 -599707.57 5687390.01 95.00 -599707.63 5679217.73 98.75 -599708.01 5681591.07 97.50 -599708.34 5680708.52 97.50 -599708.60 5681112.71 97.50 -599708.88 5677944.32 98.75 -599708.91 5681022.63 97.50 -599709.10 5681103.74 97.50 -599709.39 5677666.54 100.00 -599709.51 5679487.22 98.75 -599709.74 5676864.69 101.25 -599710.03 5681148.59 98.75 -599710.21 5679792.13 97.50 -599710.32 5676793.31 101.25 -599710.43 5681493.97 97.50 -599710.52 5687050.28 95.00 -599710.54 5687380.97 95.00 -599710.84 5677790.56 100.00 -599710.88 5680787.08 96.25 -599710.93 5687040.54 95.00 -599711.44 5677248.70 100.00 -599711.57 5687060.20 95.00 -599711.89 5678357.61 98.75 -599711.95 5681003.49 97.50 -599712.53 5681509.90 97.50 -599712.80 5676713.86 101.25 -599712.91 5680766.26 96.25 -599713.00 5681609.27 97.50 -599713.03 5676988.36 101.25 -599713.66 5687069.97 95.00 -599714.39 5679010.61 97.50 -599714.63 5676583.52 101.25 -599714.87 5678783.50 97.50 -599714.99 5686790.03 95.00 -599715.05 5687031.44 95.00 -599715.07 5686780.14 95.00 -599715.73 5678080.82 98.75 -599715.74 5681115.89 98.75 -599715.75 5687079.74 95.00 -599715.90 5681501.15 97.50 -599716.03 5677429.24 98.75 -599716.24 5680673.96 97.50 -599716.39 5677419.38 98.75 -599717.01 5679214.50 98.75 -599717.10 5677938.65 98.75 -599717.18 5681141.66 98.75 -599717.20 5677438.97 98.75 -599717.34 5681107.97 97.50 -599717.36 5681027.65 97.50 -599717.58 5681589.64 97.50 -599717.60 5680704.98 97.50 -599717.76 5680780.57 96.25 -599717.84 5687089.51 95.00 -599717.95 5679785.88 97.50 -599718.05 5686799.49 95.00 -599718.17 5681099.61 97.50 -599718.53 5679482.97 98.75 -599718.53 5676869.42 101.25 -599718.76 5677669.90 100.00 -599719.17 5687022.34 95.00 -599719.28 5677448.61 98.75 -599719.44 5686771.16 95.00 -599719.94 5687099.28 95.00 -599719.97 5676795.85 101.25 -599720.08 5681009.03 97.50 -599720.26 5677787.33 100.00 -599720.39 5681602.57 97.50 -599720.51 5687380.37 95.00 -599720.60 5677410.50 98.75 -599720.78 5676994.64 101.25 -599721.06 5678353.67 98.75 -599721.25 5687139.02 95.00 -599721.37 5677247.60 100.00 -599721.40 5686808.90 95.00 -599721.48 5687129.03 95.00 -599721.71 5687119.04 95.00 -599721.75 5676717.67 101.25 -599721.93 5687109.05 95.00 -599722.10 5680765.70 96.25 -599722.58 5677457.82 98.75 -599723.30 5687013.24 95.00 -599723.58 5678778.75 97.50 -599723.64 5680773.28 96.25 -599723.67 5686818.61 95.00 -599723.78 5679008.12 97.50 -599723.82 5686762.17 95.00 -599724.27 5681594.46 97.50 -599724.48 5681092.10 97.50 -599724.54 5681134.96 98.75 -599724.57 5676582.48 101.25 -599724.80 5677932.29 98.75 -599724.80 5681111.83 98.75 -599724.93 5687147.98 95.00 -599725.16 5679779.03 97.50 -599725.58 5686828.42 95.00 -599725.66 5678081.27 98.75 -599725.66 5681032.93 97.50 -599726.05 5680675.25 97.50 -599726.69 5679212.12 98.75 -599726.81 5681104.87 97.50 -599726.83 5686752.70 95.00 -599726.87 5680701.48 97.50 -599726.93 5677675.58 100.00 -599727.06 5677466.62 98.75 -599727.14 5686838.28 95.00 -599727.49 5676873.81 101.25 -599727.71 5677403.69 98.75 -599727.96 5679479.74 98.75 -599728.02 5687375.06 95.00 -599728.17 5678186.53 98.75 -599728.27 5677001.20 101.25 -599728.47 5678196.50 98.75 -599728.58 5681013.97 97.50 -599728.78 5686848.12 95.00 -599728.94 5678206.48 98.75 -599729.28 5687005.33 95.00 -599729.78 5677784.42 100.00 -599729.83 5676796.90 101.25 -599729.84 5678176.67 98.75 -599729.89 5678216.43 98.75 -599730.03 5687156.57 95.00 -599730.09 5681083.87 97.50 -599730.29 5678349.90 98.75 -599730.85 5678226.37 98.75 -599730.87 5686743.68 95.00 -599731.28 5677924.86 98.75 -599731.35 5677247.16 100.00 -599731.40 5677475.47 98.75 -599731.50 5678166.82 98.75 -599731.54 5678772.80 97.50 -599731.75 5676717.49 101.25 -599732.03 5680913.50 97.50 -599732.27 5679002.95 97.50 -599732.27 5679772.08 97.50 -599732.37 5686857.44 95.00 -599732.75 5681129.38 98.75 -599733.57 5680923.07 97.50 -599733.58 5681107.14 98.75 -599733.83 5678235.78 98.75 -599733.84 5680903.88 97.50 -599734.34 5687367.32 95.00 -599734.36 5677484.80 98.75 -599734.51 5676581.44 101.25 -599734.66 5677008.86 101.25 -599734.74 5681098.92 97.50 -599734.85 5678084.79 98.75 -599734.88 5681036.00 97.50 -599734.98 5678157.53 98.75 -599735.04 5680696.22 97.50 -599735.06 5677681.33 100.00 -599735.13 5687165.16 95.00 -599735.14 5680678.32 97.50 -599735.39 5681075.44 97.50 -599735.46 5678245.57 98.75 -599735.77 5686997.73 95.00 -599736.13 5677399.34 98.75 -599736.30 5677494.48 98.75 -599736.31 5676878.45 101.25 -599736.37 5679209.74 98.75 -599736.41 5677916.28 98.75 -599736.56 5678255.50 98.75 -599736.59 5679475.02 98.75 -599736.78 5686736.08 95.00 -599737.08 5681018.92 97.50 -599737.51 5680894.64 97.50 -599737.62 5680687.81 97.50 -599737.67 5678265.43 98.75 -599738.23 5677504.15 98.75 -599738.30 5678275.39 98.75 -599738.30 5687174.62 95.00 -599738.53 5678285.38 98.75 -599738.63 5678295.37 98.75 -599738.67 5677780.18 100.00 -599738.95 5678766.23 97.50 -599739.13 5679764.89 97.50 -599739.17 5678305.21 98.75 -599739.18 5678148.46 98.75 -599739.25 5686864.68 95.00 -599739.81 5676797.03 101.25 -599739.83 5678346.96 98.75 -599740.50 5677016.96 101.25 -599740.68 5686989.11 95.00 -599740.74 5676713.74 101.25 -599740.75 5678997.78 97.50 -599740.84 5677907.41 98.75 -599741.22 5681124.14 98.75 -599741.25 5680919.66 97.50 -599741.28 5681067.46 97.50 -599741.33 5677246.75 100.00 -599741.34 5687360.34 95.00 -599741.37 5687184.13 95.00 -599741.45 5677688.87 100.00 -599741.51 5680164.11 96.25 -599742.06 5678091.52 98.75 -599742.23 5681102.20 98.75 -599742.27 5677513.13 98.75 -599742.45 5681092.63 97.50 -599742.59 5678139.12 98.75 -599743.02 5680155.30 96.25 -599743.04 5678314.42 98.75 -599743.23 5680886.48 97.50 -599743.47 5677897.77 98.75 -599744.05 5681034.59 97.50 -599744.14 5681025.45 97.50 -599744.26 5676579.38 101.25 -599744.28 5686979.86 95.00 -599744.42 5687193.64 95.00 -599744.52 5679468.98 98.75 -599744.99 5678129.42 98.75 -599745.15 5686872.67 95.00 -599745.20 5680146.57 96.25 -599745.52 5676881.22 101.25 -599745.61 5679757.37 97.50 -599745.71 5677025.45 101.25 -599745.89 5680171.29 96.25 -599745.89 5678759.11 97.50 -599745.91 5677398.42 98.75 -599746.19 5686970.06 95.00 -599746.26 5679209.27 98.75 -599746.41 5686734.12 95.00 -599746.47 5680911.18 97.50 -599746.48 5677888.25 98.75 -599746.66 5678323.72 98.75 -599746.77 5678100.18 98.75 -599746.92 5677774.61 100.00 -599746.94 5680137.75 96.25 -599747.24 5687203.23 95.00 -599747.25 5677521.56 98.75 -599747.31 5678119.71 98.75 -599747.43 5677696.83 100.00 -599747.80 5686960.21 95.00 -599748.12 5681060.23 97.50 -599748.27 5686950.23 95.00 -599748.35 5678109.77 98.75 -599748.49 5680128.89 96.25 -599748.58 5676707.76 101.25 -599748.70 5681084.87 97.50 -599748.75 5686940.26 95.00 -599749.07 5677878.62 98.75 -599749.29 5680878.59 97.50 -599749.47 5686930.29 95.00 -599749.47 5678344.69 98.75 -599749.53 5678993.13 97.50 -599749.68 5676798.19 101.25 -599749.88 5681119.31 98.75 -599750.05 5687356.37 95.00 -599750.06 5687212.81 95.00 -599750.25 5686920.33 95.00 -599750.30 5686881.23 95.00 -599750.31 5681096.41 98.75 -599750.35 5677034.29 101.25 -599750.79 5677868.78 98.75 -599751.04 5686910.37 95.00 -599751.16 5680120.35 96.25 -599751.31 5677246.82 100.00 -599751.37 5680171.98 96.25 -599751.77 5678328.96 98.75 -599751.82 5680902.78 97.50 -599751.83 5686900.41 95.00 -599752.30 5679462.75 98.75 -599752.54 5681569.22 97.50 -599752.62 5686890.46 95.00 -599752.83 5678752.00 97.50 -599752.88 5687222.39 95.00 -599753.35 5679751.12 97.50 -599753.40 5677704.80 100.00 -599753.72 5677529.01 98.75 -599753.86 5676576.60 101.25 -599754.02 5686739.53 95.00 -599754.46 5676699.72 101.25 -599754.54 5680112.02 96.25 -599754.90 5677768.71 100.00 -599755.01 5677859.78 98.75 -599755.11 5681077.27 97.50 -599755.25 5679204.98 98.75 -599755.48 5676881.40 101.25 -599755.61 5680870.89 97.50 -599755.70 5687231.98 95.00 -599755.78 5681053.87 97.50 -599755.78 5677398.42 98.75 -599756.31 5677042.23 101.25 -599756.61 5680165.07 96.25 -599757.37 5681370.14 97.50 -599757.46 5680156.12 96.25 -599757.54 5680147.04 96.25 -599757.67 5680894.74 97.50 -599757.67 5686748.45 95.00 -599757.69 5681089.74 98.75 -599757.81 5681561.56 96.25 -599758.19 5677713.48 100.00 -599758.23 5680138.02 96.25 -599758.38 5678988.61 97.50 -599758.52 5687241.56 95.00 -599759.03 5679250.46 99.00 -599759.19 5686758.33 95.00 -599759.20 5681360.54 97.50 -599759.22 5680104.36 96.25 -599759.32 5676690.99 101.25 -599759.37 5681116.30 98.75 -599759.44 5678344.41 98.75 -599759.46 5687359.69 95.00 -599759.49 5676800.07 101.25 -599759.59 5677850.89 98.75 -599759.86 5680129.10 96.25 -599760.53 5678745.74 97.50 -599760.80 5680862.47 97.50 -599761.23 5677535.16 98.75 -599761.25 5678325.80 98.75 -599761.28 5677247.48 100.00 -599761.29 5679458.64 98.75 -599761.35 5687251.14 95.00 -599761.56 5677761.31 100.00 -599761.98 5686767.83 95.00 -599762.04 5679746.40 97.50 -599762.10 5681567.08 97.50 -599762.16 5681070.22 97.50 -599762.43 5677722.49 100.00 -599762.78 5677049.83 101.25 -599763.10 5680120.62 96.25 -599763.46 5676573.82 101.25 -599763.59 5681047.69 97.50 -599763.90 5676682.11 101.25 -599763.93 5677751.97 100.00 -599764.17 5687260.73 95.00 -599764.25 5677732.17 100.00 -599764.40 5679201.03 98.75 -599764.58 5681352.31 97.50 -599764.81 5680888.06 97.50 -599764.87 5681554.57 96.25 -599765.06 5677742.08 100.00 -599765.11 5681083.10 98.75 -599765.14 5680853.51 97.50 -599765.23 5676879.27 101.25 -599765.59 5681374.28 97.50 -599765.65 5677398.42 98.75 -599765.97 5686776.99 95.00 -599766.20 5680099.21 96.25 -599766.74 5677844.01 98.75 -599767.29 5680112.58 96.25 -599767.47 5686825.45 95.00 -599767.53 5678984.88 97.50 -599767.96 5686815.47 95.00 -599768.41 5678739.68 97.50 -599768.58 5687363.78 95.00 -599768.68 5687269.56 95.00 -599768.86 5681113.28 98.75 -599768.98 5678347.34 98.75 -599769.16 5686805.66 95.00 -599769.25 5686835.05 95.00 -599769.27 5676802.05 101.25 -599769.28 5680103.89 96.25 -599769.48 5680844.54 97.50 -599769.54 5677057.18 101.25 -599769.81 5681560.79 97.50 -599769.82 5681343.88 97.50 -599769.96 5686786.15 95.00 -599770.05 5681064.24 97.50 -599770.06 5677539.45 98.75 -599770.17 5676675.33 101.25 -599770.59 5679455.05 98.75 -599770.73 5678322.64 98.75 -599770.73 5686796.01 95.00 -599770.78 5679741.69 97.50 -599771.00 5681546.68 96.25 -599771.12 5677245.93 100.00 -599771.23 5681041.31 97.50 -599771.85 5680834.95 97.50 -599772.47 5680881.88 97.50 -599772.64 5676570.00 101.25 -599772.90 5686844.35 95.00 -599773.06 5681077.22 98.75 -599773.50 5679196.96 98.75 -599774.20 5677837.36 98.75 -599774.57 5687277.51 95.00 -599774.80 5681335.27 97.50 -599774.82 5676876.55 101.25 -599775.42 5681372.83 97.50 -599775.50 5677398.31 98.75 -599775.72 5681552.75 97.50 -599776.12 5681538.19 96.25 -599776.28 5678733.61 97.50 -599776.33 5677064.50 101.25 -599776.38 5687369.98 95.00 -599776.55 5686853.65 95.00 -599777.17 5678982.44 97.50 -599778.34 5678350.67 98.75 -599778.60 5681111.20 98.75 -599778.62 5681094.38 99.00 -599778.83 5676804.56 101.25 -599778.88 5681034.92 97.50 -599778.93 5681060.18 97.50 -599779.13 5679736.29 97.50 -599779.30 5680874.64 97.50 -599779.38 5676562.72 101.25 -599779.56 5679391.41 100.00 -599779.65 5677540.69 98.75 -599779.77 5676672.68 101.25 -599779.77 5681326.66 97.50 -599780.03 5679451.90 98.75 -599780.17 5681529.06 96.25 -599780.20 5686862.95 95.00 -599780.32 5678319.85 98.75 -599780.55 5681544.06 97.50 -599780.93 5677465.27 98.50 -599780.94 5677244.10 100.00 -599781.66 5677830.72 98.75 -599781.68 5680458.05 97.50 -599781.96 5680467.90 97.50 -599782.06 5687284.12 95.00 -599782.26 5681365.86 97.50 -599782.53 5679192.75 98.75 -599782.61 5681074.91 98.75 -599782.78 5681317.27 97.50 -599782.86 5679382.62 100.00 -599783.25 5676871.72 101.25 -599783.43 5681519.62 96.25 -599784.01 5687376.43 95.00 -599784.08 5680866.09 97.50 -599784.14 5678727.52 97.50 -599784.52 5686871.94 95.00 -599784.71 5681535.01 97.50 -599785.14 5681307.61 97.50 -599785.27 5676554.66 101.25 -599785.32 5677399.29 98.75 -599785.39 5680449.12 97.50 -599785.41 5677068.40 101.25 -599785.48 5680476.91 97.50 -599786.28 5681337.37 97.00 -599786.62 5681510.16 96.25 -599786.68 5678356.14 98.75 -599786.87 5676810.48 101.25 -599786.92 5678980.67 97.50 -599787.04 5681357.32 97.50 -599787.16 5680856.66 97.50 -599787.30 5680439.52 97.50 -599787.48 5679730.88 97.50 -599787.57 5681030.14 97.50 -599787.86 5681525.55 97.50 -599788.11 5679394.11 100.00 -599788.32 5681109.08 98.75 -599788.40 5686881.01 95.00 -599788.79 5681058.87 97.50 -599788.80 5680429.78 97.50 -599788.87 5677537.19 98.75 -599789.00 5680846.87 97.50 -599789.34 5680419.96 97.50 -599789.39 5687023.60 95.00 -599789.51 5681298.70 97.50 -599789.53 5680410.11 97.50 -599789.71 5679449.55 98.75 -599789.72 5676671.72 101.25 -599789.77 5680836.94 97.50 -599789.90 5686890.89 95.00 -599789.97 5678317.27 98.75 -599789.99 5677825.20 98.75 -599790.01 5687013.67 95.00 -599790.09 5676864.47 101.25 -599790.51 5681219.25 98.75 -599790.56 5681348.03 97.50 -599790.69 5677241.96 100.00 -599790.75 5681210.86 98.75 -599790.79 5679376.96 100.00 -599791.00 5676546.47 101.25 -599791.26 5680400.47 97.50 -599791.39 5686900.76 95.00 -599791.40 5687383.13 95.00 -599791.51 5681516.27 97.50 -599791.51 5687286.55 95.00 -599791.56 5679188.53 98.75 -599791.61 5681501.51 96.25 -599791.74 5680484.03 97.50 -599792.07 5678721.54 97.50 -599792.20 5686984.42 95.00 -599792.25 5686994.26 95.00 -599792.57 5681075.04 98.75 -599792.57 5676818.60 101.25 -599792.75 5687004.06 95.00 -599793.19 5686910.59 95.00 -599793.50 5687032.49 95.00 -599793.74 5680390.94 97.50 -599794.10 5681289.89 97.50 -599794.41 5686974.77 95.00 -599794.79 5678361.96 98.75 -599794.83 5677071.53 101.25 -599795.13 5681339.20 97.50 -599795.14 5677400.25 98.75 -599795.74 5681507.27 97.50 -599795.80 5676856.35 101.25 -599795.88 5679725.56 97.50 -599795.94 5676537.77 101.25 -599796.39 5681224.89 98.75 -599796.51 5681025.76 97.50 -599796.63 5681492.87 96.25 -599796.64 5676827.62 101.25 -599796.80 5678979.60 97.50 -599797.23 5681204.46 98.75 -599797.30 5679391.08 100.00 -599797.43 5677532.36 98.75 -599797.50 5681105.24 98.75 -599797.92 5678111.74 98.75 -599798.02 5686919.11 95.00 -599798.08 5687390.56 95.00 -599798.25 5680382.64 97.50 -599798.31 5677819.67 98.75 -599798.60 5678714.14 97.50 -599798.61 5681060.30 97.50 -599798.74 5678101.81 98.75 -599798.83 5678603.33 97.50 -599799.06 5676847.05 101.25 -599799.14 5679371.99 100.00 -599799.32 5678593.40 97.50 -599799.35 5679380.57 100.25 -599799.38 5676673.93 101.25 -599799.40 5679447.20 98.75 -599799.53 5678121.42 98.75 -599799.63 5678314.69 98.75 -599799.65 5676837.13 101.25 -599799.68 5679182.83 98.75 -599799.71 5681330.37 97.50 -599799.98 5678092.00 98.75 -599800.12 5681212.24 99.00 -599800.45 5677239.80 100.00 -599800.70 5681498.61 97.50 -599801.08 5680483.89 97.50 -599801.11 5678583.63 97.50 -599801.14 5681079.32 98.75 -599801.38 5687288.05 95.00 -599801.43 5686967.65 95.00 -599801.65 5681484.23 96.25 -599802.00 5678131.05 98.75 -599802.31 5687035.94 95.00 -599802.31 5678170.42 98.75 -599802.31 5678180.38 98.75 -599802.54 5681286.64 97.50 -599802.55 5678160.48 98.75 -599802.90 5678367.78 98.75 -599802.95 5678611.96 97.50 -599803.56 5676531.66 101.25 -599803.64 5678140.88 98.75 -599803.70 5681321.29 97.50 -599803.78 5681097.73 98.75 -599803.99 5678705.92 97.50 -599804.39 5679720.41 97.50 -599804.46 5678150.70 98.75 -599804.46 5678574.28 97.50 -599804.51 5678083.12 98.75 -599804.59 5681199.11 98.75 -599804.80 5677071.89 101.25 -599804.97 5677401.14 98.75 -599805.15 5681222.64 98.75 -599805.19 5681087.90 98.75 -599805.56 5681489.90 97.50 -599805.57 5680376.05 97.50 -599805.75 5677527.05 98.75 -599805.93 5687396.68 95.00 -599805.93 5678189.65 98.75 -599805.96 5686924.94 95.00 -599806.07 5681023.64 97.50 -599806.12 5679386.95 100.00 -599806.64 5677814.15 98.75 -599806.67 5681475.60 96.25 -599806.68 5678978.53 97.50 -599806.74 5678696.37 97.50 -599806.74 5676680.54 101.25 -599807.04 5681311.92 97.50 -599807.52 5679176.67 98.75 -599807.66 5679367.28 100.00 -599807.96 5681063.62 97.50 -599808.39 5678620.28 97.50 -599808.57 5681302.18 97.50 -599808.65 5680478.68 97.50 -599808.86 5686960.99 95.00 -599808.96 5678686.68 97.50 -599809.07 5686933.89 95.00 -599809.08 5679444.85 98.75 -599809.27 5681292.27 97.50 -599809.28 5678312.11 98.75 -599809.64 5678198.90 98.75 -599810.07 5681215.03 98.75 -599810.35 5677238.50 100.00 -599810.42 5681481.19 97.50 -599810.89 5678075.55 98.75 -599810.98 5686943.70 95.00 -599811.00 5678373.59 98.75 -599811.18 5678677.00 97.50 -599811.25 5678567.01 97.50 -599811.28 5687289.39 95.00 -599811.72 5681466.98 96.25 -599812.20 5687036.67 95.00 -599812.29 5676526.80 101.25 -599812.75 5681198.35 98.75 -599812.98 5679715.40 97.50 -599813.18 5686953.44 95.00 -599813.20 5680369.82 97.50 -599813.23 5678628.96 97.50 -599813.44 5676687.88 101.25 -599813.65 5678667.38 97.50 -599813.70 5677521.20 98.75 -599813.77 5681206.78 98.75 -599814.04 5677068.96 101.25 -599814.26 5681071.33 97.50 -599814.34 5677404.10 98.75 -599814.44 5680470.71 97.50 -599814.83 5687400.70 95.00 -599814.86 5679384.97 100.00 -599815.35 5679170.52 98.75 -599815.46 5677809.48 98.75 -599816.01 5681022.91 97.50 -599816.03 5681472.97 97.50 -599816.34 5678206.14 98.75 -599816.37 5678638.36 97.50 -599816.51 5678977.22 97.50 -599816.66 5678657.91 97.50 -599816.80 5681458.38 96.25 -599817.12 5679366.60 100.00 -599817.33 5681080.38 97.50 -599817.66 5678648.05 97.50 -599817.72 5678559.47 97.50 -599817.73 5678068.31 98.75 -599818.24 5681090.30 97.50 -599818.43 5676696.54 101.25 -599818.77 5679442.49 98.75 -599818.96 5678309.64 98.75 -599819.50 5678378.82 98.75 -599820.11 5681099.81 97.50 -599820.12 5677061.38 101.25 -599820.18 5677003.46 101.25 -599820.26 5677237.20 100.00 -599820.34 5680462.82 97.50 -599820.81 5687291.90 95.00 -599820.91 5680363.68 97.50 -599821.29 5677013.26 101.25 -599821.36 5676522.71 101.25 -599821.44 5676993.56 101.25 -599821.46 5679710.20 97.50 -599821.72 5677515.47 98.75 -599821.88 5681449.77 96.25 -599822.03 5681465.01 97.50 -599822.19 5687036.44 95.00 -599822.86 5676705.44 101.25 -599823.10 5679373.15 100.00 -599823.41 5677023.01 101.25 -599823.42 5677407.93 98.75 -599823.51 5678551.37 97.50 -599823.62 5676983.83 101.25 -599823.83 5678212.28 98.75 -599823.92 5679382.57 100.00 -599824.31 5677052.39 101.25 -599824.42 5677805.07 98.75 -599824.63 5687402.61 95.00 -599824.68 5679167.13 98.75 -599825.41 5680454.51 97.50 -599825.45 5676715.10 101.25 -599825.51 5677032.77 101.25 -599825.89 5681023.88 97.50 -599825.94 5678974.07 97.50 -599826.06 5677042.74 101.25 -599826.79 5681106.56 97.50 -599827.23 5681441.36 96.25 -599827.28 5678067.14 98.75 -599827.79 5676724.81 101.25 -599828.03 5678384.00 98.75 -599828.07 5676975.07 101.25 -599828.24 5680445.07 97.50 -599828.36 5681213.39 97.50 -599828.43 5678542.77 97.50 -599828.44 5681457.37 97.50 -599828.45 5679440.14 98.75 -599828.62 5680357.54 97.50 -599828.66 5678307.22 98.75 -599828.76 5681524.39 97.50 -599828.79 5681307.41 97.50 -599829.20 5681203.80 97.50 -599829.35 5681297.48 97.50 -599829.62 5676734.64 101.25 -599829.70 5681257.73 97.50 -599829.70 5679704.64 97.50 -599829.71 5687296.45 95.00 -599829.91 5681287.55 97.50 -599829.93 5677509.99 98.75 -599830.02 5681267.67 97.50 -599830.17 5680435.44 97.50 -599830.18 5677236.06 100.00 -599830.33 5681277.62 97.50 -599830.57 5681317.20 97.50 -599830.64 5677414.25 98.75 -599830.72 5676911.87 101.25 -599830.81 5681221.80 97.50 -599831.19 5676520.89 101.25 -599831.32 5676921.82 101.25 -599831.37 5676744.48 101.25 -599832.07 5681053.26 97.00 -599832.18 5687036.22 95.00 -599832.19 5681532.07 97.50 -599832.29 5680425.89 97.50 -599832.32 5678533.62 97.50 -599832.98 5681194.99 97.50 -599833.39 5677800.66 98.75 -599833.43 5681433.53 96.25 -599833.47 5681326.67 97.50 -599833.56 5676902.29 101.25 -599833.78 5678212.87 98.75 -599833.87 5681516.44 97.50 -599834.03 5676753.98 101.25 -599834.19 5680386.61 98.00 -599834.28 5679164.53 98.75 -599834.44 5687404.52 95.00 -599834.82 5681449.71 97.50 -599835.03 5676931.09 101.25 -599835.04 5681250.98 97.50 -599835.44 5678971.17 97.50 -599835.51 5678071.96 98.75 -599835.57 5681025.91 97.50 -599835.82 5678524.30 97.50 -599835.95 5680416.79 97.50 -599836.39 5681305.98 96.25 -599836.58 5677422.12 98.75 -599836.60 5681186.02 97.50 -599836.65 5681107.12 97.50 -599836.93 5680352.25 97.50 -599837.02 5678387.99 98.75 -599837.19 5676974.05 101.25 -599837.67 5679436.52 98.75 -599837.77 5687302.16 95.00 -599837.91 5679699.03 97.50 -599838.22 5676893.60 101.25 -599838.35 5678304.80 98.75 -599838.85 5678171.00 99.00 -599839.19 5677507.17 98.75 -599839.20 5676762.54 101.25 -599839.24 5681176.71 97.50 -599839.29 5681508.56 97.50 -599839.64 5681425.70 96.25 -599839.70 5676939.89 101.25 -599839.73 5681333.94 97.50 -599839.74 5678515.17 97.50 -599839.79 5681167.00 97.50 -599840.16 5677235.55 100.00 -599840.34 5681157.29 97.50 -599840.39 5681221.84 97.50 -599840.53 5681314.32 96.25 -599840.55 5681530.91 97.50 -599840.69 5681441.65 97.50 -599840.79 5681300.52 96.25 -599840.95 5676518.77 101.25 -599842.36 5677796.26 98.75 -599842.55 5680344.21 97.50 -599842.60 5677429.94 98.75 -599842.60 5681147.83 97.50 -599842.97 5681255.68 97.50 -599843.25 5678078.23 98.75 -599843.71 5678212.30 98.75 -599843.84 5687407.89 95.00 -599844.08 5679162.75 98.75 -599844.36 5676979.92 101.25 -599844.48 5681213.20 97.50 -599844.48 5676771.02 101.25 -599844.61 5678506.54 97.50 -599844.70 5676886.09 101.25 -599844.71 5681500.67 97.50 -599844.76 5680412.38 97.50 -599844.81 5681029.57 97.50 -599844.86 5687309.19 95.00 -599844.94 5676948.41 101.25 -599845.00 5678968.48 97.50 -599845.03 5681138.44 97.50 -599845.82 5681417.86 96.25 -599845.85 5679693.03 97.50 -599845.95 5681104.76 97.50 -599846.59 5679432.06 98.75 -599846.62 5681433.63 97.50 -599846.83 5678389.81 98.75 -599847.03 5681264.68 97.50 -599847.16 5681203.85 97.50 -599847.19 5676989.49 101.25 -599847.32 5681524.16 97.50 -599847.37 5681320.82 96.25 -599848.01 5680336.02 97.50 -599848.04 5678302.37 98.75 -599848.20 5678086.88 98.75 -599848.30 5681305.82 96.25 -599848.45 5681335.36 97.50 -599848.67 5677437.72 98.75 -599848.69 5681274.48 97.50 -599848.95 5687318.30 95.00 -599848.95 5677505.76 98.75 -599849.49 5676957.29 101.25 -599849.64 5676999.16 101.25 -599849.76 5681194.48 97.50 -599849.89 5676779.43 101.25 -599849.96 5681130.06 97.50 -599850.01 5681284.33 97.50 -599850.09 5677234.73 100.00 -599850.54 5676515.97 101.25 -599851.09 5681152.51 97.00 -599851.36 5681294.05 97.50 -599851.37 5678499.51 97.50 -599851.49 5681493.96 97.50 -599851.73 5681409.80 96.25 -599851.86 5677793.17 98.75 -599852.10 5677008.84 101.25 -599852.34 5680406.11 97.50 -599852.49 5676879.82 101.25 -599852.51 5687412.74 95.00 -599852.62 5681185.19 97.50 -599852.68 5678208.82 98.75 -599852.79 5681425.79 97.50 -599852.93 5687327.46 95.00 -599853.16 5678095.53 98.75 -599853.18 5681314.68 96.00 -599853.38 5681516.76 97.50 -599853.50 5679686.72 97.50 -599853.65 5681241.65 97.50 -599853.69 5679163.97 98.75 -599854.04 5676966.17 101.25 -599854.09 5681099.01 97.50 -599854.17 5681504.02 97.10 -599854.67 5681029.10 97.50 -599854.80 5677445.46 98.75 -599854.92 5678967.93 97.50 -599855.04 5677018.33 101.25 -599855.17 5680329.37 97.50 -599855.44 5679427.48 98.75 -599855.63 5681175.94 97.50 -599856.23 5681321.92 96.25 -599856.31 5681123.02 97.50 -599856.52 5676786.87 101.25 -599856.64 5678391.63 98.75 -599857.31 5681331.16 97.50 -599857.40 5681305.71 96.25 -599857.64 5681401.75 96.25 -599857.72 5687335.96 95.00 -599857.74 5678299.95 98.75 -599858.11 5678104.17 98.75 -599858.32 5681233.22 97.50 -599858.49 5681487.44 97.50 -599858.55 5681293.94 97.50 -599858.76 5681063.21 97.50 -599858.76 5677504.65 98.75 -599858.85 5681166.76 97.50 -599859.01 5681417.99 97.50 -599859.37 5676974.59 101.25 -599859.57 5677027.23 101.25 -599859.72 5676512.08 101.25 -599859.81 5677232.41 100.00 -599859.83 5680399.71 97.50 -599860.28 5676873.55 101.25 -599860.30 5681244.74 97.50 -599860.41 5679679.56 97.50 -599860.44 5681510.31 97.50 -599860.49 5678202.69 98.75 -599860.66 5681091.68 97.50 -599860.75 5681053.45 97.50 -599860.86 5687418.23 95.00 -599861.22 5678500.44 97.50 -599861.34 5676956.04 100.00 -599861.36 5677790.08 98.75 -599861.46 5681072.80 97.50 -599861.53 5677452.66 98.75 -599861.76 5679925.59 97.50 -599861.84 5679916.12 97.50 -599862.21 5681157.64 97.50 -599862.68 5678113.02 98.75 -599862.98 5676946.36 100.00 -599863.13 5681082.53 97.50 -599863.16 5679167.08 98.75 -599863.29 5680323.85 97.50 -599863.54 5679906.47 97.50 -599863.83 5681025.18 97.50 -599863.96 5681394.05 96.25 -599864.09 5681316.90 96.25 -599864.12 5679422.59 98.75 -599864.19 5677036.08 101.25 -599864.32 5676793.04 101.25 -599864.44 5676965.40 100.00 -599864.47 5681299.71 96.25 -599864.81 5678968.08 97.50 -599864.82 5681121.28 97.50 -599864.82 5681286.24 97.50 -599864.90 5676982.89 101.25 -599864.98 5681324.85 97.50 -599865.17 5681226.18 97.50 -599865.49 5679896.89 97.50 -599865.51 5681410.42 97.50 -599865.54 5681148.52 97.50 -599865.72 5681481.20 97.50 -599865.84 5687341.78 95.00 -599866.59 5678392.13 98.75 -599866.96 5681138.90 97.50 -599867.10 5678121.95 98.75 -599867.31 5680393.31 97.50 -599867.33 5678297.17 98.75 -599867.41 5681129.21 97.50 -599867.47 5678195.58 98.75 -599867.51 5681503.86 97.50 -599867.67 5676937.78 100.00 -599867.94 5676506.48 101.25 -599868.04 5676867.26 101.25 -599868.10 5681046.93 97.50 -599868.32 5677459.82 98.75 -599868.39 5677502.59 98.75 -599868.47 5679887.56 97.50 -599868.49 5679673.94 97.50 -599868.50 5681239.34 97.50 -599868.74 5681277.10 97.50 -599868.86 5677044.90 101.25 -599869.02 5679930.00 97.50 -599869.38 5676974.05 100.00 -599869.40 5678505.41 97.50 -599869.48 5677229.93 100.00 -599869.63 5687422.91 95.00 -599870.04 5676991.45 101.25 -599870.33 5681309.81 96.25 -599870.84 5681018.41 97.50 -599870.92 5677787.18 98.75 -599870.99 5681386.95 96.25 -599871.44 5678130.92 98.75 -599871.45 5679878.23 97.50 -599871.98 5681219.10 97.50 -599872.00 5681402.86 97.50 -599872.07 5680319.46 97.50 -599872.14 5679171.07 98.75 -599872.26 5681318.07 97.50 -599872.74 5681268.00 97.50 -599872.80 5679417.69 98.75 -599872.84 5677000.95 101.25 -599872.89 5678573.05 97.50 -599872.93 5681300.93 96.25 -599872.98 5680385.44 97.50 -599873.05 5678583.00 97.50 -599873.06 5676797.81 101.25 -599873.18 5678563.12 97.50 -599873.37 5678187.75 98.75 -599873.45 5677053.76 101.25 -599873.51 5681475.64 97.50 -599873.78 5676929.89 100.00 -599874.09 5681496.96 97.50 -599874.32 5678513.89 97.50 -599874.42 5679868.91 97.50 -599874.53 5678553.26 97.50 -599874.61 5678969.68 97.50 -599874.69 5676499.11 101.25 -599874.77 5687346.05 95.00 -599875.16 5677466.93 98.75 -599875.21 5676982.16 100.00 -599875.22 5678140.13 98.75 -599875.47 5678543.36 97.50 -599875.50 5677010.55 101.25 -599875.70 5678592.58 97.50 -599875.81 5676860.96 101.25 -599875.87 5678533.42 97.50 -599876.10 5678523.47 97.50 -599876.11 5681233.23 97.50 -599876.27 5681223.09 97.20 -599876.38 5681010.22 97.50 -599876.53 5678392.71 98.75 -599876.88 5678294.24 98.75 -599876.95 5678178.48 98.75 -599877.05 5681042.55 97.50 -599877.20 5679669.13 97.50 -599877.20 5677498.39 98.75 -599877.40 5679859.58 97.50 -599877.53 5680376.71 97.50 -599877.56 5679179.44 98.75 -599877.60 5679926.83 97.50 -599878.01 5681259.84 97.50 -599878.01 5681379.84 96.25 -599878.03 5676920.99 100.00 -599878.39 5677020.09 101.25 -599878.50 5681395.29 97.50 -599878.63 5681211.88 97.50 -599878.88 5677062.10 101.25 -599878.89 5678149.38 98.75 -599878.97 5687426.34 95.00 -599879.12 5677227.28 100.00 -599879.12 5681310.87 97.50 -599879.40 5678168.82 98.75 -599879.96 5681489.41 97.50 -599880.00 5677029.94 101.25 -599880.25 5676990.71 100.00 -599880.37 5678601.19 97.50 -599880.47 5676911.33 100.00 -599880.51 5677784.38 98.75 -599880.57 5679850.32 97.50 -599880.78 5681001.30 97.50 -599880.79 5676901.34 100.00 -599880.92 5678159.14 98.75 -599881.44 5676491.73 101.25 -599881.46 5680317.37 97.50 -599881.48 5679412.79 98.75 -599881.56 5681471.18 97.50 -599881.75 5680367.80 97.50 -599881.76 5676891.42 100.00 -599881.82 5677474.22 98.75 -599882.16 5676801.96 101.25 -599882.84 5681226.08 97.50 -599882.92 5679187.84 98.75 -599883.12 5680524.52 97.50 -599883.12 5680534.29 97.50 -599883.26 5678974.00 97.50 -599883.46 5676881.58 100.00 -599883.59 5676854.69 101.25 -599883.63 5681302.05 97.50 -599883.76 5679841.06 97.50 -599883.94 5676999.99 100.00 -599884.17 5687349.42 95.00 -599884.29 5679919.99 97.50 -599884.39 5680358.47 97.50 -599884.41 5677491.81 98.75 -599884.43 5677038.69 101.25 -599884.54 5681372.28 96.25 -599884.60 5681387.40 97.50 -599884.63 5681204.11 97.50 -599884.68 5676942.62 98.75 -599884.85 5677070.10 101.25 -599884.88 5680543.84 97.50 -599885.22 5680515.13 97.50 -599885.35 5676952.57 98.75 -599885.81 5681253.70 97.50 -599885.96 5681481.96 97.50 -599885.99 5681038.15 97.50 -599886.03 5678609.36 97.50 -599886.04 5680168.80 96.25 -599886.08 5679664.65 97.50 -599886.21 5677482.51 98.75 -599886.40 5678394.19 98.75 -599886.43 5678291.30 98.75 -599886.58 5681563.50 97.50 -599886.65 5680993.25 97.50 -599886.88 5679831.78 97.50 -599886.89 5680349.04 97.50 -599887.25 5680553.32 97.50 -599887.63 5677009.27 100.00 -599887.70 5681292.99 97.50 -599887.71 5676962.28 98.75 -599887.92 5676484.12 101.25 -599888.13 5679196.33 98.75 -599888.45 5681553.74 97.50 -599888.46 5681218.02 97.50 -599888.57 5680177.16 96.25 -599888.79 5677047.60 101.25 -599888.80 5676933.83 98.75 -599888.88 5687427.51 95.00 -599888.88 5677225.22 100.00 -599888.96 5677019.15 100.00 -599889.03 5679911.42 97.50 -599889.32 5680506.34 97.50 -599889.58 5680321.93 97.50 -599889.78 5681474.43 97.50 -599889.88 5677002.51 100.00 -599889.91 5679822.47 97.50 -599890.06 5676971.99 98.75 -599890.11 5677781.59 98.75 -599890.16 5677029.05 100.00 -599890.22 5681543.96 97.50 -599890.23 5680562.54 97.50 -599890.37 5680339.83 97.50 -599890.50 5681196.23 97.50 -599890.54 5681283.46 97.50 -599890.61 5681379.44 97.50 -599890.67 5676847.79 101.25 -599890.82 5678618.02 97.50 -599890.88 5679409.74 98.75 -599891.05 5681364.70 96.25 -599891.19 5680160.31 96.25 -599891.20 5676993.78 100.00 -599891.20 5678979.98 97.50 -599891.42 5676805.73 101.25 -599891.56 5676881.55 100.00 -599891.83 5687355.79 95.00 -599892.10 5677497.14 100.00 -599892.20 5677011.31 100.00 -599892.23 5677056.97 101.25 -599892.78 5678647.32 97.50 -599892.84 5680985.46 97.50 -599892.95 5679813.16 97.50 -599893.02 5681534.55 97.50 -599893.04 5679204.99 98.75 -599893.23 5677074.79 101.25 -599893.36 5678627.64 97.50 -599893.41 5680330.46 97.50 -599893.43 5681273.95 97.50 -599893.46 5676981.34 98.75 -599893.65 5679902.79 97.50 -599893.77 5681031.95 97.50 -599893.83 5678637.43 97.50 -599894.07 5681209.96 97.50 -599894.17 5678657.16 97.50 -599894.19 5677038.19 100.00 -599894.30 5676476.43 101.25 -599894.39 5681248.67 97.50 -599894.98 5680498.39 97.50 -599895.21 5677019.91 100.00 -599895.23 5679660.84 97.50 -599895.32 5680570.87 97.50 -599895.57 5677066.23 101.25 -599895.73 5681187.96 97.50 -599895.92 5677488.40 100.00 -599895.98 5678288.37 98.75 -599896.02 5676839.34 101.25 -599896.27 5678395.67 98.75 -599896.37 5678666.76 97.50 -599896.40 5680151.86 96.25 -599896.47 5676997.88 100.00 -599896.69 5681371.54 97.50 -599896.70 5676937.34 98.75 -599897.03 5679214.12 98.75 -599897.49 5679804.51 97.50 -599897.55 5681357.12 96.25 -599897.64 5676990.41 98.75 -599897.69 5680176.27 96.25 -599897.76 5681525.82 97.50 -599897.95 5681265.50 97.50 -599898.06 5677012.13 100.50 -599898.14 5676812.50 101.25 -599898.23 5679894.14 97.50 -599898.24 5677047.32 100.00 -599898.57 5687363.12 95.00 -599898.58 5676886.25 100.00 -599898.58 5681201.28 97.50 -599898.68 5687426.75 95.00 -599898.72 5677223.50 100.00 -599899.12 5677028.11 100.00 -599899.44 5676896.20 100.00 -599899.48 5677778.20 98.75 -599899.75 5677479.65 100.00 -599899.80 5680978.48 97.50 -599900.19 5681179.21 97.50 -599900.26 5681024.39 97.50 -599900.26 5677006.11 100.00 -599900.31 5676906.16 100.00 -599900.52 5680579.14 97.50 -599900.57 5676946.54 98.75 -599900.65 5680490.43 97.50 -599900.66 5679407.87 98.75 -599900.77 5676468.98 101.25 -599901.03 5679223.25 98.75 -599901.16 5676830.77 101.25 -599901.23 5678675.45 97.50 -599901.38 5676916.09 100.00 -599901.54 5677498.53 100.00 -599901.66 5680143.45 96.25 -599902.28 5679795.97 97.50 -599902.28 5676999.23 98.75 -599902.29 5677056.46 100.00 -599902.42 5681014.76 97.50 -599902.47 5676926.02 100.00 -599902.48 5681192.27 97.50 -599902.93 5677014.81 100.00 -599903.05 5676821.08 101.25 -599903.20 5681517.65 97.50 -599903.21 5681363.99 97.50 -599903.57 5677470.91 100.00 -599903.61 5679885.95 97.50 -599903.78 5676935.92 100.00 -599903.96 5681246.37 97.50 -599903.98 5680168.83 96.25 -599904.09 5681349.57 96.25 -599904.29 5687371.10 95.00 -599904.37 5681005.00 97.50 -599904.77 5679658.02 97.50 -599904.82 5687381.08 95.00 -599904.93 5676955.53 98.75 -599905.17 5677023.63 100.00 -599905.30 5677032.46 100.00 -599905.45 5679232.17 98.75 -599905.47 5687419.54 95.00 -599905.53 5678285.44 98.75 -599905.59 5687391.04 95.00 -599905.78 5681183.02 97.50 -599905.82 5680587.35 97.50 -599905.85 5681259.46 97.50 -599906.10 5678397.36 98.75 -599906.22 5681174.11 97.50 -599906.35 5680482.50 97.50 -599906.78 5680995.34 97.50 -599907.35 5677065.04 100.00 -599907.37 5687400.84 95.00 -599907.38 5676944.56 100.00 -599907.40 5677462.16 100.00 -599907.42 5680135.37 96.25 -599907.51 5679787.72 97.50 -599907.62 5677007.68 98.75 -599908.20 5678682.28 97.50 -599908.24 5680973.19 97.50 -599908.55 5677774.02 98.75 -599908.63 5677223.01 100.00 -599908.74 5676964.75 98.75 -599908.99 5679877.77 97.50 -599909.46 5680160.58 96.25 -599909.74 5687410.50 95.00 -599909.98 5676465.15 101.25 -599910.35 5681357.06 97.50 -599910.39 5679240.82 98.75 -599910.42 5681251.70 97.50 -599910.52 5679406.43 98.75 -599910.68 5681511.10 97.50 -599910.74 5680146.20 96.00 -599910.76 5681342.14 96.25 -599910.97 5677498.97 100.00 -599911.28 5677453.44 100.00 -599911.51 5680986.82 97.50 -599911.82 5676974.25 98.75 -599912.08 5680474.59 97.50 -599912.83 5676938.70 100.00 -599912.85 5677073.38 100.00 -599913.07 5677016.05 98.75 -599913.31 5676918.75 100.00 -599913.38 5680127.43 96.25 -599913.50 5679779.98 97.50 -599913.52 5676928.73 100.00 -599913.56 5679653.63 97.50 -599913.58 5679824.35 97.75 -599914.36 5679869.59 97.50 -599914.46 5676909.10 100.00 -599915.12 5678282.63 98.75 -599915.34 5677444.80 100.00 -599915.67 5679249.27 98.75 -599915.84 5676983.28 98.75 -599915.85 5678399.50 98.75 -599916.26 5680153.34 96.25 -599916.57 5680967.73 97.50 -599916.60 5678687.56 97.50 -599916.75 5680534.98 98.75 -599916.92 5680525.43 98.75 -599917.62 5677769.83 98.75 -599917.66 5681350.31 97.50 -599917.88 5680544.58 98.75 -599917.97 5681335.23 96.25 -599918.30 5680467.11 97.50 -599918.46 5677224.32 100.00 -599918.49 5681504.98 97.50 -599918.49 5677081.61 100.00 -599918.59 5680119.00 96.25 -599918.59 5677024.35 98.75 -599918.75 5680980.04 97.50 -599919.22 5679402.37 98.75 -599919.48 5680842.88 97.50 -599919.49 5679772.23 97.50 -599919.68 5676463.08 101.25 -599919.74 5679861.41 97.50 -599920.06 5680516.25 98.75 -599920.39 5677497.42 100.00 -599920.55 5680553.90 98.75 -599921.57 5676907.70 100.00 -599921.68 5676991.39 98.75 -599921.75 5679647.99 97.50 -599921.79 5679257.09 98.75 -599921.98 5680145.47 96.25 -599922.34 5677033.62 98.75 -599922.66 5677446.85 100.00 -599922.94 5680834.51 97.50 -599923.11 5681420.33 97.50 -599923.29 5676917.38 100.00 -599923.44 5681429.41 97.50 -599923.48 5680110.36 96.25 -599923.96 5676927.35 100.00 -599923.98 5681342.59 97.50 -599924.53 5676937.32 100.00 -599924.65 5680507.82 98.75 -599924.72 5678279.86 98.75 -599924.74 5677089.41 100.00 -599924.91 5679764.09 97.50 -599924.97 5681328.14 96.25 -599925.03 5680136.03 96.25 -599925.06 5676947.30 100.00 -599925.12 5679853.22 97.50 -599925.43 5680460.43 97.50 -599925.52 5680972.94 97.50 -599925.60 5678401.63 98.75 -599925.65 5680964.52 97.50 -599925.74 5676957.24 100.00 -599925.87 5677042.96 98.75 -599926.31 5679395.46 98.75 -599926.53 5678688.14 97.50 -599926.57 5681499.21 97.50 -599926.98 5677766.41 98.75 -599927.15 5676999.74 98.75 -599927.56 5680844.94 97.50 -599927.60 5681411.59 97.50 -599927.64 5677228.04 100.00 -599927.91 5681213.92 96.25 -599928.36 5680126.67 96.25 -599928.53 5679264.43 98.75 -599928.65 5681204.14 96.25 -599928.66 5681223.88 96.25 -599928.87 5676966.73 100.00 -599929.55 5677052.24 98.75 -599929.61 5679641.93 97.50 -599929.65 5676462.80 101.25 -599929.72 5677495.44 100.00 -599929.80 5680102.70 96.25 -599930.17 5679755.82 97.50 -599930.25 5680499.90 98.75 -599930.30 5681334.87 97.50 -599930.34 5681233.71 96.25 -599930.51 5681319.83 96.25 -599930.55 5679845.08 97.50 -599930.80 5680828.63 97.50 -599930.86 5677451.74 100.00 -599930.98 5677097.21 100.00 -599930.99 5681435.19 97.50 -599931.22 5677479.26 100.25 -599931.53 5680452.89 97.50 -599931.71 5681426.12 96.25 -599931.81 5681194.66 96.25 -599931.99 5676976.22 100.00 -599932.25 5679387.46 98.75 -599932.26 5680117.58 96.25 -599932.34 5681243.50 96.25 -599932.50 5677008.18 98.75 -599932.90 5681416.79 96.25 -599933.39 5681210.83 97.50 -599933.70 5681403.85 97.50 -599934.20 5681200.99 97.50 -599934.30 5681220.76 97.50 -599934.30 5677061.03 98.75 -599934.32 5678277.08 98.75 -599934.39 5681253.27 96.25 -599934.50 5681185.05 96.25 -599934.56 5676985.88 100.00 -599934.70 5677235.10 100.00 -599935.02 5681494.02 97.50 -599935.23 5681230.69 97.50 -599935.34 5681311.16 96.25 -599935.46 5679271.59 98.75 -599935.46 5678402.93 98.75 -599935.47 5681326.47 97.50 -599935.79 5681240.65 97.50 -599936.11 5680095.05 96.25 -599936.26 5679837.12 97.50 -599936.42 5677017.36 98.75 -599936.44 5681191.27 97.50 -599936.47 5678688.70 97.50 -599936.59 5677763.70 98.75 -599936.78 5680842.09 97.50 -599936.79 5681262.97 96.25 -599936.84 5680444.69 97.50 -599936.84 5681407.95 96.25 -599936.90 5679635.17 97.50 -599936.96 5680493.05 98.75 -599937.08 5676995.54 100.00 -599937.14 5681175.42 96.25 -599937.23 5677105.01 100.00 -599937.28 5680109.02 96.25 -599937.73 5681250.31 97.50 -599937.73 5679749.75 97.50 -599937.86 5679379.22 98.75 -599938.73 5681301.76 96.25 -599938.86 5677456.95 100.00 -599938.88 5677492.82 100.00 -599939.05 5677069.82 98.75 -599939.08 5677005.33 100.00 -599939.30 5681317.26 97.50 -599939.40 5681272.61 96.25 -599939.58 5681395.94 97.50 -599939.63 5676463.45 101.25 -599939.70 5680824.27 97.50 -599939.75 5681181.91 97.50 -599939.95 5681428.56 96.25 -599940.18 5677026.62 98.75 -599940.29 5681436.86 97.50 -599940.37 5677243.19 100.00 -599941.14 5681259.68 97.50 -599941.25 5681282.38 96.25 -599941.58 5681166.47 96.25 -599941.95 5681292.34 96.25 -599941.97 5679829.17 97.50 -599942.15 5680436.49 97.50 -599942.43 5679278.70 98.75 -599942.45 5681399.91 96.25 -599942.47 5680087.43 96.25 -599943.06 5681308.02 97.50 -599943.41 5679370.94 98.75 -599943.72 5681172.76 97.50 -599943.77 5677078.63 98.75 -599943.86 5681489.49 97.50 -599943.87 5677252.45 100.00 -599943.88 5677112.45 100.00 -599943.92 5678274.31 98.75 -599943.99 5677035.85 98.75 -599944.20 5679628.41 97.50 -599944.21 5681269.17 97.50 -599944.54 5680835.94 97.50 -599944.66 5680487.15 98.75 -599944.82 5679096.69 97.25 -599944.84 5680102.62 96.25 -599945.18 5677010.83 100.00 -599945.22 5681387.86 97.50 -599945.42 5678403.49 98.75 -599945.70 5679744.05 97.50 -599945.76 5680827.29 97.25 -599945.90 5677262.23 100.00 -599946.02 5681157.52 96.25 -599946.26 5681298.64 97.50 -599946.27 5677761.21 98.75 -599946.32 5678687.32 97.50 -599946.40 5681278.90 97.50 -599946.49 5679820.53 97.50 -599946.50 5677462.65 100.00 -599947.20 5677488.32 100.00 -599947.26 5681288.72 97.50 -599947.66 5677272.06 100.00 -599947.79 5680428.52 97.50 -599947.85 5679287.07 98.75 -599947.98 5681391.81 96.25 -599948.02 5677044.99 98.75 -599948.10 5681423.37 96.25 -599948.16 5679105.84 97.25 -599948.44 5680819.63 97.50 -599948.92 5681164.25 97.50 -599948.97 5677281.96 100.00 -599949.05 5679362.73 98.75 -599949.17 5677086.94 98.75 -599949.24 5681434.34 97.50 -599949.27 5676465.85 101.25 -599949.29 5680478.65 98.75 -599949.70 5679089.57 97.25 -599949.97 5680080.93 96.25 -599950.47 5679811.59 97.50 -599950.50 5677291.84 100.00 -599950.71 5677119.74 100.00 -599950.79 5677471.01 100.00 -599950.80 5681148.77 96.25 -599950.88 5681379.79 97.50 -599951.20 5678889.93 97.50 -599951.43 5679621.58 97.50 -599951.72 5677480.35 100.00 -599951.86 5678899.86 97.50 -599952.05 5677054.14 98.75 -599952.06 5677301.70 100.00 -599952.12 5678880.06 97.50 -599952.33 5679295.88 98.75 -599952.37 5680096.17 96.25 -599952.53 5680830.07 97.50 -599952.54 5681484.65 97.50 -599953.18 5678909.68 97.50 -599953.23 5679737.82 97.50 -599953.23 5679353.81 98.75 -599953.32 5681383.58 96.25 -599953.45 5680420.56 97.50 -599953.52 5678271.54 98.75 -599953.53 5677006.12 100.00 -599953.58 5678870.22 97.50 -599953.71 5681155.51 97.50 -599953.74 5679114.03 97.25 -599954.46 5679802.64 97.50 -599954.93 5680470.84 98.75 -599955.07 5678860.38 97.50 -599955.26 5681416.85 96.25 -599955.29 5677311.08 100.00 -599955.39 5678404.05 98.75 -599955.57 5679305.31 98.75 -599955.57 5681371.19 97.50 -599955.68 5678919.32 97.50 -599955.96 5681427.13 97.50 -599956.02 5677759.04 98.75 -599956.07 5679344.26 98.75 -599956.09 5677094.15 98.75 -599956.17 5678685.88 97.50 -599956.41 5681140.51 96.25 -599956.62 5680814.06 97.50 -599957.45 5677127.11 100.00 -599957.48 5680074.43 96.25 -599957.57 5679083.55 97.25 -599957.81 5678850.81 97.50 -599957.91 5679315.00 98.75 -599958.10 5677062.01 98.75 -599958.29 5678928.92 97.50 -599958.35 5681329.11 97.50 -599958.45 5679793.70 97.50 -599958.47 5681146.75 97.50 -599958.55 5679614.64 97.50 -599958.66 5681375.36 96.25 -599958.87 5676466.99 101.25 -599958.90 5679334.70 98.75 -599959.17 5676997.87 100.00 -599959.25 5680089.01 96.25 -599959.32 5679122.22 97.25 -599959.32 5679324.80 98.75 -599959.38 5677320.19 100.00 -599959.53 5681362.16 97.50 -599959.95 5680529.16 100.00 -599960.02 5680520.42 100.00 -599960.56 5678841.25 97.50 -599960.71 5680414.20 97.50 -599961.02 5681408.90 96.25 -599961.06 5681479.58 97.50 -599961.22 5678938.43 97.50 -599961.35 5680463.57 98.75 -599961.41 5680825.69 97.50 -599961.63 5679739.81 97.50 -599962.13 5681189.17 97.50 -599962.37 5681419.64 97.50 -599962.41 5681132.55 96.25 -599962.43 5679784.76 97.50 -599962.69 5677101.64 98.75 -599962.93 5681179.42 97.50 -599963.03 5680511.61 100.00 -599963.12 5678268.76 98.75 -599963.27 5681333.78 97.50 -599963.40 5680537.80 100.00 -599963.71 5677134.90 100.00 -599963.72 5677329.18 100.00 -599963.86 5681367.04 96.25 -599964.03 5681138.48 97.50 -599964.04 5681353.40 97.50 -599964.15 5678947.94 97.50 -599964.53 5677069.66 98.75 -599964.72 5681322.38 97.50 -599964.90 5679130.41 97.25 -599965.05 5681169.90 97.50 -599965.36 5678404.22 98.75 -599965.38 5679607.47 97.50 -599965.39 5681198.42 97.50 -599965.60 5680068.78 96.25 -599965.61 5680810.28 97.50 -599965.68 5678832.76 97.50 -599965.78 5679078.00 97.25 -599965.82 5677757.17 98.75 -599966.07 5678684.91 97.50 -599966.16 5681400.55 96.25 -599966.42 5679775.81 97.50 -599966.90 5680082.73 96.25 -599967.11 5678957.44 97.50 -599967.86 5679747.04 97.50 -599967.89 5679766.25 97.50 -599967.91 5681231.27 97.50 -599967.97 5681411.65 97.50 -599968.00 5681160.56 97.50 -599968.19 5681344.46 97.50 -599968.25 5676994.76 100.00 -599968.34 5676463.99 101.25 -599968.43 5680504.25 100.00 -599968.51 5679756.48 97.50 -599968.67 5681473.19 97.50 -599968.68 5677337.84 100.00 -599968.88 5680408.97 97.50 -599968.93 5681358.65 96.25 -599969.04 5677109.35 98.75 -599969.14 5681125.16 96.25 -599969.73 5680820.48 97.50 -599969.92 5680459.83 98.75 -599969.96 5677142.69 100.00 -599970.01 5681391.60 96.25 -599970.10 5678966.93 97.50 -599970.26 5679598.80 97.50 -599970.29 5680543.78 100.00 -599970.88 5678824.29 97.50 -599970.90 5677077.36 98.75 -599971.16 5681222.72 97.50 -599971.34 5681131.86 97.50 -599971.43 5681205.44 97.50 -599971.76 5679123.31 97.25 -599971.78 5681402.56 97.50 -599972.25 5681335.48 97.50 -599972.31 5678976.63 97.50 -599972.31 5680532.80 100.25 -599972.72 5678265.99 98.75 -599972.97 5681152.12 97.50 -599972.99 5681382.26 96.25 -599973.58 5681318.23 97.50 -599973.99 5680812.31 97.50 -599974.00 5679072.47 97.25 -599974.01 5681350.25 96.25 -599974.04 5681235.04 97.50 -599974.06 5680063.58 96.25 -599974.24 5681465.07 97.50 -599974.30 5677346.10 100.00 -599974.34 5678986.38 97.50 -599974.78 5681393.18 97.50 -599974.98 5678815.22 97.50 -599975.08 5680077.14 96.25 -599975.13 5679590.13 97.50 -599975.27 5680498.19 100.00 -599975.33 5678404.00 98.75 -599975.39 5677117.07 98.75 -599975.60 5677150.92 100.00 -599975.68 5678686.16 97.50 -599975.76 5677756.11 98.75 -599975.86 5681117.78 96.25 -599976.33 5681455.51 97.50 -599976.56 5681373.14 96.25 -599977.33 5676459.63 101.25 -599977.38 5681215.79 97.50 -599977.57 5676998.37 100.00 -599977.60 5678995.65 97.50 -599977.72 5681445.67 97.50 -599977.82 5679115.50 97.25 -599977.98 5680548.88 100.00 -599977.99 5681143.70 97.50 -599977.99 5677084.37 98.75 -599978.19 5681383.95 97.50 -599978.22 5680407.02 97.50 -599978.67 5681125.18 97.50 -599979.08 5678806.15 97.50 -599979.27 5681435.86 97.50 -599979.43 5680458.34 98.75 -599979.97 5679581.44 97.50 -599980.21 5681364.04 96.25 -599980.28 5681311.22 97.50 -599980.35 5681203.72 97.50 -599980.47 5677125.66 98.75 -599980.59 5677353.85 100.00 -599980.90 5681350.23 96.00 -599980.99 5677159.34 100.00 -599981.06 5681343.97 96.00 -599981.06 5681343.97 96.25 -599981.56 5681229.96 97.50 -599982.27 5678263.06 98.75 -599982.42 5681375.04 97.50 -599982.52 5679004.30 97.50 -599982.94 5681110.74 96.25 -599982.94 5678796.99 97.50 -599983.00 5680071.47 96.25 -599983.05 5679068.78 97.25 -599983.13 5680063.00 96.25 -599983.29 5681217.22 97.20 -599983.31 5681354.74 96.00 -599983.31 5681354.74 96.25 -599983.38 5681426.84 97.50 -599984.16 5681334.99 96.00 -599984.21 5678691.08 97.50 -599984.23 5681136.14 97.50 -599984.26 5680495.77 100.00 -599984.57 5681209.70 97.50 -599984.62 5679572.65 97.50 -599984.82 5679108.49 97.25 -599985.11 5681117.57 97.50 -599985.31 5678403.77 98.75 -599985.37 5677091.11 98.75 -599985.40 5677134.35 98.75 -599985.46 5676454.02 101.25 -599985.52 5681302.87 97.50 -599985.69 5677755.05 98.75 -599985.86 5681365.84 97.50 -599986.00 5678787.52 97.50 -599986.38 5677167.75 100.00 -599986.39 5677003.01 100.00 -599987.12 5680550.69 100.00 -599987.15 5679013.10 97.50 -599987.16 5681196.78 97.50 -599987.26 5681326.00 96.00 -599987.29 5680410.65 97.50 -599987.67 5681222.79 97.50 -599987.93 5677360.31 100.00 -599988.55 5681418.35 97.50 -599988.66 5681356.39 96.00 -599988.66 5681356.39 97.50 -599988.73 5680459.27 98.75 -599989.07 5678778.05 97.50 -599989.48 5679563.97 97.50 -599990.04 5678699.01 97.50 -599990.07 5679100.12 97.25 -599990.23 5681103.91 96.25 -599990.33 5677143.04 98.75 -599990.36 5681150.82 96.25 -599990.41 5678768.22 97.50 -599990.59 5681317.11 96.00 -599990.75 5677099.36 98.75 -599990.86 5681128.94 97.50 -599991.23 5681294.84 97.50 -599991.32 5681203.18 97.50 -599991.43 5679022.09 97.50 -599991.51 5678758.33 97.50 -599991.69 5678748.38 97.50 -599991.77 5677176.16 100.00 -599991.82 5678738.43 97.50 -599991.82 5678260.12 98.75 -599991.89 5681110.26 97.50 -599991.94 5678728.47 97.50 -599992.22 5678708.62 97.50 -599992.28 5678718.53 97.50 -599992.60 5679068.15 97.25 -599992.76 5676447.20 101.25 -599993.53 5681141.90 96.25 -599993.58 5681189.38 97.50 -599993.70 5681349.12 96.00 -599993.89 5681215.72 97.50 -599994.17 5681308.31 96.00 -599994.46 5679555.36 97.50 -599995.01 5677008.05 100.00 -599995.17 5678402.32 98.75 -599995.19 5677108.30 98.75 -599995.29 5679091.70 97.25 -599995.41 5680466.30 98.75 -599995.45 5681411.23 97.50 -599995.59 5677151.53 98.75 -599995.60 5680415.72 97.50 -599995.63 5677753.99 98.75 -599995.91 5681156.04 96.25 -599995.96 5680549.48 100.00 -599996.03 5681340.46 96.00 -599996.05 5679030.90 97.50 -599996.65 5681096.27 96.25 -599996.89 5681286.80 97.50 -599997.03 5677364.44 100.00 -599997.09 5677184.61 100.00 -599997.41 5681195.99 97.50 -599997.44 5678034.09 97.50 -599997.82 5681299.54 96.00 -599997.85 5678024.37 97.50 -599997.92 5681122.15 97.50 -599998.84 5678043.71 97.50 -599998.94 5681134.09 96.25 -599998.94 5681103.21 97.50 -599999.25 5679075.22 97.25 -599999.30 5681332.03 96.00 -599999.43 5679546.74 97.50 -599999.43 5681181.52 97.50 -599999.64 5677117.25 98.75 -600000.12 5681208.66 97.50 -600000.28 5678053.34 97.50 -600000.35 5681277.57 97.50 -600000.83 5676441.29 101.25 -600000.87 5679039.61 97.50 -600000.93 5677159.97 98.75 -600000.95 5679083.58 97.25 -600001.37 5678257.18 98.75 -600001.51 5681138.48 96.00 -600001.91 5681149.04 96.25 -600002.18 5678062.88 97.50 -600002.42 5677193.07 100.00 -600002.49 5681323.58 96.00 -600002.96 5681291.55 96.00 -600002.96 5681088.52 96.25 -600002.99 5680422.00 97.50 -600003.75 5679537.83 97.50 -600003.79 5681405.99 97.50 -600003.86 5677012.64 100.00 -600004.09 5677126.19 98.75 -600004.17 5678072.40 97.50 -600004.17 5681268.49 97.50 -600004.57 5680545.94 100.00 -600004.69 5681115.06 97.50 -600004.80 5681126.62 96.25 -600004.93 5681190.69 97.50 -600004.96 5678400.40 98.75 -600005.07 5679048.62 97.50 -600005.26 5677168.86 98.75 -600005.29 5681173.66 97.50 -600005.32 5678020.79 97.50 -600005.44 5677754.30 98.75 -600005.79 5681315.16 96.00 -600005.84 5681096.00 97.50 -600006.11 5677368.59 100.00 -600006.48 5681201.70 97.50 -600006.57 5681140.76 96.25 -600006.84 5678081.76 97.50 -600006.95 5679528.42 97.50 -600007.18 5677201.80 100.00 -600007.86 5677178.51 98.75 -600008.09 5681283.56 96.00 -600008.54 5677135.14 98.75 -600008.57 5681259.72 97.50 -600008.78 5679057.80 97.50 -600008.88 5681080.48 96.25 -600009.18 5679067.74 97.50 -600009.22 5681306.80 96.00 -600009.47 5676436.31 101.25 -600009.51 5678091.12 97.50 -600009.60 5680429.19 97.50 -600010.14 5679519.00 97.50 -600010.18 5681165.19 97.50 -600010.46 5677188.16 98.75 -600010.79 5677211.12 100.00 -600010.94 5678254.32 98.75 -600011.26 5681132.51 96.25 -600011.33 5677198.11 98.75 -600011.46 5681107.98 97.50 -600011.78 5681120.31 96.25 -600012.16 5677208.06 98.75 -600012.59 5681401.39 97.50 -600012.67 5681088.74 97.50 -600012.83 5681194.74 97.50 -600013.01 5680050.62 96.25 -600013.05 5677016.58 100.00 -600013.08 5677144.04 98.75 -600013.28 5678025.07 97.50 -600013.36 5681187.28 97.50 -600013.38 5681275.67 96.00 -600013.77 5681299.08 96.00 -600014.32 5677220.46 100.00 -600014.66 5678398.05 98.75 -600014.69 5681252.00 97.50 -600014.72 5680043.83 96.25 -600014.87 5681156.58 97.50 -600014.91 5677757.44 98.75 -600014.92 5681072.54 96.25 -600015.07 5677217.56 98.75 -600015.28 5680329.55 97.50 -600015.75 5680436.76 97.50 -600015.76 5679274.27 97.25 -600015.99 5677370.10 100.00 -600016.07 5681124.32 96.25 -600016.08 5678072.66 97.25 -600016.61 5679264.62 97.25 -600017.39 5678033.75 97.50 -600017.73 5676430.71 101.25 -600017.74 5677229.85 100.00 -600017.75 5679254.95 97.25 -600017.75 5677152.87 98.75 -600017.97 5679283.76 97.25 -600018.00 5678093.78 97.50 -600018.17 5681100.83 97.50 -600018.53 5677226.94 98.75 -600018.55 5681147.52 97.50 -600018.74 5680320.47 97.50 -600019.11 5681268.09 96.00 -600019.24 5681291.89 96.00 -600019.81 5680336.93 97.50 -600019.89 5681081.86 97.50 -600019.98 5678043.12 97.50 -600020.14 5680056.86 96.25 -600020.29 5679245.57 97.25 -600020.55 5678251.57 98.75 -600020.96 5677239.31 100.00 -600021.29 5680444.80 97.50 -600021.43 5681396.85 97.50 -600021.57 5681065.08 96.25 -600021.92 5678052.65 97.50 -600021.97 5681138.33 97.50 -600022.03 5681245.51 97.50 -600022.06 5677236.28 98.75 -600022.41 5677161.71 98.75 -600022.49 5677019.83 100.00 -600023.15 5679236.26 97.25 -600023.20 5679291.74 97.25 -600024.12 5677761.32 98.75 -600024.18 5677248.77 100.00 -600024.26 5680041.12 96.25 -600024.30 5678395.49 98.75 -600024.45 5680312.56 97.50 -600024.71 5681284.69 96.00 -600024.71 5681284.69 97.50 -600024.71 5681128.92 97.50 -600024.96 5679770.82 97.50 -600024.99 5681093.85 97.50 -600025.28 5681260.92 96.00 -600025.32 5680846.81 97.50 -600025.33 5679780.71 97.50 -600025.47 5678061.63 97.50 -600025.74 5677245.57 98.75 -600025.75 5679790.59 97.50 -600025.80 5676424.80 101.25 -600025.88 5677371.45 100.00 -600026.12 5678089.46 97.50 -600026.34 5679800.47 97.50 -600026.39 5681074.35 97.50 -600026.78 5679761.29 97.50 -600026.90 5681056.79 96.25 -600027.03 5681119.41 97.50 -600027.08 5677170.55 98.75 -600027.19 5679227.47 97.25 -600027.42 5677258.21 100.00 -600027.84 5680853.83 97.50 -600028.69 5678070.71 97.50 -600028.71 5678080.28 97.50 -600029.18 5679284.63 97.25 -600029.22 5680059.86 96.25 -600029.29 5679809.64 97.50 -600029.34 5677254.89 98.75 -600029.35 5680338.96 97.50 -600029.71 5681276.94 96.00 -600029.78 5681239.43 97.50 -600030.15 5678248.83 98.75 -600030.20 5679752.00 97.50 -600030.27 5681392.32 97.50 -600030.63 5681065.58 97.50 -600030.71 5677267.65 100.00 -600030.78 5681110.79 97.50 -600030.84 5681047.60 96.25 -600031.65 5676958.15 100.00 -600031.71 5680305.89 97.50 -600031.74 5677179.38 98.75 -600031.79 5681277.74 97.50 -600032.06 5679219.03 97.25 -600032.13 5677021.65 100.00 -600032.40 5680841.47 97.50 -600032.43 5681254.66 96.00 -600032.44 5679275.49 97.25 -600033.15 5679265.90 97.25 -600033.21 5679256.24 97.25 -600033.30 5681056.03 97.50 -600033.41 5677764.93 98.75 -600033.56 5679742.70 97.50 -600033.57 5676967.91 100.00 -600033.66 5676418.62 101.25 -600033.82 5678392.52 98.75 -600033.95 5681093.01 97.50 -600034.00 5677277.08 100.00 -600034.13 5677263.54 98.75 -600034.22 5680041.49 96.25 -600034.50 5676948.84 100.00 -600034.57 5681101.94 97.50 -600034.79 5681038.43 96.25 -600035.15 5678521.73 97.50 -600035.57 5679246.79 97.25 -600035.80 5677372.64 100.00 -600036.13 5679733.15 97.50 -600036.36 5681270.52 96.00 -600036.41 5677188.22 98.75 -600036.84 5678513.20 97.50 -600037.07 5679210.68 97.25 -600037.20 5681232.94 97.50 -600037.20 5680854.79 97.50 -600037.30 5677286.51 100.00 -600037.36 5676977.02 100.00 -600037.48 5681046.98 97.50 -600037.96 5679811.50 97.50 -600038.69 5679723.60 97.50 -600039.09 5681029.41 96.25 -600039.13 5680339.32 97.50 -600039.16 5680059.18 96.25 -600039.26 5679332.59 97.25 -600039.47 5681248.30 96.00 -600039.57 5681272.01 97.50 -600039.64 5681389.07 97.50 -600039.76 5678246.08 98.75 -600039.78 5680300.22 97.50 -600040.33 5679238.35 97.25 -600040.48 5677271.23 98.75 -600040.54 5681317.73 97.50 -600040.59 5677295.95 100.00 -600040.83 5679328.04 97.25 -600040.88 5677018.12 100.00 -600041.07 5677197.05 98.75 -600041.26 5679714.04 97.50 -600041.56 5681037.88 97.50 -600041.79 5676412.88 101.25 -600041.88 5680839.76 97.50 -600042.10 5681308.28 97.50 -600042.29 5678527.92 97.50 -600042.54 5676944.06 100.00 -600043.00 5681264.09 96.00 -600043.02 5680847.10 97.25 -600043.23 5677766.73 98.75 -600043.35 5678389.55 98.75 -600043.38 5681020.40 96.25 -600043.40 5681225.43 97.50 -600043.41 5676984.97 100.00 -600043.88 5679704.50 97.50 -600043.88 5677305.38 100.00 -600043.94 5679204.11 97.25 -600044.19 5680041.85 96.25 -600044.32 5679340.96 97.25 -600045.24 5678508.35 97.50 -600045.24 5679806.79 97.50 -600045.24 5681240.76 96.00 -600045.43 5679230.06 97.25 -600045.52 5677205.97 98.75 -600045.63 5681028.77 97.50 -600045.77 5677373.15 100.00 -600046.49 5679694.96 97.50 -600046.88 5680854.10 97.50 -600047.17 5677314.81 100.00 -600047.47 5677010.66 100.00 -600047.67 5681320.13 97.50 -600047.70 5681011.39 96.25 -600047.85 5680294.54 97.50 -600047.91 5677277.90 98.75 -600048.17 5677215.61 98.75 -600048.44 5681216.96 97.50 -600048.46 5679685.27 97.50 -600048.53 5679334.07 97.25 -600048.72 5681385.18 97.50 -600048.76 5680060.92 96.25 -600048.85 5680337.61 97.50 -600049.05 5681301.58 97.50 -600049.13 5681269.35 97.50 -600049.37 5678243.33 98.75 -600049.40 5681019.54 97.50 -600049.65 5681257.67 96.00 -600049.65 5681257.67 96.25 -600049.68 5676992.74 100.00 -600049.74 5679349.05 97.25 -600049.82 5679274.70 97.50 -600049.94 5679798.13 97.50 -600050.40 5679675.57 97.50 -600050.46 5677324.24 100.00 -600050.51 5679284.55 97.50 -600050.81 5677225.24 98.75 -600050.86 5676408.71 101.25 -600051.03 5681233.22 96.00 -600051.13 5678532.15 97.50 -600051.38 5679222.42 97.25 -600051.58 5680839.87 97.50 -600051.59 5679264.91 97.50 -600051.93 5677002.28 100.00 -600052.00 5679294.38 97.50 -600052.26 5676945.75 100.00 -600052.34 5679665.87 97.50 -600052.70 5679788.63 97.50 -600052.86 5677286.58 98.75 -600052.88 5678386.58 98.75 -600053.02 5681002.94 96.25 -600053.10 5679205.03 97.25 -600053.10 5677768.07 98.75 -600053.11 5680037.56 96.25 -600053.12 5681010.28 97.50 -600053.35 5679255.12 97.50 -600053.55 5677333.74 100.00 -600053.64 5677234.82 98.75 -600054.08 5679304.04 97.50 -600054.92 5678507.68 97.50 -600054.99 5679656.37 97.50 -600055.12 5679245.33 97.50 -600055.36 5681210.08 97.50 -600055.46 5679779.13 97.50 -600055.48 5679213.59 97.25 -600055.61 5679356.70 97.25 -600055.76 5677373.41 100.00 -600055.99 5680288.95 97.50 -600056.00 5679340.38 97.25 -600056.23 5681294.97 97.50 -600056.27 5681315.72 97.50 -600056.44 5677295.82 98.75 -600056.46 5681250.52 96.00 -600056.56 5680853.47 97.50 -600056.56 5677343.27 100.00 -600056.80 5677244.30 98.75 -600056.87 5681225.72 96.00 -600057.34 5681380.25 97.50 -600057.73 5679769.50 97.50 -600058.01 5680064.64 96.25 -600058.06 5679366.02 97.25 -600058.23 5681001.74 97.50 -600058.35 5680994.49 96.25 -600058.40 5681045.87 97.50 -600058.49 5679647.12 97.50 -600058.57 5680335.95 97.50 -600058.89 5681267.81 97.50 -600058.92 5677305.49 98.75 -600058.96 5679375.75 97.25 -600059.04 5678240.85 98.75 -600059.49 5679312.39 97.50 -600059.57 5677352.80 100.00 -600059.64 5681257.65 96.25 -600059.81 5678536.64 97.50 -600059.96 5677253.78 98.75 -600060.01 5679759.87 97.50 -600060.06 5679385.47 97.25 -600060.37 5681036.14 97.50 -600060.43 5676405.82 101.25 -600060.57 5676951.29 100.00 -600060.60 5679237.45 97.50 -600060.77 5677315.31 98.75 -600060.79 5680031.52 96.25 -600061.16 5679395.18 97.25 -600061.16 5679404.96 97.25 -600061.26 5680840.37 97.50 -600062.01 5679414.68 97.25 -600062.02 5679637.88 97.50 -600062.11 5679347.90 97.25 -600062.29 5679750.25 97.50 -600062.36 5681217.99 96.00 -600062.41 5678383.61 98.75 -600062.50 5681053.79 97.50 -600062.58 5677362.32 100.00 -600062.62 5681308.31 97.50 -600063.04 5681203.90 97.50 -600063.10 5677768.07 98.75 -600063.12 5677263.26 98.75 -600063.26 5681243.36 96.00 -600063.37 5681288.32 97.50 -600063.67 5680986.03 96.25 -600063.76 5680993.45 97.50 -600063.86 5681026.78 97.50 -600063.97 5678511.40 97.50 -600064.11 5677324.70 98.75 -600064.20 5680283.48 97.50 -600064.36 5679321.02 97.50 -600065.54 5677371.82 100.00 -600065.59 5681374.75 97.50 -600065.67 5680259.71 96.25 -600065.77 5679741.01 97.50 -600066.18 5679423.36 97.25 -600066.24 5680853.87 97.50 -600066.28 5677272.74 98.75 -600066.38 5679356.51 97.25 -600066.74 5680069.47 96.25 -600066.82 5679229.79 97.50 -600066.89 5680250.60 96.25 -600067.07 5680023.78 96.25 -600067.29 5681209.87 96.00 -600067.45 5680313.52 98.75 -600067.49 5678542.73 97.50 -600067.52 5681152.89 97.50 -600067.62 5677334.05 98.75 -600067.69 5681017.58 97.50 -600067.79 5679629.84 97.50 -600067.92 5679330.31 97.50 -600067.95 5678527.93 97.75 -600068.17 5679366.13 97.25 -600068.30 5679810.62 96.25 -600068.30 5680334.29 97.50 -600068.46 5679800.65 96.25 -600068.62 5679790.68 96.25 -600068.62 5676957.19 100.00 -600068.74 5678238.44 98.75 -600068.77 5681266.91 97.50 -600069.00 5680977.58 96.25 -600069.07 5680304.83 98.75 -600069.19 5680171.35 97.50 -600069.36 5679820.48 96.25 -600069.40 5677282.23 98.75 -600069.46 5681256.84 96.25 -600069.57 5679414.66 97.25 -600069.62 5679731.90 97.50 -600069.77 5681301.80 97.50 -600069.85 5680985.55 97.50 -600069.95 5679375.74 97.25 -600070.06 5679590.89 97.50 -600070.06 5681236.21 96.00 -600070.09 5677343.73 98.75 -600070.25 5676407.23 101.25 -600070.50 5679385.50 97.25 -600070.51 5681281.66 97.50 -600070.55 5679424.39 97.25 -600070.79 5679395.28 97.25 -600070.82 5680180.52 97.50 -600070.86 5679600.23 97.50 -600070.91 5679581.24 97.50 -600070.92 5680841.24 97.50 -600071.01 5679405.05 97.25 -600071.13 5679781.04 96.25 -600071.33 5681198.92 97.50 -600071.35 5679830.25 96.25 -600071.39 5680014.86 96.25 -600071.48 5679339.60 97.50 -600071.55 5679221.04 97.50 -600071.60 5677353.56 98.75 -600071.62 5681054.37 97.50 -600071.89 5679673.75 97.75 -600071.93 5678380.64 98.75 -600072.09 5677764.54 98.75 -600072.28 5677363.53 98.75 -600072.33 5677291.78 98.75 -600072.38 5680162.00 97.50 -600072.41 5680278.00 97.50 -600072.64 5681144.54 97.50 -600072.75 5680046.99 96.25 -600072.87 5678515.50 97.50 -600073.08 5681009.16 97.50 -600073.32 5679571.88 97.50 -600073.46 5679722.78 97.50 -600073.53 5681368.77 97.50 -600073.64 5677373.43 98.75 -600073.83 5679839.89 96.25 -600073.85 5681203.11 96.00 -600074.04 5680264.07 96.25 -600074.32 5679771.61 96.25 -600074.41 5679349.04 97.50 -600074.55 5680037.24 96.25 -600074.71 5679623.03 97.50 -600074.83 5680297.20 98.75 -600074.99 5677383.33 98.75 -600075.24 5680969.83 96.25 -600075.26 5677301.33 98.75 -600075.28 5680005.68 96.25 -600075.56 5678548.01 97.50 -600075.67 5679358.91 97.50 -600075.67 5680073.82 96.25 -600075.82 5681156.39 97.50 -600075.94 5680977.65 97.50 -600075.94 5680853.87 97.50 -600075.96 5680247.11 96.25 -600076.07 5679562.59 97.50 -600076.28 5679212.29 97.50 -600076.39 5680316.43 98.75 -600076.51 5676963.32 100.00 -600076.56 5680056.20 96.25 -600076.63 5680188.58 97.50 -600077.14 5679849.29 96.25 -600077.24 5681229.44 96.00 -600077.42 5679713.71 97.50 -600077.51 5679368.67 97.50 -600077.62 5681262.65 97.50 -600077.87 5680153.64 97.50 -600077.91 5681275.29 97.50 -600077.92 5679762.31 96.25 -600077.94 5681296.47 97.50 -600078.03 5680332.66 97.50 -600078.10 5679605.43 97.50 -600078.20 5677310.88 98.75 -600078.44 5678236.03 98.75 -600078.70 5681253.06 96.25 -600078.78 5681048.24 97.50 -600078.96 5680028.58 96.25 -600079.30 5679996.56 96.25 -600079.45 5677392.19 98.75 -600079.50 5676410.73 101.25 -600079.71 5679553.61 97.50 -600079.72 5681001.69 97.50 -600080.03 5679378.29 97.50 -600080.04 5680844.43 97.50 -600080.05 5679858.83 96.25 -600080.49 5681138.43 97.50 -600080.51 5677759.19 98.75 -600080.95 5681196.79 96.00 -600080.95 5681196.79 97.50 -600081.01 5679203.53 97.50 -600081.02 5680065.11 96.25 -600081.08 5679906.90 96.25 -600081.20 5680290.06 98.75 -600081.20 5679752.90 96.25 -600081.29 5677320.38 98.75 -600081.37 5679704.65 97.50 -600081.39 5680273.92 97.50 -600081.46 5678377.67 98.75 -600081.68 5681363.09 97.50 -600081.77 5678519.60 97.50 -600082.02 5680962.50 96.25 -600082.32 5679145.41 97.50 -600082.82 5680970.44 97.50 -600082.86 5679868.40 96.25 -600082.95 5679897.37 96.25 -600083.02 5679155.10 97.50 -600083.13 5679916.66 96.25 -600083.33 5679987.43 96.25 -600083.69 5680263.79 96.25 -600083.69 5679387.46 97.50 -600083.71 5679619.35 97.50 -600083.72 5680145.54 97.50 -600083.94 5677052.93 98.75 -600084.00 5679135.61 97.50 -600084.12 5680194.91 97.50 -600084.35 5677400.90 98.75 -600084.35 5679743.43 96.25 -600084.38 5681151.33 97.50 -600084.44 5677329.87 98.75 -600084.47 5681222.72 96.00 -600084.61 5676969.16 100.00 -600084.67 5679194.30 97.50 -600084.74 5681040.21 97.50 -600084.74 5680852.10 97.50 -600084.77 5680073.68 96.25 -600084.87 5680020.58 96.25 -600085.08 5678549.89 97.50 -600085.33 5681268.95 97.50 -600085.33 5679695.58 97.50 -600085.61 5679164.70 97.50 -600085.61 5680246.08 96.25 -600085.67 5679877.96 96.25 -600085.72 5681290.59 97.50 -600085.94 5680316.30 98.75 -600085.97 5679546.60 97.50 -600086.10 5679887.91 96.25 -600086.26 5681257.79 97.50 -600086.29 5679174.62 97.50 -600086.35 5680994.21 97.50 -600086.53 5679184.52 97.50 -600087.39 5679608.19 97.50 -600087.41 5681248.41 96.25 -600087.42 5679126.38 97.50 -600087.58 5677339.35 98.75 -600087.68 5679734.04 96.25 -600087.80 5679978.53 96.25 -600087.81 5679925.26 96.25 -600087.90 5680332.79 97.50 -600087.99 5676415.80 101.25 -600088.08 5677752.67 98.75 -600088.13 5678233.61 98.75 -600088.15 5678526.71 97.50 -600088.31 5680283.75 98.75 -600088.37 5677409.99 98.75 -600088.45 5681132.47 97.50 -600088.50 5679396.17 97.50 -600088.61 5681010.36 97.00 -600088.92 5680955.27 96.25 -600089.29 5679686.52 97.50 -600089.43 5680011.72 96.25 -600089.53 5681191.91 96.00 -600089.98 5680137.75 97.50 -600090.06 5680963.59 97.50 -600090.47 5680270.05 97.50 -600090.67 5678373.88 98.75 -600090.73 5677348.83 98.75 -600090.96 5677057.33 98.75 -600091.41 5681032.78 97.50 -600091.42 5679724.79 96.25 -600091.51 5681362.20 97.50 -600091.51 5677419.47 98.75 -600091.62 5677594.46 98.75 -600091.93 5679117.51 97.50 -600092.04 5677604.38 98.75 -600092.34 5680259.36 96.25 -600092.39 5677048.67 98.75 -600092.40 5679621.53 97.50 -600092.56 5681145.67 97.50 -600092.56 5681217.22 96.00 -600092.57 5678544.61 97.50 -600092.62 5679969.80 96.25 -600092.63 5677584.52 98.75 -600092.65 5677052.83 98.50 -600092.80 5680002.39 96.25 -600092.98 5680986.73 97.50 -600092.99 5681136.58 97.20 -600093.01 5679677.35 97.50 -600093.04 5676974.52 100.00 -600093.22 5678535.09 97.50 -600093.25 5681263.39 97.50 -600093.29 5681284.41 97.50 -600093.37 5677614.28 98.75 -600093.38 5680198.56 97.50 -600093.51 5679933.43 96.25 -600093.76 5677574.60 98.75 -600093.87 5677358.32 98.75 -600094.21 5676423.63 101.25 -600094.43 5681252.16 97.50 -600094.60 5677745.12 98.75 -600094.65 5677428.96 98.75 -600094.97 5681241.90 96.25 -600094.98 5679543.75 97.50 -600095.00 5680243.79 96.25 -600095.20 5679715.57 96.25 -600095.28 5680314.20 98.75 -600095.33 5679992.75 96.25 -600095.70 5677623.93 98.75 -600096.10 5680278.20 98.75 -600096.15 5679586.29 92.50 -600096.20 5680948.47 96.25 -600096.24 5680129.95 97.50 -600096.37 5679803.86 96.25 -600096.41 5681126.52 97.50 -600096.45 5679108.65 97.50 -600096.51 5677565.00 98.75 -600096.52 5679668.10 97.50 -600096.75 5679610.69 97.50 -600096.79 5679401.13 97.50 -600097.01 5677367.80 98.75 -600097.19 5679813.74 96.25 -600097.52 5679793.97 96.25 -600097.57 5679629.73 97.50 -600097.66 5680957.14 97.50 -600097.69 5680293.93 99.00 -600097.74 5680332.28 97.50 -600097.83 5678231.20 98.75 -600097.87 5677022.99 100.00 -600097.89 5677438.41 98.75 -600097.90 5679961.34 96.25 -600098.12 5681187.04 96.00 -600098.12 5681025.37 97.50 -600098.38 5679942.14 96.25 -600098.53 5679823.61 96.25 -600098.64 5677031.82 100.00 -600099.18 5677633.30 98.75 -600099.27 5677555.40 98.75 -600099.40 5681272.58 96.25 -600099.49 5679952.03 96.25 -600099.59 5680266.28 97.50 -600099.62 5680979.26 97.50 -600099.66 5679706.65 96.25 -600099.74 5678369.73 98.75 -600099.75 5679658.80 97.50 -600099.97 5679648.91 97.50 -600100.05 5677377.32 98.75 -600100.07 5679984.03 96.25 -600100.20 5679639.02 97.50 -600100.69 5677056.46 98.75 -600100.72 5679784.57 96.25 -600100.74 5681140.01 97.50 -600100.89 5681359.28 97.50 -600100.95 5677737.40 98.75 -600101.21 5680255.54 96.25 -600101.25 5681278.83 97.50 -600101.25 5676980.19 100.00 -600101.31 5676430.63 101.25 -600101.31 5681212.65 96.00 -600101.40 5679833.14 96.25 -600101.49 5677049.56 98.75 -600101.54 5679100.12 97.50 -600101.57 5677447.70 98.75 -600102.17 5681259.43 97.50 -600102.37 5680692.62 97.50 -600102.40 5677545.96 98.75 -600102.60 5681246.53 97.50 -600102.67 5677642.66 98.75 -600102.90 5680122.54 97.50 -600103.10 5677386.84 98.75 -600103.24 5681236.35 96.25 -600103.33 5680199.57 97.50 -600103.34 5679547.30 97.50 -600103.65 5679775.06 96.25 -600104.03 5680942.27 96.25 -600104.12 5679697.73 96.25 -600104.14 5681120.26 97.50 -600104.22 5680240.72 96.25 -600104.26 5680310.96 98.75 -600104.29 5677015.34 100.00 -600104.33 5679842.67 96.25 -600104.57 5681264.92 96.25 -600104.67 5681017.84 97.50 -600104.76 5677039.67 100.00 -600104.92 5680275.28 98.75 -600105.25 5677456.99 98.75 -600105.30 5680950.73 97.50 -600105.54 5677728.60 98.75 -600105.78 5677652.15 98.75 -600105.91 5680683.27 97.50 -600106.07 5679976.16 96.25 -600106.12 5679613.19 97.50 -600106.14 5677396.35 98.75 -600106.26 5680971.79 97.50 -600106.33 5681181.64 96.00 -600106.42 5681031.38 97.50 -600106.49 5679402.45 97.50 -600106.83 5679765.65 96.25 -600106.87 5679852.28 96.25 -600106.89 5681270.42 96.25 -600106.94 5679091.76 97.50 -600107.16 5680329.62 97.50 -600107.40 5676987.37 100.00 -600107.52 5678228.79 98.75 -600107.57 5677537.40 98.75 -600108.26 5679688.67 96.25 -600108.54 5679862.10 96.25 -600108.76 5676437.29 101.25 -600108.84 5677661.67 98.75 -600108.84 5681134.24 97.50 -600108.88 5678365.74 98.75 -600108.91 5677466.28 98.75 -600109.13 5681353.94 97.50 -600109.14 5677405.88 98.75 -600109.23 5676997.16 100.00 -600109.29 5680673.86 97.50 -600109.32 5681206.99 96.00 -600109.33 5681038.63 97.50 -600109.40 5680265.96 97.50 -600109.44 5679554.83 97.50 -600109.63 5677719.48 98.75 -600109.71 5681022.07 97.50 -600109.72 5677007.14 100.00 -600109.78 5681274.07 97.50 -600109.79 5681009.25 97.50 -600110.21 5679871.92 96.25 -600110.35 5677047.42 100.00 -600110.35 5680115.86 97.50 -600110.70 5680253.43 96.25 -600110.86 5679756.54 96.25 -600110.92 5681241.13 97.50 -600111.16 5681255.63 97.50 -600111.55 5677415.58 98.75 -600111.65 5679679.30 96.25 -600111.87 5680936.07 96.25 -600111.89 5677671.18 98.75 -600111.90 5681231.42 96.25 -600111.91 5679881.74 96.25 -600112.19 5680306.06 98.75 -600112.34 5679083.40 97.50 -600112.36 5677475.66 98.75 -600112.45 5680664.38 97.50 -600112.47 5677057.08 100.00 -600112.48 5681114.84 97.50 -600112.77 5681259.90 96.25 -600113.06 5680944.48 97.50 -600113.09 5677710.16 98.75 -600113.16 5679746.86 96.25 -600113.18 5680964.59 97.50 -600113.18 5680236.95 96.25 -600113.28 5680200.58 97.50 -600113.87 5679891.50 96.25 -600113.92 5681175.32 96.00 -600113.95 5677425.28 98.75 -600114.16 5677530.09 98.75 -600114.28 5677680.88 98.75 -600114.44 5680274.71 98.75 -600114.71 5679972.51 96.25 -600114.75 5679562.93 97.50 -600114.90 5681013.64 97.50 -600114.91 5681000.67 97.50 -600114.97 5681265.22 96.25 -600115.12 5677700.38 98.75 -600115.15 5679737.10 96.25 -600115.59 5679615.16 97.50 -600115.80 5677485.04 98.75 -600116.08 5680325.51 97.50 -600116.34 5676443.77 101.25 -600116.36 5677434.98 98.75 -600116.43 5679402.68 97.50 -600116.58 5677690.60 98.75 -600116.58 5680655.30 97.50 -600116.61 5679670.70 96.25 -600116.68 5681347.49 97.50 -600116.74 5681200.49 96.00 -600116.88 5681128.39 97.50 -600116.88 5679727.29 96.25 -600117.19 5680777.00 97.50 -600117.22 5678226.40 98.75 -600117.30 5681033.74 97.50 -600117.59 5680108.98 97.50 -600118.02 5679075.25 97.50 -600118.18 5681269.11 97.50 -600118.24 5681225.76 96.25 -600118.33 5679900.35 96.25 -600118.34 5680298.79 98.75 -600118.37 5678362.66 98.75 -600118.91 5681249.79 97.50 -600118.92 5680732.00 97.50 -600118.93 5677494.52 98.75 -600119.06 5681235.48 97.50 -600119.21 5680722.74 97.50 -600119.27 5680265.81 97.50 -600119.27 5680064.41 96.25 -600119.70 5680929.88 96.25 -600119.77 5680991.95 97.50 -600119.88 5677063.59 100.00 -600119.89 5679571.14 97.50 -600120.19 5680251.32 96.25 -600120.31 5680783.66 97.50 -600120.46 5677027.27 101.25 -600120.48 5681005.46 97.50 -600120.55 5677443.97 98.75 -600120.73 5680958.05 97.50 -600120.74 5680071.64 96.25 -600120.83 5681109.43 97.50 -600120.84 5680280.32 98.75 -600120.85 5681218.56 96.25 -600120.97 5681254.89 96.25 -600121.02 5679718.33 96.25 -600121.10 5680289.74 98.75 -600121.23 5680938.75 97.50 -600121.34 5677523.41 98.75 -600121.56 5677504.16 98.75 -600121.84 5681169.47 96.00 -600121.87 5677018.16 101.25 -600122.04 5679662.34 96.25 -600122.19 5680233.32 96.25 -600122.31 5679977.08 96.25 -600122.61 5680647.43 97.50 -600122.79 5677036.09 101.25 -600122.91 5681193.02 96.00 -600123.05 5681260.02 96.25 -600123.24 5680201.37 97.50 -600123.25 5679909.01 96.25 -600123.60 5680319.19 97.50 -600123.63 5681026.12 97.50 -600123.70 5680982.76 97.50 -600124.04 5680770.38 97.50 -600124.08 5677513.80 98.75 -600124.13 5679398.11 97.50 -600124.17 5679067.43 97.50 -600124.20 5681340.99 97.50 -600124.26 5680101.53 97.50 -600124.53 5679579.65 97.50 -600124.92 5681122.53 97.50 -600124.93 5676448.89 101.25 -600125.18 5679616.49 97.50 -600125.32 5680996.85 97.50 -600125.41 5677452.70 98.75 -600125.98 5679986.07 96.25 -600126.00 5679709.71 96.25 -600126.51 5681264.02 97.50 -600126.81 5681229.29 97.50 -600126.84 5677011.15 101.25 -600126.84 5680775.62 97.25 -600126.93 5678224.02 98.75 -600127.02 5681207.52 96.25 -600127.05 5680736.05 97.50 -600127.33 5681184.19 96.00 -600127.43 5680717.88 97.50 -600127.80 5680973.66 97.50 -600127.84 5680924.08 96.25 -600127.86 5678359.57 98.75 -600127.90 5679588.66 97.50 -600128.02 5679995.83 96.25 -600128.26 5679607.75 97.50 -600128.29 5680951.51 97.50 -600128.56 5681248.79 97.50 -600128.69 5679389.58 97.50 -600128.88 5681222.74 96.25 -600129.04 5679917.02 96.25 -600129.13 5680265.62 97.50 -600129.20 5680064.01 96.25 -600129.28 5679598.11 97.50 -600129.41 5681104.48 97.50 -600129.43 5680933.07 97.50 -600129.45 5680640.14 97.50 -600129.55 5680076.26 96.25 -600129.58 5677461.78 98.75 -600129.60 5681250.72 96.25 -600129.72 5677064.46 100.00 -600129.81 5680311.54 97.50 -600129.81 5680988.03 97.50 -600129.84 5681018.42 97.50 -600129.91 5680251.32 96.25 -600129.94 5680781.89 97.50 -600130.13 5681164.12 96.00 -600130.15 5679059.48 97.50 -600130.23 5677022.25 101.50 -600130.45 5679379.79 97.50 -600130.56 5679350.01 97.50 -600130.61 5679359.96 97.50 -600130.69 5679340.07 97.50 -600130.80 5679369.91 97.50 -600130.90 5679658.36 96.25 -600131.00 5677038.76 101.25 -600131.23 5680094.41 97.50 -600131.27 5681255.04 96.25 -600131.32 5679330.14 97.50 -600131.48 5680230.48 96.25 -600131.53 5679701.42 96.25 -600131.81 5681199.55 96.25 -600131.90 5679320.21 97.50 -600131.92 5680005.00 96.25 -600132.26 5681335.18 97.50 -600132.45 5679310.28 97.50 -600133.20 5681117.04 97.50 -600133.24 5680201.73 97.50 -600133.29 5680965.31 97.50 -600133.36 5680767.42 97.50 -600133.47 5679300.39 97.50 -600133.68 5677470.89 98.75 -600133.82 5676453.45 101.25 -600133.87 5681176.81 96.00 -600134.14 5680979.13 97.50 -600134.20 5681179.19 96.25 -600134.48 5681211.03 96.25 -600134.96 5679290.55 97.50 -600135.23 5680303.31 97.50 -600135.34 5681224.60 97.50 -600135.63 5677008.71 101.25 -600135.71 5681260.96 97.50 -600135.83 5680014.18 96.25 -600135.84 5680944.96 97.50 -600135.98 5680918.29 96.25 -600136.10 5679051.50 97.50 -600136.26 5679923.89 96.25 -600136.41 5681011.07 97.50 -600136.48 5680633.03 97.50 -600136.57 5680738.40 97.50 -600136.64 5678221.65 98.75 -600137.00 5681243.92 97.50 -600137.06 5679693.14 96.25 -600137.30 5677032.37 101.25 -600137.42 5678356.70 98.75 -600137.78 5677480.00 98.75 -600137.83 5681218.48 96.25 -600137.83 5680927.71 97.50 -600138.13 5680268.73 97.50 -600138.45 5681246.96 96.25 -600138.58 5681161.14 96.00 -600138.63 5681100.76 97.50 -600138.84 5680079.77 96.25 -600139.07 5680065.45 96.25 -600139.15 5680254.32 96.25 -600139.22 5677061.72 100.00 -600139.38 5680779.01 97.50 -600139.44 5680088.96 97.50 -600139.48 5681168.85 96.00 -600139.93 5679655.69 96.25 -600139.97 5680958.12 97.50 -600140.21 5681252.90 96.25 -600140.33 5677023.55 101.25 -600140.36 5680971.43 97.50 -600140.50 5680226.90 96.25 -600140.56 5680295.01 97.50 -600140.65 5681195.32 96.25 -600140.69 5679282.55 97.50 -600140.78 5681330.09 97.50 -600140.96 5677014.23 101.25 -600140.97 5681168.04 96.25 -600141.65 5681111.79 97.50 -600141.88 5677489.11 98.75 -600142.03 5680770.83 97.50 -600142.45 5679043.86 97.50 -600143.19 5680202.34 97.50 -600143.21 5680020.85 96.25 -600143.40 5680938.42 97.50 -600143.45 5676456.04 101.25 -600143.48 5679930.75 96.25 -600143.55 5680625.96 97.50 -600143.62 5681181.29 96.25 -600143.74 5680276.59 97.50 -600144.02 5681004.73 97.50 -600144.36 5680912.91 96.25 -600144.38 5681209.88 96.25 -600144.53 5679181.07 97.75 -600144.73 5680286.27 97.50 -600144.87 5681221.85 97.50 -600145.15 5681258.46 97.50 -600145.35 5681176.40 96.50 -600145.46 5680921.32 97.50 -600145.96 5679647.79 96.25 -600145.98 5677498.22 98.75 -600146.23 5680740.16 97.50 -600146.34 5678219.28 98.75 -600146.60 5681242.83 97.50 -600146.75 5681249.27 96.00 -600146.75 5679274.67 97.50 -600147.06 5678354.14 98.75 -600147.55 5681216.18 96.25 -600147.73 5680964.93 97.50 -600147.76 5677056.54 100.00 -600147.83 5681245.62 96.25 -600147.89 5679313.57 96.25 -600148.03 5681097.89 97.50 -600148.21 5680257.81 96.25 -600148.25 5680952.57 97.50 -600148.53 5680081.54 96.25 -600148.94 5680066.89 96.25 -600149.35 5679036.70 97.50 -600149.44 5680088.96 97.50 -600149.45 5681325.23 97.50 -600149.55 5677507.55 98.75 -600149.57 5680223.95 96.25 -600149.66 5680242.17 96.00 -600149.81 5681253.36 96.25 -600149.94 5679323.27 96.25 -600150.00 5681191.96 96.25 -600150.27 5679938.03 96.25 -600150.37 5681170.52 96.25 -600150.43 5679303.93 96.25 -600150.62 5680618.89 97.50 -600150.73 5678982.60 97.25 -600150.83 5681109.28 97.50 -600150.86 5679639.10 96.25 -600150.91 5680027.01 96.25 -600151.35 5680932.60 97.50 -600152.20 5679332.96 96.25 -600152.26 5680999.30 97.50 -600152.35 5678991.38 97.25 -600152.51 5679266.56 97.50 -600152.78 5680205.16 97.50 -600152.96 5679294.30 96.25 -600153.00 5677516.93 98.75 -600153.12 5676458.56 101.25 -600153.31 5681181.94 96.25 -600153.37 5680908.60 96.25 -600153.65 5680265.72 96.25 -600153.67 5680915.72 97.50 -600154.24 5681208.32 96.25 -600154.69 5681220.92 97.50 -600154.90 5681258.33 97.50 -600155.07 5679342.50 96.25 -600155.28 5680275.31 96.25 -600155.51 5678974.31 97.25 -600155.52 5677050.40 100.00 -600155.77 5679630.42 96.25 -600155.88 5680741.92 97.50 -600156.05 5678216.91 98.75 -600156.34 5681242.19 97.50 -600156.44 5677526.31 98.75 -600156.57 5680961.52 97.50 -600156.61 5679285.07 96.25 -600156.71 5678351.59 98.75 -600156.84 5680611.07 97.50 -600156.90 5680284.89 96.25 -600156.95 5679945.42 96.25 -600157.20 5679104.25 97.50 -600157.21 5681245.90 96.25 -600157.43 5681215.03 96.25 -600157.65 5679031.49 97.50 -600157.75 5679113.73 97.50 -600157.80 5681175.42 96.25 -600157.93 5679352.04 96.25 -600157.98 5681097.63 97.50 -600158.10 5681320.36 97.50 -600158.14 5680951.12 97.50 -600158.27 5679258.45 97.50 -600158.49 5680081.03 96.25 -600158.83 5680068.11 96.25 -600158.91 5680225.55 96.25 -600159.03 5681251.06 96.25 -600159.43 5680088.77 97.50 -600159.54 5680294.19 96.25 -600159.80 5680211.63 97.50 -600159.88 5677535.69 98.75 -600159.97 5681192.50 96.25 -600160.59 5680029.43 96.25 -600160.70 5679275.98 96.25 -600160.74 5679621.78 96.25 -600160.77 5681109.60 97.50 -600160.86 5679361.56 96.25 -600160.86 5679123.12 97.50 -600161.02 5680930.16 97.50 -600161.10 5679330.17 96.00 -600161.37 5678966.81 97.25 -600161.60 5678990.05 97.25 -600161.70 5680997.77 97.50 -600161.75 5679339.75 96.00 -600162.37 5677043.12 100.00 -600162.38 5679642.54 96.25 -600162.58 5679095.93 97.50 -600162.73 5679249.64 97.50 -600162.74 5679302.39 96.25 -600162.76 5676460.08 101.25 -600162.87 5680905.61 96.25 -600162.90 5680603.11 97.50 -600163.03 5680913.21 97.50 -600163.33 5677545.07 98.75 -600163.47 5679952.94 96.25 -600163.73 5679633.74 96.25 -600164.16 5679453.28 96.25 -600164.19 5681208.03 96.25 -600164.28 5679370.91 96.25 -600164.60 5681220.54 97.50 -600164.66 5681258.33 97.50 -600164.72 5678345.62 98.75 -600164.82 5676597.25 101.25 -600164.98 5679348.79 96.00 -600165.08 5676607.25 101.25 -600165.09 5679292.73 96.25 -600165.22 5680744.87 97.50 -600165.33 5676617.24 101.25 -600165.75 5680219.66 97.50 -600165.75 5678214.54 98.75 -600165.81 5679311.64 96.25 -600166.06 5681242.74 97.50 -600166.27 5679613.48 96.25 -600166.45 5680960.98 97.50 -600166.48 5679240.45 97.50 -600166.49 5680231.52 96.25 -600166.55 5676587.41 101.25 -600166.65 5679325.66 96.00 -600166.70 5680295.68 96.25 -600166.73 5681315.43 97.50 -600166.77 5677554.44 98.75 -600166.97 5679268.34 96.25 -600167.04 5679461.85 96.25 -600167.15 5679087.33 97.50 -600167.39 5681214.45 96.25 -600167.41 5679031.20 97.50 -600167.73 5681099.22 97.50 -600167.84 5678959.76 97.25 -600167.89 5679624.75 96.25 -600168.00 5679127.66 97.50 -600168.09 5679380.09 96.25 -600168.10 5680950.63 97.50 -600168.43 5679357.78 96.00 -600168.45 5680081.35 96.25 -600168.73 5680069.33 96.25 -600168.73 5680595.00 97.50 -600168.88 5676626.58 101.25 -600169.05 5678984.04 97.25 -600169.13 5679077.58 97.50 -600169.29 5677035.92 100.00 -600169.42 5680088.32 97.50 -600169.45 5676577.88 101.25 -600169.59 5679960.81 96.25 -600169.77 5679445.79 96.25 -600169.84 5681193.84 96.25 -600169.87 5679614.99 96.25 -600169.90 5679284.19 96.25 -600170.18 5677563.84 98.75 -600170.30 5680031.65 96.25 -600170.50 5679067.73 97.50 -600170.71 5681109.86 97.50 -600170.81 5679320.17 96.25 -600170.90 5676465.75 101.25 -600170.96 5680929.10 97.50 -600171.14 5679645.24 96.25 -600171.49 5680239.56 96.25 -600171.59 5680998.00 97.50 -600171.61 5679057.85 97.50 -600171.64 5679333.79 96.00 -600171.67 5679231.96 97.50 -600171.89 5679366.76 96.00 -600172.06 5680287.83 96.25 -600172.12 5681183.67 96.25 -600172.50 5679047.94 97.50 -600172.52 5680903.01 96.25 -600172.60 5680226.95 97.50 -600172.61 5678339.50 98.75 -600172.96 5679120.80 97.50 -600172.98 5680912.64 97.50 -600172.98 5679388.76 96.25 -600173.09 5681190.54 96.25 -600173.09 5680278.17 96.25 -600173.15 5680249.01 96.25 -600173.15 5680258.73 96.25 -600173.15 5680268.45 96.25 -600173.18 5679304.04 97.50 -600173.32 5676635.37 101.25 -600173.32 5679038.04 97.50 -600173.48 5677573.27 98.75 -600173.50 5676568.76 101.25 -600174.03 5679261.32 96.25 -600174.12 5681208.42 96.25 -600174.35 5681174.12 96.25 -600174.39 5680586.75 97.50 -600174.41 5681258.63 97.50 -600174.42 5679342.96 96.00 -600174.48 5681219.65 97.50 -600174.49 5679457.05 96.25 -600174.51 5680748.03 97.50 -600174.60 5679312.71 97.50 -600174.86 5678953.28 97.25 -600175.14 5681310.14 97.50 -600175.24 5679968.99 96.25 -600175.30 5679375.77 96.00 -600175.41 5678211.97 98.75 -600175.77 5681243.78 97.50 -600175.79 5680864.86 97.50 -600176.03 5679352.44 96.00 -600176.14 5678977.65 97.25 -600176.18 5679276.50 96.25 -600176.25 5677028.75 100.00 -600176.35 5680960.98 97.50 -600176.51 5679328.32 96.25 -600176.78 5677582.70 98.75 -600176.83 5681178.39 96.25 -600176.86 5679223.48 97.50 -600177.06 5676473.55 101.25 -600177.18 5679295.26 97.50 -600177.37 5681214.23 96.25 -600177.48 5681101.04 97.50 -600177.56 5679361.94 96.00 -600178.01 5676559.83 101.25 -600178.09 5680950.63 97.50 -600178.22 5679440.75 96.25 -600178.22 5680234.89 97.50 -600178.40 5680081.96 96.25 -600178.50 5680886.42 97.50 -600178.51 5679384.84 96.00 -600178.57 5679115.56 97.50 -600178.61 5680068.83 96.25 -600178.72 5680872.83 97.50 -600179.03 5679396.64 96.25 -600179.17 5679321.20 97.50 -600179.35 5681196.62 96.25 -600179.39 5680087.57 97.50 -600179.49 5679640.71 96.25 -600179.79 5681003.36 97.50 -600179.79 5679092.57 96.25 -600179.94 5678332.71 98.75 -600180.00 5680284.45 97.50 -600180.04 5680578.50 97.50 -600180.08 5680033.64 96.25 -600180.08 5677592.13 98.75 -600180.16 5676642.66 101.25 -600180.20 5679874.32 97.50 -600180.34 5680294.38 97.50 -600180.35 5679102.47 96.25 -600180.39 5679977.52 96.25 -600180.43 5680244.64 97.50 -600180.53 5679864.34 97.50 -600180.60 5681110.84 97.50 -600180.62 5679337.25 96.25 -600180.68 5680274.48 97.50 -600180.69 5679884.27 97.50 -600180.70 5679370.96 96.00 -600180.86 5679854.36 97.50 -600180.90 5680928.05 97.50 -600180.95 5679082.71 96.25 -600181.02 5679394.13 96.00 -600181.19 5679254.41 96.25 -600181.24 5679844.39 97.50 -600181.33 5676482.54 101.25 -600181.35 5680264.50 97.50 -600181.61 5680254.51 97.50 -600181.66 5679894.20 97.50 -600181.86 5679834.42 97.50 -600182.02 5681182.37 96.25 -600182.18 5680900.45 96.25 -600182.20 5676550.76 101.25 -600182.25 5680304.18 97.50 -600182.28 5678970.33 97.25 -600182.31 5679287.19 97.50 -600182.32 5681194.21 96.25 -600182.34 5679072.87 96.25 -600182.48 5679824.46 97.50 -600182.66 5679451.36 96.25 -600182.89 5679269.16 96.25 -600182.94 5680913.15 97.50 -600183.01 5680752.87 97.50 -600183.02 5678949.08 97.25 -600183.15 5676492.37 101.25 -600183.19 5680859.84 97.50 -600183.31 5679814.51 97.50 -600183.31 5679346.81 96.25 -600183.38 5677601.56 98.75 -600183.48 5680889.01 96.25 -600183.52 5681304.80 97.50 -600183.57 5681171.17 96.25 -600183.74 5677022.15 100.00 -600183.94 5679111.74 96.25 -600184.02 5679329.55 97.50 -600184.05 5679903.84 97.50 -600184.10 5679216.86 97.50 -600184.11 5681257.72 97.50 -600184.17 5680878.41 97.50 -600184.20 5680709.55 97.50 -600184.29 5679804.58 97.50 -600184.29 5681218.29 97.50 -600184.77 5679379.68 96.00 -600184.82 5676502.23 101.25 -600185.01 5679986.34 96.25 -600185.01 5679356.61 96.25 -600185.04 5678209.30 98.75 -600185.04 5680313.79 97.50 -600185.05 5681246.79 97.50 -600185.11 5679648.09 96.25 -600185.35 5679404.34 96.25 -600185.68 5679063.71 96.25 -600185.95 5679338.93 97.50 -600186.11 5676541.58 101.25 -600186.24 5680961.18 97.50 -600186.43 5676512.09 101.25 -600186.56 5679401.31 96.00 -600186.67 5677610.99 98.75 -600186.79 5681178.24 96.25 -600186.81 5679366.39 96.25 -600187.05 5679246.35 96.25 -600187.13 5679913.34 97.50 -600187.19 5680714.52 96.25 -600187.19 5679120.10 97.50 -600187.27 5678325.92 98.75 -600187.37 5676649.57 101.25 -600187.39 5681101.92 97.50 -600187.48 5678962.30 97.25 -600187.52 5680571.90 97.50 -600187.53 5679795.21 97.50 -600187.88 5679348.31 97.50 -600187.91 5680065.66 96.25 -600188.07 5679439.44 96.25 -600188.09 5676531.79 101.25 -600188.09 5680950.63 97.50 -600188.12 5681201.32 96.25 -600188.25 5680080.74 96.25 -600188.39 5676521.90 101.25 -600188.56 5680939.88 97.25 -600188.57 5679279.85 97.50 -600188.61 5680100.72 97.50 -600188.73 5681007.48 97.50 -600188.96 5679388.35 96.00 -600189.01 5679261.33 96.25 -600189.05 5680088.39 97.50 -600189.37 5679923.03 97.50 -600189.57 5679375.95 96.25 -600189.63 5679995.17 96.25 -600189.68 5680322.63 97.50 -600189.74 5680033.36 96.25 -600189.81 5679357.68 97.50 -600189.88 5678953.43 97.25 -600189.89 5680096.18 97.50 -600189.93 5677620.44 98.75 -600190.30 5679068.81 96.25 -600190.48 5681112.00 97.50 -600190.76 5680928.60 97.50 -600190.87 5679932.90 97.50 -600190.89 5679445.74 96.25 -600191.36 5680758.03 97.50 -600191.51 5680897.02 96.25 -600191.53 5679117.56 96.25 -600191.57 5680883.17 96.25 -600191.57 5679786.09 97.50 -600191.64 5679412.06 96.25 -600191.66 5681253.29 97.50 -600191.81 5677016.37 100.00 -600191.85 5681299.39 97.50 -600191.94 5681181.25 96.25 -600192.04 5681196.14 96.25 -600192.16 5679078.58 96.25 -600192.26 5679237.87 96.25 -600192.31 5679110.15 96.00 -600192.37 5679942.77 97.50 -600192.56 5678317.56 98.75 -600192.74 5679652.97 96.25 -600192.84 5679397.16 96.00 -600192.85 5679212.34 97.50 -600192.87 5680913.87 97.50 -600192.98 5680859.64 97.50 -600193.17 5679128.02 97.50 -600193.19 5677629.88 98.75 -600193.19 5679002.54 97.50 -600193.22 5679366.62 97.50 -600193.39 5680706.35 97.50 -600193.42 5681169.90 96.25 -600193.68 5679088.41 96.25 -600193.93 5681215.93 97.50 -600194.06 5679952.61 97.50 -600194.38 5679384.60 96.25 -600194.44 5680331.42 97.50 -600194.45 5680003.89 96.25 -600194.67 5678206.63 98.75 -600194.67 5679570.02 96.25 -600194.70 5680564.96 97.50 -600194.93 5676656.12 101.25 -600194.96 5679253.36 96.25 -600195.06 5679272.71 97.50 -600195.73 5680987.26 97.20 -600196.12 5680961.78 97.50 -600196.16 5679118.50 96.00 -600196.29 5679074.07 97.50 -600196.42 5679962.31 97.50 -600196.45 5677639.33 98.75 -600196.46 5681175.77 96.25 -600196.50 5679777.41 97.50 -600196.50 5681206.32 96.25 -600196.65 5680713.56 96.25 -600196.67 5680060.92 96.25 -600196.96 5679375.42 97.50 -600197.26 5678993.89 97.50 -600197.27 5681102.95 97.50 -600197.42 5679436.71 96.25 -600197.48 5679229.39 96.25 -600197.69 5679097.46 96.25 -600197.71 5678309.02 98.75 -600197.87 5679419.84 96.25 -600198.04 5680079.74 96.25 -600198.04 5681010.77 97.50 -600198.05 5680950.91 97.50 -600198.07 5679064.69 97.50 -600198.12 5679008.90 97.50 -600198.21 5680102.80 97.50 -600198.26 5679108.93 96.00 -600198.28 5679124.35 96.25 -600198.76 5679083.67 97.50 -600198.89 5679578.01 96.25 -600198.97 5680340.32 97.50 -600198.98 5680763.90 97.50 -600199.18 5679135.95 97.50 -600199.31 5680030.59 96.25 -600199.54 5679393.11 96.25 -600199.69 5681293.34 97.50 -600199.71 5677648.77 98.75 -600199.79 5679971.53 97.50 -600200.20 5679445.73 96.25 -600200.35 5681113.02 97.50 -600200.51 5680892.69 96.25 -600200.53 5680930.68 97.50 -600200.60 5679093.40 97.50 -600200.67 5680881.89 96.25 -600200.78 5677011.97 100.00 -600201.28 5680701.19 97.50 -600201.45 5680557.59 97.50 -600201.56 5679768.82 97.50 -600201.61 5679566.43 96.25 -600201.64 5679246.03 96.25 -600201.66 5679383.76 97.50 -600201.72 5679265.73 97.50 -600201.72 5681193.72 96.25 -600201.79 5680856.43 97.50 -600201.86 5679428.78 96.25 -600201.87 5681180.22 96.25 -600202.08 5679106.38 96.25 -600202.17 5679208.86 97.50 -600202.32 5679651.55 96.25 -600202.39 5679318.55 97.75 -600202.46 5680349.69 97.50 -600202.49 5681165.83 96.25 -600202.55 5680916.27 97.50 -600202.58 5679125.70 96.00 -600202.89 5676662.11 101.25 -600203.40 5678300.80 98.75 -600203.52 5678986.11 97.50 -600203.54 5679402.21 96.25 -600203.57 5681213.58 97.50 -600203.94 5679102.61 97.50 -600203.96 5680772.35 97.50 -600204.05 5679061.83 97.50 -600204.16 5679222.00 96.25 -600204.29 5678203.96 98.75 -600204.44 5677657.51 98.75 -600204.52 5679131.62 96.25 -600204.68 5679116.12 96.00 -600204.98 5679585.49 96.25 -600205.09 5679143.95 97.50 -600205.24 5680692.31 97.50 -600205.25 5680866.58 96.25 -600205.68 5680905.63 97.50 -600205.73 5679392.42 97.50 -600205.82 5679979.48 97.50 -600205.83 5680717.38 96.25 -600205.85 5680057.57 96.25 -600205.91 5680963.24 97.50 -600205.94 5680359.07 97.50 -600206.15 5681173.87 96.25 -600206.47 5681206.67 96.25 -600206.72 5680876.46 96.25 -600206.77 5680848.24 97.50 -600206.79 5680083.68 96.25 -600206.85 5681105.61 97.50 -600206.96 5680682.72 97.50 -600207.05 5681286.67 97.50 -600207.09 5680898.21 97.50 -600207.43 5679760.74 97.50 -600207.51 5679411.33 96.25 -600207.70 5681012.57 97.50 -600207.71 5679450.98 96.25 -600207.73 5680857.21 96.25 -600207.75 5680953.33 97.50 -600207.88 5679007.61 97.50 -600207.99 5680550.02 97.50 -600208.18 5680103.39 97.50 -600208.22 5680781.17 97.50 -600208.29 5680510.73 97.50 -600208.29 5680520.73 97.50 -600208.46 5679114.01 96.25 -600208.55 5679041.19 97.50 -600208.67 5679594.72 96.25 -600208.69 5678977.56 97.50 -600208.73 5680368.67 97.50 -600208.75 5679111.23 97.50 -600208.78 5679239.10 96.25 -600208.90 5680673.17 97.50 -600209.06 5680500.80 97.50 -600209.07 5679132.85 96.00 -600209.09 5678292.59 98.75 -600209.17 5680029.07 96.25 -600209.38 5679401.27 97.50 -600209.46 5679571.87 96.25 -600209.55 5680838.96 97.50 -600209.57 5679050.63 97.50 -600209.58 5680644.51 97.50 -600209.78 5680530.57 97.50 -600209.85 5679124.28 96.00 -600209.87 5680634.77 97.50 -600210.08 5677665.74 98.75 -600210.12 5679139.36 96.25 -600210.14 5680892.34 96.25 -600210.24 5681111.96 97.50 -600210.27 5680540.35 97.50 -600210.31 5680932.77 97.50 -600210.36 5681159.68 96.25 -600210.56 5677010.25 100.00 -600210.63 5680829.21 97.50 -600210.67 5680490.93 97.50 -600210.71 5680654.14 97.50 -600210.79 5679214.57 96.25 -600210.82 5679152.09 97.50 -600210.92 5681189.94 96.25 -600211.11 5680663.68 97.50 -600211.20 5679264.86 97.50 -600211.22 5679205.01 97.50 -600211.34 5676667.46 101.25 -600211.44 5681178.03 96.25 -600211.45 5681198.69 96.25 -600211.53 5680378.27 97.50 -600211.54 5679647.88 96.25 -600211.67 5679031.81 97.50 -600211.79 5680848.09 96.25 -600212.02 5680790.21 97.50 -600212.10 5679420.13 96.25 -600212.21 5680918.77 97.50 -600212.23 5680819.53 97.50 -600212.37 5679986.97 97.50 -600212.48 5679066.74 97.50 -600212.56 5680799.98 97.50 -600212.63 5680481.14 97.50 -600212.68 5679581.29 96.25 -600212.88 5680809.78 97.50 -600212.89 5679459.48 96.25 -600212.90 5680866.26 96.25 -600213.02 5679603.48 96.25 -600213.02 5680091.47 96.25 -600213.16 5679410.05 97.50 -600213.30 5679752.67 97.50 -600213.32 5681211.79 97.50 -600213.46 5678968.79 97.50 -600213.59 5680625.82 97.50 -600213.72 5681279.32 97.50 -600213.86 5680838.39 96.25 -600213.92 5678201.29 98.75 -600214.08 5680908.80 97.50 -600214.51 5680722.24 96.25 -600214.54 5679140.80 96.00 -600214.59 5678284.25 98.75 -600214.84 5679121.64 96.25 -600215.06 5680874.93 96.25 -600215.28 5681201.80 96.25 -600215.30 5680856.72 96.25 -600215.33 5679147.40 96.25 -600215.57 5680471.58 97.50 -600215.58 5680387.37 97.50 -600215.69 5679590.54 96.25 -600215.70 5680964.70 97.50 -600215.75 5680056.61 96.25 -600215.75 5680828.62 96.25 -600215.80 5679118.19 97.50 -600215.83 5679131.85 96.00 -600215.88 5679160.61 97.50 -600215.91 5679232.17 96.25 -600216.46 5681206.67 96.25 -600216.50 5677673.39 98.75 -600216.54 5679446.70 96.00 -600216.54 5679002.94 97.50 -600216.87 5681008.85 97.50 -600216.90 5680897.35 97.50 -600217.07 5681152.47 96.25 -600217.33 5679428.59 96.25 -600217.38 5679054.92 97.50 -600217.41 5679023.93 97.50 -600217.44 5680955.76 97.50 -600217.49 5678959.64 97.50 -600217.72 5680106.38 97.50 -600217.76 5679455.14 96.00 -600217.82 5679075.08 97.50 -600217.90 5679197.63 97.50 -600217.94 5679390.04 96.25 -600218.16 5680847.18 96.25 -600218.27 5680779.29 97.50 -600218.38 5679418.08 97.50 -600218.42 5680617.39 97.50 -600218.55 5680819.03 96.25 -600218.66 5679208.51 96.25 -600218.74 5680865.54 97.50 -600219.05 5680028.95 96.25 -600219.15 5679270.33 97.50 -600219.17 5679744.59 97.50 -600219.21 5679381.13 96.25 -600219.25 5680099.25 96.25 -600219.47 5680462.41 97.50 -600219.47 5681184.90 96.25 -600219.53 5679149.06 96.00 -600219.67 5679398.54 96.25 -600219.73 5679993.71 97.50 -600219.85 5681193.56 96.25 -600219.89 5676672.64 101.25 -600219.94 5679642.53 96.25 -600219.97 5678275.83 98.75 -600219.97 5680935.29 97.50 -600220.01 5680855.82 97.50 -600220.02 5680893.77 96.25 -600220.04 5680789.04 97.50 -600220.10 5680396.29 97.50 -600220.12 5679169.61 97.50 -600220.32 5680770.79 97.50 -600220.45 5677008.85 100.00 -600220.52 5679155.45 96.25 -600220.60 5678950.22 97.50 -600220.62 5679465.69 96.25 -600220.71 5681272.36 97.50 -600220.71 5680837.53 96.25 -600221.17 5679608.27 96.25 -600221.20 5679129.29 96.25 -600221.78 5680921.56 97.50 -600221.86 5679139.40 96.00 -600222.07 5679189.11 97.50 -600222.20 5679179.23 97.50 -600222.36 5680873.67 97.50 -600222.56 5679437.05 96.25 -600222.64 5679211.94 96.00 -600222.66 5681144.21 96.25 -600222.71 5679224.91 96.25 -600222.99 5680727.47 96.25 -600223.12 5681210.57 97.50 -600223.25 5679426.31 97.50 -600223.30 5679373.27 96.25 -600223.30 5679373.27 97.50 -600223.30 5679594.36 96.25 -600223.30 5677680.67 98.75 -600223.45 5679200.22 96.25 -600223.47 5680880.33 96.25 -600223.49 5679406.66 96.25 -600223.49 5680846.53 97.50 -600223.56 5679124.18 97.50 -600223.69 5679278.59 97.50 -600223.71 5679363.63 97.50 -600223.74 5680609.22 97.50 -600223.76 5678199.70 98.75 -600223.90 5680798.16 97.50 -600223.92 5680909.31 97.50 -600223.94 5680453.47 97.50 -600224.11 5679447.40 96.00 -600224.43 5680828.27 96.25 -600224.46 5679316.37 97.50 -600224.52 5679082.38 97.50 -600224.61 5680405.22 97.50 -600224.72 5678997.18 97.50 -600224.81 5679325.84 97.50 -600224.88 5679354.12 97.50 -600224.88 5679461.04 96.00 -600225.04 5679634.35 96.25 -600225.04 5679736.51 97.50 -600225.04 5679156.98 96.00 -600225.14 5680818.69 96.25 -600225.18 5681200.69 96.25 -600225.21 5680967.02 97.50 -600225.21 5679203.12 96.00 -600225.33 5680053.87 96.25 -600225.34 5679163.72 96.25 -600225.34 5678267.40 98.75 -600225.41 5679017.94 97.50 -600225.51 5679585.91 96.25 -600225.69 5679306.80 97.50 -600225.89 5680836.95 97.50 -600225.99 5678941.83 97.50 -600226.25 5679287.83 97.50 -600226.30 5681005.91 97.50 -600226.37 5679147.93 96.00 -600226.43 5681206.50 96.25 -600226.55 5680898.67 97.50 -600226.56 5680110.83 97.50 -600226.66 5679335.28 97.50 -600226.73 5680105.74 96.25 -600226.78 5679137.47 96.25 -600226.81 5680807.64 97.50 -600227.08 5680444.05 97.50 -600227.09 5680600.29 97.50 -600227.14 5680958.18 97.50 -600227.19 5679191.53 96.25 -600227.34 5679055.74 97.50 -600227.37 5681178.80 96.25 -600227.53 5680827.17 97.50 -600227.58 5679344.89 97.50 -600227.58 5679297.34 97.50 -600227.93 5679434.47 97.50 -600227.97 5679999.21 97.50 -600228.27 5679576.64 96.25 -600228.27 5680817.29 97.50 -600228.27 5679602.39 96.25 -600228.28 5680032.10 96.25 -600228.37 5679172.60 96.25 -600228.56 5679165.95 96.00 -600228.60 5676677.55 101.25 -600228.62 5680414.26 97.50 -600228.70 5678837.66 97.50 -600228.73 5679471.44 96.25 -600228.79 5679182.09 96.25 -600228.80 5680424.26 97.50 -600228.94 5681266.79 97.50 -600228.97 5679194.23 96.00 -600228.98 5680434.26 97.50 -600229.00 5681189.57 96.25 -600229.06 5680590.82 97.50 -600229.09 5679211.19 96.00 -600229.29 5681136.75 96.25 -600229.41 5679412.98 96.25 -600229.48 5679217.64 96.25 -600229.49 5680938.34 97.50 -600229.63 5679625.56 96.25 -600229.67 5680896.35 96.25 -600229.94 5679443.69 96.25 -600230.03 5680772.80 97.50 -600230.24 5677006.89 100.00 -600230.51 5680879.11 97.50 -600230.61 5679264.46 96.25 -600230.73 5679184.88 96.00 -600230.80 5678259.03 98.75 -600230.81 5677687.27 98.75 -600230.82 5679371.98 96.25 -600230.86 5679156.48 96.00 -600230.90 5679728.44 97.50 -600231.16 5679175.24 96.00 -600231.36 5680924.34 97.50 -600231.48 5679362.18 96.25 -600231.57 5679146.18 96.25 -600231.86 5679274.14 96.25 -600231.95 5679452.47 96.00 -600232.24 5678934.02 97.50 -600232.26 5679088.50 97.50 -600232.34 5679128.76 97.50 -600232.62 5679257.40 96.25 -600232.70 5680729.21 96.25 -600232.72 5680884.06 96.25 -600232.73 5679283.94 96.25 -600233.03 5681211.07 97.50 -600233.08 5680040.28 96.25 -600233.29 5679352.52 96.25 -600233.41 5679011.94 97.50 -600233.56 5679463.99 96.00 -600233.61 5678199.86 98.75 -600233.67 5680049.18 96.25 -600233.68 5678992.90 97.50 -600233.71 5680094.25 96.25 -600233.71 5680910.37 97.50 -600233.75 5679202.86 96.00 -600233.84 5681182.28 96.25 -600233.84 5679293.70 96.25 -600233.92 5679303.54 96.25 -600233.97 5680971.63 97.50 -600234.00 5679313.37 96.25 -600234.32 5679323.20 96.25 -600234.38 5680085.97 96.25 -600234.50 5679165.37 96.00 -600234.53 5679373.49 96.25 -600234.57 5680582.78 97.50 -600234.68 5679333.02 96.25 -600234.88 5680116.38 97.50 -600235.04 5679342.85 96.25 -600235.08 5681199.43 96.25 -600235.35 5680110.65 96.25 -600235.90 5681003.63 97.50 -600235.97 5679155.10 96.25 -600236.00 5680962.80 97.50 -600236.01 5679375.11 96.25 -600236.01 5679375.11 97.50 -600236.12 5680901.01 97.50 -600236.15 5679439.38 97.50 -600236.18 5679380.78 96.25 -600236.34 5679386.45 96.25 -600236.34 5679386.45 97.50 -600236.40 5681260.25 97.50 -600236.40 5678250.76 98.75 -600236.41 5681206.06 96.25 -600236.53 5681129.91 96.25 -600236.54 5679394.85 96.25 -600236.70 5679720.31 97.50 -600236.92 5680003.59 97.50 -600236.93 5679193.74 96.00 -600236.93 5679599.85 96.25 -600236.99 5679476.86 96.25 -600237.03 5679058.14 97.50 -600237.04 5679577.53 96.25 -600237.17 5679619.54 96.25 -600237.23 5679174.63 96.00 -600237.31 5676682.46 101.25 -600237.31 5679211.50 96.25 -600237.66 5679364.16 96.25 -600237.72 5680102.13 96.25 -600237.73 5679184.14 96.00 -600237.77 5679449.82 96.25 -600237.78 5679416.27 96.25 -600237.78 5679416.27 97.50 -600238.31 5677693.87 98.75 -600238.53 5678926.25 97.50 -600238.59 5679296.30 96.00 -600238.69 5680777.55 97.50 -600238.69 5680942.09 97.50 -600238.69 5678837.43 97.50 -600239.32 5680898.93 96.25 -600239.68 5679287.24 96.00 -600239.84 5680882.47 97.50 -600239.89 5679402.52 96.25 -600239.89 5679314.88 96.00 -600240.01 5679164.19 96.25 -600240.09 5677005.29 100.00 -600240.23 5679456.57 96.00 -600240.45 5676898.02 100.00 -600240.51 5679004.90 97.50 -600240.54 5679093.91 97.50 -600240.56 5679366.21 97.50 -600240.62 5679305.40 96.00 -600240.63 5680928.01 97.50 -600240.78 5679354.84 96.25 -600240.83 5679262.51 96.25 -600240.89 5679202.46 96.25 -600241.13 5679133.34 97.50 -600241.21 5680576.06 97.50 -600241.22 5679469.02 96.00 -600241.78 5681172.10 97.50 -600241.78 5680888.24 96.25 -600241.82 5681189.63 97.50 -600241.84 5679585.93 96.25 -600242.00 5678242.49 98.75 -600242.05 5678995.88 97.50 -600242.24 5680083.88 96.25 -600242.33 5679712.07 97.50 -600242.59 5680730.41 96.25 -600242.71 5680914.08 97.50 -600242.74 5680976.23 97.50 -600242.93 5681210.97 97.50 -600243.08 5680122.11 97.50 -600243.12 5679410.10 96.25 -600243.15 5678202.57 98.75 -600243.43 5679484.45 96.25 -600243.48 5679243.11 97.50 -600243.67 5679323.30 96.00 -600243.68 5679173.43 96.25 -600243.79 5679192.95 96.25 -600244.08 5679345.58 96.25 -600244.19 5679594.62 96.25 -600244.21 5681123.55 96.25 -600244.30 5679605.83 96.25 -600244.38 5679444.28 97.50 -600244.44 5680114.74 96.25 -600244.85 5678918.50 97.50 -600244.85 5676904.37 100.00 -600244.86 5680905.41 97.50 -600244.86 5680967.44 97.50 -600244.92 5679183.24 96.25 -600244.97 5679381.91 97.50 -600245.00 5679251.23 97.50 -600245.02 5681198.43 96.25 -600245.11 5679357.30 97.50 -600245.12 5681182.05 97.50 -600245.29 5679114.82 97.75 -600245.35 5681255.98 97.50 -600245.42 5680096.63 96.50 -600245.55 5679615.15 96.25 -600245.77 5680106.16 96.25 -600245.78 5679455.70 96.25 -600245.79 5681004.12 97.50 -600245.80 5679421.34 97.50 -600245.81 5677700.47 98.75 -600245.82 5679463.78 96.00 -600245.93 5676891.14 100.00 -600246.16 5680007.38 97.50 -600246.35 5679061.75 97.50 -600246.38 5681205.87 96.25 -600246.42 5676686.46 101.25 -600246.82 5680783.13 97.50 -600247.24 5678234.00 98.75 -600247.35 5680947.09 97.50 -600247.41 5681176.68 97.50 -600247.63 5679336.41 96.25 -600247.80 5679284.52 96.00 -600247.86 5679316.34 96.00 -600247.97 5679703.83 97.50 -600248.20 5680903.50 96.25 -600248.63 5678836.52 97.50 -600248.82 5679268.00 96.25 -600248.98 5681167.02 97.50 -600249.15 5679235.42 97.50 -600249.17 5680885.83 97.50 -600249.35 5679472.26 96.00 -600249.38 5679098.37 97.50 -600249.64 5679307.02 96.00 -600249.70 5681195.12 97.50 -600249.84 5680931.82 97.50 -600249.89 5679137.96 97.50 -600249.97 5680571.79 97.50 -600249.97 5680088.43 96.25 -600250.03 5679182.62 97.50 -600250.03 5677004.27 100.00 -600250.54 5679416.73 96.25 -600250.64 5680892.85 96.25 -600250.98 5679172.95 97.50 -600251.05 5680981.56 97.50 -600251.17 5680127.97 97.50 -600251.18 5679327.24 96.25 -600251.29 5679349.50 97.50 -600251.35 5679487.90 96.25 -600251.47 5680918.57 97.50 -600251.49 5678208.07 98.75 -600251.60 5679463.76 96.25 -600251.81 5678911.43 97.50 -600251.96 5679395.65 97.50 -600252.02 5678225.22 98.75 -600252.16 5679297.85 96.00 -600252.32 5679192.13 97.50 -600252.49 5680731.62 96.25 -600252.66 5681118.23 96.25 -600252.69 5679448.91 97.50 -600252.84 5681210.42 97.50 -600252.84 5679427.83 97.50 -600252.86 5679593.86 96.25 -600253.00 5679256.24 97.50 -600253.31 5677707.07 98.75 -600253.41 5680910.30 97.50 -600253.57 5676885.83 100.00 -600253.61 5676905.41 100.00 -600253.64 5680972.21 97.50 -600253.83 5680013.41 97.50 -600253.98 5679695.86 97.50 -600253.99 5680635.95 97.50 -600254.11 5680789.86 97.50 -600254.13 5680116.90 96.25 -600254.30 5681178.55 97.50 -600254.57 5679288.66 96.00 -600254.62 5680107.04 96.25 -600254.77 5679383.20 97.50 -600254.92 5679318.15 96.25 -600254.93 5681253.92 97.50 -600254.95 5679201.53 97.50 -600255.17 5679066.43 97.50 -600255.35 5680626.29 97.50 -600255.61 5681005.16 97.50 -600255.69 5680952.54 97.50 -600255.85 5676689.81 101.25 -600255.85 5679404.70 97.50 -600256.01 5678216.35 98.75 -600256.19 5679471.13 96.25 -600256.23 5679228.70 97.50 -600256.34 5680094.80 96.25 -600257.04 5681174.30 97.50 -600257.07 5680908.10 96.25 -600257.69 5679103.73 97.50 -600257.73 5679423.61 96.25 -600257.73 5679143.83 97.50 -600257.83 5679341.94 97.50 -600257.87 5680845.40 97.50 -600257.97 5680643.24 97.50 -600258.02 5679271.44 96.25 -600258.05 5679392.74 97.50 -600258.07 5679308.89 96.25 -600258.20 5679210.76 97.50 -600258.40 5680616.97 97.50 -600258.48 5681164.15 97.50 -600258.50 5680889.18 97.50 -600258.51 5678834.99 97.50 -600258.74 5680567.55 97.50 -600258.94 5680935.90 97.50 -600259.05 5680987.38 97.50 -600259.18 5680021.71 97.50 -600259.53 5681196.27 97.50 -600259.54 5679434.48 97.50 -600259.55 5680133.42 97.50 -600259.62 5677005.96 100.00 -600259.70 5679443.82 97.50 -600259.71 5679299.19 96.25 -600259.71 5679220.42 97.50 -600259.82 5680896.43 96.25 -600259.96 5678905.65 97.50 -600260.00 5680102.60 96.25 -600260.10 5679687.97 97.50 -600260.16 5680923.21 97.50 -600260.20 5679172.49 97.50 -600260.36 5679587.55 96.25 -600260.73 5680797.24 97.50 -600260.81 5677713.67 98.75 -600260.98 5679486.85 96.25 -600261.25 5680627.52 97.25 -600261.29 5680839.10 97.50 -600261.59 5681113.87 96.25 -600262.10 5680914.94 97.50 -600262.26 5679259.36 97.50 -600262.40 5676882.91 100.00 -600262.42 5680732.14 96.25 -600262.42 5680976.99 97.50 -600262.45 5679412.20 97.50 -600262.72 5681209.54 97.50 -600262.75 5676903.80 100.00 -600263.01 5679505.87 96.25 -600263.15 5680318.79 97.50 -600263.28 5680959.04 97.50 -600263.29 5680608.50 97.50 -600263.31 5679496.14 96.25 -600263.44 5680030.74 97.50 -600263.72 5680328.65 97.50 -600263.96 5680118.58 96.25 -600264.02 5679290.62 96.25 -600264.06 5679431.12 96.25 -600264.15 5679334.24 97.50 -600264.15 5679386.58 97.50 -600264.22 5681178.24 97.50 -600264.41 5680309.19 97.50 -600264.45 5676892.57 100.50 -600264.57 5679069.82 97.50 -600264.58 5680851.96 97.50 -600264.69 5680637.55 97.50 -600264.81 5681252.87 97.50 -600264.90 5679150.66 97.50 -600265.18 5679679.42 97.50 -600265.37 5681006.82 97.50 -600265.51 5679468.27 96.25 -600265.58 5676692.05 101.25 -600265.80 5679109.42 97.50 -600265.84 5680338.12 97.50 -600265.94 5680912.69 96.25 -600266.49 5679397.20 97.50 -600266.82 5681173.60 97.50 -600266.88 5679580.01 96.25 -600267.32 5680992.80 97.50 -600267.42 5679273.82 96.25 -600267.55 5680804.44 97.50 -600267.74 5680299.89 97.50 -600267.79 5680628.26 97.50 -600267.85 5680892.49 97.50 -600267.86 5681160.95 97.50 -600267.92 5679324.98 97.50 -600267.95 5680940.18 97.50 -600268.13 5680138.56 97.50 -600268.20 5680923.75 98.00 -600268.24 5678832.78 97.50 -600268.40 5678900.31 97.50 -600268.46 5677720.10 98.75 -600268.47 5680039.34 97.50 -600268.55 5679439.99 96.25 -600268.85 5680927.86 97.50 -600268.92 5679176.88 97.50 -600268.95 5677009.51 100.00 -600269.18 5679419.59 97.50 -600269.42 5679513.36 96.25 -600269.44 5681196.13 97.50 -600269.57 5679459.37 96.25 -600269.74 5680897.61 96.25 -600269.80 5679670.57 97.50 -600270.01 5680347.08 97.50 -600270.19 5680602.50 97.50 -600270.19 5679449.58 96.25 -600270.21 5680618.76 97.50 -600270.42 5680840.08 97.50 -600270.80 5679284.11 96.25 -600270.81 5680919.54 97.50 -600271.26 5676880.07 100.00 -600271.27 5681111.42 96.25 -600271.28 5679347.39 96.25 -600271.30 5679356.70 96.25 -600271.45 5680981.23 97.50 -600271.54 5676900.94 100.00 -600271.69 5679315.72 97.50 -600271.90 5679258.93 97.50 -600272.08 5680963.66 97.50 -600272.09 5680291.42 97.50 -600272.17 5679157.38 97.50 -600272.39 5680732.14 96.25 -600272.59 5681208.58 97.50 -600272.82 5679365.77 96.25 -600273.19 5679769.65 97.50 -600273.39 5679759.78 97.50 -600273.41 5679572.47 96.25 -600273.43 5680855.67 97.50 -600273.54 5679389.90 97.50 -600273.78 5680120.27 96.25 -600273.85 5680047.75 97.50 -600273.92 5679115.10 97.50 -600273.97 5680356.13 97.50 -600274.04 5681178.59 97.50 -600274.11 5680609.77 97.50 -600274.26 5679306.07 97.50 -600274.26 5679068.97 97.50 -600274.43 5679661.72 97.50 -600274.43 5679338.63 96.25 -600274.65 5681251.50 97.50 -600274.77 5679749.97 97.50 -600274.81 5681009.71 97.50 -600274.84 5680917.23 96.25 -600274.95 5679427.71 97.50 -600275.36 5676694.13 101.25 -600275.63 5679740.11 97.50 -600275.65 5679400.29 97.50 -600275.91 5680851.43 97.20 -600275.96 5680997.62 97.50 -600275.99 5679778.62 97.50 -600276.03 5680809.59 97.50 -600276.06 5679730.22 97.50 -600276.24 5677726.37 98.75 -600276.54 5680143.96 97.50 -600276.71 5681174.29 97.50 -600276.82 5680944.74 97.50 -600276.85 5679720.35 97.50 -600276.97 5681157.02 97.50 -600277.04 5679182.34 97.50 -600277.08 5679296.48 97.50 -600277.08 5678895.34 97.50 -600277.18 5679272.55 96.25 -600277.23 5680895.66 97.50 -600277.41 5680365.37 97.50 -600277.54 5680932.50 97.50 -600277.57 5679329.87 96.25 -600277.89 5678830.14 97.50 -600278.20 5679517.03 96.25 -600278.29 5677013.07 100.00 -600278.36 5679710.65 97.50 -600278.47 5680414.10 97.50 -600278.94 5679436.77 97.50 -600279.00 5679564.23 96.25 -600279.12 5680843.95 97.50 -600279.24 5680056.15 97.50 -600279.28 5681197.36 97.50 -600279.39 5679653.06 97.50 -600279.43 5680423.93 97.50 -600279.55 5680924.08 97.50 -600279.63 5679349.26 96.50 -600279.68 5680898.66 96.25 -600279.83 5680404.34 97.50 -600279.86 5676896.78 100.00 -600279.86 5680374.94 97.50 -600280.01 5676876.92 100.00 -600280.29 5679281.53 96.25 -600280.48 5679162.77 97.50 -600280.61 5679122.33 97.50 -600280.69 5680286.86 97.50 -600280.80 5680984.76 97.50 -600280.90 5679367.99 96.25 -600280.90 5680384.70 97.50 -600281.05 5681109.60 96.25 -600281.05 5680433.64 97.50 -600281.12 5680394.58 97.50 -600281.15 5680967.87 97.50 -600281.62 5679257.79 97.50 -600281.78 5679321.62 96.25 -600282.22 5679701.52 97.50 -600282.24 5680730.87 96.25 -600282.28 5680859.39 97.50 -600282.34 5680538.25 97.50 -600282.43 5681207.33 97.50 -600283.05 5679445.55 97.50 -600283.07 5679064.84 97.50 -600283.14 5679389.23 97.50 -600283.25 5680592.38 97.50 -600283.34 5680122.71 96.25 -600283.52 5680443.21 97.50 -600283.64 5681180.29 97.50 -600283.72 5680612.27 97.50 -600283.74 5680921.76 96.25 -600283.78 5679289.56 97.50 -600283.90 5680622.22 97.50 -600284.01 5677732.64 98.75 -600284.20 5681012.86 97.50 -600284.21 5680602.31 97.50 -600284.22 5679644.33 97.50 -600284.41 5681249.63 97.50 -600284.50 5680814.73 97.50 -600284.63 5680064.55 97.50 -600284.65 5678888.93 97.50 -600284.73 5681002.21 97.50 -600284.78 5680149.62 97.50 -600284.79 5679779.14 97.50 -600285.14 5676696.21 101.25 -600285.19 5679187.74 97.50 -600285.27 5680949.99 97.50 -600285.28 5679399.49 97.50 -600285.29 5680528.83 97.50 -600285.37 5680631.95 97.50 -600285.45 5679556.87 96.25 -600285.77 5679360.44 96.25 -600286.09 5681153.12 97.50 -600286.22 5681176.63 97.50 -600286.25 5680937.08 97.50 -600286.86 5679692.82 97.50 -600286.93 5679271.29 96.25 -600286.93 5679129.95 97.50 -600287.12 5680896.34 97.50 -600287.41 5676891.41 100.00 -600287.47 5680848.68 97.50 -600287.53 5678827.50 97.50 -600287.62 5677016.63 100.00 -600287.63 5681201.21 97.50 -600287.79 5679351.46 96.25 -600288.13 5679517.81 96.25 -600288.18 5680519.38 97.50 -600288.32 5680451.84 97.50 -600288.33 5680928.55 97.50 -600288.41 5679342.20 96.25 -600288.41 5679332.89 96.25 -600288.53 5680539.92 96.25 -600288.56 5676875.82 100.00 -600288.69 5679635.40 97.50 -600288.93 5679167.90 97.50 -600289.00 5679323.68 96.25 -600289.09 5679224.89 97.75 -600289.21 5680973.76 97.50 -600289.62 5680899.64 96.25 -600289.79 5679279.00 96.25 -600290.15 5680072.88 97.50 -600290.32 5680864.64 97.50 -600290.44 5681194.11 97.50 -600290.49 5680986.47 97.50 -600290.57 5680286.86 97.50 -600290.61 5679139.15 97.50 -600290.67 5680640.41 97.50 -600290.77 5679254.74 97.50 -600290.82 5677739.80 98.75 -600290.86 5679058.56 97.50 -600290.94 5680509.90 97.50 -600291.01 5681109.01 96.25 -600291.15 5680461.07 97.50 -600291.23 5679383.50 97.50 -600291.43 5680530.96 96.25 -600291.50 5676883.50 100.00 -600291.59 5679447.38 97.50 -600291.69 5678881.83 97.50 -600291.76 5679283.53 97.50 -600291.93 5679772.43 97.50 -600292.06 5680729.13 96.25 -600292.12 5680470.89 97.50 -600292.33 5680119.39 96.25 -600292.36 5679684.58 97.50 -600292.62 5680926.35 96.25 -600292.67 5680820.32 97.50 -600292.82 5680500.20 97.50 -600292.97 5681007.48 97.50 -600293.02 5680155.28 97.50 -600293.16 5679626.48 97.50 -600293.25 5681181.33 97.50 -600293.42 5680955.75 97.50 -600293.59 5679551.18 96.25 -600293.60 5679192.72 97.50 -600293.64 5681014.43 97.50 -600293.64 5680490.37 97.50 -600293.96 5681247.12 97.50 -600294.27 5680480.51 97.50 -600294.29 5679148.35 97.50 -600294.32 5680522.00 96.25 -600294.55 5679395.75 97.50 -600294.96 5676698.07 101.25 -600294.99 5680941.64 97.50 -600295.24 5681149.30 97.50 -600295.25 5681186.26 97.50 -600295.26 5681176.08 97.50 -600295.37 5680854.14 97.50 -600295.37 5680918.69 96.00 -600295.53 5680981.22 97.50 -600295.67 5680081.19 97.50 -600295.84 5679267.54 96.25 -600295.87 5679763.71 97.50 -600296.11 5680648.77 97.50 -600296.15 5677021.71 100.00 -600296.37 5677748.11 98.75 -600296.78 5680658.34 97.50 -600296.79 5681200.11 97.50 -600296.80 5679375.27 97.50 -600297.02 5680897.00 97.50 -600297.11 5680933.01 97.50 -600297.18 5678824.86 97.50 -600297.22 5680513.04 96.25 -600297.46 5679166.70 97.50 -600297.63 5679617.55 97.50 -600297.78 5679157.62 97.50 -600297.91 5679754.02 97.50 -600298.06 5679518.59 96.25 -600298.23 5679051.83 97.50 -600298.30 5679676.69 97.50 -600298.76 5678874.76 97.50 -600299.07 5680667.88 97.50 -600299.12 5680868.44 97.50 -600299.22 5680503.84 96.25 -600299.24 5679276.28 96.25 -600299.53 5679543.17 96.25 -600299.53 5680900.86 96.25 -600299.59 5679250.50 97.50 -600299.86 5679744.31 97.50 -600299.98 5680723.27 96.25 -600300.01 5679442.36 97.50 -600300.15 5680288.55 97.50 -600300.31 5680826.65 97.50 -600300.62 5681123.41 97.50 -600300.69 5680113.95 96.25 -600300.90 5681107.77 96.25 -600301.02 5680926.47 96.00 -600301.09 5679280.05 97.50 -600301.18 5680161.07 97.50 -600301.20 5680089.50 97.50 -600301.34 5680494.68 96.25 -600301.41 5680931.08 96.25 -600301.70 5677756.54 98.75 -600301.71 5680961.29 97.50 -600301.88 5679197.93 97.50 -600302.20 5679389.45 97.50 -600302.53 5679328.02 97.50 -600302.53 5681169.57 97.50 -600302.84 5681242.68 97.50 -600303.30 5679609.35 97.50 -600303.45 5680467.21 96.25 -600303.71 5680858.88 97.50 -600303.72 5680946.20 97.50 -600303.81 5680919.35 96.00 -600303.95 5679318.20 97.50 -600304.10 5681131.33 97.50 -600304.24 5680485.72 96.25 -600304.31 5677027.47 100.00 -600304.40 5681145.48 97.50 -600304.54 5679262.96 96.25 -600304.63 5679371.68 97.50 -600304.82 5676699.71 101.25 -600304.83 5680476.48 96.25 -600304.92 5679669.33 97.50 -600305.22 5679044.69 97.50 -600305.31 5680675.48 97.50 -600305.55 5679736.53 97.50 -600305.77 5680937.69 97.50 -600306.09 5678867.97 97.50 -600306.12 5680459.30 96.25 -600306.14 5681203.37 97.50 -600306.17 5677765.48 98.75 -600306.18 5679380.81 97.50 -600306.25 5681116.06 97.50 -600306.29 5678820.90 97.50 -600306.77 5680097.79 97.50 -600306.81 5679516.06 96.25 -600306.91 5680897.68 97.50 -600307.01 5679308.71 97.50 -600307.66 5679435.93 97.50 -600307.70 5680716.97 96.25 -600307.79 5679245.33 97.50 -600307.86 5680833.07 97.50 -600307.86 5679538.27 96.25 -600308.24 5680167.99 97.50 -600308.30 5679333.55 97.50 -600308.38 5680870.37 97.50 -600308.69 5679273.56 96.25 -600309.13 5679601.24 97.50 -600309.21 5680932.11 96.00 -600309.29 5680902.81 96.25 -600309.44 5680291.91 97.50 -600309.84 5681163.37 97.50 -600309.94 5680111.87 96.25 -600309.98 5680936.21 96.25 -600310.01 5679203.37 97.50 -600310.05 5680966.76 97.50 -600310.14 5680917.93 96.25 -600310.38 5680420.41 96.25 -600310.53 5679299.36 97.50 -600310.64 5677774.42 98.75 -600310.65 5679281.20 97.50 -600310.70 5680926.47 96.00 -600310.79 5681106.77 96.25 -600310.86 5680749.22 97.50 -600310.97 5680429.57 96.25 -600311.20 5680864.83 97.50 -600311.55 5679661.96 97.50 -600311.83 5681238.45 97.50 -600311.83 5680411.11 96.25 -600312.30 5679037.62 97.50 -600312.33 5680452.22 96.25 -600312.34 5679729.31 97.50 -600312.41 5680739.64 97.50 -600312.42 5677033.30 100.00 -600312.52 5680950.62 97.50 -600313.20 5679508.75 96.25 -600313.22 5681141.00 97.50 -600313.29 5679258.49 96.25 -600313.30 5681134.09 97.50 -600313.52 5680943.73 97.50 -600313.53 5679289.82 97.50 -600314.05 5680401.99 96.25 -600314.11 5680657.28 97.50 -600314.14 5680674.48 97.50 -600314.32 5680175.93 97.50 -600314.43 5679681.37 97.25 -600314.47 5680438.23 96.25 -600314.48 5678862.77 97.50 -600314.49 5681208.14 97.50 -600314.68 5676701.35 101.25 -600314.78 5679498.92 96.25 -600314.87 5681111.16 97.50 -600314.96 5679593.14 97.50 -600314.99 5680103.22 97.50 -600315.08 5678816.14 97.50 -600315.11 5677783.35 98.75 -600315.15 5679238.89 97.50 -600315.18 5679211.29 97.50 -600315.30 5679429.50 97.50 -600315.34 5680839.59 97.50 -600315.63 5679327.07 97.50 -600315.73 5680914.32 96.25 -600316.43 5679489.10 96.25 -600316.67 5680899.45 97.50 -600316.80 5680392.98 96.25 -600317.27 5679535.24 96.25 -600317.37 5680714.80 96.25 -600317.40 5680924.70 96.25 -600317.49 5680755.62 97.50 -600317.50 5681166.29 97.50 -600317.51 5679654.19 97.50 -600317.95 5679721.15 97.50 -600318.14 5679270.84 96.25 -600318.31 5679230.07 97.50 -600318.37 5679479.33 96.25 -600318.38 5679220.48 97.50 -600318.39 5680972.23 97.50 -600318.40 5680665.80 97.50 -600318.45 5680116.68 96.25 -600318.46 5680295.88 97.50 -600318.49 5680941.44 96.25 -600318.54 5680445.15 96.25 -600318.85 5680905.72 96.25 -600319.45 5679030.64 97.50 -600319.58 5677792.29 98.75 -600320.14 5680733.31 97.50 -600320.35 5681216.10 97.50 -600320.43 5679318.32 97.50 -600320.76 5681107.32 96.25 -600320.80 5679585.04 97.50 -600320.81 5679469.72 96.25 -600320.85 5680183.50 97.50 -600321.09 5681234.85 97.50 -600321.16 5679252.65 96.25 -600321.18 5679644.99 97.50 -600321.31 5677037.55 100.00 -600321.42 5680954.83 97.50 -600321.82 5680948.90 97.50 -600322.29 5681174.95 97.50 -600322.83 5679422.93 97.50 -600322.91 5679712.68 97.50 -600323.32 5680915.74 96.00 -600323.67 5680108.14 97.50 -600323.69 5678858.90 97.50 -600323.80 5679309.14 97.50 -600323.88 5678811.38 97.50 -600323.89 5679299.14 97.50 -600323.97 5679289.14 97.50 -600324.00 5680844.36 97.50 -600324.05 5677801.23 98.75 -600324.16 5680908.67 96.00 -600324.23 5681111.37 97.50 -600324.48 5680919.02 96.25 -600324.57 5676702.66 101.25 -600324.86 5679635.79 97.50 -600325.25 5680123.89 96.25 -600325.34 5680930.77 96.25 -600325.47 5679461.02 96.25 -600325.58 5679264.77 96.25 -600325.75 5680761.25 97.50 -600325.76 5679703.19 97.50 -600325.93 5680902.81 97.50 -600326.17 5680978.45 97.50 -600326.63 5679576.94 97.50 -600326.80 5679279.60 97.50 -600327.03 5680946.62 96.25 -600327.15 5680712.89 96.25 -600327.18 5680300.51 97.50 -600327.23 5679534.61 96.25 -600327.41 5679024.59 97.50 -600327.48 5680190.99 97.50 -600327.95 5680727.09 97.50 -600328.32 5680908.88 96.25 -600328.33 5679246.07 96.25 -600328.50 5679693.68 97.50 -600328.51 5677810.16 98.75 -600328.88 5681228.95 97.50 -600329.60 5681218.34 97.50 -600329.72 5680560.41 96.25 -600329.78 5679627.22 97.50 -600329.97 5679270.12 97.50 -600330.28 5679416.27 97.50 -600330.53 5681177.46 97.50 -600330.58 5680958.37 97.50 -600330.60 5681108.93 96.25 -600330.67 5680115.12 97.50 -600330.68 5680953.21 97.50 -600330.73 5679256.67 96.25 -600330.79 5679684.04 97.50 -600330.88 5677040.44 100.00 -600330.91 5680609.70 96.25 -600331.26 5679146.75 97.50 -600331.63 5680131.55 96.25 -600331.68 5679217.78 96.25 -600331.71 5680619.13 96.25 -600331.84 5679136.77 97.50 -600332.03 5680553.28 96.25 -600332.21 5680920.27 96.00 -600332.32 5679453.78 96.25 -600332.38 5679568.78 97.50 -600332.74 5679126.83 97.50 -600332.77 5679237.37 96.25 -600332.81 5679227.55 96.25 -600332.90 5678807.07 97.50 -600332.90 5680848.73 97.50 -600332.98 5679156.58 97.50 -600332.98 5677819.10 98.75 -600333.14 5680924.01 96.25 -600333.24 5678855.95 97.50 -600333.35 5680697.53 96.25 -600333.44 5680628.45 96.25 -600333.45 5681114.89 97.50 -600333.50 5680912.12 96.00 -600333.72 5680363.71 96.25 -600333.74 5680936.15 96.25 -600333.91 5680984.73 97.50 -600333.94 5679097.32 97.50 -600333.97 5679674.80 97.50 -600334.00 5680766.88 97.50 -600334.14 5679261.03 97.50 -600334.56 5676702.55 101.25 -600334.79 5679107.22 97.50 -600334.79 5679247.77 96.25 -600334.88 5679117.07 97.50 -600334.91 5679166.39 97.50 -600334.98 5680906.88 97.50 -600335.06 5680637.77 96.25 -600335.11 5679618.89 97.50 -600335.20 5680197.33 97.50 -600335.32 5680568.66 96.25 -600335.33 5680647.25 96.25 -600335.36 5679176.36 97.50 -600335.37 5679018.54 97.50 -600335.37 5679087.43 97.50 -600335.61 5680951.74 96.25 -600336.19 5680304.07 97.50 -600336.39 5680706.73 96.25 -600336.49 5680688.34 96.25 -600336.81 5679186.20 97.50 -600336.87 5680722.57 97.50 -600336.99 5680656.54 96.25 -600336.99 5679533.13 96.25 -600337.00 5680713.90 96.25 -600337.12 5681223.67 97.50 -600337.23 5680122.65 97.50 -600337.39 5680139.67 96.25 -600337.41 5680611.89 96.25 -600337.45 5677828.04 98.75 -600337.60 5679212.23 96.25 -600337.61 5680912.51 96.25 -600337.98 5679409.92 97.50 -600338.10 5679560.60 97.50 -600338.35 5679251.96 97.50 -600338.71 5681214.46 97.50 -600339.22 5679078.28 97.50 -600339.23 5679195.90 97.50 -600339.25 5679446.63 96.25 -600339.62 5680597.11 96.25 -600339.65 5679666.69 97.50 -600339.77 5680587.24 96.25 -600339.83 5679239.32 96.25 -600339.96 5681112.25 96.25 -600340.22 5680577.34 96.25 -600340.45 5681177.40 97.50 -600340.57 5677042.85 100.00 -600340.99 5680925.01 96.00 -600341.08 5679220.14 96.25 -600341.31 5680773.67 97.50 -600341.34 5678801.77 97.50 -600341.39 5679229.96 96.25 -600341.78 5679611.56 97.50 -600341.85 5680853.00 97.50 -600341.85 5680928.89 96.25 -600341.89 5680990.72 97.50 -600341.92 5677836.97 98.75 -600341.99 5680552.96 96.25 -600342.29 5680941.31 96.25 -600342.32 5680916.69 96.00 -600342.44 5679242.84 97.50 -600342.44 5680680.35 96.25 -600342.71 5680148.10 96.25 -600342.83 5679205.09 97.50 -600342.97 5680203.62 97.50 -600343.09 5680606.45 96.25 -600343.12 5681117.08 97.50 -600343.15 5678854.75 97.50 -600343.21 5680361.17 96.25 -600343.36 5680619.27 96.25 -600343.38 5679012.56 97.50 -600343.55 5680130.38 97.50 -600343.58 5680692.85 97.50 -600343.61 5679069.29 97.50 -600343.83 5679552.42 97.50 -600344.13 5680956.95 96.25 -600344.28 5680660.35 96.25 -600344.38 5680640.16 96.75 -600344.38 5676701.22 101.25 -600344.52 5680909.53 97.50 -600345.50 5679658.75 97.50 -600345.71 5680701.88 97.50 -600345.89 5679439.23 96.25 -600346.06 5679404.04 97.50 -600346.07 5680304.38 97.50 -600346.17 5680708.62 96.25 -600346.23 5680720.84 97.50 -600346.24 5681219.71 97.50 -600346.32 5679529.60 96.25 -600346.46 5679233.69 97.50 -600346.50 5679362.53 97.50 -600346.65 5680916.76 96.25 -600346.71 5677845.66 98.75 -600346.86 5680715.36 96.25 -600346.89 5681208.84 97.50 -600346.94 5679213.90 97.50 -600346.99 5681097.53 96.25 -600347.21 5679223.89 97.50 -600347.45 5680156.87 96.25 -600347.50 5680683.66 97.50 -600347.85 5680781.18 97.50 -600347.93 5681159.18 97.50 -600348.44 5679604.23 97.50 -600348.49 5680672.43 96.25 -600349.19 5680626.73 96.25 -600349.25 5679061.05 97.50 -600349.48 5679370.39 97.50 -600349.54 5680930.14 96.00 -600349.55 5678796.06 97.50 -600349.64 5680613.94 96.25 -600349.77 5681112.86 96.25 -600349.87 5680996.70 97.50 -600350.09 5679544.66 97.50 -600350.30 5677045.12 100.00 -600350.37 5681177.40 97.50 -600350.46 5680947.02 96.25 -600350.52 5680922.38 96.00 -600350.61 5680653.30 96.25 -600350.65 5680933.62 96.25 -600350.81 5680354.97 96.25 -600350.90 5680136.72 97.50 -600350.90 5679353.73 97.50 -600351.30 5680855.86 97.50 -600351.49 5679006.72 97.50 -600351.69 5679305.86 97.50 -600352.00 5679431.36 96.25 -600352.03 5680165.72 96.25 -600352.07 5680207.56 97.50 -600352.28 5681104.82 96.25 -600352.29 5679296.10 97.50 -600352.53 5680962.36 96.25 -600352.54 5681120.14 97.50 -600352.79 5680598.86 97.50 -600353.03 5681150.71 97.50 -600353.10 5678853.74 97.50 -600353.11 5680608.35 97.50 -600353.15 5680635.34 96.25 -600353.31 5680644.30 96.25 -600353.56 5680913.37 97.50 -600353.59 5679315.67 97.50 -600353.65 5679653.21 97.50 -600353.80 5680789.20 97.50 -600353.85 5681165.22 97.50 -600353.99 5680705.59 97.50 -600353.99 5676698.45 101.25 -600354.13 5679398.15 97.50 -600354.18 5679442.03 96.00 -600354.30 5679523.85 96.25 -600354.40 5677852.03 98.75 -600354.73 5680677.03 97.50 -600354.89 5680664.78 96.25 -600354.98 5680589.42 97.50 -600355.04 5679052.90 97.50 -600355.06 5681203.23 97.50 -600355.33 5680921.66 96.25 -600355.39 5679344.94 97.50 -600355.40 5681215.87 97.50 -600355.51 5679325.48 97.50 -600355.92 5679451.75 96.00 -600355.96 5680710.51 96.25 -600356.12 5680722.31 97.50 -600356.18 5681094.31 96.25 -600356.40 5679287.13 97.50 -600356.49 5679536.99 97.50 -600356.52 5679598.71 97.50 -600356.73 5680716.73 96.25 -600356.93 5680620.66 96.25 -600357.10 5679432.72 96.00 -600357.13 5680174.23 96.25 -600357.30 5680347.48 96.25 -600357.45 5679335.28 97.50 -600357.83 5678790.46 97.50 -600358.17 5679423.55 96.25 -600358.27 5680934.97 96.00 -600358.29 5681002.03 97.50 -600358.30 5680953.22 96.25 -600358.31 5680580.26 97.50 -600358.82 5680927.92 96.00 -600358.90 5681142.66 97.50 -600358.98 5679372.95 97.50 -600359.32 5680615.36 97.50 -600359.45 5680938.35 96.25 -600359.51 5679645.23 97.50 -600359.61 5681174.03 97.50 -600359.63 5679000.91 97.50 -600360.02 5677047.40 100.00 -600360.16 5680140.29 97.50 -600360.36 5680968.52 96.25 -600360.94 5679044.83 97.50 -600360.94 5680858.17 97.50 -600361.04 5680796.08 97.50 -600361.28 5680657.14 96.25 -600361.46 5679278.57 97.50 -600361.48 5680210.93 97.50 -600361.51 5680571.05 97.50 -600361.76 5679517.22 96.25 -600361.93 5681123.29 97.50 -600361.96 5679455.76 96.00 -600362.09 5680918.43 97.50 -600362.18 5679392.23 97.50 -600362.26 5679424.53 96.00 -600362.66 5680670.95 97.50 -600362.77 5677857.46 98.75 -600362.83 5681161.52 97.50 -600362.90 5680628.24 96.25 -600362.97 5679529.40 97.50 -600362.97 5681147.23 96.25 -600363.03 5678853.83 97.50 -600363.04 5679268.70 97.50 -600363.27 5676694.75 101.25 -600363.54 5681198.09 97.50 -600363.56 5680181.86 96.25 -600363.66 5680927.17 96.25 -600363.83 5680340.01 96.25 -600363.83 5680647.54 96.25 -600363.89 5680706.90 97.50 -600364.07 5680609.93 97.50 -600364.29 5679636.67 97.50 -600364.59 5680561.81 97.50 -600364.61 5681212.14 97.50 -600364.63 5679258.84 97.50 -600364.80 5679416.12 96.25 -600365.08 5680637.73 96.25 -600365.21 5680960.40 96.25 -600365.62 5679595.73 97.50 -600365.75 5680712.39 96.25 -600365.80 5681008.53 97.50 -600365.82 5681135.65 97.50 -600366.01 5680600.43 97.50 -600366.06 5680723.06 97.50 -600366.17 5681094.44 96.25 -600366.18 5678784.96 97.50 -600366.22 5679248.97 97.50 -600366.47 5680940.62 96.00 -600366.61 5680718.07 96.25 -600367.08 5680933.51 96.00 -600367.41 5680944.38 96.25 -600367.46 5679376.98 97.50 -600367.49 5679183.71 97.50 -600367.51 5679037.30 97.50 -600367.64 5679627.35 97.50 -600367.67 5680552.56 97.50 -600367.75 5681153.42 96.25 -600367.84 5678995.20 97.50 -600367.88 5680975.10 96.25 -600368.31 5680802.94 97.50 -600368.51 5680663.43 97.50 -600369.05 5681171.17 97.50 -600369.12 5679385.38 97.50 -600369.21 5679510.60 96.25 -600369.52 5679417.76 96.00 -600369.65 5679521.99 97.50 -600369.68 5680591.40 97.50 -600369.76 5680862.58 97.50 -600369.82 5679192.47 97.50 -600369.83 5677049.24 100.00 -600370.08 5680141.36 97.50 -600370.29 5680924.01 97.50 -600370.29 5681141.49 96.25 -600370.63 5680188.71 96.25 -600370.68 5680900.01 98.00 -600370.73 5679700.43 97.50 -600370.86 5679240.22 97.50 -600370.99 5679174.35 97.50 -600371.11 5680213.54 97.50 -600371.15 5681156.04 97.50 -600371.25 5679618.13 97.50 -600371.29 5680333.48 96.25 -600371.29 5677862.68 98.75 -600371.40 5680653.87 97.50 -600371.43 5679452.80 96.00 -600371.44 5679408.69 96.25 -600371.53 5681125.77 97.50 -600371.93 5680967.80 96.25 -600372.13 5681193.13 97.50 -600372.26 5680932.24 96.25 -600372.57 5676691.14 101.25 -600372.93 5678855.19 97.50 -600373.03 5681015.41 97.50 -600373.52 5681144.55 96.00 -600373.69 5679608.65 97.50 -600373.76 5681208.27 97.50 -600373.83 5680707.90 97.50 -600373.89 5677880.69 98.50 -600373.97 5678778.77 97.50 -600374.03 5680644.23 97.50 -600374.04 5679029.73 97.50 -600374.13 5679598.85 97.50 -600374.35 5680946.73 96.00 -600374.45 5680582.96 97.50 -600374.53 5679691.95 97.50 -600374.66 5679346.79 96.25 -600375.27 5680950.53 96.25 -600375.35 5681132.63 97.50 -600375.40 5680981.67 96.25 -600375.53 5680714.26 96.25 -600375.56 5679705.48 97.50 -600375.59 5679337.32 96.25 -600375.59 5679502.97 96.25 -600375.64 5680938.60 96.00 -600375.77 5680809.59 97.50 -600375.94 5679231.62 97.50 -600376.03 5680634.46 97.50 -600376.05 5678989.49 97.50 -600376.05 5680723.29 97.50 -600376.13 5681093.96 96.25 -600376.34 5679514.57 97.50 -600376.37 5681149.03 96.25 -600376.48 5680719.40 96.25 -600376.77 5679410.98 96.00 -600377.13 5680624.53 97.50 -600377.18 5679166.51 97.50 -600377.58 5680614.55 97.50 -600377.59 5679198.15 97.50 -600377.95 5679401.17 96.25 -600377.96 5677877.33 98.50 -600378.35 5680218.44 97.50 -600378.39 5680867.47 97.50 -600378.51 5680929.54 97.50 -600378.59 5679355.02 96.25 -600378.75 5680326.95 96.25 -600378.81 5681169.40 97.50 -600379.18 5681137.56 96.25 -600379.23 5681150.28 97.50 -600379.25 5680193.74 96.25 -600379.31 5677888.65 98.50 -600379.39 5680974.41 96.25 -600379.41 5679683.78 97.50 -600379.45 5680604.93 97.50 -600379.45 5679021.32 97.50 -600379.74 5677050.50 100.00 -600379.81 5677867.89 98.75 -600379.83 5680140.30 97.50 -600380.12 5680575.04 97.50 -600380.26 5681022.28 97.50 -600380.42 5681187.68 97.50 -600380.52 5680937.85 96.25 -600380.77 5679222.87 97.50 -600380.97 5679450.06 96.00 -600381.03 5678771.69 97.50 -600381.25 5681123.83 97.50 -600381.51 5680227.93 97.50 -600381.76 5679495.13 96.25 -600382.24 5676688.60 101.25 -600382.30 5680952.76 96.00 -600382.31 5678851.77 97.50 -600382.52 5679333.94 96.25 -600382.63 5680957.29 96.25 -600382.91 5681204.40 97.50 -600382.92 5680988.25 96.25 -600383.03 5679507.16 97.50 -600383.17 5678982.57 97.50 -600383.22 5680816.25 97.50 -600383.33 5680944.84 96.00 -600383.41 5680595.75 97.50 -600383.46 5679392.87 96.25 -600383.46 5679403.65 96.00 -600383.77 5680708.94 97.50 -600383.91 5680566.40 97.50 -600384.00 5679675.44 97.50 -600384.07 5679702.08 97.50 -600384.10 5679159.35 97.50 -600384.20 5680546.98 97.50 -600384.61 5679204.09 97.50 -600384.62 5680556.72 97.50 -600384.65 5679213.74 97.50 -600384.76 5681144.22 96.25 -600384.86 5679012.92 97.50 -600385.25 5680650.21 97.50 -600385.27 5681131.75 97.50 -600385.47 5680714.74 96.25 -600385.68 5677895.98 98.50 -600385.82 5681092.13 96.25 -600386.04 5680723.52 97.50 -600386.21 5680320.42 96.25 -600386.36 5677882.18 98.50 -600386.40 5680720.38 96.25 -600386.48 5679342.72 96.25 -600386.65 5679360.83 96.25 -600386.87 5680934.88 97.50 -600386.87 5680872.60 97.50 -600387.06 5680980.81 96.25 -600387.18 5680586.50 97.50 -600387.35 5680659.09 97.50 -600387.49 5681029.15 97.50 -600388.00 5679487.35 96.25 -600388.17 5678764.69 97.50 -600388.34 5677873.11 98.75 -600388.57 5681167.63 97.50 -600388.59 5680640.88 97.50 -600388.60 5680943.72 96.25 -600388.70 5680196.08 96.25 -600388.72 5681136.00 96.25 -600388.92 5681147.82 97.50 -600388.97 5679384.57 96.25 -600389.10 5681183.37 97.50 -600389.30 5679667.52 97.50 -600389.47 5680138.49 97.50 -600389.65 5677051.77 100.00 -600389.75 5678975.04 97.50 -600389.79 5679499.81 97.50 -600389.79 5679322.77 97.50 -600390.15 5679396.31 96.00 -600390.18 5679332.67 97.50 -600390.31 5680963.65 96.25 -600390.49 5680994.77 96.25 -600390.52 5679447.33 96.00 -600390.56 5680958.35 96.00 -600390.72 5681120.92 97.50 -600390.74 5679351.10 96.25 -600390.85 5680951.36 96.00 -600390.95 5680577.24 97.50 -600390.99 5679005.09 97.50 -600391.14 5680157.10 97.50 -600391.29 5679695.87 97.50 -600391.40 5679312.91 97.50 -600391.41 5680821.72 97.50 -600391.58 5679152.73 97.50 -600391.74 5678848.45 97.50 -600391.83 5676685.82 101.25 -600392.04 5677903.33 98.50 -600392.06 5681200.53 97.50 -600392.50 5679342.37 97.50 -600392.83 5680148.58 97.50 -600393.49 5680632.46 97.50 -600393.53 5680313.73 96.25 -600393.70 5680710.09 97.50 -600393.93 5681141.00 96.25 -600394.05 5679376.14 96.25 -600394.15 5681036.57 97.50 -600394.27 5679366.18 96.25 -600394.33 5679479.65 96.25 -600394.48 5680941.21 97.50 -600394.60 5677887.32 98.50 -600394.73 5680987.20 96.25 -600394.98 5679303.67 97.50 -600395.05 5681088.32 96.25 -600395.09 5680878.14 97.50 -600395.23 5679660.08 97.50 -600395.23 5681131.05 97.50 -600395.40 5678757.79 97.50 -600395.43 5680714.88 96.25 -600395.57 5678966.92 97.50 -600395.98 5680724.53 97.50 -600396.20 5680659.22 97.50 -600396.34 5680720.99 96.25 -600396.62 5680949.68 96.25 -600396.63 5679492.55 97.50 -600396.84 5679388.98 96.00 -600396.86 5677878.33 98.75 -600397.31 5680569.58 97.50 -600397.64 5679145.08 97.50 -600398.06 5681001.28 96.25 -600398.16 5678998.12 97.50 -600398.37 5681134.92 96.25 -600398.39 5680969.52 96.25 -600398.40 5680140.98 97.50 -600398.40 5681166.31 97.50 -600398.59 5679689.74 97.50 -600398.64 5680196.87 96.25 -600398.82 5680963.94 96.00 -600398.83 5681146.63 97.50 -600398.86 5677910.21 98.50 -600398.94 5679442.18 96.00 -600398.99 5681182.58 97.50 -600399.28 5679294.66 97.50 -600399.50 5680956.34 96.00 -600399.64 5677051.49 100.00 -600399.98 5679471.43 96.25 -600400.19 5681117.99 97.50 -600400.33 5679353.41 96.25 -600400.38 5680650.31 97.50 -600400.39 5680158.53 97.50 -600400.67 5680825.47 97.50 -600400.72 5679264.80 97.50 -600400.75 5681044.05 97.50 -600400.77 5679274.79 97.50 -600400.81 5679284.78 97.50 -600400.85 5680307.05 96.25 -600400.93 5676681.68 101.25 -600401.13 5680626.02 97.50 -600401.23 5678958.68 97.50 -600401.27 5678845.44 97.50 -600401.38 5679345.89 97.50 -600401.46 5679652.87 97.50 -600401.48 5681197.45 97.50 -600401.61 5679135.90 97.50 -600401.84 5680947.84 97.50 -600402.18 5679254.99 97.50 -600402.67 5680993.27 96.25 -600402.68 5678750.97 97.50 -600402.89 5677892.40 98.50 -600402.93 5680640.65 97.50 -600403.37 5679666.62 97.25 -600403.41 5680883.53 97.50 -600403.48 5679485.28 97.50 -600403.62 5680711.03 97.50 -600403.63 5681140.57 96.25 -600403.85 5680562.03 97.50 -600404.58 5679245.29 97.50 -600404.72 5681086.51 96.25 -600404.76 5679383.02 96.00 -600405.16 5680954.78 96.25 -600405.18 5681130.01 97.50 -600405.32 5680727.26 97.50 -600405.33 5678991.16 97.50 -600405.38 5677883.54 98.75 -600405.40 5680715.02 96.25 -600405.54 5679126.72 97.50 -600405.62 5681007.81 96.25 -600405.63 5679463.22 96.25 -600405.88 5679683.61 97.50 -600406.18 5677916.60 98.50 -600406.31 5680720.99 96.25 -600406.48 5680975.39 96.25 -600407.12 5678950.61 97.50 -600407.19 5680969.38 96.00 -600407.20 5679436.68 96.00 -600407.43 5677545.84 98.75 -600407.44 5677536.61 98.75 -600407.47 5680631.77 97.50 -600407.54 5681051.33 97.50 -600407.91 5680961.69 96.00 -600407.95 5679235.93 97.50 -600407.96 5681163.80 97.50 -600408.06 5680300.24 96.25 -600408.07 5681134.30 96.25 -600408.56 5680197.80 96.25 -600408.75 5680619.56 97.50 -600408.77 5681145.60 97.50 -600408.82 5680436.01 96.25 -600408.87 5681181.78 97.50 -600409.27 5679647.51 97.50 -600409.43 5679117.51 97.50 -600409.50 5677555.61 98.75 -600409.62 5677051.07 100.00 -600409.72 5680426.12 96.25 -600409.80 5681115.53 97.50 -600409.92 5679477.66 97.50 -600409.98 5680416.19 96.25 -600410.03 5676677.55 101.25 -600410.18 5679351.91 96.25 -600410.25 5680157.25 97.50 -600410.27 5678841.22 97.50 -600410.46 5680827.15 97.50 -600410.49 5680554.56 97.50 -600410.60 5680999.34 96.25 -600410.76 5680952.18 97.50 -600410.94 5679343.03 97.50 -600411.11 5677565.47 98.75 -600411.12 5681195.04 97.50 -600411.20 5677897.43 98.50 -600411.20 5680445.09 96.25 -600411.67 5679455.29 96.25 -600411.97 5680888.54 97.50 -600412.17 5679226.88 97.50 -600412.42 5678984.11 97.50 -600412.49 5678749.06 97.50 -600412.58 5680407.15 96.25 -600412.74 5679677.02 97.50 -600412.76 5681014.80 96.25 -600412.78 5679377.16 96.00 -600413.10 5678942.59 97.50 -600413.34 5681140.17 96.25 -600413.48 5680709.40 97.50 -600413.66 5680624.15 97.50 -600413.68 5680732.75 97.50 -600413.83 5679108.55 97.50 -600413.90 5677888.76 98.75 -600414.08 5680959.28 96.25 -600414.32 5679429.85 96.00 -600414.51 5677921.50 98.50 -600414.69 5681086.62 96.25 -600414.77 5680725.93 96.25 -600414.79 5680611.60 97.50 -600415.00 5677532.26 98.75 -600415.04 5680980.53 96.25 -600415.07 5681057.87 97.50 -600415.15 5681129.45 97.50 -600415.17 5680293.33 96.25 -600415.23 5680713.43 96.25 -600415.55 5680974.82 96.00 -600415.85 5677573.78 98.75 -600416.18 5680967.28 96.00 -600416.18 5679469.89 97.50 -600416.35 5680937.18 97.50 -600416.39 5679217.82 97.50 -600417.00 5680547.02 97.50 -600417.03 5680453.11 96.25 -600417.37 5681160.66 97.50 -600417.50 5679642.74 97.50 -600417.77 5681133.68 96.25 -600417.90 5679447.50 96.25 -600418.16 5678933.97 97.50 -600418.30 5680199.92 96.25 -600418.35 5679346.31 96.25 -600418.44 5681005.54 96.25 -600418.51 5679099.72 97.50 -600418.55 5681179.71 97.50 -600418.59 5680946.08 97.50 -600418.66 5680399.29 96.25 -600418.70 5681144.48 97.50 -600418.87 5678836.14 97.50 -600418.88 5679669.78 97.50 -600418.93 5679337.12 97.50 -600418.94 5680740.96 97.50 -600419.42 5680956.94 97.50 -600419.45 5678977.00 97.50 -600419.51 5677902.46 98.50 -600419.59 5677050.43 100.00 -600419.74 5681115.28 97.50 -600419.86 5676675.80 101.25 -600419.90 5681021.78 96.25 -600419.95 5680154.96 97.50 -600420.35 5680603.30 97.50 -600420.39 5680828.28 97.50 -600420.63 5680893.37 97.50 -600420.65 5679208.78 97.50 -600420.67 5681192.34 97.50 -600420.80 5679371.31 96.00 -600420.95 5679422.47 96.00 -600421.21 5680537.96 97.50 -600421.27 5680617.67 97.50 -600421.64 5680929.41 97.50 -600422.01 5680732.75 96.25 -600422.30 5678747.14 97.50 -600422.42 5677893.97 98.75 -600422.45 5679462.12 97.50 -600422.64 5680964.31 96.25 -600422.78 5677580.99 98.75 -600422.86 5677537.14 98.75 -600423.02 5681139.38 96.25 -600423.10 5678925.28 97.50 -600423.11 5677926.02 98.50 -600423.18 5679090.89 97.50 -600423.22 5681063.56 97.50 -600423.31 5680974.14 96.00 -600423.35 5680707.84 97.50 -600423.60 5680288.54 96.25 -600423.63 5680985.62 96.25 -600423.66 5680460.44 96.25 -600423.70 5680980.58 96.00 -600423.91 5680405.45 96.25 -600424.14 5679661.84 97.50 -600424.18 5679439.76 96.25 -600424.41 5681088.86 96.25 -600424.91 5681127.61 97.50 -600425.15 5680528.78 97.50 -600425.18 5680712.77 96.25 -600425.20 5679199.88 97.50 -600425.67 5680594.84 97.50 -600426.27 5681011.73 96.25 -600426.40 5681156.60 97.50 -600426.41 5679639.72 97.50 -600426.42 5679340.48 96.25 -600426.42 5680952.14 97.50 -600426.66 5678970.16 97.50 -600426.93 5678830.23 97.50 -600426.95 5679331.18 97.50 -600426.99 5681028.82 96.25 -600427.41 5681132.53 96.25 -600427.41 5680962.81 97.50 -600427.43 5679414.94 96.00 -600427.43 5677545.98 98.75 -600427.67 5680202.89 96.25 -600427.82 5677907.49 98.50 -600428.15 5681177.21 97.50 -600428.19 5679653.35 97.50 -600428.23 5680741.04 97.50 -600428.43 5679082.42 97.50 -600428.47 5680519.36 97.50 -600428.57 5678916.95 97.50 -600428.63 5681143.29 97.50 -600428.64 5680414.17 96.25 -600428.75 5680611.05 97.50 -600428.82 5679365.46 96.00 -600429.46 5680897.89 97.50 -600429.51 5681114.01 97.50 -600429.54 5680152.17 97.50 -600429.56 5677049.80 100.00 -600429.61 5679455.17 97.50 -600429.72 5676674.17 101.25 -600429.96 5679191.10 97.50 -600430.08 5680970.98 96.25 -600430.10 5681189.20 97.50 -600430.12 5680830.39 97.50 -600430.24 5677587.44 98.75 -600430.34 5679644.07 97.50 -600430.73 5680734.88 96.25 -600430.84 5680586.29 97.50 -600430.91 5679432.40 96.25 -600430.95 5677899.19 98.75 -600431.25 5680927.23 97.50 -600431.55 5677555.08 98.75 -600431.60 5677930.69 98.50 -600432.09 5678745.08 97.50 -600432.21 5680465.50 96.25 -600432.21 5680990.73 96.25 -600432.28 5681067.56 97.50 -600432.56 5681137.74 96.25 -600432.67 5681019.37 96.25 -600432.84 5680290.36 96.25 -600432.92 5680423.13 96.25 -600433.16 5680707.41 97.50 -600433.79 5679407.32 96.00 -600434.00 5681035.93 96.25 -600434.11 5681091.23 96.25 -600434.35 5680512.06 97.50 -600434.45 5679074.45 97.50 -600434.52 5681124.84 97.50 -600434.68 5679334.97 96.25 -600434.78 5680969.40 97.50 -600434.85 5680714.77 96.25 -600434.96 5679182.45 97.50 -600435.08 5680577.34 97.50 -600435.08 5678824.45 97.50 -600435.33 5680956.30 97.50 -600435.38 5678909.71 97.50 -600435.41 5679325.86 97.50 -600435.76 5680208.72 96.25 -600435.81 5678966.11 97.50 -600435.89 5681154.29 97.50 -600436.06 5680299.21 96.25 -600436.07 5677912.62 98.50 -600436.07 5680604.25 97.50 -600436.72 5681129.98 96.25 -600436.83 5679448.27 97.50 -600436.84 5679359.60 96.00 -600436.93 5679760.23 97.50 -600436.93 5679750.27 97.50 -600436.95 5680432.21 96.25 -600436.97 5679740.31 97.50 -600436.98 5679770.18 97.50 -600437.01 5679730.36 97.50 -600437.05 5679720.40 97.50 -600437.10 5679780.13 97.50 -600437.28 5680737.27 97.50 -600437.52 5680977.64 96.25 -600437.63 5679425.03 96.25 -600437.67 5681174.45 97.50 -600437.68 5677562.76 98.75 -600438.09 5681140.30 97.50 -600438.14 5677805.03 98.75 -600438.42 5680567.97 97.50 -600438.53 5680901.86 97.50 -600438.55 5680148.16 97.50 -600438.92 5679710.63 97.50 -600439.03 5681111.18 97.50 -600439.13 5680729.55 96.25 -600439.14 5679789.87 97.50 -600439.27 5677814.96 98.75 -600439.47 5677904.41 98.75 -600439.52 5681186.06 97.50 -600439.52 5677049.16 100.00 -600439.57 5677591.03 98.75 -600439.58 5681026.49 96.25 -600439.62 5676672.82 101.25 -600439.69 5680833.25 97.50 -600439.86 5679173.74 97.50 -600440.16 5679399.71 96.00 -600440.40 5680996.46 96.25 -600440.53 5677934.51 98.50 -600440.55 5679066.54 97.50 -600440.83 5680722.04 96.25 -600440.86 5679700.86 97.50 -600441.05 5680925.74 97.50 -600441.28 5678741.64 97.50 -600441.56 5680672.94 97.50 -600441.66 5680464.13 96.25 -600441.68 5681041.99 96.25 -600441.68 5680976.52 97.50 -600441.79 5681070.58 97.50 -600441.91 5681135.12 96.25 -600442.35 5680963.31 97.50 -600442.49 5680663.13 97.50 -600442.62 5680710.60 97.50 -600443.02 5680507.09 97.50 -600443.09 5680597.14 97.50 -600443.17 5680559.18 97.50 -600443.24 5678903.53 97.50 -600443.54 5679691.28 97.50 -600443.79 5681093.65 96.25 -600443.86 5679320.53 97.50 -600443.90 5679331.23 96.25 -600443.92 5677797.69 98.75 -600444.05 5679441.38 97.50 -600444.22 5681122.46 97.50 -600444.28 5677917.81 98.50 -600444.41 5678821.02 97.50 -600444.67 5679164.98 97.50 -600444.77 5680984.51 96.25 -600444.79 5679418.10 96.25 -600444.80 5678961.77 97.50 -600444.81 5680436.23 96.25 -600444.88 5679353.79 96.00 -600445.20 5677569.22 98.75 -600445.77 5681153.59 97.50 -600445.88 5681126.85 96.25 -600445.98 5680653.76 97.50 -600446.12 5677821.43 98.75 -600446.43 5679681.76 97.50 -600446.80 5680142.54 97.50 -600446.96 5679392.51 96.00 -600447.02 5680677.51 97.50 -600447.12 5681032.88 96.25 -600447.16 5681171.56 97.50 -600447.23 5680737.34 97.50 -600447.29 5680906.36 97.50 -600447.49 5681137.00 97.50 -600448.01 5677909.60 98.75 -600448.06 5679060.03 97.50 -600448.27 5680457.40 96.25 -600448.66 5681002.08 96.25 -600448.69 5680837.30 97.50 -600448.73 5679789.70 97.50 -600448.85 5681109.75 97.50 -600448.95 5677594.46 98.75 -600449.03 5680983.18 97.50 -600449.17 5677046.55 100.00 -600449.45 5681186.01 97.50 -600449.46 5677938.34 98.50 -600449.47 5679156.22 97.50 -600449.47 5678735.91 97.50 -600449.57 5676671.86 101.25 -600449.87 5680589.80 97.50 -600449.88 5681041.87 96.25 -600450.02 5680552.06 97.50 -600450.20 5680644.73 97.50 -600450.32 5680968.97 97.50 -600450.63 5679672.73 97.50 -600450.86 5680924.24 97.50 -600450.89 5677790.53 98.75 -600451.09 5678897.34 97.50 -600451.24 5681132.41 96.25 -600451.30 5681073.59 97.50 -600451.47 5680715.24 97.50 -600451.50 5679434.81 97.50 -600452.01 5680991.40 96.25 -600452.20 5679411.43 96.25 -600452.21 5680504.06 97.50 -600452.24 5680669.17 97.50 -600452.48 5677923.01 98.50 -600452.82 5680430.97 96.25 -600452.93 5679347.97 96.00 -600453.13 5679327.48 96.25 -600453.27 5679317.75 97.50 -600453.37 5678956.63 97.50 -600453.50 5681095.98 96.25 -600453.56 5678817.22 97.50 -600453.57 5680449.00 96.25 -600453.66 5681123.66 97.50 -600453.86 5679147.24 97.50 -600453.87 5677827.67 98.75 -600454.22 5680135.92 97.50 -600454.39 5679385.93 96.00 -600454.43 5677573.05 98.75 -600454.83 5680635.87 97.50 -600454.83 5679663.70 97.50 -600455.38 5680912.10 97.50 -600455.47 5681126.68 96.25 -600455.68 5681153.98 97.50 -600456.16 5680659.98 97.50 -600456.37 5680582.21 97.50 -600456.49 5679054.65 97.50 -600456.53 5680843.40 97.50 -600456.55 5677914.78 98.75 -600456.65 5679784.30 97.50 -600456.65 5681168.67 97.50 -600456.73 5680989.42 97.50 -600457.06 5681007.47 96.25 -600457.11 5680738.86 97.50 -600457.32 5681135.21 97.50 -600457.42 5680545.37 97.50 -600457.67 5678730.18 97.50 -600457.85 5677783.36 98.75 -600458.22 5679138.25 97.50 -600458.39 5677942.16 98.50 -600458.43 5677597.62 98.75 -600458.71 5681108.96 97.50 -600458.82 5680440.61 96.25 -600458.84 5677044.07 100.00 -600459.12 5679654.73 97.50 -600459.28 5681185.13 97.50 -600459.45 5680627.01 97.50 -600459.45 5680423.58 96.25 -600459.52 5676670.90 101.25 -600459.57 5678892.13 97.50 -600459.59 5680997.90 96.25 -600459.61 5679404.76 96.25 -600459.88 5680967.83 97.50 -600460.08 5680650.79 97.50 -600460.40 5679430.28 97.50 -600460.58 5681131.75 96.25 -600460.61 5680718.84 97.50 -600460.66 5677928.26 98.50 -600460.69 5680922.95 97.50 -600460.70 5681076.91 97.50 -600460.94 5677834.74 98.75 -600460.97 5679342.15 96.00 -600461.28 5680128.86 97.50 -600461.33 5678950.61 97.50 -600461.85 5679379.38 96.00 -600461.90 5678811.71 97.50 -600462.19 5680503.54 97.50 -600462.51 5680918.97 97.50 -600462.55 5679324.30 96.25 -600462.58 5677774.98 98.75 -600462.59 5679129.26 97.50 -600462.66 5680851.29 97.50 -600462.70 5680574.49 97.50 -600463.04 5680210.91 96.25 -600463.12 5679776.74 97.50 -600463.15 5679316.25 97.50 -600463.27 5681098.03 96.25 -600463.37 5681124.96 97.50 -600463.85 5680618.04 97.50 -600463.91 5677765.13 98.75 -600463.97 5680537.82 97.50 -600464.03 5677575.63 98.75 -600464.05 5677755.14 98.75 -600464.20 5677745.15 98.75 -600464.35 5677735.16 98.75 -600464.41 5679646.29 97.50 -600464.62 5680995.43 97.50 -600464.91 5679049.27 97.50 -600465.09 5677919.96 98.75 -600465.27 5680642.31 97.50 -600465.46 5681012.88 96.25 -600465.60 5681154.36 97.50 -600466.23 5678725.03 97.50 -600466.57 5681168.45 97.50 -600466.87 5677842.66 98.75 -600466.90 5681087.81 97.50 -600466.99 5680740.37 97.50 -600467.08 5680417.22 96.25 -600467.22 5681134.06 97.50 -600467.30 5679398.44 96.25 -600467.39 5681090.29 96.25 -600467.41 5680435.61 96.25 -600467.57 5677944.91 98.50 -600467.68 5681003.64 96.25 -600467.80 5680121.32 97.50 -600467.95 5677600.62 98.75 -600468.22 5680609.05 97.50 -600468.45 5678887.51 97.50 -600468.54 5677041.65 100.00 -600468.56 5681110.28 97.50 -600468.63 5679768.57 97.50 -600468.69 5680566.49 97.50 -600468.73 5679121.53 97.50 -600468.79 5680859.19 97.50 -600468.82 5677933.53 98.50 -600468.87 5678944.05 97.50 -600468.94 5681182.81 97.50 -600468.99 5677726.48 98.75 -600469.02 5679336.34 96.00 -600469.29 5679425.75 97.50 -600469.35 5680203.47 96.25 -600469.43 5676671.12 101.25 -600469.54 5680965.72 97.50 -600469.71 5679637.86 97.50 -600469.91 5679373.58 96.00 -600469.92 5678805.78 97.50 -600470.45 5681078.99 97.50 -600470.60 5680719.07 97.50 -600471.00 5680634.13 97.50 -600471.33 5680531.13 97.50 -600471.74 5677851.38 98.75 -600471.77 5679311.65 97.50 -600472.02 5679628.27 97.50 -600472.14 5680502.65 97.50 -600472.20 5679321.84 96.25 -600472.44 5679759.38 97.50 -600472.58 5681001.34 97.50 -600472.63 5680600.09 97.50 -600473.32 5679043.87 97.50 -600473.37 5681124.84 97.50 -600473.63 5677925.14 98.75 -600473.77 5681018.42 96.25 -600473.79 5677577.73 98.75 -600473.97 5680113.47 97.50 -600474.41 5679730.09 97.50 -600474.71 5678719.76 97.50 -600474.80 5679739.98 97.50 -600474.95 5679618.90 97.50 -600475.19 5679749.82 97.50 -600475.33 5677940.08 98.50 -600475.34 5680195.79 96.25 -600475.40 5679392.63 96.25 -600475.46 5680412.04 96.25 -600475.49 5681153.94 97.50 -600475.55 5677719.78 98.75 -600475.72 5679114.39 97.50 -600475.88 5678936.93 97.50 -600475.90 5679720.25 97.50 -600475.93 5680736.20 97.50 -600475.94 5680560.69 97.50 -600475.95 5680625.45 97.50 -600475.96 5677860.35 98.75 -600476.00 5680430.62 96.25 -600476.03 5680865.94 97.50 -600476.48 5680294.63 96.25 -600476.48 5681168.26 97.50 -600476.74 5681007.85 96.25 -600476.74 5681089.39 97.50 -600477.05 5677604.39 98.75 -600477.14 5678882.59 97.50 -600477.15 5680591.17 97.50 -600477.21 5681133.74 97.50 -600477.27 5678799.01 97.50 -600477.39 5679710.40 97.50 -600477.43 5679331.07 96.00 -600477.96 5677870.14 98.75 -600477.97 5679367.78 96.00 -600478.00 5680713.50 97.50 -600478.19 5679421.22 97.50 -600478.38 5679892.07 97.50 -600478.39 5677040.29 100.00 -600478.41 5681111.56 97.50 -600478.44 5681179.98 97.50 -600478.55 5679882.13 97.50 -600479.16 5679700.61 97.50 -600479.24 5680525.02 97.50 -600479.27 5676672.87 101.25 -600479.30 5680963.96 97.50 -600479.30 5681082.42 97.50 -600479.90 5679305.85 97.50 -600480.01 5679610.33 97.50 -600480.25 5680187.37 96.25 -600480.69 5680616.66 97.50 -600480.93 5680106.35 97.50 -600480.94 5680243.91 96.25 -600481.06 5679317.50 96.25 -600481.34 5681005.61 97.50 -600481.65 5679038.36 97.50 -600481.74 5680582.30 97.50 -600481.92 5679872.73 97.50 -600482.08 5681023.96 96.25 -600482.09 5680503.59 97.50 -600482.18 5677930.32 98.75 -600482.61 5680302.11 96.25 -600482.69 5678713.73 97.50 -600482.72 5679107.25 97.50 -600482.76 5681128.20 97.50 -600482.99 5679691.71 97.50 -600483.06 5677878.68 98.75 -600483.27 5678930.19 97.50 -600483.35 5677580.65 98.75 -600483.42 5679386.70 96.25 -600483.68 5680563.10 97.50 -600483.99 5679899.71 97.50 -600484.02 5680407.27 96.25 -600484.08 5680730.68 97.50 -600484.09 5680871.81 97.50 -600484.26 5680572.67 97.50 -600484.47 5677611.05 98.75 -600484.53 5681162.70 97.50 -600484.63 5678792.24 97.50 -600484.64 5680706.07 97.50 -600484.67 5680425.77 96.25 -600484.85 5680607.58 97.50 -600485.07 5680262.24 96.25 -600485.07 5679601.76 97.50 -600485.14 5681155.09 97.50 -600485.17 5680178.94 96.25 -600485.24 5677717.31 98.75 -600485.29 5680252.53 96.25 -600485.48 5679863.40 97.50 -600485.74 5681012.18 96.25 -600485.74 5680235.21 96.25 -600485.75 5678877.50 97.50 -600485.76 5680517.64 97.50 -600485.82 5679361.72 96.00 -600485.91 5679325.91 96.00 -600486.35 5680311.28 96.25 -600487.10 5680098.60 97.50 -600487.34 5680958.55 97.50 -600487.45 5679417.56 97.50 -600487.58 5681176.09 97.50 -600487.75 5679299.68 97.50 -600488.05 5680321.04 96.25 -600488.20 5680330.98 96.25 -600488.27 5681112.79 97.50 -600488.35 5680340.91 96.25 -600488.36 5677039.60 100.00 -600488.73 5676675.85 101.25 -600488.74 5679853.97 97.50 -600488.75 5680350.83 96.25 -600488.96 5680509.17 97.50 -600489.02 5680598.49 97.50 -600489.15 5679683.89 97.50 -600489.35 5680268.72 96.25 -600489.43 5680360.74 96.25 -600489.51 5679834.40 97.50 -600489.57 5679312.32 96.25 -600489.59 5679844.23 97.50 -600489.85 5679032.67 97.50 -600490.05 5680170.48 96.25 -600490.05 5677885.44 98.75 -600490.19 5680286.17 96.25 -600490.26 5679100.71 97.50 -600490.54 5680226.51 96.25 -600490.55 5678707.56 97.50 -600490.55 5679593.46 97.50 -600490.72 5677935.50 98.75 -600490.73 5680723.22 97.50 -600490.78 5678923.60 97.50 -600490.78 5681028.86 96.25 -600490.82 5680400.06 96.25 -600490.85 5677618.74 98.75 -600490.91 5681008.20 97.50 -600490.93 5679380.14 96.25 -600491.02 5680278.02 96.25 -600491.05 5680370.52 96.25 -600491.75 5680390.16 96.25 -600492.27 5679824.81 97.50 -600492.34 5680090.10 97.50 -600492.54 5678786.15 97.50 -600492.69 5680380.27 96.25 -600492.76 5680700.23 97.50 -600492.93 5677583.45 98.75 -600493.18 5680589.41 97.50 -600493.43 5680421.09 96.25 -600493.53 5679355.47 96.00 -600493.72 5680874.49 97.50 -600493.81 5679899.21 97.50 -600493.95 5680951.19 97.50 -600494.36 5678872.42 97.50 -600494.38 5679320.74 96.00 -600494.50 5681016.98 96.25 -600494.92 5680162.03 96.25 -600494.92 5677714.85 98.75 -600495.27 5680217.78 96.25 -600495.28 5679293.11 97.50 -600495.34 5679676.09 97.50 -600496.54 5679585.51 97.50 -600496.72 5681172.19 97.50 -600496.90 5679414.34 97.50 -600497.00 5679305.79 96.25 -600497.32 5679026.04 97.50 -600497.49 5680263.13 96.25 -600497.50 5677626.16 98.75 -600497.64 5680081.65 97.50 -600497.78 5678700.66 97.50 -600497.82 5676680.01 101.25 -600497.95 5680580.65 97.50 -600497.95 5679094.34 97.50 -600498.07 5681114.35 97.50 -600498.08 5680716.82 97.50 -600498.16 5680271.29 96.25 -600498.25 5681102.78 97.50 -600498.32 5677038.78 100.00 -600498.37 5680291.81 96.25 -600498.43 5679373.57 96.25 -600498.57 5677890.66 98.75 -600499.18 5678918.18 97.50 -600499.19 5677939.42 98.75 -600499.40 5679817.91 97.50 -600499.56 5681033.64 96.25 -600499.82 5680153.59 96.25 -600499.98 5681012.19 97.50 -600499.98 5680209.03 96.25 -600500.62 5678780.26 97.50 -600500.87 5680694.40 97.50 -600501.02 5679348.96 96.00 -600501.11 5680415.01 96.25 -600501.18 5681095.56 98.75 -600501.78 5681109.24 97.50 -600501.90 5679668.60 97.50 -600501.95 5678865.98 97.50 -600502.06 5679621.21 97.25 -600502.41 5680072.93 97.50 -600502.45 5679286.16 97.50 -600502.49 5680955.76 97.50 -600502.63 5677585.85 98.75 -600502.86 5679315.57 96.00 -600503.19 5680572.14 97.50 -600503.21 5681021.87 96.25 -600503.28 5679896.35 97.50 -600503.35 5680877.17 97.50 -600503.95 5679298.66 96.25 -600504.26 5679579.77 97.50 -600504.59 5677712.35 98.75 -600504.70 5680200.29 96.25 -600504.80 5679019.41 97.50 -600504.86 5680145.23 96.25 -600505.23 5677632.49 98.75 -600505.26 5680256.95 96.25 -600505.34 5679087.65 97.50 -600505.81 5680264.96 96.25 -600505.84 5680063.55 97.50 -600505.96 5678695.02 97.50 -600505.97 5679367.05 96.25 -600506.15 5681169.13 97.50 -600506.36 5679411.15 97.50 -600506.63 5679811.03 97.50 -600506.84 5677896.25 98.75 -600506.89 5681100.25 98.75 -600506.91 5676684.16 101.25 -600507.06 5677933.26 98.75 -600507.10 5680296.53 96.25 -600507.41 5679341.43 96.00 -600507.55 5680713.62 97.50 -600507.58 5678912.75 97.50 -600507.80 5681116.38 97.50 -600507.82 5680407.69 96.25 -600508.12 5681101.64 97.50 -600508.28 5677038.06 100.00 -600508.33 5681038.41 96.25 -600508.44 5680563.64 97.50 -600508.46 5679661.11 97.50 -600508.78 5680733.70 97.50 -600509.11 5678775.05 97.50 -600509.32 5681015.47 97.50 -600509.34 5680054.20 97.50 -600509.41 5680191.54 96.25 -600509.43 5679279.01 97.50 -600509.83 5681092.90 98.75 -600509.89 5680962.38 97.50 -600509.90 5680136.87 96.25 -600510.22 5680691.64 97.50 -600510.58 5680884.04 97.50 -600510.79 5678861.42 97.50 -600510.91 5679291.54 96.25 -600511.30 5681112.09 97.50 -600511.30 5681027.69 96.25 -600511.89 5679080.10 97.50 -600512.27 5679012.78 97.50 -600512.35 5677587.53 98.75 -600512.39 5679315.29 96.00 -600512.55 5679892.64 97.50 -600512.81 5679333.15 96.00 -600512.93 5680044.89 97.50 -600513.01 5680726.95 97.50 -600513.03 5680250.76 96.25 -600513.38 5679575.81 97.50 -600513.66 5680399.71 96.25 -600513.68 5680258.97 96.25 -600513.70 5679360.74 96.25 -600513.76 5677708.39 98.75 -600513.80 5679804.08 97.50 -600514.12 5680182.80 96.25 -600514.17 5677636.87 98.75 -600514.28 5677926.39 98.75 -600514.44 5680555.75 97.50 -600514.79 5679653.43 97.50 -600514.83 5677902.25 98.75 -600514.93 5680128.52 96.25 -600515.01 5676689.99 101.25 -600515.24 5680302.11 96.25 -600515.50 5678692.85 97.50 -600515.53 5679323.70 96.00 -600515.73 5681166.50 97.50 -600515.87 5679408.10 97.50 -600515.96 5680737.25 97.50 -600516.25 5680969.98 97.50 -600516.27 5681100.18 98.75 -600516.34 5681036.18 96.25 -600516.41 5679271.86 97.50 -600516.48 5678908.25 97.50 -600516.52 5680035.57 97.50 -600517.10 5680710.74 97.50 -600517.42 5681020.73 97.50 -600517.43 5681118.81 97.50 -600517.85 5680890.89 97.50 -600517.86 5680390.74 96.25 -600518.02 5681102.36 97.50 -600518.10 5678770.68 97.50 -600518.27 5677038.06 100.00 -600518.30 5679072.44 97.50 -600518.42 5679285.00 96.25 -600518.70 5680381.06 96.25 -600518.84 5680174.05 96.25 -600519.16 5681091.97 98.75 -600519.25 5680371.31 96.25 -600519.45 5679005.85 97.50 -600519.83 5678857.15 97.50 -600520.04 5680026.23 97.50 -600520.08 5680120.23 96.25 -600520.11 5680690.22 97.50 -600520.82 5681114.91 97.50 -600520.96 5677919.05 98.75 -600520.97 5679797.13 97.50 -600521.00 5679645.65 97.50 -600521.01 5680722.07 97.50 -600521.26 5677909.64 98.75 -600521.42 5679354.43 96.25 -600521.60 5678699.80 97.50 -600521.74 5680548.93 97.50 -600521.82 5679888.93 97.50 -600521.89 5679570.64 97.50 -600522.00 5680246.68 96.25 -600522.15 5677585.60 98.75 -600522.20 5677703.10 98.75 -600522.31 5680977.83 97.50 -600522.42 5680308.95 96.25 -600522.72 5680254.86 96.25 -600522.98 5676696.02 101.25 -600523.25 5678709.66 97.50 -600523.27 5677640.99 98.75 -600523.55 5680165.31 96.25 -600523.89 5680017.05 97.50 -600524.51 5679064.61 97.50 -600524.54 5681027.63 97.50 -600524.66 5680318.01 96.25 -600525.03 5680345.65 96.25 -600525.05 5680734.76 97.50 -600525.06 5680327.92 96.25 -600525.28 5680111.97 96.25 -600525.29 5680897.57 97.50 -600525.30 5679267.39 97.50 -600525.35 5679404.98 97.50 -600525.56 5678904.06 97.50 -600525.59 5681100.55 98.75 -600525.66 5681166.50 97.50 -600525.84 5678719.30 97.50 -600525.93 5679278.46 96.25 -600525.97 5678998.28 97.50 -600526.34 5680354.54 96.25 -600526.39 5680368.42 96.25 -600526.88 5680708.66 97.50 -600527.03 5681121.33 97.50 -600527.10 5678766.31 97.50 -600527.22 5679637.88 97.50 -600527.83 5681103.81 97.50 -600527.84 5679789.92 97.50 -600528.26 5677038.06 100.00 -600528.28 5680156.57 96.25 -600528.52 5681091.29 98.75 -600528.70 5680985.41 97.50 -600528.89 5678852.94 97.50 -600528.90 5680726.27 97.25 -600529.09 5679348.07 96.25 -600529.15 5680008.57 97.50 -600529.30 5680542.42 97.50 -600529.74 5680687.80 97.50 -600529.80 5680718.66 97.50 -600529.89 5677696.77 98.75 -600530.40 5679565.47 97.50 -600530.46 5681117.32 97.50 -600530.47 5680103.70 96.25 -600530.74 5676702.32 101.25 -600530.77 5679056.82 97.50 -600531.04 5680334.28 96.25 -600531.30 5680243.17 96.25 -600531.62 5677582.65 98.75 -600531.71 5679887.69 97.50 -600531.77 5680250.74 96.25 -600531.98 5681034.19 97.50 -600532.50 5678990.71 97.50 -600532.74 5680361.93 96.25 -600533.06 5677642.99 98.75 -600533.07 5679629.84 97.50 -600533.08 5680147.88 96.25 -600533.30 5679689.39 97.50 -600533.44 5679271.91 96.25 -600533.73 5680345.10 96.25 -600533.84 5680731.34 97.50 -600533.93 5680902.43 97.50 -600533.99 5679782.05 97.50 -600534.34 5679263.13 97.50 -600534.65 5678899.87 97.50 -600534.68 5679401.44 97.50 -600534.74 5681102.61 98.75 -600534.75 5680000.31 97.50 -600534.90 5678708.78 97.50 -600534.94 5678718.77 97.50 -600535.19 5680369.95 96.25 -600535.41 5680703.50 97.50 -600535.52 5678760.93 97.50 -600535.60 5681166.68 97.50 -600535.64 5680095.43 96.25 -600535.94 5679738.14 97.50 -600536.14 5679341.02 96.25 -600536.55 5681091.29 98.75 -600536.83 5681122.96 97.50 -600536.98 5680990.76 97.50 -600537.01 5677689.76 98.75 -600537.06 5679049.06 97.50 -600537.11 5679680.22 97.50 -600537.25 5680536.35 97.50 -600537.52 5681105.99 97.50 -600537.79 5679695.95 97.50 -600537.88 5680139.18 96.25 -600538.13 5678849.10 97.50 -600538.23 5677037.50 100.00 -600538.27 5676708.89 101.25 -600538.47 5679621.47 97.50 -600538.58 5679728.93 97.50 -600538.84 5680716.03 97.50 -600538.91 5679560.30 97.50 -600538.97 5679670.48 97.50 -600539.02 5678983.15 97.50 -600539.03 5680684.13 97.50 -600539.49 5681040.66 97.50 -600539.51 5679747.36 97.50 -600540.10 5680338.36 96.25 -600540.14 5679774.19 97.50 -600540.26 5681118.91 97.50 -600540.38 5679992.06 97.50 -600540.61 5677578.30 98.75 -600540.69 5678703.10 97.50 -600540.76 5680087.12 96.25 -600540.77 5680240.25 96.25 -600540.86 5681098.86 99.10 -600541.00 5680247.30 96.25 -600541.63 5679886.55 97.50 -600541.67 5679660.99 97.50 -600541.76 5677647.74 98.75 -600542.62 5680727.92 97.50 -600542.68 5680130.48 96.25 -600542.82 5680349.11 96.25 -600542.97 5680906.70 97.50 -600543.08 5679269.85 96.25 -600543.19 5679333.97 96.25 -600543.36 5679041.30 97.50 -600543.63 5677682.36 98.75 -600543.68 5681105.44 98.75 -600543.79 5678895.83 97.50 -600543.86 5679613.10 97.50 -600543.89 5679260.48 97.50 -600543.92 5680698.25 97.50 -600544.02 5679397.91 97.50 -600544.16 5678755.96 97.50 -600544.36 5679765.28 97.50 -600544.43 5679756.01 97.50 -600544.55 5681091.60 98.75 -600544.91 5680996.62 97.50 -600545.16 5680530.26 97.50 -600545.39 5681165.92 97.50 -600545.82 5679723.36 97.50 -600545.90 5680078.82 96.25 -600545.91 5679652.02 97.50 -600546.00 5678976.01 97.50 -600546.11 5679983.88 97.50 -600546.43 5681110.28 97.50 -600546.46 5676714.55 101.25 -600546.60 5679693.40 97.50 -600546.76 5681123.10 97.50 -600546.98 5681047.16 97.50 -600547.41 5679555.12 97.50 -600547.45 5678845.54 97.50 -600547.48 5680121.79 96.25 -600547.80 5680715.22 97.50 -600548.18 5677036.71 100.00 -600548.20 5680343.80 96.25 -600548.33 5680680.47 97.50 -600548.74 5677673.78 98.75 -600548.76 5678488.22 98.75 -600548.77 5678662.80 97.50 -600548.78 5677654.59 98.75 -600549.45 5679604.86 97.50 -600549.60 5677573.95 98.75 -600549.65 5679033.54 97.50 -600549.88 5680722.31 97.50 -600550.09 5678705.80 97.50 -600550.45 5680238.04 96.25 -600550.74 5679643.34 97.50 -600550.74 5679327.49 96.25 -600550.80 5677664.23 98.75 -600550.84 5680245.89 96.25 -600550.93 5681095.17 98.75 -600551.16 5680070.61 96.25 -600551.30 5681102.26 98.75 -600551.54 5678478.75 98.75 -600551.58 5679886.12 97.50 -600551.60 5681003.86 97.50 -600551.83 5679975.71 97.50 -600552.03 5681109.46 98.75 -600552.21 5680523.18 97.50 -600552.26 5680113.07 96.25 -600552.37 5678653.57 97.50 -600552.44 5680693.03 97.50 -600552.71 5680907.10 97.50 -600552.90 5679268.17 96.25 -600553.02 5678892.00 97.50 -600553.23 5678751.76 97.50 -600553.25 5678969.13 97.50 -600553.33 5679394.32 97.50 -600553.73 5679258.73 97.50 -600554.11 5678495.80 98.75 -600554.27 5679687.16 97.50 -600554.48 5678670.36 97.50 -600554.93 5681163.15 97.50 -600555.03 5679596.62 97.50 -600555.09 5676719.59 101.25 -600555.39 5679720.52 97.50 -600555.52 5681114.25 97.50 -600555.92 5679549.95 97.50 -600556.09 5681049.33 97.50 -600556.13 5681012.58 97.50 -600556.42 5680062.39 96.25 -600556.89 5680104.29 96.25 -600556.97 5679026.84 97.50 -600557.14 5678843.07 97.50 -600557.63 5680676.81 97.50 -600557.91 5679636.61 97.50 -600557.94 5677034.54 100.00 -600558.21 5678645.45 97.50 -600558.43 5677569.28 98.75 -600558.52 5678711.18 97.50 -600558.58 5679968.39 97.50 -600558.72 5679321.51 96.25 -600558.86 5681022.10 97.50 -600559.26 5680516.09 97.50 -600559.60 5681106.41 98.75 -600560.12 5678473.73 98.75 -600560.23 5680236.29 96.25 -600560.26 5679588.15 97.50 -600560.30 5680983.76 96.25 -600560.49 5678962.25 97.50 -600560.67 5680244.49 96.25 -600560.72 5681112.70 98.75 -600561.01 5681031.78 97.50 -600561.02 5681041.70 97.50 -600561.17 5680053.87 96.25 -600561.52 5680095.50 96.25 -600561.56 5679886.34 97.50 -600561.79 5678746.67 97.50 -600561.89 5680689.79 97.50 -600562.15 5680992.67 96.25 -600562.26 5678888.17 97.50 -600562.49 5679390.33 97.50 -600562.63 5680906.14 97.50 -600562.71 5679266.46 96.25 -600562.88 5681101.69 98.75 -600563.06 5678636.71 97.50 -600563.17 5681094.79 98.75 -600563.25 5679682.93 97.50 -600563.57 5679256.99 97.50 -600563.78 5678671.35 97.50 -600563.88 5678497.65 98.75 -600563.90 5676724.30 101.25 -600564.53 5679544.96 97.50 -600564.66 5681161.15 97.50 -600564.86 5681117.60 97.50 -600564.93 5679020.80 97.50 -600565.06 5679718.06 97.50 -600565.65 5680045.20 96.25 -600565.72 5679961.42 97.50 -600565.85 5679580.00 97.50 -600565.87 5680508.68 97.50 -600566.16 5680086.71 96.25 -600566.46 5681001.56 96.25 -600566.56 5678627.43 97.50 -600566.64 5679632.46 97.50 -600566.65 5677563.67 98.75 -600566.67 5680672.59 97.50 -600566.70 5679315.52 96.25 -600566.83 5678840.59 97.50 -600567.50 5677031.78 100.00 -600567.74 5678955.37 97.50 -600568.33 5678711.71 97.50 -600568.58 5678468.50 98.75 -600568.58 5681108.55 98.75 -600568.98 5680983.75 96.25 -600569.40 5681115.96 98.75 -600569.96 5678740.91 97.50 -600570.01 5680234.54 96.25 -600570.13 5680036.54 96.25 -600570.17 5678882.13 97.50 -600570.58 5680243.94 96.25 -600570.59 5678618.77 97.50 -600570.79 5680077.92 96.25 -600570.81 5680499.99 97.50 -600571.34 5680686.54 97.50 -600571.42 5679887.39 97.50 -600571.49 5679386.09 97.50 -600571.71 5679953.52 97.50 -600571.87 5681009.90 96.25 -600572.08 5680902.86 97.50 -600572.14 5681104.67 98.75 -600572.23 5679678.69 97.50 -600572.48 5679264.52 96.25 -600572.66 5679572.74 97.50 -600572.81 5681094.20 98.75 -600572.94 5676728.57 101.25 -600573.19 5679015.23 97.50 -600573.41 5679255.24 97.50 -600573.43 5680703.72 97.50 -600573.43 5679540.56 97.50 -600573.51 5678669.16 97.50 -600573.60 5678499.74 98.75 -600574.31 5677557.26 98.75 -600574.37 5681120.48 97.50 -600574.43 5679714.94 97.50 -600574.49 5681159.82 97.50 -600574.84 5679309.76 96.25 -600575.08 5680028.12 96.25 -600575.42 5680069.13 96.25 -600575.50 5680491.18 97.50 -600575.50 5680667.92 97.50 -600575.75 5681100.30 99.00 -600576.00 5680346.34 97.50 -600576.09 5678949.90 97.50 -600576.32 5679630.24 97.50 -600576.43 5678837.80 97.50 -600576.72 5677027.93 100.00 -600576.96 5679945.03 97.50 -600577.09 5680336.62 97.50 -600577.22 5681018.27 96.25 -600577.30 5678463.76 98.75 -600577.43 5680988.90 96.25 -600577.48 5681111.01 98.75 -600577.93 5678709.03 97.50 -600578.12 5681119.11 98.75 -600578.19 5678876.20 97.50 -600578.20 5680356.08 97.50 -600578.94 5678613.33 97.50 -600578.97 5678736.76 97.50 -600579.05 5680481.88 97.50 -600579.47 5679380.09 97.50 -600579.62 5679565.62 97.50 -600579.78 5680706.37 97.50 -600579.90 5680234.10 96.25 -600579.95 5680697.43 97.50 -600580.03 5680019.71 96.25 -600580.05 5680060.35 96.25 -600580.17 5680327.27 97.50 -600580.18 5677549.36 98.75 -600580.32 5680471.97 97.50 -600580.51 5680243.76 96.25 -600580.78 5680683.28 97.50 -600580.79 5679935.84 97.50 -600580.83 5680365.68 97.50 -600581.03 5680452.05 97.50 -600581.05 5679890.03 97.50 -600581.31 5680462.04 97.50 -600581.46 5679675.08 97.50 -600581.62 5680900.01 97.50 -600581.85 5681104.28 98.75 -600581.89 5680442.11 97.50 -600581.94 5679010.39 97.50 -600582.02 5678663.92 97.50 -600582.25 5679262.58 96.25 -600582.44 5676731.60 101.25 -600582.52 5681094.72 98.75 -600582.55 5681026.67 96.25 -600582.65 5679709.27 97.50 -600582.82 5679538.13 97.50 -600582.99 5679304.02 96.25 -600583.25 5678502.15 98.75 -600583.25 5679253.52 97.50 -600583.34 5681156.87 97.50 -600583.40 5680432.27 97.50 -600583.40 5680996.73 96.25 -600583.64 5680662.14 97.50 -600583.98 5679926.40 97.50 -600584.16 5681121.50 97.50 -600584.41 5681116.24 98.75 -600584.52 5678944.53 97.50 -600584.69 5680051.56 96.25 -600584.87 5680011.24 96.25 -600585.03 5677540.63 98.75 -600585.10 5680374.72 97.50 -600585.83 5677023.85 100.00 -600585.96 5678834.80 97.50 -600586.07 5679628.40 97.50 -600586.31 5680422.72 97.50 -600586.35 5679916.70 97.50 -600586.42 5678459.80 98.75 -600586.65 5680319.67 97.50 -600586.77 5678871.07 97.50 -600587.11 5678705.04 97.50 -600587.15 5679559.12 97.50 -600587.30 5681035.39 96.25 -600587.30 5680691.77 97.50 -600587.45 5679374.09 97.50 -600587.64 5679897.41 97.50 -600587.87 5678608.85 97.50 -600587.90 5681020.06 96.00 -600588.41 5681100.47 98.75 -600588.42 5678733.55 97.50 -600588.68 5680413.01 97.50 -600588.70 5680703.90 97.50 -600588.72 5679907.00 97.50 -600588.88 5680677.43 97.50 -600588.95 5681004.97 96.25 -600589.27 5677531.59 98.75 -600589.32 5680042.77 96.25 -600589.36 5680383.76 97.50 -600589.46 5680231.75 96.25 -600589.64 5680002.73 96.25 -600590.03 5681149.53 97.50 -600590.24 5679702.97 97.50 -600590.42 5680244.04 96.25 -600590.68 5679005.55 97.50 -600590.94 5679672.09 97.50 -600591.04 5680403.30 97.50 -600591.13 5678659.89 97.50 -600591.14 5679298.27 96.25 -600591.34 5680393.54 97.50 -600591.43 5680899.74 97.50 -600591.73 5679541.88 97.50 -600591.73 5681044.28 96.25 -600591.79 5680656.38 97.50 -600591.93 5679550.57 97.50 -600592.02 5679260.64 96.25 -600592.06 5676734.32 101.25 -600592.93 5678504.40 98.75 -600592.95 5678939.17 97.50 -600593.10 5679251.85 97.50 -600593.15 5681125.70 97.50 -600593.33 5677522.46 98.75 -600593.71 5680312.72 97.50 -600593.86 5681013.58 96.25 -600593.98 5680034.00 96.25 -600594.33 5679994.17 96.25 -600594.83 5677019.50 100.00 -600594.88 5678830.35 97.50 -600595.07 5680694.55 97.25 -600595.18 5680686.89 97.50 -600595.24 5678865.77 97.50 -600595.77 5680670.32 97.50 -600595.81 5681053.35 96.25 -600595.92 5678457.74 98.75 -600595.94 5679627.35 97.50 -600596.02 5679368.99 97.50 -600596.03 5679694.83 97.50 -600596.03 5677512.88 98.75 -600596.17 5681141.78 97.50 -600596.81 5678604.36 97.50 -600596.85 5678703.18 97.50 -600597.90 5680702.67 97.50 -600598.05 5681022.60 96.25 -600598.23 5677503.13 98.75 -600598.38 5678732.70 97.50 -600598.68 5680025.25 96.25 -600598.81 5679985.50 96.25 -600598.99 5681132.61 97.50 -600599.13 5680230.12 96.25 -600599.42 5679000.71 97.50 -600599.45 5679685.51 97.50 -600599.47 5679676.09 97.50 -600600.06 5679293.83 96.25 -600600.31 5680244.99 96.25 -600600.43 5677493.39 98.75 -600600.48 5678656.36 97.50 -600600.66 5681061.98 96.25 -600601.03 5680652.91 97.50 -600601.13 5680902.16 97.50 -600601.59 5678934.15 97.50 -600601.82 5679258.89 96.25 -600601.94 5676735.26 101.25 -600602.08 5680307.26 97.50 -600602.23 5681031.61 96.25 -600602.34 5680662.84 97.50 -600602.71 5678506.22 98.75 -600602.88 5677483.70 98.75 -600602.92 5680681.77 97.50 -600602.95 5679250.18 97.50 -600603.25 5678859.78 97.50 -600603.39 5680016.50 96.25 -600603.67 5678825.57 97.50 -600603.81 5679771.46 97.50 -600603.83 5677015.16 100.00 -600604.66 5679363.98 97.50 -600604.86 5679762.39 97.50 -600605.42 5677474.04 98.75 -600605.46 5678599.35 97.50 -600605.66 5680697.58 97.50 -600605.74 5679625.77 97.50 -600605.84 5679987.97 96.25 -600605.86 5678457.96 98.75 -600606.24 5681040.70 96.25 -600606.39 5680007.03 96.25 -600606.83 5678703.14 97.50 -600607.18 5679997.31 96.25 -600607.32 5680234.33 96.25 -600607.95 5677464.37 98.75 -600608.10 5678995.76 97.50 -600608.30 5678733.62 97.50 -600608.65 5680655.80 97.50 -600608.79 5681066.95 96.25 -600609.02 5679289.44 96.25 -600609.39 5679753.57 97.50 -600609.55 5680248.30 96.25 -600609.63 5678482.88 99.00 -600609.67 5680689.71 97.50 -600609.73 5681050.01 96.25 -600609.75 5678652.63 97.50 -600610.34 5678929.34 97.50 -600610.49 5680905.64 97.50 -600610.73 5680310.97 97.50 -600611.26 5678853.80 97.50 -600611.27 5679743.99 97.50 -600611.48 5680680.63 97.50 -600611.67 5679257.45 96.25 -600611.87 5676734.76 101.25 -600612.31 5681059.54 96.25 -600612.34 5677455.64 98.75 -600612.48 5678508.05 98.75 -600612.79 5679248.43 97.50 -600612.91 5677011.07 100.00 -600613.13 5678822.54 97.50 -600613.28 5679770.51 97.50 -600613.68 5679734.48 97.50 -600613.73 5679359.90 97.50 -600614.05 5678594.24 97.50 -600615.28 5680240.01 96.25 -600615.44 5679623.64 97.50 -600615.51 5678460.20 98.75 -600616.74 5678990.74 97.50 -600616.83 5678703.37 97.50 -600617.59 5679725.37 97.50 -600618.10 5679841.25 97.50 -600618.17 5678735.20 97.50 -600618.29 5677447.62 98.75 -600618.56 5679286.81 96.25 -600618.60 5680252.35 96.25 -600618.79 5678648.36 97.50 -600618.82 5680316.70 97.50 -600618.88 5679831.35 97.50 -600619.07 5679762.77 97.50 -600619.74 5678926.16 97.50 -600619.84 5678848.67 97.50 -600620.15 5680908.11 97.50 -600620.42 5679821.54 97.50 -600621.19 5679849.86 97.50 -600621.53 5679256.01 96.25 -600621.59 5676732.43 101.25 -600621.63 5679801.79 97.50 -600621.87 5679811.72 97.50 -600622.27 5678508.73 98.75 -600622.37 5678819.14 97.50 -600622.58 5679246.42 97.50 -600622.62 5677008.69 100.00 -600622.62 5678589.09 97.50 -600623.11 5679356.51 97.50 -600623.13 5679717.34 97.50 -600623.80 5676868.97 100.00 -600623.83 5676859.02 100.00 -600623.88 5679792.34 97.50 -600624.03 5677439.43 98.75 -600624.08 5680244.57 96.25 -600624.57 5678984.55 97.50 -600625.11 5679621.42 97.50 -600625.12 5678462.71 98.75 -600625.45 5679755.18 97.50 -600625.87 5676878.74 100.00 -600626.00 5680323.65 97.50 -600626.82 5678703.75 97.50 -600627.35 5678643.19 97.50 -600627.98 5678737.13 97.50 -600628.14 5676850.49 100.00 -600628.16 5680255.08 96.25 -600628.35 5679284.97 96.25 -600628.42 5679783.59 97.50 -600628.65 5678844.12 97.50 -600629.14 5677001.61 100.00 -600629.43 5678923.70 97.50 -600629.74 5677431.24 98.75 -600629.98 5680909.33 97.50 -600630.20 5679851.51 97.50 -600630.54 5679710.74 97.50 -600630.56 5678813.40 97.50 -600630.95 5679730.70 98.00 -600631.05 5680251.05 96.25 -600631.11 5676729.49 101.25 -600631.17 5678583.91 97.50 -600631.38 5679254.56 96.25 -600631.53 5676886.70 100.00 -600631.81 5679747.57 97.50 -600632.07 5678507.05 98.75 -600632.31 5678978.23 97.50 -600632.36 5679244.40 97.50 -600632.59 5679353.52 97.50 -600633.19 5680330.60 97.50 -600634.31 5679617.68 97.50 -600634.36 5676842.67 100.00 -600634.78 5679775.96 97.50 -600634.88 5678464.67 98.75 -600634.95 5676993.49 100.00 -600635.15 5680710.07 97.50 -600635.24 5677422.89 98.75 -600635.76 5678637.81 97.50 -600636.00 5678701.47 97.50 -600636.17 5680586.41 97.50 -600636.32 5680577.10 97.50 -600636.46 5680558.45 97.50 -600636.73 5680567.78 97.50 -600636.79 5680719.61 97.50 -600637.35 5680595.66 97.50 -600637.68 5679703.87 97.50 -600637.87 5678738.53 97.50 -600638.13 5679739.92 97.50 -600638.23 5679283.70 96.25 -600638.33 5680549.49 97.50 -600638.34 5679845.83 97.50 -600638.42 5678841.98 97.50 -600638.53 5676893.74 100.00 -600638.56 5678807.41 97.50 -600638.95 5678920.78 97.50 -600639.47 5680907.27 97.50 -600639.68 5680338.19 97.50 -600639.72 5678578.73 97.50 -600640.09 5678971.96 97.50 -600640.30 5676725.55 101.25 -600640.55 5677414.43 98.75 -600640.73 5680728.79 97.50 -600640.89 5679251.72 96.25 -600641.40 5676985.87 100.00 -600641.51 5679768.67 97.50 -600641.67 5680540.77 97.50 -600641.87 5678505.37 98.75 -600641.88 5679730.74 97.50 -600642.15 5679242.38 97.50 -600642.40 5676836.83 100.00 -600642.54 5679352.66 97.50 -600642.69 5679695.31 97.50 -600643.02 5679612.90 97.50 -600643.54 5680834.80 97.50 -600643.56 5680824.84 97.50 -600643.76 5678631.81 97.50 -600644.08 5680844.78 97.50 -600644.21 5678695.76 97.50 -600644.56 5680814.90 97.50 -600644.82 5678464.36 98.75 -600645.02 5680532.06 97.50 -600645.43 5680737.55 97.50 -600645.63 5679721.56 97.50 -600645.78 5677405.92 98.75 -600645.94 5679839.43 97.50 -600646.16 5680345.80 97.50 -600646.42 5680854.28 97.50 -600646.49 5678801.32 97.50 -600646.68 5680805.17 97.50 -600647.03 5676898.99 100.00 -600647.41 5679711.87 97.50 -600647.59 5680901.45 97.50 -600647.60 5676718.73 101.25 -600647.80 5678739.77 97.50 -600647.87 5680523.18 97.50 -600647.93 5678965.77 97.50 -600648.00 5678916.54 97.50 -600648.03 5676978.42 100.00 -600648.11 5679282.43 96.25 -600648.19 5678839.85 97.50 -600648.28 5678573.54 97.50 -600648.52 5679761.64 97.50 -600649.38 5679692.64 97.50 -600649.51 5679702.23 97.50 -600649.68 5680795.76 97.50 -600650.12 5680354.93 97.50 -600650.14 5680863.47 97.50 -600650.29 5679248.44 96.25 -600650.70 5676831.26 100.00 -600651.02 5677397.41 98.75 -600651.27 5680745.66 97.50 -600651.44 5680514.63 97.50 -600651.47 5680892.73 97.50 -600651.55 5678503.15 98.75 -600651.71 5678689.15 97.50 -600651.76 5678625.80 97.50 -600651.87 5679608.42 97.50 -600651.94 5679240.36 97.50 -600652.13 5680873.26 97.50 -600652.48 5679351.79 97.50 -600653.17 5676969.85 100.00 -600653.54 5679833.04 97.50 -600653.81 5680364.21 97.50 -600653.94 5680883.05 97.50 -600654.01 5678794.73 97.50 -600654.76 5678464.04 98.75 -600654.84 5679754.02 97.50 -600654.87 5676904.93 100.00 -600654.91 5676711.90 101.25 -600655.68 5677388.59 98.75 -600655.77 5678959.57 97.50 -600656.04 5680506.51 97.50 -600657.04 5678912.29 97.50 -600657.64 5680753.36 97.50 -600657.69 5678570.28 97.50 -600657.78 5678739.90 97.50 -600657.87 5679280.47 96.25 -600658.07 5678838.37 97.50 -600658.32 5676961.29 100.00 -600658.45 5680790.97 97.50 -600659.03 5678682.35 97.50 -600659.11 5676825.87 100.00 -600659.26 5681179.24 97.50 -600659.54 5680372.40 97.50 -600659.70 5679245.15 96.25 -600659.76 5678619.80 97.50 -600659.90 5677379.54 98.75 -600659.93 5679745.52 97.50 -600660.31 5676913.25 100.00 -600660.94 5679236.14 97.50 -600661.02 5679604.56 97.50 -600661.11 5678500.40 98.75 -600661.14 5679826.64 97.50 -600661.95 5679348.93 97.50 -600661.96 5676704.81 101.25 -600662.49 5676952.21 100.00 -600662.50 5676922.99 100.00 -600662.58 5678789.99 97.50 -600663.01 5680500.31 97.50 -600663.15 5681185.15 97.50 -600663.26 5677221.22 98.75 -600663.61 5678953.37 97.50 -600664.13 5677370.48 98.75 -600664.42 5679736.66 97.50 -600664.46 5680760.66 97.50 -600664.55 5676932.76 100.00 -600664.64 5678464.62 98.75 -600664.77 5677231.10 98.75 -600664.81 5676942.74 100.00 -600665.12 5677290.87 98.75 -600665.16 5677300.85 98.75 -600665.56 5677310.83 98.75 -600665.62 5677280.89 98.75 -600665.80 5677360.63 98.75 -600665.96 5677320.81 98.75 -600666.09 5678908.05 97.50 -600666.12 5677270.91 98.75 -600666.14 5678675.32 97.50 -600666.24 5677240.98 98.75 -600666.38 5677330.80 98.75 -600666.62 5677260.93 98.75 -600666.79 5677340.78 98.75 -600666.84 5677250.95 98.75 -600666.90 5681174.15 97.50 -600667.07 5678613.07 97.50 -600667.20 5677350.76 98.75 -600667.23 5678567.29 97.50 -600667.58 5679278.27 96.25 -600667.59 5680786.96 97.50 -600667.60 5676820.61 100.00 -600667.77 5678739.73 97.50 -600667.79 5676580.83 101.25 -600667.98 5677215.67 98.75 -600667.99 5678837.07 97.50 -600668.05 5679819.53 97.50 -600668.39 5680375.63 97.50 -600668.53 5676570.86 101.25 -600668.58 5676590.48 101.25 -600668.90 5679727.80 97.50 -600668.95 5676697.68 101.25 -600669.59 5679244.60 96.25 -600669.80 5680768.70 97.50 -600669.81 5679231.54 97.50 -600670.00 5680494.12 97.50 -600670.17 5679600.69 97.50 -600670.34 5678496.95 98.75 -600670.56 5679344.17 97.50 -600671.34 5678947.04 97.50 -600671.90 5680778.48 97.50 -600672.15 5678787.18 97.50 -600672.38 5681186.14 97.50 -600672.57 5679718.57 97.50 -600673.17 5676599.36 101.25 -600673.55 5678605.46 97.50 -600673.63 5681150.29 96.25 -600674.33 5680523.06 96.25 -600674.48 5678466.08 98.75 -600674.59 5679812.06 97.50 -600674.82 5676563.15 101.25 -600674.86 5680532.91 96.25 -600675.25 5678904.07 97.50 -600675.41 5680371.35 97.50 -600675.45 5676690.07 101.25 -600675.65 5678672.92 97.50 -600675.68 5680542.75 96.25 -600675.90 5681172.57 97.50 -600676.00 5676815.21 100.00 -600676.20 5679709.32 97.50 -600676.68 5680552.57 96.25 -600677.03 5678566.31 97.50 -600677.23 5679275.80 96.25 -600677.30 5676608.46 101.25 -600677.54 5680516.08 96.25 -600677.64 5680562.39 96.25 -600677.66 5677213.26 98.75 -600677.76 5678739.37 97.50 -600677.80 5678835.42 97.50 -600677.94 5679337.44 97.50 -600678.47 5680572.23 96.25 -600678.56 5678491.36 98.75 -600678.68 5679226.94 97.50 -600678.73 5681157.91 96.25 -600679.05 5678940.69 97.50 -600679.31 5680582.07 96.25 -600679.55 5679244.41 96.25 -600679.57 5679597.52 97.50 -600679.93 5679700.11 97.50 -600680.25 5680362.61 97.50 -600680.33 5679803.96 97.50 -600680.39 5680591.88 96.25 -600681.02 5678599.15 97.50 -600681.26 5676555.51 101.25 -600681.53 5680601.68 96.25 -600681.60 5676682.25 101.25 -600681.66 5681186.59 97.50 -600681.97 5678785.34 97.50 -600682.10 5676617.11 101.25 -600682.47 5681146.05 96.25 -600682.67 5680611.49 96.25 -600682.92 5681178.99 97.75 -600682.96 5678678.53 97.50 -600683.75 5678469.58 98.75 -600683.77 5680621.30 96.25 -600683.81 5679690.97 97.50 -600684.28 5676809.61 100.00 -600684.31 5679218.92 97.50 -600684.46 5678900.18 97.50 -600684.78 5680631.12 96.25 -600685.02 5680353.83 97.50 -600685.11 5681173.02 97.50 -600685.23 5679795.37 97.50 -600685.32 5679330.71 97.50 -600685.73 5680520.09 96.25 -600685.78 5680640.94 96.25 -600685.83 5676673.19 101.25 -600685.97 5678484.84 98.75 -600686.64 5678934.19 97.50 -600686.81 5679273.09 96.25 -600686.81 5680650.76 96.25 -600686.97 5678831.44 97.50 -600687.02 5678566.62 97.50 -600687.08 5677209.91 98.75 -600687.36 5678687.50 97.50 -600687.68 5679681.83 97.50 -600687.71 5678738.35 97.50 -600687.93 5681160.98 96.25 -600687.94 5680660.57 96.25 -600688.59 5676624.57 101.25 -600688.73 5679593.84 97.50 -600688.74 5679786.15 97.50 -600688.82 5676663.67 101.25 -600689.08 5680670.37 96.25 -600689.12 5676549.61 101.25 -600689.28 5678476.64 98.75 -600689.35 5679210.30 97.50 -600689.50 5679244.22 96.25 -600689.81 5679776.28 97.50 -600689.84 5678597.29 97.50 -600690.21 5680680.18 96.25 -600690.96 5681186.70 97.50 -600691.19 5676654.00 101.25 -600691.52 5680528.09 96.25 -600691.57 5676634.11 101.25 -600691.71 5676644.01 101.25 -600691.86 5678783.90 97.50 -600692.15 5681144.72 96.25 -600692.20 5679673.00 97.50 -600692.28 5679323.62 97.50 -600692.60 5676804.08 100.00 -600692.91 5678695.65 97.50 -600693.23 5678895.41 97.50 -600693.29 5680348.53 97.50 -600693.39 5680689.53 96.25 -600693.48 5679201.24 97.50 -600693.96 5678927.39 97.50 -600694.04 5678613.91 97.50 -600694.19 5680586.60 96.00 -600694.39 5681173.57 97.50 -600695.91 5677205.35 98.75 -600695.97 5679768.51 97.50 -600696.00 5680536.88 96.25 -600696.09 5678604.29 97.50 -600696.19 5679269.78 96.25 -600696.32 5678828.34 97.50 -600696.57 5680698.87 96.25 -600696.91 5679191.85 97.50 -600697.02 5678566.68 97.50 -600697.20 5679664.42 97.50 -600697.22 5679588.69 97.50 -600697.65 5678737.34 97.50 -600697.72 5681161.44 96.25 -600697.92 5676544.87 101.25 -600698.14 5679315.53 97.50 -600698.44 5681109.78 96.25 -600698.94 5680312.91 97.50 -600699.41 5679244.96 96.25 -600699.75 5680708.22 96.25 -600699.79 5680302.96 97.50 -600700.10 5681100.48 96.25 -600700.20 5680545.80 96.25 -600700.26 5681186.85 97.50 -600700.30 5680322.80 97.50 -600700.33 5679182.47 97.50 -600700.40 5678616.39 97.50 -600700.71 5680342.61 97.50 -600701.09 5676798.82 100.00 -600701.20 5681141.66 96.25 -600701.62 5678920.99 97.50 -600701.71 5678782.27 97.50 -600701.81 5680332.68 97.50 -600701.92 5679655.69 97.50 -600702.19 5679760.76 97.50 -600702.25 5678698.94 97.50 -600702.49 5678895.31 97.50 -600702.93 5680717.56 96.25 -600703.06 5681117.99 96.25 -600703.38 5681175.75 97.50 -600703.68 5680555.04 96.25 -600703.83 5680294.79 97.50 -600704.44 5677200.15 98.75 -600704.45 5679307.82 97.50 -600704.61 5679173.52 97.50 -600704.91 5679582.40 97.50 -600705.11 5680173.25 97.50 -600705.49 5679266.19 96.25 -600705.60 5681092.37 96.25 -600706.19 5679646.72 97.50 -600706.31 5678828.57 97.50 -600706.34 5678912.90 97.50 -600706.55 5680726.74 96.25 -600706.71 5676540.10 101.25 -600706.78 5680182.79 97.50 -600706.90 5681183.52 97.50 -600707.01 5678566.41 97.50 -600707.09 5679428.06 97.50 -600707.16 5679419.93 97.50 -600707.17 5680564.27 96.25 -600707.35 5678903.04 97.50 -600707.46 5681162.40 96.25 -600707.60 5678736.32 97.50 -600707.99 5681083.10 96.25 -600708.20 5681126.29 96.25 -600708.33 5681135.64 96.25 -600708.55 5681073.32 96.25 -600708.80 5681063.52 96.25 -600708.99 5679753.52 97.50 -600709.29 5679246.21 96.25 -600709.58 5676793.55 100.00 -600709.62 5678612.57 97.50 -600710.25 5680735.90 96.25 -600710.32 5679165.33 97.50 -600710.47 5679637.76 97.50 -600710.63 5679218.02 97.50 -600710.95 5679410.85 97.50 -600710.99 5680166.66 97.50 -600711.49 5678780.17 97.50 -600711.54 5680573.12 96.25 -600711.83 5679301.15 97.50 -600711.88 5677193.57 98.75 -600711.90 5678698.39 97.50 -600712.07 5680289.24 97.50 -600712.50 5679227.83 97.50 -600712.51 5680631.98 96.25 -600712.65 5680622.11 96.25 -600712.71 5679576.26 97.50 -600712.78 5680612.24 96.25 -600712.90 5680190.47 97.50 -600712.97 5680602.37 96.25 -600713.13 5680641.83 96.25 -600713.16 5680745.30 96.25 -600713.35 5679628.27 97.50 -600713.37 5680582.66 96.25 -600713.45 5680592.51 96.25 -600713.76 5680651.69 96.25 -600713.83 5679261.51 96.25 -600714.05 5679208.80 97.50 -600714.72 5679401.77 97.50 -600714.96 5680661.46 96.25 -600715.24 5679433.14 97.50 -600715.35 5679252.74 96.25 -600715.46 5676535.26 101.25 -600715.69 5680754.84 96.25 -600715.79 5679746.28 97.50 -600716.04 5679157.13 97.50 -600716.09 5679618.74 97.50 -600716.20 5678829.45 97.50 -600716.87 5680671.15 96.25 -600716.99 5678566.17 97.50 -600716.99 5678733.18 97.50 -600717.16 5681163.86 96.25 -600717.29 5679199.38 97.50 -600718.33 5676788.74 100.00 -600718.44 5678690.83 97.50 -600718.79 5680680.83 96.25 -600718.87 5677186.43 98.75 -600719.06 5677017.30 98.75 -600719.14 5678609.51 97.50 -600719.36 5680764.00 96.25 -600719.49 5679232.93 97.50 -600719.73 5679189.69 97.50 -600720.13 5677026.71 98.75 -600720.32 5679296.68 97.50 -600720.45 5680197.02 97.50 -600720.92 5680166.81 97.50 -600720.97 5679570.75 97.50 -600721.03 5680690.43 96.25 -600721.12 5679394.99 97.50 -600721.23 5678777.95 97.50 -600721.64 5680286.37 97.50 -600721.78 5679610.61 97.50 -600722.13 5679738.65 97.50 -600722.33 5679149.38 97.50 -600722.82 5677008.60 98.75 -600723.94 5680699.87 96.25 -600724.18 5676530.38 101.25 -600724.74 5679181.06 97.50 -600724.78 5678683.10 97.50 -600725.02 5679432.15 97.50 -600725.30 5680770.18 96.25 -600725.72 5678832.51 97.50 -600726.06 5677179.49 98.75 -600726.16 5678729.20 97.50 -600726.45 5680394.75 96.25 -600726.81 5677033.66 98.75 -600726.85 5680709.30 96.25 -600726.96 5678566.82 97.50 -600727.15 5676784.04 100.00 -600727.48 5679602.47 97.50 -600728.06 5680404.14 96.25 -600728.11 5679730.74 97.50 -600728.35 5680385.56 96.25 -600728.66 5678606.45 97.50 -600728.75 5680279.91 97.50 -600728.77 5679141.73 97.50 -600729.12 5679235.57 97.50 -600729.33 5680201.58 97.50 -600729.45 5676636.77 100.00 -600729.49 5680718.81 96.25 -600729.62 5680130.20 97.50 -600729.76 5680120.47 97.50 -600729.95 5677001.63 98.75 -600730.28 5679296.00 97.50 -600730.41 5680390.47 96.00 -600730.46 5679172.88 97.50 -600730.48 5679393.12 97.50 -600730.49 5680169.20 97.50 -600730.56 5678774.36 97.50 -600730.60 5678674.98 97.50 -600730.67 5679569.17 97.50 -600731.16 5676626.93 100.00 -600731.34 5678721.15 97.50 -600731.92 5680412.60 96.25 -600732.12 5680728.33 96.25 -600732.20 5680270.85 97.50 -600732.37 5676524.65 101.25 -600732.82 5679722.00 97.50 -600733.14 5679594.31 97.50 -600733.23 5677172.53 98.75 -600733.31 5676645.66 100.00 -600733.65 5680260.97 97.50 -600733.84 5680377.98 96.25 -600733.87 5680250.98 97.50 -600734.26 5680737.93 96.25 -600734.32 5680767.44 96.25 -600734.72 5676618.06 100.00 -600734.82 5680757.62 96.25 -600734.85 5679431.89 97.50 -600735.12 5680747.76 96.25 -600735.21 5679134.09 97.50 -600735.23 5677039.00 98.75 -600735.24 5678835.58 97.50 -600735.29 5680138.40 97.50 -600735.53 5678666.33 97.50 -600735.55 5680382.61 96.00 -600735.75 5678571.00 97.50 -600735.87 5680241.30 97.50 -600735.92 5676779.27 100.00 -600736.42 5679164.86 97.50 -600736.60 5678713.02 97.50 -600737.26 5679576.07 97.50 -600737.29 5681109.34 97.50 -600737.31 5680393.12 96.00 -600737.47 5678734.53 97.50 -600737.53 5679713.25 97.50 -600737.56 5681118.40 97.50 -600738.07 5676995.95 98.75 -600738.09 5680206.38 97.50 -600738.09 5679585.84 97.50 -600738.25 5678603.63 97.50 -600738.54 5681099.43 97.50 -600738.94 5680119.09 97.50 -600738.97 5679236.66 97.50 -600739.34 5679396.55 97.50 -600739.34 5677164.63 98.75 -600739.56 5680232.02 97.50 -600739.64 5680173.06 97.50 -600739.76 5676652.60 100.00 -600739.88 5680147.28 97.50 -600739.88 5678771.13 97.50 -600740.06 5681089.54 97.50 -600740.25 5679295.43 97.50 -600740.29 5678657.61 97.50 -600740.45 5681079.56 97.50 -600740.50 5680371.11 96.25 -600740.56 5676518.91 101.25 -600741.05 5680414.48 96.25 -600741.57 5679126.40 97.50 -600741.88 5676611.09 100.00 -600742.36 5679704.57 97.50 -600742.37 5679156.83 97.50 -600743.38 5680376.55 96.00 -600743.66 5678840.95 97.50 -600743.71 5680222.93 97.50 -600744.05 5680213.64 97.50 -600744.27 5676773.79 100.00 -600744.34 5678576.08 97.50 -600744.51 5677042.60 98.75 -600744.69 5679431.92 97.50 -600745.02 5678707.62 97.50 -600745.03 5680155.84 97.50 -600745.05 5678730.89 97.50 -600745.25 5678738.39 97.50 -600745.40 5681080.33 97.50 -600745.45 5677156.73 98.75 -600745.47 5679417.85 97.25 -600745.53 5680805.28 96.25 -600745.73 5680387.92 96.00 -600745.91 5680815.07 96.25 -600746.25 5681123.17 97.50 -600746.33 5679117.61 97.50 -600746.40 5678649.69 97.50 -600746.55 5679695.58 97.50 -600746.58 5676990.75 98.75 -600746.88 5680363.97 96.25 -600747.22 5681002.35 97.50 -600747.71 5678601.98 97.50 -600747.86 5679401.46 97.50 -600748.00 5676512.26 101.25 -600748.16 5676603.33 100.00 -600748.32 5679148.80 97.50 -600748.50 5678776.12 97.50 -600748.55 5680930.11 97.50 -600748.59 5680121.69 97.50 -600748.63 5681011.47 97.50 -600748.63 5680920.12 97.50 -600748.70 5680777.32 96.25 -600748.96 5679236.64 97.50 -600749.03 5676656.07 100.00 -600749.18 5680910.15 97.50 -600749.22 5680175.90 97.50 -600749.74 5680411.00 96.25 -600750.17 5680939.89 97.50 -600750.22 5679294.88 97.50 -600750.45 5680787.11 96.25 -600750.63 5680768.54 96.25 -600750.63 5680797.08 96.25 -600750.77 5679108.67 97.50 -600751.48 5679687.07 97.50 -600751.50 5681088.25 97.50 -600751.75 5680371.12 96.00 -600752.08 5678846.35 97.50 -600752.13 5677149.34 98.75 -600752.14 5678641.51 97.50 -600752.37 5680820.98 96.25 -600752.50 5680162.42 97.50 -600752.62 5676768.30 100.00 -600753.24 5680356.84 96.25 -600753.40 5678580.32 97.50 -600753.46 5680901.29 97.50 -600753.64 5678702.60 97.50 -600753.69 5680949.07 97.50 -600753.84 5681129.67 97.50 -600753.92 5680382.24 96.00 -600754.12 5681019.44 97.50 -600754.14 5677044.90 98.75 -600754.27 5679433.65 97.50 -600754.31 5679140.81 97.50 -600754.42 5676595.54 100.00 -600754.47 5678727.81 97.50 -600754.89 5679099.57 97.50 -600754.98 5678736.83 97.50 -600755.00 5680997.68 97.50 -600755.11 5676985.59 98.75 -600755.20 5676505.33 101.25 -600755.73 5679407.36 97.50 -600755.93 5678607.68 97.50 -600756.38 5678782.23 97.50 -600756.43 5679070.06 97.50 -600756.97 5679090.00 97.50 -600757.19 5679080.01 97.50 -600757.25 5678632.93 97.50 -600757.42 5679061.09 97.50 -600757.43 5680394.58 96.25 -600757.58 5679679.23 97.50 -600757.86 5681095.95 97.50 -600758.32 5680123.95 97.50 -600758.51 5680179.47 97.50 -600758.65 5676653.36 100.00 -600758.86 5680407.52 96.25 -600758.95 5679236.61 97.50 -600759.48 5677142.57 98.75 -600759.75 5680893.52 97.50 -600759.81 5680365.24 96.00 -600759.97 5680768.48 96.25 -600760.14 5679293.83 97.50 -600760.16 5680168.84 97.50 -600760.29 5676761.90 100.00 -600760.31 5680956.56 97.50 -600760.31 5679132.82 97.50 -600760.50 5676587.62 100.00 -600760.63 5678851.52 97.50 -600760.98 5680351.21 96.25 -600761.31 5681136.23 97.50 -600761.35 5680375.71 96.00 -600761.40 5680817.86 96.25 -600761.84 5678624.06 97.50 -600761.88 5681025.65 97.50 -600761.89 5678585.47 97.50 -600761.89 5676497.90 101.25 -600762.04 5678790.47 97.50 -600762.17 5680386.21 96.25 -600762.42 5678614.37 97.50 -600762.77 5678698.53 97.50 -600763.38 5679437.23 97.50 -600763.64 5676980.44 98.75 -600763.68 5679671.39 97.50 -600763.78 5679413.01 97.50 -600763.80 5681001.98 97.50 -600763.87 5678724.68 97.50 -600764.03 5677046.09 98.75 -600764.49 5681103.44 97.50 -600764.63 5678734.58 97.50 -600765.09 5680396.87 96.25 -600765.16 5678446.35 98.75 -600765.69 5679055.47 97.50 -600765.91 5680885.65 97.50 -600766.31 5679124.83 97.50 -600766.37 5676579.54 100.00 -600766.87 5678437.01 98.75 -600766.90 5677135.88 98.75 -600766.92 5678656.71 97.50 -600767.01 5680963.98 97.50 -600767.71 5678798.70 97.50 -600767.73 5680181.75 97.50 -600767.83 5680359.32 96.00 -600767.90 5676755.43 100.00 -600767.90 5680175.16 97.50 -600768.05 5680368.31 96.00 -600768.11 5680125.98 97.50 -600768.14 5676650.34 100.00 -600768.33 5678455.44 98.75 -600768.36 5678665.76 97.50 -600768.37 5680405.37 96.25 -600768.59 5676490.48 101.25 -600768.72 5680345.59 96.25 -600768.80 5679238.21 97.50 -600769.00 5681032.48 97.50 -600769.34 5678856.44 97.50 -600769.38 5680771.74 96.25 -600769.48 5679296.61 97.50 -600769.71 5680380.05 96.25 -600770.17 5681140.52 97.50 -600770.34 5680813.47 96.25 -600770.59 5678590.25 97.50 -600770.90 5678728.24 97.25 -600771.14 5680794.96 96.00 -600771.18 5679664.99 97.50 -600771.86 5680877.62 97.50 -600771.96 5676571.26 100.00 -600771.97 5679418.45 97.50 -600771.99 5679441.99 97.50 -600771.99 5681007.56 97.50 -600772.03 5678694.89 97.50 -600772.19 5681109.47 97.50 -600772.24 5676975.40 98.75 -600772.32 5679116.84 97.50 -600773.32 5678721.68 97.50 -600773.51 5677049.27 98.75 -600773.87 5678649.62 97.50 -600774.03 5679049.99 97.50 -600774.08 5680971.05 97.50 -600774.35 5677129.23 98.75 -600774.42 5678733.69 97.50 -600774.59 5678805.92 97.50 -600774.60 5678431.71 98.75 -600774.82 5681040.54 97.50 -600774.85 5680396.31 96.25 -600775.29 5676483.06 101.25 -600775.45 5680931.32 97.50 -600775.52 5676748.97 100.00 -600775.56 5680923.60 97.50 -600775.86 5680353.40 96.00 -600775.95 5680362.28 96.00 -600776.70 5676739.87 100.00 -600776.75 5676645.28 100.00 -600776.91 5680130.17 97.50 -600776.91 5680340.67 96.25 -600777.01 5681025.81 98.00 -600777.16 5678457.56 98.75 -600777.22 5676562.77 100.00 -600777.47 5680402.45 96.25 -600777.64 5680869.46 97.50 -600777.88 5679301.72 97.50 -600777.94 5678667.75 97.50 -600778.04 5678861.36 97.50 -600778.55 5679109.03 97.50 -600778.65 5679239.92 97.50 -600778.81 5680376.52 96.25 -600779.23 5679659.17 97.50 -600779.32 5680772.06 96.25 -600779.82 5678594.07 97.50 -600779.84 5680810.46 96.25 -600779.92 5681142.72 97.50 -600780.05 5681013.37 97.50 -600780.37 5679423.56 97.50 -600780.60 5678725.87 97.25 -600780.98 5676970.61 98.75 -600781.15 5680939.48 97.50 -600781.19 5678642.82 97.50 -600781.26 5681113.68 97.50 -600781.42 5679444.24 97.50 -600781.56 5681047.75 97.50 -600781.70 5677122.47 98.75 -600781.93 5678693.50 97.50 -600782.13 5678812.41 97.50 -600782.17 5680976.85 97.50 -600782.17 5676734.21 100.00 -600782.73 5679045.06 97.50 -600782.89 5678719.11 97.50 -600782.99 5677052.43 98.75 -600783.14 5678427.77 98.75 -600783.28 5680904.77 97.50 -600783.42 5680861.30 97.50 -600783.56 5676555.05 100.00 -600783.76 5676477.79 101.25 -600784.14 5680927.74 97.50 -600784.33 5678733.91 97.50 -600784.34 5680348.15 96.00 -600784.38 5679309.23 97.50 -600784.50 5680357.32 96.00 -600784.86 5680136.22 97.50 -600784.88 5679101.31 97.50 -600785.04 5676639.79 100.00 -600785.23 5680335.94 96.25 -600785.77 5678661.73 97.50 -600786.75 5678456.71 98.75 -600786.85 5680778.31 96.25 -600786.93 5678865.88 97.50 -600787.21 5680947.25 97.50 -600787.70 5679654.32 97.50 -600787.86 5680372.84 96.25 -600787.89 5677114.63 98.75 -600788.00 5680900.08 97.50 -600788.32 5681018.88 97.50 -600788.49 5679241.66 97.50 -600788.68 5681038.45 97.50 -600788.78 5679428.67 97.50 -600788.98 5678636.55 97.50 -600789.06 5681054.28 97.50 -600789.19 5680853.14 97.50 -600789.46 5680808.43 96.25 -600789.52 5680911.26 97.50 -600789.53 5678596.46 97.50 -600789.72 5676965.82 98.75 -600789.76 5681144.48 97.50 -600790.16 5679317.37 97.50 -600790.40 5678723.97 97.25 -600790.41 5676547.79 100.00 -600790.57 5680982.27 97.50 -600790.61 5678817.71 97.50 -600791.03 5679443.77 97.50 -600791.14 5681114.59 97.50 -600791.42 5679040.14 97.50 -600791.71 5680934.25 97.50 -600791.71 5676731.28 100.00 -600791.74 5678691.69 97.50 -600792.09 5680955.98 97.50 -600792.18 5679094.48 97.50 -600792.25 5676632.88 100.00 -600792.31 5676472.61 101.25 -600792.46 5678716.54 97.50 -600792.51 5677055.46 98.75 -600792.57 5680142.58 97.50 -600792.76 5678427.99 98.75 -600792.92 5680343.08 96.00 -600793.49 5681046.98 97.50 -600793.64 5680331.37 96.25 -600793.94 5680354.10 96.00 -600793.99 5679326.55 97.50 -600794.05 5678732.00 97.50 -600794.08 5677106.79 98.75 -600794.18 5680784.52 96.25 -600794.60 5678657.32 97.50 -600794.73 5680844.82 97.50 -600795.37 5679435.87 97.50 -600796.17 5678458.68 98.75 -600796.17 5681024.97 97.50 -600796.22 5680903.31 97.50 -600796.30 5678869.37 97.50 -600796.58 5681060.78 97.50 -600796.68 5681039.33 97.50 -600796.86 5680369.03 96.25 -600796.95 5680917.02 97.50 -600796.98 5680964.70 97.50 -600797.11 5678443.53 99.00 -600797.15 5678630.90 97.50 -600797.43 5679652.30 97.50 -600797.90 5679245.01 97.50 -600798.27 5678824.11 97.50 -600798.35 5676542.44 100.00 -600798.46 5676961.03 98.75 -600798.65 5679335.12 97.50 -600799.14 5680940.94 97.50 -600799.41 5680808.98 96.25 -600799.45 5678597.55 97.50 -600799.47 5676625.97 100.00 -600799.48 5679087.66 97.50 -600799.56 5681146.44 97.50 -600799.98 5680985.51 97.50 -600800.08 5679035.14 97.50 -600800.09 5681054.41 97.50 -600800.22 5676726.03 100.00 -600800.26 5680836.49 97.50 -600800.27 5677098.95 98.75 -600800.32 5678722.82 97.25 -600800.86 5677060.93 98.75 -600800.88 5681116.16 97.50 -600801.33 5678688.87 97.50 -600801.71 5680144.34 97.50 -600801.74 5676469.46 101.25 -600801.89 5680338.71 96.00 -600801.95 5680973.37 97.50 -600802.09 5680326.88 96.25 -600802.26 5678715.85 97.50 -600802.34 5678428.80 98.75 -600802.72 5681202.03 97.50 -600803.27 5680788.55 96.25 -600803.38 5680909.41 97.50 -600803.42 5680350.99 96.00 -600803.64 5677089.57 98.75 -600803.77 5678730.05 97.50 -600803.93 5681031.19 97.50 -600804.12 5681067.25 97.50 -600804.39 5678655.91 97.50 -600804.39 5680922.78 97.50 -600804.87 5681044.91 97.50 -600804.92 5677079.73 98.75 -600805.13 5679079.44 97.50 -600805.26 5677069.80 98.75 -600805.58 5678460.25 98.75 -600805.67 5678872.86 97.50 -600805.78 5680828.16 97.50 -600805.81 5678830.68 97.50 -600805.85 5680365.22 96.25 -600805.99 5680982.22 97.50 -600806.11 5679341.76 97.50 -600806.20 5678626.64 97.50 -600806.39 5680947.81 97.50 -600807.02 5676955.92 98.75 -600807.04 5679649.87 97.50 -600807.32 5679248.36 97.50 -600807.94 5681060.49 97.50 -600808.01 5676621.06 100.00 -600808.20 5679029.38 97.50 -600808.21 5676540.82 100.00 -600808.65 5676720.69 100.00 -600808.94 5680811.69 96.25 -600808.94 5681198.20 97.50 -600809.07 5681149.48 97.50 -600809.13 5681208.88 97.50 -600809.42 5678598.31 97.50 -600810.07 5678684.24 97.50 -600810.11 5681120.01 97.50 -600810.25 5678721.66 97.25 -600810.65 5679071.11 97.50 -600810.92 5680929.55 97.50 -600811.01 5680914.87 97.50 -600811.02 5680334.73 96.00 -600811.04 5680794.71 96.25 -600811.05 5680324.19 96.25 -600811.29 5680146.42 97.50 -600811.45 5681037.69 97.50 -600811.46 5676467.14 101.25 -600811.67 5681073.72 97.50 -600811.89 5678430.05 98.75 -600812.16 5678716.07 97.50 -600812.41 5681051.38 97.50 -600812.96 5680348.10 96.00 -600813.48 5678728.10 97.50 -600813.56 5678837.00 97.50 -600814.38 5678655.85 97.50 -600814.77 5679345.99 97.50 -600814.83 5678457.59 98.75 -600814.83 5680361.36 96.25 -600814.94 5680824.66 97.50 -600814.96 5680952.94 97.50 -600815.04 5678876.35 97.50 -600815.44 5678623.12 97.50 -600815.56 5676950.78 98.75 -600815.87 5681066.49 97.50 -600815.93 5679023.04 97.50 -600815.94 5680926.76 97.25 -600816.17 5679062.78 97.50 -600816.40 5679646.54 97.50 -600816.73 5679251.71 97.50 -600816.78 5676714.88 100.00 -600816.92 5680604.19 97.50 -600817.17 5676617.07 100.00 -600817.41 5680594.33 97.50 -600817.89 5680816.04 96.25 -600817.93 5680935.71 97.50 -600818.02 5681212.69 97.50 -600818.07 5676539.20 100.00 -600818.28 5681200.66 97.50 -600818.51 5681152.79 97.50 -600818.52 5678678.91 97.50 -600818.58 5680801.21 96.25 -600818.66 5681080.75 97.50 -600818.74 5680613.83 97.50 -600818.91 5680919.97 97.50 -600819.06 5681044.05 97.50 -600819.35 5681123.81 97.50 -600819.37 5678599.34 97.50 -600819.48 5678434.98 98.75 -600819.72 5680426.83 97.50 -600819.96 5681057.85 97.50 -600820.20 5678720.79 97.25 -600820.52 5680331.70 96.00 -600820.60 5680323.56 96.25 -600820.69 5680584.88 97.50 -600820.73 5680149.67 97.50 -600821.25 5676465.12 101.25 -600821.70 5679054.46 97.50 -600821.85 5678842.59 97.50 -600821.91 5680716.55 97.50 -600821.99 5678714.93 97.50 -600822.50 5678451.87 98.75 -600822.51 5680345.20 96.00 -600822.94 5680622.90 97.50 -600823.30 5680417.67 97.50 -600823.34 5678727.11 97.50 -600823.55 5679016.62 97.50 -600823.65 5680957.90 97.50 -600823.67 5681072.65 97.50 -600823.81 5680357.50 96.25 -600823.98 5678442.87 98.75 -600824.10 5676945.64 98.75 -600824.15 5680725.82 97.50 -600824.35 5678655.83 97.50 -600824.41 5678879.84 97.50 -600824.56 5679347.96 97.50 -600824.67 5680824.70 97.50 -600824.91 5680575.96 97.50 -600824.91 5676709.07 100.00 -600825.14 5681088.29 97.50 -600825.36 5679642.28 97.50 -600825.37 5678622.89 97.50 -600826.10 5680940.33 97.50 -600826.14 5679255.06 97.50 -600826.33 5676613.08 100.00 -600826.52 5680807.17 96.25 -600826.81 5680925.08 97.50 -600826.92 5679045.94 97.50 -600827.10 5678673.78 97.50 -600827.16 5680819.70 96.25 -600827.22 5681204.34 97.50 -600827.25 5681215.39 97.50 -600827.74 5681156.57 97.50 -600827.83 5681063.92 97.50 -600827.93 5676537.59 100.00 -600827.95 5681048.49 97.50 -600828.13 5680734.99 97.50 -600828.52 5679008.33 97.50 -600828.98 5681126.53 97.50 -600829.34 5680711.88 97.50 -600829.35 5678599.81 97.50 -600829.77 5680997.62 97.50 -600829.96 5681006.95 97.50 -600830.09 5680322.37 96.25 -600830.17 5678719.98 97.25 -600830.18 5680329.67 96.00 -600830.29 5680410.68 97.50 -600830.30 5680629.50 97.50 -600830.37 5680450.62 97.50 -600830.45 5680151.50 97.50 -600830.82 5678846.85 97.50 -600831.05 5676463.16 101.25 -600831.18 5680568.17 97.50 -600831.40 5681078.90 97.50 -600831.79 5678713.45 97.50 -600831.90 5680963.16 97.50 -600831.91 5681095.53 97.50 -600832.09 5679037.39 97.50 -600832.28 5680343.19 96.00 -600833.07 5680354.48 96.25 -600833.21 5678726.17 97.50 -600833.21 5680285.43 97.50 -600833.21 5676703.52 100.00 -600833.30 5676941.87 98.75 -600833.44 5680743.46 97.50 -600833.74 5679637.16 97.50 -600833.80 5680828.45 97.50 -600834.13 5678653.75 97.50 -600834.27 5678881.28 97.50 -600834.34 5679876.78 97.50 -600834.35 5679349.87 97.50 -600834.36 5679886.78 97.50 -600834.39 5679866.80 97.50 -600834.41 5679896.77 97.50 -600834.94 5680929.77 97.50 -600835.03 5680278.00 97.50 -600835.10 5678625.19 97.50 -600835.12 5680812.21 96.25 -600835.31 5679906.69 97.50 -600835.43 5680941.53 97.50 -600835.48 5679856.86 97.50 -600835.60 5679258.28 97.50 -600835.63 5676609.66 100.00 -600835.78 5681069.88 97.50 -600836.24 5680823.76 96.25 -600836.25 5680990.03 97.50 -600836.28 5678669.82 97.50 -600836.42 5681207.26 97.50 -600836.59 5681161.22 97.50 -600836.65 5679028.59 97.50 -600836.75 5681053.12 97.50 -600836.75 5681217.15 97.50 -600837.03 5679916.53 97.50 -600837.22 5680457.81 97.50 -600837.32 5680793.23 97.50 -600837.36 5680971.48 97.50 -600837.81 5679847.22 97.50 -600837.85 5676536.45 100.00 -600838.05 5680635.81 97.50 -600838.07 5681187.78 97.50 -600838.14 5681010.24 97.50 -600838.25 5679009.58 97.50 -600838.37 5680785.13 97.50 -600838.60 5681129.25 97.50 -600838.75 5680405.60 97.50 -600838.84 5680751.87 97.50 -600838.90 5679018.85 97.50 -600838.99 5680146.32 97.50 -600839.13 5681085.14 97.50 -600839.32 5680712.38 97.50 -600839.33 5680562.39 97.50 -600839.34 5678600.04 97.50 -600839.50 5681101.94 97.50 -600839.53 5680320.79 96.25 -600839.71 5679926.12 97.50 -600839.99 5680981.00 97.50 -600840.13 5678719.17 97.25 -600840.15 5680329.67 96.00 -600840.19 5678850.35 97.50 -600840.33 5680937.03 97.50 -600840.47 5679629.85 97.50 -600840.94 5676461.69 101.25 -600841.20 5680290.42 97.50 -600841.29 5679837.86 97.50 -600841.48 5681181.26 97.50 -600841.58 5676698.06 100.00 -600841.59 5678711.98 97.50 -600842.05 5680341.18 96.00 -600842.51 5680351.98 96.25 -600842.52 5680833.33 97.50 -600842.67 5676938.48 98.75 -600843.09 5678725.54 97.50 -600843.66 5681075.94 97.50 -600843.91 5680816.80 96.25 -600844.08 5678652.94 97.50 -600844.17 5679351.70 97.50 -600844.21 5678882.42 97.50 -600844.31 5679934.90 97.50 -600844.38 5680760.19 97.50 -600844.39 5680275.13 97.50 -600844.62 5680464.24 97.50 -600844.72 5678627.88 97.50 -600845.07 5679261.49 97.50 -600845.13 5680828.26 96.25 -600845.20 5681166.28 97.50 -600845.25 5680642.74 97.50 -600845.26 5681192.70 97.50 -600845.33 5678665.63 97.50 -600845.37 5680778.56 97.50 -600845.38 5681058.05 97.50 -600845.43 5681004.18 97.50 -600845.59 5676608.90 100.00 -600845.68 5680797.95 97.50 -600845.75 5681209.81 97.50 -600846.05 5679829.13 97.50 -600846.06 5681219.55 97.50 -600846.67 5681187.65 97.75 -600846.91 5681091.33 97.50 -600846.98 5680140.36 97.50 -600847.03 5681134.44 97.50 -600847.20 5679622.55 97.50 -600847.43 5681107.92 97.50 -600847.63 5680556.87 97.50 -600847.79 5676535.40 100.00 -600848.00 5680769.21 97.50 -600848.43 5680403.79 97.50 -600848.96 5680319.43 96.25 -600849.09 5680714.20 97.50 -600849.33 5678600.33 97.50 -600849.86 5681183.07 97.50 -600849.87 5676692.49 100.00 -600849.91 5680824.52 96.25 -600850.01 5678717.71 97.25 -600850.08 5680995.38 97.50 -600850.11 5678851.57 97.50 -600850.11 5680330.06 96.00 -600850.36 5679942.82 97.50 -600850.39 5680294.24 97.50 -600850.71 5676459.58 101.25 -600850.87 5678658.94 97.50 -600851.20 5680838.30 97.50 -600851.20 5678709.59 97.50 -600851.42 5681082.15 97.50 -600851.44 5679820.71 97.50 -600851.44 5678184.68 98.75 -600851.84 5679613.77 97.50 -600851.86 5680339.62 96.00 -600852.11 5680350.14 96.25 -600852.19 5676935.55 98.75 -600852.21 5678194.60 98.75 -600852.29 5678175.00 98.75 -600852.54 5680649.58 97.50 -600853.00 5678725.34 97.50 -600853.04 5678204.50 98.75 -600853.11 5681195.18 97.50 -600853.58 5681171.75 97.50 -600853.58 5680277.36 97.50 -600853.63 5680468.43 97.50 -600853.92 5678214.41 98.75 -600853.98 5681063.03 97.50 -600854.13 5679351.43 97.50 -600854.14 5678883.57 97.50 -600854.26 5678630.88 97.50 -600854.60 5680133.91 97.50 -600854.69 5681097.52 97.50 -600854.70 5679264.05 97.50 -600854.81 5678224.31 98.75 -600854.85 5681223.59 97.50 -600855.08 5681212.35 97.50 -600855.19 5681140.22 97.50 -600855.41 5680799.89 97.50 -600855.56 5676608.13 100.00 -600855.78 5678165.69 98.75 -600855.78 5681113.29 97.50 -600855.91 5681188.33 97.50 -600856.42 5679604.96 97.50 -600856.83 5681218.51 97.80 -600856.83 5679812.30 97.50 -600856.92 5680553.17 97.50 -600856.92 5680989.74 97.50 -600857.72 5676534.34 100.00 -600857.84 5679949.28 97.50 -600858.09 5676686.80 100.00 -600858.18 5680402.17 97.50 -600858.34 5680321.31 96.25 -600858.75 5680716.77 97.50 -600858.96 5678232.97 98.75 -600859.18 5681088.36 97.50 -600859.27 5678156.38 98.75 -600859.29 5678601.22 97.50 -600859.46 5680298.34 97.50 -600859.76 5679595.67 97.50 -600859.88 5680843.26 97.50 -600859.89 5678716.19 97.25 -600860.04 5678852.76 97.50 -600860.05 5680330.86 96.00 -600860.24 5680655.96 97.50 -600860.48 5676457.47 101.25 -600860.82 5678707.20 97.50 -600861.71 5680348.34 96.25 -600861.80 5676932.97 98.75 -600861.84 5680339.62 96.00 -600861.94 5681104.27 97.50 -600862.23 5680127.46 97.50 -600862.26 5681176.66 97.50 -600862.33 5681068.42 97.50 -600862.62 5679586.20 97.50 -600862.79 5681146.68 97.50 -600862.80 5680281.08 97.50 -600862.91 5678725.15 97.50 -600862.91 5680471.51 97.50 -600863.14 5679804.55 97.50 -600863.47 5681227.96 97.50 -600863.55 5678147.54 98.75 -600863.79 5678633.91 97.50 -600864.09 5678884.58 97.50 -600864.11 5679351.01 97.50 -600864.31 5681215.16 97.50 -600864.52 5679265.90 97.50 -600864.78 5681116.86 97.50 -600864.85 5678240.98 98.75 -600865.25 5680801.43 97.50 -600865.44 5676608.65 100.00 -600866.01 5680992.80 97.50 -600866.21 5680549.48 97.50 -600866.31 5676681.12 100.00 -600866.69 5679953.92 97.50 -600866.90 5681094.63 97.50 -600866.95 5679716.96 97.50 -600867.49 5679577.54 97.50 -600867.54 5680662.73 97.50 -600867.55 5676532.61 100.00 -600867.71 5680399.58 97.50 -600868.02 5680303.38 97.50 -600868.45 5680719.22 97.50 -600868.50 5678604.48 97.50 -600868.54 5681111.70 97.50 -600868.55 5680848.23 97.50 -600868.55 5679726.23 97.50 -600869.00 5679707.20 97.50 -600869.74 5678714.51 97.25 -600869.85 5681074.85 97.50 -600869.90 5680332.32 96.00 -600869.98 5678853.75 97.50 -600870.00 5681153.60 97.50 -600870.07 5678140.04 98.75 -600870.13 5680121.35 97.50 -600870.29 5676455.58 101.25 -600870.37 5678704.55 97.50 -600870.71 5679798.10 97.50 -600871.24 5681181.05 97.50 -600871.48 5680348.46 96.25 -600871.48 5678248.31 98.75 -600871.64 5679697.57 97.50 -600871.71 5676931.89 98.75 -600871.78 5680340.27 96.00 -600871.97 5681232.56 97.50 -600872.36 5679568.89 97.50 -600872.59 5680281.99 97.50 -600872.79 5678725.66 97.50 -600872.83 5680472.10 97.50 -600872.95 5677753.63 97.50 -600873.12 5681219.17 97.50 -600873.24 5678637.17 97.50 -600873.37 5676674.07 100.00 -600873.69 5680670.61 97.50 -600873.71 5680999.17 97.50 -600873.85 5679687.82 97.50 -600873.98 5679352.32 97.50 -600874.03 5678885.58 97.50 -600874.23 5679734.41 97.50 -600874.29 5677743.94 97.50 -600874.34 5679267.75 97.50 -600874.46 5677763.24 97.50 -600874.48 5680543.86 97.50 -600874.57 5681100.94 97.50 -600874.94 5680803.89 97.50 -600875.24 5676610.61 100.00 -600875.53 5679958.56 97.50 -600876.03 5679678.07 97.50 -600876.51 5680308.45 97.50 -600876.58 5679638.80 97.50 -600876.60 5678132.54 98.75 -600876.67 5681123.66 97.50 -600876.74 5679648.70 97.50 -600876.82 5680395.83 97.50 -600876.88 5681081.87 97.50 -600876.90 5678609.87 97.50 -600877.23 5680853.19 97.50 -600877.34 5676530.59 100.00 -600877.58 5679560.48 97.50 -600877.91 5679658.62 97.50 -600878.25 5680721.05 97.50 -600878.34 5680115.65 97.50 -600878.45 5680679.25 97.50 -600878.55 5679791.91 97.50 -600878.69 5681158.38 97.50 -600878.84 5679668.48 97.50 -600878.95 5678212.72 99.00 -600879.00 5678254.81 98.75 -600879.32 5679629.22 97.50 -600879.59 5678712.81 97.25 -600879.72 5680333.90 96.00 -600879.76 5677771.67 97.50 -600879.91 5678701.88 97.50 -600879.93 5676666.63 100.00 -600879.95 5678854.61 97.50 -600879.99 5677737.40 97.50 -600880.18 5676454.12 101.25 -600880.48 5681184.82 97.50 -600880.56 5681225.13 97.50 -600880.57 5680276.80 97.50 -600880.75 5679741.99 97.50 -600880.95 5677672.41 97.50 -600881.06 5676831.52 98.75 -600881.07 5681090.45 97.50 -600881.14 5681117.59 97.50 -600881.20 5680347.62 96.25 -600881.38 5681005.55 97.50 -600881.49 5681232.78 97.50 -600881.68 5676932.03 98.75 -600881.70 5680341.29 96.00 -600881.79 5680688.67 97.50 -600881.96 5680537.31 97.50 -600882.39 5681107.07 97.50 -600882.65 5678726.64 97.50 -600882.67 5678640.49 97.50 -600882.68 5680470.93 97.50 -600882.75 5676821.70 98.75 -600882.96 5676840.98 98.75 -600883.07 5677663.10 97.50 -600883.07 5677681.76 97.50 -600883.24 5678125.17 98.75 -600883.35 5680808.69 97.50 -600883.41 5681130.92 97.50 -600883.83 5679353.93 97.50 -600883.89 5679620.34 97.50 -600884.00 5678886.40 97.50 -600884.04 5676614.68 100.00 -600884.22 5679268.86 97.50 -600884.25 5679553.12 97.50 -600884.28 5679096.71 97.50 -600884.30 5676657.65 100.00 -600884.70 5678616.12 97.50 -600884.75 5679962.43 97.50 -600885.54 5680697.93 97.50 -600885.61 5680391.32 97.50 -600885.77 5677779.58 97.50 -600885.90 5680858.17 97.50 -600886.02 5680292.84 97.25 -600886.29 5680310.30 97.50 -600886.34 5679785.66 97.50 -600886.53 5678261.31 98.75 -600886.58 5680110.01 97.50 -600887.11 5679749.68 97.50 -600887.12 5676528.56 100.00 -600887.32 5680269.52 97.50 -600887.73 5681162.65 97.50 -600887.81 5677742.38 97.50 -600888.04 5679102.84 97.50 -600888.10 5681097.48 97.50 -600888.20 5680722.02 97.50 -600888.28 5679611.36 97.50 -600888.30 5677689.85 97.50 -600888.41 5676848.80 98.75 -600888.43 5676813.81 98.75 -600888.44 5680817.02 97.50 -600888.68 5676648.66 100.00 -600888.72 5680529.95 97.50 -600889.44 5678711.10 97.25 -600889.46 5678699.21 97.50 -600889.67 5680334.53 96.00 -600889.90 5678855.57 97.50 -600889.93 5681188.08 97.50 -600890.05 5676452.58 101.25 -600890.07 5681138.37 97.50 -600890.20 5680706.74 97.50 -600890.45 5681120.85 97.50 -600890.69 5681008.84 97.50 -600890.69 5681112.54 97.50 -600890.73 5679089.09 97.50 -600890.88 5680347.84 96.25 -600890.92 5679545.76 97.50 -600891.26 5678119.28 98.75 -600891.31 5676929.85 98.75 -600891.35 5679758.56 97.50 -600891.48 5677658.10 97.50 -600891.63 5680342.31 96.00 -600891.82 5676620.96 100.00 -600892.10 5678643.81 97.50 -600892.24 5676639.33 100.00 -600892.31 5677787.10 97.50 -600892.36 5679778.01 97.50 -600892.52 5678727.38 97.50 -600892.57 5680470.05 97.50 -600892.57 5680826.11 97.50 -600892.65 5679602.38 97.50 -600892.98 5677750.89 97.50 -600893.21 5679768.36 97.50 -600893.25 5679356.85 97.50 -600893.49 5678620.83 97.50 -600893.56 5679966.94 97.50 -600893.94 5681239.72 97.50 -600893.98 5678886.88 97.50 -600894.21 5680715.23 97.50 -600894.22 5679268.78 97.50 -600894.49 5680386.96 97.50 -600894.50 5680863.27 97.50 -600894.88 5680104.43 97.50 -600894.97 5678265.99 98.75 -600895.03 5676806.35 98.75 -600895.03 5676629.92 100.00 -600895.06 5680522.22 97.50 -600895.80 5681103.76 97.50 -600896.07 5680265.12 97.50 -600896.15 5680310.53 97.50 -600896.56 5679593.19 97.50 -600896.63 5681145.92 97.50 -600896.83 5676854.00 98.75 -600896.90 5676526.53 100.00 -600897.09 5677759.89 97.50 -600897.17 5679105.93 97.50 -600897.30 5677795.71 97.50 -600897.41 5680834.86 97.50 -600897.48 5681162.52 97.50 -600897.67 5681127.76 97.50 -600897.71 5681234.09 97.50 -600897.76 5679538.58 97.50 -600897.81 5677692.92 97.50 -600898.03 5679082.27 97.50 -600898.37 5681193.37 97.50 -600898.83 5676447.80 101.25 -600898.98 5681118.02 97.50 -600899.00 5678696.54 97.50 -600899.27 5678113.39 98.75 -600899.28 5678709.37 97.25 -600899.63 5680335.16 96.00 -600899.73 5681006.31 97.50 -600899.86 5678856.43 97.50 -600900.15 5677769.37 97.50 -600900.24 5679583.90 97.50 -600900.52 5680349.44 96.25 -600900.67 5676926.50 98.75 -600901.03 5681241.61 97.75 -600901.03 5681246.19 97.50 -600901.11 5679973.49 97.50 -600901.25 5681154.77 97.50 -600901.30 5680344.69 96.00 -600901.40 5677656.88 97.50 -600901.41 5676798.69 98.75 -600901.42 5678647.39 97.50 -600902.11 5679361.45 97.50 -600902.28 5677804.34 97.50 -600902.30 5680515.42 97.50 -600902.43 5678727.34 97.50 -600902.50 5680469.83 97.50 -600902.57 5678624.98 97.50 -600903.10 5679574.34 97.50 -600903.10 5680868.36 97.50 -600903.43 5680433.72 96.25 -600903.47 5680382.86 97.50 -600903.63 5680967.44 97.50 -600903.69 5680100.01 97.50 -600903.73 5680997.15 97.50 -600903.76 5680842.50 97.50 -600903.93 5681109.46 97.50 -600903.97 5678887.27 97.50 -600904.06 5680977.21 97.50 -600904.17 5680987.18 97.50 -600904.21 5679268.69 97.50 -600904.40 5680427.81 96.25 -600904.61 5680268.91 97.50 -600904.64 5681134.92 97.50 -600904.67 5678268.19 98.75 -600904.90 5677778.02 97.50 -600905.26 5679532.07 97.50 -600905.50 5679075.68 97.50 -600905.71 5681239.38 97.50 -600905.97 5680278.62 97.50 -600906.07 5680309.65 97.50 -600906.15 5679564.92 97.50 -600906.32 5680288.54 97.50 -600906.71 5676855.34 98.75 -600906.74 5676524.80 100.00 -600907.08 5677813.07 97.50 -600907.13 5681198.20 97.50 -600907.16 5679106.36 97.50 -600907.28 5678107.51 98.75 -600907.30 5677696.02 97.50 -600907.44 5681123.23 97.50 -600907.62 5676443.06 101.25 -600907.78 5676791.02 98.75 -600908.38 5679980.32 97.50 -600908.71 5678694.64 97.50 -600909.09 5678707.48 97.25 -600909.19 5681251.75 97.50 -600909.43 5680336.94 96.00 -600909.63 5676922.14 98.75 -600909.82 5678857.28 97.50 -600910.16 5680351.03 96.25 -600910.19 5680509.27 97.50 -600910.36 5678651.87 97.50 -600910.57 5677786.21 97.50 -600910.68 5679366.55 97.50 -600910.71 5680849.69 97.50 -600910.93 5680874.57 97.50 -600910.97 5680347.12 96.00 -600911.02 5679524.11 97.50 -600911.37 5677657.30 97.50 -600911.38 5681142.30 97.50 -600911.84 5680965.75 97.50 -600911.88 5677821.80 97.50 -600911.89 5680296.07 97.50 -600911.98 5678628.35 97.50 -600911.99 5681115.16 97.50 -600912.28 5679557.03 97.50 -600912.34 5678727.31 97.50 -600912.41 5680470.23 97.50 -600912.42 5680437.60 96.25 -600912.62 5680379.09 97.50 -600912.84 5681246.28 97.50 -600913.36 5680097.50 97.50 -600913.76 5680424.92 96.25 -600913.96 5678887.67 97.50 -600914.12 5679268.13 97.50 -600914.15 5676783.36 98.75 -600914.37 5678270.17 98.75 -600914.39 5679071.11 97.50 -600914.59 5681217.65 97.50 -600915.08 5679987.73 97.50 -600915.88 5681203.02 97.50 -600915.95 5680308.45 97.50 -600916.03 5679515.53 97.50 -600916.42 5681127.36 97.50 -600916.43 5678103.69 98.75 -600916.58 5676523.08 100.00 -600916.61 5676856.47 98.75 -600916.78 5677699.18 97.50 -600916.79 5677809.01 97.25 -600917.14 5679106.33 97.50 -600917.20 5676440.20 101.25 -600917.78 5680856.76 97.50 -600917.98 5677829.57 97.50 -600918.41 5679549.15 97.50 -600918.51 5681224.15 97.50 -600918.52 5678693.23 97.50 -600918.53 5681122.64 97.50 -600918.67 5676917.98 98.75 -600918.82 5680880.64 97.50 -600918.90 5678705.59 97.25 -600919.05 5679371.98 97.50 -600919.06 5680339.50 96.00 -600919.34 5678656.27 97.50 -600919.46 5680505.56 97.50 -600919.75 5680352.90 96.25 -600919.76 5681147.73 97.50 -600919.76 5676775.15 98.75 -600919.78 5678858.14 97.50 -600919.97 5680784.07 97.50 -600920.11 5677730.89 97.50 -600920.41 5677787.79 97.50 -600920.69 5680775.70 97.50 -600920.75 5680349.08 96.00 -600921.06 5680969.60 97.50 -600921.34 5677657.88 97.50 -600921.57 5678723.76 97.50 -600921.57 5678630.62 97.50 -600921.59 5680297.60 97.50 -600921.71 5677739.56 97.50 -600921.74 5680440.41 96.25 -600921.84 5679507.53 97.50 -600922.30 5680471.09 97.50 -600922.32 5680377.38 97.50 -600922.42 5679994.46 97.50 -600922.90 5680421.41 96.25 -600923.03 5680094.99 97.50 -600923.20 5681216.05 97.50 -600923.61 5679067.57 97.50 -600923.61 5679265.01 97.50 -600923.76 5679540.72 97.50 -600923.77 5678889.63 97.50 -600924.26 5678269.12 98.75 -600924.31 5677725.40 97.50 -600924.64 5681207.84 97.50 -600924.86 5677836.77 97.50 -600924.98 5677704.86 97.50 -600925.00 5676766.66 98.75 -600925.32 5681221.30 97.25 -600925.32 5680791.90 97.50 -600925.53 5677747.70 97.50 -600925.69 5678100.07 98.75 -600925.82 5680307.16 97.50 -600926.18 5680430.11 97.50 -600926.40 5676521.21 100.00 -600926.49 5680861.66 97.50 -600926.55 5676857.17 98.75 -600926.59 5676436.80 101.25 -600926.91 5681228.07 97.50 -600926.94 5679378.08 97.50 -600927.06 5679106.49 97.50 -600927.85 5676757.18 98.75 -600928.00 5680884.59 97.50 -600928.16 5679162.25 97.50 -600928.31 5681152.89 97.50 -600928.35 5679500.03 97.50 -600928.37 5676915.67 98.75 -600928.37 5677792.01 97.50 -600928.37 5678692.50 97.50 -600928.40 5678660.51 97.50 -600928.45 5677741.12 97.75 -600928.47 5680342.75 96.00 -600928.79 5679532.09 97.50 -600928.87 5678705.91 97.25 -600928.98 5680502.62 97.50 -600929.21 5680777.36 97.50 -600929.34 5680354.77 96.25 -600929.76 5678858.77 97.50 -600929.99 5679171.83 97.50 -600930.24 5676747.50 98.75 -600930.28 5680445.12 96.25 -600930.34 5680000.54 97.50 -600930.46 5677755.05 97.50 -600930.52 5680972.76 97.50 -600930.69 5680423.06 97.50 -600930.72 5680349.18 96.00 -600930.74 5676737.57 98.75 -600930.99 5676727.61 98.75 -600930.99 5680416.04 96.25 -600931.05 5677730.94 97.50 -600931.08 5677659.86 97.50 -600931.18 5678722.36 97.50 -600931.47 5680296.40 97.50 -600931.51 5678631.40 97.50 -600931.69 5680474.27 97.50 -600931.80 5680798.99 97.50 -600931.93 5681219.15 97.50 -600932.10 5680375.95 97.50 -600932.44 5677711.51 97.50 -600932.71 5680092.51 97.50 -600933.10 5677800.78 97.50 -600933.10 5679261.88 97.50 -600933.30 5680336.94 96.25 -600933.30 5680336.94 97.50 -600933.33 5679523.19 97.50 -600933.40 5681212.67 97.50 -600933.48 5679066.01 97.50 -600933.57 5678891.60 97.50 -600934.01 5681175.60 97.50 -600934.15 5678268.06 98.75 -600934.59 5677838.65 97.50 -600934.67 5679384.40 97.50 -600934.71 5679154.69 97.50 -600934.90 5679180.45 97.50 -600934.90 5676718.64 98.75 -600934.95 5678096.46 98.75 -600934.97 5680433.12 97.50 -600935.01 5680784.86 97.50 -600935.03 5680329.24 97.50 -600935.30 5681232.03 97.50 -600935.43 5680866.13 97.50 -600935.48 5677738.40 97.50 -600935.69 5680305.88 97.50 -600935.75 5679493.40 97.50 -600935.75 5676432.81 101.25 -600936.06 5679110.84 97.50 -600936.09 5680796.05 97.25 -600936.17 5676519.17 100.00 -600936.47 5676856.91 98.75 -600936.97 5681184.97 97.50 -600937.37 5681157.12 97.50 -600937.42 5680887.70 97.50 -600937.61 5677719.88 97.50 -600937.82 5679514.26 97.50 -600937.83 5677809.54 97.50 -600937.84 5678662.62 97.50 -600937.86 5676912.70 98.75 -600937.87 5680345.36 96.25 -600938.01 5677747.03 97.50 -600938.02 5680451.12 96.25 -600938.08 5677755.92 97.50 -600938.23 5678693.07 97.50 -600938.52 5680805.86 97.50 -600938.64 5680502.64 97.50 -600938.75 5680005.91 97.50 -600938.82 5680320.70 97.50 -600938.83 5680357.01 96.25 -600938.85 5678706.45 97.25 -600939.08 5681170.83 97.50 -600939.27 5679145.91 97.50 -600939.30 5680419.45 97.50 -600939.53 5679406.66 97.50 -600939.75 5678858.79 97.50 -600940.04 5681223.64 97.50 -600940.25 5680975.03 97.50 -600940.33 5680413.08 96.25 -600940.72 5677662.50 97.50 -600941.07 5680477.56 97.50 -600941.07 5680792.27 97.50 -600941.09 5678722.59 97.50 -600941.37 5676711.19 98.75 -600941.39 5680297.09 97.50 -600941.41 5678632.78 97.50 -600941.92 5680376.15 97.50 -600941.97 5677728.87 97.50 -600942.22 5680335.11 97.50 -600942.35 5681217.11 97.50 -600942.41 5680090.10 97.50 -600942.50 5681193.30 97.50 -600942.51 5680739.94 97.50 -600942.55 5680340.49 97.50 -600942.56 5677818.31 97.50 -600942.66 5679416.09 97.50 -600942.69 5677834.15 97.50 -600942.75 5679186.62 97.50 -600942.90 5679117.11 97.50 -600942.92 5679136.64 97.50 -600943.01 5681025.95 96.25 -600943.02 5679260.77 97.50 -600943.04 5679486.65 97.50 -600943.30 5679067.36 97.50 -600943.37 5678264.83 98.75 -600943.37 5678893.56 97.50 -600944.05 5679507.06 97.50 -600944.20 5678092.80 98.75 -600944.27 5679126.74 97.50 -600944.29 5680435.40 97.50 -600944.32 5681233.60 97.50 -600944.74 5680869.75 97.50 -600944.88 5676428.73 101.25 -600944.96 5679661.96 97.50 -600945.02 5680812.91 97.50 -600945.62 5680306.66 97.50 -600945.63 5679425.57 97.50 -600945.72 5680351.15 96.25 -600945.91 5681018.79 96.25 -600945.95 5676517.12 100.00 -600946.28 5680456.01 96.25 -600946.36 5676855.70 98.75 -600946.68 5680733.95 97.50 -600946.94 5677737.53 97.50 -600947.03 5680748.19 97.50 -600947.18 5681158.89 97.50 -600947.23 5676909.27 98.75 -600947.26 5677827.09 97.50 -600947.32 5680889.08 97.50 -600947.35 5679652.57 97.50 -600947.49 5680799.42 97.50 -600947.59 5677669.08 97.50 -600947.79 5678661.83 97.50 -600947.82 5678695.59 97.50 -600948.05 5680506.02 97.50 -600948.12 5680360.03 96.25 -600948.20 5681228.05 97.50 -600948.40 5680320.51 97.50 -600948.50 5680008.09 97.50 -600948.59 5679435.05 97.50 -600948.63 5680417.21 97.50 -600948.64 5676704.37 98.75 -600948.69 5681173.45 97.50 -600949.32 5679669.42 97.50 -600949.70 5678859.67 97.50 -600949.73 5681032.76 96.25 -600949.91 5679479.52 97.50 -600949.99 5680411.62 96.25 -600950.01 5678718.36 97.50 -600950.05 5680976.98 97.50 -600950.40 5681199.41 97.50 -600950.44 5680480.85 97.50 -600950.63 5677678.33 97.50 -600951.24 5680298.18 97.50 -600951.27 5678633.96 97.50 -600951.36 5681221.42 97.50 -600951.51 5680993.87 96.25 -600951.66 5680377.75 97.50 -600951.71 5680208.13 97.50 -600951.74 5677688.25 97.50 -600951.75 5680986.70 96.25 -600951.82 5680343.99 97.50 -600951.98 5680336.24 97.50 -600952.00 5679190.33 97.50 -600952.06 5679444.33 97.50 -600952.10 5680087.67 97.50 -600952.10 5677746.08 97.50 -600952.16 5678260.19 98.75 -600952.22 5679644.01 97.50 -600952.29 5680217.58 97.50 -600952.97 5679259.77 97.50 -600953.04 5680755.45 97.50 -600953.06 5679069.46 97.50 -600953.18 5678895.52 97.50 -600953.19 5680817.50 97.50 -600953.32 5681142.25 96.25 -600953.42 5678089.08 98.75 -600953.65 5679508.58 97.50 -600953.86 5676424.36 101.25 -600953.87 5680739.05 97.50 -600953.90 5680435.57 97.50 -600954.14 5680873.14 97.50 -600954.51 5680805.97 97.50 -600954.77 5680354.83 96.25 -600955.15 5681021.37 96.25 -600955.35 5678701.79 97.50 -600955.36 5677696.50 97.50 -600955.39 5680305.84 97.50 -600955.73 5679471.47 97.50 -600955.73 5676515.07 100.00 -600955.83 5681135.61 96.25 -600955.86 5681163.78 97.50 -600955.91 5676697.55 98.75 -600956.02 5678656.14 97.50 -600956.04 5680456.59 96.25 -600956.06 5676853.47 98.75 -600956.12 5679389.17 97.50 -600956.21 5678711.43 97.50 -600956.23 5680495.58 96.25 -600956.46 5679453.23 97.50 -600956.60 5676905.90 98.75 -600956.62 5681039.96 96.25 -600957.05 5680226.29 97.50 -600957.05 5681178.91 97.50 -600957.16 5680890.84 97.50 -600957.26 5677754.64 97.50 -600957.27 5680509.81 97.50 -600957.28 5680363.42 96.25 -600957.42 5679635.61 97.50 -600957.85 5681206.06 97.50 -600957.92 5679517.61 97.50 -600957.95 5679666.33 97.50 -600958.17 5680416.10 97.50 -600958.25 5680006.63 97.50 -600958.30 5680320.37 97.50 -600958.82 5680762.90 97.50 -600958.88 5679462.72 97.50 -600959.24 5680813.94 97.50 -600959.36 5680999.05 96.25 -600959.39 5680293.67 97.50 -600959.61 5678860.94 97.50 -600959.63 5680979.81 97.50 -600959.68 5680746.47 97.50 -600959.75 5678628.66 97.50 -600959.76 5680410.98 96.25 -600959.80 5678254.12 98.75 -600959.91 5681226.60 97.50 -600959.95 5680483.70 97.50 -600960.27 5681148.83 96.25 -600960.34 5680503.22 96.25 -600960.44 5680204.38 97.50 -600960.46 5680987.03 96.25 -600960.58 5677764.05 97.50 -600960.60 5677675.47 97.50 -600960.62 5679194.92 97.50 -600960.82 5680082.80 97.50 -600961.14 5680347.36 97.50 -600961.24 5680235.27 97.50 -600961.31 5680379.89 97.50 -600961.32 5680264.46 97.50 -600961.59 5677684.55 97.50 -600961.81 5680335.78 97.50 -600962.02 5680284.21 97.50 -600962.20 5681028.43 96.25 -600962.22 5677773.90 97.50 -600962.47 5676419.28 101.25 -600962.47 5680274.31 97.50 -600962.64 5678085.36 98.75 -600962.67 5679072.20 97.50 -600962.74 5679258.15 97.50 -600963.08 5678896.77 97.50 -600963.10 5680254.66 97.50 -600963.27 5680433.60 97.50 -600963.27 5680219.99 97.50 -600963.37 5679627.73 97.50 -600963.47 5681047.21 96.25 -600963.66 5680876.20 97.50 -600963.67 5680424.64 97.75 -600963.69 5676691.68 98.75 -600963.81 5680358.53 96.25 -600963.86 5677783.76 97.50 -600963.89 5680244.76 97.50 -600964.26 5678650.49 97.50 -600964.28 5681169.13 97.50 -600964.33 5679524.41 97.50 -600964.56 5680770.37 97.50 -600964.66 5680302.39 97.50 -600964.68 5681138.81 96.25 -600964.70 5677699.13 97.50 -600964.73 5680491.90 96.25 -600964.75 5681185.29 97.50 -600964.77 5679659.19 97.50 -600964.96 5680762.21 97.75 -600965.09 5681212.93 97.50 -600965.19 5679385.95 97.50 -600965.27 5680754.04 97.50 -600965.46 5681039.25 96.00 -600965.46 5680459.14 96.25 -600965.50 5677681.71 97.75 -600965.51 5676513.02 100.00 -600965.64 5677671.93 97.50 -600965.72 5676851.01 98.75 -600966.02 5680514.65 97.50 -600966.22 5678246.52 98.75 -600966.28 5677793.43 97.50 -600966.30 5680367.17 96.25 -600966.35 5677691.87 97.50 -600966.55 5676905.34 98.75 -600966.92 5680892.99 97.50 -600966.94 5680002.41 97.50 -600967.22 5680213.42 97.50 -600967.43 5679202.23 97.50 -600967.52 5680316.87 97.50 -600967.58 5681003.62 96.25 -600967.65 5678622.58 97.50 -600967.72 5680415.14 97.50 -600967.85 5681154.73 96.25 -600968.13 5679515.62 97.50 -600968.31 5680228.46 97.50 -600968.46 5681231.77 97.50 -600968.61 5680508.67 96.25 -600969.04 5680990.89 96.25 -600969.14 5677803.00 97.50 -600969.28 5680982.39 97.50 -600969.29 5680486.98 97.50 -600969.38 5678863.03 97.50 -600969.48 5679619.96 97.50 -600969.52 5680411.37 96.25 -600969.55 5680077.92 97.50 -600969.97 5680762.21 97.50 -600969.97 5679506.01 97.50 -600970.06 5680778.01 97.50 -600970.36 5680205.31 97.50 -600970.46 5680350.73 97.50 -600970.54 5681033.88 96.25 -600970.94 5677678.86 97.50 -600971.02 5680381.72 97.50 -600971.07 5676414.19 101.25 -600971.30 5680295.81 97.50 -600971.35 5680333.05 97.50 -600971.60 5679652.05 97.50 -600971.70 5680960.93 97.50 -600971.76 5677687.82 97.50 -600971.90 5679254.15 97.50 -600971.98 5678081.98 98.75 -600972.00 5677812.57 97.50 -600972.10 5681175.36 97.50 -600972.10 5679378.78 97.50 -600972.10 5681052.17 96.25 -600972.51 5678644.84 97.50 -600972.52 5681144.17 96.25 -600972.52 5679072.94 97.50 -600972.55 5680432.30 97.50 -600972.60 5681219.45 97.50 -600972.63 5678238.93 98.75 -600972.69 5680237.22 97.50 -600972.74 5681191.28 97.50 -600972.82 5680362.32 96.25 -600973.02 5681152.74 96.00 -600973.05 5678897.46 97.50 -600973.19 5680879.20 97.50 -600973.27 5679210.24 97.50 -600973.29 5680256.91 97.50 -600973.36 5676689.26 98.75 -600973.49 5679632.45 97.25 -600973.58 5680496.17 96.25 -600973.66 5680969.39 97.50 -600974.05 5680463.77 96.25 -600974.12 5680246.99 97.50 -600974.23 5680266.78 97.50 -600974.33 5679995.68 97.50 -600974.66 5680309.98 97.50 -600974.67 5677699.80 97.50 -600974.74 5680519.54 97.50 -600974.74 5680286.47 97.50 -600974.82 5681161.33 96.25 -600974.91 5680786.09 97.50 -600975.02 5677822.10 97.50 -600975.20 5678616.03 97.50 -600975.29 5676510.97 100.00 -600975.41 5680999.43 96.00 -600975.51 5680276.65 97.50 -600975.58 5679612.20 97.50 -600975.61 5680370.11 96.25 -600975.62 5676849.80 98.75 -600975.80 5680769.60 97.50 -600975.81 5681008.19 96.25 -600976.50 5676904.79 98.75 -600976.83 5680071.17 97.50 -600976.91 5680893.39 97.50 -600977.01 5680214.23 97.50 -600977.14 5680513.69 96.25 -600977.30 5680415.78 96.25 -600977.30 5680415.78 97.50 -600977.57 5681235.86 97.50 -600977.83 5680994.26 96.25 -600977.90 5680482.28 96.25 -600977.90 5680482.28 97.50 -600977.95 5679219.07 97.50 -600978.05 5679247.05 97.50 -600978.10 5677831.60 97.50 -600978.11 5680987.08 97.50 -600978.13 5680491.47 97.50 -600978.26 5679371.03 97.50 -600978.34 5681040.01 96.25 -600978.52 5678230.96 98.75 -600978.70 5680508.76 96.00 -600978.72 5679502.11 97.50 -600979.04 5679645.55 97.50 -600979.10 5678865.36 97.50 -600979.28 5681226.88 97.50 -600979.41 5681150.85 96.25 -600979.78 5680354.09 97.50 -600979.92 5681181.59 97.50 -600980.03 5680207.55 97.50 -600980.58 5676411.40 101.25 -600980.73 5680329.85 97.50 -600980.84 5680382.81 97.50 -600980.90 5680470.72 96.25 -600981.02 5679237.57 97.50 -600981.04 5681196.85 97.50 -600981.04 5680367.57 96.25 -600981.17 5677841.10 97.50 -600981.39 5681055.82 96.25 -600981.49 5680502.13 96.25 -600981.49 5678079.09 98.75 -600981.51 5680961.21 97.50 -600981.60 5680434.64 97.50 -600981.61 5680975.32 97.50 -600981.65 5680776.97 97.50 -600981.67 5678641.02 97.50 -600981.85 5681081.58 97.50 -600981.89 5679604.60 97.50 -600981.90 5680970.34 96.25 -600981.97 5679989.25 97.50 -600982.27 5681167.38 96.25 -600982.32 5681071.92 97.50 -600982.51 5679072.57 97.50 -600982.64 5679227.89 97.50 -600982.83 5680304.81 97.50 -600982.84 5678609.58 97.50 -600982.99 5678897.23 97.50 -600983.04 5676686.85 98.75 -600983.07 5680790.42 97.50 -600983.18 5680879.59 97.50 -600983.42 5680524.50 97.50 -600983.57 5677354.59 97.50 -600983.68 5678222.46 98.75 -600983.82 5680064.02 97.50 -600983.88 5681013.03 96.25 -600983.89 5677344.63 97.50 -600984.59 5677701.00 97.50 -600985.06 5676508.92 100.00 -600985.21 5677334.79 97.50 -600985.51 5676848.60 98.75 -600985.61 5681090.85 97.50 -600985.67 5680518.71 96.25 -600985.72 5681046.72 96.25 -600985.83 5680488.27 97.50 -600985.89 5681032.88 97.50 -600985.98 5681234.18 97.50 -600985.99 5680497.54 97.50 -600986.02 5680998.68 96.25 -600986.03 5679638.71 97.50 -600986.28 5680992.84 97.50 -600986.30 5676903.01 98.75 -600986.34 5681157.50 96.25 -600986.47 5677363.99 97.50 -600986.64 5680216.75 97.50 -600986.76 5677849.36 97.50 -600986.80 5681239.69 97.50 -600986.84 5680784.81 97.50 -600986.90 5680893.75 97.50 -600987.22 5677325.03 97.50 -600987.32 5680483.11 96.25 -600987.48 5681027.19 97.50 -600987.53 5677735.03 97.00 -600987.62 5679372.08 97.50 -600987.75 5677744.66 97.00 -600987.95 5681187.37 97.50 -600988.62 5677754.23 97.00 -600988.71 5679501.88 97.50 -600988.81 5678867.76 97.50 -600988.84 5678213.96 98.75 -600988.85 5679597.83 97.50 -600988.87 5680974.83 96.25 -600989.08 5677725.51 97.00 -600989.28 5681061.89 96.25 -600989.41 5680356.33 97.50 -600989.52 5680210.53 97.50 -600989.71 5680507.63 96.25 -600989.74 5680966.96 96.25 -600989.91 5679983.19 97.50 -600990.11 5680438.64 97.50 -600990.17 5681200.90 97.50 -600990.22 5680328.03 97.50 -600990.31 5680473.06 96.25 -600990.35 5676409.27 101.25 -600990.44 5680980.00 97.50 -600990.48 5681172.24 96.25 -600990.49 5681099.41 97.50 -600990.69 5680383.61 97.50 -600990.80 5680056.87 97.50 -600990.81 5677315.74 97.50 -600990.84 5678603.59 97.50 -600990.90 5679630.12 97.50 -600991.00 5681071.15 97.50 -600991.00 5678076.20 98.75 -600991.02 5681041.46 97.50 -600991.11 5677763.55 97.00 -600991.12 5680963.73 97.50 -600991.15 5678637.83 97.50 -600991.58 5677372.52 97.50 -600991.81 5680529.92 97.50 -600991.91 5679069.25 97.50 -600992.02 5681165.04 96.25 -600992.33 5680302.02 97.50 -600992.47 5677857.56 97.50 -600992.56 5681016.59 96.25 -600992.66 5676684.27 98.75 -600992.87 5678895.68 97.50 -600993.16 5681053.30 96.25 -600993.16 5680879.27 97.50 -600993.43 5681004.48 96.25 -600993.75 5680494.25 97.50 -600993.82 5677306.28 97.50 -600994.00 5678205.46 98.75 -600994.10 5680999.06 97.50 -600994.17 5680523.78 96.25 -600994.27 5680503.02 97.50 -600994.54 5677701.60 97.50 -600994.86 5679378.89 97.50 -600994.94 5676507.50 100.00 -600995.09 5681234.40 97.50 -600995.45 5676848.08 98.75 -600995.78 5679621.52 97.50 -600995.91 5677296.54 97.50 -600996.08 5681243.16 97.50 -600996.12 5680487.34 96.25 -600996.21 5676901.94 98.75 -600996.31 5677771.55 97.00 -600996.45 5680218.45 97.50 -600996.57 5679975.94 97.50 -600996.77 5681049.57 97.50 -600996.89 5680894.00 97.50 -600996.92 5680974.74 96.00 -600996.92 5680979.52 96.25 -600997.07 5681061.56 96.25 -600997.20 5677720.29 97.00 -600997.29 5681028.83 97.50 -600997.41 5681106.50 97.50 -600997.49 5677286.71 97.50 -600997.73 5677380.12 97.50 -600997.73 5679595.88 97.50 -600997.74 5681189.42 97.50 -600997.78 5680049.73 97.50 -600998.06 5680512.95 96.25 -600998.21 5680970.82 96.25 -600998.38 5677276.78 97.50 -600998.46 5678870.37 97.50 -600998.70 5679501.64 97.50 -600998.71 5680442.41 97.50 -600998.84 5678597.59 97.50 -600999.06 5677864.95 97.50 -600999.08 5680213.13 97.50 -600999.14 5680358.24 97.50 -600999.27 5680984.68 97.50 -600999.58 5680476.19 96.25 -600999.58 5681204.21 97.50 -601000.10 5680328.87 97.50 -601000.12 5678197.62 98.75 -601000.18 5681075.10 97.50 -601000.21 5680967.88 97.50 -601000.28 5676408.73 101.25 -601000.28 5680535.22 97.50 -601000.53 5680383.50 97.50 -601000.54 5679612.87 97.50 -601000.66 5678074.06 98.75 -601000.71 5678634.93 97.50 -601000.96 5681020.72 96.25 -601001.00 5677267.20 97.50 -601001.04 5681010.01 96.25 -601001.30 5679065.82 97.50 -601001.93 5681227.22 97.50 -601001.97 5681005.22 97.50 -601002.04 5679967.57 97.50 -601002.08 5680499.65 97.50 -601002.18 5680300.79 97.50 -601002.19 5676681.34 98.75 -601002.59 5680508.44 97.50 -601002.75 5678894.17 97.50 -601002.85 5680528.54 96.25 -601002.87 5679603.78 97.50 -601003.14 5680878.66 97.50 -601003.27 5679378.15 97.50 -601003.29 5680316.13 97.00 -601004.51 5681055.90 97.50 -601004.53 5677701.60 97.50 -601004.57 5680492.29 96.25 -601004.77 5680042.59 97.50 -601004.88 5676506.45 100.00 -601005.29 5677771.11 97.00 -601005.32 5680983.54 96.25 -601005.42 5676847.90 98.75 -601005.53 5677258.39 97.50 -601005.77 5677715.98 97.00 -601005.91 5681244.95 97.50 -601006.12 5676900.88 98.75 -601006.22 5680220.33 97.50 -601006.23 5677385.34 97.50 -601006.23 5678189.78 98.75 -601006.33 5680518.39 96.25 -601006.33 5681033.08 97.50 -601006.46 5680975.14 96.25 -601006.70 5681110.06 97.50 -601006.70 5677871.38 97.50 -601006.84 5678591.59 97.50 -601006.88 5680894.23 97.50 -601007.25 5679959.06 97.50 -601007.52 5681191.46 97.50 -601007.71 5680444.91 97.50 -601007.72 5679334.33 97.50 -601008.14 5678872.84 97.50 -601008.32 5680480.60 96.25 -601008.46 5680988.53 97.50 -601008.56 5679500.41 97.50 -601008.59 5681219.78 97.50 -601008.74 5680360.64 97.50 -601008.87 5681015.23 96.25 -601008.96 5680214.41 97.50 -601009.06 5680540.00 97.50 -601009.33 5680971.99 97.50 -601009.34 5681079.11 97.50 -601009.49 5681023.87 96.25 -601009.57 5681204.61 97.50 -601010.01 5680329.39 97.50 -601010.11 5681011.03 97.50 -601010.27 5676408.85 101.25 -601010.36 5680382.44 97.50 -601010.47 5678632.80 97.50 -601010.48 5680514.47 97.50 -601010.49 5680504.94 97.50 -601010.51 5680534.68 96.25 -601010.57 5678073.27 98.75 -601010.68 5679062.39 97.50 -601011.19 5677250.24 97.50 -601011.28 5679372.40 97.50 -601011.63 5679950.08 97.50 -601011.76 5676678.56 98.75 -601011.99 5677764.28 97.00 -601012.03 5680299.99 97.50 -601012.04 5680035.76 97.50 -601012.05 5679339.24 97.50 -601012.25 5681062.22 97.50 -601012.35 5678181.94 98.75 -601012.45 5680981.06 96.25 -601012.58 5679325.99 97.50 -601012.64 5678892.68 97.50 -601013.13 5680878.31 97.50 -601013.28 5680496.72 96.25 -601014.02 5679418.45 97.50 -601014.35 5677877.82 97.50 -601014.36 5679428.39 97.50 -601014.38 5677703.21 97.50 -601014.39 5680524.13 96.25 -601014.73 5677849.88 97.25 -601014.78 5677390.43 97.50 -601014.81 5676505.40 100.00 -601014.84 5678585.60 97.50 -601015.17 5677714.73 97.00 -601015.38 5681037.33 97.50 -601015.39 5676847.73 98.75 -601015.80 5680223.02 97.50 -601015.81 5681243.73 97.50 -601015.96 5681020.87 96.25 -601016.00 5679941.09 97.50 -601016.04 5676899.88 98.75 -601016.40 5679438.17 97.50 -601016.61 5681111.36 97.50 -601016.75 5680892.96 97.50 -601016.83 5678173.16 98.75 -601016.86 5679364.27 97.50 -601016.89 5680444.26 97.50 -601016.91 5679317.37 97.50 -601016.99 5680546.03 97.50 -601017.04 5680485.07 96.25 -601017.09 5679496.77 97.50 -601017.39 5681193.09 97.50 -601017.43 5679394.90 97.50 -601017.43 5677756.31 97.00 -601017.81 5680541.37 96.25 -601017.95 5680991.67 97.50 -601017.97 5677242.94 97.50 -601018.04 5678874.28 97.50 -601018.12 5681217.43 97.50 -601018.20 5680363.57 97.50 -601018.32 5679332.22 97.50 -601018.34 5680520.54 97.50 -601018.42 5681083.30 97.50 -601018.44 5680976.09 97.50 -601018.45 5679404.79 97.50 -601018.62 5680510.61 97.50 -601018.78 5681015.95 97.50 -601018.87 5680215.09 97.50 -601019.16 5679447.77 97.50 -601019.55 5681205.14 97.50 -601019.88 5680330.42 97.50 -601019.92 5677854.98 97.25 -601019.94 5679487.21 97.50 -601019.97 5676410.80 101.25 -601020.07 5679058.96 97.50 -601020.07 5680029.82 97.50 -601020.24 5678630.66 97.50 -601020.25 5680382.53 97.50 -601020.47 5679932.16 97.50 -601020.48 5678072.48 98.75 -601020.55 5681067.78 97.50 -601020.57 5679416.10 97.50 -601020.59 5678163.96 98.75 -601021.13 5679308.69 97.50 -601021.23 5680531.24 96.25 -601021.27 5679477.30 97.50 -601021.43 5676676.15 98.75 -601021.78 5677747.70 97.00 -601021.80 5679467.33 97.50 -601021.80 5680437.18 97.50 -601021.91 5679457.38 97.50 -601021.91 5680300.92 97.50 -601021.93 5679355.71 97.50 -601022.27 5677883.83 97.50 -601022.50 5677720.34 97.00 -601022.51 5680499.90 96.25 -601022.58 5678892.27 97.50 -601022.88 5678579.65 97.50 -601023.08 5680878.82 97.50 -601023.11 5680946.08 97.50 -601023.40 5679386.94 97.50 -601023.50 5679324.08 97.50 -601023.60 5678154.59 98.75 -601023.71 5681042.82 97.50 -601023.87 5678144.66 98.75 -601023.91 5677394.43 97.50 -601024.13 5677705.29 97.50 -601024.50 5680552.61 97.50 -601024.55 5680955.48 97.50 -601024.79 5676504.96 100.00 -601024.92 5677235.80 97.50 -601024.94 5681224.61 97.50 -601025.01 5677767.20 97.50 -601025.10 5677860.08 97.25 -601025.24 5680547.91 96.25 -601025.33 5676848.25 98.75 -601025.41 5677738.76 97.00 -601025.42 5681241.16 97.50 -601025.60 5677729.27 97.00 -601025.69 5680223.08 97.50 -601025.74 5679300.22 97.50 -601025.74 5681114.93 97.50 -601025.85 5678135.35 98.75 -601025.86 5680527.01 97.50 -601025.96 5676898.89 98.75 -601026.02 5679923.85 97.50 -601026.08 5680488.75 96.25 -601026.24 5680890.40 97.50 -601026.24 5680516.98 97.50 -601026.46 5679424.15 97.50 -601026.68 5679409.57 97.50 -601026.93 5677757.48 97.50 -601027.04 5681191.80 97.50 -601027.24 5680367.58 97.50 -601027.37 5680937.75 97.50 -601027.50 5681087.49 97.50 -601027.62 5680980.05 97.50 -601027.64 5680994.15 97.50 -601027.72 5678876.36 97.50 -601027.77 5681020.30 97.50 -601027.83 5680538.62 96.25 -601028.07 5678077.67 98.75 -601028.10 5680023.87 97.50 -601028.16 5679347.99 97.50 -601028.82 5680215.09 97.50 -601028.97 5681073.17 97.50 -601029.09 5679054.72 97.50 -601029.26 5679316.36 97.50 -601029.46 5676413.93 101.25 -601029.48 5681233.38 97.50 -601029.53 5681205.67 97.50 -601029.57 5680330.47 97.50 -601029.86 5678627.94 97.50 -601030.09 5677748.03 97.50 -601030.13 5680382.68 97.50 -601030.28 5677865.17 97.25 -601030.35 5679291.74 97.50 -601030.42 5679543.01 97.50 -601030.56 5677773.22 97.50 -601030.84 5680560.34 97.50 -601031.02 5680883.27 97.50 -601031.10 5677888.50 97.50 -601031.27 5679552.92 97.50 -601031.32 5678574.37 97.50 -601031.38 5676676.78 98.75 -601031.44 5677835.10 97.50 -601031.51 5680303.38 97.50 -601031.56 5679915.54 97.50 -601031.60 5679533.11 97.50 -601031.62 5680962.55 97.50 -601031.78 5679381.82 97.50 -601031.82 5680555.29 96.25 -601031.87 5681048.60 97.50 -601031.88 5677710.55 97.50 -601032.08 5678127.60 98.75 -601032.14 5680501.73 96.25 -601032.27 5677229.07 97.50 -601032.43 5679298.87 97.25 -601032.57 5678892.71 97.50 -601032.71 5679431.89 97.50 -601032.75 5679562.80 97.50 -601033.05 5677398.42 97.50 -601033.10 5680533.82 97.50 -601033.65 5679523.33 97.50 -601033.78 5677738.75 97.50 -601033.86 5680523.35 97.50 -601034.22 5677830.48 97.50 -601034.29 5679572.68 97.50 -601034.43 5680546.00 96.25 -601034.45 5681119.81 97.50 -601034.77 5676504.59 100.00 -601034.87 5678084.93 98.75 -601034.91 5679283.24 97.50 -601035.25 5680492.04 96.25 -601035.26 5676849.10 98.75 -601035.38 5679308.90 97.50 -601035.54 5680017.22 97.50 -601035.58 5679341.36 97.50 -601035.64 5680222.63 97.50 -601035.78 5676897.38 98.75 -601036.01 5677872.54 97.25 -601036.10 5680372.01 97.50 -601036.19 5679582.49 97.50 -601036.30 5677729.24 97.50 -601036.34 5681092.14 97.50 -601036.47 5678881.19 97.50 -601036.48 5677719.25 97.50 -601036.61 5681189.37 97.50 -601036.63 5679409.67 97.50 -601036.80 5680934.87 97.50 -601036.80 5680984.02 97.50 -601036.85 5680958.96 98.75 -601037.18 5680568.07 97.50 -601037.26 5681023.46 97.50 -601037.29 5679592.39 97.50 -601037.32 5680996.64 97.50 -601037.47 5679291.35 97.25 -601037.74 5679602.37 97.50 -601037.91 5679050.03 97.50 -601038.05 5679612.36 97.50 -601038.07 5681077.30 97.50 -601038.19 5680562.86 96.25 -601038.31 5678119.85 98.75 -601038.36 5679622.35 97.50 -601038.39 5677842.07 97.50 -601038.44 5680326.03 97.50 -601038.66 5679632.34 97.50 -601038.73 5680214.17 97.50 -601038.75 5679908.89 97.50 -601038.83 5676417.35 101.25 -601038.87 5680952.32 98.75 -601039.36 5679274.68 97.50 -601039.47 5681206.69 97.50 -601039.48 5677863.81 97.25 -601039.48 5678625.22 97.50 -601039.54 5680968.50 97.50 -601039.65 5678093.36 98.75 -601039.69 5677893.53 97.50 -601039.70 5677222.44 97.50 -601039.78 5680308.87 97.50 -601039.81 5679642.19 97.50 -601039.86 5677776.60 97.50 -601039.90 5680384.20 97.50 -601040.00 5679438.63 97.50 -601040.03 5680540.89 97.50 -601040.24 5680588.01 96.25 -601040.29 5681053.97 97.50 -601040.34 5680498.49 96.25 -601040.40 5678570.19 97.50 -601040.61 5679377.24 97.50 -601041.02 5680553.38 96.25 -601041.08 5679301.15 97.50 -601041.18 5678889.17 97.50 -601041.32 5676677.42 98.75 -601041.49 5680529.71 97.50 -601041.75 5677879.92 97.25 -601041.80 5679522.50 97.50 -601041.84 5680596.58 96.25 -601042.36 5677401.95 97.50 -601042.51 5679283.83 97.25 -601042.57 5679651.80 97.50 -601042.67 5678102.84 98.75 -601042.83 5680010.38 97.50 -601043.58 5680575.74 97.50 -601043.61 5681123.81 97.50 -601043.82 5679266.12 97.50 -601043.84 5680317.83 97.50 -601043.98 5677828.35 97.50 -601044.36 5677795.07 97.50 -601044.38 5680964.69 98.75 -601044.52 5679337.38 97.50 -601044.54 5678112.10 98.75 -601044.75 5677785.09 97.50 -601044.76 5676504.21 100.00 -601044.96 5680376.44 97.50 -601045.07 5681097.00 97.50 -601045.09 5680569.95 96.25 -601045.19 5676849.96 98.75 -601045.23 5679661.43 97.50 -601045.37 5676894.66 98.75 -601045.53 5680221.83 97.50 -601045.87 5680988.22 97.50 -601045.98 5680548.85 97.50 -601045.98 5679292.84 97.50 -601046.06 5677804.86 97.50 -601046.49 5681190.86 97.50 -601046.57 5679409.21 97.50 -601046.65 5681000.25 97.50 -601046.79 5680934.57 97.50 -601046.80 5681026.45 97.50 -601047.13 5679903.45 97.50 -601047.18 5677900.13 97.50 -601047.23 5681081.30 97.50 -601047.27 5679046.59 97.50 -601047.48 5677887.29 97.25 -601047.49 5677216.21 97.50 -601047.51 5680603.83 96.25 -601047.52 5679671.16 97.50 -601047.54 5679276.31 97.25 -601047.62 5680560.76 96.25 -601047.67 5677844.78 97.50 -601047.73 5676421.90 101.25 -601047.75 5680954.76 98.75 -601047.81 5680973.99 97.50 -601048.35 5677814.58 97.50 -601048.42 5679529.98 97.50 -601048.49 5680212.50 97.50 -601048.60 5680588.70 96.25 -601048.63 5679443.67 97.50 -601048.68 5677862.45 97.25 -601048.90 5681059.05 97.50 -601049.03 5680536.18 97.50 -601049.16 5678622.72 97.50 -601049.21 5679372.26 97.50 -601049.22 5681208.73 97.50 -601049.49 5678566.02 97.50 -601049.67 5680385.60 97.50 -601049.81 5679680.88 97.50 -601049.93 5679258.68 97.50 -601050.20 5680003.64 97.50 -601050.22 5680583.22 97.50 -601050.35 5680599.12 96.00 -601050.50 5681245.20 97.50 -601050.68 5677824.29 97.50 -601050.88 5679284.52 97.50 -601050.90 5681237.55 97.50 -601050.91 5676680.14 98.75 -601051.18 5677406.42 97.50 -601051.21 5680577.73 96.25 -601051.76 5681268.59 97.50 -601051.92 5680556.81 97.50 -601052.46 5680969.77 98.75 -601052.49 5680940.82 97.50 -601052.49 5679690.50 97.50 -601052.58 5679268.79 97.25 -601052.75 5681127.86 97.50 -601052.96 5680946.65 97.50 -601053.22 5677894.66 97.25 -601053.54 5680568.70 96.25 -601053.81 5681101.85 97.50 -601053.90 5679334.07 97.50 -601054.29 5680609.23 96.25 -601054.33 5680595.94 96.25 -601054.48 5679537.93 97.50 -601054.68 5677906.73 97.50 -601054.71 5680375.58 97.50 -601054.73 5676504.38 100.00 -601054.81 5680981.13 97.50 -601054.86 5676891.62 98.75 -601055.11 5680219.16 97.50 -601055.13 5676850.41 98.75 -601055.15 5679275.87 97.50 -601055.27 5677209.99 97.50 -601055.31 5681005.18 97.50 -601055.51 5679898.00 97.50 -601055.53 5679700.02 97.50 -601055.59 5681194.78 97.50 -601055.79 5680988.36 97.50 -601055.81 5679412.18 97.50 -601056.22 5679251.37 97.50 -601056.24 5681029.67 97.50 -601056.28 5680959.03 98.75 -601056.50 5681262.01 97.50 -601056.50 5680542.72 97.50 -601056.52 5681084.99 97.50 -601056.62 5680590.89 97.50 -601056.63 5676426.46 101.25 -601056.72 5680935.32 97.50 -601056.77 5679043.49 97.50 -601057.21 5680585.60 96.25 -601057.26 5679448.71 97.50 -601057.49 5681064.16 97.50 -601057.52 5680565.00 97.50 -601057.55 5679366.83 97.50 -601057.66 5677845.08 97.50 -601057.82 5679997.17 97.50 -601057.84 5680966.98 99.00 -601057.88 5677861.09 97.25 -601057.90 5680209.27 97.50 -601057.91 5680604.30 96.25 -601058.57 5679709.54 97.50 -601058.63 5678561.97 97.50 -601058.74 5677412.88 97.50 -601058.76 5681211.72 97.50 -601058.95 5677902.03 97.25 -601058.98 5678620.86 97.50 -601059.47 5680576.63 96.25 -601059.56 5680385.32 97.50 -601059.69 5681233.03 97.50 -601060.04 5681247.86 97.50 -601060.15 5679267.71 97.50 -601060.37 5676683.15 98.75 -601060.39 5680975.05 98.75 -601060.56 5679545.86 97.50 -601060.58 5681134.07 97.50 -601060.60 5681272.14 97.50 -601060.72 5679719.21 97.50 -601061.07 5679729.20 97.50 -601061.32 5680943.39 97.25 -601061.34 5677884.63 97.50 -601061.41 5679739.19 97.50 -601061.76 5679749.17 97.50 -601061.82 5680940.23 97.50 -601061.99 5677913.53 97.50 -601062.12 5680948.56 97.50 -601062.16 5677894.32 97.50 -601062.56 5679244.09 97.50 -601062.63 5680598.88 97.50 -601062.95 5680573.32 97.50 -601063.09 5679330.26 97.50 -601063.18 5679759.05 97.50 -601063.44 5677204.29 97.50 -601063.48 5681010.91 97.50 -601063.49 5681104.08 97.50 -601063.50 5680593.15 96.25 -601063.84 5679892.49 97.50 -601063.95 5680549.29 97.50 -601064.25 5680964.27 98.75 -601064.30 5681199.69 97.50 -601064.30 5680215.55 97.50 -601064.31 5676888.44 98.75 -601064.60 5680374.99 97.50 -601064.68 5677909.40 97.25 -601064.69 5676505.11 100.00 -601064.80 5679416.45 97.50 -601064.87 5679768.89 97.50 -601064.99 5676431.91 101.25 -601065.04 5679454.91 97.50 -601065.09 5681070.66 97.50 -601065.10 5676850.06 98.75 -601065.11 5677420.44 97.50 -601065.38 5680584.56 96.25 -601065.38 5681033.53 97.50 -601065.44 5679990.71 97.50 -601065.77 5679361.25 97.50 -601065.86 5681088.55 97.50 -601066.17 5681259.90 97.50 -601066.21 5679040.24 97.50 -601066.51 5679260.45 97.50 -601066.57 5680936.96 97.50 -601067.08 5677859.73 97.25 -601067.30 5677902.89 97.50 -601067.31 5680206.02 97.50 -601067.62 5681216.35 97.50 -601067.64 5677845.47 97.50 -601067.70 5679552.83 97.50 -601067.77 5677877.55 97.50 -601067.88 5680980.93 98.75 -601067.93 5678558.35 97.50 -601068.06 5680581.83 97.50 -601068.26 5681140.46 97.50 -601068.64 5680606.86 97.50 -601068.68 5676688.65 98.75 -601068.81 5678618.99 97.50 -601068.82 5677920.82 97.50 -601069.00 5680387.55 97.50 -601069.25 5679777.87 97.50 -601069.44 5679237.50 97.50 -601069.62 5680593.40 96.25 -601069.63 5681234.07 97.50 -601069.95 5677429.09 97.50 -601070.01 5681248.59 97.50 -601070.29 5681273.90 97.50 -601070.71 5677916.54 97.25 -601070.72 5680943.09 97.50 -601071.25 5680556.03 97.50 -601071.34 5681017.10 97.50 -601071.40 5679325.14 97.50 -601071.41 5680949.39 97.50 -601071.65 5679983.15 97.50 -601071.68 5677198.68 97.50 -601071.80 5679886.45 97.50 -601071.90 5680969.96 98.75 -601072.33 5679252.91 97.50 -601072.52 5679461.55 97.50 -601072.61 5677438.70 97.50 -601072.69 5681077.15 97.50 -601072.82 5680210.40 97.50 -601072.89 5680590.51 97.50 -601073.06 5681204.43 97.50 -601073.18 5676437.64 101.25 -601073.21 5679354.64 97.50 -601073.33 5681105.85 97.50 -601073.35 5679421.49 97.50 -601073.64 5676884.96 98.75 -601073.79 5680615.42 97.50 -601074.10 5677910.21 97.50 -601074.24 5677448.52 97.50 -601074.36 5680376.08 97.50 -601074.53 5679243.52 97.50 -601074.66 5676505.85 100.00 -601074.74 5681093.01 97.50 -601075.06 5676849.71 98.75 -601075.15 5681035.63 97.50 -601075.33 5680200.37 97.50 -601075.34 5679036.17 97.50 -601075.57 5681147.29 97.50 -601075.57 5677928.16 97.50 -601076.00 5681258.25 97.50 -601076.01 5679974.16 97.50 -601076.02 5680393.61 97.50 -601076.31 5680939.25 97.50 -601076.34 5677872.60 97.50 -601076.56 5681220.77 97.50 -601076.62 5680984.32 98.75 -601076.80 5679556.03 97.50 -601076.81 5677848.45 97.50 -601076.87 5677923.55 97.25 -601076.99 5676694.16 98.75 -601077.33 5681267.39 97.70 -601077.49 5679317.33 97.50 -601077.71 5680599.19 97.50 -601077.73 5678556.38 97.50 -601077.73 5679964.46 97.50 -601077.84 5680977.12 98.75 -601077.95 5679780.84 97.50 -601078.23 5679346.19 97.50 -601078.31 5681024.11 97.50 -601078.49 5679954.49 97.50 -601078.55 5680562.76 97.50 -601078.66 5678617.39 97.50 -601078.72 5679469.30 97.50 -601078.77 5680624.09 97.50 -601078.90 5679879.54 97.50 -601078.91 5677457.00 97.50 -601079.59 5681234.78 97.50 -601079.90 5681101.38 97.50 -601079.93 5680944.49 97.50 -601079.94 5680995.90 97.50 -601079.99 5681248.94 97.50 -601080.21 5681272.87 97.50 -601080.40 5680951.95 97.50 -601080.67 5677936.76 97.50 -601080.91 5677917.52 97.50 -601080.96 5679944.84 97.50 -601080.98 5677195.35 97.50 -601081.37 5681081.94 97.50 -601081.44 5680205.43 97.50 -601081.59 5679427.07 97.50 -601081.83 5676442.59 101.25 -601082.13 5680401.34 97.50 -601082.25 5679478.63 97.50 -601082.49 5680607.90 97.50 -601082.58 5677865.26 97.50 -601082.62 5679337.26 97.50 -601082.72 5676880.87 98.75 -601082.86 5681206.39 97.50 -601082.86 5680193.88 97.50 -601082.87 5677855.71 97.50 -601082.89 5679308.97 97.50 -601082.99 5681153.94 97.50 -601083.03 5677930.57 97.25 -601083.43 5681003.94 97.50 -601083.63 5681032.32 97.50 -601083.72 5679935.23 97.50 -601083.75 5680632.76 97.50 -601084.12 5680377.75 97.50 -601084.13 5680570.60 97.50 -601084.46 5679032.10 97.50 -601084.62 5676506.58 100.00 -601084.89 5679816.12 97.50 -601084.93 5679871.58 97.50 -601084.97 5679774.10 97.50 -601085.02 5676849.36 98.75 -601085.17 5677464.75 97.50 -601085.27 5679695.64 97.50 -601085.48 5680903.92 97.50 -601085.69 5679488.02 97.50 -601085.69 5680951.27 97.50 -601085.69 5679806.16 97.50 -601085.76 5677945.35 97.50 -601085.81 5680942.26 97.50 -601085.81 5676698.78 98.75 -601085.96 5681258.86 97.50 -601086.10 5679685.69 97.50 -601086.13 5681223.67 97.50 -601086.45 5680617.01 97.50 -601086.50 5679796.20 97.50 -601086.59 5679554.55 97.50 -601086.62 5679925.67 97.50 -601087.35 5679705.39 97.50 -601087.40 5679300.12 97.50 -601087.55 5677924.98 97.50 -601087.60 5680579.90 97.50 -601087.66 5678556.35 97.50 -601087.71 5679328.72 97.50 -601088.14 5679764.98 97.50 -601088.19 5679825.24 97.50 -601088.64 5678616.74 97.50 -601088.69 5680991.68 97.50 -601088.73 5680641.43 97.50 -601089.04 5679497.43 97.50 -601089.20 5679755.04 97.50 -601089.20 5677937.59 97.25 -601089.34 5679715.16 97.50 -601089.45 5677190.34 97.50 -601089.59 5681234.78 97.50 -601089.89 5679745.08 97.50 -601089.99 5681249.05 97.50 -601090.00 5679786.87 97.50 -601090.04 5679916.29 97.50 -601090.13 5679725.12 97.50 -601090.13 5681271.85 97.50 -601090.28 5679735.09 97.50 -601090.32 5680200.94 97.50 -601090.33 5679863.28 97.50 -601090.46 5677954.16 97.50 -601090.85 5681084.75 97.50 -601090.86 5676446.88 101.25 -601090.97 5680625.85 97.50 -601091.00 5679429.83 97.50 -601091.46 5680589.06 97.50 -601091.57 5681009.58 97.50 -601091.65 5679546.23 97.50 -601091.65 5679507.07 97.50 -601091.72 5679291.16 97.50 -601091.74 5680896.82 97.50 -601091.76 5681158.74 97.50 -601091.81 5676876.77 98.75 -601091.95 5680189.80 97.50 -601091.95 5679677.82 97.50 -601092.06 5679834.37 97.50 -601092.43 5680908.90 97.50 -601092.52 5677471.40 97.50 -601092.66 5681208.35 97.50 -601093.09 5679320.35 97.50 -601093.42 5679853.78 97.50 -601093.48 5679906.91 97.50 -601093.55 5679027.95 97.50 -601093.98 5680378.75 97.50 -601093.99 5680649.93 97.50 -601094.02 5679281.54 97.50 -601094.13 5679844.15 97.50 -601094.18 5677932.45 97.50 -601094.26 5679516.72 97.50 -601094.33 5680598.55 97.50 -601094.34 5679536.60 97.50 -601094.49 5676508.04 100.00 -601094.51 5681228.43 97.50 -601094.67 5679526.70 97.50 -601094.76 5676703.17 98.75 -601094.88 5680946.43 97.50 -601094.89 5677963.11 97.50 -601094.98 5676849.02 98.75 -601095.31 5677944.65 97.25 -601095.70 5680634.58 97.50 -601095.71 5679779.07 97.50 -601095.92 5681259.39 97.50 -601096.34 5679271.91 97.50 -601096.98 5680608.12 97.50 -601097.39 5677184.34 97.50 -601097.64 5678557.01 97.50 -601098.36 5678617.50 97.50 -601098.46 5679311.97 97.50 -601098.57 5679898.31 97.50 -601098.64 5680991.25 97.50 -601099.32 5677972.07 97.50 -601099.34 5680658.37 97.50 -601099.40 5680196.86 97.50 -601099.61 5676451.70 101.25 -601099.83 5680891.07 97.50 -601099.98 5681249.33 97.50 -601100.06 5681270.81 97.50 -601100.31 5681014.35 97.50 -601100.33 5679262.80 97.50 -601100.51 5680643.27 97.50 -601100.53 5681163.54 97.50 -601100.64 5677476.95 97.50 -601100.74 5680617.30 97.50 -601100.76 5679431.79 97.50 -601100.77 5681085.96 97.50 -601100.89 5676872.65 98.75 -601101.03 5680185.72 97.50 -601101.40 5677951.73 97.25 -601101.50 5679674.88 97.50 -601101.94 5677938.67 97.50 -601102.43 5680908.90 97.50 -601102.56 5679023.64 97.50 -601102.59 5681208.13 97.50 -601102.93 5679303.15 97.50 -601103.66 5679889.71 97.50 -601103.71 5676707.56 98.75 -601103.79 5680950.97 97.50 -601104.16 5677177.02 97.50 -601104.27 5679253.67 97.50 -601104.29 5676509.94 100.00 -601104.40 5676851.99 98.75 -601104.60 5679777.87 97.50 -601104.69 5680626.42 97.50 -601104.70 5680666.81 97.50 -601104.83 5681183.25 96.35 -601105.01 5677980.24 97.50 -601105.45 5680651.88 97.50 -601105.88 5681258.90 97.50 -601106.41 5679293.83 97.50 -601107.32 5678558.97 97.50 -601107.44 5678621.69 97.50 -601107.49 5677958.81 97.25 -601108.01 5679787.24 97.50 -601108.21 5681176.13 96.35 -601108.52 5680675.96 97.50 -601108.58 5680990.61 97.50 -601108.65 5681019.78 97.50 -601108.68 5680193.34 97.50 -601108.69 5676455.54 101.25 -601108.69 5680886.49 97.50 -601109.43 5679881.55 97.50 -601109.49 5679797.13 97.50 -601109.60 5676868.08 98.75 -601109.89 5679284.50 97.50 -601109.91 5680634.82 97.50 -601109.92 5681250.40 97.50 -601109.98 5681269.78 97.50 -601110.04 5681166.22 97.50 -601110.23 5681088.84 97.50 -601110.36 5677943.90 97.50 -601110.40 5680660.49 97.50 -601110.42 5679248.22 97.50 -601110.51 5679433.47 97.50 -601110.52 5677478.26 97.50 -601110.55 5676859.29 98.75 -601110.67 5680183.36 97.50 -601110.92 5677169.71 97.50 -601111.22 5677988.06 97.50 -601111.25 5679675.77 97.50 -601111.42 5679806.90 97.50 -601111.58 5679019.32 97.50 -601111.58 5680685.47 97.50 -601111.59 5680905.00 97.50 -601111.78 5679274.75 97.50 -601112.52 5681186.47 96.35 -601112.55 5681207.27 97.50 -601113.07 5680954.64 97.50 -601113.09 5676710.79 98.75 -601113.51 5679264.95 97.50 -601113.59 5677965.89 97.25 -601114.15 5676511.48 100.00 -601114.16 5679255.09 97.50 -601114.41 5679816.44 97.50 -601115.12 5679873.36 97.50 -601115.51 5678627.15 97.50 -601115.54 5680669.00 97.50 -601115.58 5680642.97 97.50 -601115.83 5680450.60 96.25 -601115.85 5681258.40 97.50 -601116.50 5678562.93 97.50 -601116.87 5681025.41 97.50 -601116.90 5680693.93 97.50 -601117.32 5677162.07 97.50 -601117.33 5681173.19 96.35 -601117.46 5679825.96 97.50 -601117.74 5680713.55 97.50 -601118.09 5680883.09 97.50 -601118.12 5677995.08 97.50 -601118.17 5680703.56 97.50 -601118.19 5680723.47 97.50 -601118.27 5680190.66 97.50 -601118.48 5680989.51 97.50 -601118.56 5676457.11 101.25 -601119.16 5681178.42 96.00 -601119.35 5681092.93 97.50 -601119.59 5680458.58 96.25 -601119.68 5677972.97 97.25 -601119.73 5681267.66 97.50 -601119.79 5679864.53 97.50 -601119.81 5680651.93 97.50 -601119.82 5677947.10 97.50 -601119.84 5681250.16 97.50 -601119.91 5681167.26 97.50 -601119.94 5680733.31 97.50 -601120.04 5680899.65 97.50 -601120.26 5679431.44 97.50 -601120.40 5677479.56 97.50 -601120.47 5680181.64 97.50 -601120.75 5679678.75 97.50 -601120.95 5679835.32 97.50 -601121.05 5679016.41 97.50 -601121.39 5680725.16 96.25 -601121.69 5680743.15 97.50 -601121.81 5678634.90 97.50 -601121.91 5680715.32 96.25 -601121.95 5681184.79 96.35 -601121.97 5681204.22 97.50 -601122.04 5679855.08 97.50 -601122.11 5679845.09 97.50 -601122.41 5680670.74 97.50 -601122.71 5676713.43 98.75 -601122.84 5680954.98 97.50 -601122.99 5680734.90 96.25 -601123.45 5680753.00 97.50 -601123.70 5680661.07 97.50 -601123.73 5681032.64 97.50 -601123.77 5676513.44 100.00 -601124.26 5678569.10 97.50 -601124.60 5677155.42 97.50 -601124.99 5680744.59 96.25 -601125.00 5680449.12 96.25 -601125.81 5681257.90 97.50 -601125.89 5680762.68 97.50 -601126.50 5681170.49 96.35 -601126.72 5680754.33 96.25 -601127.06 5677953.16 97.50 -601127.50 5677995.53 97.50 -601127.61 5680187.29 97.50 -601127.66 5680720.58 96.25 -601127.81 5680880.76 97.50 -601127.89 5680986.49 97.50 -601128.11 5680463.67 96.25 -601128.27 5680730.46 96.25 -601128.45 5676458.57 101.25 -601128.52 5681096.91 97.50 -601128.65 5680772.29 97.50 -601128.75 5680764.01 96.25 -601129.08 5680948.60 97.50 -601129.09 5680895.80 97.50 -601129.18 5680740.31 96.25 -601129.48 5681265.56 97.50 -601129.73 5679683.03 97.50 -601129.74 5681248.82 97.50 -601129.86 5681166.29 97.50 -601129.92 5678640.75 97.50 -601129.97 5679429.29 97.50 -601130.27 5677479.96 97.50 -601130.37 5680180.84 97.50 -601130.41 5679887.44 97.50 -601130.84 5680938.78 97.50 -601130.86 5680750.04 96.25 -601130.86 5679014.51 97.50 -601131.01 5681200.03 97.50 -601131.07 5681182.44 96.35 -601131.25 5678576.22 97.50 -601131.31 5681039.10 97.50 -601131.37 5680773.52 96.25 -601131.60 5680781.84 97.50 -601131.60 5679877.60 97.50 -601132.32 5676716.07 98.75 -601132.38 5676518.51 100.00 -601132.41 5679897.05 97.50 -601132.49 5677961.55 97.50 -601133.02 5680929.10 97.50 -601133.02 5677150.10 97.50 -601133.88 5680759.43 96.25 -601133.92 5681174.43 96.35 -601133.92 5680453.32 96.25 -601134.42 5679868.06 97.50 -601135.10 5677989.41 97.50 -601135.16 5680791.13 97.50 -601135.36 5679906.55 97.50 -601135.39 5680772.76 95.75 -601135.69 5681256.59 97.50 -601135.70 5680782.42 96.25 -601136.13 5680727.55 96.25 -601136.85 5680468.37 96.25 -601137.26 5680737.48 96.25 -601137.47 5680984.60 97.50 -601137.53 5680768.63 96.25 -601137.58 5681016.06 98.50 -601137.64 5680718.01 96.25 -601137.65 5680879.13 97.50 -601137.82 5677969.96 97.50 -601137.82 5677979.95 97.50 -601137.87 5681100.44 97.50 -601137.93 5679858.79 97.50 -601137.95 5678583.62 97.50 -601138.02 5679681.37 97.50 -601138.02 5678646.61 97.50 -601138.30 5676460.22 101.25 -601138.49 5679915.99 97.50 -601138.79 5680781.57 95.75 -601138.86 5680893.64 97.50 -601139.22 5681194.33 97.50 -601139.24 5680747.27 96.25 -601139.26 5681263.60 97.50 -601139.39 5681044.90 97.50 -601139.43 5679426.24 97.50 -601139.59 5681247.13 97.50 -601139.81 5681165.31 97.50 -601139.83 5676525.05 100.00 -601139.90 5680799.94 97.50 -601139.91 5680791.37 96.25 -601140.13 5677478.49 97.50 -601140.33 5680923.00 97.50 -601141.43 5679893.83 97.50 -601141.49 5680777.69 96.25 -601141.65 5677145.12 97.50 -601141.67 5680756.94 96.25 -601141.92 5677840.23 97.50 -601141.93 5676718.71 98.75 -601142.05 5679903.79 97.50 -601142.05 5679925.29 97.50 -601142.18 5679883.98 97.50 -601142.42 5677830.88 97.50 -601142.45 5680790.24 95.75 -601142.58 5679850.00 97.50 -601142.59 5680952.36 97.50 -601142.60 5680458.10 96.25 -601143.18 5680724.52 96.25 -601143.69 5680943.89 97.50 -601143.99 5679673.59 97.50 -601144.07 5680800.35 96.25 -601144.64 5680962.10 97.50 -601144.72 5680808.69 97.50 -601144.96 5679854.89 96.25 -601144.98 5679913.22 97.50 -601145.02 5680734.34 96.25 -601145.06 5680766.34 96.25 -601145.27 5680473.59 96.25 -601145.57 5681255.15 97.50 -601145.59 5679874.95 97.50 -601145.70 5680989.60 97.50 -601145.70 5678589.93 97.50 -601145.85 5680023.17 97.50 -601145.92 5680786.54 96.25 -601145.95 5679934.44 97.50 -601146.70 5680971.85 97.50 -601146.82 5676532.19 100.00 -601146.83 5678651.14 97.50 -601147.04 5680744.13 96.25 -601147.08 5677847.41 97.50 -601147.42 5679841.34 97.50 -601147.43 5681188.62 97.50 -601147.48 5680877.49 97.50 -601147.57 5681102.33 97.50 -601147.74 5679664.42 97.50 -601147.97 5681049.88 97.50 -601147.97 5676462.73 101.25 -601147.99 5680797.89 95.75 -601148.09 5677823.78 97.50 -601148.20 5680927.05 97.50 -601148.21 5679421.57 97.50 -601148.55 5680891.20 97.50 -601148.74 5679922.46 97.50 -601149.10 5681262.05 97.50 -601149.28 5680808.76 96.25 -601149.38 5681245.08 97.50 -601149.40 5679861.97 96.25 -601149.40 5680775.32 96.25 -601149.71 5680753.74 96.25 -601149.79 5677476.16 97.50 -601149.81 5681165.25 97.50 -601149.85 5679943.59 97.50 -601150.00 5680029.73 97.50 -601150.20 5680464.50 96.25 -601150.44 5679654.80 97.50 -601150.51 5680980.98 97.50 -601150.63 5680795.23 96.25 -601150.87 5679847.24 96.25 -601150.99 5680816.47 97.50 -601151.06 5680015.01 97.50 -601151.17 5677142.16 97.50 -601151.22 5680373.27 96.25 -601151.22 5680373.27 97.50 -601151.34 5676721.98 98.75 -601151.55 5677834.21 97.25 -601151.92 5680947.30 97.50 -601152.41 5679645.01 97.50 -601152.58 5679867.84 97.50 -601152.71 5676540.25 100.00 -601152.91 5680763.20 96.25 -601152.94 5679931.51 97.50 -601153.00 5676764.26 98.75 -601153.11 5680479.69 96.25 -601153.17 5680996.16 97.50 -601153.45 5678596.25 97.50 -601153.53 5680805.53 95.75 -601153.62 5676774.15 98.75 -601154.40 5680783.94 96.25 -601154.58 5679635.26 97.50 -601154.68 5680817.05 96.25 -601154.70 5679952.19 97.50 -601154.79 5679834.66 97.50 -601155.06 5679414.54 97.50 -601155.08 5680989.83 97.50 -601155.42 5681253.61 97.50 -601155.47 5680641.90 96.25 -601155.51 5680933.82 97.50 -601155.70 5680768.58 96.25 -601155.96 5677845.75 97.50 -601156.21 5678654.61 97.50 -601156.52 5680803.12 96.25 -601156.53 5681184.49 97.50 -601156.62 5679605.55 97.50 -601156.69 5679615.55 97.50 -601156.76 5679625.54 97.50 -601156.93 5679856.30 96.25 -601157.09 5680777.94 96.00 -601157.10 5676782.49 98.75 -601157.11 5680874.79 97.50 -601157.15 5679940.56 97.50 -601157.18 5681053.69 97.50 -601157.25 5677821.51 97.50 -601157.26 5679847.93 96.00 -601157.27 5680824.25 97.50 -601157.38 5680380.45 96.25 -601157.55 5681102.80 97.50 -601157.56 5676465.56 101.25 -601157.82 5680470.88 96.25 -601157.89 5679840.37 96.25 -601158.21 5680888.64 97.50 -601158.32 5679595.73 97.50 -601158.49 5681169.35 97.50 -601158.51 5676548.38 100.00 -601158.53 5676755.96 98.75 -601158.71 5680954.56 97.50 -601158.81 5680008.87 97.50 -601159.06 5681261.49 97.50 -601159.08 5680813.18 95.75 -601159.10 5679860.29 97.50 -601159.16 5681243.02 97.50 -601159.29 5677473.17 97.50 -601159.55 5680028.73 97.50 -601159.64 5680634.74 96.25 -601159.90 5680650.51 96.25 -601160.08 5680486.77 96.25 -601160.21 5677829.75 97.25 -601160.22 5680825.25 96.25 -601160.35 5679406.11 97.50 -601160.56 5680682.19 96.25 -601160.60 5680791.78 96.25 -601160.72 5676725.37 98.75 -601160.74 5677139.39 97.50 -601160.86 5680374.18 97.50 -601160.86 5679960.01 97.50 -601161.45 5678602.23 97.50 -601161.47 5679586.32 97.50 -601161.62 5680776.61 96.25 -601161.75 5679949.41 97.50 -601162.16 5679827.97 97.50 -601162.27 5681177.96 97.50 -601162.28 5681080.26 97.50 -601162.72 5680940.23 97.50 -601162.73 5677839.11 97.50 -601162.85 5680674.31 96.25 -601163.14 5680810.46 96.25 -601164.03 5679849.52 96.25 -601164.26 5679679.72 97.50 -601164.27 5676556.55 100.00 -601164.37 5680831.28 97.50 -601164.51 5680691.01 96.25 -601164.60 5680659.15 96.25 -601164.65 5680483.87 96.00 -601164.90 5676748.31 98.75 -601165.00 5679833.60 96.25 -601165.15 5680385.73 96.25 -601165.25 5681251.88 97.50 -601165.26 5680757.60 96.25 -601165.44 5676787.95 98.75 -601165.46 5680961.89 97.50 -601165.50 5680477.17 96.25 -601165.64 5677816.94 97.50 -601165.89 5678656.57 97.50 -601166.31 5679853.40 97.50 -601166.33 5680767.06 96.25 -601166.49 5681057.24 97.50 -601166.59 5676469.65 101.25 -601166.60 5680002.78 97.50 -601166.77 5680021.89 97.50 -601166.79 5679578.01 97.50 -601166.79 5680872.37 97.50 -601166.99 5679967.84 97.50 -601167.16 5680493.72 96.25 -601167.19 5679399.10 97.50 -601167.29 5680799.15 96.25 -601167.46 5680640.23 96.25 -601167.54 5681103.27 97.50 -601167.89 5680748.41 96.25 -601167.90 5680886.17 97.50 -601167.91 5679688.40 97.50 -601167.97 5680668.14 96.25 -601168.04 5676731.39 98.75 -601168.20 5680700.03 96.25 -601168.35 5680783.99 96.25 -601168.41 5681086.47 97.50 -601168.48 5679956.78 97.50 -601168.74 5677470.05 97.50 -601168.79 5681240.46 97.50 -601168.86 5677825.30 97.25 -601169.01 5681260.88 97.50 -601169.04 5680764.60 95.70 -601169.06 5680818.38 96.25 -601169.73 5680738.82 96.25 -601169.74 5678607.82 97.50 -601169.83 5680827.51 96.25 -601169.89 5676564.81 100.00 -601169.93 5680719.30 96.25 -601170.03 5680371.96 97.50 -601170.04 5677136.11 97.50 -601170.08 5680679.74 96.25 -601170.11 5680709.55 96.25 -601170.15 5679822.08 97.50 -601170.31 5680729.07 96.25 -601170.43 5679842.41 96.25 -601170.59 5676740.44 98.75 -601170.84 5677834.06 97.50 -601171.19 5681075.80 97.50 -601171.19 5680392.89 96.25 -601171.24 5680945.42 97.50 -601171.45 5680838.34 97.50 -601171.91 5680755.14 96.25 -601172.00 5680490.24 96.00 -601172.26 5679976.28 97.50 -601172.34 5679832.86 96.25 -601172.62 5679845.69 97.50 -601172.74 5680968.69 97.50 -601172.76 5679675.47 97.50 -601172.94 5679995.33 97.50 -601172.94 5680483.74 96.25 -601173.27 5680772.87 96.25 -601173.44 5680745.51 96.25 -601173.61 5679570.71 97.50 -601173.93 5681034.08 97.50 -601173.96 5680015.01 97.50 -601174.03 5677812.37 97.50 -601174.17 5679985.46 97.50 -601174.49 5680647.20 96.25 -601174.51 5680688.45 96.25 -601174.52 5680764.11 96.25 -601174.58 5681053.10 97.50 -601174.59 5680791.80 96.25 -601174.75 5676791.20 98.75 -601174.76 5680464.76 96.25 -601174.85 5679695.29 97.50 -601174.97 5680805.52 96.25 -601175.05 5680499.75 96.25 -601175.07 5681250.16 97.50 -601175.09 5676474.91 101.25 -601175.61 5680674.44 96.25 -601175.88 5678656.98 97.50 -601176.02 5680401.01 96.25 -601176.25 5680736.17 96.25 -601176.27 5680869.84 97.50 -601176.28 5680456.80 96.25 -601176.61 5679396.71 97.50 -601176.71 5681099.65 97.50 -601176.86 5680697.92 96.25 -601176.93 5676571.78 100.00 -601176.94 5679961.96 97.50 -601177.07 5677820.08 97.25 -601177.16 5681043.48 97.50 -601177.27 5681083.67 97.50 -601177.30 5677464.94 97.50 -601177.31 5680885.32 97.50 -601177.73 5677129.82 97.50 -601178.04 5681236.67 97.50 -601178.33 5680726.74 96.25 -601178.36 5679816.45 97.50 -601178.51 5680845.41 97.50 -601178.54 5680367.48 97.50 -601178.59 5677828.51 97.50 -601178.73 5681259.37 97.50 -601178.83 5678611.88 97.50 -601178.84 5680716.98 96.25 -601179.20 5680903.71 97.50 -601179.25 5679838.23 97.50 -601179.34 5680496.62 96.00 -601179.64 5680707.25 96.25 -601179.73 5680950.69 97.50 -601179.85 5680913.27 97.50 -601179.89 5680397.64 97.50 -601180.02 5680490.71 96.25 -601180.06 5680893.76 97.50 -601180.11 5681071.34 97.50 -601180.16 5681039.11 97.50 -601180.16 5680975.33 97.50 -601180.34 5680007.38 97.50 -601180.63 5680409.28 96.25 -601180.74 5679563.71 97.50 -601181.04 5680472.07 96.25 -601181.51 5680815.40 97.50 -601181.80 5680653.83 96.25 -601181.93 5677120.78 97.50 -601181.97 5680798.39 96.25 -601181.97 5679678.79 97.50 -601181.97 5680824.31 97.50 -601181.99 5680770.41 96.25 -601182.29 5680776.13 96.25 -601182.30 5680072.95 97.50 -601182.36 5680862.55 97.50 -601182.41 5680506.32 96.25 -601182.43 5677807.80 97.50 -601182.47 5680465.25 96.00 -601182.62 5680406.42 97.50 -601182.62 5679701.49 97.50 -601182.67 5676481.43 101.25 -601183.02 5680381.02 96.25 -601183.16 5680811.26 96.25 -601183.52 5677111.03 97.50 -601183.65 5680680.20 96.25 -601184.34 5677101.11 97.50 -601184.41 5676793.67 98.75 -601184.43 5680371.46 96.25 -601184.44 5677091.14 97.50 -601184.46 5680853.39 97.50 -601184.54 5677081.17 97.50 -601184.61 5676578.16 100.00 -601184.90 5681248.43 97.50 -601185.07 5680459.14 96.25 -601185.23 5677814.77 97.25 -601185.39 5681047.57 97.50 -601185.41 5680066.03 97.50 -601185.77 5680396.67 97.50 -601185.83 5678657.93 97.50 -601185.86 5677459.83 97.50 -601185.93 5677071.37 97.50 -601186.07 5681096.33 97.50 -601186.08 5677822.57 97.50 -601186.15 5681079.16 97.50 -601186.23 5680416.89 96.25 -601186.30 5680503.38 96.00 -601186.36 5680361.77 97.50 -601186.41 5679831.28 97.50 -601186.42 5679395.16 97.50 -601186.44 5679961.65 97.50 -601186.61 5679999.65 97.50 -601186.64 5679810.95 97.50 -601186.66 5680389.80 96.25 -601186.75 5681013.27 97.25 -601186.76 5680498.00 96.25 -601187.29 5681232.87 97.50 -601187.34 5681254.33 97.50 -601187.67 5680981.86 97.50 -601187.72 5680832.27 97.50 -601187.83 5681065.20 97.50 -601187.88 5680912.52 97.50 -601187.96 5679556.80 97.50 -601188.13 5680478.62 96.25 -601188.14 5678615.55 97.50 -601188.23 5677061.67 97.50 -601188.51 5680514.16 96.25 -601188.54 5680955.36 97.50 -601188.57 5680414.01 97.50 -601189.00 5680848.80 97.50 -601189.18 5680363.20 96.25 -601189.32 5679708.86 97.50 -601189.40 5681056.64 97.50 -601189.56 5679685.23 97.50 -601189.79 5676488.38 101.25 -601189.98 5680782.15 96.25 -601190.06 5680659.21 96.25 -601190.07 5680775.88 96.25 -601190.16 5680804.11 96.25 -601190.46 5680819.49 97.50 -601190.66 5680071.64 97.50 -601191.03 5680466.73 96.25 -601191.04 5680672.71 95.80 -601191.10 5677803.79 97.50 -601191.12 5680371.83 96.25 -601191.75 5680903.44 97.50 -601191.79 5680059.47 97.50 -601192.00 5680685.50 96.25 -601192.05 5680815.37 96.25 -601192.12 5679953.68 97.50 -601192.27 5680380.84 96.25 -601192.37 5676584.45 100.00 -601192.53 5680423.78 96.25 -601192.75 5680857.92 97.50 -601192.94 5680510.48 96.00 -601193.34 5680505.44 96.25 -601193.62 5679824.39 97.50 -601193.72 5677816.84 97.50 -601194.07 5676796.14 98.75 -601194.09 5680399.95 97.50 -601194.10 5680989.47 97.50 -601194.18 5677054.02 97.50 -601194.28 5677454.51 97.50 -601194.31 5679549.08 97.50 -601194.46 5680356.49 97.50 -601194.55 5681245.95 97.50 -601194.61 5680522.00 96.25 -601194.92 5680390.05 96.25 -601194.98 5680839.15 97.50 -601195.18 5680850.53 97.50 -601195.22 5680485.16 96.25 -601195.22 5679995.30 97.50 -601195.26 5681075.28 97.50 -601195.43 5679806.28 97.50 -601195.76 5678659.08 97.50 -601195.88 5681095.10 97.50 -601195.94 5676496.27 101.25 -601196.01 5679716.22 97.50 -601196.09 5679392.82 97.50 -601196.22 5680961.38 97.50 -601196.22 5681228.43 97.50 -601196.31 5681250.39 97.50 -601196.37 5680419.74 97.50 -601196.38 5680894.84 97.50 -601196.59 5680474.62 96.25 -601196.89 5680789.06 96.25 -601196.91 5679944.92 97.50 -601197.34 5680370.26 96.25 -601197.44 5680810.92 96.25 -601197.45 5679691.34 97.50 -601197.74 5678618.27 97.50 -601197.99 5680359.61 96.25 -601198.09 5680781.44 96.25 -601198.09 5680825.94 97.50 -601198.18 5680052.91 97.50 -601198.77 5680067.44 97.50 -601199.37 5680517.77 96.00 -601199.39 5680662.53 96.25 -601199.45 5680997.73 97.50 -601199.70 5680865.11 97.50 -601200.07 5680057.78 97.30 -601200.15 5677803.84 97.50 -601200.47 5680393.70 97.50 -601200.51 5680428.83 96.25 -601200.54 5680529.97 96.25 -601200.58 5680690.43 96.25 -601200.63 5680512.17 96.25 -601200.66 5679541.37 97.50 -601200.84 5676589.75 100.00 -601201.07 5680492.84 96.25 -601201.16 5676504.76 101.25 -601201.22 5680858.50 97.50 -601201.62 5677811.46 97.50 -601201.74 5680482.77 96.25 -601201.89 5679724.21 97.50 -601202.14 5679936.49 97.50 -601202.24 5680846.02 97.50 -601202.34 5680969.18 97.50 -601202.41 5679819.74 97.50 -601202.66 5677449.11 97.50 -601202.84 5680351.64 97.50 -601203.22 5681006.96 97.50 -601203.61 5677053.61 97.50 -601203.79 5676798.29 98.75 -601203.80 5680795.97 96.25 -601203.93 5680377.33 96.25 -601204.11 5681243.11 97.50 -601204.27 5679801.71 97.50 -601204.27 5680425.34 97.50 -601204.49 5680889.24 97.50 -601204.59 5679997.80 97.50 -601204.91 5681223.49 97.50 -601205.02 5678931.07 97.50 -601205.04 5681073.72 97.50 -601205.16 5680046.99 97.50 -601205.25 5680060.96 97.50 -601205.50 5680525.31 96.00 -601205.57 5679697.11 97.50 -601205.68 5680787.60 96.25 -601205.69 5678660.23 97.50 -601205.70 5679390.22 97.50 -601205.81 5681096.24 97.50 -601205.94 5676513.54 101.25 -601205.99 5680832.05 97.50 -601206.22 5681249.27 97.50 -601206.38 5680538.00 96.25 -601206.45 5681016.35 97.50 -601206.65 5680387.04 97.50 -601206.66 5680872.28 97.50 -601206.73 5680978.16 97.50 -601207.14 5680500.33 96.25 -601207.18 5680356.66 96.25 -601207.44 5678620.70 97.50 -601207.45 5680490.53 96.25 -601207.55 5679534.16 97.50 -601207.56 5680363.52 96.00 -601207.64 5679732.31 97.50 -601207.89 5680518.94 96.25 -601207.95 5678940.10 97.50 -601208.47 5680433.70 96.25 -601208.71 5680665.86 96.25 -601208.89 5681026.01 97.50 -601209.20 5680863.75 97.50 -601209.30 5676595.05 100.00 -601209.55 5678922.60 97.50 -601209.70 5680881.52 97.50 -601209.73 5680693.22 96.25 -601209.75 5680473.82 96.25 -601209.99 5680852.33 97.50 -601210.16 5680373.45 96.25 -601210.36 5679931.82 97.50 -601210.63 5681035.80 97.50 -601210.69 5677060.31 97.50 -601211.04 5677443.71 97.50 -601211.18 5679814.97 97.50 -601211.33 5680802.08 96.25 -601211.52 5680466.90 96.25 -601211.55 5680532.93 96.00 -601211.57 5680004.88 97.50 -601211.90 5681045.69 97.50 -601212.12 5680349.80 97.50 -601212.20 5680685.65 96.25 -601212.21 5680546.04 96.25 -601212.24 5680041.19 97.50 -601212.44 5680430.21 97.50 -601212.57 5680055.68 97.50 -601212.59 5676520.81 101.25 -601212.99 5681079.72 97.50 -601213.14 5681239.12 97.50 -601213.14 5679797.20 97.50 -601213.20 5680985.77 97.50 -601213.38 5680793.60 96.25 -601213.63 5681218.59 97.50 -601213.67 5676799.60 98.75 -601213.85 5680507.25 96.25 -601213.89 5680497.68 96.25 -601214.02 5679702.43 97.50 -601214.21 5679739.79 97.50 -601214.29 5680837.62 97.50 -601214.71 5681055.19 97.50 -601214.78 5677108.17 97.50 -601214.92 5680525.97 96.25 -601214.96 5679391.82 97.50 -601215.04 5681099.78 97.50 -601215.13 5677118.07 97.50 -601215.33 5680476.01 96.00 -601215.34 5677069.02 97.50 -601215.52 5680816.72 97.50 -601215.63 5678661.36 97.50 -601216.02 5681247.41 97.50 -601216.08 5677098.29 97.50 -601216.10 5679530.39 97.50 -601216.13 5680385.17 97.50 -601216.22 5679998.11 97.50 -601216.25 5680481.34 96.25 -601216.43 5680013.56 97.50 -601216.63 5680355.15 96.25 -601216.79 5680048.05 97.50 -601216.98 5677435.76 97.50 -601217.01 5680859.34 97.50 -601217.14 5678623.13 97.50 -601217.17 5678942.68 97.50 -601217.29 5676600.95 100.00 -601217.37 5677088.41 97.50 -601217.47 5680435.23 96.25 -601217.53 5680540.58 96.00 -601217.71 5678917.10 97.50 -601217.72 5680370.05 96.25 -601218.13 5680554.02 96.25 -601218.14 5681064.55 97.50 -601218.22 5677078.56 97.50 -601218.24 5679936.43 97.50 -601218.59 5680666.23 96.25 -601218.71 5677126.95 97.50 -601218.72 5680865.93 97.50 -601218.93 5680801.41 96.25 -601219.09 5680505.54 96.25 -601219.29 5680472.76 96.25 -601219.45 5680993.57 97.50 -601219.50 5680825.11 97.50 -601219.91 5679810.15 97.50 -601220.17 5680006.82 97.50 -601220.25 5676527.22 101.25 -601220.36 5680625.32 96.25 -601220.55 5680534.12 96.25 -601220.70 5680022.54 97.50 -601220.72 5680683.43 96.25 -601220.91 5679747.11 97.50 -601221.46 5681233.63 97.50 -601221.65 5680350.11 97.50 -601221.67 5681073.87 97.50 -601221.96 5678300.94 97.50 -601221.96 5679991.20 97.50 -601222.06 5681083.51 97.50 -601222.06 5680430.00 97.50 -601222.08 5679792.87 97.50 -601222.16 5678310.78 97.50 -601222.19 5680843.67 97.50 -601222.35 5681213.71 97.50 -601222.67 5680368.18 96.25 -601222.67 5679707.39 97.50 -601222.78 5677427.65 97.50 -601222.90 5681105.71 97.50 -601222.91 5680488.72 96.25 -601222.99 5680548.61 96.00 -601223.25 5680634.18 96.25 -601223.25 5678320.58 97.50 -601223.31 5680814.45 97.50 -601223.37 5680361.15 96.25 -601223.55 5676800.91 98.75 -601223.98 5681002.37 97.50 -601223.99 5679395.99 97.50 -601224.02 5680376.85 96.25 -601224.11 5680561.95 96.25 -601224.20 5676608.16 100.00 -601224.52 5678330.36 97.50 -601224.55 5680480.96 96.25 -601224.95 5680031.54 97.50 -601225.36 5680015.34 97.50 -601225.48 5679532.08 97.50 -601225.51 5677134.02 97.50 -601225.56 5678662.48 97.50 -601225.75 5679922.69 97.50 -601225.80 5680384.90 97.50 -601225.81 5678340.13 97.50 -601225.82 5681245.55 97.50 -601225.86 5679482.37 97.50 -601225.91 5679932.66 97.50 -601225.96 5680356.53 96.25 -601226.04 5680542.40 96.25 -601226.08 5679472.53 97.50 -601226.09 5680431.66 96.25 -601226.19 5680697.65 96.25 -601226.19 5680832.54 97.50 -601226.48 5678912.40 97.50 -601226.51 5680621.50 96.25 -601226.59 5678292.66 97.50 -601226.81 5678625.66 97.50 -601227.09 5678943.06 97.50 -601227.37 5680642.86 96.25 -601227.53 5679913.06 97.50 -601227.56 5679462.70 97.50 -601227.59 5679492.17 97.50 -601227.67 5681011.66 97.50 -601227.99 5680556.95 96.00 -601228.38 5680665.22 96.25 -601228.41 5676533.00 101.25 -601228.58 5677419.55 97.50 -601228.59 5678349.58 97.50 -601228.71 5680375.46 96.25 -601228.96 5680706.06 96.25 -601228.98 5680851.01 97.50 -601228.99 5680570.57 96.25 -601229.06 5679752.82 97.50 -601229.09 5679997.48 97.50 -601229.16 5677201.51 97.50 -601229.53 5679807.55 97.50 -601229.57 5680496.10 96.25 -601229.76 5681112.98 97.50 -601229.79 5681228.13 97.50 -601229.83 5680636.65 96.00 -601230.07 5680040.07 97.50 -601230.32 5680489.00 96.25 -601230.36 5677211.41 97.50 -601230.42 5680425.12 97.50 -601230.57 5680682.47 96.25 -601230.69 5677191.77 97.50 -601230.72 5680353.51 97.50 -601230.88 5681021.12 97.50 -601230.90 5680023.64 97.50 -601230.93 5679712.83 97.50 -601231.00 5679453.37 97.50 -601231.11 5676615.38 100.00 -601231.18 5681209.02 97.50 -601231.26 5679501.26 97.50 -601231.59 5679789.94 97.50 -601231.74 5680550.53 96.25 -601231.79 5680364.22 96.25 -601231.92 5680049.55 97.50 -601231.92 5680628.99 96.25 -601232.07 5678358.79 97.50 -601232.17 5680818.92 97.50 -601232.35 5680059.48 97.50 -601232.36 5680651.06 96.25 -601232.55 5680704.07 96.00 -601232.89 5681030.91 97.50 -601232.89 5680839.96 97.50 -601232.94 5680565.31 96.00 -601232.95 5677220.92 97.50 -601232.97 5679400.28 97.50 -601233.24 5679923.24 97.50 -601233.39 5679931.76 97.50 -601233.46 5676801.78 98.75 -601233.52 5680579.41 96.25 -601233.66 5679537.82 97.50 -601233.67 5680699.85 96.25 -601233.68 5680426.07 96.25 -601233.72 5678288.91 97.50 -601234.03 5677780.28 98.75 -601234.12 5679906.09 97.50 -601234.41 5681040.79 97.50 -601234.43 5677411.48 97.50 -601234.44 5677770.47 98.75 -601234.54 5680360.97 96.25 -601234.69 5681050.78 97.50 -601234.78 5677137.08 97.50 -601234.81 5681060.77 97.50 -601235.07 5679913.82 97.50 -601235.11 5677183.09 97.50 -601235.20 5681070.76 97.50 -601235.24 5680382.97 97.50 -601235.25 5681242.39 97.50 -601235.26 5677790.14 98.75 -601235.41 5678664.16 97.50 -601235.73 5680068.34 97.50 -601235.77 5680858.34 97.50 -601235.94 5678367.86 97.50 -601236.07 5680637.74 96.25 -601236.11 5678910.12 97.50 -601236.12 5680032.14 97.50 -601236.17 5680711.35 96.25 -601236.23 5681120.59 97.50 -601236.23 5680503.48 96.25 -601236.26 5678628.93 97.50 -601236.39 5677760.71 98.75 -601236.49 5680559.20 96.25 -601236.50 5680003.50 97.50 -601236.73 5680496.58 96.25 -601236.85 5680588.76 96.25 -601236.94 5676538.19 101.25 -601236.94 5678943.88 97.50 -601236.96 5677230.04 97.50 -601237.23 5680574.02 96.00 -601237.32 5679758.37 97.50 -601237.59 5679720.26 97.50 -601237.71 5679446.24 97.50 -601237.77 5680418.84 97.50 -601238.11 5680663.37 96.25 -601238.11 5677799.42 98.75 -601238.34 5677750.96 98.75 -601238.36 5681223.03 97.50 -601238.47 5676622.12 100.00 -601238.72 5680358.86 97.50 -601238.78 5680368.51 96.25 -601238.96 5681079.77 97.50 -601239.11 5679965.87 97.50 -601239.17 5679905.23 97.50 -601239.19 5679507.28 97.50 -601239.20 5679805.09 97.50 -601239.36 5679928.07 97.50 -601239.81 5678376.93 97.50 -601239.85 5679897.92 97.50 -601239.89 5680419.28 96.25 -601239.94 5680706.30 96.25 -601239.99 5680598.18 96.25 -601239.99 5680846.96 97.50 -601240.09 5680655.55 96.25 -601240.09 5680646.55 96.25 -601240.10 5679955.98 97.50 -601240.12 5681204.55 97.50 -601240.14 5679975.79 97.50 -601240.27 5677403.41 97.50 -601240.29 5679911.24 97.30 -601240.40 5680681.30 96.25 -601240.41 5679995.67 97.50 -601240.55 5680568.27 96.25 -601240.57 5679545.04 97.50 -601240.81 5680823.96 97.50 -601240.90 5680583.01 96.00 -601241.04 5680040.82 97.50 -601241.09 5679985.72 97.50 -601241.10 5679787.02 97.50 -601241.21 5680409.91 96.25 -601241.21 5680409.91 97.50 -601241.26 5677175.25 97.50 -601241.29 5680375.98 97.50 -601241.41 5680504.68 95.80 -601241.53 5679946.11 97.50 -601242.02 5681004.92 97.50 -601242.12 5679918.89 97.50 -601242.18 5677741.79 98.75 -601242.22 5678293.59 97.50 -601242.38 5677238.31 97.50 -601242.48 5679400.15 97.50 -601242.50 5681128.38 97.50 -601242.56 5680865.68 97.50 -601243.21 5680510.56 96.25 -601243.42 5680367.12 97.50 -601243.43 5676801.70 98.75 -601243.50 5680592.38 96.00 -601243.54 5681088.63 97.50 -601243.56 5680074.47 97.50 -601243.60 5680607.40 96.25 -601243.79 5679936.42 97.50 -601243.82 5680503.54 96.25 -601243.93 5681014.67 97.50 -601244.04 5677806.96 98.75 -601244.17 5677135.01 97.50 -601244.24 5679727.66 97.50 -601244.56 5681238.81 97.50 -601244.92 5679897.58 97.50 -601244.96 5680577.16 96.25 -601244.99 5679764.48 97.50 -601245.08 5679439.55 97.50 -601245.18 5678666.28 97.50 -601245.24 5678385.27 97.50 -601245.39 5678632.81 97.50 -601245.68 5676543.03 101.25 -601245.82 5678910.45 97.50 -601245.86 5679910.05 97.50 -601245.97 5680049.49 97.50 -601245.98 5676628.71 100.00 -601246.04 5677732.62 98.75 -601246.09 5681024.37 97.50 -601246.42 5679890.48 97.50 -601246.62 5678946.22 97.50 -601246.64 5679926.85 97.50 -601246.87 5677396.02 97.50 -601246.96 5681217.97 97.50 -601247.29 5680649.78 96.25 -601247.49 5680685.88 96.25 -601247.59 5679799.85 97.50 -601247.66 5680853.38 97.50 -601247.89 5680661.82 96.25 -601248.06 5679551.63 97.50 -601248.12 5680586.47 96.25 -601248.22 5681000.18 97.50 -601248.65 5677246.06 97.50 -601248.70 5681097.08 97.50 -601248.73 5680873.51 97.50 -601248.74 5679508.88 97.50 -601248.76 5680829.94 97.50 -601248.86 5681033.91 97.50 -601249.02 5677169.08 97.50 -601249.06 5681200.08 97.50 -601249.08 5678300.67 97.50 -601249.34 5681135.33 97.50 -601249.39 5679782.50 97.50 -601249.48 5680613.86 96.25 -601249.48 5679736.15 97.50 -601249.80 5679773.13 97.50 -601250.13 5679917.51 97.50 -601250.19 5680517.64 96.25 -601250.20 5680596.18 96.25 -601250.66 5679901.73 97.50 -601250.79 5678393.50 97.50 -601250.92 5679431.50 97.50 -601251.05 5680510.37 96.25 -601251.49 5680694.87 96.25 -601251.67 5679396.64 97.50 -601251.71 5681043.43 97.50 -601251.80 5680255.64 97.50 -601251.92 5677725.01 98.75 -601251.96 5680079.61 97.50 -601252.19 5680057.29 97.50 -601252.27 5680605.90 96.25 -601252.38 5679893.53 97.50 -601252.40 5680265.55 97.50 -601252.57 5680643.55 96.25 -601252.71 5680656.21 96.25 -601253.05 5677130.49 97.50 -601253.39 5676801.62 98.75 -601253.59 5678638.54 97.50 -601253.63 5679883.58 97.50 -601253.67 5681234.77 97.50 -601253.73 5679908.20 97.50 -601253.89 5676634.76 100.00 -601253.93 5677807.34 98.75 -601253.94 5681053.12 97.50 -601254.11 5680247.09 97.50 -601254.29 5680668.27 96.25 -601254.34 5677389.42 97.50 -601254.36 5681105.24 97.50 -601254.42 5680881.73 97.50 -601254.47 5680275.27 97.50 -601254.56 5676547.59 101.25 -601254.58 5681007.31 97.50 -601254.69 5680704.24 96.25 -601254.91 5678665.63 97.50 -601254.93 5680860.15 97.50 -601254.98 5679744.47 97.50 -601255.45 5678912.97 97.50 -601255.56 5681212.91 97.50 -601255.73 5681062.89 97.50 -601255.86 5678307.81 97.50 -601256.15 5679795.24 97.50 -601256.23 5679556.95 97.50 -601256.30 5678948.55 97.50 -601256.32 5680836.49 97.50 -601256.37 5679423.20 97.50 -601256.48 5677251.65 97.50 -601256.50 5680285.00 97.50 -601256.89 5681072.76 97.50 -601256.91 5680650.99 96.00 -601257.25 5677163.54 97.50 -601257.27 5681016.88 97.50 -601257.34 5680713.77 96.25 -601257.62 5679899.02 97.50 -601257.65 5678400.71 97.50 -601257.83 5680524.00 96.25 -601258.04 5680677.18 96.25 -601258.21 5679943.73 97.50 -601258.21 5679953.64 97.50 -601258.38 5680517.08 96.25 -601258.39 5681196.52 97.50 -601258.42 5680065.08 97.50 -601258.52 5680294.73 97.50 -601258.56 5679507.46 97.50 -601258.71 5680253.14 97.50 -601258.72 5681114.24 97.50 -601258.90 5681137.89 97.50 -601258.94 5681082.47 97.50 -601259.44 5680077.77 96.25 -601259.50 5680085.86 97.50 -601259.53 5680979.95 97.50 -601259.72 5681026.51 97.50 -601259.76 5679963.32 97.50 -601259.78 5677718.91 98.75 -601259.95 5679391.18 97.50 -601260.00 5680304.54 97.50 -601260.11 5679819.39 97.50 -601260.46 5679876.31 97.50 -601260.54 5680989.79 97.50 -601260.56 5678316.48 97.50 -601260.59 5680261.67 97.50 -601260.59 5680868.39 97.50 -601260.72 5679752.61 97.50 -601260.81 5680686.65 96.25 -601260.85 5678645.37 97.50 -601260.92 5680072.84 96.25 -601261.00 5680645.14 96.25 -601261.01 5680722.93 96.25 -601261.05 5680314.43 97.50 -601261.23 5679414.55 97.50 -601261.49 5680656.96 96.25 -601261.54 5680970.22 97.50 -601261.59 5680888.69 97.50 -601261.98 5677383.03 97.50 -601262.06 5679934.91 97.50 -601262.08 5680999.59 97.50 -601262.09 5680324.31 97.50 -601262.15 5677126.44 97.50 -601262.20 5679890.26 97.50 -601262.21 5680354.06 97.50 -601262.26 5680241.41 97.50 -601262.39 5676640.01 100.00 -601262.59 5680344.13 97.50 -601262.59 5681230.30 97.50 -601262.74 5679972.76 97.50 -601262.96 5680334.20 97.50 -601263.08 5681123.24 97.50 -601263.10 5678827.11 97.50 -601263.17 5679809.89 97.50 -601263.35 5676801.37 98.75 -601263.55 5679799.99 97.50 -601263.74 5677805.71 98.75 -601263.88 5680843.03 97.50 -601263.98 5680245.55 97.50 -601264.03 5676550.80 101.25 -601264.17 5680695.97 96.25 -601264.21 5678662.46 97.50 -601264.29 5681208.09 97.50 -601264.51 5678407.91 97.50 -601264.63 5680960.93 97.50 -601264.77 5681090.52 97.50 -601264.84 5678325.33 97.50 -601264.86 5678916.17 97.50 -601265.11 5681009.05 97.50 -601265.16 5680731.92 96.25 -601265.40 5681034.66 97.50 -601265.50 5680530.32 96.25 -601265.59 5680071.78 97.50 -601265.63 5678653.59 97.50 -601265.77 5680258.46 97.30 -601265.79 5677255.20 97.50 -601265.88 5681132.76 97.50 -601266.01 5678950.73 97.50 -601266.12 5679558.37 97.50 -601266.25 5680523.15 96.25 -601266.36 5680079.80 96.00 -601266.61 5677160.12 97.50 -601266.65 5680650.82 96.25 -601266.84 5679824.18 97.50 -601267.19 5680875.87 97.50 -601267.40 5680083.26 96.25 -601267.60 5679510.13 97.50 -601267.63 5677712.81 98.75 -601267.76 5679958.63 97.25 -601267.77 5679385.03 97.50 -601267.79 5680266.06 97.50 -601267.83 5681193.23 97.50 -601267.84 5680705.16 96.25 -601267.96 5678334.68 97.50 -601268.00 5679407.26 97.50 -601268.03 5678835.14 97.50 -601268.13 5679759.30 97.50 -601268.13 5679870.08 97.50 -601268.15 5681018.52 97.50 -601268.19 5680090.71 97.50 -601268.83 5679882.81 97.50 -601268.85 5679980.57 97.50 -601269.24 5680894.95 97.50 -601269.29 5680077.55 96.25 -601269.52 5680740.80 96.25 -601269.53 5680251.88 97.30 -601269.89 5677376.96 97.50 -601270.84 5680236.42 97.50 -601270.88 5676645.27 100.00 -601270.99 5677799.11 98.75 -601271.22 5679935.92 97.50 -601271.23 5680984.86 97.50 -601271.33 5677122.55 97.50 -601271.34 5681027.93 97.50 -601271.36 5681225.55 97.50 -601271.37 5680994.74 97.50 -601271.71 5681097.52 97.50 -601271.76 5680714.24 96.25 -601271.84 5678826.15 97.50 -601271.91 5680848.96 97.50 -601272.12 5680259.94 97.30 -601272.61 5680956.68 97.50 -601272.69 5678343.07 97.50 -601272.79 5680242.40 97.50 -601273.01 5680536.83 96.25 -601273.07 5681203.36 97.50 -601273.20 5676799.86 98.75 -601273.22 5678412.34 97.50 -601273.38 5680975.24 97.50 -601273.51 5681037.55 97.50 -601273.74 5679517.41 97.50 -601273.78 5676552.57 101.25 -601273.85 5677745.20 99.00 -601274.12 5679874.91 97.50 -601274.14 5680883.06 97.50 -601274.14 5680749.55 96.25 -601274.40 5678918.93 97.50 -601274.46 5681063.74 97.00 -601274.59 5680528.52 96.25 -601274.64 5679944.56 97.50 -601274.72 5680075.31 97.50 -601274.73 5681004.10 97.50 -601274.78 5679399.98 97.50 -601275.10 5680965.74 97.50 -601275.22 5677258.21 97.50 -601275.66 5677155.97 97.50 -601275.72 5678952.91 97.50 -601275.83 5677707.17 98.75 -601275.86 5679820.42 97.50 -601275.91 5679560.39 97.50 -601276.04 5679954.37 97.50 -601276.05 5678840.99 97.50 -601276.28 5680723.05 96.25 -601276.32 5681187.99 97.50 -601276.42 5680265.52 97.50 -601276.57 5680086.11 96.25 -601276.81 5680706.75 97.50 -601276.84 5679381.02 97.50 -601277.32 5679964.20 97.50 -601277.32 5679984.01 97.50 -601277.46 5680093.89 97.50 -601277.56 5677791.71 98.75 -601277.63 5679974.11 97.50 -601277.80 5677370.90 97.50 -601277.84 5679761.03 97.50 -601277.90 5681013.52 97.50 -601277.90 5680251.98 97.30 -601278.11 5680229.99 97.50 -601278.16 5680453.23 96.25 -601278.36 5680081.06 96.25 -601278.40 5680898.96 97.50 -601278.56 5679526.11 97.50 -601278.83 5681104.36 97.50 -601279.34 5677116.68 97.50 -601279.44 5680716.24 97.50 -601279.49 5678350.21 97.50 -601279.53 5680757.86 96.25 -601279.58 5676650.17 100.00 -601279.63 5680537.53 96.00 -601279.75 5680443.76 96.25 -601280.13 5681220.79 97.50 -601280.13 5680259.27 97.30 -601280.17 5680854.59 97.50 -601280.19 5680246.69 97.50 -601280.41 5680493.85 96.25 -601280.49 5680543.32 96.25 -601280.62 5680272.99 97.50 -601280.81 5678830.25 97.50 -601280.93 5680282.32 97.50 -601280.93 5680338.93 96.25 -601281.25 5681022.85 97.50 -601281.37 5678417.57 97.50 -601281.83 5680731.17 96.25 -601281.85 5681198.62 97.50 -601281.94 5679393.08 97.50 -601282.32 5680888.61 97.50 -601282.55 5680534.37 96.25 -601282.74 5680461.82 96.25 -601282.84 5677783.27 98.75 -601283.05 5676798.34 98.75 -601283.33 5680700.75 97.50 -601283.72 5679534.60 97.50 -601283.75 5676553.23 101.25 -601284.08 5680222.04 97.50 -601284.09 5677701.65 98.75 -601284.13 5679814.84 97.50 -601284.15 5678920.94 97.50 -601284.57 5677151.51 97.50 -601284.59 5678846.10 97.50 -601284.61 5680076.63 97.50 -601284.67 5680502.10 96.25 -601284.73 5681182.59 97.50 -601285.03 5680724.45 97.50 -601285.10 5681112.08 97.50 -601285.11 5679384.34 97.50 -601285.17 5677258.73 97.50 -601285.42 5678955.13 97.50 -601285.46 5677364.55 97.50 -601285.48 5680765.73 96.25 -601285.71 5679562.09 97.50 -601285.93 5679755.61 97.50 -601286.00 5681031.58 97.50 -601286.49 5680253.60 97.50 -601286.86 5678356.44 97.50 -601286.98 5680280.84 97.50 -601287.10 5680542.81 96.25 -601287.19 5677110.54 97.50 -601287.33 5680095.14 97.50 -601287.48 5680234.81 97.50 -601287.53 5680212.76 97.50 -601287.56 5680902.97 97.50 -601287.96 5680425.11 96.25 -601288.00 5677774.77 98.75 -601288.07 5678424.92 97.50 -601288.10 5680262.61 97.50 -601288.17 5680738.78 96.25 -601288.35 5676654.97 100.00 -601288.39 5680860.28 97.50 -601288.45 5680495.95 96.25 -601288.46 5680439.03 96.25 -601288.49 5680469.83 96.25 -601288.51 5680244.65 97.50 -601288.61 5680271.96 97.50 -601288.95 5680089.23 96.25 -601289.02 5680335.22 96.25 -601289.15 5678835.68 97.50 -601289.16 5681216.67 97.50 -601289.89 5680254.48 97.50 -601289.90 5681081.85 97.50 -601290.15 5680303.53 97.50 -601290.39 5680293.67 97.50 -601290.40 5680225.32 97.50 -601290.43 5679541.95 97.50 -601290.66 5681193.94 97.50 -601290.79 5680203.37 97.50 -601291.03 5680448.38 96.00 -601291.03 5680732.44 97.50 -601291.14 5680893.32 97.50 -601291.18 5681119.94 97.50 -601291.23 5681040.03 97.50 -601291.33 5680313.39 97.50 -601291.74 5681091.14 97.50 -601291.94 5680773.23 96.25 -601292.06 5680085.80 96.25 -601292.16 5680283.90 97.50 -601292.16 5680508.22 96.25 -601292.38 5680264.10 97.50 -601292.72 5680274.03 97.50 -601292.81 5677357.81 97.50 -601292.89 5677766.11 98.75 -601292.90 5676796.82 98.75 -601293.14 5678851.18 97.50 -601293.15 5681177.20 97.50 -601293.18 5677146.49 97.50 -601293.26 5677697.80 98.75 -601293.26 5680701.53 97.50 -601293.32 5680215.82 97.50 -601293.37 5680761.11 96.00 -601293.44 5679811.53 97.50 -601293.60 5680193.84 97.50 -601293.64 5680429.03 96.25 -601293.73 5676553.10 101.25 -601293.84 5677103.47 97.50 -601293.85 5679749.54 97.50 -601293.90 5678922.95 97.50 -601294.15 5680746.66 96.25 -601294.43 5680078.40 97.50 -601294.46 5679566.34 97.50 -601294.56 5678432.46 97.50 -601294.91 5680420.18 96.25 -601295.04 5677258.61 97.50 -601295.12 5678957.38 97.50 -601295.26 5681049.04 97.50 -601295.36 5680466.84 96.25 -601295.54 5681201.69 97.75 -601295.68 5680476.69 96.25 -601295.86 5681100.17 97.50 -601295.95 5680320.14 97.50 -601295.97 5680329.74 96.25 -601296.15 5680502.17 96.25 -601296.22 5678359.56 97.50 -601296.57 5680866.02 97.50 -601296.69 5680458.02 96.25 -601296.70 5680907.01 97.50 -601296.80 5680206.51 97.50 -601296.88 5680097.16 97.50 -601297.14 5679549.29 97.50 -601297.16 5680184.63 97.50 -601297.69 5681127.41 97.50 -601297.71 5680435.39 96.25 -601297.77 5680739.83 97.50 -601297.78 5677757.45 98.75 -601297.86 5680091.82 96.25 -601297.89 5676657.87 100.00 -601298.05 5678840.13 97.50 -601298.13 5677094.56 97.50 -601298.14 5681084.53 97.50 -601298.43 5681058.46 97.50 -601298.73 5681213.83 97.50 -601298.75 5680780.42 96.25 -601299.55 5681189.40 97.50 -601300.02 5680897.90 97.50 -601300.06 5680754.60 96.25 -601300.09 5680421.49 96.00 -601300.16 5677351.08 97.50 -601300.65 5680513.28 96.25 -601300.92 5679742.62 97.50 -601301.12 5680086.70 96.25 -601301.16 5678439.76 97.50 -601301.24 5680322.60 96.25 -601301.33 5681171.46 97.50 -601301.55 5677141.14 97.50 -601301.63 5680198.01 97.50 -601301.63 5680313.04 97.50 -601301.66 5681067.86 97.50 -601302.00 5680175.95 97.50 -601302.26 5681107.68 97.50 -601302.30 5680425.68 96.25 -601302.36 5678854.92 97.50 -601302.51 5677694.24 98.75 -601302.54 5679761.23 97.50 -601302.62 5679572.05 97.50 -601302.62 5680473.26 96.25 -601302.76 5676795.32 98.75 -601302.79 5680415.16 96.25 -601302.88 5680483.55 96.25 -601303.15 5679809.39 97.50 -601303.23 5680702.07 97.50 -601303.54 5677749.40 98.75 -601303.62 5678925.06 97.50 -601303.71 5676552.46 101.25 -601303.79 5680081.54 97.50 -601303.79 5680872.90 97.50 -601303.99 5679733.16 97.50 -601304.03 5681092.37 97.50 -601304.11 5680508.03 96.25 -601304.41 5680747.29 97.50 -601304.50 5677255.46 97.50 -601304.61 5680452.08 96.25 -601304.86 5679751.76 97.50 -601304.88 5678959.19 97.50 -601304.99 5681077.22 97.50 -601305.16 5680102.55 97.50 -601305.18 5677087.51 97.50 -601305.29 5679554.98 97.50 -601305.53 5681133.44 97.50 -601305.53 5680096.99 96.25 -601305.66 5677342.81 97.50 -601305.66 5678362.38 97.50 -601305.74 5680911.28 97.50 -601305.95 5680418.31 96.00 -601306.09 5680762.45 96.25 -601306.13 5680787.02 96.25 -601306.36 5679723.47 97.50 -601307.16 5678844.05 97.50 -601307.36 5681208.96 97.50 -601307.57 5680434.55 96.25 -601307.57 5676660.29 100.00 -601307.77 5679742.37 97.50 -601307.83 5681101.54 97.50 -601308.22 5680190.57 97.50 -601308.49 5681184.98 97.50 -601308.56 5681115.35 97.50 -601308.60 5680092.15 96.25 -601308.95 5680518.67 96.25 -601308.96 5680902.38 97.50 -601309.04 5677134.58 97.50 -601309.11 5680169.13 97.50 -601309.18 5681165.28 97.50 -601309.21 5679732.51 97.50 -601309.32 5679715.18 97.50 -601309.80 5681085.92 97.50 -601309.81 5680490.67 96.25 -601310.00 5680479.89 96.25 -601310.02 5677741.86 98.75 -601310.05 5679764.31 97.50 -601310.34 5680755.34 97.50 -601310.39 5680420.99 96.25 -601310.44 5678443.35 97.50 -601310.47 5679578.14 97.50 -601310.53 5680409.93 96.25 -601310.94 5677334.35 97.50 -601311.02 5680266.92 96.25 -601311.03 5680110.58 97.50 -601311.29 5680257.15 96.25 -601311.40 5679722.78 97.50 -601311.41 5680878.93 97.50 -601311.52 5680104.11 96.25 -601311.65 5680276.71 96.25 -601311.81 5680415.12 96.00 -601311.86 5678856.52 97.50 -601312.13 5680513.82 96.25 -601312.26 5680086.81 97.50 -601312.35 5677692.81 98.75 -601312.37 5677080.64 97.50 -601312.39 5680770.09 96.25 -601312.62 5676793.84 98.75 -601313.03 5680446.79 96.25 -601313.05 5681109.99 97.50 -601313.09 5679808.49 97.50 -601313.22 5680702.07 97.50 -601313.27 5679560.90 97.50 -601313.30 5680286.39 96.25 -601313.35 5678924.70 97.50 -601313.51 5680793.62 96.25 -601313.62 5681123.74 97.50 -601313.69 5676551.85 101.25 -601313.80 5680247.67 96.25 -601313.95 5677252.31 97.50 -601314.31 5681133.33 97.50 -601314.50 5680370.35 96.25 -601314.81 5678959.90 97.50 -601314.81 5680915.48 97.50 -601314.84 5680183.16 97.50 -601314.89 5677126.51 97.50 -601315.01 5678365.46 97.50 -601315.08 5681094.28 97.50 -601315.12 5680098.75 96.25 -601315.21 5680360.71 96.25 -601315.74 5681203.55 97.50 -601315.97 5680380.23 96.25 -601316.01 5680763.57 97.50 -601316.44 5677734.27 98.75 -601316.74 5678844.28 97.50 -601316.80 5680524.64 96.25 -601316.82 5680274.87 97.50 -601316.82 5680284.79 97.50 -601316.83 5680118.66 97.50 -601316.84 5677326.37 97.50 -601316.85 5680497.68 96.25 -601317.03 5680486.92 96.25 -601317.33 5680111.38 96.25 -601317.33 5676662.44 100.00 -601317.36 5680859.03 97.50 -601317.40 5679585.21 97.50 -601317.51 5680434.44 96.25 -601317.57 5681180.85 97.50 -601317.67 5680411.94 96.00 -601317.91 5680265.02 97.50 -601318.10 5681160.79 97.50 -601318.11 5680906.40 97.50 -601318.20 5680094.57 97.50 -601318.29 5680165.83 97.50 -601318.50 5680239.23 96.25 -601318.52 5680405.07 96.25 -601318.60 5681118.23 97.50 -601318.63 5680294.50 97.50 -601318.69 5680777.72 96.25 -601318.85 5680850.57 97.50 -601319.10 5680417.76 96.25 -601319.15 5680255.17 97.50 -601319.31 5679760.76 97.50 -601319.63 5680801.39 96.25 -601319.83 5678446.49 97.50 -601320.21 5680304.27 97.50 -601320.34 5680519.33 96.25 -601320.51 5677074.89 97.50 -601320.56 5680877.94 97.50 -601320.68 5680107.59 96.00 -601320.83 5680868.41 97.50 -601320.98 5679567.20 97.50 -601321.00 5680314.16 97.50 -601321.22 5680388.72 96.25 -601321.37 5677119.00 97.50 -601321.38 5680772.01 97.50 -601321.53 5680245.60 97.50 -601321.58 5680105.34 96.25 -601321.61 5681101.78 97.50 -601321.73 5678855.28 97.50 -601322.01 5680354.35 96.25 -601322.11 5677693.19 98.75 -601322.36 5680443.45 96.25 -601322.36 5677726.27 98.75 -601322.47 5676792.36 98.75 -601322.98 5680178.48 97.50 -601323.01 5679808.97 97.50 -601323.09 5678922.64 97.50 -601323.19 5680702.73 97.50 -601323.47 5679593.08 97.50 -601323.51 5677250.01 97.50 -601323.52 5677318.97 97.50 -601323.63 5676551.14 101.25 -601324.06 5680493.95 96.25 -601324.06 5680919.27 97.50 -601324.24 5681198.32 97.50 -601324.28 5680504.27 96.25 -601324.32 5678368.42 97.50 -601324.35 5680531.04 96.25 -601324.35 5680102.26 97.50 -601324.62 5680231.55 96.25 -601324.74 5678960.58 97.50 -601324.82 5680785.49 96.25 -601325.40 5680123.05 97.50 -601325.46 5680115.74 96.25 -601325.62 5680322.74 97.50 -601325.75 5680809.18 96.25 -601325.97 5679753.34 97.50 -601326.24 5680731.95 97.50 -601326.37 5681124.37 97.50 -601326.37 5678841.78 97.50 -601326.49 5680412.24 96.25 -601326.65 5681176.72 97.50 -601326.98 5680237.31 97.50 -601327.10 5681156.45 97.50 -601327.14 5676663.93 100.00 -601327.18 5680404.11 96.25 -601327.45 5680434.44 96.25 -601327.63 5680855.07 97.50 -601327.85 5680908.44 97.50 -601327.86 5680396.15 96.25 -601327.86 5677718.00 98.75 -601328.12 5680164.70 97.50 -601328.14 5681109.27 97.50 -601328.26 5680779.19 97.50 -601328.35 5680360.72 96.25 -601328.46 5680524.96 96.25 -601328.50 5679601.67 97.50 -601328.51 5677699.42 98.75 -601328.52 5677068.96 97.50 -601328.69 5679573.49 97.50 -601328.70 5677112.25 97.50 -601329.68 5678447.90 97.50 -601329.73 5680109.69 96.25 -601330.51 5677311.91 97.50 -601330.52 5680370.30 96.25 -601330.72 5680793.44 96.25 -601330.77 5677709.08 98.75 -601331.04 5680501.02 96.25 -601331.48 5678853.31 97.50 -601331.72 5680510.86 96.25 -601331.82 5679745.26 97.50 -601331.90 5680537.43 96.25 -601331.90 5680816.93 96.25 -601331.96 5680725.82 97.50 -601331.98 5680225.04 96.25 -601332.09 5680441.80 96.25 -601332.38 5676791.29 98.75 -601332.39 5680330.00 97.50 -601332.44 5680739.51 97.50 -601332.60 5679681.94 97.50 -601332.71 5680177.98 97.50 -601332.78 5681162.37 97.50 -601332.79 5681193.19 97.50 -601332.92 5679810.12 97.50 -601332.93 5678921.16 97.50 -601333.07 5676547.86 101.25 -601333.09 5679097.51 97.50 -601333.17 5680703.29 97.50 -601333.28 5680105.37 97.50 -601333.32 5680923.06 97.50 -601333.33 5680287.12 97.50 -601333.43 5677250.87 97.50 -601333.83 5679610.05 97.50 -601334.09 5678369.71 97.50 -601334.31 5680230.66 97.50 -601334.43 5680117.06 96.25 -601334.61 5680826.32 96.25 -601334.69 5678960.58 97.50 -601334.77 5681116.67 97.50 -601334.98 5681129.31 97.50 -601335.01 5679581.17 97.50 -601335.10 5680786.43 97.50 -601335.24 5680402.82 96.25 -601335.31 5680123.31 97.50 -601335.47 5680378.93 96.25 -601335.63 5680861.07 97.50 -601335.73 5681172.59 97.50 -601335.86 5678838.80 97.50 -601335.91 5679688.20 97.50 -601336.03 5681151.96 97.50 -601336.04 5677105.51 97.50 -601336.19 5677062.61 97.50 -601336.29 5680531.00 96.25 -601336.85 5679672.94 97.50 -601337.11 5676663.28 100.00 -601337.22 5679736.88 97.50 -601337.38 5680434.54 96.25 -601337.46 5680293.44 97.50 -601337.67 5680910.20 97.50 -601337.68 5679105.28 97.50 -601337.78 5680800.34 96.25 -601337.79 5680835.66 96.25 -601337.87 5680165.79 97.50 -601337.92 5680508.20 96.25 -601338.33 5677305.74 97.50 -601338.46 5680337.82 97.50 -601338.88 5680111.36 96.25 -601338.95 5680517.69 96.25 -601339.12 5680279.61 97.50 -601339.16 5681164.61 97.50 -601339.55 5678448.07 97.50 -601339.55 5680746.53 97.50 -601339.62 5679092.54 97.50 -601339.71 5680543.49 96.25 -601339.99 5679617.87 97.50 -601339.99 5681124.42 97.50 -601340.56 5681156.44 97.50 -601340.65 5680387.48 96.25 -601340.76 5680220.80 96.25 -601340.77 5680794.66 97.50 -601341.19 5678851.14 97.50 -601341.35 5681188.06 97.50 -601341.47 5679588.71 97.50 -601341.53 5680727.46 97.50 -601341.76 5680177.44 97.50 -601342.00 5680441.24 96.25 -601342.16 5679728.21 97.50 -601342.19 5680927.65 97.50 -601342.31 5676790.36 98.75 -601342.32 5679664.67 97.50 -601342.51 5676544.58 101.25 -601342.52 5680706.69 97.50 -601342.82 5678920.36 97.50 -601342.83 5679811.29 97.50 -601342.94 5680225.77 97.50 -601343.12 5677055.59 97.50 -601343.15 5677098.52 97.50 -601343.16 5680867.65 97.50 -601343.25 5680105.55 97.50 -601343.33 5677251.89 97.50 -601343.52 5680408.27 96.25 -601343.71 5679041.83 97.50 -601343.72 5680537.51 96.25 -601343.81 5679683.30 97.50 -601343.91 5678368.87 97.50 -601344.22 5680345.89 97.50 -601344.24 5680842.70 96.25 -601344.51 5680821.42 96.25 -601344.63 5678960.82 97.50 -601344.81 5681168.47 97.50 -601344.84 5680120.82 97.50 -601344.89 5681147.33 97.50 -601345.15 5680806.94 96.25 -601345.21 5679033.08 97.50 -601345.36 5678835.82 97.50 -601345.60 5680374.66 97.50 -601345.81 5679110.70 97.50 -601345.83 5680169.75 97.50 -601345.91 5680272.93 97.50 -601346.14 5679625.69 97.50 -601346.14 5680513.76 96.25 -601346.15 5680524.54 96.25 -601346.16 5677299.57 97.50 -601346.22 5679926.54 97.50 -601346.60 5680365.00 97.50 -601346.82 5680293.34 97.50 -601346.90 5679917.12 97.50 -601346.92 5680355.41 97.50 -601346.95 5679935.73 97.50 -601347.03 5680913.72 97.50 -601347.07 5676662.64 100.00 -601347.09 5680830.95 96.25 -601347.14 5680384.46 97.50 -601347.28 5680435.37 96.25 -601347.53 5680549.54 96.25 -601347.63 5679719.87 97.50 -601347.76 5679907.71 97.50 -601348.17 5679656.62 97.50 -601348.28 5680749.97 97.50 -601348.46 5680800.96 97.50 -601348.51 5677047.20 97.50 -601348.56 5681161.25 97.50 -601348.57 5679595.69 97.50 -601348.58 5679088.40 97.50 -601348.65 5680393.45 96.25 -601349.31 5680099.33 97.50 -601349.33 5680927.35 96.25 -601349.41 5681151.77 97.50 -601349.44 5678447.02 97.50 -601349.83 5679675.44 97.50 -601349.91 5680814.42 96.25 -601350.19 5677091.47 97.50 -601350.29 5680219.86 96.25 -601350.30 5680840.32 96.25 -601350.41 5681183.90 97.50 -601350.41 5679046.69 97.50 -601350.68 5680874.22 97.50 -601350.84 5678848.73 97.50 -601350.95 5680932.47 97.50 -601351.05 5680544.14 96.25 -601351.34 5679943.89 97.50 -601351.38 5680729.13 97.50 -601351.47 5679025.47 97.50 -601351.73 5680710.57 97.50 -601351.86 5676541.04 101.25 -601351.90 5680442.09 96.25 -601351.96 5679899.28 97.50 -601352.15 5676788.85 98.75 -601352.15 5680923.02 96.25 -601352.17 5680089.87 97.50 -601352.32 5679811.06 97.50 -601352.65 5678921.33 97.50 -601352.80 5680225.64 97.50 -601352.96 5677254.49 97.50 -601352.99 5680411.49 96.25 -601353.17 5679632.70 97.50 -601353.21 5677809.90 97.50 -601353.21 5681141.85 97.50 -601353.45 5680267.13 97.50 -601353.54 5678366.77 97.50 -601353.54 5680123.31 97.50 -601353.60 5677292.97 97.50 -601353.86 5677038.79 97.50 -601353.89 5681164.34 97.50 -601353.93 5680530.68 96.25 -601354.01 5679648.56 97.50 -601354.09 5679038.25 97.25 -601354.13 5680519.65 96.25 -601354.36 5677819.14 97.50 -601354.43 5680080.22 97.50 -601354.53 5678961.84 97.50 -601354.80 5678832.69 97.50 -601354.98 5680288.42 97.50 -601355.24 5679715.07 97.50 -601355.35 5680555.60 96.25 -601355.37 5680389.38 97.50 -601355.44 5679081.18 97.50 -601355.56 5679112.70 97.50 -601355.66 5679602.66 97.50 -601355.81 5680918.51 97.50 -601356.09 5680249.81 97.50 -601356.12 5677801.00 97.50 -601356.52 5680806.86 97.50 -601356.96 5679925.58 97.25 -601356.96 5679668.50 97.50 -601356.98 5680103.06 97.50 -601357.04 5676661.93 100.00 -601357.19 5680436.19 96.25 -601357.45 5681156.68 97.50 -601357.51 5677084.71 97.50 -601357.53 5680259.21 97.50 -601357.54 5680241.17 97.50 -601357.66 5680112.69 97.50 -601357.69 5680396.50 96.25 -601358.03 5680932.10 96.25 -601358.13 5680749.54 97.50 -601358.23 5680880.78 97.50 -601358.25 5681147.11 97.50 -601358.37 5680093.19 97.50 -601358.52 5678689.04 97.50 -601358.58 5679767.55 97.50 -601358.59 5678679.25 97.50 -601358.65 5679031.44 97.25 -601358.68 5679639.78 97.50 -601358.72 5680550.38 96.25 -601358.98 5677030.25 97.50 -601359.29 5678445.64 97.50 -601359.40 5679757.71 97.50 -601359.55 5681179.91 97.50 -601359.65 5680937.40 97.50 -601359.68 5679947.48 97.50 -601359.76 5679804.49 97.50 -601359.86 5680221.71 96.25 -601359.91 5680167.77 97.50 -601359.95 5679897.49 97.50 -601360.17 5680130.56 97.50 -601360.23 5678669.44 97.50 -601360.27 5679611.48 97.50 -601360.30 5679047.02 97.50 -601360.34 5678845.82 97.50 -601360.34 5680074.42 97.50 -601360.43 5678698.80 97.50 -601360.43 5679021.13 97.50 -601360.44 5677260.51 97.50 -601360.58 5677285.86 97.50 -601360.71 5680714.96 97.50 -601361.10 5676537.23 101.25 -601361.31 5680926.22 96.25 -601361.31 5680729.26 97.50 -601361.33 5677824.53 97.50 -601361.46 5680204.64 97.50 -601361.66 5680158.15 97.50 -601361.66 5680177.55 97.50 -601361.68 5681136.62 97.50 -601361.70 5680443.68 96.25 -601361.78 5677793.58 97.50 -601361.80 5680525.95 96.25 -601361.98 5676787.17 98.75 -601362.06 5680536.39 96.25 -601362.07 5680083.96 97.50 -601362.26 5678923.91 97.50 -601362.40 5678659.73 97.50 -601362.58 5679074.31 97.50 -601362.63 5680226.99 97.50 -601362.83 5680412.89 96.25 -601362.95 5679040.80 97.25 -601362.98 5681160.21 97.50 -601363.17 5680561.66 96.25 -601363.24 5680283.65 97.50 -601363.28 5678366.34 97.50 -601363.38 5679748.62 97.50 -601363.51 5680120.64 97.50 -601363.68 5679772.74 97.50 -601363.83 5679689.93 97.50 -601363.94 5678707.99 97.50 -601364.04 5677021.67 97.50 -601364.06 5678964.48 97.50 -601364.09 5679661.56 97.50 -601364.22 5678829.49 97.50 -601364.55 5680148.63 97.50 -601364.63 5680923.21 97.50 -601364.63 5680187.04 97.50 -601364.67 5680391.38 97.50 -601364.67 5678650.05 97.50 -601364.71 5677077.84 97.50 -601364.72 5679717.46 97.50 -601364.78 5679904.72 97.50 -601364.88 5680139.24 97.50 -601364.88 5679620.30 97.50 -601365.23 5679796.14 97.50 -601365.31 5679114.71 97.50 -601365.54 5680811.16 97.50 -601365.80 5680887.31 97.50 -601365.84 5680160.04 97.50 -601365.88 5677277.67 97.50 -601365.99 5680196.77 97.50 -601366.04 5680722.90 97.50 -601366.35 5681152.12 97.50 -601366.63 5680238.61 97.50 -601366.67 5680169.69 97.50 -601366.67 5677268.18 97.50 -601366.72 5679942.02 97.50 -601366.73 5680556.17 96.25 -601366.76 5678676.34 97.25 -601366.76 5679913.93 97.50 -601366.80 5676659.80 100.00 -601366.85 5678685.76 97.25 -601366.88 5680438.37 96.25 -601367.04 5680936.18 96.25 -601367.19 5681142.65 97.50 -601367.45 5677012.30 97.50 -601367.63 5679923.34 97.50 -601367.63 5680396.61 96.25 -601367.68 5680748.67 97.50 -601367.95 5679028.40 97.25 -601368.07 5680179.25 97.50 -601368.47 5680942.03 97.50 -601368.51 5679932.74 97.50 -601368.53 5678701.82 97.25 -601368.69 5681175.91 97.50 -601368.94 5678666.65 97.25 -601369.14 5679695.85 97.50 -601369.14 5678444.29 97.50 -601369.21 5677787.57 97.50 -601369.55 5680542.91 96.25 -601369.68 5678842.38 97.50 -601369.70 5679741.40 97.50 -601369.88 5680151.64 97.50 -601369.98 5679653.58 97.50 -601370.03 5680531.53 96.25 -601370.05 5679019.02 97.50 -601370.15 5679045.59 97.50 -601370.21 5679616.01 97.50 -601370.29 5680828.71 96.25 -601370.36 5680930.25 96.25 -601370.40 5678715.13 97.50 -601370.41 5676533.59 101.25 -601370.57 5680506.56 96.25 -601370.64 5681132.20 97.50 -601370.82 5680127.42 97.50 -601370.87 5677002.94 97.50 -601370.88 5677825.06 97.50 -601371.13 5679684.71 97.50 -601371.20 5680446.25 96.25 -601371.21 5680567.42 96.25 -601371.36 5677070.42 97.50 -601371.47 5680278.83 97.50 -601371.56 5679788.50 97.50 -601371.69 5680258.71 96.00 -601371.83 5678926.60 97.50 -601371.89 5676787.33 98.75 -601371.93 5679070.91 97.50 -601372.14 5681156.28 97.50 -601372.43 5680415.11 96.25 -601372.43 5680465.97 96.25 -601372.61 5679039.48 97.25 -601372.67 5679768.39 97.50 -601372.77 5678644.67 97.50 -601373.04 5678968.65 97.50 -601373.08 5678709.24 97.25 -601373.10 5678367.23 97.50 -601373.16 5678693.25 97.25 -601373.37 5680893.84 97.50 -601373.50 5680927.81 97.50 -601373.53 5678825.96 97.50 -601373.92 5680185.49 97.50 -601374.01 5680388.05 97.50 -601374.07 5680502.96 96.25 -601374.45 5678659.19 97.25 -601374.59 5679716.55 97.50 -601374.59 5679088.99 97.50 -601374.74 5680561.96 96.25 -601374.86 5676993.89 97.50 -601375.04 5680724.31 97.50 -601375.06 5679116.74 97.50 -601375.16 5680813.89 97.50 -601375.27 5681147.62 97.50 -601375.30 5680136.33 97.50 -601375.40 5680173.38 97.25 -601375.55 5679645.33 97.50 -601375.60 5680474.67 96.25 -601375.77 5679607.76 97.50 -601376.10 5680238.48 97.50 -601376.21 5680441.59 96.25 -601376.23 5681138.38 97.50 -601376.30 5680939.70 96.25 -601376.35 5680514.44 96.25 -601376.44 5680835.35 96.25 -601376.51 5680715.40 97.50 -601376.60 5677062.05 97.50 -601376.63 5678691.06 97.25 -601376.68 5676658.60 100.00 -601376.71 5680752.59 97.50 -601376.88 5680538.68 96.25 -601376.90 5677781.87 97.50 -601376.92 5680392.93 96.25 -601377.27 5679025.44 97.25 -601377.38 5680826.80 96.25 -601377.74 5680547.47 96.25 -601377.83 5681171.91 97.50 -601378.06 5680944.85 97.50 -601378.26 5679736.28 97.50 -601378.26 5680147.03 97.50 -601378.51 5679079.84 97.50 -601378.71 5679097.96 97.50 -601378.80 5679781.64 97.50 -601378.85 5679696.45 97.50 -601379.00 5678838.90 97.50 -601379.01 5680273.10 97.50 -601379.04 5678443.34 97.50 -601379.27 5680573.15 96.25 -601379.54 5680933.94 96.25 -601379.59 5679761.34 97.50 -601379.70 5680733.16 97.50 -601379.70 5681127.98 97.50 -601379.77 5678699.27 97.25 -601379.77 5676530.08 101.25 -601379.83 5678681.69 97.25 -601379.84 5680451.16 96.25 -601379.93 5679017.77 97.50 -601379.95 5677822.36 97.50 -601380.00 5679044.17 97.50 -601380.04 5678713.85 97.50 -601380.59 5678663.09 97.25 -601380.60 5679682.48 97.50 -601380.68 5678931.17 97.50 -601380.70 5680464.43 96.25 -601380.74 5676985.84 97.50 -601380.94 5677053.08 97.50 -601381.12 5679637.09 97.50 -601381.29 5679067.51 97.50 -601381.33 5679599.50 97.50 -601381.38 5681152.52 97.50 -601381.46 5678973.96 97.50 -601381.47 5680419.35 96.25 -601381.57 5680160.33 97.50 -601381.75 5680899.21 97.50 -601381.84 5676788.05 98.75 -601381.93 5680508.79 96.25 -601382.10 5678646.08 97.50 -601382.17 5679037.41 97.25 -601382.47 5678821.61 97.50 -601382.49 5680568.10 96.25 -601382.63 5678707.60 97.25 -601382.67 5680834.88 96.00 -601382.76 5678672.58 97.25 -601382.78 5680141.75 97.50 -601382.95 5678367.61 97.50 -601383.06 5680930.62 97.50 -601383.27 5680384.50 97.50 -601383.41 5680184.23 97.50 -601383.45 5680480.55 96.25 -601383.71 5680520.95 96.25 -601384.20 5681143.13 97.50 -601384.29 5679714.28 97.50 -601384.60 5679119.46 97.50 -601384.65 5677776.28 97.50 -601384.68 5680168.72 97.50 -601384.69 5680758.58 97.50 -601384.80 5680709.88 97.50 -601384.84 5680813.29 97.50 -601384.85 5679773.88 97.50 -601385.00 5678695.07 97.50 -601385.05 5680839.73 96.25 -601385.13 5680741.37 97.50 -601385.16 5680241.16 97.50 -601385.22 5680445.77 96.25 -601385.24 5681134.04 97.50 -601385.24 5679073.84 97.50 -601385.27 5680152.44 97.50 -601385.40 5677044.17 97.50 -601385.42 5680266.03 97.50 -601385.62 5678688.65 97.50 -601385.73 5680942.73 96.25 -601385.82 5680831.47 96.25 -601386.21 5680389.25 96.25 -601386.35 5679764.60 97.50 -601386.66 5676658.07 100.00 -601386.68 5679628.84 97.50 -601386.96 5681167.89 97.50 -601386.99 5679024.33 97.25 -601387.04 5679591.36 97.50 -601387.18 5679731.83 97.50 -601387.33 5680578.88 96.25 -601387.41 5677034.48 97.50 -601387.49 5676978.64 97.50 -601387.61 5680947.80 97.50 -601387.87 5679100.08 97.50 -601388.04 5678834.75 97.50 -601388.04 5680456.60 96.25 -601388.27 5680470.01 96.25 -601388.50 5680177.02 97.50 -601388.58 5679696.24 97.50 -601388.77 5678444.63 97.50 -601388.87 5680399.83 96.00 -601388.90 5681124.05 97.50 -601388.93 5677819.08 97.50 -601389.03 5680936.78 96.25 -601389.05 5678980.30 97.50 -601389.22 5676526.82 101.25 -601389.36 5677024.72 97.50 -601389.42 5677797.67 97.25 -601389.44 5678711.10 97.50 -601389.46 5678699.89 97.25 -601389.52 5678935.74 97.50 -601389.58 5678652.21 97.50 -601389.75 5679042.36 97.50 -601389.80 5679016.51 97.50 -601389.81 5680257.68 97.50 -601389.90 5680514.49 96.25 -601389.97 5679679.84 97.50 -601390.10 5678679.97 97.50 -601390.49 5680904.07 97.50 -601390.52 5680423.59 96.25 -601390.53 5680248.41 97.50 -601390.54 5680573.81 96.25 -601390.63 5681148.76 97.50 -601390.91 5679065.05 97.50 -601390.92 5680486.91 96.25 -601391.26 5680527.21 96.25 -601391.61 5676789.82 98.75 -601391.64 5680139.70 97.50 -601391.69 5679035.15 97.25 -601391.77 5680483.02 96.00 -601391.87 5678843.23 97.50 -601392.17 5680520.45 96.00 -601392.26 5677015.21 97.50 -601392.38 5678370.25 97.50 -601392.41 5678706.26 97.25 -601392.45 5679620.73 97.50 -601392.49 5680380.82 97.50 -601392.63 5680933.50 97.50 -601392.81 5677771.31 97.50 -601392.97 5679583.37 97.50 -601393.13 5681138.63 97.50 -601393.36 5678660.90 97.50 -601393.47 5680808.42 97.50 -601393.48 5680762.47 97.50 -601393.52 5679123.54 97.50 -601393.61 5678670.66 97.50 -601393.62 5680742.27 97.50 -601393.66 5679716.62 97.50 -601393.87 5680843.72 96.25 -601393.93 5680836.76 96.25 -601394.22 5681129.64 97.50 -601394.36 5680706.95 97.50 -601394.37 5680395.34 96.00 -601394.48 5680449.38 96.25 -601394.55 5680464.11 96.25 -601394.67 5679725.76 97.50 -601394.74 5680477.39 96.25 -601394.78 5679071.01 97.50 -601394.92 5678694.40 97.50 -601395.10 5680155.97 97.50 -601395.20 5680945.65 96.25 -601395.30 5680584.73 96.25 -601395.39 5676972.56 97.50 -601395.50 5680385.56 96.25 -601395.70 5678851.71 97.50 -601396.09 5681163.87 97.50 -601396.09 5678987.34 97.50 -601396.23 5680202.29 97.50 -601396.51 5679687.89 97.30 -601396.53 5677006.22 97.50 -601396.64 5676658.20 100.00 -601396.72 5679023.23 97.25 -601396.76 5680951.82 97.50 -601397.63 5679101.81 97.50 -601397.78 5680493.91 96.25 -601397.90 5677815.75 97.50 -601397.93 5678448.15 97.50 -601397.99 5680400.12 96.00 -601398.09 5681120.13 97.50 -601398.25 5679695.19 97.50 -601398.30 5680519.58 96.25 -601398.49 5679612.83 97.50 -601398.53 5680939.61 96.25 -601398.58 5678939.80 97.50 -601398.61 5680132.64 97.50 -601398.65 5680489.75 96.00 -601398.89 5679575.37 97.50 -601398.92 5676524.49 101.25 -601399.06 5679038.83 97.50 -601399.07 5680525.44 96.00 -601399.08 5680578.81 96.25 -601399.08 5680211.43 97.50 -601399.22 5680147.08 97.50 -601399.31 5680908.75 97.50 -601399.34 5680532.80 96.25 -601399.38 5678711.53 97.50 -601399.39 5678699.56 97.25 -601399.41 5679677.52 97.50 -601399.53 5680427.91 96.25 -601399.53 5678860.19 97.50 -601399.63 5679131.40 97.50 -601399.66 5679015.18 97.50 -601399.75 5681144.72 97.50 -601400.37 5680162.74 97.50 -601400.42 5678375.31 97.50 -601400.57 5680942.49 96.00 -601400.65 5679062.99 97.50 -601400.86 5680801.78 97.50 -601401.05 5680484.90 96.25 -601401.21 5679032.90 97.25 -601401.26 5680471.44 96.25 -601401.30 5680758.30 97.50 -601401.36 5676791.80 98.75 -601401.53 5680740.42 97.50 -601401.64 5680377.00 97.50 -601401.66 5677767.87 97.50 -601401.87 5681133.78 97.50 -601402.08 5680195.77 97.50 -601402.08 5676997.94 97.50 -601402.18 5678706.94 97.25 -601402.18 5680841.85 96.25 -601402.18 5680936.46 97.50 -601402.38 5679026.28 97.00 -601402.50 5680848.12 96.25 -601402.72 5677523.63 98.75 -601403.19 5681125.25 97.50 -601403.21 5680590.67 96.25 -601403.28 5676966.48 97.50 -601403.37 5678868.67 97.50 -601403.47 5680393.83 96.00 -601403.77 5680452.92 96.25 -601404.06 5680704.60 97.50 -601404.13 5678993.12 97.50 -601404.33 5680501.21 96.25 -601404.47 5679567.15 97.50 -601404.53 5679604.92 97.50 -601404.53 5680124.65 97.50 -601404.64 5679069.68 97.50 -601404.67 5680948.57 96.25 -601404.84 5678694.03 97.50 -601404.93 5680749.22 97.50 -601404.96 5677533.24 98.75 -601405.21 5681159.84 97.50 -601405.29 5680383.88 96.25 -601405.52 5680496.48 96.00 -601405.74 5679139.25 97.50 -601405.89 5680894.38 97.50 -601405.96 5680530.43 96.00 -601406.03 5680139.82 97.50 -601406.12 5678453.78 97.50 -601406.40 5680954.29 97.50 -601406.44 5679022.12 97.25 -601406.45 5680525.06 96.25 -601406.60 5677811.83 97.50 -601406.61 5676658.75 100.00 -601406.73 5678382.88 97.50 -601407.07 5680584.59 96.25 -601407.17 5680885.95 97.50 -601407.18 5679104.63 97.50 -601407.20 5678877.15 97.50 -601407.24 5680400.51 96.00 -601407.28 5681116.19 97.50 -601407.35 5680492.43 96.25 -601407.56 5679692.47 97.50 -601407.64 5680538.05 96.25 -601407.68 5677515.22 98.75 -601408.04 5678942.45 97.50 -601408.10 5680478.66 96.25 -601408.28 5678316.57 97.50 -601408.35 5680940.89 96.25 -601408.41 5680795.47 97.50 -601408.43 5680432.45 96.25 -601408.56 5678306.83 97.50 -601408.59 5680912.48 97.50 -601408.61 5678713.43 97.50 -601408.72 5680213.92 97.50 -601408.76 5676990.63 97.50 -601408.81 5676523.73 101.25 -601408.83 5680944.88 96.00 -601408.87 5681140.68 97.50 -601408.87 5679037.20 97.50 -601408.89 5680470.82 96.25 -601408.95 5679677.66 97.50 -601409.03 5679011.82 97.50 -601409.05 5678700.81 97.25 -601409.31 5679558.46 97.50 -601409.46 5680189.72 97.50 -601409.75 5680165.89 97.50 -601410.03 5680463.02 96.25 -601410.27 5679060.46 97.50 -601410.40 5678297.11 97.50 -601410.49 5681128.72 97.50 -601410.53 5679596.98 97.50 -601410.71 5678885.76 97.50 -601410.74 5679030.66 97.25 -601410.79 5680373.25 97.50 -601410.89 5680508.51 96.25 -601410.98 5680845.89 96.25 -601411.11 5680596.62 96.25 -601411.18 5677768.11 97.50 -601411.20 5676793.40 98.75 -601411.24 5678711.02 97.25 -601411.30 5680123.16 97.50 -601411.32 5680852.11 96.25 -601411.47 5679548.84 97.50 -601411.59 5677540.31 98.75 -601411.87 5679147.10 97.50 -601412.09 5680937.77 97.50 -601412.27 5676962.17 97.50 -601412.32 5680564.97 96.25 -601412.44 5680901.59 97.50 -601412.45 5680503.15 96.00 -601412.52 5681121.69 97.50 -601412.67 5678998.11 97.50 -601412.73 5680393.43 96.00 -601412.79 5680132.79 97.50 -601412.87 5677506.82 98.75 -601412.87 5679685.32 97.50 -601412.89 5678287.53 97.50 -601412.93 5680535.30 96.00 -601413.08 5680456.39 96.25 -601413.15 5678460.76 97.50 -601413.53 5678323.72 97.50 -601413.81 5680499.79 96.25 -601413.83 5678389.70 97.50 -601413.94 5680703.12 97.50 -601413.97 5678721.81 97.50 -601414.17 5678894.40 97.50 -601414.21 5680574.14 96.25 -601414.24 5680762.40 97.50 -601414.27 5680951.00 96.25 -601414.31 5680486.37 96.25 -601414.34 5681155.82 97.50 -601414.51 5679068.36 97.50 -601414.55 5680530.63 96.25 -601414.67 5678695.52 97.50 -601414.77 5680590.80 96.25 -601414.91 5676982.91 97.50 -601414.99 5677807.24 97.50 -601415.03 5680181.44 97.50 -601415.22 5680382.78 96.25 -601415.59 5678310.78 97.25 -601415.95 5680543.30 96.25 -601416.09 5679020.52 97.25 -601416.25 5680955.94 97.50 -601416.29 5678278.27 97.50 -601416.31 5679006.96 97.50 -601416.41 5680477.32 96.25 -601416.47 5681112.25 97.50 -601416.48 5679589.01 97.50 -601416.49 5676659.86 100.00 -601416.50 5680400.45 96.00 -601416.61 5678707.06 97.25 -601416.72 5680885.91 97.50 -601416.72 5679107.45 97.50 -601416.81 5680101.45 97.50 -601416.91 5680171.95 97.50 -601417.18 5680946.85 96.00 -601417.33 5680436.98 96.25 -601417.44 5679540.87 97.50 -601417.61 5680791.60 97.50 -601417.70 5678940.06 97.50 -601417.73 5677498.23 98.75 -601417.86 5680916.21 97.50 -601417.99 5678718.17 97.25 -601417.99 5681136.64 97.50 -601418.02 5678902.85 97.50 -601418.10 5680942.62 96.25 -601418.21 5680466.88 96.25 -601418.25 5680514.99 96.25 -601418.32 5678302.10 97.25 -601418.66 5679035.43 97.50 -601418.67 5680214.28 97.50 -601418.78 5676524.42 101.25 -601419.00 5680602.59 96.25 -601419.31 5679153.57 97.50 -601419.33 5680111.10 97.50 -601419.50 5681124.41 97.50 -601419.60 5680509.58 96.00 -601419.62 5680768.58 97.50 -601419.80 5679057.58 97.50 -601419.86 5677772.13 97.50 -601419.88 5678468.09 97.50 -601419.96 5678318.70 97.50 -601420.00 5678729.72 97.50 -601420.08 5680539.91 96.00 -601420.11 5676965.30 97.50 -601420.12 5680494.42 96.25 -601420.21 5676975.03 97.50 -601420.27 5680855.80 96.25 -601420.28 5679028.49 97.25 -601420.29 5680848.50 96.25 -601420.40 5680374.82 97.50 -601420.72 5680450.97 96.25 -601420.82 5678269.61 97.50 -601420.98 5680906.54 97.50 -601420.99 5677542.69 98.75 -601421.00 5679531.82 97.50 -601421.01 5676795.20 98.75 -601421.01 5680506.46 96.25 -601421.04 5678293.41 97.25 -601421.12 5680568.69 96.25 -601421.14 5678396.32 97.50 -601421.19 5680757.40 97.50 -601421.51 5680019.82 97.50 -601421.61 5680461.39 96.25 -601421.86 5680393.96 96.00 -601422.00 5680939.04 97.50 -601422.01 5681118.57 97.50 -601422.07 5680120.70 97.50 -601422.20 5680009.94 97.50 -601422.25 5680579.78 96.25 -601422.28 5679580.95 97.50 -601422.44 5678715.07 97.25 -601422.56 5678910.97 97.50 -601422.58 5680536.28 96.25 -601422.89 5677801.92 97.50 -601422.95 5678701.03 97.50 -601423.02 5680596.19 96.25 -601423.06 5679522.08 97.50 -601423.24 5678309.38 97.50 -601423.26 5680000.04 97.50 -601423.31 5681151.45 97.50 -601423.49 5677490.24 98.75 -601423.57 5680250.35 97.50 -601423.87 5678726.15 97.25 -601423.89 5680702.18 97.50 -601424.05 5680029.26 97.50 -601424.12 5680950.79 96.25 -601424.18 5678284.88 97.25 -601424.24 5679066.27 97.50 -601424.25 5680548.55 96.25 -601424.30 5680620.24 97.50 -601424.38 5680458.62 96.25 -601424.83 5680130.29 97.50 -601424.88 5680482.48 96.25 -601424.90 5680385.13 96.25 -601425.00 5680730.19 96.25 -601425.11 5680259.39 97.50 -601425.22 5679017.23 97.25 -601425.59 5679571.57 97.50 -601425.59 5678476.21 97.50 -601425.66 5681108.32 97.50 -601425.67 5680399.16 96.00 -601425.73 5680947.75 96.00 -601425.75 5680521.33 96.25 -601425.92 5680442.00 96.25 -601426.05 5678737.61 97.50 -601426.05 5676662.74 100.00 -601426.10 5680469.30 96.25 -601426.20 5680956.89 97.50 -601426.27 5679110.27 97.50 -601426.28 5678299.97 97.50 -601426.57 5679512.80 97.50 -601426.63 5680887.17 97.50 -601426.81 5680515.95 96.00 -601426.94 5677778.44 97.50 -601427.06 5678936.69 97.50 -601427.07 5679051.16 97.50 -601427.10 5678919.09 97.50 -601427.11 5680578.09 96.00 -601427.16 5680788.64 97.50 -601427.23 5680544.52 96.00 -601427.26 5680501.33 96.25 -601427.27 5680919.55 97.50 -601427.41 5679159.35 97.50 -601427.43 5680607.69 96.25 -601427.47 5681133.75 97.50 -601427.59 5680139.87 97.50 -601427.84 5680944.07 96.25 -601427.84 5678276.55 97.25 -601427.85 5680629.27 97.50 -601428.03 5678262.84 97.50 -601428.20 5680567.21 97.50 -601428.21 5680513.13 96.25 -601428.29 5679035.45 97.50 -601428.42 5680212.14 97.50 -601428.47 5680723.81 96.25 -601428.63 5681120.33 97.50 -601428.68 5676525.51 101.25 -601428.87 5678402.41 97.50 -601428.93 5680379.88 97.50 -601429.02 5679562.24 97.50 -601429.06 5678927.60 97.50 -601429.17 5677794.99 97.50 -601429.21 5680574.44 96.25 -601429.35 5678722.21 97.25 -601429.51 5680149.66 97.50 -601429.52 5680851.40 96.25 -601429.55 5680769.71 97.50 -601429.56 5677482.45 98.75 -601429.66 5680857.38 96.25 -601429.67 5680452.67 96.25 -601429.77 5678708.04 97.50 -601429.82 5679026.32 97.25 -601429.97 5680268.03 97.50 -601430.15 5678733.77 97.25 -601430.16 5678290.87 97.50 -601430.23 5680910.33 97.50 -601430.35 5678484.82 97.50 -601430.61 5680541.94 96.25 -601430.69 5680760.21 97.50 -601430.79 5677542.61 98.75 -601430.89 5676795.84 98.75 -601431.10 5680584.26 96.25 -601431.11 5680458.80 96.00 -601431.24 5681114.83 97.50 -601431.35 5680159.47 97.50 -601431.60 5679504.68 97.50 -601431.62 5680601.08 96.25 -601431.91 5680940.37 97.50 -601432.03 5680464.60 96.25 -601432.04 5679043.19 97.50 -601432.09 5677786.36 97.50 -601432.17 5681146.88 97.50 -601432.36 5680249.11 97.50 -601432.36 5680441.71 96.00 -601432.52 5680553.84 96.25 -601432.63 5678745.07 97.50 -601432.76 5678494.47 97.50 -601432.79 5680494.57 96.00 -601433.03 5677259.11 97.50 -601433.12 5680027.27 97.50 -601433.38 5680527.48 96.25 -601433.50 5678269.48 97.25 -601433.51 5679553.35 97.50 -601433.51 5680637.50 97.50 -601433.57 5680448.43 96.25 -601433.64 5680487.15 96.25 -601433.70 5680620.35 97.50 -601433.77 5677894.40 98.75 -601433.83 5680701.09 97.50 -601433.97 5679064.17 97.50 -601434.00 5677884.73 98.75 -601434.01 5680951.31 96.25 -601434.09 5679013.09 97.25 -601434.15 5680732.07 96.25 -601434.23 5680522.05 96.00 -601434.31 5680948.44 96.00 -601434.38 5680549.12 96.00 -601434.45 5680432.46 96.00 -601434.53 5678282.04 97.50 -601434.53 5680276.84 97.50 -601434.56 5680387.68 96.25 -601434.64 5680168.85 97.50 -601434.67 5680565.02 97.50 -601434.78 5680573.41 97.50 -601435.17 5678504.12 97.50 -601435.23 5680507.03 96.25 -601435.25 5681106.03 97.50 -601435.26 5679114.44 97.50 -601435.46 5678716.20 97.50 -601435.62 5676665.61 100.00 -601435.89 5680783.90 97.50 -601436.09 5678729.50 97.25 -601436.13 5678257.17 97.50 -601436.15 5680206.21 97.50 -601436.16 5680957.72 97.50 -601436.20 5680518.82 96.25 -601436.21 5677903.48 98.75 -601436.21 5680612.23 96.25 -601436.44 5680889.11 97.50 -601436.57 5677875.32 98.75 -601436.63 5678408.40 97.50 -601436.88 5680922.29 97.50 -601436.92 5679162.18 97.50 -601437.04 5677476.46 98.75 -601437.13 5678740.85 97.25 -601437.26 5681131.83 97.50 -601437.26 5680458.50 96.25 -601437.38 5678513.82 97.50 -601437.43 5680775.10 97.50 -601437.47 5680579.95 96.25 -601437.59 5680945.31 96.25 -601437.60 5680720.84 96.25 -601437.75 5681116.25 97.50 -601437.87 5680571.52 97.75 -601437.89 5680464.40 96.00 -601437.99 5679544.47 97.50 -601438.16 5680382.71 97.50 -601438.22 5676528.48 101.25 -601438.43 5680178.08 97.50 -601438.54 5677265.36 97.50 -601438.66 5680547.56 96.25 -601438.88 5677252.14 97.50 -601439.05 5678523.62 97.50 -601439.21 5680285.58 97.50 -601439.31 5679023.97 97.25 -601439.34 5680645.61 97.50 -601439.43 5678262.58 97.25 -601439.65 5680470.61 96.25 -601439.73 5678751.86 97.50 -601439.85 5677866.19 98.75 -601439.89 5680912.83 97.50 -601439.92 5680764.07 97.50 -601439.93 5681109.89 97.50 -601440.00 5680588.66 96.25 -601440.31 5679499.86 97.50 -601440.40 5680605.62 96.25 -601440.40 5678274.07 97.50 -601440.43 5680197.48 97.50 -601440.59 5680436.30 96.00 -601440.63 5677541.76 98.75 -601440.63 5680187.74 97.50 -601440.67 5680499.83 96.00 -601440.72 5678533.43 97.50 -601440.79 5680559.16 96.25 -601440.84 5676795.30 98.75 -601440.94 5680424.97 96.00 -601441.04 5681142.30 97.50 -601441.55 5680022.11 97.50 -601441.58 5680532.87 96.25 -601441.58 5680252.53 97.50 -601441.69 5680454.23 96.25 -601441.84 5680941.49 97.50 -601441.98 5678723.62 97.50 -601442.07 5680527.62 96.00 -601442.30 5677910.59 98.75 -601442.39 5678543.23 97.50 -601442.54 5678416.29 97.50 -601442.73 5680491.17 96.25 -601442.77 5680949.78 96.00 -601442.92 5680624.01 97.50 -601442.94 5679059.87 97.50 -601443.10 5680654.88 97.50 -601443.10 5679009.56 97.25 -601443.40 5680568.65 97.50 -601443.42 5678736.04 97.25 -601443.46 5679536.19 97.50 -601443.52 5680576.99 97.50 -601443.79 5680700.21 97.50 -601443.84 5680952.49 96.25 -601443.99 5680732.71 96.25 -601444.02 5680390.90 96.25 -601444.02 5679119.16 97.50 -601444.05 5680465.43 96.25 -601444.24 5680524.44 96.25 -601444.25 5680511.22 96.25 -601444.26 5677857.49 98.75 -601444.56 5680617.50 96.25 -601444.63 5680446.66 96.25 -601444.67 5680469.99 96.00 -601444.71 5678747.24 97.25 -601444.93 5680440.19 96.25 -601444.96 5678253.91 97.50 -601445.19 5676668.49 100.00 -601445.26 5680293.43 97.50 -601445.93 5680866.04 97.50 -601446.01 5678552.40 97.50 -601446.03 5677472.37 98.75 -601446.12 5680958.55 97.50 -601446.31 5680834.93 97.50 -601446.32 5680890.11 97.50 -601446.44 5680584.22 96.25 -601446.61 5678266.37 97.50 -601446.66 5681111.73 97.50 -601446.68 5680921.74 97.50 -601446.69 5679164.05 97.50 -601446.72 5680477.26 96.25 -601446.72 5680553.19 96.25 -601446.83 5680664.15 97.50 -601447.04 5681129.85 97.50 -601447.14 5680947.95 96.25 -601447.22 5676532.83 101.25 -601447.33 5677246.98 97.50 -601447.36 5680720.76 96.25 -601447.64 5680429.27 96.00 -601448.04 5680383.50 97.50 -601448.05 5680874.19 97.50 -601448.32 5677266.46 97.50 -601448.49 5678424.15 97.50 -601448.58 5678756.40 97.50 -601448.63 5680015.27 97.50 -601448.65 5679021.05 97.25 -601448.67 5680418.68 96.00 -601448.80 5680504.64 96.00 -601448.96 5680592.96 96.25 -601449.03 5677849.01 98.75 -601449.04 5680564.48 96.25 -601449.20 5680767.28 97.50 -601449.24 5680825.92 97.50 -601449.26 5679528.10 97.50 -601449.26 5680610.02 96.25 -601449.34 5680915.56 97.50 -601449.45 5678730.18 97.50 -601449.64 5680538.44 96.25 -601449.91 5680533.20 96.00 -601450.04 5679498.55 97.50 -601450.05 5677539.40 98.75 -601450.17 5680458.65 96.25 -601450.21 5681138.38 97.50 -601450.23 5680257.39 97.50 -601450.28 5680574.55 97.50 -601450.31 5677505.90 99.00 -601450.46 5678561.30 97.50 -601450.79 5676794.77 98.75 -601451.09 5679054.59 97.50 -601451.09 5680951.97 96.00 -601451.10 5680604.54 96.25 -601451.10 5680945.13 97.50 -601451.14 5679012.82 97.25 -601451.40 5680301.23 97.50 -601451.45 5680475.57 96.00 -601451.57 5680599.39 96.25 -601451.61 5678258.46 97.50 -601451.68 5680628.83 97.50 -601451.71 5680495.38 96.25 -601451.80 5680909.01 97.50 -601451.89 5677912.02 98.75 -601451.96 5678741.11 97.25 -601452.16 5680530.22 96.25 -601452.39 5680470.22 96.25 -601452.40 5679124.54 97.50 -601452.70 5680859.08 97.50 -601452.71 5680623.11 96.25 -601452.85 5680727.27 95.90 -601452.90 5680672.05 97.50 -601452.97 5678752.48 97.25 -601452.98 5680452.15 96.25 -601452.99 5680006.39 97.50 -601453.22 5680515.48 96.25 -601453.38 5680954.99 96.25 -601453.42 5678432.64 97.50 -601453.47 5680839.68 97.50 -601453.75 5680699.42 97.50 -601453.80 5680733.77 96.25 -601453.81 5680110.01 97.50 -601453.86 5680391.87 96.25 -601453.98 5680903.25 97.50 -601454.16 5680483.47 96.25 -601454.50 5680589.74 96.25 -601454.65 5680422.19 96.00 -601454.71 5680442.24 96.25 -601454.75 5677841.11 98.75 -601454.78 5676671.25 100.00 -601455.00 5680558.47 96.25 -601455.16 5678570.06 97.50 -601455.30 5677468.98 98.75 -601455.44 5681106.95 97.50 -601455.77 5679996.85 97.50 -601455.80 5679521.68 97.50 -601455.93 5680960.43 97.50 -601455.93 5677242.06 97.50 -601456.05 5680100.31 97.50 -601456.24 5676537.12 101.25 -601456.31 5680889.70 97.50 -601456.51 5679165.65 97.50 -601456.55 5680412.60 96.00 -601456.59 5680950.90 96.25 -601456.68 5679046.35 97.50 -601456.78 5680819.48 97.50 -601456.78 5681127.71 97.50 -601456.81 5680545.13 96.25 -601457.05 5680570.17 96.25 -601457.15 5680722.04 96.25 -601457.23 5680117.07 97.50 -601457.32 5680871.74 97.50 -601457.41 5680508.58 96.00 -601457.61 5680308.96 97.50 -601457.71 5678760.28 97.50 -601457.93 5680384.38 97.50 -601458.02 5680614.61 96.25 -601458.14 5677265.13 97.50 -601458.14 5680464.48 96.25 -601458.20 5678734.63 97.50 -601458.24 5680481.16 96.00 -601458.29 5680090.61 97.50 -601458.49 5680262.86 97.50 -601458.53 5679147.88 96.25 -601458.92 5679112.83 97.50 -601458.95 5677535.12 98.75 -601458.95 5680765.07 97.50 -601459.29 5680679.73 97.50 -601459.32 5678988.05 97.50 -601459.41 5678440.41 97.50 -601459.43 5681134.59 97.50 -601459.51 5679036.88 97.50 -601459.62 5680501.39 96.25 -601459.64 5680476.53 96.25 -601459.87 5679498.78 97.50 -601460.09 5680536.00 96.25 -601460.11 5680080.82 97.50 -601460.14 5678578.67 97.50 -601460.28 5680633.92 97.50 -601460.34 5680607.22 96.25 -601460.67 5680947.91 97.50 -601460.74 5677833.47 98.75 -601460.75 5676794.23 98.75 -601460.82 5679129.84 97.50 -601460.91 5680628.64 96.25 -601461.07 5680853.71 97.50 -601461.09 5679156.08 96.25 -601461.14 5680910.43 97.50 -601461.14 5678744.74 97.25 -601461.18 5680599.41 96.25 -601461.38 5679027.15 97.50 -601461.63 5677911.74 98.75 -601461.66 5679017.20 97.50 -601461.83 5679991.84 97.50 -601461.86 5680415.36 96.00 -601461.91 5677121.44 97.50 -601461.91 5680489.28 96.25 -601462.18 5680519.79 96.25 -601462.25 5679007.26 97.50 -601462.46 5680835.29 97.50 -601462.53 5680471.49 96.25 -601462.71 5678754.42 97.25 -601462.73 5680727.87 95.90 -601462.80 5680958.05 96.25 -601462.86 5680564.33 96.25 -601462.89 5678997.33 97.50 -601463.12 5680071.46 97.50 -601463.21 5680696.34 97.50 -601463.39 5680317.00 97.50 -601463.56 5680901.66 97.50 -601463.58 5680735.09 96.25 -601463.82 5679119.73 97.50 -601463.85 5680391.99 96.25 -601464.10 5680445.47 96.25 -601464.22 5681102.16 97.50 -601464.29 5680551.47 96.25 -601464.48 5679171.61 97.50 -601464.57 5680406.69 96.00 -601464.58 5680813.23 97.50 -601464.60 5677465.67 98.75 -601464.61 5680111.34 97.50 -601464.62 5676673.00 100.00 -601464.83 5677237.87 97.50 -601465.28 5680963.74 97.50 -601465.30 5680575.48 96.25 -601465.53 5680687.52 97.50 -601465.61 5676540.61 101.25 -601465.66 5679909.85 97.50 -601465.68 5680513.19 96.00 -601465.70 5679522.69 97.50 -601465.82 5680866.47 97.50 -601465.88 5679115.36 97.25 -601466.03 5680953.84 96.25 -601466.10 5680888.04 97.50 -601466.15 5679108.99 97.50 -601466.20 5677128.46 97.50 -601466.23 5677112.63 97.50 -601466.25 5680483.63 96.25 -601466.33 5681128.49 97.50 -601466.52 5680268.67 97.50 -601466.58 5680619.56 96.25 -601466.65 5677529.00 98.75 -601466.66 5680141.00 97.50 -601466.71 5679146.27 96.25 -601466.82 5680465.14 96.25 -601466.95 5680723.14 96.25 -601467.19 5678763.14 97.50 -601467.23 5678585.41 97.50 -601467.49 5678738.21 97.50 -601467.59 5677262.42 97.50 -601467.71 5678445.13 97.50 -601467.76 5679999.65 97.50 -601467.79 5680062.66 97.50 -601467.80 5680385.29 97.50 -601467.88 5680506.91 96.25 -601467.99 5680541.83 96.25 -601468.01 5679162.99 96.25 -601468.41 5677827.46 98.75 -601468.47 5680325.52 97.50 -601468.70 5680762.86 97.50 -601468.73 5680847.29 97.50 -601468.80 5679154.34 96.00 -601468.84 5680639.08 97.50 -601469.04 5680416.01 96.25 -601469.19 5680131.37 97.50 -601469.24 5679135.15 97.50 -601469.49 5679500.86 97.50 -601469.62 5680633.31 96.25 -601469.80 5680607.97 96.25 -601470.18 5680409.87 96.00 -601470.21 5680490.63 96.25 -601470.22 5680103.11 97.50 -601470.28 5680421.97 96.25 -601470.36 5680950.34 97.50 -601470.51 5677907.71 98.75 -601470.64 5680428.50 96.25 -601470.66 5678747.55 97.25 -601470.69 5680476.99 96.25 -601470.70 5676793.66 98.75 -601470.80 5680599.90 96.25 -601470.81 5680909.82 97.50 -601470.86 5680524.52 96.25 -601470.91 5680569.72 96.25 -601471.22 5680830.48 97.50 -601471.62 5680471.42 96.00 -601472.11 5680557.39 96.25 -601472.24 5680435.53 96.25 -601472.26 5680959.54 96.25 -601472.43 5680807.05 97.50 -601472.45 5680053.87 97.50 -601472.46 5678756.35 97.25 -601472.54 5679177.45 97.50 -601472.61 5680728.47 95.90 -601472.64 5677105.15 97.50 -601472.84 5680122.21 97.50 -601472.98 5681097.35 97.50 -601473.02 5680401.49 96.00 -601473.04 5679121.99 97.50 -601473.20 5680449.60 96.25 -601473.25 5680900.81 97.50 -601473.35 5680736.42 96.25 -601473.70 5680275.52 97.50 -601473.76 5680391.08 96.25 -601473.79 5680580.42 96.25 -601473.80 5680518.06 96.00 -601473.96 5679113.12 97.50 -601473.97 5677462.57 98.75 -601474.15 5680905.26 97.20 -601474.16 5677522.60 98.75 -601474.26 5680968.15 97.50 -601474.31 5680861.20 97.50 -601474.36 5679151.82 96.25 -601474.39 5677235.26 97.50 -601474.46 5676674.74 100.00 -601474.90 5679160.70 96.00 -601474.98 5676544.10 101.25 -601475.08 5680332.87 97.50 -601475.16 5679169.72 96.25 -601475.18 5680624.44 96.25 -601475.18 5678591.38 97.50 -601475.28 5679911.77 97.50 -601475.32 5680005.66 97.50 -601475.60 5679523.69 97.50 -601475.72 5680885.32 97.50 -601475.85 5680547.69 96.25 -601475.89 5677128.64 97.50 -601475.94 5680840.36 97.50 -601475.94 5680468.83 96.25 -601476.22 5677821.62 98.75 -601476.44 5680095.37 97.50 -601476.54 5680511.68 96.25 -601476.77 5680724.03 96.25 -601476.87 5677258.96 97.50 -601476.87 5679141.38 97.50 -601477.04 5678739.46 97.50 -601477.09 5678443.20 97.50 -601477.12 5678762.76 97.50 -601477.26 5677861.80 99.00 -601477.33 5680045.20 97.50 -601477.39 5678486.40 97.50 -601477.47 5680644.13 97.50 -601477.59 5680384.86 97.50 -601477.96 5680113.68 97.50 -601478.32 5680531.09 96.25 -601478.37 5680637.93 96.25 -601478.38 5680941.78 97.50 -601478.41 5680760.48 97.50 -601478.67 5680415.07 96.25 -601479.06 5678496.16 97.50 -601479.16 5680481.97 96.25 -601479.30 5680405.95 96.00 -601479.30 5680954.81 97.50 -601479.33 5677903.57 98.75 -601479.37 5680607.90 96.25 -601479.39 5680476.15 96.00 -601479.43 5679500.33 97.50 -601479.84 5678476.77 97.50 -601479.86 5680825.46 97.50 -601480.03 5680283.10 97.50 -601480.10 5680423.84 96.25 -601480.20 5680572.89 96.25 -601480.26 5677098.82 97.50 -601480.39 5680908.18 97.50 -601480.39 5680600.70 96.25 -601480.44 5680562.52 96.25 -601480.60 5678747.55 97.25 -601480.62 5679183.25 97.50 -601480.63 5680428.30 96.25 -601480.65 5676793.09 98.75 -601480.70 5680923.81 97.50 -601480.92 5678505.93 97.50 -601480.97 5679159.08 96.25 -601481.00 5679167.07 96.00 -601481.01 5680440.33 96.25 -601481.48 5680803.32 97.50 -601481.57 5681092.23 97.50 -601481.67 5677516.19 98.75 -601481.96 5680340.02 97.50 -601481.99 5680397.17 96.00 -601482.25 5678755.34 97.25 -601482.29 5678467.14 97.50 -601482.34 5679176.38 96.25 -601482.46 5680453.34 96.25 -601482.49 5680036.68 97.50 -601482.49 5680729.07 95.90 -601482.54 5680963.34 97.50 -601482.72 5680855.79 97.50 -601482.72 5680968.86 97.50 -601482.75 5680584.27 96.25 -601482.86 5680973.24 97.50 -601482.93 5680899.96 97.50 -601483.12 5680087.98 97.50 -601483.14 5680105.18 97.50 -601483.22 5680736.42 96.25 -601483.35 5680833.69 97.50 -601483.42 5677459.72 98.75 -601483.42 5678515.51 97.50 -601483.45 5679148.85 97.50 -601483.58 5680389.28 96.25 -601483.61 5680553.70 96.25 -601483.72 5678436.23 97.50 -601483.83 5680629.23 96.25 -601483.94 5677232.66 97.50 -601483.99 5680903.91 97.20 -601484.13 5680010.29 97.50 -601484.24 5678595.20 97.50 -601484.35 5676676.13 100.00 -601484.36 5677816.31 98.75 -601484.49 5676547.15 101.25 -601484.51 5680930.04 97.50 -601484.70 5679914.43 97.50 -601484.80 5680472.99 96.25 -601484.83 5680948.42 97.50 -601485.24 5680939.20 97.50 -601485.33 5680882.58 97.50 -601485.53 5679524.42 97.50 -601485.70 5677127.58 97.50 -601485.82 5680291.16 97.50 -601485.82 5680537.61 96.25 -601485.89 5680515.06 96.25 -601486.16 5680027.50 97.50 -601486.31 5680648.80 97.50 -601486.35 5677256.07 97.50 -601486.61 5680723.25 96.25 -601486.84 5680481.36 96.00 -601486.90 5678738.14 97.50 -601486.96 5678524.79 97.50 -601487.06 5678762.38 97.50 -601487.10 5679173.43 96.00 -601487.24 5680642.30 96.25 -601487.27 5680382.68 97.50 -601487.48 5680487.21 96.25 -601487.82 5677898.77 98.75 -601487.95 5680017.79 97.50 -601487.96 5679165.97 96.25 -601487.96 5678459.46 97.50 -601488.09 5680757.99 97.50 -601488.24 5680820.02 97.50 -601488.29 5680959.18 97.50 -601488.38 5680561.64 96.25 -601488.39 5680417.39 96.25 -601488.44 5680315.93 97.50 -601488.52 5677093.51 97.50 -601488.67 5680402.68 96.00 -601488.74 5680919.39 97.50 -601488.76 5680610.03 96.25 -601488.85 5679251.76 96.25 -601488.92 5680097.07 97.50 -601489.00 5679497.70 97.50 -601489.18 5677509.79 98.75 -601489.21 5679188.27 97.50 -601489.30 5680576.59 96.25 -601489.34 5680526.18 96.25 -601489.40 5680346.58 97.50 -601489.57 5680080.40 97.50 -601489.58 5678428.32 97.50 -601489.75 5679241.83 96.25 -601489.75 5680426.37 96.25 -601489.88 5679156.44 97.50 -601489.96 5680431.78 96.25 -601489.98 5680601.54 96.25 -601490.03 5680907.00 97.50 -601490.07 5680444.50 96.25 -601490.16 5681087.12 97.50 -601490.30 5679182.13 96.25 -601490.47 5678747.14 97.25 -601490.50 5678534.08 97.50 -601490.60 5676792.51 98.75 -601490.97 5680323.64 97.50 -601491.11 5680850.35 97.50 -601491.37 5680409.47 96.25 -601491.42 5680978.41 97.50 -601491.42 5680802.26 97.50 -601491.64 5680457.24 96.25 -601491.74 5680828.26 97.50 -601491.75 5680395.23 96.00 -601491.78 5680635.09 96.25 -601491.78 5678752.89 97.25 -601492.01 5679260.82 96.25 -601492.08 5680298.69 97.50 -601492.12 5680972.26 97.50 -601492.19 5680586.97 96.25 -601492.21 5680963.58 97.50 -601492.38 5680728.83 95.90 -601492.48 5680934.40 97.50 -601492.54 5680898.61 97.50 -601492.57 5680533.14 96.25 -601493.01 5680478.40 96.25 -601493.05 5680735.56 96.25 -601493.17 5677459.47 98.75 -601493.19 5679179.80 96.00 -601493.26 5680625.21 97.50 -601493.26 5680544.19 96.25 -601493.41 5680387.47 96.25 -601493.46 5680946.07 97.25 -601493.53 5677812.99 98.75 -601493.67 5677230.91 97.50 -601493.75 5678598.11 97.50 -601493.82 5680902.55 97.20 -601493.86 5679128.88 97.50 -601493.96 5679917.68 97.50 -601493.98 5680487.00 96.00 -601494.04 5678543.37 97.50 -601494.13 5676549.82 101.25 -601494.24 5678419.63 97.50 -601494.27 5676677.25 100.00 -601494.46 5680950.06 97.50 -601494.63 5680941.73 97.50 -601494.69 5680088.96 97.50 -601494.95 5679172.86 96.25 -601495.02 5680880.14 97.50 -601495.02 5680414.59 96.25 -601495.15 5680653.46 97.50 -601495.28 5677892.57 98.75 -601495.31 5677125.18 97.50 -601495.38 5678452.85 97.50 -601495.44 5679524.99 97.50 -601495.51 5680517.56 96.25 -601495.67 5679164.53 97.50 -601495.70 5680647.37 96.25 -601495.81 5680492.44 96.25 -601495.82 5677253.19 97.50 -601495.94 5677502.59 98.75 -601496.00 5680072.80 97.50 -601496.05 5680925.17 97.25 -601496.28 5678758.64 97.50 -601496.42 5680722.39 96.25 -601496.51 5679491.29 97.50 -601496.54 5678735.81 97.50 -601496.78 5680314.64 97.50 -601496.88 5680581.03 96.25 -601496.95 5680380.50 97.50 -601497.45 5680916.01 97.50 -601497.46 5680331.14 97.50 -601497.62 5679235.91 96.25 -601497.70 5680816.79 97.50 -601497.71 5677090.21 97.50 -601497.82 5680961.13 97.50 -601497.92 5679193.08 97.50 -601497.98 5680756.69 97.50 -601498.09 5680419.80 96.25 -601498.15 5680612.15 96.25 -601498.36 5680350.49 97.50 -601498.56 5681081.71 97.50 -601498.56 5679267.90 96.25 -601498.57 5680436.79 96.25 -601498.60 5680401.81 96.00 -601498.94 5680430.14 96.25 -601498.96 5680525.53 96.25 -601498.96 5678410.97 97.50 -601498.99 5679186.17 96.25 -601499.25 5680448.45 96.25 -601499.32 5680603.87 96.25 -601499.33 5678551.76 97.50 -601499.59 5680632.77 97.50 -601499.68 5680906.01 97.50 -601499.76 5680640.86 96.25 -601499.81 5680933.82 97.50 -601499.93 5680485.37 96.25 -601499.93 5680845.68 97.50 -601499.93 5678744.11 97.25 -601500.06 5680822.72 97.50 -601500.23 5680462.34 96.25 -601500.33 5680539.32 96.25 -601500.47 5680982.63 97.50 -601500.51 5676792.95 98.75 -601500.54 5680623.26 97.50 -601500.58 5680080.94 97.50 -601500.60 5680550.89 96.25 -601500.62 5678748.35 97.25 -601500.67 5680303.66 97.50 -601500.93 5680406.60 96.25 -601500.97 5677494.16 98.75 -601501.00 5680064.22 97.50 -601501.01 5680968.32 97.50 -601501.05 5679180.41 96.25 -601501.37 5680801.29 97.50 -601501.42 5679172.66 97.50 -601501.51 5680975.69 97.50 -601501.53 5679135.30 97.50 -601501.58 5680393.60 96.00 -601501.75 5680726.49 95.90 -601502.06 5680896.66 97.50 -601502.06 5680732.00 96.25 -601502.40 5677885.90 98.75 -601502.75 5677809.95 98.75 -601502.78 5678446.22 97.50 -601502.87 5677460.54 98.75 -601503.19 5680385.44 96.25 -601503.28 5678600.92 97.50 -601503.50 5677229.67 97.50 -601503.51 5679919.93 97.50 -601503.57 5678402.27 97.50 -601503.66 5680901.20 97.20 -601503.76 5676552.49 101.25 -601503.79 5680653.05 96.25 -601503.82 5679484.53 97.50 -601503.84 5680493.75 96.25 -601503.99 5680658.13 97.50 -601504.09 5680338.52 97.50 -601504.12 5680951.64 97.50 -601504.20 5676678.38 100.00 -601504.22 5680943.70 97.50 -601504.22 5680320.89 97.50 -601504.69 5679948.87 97.50 -601504.81 5680416.45 96.25 -601504.84 5678560.03 97.50 -601504.85 5680878.30 97.50 -601504.92 5680717.37 96.25 -601504.98 5680520.48 96.25 -601505.17 5677124.60 97.50 -601505.21 5679523.10 97.50 -601505.35 5678754.55 97.50 -601505.44 5677250.81 97.50 -601505.54 5680926.59 97.50 -601505.59 5677485.44 98.75 -601505.68 5679621.24 97.50 -601505.68 5679631.21 97.50 -601505.68 5679641.19 97.50 -601505.68 5679651.16 97.50 -601505.69 5679230.07 96.25 -601505.72 5679611.27 97.50 -601505.75 5680055.47 97.50 -601505.83 5679661.13 97.50 -601505.85 5680597.18 97.50 -601506.07 5678732.95 97.50 -601506.20 5680912.74 97.50 -601506.47 5680347.62 97.50 -601506.76 5680379.01 97.50 -601506.77 5681076.00 97.50 -601506.83 5680752.48 97.50 -601506.90 5679180.97 97.50 -601506.95 5680073.29 97.50 -601507.00 5680442.15 96.25 -601507.00 5679195.69 97.50 -601507.01 5679273.18 96.25 -601507.19 5678393.10 97.50 -601507.28 5680615.19 96.25 -601507.37 5677091.23 97.50 -601507.59 5680959.54 97.50 -601507.64 5680435.06 96.25 -601507.73 5680422.41 96.25 -601507.76 5679670.91 97.50 -601507.82 5680529.91 96.25 -601507.95 5680638.26 97.50 -601508.09 5679601.58 97.50 -601508.17 5680452.90 96.25 -601508.30 5679508.97 97.00 -601508.45 5680606.90 96.25 -601508.54 5680401.29 96.00 -601508.56 5680544.89 96.25 -601508.57 5680467.81 96.25 -601508.64 5680645.23 96.25 -601508.90 5680841.26 97.50 -601509.01 5680903.30 97.50 -601509.16 5680555.55 96.25 -601509.19 5680974.01 97.50 -601509.22 5678740.60 97.25 -601509.26 5680308.62 97.50 -601509.33 5679141.50 97.50 -601509.50 5677879.22 98.75 -601509.53 5677476.39 98.75 -601509.69 5679680.70 97.50 -601509.77 5677466.92 98.75 -601509.81 5678744.67 97.25 -601509.82 5680626.97 97.50 -601509.91 5679512.03 97.00 -601509.92 5680985.03 97.50 -601509.96 5679710.36 97.50 -601510.08 5679720.31 97.50 -601510.19 5678439.59 97.50 -601510.32 5676794.60 98.75 -601510.37 5680980.20 97.50 -601510.39 5680721.65 95.90 -601510.46 5679591.89 97.50 -601510.70 5680046.84 97.50 -601510.71 5679730.26 97.50 -601510.81 5678383.93 97.50 -601510.81 5679700.42 97.50 -601510.85 5680727.54 96.25 -601510.87 5680405.60 96.25 -601511.16 5680327.98 97.50 -601511.22 5679477.90 97.50 -601511.24 5680802.63 97.50 -601511.26 5679740.22 97.50 -601511.38 5680967.16 97.50 -601511.50 5680948.50 97.50 -601511.50 5680392.89 96.00 -601511.58 5680894.71 97.50 -601511.62 5679690.48 97.50 -601511.87 5679749.99 97.50 -601512.35 5679501.18 97.00 -601512.38 5679189.28 97.50 -601512.50 5677809.59 98.75 -601512.73 5680065.25 97.50 -601512.79 5680657.11 96.25 -601512.85 5678430.25 97.50 -601512.87 5680602.40 97.50 -601512.95 5680386.20 96.25 -601513.02 5679953.13 97.50 -601513.04 5678602.87 97.50 -601513.12 5678564.58 97.50 -601513.16 5677227.74 97.50 -601513.24 5679919.35 97.50 -601513.27 5679249.87 96.50 -601513.30 5680661.62 97.50 -601513.34 5680899.02 97.20 -601513.41 5680712.35 96.25 -601513.49 5676554.67 101.25 -601513.80 5680922.55 97.50 -601514.15 5680524.32 96.25 -601514.16 5676679.10 100.00 -601514.28 5679225.53 96.25 -601514.28 5678374.70 97.50 -601514.30 5680419.56 96.25 -601514.35 5677127.01 97.50 -601514.46 5678750.58 97.50 -601514.77 5680877.18 97.50 -601514.98 5679521.21 97.50 -601515.03 5681070.38 97.50 -601515.05 5677248.44 97.50 -601515.12 5680910.25 97.50 -601515.17 5680447.90 96.25 -601515.24 5680597.31 97.50 -601515.62 5680747.84 97.50 -601515.65 5678730.36 97.50 -601515.66 5680038.21 97.50 -601516.02 5678420.85 97.50 -601516.13 5677095.81 97.50 -601516.24 5680474.11 96.25 -601516.38 5680439.91 96.25 -601516.39 5680618.30 96.25 -601516.47 5680643.43 97.50 -601516.56 5680377.52 97.50 -601516.58 5680955.52 97.50 -601516.61 5677872.55 98.75 -601516.65 5680458.19 96.25 -601516.86 5680534.05 96.25 -601516.92 5679273.12 96.25 -601517.16 5680425.71 96.25 -601517.25 5680056.38 97.50 -601517.28 5680650.03 96.25 -601517.37 5680979.73 97.50 -601517.41 5680549.33 96.25 -601517.66 5680609.70 96.25 -601517.80 5679949.85 97.50 -601518.12 5680335.06 97.50 -601518.12 5680313.06 97.50 -601518.24 5679757.37 97.50 -601518.29 5680837.85 97.50 -601518.36 5679145.79 97.50 -601518.38 5680973.20 97.50 -601518.43 5680900.91 97.50 -601518.45 5679008.96 97.50 -601518.45 5678365.84 97.50 -601518.50 5680400.94 96.00 -601518.51 5678737.08 97.25 -601518.57 5680558.73 96.25 -601518.69 5680960.84 97.50 -601518.90 5679511.53 97.00 -601518.93 5680631.03 97.50 -601519.03 5680716.81 95.90 -601519.29 5679495.33 97.00 -601519.32 5678741.80 97.25 -601519.34 5679960.57 97.50 -601519.44 5678411.52 97.50 -601519.54 5679472.44 97.50 -601519.80 5676797.70 98.75 -601519.86 5680723.52 96.25 -601520.12 5680029.31 97.50 -601520.84 5680405.79 96.25 -601520.94 5680892.10 97.50 -601521.10 5680804.27 97.50 -601521.34 5679943.63 97.50 -601521.43 5680393.34 96.00 -601521.79 5680047.53 97.50 -601521.87 5680707.26 96.25 -601521.93 5677811.40 98.75 -601522.18 5678606.38 97.50 -601522.24 5680482.11 96.25 -601522.25 5680659.61 96.25 -601522.30 5677103.56 97.50 -601522.32 5680605.66 97.50 -601522.41 5677864.83 98.75 -601522.51 5677224.45 97.50 -601522.63 5678567.49 97.50 -601522.71 5680920.47 97.50 -601522.73 5679920.96 97.50 -601522.76 5680529.28 96.25 -601522.77 5680387.82 96.25 -601522.84 5677132.13 97.50 -601522.88 5678402.19 97.50 -601522.93 5680664.30 97.50 -601522.96 5680896.58 97.20 -601523.23 5678959.07 97.50 -601523.27 5680453.75 96.25 -601523.39 5681064.89 97.50 -601523.42 5676555.87 101.25 -601523.52 5679516.55 97.50 -601523.63 5680912.02 97.50 -601523.77 5680422.76 96.25 -601523.87 5678747.35 97.50 -601524.07 5679224.99 96.25 -601524.07 5678357.74 97.50 -601524.13 5676679.73 100.00 -601524.17 5679957.27 97.50 -601524.36 5680623.63 96.25 -601524.54 5678950.09 97.50 -601524.56 5680875.59 97.50 -601524.63 5677245.91 97.50 -601524.95 5680599.24 97.50 -601524.99 5680744.34 97.50 -601525.13 5680463.47 96.25 -601525.16 5680342.03 97.50 -601525.19 5680444.61 96.25 -601525.34 5680655.67 96.25 -601525.54 5678729.29 97.50 -601525.69 5680647.30 97.50 -601525.92 5680538.14 96.25 -601525.94 5680984.88 97.50 -601526.16 5679003.26 97.50 -601526.33 5680375.77 97.50 -601526.50 5679506.63 97.00 -601526.54 5680553.26 96.25 -601526.56 5677856.10 98.75 -601526.58 5678392.96 97.50 -601526.61 5680428.94 96.25 -601526.64 5679271.68 96.25 -601526.70 5680978.63 97.50 -601526.75 5679966.95 97.50 -601526.88 5680612.45 96.25 -601527.00 5680039.04 97.50 -601527.04 5680022.38 97.50 -601527.08 5680317.31 97.50 -601527.30 5680711.38 95.90 -601527.43 5680636.24 97.50 -601527.56 5679493.58 97.00 -601527.65 5679149.22 97.50 -601527.81 5680835.42 97.50 -601527.90 5680898.71 97.50 -601527.93 5680490.31 96.25 -601527.98 5679759.53 97.50 -601527.99 5678734.24 97.25 -601528.06 5680398.89 96.00 -601528.13 5680718.14 96.25 -601528.28 5680560.84 96.25 -601528.37 5677846.55 98.75 -601528.48 5677111.30 97.50 -601528.74 5677836.80 98.75 -601528.77 5676801.93 98.75 -601528.80 5677817.80 98.75 -601529.00 5678739.66 97.25 -601529.28 5679470.87 97.50 -601529.46 5677827.08 98.75 -601529.68 5678349.63 97.50 -601530.19 5680889.12 97.50 -601530.28 5678383.74 97.50 -601530.40 5680029.83 97.50 -601530.43 5679964.82 97.50 -601530.54 5679946.31 97.50 -601530.62 5680702.80 96.25 -601530.65 5678611.59 97.50 -601530.66 5677218.94 97.50 -601530.76 5680406.93 96.25 -601530.77 5679926.16 97.50 -601530.88 5680630.55 96.25 -601530.91 5681058.32 97.50 -601531.02 5680804.44 97.50 -601531.14 5677137.51 97.50 -601531.30 5680393.07 96.00 -601531.48 5679510.58 97.50 -601531.56 5680594.40 97.50 -601531.62 5680533.76 96.25 -601531.74 5677618.21 97.50 -601531.79 5680608.85 97.50 -601531.80 5678943.83 97.50 -601532.01 5679499.81 97.00 -601532.13 5678570.39 97.50 -601532.27 5678960.31 97.50 -601532.29 5680427.65 96.25 -601532.58 5680456.81 96.25 -601532.59 5680894.14 97.20 -601532.75 5680665.86 97.50 -601532.76 5680388.01 96.25 -601532.99 5680348.12 97.50 -601533.02 5680469.54 96.25 -601533.10 5680450.33 96.25 -601533.21 5676557.82 101.25 -601533.30 5680870.90 97.50 -601533.37 5680498.69 96.25 -601533.46 5677628.02 97.50 -601533.49 5679228.08 96.25 -601533.69 5678746.07 97.50 -601534.08 5677243.02 97.50 -601534.10 5676680.36 100.00 -601534.15 5678997.98 97.50 -601534.18 5680625.03 95.75 -601534.27 5678340.90 97.50 -601534.47 5680741.18 97.50 -601534.53 5680990.01 97.50 -601534.60 5677609.28 97.50 -601534.85 5678375.00 97.50 -601534.96 5680542.26 96.25 -601535.11 5680617.44 96.25 -601535.14 5680966.56 97.50 -601535.15 5680650.46 97.50 -601535.45 5678728.62 97.50 -601535.47 5677118.24 97.50 -601535.87 5680982.53 97.50 -601535.97 5679268.18 96.25 -601536.05 5680321.56 97.50 -601536.09 5680374.02 97.50 -601536.10 5680555.89 96.25 -601536.15 5680707.23 95.90 -601536.18 5680941.58 97.50 -601536.64 5679933.88 97.50 -601536.71 5680713.44 96.25 -601536.81 5680833.31 97.50 -601537.09 5680638.84 97.50 -601537.34 5679151.37 97.50 -601537.37 5680896.51 97.50 -601537.39 5676806.93 98.75 -601537.42 5680958.95 97.50 -601537.58 5680917.05 97.50 -601537.64 5679475.19 97.50 -601537.74 5679943.15 97.50 -601537.82 5680563.59 96.25 -601537.87 5678733.18 97.25 -601538.33 5681051.62 97.50 -601538.37 5679503.43 97.50 -601538.59 5677213.00 97.50 -601538.82 5678739.39 97.25 -601538.85 5678332.17 97.50 -601539.12 5678616.81 97.50 -601539.22 5677143.25 97.50 -601539.29 5680634.80 96.25 -601539.34 5680575.12 97.50 -601539.40 5680885.99 97.50 -601539.51 5678938.16 97.50 -601539.84 5680340.58 96.25 -601539.87 5680699.38 96.25 -601540.03 5677635.47 97.50 -601540.07 5678366.64 97.50 -601540.21 5680594.81 97.50 -601540.55 5680476.12 96.25 -601540.61 5680921.65 97.50 -601540.67 5680408.08 96.25 -601540.70 5680537.80 96.25 -601540.78 5680613.17 97.50 -601540.88 5680934.30 97.50 -601540.94 5680354.06 97.50 -601540.96 5680864.48 97.50 -601540.98 5680803.50 97.50 -601541.01 5680504.89 96.25 -601541.06 5679494.19 97.50 -601541.06 5679484.47 97.50 -601541.55 5679233.94 96.25 -601541.63 5678573.31 97.50 -601541.69 5678958.74 97.50 -601541.99 5680890.99 97.20 -601542.06 5680945.05 97.50 -601542.31 5677603.12 97.50 -601542.42 5680582.59 97.50 -601542.51 5680349.92 96.25 -601542.54 5680385.98 96.25 -601542.54 5678993.43 97.50 -601542.72 5680666.47 97.50 -601542.98 5676559.94 101.25 -601543.00 5677238.72 97.50 -601543.11 5680995.13 97.50 -601543.13 5677124.52 97.50 -601543.28 5678746.06 97.50 -601543.41 5678323.43 97.50 -601543.48 5680622.17 96.25 -601543.69 5680331.79 96.25 -601543.92 5680546.55 96.25 -601543.98 5676678.99 100.00 -601544.05 5680561.21 96.25 -601544.07 5680738.47 97.50 -601544.14 5680910.61 97.50 -601544.17 5679157.96 97.50 -601544.43 5680966.15 97.50 -601544.43 5680987.70 97.50 -601544.82 5680653.00 97.50 -601544.99 5680827.56 97.50 -601545.01 5680325.81 97.50 -601545.33 5678358.30 97.50 -601545.37 5680953.64 97.50 -601545.39 5678728.92 97.50 -601545.60 5681044.77 97.50 -601545.60 5680371.21 97.50 -601545.63 5680704.37 95.90 -601545.92 5681073.60 97.50 -601546.00 5680855.96 97.50 -601546.05 5680465.53 96.00 -601546.05 5677206.51 97.50 -601546.10 5679233.63 97.50 -601546.22 5680710.79 96.25 -601546.50 5676807.83 98.75 -601546.66 5678736.46 97.25 -601546.73 5680641.50 97.50 -601546.82 5680894.28 97.50 -601546.99 5680442.18 96.25 -601547.15 5680573.86 97.50 -601547.23 5681064.76 97.50 -601547.29 5677148.99 97.50 -601547.33 5680471.76 96.00 -601547.37 5678622.37 97.50 -601547.52 5678932.91 97.50 -601547.64 5678742.89 97.25 -601547.78 5677641.54 97.50 -601548.34 5680399.62 96.00 -601548.55 5680882.74 97.50 -601548.59 5680637.15 96.25 -601548.74 5680481.71 96.25 -601548.99 5680359.85 97.50 -601548.99 5680510.89 96.25 -601548.99 5680929.68 97.50 -601549.28 5680696.68 96.25 -601549.39 5680598.77 97.50 -601549.40 5680918.44 97.50 -601549.64 5680617.80 97.50 -601549.66 5679166.16 97.50 -601549.71 5679761.22 97.50 -601549.74 5680541.92 96.25 -601549.76 5680356.78 96.25 -601550.07 5680352.55 96.00 -601550.43 5678752.97 97.50 -601550.43 5680783.93 97.50 -601550.45 5678349.88 97.50 -601550.47 5680940.99 97.50 -601550.52 5680406.37 96.25 -601550.62 5680847.09 97.50 -601550.92 5680802.45 97.50 -601551.10 5678956.93 97.50 -601551.11 5678576.31 97.50 -601551.27 5680887.47 97.20 -601551.35 5677129.79 97.50 -601551.36 5680347.15 96.00 -601551.37 5677233.50 97.50 -601551.38 5678989.72 97.50 -601551.56 5680381.87 96.25 -601551.58 5678322.38 97.50 -601551.66 5677600.29 97.50 -601551.68 5680586.25 97.50 -601551.97 5680905.61 97.50 -601552.04 5680626.57 96.25 -601552.19 5680999.24 97.50 -601552.67 5680667.51 97.50 -601552.67 5681037.70 97.50 -601552.73 5680335.55 96.25 -601552.77 5680551.07 96.25 -601552.87 5676561.27 101.25 -601553.08 5680438.10 96.25 -601553.16 5677199.63 97.50 -601553.39 5680992.06 97.50 -601553.40 5680790.56 97.50 -601553.43 5680393.99 96.00 -601553.47 5680823.17 97.50 -601553.65 5680962.92 97.50 -601553.85 5676677.44 100.00 -601553.98 5680330.06 97.50 -601553.98 5678733.88 97.50 -601554.03 5680737.52 97.50 -601554.04 5679227.55 97.50 -601554.10 5678340.87 97.50 -601554.13 5678742.98 97.25 -601554.17 5681078.73 97.50 -601554.22 5680366.72 97.50 -601554.40 5680655.85 97.50 -601554.56 5678750.02 97.25 -601554.69 5680950.85 97.50 -601554.70 5681058.12 97.50 -601554.82 5677155.40 97.50 -601554.86 5680499.30 96.25 -601555.37 5678331.24 97.50 -601555.48 5680468.55 96.00 -601555.54 5680446.49 96.25 -601555.62 5678627.92 97.50 -601555.83 5680708.74 96.25 -601555.88 5680476.84 96.00 -601556.08 5676808.90 98.75 -601556.11 5680838.75 97.50 -601556.18 5680891.69 97.50 -601556.50 5680643.59 97.50 -601556.58 5680908.64 97.25 -601556.59 5680577.04 97.50 -601556.78 5679907.10 97.50 -601556.83 5677644.68 97.50 -601557.10 5679172.84 97.50 -601557.17 5680925.17 97.50 -601557.23 5680506.66 96.25 -601557.44 5680358.86 96.00 -601557.46 5680398.42 96.00 -601557.59 5680486.35 96.25 -601557.67 5680879.38 97.50 -601557.84 5678759.60 97.50 -601557.90 5677190.93 97.50 -601557.92 5680515.34 96.25 -601557.97 5680914.62 97.50 -601558.17 5680638.11 96.25 -601558.22 5679916.51 97.50 -601558.46 5680829.75 97.50 -601558.47 5680361.60 96.25 -601558.57 5680602.73 97.50 -601558.63 5680936.44 97.50 -601558.75 5680546.12 96.25 -601558.86 5680796.97 97.50 -601558.91 5680621.55 97.50 -601558.92 5679765.01 97.50 -601559.13 5680696.19 96.25 -601559.32 5677227.60 97.50 -601559.32 5680779.78 97.50 -601559.66 5679925.92 97.50 -601559.70 5678581.08 97.50 -601559.76 5681030.65 97.50 -601560.16 5680954.83 97.25 -601560.23 5679219.76 97.50 -601560.27 5678986.14 97.50 -601560.30 5680377.01 96.25 -601560.30 5680631.51 96.25 -601560.33 5680404.48 96.25 -601560.56 5680883.96 97.20 -601560.56 5678955.43 97.50 -601560.57 5680901.84 97.50 -601560.76 5677132.88 97.50 -601560.78 5679898.81 97.50 -601560.83 5680349.21 96.00 -601560.89 5680997.50 97.50 -601561.10 5678757.50 97.25 -601561.12 5680589.53 97.50 -601561.24 5678749.92 97.25 -601561.35 5678740.45 97.50 -601561.37 5677181.81 97.50 -601561.41 5680339.90 96.25 -601561.49 5677598.72 97.50 -601561.62 5679528.22 97.50 -601561.62 5680555.60 96.25 -601561.75 5679537.50 97.50 -601561.75 5680928.55 97.25 -601561.91 5677162.16 97.50 -601562.00 5680389.20 96.00 -601562.16 5681051.46 97.50 -601562.52 5680440.29 96.25 -601562.60 5680668.65 97.50 -601562.80 5677172.01 97.50 -601562.83 5676562.11 101.25 -601562.96 5679180.87 97.50 -601562.97 5679210.23 97.50 -601563.04 5679519.16 97.50 -601563.15 5680960.61 97.50 -601563.40 5680333.12 97.50 -601563.65 5676675.59 100.00 -601563.83 5680473.94 96.00 -601563.94 5680502.67 96.25 -601563.98 5680736.58 97.50 -601563.98 5680658.70 97.50 -601564.19 5678632.90 97.50 -601564.30 5680949.07 97.50 -601564.52 5679864.71 97.50 -601564.59 5680481.62 96.00 -601564.82 5680449.46 96.25 -601564.88 5679200.44 97.50 -601565.38 5680888.54 97.50 -601565.41 5680512.37 96.25 -601565.51 5678765.94 97.50 -601565.67 5680708.08 96.25 -601565.67 5676811.60 98.75 -601565.71 5679190.48 97.50 -601565.81 5679890.74 97.50 -601565.91 5680580.35 97.50 -601566.07 5680922.33 97.50 -601566.24 5679510.45 97.50 -601566.31 5680645.48 97.50 -601566.32 5677220.87 97.50 -601566.37 5680875.06 97.50 -601566.44 5680490.99 96.25 -601566.45 5680394.49 96.00 -601566.78 5680911.49 97.50 -601566.78 5677644.37 97.50 -601566.91 5680361.42 96.00 -601566.93 5679700.16 97.50 -601567.12 5680932.55 97.50 -601567.14 5681023.90 97.50 -601567.24 5680518.87 96.25 -601567.74 5680550.36 96.25 -601567.81 5678586.83 97.50 -601567.96 5678757.23 97.25 -601568.08 5680605.79 97.50 -601568.10 5680363.31 96.25 -601568.28 5680625.00 97.50 -601568.30 5680371.24 96.25 -601568.51 5678764.11 97.25 -601568.58 5679329.00 97.50 -601568.69 5678746.89 97.50 -601568.78 5679733.13 97.50 -601568.81 5679764.53 97.50 -601568.83 5680696.66 96.25 -601568.96 5680777.11 97.50 -601569.10 5680574.90 97.50 -601569.13 5676989.55 98.75 -601569.16 5679319.29 97.50 -601569.28 5676999.26 98.75 -601569.38 5678983.19 97.50 -601569.44 5679501.73 97.50 -601569.50 5680400.74 96.25 -601569.50 5680566.63 97.50 -601569.59 5680899.26 97.50 -601569.63 5681044.82 97.50 -601569.70 5680353.23 96.00 -601569.72 5679856.66 97.50 -601569.77 5677610.20 97.25 -601570.05 5678954.04 97.50 -601570.21 5677134.24 97.50 -601570.43 5680560.19 96.25 -601570.56 5680592.82 97.50 -601570.87 5680384.98 96.00 -601570.98 5677212.13 97.50 -601571.01 5678936.09 97.50 -601571.37 5680340.65 96.25 -601571.42 5677598.51 97.50 -601571.57 5679725.21 97.50 -601571.87 5677007.83 98.75 -601571.91 5680442.97 96.25 -601572.29 5680508.17 96.25 -601572.32 5679539.26 97.50 -601572.37 5679492.92 97.50 -601572.51 5679310.36 97.50 -601572.52 5680669.92 97.50 -601572.52 5679847.49 97.50 -601572.60 5680958.14 97.50 -601572.69 5680478.45 96.00 -601572.70 5680334.22 97.50 -601572.74 5679707.94 97.50 -601572.77 5676563.21 101.25 -601572.86 5679530.03 97.50 -601573.25 5676672.81 100.00 -601573.28 5678636.94 97.50 -601573.42 5677202.80 97.50 -601573.50 5678903.54 97.50 -601573.60 5680661.43 97.50 -601573.61 5680485.80 96.00 -601573.71 5680946.44 97.50 -601573.73 5677192.90 97.50 -601573.76 5680734.52 97.50 -601573.86 5679837.98 97.50 -601573.87 5680883.91 97.50 -601573.95 5680452.93 96.25 -601574.24 5678769.94 97.50 -601574.30 5679697.60 97.50 -601574.36 5681017.02 97.50 -601574.43 5679339.01 96.25 -601574.56 5679887.85 97.50 -601574.72 5676981.73 98.75 -601574.75 5680918.86 97.50 -601575.07 5679740.48 97.50 -601575.09 5680870.78 97.50 -601575.11 5679484.04 97.50 -601575.16 5679521.06 97.50 -601575.27 5676814.30 98.75 -601575.28 5679828.49 97.50 -601575.32 5680907.58 97.50 -601575.32 5680390.28 96.00 -601575.41 5680495.39 96.25 -601575.48 5677640.27 97.50 -601575.49 5678763.06 97.25 -601575.51 5680707.31 96.25 -601575.74 5680929.01 97.50 -601575.80 5680365.49 96.00 -601575.88 5677183.27 97.50 -601575.92 5678592.58 97.50 -601576.21 5680646.72 97.50 -601576.23 5679758.99 97.50 -601576.42 5679329.54 96.25 -601576.72 5680554.62 96.25 -601576.98 5681038.04 97.50 -601577.12 5679319.90 96.25 -601577.59 5680701.09 96.25 -601577.60 5679819.17 97.50 -601577.68 5680608.57 97.50 -601577.72 5680628.31 97.50 -601577.75 5678978.67 97.50 -601577.90 5678766.61 97.25 -601577.92 5680772.73 97.50 -601577.98 5679750.00 97.50 -601578.01 5678748.44 97.50 -601578.22 5678999.83 97.50 -601578.38 5680396.16 96.25 -601578.42 5679512.36 97.50 -601578.47 5680570.58 97.50 -601578.62 5680896.69 97.50 -601578.66 5680357.11 96.00 -601578.91 5679302.99 97.50 -601579.20 5680564.88 96.25 -601579.20 5677014.20 98.75 -601579.43 5678952.14 97.50 -601579.58 5680380.50 96.00 -601579.72 5677131.46 97.50 -601579.72 5681008.59 97.50 -601580.10 5680595.82 97.50 -601580.14 5677174.52 97.50 -601580.60 5676974.01 98.75 -601580.62 5680513.69 96.25 -601580.76 5679713.75 97.50 -601580.77 5680329.05 97.50 -601580.93 5678936.09 97.50 -601580.93 5679477.97 97.50 -601580.97 5679810.18 97.50 -601581.05 5679311.82 96.25 -601581.05 5680446.41 96.25 -601581.08 5680319.15 97.50 -601581.12 5679722.66 97.50 -601581.29 5680339.53 96.25 -601581.32 5677599.19 97.50 -601581.42 5680954.19 97.50 -601581.48 5680877.97 97.50 -601581.56 5679503.62 97.50 -601581.64 5680482.79 96.00 -601582.11 5678900.15 97.50 -601582.16 5680309.47 97.50 -601582.37 5678640.98 97.50 -601582.41 5680671.27 97.50 -601582.63 5680490.00 96.00 -601582.66 5676564.62 101.25 -601582.70 5680901.85 97.50 -601582.74 5680372.23 96.00 -601582.84 5676670.02 100.00 -601583.18 5680456.12 96.25 -601583.32 5680944.92 97.50 -601583.34 5680663.31 97.50 -601583.40 5679701.65 97.50 -601583.57 5680732.60 97.50 -601583.62 5680385.15 96.00 -601583.64 5677634.56 97.50 -601583.84 5679885.71 97.50 -601583.95 5679494.68 97.50 -601583.96 5680866.84 97.50 -601583.97 5678598.41 97.50 -601583.97 5680917.68 97.50 -601584.03 5678769.10 97.50 -601584.09 5680999.62 97.50 -601584.25 5678741.02 97.50 -601584.30 5681031.24 97.50 -601584.42 5680426.38 96.25 -601584.48 5680499.60 96.25 -601584.74 5680420.16 96.25 -601584.83 5680926.85 97.50 -601584.85 5679485.52 97.50 -601584.86 5676817.01 98.75 -601585.18 5679940.23 97.50 -601585.19 5680300.02 97.50 -601585.23 5678761.11 97.25 -601585.70 5680558.88 96.25 -601586.06 5679337.18 96.25 -601586.16 5679802.61 97.50 -601586.19 5680647.30 97.50 -601586.34 5678974.60 97.50 -601586.35 5679346.82 96.25 -601586.37 5677166.86 97.50 -601586.48 5676966.28 98.75 -601586.75 5678926.40 97.50 -601586.83 5679297.33 97.50 -601586.84 5680362.50 96.00 -601586.99 5680768.55 97.50 -601587.13 5678995.29 97.50 -601587.25 5680631.32 97.50 -601587.28 5680611.35 97.50 -601587.29 5679931.23 97.50 -601587.53 5678891.90 97.50 -601587.61 5680574.60 97.50 -601587.70 5678765.04 97.25 -601587.87 5678731.75 97.50 -601587.87 5680870.72 97.50 -601588.06 5680290.53 97.50 -601588.12 5680569.25 96.25 -601588.12 5680990.47 97.50 -601588.18 5680394.63 96.25 -601588.59 5680519.62 96.25 -601588.64 5679305.95 96.25 -601588.67 5678921.98 97.50 -601588.71 5677016.08 98.75 -601588.80 5678950.74 97.50 -601588.98 5679234.34 97.50 -601588.99 5680948.32 97.50 -601589.09 5677128.25 97.50 -601589.66 5680598.76 97.50 -601589.91 5678934.98 97.50 -601589.92 5680543.62 97.50 -601590.05 5679328.18 96.25 -601590.19 5680449.86 96.25 -601590.29 5677602.93 97.50 -601590.68 5680280.96 97.50 -601590.69 5680486.90 96.00 -601591.23 5680338.55 96.25 -601591.34 5680981.01 97.50 -601591.36 5678645.23 97.50 -601591.40 5679243.65 97.50 -601591.49 5680494.51 96.00 -601591.64 5680489.77 96.00 -601591.65 5681024.46 97.50 -601591.67 5680379.59 96.00 -601591.69 5678753.79 97.25 -601591.75 5678722.60 97.50 -601591.76 5679947.12 97.50 -601591.79 5677628.85 97.50 -601591.80 5679806.72 97.50 -601591.86 5679355.08 96.25 -601591.96 5679863.45 97.50 -601592.02 5678604.23 97.50 -601592.03 5680674.02 97.50 -601592.12 5678883.12 97.50 -601592.24 5676666.65 100.00 -601592.29 5679706.15 97.50 -601592.42 5678764.37 97.50 -601592.47 5680459.13 96.25 -601592.58 5676565.87 101.25 -601593.05 5680918.58 97.50 -601593.11 5679883.56 97.50 -601593.16 5680664.30 97.50 -601593.18 5680430.83 96.25 -601593.34 5679923.48 97.50 -601593.42 5680730.92 97.50 -601593.47 5680503.94 96.25 -601593.50 5679290.18 97.50 -601593.54 5677160.03 97.50 -601593.64 5680923.91 97.50 -601593.74 5679226.00 97.50 -601593.84 5680387.15 96.25 -601593.94 5678757.77 97.25 -601593.97 5680420.73 96.25 -601594.25 5676960.46 98.75 -601594.28 5680382.36 96.25 -601594.31 5678744.21 97.25 -601594.51 5680563.46 96.25 -601594.55 5680971.54 97.50 -601594.82 5676817.26 98.75 -601594.88 5678734.29 97.25 -601595.06 5680527.23 96.25 -601595.12 5679252.67 97.50 -601595.29 5678971.22 97.50 -601595.37 5679319.82 96.25 -601595.90 5680365.99 96.00 -601595.99 5679813.61 97.50 -601596.01 5678990.69 97.50 -601596.07 5680648.71 97.50 -601596.08 5678713.65 97.50 -601596.10 5677610.56 97.50 -601596.38 5679388.50 96.25 -601596.44 5680765.65 97.50 -601596.57 5680273.26 97.50 -601596.65 5680578.84 97.50 -601596.69 5677620.18 97.50 -601596.79 5680550.74 97.50 -601596.83 5680634.15 97.50 -601596.88 5680614.13 97.50 -601596.89 5678874.43 97.50 -601597.02 5679262.23 97.50 -601597.05 5680573.62 96.25 -601597.26 5679301.57 96.25 -601597.33 5680542.00 97.50 -601597.46 5679342.01 97.25 -601597.50 5679363.24 96.25 -601597.66 5680962.04 97.50 -601597.66 5679281.61 97.50 -601597.75 5680396.67 96.25 -601597.92 5678748.67 97.25 -601598.11 5679271.92 97.50 -601598.15 5678756.23 97.50 -601598.25 5678952.31 97.50 -601598.35 5678923.69 97.50 -601598.36 5677016.99 98.75 -601598.40 5677124.89 97.50 -601598.89 5679856.87 97.50 -601599.06 5680344.04 96.25 -601599.17 5678725.38 97.25 -601599.17 5680453.65 96.25 -601599.21 5680601.70 97.50 -601599.24 5681017.95 97.50 -601599.35 5680493.33 96.00 -601599.73 5680977.86 97.50 -601599.90 5680490.65 96.00 -601600.23 5679397.56 96.25 -601600.32 5679951.86 97.50 -601600.35 5678649.48 97.50 -601600.37 5680952.42 97.50 -601600.38 5680375.07 96.00 -601600.41 5678704.69 97.50 -601600.65 5680498.32 96.00 -601600.68 5679334.66 97.25 -601600.75 5677153.23 97.50 -601600.89 5678865.42 97.50 -601600.93 5677686.52 97.50 -601601.02 5679917.34 97.50 -601601.05 5678746.77 97.50 -601601.11 5678739.25 97.25 -601601.14 5679710.71 97.50 -601601.30 5678607.62 97.50 -601601.39 5677677.03 97.50 -601601.56 5676663.05 100.00 -601601.60 5680968.79 97.50 -601601.62 5679421.82 96.25 -601601.64 5680676.76 97.50 -601601.76 5680462.13 96.25 -601602.01 5676954.64 98.75 -601602.11 5680435.00 96.25 -601602.24 5679225.74 97.50 -601602.24 5679348.45 97.25 -601602.40 5680425.82 96.25 -601602.44 5679884.77 97.50 -601602.47 5680508.28 96.25 -601602.55 5676566.62 101.25 -601602.56 5680667.71 97.50 -601602.69 5679937.06 96.25 -601602.92 5680391.13 96.25 -601603.21 5680532.93 96.25 -601603.24 5680729.04 97.50 -601603.33 5680568.04 96.25 -601603.47 5680266.12 97.50 -601603.47 5680412.94 96.25 -601603.50 5678966.29 97.50 -601603.63 5679371.00 96.25 -601603.64 5679294.64 96.25 -601603.65 5678855.90 97.50 -601603.87 5679315.65 96.25 -601603.90 5678737.25 97.50 -601603.91 5678716.64 97.25 -601603.96 5680943.18 97.50 -601604.02 5678729.82 97.25 -601604.14 5680381.07 96.25 -601604.32 5680524.72 96.25 -601604.64 5680556.93 97.50 -601604.73 5676816.66 98.75 -601604.79 5678985.90 97.50 -601604.80 5680768.63 97.50 -601605.03 5679810.79 97.50 -601605.28 5679360.64 97.50 -601605.37 5680364.70 96.00 -601605.41 5679351.07 97.50 -601605.59 5679385.25 96.25 -601605.59 5680583.31 97.50 -601605.66 5678958.16 97.50 -601605.73 5680351.45 96.25 -601605.82 5680578.29 96.25 -601605.92 5680650.44 97.50 -601605.94 5679405.68 96.25 -601605.98 5677668.46 97.50 -601606.27 5679203.07 97.50 -601606.28 5680974.05 97.50 -601606.41 5680637.04 97.50 -601606.60 5680616.45 97.50 -601606.73 5679212.50 97.50 -601606.83 5680961.02 97.50 -601606.93 5681011.57 97.50 -601607.01 5679851.75 97.50 -601607.07 5680496.89 96.00 -601607.10 5680543.83 97.50 -601607.10 5678928.15 97.50 -601607.17 5679958.27 97.50 -601607.21 5678697.98 97.50 -601607.34 5680399.35 96.25 -601607.43 5679285.90 96.25 -601607.45 5677120.86 97.50 -601607.56 5680420.17 96.25 -601607.76 5680458.30 96.25 -601607.78 5679233.34 97.50 -601607.84 5679977.03 97.50 -601607.84 5678728.11 97.50 -601607.86 5677678.78 97.25 -601607.94 5679826.14 97.50 -601608.00 5679343.12 97.25 -601608.05 5677017.58 98.75 -601608.10 5679335.10 97.25 -601608.29 5679193.70 97.50 -601608.64 5677147.24 97.50 -601608.68 5679323.40 97.50 -601608.69 5677688.68 97.50 -601608.69 5679911.20 97.50 -601608.72 5679929.83 96.25 -601608.78 5680604.58 97.50 -601609.12 5680494.41 96.00 -601609.19 5678654.05 97.50 -601609.22 5679276.44 96.25 -601609.32 5679986.70 97.50 -601609.33 5678721.43 97.25 -601609.42 5679266.77 96.25 -601609.44 5679967.39 97.50 -601609.49 5680468.10 96.25 -601609.53 5679423.87 96.25 -601609.58 5680521.60 96.25 -601609.75 5680258.47 97.50 -601609.80 5676980.15 99.00 -601609.82 5679715.62 97.50 -601609.84 5679333.02 97.50 -601609.99 5680935.33 97.50 -601610.01 5680373.87 96.00 -601610.06 5680501.54 96.00 -601610.09 5679378.49 96.25 -601610.13 5679833.10 97.50 -601610.16 5678848.65 97.50 -601610.19 5679342.58 97.50 -601610.29 5680486.54 97.50 -601610.48 5679414.22 96.25 -601610.57 5679939.12 96.25 -601610.68 5680776.70 97.50 -601610.70 5676950.52 98.75 -601610.78 5678610.59 97.50 -601610.89 5676659.47 100.00 -601610.99 5680680.29 97.50 -601611.03 5678709.71 97.25 -601611.05 5679460.80 97.50 -601611.09 5679242.52 97.50 -601611.13 5680430.38 96.25 -601611.13 5680438.97 96.25 -601611.31 5680966.15 97.50 -601611.36 5679367.96 97.50 -601611.46 5680349.23 97.50 -601611.49 5680341.66 97.50 -601611.61 5680538.34 96.25 -601611.62 5680531.54 96.25 -601611.64 5680952.98 97.50 -601611.74 5680511.98 96.25 -601611.74 5680395.75 96.25 -601611.85 5679885.81 97.50 -601611.95 5680671.14 97.50 -601612.15 5680572.63 96.25 -601612.46 5680412.39 96.25 -601612.51 5676567.38 101.25 -601612.64 5680562.92 97.50 -601612.79 5678719.86 97.50 -601612.80 5677661.60 97.50 -601612.81 5679311.35 96.25 -601612.97 5680726.74 97.50 -601613.13 5679805.93 97.50 -601613.15 5679219.88 97.50 -601613.17 5679185.43 97.50 -601613.56 5678981.10 97.50 -601613.80 5679198.99 96.25 -601613.87 5680977.91 97.50 -601614.07 5679818.76 97.50 -601614.10 5679845.33 97.50 -601614.13 5680380.78 96.25 -601614.27 5680588.27 97.50 -601614.41 5680951.95 97.75 -601614.58 5676815.13 98.75 -601614.59 5679316.16 97.50 -601614.59 5680582.96 96.25 -601614.71 5679469.83 97.50 -601614.73 5677672.28 97.25 -601614.75 5681005.34 97.50 -601614.91 5680957.53 97.50 -601614.93 5680500.09 96.00 -601614.98 5679455.56 97.50 -601615.05 5680970.59 97.50 -601615.14 5680363.74 96.00 -601615.32 5680353.57 96.25 -601615.41 5678933.57 97.50 -601615.49 5679923.23 96.25 -601615.51 5679904.13 97.50 -601615.70 5678692.79 97.50 -601615.70 5680250.53 97.50 -601615.77 5679207.67 96.25 -601615.79 5680652.03 97.50 -601615.82 5679251.08 97.50 -601615.86 5680492.89 97.50 -601615.94 5680640.04 97.50 -601616.17 5678714.22 97.25 -601616.20 5680463.18 96.25 -601616.36 5680618.64 97.50 -601616.49 5677116.83 97.50 -601616.51 5680547.20 97.50 -601616.53 5677141.26 97.50 -601616.56 5680424.33 96.25 -601616.97 5680945.32 97.50 -601617.06 5680401.61 96.25 -601617.12 5680784.32 97.50 -601617.19 5677683.97 97.50 -601617.25 5679930.53 96.00 -601617.34 5678841.81 97.50 -601617.39 5680928.61 97.50 -601617.52 5680473.64 96.25 -601617.53 5680436.01 96.00 -601617.75 5679837.25 97.50 -601617.75 5677018.09 98.75 -601617.90 5678658.84 97.50 -601617.91 5679265.70 96.20 -601617.96 5679985.28 97.50 -601618.23 5679720.91 97.50 -601618.24 5678702.88 97.25 -601618.25 5679405.55 97.50 -601618.26 5680334.30 97.50 -601618.36 5680369.56 96.00 -601618.37 5680498.05 96.00 -601618.38 5680607.38 97.50 -601618.59 5679273.97 96.20 -601618.84 5680484.57 97.50 -601618.89 5680525.21 96.25 -601618.97 5679810.79 97.50 -601619.41 5680504.95 96.00 -601619.54 5680962.40 97.50 -601619.62 5679282.15 96.20 -601619.85 5676947.27 98.75 -601619.87 5680972.80 97.50 -601619.88 5679939.41 96.25 -601620.02 5680434.63 96.25 -601620.08 5677655.16 97.50 -601620.09 5680949.75 97.50 -601620.11 5679478.07 97.50 -601620.14 5680543.51 96.25 -601620.14 5679372.37 97.50 -601620.15 5680442.93 96.25 -601620.21 5676655.89 100.00 -601620.27 5678613.56 97.50 -601620.29 5680683.96 97.50 -601620.75 5680535.59 96.25 -601620.93 5680568.46 97.50 -601620.97 5680577.21 96.25 -601621.17 5679198.81 96.25 -601621.19 5680515.22 96.25 -601621.20 5679306.17 96.25 -601621.28 5680674.71 97.50 -601621.30 5679398.62 97.50 -601621.34 5680398.52 96.25 -601621.35 5678714.79 97.50 -601621.43 5680348.54 97.50 -601621.50 5679224.78 97.50 -601621.51 5680421.08 96.00 -601621.63 5679180.51 97.50 -601621.64 5680242.59 97.50 -601621.84 5680415.51 96.25 -601622.13 5680853.94 97.50 -601622.34 5678976.31 97.50 -601622.34 5680998.85 97.50 -601622.44 5677666.94 97.25 -601622.48 5676568.13 101.25 -601622.70 5680724.44 97.50 -601622.77 5679461.62 97.50 -601622.80 5680503.29 96.00 -601622.80 5679289.81 96.20 -601622.86 5680593.38 97.50 -601622.92 5680938.08 97.50 -601623.02 5678686.08 97.50 -601623.25 5676810.30 98.75 -601623.30 5679213.34 96.25 -601623.34 5679413.59 97.50 -601623.37 5679918.11 96.25 -601623.47 5680587.41 96.25 -601623.69 5679312.87 97.50 -601623.85 5678938.77 97.50 -601623.90 5680474.24 96.00 -601623.93 5680469.15 96.25 -601623.94 5679132.32 97.50 -601624.01 5678708.20 97.25 -601624.09 5677010.92 98.75 -601624.11 5680380.88 96.25 -601624.11 5678834.58 97.50 -601624.37 5680958.72 97.75 -601624.44 5679248.71 97.50 -601624.58 5680954.53 97.50 -601624.66 5680351.10 96.25 -601624.70 5679901.06 97.50 -601624.79 5680921.89 97.50 -601624.81 5680964.86 97.50 -601625.01 5679270.54 96.20 -601625.11 5680496.68 97.50 -601625.46 5678696.05 97.25 -601625.48 5680643.04 97.50 -601625.51 5680789.66 97.50 -601625.52 5680439.34 96.00 -601625.69 5680653.42 97.50 -601625.69 5677679.24 97.50 -601625.69 5679979.36 97.50 -601625.72 5679932.67 96.25 -601625.75 5680428.13 96.25 -601625.78 5680478.85 96.25 -601625.92 5680550.57 97.50 -601625.98 5679297.47 96.20 -601625.98 5679297.47 96.25 -601626.15 5677114.48 97.50 -601626.19 5680620.46 97.50 -601626.24 5679726.09 97.50 -601626.36 5680405.27 96.25 -601626.44 5677140.37 97.50 -601626.56 5680942.99 97.50 -601626.60 5678663.66 97.50 -601626.82 5679958.46 96.25 -601626.86 5679379.45 97.50 -601627.00 5680845.22 97.50 -601627.11 5680329.76 97.50 -601627.41 5679422.19 97.50 -601627.44 5680234.53 97.50 -601627.50 5680489.52 97.50 -601627.82 5680501.14 96.00 -601627.98 5680610.18 97.50 -601628.01 5680529.29 96.25 -601628.17 5679413.38 97.75 -601628.30 5679404.27 97.50 -601628.52 5677651.58 97.50 -601628.52 5679204.74 96.25 -601628.62 5678708.02 97.50 -601628.71 5680508.47 96.00 -601628.82 5678618.36 97.50 -601628.88 5679230.76 97.50 -601628.88 5680930.85 97.50 -601628.93 5677002.52 98.75 -601629.05 5679240.13 97.50 -601629.28 5680547.53 96.25 -601629.29 5680437.92 96.25 -601629.35 5680446.45 96.25 -601629.38 5676946.71 98.75 -601629.52 5680540.25 96.25 -601629.56 5680991.93 97.50 -601629.65 5680946.68 97.50 -601629.68 5679468.00 97.50 -601629.71 5680687.27 97.50 -601629.75 5680956.92 97.50 -601629.86 5679278.02 96.20 -601629.92 5680853.63 97.50 -601629.97 5680344.08 97.50 -601629.97 5679305.67 96.20 -601629.97 5679305.67 97.50 -601629.99 5680581.37 96.25 -601630.10 5680424.36 96.00 -601630.19 5680572.14 97.50 -601630.21 5676656.12 100.00 -601630.22 5678679.22 97.50 -601630.26 5679964.78 96.25 -601630.52 5678827.02 97.50 -601630.62 5680678.29 97.50 -601630.64 5680518.46 96.25 -601630.67 5680506.49 96.00 -601630.67 5679176.83 97.50 -601630.73 5680419.95 96.25 -601630.79 5677662.50 97.25 -601630.81 5678971.11 97.50 -601630.94 5679388.43 97.50 -601631.00 5678945.25 97.50 -601631.09 5679125.35 97.50 -601631.09 5680400.67 96.25 -601631.67 5679217.71 96.25 -601631.84 5679925.49 96.25 -601631.99 5680720.79 97.50 -601632.05 5680474.45 96.25 -601632.16 5680935.52 97.50 -601632.19 5678702.55 97.25 -601632.20 5680596.89 97.50 -601632.21 5680915.18 97.50 -601632.22 5678670.93 97.50 -601632.31 5676806.15 98.75 -601632.39 5676567.05 101.25 -601632.47 5680479.00 96.00 -601632.48 5680836.86 97.50 -601632.53 5680591.50 96.25 -601632.57 5679918.25 96.25 -601632.74 5679412.65 97.50 -601632.76 5679972.53 97.50 -601632.98 5678689.59 97.25 -601633.00 5679950.74 96.25 -601633.33 5679428.50 97.50 -601633.52 5680442.68 96.00 -601633.77 5680226.93 97.50 -601633.79 5680347.05 96.25 -601633.89 5679286.08 96.20 -601633.98 5676994.23 98.75 -601634.07 5680381.62 96.25 -601634.11 5679312.99 96.20 -601634.25 5680391.78 96.25 -601634.37 5679902.32 97.50 -601634.38 5677674.91 97.50 -601634.62 5679955.44 96.00 -601634.65 5680482.90 96.25 -601634.66 5680499.64 97.50 -601634.87 5680554.85 97.50 -601635.14 5680787.40 97.50 -601635.28 5680430.93 96.25 -601635.38 5677143.43 97.50 -601635.44 5680642.69 97.50 -601635.50 5680324.54 97.50 -601635.56 5679421.73 97.50 -601635.57 5677111.63 97.50 -601635.59 5680654.81 97.50 -601635.67 5680949.73 97.50 -601635.73 5679397.06 97.50 -601635.82 5680927.01 97.50 -601635.84 5680408.31 96.25 -601635.84 5678701.18 97.50 -601636.03 5679210.46 96.25 -601636.04 5680622.13 97.50 -601636.14 5679724.91 97.50 -601636.14 5679142.26 97.50 -601636.16 5680396.73 96.25 -601636.43 5680846.04 97.50 -601636.52 5680547.05 96.25 -601636.67 5680984.90 97.50 -601636.76 5678624.33 97.50 -601636.85 5680941.66 97.50 -601636.85 5680493.03 97.50 -601636.92 5680828.08 97.50 -601636.96 5680367.61 96.25 -601637.00 5679453.98 97.50 -601637.08 5678819.57 97.50 -601637.18 5679463.70 97.50 -601637.27 5680504.24 96.00 -601637.31 5680532.64 96.25 -601637.45 5679237.43 97.50 -601637.56 5676985.28 98.75 -601637.86 5680611.62 97.50 -601637.96 5678964.12 97.50 -601638.09 5680511.72 96.00 -601638.09 5679959.37 96.25 -601638.15 5680338.35 97.50 -601638.20 5679444.18 97.50 -601638.23 5679118.38 97.50 -601638.24 5677651.58 97.50 -601638.39 5676949.95 98.75 -601638.51 5679293.82 96.20 -601638.51 5679293.82 97.50 -601638.69 5680427.63 96.00 -601638.69 5680440.87 96.25 -601638.70 5680449.56 96.25 -601638.71 5680818.25 97.50 -601639.00 5679319.84 96.20 -601639.09 5680585.37 96.25 -601639.33 5679965.25 97.50 -601639.37 5680689.82 97.50 -601639.73 5677659.87 97.25 -601639.77 5679173.27 97.50 -601639.90 5680908.80 97.50 -601639.91 5680423.74 96.25 -601640.01 5678696.48 97.25 -601640.07 5679284.08 97.50 -601640.08 5679405.92 97.50 -601640.16 5678942.60 97.50 -601640.18 5680572.67 97.50 -601640.20 5676656.34 100.00 -601640.25 5680680.99 97.50 -601640.25 5679221.66 96.25 -601640.35 5680520.75 96.25 -601640.43 5680416.68 96.25 -601640.47 5676976.02 98.75 -601640.48 5679244.43 97.50 -601640.51 5679944.63 96.25 -601640.55 5680219.69 97.50 -601640.70 5680403.32 96.25 -601640.74 5679434.67 97.50 -601640.84 5680373.40 96.25 -601641.01 5680478.35 96.25 -601641.06 5677151.19 97.50 -601641.24 5680717.00 97.50 -601641.36 5676801.99 98.75 -601641.46 5678684.68 97.25 -601641.52 5680446.01 96.00 -601641.57 5680482.59 96.00 -601641.62 5680600.24 97.50 -601641.71 5680595.29 96.25 -601642.31 5680342.10 96.25 -601642.31 5676565.95 101.25 -601642.58 5679415.24 97.50 -601642.67 5679274.57 97.50 -601642.72 5679425.11 97.50 -601642.75 5680317.66 97.50 -601642.81 5680809.36 97.50 -601642.93 5677670.60 97.50 -601643.04 5679950.97 96.25 -601643.19 5680838.68 97.50 -601643.22 5676966.71 98.75 -601643.47 5677105.60 97.50 -601643.64 5678812.13 97.50 -601643.69 5676957.41 98.75 -601643.73 5680486.46 96.25 -601643.74 5680977.84 97.50 -601643.77 5679301.65 96.20 -601643.92 5679326.66 96.20 -601643.95 5677160.74 97.50 -601644.06 5680381.84 96.25 -601644.08 5680391.63 96.25 -601644.09 5679903.54 97.50 -601644.17 5679719.27 97.50 -601644.18 5680240.34 97.50 -601644.26 5680502.41 97.50 -601644.34 5679216.75 96.00 -601644.40 5679136.64 97.50 -601644.46 5678696.31 97.50 -601644.46 5680783.94 97.50 -601644.54 5679232.51 97.50 -601644.57 5678630.48 97.50 -601644.64 5680556.99 97.50 -601644.75 5677210.44 97.50 -601644.87 5680433.55 96.25 -601644.98 5677200.46 97.50 -601645.15 5677190.49 97.50 -601645.17 5677180.51 97.50 -601645.18 5677170.53 97.50 -601645.21 5678957.23 97.50 -601645.25 5679754.43 97.50 -601645.33 5677220.39 97.50 -601645.33 5680889.43 97.50 -601645.36 5679957.49 97.50 -601645.36 5679111.40 97.50 -601645.41 5679211.46 96.25 -601645.43 5680642.18 97.50 -601645.44 5679745.10 97.50 -601645.49 5680656.19 97.50 -601645.65 5680410.18 96.25 -601645.85 5680398.88 96.25 -601645.90 5680623.80 97.50 -601645.92 5678688.50 97.25 -601646.07 5677230.34 97.50 -601646.14 5679265.34 97.50 -601646.35 5679166.66 97.50 -601646.42 5680332.80 97.50 -601646.49 5680495.70 97.50 -601646.49 5680422.21 96.25 -601646.55 5680365.06 96.25 -601646.74 5680212.00 97.50 -601646.76 5680507.21 96.00 -601646.79 5680880.69 97.50 -601646.82 5677240.29 97.50 -601646.99 5677654.98 97.50 -601647.04 5680232.75 97.50 -601647.28 5680533.33 96.25 -601647.29 5680430.89 96.00 -601647.60 5680902.42 97.50 -601647.64 5680453.70 96.25 -601647.74 5680514.13 96.00 -601647.77 5680612.92 97.50 -601647.86 5680444.41 96.25 -601648.13 5679735.82 97.50 -601648.17 5680589.42 96.25 -601648.34 5679131.08 97.40 -601648.57 5678937.34 97.50 -601648.62 5677250.08 97.50 -601648.65 5680801.26 97.50 -601648.86 5679240.10 97.50 -601648.99 5677663.06 97.50 -601649.01 5679333.37 96.20 -601649.12 5679309.44 96.20 -601649.17 5680691.62 97.50 -601649.20 5680427.27 96.25 -601649.30 5680310.11 97.50 -601649.36 5679224.06 96.25 -601649.37 5680335.04 96.25 -601649.49 5680449.41 96.00 -601649.52 5679948.67 97.50 -601649.53 5680417.07 96.25 -601649.57 5679763.16 97.50 -601649.63 5680924.93 97.50 -601649.67 5679256.12 97.50 -601649.95 5680683.29 97.50 -601650.02 5680482.08 96.25 -601650.09 5676797.23 98.75 -601650.14 5680522.78 96.25 -601650.16 5680572.47 97.50 -601650.20 5676656.57 100.00 -601650.28 5680406.05 96.25 -601650.42 5680831.80 97.50 -601650.45 5677098.61 97.50 -601650.64 5679711.77 97.50 -601650.64 5680374.81 96.25 -601650.74 5677259.83 97.50 -601650.85 5680485.78 96.00 -601651.01 5680603.69 97.50 -601651.05 5680715.61 97.50 -601651.12 5680598.47 96.25 -601651.70 5680972.02 97.50 -601651.70 5678806.38 97.50 -601651.86 5680203.50 97.50 -601652.00 5679123.32 97.40 -601652.29 5676565.37 101.25 -601652.39 5678636.62 97.50 -601652.42 5679104.34 97.50 -601652.53 5680240.28 97.50 -601652.63 5680778.30 97.50 -601652.65 5679131.02 97.50 -601652.65 5678950.56 97.50 -601652.68 5679727.21 97.50 -601652.78 5680225.00 97.50 -601652.86 5679359.40 97.50 -601652.87 5677269.58 97.50 -601652.93 5679349.64 97.50 -601653.01 5679939.48 97.50 -601653.11 5680873.20 97.50 -601653.17 5680488.96 96.25 -601653.27 5680917.02 97.50 -601653.42 5680886.18 97.50 -601653.61 5680325.85 97.50 -601653.64 5679247.10 97.50 -601653.69 5679904.32 97.50 -601653.80 5680393.51 96.25 -601653.91 5680505.04 97.50 -601653.91 5678694.05 97.50 -601653.99 5679369.17 97.50 -601654.05 5680382.05 96.25 -601654.06 5679229.92 97.50 -601654.13 5679843.06 97.50 -601654.24 5680436.84 96.25 -601654.26 5679317.37 96.20 -601654.31 5679339.90 96.20 -601654.31 5679339.90 97.50 -601654.47 5680558.77 97.50 -601654.52 5677089.98 97.50 -601654.56 5679213.10 96.25 -601654.60 5680926.50 97.50 -601655.04 5680301.93 97.50 -601655.06 5679378.95 97.50 -601655.11 5680793.63 97.50 -601655.29 5680896.03 97.50 -601655.39 5680657.58 97.50 -601655.40 5679388.78 97.50 -601655.40 5680412.23 96.25 -601655.43 5680642.16 97.50 -601655.48 5680401.25 96.25 -601655.63 5680425.64 96.25 -601655.72 5677279.14 97.50 -601655.79 5677080.12 97.50 -601655.84 5680624.74 97.50 -601655.91 5680434.10 96.00 -601656.03 5680919.29 97.80 -601656.07 5679930.16 97.50 -601656.08 5679127.32 97.40 -601656.17 5680498.08 97.50 -601656.32 5680509.95 96.00 -601656.46 5678931.50 97.50 -601656.48 5679398.54 97.50 -601656.52 5680364.43 96.25 -601656.58 5679703.78 97.50 -601656.59 5680457.84 96.25 -601656.74 5680448.69 96.25 -601656.96 5680349.29 96.25 -601656.99 5677070.25 97.50 -601657.06 5680328.68 96.25 -601657.06 5680195.07 97.50 -601657.13 5679834.29 97.50 -601657.18 5680534.55 96.25 -601657.24 5679718.60 97.50 -601657.39 5680516.55 96.00 -601657.41 5679115.29 97.40 -601657.42 5680452.91 96.00 -601657.64 5680614.52 97.50 -601657.64 5679825.03 97.50 -601657.78 5679343.75 96.20 -601657.78 5679343.75 96.25 -601657.85 5677060.35 97.50 -601657.95 5679353.50 96.25 -601657.97 5680825.24 97.50 -601657.99 5680590.53 96.25 -601658.14 5678644.50 97.50 -601658.19 5679363.24 96.25 -601658.36 5679920.60 97.50 -601658.49 5680430.82 96.25 -601658.51 5679372.99 96.25 -601658.53 5676791.93 98.75 -601658.56 5680420.77 96.25 -601658.60 5679408.12 97.50 -601658.73 5679225.01 96.25 -601658.76 5679815.82 97.50 -601658.79 5677288.62 97.50 -601658.84 5677050.46 97.50 -601659.00 5680217.70 97.50 -601659.13 5680692.48 97.50 -601659.31 5679910.97 97.50 -601659.42 5680484.74 96.25 -601659.48 5679097.28 97.50 -601659.51 5678772.73 97.50 -601659.54 5679382.68 96.25 -601659.70 5679217.73 96.25 -601659.79 5680865.95 97.50 -601659.83 5679124.11 97.50 -601659.87 5680684.59 97.50 -601659.92 5680524.81 96.25 -601659.95 5680966.39 97.50 -601660.03 5678943.81 97.50 -601660.06 5676657.90 100.00 -601660.11 5677040.60 97.50 -601660.13 5679324.73 96.20 -601660.13 5680488.97 96.00 -601660.13 5680571.83 97.50 -601660.16 5680407.53 96.25 -601660.42 5680772.06 97.50 -601660.47 5680606.68 97.50 -601660.48 5678802.00 97.50 -601660.62 5680375.22 96.25 -601660.68 5680912.56 97.50 -601660.70 5680879.57 97.50 -601660.87 5679392.33 96.25 -601660.97 5680319.08 97.50 -601660.98 5680599.49 96.25 -601661.04 5680715.18 97.50 -601661.20 5680920.89 97.50 -601661.21 5680294.06 97.50 -601661.23 5680785.74 97.50 -601661.37 5677030.74 97.50 -601661.66 5680237.15 97.50 -601661.88 5679417.39 97.50 -601661.88 5680340.71 96.25 -601662.00 5678698.37 97.50 -601662.27 5676565.01 101.25 -601662.51 5680491.78 96.25 -601662.58 5679120.12 97.40 -601662.63 5678923.74 97.50 -601662.63 5679695.86 97.50 -601662.64 5677020.89 97.50 -601662.65 5679710.59 97.50 -601662.73 5679349.26 96.20 -601662.82 5677297.75 97.50 -601662.88 5678653.24 97.50 -601662.91 5679107.30 97.40 -601662.99 5680889.65 97.50 -601663.06 5679401.83 96.25 -601663.13 5680396.92 96.25 -601663.57 5680440.27 96.25 -601663.61 5679227.45 97.50 -601663.65 5680507.28 97.50 -601663.77 5680354.84 96.25 -601663.99 5680382.99 96.25 -601664.02 5680188.00 97.50 -601664.22 5680028.62 97.50 -601664.34 5680416.70 96.25 -601664.38 5680559.55 97.50 -601664.52 5680437.31 96.00 -601664.67 5680429.33 96.25 -601664.81 5680817.96 97.50 -601664.83 5680404.59 96.25 -601664.97 5680322.58 96.25 -601665.06 5679811.25 97.50 -601665.15 5680477.70 96.25 -601665.29 5680658.96 97.50 -601665.35 5680456.41 96.00 -601665.42 5680642.16 97.50 -601665.63 5680452.95 96.25 -601665.66 5680461.66 96.25 -601665.67 5680019.37 97.50 -601665.72 5680484.24 96.25 -601665.74 5680914.56 97.50 -601665.82 5680625.38 97.50 -601665.89 5680512.68 96.00 -601665.93 5679411.14 96.25 -601666.07 5677011.60 97.50 -601666.13 5680499.04 97.50 -601666.32 5680858.57 97.50 -601666.43 5679331.77 96.20 -601666.51 5680364.33 96.25 -601666.52 5680211.66 97.50 -601666.54 5679090.22 97.50 -601666.57 5679116.77 97.50 -601666.66 5680777.37 97.50 -601666.68 5679425.78 97.50 -601666.73 5680009.77 97.50 -601666.84 5677306.89 97.50 -601666.97 5680536.55 96.25 -601666.97 5676786.64 98.75 -601667.11 5680518.59 96.00 -601667.15 5680000.41 97.50 -601667.20 5679364.21 96.25 -601667.26 5678936.90 97.50 -601667.38 5680435.26 96.25 -601667.41 5679827.70 97.50 -601667.47 5679795.49 97.50 -601667.49 5680616.20 97.50 -601667.52 5679373.91 96.25 -601667.60 5678706.55 97.50 -601667.66 5680960.03 97.50 -601667.71 5680424.18 96.25 -601667.76 5680872.69 97.50 -601667.88 5679112.03 97.40 -601667.90 5680591.30 96.25 -601667.95 5678915.55 97.50 -601667.96 5679354.49 96.20 -601667.96 5679354.49 96.25 -601668.09 5680286.83 97.50 -601668.28 5680768.06 97.50 -601668.32 5680312.31 97.50 -601668.47 5679099.36 97.40 -601668.48 5680195.54 97.50 -601668.61 5679818.50 97.50 -601668.64 5679383.59 96.25 -601668.71 5678661.25 97.50 -601668.82 5680487.40 96.25 -601669.07 5679393.33 96.25 -601669.09 5680693.33 97.50 -601669.11 5680333.82 96.25 -601669.21 5677598.53 97.50 -601669.22 5679703.39 97.50 -601669.40 5678771.71 97.50 -601669.41 5680411.11 96.25 -601669.75 5680526.58 96.25 -601669.79 5679689.25 97.50 -601669.80 5676660.17 100.00 -601669.80 5680685.29 97.50 -601669.84 5677002.40 97.50 -601669.95 5680647.37 97.50 -601670.00 5678799.23 97.50 -601670.11 5680571.20 97.50 -601670.39 5680233.05 97.50 -601670.40 5680882.95 97.50 -601670.42 5678905.94 97.50 -601670.47 5680606.68 97.50 -601670.59 5680375.82 96.25 -601670.86 5677316.02 97.50 -601670.89 5680600.13 96.25 -601670.96 5678886.17 97.50 -601670.96 5678896.09 97.50 -601670.98 5680180.92 97.50 -601671.01 5680714.68 97.50 -601671.28 5680480.41 96.00 -601671.49 5680810.53 97.50 -601671.62 5679081.66 97.50 -601671.69 5680495.11 96.25 -601671.74 5677590.64 97.50 -601671.84 5680027.18 97.50 -601671.93 5679417.85 96.25 -601672.09 5679339.30 96.20 -601672.20 5680445.20 96.25 -601672.25 5676565.69 101.25 -601672.25 5679402.47 96.25 -601672.35 5679830.30 97.50 -601672.35 5679803.33 97.50 -601672.39 5680400.47 96.25 -601672.52 5680850.90 97.50 -601672.57 5680186.61 97.50 -601672.57 5680316.12 96.25 -601672.89 5679109.04 97.50 -601672.94 5678876.46 97.50 -601672.94 5678714.94 97.50 -601672.96 5680440.96 96.00 -601673.08 5679433.25 97.50 -601673.27 5680459.90 96.00 -601673.39 5680509.52 97.50 -601673.40 5679104.08 97.40 -601673.45 5679226.68 97.50 -601673.55 5680857.38 97.25 -601673.61 5676993.21 97.50 -601673.62 5680433.23 96.25 -601673.76 5680354.54 96.25 -601673.91 5680419.46 96.25 -601673.92 5680384.12 96.25 -601673.93 5677595.61 97.25 -601674.07 5680205.66 97.50 -601674.12 5679812.43 97.50 -601674.14 5680408.03 96.25 -601674.34 5680558.69 97.50 -601674.57 5680865.56 97.50 -601674.67 5680477.47 96.25 -601674.81 5679996.26 97.50 -601674.82 5680456.49 96.25 -601674.87 5677325.15 97.50 -601674.88 5679360.72 96.20 -601674.91 5680304.80 97.50 -601674.93 5680465.00 96.25 -601674.94 5678930.51 97.50 -601674.98 5678866.75 97.50 -601675.10 5680279.70 97.50 -601675.13 5679821.61 97.50 -601675.19 5680660.35 97.50 -601675.26 5680953.53 97.50 -601675.40 5679092.59 97.40 -601675.41 5680641.95 97.50 -601675.45 5676781.41 98.75 -601675.46 5680326.14 96.25 -601675.54 5680651.73 97.50 -601675.57 5678668.23 97.50 -601675.58 5680624.60 97.50 -601675.59 5680484.71 96.25 -601675.60 5680514.79 96.00 -601675.78 5679696.20 97.50 -601675.96 5680500.78 97.50 -601676.07 5680197.84 97.50 -601676.26 5679411.35 96.25 -601676.46 5680439.28 96.25 -601676.48 5679072.95 97.50 -601676.50 5680364.47 96.25 -601676.81 5680538.03 96.25 -601676.92 5678724.02 97.50 -601676.95 5679682.64 97.50 -601676.97 5680519.92 96.00 -601677.00 5680619.05 97.50 -601677.13 5680802.30 97.50 -601677.13 5680426.70 96.25 -601677.22 5679347.23 96.20 -601677.26 5680173.25 97.50 -601677.39 5676984.01 97.50 -601677.65 5680876.07 97.50 -601677.79 5679519.41 97.50 -601677.81 5680592.06 96.25 -601677.85 5679528.53 97.50 -601677.93 5678857.35 97.50 -601678.15 5680178.32 97.50 -601678.22 5679389.98 97.50 -601678.26 5680489.87 96.25 -601678.48 5677600.04 97.50 -601678.72 5680843.24 97.50 -601678.86 5679441.21 97.50 -601678.86 5680228.46 97.50 -601678.88 5677334.29 97.50 -601678.92 5680414.12 96.25 -601678.96 5679399.46 97.50 -601678.97 5679101.13 97.50 -601678.98 5678769.10 97.50 -601679.05 5680692.89 97.50 -601679.30 5677584.31 97.50 -601679.45 5679096.51 97.40 -601679.53 5676662.43 100.00 -601679.56 5680009.29 97.10 -601679.61 5678796.76 97.50 -601679.63 5680309.05 96.25 -601679.64 5680528.00 96.25 -601679.66 5680021.37 97.50 -601679.79 5680684.81 97.50 -601679.86 5680646.19 97.50 -601680.02 5678882.29 97.50 -601680.09 5680570.66 97.50 -601680.15 5680849.93 97.25 -601680.37 5680605.79 97.50 -601680.45 5678733.32 97.50 -601680.54 5679380.74 97.50 -601680.56 5680376.46 96.25 -601680.66 5679063.92 97.50 -601680.81 5680599.47 96.25 -601680.86 5680712.97 97.50 -601680.90 5680481.31 96.00 -601681.04 5679611.14 97.50 -601681.16 5676974.81 97.50 -601681.19 5680449.37 96.25 -601681.29 5680496.80 96.25 -601681.31 5677591.60 97.25 -601681.38 5680444.66 96.00 -601681.38 5680858.43 97.50 -601681.46 5680318.15 96.25 -601681.47 5680404.49 96.25 -601681.48 5679367.27 96.20 -601681.56 5680105.56 97.50 -601681.63 5679085.24 97.40 -601681.65 5680297.44 97.50 -601681.66 5678891.40 97.50 -601681.72 5680908.93 97.50 -601682.05 5680200.23 97.50 -601682.09 5678848.35 97.50 -601682.11 5680272.57 97.50 -601682.15 5678872.52 97.50 -601682.22 5676566.36 101.25 -601682.55 5680793.90 97.50 -601682.61 5679620.12 97.50 -601682.72 5679602.02 97.50 -601682.80 5678924.34 97.50 -601682.85 5680947.03 97.50 -601682.90 5677343.42 97.50 -601682.91 5680436.22 96.25 -601683.00 5679407.92 97.50 -601683.14 5679707.46 97.50 -601683.18 5680190.95 97.50 -601683.20 5680096.73 97.50 -601683.25 5680511.15 97.50 -601683.30 5679226.35 97.50 -601683.36 5679354.40 96.20 -601683.43 5680432.43 96.00 -601683.44 5680899.23 97.50 -601683.45 5680411.47 96.25 -601683.48 5680165.52 97.50 -601683.60 5678742.75 97.50 -601683.61 5680421.86 96.25 -601683.74 5680354.15 96.25 -601683.84 5680383.95 96.25 -601683.88 5679536.08 97.50 -601683.89 5679054.48 97.50 -601683.96 5679690.97 97.50 -601683.98 5676776.26 98.75 -601684.02 5680460.04 96.25 -601684.20 5680468.33 96.25 -601684.29 5678862.75 97.50 -601684.30 5680557.84 97.50 -601684.35 5680170.49 97.50 -601684.39 5678672.78 97.50 -601684.48 5680478.72 96.25 -601684.50 5679997.30 97.50 -601684.64 5679449.18 97.50 -601684.76 5679676.96 97.50 -601684.90 5680869.18 97.50 -601684.92 5679093.11 97.50 -601684.93 5676965.62 97.50 -601685.11 5680661.64 97.50 -601685.28 5679088.76 97.40 -601685.29 5679716.31 97.50 -601685.34 5680640.83 97.50 -601685.37 5680516.66 96.00 -601685.42 5680836.01 97.50 -601685.43 5680485.74 96.25 -601685.43 5678762.14 97.50 -601685.51 5679593.31 97.50 -601685.53 5680651.94 97.50 -601685.61 5680915.63 97.50 -601685.78 5680442.74 96.25 -601685.78 5679515.18 97.50 -601685.79 5680502.59 97.50 -601686.15 5678752.31 97.50 -601686.26 5678839.35 97.50 -601686.48 5680363.99 96.25 -601686.60 5680429.07 96.25 -601686.61 5679044.92 97.50 -601686.70 5680301.99 96.25 -601686.75 5680842.48 97.25 -601686.77 5679077.02 97.40 -601686.80 5680538.03 96.25 -601686.83 5680521.24 96.00 -601687.01 5679627.91 97.50 -601687.08 5680594.94 96.25 -601687.10 5679526.93 97.25 -601687.16 5677352.44 97.50 -601687.19 5680223.59 97.50 -601687.32 5679374.47 96.20 -601687.32 5679374.47 97.50 -601687.36 5680890.04 97.50 -601687.43 5680109.62 97.50 -601687.66 5679416.22 97.50 -601687.67 5679034.99 97.50 -601687.72 5680310.36 96.25 -601687.73 5680492.27 96.25 -601687.78 5678791.36 97.50 -601687.87 5678853.50 97.50 -601687.89 5680851.03 97.50 -601687.94 5680016.34 97.50 -601688.04 5679704.07 97.50 -601688.23 5677597.94 97.50 -601688.33 5680785.75 97.50 -601688.48 5679724.89 97.50 -601688.51 5680089.35 97.50 -601688.53 5680416.83 96.25 -601688.96 5677582.39 97.50 -601688.98 5676956.54 97.50 -601688.99 5680290.65 97.50 -601689.02 5680692.10 97.50 -601689.22 5680265.54 97.50 -601689.25 5680193.93 97.50 -601689.38 5677589.67 97.25 -601689.38 5679585.71 97.50 -601689.43 5676663.62 100.00 -601689.53 5680529.43 96.25 -601689.58 5679361.52 96.20 -601689.69 5680157.79 97.50 -601689.71 5680208.74 97.75 -601689.73 5680683.98 97.50 -601689.80 5680448.36 96.00 -601689.85 5680646.19 97.50 -601689.85 5679496.58 97.50 -601689.98 5680434.74 96.00 -601690.02 5680571.83 97.50 -601690.05 5678917.45 97.50 -601690.08 5678896.19 97.50 -601690.15 5680603.70 97.50 -601690.34 5680183.99 97.50 -601690.37 5679543.29 97.50 -601690.39 5680940.47 97.50 -601690.42 5679068.04 97.40 -601690.44 5680482.73 96.00 -601690.46 5680452.98 96.25 -601690.55 5680376.36 96.25 -601690.63 5679487.01 97.50 -601690.75 5680711.63 97.50 -601690.85 5680861.17 97.50 -601690.91 5680498.42 96.25 -601690.99 5678830.66 97.50 -601691.00 5680407.16 96.25 -601691.05 5679080.97 97.40 -601691.12 5680880.77 97.50 -601691.21 5679456.48 97.50 -601691.32 5680163.38 97.50 -601691.42 5677361.46 97.50 -601691.50 5679609.36 97.25 -601691.51 5679085.63 97.50 -601691.95 5679685.46 97.50 -601692.09 5676567.76 101.25 -601692.12 5680828.77 97.50 -601692.21 5680439.20 96.25 -601692.27 5679381.65 96.20 -601692.38 5678844.57 97.50 -601692.52 5676771.12 98.75 -601692.79 5679026.68 97.50 -601692.94 5680414.30 96.25 -601693.04 5680381.18 96.25 -601693.11 5680463.83 96.25 -601693.12 5680512.75 97.50 -601693.17 5679226.21 97.50 -601693.29 5676947.59 97.50 -601693.31 5680424.27 96.25 -601693.32 5680835.01 97.25 -601693.52 5680471.55 96.25 -601693.55 5679730.83 97.50 -601693.71 5679673.12 97.50 -601693.72 5680353.70 96.25 -601693.76 5680294.92 96.25 -601693.79 5680910.24 97.50 -601694.01 5680345.05 96.25 -601694.07 5678675.03 97.50 -601694.15 5679496.48 97.30 -601694.18 5676983.06 97.50 -601694.20 5680843.46 97.50 -601694.21 5680480.40 96.25 -601694.21 5679998.17 97.50 -601694.29 5680557.47 97.50 -601694.32 5680303.01 96.25 -601694.34 5679422.02 97.50 -601694.40 5679505.29 97.50 -601694.52 5680777.90 97.50 -601694.59 5679632.99 97.50 -601694.68 5680082.49 97.50 -601694.80 5679059.41 97.40 -601694.87 5680149.34 97.50 -601694.90 5676973.16 97.50 -601695.03 5679720.36 97.25 -601695.03 5680662.80 97.50 -601695.10 5680446.18 96.25 -601695.10 5680487.79 96.25 -601695.15 5679517.15 97.50 -601695.28 5680639.72 97.50 -601695.29 5680517.37 96.00 -601695.43 5680871.79 97.50 -601695.46 5680218.63 97.50 -601695.50 5678785.14 97.50 -601695.51 5680652.53 97.50 -601695.61 5680186.68 97.50 -601695.71 5680503.85 97.50 -601695.72 5680106.33 97.50 -601695.85 5679708.81 97.50 -601695.88 5680283.44 97.50 -601696.00 5679488.88 97.50 -601696.04 5680431.54 96.25 -601696.33 5678909.86 97.50 -601696.36 5678822.32 97.50 -601696.36 5679368.09 96.20 -601696.36 5679368.09 97.50 -601696.38 5680258.57 97.50 -601696.46 5680363.50 96.25 -601696.50 5677370.01 97.50 -601696.55 5680437.00 96.00 -601696.65 5680853.03 97.50 -601696.68 5680522.57 96.00 -601696.79 5680538.04 96.25 -601696.89 5678835.64 97.50 -601696.95 5680012.65 97.50 -601697.14 5679073.44 97.40 -601697.23 5680494.53 96.25 -601697.25 5679525.65 97.50 -601697.38 5679077.71 97.50 -601697.59 5676938.63 97.50 -601697.65 5679585.48 97.50 -601697.70 5677589.09 97.25 -601697.71 5680177.23 97.50 -601697.88 5680933.84 97.50 -601697.96 5679463.64 97.50 -601698.05 5680090.35 97.20 -601698.10 5678900.78 97.50 -601698.16 5679018.38 97.50 -601698.17 5677597.16 97.50 -601698.29 5680418.97 96.25 -601698.33 5679387.90 96.20 -601698.88 5680821.60 97.50 -601698.93 5680156.90 97.50 -601698.93 5677583.01 97.50 -601698.98 5680691.29 97.50 -601699.10 5679544.09 97.50 -601699.19 5679678.94 97.50 -601699.21 5679534.97 97.50 -601699.39 5680531.05 96.25 -601699.39 5680457.27 96.25 -601699.41 5676664.16 100.00 -601699.55 5680682.07 97.50 -601699.55 5676964.62 97.50 -601699.78 5680342.51 96.25 -601699.82 5680645.51 97.50 -601699.86 5677643.43 97.50 -601699.89 5680827.53 97.25 -601699.94 5680573.00 97.50 -601699.95 5680484.39 96.00 -601699.96 5680140.82 97.50 -601700.12 5680602.96 97.50 -601700.13 5680902.51 97.50 -601700.26 5680501.24 96.25 -601700.41 5679064.35 97.40 -601700.58 5680835.94 97.50 -601700.62 5679594.20 97.50 -601700.63 5680769.99 97.50 -601700.66 5680409.46 96.25 -601700.74 5680711.63 97.50 -601700.75 5679472.96 97.50 -601700.83 5680287.86 96.25 -601700.85 5680863.40 97.50 -601701.04 5679359.82 97.50 -601701.18 5680443.03 96.25 -601701.26 5679497.04 97.50 -601701.32 5679008.91 97.50 -601701.34 5680076.12 97.50 -601701.38 5679055.28 97.40 -601701.43 5679506.61 97.50 -601701.60 5679068.66 97.50 -601701.60 5676767.29 98.75 -601701.60 5678826.87 97.50 -601701.72 5679373.27 96.20 -601701.73 5678813.98 97.50 -601701.82 5680099.41 97.50 -601701.88 5676569.37 101.25 -601701.90 5676929.67 97.50 -601702.05 5679349.90 97.50 -601702.09 5679612.59 97.50 -601702.17 5680467.69 96.25 -601702.22 5680275.71 97.50 -601702.27 5677378.15 97.50 -601702.31 5678778.09 97.50 -601702.33 5679603.32 97.50 -601702.37 5680212.09 97.50 -601702.38 5679672.16 97.50 -601702.44 5680844.88 97.50 -601702.47 5680347.89 96.25 -601702.48 5679729.08 97.50 -601702.59 5679621.85 97.50 -601702.61 5680416.56 96.25 -601702.70 5680427.64 96.25 -601702.81 5679630.79 97.50 -601702.92 5680514.74 97.50 -601702.92 5680180.56 97.50 -601702.93 5680474.48 96.25 -601702.98 5679339.96 97.50 -601703.02 5679225.82 97.50 -601703.07 5679714.42 97.50 -601703.14 5680439.20 96.00 -601703.29 5680298.60 96.25 -601703.41 5678999.18 97.50 -601703.53 5677635.48 97.50 -601703.55 5676985.35 97.50 -601703.61 5679423.27 97.50 -601703.68 5680354.37 96.25 -601703.69 5680251.75 97.50 -601703.80 5680482.80 96.25 -601703.85 5678675.23 97.50 -601703.95 5679997.91 97.50 -601703.97 5679330.03 97.50 -601704.28 5680557.21 97.50 -601704.42 5680926.31 97.50 -601704.43 5680449.61 96.25 -601704.45 5680548.78 97.50 -601704.54 5679295.16 97.50 -601704.56 5679394.00 96.20 -601704.80 5679285.38 97.50 -601704.85 5680489.44 96.25 -601704.89 5678989.31 97.50 -601704.90 5680148.98 97.50 -601705.00 5680663.63 97.50 -601705.07 5680170.47 97.50 -601705.13 5680435.11 96.25 -601705.21 5680518.08 96.00 -601705.26 5680639.40 97.50 -601705.36 5680506.03 97.50 -601705.49 5680653.13 97.50 -601705.72 5680814.50 97.50 -601705.75 5679275.64 97.50 -601705.81 5679059.61 97.50 -601706.00 5678979.39 97.50 -601706.07 5677589.65 97.25 -601706.08 5680009.25 97.50 -601706.09 5679479.86 97.50 -601706.21 5680133.16 97.50 -601706.21 5676920.72 97.50 -601706.32 5680894.67 97.50 -601706.39 5680761.82 97.50 -601706.39 5676957.35 97.50 -601706.43 5680363.57 96.25 -601706.44 5678769.07 97.50 -601706.44 5678805.27 97.50 -601706.45 5680820.05 97.25 -601706.48 5679358.25 97.50 -601706.54 5680523.89 96.00 -601706.76 5680538.75 96.25 -601706.79 5680496.55 96.25 -601706.86 5679722.43 97.50 -601706.92 5679368.22 97.50 -601707.12 5679320.59 97.50 -601707.14 5679265.96 97.50 -601707.17 5680828.61 97.50 -601707.27 5680855.74 97.50 -601707.30 5679378.19 96.20 -601707.30 5679378.19 97.50 -601707.50 5679348.38 97.50 -601707.76 5680092.35 97.50 -601707.85 5680280.75 96.25 -601707.92 5680421.58 96.25 -601707.99 5680462.26 96.25 -601708.00 5680204.36 97.50 -601708.04 5677386.29 97.50 -601708.15 5677596.97 97.50 -601708.15 5677647.17 97.50 -601708.52 5680836.94 97.50 -601708.63 5678970.00 97.50 -601708.66 5677639.92 97.25 -601708.70 5678819.83 97.50 -601708.72 5677584.88 97.50 -601708.82 5679256.35 97.50 -601708.94 5680690.39 97.50 -601708.99 5679416.98 97.50 -601709.20 5680532.92 96.25 -601709.39 5676664.70 100.00 -601709.43 5680680.93 97.50 -601709.47 5679338.61 97.50 -601709.48 5680342.51 96.25 -601709.76 5680503.32 96.25 -601709.77 5680073.03 97.50 -601709.79 5680644.67 97.50 -601709.93 5680573.14 97.50 -601709.96 5680269.45 97.50 -601710.09 5680602.26 97.50 -601710.11 5679029.01 97.50 -601710.32 5679296.75 97.50 -601710.34 5680445.68 96.25 -601710.36 5680411.58 96.25 -601710.43 5680709.50 97.50 -601710.48 5679050.80 97.50 -601710.78 5678796.35 97.50 -601710.82 5680195.14 97.50 -601710.83 5680141.03 97.50 -601710.99 5680918.80 97.50 -601711.08 5680245.01 97.50 -601711.09 5679311.49 97.50 -601711.13 5680316.13 96.25 -601711.20 5680323.45 96.25 -601711.25 5676764.84 98.75 -601711.49 5680470.88 96.25 -601711.52 5676912.38 97.50 -601711.62 5680176.52 97.50 -601711.62 5680806.63 97.50 -601711.80 5679264.82 97.25 -601711.82 5676568.35 101.25 -601711.87 5679247.05 97.50 -601711.89 5679408.00 97.50 -601712.03 5679287.40 97.50 -601712.05 5679398.47 96.20 -601712.05 5679398.47 97.50 -601712.06 5679328.97 97.50 -601712.12 5680545.61 97.50 -601712.13 5680348.80 96.25 -601712.20 5680886.58 97.50 -601712.24 5680430.05 96.25 -601712.28 5677632.14 97.50 -601712.33 5680477.42 96.25 -601712.39 5680417.25 96.25 -601712.41 5680299.02 96.25 -601712.42 5680163.69 97.50 -601712.50 5676981.27 97.50 -601712.64 5680552.80 97.50 -601712.66 5680487.17 96.25 -601712.68 5680516.88 97.50 -601712.76 5676949.68 97.50 -601712.77 5680125.72 97.50 -601712.84 5679225.23 97.50 -601713.00 5680754.57 97.50 -601713.13 5679382.73 96.20 -601713.28 5679475.65 97.50 -601713.37 5679277.71 97.50 -601713.37 5680812.92 97.25 -601713.47 5680440.07 96.25 -601713.47 5680453.66 96.25 -601713.48 5680085.13 97.50 -601713.55 5678961.31 97.50 -601713.55 5678673.59 97.50 -601713.64 5680355.17 96.25 -601713.65 5679997.84 97.50 -601713.77 5680821.28 97.50 -601713.93 5680848.30 97.50 -601714.01 5678764.29 97.50 -601714.21 5680558.37 97.50 -601714.21 5677394.11 97.50 -601714.22 5680522.12 96.00 -601714.44 5680510.23 97.50 -601714.49 5677591.70 97.50 -601714.53 5679456.36 97.50 -601714.54 5680004.52 97.50 -601714.63 5680829.03 97.50 -601714.68 5679319.34 97.50 -601714.71 5679020.16 97.50 -601714.87 5680273.64 96.25 -601714.94 5679237.76 97.50 -601714.98 5680664.08 97.50 -601715.10 5679466.12 97.50 -601715.22 5680638.72 97.50 -601715.22 5680186.59 97.50 -601715.23 5679446.73 97.50 -601715.47 5680653.72 97.50 -601715.62 5679061.41 97.50 -601715.80 5678812.79 97.50 -601715.98 5679268.29 97.50 -601716.11 5679302.87 97.50 -601716.32 5680498.65 96.25 -601716.39 5680364.40 96.25 -601716.60 5678788.36 97.50 -601716.72 5679043.21 97.50 -601716.73 5680539.47 96.25 -601716.93 5680425.69 96.25 -601716.96 5680076.80 97.50 -601717.42 5680465.30 96.25 -601717.52 5677645.67 97.50 -601717.58 5676904.50 97.50 -601717.61 5680798.81 97.50 -601717.70 5679030.29 97.50 -601717.73 5679437.21 97.50 -601717.91 5680117.14 97.50 -601717.98 5677637.84 97.25 -601718.01 5679309.94 97.50 -601718.02 5680263.54 97.50 -601718.08 5680878.50 97.50 -601718.26 5679958.09 97.50 -601718.37 5680912.06 97.50 -601718.49 5680238.32 97.50 -601718.53 5680134.65 97.50 -601718.58 5680688.09 97.50 -601718.64 5679067.62 97.50 -601718.67 5678952.75 97.50 -601718.81 5679258.93 97.50 -601718.96 5679387.28 96.20 -601718.96 5679387.28 97.50 -601719.01 5680534.80 96.25 -601719.03 5676941.91 97.50 -601719.19 5680342.51 96.25 -601719.26 5679011.27 97.50 -601719.38 5680503.94 96.25 -601719.38 5676665.24 100.00 -601719.40 5680177.93 97.50 -601719.43 5680681.00 97.50 -601719.65 5679402.93 96.20 -601719.73 5680643.66 97.50 -601719.77 5680156.91 97.50 -601719.78 5676974.70 97.50 -601719.93 5678770.03 97.50 -601719.93 5680573.17 97.50 -601719.99 5680314.55 96.25 -601720.02 5680706.68 97.50 -601720.06 5680601.61 97.50 -601720.07 5680412.14 96.25 -601720.20 5678779.20 97.50 -601720.34 5680324.17 96.25 -601720.37 5680813.96 97.50 -601720.53 5680806.01 97.25 -601720.57 5679427.79 97.50 -601720.67 5679294.00 97.50 -601720.67 5680474.18 96.25 -601720.71 5679965.20 97.50 -601720.74 5678666.72 97.50 -601720.80 5677401.60 97.50 -601720.93 5680460.01 96.25 -601720.97 5676762.71 98.75 -601720.98 5679053.55 97.50 -601721.10 5680748.83 97.50 -601721.10 5680841.34 97.50 -601721.15 5680821.49 97.50 -601721.61 5678982.42 97.50 -601721.72 5679249.59 97.50 -601721.74 5677630.77 97.50 -601721.75 5680302.29 96.25 -601721.77 5676567.33 101.25 -601721.80 5680349.65 96.25 -601721.89 5680478.82 96.25 -601721.92 5679239.98 97.50 -601721.96 5680266.60 96.25 -601722.01 5679221.60 97.50 -601722.06 5680544.93 97.50 -601722.12 5680528.93 97.50 -601722.29 5680416.45 96.25 -601722.43 5680519.10 97.50 -601722.55 5680554.08 97.50 -601722.73 5679301.55 97.50 -601723.24 5679378.42 97.50 -601723.62 5680355.67 96.25 -601723.77 5680109.08 97.50 -601724.01 5680870.45 97.50 -601724.03 5680512.96 97.50 -601724.14 5680559.54 97.50 -601724.17 5678807.41 97.50 -601724.25 5678944.47 97.50 -601724.26 5680791.63 97.50 -601724.50 5679036.95 97.50 -601724.52 5679002.83 97.50 -601724.60 5676897.77 97.50 -601724.63 5678751.68 97.50 -601724.89 5679393.79 96.20 -601724.97 5680664.20 97.50 -601725.01 5680904.62 97.50 -601725.11 5678989.03 97.50 -601725.14 5679195.86 97.50 -601725.14 5678761.15 97.50 -601725.16 5680637.65 97.50 -601725.25 5680230.95 97.50 -601725.27 5680256.83 97.50 -601725.29 5676934.15 97.50 -601725.45 5680148.73 97.50 -601725.45 5680653.69 97.50 -601725.49 5679285.27 97.50 -601725.74 5680127.73 97.50 -601725.96 5679953.06 97.50 -601726.35 5680365.10 96.25 -601726.44 5680806.24 97.50 -601726.62 5680540.77 96.25 -601726.62 5677642.80 97.50 -601726.64 5676967.57 97.50 -601726.70 5679025.99 97.50 -601726.95 5680683.59 97.50 -601726.99 5678974.13 97.50 -601727.03 5679062.95 97.50 -601727.09 5679421.12 97.50 -601727.11 5678742.28 97.50 -601727.31 5677635.77 97.25 -601727.59 5679406.15 96.20 -601727.68 5679958.15 97.25 -601727.78 5679369.70 97.50 -601727.80 5680318.32 96.00 -601727.94 5680741.55 97.50 -601728.28 5680834.38 97.50 -601728.36 5680814.56 97.50 -601728.56 5677407.87 97.50 -601728.59 5679293.85 97.50 -601728.64 5678660.76 97.50 -601728.65 5679275.80 97.50 -601728.78 5680536.91 96.25 -601728.90 5680342.48 96.25 -601728.92 5679047.49 97.50 -601729.10 5680111.01 96.25 -601729.20 5679391.10 97.50 -601729.25 5680259.77 96.25 -601729.34 5676664.56 100.00 -601729.39 5680314.24 96.25 -601729.44 5680703.34 97.50 -601729.64 5680322.84 96.25 -601729.68 5680642.64 97.50 -601729.80 5680410.19 96.25 -601729.83 5678936.19 97.50 -601729.93 5680573.20 97.50 -601729.95 5679963.94 97.50 -601730.06 5680601.38 97.50 -601730.11 5680862.53 97.50 -601730.25 5680101.47 97.50 -601730.54 5680896.32 97.50 -601730.67 5679400.42 96.20 -601730.75 5679381.45 97.50 -601730.86 5676761.53 98.75 -601730.89 5680532.16 97.50 -601730.90 5680140.34 97.50 -601730.99 5680248.63 97.50 -601731.00 5677631.56 97.50 -601731.08 5680222.83 97.50 -601731.18 5680528.40 97.50 -601731.48 5680350.36 96.25 -601731.59 5676926.41 97.50 -601731.66 5676565.96 101.25 -601731.68 5680102.02 96.25 -601731.70 5680797.90 97.50 -601731.74 5680302.09 96.25 -601732.04 5680545.54 97.50 -601732.08 5678767.21 97.50 -601732.13 5680415.16 96.25 -601732.20 5680521.23 97.50 -601732.53 5680554.70 97.50 -601732.57 5679361.16 97.50 -601732.57 5679284.71 97.50 -601732.61 5679331.65 97.50 -601732.72 5679351.33 97.50 -601732.76 5679341.49 97.50 -601732.84 5678802.44 97.50 -601732.84 5680789.40 97.50 -601732.85 5680120.70 97.50 -601732.93 5679189.70 97.50 -601732.94 5679371.94 97.50 -601732.97 5678734.27 97.50 -601733.04 5679321.83 97.50 -601733.05 5678998.33 97.50 -601733.15 5680587.20 97.50 -601733.30 5678966.58 97.50 -601733.38 5679976.85 97.50 -601733.46 5676893.26 97.50 -601733.60 5679983.82 97.50 -601733.60 5679033.14 97.50 -601733.61 5680356.05 96.25 -601733.71 5679268.05 97.50 -601733.73 5680515.36 97.50 -601733.96 5679055.78 97.50 -601734.07 5680560.70 97.50 -601734.27 5680457.08 97.50 -601734.28 5679399.50 97.50 -601734.34 5678986.34 97.50 -601734.54 5680213.60 97.50 -601734.55 5679312.16 97.50 -601734.57 5679869.73 98.75 -601734.79 5680734.26 97.50 -601734.96 5680663.88 97.50 -601735.10 5680636.60 97.50 -601735.11 5677638.50 97.50 -601735.12 5680239.60 97.50 -601735.18 5679952.36 97.50 -601735.21 5679020.78 97.50 -601735.23 5680452.35 97.50 -601735.31 5676962.63 97.50 -601735.43 5680653.12 97.50 -601735.46 5680827.41 97.50 -601735.56 5680807.62 97.50 -601735.65 5679417.04 97.50 -601735.68 5678928.11 97.50 -601735.81 5680887.83 97.50 -601735.99 5679275.34 97.50 -601736.15 5680854.56 97.50 -601736.34 5680365.47 96.25 -601736.45 5680542.55 96.25 -601736.45 5680252.85 96.25 -601736.50 5680110.31 96.25 -601737.00 5678655.38 97.50 -601737.12 5679041.92 97.50 -601737.35 5677412.41 97.50 -601737.39 5680496.83 97.50 -601737.43 5680132.88 97.50 -601737.49 5679302.77 97.50 -601737.54 5679860.92 98.75 -601737.78 5680094.95 97.50 -601737.85 5677006.28 97.50 -601737.94 5679959.32 97.50 -601737.94 5679878.80 98.75 -601738.25 5679978.29 97.25 -601738.26 5679363.67 97.50 -601738.29 5680101.27 96.00 -601738.39 5679408.09 97.50 -601738.49 5676919.20 97.50 -601738.56 5680204.48 97.50 -601738.59 5680538.73 96.25 -601738.60 5680342.33 96.25 -601738.68 5680699.55 97.50 -601738.75 5680313.43 96.25 -601738.95 5680321.51 96.25 -601739.01 5680095.51 96.25 -601739.04 5680406.56 96.25 -601739.12 5677016.18 97.50 -601739.29 5676663.60 100.00 -601739.50 5679324.92 97.50 -601739.64 5680641.88 97.50 -601739.74 5680396.48 96.25 -601739.74 5680113.46 97.50 -601739.74 5680230.78 97.50 -601739.81 5679293.21 97.50 -601739.93 5680573.24 97.50 -601740.01 5680503.42 97.50 -601740.01 5679334.74 97.50 -601740.05 5680601.14 97.50 -601740.29 5678959.60 97.50 -601740.38 5677026.07 97.50 -601740.42 5679971.63 97.50 -601740.47 5680592.59 97.50 -601740.59 5676996.75 97.50 -601740.61 5679354.21 97.50 -601740.69 5676759.89 98.75 -601740.73 5679315.22 97.50 -601740.73 5679183.54 97.50 -601740.77 5680533.68 97.50 -601740.89 5679344.53 97.50 -601740.95 5680584.29 97.50 -601741.15 5680528.85 97.50 -601741.17 5680350.93 96.25 -601741.38 5677036.00 97.50 -601741.45 5680726.80 97.50 -601741.46 5679869.74 99.00 -601741.48 5676564.06 101.25 -601741.50 5680300.13 96.25 -601741.50 5679049.64 97.50 -601741.54 5680412.49 96.25 -601741.55 5678768.99 97.50 -601741.71 5678721.33 97.25 -601741.83 5678920.25 97.50 -601741.85 5680547.25 97.50 -601741.88 5680879.88 97.50 -601741.96 5680523.36 97.50 -601742.00 5679283.62 97.50 -601742.03 5679981.05 97.50 -601742.04 5680846.49 97.50 -601742.07 5677045.95 97.50 -601742.08 5678980.28 97.50 -601742.13 5678730.81 97.50 -601742.14 5680435.34 96.25 -601742.23 5676888.59 97.50 -601742.30 5680820.14 97.50 -601742.33 5680244.77 96.25 -601742.38 5678994.76 97.50 -601742.51 5680555.32 97.50 -601742.65 5678800.64 97.50 -601742.76 5680800.69 97.50 -601742.76 5677055.90 97.50 -601742.86 5680195.45 97.50 -601743.04 5679029.88 97.50 -601743.07 5680103.03 96.25 -601743.18 5680461.25 97.50 -601743.37 5680518.00 97.50 -601743.43 5679305.85 97.50 -601743.45 5677065.86 97.50 -601743.52 5677085.81 97.50 -601743.52 5677075.83 97.50 -601743.57 5677095.78 97.50 -601743.59 5680356.42 96.25 -601743.72 5679015.56 97.50 -601743.79 5677105.76 97.50 -601743.83 5680346.89 95.75 -601743.92 5676987.38 97.50 -601744.00 5680561.86 97.50 -601744.02 5677115.73 97.50 -601744.07 5676957.93 97.50 -601744.81 5680126.14 97.50 -601744.94 5680454.19 97.50 -601744.95 5680663.52 97.50 -601744.97 5680222.26 97.50 -601745.08 5680636.08 97.50 -601745.16 5677125.62 97.50 -601745.38 5676911.99 97.50 -601745.42 5680652.55 97.50 -601745.44 5678650.14 97.50 -601745.52 5678712.57 97.25 -601745.66 5680088.80 97.50 -601745.78 5677417.40 97.50 -601745.80 5680393.29 96.25 -601746.23 5680544.56 96.25 -601746.30 5680366.12 96.25 -601746.48 5679038.46 97.50 -601746.52 5680451.81 96.25 -601746.54 5679861.33 98.75 -601746.63 5680106.22 97.50 -601746.66 5679974.91 97.50 -601746.72 5679928.26 97.50 -601746.79 5679878.74 98.75 -601746.87 5677135.45 97.50 -601747.10 5680494.89 97.50 -601747.10 5678725.18 97.25 -601747.23 5680446.05 96.25 -601747.27 5680236.21 96.25 -601747.43 5680871.59 97.50 -601747.65 5678953.00 97.50 -601747.65 5679297.00 97.50 -601747.78 5680091.45 96.25 -601747.80 5680695.46 97.50 -601747.81 5680186.79 97.50 -601747.88 5679937.07 97.50 -601747.93 5680838.41 97.50 -601748.12 5680312.62 96.25 -601748.22 5680212.82 97.50 -601748.23 5680719.46 97.50 -601748.24 5679278.83 97.50 -601748.29 5680403.03 96.25 -601748.31 5680342.17 96.25 -601748.35 5680321.24 96.25 -601748.36 5677145.31 97.50 -601748.45 5678912.81 97.50 -601748.49 5680540.13 96.25 -601748.63 5680431.68 96.25 -601748.72 5678961.35 97.75 -601748.80 5679177.75 97.50 -601748.85 5680400.37 96.25 -601749.03 5680812.74 97.50 -601749.03 5680389.89 97.50 -601749.16 5678973.37 97.50 -601749.23 5680507.10 97.50 -601749.24 5676662.63 100.00 -601749.34 5676979.01 97.50 -601749.38 5677155.23 97.50 -601749.54 5680095.67 96.25 -601749.62 5680641.34 97.50 -601749.63 5680383.64 97.50 -601749.82 5680603.26 97.50 -601749.92 5680573.27 97.50 -601750.06 5676882.87 97.50 -601750.37 5680592.54 97.50 -601750.39 5677165.16 97.50 -601750.41 5680794.27 97.50 -601750.46 5680226.74 96.25 -601750.52 5679870.22 98.75 -601750.52 5676758.25 98.75 -601750.59 5679045.50 97.50 -601750.64 5679287.66 97.50 -601750.67 5680535.05 97.50 -601750.69 5680409.46 96.25 -601750.86 5680351.50 96.25 -601750.93 5680439.32 96.25 -601750.95 5680530.64 97.50 -601750.95 5680584.43 97.50 -601751.02 5678766.19 97.50 -601751.08 5678727.43 97.50 -601751.22 5680297.80 96.25 -601751.22 5677175.10 97.50 -601751.25 5679209.35 97.50 -601751.29 5676562.15 101.25 -601751.40 5679919.77 97.50 -601751.49 5678716.98 97.25 -601751.51 5678990.79 97.50 -601751.52 5680558.98 97.50 -601751.58 5680549.57 97.50 -601751.76 5680525.34 97.50 -601751.81 5677185.06 97.50 -601751.94 5679025.85 97.50 -601752.08 5680203.59 97.50 -601752.28 5676904.78 97.50 -601752.33 5678798.22 97.50 -601752.39 5677195.02 97.50 -601752.44 5677685.30 97.50 -601752.46 5680346.74 95.75 -601752.48 5680862.96 97.50 -601752.55 5678708.61 97.25 -601752.67 5677424.61 97.50 -601752.72 5679011.25 97.50 -601752.73 5680464.23 97.50 -601752.87 5677254.75 97.50 -601752.88 5677204.99 97.50 -601752.90 5680521.00 97.50 -601753.05 5677244.83 97.50 -601753.19 5680082.22 97.50 -601753.24 5677214.96 97.50 -601753.33 5680178.48 97.50 -601753.40 5680121.02 97.50 -601753.58 5680356.78 96.25 -601753.61 5677224.93 97.50 -601753.82 5680830.33 97.50 -601753.87 5676956.06 97.50 -601753.93 5677675.43 97.50 -601753.98 5677234.90 97.50 -601754.02 5677695.05 97.50 -601754.05 5678645.17 97.50 -601754.09 5677264.65 97.50 -601754.15 5680099.63 97.50 -601754.18 5680217.53 96.25 -601754.34 5680457.57 97.50 -601754.46 5676970.46 97.50 -601754.85 5680662.13 97.50 -601755.01 5678946.41 97.50 -601755.05 5680635.41 97.50 -601755.18 5679922.72 97.25 -601755.21 5679910.81 97.50 -601755.31 5677274.55 97.50 -601755.32 5678719.08 97.50 -601755.32 5676874.44 97.50 -601755.35 5680712.45 97.50 -601755.40 5680651.98 97.50 -601755.55 5680395.17 96.25 -601755.66 5678905.91 97.50 -601755.66 5680455.44 96.25 -601755.67 5678709.19 97.50 -601755.72 5677487.81 97.50 -601755.75 5679034.75 97.50 -601755.75 5680805.34 97.50 -601755.82 5679933.37 97.50 -601755.89 5680547.11 96.25 -601756.13 5680367.83 96.25 -601756.13 5680428.74 97.50 -601756.49 5680449.39 96.25 -601756.63 5680475.22 97.50 -601756.72 5680690.94 97.50 -601757.07 5680495.13 97.50 -601757.08 5679172.26 97.50 -601757.19 5680314.31 96.25 -601757.39 5678699.42 97.50 -601757.41 5678967.93 97.50 -601757.54 5680543.99 96.25 -601757.57 5677481.21 97.50 -601757.60 5680319.93 96.25 -601757.74 5680854.46 97.50 -601757.78 5680435.28 96.25 -601757.82 5679201.89 97.50 -601758.01 5680342.01 96.25 -601758.06 5680195.67 97.50 -601758.14 5680393.76 97.50 -601758.18 5677703.58 97.50 -601758.26 5676896.82 97.50 -601758.34 5680788.20 97.50 -601758.42 5677283.94 97.50 -601758.61 5679018.82 97.50 -601758.83 5680509.86 97.50 -601758.89 5676961.52 97.50 -601758.95 5677432.28 97.50 -601759.03 5676660.65 100.00 -601759.09 5680481.80 97.50 -601759.23 5680421.33 97.50 -601759.40 5679040.81 97.50 -601759.57 5677667.65 97.50 -601759.58 5680384.07 97.50 -601759.58 5680640.55 97.50 -601759.66 5680822.22 97.50 -601759.71 5680603.23 97.50 -601759.72 5680209.22 96.25 -601759.89 5678761.97 97.50 -601759.92 5680573.30 97.50 -601759.98 5679902.33 97.50 -601759.99 5679952.63 97.50 -601760.15 5680538.16 97.50 -601760.17 5678985.81 97.50 -601760.19 5680171.20 97.50 -601760.33 5680442.23 96.25 -601760.35 5680591.90 97.50 -601760.35 5676756.61 98.75 -601760.35 5680075.26 97.50 -601760.43 5680231.89 96.25 -601760.54 5680533.44 97.50 -601760.55 5680352.07 96.25 -601760.61 5680409.76 96.25 -601760.63 5679924.95 97.50 -601760.92 5680584.91 97.50 -601760.97 5676559.69 101.25 -601761.09 5680346.59 95.75 -601761.10 5676866.39 97.50 -601761.19 5680241.30 96.25 -601761.19 5680298.28 96.25 -601761.31 5680551.86 97.50 -601761.58 5680527.25 97.50 -601761.68 5680093.06 97.50 -601761.70 5680154.96 97.50 -601761.84 5679007.20 97.50 -601761.84 5678795.14 97.50 -601761.86 5679961.40 97.50 -601762.05 5680116.01 97.50 -601762.27 5680467.21 97.50 -601762.47 5680705.43 97.50 -601762.50 5680797.97 97.50 -601762.65 5677292.95 97.50 -601762.77 5680522.59 97.50 -601762.88 5678899.01 97.50 -601762.98 5678691.44 97.50 -601763.09 5680846.02 97.50 -601763.56 5680357.12 96.25 -601763.65 5679915.71 97.50 -601763.66 5678643.81 97.50 -601763.73 5680460.99 97.50 -601763.81 5678941.91 97.50 -601763.81 5677440.99 97.50 -601763.98 5676888.65 97.50 -601763.98 5680736.96 97.50 -601764.34 5680145.86 97.50 -601764.55 5680433.14 97.50 -601764.68 5680188.19 97.50 -601764.69 5680660.39 97.50 -601764.84 5680633.41 97.50 -601764.88 5680458.89 96.25 -601764.88 5677474.42 97.50 -601764.90 5677491.37 97.50 -601764.99 5680398.18 96.25 -601765.01 5679031.02 97.50 -601765.06 5679195.69 97.50 -601765.31 5679944.68 97.50 -601765.36 5679166.77 97.50 -601765.38 5680651.41 97.50 -601765.50 5680814.10 97.50 -601765.63 5680781.40 97.50 -601765.63 5680686.42 97.50 -601765.66 5678962.49 97.50 -601765.69 5679906.21 97.50 -601765.78 5680728.38 97.50 -601765.94 5680369.45 96.25 -601766.11 5677709.31 97.50 -601766.12 5680201.55 96.25 -601766.14 5680451.07 96.25 -601766.22 5680476.28 97.50 -601766.59 5677660.55 97.50 -601766.72 5680249.59 96.25 -601766.94 5680496.72 97.50 -601766.94 5680224.31 96.25 -601766.97 5678755.02 97.50 -601766.99 5680438.77 96.25 -601767.47 5680068.25 97.50 -601767.66 5680164.57 97.50 -601767.72 5680341.86 96.25 -601767.74 5676859.00 97.50 -601767.93 5680395.80 97.50 -601767.96 5679015.82 97.50 -601768.22 5680485.58 97.50 -601768.26 5677449.90 97.50 -601768.30 5677301.17 97.50 -601768.35 5680085.62 97.50 -601768.53 5680512.28 97.50 -601768.64 5680837.70 97.50 -601768.78 5676658.43 100.00 -601768.82 5678980.84 97.50 -601768.84 5680456.12 96.00 -601768.99 5679038.50 97.50 -601769.03 5680446.65 96.25 -601769.15 5680420.21 97.50 -601769.21 5680601.40 97.50 -601769.30 5680790.64 97.50 -601769.34 5680386.20 97.50 -601769.40 5678683.93 97.50 -601769.43 5680638.86 97.50 -601769.53 5680541.63 97.50 -601769.71 5680346.58 95.75 -601769.92 5680573.33 97.50 -601770.08 5680593.95 97.50 -601770.10 5678892.12 97.50 -601770.15 5680536.21 97.50 -601770.18 5676754.97 98.75 -601770.20 5680411.95 96.25 -601770.23 5678789.99 97.50 -601770.25 5680351.75 96.25 -601770.32 5680699.26 97.50 -601770.36 5680157.61 97.50 -601770.59 5676556.95 101.25 -601770.81 5680138.52 97.50 -601770.81 5680586.34 97.50 -601770.88 5676881.50 97.50 -601770.88 5679962.82 97.50 -601770.97 5680233.71 97.50 -601771.06 5680111.69 97.50 -601771.10 5680553.90 97.50 -601771.15 5680299.09 96.25 -601771.23 5680529.83 97.50 -601771.26 5679003.90 97.50 -601771.34 5680805.99 97.50 -601771.40 5680720.76 97.50 -601771.65 5680735.38 97.50 -601771.79 5678138.83 97.50 -601771.81 5680470.19 97.50 -601771.90 5678148.76 97.50 -601771.98 5677459.16 97.50 -601772.00 5680181.38 97.50 -601772.11 5679937.89 97.50 -601772.19 5677467.63 97.50 -601772.43 5680774.07 97.50 -601772.70 5678158.65 97.50 -601772.71 5680523.33 97.50 -601772.91 5680194.23 96.25 -601772.93 5680257.42 96.25 -601773.10 5679160.54 97.50 -601773.22 5680444.57 96.00 -601773.28 5680463.98 97.50 -601773.29 5678939.42 97.50 -601773.55 5680357.45 96.25 -601773.59 5678643.80 97.50 -601773.60 5677653.46 97.50 -601773.70 5678956.78 97.50 -601773.73 5680216.98 96.25 -601773.88 5678129.20 97.50 -601773.99 5680436.43 97.50 -601774.19 5678168.47 97.50 -601774.23 5680829.41 97.50 -601774.39 5680461.39 96.25 -601774.42 5680658.10 97.50 -601774.45 5676851.66 97.50 -601774.49 5680400.99 96.25 -601774.55 5680681.90 97.50 -601774.62 5679028.41 97.50 -601774.64 5680631.41 97.50 -601774.86 5677491.92 97.50 -601774.89 5679194.28 97.50 -601774.90 5680078.07 97.50 -601774.97 5680225.18 97.50 -601775.26 5680650.01 97.50 -601775.27 5677706.97 97.50 -601775.52 5680062.34 97.50 -601775.86 5678751.49 97.50 -601775.88 5680723.78 97.20 -601775.92 5680369.91 96.25 -601775.96 5678178.19 97.50 -601776.00 5680478.31 97.50 -601776.10 5680783.30 97.50 -601776.21 5680442.21 96.25 -601776.41 5680455.72 96.00 -601776.65 5680498.96 97.50 -601776.67 5678119.66 97.50 -601776.71 5678974.73 97.50 -601776.90 5680797.69 97.50 -601777.02 5677304.29 97.50 -601777.08 5680236.92 97.50 -601777.11 5680765.43 97.50 -601777.31 5678885.22 97.50 -601777.42 5680341.77 96.25 -601777.68 5680488.82 97.50 -601777.73 5680397.77 97.50 -601777.80 5679015.15 97.50 -601777.86 5680713.89 97.50 -601777.99 5680131.73 97.50 -601778.17 5678679.28 97.50 -601778.18 5680514.85 97.50 -601778.20 5676874.73 97.50 -601778.27 5680265.85 96.25 -601778.27 5680728.56 97.50 -601778.32 5680693.27 97.50 -601778.34 5680346.82 95.75 -601778.52 5676656.20 100.00 -601778.60 5680449.95 96.00 -601778.67 5680755.74 97.50 -601778.77 5680745.75 97.50 -601778.85 5680545.23 97.50 -601778.85 5678785.14 97.50 -601778.88 5679037.13 97.50 -601778.88 5680389.17 97.50 -601779.13 5679931.34 97.50 -601779.13 5680420.82 97.50 -601779.27 5680637.07 97.50 -601779.28 5680174.52 97.50 -601779.41 5678110.11 97.50 -601779.60 5680415.13 96.25 -601779.80 5680187.01 96.25 -601779.83 5680538.69 97.50 -601779.91 5680573.36 97.50 -601779.94 5680821.22 97.50 -601779.96 5680351.44 96.25 -601780.01 5676753.34 98.75 -601780.20 5676554.22 101.25 -601780.34 5679961.10 97.50 -601780.40 5680209.54 96.25 -601780.68 5679000.60 97.50 -601780.70 5680587.81 97.50 -601780.73 5680109.41 97.50 -601780.87 5680532.47 97.50 -601780.93 5680555.56 97.50 -601781.03 5678950.14 97.50 -601781.08 5677646.86 97.50 -601781.08 5680300.19 96.25 -601781.18 5676844.35 97.50 -601781.29 5680217.43 97.50 -601781.31 5679154.99 97.50 -601781.36 5680473.17 97.50 -601781.48 5680070.54 97.50 -601781.50 5678186.44 97.50 -601781.67 5679946.45 97.25 -601782.14 5680274.98 96.25 -601782.35 5680521.93 97.50 -601782.51 5677700.25 97.50 -601782.64 5678941.08 97.50 -601782.72 5680467.23 97.50 -601782.79 5680789.65 97.50 -601782.79 5680122.96 97.50 -601782.89 5680775.97 97.50 -601783.14 5677297.05 97.50 -601783.23 5678101.06 97.50 -601783.52 5678644.25 97.50 -601783.53 5680357.90 96.25 -601783.53 5680439.39 97.50 -601783.71 5680677.96 97.50 -601783.83 5680326.43 96.25 -601783.91 5680463.89 96.25 -601783.97 5680455.32 96.00 -601784.10 5680057.27 97.50 -601784.15 5680655.82 97.50 -601784.18 5680403.14 96.25 -601784.35 5679191.73 97.50 -601784.39 5680629.21 97.50 -601784.44 5679026.73 97.50 -601784.78 5677287.24 97.50 -601784.83 5677492.31 97.50 -601785.09 5680648.22 97.50 -601785.41 5680738.73 97.50 -601785.45 5680445.60 96.25 -601785.46 5680722.34 97.50 -601785.51 5678752.46 97.50 -601785.51 5680481.36 97.50 -601785.60 5678879.79 97.50 -601785.75 5676868.26 97.50 -601785.80 5678970.79 97.50 -601785.90 5680370.37 96.25 -601786.08 5680232.60 97.50 -601786.09 5680714.24 97.50 -601786.13 5680179.28 96.25 -601786.14 5680502.13 97.50 -601786.24 5679019.86 97.50 -601786.42 5680167.53 97.50 -601786.83 5680813.98 97.50 -601786.92 5677277.58 97.50 -601786.97 5680347.05 95.75 -601786.98 5680202.02 96.25 -601787.04 5678194.69 97.50 -601787.11 5680342.39 96.25 -601787.14 5680492.05 97.50 -601787.33 5680114.12 97.50 -601787.54 5680399.11 97.50 -601787.58 5680689.71 97.50 -601787.72 5680209.78 97.50 -601787.83 5679928.82 97.50 -601787.91 5676652.92 100.00 -601787.97 5678678.11 97.50 -601788.10 5678781.34 97.50 -601788.15 5680063.12 97.50 -601788.38 5680392.23 97.50 -601788.45 5679955.99 97.50 -601788.48 5680547.91 97.50 -601788.52 5677640.23 97.50 -601788.67 5677692.40 97.50 -601788.79 5680282.32 96.25 -601788.81 5679036.13 97.50 -601788.82 5678092.84 97.50 -601788.89 5676838.14 97.50 -601789.07 5680418.10 96.25 -601789.09 5680421.54 97.50 -601789.10 5680635.26 97.50 -601789.44 5680321.38 96.25 -601789.52 5680541.17 97.50 -601789.66 5680351.36 96.25 -601789.68 5676551.06 101.25 -601789.69 5680768.64 97.50 -601789.76 5680782.49 97.50 -601789.82 5679149.87 97.50 -601789.84 5676751.71 98.75 -601789.88 5680574.12 97.50 -601789.96 5678996.93 97.50 -601790.27 5678142.79 97.50 -601790.56 5680589.49 97.50 -601790.58 5680534.86 97.50 -601790.92 5680555.93 97.50 -601790.92 5680476.08 97.50 -601790.93 5678132.81 97.50 -601790.98 5677268.47 97.50 -601791.01 5680301.22 96.25 -601791.19 5680192.99 96.25 -601791.27 5679184.84 97.50 -601791.74 5678152.65 97.50 -601791.83 5680458.02 96.00 -601792.04 5680470.84 97.50 -601792.44 5680330.08 96.25 -601792.46 5680171.56 96.25 -601792.87 5677012.22 98.75 -601792.93 5680412.32 96.00 -601793.03 5678202.54 97.50 -601793.15 5680442.13 97.50 -601793.17 5680674.72 97.50 -601793.28 5680466.90 96.25 -601793.45 5678644.70 97.50 -601793.46 5678162.50 97.50 -601793.50 5680358.61 96.25 -601793.68 5680160.66 97.50 -601793.71 5678123.31 97.50 -601793.72 5680806.73 97.50 -601793.80 5677002.66 98.75 -601793.83 5680405.49 96.25 -601793.89 5680653.54 97.50 -601793.98 5680733.59 97.50 -601794.12 5680626.94 97.50 -601794.13 5680202.13 97.50 -601794.35 5678874.99 97.50 -601794.47 5680449.51 96.25 -601794.49 5676863.44 97.50 -601794.55 5679935.65 97.50 -601794.71 5680227.55 97.50 -601794.80 5677492.35 97.50 -601794.93 5680646.42 97.50 -601794.94 5680484.66 97.50 -601795.04 5677684.72 97.50 -601795.04 5678755.05 97.50 -601795.13 5678085.21 97.50 -601795.18 5678172.35 97.50 -601795.34 5678968.28 97.50 -601795.59 5680347.29 95.75 -601795.62 5680505.29 97.50 -601795.64 5677633.23 97.50 -601795.88 5680370.19 96.25 -601795.90 5679949.93 97.50 -601796.48 5680761.31 97.50 -601796.64 5680495.17 97.50 -601796.69 5680324.69 96.00 -601796.74 5680775.33 97.50 -601796.80 5680343.00 96.25 -601796.82 5680184.80 96.25 -601796.85 5680402.77 97.50 -601796.90 5680686.18 97.50 -601796.95 5676648.65 100.00 -601797.38 5678114.01 97.50 -601797.44 5679177.05 97.50 -601797.47 5680287.25 96.25 -601797.48 5678778.01 97.50 -601797.61 5677261.89 97.50 -601797.84 5676834.36 97.50 -601797.87 5678678.35 97.50 -601798.33 5680549.18 97.50 -601798.34 5679144.74 97.50 -601798.36 5680392.75 97.50 -601798.59 5680420.92 96.25 -601798.68 5680424.34 97.50 -601798.74 5676994.19 98.75 -601798.78 5679035.79 97.50 -601798.86 5680320.31 96.25 -601798.90 5680633.32 97.50 -601799.07 5676547.63 101.25 -601799.09 5680193.45 97.50 -601799.16 5678993.07 97.50 -601799.36 5680351.54 96.25 -601799.47 5680541.56 97.50 -601799.62 5680164.58 96.25 -601799.62 5676749.86 98.75 -601799.70 5680460.72 96.00 -601799.84 5680574.96 97.50 -601800.26 5678180.80 97.50 -601800.27 5678715.99 98.50 -601800.36 5680799.26 97.50 -601800.38 5680536.57 97.50 -601800.41 5680590.99 97.50 -601800.50 5680478.96 97.50 -601800.71 5678208.85 97.50 -601800.90 5680555.47 97.50 -601801.00 5680301.62 96.25 -601801.02 5679942.09 97.50 -601801.07 5680153.93 97.50 -601801.37 5677677.01 97.50 -601801.60 5680473.70 97.50 -601801.88 5680727.49 97.50 -601801.92 5680329.31 96.25 -601801.99 5680414.32 96.00 -601802.02 5678078.04 97.50 -601802.44 5678105.46 97.50 -601802.58 5677626.07 97.50 -601802.58 5677011.59 98.75 -601802.62 5678869.40 97.50 -601802.63 5680671.49 97.50 -601802.70 5680469.74 96.25 -601802.77 5680444.86 97.50 -601802.98 5680176.94 96.25 -601803.06 5680273.90 96.25 -601803.28 5678646.02 97.50 -601803.28 5680753.97 97.50 -601803.42 5676859.09 97.50 -601803.44 5680407.98 96.25 -601803.46 5680359.32 96.25 -601803.59 5680623.77 97.50 -601803.63 5680268.47 96.25 -601803.64 5680651.36 97.50 -601803.69 5680452.96 96.25 -601803.80 5680223.49 97.50 -601803.89 5680768.36 97.50 -601804.44 5680487.78 97.50 -601804.51 5677356.28 97.50 -601804.73 5677493.19 97.50 -601804.75 5680644.55 97.50 -601804.96 5678755.38 97.50 -601805.04 5680185.43 97.50 -601805.11 5680508.45 97.50 -601805.16 5677365.87 97.50 -601805.32 5678968.09 97.50 -601805.67 5680681.38 97.50 -601805.86 5680369.69 96.25 -601805.99 5676644.38 100.00 -601806.14 5680498.28 97.50 -601806.22 5678188.82 97.50 -601806.40 5680405.63 97.50 -601806.48 5680342.99 96.25 -601806.62 5680157.46 96.25 -601806.73 5679175.28 97.50 -601806.88 5677260.66 97.50 -601806.95 5680290.34 96.25 -601806.98 5680791.77 97.50 -601807.10 5676988.89 98.75 -601807.21 5677668.92 97.50 -601807.24 5679140.36 97.50 -601807.37 5678776.50 97.50 -601807.45 5680463.71 96.00 -601807.55 5678069.92 97.50 -601807.59 5676832.39 97.50 -601807.76 5678679.03 97.50 -601808.24 5680423.21 96.25 -601808.26 5678097.34 97.50 -601808.27 5680548.49 97.50 -601808.34 5680630.03 97.50 -601808.34 5680393.27 97.50 -601808.37 5680426.75 97.50 -601808.39 5677347.17 97.50 -601808.39 5678989.26 97.50 -601808.41 5680320.31 96.25 -601808.57 5676544.52 101.25 -601808.76 5679035.72 97.50 -601808.80 5678954.33 97.50 -601808.83 5680147.64 97.50 -601809.06 5680351.90 96.25 -601809.12 5678214.10 97.50 -601809.36 5680720.87 97.50 -601809.41 5676747.97 98.75 -601809.47 5677618.85 97.50 -601809.47 5680541.65 97.50 -601809.62 5680576.69 97.50 -601809.89 5680169.74 96.25 -601810.03 5677374.32 97.50 -601810.07 5680481.83 97.50 -601810.32 5680589.65 97.50 -601810.32 5680746.90 97.50 -601810.37 5680536.94 97.50 -601810.85 5678863.75 97.50 -601810.89 5680555.01 97.50 -601810.96 5680301.61 96.25 -601811.05 5680416.32 96.00 -601811.18 5680761.51 97.50 -601811.31 5680476.07 97.50 -601811.42 5680328.28 96.25 -601811.63 5677007.80 98.75 -601811.75 5678961.46 97.50 -601811.78 5678060.94 97.50 -601811.81 5678650.37 97.50 -601811.98 5680178.26 97.50 -601812.08 5680668.22 97.50 -601812.19 5680472.34 96.25 -601812.32 5680447.80 97.50 -601812.36 5680457.60 96.25 -601812.36 5676854.74 97.50 -601812.73 5678196.41 97.50 -601812.77 5680619.83 97.50 -601812.78 5680275.22 96.25 -601812.89 5680265.33 96.25 -601812.92 5677338.28 97.50 -601813.04 5677660.83 97.50 -601813.05 5680410.47 96.25 -601813.22 5680220.14 97.50 -601813.41 5680649.23 97.50 -601813.43 5680360.04 96.25 -601813.60 5680150.33 96.25 -601813.64 5680784.32 97.50 -601813.67 5680640.10 97.50 -601813.94 5680490.89 97.50 -601814.16 5677266.70 97.50 -601814.21 5677495.72 97.50 -601814.26 5678752.69 97.50 -601814.42 5676639.06 100.00 -601814.44 5680676.58 97.50 -601814.46 5677610.30 97.50 -601814.58 5680376.56 97.50 -601814.64 5680511.44 97.50 -601814.70 5678971.48 97.50 -601814.76 5678051.46 97.50 -601814.93 5679180.42 97.50 -601815.01 5678090.08 97.50 -601815.07 5680467.03 96.00 -601815.21 5677276.61 97.50 -601815.46 5676983.59 98.75 -601815.48 5680295.01 96.25 -601815.63 5680385.26 97.50 -601815.64 5680501.39 97.50 -601815.84 5680369.20 96.25 -601816.13 5680407.92 97.50 -601816.17 5680342.36 96.25 -601816.25 5679166.54 97.50 -601816.29 5679136.26 97.50 -601816.51 5680141.25 97.50 -601816.68 5680714.06 97.50 -601816.81 5677381.62 97.50 -601816.83 5677286.46 97.50 -601816.88 5680162.61 96.25 -601817.10 5678950.97 97.50 -601817.25 5678774.99 97.50 -601817.32 5677600.75 97.50 -601817.32 5680322.54 96.25 -601817.34 5676830.49 97.50 -601817.57 5678680.25 97.50 -601817.72 5678219.10 97.50 -601817.78 5680626.75 97.50 -601817.89 5680740.37 97.50 -601817.90 5680425.50 96.25 -601817.99 5676541.20 101.25 -601818.16 5680547.09 97.50 -601818.23 5680428.39 97.50 -601818.28 5676743.83 98.75 -601818.28 5680392.59 97.50 -601818.31 5678989.38 97.50 -601818.46 5680754.66 97.50 -601818.51 5678042.25 97.50 -601818.62 5679034.21 97.50 -601818.74 5680352.62 96.25 -601819.02 5678204.18 97.50 -601819.07 5680579.88 97.50 -601819.07 5677296.17 97.50 -601819.08 5678858.09 97.50 -601819.19 5680171.34 97.50 -601819.35 5677330.66 97.50 -601819.42 5678656.75 97.50 -601819.46 5680541.60 97.50 -601819.58 5677653.31 97.50 -601819.58 5679189.06 97.50 -601819.63 5680484.76 97.50 -601819.76 5680587.32 97.50 -601819.78 5679158.87 97.50 -601820.11 5680418.31 96.00 -601820.13 5678966.07 97.50 -601820.22 5680535.29 97.50 -601820.25 5677591.33 97.50 -601820.31 5680776.86 97.50 -601820.53 5677003.47 98.75 -601820.73 5680553.30 97.50 -601820.91 5680462.48 96.25 -601821.00 5680478.54 97.50 -601821.26 5680614.78 97.50 -601821.50 5680664.89 97.50 -601821.59 5676851.06 97.50 -601821.69 5680474.94 96.25 -601821.87 5680450.76 97.50 -601821.98 5678746.46 97.50 -601822.05 5680271.88 96.25 -601822.38 5680146.39 96.25 -601822.42 5680262.82 96.25 -601822.43 5680154.30 96.25 -601822.54 5680635.48 97.50 -601822.62 5676633.34 100.00 -601822.66 5680412.95 96.25 -601822.70 5680470.36 96.00 -601822.70 5680216.98 97.50 -601822.78 5678083.79 97.50 -601823.04 5680706.42 97.50 -601823.09 5676977.33 98.75 -601823.13 5677389.34 97.50 -601823.17 5680647.06 97.50 -601823.21 5680671.79 97.50 -601823.34 5677499.15 97.50 -601823.37 5680360.97 96.25 -601823.41 5680494.08 97.50 -601823.44 5678033.74 97.50 -601823.75 5680373.07 97.50 -601823.88 5678975.37 97.50 -601823.96 5680134.59 97.50 -601824.10 5679172.63 97.50 -601824.25 5680514.19 97.50 -601824.48 5677304.26 97.50 -601825.07 5678225.45 97.50 -601825.24 5680504.18 97.50 -601825.46 5680733.84 97.50 -601825.49 5678211.72 97.50 -601825.64 5679132.88 97.50 -601825.73 5680747.80 97.50 -601825.82 5680368.87 96.25 -601825.83 5677323.07 97.50 -601825.85 5680342.58 96.25 -601825.93 5677583.13 97.50 -601826.06 5680408.91 97.50 -601826.27 5680164.28 97.50 -601826.32 5677645.95 97.50 -601826.39 5676738.06 98.75 -601826.51 5678949.61 97.50 -601826.69 5680622.31 97.50 -601826.97 5680769.41 97.50 -601827.04 5678683.21 97.50 -601827.11 5676828.63 97.50 -601827.13 5678773.49 97.50 -601827.29 5677382.58 97.50 -601827.31 5676537.57 101.25 -601827.39 5677313.39 97.50 -601827.49 5678662.44 97.50 -601827.50 5680428.03 96.25 -601827.60 5678852.89 97.50 -601827.85 5678992.03 97.50 -601827.94 5680545.13 97.50 -601828.00 5680430.45 97.50 -601828.11 5679154.32 97.50 -601828.23 5679031.78 97.50 -601828.42 5680353.35 96.25 -601828.73 5680698.21 97.50 -601829.08 5678739.54 97.50 -601829.11 5680608.77 97.50 -601829.17 5679187.31 97.50 -601829.18 5680487.70 97.50 -601829.18 5680420.24 96.00 -601829.28 5680539.75 97.50 -601829.37 5678076.50 97.50 -601829.47 5680467.29 96.25 -601829.48 5676999.24 98.75 -601829.52 5678967.95 97.50 -601829.67 5678026.00 97.50 -601830.14 5680534.19 97.50 -601830.40 5676970.65 98.75 -601830.48 5680660.60 97.50 -601830.55 5680551.42 97.50 -601830.57 5680481.43 97.50 -601830.76 5680257.82 96.25 -601830.83 5678233.55 97.50 -601830.90 5676847.58 97.50 -601830.97 5680478.20 96.25 -601831.08 5677373.35 97.50 -601831.18 5679179.40 97.50 -601831.27 5678957.83 97.90 -601831.39 5680630.83 97.50 -601831.51 5680269.11 96.25 -601831.53 5676629.10 100.00 -601831.53 5680453.33 97.50 -601831.73 5680128.31 97.50 -601831.97 5680726.26 97.50 -601832.10 5680667.22 97.50 -601832.16 5680213.74 97.50 -601832.31 5680415.14 96.25 -601832.36 5677575.50 97.50 -601832.66 5680497.89 97.50 -601832.71 5680644.07 97.50 -601832.80 5680156.72 97.50 -601832.90 5678979.65 97.50 -601832.91 5680740.84 97.50 -601833.29 5680362.21 96.25 -601833.32 5677499.19 97.50 -601833.60 5677639.32 97.50 -601833.64 5678217.52 97.50 -601833.67 5680373.77 97.50 -601833.86 5680762.17 97.50 -601833.86 5680516.95 97.50 -601834.22 5678067.76 97.50 -601834.25 5676731.94 98.75 -601834.47 5679128.37 97.50 -601834.50 5678753.73 97.50 -601834.62 5679146.94 97.50 -601834.81 5677364.10 97.50 -601834.84 5680506.96 97.50 -601834.85 5680690.30 97.50 -601835.29 5678945.91 97.50 -601835.29 5680617.22 97.50 -601835.53 5680343.34 96.25 -601835.75 5678018.14 97.50 -601835.77 5680369.76 96.25 -601835.96 5678732.40 97.50 -601835.99 5678997.70 97.50 -601836.04 5680409.57 97.50 -601836.12 5678847.70 97.50 -601836.17 5676824.62 97.50 -601836.17 5678241.91 97.50 -601836.41 5678686.43 97.50 -601836.63 5676533.95 101.25 -601837.07 5680430.67 96.25 -601837.12 5678773.61 97.50 -601837.15 5678664.81 97.50 -601837.25 5676993.30 98.75 -601837.43 5679027.90 97.50 -601837.55 5680542.37 97.50 -601837.59 5680433.26 97.50 -601837.78 5680535.90 97.50 -601838.00 5677567.32 97.50 -601838.07 5680604.36 97.50 -601838.08 5680353.07 96.25 -601838.17 5676964.52 98.75 -601838.26 5678964.94 97.50 -601838.26 5680422.18 96.00 -601838.26 5678761.72 97.50 -601838.35 5680718.57 97.50 -601838.44 5677354.80 97.50 -601838.74 5680490.65 97.50 -601838.79 5680470.45 96.25 -601838.83 5678058.89 97.50 -601838.86 5680148.77 97.50 -601839.03 5680655.43 97.50 -601839.65 5680122.21 97.50 -601839.69 5678745.44 97.50 -601840.05 5680484.60 97.50 -601840.09 5680733.88 97.50 -601840.12 5676843.90 97.50 -601840.23 5680481.54 96.25 -601840.27 5680255.24 96.25 -601840.46 5680550.14 97.50 -601840.51 5680626.92 97.50 -601840.63 5678682.53 97.25 -601840.78 5680662.28 97.50 -601840.85 5680265.99 96.25 -601840.86 5678250.68 97.50 -601841.08 5680755.27 97.50 -601841.13 5676626.34 100.00 -601841.23 5680455.76 97.50 -601841.46 5680210.11 97.50 -601841.48 5678674.36 97.25 -601841.55 5678010.07 97.50 -601841.77 5678223.34 97.50 -601841.83 5679121.72 97.50 -601841.95 5680683.31 97.50 -601841.99 5678939.12 97.50 -601842.05 5680501.21 97.50 -601842.11 5676725.82 98.75 -601842.23 5680415.14 96.25 -601842.25 5680641.09 97.50 -601842.62 5677635.07 97.50 -601842.79 5678980.73 97.50 -601842.82 5678725.25 97.50 -601843.05 5677558.72 97.50 -601843.10 5678049.85 97.50 -601843.16 5678957.28 97.50 -601843.21 5680363.34 96.25 -601843.28 5677498.75 97.50 -601843.46 5680375.84 97.50 -601843.49 5680519.51 97.50 -601843.66 5679143.64 97.50 -601843.71 5677347.66 97.50 -601844.08 5680612.51 97.50 -601844.12 5680510.52 97.50 -601844.30 5680258.62 96.00 -601844.41 5676986.46 98.75 -601844.69 5680710.84 97.50 -601844.82 5678842.84 97.50 -601845.08 5680344.86 96.25 -601845.14 5679001.44 97.50 -601845.17 5676820.39 97.50 -601845.74 5680370.27 96.25 -601845.86 5679022.60 97.50 -601845.95 5678687.80 97.50 -601845.96 5676530.36 101.25 -601846.03 5680409.57 97.50 -601846.05 5678737.73 97.50 -601846.07 5676958.56 98.75 -601846.58 5680226.85 97.50 -601846.59 5678664.54 97.50 -601846.88 5678258.39 97.50 -601846.93 5680726.60 97.50 -601846.96 5680431.08 96.25 -601846.96 5678948.50 97.50 -601846.97 5680142.99 97.50 -601847.12 5678773.84 97.50 -601847.23 5680435.89 97.50 -601847.24 5680539.93 97.50 -601847.53 5680422.18 96.00 -601847.59 5680650.26 97.50 -601847.63 5680351.80 96.25 -601847.67 5678764.44 97.50 -601847.84 5680602.25 97.50 -601848.01 5678041.19 97.50 -601848.13 5680748.17 97.50 -601848.22 5680473.28 96.25 -601848.33 5680493.45 97.50 -601848.48 5678002.95 97.50 -601848.54 5677550.39 97.50 -601848.63 5680117.82 97.50 -601848.82 5677627.39 97.50 -601848.96 5678230.14 97.50 -601848.97 5676839.38 97.50 -601849.13 5679114.97 97.50 -601849.25 5678939.78 97.50 -601849.26 5680656.98 97.50 -601849.40 5680676.64 97.50 -601849.48 5680487.90 97.50 -601849.68 5678685.72 97.25 -601849.76 5680483.96 96.25 -601849.78 5680252.66 96.25 -601849.89 5676719.59 98.75 -601850.18 5678718.60 97.50 -601850.28 5680624.81 97.50 -601850.38 5680263.77 96.25 -601850.40 5680549.06 97.50 -601850.50 5680205.83 97.50 -601850.53 5680636.15 97.50 -601850.74 5676623.57 100.00 -601850.86 5680702.98 97.50 -601850.93 5680458.18 97.50 -601851.02 5680516.63 97.50 -601851.31 5678672.58 97.25 -601851.59 5680232.91 97.50 -601851.85 5680503.18 97.50 -601852.16 5680415.14 96.25 -601852.49 5680218.99 97.50 -601852.50 5678730.09 97.50 -601852.52 5676981.00 98.75 -601852.63 5680365.84 96.25 -601852.68 5678982.06 97.50 -601853.24 5679015.92 97.50 -601853.25 5677498.70 97.50 -601853.32 5680374.23 97.50 -601853.41 5680608.91 97.50 -601853.58 5677346.23 97.50 -601853.58 5679143.11 97.50 -601853.60 5678971.16 97.50 -601853.72 5680719.25 97.50 -601853.87 5678962.55 97.50 -601853.90 5680257.29 96.00 -601854.00 5678838.91 97.50 -601854.04 5678033.22 97.50 -601854.18 5676952.88 98.75 -601854.28 5677619.09 97.50 -601854.31 5676816.48 97.50 -601854.31 5678265.00 97.50 -601854.31 5678238.59 97.50 -601854.69 5677542.60 97.50 -601854.73 5678999.88 97.50 -601855.13 5680741.04 97.50 -601855.25 5680137.39 97.50 -601855.32 5676526.87 101.25 -601855.79 5678686.57 97.50 -601855.79 5680644.56 97.50 -601855.93 5676965.55 99.00 -601855.94 5678661.41 97.50 -601856.03 5680409.57 97.50 -601856.34 5680628.22 97.50 -601856.35 5679108.15 97.50 -601856.49 5678248.25 97.50 -601856.80 5680422.08 96.00 -601856.88 5680431.20 96.25 -601856.93 5680537.54 97.50 -601857.03 5680670.19 97.50 -601857.04 5680437.82 97.50 -601857.04 5680695.12 97.50 -601857.09 5678774.55 97.50 -601857.29 5680112.84 97.50 -601857.58 5680600.01 97.50 -601857.60 5676713.28 98.75 -601857.63 5678765.36 97.50 -601857.76 5680651.71 97.50 -601857.80 5678712.26 97.50 -601857.82 5676834.85 97.50 -601857.88 5679130.89 97.50 -601857.93 5680496.25 97.50 -601857.95 5680474.67 96.25 -601858.30 5679123.98 97.50 -601858.35 5677609.97 97.50 -601859.04 5678722.52 97.50 -601859.18 5680490.30 97.50 -601859.25 5678257.68 97.50 -601859.30 5680250.09 96.25 -601859.34 5680486.20 96.25 -601859.56 5678684.25 97.25 -601859.58 5680201.65 97.50 -601860.14 5680262.58 96.25 -601860.31 5680547.74 97.50 -601860.32 5680461.58 97.50 -601860.37 5680711.80 97.50 -601860.44 5679009.01 97.50 -601860.55 5676622.33 100.00 -601860.56 5678942.36 97.50 -601860.90 5680732.91 97.50 -601860.93 5678025.99 97.50 -601861.03 5680213.79 97.50 -601861.17 5678671.02 97.25 -601861.38 5680368.84 97.50 -601861.43 5680231.38 97.50 -601861.48 5676976.78 98.75 -601861.65 5680505.16 97.50 -601861.71 5677535.52 97.50 -601862.07 5676810.62 97.50 -601862.09 5680415.14 96.25 -601862.30 5676947.22 98.75 -601862.34 5677502.39 97.50 -601862.41 5677600.86 97.50 -601862.42 5678981.20 97.50 -601862.46 5678270.68 97.50 -601862.70 5678993.90 97.50 -601862.73 5680605.30 97.50 -601862.98 5678974.09 97.50 -601863.07 5677347.41 97.50 -601863.08 5679141.92 97.50 -601863.17 5678834.98 97.50 -601863.22 5680687.25 97.50 -601863.30 5679101.04 97.50 -601863.44 5680255.61 96.00 -601863.57 5678960.18 97.50 -601863.61 5680131.89 97.50 -601863.83 5680638.63 97.50 -601864.88 5680664.02 97.50 -601865.05 5676524.56 101.25 -601865.31 5676706.97 98.75 -601865.39 5678684.26 97.50 -601865.61 5680107.31 97.50 -601865.83 5678660.43 97.50 -601865.90 5678715.30 97.50 -601865.91 5678706.79 97.50 -601866.03 5680409.44 97.50 -601866.08 5680421.98 96.00 -601866.25 5680533.93 97.50 -601866.28 5680646.48 97.50 -601866.30 5680703.76 97.50 -601866.33 5680539.33 97.50 -601866.39 5680724.56 97.50 -601866.60 5678263.52 97.50 -601866.69 5679118.77 97.50 -601866.70 5678946.86 97.50 -601866.79 5680430.66 96.25 -601866.82 5677591.92 97.50 -601866.86 5676830.74 97.50 -601866.89 5680439.24 97.50 -601867.06 5678775.31 97.50 -601867.08 5680596.90 97.50 -601867.21 5679134.03 97.50 -601867.50 5680499.14 97.50 -601867.60 5678766.17 97.50 -601867.72 5680475.85 96.25 -601867.78 5679002.25 97.50 -601868.09 5680361.45 97.50 -601868.18 5677527.92 97.50 -601868.45 5678937.08 97.50 -601868.48 5678019.49 97.50 -601868.71 5680207.43 97.50 -601868.74 5677509.27 97.50 -601868.83 5676803.33 97.50 -601868.89 5680492.70 97.50 -601868.92 5678680.80 97.25 -601868.95 5680248.30 96.25 -601869.00 5680488.06 96.25 -601869.29 5678277.70 97.50 -601869.36 5680200.16 97.50 -601869.39 5680679.39 97.50 -601869.63 5680259.94 96.25 -601869.70 5680465.06 97.50 -601870.25 5676972.21 98.75 -601870.26 5680547.45 97.50 -601870.37 5680226.91 97.50 -601870.54 5676622.56 100.00 -601870.78 5678668.32 97.25 -601871.16 5679095.07 97.50 -601871.25 5677518.53 97.50 -601871.31 5680125.54 97.50 -601871.45 5680507.13 97.50 -601871.48 5678993.77 97.50 -601871.51 5677352.32 97.50 -601871.64 5676943.93 98.75 -601871.66 5677583.20 97.50 -601872.01 5680415.14 96.25 -601872.07 5680716.33 97.50 -601872.17 5680602.03 97.50 -601872.23 5680695.71 97.50 -601872.26 5680633.26 97.50 -601872.41 5678831.19 97.50 -601872.97 5680253.84 96.00 -601873.08 5680313.00 97.50 -601873.13 5680544.54 97.50 -601873.18 5679111.33 97.50 -601873.27 5680658.58 97.50 -601873.51 5678959.40 97.50 -601873.71 5680101.47 97.50 -601874.04 5676702.28 98.75 -601874.56 5678680.77 97.50 -601874.59 5676521.57 101.25 -601874.62 5680353.88 97.50 -601874.84 5678710.81 97.50 -601874.92 5680641.50 97.50 -601874.98 5680535.98 97.50 -601875.09 5678906.57 97.50 -601875.19 5678285.71 97.50 -601875.27 5678915.96 97.50 -601875.33 5678703.69 97.50 -601875.36 5680421.88 96.00 -601875.57 5680671.53 97.50 -601875.59 5676796.04 97.50 -601875.71 5678263.80 97.50 -601875.72 5678659.44 97.50 -601875.91 5676826.64 97.50 -601875.97 5680531.68 97.50 -601876.02 5680409.26 97.50 -601876.15 5679123.97 97.50 -601876.25 5678295.48 97.50 -601876.26 5680593.04 97.50 -601876.48 5678305.42 97.50 -601876.49 5678315.35 97.50 -601876.51 5677574.48 97.50 -601876.52 5680319.80 97.50 -601876.58 5678945.63 97.50 -601876.63 5678013.70 97.50 -601876.68 5680429.85 96.25 -601876.89 5680439.12 97.50 -601876.98 5680502.28 97.50 -601876.99 5678776.46 97.50 -601877.41 5678325.25 97.50 -601877.45 5680565.36 97.50 -601877.53 5680476.57 96.25 -601877.57 5678766.89 97.50 -601877.65 5678675.96 97.25 -601877.90 5678934.12 97.50 -601878.08 5680687.60 97.50 -601878.40 5677359.54 97.50 -601878.66 5680494.77 97.50 -601878.67 5680489.92 96.25 -601878.69 5680118.83 97.50 -601878.77 5680247.48 96.25 -601878.86 5676967.31 98.75 -601878.93 5680468.88 97.50 -601879.14 5680709.33 97.50 -601879.24 5680257.76 96.25 -601879.43 5679089.60 97.50 -601879.47 5680222.78 97.50 -601879.48 5678897.63 97.50 -601880.02 5678334.79 97.50 -601880.04 5678924.67 97.50 -601880.24 5680547.99 97.50 -601880.31 5677609.76 98.75 -601880.54 5676622.78 100.00 -601880.60 5680570.23 97.50 -601880.63 5678666.74 97.25 -601880.79 5680628.04 97.50 -601880.86 5679115.26 97.50 -601880.94 5679105.53 97.50 -601880.98 5676940.64 98.75 -601881.24 5677426.23 97.50 -601881.33 5680508.67 97.50 -601881.35 5680652.71 97.50 -601881.36 5677565.76 97.50 -601881.39 5680346.52 97.50 -601881.40 5680308.48 97.50 -601881.42 5677619.67 98.75 -601881.46 5679127.06 97.50 -601881.77 5680599.24 97.50 -601881.80 5677416.27 97.50 -601881.83 5677600.10 98.75 -601881.88 5678828.04 97.50 -601881.91 5680414.39 96.25 -601881.92 5676788.39 97.50 -601882.35 5678300.19 97.25 -601882.42 5680546.09 97.50 -601882.49 5680664.33 97.50 -601882.70 5678955.75 97.50 -601882.71 5678256.82 97.50 -601882.81 5680097.56 97.50 -601882.83 5677629.50 98.75 -601883.05 5680541.26 97.25 -601883.05 5677435.56 97.50 -601883.05 5676698.02 98.75 -601883.08 5678290.69 97.25 -601883.24 5678344.19 97.50 -601883.30 5677085.39 97.50 -601883.52 5677406.46 97.50 -601883.87 5678309.70 97.25 -601883.90 5680679.47 97.50 -601884.05 5678007.04 97.50 -601884.12 5676518.55 101.25 -601884.12 5677367.62 97.50 -601884.14 5678707.43 97.50 -601884.15 5680637.65 97.50 -601884.44 5680535.70 97.50 -601884.45 5678680.15 97.50 -601884.61 5676821.84 97.50 -601884.79 5677590.58 98.75 -601884.82 5678281.23 97.25 -601884.91 5680111.00 97.50 -601884.92 5678701.27 97.50 -601884.98 5680588.15 97.50 -601885.51 5677396.68 97.50 -601885.62 5678658.90 97.50 -601885.81 5680529.90 97.50 -601885.92 5677094.19 97.50 -601885.97 5680408.30 97.50 -601886.03 5678942.80 97.50 -601886.20 5680702.27 97.50 -601886.21 5677557.04 97.50 -601886.21 5680561.90 97.50 -601886.22 5679082.34 97.50 -601886.36 5680320.65 97.50 -601886.44 5677638.79 98.75 -601886.51 5680428.49 96.25 -601886.71 5677386.81 97.50 -601886.86 5680503.82 97.50 -601886.89 5680438.98 97.50 -601886.90 5678777.79 97.50 -601886.93 5677376.84 97.50 -601887.27 5678891.88 97.50 -601887.36 5678674.88 97.25 -601887.36 5680476.84 96.25 -601887.37 5678353.22 97.50 -601887.39 5679108.02 97.50 -601887.46 5678768.12 97.50 -601887.47 5676962.44 98.75 -601888.08 5678272.16 97.25 -601888.13 5678248.42 97.50 -601888.15 5679119.78 97.50 -601888.17 5680248.78 96.25 -601888.30 5680339.29 97.50 -601888.30 5676780.77 97.50 -601888.43 5680471.67 97.50 -601888.50 5680490.01 96.25 -601888.51 5680496.50 97.50 -601888.65 5677443.81 97.50 -601888.73 5680101.80 97.50 -601888.78 5680219.16 97.50 -601888.81 5680255.46 96.25 -601888.82 5680646.07 97.50 -601889.31 5680622.82 97.50 -601889.46 5677078.72 97.50 -601889.56 5680657.26 97.50 -601889.60 5678316.93 97.25 -601889.71 5680671.34 97.50 -601890.05 5677648.08 98.75 -601890.10 5678949.30 97.50 -601890.11 5680569.03 97.50 -601890.21 5680548.13 97.50 -601890.37 5676937.50 98.75 -601890.54 5676623.01 100.00 -601890.55 5678667.78 97.25 -601890.63 5680594.85 97.50 -601890.71 5680564.26 97.25 -601891.07 5677548.33 97.50 -601891.10 5677999.95 97.50 -601891.21 5680510.18 97.50 -601891.32 5680307.26 97.50 -601891.33 5678263.09 97.25 -601891.35 5678824.88 97.50 -601891.68 5678362.18 97.50 -601891.79 5680413.46 96.25 -601891.80 5680545.20 97.50 -601891.81 5680631.33 97.50 -601892.28 5676694.58 98.75 -601892.29 5678239.35 97.50 -601892.91 5680694.86 97.50 -601893.38 5676817.17 97.50 -601893.53 5676515.23 101.25 -601893.66 5680583.19 97.50 -601893.90 5680535.68 97.50 -601893.98 5678705.67 97.50 -601894.01 5679111.76 97.50 -601894.11 5677589.91 98.75 -601894.15 5678773.68 97.50 -601894.20 5677657.12 98.75 -601894.37 5678680.15 97.50 -601894.38 5678835.28 97.50 -601894.56 5677098.42 97.50 -601894.70 5677451.74 97.50 -601894.71 5678699.63 97.50 -601894.83 5676773.28 97.50 -601895.32 5677539.41 97.50 -601895.51 5680332.41 97.50 -601895.55 5678659.46 97.50 -601895.68 5680560.10 97.50 -601895.71 5680528.60 97.50 -601895.79 5680663.40 97.50 -601895.84 5680638.99 97.50 -601895.86 5678254.71 97.25 -601895.92 5680407.34 97.50 -601895.96 5680649.68 97.50 -601896.06 5680318.46 97.50 -601896.34 5676958.03 98.75 -601896.35 5680427.12 96.25 -601896.56 5677529.51 97.50 -601896.60 5678230.40 97.50 -601896.61 5676793.02 97.50 -601896.75 5680504.12 97.50 -601896.79 5678888.89 97.50 -601896.82 5680685.83 97.50 -601896.83 5680437.99 97.50 -601896.89 5678827.99 97.50 -601896.99 5678370.58 97.50 -601897.04 5678314.82 97.25 -601897.19 5680477.02 96.25 -601897.31 5678675.51 97.25 -601897.80 5677519.61 97.50 -601898.13 5680618.10 97.50 -601898.14 5680488.40 96.25 -601898.17 5680494.76 97.50 -601898.17 5680215.72 97.50 -601898.28 5677993.00 97.50 -601898.36 5680472.69 97.50 -601898.60 5677810.12 98.75 -601898.68 5677550.58 98.75 -601898.82 5677076.41 97.50 -601898.96 5677665.88 98.75 -601898.97 5677800.16 98.75 -601898.98 5680589.35 97.50 -601899.01 5677509.71 97.50 -601899.01 5680624.46 97.50 -601899.35 5677460.28 97.50 -601899.38 5676799.66 97.50 -601899.40 5677820.06 98.75 -601899.44 5677790.21 98.75 -601899.50 5680566.87 97.50 -601899.54 5679103.51 97.50 -601899.73 5677089.46 97.25 -601899.74 5680676.27 97.50 -601899.77 5676934.40 98.75 -601900.12 5677499.79 97.50 -601900.13 5680546.88 97.50 -601900.25 5677559.54 98.75 -601900.45 5678669.13 97.25 -601900.50 5676623.64 100.00 -601900.55 5677540.79 98.75 -601900.78 5678839.49 97.50 -601900.81 5677780.38 98.75 -601900.82 5678821.72 97.50 -601900.86 5680509.41 97.50 -601901.03 5677470.12 97.50 -601901.04 5680543.15 97.50 -601901.04 5677829.81 98.75 -601901.09 5680641.09 97.50 -601901.23 5677489.88 97.50 -601901.31 5680307.23 97.50 -601901.50 5680411.40 96.25 -601901.60 5678246.98 97.25 -601901.91 5680655.50 97.50 -601901.96 5678306.54 97.25 -601902.18 5680577.97 97.50 -601902.20 5676693.64 98.75 -601902.23 5680631.29 97.50 -601902.35 5677479.96 97.50 -601902.40 5678378.90 97.50 -601902.50 5676510.83 101.25 -601902.56 5677531.03 98.75 -601902.79 5680537.38 97.50 -601902.82 5676814.06 97.50 -601902.94 5678222.67 97.50 -601903.21 5677770.71 98.75 -601903.47 5676770.04 97.50 -601903.73 5677674.63 98.75 -601903.73 5678703.52 97.50 -601903.82 5680326.97 97.50 -601903.92 5678297.11 97.25 -601903.95 5677100.58 97.50 -601904.07 5677589.69 98.75 -601904.13 5680667.34 97.50 -601904.25 5678697.06 97.50 -601904.27 5678679.69 97.50 -601904.33 5677839.23 98.75 -601904.39 5678834.25 97.75 -601904.39 5676786.83 97.50 -601904.62 5676952.64 98.75 -601904.89 5678827.87 97.50 -601904.91 5679095.15 97.50 -601905.06 5680560.48 97.50 -601905.29 5678130.53 97.50 -601905.40 5678658.90 97.50 -601905.59 5680315.48 97.50 -601905.60 5678287.63 97.25 -601905.61 5677761.03 98.75 -601905.70 5680528.31 97.50 -601905.78 5680424.60 96.25 -601905.87 5680406.38 97.50 -601905.96 5677986.60 97.50 -601906.19 5678120.57 97.50 -601906.19 5680632.49 97.50 -601906.23 5680501.88 97.50 -601906.37 5678886.10 97.50 -601906.45 5678140.19 97.50 -601906.62 5680674.19 98.75 -601906.73 5680210.66 97.50 -601906.73 5680683.18 98.75 -601906.75 5680622.38 97.50 -601906.78 5680437.01 97.50 -601906.79 5680255.12 97.50 -601906.87 5680478.53 96.25 -601906.90 5677522.20 98.75 -601906.97 5678278.10 97.25 -601907.07 5678674.23 97.25 -601907.27 5680583.78 97.50 -601907.33 5680485.28 96.25 -601907.43 5677566.41 98.75 -601907.62 5677848.64 98.75 -601907.68 5680491.75 97.50 -601907.92 5680647.51 97.50 -601908.01 5677751.36 98.75 -601908.02 5677079.16 97.50 -601908.06 5677683.57 98.75 -601908.08 5678239.88 97.25 -601908.22 5680471.02 97.50 -601908.67 5678214.48 97.50 -601908.67 5678110.93 97.50 -601908.96 5680262.73 97.50 -601909.04 5676930.93 98.75 -601909.05 5680658.64 97.50 -601909.24 5678841.23 97.50 -601909.31 5676799.37 97.50 -601909.47 5678268.83 97.25 -601909.70 5680504.88 97.50 -601909.86 5680544.99 97.50 -601909.96 5678666.99 97.25 -601909.98 5678385.32 97.50 -601910.09 5679086.67 97.50 -601910.29 5678818.57 97.50 -601910.33 5680613.11 97.50 -601910.42 5676624.89 100.00 -601910.49 5680665.62 98.75 -601910.60 5680572.59 97.50 -601910.74 5677741.77 98.75 -601910.93 5680623.69 97.50 -601910.93 5677693.11 98.75 -601911.05 5680304.98 97.50 -601911.15 5676779.60 97.50 -601911.16 5676505.84 101.25 -601911.28 5678101.32 97.50 -601911.33 5680410.14 96.25 -601911.71 5678091.33 97.50 -601912.12 5678148.36 97.50 -601912.12 5676692.70 98.75 -601912.22 5677513.78 98.75 -601912.29 5676811.09 97.50 -601912.49 5676946.65 98.75 -601912.58 5678259.71 97.25 -601912.66 5676771.25 97.50 -601913.03 5679077.30 97.50 -601913.18 5680323.49 97.50 -601913.26 5678700.49 97.50 -601913.31 5678363.69 97.25 -601913.36 5678829.50 97.50 -601913.41 5677098.70 97.50 -601913.43 5678081.52 97.50 -601913.45 5680603.62 97.50 -601913.49 5677732.19 98.75 -601913.50 5678693.52 97.50 -601913.56 5678677.10 97.50 -601913.59 5680495.13 97.50 -601913.65 5677980.21 97.50 -601913.66 5680639.32 97.50 -601913.77 5677587.70 98.75 -601913.77 5680649.83 97.50 -601913.80 5677702.66 98.75 -601913.84 5677856.21 98.75 -601914.11 5680248.45 97.50 -601914.39 5680419.66 96.25 -601914.41 5678206.29 97.50 -601914.56 5680681.55 98.75 -601914.72 5678656.07 97.50 -601914.82 5677722.39 98.75 -601915.05 5677712.43 98.75 -601915.09 5678233.27 97.25 -601915.11 5677572.77 98.75 -601915.14 5679067.59 97.50 -601915.28 5680205.52 97.50 -601915.39 5680313.53 97.50 -601915.45 5680578.02 97.50 -601915.46 5680526.78 97.50 -601915.56 5680657.73 98.75 -601915.64 5680404.37 97.50 -601915.76 5678836.50 97.50 -601916.14 5678884.07 97.50 -601916.20 5677504.94 98.75 -601916.21 5678250.80 97.25 -601916.42 5677494.97 98.75 -601916.48 5680615.42 97.50 -601916.58 5677082.70 97.50 -601916.60 5678671.42 97.25 -601916.65 5677485.01 98.75 -601916.68 5680487.39 97.50 -601916.75 5680436.21 97.50 -601917.25 5678372.47 97.25 -601917.36 5678356.88 97.25 -601917.46 5678391.83 97.50 -601917.82 5680468.27 97.50 -601918.04 5680499.37 97.50 -601918.11 5676931.64 98.75 -601918.55 5680595.06 97.50 -601918.60 5678662.02 97.25 -601918.60 5680641.09 97.50 -601918.64 5680264.48 97.50 -601918.73 5680566.97 97.50 -601918.78 5676939.33 98.75 -601918.86 5678155.73 97.50 -601918.92 5680540.76 97.50 -601918.93 5680663.55 99.00 -601919.18 5677475.39 98.75 -601919.21 5676798.47 97.50 -601919.27 5676500.12 101.25 -601919.40 5678074.58 97.50 -601919.41 5680631.15 97.50 -601919.50 5677091.88 97.50 -601919.76 5678815.41 97.50 -601919.79 5678241.86 97.25 -601919.98 5680411.82 96.25 -601920.16 5677580.86 98.75 -601920.35 5676626.07 100.00 -601920.43 5679059.29 97.50 -601920.48 5680674.27 98.75 -601920.59 5680302.01 97.50 -601920.63 5678198.47 97.50 -601920.87 5677863.28 98.75 -601921.04 5680650.10 98.75 -601921.04 5678232.64 97.25 -601921.61 5677974.18 97.50 -601921.76 5680570.77 97.50 -601921.82 5678400.76 97.50 -601921.87 5677465.79 98.75 -601922.04 5676691.74 98.75 -601922.07 5676809.30 97.50 -601922.09 5678672.04 97.50 -601922.21 5678303.69 97.50 -601922.32 5680319.67 97.50 -601922.37 5678689.08 97.50 -601922.41 5678696.56 97.50 -601922.45 5680491.83 97.50 -601922.58 5678293.70 97.50 -601922.59 5680607.51 97.50 -601922.63 5678380.57 97.25 -601922.69 5678313.64 97.50 -601922.73 5678650.19 97.50 -601923.26 5680106.79 96.25 -601923.31 5678283.73 97.50 -601923.49 5680245.30 97.50 -601924.01 5678323.55 97.50 -601924.16 5680200.92 97.50 -601924.49 5678273.80 97.50 -601924.70 5680633.17 97.50 -601924.83 5680523.33 97.50 -601924.84 5677456.29 98.75 -601925.13 5680482.26 97.50 -601925.24 5678880.15 97.50 -601925.29 5680401.78 97.50 -601925.29 5680313.48 97.50 -601925.32 5678666.54 97.25 -601925.32 5680623.08 97.50 -601925.35 5678333.46 97.50 -601925.45 5680097.53 96.25 -601925.90 5678162.82 97.50 -601926.10 5680666.74 98.75 -601926.18 5678409.69 97.50 -601926.18 5679051.18 97.50 -601926.19 5680588.76 97.50 -601926.24 5678190.27 97.50 -601926.26 5676492.97 101.25 -601926.72 5678356.23 97.25 -601926.73 5680435.61 97.50 -601926.76 5678656.31 97.25 -601927.08 5680535.18 97.50 -601927.62 5680644.52 98.75 -601927.64 5680467.62 97.50 -601927.81 5680088.30 96.25 -601928.01 5677397.41 98.75 -601928.40 5678264.66 97.50 -601928.52 5677407.36 98.75 -601928.55 5677447.04 98.75 -601928.60 5680264.22 97.50 -601928.68 5677869.40 98.75 -601928.82 5677387.60 98.75 -601929.03 5677417.32 98.75 -601929.09 5678811.89 97.50 -601929.10 5676797.50 97.50 -601929.21 5678074.01 97.50 -601929.38 5677427.28 98.75 -601929.44 5677437.25 98.75 -601929.48 5678387.53 97.25 -601929.64 5680110.41 96.25 -601929.86 5680600.70 97.50 -601929.98 5680098.28 96.00 -601930.01 5680298.68 97.50 -601930.01 5678171.24 97.50 -601930.18 5680658.27 98.75 -601930.34 5676626.30 100.00 -601930.39 5678181.17 97.50 -601930.51 5677970.34 97.50 -601930.54 5678418.62 97.50 -601930.56 5678666.87 97.50 -601930.75 5678644.31 97.50 -601930.80 5680625.25 97.50 -601931.01 5678341.70 97.50 -601931.06 5680079.39 96.25 -601931.30 5678692.40 97.50 -601931.39 5678685.02 97.50 -601931.39 5680474.71 97.50 -601931.46 5677377.98 98.75 -601931.76 5680615.44 97.50 -601931.90 5676808.05 97.50 -601931.96 5676690.79 98.75 -601932.67 5678255.62 97.50 -601932.87 5680421.40 97.50 -601933.11 5680517.73 97.50 -601933.15 5679044.57 97.50 -601933.23 5680243.03 97.50 -601933.53 5680649.78 98.75 -601933.89 5680198.90 97.50 -601933.94 5678661.52 97.25 -601934.08 5678875.52 97.50 -601934.10 5677368.37 98.75 -601934.42 5680102.38 96.25 -601934.45 5678649.95 97.25 -601934.49 5680397.89 97.50 -601934.50 5680528.48 97.50 -601934.64 5676487.86 101.25 -601934.65 5680412.49 97.50 -601934.69 5680583.52 97.50 -601934.90 5678427.56 97.50 -601934.92 5680533.66 97.50 -601935.19 5678360.80 97.25 -601935.24 5678395.41 97.25 -601935.81 5680093.02 96.25 -601936.16 5680083.52 96.25 -601936.70 5678349.92 97.50 -601936.70 5680435.01 97.50 -601936.73 5677358.76 98.75 -601936.94 5677874.97 98.75 -601936.99 5680306.62 97.50 -601937.42 5680594.16 97.50 -601937.46 5678246.91 97.50 -601937.47 5680292.11 97.50 -601937.65 5680538.61 97.50 -601937.79 5680618.13 97.50 -601938.26 5678807.94 97.50 -601938.29 5680607.87 97.50 -601938.32 5680262.21 97.50 -601938.38 5678638.00 97.50 -601938.84 5678661.43 97.50 -601938.87 5678075.90 97.50 -601939.03 5676797.08 97.50 -601939.14 5677953.41 97.25 -601939.25 5678436.49 97.50 -601939.90 5678403.98 97.25 -601940.33 5676626.46 100.00 -601940.48 5678368.50 97.25 -601940.49 5677969.70 97.50 -601940.71 5678545.73 97.50 -601940.87 5678682.09 97.50 -601941.06 5677349.85 98.75 -601941.11 5678690.45 97.50 -601941.16 5678555.63 97.50 -601941.21 5679040.22 97.50 -601941.34 5680147.39 97.50 -601941.37 5676952.20 97.50 -601941.49 5680139.50 97.50 -601941.49 5680424.97 97.50 -601941.53 5680512.38 97.50 -601941.55 5678535.90 97.50 -601941.84 5676807.91 97.50 -601941.91 5676690.38 98.75 -601942.21 5680314.10 97.50 -601942.23 5678854.05 97.50 -601942.29 5678565.51 97.50 -601942.30 5678656.05 97.25 -601942.32 5680522.29 97.50 -601942.40 5678358.14 97.50 -601942.48 5680528.02 97.50 -601942.58 5678644.15 97.25 -601942.59 5680299.33 97.50 -601942.97 5676942.71 97.50 -601942.99 5680240.91 97.50 -601943.00 5680407.18 97.50 -601943.14 5678871.44 97.50 -601943.25 5678148.56 97.50 -601943.36 5680578.54 97.50 -601943.36 5676960.62 97.50 -601943.48 5678158.47 97.50 -601943.48 5678138.57 97.50 -601943.61 5678445.42 97.50 -601943.64 5680393.86 97.50 -601943.80 5680197.63 97.50 -601943.85 5676483.98 101.25 -601943.89 5678239.25 97.50 -601943.94 5678128.61 97.50 -601944.30 5678377.49 97.25 -601944.47 5680532.40 97.25 -601944.83 5680600.31 97.50 -601944.94 5680587.56 97.50 -601944.94 5680285.47 97.50 -601945.04 5676933.30 97.50 -601945.04 5680611.25 97.50 -601945.14 5678575.01 97.50 -601945.20 5678630.77 97.50 -601945.21 5677880.54 98.75 -601945.35 5678845.82 97.50 -601945.52 5677957.57 97.25 -601945.60 5677341.02 98.75 -601945.67 5678526.85 97.50 -601946.00 5678411.54 97.25 -601946.22 5677947.76 97.25 -601946.68 5680434.39 97.50 -601946.69 5679032.05 97.50 -601946.77 5678119.01 97.50 -601946.77 5680535.98 97.50 -601946.82 5678655.54 97.50 -601946.82 5678081.62 97.50 -601947.33 5678167.70 97.50 -601947.42 5678803.98 97.50 -601947.60 5680258.50 97.50 -601947.67 5676924.03 97.50 -601947.85 5680132.76 97.50 -601948.21 5678584.46 97.50 -601948.29 5678366.20 97.50 -601948.65 5677331.53 98.75 -601948.67 5678386.14 97.25 -601948.89 5678453.83 97.50 -601948.96 5676796.72 97.50 -601949.38 5676943.84 97.25 -601949.59 5678109.42 97.50 -601949.65 5679022.57 97.50 -601949.69 5678637.20 97.25 -601949.95 5677966.51 97.50 -601950.15 5676624.55 100.00 -601950.29 5678622.34 97.50 -601950.33 5678231.60 97.50 -601950.38 5678650.21 97.25 -601950.42 5680145.81 97.50 -601950.47 5678679.62 97.50 -601950.64 5680516.75 97.50 -601950.67 5680508.33 97.50 -601950.73 5676914.99 97.50 -601950.80 5678857.59 97.50 -601950.88 5680294.21 97.50 -601951.04 5678689.43 97.50 -601951.14 5677888.45 98.75 -601951.26 5680423.30 97.50 -601951.28 5678593.91 97.50 -601951.32 5680524.92 97.50 -601951.37 5678090.31 97.50 -601951.71 5676959.30 97.50 -601951.77 5680573.17 97.50 -601951.77 5678519.42 97.50 -601951.78 5676808.03 97.50 -601951.87 5680314.65 97.50 -601951.87 5676690.23 98.75 -601952.09 5680403.01 97.50 -601952.25 5680604.32 97.50 -601952.27 5678099.79 97.50 -601952.48 5680594.26 97.50 -601952.56 5680238.16 97.50 -601952.62 5680279.07 97.50 -601952.67 5680389.57 97.50 -601952.67 5680124.23 97.50 -601952.76 5678868.74 97.50 -601952.90 5677322.59 98.75 -601953.01 5680581.75 97.50 -601953.12 5676480.22 101.25 -601953.39 5680134.02 97.25 -601953.44 5678603.57 97.50 -601953.45 5676934.83 97.25 -601953.47 5678840.02 97.50 -601953.53 5678175.25 97.50 -601953.56 5678417.42 97.25 -601953.66 5679013.48 97.50 -601953.77 5680196.79 97.50 -601954.04 5678559.22 97.25 -601954.25 5678569.06 97.25 -601954.28 5678462.18 97.50 -601954.41 5677943.57 97.25 -601954.51 5678649.32 97.50 -601954.64 5677956.35 97.25 -601954.66 5678613.42 97.50 -601954.75 5680531.33 97.50 -601954.81 5678373.79 97.50 -601954.93 5677451.56 98.75 -601955.29 5678393.26 97.25 -601956.18 5678629.68 97.25 -601956.40 5680115.19 97.50 -601956.65 5680433.66 97.50 -601956.69 5677896.73 98.75 -601956.76 5678223.94 97.50 -601956.87 5676907.55 97.50 -601957.02 5678801.47 97.50 -601957.19 5680255.70 97.50 -601957.26 5676951.44 97.50 -601957.46 5678578.51 97.25 -601957.51 5676925.82 97.25 -601957.77 5679004.44 97.50 -601958.05 5678643.82 97.25 -601958.05 5680139.81 97.50 -601958.16 5677314.13 98.75 -601958.55 5677442.64 98.75 -601958.65 5678581.10 97.25 -601958.71 5680596.70 97.50 -601958.82 5676795.50 97.50 -601958.86 5676620.12 100.00 -601959.22 5680299.82 96.25 -601959.36 5678513.11 97.50 -601959.39 5680512.04 97.50 -601959.40 5677963.25 97.50 -601959.51 5678470.63 97.50 -601959.61 5680305.69 96.25 -601959.65 5680290.16 97.50 -601959.79 5680567.21 97.50 -601959.80 5678620.37 97.25 -601959.82 5680504.30 97.50 -601960.24 5678678.96 97.50 -601960.42 5680106.99 97.50 -601960.64 5678590.89 97.25 -601960.77 5678857.27 97.50 -601960.85 5680273.50 97.50 -601961.01 5680421.07 97.50 -601961.02 5678688.75 97.50 -601961.32 5678381.38 97.50 -601961.42 5680399.43 97.50 -601961.47 5678642.25 97.50 -601961.59 5680314.45 97.50 -601961.60 5678400.46 97.25 -601961.61 5680385.10 97.50 -601961.66 5676942.86 97.50 -601961.68 5680576.77 97.50 -601961.70 5676808.42 97.50 -601961.76 5680234.24 97.50 -601961.81 5676916.93 97.25 -601961.83 5676690.08 98.75 -601961.89 5678610.71 97.25 -601962.02 5678600.77 97.25 -601962.20 5677905.03 98.75 -601962.21 5678558.75 97.25 -601962.26 5678417.90 97.25 -601962.40 5676476.51 101.25 -601962.43 5680131.05 97.50 -601962.63 5678174.69 97.50 -601962.69 5678868.12 97.50 -601962.69 5677456.58 98.75 -601962.72 5676899.90 97.50 -601962.73 5678836.30 97.50 -601962.95 5680193.41 97.50 -601963.06 5677940.41 97.25 -601963.16 5678996.12 97.50 -601963.43 5677953.72 97.25 -601963.43 5677305.67 98.75 -601963.53 5678635.56 97.25 -601963.70 5678216.80 97.50 -601963.96 5678479.52 97.50 -601964.43 5678557.81 97.50 -601964.79 5680492.60 97.50 -601964.80 5678409.41 97.25 -601965.06 5678504.97 97.50 -601965.16 5678568.28 97.25 -601965.18 5678547.84 97.50 -601965.81 5680121.88 97.50 -601965.82 5678805.15 97.50 -601965.94 5678537.87 97.50 -601966.43 5680512.19 97.50 -601966.55 5680112.28 97.50 -601966.62 5680432.93 97.50 -601966.87 5677438.69 98.75 -601966.92 5676614.20 100.00 -601966.94 5680293.53 96.25 -601966.95 5678567.34 97.50 -601966.98 5676908.51 97.25 -601967.18 5680255.65 97.50 -601967.23 5680521.67 97.50 -601967.30 5676935.06 97.50 -601967.66 5678634.57 97.50 -601967.70 5677913.34 98.75 -601967.89 5680561.35 97.50 -601967.94 5678577.88 97.25 -601967.94 5678388.85 97.50 -601968.41 5678488.40 97.50 -601968.41 5678626.86 97.25 -601968.51 5676892.20 97.50 -601968.55 5677959.22 97.50 -601968.67 5676794.14 97.50 -601968.81 5678987.95 97.50 -601968.88 5680302.69 96.25 -601968.92 5680287.15 97.50 -601968.93 5680500.20 97.50 -601969.40 5677297.74 98.75 -601969.73 5680297.24 96.00 -601969.76 5680268.97 97.50 -601969.94 5678587.64 97.25 -601970.14 5678679.60 97.50 -601970.32 5678576.75 97.50 -601970.34 5680571.78 97.50 -601970.70 5678856.26 97.50 -601970.76 5680485.28 97.50 -601970.77 5680229.92 97.50 -601970.80 5680395.98 97.50 -601970.81 5678168.94 97.50 -601970.90 5680419.66 97.50 -601970.94 5678617.34 97.25 -601970.98 5678687.93 97.50 -601971.08 5678529.38 97.50 -601971.14 5678497.11 97.50 -601971.26 5678597.54 97.25 -601971.32 5680313.97 97.50 -601971.35 5680382.93 97.50 -601971.46 5678210.50 97.50 -601971.47 5676926.52 97.50 -601971.55 5680492.99 97.50 -601971.55 5676809.74 97.50 -601971.77 5676689.55 98.75 -601971.81 5680188.78 97.50 -601971.87 5677937.77 97.25 -601972.00 5678832.59 97.50 -601972.07 5677950.59 97.25 -601972.16 5676900.09 97.25 -601972.23 5678865.50 97.50 -601972.28 5676475.40 101.25 -601972.35 5678607.45 97.25 -601972.54 5677458.06 98.75 -601972.64 5676917.04 97.50 -601973.21 5677921.66 98.75 -601973.86 5678586.10 97.50 -601973.98 5678627.28 97.50 -601973.98 5677446.77 98.50 -601974.59 5676884.73 97.50 -601974.98 5676608.29 100.00 -601975.53 5678807.28 97.50 -601975.64 5678980.79 97.50 -601975.66 5680288.70 96.25 -601975.72 5678395.13 97.50 -601975.99 5680555.49 97.50 -601976.12 5677290.38 98.75 -601976.56 5680519.41 97.50 -601976.58 5680432.09 97.50 -601976.69 5678433.59 97.50 -601976.70 5676908.84 97.50 -601976.77 5678423.59 97.50 -601976.85 5678413.60 97.50 -601976.86 5677438.55 98.75 -601977.17 5680255.45 97.50 -601977.26 5680477.93 97.50 -601977.50 5677954.78 97.50 -601977.63 5678522.06 97.50 -601977.75 5678595.31 97.50 -601977.77 5680495.52 97.50 -601977.97 5678403.66 97.50 -601977.98 5680283.58 97.50 -601978.03 5680565.40 97.50 -601978.09 5680298.83 96.25 -601978.59 5680223.74 97.50 -601978.60 5676794.33 97.50 -601978.76 5676892.83 97.25 -601978.81 5678859.14 97.50 -601979.15 5678163.44 97.50 -601979.22 5680265.82 97.50 -601979.23 5678443.19 97.50 -601979.39 5680308.98 97.50 -601979.47 5677945.11 97.25 -601979.47 5678204.56 97.50 -601979.53 5680487.31 97.50 -601979.74 5678678.54 97.50 -601979.92 5680391.88 97.50 -601980.39 5677937.99 97.25 -601980.83 5680418.71 97.50 -601980.85 5676812.80 97.50 -601980.93 5678686.90 97.50 -601980.93 5676877.47 97.50 -601981.11 5677925.61 98.75 -601981.13 5680380.84 97.50 -601981.16 5678632.66 97.50 -601981.33 5678829.06 97.50 -601981.33 5680186.27 97.50 -601981.41 5676600.78 100.00 -601981.43 5678604.61 97.50 -601981.69 5676688.63 98.75 -601981.88 5680510.94 97.50 -601982.10 5677455.17 98.75 -601982.23 5677445.78 98.50 -601982.25 5676475.27 101.25 -601982.31 5678452.70 97.50 -601982.40 5680479.14 97.20 -601982.83 5676901.40 97.50 -601982.84 5677283.01 98.75 -601982.86 5680290.30 96.25 -601983.02 5678974.19 97.50 -601983.62 5680470.46 97.50 -601983.65 5680549.18 97.50 -601984.49 5680215.81 97.50 -601984.63 5678803.71 97.50 -601984.67 5678614.06 97.50 -601984.88 5676591.47 100.00 -601985.32 5680301.25 97.50 -601985.38 5678462.22 97.50 -601985.67 5680558.96 97.50 -601985.78 5678516.29 97.50 -601985.96 5676886.06 97.25 -601986.21 5677949.86 97.50 -601986.30 5680490.48 97.50 -601986.48 5677436.02 98.75 -601986.49 5676869.62 97.50 -601986.53 5680431.07 97.50 -601986.83 5680480.75 97.50 -601986.97 5680279.84 97.50 -601986.98 5680253.66 97.50 -601987.12 5680502.43 97.50 -601987.32 5678640.43 97.50 -601987.92 5676581.94 100.00 -601988.01 5678158.80 97.50 -601988.16 5678199.61 97.50 -601988.41 5678673.88 97.50 -601988.46 5678471.73 97.50 -601988.54 5676794.56 97.50 -601988.63 5680262.49 97.50 -601988.72 5678623.09 97.50 -601988.84 5680471.86 97.20 -601989.25 5680207.03 97.50 -601989.25 5677275.39 98.75 -601989.28 5680388.38 97.50 -601989.76 5680541.26 97.50 -601989.84 5680462.87 97.50 -601989.90 5676894.85 97.50 -601990.47 5677444.80 98.50 -601990.77 5676813.08 97.50 -601990.79 5680188.14 97.50 -601990.82 5680419.07 97.50 -601990.84 5678685.72 97.50 -601990.87 5680378.58 97.50 -601991.01 5678826.64 97.50 -601991.02 5677924.61 98.75 -601991.20 5680293.49 97.50 -601991.62 5676687.72 98.75 -601991.67 5677452.29 98.75 -601991.75 5678481.17 97.50 -601992.01 5678969.95 97.50 -601992.22 5676475.99 101.25 -601992.46 5676573.09 100.00 -601992.50 5680482.64 97.50 -601992.53 5680197.79 97.50 -601992.54 5678508.92 97.50 -601992.81 5678648.70 97.50 -601993.04 5676862.81 97.50 -601993.08 5680552.27 97.50 -601993.17 5676879.29 97.25 -601993.43 5680494.75 97.50 -601993.44 5678799.01 97.50 -601993.84 5680473.89 97.50 -601994.77 5680274.03 97.50 -601994.84 5678631.00 97.50 -601995.18 5677267.38 98.75 -601995.50 5678490.44 97.50 -601995.64 5680464.92 97.20 -601995.67 5678667.12 97.50 -601995.73 5677432.31 98.75 -601995.87 5680533.35 97.50 -601995.89 5677947.80 97.50 -601996.07 5680249.57 97.50 -601996.12 5678500.35 97.50 -601996.24 5676887.64 97.50 -601996.27 5680429.12 97.50 -601996.70 5678657.75 97.50 -601996.81 5680456.07 97.50 -601996.85 5678194.67 97.50 -601997.46 5678155.85 97.50 -601997.51 5677440.50 98.50 -601997.60 5680286.15 97.50 -601997.93 5680258.80 97.50 -601998.15 5676797.11 97.50 -601999.01 5680386.21 97.50 -601999.54 5680475.57 97.50 -601999.58 5680422.70 97.50 -601999.67 5680544.76 97.50 -601999.74 5676566.64 100.00 -602000.15 5678639.46 97.50 -602000.17 5678682.12 97.50 -602000.35 5680375.61 97.50 -602000.60 5680466.78 97.50 -602000.65 5678827.71 97.50 -602000.66 5680487.87 97.50 -602000.71 5676813.02 97.50 -602000.72 5676684.82 98.75 -602000.90 5677923.34 98.75 -602001.12 5677259.37 98.75 -602001.24 5677449.40 98.75 -602001.33 5678966.62 97.50 -602002.05 5676879.96 97.50 -602002.19 5676476.71 101.25 -602002.41 5680267.99 97.50 -602002.43 5680525.81 97.50 -602002.54 5676861.32 97.50 -602002.63 5678795.30 97.50 -602002.70 5680458.24 97.20 -602003.88 5680398.90 97.50 -602003.92 5676870.62 97.50 -602004.67 5680450.20 97.50 -602004.71 5677427.94 98.75 -602004.90 5678648.23 97.50 -602004.99 5680279.82 97.50 -602005.19 5677437.35 98.50 -602005.71 5677250.54 98.75 -602005.78 5677946.34 97.50 -602005.99 5678190.62 97.50 -602006.02 5680248.65 97.50 -602006.26 5680537.24 97.50 -602006.59 5680308.36 97.50 -602006.86 5680254.33 97.50 -602006.87 5680468.78 97.50 -602006.91 5680433.82 97.50 -602007.24 5680459.57 97.50 -602007.27 5678153.90 97.50 -602007.43 5680405.21 97.50 -602007.44 5676800.33 97.50 -602007.72 5678676.44 97.50 -602008.40 5676678.47 98.75 -602008.50 5680481.67 97.50 -602008.63 5678814.57 97.50 -602008.64 5678657.50 97.50 -602008.84 5680384.38 97.50 -602009.06 5680518.33 97.50 -602009.12 5676565.90 100.00 -602009.35 5680425.99 97.50 -602009.37 5680371.28 97.50 -602009.52 5677443.87 98.75 -602009.75 5680395.79 97.50 -602009.79 5680299.48 97.50 -602009.88 5678962.23 97.50 -602010.16 5678830.53 97.50 -602010.17 5677241.63 98.75 -602010.60 5676812.45 97.50 -602010.70 5678667.22 97.50 -602010.81 5680316.60 97.50 -602010.86 5677923.01 98.75 -602010.93 5680263.31 97.50 -602011.51 5678806.07 97.50 -602011.66 5678796.34 97.50 -602012.10 5680529.17 97.50 -602012.17 5676477.33 101.25 -602012.66 5680444.50 97.50 -602013.16 5680400.20 97.25 -602013.53 5680452.05 97.50 -602013.73 5680275.58 97.50 -602013.94 5678796.93 97.50 -602014.01 5678805.83 97.50 -602014.02 5677424.82 98.75 -602014.42 5680432.47 97.50 -602014.78 5676573.55 100.00 -602014.82 5677232.81 98.75 -602015.11 5680291.83 97.50 -602015.14 5680463.18 97.50 -602015.14 5678186.57 97.50 -602015.35 5680419.31 97.50 -602015.50 5680510.70 97.50 -602015.59 5676806.03 97.50 -602015.70 5677945.65 97.50 -602015.75 5678954.34 97.50 -602015.77 5680405.06 97.50 -602016.08 5676672.13 98.75 -602016.20 5680475.29 97.50 -602016.91 5677437.25 98.75 -602017.09 5678152.03 97.50 -602017.21 5680520.58 97.50 -602018.10 5680396.10 97.50 -602018.18 5678816.87 97.50 -602018.38 5680366.95 97.50 -602018.43 5677934.07 97.25 -602018.67 5680382.54 97.50 -602018.94 5680320.96 97.50 -602019.27 5680437.25 97.50 -602019.33 5680421.50 97.25 -602019.64 5677224.08 98.75 -602020.00 5678832.18 97.50 -602020.25 5678945.49 97.50 -602020.28 5677428.77 98.75 -602020.32 5680261.99 97.50 -602020.59 5677940.39 97.25 -602020.77 5680426.14 97.50 -602020.81 5677923.08 98.75 -602020.89 5680502.28 97.50 -602020.93 5680445.61 97.50 -602021.10 5680269.32 97.50 -602021.41 5678791.91 97.50 -602021.66 5680412.93 97.50 -602021.98 5678810.07 97.50 -602022.15 5676477.93 101.25 -602022.32 5680400.82 97.50 -602022.43 5680512.07 97.50 -602023.06 5680286.63 97.50 -602023.67 5676577.77 100.00 -602023.71 5680468.70 97.50 -602023.73 5676665.74 98.75 -602024.28 5678182.52 97.50 -602024.37 5680460.76 97.50 -602024.46 5677215.36 98.75 -602025.19 5678936.88 97.50 -602025.67 5677946.42 97.50 -602025.70 5680429.84 97.50 -602026.37 5680493.92 97.50 -602026.58 5680419.30 97.50 -602026.84 5680316.16 97.50 -602026.98 5678150.59 97.50 -602027.17 5680438.13 97.50 -602027.39 5680362.63 97.50 -602027.55 5677932.63 97.25 -602028.02 5678818.44 97.50 -602028.25 5680379.77 97.50 -602028.59 5680407.77 97.50 -602029.59 5678831.06 97.50 -602029.59 5677942.21 97.25 -602029.74 5678793.69 97.50 -602029.75 5677206.93 98.75 -602029.82 5680505.69 97.50 -602029.86 5680307.20 97.50 -602030.32 5678290.12 97.50 -602030.39 5678928.41 97.50 -602030.72 5677924.20 98.75 -602030.82 5678810.24 97.50 -602030.87 5680281.22 97.50 -602031.32 5676659.29 98.75 -602031.97 5680412.13 97.50 -602032.05 5680485.69 97.50 -602032.13 5676478.52 101.25 -602032.46 5680422.73 97.50 -602033.07 5678281.41 97.50 -602033.11 5678801.86 97.50 -602033.66 5676578.24 100.00 -602033.94 5680431.12 97.50 -602033.98 5678181.15 97.50 -602034.68 5677950.17 97.50 -602034.84 5680299.17 97.50 -602034.96 5678298.40 97.50 -602035.03 5680289.68 97.25 -602035.23 5678919.73 97.50 -602035.35 5678824.60 97.50 -602035.42 5677198.73 98.75 -602036.77 5677933.45 97.25 -602036.88 5678149.15 97.50 -602037.06 5680274.16 97.50 -602037.11 5680511.06 97.50 -602037.20 5680362.05 97.50 -602037.23 5680375.61 97.50 -602037.72 5680477.46 97.50 -602038.74 5677943.78 97.25 -602039.29 5680304.89 97.50 -602039.34 5676653.51 98.75 -602039.47 5680415.86 97.50 -602040.04 5678911.04 97.50 -602040.41 5678306.11 97.50 -602040.61 5678275.86 97.50 -602040.62 5677925.33 98.75 -602041.08 5677190.53 98.75 -602041.12 5680424.44 97.50 -602041.14 5680345.54 96.25 -602041.58 5680385.52 97.50 -602041.88 5680354.54 96.25 -602042.02 5680367.64 97.50 -602042.11 5676479.12 101.25 -602042.28 5680468.61 97.50 -602043.24 5677955.35 97.50 -602043.33 5680310.26 97.50 -602043.62 5676578.49 100.00 -602043.91 5678181.61 97.50 -602044.19 5680336.66 96.25 -602045.30 5680270.21 97.50 -602045.50 5680506.90 97.50 -602045.77 5678903.04 97.50 -602045.89 5677935.19 97.25 -602046.02 5680416.23 97.50 -602046.36 5680459.48 97.50 -602046.38 5680377.48 97.50 -602046.45 5678313.42 97.50 -602046.69 5678147.27 97.50 -602046.82 5680390.70 97.50 -602047.88 5677945.40 97.25 -602048.43 5676649.43 98.75 -602048.46 5677183.90 98.75 -602048.56 5678270.69 97.50 -602049.37 5680341.44 96.00 -602049.84 5680497.90 97.50 -602050.36 5680353.59 96.25 -602050.48 5680450.38 97.50 -602050.54 5677926.32 98.75 -602051.08 5680382.08 97.25 -602051.25 5680330.45 96.25 -602051.79 5677960.53 97.50 -602052.08 5676479.81 101.25 -602052.19 5680273.89 97.50 -602052.60 5680309.04 97.50 -602052.81 5678896.03 97.50 -602052.99 5678291.27 95.50 -602053.19 5678319.93 97.50 -602053.29 5677940.52 97.25 -602053.38 5678184.82 97.50 -602053.49 5676576.93 100.00 -602053.66 5680488.67 97.50 -602053.98 5680441.04 97.50 -602054.01 5680372.94 97.50 -602054.24 5680283.17 97.50 -602054.50 5678165.99 97.50 -602054.93 5680386.57 97.50 -602056.16 5677177.57 98.75 -602056.26 5680292.45 97.50 -602056.35 5680346.52 96.25 -602056.46 5678145.15 97.50 -602056.55 5678265.58 97.50 -602056.74 5680431.43 97.50 -602056.88 5680479.21 97.50 -602057.08 5680301.71 97.50 -602057.28 5678174.65 97.50 -602057.89 5676646.32 98.75 -602058.99 5680328.25 96.25 -602059.28 5680378.21 97.50 -602059.32 5680337.64 96.25 -602059.42 5680421.80 97.50 -602059.54 5677966.84 97.50 -602060.05 5677926.25 98.75 -602060.10 5680469.74 97.50 -602060.12 5678889.30 97.50 -602060.16 5676569.96 100.00 -602060.72 5678159.52 97.50 -602061.75 5678322.20 97.50 -602061.96 5676481.34 101.25 -602062.10 5680412.17 97.50 -602062.84 5678188.05 97.50 -602063.35 5680460.29 97.50 -602063.86 5677171.23 98.75 -602064.53 5680402.47 97.50 -602065.10 5678262.48 97.50 -602065.57 5678881.10 97.50 -602065.67 5678179.82 97.50 -602065.72 5678314.19 97.50 -602065.91 5677918.19 98.75 -602066.12 5678304.72 97.50 -602066.23 5678143.03 97.50 -602066.62 5680450.84 97.50 -602066.87 5680392.75 97.50 -602067.22 5677973.23 97.50 -602067.39 5676643.32 98.75 -602067.64 5676563.81 100.00 -602068.42 5678295.52 97.50 -602068.48 5677821.32 98.75 -602068.58 5677831.29 98.75 -602068.63 5677811.36 98.75 -602068.68 5677841.26 98.75 -602068.78 5677851.23 98.75 -602068.85 5677801.39 98.75 -602069.18 5680383.02 97.50 -602069.23 5680441.22 97.50 -602069.83 5678872.15 97.50 -602069.94 5677861.09 98.75 -602070.29 5678286.26 97.50 -602070.46 5678157.97 97.50 -602070.76 5680373.15 97.50 -602070.98 5678276.80 97.50 -602071.05 5677909.79 98.75 -602071.08 5680431.39 97.50 -602071.45 5678267.36 97.50 -602071.56 5677164.90 98.75 -602071.71 5677791.95 98.75 -602071.79 5677870.88 98.75 -602071.84 5676482.87 101.25 -602072.05 5678191.93 97.50 -602072.33 5680363.28 97.50 -602072.99 5680421.58 97.50 -602073.14 5678862.81 97.50 -602073.55 5677900.14 98.75 -602073.64 5680353.37 97.50 -602073.65 5677880.68 98.75 -602074.80 5680343.44 97.50 -602074.92 5680411.77 97.50 -602075.00 5678853.05 97.50 -602075.16 5677979.20 97.50 -602075.31 5677782.65 98.75 -602075.50 5677890.47 98.75 -602075.55 5678181.38 97.50 -602075.95 5680333.51 97.50 -602076.06 5678141.20 97.50 -602076.42 5680518.02 97.50 -602076.69 5680303.56 97.50 -602076.69 5680313.56 97.50 -602076.69 5680323.56 97.50 -602076.83 5676559.85 100.00 -602076.86 5678843.29 97.50 -602076.89 5676640.33 98.75 -602077.05 5680402.00 97.50 -602078.40 5680508.42 97.50 -602078.73 5678833.53 97.50 -602079.18 5680392.23 97.50 -602079.26 5677158.57 98.75 -602079.29 5677773.52 98.75 -602080.28 5678823.72 97.50 -602080.44 5678157.40 97.50 -602080.63 5680382.34 97.50 -602080.98 5680498.98 97.50 -602081.05 5680295.09 97.50 -602081.27 5678195.82 97.50 -602081.76 5678813.89 97.50 -602081.82 5676482.76 101.25 -602082.08 5680372.45 97.50 -602083.18 5680362.52 97.50 -602083.19 5680239.68 97.50 -602083.34 5680489.48 97.50 -602083.67 5677764.57 98.75 -602083.81 5678804.18 97.50 -602084.01 5680302.65 97.50 -602084.16 5680352.57 97.50 -602084.50 5677982.76 97.50 -602084.61 5680312.63 97.50 -602084.83 5680342.60 97.50 -602084.90 5680249.32 97.50 -602085.05 5680332.61 97.50 -602085.07 5678184.23 97.50 -602085.20 5680322.61 97.50 -602085.30 5680479.89 97.50 -602085.69 5678138.60 97.50 -602086.06 5678794.50 97.50 -602086.35 5676637.20 98.75 -602086.71 5676558.98 100.00 -602086.80 5680258.92 97.50 -602087.63 5677153.20 98.75 -602087.63 5680470.38 97.50 -602088.05 5677755.62 98.75 -602088.32 5678784.83 97.50 -602089.52 5678153.41 97.50 -602089.83 5680268.23 97.50 -602090.14 5680460.91 97.50 -602090.44 5678775.12 97.50 -602090.81 5678198.66 97.50 -602091.80 5676482.38 101.25 -602091.82 5680277.74 97.50 -602092.23 5678765.35 97.50 -602092.43 5680451.39 97.50 -602092.69 5680287.48 97.50 -602092.94 5677746.93 98.75 -602094.02 5678755.58 97.50 -602094.21 5677983.25 97.50 -602094.53 5678187.34 97.50 -602094.57 5680441.84 97.50 -602094.73 5680297.06 97.50 -602095.38 5678136.30 97.50 -602095.58 5678706.76 97.50 -602095.79 5676634.00 98.75 -602096.07 5678745.86 97.50 -602096.26 5677148.23 98.75 -602096.61 5677819.72 97.50 -602096.62 5678716.64 97.50 -602096.62 5680432.26 97.50 -602096.67 5678697.38 97.50 -602096.70 5676558.57 100.00 -602096.73 5677809.86 97.50 -602096.79 5680306.64 97.50 -602097.88 5677738.27 98.75 -602097.94 5678148.12 97.50 -602098.16 5678736.14 97.50 -602098.23 5680422.60 97.50 -602098.42 5678726.41 97.50 -602098.96 5680316.19 97.50 -602099.09 5678707.01 98.75 -602099.19 5677829.38 97.50 -602099.84 5680412.94 97.50 -602100.57 5678200.85 97.50 -602100.66 5678697.46 98.75 -602100.79 5678688.62 97.50 -602100.91 5677838.74 97.50 -602100.95 5677801.95 97.50 -602101.12 5680325.74 97.50 -602101.45 5680403.28 97.50 -602101.49 5676479.92 101.25 -602102.23 5678860.14 97.50 -602102.30 5678678.80 97.50 -602102.77 5678141.04 97.50 -602102.81 5677729.61 98.75 -602103.01 5680393.61 97.50 -602103.07 5678687.81 98.75 -602103.49 5678715.26 98.75 -602103.95 5680335.08 97.50 -602104.13 5677981.97 97.50 -602104.36 5678189.15 97.50 -602104.40 5677142.50 98.75 -602104.50 5680344.86 97.50 -602104.53 5680383.94 97.50 -602104.62 5678669.15 97.50 -602104.85 5676629.92 98.75 -602105.00 5678678.03 98.75 -602105.04 5680354.64 97.50 -602105.25 5680364.43 97.50 -602105.42 5680374.22 97.50 -602106.02 5677847.34 97.50 -602106.70 5676558.58 100.00 -602106.95 5678659.49 97.50 -602107.22 5677478.22 98.75 -602107.31 5678668.34 98.75 -602107.53 5677681.60 98.75 -602107.64 5677468.36 98.75 -602107.66 5677691.57 98.75 -602107.67 5678852.29 97.50 -602107.74 5677720.95 98.75 -602107.82 5677671.65 98.75 -602108.31 5677701.51 98.75 -602108.62 5677661.71 98.75 -602108.69 5677805.99 97.50 -602108.71 5677488.07 98.75 -602109.03 5677711.46 98.75 -602109.12 5677458.50 98.75 -602109.83 5678658.69 98.75 -602110.09 5678863.16 97.50 -602110.20 5677497.93 98.75 -602110.27 5678650.13 97.50 -602110.31 5678203.09 97.50 -602110.35 5677856.33 97.50 -602110.60 5677448.65 98.75 -602110.69 5677652.13 98.75 -602111.21 5676477.59 101.25 -602111.70 5677507.79 98.75 -602111.95 5678714.40 98.75 -602112.39 5677136.53 98.75 -602112.69 5677942.28 97.50 -602112.78 5677977.20 97.50 -602112.96 5678649.24 98.75 -602113.56 5677439.41 98.75 -602113.65 5678640.78 97.50 -602113.71 5678936.55 97.50 -602113.99 5676626.61 98.75 -602114.28 5678190.26 97.50 -602114.31 5677865.51 97.50 -602114.45 5678845.04 97.50 -602114.79 5677813.92 97.50 -602114.94 5677517.05 98.75 -602115.08 5677643.18 98.75 -602115.36 5678705.05 98.75 -602116.32 5678927.33 97.50 -602116.37 5677932.99 97.50 -602116.57 5678639.94 98.75 -602116.70 5676558.59 100.00 -602117.17 5678631.49 97.50 -602118.27 5677874.69 97.50 -602118.87 5678858.53 97.50 -602118.91 5677822.94 97.50 -602119.35 5678695.92 98.75 -602119.37 5678207.33 97.50 -602119.48 5677634.23 98.75 -602119.55 5677431.44 98.75 -602119.62 5678836.63 97.50 -602119.68 5677691.11 97.40 -602119.69 5677700.73 97.40 -602119.71 5677525.81 98.75 -602120.05 5677923.69 97.50 -602120.06 5677970.46 97.50 -602120.17 5677681.49 97.40 -602120.18 5678630.65 98.75 -602120.24 5677884.47 97.50 -602120.37 5677130.56 98.75 -602120.70 5678622.20 97.50 -602120.98 5676475.47 101.25 -602121.32 5677710.13 97.40 -602121.61 5678919.11 97.50 -602121.69 5677672.05 97.40 -602121.96 5677894.32 97.50 -602122.33 5677913.97 97.50 -602122.43 5677832.30 97.50 -602123.09 5678827.28 97.50 -602123.63 5678686.92 98.75 -602123.68 5677904.17 97.50 -602123.79 5677625.25 98.75 -602123.89 5678621.40 98.75 -602123.92 5678192.27 97.50 -602123.95 5676626.84 98.75 -602123.97 5678865.14 97.50 -602124.34 5677662.80 97.40 -602124.47 5677534.56 98.75 -602124.60 5677719.11 97.40 -602124.82 5678613.18 97.50 -602125.55 5677423.48 98.75 -602125.68 5677841.75 97.50 -602126.30 5677653.37 97.40 -602126.31 5678817.85 97.50 -602126.66 5676558.16 100.00 -602126.76 5677963.04 97.50 -602126.99 5677708.83 97.40 -602127.68 5677718.44 97.40 -602127.70 5678853.95 97.50 -602128.06 5677616.24 98.75 -602128.13 5678612.44 98.75 -602128.42 5678211.57 97.50 -602128.53 5677699.33 97.40 -602128.76 5677851.27 97.50 -602129.12 5677680.16 97.40 -602129.22 5677125.98 98.75 -602129.23 5677543.32 98.75 -602129.26 5678604.29 97.50 -602129.36 5677689.78 97.40 -602129.39 5678678.88 98.75 -602129.84 5677644.43 97.40 -602130.14 5678914.16 97.50 -602130.21 5678808.73 97.50 -602130.27 5677670.60 97.40 -602130.48 5676472.56 101.25 -602131.54 5677415.51 98.75 -602131.86 5677860.77 97.50 -602132.32 5677607.23 98.75 -602132.51 5677661.25 97.40 -602132.58 5678860.16 97.50 -602132.92 5677955.18 97.50 -602133.01 5678196.44 97.50 -602133.83 5676627.82 98.75 -602133.99 5678604.38 98.75 -602134.07 5677552.04 98.75 -602134.39 5677635.99 97.40 -602134.85 5677481.76 98.75 -602134.98 5677870.27 97.50 -602135.05 5677651.96 97.40 -602135.26 5678596.38 97.50 -602135.44 5678800.24 97.50 -602135.89 5677491.68 98.75 -602136.54 5676556.60 100.00 -602136.59 5677598.22 98.75 -602136.92 5677501.60 98.75 -602136.92 5677407.12 98.75 -602137.09 5678850.59 97.50 -602137.13 5678672.71 98.75 -602137.75 5677472.28 98.75 -602137.85 5678214.85 97.50 -602138.07 5677879.78 97.50 -602138.11 5677121.47 98.75 -602138.70 5678909.26 97.50 -602138.76 5677643.08 97.40 -602138.81 5677947.10 97.50 -602138.84 5677511.26 98.75 -602138.96 5678595.81 98.75 -602139.04 5677560.68 98.75 -602139.58 5676468.42 101.25 -602139.91 5677628.16 97.40 -602139.93 5677588.91 98.75 -602140.08 5677889.57 97.50 -602140.90 5678202.43 97.50 -602140.97 5677462.84 98.75 -602140.98 5678791.95 97.50 -602141.34 5678588.52 97.50 -602141.54 5678855.88 97.50 -602141.87 5677579.13 98.75 -602142.09 5677899.37 97.50 -602142.27 5677398.71 98.75 -602143.51 5677520.07 98.75 -602143.53 5677634.72 97.40 -602143.60 5678820.22 98.75 -602143.62 5676629.64 98.75 -602143.79 5677938.48 97.50 -602143.81 5677569.35 98.75 -602144.07 5677909.17 97.50 -602144.18 5677453.39 98.75 -602145.78 5678667.78 98.75 -602145.85 5677919.01 97.50 -602146.02 5678846.34 97.50 -602146.19 5677928.88 97.50 -602146.24 5678589.02 98.75 -602146.30 5678810.66 98.75 -602146.41 5676555.04 100.00 -602146.43 5677708.60 97.50 -602147.00 5677116.97 98.75 -602147.00 5678915.85 96.25 -602147.04 5678218.45 97.50 -602147.06 5678904.11 97.50 -602147.16 5678784.12 97.50 -602147.27 5677698.81 97.50 -602147.32 5677718.52 97.50 -602147.53 5677622.27 97.40 -602147.53 5678580.70 97.50 -602147.62 5677390.30 98.75 -602147.71 5678774.23 97.50 -602147.86 5677626.14 97.40 -602148.06 5678826.78 98.75 -602148.17 5677528.89 98.75 -602148.22 5677728.44 97.50 -602148.54 5677444.50 98.75 -602148.57 5676464.05 101.25 -602148.72 5678764.38 97.50 -602149.24 5678207.81 97.50 -602149.63 5677689.14 97.50 -602149.67 5678801.30 98.75 -602150.17 5677738.04 97.50 -602150.60 5678851.77 97.50 -602150.84 5678906.67 96.25 -602151.54 5678754.82 97.50 -602152.00 5677679.46 97.50 -602152.21 5678791.72 98.75 -602152.70 5677381.72 98.75 -602153.17 5678581.95 98.75 -602153.42 5676631.47 98.75 -602153.83 5678661.91 98.75 -602153.87 5677436.07 98.75 -602153.87 5678573.01 97.50 -602154.06 5678781.95 98.75 -602154.12 5678225.52 97.50 -602154.24 5678840.68 97.50 -602154.35 5677536.70 98.75 -602154.36 5677669.79 97.50 -602154.43 5678897.56 97.50 -602154.90 5677746.80 97.50 -602156.05 5677113.05 98.75 -602156.19 5676552.96 100.00 -602156.38 5678772.29 98.75 -602156.64 5677660.09 97.50 -602157.06 5678746.77 97.50 -602157.46 5676459.47 101.25 -602157.59 5677373.04 98.75 -602157.60 5678824.30 98.75 -602158.12 5678212.41 97.50 -602158.91 5677650.40 97.50 -602159.05 5678901.83 96.25 -602159.20 5677427.63 98.75 -602159.24 5678574.04 98.75 -602159.54 5678762.92 98.75 -602159.56 5678847.45 97.50 -602159.62 5677755.57 97.50 -602159.93 5677539.92 98.75 -602160.40 5678565.48 97.50 -602162.15 5678230.90 97.50 -602162.33 5678656.69 98.75 -602162.48 5678835.07 97.50 -602162.48 5677364.35 98.75 -602162.65 5678892.14 97.50 -602162.81 5677837.51 97.40 -602163.23 5676630.21 98.75 -602163.29 5677641.66 97.50 -602163.43 5677530.57 98.75 -602163.53 5678739.18 97.50 -602164.00 5677847.19 97.40 -602164.11 5677764.45 97.50 -602164.64 5678754.41 98.75 -602164.73 5677419.42 98.75 -602165.20 5678566.06 98.75 -602165.68 5678818.55 98.75 -602165.89 5676550.57 100.00 -602166.00 5677112.48 98.75 -602166.34 5676454.88 101.25 -602166.78 5678557.81 97.50 -602166.93 5677521.23 98.75 -602167.43 5677856.35 97.40 -602167.64 5677355.83 98.75 -602167.80 5678214.94 97.50 -602167.87 5678841.99 97.50 -602167.90 5677773.66 97.50 -602168.18 5678602.22 98.75 -602168.47 5678592.37 98.75 -602168.57 5678899.05 96.25 -602168.76 5677838.15 97.40 -602169.10 5677633.57 97.50 -602170.16 5678731.73 97.50 -602170.75 5678746.56 98.75 -602171.17 5678887.24 97.50 -602171.17 5678558.08 98.75 -602171.19 5678652.16 98.75 -602171.20 5677512.25 98.75 -602171.39 5678582.98 98.75 -602171.51 5678830.86 97.50 -602171.69 5677782.87 97.50 -602171.84 5678233.37 97.50 -602172.44 5677864.69 97.40 -602172.73 5678619.95 97.50 -602172.97 5678550.00 97.50 -602173.00 5678811.89 98.75 -602173.03 5677347.44 98.75 -602173.04 5676628.47 98.75 -602173.37 5677414.43 98.75 -602173.88 5677380.39 98.75 -602174.36 5676448.95 101.25 -602174.91 5677625.48 97.50 -602175.10 5677845.56 97.40 -602175.48 5677792.08 97.50 -602175.51 5677114.67 98.75 -602175.60 5676548.17 100.00 -602176.13 5677503.58 98.75 -602176.31 5677370.72 98.75 -602176.39 5678605.69 98.75 -602176.63 5678574.52 98.75 -602176.91 5678837.89 97.50 -602176.97 5678211.84 97.50 -602177.04 5678738.86 98.75 -602177.42 5678550.31 98.75 -602177.62 5678894.90 96.25 -602177.91 5678725.91 97.50 -602178.08 5677872.67 97.40 -602178.42 5677339.06 98.75 -602178.74 5678612.99 97.50 -602179.07 5678624.24 97.50 -602179.16 5678542.18 97.50 -602179.26 5677801.29 97.50 -602179.54 5678812.42 97.50 -602179.73 5678804.57 98.75 -602179.78 5677377.79 98.75 -602180.24 5678883.37 97.50 -602180.46 5678648.72 98.75 -602180.55 5678826.65 97.50 -602180.60 5677853.64 97.40 -602180.72 5677617.39 97.50 -602181.06 5677494.91 98.75 -602181.15 5678230.90 97.50 -602181.28 5677394.73 98.75 -602181.42 5677362.23 98.75 -602182.07 5677409.55 98.75 -602182.24 5676442.80 101.25 -602182.33 5678817.35 97.50 -602182.37 5678566.36 98.75 -602182.45 5678019.06 97.50 -602182.49 5676625.42 98.75 -602182.54 5678010.48 97.50 -602183.62 5677810.22 97.50 -602183.80 5677119.83 98.75 -602183.81 5677330.67 98.75 -602184.20 5677880.30 97.40 -602184.65 5676544.12 100.00 -602184.96 5677386.49 98.75 -602185.07 5678733.98 98.75 -602185.12 5678206.54 97.50 -602185.67 5677862.00 97.40 -602185.76 5678534.74 97.50 -602185.82 5678557.21 98.75 -602185.82 5678547.76 98.75 -602185.83 5678796.73 98.75 -602185.98 5677486.23 98.75 -602186.07 5678834.02 97.50 -602186.11 5678603.51 98.75 -602186.53 5677609.30 97.50 -602186.97 5677353.94 98.75 -602187.23 5678806.16 97.50 -602187.26 5678892.85 96.25 -602187.27 5678616.59 97.25 -602187.34 5678722.65 97.50 -602187.78 5678610.40 97.50 -602187.87 5677371.95 98.75 -602188.37 5678026.69 97.50 -602188.53 5678622.75 97.50 -602188.60 5677818.85 97.50 -602189.20 5677322.29 98.75 -602189.37 5678822.00 97.50 -602189.44 5677397.71 98.75 -602189.63 5678225.67 97.50 -602189.94 5678882.47 97.50 -602190.26 5678646.87 98.75 -602190.30 5677887.94 97.40 -602190.60 5677870.45 97.40 -602190.71 5676437.49 101.25 -602190.74 5677477.46 98.75 -602190.84 5677126.88 98.75 -602190.85 5677404.84 98.75 -602190.90 5678198.38 97.50 -602191.12 5678812.82 97.50 -602191.27 5678008.49 97.50 -602191.80 5678788.77 98.75 -602191.80 5676621.88 98.75 -602192.50 5677601.37 97.50 -602192.70 5677380.30 98.75 -602192.91 5677345.94 98.75 -602193.09 5678527.97 97.50 -602193.33 5676539.17 100.00 -602193.57 5677827.48 97.50 -602194.22 5678730.58 98.75 -602194.31 5677313.74 98.75 -602194.76 5678829.19 97.50 -602195.49 5677468.69 98.75 -602195.53 5677878.89 97.40 -602195.57 5678717.66 97.50 -602195.60 5678800.79 97.50 -602195.85 5678601.36 98.75 -602195.96 5677366.12 98.75 -602196.09 5678032.55 97.50 -602196.37 5677895.61 97.40 -602196.77 5678219.00 97.50 -602197.13 5678190.56 97.50 -602197.14 5678891.66 96.25 -602197.15 5678608.53 97.50 -602197.29 5677134.45 98.75 -602197.70 5678619.99 97.50 -602197.77 5678780.82 98.75 -602198.01 5678817.03 97.50 -602198.54 5677836.11 97.50 -602198.89 5677394.52 98.75 -602199.15 5677305.02 98.75 -602199.21 5677338.21 98.75 -602199.22 5676432.25 101.25 -602199.76 5678881.80 97.50 -602200.12 5678012.46 97.50 -602200.15 5678808.83 97.50 -602200.17 5678645.81 98.75 -602200.25 5678024.16 97.25 -602200.26 5677595.12 97.50 -602200.33 5676616.87 98.75 -602200.58 5677460.13 98.75 -602200.82 5678521.69 97.50 -602200.82 5677404.34 98.75 -602201.20 5677886.86 97.40 -602201.33 5677375.30 98.75 -602201.67 5678210.28 97.50 -602201.84 5676533.95 100.00 -602202.18 5678710.20 97.50 -602202.29 5678724.77 98.75 -602202.43 5677903.28 97.40 -602203.23 5677142.45 98.75 -602203.35 5678182.73 97.50 -602203.40 5678824.27 97.50 -602203.41 5678612.90 97.50 -602203.52 5677844.73 97.50 -602203.97 5678784.89 97.50 -602203.99 5677296.31 98.75 -602204.42 5678037.61 97.50 -602204.57 5678796.47 97.50 -602204.60 5678773.64 98.75 -602204.73 5677361.42 98.75 -602205.52 5677330.48 98.75 -602205.58 5678599.21 98.75 -602206.18 5677451.87 98.75 -602206.66 5678812.06 97.50 -602206.79 5678201.70 97.50 -602207.03 5677894.70 97.40 -602207.05 5678890.81 96.25 -602207.37 5676426.49 101.25 -602207.42 5678701.72 97.50 -602207.48 5677545.86 97.50 -602207.58 5677539.05 97.50 -602208.02 5677588.88 97.50 -602208.15 5678716.74 98.75 -602208.34 5677391.31 98.75 -602208.48 5676611.13 98.75 -602208.49 5677853.36 97.50 -602208.63 5678017.20 97.50 -602208.67 5677910.81 97.40 -602208.82 5677287.59 98.75 -602208.84 5678515.77 97.50 -602209.05 5678028.29 97.25 -602209.17 5677150.46 98.75 -602209.34 5678879.97 97.50 -602209.35 5678805.08 97.50 -602209.69 5676527.76 100.00 -602209.86 5678777.65 97.50 -602209.95 5677370.29 98.75 -602210.07 5678646.53 98.75 -602210.10 5676851.24 97.50 -602210.12 5677114.69 98.75 -602210.51 5678175.75 97.50 -602210.78 5677403.84 98.75 -602210.78 5678786.29 97.50 -602210.99 5676860.57 97.50 -602211.75 5677322.69 98.75 -602211.88 5678766.88 98.75 -602211.98 5677443.78 98.75 -602211.99 5677104.90 98.75 -602212.05 5678819.37 97.50 -602212.32 5678779.81 97.25 -602212.59 5678193.56 97.50 -602212.82 5678790.89 97.50 -602212.94 5678042.33 97.50 -602213.20 5677123.91 98.75 -602213.36 5678693.70 97.50 -602213.67 5677901.87 97.40 -602213.75 5677357.17 98.75 -602213.93 5677531.37 97.50 -602214.25 5678708.89 98.75 -602214.40 5677861.32 97.50 -602214.41 5677095.27 98.75 -602214.60 5677279.54 98.75 -602215.05 5677918.23 97.40 -602215.22 5676420.29 101.25 -602215.34 5678597.22 98.75 -602215.45 5678807.35 97.50 -602215.46 5676604.04 98.75 -602215.78 5677582.64 97.50 -602215.78 5678893.89 96.25 -602216.29 5677157.39 98.75 -602216.84 5676868.20 97.50 -602216.86 5678509.85 97.50 -602217.23 5677133.03 98.75 -602217.27 5677544.05 97.50 -602217.40 5678021.37 97.50 -602217.40 5678771.97 97.50 -602217.44 5676521.44 100.00 -602217.45 5678885.60 97.50 -602217.47 5677314.52 98.75 -602217.49 5677435.52 98.75 -602217.61 5676848.34 97.50 -602217.71 5677387.90 98.75 -602217.85 5678032.41 97.25 -602217.91 5677085.94 98.75 -602218.01 5678780.29 97.50 -602218.01 5678169.16 97.50 -602218.05 5678875.35 97.50 -602218.11 5678800.39 97.50 -602218.59 5678775.05 97.25 -602219.17 5678760.11 98.75 -602219.28 5678186.35 97.50 -602219.28 5677443.42 97.50 -602219.50 5677367.58 98.75 -602219.86 5678648.35 98.75 -602219.93 5678686.22 97.50 -602220.32 5677909.05 97.40 -602220.58 5678701.22 98.75 -602220.60 5677402.33 98.75 -602220.75 5678814.55 97.50 -602220.93 5677868.84 97.50 -602221.26 5677272.12 98.75 -602221.41 5677925.65 97.40 -602221.42 5677076.62 98.75 -602221.87 5678786.73 97.50 -602222.05 5678045.81 97.50 -602222.16 5677525.81 97.50 -602222.40 5676596.88 98.75 -602222.68 5676413.65 101.25 -602222.77 5677352.91 98.75 -602222.94 5678501.97 97.50 -602223.18 5677140.89 98.75 -602223.19 5677306.35 98.75 -602223.27 5677020.21 97.50 -602223.61 5677576.49 97.50 -602223.78 5678888.55 97.50 -602223.80 5677163.90 98.75 -602223.89 5678765.46 97.50 -602224.09 5677428.45 98.75 -602224.15 5678769.49 97.25 -602224.27 5678802.69 97.50 -602224.57 5677010.52 97.50 -602224.67 5678879.15 97.50 -602224.69 5678773.61 97.50 -602225.06 5676514.97 100.00 -602225.14 5676873.21 97.50 -602225.19 5678595.66 98.75 -602226.00 5678163.17 97.50 -602226.16 5676664.09 98.75 -602226.27 5678794.68 97.50 -602226.53 5678024.76 97.50 -602226.53 5677068.11 98.75 -602226.64 5678753.54 98.75 -602226.79 5678870.80 97.50 -602226.83 5677263.88 98.75 -602226.93 5677541.65 97.50 -602227.03 5677000.98 97.50 -602227.05 5677028.91 97.50 -602227.08 5677384.48 98.75 -602227.13 5676850.35 97.50 -602227.23 5678034.66 97.25 -602227.31 5677915.86 97.40 -602227.46 5677876.36 97.50 -602227.68 5677933.16 97.40 -602227.74 5678181.03 97.50 -602227.82 5677438.29 97.50 -602228.14 5676673.85 98.75 -602228.46 5678681.29 97.50 -602228.56 5678779.39 97.50 -602228.64 5678554.99 98.75 -602228.85 5676654.54 98.75 -602228.89 5678493.97 97.50 -602229.01 5677298.24 98.75 -602229.20 5677365.26 98.75 -602229.33 5678696.53 98.75 -602229.46 5678809.74 97.50 -602229.61 5678650.41 98.75 -602229.64 5676864.56 97.25 -602229.95 5676406.79 101.25 -602230.05 5676991.59 97.50 -602230.14 5677147.96 98.75 -602230.30 5677400.01 98.75 -602230.35 5678758.56 97.50 -602230.44 5676683.51 98.75 -602230.62 5678766.32 97.50 -602230.64 5676591.41 98.75 -602230.76 5677520.85 97.50 -602231.26 5678048.54 97.50 -602231.81 5677348.71 98.75 -602231.98 5676645.10 98.75 -602232.03 5677059.80 98.75 -602232.10 5677571.30 97.50 -602232.23 5677255.50 98.75 -602232.46 5677423.02 98.75 -602232.73 5677168.34 98.75 -602233.17 5676509.30 100.00 -602233.17 5678798.20 97.50 -602233.41 5678886.47 97.50 -602233.52 5676982.35 97.50 -602233.91 5678875.70 97.50 -602233.91 5677940.69 97.40 -602233.99 5677883.88 97.50 -602234.07 5678771.14 97.50 -602234.17 5676876.47 97.50 -602234.17 5678747.06 98.75 -602234.42 5678788.96 97.50 -602234.47 5678548.50 98.75 -602234.59 5678158.05 97.50 -602234.71 5677922.26 97.40 -602234.81 5678562.37 98.75 -602234.82 5677009.93 97.25 -602234.85 5676692.44 98.75 -602235.02 5677290.29 98.75 -602235.08 5678596.26 98.75 -602235.51 5678866.20 97.50 -602235.88 5677029.41 97.50 -602235.97 5678175.38 97.50 -602236.00 5678487.20 97.50 -602236.08 5676854.17 97.50 -602236.14 5678026.07 97.50 -602236.19 5677050.76 98.75 -602236.30 5677433.07 97.50 -602236.47 5676636.21 98.75 -602236.54 5677539.03 97.50 -602236.68 5677382.00 98.75 -602236.74 5678759.20 97.50 -602236.81 5678751.66 97.50 -602236.82 5678036.20 97.25 -602237.37 5676973.26 97.50 -602237.94 5678678.58 97.50 -602238.05 5678804.73 97.50 -602238.20 5678692.04 98.75 -602238.33 5676401.42 101.25 -602238.41 5677000.72 97.25 -602238.46 5676701.70 98.75 -602238.50 5677153.37 98.75 -602238.90 5677362.94 98.75 -602239.13 5677248.43 98.75 -602239.43 5678652.11 98.75 -602239.73 5676588.82 98.75 -602239.83 5677516.74 97.50 -602239.97 5678763.32 97.50 -602240.00 5677397.69 98.75 -602240.14 5677948.23 97.40 -602240.16 5677021.91 97.50 -602240.19 5677041.64 98.75 -602240.60 5677566.10 97.50 -602240.65 5677891.27 97.50 -602240.84 5677417.60 98.75 -602240.93 5677344.65 98.75 -602240.98 5678047.85 97.50 -602241.04 5677282.33 98.75 -602241.21 5676964.17 97.50 -602241.51 5676711.19 98.75 -602241.66 5677172.77 98.75 -602241.71 5678740.57 98.75 -602241.88 5677928.90 97.40 -602242.00 5676991.51 97.25 -602242.09 5678793.74 97.50 -602242.46 5676505.60 100.00 -602242.99 5678884.20 97.50 -602243.16 5678872.30 97.50 -602243.32 5678784.85 97.50 -602243.35 5676875.40 97.50 -602243.42 5678153.37 97.50 -602243.47 5678744.99 97.50 -602243.55 5677012.72 97.50 -602243.70 5678169.05 97.50 -602243.75 5678566.69 98.75 -602243.80 5676629.78 98.75 -602243.85 5678752.99 97.50 -602243.93 5678545.35 98.75 -602244.05 5678861.28 97.50 -602244.19 5677032.51 98.75 -602244.34 5678481.74 97.50 -602244.54 5678067.43 97.50 -602244.56 5676720.67 98.75 -602244.75 5677427.79 97.50 -602244.89 5676858.10 97.50 -602245.03 5678596.84 98.75 -602245.06 5676955.08 97.50 -602245.35 5678776.08 97.30 -602245.58 5676982.30 97.25 -602245.68 5678027.98 97.50 -602245.87 5678075.24 97.50 -602246.21 5677536.68 97.50 -602246.42 5678037.73 97.25 -602246.58 5677380.73 98.75 -602246.60 5678799.66 97.50 -602246.71 5677241.95 98.75 -602246.77 5677955.42 97.40 -602246.90 5676867.55 97.50 -602247.02 5676396.48 101.25 -602247.12 5677274.43 98.75 -602247.17 5678687.75 98.75 -602247.18 5678675.10 97.50 -602247.30 5677157.81 98.75 -602247.64 5677003.73 97.50 -602247.69 5678781.27 97.30 -602247.70 5678757.07 97.50 -602247.87 5676730.07 98.75 -602247.99 5677023.30 98.75 -602248.04 5677897.95 97.50 -602248.21 5677359.66 98.75 -602248.90 5677512.63 97.50 -602249.03 5677935.57 97.40 -602249.10 5677560.91 97.50 -602249.16 5676946.10 97.50 -602249.26 5678653.77 98.75 -602249.28 5676973.14 97.25 -602249.29 5677412.34 98.75 -602249.54 5678734.46 98.75 -602249.58 5676590.32 98.75 -602249.68 5677395.30 98.75 -602250.04 5677340.60 98.75 -602250.56 5678048.10 97.50 -602250.84 5677176.65 98.75 -602250.99 5678789.24 97.50 -602251.00 5678746.94 97.50 -602251.04 5678768.79 97.30 -602251.45 5676739.36 98.75 -602251.47 5678740.28 97.50 -602251.62 5678879.43 97.50 -602251.66 5677014.04 98.75 -602251.72 5676994.75 97.50 -602251.75 5676501.90 100.00 -602251.88 5678063.25 97.50 -602252.25 5678148.68 97.50 -602252.42 5678868.92 97.50 -602252.58 5676625.15 98.75 -602252.64 5678540.57 98.75 -602252.66 5678781.62 97.50 -602252.69 5678476.27 97.50 -602252.87 5678165.09 97.50 -602253.00 5678857.20 97.50 -602253.31 5677422.75 97.50 -602253.41 5677962.61 97.40 -602253.41 5676937.19 97.50 -602253.49 5678568.83 98.75 -602253.57 5677266.82 98.75 -602253.80 5676964.35 97.25 -602254.28 5677235.47 98.75 -602254.76 5678077.48 97.50 -602254.99 5678597.17 98.75 -602255.03 5678030.60 97.50 -602255.04 5676748.66 98.75 -602255.17 5678794.62 97.50 -602255.32 5677004.78 98.75 -602255.42 5677904.64 97.50 -602255.61 5678776.53 97.30 -602255.75 5676391.62 101.25 -602255.79 5677942.64 97.40 -602255.82 5678670.20 97.50 -602255.86 5676985.79 97.50 -602255.97 5677534.69 97.50 -602256.14 5678683.47 98.75 -602256.19 5678751.89 97.50 -602256.44 5677380.80 98.75 -602256.51 5678531.52 98.75 -602256.73 5677354.47 98.75 -602256.94 5677160.31 98.75 -602257.56 5678728.57 98.75 -602257.66 5676928.28 97.50 -602257.72 5678071.51 97.25 -602257.72 5677556.01 97.50 -602257.97 5677508.52 97.50 -602258.31 5676955.55 97.25 -602258.54 5677408.58 98.75 -602258.60 5678763.44 97.30 -602258.63 5677390.90 98.75 -602259.06 5678521.94 98.75 -602259.06 5678652.23 98.75 -602259.14 5676757.65 98.75 -602259.18 5676995.59 98.75 -602259.27 5677336.82 98.75 -602259.47 5676590.66 98.75 -602259.72 5678050.94 97.50 -602259.79 5678784.56 97.50 -602260.02 5677259.21 98.75 -602260.10 5676976.87 97.50 -602260.16 5677179.95 98.75 -602260.35 5677969.48 97.40 -602260.51 5678875.19 97.50 -602260.70 5678512.10 98.75 -602260.92 5676497.94 100.00 -602261.03 5678470.81 97.50 -602261.06 5678063.57 97.50 -602261.40 5678864.98 97.50 -602261.46 5676620.68 98.75 -602261.60 5678777.24 97.50 -602261.60 5678145.77 97.50 -602261.85 5677228.99 98.75 -602261.91 5676919.37 97.50 -602262.18 5678853.61 97.50 -602262.25 5678161.95 97.50 -602262.54 5677949.71 97.40 -602262.58 5677419.10 97.50 -602262.82 5676946.76 97.25 -602262.91 5677911.19 97.50 -602263.13 5676986.44 98.75 -602263.22 5678570.97 98.75 -602263.75 5678664.15 97.50 -602263.97 5678034.48 97.50 -602263.98 5678078.05 97.50 -602264.02 5678790.07 97.50 -602264.15 5678502.76 98.75 -602264.23 5678773.08 97.30 -602264.33 5678677.85 98.75 -602264.34 5676967.96 97.50 -602264.49 5676386.75 101.25 -602264.91 5678598.07 98.75 -602265.00 5677384.58 98.75 -602265.25 5677349.28 98.75 -602265.53 5676765.29 98.75 -602265.57 5678722.68 98.75 -602265.61 5678748.74 97.50 -602265.71 5678644.96 98.75 -602265.73 5677532.71 97.50 -602266.38 5677503.19 97.50 -602266.43 5676910.60 97.50 -602266.48 5677251.60 98.75 -602266.60 5677161.63 98.75 -602267.19 5678760.08 97.30 -602267.33 5676937.96 97.25 -602267.34 5677553.42 97.50 -602267.36 5676977.43 98.75 -602267.78 5677404.84 98.75 -602267.90 5677975.53 97.40 -602268.52 5677333.08 98.75 -602268.58 5678858.48 97.50 -602268.80 5678780.34 97.50 -602268.84 5677957.19 97.40 -602269.03 5676959.29 97.50 -602269.08 5678049.29 97.50 -602269.40 5676589.83 98.75 -602269.43 5678870.99 97.50 -602269.69 5678066.71 97.50 -602269.75 5676615.15 98.75 -602269.92 5677223.14 98.75 -602270.00 5678041.02 97.50 -602270.12 5677180.43 98.75 -602270.42 5678495.78 98.75 -602270.44 5676495.79 100.00 -602270.52 5678467.77 97.50 -602270.54 5678657.06 97.50 -602270.77 5677917.31 97.50 -602270.95 5676901.82 97.50 -602270.97 5678773.91 97.50 -602271.57 5678144.96 97.50 -602271.72 5676773.09 98.75 -602271.84 5677415.44 97.50 -602271.85 5676929.17 97.25 -602272.12 5678074.56 97.50 -602272.24 5678161.69 97.50 -602272.26 5676968.76 98.75 -602272.41 5678672.06 98.75 -602272.64 5678637.79 98.75 -602272.86 5678785.51 97.50 -602273.15 5678571.83 98.75 -602273.22 5678770.82 97.30 -602273.58 5678716.80 98.75 -602274.19 5677344.94 98.75 -602274.21 5676950.89 97.50 -602274.41 5676385.75 101.25 -602274.50 5677245.71 98.75 -602274.70 5677497.73 97.50 -602274.77 5678745.05 97.50 -602274.77 5678599.56 98.75 -602274.84 5677964.83 97.40 -602275.46 5677530.57 97.50 -602275.46 5676893.04 97.50 -602276.07 5678513.72 98.75 -602276.16 5678758.50 97.30 -602276.30 5677159.37 98.75 -602276.32 5677974.50 97.40 -602276.40 5678649.10 97.50 -602276.73 5676920.58 97.25 -602276.95 5677550.83 97.50 -602277.07 5677401.20 98.75 -602277.17 5676960.09 98.75 -602277.40 5676781.28 98.75 -602277.64 5677609.17 97.50 -602277.77 5677329.35 98.75 -602278.04 5676609.62 98.75 -602278.07 5677217.41 98.75 -602278.17 5678776.91 97.50 -602278.22 5678664.39 98.75 -602278.57 5678867.30 97.50 -602278.63 5677923.43 97.50 -602278.66 5676586.40 98.75 -602279.04 5677175.99 98.75 -602279.07 5678490.84 98.75 -602279.25 5678768.70 97.50 -602279.39 5676942.48 97.50 -602279.83 5678631.01 98.75 -602279.95 5678765.02 97.30 -602279.98 5676884.27 97.50 -602280.03 5678464.77 97.50 -602280.09 5678505.91 98.75 -602280.24 5676494.72 100.00 -602280.87 5677490.08 97.50 -602281.35 5678146.45 97.50 -602281.43 5678520.67 98.75 -602281.53 5677413.48 97.50 -602281.60 5678710.91 98.75 -602281.81 5676912.10 97.25 -602281.83 5678781.29 97.50 -602281.89 5676951.32 98.75 -602282.15 5678162.32 97.50 -602282.20 5677600.60 97.50 -602282.52 5678575.06 98.75 -602282.57 5678739.05 97.50 -602282.64 5677239.95 98.75 -602283.43 5678656.00 98.75 -602283.46 5677341.25 98.75 -602283.76 5678760.25 97.50 -602284.14 5677613.97 97.50 -602284.17 5678642.85 97.50 -602284.32 5676384.55 101.25 -602284.44 5676934.00 97.50 -602284.58 5676875.54 97.50 -602284.65 5678600.67 98.75 -602284.71 5676579.08 98.75 -602285.17 5677528.38 97.50 -602285.35 5676786.68 98.75 -602285.98 5677157.03 98.75 -602286.23 5677211.68 98.75 -602286.26 5676604.00 98.75 -602286.35 5677397.55 98.75 -602286.43 5676942.45 98.75 -602286.46 5677481.83 97.50 -602286.49 5677929.54 97.50 -602286.57 5677548.23 97.50 -602286.89 5676903.62 97.25 -602287.02 5677325.61 98.75 -602287.51 5678773.41 97.50 -602287.73 5678863.66 97.50 -602288.23 5678501.43 98.75 -602288.45 5678487.46 98.75 -602288.63 5677173.65 98.75 -602288.64 5678731.15 97.50 -602288.75 5677593.29 97.50 -602288.99 5678627.09 98.75 -602289.02 5678752.21 97.50 -602289.39 5676925.46 97.50 -602289.45 5676570.32 98.75 -602289.49 5678461.62 97.50 -602289.69 5676491.48 100.00 -602289.72 5678648.30 98.75 -602289.87 5676867.20 97.50 -602290.22 5678523.44 98.75 -602290.32 5678706.13 98.75 -602290.39 5677233.68 98.75 -602290.96 5676933.57 98.75 -602291.05 5678148.88 97.50 -602291.36 5678778.44 97.50 -602291.42 5677412.30 97.50 -602291.48 5676894.88 97.25 -602291.77 5678578.76 98.75 -602291.88 5678164.62 97.50 -602291.94 5678636.60 97.50 -602292.73 5677337.56 98.75 -602292.82 5677474.22 97.50 -602293.74 5677612.13 97.50 -602294.01 5676786.90 98.75 -602294.06 5676382.31 101.25 -602294.18 5676916.84 97.50 -602294.35 5677935.66 97.50 -602294.36 5677205.91 98.75 -602294.40 5676598.25 98.75 -602294.58 5678723.16 97.50 -602294.62 5678600.71 98.75 -602294.68 5678560.86 98.75 -602294.77 5677529.87 97.50 -602295.08 5676562.10 98.75 -602295.16 5676858.87 97.50 -602295.40 5677153.76 98.75 -602295.41 5677543.68 97.50 -602295.49 5676924.70 98.75 -602295.64 5677393.91 98.75 -602295.76 5676885.96 97.25 -602296.18 5678736.82 97.30 -602296.20 5677321.71 98.75 -602296.75 5678745.94 97.50 -602296.81 5678769.83 97.50 -602296.89 5677588.03 97.50 -602297.13 5678860.69 97.50 -602297.14 5678641.93 98.75 -602297.50 5678831.07 97.50 -602297.61 5678500.49 98.75 -602297.61 5678568.84 98.75 -602297.85 5678511.01 99.20 -602297.89 5677227.11 98.75 -602298.22 5678486.75 98.75 -602298.39 5676907.91 97.50 -602298.55 5677173.65 98.75 -602298.72 5678624.94 98.75 -602298.95 5678458.46 97.50 -602299.15 5676488.23 100.00 -602299.23 5678701.73 98.75 -602299.53 5677598.98 97.25 -602299.57 5678522.34 98.75 -602299.74 5677467.05 97.50 -602299.84 5678836.06 97.50 -602300.02 5676915.83 98.75 -602300.03 5676877.05 97.25 -602300.04 5678757.25 97.50 -602300.44 5678631.55 97.50 -602300.45 5676850.54 97.50 -602300.63 5678151.74 97.50 -602300.70 5678740.53 97.30 -602300.74 5677537.14 97.50 -602300.89 5678775.60 97.50 -602300.99 5678715.54 97.50 -602301.10 5678582.27 98.75 -602301.31 5677411.13 97.50 -602301.61 5678166.91 97.50 -602301.65 5676554.76 98.75 -602301.81 5676780.70 98.75 -602302.19 5677941.80 97.50 -602302.44 5677335.32 98.75 -602302.49 5677200.15 98.75 -602302.61 5676898.98 97.50 -602302.68 5678729.54 97.30 -602302.70 5676592.74 98.75 -602302.87 5677608.54 97.50 -602303.54 5676379.38 101.25 -602304.31 5676868.14 97.25 -602304.33 5678561.22 98.75 -602304.55 5676906.95 98.75 -602304.56 5678600.73 98.75 -602304.81 5677150.50 98.75 -602304.93 5677390.27 98.75 -602305.03 5678740.40 97.50 -602305.05 5676841.94 97.50 -602305.28 5678749.71 97.50 -602305.34 5676812.77 97.50 -602305.34 5677317.71 98.75 -602305.37 5678824.99 97.50 -602305.40 5677220.54 98.75 -602305.80 5677583.92 97.50 -602306.01 5678637.52 98.75 -602306.12 5678766.25 97.50 -602306.26 5678573.71 98.75 -602306.40 5676802.96 97.50 -602306.60 5676822.49 97.50 -602306.67 5676832.20 97.50 -602306.74 5678859.65 97.50 -602307.02 5678500.79 98.75 -602307.07 5677177.24 98.75 -602307.17 5676890.24 97.50 -602307.54 5677593.26 97.25 -602307.82 5677461.71 97.50 -602307.97 5676772.87 98.75 -602308.00 5676483.59 100.00 -602308.02 5678518.11 98.75 -602308.18 5678487.28 98.75 -602308.31 5678697.72 98.75 -602308.51 5678455.64 97.50 -602308.54 5676859.21 97.25 -602308.64 5678624.01 98.75 -602308.98 5676898.03 98.75 -602309.08 5678735.53 97.30 -602309.15 5678710.07 97.50 -602309.35 5678833.15 97.50 -602309.35 5678756.30 97.50 -602309.42 5676548.51 98.75 -602309.47 5678587.14 98.75 -602309.50 5678722.49 97.30 -602309.54 5678627.45 97.50 -602310.00 5677947.97 97.50 -602310.31 5678152.18 97.50 -602310.46 5678772.88 97.50 -602310.57 5678808.20 97.50 -602310.62 5677194.38 98.75 -602310.67 5676794.23 97.50 -602310.82 5676763.84 98.75 -602311.00 5676587.23 98.75 -602311.04 5676753.88 98.75 -602311.08 5677603.24 97.50 -602311.21 5677409.99 97.50 -602311.49 5678166.53 97.50 -602311.62 5678595.54 98.75 -602311.95 5678817.78 97.50 -602311.97 5676881.62 97.50 -602312.17 5677333.12 98.75 -602312.26 5676374.50 101.25 -602312.32 5677185.19 98.75 -602312.69 5676850.24 97.25 -602312.90 5677213.97 98.75 -602312.94 5678734.35 97.50 -602313.39 5676889.09 98.75 -602313.86 5678745.42 97.50 -602314.06 5678563.25 98.75 -602314.22 5677386.64 98.75 -602314.22 5677147.23 98.75 -602314.50 5678579.19 98.75 -602314.58 5678800.37 97.50 -602314.64 5676872.11 97.50 -602314.69 5677579.75 97.50 -602314.74 5676476.32 100.00 -602315.01 5677315.42 98.75 -602315.02 5676744.74 98.75 -602315.43 5678762.67 97.50 -602315.55 5677587.54 97.25 -602315.63 5678634.98 98.75 -602316.00 5678503.72 98.75 -602316.08 5678728.65 97.30 -602316.55 5678860.41 97.50 -602316.80 5676811.87 97.25 -602316.85 5676841.27 97.25 -602316.92 5678519.65 98.75 -602317.11 5678716.68 97.30 -602317.32 5677458.78 97.50 -602317.36 5676579.74 98.75 -602317.57 5678490.28 98.75 -602317.66 5678694.33 98.75 -602317.80 5676880.16 98.75 -602317.81 5677954.15 97.50 -602317.82 5676821.70 97.25 -602318.10 5676862.88 97.50 -602318.19 5676831.53 97.25 -602318.19 5678453.27 97.50 -602318.30 5676790.11 97.50 -602318.60 5678623.82 98.75 -602318.61 5678753.40 97.50 -602318.64 5676735.47 98.75 -602318.67 5676551.51 98.75 -602318.70 5678707.24 97.50 -602318.95 5677597.38 97.50 -602319.06 5678833.76 97.50 -602319.39 5678626.31 97.50 -602320.06 5678770.30 97.50 -602320.10 5678150.12 97.50 -602320.27 5677207.25 98.75 -602320.65 5676369.07 101.25 -602320.87 5678728.32 97.50 -602320.94 5676570.78 98.75 -602321.02 5677408.39 97.50 -602321.41 5678165.31 97.50 -602321.88 5678720.76 97.30 -602321.90 5677330.90 98.75 -602321.96 5676560.86 98.75 -602322.01 5676726.09 98.75 -602322.12 5678585.56 98.75 -602322.18 5676470.11 100.00 -602322.35 5677141.59 98.75 -602322.46 5678794.32 97.50 -602322.48 5676854.09 97.50 -602322.70 5676871.48 98.75 -602322.85 5678741.77 97.50 -602322.92 5678549.70 98.75 -602323.23 5678566.97 98.75 -602323.36 5678541.93 98.75 -602323.39 5676798.52 97.50 -602323.56 5677575.54 97.50 -602323.79 5677383.97 98.75 -602323.99 5677582.47 97.25 -602324.35 5678508.04 98.75 -602324.79 5678524.88 98.75 -602324.81 5677313.56 98.75 -602324.98 5678819.75 97.50 -602325.24 5678632.45 98.75 -602325.30 5678761.38 97.50 -602325.50 5678856.29 97.50 -602325.63 5677960.33 97.50 -602326.10 5678495.29 98.75 -602326.24 5678826.84 97.50 -602326.41 5677590.99 97.50 -602327.04 5678691.02 98.75 -602327.07 5677456.72 97.50 -602327.16 5676717.83 98.75 -602327.43 5676807.52 97.50 -602327.59 5677200.47 98.75 -602327.60 5676862.81 98.75 -602327.63 5676845.70 97.50 -602327.66 5678749.92 97.50 -602327.90 5678451.03 97.50 -602328.08 5678621.37 98.75 -602328.10 5678043.35 97.50 -602328.23 5678704.37 97.50 -602328.50 5678833.11 97.50 -602328.67 5676363.14 101.25 -602329.11 5678722.74 97.50 -602329.33 5678625.50 97.50 -602329.55 5678767.33 97.50 -602329.60 5676817.14 97.50 -602329.88 5678148.04 97.50 -602330.10 5678788.00 97.50 -602330.21 5677135.47 98.75 -602330.57 5678580.48 99.10 -602330.61 5676836.29 97.50 -602330.71 5677406.08 97.50 -602330.78 5678590.39 98.75 -602331.24 5678163.62 97.50 -602331.52 5678514.17 98.75 -602331.59 5676466.71 100.00 -602331.61 5677328.64 98.75 -602331.69 5676826.79 97.50 -602331.85 5678551.70 98.75 -602331.85 5678738.16 97.50 -602332.12 5678571.39 98.75 -602332.36 5677571.18 97.50 -602332.51 5678530.33 98.75 -602332.53 5677577.58 97.25 -602332.57 5676854.17 98.75 -602332.78 5678539.82 98.75 -602333.10 5678814.00 97.50 -602333.27 5676798.85 98.75 -602333.41 5677966.54 97.50 -602333.57 5677382.00 98.75 -602333.73 5676788.89 98.75 -602334.00 5677584.77 97.50 -602334.13 5678851.52 97.50 -602334.19 5676710.77 98.75 -602334.19 5676778.94 98.75 -602334.43 5676768.98 98.75 -602334.44 5676759.02 98.75 -602334.46 5678628.77 98.75 -602334.46 5676749.06 98.75 -602334.61 5677311.72 98.75 -602334.90 5678499.48 98.75 -602334.91 5677193.69 98.75 -602335.17 5678760.06 97.50 -602335.77 5678741.43 97.25 -602336.17 5676356.53 101.25 -602336.30 5678687.43 98.75 -602336.56 5678780.49 97.50 -602336.66 5678048.49 97.50 -602336.67 5678746.34 97.50 -602336.79 5677454.57 97.50 -602337.07 5676808.03 98.75 -602337.30 5678617.57 98.75 -602337.41 5678700.53 97.50 -602337.71 5678717.72 97.50 -602337.72 5678521.26 98.75 -602337.84 5678450.17 97.50 -602338.07 5677129.35 98.75 -602338.13 5676845.91 98.75 -602338.18 5676740.17 98.75 -602338.75 5678622.28 97.50 -602338.99 5678764.18 97.50 -602339.62 5678145.81 97.50 -602340.24 5678529.93 98.75 -602340.34 5678592.98 98.75 -602340.40 5677403.78 97.50 -602340.57 5677973.46 97.50 -602340.84 5678160.80 97.50 -602340.92 5678734.71 97.50 -602340.94 5676463.20 100.00 -602340.95 5677566.43 97.50 -602340.96 5677572.50 97.25 -602340.96 5676817.21 98.75 -602341.08 5678575.68 98.75 -602341.19 5676703.73 98.75 -602341.23 5678808.28 97.50 -602341.28 5677326.22 98.75 -602341.45 5676827.12 98.75 -602341.50 5678552.34 98.75 -602341.75 5676837.08 98.75 -602341.80 5677578.81 97.50 -602341.95 5677186.62 98.75 -602342.36 5678538.44 98.75 -602343.25 5677379.74 98.75 -602343.26 5678847.82 97.50 -602343.50 5676731.74 98.75 -602343.55 5678624.76 98.75 -602343.88 5678739.14 97.25 -602344.25 5676350.65 101.25 -602344.34 5677121.64 98.75 -602344.44 5677310.05 98.75 -602344.70 5678775.66 97.50 -602344.75 5678498.48 98.75 -602344.77 5678488.54 98.75 -602344.87 5678757.75 97.50 -602344.90 5678054.09 97.50 -602345.31 5678683.23 98.75 -602345.69 5678742.78 97.50 -602345.79 5678711.94 97.50 -602346.03 5676695.02 98.75 -602346.39 5677451.94 97.50 -602346.50 5678696.45 97.50 -602346.73 5678614.37 98.75 -602346.93 5678545.24 99.00 -602347.73 5677980.38 97.50 -602347.77 5678449.31 97.50 -602347.89 5678618.39 97.50 -602348.39 5676685.43 98.75 -602348.55 5678761.49 97.50 -602348.82 5676723.32 98.75 -602348.98 5677179.55 98.75 -602349.01 5676342.35 101.25 -602349.29 5678729.99 97.50 -602349.31 5677567.29 97.25 -602349.37 5677572.56 97.50 -602349.39 5678143.82 97.50 -602349.54 5677561.68 97.50 -602349.77 5677321.59 98.75 -602349.82 5678803.42 97.50 -602349.99 5677401.12 97.50 -602350.00 5678580.00 98.75 -602350.09 5678593.98 98.75 -602350.15 5676675.62 98.75 -602350.22 5676459.47 100.00 -602350.34 5678481.45 98.75 -602350.42 5678157.94 97.50 -602350.44 5677113.76 98.75 -602350.70 5678555.33 98.75 -602351.00 5678734.81 97.25 -602351.92 5678539.15 98.75 -602352.02 5676665.84 98.75 -602352.31 5677375.55 98.75 -602352.45 5678620.39 98.75 -602352.86 5678060.12 97.50 -602352.94 5678846.13 97.50 -602353.39 5677313.23 98.75 -602353.78 5678705.99 97.50 -602354.13 5676714.89 98.75 -602354.36 5678773.28 97.50 -602354.36 5678679.11 98.75 -602354.58 5678755.44 97.50 -602354.79 5678739.40 97.50 -602355.25 5676656.42 98.75 -602355.30 5678691.85 97.50 -602355.53 5676334.94 101.25 -602355.71 5678610.36 98.75 -602355.71 5678587.55 98.75 -602355.91 5677986.04 97.50 -602356.00 5677449.31 97.50 -602356.02 5677172.48 98.75 -602356.39 5678613.18 97.50 -602356.54 5677105.89 98.75 -602357.06 5678724.19 97.50 -602357.70 5677567.40 97.50 -602357.71 5678448.45 97.50 -602357.76 5677556.35 97.50 -602357.78 5677562.28 97.25 -602357.86 5678729.93 97.25 -602358.22 5678759.19 97.50 -602358.47 5676646.99 98.75 -602358.69 5678146.08 97.50 -602359.11 5678799.90 97.50 -602359.37 5676455.45 100.00 -602359.45 5676706.47 98.75 -602359.47 5678553.31 98.75 -602359.56 5677398.36 97.50 -602359.78 5678481.41 98.75 -602359.84 5678543.95 98.75 -602359.90 5678154.78 97.50 -602360.57 5678614.65 98.75 -602361.36 5677371.35 98.75 -602361.44 5678065.02 97.50 -602361.49 5678767.73 97.50 -602362.18 5678788.24 97.50 -602362.18 5678733.28 97.50 -602362.20 5678848.90 97.50 -602362.54 5677097.93 98.75 -602362.77 5677165.14 98.75 -602362.96 5676328.26 101.25 -602363.09 5676638.30 98.75 -602363.21 5678702.83 97.50 -602363.52 5678604.18 98.75 -602363.54 5678675.28 98.75 -602363.65 5678686.44 97.50 -602363.87 5678724.04 97.25 -602364.18 5677991.60 97.50 -602364.30 5678717.75 97.50 -602364.31 5678607.17 97.50 -602364.48 5678754.32 97.50 -602364.77 5676698.04 98.75 -602365.60 5677446.68 97.50 -602365.61 5677550.45 97.50 -602365.84 5678813.72 97.50 -602366.56 5678793.83 97.50 -602366.56 5677557.83 97.25 -602366.94 5677564.38 97.50 -602367.64 5678447.59 97.50 -602368.22 5676688.98 98.75 -602368.50 5676451.40 100.00 -602368.52 5677089.96 98.75 -602368.61 5678780.66 97.50 -602368.68 5678608.90 98.75 -602368.70 5678726.12 97.50 -602369.05 5678484.95 98.75 -602369.07 5676630.33 98.75 -602369.09 5676679.06 98.75 -602369.13 5677395.61 97.50 -602369.33 5677157.63 98.75 -602369.42 5678805.36 97.50 -602369.75 5678718.02 97.25 -602369.97 5676669.13 98.75 -602370.41 5677367.16 98.75 -602370.44 5678597.04 98.75 -602370.71 5678696.30 97.50 -602370.80 5678068.49 97.50 -602370.84 5676322.25 101.25 -602371.07 5678816.94 97.50 -602371.37 5678711.11 97.50 -602372.11 5678601.01 97.50 -602372.26 5678681.43 97.50 -602372.44 5677997.15 97.50 -602372.57 5678671.19 98.75 -602372.67 5676659.64 98.75 -602374.40 5678753.38 97.50 -602374.49 5677081.99 98.75 -602374.75 5677547.48 97.50 -602375.04 5678718.77 97.50 -602375.04 5676622.35 98.75 -602375.21 5677444.05 97.50 -602375.55 5678773.58 97.50 -602375.62 5677554.14 97.25 -602375.89 5677150.11 98.75 -602376.28 5676650.35 98.75 -602376.43 5677561.87 97.50 -602377.08 5678589.61 98.75 -602377.11 5678806.68 97.25 -602377.14 5678800.88 97.50 -602377.40 5678604.13 98.75 -602377.61 5678447.82 97.50 -602377.89 5678489.55 98.75 -602377.93 5678689.45 97.50 -602377.97 5676448.18 100.00 -602378.33 5678704.36 97.50 -602378.62 5677392.57 97.50 -602378.75 5678512.66 98.75 -602378.88 5678812.22 97.50 -602379.57 5677363.23 98.75 -602379.90 5676641.07 98.75 -602380.01 5678521.13 98.75 -602380.16 5678071.95 97.50 -602380.19 5678003.32 97.50 -602380.40 5676319.31 101.25 -602380.45 5677074.00 98.75 -602380.72 5678595.98 97.50 -602380.83 5678676.39 97.50 -602381.04 5678665.98 98.75 -602381.59 5678711.62 97.50 -602381.62 5676614.88 98.75 -602382.34 5677142.50 98.75 -602383.14 5678528.70 98.75 -602383.36 5678767.43 97.50 -602384.29 5678551.58 98.75 -602384.36 5678753.23 97.50 -602384.40 5677545.65 97.50 -602384.66 5678509.40 98.75 -602384.74 5677441.16 97.50 -602385.12 5678697.44 97.50 -602385.16 5678583.89 98.75 -602385.20 5677551.87 97.25 -602385.67 5678797.59 97.50 -602385.70 5678521.58 99.00 -602385.76 5678683.29 97.50 -602385.82 5677559.03 97.50 -602386.11 5678559.23 98.75 -602386.31 5677065.95 98.75 -602386.38 5678599.99 98.75 -602386.43 5678494.68 98.75 -602386.45 5676633.68 98.75 -602386.46 5678807.28 97.50 -602386.68 5678728.29 97.50 -602387.07 5678010.52 97.50 -602387.43 5676444.96 100.00 -602387.58 5678448.07 97.50 -602388.07 5677389.46 97.50 -602388.15 5678704.47 97.50 -602388.50 5676607.68 98.75 -602388.77 5677134.88 98.75 -602388.94 5677359.80 98.75 -602389.18 5678660.28 98.75 -602389.22 5678671.87 97.50 -602389.50 5678075.47 97.50 -602389.61 5678719.70 97.50 -602389.62 5678591.58 97.50 -602390.11 5676317.29 101.25 -602390.48 5678529.79 98.75 -602390.71 5678515.43 98.75 -602391.51 5678761.75 97.50 -602391.99 5678558.58 99.00 -602392.09 5678550.33 98.75 -602392.10 5678690.70 97.50 -602392.18 5677057.89 98.75 -602392.51 5678564.94 98.75 -602393.04 5678676.60 97.50 -602393.11 5676437.93 100.00 -602393.45 5676626.59 98.75 -602393.78 5678793.33 97.50 -602393.97 5677543.47 97.50 -602394.03 5678751.10 97.50 -602394.10 5678017.57 97.50 -602394.27 5677438.27 97.50 -602394.43 5678803.00 97.50 -602394.48 5678523.06 98.75 -602394.53 5678500.43 98.75 -602394.68 5677549.27 97.25 -602394.78 5678581.30 98.75 -602394.96 5678735.11 98.75 -602395.05 5677555.67 97.50 -602395.06 5678697.67 97.50 -602395.20 5677127.25 98.75 -602395.24 5678725.14 97.50 -602395.64 5678712.42 97.50 -602395.82 5676600.92 98.75 -602396.01 5678597.49 98.75 -602396.39 5676428.48 100.00 -602396.49 5678719.09 97.25 -602397.20 5678654.41 98.75 -602397.46 5678449.37 97.50 -602397.49 5677049.48 98.75 -602397.94 5677388.89 97.50 -602398.62 5678555.65 98.75 -602398.73 5677358.03 98.75 -602398.83 5678079.04 97.50 -602399.07 5678588.39 97.50 -602399.30 5678684.21 97.50 -602399.86 5678756.34 97.50 -602400.09 5676316.98 101.25 -602400.19 5678796.50 97.50 -602400.26 5678563.62 98.75 -602400.44 5676619.50 98.75 -602400.71 5678508.06 98.75 -602401.17 5678738.38 98.75 -602401.28 5676419.79 100.00 -602401.55 5678024.18 97.50 -602401.63 5678728.76 98.75 -602401.78 5678714.68 97.25 -602402.27 5678691.19 97.50 -602402.35 5677040.78 98.75 -602402.48 5678706.01 97.50 -602402.53 5677120.54 98.75 -602402.90 5678746.53 97.50 -602402.91 5678719.59 97.50 -602403.13 5676594.15 98.75 -602403.38 5677540.69 97.50 -602403.80 5677435.39 97.50 -602403.99 5677546.06 97.25 -602404.18 5678578.00 98.75 -602404.67 5677553.74 97.50 -602405.09 5678648.36 98.75 -602405.62 5678516.73 98.75 -602405.92 5678596.88 98.75 -602406.44 5676411.23 100.00 -602407.02 5678678.36 97.50 -602407.07 5678710.28 97.25 -602407.21 5677032.09 98.75 -602407.35 5678450.71 97.50 -602407.90 5677388.89 97.50 -602407.93 5678750.53 97.50 -602408.07 5676613.09 98.75 -602408.26 5678082.32 97.50 -602408.35 5678584.88 97.50 -602408.59 5677356.52 98.75 -602409.01 5678030.78 97.50 -602409.68 5676586.67 98.75 -602409.93 5676318.76 101.25 -602410.11 5678723.60 98.75 -602410.30 5678734.64 98.75 -602410.30 5677114.29 98.75 -602410.38 5678685.89 97.50 -602410.59 5678714.06 97.50 -602410.60 5678701.15 97.50 -602410.86 5678525.21 98.75 -602411.38 5678741.39 97.50 -602412.05 5677023.38 98.75 -602412.23 5677536.55 97.50 -602413.30 5677542.85 97.25 -602413.33 5677432.50 97.50 -602413.39 5678574.37 98.75 -602413.52 5677549.74 97.50 -602414.17 5678645.16 98.75 -602414.60 5676405.55 100.00 -602415.34 5678673.44 97.50 -602415.70 5676606.68 98.75 -602415.86 5678596.55 98.75 -602416.00 5678744.71 97.50 -602416.03 5676578.98 98.75 -602416.20 5678706.43 97.50 -602416.31 5678037.53 97.50 -602416.58 5678579.25 97.50 -602416.71 5677014.57 98.75 -602417.23 5678452.06 97.50 -602417.76 5678085.37 97.50 -602417.83 5677389.27 97.50 -602418.08 5677108.04 98.75 -602418.24 5678717.92 98.75 -602418.36 5677354.51 98.75 -602418.59 5678530.91 98.75 -602418.68 5678681.16 97.50 -602418.93 5678734.88 97.50 -602419.11 5678730.02 98.75 -602419.66 5676320.87 101.25 -602419.75 5678698.74 97.50 -602420.04 5678660.57 98.75 -602420.27 5678650.63 98.75 -602420.60 5678567.48 98.75 -602420.85 5677531.85 97.50 -602421.37 5677005.76 98.75 -602421.75 5676570.91 98.75 -602421.90 5677544.69 97.50 -602422.46 5677428.51 97.50 -602422.62 5676599.63 98.75 -602422.95 5676400.06 100.00 -602423.03 5678044.89 97.50 -602423.23 5678673.09 97.50 -602423.87 5678572.44 97.50 -602423.94 5678738.74 97.50 -602425.01 5678710.64 98.75 -602425.40 5678722.44 98.75 -602425.65 5678559.21 98.75 -602425.80 5678596.39 98.75 -602425.83 5676561.83 98.75 -602426.02 5676996.95 98.75 -602426.16 5677102.21 98.75 -602426.45 5678728.33 97.50 -602426.46 5677536.64 97.50 -602427.11 5678453.41 97.50 -602427.28 5677391.94 97.50 -602427.49 5678087.59 97.50 -602428.10 5677352.36 98.75 -602428.28 5676591.43 98.75 -602428.33 5678532.60 98.75 -602428.76 5676325.01 101.25 -602428.95 5678660.11 98.75 -602428.99 5678549.82 98.75 -602429.08 5678780.89 97.50 -602429.43 5678052.49 97.50 -602429.92 5676552.74 98.75 -602430.20 5678678.75 98.75 -602430.52 5678702.44 98.75 -602430.68 5676988.15 98.75 -602431.12 5678565.60 97.50 -602431.27 5678540.12 98.75 -602431.33 5678732.09 97.50 -602431.56 5677424.46 97.50 -602431.83 5678714.86 98.75 -602432.69 5676399.03 100.00 -602433.92 5678721.72 97.50 -602433.94 5676583.23 98.75 -602433.95 5678080.00 97.50 -602434.38 5677096.55 98.75 -602434.44 5676543.88 98.75 -602434.96 5678773.58 97.50 -602435.02 5678670.12 98.75 -602435.07 5678060.70 97.50 -602435.36 5678070.60 97.50 -602435.74 5678596.39 98.75 -602435.76 5677397.11 97.50 -602435.78 5678783.82 97.50 -602436.19 5678686.51 98.75 -602436.48 5678694.49 98.75 -602436.91 5678455.17 97.50 -602436.95 5676980.52 98.75 -602437.69 5676329.46 101.25 -602437.73 5677349.84 98.75 -602437.92 5678655.83 98.75 -602438.34 5678558.72 97.50 -602438.38 5676574.32 98.75 -602438.53 5678812.38 97.50 -602438.73 5678725.44 97.50 -602438.86 5678707.93 98.75 -602439.76 5676535.46 98.75 -602440.05 5677419.37 97.50 -602441.38 5678715.11 97.50 -602441.44 5678804.79 97.50 -602442.61 5676565.31 98.75 -602442.64 5677090.97 98.75 -602442.68 5676399.00 100.00 -602443.00 5678767.73 97.50 -602443.26 5678664.55 98.75 -602443.32 5677403.59 97.50 -602443.93 5676973.40 98.75 -602445.05 5678780.22 97.50 -602445.08 5676527.03 98.75 -602445.43 5677411.47 97.50 -602445.66 5678596.59 98.75 -602445.95 5676335.09 101.25 -602445.97 5678718.63 97.50 -602446.31 5678656.14 98.75 -602446.72 5678456.77 97.50 -602446.80 5678553.63 97.50 -602446.85 5676556.29 98.75 -602447.07 5677346.35 98.75 -602447.32 5678702.71 98.75 -602447.67 5678811.60 97.50 -602447.94 5678797.67 97.50 -602449.31 5678709.06 97.50 -602450.44 5676518.64 98.75 -602450.91 5676966.29 98.75 -602451.12 5678762.07 97.50 -602451.78 5677086.99 98.75 -602451.88 5676547.75 98.75 -602452.68 5676399.23 100.00 -602453.06 5678711.65 97.50 -602453.39 5678789.51 97.50 -602453.65 5678775.30 97.50 -602454.48 5677804.80 97.75 -602454.67 5676339.96 101.25 -602454.70 5678600.44 98.75 -602454.87 5678696.28 98.75 -602455.08 5677814.75 97.75 -602455.97 5676510.35 98.75 -602456.15 5678633.76 99.25 -602456.39 5677824.63 97.75 -602456.42 5677342.86 98.75 -602456.58 5678554.38 97.50 -602456.65 5678456.84 97.50 -602456.88 5678807.95 97.50 -602456.96 5677795.18 97.75 -602457.24 5678703.01 97.50 -602457.86 5676539.78 98.75 -602457.88 5676959.18 98.75 -602458.19 5677834.42 97.75 -602460.19 5678758.00 97.50 -602460.28 5678704.82 97.50 -602460.93 5677083.00 98.75 -602460.98 5678783.10 97.50 -602461.49 5676502.06 98.75 -602462.16 5677786.67 97.75 -602462.52 5678813.68 97.50 -602462.56 5678690.00 98.75 -602462.62 5676400.17 100.00 -602462.90 5678772.49 97.50 -602463.00 5678605.92 98.75 -602463.01 5677812.29 97.80 -602463.55 5676344.54 101.25 -602463.59 5677840.91 97.75 -602463.83 5676531.80 98.75 -602464.27 5678819.75 97.50 -602464.69 5678696.41 97.50 -602465.12 5676952.33 98.75 -602465.28 5678802.67 97.50 -602465.40 5678647.13 97.50 -602465.84 5677339.59 98.75 -602466.31 5678454.38 97.50 -602466.51 5678553.56 97.50 -602467.40 5677785.78 97.75 -602467.41 5676494.07 98.75 -602467.95 5678698.49 97.50 -602468.22 5678776.36 97.50 -602468.80 5678753.03 97.50 -602469.27 5677833.97 97.75 -602470.01 5677078.89 98.75 -602470.06 5676524.03 98.75 -602470.21 5678640.69 97.50 -602470.58 5677794.84 97.75 -602470.69 5678808.45 97.50 -602470.70 5678684.30 98.75 -602471.69 5678651.70 97.50 -602471.75 5677824.33 97.75 -602471.82 5678689.44 97.50 -602472.04 5677804.70 97.75 -602472.37 5676402.27 100.00 -602472.43 5676945.56 98.75 -602472.47 5678607.21 98.75 -602472.63 5676348.72 101.25 -602473.29 5678796.81 97.50 -602473.40 5677814.57 97.75 -602473.91 5678817.47 97.50 -602474.18 5676486.76 98.75 -602475.27 5677336.33 98.75 -602475.61 5678692.15 97.50 -602475.76 5678550.02 97.50 -602475.85 5678451.48 97.50 -602476.27 5678461.39 97.50 -602476.32 5676516.28 98.75 -602476.73 5678747.05 97.50 -602477.75 5678677.31 98.75 -602478.95 5678682.46 97.50 -602479.00 5678641.07 97.50 -602479.00 5677074.55 98.75 -602479.23 5678803.39 97.50 -602479.62 5678646.92 97.25 -602479.79 5676938.85 98.75 -602480.38 5678653.23 97.50 -602480.54 5678790.00 97.50 -602481.17 5678469.41 97.50 -602481.68 5676480.85 98.75 -602481.77 5676352.78 101.25 -602481.96 5676405.08 100.00 -602482.40 5678606.77 98.75 -602482.58 5676508.52 98.75 -602483.20 5678814.10 97.50 -602483.27 5678685.81 97.50 -602484.44 5678740.77 97.50 -602484.60 5678670.11 98.75 -602484.69 5677333.06 98.75 -602484.74 5678545.71 97.50 -602485.24 5678460.40 97.50 -602485.30 5678449.29 97.50 -602486.20 5678675.62 97.50 -602487.53 5678797.90 97.50 -602487.60 5676932.67 98.75 -602487.70 5678642.51 97.50 -602487.87 5676500.28 98.75 -602487.94 5678783.36 97.50 -602487.98 5677070.21 98.75 -602488.93 5678653.82 97.50 -602489.33 5678475.14 97.50 -602490.43 5676490.65 98.75 -602490.49 5676481.03 98.75 -602490.64 5678679.13 97.50 -602491.08 5676356.41 101.25 -602491.56 5676407.87 100.00 -602492.01 5678663.50 98.75 -602492.03 5678734.34 97.50 -602492.05 5678809.56 97.50 -602492.32 5678606.09 98.75 -602493.12 5677327.85 98.75 -602493.63 5678541.18 97.50 -602493.78 5678669.14 97.50 -602494.09 5678752.75 97.50 -602494.38 5678647.59 97.50 -602494.58 5678463.69 97.50 -602495.16 5678450.50 97.50 -602495.41 5676926.48 98.75 -602495.89 5678792.52 97.50 -602497.08 5677066.14 98.75 -602497.16 5678481.31 97.50 -602497.18 5678780.96 97.50 -602497.79 5677226.60 98.75 -602498.01 5678672.45 97.50 -602498.17 5677365.16 97.50 -602498.19 5677235.50 98.75 -602499.47 5678727.75 97.50 -602499.70 5678657.20 98.75 -602499.91 5678755.80 97.50 -602500.37 5678745.49 97.50 -602500.72 5676359.06 101.25 -602500.87 5678804.96 97.50 -602501.10 5677371.51 97.50 -602501.27 5677322.09 98.75 -602501.36 5678662.67 97.50 -602501.52 5676408.74 100.00 -602501.60 5677217.70 98.75 -602502.24 5678605.41 98.75 -602502.77 5678469.37 97.50 -602502.95 5678785.77 97.50 -602503.22 5676920.30 98.75 -602503.55 5678540.36 97.50 -602503.75 5678455.27 97.50 -602503.78 5678488.72 97.50 -602504.60 5678693.88 97.50 -602505.41 5678665.80 97.50 -602505.77 5677236.48 98.75 -602505.85 5677208.98 98.75 -602506.32 5677062.38 98.75 -602506.51 5677221.42 98.50 -602506.66 5677361.41 97.50 -602506.80 5678738.36 97.50 -602507.39 5678650.90 98.75 -602507.61 5678722.35 97.50 -602508.96 5678656.21 97.50 -602509.10 5678753.21 97.50 -602509.26 5677316.13 98.75 -602509.81 5678496.65 97.50 -602510.04 5678801.14 97.50 -602510.21 5677372.28 97.50 -602510.30 5677200.37 98.75 -602510.34 5678697.19 97.50 -602510.36 5676361.71 101.25 -602510.44 5677214.56 98.50 -602511.47 5676409.69 100.00 -602511.77 5678473.17 97.50 -602511.83 5678687.48 97.50 -602511.90 5676915.42 98.75 -602511.95 5678460.96 97.50 -602512.09 5678827.38 97.50 -602512.09 5678604.09 98.75 -602512.29 5677229.30 98.75 -602512.97 5678659.35 97.50 -602513.27 5678538.74 97.50 -602513.80 5678731.93 97.50 -602514.37 5677207.69 98.50 -602515.09 5678644.60 98.75 -602515.49 5677357.71 97.50 -602515.54 5678504.81 97.50 -602515.56 5677058.61 98.75 -602515.67 5677192.29 98.75 -602515.99 5677220.33 98.75 -602516.75 5678649.98 97.50 -602516.83 5678718.64 97.50 -602517.10 5677309.96 98.75 -602517.69 5678748.92 97.50 -602518.26 5678691.62 97.50 -602518.30 5677200.83 98.50 -602519.17 5678802.69 97.50 -602519.23 5678820.46 97.50 -602519.41 5677369.67 97.50 -602519.41 5678681.08 97.50 -602519.70 5677211.36 98.75 -602520.10 5678478.52 97.50 -602520.16 5676363.54 101.25 -602520.41 5678466.21 97.50 -602520.46 5678737.59 97.75 -602520.54 5678652.90 97.50 -602520.66 5676910.68 98.75 -602521.38 5676411.05 100.00 -602521.90 5678602.47 98.75 -602522.06 5678512.32 97.50 -602522.31 5678534.53 97.50 -602522.53 5677185.51 98.75 -602522.57 5678728.01 97.50 -602522.57 5678811.35 97.50 -602523.46 5678639.25 98.75 -602523.46 5677202.43 98.75 -602523.77 5677352.84 97.50 -602524.54 5678643.75 97.50 -602524.79 5677054.84 98.75 -602524.94 5677303.79 98.75 -602525.26 5678684.57 97.50 -602526.24 5678744.55 97.50 -602526.27 5678715.53 97.50 -602526.64 5678674.25 97.50 -602527.05 5678485.51 97.50 -602527.82 5677193.76 98.75 -602528.04 5677365.46 97.50 -602528.20 5676917.04 98.75 -602528.27 5678520.09 97.50 -602528.96 5676905.14 98.75 -602528.98 5678647.67 97.50 -602529.13 5678471.05 97.50 -602530.13 5676363.43 101.25 -602530.38 5677185.17 98.75 -602530.61 5678529.11 97.50 -602530.86 5677356.06 97.25 -602530.98 5678750.18 97.50 -602531.29 5676412.38 100.00 -602531.46 5677347.10 97.50 -602531.54 5678724.62 97.50 -602531.77 5678602.03 98.75 -602531.94 5678634.07 98.75 -602532.29 5678756.69 97.50 -602532.83 5678678.13 97.50 -602533.06 5677298.04 98.75 -602533.21 5678638.88 97.50 -602533.67 5677050.29 98.75 -602533.85 5678667.39 97.50 -602534.60 5678491.81 97.50 -602534.96 5678740.55 97.50 -602535.70 5676923.61 98.75 -602536.07 5678713.83 97.50 -602536.62 5677361.13 97.50 -602537.25 5676899.60 98.75 -602537.49 5678782.66 97.50 -602537.56 5678642.65 97.50 -602537.81 5678792.42 97.50 -602537.95 5678475.70 97.50 -602538.25 5677350.74 97.25 -602539.06 5677341.23 97.50 -602540.12 5676362.95 101.25 -602540.30 5678720.73 97.50 -602540.30 5678671.55 97.50 -602540.37 5678748.39 97.50 -602540.42 5678628.88 98.75 -602541.02 5678660.50 97.50 -602541.25 5676413.23 100.00 -602541.66 5677292.98 98.75 -602541.69 5678602.73 98.75 -602541.91 5677044.85 98.75 -602542.05 5678634.28 97.50 -602542.20 5678755.65 97.50 -602543.11 5676930.30 98.75 -602543.17 5678496.84 97.50 -602543.20 5678735.70 97.50 -602543.74 5678774.97 97.50 -602544.97 5677356.37 97.50 -602545.55 5676894.06 98.75 -602545.64 5677345.43 97.25 -602545.69 5678711.35 97.50 -602545.74 5678794.69 97.50 -602546.04 5678637.44 97.50 -602546.07 5678481.48 97.50 -602546.82 5677335.56 97.50 -602547.70 5678664.92 97.50 -602547.93 5678653.35 97.50 -602548.54 5678715.90 97.50 -602548.83 5678743.11 97.50 -602549.07 5678623.97 98.75 -602549.12 5677563.91 97.50 -602549.12 5677037.96 98.75 -602549.89 5676361.10 101.25 -602549.94 5678767.16 97.50 -602550.26 5677287.93 98.75 -602550.28 5678686.74 97.50 -602550.51 5676936.98 98.75 -602550.65 5678629.24 97.50 -602551.09 5676414.57 100.00 -602551.14 5678730.31 97.50 -602551.62 5678603.17 98.75 -602552.10 5678754.98 97.50 -602552.13 5678696.17 97.50 -602552.52 5678500.30 97.50 -602553.03 5677340.12 97.25 -602553.07 5677351.24 97.50 -602553.30 5677554.98 97.50 -602553.76 5678705.64 97.50 -602554.51 5678632.23 97.50 -602554.57 5677329.88 97.50 -602554.57 5678486.57 97.50 -602554.69 5676890.62 98.75 -602554.85 5678646.20 97.50 -602554.86 5678790.99 97.50 -602555.11 5678658.28 97.50 -602555.20 5676401.52 101.25 -602555.21 5677567.55 97.50 -602555.92 5676945.28 98.75 -602556.49 5678722.43 97.50 -602556.66 5677031.43 98.75 -602556.96 5677004.02 98.75 -602557.19 5678679.59 97.50 -602557.20 5678713.19 97.50 -602557.53 5676994.06 98.75 -602557.75 5678619.13 98.75 -602557.87 5678739.11 97.50 -602558.03 5677013.85 98.75 -602558.09 5676984.10 98.75 -602558.48 5677546.45 97.50 -602558.66 5676974.14 98.75 -602558.86 5678762.75 97.50 -602559.11 5678623.96 97.50 -602559.18 5676964.18 98.75 -602559.27 5677283.80 98.75 -602559.56 5676358.58 101.25 -602559.62 5676419.57 100.00 -602559.69 5676954.22 98.75 -602560.15 5677023.59 98.75 -602560.42 5677334.80 97.25 -602560.81 5677345.54 97.50 -602561.10 5678725.84 97.50 -602561.20 5678604.52 98.75 -602561.53 5678638.84 97.50 -602561.69 5678752.30 97.50 -602561.88 5676919.07 98.75 -602562.13 5678502.91 97.50 -602562.22 5678651.33 97.50 -602562.31 5677324.20 97.50 -602562.45 5677560.97 97.50 -602562.55 5678626.41 97.50 -602562.65 5676909.13 98.75 -602562.80 5676407.56 101.25 -602563.10 5676928.90 98.75 -602563.42 5676899.18 98.75 -602563.51 5678786.04 97.50 -602563.58 5678716.45 97.50 -602563.67 5678490.64 97.50 -602563.94 5678697.91 97.50 -602564.19 5676889.24 98.75 -602564.20 5677538.33 97.50 -602564.30 5678688.99 97.50 -602565.02 5676938.69 98.75 -602565.34 5678612.94 98.75 -602565.51 5678674.15 97.50 -602566.30 5678707.04 97.50 -602566.52 5676948.53 98.75 -602566.63 5676958.50 98.75 -602566.75 5676968.48 98.75 -602566.87 5676978.45 98.75 -602567.00 5676426.31 100.00 -602567.29 5678735.89 97.50 -602567.31 5678618.29 97.50 -602567.46 5677552.33 97.50 -602567.48 5676988.40 98.75 -602567.81 5678758.37 97.50 -602567.82 5677329.49 97.25 -602568.11 5677339.32 97.50 -602568.25 5676998.35 98.75 -602568.42 5678726.55 97.50 -602568.43 5678631.72 97.50 -602568.82 5677280.91 98.75 -602569.01 5677008.29 98.75 -602569.20 5678644.25 97.50 -602569.26 5676356.15 101.25 -602569.63 5678497.38 97.50 -602570.22 5677018.19 98.75 -602570.33 5677530.49 97.50 -602570.47 5678620.40 97.50 -602570.56 5677319.26 97.50 -602570.86 5676412.88 101.25 -602571.26 5678751.23 97.50 -602571.49 5677539.96 97.25 -602571.56 5677028.08 98.75 -602571.99 5678780.94 97.50 -602572.42 5678683.86 97.50 -602573.00 5677037.95 98.75 -602573.32 5676433.94 100.00 -602573.99 5677544.81 97.50 -602574.47 5678669.99 97.50 -602575.21 5677521.80 97.50 -602575.21 5677332.84 97.50 -602575.27 5677047.66 98.75 -602575.51 5678612.61 97.50 -602576.28 5678637.27 97.50 -602576.41 5678625.78 97.50 -602576.48 5678732.00 97.50 -602576.49 5677532.91 97.25 -602576.99 5678722.11 97.50 -602577.53 5677057.38 98.75 -602578.26 5676442.63 100.00 -602578.36 5677278.03 98.75 -602578.51 5678614.54 97.50 -602578.79 5677316.48 97.50 -602578.90 5676418.17 101.25 -602579.02 5676354.13 101.25 -602579.90 5677067.07 98.75 -602580.25 5677324.77 97.50 -602580.41 5677537.18 97.50 -602580.43 5677513.32 97.50 -602581.10 5678679.30 97.50 -602581.49 5677525.87 97.25 -602581.66 5678778.48 97.50 -602581.76 5676451.99 100.00 -602582.25 5678605.27 97.50 -602582.27 5677076.75 98.75 -602583.09 5676471.59 100.00 -602583.22 5676481.57 100.00 -602583.65 5676461.61 100.00 -602583.80 5676491.55 100.00 -602583.82 5678666.58 97.50 -602584.19 5678631.24 97.50 -602584.64 5677086.44 98.75 -602584.81 5678620.51 97.50 -602585.06 5677504.52 97.50 -602585.10 5678716.61 97.50 -602585.15 5678733.32 97.50 -602585.16 5676501.41 100.00 -602585.55 5677518.26 97.25 -602585.84 5676424.96 101.25 -602586.29 5677529.11 97.50 -602586.38 5677096.26 98.75 -602586.92 5678609.24 97.50 -602587.68 5676511.09 100.00 -602587.87 5677106.12 98.75 -602587.96 5677275.36 98.75 -602588.54 5678692.91 98.00 -602588.95 5678597.89 97.50 -602589.01 5676353.68 101.25 -602589.24 5677116.00 98.75 -602589.36 5677510.51 97.25 -602589.53 5677495.60 97.50 -602589.80 5678674.79 97.50 -602590.34 5677125.92 98.75 -602590.89 5678774.85 97.50 -602591.35 5677520.52 97.50 -602591.43 5677135.83 98.75 -602591.69 5676520.18 100.00 -602591.98 5676432.42 101.25 -602592.14 5678625.27 97.50 -602592.71 5678662.34 97.50 -602592.93 5678710.72 97.50 -602593.28 5678615.33 97.50 -602593.35 5678731.52 97.50 -602593.50 5678589.11 97.50 -602594.66 5677145.09 98.75 -602595.74 5678604.74 97.50 -602596.05 5677511.71 97.50 -602596.45 5676528.97 100.00 -602597.48 5678579.97 97.50 -602597.50 5676440.39 101.25 -602597.66 5677492.64 97.50 -602597.82 5677273.80 98.75 -602597.93 5678669.37 97.50 -602598.85 5677502.29 97.50 -602598.99 5676353.22 101.25 -602599.35 5677153.89 98.75 -602599.86 5678770.50 97.50 -602600.41 5678608.55 97.50 -602600.44 5678619.79 97.50 -602600.66 5678656.37 97.50 -602600.89 5678725.01 97.50 -602601.17 5678705.44 97.50 -602601.55 5676449.19 101.25 -602601.69 5678570.94 97.50 -602603.41 5676535.94 100.00 -602603.70 5677162.85 98.75 -602604.55 5676458.37 101.25 -602605.63 5678716.43 97.50 -602606.54 5676467.87 101.25 -602606.58 5678664.77 97.50 -602606.59 5678562.25 97.50 -602606.87 5677269.79 98.75 -602607.55 5677172.06 98.75 -602607.96 5678764.74 97.50 -602608.29 5678698.88 97.50 -602608.74 5678614.31 97.50 -602608.98 5676352.80 101.25 -602609.29 5678651.43 97.50 -602610.64 5678575.69 96.25 -602611.03 5678708.15 97.50 -602611.05 5677181.39 98.75 -602611.14 5676542.28 100.00 -602611.20 5676476.22 101.25 -602611.48 5678553.56 97.50 -602614.37 5677190.80 98.75 -602614.64 5678566.75 96.25 -602614.66 5678691.43 97.50 -602614.70 5678659.37 97.50 -602615.13 5678757.87 97.50 -602615.24 5676485.04 101.25 -602615.53 5678579.67 96.25 -602615.58 5677265.05 98.75 -602616.39 5678544.89 97.50 -602617.05 5678608.86 97.50 -602617.32 5678700.41 97.50 -602617.48 5678645.93 97.50 -602617.94 5677200.10 98.75 -602618.98 5676352.80 101.25 -602620.90 5678559.30 96.25 -602621.38 5677256.94 98.75 -602621.47 5678684.39 97.50 -602621.53 5678536.33 97.50 -602621.75 5678750.41 97.50 -602622.15 5678653.01 97.50 -602622.20 5677209.13 98.75 -602623.74 5678692.78 97.50 -602624.21 5676487.01 101.25 -602624.31 5678575.20 96.25 -602624.44 5678638.83 97.50 -602625.07 5677218.58 98.75 -602625.34 5677248.04 98.75 -602625.44 5678603.51 97.50 -602626.18 5678527.53 97.50 -602626.75 5677228.42 98.75 -602627.20 5677238.24 98.75 -602628.30 5678677.36 97.50 -602628.90 5678743.47 97.50 -602628.98 5676352.80 101.25 -602629.08 5678646.08 97.50 -602629.29 5678554.43 96.25 -602630.27 5678685.25 97.50 -602630.52 5678518.55 97.50 -602631.17 5678631.51 97.50 -602632.72 5676482.43 101.25 -602632.97 5678570.53 96.25 -602633.53 5678561.46 96.00 -602634.06 5678669.47 97.50 -602634.43 5678599.88 97.50 -602634.62 5678509.46 97.50 -602635.92 5678641.43 97.50 -602636.25 5678736.73 97.50 -602636.60 5678660.16 97.50 -602636.80 5678677.71 97.50 -602637.34 5678623.76 97.50 -602637.37 5678650.43 97.50 -602638.39 5678550.67 96.25 -602638.72 5678500.37 97.50 -602638.86 5676354.14 101.25 -602640.42 5676476.54 101.25 -602641.41 5678558.78 96.00 -602641.58 5678565.77 96.25 -602641.78 5678669.24 97.50 -602642.34 5678615.16 97.50 -602642.96 5678491.35 97.50 -602643.28 5678729.70 97.50 -602644.31 5678598.73 97.50 -602645.42 5678659.95 97.50 -602646.87 5678545.86 96.25 -602646.99 5678606.37 97.50 -602647.97 5676470.44 101.25 -602647.98 5678482.73 97.50 -602648.35 5678554.46 96.00 -602648.43 5676356.74 101.25 -602648.69 5678650.53 97.50 -602649.21 5678721.68 97.50 -602650.62 5678561.85 96.25 -602651.96 5678641.11 97.50 -602652.91 5678474.08 97.50 -602654.12 5678539.19 96.25 -602654.66 5678549.03 96.00 -602655.32 5678713.81 97.50 -602655.82 5678464.54 97.50 -602656.02 5678632.07 97.50 -602657.55 5676360.83 101.25 -602658.50 5678556.06 96.25 -602660.96 5678543.59 96.00 -602661.26 5678623.58 97.50 -602661.33 5678456.64 97.50 -602661.49 5678705.98 97.50 -602661.94 5678533.23 96.25 -602665.74 5678471.45 97.50 -602666.05 5678549.72 96.25 -602666.27 5678481.09 97.50 -602666.50 5678615.10 97.50 -602667.02 5678461.58 97.50 -602667.40 5678697.94 97.50 -602670.18 5678527.84 96.25 -602671.86 5678606.69 97.50 -602673.06 5678689.74 97.50 -602673.65 5678543.46 96.25 -602673.78 5678480.68 97.50 -602677.03 5678498.01 97.50 -602677.91 5678598.77 97.50 -602677.95 5678471.62 97.50 -602678.17 5678681.18 97.50 -602678.44 5678526.89 96.25 -602678.82 5678506.16 97.50 -602679.38 5678535.91 96.25 -602680.09 5678489.73 97.50 -602681.98 5678462.50 97.50 -602682.36 5678672.13 97.50 -602683.11 5678495.27 97.75 -602683.68 5678481.59 97.50 -602683.96 5678590.84 97.50 -602685.16 5678560.98 96.25 -602685.26 5678504.01 97.50 -602685.32 5678453.11 97.50 -602685.64 5678551.53 96.25 -602686.68 5678663.14 97.50 -602687.95 5678495.54 97.50 -602688.44 5678474.08 97.50 -602688.71 5678582.12 97.50 -602688.95 5678542.25 96.25 -602689.22 5678443.93 97.50 -602690.08 5678486.91 97.50 -602690.41 5678550.89 96.00 -602691.26 5678478.09 97.50 -602691.55 5678654.45 97.50 -602692.98 5678573.11 97.50 -602693.74 5678435.12 97.50 -602694.19 5678559.95 96.25 -602694.85 5678540.28 96.25 -602695.19 5678550.13 96.25 -602696.11 5678645.59 97.50 -602697.24 5678564.09 97.50 -602699.46 5678554.50 97.50 -602699.84 5678636.34 97.50 -602700.02 5678484.83 97.50 -602700.24 5678474.86 97.50 -602700.42 5678494.79 97.50 -602700.46 5678464.89 97.50 -602700.59 5678544.59 97.50 -602700.99 5678504.75 97.50 -602701.05 5678454.94 97.50 -602701.08 5678534.63 97.50 -602701.47 5678524.67 97.50 -602701.56 5678514.70 97.50 -602701.67 5678444.99 97.50 -602701.77 5678435.03 97.50 -602703.58 5678627.10 97.50 -602704.63 5678598.34 97.50 -602709.01 5678589.38 97.50 -602710.10 5678620.21 97.50 -602714.75 5678581.28 97.50 -602718.30 5678614.57 97.50 -602718.96 5678572.27 97.50 -602721.23 5678562.57 97.50 -602722.20 5678605.68 97.50 -602722.32 5678595.76 97.50 -602724.00 5678553.02 97.50 -602725.19 5678586.21 97.50 -602728.06 5678576.66 97.50 -602729.37 5678545.10 97.50 -602732.37 5678567.67 97.50 -602734.22 5678548.32 97.50 -602734.75 5678558.12 97.50 +593424.65 5685133.29 120.00 +593433.18 5685138.47 120.00 +593435.34 5685000.20 125.00 +593441.71 5685143.64 120.00 +593444.21 5685004.79 125.00 +593450.56 5685147.55 120.00 +593452.71 5684302.35 125.00 +593453.08 5685009.38 125.00 +593453.50 5684139.67 120.00 +593454.13 5684111.96 120.00 +593455.46 5683573.53 120.00 +593460.14 5684309.02 125.00 +593460.51 5685146.87 120.00 +593461.48 5684145.53 120.00 +593461.94 5685013.98 125.00 +593463.19 5684107.92 120.00 +593464.89 5683570.46 120.00 +593468.86 5684313.54 125.00 +593469.47 5684151.40 120.00 +593470.25 5685144.95 120.00 +593470.67 5685018.80 125.00 +593472.14 5684103.67 120.00 +593474.31 5683567.39 120.00 +593477.29 5684157.46 120.00 +593478.33 5684316.68 125.00 +593478.73 5685024.69 125.00 +593479.78 5684097.81 120.00 +593479.85 5685142.21 120.00 +593483.78 5683564.84 120.00 +593484.73 5684163.99 120.00 +593485.35 5684089.61 120.00 +593486.95 5685030.30 125.00 +593487.99 5684319.19 125.00 +593488.41 5684080.24 120.00 +593489.41 5685139.34 120.00 +593491.12 5684070.70 120.00 +593492.18 5684170.53 120.00 +593492.82 5684060.95 120.00 +593493.58 5683566.38 120.00 +593494.32 5684051.15 120.00 +593496.21 5685034.05 125.00 +593497.46 5684041.89 120.00 +593497.76 5684321.29 125.00 +593498.90 5685136.26 120.00 +593499.62 5684177.06 120.00 +593502.31 5684033.26 120.00 +593503.37 5683567.91 120.00 +593504.05 5683789.02 120.00 +593504.13 5683798.94 120.00 +593504.56 5683779.19 120.00 +593505.17 5683808.71 120.00 +593505.46 5685037.80 125.00 +593505.94 5684184.64 120.00 +593507.38 5684323.88 125.00 +593507.39 5683769.69 120.00 +593507.90 5683818.24 120.00 +593508.00 5684025.14 120.00 +593508.07 5685139.16 120.00 +593510.90 5683827.66 120.00 +593511.84 5683761.00 120.00 +593511.88 5684192.56 120.00 +593512.51 5684016.48 120.00 +593512.94 5683570.49 120.00 +593514.85 5684006.85 120.00 +593515.35 5685038.17 125.00 +593515.39 5685144.95 120.00 +593515.74 5683836.31 120.00 +593516.82 5684327.14 125.00 +593517.18 5683997.21 120.00 +593517.67 5684200.59 120.00 +593517.76 5683753.05 120.00 +593518.56 5683987.40 120.00 +593519.06 5685154.23 120.00 +593519.88 5683977.57 120.00 +593520.58 5683844.97 120.00 +593521.69 5683967.86 120.00 +593522.41 5684209.28 120.00 +593522.47 5683573.20 120.00 +593523.21 5685163.30 120.00 +593523.68 5683745.09 120.00 +593524.71 5680997.31 108.75 +593524.78 5683958.43 120.00 +593525.33 5685038.02 125.00 +593525.42 5683853.62 120.00 +593525.54 5681066.59 106.25 +593525.69 5681126.51 105.00 +593525.75 5684331.46 125.00 +593525.75 5681029.20 107.50 +593527.00 5680573.93 120.00 +593527.15 5684217.98 120.00 +593527.86 5683949.01 120.00 +593527.87 5685172.07 120.00 +593527.98 5680931.58 111.25 +593528.32 5680858.27 113.75 +593528.98 5680961.79 110.00 +593530.25 5683862.28 120.00 +593530.36 5683737.79 120.00 +593530.94 5683939.59 120.00 +593531.16 5680889.02 112.50 +593531.57 5680774.11 116.25 +593531.88 5684226.68 120.00 +593532.01 5683575.92 120.00 +593532.28 5680820.45 115.00 +593532.59 5683929.82 120.00 +593533.37 5681120.15 105.00 +593534.10 5684336.93 125.00 +593534.11 5683871.30 120.00 +593534.16 5680994.07 108.75 +593534.19 5683920.03 120.00 +593534.27 5685179.73 120.00 +593534.30 5685033.70 125.00 +593534.51 5681062.22 106.25 +593534.56 5681024.49 107.50 +593535.31 5680661.78 117.50 +593535.47 5680442.43 123.75 +593535.80 5683910.25 120.00 +593536.02 5680604.55 118.75 +593536.16 5683881.00 120.00 +593536.22 5680253.91 126.25 +593536.41 5680570.65 120.00 +593536.68 5680765.52 116.25 +593536.83 5684235.24 120.00 +593536.85 5680368.70 125.00 +593537.31 5680928.18 111.25 +593537.32 5683730.73 120.00 +593537.40 5683900.46 120.00 +593537.77 5680535.72 121.25 +593538.21 5683890.70 120.00 +593538.30 5680857.67 113.75 +593538.34 5680958.29 110.00 +593538.75 5680505.65 122.50 +593540.07 5680652.99 117.50 +593540.67 5685187.39 120.00 +593540.75 5680886.44 112.50 +593540.84 5680815.37 115.00 +593541.30 5680756.67 116.25 +593541.56 5683578.23 120.00 +593541.74 5680599.67 118.75 +593541.83 5684343.22 125.00 +593541.83 5681115.32 105.00 +593543.10 5684242.91 120.00 +593543.36 5681019.79 107.50 +593543.36 5680990.19 108.75 +593543.49 5681057.84 106.25 +593543.79 5685031.13 125.00 +593543.92 5680447.68 123.75 +593544.10 5680259.88 126.25 +593544.37 5680375.21 125.00 +593544.77 5683724.19 120.00 +593544.84 5680644.21 117.50 +593545.27 5680747.49 116.25 +593545.81 5680567.36 120.00 +593546.77 5680925.17 111.25 +593547.46 5680594.78 118.75 +593547.49 5685194.67 120.00 +593547.69 5680954.79 110.00 +593547.69 5680536.43 121.25 +593547.74 5680854.94 113.75 +593547.76 5680808.28 115.00 +593548.56 5680507.28 122.50 +593548.93 5684350.23 125.00 +593549.19 5680738.30 116.25 +593549.62 5684250.28 120.00 +593550.13 5680635.76 117.50 +593550.34 5680883.85 112.50 +593551.31 5683576.40 120.00 +593551.55 5681113.40 105.00 +593551.90 5680381.72 125.00 +593551.98 5680265.85 126.25 +593552.22 5683717.64 120.00 +593552.38 5680452.93 123.75 +593552.42 5681015.71 107.50 +593552.51 5680986.17 108.75 +593552.58 5681053.81 106.25 +593553.04 5680729.07 116.25 +593553.71 5685030.05 125.00 +593554.38 5685201.89 120.00 +593554.47 5680800.93 115.00 +593554.84 5680588.16 118.75 +593555.22 5680564.08 120.00 +593555.86 5680627.57 117.50 +593556.04 5684357.25 125.00 +593556.33 5680922.50 111.25 +593556.78 5680850.68 113.75 +593556.89 5680719.84 116.25 +593557.04 5680951.30 110.00 +593557.62 5680537.14 121.25 +593558.37 5684254.91 120.00 +593558.38 5680508.91 122.50 +593558.75 5680272.77 126.25 +593559.42 5680388.23 125.00 +593559.60 5680880.26 112.50 +593559.85 5683711.33 120.00 +593560.74 5680710.62 116.25 +593560.79 5680793.27 115.00 +593561.05 5683574.56 120.00 +593561.20 5680457.34 123.75 +593561.28 5685209.10 120.00 +593561.52 5681113.63 105.00 +593561.65 5680982.14 108.75 +593561.96 5681012.77 107.50 +593562.23 5680619.90 117.50 +593562.24 5681051.29 106.25 +593562.33 5680581.76 118.75 +593563.15 5684364.26 125.00 +593563.46 5680281.46 126.25 +593563.64 5685028.97 125.00 +593564.64 5680560.84 120.00 +593564.88 5680701.52 116.25 +593565.65 5680846.09 113.75 +593565.87 5680919.71 111.25 +593566.07 5685217.80 120.00 +593566.40 5680947.80 110.00 +593566.62 5680785.21 115.00 +593567.13 5684259.54 120.00 +593567.31 5680394.25 125.00 +593567.55 5680537.84 121.25 +593567.67 5683705.22 120.00 +593567.76 5685266.33 120.00 +593567.88 5685276.31 120.00 +593568.19 5680510.35 122.50 +593568.42 5685256.43 120.00 +593568.82 5680876.56 112.50 +593569.35 5680289.20 126.25 +593569.55 5680692.68 116.25 +593569.66 5685227.00 120.00 +593569.70 5680613.45 117.50 +593570.29 5685285.73 120.00 +593570.53 5685246.68 120.00 +593570.57 5681117.67 105.00 +593570.81 5680459.92 123.75 +593570.83 5683574.72 120.00 +593571.14 5685236.87 120.00 +593571.30 5684369.98 125.00 +593571.31 5680979.85 108.75 +593571.50 5681009.83 107.50 +593571.93 5685033.48 125.00 +593572.00 5681049.23 106.25 +593572.10 5680580.03 118.75 +593572.46 5680777.15 115.00 +593574.08 5680557.65 120.00 +593574.17 5680840.86 113.75 +593574.22 5680683.85 116.25 +593574.81 5685294.63 120.00 +593575.36 5680916.79 111.25 +593575.48 5683699.12 120.00 +593575.62 5680399.71 125.00 +593575.75 5680944.30 110.00 +593575.88 5684264.17 120.00 +593576.83 5680295.66 126.25 +593577.40 5680537.57 121.25 +593577.74 5680768.75 115.00 +593577.74 5680872.37 112.50 +593577.91 5685041.21 125.00 +593578.05 5680509.01 122.50 +593578.41 5680608.56 117.50 +593579.55 5681122.00 105.00 +593579.66 5684375.44 125.00 +593579.75 5685303.30 120.00 +593579.88 5685050.80 125.00 +593580.00 5683577.84 120.00 +593580.25 5680676.00 116.25 +593580.42 5680462.51 123.75 +593580.44 5685060.77 125.00 +593581.01 5685070.74 125.00 +593581.07 5681007.00 107.50 +593581.16 5680978.16 108.75 +593581.88 5680578.38 118.75 +593581.88 5681047.82 106.25 +593581.98 5685341.47 120.00 +593582.23 5680759.87 115.00 +593582.44 5680835.32 113.75 +593583.00 5685312.70 120.00 +593583.30 5683693.02 120.00 +593583.52 5680554.46 120.00 +593583.71 5685080.31 125.00 +593583.93 5680405.18 125.00 +593583.99 5684269.83 120.00 +593584.32 5680302.12 126.25 +593584.62 5685331.85 120.00 +593584.85 5680913.86 111.25 +593585.24 5680941.20 110.00 +593585.34 5680865.97 112.50 +593585.82 5679242.41 125.00 +593585.94 5685322.24 120.00 +593586.72 5680750.99 115.00 +593586.75 5685089.82 125.00 +593586.86 5685350.02 120.00 +593586.93 5680603.35 117.50 +593587.07 5680535.21 121.25 +593587.26 5680668.87 116.25 +593587.91 5680507.67 122.50 +593588.18 5683583.39 120.00 +593588.41 5684380.09 125.00 +593588.45 5681126.49 105.00 +593589.04 5680084.31 126.25 +593589.25 5680828.02 113.75 +593589.73 5680074.45 126.25 +593590.01 5680093.94 126.25 +593590.17 5680464.42 123.75 +593590.44 5680064.59 126.25 +593590.50 5683686.32 120.00 +593590.66 5681004.21 107.50 +593590.83 5680975.72 108.75 +593590.83 5680741.94 115.00 +593591.43 5680308.98 126.25 +593591.61 5679250.50 125.00 +593591.69 5680576.98 118.75 +593591.76 5681046.40 106.25 +593591.93 5684275.75 120.00 +593592.29 5680054.88 126.25 +593592.42 5680410.09 125.00 +593592.60 5685097.47 125.00 +593592.92 5680859.55 112.50 +593593.09 5683592.00 120.00 +593593.12 5680551.81 120.00 +593593.39 5680103.23 126.25 +593593.69 5685356.90 120.00 +593594.13 5680045.17 126.25 +593594.18 5680910.49 111.25 +593594.27 5680661.74 116.25 +593594.62 5680732.74 115.00 +593594.79 5680938.30 110.00 +593594.98 5680819.83 113.75 +593595.88 5680035.44 126.25 +593596.22 5680600.59 117.50 +593596.44 5683678.38 120.00 +593596.74 5680532.85 121.25 +593596.78 5680112.52 126.25 +593597.17 5683600.94 120.00 +593597.44 5681130.74 105.00 +593597.48 5680505.28 122.50 +593597.53 5680025.69 126.25 +593597.91 5684383.15 125.00 +593598.31 5679257.75 125.00 +593598.44 5680315.95 126.25 +593598.46 5680723.57 115.00 +593599.18 5680015.95 126.25 +593599.45 5683610.59 120.00 +593599.88 5684281.66 120.00 +593599.91 5680121.89 126.25 +593600.02 5680465.60 123.75 +593600.17 5685103.98 125.00 +593600.23 5681001.39 107.50 +593600.36 5680972.73 108.75 +593600.45 5683669.64 120.00 +593600.51 5680853.13 112.50 +593600.72 5680811.64 113.75 +593600.89 5683620.37 120.00 +593600.95 5681042.54 106.25 +593601.06 5680006.24 126.25 +593601.51 5680575.59 118.75 +593601.67 5683630.25 120.00 +593601.91 5683659.83 120.00 +593602.27 5685361.99 120.00 +593602.36 5680410.32 125.00 +593602.45 5683640.14 120.00 +593602.78 5680549.38 120.00 +593602.97 5680131.29 126.25 +593603.08 5680657.11 116.25 +593603.11 5679996.57 126.25 +593603.23 5683650.02 120.00 +593603.33 5680906.63 111.25 +593603.44 5680714.95 115.00 +593604.35 5680935.39 110.00 +593605.15 5679986.90 126.25 +593605.45 5680322.92 126.25 +593605.86 5679264.23 125.00 +593606.04 5680529.37 121.25 +593606.18 5680599.81 117.50 +593606.45 5680803.45 113.75 +593606.67 5680501.44 122.50 +593607.19 5679977.23 126.25 +593607.19 5681132.80 105.00 +593607.53 5684385.71 125.00 +593607.74 5685110.49 125.00 +593607.80 5684287.60 120.00 +593607.83 5680139.56 126.25 +593608.09 5680846.71 112.50 +593608.42 5680706.34 115.00 +593609.79 5680998.50 107.50 +593609.86 5680464.08 123.75 +593609.88 5679967.72 126.25 +593609.89 5680969.73 108.75 +593610.12 5681038.59 106.25 +593610.86 5685367.08 120.00 +593611.38 5680574.63 118.75 +593611.69 5680901.42 111.25 +593612.07 5680652.75 116.25 +593612.24 5680409.96 125.00 +593612.43 5680546.92 120.00 +593612.85 5679958.29 126.25 +593613.42 5679270.70 125.00 +593613.63 5680328.01 126.25 +593613.90 5680932.49 110.00 +593613.97 5680796.90 113.75 +593614.97 5680146.40 126.25 +593615.26 5680839.89 112.50 +593615.26 5680525.62 121.25 +593615.31 5680699.18 115.00 +593615.73 5680497.33 122.50 +593615.73 5684293.54 120.00 +593616.08 5685115.98 125.00 +593616.14 5680599.07 117.50 +593616.31 5681129.80 105.00 +593616.99 5679949.51 126.25 +593617.43 5684387.02 125.00 +593618.87 5680788.53 113.75 +593619.29 5681034.65 106.25 +593619.34 5680995.62 107.50 +593619.37 5680966.59 108.75 +593619.43 5680461.61 123.75 +593619.49 5680895.27 111.25 +593620.53 5685367.53 120.00 +593620.94 5679277.20 125.00 +593621.13 5680648.52 116.25 +593621.25 5680573.68 118.75 +593621.64 5680832.27 112.50 +593621.84 5680407.35 125.00 +593622.07 5680544.37 120.00 +593622.11 5680153.23 126.25 +593622.40 5680779.17 113.75 +593622.98 5680331.23 126.25 +593623.15 5684300.06 120.00 +593623.46 5680929.58 110.00 +593623.47 5680693.77 115.00 +593623.51 5679942.09 126.25 +593623.60 5680096.97 125.00 +593624.18 5680087.04 125.00 +593624.45 5685121.44 125.00 +593624.49 5680521.87 121.25 +593624.72 5680493.09 122.50 +593624.76 5680077.11 125.00 +593625.25 5681125.39 105.00 +593625.34 5680067.18 125.00 +593625.66 5680769.73 113.75 +593626.08 5680598.04 117.50 +593626.98 5680888.75 111.25 +593627.25 5680057.45 125.00 +593627.33 5684388.32 125.00 +593627.49 5681029.01 106.25 +593627.95 5680824.61 112.50 +593628.30 5679283.90 125.00 +593628.58 5680457.70 123.75 +593628.72 5680963.06 108.75 +593628.77 5680992.43 107.50 +593629.00 5680760.40 113.75 +593629.13 5680105.19 125.00 +593629.74 5680047.82 125.00 +593629.99 5684307.22 120.00 +593630.01 5680159.10 126.25 +593630.26 5680644.45 116.25 +593630.48 5685366.76 120.00 +593630.92 5679935.56 126.25 +593631.12 5680572.72 118.75 +593631.43 5680404.75 125.00 +593631.70 5680541.81 120.00 +593632.23 5680038.19 125.00 +593632.32 5680334.46 126.25 +593632.52 5680689.65 115.00 +593633.01 5680926.68 110.00 +593633.06 5680487.77 122.50 +593633.27 5685125.98 125.00 +593633.29 5681119.59 105.00 +593633.30 5680816.24 112.50 +593633.71 5680518.13 121.25 +593634.40 5680882.15 111.25 +593634.72 5680028.56 125.00 +593634.74 5680752.21 113.75 +593634.78 5680113.38 125.00 +593635.54 5681023.11 106.25 +593635.66 5679290.59 125.00 +593635.99 5680596.83 117.50 +593636.13 5680451.24 123.75 +593636.94 5680018.86 125.00 +593637.23 5684389.63 125.00 +593637.44 5680987.49 107.50 +593638.06 5680959.53 108.75 +593638.25 5684312.46 120.00 +593638.34 5679929.02 126.25 +593638.39 5680164.34 126.25 +593638.64 5680807.86 112.50 +593639.08 5680009.15 125.00 +593639.39 5680640.37 116.25 +593640.40 5685365.72 120.00 +593640.46 5680874.50 111.25 +593640.61 5680744.15 113.75 +593640.84 5680481.58 122.50 +593640.92 5681113.17 105.00 +593640.99 5680571.71 118.75 +593641.03 5680402.14 125.00 +593641.23 5679999.44 125.00 +593641.29 5680539.14 120.00 +593641.57 5680685.50 115.00 +593641.60 5680512.10 121.25 +593641.66 5680120.53 125.00 +593641.69 5680335.36 126.25 +593641.87 5680922.16 110.00 +593641.95 5680798.58 112.50 +593642.60 5685129.54 125.00 +593643.04 5679297.26 125.00 +593643.37 5679989.72 125.00 +593643.53 5681017.13 106.25 +593643.61 5680444.68 123.75 +593644.96 5680865.64 111.25 +593645.07 5680789.23 112.50 +593645.91 5680595.63 117.50 +593646.11 5680982.55 107.50 +593646.11 5680170.37 126.25 +593647.01 5684391.61 125.00 +593647.35 5681105.58 105.00 +593647.41 5680956.01 108.75 +593647.44 5684315.55 120.00 +593647.54 5679980.75 125.00 +593648.43 5680737.92 113.75 +593648.52 5680636.30 116.25 +593648.68 5680475.45 122.50 +593649.08 5680127.14 125.00 +593649.39 5680505.91 121.25 +593649.39 5680396.86 125.00 +593650.30 5685364.48 120.00 +593650.31 5680857.29 111.25 +593650.38 5680535.06 120.00 +593650.54 5679303.80 125.00 +593650.55 5680917.22 110.00 +593650.61 5680681.33 115.00 +593650.68 5680570.17 118.75 +593651.09 5680438.11 123.75 +593651.09 5680332.30 126.25 +593651.32 5681010.89 106.25 +593651.37 5680781.55 112.50 +593651.93 5685133.10 125.00 +593652.19 5679971.96 125.00 +593652.79 5680177.66 126.25 +593653.39 5681097.67 105.00 +593654.79 5680977.61 107.50 +593655.26 5680079.85 123.75 +593655.47 5680089.76 123.75 +593655.49 5680069.86 123.75 +593655.76 5680849.00 111.25 +593655.83 5680594.42 117.50 +593656.27 5680951.40 108.75 +593656.38 5680731.86 113.75 +593656.67 5680469.52 122.50 +593656.78 5684393.68 125.00 +593656.87 5680133.32 125.00 +593657.13 5680499.66 121.25 +593657.21 5679311.00 125.00 +593657.27 5684316.28 120.00 +593657.55 5680391.18 125.00 +593657.62 5680632.14 116.25 +593658.05 5681088.85 105.00 +593658.10 5679964.18 125.00 +593658.30 5680774.53 112.50 +593658.86 5680911.76 110.00 +593659.11 5681004.64 106.25 +593659.23 5680530.58 120.00 +593659.25 5680099.01 123.75 +593659.30 5680565.26 118.75 +593659.44 5680432.70 123.75 +593659.57 5680839.82 111.25 +593659.64 5680677.17 115.00 +593660.03 5680184.32 126.25 +593660.25 5685364.11 120.00 +593660.49 5680329.25 126.25 +593661.26 5685136.66 125.00 +593661.54 5680830.11 111.25 +593662.04 5679319.70 125.00 +593662.71 5681080.04 105.00 +593663.33 5680108.13 123.75 +593663.54 5680972.81 107.50 +593664.38 5680725.86 113.75 +593664.41 5680820.70 111.25 +593664.62 5680493.10 121.25 +593664.66 5680463.59 122.50 +593664.66 5680139.51 125.00 +593665.11 5680946.75 108.75 +593665.48 5680591.88 117.50 +593665.72 5680385.49 125.00 +593665.73 5679957.80 125.00 +593666.27 5680768.59 112.50 +593666.37 5680905.18 110.00 +593666.55 5684395.74 125.00 +593666.70 5680627.96 116.25 +593666.82 5684318.90 120.00 +593666.87 5679328.40 125.00 +593667.11 5680524.49 120.00 +593667.41 5680999.16 106.25 +593667.80 5680427.30 123.75 +593667.92 5680560.36 118.75 +593668.09 5680190.04 126.25 +593668.32 5680672.35 115.00 +593668.68 5680116.32 123.75 +593669.58 5680812.34 111.25 +593669.62 5681073.31 105.00 +593670.02 5680326.62 126.25 +593670.23 5685364.34 120.00 +593670.91 5679337.44 125.00 +593671.20 5685135.71 125.00 +593672.04 5680486.47 121.25 +593672.41 5680968.25 107.50 +593672.44 5680719.95 113.75 +593672.48 5680145.66 125.00 +593672.74 5680457.78 122.50 +593673.36 5679951.43 125.00 +593673.86 5680941.92 108.75 +593673.90 5680379.84 125.00 +593673.92 5680898.66 110.00 +593674.12 5679346.86 125.00 +593674.23 5680762.66 112.50 +593675.00 5680518.40 120.00 +593675.16 5680589.40 117.50 +593675.78 5680623.77 116.25 +593676.09 5680994.22 106.25 +593676.15 5680195.76 126.25 +593676.26 5684321.89 120.00 +593676.35 5680422.21 123.75 +593676.39 5684397.31 125.00 +593676.42 5680122.63 123.75 +593676.59 5680805.30 111.25 +593676.59 5680555.55 118.75 +593676.73 5680667.02 115.00 +593677.34 5679356.27 125.00 +593678.19 5681068.22 105.00 +593679.24 5680479.60 121.25 +593679.39 5679365.89 125.00 +593679.47 5679405.67 125.00 +593679.53 5679415.62 125.00 +593679.57 5680324.07 126.25 +593679.66 5679375.84 125.00 +593679.69 5679425.56 125.00 +593679.70 5679395.73 125.00 +593679.92 5679385.78 125.00 +593680.16 5679944.18 125.00 +593680.21 5685364.57 120.00 +593680.30 5680151.80 125.00 +593680.55 5680714.10 113.75 +593680.89 5680452.08 122.50 +593681.14 5685134.74 125.00 +593681.30 5680963.70 107.50 +593681.37 5679435.36 125.00 +593681.56 5680755.95 112.50 +593682.46 5680374.77 125.00 +593682.51 5680936.93 108.75 +593682.87 5684504.76 125.00 +593682.88 5680512.31 120.00 +593683.05 5679445.17 125.00 +593683.42 5680895.60 110.00 +593683.69 5680202.13 126.25 +593683.88 5684514.70 125.00 +593684.04 5680129.09 123.75 +593684.74 5684495.33 125.00 +593684.86 5680586.99 117.50 +593684.95 5680417.20 123.75 +593685.06 5680990.62 106.25 +593685.12 5680800.66 111.25 +593685.28 5680550.77 118.75 +593685.29 5680620.76 116.25 +593685.30 5680661.99 115.00 +593685.65 5684325.04 120.00 +593686.36 5684397.87 125.00 +593686.44 5680472.72 121.25 +593686.87 5679936.83 125.00 +593687.39 5681069.99 105.00 +593687.49 5679453.99 125.00 +593688.12 5680157.95 125.00 +593688.65 5680708.25 113.75 +593688.79 5684522.92 125.00 +593688.86 5680749.22 112.50 +593689.04 5684486.32 125.00 +593689.05 5680446.38 122.50 +593689.12 5680321.52 126.25 +593690.02 5685366.11 120.00 +593690.77 5680506.22 120.00 +593691.02 5680369.70 125.00 +593691.05 5680208.73 126.25 +593691.10 5685134.44 125.00 +593691.23 5680962.68 107.50 +593691.35 5680135.91 123.75 +593691.96 5680935.03 108.75 +593692.21 5679462.75 125.00 +593693.06 5680893.64 110.00 +593693.45 5680412.03 123.75 +593693.58 5679929.48 125.00 +593694.07 5680546.25 118.75 +593694.33 5680658.32 115.00 +593694.60 5680584.81 117.50 +593694.68 5680798.00 111.25 +593694.92 5680618.08 116.25 +593694.98 5684325.13 120.00 +593695.00 5680991.47 106.25 +593695.40 5680468.77 121.25 +593695.41 5684478.65 125.00 +593695.67 5681075.27 105.00 +593695.80 5684529.92 125.00 +593695.92 5680164.12 125.00 +593696.07 5684397.53 125.00 +593696.50 5680082.59 122.50 +593696.66 5680743.08 112.50 +593697.33 5680703.30 113.75 +593697.33 5680440.89 122.50 +593697.54 5679470.83 125.00 +593698.41 5680215.34 126.25 +593698.65 5680142.73 123.75 +593698.87 5680319.95 126.25 +593698.98 5680092.22 122.50 +593699.76 5685368.29 120.00 +593699.89 5680365.23 125.00 +593699.98 5680502.65 120.00 +593700.23 5680805.91 111.25 +593700.26 5679922.12 125.00 +593701.07 5685134.74 125.00 +593701.10 5680962.10 107.50 +593701.54 5680101.82 122.50 +593701.89 5680935.59 108.75 +593701.89 5680406.75 123.75 +593702.10 5684471.24 125.00 +593702.92 5680997.39 106.25 +593703.02 5680894.34 110.00 +593703.22 5681081.79 105.00 +593703.72 5680170.30 125.00 +593703.74 5680544.07 118.75 +593704.14 5684391.65 125.00 +593704.23 5684321.59 120.00 +593704.28 5680658.54 115.00 +593704.37 5684535.06 125.00 +593704.38 5680582.74 117.50 +593704.59 5680615.89 116.25 +593704.70 5680737.26 112.50 +593704.84 5680465.60 121.25 +593704.99 5680222.71 126.25 +593706.00 5680813.99 111.25 +593706.06 5680436.11 122.50 +593706.08 5679475.93 125.00 +593706.10 5680698.51 113.75 +593706.17 5680149.31 123.75 +593706.95 5679914.75 125.00 +593707.10 5680110.06 122.50 +593708.56 5684463.63 125.00 +593708.66 5680318.55 126.25 +593708.94 5680361.11 125.00 +593709.46 5680499.59 120.00 +593709.61 5685369.36 120.00 +593709.78 5681004.30 106.25 +593709.93 5681089.14 105.00 +593710.44 5680401.69 123.75 +593710.50 5680965.47 107.50 +593710.78 5685137.08 125.00 +593711.15 5680822.42 111.25 +593711.15 5684384.66 125.00 +593711.29 5680938.94 108.75 +593711.52 5680176.47 125.00 +593711.56 5680230.10 126.25 +593712.14 5680898.10 110.00 +593712.66 5680118.30 122.50 +593713.19 5681013.68 106.25 +593713.41 5684317.88 120.00 +593713.42 5680541.88 118.75 +593713.45 5684539.20 125.00 +593713.63 5679907.38 125.00 +593713.65 5680739.04 112.50 +593714.05 5680155.45 123.75 +593714.18 5680583.05 117.50 +593714.21 5680659.14 115.00 +593714.27 5680462.43 121.25 +593714.51 5680617.14 116.25 +593714.70 5679480.88 125.00 +593714.74 5684455.78 125.00 +593714.78 5680431.33 122.50 +593714.95 5680831.59 111.25 +593715.59 5680697.07 113.75 +593716.43 5681096.70 105.00 +593717.16 5680238.19 126.25 +593717.32 5681022.75 106.25 +593717.44 5684376.92 125.00 +593717.71 5680971.72 107.50 +593718.22 5680126.54 122.50 +593718.27 5680357.72 125.00 +593718.45 5680317.15 126.25 +593718.46 5680183.46 125.00 +593718.76 5680840.77 111.25 +593718.93 5680496.50 120.00 +593719.58 5685368.98 120.00 +593719.74 5680398.15 123.75 +593720.13 5685140.30 125.00 +593720.25 5680943.36 108.75 +593720.31 5679900.01 125.00 +593720.46 5680903.42 110.00 +593721.11 5680745.57 112.50 +593721.83 5681031.65 106.25 +593721.93 5680161.60 123.75 +593722.09 5684449.16 125.00 +593722.19 5680246.70 126.25 +593722.57 5684314.09 120.00 +593722.97 5680849.76 111.25 +593723.09 5680539.70 118.75 +593723.17 5681104.04 105.00 +593723.24 5684538.20 125.00 +593723.46 5680979.87 107.50 +593723.52 5680426.57 122.50 +593723.65 5680459.09 121.25 +593723.72 5679485.07 125.00 +593723.83 5680661.08 115.00 +593723.86 5680585.33 117.50 +593724.18 5680191.60 125.00 +593724.43 5680618.39 116.25 +593724.43 5680134.27 122.50 +593725.46 5680698.56 113.75 +593725.75 5680754.25 112.50 +593726.42 5681040.51 106.25 +593726.63 5684373.03 125.00 +593726.95 5679892.60 125.00 +593727.29 5680255.15 126.25 +593727.50 5680910.50 110.00 +593727.54 5680858.58 111.25 +593727.58 5680763.99 112.50 +593727.79 5680354.84 125.00 +593728.25 5680315.93 126.25 +593728.26 5680948.89 108.75 +593728.52 5685145.67 125.00 +593728.60 5680494.75 120.00 +593728.62 5680988.40 107.50 +593728.90 5680394.28 123.75 +593729.25 5680773.78 112.50 +593729.42 5680168.18 123.75 +593729.53 5685368.52 120.00 +593729.90 5680199.74 125.00 +593730.28 5684443.66 125.00 +593730.69 5681110.30 105.00 +593730.84 5680783.59 112.50 +593731.21 5680141.54 122.50 +593731.76 5681048.94 106.25 +593732.10 5684311.55 120.00 +593732.11 5680867.40 111.25 +593732.34 5680421.96 122.50 +593732.39 5680793.40 112.50 +593732.74 5679489.27 125.00 +593732.78 5680541.40 118.75 +593732.84 5680589.69 117.50 +593733.00 5680664.94 115.00 +593733.02 5680455.72 121.25 +593733.09 5684537.54 125.00 +593733.30 5680622.72 116.25 +593733.39 5680997.16 107.50 +593733.60 5680703.55 113.75 +593733.99 5680803.21 112.50 +593734.14 5680956.97 108.75 +593734.53 5679886.24 125.00 +593734.54 5680917.59 110.00 +593735.39 5680260.82 126.25 +593735.83 5685152.47 125.00 +593736.01 5680812.93 112.50 +593736.15 5684370.83 125.00 +593736.32 5680207.30 125.00 +593736.52 5680175.22 123.75 +593736.67 5680876.21 111.25 +593737.07 5681057.40 106.25 +593737.32 5680351.96 125.00 +593737.85 5680389.93 123.75 +593737.99 5680148.82 122.50 +593738.02 5680822.66 112.50 +593738.12 5680315.33 126.25 +593738.17 5681005.93 107.50 +593738.33 5685363.81 120.00 +593738.54 5680495.17 120.00 +593740.00 5681113.87 105.00 +593740.26 5684443.89 125.00 +593740.46 5680964.70 108.75 +593740.97 5684314.57 120.00 +593741.15 5680417.34 122.50 +593741.24 5680709.92 113.75 +593741.60 5681066.29 106.25 +593741.69 5680924.55 110.00 +593741.81 5679493.30 125.00 +593741.83 5680594.05 117.50 +593741.93 5680627.77 116.25 +593742.01 5680544.61 118.75 +593742.17 5680668.81 115.00 +593742.18 5680884.48 111.25 +593742.38 5680452.35 121.25 +593742.54 5680831.35 112.50 +593742.60 5679880.43 125.00 +593742.91 5684539.34 125.00 +593743.19 5680214.49 125.00 +593743.20 5680182.65 123.75 +593743.23 5685159.17 125.00 +593743.49 5680266.49 126.25 +593743.59 5681014.30 107.50 +593744.77 5680156.09 122.50 +593745.60 5684373.11 125.00 +593746.72 5680972.49 108.75 +593746.91 5680349.52 125.00 +593747.00 5680386.47 123.75 +593747.16 5685359.17 120.00 +593747.74 5680892.71 111.25 +593747.90 5680717.35 113.75 +593747.99 5680314.74 126.25 +593747.99 5680839.65 112.50 +593748.32 5680497.10 120.00 +593748.44 5680081.16 121.25 +593748.88 5680931.48 110.00 +593748.89 5680071.33 121.25 +593749.10 5681022.63 107.50 +593749.31 5681117.44 105.00 +593749.34 5681072.35 106.25 +593749.50 5684319.61 120.00 +593749.76 5680091.03 121.25 +593749.86 5680190.10 123.75 +593749.94 5684441.59 125.00 +593750.06 5680599.69 117.50 +593750.06 5680221.68 125.00 +593750.29 5680550.05 118.75 +593750.58 5680414.77 122.50 +593750.67 5679874.61 125.00 +593750.78 5680632.38 116.25 +593750.79 5685165.69 125.00 +593751.26 5680272.52 126.25 +593751.48 5680061.68 121.25 +593751.55 5680163.36 122.50 +593751.61 5680671.96 115.00 +593751.63 5679494.88 125.00 +593751.85 5680449.42 121.25 +593752.47 5680784.82 113.75 +593752.60 5684541.68 125.00 +593752.63 5680100.60 121.25 +593752.70 5680774.83 113.75 +593752.91 5680980.33 108.75 +593752.92 5680764.83 113.75 +593753.06 5680848.19 112.50 +593753.13 5680794.72 113.75 +593753.22 5680754.84 113.75 +593753.36 5684378.95 125.00 +593753.67 5680725.30 113.75 +593753.93 5680900.46 111.25 +593754.61 5680744.94 113.75 +593755.05 5680052.35 121.25 +593755.19 5681030.45 107.50 +593755.26 5680558.06 118.75 +593755.34 5680110.22 121.25 +593755.48 5680804.44 113.75 +593755.87 5680735.05 113.75 +593756.07 5680938.41 110.00 +593756.35 5685355.27 120.00 +593756.52 5680197.55 123.75 +593756.79 5684435.36 125.00 +593756.85 5680349.34 125.00 +593756.95 5680386.70 123.75 +593757.14 5680312.23 126.25 +593757.16 5684325.78 120.00 +593757.23 5680228.58 125.00 +593757.87 5681077.41 106.25 +593757.92 5680988.93 108.75 +593757.92 5680119.87 121.25 +593757.92 5680499.54 120.00 +593757.95 5680279.80 126.25 +593758.11 5679868.05 125.00 +593758.12 5680856.71 112.50 +593758.20 5680605.49 117.50 +593758.34 5680170.63 122.50 +593758.65 5680043.03 121.25 +593758.83 5684387.30 125.00 +593759.10 5681119.20 105.00 +593759.40 5680813.48 113.75 +593759.99 5680636.28 116.25 +593760.03 5685168.89 125.00 +593760.42 5680907.98 111.25 +593760.48 5680413.76 122.50 +593760.53 5680129.52 121.25 +593760.73 5680566.32 118.75 +593761.14 5684426.39 125.00 +593761.14 5680674.79 115.00 +593761.46 5679496.44 125.00 +593761.73 5680448.20 121.25 +593761.83 5684396.79 125.00 +593762.10 5684544.77 125.00 +593762.48 5680997.82 108.75 +593762.65 5681037.08 107.50 +593762.77 5684416.65 125.00 +593762.93 5684406.70 125.00 +593763.02 5680945.54 110.00 +593763.20 5680204.98 123.75 +593763.69 5680139.00 121.25 +593763.75 5680034.47 121.25 +593764.23 5680287.27 126.25 +593764.25 5684332.69 120.00 +593764.59 5680235.27 125.00 +593764.68 5680864.17 112.50 +593764.81 5680821.89 113.75 +593765.00 5680306.23 126.25 +593765.12 5680177.89 122.50 +593765.15 5679861.02 125.00 +593765.41 5680297.08 126.25 +593765.54 5685351.37 120.00 +593766.31 5680574.52 118.75 +593766.34 5680611.28 117.50 +593766.80 5680349.16 125.00 +593766.90 5680915.50 111.25 +593766.90 5680386.92 123.75 +593766.96 5680503.74 120.00 +593767.32 5681080.64 106.25 +593767.77 5681006.23 108.75 +593768.22 5680954.07 110.00 +593768.45 5680147.71 121.25 +593768.96 5681120.66 105.00 +593769.17 5680026.07 121.25 +593769.20 5680640.17 116.25 +593769.83 5685170.25 125.00 +593769.87 5680212.42 123.75 +593770.11 5681043.71 107.50 +593770.27 5680830.26 113.75 +593770.38 5680412.75 122.50 +593770.56 5684550.00 125.00 +593770.82 5680677.09 115.00 +593771.11 5679853.10 125.00 +593771.20 5680871.67 112.50 +593771.29 5679497.95 125.00 +593771.35 5684339.60 120.00 +593771.59 5680447.53 121.25 +593771.95 5680241.96 125.00 +593772.30 5680582.41 118.75 +593773.10 5680183.59 122.50 +593773.41 5680923.01 111.25 +593773.41 5680962.59 110.00 +593773.54 5685345.67 120.00 +593773.84 5680156.12 121.25 +593773.89 5680510.71 120.00 +593774.25 5681013.83 108.75 +593774.47 5680617.08 117.50 +593774.58 5680017.67 121.25 +593776.17 5680838.33 113.75 +593776.65 5679844.85 125.00 +593776.72 5680349.36 125.00 +593776.80 5680387.89 123.75 +593777.07 5681082.45 106.25 +593777.25 5680519.96 120.00 +593777.35 5680879.47 112.50 +593778.34 5680590.28 118.75 +593778.35 5680644.18 116.25 +593778.55 5680216.99 123.75 +593778.61 5680971.12 110.00 +593778.91 5684555.48 125.00 +593778.92 5681121.00 105.00 +593779.25 5681047.07 107.50 +593779.30 5680248.67 125.00 +593779.40 5680681.78 115.00 +593779.43 5680164.39 121.25 +593779.58 5680529.61 120.00 +593779.66 5684344.80 120.00 +593779.79 5685169.49 125.00 +593779.95 5680930.48 111.25 +593779.99 5680805.38 115.00 +593780.19 5680413.74 122.50 +593780.40 5680539.54 120.00 +593780.44 5680795.44 115.00 +593780.55 5680009.69 121.25 +593780.75 5685338.77 120.00 +593780.88 5680785.50 115.00 +593781.12 5679499.45 125.00 +593781.16 5681020.84 108.75 +593781.33 5680449.58 121.25 +593781.37 5680775.56 115.00 +593781.78 5680814.92 115.00 +593781.82 5679836.39 125.00 +593781.87 5680765.62 115.00 +593781.96 5680188.10 122.50 +593782.08 5680846.40 113.75 +593783.33 5680621.68 117.50 +593783.50 5680755.85 115.00 +593783.87 5680886.93 112.50 +593784.09 5680548.57 120.00 +593784.38 5680598.14 118.75 +593785.24 5680978.54 110.00 +593785.37 5679827.10 125.00 +593785.59 5680172.27 121.25 +593785.63 5680824.09 115.00 +593785.83 5680746.17 115.00 +593785.99 5680688.99 115.00 +593786.49 5680937.95 111.25 +593786.59 5680350.65 125.00 +593786.64 5680255.38 125.00 +593786.71 5680388.90 123.75 +593787.00 5680002.05 121.25 +593787.01 5681083.42 106.25 +593787.12 5684561.14 125.00 +593787.40 5680648.43 116.25 +593787.80 5685331.72 120.00 +593787.83 5680220.71 123.75 +593787.98 5680854.47 113.75 +593788.17 5680736.50 115.00 +593788.53 5684349.20 120.00 +593788.89 5681121.23 105.00 +593788.91 5679817.80 125.00 +593788.98 5681049.29 107.50 +593789.09 5680557.19 120.00 +593789.63 5680833.17 115.00 +593789.67 5685170.61 125.00 +593789.96 5680415.60 122.50 +593790.17 5680726.76 115.00 +593790.39 5681024.67 108.75 +593790.43 5680193.28 122.50 +593790.97 5679500.83 125.00 +593791.07 5680451.63 121.25 +593791.14 5680893.70 112.50 +593791.23 5680697.44 115.00 +593791.97 5680179.89 121.25 +593792.11 5680717.00 115.00 +593792.14 5680985.76 110.00 +593792.27 5680626.13 117.50 +593792.77 5680707.19 115.00 +593792.78 5680603.00 118.75 +593793.04 5680945.43 111.25 +593793.45 5679994.42 121.25 +593793.47 5679809.10 125.00 +593793.86 5680862.55 113.75 +593793.98 5680262.09 125.00 +593794.24 5685324.10 120.00 +593794.32 5680565.67 120.00 +593794.48 5684567.89 125.00 +593796.28 5680840.58 115.00 +593796.42 5680351.72 125.00 +593796.45 5680652.69 116.25 +593796.47 5680390.74 123.75 +593796.96 5681084.17 106.25 +593797.10 5680224.44 123.75 +593797.39 5684353.63 120.00 +593797.43 5680901.37 112.50 +593798.72 5681051.51 107.50 +593798.77 5681119.97 105.00 +593798.81 5680198.64 122.50 +593799.47 5680952.99 111.25 +593799.53 5685172.20 125.00 +593799.62 5681028.50 108.75 +593799.66 5680574.06 120.00 +593799.71 5680417.61 122.50 +593799.74 5680870.64 113.75 +593799.86 5679801.48 125.00 +593799.90 5679986.79 121.25 +593800.35 5680185.32 121.25 +593800.42 5680991.20 110.00 +593800.69 5685316.48 120.00 +593800.81 5680453.67 121.25 +593800.91 5679501.06 125.00 +593801.14 5680630.74 117.50 +593801.19 5680608.18 118.75 +593801.32 5680268.80 125.00 +593802.38 5684573.96 125.00 +593802.92 5680847.98 115.00 +593803.31 5680080.16 120.00 +593803.55 5680909.19 112.50 +593803.90 5680070.43 120.00 +593804.43 5680090.04 120.00 +593804.59 5680961.30 111.25 +593805.50 5680656.94 116.25 +593805.55 5680099.93 120.00 +593805.61 5680878.73 113.75 +593805.65 5680348.01 125.00 +593806.15 5684358.26 120.00 +593806.17 5680392.96 123.75 +593806.25 5679793.85 125.00 +593806.38 5680228.16 123.75 +593806.41 5680784.98 116.25 +593806.59 5680794.97 116.25 +593806.67 5680109.81 120.00 +593806.70 5680060.88 120.00 +593806.78 5680804.97 116.25 +593806.82 5679979.58 121.25 +593806.87 5680580.94 120.00 +593806.93 5681084.65 106.25 +593807.19 5680203.99 122.50 +593807.99 5680775.15 116.25 +593808.08 5680814.78 116.25 +593808.08 5680918.03 112.50 +593808.34 5685310.14 120.00 +593808.46 5680970.22 111.25 +593808.59 5681052.89 107.50 +593808.66 5681118.65 105.00 +593808.67 5680275.51 125.00 +593809.16 5680996.02 110.00 +593809.28 5680613.91 118.75 +593809.38 5685173.84 125.00 +593809.43 5680419.75 122.50 +593809.49 5681028.33 108.75 +593809.49 5680051.34 120.00 +593809.55 5680189.20 121.25 +593809.69 5680855.27 115.00 +593810.09 5680457.08 121.25 +593810.10 5680765.38 116.25 +593810.18 5680119.10 120.00 +593810.48 5680634.26 117.50 +593810.86 5679501.28 125.00 +593811.11 5680824.31 116.25 +593811.13 5684578.55 125.00 +593811.64 5680886.71 113.75 +593812.20 5680755.60 116.25 +593812.29 5680041.79 120.00 +593812.62 5680926.86 112.50 +593812.64 5679786.23 125.00 +593813.63 5680662.43 116.25 +593813.75 5679972.39 121.25 +593813.78 5680128.37 120.00 +593814.08 5680587.82 120.00 +593814.77 5680833.51 116.25 +593814.88 5680344.30 125.00 +593814.90 5684362.89 120.00 +593814.98 5680746.00 116.25 +593815.26 5680282.92 125.00 +593815.45 5680232.33 123.75 +593815.54 5680977.19 111.25 +593815.57 5680209.34 122.50 +593815.94 5680394.74 123.75 +593816.67 5680862.36 115.00 +593816.75 5685304.83 120.00 +593816.90 5681085.14 106.25 +593817.37 5680619.64 118.75 +593817.38 5680137.64 120.00 +593817.56 5680935.48 112.50 +593817.62 5680894.71 113.75 +593817.79 5680736.41 116.25 +593817.90 5681000.85 110.00 +593818.40 5680640.30 117.50 +593818.46 5680548.34 121.25 +593818.51 5681054.03 107.50 +593818.53 5681117.25 105.00 +593818.81 5680192.96 121.25 +593819.03 5679778.61 125.00 +593819.08 5680461.35 121.25 +593819.14 5680421.88 122.50 +593819.31 5685174.58 125.00 +593819.45 5681027.67 108.75 +593820.39 5680669.80 116.25 +593820.69 5684581.44 125.00 +593820.69 5679965.20 121.25 +593820.70 5680726.84 116.25 +593820.80 5679501.51 125.00 +593820.83 5680558.01 121.25 +593820.86 5680841.44 116.25 +593821.28 5680538.85 121.25 +593821.29 5680594.69 120.00 +593821.46 5680290.70 125.00 +593822.27 5680338.74 125.00 +593822.31 5680146.02 120.00 +593822.68 5680943.99 112.50 +593823.39 5680902.88 113.75 +593823.48 5684367.78 120.00 +593823.66 5680869.45 115.00 +593823.76 5680717.32 116.25 +593824.20 5680529.33 121.25 +593824.27 5680237.00 123.75 +593824.42 5680981.40 111.25 +593824.53 5680300.00 125.00 +593824.58 5680213.53 122.50 +593824.65 5680567.02 121.25 +593825.29 5680678.06 116.25 +593825.62 5685300.25 120.00 +593825.77 5680791.68 117.50 +593825.81 5679771.36 125.00 +593825.86 5680395.62 123.75 +593825.97 5680624.55 118.75 +593826.01 5680329.52 125.00 +593826.34 5680801.65 117.50 +593826.39 5680646.30 117.50 +593826.55 5680319.59 125.00 +593826.78 5680687.95 116.25 +593826.80 5680309.68 125.00 +593826.81 5680707.80 116.25 +593826.87 5681085.54 106.25 +593826.90 5681004.96 110.00 +593826.95 5680849.37 116.25 +593827.02 5680519.79 121.25 +593827.22 5680811.60 117.50 +593827.26 5680697.93 116.25 +593827.79 5680781.97 117.50 +593827.87 5680197.12 121.25 +593828.08 5679958.47 121.25 +593828.08 5680465.61 121.25 +593828.23 5680821.54 117.50 +593828.38 5681115.69 105.00 +593828.42 5681055.17 107.50 +593828.93 5680911.19 113.75 +593828.95 5685172.92 125.00 +593828.96 5680423.33 122.50 +593828.96 5680951.58 112.50 +593829.16 5680600.56 120.00 +593829.35 5681029.02 108.75 +593829.50 5680152.90 120.00 +593829.84 5680510.24 121.25 +593829.87 5680877.18 115.00 +593830.36 5680575.18 121.25 +593830.42 5680772.33 117.50 +593830.51 5684583.22 125.00 +593830.73 5684374.52 120.00 +593830.75 5679501.74 125.00 +593832.31 5680830.51 117.50 +593832.67 5680500.70 121.25 +593832.69 5680242.39 123.75 +593833.08 5680857.27 116.25 +593833.14 5679764.64 125.00 +593833.64 5680985.10 111.25 +593833.65 5680217.59 122.50 +593833.87 5680919.88 113.75 +593833.92 5680762.97 117.50 +593834.51 5680652.13 117.50 +593834.60 5680472.44 121.25 +593834.69 5680629.27 118.75 +593835.04 5685297.15 120.00 +593835.21 5680491.08 121.25 +593835.53 5679951.82 121.25 +593835.66 5680885.28 115.00 +593835.77 5680396.49 123.75 +593836.12 5680958.47 112.50 +593836.53 5680202.10 121.25 +593836.68 5680159.78 120.00 +593836.72 5681006.78 110.00 +593836.77 5680582.54 121.25 +593836.85 5681085.77 106.25 +593837.21 5680839.21 117.50 +593837.41 5680753.61 117.50 +593837.71 5680481.44 121.25 +593837.75 5684381.49 120.00 +593838.03 5685168.83 125.00 +593838.26 5681115.58 105.00 +593838.34 5681056.32 107.50 +593838.35 5680604.42 120.00 +593838.82 5680928.57 113.75 +593838.89 5680423.94 122.50 +593839.25 5681030.37 108.75 +593839.58 5684587.02 125.00 +593839.60 5680864.85 116.25 +593839.74 5679757.30 125.00 +593840.67 5679502.23 125.00 +593840.91 5680744.26 117.50 +593841.04 5680247.87 123.75 +593841.19 5680893.54 115.00 +593841.53 5680659.21 117.50 +593841.70 5680848.13 117.50 +593842.20 5679671.78 125.00 +593842.42 5680222.23 122.50 +593842.86 5679945.03 121.25 +593843.07 5680988.19 111.25 +593843.42 5680633.99 118.75 +593843.50 5680965.11 112.50 +593843.70 5679661.94 125.00 +593843.86 5680166.66 120.00 +593844.24 5679681.50 125.00 +593844.35 5684388.89 120.00 +593844.41 5680734.90 117.50 +593844.75 5685294.85 120.00 +593844.94 5680936.46 113.75 +593845.05 5679748.89 125.00 +593845.19 5680207.08 121.25 +593845.53 5680587.27 121.25 +593845.71 5680396.98 123.75 +593845.73 5679652.29 125.00 +593845.91 5680857.19 117.50 +593846.11 5680872.43 116.25 +593846.24 5679691.25 125.00 +593846.46 5685163.48 125.00 +593846.52 5680901.95 115.00 +593846.54 5681008.59 110.00 +593846.79 5681086.29 106.25 +593847.11 5680667.44 117.50 +593847.13 5680725.30 117.50 +593847.25 5684398.18 120.00 +593847.53 5680608.27 120.00 +593848.04 5684592.31 125.00 +593848.12 5679701.01 125.00 +593848.16 5684686.38 125.00 +593848.17 5681116.67 105.00 +593848.19 5681057.92 107.50 +593848.52 5684696.33 125.00 +593848.82 5680424.55 122.50 +593849.00 5679739.83 125.00 +593849.15 5681031.72 108.75 +593849.38 5680253.39 123.75 +593849.44 5684407.84 120.00 +593849.49 5684676.53 125.00 +593849.71 5684706.25 125.00 +593849.76 5679937.81 121.25 +593849.85 5680715.70 117.50 +593849.92 5679710.80 125.00 +593850.45 5679504.01 125.00 +593850.50 5679643.56 125.00 +593850.83 5680227.54 122.50 +593851.05 5680173.54 120.00 +593851.05 5680971.56 112.50 +593851.14 5680676.53 117.50 +593851.23 5680944.22 113.75 +593851.43 5679720.63 125.00 +593851.55 5680639.66 118.75 +593851.72 5684666.79 125.00 +593851.84 5680789.77 118.75 +593851.85 5680910.35 115.00 +593851.85 5680799.69 118.75 +593852.15 5680864.93 117.50 +593852.16 5679730.40 125.00 +593852.38 5680686.38 117.50 +593852.39 5680779.96 118.75 +593852.45 5684417.21 120.00 +593852.56 5680991.14 111.25 +593852.63 5680880.01 116.25 +593852.72 5680809.49 118.75 +593852.95 5680706.33 117.50 +593853.09 5680696.35 117.50 +593853.76 5684600.21 125.00 +593854.13 5680211.55 121.25 +593854.29 5680591.99 121.25 +593854.53 5685157.66 125.00 +593854.54 5684657.22 125.00 +593854.69 5685295.24 120.00 +593855.23 5680819.09 118.75 +593855.43 5684714.19 125.00 +593855.66 5680397.21 123.75 +593855.68 5679635.11 125.00 +593855.94 5680770.70 118.75 +593856.36 5681010.41 110.00 +593856.37 5681089.08 106.25 +593856.66 5679930.58 121.25 +593856.68 5684426.17 120.00 +593856.89 5680611.68 120.00 +593857.20 5680918.74 115.00 +593857.37 5684647.64 125.00 +593857.39 5680888.78 116.25 +593857.71 5680258.90 123.75 +593857.73 5680828.68 118.75 +593858.04 5681059.55 107.50 +593858.12 5681117.17 105.00 +593858.37 5680950.93 113.75 +593858.51 5684608.99 125.00 +593858.57 5680179.94 120.00 +593858.70 5680425.56 122.50 +593858.74 5680872.44 117.50 +593858.77 5681034.35 108.75 +593859.24 5680232.85 122.50 +593859.32 5680072.53 118.75 +593859.50 5680761.44 118.75 +593859.51 5680976.41 112.50 +593859.52 5680082.52 118.75 +593859.56 5680062.55 118.75 +593859.64 5680645.39 118.75 +593859.72 5680092.51 118.75 +593859.95 5684638.00 125.00 +593860.15 5680052.57 118.75 +593860.24 5679505.78 125.00 +593861.22 5680837.82 118.75 +593861.59 5684618.23 125.00 +593861.88 5684628.21 125.00 +593861.92 5685150.94 125.00 +593862.07 5680993.98 111.25 +593862.21 5684721.45 125.00 +593862.22 5679627.62 125.00 +593862.26 5680102.03 118.75 +593862.59 5680927.10 115.00 +593862.60 5680897.30 116.25 +593862.86 5680800.96 120.00 +593862.92 5680043.00 118.75 +593863.05 5680752.18 118.75 +593863.10 5680215.95 121.25 +593863.14 5680596.50 121.25 +593863.34 5680810.86 120.00 +593863.56 5679923.35 121.25 +593864.03 5680791.07 120.00 +593864.35 5684432.30 120.00 +593864.52 5680820.75 120.00 +593864.65 5685295.90 120.00 +593865.33 5680879.94 117.50 +593865.61 5680397.44 123.75 +593865.93 5680033.46 118.75 +593865.96 5681091.87 106.25 +593865.98 5680111.30 118.75 +593866.04 5680264.42 123.75 +593866.18 5681012.22 110.00 +593866.27 5680615.05 120.00 +593866.61 5680742.92 118.75 +593866.70 5680781.56 120.00 +593866.87 5680845.98 118.75 +593867.33 5680955.37 113.75 +593867.37 5680184.59 120.00 +593867.73 5680651.13 118.75 +593867.84 5680237.81 122.50 +593867.88 5681061.19 107.50 +593868.09 5681117.40 105.00 +593868.23 5680935.26 115.00 +593868.25 5680905.55 116.25 +593868.37 5681037.15 108.75 +593868.51 5680427.27 122.50 +593868.76 5679620.12 125.00 +593868.94 5680979.54 112.50 +593869.30 5685144.22 125.00 +593869.69 5680829.25 120.00 +593869.71 5680120.58 118.75 +593869.81 5679508.49 125.00 +593870.13 5680733.66 118.75 +593870.32 5684727.27 125.00 +593870.41 5680772.31 120.00 +593870.58 5679916.25 121.25 +593871.69 5680996.46 111.25 +593871.89 5680887.48 117.50 +593872.07 5680220.35 121.25 +593872.52 5680854.13 118.75 +593872.75 5680599.09 121.25 +593872.85 5680724.12 118.75 +593872.88 5680546.28 122.50 +593873.04 5684436.43 120.00 +593873.75 5680129.59 118.75 +593873.89 5680913.80 116.25 +593874.07 5680555.97 122.50 +593874.36 5680838.02 120.00 +593874.53 5680763.25 120.00 +593874.60 5685296.55 120.00 +593874.85 5680269.13 123.75 +593874.86 5680620.04 120.00 +593875.00 5680536.55 122.50 +593875.18 5680714.49 118.75 +593875.43 5680942.13 115.00 +593875.44 5681094.97 106.25 +593875.56 5680397.43 123.75 +593875.72 5681015.11 110.00 +593875.76 5679613.09 125.00 +593875.77 5680656.93 118.75 +593876.16 5680189.24 120.00 +593876.34 5680565.66 122.50 +593876.39 5680959.60 113.75 +593876.70 5685137.51 125.00 +593876.80 5680242.11 122.50 +593876.94 5680816.53 121.25 +593876.97 5680806.69 121.25 +593877.31 5680704.80 118.75 +593877.34 5681120.95 105.00 +593877.48 5680527.03 122.50 +593877.61 5679909.14 121.25 +593877.68 5680895.56 117.50 +593877.73 5681062.83 107.50 +593877.96 5681039.94 108.75 +593878.07 5680847.25 120.00 +593878.14 5680862.30 118.75 +593878.31 5680428.97 122.50 +593878.61 5680981.79 112.50 +593878.78 5680796.90 121.25 +593878.81 5684732.49 125.00 +593879.04 5680754.36 120.00 +593879.07 5680666.10 118.75 +593879.28 5680922.22 116.25 +593879.35 5679511.30 125.00 +593880.03 5680695.26 118.75 +593880.12 5680825.74 121.25 +593880.58 5680787.11 121.25 +593881.15 5680999.41 111.25 +593881.17 5680224.48 121.25 +593881.40 5680685.50 118.75 +593881.89 5680675.61 118.75 +593882.00 5680573.69 122.50 +593882.14 5680135.02 118.75 +593882.35 5680601.69 121.25 +593882.49 5680904.32 117.50 +593882.84 5684437.84 120.00 +593883.07 5680745.27 120.00 +593883.14 5680948.25 115.00 +593883.32 5680625.30 120.00 +593883.33 5679606.64 125.00 +593883.35 5680855.70 120.00 +593883.41 5680870.69 118.75 +593883.69 5680273.80 123.75 +593884.46 5685131.35 125.00 +593884.55 5680778.16 121.25 +593884.57 5685297.11 120.00 +593884.58 5680930.70 116.25 +593884.63 5679902.04 121.25 +593884.67 5680520.16 122.50 +593884.86 5681098.27 106.25 +593884.95 5680193.89 120.00 +593885.19 5681018.28 110.00 +593885.20 5680834.30 121.25 +593885.49 5680396.81 123.75 +593885.60 5680963.49 113.75 +593885.76 5680246.42 122.50 +593886.54 5680735.93 120.00 +593886.66 5681124.46 105.00 +593887.36 5681065.38 107.50 +593887.47 5681042.97 108.75 +593887.69 5684737.01 125.00 +593888.10 5680430.71 122.50 +593888.32 5680983.90 112.50 +593888.38 5680912.28 117.50 +593888.58 5680803.28 122.50 +593888.63 5680864.15 120.00 +593888.68 5680879.09 118.75 +593888.89 5679514.12 125.00 +593888.90 5680813.23 122.50 +593889.09 5680769.35 121.25 +593889.40 5680579.86 122.50 +593889.49 5680511.81 122.50 +593889.88 5680726.54 120.00 +593890.08 5680842.97 121.25 +593890.29 5680228.56 121.25 +593890.37 5681003.10 111.25 +593890.53 5680140.45 118.75 +593890.78 5680938.26 116.25 +593890.79 5679600.07 125.00 +593890.97 5680793.84 122.50 +593891.36 5680631.18 120.00 +593891.96 5680604.29 121.25 +593892.05 5679895.35 121.25 +593892.11 5680952.56 115.00 +593892.22 5680822.53 122.50 +593892.51 5684437.07 120.00 +593892.52 5680278.47 123.75 +593892.63 5680760.05 121.25 +593892.78 5680717.01 120.00 +593893.12 5680502.63 122.50 +593893.55 5685127.23 125.00 +593893.74 5680198.54 120.00 +593893.96 5680887.49 118.75 +593893.96 5680872.57 120.00 +593894.28 5681101.57 106.25 +593894.54 5685297.58 120.00 +593894.66 5681021.45 110.00 +593894.66 5680250.85 122.50 +593894.81 5680967.37 113.75 +593894.93 5680851.67 121.25 +593894.96 5680784.73 122.50 +593895.42 5680396.41 123.75 +593895.45 5680919.33 117.50 +593895.48 5680707.44 120.00 +593896.09 5681127.70 105.00 +593896.51 5680750.89 121.25 +593896.69 5681046.82 108.75 +593896.72 5680831.33 122.50 +593896.89 5680697.57 120.00 +593896.92 5681068.24 107.50 +593897.28 5680988.18 112.50 +593897.46 5684739.10 125.00 +593897.78 5679518.56 125.00 +593897.80 5680638.66 120.00 +593897.87 5679593.08 125.00 +593897.88 5680432.57 122.50 +593898.31 5680687.71 120.00 +593898.63 5680494.35 122.50 +593898.67 5680583.47 122.50 +593898.92 5680145.88 118.75 +593899.35 5680880.95 120.00 +593899.35 5680943.40 116.25 +593899.39 5680895.78 118.75 +593899.42 5680232.63 121.25 +593899.59 5681006.81 111.25 +593899.61 5680775.93 122.50 +593899.64 5679888.86 121.25 +593899.77 5680677.86 120.00 +593899.77 5680860.36 121.25 +593900.12 5680648.25 120.00 +593900.54 5680741.78 121.25 +593901.00 5680608.09 121.25 +593901.08 5680956.87 115.00 +593901.23 5680668.00 120.00 +593901.43 5680658.12 120.00 +593901.50 5680282.83 123.75 +593902.06 5684434.44 120.00 +593902.53 5680203.18 120.00 +593902.67 5685123.17 125.00 +593902.78 5680839.21 122.50 +593902.92 5680925.97 117.50 +593903.52 5680255.37 122.50 +593903.60 5681025.80 110.00 +593903.76 5681104.69 106.25 +593903.91 5680971.50 113.75 +593904.14 5680486.07 122.50 +593904.51 5685298.05 120.00 +593904.56 5680732.68 121.25 +593904.67 5680869.03 121.25 +593904.73 5680889.34 120.00 +593904.80 5680767.47 122.50 +593904.96 5679586.09 125.00 +593904.99 5680903.97 118.75 +593905.36 5680396.96 123.75 +593905.81 5681129.84 105.00 +593905.90 5681050.67 108.75 +593906.23 5680992.48 112.50 +593906.48 5681071.12 107.50 +593906.64 5679523.10 125.00 +593907.21 5684741.24 125.00 +593907.23 5679882.36 121.25 +593907.31 5680151.31 118.75 +593907.61 5680434.53 122.50 +593907.72 5680587.54 122.50 +593907.93 5680948.53 116.25 +593908.59 5680723.58 121.25 +593908.64 5680236.48 121.25 +593908.80 5681010.52 111.25 +593908.85 5680847.10 122.50 +593909.12 5680613.85 121.25 +593909.63 5680477.77 122.50 +593909.96 5680877.45 121.25 +593910.18 5680960.88 115.00 +593910.24 5680897.62 120.00 +593910.39 5680932.60 117.50 +593910.58 5680912.16 118.75 +593910.60 5680759.39 122.50 +593910.89 5680286.25 123.75 +593911.17 5679578.39 125.00 +593911.33 5680207.83 120.00 +593911.83 5680714.22 121.25 +593911.97 5684435.66 120.00 +593912.31 5681030.69 110.00 +593912.37 5680259.90 122.50 +593912.55 5685121.75 125.00 +593912.95 5680975.77 113.75 +593913.44 5681107.12 106.25 +593913.94 5680704.49 121.25 +593914.19 5680855.47 122.50 +593914.33 5685297.10 120.00 +593914.33 5680469.12 122.50 +593914.76 5679875.79 121.25 +593915.12 5679528.28 125.00 +593915.18 5681054.38 108.75 +593915.26 5680885.88 121.25 +593915.30 5680996.51 112.50 +593915.30 5680397.51 123.75 +593915.48 5680157.06 118.75 +593915.61 5680440.45 122.50 +593915.63 5681131.58 105.00 +593916.03 5681074.02 107.50 +593916.24 5680592.67 122.50 +593916.40 5680694.85 121.25 +593916.41 5680751.31 122.50 +593916.55 5680919.98 118.75 +593916.70 5680953.28 116.25 +593916.75 5679570.15 125.00 +593916.83 5680905.10 120.00 +593916.85 5680459.49 122.50 +593916.96 5684743.41 125.00 +593917.11 5680449.55 122.50 +593917.23 5680619.62 121.25 +593917.86 5680240.33 121.25 +593918.01 5681014.24 111.25 +593918.61 5680550.31 123.75 +593918.74 5680938.05 117.50 +593918.94 5680559.92 123.75 +593919.13 5680540.37 123.75 +593919.15 5680685.29 121.25 +593919.21 5680864.06 122.50 +593919.38 5680964.66 115.00 +593920.12 5680212.48 120.00 +593920.27 5680289.68 123.75 +593920.55 5680894.31 121.25 +593921.12 5681035.36 110.00 +593921.23 5680264.42 122.50 +593921.49 5684438.45 120.00 +593921.90 5680675.72 121.25 +593921.96 5680743.05 122.50 +593921.99 5680980.04 113.75 +593922.09 5680628.25 121.25 +593922.21 5679534.84 125.00 +593922.21 5685123.31 125.00 +593922.23 5679561.85 125.00 +593922.27 5679869.19 121.25 +593923.12 5681109.55 106.25 +593923.42 5680912.57 120.00 +593923.48 5680163.05 118.75 +593923.74 5680531.70 123.75 +593923.98 5685294.58 120.00 +593924.23 5680872.65 122.50 +593924.58 5681057.75 108.75 +593924.68 5680999.77 112.50 +593924.69 5680925.64 118.75 +593924.72 5680597.87 122.50 +593924.91 5680666.23 121.25 +593925.24 5680398.06 123.75 +593925.53 5681132.40 105.00 +593925.58 5681076.92 107.50 +593925.95 5680957.09 116.25 +593926.03 5680566.90 123.75 +593926.07 5680902.48 121.25 +593926.77 5680637.03 121.25 +593926.93 5684743.96 125.00 +593927.13 5679543.48 125.00 +593927.20 5680243.85 121.25 +593927.22 5681017.95 111.25 +593927.28 5680943.23 117.50 +593927.38 5680734.71 122.50 +593927.43 5680656.67 121.25 +593927.49 5679553.42 125.00 +593927.66 5680646.72 121.25 +593928.40 5680968.87 115.00 +593928.57 5680044.74 117.50 +593928.91 5680217.13 120.00 +593929.08 5680523.30 123.75 +593929.25 5680881.24 122.50 +593929.60 5680054.64 117.50 +593929.66 5680293.11 123.75 +593929.81 5679862.64 121.25 +593929.85 5680034.97 117.50 +593930.54 5680919.39 120.00 +593930.57 5681038.57 110.00 +593930.64 5680064.54 117.50 +593930.82 5680266.96 122.50 +593930.87 5684441.87 120.00 +593931.08 5680984.20 113.75 +593931.48 5680169.05 118.75 +593931.67 5680074.44 117.50 +593931.78 5685126.19 125.00 +593932.02 5680025.26 117.50 +593932.03 5680725.92 122.50 +593932.80 5681111.99 106.25 +593932.84 5680931.30 118.75 +593932.99 5680603.37 122.50 +593933.12 5680573.89 123.75 +593933.46 5685291.53 120.00 +593933.99 5681061.12 108.75 +593934.06 5681003.03 112.50 +593934.20 5680015.54 117.50 +593934.66 5680793.79 123.75 +593934.85 5680515.19 123.75 +593934.91 5680716.52 122.50 +593935.13 5680399.12 123.75 +593935.13 5681079.82 107.50 +593935.19 5680960.90 116.25 +593935.26 5680906.30 121.25 +593935.32 5680783.86 123.75 +593935.50 5681132.63 105.00 +593935.83 5680083.49 117.50 +593936.02 5680803.62 123.75 +593936.23 5680947.64 117.50 +593936.59 5680706.71 122.50 +593936.61 5681021.16 111.25 +593936.69 5680246.98 121.25 +593936.87 5680887.11 122.50 +593936.90 5684744.51 125.00 +593937.38 5680973.15 115.00 +593937.51 5679856.27 121.25 +593937.90 5680221.36 120.00 +593938.11 5680774.50 123.75 +593938.88 5680813.15 123.75 +593938.97 5680296.73 123.75 +593939.13 5680697.09 122.50 +593939.24 5680924.23 120.00 +593939.48 5680175.03 118.75 +593940.00 5680092.52 117.50 +593940.03 5681041.78 110.00 +593940.25 5684445.29 120.00 +593940.37 5680580.69 123.75 +593940.41 5680987.79 113.75 +593940.48 5680269.34 122.50 +593940.48 5680609.91 122.50 +593940.63 5680507.09 123.75 +593940.88 5685130.11 125.00 +593940.98 5680936.95 118.75 +593942.09 5680687.63 122.50 +593942.57 5680765.61 123.75 +593942.58 5681113.96 106.25 +593942.63 5685287.59 120.00 +593943.45 5681006.29 112.50 +593943.59 5681063.86 108.75 +593944.00 5680821.19 123.75 +593944.18 5680101.56 117.50 +593944.44 5680964.70 116.25 +593944.69 5681082.73 107.50 +593944.80 5680908.99 121.25 +593944.98 5680400.54 123.75 +593945.04 5681135.43 105.00 +593945.21 5679849.90 121.25 +593945.31 5680951.81 117.50 +593946.02 5680890.10 122.50 +593946.17 5681023.84 111.25 +593946.18 5680250.11 121.25 +593946.25 5680977.65 115.00 +593946.62 5680678.77 122.50 +593946.74 5680756.59 123.75 +593946.88 5684744.58 125.00 +593947.08 5680225.19 120.00 +593947.50 5680929.74 120.00 +593947.95 5680587.15 123.75 +593947.98 5680616.46 122.50 +593948.06 5680180.15 118.75 +593948.29 5680300.36 123.75 +593948.45 5680500.94 123.75 +593949.06 5680110.21 117.50 +593949.13 5680942.61 118.75 +593949.53 5685135.11 125.00 +593949.62 5684448.71 120.00 +593949.65 5681044.40 110.00 +593949.74 5680991.39 113.75 +593949.86 5680747.14 123.75 +593950.13 5680271.71 122.50 +593951.14 5680669.91 122.50 +593951.57 5680737.42 123.75 +593951.67 5680827.53 123.75 +593951.98 5685284.10 120.00 +593952.19 5680727.49 123.75 +593952.42 5681115.60 106.25 +593953.07 5681008.63 112.50 +593953.11 5679843.81 121.25 +593953.23 5681066.50 108.75 +593953.35 5680717.60 123.75 +593953.86 5680968.04 116.25 +593954.24 5681085.60 107.50 +593954.35 5680118.65 117.50 +593954.38 5680955.99 117.50 +593954.38 5680403.51 123.75 +593954.53 5681138.48 105.00 +593954.55 5680910.96 121.25 +593954.73 5680623.75 122.50 +593954.81 5680707.77 123.75 +593955.52 5680593.61 123.75 +593955.67 5680661.05 122.50 +593955.71 5680980.45 115.00 +593955.74 5681026.52 111.25 +593955.85 5679663.13 121.25 +593955.94 5680889.33 122.50 +593955.95 5680252.14 121.25 +593956.15 5679673.12 121.25 +593956.26 5680229.02 120.00 +593956.49 5680933.03 120.00 +593956.65 5680185.26 118.75 +593956.71 5680495.41 123.75 +593956.87 5684744.47 125.00 +593957.12 5679653.26 121.25 +593957.38 5680698.16 123.75 +593957.96 5679682.84 121.25 +593958.14 5680301.79 123.75 +593958.17 5685140.11 125.00 +593958.50 5680945.02 118.75 +593958.73 5680651.70 122.50 +593959.04 5684452.00 120.00 +593959.20 5680994.59 113.75 +593959.41 5681046.50 110.00 +593959.45 5680632.02 122.50 +593959.53 5679643.72 121.25 +593959.64 5680127.08 117.50 +593959.94 5680273.17 122.50 +593959.95 5680688.54 123.75 +593960.38 5680831.32 123.75 +593960.47 5680641.90 122.50 +593961.34 5679838.15 121.25 +593961.67 5685282.19 120.00 +593962.26 5679691.73 121.25 +593962.27 5681117.24 106.25 +593962.86 5681010.28 112.50 +593963.15 5681067.59 108.75 +593963.17 5680599.95 123.75 +593963.43 5680970.75 116.25 +593963.50 5680407.51 123.75 +593963.54 5680959.84 117.50 +593963.78 5681136.99 105.00 +593964.09 5681087.21 107.50 +593964.30 5680912.78 121.25 +593965.07 5680680.02 123.75 +593965.15 5680490.13 123.75 +593965.24 5680190.38 118.75 +593965.29 5680886.03 122.50 +593965.40 5681028.82 111.25 +593965.43 5680232.86 120.00 +593965.45 5680135.10 117.50 +593965.48 5680982.31 115.00 +593965.78 5680253.93 121.25 +593966.01 5679636.11 121.25 +593966.34 5680559.42 125.00 +593966.41 5680934.00 120.00 +593966.85 5684744.55 125.00 +593966.91 5680549.54 125.00 +593967.60 5685143.37 125.00 +593968.07 5680302.92 123.75 +593968.07 5679699.86 121.25 +593968.35 5680946.17 118.75 +593968.67 5684454.64 120.00 +593968.73 5680997.63 113.75 +593969.18 5681048.60 110.00 +593969.29 5679832.13 121.25 +593969.84 5680274.10 122.50 +593970.29 5680671.55 123.75 +593970.30 5680832.16 123.75 +593970.63 5680567.35 125.00 +593971.01 5680540.97 125.00 +593971.63 5685281.52 120.00 +593972.04 5680604.46 123.75 +593972.21 5681118.08 106.25 +593972.48 5679628.50 121.25 +593972.52 5680142.10 117.50 +593972.52 5680411.71 123.75 +593972.66 5681011.94 112.50 +593972.88 5681132.93 105.00 +593973.09 5681068.57 108.75 +593973.36 5680971.92 116.25 +593973.42 5680484.62 123.75 +593973.52 5680960.23 117.50 +593973.90 5680910.14 121.25 +593973.94 5681088.81 107.50 +593974.22 5679707.73 121.25 +593974.42 5680194.30 118.75 +593974.58 5680882.47 122.50 +593974.98 5680235.23 120.00 +593975.11 5681030.87 111.25 +593975.28 5680983.97 115.00 +593975.61 5680255.73 121.25 +593975.71 5680663.22 123.75 +593976.30 5680934.66 120.00 +593976.64 5679825.36 121.25 +593976.83 5684744.78 125.00 +593977.04 5680533.11 125.00 +593977.09 5685146.45 125.00 +593977.17 5680779.36 125.00 +593977.88 5680574.10 125.00 +593978.03 5680302.30 123.75 +593978.20 5680947.33 118.75 +593978.37 5684456.90 120.00 +593978.54 5680999.09 113.75 +593978.91 5681050.81 110.00 +593978.98 5679620.91 121.25 +593979.59 5680149.11 117.50 +593979.75 5680274.95 122.50 +593980.22 5680833.01 123.75 +593980.44 5680788.11 125.00 +593980.60 5679715.42 121.25 +593980.92 5680608.97 123.75 +593981.05 5680478.23 123.75 +593981.11 5685284.52 120.00 +593981.42 5680416.17 123.75 +593981.55 5680770.44 125.00 +593981.57 5681128.04 105.00 +593982.17 5681118.62 106.25 +593982.28 5680655.75 123.75 +593982.46 5681013.54 112.50 +593983.04 5681069.50 108.75 +593983.29 5680973.09 116.25 +593983.46 5680907.39 121.25 +593983.50 5680960.62 117.50 +593983.67 5680198.07 118.75 +593983.70 5680878.55 122.50 +593983.83 5681090.19 107.50 +593984.32 5679818.96 121.25 +593984.83 5681032.92 111.25 +593984.88 5680236.27 120.00 +593985.05 5680527.61 125.00 +593985.23 5680984.20 115.00 +593985.55 5680256.17 121.25 +593985.72 5679613.54 121.25 +593985.85 5680761.49 125.00 +593985.99 5680932.33 120.00 +593986.05 5680579.38 125.00 +593986.67 5680156.11 117.50 +593986.82 5684745.00 125.00 +593986.89 5685147.30 125.00 +593986.93 5679723.15 121.25 +593988.00 5680301.53 123.75 +593988.08 5680947.67 118.75 +593988.23 5684458.45 120.00 +593988.48 5681053.66 110.00 +593988.52 5680999.55 113.75 +593988.78 5680648.21 123.75 +593988.81 5680472.00 123.75 +593989.09 5680792.15 125.00 +593989.68 5680275.31 122.50 +593989.79 5680613.48 123.75 +593989.85 5680830.62 123.75 +593990.05 5680752.48 125.00 +593990.23 5681123.09 105.00 +593990.31 5680420.63 123.75 +593990.56 5685287.71 120.00 +593991.95 5681118.38 106.25 +593992.01 5679812.58 121.25 +593992.23 5680873.43 122.50 +593992.29 5681014.99 112.50 +593992.46 5679606.16 121.25 +593992.74 5680742.98 125.00 +593992.78 5680903.89 121.25 +593992.93 5680201.84 118.75 +593992.99 5681070.39 108.75 +593993.20 5679730.94 121.25 +593993.25 5680973.26 116.25 +593993.47 5680960.46 117.50 +593993.74 5680163.12 117.50 +593993.75 5681091.28 107.50 +593993.80 5680522.97 125.00 +593994.08 5680021.53 116.25 +593994.20 5680733.18 125.00 +593994.51 5681035.15 111.25 +593994.62 5680031.51 116.25 +593994.77 5680237.31 120.00 +593994.81 5680723.26 125.00 +593994.94 5680464.37 123.75 +593995.01 5680640.45 123.75 +593995.07 5680011.73 116.25 +593995.18 5680984.42 115.00 +593995.26 5680582.99 125.00 +593995.35 5680041.48 116.25 +593995.55 5680256.09 121.25 +593995.70 5680930.16 120.00 +593995.83 5680621.06 123.75 +593996.24 5680630.66 123.75 +593996.61 5680713.53 125.00 +593996.67 5680051.39 116.25 +593996.68 5684745.94 125.00 +593996.86 5685146.80 125.00 +593996.92 5680428.01 123.75 +593997.94 5680002.15 116.25 +593997.96 5680300.77 123.75 +593997.99 5680947.36 118.75 +593998.05 5681056.51 110.00 +593998.09 5684460.00 120.00 +593998.16 5680796.20 125.00 +593998.51 5681000.03 113.75 +593998.88 5681118.15 105.00 +593999.19 5680060.90 116.25 +593999.46 5679738.72 121.25 +593999.47 5680828.05 123.75 +593999.47 5680704.05 125.00 +593999.52 5679599.17 121.25 +593999.62 5680275.67 122.50 +593999.62 5679806.11 121.25 +594000.07 5680455.85 123.75 +594000.21 5685288.49 120.00 +594000.55 5681113.32 106.25 +594000.81 5679992.57 116.25 +594001.15 5680869.05 122.50 +594001.51 5680436.59 123.75 +594002.03 5681016.84 112.50 +594002.10 5680168.35 117.50 +594002.10 5680900.40 121.25 +594002.19 5680205.61 118.75 +594002.27 5680446.32 123.75 +594002.59 5680518.41 125.00 +594002.94 5681071.28 108.75 +594003.23 5680972.67 116.25 +594003.40 5680959.40 117.50 +594003.59 5680695.01 125.00 +594003.67 5681092.38 107.50 +594004.02 5680587.54 125.00 +594004.10 5680069.61 116.25 +594004.17 5681037.45 111.25 +594004.66 5680238.36 120.00 +594005.12 5680984.65 115.00 +594005.54 5680256.02 121.25 +594005.66 5680929.86 120.00 +594005.73 5679746.50 121.25 +594006.22 5684748.90 125.00 +594006.83 5685146.29 125.00 +594007.06 5679799.45 121.25 +594007.54 5681113.20 105.00 +594007.62 5681059.35 110.00 +594007.64 5680945.83 118.75 +594007.90 5680299.76 123.75 +594007.94 5680797.81 125.00 +594007.95 5684461.56 120.00 +594007.98 5679593.84 121.25 +594008.48 5681000.78 113.75 +594008.73 5680686.60 125.00 +594008.99 5680825.17 123.75 +594009.02 5680078.31 116.25 +594009.15 5681108.25 106.25 +594009.56 5680276.02 122.50 +594010.06 5685286.84 120.00 +594010.24 5680865.01 122.50 +594010.42 5679755.25 121.25 +594010.95 5680172.89 117.50 +594011.42 5680896.90 121.25 +594011.43 5680513.95 125.00 +594011.63 5681019.40 112.50 +594012.11 5680206.16 118.75 +594012.41 5680592.79 125.00 +594012.78 5681073.00 108.75 +594013.21 5680973.05 116.25 +594013.38 5680959.27 117.50 +594013.59 5681093.48 107.50 +594013.84 5681039.75 111.25 +594014.45 5680086.68 116.25 +594014.49 5679764.37 121.25 +594014.51 5679792.78 121.25 +594014.55 5680239.40 120.00 +594014.97 5680678.87 125.00 +594015.04 5680985.13 115.00 +594015.52 5680256.15 121.25 +594015.52 5680928.71 120.00 +594015.93 5684751.20 125.00 +594016.20 5681108.26 105.00 +594016.43 5679588.51 121.25 +594016.66 5685144.70 125.00 +594016.93 5680942.73 118.75 +594017.14 5685443.45 120.00 +594017.24 5681061.96 110.00 +594017.59 5679783.35 121.25 +594017.75 5679773.81 121.25 +594017.76 5681103.19 106.25 +594017.77 5680798.43 125.00 +594017.79 5680298.34 123.75 +594017.79 5685453.25 120.00 +594017.81 5684463.11 120.00 +594018.45 5681001.54 113.75 +594018.52 5680822.29 123.75 +594019.06 5685433.65 120.00 +594019.49 5680276.38 122.50 +594019.56 5680861.69 122.50 +594019.69 5685463.04 120.00 +594020.00 5685287.50 120.00 +594020.08 5680176.82 117.50 +594020.40 5680509.80 125.00 +594020.52 5680094.62 116.25 +594020.80 5680598.04 125.00 +594021.00 5680894.21 121.25 +594021.23 5681021.95 112.50 +594021.55 5685424.08 120.00 +594021.79 5680671.68 125.00 +594022.10 5680206.38 118.75 +594022.61 5681074.77 108.75 +594023.19 5680973.72 116.25 +594023.38 5680959.27 117.50 +594023.51 5681094.57 107.50 +594023.55 5681041.76 111.25 +594024.41 5685471.81 120.00 +594024.44 5680240.44 120.00 +594024.80 5680987.10 115.00 +594024.86 5681103.31 105.00 +594024.88 5679583.18 121.25 +594025.30 5680926.81 120.00 +594025.42 5680257.51 121.25 +594025.72 5684753.16 125.00 +594026.36 5681098.12 106.25 +594026.38 5685142.46 125.00 +594026.59 5680102.57 116.25 +594026.67 5685415.51 120.00 +594026.84 5680942.95 118.75 +594027.19 5681062.81 110.00 +594027.61 5680797.03 125.00 +594027.67 5684464.66 120.00 +594027.68 5680296.93 123.75 +594027.85 5680605.04 125.00 +594028.29 5681003.21 113.75 +594028.33 5680821.68 123.75 +594029.11 5680664.96 125.00 +594029.35 5680860.06 122.50 +594029.40 5680275.85 122.50 +594029.43 5680180.23 117.50 +594029.60 5680506.14 125.00 +594029.95 5685288.31 120.00 +594030.47 5685479.61 120.00 +594030.71 5680892.20 121.25 +594030.83 5681024.51 112.50 +594031.78 5685406.94 120.00 +594032.09 5680206.61 118.75 +594032.56 5681075.59 108.75 +594032.72 5681091.73 107.50 +594032.72 5680110.46 116.25 +594033.16 5680974.40 116.25 +594033.34 5680959.92 117.50 +594033.40 5681043.08 111.25 +594033.52 5681098.37 105.00 +594033.71 5679578.59 121.25 +594034.33 5680241.48 120.00 +594034.45 5680612.43 125.00 +594034.55 5680989.06 115.00 +594034.91 5681092.97 106.25 +594034.98 5680927.79 120.00 +594035.31 5680258.87 121.25 +594035.43 5684755.38 125.00 +594035.61 5680657.54 125.00 +594036.11 5685140.21 125.00 +594036.60 5685398.20 120.00 +594036.73 5680943.40 118.75 +594037.14 5681063.66 110.00 +594037.17 5684467.24 120.00 +594037.46 5680796.29 125.00 +594037.58 5680295.86 123.75 +594037.67 5685486.52 120.00 +594038.11 5681005.08 113.75 +594038.28 5680822.11 123.75 +594038.78 5680183.65 117.50 +594038.80 5680502.47 125.00 +594039.29 5680274.81 122.50 +594039.30 5680860.25 122.50 +594039.52 5685290.58 120.00 +594039.70 5680620.76 125.00 +594040.20 5680117.09 116.25 +594040.62 5681025.74 112.50 +594040.63 5680891.45 121.25 +594041.23 5680649.34 125.00 +594041.27 5685389.38 120.00 +594041.63 5681087.23 107.50 +594042.09 5680206.84 118.75 +594042.18 5681093.42 105.00 +594042.52 5681076.40 108.75 +594042.91 5680976.37 116.25 +594042.99 5679574.88 121.25 +594043.18 5680630.07 125.00 +594043.24 5680639.75 125.00 +594043.24 5681044.40 111.25 +594043.31 5680960.66 117.50 +594043.37 5681087.68 106.25 +594043.67 5685379.82 120.00 +594044.18 5680242.84 120.00 +594044.38 5680990.52 115.00 +594044.58 5680930.42 120.00 +594044.66 5684759.20 125.00 +594045.06 5685493.17 120.00 +594045.09 5685369.94 120.00 +594045.21 5680260.23 121.25 +594045.75 5685359.99 120.00 +594045.86 5685138.06 125.00 +594045.87 5684472.13 120.00 +594046.28 5685350.02 120.00 +594046.51 5680945.08 118.75 +594047.03 5681062.53 110.00 +594047.33 5680797.38 125.00 +594047.49 5680297.12 123.75 +594047.56 5685340.16 120.00 +594047.57 5680748.15 126.25 +594047.66 5680498.07 125.00 +594047.68 5680123.73 116.25 +594047.94 5681006.95 113.75 +594048.03 5680187.31 117.50 +594048.15 5680823.00 123.75 +594048.41 5680921.53 120.00 +594048.42 5680739.48 126.25 +594048.65 5685294.62 120.00 +594049.17 5680274.44 122.50 +594049.24 5680860.45 122.50 +594049.81 5685330.44 120.00 +594050.03 5681081.84 107.50 +594050.33 5680893.19 121.25 +594050.55 5681025.96 112.50 +594050.83 5681088.48 105.00 +594051.84 5681082.40 106.25 +594052.08 5680207.07 118.75 +594052.16 5685320.74 120.00 +594052.28 5679571.25 121.25 +594052.45 5681077.08 108.75 +594052.55 5680979.00 116.25 +594052.78 5680755.85 126.25 +594053.07 5680962.69 117.50 +594053.09 5681045.55 111.25 +594053.74 5685498.10 120.00 +594053.89 5684763.01 125.00 +594054.00 5680244.40 120.00 +594054.14 5680992.17 115.00 +594054.57 5684477.03 120.00 +594054.62 5685301.60 120.00 +594054.80 5685311.12 120.00 +594055.11 5680261.57 121.25 +594055.15 5680130.37 116.25 +594055.80 5685137.12 125.00 +594055.83 5680733.84 126.25 +594056.01 5680947.74 118.75 +594056.43 5680493.48 125.00 +594056.91 5681061.07 110.00 +594056.91 5680191.80 117.50 +594057.07 5680799.35 125.00 +594057.27 5680924.89 120.00 +594057.40 5680298.38 123.75 +594057.81 5680825.41 123.75 +594057.85 5681008.02 113.75 +594058.42 5681076.43 107.50 +594058.55 5680862.77 122.50 +594059.01 5680763.06 126.25 +594059.04 5680893.26 121.25 +594059.04 5680275.63 122.50 +594059.49 5681083.53 105.00 +594060.13 5684485.05 120.00 +594060.44 5681077.34 106.25 +594060.49 5681026.12 112.50 +594061.37 5681072.58 108.75 +594061.81 5680209.16 118.75 +594062.26 5679570.76 121.25 +594062.30 5680137.34 116.25 +594062.42 5685503.03 120.00 +594062.45 5680980.37 116.25 +594062.80 5680964.96 117.50 +594062.97 5681044.50 111.25 +594063.59 5684763.16 125.00 +594063.70 5680994.93 115.00 +594063.82 5680245.95 120.00 +594064.39 5680729.64 126.25 +594064.65 5680488.23 125.00 +594064.72 5680885.08 121.25 +594065.02 5680262.90 121.25 +594065.02 5684493.75 120.00 +594065.28 5680951.26 118.75 +594065.37 5680018.29 115.00 +594065.65 5680028.25 115.00 +594065.74 5685136.18 125.00 +594065.80 5680196.28 117.50 +594065.83 5680929.97 120.00 +594066.38 5680038.22 115.00 +594066.62 5680008.38 115.00 +594066.76 5680801.50 125.00 +594066.82 5681060.19 110.00 +594066.94 5680868.11 122.50 +594067.11 5680048.19 115.00 +594067.34 5680299.43 123.75 +594067.47 5680827.82 123.75 +594067.51 5681072.41 107.50 +594067.84 5681008.56 113.75 +594067.86 5679998.46 115.00 +594068.17 5681078.62 105.00 +594068.38 5680764.74 126.25 +594068.91 5680276.83 122.50 +594069.11 5680144.66 116.25 +594069.33 5681072.81 106.25 +594069.35 5680057.88 115.00 +594069.92 5684502.45 120.00 +594070.08 5679988.82 115.00 +594070.29 5681068.08 108.75 +594070.42 5681026.18 112.50 +594070.73 5680480.41 125.00 +594071.18 5680886.39 121.25 +594071.50 5680211.63 118.75 +594072.17 5680876.41 122.50 +594072.24 5679570.27 121.25 +594072.30 5680067.43 115.00 +594072.30 5685504.26 120.00 +594072.36 5680981.74 116.25 +594072.51 5680745.83 127.00 +594072.53 5680967.23 117.50 +594072.84 5681043.45 111.25 +594073.39 5680996.83 115.00 +594073.49 5684761.84 125.00 +594073.55 5680728.23 126.25 +594073.66 5680247.40 120.00 +594074.35 5679979.78 115.00 +594074.35 5680935.14 120.00 +594074.55 5680954.79 118.75 +594074.69 5680200.76 117.50 +594074.81 5684511.15 120.00 +594074.92 5680264.23 121.25 +594075.39 5680076.92 115.00 +594075.70 5685136.12 125.00 +594075.92 5680151.99 116.25 +594076.24 5680804.47 125.00 +594076.78 5680831.28 123.75 +594076.81 5680472.60 125.00 +594076.81 5681060.41 110.00 +594076.83 5681068.81 107.50 +594076.89 5681073.79 105.00 +594077.32 5680299.93 123.75 +594077.76 5680766.43 126.25 +594077.79 5681009.42 113.75 +594078.01 5680893.63 121.25 +594078.61 5679970.74 115.00 +594078.79 5680278.02 122.50 +594078.87 5681069.98 106.25 +594079.23 5681063.65 108.75 +594079.35 5684520.01 120.00 +594079.57 5680463.17 125.00 +594080.29 5680085.63 115.00 +594080.35 5681026.23 112.50 +594080.59 5680215.46 118.75 +594081.57 5680875.95 122.50 +594081.84 5680433.86 125.00 +594082.00 5680453.57 125.00 +594082.16 5679569.06 121.25 +594082.20 5680443.75 125.00 +594082.22 5685505.39 120.00 +594082.26 5680983.10 116.25 +594082.32 5680969.12 117.50 +594082.66 5680730.61 126.25 +594082.66 5680423.99 125.00 +594082.72 5681042.41 111.25 +594082.75 5684529.40 120.00 +594083.14 5680939.82 120.00 +594083.16 5680158.84 116.25 +594083.34 5680997.06 115.00 +594083.39 5684760.51 125.00 +594083.51 5680248.77 120.00 +594083.57 5680414.14 125.00 +594083.58 5680205.25 117.50 +594084.12 5680957.09 118.75 +594084.48 5680901.19 121.25 +594084.82 5680265.58 121.25 +594085.10 5680404.36 125.00 +594085.20 5680094.34 115.00 +594085.67 5685136.70 125.00 +594085.67 5681069.16 105.00 +594085.79 5680807.18 125.00 +594086.03 5680834.98 123.75 +594086.16 5684538.78 120.00 +594086.49 5681066.44 107.50 +594086.62 5680394.57 125.00 +594086.78 5681060.81 110.00 +594087.28 5680766.24 126.25 +594087.30 5680300.43 123.75 +594087.74 5681010.42 113.75 +594088.15 5680384.79 125.00 +594088.55 5681067.54 106.25 +594088.66 5680279.21 122.50 +594089.02 5680220.83 118.75 +594089.19 5681064.40 108.75 +594089.56 5684548.16 120.00 +594089.67 5680375.01 125.00 +594090.29 5681026.29 112.50 +594090.95 5680165.11 116.25 +594090.96 5680908.75 121.25 +594091.31 5680102.23 115.00 +594091.42 5680874.58 122.50 +594091.43 5680734.25 126.25 +594091.76 5680365.46 125.00 +594092.06 5679567.74 121.25 +594092.13 5685506.52 120.00 +594092.14 5680984.67 116.25 +594092.16 5680943.97 120.00 +594092.23 5680970.34 117.50 +594092.47 5680209.73 117.50 +594092.59 5681042.15 111.25 +594092.97 5684557.54 120.00 +594093.28 5680997.36 115.00 +594093.29 5684759.19 125.00 +594093.36 5680250.14 120.00 +594093.98 5680958.18 118.75 +594094.66 5680267.33 121.25 +594095.27 5680838.68 123.75 +594095.38 5680809.76 125.00 +594095.44 5685138.43 125.00 +594095.63 5681068.72 105.00 +594096.08 5680763.24 126.25 +594096.43 5681065.71 107.50 +594096.76 5681061.33 110.00 +594097.00 5684566.67 120.00 +594097.28 5680300.94 123.75 +594097.45 5680226.19 118.75 +594097.49 5680357.38 125.00 +594097.59 5680110.01 115.00 +594097.69 5681011.41 113.75 +594098.10 5680915.60 121.25 +594098.18 5681067.58 106.25 +594098.51 5680280.51 122.50 +594098.74 5680171.37 116.25 +594099.15 5681065.16 108.75 +594099.44 5680739.40 126.25 +594100.21 5681025.92 112.50 +594101.04 5684575.80 120.00 +594101.29 5680875.01 122.50 +594101.77 5680213.22 117.50 +594101.89 5680946.10 120.00 +594101.99 5679566.84 121.25 +594102.01 5680986.24 116.25 +594102.03 5680972.30 117.50 +594102.08 5685506.33 120.00 +594102.22 5680757.01 126.25 +594102.46 5681043.29 111.25 +594103.14 5684757.56 125.00 +594103.20 5680998.09 115.00 +594103.22 5680251.51 120.00 +594103.22 5680349.31 125.00 +594103.32 5680747.82 126.25 +594103.83 5680959.27 118.75 +594104.50 5680269.01 121.25 +594104.88 5680812.64 125.00 +594105.05 5685141.15 125.00 +594105.08 5684584.93 120.00 +594105.14 5680839.77 123.75 +594105.25 5681071.04 105.00 +594105.90 5681067.61 107.50 +594106.10 5680921.52 121.25 +594106.70 5681062.10 110.00 +594106.84 5680229.47 118.75 +594106.90 5680177.02 116.25 +594107.03 5680112.05 115.00 +594107.26 5680301.49 123.75 +594107.64 5681012.40 113.75 +594107.75 5681070.39 106.25 +594108.35 5680281.98 122.50 +594109.02 5681066.67 108.75 +594109.11 5684594.05 120.00 +594110.14 5681025.52 112.50 +594110.46 5680343.01 125.00 +594111.16 5680876.26 122.50 +594111.23 5680216.32 117.50 +594111.69 5680947.87 120.00 +594111.96 5680986.92 116.25 +594111.97 5679567.18 121.25 +594111.99 5680972.71 117.50 +594112.04 5685505.68 120.00 +594112.33 5681044.43 111.25 +594112.98 5684755.90 125.00 +594113.07 5680252.89 120.00 +594113.13 5680998.83 115.00 +594113.15 5684603.18 120.00 +594113.68 5680960.43 118.75 +594114.32 5685144.75 125.00 +594114.44 5681074.71 105.00 +594114.46 5680269.87 121.25 +594114.81 5680812.86 125.00 +594115.05 5680840.72 123.75 +594115.05 5681071.57 107.50 +594115.27 5680924.68 121.25 +594116.23 5680179.13 116.25 +594116.41 5680232.37 118.75 +594116.49 5681064.06 110.00 +594116.92 5681074.25 106.25 +594116.96 5680113.21 115.00 +594117.08 5680303.29 123.75 +594117.63 5681012.74 113.75 +594118.18 5680283.46 122.50 +594118.86 5681068.41 108.75 +594119.37 5680338.70 125.00 +594119.46 5684610.66 120.00 +594120.06 5681025.11 112.50 +594120.50 5680879.65 122.50 +594120.69 5680219.39 117.50 +594121.58 5680949.07 120.00 +594121.96 5680987.03 116.25 +594121.96 5679567.51 121.25 +594121.98 5685504.81 120.00 +594121.98 5680972.92 117.50 +594122.20 5681045.42 111.25 +594122.83 5684754.25 125.00 +594122.87 5681080.03 105.00 +594122.92 5680254.26 120.00 +594123.05 5680999.57 115.00 +594123.24 5685149.24 125.00 +594123.47 5680961.73 118.75 +594124.39 5680270.91 121.25 +594124.46 5681074.89 107.50 +594124.57 5680838.64 123.75 +594124.74 5680813.08 125.00 +594125.09 5680926.34 121.25 +594125.75 5680176.06 116.25 +594125.82 5681078.77 106.25 +594125.97 5680235.28 118.75 +594126.20 5680109.49 115.00 +594126.28 5681066.02 110.00 +594126.91 5680305.10 123.75 +594127.38 5684616.59 120.00 +594127.62 5681012.96 113.75 +594128.01 5680284.93 122.50 +594128.28 5680334.38 125.00 +594128.76 5681069.28 108.75 +594129.47 5680883.88 122.50 +594129.99 5681024.86 112.50 +594130.28 5680222.09 117.50 +594131.49 5681085.04 105.00 +594131.53 5680948.98 120.00 +594131.84 5685503.28 120.00 +594131.92 5680386.26 126.25 +594131.94 5680973.47 117.50 +594131.95 5679567.85 121.25 +594131.95 5680987.14 116.25 +594132.14 5681045.46 111.25 +594132.15 5685153.74 125.00 +594132.41 5680376.29 126.25 +594132.70 5684752.69 125.00 +594132.77 5680255.63 120.00 +594132.89 5680366.32 126.25 +594132.97 5681000.30 115.00 +594133.02 5681079.77 107.50 +594133.39 5680961.73 118.75 +594133.66 5680170.17 116.25 +594133.92 5680835.24 123.75 +594134.15 5681084.17 106.25 +594134.23 5680272.67 121.25 +594134.37 5680395.73 126.25 +594134.56 5680811.95 125.00 +594134.90 5680928.00 121.25 +594135.42 5680105.62 115.00 +594135.57 5680238.05 118.75 +594136.14 5681065.51 110.00 +594136.49 5684620.63 120.00 +594136.75 5680306.83 123.75 +594137.32 5680330.36 125.00 +594137.58 5681012.67 113.75 +594137.85 5680286.40 122.50 +594138.10 5680404.98 126.25 +594138.11 5680888.82 122.50 +594138.12 5681092.41 105.00 +594138.69 5681068.53 108.75 +594139.20 5680358.59 126.25 +594139.86 5680224.79 117.50 +594139.91 5681025.30 112.50 +594140.84 5681085.97 107.50 +594141.07 5685158.23 125.00 +594141.17 5680163.57 116.25 +594141.42 5680948.25 120.00 +594141.68 5681090.70 106.25 +594141.70 5685501.76 120.00 +594141.83 5680414.24 126.25 +594141.85 5680974.53 117.50 +594141.93 5679568.25 121.25 +594141.95 5680987.25 116.25 +594142.07 5681045.50 111.25 +594142.58 5684751.24 125.00 +594142.60 5680830.65 123.75 +594142.62 5680257.00 120.00 +594142.68 5680999.14 115.00 +594143.14 5680960.41 118.75 +594143.52 5679984.86 113.75 +594143.70 5680923.46 121.25 +594144.06 5680274.42 121.25 +594144.07 5680100.74 115.00 +594144.31 5680810.04 125.00 +594144.51 5681100.06 105.00 +594145.35 5679994.44 113.75 +594145.41 5680239.80 118.75 +594145.50 5680350.85 126.25 +594145.56 5680423.49 126.25 +594145.97 5684623.76 120.00 +594146.03 5681064.09 110.00 +594146.39 5680326.39 125.00 +594146.74 5680307.03 123.75 +594147.31 5680155.73 116.25 +594147.42 5681010.94 113.75 +594147.64 5679975.75 113.75 +594147.70 5680287.61 122.50 +594147.92 5680889.13 122.50 +594148.45 5681066.41 108.75 +594148.66 5681092.17 107.50 +594148.87 5681097.63 106.25 +594149.23 5680003.17 113.75 +594149.69 5680223.73 117.50 +594149.84 5681025.74 112.50 +594149.99 5685162.72 125.00 +594151.01 5680945.56 120.00 +594151.27 5681107.35 105.00 +594151.50 5680971.98 117.50 +594151.57 5685500.24 120.00 +594151.76 5679966.64 113.75 +594151.80 5680343.11 126.25 +594151.91 5679568.64 121.25 +594151.95 5680987.36 116.25 +594152.00 5681045.54 111.25 +594152.13 5680827.78 123.75 +594152.16 5680918.26 121.25 +594152.17 5680094.89 115.00 +594152.19 5680996.21 115.00 +594152.46 5684749.80 125.00 +594152.47 5680258.37 120.00 +594152.74 5680957.92 118.75 +594153.10 5680147.58 116.25 +594153.90 5680276.17 121.25 +594154.06 5680808.12 125.00 +594154.28 5680428.06 126.25 +594155.25 5680241.54 118.75 +594155.44 5684626.89 120.00 +594155.48 5680322.48 125.00 +594155.62 5680884.41 122.50 +594155.84 5681062.22 110.00 +594156.10 5681104.51 106.25 +594156.48 5681098.37 107.50 +594156.73 5680307.23 123.75 +594157.27 5681009.20 113.75 +594157.31 5679958.46 113.75 +594157.58 5680008.66 113.75 +594157.64 5680287.84 122.50 +594157.95 5685168.57 125.00 +594158.32 5681065.14 108.75 +594158.61 5680139.25 116.25 +594158.82 5681113.86 105.00 +594158.92 5680220.57 117.50 +594159.71 5681025.32 112.50 +594160.04 5680338.10 126.25 +594160.22 5680912.43 121.25 +594160.28 5680089.04 115.00 +594160.60 5680942.86 120.00 +594161.13 5685502.79 120.00 +594161.16 5680969.42 117.50 +594161.30 5685539.59 120.00 +594161.41 5680984.43 116.25 +594161.51 5680953.53 118.75 +594161.66 5680824.92 123.75 +594161.68 5681043.31 111.25 +594161.71 5680993.31 115.00 +594161.89 5679569.15 121.25 +594162.00 5685549.47 120.00 +594162.28 5680260.00 120.00 +594162.34 5684748.36 125.00 +594162.36 5680877.16 122.50 +594162.57 5681112.05 106.25 +594163.29 5680432.34 126.25 +594163.67 5680130.63 116.25 +594163.79 5680277.62 121.25 +594163.87 5680806.63 125.00 +594164.01 5679951.05 113.75 +594164.33 5685530.08 120.00 +594164.41 5681104.41 107.50 +594164.42 5685558.72 120.00 +594164.49 5681121.78 105.00 +594165.07 5680320.01 125.00 +594165.08 5684629.43 120.00 +594165.09 5680243.27 118.75 +594165.16 5685175.48 125.00 +594165.82 5681062.04 110.00 +594165.94 5680014.15 113.75 +594166.21 5685520.30 120.00 +594166.69 5685510.63 120.00 +594166.72 5680307.43 123.75 +594167.07 5681007.26 113.75 +594167.47 5680215.46 117.50 +594167.58 5680288.06 122.50 +594168.26 5680083.03 115.00 +594168.29 5680906.60 121.25 +594168.30 5681064.74 108.75 +594168.34 5681120.20 106.25 +594168.55 5681130.88 105.00 +594168.72 5680122.00 116.25 +594169.42 5680334.69 126.25 +594169.54 5681023.83 112.50 +594169.85 5680939.17 120.00 +594169.89 5680948.21 118.75 +594169.96 5680870.74 122.50 +594170.56 5680966.03 117.50 +594170.72 5679943.63 113.75 +594170.76 5680980.90 116.25 +594171.34 5680990.83 115.00 +594171.35 5681041.06 111.25 +594171.39 5680822.92 123.75 +594171.73 5685565.52 120.00 +594171.86 5679569.83 121.25 +594172.03 5680261.93 120.00 +594172.10 5684747.45 125.00 +594172.36 5685182.40 125.00 +594172.77 5680435.08 126.25 +594173.03 5680112.98 116.25 +594173.69 5680278.96 121.25 +594173.73 5680805.44 125.00 +594173.78 5681139.35 105.00 +594173.86 5681106.45 107.50 +594174.34 5680208.56 117.50 +594174.55 5680240.07 118.75 +594174.66 5680317.54 125.00 +594174.86 5684631.41 120.00 +594175.00 5681127.60 106.25 +594175.78 5681061.57 110.00 +594175.88 5680015.19 113.75 +594176.11 5680076.83 115.00 +594176.58 5680901.09 121.25 +594176.72 5680307.63 123.75 +594176.74 5681004.73 113.75 +594177.16 5681068.09 108.75 +594177.27 5680386.81 127.00 +594177.47 5679936.26 113.75 +594177.53 5680288.29 122.50 +594178.05 5680865.07 122.50 +594178.13 5680104.68 116.25 +594178.80 5680331.28 126.25 +594178.99 5680935.23 120.00 +594179.23 5681147.70 105.00 +594179.36 5681022.34 112.50 +594179.37 5680946.13 118.75 +594179.57 5685189.31 125.00 +594179.95 5680962.61 117.50 +594179.96 5685570.81 120.00 +594180.00 5680200.38 117.50 +594180.11 5680977.36 116.25 +594180.37 5684753.04 125.00 +594181.05 5680988.73 115.00 +594181.18 5681039.90 111.25 +594181.24 5680821.46 123.75 +594181.79 5680263.85 120.00 +594181.83 5679570.50 121.25 +594181.95 5681134.77 106.25 +594182.63 5680234.56 118.75 +594182.65 5680436.43 126.25 +594183.58 5680804.12 125.00 +594183.59 5680280.30 121.25 +594183.84 5681106.57 107.50 +594183.95 5680070.63 115.00 +594184.43 5680316.99 125.00 +594184.55 5679929.21 113.75 +594184.64 5684633.40 120.00 +594184.68 5681156.05 105.00 +594184.87 5680895.58 121.25 +594185.37 5681073.77 108.75 +594185.66 5681060.10 110.00 +594185.66 5685197.22 125.00 +594185.67 5680192.19 117.50 +594185.82 5680016.20 113.75 +594186.43 5681002.30 113.75 +594186.58 5680099.32 116.25 +594186.59 5684760.77 125.00 +594186.70 5680307.93 123.75 +594187.04 5680860.82 122.50 +594187.47 5680288.52 122.50 +594187.74 5680930.47 120.00 +594188.60 5680330.27 126.25 +594189.18 5681020.86 112.50 +594189.24 5680945.15 118.75 +594189.31 5685574.30 120.00 +594189.46 5680973.81 116.25 +594189.48 5680959.66 117.50 +594189.85 5680227.66 118.75 +594190.08 5680183.40 117.50 +594190.95 5680987.79 115.00 +594191.03 5681138.39 106.25 +594191.10 5681039.47 111.25 +594191.17 5680821.47 123.75 +594191.55 5680265.78 120.00 +594191.64 5679922.16 113.75 +594191.75 5685205.13 125.00 +594191.81 5679570.93 121.25 +594191.93 5681161.75 105.00 +594192.15 5680064.92 115.00 +594192.56 5680436.92 126.25 +594193.00 5680173.88 117.50 +594193.11 5684768.19 125.00 +594193.16 5680890.08 121.25 +594193.42 5680802.76 125.00 +594193.54 5680280.11 121.25 +594193.72 5681079.26 108.75 +594193.82 5681106.68 107.50 +594194.31 5680317.61 125.00 +594194.46 5684635.16 120.00 +594195.09 5680094.11 116.25 +594195.54 5681058.72 110.00 +594195.77 5680017.21 113.75 +594196.12 5680164.47 117.50 +594196.32 5681000.83 113.75 +594196.69 5680308.34 123.75 +594196.72 5680858.96 122.50 +594196.91 5680656.38 125.00 +594197.08 5680220.75 118.75 +594197.41 5680288.74 122.50 +594197.44 5680928.35 120.00 +594197.66 5685213.15 125.00 +594198.50 5680646.58 125.00 +594198.58 5680330.27 126.25 +594198.65 5680969.88 116.25 +594198.73 5679915.10 113.75 +594199.08 5681021.66 112.50 +594199.09 5685575.22 120.00 +594199.09 5680945.46 118.75 +594199.19 5680957.93 117.50 +594200.28 5680636.82 125.00 +594200.44 5680059.33 115.00 +594200.62 5681141.16 106.25 +594200.86 5680986.86 115.00 +594200.91 5680819.82 123.75 +594201.01 5681040.03 111.25 +594201.16 5684774.11 125.00 +594201.43 5680266.55 120.00 +594201.64 5685222.31 125.00 +594201.71 5681163.70 105.00 +594201.79 5679570.67 121.25 +594202.50 5680436.03 126.25 +594202.51 5680156.84 117.50 +594202.51 5680664.37 125.00 +594202.90 5680888.88 121.25 +594203.03 5680800.25 125.00 +594203.12 5681082.35 108.75 +594203.15 5680212.83 118.75 +594203.26 5680627.34 125.00 +594203.30 5681109.73 107.50 +594203.51 5680279.46 121.25 +594204.19 5680318.23 125.00 +594204.25 5680012.01 113.75 +594204.31 5684636.80 120.00 +594204.53 5680090.82 116.25 +594205.49 5681057.84 110.00 +594205.62 5685231.47 125.00 +594205.73 5679907.99 113.75 +594206.24 5680617.86 125.00 +594206.29 5681000.35 113.75 +594206.56 5680857.54 122.50 +594206.67 5680308.75 123.75 +594207.35 5680288.97 122.50 +594207.40 5680928.59 120.00 +594208.36 5680331.63 126.25 +594208.48 5680971.72 116.25 +594208.67 5680608.23 125.00 +594208.73 5680053.74 115.00 +594208.90 5680149.21 117.50 +594208.95 5680946.60 118.75 +594208.98 5681022.45 112.50 +594209.03 5680204.76 118.75 +594209.06 5685574.91 120.00 +594209.14 5680958.85 117.50 +594209.24 5680671.25 125.00 +594209.60 5685240.63 125.00 +594210.02 5684778.36 125.00 +594210.29 5679899.09 113.75 +594210.30 5681143.53 106.25 +594210.54 5680817.34 123.75 +594210.75 5680987.92 115.00 +594210.90 5681040.93 111.25 +594210.96 5680598.56 125.00 +594211.37 5680266.77 120.00 +594211.48 5681165.66 105.00 +594211.78 5679570.31 121.25 +594211.97 5680529.69 125.00 +594212.44 5680435.13 126.25 +594212.46 5680006.33 113.75 +594212.59 5680797.55 125.00 +594212.76 5681112.94 107.50 +594212.81 5681084.77 108.75 +594212.83 5680888.27 121.25 +594212.95 5680519.84 125.00 +594213.25 5680588.90 125.00 +594213.46 5680539.51 125.00 +594213.49 5680278.96 121.25 +594213.57 5685249.79 125.00 +594213.64 5684640.02 120.00 +594213.95 5680319.73 125.00 +594213.97 5680087.52 116.25 +594214.43 5680579.04 125.00 +594214.64 5680510.08 125.00 +594214.85 5679890.20 113.75 +594214.95 5680549.33 125.00 +594215.44 5681056.97 110.00 +594215.47 5680197.21 118.75 +594215.50 5680559.23 125.00 +594215.53 5680569.16 125.00 +594215.80 5685259.50 125.00 +594215.82 5680142.06 117.50 +594216.06 5681001.91 113.75 +594216.40 5680856.06 122.50 +594216.53 5680310.37 123.75 +594217.13 5680930.16 120.00 +594217.29 5680289.20 122.50 +594217.78 5680500.65 125.00 +594217.84 5685269.28 125.00 +594217.92 5680334.49 126.25 +594218.07 5680050.36 115.00 +594218.30 5680973.56 116.25 +594218.81 5680947.62 118.75 +594218.83 5680673.85 125.00 +594218.89 5681023.20 112.50 +594218.96 5679881.09 113.75 +594219.04 5685574.60 120.00 +594219.09 5680959.78 117.50 +594219.63 5684781.06 125.00 +594219.88 5685279.05 125.00 +594220.12 5681145.32 106.25 +594220.18 5680814.85 123.75 +594220.43 5680000.29 113.75 +594220.61 5680792.14 125.00 +594220.64 5680988.97 115.00 +594220.75 5681042.17 111.25 +594221.25 5681167.67 105.00 +594221.27 5680266.69 120.00 +594221.75 5679569.66 121.25 +594222.15 5685288.78 125.00 +594222.21 5681116.14 107.50 +594222.35 5680434.80 126.25 +594222.53 5681087.10 108.75 +594222.58 5684644.46 120.00 +594222.71 5680888.10 121.25 +594222.89 5680135.05 117.50 +594223.07 5679871.98 113.75 +594223.34 5680191.05 118.75 +594223.42 5680084.24 116.25 +594223.48 5680278.75 121.25 +594223.60 5680493.04 125.00 +594223.65 5680321.73 125.00 +594224.53 5685298.48 125.00 +594225.33 5681057.55 110.00 +594225.68 5681004.65 113.75 +594225.73 5679862.36 113.75 +594226.22 5680854.46 122.50 +594226.37 5680312.13 123.75 +594226.59 5680339.31 126.25 +594226.65 5680933.09 120.00 +594227.16 5680784.67 125.00 +594227.22 5680289.52 122.50 +594227.62 5680047.42 115.00 +594228.14 5679852.66 113.75 +594228.18 5680974.22 116.25 +594228.40 5679994.25 113.75 +594228.51 5680676.06 125.00 +594228.67 5680948.64 118.75 +594228.79 5681023.95 112.50 +594228.86 5685572.87 120.00 +594229.08 5680959.80 117.50 +594229.24 5684783.76 125.00 +594229.36 5680811.04 123.75 +594229.48 5685306.96 125.00 +594229.88 5680746.38 125.00 +594229.95 5681147.10 106.25 +594230.41 5679842.93 113.75 +594230.61 5681043.40 111.25 +594230.65 5680128.90 117.50 +594230.68 5680756.28 125.00 +594230.71 5680263.56 120.00 +594230.95 5680776.12 125.00 +594231.01 5681169.70 105.00 +594231.18 5680766.19 125.00 +594231.42 5680185.27 118.75 +594231.49 5680487.07 125.00 +594231.52 5684648.90 120.00 +594231.67 5681119.33 107.50 +594231.69 5679568.80 121.25 +594232.12 5680436.81 126.25 +594232.16 5680891.23 121.25 +594232.22 5681089.52 108.75 +594232.68 5679833.20 113.75 +594232.98 5680081.34 116.25 +594233.35 5680323.72 125.00 +594233.47 5680278.55 121.25 +594234.47 5679823.37 113.75 +594234.60 5680535.46 123.75 +594235.01 5680525.53 123.75 +594235.06 5680344.60 126.25 +594235.19 5681059.16 110.00 +594235.26 5680803.52 123.75 +594235.29 5681007.40 113.75 +594235.48 5685314.93 125.00 +594235.53 5680545.33 123.75 +594235.60 5680738.30 125.00 +594235.78 5680851.72 122.50 +594236.08 5679813.51 113.75 +594236.20 5680313.88 123.75 +594236.47 5680934.77 120.00 +594236.75 5679793.65 113.75 +594237.06 5680290.94 122.50 +594237.18 5680044.48 115.00 +594237.35 5679803.63 113.75 +594237.64 5680555.06 123.75 +594238.05 5679991.90 113.75 +594238.12 5680973.14 116.25 +594238.15 5680257.11 120.00 +594238.21 5680678.22 125.00 +594238.34 5680516.34 123.75 +594238.54 5680949.47 118.75 +594238.57 5681025.57 112.50 +594238.68 5684787.00 125.00 +594238.69 5685571.09 120.00 +594238.97 5680123.43 117.50 +594239.07 5680959.80 117.50 +594239.64 5681149.37 106.25 +594239.66 5680564.81 123.75 +594240.08 5680794.81 123.75 +594240.26 5680482.39 125.00 +594240.33 5681045.35 111.25 +594240.35 5679784.71 113.75 +594240.58 5681172.38 105.00 +594240.83 5680181.90 118.75 +594240.96 5684652.13 120.00 +594241.12 5681122.53 107.50 +594241.47 5680730.29 125.00 +594241.54 5679567.08 121.25 +594241.59 5680574.57 123.75 +594241.62 5680894.35 121.25 +594241.80 5681092.36 108.75 +594242.07 5680436.73 126.25 +594242.35 5680248.21 120.00 +594242.55 5680078.43 116.25 +594242.89 5680326.24 125.00 +594243.14 5680350.43 126.25 +594243.14 5680584.39 123.75 +594243.46 5680278.24 121.25 +594244.04 5680594.30 123.75 +594244.17 5680508.44 123.75 +594244.90 5681010.15 113.75 +594244.94 5680604.21 123.75 +594244.96 5685317.65 125.00 +594244.98 5680786.15 123.75 +594245.00 5680614.15 123.75 +594245.05 5681060.76 110.00 +594245.34 5679267.70 121.25 +594245.35 5680848.99 122.50 +594245.50 5679776.14 113.75 +594245.76 5680238.88 120.00 +594246.04 5680315.64 123.75 +594246.20 5680936.79 120.00 +594246.81 5680041.81 115.00 +594246.90 5680292.36 122.50 +594247.29 5680117.97 117.50 +594247.49 5680681.13 125.00 +594247.61 5680722.48 125.00 +594247.72 5680623.22 123.75 +594247.83 5679989.86 113.75 +594247.98 5684790.62 125.00 +594248.29 5681027.63 112.50 +594248.40 5680949.60 118.75 +594248.51 5685569.31 120.00 +594248.83 5680229.42 120.00 +594249.00 5681152.81 106.25 +594249.02 5680477.71 125.00 +594249.06 5680959.80 117.50 +594249.52 5680777.31 123.75 +594249.88 5681175.97 105.00 +594250.00 5681047.65 111.25 +594250.01 5680177.99 118.75 +594250.41 5684655.34 120.00 +594250.58 5681125.73 107.50 +594250.96 5680356.62 126.25 +594251.08 5680897.41 121.25 +594251.38 5681095.19 108.75 +594251.42 5679565.63 121.25 +594252.04 5680436.34 126.25 +594252.07 5680329.96 125.00 +594252.11 5680075.52 116.25 +594252.15 5679768.73 113.75 +594252.20 5679260.43 121.25 +594252.44 5680503.02 123.75 +594253.30 5680768.10 123.75 +594253.44 5680277.90 121.25 +594253.52 5680220.69 120.00 +594253.59 5680631.24 123.75 +594253.71 5680714.64 125.00 +594254.41 5680845.26 122.50 +594254.49 5680688.18 125.00 +594254.51 5681012.89 113.75 +594254.74 5685317.59 125.00 +594254.74 5681063.05 110.00 +594255.40 5680112.21 117.50 +594255.56 5680940.22 120.00 +594255.91 5680317.22 123.75 +594256.35 5684796.01 125.00 +594256.45 5680039.14 115.00 +594256.74 5680293.78 122.50 +594257.65 5679988.01 113.75 +594257.87 5680473.25 125.00 +594258.04 5681029.50 112.50 +594258.05 5680705.71 125.00 +594258.08 5680951.76 118.75 +594258.19 5685566.94 120.00 +594258.26 5680759.52 123.75 +594258.31 5680363.35 126.25 +594258.37 5681156.26 106.25 +594258.82 5680173.31 118.75 +594259.10 5679761.55 113.75 +594259.11 5679253.22 121.25 +594259.18 5681179.57 105.00 +594259.33 5680696.44 125.00 +594259.67 5681049.90 111.25 +594260.00 5684657.95 120.00 +594260.03 5681128.92 107.50 +594260.37 5680213.98 120.00 +594260.72 5680638.13 123.75 +594260.83 5680899.45 121.25 +594260.95 5681098.06 108.75 +594261.20 5680498.30 123.75 +594261.24 5680333.67 125.00 +594261.37 5679564.69 121.25 +594261.68 5680072.62 116.25 +594262.01 5680435.96 126.25 +594262.29 5680839.18 122.50 +594263.34 5680106.20 117.50 +594263.41 5680277.28 121.25 +594264.06 5680751.49 123.75 +594264.13 5681015.64 113.75 +594264.29 5681065.98 110.00 +594264.57 5684801.68 125.00 +594264.59 5685316.06 125.00 +594264.91 5680943.64 120.00 +594265.36 5680370.42 126.25 +594265.82 5680318.49 123.75 +594266.08 5680036.47 115.00 +594266.60 5680295.08 122.50 +594266.66 5679755.05 113.75 +594266.73 5679246.76 121.25 +594267.21 5680167.87 118.75 +594267.39 5680470.39 125.00 +594267.55 5679986.57 113.75 +594267.75 5681159.69 106.25 +594267.81 5685564.29 120.00 +594267.86 5681031.04 112.50 +594268.46 5681183.22 105.00 +594269.28 5680209.68 120.00 +594269.44 5681051.68 111.25 +594269.47 5680642.69 123.75 +594269.65 5681131.57 107.50 +594269.90 5684659.14 120.00 +594269.96 5680338.36 125.00 +594270.16 5680833.09 122.50 +594270.48 5681101.04 108.75 +594270.57 5680901.49 121.25 +594270.66 5680495.22 123.75 +594271.14 5679562.76 121.25 +594271.27 5680100.19 117.50 +594271.30 5680069.89 116.25 +594271.70 5680745.11 123.75 +594271.78 5680434.65 126.25 +594272.24 5680377.63 126.25 +594272.82 5684807.30 125.00 +594273.36 5680276.32 121.25 +594273.74 5681018.39 113.75 +594273.84 5681068.89 110.00 +594274.35 5679240.30 121.25 +594274.57 5685316.29 125.00 +594274.59 5679748.97 113.75 +594275.59 5680162.43 118.75 +594275.61 5680320.50 123.75 +594275.63 5680549.60 122.50 +594275.84 5680034.34 115.00 +594275.87 5680559.11 122.50 +594276.18 5680568.62 122.50 +594276.37 5680578.14 122.50 +594276.37 5680587.66 122.50 +594276.53 5680295.60 122.50 +594276.59 5680540.13 122.50 +594276.90 5680467.54 125.00 +594277.18 5681162.96 106.25 +594277.43 5681033.59 112.50 +594277.44 5679985.13 113.75 +594277.49 5685561.84 120.00 +594277.54 5680597.06 122.50 +594277.74 5681186.87 105.00 +594277.99 5680826.96 122.50 +594278.21 5680385.62 126.25 +594278.65 5680343.10 125.00 +594278.94 5680645.76 123.75 +594278.98 5680207.49 120.00 +594279.21 5681053.46 111.25 +594279.30 5680531.29 122.50 +594279.33 5681134.00 107.50 +594279.81 5684660.34 120.00 +594279.84 5680491.47 123.75 +594280.02 5681104.03 108.75 +594280.09 5680739.77 123.75 +594280.28 5680902.59 121.25 +594280.72 5680097.13 117.50 +594280.84 5679560.34 121.25 +594280.97 5680430.78 126.25 +594281.02 5680067.56 116.25 +594281.15 5680605.44 122.50 +594281.46 5684812.32 125.00 +594281.97 5679233.83 121.25 +594282.54 5679742.90 113.75 +594283.30 5680275.36 121.25 +594283.33 5681021.20 113.75 +594283.41 5681071.73 110.00 +594283.97 5680156.98 118.75 +594284.18 5680393.62 126.25 +594284.51 5685316.83 125.00 +594284.57 5680461.24 125.00 +594284.61 5680523.39 122.50 +594285.37 5680820.28 122.50 +594285.48 5680321.89 123.75 +594285.64 5680032.37 115.00 +594286.41 5680295.74 122.50 +594286.61 5681166.23 106.25 +594286.85 5681036.73 112.50 +594287.02 5681190.52 105.00 +594287.23 5685559.70 120.00 +594287.39 5679984.48 113.75 +594288.25 5680203.92 120.00 +594288.27 5680345.18 125.00 +594288.50 5680648.55 123.75 +594288.58 5680486.71 123.75 +594288.72 5680734.92 123.75 +594288.74 5680610.93 122.50 +594288.99 5681055.24 111.25 +594289.01 5681136.44 107.50 +594289.50 5681005.08 115.00 +594289.55 5681107.01 108.75 +594289.74 5684661.12 120.00 +594289.84 5680899.84 121.25 +594290.09 5684817.35 125.00 +594290.16 5680401.61 126.25 +594290.18 5679556.88 121.25 +594290.24 5680094.20 117.50 +594290.52 5680427.99 126.25 +594290.65 5679228.93 121.25 +594290.71 5680065.11 116.25 +594291.10 5680516.58 122.50 +594291.39 5680269.61 121.25 +594292.22 5680454.89 125.00 +594292.24 5680151.37 118.75 +594292.38 5679742.67 113.75 +594292.61 5681075.52 110.00 +594292.74 5680813.60 122.50 +594292.86 5681024.22 113.75 +594294.14 5685319.47 125.00 +594295.44 5680322.51 123.75 +594295.44 5680030.40 115.00 +594295.67 5681170.37 106.25 +594295.77 5680261.00 121.25 +594295.97 5680292.99 122.50 +594296.13 5680409.61 126.25 +594296.29 5681039.81 112.50 +594296.31 5681194.13 105.00 +594296.98 5685557.55 120.00 +594297.30 5679985.09 113.75 +594297.32 5680481.95 123.75 +594297.42 5680200.09 120.00 +594297.59 5680614.41 122.50 +594298.00 5681006.22 115.00 +594298.01 5680651.40 123.75 +594298.03 5680346.87 125.00 +594298.34 5684822.94 125.00 +594298.44 5680732.76 123.75 +594298.66 5681139.00 107.50 +594298.73 5681057.16 111.25 +594298.74 5680510.92 122.50 +594299.02 5680251.55 121.25 +594299.14 5681109.84 108.75 +594299.31 5680896.76 121.25 +594299.48 5679224.26 121.25 +594299.65 5679554.34 121.25 +594299.72 5684660.87 120.00 +594299.75 5680091.27 117.50 +594299.88 5680425.21 126.25 +594300.12 5680806.93 122.50 +594300.32 5680062.35 116.25 +594300.52 5680145.77 118.75 +594301.40 5679745.94 113.75 +594301.51 5681080.04 110.00 +594302.10 5680417.60 126.25 +594302.53 5681026.78 113.75 +594302.66 5680242.24 121.25 +594303.77 5685322.12 125.00 +594304.56 5681174.91 106.25 +594305.04 5680319.76 123.75 +594305.14 5680552.06 121.25 +594305.38 5680030.65 115.00 +594305.52 5680290.24 122.50 +594305.71 5680542.47 121.25 +594305.75 5680657.66 123.75 +594305.76 5681042.81 112.50 +594305.90 5681196.87 105.00 +594306.06 5680561.56 121.25 +594306.32 5680195.70 120.00 +594306.39 5684828.86 125.00 +594306.39 5680617.88 122.50 +594306.45 5681007.57 115.00 +594306.60 5680505.55 122.50 +594306.70 5680532.89 121.25 +594306.78 5685555.74 120.00 +594306.89 5679987.91 113.75 +594307.50 5680800.25 122.50 +594307.51 5679894.44 112.50 +594307.84 5680347.52 125.00 +594307.99 5679904.24 112.50 +594308.10 5680730.41 123.75 +594308.29 5681141.61 107.50 +594308.40 5681059.42 111.25 +594308.52 5679220.19 121.25 +594308.57 5680523.47 121.25 +594308.74 5681112.58 108.75 +594308.79 5680140.16 118.75 +594308.82 5680234.53 121.25 +594308.91 5679884.76 112.50 +594309.13 5679752.23 113.75 +594309.39 5680088.84 117.50 +594309.53 5684662.38 120.00 +594309.64 5679554.46 121.25 +594310.02 5680060.04 116.25 +594310.61 5680570.05 121.25 +594310.86 5681083.40 110.00 +594311.11 5679913.04 112.50 +594311.11 5680514.17 121.25 +594312.19 5681029.33 113.75 +594312.23 5679875.58 112.50 +594313.09 5680664.35 123.75 +594313.40 5685324.76 125.00 +594313.52 5681179.22 106.25 +594314.44 5684834.77 125.00 +594314.54 5681010.42 115.00 +594314.65 5680317.01 123.75 +594314.78 5680286.96 122.50 +594314.85 5680190.59 120.00 +594314.87 5680622.19 122.50 +594315.25 5680032.02 115.00 +594315.36 5681045.36 112.50 +594315.49 5681199.60 105.00 +594315.55 5680794.57 122.50 +594315.64 5680227.23 121.25 +594316.26 5679866.64 112.50 +594316.48 5679759.00 113.75 +594316.49 5679990.72 113.75 +594316.70 5685554.65 120.00 +594317.26 5680726.52 123.75 +594317.69 5680576.32 121.25 +594317.73 5680346.97 125.00 +594317.90 5681144.30 107.50 +594317.93 5680136.20 118.75 +594318.07 5681061.68 111.25 +594318.35 5681115.32 108.75 +594318.38 5679218.59 121.25 +594318.92 5679918.90 112.50 +594319.20 5680087.19 117.50 +594319.23 5684664.69 120.00 +594319.63 5679554.54 121.25 +594319.85 5680671.65 123.75 +594319.96 5680058.97 116.25 +594320.17 5684842.92 125.00 +594320.51 5681085.97 110.00 +594320.71 5679857.89 112.50 +594321.88 5681031.43 113.75 +594322.12 5680280.25 122.50 +594322.80 5681012.53 115.00 +594322.97 5680627.19 122.50 +594323.03 5685327.40 125.00 +594323.17 5680220.72 121.25 +594323.36 5681180.94 106.25 +594323.39 5680185.49 120.00 +594323.41 5680312.38 123.75 +594323.56 5679766.05 113.75 +594324.48 5680790.19 122.50 +594324.97 5680034.36 115.00 +594325.00 5681047.74 112.50 +594325.07 5681202.34 105.00 +594325.63 5679849.48 112.50 +594325.85 5684851.14 125.00 +594325.91 5680581.28 121.25 +594326.08 5679993.52 113.75 +594326.62 5685553.77 120.00 +594326.73 5679924.75 112.50 +594326.92 5680724.18 123.75 +594327.14 5680678.37 123.75 +594327.22 5681147.87 107.50 +594327.24 5680132.58 118.75 +594327.31 5680345.49 125.00 +594327.74 5681063.94 111.25 +594328.00 5681117.90 108.75 +594328.03 5680923.80 120.00 +594328.24 5679216.99 121.25 +594328.66 5684667.95 120.00 +594328.67 5680272.97 122.50 +594329.02 5680085.53 117.50 +594329.62 5679554.46 121.25 +594329.90 5680057.90 116.25 +594330.13 5681088.65 110.00 +594330.31 5680633.24 122.50 +594330.46 5679773.28 113.75 +594331.02 5680179.14 120.00 +594331.22 5680214.80 121.25 +594331.34 5681013.31 115.00 +594331.52 5684859.36 125.00 +594331.76 5681029.87 113.75 +594331.85 5680307.02 123.75 +594332.56 5679842.53 112.50 +594332.75 5680263.90 122.50 +594332.87 5685328.81 125.00 +594333.19 5681182.66 106.25 +594333.42 5680785.81 122.50 +594333.87 5680916.37 120.00 +594334.54 5680585.55 121.25 +594334.66 5681205.09 105.00 +594334.69 5680036.70 115.00 +594334.80 5681048.54 112.50 +594335.07 5680684.39 123.75 +594335.62 5680254.45 122.50 +594335.63 5680340.13 125.00 +594335.70 5679928.56 112.50 +594335.91 5679995.37 113.75 +594336.27 5680720.99 123.75 +594336.54 5685554.86 120.00 +594336.55 5681151.43 107.50 +594336.61 5680129.10 118.75 +594336.91 5684867.75 125.00 +594337.37 5679780.50 113.75 +594337.46 5681065.98 111.25 +594337.57 5680244.70 122.50 +594337.63 5680639.34 122.50 +594337.66 5681120.44 108.75 +594337.78 5684671.84 120.00 +594338.11 5679215.46 121.25 +594338.80 5680083.69 117.50 +594339.12 5680300.23 123.75 +594339.14 5680173.50 120.00 +594339.27 5680208.88 121.25 +594339.61 5679554.39 121.25 +594339.63 5681091.73 110.00 +594339.82 5680909.09 120.00 +594339.88 5681014.10 115.00 +594339.90 5680057.71 116.25 +594340.72 5679837.99 112.50 +594341.56 5680235.84 122.50 +594341.63 5681028.31 113.75 +594341.79 5684876.46 125.00 +594342.35 5680781.43 122.50 +594342.83 5685329.46 125.00 +594342.85 5680590.43 121.25 +594342.95 5681184.71 106.25 +594343.00 5680690.41 123.75 +594343.95 5680334.76 125.00 +594344.23 5681207.87 105.00 +594344.39 5680039.11 115.00 +594344.71 5681047.97 112.50 +594344.76 5679932.20 112.50 +594344.83 5680716.09 123.75 +594344.86 5679787.11 113.75 +594345.25 5680292.41 123.75 +594345.73 5679997.22 113.75 +594345.80 5684885.56 125.00 +594345.87 5681155.00 107.50 +594346.03 5684677.45 120.00 +594346.16 5680126.16 118.75 +594346.47 5685555.96 120.00 +594347.22 5681067.84 111.25 +594347.29 5681123.08 108.75 +594347.43 5680227.82 122.50 +594347.69 5680698.74 123.75 +594347.82 5680168.64 120.00 +594347.89 5680203.87 121.25 +594348.10 5679215.46 121.25 +594348.47 5680081.34 117.50 +594348.47 5680905.31 120.00 +594348.93 5684895.04 125.00 +594349.12 5681094.82 110.00 +594349.25 5680326.44 125.00 +594349.61 5679554.31 121.25 +594349.89 5680057.52 116.25 +594350.40 5679838.94 112.50 +594350.54 5680283.93 123.75 +594350.82 5680708.19 123.75 +594351.15 5680595.32 121.25 +594351.51 5681026.76 113.75 +594352.09 5680779.46 122.50 +594352.32 5684904.38 125.00 +594352.39 5679793.68 113.75 +594352.60 5681187.27 106.25 +594352.80 5685330.10 125.00 +594352.81 5684684.70 120.00 +594352.91 5679937.52 112.50 +594353.80 5681210.66 105.00 +594354.07 5680041.62 115.00 +594354.42 5680318.00 125.00 +594354.62 5680221.07 122.50 +594354.63 5681047.40 112.50 +594355.41 5679999.49 113.75 +594355.42 5681157.89 107.50 +594355.71 5680123.22 118.75 +594355.84 5680275.46 123.75 +594356.30 5681127.40 108.75 +594356.39 5685557.05 120.00 +594356.67 5680164.11 120.00 +594356.67 5681070.62 111.25 +594356.74 5680199.23 121.25 +594357.13 5680901.53 120.00 +594357.43 5680265.75 123.75 +594358.09 5679215.46 121.25 +594358.14 5680078.98 117.50 +594358.28 5680255.79 123.75 +594358.32 5684912.37 125.00 +594358.64 5681097.83 110.00 +594359.19 5684692.37 120.00 +594359.57 5679553.69 121.25 +594359.59 5680309.56 125.00 +594359.89 5680057.33 116.25 +594359.92 5679800.25 113.75 +594360.07 5679840.62 112.50 +594360.91 5679943.12 112.50 +594361.43 5681026.02 113.75 +594361.67 5680246.59 123.75 +594361.86 5680777.59 122.50 +594362.24 5681189.84 106.25 +594362.52 5680215.06 122.50 +594362.75 5685330.52 125.00 +594363.38 5681213.45 105.00 +594364.01 5680042.59 115.00 +594364.22 5680300.80 125.00 +594364.29 5680004.08 113.75 +594364.32 5684920.35 125.00 +594364.42 5681048.39 112.50 +594364.60 5680118.74 118.75 +594364.99 5681160.72 107.50 +594365.30 5681131.72 108.75 +594365.56 5680194.55 121.25 +594365.57 5684700.04 120.00 +594365.59 5681074.99 111.25 +594365.70 5680159.96 120.00 +594365.78 5685560.16 120.00 +594365.82 5680897.85 120.00 +594367.54 5679218.59 121.25 +594367.65 5680238.72 123.75 +594367.81 5680076.62 117.50 +594368.16 5681100.85 110.00 +594368.44 5679805.37 113.75 +594368.63 5679949.08 112.50 +594368.85 5680292.05 125.00 +594369.54 5679552.91 121.25 +594369.76 5679842.15 112.50 +594369.88 5680057.14 116.25 +594370.35 5684928.30 125.00 +594370.67 5680282.48 125.00 +594371.37 5680210.52 122.50 +594371.42 5681026.37 113.75 +594371.46 5680272.61 125.00 +594371.63 5680775.72 122.50 +594371.73 5684707.89 120.00 +594371.98 5681192.02 106.25 +594372.63 5685329.06 125.00 +594372.78 5681216.72 105.00 +594373.18 5680008.67 113.75 +594373.30 5680113.83 118.75 +594373.84 5680263.08 125.00 +594373.97 5680043.47 115.00 +594374.10 5681050.61 112.50 +594374.12 5680189.41 121.25 +594374.21 5681136.24 108.75 +594374.51 5681079.36 111.25 +594374.56 5681163.55 107.50 +594374.72 5680231.65 123.75 +594374.74 5680155.81 120.00 +594374.98 5685564.04 120.00 +594375.06 5680895.92 120.00 +594376.01 5679955.46 112.50 +594376.54 5679222.91 121.25 +594377.10 5680253.73 125.00 +594377.33 5679809.93 113.75 +594377.39 5680073.90 117.50 +594377.61 5684935.17 125.00 +594377.69 5681103.86 110.00 +594377.83 5684715.79 120.00 +594379.29 5679551.14 121.25 +594379.49 5679843.40 112.50 +594379.73 5680055.58 116.25 +594380.22 5680205.99 122.50 +594381.41 5680773.85 122.50 +594381.41 5681026.72 113.75 +594381.44 5681195.16 106.25 +594381.75 5680245.13 125.00 +594381.82 5680108.63 118.75 +594381.97 5681220.58 105.00 +594382.06 5680013.26 113.75 +594382.06 5680224.94 123.75 +594382.12 5680183.43 121.25 +594382.51 5685327.60 125.00 +594382.92 5681141.14 108.75 +594383.40 5679961.84 112.50 +594383.43 5681083.72 111.25 +594383.76 5681052.94 112.50 +594383.78 5680151.66 120.00 +594383.93 5680044.34 115.00 +594383.97 5681166.82 107.50 +594384.18 5685567.91 120.00 +594384.30 5680893.98 120.00 +594384.86 5684942.04 125.00 +594384.88 5680281.16 126.25 +594384.97 5684722.73 120.00 +594385.45 5679227.43 121.25 +594385.50 5680290.98 126.25 +594385.54 5680271.26 126.25 +594386.42 5679466.14 121.25 +594386.42 5679476.13 121.25 +594386.42 5679486.12 121.25 +594386.42 5679496.11 121.25 +594386.74 5679544.97 121.25 +594386.82 5679812.85 113.75 +594386.94 5680071.10 117.50 +594387.09 5681107.21 110.00 +594387.28 5680261.48 126.25 +594387.84 5679506.00 121.25 +594387.91 5679456.27 121.25 +594388.33 5680238.02 125.00 +594389.07 5680201.45 122.50 +594389.22 5679844.68 112.50 +594389.28 5679515.89 121.25 +594389.52 5680053.57 116.25 +594389.53 5679535.64 121.25 +594389.72 5679446.45 121.25 +594389.73 5680102.52 118.75 +594390.13 5680177.45 121.25 +594390.67 5679968.36 112.50 +594390.71 5679525.78 121.25 +594390.72 5680219.96 123.75 +594390.81 5681198.62 106.25 +594391.05 5681029.03 113.75 +594391.08 5680252.40 126.25 +594391.16 5681224.45 105.00 +594391.21 5680772.33 122.50 +594391.57 5680015.34 113.75 +594391.75 5681145.80 108.75 +594391.81 5680145.80 120.00 +594391.98 5679436.71 121.25 +594391.99 5685324.79 125.00 +594392.35 5684729.45 120.00 +594392.43 5681087.87 111.25 +594392.86 5680297.66 126.25 +594392.99 5681171.10 107.50 +594392.99 5679233.86 121.25 +594393.29 5681055.74 112.50 +594393.52 5685571.41 120.00 +594393.56 5680892.19 120.00 +594393.61 5679376.98 121.25 +594393.66 5679426.90 121.25 +594393.73 5679386.97 121.25 +594393.84 5680044.36 115.00 +594393.86 5679396.96 121.25 +594393.91 5679366.99 121.25 +594393.98 5684946.03 125.00 +594394.26 5679416.92 121.25 +594394.27 5679406.94 121.25 +594394.37 5679357.01 121.25 +594396.16 5679347.31 121.25 +594396.34 5681110.95 110.00 +594396.49 5680068.30 117.50 +594396.55 5680095.31 118.75 +594396.57 5679815.03 113.75 +594396.77 5680260.93 127.50 +594396.77 5680270.14 127.50 +594397.49 5680234.26 125.00 +594397.63 5680196.42 122.50 +594397.69 5679975.14 112.50 +594397.85 5680171.12 121.25 +594398.26 5680246.86 126.25 +594398.83 5679846.68 112.50 +594399.41 5680052.15 116.25 +594399.46 5680139.58 120.00 +594399.78 5679338.00 121.25 +594400.09 5680216.62 123.75 +594400.13 5679240.85 121.25 +594400.18 5681202.05 106.25 +594400.44 5684735.22 120.00 +594400.54 5681032.20 113.75 +594400.70 5681227.18 105.00 +594400.84 5681149.94 108.75 +594401.11 5685320.71 125.00 +594401.16 5680772.56 122.50 +594401.20 5680277.29 127.50 +594401.57 5680015.51 113.75 +594402.00 5681175.38 107.50 +594402.04 5680301.14 126.25 +594402.04 5681090.40 111.25 +594402.77 5679328.48 121.25 +594402.77 5680087.49 118.75 +594402.81 5681058.55 112.50 +594402.91 5685574.78 120.00 +594402.95 5680254.04 127.50 +594402.99 5680892.65 120.00 +594403.18 5684949.90 125.00 +594403.68 5680042.57 115.00 +594404.41 5679249.81 121.25 +594404.49 5680130.99 120.00 +594405.07 5679981.39 112.50 +594405.16 5679318.78 121.25 +594405.24 5680164.40 121.25 +594405.60 5681114.70 110.00 +594405.92 5680190.94 122.50 +594406.04 5680065.50 117.50 +594406.32 5679817.21 113.75 +594406.49 5680230.24 125.00 +594406.91 5680209.39 123.75 +594407.14 5679259.39 121.25 +594407.17 5679309.01 121.25 +594407.79 5680244.07 126.25 +594408.16 5680121.89 120.00 +594408.27 5679299.08 121.25 +594408.44 5679848.68 112.50 +594408.51 5678867.03 110.00 +594408.65 5684740.79 120.00 +594408.96 5679289.13 121.25 +594408.99 5679279.14 121.25 +594409.21 5679269.15 121.25 +594409.35 5680051.05 116.25 +594409.92 5681154.10 108.75 +594409.99 5681203.86 106.25 +594410.02 5681035.36 113.75 +594410.08 5680278.26 127.50 +594410.13 5680112.14 120.00 +594410.22 5685316.62 125.00 +594410.32 5680081.30 118.75 +594410.48 5681229.10 105.00 +594410.94 5680249.57 127.50 +594411.10 5680772.79 122.50 +594411.21 5680259.09 127.80 +594411.22 5681179.06 107.50 +594411.57 5680015.68 113.75 +594411.64 5681092.93 111.25 +594411.86 5680302.10 126.25 +594412.26 5680157.42 121.25 +594412.31 5685578.15 120.00 +594412.33 5681061.39 112.50 +594412.47 5684953.56 125.00 +594412.68 5680102.66 120.00 +594413.47 5680040.62 115.00 +594413.62 5680201.98 123.75 +594414.01 5679985.33 112.50 +594414.06 5680185.23 122.50 +594414.21 5680224.03 125.00 +594414.96 5680061.19 117.50 +594415.03 5681117.96 110.00 +594415.70 5684747.85 120.00 +594415.74 5678873.91 110.00 +594415.82 5679820.26 113.75 +594416.03 5680148.17 121.25 +594416.37 5680108.59 121.25 +594416.84 5679853.40 112.50 +594417.06 5680118.56 121.25 +594417.55 5680243.66 126.25 +594417.67 5680273.34 127.50 +594417.76 5680128.52 121.25 +594417.83 5680138.51 121.25 +594418.56 5680047.33 116.25 +594418.83 5680094.91 120.00 +594418.91 5681158.47 108.75 +594419.08 5679748.31 115.00 +594419.24 5680076.77 118.75 +594419.24 5681039.12 113.75 +594419.30 5685312.48 125.00 +594419.61 5680250.19 127.50 +594419.81 5681205.68 106.25 +594420.08 5680216.28 125.00 +594420.31 5681230.62 105.00 +594420.45 5680194.70 123.75 +594420.59 5680100.40 121.25 +594420.76 5681000.71 115.00 +594421.00 5681181.04 107.50 +594421.20 5681095.62 111.25 +594421.38 5681065.34 112.50 +594421.55 5680015.37 113.75 +594421.77 5680301.65 126.25 +594421.91 5684956.83 125.00 +594421.95 5685577.42 120.00 +594422.12 5680179.41 122.50 +594422.43 5679738.97 115.00 +594422.62 5680265.96 127.50 +594422.68 5680036.74 115.00 +594422.76 5684754.91 120.00 +594422.98 5678880.79 110.00 +594423.16 5679988.47 112.50 +594423.63 5680056.31 117.50 +594423.87 5679756.48 115.00 +594424.55 5681120.98 110.00 +594424.56 5680101.43 122.50 +594424.57 5680256.93 127.50 +594424.78 5679859.17 112.50 +594424.89 5680111.33 122.50 +594424.97 5680207.68 125.00 +594425.20 5679823.72 113.75 +594426.00 5680503.86 119.00 +594426.63 5679730.05 115.00 +594426.83 5680494.12 119.00 +594427.43 5680244.74 126.25 +594427.56 5680090.38 120.00 +594427.65 5680043.16 116.25 +594427.91 5680188.05 123.75 +594427.94 5681044.03 113.75 +594427.99 5680513.41 119.00 +594428.02 5684763.36 120.00 +594428.15 5680072.25 118.75 +594428.17 5685307.90 125.00 +594428.39 5681161.01 108.75 +594428.53 5681005.81 115.00 +594428.79 5680094.81 121.25 +594429.44 5680172.77 122.50 +594429.70 5681206.91 106.25 +594430.05 5680485.02 119.00 +594430.06 5681070.17 112.50 +594430.07 5680522.96 119.00 +594430.13 5678887.76 110.00 +594430.24 5680119.26 122.50 +594430.28 5681230.58 105.00 +594430.49 5679763.83 115.00 +594430.65 5681098.67 111.25 +594430.79 5681183.02 107.50 +594431.15 5684960.51 125.00 +594431.27 5679866.47 112.50 +594431.31 5685574.38 120.00 +594431.51 5680014.53 113.75 +594431.65 5680300.60 126.25 +594431.76 5680780.30 119.00 +594431.79 5680770.47 119.00 +594432.03 5680033.36 115.00 +594432.10 5680790.13 119.00 +594432.20 5680201.84 125.00 +594432.25 5680096.32 122.50 +594432.50 5680051.79 117.50 +594432.52 5679722.23 115.00 +594432.54 5680532.38 119.00 +594432.85 5679989.66 112.50 +594433.10 5680082.18 120.00 +594433.10 5680799.90 119.00 +594433.11 5684771.95 120.00 +594433.13 5679829.23 113.75 +594433.18 5680220.04 126.25 +594433.19 5680210.44 126.25 +594433.96 5680761.01 119.00 +594434.05 5681124.06 110.00 +594434.44 5680476.33 119.00 +594434.57 5679875.56 112.50 +594435.04 5680087.07 121.25 +594435.26 5680127.81 122.50 +594435.34 5680065.50 118.75 +594435.44 5680107.45 123.75 +594435.45 5681011.99 115.00 +594436.05 5680165.34 122.50 +594436.22 5680751.47 119.00 +594436.48 5680117.21 123.75 +594436.65 5680808.74 119.00 +594436.72 5681048.83 113.75 +594436.92 5680541.12 119.00 +594437.05 5685303.32 125.00 +594437.06 5678894.94 110.00 +594437.12 5680040.51 116.25 +594437.14 5680184.30 123.75 +594437.16 5679885.03 112.50 +594437.33 5680245.47 126.25 +594438.13 5680074.34 120.00 +594438.21 5684780.53 120.00 +594438.35 5681161.82 108.75 +594438.46 5679769.38 115.00 +594438.90 5680089.47 122.50 +594439.10 5681074.28 112.50 +594439.14 5680227.64 126.25 +594439.32 5680742.27 119.00 +594439.38 5685568.52 120.00 +594439.59 5679836.86 113.75 +594439.66 5681207.52 106.25 +594439.70 5684965.66 125.00 +594439.77 5680136.60 122.50 +594439.95 5680156.23 122.50 +594440.03 5680468.61 119.00 +594440.11 5681101.73 111.25 +594440.16 5680126.02 123.75 +594440.25 5681230.54 105.00 +594440.52 5680146.52 122.50 +594440.57 5681185.00 107.50 +594440.98 5679717.05 115.00 +594441.05 5679893.92 112.50 +594441.07 5680099.40 123.75 +594441.11 5680079.14 121.25 +594441.21 5680298.04 126.25 +594441.49 5680014.77 113.75 +594441.54 5680047.63 117.50 +594441.91 5680459.02 119.00 +594441.94 5680207.54 126.25 +594441.95 5680032.20 115.00 +594441.99 5680200.32 125.00 +594442.28 5681018.29 115.00 +594442.54 5679990.85 112.50 +594442.68 5680059.02 118.75 +594442.91 5680081.05 122.50 +594442.93 5680816.31 119.00 +594443.11 5680548.42 119.00 +594443.30 5684789.11 120.00 +594443.72 5681126.34 110.00 +594443.73 5678902.38 110.00 +594443.79 5680449.42 119.00 +594443.89 5680733.56 119.00 +594445.57 5681053.48 113.75 +594445.74 5680439.85 119.00 +594445.92 5685298.74 125.00 +594446.00 5680133.89 123.75 +594446.05 5679844.49 113.75 +594446.29 5680242.54 126.25 +594446.30 5680180.32 123.75 +594446.37 5679902.16 112.50 +594446.44 5680234.38 126.25 +594446.67 5685561.90 120.00 +594446.99 5684972.17 125.00 +594447.09 5680039.90 116.25 +594447.10 5680070.17 120.00 +594447.71 5680430.27 119.00 +594447.72 5680092.23 123.75 +594447.77 5679772.80 115.00 +594448.16 5681078.36 112.50 +594448.28 5681161.56 108.75 +594448.34 5684797.73 120.00 +594448.74 5680101.46 125.00 +594448.79 5681024.92 115.00 +594449.04 5680725.18 119.00 +594449.40 5680292.86 126.25 +594449.44 5679711.86 115.00 +594449.63 5681207.77 106.25 +594449.74 5681103.83 111.25 +594449.79 5680074.74 121.25 +594450.15 5681229.96 105.00 +594450.25 5680109.69 125.00 +594450.29 5681183.16 107.50 +594450.40 5678909.81 110.00 +594450.51 5680212.52 126.25 +594450.60 5680554.70 119.00 +594451.17 5680047.27 117.50 +594451.26 5680821.42 119.00 +594451.48 5680015.25 113.75 +594451.83 5680200.56 125.00 +594451.88 5680055.13 118.75 +594451.91 5680076.82 122.50 +594451.95 5680032.14 115.00 +594452.11 5685553.54 120.00 +594452.21 5679991.26 112.50 +594452.39 5679852.17 113.75 +594452.57 5680141.20 123.75 +594452.75 5684980.33 125.00 +594452.84 5679909.34 112.50 +594453.36 5684806.35 120.00 +594453.64 5681127.47 110.00 +594453.91 5679862.04 113.75 +594454.19 5680716.79 119.00 +594454.46 5681058.03 113.75 +594454.62 5679746.79 116.25 +594455.00 5680175.50 123.75 +594455.10 5680099.53 125.00 +594455.16 5685295.10 125.00 +594455.18 5679737.77 116.25 +594455.44 5679871.92 113.75 +594455.82 5681030.90 115.00 +594455.93 5680285.45 126.25 +594456.50 5680066.93 120.00 +594456.61 5680103.84 125.10 +594456.67 5680427.05 119.00 +594456.82 5678917.44 110.00 +594457.07 5680114.61 125.00 +594457.07 5680039.28 116.25 +594457.09 5679776.22 115.00 +594457.25 5680091.30 123.75 +594457.27 5679706.36 115.00 +594457.49 5681081.50 112.50 +594458.01 5681159.53 108.75 +594458.32 5679881.25 113.75 +594458.43 5685545.90 120.00 +594458.51 5684988.49 125.00 +594458.56 5684814.85 120.00 +594458.62 5680218.27 126.25 +594458.80 5680070.43 121.25 +594459.61 5681207.44 106.25 +594459.65 5681104.49 111.25 +594459.76 5680558.11 119.00 +594459.79 5681227.40 105.00 +594459.80 5679754.64 116.25 +594459.85 5681180.41 107.50 +594460.24 5679711.43 116.25 +594460.31 5680825.19 119.00 +594460.73 5679915.17 112.50 +594460.96 5680146.23 123.75 +594460.97 5680276.89 126.25 +594461.02 5679989.49 112.50 +594461.04 5680104.53 125.00 +594461.05 5680048.50 117.50 +594461.05 5679721.29 116.25 +594461.08 5679729.82 116.25 +594461.44 5680014.98 113.75 +594461.46 5680199.47 125.00 +594461.56 5680074.62 122.50 +594461.61 5679697.99 115.00 +594461.63 5680055.20 118.75 +594461.67 5680710.40 119.00 +594461.94 5680032.08 115.00 +594462.46 5678925.68 110.00 +594462.91 5680169.51 123.75 +594462.97 5679702.18 116.25 +594463.14 5680112.56 125.00 +594463.41 5681125.78 110.00 +594463.75 5681035.74 115.00 +594464.00 5681061.02 113.75 +594464.04 5679889.46 113.75 +594464.26 5684996.65 125.00 +594464.83 5685292.62 125.00 +594465.04 5684822.44 120.00 +594465.42 5680096.11 123.75 +594465.45 5680268.02 126.25 +594465.65 5685539.01 120.00 +594465.73 5680063.23 120.00 +594465.79 5679780.95 115.00 +594466.08 5680429.12 119.00 +594466.19 5680224.69 126.25 +594467.01 5679067.52 110.00 +594467.07 5680039.47 116.25 +594467.34 5681082.80 112.50 +594467.38 5679922.15 112.50 +594467.39 5681156.11 108.75 +594467.56 5679057.55 110.00 +594467.62 5679760.68 116.25 +594467.64 5679077.32 110.00 +594468.10 5678933.92 110.00 +594468.59 5680069.42 121.25 +594468.64 5679985.89 112.50 +594468.92 5680561.52 119.00 +594468.93 5681176.26 107.50 +594469.21 5681204.79 106.25 +594469.24 5679047.78 110.00 +594469.28 5680142.14 123.75 +594469.42 5681224.85 105.00 +594469.56 5681105.14 111.25 +594469.65 5680828.17 119.00 +594469.67 5680704.76 119.00 +594470.02 5685004.81 125.00 +594470.54 5679695.68 115.00 +594470.56 5679896.91 113.75 +594470.60 5680259.52 126.25 +594470.70 5680104.39 123.75 +594470.84 5680196.29 125.00 +594470.95 5680049.27 117.50 +594471.03 5680074.29 122.50 +594471.04 5679086.71 110.00 +594471.33 5679700.45 116.25 +594471.37 5680013.84 113.75 +594471.54 5680056.21 118.75 +594471.83 5680030.65 115.00 +594471.88 5680166.82 123.75 +594472.01 5679038.18 110.00 +594472.21 5684829.11 120.00 +594472.46 5681037.83 115.00 +594472.51 5679929.58 112.50 +594472.61 5680113.95 123.75 +594472.63 5680231.97 126.25 +594472.98 5680133.53 123.75 +594473.11 5681123.40 110.00 +594473.20 5680123.71 123.75 +594473.35 5678942.40 110.00 +594473.54 5681064.01 113.75 +594474.51 5685290.21 125.00 +594474.55 5685535.55 120.00 +594474.57 5679785.55 115.00 +594474.78 5679028.59 110.00 +594475.01 5679980.07 112.50 +594475.10 5680060.75 120.00 +594475.17 5680432.62 119.00 +594475.59 5680251.01 126.25 +594476.16 5679765.69 116.25 +594476.34 5680241.10 126.25 +594476.34 5679095.16 110.00 +594476.37 5681151.73 108.75 +594476.52 5679937.67 112.50 +594476.69 5685012.23 125.00 +594477.06 5680039.73 116.25 +594477.23 5681083.29 112.50 +594477.55 5679018.99 110.00 +594477.82 5680565.54 119.00 +594478.00 5681172.10 107.50 +594478.14 5678951.16 110.00 +594478.20 5679903.36 113.75 +594478.26 5679706.59 116.25 +594478.43 5680700.34 119.00 +594478.58 5680069.28 121.25 +594478.78 5681201.96 106.25 +594479.05 5681222.26 105.00 +594479.21 5680079.94 122.50 +594479.44 5681104.57 111.25 +594479.45 5680829.08 119.00 +594479.61 5679851.55 115.00 +594479.84 5679861.43 115.00 +594479.96 5680199.46 125.00 +594480.12 5679009.34 110.00 +594480.18 5679871.35 115.00 +594480.45 5679695.14 115.00 +594480.52 5679881.26 115.00 +594480.86 5679891.18 115.00 +594480.91 5680049.15 117.50 +594481.09 5680361.83 120.00 +594481.16 5679945.38 112.50 +594481.29 5679873.82 116.25 +594481.30 5680012.70 113.75 +594481.33 5684833.16 120.00 +594481.34 5680170.03 123.75 +594481.45 5680055.35 118.75 +594481.75 5681037.65 115.00 +594481.77 5680029.96 115.00 +594481.80 5679103.51 110.00 +594481.92 5678960.28 110.00 +594482.56 5678999.66 110.00 +594482.74 5681120.75 110.00 +594483.02 5680438.24 119.00 +594483.03 5679883.53 116.25 +594483.07 5679790.41 115.00 +594483.11 5681065.78 113.75 +594483.15 5679864.35 116.25 +594483.39 5679976.88 112.50 +594483.46 5685019.57 125.00 +594483.72 5678970.10 110.00 +594484.42 5685534.08 120.00 +594484.48 5685290.74 125.00 +594484.52 5680062.39 120.00 +594484.79 5678989.95 110.00 +594484.80 5679770.52 116.25 +594484.99 5679712.49 116.25 +594485.02 5678979.97 110.00 +594485.12 5680087.82 122.50 +594485.15 5681146.97 108.75 +594485.84 5679909.80 113.75 +594486.19 5679844.12 115.00 +594486.48 5680075.16 121.25 +594486.63 5680569.78 119.00 +594486.70 5679898.68 115.00 +594486.72 5680205.68 125.00 +594486.77 5681167.34 107.50 +594487.05 5680039.35 116.25 +594487.16 5681083.09 112.50 +594487.38 5681197.02 106.25 +594487.60 5679951.36 112.50 +594487.62 5680696.82 119.00 +594487.68 5679891.91 116.25 +594487.75 5679111.53 110.00 +594487.87 5680097.27 122.50 +594487.98 5681217.83 105.00 +594488.17 5680176.90 123.75 +594488.36 5679878.22 117.50 +594488.61 5680445.86 119.00 +594489.08 5680107.08 122.50 +594489.16 5680117.03 122.50 +594489.17 5679798.23 115.00 +594489.22 5680830.22 119.00 +594489.30 5681103.35 111.25 +594489.33 5680126.96 122.50 +594489.76 5679856.94 116.25 +594490.00 5680136.89 122.50 +594490.23 5685026.91 125.00 +594490.26 5679695.50 115.00 +594490.44 5679868.54 117.50 +594490.45 5684837.21 120.00 +594490.49 5680214.83 125.00 +594490.70 5679835.28 115.00 +594490.86 5680049.15 117.50 +594491.03 5681037.30 115.00 +594491.03 5680361.83 120.00 +594491.14 5680455.30 119.00 +594491.23 5680011.58 113.75 +594491.27 5680057.22 118.75 +594491.28 5680083.77 121.25 +594491.68 5680069.29 120.00 +594491.77 5680029.96 115.00 +594492.32 5681117.96 110.00 +594492.35 5679977.61 112.50 +594492.42 5679886.72 117.50 +594492.79 5681063.28 113.75 +594492.87 5680146.36 122.50 +594493.31 5680464.82 119.00 +594493.55 5679905.85 115.00 +594493.59 5680185.21 123.75 +594493.63 5679774.99 116.25 +594493.80 5679806.83 115.00 +594493.89 5680224.12 125.00 +594493.93 5681142.19 108.75 +594494.16 5679915.28 113.75 +594494.34 5685533.04 120.00 +594494.45 5685291.27 125.00 +594494.52 5680474.51 119.00 +594494.58 5679714.44 116.25 +594494.68 5679118.55 110.00 +594494.84 5679898.83 116.25 +594494.87 5679826.35 115.00 +594494.96 5680093.04 121.25 +594495.51 5679816.45 115.00 +594495.52 5681162.53 107.50 +594495.75 5681191.58 106.25 +594495.76 5680484.21 119.00 +594495.83 5679954.95 112.50 +594496.13 5680570.32 119.00 +594496.28 5679735.17 117.50 +594496.32 5679882.11 118.75 +594496.41 5680233.66 125.00 +594496.70 5681080.49 112.50 +594496.79 5679849.88 116.25 +594496.86 5679860.88 117.50 +594496.91 5681213.39 105.00 +594496.92 5680698.97 119.00 +594497.03 5680038.84 116.25 +594497.17 5680155.26 122.50 +594497.19 5680194.53 123.75 +594497.88 5680102.58 121.25 +594497.89 5680243.45 125.00 +594497.90 5679873.03 118.75 +594498.33 5680493.64 119.00 +594498.45 5680076.49 120.00 +594498.62 5680063.77 118.75 +594498.69 5685032.19 125.00 +594498.85 5679894.37 117.50 +594498.94 5680831.68 119.00 +594499.09 5680112.50 121.25 +594499.14 5681102.02 111.25 +594499.39 5680707.97 119.00 +594499.44 5680403.23 118.75 +594499.47 5679744.49 117.50 +594499.47 5680253.23 125.00 +594499.88 5679697.91 115.00 +594499.90 5684840.05 120.00 +594500.44 5679912.91 115.00 +594500.63 5679980.75 112.50 +594500.65 5680014.94 113.75 +594500.79 5680049.80 117.50 +594500.80 5680203.85 123.75 +594500.90 5680503.07 119.00 +594500.97 5680362.12 120.00 +594501.65 5680122.13 121.25 +594501.69 5681114.50 110.00 +594501.73 5679906.03 116.25 +594501.75 5680030.33 115.00 +594501.79 5681060.08 113.75 +594502.09 5679780.12 116.25 +594502.33 5680163.76 122.50 +594502.37 5680715.92 119.00 +594502.60 5679889.34 118.75 +594502.68 5681137.39 108.75 +594502.79 5679920.33 113.75 +594502.81 5680213.63 123.75 +594502.86 5679124.28 110.00 +594503.47 5680512.50 119.00 +594503.53 5680261.99 125.00 +594503.61 5679865.89 118.75 +594503.73 5680084.91 120.00 +594503.80 5679718.01 116.25 +594503.98 5681185.93 106.25 +594504.02 5681157.34 107.50 +594504.30 5685532.46 120.00 +594504.43 5685291.61 125.00 +594504.55 5681050.47 113.75 +594504.74 5679956.43 112.50 +594505.11 5680522.13 119.00 +594505.18 5679752.39 117.50 +594505.27 5680131.41 121.25 +594505.35 5679901.96 117.50 +594505.39 5679844.85 116.25 +594505.50 5680568.94 119.00 +594505.56 5679856.04 117.50 +594505.57 5680223.23 123.75 +594505.63 5681076.13 112.50 +594505.69 5680070.82 118.75 +594505.84 5681208.95 105.00 +594506.02 5679734.61 117.50 +594506.28 5679987.75 112.50 +594506.46 5680041.71 116.25 +594506.56 5680531.79 119.00 +594507.21 5685037.40 125.00 +594507.50 5680172.25 122.50 +594508.16 5680541.44 119.00 +594508.31 5680056.09 117.50 +594508.58 5680093.60 120.00 +594508.69 5680232.72 123.75 +594508.73 5680832.52 119.00 +594508.90 5681100.22 111.25 +594509.11 5679917.73 115.00 +594509.13 5679896.29 118.75 +594509.32 5680270.02 125.00 +594509.38 5680404.28 118.75 +594509.39 5679700.71 115.00 +594509.41 5679912.36 116.25 +594509.70 5680551.09 119.00 +594509.75 5680140.34 121.25 +594509.82 5684841.16 120.00 +594510.05 5680018.34 113.75 +594510.12 5679785.86 116.25 +594510.46 5679130.72 110.00 +594510.60 5681082.39 112.50 +594510.74 5680079.44 118.75 +594510.86 5680560.79 119.00 +594510.88 5680362.88 120.00 +594511.06 5681111.05 110.00 +594511.16 5679995.28 112.50 +594511.27 5680473.73 117.50 +594511.39 5680032.33 115.00 +594511.44 5681132.57 108.75 +594511.74 5680716.30 119.00 +594511.76 5679924.26 113.75 +594511.97 5680242.16 123.75 +594512.05 5681151.41 107.50 +594512.06 5680102.80 120.00 +594512.08 5679861.43 118.75 +594512.12 5681180.16 106.25 +594512.14 5681044.13 113.75 +594512.33 5680464.19 117.50 +594512.56 5679758.45 117.50 +594512.68 5680180.74 122.50 +594512.79 5679722.15 116.25 +594513.21 5679954.03 112.50 +594513.23 5680483.49 117.50 +594514.01 5679839.93 116.25 +594514.14 5680112.52 120.00 +594514.27 5680149.25 121.25 +594514.27 5685531.88 120.00 +594514.41 5685291.84 125.00 +594514.63 5679904.88 117.50 +594514.70 5680278.32 125.00 +594514.77 5681204.52 105.00 +594514.84 5679852.42 117.50 +594515.18 5680493.25 117.50 +594515.24 5680251.61 123.75 +594515.41 5680046.09 116.25 +594515.62 5680062.85 117.50 +594515.69 5680454.82 117.50 +594515.70 5679736.40 117.50 +594515.71 5680088.11 118.75 +594515.76 5685042.57 125.00 +594515.90 5679877.68 119.00 +594517.07 5680189.53 122.50 +594517.13 5680503.02 117.50 +594517.15 5681089.44 112.50 +594517.20 5680121.97 120.00 +594517.24 5679901.30 118.75 +594517.68 5679792.26 116.25 +594517.75 5679137.55 110.00 +594518.15 5680000.94 112.50 +594518.56 5680832.74 119.00 +594518.67 5681098.41 111.25 +594518.68 5679704.19 115.00 +594518.77 5680158.17 121.25 +594518.83 5679917.99 115.00 +594518.97 5680199.29 122.50 +594519.05 5680260.81 123.75 +594519.05 5680445.45 117.50 +594519.17 5680512.76 117.50 +594519.22 5679912.00 116.25 +594519.32 5680405.32 118.75 +594519.33 5680022.05 113.75 +594519.66 5679948.14 112.50 +594519.74 5684842.26 120.00 +594519.92 5680286.74 125.00 +594520.19 5681127.75 108.75 +594520.27 5681174.39 106.25 +594520.33 5681107.36 110.00 +594520.60 5680036.23 115.00 +594520.69 5680096.78 118.75 +594520.76 5680364.06 120.00 +594520.83 5680131.21 120.00 +594521.00 5681147.16 107.50 +594521.03 5680713.31 119.00 +594521.23 5681044.57 113.75 +594521.33 5679860.35 118.75 +594521.37 5680522.47 117.50 +594521.42 5680208.92 122.50 +594521.52 5679923.84 113.75 +594521.83 5679761.78 117.50 +594521.92 5679749.32 118.00 +594522.06 5679725.51 116.25 +594522.81 5680069.74 117.50 +594523.13 5680167.16 121.25 +594523.56 5680532.18 117.50 +594523.70 5681200.08 105.00 +594523.90 5679841.06 116.25 +594523.93 5680051.33 116.25 +594524.06 5680485.84 116.25 +594524.21 5685531.05 120.00 +594524.22 5679852.22 117.50 +594524.29 5680269.28 123.75 +594524.34 5685291.54 125.00 +594524.35 5679904.31 117.50 +594524.36 5685047.63 125.00 +594524.39 5680218.41 122.50 +594524.94 5679739.82 117.50 +594525.03 5679144.38 110.00 +594525.06 5679940.90 112.50 +594525.13 5680295.15 125.00 +594525.37 5680476.07 116.25 +594525.52 5680139.98 120.00 +594525.91 5679898.37 118.75 +594525.98 5679797.36 116.25 +594526.47 5680495.54 116.25 +594526.63 5680104.77 118.75 +594526.76 5681090.14 112.50 +594527.24 5680004.89 112.50 +594527.47 5680176.16 121.25 +594527.47 5680227.85 122.50 +594527.65 5680541.24 117.50 +594527.72 5680706.72 119.00 +594527.87 5680441.22 117.50 +594527.97 5679707.67 115.00 +594528.36 5679916.02 115.00 +594528.39 5681096.38 111.25 +594528.40 5680832.60 119.00 +594528.56 5679908.87 116.25 +594528.63 5681169.07 106.25 +594528.70 5680467.10 116.25 +594528.88 5680505.25 116.25 +594528.88 5680024.69 113.75 +594529.10 5679864.62 118.75 +594529.15 5684845.51 120.00 +594529.22 5680304.06 125.00 +594529.26 5680406.36 118.75 +594529.27 5680077.24 117.50 +594529.38 5681103.16 110.00 +594529.81 5680040.12 115.00 +594529.90 5681125.55 108.75 +594530.39 5681143.78 107.50 +594530.63 5680365.25 120.00 +594530.70 5681047.76 113.75 +594530.70 5679919.90 113.75 +594530.74 5680276.91 123.75 +594530.97 5680237.16 122.50 +594531.06 5680148.23 120.00 +594531.47 5679763.37 117.50 +594531.47 5680323.38 125.00 +594531.49 5680185.31 121.25 +594531.66 5679975.12 111.25 +594531.66 5679727.91 116.25 +594531.90 5680550.24 117.50 +594531.92 5680313.59 125.00 +594532.27 5679846.45 116.25 +594532.29 5679151.23 110.00 +594532.32 5680056.74 116.25 +594532.42 5680514.51 116.25 +594532.50 5679891.62 118.75 +594532.71 5679873.22 118.75 +594532.72 5680698.28 119.00 +594532.77 5681195.94 105.00 +594532.97 5685052.70 125.00 +594533.01 5679899.60 117.50 +594533.04 5680112.43 118.75 +594533.43 5679856.03 117.50 +594533.55 5679935.75 112.50 +594533.56 5681083.96 112.50 +594534.04 5685289.17 125.00 +594534.15 5685530.14 120.00 +594534.31 5679742.75 117.50 +594534.47 5680246.47 122.50 +594534.50 5679882.63 118.75 +594534.89 5680194.68 121.25 +594534.96 5680085.41 117.50 +594534.97 5679798.10 116.25 +594535.77 5679966.10 111.25 +594536.44 5680156.58 120.00 +594536.47 5681055.04 113.75 +594536.56 5679983.63 111.25 +594536.65 5680558.83 117.50 +594536.66 5679903.27 116.25 +594536.78 5681064.80 113.75 +594536.87 5680461.39 116.25 +594537.02 5680437.31 117.50 +594537.03 5680006.68 112.50 +594537.19 5680284.55 123.75 +594537.19 5679911.49 115.00 +594537.21 5680523.28 116.25 +594537.41 5680204.34 121.25 +594537.50 5681074.86 112.50 +594537.52 5679710.29 115.00 +594537.97 5681093.77 111.25 +594538.22 5681166.31 106.25 +594538.23 5680832.38 119.00 +594538.52 5684848.96 120.00 +594538.82 5680025.75 113.75 +594538.90 5679864.39 117.50 +594538.96 5679158.66 110.00 +594539.02 5680043.99 115.00 +594539.10 5680405.78 118.75 +594539.17 5681101.18 110.00 +594539.25 5680255.17 122.50 +594539.46 5680120.10 118.75 +594539.69 5681123.54 108.75 +594539.89 5679915.95 113.75 +594539.92 5680214.01 121.25 +594539.93 5681140.84 107.50 +594540.12 5680364.42 120.00 +594540.12 5679852.46 116.25 +594540.13 5679893.05 117.50 +594540.40 5680062.63 116.25 +594540.86 5679958.03 111.25 +594541.06 5679763.10 117.50 +594541.14 5679874.03 117.50 +594541.21 5680695.16 119.00 +594541.27 5679730.30 116.25 +594541.30 5680165.26 120.00 +594541.45 5685057.96 125.00 +594541.91 5681191.97 105.00 +594542.01 5680532.05 116.25 +594542.03 5680223.78 121.25 +594542.04 5679930.59 112.50 +594542.46 5680091.96 117.50 +594542.75 5679792.07 116.25 +594543.52 5679883.73 117.50 +594543.56 5685286.31 125.00 +594543.64 5680292.18 123.75 +594544.02 5680233.57 121.25 +594544.07 5679744.02 117.50 +594544.07 5685529.07 120.00 +594544.08 5679989.51 111.25 +594544.12 5679896.68 116.25 +594544.18 5680263.81 122.50 +594544.55 5680564.89 117.50 +594544.57 5681071.03 112.50 +594544.76 5681063.96 113.75 +594545.25 5680128.23 118.75 +594545.63 5679906.30 115.00 +594545.63 5679166.10 110.00 +594545.91 5680457.12 116.25 +594545.95 5680174.03 120.00 +594546.60 5680434.68 117.50 +594546.75 5679586.80 110.00 +594546.76 5679859.88 116.25 +594546.80 5680008.56 112.50 +594546.81 5680540.82 116.25 +594547.15 5679576.83 110.00 +594547.21 5679712.46 115.00 +594547.49 5684853.07 120.00 +594547.55 5681091.16 111.25 +594547.82 5681163.55 106.25 +594547.93 5680830.86 119.00 +594547.94 5680242.74 121.25 +594548.08 5680301.09 123.75 +594548.47 5680068.53 116.25 +594548.62 5679911.09 113.75 +594548.76 5680026.81 113.75 +594548.83 5680403.53 118.75 +594548.87 5680359.68 120.00 +594548.95 5680044.78 115.00 +594548.95 5681099.20 110.00 +594549.08 5680183.47 120.00 +594549.11 5680272.44 122.50 +594549.24 5679757.60 117.50 +594549.27 5679567.07 110.00 +594549.39 5681121.17 108.75 +594549.44 5679784.77 116.25 +594549.48 5679888.71 116.25 +594549.52 5681138.09 107.50 +594549.71 5679953.57 111.25 +594549.83 5685063.40 125.00 +594549.93 5680319.94 123.75 +594549.96 5680098.50 117.50 +594550.54 5679869.10 116.25 +594550.76 5680136.56 118.75 +594550.79 5679595.27 110.00 +594550.91 5680696.06 119.00 +594551.05 5679879.03 116.25 +594551.06 5681188.00 105.00 +594551.08 5679731.61 116.25 +594551.12 5680193.20 120.00 +594551.19 5679927.01 112.50 +594551.21 5680499.26 115.00 +594551.39 5679557.32 110.00 +594552.05 5680251.85 121.25 +594552.11 5680310.19 123.75 +594552.30 5679173.53 110.00 +594552.46 5680570.94 117.50 +594552.51 5685281.88 125.00 +594552.55 5679748.54 117.50 +594553.01 5679547.47 110.00 +594553.40 5679992.59 111.25 +594553.57 5680202.82 120.00 +594553.89 5685527.29 120.00 +594553.93 5679900.86 115.00 +594554.26 5680508.67 115.00 +594554.35 5681061.14 113.75 +594554.49 5681071.56 112.50 +594554.56 5679537.60 110.00 +594554.99 5684859.65 120.00 +594554.99 5680546.43 116.25 +594555.19 5680490.09 115.00 +594555.20 5680280.29 122.50 +594555.29 5680453.67 116.25 +594556.28 5680144.90 118.75 +594556.28 5680432.37 117.50 +594556.55 5680074.43 116.25 +594556.55 5680010.48 112.50 +594556.69 5680353.83 120.00 +594556.73 5680212.25 120.00 +594556.78 5679778.13 116.25 +594557.02 5680827.35 119.00 +594557.09 5679712.99 115.00 +594557.14 5681088.55 111.25 +594557.33 5681160.53 106.25 +594557.35 5679906.22 113.75 +594557.46 5680105.05 117.50 +594557.60 5679602.57 110.00 +594557.89 5679181.79 110.00 +594558.16 5679528.38 110.00 +594558.20 5685068.84 125.00 +594558.41 5680259.42 121.25 +594558.55 5679949.09 111.25 +594558.57 5680401.27 118.75 +594558.70 5680027.87 113.75 +594558.87 5681098.08 110.00 +594558.93 5680045.33 115.00 +594559.08 5681118.72 108.75 +594559.18 5681135.60 107.50 +594559.88 5680288.95 122.50 +594560.12 5680699.12 119.00 +594560.22 5679893.80 115.00 +594560.26 5680481.69 115.00 +594560.26 5681184.17 105.00 +594560.28 5680221.51 120.00 +594560.36 5680577.00 117.50 +594560.38 5680516.13 115.00 +594560.82 5679924.57 112.50 +594560.88 5679733.01 116.25 +594561.01 5680153.59 118.75 +594561.30 5685277.15 125.00 +594562.40 5679855.23 115.00 +594562.49 5684866.24 120.00 +594562.57 5679519.43 110.00 +594562.65 5679865.08 115.00 +594563.03 5680346.16 120.00 +594563.13 5679994.44 111.25 +594563.28 5679190.19 110.00 +594563.37 5679845.36 115.00 +594563.43 5680551.79 116.25 +594563.52 5680298.20 122.50 +594563.71 5685525.51 120.00 +594563.77 5679884.54 115.00 +594563.87 5680163.17 118.75 +594563.94 5681058.32 113.75 +594563.97 5679771.33 116.25 +594564.06 5679874.90 115.00 +594564.23 5681070.20 112.50 +594564.46 5679835.50 115.00 +594564.66 5680080.26 116.25 +594564.74 5679899.68 113.75 +594564.81 5680450.63 116.25 +594564.90 5680230.32 120.00 +594564.96 5680111.59 117.50 +594565.21 5680266.73 121.25 +594565.49 5680822.41 119.00 +594565.73 5680429.48 117.50 +594565.79 5685075.25 125.00 +594565.95 5680317.41 122.50 +594566.30 5680307.74 122.50 +594566.31 5680012.41 112.50 +594566.37 5679510.21 110.00 +594566.62 5681085.63 111.25 +594566.63 5679825.82 115.00 +594566.73 5680172.75 118.75 +594566.73 5681157.19 106.25 +594567.01 5679713.22 115.00 +594567.07 5680396.48 118.75 +594567.25 5679605.07 110.00 +594567.36 5679944.56 111.25 +594567.64 5680474.95 115.00 +594568.12 5680522.46 115.00 +594568.26 5680583.05 117.50 +594568.31 5680030.15 113.75 +594568.48 5680704.30 119.00 +594568.52 5680048.14 115.00 +594568.59 5681115.70 108.75 +594568.68 5679198.59 110.00 +594568.81 5681097.20 110.00 +594568.85 5681133.10 107.50 +594568.89 5679816.16 115.00 +594568.94 5680338.18 120.00 +594569.53 5680239.12 120.00 +594569.59 5680182.33 118.75 +594569.63 5679500.77 110.00 +594569.74 5681181.07 105.00 +594569.77 5679920.77 112.50 +594569.89 5684872.93 120.00 +594569.93 5685272.13 125.00 +594570.66 5679734.54 116.25 +594570.98 5679764.34 116.25 +594571.20 5680274.72 121.25 +594571.39 5680119.11 117.50 +594571.41 5679806.56 115.00 +594571.44 5679892.27 113.75 +594571.87 5680557.15 116.25 +594572.61 5679997.10 111.25 +594572.80 5685082.36 125.00 +594572.87 5680191.77 118.75 +594572.90 5679491.34 110.00 +594573.05 5680085.71 116.25 +594573.10 5680315.88 121.25 +594573.28 5680816.42 119.00 +594573.43 5681055.19 113.75 +594573.53 5685523.74 120.00 +594573.88 5681067.82 112.50 +594573.91 5679207.09 110.00 +594574.26 5680329.79 120.00 +594574.32 5679882.76 113.75 +594574.34 5680424.48 117.50 +594574.42 5680247.58 120.00 +594574.44 5680448.01 116.25 +594574.84 5680390.20 118.75 +594575.09 5680711.38 119.00 +594575.56 5679797.55 115.00 +594575.80 5680469.42 115.00 +594575.83 5680015.27 112.50 +594575.88 5681082.05 111.25 +594576.16 5680201.20 118.75 +594576.16 5680589.11 117.50 +594576.17 5679481.90 110.00 +594576.17 5679940.03 111.25 +594576.23 5680528.15 115.00 +594576.46 5681155.24 106.25 +594576.51 5679873.04 113.75 +594576.52 5679715.72 115.00 +594577.03 5684879.91 120.00 +594577.04 5679606.20 110.00 +594577.10 5680282.78 121.25 +594577.22 5680127.19 117.50 +594577.25 5679863.07 113.75 +594577.34 5679833.13 113.75 +594577.43 5679756.87 116.25 +594577.44 5680034.24 113.75 +594577.52 5679914.56 112.50 +594577.70 5679843.12 113.75 +594577.90 5680051.56 115.00 +594577.99 5679853.11 113.75 +594577.99 5681112.32 108.75 +594578.09 5680807.86 119.00 +594578.40 5679216.01 110.00 +594578.51 5681130.60 107.50 +594578.56 5685267.10 125.00 +594578.60 5680720.37 119.00 +594578.63 5681095.41 110.00 +594578.73 5679739.34 116.25 +594578.78 5679472.28 110.00 +594578.91 5680730.20 119.00 +594579.21 5681177.97 105.00 +594579.56 5680740.01 119.00 +594579.74 5679788.55 115.00 +594579.81 5685089.47 125.00 +594580.17 5680210.33 118.75 +594580.35 5679823.65 113.75 +594580.39 5680749.82 119.00 +594580.53 5680562.13 116.25 +594580.61 5680255.36 120.00 +594580.96 5679462.53 110.00 +594581.03 5680309.81 121.25 +594581.06 5680759.63 119.00 +594581.16 5679412.65 110.00 +594581.21 5679422.64 110.00 +594581.24 5680798.54 119.00 +594581.26 5679432.62 110.00 +594581.31 5679442.61 110.00 +594581.36 5679748.28 116.25 +594581.36 5679452.60 110.00 +594581.44 5680091.15 116.25 +594581.44 5680769.46 119.00 +594581.46 5679402.67 110.00 +594581.60 5680001.25 111.25 +594581.91 5679392.70 110.00 +594582.02 5679966.17 110.00 +594582.23 5680324.36 120.00 +594582.35 5679382.72 110.00 +594582.59 5680291.13 121.25 +594582.86 5681051.86 113.75 +594582.90 5679224.92 110.00 +594582.93 5680135.32 117.50 +594582.95 5680419.49 117.50 +594583.01 5680384.46 118.75 +594583.11 5685520.95 120.00 +594583.13 5680788.90 119.00 +594583.21 5680443.21 116.25 +594583.26 5680779.11 119.00 +594583.39 5679372.81 110.00 +594583.52 5681065.44 112.50 +594583.55 5679907.08 112.50 +594583.63 5679814.21 113.75 +594583.64 5679976.03 110.00 +594583.79 5680595.48 117.50 +594584.16 5684886.89 120.00 +594584.38 5680935.47 120.00 +594584.38 5679779.77 115.00 +594584.68 5680300.89 121.25 +594584.75 5680219.21 118.75 +594584.82 5679935.30 111.25 +594584.97 5680465.42 115.00 +594585.14 5679362.98 110.00 +594585.15 5681078.47 111.25 +594585.23 5680018.49 112.50 +594585.55 5680531.76 115.00 +594585.56 5679719.69 115.00 +594585.96 5679234.39 110.00 +594586.24 5680144.70 117.50 +594586.38 5681154.12 106.25 +594586.56 5680038.33 113.75 +594586.66 5685096.72 125.00 +594586.80 5680263.14 120.00 +594586.90 5679353.15 110.00 +594586.98 5679605.32 110.00 +594587.06 5680055.56 115.00 +594587.10 5680847.25 120.00 +594587.21 5679897.85 112.50 +594587.39 5681108.93 108.75 +594587.41 5679958.01 110.00 +594587.83 5685263.43 125.00 +594588.18 5681128.12 107.50 +594588.43 5681093.47 110.00 +594588.58 5680837.85 120.00 +594588.61 5679244.02 110.00 +594588.66 5679343.32 110.00 +594588.71 5681174.96 105.00 +594589.02 5679771.00 115.00 +594589.10 5680856.58 120.00 +594589.15 5680801.29 120.00 +594589.33 5680566.88 116.25 +594589.34 5680228.09 118.75 +594589.40 5680097.18 116.25 +594589.56 5680154.09 117.50 +594589.87 5679888.30 112.50 +594590.11 5679333.45 110.00 +594590.19 5680828.44 120.00 +594590.20 5679983.23 110.00 +594590.60 5680005.41 111.25 +594590.70 5679253.77 110.00 +594590.90 5679323.50 110.00 +594590.99 5681046.23 113.75 +594591.04 5680602.31 117.50 +594591.09 5680413.77 117.50 +594591.22 5679927.73 111.25 +594591.42 5680379.06 118.75 +594591.50 5679868.63 112.50 +594591.53 5684893.55 120.00 +594591.54 5679878.56 112.50 +594591.54 5679858.70 112.50 +594591.68 5679313.54 110.00 +594591.68 5680437.97 116.25 +594592.04 5679303.56 110.00 +594592.13 5680493.67 113.75 +594592.16 5680324.54 120.00 +594592.23 5680819.12 120.00 +594592.27 5679293.58 110.00 +594592.27 5679263.63 110.00 +594592.49 5679273.61 110.00 +594592.49 5679283.60 110.00 +594592.59 5681061.54 112.50 +594592.67 5685518.08 120.00 +594592.99 5680270.93 120.00 +594593.02 5680163.42 117.50 +594593.05 5679848.89 112.50 +594593.19 5685104.28 125.00 +594593.23 5680809.92 120.00 +594593.35 5680864.61 120.00 +594593.47 5679762.13 115.00 +594593.69 5679725.17 115.00 +594593.88 5680934.59 120.00 +594594.13 5680461.43 115.00 +594594.30 5680502.64 113.75 +594594.30 5680022.58 112.50 +594594.34 5679951.00 110.00 +594594.41 5681074.89 111.25 +594594.87 5680535.37 115.00 +594595.08 5680958.98 118.25 +594595.28 5680236.13 118.75 +594595.34 5681149.96 106.25 +594595.48 5680060.71 115.00 +594595.67 5680042.44 113.75 +594596.00 5680280.27 120.00 +594596.01 5680484.66 113.75 +594596.21 5680104.47 116.25 +594596.29 5679839.58 112.50 +594596.57 5681104.99 108.75 +594596.57 5680172.72 117.50 +594596.85 5679605.82 110.00 +594597.23 5685260.10 125.00 +594597.61 5679920.16 111.25 +594597.69 5681125.21 107.50 +594597.87 5679753.24 115.00 +594597.92 5679734.14 115.00 +594598.03 5681090.95 110.00 +594598.13 5680571.62 116.25 +594598.16 5680970.48 117.50 +594598.28 5680609.13 117.50 +594598.30 5681172.21 105.00 +594598.73 5679988.42 110.00 +594598.76 5681039.93 113.75 +594598.79 5680289.80 120.00 +594599.04 5680407.79 117.50 +594599.34 5680431.54 116.25 +594599.56 5679743.54 115.00 +594599.71 5680009.27 111.25 +594599.76 5680319.00 120.00 +594599.83 5680373.66 118.75 +594600.12 5680182.02 117.50 +594600.19 5685111.30 125.00 +594600.25 5684898.40 120.00 +594600.37 5679830.53 112.50 +594600.42 5680871.03 120.00 +594600.79 5681055.93 112.50 +594600.86 5680510.09 113.75 +594601.17 5680299.41 120.00 +594601.25 5680244.14 118.75 +594601.44 5679911.22 111.25 +594601.82 5680309.27 120.00 +594601.94 5680455.34 115.00 +594602.22 5685515.20 120.00 +594602.47 5679945.19 110.00 +594602.57 5680112.15 116.25 +594602.82 5680477.34 113.75 +594602.96 5680067.34 115.00 +594603.34 5680026.73 112.50 +594603.38 5680933.71 120.00 +594603.53 5681071.00 111.25 +594603.61 5680540.22 115.00 +594604.08 5679901.68 111.25 +594604.12 5681145.20 106.25 +594604.56 5680047.02 113.75 +594604.66 5680957.26 118.25 +594604.95 5679891.81 111.25 +594605.06 5680190.65 117.50 +594605.20 5680616.25 117.50 +594605.64 5681032.98 113.75 +594605.69 5681100.92 108.75 +594605.97 5679881.96 111.25 +594606.22 5680577.30 116.25 +594606.57 5680966.15 117.50 +594606.62 5681120.75 107.50 +594606.63 5679607.85 110.00 +594606.99 5680401.80 117.50 +594607.00 5680425.11 116.25 +594607.06 5681086.69 110.00 +594607.14 5685258.92 125.00 +594607.21 5680252.16 118.75 +594607.28 5679993.58 110.00 +594607.29 5680120.96 116.25 +594607.70 5679872.20 111.25 +594607.89 5681169.47 105.00 +594608.00 5680876.81 120.00 +594608.54 5685116.78 125.00 +594608.57 5680516.22 113.75 +594608.72 5680369.14 118.75 +594608.95 5681050.27 112.50 +594609.04 5680012.62 111.25 +594609.36 5680448.63 115.00 +594609.40 5681023.71 113.75 +594609.43 5679862.44 111.25 +594609.54 5680074.86 115.00 +594609.62 5684901.43 120.00 +594610.20 5680199.17 117.50 +594610.23 5680980.00 115.00 +594610.24 5680470.65 113.75 +594610.42 5679939.16 110.00 +594610.99 5680624.34 117.50 +594611.01 5680130.20 116.25 +594611.21 5685511.18 120.00 +594611.22 5679852.70 111.25 +594611.65 5680032.20 112.50 +594612.23 5680930.66 120.00 +594612.27 5681066.27 111.25 +594612.34 5680545.09 115.00 +594612.64 5681014.28 113.75 +594612.98 5680260.29 118.75 +594613.02 5679842.95 111.25 +594613.03 5681140.70 106.25 +594613.13 5680584.53 116.25 +594613.14 5680052.03 113.75 +594613.51 5680837.35 118.25 +594614.06 5680139.72 116.25 +594614.27 5680955.62 118.25 +594614.60 5680395.38 117.50 +594614.82 5681096.86 108.75 +594614.98 5680961.82 117.50 +594615.09 5681004.59 113.75 +594615.26 5680082.96 115.00 +594615.48 5680207.60 117.50 +594615.54 5681116.29 107.50 +594615.65 5680420.27 116.25 +594615.71 5680882.42 120.00 +594615.92 5679998.59 110.00 +594616.09 5681082.42 110.00 +594616.15 5681043.55 112.50 +594616.40 5679609.89 110.00 +594616.76 5680846.53 118.25 +594616.77 5680441.93 115.00 +594616.78 5680632.44 117.50 +594616.88 5685122.27 125.00 +594616.95 5680269.47 118.75 +594617.01 5680149.27 116.25 +594617.06 5685257.73 125.00 +594617.47 5681166.72 105.00 +594617.76 5680364.87 118.75 +594617.84 5680519.96 113.75 +594618.03 5679932.70 110.00 +594618.11 5680464.50 113.75 +594618.18 5680995.15 113.75 +594618.36 5680015.97 111.25 +594618.62 5680974.57 115.00 +594618.76 5679834.92 111.25 +594619.25 5685505.26 120.00 +594619.43 5680092.04 115.00 +594619.45 5684903.15 120.00 +594619.95 5680158.83 116.25 +594620.03 5680591.76 116.25 +594620.30 5680037.02 112.50 +594620.30 5681060.45 111.25 +594620.38 5680058.93 113.75 +594620.40 5680889.99 120.00 +594620.65 5680926.17 120.00 +594620.84 5680550.35 115.00 +594620.92 5680278.64 118.75 +594621.13 5680215.80 117.50 +594621.51 5680101.80 115.00 +594621.94 5681136.20 106.25 +594622.35 5680899.34 120.00 +594622.37 5680389.19 117.50 +594622.50 5681035.91 112.50 +594622.57 5680640.54 117.50 +594622.69 5680854.04 118.25 +594622.98 5680986.38 113.75 +594623.14 5680168.31 116.25 +594623.39 5680111.62 115.00 +594623.53 5680952.81 118.25 +594623.78 5679924.74 110.00 +594623.84 5680918.13 120.00 +594623.94 5681092.79 108.75 +594624.12 5680959.47 117.50 +594624.29 5680908.68 120.00 +594624.47 5681111.82 107.50 +594624.63 5680415.89 116.25 +594624.65 5679826.95 111.25 +594624.88 5680287.81 118.75 +594625.00 5679614.65 110.00 +594625.03 5680436.35 115.00 +594625.06 5681078.05 110.00 +594625.16 5680002.02 110.00 +594625.42 5680121.40 115.00 +594625.42 5685127.42 125.00 +594626.17 5680458.58 113.75 +594626.54 5680360.11 118.75 +594626.67 5685260.38 125.00 +594626.78 5680224.00 117.50 +594626.92 5680177.50 116.25 +594626.94 5680598.99 116.25 +594627.11 5680523.70 113.75 +594627.11 5680066.30 113.75 +594627.14 5681164.30 105.00 +594627.26 5680297.49 118.75 +594627.26 5680648.40 117.50 +594627.29 5685499.35 120.00 +594627.52 5681027.60 112.50 +594627.59 5680970.44 115.00 +594627.69 5680019.31 111.25 +594628.19 5681054.42 111.25 +594628.39 5680130.93 115.00 +594628.45 5679915.92 110.00 +594629.10 5680041.49 112.50 +594629.24 5680555.77 115.00 +594629.30 5684904.55 120.00 +594629.35 5680307.27 118.75 +594629.53 5680860.97 118.25 +594629.87 5680979.89 113.75 +594630.72 5680140.63 115.00 +594630.77 5680383.86 117.50 +594630.81 5681131.62 106.25 +594630.89 5680232.82 117.50 +594631.84 5680316.93 118.75 +594631.98 5679906.60 110.00 +594632.25 5680185.96 116.25 +594632.37 5680948.78 118.25 +594632.51 5680818.90 117.50 +594632.54 5680242.64 117.50 +594633.07 5681088.72 108.75 +594633.18 5679620.38 110.00 +594633.26 5680410.84 116.25 +594633.34 5680957.37 117.50 +594633.36 5681072.49 110.00 +594633.40 5681107.36 107.50 +594633.54 5680431.10 115.00 +594633.56 5680073.94 113.75 +594633.72 5680809.33 117.50 +594633.73 5680606.33 116.25 +594634.16 5685132.26 125.00 +594634.19 5680252.45 117.50 +594634.20 5680452.62 113.75 +594634.82 5680828.06 117.50 +594634.93 5680004.08 110.00 +594635.05 5679897.11 110.00 +594635.09 5680262.34 117.50 +594635.19 5680272.29 117.50 +594635.24 5685493.33 120.00 +594635.25 5680326.32 118.75 +594635.25 5680355.21 118.75 +594635.46 5680149.43 115.00 +594635.90 5680868.34 118.25 +594636.09 5681048.40 111.25 +594636.18 5685263.39 125.00 +594636.19 5680800.13 117.50 +594636.38 5680527.44 113.75 +594636.60 5679887.24 110.00 +594636.62 5680083.14 113.75 +594636.76 5680023.28 111.25 +594636.83 5679972.22 108.75 +594636.90 5681162.28 105.00 +594637.12 5680047.38 112.50 +594637.12 5680345.62 118.75 +594637.30 5680281.90 117.50 +594637.31 5680968.11 115.00 +594637.43 5679962.38 108.75 +594637.45 5680561.46 115.00 +594637.57 5680194.43 116.25 +594638.14 5679877.37 110.00 +594638.14 5680837.12 117.50 +594638.23 5680093.00 113.75 +594638.32 5679628.56 110.00 +594638.55 5680335.73 118.75 +594639.12 5680976.18 113.75 +594639.18 5680378.53 117.50 +594639.27 5684904.01 120.00 +594639.27 5680994.74 111.25 +594639.68 5681127.04 106.25 +594639.83 5679867.53 110.00 +594639.85 5680102.87 113.75 +594639.95 5680490.85 112.50 +594640.20 5680158.23 115.00 +594640.29 5680791.40 117.50 +594640.43 5680613.74 116.25 +594640.50 5680943.41 118.25 +594640.53 5680291.32 117.50 +594640.54 5680985.45 111.25 +594641.46 5680112.74 113.75 +594641.54 5679857.69 110.00 +594641.66 5681066.94 110.00 +594641.66 5680953.63 117.50 +594641.82 5679980.30 108.75 +594641.84 5680481.64 112.50 +594641.89 5680405.80 116.25 +594642.02 5680446.40 113.75 +594642.05 5680425.85 115.00 +594642.16 5680875.81 118.25 +594642.17 5679637.77 110.00 +594642.19 5681084.66 108.75 +594642.32 5685137.98 125.00 +594642.33 5681102.90 107.50 +594642.48 5680203.13 116.25 +594642.71 5685486.71 120.00 +594642.88 5681041.20 111.25 +594643.08 5680122.60 113.75 +594643.16 5680845.33 117.50 +594643.29 5679847.87 110.00 +594643.61 5679686.82 110.00 +594643.76 5680300.73 117.50 +594644.19 5679955.09 108.75 +594644.31 5680782.64 117.50 +594644.38 5679647.41 110.00 +594644.75 5680005.72 110.00 +594645.09 5680053.34 112.50 +594645.10 5680958.81 116.25 +594645.11 5680166.94 115.00 +594645.14 5680132.35 113.75 +594645.36 5680531.77 113.75 +594645.40 5685267.22 125.00 +594645.50 5679657.34 110.00 +594645.52 5680567.37 115.00 +594645.72 5679677.19 110.00 +594645.77 5680027.42 111.25 +594646.04 5679667.31 110.00 +594646.14 5679696.48 110.00 +594646.26 5680498.28 112.50 +594646.27 5681159.29 105.00 +594646.36 5679838.36 110.00 +594646.87 5680372.31 117.50 +594646.93 5680212.08 116.25 +594647.00 5680936.24 118.25 +594647.10 5680310.09 117.50 +594647.14 5680621.16 116.25 +594647.27 5680967.28 115.00 +594647.30 5680473.70 112.50 +594648.00 5680773.73 117.50 +594648.09 5680946.71 117.50 +594648.26 5680883.40 118.25 +594648.30 5680853.49 117.50 +594648.52 5681122.41 106.25 +594648.63 5680141.72 113.75 +594648.95 5680974.37 113.75 +594649.20 5679705.97 110.00 +594649.23 5684903.48 120.00 +594649.30 5685144.99 125.00 +594649.37 5680988.35 111.25 +594649.42 5679828.86 110.00 +594649.46 5680062.12 112.50 +594649.84 5680440.17 113.75 +594649.96 5681061.39 110.00 +594650.17 5685480.08 120.00 +594650.26 5680175.50 115.00 +594650.40 5679984.51 108.75 +594650.52 5680400.75 116.25 +594650.53 5680420.57 115.00 +594650.64 5681079.38 108.75 +594651.33 5680764.72 117.50 +594651.38 5680221.03 116.25 +594651.42 5681098.82 107.50 +594652.31 5680755.13 117.50 +594652.49 5680270.21 116.25 +594652.66 5680260.24 116.25 +594652.76 5680928.42 118.25 +594652.85 5679819.50 110.00 +594652.89 5680318.19 117.50 +594652.94 5680150.65 113.75 +594653.04 5679715.19 110.00 +594653.08 5680629.15 116.25 +594653.10 5680280.15 116.25 +594653.22 5680891.72 118.25 +594653.34 5680071.27 112.50 +594653.41 5679951.24 108.75 +594653.42 5680573.47 115.00 +594653.76 5680954.58 116.25 +594653.77 5680365.14 117.50 +594653.82 5680861.40 117.50 +594653.89 5680250.31 116.25 +594653.95 5680536.89 113.75 +594654.04 5680466.48 112.50 +594654.20 5680939.48 117.50 +594654.26 5680230.39 116.25 +594654.29 5680032.35 111.25 +594654.37 5680504.04 112.50 +594654.69 5681153.95 105.00 +594654.74 5680005.94 110.00 +594654.77 5680240.38 116.25 +594655.08 5685472.27 120.00 +594655.15 5685266.54 125.00 +594655.30 5685462.29 120.00 +594655.30 5685152.97 125.00 +594655.54 5680183.99 115.00 +594655.87 5685452.33 120.00 +594656.06 5680289.70 116.25 +594656.26 5680964.02 115.00 +594656.75 5680327.17 117.50 +594656.91 5679724.39 110.00 +594657.11 5679810.47 110.00 +594657.12 5680080.47 112.50 +594657.15 5681054.49 110.00 +594657.30 5681117.65 106.25 +594657.31 5680994.22 111.25 +594657.35 5680919.85 118.25 +594657.36 5680900.51 118.25 +594657.48 5685442.83 120.00 +594657.80 5680356.69 117.50 +594657.98 5680394.21 116.25 +594658.03 5680434.45 113.75 +594658.33 5680637.66 116.25 +594658.49 5680910.18 118.25 +594658.51 5680346.76 117.50 +594658.56 5680414.70 115.00 +594658.68 5680972.26 113.75 +594658.81 5680158.74 113.75 +594658.84 5681073.67 108.75 +594658.96 5680931.36 117.50 +594659.12 5680336.84 117.50 +594659.20 5684902.95 120.00 +594659.29 5680869.34 117.50 +594659.40 5680299.06 116.25 +594659.65 5680458.26 112.50 +594660.12 5679986.82 108.75 +594660.20 5679733.82 110.00 +594660.48 5680580.54 115.00 +594660.72 5685161.35 125.00 +594660.77 5681095.32 107.50 +594660.89 5680089.68 112.50 +594660.94 5680192.39 115.00 +594661.38 5679801.44 110.00 +594661.49 5680948.96 116.25 +594662.04 5680038.52 111.25 +594662.45 5679947.04 108.75 +594662.53 5680542.01 113.75 +594662.95 5679743.42 110.00 +594663.17 5681148.71 105.00 +594663.26 5680922.94 117.50 +594663.28 5680508.47 112.50 +594663.40 5680878.06 117.50 +594663.57 5680646.17 116.25 +594664.14 5680099.05 112.50 +594664.21 5681047.42 110.00 +594664.67 5680006.75 110.00 +594664.68 5680166.83 113.75 +594664.93 5685436.19 120.00 +594664.95 5680387.04 116.25 +594664.96 5679792.14 110.00 +594665.01 5685264.95 125.00 +594665.13 5680201.46 115.00 +594665.23 5680307.19 116.25 +594665.37 5680959.89 115.00 +594665.63 5679753.04 110.00 +594665.64 5680999.21 111.25 +594665.66 5680407.67 115.00 +594665.92 5685169.87 125.00 +594666.07 5681112.90 106.25 +594666.29 5680887.07 117.50 +594666.32 5680428.85 113.75 +594666.39 5680108.74 112.50 +594666.93 5680588.12 115.00 +594667.07 5681068.03 108.75 +594667.31 5680451.93 112.50 +594667.42 5680967.41 113.75 +594667.57 5680914.51 117.50 +594667.79 5679762.77 110.00 +594667.92 5679782.61 110.00 +594668.64 5680118.43 112.50 +594668.78 5679772.66 110.00 +594668.80 5680942.69 116.25 +594669.17 5684902.45 120.00 +594669.18 5680896.08 117.50 +594669.32 5680210.54 115.00 +594669.39 5680828.83 116.25 +594669.41 5680905.29 117.50 +594669.79 5680044.69 111.25 +594669.81 5681039.23 110.00 +594669.97 5685257.10 125.00 +594670.02 5680259.96 115.00 +594670.09 5679987.40 108.75 +594670.12 5681091.83 107.50 +594670.24 5680269.92 115.00 +594670.35 5685178.73 125.00 +594670.80 5680279.90 115.00 +594670.97 5679941.87 108.75 +594671.05 5680315.31 116.25 +594671.12 5680547.13 113.75 +594671.16 5680379.28 116.25 +594671.37 5680220.27 115.00 +594671.57 5680250.08 115.00 +594671.57 5680819.15 116.25 +594671.84 5681143.78 105.00 +594672.19 5680512.89 112.50 +594672.36 5680838.19 116.25 +594672.43 5680596.46 115.00 +594672.57 5680240.16 115.00 +594672.64 5680127.53 112.50 +594672.66 5680230.16 115.00 +594672.76 5680400.63 115.00 +594673.07 5685188.34 125.00 +594673.13 5685247.72 125.00 +594673.26 5680954.03 115.00 +594673.39 5680171.64 113.75 +594673.70 5680289.25 115.00 +594673.70 5680444.59 112.50 +594673.81 5680422.32 113.75 +594673.90 5685432.71 120.00 +594674.13 5685237.79 125.00 +594674.31 5680809.66 116.25 +594674.58 5680008.05 110.00 +594674.89 5681108.24 106.25 +594674.99 5680935.48 116.25 +594675.08 5685198.07 125.00 +594675.26 5681000.81 111.25 +594675.61 5685208.04 125.00 +594675.62 5681031.17 110.00 +594675.70 5685227.93 125.00 +594675.72 5680961.92 113.75 +594675.74 5680847.53 116.25 +594676.15 5685218.01 125.00 +594676.18 5681063.92 108.75 +594676.46 5680370.80 116.25 +594676.85 5680323.46 116.25 +594677.23 5680136.34 112.50 +594677.54 5680050.87 111.25 +594677.61 5680605.01 115.00 +594677.70 5679934.49 108.75 +594677.79 5680554.46 113.75 +594678.24 5680298.16 115.00 +594678.26 5680435.76 112.50 +594678.82 5680800.83 116.25 +594679.13 5684901.95 120.00 +594679.47 5681088.33 107.50 +594679.78 5680927.13 116.25 +594679.83 5680393.56 115.00 +594680.07 5679987.88 108.75 +594680.17 5680856.35 116.25 +594680.25 5680946.88 115.00 +594680.50 5681138.85 105.00 +594680.66 5680415.04 113.75 +594680.67 5680518.08 112.50 +594680.78 5680361.96 116.25 +594681.20 5680177.72 113.75 +594681.37 5680332.27 116.25 +594681.76 5680483.24 111.25 +594682.25 5680352.07 116.25 +594682.30 5681023.75 110.00 +594682.40 5680059.09 111.25 +594682.44 5680144.81 112.50 +594682.72 5680342.18 116.25 +594682.75 5680613.59 115.00 +594682.95 5679868.17 108.75 +594683.08 5679858.26 108.75 +594683.43 5680955.55 113.75 +594683.72 5679926.64 108.75 +594683.74 5685431.03 120.00 +594683.80 5680918.38 116.25 +594684.02 5680269.74 113.75 +594684.08 5680562.23 113.75 +594684.13 5680996.62 111.25 +594684.14 5680474.02 111.25 +594684.28 5679848.35 108.75 +594684.37 5679878.06 108.75 +594684.48 5680009.35 110.00 +594684.48 5681105.47 106.25 +594684.76 5680792.88 116.25 +594684.89 5680938.10 115.00 +594685.14 5680428.58 112.50 +594685.14 5680305.27 115.00 +594685.29 5681059.82 108.75 +594685.41 5680864.78 116.25 +594685.48 5679838.43 108.75 +594685.68 5680068.44 111.25 +594685.79 5679887.95 108.75 +594686.19 5680259.98 113.75 +594686.19 5680278.98 113.75 +594686.36 5680491.79 111.25 +594686.89 5680386.49 115.00 +594686.91 5679828.54 108.75 +594686.94 5679897.87 108.75 +594687.56 5680407.81 113.75 +594687.77 5679917.51 108.75 +594687.79 5680153.13 112.50 +594687.82 5680909.63 116.25 +594687.90 5680622.16 115.00 +594688.06 5679907.80 108.75 +594688.35 5680524.36 112.50 +594688.36 5680250.22 113.75 +594688.40 5680465.13 111.25 +594688.41 5680184.66 113.75 +594688.51 5679818.68 108.75 +594688.65 5681016.28 110.00 +594688.97 5680077.79 111.25 +594688.99 5681085.36 107.50 +594689.07 5684902.01 120.00 +594689.17 5680929.06 115.00 +594689.39 5679985.39 108.75 +594689.84 5681135.39 105.00 +594690.12 5679808.82 108.75 +594690.37 5680570.00 113.75 +594690.53 5680240.46 113.75 +594690.70 5680784.93 116.25 +594690.81 5680287.81 113.75 +594690.91 5680948.99 113.75 +594691.21 5680900.63 116.25 +594691.38 5680872.34 116.25 +594692.04 5680421.42 112.50 +594692.25 5680087.14 111.25 +594692.63 5680991.61 111.25 +594692.77 5680311.72 115.00 +594693.04 5680630.73 115.00 +594693.21 5680498.96 111.25 +594693.38 5680881.74 116.25 +594693.45 5680920.03 115.00 +594693.57 5685429.34 120.00 +594693.59 5680891.37 116.25 +594693.87 5680012.66 110.00 +594693.96 5680379.41 115.00 +594694.02 5680231.10 113.75 +594694.07 5681102.69 106.25 +594694.08 5680457.02 111.25 +594694.28 5680192.66 113.75 +594694.41 5681055.76 108.75 +594694.54 5680532.09 112.50 +594694.69 5680400.79 113.75 +594695.71 5680096.43 111.25 +594695.78 5680940.26 113.75 +594695.97 5680966.44 112.50 +594696.47 5680776.85 116.25 +594696.58 5680577.83 113.75 +594696.59 5680157.78 112.50 +594697.18 5680202.02 113.75 +594697.49 5680295.25 113.75 +594697.62 5680221.78 113.75 +594697.74 5680911.00 115.00 +594698.23 5679980.74 108.75 +594698.38 5680639.17 115.00 +594698.44 5681014.28 110.00 +594698.63 5681082.78 107.50 +594698.64 5680211.91 113.75 +594698.94 5684903.52 120.00 +594699.04 5680414.35 112.50 +594699.22 5680105.69 111.25 +594699.25 5681132.10 105.00 +594700.05 5680506.12 111.25 +594700.06 5680449.18 111.25 +594700.46 5680371.87 115.00 +594700.61 5680901.46 115.00 +594700.66 5680931.53 113.75 +594700.67 5680539.92 112.50 +594700.67 5680317.84 115.00 +594701.13 5680986.59 111.25 +594701.81 5680393.78 113.75 +594702.16 5680768.72 116.25 +594702.57 5680831.75 115.00 +594702.62 5680891.71 115.00 +594702.74 5680585.71 113.75 +594702.85 5680881.71 115.00 +594702.94 5680959.38 112.50 +594702.99 5680841.74 115.00 +594703.08 5680871.72 115.00 +594703.22 5680016.19 110.00 +594703.26 5685431.61 120.00 +594703.26 5680861.72 115.00 +594703.42 5680851.73 115.00 +594703.68 5681100.00 106.25 +594703.79 5680922.14 113.75 +594703.98 5680822.00 115.00 +594704.07 5681053.18 108.75 +594704.25 5680647.26 115.00 +594704.43 5680113.69 111.25 +594705.18 5680162.76 112.50 +594705.59 5680300.93 113.75 +594705.98 5680912.39 113.75 +594706.04 5680407.28 112.50 +594706.27 5680363.73 115.00 +594706.80 5679975.61 108.75 +594706.86 5680325.61 115.00 +594706.88 5680812.43 115.00 +594707.04 5680547.56 112.50 +594707.15 5680513.04 111.25 +594707.63 5681473.83 100.00 +594707.72 5680270.36 112.50 +594707.85 5680443.05 111.25 +594708.17 5680902.63 113.75 +594708.22 5681012.27 110.00 +594708.25 5680950.97 112.50 +594708.27 5681080.18 107.50 +594708.45 5681483.39 100.00 +594708.55 5684906.07 120.00 +594708.62 5681280.31 100.00 +594708.65 5681464.03 100.00 +594708.77 5680980.49 111.25 +594708.79 5680761.36 116.25 +594708.83 5681129.33 105.00 +594708.89 5680593.59 113.75 +594708.91 5680260.65 112.50 +594709.03 5680386.87 113.75 +594709.34 5680354.45 115.00 +594709.67 5681454.23 100.00 +594710.00 5680655.42 115.00 +594710.30 5680334.79 115.00 +594710.63 5680279.70 112.50 +594710.69 5680892.96 113.75 +594711.02 5680344.60 115.00 +594711.07 5679937.09 107.50 +594711.31 5680803.51 115.00 +594711.68 5680251.12 112.50 +594711.98 5681492.59 100.00 +594712.25 5680020.19 110.00 +594712.32 5680119.68 111.25 +594712.46 5681287.04 100.00 +594712.93 5685434.06 120.00 +594713.03 5680400.20 112.50 +594713.12 5679927.32 107.50 +594713.29 5681049.50 108.75 +594713.33 5680168.47 112.50 +594713.34 5680883.32 113.75 +594713.38 5680555.22 112.50 +594713.49 5681098.17 106.25 +594713.56 5680942.56 112.50 +594713.75 5680306.68 113.75 +594713.84 5680664.64 115.00 +594714.25 5680519.95 111.25 +594714.66 5680601.73 113.75 +594715.09 5680241.78 112.50 +594715.17 5679917.55 107.50 +594715.28 5679970.34 108.75 +594715.57 5680973.34 111.25 +594715.64 5680436.93 111.25 +594715.98 5680873.68 113.75 +594716.10 5680794.73 115.00 +594716.15 5681501.52 100.00 +594716.22 5681275.99 100.00 +594716.30 5681283.59 99.50 +594716.37 5680380.08 113.75 +594716.43 5679907.67 107.50 +594717.08 5679897.71 107.50 +594717.51 5681008.88 110.00 +594717.71 5679867.80 107.50 +594717.74 5679887.75 107.50 +594717.80 5679877.78 107.50 +594717.85 5681077.38 107.50 +594717.97 5684909.36 120.00 +594718.29 5679942.50 107.50 +594718.39 5680285.92 112.50 +594718.43 5681126.65 105.00 +594718.54 5680933.99 112.50 +594718.63 5680864.04 113.75 +594718.69 5680673.39 115.00 +594718.80 5680563.56 112.50 +594719.30 5680027.26 110.00 +594719.81 5680610.30 113.75 +594719.86 5679858.05 107.50 +594719.87 5680392.98 112.50 +594720.07 5680233.17 112.50 +594720.38 5681510.43 100.00 +594720.58 5680125.00 111.25 +594720.95 5680527.24 111.25 +594721.10 5680786.08 115.00 +594721.27 5680854.39 113.75 +594721.44 5680174.23 112.50 +594721.60 5681287.30 100.00 +594721.77 5680312.65 113.75 +594721.85 5680924.61 112.50 +594722.01 5679848.30 107.50 +594722.13 5681044.85 108.75 +594722.20 5680966.05 111.25 +594722.70 5685436.02 120.00 +594722.77 5680844.52 113.75 +594722.89 5681519.80 100.00 +594722.97 5680682.39 115.00 +594723.05 5680430.38 111.25 +594723.05 5679964.07 108.75 +594723.30 5681096.34 106.25 +594723.56 5681280.87 100.00 +594723.71 5680373.29 113.75 +594723.84 5681529.61 100.00 +594724.07 5680834.61 113.75 +594724.17 5679838.56 107.50 +594724.78 5681539.43 100.00 +594724.81 5680571.48 112.50 +594724.97 5680618.87 113.75 +594725.04 5680224.56 112.50 +594725.15 5680915.23 112.50 +594726.17 5680777.46 115.00 +594726.32 5679828.81 107.50 +594726.35 5680034.33 110.00 +594726.38 5681004.30 110.00 +594726.71 5680385.75 112.50 +594726.79 5680691.62 115.00 +594726.92 5680291.01 112.50 +594727.03 5680825.11 113.75 +594727.39 5684912.65 120.00 +594727.42 5680534.74 111.25 +594727.43 5681074.58 107.50 +594727.55 5680957.75 111.25 +594727.57 5679945.61 107.50 +594728.03 5681123.96 105.00 +594728.06 5679818.99 107.50 +594728.07 5681548.58 100.00 +594728.46 5680364.55 113.75 +594728.53 5680905.87 112.50 +594729.54 5680180.00 112.50 +594729.65 5679809.13 107.50 +594729.75 5680318.65 113.75 +594729.91 5680128.34 111.25 +594729.99 5680215.93 112.50 +594730.12 5680627.44 113.75 +594730.12 5680423.43 111.25 +594730.49 5681039.37 108.75 +594730.53 5680815.74 113.75 +594730.56 5680043.21 110.00 +594730.85 5680579.35 112.50 +594731.23 5679959.06 108.75 +594731.24 5680768.84 115.00 +594731.40 5680700.49 115.00 +594732.33 5681557.48 100.00 +594732.52 5680896.76 112.50 +594732.63 5685437.01 120.00 +594732.90 5680949.46 111.25 +594732.97 5680355.63 113.75 +594733.11 5681094.50 106.25 +594733.55 5680378.53 112.50 +594733.63 5680636.79 113.75 +594733.67 5680759.22 115.00 +594734.00 5680052.59 110.00 +594734.04 5680806.39 113.75 +594734.14 5680327.63 113.75 +594734.23 5680998.20 110.00 +594734.75 5680709.84 115.00 +594734.82 5680207.23 112.50 +594735.38 5680588.20 112.50 +594735.39 5680187.90 112.50 +594735.61 5680295.84 112.50 +594735.64 5680749.42 115.00 +594735.73 5680940.02 111.25 +594735.90 5680539.83 111.25 +594736.06 5680197.42 112.50 +594736.44 5681070.51 107.50 +594736.52 5680887.65 112.50 +594736.56 5684916.59 120.00 +594736.58 5681566.37 100.00 +594736.71 5680484.01 110.00 +594736.72 5680739.52 115.00 +594736.98 5680729.53 115.00 +594737.07 5680646.18 113.75 +594737.15 5680719.54 115.00 +594737.18 5680416.48 111.25 +594737.34 5680346.67 113.75 +594737.49 5681120.80 105.00 +594737.53 5679946.22 107.50 +594737.89 5680061.78 110.00 +594738.02 5680797.22 113.75 +594738.09 5680336.70 113.75 +594738.39 5680474.49 110.00 +594738.43 5680930.53 111.25 +594738.70 5680493.79 110.00 +594738.84 5681033.89 108.75 +594739.30 5680131.50 111.25 +594739.87 5680878.29 112.50 +594739.91 5680597.06 112.50 +594740.17 5680371.11 112.50 +594740.51 5680655.56 113.75 +594740.77 5680920.95 111.25 +594741.19 5679959.57 108.75 +594741.51 5680455.16 110.00 +594741.62 5680465.04 110.00 +594741.78 5680991.66 110.00 +594741.78 5680070.98 110.00 +594742.01 5680788.04 113.75 +594742.30 5680911.20 111.25 +594742.56 5685438.00 120.00 +594742.60 5680547.11 111.25 +594743.01 5681093.22 106.25 +594743.08 5680258.63 111.25 +594743.09 5681573.75 100.00 +594743.17 5680868.91 112.50 +594743.49 5680268.46 111.25 +594743.50 5680502.55 110.00 +594743.55 5680446.06 110.00 +594743.75 5680665.02 113.75 +594743.87 5680409.18 111.25 +594744.42 5680300.44 112.50 +594744.91 5681065.22 107.50 +594744.94 5680249.16 111.25 +594745.17 5680901.84 111.25 +594745.24 5680605.43 112.50 +594745.67 5680080.18 110.00 +594745.72 5684920.56 120.00 +594745.99 5680778.87 113.75 +594746.48 5680859.52 112.50 +594746.68 5680674.58 113.75 +594746.71 5680363.62 112.50 +594746.95 5681117.65 105.00 +594747.20 5681028.42 108.75 +594747.31 5679944.92 107.50 +594748.52 5680984.29 110.00 +594748.79 5680134.36 111.25 +594748.91 5680849.88 112.50 +594749.04 5680554.64 111.25 +594749.14 5680240.19 111.25 +594749.15 5680892.81 111.25 +594749.18 5680276.57 111.25 +594749.29 5680684.23 113.75 +594749.58 5680510.27 110.00 +594749.72 5680438.21 110.00 +594750.15 5680769.79 113.75 +594750.32 5680401.66 111.25 +594751.02 5680613.52 112.50 +594751.04 5679961.20 108.75 +594751.33 5681577.99 100.00 +594751.40 5680840.26 112.50 +594751.74 5680088.08 110.00 +594751.83 5680693.89 113.75 +594752.42 5685437.60 120.00 +594752.54 5681090.81 106.25 +594753.14 5680883.78 111.25 +594753.25 5680356.12 112.50 +594753.35 5681059.90 107.50 +594753.54 5680304.41 112.50 +594754.06 5681021.22 108.75 +594754.33 5679939.82 107.50 +594754.44 5680760.76 113.75 +594754.76 5680830.90 112.50 +594754.96 5680703.38 113.75 +594755.13 5680232.34 111.25 +594755.14 5684923.73 120.00 +594755.16 5680562.43 111.25 +594755.20 5680976.88 110.00 +594755.22 5680622.40 112.50 +594755.98 5680430.42 110.00 +594756.09 5679930.00 107.50 +594756.41 5681114.50 105.00 +594756.73 5680394.11 111.25 +594756.84 5680282.46 111.25 +594757.13 5680516.81 110.00 +594757.62 5680821.40 112.50 +594757.69 5680875.02 111.25 +594757.77 5679920.16 107.50 +594757.90 5680138.15 111.25 +594758.15 5680631.91 112.50 +594758.15 5680095.73 110.00 +594758.29 5680712.81 113.75 +594758.39 5680751.62 113.75 +594758.58 5680967.49 110.00 +594758.78 5680347.86 112.50 +594759.31 5680811.60 112.50 +594759.49 5679910.33 107.50 +594760.12 5680741.77 113.75 +594760.65 5681013.71 108.75 +594760.72 5680311.16 112.50 +594760.91 5679961.15 108.75 +594761.00 5680801.80 112.50 +594761.08 5681579.39 100.00 +594761.11 5680641.41 112.50 +594761.21 5681053.74 107.50 +594761.29 5680570.21 111.25 +594761.29 5681086.01 106.25 +594761.46 5680224.72 111.25 +594761.47 5679900.54 107.50 +594761.61 5680722.24 113.75 +594761.85 5680731.92 113.75 +594761.95 5680958.09 110.00 +594762.20 5680422.64 110.00 +594762.21 5685435.66 120.00 +594762.30 5680866.30 111.25 +594762.75 5680386.24 111.25 +594763.53 5680339.22 112.50 +594763.81 5680792.33 112.50 +594764.15 5680650.88 112.50 +594764.50 5679922.79 108.75 +594764.56 5680523.48 110.00 +594764.59 5679932.78 108.75 +594764.83 5679952.66 108.75 +594764.84 5679915.89 108.75 +594764.88 5684925.91 120.00 +594764.96 5680413.04 110.00 +594765.01 5679942.76 108.75 +594765.05 5680102.95 110.00 +594765.33 5680948.69 110.00 +594765.34 5680579.22 111.25 +594765.53 5680319.85 112.50 +594765.67 5680286.96 111.25 +594765.70 5681110.89 105.00 +594765.87 5680660.63 112.50 +594766.03 5680329.62 112.50 +594766.77 5680142.54 111.25 +594766.92 5680857.57 111.25 +594766.96 5680670.52 112.50 +594767.18 5679894.48 107.50 +594767.24 5681006.20 108.75 +594767.36 5679925.56 108.75 +594767.68 5680255.54 110.00 +594767.83 5680783.23 112.50 +594768.26 5680217.52 111.25 +594768.71 5680939.30 110.00 +594768.78 5680378.37 111.25 +594768.95 5680265.19 110.00 +594769.06 5681047.59 107.50 +594769.28 5679935.36 108.75 +594769.38 5680588.22 111.25 +594769.49 5681080.38 106.25 +594770.27 5680679.86 112.50 +594770.77 5681578.65 100.00 +594770.88 5685431.52 120.00 +594771.30 5679945.15 108.75 +594771.45 5680848.80 111.25 +594771.75 5680530.41 110.00 +594771.76 5680997.29 108.75 +594771.85 5680774.14 112.50 +594772.09 5680929.90 110.00 +594772.21 5680109.86 110.00 +594772.25 5680246.73 110.00 +594772.30 5679888.35 106.25 +594772.31 5680409.69 110.00 +594772.48 5679900.36 107.50 +594772.52 5679878.37 106.25 +594772.75 5679868.39 106.25 +594773.35 5680597.26 111.25 +594773.82 5679954.81 108.75 +594773.86 5679858.50 106.25 +594773.89 5680689.13 112.50 +594774.58 5680291.28 111.25 +594774.63 5684928.02 120.00 +594774.91 5681107.08 105.00 +594774.95 5680370.62 111.25 +594775.07 5680210.32 111.25 +594775.77 5679848.71 106.25 +594775.77 5679909.78 107.50 +594775.81 5681040.25 107.50 +594775.87 5680920.66 110.00 +594775.88 5680765.04 112.50 +594775.94 5679799.26 106.25 +594775.97 5680840.03 111.25 +594776.20 5680145.60 111.25 +594776.25 5680988.37 108.75 +594776.44 5680606.63 111.25 +594776.55 5680271.66 110.00 +594777.24 5681074.09 106.25 +594777.42 5679809.13 106.25 +594777.51 5679896.81 106.25 +594777.51 5680698.39 112.50 +594777.68 5679838.91 106.25 +594778.14 5680238.67 110.00 +594778.20 5685424.74 120.00 +594778.48 5679828.99 106.25 +594778.71 5679819.01 106.25 +594778.94 5680537.33 110.00 +594778.98 5679962.62 108.75 +594779.06 5679919.20 107.50 +594779.50 5680830.92 111.25 +594779.53 5680616.01 111.25 +594779.86 5680911.51 110.00 +594779.96 5680755.97 112.50 +594780.41 5681576.58 100.00 +594780.54 5680115.37 110.00 +594780.60 5680979.38 108.75 +594781.20 5680707.63 112.50 +594781.27 5680821.20 111.25 +594781.41 5680363.11 111.25 +594781.87 5680203.11 111.25 +594782.30 5680409.92 110.00 +594782.43 5681032.78 107.50 +594782.61 5680625.38 111.25 +594782.84 5679928.35 107.50 +594782.85 5679905.24 106.25 +594782.95 5680746.58 112.50 +594783.03 5680811.49 111.25 +594783.39 5680295.79 111.25 +594783.84 5680902.35 110.00 +594783.95 5680545.95 110.00 +594783.99 5680151.53 111.25 +594784.04 5680230.61 110.00 +594784.17 5681103.36 105.00 +594784.32 5680736.73 112.50 +594784.45 5680970.16 108.75 +594784.47 5684929.52 120.00 +594784.61 5681067.39 106.25 +594784.72 5680726.80 112.50 +594784.79 5680801.78 111.25 +594784.91 5680716.86 112.50 +594785.15 5680276.47 110.00 +594785.53 5685417.96 120.00 +594785.63 5680634.78 111.25 +594786.93 5679968.64 108.75 +594787.25 5680194.86 111.25 +594787.33 5681024.12 107.50 +594787.82 5680893.19 110.00 +594787.87 5680355.59 111.25 +594788.21 5680644.31 111.25 +594788.22 5680502.00 108.75 +594788.30 5680960.94 108.75 +594788.41 5680403.56 110.00 +594788.45 5680492.01 108.75 +594788.84 5680554.66 110.00 +594788.86 5680120.88 110.00 +594789.06 5680792.92 111.25 +594789.24 5679936.01 107.50 +594789.46 5679912.72 106.25 +594789.86 5681573.96 100.00 +594790.01 5680222.60 110.00 +594790.42 5680158.86 111.25 +594790.76 5680482.32 108.75 +594790.80 5680653.83 111.25 +594791.34 5680564.21 110.00 +594791.49 5681060.16 106.25 +594791.57 5680301.38 111.25 +594791.80 5680884.03 110.00 +594791.93 5680951.65 108.75 +594792.00 5681015.30 107.50 +594792.10 5680186.22 111.25 +594792.73 5680394.57 110.00 +594792.97 5680574.06 110.00 +594792.98 5685411.35 120.00 +594793.28 5680510.60 108.75 +594793.35 5680472.67 108.75 +594793.39 5680663.36 111.25 +594793.45 5681099.74 105.00 +594793.58 5680784.14 111.25 +594793.71 5679975.92 108.75 +594794.37 5680348.12 111.25 +594794.43 5684930.16 120.00 +594794.44 5680280.15 110.00 +594794.76 5680583.87 110.00 +594794.91 5680167.69 111.25 +594795.13 5680942.18 108.75 +594795.46 5680177.00 111.25 +594795.64 5679943.67 107.50 +594795.81 5680672.93 111.25 +594796.06 5680214.66 110.00 +594796.07 5680463.06 108.75 +594796.15 5679920.13 106.25 +594796.23 5680385.22 110.00 +594796.31 5680875.13 110.00 +594796.66 5681006.47 107.50 +594796.67 5680127.11 110.00 +594798.14 5680775.39 111.25 +594798.19 5680682.51 111.25 +594798.28 5681052.86 106.25 +594798.33 5680932.71 108.75 +594798.48 5680593.13 110.00 +594798.91 5681570.04 100.00 +594799.00 5680453.51 108.75 +594799.49 5680518.41 108.75 +594799.73 5680375.87 110.00 +594800.04 5679983.66 108.75 +594800.24 5680306.14 111.25 +594800.60 5680692.08 111.25 +594800.88 5680997.48 107.50 +594800.96 5680340.72 111.25 +594801.15 5680866.40 110.00 +594801.19 5680443.80 108.75 +594801.52 5680923.25 108.75 +594801.67 5685406.44 120.00 +594802.04 5679951.33 107.50 +594802.10 5680602.44 110.00 +594802.12 5680206.72 110.00 +594802.19 5681095.14 105.00 +594802.73 5680433.95 108.75 +594802.74 5681043.93 106.25 +594802.75 5680766.66 111.25 +594803.01 5680987.73 107.50 +594803.06 5679993.18 108.75 +594803.30 5680366.55 110.00 +594803.45 5680701.53 111.25 +594803.73 5680283.82 110.00 +594804.34 5685074.59 120.00 +594804.40 5684930.54 120.00 +594804.43 5680133.39 110.00 +594804.56 5679925.45 106.25 +594804.76 5685064.64 120.00 +594804.97 5680913.88 108.75 +594805.02 5680331.81 111.25 +594805.14 5680977.98 107.50 +594805.30 5685054.67 120.00 +594805.30 5680424.29 108.75 +594805.60 5680611.79 110.00 +594805.86 5680526.10 108.75 +594805.89 5680042.50 108.75 +594805.99 5680857.66 110.00 +594806.05 5680052.48 108.75 +594806.08 5680002.70 108.75 +594806.20 5680313.00 111.25 +594806.29 5680710.98 111.25 +594806.50 5680062.46 108.75 +594806.58 5680032.53 108.75 +594806.67 5680072.45 108.75 +594807.08 5680012.59 108.75 +594807.19 5681035.00 106.25 +594807.28 5680022.57 108.75 +594807.37 5680757.94 111.25 +594807.53 5680357.50 110.00 +594807.54 5685084.04 120.00 +594807.81 5680968.37 107.50 +594807.85 5680414.63 108.75 +594807.99 5685045.22 120.00 +594808.01 5681566.29 100.00 +594808.18 5680198.78 110.00 +594808.36 5680322.49 111.25 +594808.44 5679958.99 107.50 +594808.49 5680082.15 108.75 +594808.83 5680904.66 108.75 +594809.09 5680621.15 110.00 +594809.10 5680720.45 111.25 +594809.24 5680848.43 110.00 +594809.50 5679855.18 105.00 +594809.55 5680141.94 110.00 +594809.59 5679865.15 105.00 +594809.69 5679845.22 105.00 +594809.89 5679875.10 105.00 +594810.06 5681089.02 105.00 +594810.08 5679785.53 105.00 +594810.23 5680838.50 110.00 +594810.33 5679835.27 105.00 +594810.36 5685401.54 120.00 +594810.70 5680958.82 107.50 +594810.76 5680828.53 110.00 +594810.82 5679795.48 105.00 +594810.98 5679825.32 105.00 +594811.25 5680818.55 110.00 +594811.28 5685093.26 120.00 +594811.50 5680534.31 108.75 +594811.55 5679805.42 105.00 +594811.56 5680630.81 110.00 +594811.62 5679815.37 105.00 +594811.63 5681026.06 106.25 +594811.71 5680091.61 108.75 +594811.71 5680749.11 111.25 +594811.74 5680808.58 110.00 +594811.75 5680729.96 111.25 +594811.92 5680406.79 108.75 +594811.96 5685036.06 120.00 +594812.09 5679884.82 105.00 +594812.09 5680348.67 110.00 +594812.60 5680189.94 110.00 +594812.90 5680287.71 110.00 +594813.06 5679930.69 106.25 +594813.28 5680151.08 110.00 +594813.39 5680895.79 108.75 +594813.40 5681016.24 106.25 +594813.41 5684933.28 120.00 +594813.52 5680640.60 110.00 +594813.87 5680739.48 111.25 +594813.92 5680798.90 110.00 +594814.42 5680949.60 107.50 +594814.74 5679894.32 105.00 +594814.93 5680101.06 108.75 +594815.11 5679966.41 107.50 +594815.16 5681006.41 106.25 +594815.33 5680650.42 110.00 +594815.56 5680160.80 110.00 +594815.94 5685026.91 120.00 +594816.09 5680180.59 110.00 +594816.17 5685101.96 120.00 +594816.24 5685199.22 120.00 +594816.51 5680542.95 108.75 +594816.60 5680170.66 110.00 +594816.70 5680660.31 110.00 +594816.89 5680789.37 110.00 +594817.25 5685209.15 120.00 +594817.32 5685189.35 120.00 +594817.48 5681563.56 100.00 +594817.93 5681082.90 105.00 +594817.95 5680996.92 106.25 +594818.02 5680670.21 110.00 +594818.27 5685219.08 120.00 +594818.42 5680887.16 108.75 +594818.51 5680341.01 110.00 +594818.95 5685179.51 120.00 +594818.97 5680940.71 107.50 +594819.05 5685396.63 120.00 +594819.28 5685229.00 120.00 +594819.46 5680109.96 108.75 +594819.91 5685017.75 120.00 +594820.08 5680679.96 110.00 +594820.59 5680780.27 110.00 +594820.59 5685169.66 120.00 +594820.93 5684939.84 120.00 +594821.00 5685110.68 120.00 +594821.17 5680404.83 108.75 +594821.30 5680293.11 110.00 +594821.39 5679901.75 105.00 +594821.42 5679936.14 106.25 +594821.51 5680551.60 108.75 +594821.87 5679973.76 107.50 +594822.26 5685159.82 120.00 +594822.32 5680987.95 106.25 +594822.64 5680689.61 110.00 +594822.86 5685008.32 120.00 +594823.40 5685237.80 120.00 +594823.43 5680878.52 108.75 +594823.51 5680931.82 107.50 +594823.79 5685120.26 120.00 +594823.95 5685149.99 120.00 +594824.01 5684998.41 120.00 +594824.03 5684948.70 120.00 +594824.05 5680118.84 108.75 +594824.19 5681075.35 105.00 +594824.62 5685140.05 120.00 +594824.85 5685130.07 120.00 +594825.10 5684958.63 120.00 +594825.16 5684988.49 120.00 +594825.20 5680699.26 110.00 +594825.54 5684968.60 120.00 +594825.55 5680560.71 108.75 +594825.57 5680333.96 110.00 +594825.98 5684978.57 120.00 +594825.99 5680396.08 108.75 +594826.01 5680246.44 108.75 +594826.70 5680978.97 106.25 +594826.75 5680236.51 108.75 +594826.95 5681560.82 100.00 +594826.96 5679982.15 107.50 +594827.35 5680128.24 108.75 +594827.65 5680773.22 110.00 +594827.91 5680226.59 108.75 +594828.02 5680869.65 108.75 +594828.05 5680922.94 107.50 +594828.27 5685393.09 120.00 +594828.49 5679908.68 105.00 +594829.02 5685246.05 120.00 +594829.13 5680216.67 108.75 +594829.16 5680570.02 108.75 +594829.25 5681066.77 105.00 +594829.30 5680299.07 110.00 +594829.53 5679941.90 106.25 +594829.68 5680386.85 108.75 +594830.14 5680255.54 108.75 +594830.19 5680707.81 110.00 +594830.20 5680137.81 108.75 +594830.65 5679991.43 107.50 +594830.74 5680206.81 108.75 +594831.01 5680969.97 106.25 +594831.28 5680040.43 107.50 +594831.39 5680050.40 107.50 +594831.62 5680060.38 107.50 +594832.16 5680070.34 107.50 +594832.34 5680196.95 108.75 +594832.38 5680147.54 108.75 +594832.61 5680860.77 108.75 +594832.65 5680377.31 108.75 +594832.68 5680914.09 107.50 +594832.69 5680579.37 108.75 +594832.79 5680327.06 110.00 +594832.81 5680764.80 110.00 +594833.03 5680317.09 110.00 +594833.06 5680030.61 107.50 +594833.25 5680000.97 107.50 +594833.26 5680307.11 110.00 +594833.30 5680080.26 107.50 +594833.69 5680187.05 108.75 +594833.97 5681058.01 105.00 +594834.16 5680157.38 108.75 +594834.36 5680010.89 107.50 +594834.38 5680264.58 108.75 +594834.63 5685254.30 120.00 +594834.64 5680090.14 107.50 +594834.82 5680960.75 106.25 +594834.84 5680177.13 108.75 +594834.84 5680020.79 107.50 +594834.93 5680716.51 110.00 +594835.18 5680589.04 108.75 +594835.61 5680367.76 108.75 +594835.94 5680167.21 108.75 +594836.34 5680755.51 110.00 +594836.42 5679949.12 106.25 +594836.50 5679914.62 105.00 +594836.62 5681559.09 100.00 +594836.76 5680099.89 107.50 +594836.80 5680851.74 108.75 +594837.35 5680905.27 107.50 +594837.66 5680598.72 108.75 +594837.68 5681048.75 105.00 +594837.91 5680726.02 110.00 +594837.99 5685390.80 120.00 +594838.57 5680358.22 108.75 +594838.64 5680951.52 106.25 +594838.81 5680735.97 110.00 +594838.83 5680745.84 110.00 +594839.37 5680273.23 108.75 +594839.44 5680842.11 108.75 +594839.79 5680109.34 107.50 +594840.15 5680608.40 108.75 +594841.37 5681039.49 105.00 +594841.40 5680832.31 108.75 +594841.74 5685261.01 120.00 +594841.77 5680348.76 108.75 +594842.30 5680896.62 107.50 +594842.40 5680618.11 108.75 +594843.32 5679956.34 106.25 +594843.35 5680822.51 108.75 +594843.38 5680628.06 108.75 +594843.49 5680942.92 106.25 +594844.05 5680118.36 107.50 +594844.32 5680281.91 108.75 +594844.36 5680638.00 108.75 +594844.51 5679920.55 105.00 +594844.99 5681030.20 105.00 +594845.05 5680339.32 108.75 +594845.18 5680235.62 107.50 +594845.38 5680647.94 108.75 +594845.77 5680812.83 108.75 +594846.18 5680225.72 107.50 +594846.41 5681557.99 100.00 +594846.63 5680657.84 108.75 +594846.77 5680245.48 107.50 +594847.53 5680215.83 107.50 +594847.76 5685388.81 120.00 +594847.86 5680888.33 107.50 +594848.14 5680329.82 108.75 +594848.31 5680127.39 107.50 +594848.50 5680667.65 108.75 +594848.53 5680803.23 108.75 +594848.54 5680290.91 108.75 +594848.61 5681020.91 105.00 +594849.31 5679964.28 106.25 +594849.67 5680206.09 107.50 +594849.74 5680935.13 106.25 +594850.16 5685266.36 120.00 +594850.18 5680254.60 107.50 +594850.35 5680320.09 108.75 +594850.37 5680677.47 108.75 +594850.68 5680136.98 107.50 +594851.03 5680300.58 108.75 +594851.67 5680793.76 108.75 +594851.82 5680196.34 107.50 +594852.05 5680146.87 107.50 +594852.30 5681011.65 105.00 +594852.31 5680310.29 108.75 +594852.53 5679926.48 105.00 +594852.65 5680687.19 108.75 +594853.41 5680156.75 107.50 +594853.43 5680880.04 107.50 +594853.85 5680186.57 107.50 +594854.37 5680176.61 107.50 +594854.78 5680166.64 107.50 +594854.84 5679972.59 106.25 +594854.94 5680263.31 107.50 +594855.05 5680696.89 108.75 +594855.81 5680784.67 108.75 +594856.00 5680927.35 106.25 +594856.10 5681002.43 105.00 +594856.21 5681556.88 100.00 +594857.46 5680706.59 108.75 +594857.60 5685387.14 120.00 +594858.58 5680272.60 107.50 +594858.59 5685271.71 120.00 +594858.75 5679981.70 106.25 +594859.14 5680775.30 108.75 +594859.55 5680872.16 107.50 +594859.82 5680716.29 108.75 +594859.91 5680993.21 105.00 +594861.11 5679931.55 105.00 +594861.56 5680765.61 108.75 +594861.94 5679991.15 106.25 +594862.11 5680726.02 108.75 +594862.23 5680281.89 107.50 +594862.28 5680919.60 106.25 +594862.78 5680001.03 106.25 +594863.02 5680735.93 108.75 +594863.06 5680011.01 106.25 +594863.07 5680040.94 106.25 +594863.30 5680030.97 106.25 +594863.32 5680050.86 106.25 +594863.35 5680020.99 106.25 +594863.43 5680745.92 108.75 +594863.71 5680984.00 105.00 +594863.84 5680755.90 108.75 +594865.50 5680291.32 107.50 +594866.00 5681555.78 100.00 +594866.15 5680060.43 106.25 +594866.36 5685384.14 120.00 +594867.01 5685277.07 120.00 +594867.34 5680869.22 107.50 +594867.99 5680975.00 105.00 +594868.44 5680859.30 107.50 +594868.61 5680300.80 107.50 +594868.63 5680911.89 106.25 +594869.01 5680476.90 107.50 +594869.05 5680069.98 106.25 +594869.55 5680849.38 107.50 +594869.65 5680467.06 107.50 +594869.71 5679936.59 105.00 +594869.80 5680486.85 107.50 +594870.02 5685374.85 120.00 +594870.41 5680310.55 107.50 +594870.65 5680839.46 107.50 +594870.89 5680496.75 107.50 +594871.13 5680320.50 107.50 +594871.34 5680350.42 107.50 +594871.56 5680340.44 107.50 +594871.79 5680330.46 107.50 +594871.89 5680829.57 107.50 +594872.02 5680457.36 107.50 +594872.06 5685365.15 120.00 +594872.65 5680966.19 105.00 +594872.95 5680506.52 107.50 +594873.39 5685355.25 120.00 +594873.84 5680078.73 106.25 +594873.85 5680359.98 107.50 +594874.04 5680819.82 107.50 +594874.38 5680447.67 107.50 +594874.42 5685345.33 120.00 +594874.97 5680904.19 106.25 +594875.15 5680516.25 107.50 +594875.34 5685335.39 120.00 +594875.42 5685282.44 120.00 +594875.69 5681553.99 100.00 +594876.18 5680810.07 107.50 +594876.92 5680438.01 107.50 +594877.01 5680369.45 107.50 +594877.84 5680957.79 105.00 +594878.02 5680525.81 107.50 +594878.32 5679941.63 105.00 +594878.44 5680800.36 107.50 +594878.63 5680087.49 106.25 +594878.92 5685326.39 120.00 +594879.51 5680379.07 107.50 +594879.68 5680428.42 107.50 +594880.86 5680388.96 107.50 +594880.90 5680535.37 107.50 +594881.10 5685290.64 120.00 +594882.17 5680418.79 107.50 +594882.20 5680398.86 107.50 +594882.40 5680408.81 107.50 +594882.40 5680791.20 107.50 +594882.44 5680897.79 106.25 +594882.83 5680096.53 106.25 +594884.01 5680544.85 107.50 +594884.41 5685318.05 120.00 +594884.77 5680242.33 106.25 +594884.83 5680232.40 106.25 +594885.19 5680252.31 106.25 +594885.20 5680951.05 105.00 +594885.34 5681552.00 100.00 +594886.20 5680262.19 106.25 +594886.36 5680782.03 107.50 +594886.65 5680105.75 106.25 +594886.68 5685298.88 120.00 +594886.80 5680222.61 106.25 +594886.92 5679946.67 105.00 +594886.93 5685308.86 120.00 +594887.38 5680554.24 107.50 +594888.61 5680271.88 106.25 +594888.78 5680212.83 106.25 +594889.40 5680564.00 107.50 +594889.44 5680772.56 107.50 +594889.53 5680693.30 107.50 +594890.11 5680683.34 107.50 +594890.31 5680703.24 107.50 +594890.48 5680114.97 106.25 +594890.70 5680673.37 107.50 +594891.01 5680281.57 106.25 +594891.02 5680203.10 106.25 +594891.03 5680892.70 106.25 +594891.18 5680573.82 107.50 +594891.27 5680713.18 107.50 +594891.28 5680663.41 107.50 +594891.58 5680653.43 107.50 +594891.91 5680643.46 107.50 +594892.13 5680723.12 107.50 +594892.16 5680762.95 107.50 +594892.55 5680944.32 105.00 +594892.59 5680291.40 106.25 +594892.63 5680633.50 107.50 +594892.69 5680753.04 107.50 +594892.71 5680743.06 107.50 +594892.74 5680733.08 107.50 +594892.95 5680583.65 107.50 +594893.22 5680593.61 107.50 +594893.29 5680193.38 106.25 +594893.31 5680603.59 107.50 +594893.36 5680623.55 107.50 +594893.40 5680613.57 107.50 +594893.47 5680301.34 106.25 +594893.65 5679953.90 105.00 +594894.30 5680124.19 106.25 +594894.38 5680311.28 106.25 +594894.99 5681550.01 100.00 +594895.34 5680321.22 106.25 +594895.56 5680183.66 106.25 +594895.74 5680134.01 106.25 +594896.20 5680884.19 106.25 +594896.53 5680331.12 106.25 +594896.68 5680143.95 106.25 +594897.10 5680173.84 106.25 +594897.32 5680163.87 106.25 +594897.55 5680153.89 106.25 +594898.20 5680340.96 106.25 +594899.87 5680350.80 106.25 +594899.93 5679961.64 105.00 +594900.20 5680937.94 105.00 +594901.31 5680875.61 106.25 +594903.53 5680360.02 106.25 +594904.41 5679970.44 105.00 +594904.64 5680866.24 106.25 +594904.70 5681548.37 100.00 +594907.65 5680856.72 106.25 +594907.79 5680369.05 106.25 +594907.88 5680846.82 106.25 +594908.09 5679979.71 105.00 +594908.13 5680931.89 105.00 +594908.57 5680836.95 106.25 +594910.42 5679989.26 105.00 +594910.81 5679999.22 105.00 +594910.92 5680827.25 106.25 +594911.21 5680009.19 105.00 +594912.05 5680378.07 106.25 +594912.56 5680019.06 105.00 +594913.28 5680817.55 106.25 +594914.13 5680028.90 105.00 +594914.52 5681547.54 100.00 +594915.21 5680387.53 106.25 +594915.32 5680925.08 105.00 +594916.05 5680807.96 106.25 +594916.58 5680038.57 105.00 +594918.23 5680397.05 106.25 +594918.97 5680798.41 106.25 +594919.03 5680048.23 105.00 +594921.24 5680406.56 106.25 +594921.59 5680917.33 105.00 +594921.75 5680057.82 105.00 +594921.89 5680788.87 106.25 +594922.76 5680416.36 106.25 +594922.88 5680466.18 106.25 +594923.13 5680456.22 106.25 +594923.44 5680426.32 106.25 +594923.64 5680446.25 106.25 +594924.11 5680436.28 106.25 +594924.19 5680476.07 106.25 +594924.34 5681546.70 100.00 +594924.57 5680067.39 105.00 +594924.75 5680779.31 106.25 +594925.51 5680485.97 106.25 +594926.93 5680495.85 106.25 +594927.14 5680909.21 105.00 +594927.38 5680076.95 105.00 +594927.62 5680769.74 106.25 +594927.75 5680260.27 105.00 +594927.98 5680250.30 105.00 +594928.02 5680270.22 105.00 +594928.46 5680505.71 106.25 +594928.50 5680240.36 105.00 +594928.94 5680280.15 105.00 +594929.78 5680899.60 105.00 +594929.86 5680290.08 105.00 +594929.98 5680515.58 106.25 +594930.08 5680230.52 105.00 +594930.19 5680086.52 105.00 +594930.49 5680760.18 106.25 +594930.77 5680300.01 105.00 +594931.50 5680525.44 106.25 +594931.82 5680750.34 106.25 +594931.97 5680309.89 105.00 +594932.40 5680670.63 106.25 +594932.42 5680889.98 105.00 +594932.49 5680220.89 105.00 +594932.52 5680740.38 106.25 +594932.60 5680660.78 106.25 +594933.12 5680680.58 106.25 +594933.23 5680730.43 106.25 +594933.57 5680095.89 105.00 +594933.78 5680720.46 106.25 +594933.84 5680690.54 106.25 +594934.01 5680710.48 106.25 +594934.11 5681547.58 100.00 +594934.23 5680319.60 105.00 +594934.23 5680700.50 106.25 +594935.18 5680534.67 106.25 +594935.50 5680880.50 105.00 +594935.56 5680651.24 106.25 +594936.02 5680211.57 105.00 +594936.49 5680329.31 105.00 +594937.12 5680105.21 105.00 +594938.52 5680641.71 106.25 +594938.65 5680871.04 105.00 +594939.20 5680338.88 105.00 +594939.27 5680543.78 106.25 +594939.55 5680202.25 105.00 +594940.42 5680631.92 106.25 +594940.50 5680114.59 105.00 +594941.05 5680861.38 105.00 +594941.90 5680553.40 106.25 +594942.29 5680622.11 106.25 +594942.39 5680192.71 105.00 +594943.02 5680348.09 105.00 +594943.09 5680851.62 105.00 +594943.64 5680124.05 105.00 +594943.87 5681548.98 100.00 +594944.33 5680612.34 106.25 +594944.42 5680182.95 105.00 +594944.47 5680563.05 106.25 +594945.13 5680841.86 105.00 +594946.10 5680173.12 105.00 +594946.24 5680602.55 106.25 +594946.25 5680572.87 106.25 +594946.76 5680133.52 105.00 +594946.83 5680357.31 105.00 +594947.17 5680832.10 105.00 +594947.26 5680592.62 106.25 +594947.49 5680143.46 105.00 +594947.77 5680163.30 105.00 +594947.98 5680582.70 106.25 +594948.23 5680153.41 105.00 +594949.44 5680822.40 105.00 +594950.69 5680366.50 105.00 +594952.46 5680812.89 105.00 +594953.47 5681551.07 100.00 +594954.63 5680375.66 105.00 +594955.48 5680803.39 105.00 +594958.50 5680793.89 105.00 +594958.58 5680384.81 105.00 +594961.52 5680784.39 105.00 +594962.53 5680393.97 105.00 +594962.91 5681553.91 100.00 +594964.67 5680774.93 105.00 +594966.43 5680403.14 105.00 +594967.85 5680765.50 105.00 +594967.92 5680725.84 105.00 +594968.43 5680715.88 105.00 +594968.48 5680412.90 105.00 +594968.79 5680755.57 105.00 +594968.94 5680735.74 105.00 +594968.94 5680705.92 105.00 +594969.72 5680745.65 105.00 +594969.84 5680696.01 105.00 +594970.52 5680422.66 105.00 +594971.81 5680686.24 105.00 +594972.32 5681556.84 100.00 +594972.65 5680432.40 105.00 +594973.78 5680676.46 105.00 +594974.84 5680442.13 105.00 +594975.75 5680666.69 105.00 +594977.04 5680451.85 105.00 +594978.30 5680657.06 105.00 +594978.68 5681354.64 100.00 +594978.85 5680461.63 105.00 +594979.15 5680471.59 105.00 +594979.45 5680481.56 105.00 +594979.91 5680491.51 105.00 +594980.85 5681347.87 100.00 +594981.29 5680647.55 105.00 +594981.45 5680501.36 105.00 +594981.63 5681560.09 100.00 +594982.99 5680511.21 105.00 +594984.27 5680638.04 105.00 +594984.53 5680521.06 105.00 +594984.66 5681361.15 100.00 +594986.10 5680530.91 105.00 +594986.41 5681567.80 100.00 +594986.52 5681354.52 99.50 +594987.26 5680628.52 105.00 +594988.66 5680540.55 105.00 +594989.59 5681577.11 100.00 +594989.68 5681348.04 100.00 +594989.74 5680618.87 105.00 +594991.21 5680550.18 105.00 +594992.09 5680609.18 105.00 +594993.00 5681362.60 100.00 +594993.76 5680559.82 105.00 +594994.21 5681354.46 100.00 +594994.30 5680599.47 105.00 +594994.78 5680569.72 105.00 +594994.90 5681585.42 100.00 +594995.48 5680579.66 105.00 +594995.69 5680589.59 105.00 +595000.15 5681378.18 100.00 +595001.46 5681592.49 100.00 +595006.75 5681374.01 100.00 +595008.04 5681383.22 100.00 +595009.75 5681597.33 100.00 +595015.69 5681379.45 99.50 +595016.45 5681373.56 100.00 +595017.74 5681384.00 100.00 +595019.10 5681594.21 100.00 +595024.30 5681378.91 99.50 +595026.07 5681372.06 100.00 +595027.48 5681383.90 100.00 +595028.79 5681595.19 100.00 +595032.92 5681378.40 99.50 +595035.73 5681371.83 100.00 +595037.21 5681383.69 100.00 +595038.08 5681597.53 100.00 +595041.54 5681378.79 99.50 +595043.39 5678374.26 101.25 +595044.57 5681604.95 100.00 +595045.43 5681372.71 100.00 +595045.58 5678364.58 101.25 +595045.81 5678383.96 101.25 +595045.92 5681548.70 100.00 +595046.22 5681558.67 100.00 +595046.76 5681384.72 100.00 +595047.84 5681568.22 100.00 +595048.71 5678355.11 101.25 +595048.88 5681613.36 100.00 +595049.73 5681539.49 100.00 +595050.16 5681379.18 99.50 +595050.24 5681623.13 100.00 +595050.82 5678392.54 101.25 +595051.59 5681632.89 100.00 +595052.32 5678345.80 101.25 +595052.95 5681642.65 100.00 +595053.23 5681576.60 100.00 +595053.57 5681530.28 100.00 +595054.92 5681374.76 100.00 +595055.10 5678401.49 101.25 +595055.87 5681651.93 100.00 +595055.99 5681387.80 100.00 +595057.18 5678337.11 101.25 +595057.36 5681585.68 100.00 +595057.85 5678411.07 101.25 +595057.86 5681521.28 100.00 +595059.87 5678420.86 101.25 +595060.27 5681660.74 100.00 +595061.38 5681512.09 100.00 +595061.65 5681594.68 100.00 +595061.79 5681502.12 100.00 +595061.89 5678430.64 101.25 +595062.20 5681492.15 100.00 +595062.54 5678328.68 101.25 +595063.66 5681381.80 100.00 +595064.34 5681377.24 100.00 +595064.48 5681482.57 100.00 +595066.62 5681667.73 100.00 +595066.73 5681603.27 100.00 +595067.90 5678320.25 101.25 +595068.01 5681473.24 100.00 +595068.13 5678438.44 101.25 +595069.55 5681612.77 100.00 +595072.03 5681464.12 100.00 +595072.77 5678311.55 101.25 +595073.88 5681621.62 100.00 +595074.40 5678446.21 101.25 +595075.18 5681672.62 100.00 +595076.55 5681455.23 100.00 +595076.98 5678302.48 101.25 +595080.39 5681628.98 100.00 +595080.66 5681723.78 100.00 +595080.72 5679031.74 101.25 +595081.07 5681446.33 100.00 +595081.08 5679041.72 101.25 +595081.16 5678293.41 101.25 +595081.41 5678453.33 101.25 +595081.88 5679051.66 101.25 +595082.01 5681679.54 100.00 +595082.75 5679022.18 101.25 +595083.87 5679061.45 101.25 +595084.46 5678283.98 101.25 +595085.59 5681437.44 100.00 +595086.22 5681715.65 100.00 +595086.27 5679071.13 101.25 +595086.56 5679012.95 101.25 +595087.76 5678274.55 101.25 +595088.20 5681687.21 100.00 +595088.55 5681634.71 100.00 +595089.44 5681706.45 100.00 +595089.56 5679080.56 101.25 +595089.94 5678457.88 101.25 +595090.01 5681696.81 100.00 +595090.36 5679003.71 101.25 +595090.88 5678265.07 101.25 +595090.89 5681428.99 100.00 +595092.45 5679313.50 101.25 +595092.81 5679303.57 101.25 +595092.87 5679089.99 101.25 +595092.96 5679323.47 101.25 +595093.51 5678255.43 101.25 +595094.28 5679333.38 101.25 +595094.60 5679293.74 101.25 +595096.31 5681420.62 100.00 +595096.39 5679283.91 101.25 +595096.45 5679099.31 101.25 +595096.46 5679343.10 101.25 +595096.79 5678246.10 101.25 +595096.98 5681640.05 100.00 +595097.93 5678997.51 101.25 +595098.47 5679274.14 101.25 +595099.22 5679352.70 101.25 +595099.48 5678460.79 101.25 +595099.95 5681411.42 100.00 +595100.04 5679108.64 101.25 +595100.67 5679264.39 101.25 +595102.20 5679362.23 101.25 +595102.58 5678237.95 101.25 +595102.86 5679254.64 101.25 +595103.58 5681402.17 100.00 +595103.59 5679117.97 101.25 +595105.02 5679244.89 101.25 +595105.86 5679371.52 101.25 +595106.05 5681644.03 100.00 +595106.38 5678992.20 101.25 +595106.95 5679127.39 101.25 +595107.17 5679235.13 101.25 +595108.18 5681393.32 100.00 +595108.37 5678229.81 101.25 +595108.63 5678464.80 101.25 +595108.76 5681383.42 100.00 +595109.03 5679225.32 101.25 +595109.09 5681373.45 100.00 +595109.52 5679380.82 101.25 +595109.97 5681363.52 100.00 +595110.30 5679136.80 101.25 +595110.76 5679215.48 101.25 +595112.09 5681354.03 100.00 +595112.54 5679205.65 101.25 +595113.19 5679390.12 101.25 +595113.44 5679146.28 101.25 +595114.29 5679156.21 101.25 +595114.36 5679195.82 101.25 +595114.65 5678222.09 101.25 +595115.11 5678987.35 101.25 +595115.18 5679166.16 101.25 +595115.50 5681647.24 100.00 +595116.18 5679186.00 101.25 +595116.19 5679176.10 101.25 +595116.74 5679399.45 101.25 +595117.78 5678468.81 101.25 +595118.23 5681346.28 100.00 +595120.22 5679408.82 101.25 +595121.86 5678215.18 101.25 +595121.90 5678980.14 101.25 +595123.70 5679418.18 101.25 +595124.94 5681650.46 100.00 +595126.49 5679427.76 101.25 +595126.56 5681340.80 100.00 +595127.17 5678472.18 101.25 +595128.30 5678972.47 101.25 +595128.94 5679437.45 101.25 +595129.08 5678208.27 101.25 +595131.38 5679447.14 101.25 +595133.30 5679456.94 101.25 +595134.73 5679655.77 101.25 +595134.88 5678964.95 101.25 +595134.90 5681335.32 100.00 +595135.00 5679466.78 101.25 +595135.17 5679665.71 101.25 +595135.45 5679645.80 101.25 +595136.17 5679635.84 101.25 +595136.29 5679675.64 101.25 +595136.61 5678201.71 101.25 +595136.68 5678475.25 101.25 +595136.85 5679625.87 101.25 +595136.93 5679476.58 101.25 +595137.28 5679615.89 101.25 +595137.41 5679685.57 101.25 +595137.70 5679605.91 101.25 +595138.25 5679595.93 101.25 +595138.85 5679585.96 101.25 +595139.45 5679575.99 101.25 +595139.51 5679695.33 101.25 +595139.59 5679486.21 101.25 +595139.96 5679566.01 101.25 +595140.16 5679506.08 101.25 +595140.21 5679556.02 101.25 +595140.31 5679496.09 101.25 +595140.32 5679516.06 101.25 +595140.45 5679546.03 101.25 +595140.49 5679526.05 101.25 +595140.66 5679536.04 101.25 +595141.58 5678957.54 101.25 +595141.77 5679705.06 101.25 +595142.23 5681328.57 100.00 +595144.22 5678195.24 101.25 +595144.47 5679714.65 101.25 +595146.28 5678477.90 101.25 +595148.08 5679723.97 101.25 +595148.28 5678950.13 101.25 +595149.48 5681321.72 100.00 +595151.69 5679733.29 101.25 +595151.83 5678188.77 101.25 +595154.97 5678942.71 101.25 +595155.29 5679742.61 101.25 +595156.20 5678479.16 101.25 +595157.07 5681315.34 100.00 +595158.06 5679752.20 101.25 +595159.45 5678182.30 101.25 +595160.72 5679761.83 101.25 +595161.67 5678935.30 101.25 +595163.35 5679771.47 101.25 +595165.28 5678174.32 101.25 +595165.54 5679781.22 101.25 +595165.91 5681310.73 100.00 +595166.02 5678480.76 101.25 +595167.73 5679790.97 101.25 +595167.83 5678927.46 101.25 +595169.92 5679800.71 101.25 +595170.37 5678165.73 101.25 +595172.28 5679810.41 101.25 +595173.53 5678919.25 101.25 +595174.25 5678156.53 101.25 +595174.76 5681306.12 100.00 +595175.41 5678484.18 101.25 +595175.59 5679819.84 101.25 +595178.91 5679829.26 101.25 +595179.23 5678911.05 101.25 +595180.65 5678149.15 101.25 +595182.96 5679838.38 101.25 +595184.12 5681303.72 100.00 +595184.45 5678488.10 101.25 +595184.64 5678902.66 101.25 +595184.99 5678140.25 101.25 +595186.95 5678130.45 101.25 +595187.40 5679847.33 101.25 +595188.91 5678120.65 101.25 +595189.59 5681744.87 100.00 +595189.81 5678894.11 101.25 +595190.94 5678495.70 101.25 +595191.19 5678110.99 101.25 +595191.84 5679856.28 101.25 +595194.09 5681303.96 100.00 +595194.98 5678885.55 101.25 +595196.29 5679865.22 101.25 +595196.43 5678102.56 101.25 +595197.15 5678072.98 101.25 +595197.45 5678503.27 101.25 +595197.66 5678082.92 101.25 +595198.26 5678063.05 101.25 +595198.60 5681749.15 100.00 +595198.62 5678092.86 101.25 +595198.98 5678876.50 101.25 +595200.93 5679874.07 101.25 +595201.70 5678866.88 101.25 +595202.29 5678054.31 101.25 +595204.00 5681304.75 100.00 +595204.12 5678510.70 101.25 +595204.42 5678857.27 101.25 +595205.89 5679882.74 101.25 +595205.98 5678847.44 101.25 +595206.81 5678837.49 101.25 +595207.62 5681753.43 100.00 +595207.67 5678827.53 101.25 +595208.66 5678817.59 101.25 +595208.76 5678046.74 101.25 +595209.65 5678807.65 101.25 +595210.63 5678797.71 101.25 +595210.85 5679891.41 101.25 +595211.29 5678517.66 101.25 +595212.22 5678787.84 101.25 +595213.72 5681306.98 100.00 +595213.84 5678777.98 101.25 +595215.55 5678768.14 101.25 +595215.80 5679900.09 101.25 +595216.31 5678040.20 101.25 +595216.69 5681757.60 100.00 +595217.30 5678758.30 101.25 +595219.20 5678748.50 101.25 +595219.65 5679909.26 101.25 +595220.22 5678522.14 101.25 +595221.25 5678738.72 101.25 +595222.85 5679918.73 101.25 +595223.40 5678728.96 101.25 +595223.45 5681309.21 100.00 +595224.89 5679928.47 101.25 +595224.98 5678035.45 101.25 +595225.80 5681761.67 100.00 +595226.41 5679938.35 101.25 +595227.23 5678719.78 101.25 +595227.92 5679948.23 101.25 +595228.97 5678423.10 100.00 +595229.05 5678432.89 100.00 +595229.17 5678526.57 101.25 +595229.34 5679958.11 101.25 +595229.77 5679968.09 101.25 +595230.20 5679978.07 101.25 +595230.28 5678442.80 100.00 +595230.81 5679988.04 101.25 +595231.35 5678452.73 100.00 +595232.37 5678462.67 100.00 +595232.81 5679997.82 101.25 +595232.93 5678414.17 100.00 +595232.96 5678711.68 101.25 +595232.96 5681312.15 100.00 +595234.31 5681766.77 100.00 +595234.41 5678032.86 101.25 +595234.82 5680007.61 101.25 +595235.79 5678471.96 100.00 +595236.84 5680017.39 101.25 +595238.15 5678530.94 101.25 +595239.33 5678703.98 101.25 +595240.24 5680026.79 101.25 +595241.02 5678480.08 100.00 +595241.37 5678408.82 100.00 +595242.22 5681772.85 100.00 +595242.38 5681315.45 100.00 +595243.65 5680036.18 101.25 +595244.05 5680290.09 101.25 +595244.36 5680280.19 101.25 +595244.39 5678033.34 101.25 +595245.08 5680300.03 101.25 +595245.95 5680270.33 101.25 +595246.11 5680309.97 101.25 +595246.15 5678696.69 101.25 +595247.05 5680045.58 101.25 +595247.26 5678535.05 101.25 +595247.53 5680260.46 101.25 +595247.61 5680319.83 101.25 +595249.49 5680250.67 101.25 +595249.49 5678485.37 100.00 +595249.61 5679319.69 100.00 +595249.65 5680329.61 101.25 +595249.99 5681779.11 100.00 +595250.30 5680055.02 101.25 +595250.33 5679309.93 100.00 +595250.72 5678405.46 100.00 +595250.77 5679329.61 100.00 +595251.09 5681320.12 100.00 +595251.72 5680339.39 101.25 +595251.73 5680240.93 101.25 +595251.93 5679339.54 100.00 +595253.13 5678689.54 101.25 +595253.17 5679300.36 100.00 +595253.52 5680064.48 101.25 +595253.88 5680349.14 101.25 +595253.97 5680231.20 101.25 +595254.15 5678035.23 101.25 +595254.49 5679349.09 100.00 +595255.20 5678231.19 100.00 +595255.96 5680221.41 101.25 +595256.03 5680358.90 101.25 +595256.37 5678539.16 101.25 +595256.45 5680074.02 101.25 +595256.58 5678241.08 100.00 +595257.02 5680368.80 101.25 +595257.06 5679291.25 100.00 +595257.40 5681785.80 100.00 +595257.41 5680378.79 101.25 +595257.75 5680211.58 101.25 +595257.96 5678250.98 100.00 +595258.36 5679358.30 100.00 +595258.42 5680083.81 101.25 +595258.44 5678489.55 100.00 +595259.22 5680388.56 101.25 +595259.30 5681325.80 100.00 +595259.55 5680201.75 101.25 +595260.11 5678682.39 101.25 +595260.29 5678402.60 100.00 +595260.39 5680093.61 101.25 +595261.74 5680192.01 101.25 +595261.75 5680398.22 101.25 +595262.22 5679367.51 100.00 +595262.32 5679282.76 100.00 +595262.37 5680103.40 101.25 +595262.44 5678258.55 100.00 +595263.87 5678037.48 101.25 +595264.16 5680113.23 101.25 +595264.27 5680182.34 101.25 +595264.29 5680407.89 101.25 +595264.81 5681792.49 100.00 +595265.82 5680123.08 101.25 +595266.02 5678541.63 101.25 +595266.10 5679376.72 100.00 +595266.80 5680172.68 101.25 +595266.82 5680417.55 101.25 +595267.22 5681331.85 100.00 +595267.48 5680132.93 101.25 +595267.79 5678676.03 101.25 +595267.85 5679274.55 100.00 +595268.12 5680162.80 101.25 +595268.13 5678491.96 100.00 +595268.48 5680142.85 101.25 +595268.62 5680152.84 101.25 +595269.35 5680427.22 101.25 +595269.91 5678399.90 100.00 +595269.99 5679385.92 100.00 +595270.24 5681044.98 101.25 +595271.54 5678262.66 100.00 +595272.54 5681798.81 100.00 +595273.74 5678038.99 101.25 +595273.88 5679395.12 100.00 +595273.94 5680436.08 101.25 +595274.68 5681338.44 100.00 +595275.69 5678669.90 101.25 +595275.78 5678543.79 101.25 +595276.30 5681037.04 101.25 +595276.66 5679269.85 100.00 +595277.77 5679404.32 100.00 +595277.82 5678494.38 100.00 +595278.61 5680444.91 101.25 +595279.43 5678397.00 100.00 +595280.26 5681805.13 100.00 +595280.87 5678265.93 100.00 +595281.33 5679413.65 100.00 +595282.03 5681344.78 100.00 +595282.36 5681029.09 101.25 +595282.73 5678043.37 101.25 +595283.29 5680453.74 101.25 +595283.59 5678663.79 101.25 +595284.58 5679423.09 100.00 +595285.47 5679265.14 100.00 +595285.53 5678545.94 101.25 +595287.75 5678495.40 100.00 +595287.81 5678391.56 100.00 +595287.84 5679432.53 100.00 +595287.99 5681811.45 100.00 +595288.74 5680462.06 101.25 +595288.84 5681021.51 101.25 +595290.81 5678266.87 100.00 +595291.08 5679441.98 100.00 +595291.52 5678657.72 101.25 +595291.82 5681346.69 100.00 +595292.53 5678042.69 101.25 +595293.65 5681819.62 100.00 +595294.19 5679451.47 100.00 +595294.58 5678384.58 100.00 +595294.65 5679261.43 100.00 +595295.07 5680469.78 101.25 +595295.32 5678547.94 101.25 +595295.70 5681014.25 101.25 +595297.30 5679460.97 100.00 +595297.70 5678496.34 100.00 +595299.07 5681828.00 100.00 +595299.40 5678375.84 100.00 +595299.46 5678651.64 101.25 +595300.41 5679470.46 100.00 +595300.76 5678267.81 100.00 +595301.61 5681348.61 100.00 +595301.69 5680477.27 101.25 +595302.43 5678041.37 101.25 +595302.57 5681006.99 101.25 +595303.57 5678366.77 100.00 +595304.39 5679259.19 100.00 +595304.50 5681836.38 100.00 +595305.13 5678549.83 101.25 +595305.57 5679478.96 100.00 +595307.56 5678645.80 101.25 +595307.64 5678497.28 100.00 +595307.75 5678357.69 100.00 +595308.38 5680484.68 101.25 +595309.71 5681000.04 101.25 +595309.92 5681844.76 100.00 +595309.97 5678271.36 100.00 +595311.05 5679487.31 100.00 +595311.51 5681349.74 100.00 +595311.89 5678348.60 100.00 +595312.34 5678040.05 101.25 +595314.12 5679256.94 100.00 +595314.94 5678551.72 101.25 +595315.08 5680492.10 101.25 +595315.35 5681853.14 100.00 +595315.76 5678640.10 101.25 +595316.04 5678339.51 100.00 +595317.59 5678497.14 100.00 +595317.73 5680994.08 101.25 +595318.18 5679494.21 100.00 +595318.93 5678275.77 100.00 +595319.25 5679681.43 100.00 +595319.30 5678003.08 101.25 +595319.57 5678009.82 101.25 +595320.30 5679691.36 100.00 +595320.49 5678330.58 100.00 +595320.78 5681861.52 100.00 +595320.83 5679671.84 100.00 +595321.06 5680500.10 101.25 +595321.35 5679701.29 100.00 +595321.45 5681350.50 100.00 +595322.32 5678040.09 101.25 +595322.40 5679711.23 100.00 +595323.22 5678633.56 101.25 +595323.86 5679254.73 100.00 +595324.19 5679721.04 100.00 +595324.42 5679662.52 100.00 +595324.55 5678554.40 101.25 +595324.97 5678993.66 100.00 +595325.07 5678283.53 100.00 +595325.16 5678321.74 100.00 +595325.68 5680988.04 101.25 +595325.82 5679500.65 100.00 +595325.91 5678983.75 100.00 +595326.20 5681869.90 100.00 +595326.28 5679730.81 100.00 +595326.53 5678016.76 101.25 +595326.99 5680508.14 101.25 +595327.04 5678973.83 100.00 +595327.41 5678312.15 100.00 +595327.46 5679003.34 100.00 +595327.54 5678496.27 100.00 +595328.28 5679653.36 100.00 +595328.31 5678963.92 100.00 +595328.49 5679740.55 100.00 +595328.66 5678302.24 100.00 +595328.89 5678292.25 100.00 +595328.90 5678001.05 101.25 +595328.97 5682733.65 101.25 +595329.79 5678626.03 101.25 +595329.89 5678954.06 100.00 +595329.95 5679013.01 100.00 +595330.17 5682742.83 101.25 +595331.40 5681351.27 100.00 +595331.46 5678944.19 100.00 +595331.50 5679750.07 100.00 +595331.63 5681878.28 100.00 +595332.31 5678040.22 101.25 +595332.64 5678934.28 100.00 +595332.92 5680516.18 101.25 +595333.04 5680981.28 101.25 +595333.08 5678559.06 101.25 +595333.45 5679507.09 100.00 +595333.61 5678924.33 100.00 +595333.82 5679253.92 100.00 +595333.86 5682752.12 101.25 +595334.27 5682725.30 101.25 +595334.52 5679759.59 100.00 +595334.53 5678022.75 101.25 +595334.58 5678914.39 100.00 +595334.67 5679645.68 100.00 +595335.55 5678904.45 100.00 +595336.35 5678618.50 101.25 +595336.38 5678894.50 100.00 +595336.39 5679019.66 100.00 +595336.62 5678032.36 101.25 +595337.14 5678884.54 100.00 +595337.17 5681886.57 100.00 +595337.37 5679769.17 100.00 +595337.49 5678495.39 100.00 +595337.90 5678874.58 100.00 +595338.87 5678001.69 101.25 +595339.06 5678864.67 100.00 +595339.22 5680523.93 101.25 +595340.16 5679778.76 100.00 +595340.22 5678566.05 101.25 +595340.39 5680974.52 101.25 +595341.06 5679638.00 100.00 +595341.07 5678854.89 100.00 +595341.11 5682758.59 101.25 +595341.36 5679513.20 100.00 +595341.37 5681351.68 100.00 +595341.50 5682718.39 101.25 +595342.65 5679788.42 100.00 +595342.92 5678610.97 101.25 +595343.58 5678845.25 100.00 +595343.77 5679253.11 100.00 +595343.81 5681894.02 100.00 +595344.57 5679798.23 100.00 +595345.64 5680531.58 101.25 +595345.85 5679022.23 100.00 +595346.49 5679808.03 100.00 +595346.84 5678573.52 101.25 +595346.95 5678602.03 101.25 +595347.21 5678835.94 100.00 +595347.44 5678494.51 100.00 +595347.58 5679630.43 100.00 +595347.72 5680967.73 101.25 +595348.11 5679817.88 100.00 +595348.34 5679937.61 100.00 +595348.43 5679867.72 100.00 +595348.53 5679947.59 100.00 +595348.64 5679927.63 100.00 +595348.70 5679877.70 100.00 +595348.84 5678002.34 101.25 +595348.84 5679857.74 100.00 +595348.94 5679917.64 100.00 +595349.02 5679827.82 100.00 +595349.03 5679887.69 100.00 +595349.04 5679957.57 100.00 +595349.24 5679907.66 100.00 +595349.25 5679847.76 100.00 +595349.26 5679519.30 100.00 +595349.31 5682764.31 101.25 +595349.35 5679897.67 100.00 +595349.54 5679967.54 100.00 +595349.66 5679837.78 100.00 +595349.91 5678582.79 101.25 +595349.93 5678592.49 101.25 +595350.05 5679977.52 100.00 +595350.34 5682715.00 101.25 +595350.45 5681901.47 100.00 +595351.17 5679987.43 100.00 +595351.34 5681352.06 100.00 +595352.40 5680538.87 101.25 +595352.50 5678827.49 100.00 +595352.82 5679997.28 100.00 +595353.73 5679252.29 100.00 +595354.22 5679622.97 100.00 +595354.44 5680960.34 101.25 +595354.46 5680007.13 100.00 +595355.77 5679023.39 100.00 +595356.11 5680016.99 100.00 +595356.84 5679525.74 100.00 +595357.10 5681908.92 100.00 +595357.39 5678493.64 100.00 +595357.52 5682770.02 101.25 +595357.94 5678819.11 100.00 +595358.00 5680026.79 100.00 +595358.78 5678003.20 101.25 +595359.99 5680036.58 100.00 +595360.29 5682714.02 101.25 +595360.39 5679615.11 100.00 +595360.54 5680544.66 101.25 +595361.05 5680952.85 101.25 +595361.29 5681352.55 100.00 +595361.97 5680046.37 100.00 +595363.06 5679533.56 100.00 +595363.41 5678810.75 100.00 +595363.68 5679251.48 100.00 +595363.96 5680056.16 100.00 +595364.19 5681915.90 100.00 +595365.61 5682775.89 101.25 +595365.73 5679023.57 100.00 +595365.95 5680065.95 100.00 +595366.52 5679607.23 100.00 +595366.76 5680944.66 101.25 +595367.21 5678491.86 100.00 +595367.94 5680075.74 100.00 +595367.94 5679542.23 100.00 +595368.50 5678005.51 101.25 +595368.89 5678802.40 100.00 +595369.73 5680548.37 101.25 +595369.90 5680085.53 100.00 +595370.27 5682714.44 101.25 +595371.12 5681354.26 100.00 +595371.82 5679598.87 100.00 +595371.87 5680095.33 100.00 +595371.91 5681922.23 100.00 +595372.43 5679551.15 100.00 +595372.48 5680936.46 101.25 +595373.44 5682782.12 101.25 +595373.64 5679250.67 100.00 +595373.83 5680105.12 100.00 +595375.37 5680114.96 100.00 +595375.50 5679589.58 100.00 +595375.57 5680124.95 100.00 +595375.64 5680174.89 100.00 +595375.71 5680164.90 100.00 +595375.72 5679023.33 100.00 +595375.73 5679560.58 100.00 +595375.78 5680134.94 100.00 +595375.78 5680154.92 100.00 +595375.85 5680144.93 100.00 +595376.08 5680184.87 100.00 +595376.69 5680194.84 100.00 +595376.72 5678796.36 100.00 +595376.97 5678489.76 100.00 +595377.31 5680204.81 100.00 +595377.71 5679579.91 100.00 +595378.15 5680214.75 100.00 +595378.19 5680928.27 101.25 +595378.22 5678007.83 101.25 +595379.02 5679570.01 100.00 +595379.24 5680551.41 101.25 +595379.63 5681928.56 100.00 +595379.84 5680224.60 100.00 +595380.24 5682715.11 101.25 +595380.66 5682577.39 100.00 +595380.95 5681355.97 100.00 +595381.26 5682788.35 101.25 +595381.54 5680234.44 100.00 +595382.56 5680919.35 101.25 +595383.45 5679252.27 100.00 +595383.87 5680244.12 100.00 +595384.43 5682568.76 100.00 +595384.50 5682586.13 100.00 +595385.02 5678790.79 100.00 +595385.70 5679023.23 100.00 +595386.25 5680910.06 101.25 +595386.74 5678487.65 100.00 +595387.13 5680253.57 100.00 +595387.35 5681934.89 100.00 +595387.40 5678011.30 101.25 +595388.71 5682794.99 101.25 +595388.86 5680554.13 101.25 +595390.04 5682717.01 101.25 +595390.38 5680263.01 100.00 +595390.49 5681358.76 100.00 +595390.62 5680901.09 101.25 +595392.44 5682563.66 100.00 +595393.25 5679254.25 100.00 +595393.39 5678785.34 100.00 +595393.64 5680272.45 100.00 +595393.81 5682588.21 100.00 +595394.37 5678018.07 101.25 +595395.21 5680892.21 101.25 +595395.66 5679023.99 100.00 +595395.77 5682802.08 101.25 +595396.50 5678485.55 100.00 +595396.61 5681938.52 100.00 +595397.71 5680281.57 100.00 +595398.31 5678027.25 101.25 +595398.52 5680556.66 101.25 +595399.37 5682720.35 101.25 +595399.79 5680883.33 101.25 +595399.84 5681362.24 100.00 +595401.81 5680290.68 100.00 +595401.98 5682563.88 100.00 +595402.81 5678782.10 100.00 +595402.82 5682809.16 101.25 +595403.04 5679256.23 100.00 +595403.14 5682590.21 100.00 +595403.63 5680784.90 101.25 +595403.75 5680874.25 101.25 +595403.81 5680774.94 101.25 +595403.94 5680794.89 101.25 +595404.24 5680804.88 101.25 +595404.55 5680814.86 101.25 +595404.93 5680765.01 101.25 +595405.29 5680824.81 101.25 +595405.32 5680864.38 101.25 +595405.62 5679024.75 100.00 +595405.98 5681941.96 100.00 +595406.05 5680755.08 101.25 +595406.08 5678033.27 101.25 +595406.09 5680299.67 100.00 +595406.30 5678483.59 100.00 +595406.54 5680834.73 101.25 +595406.89 5680854.52 101.25 +595407.17 5680745.15 101.25 +595407.79 5680844.64 101.25 +595408.21 5682725.03 101.25 +595408.28 5680558.50 101.25 +595408.51 5682578.33 99.75 +595409.09 5680735.39 101.25 +595409.19 5681365.72 100.00 +595410.82 5682814.69 101.25 +595411.43 5682564.99 100.00 +595412.13 5680725.88 101.25 +595412.31 5678779.02 100.00 +595412.63 5682591.29 100.00 +595412.84 5679258.13 100.00 +595412.86 5680307.02 100.00 +595414.71 5678037.95 101.25 +595415.16 5680716.36 101.25 +595415.53 5681944.69 100.00 +595415.58 5679025.52 100.00 +595416.14 5678481.89 100.00 +595417.07 5682729.67 101.25 +595418.14 5681370.07 100.00 +595418.20 5680706.84 101.25 +595418.27 5680558.59 101.25 +595419.63 5680314.36 100.00 +595420.56 5682816.53 101.25 +595420.78 5682566.89 100.00 +595421.97 5678776.60 100.00 +595422.07 5682592.65 100.00 +595422.43 5680697.84 101.25 +595422.66 5679259.96 100.00 +595424.60 5678039.36 101.25 +595424.88 5679028.91 100.00 +595425.41 5681946.08 100.00 +595425.98 5678480.18 100.00 +595426.20 5682733.75 101.25 +595426.40 5680321.71 100.00 +595426.94 5681374.78 100.00 +595427.28 5680689.10 101.25 +595428.26 5680558.68 101.25 +595429.99 5682569.06 100.00 +595430.33 5682815.15 101.25 +595431.50 5682594.13 100.00 +595431.85 5678775.15 100.00 +595432.13 5680680.37 101.25 +595432.48 5679261.79 100.00 +595433.17 5680329.05 100.00 +595434.45 5679030.14 100.00 +595434.58 5678039.29 101.25 +595435.26 5681946.42 100.00 +595435.52 5682737.34 101.25 +595435.74 5681379.48 100.00 +595435.82 5678478.47 100.00 +595436.93 5682575.63 100.00 +595437.97 5680672.26 101.25 +595438.25 5680558.63 101.25 +595439.87 5682812.16 101.25 +595440.55 5680335.66 100.00 +595440.63 5682591.91 100.00 +595441.74 5678773.70 100.00 +595441.78 5682583.06 100.00 +595442.30 5679263.61 100.00 +595443.83 5680664.17 101.25 +595444.39 5679029.15 100.00 +595444.57 5678039.34 101.25 +595444.73 5681383.66 100.00 +595445.03 5681944.36 100.00 +595445.07 5682740.30 101.25 +595445.71 5678477.72 100.00 +595448.23 5680558.16 101.25 +595449.07 5680340.86 100.00 +595449.23 5682808.68 101.25 +595449.75 5680656.12 101.25 +595451.63 5678772.74 100.00 +595452.12 5679265.44 100.00 +595454.33 5679028.16 100.00 +595454.44 5681385.97 100.00 +595454.55 5678039.70 101.25 +595454.64 5682743.18 101.25 +595454.79 5681942.29 100.00 +595455.66 5678478.61 100.00 +595455.79 5680648.17 101.25 +595457.60 5680346.06 100.00 +595458.21 5680557.70 101.25 +595458.36 5682804.61 101.25 +595461.57 5678773.71 100.00 +595461.86 5680640.22 101.25 +595462.02 5679265.49 100.00 +595464.14 5681388.28 100.00 +595464.17 5679027.84 100.00 +595464.43 5678041.20 101.25 +595464.53 5682744.60 101.25 +595464.56 5681940.22 100.00 +595465.60 5678479.50 100.00 +595466.85 5680349.68 100.00 +595467.49 5682800.53 101.25 +595468.20 5680557.54 101.25 +595468.62 5680632.87 101.25 +595471.52 5678774.68 100.00 +595471.97 5679264.52 100.00 +595473.30 5679031.89 100.00 +595473.77 5678043.97 101.25 +595474.07 5681389.16 100.00 +595474.32 5681938.10 100.00 +595474.43 5682746.02 101.25 +595475.39 5680625.52 101.25 +595475.55 5678480.39 100.00 +595476.38 5680352.69 100.00 +595476.65 5682796.52 101.25 +595478.08 5680558.34 101.25 +595481.50 5678774.85 100.00 +595481.52 5678442.35 98.75 +595481.91 5679263.56 100.00 +595482.13 5679036.56 100.00 +595482.15 5680618.17 101.25 +595482.69 5678048.28 101.25 +595483.15 5678451.70 98.75 +595484.02 5681389.91 100.00 +595484.07 5681935.99 100.00 +595484.12 5678433.13 98.75 +595484.33 5682747.44 101.25 +595485.31 5678482.45 100.00 +595485.87 5682792.64 101.25 +595485.90 5680355.71 100.00 +595487.79 5680560.70 101.25 +595487.87 5680609.98 101.25 +595489.16 5678424.54 98.75 +595489.59 5679043.03 100.00 +595490.23 5678458.70 98.75 +595491.49 5678774.83 100.00 +595491.85 5679262.59 100.00 +595492.00 5678051.91 101.25 +595493.48 5680601.72 101.25 +595493.83 5681933.88 100.00 +595493.96 5681390.71 100.00 +595494.22 5682746.48 101.25 +595494.30 5678416.01 98.75 +595494.36 5678614.61 100.00 +595494.59 5678604.62 100.00 +595494.82 5678594.64 100.00 +595495.01 5678484.84 100.00 +595495.08 5682788.76 101.25 +595495.55 5680358.26 100.00 +595496.31 5680564.79 101.25 +595496.49 5679050.25 100.00 +595496.83 5678584.90 100.00 +595497.82 5680592.85 101.25 +595498.47 5678623.10 100.00 +595499.34 5678461.51 98.75 +595499.35 5678575.23 100.00 +595499.49 5678407.52 98.75 +595500.62 5680573.60 101.25 +595500.73 5680583.29 101.25 +595501.36 5678055.38 101.25 +595501.47 5678774.80 100.00 +595501.71 5679261.27 100.00 +595503.16 5679057.69 100.00 +595503.40 5678566.29 100.00 +595503.72 5681932.56 100.00 +595503.85 5681392.05 100.00 +595504.11 5682744.99 101.25 +595504.30 5682784.89 101.25 +595504.64 5678399.00 98.75 +595504.65 5678487.34 100.00 +595504.82 5678630.80 100.00 +595505.44 5680359.02 100.00 +595509.22 5678462.69 98.75 +595509.31 5678558.24 100.00 +595509.74 5678390.45 98.75 +595509.75 5679065.20 100.00 +595511.01 5679257.62 100.00 +595511.22 5678057.00 101.25 +595511.46 5678774.77 100.00 +595512.17 5678637.55 100.00 +595512.60 5678493.39 100.00 +595513.60 5681393.78 100.00 +595513.64 5682781.37 101.25 +595513.65 5681932.58 100.00 +595513.97 5682743.34 101.25 +595515.42 5680358.82 100.00 +595516.18 5678383.08 98.75 +595516.52 5678551.33 100.00 +595517.14 5679071.88 100.00 +595518.92 5678464.90 98.75 +595519.61 5678644.23 100.00 +595520.12 5678499.93 100.00 +595520.28 5679253.91 100.00 +595521.07 5678058.63 101.25 +595521.33 5678775.33 100.00 +595522.30 5681398.66 100.00 +595522.69 5678543.60 100.00 +595523.36 5682779.01 101.25 +595523.60 5681933.42 100.00 +595523.72 5682741.14 101.25 +595524.14 5682493.46 100.00 +595524.46 5678377.75 98.75 +595524.81 5679078.28 100.00 +595525.26 5680357.09 100.00 +595526.18 5682501.38 100.00 +595526.80 5678507.32 100.00 +595527.69 5678534.96 100.00 +595528.46 5678467.75 98.75 +595528.52 5682484.78 100.00 +595528.84 5678645.20 100.00 +595529.38 5679249.80 100.00 +595530.56 5678779.16 100.00 +595530.97 5678057.80 101.25 +595531.00 5681403.54 100.00 +595531.10 5678525.83 100.00 +595531.74 5678515.86 100.00 +595532.48 5679084.68 100.00 +595533.07 5682507.87 100.00 +595533.15 5682777.01 101.25 +595533.48 5682738.94 101.25 +595533.54 5681934.26 100.00 +595533.94 5678374.71 98.75 +595535.10 5680355.35 100.00 +595536.73 5682479.75 100.00 +595537.96 5678470.74 98.75 +595538.00 5678648.77 100.00 +595538.49 5679245.69 100.00 +595539.09 5681409.33 100.00 +595539.79 5678782.99 100.00 +595540.15 5679091.08 100.00 +595540.66 5678055.80 101.25 +595542.32 5682510.88 100.00 +595543.01 5682775.37 101.25 +595543.24 5682736.79 101.25 +595543.42 5678371.67 98.75 +595543.42 5681935.63 100.00 +595544.36 5680351.68 100.00 +595546.22 5682477.67 100.00 +595546.67 5678653.73 100.00 +595546.73 5678475.38 98.75 +595546.82 5681415.61 100.00 +595547.59 5679241.58 100.00 +595547.89 5679097.39 100.00 +595549.32 5678785.93 100.00 +595549.57 5678051.28 101.25 +595552.00 5682511.28 100.00 +595552.73 5682776.90 101.25 +595552.90 5678368.64 98.75 +595553.08 5682735.02 101.25 +595553.27 5681937.26 100.00 +595553.56 5680347.80 100.00 +595554.62 5678481.32 98.75 +595555.25 5678658.84 100.00 +595555.59 5679235.61 100.00 +595555.71 5682475.58 100.00 +595555.86 5679103.43 100.00 +595556.04 5681419.42 100.00 +595558.10 5678046.17 101.25 +595558.92 5678788.71 100.00 +595561.65 5678488.37 98.75 +595561.70 5678364.07 98.75 +595561.72 5682511.50 100.00 +595562.18 5680342.74 100.00 +595562.32 5681940.98 100.00 +595562.35 5682779.62 101.25 +595562.93 5682733.24 101.25 +595563.53 5679229.55 100.00 +595563.82 5679109.46 100.00 +595564.01 5678663.53 100.00 +595565.26 5681423.22 100.00 +595565.36 5682475.45 100.00 +595565.85 5678039.87 101.25 +595565.94 5682495.51 99.75 +595568.07 5678495.93 98.75 +595568.51 5678791.49 100.00 +595570.29 5678359.03 98.75 +595570.74 5681946.34 100.00 +595570.80 5680337.69 100.00 +595571.41 5682510.97 100.00 +595571.44 5679223.46 100.00 +595571.83 5682782.71 101.25 +595571.99 5679115.20 100.00 +595572.73 5682732.21 101.25 +595573.64 5678666.21 100.00 +595573.80 5678504.07 98.75 +595574.47 5678034.90 101.25 +595574.48 5681427.03 100.00 +595575.07 5682475.94 100.00 +595577.79 5678352.81 98.75 +595577.85 5680330.85 100.00 +595577.92 5678794.85 100.00 +595579.21 5681951.63 100.00 +595579.36 5679217.36 100.00 +595579.58 5678512.18 98.75 +595579.67 5682788.92 101.25 +595580.30 5679120.74 100.00 +595581.10 5682510.16 100.00 +595582.36 5682734.90 101.25 +595583.26 5678668.89 100.00 +595583.45 5678030.66 101.25 +595583.50 5678344.66 98.75 +595583.75 5681430.71 100.00 +595583.95 5680322.95 100.00 +595584.77 5682476.61 100.00 +595585.37 5678520.28 98.75 +595585.40 5682882.88 101.25 +595586.40 5679210.34 100.00 +595586.42 5682872.96 101.25 +595587.28 5678798.33 100.00 +595587.49 5682892.33 101.25 +595587.52 5682795.12 101.25 +595587.83 5681956.66 100.00 +595588.22 5682863.12 101.25 +595588.61 5679126.28 100.00 +595589.21 5678336.50 98.75 +595589.84 5682853.25 101.25 +595590.06 5680315.04 100.00 +595590.80 5682510.63 100.00 +595591.05 5678528.46 98.75 +595591.08 5682843.33 101.25 +595591.85 5682804.03 101.25 +595591.95 5682901.28 101.25 +595591.99 5682737.60 101.25 +595592.33 5682833.41 101.25 +595592.88 5678671.57 100.00 +595593.02 5681434.35 100.00 +595593.02 5679202.85 100.00 +595593.24 5678031.58 101.25 +595593.27 5682823.46 101.25 +595594.08 5682813.49 101.25 +595594.45 5682477.39 100.00 +595594.84 5680306.31 100.00 +595594.92 5678328.34 98.75 +595595.67 5679133.24 100.00 +595596.45 5681961.69 100.00 +595596.64 5678801.82 100.00 +595597.14 5682909.83 101.25 +595597.31 5678536.12 98.75 +595599.31 5680297.37 100.00 +595599.50 5679195.26 100.00 +595600.08 5678038.86 101.25 +595600.43 5681441.02 100.00 +595600.51 5682511.10 100.00 +595600.61 5678320.18 98.75 +595600.76 5682741.65 101.25 +595601.19 5679141.55 100.00 +595601.25 5678048.53 101.25 +595602.55 5678672.86 100.00 +595603.46 5682917.47 101.25 +595603.73 5680288.42 100.00 +595603.86 5682479.40 100.00 +595604.17 5678057.91 101.25 +595604.74 5678542.75 98.75 +595605.07 5681966.72 100.00 +595605.32 5679187.15 100.00 +595605.92 5678805.50 100.00 +595606.26 5678311.97 98.75 +595606.59 5679149.96 100.00 +595607.26 5682749.24 101.25 +595607.59 5681447.96 100.00 +595608.09 5680279.42 100.00 +595608.35 5678066.99 101.25 +595609.47 5679178.11 100.00 +595610.22 5682511.42 100.00 +595610.85 5682924.20 101.25 +595610.96 5679158.72 100.00 +595611.93 5679168.66 100.00 +595612.28 5678304.11 98.75 +595612.33 5678670.82 100.00 +595612.43 5678076.10 101.25 +595612.44 5680270.43 100.00 +595612.46 5678548.96 98.75 +595612.93 5682482.89 100.00 +595613.77 5682756.84 101.25 +595613.91 5681971.33 100.00 +595614.58 5681455.07 100.00 +595615.14 5678809.36 100.00 +595616.99 5680261.55 100.00 +595617.23 5678084.76 101.25 +595619.02 5682929.93 101.25 +595619.66 5682510.60 100.00 +595620.27 5682764.44 101.25 +595620.31 5678298.74 98.75 +595620.82 5681540.37 100.00 +595621.57 5678552.56 98.75 +595621.58 5681462.19 100.00 +595621.82 5680252.80 100.00 +595621.94 5678668.19 100.00 +595622.00 5682486.39 100.00 +595623.04 5681975.38 100.00 +595623.10 5681532.22 100.00 +595623.93 5678092.17 101.25 +595624.01 5681549.69 100.00 +595624.07 5682773.55 101.25 +595624.35 5678813.22 100.00 +595625.90 5682503.90 100.00 +595626.38 5682494.82 100.00 +595626.64 5680244.05 100.00 +595627.17 5682783.06 101.25 +595627.44 5682927.90 101.25 +595628.57 5681469.30 100.00 +595629.02 5681440.19 100.00 +595630.18 5678297.42 98.75 +595630.26 5681430.79 100.00 +595630.27 5682792.57 101.25 +595630.38 5681449.48 100.00 +595630.75 5682918.46 101.25 +595631.36 5678664.86 100.00 +595631.47 5680235.31 100.00 +595631.49 5678553.37 98.75 +595631.72 5681883.31 98.75 +595631.91 5681421.77 100.00 +595632.10 5678097.81 101.25 +595632.16 5681979.43 100.00 +595632.58 5681534.15 100.00 +595632.70 5681875.22 98.75 +595633.29 5678817.58 100.00 +595633.35 5681458.19 100.00 +595633.54 5682908.86 101.25 +595634.77 5682801.49 101.25 +595635.52 5681476.46 100.00 +595636.29 5680226.56 100.00 +595637.35 5682900.73 101.25 +595637.90 5681890.28 98.75 +595638.86 5681433.54 99.50 +595639.39 5682810.36 101.25 +595639.45 5678659.36 100.00 +595640.02 5681442.25 99.50 +595640.05 5678296.09 98.75 +595640.25 5681464.69 100.00 +595640.59 5681422.09 100.00 +595640.71 5681539.90 100.00 +595641.01 5678102.07 101.25 +595641.03 5681871.34 98.75 +595641.12 5680217.81 100.00 +595641.17 5681983.70 100.00 +595641.38 5678553.53 98.75 +595641.50 5678823.28 100.00 +595642.16 5681483.90 100.00 +595642.23 5681450.31 99.50 +595644.39 5682818.96 101.25 +595645.78 5680208.98 100.00 +595646.67 5678652.46 100.00 +595647.05 5682898.74 101.25 +595647.13 5681892.94 98.75 +595647.58 5681428.41 100.00 +595647.87 5681491.70 100.00 +595648.19 5681501.65 100.00 +595648.36 5681882.27 98.50 +595649.38 5681540.92 100.00 +595649.46 5681455.29 99.50 +595649.46 5681465.37 100.00 +595649.54 5681511.54 100.00 +595649.71 5678828.97 100.00 +595649.96 5681988.44 100.00 +595650.00 5678296.20 98.75 +595650.16 5680200.01 100.00 +595650.30 5681872.05 98.75 +595650.54 5681531.37 100.00 +595650.76 5678104.25 101.25 +595650.89 5681521.42 100.00 +595650.93 5682826.53 101.25 +595651.14 5678551.59 98.75 +595653.21 5681436.03 100.00 +595653.80 5678645.47 100.00 +595654.55 5680191.03 100.00 +595655.56 5682893.61 101.25 +595656.36 5681895.60 98.75 +595657.20 5681459.89 100.00 +595657.49 5681444.41 100.00 +595657.92 5678834.66 100.00 +595658.75 5681993.17 100.00 +595658.93 5680182.05 100.00 +595659.32 5681875.32 98.75 +595659.95 5678296.43 98.75 +595660.35 5682829.69 101.25 +595660.65 5678105.54 101.25 +595660.91 5678638.45 100.00 +595660.91 5678549.65 98.75 +595660.96 5681453.22 100.00 +595663.32 5680173.08 100.00 +595663.76 5682887.90 101.25 +595665.64 5678840.97 100.00 +595665.82 5681895.29 98.75 +595667.12 5681880.67 98.75 +595667.54 5681997.91 100.00 +595667.74 5680164.12 100.00 +595668.02 5678631.43 100.00 +595668.52 5678669.66 101.25 +595669.70 5682830.88 101.25 +595669.91 5678296.65 98.75 +595670.59 5678106.58 101.25 +595670.68 5678547.71 98.75 +595671.05 5681888.56 98.75 +595671.37 5681542.08 100.00 +595671.89 5682882.07 101.25 +595672.10 5681532.95 100.00 +595672.15 5680155.16 100.00 +595673.17 5678847.53 100.00 +595673.53 5681550.84 100.00 +595673.59 5678661.42 101.25 +595673.61 5678673.75 101.25 +595675.03 5682466.28 100.00 +595675.13 5678624.42 100.00 +595675.17 5682456.50 100.00 +595675.29 5682004.17 100.00 +595675.59 5682476.12 100.00 +595676.51 5681559.50 100.00 +595677.31 5680146.67 100.00 +595677.90 5682825.30 101.25 +595678.47 5681527.48 100.00 +595679.81 5682447.74 100.00 +595679.83 5678295.94 98.75 +595680.22 5682876.70 101.25 +595680.36 5678545.40 98.75 +595680.50 5678105.81 101.25 +595680.70 5678854.10 100.00 +595680.72 5678654.60 101.25 +595681.02 5678686.61 101.25 +595681.09 5678677.86 101.25 +595681.37 5679343.86 98.75 +595682.24 5682483.47 100.00 +595682.24 5678617.40 100.00 +595682.39 5679334.01 98.75 +595682.50 5679353.72 98.75 +595682.93 5682010.59 100.00 +595683.14 5682816.94 101.25 +595683.58 5680138.90 100.00 +595684.60 5679324.42 98.75 +595684.64 5679363.29 98.75 +595686.75 5681525.33 100.00 +595687.22 5682807.81 101.25 +595688.25 5679315.19 98.75 +595688.34 5682443.06 100.00 +595688.43 5682491.19 100.00 +595688.46 5678648.48 101.25 +595688.87 5679372.27 98.75 +595688.99 5682018.53 100.00 +595688.99 5678859.65 100.00 +595689.71 5682873.54 101.25 +595689.74 5678295.02 98.75 +595689.85 5680131.12 100.00 +595690.04 5678543.05 98.75 +595690.37 5678611.77 100.00 +595690.41 5678104.50 101.25 +595690.68 5682798.47 101.25 +595690.72 5678687.60 101.25 +595692.93 5682788.72 101.25 +595693.11 5679381.24 98.75 +595694.06 5682499.35 100.00 +595694.29 5679307.35 98.75 +595694.93 5681528.99 100.00 +595695.04 5682026.46 100.00 +595695.18 5682778.98 101.25 +595696.19 5678642.36 101.25 +595697.31 5682438.83 100.00 +595697.39 5680124.95 100.00 +595697.78 5678864.28 100.00 +595698.14 5682702.60 101.25 +595698.53 5679389.32 98.75 +595698.61 5682769.62 101.25 +595698.93 5682692.63 101.25 +595699.11 5682507.81 100.00 +595699.17 5678607.04 100.00 +595699.45 5678293.34 98.75 +595699.47 5682872.03 101.25 +595699.60 5678100.60 101.25 +595699.70 5678540.66 98.75 +595700.58 5678687.83 101.25 +595700.70 5682682.85 101.25 +595701.15 5682712.12 101.25 +595701.35 5679300.43 98.75 +595701.63 5681535.23 100.00 +595701.63 5682033.89 100.00 +595702.55 5682760.43 101.25 +595704.05 5678636.40 101.25 +595704.23 5682721.63 101.25 +595704.47 5682515.71 100.00 +595704.52 5682673.87 101.25 +595705.94 5682433.96 100.00 +595705.95 5682751.09 101.25 +595705.97 5679395.89 98.75 +595706.39 5680120.62 100.00 +595706.67 5682731.29 101.25 +595707.12 5678867.83 100.00 +595707.44 5682741.20 101.25 +595707.97 5678602.32 100.00 +595708.33 5681541.47 100.00 +595708.45 5678289.10 98.75 +595708.86 5679293.95 98.75 +595709.07 5678097.70 101.25 +595709.30 5678538.00 98.75 +595709.31 5682040.26 100.00 +595709.47 5682871.94 101.25 +595710.38 5678687.06 101.25 +595712.24 5678630.91 101.25 +595712.38 5678651.15 102.50 +595712.39 5682667.69 101.25 +595712.52 5682521.49 100.00 +595713.41 5679402.46 98.75 +595714.53 5682429.01 100.00 +595715.07 5678660.48 102.50 +595715.40 5680116.29 100.00 +595716.41 5678642.32 102.50 +595716.45 5678871.38 100.00 +595716.63 5679287.89 98.75 +595716.78 5678597.59 100.00 +595717.04 5682046.58 100.00 +595717.46 5678284.85 98.75 +595718.80 5682874.82 101.25 +595718.89 5678535.35 98.75 +595718.97 5678096.30 101.25 +595720.09 5678685.41 101.25 +595720.25 5682661.52 101.25 +595720.65 5678625.82 101.25 +595720.84 5679409.03 98.75 +595722.08 5682422.62 100.00 +595722.36 5682522.73 100.00 +595723.16 5678636.05 102.50 +595723.23 5681888.31 98.75 +595724.34 5678662.81 102.50 +595724.40 5680111.97 100.00 +595725.15 5682052.40 100.00 +595725.69 5678279.34 98.75 +595725.79 5678874.94 100.00 +595725.90 5678593.62 100.00 +595725.90 5679284.36 98.75 +595726.93 5681893.05 98.75 +595727.54 5682879.61 101.25 +595728.49 5678532.69 98.75 +595728.69 5681882.15 98.75 +595728.87 5678094.99 101.25 +595728.90 5679414.77 98.75 +595729.45 5678682.31 101.25 +595729.54 5682416.09 100.00 +595729.69 5682661.19 101.25 +595729.69 5678621.87 101.25 +595731.74 5678631.51 102.50 +595732.19 5682523.97 100.00 +595733.19 5681886.11 98.50 +595733.52 5678273.19 98.75 +595733.92 5680109.18 100.00 +595733.95 5678662.69 102.50 +595734.31 5682056.12 100.00 +595735.18 5679280.83 98.75 +595735.26 5681891.42 98.75 +595735.37 5678590.44 100.00 +595735.44 5678876.24 100.00 +595735.59 5682885.54 101.25 +595736.22 5681878.31 98.75 +595736.57 5682409.10 100.00 +595737.36 5679419.94 98.75 +595738.12 5678530.21 98.75 +595738.77 5678094.35 101.25 +595738.79 5678679.14 101.25 +595738.99 5678618.78 101.25 +595739.10 5681720.43 98.75 +595739.59 5682662.57 101.25 +595740.53 5678266.12 98.75 +595740.53 5678627.60 102.50 +595741.91 5681711.84 98.75 +595742.07 5682524.55 100.00 +595743.18 5681888.06 98.75 +595743.25 5682891.94 101.25 +595743.43 5678646.06 103.75 +595743.59 5678661.58 102.50 +595743.68 5682402.25 100.00 +595743.71 5680107.21 100.00 +595743.83 5682059.12 100.00 +595744.23 5681727.88 98.75 +595744.30 5679276.95 98.75 +595744.35 5681880.12 98.75 +595744.84 5678587.26 100.00 +595745.14 5678854.66 100.12 +595745.40 5678875.40 100.00 +595745.55 5678638.43 103.75 +595745.83 5679425.12 98.75 +595746.12 5678258.06 98.75 +595747.92 5678528.44 98.75 +595748.00 5678098.18 101.25 +595748.09 5678675.84 101.25 +595748.68 5682666.73 101.25 +595748.69 5678616.98 101.25 +595748.86 5681704.73 98.75 +595750.12 5678626.11 102.50 +595750.29 5678648.86 103.75 +595750.30 5678249.03 98.75 +595750.57 5682898.76 101.25 +595751.98 5682524.78 100.00 +595752.90 5682398.61 100.00 +595753.13 5679272.44 98.75 +595753.18 5678660.07 102.50 +595753.20 5678634.43 103.75 +595753.48 5681731.37 98.75 +595753.50 5680105.25 100.00 +595753.55 5682057.97 100.00 +595754.32 5678871.19 100.00 +595754.32 5678584.11 100.00 +595754.70 5679429.36 98.75 +595754.78 5678640.94 104.00 +595756.50 5681698.58 98.75 +595757.39 5678672.55 101.25 +595757.50 5678750.55 100.00 +595757.71 5682671.01 101.25 +595757.72 5678526.67 98.75 +595757.78 5678100.15 101.25 +595758.17 5678760.52 100.00 +595758.39 5682904.98 101.25 +595758.39 5678615.18 101.25 +595758.88 5678770.48 100.00 +595758.95 5678647.44 103.75 +595759.17 5678740.99 100.00 +595759.62 5678780.44 100.00 +595759.74 5678624.81 102.50 +595761.49 5678633.20 103.75 +595761.89 5682525.01 100.00 +595761.93 5678790.09 100.00 +595761.97 5679267.92 98.75 +595762.12 5682394.98 100.00 +595762.16 5678865.32 100.00 +595762.22 5678656.63 102.50 +595762.95 5681734.41 98.75 +595763.31 5682055.89 100.00 +595763.42 5680104.93 100.00 +595763.82 5678581.00 100.00 +595764.26 5679432.02 98.75 +595764.57 5678732.85 100.00 +595765.03 5678799.59 100.00 +595765.53 5681694.41 98.75 +595766.47 5682910.80 101.25 +595766.62 5678669.11 101.25 +595766.66 5678643.27 103.75 +595766.70 5682675.39 101.25 +595767.47 5678524.68 98.75 +595767.61 5678101.94 101.25 +595768.07 5678613.29 101.25 +595768.08 5678857.27 100.00 +595768.13 5678809.09 100.00 +595768.73 5678635.34 103.75 +595769.39 5678623.85 102.50 +595770.81 5679263.41 98.75 +595770.83 5681714.20 98.50 +595771.17 5678652.86 102.50 +595771.23 5678818.58 100.00 +595771.28 5678847.90 100.00 +595771.60 5682466.23 99.50 +595771.73 5682393.06 100.00 +595771.80 5682524.97 100.00 +595772.24 5678726.63 100.00 +595772.45 5682052.25 100.00 +595772.80 5681735.54 98.75 +595773.09 5678838.13 100.00 +595773.31 5678577.90 100.00 +595773.39 5680105.48 100.00 +595773.69 5678828.16 100.00 +595773.82 5679434.68 98.75 +595774.72 5681690.84 98.75 +595775.38 5678664.57 101.25 +595775.69 5682679.77 101.25 +595776.14 5682913.33 101.25 +595777.19 5678522.48 98.75 +595777.58 5678101.90 101.25 +595777.74 5678611.34 101.25 +595778.15 5679256.77 98.75 +595778.21 5679064.57 98.75 +595778.71 5679054.66 98.75 +595778.92 5678625.17 102.50 +595779.21 5679044.74 98.75 +595779.71 5679034.83 98.75 +595779.88 5678648.57 102.50 +595779.97 5679074.32 98.75 +595780.21 5679024.92 98.75 +595780.92 5682046.98 100.00 +595781.24 5679015.06 98.75 +595781.56 5682392.93 100.00 +595781.72 5682524.90 100.00 +595781.80 5679084.08 98.75 +595782.00 5678724.51 100.00 +595782.49 5679005.21 98.75 +595782.49 5681733.83 98.75 +595782.90 5678575.18 100.00 +595783.36 5680106.03 100.00 +595783.38 5679437.34 98.75 +595783.81 5678995.38 98.75 +595784.13 5678660.02 101.25 +595784.29 5679093.64 98.75 +595784.61 5681689.72 98.75 +595784.62 5682684.26 101.25 +595785.41 5679250.00 98.75 +595786.00 5678985.71 98.75 +595786.01 5682914.86 101.25 +595786.90 5678520.29 98.75 +595787.44 5678609.54 101.25 +595787.48 5678101.27 101.25 +595787.93 5678643.30 102.50 +595787.93 5679102.87 98.75 +595788.20 5678976.03 98.75 +595788.20 5678628.00 102.50 +595788.76 5682040.85 100.00 +595790.26 5681727.62 98.75 +595790.93 5682396.16 100.00 +595791.33 5678966.61 98.75 +595791.58 5679112.10 98.75 +595791.63 5682524.83 100.00 +595791.82 5678723.34 100.00 +595792.59 5678635.66 102.50 +595792.68 5679243.24 98.75 +595792.74 5678573.47 100.00 +595792.79 5678655.29 101.25 +595792.89 5679440.19 98.75 +595793.16 5682689.47 101.25 +595793.34 5680106.57 100.00 +595793.96 5681692.01 98.75 +595794.46 5682104.31 100.00 +595795.00 5678957.41 98.75 +595795.22 5679121.33 98.75 +595795.96 5682094.44 100.00 +595795.97 5682915.74 101.25 +595796.01 5678785.76 100.00 +595796.45 5678795.15 100.00 +595796.45 5682113.73 100.00 +595796.60 5678097.17 101.25 +595796.68 5678518.84 98.75 +595797.05 5682035.50 100.00 +595797.10 5678776.22 100.00 +595797.22 5678608.39 101.25 +595797.32 5681720.75 98.75 +595798.30 5679235.24 98.75 +595798.87 5679130.56 98.75 +595799.08 5678948.36 98.75 +595799.56 5678804.22 100.00 +595800.01 5682085.77 100.00 +595800.19 5682399.67 100.00 +595800.72 5682122.60 100.00 +595801.14 5678768.03 100.00 +595801.18 5678650.21 101.25 +595801.54 5682524.76 100.00 +595801.68 5678724.78 100.00 +595801.69 5682694.68 101.25 +595802.05 5679139.95 98.75 +595802.28 5679443.39 98.75 +595802.58 5678571.76 100.00 +595802.65 5682841.99 101.25 +595802.80 5679226.40 98.75 +595802.83 5681696.44 98.75 +595803.04 5681712.63 98.75 +595803.10 5680108.68 100.00 +595803.16 5678939.32 98.75 +595804.66 5682850.80 101.25 +595804.88 5678812.03 100.00 +595805.12 5679149.39 98.75 +595805.87 5678093.45 101.25 +595805.94 5682916.57 101.25 +595806.18 5682031.46 100.00 +595806.64 5678519.07 98.75 +595806.78 5678930.09 98.75 +595806.93 5678609.05 101.25 +595807.03 5681704.14 98.75 +595807.24 5679217.53 98.75 +595807.92 5682080.58 100.00 +595808.15 5678643.27 101.25 +595808.19 5679158.83 98.75 +595808.35 5678763.00 100.00 +595808.85 5682836.33 101.25 +595809.17 5682403.78 100.00 +595809.28 5679207.82 98.75 +595809.44 5682964.20 101.25 +595809.55 5682127.26 100.00 +595810.03 5678920.71 98.75 +595810.18 5682973.81 101.25 +595810.22 5679168.52 98.75 +595811.06 5682697.97 101.25 +595811.32 5679198.11 98.75 +595811.42 5682525.50 100.00 +595811.43 5678726.96 100.00 +595811.47 5682858.00 101.25 +595811.69 5679178.32 98.75 +595811.79 5679188.24 98.75 +595811.96 5679444.74 98.75 +595812.42 5678570.05 100.00 +595812.50 5678634.42 101.25 +595812.68 5680111.41 100.00 +595813.03 5682954.87 101.25 +595813.27 5678911.33 98.75 +595813.49 5678816.27 100.00 +595813.89 5678615.79 101.25 +595814.70 5682026.58 100.00 +595814.90 5678432.99 98.75 +595815.20 5678089.87 101.25 +595815.22 5678901.54 98.75 +595815.51 5682919.38 101.25 +595815.95 5678625.28 101.25 +595816.08 5682979.06 101.25 +595816.59 5678519.29 98.75 +595816.63 5682945.54 101.25 +595817.29 5682409.47 100.00 +595817.65 5682078.48 100.00 +595817.65 5678891.88 98.75 +595817.83 5678764.53 100.00 +595818.53 5682131.59 100.00 +595818.57 5678441.53 98.75 +595818.83 5682836.55 101.25 +595818.85 5682864.72 101.25 +595819.63 5682936.00 101.25 +595819.93 5678425.57 98.75 +595820.29 5678792.76 100.25 +595820.70 5682700.63 101.25 +595821.10 5682926.45 101.25 +595821.22 5678728.96 100.00 +595821.29 5682526.39 100.00 +595821.35 5678882.61 98.75 +595821.42 5682019.19 100.00 +595821.88 5679444.60 98.75 +595822.06 5680114.86 100.00 +595822.17 5678252.60 98.75 +595822.27 5678568.34 100.00 +595822.69 5678818.44 100.00 +595824.22 5678085.66 101.25 +595825.29 5682872.36 101.25 +595825.41 5682415.15 100.00 +595825.42 5678262.01 98.75 +595825.96 5678447.60 98.75 +595826.08 5682979.11 101.25 +595826.52 5678519.90 98.75 +595826.76 5678874.63 98.75 +595826.88 5682074.68 100.00 +595827.09 5682011.11 100.00 +595827.17 5678766.68 100.00 +595827.69 5678419.98 98.75 +595827.82 5682135.24 100.00 +595828.10 5682839.97 101.25 +595829.11 5678271.22 98.75 +595829.76 5681881.07 98.75 +595830.34 5682703.30 101.25 +595831.01 5678730.95 100.00 +595831.05 5682527.71 100.00 +595831.34 5680118.46 100.00 +595831.38 5682002.09 100.00 +595831.63 5679442.77 98.75 +595831.66 5682880.05 101.25 +595831.99 5678816.01 100.00 +595832.10 5678566.60 100.00 +595832.86 5678080.64 101.25 +595833.33 5682421.07 100.00 +595833.97 5678279.91 98.75 +595834.18 5678452.51 98.75 +595834.76 5678868.65 98.75 +595834.92 5681872.78 98.75 +595835.42 5681887.37 98.75 +595835.94 5681993.22 100.00 +595836.08 5682979.30 101.25 +595836.11 5682070.88 100.00 +595836.30 5678769.68 100.00 +595836.44 5678520.81 98.75 +595836.73 5678417.40 98.75 +595837.12 5678433.50 99.00 +595837.13 5682138.84 100.00 +595837.17 5682844.16 101.25 +595838.24 5680125.68 100.00 +595838.26 5682887.54 101.25 +595838.83 5678288.60 98.75 +595839.92 5682706.15 101.25 +595840.10 5682531.76 100.00 +595840.18 5682428.24 100.00 +595840.66 5678733.48 100.00 +595840.73 5681984.46 100.00 +595841.19 5678813.26 100.00 +595841.41 5679443.25 98.75 +595841.52 5678075.66 101.25 +595841.93 5678564.82 100.00 +595842.02 5681865.99 98.75 +595843.30 5678297.49 98.75 +595843.43 5678863.97 98.75 +595843.82 5678452.72 98.75 +595844.61 5681890.27 98.75 +595844.80 5682066.09 100.00 +595845.04 5682894.88 101.25 +595845.14 5680132.90 100.00 +595845.56 5678771.96 100.00 +595846.00 5682848.83 101.25 +595846.07 5682979.70 101.25 +595846.20 5681976.13 100.00 +595846.35 5678417.90 98.75 +595846.35 5678521.72 98.75 +595846.47 5682142.36 100.00 +595847.08 5682435.35 100.00 +595847.47 5678306.54 98.75 +595848.48 5682537.03 100.00 +595849.12 5681859.21 98.75 +595849.29 5682709.63 101.25 +595850.19 5678736.47 100.00 +595850.35 5678810.33 100.00 +595851.02 5678072.59 101.25 +595851.12 5681871.50 98.50 +595851.21 5679444.78 98.75 +595851.63 5678315.58 98.75 +595851.76 5678563.04 100.00 +595851.82 5682902.21 101.25 +595852.24 5681968.22 100.00 +595852.76 5680139.36 100.00 +595852.89 5677960.03 101.25 +595852.91 5678860.79 98.75 +595852.96 5682060.34 100.00 +595853.32 5678451.31 98.75 +595853.72 5681886.61 98.75 +595854.18 5677969.34 101.25 +595854.22 5682854.49 101.25 +595854.39 5682442.05 100.00 +595855.00 5682982.70 101.25 +595855.16 5678772.48 100.00 +595855.68 5677950.63 101.25 +595855.76 5682145.99 100.00 +595855.92 5678419.03 98.75 +595856.24 5678324.40 98.75 +595856.26 5682911.16 101.25 +595856.27 5678522.46 98.75 +595856.79 5682542.42 100.00 +595857.52 5681854.21 98.75 +595858.66 5682713.12 101.25 +595859.46 5681961.33 100.00 +595859.72 5678739.46 100.00 +595859.78 5678808.68 100.00 +595860.43 5680145.75 100.00 +595860.55 5678069.58 101.25 +595860.68 5682920.12 101.25 +595861.03 5679446.26 98.75 +595861.08 5677942.22 101.25 +595861.12 5682054.60 100.00 +595861.16 5678333.05 98.75 +595861.44 5677975.06 101.25 +595861.50 5681880.62 98.75 +595861.70 5682448.74 100.00 +595861.70 5678562.35 100.00 +595862.34 5678857.51 98.75 +595862.40 5682860.22 101.25 +595862.79 5678449.53 98.75 +595863.13 5682988.27 101.25 +595863.34 5677874.61 101.25 +595863.55 5679900.13 98.75 +595864.24 5678774.51 100.00 +595864.50 5682150.82 100.00 +595864.76 5678422.89 98.75 +595864.83 5679890.70 98.75 +595865.09 5682929.08 101.25 +595865.20 5677884.43 101.25 +595865.24 5682547.61 100.00 +595865.81 5677933.42 101.25 +595865.84 5681181.14 100.00 +595866.00 5678341.75 98.75 +595866.06 5681953.89 100.00 +595866.13 5677865.19 101.25 +595866.13 5678521.14 98.75 +595866.63 5679909.43 98.75 +595866.74 5682718.83 101.25 +595866.77 5681854.60 98.75 +595866.83 5681189.83 100.00 +595867.05 5677894.25 101.25 +595868.11 5680152.15 100.00 +595868.25 5677904.16 101.25 +595868.44 5678805.28 100.00 +595868.64 5677924.06 101.25 +595869.01 5682455.44 100.00 +595869.23 5677914.10 101.25 +595869.25 5678742.45 100.00 +595869.28 5681874.63 98.75 +595869.30 5682048.88 100.00 +595870.18 5678066.92 101.25 +595870.22 5681172.19 100.00 +595870.25 5678350.75 98.75 +595870.67 5678444.44 98.75 +595870.67 5679448.32 98.75 +595870.76 5682937.29 101.25 +595871.04 5677856.78 101.25 +595871.21 5677975.37 101.25 +595871.53 5682864.15 101.25 +595871.68 5678562.00 100.00 +595871.73 5678854.12 98.75 +595871.87 5681945.77 100.00 +595871.95 5679917.79 98.75 +595872.11 5678780.02 100.00 +595872.12 5678428.67 98.75 +595872.81 5682988.03 101.25 +595872.86 5679885.60 98.75 +595873.24 5682155.64 100.00 +595873.82 5682552.58 100.00 +595873.87 5678797.94 100.00 +595874.69 5678788.53 100.00 +595875.18 5678359.37 98.75 +595875.19 5681859.07 98.75 +595875.23 5680159.11 100.00 +595875.25 5682723.79 101.25 +595875.26 5682463.11 100.00 +595875.42 5681163.78 100.00 +595875.88 5681867.92 98.75 +595876.00 5678519.83 98.75 +595876.08 5678437.12 98.75 +595876.34 5681189.03 100.00 +595877.68 5682043.45 100.00 +595878.33 5682943.60 101.25 +595878.34 5677849.96 101.25 +595878.62 5681938.44 100.00 +595878.78 5678745.43 100.00 +595879.81 5678064.26 101.25 +595879.93 5679451.89 98.75 +595880.21 5679923.30 98.75 +595880.91 5682867.60 101.25 +595881.08 5677973.78 101.25 +595881.09 5678850.63 98.75 +595881.53 5682470.76 100.00 +595881.59 5679880.92 98.75 +595881.63 5678561.15 100.00 +595881.96 5678365.40 98.75 +595881.97 5680166.49 100.00 +595882.01 5682160.41 100.00 +595882.05 5681156.33 100.00 +595882.39 5682557.54 100.00 +595882.58 5682985.94 101.25 +595884.27 5681183.51 100.00 +595884.67 5682727.15 101.25 +595885.87 5678518.51 98.75 +595886.38 5682038.70 100.00 +595886.64 5682949.16 101.25 +595887.11 5677845.43 101.25 +595887.30 5681933.64 100.00 +595888.09 5679929.30 98.75 +595888.32 5678748.41 100.00 +595888.67 5681148.88 100.00 +595888.70 5680173.87 100.00 +595889.19 5679455.46 98.75 +595889.50 5678061.85 101.25 +595889.86 5682476.13 100.00 +595890.05 5679875.73 98.75 +595890.19 5678846.52 98.75 +595890.20 5681511.29 100.00 +595890.31 5682870.98 101.25 +595890.57 5681175.78 100.00 +595890.63 5677970.94 101.25 +595890.97 5682562.51 100.00 +595891.00 5682164.74 100.00 +595891.58 5678560.30 100.00 +595891.91 5678365.49 98.75 +595892.37 5682983.88 101.25 +595894.09 5682730.50 101.25 +595895.14 5682954.38 101.25 +595895.43 5680181.25 100.00 +595895.53 5681141.67 100.00 +595895.64 5678516.60 98.75 +595895.69 5679935.69 98.75 +595895.88 5682035.63 100.00 +595896.37 5677841.68 101.25 +595896.85 5681168.04 100.00 +595897.00 5681932.29 100.00 +595897.14 5681504.13 100.00 +595897.89 5678751.21 100.00 +595898.12 5679870.01 98.75 +595898.19 5682481.50 100.00 +595898.77 5679456.91 98.75 +595899.30 5678059.92 101.25 +595899.60 5678843.34 98.75 +595899.74 5682874.26 101.25 +595899.99 5682169.08 100.00 +595900.07 5677967.69 101.25 +595900.43 5682565.48 100.00 +595901.54 5678559.45 100.00 +595901.76 5678364.08 98.75 +595902.26 5682982.58 101.25 +595902.55 5680188.26 100.00 +595902.84 5679942.48 98.75 +595903.13 5681160.30 100.00 +595903.18 5681135.28 100.00 +595903.51 5682733.86 101.25 +595904.06 5682958.85 101.25 +595904.08 5681496.97 100.00 +595904.89 5677836.46 101.25 +595905.37 5682032.55 100.00 +595905.41 5678514.68 98.75 +595905.68 5679863.58 98.75 +595906.39 5682487.08 100.00 +595906.83 5681933.21 100.00 +595907.73 5678054.95 101.25 +595907.85 5678751.97 100.00 +595908.45 5679455.59 98.75 +595908.51 5682174.28 100.00 +595908.76 5679950.45 98.75 +595909.18 5682877.54 101.25 +595909.36 5678841.19 98.75 +595909.52 5677964.44 101.25 +595909.58 5678357.93 98.75 +595909.69 5680195.24 100.00 +595909.88 5682568.46 100.00 +595910.31 5679854.81 98.75 +595910.43 5681489.30 100.00 +595910.64 5681153.82 100.00 +595910.83 5681128.88 100.00 +595911.49 5678558.61 100.00 +595912.24 5682981.87 101.25 +595913.04 5682736.81 101.25 +595913.09 5679959.31 98.75 +595913.35 5677831.16 101.25 +595913.41 5682962.38 101.25 +595914.56 5682492.69 100.00 +595914.96 5682029.79 100.00 +595915.18 5678512.76 98.75 +595915.63 5678048.84 101.25 +595915.65 5679846.52 98.75 +595916.37 5681936.12 100.00 +595916.63 5681481.49 100.00 +595916.66 5678350.99 98.75 +595916.84 5680202.22 100.00 +595916.85 5679450.30 98.75 +595917.01 5682179.51 100.00 +595917.11 5679968.34 98.75 +595917.81 5678752.72 100.00 +595918.39 5677960.09 101.25 +595918.39 5681122.38 100.00 +595918.59 5681147.81 100.00 +595918.61 5682880.83 101.25 +595919.11 5678839.04 98.75 +595919.58 5682570.29 100.00 +595921.47 5678558.63 100.00 +595921.77 5677825.79 101.25 +595922.19 5682980.97 101.25 +595922.23 5679839.09 98.75 +595922.52 5679976.66 98.75 +595922.75 5682965.90 101.25 +595922.84 5682738.81 101.25 +595923.25 5678343.52 98.75 +595923.53 5682496.90 100.00 +595923.98 5680209.20 100.00 +595924.25 5678043.95 101.25 +595924.36 5681475.45 100.00 +595924.62 5682027.27 100.00 +595925.01 5678511.13 98.75 +595925.19 5679444.96 98.75 +595925.51 5682184.75 100.00 +595925.90 5681115.83 100.00 +595926.26 5681937.07 100.00 +595926.38 5677954.09 101.25 +595927.11 5678749.60 100.00 +595927.38 5681143.44 100.00 +595927.84 5682884.62 101.25 +595927.87 5679985.02 98.75 +595929.03 5678838.59 98.75 +595929.43 5682571.44 100.00 +595929.83 5678336.05 98.75 +595930.04 5679832.98 98.75 +595930.20 5677820.41 101.25 +595930.78 5679436.76 98.75 +595931.12 5680216.19 100.00 +595931.40 5681107.60 100.00 +595931.46 5678558.86 100.00 +595931.64 5682970.44 101.25 +595932.08 5682982.23 101.25 +595932.60 5682500.89 100.00 +595932.64 5682740.82 101.25 +595932.99 5681470.46 100.00 +595933.07 5679993.47 98.75 +595933.46 5678040.06 101.25 +595933.67 5682023.45 100.00 +595933.82 5677947.48 101.25 +595934.11 5682189.82 100.00 +595934.83 5678509.52 98.75 +595936.23 5681937.57 100.00 +595936.25 5678745.58 100.00 +595936.36 5679428.56 98.75 +595936.46 5681099.01 100.00 +595936.86 5682888.90 101.25 +595936.93 5681140.57 100.00 +595936.93 5678329.09 98.75 +595938.10 5679827.19 98.75 +595938.27 5680223.17 100.00 +595938.27 5680001.92 98.75 +595938.62 5677815.03 101.25 +595939.01 5678838.81 98.75 +595939.27 5682572.59 100.00 +595940.25 5679419.73 98.75 +595940.43 5682975.19 101.25 +595940.59 5677940.14 101.25 +595941.28 5679409.86 98.75 +595941.39 5681090.35 100.00 +595941.42 5678559.55 100.00 +595941.62 5681465.48 100.00 +595941.79 5682017.65 100.00 +595941.84 5682504.49 100.00 +595941.88 5682984.20 101.25 +595942.27 5682743.47 101.25 +595942.37 5679400.00 98.75 +595942.85 5678036.67 101.25 +595942.93 5682194.48 100.00 +595943.30 5680010.47 98.75 +595943.51 5679390.14 98.75 +595944.20 5679380.27 98.75 +595944.78 5678509.70 98.75 +595944.86 5679370.70 98.75 +595945.00 5678323.63 98.75 +595945.18 5678741.10 100.00 +595945.41 5680230.15 100.00 +595945.80 5681081.41 100.00 +595945.89 5682893.18 101.25 +595946.20 5679821.46 98.75 +595946.21 5681937.61 100.00 +595946.47 5681137.70 100.00 +595947.16 5677809.85 101.25 +595947.70 5677933.12 101.25 +595948.30 5680019.04 98.75 +595948.96 5678839.46 98.75 +595949.12 5682573.74 100.00 +595949.22 5682979.93 101.25 +595949.27 5682011.18 100.00 +595950.10 5679362.27 98.75 +595950.49 5681460.96 100.00 +595950.52 5682200.21 100.00 +595950.93 5682508.38 100.00 +595951.01 5682988.07 101.25 +595951.38 5678560.33 100.00 +595951.46 5681073.52 100.00 +595951.86 5682746.30 101.25 +595952.16 5678033.07 101.25 +595952.55 5680237.13 100.00 +595953.30 5680027.61 98.75 +595954.05 5679815.45 98.75 +595954.07 5678736.54 100.00 +595954.32 5678512.27 98.75 +595954.57 5678320.90 98.75 +595954.98 5682897.32 101.25 +595954.98 5677926.29 101.25 +595955.25 5681133.06 100.00 +595955.27 5682003.20 100.00 +595955.62 5679354.02 98.75 +595955.72 5677804.69 101.25 +595956.08 5681938.37 100.00 +595957.88 5682984.78 101.25 +595958.30 5680036.18 98.75 +595958.77 5682572.12 100.00 +595958.79 5678841.23 98.75 +595959.54 5681067.69 100.00 +595959.58 5682513.22 100.00 +595959.70 5681457.14 100.00 +595959.79 5680244.01 100.00 +595960.50 5682200.44 100.00 +595960.54 5679807.94 98.75 +595960.58 5682990.98 101.25 +595960.89 5678028.22 101.25 +595960.92 5678563.00 100.00 +595961.25 5679345.86 98.75 +595961.28 5681995.23 100.00 +595961.52 5682748.62 101.25 +595962.27 5677919.45 101.25 +595962.63 5679798.26 98.75 +595962.98 5678732.04 100.00 +595963.74 5678515.49 98.75 +595963.86 5681128.02 100.00 +595964.15 5682901.28 101.25 +595964.28 5677799.54 101.25 +595964.32 5678319.82 98.75 +595964.44 5680043.97 98.75 +595965.03 5681941.93 100.00 +595966.50 5681986.78 100.00 +595966.80 5678672.59 100.00 +595967.02 5678662.60 100.00 +595967.25 5680250.65 100.00 +595967.47 5679338.37 98.75 +595967.63 5681061.86 100.00 +595967.67 5682986.65 101.25 +595968.24 5682518.06 100.00 +595968.36 5682569.61 100.00 +595968.41 5679778.15 98.75 +595968.51 5678652.81 100.00 +595968.62 5678843.00 98.75 +595968.91 5681453.32 100.00 +595969.14 5678022.73 101.25 +595969.44 5679217.62 98.75 +595969.45 5679227.54 98.75 +595969.92 5679237.38 98.75 +595969.99 5678567.11 100.00 +595970.08 5682994.12 101.25 +595970.14 5677913.32 101.25 +595970.21 5678681.69 100.00 +595970.46 5682201.07 100.00 +595970.66 5680051.70 98.75 +595970.73 5681977.74 100.00 +595971.04 5679729.69 98.75 +595971.06 5679208.22 98.75 +595971.06 5681949.81 100.00 +595971.45 5679739.35 98.75 +595971.52 5682748.35 101.25 +595971.59 5678643.33 100.00 +595971.81 5679028.17 98.10 +595971.94 5678727.62 100.00 +595972.34 5679768.98 98.75 +595972.55 5681123.14 100.00 +595972.59 5679749.21 98.75 +595972.92 5679759.18 98.75 +595973.15 5678518.74 98.75 +595973.27 5679246.73 98.75 +595973.33 5682905.23 101.25 +595973.54 5677795.95 101.25 +595973.65 5679720.06 98.75 +595973.67 5681968.23 100.00 +595974.25 5678320.50 98.75 +595974.67 5678690.62 100.00 +595974.72 5680257.29 100.00 +595975.67 5681958.67 100.00 +595976.05 5678015.52 101.25 +595976.25 5679710.42 98.75 +595976.35 5679333.97 98.75 +595976.39 5678634.57 100.00 +595976.51 5681057.60 100.00 +595976.86 5679200.17 98.75 +595976.88 5680059.43 98.75 +595977.07 5681485.13 98.75 +595977.10 5682522.50 100.00 +595977.64 5682987.41 101.25 +595977.69 5681448.67 100.00 +595977.82 5678719.67 100.00 +595978.04 5682567.53 100.00 +595978.18 5677907.39 101.25 +595978.29 5678572.60 100.00 +595978.40 5678699.89 100.00 +595978.46 5678709.82 100.00 +595978.48 5678844.41 98.75 +595978.65 5679255.02 98.75 +595979.99 5679701.34 98.75 +595980.42 5682201.76 100.00 +595980.91 5678625.68 100.00 +595981.24 5682746.77 101.25 +595981.30 5681118.39 100.00 +595981.49 5678007.32 101.25 +595982.05 5681492.06 98.75 +595982.18 5680263.93 100.00 +595982.41 5681477.89 98.75 +595982.52 5678522.11 98.75 +595982.67 5679192.12 98.75 +595982.78 5682908.22 101.25 +595983.06 5677792.90 101.25 +595983.11 5680067.16 98.75 +595984.19 5678321.18 98.75 +595984.31 5679263.17 98.75 +595984.36 5679328.12 98.75 +595984.79 5678616.47 100.00 +595985.50 5677998.17 101.25 +595985.92 5679693.32 98.75 +595985.97 5682526.91 100.00 +595986.00 5681054.55 100.00 +595986.01 5678578.94 100.00 +595986.19 5681443.45 100.00 +595986.28 5677901.54 101.25 +595987.60 5682988.16 101.25 +595987.80 5682565.77 100.00 +595988.46 5678844.28 98.75 +595988.67 5678607.27 100.00 +595989.17 5677988.88 101.25 +595989.21 5679184.91 98.75 +595989.23 5678587.69 100.00 +595989.65 5680270.57 100.00 +595989.78 5680074.49 98.75 +595989.97 5679271.32 98.75 +595990.03 5678597.65 100.00 +595990.26 5682203.10 100.00 +595990.51 5682743.01 101.25 +595990.54 5681114.62 100.00 +595990.90 5677923.81 101.25 +595991.01 5681483.80 98.25 +595991.26 5681492.69 98.75 +595991.27 5681474.49 98.75 +595991.86 5679685.30 98.75 +595991.89 5678525.47 98.75 +595992.16 5679322.00 98.75 +595992.58 5677789.87 101.25 +595992.64 5682909.86 101.25 +595993.07 5681436.77 100.00 +595993.26 5677979.79 101.25 +595993.98 5678322.92 98.75 +595994.49 5677895.85 101.25 +595995.28 5682530.27 100.00 +595995.49 5681051.50 100.00 +595995.96 5677931.05 101.25 +595996.04 5679279.18 98.75 +595996.16 5677916.64 101.25 +595996.65 5680081.65 98.75 +595997.05 5682607.44 101.25 +595997.11 5680277.21 100.00 +595997.36 5682597.52 101.25 +595997.48 5681427.82 100.00 +595997.55 5682564.01 100.00 +595997.58 5682988.56 101.25 +595997.91 5679677.36 98.75 +595997.92 5679180.16 98.75 +595997.95 5682617.40 101.25 +595998.07 5677971.03 101.25 +595998.37 5681481.94 98.25 +595998.45 5678844.15 98.75 +595998.86 5682627.36 101.25 +595998.96 5682587.65 101.25 +595999.48 5679315.31 98.75 +595999.77 5681110.86 100.00 +595999.86 5682205.84 100.00 +595999.92 5682740.05 101.25 +596000.29 5681471.60 98.75 +596000.70 5681491.69 98.75 +596000.71 5679287.72 98.75 +596001.26 5678528.83 98.75 +596001.88 5681418.88 100.00 +596001.89 5682636.85 101.25 +596002.27 5677787.45 101.25 +596002.49 5682911.49 101.25 +596003.08 5677890.75 101.25 +596003.14 5677962.43 101.25 +596003.24 5678326.21 98.75 +596003.35 5679297.29 98.75 +596003.52 5680088.82 98.75 +596003.59 5679307.15 98.75 +596003.80 5682579.64 101.25 +596003.96 5679669.42 98.75 +596004.57 5680283.85 100.00 +596004.62 5677911.33 101.25 +596004.69 5682533.38 100.00 +596004.98 5681048.44 100.00 +596005.73 5681480.08 98.25 +596005.75 5677930.67 101.25 +596006.28 5681409.94 100.00 +596006.63 5679175.40 98.75 +596007.37 5682562.71 100.00 +596007.56 5682988.94 101.25 +596008.40 5678843.39 98.75 +596008.63 5682644.19 101.25 +596008.69 5677954.14 101.25 +596009.02 5682209.79 100.00 +596009.04 5681107.21 100.00 +596009.31 5681468.63 98.75 +596009.86 5682740.59 101.25 +596010.04 5681490.07 98.75 +596010.39 5680095.98 98.75 +596010.95 5678530.85 98.75 +596011.67 5677885.65 101.25 +596011.87 5681401.73 100.00 +596011.88 5678331.15 98.75 +596011.95 5677784.96 101.25 +596012.02 5680290.50 100.00 +596012.35 5682913.04 101.25 +596012.41 5682575.91 101.25 +596012.74 5679664.80 98.75 +596013.00 5679833.23 98.75 +596013.09 5681478.23 98.25 +596013.14 5677906.12 101.25 +596013.45 5682537.83 100.00 +596013.62 5679823.36 98.75 +596014.14 5679842.89 98.75 +596014.48 5681045.42 100.00 +596015.08 5677946.47 101.25 +596015.11 5677927.45 101.25 +596015.37 5679170.71 98.75 +596015.80 5682651.12 101.25 +596016.87 5679813.93 98.75 +596017.24 5682561.81 100.00 +596017.26 5680103.14 98.75 +596017.54 5682989.32 101.25 +596017.63 5681317.50 100.00 +596017.71 5682214.66 100.00 +596017.96 5681393.83 100.00 +596018.03 5681327.46 100.00 +596018.24 5678841.89 98.75 +596018.33 5681465.67 98.75 +596018.60 5681104.39 100.00 +596018.73 5680297.90 100.00 +596019.20 5681307.79 100.00 +596019.25 5682744.02 101.25 +596019.26 5681487.86 98.75 +596019.38 5681337.29 100.00 +596019.43 5679851.35 98.75 +596020.12 5679804.49 98.75 +596020.45 5681476.37 98.25 +596020.60 5677881.26 101.25 +596020.84 5678532.00 98.75 +596021.31 5678334.20 98.75 +596021.45 5677781.88 101.25 +596021.65 5682543.39 100.00 +596021.67 5677900.90 101.25 +596021.67 5679660.33 98.75 +596021.70 5681346.99 100.00 +596022.33 5682912.52 101.25 +596022.40 5682576.26 101.25 +596023.00 5679794.94 98.75 +596023.19 5677940.72 101.25 +596023.30 5682657.67 101.25 +596023.47 5681385.64 100.00 +596023.99 5681356.69 100.00 +596024.13 5680110.30 98.75 +596024.26 5677923.45 101.25 +596024.45 5681045.07 100.00 +596024.53 5679166.89 98.75 +596025.44 5680305.31 100.00 +596025.74 5679785.35 98.75 +596025.84 5682560.06 100.00 +596026.10 5681366.43 100.00 +596026.12 5682220.02 100.00 +596026.37 5681376.10 100.00 +596027.08 5681303.92 100.00 +596027.12 5682550.36 100.00 +596027.39 5679856.77 98.75 +596027.45 5681467.43 98.75 +596027.52 5682989.77 101.25 +596027.83 5678839.06 98.75 +596027.95 5681484.04 98.75 +596028.16 5681101.56 100.00 +596028.88 5682746.43 101.25 +596029.19 5681227.26 100.00 +596029.31 5679776.09 98.75 +596029.64 5682665.40 101.25 +596029.93 5677877.67 101.25 +596030.69 5678533.46 98.75 +596030.71 5681217.41 100.00 +596030.85 5677778.60 101.25 +596030.86 5681475.80 98.75 +596030.92 5679656.75 98.75 +596030.99 5680117.46 98.75 +596031.02 5677897.55 101.25 +596031.02 5678336.21 98.75 +596032.15 5680312.71 100.00 +596032.28 5677936.63 101.25 +596032.31 5682912.01 101.25 +596032.40 5682576.66 101.25 +596033.42 5677919.44 101.25 +596033.69 5679163.06 98.75 +596034.04 5679767.30 98.75 +596034.17 5682225.93 100.00 +596034.41 5681044.71 100.00 +596034.74 5682674.00 101.25 +596035.37 5681234.08 100.00 +596036.91 5681302.29 100.00 +596036.97 5679858.35 98.75 +596037.41 5678836.24 98.75 +596037.42 5682991.12 101.25 +596037.73 5681098.74 100.00 +596037.81 5681211.32 100.00 +596038.61 5680123.82 98.75 +596038.82 5682747.50 101.25 +596038.87 5679758.59 98.75 +596039.01 5677772.83 101.25 +596039.20 5682682.89 101.25 +596039.25 5677874.07 101.25 +596039.33 5680319.64 100.00 +596040.06 5683038.25 101.25 +596040.52 5678535.05 98.75 +596040.57 5679654.21 98.75 +596040.60 5677894.71 101.25 +596040.95 5678337.01 98.75 +596041.53 5677932.86 101.25 +596041.71 5682702.37 101.25 +596042.08 5682232.02 100.00 +596042.19 5682692.38 101.25 +596042.28 5682911.49 101.25 +596042.36 5682577.44 101.25 +596042.60 5679158.56 98.75 +596042.68 5677915.71 101.25 +596043.42 5683315.39 100.00 +596043.79 5682712.10 101.25 +596044.21 5681238.41 100.00 +596044.37 5681044.35 100.00 +596045.34 5679750.99 98.75 +596045.43 5683324.07 100.00 +596045.73 5680327.12 100.00 +596046.28 5680130.11 98.75 +596046.37 5681206.21 100.00 +596046.67 5678832.73 98.75 +596046.80 5681301.19 100.00 +596046.94 5679857.94 98.75 +596047.32 5682992.47 101.25 +596047.39 5681101.13 100.00 +596047.51 5682721.37 101.25 +596048.49 5677770.30 101.25 +596048.65 5682746.44 101.25 +596048.85 5677872.45 101.25 +596049.32 5679649.48 98.75 +596049.80 5683040.47 101.25 +596049.99 5680336.15 100.00 +596050.18 5678537.34 98.75 +596050.25 5677892.17 101.25 +596050.31 5683308.59 100.00 +596050.73 5677928.99 101.25 +596050.86 5678337.92 98.75 +596050.97 5682235.27 100.00 +596051.49 5682730.54 101.25 +596051.52 5679154.05 98.75 +596051.81 5679743.39 98.75 +596051.84 5679994.79 97.50 +596051.95 5677911.97 101.25 +596052.26 5682911.03 101.25 +596052.26 5680004.57 97.50 +596052.33 5682578.21 101.25 +596052.95 5679985.18 97.50 +596053.61 5681048.01 100.00 +596053.61 5683329.71 100.00 +596053.64 5681241.66 100.00 +596053.96 5680136.39 98.75 +596054.48 5680345.08 100.00 +596054.53 5682739.75 101.25 +596054.78 5681200.87 100.00 +596055.13 5678827.41 98.75 +596055.55 5679975.74 97.50 +596056.18 5680013.04 97.50 +596056.34 5679855.13 98.75 +596056.44 5681104.90 100.00 +596056.76 5681300.71 100.00 +596057.22 5682993.82 101.25 +596057.86 5680354.47 100.00 +596057.95 5679644.47 98.75 +596058.27 5679735.79 98.75 +596058.35 5677768.72 101.25 +596058.80 5677873.34 101.25 +596059.12 5679966.64 97.50 +596059.29 5677923.83 101.25 +596059.38 5683304.52 100.00 +596059.54 5683042.70 101.25 +596059.69 5678540.30 98.75 +596059.97 5677889.82 101.25 +596060.48 5682522.59 101.25 +596060.71 5679150.36 98.75 +596060.73 5678339.23 98.75 +596060.95 5682235.32 100.00 +596061.03 5682512.66 101.25 +596061.19 5680363.89 100.00 +596061.22 5677908.23 101.25 +596061.61 5682532.51 101.25 +596061.64 5680142.68 98.75 +596062.04 5682575.98 101.25 +596062.18 5680020.77 97.50 +596062.19 5682912.09 101.25 +596062.31 5683334.50 100.00 +596062.62 5682502.79 101.25 +596062.71 5678821.05 98.75 +596062.82 5681051.84 100.00 +596063.06 5681244.90 100.00 +596063.20 5681195.53 100.00 +596063.44 5682542.34 101.25 +596063.62 5680373.55 100.00 +596064.57 5681110.68 100.00 +596064.74 5679728.19 98.75 +596065.17 5679959.73 97.50 +596065.44 5679851.04 98.75 +596065.44 5680383.37 100.00 +596065.54 5682493.44 101.25 +596066.33 5679336.56 102.00 +596066.61 5679639.58 98.75 +596066.69 5682551.68 101.25 +596066.71 5681300.07 100.00 +596066.73 5679345.85 102.00 +596066.95 5682996.03 101.25 +596067.26 5680393.19 100.00 +596067.55 5680028.96 97.50 +596067.85 5677918.68 101.25 +596067.89 5677876.39 101.25 +596067.93 5679326.83 102.00 +596068.27 5677769.26 101.25 +596068.48 5678544.50 98.75 +596068.66 5677885.48 101.25 +596069.07 5682569.55 101.25 +596069.08 5680403.02 100.00 +596069.15 5683303.15 100.00 +596069.28 5683044.92 101.25 +596069.36 5678813.61 98.75 +596069.43 5680148.82 98.75 +596069.52 5679317.09 102.00 +596070.43 5681057.95 100.00 +596070.50 5680412.90 100.00 +596070.52 5679148.61 98.75 +596070.59 5682560.88 101.25 +596070.60 5678340.53 98.75 +596070.64 5677904.92 101.25 +596070.89 5679720.40 98.75 +596070.93 5681189.27 100.00 +596070.93 5682235.16 100.00 +596071.05 5682485.09 101.25 +596071.12 5679307.36 102.00 +596071.17 5683338.94 100.00 +596071.51 5680422.83 100.00 +596071.54 5679954.55 97.50 +596072.07 5681249.11 100.00 +596072.13 5682913.14 101.25 +596072.32 5679353.98 102.00 +596072.52 5680432.77 100.00 +596072.53 5681116.65 100.00 +596072.71 5679297.62 102.00 +596072.96 5680037.12 97.50 +596073.41 5680442.72 100.00 +596073.57 5680452.70 100.00 +596073.73 5680462.69 100.00 +596073.88 5680472.68 100.00 +596074.04 5680482.67 100.00 +596074.30 5679287.89 102.00 +596074.38 5679846.61 98.75 +596074.98 5679711.30 98.75 +596075.41 5680492.48 100.00 +596075.89 5678551.16 98.75 +596075.90 5679278.15 102.00 +596076.02 5678806.16 98.75 +596076.54 5677913.75 101.25 +596076.56 5682476.75 101.25 +596076.59 5679639.58 98.75 +596076.66 5681299.40 100.00 +596076.67 5682998.36 101.25 +596077.19 5681065.27 100.00 +596077.30 5680154.86 98.75 +596077.49 5679268.41 102.00 +596077.91 5679362.11 102.00 +596077.99 5682968.03 100.00 +596078.06 5680502.11 100.00 +596078.12 5682958.66 100.00 +596078.21 5677770.33 101.25 +596078.39 5680045.26 97.50 +596078.40 5681182.66 100.00 +596078.58 5679702.01 98.75 +596078.71 5681786.49 100.00 +596079.02 5683047.13 101.25 +596079.05 5683302.32 100.00 +596079.08 5679258.68 102.00 +596079.33 5682240.26 100.00 +596079.56 5681123.72 100.00 +596079.64 5681777.84 100.00 +596080.13 5677902.41 101.25 +596080.32 5679150.52 98.75 +596080.47 5678341.84 98.75 +596080.68 5679248.94 102.00 +596080.71 5680511.74 100.00 +596081.03 5679951.92 97.50 +596081.11 5683339.31 100.00 +596081.11 5681253.07 100.00 +596081.36 5679692.43 98.75 +596082.07 5682913.97 101.25 +596082.12 5682468.44 101.25 +596082.27 5679239.21 102.00 +596082.68 5678798.71 98.75 +596083.46 5678557.62 98.75 +596083.50 5679370.24 102.00 +596083.51 5679842.59 98.75 +596083.58 5681791.59 100.00 +596083.60 5680053.55 97.50 +596083.87 5679229.47 102.00 +596084.06 5681072.49 100.00 +596084.14 5679682.85 98.75 +596084.27 5680520.99 100.00 +596084.37 5677908.13 101.25 +596084.38 5679644.51 98.75 +596084.45 5681770.22 100.00 +596084.89 5682975.25 100.00 +596085.18 5680160.90 98.75 +596085.46 5679219.74 102.00 +596085.46 5679672.98 98.75 +596085.87 5681176.06 100.00 +596085.92 5682952.93 100.00 +596086.33 5681297.10 100.00 +596086.38 5683000.69 101.25 +596086.43 5679663.05 98.75 +596086.50 5681130.86 100.00 +596087.05 5679210.00 102.00 +596087.40 5679653.12 98.75 +596087.62 5683111.66 100.00 +596088.01 5677772.08 101.25 +596088.30 5682460.67 101.25 +596088.65 5679200.26 102.00 +596088.75 5680061.87 97.50 +596088.76 5683049.34 101.25 +596088.87 5682243.22 100.00 +596088.96 5683301.49 100.00 +596089.09 5679378.37 102.00 +596089.35 5681762.71 100.00 +596089.37 5680529.58 100.00 +596089.40 5678791.33 98.75 +596089.57 5681774.55 100.25 +596090.13 5679152.43 98.75 +596090.24 5679190.53 102.00 +596090.26 5678343.69 98.75 +596090.63 5679949.76 97.50 +596090.90 5678564.21 98.75 +596090.91 5681167.99 100.00 +596090.99 5681254.40 100.00 +596091.04 5683339.68 100.00 +596091.36 5681787.05 100.00 +596091.50 5681079.13 100.00 +596091.84 5679180.79 102.00 +596092.05 5682913.63 101.25 +596092.41 5681138.87 100.00 +596092.53 5682981.67 100.00 +596092.68 5679838.66 98.75 +596093.05 5680166.94 98.75 +596093.24 5681158.30 100.00 +596093.43 5679171.06 102.00 +596093.58 5683320.97 100.50 +596094.47 5680538.17 100.00 +596094.60 5681148.60 100.00 +596094.68 5679386.50 102.00 +596094.81 5681292.63 100.00 +596095.49 5682950.06 100.00 +596096.01 5683003.34 101.25 +596096.04 5682454.38 101.25 +596096.13 5678783.95 98.75 +596096.35 5678572.54 98.75 +596096.70 5681779.78 100.00 +596096.81 5680066.95 97.50 +596097.55 5683112.77 100.00 +596097.58 5677774.93 101.25 +596097.66 5682247.85 100.00 +596097.76 5681759.46 100.00 +596098.50 5683051.55 101.25 +596098.90 5683301.57 100.00 +596098.94 5681085.77 100.00 +596099.81 5680546.60 100.00 +596100.03 5678345.59 98.75 +596100.05 5679153.49 98.75 +596100.27 5679394.63 102.00 +596100.34 5679948.11 97.50 +596100.34 5682987.90 100.00 +596100.82 5680173.11 98.75 +596100.82 5681255.88 100.00 +596100.93 5683340.66 100.00 +596101.41 5681285.16 100.00 +596101.54 5681772.31 100.00 +596101.80 5678580.87 98.75 +596102.04 5682913.30 101.25 +596102.13 5679835.70 98.75 +596102.58 5679170.79 102.00 +596102.84 5681763.43 100.00 +596102.86 5678776.56 98.75 +596104.59 5682449.20 101.25 +596105.07 5682947.29 100.00 +596105.35 5680554.91 100.00 +596105.61 5683006.09 101.25 +596105.71 5680070.97 97.50 +596105.86 5679402.76 102.00 +596106.31 5682252.82 100.00 +596107.25 5678589.20 98.75 +596107.26 5677777.40 101.25 +596107.44 5681090.45 100.00 +596107.48 5683113.89 100.00 +596108.24 5683053.77 101.25 +596108.31 5680179.61 98.75 +596108.84 5683301.65 100.00 +596109.14 5681278.89 100.00 +596109.64 5681260.54 100.00 +596109.66 5678347.81 98.75 +596109.69 5682991.32 100.00 +596109.70 5679945.25 97.50 +596110.01 5679154.25 98.75 +596110.70 5681800.50 98.75 +596110.81 5683341.52 100.00 +596110.89 5680563.23 100.00 +596111.05 5681270.31 100.00 +596111.45 5679410.89 102.00 +596112.00 5679834.22 98.75 +596112.02 5682912.96 101.25 +596112.14 5678773.02 98.75 +596112.43 5679171.39 102.00 +596113.15 5682444.02 101.25 +596113.43 5681809.35 98.75 +596114.08 5678596.27 98.75 +596114.53 5682258.48 100.00 +596114.75 5681791.88 98.75 +596115.06 5682947.52 100.00 +596115.22 5683008.84 101.25 +596115.30 5680072.94 97.50 +596115.81 5680186.11 98.75 +596116.96 5677779.79 101.25 +596117.04 5679419.02 102.00 +596117.05 5681093.09 100.00 +596117.29 5683115.56 100.00 +596117.31 5680570.83 100.00 +596117.55 5678353.88 98.75 +596117.97 5683056.07 101.25 +596118.78 5683301.75 100.00 +596118.78 5679941.45 97.50 +596119.28 5682994.11 100.00 +596119.85 5681816.95 98.75 +596119.96 5679155.01 98.75 +596120.02 5679828.76 98.75 +596120.55 5683339.53 100.00 +596121.54 5678769.63 98.75 +596121.92 5682914.29 101.25 +596121.94 5682439.28 101.25 +596122.28 5679171.99 102.00 +596122.52 5678601.29 98.75 +596122.63 5679427.14 102.00 +596122.72 5682264.19 100.00 +596122.79 5681786.53 98.75 +596123.30 5680192.62 98.75 +596124.21 5680578.06 100.00 +596124.82 5683011.58 101.25 +596124.89 5680074.92 97.50 +596125.05 5682947.74 100.00 +596125.61 5678359.68 98.75 +596126.68 5681095.64 100.00 +596126.82 5683118.54 100.00 +596126.87 5677781.05 101.25 +596127.39 5679822.06 98.75 +596127.69 5683058.37 101.25 +596127.88 5679937.67 97.50 +596128.22 5679435.27 102.00 +596128.57 5681821.83 98.75 +596128.59 5683303.36 100.00 +596128.91 5682996.76 100.00 +596129.94 5679154.65 98.75 +596130.33 5683339.60 100.00 +596130.71 5680199.22 98.75 +596130.94 5682269.84 100.00 +596130.95 5682434.95 101.25 +596131.11 5680585.28 100.00 +596131.28 5678767.61 98.75 +596131.59 5678600.62 98.75 +596131.82 5682915.61 101.25 +596131.93 5678367.12 98.75 +596132.13 5679172.58 102.00 +596132.22 5681783.21 98.75 +596133.29 5679814.01 98.75 +596133.81 5679443.40 102.00 +596134.19 5683125.29 100.00 +596134.36 5678386.60 98.75 +596134.47 5680076.92 97.50 +596134.48 5678396.53 98.75 +596134.59 5678376.65 98.75 +596134.65 5683013.32 101.25 +596134.77 5682949.82 100.00 +596136.61 5681094.82 100.00 +596136.62 5678406.21 98.75 +596136.79 5677782.08 101.25 +596137.02 5679934.01 97.50 +596137.41 5683060.68 101.25 +596137.71 5681825.83 98.75 +596137.93 5680592.58 100.00 +596138.06 5680205.89 98.75 +596138.40 5683304.96 100.00 +596138.57 5682999.31 100.00 +596139.19 5679805.97 98.75 +596139.24 5682429.43 101.25 +596139.29 5682275.30 100.00 +596139.40 5679451.53 102.00 +596139.77 5683133.46 100.00 +596139.92 5679154.19 98.75 +596140.08 5678595.50 98.75 +596140.13 5683341.24 100.00 +596140.98 5678519.78 98.75 +596141.16 5678766.10 98.75 +596141.58 5682917.71 101.25 +596141.90 5679173.56 102.00 +596142.09 5681781.85 98.75 +596142.29 5678414.39 98.75 +596142.56 5678510.06 98.75 +596143.64 5680080.08 97.50 +596144.15 5683142.43 100.00 +596144.40 5682952.46 100.00 +596144.53 5683014.74 101.25 +596144.63 5680599.99 100.00 +596144.94 5679797.83 98.75 +596144.99 5679459.66 102.00 +596145.00 5680212.98 98.75 +596146.00 5679930.04 97.50 +596146.28 5678527.87 98.75 +596146.55 5681094.00 100.00 +596146.70 5678588.06 98.75 +596146.75 5677781.54 101.25 +596146.77 5682422.92 101.25 +596147.01 5681829.50 98.75 +596147.22 5683061.75 101.25 +596147.96 5678422.57 98.75 +596147.97 5682280.23 100.00 +596148.00 5678501.82 98.75 +596148.21 5683306.57 100.00 +596148.28 5683001.64 100.00 +596148.85 5683151.22 100.00 +596149.51 5679788.96 98.75 +596149.90 5679153.74 98.75 +596149.94 5683342.84 100.00 +596150.57 5679467.79 102.00 +596151.00 5678764.41 98.75 +596151.20 5679176.84 102.00 +596151.25 5682920.13 101.25 +596151.33 5680607.39 100.00 +596151.79 5680220.20 98.75 +596152.03 5681780.82 98.75 +596152.32 5680084.61 97.50 +596153.34 5682415.38 101.25 +596153.49 5678580.77 98.75 +596153.74 5679467.13 102.00 +596153.97 5678493.84 98.75 +596153.99 5682955.25 100.00 +596154.01 5678430.42 98.75 +596154.08 5679780.09 98.75 +596154.19 5679447.43 102.00 +596154.22 5679437.56 102.00 +596154.30 5679924.73 97.50 +596154.35 5679457.29 102.00 +596154.42 5683016.16 101.25 +596154.44 5679427.70 102.00 +596154.62 5683159.38 100.00 +596154.81 5678532.66 98.75 +596155.24 5679417.90 102.00 +596155.66 5677777.05 101.25 +596156.16 5681091.54 100.00 +596156.48 5681832.59 98.75 +596156.93 5682284.64 100.00 +596157.08 5679408.21 102.00 +596157.12 5680228.56 98.75 +596157.19 5683061.01 101.25 +596157.86 5683308.86 100.00 +596157.99 5683003.99 100.00 +596158.21 5680614.63 100.00 +596158.81 5682407.02 101.25 +596159.01 5679398.53 102.00 +596159.03 5680988.16 100.00 +596159.16 5679771.64 98.75 +596159.39 5682512.22 102.50 +596159.47 5682521.53 102.50 +596159.63 5679152.04 98.75 +596159.85 5683343.66 100.00 +596159.95 5680998.09 100.00 +596160.06 5678485.97 98.75 +596160.08 5682924.80 101.25 +596160.39 5683167.54 100.00 +596160.43 5678573.63 98.75 +596160.50 5679180.12 102.00 +596160.81 5678762.52 98.75 +596160.88 5680978.55 100.00 +596160.92 5680089.27 97.50 +596161.43 5679388.97 102.00 +596161.48 5682397.58 101.25 +596161.52 5678436.96 98.75 +596161.94 5681780.83 98.75 +596162.46 5680236.93 98.75 +596162.60 5679919.43 97.50 +596162.91 5682387.68 101.25 +596163.41 5682530.60 102.50 +596163.49 5677770.84 101.25 +596163.55 5682958.16 100.00 +596163.84 5679379.40 102.00 +596164.06 5680969.10 100.00 +596164.16 5681006.91 100.00 +596164.17 5683018.14 101.25 +596164.19 5679671.29 100.00 +596164.34 5682377.79 101.25 +596164.44 5679681.27 100.00 +596164.77 5678532.89 98.75 +596165.02 5682503.96 102.50 +596165.47 5680621.49 100.00 +596165.66 5681088.52 100.00 +596165.67 5679661.47 100.00 +596165.87 5679369.75 102.00 +596166.28 5682367.98 101.25 +596166.28 5681834.51 98.75 +596166.30 5682287.24 100.00 +596166.45 5678478.34 98.75 +596167.07 5679765.56 98.75 +596167.15 5683060.27 101.25 +596167.36 5678566.49 98.75 +596167.40 5683311.67 100.00 +596167.59 5683006.77 100.00 +596167.63 5679651.68 100.00 +596167.79 5680245.29 98.75 +596167.88 5679360.09 102.00 +596168.29 5683173.58 100.00 +596168.44 5682358.22 101.25 +596169.03 5678443.50 98.75 +596169.10 5679148.91 98.75 +596169.16 5682928.92 101.25 +596169.39 5680094.19 97.50 +596169.43 5681015.37 100.00 +596169.75 5683344.48 100.00 +596169.81 5679183.40 102.00 +596169.90 5679350.43 102.00 +596169.92 5682537.60 102.50 +596170.62 5678760.63 98.75 +596170.71 5680961.86 100.00 +596170.74 5679913.90 97.50 +596171.23 5679642.43 100.00 +596171.32 5677764.63 101.25 +596171.79 5681782.52 98.75 +596171.87 5680254.31 98.75 +596172.10 5679192.16 102.00 +596172.17 5679340.83 102.00 +596172.34 5681081.72 100.00 +596172.35 5679687.09 100.00 +596172.62 5678470.53 98.75 +596172.73 5680628.35 100.00 +596172.83 5679202.00 102.00 +596172.87 5682349.31 101.25 +596173.46 5682959.45 100.00 +596173.51 5679211.84 100.00 +596173.51 5679211.84 102.00 +596173.52 5682499.00 102.50 +596173.58 5683021.51 101.25 +596173.94 5678559.08 98.75 +596174.17 5679220.76 102.00 +596174.29 5678535.54 98.75 +596174.37 5678451.84 98.75 +596174.48 5681023.97 100.00 +596174.56 5679331.26 102.00 +596174.83 5679229.68 102.00 +596174.98 5679759.48 98.75 +596175.41 5678461.46 98.75 +596175.48 5679238.60 102.00 +596175.52 5679633.43 100.00 +596175.61 5680263.50 98.75 +596176.02 5679321.52 102.00 +596176.09 5681836.43 98.75 +596176.14 5679247.52 102.00 +596176.24 5681072.62 100.00 +596176.28 5682287.17 100.00 +596176.45 5683179.29 100.00 +596176.73 5683314.98 100.00 +596176.80 5679256.44 102.00 +596176.80 5681033.66 100.00 +596177.08 5683061.24 101.25 +596177.15 5679311.72 102.00 +596177.19 5683009.54 100.00 +596177.46 5679265.36 102.00 +596177.77 5682340.61 101.25 +596177.86 5680099.10 97.50 +596177.87 5680954.93 100.00 +596178.11 5679274.28 102.00 +596178.29 5679301.92 102.00 +596178.30 5680990.39 98.75 +596178.39 5681043.48 100.00 +596178.43 5679907.74 97.50 +596178.50 5682932.45 101.25 +596178.76 5680883.30 100.00 +596178.77 5679283.20 102.00 +596178.78 5678550.37 98.75 +596178.88 5679146.90 98.75 +596179.12 5682541.50 102.50 +596179.43 5681053.40 100.00 +596179.43 5679292.12 100.00 +596179.43 5679292.12 102.00 +596179.52 5681063.20 100.00 +596179.66 5683345.30 100.00 +596179.96 5680272.39 98.75 +596180.00 5680980.58 98.75 +596180.29 5680892.76 100.00 +596180.42 5678758.74 98.75 +596180.45 5679624.75 100.00 +596180.48 5677760.66 101.25 +596180.74 5679692.37 100.00 +596180.74 5680999.93 98.75 +596180.82 5680634.19 100.00 +596181.54 5681784.70 98.75 +596181.86 5679206.83 100.00 +596181.87 5678541.47 98.75 +596182.04 5680874.00 100.00 +596182.44 5681009.67 98.75 +596182.87 5680971.30 98.75 +596182.98 5683024.88 101.25 +596182.99 5682495.95 102.50 +596183.08 5681019.61 98.75 +596183.15 5682961.54 100.00 +596183.87 5681029.52 98.75 +596183.97 5679756.10 98.75 +596184.38 5680901.82 100.00 +596184.57 5679615.75 100.00 +596184.67 5682333.37 101.25 +596184.90 5680947.86 100.00 +596184.97 5683481.95 100.00 +596185.03 5680280.92 98.75 +596185.52 5683319.63 100.00 +596185.92 5681838.25 98.75 +596186.20 5683013.82 100.00 +596186.22 5682286.57 100.00 +596186.33 5683180.71 100.00 +596186.36 5679901.98 97.50 +596186.78 5682938.04 101.25 +596186.92 5681039.00 98.75 +596187.01 5683062.32 101.25 +596187.02 5680104.27 97.50 +596187.03 5679606.08 100.00 +596187.70 5682546.44 102.50 +596188.05 5680866.05 100.00 +596188.44 5679288.44 100.00 +596188.81 5679146.13 98.75 +596188.86 5680910.70 100.00 +596188.99 5678396.78 100.00 +596189.07 5680289.96 98.75 +596189.08 5680639.80 100.00 +596189.26 5683343.83 100.00 +596189.27 5680963.68 98.75 +596189.36 5678387.29 100.00 +596189.66 5677756.72 101.25 +596189.73 5678755.20 98.75 +596189.93 5679596.53 100.00 +596189.94 5680939.47 100.00 +596189.96 5681048.48 98.75 +596189.99 5683490.17 100.00 +596190.17 5678406.65 100.00 +596190.22 5679201.83 100.00 +596190.47 5679694.55 100.00 +596191.13 5681131.10 98.75 +596191.24 5681787.11 98.75 +596191.46 5683475.58 100.00 +596191.88 5682326.49 101.25 +596192.15 5680920.11 100.00 +596192.30 5683028.48 101.25 +596192.40 5682965.32 100.00 +596192.63 5680930.04 100.00 +596192.70 5682493.58 102.50 +596192.73 5680299.18 98.75 +596193.07 5678378.32 100.00 +596193.08 5679587.07 100.00 +596193.18 5681121.36 98.75 +596193.89 5679755.07 98.75 +596194.29 5683324.31 100.00 +596194.41 5681057.34 98.75 +596194.44 5678348.67 100.00 +596194.57 5678368.49 100.00 +596194.92 5678358.60 100.00 +596195.07 5682943.62 101.25 +596195.11 5683018.34 100.00 +596195.28 5679897.79 97.50 +596195.46 5682552.73 102.50 +596195.68 5680956.05 98.75 +596195.87 5678492.26 100.00 +596195.90 5681838.73 98.75 +596195.90 5678413.77 100.00 +596196.07 5680860.77 100.00 +596196.12 5682285.27 100.00 +596196.16 5680107.93 97.50 +596196.23 5683182.03 100.00 +596196.47 5678483.29 100.00 +596196.64 5678339.02 100.00 +596196.92 5683062.95 101.25 +596196.98 5680308.11 98.75 +596197.17 5681138.25 98.75 +596197.34 5680645.42 100.00 +596197.46 5679284.76 100.00 +596197.54 5681112.65 98.75 +596198.00 5679578.39 100.00 +596198.21 5683339.76 100.00 +596198.55 5683494.58 100.00 +596198.79 5679145.85 98.75 +596198.81 5680889.05 98.75 +596198.92 5678751.30 98.75 +596199.15 5678329.40 100.00 +596199.29 5677754.46 101.25 +596199.43 5681065.94 98.75 +596199.45 5679199.70 100.00 +596200.08 5682320.77 101.25 +596200.19 5679696.84 100.00 +596200.78 5680898.29 98.75 +596200.79 5681790.05 98.75 +596200.83 5683331.57 100.00 +596200.90 5683475.16 100.00 +596201.57 5683032.21 101.25 +596201.65 5682969.09 100.00 +596201.94 5680879.80 98.75 +596202.02 5680316.67 98.75 +596202.30 5682490.88 102.50 +596202.33 5678498.11 100.00 +596202.68 5680949.00 98.75 +596202.87 5681075.12 98.75 +596203.35 5682949.21 101.25 +596203.38 5679570.11 100.00 +596203.51 5681104.69 98.75 +596203.66 5679755.07 98.75 +596203.80 5683023.27 100.00 +596203.93 5678320.99 100.00 +596204.10 5678419.40 100.00 +596204.10 5683485.43 100.50 +596204.52 5681094.80 98.75 +596204.58 5682556.83 102.50 +596204.65 5681084.92 98.75 +596204.80 5679898.09 97.50 +596204.86 5678477.96 100.00 +596205.04 5680112.17 97.50 +596205.39 5680857.22 100.00 +596205.82 5679279.79 100.00 +596205.82 5680650.60 100.00 +596205.88 5681839.21 98.75 +596205.93 5681141.91 98.75 +596206.08 5682284.60 100.00 +596206.20 5683181.39 100.00 +596206.23 5680870.81 98.75 +596206.66 5683060.75 101.25 +596207.11 5683498.99 100.00 +596207.15 5680905.94 98.75 +596208.02 5679149.55 98.75 +596208.12 5678747.39 98.75 +596209.09 5682316.56 101.25 +596209.17 5679199.12 100.00 +596209.21 5677753.25 101.25 +596209.56 5680941.86 98.75 +596209.71 5683478.65 100.00 +596209.74 5680322.71 98.75 +596209.88 5679699.20 100.00 +596210.34 5681793.00 98.75 +596210.52 5678313.55 100.00 +596210.82 5683035.97 101.25 +596210.91 5678342.30 101.25 +596210.93 5682972.80 100.00 +596211.28 5679564.01 100.00 +596211.54 5682487.06 102.50 +596211.60 5682954.85 101.25 +596212.26 5678498.67 100.00 +596212.28 5680914.32 98.75 +596212.80 5678352.10 101.25 +596212.85 5679758.96 98.75 +596212.93 5678423.91 100.00 +596212.94 5683027.07 100.00 +596213.42 5679273.80 100.00 +596213.67 5678473.43 100.00 +596213.69 5682560.94 102.50 +596213.81 5680116.62 97.50 +596213.91 5680864.71 98.75 +596213.91 5678333.01 101.25 +596214.22 5679900.63 97.50 +596214.69 5678361.90 101.25 +596214.83 5680933.62 98.75 +596215.01 5680854.70 100.00 +596215.18 5680654.10 100.00 +596215.49 5680923.69 98.75 +596215.81 5683503.10 100.00 +596215.81 5681143.14 98.75 +596215.82 5683183.36 100.00 +596215.83 5678371.81 101.25 +596215.87 5681839.60 98.75 +596215.96 5682283.42 100.00 +596216.24 5683058.11 101.25 +596216.63 5678391.70 101.25 +596216.86 5678381.73 101.25 +596217.21 5679153.47 98.75 +596217.54 5678543.33 100.00 +596217.75 5678744.89 98.75 +596217.76 5682023.45 98.75 +596217.91 5680328.33 98.75 +596217.99 5678307.13 100.00 +596218.02 5678553.01 100.00 +596218.11 5682480.39 102.50 +596218.24 5683483.11 100.00 +596218.25 5683042.42 101.25 +596218.33 5678401.36 101.25 +596218.41 5682312.94 101.25 +596218.46 5679201.55 100.00 +596218.53 5678324.24 101.25 +596218.56 5682031.89 98.75 +596219.17 5677753.82 101.25 +596219.58 5679701.55 100.00 +596219.74 5682960.64 101.25 +596219.74 5679558.80 100.00 +596219.77 5679266.52 100.00 +596219.87 5677899.79 101.25 +596220.00 5681795.54 98.75 +596220.21 5682976.50 100.00 +596221.37 5683051.60 101.25 +596221.64 5678428.54 100.00 +596221.78 5678534.88 100.00 +596221.89 5678410.66 101.25 +596222.04 5679762.85 98.75 +596222.19 5678498.78 100.00 +596222.28 5681235.57 98.75 +596222.62 5683029.56 100.00 +596222.78 5682471.55 102.50 +596222.80 5682565.05 102.50 +596222.84 5678469.57 100.00 +596223.07 5679904.96 97.50 +596223.17 5680862.17 98.75 +596223.66 5680116.88 97.50 +596223.97 5681244.68 98.75 +596224.42 5678316.18 101.25 +596224.64 5677761.68 101.25 +596224.68 5679258.11 100.00 +596224.73 5683506.71 100.00 +596224.76 5680852.61 100.00 +596224.80 5680656.74 100.00 +596225.08 5681146.39 98.75 +596225.08 5678558.53 100.00 +596225.25 5682017.37 98.75 +596225.28 5677891.92 101.25 +596225.28 5683186.56 100.00 +596225.56 5680098.52 97.50 +596225.68 5682281.16 100.00 +596225.86 5681839.83 98.75 +596225.92 5677901.42 101.25 +596226.29 5678301.65 100.00 +596226.41 5679157.35 98.75 +596226.52 5680333.20 98.75 +596226.76 5683487.61 100.00 +596227.40 5682034.47 98.75 +596227.52 5678742.79 98.75 +596227.52 5681227.78 98.75 +596227.63 5679204.84 100.00 +596227.73 5682309.32 101.25 +596227.81 5678418.69 101.25 +596227.93 5682966.31 101.25 +596228.39 5682463.43 102.50 +596228.40 5677770.78 101.25 +596228.66 5680091.72 97.50 +596228.66 5679554.34 100.00 +596228.69 5678435.55 100.00 +596229.16 5678528.22 100.00 +596229.27 5679249.53 100.00 +596229.31 5679703.78 100.00 +596229.49 5682980.21 100.00 +596229.71 5681797.92 98.75 +596230.31 5678308.13 101.25 +596230.35 5679587.82 100.70 +596230.67 5679767.85 98.75 +596230.80 5677780.48 101.25 +596230.85 5680106.83 97.50 +596231.69 5679909.65 97.50 +596231.83 5681249.83 98.75 +596231.90 5678499.64 100.00 +596231.91 5682569.15 102.50 +596231.97 5678465.66 100.00 +596232.30 5683032.04 100.00 +596232.72 5680114.42 97.50 +596232.86 5677885.42 101.25 +596233.09 5680861.89 98.75 +596233.10 5679240.59 100.00 +596233.31 5678260.92 100.00 +596233.39 5677790.12 101.25 +596233.66 5683510.32 100.00 +596233.88 5679212.19 100.00 +596233.95 5681150.90 98.75 +596234.19 5681845.02 98.75 +596234.51 5680659.10 100.00 +596234.51 5680850.51 100.00 +596234.52 5677896.34 101.25 +596234.59 5678296.18 100.00 +596234.64 5678425.78 101.25 +596234.68 5683189.96 100.00 +596234.71 5678560.75 100.00 +596234.85 5682014.60 98.75 +596234.92 5679162.48 98.75 +596234.94 5683492.67 100.00 +596235.02 5679231.05 100.00 +596235.40 5682278.90 100.00 +596235.52 5680337.38 98.75 +596235.52 5678442.77 100.00 +596235.59 5679221.38 100.00 +596236.23 5683457.65 100.00 +596236.33 5682457.35 102.50 +596236.50 5681223.64 98.75 +596236.51 5680085.78 97.50 +596236.60 5677799.42 101.25 +596236.72 5678521.78 100.00 +596236.74 5682305.01 101.25 +596237.08 5682033.75 98.75 +596237.27 5678740.64 98.75 +596237.72 5682968.29 101.25 +596237.85 5679550.91 100.00 +596238.22 5679774.07 98.75 +596238.25 5678302.10 101.25 +596238.76 5682983.91 100.00 +596239.01 5678269.07 100.00 +596239.04 5679706.00 100.00 +596239.48 5679915.68 97.50 +596239.59 5681799.17 98.75 +596239.80 5678504.86 100.00 +596239.88 5678288.22 100.00 +596240.10 5681158.73 98.75 +596240.28 5678460.21 100.00 +596240.37 5677878.83 101.25 +596240.59 5678450.85 100.00 +596240.75 5683465.56 100.00 +596240.86 5678399.96 102.50 +596240.97 5678278.71 100.00 +596241.03 5682573.26 102.50 +596241.19 5681253.23 98.75 +596241.84 5681215.24 98.75 +596242.01 5678407.05 102.50 +596242.10 5683033.96 100.00 +596242.30 5681850.87 98.75 +596242.75 5680864.31 98.75 +596242.85 5678514.18 100.00 +596242.87 5678431.42 101.25 +596242.98 5683497.98 100.00 +596243.05 5679168.28 98.75 +596243.21 5677891.40 101.25 +596243.24 5683510.12 100.00 +596243.36 5683451.89 100.00 +596243.86 5680342.68 98.75 +596244.02 5683193.50 100.00 +596244.04 5682010.84 98.75 +596244.08 5679782.15 98.75 +596244.14 5681167.61 98.75 +596244.24 5680660.45 100.00 +596244.37 5680849.05 100.00 +596244.56 5678562.08 100.00 +596244.64 5682452.17 102.50 +596244.76 5680080.41 97.50 +596244.79 5677805.15 101.25 +596244.92 5682275.88 100.00 +596245.61 5682300.40 101.25 +596246.23 5678296.11 101.25 +596246.24 5682029.74 98.75 +596246.69 5679922.36 97.50 +596246.73 5681177.23 98.75 +596246.82 5678737.73 98.75 +596246.92 5683472.35 100.00 +596247.19 5681206.84 98.75 +596247.41 5679711.05 100.00 +596247.57 5682969.40 101.25 +596247.71 5681196.95 98.75 +596247.76 5677872.11 101.25 +596247.82 5679550.61 100.00 +596248.04 5681186.99 98.75 +596248.29 5678393.83 102.50 +596248.36 5678414.40 102.50 +596248.46 5682986.26 100.00 +596248.91 5679176.34 98.75 +596249.02 5681858.21 98.75 +596249.28 5683505.16 100.00 +596249.57 5681799.71 98.75 +596249.93 5679790.23 98.75 +596250.21 5682577.19 102.50 +596250.90 5681254.10 98.75 +596251.65 5683464.46 100.50 +596251.76 5677886.25 101.25 +596251.85 5678435.66 101.25 +596251.93 5680348.46 98.75 +596251.97 5683035.26 100.00 +596252.12 5678288.15 101.25 +596252.32 5680867.04 98.75 +596252.34 5683451.52 100.00 +596252.74 5682005.93 98.75 +596253.11 5683197.58 100.00 +596253.13 5680075.22 97.50 +596253.56 5679929.42 97.50 +596253.67 5683478.12 100.00 +596254.08 5680658.72 100.00 +596254.23 5680847.59 100.00 +596254.33 5677807.52 101.25 +596254.47 5678562.80 100.00 +596254.51 5682450.56 102.50 +596254.53 5682273.27 100.00 +596254.64 5679184.51 98.75 +596254.73 5682296.32 101.25 +596255.18 5677865.41 101.25 +596255.19 5679717.29 100.00 +596255.53 5681865.80 98.75 +596255.95 5679798.18 98.75 +596255.97 5682028.10 98.75 +596256.38 5678734.82 98.75 +596256.89 5678389.33 102.50 +596257.49 5678279.74 101.25 +596257.54 5682968.80 101.25 +596257.60 5678416.08 102.50 +596257.80 5679550.32 100.00 +596258.02 5680068.25 97.50 +596258.21 5682988.45 100.00 +596258.21 5680058.53 97.50 +596258.54 5679937.60 97.50 +596259.00 5679193.50 98.75 +596259.17 5683456.68 100.00 +596259.30 5681248.75 98.75 +596259.43 5682581.06 102.50 +596259.48 5681799.26 98.75 +596259.53 5681998.61 98.75 +596259.95 5677880.53 101.25 +596260.09 5680354.06 98.75 +596260.54 5681874.45 98.75 +596261.09 5678439.44 101.25 +596261.10 5680049.11 97.50 +596261.52 5679946.99 97.50 +596261.87 5680869.87 98.75 +596261.89 5683202.36 100.00 +596261.96 5683035.49 100.00 +596262.14 5679806.01 98.75 +596262.68 5683479.68 100.00 +596262.71 5678271.24 101.25 +596262.80 5677858.95 101.25 +596262.91 5679723.61 100.00 +596263.62 5679202.34 98.75 +596263.92 5680656.98 100.00 +596264.00 5681239.98 98.75 +596264.06 5680039.72 97.50 +596264.09 5680846.12 100.00 +596264.17 5678561.18 100.00 +596264.20 5677809.10 101.25 +596264.26 5682293.62 101.25 +596264.37 5682271.59 100.00 +596264.37 5682448.95 102.50 +596264.50 5679956.38 97.50 +596265.06 5681883.33 98.75 +596265.18 5678730.63 98.75 +596265.21 5681942.38 98.75 +596265.45 5683463.36 100.00 +596265.46 5681990.74 98.75 +596265.67 5681932.39 98.75 +596265.71 5678385.49 102.50 +596265.95 5682027.87 98.75 +596266.11 5678420.67 102.50 +596266.13 5681922.41 98.75 +596266.72 5681912.43 98.75 +596267.31 5681952.09 98.75 +596267.39 5680030.45 97.50 +596267.52 5682968.20 101.25 +596267.59 5679552.22 100.00 +596267.95 5681902.52 98.75 +596268.12 5682988.46 100.00 +596268.14 5677874.80 101.25 +596268.41 5681231.05 98.75 +596268.64 5681892.67 98.75 +596268.65 5682584.92 102.50 +596268.72 5681981.30 98.75 +596268.78 5679210.90 98.75 +596268.83 5679965.20 97.50 +596269.01 5678263.52 101.25 +596269.28 5681797.29 98.75 +596269.34 5680357.67 98.75 +596269.36 5679812.79 98.75 +596269.83 5683207.99 100.00 +596269.83 5681961.76 98.75 +596270.24 5679730.38 100.00 +596270.32 5678443.22 101.25 +596270.53 5677852.65 101.25 +596270.72 5680021.18 97.50 +596270.73 5681971.62 98.75 +596270.76 5683470.72 100.00 +596271.37 5680872.87 98.75 +596271.84 5683479.38 100.00 +596271.95 5683035.71 100.00 +596272.34 5678723.66 98.75 +596272.51 5681100.01 98.75 +596273.09 5681222.38 98.75 +596273.46 5679973.89 97.50 +596273.62 5680654.60 100.00 +596273.76 5678558.59 100.00 +596273.83 5680845.39 100.00 +596274.17 5677809.50 101.25 +596274.21 5682292.67 101.25 +596274.23 5682270.08 100.00 +596274.23 5679219.20 98.75 +596274.27 5682447.57 102.50 +596274.35 5680012.03 97.50 +596274.56 5678425.44 102.50 +596274.85 5683216.62 100.00 +596275.27 5678383.85 102.50 +596275.87 5679983.34 97.50 +596275.94 5682028.10 98.75 +596276.38 5677869.16 101.25 +596276.74 5681091.17 98.75 +596277.18 5679993.09 97.50 +596277.29 5679818.83 98.75 +596277.38 5679554.18 100.00 +596277.49 5682967.98 101.25 +596277.57 5679737.16 100.00 +596277.73 5680002.92 97.50 +596277.85 5682588.83 102.50 +596278.09 5682987.78 100.00 +596278.62 5680361.14 98.75 +596278.68 5678448.57 101.25 +596278.81 5681794.30 98.75 +596279.14 5678716.43 98.75 +596279.24 5677847.75 101.25 +596279.53 5681104.14 98.75 +596279.87 5683225.26 100.00 +596280.62 5681215.87 98.75 +596280.82 5680876.01 98.75 +596281.82 5679225.69 98.75 +596281.92 5683036.27 100.00 +596282.20 5680850.71 100.00 +596282.37 5681083.01 98.75 +596282.81 5678430.55 102.50 +596283.28 5680652.08 100.00 +596283.36 5678555.99 100.00 +596283.81 5678707.60 98.75 +596284.00 5677808.45 101.25 +596284.17 5682291.72 101.25 +596284.19 5682446.37 102.50 +596284.20 5682269.70 100.00 +596284.73 5677863.67 101.25 +596284.84 5678382.21 102.50 +596284.89 5679743.93 100.00 +596284.89 5683233.90 100.00 +596285.55 5679824.41 98.75 +596285.89 5682027.56 98.75 +596286.74 5678454.45 101.25 +596286.86 5679557.25 100.00 +596286.92 5681098.08 98.75 +596286.95 5682592.96 102.50 +596287.48 5682968.21 101.25 +596287.94 5677842.84 101.25 +596288.06 5682987.10 100.00 +596288.16 5681790.79 98.75 +596288.16 5681209.36 98.75 +596288.31 5680363.29 98.75 +596288.48 5678698.77 98.75 +596288.97 5681075.79 98.75 +596289.63 5683242.69 100.00 +596289.77 5679231.62 98.75 +596289.87 5680857.08 100.00 +596289.97 5680879.94 98.75 +596291.06 5678435.66 102.50 +596291.86 5683037.21 100.00 +596292.18 5678689.51 98.75 +596292.22 5679750.71 100.00 +596292.95 5680649.55 100.00 +596292.95 5678553.39 100.00 +596293.08 5677858.19 101.25 +596293.18 5681090.40 98.75 +596293.35 5678411.57 102.75 +596293.73 5677806.46 101.25 +596294.08 5682292.24 101.25 +596294.14 5679829.49 98.75 +596294.15 5682445.56 102.50 +596294.18 5682269.42 100.00 +596294.30 5683251.52 100.00 +596294.48 5678382.04 102.50 +596294.91 5678460.16 101.25 +596295.77 5678680.20 98.75 +596295.79 5682026.18 98.75 +596295.96 5677836.89 101.25 +596296.24 5682596.29 102.50 +596296.37 5679560.24 100.00 +596296.90 5681069.84 98.75 +596297.14 5681205.29 98.75 +596297.38 5681786.92 98.75 +596297.47 5682968.43 101.25 +596297.54 5680863.45 100.00 +596298.00 5680365.44 98.75 +596298.03 5682986.85 100.00 +596298.89 5679235.70 98.75 +596298.89 5680884.24 98.75 +596298.97 5683260.35 100.00 +596299.42 5678440.59 102.50 +596299.46 5679757.57 100.00 +596300.50 5681083.82 98.75 +596300.83 5678671.59 98.75 +596301.35 5677852.59 101.25 +596301.66 5683039.12 100.00 +596301.90 5678549.10 100.00 +596302.09 5682018.54 98.75 +596302.86 5680648.66 100.00 +596302.96 5679834.11 98.75 +596303.72 5677806.30 101.25 +596303.73 5678464.83 101.25 +596303.78 5677830.68 101.25 +596303.96 5682293.76 101.25 +596304.09 5678382.91 102.50 +596304.12 5682444.84 102.50 +596304.16 5682269.65 100.00 +596304.85 5681063.92 98.75 +596305.04 5683268.26 100.00 +596305.23 5680869.80 100.00 +596305.89 5678662.98 98.75 +596306.22 5682596.64 102.50 +596306.26 5679561.59 100.00 +596306.47 5681201.79 98.75 +596306.56 5679764.59 100.00 +596306.70 5680890.42 98.75 +596306.74 5681783.45 98.75 +596306.94 5682009.99 98.75 +596307.37 5682521.44 103.00 +596307.46 5682968.66 101.25 +596307.89 5680365.37 98.75 +596308.02 5682987.07 100.00 +596308.06 5681961.03 98.75 +596308.07 5681971.02 98.75 +596308.16 5678444.77 102.50 +596308.47 5681077.92 98.75 +596308.52 5679237.69 98.75 +596309.26 5677846.48 101.25 +596309.48 5681980.90 98.75 +596309.86 5682000.43 98.75 +596310.76 5678544.60 100.00 +596311.12 5681951.79 98.75 +596311.13 5681990.76 98.75 +596311.22 5677824.01 101.25 +596311.35 5683276.01 100.00 +596311.40 5683041.30 100.00 +596311.45 5678654.69 98.75 +596312.08 5679838.16 98.75 +596312.51 5678387.72 102.50 +596312.55 5678469.49 101.25 +596312.84 5680648.23 100.00 +596312.91 5680876.15 100.00 +596313.59 5677807.45 101.25 +596313.85 5682295.28 101.25 +596314.06 5682268.64 100.00 +596314.06 5681060.27 98.75 +596314.09 5682444.13 102.50 +596314.51 5680896.61 98.75 +596315.32 5679769.27 100.00 +596315.79 5681942.96 98.75 +596316.14 5679562.94 100.00 +596316.21 5682596.98 102.50 +596316.27 5681780.45 98.75 +596316.27 5681200.95 98.75 +596316.67 5681072.70 98.75 +596316.92 5677815.81 101.25 +596317.09 5682966.09 101.25 +596317.16 5677840.37 101.25 +596317.22 5678447.65 102.50 +596317.25 5678646.55 98.75 +596317.80 5680365.01 98.75 +596318.01 5682987.30 100.00 +596318.29 5679235.67 98.75 +596319.08 5683282.22 100.00 +596319.21 5678394.73 102.50 +596319.47 5680904.95 98.75 +596319.69 5678540.24 100.00 +596320.15 5683046.09 100.00 +596320.60 5680882.50 100.00 +596321.20 5679842.21 98.75 +596321.53 5681934.80 98.75 +596321.65 5678473.43 101.25 +596322.82 5680647.80 100.00 +596323.04 5678638.42 98.75 +596323.28 5681056.61 98.75 +596323.30 5680914.14 98.75 +596323.77 5682296.31 101.25 +596323.93 5682267.17 100.00 +596324.05 5682443.62 102.50 +596324.28 5679773.65 100.00 +596324.69 5678402.52 102.50 +596325.06 5677834.25 101.25 +596326.05 5681778.48 98.75 +596326.07 5679563.78 100.00 +596326.20 5682597.16 102.50 +596326.23 5681200.95 98.75 +596326.58 5681072.40 98.75 +596326.69 5682963.36 101.25 +596326.70 5680923.50 98.75 +596326.89 5679230.65 98.75 +596326.89 5678446.83 102.50 +596327.28 5680362.48 98.75 +596327.29 5683287.90 100.00 +596327.55 5681926.81 98.75 +596327.80 5680889.29 100.00 +596328.00 5682987.53 100.00 +596328.09 5678411.61 102.50 +596328.86 5683050.99 100.00 +596329.12 5678537.09 100.00 +596330.00 5679846.81 98.75 +596330.08 5678631.44 98.75 +596330.52 5680932.65 98.75 +596331.31 5678475.90 101.25 +596331.77 5677826.94 101.25 +596331.95 5681969.67 100.00 +596332.38 5678420.22 102.50 +596332.77 5680647.68 100.00 +596332.83 5681054.40 98.75 +596333.21 5680897.66 100.00 +596333.24 5679778.04 100.00 +596333.38 5682263.96 100.00 +596333.56 5681918.83 98.75 +596333.60 5681979.37 100.00 +596333.77 5682296.54 101.25 +596333.86 5682445.52 102.50 +596334.50 5681960.28 100.00 +596335.25 5681989.08 100.00 +596335.42 5679225.45 98.75 +596335.44 5682959.19 101.25 +596335.52 5683293.57 100.00 +596335.89 5678443.96 102.50 +596335.92 5681776.95 98.75 +596336.03 5679564.19 100.00 +596336.15 5682596.23 102.50 +596336.40 5681072.81 98.75 +596336.54 5680358.92 98.75 +596336.62 5680940.35 98.75 +596336.76 5681998.80 100.00 +596337.52 5683055.97 100.00 +596337.76 5678625.06 98.75 +596337.99 5682987.76 100.00 +596338.07 5679852.68 98.75 +596338.07 5678428.08 102.50 +596338.25 5677819.36 101.25 +596338.54 5678533.95 100.00 +596338.77 5681952.04 100.00 +596339.37 5681910.71 98.75 +596339.62 5680905.12 100.00 +596340.75 5678436.77 102.50 +596341.21 5678476.58 101.25 +596342.31 5679782.21 100.00 +596342.35 5682951.98 101.25 +596342.38 5682693.62 101.25 +596342.58 5680649.59 100.00 +596342.71 5681053.59 98.75 +596342.77 5682703.60 101.25 +596342.81 5682260.69 100.00 +596342.84 5679218.88 98.75 +596343.48 5682713.55 101.25 +596343.67 5682447.41 102.50 +596343.77 5682296.39 101.25 +596343.83 5682003.08 100.00 +596343.87 5683299.06 100.00 +596344.28 5681902.01 98.75 +596344.65 5681078.30 98.75 +596345.19 5680874.72 100.00 +596345.24 5680944.97 98.75 +596345.32 5682723.36 101.25 +596345.45 5678618.68 98.75 +596345.48 5677812.46 101.25 +596345.90 5679565.69 100.00 +596345.92 5681776.85 98.75 +596345.98 5679858.73 98.75 +596346.10 5682595.30 102.50 +596346.18 5683060.95 100.00 +596347.17 5682733.18 101.25 +596347.33 5680866.29 100.00 +596347.46 5680911.29 100.00 +596347.61 5682986.24 100.00 +596347.87 5681948.28 100.00 +596347.97 5678530.80 100.00 +596348.64 5682686.33 101.25 +596348.70 5682944.32 101.25 +596349.05 5682742.99 101.25 +596349.19 5681893.30 98.75 +596349.73 5679211.65 98.75 +596351.19 5678476.63 101.25 +596351.49 5679786.12 100.00 +596351.71 5680882.25 100.00 +596351.83 5682752.59 101.25 +596352.05 5682257.00 100.00 +596352.21 5683304.55 100.00 +596352.38 5680651.50 100.00 +596352.56 5681052.98 98.75 +596352.82 5679866.00 98.75 +596353.13 5678612.29 98.75 +596353.38 5682001.57 100.00 +596353.49 5682449.30 102.50 +596353.77 5682296.20 101.25 +596353.87 5677807.24 101.25 +596353.89 5681081.29 98.75 +596353.95 5680860.52 100.00 +596354.13 5682935.94 101.25 +596354.60 5682762.19 101.25 +596354.84 5683065.93 100.00 +596354.94 5681885.29 98.75 +596355.14 5680945.99 98.75 +596355.15 5681974.65 100.25 +596355.56 5681779.45 98.75 +596355.65 5680349.36 98.75 +596355.71 5679567.47 100.00 +596356.03 5682594.17 102.50 +596356.28 5682916.67 101.25 +596356.41 5682926.65 101.25 +596356.51 5682906.68 101.25 +596356.67 5682680.79 101.25 +596356.70 5682982.09 100.00 +596356.71 5680914.89 100.00 +596357.15 5678671.65 99.60 +596357.16 5681945.89 100.00 +596357.18 5679205.07 98.75 +596357.24 5680890.55 100.00 +596357.37 5682771.78 101.25 +596357.40 5678527.65 100.00 +596358.27 5682897.19 101.25 +596358.30 5679873.94 98.75 +596359.57 5682781.52 101.25 +596360.39 5679883.68 98.75 +596360.67 5679790.04 100.00 +596360.69 5682252.03 100.00 +596360.80 5678605.90 98.75 +596361.16 5678476.67 101.25 +596361.67 5682791.29 101.25 +596361.82 5683306.32 100.00 +596361.91 5681056.26 98.75 +596362.11 5680899.23 100.00 +596362.30 5680652.72 100.00 +596362.54 5681878.79 98.75 +596362.86 5677802.89 101.25 +596362.89 5681999.03 100.00 +596363.01 5682452.35 102.50 +596363.50 5683070.92 100.00 +596363.66 5679893.11 98.75 +596363.68 5680908.79 100.00 +596363.73 5682296.85 101.25 +596363.78 5682801.06 101.25 +596363.79 5681081.01 98.75 +596363.92 5680860.27 100.00 +596363.95 5680343.83 98.75 +596364.18 5682889.15 101.25 +596364.94 5681782.88 98.75 +596365.03 5680946.07 98.75 +596365.24 5679199.22 98.75 +596365.38 5679569.93 100.00 +596365.63 5682977.70 100.00 +596365.88 5682592.86 102.50 +596365.88 5682810.82 101.25 +596365.94 5681949.46 100.00 +596366.18 5682677.71 101.25 +596366.85 5678524.54 100.00 +596366.86 5679902.55 98.75 +596367.54 5682820.66 101.25 +596368.04 5682880.26 101.25 +596368.47 5678599.50 98.75 +596368.56 5679912.38 98.75 +596368.76 5682830.58 101.25 +596369.78 5682870.42 101.25 +596369.84 5679793.96 100.00 +596369.87 5682248.10 100.00 +596369.97 5682840.49 101.25 +596370.08 5682860.44 101.25 +596370.13 5681872.29 98.75 +596370.25 5679922.22 98.75 +596370.31 5682850.45 101.25 +596371.14 5678476.94 101.25 +596371.29 5681059.48 98.75 +596371.54 5683076.74 100.00 +596371.59 5683308.17 100.00 +596371.65 5679191.57 98.75 +596371.71 5677798.24 101.25 +596371.82 5680337.79 98.75 +596371.99 5681995.27 100.00 +596372.21 5680653.94 100.00 +596372.52 5682455.40 102.50 +596372.68 5682970.63 100.00 +596372.82 5682585.66 102.50 +596373.42 5680940.72 98.75 +596373.60 5681955.62 100.00 +596373.67 5679931.51 98.75 +596373.68 5682297.79 101.25 +596373.69 5681080.43 98.75 +596373.89 5680860.03 100.00 +596374.28 5681786.46 98.75 +596374.95 5679572.74 100.00 +596374.97 5683231.15 100.00 +596375.68 5682674.64 101.25 +596375.97 5680931.09 98.75 +596376.06 5683221.22 100.00 +596376.14 5678593.10 98.75 +596376.29 5678521.43 100.00 +596377.87 5679940.56 98.75 +596378.07 5679183.91 98.75 +596378.16 5680921.38 98.75 +596378.53 5680330.40 98.75 +596378.76 5682962.87 100.00 +596378.81 5683083.59 100.00 +596378.91 5679798.13 100.00 +596379.07 5681868.48 98.75 +596379.43 5683239.69 100.00 +596379.57 5682246.38 100.00 +596379.76 5682578.47 102.50 +596380.51 5677793.52 101.25 +596380.68 5681962.46 100.00 +596380.69 5681062.61 98.75 +596381.08 5681991.50 100.00 +596381.10 5678477.44 101.25 +596381.27 5683310.59 100.00 +596381.59 5681258.32 98.75 +596382.04 5682458.45 102.50 +596382.11 5679949.59 98.75 +596382.13 5680655.11 100.00 +596382.28 5683213.96 100.00 +596382.29 5681248.35 98.75 +596382.56 5680913.34 98.75 +596382.82 5682301.84 101.25 +596382.83 5682569.00 102.50 +596383.03 5682953.84 100.00 +596383.58 5681079.85 98.75 +596383.70 5678586.57 98.75 +596383.84 5680860.45 100.00 +596383.85 5680322.13 98.75 +596383.86 5681238.51 98.75 +596384.00 5681788.63 98.75 +596384.48 5679176.26 98.75 +596384.49 5679575.70 100.00 +596384.82 5683091.53 100.00 +596385.13 5682671.41 101.25 +596385.71 5682559.43 102.50 +596385.73 5678518.33 100.00 +596386.16 5681228.78 98.75 +596386.18 5683246.89 100.00 +596386.49 5679958.56 98.75 +596386.77 5682944.59 100.00 +596387.61 5680312.90 98.75 +596387.71 5681969.35 100.00 +596387.96 5679802.33 100.00 +596388.69 5682549.93 102.50 +596388.83 5681866.33 98.75 +596389.06 5681219.30 98.75 +596389.22 5681986.38 100.00 +596389.23 5680303.06 98.75 +596389.26 5677788.68 101.25 +596389.54 5682245.97 100.00 +596390.15 5682935.18 100.00 +596390.39 5680213.58 98.75 +596390.49 5681062.55 98.75 +596390.51 5680223.56 98.75 +596390.60 5683099.68 100.00 +596390.64 5680233.54 98.75 +596390.75 5680203.66 98.75 +596390.85 5680293.21 98.75 +596390.95 5680243.51 98.75 +596391.01 5678478.39 101.25 +596391.10 5680908.22 98.75 +596391.24 5683311.23 100.00 +596391.25 5678580.04 98.75 +596391.35 5682306.92 101.25 +596391.39 5680253.48 98.75 +596391.56 5682461.50 102.50 +596391.63 5683211.92 100.00 +596391.75 5681977.46 100.00 +596391.84 5680263.45 98.75 +596391.90 5679169.65 98.75 +596391.98 5680653.46 100.00 +596392.06 5679966.64 98.75 +596392.11 5679582.08 100.00 +596392.29 5680273.41 98.75 +596392.47 5680283.37 98.75 +596393.05 5680193.95 98.75 +596393.43 5681080.67 98.75 +596393.67 5682925.84 100.00 +596393.79 5680861.06 100.00 +596393.84 5681790.42 98.75 +596394.04 5683253.07 100.00 +596394.25 5681210.76 98.75 +596394.56 5682668.09 101.25 +596395.18 5678515.22 100.00 +596395.34 5680184.24 98.75 +596396.38 5683107.83 100.00 +596396.46 5682543.64 102.50 +596396.47 5678424.51 101.25 +596397.34 5682916.54 100.00 +596397.37 5679805.23 100.00 +596397.80 5680174.57 98.75 +596397.94 5678433.00 101.25 +596397.97 5677783.80 101.25 +596398.78 5681866.58 98.75 +596398.80 5678573.50 98.75 +596399.14 5682313.18 101.25 +596399.43 5679973.37 98.75 +596399.43 5681202.21 98.75 +596399.52 5682246.20 100.00 +596399.76 5679588.48 100.00 +596399.84 5679163.59 98.75 +596400.34 5681062.43 98.75 +596400.78 5678480.40 101.25 +596400.79 5680165.05 98.75 +596400.85 5680906.24 98.75 +596401.05 5682464.63 102.50 +596401.11 5682907.30 100.00 +596401.12 5683312.57 100.00 +596401.61 5683211.37 100.00 +596401.77 5683116.24 100.00 +596401.83 5680651.80 100.00 +596401.99 5683259.10 100.00 +596403.25 5681081.98 98.75 +596403.36 5678417.91 101.25 +596403.63 5680862.69 100.00 +596403.73 5681790.55 98.75 +596403.77 5680155.53 98.75 +596403.98 5682664.77 101.25 +596404.22 5682537.34 102.50 +596404.62 5678512.11 100.00 +596405.13 5681194.02 98.75 +596405.91 5682898.54 100.00 +596406.38 5678437.27 101.25 +596406.65 5677778.86 101.25 +596406.75 5680146.01 98.75 +596406.94 5683124.79 100.00 +596406.94 5682319.44 101.25 +596407.22 5679979.60 98.75 +596407.30 5679806.16 100.00 +596407.52 5679594.75 100.00 +596408.05 5679158.02 98.75 +596408.20 5678570.47 98.75 +596408.75 5681867.20 98.75 +596408.83 5682249.75 100.00 +596408.90 5680136.28 98.75 +596409.42 5682889.43 100.00 +596410.08 5681064.26 98.75 +596410.37 5682879.56 100.00 +596410.54 5682467.79 102.50 +596410.62 5678481.81 101.25 +596410.70 5683263.99 100.00 +596410.74 5680905.27 98.75 +596410.82 5680126.48 98.75 +596410.97 5683314.24 100.00 +596411.21 5681186.08 98.75 +596411.51 5683210.04 100.00 +596411.69 5680650.24 100.00 +596412.12 5681085.13 98.75 +596412.30 5682531.49 102.50 +596412.44 5682840.23 100.00 +596412.73 5680116.69 98.75 +596412.75 5678414.54 101.25 +596412.80 5682850.19 100.00 +596412.89 5683132.66 100.00 +596413.09 5682830.26 100.00 +596413.17 5680862.25 100.00 +596413.28 5682870.00 100.00 +596413.43 5682661.55 101.25 +596413.54 5682860.16 100.00 +596413.66 5681789.42 98.75 +596413.75 5682820.29 100.00 +596414.06 5678509.00 100.00 +596414.72 5682325.73 101.25 +596415.01 5679985.83 98.75 +596415.05 5680107.02 98.75 +596415.28 5679601.03 100.00 +596415.33 5677773.90 101.25 +596416.02 5678438.19 101.25 +596416.57 5682811.03 100.00 +596417.24 5679807.08 100.00 +596417.44 5681872.14 98.75 +596417.49 5679154.76 98.75 +596417.86 5678567.95 98.75 +596417.97 5681070.16 98.75 +596418.06 5682253.53 100.00 +596418.11 5681179.05 98.75 +596418.48 5682473.14 102.50 +596418.67 5680097.72 98.75 +596418.81 5681092.44 98.75 +596419.41 5683268.87 100.00 +596420.37 5678408.50 101.25 +596420.54 5683139.08 100.00 +596420.55 5683316.65 100.00 +596420.59 5678481.80 101.25 +596420.60 5680904.14 98.75 +596420.71 5682526.08 102.50 +596421.41 5683208.71 100.00 +596421.62 5680649.16 100.00 +596421.95 5682802.62 100.00 +596422.14 5679608.26 100.00 +596422.19 5680858.00 100.00 +596422.29 5680088.42 98.75 +596422.33 5682332.21 101.25 +596422.70 5681785.16 98.75 +596422.90 5679991.94 98.75 +596422.90 5682658.35 101.25 +596423.50 5678505.89 100.00 +596424.18 5677769.28 101.25 +596424.69 5682480.97 102.50 +596425.78 5678436.11 101.25 +596425.90 5681076.01 98.75 +596426.13 5681877.07 98.75 +596426.13 5680079.22 98.75 +596426.25 5682518.10 102.50 +596426.34 5682259.10 100.00 +596426.55 5681173.70 98.75 +596426.93 5679151.49 98.75 +596427.21 5679807.15 100.00 +596427.53 5678565.44 98.75 +596427.86 5678401.90 101.25 +596428.55 5683272.90 100.00 +596428.73 5683144.69 100.00 +596428.92 5679615.58 100.00 +596429.07 5683321.86 100.00 +596429.51 5682489.59 102.50 +596429.95 5680901.13 98.75 +596430.04 5682338.57 101.25 +596430.57 5678481.80 101.25 +596430.72 5682509.16 102.50 +596430.78 5679998.06 98.75 +596430.93 5681779.62 98.75 +596431.17 5682800.11 100.00 +596431.17 5680070.61 98.75 +596431.22 5680853.77 100.00 +596431.24 5683209.86 100.00 +596431.31 5682499.23 102.50 +596431.55 5680648.09 100.00 +596432.36 5682655.15 101.25 +596432.92 5678502.70 100.00 +596433.23 5677765.05 101.25 +596434.47 5682264.88 100.00 +596434.82 5681882.01 98.75 +596434.99 5681168.34 98.75 +596435.55 5678434.16 101.25 +596435.56 5681078.16 98.75 +596436.04 5679622.52 100.00 +596436.21 5680062.00 98.75 +596436.36 5680006.32 98.75 +596436.75 5679152.90 98.75 +596436.94 5678397.79 101.25 +596437.19 5679807.03 100.00 +596437.34 5678564.49 98.75 +596437.68 5683326.87 100.00 +596437.68 5683149.12 100.00 +596437.82 5683276.59 100.00 +596437.91 5682344.75 101.25 +596438.13 5680895.45 98.75 +596438.41 5679884.28 100.00 +596438.62 5681773.25 98.75 +596438.66 5679893.62 100.00 +596439.75 5679902.99 100.00 +596440.31 5678479.96 101.25 +596440.36 5680849.78 100.00 +596440.85 5683212.40 100.00 +596441.03 5682800.09 100.00 +596441.21 5680645.57 100.00 +596441.26 5680053.40 98.75 +596441.83 5682651.95 101.25 +596441.89 5680014.63 98.75 +596442.00 5679876.42 100.00 +596442.23 5682271.16 100.00 +596442.33 5678499.50 100.00 +596442.52 5677761.68 101.25 +596442.60 5681888.06 98.75 +596443.12 5680043.64 98.75 +596443.53 5681163.16 98.75 +596443.72 5679911.49 100.00 +596443.77 5681764.69 98.75 +596444.16 5679628.32 100.00 +596444.71 5680033.79 98.75 +596444.89 5680023.96 98.75 +596444.90 5681081.49 98.75 +596445.05 5682351.50 101.25 +596445.53 5678434.14 101.25 +596446.07 5680889.44 98.75 +596446.50 5678397.03 101.25 +596446.60 5679154.57 98.75 +596446.64 5683153.55 100.00 +596447.17 5679806.91 100.00 +596447.31 5678565.17 98.75 +596447.40 5683329.17 100.00 +596447.45 5683279.23 100.00 +596447.61 5681755.46 98.75 +596448.21 5679919.70 100.00 +596448.23 5679899.20 100.50 +596449.19 5681895.58 98.75 +596449.25 5682360.57 101.25 +596449.49 5680845.80 100.00 +596449.84 5679879.32 100.00 +596449.97 5678477.44 101.25 +596450.04 5683216.32 100.00 +596450.67 5682802.46 100.00 +596450.82 5680642.85 100.00 +596451.29 5682648.75 101.25 +596451.35 5682274.25 100.00 +596451.74 5678496.31 100.00 +596451.95 5681746.47 98.75 +596452.26 5681158.28 98.75 +596452.46 5677760.74 101.25 +596452.98 5679632.63 100.00 +596453.94 5682369.36 101.25 +596454.30 5680884.15 98.75 +596454.58 5679887.48 100.00 +596455.51 5678434.12 101.25 +596455.58 5683158.00 100.00 +596455.66 5681903.19 98.75 +596456.01 5678397.25 101.25 +596456.45 5683283.45 100.00 +596456.45 5679156.23 98.75 +596456.62 5679922.21 100.00 +596456.72 5681737.69 98.75 +596457.14 5683331.32 100.00 +596457.15 5679806.82 100.00 +596457.27 5678565.85 98.75 +596457.85 5679896.19 100.00 +596458.65 5680841.85 100.00 +596458.92 5678473.03 101.25 +596459.27 5683220.13 100.00 +596459.49 5682643.13 101.25 +596459.61 5679905.46 100.00 +596459.68 5682806.77 100.00 +596459.76 5682377.50 101.25 +596460.43 5680640.13 100.00 +596460.98 5681153.40 98.75 +596461.15 5678493.09 100.00 +596461.25 5682275.50 100.00 +596461.37 5679914.73 100.00 +596461.49 5681728.90 98.75 +596461.69 5681911.09 98.75 +596462.06 5678389.85 101.25 +596462.41 5677759.80 101.25 +596462.44 5681473.10 98.75 +596462.65 5679635.09 100.00 +596462.68 5681481.98 98.75 +596463.61 5678380.02 101.25 +596463.83 5678370.04 101.25 +596463.85 5680881.34 98.75 +596464.51 5683162.48 100.00 +596464.56 5678360.10 101.25 +596465.22 5683288.24 100.00 +596465.45 5678433.46 101.25 +596465.58 5682385.63 101.25 +596465.77 5681920.21 98.75 +596465.86 5679159.50 98.75 +596466.07 5679921.13 98.75 +596466.23 5679930.04 98.75 +596466.51 5681720.26 98.75 +596466.75 5678467.07 101.25 +596467.01 5678350.63 101.25 +596467.13 5679806.76 100.00 +596467.13 5683331.26 100.00 +596467.23 5678565.22 98.75 +596467.45 5681295.43 98.75 +596467.52 5682637.19 101.25 +596467.83 5680837.97 100.00 +596467.98 5681465.79 98.75 +596468.03 5679912.06 98.75 +596468.45 5678848.98 98.75 +596468.58 5682269.44 100.00 +596468.93 5683222.66 100.00 +596469.19 5681286.12 98.75 +596469.62 5682807.21 100.00 +596469.69 5678858.86 98.75 +596469.72 5681488.69 98.75 +596469.73 5678488.07 100.00 +596469.93 5681149.11 98.75 +596470.04 5680637.41 100.00 +596471.93 5682393.16 101.25 +596471.95 5679935.64 98.75 +596472.00 5681711.94 98.75 +596472.11 5678868.55 98.75 +596472.28 5678342.16 101.25 +596472.32 5677760.61 101.25 +596472.37 5681303.41 98.75 +596472.42 5679637.13 100.00 +596472.92 5679905.36 98.75 +596473.07 5681925.94 98.75 +596473.25 5682260.62 100.00 +596473.40 5678840.78 98.75 +596473.40 5680878.51 98.75 +596473.44 5683166.97 100.00 +596474.03 5678460.45 101.25 +596474.29 5683292.39 100.00 +596474.51 5679921.50 98.70 +596474.74 5678878.19 98.75 +596475.19 5679163.07 98.75 +596475.39 5678432.70 101.25 +596475.55 5682631.25 101.25 +596475.95 5682583.63 101.25 +596476.37 5678295.28 101.25 +596476.54 5678285.69 101.25 +596476.63 5681280.63 98.75 +596477.02 5680834.08 100.00 +596477.02 5679807.37 100.00 +596477.11 5683331.26 100.00 +596477.17 5678564.33 98.75 +596477.36 5682573.74 101.25 +596477.42 5678333.61 101.25 +596477.45 5678887.80 98.75 +596477.75 5681463.89 98.75 +596477.88 5682251.77 100.00 +596478.08 5678305.11 101.25 +596478.40 5678483.24 100.00 +596478.42 5681704.28 98.75 +596478.45 5681493.40 98.75 +596478.46 5682593.27 101.25 +596478.60 5683225.18 100.00 +596478.95 5678907.29 98.75 +596479.60 5682807.32 100.00 +596479.64 5678832.98 98.75 +596479.64 5682622.35 101.25 +596479.65 5680634.69 100.00 +596479.68 5681146.91 98.75 +596479.89 5678916.81 98.75 +596480.16 5678897.41 98.75 +596480.17 5678314.87 101.25 +596480.32 5679907.57 98.75 +596480.57 5682564.45 101.25 +596480.68 5678276.62 101.25 +596480.70 5681308.41 98.75 +596480.74 5682397.87 101.25 +596480.88 5679933.85 98.75 +596480.96 5682602.93 101.25 +596481.21 5683173.22 100.00 +596481.31 5678324.77 101.25 +596481.59 5682242.51 100.00 +596482.09 5682612.86 101.25 +596482.16 5677762.36 101.25 +596482.20 5679639.10 100.00 +596482.78 5681924.06 98.75 +596482.90 5679924.78 98.75 +596482.92 5680875.59 98.75 +596483.53 5683296.20 100.00 +596483.78 5678458.34 101.25 +596483.87 5679915.63 98.75 +596484.05 5678267.23 101.25 +596484.31 5678925.78 98.75 +596484.52 5679166.64 98.75 +596484.79 5681696.58 98.75 +596485.05 5680828.31 100.00 +596485.32 5682233.25 100.00 +596485.34 5682555.67 101.25 +596485.37 5678432.93 101.25 +596486.12 5681277.51 98.75 +596486.66 5678825.93 98.75 +596486.69 5679809.84 100.00 +596486.80 5683333.69 100.00 +596487.12 5678563.45 98.75 +596487.49 5678479.21 100.00 +596487.75 5681464.12 98.75 +596488.13 5681495.87 98.75 +596488.50 5683226.13 100.00 +596488.95 5683179.53 100.00 +596489.15 5680631.67 100.00 +596489.43 5681144.71 98.75 +596489.56 5682402.59 101.25 +596489.59 5682807.01 100.00 +596489.59 5681917.25 98.75 +596490.67 5681309.15 98.75 +596490.74 5682547.34 101.25 +596490.76 5678933.29 98.75 +596491.06 5681688.79 98.75 +596491.21 5680908.76 97.50 +596491.93 5677764.42 101.25 +596491.98 5679641.07 100.00 +596492.45 5680872.67 98.75 +596492.65 5683300.27 100.00 +596492.71 5680821.93 100.00 +596492.73 5679172.09 98.75 +596493.10 5682226.99 100.00 +596493.61 5678456.72 101.25 +596494.77 5678820.44 98.75 +596495.30 5678433.39 101.25 +596495.62 5681274.39 98.75 +596495.65 5680900.13 97.50 +596495.77 5681909.39 98.75 +596496.16 5679812.97 100.00 +596496.53 5683335.85 100.00 +596496.58 5678475.18 100.00 +596497.07 5678562.68 98.75 +596497.13 5683185.26 100.00 +596497.16 5680916.02 97.50 +596497.48 5682539.97 101.25 +596497.74 5681464.34 98.75 +596497.93 5681497.55 98.75 +596498.12 5682407.70 101.25 +596498.18 5680627.41 100.00 +596498.48 5683226.54 100.00 +596498.87 5678938.06 98.75 +596499.27 5681143.40 98.75 +596499.36 5681683.26 98.75 +596499.57 5682806.71 100.00 +596500.33 5679178.57 98.75 +596500.38 5680815.56 100.00 +596500.64 5681309.89 98.75 +596500.74 5682220.57 100.00 +596501.33 5680868.36 98.75 +596501.73 5683304.43 100.00 +596501.74 5677766.30 101.25 +596501.76 5679643.07 100.00 +596501.87 5680924.71 97.50 +596502.08 5681901.64 98.75 +596502.47 5678453.38 101.25 +596503.93 5680895.51 97.50 +596504.22 5682532.60 101.25 +596504.38 5678437.39 101.25 +596504.39 5678817.75 98.75 +596505.10 5681271.23 98.75 +596505.39 5683190.87 100.00 +596505.52 5679816.42 100.00 +596505.91 5678471.75 100.00 +596505.99 5682413.87 101.25 +596506.51 5683336.37 100.00 +596506.91 5680933.17 97.50 +596507.05 5678563.23 98.75 +596507.22 5680623.15 100.00 +596507.68 5681463.46 98.75 +596507.85 5678445.62 101.25 +596507.85 5681677.99 98.75 +596507.92 5681497.78 98.75 +596507.93 5679185.05 98.75 +596508.04 5680809.18 100.00 +596508.25 5682214.00 100.00 +596508.47 5683226.96 100.00 +596508.65 5681894.11 98.75 +596508.82 5678938.92 98.75 +596509.26 5681143.63 98.75 +596509.44 5682808.28 100.00 +596509.57 5680862.81 98.75 +596510.62 5681310.15 98.75 +596510.90 5683308.40 100.00 +596510.97 5682525.22 101.25 +596511.45 5679645.46 100.00 +596511.66 5677767.46 101.25 +596513.47 5678813.65 98.75 +596513.60 5680896.88 97.50 +596513.86 5682420.04 101.25 +596514.00 5683195.94 100.00 +596514.17 5680940.03 97.50 +596514.40 5679820.82 100.00 +596514.43 5681267.65 98.75 +596515.24 5681886.60 98.75 +596515.25 5678468.36 100.00 +596515.53 5679191.53 98.75 +596515.71 5680802.81 100.00 +596516.28 5680618.95 100.00 +596516.34 5683336.30 100.00 +596516.67 5681673.30 98.75 +596516.88 5680856.05 98.75 +596516.95 5678563.13 98.75 +596517.01 5682209.82 100.00 +596517.66 5681463.02 98.75 +596517.71 5682517.85 101.25 +596517.86 5681498.76 98.75 +596518.40 5683227.95 100.00 +596518.77 5678939.77 98.75 +596519.25 5681143.86 98.75 +596519.31 5682809.84 100.00 +596519.73 5683312.81 100.00 +596519.84 5679650.85 100.00 +596520.61 5681309.92 98.75 +596521.34 5678807.61 98.75 +596521.62 5677768.12 101.25 +596521.73 5682426.21 101.25 +596521.87 5681879.11 98.75 +596522.07 5680847.70 98.75 +596522.61 5683201.01 100.00 +596522.72 5680900.80 97.50 +596522.72 5679826.33 100.00 +596522.85 5679198.30 98.75 +596522.91 5680626.40 100.00 +596523.12 5680796.14 100.00 +596523.16 5680923.63 97.50 +596523.22 5680942.03 97.50 +596523.66 5678463.27 100.00 +596523.76 5681264.07 98.75 +596524.39 5680933.10 97.50 +596524.45 5682510.48 101.25 +596524.52 5683321.44 100.00 +596524.93 5683331.20 100.00 +596525.49 5681668.60 98.75 +596526.44 5680838.76 98.75 +596526.59 5678560.52 98.75 +596526.73 5682208.27 100.00 +596527.25 5681002.97 97.50 +596527.42 5681464.23 98.75 +596527.75 5681500.17 98.75 +596528.14 5681147.81 98.75 +596528.23 5679656.26 100.00 +596528.30 5683229.24 100.00 +596528.53 5681871.67 98.75 +596528.66 5682813.20 100.00 +596528.76 5678939.89 98.75 +596528.79 5678800.96 98.75 +596528.92 5680829.11 98.75 +596529.25 5681012.07 97.50 +596529.51 5679205.74 98.75 +596529.53 5680633.85 100.00 +596529.60 5682432.38 101.25 +596529.91 5680819.28 98.75 +596530.46 5680789.40 100.00 +596530.60 5681309.69 98.75 +596530.81 5683206.59 100.00 +596530.87 5680919.38 97.50 +596531.38 5680897.63 97.50 +596531.41 5679831.21 100.00 +596531.61 5677768.31 101.25 +596532.04 5678458.34 100.00 +596532.41 5682504.58 101.25 +596533.10 5681260.49 98.75 +596533.78 5680995.41 97.50 +596534.55 5681664.45 98.75 +596535.27 5681864.28 98.75 +596535.48 5680612.42 100.00 +596535.78 5678793.83 98.75 +596536.08 5683223.80 100.00 +596536.14 5678557.58 98.75 +596536.16 5680641.30 100.00 +596536.18 5679213.18 98.75 +596536.40 5683214.81 100.00 +596536.58 5682209.89 100.00 +596536.83 5681467.61 98.75 +596536.92 5681152.52 98.75 +596537.02 5680781.89 100.00 +596537.45 5679659.99 100.00 +596537.53 5681502.23 98.75 +596537.88 5682817.06 100.00 +596538.20 5681013.89 97.50 +596538.66 5682436.61 101.25 +596538.75 5678940.02 98.75 +596540.37 5679835.60 100.00 +596540.42 5680987.94 97.50 +596540.56 5681309.00 98.75 +596540.72 5680917.74 97.50 +596541.01 5682499.51 101.25 +596541.19 5680895.88 97.50 +596541.30 5680607.68 100.00 +596541.58 5677767.82 101.25 +596541.73 5679083.76 99.70 +596541.77 5678456.28 100.00 +596542.09 5680619.78 100.00 +596542.43 5681256.92 98.75 +596542.78 5680648.75 100.00 +596542.90 5678786.83 98.75 +596543.57 5680774.38 100.00 +596544.04 5681661.32 98.75 +596544.40 5681860.24 98.75 +596544.40 5679218.58 98.75 +596545.66 5678554.57 98.75 +596546.16 5681156.32 98.75 +596546.23 5681470.99 98.75 +596546.43 5682211.50 100.00 +596546.90 5679663.13 100.00 +596546.92 5681008.98 97.50 +596547.30 5681504.32 98.75 +596547.62 5682819.27 100.00 +596547.73 5682440.83 101.25 +596547.78 5680981.24 97.50 +596548.70 5680627.15 100.00 +596548.73 5678939.99 98.75 +596548.85 5679840.84 100.00 +596549.41 5680656.20 100.00 +596549.94 5680766.71 100.00 +596550.12 5682496.04 101.25 +596550.32 5680603.61 100.00 +596550.35 5678780.18 98.75 +596550.48 5681307.87 98.75 +596550.69 5680918.18 97.50 +596551.08 5680894.47 97.50 +596551.49 5678454.23 100.00 +596551.56 5677767.37 101.25 +596551.98 5681254.07 98.75 +596553.12 5681657.20 98.75 +596553.34 5679223.03 98.75 +596553.75 5681856.78 98.75 +596555.09 5681160.75 98.75 +596555.19 5678551.57 98.75 +596555.30 5680634.51 100.00 +596555.40 5681003.70 97.50 +596555.47 5680974.89 97.50 +596556.03 5680663.65 100.00 +596556.09 5681472.09 98.75 +596556.22 5680758.96 100.00 +596556.29 5682213.11 100.00 +596556.76 5679664.65 100.00 +596556.88 5682444.72 101.25 +596556.94 5679846.66 100.00 +596556.99 5681506.79 98.75 +596557.37 5682821.45 100.00 +596558.68 5678939.13 98.75 +596558.72 5678774.99 98.75 +596559.38 5680599.64 100.00 +596560.09 5682496.58 101.25 +596560.34 5680920.36 97.50 +596560.42 5681308.87 98.75 +596561.06 5680893.93 97.50 +596561.23 5678452.24 100.00 +596561.56 5677767.37 101.25 +596561.62 5681652.08 98.75 +596561.75 5681251.93 98.75 +596561.91 5680641.88 100.00 +596562.28 5679227.48 98.75 +596562.42 5680751.16 100.00 +596562.54 5680967.82 97.50 +596562.65 5680671.10 100.00 +596563.37 5681854.06 98.75 +596563.61 5681165.97 98.75 +596563.71 5680998.18 97.50 +596564.83 5679852.78 100.00 +596564.84 5678548.98 98.75 +596565.91 5682215.72 100.00 +596566.08 5681472.55 98.75 +596566.62 5679666.18 100.00 +596566.67 5681509.26 98.75 +596566.84 5682445.64 101.25 +596567.15 5682822.73 100.00 +596567.94 5678771.14 98.75 +596568.47 5680595.74 100.00 +596568.48 5680743.24 100.00 +596568.52 5680649.24 100.00 +596568.63 5678938.28 98.75 +596568.84 5681645.18 98.75 +596569.20 5681049.08 97.50 +596569.28 5680678.55 100.00 +596569.74 5680923.77 97.50 +596569.98 5682497.71 101.25 +596570.37 5681309.88 98.75 +596570.87 5680962.52 97.50 +596570.89 5679232.49 98.75 +596571.04 5678450.63 100.00 +596571.05 5680893.74 97.50 +596571.08 5680991.42 97.50 +596571.51 5681249.78 98.75 +596571.55 5677767.37 101.25 +596572.14 5681171.18 98.75 +596572.72 5679858.89 100.00 +596573.01 5681851.49 98.75 +596574.31 5681042.46 97.50 +596574.49 5678546.41 98.75 +596574.54 5680735.32 100.00 +596574.99 5682035.20 98.75 +596575.04 5681055.75 97.50 +596575.13 5680656.61 100.00 +596575.46 5682218.61 100.00 +596575.90 5680686.00 100.00 +596576.06 5681473.02 98.75 +596576.41 5679664.72 100.00 +596576.41 5681638.67 98.75 +596576.44 5681511.10 98.75 +596576.80 5682446.56 101.25 +596577.04 5682821.32 100.00 +596577.51 5678768.98 98.75 +596577.56 5680591.83 100.00 +596578.52 5680984.75 97.50 +596578.58 5678937.42 98.75 +596578.98 5679238.35 98.75 +596578.99 5680927.54 97.50 +596579.66 5682500.18 101.25 +596579.84 5682027.31 98.75 +596579.85 5680958.13 97.50 +596580.26 5682042.78 98.75 +596580.31 5681310.89 98.75 +596580.73 5681176.30 98.75 +596580.84 5678448.95 100.00 +596580.97 5679863.97 100.00 +596581.04 5680893.74 97.50 +596581.13 5683174.24 98.75 +596581.38 5677768.88 101.25 +596581.40 5681248.69 98.75 +596581.53 5680728.28 100.00 +596581.73 5680663.97 100.00 +596581.94 5683167.84 98.75 +596582.53 5680693.45 100.00 +596582.94 5681037.67 97.50 +596582.99 5681850.94 98.75 +596584.14 5678543.83 98.75 +596584.24 5681632.44 98.75 +596584.57 5681054.40 97.50 +596585.16 5682220.89 100.00 +596585.57 5681470.19 98.75 +596586.18 5679662.69 100.00 +596586.32 5680978.50 97.50 +596586.44 5681511.33 98.75 +596586.53 5683182.46 98.75 +596586.60 5680933.93 97.50 +596586.74 5680588.15 100.00 +596586.77 5680951.42 97.50 +596586.79 5682446.34 101.25 +596586.84 5682819.63 100.00 +596587.06 5679244.21 98.75 +596587.48 5678768.62 98.75 +596587.53 5682022.11 98.75 +596588.31 5678935.39 98.75 +596588.34 5680671.34 100.00 +596588.59 5682504.48 101.25 +596588.92 5682046.80 98.75 +596589.09 5680721.78 100.00 +596589.15 5680700.90 100.00 +596589.27 5681181.49 98.75 +596590.25 5681310.83 98.75 +596590.39 5680942.66 97.50 +596590.58 5678446.98 100.00 +596590.83 5679863.54 100.00 +596590.90 5677771.51 101.25 +596590.99 5680894.15 97.50 +596591.03 5680653.43 100.30 +596591.22 5683169.56 98.75 +596591.39 5681248.33 98.75 +596592.01 5681033.91 97.50 +596592.97 5681850.39 98.75 +596593.23 5681042.01 97.00 +596593.84 5683189.28 98.75 +596593.85 5681629.86 98.75 +596593.94 5681051.29 97.50 +596593.98 5678542.25 98.75 +596594.30 5680972.50 97.50 +596594.58 5682223.83 100.00 +596594.95 5680678.70 100.00 +596595.00 5681466.90 98.75 +596595.47 5682814.61 100.00 +596595.70 5679248.88 98.75 +596595.78 5680708.36 100.00 +596595.93 5679660.57 100.00 +596596.00 5680584.66 100.00 +596596.17 5681509.22 98.75 +596596.63 5682023.89 98.75 +596596.69 5680715.33 100.00 +596596.79 5682446.01 101.25 +596597.23 5682509.49 101.25 +596597.28 5678766.70 98.75 +596597.52 5681187.13 98.75 +596597.88 5678932.52 98.75 +596597.94 5682035.87 98.50 +596598.07 5682050.11 98.75 +596598.68 5677777.78 101.25 +596598.74 5679857.79 100.00 +596599.60 5683174.92 98.75 +596599.92 5682345.18 101.25 +596600.19 5681309.75 98.75 +596600.28 5682335.55 101.25 +596600.33 5678445.01 100.00 +596600.73 5680896.43 97.50 +596601.12 5683196.12 98.75 +596601.32 5681038.41 97.00 +596601.36 5681248.38 98.75 +596601.43 5681030.95 97.50 +596601.55 5680686.07 100.00 +596601.99 5682354.96 101.25 +596602.58 5680966.90 97.50 +596602.96 5681850.09 98.75 +596603.03 5681461.48 98.75 +596603.18 5681194.68 98.75 +596603.29 5681048.12 97.50 +596603.41 5682228.50 100.00 +596603.55 5681627.43 98.75 +596603.66 5679849.41 100.00 +596603.89 5678540.97 98.75 +596604.11 5682809.58 100.00 +596604.68 5682327.03 101.25 +596604.99 5680981.16 97.50 +596605.26 5680581.16 100.00 +596605.39 5682028.08 98.75 +596605.39 5679251.30 98.75 +596605.52 5677785.05 101.25 +596605.60 5679658.13 100.00 +596605.87 5682514.50 101.25 +596605.88 5681506.84 98.75 +596605.93 5679839.73 100.00 +596606.13 5681204.23 98.75 +596606.78 5682445.66 101.25 +596607.08 5678764.78 98.75 +596607.27 5682052.92 98.75 +596607.30 5679829.84 100.00 +596607.44 5678929.65 98.75 +596607.49 5683181.07 98.75 +596608.14 5680987.72 97.50 +596608.16 5680693.43 100.00 +596608.32 5683203.05 98.75 +596608.38 5682362.63 101.25 +596608.63 5679819.95 100.00 +596608.68 5680972.69 97.50 +596609.70 5681454.05 98.75 +596609.73 5681035.68 97.00 +596610.07 5678443.05 100.00 +596610.13 5681308.67 98.75 +596610.13 5680960.38 97.50 +596610.46 5680898.71 97.50 +596610.74 5679810.29 100.00 +596610.95 5681028.37 97.50 +596611.02 5677793.29 101.25 +596611.26 5681249.75 98.75 +596612.51 5681044.60 97.50 +596612.88 5682231.54 100.00 +596612.90 5681624.32 98.75 +596612.95 5681850.15 98.75 +596613.06 5682805.16 100.00 +596613.63 5682033.24 98.75 +596613.67 5682323.18 101.25 +596613.75 5680964.98 97.50 +596613.83 5678540.86 98.75 +596614.52 5680577.67 100.00 +596614.77 5680700.80 100.00 +596614.84 5682370.27 101.25 +596615.05 5681208.39 98.75 +596615.12 5683187.51 98.75 +596615.20 5679253.02 98.75 +596615.21 5679655.46 100.00 +596615.30 5681503.77 98.75 +596615.40 5682517.50 101.25 +596615.53 5683209.97 98.75 +596615.61 5677802.16 101.25 +596615.67 5680973.33 97.25 +596615.85 5679801.98 100.00 +596616.38 5681446.61 98.75 +596616.67 5680985.08 97.50 +596616.77 5682445.30 101.25 +596616.93 5678763.19 98.75 +596616.98 5682052.37 98.75 +596617.00 5678926.74 98.75 +596617.42 5680953.54 97.50 +596617.53 5677811.94 101.25 +596618.21 5681033.14 97.00 +596619.58 5678440.31 100.00 +596620.05 5681309.55 98.75 +596620.34 5680899.80 97.50 +596620.62 5681026.35 97.50 +596620.78 5677821.31 101.25 +596620.99 5682378.14 101.25 +596621.04 5680959.45 97.50 +596621.14 5681618.67 98.75 +596621.16 5681251.12 98.75 +596621.62 5681040.80 97.50 +596621.80 5682038.51 98.75 +596622.05 5682800.80 100.00 +596622.60 5682233.00 100.00 +596622.69 5683194.03 98.75 +596622.73 5683216.90 98.75 +596622.89 5681849.56 98.75 +596622.95 5680695.23 100.00 +596623.16 5680978.44 97.50 +596623.34 5681439.43 98.75 +596623.67 5682323.41 101.25 +596623.79 5678541.56 98.75 +596623.83 5681498.55 98.75 +596623.84 5680574.36 100.00 +596623.92 5679796.12 100.00 +596624.02 5682046.42 98.75 +596624.58 5681211.05 98.75 +596624.69 5680946.68 97.50 +596624.73 5679652.44 100.00 +596624.93 5682520.49 101.25 +596625.15 5679253.87 98.75 +596626.24 5677829.47 101.25 +596626.55 5678923.83 98.75 +596626.75 5682445.78 101.25 +596626.80 5682386.28 101.25 +596626.81 5681031.40 97.00 +596626.89 5678762.34 98.75 +596627.46 5681610.98 98.75 +596627.63 5680970.53 97.50 +596628.21 5680961.35 97.50 +596628.72 5678436.40 100.00 +596629.94 5683223.82 98.75 +596629.98 5681310.74 98.75 +596630.26 5683200.56 98.75 +596630.30 5681432.26 98.75 +596630.33 5680899.94 97.50 +596630.39 5681025.09 97.50 +596631.06 5681252.49 98.75 +596631.09 5681038.75 97.50 +596631.13 5680689.67 100.00 +596631.20 5682796.81 100.00 +596631.63 5680939.48 97.50 +596632.36 5681493.34 98.75 +596632.53 5682394.48 101.25 +596632.53 5682231.99 100.00 +596632.69 5681847.59 98.75 +596632.90 5677836.88 101.25 +596633.08 5679792.65 100.00 +596633.22 5680571.23 100.00 +596633.57 5682324.41 101.25 +596633.71 5678542.74 98.75 +596634.20 5679649.30 100.00 +596634.50 5681212.27 98.75 +596634.54 5682523.12 101.25 +596635.11 5679254.72 98.75 +596635.66 5681031.40 97.00 +596636.11 5678921.05 98.75 +596636.64 5678760.20 98.75 +596636.68 5681424.64 98.75 +596636.71 5682446.64 101.25 +596637.05 5681611.65 98.75 +596637.19 5683230.70 98.75 +596637.34 5683207.61 98.75 +596637.59 5678432.03 100.00 +596638.27 5677845.24 101.25 +596639.17 5682401.76 101.25 +596639.50 5681313.56 98.75 +596639.61 5680933.72 97.50 +596640.22 5680685.78 100.00 +596640.23 5681024.27 97.50 +596640.33 5680900.08 97.50 +596640.55 5682793.31 100.00 +596640.85 5681039.44 97.50 +596640.92 5681254.14 98.75 +596641.36 5681489.02 98.75 +596641.65 5681843.57 98.75 +596641.76 5681416.04 98.75 +596641.93 5682228.74 100.00 +596642.13 5681619.13 98.75 +596642.27 5681628.99 98.75 +596642.61 5680568.11 100.00 +596642.62 5677854.24 101.25 +596642.74 5679790.20 100.00 +596643.31 5682326.65 101.25 +596643.50 5679645.70 100.00 +596643.59 5678544.15 98.75 +596643.90 5681072.32 97.50 +596644.37 5681032.61 97.00 +596644.42 5683214.66 98.75 +596644.42 5681213.50 98.75 +596644.43 5683237.59 98.75 +596644.46 5682524.34 101.25 +596644.77 5681062.67 97.50 +596644.95 5681638.62 98.75 +596645.06 5679255.57 98.75 +596645.55 5678426.07 100.00 +596645.73 5678923.74 98.75 +596646.37 5678757.97 98.75 +596646.65 5682447.75 101.25 +596646.84 5681081.39 97.50 +596646.85 5681407.43 98.75 +596646.99 5681648.39 98.75 +596647.39 5682407.44 101.25 +596648.44 5681053.50 97.50 +596648.46 5681658.27 98.75 +596648.59 5680929.34 97.50 +596648.62 5681044.12 97.50 +596648.71 5677861.97 101.25 +596648.88 5681317.02 98.75 +596649.51 5680682.39 100.00 +596649.91 5682789.81 100.00 +596649.91 5681668.16 98.75 +596650.07 5681023.45 97.50 +596650.31 5680900.59 97.50 +596650.40 5681484.75 98.75 +596650.75 5681255.95 98.75 +596651.07 5681840.34 98.75 +596651.21 5681678.07 98.75 +596651.33 5682225.43 100.00 +596651.51 5683221.71 98.75 +596651.74 5683244.40 98.75 +596652.04 5679786.57 100.00 +596652.12 5681398.99 98.75 +596652.38 5680566.56 100.00 +596652.50 5681687.98 98.75 +596652.63 5681074.36 97.00 +596652.63 5679641.72 100.00 +596652.98 5681034.68 97.00 +596653.05 5681086.87 97.50 +596653.06 5682328.90 101.25 +596653.48 5678545.56 98.75 +596653.53 5678420.15 100.00 +596653.94 5681216.35 98.75 +596653.98 5681064.73 97.00 +596654.39 5682525.39 101.25 +596654.87 5681697.56 98.75 +596654.96 5679256.83 98.75 +596655.20 5678926.89 98.75 +596655.32 5681055.10 97.00 +596655.62 5682413.13 101.25 +596655.93 5677868.88 101.25 +596656.23 5678756.56 98.75 +596656.58 5682448.92 101.25 +596657.53 5682057.93 98.75 +596658.05 5681045.82 97.00 +596658.21 5680927.04 97.50 +596658.65 5683228.70 98.75 +596658.70 5681318.85 98.75 +596658.85 5680679.13 100.00 +596658.97 5682785.77 100.00 +596659.14 5681080.52 97.50 +596659.44 5683250.76 98.75 +596659.81 5681021.89 97.50 +596660.01 5682048.24 98.75 +596660.06 5681392.92 98.75 +596660.14 5681482.59 98.75 +596660.21 5680900.02 97.50 +596660.56 5682067.23 98.75 +596660.62 5681256.50 98.75 +596660.82 5681838.36 98.75 +596661.09 5681703.79 98.75 +596661.10 5681070.87 97.50 +596661.15 5682223.64 100.00 +596661.33 5679782.95 100.00 +596661.40 5679636.95 100.00 +596661.58 5681036.76 97.00 +596661.80 5678414.63 100.00 +596662.04 5681061.04 97.50 +596662.12 5682332.83 101.25 +596662.14 5680564.90 100.00 +596662.39 5682038.54 98.75 +596663.26 5681219.94 98.75 +596663.30 5677875.58 101.25 +596663.41 5678546.34 98.75 +596664.35 5682526.19 101.25 +596664.55 5679259.50 98.75 +596664.56 5678930.37 98.75 +596664.98 5682415.73 101.25 +596665.31 5682076.02 98.75 +596665.79 5683235.69 98.75 +596666.20 5678755.97 98.75 +596666.34 5681052.59 97.50 +596666.51 5682450.09 101.25 +596666.91 5682779.70 100.00 +596667.15 5683257.13 98.75 +596668.01 5681386.86 98.75 +596668.03 5682030.29 98.75 +596668.13 5680926.18 97.50 +596668.26 5680676.11 100.00 +596668.53 5681320.68 98.75 +596669.23 5683214.41 100.00 +596669.25 5681479.10 98.75 +596669.51 5681020.03 97.50 +596670.03 5682084.83 98.75 +596670.04 5680898.21 97.50 +596670.16 5679632.17 100.00 +596670.32 5683205.37 100.00 +596670.46 5682338.31 101.25 +596670.56 5681255.43 98.75 +596670.74 5679779.60 100.00 +596670.76 5681837.32 98.75 +596670.77 5681034.36 97.00 +596670.82 5678410.67 100.00 +596670.97 5682221.85 100.00 +596671.06 5681703.63 98.75 +596671.57 5678937.40 98.75 +596671.67 5681225.28 98.75 +596671.77 5677880.88 101.25 +596671.88 5680563.18 100.00 +596672.57 5681044.93 97.50 +596673.24 5683242.25 98.75 +596673.40 5678546.24 98.75 +596673.63 5683222.18 100.00 +596673.66 5680835.21 97.50 +596674.01 5679262.70 98.75 +596674.21 5682093.91 98.75 +596674.31 5682526.51 101.25 +596674.85 5682773.64 100.00 +596674.93 5682416.72 101.25 +596675.77 5683262.14 98.75 +596675.98 5682453.28 101.25 +596676.11 5682024.40 98.75 +596676.17 5678755.38 98.75 +596676.37 5681381.47 98.75 +596677.16 5681472.99 98.75 +596677.58 5682103.24 98.75 +596677.94 5680674.08 100.00 +596678.09 5680926.91 97.50 +596678.24 5681249.49 98.75 +596678.28 5682344.55 101.25 +596678.35 5681322.47 98.75 +596678.42 5678944.67 98.75 +596678.89 5679627.34 100.00 +596678.93 5682142.84 98.75 +596678.94 5683200.85 100.00 +596679.21 5681018.18 97.50 +596679.48 5682113.05 98.75 +596679.50 5682152.80 98.75 +596679.72 5682132.88 98.75 +596679.89 5680896.56 97.50 +596679.92 5681230.93 98.75 +596679.97 5681031.95 97.00 +596680.16 5679776.31 100.00 +596680.23 5682162.77 98.75 +596680.31 5677886.03 101.25 +596680.34 5678407.87 100.00 +596680.51 5681839.23 98.75 +596680.52 5682122.91 98.75 +596680.53 5681701.30 98.75 +596680.79 5682220.05 100.00 +596681.23 5683228.37 100.00 +596681.27 5682766.22 100.00 +596681.34 5681240.57 98.75 +596681.62 5680561.46 100.00 +596682.10 5681042.56 97.50 +596682.12 5682172.56 98.75 +596682.27 5683246.51 98.75 +596682.47 5680830.49 97.50 +596683.39 5678546.13 98.75 +596683.44 5679265.99 98.75 +596684.19 5682018.52 98.75 +596684.27 5682525.80 101.25 +596684.30 5681466.09 98.75 +596684.41 5682182.28 98.75 +596684.89 5682417.64 101.25 +596685.06 5683265.43 98.75 +596685.27 5678951.94 98.75 +596685.35 5681377.08 98.75 +596685.43 5682456.55 101.25 +596685.99 5682350.91 101.25 +596686.15 5678755.13 98.75 +596686.40 5682757.65 100.00 +596686.95 5681693.64 98.75 +596687.27 5679621.92 100.00 +596687.63 5680672.04 100.00 +596687.94 5681319.63 98.75 +596688.05 5680927.73 97.50 +596688.65 5683199.63 100.00 +596689.00 5681016.94 97.50 +596689.18 5681029.66 97.00 +596689.25 5683233.98 100.00 +596689.74 5679774.26 100.00 +596689.79 5677889.19 101.25 +596689.85 5681842.36 98.75 +596689.87 5680896.97 97.50 +596690.09 5678960.59 98.75 +596690.16 5678406.31 100.00 +596690.29 5681458.12 98.75 +596690.46 5682190.18 98.75 +596690.66 5682218.86 100.00 +596691.31 5683250.78 98.75 +596691.33 5680832.61 97.50 +596691.41 5680560.00 100.00 +596691.53 5682749.08 100.00 +596691.71 5681040.30 97.50 +596692.86 5679269.33 98.75 +596692.96 5681685.68 98.75 +596693.33 5682014.49 98.75 +596693.38 5678546.15 98.75 +596693.67 5682357.31 101.25 +596694.24 5682525.09 101.25 +596694.31 5681372.66 98.75 +596694.39 5678969.61 98.75 +596694.85 5682418.56 101.25 +596694.88 5682459.82 101.25 +596694.91 5683267.15 98.75 +596695.04 5681449.33 98.75 +596695.64 5679616.48 100.00 +596696.14 5678755.13 98.75 +596697.32 5680670.06 100.00 +596697.43 5682197.11 98.75 +596697.52 5681316.79 98.75 +596697.81 5681848.39 98.75 +596697.92 5680929.31 97.50 +596697.97 5683217.50 100.50 +596698.04 5680839.41 97.50 +596698.15 5681677.14 98.75 +596698.34 5683199.67 100.00 +596698.51 5681027.84 97.00 +596698.56 5682741.98 100.00 +596698.69 5678978.62 98.75 +596698.80 5681015.75 97.50 +596698.94 5680895.93 97.50 +596699.01 5683234.82 100.00 +596699.27 5677892.35 101.25 +596699.51 5678403.03 100.00 +596699.68 5679775.09 100.00 +596700.64 5682219.09 100.00 +596700.65 5681441.10 98.75 +596700.90 5683253.43 98.75 +596701.22 5680558.72 100.00 +596701.32 5681038.03 97.50 +596701.36 5682363.72 101.25 +596702.14 5680848.48 97.50 +596702.45 5679271.71 98.75 +596702.50 5682010.51 98.75 +596702.82 5678987.72 98.75 +596702.88 5680886.74 97.50 +596703.16 5681368.00 98.75 +596703.35 5681668.60 98.75 +596703.36 5678546.21 98.75 +596703.97 5679610.99 100.00 +596704.21 5682524.48 101.25 +596704.62 5681855.71 98.75 +596704.66 5682461.51 101.25 +596704.78 5683268.63 98.75 +596704.84 5682418.98 101.25 +596705.06 5680858.04 97.50 +596705.58 5682734.87 100.00 +596705.78 5680877.18 97.50 +596706.12 5678755.12 98.75 +596706.32 5682201.65 98.75 +596706.83 5678996.87 98.75 +596707.04 5680668.21 100.00 +596707.06 5681433.48 98.75 +596707.31 5681314.78 98.75 +596707.79 5680930.90 97.50 +596707.84 5681026.03 97.00 +596707.98 5680867.60 97.50 +596707.98 5683201.38 100.00 +596708.60 5681014.56 97.50 +596708.73 5683235.42 100.00 +596708.76 5678399.40 100.00 +596708.96 5679777.64 100.00 +596709.12 5682370.02 101.25 +596709.16 5677893.68 101.25 +596709.56 5681660.88 98.75 +596710.42 5682220.81 100.00 +596710.53 5679006.11 98.75 +596710.70 5683255.26 98.75 +596710.93 5681035.77 97.50 +596711.05 5680557.69 100.00 +596711.42 5682006.02 98.75 +596711.86 5681862.50 98.75 +596711.99 5681363.34 98.75 +596712.30 5679605.50 100.00 +596712.43 5679271.94 98.75 +596712.46 5679015.91 98.75 +596712.58 5682727.75 100.00 +596713.27 5681916.75 98.75 +596713.35 5678546.43 98.75 +596713.75 5681908.05 98.75 +596714.20 5682524.48 101.25 +596714.37 5681925.58 98.75 +596714.39 5679025.71 98.75 +596714.63 5682462.32 101.25 +596714.76 5683268.96 98.75 +596714.83 5682419.41 101.25 +596715.17 5681427.63 98.75 +596715.66 5682205.20 98.75 +596716.11 5678755.12 98.75 +596716.32 5679035.51 98.75 +596716.71 5681315.53 98.75 +596716.76 5680666.36 100.00 +596716.79 5681653.98 98.75 +596716.86 5679783.74 100.00 +596717.00 5682376.17 101.25 +596717.08 5681023.97 97.00 +596717.41 5680933.58 97.50 +596717.61 5683203.15 100.00 +596717.77 5683231.65 100.00 +596717.80 5678395.27 100.00 +596718.00 5681011.58 97.50 +596718.22 5681998.87 98.75 +596718.25 5679045.31 98.75 +596718.84 5681901.24 98.75 +596718.89 5682945.75 100.00 +596719.08 5677894.90 101.25 +596719.21 5682720.27 100.00 +596719.78 5681357.07 98.75 +596719.86 5682223.98 100.00 +596720.36 5681915.52 98.50 +596720.48 5681033.31 97.50 +596720.69 5683255.48 98.75 +596720.94 5680557.64 100.00 +596721.00 5681865.64 98.75 +596721.16 5679601.12 100.00 +596721.34 5679054.81 98.75 +596721.69 5682937.43 100.00 +596722.24 5679270.10 98.75 +596722.45 5681927.46 98.75 +596723.33 5678546.65 98.75 +596723.58 5681422.31 98.75 +596723.61 5679791.07 100.00 +596724.00 5681647.06 98.75 +596724.19 5682524.49 101.25 +596724.43 5679064.31 98.75 +596724.53 5681991.12 98.75 +596724.60 5682463.14 101.25 +596724.73 5682953.11 100.00 +596724.75 5683269.28 98.75 +596724.80 5682420.08 101.25 +596724.89 5682382.32 101.25 +596724.94 5682208.92 98.75 +596725.05 5681321.00 98.75 +596725.66 5681019.87 97.00 +596725.81 5681349.77 98.75 +596725.81 5682712.78 100.00 +596726.08 5678755.71 98.75 +596726.47 5683227.17 100.00 +596726.48 5680664.50 100.00 +596726.50 5683207.25 100.00 +596726.79 5678391.03 100.00 +596726.85 5681904.98 98.75 +596726.92 5680931.26 97.50 +596727.36 5681008.44 97.50 +596727.50 5681339.92 98.75 +596727.88 5681637.85 98.75 +596727.91 5681330.06 98.75 +596728.91 5679073.13 98.75 +596728.96 5677893.86 101.25 +596729.04 5681921.77 98.75 +596729.06 5682227.81 100.00 +596729.15 5681485.04 98.75 +596729.83 5681030.11 97.50 +596729.96 5681982.72 98.75 +596730.23 5681912.94 98.75 +596730.26 5679798.52 100.00 +596730.40 5682932.88 100.00 +596730.60 5683256.51 98.75 +596730.68 5679598.10 100.00 +596730.83 5680557.71 100.00 +596730.99 5681865.87 98.75 +596731.30 5682704.43 100.00 +596731.42 5681494.78 98.75 +596731.63 5679266.77 98.75 +596731.96 5678550.87 98.75 +596732.12 5681628.81 98.75 +596732.83 5681419.31 98.75 +596733.11 5682387.95 101.25 +596733.96 5683220.97 100.00 +596734.04 5682212.98 98.75 +596734.17 5682524.59 101.25 +596734.23 5682955.85 100.00 +596734.23 5681015.78 97.00 +596734.30 5682422.99 101.25 +596734.47 5679081.43 98.75 +596734.56 5682463.95 101.25 +596734.74 5683269.61 98.75 +596735.05 5683211.56 100.00 +596735.34 5681503.96 98.75 +596735.38 5681974.32 98.75 +596735.62 5678386.48 100.00 +596735.85 5680661.38 100.00 +596735.85 5679806.63 100.00 +596735.86 5681003.41 97.50 +596736.03 5678756.50 98.75 +596736.34 5678633.44 98.75 +596736.42 5680928.17 97.50 +596736.47 5678643.42 98.75 +596736.68 5678653.41 98.75 +596736.84 5681479.34 98.75 +596736.86 5681620.01 98.75 +596737.04 5682696.26 100.00 +596737.28 5682233.47 100.00 +596737.87 5678623.57 98.75 +596738.83 5677892.34 101.25 +596738.85 5679259.87 98.75 +596739.17 5681026.92 97.50 +596739.42 5681513.08 98.75 +596739.53 5678613.72 98.75 +596739.74 5682929.98 100.00 +596739.89 5679815.73 100.00 +596739.95 5681522.92 98.75 +596740.00 5678556.79 98.75 +596740.03 5679089.73 98.75 +596740.30 5679595.77 100.00 +596740.46 5683258.18 98.75 +596740.64 5680558.97 100.00 +596740.71 5681965.87 98.75 +596740.92 5681864.71 98.75 +596741.48 5681532.71 98.75 +596741.67 5678603.97 98.75 +596741.90 5679250.64 98.75 +596741.95 5682392.63 101.25 +596742.41 5681010.95 97.00 +596742.47 5682218.34 98.75 +596742.49 5681611.80 98.75 +596742.69 5681420.99 98.75 +596743.01 5679240.74 98.75 +596743.03 5678660.86 98.75 +596743.30 5682688.48 100.00 +596743.34 5682427.14 101.25 +596743.43 5679230.76 98.75 +596743.59 5682959.03 100.00 +596743.92 5683273.10 98.75 +596743.95 5678594.24 98.75 +596743.98 5678381.11 100.00 +596744.01 5680997.85 97.50 +596744.16 5682524.82 101.25 +596744.45 5679221.05 98.75 +596744.48 5682465.16 101.25 +596745.04 5678564.91 98.75 +596745.15 5680658.02 100.00 +596745.16 5679098.25 98.75 +596745.19 5680923.39 97.50 +596745.50 5681541.71 98.75 +596745.51 5682239.13 100.00 +596745.79 5678584.45 98.75 +596745.92 5679823.68 100.00 +596745.99 5678757.30 98.75 +596746.01 5681957.39 98.75 +596746.64 5681480.94 98.75 +596746.88 5678574.52 98.75 +596747.63 5678668.90 98.75 +596748.51 5681023.73 97.50 +596748.63 5677893.60 101.25 +596748.74 5681604.00 98.75 +596748.97 5679107.48 98.75 +596749.21 5683262.85 98.75 +596749.40 5679212.38 98.75 +596749.48 5682929.09 100.00 +596749.72 5682680.87 100.00 +596750.21 5681867.58 98.75 +596750.28 5679595.61 100.00 +596750.45 5680560.23 100.00 +596750.56 5681006.06 97.00 +596750.74 5682223.94 98.75 +596750.95 5681426.18 98.75 +596750.96 5682396.97 101.25 +596751.04 5681550.03 98.75 +596751.42 5681949.00 98.75 +596751.48 5677745.09 101.25 +596751.76 5682432.54 101.25 +596751.95 5679831.63 100.00 +596752.03 5680992.09 97.50 +596752.34 5678375.73 100.00 +596752.47 5677735.66 101.25 +596752.79 5679116.72 98.75 +596752.82 5683277.63 98.75 +596752.95 5682962.21 100.00 +596753.60 5682244.97 100.00 +596753.61 5679203.32 98.75 +596753.72 5682527.59 101.25 +596754.16 5681595.65 98.75 +596754.28 5680919.39 97.50 +596754.37 5682466.64 101.25 +596754.46 5680654.66 100.00 +596754.69 5677754.55 101.25 +596755.21 5681485.29 98.75 +596755.78 5680928.55 97.50 +596755.79 5678756.20 98.75 +596756.11 5678674.18 98.75 +596756.58 5681558.35 98.75 +596756.60 5679125.95 98.75 +596756.66 5681018.26 97.50 +596756.67 5680938.50 97.50 +596757.14 5677727.41 101.25 +596757.42 5680948.47 97.50 +596757.58 5681941.12 98.75 +596757.81 5679194.26 98.75 +596757.81 5683267.94 98.75 +596758.06 5677896.72 101.25 +596758.10 5680958.44 97.50 +596758.11 5682675.45 100.00 +596758.17 5679839.40 100.00 +596758.17 5680984.36 97.50 +596758.55 5682230.18 98.75 +596758.70 5681001.17 97.00 +596758.83 5681586.82 98.75 +596759.13 5681431.91 98.75 +596759.15 5682931.18 100.00 +596759.32 5681871.70 98.75 +596759.32 5679135.53 98.75 +596759.66 5680968.26 97.50 +596759.80 5679598.02 100.00 +596759.81 5680563.32 100.00 +596759.93 5683284.46 98.75 +596759.97 5682401.30 101.25 +596760.23 5682437.85 101.25 +596760.39 5677762.71 101.25 +596760.40 5681567.34 98.75 +596760.50 5681493.66 98.75 +596761.04 5678370.95 100.00 +596761.18 5682251.46 100.00 +596761.26 5681577.22 98.75 +596761.38 5679185.03 98.75 +596761.55 5679145.26 98.75 +596762.26 5679175.08 98.75 +596762.69 5679155.13 98.75 +596762.78 5679165.11 98.75 +596762.82 5682962.81 100.00 +596763.15 5681503.30 98.75 +596763.24 5682530.63 101.25 +596763.73 5681933.25 98.75 +596763.77 5680651.30 100.00 +596764.26 5682468.12 101.25 +596764.32 5680976.63 97.50 +596764.45 5678679.67 98.75 +596764.58 5681012.37 97.50 +596765.47 5678753.75 98.75 +596766.05 5677722.89 101.25 +596766.05 5679845.52 100.00 +596766.35 5682236.42 98.75 +596766.45 5683292.03 98.75 +596766.60 5682670.37 100.00 +596766.65 5683272.50 98.75 +596766.69 5681878.45 98.75 +596767.13 5677900.90 101.25 +596767.29 5681512.35 98.75 +596767.36 5681437.57 98.75 +596767.71 5682258.98 100.00 +596768.41 5682406.57 101.25 +596768.43 5677768.39 101.25 +596768.94 5682932.18 100.00 +596769.02 5681924.81 98.75 +596769.04 5680566.87 100.00 +596769.12 5682442.43 101.25 +596769.12 5679601.59 100.00 +596769.96 5678366.57 100.00 +596770.78 5680983.70 97.50 +596771.46 5681005.30 97.50 +596772.16 5680646.13 100.00 +596772.31 5681886.68 98.75 +596772.42 5682534.54 101.25 +596772.58 5678685.46 98.75 +596772.61 5682963.97 100.00 +596772.89 5683299.67 98.75 +596773.01 5681520.37 98.75 +596773.70 5681915.98 98.75 +596774.02 5682266.72 100.00 +596774.08 5679851.36 100.00 +596774.11 5681906.03 98.75 +596774.16 5682242.66 98.75 +596774.26 5682467.98 101.25 +596774.33 5681896.04 98.75 +596774.34 5680849.51 100.00 +596774.34 5680859.28 100.00 +596774.62 5679957.98 100.00 +596774.97 5681444.05 98.75 +596775.01 5680868.87 100.00 +596775.14 5678751.27 98.75 +596775.27 5677719.30 101.25 +596775.87 5679948.08 100.00 +596776.16 5683275.59 98.75 +596776.16 5677905.19 101.25 +596776.40 5682412.59 101.25 +596776.59 5682670.59 100.00 +596777.13 5680840.24 100.00 +596777.17 5680997.54 97.50 +596777.28 5677773.01 101.25 +596777.46 5679607.04 100.00 +596777.79 5680571.49 100.00 +596778.00 5682447.01 101.25 +596778.35 5683307.97 98.75 +596778.49 5679966.57 100.00 +596778.76 5679938.66 100.00 +596778.82 5682932.40 100.00 +596779.16 5678362.82 100.00 +596779.41 5680987.92 97.50 +596779.50 5680909.64 97.50 +596779.68 5678692.39 98.75 +596779.84 5680877.37 100.00 +596780.07 5680919.08 97.50 +596780.23 5682274.53 100.00 +596780.38 5680640.62 100.00 +596780.52 5680831.08 100.00 +596780.57 5680928.53 97.50 +596780.67 5681526.76 98.75 +596780.81 5680947.82 97.50 +596780.91 5680937.99 97.50 +596781.88 5682536.53 101.25 +596782.02 5682248.82 98.75 +596782.31 5682965.88 100.00 +596782.32 5680903.35 97.50 +596782.60 5680957.37 97.50 +596782.86 5683316.89 98.75 +596782.92 5681450.10 98.75 +596783.56 5679854.49 100.00 +596783.82 5679930.24 100.00 +596783.86 5682419.24 101.25 +596783.90 5680821.91 100.00 +596784.03 5678746.71 98.75 +596784.20 5682467.08 101.25 +596784.35 5679974.65 100.00 +596784.45 5678701.16 98.75 +596784.94 5677909.85 101.25 +596784.98 5680885.49 100.00 +596785.09 5677717.44 101.25 +596785.43 5683279.05 98.75 +596785.69 5682453.14 101.25 +596785.76 5679612.58 100.00 +596786.31 5680576.48 100.00 +596786.38 5677777.13 101.25 +596786.57 5682670.82 100.00 +596786.86 5682281.95 100.00 +596787.01 5680633.35 100.00 +596787.25 5680930.95 97.50 +596787.65 5683325.63 98.75 +596788.44 5678359.26 100.00 +596788.60 5682931.02 100.00 +596788.86 5681532.50 98.75 +596788.94 5680964.42 97.50 +596788.99 5680987.94 97.50 +596789.26 5678709.91 98.75 +596789.90 5682254.97 98.75 +596790.65 5682461.62 101.25 +596790.73 5680814.92 100.00 +596791.04 5681455.93 98.75 +596791.41 5682425.79 101.25 +596791.43 5679923.78 100.00 +596791.64 5680901.95 97.50 +596791.80 5682968.59 100.00 +596791.83 5682535.65 101.25 +596792.55 5683286.06 98.75 +596792.57 5677916.31 101.25 +596792.92 5678742.16 98.75 +596793.03 5679857.63 100.00 +596793.36 5680625.76 100.00 +596793.65 5683333.63 98.75 +596793.65 5679976.78 100.00 +596794.10 5680888.99 100.00 +596794.13 5679618.00 100.00 +596794.17 5680582.48 100.00 +596794.44 5682288.44 100.00 +596794.58 5681173.74 97.50 +596795.04 5677717.53 101.25 +596795.24 5678717.92 98.75 +596795.25 5680914.89 97.25 +596795.49 5677781.24 101.25 +596795.58 5680926.66 97.50 +596796.32 5682668.83 100.00 +596797.55 5680807.93 100.00 +596797.66 5678355.56 100.00 +596797.91 5680968.21 97.50 +596798.26 5681531.25 98.75 +596798.40 5682929.87 100.00 +596798.57 5680988.14 97.50 +596798.59 5682259.90 98.75 +596798.86 5679917.17 100.00 +596799.02 5680617.68 100.00 +596799.16 5681461.75 98.75 +596799.29 5682431.95 101.25 +596799.42 5683293.31 98.75 +596800.04 5678735.55 98.75 +596800.04 5680590.18 100.00 +596800.22 5678726.40 98.75 +596800.85 5679863.66 100.00 +596800.91 5677921.50 101.25 +596800.92 5681166.63 97.50 +596801.10 5680901.95 97.50 +596801.18 5682971.73 100.00 +596801.23 5681834.83 97.50 +596801.79 5682535.07 101.25 +596801.87 5682295.10 100.00 +596802.81 5683337.46 98.75 +596802.83 5679962.58 100.15 +596803.02 5680599.46 100.00 +596803.09 5681826.51 97.50 +596803.21 5679622.14 100.00 +596803.55 5679976.83 100.00 +596803.59 5680887.11 100.00 +596804.01 5679908.62 100.00 +596804.09 5680609.18 100.00 +596804.35 5677785.81 101.25 +596804.48 5680923.85 97.50 +596804.58 5680801.15 100.00 +596805.01 5677718.06 101.25 +596805.84 5682665.94 100.00 +596806.39 5683300.43 98.75 +596806.70 5678351.42 100.00 +596806.72 5679871.41 100.00 +596806.98 5681467.92 98.75 +596807.16 5682438.11 101.25 +596807.33 5682264.74 98.75 +596807.36 5681527.34 98.75 +596807.49 5680969.80 97.50 +596807.84 5681842.13 97.50 +596808.11 5680988.56 97.50 +596808.17 5681160.69 97.50 +596808.29 5682930.09 100.00 +596808.83 5679899.93 100.00 +596809.80 5682300.75 100.00 +596810.19 5679880.75 100.00 +596810.24 5680904.28 97.50 +596810.38 5677924.70 101.25 +596810.55 5682974.86 100.00 +596810.95 5682953.40 100.50 +596811.74 5680794.50 100.00 +596811.78 5682535.30 101.25 +596811.79 5679890.40 100.00 +596812.11 5683341.13 98.75 +596812.35 5679626.13 100.00 +596812.45 5681825.66 97.50 +596812.95 5677790.89 101.25 +596813.10 5680884.89 100.00 +596813.43 5679975.41 100.00 +596813.65 5681475.36 98.75 +596813.74 5680922.35 97.50 +596813.77 5680832.26 100.50 +596814.20 5683306.67 98.75 +596814.79 5682661.51 100.00 +596814.99 5677718.54 101.25 +596815.37 5681848.71 97.50 +596815.40 5681521.67 98.75 +596815.74 5678347.28 100.00 +596816.14 5682442.42 101.25 +596816.59 5682268.15 98.75 +596816.61 5681156.28 97.50 +596817.31 5680991.23 97.50 +596817.33 5680969.80 97.50 +596818.00 5682931.50 100.00 +596818.07 5680908.48 97.50 +596818.89 5681483.79 98.75 +596819.45 5680788.78 100.00 +596819.47 5680147.18 100.00 +596819.52 5682303.01 100.00 +596819.71 5680156.84 100.00 +596820.17 5677926.38 101.25 +596820.17 5682977.15 100.00 +596820.19 5680878.22 100.00 +596820.39 5680916.93 97.50 +596820.50 5681513.07 98.75 +596821.38 5681493.45 98.75 +596821.55 5677795.98 101.25 +596821.59 5682537.04 101.25 +596821.75 5679629.50 100.00 +596821.90 5681828.15 97.50 +596821.95 5683340.69 98.75 +596821.99 5681503.29 98.75 +596822.05 5679970.44 100.00 +596822.30 5680166.26 100.00 +596822.33 5680137.68 100.00 +596822.98 5683309.14 98.75 +596823.79 5678341.48 100.00 +596824.49 5681852.44 97.50 +596824.52 5682659.59 100.00 +596824.98 5677718.93 101.25 +596825.36 5681152.66 97.50 +596825.40 5680996.14 97.50 +596825.69 5682445.34 101.25 +596826.30 5680128.66 100.00 +596826.41 5682269.95 98.75 +596826.70 5680871.04 100.00 +596826.82 5680971.32 97.50 +596827.53 5682934.13 100.00 +596828.20 5680174.24 100.00 +596828.66 5680785.52 100.00 +596829.45 5682303.37 100.00 +596829.70 5677801.73 101.25 +596829.79 5682979.44 100.00 +596830.11 5677927.37 101.25 +596830.60 5679965.30 100.00 +596830.80 5678334.46 100.00 +596830.86 5681832.57 97.50 +596831.19 5679632.68 100.00 +596831.33 5680862.44 100.00 +596831.38 5682539.06 101.25 +596831.84 5683339.44 98.75 +596831.86 5680120.68 100.00 +596832.49 5683306.42 98.75 +596833.05 5681001.91 97.50 +596834.04 5681855.40 97.50 +596834.09 5680182.22 100.00 +596834.41 5682658.17 100.00 +596834.63 5681150.51 97.50 +596834.92 5677718.59 101.25 +596835.32 5682448.03 101.25 +596835.62 5680975.72 97.50 +596835.96 5680853.84 100.00 +596836.31 5682269.60 98.75 +596836.41 5682938.47 100.00 +596837.19 5678326.95 100.00 +596837.63 5677807.82 101.25 +596837.91 5680782.57 100.00 +596839.19 5679960.21 100.00 +596839.40 5682979.80 100.00 +596839.42 5682303.43 100.00 +596839.75 5677926.57 101.25 +596840.23 5681836.05 97.50 +596840.56 5680115.90 100.00 +596840.57 5681007.83 97.50 +596840.81 5683335.02 98.75 +596840.99 5678317.76 100.00 +596841.00 5679634.50 100.00 +596841.16 5682541.09 101.25 +596841.47 5683302.04 98.75 +596841.49 5680845.80 100.00 +596842.77 5680186.56 100.00 +596843.48 5681858.65 97.50 +596843.56 5681147.34 97.50 +596843.82 5680981.08 97.50 +596844.03 5682452.81 101.25 +596844.33 5682657.18 100.00 +596844.79 5677717.05 101.25 +596844.91 5678308.63 100.00 +596844.99 5682943.30 100.00 +596845.55 5677813.90 101.25 +596846.25 5682268.61 98.75 +596847.24 5680837.90 100.00 +596847.60 5680783.76 100.00 +596847.84 5679955.23 100.00 +596848.35 5681013.42 97.50 +596848.63 5677922.13 101.25 +596848.93 5682977.21 100.00 +596849.25 5680111.12 100.00 +596849.35 5681840.04 97.50 +596849.37 5682304.23 100.00 +596849.45 5678299.79 100.00 +596849.89 5683330.88 98.75 +596850.18 5682545.29 101.25 +596850.52 5683297.81 98.75 +596850.72 5679636.68 100.00 +596851.24 5682459.74 101.25 +596851.67 5680987.02 97.50 +596852.00 5680190.20 100.00 +596852.26 5681143.59 97.50 +596852.31 5680829.58 100.00 +596852.64 5681862.67 97.50 +596852.79 5682949.36 100.00 +596853.48 5677819.99 101.25 +596854.00 5678290.95 100.00 +596854.32 5682657.19 100.00 +596854.59 5677715.16 101.25 +596854.75 5677914.23 101.25 +596855.98 5681019.20 97.50 +596856.03 5682269.09 98.75 +596856.49 5679950.26 100.00 +596856.90 5680820.95 100.00 +596857.09 5680785.31 100.00 +596857.66 5681845.60 97.50 +596857.71 5682973.08 100.00 +596857.94 5680106.34 100.00 +596858.29 5680994.23 97.50 +596858.32 5682466.80 101.25 +596859.08 5682549.82 101.25 +596859.22 5682305.46 100.00 +596859.32 5683327.59 98.75 +596859.69 5682956.16 100.00 +596860.03 5683294.74 98.75 +596860.14 5679639.98 100.00 +596860.59 5678283.60 100.00 +596860.81 5677906.29 101.25 +596860.90 5677826.68 101.25 +596861.43 5681792.99 98.75 +596861.48 5680812.33 100.00 +596861.50 5680192.65 100.00 +596861.63 5681141.83 97.50 +596861.79 5681866.68 97.50 +596862.61 5681783.34 98.75 +596862.83 5680793.21 100.00 +596862.92 5680802.88 100.00 +596863.49 5682965.06 100.00 +596863.99 5681801.67 98.75 +596864.26 5677712.63 101.25 +596864.31 5682657.20 100.00 +596864.74 5681001.51 97.50 +596864.80 5681022.33 97.50 +596864.87 5682273.76 98.75 +596865.13 5679945.26 100.00 +596865.17 5682474.07 101.25 +596865.49 5681190.14 98.75 +596866.47 5679274.21 100.00 +596866.70 5679264.22 100.00 +596866.85 5677898.33 101.25 +596866.89 5680102.09 100.00 +596867.46 5681846.57 97.50 +596867.61 5679254.40 100.00 +596867.61 5678276.56 100.00 +596867.98 5682554.36 101.25 +596868.32 5677833.37 101.25 +596868.43 5682309.31 100.00 +596868.75 5683324.29 98.75 +596869.28 5681198.43 98.75 +596869.55 5679643.29 100.00 +596869.57 5683291.79 98.75 +596870.34 5679283.30 100.00 +596870.75 5681139.56 97.50 +596870.95 5681870.70 97.50 +596871.03 5681778.00 98.75 +596871.25 5681808.50 98.75 +596871.30 5677889.42 101.25 +596871.33 5682481.92 101.25 +596871.39 5680193.36 100.00 +596871.51 5681183.42 98.75 +596872.15 5679245.52 100.00 +596873.64 5682278.53 98.75 +596873.92 5677710.11 101.25 +596874.03 5681004.77 97.50 +596874.13 5679941.13 100.00 +596874.22 5681024.10 97.50 +596874.25 5682657.95 100.00 +596874.33 5677841.31 101.25 +596874.71 5679292.28 100.00 +596875.49 5677880.34 101.25 +596875.97 5680098.09 100.00 +596876.62 5677850.80 101.25 +596876.77 5682314.65 100.00 +596876.99 5682558.65 101.25 +596877.35 5677870.70 101.25 +596877.45 5681846.97 97.50 +596877.77 5677860.73 101.25 +596878.10 5681202.76 98.75 +596878.19 5683321.00 98.75 +596878.19 5681133.61 97.50 +596878.34 5679647.84 100.00 +596878.37 5679237.71 100.00 +596879.09 5682488.22 101.25 +596879.14 5681772.22 98.75 +596879.15 5683288.94 98.75 +596879.93 5681812.27 98.75 +596880.25 5681874.33 97.50 +596881.26 5679299.60 100.00 +596881.29 5680194.07 100.00 +596881.29 5681181.83 98.75 +596881.72 5682284.41 98.75 +596883.16 5677706.31 101.25 +596883.49 5681006.43 97.50 +596883.66 5681025.67 97.50 +596883.76 5679938.52 100.00 +596884.15 5682659.31 100.00 +596884.20 5682321.28 100.00 +596884.58 5679229.89 100.00 +596885.05 5680094.09 100.00 +596885.63 5681127.66 97.50 +596886.16 5682562.64 101.25 +596886.60 5679653.44 100.00 +596887.01 5681766.10 98.75 +596887.27 5681845.22 97.50 +596887.38 5681206.24 98.75 +596887.39 5683317.11 98.75 +596887.78 5682493.16 101.25 +596888.74 5679306.22 100.00 +596888.86 5683286.67 98.75 +596889.47 5679221.20 100.00 +596889.74 5681877.48 97.50 +596889.80 5682290.29 98.75 +596889.83 5681813.26 98.75 +596890.72 5681119.83 97.50 +596891.18 5681182.51 98.75 +596891.20 5680194.32 100.00 +596891.25 5682328.35 100.00 +596892.36 5677702.40 101.25 +596893.04 5681027.60 97.50 +596893.27 5681005.35 97.50 +596893.39 5679935.90 100.00 +596894.04 5682659.41 100.00 +596894.12 5680090.09 100.00 +596894.21 5679212.40 100.00 +596894.39 5679659.60 100.00 +596894.46 5681759.61 98.75 +596894.88 5681111.26 97.50 +596895.32 5682566.62 101.25 +596896.48 5682498.10 101.25 +596896.50 5681210.14 98.75 +596896.70 5679311.96 100.00 +596896.95 5683314.61 98.75 +596897.08 5681843.27 97.50 +596897.87 5682296.18 98.75 +596897.99 5682335.71 100.00 +596898.75 5683285.25 98.75 +596898.95 5679203.61 100.00 +596899.07 5681102.70 97.50 +596899.23 5681880.64 97.50 +596899.50 5681751.01 98.75 +596899.73 5681812.02 98.75 +596901.07 5681183.20 98.75 +596901.12 5680194.55 100.00 +596901.29 5679666.81 100.00 +596901.48 5677698.33 101.25 +596901.60 5681031.51 97.50 +596903.02 5679933.28 100.00 +596903.11 5681005.48 97.50 +596903.20 5680086.09 100.00 +596903.26 5681094.15 97.50 +596903.92 5682657.95 100.00 +596904.10 5679195.06 100.00 +596904.53 5681742.40 98.75 +596904.70 5682569.60 101.25 +596904.98 5681084.78 97.50 +596905.57 5682302.53 98.75 +596905.60 5681214.07 98.75 +596905.67 5682342.01 100.00 +596906.17 5682500.18 101.25 +596906.31 5679314.68 100.00 +596906.85 5681841.22 97.50 +596906.87 5683313.84 98.75 +596906.91 5681075.47 97.50 +596907.38 5679254.16 101.25 +596907.84 5681038.51 97.50 +596908.31 5679262.91 101.25 +596908.35 5679673.86 100.00 +596908.36 5681733.20 98.75 +596908.73 5683285.36 98.75 +596908.81 5681883.47 97.50 +596909.47 5679186.64 100.00 +596909.54 5677692.65 101.25 +596909.57 5681811.50 98.75 +596910.33 5681047.54 97.50 +596910.45 5681066.63 97.50 +596910.73 5681185.21 98.75 +596911.03 5680194.78 100.00 +596911.04 5681057.07 97.50 +596912.16 5680081.84 100.00 +596912.18 5681723.99 98.75 +596912.19 5681008.08 97.50 +596912.26 5679929.51 100.00 +596912.89 5682309.32 98.75 +596913.40 5679246.37 101.25 +596913.70 5682347.94 100.00 +596913.81 5682656.50 100.00 +596913.81 5679177.77 100.00 +596914.69 5682569.83 101.25 +596914.70 5681218.00 98.75 +596915.49 5679680.83 100.00 +596915.92 5679317.40 100.00 +596915.97 5681837.15 97.50 +596916.05 5682501.71 101.25 +596916.25 5683317.28 98.75 +596916.41 5679168.12 100.00 +596916.84 5677685.83 101.25 +596916.94 5679267.70 101.25 +596917.19 5681715.62 98.75 +596917.55 5679079.16 100.00 +596918.45 5681886.12 97.50 +596918.62 5683286.13 98.75 +596918.79 5679069.46 100.00 +596918.84 5679089.06 100.00 +596919.00 5679158.48 100.00 +596919.18 5681814.14 98.75 +596920.14 5679098.96 100.00 +596920.22 5682316.12 98.75 +596920.31 5681187.78 98.75 +596920.34 5681013.59 97.50 +596920.62 5679924.33 100.00 +596920.93 5680195.42 100.00 +596920.93 5679148.72 100.00 +596920.97 5680077.29 100.00 +596921.04 5679240.13 101.25 +596921.43 5679108.86 100.00 +596921.67 5679059.90 100.00 +596921.82 5679138.77 100.00 +596921.90 5681206.89 99.00 +596922.09 5679118.81 100.00 +596922.14 5679128.80 100.00 +596922.82 5679687.60 100.00 +596922.88 5682351.65 100.00 +596923.27 5682653.54 100.00 +596923.79 5681221.95 98.75 +596924.13 5677679.00 101.25 +596924.17 5679050.23 100.00 +596924.19 5681022.22 97.50 +596924.40 5683322.31 98.75 +596924.63 5681708.98 98.75 +596924.67 5682570.05 101.25 +596924.72 5681044.46 97.50 +596925.05 5678657.57 100.00 +596925.53 5679320.12 100.00 +596925.57 5679272.48 101.25 +596925.72 5678667.54 100.00 +596925.90 5682503.43 101.25 +596925.94 5681837.91 97.50 +596926.40 5678677.50 100.00 +596926.67 5679040.56 100.00 +596926.68 5681026.51 97.50 +596927.23 5678648.01 100.00 +596927.24 5683290.91 98.75 +596927.35 5681053.35 97.50 +596927.68 5682322.76 98.75 +596928.12 5679917.74 100.00 +596928.12 5681888.58 97.50 +596928.30 5679233.45 101.25 +596928.34 5678687.26 100.00 +596928.80 5681816.77 98.75 +596929.32 5681191.91 98.75 +596929.40 5679030.97 100.00 +596929.79 5680072.74 100.00 +596930.04 5683330.56 98.75 +596930.24 5679694.28 100.00 +596930.60 5678638.61 100.00 +596930.80 5680196.37 100.00 +596930.87 5678696.92 100.00 +596932.43 5682354.49 100.00 +596932.45 5682649.60 100.00 +596932.62 5677673.80 101.25 +596932.88 5681225.91 98.75 +596933.00 5679021.65 100.00 +596933.58 5681019.57 97.50 +596934.02 5681058.40 97.50 +596934.18 5678629.29 100.00 +596934.19 5678706.31 100.00 +596934.20 5679277.26 101.25 +596934.35 5681708.09 98.75 +596934.63 5681160.00 97.50 +596934.66 5682570.28 101.25 +596934.84 5683339.30 98.75 +596934.88 5683297.35 98.75 +596935.33 5679910.85 100.00 +596935.37 5679321.62 100.00 +596935.44 5679226.64 101.25 +596935.52 5682328.95 98.75 +596935.75 5682505.12 101.25 +596935.90 5681838.68 97.50 +596936.60 5679012.33 100.00 +596936.97 5681822.38 98.75 +596937.07 5681150.58 97.50 +596938.04 5679700.41 100.00 +596938.11 5681888.43 97.50 +596938.20 5678715.45 100.00 +596938.28 5678620.18 100.00 +596938.31 5681010.95 97.50 +596938.33 5681196.05 98.75 +596938.74 5681165.54 97.50 +596938.84 5680068.76 100.00 +596939.35 5683348.21 98.75 +596940.21 5679003.02 100.00 +596940.67 5680197.35 100.00 +596941.32 5677668.89 101.25 +596941.63 5682645.66 100.00 +596941.75 5681141.99 97.50 +596942.22 5679903.63 100.00 +596942.22 5678724.60 100.00 +596942.25 5681055.24 97.50 +596942.31 5682355.91 100.00 +596942.37 5683303.95 98.75 +596942.38 5678611.07 100.00 +596942.52 5681226.89 98.75 +596942.71 5681182.10 98.00 +596942.76 5681002.18 97.50 +596943.13 5679220.98 101.25 +596943.71 5679279.38 101.25 +596943.99 5678993.78 100.00 +596944.02 5683357.05 98.75 +596944.21 5681708.99 98.75 +596944.57 5682569.05 101.25 +596944.94 5682332.19 98.75 +596944.97 5681828.33 98.75 +596945.06 5681046.74 97.50 +596945.31 5679322.55 100.00 +596945.67 5682506.38 101.25 +596945.76 5681840.17 97.50 +596946.24 5678733.74 100.00 +596946.48 5678601.97 100.00 +596946.91 5679704.97 100.00 +596947.07 5680993.34 97.50 +596947.47 5681199.83 98.75 +596947.51 5681175.32 98.00 +596947.58 5681134.22 97.50 +596947.77 5678984.54 100.00 +596948.11 5681888.28 97.50 +596948.13 5681164.76 97.50 +596948.22 5680065.51 100.00 +596948.82 5678827.72 100.00 +596949.10 5683311.34 98.75 +596949.11 5679896.41 100.00 +596949.62 5678837.63 100.00 +596949.71 5681039.11 97.50 +596950.39 5683364.66 98.75 +596950.42 5677665.25 101.25 +596950.52 5680198.56 100.00 +596950.56 5678742.74 100.00 +596950.74 5678847.55 100.00 +596950.83 5678817.93 100.00 +596950.92 5681186.09 98.00 +596951.04 5682642.36 100.00 +596951.40 5678975.24 100.00 +596951.86 5678857.48 100.00 +596952.22 5682355.60 100.00 +596952.42 5681226.47 98.75 +596952.65 5678594.14 100.00 +596952.90 5679219.55 101.25 +596953.10 5678808.24 100.00 +596953.31 5678867.35 100.00 +596953.49 5679280.70 101.25 +596953.68 5678965.52 100.00 +596953.98 5681711.00 98.75 +596954.19 5681831.97 98.75 +596954.28 5680987.05 97.50 +596954.46 5682567.71 101.25 +596954.67 5682332.66 98.75 +596955.07 5678751.65 100.00 +596955.13 5681128.30 97.50 +596955.25 5679323.50 100.00 +596955.30 5678877.13 100.00 +596955.36 5683319.02 98.75 +596955.47 5681842.54 97.50 +596955.59 5682507.63 101.25 +596955.79 5679709.53 100.00 +596955.96 5678955.79 100.00 +596955.99 5679889.19 100.00 +596956.62 5681176.33 98.00 +596956.93 5681202.81 98.75 +596957.29 5683371.89 98.75 +596957.29 5678886.92 100.00 +596957.34 5678799.19 100.00 +596957.51 5681162.00 97.50 +596957.59 5680062.26 100.00 +596957.85 5681034.67 97.50 +596958.10 5681887.88 97.50 +596958.24 5678946.07 100.00 +596958.94 5678586.38 100.00 +596959.01 5678896.76 100.00 +596959.23 5683328.23 98.75 +596959.45 5681189.84 98.00 +596959.58 5678760.56 100.00 +596959.94 5678936.24 100.00 +596960.36 5680199.77 100.00 +596960.37 5677664.37 101.25 +596960.62 5682639.52 100.00 +596960.63 5678906.61 100.00 +596961.06 5678770.27 100.00 +596961.34 5678926.35 100.00 +596961.50 5678780.24 100.00 +596961.58 5678790.15 100.00 +596962.13 5682354.47 100.00 +596962.25 5678916.47 100.00 +596962.32 5681226.06 98.75 +596962.49 5680981.63 97.50 +596962.66 5679218.11 101.25 +596962.85 5681122.61 97.50 +596962.87 5679881.96 100.00 +596963.01 5679278.64 101.25 +596963.63 5681835.17 98.75 +596963.65 5683379.60 98.75 +596963.65 5681711.95 98.75 +596964.00 5682332.48 98.75 +596964.37 5682566.38 101.25 +596964.61 5679714.19 100.00 +596965.19 5681844.90 97.50 +596965.19 5679324.48 100.00 +596965.24 5678578.63 100.00 +596965.27 5682506.99 101.25 +596965.45 5683335.86 98.75 +596965.64 5681178.66 98.00 +596966.38 5681205.79 98.75 +596966.92 5681032.82 97.50 +596966.95 5681162.37 97.50 +596967.05 5680059.64 100.00 +596968.05 5681886.99 97.50 +596968.41 5681192.43 98.00 +596968.43 5683388.06 98.75 +596969.53 5683407.93 98.75 +596969.58 5683397.94 98.75 +596969.60 5681777.66 99.25 +596969.78 5679874.76 100.00 +596970.14 5680201.42 100.00 +596970.35 5677664.47 101.25 +596970.46 5682638.66 100.00 +596970.75 5681117.17 97.50 +596971.02 5682350.03 100.00 +596971.06 5683417.62 98.75 +596971.38 5680977.90 97.50 +596971.89 5681228.39 98.75 +596972.42 5679216.68 101.25 +596972.54 5679276.38 101.25 +596972.55 5678571.84 100.00 +596972.94 5683342.25 98.75 +596972.98 5681708.43 98.75 +596972.99 5682328.13 98.75 +596973.43 5681836.97 98.75 +596973.44 5679718.84 100.00 +596974.27 5682565.10 101.25 +596974.33 5681182.01 98.00 +596974.35 5681167.86 97.50 +596974.51 5682503.16 101.25 +596974.86 5683426.87 98.75 +596974.91 5681847.23 97.50 +596975.13 5679325.46 100.00 +596975.83 5681208.79 98.75 +596976.05 5681033.82 97.50 +596976.95 5680060.20 100.00 +596977.04 5681195.91 98.00 +596977.11 5679867.99 100.00 +596978.01 5681886.10 97.50 +596978.64 5681111.72 97.50 +596979.83 5682345.34 100.00 +596979.88 5680203.28 100.00 +596979.92 5678565.09 100.00 +596980.05 5681175.78 97.50 +596980.08 5683435.31 98.75 +596980.34 5677664.74 101.25 +596980.35 5682639.38 100.00 +596981.05 5680976.10 97.50 +596981.41 5681231.17 98.75 +596981.41 5679212.83 101.25 +596981.46 5682322.85 98.75 +596982.32 5679723.40 100.00 +596982.39 5681705.14 98.75 +596982.41 5679276.60 101.25 +596982.44 5683345.34 98.75 +596982.63 5681186.19 98.00 +596983.28 5681838.06 98.75 +596983.61 5682499.01 101.25 +596984.18 5682563.82 101.25 +596984.42 5681037.66 97.50 +596984.44 5679861.22 100.00 +596984.65 5681849.45 97.50 +596984.97 5681212.36 98.75 +596985.05 5679326.54 100.00 +596985.86 5681198.77 98.00 +596986.02 5681105.63 97.50 +596986.85 5680060.76 100.00 +596987.28 5678558.34 100.00 +596987.70 5681180.69 97.50 +596987.70 5681888.22 97.50 +596988.28 5682340.04 100.00 +596988.56 5683439.81 98.75 +596989.11 5681046.02 97.50 +596989.19 5681192.60 98.00 +596989.69 5680203.72 100.00 +596989.76 5682642.76 100.00 +596989.81 5682317.36 98.75 +596989.89 5681226.96 98.75 +596990.33 5677665.01 101.25 +596990.65 5680975.46 97.50 +596990.67 5681030.07 97.50 +596990.69 5679209.68 101.25 +596990.94 5683350.58 98.75 +596991.19 5679727.96 100.00 +596991.72 5681705.40 98.75 +596991.98 5679854.69 100.00 +596992.14 5681218.92 98.75 +596992.27 5679276.77 101.25 +596992.82 5682495.15 101.25 +596992.99 5681099.04 97.50 +596993.22 5681837.33 98.75 +596994.00 5681054.28 97.50 +596994.09 5682562.53 101.25 +596994.63 5681850.03 97.50 +596994.64 5678551.59 100.00 +596994.65 5679329.31 100.00 +596995.57 5679245.13 101.50 +596996.67 5682334.65 100.00 +596996.76 5680061.32 100.00 +596996.95 5681177.51 97.50 +596997.36 5681890.83 97.50 +596997.36 5681022.98 97.50 +596997.81 5681091.12 97.50 +596997.97 5681063.00 97.50 +596998.05 5683357.17 98.75 +596998.15 5683438.32 98.75 +596998.48 5682312.39 98.75 +596998.49 5682647.56 100.00 +596998.66 5679734.52 100.00 +596999.56 5680202.77 100.00 +596999.58 5681710.71 98.75 +596999.68 5679848.34 100.00 +596999.71 5681072.26 97.50 +596999.93 5681081.85 97.50 +597000.02 5680978.43 97.50 +597000.30 5679207.44 101.25 +597000.31 5677664.56 101.25 +597000.60 5680136.03 100.50 +597001.01 5678543.91 100.00 +597002.14 5679276.64 101.25 +597002.27 5682491.88 101.25 +597003.00 5683365.86 98.75 +597003.01 5681170.33 97.50 +597003.09 5681836.26 98.75 +597004.02 5682562.87 101.25 +597004.24 5679332.09 100.00 +597004.52 5681719.37 98.75 +597004.58 5681850.27 97.50 +597005.44 5679741.77 100.00 +597005.66 5681017.70 97.50 +597005.82 5683432.34 98.75 +597005.98 5682331.06 100.00 +597006.62 5681161.33 97.50 +597006.66 5680061.88 100.00 +597006.79 5679841.34 100.00 +597007.14 5682652.55 100.00 +597007.15 5681892.43 97.50 +597007.16 5682307.44 98.75 +597007.32 5678536.17 100.00 +597007.94 5683374.54 98.75 +597009.44 5680201.81 100.00 +597009.55 5680980.78 97.50 +597009.86 5681727.78 98.75 +597009.91 5679205.21 101.25 +597010.07 5681152.44 97.50 +597010.29 5677664.24 101.25 +597010.92 5679750.11 100.00 +597011.29 5680895.52 98.75 +597011.72 5682488.61 101.25 +597011.78 5683424.40 98.75 +597012.00 5679276.57 101.25 +597012.43 5681832.77 98.75 +597013.60 5678528.40 100.00 +597013.79 5679834.23 100.00 +597013.82 5681012.24 97.50 +597013.90 5682564.15 101.25 +597014.10 5679333.70 100.00 +597014.31 5681847.98 97.50 +597015.30 5682327.47 100.00 +597015.37 5681736.09 98.75 +597016.02 5679758.64 100.00 +597016.11 5682656.94 100.00 +597016.50 5682304.05 98.75 +597016.56 5680062.44 100.00 +597017.14 5681892.51 97.50 +597017.31 5683416.11 98.75 +597017.74 5683375.80 98.75 +597018.43 5681151.19 97.50 +597019.21 5680200.27 100.00 +597019.22 5679768.09 100.00 +597019.23 5680982.50 97.50 +597019.32 5681211.33 97.50 +597019.45 5681202.17 97.50 +597019.67 5679206.66 101.25 +597019.77 5678520.55 100.00 +597020.26 5679826.79 100.00 +597020.28 5677664.24 101.25 +597020.57 5680891.79 98.75 +597020.77 5681005.29 97.50 +597020.85 5679777.89 100.00 +597020.88 5681744.40 98.75 +597020.91 5682484.68 101.25 +597021.77 5681829.28 98.75 +597021.87 5679276.80 101.25 +597022.02 5679787.81 100.00 +597022.72 5681192.95 97.50 +597022.88 5681220.44 97.50 +597023.18 5679797.72 100.00 +597023.41 5679817.32 100.00 +597023.50 5682566.92 101.25 +597023.96 5679335.28 100.00 +597023.97 5683408.66 98.75 +597024.04 5681845.69 97.50 +597024.35 5679807.63 100.00 +597024.59 5682323.83 100.00 +597025.34 5681183.53 97.50 +597025.51 5682659.58 100.00 +597025.57 5680997.07 97.50 +597025.94 5678512.70 100.00 +597026.11 5682301.28 98.75 +597026.46 5680063.06 100.00 +597026.82 5680987.92 97.50 +597027.14 5681892.55 97.50 +597027.29 5681155.14 97.50 +597027.56 5683374.64 98.75 +597027.71 5681174.04 97.50 +597027.82 5681751.54 98.75 +597028.89 5680198.08 100.00 +597029.41 5681227.22 97.50 +597029.43 5679208.10 101.25 +597029.91 5681164.51 97.50 +597029.93 5680888.33 98.75 +597030.09 5682480.76 101.25 +597030.26 5677663.80 101.25 +597030.79 5681825.31 98.75 +597031.73 5679277.02 101.25 +597031.76 5678504.58 100.00 +597032.22 5683403.31 98.75 +597033.12 5682569.62 101.25 +597033.77 5681843.40 97.50 +597033.82 5679336.86 100.00 +597033.88 5682320.18 100.00 +597034.88 5682296.57 98.75 +597034.89 5681758.57 98.75 +597035.50 5682659.84 100.00 +597036.36 5680063.69 100.00 +597036.79 5681889.94 97.50 +597037.31 5683372.48 98.75 +597037.53 5678496.43 100.00 +597037.71 5681818.13 98.75 +597038.24 5681230.56 97.50 +597038.57 5680195.89 100.00 +597039.22 5679209.35 101.25 +597039.53 5682477.50 101.25 +597039.63 5680885.90 98.75 +597040.22 5677663.04 101.25 +597040.94 5679940.10 98.75 +597041.19 5683398.91 98.75 +597041.36 5679930.34 98.75 +597041.37 5682017.01 98.75 +597041.40 5679275.32 101.25 +597041.69 5682314.07 100.00 +597041.91 5683354.87 98.75 +597042.28 5682007.11 98.75 +597042.59 5682026.93 98.75 +597043.01 5682570.99 101.25 +597043.14 5683364.55 98.75 +597043.30 5678488.28 100.00 +597043.43 5681763.71 98.75 +597043.51 5681841.11 97.50 +597043.53 5682291.57 98.75 +597043.68 5683346.06 98.75 +597043.76 5681997.24 98.75 +597043.79 5679337.17 100.00 +597044.62 5681810.95 98.75 +597045.16 5681885.25 97.50 +597045.45 5682660.78 100.00 +597045.76 5679921.45 98.75 +597046.17 5682035.91 98.75 +597046.26 5680064.32 100.00 +597046.44 5679947.07 98.75 +597047.73 5681048.81 98.75 +597047.89 5680192.52 100.00 +597047.99 5681231.35 97.50 +597048.50 5683392.47 98.75 +597048.68 5681988.97 98.75 +597049.02 5679210.51 101.25 +597049.02 5682474.38 101.25 +597049.22 5682307.51 100.00 +597049.32 5680883.46 98.75 +597050.15 5677662.07 101.25 +597050.70 5679913.00 98.75 +597050.77 5678481.74 100.00 +597051.00 5679273.07 101.25 +597051.06 5681770.10 98.75 +597051.18 5681803.44 98.75 +597051.18 5683339.57 98.75 +597051.74 5682285.99 98.75 +597051.82 5681877.80 97.50 +597052.07 5682043.98 98.75 +597052.55 5681837.29 97.50 +597052.76 5682570.29 101.25 +597052.83 5681056.20 98.75 +597053.25 5683383.72 98.75 +597053.76 5679337.08 100.00 +597054.40 5682663.93 100.00 +597054.76 5679952.46 98.75 +597055.52 5682001.48 100.00 +597056.18 5680064.60 100.00 +597056.32 5681226.35 97.50 +597056.62 5682300.81 100.00 +597056.81 5681983.15 98.75 +597056.89 5682011.18 100.00 +597057.22 5680189.14 100.00 +597057.40 5681777.41 98.75 +597057.62 5681795.83 98.75 +597057.97 5682052.05 98.75 +597057.98 5680878.69 98.75 +597058.19 5681063.39 98.75 +597058.49 5679906.87 98.75 +597058.61 5678475.55 100.00 +597058.77 5682472.24 101.25 +597058.77 5682278.89 98.75 +597058.81 5679211.67 101.25 +597059.47 5683334.00 98.75 +597059.71 5681871.70 97.50 +597059.83 5679268.68 101.25 +597059.96 5677660.19 101.25 +597060.04 5683377.24 98.75 +597060.34 5681786.94 98.75 +597060.74 5681831.55 97.50 +597061.16 5682020.14 100.00 +597061.21 5681994.98 100.00 +597061.69 5682670.76 100.00 +597062.35 5682567.51 101.25 +597063.55 5682293.64 100.00 +597063.68 5679335.89 100.00 +597063.89 5681070.32 98.75 +597064.04 5679955.79 98.75 +597064.48 5681220.96 97.50 +597064.97 5682059.16 98.75 +597064.99 5681977.41 98.75 +597065.79 5682271.78 98.75 +597066.09 5680064.82 100.00 +597066.29 5679900.74 98.75 +597066.30 5680873.14 98.75 +597066.45 5678469.36 100.00 +597066.55 5680185.76 100.00 +597066.75 5681684.18 97.50 +597066.84 5682028.34 100.00 +597067.32 5682678.97 100.00 +597067.34 5681693.28 97.50 +597067.50 5679262.78 101.25 +597068.06 5681866.37 97.50 +597068.31 5683331.10 98.75 +597068.42 5679213.81 101.25 +597068.48 5681674.33 97.50 +597068.56 5682470.23 101.25 +597069.18 5683373.21 98.75 +597069.20 5681188.14 97.50 +597069.36 5681826.50 97.50 +597069.59 5681077.25 98.75 +597069.90 5677659.27 101.25 +597070.20 5681664.49 97.50 +597070.27 5682286.26 100.00 +597070.37 5681991.66 100.00 +597071.11 5683789.04 98.75 +597071.40 5681178.66 97.50 +597071.86 5682564.47 101.25 +597072.07 5682687.61 100.00 +597072.11 5682066.16 98.75 +597072.23 5682526.94 101.86 +597072.59 5681215.48 97.50 +597072.67 5682884.31 100.00 +597072.78 5682264.64 98.75 +597072.99 5682697.55 100.00 +597073.54 5679958.62 98.75 +597073.59 5679334.68 100.00 +597073.65 5679894.13 98.75 +597073.85 5681655.18 97.50 +597073.98 5682707.49 100.00 +597073.99 5679255.34 101.25 +597074.00 5681974.10 98.75 +597074.17 5682034.95 100.00 +597074.23 5682894.18 100.00 +597074.29 5678463.17 100.00 +597074.55 5681700.20 97.50 +597074.62 5680867.59 98.75 +597075.01 5680973.35 98.75 +597075.03 5682717.43 100.00 +597075.37 5679219.51 101.25 +597075.56 5681083.96 98.75 +597075.71 5682875.21 100.00 +597075.87 5680182.39 100.00 +597076.01 5680065.05 100.00 +597077.08 5682727.01 100.00 +597077.18 5681191.14 97.50 +597077.69 5681863.69 97.50 +597077.71 5681171.56 97.50 +597077.83 5683333.50 98.75 +597078.33 5681822.24 97.50 +597078.46 5682903.20 100.00 +597078.49 5682469.44 101.25 +597078.56 5683369.75 98.75 +597079.01 5682281.61 100.00 +597079.22 5682257.10 98.75 +597079.24 5682073.16 98.75 +597079.26 5679247.32 101.25 +597079.73 5679228.37 101.25 +597079.87 5677658.58 101.25 +597080.25 5681647.84 97.50 +597080.32 5681992.51 100.00 +597080.60 5679887.05 98.75 +597080.81 5683790.20 98.75 +597081.03 5682866.86 100.00 +597081.11 5679237.63 101.25 +597081.18 5682560.86 101.25 +597081.58 5681090.62 98.75 +597081.90 5681212.77 97.50 +597082.13 5678456.99 100.00 +597082.21 5682040.87 100.00 +597082.32 5681706.49 97.50 +597082.34 5680861.26 98.75 +597082.53 5682735.38 100.00 +597083.45 5679958.35 98.75 +597083.51 5679333.45 100.00 +597083.84 5681975.05 98.75 +597083.85 5682248.24 98.75 +597084.13 5680977.13 98.75 +597084.27 5682911.14 100.00 +597084.50 5683340.94 98.75 +597085.14 5681165.21 97.50 +597085.57 5680180.63 100.00 +597085.93 5680065.27 100.00 +597086.35 5682080.18 98.75 +597086.66 5682275.73 100.00 +597086.83 5681189.60 97.50 +597087.32 5681861.01 97.50 +597087.52 5681138.24 97.50 +597087.54 5679879.97 98.75 +597087.98 5681147.48 97.50 +597088.05 5681819.91 97.50 +597088.05 5682471.77 101.25 +597088.09 5682859.79 100.00 +597088.19 5683369.86 98.75 +597088.48 5682239.38 98.75 +597088.72 5681642.81 97.50 +597089.34 5681156.80 97.50 +597089.37 5682742.63 100.00 +597089.85 5677658.98 101.25 +597089.97 5678450.80 100.00 +597089.98 5680854.81 98.75 +597090.08 5681994.17 100.00 +597090.15 5681712.70 97.50 +597090.19 5683792.90 98.75 +597090.24 5682046.80 100.00 +597090.41 5681208.37 97.50 +597090.48 5682557.22 101.25 +597091.17 5683348.38 98.75 +597091.41 5682918.14 100.00 +597091.69 5680983.26 98.75 +597091.74 5678679.80 101.25 +597091.91 5678670.04 101.25 +597092.31 5682267.50 100.00 +597092.63 5681131.03 97.50 +597093.08 5678689.70 101.25 +597093.11 5682230.53 98.75 +597093.28 5679334.22 100.00 +597093.36 5679958.08 98.75 +597093.44 5682087.23 98.75 +597093.53 5681977.49 98.75 +597094.06 5682851.91 100.00 +597094.52 5681193.24 97.50 +597094.54 5678699.57 101.25 +597095.15 5678660.59 101.25 +597095.44 5680179.62 100.00 +597095.79 5680064.81 100.00 +597096.29 5679875.46 98.75 +597096.51 5682749.59 100.00 +597096.60 5681857.32 97.50 +597096.70 5681815.01 97.50 +597097.11 5681201.85 97.50 +597097.13 5682258.80 100.00 +597097.37 5678444.12 100.00 +597097.46 5682475.14 101.25 +597097.68 5683372.76 98.75 +597097.83 5680848.62 98.75 +597098.13 5681718.57 97.50 +597098.22 5682052.80 100.00 +597098.30 5681642.48 97.50 +597098.39 5678651.13 101.25 +597098.49 5682222.10 98.75 +597098.54 5682925.14 100.00 +597098.67 5680990.25 98.75 +597098.72 5683354.90 98.75 +597098.73 5682843.08 100.00 +597098.85 5678708.58 101.25 +597099.13 5683796.70 98.75 +597099.40 5681997.75 100.00 +597099.65 5677658.32 101.25 +597099.77 5682553.54 101.25 +597100.40 5682094.40 98.75 +597101.27 5682249.72 100.00 +597102.26 5681129.84 97.50 +597102.75 5681727.43 97.50 +597102.93 5679336.78 100.00 +597103.16 5678717.60 101.25 +597103.24 5681979.86 98.75 +597103.25 5679957.42 98.75 +597103.45 5678642.58 101.25 +597103.89 5682213.70 98.75 +597104.50 5678437.12 100.00 +597104.63 5681809.04 97.50 +597104.79 5683379.41 98.75 +597104.97 5683022.90 100.00 +597105.14 5682835.53 100.00 +597105.25 5682754.43 100.00 +597105.30 5679871.31 98.75 +597105.30 5680178.62 100.00 +597105.42 5682240.64 100.00 +597105.43 5680997.43 98.75 +597105.58 5680063.17 100.00 +597105.72 5680842.48 98.75 +597105.76 5682932.04 100.00 +597105.79 5681853.38 97.50 +597106.02 5682059.03 100.00 +597106.49 5682479.35 101.25 +597106.53 5683361.13 98.75 +597106.80 5681736.55 97.50 +597107.19 5683031.49 100.00 +597107.36 5682101.57 98.75 +597107.47 5678726.62 101.25 +597107.98 5683800.78 98.75 +597108.04 5681644.71 97.50 +597108.60 5682001.61 100.00 +597108.99 5677654.78 101.25 +597108.99 5678634.27 101.25 +597109.05 5682549.86 101.25 +597109.25 5682205.26 98.75 +597109.59 5682231.57 100.00 +597110.30 5681745.92 97.50 +597110.45 5683387.63 98.75 +597111.05 5681005.55 98.75 +597111.51 5681801.79 97.50 +597111.63 5678430.13 100.00 +597111.79 5678735.63 101.25 +597111.85 5683618.45 100.00 +597111.86 5679341.13 100.00 +597111.86 5683625.44 100.00 +597111.87 5683016.70 100.00 +597112.04 5681129.84 97.50 +597112.21 5682828.47 100.00 +597112.68 5682939.17 100.00 +597112.97 5681982.14 98.75 +597113.13 5679956.50 98.75 +597113.26 5681846.88 97.50 +597113.62 5680836.35 98.75 +597113.80 5681755.28 97.50 +597113.82 5682065.26 100.00 +597113.98 5682759.28 100.00 +597114.26 5683367.44 98.75 +597114.30 5679867.16 98.75 +597114.31 5682108.75 98.75 +597114.34 5682222.84 100.00 +597114.42 5682196.71 98.75 +597114.54 5678625.95 101.25 +597115.03 5680176.74 100.00 +597115.36 5680061.53 100.00 +597115.44 5682483.75 101.25 +597115.67 5683036.77 100.00 +597115.71 5683396.13 98.75 +597116.10 5678744.65 101.25 +597116.68 5681013.67 98.75 +597116.69 5681764.83 97.50 +597117.05 5681793.75 97.50 +597117.11 5683804.27 98.75 +597117.33 5682948.01 100.00 +597117.34 5679916.12 98.50 +597117.41 5683760.70 98.75 +597117.72 5682005.66 100.00 +597117.73 5677650.03 101.25 +597117.76 5678422.40 100.00 +597118.38 5682546.30 101.25 +597119.04 5681774.55 97.50 +597119.22 5683612.65 100.00 +597119.27 5678617.15 101.25 +597119.51 5683375.94 98.75 +597119.60 5682188.17 98.75 +597120.11 5681784.23 97.50 +597120.25 5682214.80 100.00 +597120.47 5681839.98 97.50 +597120.56 5679346.03 100.00 +597120.66 5682823.25 100.00 +597120.73 5678753.50 101.25 +597120.85 5683404.70 98.75 +597120.94 5683628.49 100.00 +597121.08 5681134.05 97.50 +597121.21 5682115.97 98.75 +597121.34 5682071.74 100.00 +597121.40 5680830.07 98.75 +597121.46 5683013.91 100.00 +597122.37 5678413.53 100.00 +597122.67 5681984.55 98.75 +597122.71 5682764.15 100.00 +597123.00 5679955.58 98.75 +597123.09 5681021.14 98.75 +597123.90 5679864.78 98.75 +597123.94 5678608.32 101.25 +597124.72 5680174.62 100.00 +597124.77 5683384.44 98.75 +597124.78 5682179.62 98.75 +597124.92 5682486.91 101.25 +597124.92 5683040.35 100.00 +597124.92 5677577.79 101.25 +597125.18 5680060.19 100.00 +597125.36 5682953.74 100.00 +597125.38 5678762.35 101.25 +597125.63 5677644.16 101.25 +597125.97 5677587.54 101.25 +597126.50 5683761.63 98.75 +597126.63 5683412.70 98.75 +597126.81 5682080.09 100.00 +597126.82 5682207.29 100.00 +597126.97 5678404.67 100.00 +597127.05 5682009.21 100.00 +597127.09 5681141.60 97.50 +597127.12 5677568.36 101.25 +597127.34 5678598.93 101.25 +597127.54 5683620.15 100.50 +597128.12 5682123.20 98.75 +597128.16 5682544.27 101.25 +597128.44 5683611.49 100.00 +597128.64 5679351.87 100.00 +597128.96 5677597.07 101.25 +597128.99 5682170.58 98.75 +597129.08 5680823.67 98.75 +597129.17 5681835.05 97.50 +597129.40 5682818.42 100.00 +597129.99 5681028.22 98.75 +597130.04 5678771.19 101.25 +597130.64 5683628.71 100.00 +597130.67 5678589.50 101.25 +597130.85 5677635.64 101.25 +597131.03 5682769.52 100.00 +597131.06 5683011.21 100.00 +597131.42 5683391.71 98.75 +597131.57 5678395.81 100.00 +597131.97 5679951.34 98.75 +597131.99 5677606.59 101.25 +597132.16 5681150.18 97.50 +597132.32 5681987.13 98.75 +597132.62 5682131.91 98.75 +597132.91 5682161.39 98.75 +597133.18 5677560.41 101.25 +597133.18 5677626.15 101.25 +597133.45 5682087.53 100.00 +597133.49 5682199.86 100.00 +597133.59 5679862.67 98.75 +597133.78 5682959.12 100.00 +597134.00 5678580.08 101.25 +597134.08 5682151.62 98.75 +597134.13 5677616.20 101.25 +597134.16 5682141.63 98.75 +597134.27 5680171.98 100.00 +597134.49 5683043.22 100.00 +597134.66 5682488.78 101.25 +597134.87 5683418.20 98.75 +597135.00 5681159.62 97.50 +597135.05 5680059.17 100.00 +597135.06 5678386.46 100.00 +597135.16 5683764.68 98.75 +597135.38 5678779.63 101.25 +597136.22 5682013.09 100.00 +597136.51 5679358.02 100.00 +597136.76 5680817.27 98.75 +597136.98 5681169.40 97.50 +597137.29 5678570.64 101.25 +597137.46 5681034.53 98.75 +597137.62 5682812.87 100.00 +597137.72 5682776.94 100.00 +597137.78 5683613.81 100.00 +597137.86 5681830.12 97.50 +597137.94 5682542.25 101.25 +597138.43 5678377.05 100.00 +597138.96 5681179.17 97.50 +597139.18 5683398.00 98.75 +597139.74 5683626.97 100.00 +597140.14 5682094.94 100.00 +597140.18 5682192.45 100.00 +597140.36 5678561.13 101.25 +597140.79 5678788.03 101.25 +597140.94 5679947.11 98.75 +597141.03 5683011.81 100.00 +597141.41 5681188.82 97.50 +597141.55 5682785.95 100.00 +597141.80 5678367.65 100.00 +597141.84 5681990.01 98.75 +597142.59 5677557.89 101.25 +597142.65 5682963.70 100.00 +597143.28 5679860.56 98.75 +597143.43 5678551.62 101.25 +597143.67 5680168.80 100.00 +597143.76 5683767.85 98.75 +597143.81 5682805.48 100.00 +597144.20 5683619.36 100.00 +597144.29 5682795.55 100.00 +597144.38 5679364.16 100.00 +597144.44 5683043.68 100.00 +597144.44 5680810.88 98.75 +597144.48 5683420.92 98.75 +597144.56 5681198.28 97.50 +597144.61 5682489.63 101.25 +597144.75 5682018.27 100.00 +597144.92 5680058.15 100.00 +597145.18 5678358.25 100.00 +597146.18 5681039.18 98.75 +597146.56 5681825.19 97.50 +597146.80 5678542.23 101.25 +597146.81 5682102.37 100.00 +597147.04 5682185.21 100.00 +597147.09 5683403.99 98.75 +597147.62 5678795.23 101.25 +597147.72 5682540.23 101.25 +597147.96 5681207.64 97.50 +597148.55 5678348.85 100.00 +597149.90 5679942.88 98.75 +597150.06 5682057.86 101.25 +597150.09 5681995.65 98.75 +597150.53 5680802.99 98.75 +597150.97 5683012.74 100.00 +597151.03 5678533.17 101.25 +597151.56 5682968.23 100.00 +597151.62 5683772.59 98.75 +597151.75 5682111.04 100.00 +597151.78 5681216.86 97.50 +597152.00 5679370.60 100.00 +597152.01 5677560.32 101.25 +597152.27 5682065.38 101.25 +597152.45 5678339.68 100.00 +597152.86 5682177.23 100.00 +597152.92 5682023.95 100.00 +597152.98 5679858.55 98.75 +597153.06 5680165.62 100.00 +597154.13 5683423.36 98.75 +597154.35 5683044.60 100.00 +597154.52 5682490.87 101.25 +597154.78 5680057.13 100.00 +597154.91 5681043.80 98.75 +597155.07 5678801.89 101.25 +597155.25 5678524.12 101.25 +597155.59 5681226.07 97.50 +597155.84 5681821.46 97.50 +597156.38 5682119.89 100.00 +597156.39 5680794.89 98.75 +597156.90 5678330.74 100.00 +597156.94 5683405.61 98.75 +597157.12 5683779.37 98.75 +597157.28 5682168.28 100.00 +597157.69 5682540.21 101.25 +597157.83 5682054.17 101.25 +597158.34 5682001.28 98.75 +597158.57 5682072.57 101.25 +597158.80 5679938.52 98.75 +597159.00 5679377.72 100.00 +597159.06 5681235.41 97.50 +597159.91 5683788.02 98.75 +597160.08 5682129.03 100.00 +597160.09 5682158.88 100.00 +597160.22 5678515.47 101.25 +597160.46 5682972.77 100.00 +597160.46 5677565.56 101.25 +597160.54 5683797.17 98.75 +597160.57 5682030.36 100.00 +597160.85 5682138.98 100.00 +597160.88 5683013.23 100.00 +597160.96 5682148.93 100.00 +597161.24 5683806.33 98.75 +597161.24 5681406.02 98.75 +597161.35 5678321.79 100.00 +597161.88 5680161.18 100.00 +597162.09 5681600.28 97.50 +597162.11 5683815.46 98.75 +597162.25 5680786.79 98.75 +597162.52 5678808.55 101.25 +597162.57 5681244.75 97.50 +597162.85 5679859.47 98.75 +597163.68 5681048.34 98.75 +597163.88 5681538.96 98.75 +597164.10 5683422.68 98.75 +597164.11 5683046.73 100.00 +597164.15 5681397.88 98.75 +597164.40 5682492.35 101.25 +597164.65 5680056.11 100.00 +597165.12 5681414.92 98.75 +597165.14 5681817.80 97.50 +597165.54 5681529.39 98.75 +597165.65 5678507.08 101.25 +597165.95 5682078.68 101.25 +597165.96 5683823.44 98.75 +597166.00 5679384.84 100.00 +597166.40 5678313.26 100.00 +597166.56 5679035.38 100.00 +597166.59 5681253.87 97.50 +597166.59 5682006.92 98.75 +597166.64 5679045.31 100.00 +597166.67 5683407.93 98.75 +597167.03 5681592.55 97.50 +597167.05 5679933.02 98.75 +597167.18 5679025.69 100.00 +597167.36 5682054.49 101.25 +597167.43 5681519.87 98.75 +597167.68 5682540.43 101.25 +597168.00 5677572.05 101.25 +597168.51 5681424.01 98.75 +597169.10 5682035.52 100.00 +597169.39 5680779.92 98.75 +597169.62 5681510.41 98.75 +597169.79 5682976.09 100.00 +597169.97 5678815.21 101.25 +597170.42 5680156.13 100.00 +597170.58 5679053.81 100.00 +597170.61 5681263.00 97.50 +597170.84 5683012.38 100.00 +597171.05 5681433.33 98.75 +597171.08 5678498.69 101.25 +597171.38 5683652.23 100.00 +597171.39 5681500.87 98.75 +597171.50 5683830.76 98.75 +597172.24 5681442.97 98.75 +597172.41 5681394.85 98.75 +597172.46 5681052.88 98.75 +597172.72 5679860.38 98.75 +597172.79 5681537.39 98.75 +597172.93 5678305.69 100.00 +597172.98 5681491.29 98.75 +597173.25 5679017.84 100.00 +597173.41 5681452.61 98.75 +597173.45 5683660.35 100.00 +597173.47 5679391.38 100.00 +597173.71 5682084.23 101.25 +597173.85 5681481.63 98.75 +597173.88 5683048.80 100.00 +597173.93 5683423.65 98.75 +597174.27 5682493.87 101.25 +597174.42 5681471.94 98.75 +597174.45 5681814.15 97.50 +597174.50 5681293.93 97.50 +597174.50 5681462.26 98.75 +597174.53 5680055.27 100.00 +597174.75 5679926.81 98.75 +597174.88 5682012.50 98.75 +597174.92 5681589.42 97.50 +597174.99 5677579.19 101.25 +597175.00 5681271.94 97.50 +597175.61 5682072.21 101.30 +597176.40 5683410.19 98.75 +597176.50 5678490.30 101.25 +597176.84 5682055.86 101.25 +597176.99 5679061.39 100.00 +597177.23 5680773.72 98.75 +597177.44 5682538.67 101.25 +597177.85 5682040.32 100.00 +597178.51 5681529.54 98.75 +597178.87 5678819.72 101.25 +597178.95 5680151.08 100.00 +597179.45 5678298.13 100.00 +597179.55 5682978.23 100.00 +597179.76 5681302.41 97.50 +597180.40 5681280.11 97.50 +597180.68 5682798.24 100.26 +597180.76 5683011.32 100.00 +597180.76 5679011.98 100.00 +597180.88 5683650.95 100.00 +597180.94 5678481.34 101.25 +597181.17 5677587.02 101.25 +597181.30 5681398.36 98.75 +597181.71 5681056.19 98.75 +597181.92 5679396.71 100.00 +597182.01 5683663.49 100.00 +597182.10 5682088.86 101.25 +597182.14 5679920.19 98.75 +597182.15 5682499.60 101.25 +597182.29 5681520.71 98.75 +597182.50 5679861.88 98.75 +597183.06 5678289.08 100.00 +597183.18 5682018.07 98.75 +597183.40 5679068.97 100.00 +597183.59 5681455.94 99.00 +597183.66 5683425.94 98.75 +597183.71 5683050.60 100.00 +597184.01 5681588.15 97.50 +597184.31 5681812.65 97.50 +597184.44 5680055.06 100.00 +597184.92 5683764.82 98.75 +597184.95 5683757.46 98.75 +597185.02 5681310.89 97.50 +597185.07 5680767.51 98.75 +597185.26 5681511.47 98.75 +597185.28 5681406.94 98.75 +597185.38 5678279.37 100.00 +597185.38 5678472.39 101.25 +597186.29 5683411.63 98.75 +597186.33 5682057.23 101.25 +597186.76 5682044.83 100.00 +597186.78 5682535.23 101.25 +597187.79 5680146.62 100.00 +597187.83 5678824.15 101.25 +597188.18 5683685.35 100.00 +597188.24 5681502.22 98.75 +597188.62 5681416.06 98.75 +597188.65 5681285.71 97.50 +597189.31 5682980.36 100.00 +597189.52 5679913.58 98.75 +597189.59 5682506.27 101.25 +597189.79 5677591.90 101.25 +597189.83 5678463.44 101.25 +597190.14 5679008.71 100.00 +597190.27 5681492.75 98.75 +597190.28 5681319.37 97.50 +597190.29 5679402.16 100.00 +597190.45 5683650.75 100.00 +597190.54 5683009.29 100.00 +597190.68 5682093.10 101.25 +597190.70 5679075.18 100.00 +597191.25 5681058.77 98.75 +597191.48 5682023.64 98.75 +597191.57 5683664.22 100.00 +597191.82 5681425.23 98.75 +597191.88 5681483.17 98.75 +597192.09 5683528.38 100.00 +597192.17 5679864.10 98.75 +597192.44 5681591.17 97.50 +597192.57 5681444.49 98.75 +597192.67 5681434.78 98.75 +597192.84 5681454.19 98.75 +597192.86 5678453.92 101.25 +597193.20 5681463.90 98.75 +597193.49 5681473.60 98.75 +597193.53 5683052.41 100.00 +597193.57 5683427.03 98.75 +597193.59 5680762.28 98.75 +597194.22 5681811.37 97.50 +597194.30 5683767.86 98.75 +597194.36 5680054.85 100.00 +597194.62 5683690.64 100.00 +597194.62 5683755.79 98.75 +597194.70 5682061.88 101.25 +597195.38 5682530.22 101.25 +597195.58 5678655.30 102.50 +597195.61 5683679.98 100.00 +597195.83 5678444.38 101.25 +597195.96 5682048.69 100.00 +597195.98 5678665.09 102.50 +597195.99 5681327.56 97.50 +597196.10 5683411.65 98.75 +597196.23 5682513.69 101.25 +597196.57 5678645.39 102.50 +597196.79 5678828.58 101.25 +597196.92 5680142.75 100.00 +597197.20 5683521.65 100.00 +597197.26 5679907.37 98.75 +597197.56 5678635.48 102.50 +597197.69 5683533.91 100.00 +597198.43 5679407.94 100.00 +597198.52 5681287.01 97.50 +597198.60 5678674.69 102.50 +597198.69 5677596.45 101.25 +597198.79 5678434.84 101.25 +597199.20 5682981.79 100.00 +597199.21 5683829.89 98.75 +597199.35 5678424.88 101.25 +597199.42 5682522.99 101.25 +597199.51 5679005.45 100.00 +597199.73 5682095.39 101.25 +597199.77 5678414.89 101.25 +597199.79 5678625.85 102.50 +597200.04 5683650.76 100.00 +597200.19 5678404.91 101.25 +597200.23 5679077.95 100.00 +597200.26 5683006.97 100.00 +597200.36 5681595.49 97.50 +597200.76 5682027.21 98.75 +597200.78 5681061.35 98.75 +597201.10 5683665.29 100.00 +597201.36 5679867.45 98.75 +597201.36 5682068.23 101.25 +597201.63 5678684.07 102.50 +597201.67 5678395.04 101.25 +597201.77 5681335.70 97.50 +597202.12 5680757.08 98.75 +597203.15 5678616.48 102.50 +597203.38 5683053.92 100.00 +597203.39 5683425.50 98.75 +597203.40 5678385.19 101.25 +597203.79 5683770.98 98.75 +597204.11 5681811.25 97.50 +597204.16 5680055.83 100.00 +597204.23 5683693.13 100.00 +597204.35 5683837.00 98.75 +597204.53 5683756.34 98.75 +597204.54 5683822.47 98.75 +597204.88 5679901.07 98.75 +597204.91 5681603.45 97.50 +597205.05 5683518.51 100.00 +597205.05 5683526.57 100.50 +597205.07 5683678.39 100.00 +597205.22 5682052.41 100.00 +597205.34 5678375.43 101.25 +597205.42 5682076.87 101.25 +597205.77 5683409.14 98.75 +597205.81 5678832.75 101.25 +597206.05 5680138.88 100.00 +597206.50 5683535.09 100.00 +597206.57 5679413.73 100.00 +597206.66 5681344.38 97.50 +597206.68 5678607.17 102.50 +597207.80 5677600.47 101.25 +597208.24 5682086.02 101.25 +597208.39 5681574.70 96.90 +597208.41 5681288.26 97.50 +597208.51 5678691.27 102.50 +597208.96 5681611.65 97.50 +597209.06 5679873.23 98.75 +597209.09 5682983.23 100.00 +597209.29 5679003.72 100.00 +597209.31 5682095.13 101.25 +597209.63 5683650.77 100.00 +597209.68 5679892.39 98.75 +597209.77 5679080.71 100.00 +597210.02 5683005.25 100.00 +597210.23 5682030.40 98.75 +597210.26 5678366.73 101.25 +597210.30 5678597.89 102.50 +597210.47 5681063.17 98.75 +597210.58 5679883.03 98.75 +597210.62 5683666.37 100.00 +597210.88 5681582.70 96.90 +597210.88 5680752.36 98.75 +597211.33 5681566.56 96.90 +597211.41 5681353.16 97.50 +597212.73 5681619.86 97.50 +597213.12 5683423.30 98.75 +597213.15 5683774.48 98.75 +597213.37 5683053.90 100.00 +597213.86 5680057.90 100.00 +597213.91 5678588.61 102.50 +597213.92 5683519.11 100.00 +597213.96 5681812.95 97.50 +597213.97 5683822.47 98.75 +597214.03 5683694.89 100.00 +597214.07 5683839.18 98.75 +597214.20 5683758.77 98.75 +597214.30 5683601.65 100.00 +597214.51 5679419.79 100.00 +597214.71 5683531.86 100.00 +597215.00 5683679.19 100.00 +597215.09 5681362.39 97.50 +597215.18 5682052.93 100.00 +597215.18 5678358.03 101.25 +597215.28 5680135.33 100.00 +597215.39 5678698.46 102.50 +597215.46 5683658.21 100.50 +597215.49 5683406.86 98.75 +597215.80 5678832.70 101.25 +597215.94 5683830.91 98.50 +597216.82 5683608.06 100.00 +597217.39 5677603.03 101.25 +597217.95 5681586.97 96.90 +597218.09 5681562.84 96.90 +597218.12 5681371.90 97.50 +597218.29 5681289.61 97.50 +597218.60 5678579.84 102.50 +597218.99 5682984.50 100.00 +597219.07 5679002.00 100.00 +597219.21 5683650.99 100.00 +597219.25 5683524.74 100.00 +597219.31 5679083.47 100.00 +597219.72 5682033.55 98.75 +597219.87 5681625.18 97.50 +597220.00 5683005.36 100.00 +597220.05 5680748.66 98.75 +597220.15 5683667.44 100.00 +597220.19 5678349.38 101.25 +597220.28 5681064.33 98.75 +597221.41 5681381.30 97.50 +597221.70 5681818.71 97.50 +597222.41 5679425.90 100.00 +597222.42 5683778.21 98.75 +597222.43 5683419.65 98.75 +597222.46 5683597.22 100.00 +597222.55 5683713.72 98.75 +597222.61 5678705.28 102.50 +597223.36 5683053.87 100.00 +597223.41 5683842.51 98.75 +597223.44 5678571.14 102.50 +597223.56 5680059.98 100.00 +597223.65 5683761.96 98.75 +597223.73 5683824.45 98.75 +597223.73 5683833.16 98.50 +597223.89 5683696.22 100.00 +597224.93 5683679.40 100.00 +597225.00 5681583.95 96.90 +597225.09 5680133.89 100.00 +597225.15 5682053.45 100.00 +597225.23 5681566.66 96.90 +597225.36 5678340.83 101.25 +597225.38 5683405.44 98.75 +597225.65 5683611.52 100.00 +597225.79 5678832.65 101.25 +597226.04 5681390.14 97.50 +597226.39 5681575.31 96.90 +597226.99 5681620.99 97.50 +597227.00 5683707.32 98.75 +597227.37 5677602.49 101.25 +597227.56 5680742.06 98.75 +597227.84 5681399.91 97.50 +597228.07 5681291.56 97.50 +597228.23 5678998.29 100.00 +597228.33 5681826.13 97.50 +597228.63 5682986.52 100.00 +597228.77 5683651.38 100.00 +597228.95 5679082.91 100.00 +597228.98 5678562.96 102.50 +597229.34 5681409.78 97.50 +597229.42 5682035.91 98.75 +597229.68 5683668.51 100.00 +597229.95 5683004.39 100.00 +597230.09 5681065.49 98.75 +597230.20 5683719.27 98.75 +597230.31 5679432.01 100.00 +597230.53 5678332.28 101.25 +597230.53 5678711.32 102.50 +597231.52 5683835.41 98.50 +597231.67 5683781.99 98.75 +597231.91 5683596.51 100.00 +597232.38 5683419.68 98.75 +597232.66 5681418.92 97.50 +597232.82 5683765.95 98.75 +597232.89 5683845.17 98.75 +597233.04 5683051.59 100.00 +597233.26 5680062.06 100.00 +597233.46 5681834.71 97.50 +597233.51 5683826.29 98.75 +597233.79 5683697.21 100.00 +597234.16 5681479.09 98.75 +597234.47 5683614.99 100.00 +597234.87 5683678.89 100.00 +597234.91 5680132.44 100.00 +597235.03 5680735.41 98.75 +597235.13 5682053.28 100.00 +597235.24 5683406.30 98.75 +597235.35 5678835.47 101.25 +597235.47 5681487.23 98.75 +597235.52 5683550.57 100.00 +597235.70 5678323.72 101.25 +597235.96 5678555.86 102.50 +597236.99 5683706.94 98.75 +597237.27 5678994.19 100.00 +597237.29 5682991.50 100.00 +597237.34 5677601.92 101.25 +597237.75 5683654.72 100.00 +597237.89 5681293.25 97.50 +597238.28 5683000.06 100.00 +597238.35 5681427.12 97.50 +597238.42 5683605.10 100.25 +597238.53 5681470.75 98.75 +597238.59 5681843.29 97.50 +597238.59 5683664.98 100.00 +597238.65 5679080.78 100.00 +597239.13 5679436.57 100.00 +597239.17 5682038.09 98.75 +597239.31 5683837.67 98.50 +597239.45 5678715.56 102.50 +597239.65 5683722.50 98.75 +597239.90 5681066.65 98.75 +597239.92 5683543.84 100.00 +597239.99 5683558.48 100.00 +597240.57 5678315.03 101.25 +597240.80 5683786.05 98.75 +597240.87 5681853.02 97.50 +597241.33 5683597.54 100.00 +597241.90 5683770.12 98.75 +597242.21 5683421.45 98.75 +597242.25 5680728.51 98.75 +597242.65 5683048.87 100.00 +597242.67 5683830.20 98.75 +597242.79 5683846.26 98.75 +597242.93 5678548.75 102.50 +597242.96 5680064.14 100.00 +597243.15 5681862.76 97.50 +597243.63 5683698.71 100.00 +597243.88 5683616.18 100.00 +597243.94 5678305.62 101.25 +597244.42 5681490.68 98.75 +597244.54 5680130.16 100.00 +597244.62 5683660.06 100.00 +597244.79 5683679.52 100.00 +597244.80 5682055.03 100.00 +597244.88 5678838.50 101.25 +597245.09 5683408.01 98.75 +597245.49 5678988.71 100.00 +597245.53 5681463.90 98.75 +597246.11 5683710.73 98.75 +597246.17 5681433.28 97.50 +597247.06 5681871.95 97.50 +597247.32 5677601.34 101.25 +597247.38 5678296.24 101.25 +597247.80 5681294.32 97.50 +597248.15 5683564.05 100.00 +597248.26 5679440.62 100.00 +597248.34 5679078.65 100.00 +597248.75 5678719.11 102.50 +597249.02 5682039.78 98.75 +597249.04 5678540.91 102.50 +597249.14 5683725.64 98.75 +597249.48 5680721.60 98.75 +597249.54 5683542.08 100.00 +597249.61 5681068.44 98.75 +597249.93 5683790.12 98.75 +597250.45 5683599.90 100.00 +597250.65 5681605.26 95.00 +597250.87 5683774.52 98.75 +597250.87 5683835.58 98.75 +597250.95 5678286.91 101.25 +597251.09 5681881.10 97.50 +597251.88 5683423.97 98.75 +597252.33 5683844.07 98.75 +597252.53 5683047.39 100.00 +597252.54 5681457.05 98.75 +597252.74 5680065.50 100.00 +597252.96 5681614.26 95.00 +597253.29 5683617.01 100.00 +597253.35 5678982.65 100.00 +597253.43 5683700.39 100.00 +597254.07 5680127.41 100.00 +597254.11 5681491.89 98.75 +597254.20 5682058.37 100.00 +597254.38 5683411.41 98.75 +597254.40 5678841.52 101.25 +597254.66 5681596.32 95.00 +597254.68 5681437.76 97.50 +597254.71 5683680.40 100.00 +597254.83 5678532.81 102.50 +597255.12 5683715.06 98.75 +597256.27 5680714.26 98.75 +597256.71 5681586.79 95.00 +597256.98 5677603.68 101.25 +597257.07 5678279.01 101.25 +597257.39 5679444.67 100.00 +597257.71 5681295.40 97.50 +597257.72 5681576.93 95.00 +597257.82 5681888.35 97.50 +597257.90 5683565.58 100.00 +597257.91 5681566.95 95.00 +597257.95 5679076.16 100.00 +597258.06 5678722.66 102.50 +597258.08 5683553.10 100.50 +597258.18 5683729.89 98.75 +597258.68 5683604.32 100.00 +597258.87 5682041.47 98.75 +597259.09 5681604.19 94.50 +597259.31 5683793.57 98.75 +597259.31 5683542.45 100.00 +597259.33 5681070.17 98.75 +597260.28 5683777.49 98.75 +597260.62 5678524.71 102.50 +597261.02 5683612.35 100.00 +597261.21 5678976.59 100.00 +597261.43 5681617.37 95.00 +597261.43 5681453.16 98.75 +597261.46 5683426.72 98.75 +597262.25 5681559.07 95.00 +597262.42 5683046.61 100.00 +597262.66 5680065.73 100.00 +597262.90 5680706.78 98.75 +597262.94 5683703.35 100.00 +597263.18 5678271.11 101.25 +597263.36 5683415.81 98.75 +597263.60 5680124.66 100.00 +597263.66 5682061.58 100.00 +597263.90 5681492.38 98.75 +597263.93 5678844.55 101.25 +597264.44 5683718.65 98.75 +597264.61 5683681.34 100.00 +597264.65 5681438.14 97.50 +597265.46 5678516.12 102.50 +597265.58 5681894.26 97.50 +597265.63 5683692.72 100.50 +597266.49 5681871.57 98.75 +597266.52 5679448.72 100.00 +597266.69 5677605.90 101.25 +597267.11 5681570.12 94.30 +597267.14 5683734.27 98.75 +597267.52 5679073.51 100.00 +597267.58 5678725.54 102.50 +597267.63 5681296.44 97.50 +597267.68 5683566.88 100.00 +597268.26 5681592.52 95.00 +597268.31 5682044.42 98.75 +597268.56 5681612.05 95.00 +597268.64 5678506.69 102.50 +597268.95 5683795.94 98.75 +597269.04 5683544.11 100.00 +597269.07 5678970.52 100.00 +597269.07 5681864.42 98.75 +597269.13 5681071.45 98.75 +597269.41 5681880.50 98.75 +597269.53 5680699.30 98.75 +597269.65 5681602.40 95.00 +597270.18 5683778.89 98.75 +597270.35 5683431.28 98.75 +597270.62 5681449.82 98.75 +597271.18 5678497.10 102.50 +597271.34 5681583.41 95.00 +597271.58 5683629.81 98.75 +597271.68 5681559.11 95.00 +597272.06 5678266.59 101.25 +597272.20 5683420.47 98.75 +597272.35 5683047.74 100.00 +597272.58 5680065.95 100.00 +597272.65 5678487.25 102.50 +597272.81 5683704.06 100.00 +597273.06 5682064.88 100.00 +597273.06 5680121.70 100.00 +597273.45 5678847.57 101.25 +597273.68 5681492.87 98.75 +597273.73 5683722.29 98.75 +597273.75 5679455.53 100.00 +597274.01 5678447.56 102.50 +597274.13 5678477.40 102.50 +597274.17 5678457.52 102.50 +597274.33 5678467.47 102.50 +597274.37 5683683.30 100.00 +597274.63 5681438.43 97.50 +597274.74 5683635.29 98.75 +597275.04 5683740.40 98.75 +597275.35 5681896.35 97.50 +597275.54 5680691.32 98.75 +597276.30 5681574.76 95.00 +597276.48 5678438.07 102.50 +597276.64 5677606.78 101.25 +597277.09 5679070.86 100.00 +597277.14 5678728.35 102.50 +597277.23 5682048.92 98.75 +597277.24 5678964.92 100.00 +597277.47 5683549.12 100.00 +597277.55 5681297.43 97.50 +597277.55 5683567.04 100.00 +597277.65 5681655.47 97.50 +597278.08 5681566.09 95.00 +597278.32 5681884.59 98.75 +597278.57 5681665.01 97.50 +597278.79 5681864.70 98.75 +597278.87 5683797.06 98.75 +597278.94 5681071.58 98.75 +597279.25 5683435.83 98.75 +597280.08 5678428.79 102.50 +597280.09 5683779.25 98.75 +597280.38 5681449.01 98.75 +597280.80 5679462.60 100.00 +597280.83 5678854.15 101.25 +597280.89 5683627.80 98.75 +597280.94 5683425.31 98.75 +597280.95 5682071.00 100.00 +597281.03 5678262.19 101.25 +597281.32 5680683.17 98.75 +597282.06 5683049.68 100.00 +597282.12 5683727.71 98.75 +597282.26 5681673.68 97.50 +597282.31 5681647.18 97.50 +597282.44 5680118.47 100.00 +597282.44 5681470.17 99.00 +597282.49 5680066.18 100.00 +597282.65 5683702.98 100.00 +597282.67 5683746.85 98.75 +597283.46 5681493.45 98.75 +597283.68 5678419.50 102.50 +597284.13 5683685.25 100.00 +597284.27 5683555.85 100.00 +597284.49 5683637.44 98.75 +597284.60 5681438.70 97.50 +597285.13 5681898.44 97.50 +597285.87 5678960.01 100.00 +597286.04 5682564.34 100.00 +597286.15 5683564.57 100.00 +597286.16 5682053.41 98.75 +597286.36 5682574.10 100.00 +597286.59 5677607.65 101.25 +597286.66 5679068.21 100.00 +597286.69 5678731.16 102.50 +597286.89 5679470.51 100.00 +597287.10 5680675.01 98.75 +597287.39 5681299.02 97.50 +597287.41 5678410.27 102.50 +597287.57 5681888.15 98.75 +597287.72 5681639.44 97.50 +597288.12 5683440.43 98.75 +597288.35 5681867.33 98.75 +597288.46 5678860.53 101.25 +597288.62 5681679.81 97.50 +597288.76 5681070.52 98.75 +597288.86 5682554.77 100.00 +597288.86 5683797.29 98.75 +597288.87 5682077.07 100.00 +597289.08 5682583.36 100.00 +597289.31 5683754.19 98.75 +597289.79 5683429.91 98.75 +597289.79 5683733.90 98.75 +597290.00 5678257.79 101.25 +597290.02 5683778.16 98.75 +597290.14 5681448.13 98.75 +597290.78 5683629.03 98.75 +597290.90 5680113.47 100.00 +597291.20 5678401.06 102.50 +597291.24 5683053.62 100.00 +597291.38 5683698.45 100.00 +597291.85 5683690.62 100.00 +597292.41 5680066.19 100.00 +597292.52 5682545.50 100.00 +597292.93 5679478.47 100.00 +597293.23 5681494.04 98.75 +597294.13 5683640.05 98.75 +597294.24 5680668.05 98.75 +597294.29 5681436.42 97.50 +597294.31 5683762.72 98.75 +597294.89 5681900.60 97.50 +597294.92 5678956.49 100.00 +597295.29 5682057.47 98.75 +597295.53 5682374.20 100.00 +597295.66 5681634.07 97.50 +597295.70 5683741.96 98.75 +597295.76 5682364.22 100.00 +597295.87 5678392.46 102.50 +597295.98 5682354.24 100.00 +597296.13 5678734.31 102.50 +597296.23 5679065.56 100.00 +597296.31 5683772.51 98.75 +597296.51 5677606.64 101.25 +597296.55 5682536.37 100.00 +597296.70 5682589.81 100.00 +597296.76 5682383.96 100.00 +597296.79 5678866.05 101.25 +597296.86 5682083.06 100.00 +597296.99 5683445.03 98.75 +597297.19 5681300.83 97.50 +597297.46 5681888.84 98.75 +597297.66 5682526.54 100.00 +597297.92 5681682.07 97.50 +597298.03 5681869.32 98.75 +597298.17 5682516.57 100.00 +597298.47 5681072.32 98.75 +597298.85 5683797.52 98.75 +597298.97 5679486.42 100.00 +597298.97 5680107.70 100.00 +597299.04 5682506.63 100.00 +597299.13 5683433.47 98.75 +597299.43 5678254.51 101.25 +597299.82 5681446.66 98.75 +597299.89 5682393.44 100.00 +597300.42 5683057.56 100.00 +597300.56 5683631.08 98.75 +597300.92 5682497.03 100.00 +597301.56 5680661.24 98.75 +597301.60 5683750.02 98.75 +597301.82 5682346.45 100.00 +597302.29 5681490.41 98.75 +597302.33 5680065.98 100.00 +597303.02 5682402.92 100.00 +597303.07 5678385.58 102.50 +597303.72 5683642.85 98.75 +597303.80 5681657.08 97.75 +597303.96 5681433.96 97.50 +597304.04 5681629.73 97.50 +597304.41 5682061.54 98.75 +597304.55 5682595.91 100.00 +597304.63 5681902.85 97.50 +597304.82 5678955.79 100.00 +597304.94 5678871.82 101.25 +597305.03 5682088.76 100.00 +597305.06 5679494.34 100.00 +597305.53 5678737.61 102.50 +597306.09 5679066.72 100.00 +597306.14 5682412.40 100.00 +597306.37 5683448.30 98.75 +597306.42 5677605.39 101.25 +597306.71 5682488.90 100.00 +597306.91 5683758.42 98.75 +597306.95 5681302.80 97.50 +597307.10 5680102.01 100.00 +597307.11 5681879.60 98.50 +597307.27 5681680.96 97.50 +597307.35 5681889.53 98.75 +597307.68 5681868.34 98.75 +597308.18 5681074.14 98.75 +597308.23 5682338.81 100.00 +597308.47 5683437.03 98.75 +597308.78 5683796.41 98.75 +597308.79 5678251.12 101.25 +597308.82 5681449.52 98.75 +597308.89 5680654.44 98.75 +597309.26 5682421.89 100.00 +597309.60 5683061.50 100.00 +597310.27 5678378.71 102.50 +597310.42 5683632.67 98.75 +597310.69 5683767.67 98.75 +597310.97 5681485.91 98.75 +597311.27 5679502.16 100.00 +597311.86 5682480.49 100.00 +597312.25 5680065.76 100.00 +597312.38 5682431.37 100.00 +597312.94 5678877.81 101.25 +597313.29 5681437.48 97.50 +597313.38 5681627.63 97.50 +597313.45 5683645.13 98.75 +597313.47 5682600.39 100.00 +597313.54 5682065.60 98.75 +597313.70 5682093.71 100.00 +597313.76 5682470.69 100.00 +597314.30 5681902.33 97.50 +597314.35 5682330.92 100.00 +597314.40 5682441.09 100.00 +597314.72 5678955.10 100.00 +597314.92 5678740.91 102.50 +597315.36 5680096.53 100.00 +597315.51 5682451.01 100.00 +597315.59 5681676.40 97.50 +597315.66 5682460.89 100.00 +597315.75 5681414.88 97.50 +597315.95 5679067.87 100.00 +597316.01 5677602.67 101.25 +597316.07 5683450.70 98.75 +597316.18 5681306.57 97.50 +597316.28 5680203.61 98.75 +597316.46 5681877.12 98.50 +597316.78 5681405.12 97.50 +597316.99 5678371.38 102.50 +597317.04 5681865.06 98.75 +597317.07 5683774.69 98.75 +597317.16 5678245.65 101.25 +597317.24 5681890.21 98.75 +597317.32 5681454.22 98.75 +597317.75 5680649.88 98.75 +597317.91 5681075.86 98.75 +597318.06 5683439.41 98.75 +597318.07 5681479.41 98.75 +597318.10 5683225.74 100.00 +597318.24 5679509.19 100.00 +597318.77 5683796.59 98.75 +597318.78 5683065.44 100.00 +597319.21 5682101.43 100.00 +597319.31 5680195.58 98.75 +597320.00 5679013.85 101.00 +597320.33 5683633.90 98.75 +597320.66 5683217.57 100.00 +597320.94 5678883.81 101.25 +597321.00 5682323.53 100.00 +597321.36 5681423.00 97.50 +597321.40 5681630.86 97.50 +597321.65 5682130.57 100.00 +597322.04 5680067.09 100.00 +597322.39 5682604.87 100.00 +597322.56 5681441.19 97.50 +597322.58 5682110.78 100.00 +597322.64 5682069.75 98.75 +597323.06 5682120.69 100.00 +597323.11 5680210.75 98.75 +597323.20 5683647.31 98.75 +597323.21 5678363.61 102.50 +597323.33 5682140.24 100.00 +597323.50 5681471.48 98.75 +597323.52 5681461.81 98.75 +597323.61 5681671.17 97.50 +597323.63 5680091.04 100.00 +597323.91 5681899.58 97.50 +597324.31 5681406.11 97.50 +597324.31 5678744.22 102.50 +597324.54 5678955.28 100.00 +597324.76 5680187.33 98.75 +597324.92 5677598.36 101.25 +597325.42 5681310.34 97.50 +597325.52 5678240.18 101.25 +597325.80 5679069.12 100.00 +597325.82 5681874.63 98.50 +597325.84 5683452.54 98.75 +597326.08 5681861.08 98.75 +597326.08 5683778.81 98.75 +597326.09 5682149.83 100.00 +597326.31 5679515.08 100.00 +597326.53 5683230.38 100.00 +597326.74 5681887.38 98.75 +597326.75 5680645.53 98.75 +597327.67 5681077.41 98.75 +597327.96 5683069.37 100.00 +597328.03 5683439.99 98.75 +597328.11 5680073.44 100.00 +597328.39 5680082.51 100.00 +597328.46 5682316.90 100.00 +597328.65 5681637.12 97.50 +597328.76 5683796.82 98.75 +597329.27 5681429.01 97.50 +597329.43 5678355.83 102.50 +597329.44 5683216.98 100.00 +597329.51 5678888.81 101.25 +597329.79 5681663.86 97.50 +597329.92 5681447.88 97.50 +597330.25 5683635.15 98.75 +597330.77 5682158.56 100.00 +597331.39 5682609.19 100.00 +597331.66 5682074.04 98.75 +597332.35 5680213.48 98.75 +597332.52 5681456.94 97.50 +597333.15 5683648.21 98.75 +597333.32 5677592.94 101.25 +597333.40 5681896.42 97.50 +597333.43 5681316.25 97.50 +597333.50 5681466.86 97.50 +597333.71 5678747.52 102.50 +597333.73 5680183.78 98.75 +597333.88 5678234.72 101.25 +597334.03 5681405.33 97.50 +597334.10 5678957.97 100.00 +597334.15 5681386.25 97.50 +597334.58 5681855.97 98.75 +597334.70 5681870.89 98.50 +597335.07 5678347.64 102.50 +597335.30 5681396.00 97.50 +597335.41 5681476.65 97.50 +597335.50 5678596.30 103.75 +597335.64 5679070.41 100.00 +597335.64 5677736.59 101.25 +597335.69 5680641.06 98.75 +597335.69 5683781.54 98.75 +597335.81 5679516.73 100.00 +597335.83 5683452.54 98.75 +597335.83 5681643.45 97.50 +597335.84 5683232.98 100.00 +597335.91 5682310.26 100.00 +597336.05 5678586.55 103.75 +597336.11 5682166.99 100.00 +597336.25 5681884.54 98.75 +597336.27 5681656.80 97.50 +597336.78 5677726.83 101.25 +597336.98 5681434.17 97.50 +597337.32 5681486.45 97.50 +597337.33 5677746.44 101.25 +597337.37 5683072.71 100.00 +597337.42 5681078.95 98.75 +597337.48 5678576.71 103.75 +597338.01 5683440.57 98.75 +597338.55 5683798.66 98.75 +597338.63 5681377.78 97.50 +597338.67 5678892.81 101.25 +597338.92 5678566.86 103.75 +597339.01 5678605.61 103.75 +597339.02 5677717.09 101.25 +597339.03 5677756.29 101.25 +597339.07 5683217.88 100.00 +597339.97 5678556.96 103.75 +597340.15 5683636.48 98.75 +597340.28 5681323.23 97.50 +597340.41 5678339.24 102.50 +597340.42 5682078.84 98.75 +597340.43 5682613.43 100.00 +597340.72 5677766.13 101.25 +597340.97 5678547.06 103.75 +597341.27 5677707.35 101.25 +597341.46 5682175.42 100.00 +597341.76 5677587.59 101.25 +597341.97 5678537.16 103.75 +597342.06 5680215.33 98.75 +597342.53 5678614.92 103.75 +597342.60 5677775.95 101.25 +597342.62 5678229.89 101.25 +597342.87 5681893.21 97.50 +597342.92 5681649.91 97.50 +597343.10 5678750.82 102.50 +597343.10 5683649.11 98.75 +597343.18 5680180.87 98.75 +597343.31 5682303.56 100.00 +597343.38 5681866.60 98.50 +597343.65 5678960.65 100.00 +597343.70 5681852.18 98.75 +597343.99 5678527.43 103.75 +597344.37 5680636.11 98.75 +597344.49 5677785.76 101.25 +597345.16 5683235.58 100.00 +597345.35 5681880.75 98.75 +597345.43 5683783.72 98.75 +597345.48 5679071.51 100.00 +597345.69 5681331.57 97.50 +597345.76 5678330.84 102.50 +597345.76 5683451.54 98.75 +597345.76 5679516.60 100.00 +597345.95 5681371.00 97.50 +597346.04 5678624.23 103.75 +597346.16 5678517.72 103.75 +597346.19 5678497.88 103.75 +597346.26 5681430.52 97.50 +597346.32 5678487.94 103.75 +597346.38 5677795.57 101.25 +597346.49 5678507.83 103.75 +597346.56 5677698.91 101.25 +597346.81 5682183.85 100.00 +597346.88 5683075.79 100.00 +597346.90 5678478.01 103.75 +597347.08 5681081.03 98.75 +597347.47 5678468.07 103.75 +597347.83 5678896.82 101.25 +597347.93 5683440.12 98.75 +597348.28 5678458.18 103.75 +597348.30 5683800.84 98.75 +597348.68 5683218.93 100.00 +597349.16 5682083.69 98.75 +597349.28 5677805.12 101.25 +597349.46 5682617.67 100.00 +597350.06 5683637.81 98.75 +597350.36 5677582.51 101.25 +597350.71 5682296.85 100.00 +597350.98 5678448.60 103.75 +597351.11 5678322.44 102.50 +597351.11 5681887.63 97.50 +597351.42 5678225.15 101.25 +597351.56 5680218.08 98.75 +597352.01 5682192.36 100.00 +597352.05 5681515.79 98.75 +597352.29 5677814.65 101.25 +597352.31 5678631.84 103.75 +597352.63 5681338.45 97.50 +597352.63 5680177.96 98.75 +597352.91 5678752.51 102.50 +597353.05 5683650.01 98.75 +597353.06 5680631.16 98.75 +597353.14 5678963.57 100.00 +597353.47 5681850.97 98.75 +597353.67 5678439.02 103.75 +597353.82 5677692.23 101.25 +597354.07 5681876.02 98.75 +597354.18 5681365.39 97.50 +597354.47 5683238.18 100.00 +597355.29 5683785.36 98.75 +597355.30 5677824.17 101.25 +597355.30 5679070.04 100.00 +597355.47 5682090.94 98.75 +597355.53 5679514.50 100.00 +597355.66 5683450.22 98.75 +597355.76 5681427.49 97.50 +597356.38 5683078.86 100.00 +597356.46 5678314.04 102.50 +597356.71 5681083.24 98.75 +597356.72 5682201.16 100.00 +597356.83 5678901.16 101.25 +597356.88 5681346.47 97.50 +597357.07 5678429.67 103.75 +597357.55 5682623.48 100.00 +597357.60 5681356.18 97.50 +597357.78 5683438.43 98.75 +597358.10 5682290.15 100.00 +597358.21 5683802.06 98.75 +597358.24 5683220.41 100.00 +597358.24 5677576.56 101.25 +597358.31 5677833.70 101.25 +597358.83 5681867.69 98.75 +597358.99 5681881.54 97.50 +597359.06 5678639.15 103.75 +597359.14 5682100.16 98.75 +597359.60 5681858.04 98.75 +597359.66 5678219.57 101.25 +597360.01 5683637.05 98.75 +597360.50 5678420.33 103.75 +597360.98 5677843.33 101.25 +597361.05 5680220.82 98.75 +597361.70 5682109.82 98.75 +597361.70 5682209.82 100.00 +597361.85 5681515.58 98.75 +597361.96 5677686.45 101.25 +597361.96 5680626.63 98.75 +597362.19 5678305.92 102.50 +597362.36 5680176.32 98.75 +597362.39 5678755.11 102.50 +597362.52 5678966.83 100.00 +597362.93 5679508.06 100.00 +597363.04 5683650.39 98.75 +597363.21 5683242.29 100.00 +597363.33 5682119.67 98.75 +597363.56 5677852.98 101.25 +597364.26 5682282.33 100.00 +597364.49 5681337.70 98.75 +597364.68 5678411.47 103.75 +597364.81 5677569.04 101.25 +597364.83 5682129.55 98.75 +597365.12 5679068.57 100.00 +597365.14 5681873.65 97.50 +597365.15 5683787.00 98.75 +597365.47 5682629.56 100.00 +597365.49 5681425.93 97.50 +597365.57 5683448.89 98.75 +597365.89 5683081.94 100.00 +597366.05 5678904.97 101.25 +597366.13 5677862.63 101.25 +597366.20 5681085.89 98.75 +597366.54 5682139.36 98.75 +597366.55 5678112.58 101.25 +597366.74 5678645.26 103.75 +597366.81 5682218.39 100.00 +597366.93 5678122.56 101.25 +597367.62 5683436.73 98.75 +597367.80 5683221.89 100.00 +597367.97 5678214.17 101.25 +597368.15 5683803.16 98.75 +597368.35 5678132.43 101.25 +597368.48 5678298.20 102.50 +597368.71 5677872.29 101.25 +597369.87 5682274.11 100.00 +597369.97 5683636.22 98.75 +597370.02 5679501.02 100.00 +597370.14 5678142.26 101.25 +597370.31 5677680.96 101.25 +597370.89 5680221.53 98.75 +597371.02 5678760.08 102.50 +597371.12 5680622.62 98.75 +597371.25 5681865.74 97.50 +597371.51 5682148.03 98.75 +597371.57 5681515.10 98.75 +597371.57 5677561.70 101.25 +597371.71 5678404.42 103.75 +597371.87 5678970.15 100.00 +597371.89 5683246.56 100.00 +597371.93 5682226.96 100.00 +597372.15 5680174.95 98.75 +597372.20 5677881.63 101.25 +597372.75 5678105.03 101.25 +597373.03 5683650.76 98.75 +597373.09 5681342.14 98.75 +597373.39 5682635.63 100.00 +597373.80 5678151.23 101.25 +597373.84 5682264.95 100.00 +597373.88 5679492.07 100.00 +597374.94 5679067.10 100.00 +597375.00 5683788.64 98.75 +597375.32 5681089.69 98.75 +597375.44 5678908.41 101.25 +597375.46 5681425.93 97.50 +597375.49 5683447.75 98.75 +597375.50 5678291.17 102.50 +597375.51 5678649.97 103.75 +597375.57 5682236.17 100.00 +597375.65 5683083.51 100.00 +597376.01 5677890.87 101.25 +597376.47 5682156.70 98.75 +597376.51 5683225.97 100.00 +597376.65 5679482.48 100.00 +597377.22 5678210.42 101.25 +597377.27 5681857.76 97.50 +597377.47 5683435.04 98.75 +597377.53 5682255.72 100.00 +597378.13 5683803.48 98.75 +597378.28 5682245.77 100.00 +597378.74 5678397.38 103.75 +597378.99 5677676.23 101.25 +597379.13 5677555.17 101.25 +597379.53 5681509.38 98.75 +597379.55 5678097.71 101.25 +597379.59 5678765.12 102.50 +597379.82 5677900.10 101.25 +597379.96 5683635.76 98.75 +597380.11 5678158.97 101.25 +597380.28 5680618.62 98.75 +597380.33 5679473.22 100.00 +597380.76 5680221.97 98.75 +597380.98 5678974.09 100.00 +597381.06 5683249.62 100.00 +597381.28 5682641.73 100.00 +597381.94 5680173.58 98.75 +597382.16 5683240.24 100.50 +597382.23 5681345.61 98.75 +597382.39 5681096.22 98.75 +597382.47 5682164.42 98.75 +597382.84 5678284.44 102.50 +597383.01 5683651.17 98.75 +597383.28 5681849.78 97.50 +597383.86 5677909.23 101.25 +597384.28 5678654.68 103.75 +597384.46 5679464.12 100.00 +597384.79 5679066.06 100.00 +597384.82 5678911.84 101.25 +597384.93 5683788.10 98.75 +597384.98 5677547.21 101.25 +597385.12 5683230.38 100.00 +597385.40 5681426.47 97.50 +597385.43 5683446.73 98.75 +597385.63 5683083.74 100.00 +597385.77 5678390.34 103.75 +597385.92 5678167.09 101.25 +597386.30 5678206.30 101.25 +597386.82 5682650.04 100.00 +597387.35 5678771.36 102.50 +597387.35 5683433.54 98.75 +597387.67 5681504.06 98.75 +597388.12 5683803.70 98.75 +597388.48 5678093.33 101.25 +597388.58 5679455.02 100.00 +597388.69 5677673.86 101.25 +597388.72 5681103.79 98.75 +597388.79 5677917.92 101.25 +597389.20 5683632.93 98.75 +597389.22 5681841.73 97.50 +597389.50 5680614.77 98.75 +597390.02 5677538.59 101.25 +597390.09 5678978.04 100.00 +597390.27 5683252.58 100.00 +597390.34 5682170.55 98.75 +597390.63 5680222.18 98.75 +597391.37 5681349.08 98.75 +597391.40 5678175.44 101.25 +597391.63 5680171.63 98.75 +597392.13 5678280.73 102.50 +597392.36 5682658.34 100.00 +597392.70 5679445.93 100.00 +597392.99 5683651.63 98.75 +597393.04 5678659.39 103.75 +597393.40 5678383.98 103.75 +597393.76 5683234.71 100.00 +597394.18 5677926.30 101.25 +597394.22 5677529.54 101.25 +597394.35 5678914.82 101.25 +597394.55 5678200.75 101.25 +597394.72 5679065.95 100.00 +597394.88 5683787.12 98.75 +597395.02 5681833.59 97.50 +597395.11 5678777.60 102.50 +597395.29 5681427.71 97.50 +597395.38 5683445.71 98.75 +597395.62 5683083.97 100.00 +597396.10 5678184.23 101.25 +597396.20 5681110.24 98.75 +597396.84 5682667.25 100.00 +597397.24 5683432.05 98.75 +597397.31 5681502.23 98.75 +597397.56 5678089.16 101.25 +597397.67 5683627.63 98.75 +597397.79 5682177.20 98.75 +597397.95 5683801.98 98.75 +597398.10 5677520.33 101.25 +597398.41 5677671.58 101.25 +597398.73 5679438.07 100.00 +597398.77 5680611.01 98.75 +597399.53 5683255.37 100.00 +597399.64 5678980.46 100.00 +597400.03 5678458.10 105.00 +597400.23 5677934.25 101.25 +597400.32 5678193.28 101.25 +597400.36 5680220.46 98.75 +597400.46 5681352.67 98.75 +597400.97 5681825.61 97.50 +597400.97 5678276.08 102.50 +597401.09 5682676.28 100.00 +597401.25 5678467.96 105.00 +597401.30 5680169.55 98.75 +597401.31 5678377.95 103.75 +597401.85 5678664.01 103.75 +597402.15 5678784.63 102.50 +597402.42 5683239.01 100.00 +597402.59 5678477.82 105.00 +597402.98 5683652.08 98.75 +597403.57 5681116.81 98.75 +597403.73 5678448.87 105.00 +597403.92 5677512.24 101.25 +597404.03 5678917.29 101.25 +597404.12 5678487.64 105.00 +597404.65 5679065.84 100.00 +597404.81 5683786.04 98.75 +597405.19 5681428.52 97.50 +597405.25 5682183.86 98.75 +597405.32 5683444.69 98.75 +597405.33 5678082.99 101.25 +597405.38 5679430.62 100.00 +597405.54 5680064.54 100.00 +597405.57 5682685.19 100.00 +597405.59 5683083.61 100.00 +597406.10 5677942.32 101.25 +597406.25 5680073.67 100.00 +597406.29 5678497.34 105.00 +597406.33 5681504.19 98.75 +597406.57 5683623.10 98.75 +597407.12 5683430.55 98.75 +597407.28 5678429.72 105.00 +597407.43 5678439.64 105.00 +597407.77 5683800.11 98.75 +597407.85 5680606.88 98.75 +597408.38 5677670.84 101.25 +597408.55 5678507.01 105.00 +597408.89 5678419.97 105.00 +597408.98 5683256.64 100.00 +597409.03 5678791.83 102.50 +597409.22 5678371.91 103.75 +597409.27 5681356.89 98.75 +597409.46 5678981.97 100.00 +597409.66 5681820.66 97.50 +597409.70 5678516.89 105.00 +597409.76 5678271.31 102.50 +597409.90 5677504.23 101.25 +597410.13 5680218.98 98.75 +597410.35 5682693.96 100.00 +597410.38 5677951.35 101.25 +597410.41 5681123.94 98.75 +597410.72 5679422.26 100.00 +597410.73 5678668.52 103.75 +597410.84 5678526.77 105.00 +597410.90 5680167.24 98.75 +597410.96 5678536.71 105.00 +597411.08 5678546.65 105.00 +597411.18 5681974.53 97.50 +597411.19 5678556.60 105.00 +597411.67 5683241.07 100.00 +597412.38 5678566.42 105.00 +597412.71 5682190.51 98.75 +597412.83 5678076.38 101.25 +597412.85 5683653.38 98.75 +597413.13 5680060.43 100.00 +597413.47 5681738.28 97.50 +597413.72 5678919.76 101.25 +597413.80 5681964.89 97.50 +597413.81 5680079.92 100.00 +597414.01 5683616.84 98.75 +597414.33 5681132.89 98.75 +597414.44 5678576.15 105.00 +597414.58 5679065.73 100.00 +597414.59 5681983.80 97.50 +597414.66 5677960.37 101.25 +597414.70 5683784.62 98.75 +597414.90 5681508.97 98.75 +597414.91 5682983.30 100.00 +597415.07 5678412.35 105.00 +597415.10 5681427.44 97.50 +597415.12 5682702.73 100.00 +597415.26 5683443.66 98.75 +597415.39 5679413.43 100.00 +597415.53 5683082.62 100.00 +597416.13 5678364.82 103.75 +597416.42 5680601.74 98.75 +597416.49 5678585.88 105.00 +597416.73 5683428.10 98.75 +597416.84 5678797.94 102.50 +597417.52 5683797.94 98.75 +597417.70 5681142.17 98.75 +597417.83 5677498.38 101.25 +597417.85 5681993.23 97.50 +597418.08 5681361.12 98.75 +597418.34 5677670.09 101.25 +597418.64 5683256.22 100.00 +597418.76 5682974.62 100.00 +597418.86 5682991.61 100.00 +597418.92 5681817.64 97.50 +597419.12 5678267.86 102.50 +597419.14 5681957.09 97.50 +597419.27 5678983.47 100.00 +597419.60 5678673.02 103.75 +597419.98 5680218.14 98.75 +597420.01 5683608.84 98.75 +597420.06 5679404.60 100.00 +597420.24 5678594.86 105.00 +597420.29 5680164.16 98.75 +597420.33 5678069.78 101.25 +597420.52 5682002.86 97.50 +597421.28 5677967.77 101.25 +597421.28 5682195.56 98.75 +597421.33 5683241.55 100.00 +597421.60 5680085.87 100.00 +597422.44 5681733.94 97.50 +597422.49 5678357.17 103.75 +597422.59 5683655.58 98.75 +597422.60 5680057.88 100.00 +597422.88 5681150.57 98.75 +597422.97 5683599.52 98.75 +597423.14 5681514.15 98.75 +597423.27 5682012.46 97.50 +597423.41 5678407.44 105.00 +597423.50 5678921.53 101.25 +597423.93 5683780.79 98.75 +597424.06 5682707.18 100.00 +597424.22 5681696.07 98.75 +597424.40 5679066.11 100.00 +597424.48 5679395.65 100.00 +597424.79 5683440.72 98.75 +597425.00 5678803.65 102.50 +597425.00 5680596.61 98.75 +597425.01 5681426.34 97.50 +597425.47 5683081.63 100.00 +597425.58 5683589.88 98.75 +597425.97 5683424.29 98.75 +597426.11 5678602.88 105.00 +597426.39 5682021.95 97.50 +597426.72 5677493.85 101.25 +597426.89 5681365.35 98.75 +597427.05 5682969.30 100.00 +597427.28 5683795.76 98.75 +597427.38 5682995.47 100.00 +597427.83 5677673.15 101.25 +597428.15 5681158.93 98.75 +597428.20 5683257.17 100.00 +597428.21 5679358.20 100.00 +597428.34 5683580.27 98.75 +597428.42 5678264.25 102.50 +597428.50 5678677.48 103.75 +597428.58 5677974.56 101.25 +597428.74 5681956.40 97.50 +597428.82 5679386.65 100.00 +597428.88 5678349.55 103.75 +597428.90 5681817.07 97.50 +597429.02 5678064.89 101.25 +597429.12 5678984.56 100.00 +597429.48 5680091.69 100.00 +597429.59 5681521.53 98.75 +597429.69 5680161.07 98.75 +597429.83 5680217.31 98.75 +597430.11 5682200.23 98.75 +597430.19 5683243.92 100.00 +597431.05 5682030.55 97.50 +597431.10 5683570.67 98.75 +597431.37 5679377.11 100.00 +597432.03 5681732.68 97.50 +597432.11 5679367.32 100.00 +597432.27 5680056.95 100.00 +597432.34 5683657.79 98.75 +597432.44 5678610.44 105.00 +597432.84 5678404.57 105.00 +597433.00 5682711.64 100.00 +597433.15 5683776.92 98.75 +597433.48 5679070.14 100.00 +597433.49 5678921.75 101.25 +597433.54 5680591.41 98.75 +597433.54 5681167.21 98.75 +597433.70 5683898.13 98.75 +597433.89 5681694.88 98.75 +597433.95 5678807.94 102.50 +597434.08 5683561.13 98.75 +597434.25 5683437.53 98.75 +597434.33 5679350.31 100.00 +597434.92 5681425.22 97.50 +597435.19 5682134.66 97.50 +597435.21 5683420.48 98.75 +597435.24 5683082.61 100.00 +597435.47 5681370.03 98.75 +597435.59 5682124.68 97.50 +597435.60 5678342.21 103.75 +597436.05 5681528.91 98.75 +597436.08 5682144.37 97.50 +597436.19 5677492.63 101.25 +597436.50 5677980.65 101.25 +597436.56 5682966.24 100.00 +597437.03 5683793.58 98.75 +597437.22 5682997.14 100.00 +597437.25 5683250.53 100.00 +597437.36 5678259.78 102.50 +597437.37 5683551.75 98.75 +597437.43 5677675.82 101.25 +597437.47 5678681.79 103.75 +597437.56 5681960.96 97.50 +597437.75 5682037.97 97.50 +597437.78 5683258.20 100.00 +597437.82 5678060.15 101.25 +597437.97 5681940.48 97.50 +597438.41 5681948.95 97.50 +597438.71 5680093.33 100.00 +597438.79 5681818.09 97.50 +597438.95 5682204.90 98.75 +597439.05 5678984.79 100.00 +597439.05 5680157.90 98.75 +597439.16 5681175.34 98.75 +597439.69 5680216.47 98.75 +597439.77 5682116.00 97.50 +597440.45 5679342.42 100.00 +597440.57 5682153.29 97.50 +597440.62 5678616.10 105.00 +597440.93 5682717.63 100.00 +597441.49 5680585.35 98.75 +597441.59 5683661.43 98.75 +597441.72 5681536.91 98.75 +597441.98 5681733.28 97.50 +597442.07 5680056.98 100.00 +597442.33 5678334.87 103.75 +597442.35 5678402.54 105.00 +597442.53 5683773.48 98.75 +597442.55 5679074.17 100.00 +597442.65 5683413.87 98.75 +597443.08 5683432.85 98.75 +597443.09 5678811.88 102.50 +597443.11 5683543.56 98.75 +597443.38 5683895.65 98.75 +597443.48 5678921.98 101.25 +597443.52 5681695.49 98.75 +597443.97 5681374.84 98.75 +597444.16 5682045.62 97.50 +597444.66 5677986.34 101.25 +597444.77 5681183.47 98.75 +597444.85 5681425.06 97.50 +597444.88 5683085.25 100.00 +597445.01 5681934.89 97.50 +597445.62 5682107.90 97.50 +597445.87 5682962.65 100.00 +597445.97 5678254.71 102.50 +597446.05 5677494.22 101.25 +597446.07 5681966.19 97.50 +597446.29 5682161.28 97.50 +597446.44 5678686.10 103.75 +597446.57 5679334.53 100.00 +597446.81 5683791.54 98.75 +597446.85 5682999.79 100.00 +597447.20 5678057.00 101.25 +597447.28 5677677.50 101.25 +597447.30 5681952.87 97.50 +597448.27 5680154.32 98.75 +597448.39 5682207.98 98.75 +597448.51 5680093.20 100.00 +597448.54 5682724.10 100.00 +597448.64 5681819.78 97.50 +597448.80 5678621.76 105.00 +597448.94 5678985.57 100.00 +597449.05 5678327.53 103.75 +597449.43 5680579.28 98.75 +597449.55 5680215.84 98.75 +597449.61 5681542.52 98.75 +597449.93 5683407.03 98.75 +597449.96 5683536.63 98.75 +597450.32 5682099.13 97.50 +597450.38 5681191.60 98.75 +597450.43 5682053.40 97.50 +597450.62 5683665.72 98.75 +597450.92 5678397.70 105.00 +597451.59 5679078.26 100.00 +597451.72 5681735.12 97.50 +597451.86 5681700.66 98.75 +597451.88 5680057.01 100.00 +597451.91 5683428.17 98.75 +597452.28 5681379.96 98.75 +597452.30 5678815.63 102.50 +597452.45 5683772.72 98.75 +597452.69 5679326.64 100.00 +597453.06 5683893.18 98.75 +597453.45 5678921.66 101.25 +597453.70 5677990.61 101.25 +597453.70 5682167.98 97.50 +597454.45 5678249.41 102.50 +597454.49 5682090.05 97.50 +597454.54 5683087.70 100.00 +597454.80 5681425.75 97.50 +597454.93 5681970.80 97.50 +597454.96 5681935.05 97.50 +597455.08 5682958.77 100.00 +597455.40 5678690.41 103.75 +597455.49 5682061.95 97.50 +597455.58 5678320.03 103.75 +597455.73 5677496.69 101.25 +597456.12 5681199.64 98.75 +597456.15 5682730.57 100.00 +597456.23 5683003.18 100.00 +597456.66 5683790.12 98.75 +597456.95 5678054.81 101.25 +597457.08 5678627.20 105.00 +597457.10 5677679.36 101.25 +597457.16 5680572.95 98.75 +597457.21 5683400.19 98.75 +597457.22 5681953.59 97.50 +597457.48 5680150.74 98.75 +597457.50 5682080.55 97.50 +597458.04 5681547.53 98.75 +597458.09 5682210.41 98.75 +597458.17 5681817.45 97.50 +597458.31 5680093.42 100.00 +597458.43 5678391.21 105.00 +597458.75 5683531.88 98.75 +597458.81 5679318.75 100.00 +597458.82 5678986.53 100.00 +597458.99 5681707.30 98.75 +597459.43 5680215.61 98.75 +597459.64 5683670.01 98.75 +597459.84 5682070.94 97.50 +597460.06 5681385.88 98.75 +597460.22 5683422.66 98.75 +597460.57 5679082.50 100.00 +597461.23 5677996.95 101.25 +597461.29 5681737.87 97.50 +597461.63 5680057.75 100.00 +597461.87 5681207.67 98.75 +597461.94 5682173.30 97.50 +597461.98 5678817.97 102.50 +597462.11 5678312.52 103.75 +597462.43 5683772.25 98.75 +597462.65 5678243.73 102.50 +597462.69 5682737.99 100.00 +597462.74 5683890.70 98.75 +597463.42 5678920.86 101.25 +597463.84 5678382.87 105.00 +597464.05 5678695.33 103.75 +597464.12 5681974.69 97.50 +597464.29 5682954.89 100.00 +597464.53 5683087.92 100.00 +597464.54 5681937.88 97.50 +597464.56 5680566.23 98.75 +597464.58 5679310.60 100.00 +597464.68 5681427.05 97.50 +597465.28 5683394.31 98.75 +597465.47 5677498.38 101.25 +597465.62 5683006.43 100.00 +597465.77 5681714.39 98.75 +597466.63 5683790.84 98.75 +597466.64 5678629.94 105.00 +597466.70 5678052.67 101.25 +597466.88 5677681.38 101.25 +597467.02 5680148.60 98.75 +597467.17 5681954.28 97.50 +597467.54 5683527.14 98.75 +597467.60 5681548.44 98.75 +597467.62 5681215.71 98.75 +597467.68 5681814.35 97.50 +597467.80 5682212.72 98.75 +597467.89 5678004.38 101.25 +597468.11 5680093.65 100.00 +597468.12 5683675.27 98.75 +597468.13 5682746.37 100.00 +597468.32 5683416.80 98.75 +597468.48 5678988.74 100.00 +597468.72 5678305.08 103.75 +597469.19 5680214.03 98.75 +597469.26 5678374.53 105.00 +597469.32 5679292.61 100.00 +597469.75 5680181.29 98.50 +597469.76 5679086.01 100.00 +597470.11 5678237.07 102.50 +597470.15 5679302.31 100.00 +597470.18 5679282.88 100.00 +597470.32 5681742.11 97.50 +597471.35 5680058.99 100.00 +597471.37 5682176.61 97.50 +597471.65 5678820.32 102.50 +597471.96 5680559.51 98.75 +597472.37 5683773.23 98.75 +597472.46 5683888.43 98.75 +597472.56 5681390.58 97.50 +597472.60 5678700.40 103.75 +597472.78 5682755.21 100.00 +597472.93 5679273.28 100.00 +597473.38 5678920.06 101.25 +597473.42 5681223.71 98.75 +597473.43 5683388.53 98.75 +597473.49 5682951.00 100.00 +597473.64 5681720.24 98.75 +597473.78 5681976.88 97.50 +597474.31 5678011.80 101.25 +597474.32 5681939.79 97.50 +597474.52 5683088.15 100.00 +597474.62 5681427.52 97.50 +597475.43 5678366.76 105.00 +597475.45 5677497.86 101.25 +597475.47 5683521.23 98.75 +597475.56 5683007.37 100.00 +597475.64 5678297.94 103.75 +597475.89 5681394.32 97.50 +597476.17 5683410.66 98.75 +597476.20 5678632.67 105.00 +597476.48 5683680.75 98.75 +597476.52 5679263.96 100.00 +597476.59 5683791.59 98.75 +597476.69 5678052.90 101.25 +597476.71 5681545.29 98.75 +597476.75 5677682.95 101.25 +597476.88 5680147.93 98.75 +597477.06 5681955.66 97.50 +597477.25 5681811.46 97.50 +597477.34 5682764.09 100.00 +597477.57 5678230.42 102.50 +597477.77 5682213.07 98.75 +597477.85 5680094.56 100.00 +597478.10 5678991.19 100.00 +597478.95 5680212.44 98.75 +597479.25 5680552.67 98.75 +597479.30 5680076.03 100.50 +597479.30 5681746.43 97.50 +597479.35 5681231.61 98.75 +597479.62 5679087.24 100.00 +597480.10 5679254.64 100.00 +597480.74 5682180.08 97.50 +597480.89 5678519.37 106.25 +597481.08 5680060.22 100.00 +597481.15 5678509.61 106.25 +597481.16 5678705.48 103.75 +597481.33 5678822.66 102.50 +597481.59 5683382.75 98.75 +597481.70 5681725.58 98.75 +597481.86 5678529.27 106.25 +597481.97 5678539.20 106.25 +597482.30 5682772.76 100.00 +597482.30 5683774.33 98.75 +597482.36 5681389.15 97.50 +597482.37 5678359.69 105.00 +597482.40 5683887.32 98.75 +597482.53 5683514.16 98.75 +597482.56 5678290.79 103.75 +597482.70 5682947.12 100.00 +597482.96 5683403.34 98.75 +597483.34 5678919.27 101.25 +597483.46 5678015.28 101.25 +597483.63 5678548.80 106.25 +597483.68 5679245.31 100.00 +597483.73 5681977.81 97.50 +597483.90 5681424.06 97.50 +597484.18 5681941.40 97.50 +597484.25 5678500.16 106.25 +597484.50 5683088.38 100.00 +597484.83 5683686.24 98.75 +597484.84 5679235.48 100.00 +597485.23 5681239.54 98.75 +597485.34 5679225.50 100.00 +597485.35 5681396.81 97.50 +597485.40 5677497.90 101.25 +597485.47 5678997.74 100.00 +597485.51 5678636.08 105.00 +597485.53 5683007.95 100.00 +597485.61 5681541.17 98.75 +597485.76 5678224.72 102.50 +597485.91 5680545.21 98.75 +597486.25 5683309.90 98.75 +597486.30 5677682.71 101.25 +597486.43 5683793.37 98.75 +597486.62 5681958.48 97.50 +597486.68 5678053.13 101.25 +597486.75 5680147.26 98.75 +597486.82 5681808.57 97.50 +597487.05 5678490.62 106.25 +597487.18 5682216.30 98.75 +597487.34 5678558.03 106.25 +597487.45 5679215.81 100.00 +597487.47 5680096.27 100.00 +597487.60 5682781.22 100.00 +597488.04 5683302.57 98.75 +597488.26 5681750.79 97.50 +597488.35 5680209.77 98.75 +597488.91 5683506.53 98.75 +597488.98 5678480.87 106.25 +597489.14 5678711.35 103.75 +597489.17 5681248.60 98.75 +597489.47 5679088.48 100.00 +597489.48 5678283.64 103.75 +597490.09 5682183.58 97.50 +597490.24 5678471.00 106.25 +597490.30 5678353.70 105.00 +597490.37 5679206.26 100.00 +597490.39 5683378.62 98.75 +597490.82 5680061.29 100.00 +597490.91 5683397.50 98.75 +597491.16 5678824.18 102.50 +597491.18 5682942.00 100.00 +597491.37 5681725.31 98.75 +597491.41 5678461.13 106.25 +597492.08 5678566.74 106.25 +597492.11 5681387.42 97.50 +597492.26 5678011.63 101.25 +597492.26 5683775.13 98.75 +597492.28 5683888.48 98.75 +597492.54 5679004.72 100.00 +597492.56 5680537.76 98.75 +597492.67 5678451.26 106.25 +597492.74 5683692.31 98.75 +597492.90 5682789.69 100.00 +597492.97 5681534.73 98.75 +597493.11 5681257.66 98.75 +597493.27 5683497.71 98.75 +597493.30 5678918.40 101.25 +597493.54 5681421.79 97.50 +597493.58 5681979.37 97.50 +597494.08 5678441.41 106.25 +597494.12 5679197.02 100.00 +597494.15 5681940.83 97.50 +597494.23 5678219.42 102.50 +597494.34 5683086.64 100.00 +597494.59 5678640.14 105.00 +597494.61 5681399.76 97.50 +597494.72 5683315.19 98.75 +597494.99 5677677.79 101.25 +597495.31 5677499.20 101.25 +597495.35 5683487.93 98.75 +597495.49 5678431.57 106.25 +597495.52 5683008.18 100.00 +597495.65 5678275.79 103.75 +597495.91 5682221.16 98.75 +597496.26 5683795.14 98.75 +597496.33 5680100.45 100.00 +597496.39 5681805.68 97.50 +597496.42 5681958.87 97.50 +597496.42 5680148.98 98.75 +597496.54 5678051.73 101.25 +597496.55 5681853.97 97.50 +597496.62 5678717.92 103.75 +597497.12 5680205.20 98.75 +597497.45 5678575.07 106.25 +597497.57 5678003.61 101.25 +597497.67 5678347.08 105.00 +597497.91 5683303.01 98.75 +597498.14 5681751.83 97.50 +597498.15 5683478.41 98.75 +597498.23 5679187.92 100.00 +597498.35 5678422.24 106.25 +597499.08 5682935.89 100.00 +597499.13 5680530.22 98.75 +597499.18 5679087.93 100.00 +597499.27 5682187.51 97.50 +597499.66 5679011.63 100.00 +597499.72 5683392.78 98.75 +597499.77 5681720.73 98.75 +597500.04 5677993.92 101.25 +597500.21 5682796.09 100.00 +597500.21 5681528.12 98.75 +597500.28 5683698.87 98.75 +597500.29 5683377.25 98.75 +597500.57 5680062.26 100.00 +597500.58 5681406.86 97.50 +597500.92 5681415.72 97.50 +597501.04 5678825.47 102.50 +597501.11 5681384.25 97.50 +597501.14 5677984.00 101.25 +597501.50 5681861.45 97.50 +597501.82 5678267.95 103.75 +597502.14 5677974.06 101.25 +597502.16 5683890.01 98.75 +597502.23 5681847.73 97.50 +597502.23 5683775.81 98.75 +597502.62 5677671.37 101.25 +597502.67 5683469.50 98.75 +597502.73 5678214.14 102.50 +597503.25 5678917.46 101.25 +597503.26 5681981.79 97.50 +597503.36 5677964.19 101.25 +597503.43 5682227.67 98.75 +597503.44 5683320.08 98.75 +597503.54 5678413.75 106.25 +597503.68 5678644.17 105.00 +597503.76 5679179.73 100.00 +597503.95 5678724.63 103.75 +597504.11 5681940.26 97.50 +597504.17 5683084.86 100.00 +597504.18 5677502.47 101.25 +597504.39 5678339.74 105.00 +597504.45 5682927.51 100.00 +597504.62 5681712.20 98.75 +597505.02 5683005.68 100.00 +597505.51 5678580.91 106.25 +597505.61 5680522.61 98.75 +597505.76 5681375.70 97.50 +597505.89 5680200.64 98.75 +597505.96 5683797.49 98.75 +597506.04 5680100.63 100.00 +597506.06 5680151.19 98.75 +597506.12 5678049.42 101.25 +597506.16 5681803.70 97.50 +597506.38 5681958.51 97.50 +597507.00 5679018.32 100.00 +597507.29 5681521.34 98.75 +597507.41 5683305.43 98.75 +597507.81 5681750.50 97.50 +597507.88 5683705.36 98.75 +597508.19 5682192.01 97.50 +597508.34 5678260.41 103.75 +597508.36 5677955.54 101.25 +597508.75 5679085.26 100.00 +597508.78 5681703.36 98.75 +597508.81 5678405.32 106.25 +597508.83 5682801.14 100.00 +597509.06 5683390.70 98.75 +597509.20 5683462.37 98.75 +597509.29 5677663.95 101.25 +597509.44 5682918.86 100.00 +597509.44 5681366.50 97.50 +597510.21 5683376.21 98.75 +597510.33 5680063.24 100.00 +597510.33 5679172.21 100.00 +597510.39 5678732.21 103.75 +597510.61 5683885.96 98.75 +597510.73 5681865.13 97.50 +597510.86 5677509.90 101.25 +597510.91 5678826.76 102.50 +597511.10 5678332.41 105.00 +597511.25 5678208.92 102.50 +597511.86 5681849.66 97.50 +597511.94 5681356.92 97.50 +597511.98 5681694.08 98.75 +597512.07 5682232.59 98.75 +597512.09 5680514.99 98.75 +597512.15 5681985.95 97.50 +597512.20 5683775.19 98.75 +597512.20 5683324.88 98.75 +597513.07 5678647.46 105.00 +597513.19 5678916.52 101.25 +597513.47 5678042.65 101.25 +597513.56 5678586.75 106.25 +597513.83 5682909.89 100.00 +597513.88 5683082.62 100.00 +597513.93 5681938.82 97.50 +597514.13 5681514.30 98.75 +597514.31 5678397.03 106.25 +597514.33 5679025.01 100.00 +597514.37 5683002.16 100.00 +597514.76 5680196.28 98.75 +597515.10 5682199.06 97.50 +597515.13 5681744.28 97.50 +597515.26 5678253.22 103.75 +597515.36 5681684.91 98.75 +597515.57 5683800.24 98.75 +597515.74 5677656.32 101.25 +597515.78 5683711.48 98.75 +597515.80 5680152.16 98.75 +597515.84 5680100.36 100.00 +597515.98 5683310.57 98.75 +597516.06 5681802.24 97.50 +597516.32 5678323.96 105.00 +597516.36 5681958.74 97.50 +597516.38 5677950.70 101.25 +597516.83 5678739.80 103.75 +597516.87 5681348.78 97.50 +597516.98 5682806.91 100.00 +597517.22 5679165.02 100.00 +597517.71 5677517.17 101.25 +597517.80 5679081.28 100.00 +597518.12 5683459.50 98.75 +597518.56 5683879.90 98.75 +597518.57 5680507.38 98.75 +597519.00 5682901.37 100.00 +597519.00 5683391.66 98.75 +597519.29 5681992.94 97.50 +597519.78 5678203.69 102.50 +597519.92 5681868.93 97.50 +597519.97 5680064.88 100.00 +597520.10 5678035.29 101.25 +597520.20 5683376.43 98.75 +597520.24 5681931.88 97.50 +597520.61 5681506.97 98.75 +597520.78 5678828.05 102.50 +597520.92 5681853.81 97.50 +597520.95 5683329.71 98.75 +597520.97 5682237.13 98.75 +597521.33 5681736.48 97.50 +597521.45 5678315.44 105.00 +597521.55 5682206.68 97.50 +597521.61 5678592.59 106.25 +597521.65 5681677.38 98.75 +597522.17 5683774.57 98.75 +597522.18 5677648.68 101.25 +597522.21 5681922.32 97.50 +597522.26 5679030.74 100.00 +597522.43 5678391.39 106.25 +597522.45 5678650.74 105.00 +597522.80 5677525.62 101.25 +597523.15 5678915.59 101.25 +597523.31 5683079.33 100.00 +597523.47 5678248.43 103.75 +597523.70 5680192.06 98.75 +597523.82 5678746.88 103.75 +597523.92 5682999.21 100.00 +597523.98 5683717.01 98.75 +597524.48 5681912.66 97.50 +597524.55 5683315.71 98.75 +597524.91 5682893.36 100.00 +597524.97 5679158.72 100.00 +597525.02 5677954.37 101.25 +597525.16 5683803.03 98.75 +597525.27 5678026.75 101.25 +597525.29 5681344.55 97.50 +597525.49 5681955.21 97.50 +597525.50 5680099.10 100.00 +597525.52 5682000.73 97.50 +597525.66 5680151.52 98.75 +597525.95 5681800.78 97.50 +597526.37 5682809.48 100.00 +597526.42 5680501.24 98.75 +597526.47 5681499.10 98.75 +597526.59 5678306.93 105.00 +597526.69 5679076.85 100.00 +597526.88 5677534.74 101.25 +597527.19 5681728.43 97.50 +597527.31 5683875.17 98.75 +597527.95 5681669.86 98.75 +597528.02 5683460.87 98.75 +597528.30 5678198.47 102.50 +597528.58 5681873.89 97.50 +597528.61 5677641.04 101.25 +597528.91 5683392.83 98.75 +597529.11 5678384.32 106.25 +597529.38 5678598.80 106.25 +597529.48 5680067.22 100.00 +597529.69 5683334.56 98.75 +597529.70 5681858.56 97.50 +597529.84 5682212.05 97.50 +597529.87 5682241.68 98.75 +597530.12 5683377.35 98.75 +597530.19 5677962.84 101.25 +597530.22 5678018.07 101.25 +597530.72 5678828.73 102.50 +597530.81 5678753.96 103.75 +597531.17 5678655.34 105.00 +597531.18 5681905.91 97.50 +597531.53 5682008.71 97.50 +597531.55 5679034.23 100.00 +597531.90 5678298.52 105.00 +597532.12 5683773.58 98.75 +597532.39 5679152.11 100.00 +597532.52 5681491.41 98.75 +597532.57 5681720.04 97.50 +597532.64 5677542.90 101.25 +597532.70 5680187.99 98.75 +597532.79 5683076.19 100.00 +597532.95 5682887.44 100.00 +597533.10 5678914.69 101.25 +597533.15 5683320.79 98.75 +597533.29 5678246.66 103.75 +597533.29 5681349.63 97.50 +597533.55 5683719.89 98.75 +597533.55 5678375.55 106.25 +597533.58 5682997.05 100.00 +597533.80 5677972.16 101.25 +597534.20 5681950.34 97.50 +597534.35 5681424.33 97.50 +597534.47 5680495.31 98.75 +597534.68 5678009.13 101.25 +597534.72 5683805.96 98.75 +597534.85 5681662.90 98.75 +597534.92 5681881.53 97.50 +597535.01 5680096.72 100.00 +597535.34 5681797.52 97.50 +597535.54 5680151.20 98.75 +597535.58 5679072.43 100.00 +597535.87 5682017.69 97.50 +597535.87 5677634.31 101.25 +597535.87 5678365.88 106.25 +597535.99 5683870.27 98.75 +597536.05 5681710.87 97.50 +597536.27 5682810.83 100.00 +597536.32 5681681.49 97.50 +597536.38 5678505.80 107.50 +597536.52 5678192.80 102.50 +597536.62 5681415.73 97.50 +597536.73 5678515.63 107.50 +597536.85 5681691.23 97.50 +597537.13 5681924.62 97.25 +597537.20 5678604.95 106.25 +597537.21 5678290.11 105.00 +597537.58 5678495.89 107.50 +597537.80 5680072.20 100.00 +597537.83 5681358.38 97.50 +597537.87 5683462.53 98.75 +597537.96 5677981.22 101.25 +597538.03 5683340.00 98.75 +597538.05 5681701.11 97.50 +597538.13 5681863.90 97.50 +597538.17 5682247.16 98.75 +597538.23 5678356.21 106.25 +597538.25 5678760.53 103.75 +597538.33 5679144.07 100.00 +597538.40 5681368.27 97.50 +597538.48 5683395.72 98.75 +597538.48 5681899.17 97.50 +597538.64 5682216.78 97.50 +597539.05 5678525.34 107.50 +597539.09 5678486.06 107.50 +597539.36 5678660.98 105.00 +597539.46 5681484.47 98.75 +597539.51 5679040.01 100.00 +597539.63 5678000.51 101.25 +597539.81 5681889.87 97.50 +597539.84 5681378.05 97.50 +597539.97 5683379.04 98.75 +597540.07 5682026.76 97.50 +597540.24 5677548.41 101.25 +597540.35 5677990.54 101.25 +597540.36 5681431.83 97.50 +597540.65 5678829.36 102.50 +597541.00 5682881.51 100.00 +597541.11 5678346.69 106.25 +597541.33 5681672.88 97.50 +597541.65 5678534.94 107.50 +597541.72 5682036.53 97.50 +597541.76 5683325.87 98.75 +597541.86 5683771.54 98.75 +597541.97 5680184.53 98.75 +597542.23 5681656.48 98.75 +597542.32 5679065.48 100.00 +597542.41 5683073.50 100.00 +597542.54 5681944.96 97.50 +597542.55 5681387.52 97.50 +597542.59 5683723.94 98.75 +597542.73 5682046.47 97.50 +597542.75 5678476.77 107.50 +597542.76 5680489.78 98.75 +597542.98 5678244.37 103.75 +597543.05 5678913.79 101.25 +597543.57 5682996.98 100.00 +597543.89 5683809.91 98.75 +597544.11 5677628.65 101.25 +597544.24 5682056.34 97.50 +597544.27 5679136.04 100.00 +597544.33 5683864.75 98.75 +597544.36 5681871.59 97.50 +597544.42 5678186.67 102.50 +597544.51 5680079.10 100.00 +597544.51 5680094.34 100.00 +597544.56 5681793.67 97.50 +597544.99 5679047.76 100.00 +597545.08 5678611.02 106.25 +597545.32 5681413.65 97.50 +597545.42 5680151.43 98.75 +597545.83 5682253.55 98.75 +597545.85 5683346.22 98.75 +597545.89 5681396.82 97.50 +597546.14 5678338.13 106.25 +597546.17 5682812.18 100.00 +597546.25 5678766.45 103.75 +597546.37 5678286.39 105.00 +597546.39 5681477.54 98.75 +597546.41 5678543.72 107.50 +597546.41 5678467.49 107.50 +597546.52 5681664.39 97.50 +597546.71 5682065.94 97.50 +597547.37 5678666.87 105.00 +597547.63 5679057.33 100.00 +597547.69 5683464.39 98.75 +597547.83 5682220.47 97.50 +597547.95 5683398.91 98.75 +597548.06 5681936.63 97.50 +597548.41 5681406.40 97.50 +597548.87 5683786.67 97.50 +597548.96 5681436.75 97.50 +597548.97 5681880.44 97.50 +597549.04 5682875.58 100.00 +597549.75 5683381.07 98.75 +597549.85 5680087.32 100.00 +597549.91 5677550.91 101.25 +597550.20 5679128.01 100.00 +597550.33 5683330.99 98.75 +597550.50 5681651.20 98.75 +597550.59 5678829.98 102.50 +597550.64 5683712.92 97.50 +597550.67 5678458.46 107.50 +597550.87 5683767.52 98.75 +597550.91 5682075.01 97.50 +597551.10 5683729.19 98.75 +597551.16 5678552.50 107.50 +597551.23 5680181.06 98.75 +597551.36 5678329.67 106.25 +597551.47 5683857.94 98.75 +597551.72 5680485.34 98.75 +597551.84 5683795.51 97.50 +597552.03 5683070.80 100.00 +597552.32 5678180.54 102.50 +597552.44 5678241.21 103.75 +597552.65 5682260.85 98.75 +597552.68 5677623.57 101.25 +597552.88 5681656.71 97.50 +597552.92 5683814.15 98.75 +597552.96 5678617.09 106.25 +597552.99 5678914.55 101.25 +597553.21 5681889.44 97.50 +597553.33 5681470.60 98.75 +597553.56 5682996.79 100.00 +597553.57 5681928.31 97.50 +597553.66 5683352.46 98.75 +597554.25 5681791.43 97.50 +597554.25 5678772.36 103.75 +597554.69 5680153.65 98.75 +597554.87 5679119.18 100.00 +597555.13 5678449.53 107.50 +597555.18 5678673.02 105.00 +597555.30 5678282.06 105.00 +597555.67 5681918.67 97.50 +597555.70 5681899.11 97.50 +597555.80 5683707.39 97.50 +597555.90 5682083.57 97.50 +597556.12 5682812.91 100.00 +597556.68 5683849.59 98.75 +597557.10 5683783.44 97.50 +597557.20 5681908.80 97.50 +597557.26 5683394.76 97.50 +597557.40 5683402.16 98.75 +597557.47 5683466.41 98.75 +597557.57 5682222.70 97.50 +597558.09 5683337.30 98.75 +597558.15 5678559.40 107.50 +597558.53 5683718.87 97.50 +597558.55 5678322.80 106.25 +597558.56 5682873.88 100.00 +597558.72 5683735.62 98.75 +597558.77 5681645.93 98.75 +597558.94 5678512.71 108.75 +597559.11 5682268.38 98.75 +597559.25 5683276.27 98.75 +597559.48 5683383.34 98.75 +597559.51 5683762.53 98.75 +597559.54 5679110.35 100.00 +597559.57 5683840.02 98.75 +597559.59 5678440.60 107.50 +597559.81 5681649.65 97.50 +597559.84 5677551.69 101.25 +597559.99 5678382.65 107.50 +597560.15 5680177.29 98.75 +597560.17 5683820.79 98.75 +597560.22 5678174.41 102.50 +597560.26 5681463.67 98.75 +597560.32 5678502.84 108.75 +597560.32 5683388.93 97.50 +597560.35 5678372.78 107.50 +597560.46 5683800.46 97.50 +597560.53 5678830.61 102.50 +597560.68 5680480.89 98.75 +597560.75 5678623.28 106.25 +597560.80 5681636.34 98.75 +597561.23 5678392.55 107.50 +597561.28 5678522.19 108.75 +597561.35 5683358.84 98.75 +597561.49 5683830.30 98.75 +597561.65 5683068.10 100.00 +597561.68 5677619.23 101.25 +597561.70 5678492.97 108.75 +597561.91 5678238.06 103.75 +597562.06 5682287.78 98.75 +597562.20 5678362.98 107.50 +597562.27 5682091.27 97.50 +597562.29 5682277.79 98.75 +597562.30 5680159.85 98.75 +597562.30 5682297.74 98.75 +597562.37 5678679.82 105.00 +597562.37 5683269.82 98.75 +597562.49 5678777.89 103.75 +597562.93 5678915.59 101.25 +597563.40 5682997.70 100.00 +597563.41 5678431.44 107.50 +597563.51 5678402.26 107.50 +597563.63 5682307.65 98.75 +597564.02 5683753.72 98.75 +597564.12 5681789.84 97.50 +597564.12 5680168.27 98.75 +597564.19 5683743.88 98.75 +597564.32 5678277.96 105.00 +597564.65 5678531.57 108.75 +597564.95 5682317.55 98.75 +597565.47 5678421.68 107.50 +597565.48 5678353.55 107.50 +597565.59 5678484.00 108.75 +597565.71 5683707.75 97.50 +597565.84 5683343.60 98.75 +597565.96 5678411.94 107.50 +597565.98 5678316.19 106.25 +597566.11 5682813.14 100.00 +597566.13 5678565.36 107.50 +597566.31 5679103.17 100.00 +597566.47 5683398.55 97.50 +597566.84 5683282.75 98.75 +597566.89 5683785.16 97.50 +597566.95 5683405.02 98.75 +597567.16 5683468.86 98.75 +597567.53 5682223.21 97.50 +597567.54 5682327.19 98.75 +597567.72 5683722.27 97.50 +597567.96 5681643.91 97.50 +597568.10 5678168.26 102.50 +597568.53 5678629.47 106.25 +597568.54 5682873.51 100.00 +597568.55 5678540.70 108.75 +597568.61 5681701.19 97.50 +597568.69 5678687.49 105.00 +597569.04 5683365.22 98.75 +597569.08 5678344.30 107.50 +597569.17 5681691.60 97.50 +597569.22 5683385.62 98.75 +597569.25 5683805.11 97.50 +597569.43 5680476.08 98.75 +597569.51 5677553.48 101.25 +597569.82 5683715.32 97.25 +597569.99 5683390.47 97.50 +597570.05 5681463.37 98.75 +597570.30 5677614.20 101.25 +597570.34 5682336.78 98.75 +597570.36 5678233.05 103.75 +597570.39 5678831.82 102.50 +597570.75 5682096.55 97.50 +597570.83 5678475.52 108.75 +597571.43 5681681.89 97.50 +597571.44 5678782.24 103.75 +597571.44 5683066.28 100.00 +597572.13 5681710.52 97.50 +597572.24 5683270.88 98.75 +597572.87 5678916.63 101.25 +597573.13 5682999.99 100.00 +597573.53 5678309.72 106.25 +597573.60 5683349.90 98.75 +597573.71 5678274.76 105.00 +597573.77 5679096.52 100.00 +597573.92 5681788.09 97.50 +597574.35 5678548.52 108.75 +597574.84 5683396.70 97.25 +597574.87 5683373.32 98.75 +597574.90 5682345.50 98.75 +597574.96 5678570.03 107.50 +597575.01 5678695.17 105.00 +597575.38 5678336.56 107.50 +597575.55 5683709.01 97.50 +597575.93 5683812.23 97.50 +597575.98 5678162.09 102.50 +597575.99 5683401.56 97.50 +597576.09 5682813.36 100.00 +597576.17 5678635.84 106.25 +597576.50 5683787.72 97.50 +597576.52 5683285.22 98.75 +597576.54 5681719.44 97.50 +597576.75 5683406.99 98.75 +597576.84 5683471.36 98.75 +597576.84 5678467.60 108.75 +597577.24 5681673.85 97.50 +597577.36 5681219.15 98.75 +597577.52 5682223.44 97.50 +597577.56 5681646.59 97.50 +597577.63 5683722.87 97.50 +597577.80 5681980.68 97.50 +597578.06 5680471.02 98.75 +597578.11 5678226.75 103.75 +597578.15 5681209.19 98.75 +597578.52 5682873.13 100.00 +597578.69 5681970.75 97.50 +597578.72 5677557.34 101.25 +597578.82 5677608.98 101.25 +597578.88 5681228.93 98.75 +597579.05 5681199.24 98.75 +597579.08 5683387.17 98.75 +597579.16 5681990.47 97.50 +597579.51 5683178.25 98.75 +597579.53 5683393.44 97.50 +597579.67 5683716.50 97.25 +597579.74 5683850.08 97.50 +597579.83 5682100.24 97.50 +597579.86 5681463.23 98.75 +597580.17 5678833.71 102.50 +597580.39 5678786.60 103.75 +597580.40 5681189.34 98.75 +597580.63 5683381.49 98.75 +597580.65 5683840.18 97.50 +597580.83 5682353.55 98.75 +597580.84 5682573.55 98.75 +597580.85 5682583.53 98.75 +597581.13 5680945.73 98.75 +597581.24 5683973.27 97.50 +597581.27 5683170.98 98.75 +597581.34 5678702.84 105.00 +597581.36 5683356.20 98.75 +597581.36 5683065.06 100.00 +597581.42 5681238.58 98.75 +597581.44 5679090.15 100.00 +597581.60 5680955.69 98.75 +597581.61 5683820.39 97.50 +597581.72 5681727.81 97.50 +597581.76 5681179.44 98.75 +597581.77 5681655.38 97.50 +597581.78 5681665.14 97.50 +597581.85 5681961.40 97.50 +597581.92 5683273.39 98.75 +597582.01 5683830.32 97.50 +597582.06 5681782.28 97.50 +597582.17 5680965.67 98.75 +597582.35 5678305.12 106.25 +597582.74 5680975.65 98.75 +597582.85 5683002.28 100.00 +597582.85 5678917.08 101.25 +597582.87 5678459.74 108.75 +597582.97 5678330.15 107.50 +597583.10 5678271.55 105.00 +597583.11 5678553.26 108.75 +597583.60 5681169.63 98.75 +597583.76 5682592.94 98.75 +597583.77 5678642.26 106.25 +597583.78 5678574.69 107.50 +597583.85 5678155.93 102.50 +597583.90 5683398.54 97.25 +597583.97 5680985.56 98.75 +597584.00 5680936.16 98.75 +597584.30 5677600.77 101.25 +597584.61 5681998.52 97.50 +597584.73 5683857.41 97.50 +597585.05 5681247.89 98.75 +597585.18 5682564.55 98.75 +597585.22 5680995.48 98.75 +597585.40 5683710.28 97.50 +597585.73 5683403.83 97.50 +597585.75 5678220.34 103.75 +597585.86 5681159.89 98.75 +597585.94 5681952.30 97.50 +597586.05 5683790.50 97.50 +597586.08 5682813.59 100.00 +597586.21 5683287.69 98.75 +597586.23 5677563.58 101.25 +597586.46 5683474.06 98.75 +597586.52 5680465.73 98.75 +597586.55 5683408.97 98.75 +597586.60 5681005.37 98.75 +597586.78 5678450.58 108.75 +597587.25 5682221.38 97.50 +597587.27 5681257.56 98.75 +597587.40 5680926.82 98.75 +597587.49 5683723.90 97.50 +597587.73 5683373.34 97.50 +597588.12 5681150.16 98.75 +597588.15 5683388.05 98.75 +597588.20 5681267.50 98.75 +597588.26 5678709.91 105.00 +597588.51 5682872.75 100.00 +597588.54 5681277.49 98.75 +597588.58 5677591.86 101.25 +597588.70 5683180.97 98.75 +597588.74 5682601.18 98.75 +597588.75 5681015.13 98.75 +597588.80 5682359.05 98.75 +597589.21 5683395.83 97.50 +597589.22 5683362.37 98.75 +597589.44 5678790.62 103.75 +597589.44 5681287.38 98.75 +597589.51 5683717.67 97.25 +597589.57 5679084.34 100.00 +597589.67 5681463.23 98.75 +597589.69 5682101.82 97.50 +597589.89 5683381.85 97.50 +597589.94 5678835.60 102.50 +597590.02 5681733.33 97.50 +597590.30 5677572.09 101.25 +597590.43 5681140.43 98.75 +597590.54 5677582.06 101.25 +597590.83 5678649.21 106.25 +597590.84 5678441.48 108.75 +597590.85 5681973.55 98.75 +597590.90 5681024.89 98.75 +597590.95 5678324.16 107.50 +597590.99 5683975.20 97.50 +597591.00 5678265.59 105.00 +597591.04 5681943.93 97.50 +597591.11 5678300.43 106.25 +597591.13 5683170.02 98.75 +597591.28 5683063.85 100.00 +597591.38 5678149.36 102.50 +597591.48 5682005.71 97.50 +597591.54 5678558.58 108.75 +597591.60 5683275.87 98.75 +597592.30 5681296.96 98.75 +597592.34 5678579.82 107.50 +597592.52 5680918.23 98.75 +597592.64 5683004.19 100.00 +597592.72 5682558.47 98.75 +597592.75 5681130.71 98.75 +597592.84 5678917.50 101.25 +597592.97 5683400.38 97.25 +597593.27 5678213.78 103.75 +597593.45 5678382.94 108.75 +597593.64 5681982.18 98.75 +597593.82 5681034.39 98.75 +597593.88 5683853.69 97.50 +597594.16 5678373.11 108.75 +597594.51 5680459.71 98.75 +597594.80 5678432.37 108.75 +597595.00 5679444.00 98.75 +597595.08 5681121.00 98.75 +597595.16 5681306.53 98.75 +597595.24 5683711.54 97.50 +597595.32 5678392.73 108.75 +597595.32 5683794.04 97.50 +597595.51 5683376.43 97.50 +597595.56 5683405.56 97.50 +597595.59 5683381.61 97.25 +597595.77 5683290.57 98.75 +597595.79 5678422.45 108.75 +597595.89 5682815.03 100.00 +597595.98 5678716.18 105.00 +597596.03 5683412.04 98.75 +597596.08 5683476.77 98.75 +597596.10 5679434.34 98.75 +597596.35 5679453.90 98.75 +597596.52 5678402.60 108.75 +597596.79 5678412.54 108.75 +597596.83 5678363.60 108.75 +597596.86 5683388.99 97.50 +597596.93 5682218.93 97.50 +597597.11 5683368.50 98.75 +597597.15 5678656.89 106.25 +597597.18 5682877.12 100.00 +597597.25 5681111.24 98.75 +597597.26 5683725.63 97.50 +597597.42 5682606.13 98.75 +597597.69 5679078.54 100.00 +597597.78 5680909.74 98.75 +597597.94 5682363.10 98.75 +597597.97 5681043.48 98.75 +597598.02 5681316.11 98.75 +597598.47 5681937.27 97.50 +597598.48 5683182.92 98.75 +597598.73 5678142.59 102.50 +597598.78 5681970.47 98.75 +597598.80 5678259.45 105.00 +597599.07 5678294.47 106.25 +597599.09 5681979.73 99.00 +597599.11 5683396.44 97.50 +597599.14 5681737.34 97.50 +597599.19 5681990.46 98.75 +597599.23 5678318.59 107.50 +597599.26 5681101.45 98.75 +597599.27 5678792.14 103.75 +597599.36 5683718.66 97.25 +597599.36 5679424.90 98.75 +597599.42 5682103.80 97.50 +597599.47 5681463.23 98.75 +597599.71 5679463.30 98.75 +597599.77 5678836.99 102.50 +597599.93 5682011.01 97.50 +597599.96 5678563.90 108.75 +597600.32 5682552.09 98.75 +597600.50 5683978.04 97.50 +597600.66 5678585.34 107.50 +597600.79 5678207.23 103.75 +597600.88 5683389.18 97.25 +597600.89 5681325.68 98.75 +597600.91 5678354.51 108.75 +597601.11 5683169.66 98.75 +597601.17 5683062.48 100.00 +597601.27 5681091.66 98.75 +597601.29 5683278.32 98.75 +597601.79 5681052.70 98.75 +597601.95 5683847.87 97.50 +597601.98 5683384.04 97.50 +597602.03 5683402.22 97.25 +597602.18 5680900.77 98.75 +597602.49 5680453.69 98.75 +597602.56 5683005.41 100.00 +597602.82 5678917.92 101.25 +597602.95 5681081.81 98.75 +597603.16 5679472.68 98.75 +597603.88 5678722.13 105.00 +597604.35 5678663.72 106.25 +597604.45 5683798.01 97.50 +597604.55 5681071.95 98.75 +597604.95 5681334.79 98.75 +597604.96 5681062.18 98.75 +597604.99 5678345.42 108.75 +597605.00 5683408.46 97.50 +597605.01 5683374.62 98.75 +597605.15 5683711.53 97.50 +597605.28 5683480.47 98.75 +597605.28 5683293.63 98.75 +597605.33 5683415.69 98.75 +597605.47 5681977.45 98.75 +597605.53 5682817.67 100.00 +597605.57 5682882.55 100.00 +597605.81 5679072.73 100.00 +597605.89 5681930.61 97.50 +597605.91 5680891.53 98.75 +597605.95 5678252.58 105.00 +597606.09 5678135.81 102.50 +597606.12 5678512.92 110.00 +597606.18 5683396.74 97.25 +597606.31 5682610.61 98.75 +597606.52 5682544.33 98.75 +597606.65 5682216.64 97.50 +597606.92 5678522.68 110.00 +597606.99 5679418.52 98.75 +597607.03 5681987.16 98.75 +597607.16 5683726.34 97.50 +597607.40 5682365.80 98.75 +597607.47 5678503.11 110.00 +597607.66 5678313.24 107.50 +597608.02 5678200.35 103.75 +597608.03 5678290.23 106.25 +597608.07 5678569.68 108.75 +597608.10 5683185.61 98.75 +597608.13 5682108.69 97.50 +597608.53 5682016.03 97.50 +597608.56 5681740.33 97.50 +597608.62 5680881.92 98.75 +597608.65 5679480.96 98.75 +597608.74 5678532.42 110.00 +597608.83 5678493.30 110.00 +597608.97 5683391.19 97.50 +597608.97 5678590.86 107.50 +597609.11 5678793.67 103.75 +597609.23 5683717.74 97.25 +597609.28 5681463.23 98.75 +597609.60 5681343.58 98.75 +597609.73 5678837.08 102.50 +597609.82 5683981.51 97.50 +597610.47 5680447.67 98.75 +597610.61 5683843.09 97.50 +597610.72 5678483.64 110.00 +597610.97 5683280.77 98.75 +597611.00 5683060.69 100.00 +597611.10 5683404.06 97.25 +597611.10 5683169.29 98.75 +597611.31 5680872.29 98.75 +597611.46 5678338.41 108.75 +597611.79 5682535.84 98.75 +597611.90 5678670.19 106.25 +597611.99 5683381.69 98.75 +597612.00 5678541.54 110.00 +597612.47 5683006.63 100.00 +597612.75 5678916.92 101.25 +597612.92 5678245.52 105.00 +597613.28 5678725.36 105.00 +597613.50 5678129.11 102.50 +597613.51 5681970.73 97.50 +597613.95 5680862.65 98.75 +597613.95 5679066.94 100.00 +597613.97 5683412.87 97.50 +597613.98 5683485.39 98.75 +597614.18 5683799.70 97.50 +597614.44 5683419.77 98.75 +597614.53 5679489.05 98.75 +597614.53 5681979.97 97.50 +597614.66 5678474.55 110.00 +597614.88 5683296.42 98.75 +597615.07 5683711.20 97.50 +597615.15 5678193.37 103.75 +597615.16 5682820.31 100.00 +597615.37 5681927.57 97.50 +597615.52 5682883.49 100.00 +597615.79 5682613.76 98.75 +597615.84 5678307.55 107.50 +597615.96 5683398.33 97.50 +597616.06 5678575.63 108.75 +597616.24 5678597.68 107.50 +597616.47 5682214.79 97.50 +597616.54 5678285.31 106.25 +597616.55 5682114.01 97.50 +597616.72 5681350.59 98.75 +597616.80 5679417.09 98.75 +597617.05 5682527.34 98.75 +597617.06 5681961.75 97.50 +597617.06 5683727.06 97.50 +597617.37 5682366.37 98.75 +597617.68 5682020.01 97.50 +597617.77 5678549.60 110.00 +597617.85 5683187.75 98.75 +597618.04 5683409.95 97.25 +597618.33 5680441.50 98.75 +597618.37 5683389.39 98.75 +597618.44 5681741.60 97.50 +597618.46 5680853.81 98.75 +597618.61 5678465.46 110.00 +597618.94 5678795.20 103.75 +597619.10 5683716.82 97.25 +597619.43 5683983.99 97.50 +597619.53 5678238.12 105.00 +597619.69 5678837.17 102.50 +597619.74 5683839.17 97.50 +597619.77 5678676.12 106.25 +597619.93 5678333.16 108.75 +597620.40 5679497.13 98.75 +597620.78 5683058.69 100.00 +597620.81 5683282.36 98.75 +597621.09 5683169.33 98.75 +597621.44 5681986.53 97.50 +597621.72 5678123.41 102.50 +597622.11 5679061.17 100.00 +597622.29 5678186.39 103.75 +597622.30 5681700.86 97.50 +597622.36 5683005.33 100.00 +597622.55 5678456.38 110.00 +597622.55 5681691.42 97.50 +597622.68 5678915.73 101.25 +597622.68 5683490.31 98.75 +597622.69 5678728.58 105.00 +597622.91 5683417.33 97.50 +597622.92 5683405.50 97.50 +597623.24 5683424.52 98.75 +597623.45 5678301.09 107.50 +597623.51 5678604.52 107.50 +597623.54 5681357.89 98.75 +597623.56 5680845.21 98.75 +597623.76 5681681.93 97.50 +597623.88 5678278.65 106.25 +597624.02 5681954.60 97.50 +597624.05 5678581.59 108.75 +597624.07 5683800.65 97.50 +597624.21 5682120.43 97.50 +597624.28 5682824.00 100.00 +597624.50 5683299.13 98.75 +597624.66 5678556.59 110.00 +597624.74 5681434.44 98.75 +597624.75 5683397.08 98.75 +597624.90 5683710.21 97.50 +597624.91 5681924.63 97.50 +597625.13 5681424.59 98.75 +597625.19 5682521.81 98.75 +597625.27 5682616.92 98.75 +597625.46 5682884.42 100.00 +597625.67 5683414.90 97.25 +597626.14 5678230.72 105.00 +597626.20 5680435.33 98.75 +597626.32 5682214.37 97.50 +597626.42 5681444.13 98.75 +597626.70 5678447.39 110.00 +597626.72 5679415.90 98.75 +597626.80 5682024.06 97.50 +597626.84 5683725.60 97.50 +597626.92 5679504.68 98.75 +597627.01 5681672.89 97.50 +597627.35 5682366.92 98.75 +597627.43 5678326.61 108.75 +597627.71 5683189.37 98.75 +597628.05 5681415.03 98.75 +597628.05 5681708.14 97.50 +597628.37 5681742.49 97.50 +597628.88 5678795.15 103.75 +597628.96 5683715.80 97.25 +597628.98 5678679.81 106.25 +597629.14 5681365.85 98.75 +597629.17 5683985.99 97.50 +597629.60 5683837.91 97.50 +597629.64 5678837.26 102.50 +597629.78 5678293.40 107.50 +597629.81 5679054.94 100.00 +597629.94 5678117.72 102.50 +597630.06 5678180.26 103.75 +597630.13 5681405.27 98.75 +597630.22 5678271.21 106.25 +597630.27 5681663.85 97.50 +597630.36 5683055.86 100.00 +597630.52 5681990.67 97.50 +597630.63 5683411.85 97.50 +597630.66 5680838.62 98.75 +597630.68 5683423.43 97.50 +597630.76 5683283.38 98.75 +597630.87 5681453.08 98.75 +597630.93 5678438.43 110.00 +597630.94 5678611.19 107.50 +597630.94 5681375.68 98.75 +597631.08 5683169.40 98.75 +597631.24 5678588.49 108.75 +597631.47 5683404.32 98.75 +597631.50 5683494.95 98.75 +597631.91 5681395.43 98.75 +597632.06 5682126.60 97.50 +597632.08 5683429.18 98.75 +597632.10 5678731.80 105.00 +597632.21 5682830.08 100.00 +597632.23 5683005.51 100.00 +597632.37 5678562.80 110.00 +597632.42 5681385.56 98.75 +597632.60 5678914.54 101.25 +597633.18 5681950.81 97.50 +597633.25 5678223.81 105.00 +597633.66 5683419.21 97.25 +597633.71 5681920.27 97.50 +597633.72 5679512.00 98.75 +597633.84 5682516.81 98.75 +597633.88 5678370.23 110.00 +597634.01 5683801.08 97.50 +597634.06 5680429.15 98.75 +597634.08 5683301.95 98.75 +597634.25 5678429.18 110.00 +597634.38 5682620.90 98.75 +597634.54 5683707.85 97.50 +597634.56 5678380.11 110.00 +597634.84 5678319.95 108.75 +597634.88 5678262.46 106.25 +597635.13 5682217.88 97.50 +597635.17 5678360.43 110.00 +597635.23 5678390.00 110.00 +597635.41 5682885.34 100.00 +597635.76 5682028.45 97.50 +597635.80 5679046.95 100.00 +597636.10 5678419.44 110.00 +597636.14 5678399.86 110.00 +597636.56 5679414.23 98.75 +597636.61 5683723.82 97.50 +597636.68 5678350.65 110.00 +597637.32 5678409.69 110.00 +597637.33 5682367.45 98.75 +597637.57 5683191.00 98.75 +597637.59 5678618.62 107.50 +597637.66 5681708.41 97.50 +597637.69 5681739.54 97.50 +597637.71 5678684.58 106.25 +597638.16 5678112.03 102.50 +597638.40 5681658.88 97.50 +597638.60 5683713.49 97.25 +597638.71 5678175.29 103.75 +597638.83 5678795.02 103.75 +597638.92 5683987.99 97.50 +597639.25 5678290.57 107.50 +597639.32 5683427.89 97.50 +597639.48 5683837.04 97.50 +597639.52 5680834.03 98.75 +597639.60 5678837.35 102.50 +597639.73 5683052.43 100.00 +597639.78 5683415.87 97.50 +597639.88 5681993.85 97.50 +597639.93 5678593.19 108.75 +597639.99 5682132.68 97.50 +597640.21 5681456.41 98.75 +597640.23 5682836.02 100.00 +597640.52 5679519.32 98.75 +597640.63 5678217.18 105.00 +597640.64 5680421.78 98.75 +597640.67 5683408.22 98.75 +597640.72 5683284.15 98.75 +597640.99 5683498.09 98.75 +597641.00 5683433.68 98.75 +597641.08 5683169.58 98.75 +597641.09 5678567.22 110.00 +597641.24 5678254.87 106.25 +597641.41 5678510.16 111.25 +597641.46 5681914.03 97.50 +597641.59 5678734.70 105.00 +597641.78 5679038.95 100.00 +597641.91 5682225.22 97.50 +597642.06 5683007.25 100.00 +597642.07 5683422.70 97.25 +597642.22 5678912.09 101.25 +597642.31 5678313.36 108.75 +597642.37 5678500.29 111.25 +597642.60 5681947.55 97.50 +597642.88 5682626.14 98.75 +597643.35 5683305.67 98.75 +597643.45 5682514.08 98.75 +597643.56 5678490.38 111.25 +597643.83 5681494.78 98.75 +597643.87 5683802.22 97.50 +597644.05 5683705.05 97.50 +597644.12 5678344.36 110.00 +597644.36 5678625.92 107.50 +597644.62 5681685.92 96.00 +597644.64 5680862.67 100.00 +597644.74 5678480.48 111.25 +597644.81 5682032.63 97.50 +597645.19 5682884.21 100.00 +597645.61 5680872.03 100.00 +597645.66 5678519.18 111.25 +597645.85 5681504.25 98.75 +597645.87 5681513.88 98.75 +597646.02 5681734.30 97.50 +597646.22 5680413.49 98.75 +597646.26 5678106.16 102.50 +597646.28 5679411.91 98.75 +597646.29 5683721.72 97.50 +597646.33 5678470.65 111.25 +597646.71 5678688.67 106.25 +597647.18 5681905.86 97.50 +597647.25 5681709.00 97.50 +597647.26 5682368.20 98.75 +597647.28 5681655.39 97.50 +597647.33 5679526.64 98.75 +597647.37 5678170.31 103.75 +597647.44 5682233.52 97.50 +597647.46 5678285.33 107.50 +597647.50 5683191.98 98.75 +597647.74 5681523.33 98.75 +597647.85 5678247.50 106.25 +597647.87 5679031.04 100.00 +597648.06 5680900.36 100.00 +597648.23 5678210.81 105.00 +597648.24 5683711.19 97.25 +597648.25 5680881.18 100.00 +597648.35 5680890.85 100.00 +597648.42 5682841.75 100.00 +597648.69 5680830.08 98.75 +597648.78 5678794.88 103.75 +597648.84 5683988.56 97.50 +597648.87 5683430.81 97.50 +597648.95 5683419.85 97.50 +597648.96 5678597.42 108.75 +597648.97 5678461.03 111.25 +597648.98 5683048.65 100.00 +597649.25 5682136.40 97.50 +597649.31 5680856.16 100.00 +597649.40 5683837.83 97.50 +597649.55 5681459.74 98.75 +597649.55 5678836.93 102.50 +597649.76 5681995.20 97.50 +597649.87 5683412.12 98.75 +597649.92 5678528.21 111.25 +597649.95 5681532.75 98.75 +597650.12 5678307.18 108.75 +597650.15 5683437.70 98.75 +597650.33 5683286.36 98.75 +597650.41 5678570.57 110.00 +597650.48 5683501.23 98.75 +597650.48 5683426.20 97.25 +597651.07 5683169.81 98.75 +597651.18 5682631.72 98.75 +597651.43 5678736.10 105.00 +597651.56 5681542.29 98.75 +597651.58 5678908.59 101.25 +597651.61 5678451.40 111.25 +597651.71 5683009.84 100.00 +597651.81 5680405.20 98.75 +597651.97 5678338.32 110.00 +597652.16 5678632.15 107.50 +597652.25 5681945.03 97.50 +597652.75 5683309.03 98.75 +597652.83 5682241.94 97.50 +597653.08 5682511.39 98.75 +597653.09 5681551.84 98.75 +597653.19 5681897.91 97.50 +597653.39 5683701.70 97.50 +597653.66 5683804.01 97.50 +597654.14 5679533.94 98.75 +597654.18 5680907.85 100.00 +597654.18 5682036.05 97.50 +597654.32 5678100.25 102.50 +597654.50 5679023.57 100.00 +597654.62 5681561.40 98.75 +597654.66 5678536.84 111.25 +597654.84 5682881.65 100.00 +597655.08 5678279.05 107.50 +597655.25 5678240.92 106.25 +597655.76 5683718.74 97.50 +597655.87 5681712.89 97.50 +597655.98 5679409.55 98.75 +597655.99 5678204.62 105.00 +597656.14 5678165.56 103.75 +597656.19 5681570.94 98.75 +597656.22 5682847.95 100.00 +597656.34 5678691.17 106.25 +597656.39 5682372.27 98.75 +597656.42 5681655.06 97.50 +597656.83 5678442.99 111.25 +597657.15 5683880.48 97.50 +597657.26 5680396.82 98.75 +597657.27 5680860.87 100.00 +597657.44 5683843.57 97.50 +597657.48 5683192.42 98.75 +597657.50 5680885.77 100.50 +597657.78 5681580.49 98.75 +597657.86 5683708.80 97.25 +597657.94 5678300.99 108.75 +597657.96 5683870.75 97.50 +597658.22 5683044.87 100.00 +597658.23 5683423.55 97.50 +597658.54 5678599.66 108.75 +597658.54 5680828.69 98.75 +597658.59 5682139.90 97.50 +597658.60 5683433.04 97.50 +597658.62 5678793.60 103.75 +597658.78 5683989.06 97.50 +597658.89 5681463.06 98.75 +597659.11 5682017.42 97.25 +597659.12 5683429.00 97.25 +597659.20 5683415.66 98.75 +597659.47 5682637.29 98.75 +597659.48 5678433.81 111.25 +597659.49 5678836.50 102.50 +597659.54 5683440.98 98.75 +597659.56 5681590.00 98.75 +597659.57 5678383.93 111.25 +597659.57 5683290.17 98.75 +597659.63 5681994.26 97.50 +597659.71 5678423.84 111.25 +597659.71 5678393.91 111.25 +597659.74 5678573.91 110.00 +597659.79 5681890.43 97.50 +597659.82 5678332.28 110.00 +597659.86 5678403.89 111.25 +597659.94 5678413.86 111.25 +597659.98 5683504.30 98.75 +597660.11 5678373.98 111.25 +597660.68 5681940.37 97.50 +597660.72 5678637.17 107.50 +597660.76 5682247.56 97.50 +597660.87 5678904.91 101.25 +597660.96 5679541.25 98.75 +597661.00 5679016.00 100.00 +597661.02 5678364.05 111.25 +597661.06 5683170.04 98.75 +597661.28 5678737.50 105.00 +597661.35 5681599.51 98.75 +597661.45 5683888.99 97.50 +597661.55 5683861.47 97.50 +597661.56 5683011.30 100.00 +597661.94 5678354.11 111.25 +597662.16 5678094.05 102.50 +597662.18 5680913.29 100.00 +597662.31 5678272.31 107.50 +597662.38 5683311.70 98.75 +597662.57 5678542.92 111.25 +597662.68 5680388.42 98.75 +597662.69 5683808.15 97.50 +597662.71 5682508.74 98.75 +597662.74 5683698.37 97.50 +597662.88 5678234.59 106.25 +597663.10 5681706.57 97.50 +597663.21 5683851.67 97.50 +597663.49 5682854.79 100.00 +597663.58 5682039.39 97.50 +597663.77 5680867.90 100.00 +597664.09 5678344.74 111.25 +597664.39 5682878.78 100.00 +597664.46 5681154.55 100.00 +597664.54 5681659.99 97.50 +597664.81 5678200.47 105.00 +597664.99 5678160.96 103.75 +597665.23 5683715.76 97.50 +597665.58 5679406.78 98.75 +597665.65 5681698.01 97.50 +597665.75 5678294.81 108.75 +597665.88 5681882.53 97.50 +597665.96 5678693.66 106.25 +597665.97 5681669.24 97.50 +597666.04 5681688.41 97.50 +597666.19 5681164.33 100.00 +597666.26 5681144.90 100.00 +597666.29 5682372.89 98.75 +597666.32 5678324.83 110.00 +597666.52 5681678.82 97.50 +597666.80 5679007.87 100.00 +597666.98 5681932.79 97.50 +597667.43 5679548.81 98.75 +597667.45 5683706.26 97.25 +597667.46 5683192.86 98.75 +597667.47 5683041.09 100.00 +597667.80 5683426.27 97.50 +597667.93 5683431.31 97.25 +597668.00 5683295.19 98.75 +597668.10 5680380.02 98.75 +597668.27 5682642.01 98.75 +597668.40 5678791.78 103.75 +597668.41 5683895.96 97.50 +597668.43 5681464.88 98.75 +597668.44 5683434.79 97.50 +597668.44 5678600.72 108.75 +597668.48 5680827.68 98.75 +597668.51 5682141.08 97.50 +597668.58 5683988.22 97.50 +597668.69 5681135.27 100.00 +597668.73 5683418.68 98.75 +597668.90 5681997.96 97.50 +597669.06 5680989.71 100.00 +597669.28 5683443.22 98.75 +597669.37 5680875.79 100.00 +597669.42 5678575.34 110.00 +597669.44 5678836.06 102.50 +597669.57 5678087.42 102.50 +597669.61 5678265.67 107.50 +597669.63 5682252.15 97.50 +597669.66 5682871.82 100.00 +597669.72 5678641.48 107.50 +597669.73 5683506.51 98.75 +597670.07 5681173.44 100.00 +597670.14 5682862.25 100.00 +597670.15 5678901.22 101.25 +597670.32 5681873.76 97.50 +597670.42 5680979.88 100.00 +597670.48 5678549.01 111.25 +597670.63 5678228.41 106.25 +597670.75 5680999.08 100.00 +597670.97 5680911.80 100.00 +597671.01 5678337.56 111.25 +597671.04 5683170.39 98.75 +597671.19 5678738.11 105.00 +597671.24 5681923.76 97.50 +597671.32 5681125.70 100.00 +597671.51 5683012.28 100.00 +597671.74 5683812.25 97.50 +597672.01 5683314.37 98.75 +597672.37 5683695.96 97.50 +597672.56 5679557.38 98.75 +597672.70 5682508.52 98.75 +597672.72 5678317.27 110.00 +597673.07 5679000.14 100.00 +597673.18 5681914.01 97.50 +597673.40 5682041.18 97.50 +597673.63 5680371.69 98.75 +597673.75 5681864.42 97.50 +597673.84 5678156.35 103.75 +597673.94 5681116.12 100.00 +597674.01 5681182.55 100.00 +597674.32 5678197.64 105.00 +597674.39 5680902.84 100.00 +597674.55 5680883.97 100.00 +597674.69 5683712.78 97.50 +597674.98 5681904.19 97.50 +597675.10 5683302.18 98.75 +597675.18 5679404.01 98.75 +597675.30 5680893.20 100.00 +597675.31 5678292.07 108.75 +597675.34 5681106.30 100.00 +597675.36 5678079.27 102.50 +597675.40 5678481.23 112.50 +597675.65 5678695.72 106.25 +597675.95 5681007.37 100.00 +597676.02 5683902.24 97.50 +597676.28 5682373.12 98.75 +597676.78 5681096.48 100.00 +597676.86 5678490.95 112.50 +597676.88 5681894.40 97.50 +597676.91 5683432.82 97.25 +597676.94 5679566.28 98.75 +597677.05 5683703.81 97.25 +597677.12 5683038.83 100.00 +597677.41 5683193.66 98.75 +597677.49 5681191.84 100.00 +597677.54 5682645.28 98.75 +597677.63 5683428.07 97.50 +597677.93 5678330.37 111.25 +597678.02 5678471.68 112.50 +597678.05 5683985.50 97.50 +597678.05 5680974.14 100.00 +597678.13 5681855.45 97.50 +597678.16 5678789.87 103.75 +597678.17 5682001.65 97.50 +597678.22 5678260.81 107.50 +597678.25 5683421.69 98.75 +597678.28 5683436.53 97.50 +597678.32 5681464.16 98.75 +597678.33 5681086.67 100.00 +597678.33 5678600.57 108.75 +597678.43 5682142.26 97.50 +597678.47 5680827.60 98.75 +597678.70 5678896.09 101.25 +597678.77 5678645.65 107.50 +597678.90 5678223.19 106.25 +597678.90 5678833.90 102.50 +597679.03 5683445.41 98.75 +597679.19 5680363.38 98.75 +597679.32 5678575.57 110.00 +597679.47 5683508.72 98.75 +597679.56 5682253.25 97.50 +597679.57 5679575.92 98.75 +597679.58 5678500.14 112.50 +597680.17 5678993.11 100.00 +597680.23 5681076.96 100.00 +597680.32 5678549.63 111.25 +597680.96 5681201.14 100.00 +597681.02 5683170.89 98.75 +597681.07 5678312.16 110.00 +597681.08 5678462.27 112.50 +597681.13 5678738.34 105.00 +597681.15 5678071.12 102.50 +597681.23 5681885.64 97.50 +597681.33 5683814.92 97.50 +597681.41 5683012.39 100.00 +597681.77 5683316.13 98.75 +597682.00 5683693.56 97.50 +597682.09 5683910.12 97.50 +597682.20 5679585.56 98.75 +597682.60 5678364.81 112.50 +597682.69 5682508.31 98.75 +597682.70 5678151.74 103.75 +597682.86 5679595.52 98.75 +597683.09 5681014.27 100.00 +597683.21 5682042.98 97.50 +597683.35 5678374.63 112.50 +597683.45 5680766.99 98.50 +597683.49 5678355.22 112.50 +597683.51 5679605.49 98.75 +597683.66 5680756.99 98.50 +597683.92 5683977.47 97.50 +597683.93 5681067.75 100.00 +597684.15 5678196.40 105.00 +597684.35 5678452.93 112.50 +597684.37 5683710.82 97.50 +597684.38 5681847.70 97.50 +597684.39 5681210.46 100.00 +597684.70 5678288.86 108.75 +597684.73 5680747.06 98.50 +597684.74 5680355.07 98.75 +597684.78 5679401.23 98.75 +597684.86 5678323.19 111.25 +597684.92 5683304.00 98.75 +597685.09 5679615.36 98.75 +597685.16 5678384.37 112.50 +597685.34 5683919.44 97.50 +597685.60 5678695.95 106.25 +597685.71 5680775.82 98.50 +597685.89 5683434.29 97.25 +597686.17 5682007.50 97.50 +597686.27 5682373.35 98.75 +597686.57 5678062.74 102.50 +597686.75 5679625.21 98.75 +597686.82 5678394.12 112.50 +597686.82 5680737.45 98.50 +597686.87 5683702.46 97.25 +597686.91 5678256.10 107.50 +597686.96 5681877.47 97.50 +597686.97 5678443.38 112.50 +597687.03 5683037.57 100.00 +597687.11 5681460.12 98.75 +597687.11 5678890.69 101.25 +597687.17 5680970.36 100.00 +597687.17 5683968.31 97.50 +597687.21 5681417.51 98.75 +597687.22 5678506.44 112.50 +597687.25 5683195.37 98.75 +597687.27 5678986.09 100.00 +597687.49 5682646.25 98.75 +597687.53 5683429.38 97.50 +597687.61 5678829.07 102.50 +597687.62 5678403.99 112.50 +597687.62 5681426.85 98.75 +597687.67 5678786.94 103.75 +597687.78 5681219.79 100.00 +597687.87 5683929.05 97.50 +597688.01 5683438.81 97.50 +597688.04 5683423.65 98.75 +597688.20 5678599.15 108.75 +597688.21 5681058.81 100.00 +597688.29 5678220.01 106.25 +597688.30 5678433.62 112.50 +597688.39 5682142.95 97.50 +597688.42 5678413.86 112.50 +597688.46 5680827.58 98.75 +597688.74 5678646.21 107.50 +597688.83 5683447.35 98.75 +597688.84 5678423.73 112.50 +597688.98 5683958.53 97.50 +597689.18 5681407.83 98.75 +597689.22 5678575.80 110.00 +597689.41 5683509.64 98.75 +597689.49 5682254.35 97.50 +597689.88 5678307.64 110.00 +597690.06 5683948.67 97.50 +597690.11 5683938.74 97.50 +597690.29 5678549.76 111.25 +597690.34 5679634.53 98.75 +597690.47 5681020.90 100.00 +597690.74 5680347.08 98.75 +597690.83 5678736.21 105.00 +597690.89 5678348.65 112.50 +597690.91 5683817.59 97.50 +597691.01 5683171.38 98.75 +597691.20 5683803.98 97.50 +597691.22 5681229.10 100.00 +597691.26 5683010.97 100.00 +597691.26 5678053.91 102.50 +597691.46 5678146.97 103.75 +597691.75 5683694.32 97.50 +597691.77 5683316.36 98.75 +597692.05 5681398.34 98.75 +597692.12 5680728.98 98.50 +597692.24 5682040.43 97.50 +597692.46 5681049.90 100.00 +597692.59 5681850.60 97.50 +597692.61 5681869.26 97.50 +597692.68 5682508.10 98.75 +597692.81 5682014.91 97.50 +597692.90 5681030.53 100.00 +597693.21 5681944.86 97.50 +597693.54 5680782.03 98.50 +597693.70 5678978.45 100.00 +597693.73 5678284.70 108.75 +597693.74 5681434.55 98.75 +597693.75 5678194.45 105.00 +597693.77 5681452.99 98.75 +597693.84 5679397.04 98.75 +597694.06 5678319.47 111.25 +597694.25 5683709.93 97.50 +597694.37 5683641.14 97.50 +597694.46 5681040.17 100.00 +597694.70 5681859.51 97.50 +597694.75 5683305.83 98.75 +597694.83 5683435.98 97.25 +597694.85 5678512.75 112.50 +597694.92 5681388.85 98.75 +597695.52 5678695.37 106.25 +597695.52 5678885.29 101.25 +597695.57 5682369.80 98.75 +597695.72 5683649.68 97.50 +597695.93 5678252.08 107.50 +597695.95 5678045.07 102.50 +597696.21 5681237.68 100.00 +597696.31 5678824.23 102.50 +597696.49 5681443.87 98.75 +597696.67 5683702.10 97.25 +597696.78 5680968.93 100.00 +597696.85 5679642.04 98.75 +597696.92 5680339.22 98.75 +597696.94 5683036.30 100.00 +597696.94 5683797.46 97.50 +597697.10 5683197.08 98.75 +597697.18 5678784.01 103.75 +597697.43 5682647.23 98.75 +597697.44 5680720.51 98.50 +597697.45 5683430.61 97.50 +597697.48 5682023.39 97.50 +597697.72 5683441.19 97.50 +597697.85 5678217.49 106.25 +597697.89 5683425.36 98.75 +597698.06 5678597.74 108.75 +597698.09 5680825.45 98.75 +597698.10 5682033.09 97.50 +597698.27 5681379.56 98.75 +597698.33 5683808.42 97.50 +597698.38 5682143.18 97.50 +597698.57 5678645.79 107.50 +597698.63 5683449.29 98.75 +597698.70 5678303.12 110.00 +597698.72 5678457.15 113.75 +597698.89 5681936.92 97.50 +597698.98 5678574.24 110.00 +597699.38 5683510.28 98.75 +597699.42 5682255.47 97.50 +597699.69 5678344.14 112.50 +597700.03 5678141.86 103.75 +597700.12 5678970.79 100.00 +597700.27 5678549.40 111.25 +597700.30 5678466.28 113.75 +597700.34 5681950.81 97.50 +597700.44 5678036.14 102.50 +597700.52 5678733.96 105.00 +597700.80 5683818.57 97.50 +597700.89 5683172.84 98.75 +597701.15 5683634.55 97.50 +597701.15 5683012.34 100.00 +597701.20 5681246.26 100.00 +597701.53 5683695.99 97.50 +597701.76 5683316.58 98.75 +597701.95 5682504.61 98.75 +597702.36 5681631.36 98.75 +597702.45 5680711.88 98.50 +597702.66 5678190.09 105.00 +597702.83 5679392.68 98.75 +597702.86 5678878.50 101.25 +597702.86 5678280.78 108.75 +597702.89 5681370.79 98.75 +597703.10 5680331.36 98.75 +597703.13 5680783.86 98.50 +597703.25 5678448.29 113.75 +597703.40 5678315.95 111.25 +597703.61 5679649.41 98.75 +597703.69 5683438.12 97.25 +597703.80 5678516.43 112.50 +597704.01 5678475.51 113.75 +597704.05 5678818.11 102.50 +597704.14 5683709.05 97.50 +597704.47 5682365.26 98.75 +597704.60 5683307.10 98.75 +597704.71 5678027.10 102.50 +597704.96 5678248.06 107.50 +597705.30 5683651.83 97.50 +597705.42 5678694.47 106.25 +597706.42 5683703.89 97.25 +597706.46 5683033.75 100.00 +597706.55 5678364.76 113.75 +597706.65 5680969.98 100.00 +597706.69 5678781.08 103.75 +597706.80 5683872.45 97.50 +597706.83 5683796.38 97.50 +597706.87 5678374.39 113.75 +597706.95 5683198.78 98.75 +597707.01 5678963.63 100.00 +597707.07 5680703.01 98.50 +597707.29 5683432.27 97.50 +597707.38 5682648.23 98.75 +597707.51 5681362.02 98.75 +597707.55 5683442.62 97.50 +597707.58 5678215.58 106.25 +597707.73 5683427.07 98.75 +597707.84 5681932.80 97.50 +597707.84 5678299.40 110.00 +597707.93 5678596.32 108.75 +597707.96 5680824.75 98.75 +597707.99 5678439.55 113.75 +597708.04 5678642.61 107.50 +597708.11 5683882.13 97.50 +597708.16 5683809.82 97.50 +597708.16 5683452.31 98.75 +597708.31 5683353.10 98.75 +597708.37 5682143.41 97.50 +597708.39 5678017.84 102.50 +597708.60 5678136.75 103.75 +597708.68 5678484.28 113.75 +597708.72 5678572.42 110.00 +597708.73 5681702.64 98.75 +597708.78 5678340.25 112.50 +597708.80 5681252.46 100.00 +597709.21 5683511.65 98.75 +597709.31 5681638.12 98.75 +597709.35 5682256.63 97.50 +597709.96 5681953.08 97.50 +597710.04 5683641.21 97.25 +597710.06 5678383.81 113.75 +597710.07 5678731.22 105.00 +597710.10 5678548.48 111.25 +597710.13 5678356.58 113.75 +597710.14 5683891.91 97.50 +597710.18 5678871.70 101.25 +597710.48 5680324.68 98.75 +597710.50 5683632.00 97.50 +597710.71 5683818.72 97.50 +597710.76 5683174.41 98.75 +597710.92 5681463.33 98.75 +597711.07 5678184.81 105.00 +597711.07 5678811.06 102.50 +597711.10 5683013.09 100.00 +597711.10 5682500.61 98.75 +597711.20 5678008.24 102.50 +597711.32 5683697.67 97.50 +597711.47 5683863.62 97.50 +597711.69 5680694.15 98.50 +597711.69 5681353.03 98.75 +597711.75 5683316.81 98.75 +597711.88 5679388.45 98.75 +597712.04 5683901.71 97.50 +597712.31 5678277.68 108.75 +597712.59 5680102.84 100.00 +597712.74 5679653.04 98.75 +597712.76 5680782.27 98.50 +597713.05 5683911.65 97.50 +597713.12 5678431.03 113.75 +597713.14 5678393.27 113.75 +597713.17 5678314.11 111.25 +597713.33 5682360.63 98.75 +597713.48 5678517.91 112.50 +597713.63 5683711.93 97.50 +597713.94 5683346.25 98.75 +597714.00 5678244.07 107.50 +597714.06 5683921.59 97.50 +597714.30 5680111.88 100.00 +597714.57 5677998.91 102.50 +597714.57 5683306.37 98.75 +597714.82 5678691.61 106.25 +597714.87 5678957.47 100.00 +597715.07 5683931.53 97.50 +597715.09 5683651.76 97.50 +597715.25 5683358.44 98.75 +597715.42 5683029.33 100.00 +597715.52 5678402.90 113.75 +597715.79 5678777.18 103.75 +597715.98 5681344.13 98.75 +597716.12 5680972.92 100.00 +597716.14 5683854.79 97.50 +597716.17 5683705.68 97.25 +597716.24 5680685.25 98.50 +597716.25 5681644.88 98.75 +597716.30 5683020.23 100.00 +597716.37 5683941.41 97.50 +597716.46 5683436.05 97.50 +597716.60 5683813.54 97.50 +597716.64 5683796.58 97.50 +597716.78 5678211.94 106.25 +597716.89 5681258.22 100.00 +597716.91 5683199.33 98.75 +597717.02 5678412.73 113.75 +597717.04 5678131.43 103.75 +597717.25 5678296.31 110.00 +597717.32 5682649.23 98.75 +597717.39 5681930.17 97.50 +597717.40 5678864.80 101.25 +597717.50 5678639.43 107.50 +597717.54 5683442.85 97.50 +597717.61 5683428.52 98.75 +597717.68 5683455.35 98.75 +597717.79 5678594.91 108.75 +597717.96 5680824.72 98.75 +597717.99 5678336.60 112.50 +597717.99 5682145.87 97.50 +597718.10 5678804.00 102.50 +597718.10 5678487.28 113.75 +597718.23 5680318.37 98.75 +597718.25 5678422.51 113.75 +597718.34 5681701.36 98.75 +597718.52 5678571.05 110.00 +597718.70 5683514.78 98.75 +597718.71 5683951.12 97.50 +597718.94 5678178.79 105.00 +597719.05 5681468.90 98.75 +597719.12 5678544.22 111.25 +597719.27 5682257.79 97.50 +597719.51 5678728.11 105.00 +597719.85 5681953.74 97.50 +597719.89 5678355.02 113.75 +597720.22 5683630.77 97.50 +597720.35 5677990.76 102.50 +597720.38 5682496.88 98.75 +597720.48 5678648.53 107.50 +597720.62 5680676.27 98.50 +597720.70 5683175.42 98.75 +597720.75 5680119.09 100.00 +597721.01 5683699.75 97.50 +597721.01 5679384.41 98.75 +597721.05 5683960.83 97.50 +597721.21 5680097.84 100.00 +597721.72 5683316.74 98.75 +597721.89 5678275.04 108.75 +597721.96 5682355.60 98.75 +597722.35 5681336.54 98.75 +597722.39 5679654.40 98.75 +597722.72 5681652.09 98.75 +597722.73 5678951.30 100.00 +597722.73 5680781.50 98.50 +597723.04 5678312.66 111.25 +597723.12 5683714.83 97.50 +597723.33 5678516.90 112.50 +597723.39 5683970.55 97.50 +597723.46 5678241.19 107.50 +597723.54 5683344.13 98.75 +597723.76 5678857.10 101.25 +597724.03 5678687.89 106.25 +597724.24 5683849.07 97.50 +597724.41 5683304.88 98.75 +597724.51 5678772.38 103.75 +597724.61 5683649.61 97.50 +597724.62 5680667.11 98.50 +597724.74 5678608.69 108.00 +597724.85 5678618.45 108.00 +597724.86 5678657.02 107.50 +597725.19 5680976.94 100.00 +597725.23 5683358.94 98.75 +597725.35 5678125.90 103.75 +597725.50 5678628.16 108.00 +597725.58 5678797.60 102.50 +597725.69 5683708.39 97.25 +597725.81 5678448.39 115.00 +597725.92 5678208.10 106.25 +597726.33 5683798.83 97.50 +597726.43 5681260.07 100.00 +597726.45 5681926.22 97.50 +597726.81 5677983.15 102.50 +597726.89 5683979.87 97.50 +597726.90 5683199.56 98.75 +597727.03 5681474.68 98.75 +597727.07 5678173.20 105.00 +597727.07 5678296.30 110.00 +597727.09 5681940.63 97.25 +597727.20 5683458.38 98.75 +597727.26 5682650.23 98.75 +597727.26 5680314.58 98.75 +597727.40 5678637.72 108.00 +597727.50 5681698.37 98.75 +597727.53 5682148.83 97.50 +597727.56 5680657.61 98.50 +597727.57 5683429.42 98.75 +597727.60 5678488.94 113.75 +597727.65 5678593.74 108.75 +597727.86 5678335.81 112.50 +597727.95 5680824.80 98.75 +597728.19 5683517.92 98.75 +597728.37 5678570.05 110.00 +597728.43 5678541.11 111.25 +597728.93 5682260.33 97.50 +597728.98 5678725.06 105.00 +597729.06 5683633.81 97.50 +597729.20 5678357.38 113.75 +597729.46 5681659.04 98.75 +597729.47 5680647.80 98.50 +597729.69 5682493.26 98.75 +597729.73 5681954.39 97.50 +597729.89 5680637.85 98.50 +597730.12 5678849.39 101.25 +597730.15 5679380.36 98.75 +597730.30 5680121.53 100.00 +597730.41 5680094.08 100.00 +597730.41 5678440.69 115.00 +597730.44 5682350.31 98.75 +597730.58 5683702.38 97.50 +597730.58 5678945.14 100.00 +597730.65 5681331.34 98.75 +597730.65 5683176.33 98.75 +597730.76 5683642.82 97.50 +597730.87 5683989.03 97.50 +597730.91 5678646.82 108.00 +597731.56 5683315.05 98.75 +597731.58 5678272.78 108.75 +597731.75 5678663.58 107.50 +597732.03 5678605.22 108.00 +597732.27 5679652.88 98.75 +597732.37 5678455.21 115.00 +597732.52 5680628.36 98.50 +597732.57 5683843.56 97.50 +597732.62 5683717.73 97.50 +597732.69 5680780.73 98.50 +597732.74 5678314.52 111.25 +597732.91 5678238.31 107.50 +597732.99 5678515.08 112.50 +597733.22 5678767.57 103.75 +597733.46 5678684.72 106.25 +597733.46 5683344.02 98.75 +597733.61 5677975.82 102.50 +597733.65 5678120.36 103.75 +597733.96 5680981.56 100.00 +597734.06 5683302.28 98.75 +597734.38 5681692.32 98.75 +597734.63 5678793.46 102.50 +597734.64 5681480.94 98.75 +597734.71 5678203.58 106.25 +597734.85 5683998.19 97.50 +597735.08 5683711.56 97.25 +597735.21 5683359.45 98.75 +597735.21 5681255.56 100.00 +597735.41 5681922.00 97.50 +597735.43 5683449.05 97.50 +597735.92 5678432.47 115.00 +597736.02 5683801.08 97.50 +597736.07 5678169.03 105.00 +597736.31 5680619.11 98.50 +597736.46 5678654.68 108.00 +597736.53 5681665.66 98.75 +597736.67 5682152.62 97.50 +597736.68 5678841.85 101.25 +597736.71 5681939.97 97.25 +597736.80 5683461.15 98.75 +597736.89 5683199.78 98.75 +597736.94 5680312.05 98.75 +597736.96 5678296.84 110.00 +597736.97 5678485.61 113.75 +597736.99 5678363.56 113.75 +597737.14 5682651.71 98.75 +597737.37 5678595.48 108.75 +597737.52 5683430.31 98.75 +597737.67 5680826.66 98.75 +597737.69 5678612.23 108.00 +597737.73 5678336.17 112.50 +597737.91 5683520.15 98.75 +597738.23 5678569.04 110.00 +597738.31 5682263.51 97.50 +597738.40 5678540.75 111.25 +597738.45 5678938.99 100.00 +597738.46 5678722.06 105.00 +597739.00 5682489.63 98.75 +597739.02 5682345.27 98.75 +597739.03 5684007.26 97.50 +597739.12 5681674.44 98.75 +597739.24 5679376.24 98.75 +597739.30 5681683.97 98.75 +597739.40 5678621.84 108.00 +597739.43 5681326.73 98.75 +597739.53 5681955.76 97.50 +597739.72 5680090.55 100.00 +597740.01 5680123.70 100.00 +597740.05 5683705.26 97.50 +597740.33 5683442.14 97.50 +597740.43 5680610.00 98.50 +597740.60 5683177.23 98.75 +597740.85 5678423.84 115.00 +597740.91 5678665.33 107.50 +597741.22 5678233.13 107.50 +597741.28 5677969.47 102.50 +597741.41 5683313.35 98.75 +597741.50 5678272.21 108.75 +597741.79 5679650.35 98.75 +597741.80 5678114.64 103.75 +597741.86 5683839.89 97.50 +597742.00 5679262.84 98.75 +597742.05 5678456.91 115.00 +597742.06 5678763.02 103.75 +597742.11 5683720.63 97.50 +597742.17 5678631.19 108.00 +597742.21 5678317.56 111.25 +597742.23 5679252.85 98.75 +597742.26 5678511.61 112.50 +597742.41 5681487.00 98.75 +597742.46 5679242.86 98.75 +597742.63 5680780.86 98.50 +597742.69 5679232.88 98.75 +597742.72 5680985.84 100.00 +597742.89 5678681.55 106.25 +597743.29 5678198.60 106.25 +597743.29 5684016.30 97.50 +597743.36 5678834.41 101.25 +597743.40 5683345.06 98.75 +597743.61 5678650.36 108.00 +597743.69 5678789.31 102.50 +597743.71 5683299.69 98.75 +597743.87 5681250.70 100.00 +597744.03 5678640.67 108.00 +597744.47 5683714.73 97.25 +597744.54 5683452.56 97.50 +597744.86 5682158.35 97.50 +597744.90 5678369.59 113.75 +597744.96 5679272.22 98.75 +597745.17 5678601.69 108.75 +597745.19 5683359.31 98.75 +597745.21 5681920.71 97.50 +597745.59 5679223.67 98.75 +597745.62 5678166.54 105.00 +597745.71 5683803.33 97.50 +597745.71 5678480.92 113.75 +597746.32 5681939.32 97.25 +597746.32 5678932.84 100.00 +597746.41 5683463.89 98.75 +597746.52 5680602.15 98.50 +597746.61 5680309.52 98.75 +597746.67 5682268.99 97.50 +597746.85 5678297.37 110.00 +597746.88 5683199.72 98.75 +597746.93 5682653.71 98.75 +597747.17 5678338.31 112.50 +597747.18 5680829.72 98.75 +597747.33 5683432.13 98.75 +597747.56 5684025.33 97.50 +597747.64 5679370.82 98.75 +597747.73 5683521.97 98.75 +597748.02 5682064.48 97.50 +597748.04 5678719.87 105.00 +597748.08 5678568.04 110.00 +597748.21 5681322.20 98.75 +597748.26 5678539.70 111.25 +597748.62 5682486.96 98.75 +597748.71 5682342.84 98.75 +597748.86 5678107.59 103.75 +597748.87 5683709.81 97.50 +597748.87 5679281.41 98.75 +597749.04 5678418.22 115.00 +597749.10 5680087.20 100.00 +597749.21 5678227.31 107.50 +597749.29 5678660.78 107.50 +597749.30 5681957.42 97.50 +597749.35 5677963.56 102.50 +597749.64 5680126.25 100.00 +597749.77 5682054.73 97.50 +597750.03 5678826.98 101.25 +597750.17 5683442.57 97.50 +597750.18 5681493.06 98.75 +597750.38 5678452.67 115.00 +597750.54 5679645.51 98.75 +597750.55 5683177.60 98.75 +597750.76 5678506.86 112.50 +597750.81 5679215.16 98.75 +597750.84 5678432.47 115.25 +597751.01 5678758.65 103.75 +597751.05 5683724.91 97.50 +597751.15 5683836.22 97.50 +597751.26 5683311.66 98.75 +597751.35 5678321.56 111.25 +597751.43 5678271.74 108.75 +597751.98 5678193.88 106.25 +597752.36 5681245.56 100.00 +597752.46 5678680.40 106.25 +597752.52 5680782.31 98.50 +597752.62 5680986.53 100.00 +597752.72 5678785.13 102.50 +597752.79 5679290.61 98.75 +597752.86 5682164.32 97.50 +597753.03 5678474.25 113.75 +597753.04 5678375.29 113.75 +597753.18 5683347.07 98.75 +597753.19 5680594.73 98.50 +597753.35 5678606.01 108.75 +597753.36 5682072.00 97.50 +597753.38 5683719.02 97.25 +597753.39 5682045.68 97.50 +597753.58 5683298.41 98.75 +597754.17 5683454.73 97.50 +597754.31 5684032.65 97.50 +597754.85 5678927.98 100.00 +597754.85 5681921.44 97.50 +597755.03 5682274.47 97.50 +597755.05 5683449.41 97.25 +597755.07 5678099.91 103.75 +597755.18 5683358.84 98.75 +597755.28 5678164.29 105.00 +597755.30 5683805.99 97.50 +597755.84 5678343.11 112.50 +597755.84 5681939.47 97.25 +597755.88 5683467.05 98.75 +597755.94 5679365.31 98.75 +597756.02 5679206.63 98.75 +597756.23 5678300.49 110.00 +597756.37 5678444.81 115.00 +597756.38 5680307.43 98.75 +597756.55 5678654.63 107.50 +597756.60 5680833.06 98.75 +597756.64 5682656.04 98.75 +597756.69 5679299.80 98.75 +597756.88 5683199.64 98.75 +597757.07 5683434.34 98.75 +597757.21 5678820.09 101.25 +597757.31 5681762.17 97.50 +597757.38 5681499.75 98.75 +597757.44 5677957.69 102.50 +597757.61 5683523.07 98.75 +597757.69 5683714.37 97.50 +597757.75 5678565.99 110.00 +597757.83 5678536.90 111.25 +597757.97 5678720.43 105.00 +597758.13 5681322.20 98.75 +597758.14 5678500.26 112.50 +597758.17 5678223.23 107.50 +597758.18 5678415.03 115.00 +597758.30 5682484.45 98.75 +597758.41 5682340.41 98.75 +597758.48 5682037.18 97.50 +597758.55 5680084.07 100.00 +597759.02 5681959.29 97.50 +597759.28 5679640.67 98.75 +597759.40 5680128.20 100.00 +597759.79 5678091.11 103.75 +597759.90 5683729.39 97.50 +597759.91 5683444.25 97.50 +597760.04 5678467.20 113.75 +597760.12 5678754.68 103.75 +597760.47 5683176.47 98.75 +597760.49 5678325.55 111.25 +597760.52 5683832.83 97.50 +597760.58 5679309.00 98.75 +597760.69 5679197.80 98.75 +597760.86 5680588.32 98.50 +597760.98 5682170.14 97.50 +597761.21 5684039.87 97.50 +597761.24 5683311.63 98.75 +597761.30 5678380.84 113.75 +597761.31 5678190.54 106.25 +597761.37 5678271.49 108.75 +597761.39 5681340.19 98.75 +597761.50 5682054.86 97.25 +597761.67 5679357.12 98.75 +597761.76 5678780.94 102.50 +597761.88 5678602.28 108.75 +597762.03 5681244.81 100.00 +597762.13 5683723.70 97.25 +597762.15 5680784.88 98.50 +597762.24 5680988.94 100.00 +597762.25 5678682.16 106.25 +597762.64 5681770.52 97.50 +597762.69 5681762.37 98.75 +597762.95 5683349.06 98.75 +597763.25 5682072.54 97.50 +597763.38 5682279.94 97.50 +597763.55 5683297.68 98.75 +597763.65 5683457.51 97.50 +597764.00 5678655.71 107.50 +597764.03 5681507.02 98.75 +597764.20 5678082.16 103.75 +597764.25 5681924.59 97.50 +597764.37 5678439.20 115.00 +597764.46 5678925.26 100.00 +597764.48 5679318.21 98.75 +597764.49 5679347.72 98.75 +597764.52 5678347.86 112.50 +597764.58 5683451.40 97.25 +597764.80 5678161.51 105.00 +597764.83 5678592.76 108.75 +597764.88 5683808.66 97.50 +597764.95 5683360.38 98.75 +597765.03 5681942.37 97.25 +597765.18 5683470.72 98.75 +597765.25 5678814.15 101.25 +597765.29 5682030.08 97.50 +597765.36 5679188.97 98.75 +597765.51 5678493.65 112.50 +597765.63 5678303.41 110.00 +597765.96 5680836.55 98.75 +597765.97 5677952.47 102.50 +597766.07 5679327.94 98.75 +597766.10 5678459.32 113.75 +597766.20 5680305.56 98.75 +597766.20 5682658.94 98.75 +597766.31 5679337.90 98.75 +597766.37 5682046.54 97.25 +597766.51 5683718.91 97.50 +597766.57 5681344.17 97.50 +597766.80 5683436.62 98.75 +597766.87 5683199.56 98.75 +597766.92 5679634.30 98.75 +597767.35 5678563.54 110.00 +597767.41 5678534.09 111.25 +597767.51 5678220.28 107.50 +597767.58 5683522.48 98.75 +597767.82 5681324.04 98.75 +597767.89 5682481.67 98.75 +597767.90 5678720.84 105.00 +597767.99 5678416.60 115.00 +597768.01 5678703.73 106.25 +597768.16 5682338.55 98.75 +597768.32 5680083.69 100.00 +597768.49 5678073.15 103.75 +597768.53 5680581.91 98.50 +597768.62 5678583.55 108.75 +597768.65 5681961.63 97.50 +597768.74 5683733.92 97.50 +597768.90 5684046.16 97.50 +597769.00 5681778.09 97.50 +597769.23 5680129.71 100.00 +597769.37 5678751.00 103.75 +597769.50 5682175.36 97.50 +597769.52 5683446.53 97.50 +597769.65 5678694.03 106.25 +597769.67 5678329.47 111.25 +597770.03 5679180.14 98.75 +597770.07 5678608.06 108.00 +597770.35 5683831.06 97.50 +597770.37 5678662.53 107.50 +597770.38 5683175.13 98.75 +597770.68 5681514.29 98.75 +597770.79 5678431.85 115.00 +597770.79 5678776.76 102.50 +597770.87 5683728.37 97.25 +597770.95 5678188.42 106.25 +597771.02 5678382.57 113.75 +597771.14 5678598.42 108.00 +597771.20 5681767.34 98.75 +597771.21 5681340.72 98.75 +597771.23 5683311.76 98.75 +597771.24 5682038.23 97.25 +597771.32 5678271.40 108.75 +597771.41 5682068.79 97.50 +597771.61 5678617.78 108.00 +597771.70 5680787.83 98.50 +597771.80 5680991.60 100.00 +597771.83 5682285.27 97.50 +597771.93 5678684.42 106.25 +597771.95 5681245.03 100.00 +597772.16 5678451.43 113.75 +597772.46 5678919.58 100.00 +597772.54 5678064.04 103.75 +597772.55 5682023.33 97.50 +597772.94 5683348.79 98.75 +597773.22 5678352.58 112.50 +597773.31 5678627.47 108.00 +597773.32 5683459.56 97.50 +597773.38 5678808.44 101.25 +597773.54 5683297.81 98.75 +597773.54 5678422.55 115.00 +597773.70 5678488.12 112.50 +597773.77 5679170.91 98.75 +597774.04 5681925.90 97.50 +597774.12 5683453.38 97.25 +597774.14 5680108.37 100.50 +597774.18 5681945.39 97.25 +597774.21 5678158.36 105.00 +597774.33 5679627.60 98.75 +597774.40 5683474.56 98.75 +597774.40 5677947.11 102.50 +597774.64 5683362.84 98.75 +597774.77 5683809.23 97.50 +597774.83 5678727.11 105.00 +597775.15 5680840.47 98.75 +597775.32 5681346.50 97.50 +597775.39 5683723.36 97.50 +597775.42 5678637.09 108.00 +597775.53 5678303.78 110.00 +597775.72 5682662.00 98.75 +597775.79 5678529.15 111.25 +597775.80 5678577.87 108.75 +597776.02 5678054.69 103.75 +597776.04 5680303.82 98.75 +597776.17 5680575.47 98.50 +597776.44 5682060.36 97.50 +597776.49 5683439.07 98.75 +597776.84 5679161.40 98.75 +597776.84 5683199.00 98.75 +597776.94 5678561.09 110.00 +597777.14 5684051.81 97.50 +597777.26 5678668.89 107.50 +597777.28 5678218.88 107.50 +597777.45 5681326.40 98.75 +597777.46 5682478.77 98.75 +597777.51 5683738.56 97.50 +597777.53 5678646.70 108.00 +597777.56 5683521.90 98.75 +597777.69 5681782.57 97.50 +597777.90 5678703.59 106.25 +597777.96 5681520.94 98.75 +597778.15 5682338.78 98.75 +597778.17 5678592.24 108.00 +597778.23 5680084.62 100.00 +597778.27 5681963.96 97.50 +597778.44 5682179.72 97.50 +597778.70 5678747.59 103.75 +597778.82 5682032.63 97.25 +597779.14 5683448.81 97.50 +597779.18 5680129.94 100.00 +597779.41 5678444.67 113.75 +597779.50 5678045.34 103.75 +597779.56 5678329.18 111.25 +597779.57 5681772.54 98.75 +597779.57 5683733.12 97.25 +597779.91 5679151.89 98.75 +597779.95 5678772.98 102.50 +597779.97 5678913.00 100.00 +597780.18 5683829.28 97.50 +597780.25 5683173.56 98.75 +597780.42 5682290.37 97.50 +597780.66 5682051.40 97.50 +597780.70 5678186.67 106.25 +597780.73 5680995.65 100.00 +597780.87 5678384.00 113.75 +597780.89 5681342.65 98.75 +597781.05 5678734.86 105.00 +597781.23 5678271.45 108.75 +597781.23 5683311.89 98.75 +597781.25 5680790.78 98.50 +597781.68 5682019.50 97.50 +597781.74 5679620.89 98.75 +597781.88 5681244.92 100.00 +597782.01 5680567.37 98.50 +597782.09 5678482.87 112.50 +597782.40 5677941.11 102.50 +597782.93 5683348.53 98.75 +597782.96 5678154.00 105.00 +597783.06 5679142.41 98.75 +597783.06 5678654.84 108.00 +597783.11 5683460.86 97.50 +597783.12 5678352.80 112.50 +597783.12 5681948.98 97.25 +597783.19 5683479.20 98.75 +597783.20 5678522.46 111.25 +597783.27 5678807.02 101.25 +597783.44 5683298.54 98.75 +597783.65 5683455.37 97.25 +597783.89 5681927.02 97.50 +597784.19 5681348.23 97.50 +597784.26 5683727.81 97.50 +597784.30 5678674.14 107.50 +597784.36 5678036.63 103.75 +597784.55 5683362.56 98.75 +597784.72 5683809.46 97.50 +597784.73 5682666.27 98.75 +597784.81 5680842.37 98.75 +597784.88 5682042.43 97.50 +597785.04 5681051.06 100.00 +597785.20 5678574.55 108.75 +597785.28 5681527.54 98.75 +597785.38 5684057.46 97.50 +597785.43 5678304.16 110.00 +597785.45 5681060.86 100.00 +597786.01 5680303.05 98.75 +597786.18 5683441.52 98.75 +597786.26 5679132.95 98.75 +597786.30 5683743.18 97.50 +597786.41 5678558.19 110.00 +597786.79 5681786.47 97.50 +597786.79 5683198.13 98.75 +597786.89 5681041.30 100.00 +597786.96 5681002.86 100.00 +597786.97 5682475.73 98.75 +597786.99 5678217.01 107.50 +597787.11 5678438.42 113.75 +597787.15 5682027.78 97.25 +597787.23 5681327.86 98.75 +597787.34 5678742.56 105.00 +597787.48 5683520.88 98.75 +597787.50 5678906.44 100.00 +597787.66 5678702.56 106.25 +597787.75 5682183.36 97.50 +597787.83 5681966.53 97.50 +597787.83 5678590.77 108.00 +597787.86 5680559.26 98.50 +597787.92 5681777.79 98.75 +597788.13 5680085.67 100.00 +597788.14 5682339.01 98.75 +597788.24 5683737.93 97.25 +597788.36 5678745.19 103.75 +597788.61 5681031.53 100.00 +597788.76 5683451.07 97.50 +597789.01 5682295.48 97.50 +597789.12 5680129.99 100.00 +597789.35 5678027.99 103.75 +597789.38 5679614.45 98.75 +597789.45 5679123.48 98.75 +597789.52 5678328.50 111.25 +597789.79 5678771.40 102.50 +597790.01 5683827.51 97.50 +597790.06 5678147.12 105.00 +597790.13 5681021.72 100.00 +597790.18 5683172.57 98.75 +597790.22 5678183.92 106.25 +597790.29 5678267.36 108.75 +597790.40 5677935.11 102.50 +597790.46 5681345.04 98.75 +597790.48 5678477.61 112.50 +597790.60 5678515.78 111.25 +597790.63 5680794.18 98.50 +597790.71 5678385.43 113.75 +597790.89 5683485.57 98.75 +597790.89 5681011.98 100.00 +597790.93 5682016.01 97.50 +597790.94 5681068.14 100.00 +597791.22 5683312.05 98.75 +597791.70 5681244.08 100.00 +597791.71 5682035.28 97.50 +597792.07 5681952.56 97.25 +597792.16 5678655.22 108.00 +597792.61 5681534.14 98.75 +597792.80 5681930.70 97.50 +597792.89 5683462.21 97.50 +597792.90 5683301.77 98.75 +597792.90 5683349.13 98.75 +597792.99 5678352.06 112.50 +597793.07 5683732.37 97.50 +597793.14 5681349.60 97.50 +597793.16 5678805.60 101.25 +597793.18 5683457.36 97.25 +597793.61 5684063.11 97.50 +597793.64 5682670.80 98.75 +597793.85 5678674.76 107.50 +597794.10 5680551.45 98.50 +597794.35 5678553.57 110.00 +597794.43 5679114.94 98.75 +597794.51 5683361.74 98.75 +597794.63 5683809.19 97.50 +597794.79 5680842.89 98.75 +597794.92 5678575.00 108.75 +597794.99 5677853.01 102.50 +597795.03 5678899.88 100.00 +597795.08 5683747.79 97.50 +597795.22 5677863.01 102.50 +597795.24 5678302.86 110.00 +597795.68 5678138.99 105.00 +597795.91 5683443.78 98.75 +597795.93 5678433.81 113.75 +597795.98 5680302.28 98.75 +597796.02 5678507.62 111.25 +597796.15 5678213.33 107.50 +597796.17 5682471.83 98.75 +597796.19 5681789.55 97.50 +597796.36 5678586.50 108.00 +597796.38 5682025.11 97.25 +597796.43 5678741.49 105.00 +597796.61 5678021.21 103.75 +597796.69 5683517.56 98.75 +597796.75 5683197.25 98.75 +597796.79 5677872.75 102.50 +597796.95 5683742.67 97.25 +597797.08 5681970.06 97.50 +597797.11 5679608.12 98.75 +597797.11 5681328.68 98.75 +597797.16 5681781.05 98.75 +597797.25 5678700.15 106.25 +597797.39 5682342.41 98.75 +597797.48 5682184.87 97.50 +597797.52 5678544.19 110.00 +597797.60 5682300.58 97.50 +597797.95 5680087.30 100.00 +597797.98 5677844.50 102.50 +597798.20 5678745.00 103.75 +597798.23 5677928.96 102.50 +597798.37 5680669.18 98.45 +597798.40 5683453.28 97.50 +597798.48 5678178.67 106.25 +597798.60 5683491.93 98.75 +597798.73 5680127.40 100.00 +597798.84 5678472.31 112.50 +597799.18 5681073.67 100.00 +597799.28 5678648.42 108.00 +597799.36 5678390.35 113.75 +597799.44 5678328.51 111.25 +597799.58 5678264.12 108.75 +597799.62 5678769.82 102.50 +597799.64 5681958.30 97.25 +597799.84 5683825.72 97.50 +597799.86 5680797.98 98.50 +597799.95 5678130.03 105.00 +597800.04 5681540.58 98.75 +597800.16 5683172.04 98.75 +597800.19 5677882.16 102.50 +597800.21 5681346.34 98.75 +597800.23 5678498.58 111.25 +597800.33 5679106.87 98.75 +597800.38 5682031.03 97.50 +597800.39 5680543.68 98.50 +597800.48 5682013.36 97.50 +597800.84 5681240.51 100.00 +597801.07 5681936.16 97.50 +597801.21 5683312.28 98.75 +597801.60 5683737.45 97.50 +597801.69 5681352.52 97.50 +597802.06 5683501.18 98.75 +597802.23 5682675.91 98.75 +597802.26 5678536.81 110.00 +597802.34 5682464.03 98.75 +597802.51 5678893.26 100.00 +597802.51 5683464.48 97.50 +597802.55 5684067.33 97.50 +597802.64 5678353.84 112.50 +597802.71 5683459.35 97.25 +597802.73 5683303.32 98.75 +597802.88 5683349.73 98.75 +597803.03 5678804.06 101.25 +597803.19 5677920.28 102.50 +597803.28 5683510.96 98.75 +597803.39 5678071.57 105.00 +597803.39 5678081.49 105.00 +597803.40 5678675.40 107.50 +597803.46 5678120.81 105.00 +597803.60 5677891.56 102.50 +597803.75 5678091.40 105.00 +597803.87 5683752.40 97.50 +597804.15 5678014.68 103.75 +597804.32 5681976.10 97.50 +597804.36 5683363.19 98.75 +597804.43 5678428.79 113.75 +597804.47 5683807.68 97.50 +597804.60 5680841.71 98.75 +597804.75 5678101.27 105.00 +597804.75 5678576.63 108.75 +597804.84 5679601.80 98.75 +597804.89 5678736.65 105.00 +597804.91 5678729.05 105.00 +597805.03 5678301.39 110.00 +597805.13 5678209.25 107.50 +597805.40 5678584.20 108.00 +597805.43 5678640.73 108.00 +597805.65 5681792.47 97.50 +597805.69 5678111.14 105.00 +597805.69 5682022.60 97.25 +597805.73 5683445.63 98.75 +597805.82 5683747.10 97.25 +597805.95 5681944.52 97.50 +597805.95 5680301.61 98.75 +597806.18 5678719.64 105.00 +597806.19 5682305.69 97.50 +597806.25 5677901.09 102.50 +597806.25 5677911.09 102.50 +597806.29 5677839.17 102.50 +597806.34 5678172.64 106.25 +597806.45 5682346.64 98.75 +597806.57 5679099.11 98.75 +597806.60 5681783.90 98.75 +597806.61 5678491.34 111.25 +597806.68 5681964.88 97.25 +597806.70 5683196.37 98.75 +597806.84 5678697.75 106.25 +597806.90 5678062.44 105.00 +597806.99 5681329.33 98.75 +597807.47 5682185.14 97.50 +597807.47 5681079.12 100.00 +597807.50 5682455.64 98.75 +597807.66 5678468.05 112.50 +597807.76 5680089.01 100.00 +597807.85 5678395.49 113.75 +597808.03 5683455.50 97.50 +597808.07 5680537.72 98.50 +597808.12 5678745.78 103.75 +597808.22 5680124.37 100.00 +597808.65 5681545.38 98.75 +597808.76 5681885.93 97.50 +597808.92 5681234.74 100.00 +597809.29 5678330.11 111.25 +597809.45 5678768.22 102.50 +597809.47 5680799.74 98.50 +597809.49 5678263.22 108.75 +597809.58 5678886.21 100.00 +597809.58 5681984.49 97.50 +597809.66 5683823.93 97.50 +597809.67 5681348.94 98.75 +597809.95 5682028.70 97.50 +597809.98 5682445.96 98.75 +597810.02 5682010.72 97.50 +597810.04 5683173.08 98.75 +597810.13 5683742.52 97.50 +597810.34 5681355.08 97.50 +597810.67 5681953.18 97.50 +597810.69 5678632.50 108.00 +597810.81 5682681.03 98.75 +597811.18 5678053.48 105.00 +597811.20 5683312.51 98.75 +597811.21 5678007.63 103.75 +597811.40 5678421.69 113.75 +597811.95 5682436.21 98.75 +597812.02 5678536.65 110.00 +597812.08 5684070.33 97.50 +597812.13 5683466.74 97.50 +597812.14 5681895.33 97.50 +597812.23 5678712.54 105.00 +597812.24 5683461.34 97.25 +597812.35 5678355.77 112.50 +597812.66 5683304.43 98.75 +597812.66 5683757.01 97.50 +597812.73 5683350.92 98.75 +597812.74 5678674.31 107.50 +597812.79 5678801.90 101.25 +597812.90 5682426.33 98.75 +597813.47 5682353.65 98.75 +597813.50 5678587.55 108.00 +597813.57 5678204.10 107.50 +597813.69 5681971.49 97.25 +597813.72 5679597.25 98.75 +597813.80 5679092.21 98.75 +597813.94 5678412.28 113.75 +597814.03 5683146.02 98.75 +597814.04 5683137.87 98.75 +597814.08 5678402.54 113.75 +597814.18 5683365.03 98.75 +597814.26 5682018.67 97.25 +597814.27 5680839.20 98.75 +597814.30 5683806.18 97.50 +597814.34 5678579.25 108.75 +597814.44 5681993.12 97.50 +597814.64 5678167.27 106.25 +597814.67 5678299.12 110.00 +597814.68 5678623.51 108.00 +597814.69 5683751.53 97.25 +597814.72 5682310.88 97.50 +597814.73 5678485.53 111.25 +597815.23 5681085.29 100.00 +597815.34 5681794.54 97.50 +597815.52 5678044.56 105.00 +597815.55 5683447.49 98.75 +597815.58 5682002.59 97.50 +597815.68 5677835.75 102.50 +597815.93 5680300.97 98.75 +597816.28 5681785.07 98.75 +597816.34 5681961.30 97.50 +597816.57 5681904.15 97.50 +597816.60 5678696.21 106.25 +597816.66 5683195.50 98.75 +597816.91 5681329.11 98.75 +597816.99 5678879.65 100.00 +597816.99 5681228.97 100.00 +597817.00 5682417.21 98.75 +597817.17 5680533.60 98.50 +597817.25 5678465.60 112.50 +597817.26 5681550.18 98.75 +597817.42 5682185.95 97.50 +597817.56 5680090.81 100.00 +597817.72 5680121.38 100.00 +597817.81 5678744.49 103.75 +597817.82 5683456.88 97.50 +597818.17 5678000.48 103.75 +597818.59 5682687.28 98.75 +597818.66 5683747.60 97.50 +597818.83 5678595.81 108.00 +597819.05 5678614.69 108.00 +597819.13 5681351.73 98.75 +597819.13 5681979.44 97.25 +597819.17 5678331.46 111.25 +597819.18 5678261.06 108.75 +597819.26 5681356.64 97.50 +597819.27 5678766.63 102.50 +597819.30 5680798.05 98.50 +597819.49 5683822.13 97.50 +597819.83 5682027.94 97.50 +597819.90 5683174.75 98.75 +597820.23 5682361.00 98.75 +597820.62 5678605.49 108.00 +597820.85 5678707.59 105.00 +597820.98 5682408.05 98.75 +597821.02 5679085.31 98.75 +597821.09 5683313.55 98.75 +597821.21 5678540.35 110.00 +597821.35 5678036.68 105.00 +597821.45 5683761.62 97.50 +597821.58 5684073.40 97.50 +597821.66 5682012.50 97.25 +597821.75 5683469.01 97.50 +597821.78 5683463.32 97.25 +597821.85 5678478.59 111.25 +597821.90 5678671.53 107.50 +597822.00 5683371.11 98.75 +597822.06 5678357.70 112.50 +597822.10 5683150.78 98.75 +597822.12 5683354.34 98.75 +597822.30 5683132.53 98.75 +597822.55 5678799.75 101.25 +597822.62 5683305.09 98.75 +597822.66 5679592.79 98.75 +597822.73 5681968.79 97.50 +597822.74 5681091.79 100.00 +597822.77 5681386.39 97.50 +597822.79 5681911.97 97.50 +597822.86 5678200.76 107.50 +597822.90 5682316.63 97.50 +597823.07 5678583.46 108.75 +597823.31 5680834.93 98.75 +597823.31 5681206.28 100.04 +597823.43 5681377.23 97.50 +597823.50 5678162.84 106.25 +597823.53 5683756.01 97.25 +597824.08 5682370.23 98.75 +597824.08 5683804.39 97.50 +597824.22 5681556.93 98.75 +597824.30 5678296.80 110.00 +597824.58 5681987.39 97.25 +597824.62 5681797.92 97.50 +597824.72 5681222.75 100.00 +597824.82 5682398.83 98.75 +597825.08 5677832.33 102.50 +597825.31 5677993.55 103.75 +597825.37 5683449.34 98.75 +597825.71 5681787.16 98.75 +597825.91 5680300.34 98.75 +597826.13 5678875.63 100.00 +597826.16 5682190.59 97.50 +597826.20 5682693.75 98.75 +597826.30 5678629.75 108.75 +597826.34 5681362.56 97.50 +597826.38 5678694.71 106.25 +597826.42 5680529.96 98.50 +597826.61 5683194.62 98.75 +597826.82 5681329.04 98.75 +597826.85 5680094.36 100.00 +597826.90 5678463.37 112.50 +597827.11 5678255.43 108.75 +597827.28 5680118.61 100.00 +597827.32 5678741.56 103.75 +597827.36 5683752.37 97.50 +597827.49 5678619.93 108.75 +597827.49 5681996.19 97.25 +597827.61 5683458.25 97.50 +597827.61 5680792.51 98.50 +597827.81 5682389.42 98.75 +597827.89 5682005.82 97.25 +597827.93 5682379.45 98.75 +597828.10 5678639.02 108.75 +597828.18 5678501.40 111.00 +597828.34 5678029.65 105.00 +597828.58 5678471.23 111.25 +597828.60 5681920.09 97.50 +597828.71 5678701.65 105.00 +597828.86 5679079.14 98.75 +597828.88 5681351.26 97.00 +597829.07 5678332.20 111.25 +597829.11 5682024.60 97.50 +597829.12 5678492.43 111.00 +597829.14 5678765.53 102.50 +597829.19 5681393.92 97.50 +597829.27 5680763.36 98.50 +597829.31 5683820.34 97.50 +597829.52 5678591.06 108.75 +597829.66 5678155.15 106.25 +597829.72 5683377.44 98.75 +597829.75 5683176.41 98.75 +597829.77 5680773.30 98.50 +597830.06 5681975.46 97.50 +597830.18 5680753.40 98.50 +597830.20 5678610.34 108.75 +597830.24 5681098.28 100.00 +597830.33 5681564.66 98.75 +597830.36 5680783.23 98.50 +597830.37 5678544.11 110.00 +597830.54 5683765.60 97.50 +597830.81 5683835.24 98.75 +597830.87 5683315.64 98.75 +597830.91 5678125.71 106.25 +597830.95 5678086.07 106.25 +597831.04 5684076.61 97.50 +597831.07 5682322.37 97.50 +597831.12 5678115.80 106.25 +597831.12 5678135.61 106.25 +597831.13 5678669.01 107.50 +597831.17 5678145.51 106.25 +597831.20 5678095.98 106.25 +597831.25 5678600.57 108.75 +597831.31 5683465.30 97.25 +597831.32 5678105.89 106.25 +597831.38 5683471.28 97.50 +597831.46 5683357.86 98.75 +597831.70 5683153.17 98.75 +597831.75 5678357.28 112.50 +597831.82 5678076.23 106.25 +597832.03 5679589.54 98.75 +597832.05 5681343.38 97.00 +597832.12 5683130.68 98.75 +597832.18 5678197.45 107.50 +597832.35 5683760.54 97.25 +597832.37 5680830.72 98.75 +597832.41 5678798.66 101.25 +597832.52 5681373.90 97.50 +597832.61 5683305.15 98.75 +597833.42 5682700.66 98.75 +597833.54 5677987.90 103.75 +597833.67 5681801.91 97.50 +597833.81 5678294.51 110.00 +597833.86 5683802.56 97.50 +597833.95 5681928.52 97.50 +597833.97 5681219.74 100.00 +597834.33 5681368.37 97.50 +597834.34 5681358.55 97.00 +597834.36 5677828.63 102.50 +597834.40 5678507.55 111.00 +597834.48 5678248.75 108.75 +597834.66 5682195.82 97.50 +597834.77 5681791.04 98.75 +597834.89 5678463.50 111.25 +597834.97 5678485.08 111.00 +597835.16 5683841.39 98.75 +597835.19 5683451.20 98.75 +597835.28 5678871.61 100.00 +597835.37 5681573.13 98.75 +597835.46 5678643.98 108.75 +597835.63 5678067.10 106.25 +597835.89 5680299.90 98.75 +597835.94 5680098.20 100.00 +597835.99 5682017.60 97.50 +597836.11 5678693.00 106.25 +597836.11 5683757.05 97.50 +597836.11 5678023.48 105.00 +597836.21 5678696.35 105.00 +597836.32 5680528.59 98.50 +597836.33 5680745.70 98.50 +597836.44 5683196.31 98.75 +597836.55 5678461.19 112.50 +597836.73 5681329.27 98.75 +597836.74 5681982.74 97.50 +597836.85 5680115.85 100.00 +597836.93 5679073.25 98.75 +597837.15 5678740.15 103.75 +597837.28 5683460.24 97.50 +597837.29 5681937.85 97.50 +597837.38 5680702.88 98.50 +597837.48 5683828.54 98.75 +597837.54 5683383.67 98.75 +597837.68 5681398.98 97.50 +597837.78 5681104.74 100.00 +597838.51 5678328.95 111.25 +597839.09 5678765.76 102.50 +597839.14 5680711.54 98.50 +597839.16 5683818.69 97.50 +597839.24 5682328.12 97.50 +597839.26 5683548.51 98.75 +597839.46 5678548.04 110.00 +597839.63 5683177.92 98.75 +597839.65 5683769.55 97.50 +597839.87 5681947.50 97.50 +597840.05 5683362.97 98.75 +597840.21 5678745.73 103.75 +597840.28 5681581.66 98.75 +597840.50 5684079.82 97.50 +597840.63 5680106.99 100.00 +597840.64 5683317.73 98.75 +597840.65 5682707.56 98.75 +597840.73 5678666.30 107.50 +597840.74 5678058.62 106.25 +597840.84 5683467.28 97.25 +597840.95 5683473.73 97.50 +597841.30 5683764.80 97.25 +597841.43 5678355.17 112.50 +597841.53 5678194.24 107.50 +597841.53 5681341.71 97.00 +597841.55 5680826.77 98.75 +597841.69 5683153.40 98.75 +597841.70 5682009.72 97.50 +597841.77 5677982.26 103.75 +597841.79 5679587.38 98.75 +597841.83 5682202.77 97.50 +597841.95 5683128.90 98.75 +597842.00 5678754.96 103.75 +597842.35 5678797.70 101.25 +597842.37 5681806.64 97.50 +597842.49 5681373.35 97.50 +597842.53 5681990.62 97.50 +597842.56 5683304.65 98.75 +597842.71 5678243.19 108.75 +597843.07 5681362.05 97.00 +597843.19 5678702.41 105.00 +597843.20 5678291.87 110.00 +597843.35 5677824.26 102.50 +597843.40 5681956.75 97.50 +597843.43 5682084.92 97.50 +597843.56 5681217.28 100.00 +597843.68 5680695.53 98.50 +597843.78 5683802.05 97.50 +597843.79 5678465.08 111.25 +597843.80 5678509.52 111.00 +597843.89 5681590.84 98.75 +597843.92 5681794.71 98.75 +597844.02 5678482.64 111.00 +597844.09 5683540.65 98.75 +597844.54 5678867.96 100.00 +597844.56 5682000.24 97.50 +597844.85 5680740.48 98.50 +597844.86 5678018.80 105.00 +597844.86 5683761.73 97.50 +597845.00 5679067.36 98.75 +597845.12 5683452.22 98.75 +597845.14 5683841.62 98.75 +597845.32 5681111.20 100.00 +597845.32 5678642.57 108.75 +597845.85 5678691.28 106.25 +597845.87 5680299.29 98.75 +597845.87 5682094.54 97.50 +597845.97 5683389.03 98.75 +597846.20 5681404.00 97.50 +597846.24 5681331.44 98.75 +597846.25 5678459.20 112.50 +597846.26 5680528.92 98.50 +597846.27 5683198.13 98.75 +597846.33 5683823.93 98.75 +597846.54 5680717.51 98.50 +597846.67 5683554.35 98.75 +597846.94 5683462.34 97.50 +597847.03 5682075.60 97.50 +597847.13 5682715.17 98.75 +597847.21 5678761.04 103.75 +597847.41 5682333.87 97.50 +597847.50 5681600.01 98.75 +597847.99 5678325.87 111.25 +597848.24 5678052.57 106.25 +597848.45 5681965.38 97.50 +597848.54 5682104.17 97.50 +597848.66 5678547.92 110.00 +597848.87 5683773.22 97.50 +597848.95 5683366.87 98.75 +597848.98 5684084.96 97.50 +597849.01 5682209.72 97.50 +597849.05 5678765.99 102.50 +597849.09 5683817.55 97.50 +597849.51 5683179.42 98.75 +597849.91 5683321.28 98.75 +597850.26 5683769.05 97.25 +597850.34 5678709.05 105.00 +597850.38 5683469.25 97.25 +597850.41 5683476.59 97.50 +597850.44 5681609.38 98.75 +597850.47 5678664.12 107.50 +597850.56 5678190.45 107.50 +597850.73 5680822.82 98.75 +597850.78 5677977.99 103.75 +597850.87 5681343.25 97.00 +597850.93 5682066.43 97.50 +597851.05 5678237.77 108.75 +597851.07 5681811.37 97.50 +597851.21 5678353.83 112.50 +597851.39 5682113.75 97.50 +597851.54 5679585.23 98.75 +597851.68 5683153.44 98.75 +597851.79 5683127.13 98.75 +597851.92 5678287.45 110.00 +597852.16 5677819.57 102.50 +597852.27 5678796.54 101.25 +597852.40 5683302.91 98.75 +597852.45 5680690.73 98.50 +597852.55 5681619.01 98.75 +597852.71 5681362.38 97.00 +597852.84 5678469.29 111.25 +597852.85 5679061.21 98.75 +597852.87 5681117.65 100.00 +597852.92 5678752.89 103.75 +597852.92 5681411.39 97.50 +597852.96 5681214.09 100.00 +597853.13 5678485.70 111.00 +597853.14 5681798.17 98.75 +597853.26 5678510.56 111.00 +597853.50 5681974.00 97.50 +597853.61 5682722.78 98.75 +597853.62 5683537.91 98.75 +597853.65 5680735.75 98.50 +597853.73 5683801.76 97.50 +597853.81 5678014.54 105.00 +597854.05 5683394.88 98.75 +597854.20 5683764.85 97.50 +597854.24 5678865.56 100.00 +597854.34 5682123.29 97.50 +597854.82 5683451.48 98.75 +597854.87 5681628.59 98.75 +597855.05 5678640.49 108.75 +597855.11 5683841.85 98.75 +597855.41 5681335.20 98.75 +597855.58 5678689.54 106.25 +597855.70 5682217.12 97.50 +597855.80 5680298.18 98.75 +597855.81 5678457.14 112.50 +597856.08 5682057.87 97.50 +597856.09 5683821.96 98.75 +597856.13 5683199.69 98.75 +597856.20 5680529.87 98.50 +597856.26 5683556.79 98.75 +597856.32 5680715.45 98.50 +597856.42 5683465.14 97.50 +597856.66 5682337.32 97.50 +597857.05 5682132.90 97.50 +597857.08 5678048.13 106.25 +597857.16 5684090.69 97.50 +597857.26 5681638.15 98.75 +597857.58 5678323.11 111.25 +597858.01 5678544.62 110.00 +597858.09 5683604.77 98.75 +597858.18 5683776.66 97.50 +597858.31 5681982.75 97.50 +597858.63 5682142.76 97.50 +597858.68 5678184.81 107.50 +597858.78 5678744.85 103.75 +597858.80 5678704.02 105.00 +597858.87 5683325.69 98.75 +597858.94 5683366.61 98.75 +597859.00 5678766.21 102.50 +597859.01 5683816.40 97.50 +597859.33 5683772.94 97.25 +597859.37 5680817.83 98.75 +597859.39 5683180.93 98.75 +597859.61 5681816.39 97.50 +597859.83 5679054.06 98.75 +597859.84 5677973.81 103.75 +597859.87 5683479.45 97.50 +597859.91 5683471.23 97.25 +597860.02 5681647.60 98.75 +597860.02 5681346.30 97.00 +597860.03 5681754.11 98.75 +597860.09 5682730.38 98.75 +597860.29 5678662.30 107.50 +597860.32 5681418.08 97.50 +597860.47 5682152.58 97.50 +597860.49 5681744.26 98.75 +597860.52 5677814.09 102.50 +597860.65 5678283.03 110.00 +597860.71 5681207.88 100.00 +597860.73 5678235.74 108.75 +597860.95 5681734.42 98.75 +597861.00 5681123.34 100.00 +597861.09 5678353.40 112.50 +597861.24 5682049.31 97.50 +597861.27 5678507.20 111.00 +597861.40 5679583.76 98.75 +597861.41 5680686.32 98.50 +597861.51 5678489.77 111.00 +597861.62 5683125.35 98.75 +597861.65 5683299.49 98.75 +597861.65 5681358.77 97.00 +597861.67 5683153.32 98.75 +597861.83 5683401.15 98.75 +597861.93 5682224.93 97.50 +597861.97 5678473.30 111.25 +597861.99 5680730.24 98.50 +597862.20 5678795.38 101.25 +597862.23 5681724.65 98.75 +597862.45 5682162.35 97.50 +597862.52 5681763.33 98.75 +597862.68 5683596.84 98.75 +597862.75 5681798.73 98.75 +597862.78 5681991.69 97.50 +597862.90 5678010.56 105.00 +597863.26 5678450.62 112.50 +597863.28 5681656.90 98.75 +597863.48 5683538.60 98.75 +597863.64 5684097.97 97.50 +597863.67 5683801.46 97.50 +597863.70 5681714.90 98.75 +597863.79 5683611.43 98.75 +597863.89 5683766.99 97.50 +597863.93 5678863.15 100.00 +597863.95 5683447.43 98.75 +597864.19 5678498.22 111.00 +597864.23 5678176.92 107.50 +597864.63 5678637.75 108.75 +597864.72 5678736.87 103.75 +597864.89 5682739.14 98.75 +597865.05 5681336.99 98.75 +597865.08 5681940.57 96.25 +597865.09 5683842.07 98.75 +597865.31 5678687.78 106.25 +597865.35 5678147.97 107.50 +597865.51 5681705.22 98.75 +597865.54 5678138.09 107.50 +597865.73 5678128.21 107.50 +597865.74 5680297.06 98.75 +597865.74 5680810.21 98.75 +597865.76 5680715.06 98.50 +597865.90 5683467.95 97.50 +597865.91 5678157.83 107.50 +597865.94 5683820.49 98.75 +597865.94 5683558.96 98.75 +597865.97 5682040.59 97.50 +597866.01 5683831.72 99.00 +597866.07 5683200.75 98.75 +597866.09 5682001.00 97.50 +597866.12 5681950.02 96.25 +597866.18 5680530.21 98.50 +597866.20 5678044.24 106.25 +597866.32 5682339.87 97.50 +597866.36 5681772.37 98.75 +597866.54 5681666.21 98.75 +597866.59 5678167.69 107.50 +597866.81 5679046.92 98.75 +597867.10 5677967.23 103.75 +597867.12 5683331.33 98.75 +597867.13 5678118.53 107.50 +597867.21 5678320.49 111.25 +597867.35 5678541.33 110.00 +597867.42 5681676.02 98.75 +597867.51 5681695.57 98.75 +597867.53 5683779.93 97.50 +597867.73 5682030.76 97.50 +597867.74 5681424.76 97.50 +597867.79 5682010.85 97.50 +597867.87 5678276.49 110.00 +597867.98 5681821.68 97.50 +597868.05 5682170.63 97.50 +597868.16 5682232.74 97.50 +597868.16 5682020.78 97.50 +597868.21 5678701.07 105.00 +597868.23 5681685.84 98.75 +597868.46 5681201.68 100.00 +597868.55 5684106.66 97.50 +597868.63 5683364.37 98.75 +597868.66 5681791.70 98.75 +597868.85 5680723.33 98.50 +597868.88 5678767.33 102.50 +597868.89 5677808.61 102.50 +597868.92 5683815.18 97.50 +597868.99 5681781.85 98.75 +597869.08 5683407.92 98.75 +597869.12 5683774.47 97.25 +597869.13 5681129.03 100.00 +597869.17 5681349.33 97.00 +597869.22 5683474.07 97.25 +597869.30 5683482.42 97.50 +597869.34 5683180.52 98.75 +597869.68 5682747.92 98.75 +597869.90 5678443.62 112.50 +597870.10 5678660.44 107.50 +597870.19 5681840.81 96.25 +597870.29 5678109.17 107.50 +597870.33 5680681.99 98.50 +597870.41 5683294.69 98.75 +597870.53 5678234.03 108.75 +597870.53 5681958.61 96.25 +597870.57 5680772.41 98.75 +597870.89 5681932.88 96.25 +597870.91 5681356.60 97.00 +597870.99 5678353.63 112.50 +597871.08 5680801.91 98.75 +597871.23 5683122.67 98.75 +597871.30 5678476.83 111.25 +597871.36 5679582.93 98.75 +597871.54 5683594.15 98.75 +597871.66 5683153.19 98.75 +597871.72 5680762.56 98.75 +597871.89 5678433.92 112.50 +597872.04 5678006.69 105.00 +597872.06 5680782.28 98.75 +597872.08 5678796.56 101.25 +597872.16 5678731.21 103.75 +597872.83 5683442.85 98.75 +597872.98 5680792.16 98.75 +597872.98 5679039.08 98.75 +597873.06 5683613.80 98.75 +597873.07 5681834.29 96.25 +597873.29 5683539.88 98.75 +597873.39 5678633.18 108.75 +597873.44 5678099.80 107.50 +597873.47 5684115.36 97.50 +597873.58 5683769.14 97.50 +597873.61 5677959.67 103.75 +597873.61 5683801.45 97.50 +597873.69 5678861.06 100.00 +597874.08 5682178.57 97.50 +597874.46 5682756.69 98.75 +597874.82 5683416.11 98.75 +597874.88 5678269.66 110.00 +597874.91 5681194.29 100.00 +597874.94 5681337.69 98.75 +597874.98 5683337.43 98.75 +597875.02 5678685.98 106.25 +597875.05 5683841.50 98.75 +597875.36 5678040.47 106.25 +597875.48 5683470.32 97.50 +597875.50 5681431.05 97.50 +597875.64 5678424.80 112.50 +597875.67 5680295.94 98.75 +597875.68 5683560.78 98.75 +597875.90 5683820.05 98.75 +597875.99 5682342.32 97.50 +597876.01 5683201.82 98.75 +597876.04 5681942.50 96.00 +597876.18 5680530.21 98.50 +597876.23 5681966.19 96.25 +597876.33 5681827.00 97.50 +597876.34 5682238.22 97.50 +597876.69 5678538.04 110.00 +597876.88 5681952.44 96.00 +597876.90 5681135.20 100.00 +597876.91 5678318.14 111.25 +597877.11 5680674.64 98.50 +597877.26 5677803.14 102.50 +597877.40 5683780.95 97.50 +597877.57 5680754.70 98.75 +597877.88 5678698.74 105.00 +597878.01 5678359.56 112.50 +597878.02 5683361.04 98.75 +597878.25 5681926.93 96.25 +597878.26 5683425.40 98.75 +597878.27 5683288.72 98.75 +597878.33 5683434.59 98.75 +597878.48 5683477.07 97.25 +597878.60 5684123.90 97.50 +597878.71 5683485.43 97.50 +597878.73 5678768.79 102.50 +597878.76 5681350.44 97.00 +597878.84 5683813.96 97.50 +597878.88 5681845.66 96.25 +597878.88 5679031.02 98.75 +597878.97 5683775.59 97.25 +597879.25 5682765.47 98.75 +597879.30 5683179.75 98.75 +597879.54 5678657.68 107.50 +597879.78 5678415.81 112.50 +597880.04 5678092.78 107.50 +597880.18 5677952.16 103.75 +597880.37 5678233.37 108.75 +597880.41 5681186.03 100.00 +597880.52 5681357.09 97.00 +597880.61 5683119.29 98.75 +597880.66 5678479.33 111.25 +597880.76 5682185.99 97.50 +597881.03 5683592.93 98.75 +597881.30 5678003.12 105.00 +597881.30 5683345.10 98.75 +597881.32 5679582.10 98.75 +597881.54 5683154.31 98.75 +597881.80 5678627.84 108.75 +597881.89 5678729.09 103.75 +597881.94 5678262.91 110.00 +597881.96 5678798.07 101.25 +597882.01 5678368.35 112.50 +597882.11 5681838.52 96.25 +597882.21 5680666.15 98.50 +597882.39 5683615.97 98.75 +597882.91 5683542.29 98.75 +597883.04 5681959.75 96.00 +597883.40 5683770.48 97.50 +597883.51 5678859.25 100.00 +597883.53 5681972.51 96.25 +597883.56 5683801.68 97.50 +597883.72 5683354.19 98.75 +597883.86 5678406.78 112.50 +597884.08 5681435.06 97.50 +597884.13 5678378.02 112.50 +597884.59 5678683.48 106.25 +597884.61 5681141.46 100.00 +597884.79 5679022.96 98.75 +597884.79 5681338.77 98.75 +597884.84 5683281.24 98.75 +597884.87 5682773.66 98.75 +597884.90 5678037.77 106.25 +597884.90 5683564.43 98.75 +597884.93 5683840.44 98.75 +597885.11 5681831.56 97.50 +597885.17 5684131.43 97.50 +597885.18 5683472.22 97.50 +597885.29 5681177.41 100.00 +597885.33 5682242.46 97.50 +597885.39 5680748.54 98.75 +597885.42 5680293.81 98.75 +597885.74 5680656.86 98.50 +597885.77 5678387.78 112.50 +597885.86 5683819.93 98.75 +597885.94 5683202.88 98.75 +597885.97 5682342.89 97.50 +597886.03 5678534.74 110.00 +597886.16 5680529.98 98.50 +597886.43 5678318.75 111.25 +597886.47 5677799.32 102.50 +597886.77 5677944.66 103.75 +597886.79 5681927.39 96.25 +597886.95 5678397.61 112.50 +597887.28 5683781.97 97.50 +597887.61 5681945.60 96.25 +597887.72 5678698.54 105.00 +597887.74 5683480.07 97.25 +597887.82 5678652.10 107.50 +597887.93 5681849.88 96.25 +597888.07 5678087.22 107.50 +597888.13 5683488.44 97.50 +597888.34 5680647.28 98.50 +597888.39 5681351.10 97.00 +597888.42 5682192.41 97.50 +597888.62 5678769.84 102.50 +597888.75 5683812.75 97.50 +597888.82 5678621.00 108.75 +597888.85 5683776.35 97.25 +597889.20 5678228.79 108.75 +597889.27 5683178.98 98.75 +597889.30 5681936.09 96.25 +597889.37 5681168.37 100.00 +597889.53 5683114.83 98.75 +597889.53 5681149.43 100.00 +597889.59 5683272.45 98.75 +597889.95 5677998.48 105.00 +597890.00 5681358.66 97.00 +597890.06 5678476.20 111.25 +597890.09 5679014.51 98.75 +597890.47 5681966.41 96.00 +597890.49 5678258.14 110.00 +597890.53 5683591.72 98.75 +597891.05 5683157.26 98.75 +597891.12 5679580.28 98.75 +597891.28 5681842.49 96.25 +597891.41 5682781.21 98.75 +597891.46 5683618.98 98.75 +597891.64 5681159.13 100.00 +597891.69 5678727.71 103.75 +597891.72 5677936.26 103.75 +597891.73 5684138.95 97.50 +597891.84 5678799.59 101.25 +597892.00 5681977.12 96.25 +597892.39 5681953.99 96.25 +597892.65 5683543.86 98.75 +597893.24 5680742.40 98.75 +597893.27 5683771.55 97.50 +597893.33 5678857.43 100.00 +597893.50 5683802.03 97.50 +597893.70 5678528.61 110.00 +597893.96 5678680.86 106.25 +597893.98 5681835.96 97.50 +597894.05 5678034.05 106.25 +597894.06 5681435.06 97.50 +597894.49 5681405.59 95.50 +597894.59 5677926.70 103.75 +597894.61 5683837.99 98.75 +597894.62 5683566.44 98.75 +597894.65 5681339.87 98.75 +597894.65 5678323.90 111.25 +597894.75 5683474.54 97.50 +597894.80 5678613.03 108.75 +597894.97 5682245.10 97.50 +597895.05 5679005.84 98.75 +597895.10 5680291.33 98.75 +597895.23 5680640.04 98.50 +597895.48 5683264.59 98.75 +597895.71 5683821.47 98.75 +597895.80 5677795.71 102.50 +597895.88 5678646.22 107.50 +597895.92 5683203.41 98.75 +597895.94 5682343.46 97.50 +597895.97 5678468.16 111.25 +597896.08 5682198.83 97.50 +597896.10 5680528.93 98.50 +597896.65 5683484.00 97.25 +597897.00 5681854.07 96.25 +597897.13 5683492.50 97.50 +597897.15 5683782.95 97.50 +597897.34 5678083.80 107.50 +597897.40 5677917.13 103.75 +597897.55 5678697.88 105.00 +597897.90 5681352.72 97.00 +597897.92 5677992.60 105.00 +597897.95 5682788.77 98.75 +597898.06 5678224.28 108.75 +597898.33 5681972.54 96.00 +597898.43 5684146.36 97.50 +597898.54 5683814.32 97.50 +597898.57 5678770.07 102.50 +597898.66 5678332.97 111.25 +597898.68 5683175.97 98.75 +597898.73 5683777.12 97.25 +597898.98 5681362.19 97.00 +597899.10 5678253.52 110.00 +597899.19 5683112.25 98.75 +597899.85 5683161.57 98.75 +597900.01 5678997.16 98.75 +597900.01 5681982.43 96.25 +597900.06 5683590.81 98.75 +597900.21 5677907.55 103.75 +597900.47 5680735.50 98.75 +597900.49 5681846.34 96.25 +597900.71 5678605.02 108.75 +597900.73 5683621.13 98.75 +597900.79 5681958.70 96.25 +597900.86 5679578.04 98.75 +597901.09 5678522.02 110.00 +597901.64 5678727.55 103.75 +597901.72 5678801.11 101.25 +597902.17 5678686.36 106.25 +597902.34 5678342.24 111.25 +597902.55 5683544.19 98.75 +597902.65 5678460.80 111.25 +597902.95 5681840.13 97.50 +597903.01 5678029.82 106.25 +597903.03 5680633.80 98.50 +597903.14 5683772.62 97.50 +597903.21 5678855.99 100.00 +597903.23 5683258.29 98.75 +597903.36 5683803.31 97.50 +597903.44 5682061.41 96.25 +597903.66 5683606.37 99.00 +597903.74 5682205.24 97.50 +597903.79 5683478.55 97.50 +597903.87 5681343.26 98.75 +597903.95 5678640.39 107.50 +597904.05 5681435.06 97.50 +597904.08 5678595.64 108.75 +597904.08 5683834.87 98.75 +597904.29 5678216.88 108.75 +597904.33 5683568.45 98.75 +597904.37 5678188.05 108.75 +597904.39 5682070.98 96.25 +597904.49 5680287.92 98.75 +597904.72 5677898.79 103.75 +597904.75 5682243.37 97.50 +597904.79 5678178.11 108.75 +597905.01 5678197.93 108.75 +597905.21 5683169.53 98.75 +597905.22 5678168.17 108.75 +597905.32 5682795.51 98.75 +597905.38 5677793.08 102.50 +597905.48 5683823.25 98.75 +597905.49 5684153.31 97.50 +597905.55 5683487.95 97.25 +597905.72 5680526.42 98.50 +597905.84 5683556.61 99.00 +597905.91 5683203.64 98.75 +597905.91 5682344.15 97.50 +597905.93 5681858.53 96.25 +597905.99 5681978.92 96.00 +597906.02 5683496.81 97.50 +597906.20 5678158.27 108.75 +597906.38 5678207.78 108.75 +597906.50 5678990.15 98.75 +597906.55 5678080.20 107.50 +597906.64 5681989.25 96.25 +597906.87 5677988.33 105.00 +597906.98 5678351.07 111.25 +597907.07 5683782.60 97.50 +597907.18 5678586.17 108.75 +597907.19 5678148.38 108.75 +597907.29 5678695.88 105.00 +597907.35 5681354.66 97.00 +597907.50 5681366.73 97.00 +597907.61 5682052.45 96.25 +597908.04 5678249.53 110.00 +597908.07 5678453.12 111.25 +597908.30 5678443.14 111.25 +597908.31 5683816.41 97.50 +597908.34 5680729.78 98.75 +597908.52 5678770.29 102.50 +597908.53 5678433.17 111.25 +597908.79 5678515.82 110.00 +597908.83 5678138.61 108.75 +597908.84 5683109.66 98.75 +597908.90 5681963.93 96.25 +597909.61 5683590.09 98.75 +597909.84 5681849.84 96.25 +597909.87 5678685.85 106.25 +597910.22 5683622.43 98.75 +597910.26 5678576.69 108.75 +597910.40 5677890.58 103.75 +597910.48 5680627.16 98.50 +597910.60 5679575.80 98.75 +597910.73 5681997.96 96.25 +597910.91 5682212.20 97.50 +597911.53 5683253.36 98.75 +597911.59 5678800.29 101.25 +597911.59 5678727.39 103.75 +597911.63 5678359.90 111.25 +597911.66 5678423.95 111.25 +597911.72 5683829.76 98.75 +597911.92 5682077.43 96.25 +597912.00 5678025.66 106.25 +597912.23 5681843.58 97.50 +597912.27 5683546.17 98.75 +597912.57 5683483.07 97.50 +597912.66 5678129.67 108.75 +597912.70 5682802.25 98.75 +597912.75 5678635.75 107.50 +597912.91 5681347.34 98.75 +597913.03 5683773.36 97.50 +597913.12 5678854.76 100.00 +597913.23 5683804.58 97.50 +597913.28 5682007.26 96.25 +597913.52 5682238.97 97.50 +597913.66 5681985.31 96.00 +597913.79 5680284.25 98.75 +597914.05 5683570.40 98.75 +597914.11 5678567.55 108.75 +597914.22 5683502.33 97.50 +597914.26 5683492.24 97.25 +597914.32 5684157.98 97.50 +597914.86 5681863.00 96.25 +597915.01 5682045.92 96.25 +597915.15 5681970.84 96.25 +597915.20 5680523.25 98.50 +597915.29 5677791.72 102.50 +597915.52 5682220.53 97.50 +597915.56 5678985.95 98.75 +597915.67 5678076.40 107.50 +597915.83 5677984.06 105.00 +597915.88 5682344.85 97.50 +597915.90 5683203.86 98.75 +597915.90 5680618.87 98.50 +597915.93 5681358.49 97.00 +597916.28 5678368.73 111.25 +597916.32 5678415.13 111.25 +597916.57 5681366.73 97.00 +597916.86 5678693.30 105.00 +597916.91 5683781.74 97.50 +597916.92 5678510.16 110.00 +597916.97 5678245.53 110.00 +597917.02 5678679.02 106.25 +597917.30 5682230.36 97.50 +597917.67 5682618.95 98.75 +597917.72 5682609.79 98.75 +597918.07 5680727.81 98.75 +597918.07 5683818.50 97.50 +597918.17 5677884.36 103.75 +597918.47 5678770.47 102.50 +597918.70 5682084.65 96.25 +597918.72 5683109.61 98.75 +597918.85 5683591.25 98.75 +597919.05 5678558.90 108.75 +597919.25 5681853.18 96.25 +597919.39 5681979.51 96.25 +597919.57 5683620.39 98.75 +597919.63 5678122.58 108.75 +597919.74 5678628.63 107.50 +597919.76 5680893.29 98.75 +597920.08 5682809.00 98.75 +597920.27 5680609.90 98.50 +597920.27 5679573.40 98.75 +597920.40 5678377.79 111.25 +597920.91 5680902.56 98.75 +597920.99 5678406.31 111.25 +597921.22 5683487.85 97.50 +597921.33 5682011.82 96.25 +597921.47 5678798.74 101.25 +597921.50 5678726.71 103.75 +597921.50 5683252.70 98.75 +597921.52 5681847.03 97.50 +597921.74 5678023.84 106.25 +597921.87 5681351.53 98.75 +597921.98 5683548.16 98.75 +597922.30 5683497.73 97.25 +597922.32 5683775.86 97.50 +597922.42 5683507.84 97.50 +597922.52 5680884.37 98.75 +597922.86 5678852.66 100.00 +597923.09 5680280.58 98.75 +597923.10 5683805.62 97.50 +597923.15 5684162.65 97.50 +597923.18 5682627.26 98.75 +597923.48 5682602.21 98.75 +597923.54 5678387.26 111.25 +597923.63 5681988.19 96.25 +597923.69 5680600.51 98.50 +597923.81 5681867.43 96.25 +597923.86 5683571.89 98.75 +597924.02 5682049.41 96.25 +597924.05 5678396.97 111.25 +597924.16 5678672.19 106.25 +597924.19 5678550.36 108.75 +597924.47 5682092.63 96.25 +597924.63 5678981.75 98.75 +597924.72 5678239.72 110.00 +597925.01 5678073.28 107.50 +597925.05 5678504.50 110.00 +597925.07 5680524.36 98.50 +597925.19 5677790.36 102.50 +597925.35 5677981.70 105.00 +597925.69 5681997.52 96.25 +597925.82 5682345.69 97.50 +597925.86 5683613.37 98.75 +597925.87 5683203.30 98.75 +597926.16 5678689.76 105.00 +597926.40 5677879.02 103.75 +597926.42 5680875.93 98.75 +597926.60 5680909.91 98.75 +597926.83 5683595.74 98.75 +597926.95 5682007.09 96.25 +597927.01 5678116.13 108.75 +597927.06 5680591.10 98.50 +597927.43 5678622.26 107.50 +597927.53 5682058.25 96.25 +597927.72 5682068.16 96.25 +597927.92 5680729.49 98.75 +597927.97 5678767.48 102.50 +597928.03 5683818.95 97.50 +597928.25 5682101.66 96.25 +597928.25 5682150.89 96.25 +597928.61 5682814.06 98.75 +597928.64 5682078.03 96.25 +597928.64 5683515.51 97.50 +597928.67 5681856.51 96.25 +597928.67 5683110.47 98.75 +597928.73 5678231.17 110.00 +597929.06 5681358.36 98.75 +597929.16 5678612.61 107.50 +597929.18 5682635.18 98.75 +597929.19 5679568.88 98.75 +597929.33 5678541.82 108.75 +597929.52 5682141.06 96.25 +597929.74 5683604.86 98.75 +597929.79 5683503.87 97.25 +597929.79 5683492.78 97.50 +597929.82 5682111.45 96.25 +597929.93 5678211.79 110.00 +597930.05 5678221.57 110.00 +597930.37 5680581.67 98.50 +597930.41 5678202.06 110.00 +597930.50 5682121.32 96.25 +597930.77 5682131.23 96.25 +597930.95 5681850.05 97.50 +597930.99 5680867.85 98.75 +597931.29 5682596.01 98.75 +597931.32 5678725.10 103.75 +597931.34 5678797.19 101.25 +597931.39 5683551.14 98.75 +597931.45 5683253.12 98.75 +597931.52 5678665.58 106.25 +597931.56 5678022.86 106.25 +597932.27 5680276.69 98.75 +597932.39 5678192.48 110.00 +597932.49 5678849.99 100.00 +597932.68 5682159.74 96.25 +597932.86 5681871.67 96.25 +597933.05 5683805.36 97.50 +597933.17 5678498.83 110.00 +597933.49 5682086.57 96.25 +597933.57 5683570.72 98.75 +597933.68 5680572.24 98.50 +597933.70 5678977.55 98.75 +597933.80 5680528.39 98.50 +597934.49 5678182.93 110.00 +597934.65 5678071.12 107.50 +597934.90 5678604.85 107.50 +597934.94 5683523.13 97.50 +597934.98 5680913.20 98.75 +597935.15 5677789.52 102.50 +597935.20 5677980.50 105.00 +597935.36 5682348.67 97.50 +597935.59 5678686.62 105.00 +597935.84 5683202.66 98.75 +597935.98 5682642.48 98.75 +597936.21 5678534.65 108.75 +597936.24 5677877.38 103.75 +597936.25 5681365.18 98.75 +597936.43 5683510.99 97.25 +597936.43 5678112.96 108.75 +597937.14 5683499.28 97.50 +597937.28 5680895.68 96.25 +597937.47 5678764.48 102.50 +597937.54 5682818.54 98.75 +597937.77 5680731.18 98.75 +597938.02 5683819.18 97.50 +597938.10 5679564.36 98.75 +597938.13 5680563.29 98.50 +597938.28 5678173.91 110.00 +597938.36 5681858.73 96.25 +597938.50 5680862.30 98.75 +597938.53 5683112.00 98.75 +597938.70 5678491.12 110.00 +597938.91 5682167.34 96.25 +597939.30 5682094.48 96.25 +597939.37 5682590.19 98.75 +597939.56 5678659.89 106.25 +597939.60 5683556.24 98.75 +597940.10 5681374.13 98.75 +597940.38 5681853.06 97.50 +597940.66 5680271.25 98.75 +597940.77 5678596.78 107.50 +597941.05 5683564.74 98.75 +597941.05 5678723.10 103.75 +597941.08 5678794.97 101.25 +597941.34 5683530.66 97.50 +597941.40 5683254.06 98.75 +597941.48 5678022.86 106.25 +597941.48 5680534.79 98.50 +597941.90 5681875.90 96.25 +597941.92 5680554.11 98.50 +597942.11 5678847.32 100.00 +597942.33 5678481.90 110.00 +597942.78 5682649.77 98.75 +597942.97 5683804.98 97.50 +597942.98 5683518.19 97.25 +597943.00 5678973.94 98.75 +597943.28 5678527.63 108.75 +597943.34 5678165.61 110.00 +597943.84 5683506.54 97.50 +597943.99 5680544.33 98.50 +597944.11 5680912.02 98.75 +597944.50 5678071.01 107.50 +597945.09 5678683.69 105.00 +597945.10 5677980.20 105.00 +597945.13 5677788.84 102.50 +597945.22 5682350.27 97.50 +597945.23 5682102.30 96.25 +597945.65 5678472.60 110.00 +597945.82 5683202.01 98.75 +597945.86 5678109.78 108.75 +597946.10 5678588.38 107.50 +597946.16 5677876.89 103.75 +597946.24 5682998.31 98.75 +597946.38 5680863.46 98.75 +597946.48 5682823.02 98.75 +597946.96 5678761.47 102.50 +597947.01 5679559.84 98.75 +597947.25 5681379.90 98.75 +597947.26 5682172.21 96.25 +597947.38 5678462.84 110.00 +597947.56 5680733.17 98.75 +597947.66 5678654.30 106.25 +597947.68 5683816.85 97.50 +597947.71 5683538.22 97.50 +597947.82 5682584.91 98.75 +597948.24 5681860.13 96.25 +597948.28 5683114.17 98.75 +597949.05 5680265.80 98.75 +597949.11 5678453.09 110.00 +597949.28 5683525.61 97.25 +597949.29 5683007.07 98.75 +597949.51 5678519.87 108.75 +597949.57 5682657.07 98.75 +597949.99 5678569.33 107.50 +597950.02 5682110.84 96.25 +597950.05 5683514.23 97.50 +597950.09 5678159.22 110.00 +597950.18 5678579.32 107.50 +597950.54 5678720.25 103.75 +597950.77 5678792.54 101.25 +597950.78 5680871.68 98.75 +597950.89 5678443.35 110.00 +597950.95 5681880.14 96.25 +597951.17 5683256.06 98.75 +597951.35 5678023.47 106.25 +597951.43 5678843.92 100.00 +597951.46 5680907.07 98.75 +597951.66 5678559.59 107.50 +597951.93 5683800.67 97.50 +597952.22 5678329.28 110.00 +597952.46 5678970.74 98.75 +597953.33 5678319.54 110.00 +597953.36 5683546.32 97.50 +597953.61 5682992.52 98.75 +597953.73 5680880.54 98.75 +597953.99 5682354.71 97.50 +597954.01 5678073.41 107.50 +597954.15 5678434.00 110.00 +597954.32 5682119.67 96.25 +597954.40 5678338.94 110.00 +597954.59 5678680.76 105.00 +597954.67 5678647.34 106.25 +597955.02 5677980.34 105.00 +597955.11 5677788.40 102.50 +597955.44 5682827.44 98.75 +597955.49 5678511.90 108.75 +597955.59 5683533.03 97.25 +597955.59 5680889.57 98.75 +597955.59 5680898.91 98.75 +597955.63 5678550.54 107.50 +597955.64 5678108.31 108.75 +597955.79 5683201.41 98.75 +597955.92 5679555.33 98.75 +597956.05 5681384.43 98.75 +597956.08 5683522.05 97.50 +597956.14 5677877.19 103.75 +597956.28 5682579.62 98.75 +597956.36 5678758.20 102.50 +597956.42 5682664.32 98.75 +597956.43 5683013.90 98.75 +597956.48 5678310.38 110.00 +597956.59 5678348.60 110.00 +597956.59 5682175.56 96.25 +597957.30 5683814.15 97.50 +597957.35 5680735.16 98.75 +597957.42 5678424.65 110.00 +597957.43 5680260.36 98.75 +597957.44 5682503.04 98.75 +597958.04 5683116.33 98.75 +597958.21 5682128.68 96.25 +597958.83 5678358.25 110.00 +597959.00 5683554.45 97.50 +597959.14 5678715.23 103.75 +597959.44 5682512.81 98.75 +597959.69 5682493.57 98.75 +597959.70 5678157.38 110.00 +597959.94 5681884.47 96.25 +597960.02 5680923.43 98.75 +597960.17 5678839.08 100.00 +597960.40 5678789.89 101.25 +597960.68 5678415.30 110.00 +597960.80 5683796.23 97.50 +597960.88 5683258.42 98.75 +597961.21 5678024.56 106.25 +597961.46 5678503.92 108.75 +597961.58 5678542.57 107.50 +597961.66 5683540.63 97.25 +597961.69 5678640.38 106.25 +597961.93 5678967.54 98.75 +597961.97 5683529.99 97.50 +597962.00 5678367.63 110.00 +597962.10 5682137.70 96.25 +597962.24 5678302.32 110.00 +597962.39 5682360.13 97.50 +597962.44 5682522.32 98.75 +597962.90 5682990.19 98.75 +597963.01 5682484.16 98.75 +597963.30 5682671.53 98.75 +597963.53 5678075.80 107.50 +597963.85 5680916.08 98.75 +597964.06 5678377.29 110.00 +597964.14 5678677.98 105.00 +597964.35 5677882.36 103.75 +597964.47 5681389.67 98.75 +597964.50 5683019.63 98.75 +597964.51 5682831.63 98.75 +597964.51 5678406.16 110.00 +597964.58 5683562.60 97.50 +597964.75 5677982.08 105.00 +597964.83 5679550.81 98.75 +597964.87 5682574.56 98.75 +597965.04 5682147.07 96.25 +597965.11 5677788.20 102.50 +597965.55 5678107.50 108.75 +597965.56 5678387.08 110.00 +597965.77 5678754.93 102.50 +597965.77 5683200.88 98.75 +597966.06 5680931.24 98.75 +597966.41 5680255.97 98.75 +597966.50 5682175.79 96.25 +597966.54 5682474.84 98.75 +597966.61 5682531.38 98.75 +597966.92 5683811.44 97.50 +597967.06 5678396.87 110.00 +597967.13 5683548.69 97.25 +597967.15 5678495.75 108.75 +597967.16 5680735.87 98.75 +597967.22 5683788.63 97.50 +597967.73 5678710.21 103.75 +597967.79 5683118.50 98.75 +597968.12 5683537.74 97.50 +597968.20 5678535.10 107.50 +597968.53 5681768.27 97.50 +597968.84 5678633.54 106.25 +597968.90 5678834.23 100.00 +597968.92 5681888.86 96.25 +597969.14 5678154.82 110.00 +597969.48 5682367.15 97.50 +597969.89 5678786.76 101.25 +597970.19 5682678.74 98.75 +597970.37 5682154.98 96.25 +597970.39 5678296.92 110.00 +597970.40 5682465.69 98.75 +597970.64 5681760.50 97.50 +597970.78 5682540.43 98.75 +597970.83 5683259.29 98.75 +597970.97 5678026.14 106.25 +597971.39 5678964.34 98.75 +597971.87 5681396.16 98.75 +597971.95 5683569.13 97.50 +597972.19 5677888.52 103.75 +597972.31 5678672.47 105.00 +597972.59 5683556.75 97.25 +597972.73 5678487.49 108.75 +597972.79 5682569.02 98.75 +597972.79 5682989.80 98.75 +597972.89 5680911.95 98.75 +597973.41 5678076.14 107.50 +597973.47 5683023.46 98.75 +597973.58 5682835.82 98.75 +597973.74 5679546.29 98.75 +597973.79 5682549.86 98.75 +597973.96 5680937.32 98.75 +597974.26 5678527.16 107.50 +597974.28 5683545.46 97.50 +597974.45 5677984.19 105.00 +597974.67 5681775.20 97.50 +597974.74 5682375.44 97.50 +597974.77 5678288.30 110.00 +597975.11 5677788.01 102.50 +597975.17 5678751.66 102.50 +597975.40 5680251.60 98.75 +597975.48 5678106.96 108.75 +597975.69 5682559.65 98.75 +597975.75 5683200.35 98.75 +597975.99 5678626.72 106.25 +597976.20 5678705.00 103.75 +597976.26 5683788.61 97.50 +597976.33 5682457.68 98.75 +597976.41 5682176.02 96.25 +597976.53 5683808.72 97.50 +597976.96 5681894.70 96.25 +597977.01 5680734.14 98.75 +597977.19 5678478.61 108.75 +597977.57 5683120.54 98.75 +597977.63 5678829.39 100.00 +597977.88 5678279.13 110.00 +597978.30 5677896.41 103.75 +597978.54 5682159.18 96.25 +597978.54 5678152.13 110.00 +597978.63 5682384.64 97.50 +597978.93 5681399.78 98.75 +597979.01 5678269.41 110.00 +597979.38 5678783.63 101.25 +597979.42 5683254.99 98.75 +597979.65 5682681.75 98.75 +597979.86 5678666.01 105.00 +597980.12 5678519.08 107.50 +597980.17 5678617.79 106.25 +597980.29 5681760.50 97.50 +597980.67 5678027.44 106.25 +597980.68 5683553.00 97.50 +597980.85 5683573.24 97.50 +597980.86 5678961.14 98.75 +597981.23 5678259.95 110.00 +597981.25 5678469.51 108.75 +597981.48 5680943.86 98.75 +597982.00 5683781.75 97.50 +597982.47 5682840.34 98.75 +597982.54 5682990.83 98.75 +597982.69 5682393.77 97.50 +597982.80 5680910.89 98.75 +597983.02 5683026.06 98.75 +597983.12 5682450.74 98.75 +597983.14 5679543.28 98.75 +597983.19 5681779.72 97.50 +597983.29 5678076.48 107.50 +597984.22 5677985.92 105.00 +597984.24 5678608.78 106.25 +597984.32 5677904.36 103.75 +597984.51 5678699.52 103.75 +597984.53 5680247.52 98.75 +597984.58 5678748.39 102.50 +597984.63 5678250.77 110.00 +597984.63 5683772.15 97.50 +597984.71 5681901.00 96.25 +597984.79 5678460.20 108.75 +597984.98 5677786.57 102.50 +597985.42 5678106.72 108.75 +597985.44 5680654.28 98.75 +597985.73 5683199.83 98.75 +597985.76 5678510.85 107.50 +597985.93 5680730.01 98.75 +597986.03 5682178.29 96.25 +597986.18 5678824.23 100.00 +597986.19 5678658.59 105.00 +597986.20 5683806.24 97.50 +597986.53 5681393.41 98.75 +597986.83 5682402.87 97.50 +597986.93 5683560.65 97.50 +597987.23 5680663.90 98.75 +597987.43 5683122.21 98.75 +597987.47 5677913.82 103.75 +597987.63 5678599.50 106.25 +597987.68 5683249.37 98.75 +597987.90 5683762.77 97.50 +597987.98 5678149.55 110.00 +597988.15 5678450.82 108.75 +597988.34 5682159.65 96.25 +597988.52 5680950.91 98.75 +597988.98 5678780.88 101.25 +597989.14 5683569.16 97.50 +597989.20 5682684.59 98.75 +597989.34 5680645.33 98.75 +597989.46 5681763.11 97.50 +597990.11 5678242.69 110.00 +597990.15 5681976.40 96.25 +597990.25 5678649.51 105.00 +597990.32 5678957.94 98.75 +597990.43 5678502.02 107.50 +597990.50 5678026.15 106.25 +597990.78 5681423.39 97.50 +597990.85 5678590.15 106.25 +597990.96 5682411.96 97.50 +597990.97 5682845.61 98.75 +597990.97 5681908.28 96.25 +597991.56 5681985.66 96.25 +597991.63 5681966.57 96.25 +597992.19 5682993.03 98.75 +597992.25 5680672.44 98.75 +597992.30 5681782.82 97.50 +597992.58 5683028.60 98.75 +597992.64 5682451.19 98.75 +597992.71 5680909.83 98.75 +597992.87 5678694.12 103.75 +597992.89 5683754.37 97.50 +597992.91 5677922.02 103.75 +597993.01 5679541.75 98.75 +597993.10 5678075.33 107.50 +597993.35 5680723.49 98.75 +597993.69 5680243.51 98.75 +597993.70 5681956.80 96.25 +597993.71 5681917.88 96.25 +597993.85 5678580.73 106.25 +597993.95 5678442.77 108.75 +597993.99 5677987.66 105.00 +597994.04 5678745.29 102.50 +597994.40 5678640.47 105.00 +597994.56 5682182.99 96.25 +597994.65 5678818.94 100.00 +597994.68 5681387.98 98.75 +597994.82 5677784.78 102.50 +597994.90 5678493.12 107.50 +597995.03 5678105.05 108.75 +597995.33 5678234.41 110.00 +597995.51 5683243.29 98.75 +597995.52 5681432.10 97.50 +597995.57 5680957.96 98.75 +597995.59 5682420.79 97.50 +597995.70 5681419.92 97.50 +597995.71 5683199.41 98.75 +597995.76 5681947.03 96.25 +597995.97 5683804.15 97.50 +597996.46 5681927.48 96.25 +597996.84 5678571.31 106.25 +597997.27 5683123.95 98.75 +597997.44 5678147.06 110.00 +597997.45 5681937.18 96.25 +597997.50 5680639.57 98.75 +597997.59 5678483.50 107.50 +597997.69 5682157.25 96.25 +597998.49 5681766.50 97.50 +597998.70 5678778.54 101.25 +597998.78 5678631.54 105.00 +597998.89 5682686.92 98.75 +597999.29 5677929.69 103.75 +597999.47 5682850.87 98.75 +597999.71 5681991.43 96.25 +597999.80 5678954.79 98.75 +597999.83 5680715.89 98.75 +597999.84 5678561.89 106.25 +598000.07 5678434.92 108.75 +598000.16 5680678.28 98.75 +598000.29 5678473.89 107.50 +598000.33 5678024.89 106.25 +598000.40 5683748.08 97.50 +598000.72 5681440.54 97.50 +598000.82 5678226.33 110.00 +598000.96 5682456.36 98.75 +598001.09 5682429.13 97.50 +598001.19 5678688.68 103.75 +598001.52 5681785.66 97.50 +598001.87 5682995.10 98.75 +598002.01 5683235.69 98.75 +598002.05 5678552.30 106.25 +598002.16 5682189.34 96.25 +598002.18 5683031.00 98.75 +598002.61 5680908.71 98.75 +598002.85 5680239.51 98.75 +598002.87 5680964.69 98.75 +598002.89 5679540.22 98.75 +598002.90 5678074.10 107.50 +598003.08 5680706.54 98.75 +598003.29 5678813.93 100.00 +598003.32 5678542.49 106.25 +598003.36 5678464.39 107.50 +598003.53 5680687.19 98.75 +598003.61 5678742.54 102.50 +598003.75 5677989.46 105.00 +598003.79 5678622.97 105.00 +598003.97 5681384.52 98.75 +598004.06 5678100.88 108.75 +598004.50 5677782.38 102.50 +598004.55 5678153.57 110.00 +598004.80 5683202.21 98.75 +598005.19 5683581.31 97.50 +598005.41 5681421.90 97.50 +598005.47 5680633.59 98.75 +598005.73 5680696.94 98.75 +598005.86 5677937.19 103.75 +598005.93 5683804.12 97.50 +598005.98 5681922.84 96.00 +598006.19 5678427.05 108.75 +598006.52 5682437.51 97.50 +598006.80 5678218.59 110.00 +598006.84 5678455.03 107.50 +598006.84 5682153.70 96.25 +598007.06 5683125.41 98.75 +598007.29 5681770.42 97.50 +598007.60 5682856.65 98.75 +598008.10 5681446.93 97.50 +598008.20 5678534.14 106.25 +598008.41 5678776.20 101.25 +598008.47 5682462.84 98.75 +598008.50 5683228.10 98.75 +598008.66 5682688.90 98.75 +598008.99 5683751.19 97.50 +598009.16 5678682.75 103.75 +598009.19 5678614.63 105.00 +598009.28 5678951.63 98.75 +598009.43 5682196.07 96.25 +598009.83 5678417.77 108.75 +598009.94 5678161.70 110.00 +598010.21 5678024.06 106.25 +598010.42 5679147.83 97.50 +598010.66 5681884.72 97.50 +598010.68 5678209.77 110.00 +598010.73 5681788.51 97.50 +598010.92 5683589.19 97.50 +598011.05 5683209.40 98.75 +598011.36 5680969.91 98.75 +598011.48 5678180.76 110.00 +598011.56 5682997.13 98.75 +598011.63 5678170.98 110.00 +598011.65 5682446.09 97.50 +598011.75 5683219.10 98.75 +598011.78 5683033.41 98.75 +598011.84 5679157.39 97.50 +598011.90 5683575.59 97.50 +598012.01 5678190.53 110.00 +598012.04 5680235.58 98.75 +598012.11 5678809.26 100.00 +598012.22 5680626.22 98.75 +598012.44 5682620.31 99.00 +598012.52 5680907.59 98.75 +598012.62 5678200.29 110.00 +598012.69 5678072.73 107.50 +598012.77 5679538.76 98.75 +598012.88 5678605.44 105.00 +598012.98 5677944.18 103.75 +598013.06 5679138.24 97.50 +598013.07 5682146.44 96.25 +598013.12 5678096.78 108.75 +598013.22 5678739.97 102.50 +598013.22 5681380.97 98.75 +598013.28 5681434.79 96.20 +598013.29 5678339.78 108.75 +598013.47 5678408.50 108.75 +598013.48 5677991.43 105.00 +598013.80 5678349.64 108.75 +598014.01 5677779.28 102.50 +598014.09 5678526.21 106.25 +598014.45 5682470.82 98.75 +598014.49 5678449.01 107.50 +598014.78 5678359.55 108.75 +598014.79 5678329.93 108.75 +598015.15 5681423.74 97.50 +598015.20 5683800.74 97.50 +598015.23 5681636.53 97.50 +598015.48 5682862.79 98.75 +598015.48 5678369.49 108.75 +598015.62 5678675.19 103.75 +598015.96 5681774.64 97.50 +598016.18 5678596.05 105.00 +598016.23 5681452.62 97.50 +598016.36 5678399.00 108.75 +598016.59 5683122.46 98.75 +598016.70 5682202.81 96.25 +598016.77 5678379.37 108.75 +598016.78 5682454.66 97.50 +598016.82 5683757.18 97.50 +598016.84 5679165.12 97.50 +598016.98 5678320.24 108.75 +598017.12 5679129.58 97.50 +598018.19 5678774.16 101.25 +598018.22 5678389.21 108.75 +598018.32 5682687.97 98.75 +598018.36 5683595.80 97.50 +598018.52 5680618.46 98.75 +598018.63 5682138.35 96.25 +598018.76 5678948.48 98.75 +598019.20 5678586.61 105.00 +598019.46 5681888.25 97.50 +598019.77 5681639.10 97.50 +598019.87 5682479.14 98.75 +598019.94 5681791.36 97.50 +598019.99 5678518.27 106.25 +598019.99 5678310.74 108.75 +598020.09 5678023.23 106.25 +598020.42 5678576.74 105.00 +598020.64 5677950.57 103.75 +598021.08 5678804.95 100.00 +598021.19 5680971.33 98.75 +598021.37 5683035.84 98.75 +598021.40 5680232.05 98.75 +598021.44 5682997.59 98.75 +598021.69 5681191.31 98.75 +598021.70 5683577.11 97.50 +598021.91 5682463.24 97.50 +598021.99 5681438.63 96.20 +598022.06 5678667.60 103.75 +598022.15 5681181.79 98.75 +598022.24 5678567.00 105.00 +598022.26 5681376.89 98.75 +598022.41 5680906.38 98.75 +598022.42 5678093.40 108.75 +598022.48 5678071.37 107.50 +598022.72 5679537.86 98.75 +598022.84 5681630.31 97.50 +598022.93 5678737.73 102.50 +598023.28 5683795.02 97.50 +598023.32 5677991.50 105.00 +598023.36 5682868.94 98.75 +598023.45 5682210.05 96.25 +598023.46 5678444.87 107.50 +598023.48 5677776.08 102.50 +598023.60 5682129.87 96.25 +598024.12 5682488.15 98.75 +598024.38 5678301.80 108.75 +598024.39 5680806.08 100.00 +598024.40 5681427.32 97.50 +598024.62 5683016.71 98.70 +598024.70 5681457.75 97.50 +598024.84 5681198.03 98.75 +598024.88 5679123.35 97.50 +598025.24 5678557.52 105.00 +598025.50 5680611.54 98.75 +598025.61 5680796.19 100.00 +598025.64 5683602.54 97.50 +598025.66 5683118.28 98.75 +598025.70 5679169.65 97.50 +598025.80 5678510.28 106.25 +598026.08 5678658.50 103.75 +598026.30 5683760.19 97.50 +598026.30 5682472.21 97.50 +598026.82 5681172.95 98.75 +598027.91 5682685.24 98.75 +598028.03 5678772.43 101.25 +598028.15 5678292.59 108.75 +598028.24 5678945.32 98.75 +598028.38 5682497.17 98.75 +598028.86 5680814.83 100.00 +598028.93 5678548.29 105.00 +598029.02 5681889.64 97.50 +598029.24 5677955.16 103.75 +598029.61 5681638.86 96.25 +598029.61 5681638.86 97.50 +598029.72 5678346.07 107.50 +598029.73 5682217.72 96.25 +598029.99 5678022.86 106.25 +598030.10 5678649.40 103.75 +598030.18 5682122.71 96.25 +598030.56 5681624.21 97.50 +598030.57 5682481.24 97.50 +598030.75 5680228.52 98.75 +598030.82 5678802.75 100.00 +598030.97 5683038.27 98.75 +598031.00 5681441.50 96.20 +598031.02 5683580.31 97.50 +598031.10 5682875.20 98.75 +598031.13 5680971.74 98.75 +598031.19 5683789.09 97.50 +598031.28 5678283.15 108.75 +598031.33 5682997.95 98.75 +598031.39 5678502.13 106.25 +598031.58 5680788.46 100.00 +598031.62 5683610.50 97.50 +598031.65 5681373.77 98.75 +598032.05 5682506.43 98.75 +598032.07 5678091.91 108.75 +598032.30 5680905.12 98.75 +598032.36 5678071.53 107.50 +598032.63 5678735.50 102.50 +598032.63 5679117.12 97.50 +598032.64 5677772.07 102.50 +598032.67 5679536.96 98.75 +598032.72 5678355.00 107.50 +598032.73 5678539.10 105.00 +598033.04 5678442.08 107.50 +598033.21 5677990.75 105.00 +598033.32 5681165.48 98.75 +598033.59 5681193.20 98.75 +598033.91 5681430.05 97.50 +598033.92 5678640.21 103.75 +598033.93 5678273.58 108.75 +598034.25 5680606.70 98.75 +598034.40 5681459.41 97.50 +598034.77 5681632.44 96.25 +598034.83 5682490.28 97.50 +598034.91 5679173.21 97.50 +598035.02 5683114.85 98.75 +598035.14 5678340.99 107.50 +598035.35 5682515.84 98.75 +598035.79 5683763.11 97.50 +598035.97 5678263.85 108.75 +598036.09 5681616.26 97.50 +598036.25 5680821.42 100.00 +598036.26 5682883.77 98.75 +598036.38 5678939.74 98.75 +598036.48 5681646.64 96.00 +598036.92 5681653.47 96.00 +598036.93 5680801.75 100.40 +598036.98 5678493.98 106.25 +598036.99 5682224.46 96.25 +598037.07 5683618.80 97.50 +598037.40 5678630.89 103.75 +598037.40 5680899.85 98.75 +598037.50 5682682.51 98.75 +598037.85 5678770.57 101.25 +598038.17 5682118.07 96.25 +598038.24 5678254.20 108.75 +598038.26 5678530.86 105.00 +598038.50 5684052.61 95.00 +598038.65 5682525.24 98.75 +598038.66 5681890.16 97.50 +598038.90 5677957.56 103.75 +598039.21 5682499.26 97.50 +598039.70 5683585.17 97.50 +598039.87 5678022.89 106.25 +598040.10 5680224.99 98.75 +598040.17 5683647.43 97.50 +598040.22 5683637.65 97.50 +598040.29 5678361.47 107.50 +598040.30 5680784.08 100.00 +598040.38 5681443.17 96.20 +598040.48 5681158.52 98.75 +598040.55 5681607.51 97.50 +598040.56 5678800.55 100.00 +598040.61 5683627.99 97.50 +598040.62 5683040.13 98.75 +598040.64 5678096.95 108.75 +598040.77 5683788.79 97.50 +598040.88 5678621.57 103.75 +598040.94 5679111.94 97.50 +598041.10 5680971.74 98.75 +598041.16 5681370.95 98.75 +598041.22 5682998.31 98.75 +598041.41 5682892.33 98.75 +598041.42 5677767.42 102.50 +598041.91 5681628.69 96.25 +598041.98 5678073.61 107.50 +598042.00 5680948.64 98.50 +598042.23 5679538.40 98.75 +598042.33 5678733.27 102.50 +598042.43 5683782.32 96.25 +598042.46 5681188.61 98.75 +598042.58 5678485.82 106.25 +598042.68 5678439.58 107.50 +598042.77 5678611.94 103.75 +598042.99 5678601.99 103.75 +598043.11 5677989.96 105.00 +598043.16 5681598.02 97.50 +598043.22 5678592.04 103.75 +598043.28 5678245.63 108.75 +598043.30 5680897.30 98.75 +598043.41 5682533.96 98.75 +598043.52 5678582.10 103.75 +598043.54 5681432.40 97.50 +598043.63 5680603.55 98.75 +598043.74 5683656.48 97.50 +598043.83 5684060.90 95.00 +598043.88 5682508.09 97.50 +598043.97 5680827.71 100.00 +598044.01 5678522.75 105.00 +598044.09 5678933.39 98.75 +598044.18 5678572.17 103.75 +598044.26 5681460.19 97.50 +598044.59 5682230.46 96.25 +598044.59 5679175.52 97.50 +598044.65 5683112.17 98.75 +598044.84 5678562.24 103.75 +598044.95 5678342.36 107.50 +598045.12 5682222.35 95.00 +598045.32 5681657.38 96.00 +598045.65 5683762.52 97.50 +598045.79 5683774.59 96.25 +598045.89 5681647.81 96.00 +598045.90 5682122.10 96.25 +598046.24 5682214.00 95.00 +598046.56 5682900.90 98.75 +598046.71 5678552.57 103.75 +598047.02 5682679.54 98.75 +598047.45 5683591.17 97.50 +598047.66 5678768.66 101.25 +598047.73 5681589.69 97.50 +598048.17 5678477.67 106.25 +598048.31 5681890.50 97.50 +598048.45 5681152.86 98.75 +598048.54 5682516.93 97.50 +598048.64 5682542.45 98.75 +598048.77 5678366.66 107.50 +598048.88 5677957.56 103.75 +598048.90 5678237.44 108.75 +598049.06 5683664.88 97.50 +598049.21 5678102.00 108.75 +598049.32 5680221.13 98.75 +598049.37 5677761.36 102.50 +598049.58 5678514.52 105.00 +598049.59 5678024.84 106.25 +598049.67 5681627.67 96.25 +598049.69 5680781.51 100.00 +598049.78 5683786.51 96.25 +598049.82 5681444.28 96.20 +598049.90 5682140.14 96.25 +598050.13 5678543.22 103.75 +598050.30 5678798.35 100.00 +598050.36 5683791.52 97.50 +598050.50 5679109.19 97.50 +598050.51 5683039.81 98.75 +598050.66 5681368.12 98.75 +598050.92 5682130.37 96.25 +598050.95 5680972.99 98.75 +598051.08 5682999.06 98.75 +598051.21 5680834.55 100.00 +598051.37 5679542.45 98.75 +598051.38 5681184.11 98.75 +598051.54 5678076.13 107.50 +598051.54 5683780.26 96.00 +598051.80 5678927.04 98.75 +598051.90 5682228.60 95.00 +598051.96 5678730.73 102.50 +598052.08 5682149.09 96.25 +598052.45 5684065.95 95.00 +598052.52 5682908.90 98.75 +598052.59 5682220.64 94.90 +598052.64 5678438.86 107.50 +598052.84 5677991.24 105.00 +598052.90 5680899.87 98.75 +598053.12 5682525.81 97.50 +598053.32 5680603.40 98.75 +598053.45 5681432.04 97.50 +598053.54 5678533.87 103.75 +598053.76 5678469.52 106.25 +598053.82 5682550.97 98.75 +598053.95 5683598.70 97.50 +598054.18 5681459.93 97.50 +598054.27 5683109.50 98.75 +598054.41 5679177.07 97.50 +598054.49 5682231.04 96.25 +598054.54 5681633.06 96.25 +598054.56 5678505.91 105.00 +598054.57 5678344.95 107.50 +598054.58 5681659.66 96.00 +598054.77 5681582.82 97.50 +598054.91 5683758.87 97.50 +598055.03 5683773.62 96.25 +598055.03 5678229.61 108.75 +598055.04 5681650.49 96.00 +598055.64 5683628.04 97.50 +598055.75 5682215.03 95.00 +598055.81 5683672.17 97.50 +598055.88 5681641.15 96.25 +598055.88 5681641.15 97.50 +598055.96 5677753.85 102.50 +598056.31 5683608.34 97.50 +598056.48 5682676.39 98.75 +598056.64 5682535.10 97.50 +598056.68 5683618.14 97.50 +598056.75 5683637.89 97.50 +598057.47 5678766.74 101.25 +598057.54 5681109.52 100.00 +598057.58 5678524.83 103.75 +598057.60 5678107.33 108.75 +598057.85 5682157.03 96.25 +598057.91 5681149.64 98.75 +598057.91 5681890.00 97.50 +598057.92 5678370.65 107.50 +598058.19 5683647.73 97.50 +598058.34 5680841.51 100.00 +598058.41 5680216.97 98.75 +598058.61 5678431.34 107.50 +598058.67 5682916.78 98.75 +598058.75 5678028.43 106.25 +598058.75 5677958.40 103.75 +598058.94 5682559.53 98.75 +598059.04 5683785.95 96.25 +598059.32 5681444.90 96.20 +598059.33 5678461.35 106.25 +598059.39 5680783.79 100.00 +598059.47 5682544.62 97.50 +598059.52 5678920.68 98.75 +598059.70 5678220.97 108.75 +598059.73 5678497.44 105.00 +598059.93 5679106.08 97.50 +598060.03 5681574.51 97.50 +598060.04 5678796.15 100.00 +598060.24 5681365.65 98.75 +598060.25 5683792.91 97.50 +598060.32 5681179.63 98.75 +598060.39 5679546.71 98.75 +598060.40 5683039.48 98.75 +598060.61 5681100.64 100.00 +598060.72 5678079.76 107.50 +598060.75 5680974.84 98.75 +598060.94 5682999.91 98.75 +598061.00 5678300.27 107.50 +598061.17 5682175.55 96.25 +598061.17 5682165.73 96.25 +598061.28 5682227.41 95.00 +598061.56 5678728.09 102.50 +598061.75 5683657.02 97.50 +598062.00 5684067.01 95.00 +598062.23 5680903.37 98.75 +598062.39 5683679.62 97.50 +598062.47 5677746.26 102.50 +598062.48 5677993.58 105.00 +598062.66 5683778.10 96.25 +598062.70 5680606.79 98.75 +598062.97 5678516.47 103.75 +598063.01 5681116.00 100.00 +598063.13 5683753.44 97.50 +598063.14 5678211.64 108.75 +598063.25 5678290.65 107.50 +598063.36 5681431.68 97.50 +598063.51 5682184.80 96.25 +598063.61 5682220.41 95.00 +598063.74 5681462.20 97.50 +598063.82 5678309.53 107.50 +598063.85 5681661.85 96.00 +598063.93 5683106.92 98.75 +598064.07 5678162.24 108.75 +598064.07 5678172.18 108.75 +598064.09 5682568.06 98.75 +598064.09 5678422.99 107.50 +598064.16 5681565.63 97.50 +598064.27 5679178.34 97.50 +598064.36 5681652.45 96.00 +598064.38 5682231.61 96.25 +598064.50 5678152.31 108.75 +598064.55 5678344.65 107.50 +598064.58 5678114.11 108.75 +598064.74 5678182.10 108.75 +598064.91 5678453.19 106.25 +598064.94 5678201.93 108.75 +598065.04 5682924.48 98.75 +598065.30 5682552.73 97.50 +598065.32 5678142.39 108.75 +598065.44 5678192.02 108.75 +598065.69 5681641.57 97.50 +598065.69 5678281.07 107.50 +598065.94 5682673.23 98.75 +598066.08 5680847.70 100.00 +598066.12 5678489.82 105.00 +598066.86 5681093.09 100.00 +598066.99 5678374.82 107.50 +598067.10 5678914.18 98.75 +598067.28 5678764.83 101.25 +598067.37 5681146.42 98.75 +598067.40 5680212.62 98.75 +598067.42 5683664.82 97.50 +598067.43 5681888.37 97.50 +598067.51 5678033.04 106.25 +598067.51 5681556.37 97.50 +598067.82 5678123.18 108.75 +598068.01 5682193.52 96.25 +598068.12 5678133.13 108.75 +598068.35 5677961.12 103.75 +598068.37 5678508.11 103.75 +598068.57 5683687.42 97.50 +598068.78 5679552.14 98.75 +598068.83 5681445.47 96.20 +598068.84 5677738.57 102.50 +598069.05 5679102.09 97.50 +598069.06 5678271.87 107.50 +598069.14 5684060.16 95.00 +598069.22 5680785.46 100.00 +598069.29 5681175.23 98.75 +598069.32 5682576.55 98.75 +598069.78 5678793.95 100.00 +598069.84 5678083.57 107.50 +598069.92 5678336.73 107.50 +598070.00 5683037.31 98.75 +598070.06 5681364.25 98.75 +598070.12 5678317.24 107.50 +598070.33 5683746.62 97.50 +598070.40 5680977.34 98.75 +598070.46 5678415.34 107.50 +598070.49 5678445.03 106.25 +598070.64 5683001.62 98.75 +598070.74 5678724.59 102.50 +598071.14 5682560.84 97.50 +598071.15 5680907.77 98.75 +598071.16 5681547.29 97.50 +598071.81 5677996.94 105.00 +598071.84 5680610.83 98.75 +598072.06 5682931.49 98.75 +598072.10 5678326.98 107.50 +598072.36 5684050.70 95.00 +598072.54 5681115.60 100.00 +598072.70 5678482.38 105.00 +598073.02 5682402.63 96.25 +598073.05 5681664.31 96.00 +598073.16 5681465.28 97.50 +598073.28 5681431.60 97.50 +598073.31 5682228.20 96.25 +598073.50 5677729.73 102.50 +598073.59 5683104.38 98.75 +598073.77 5681653.91 96.00 +598074.09 5678500.00 103.75 +598074.17 5684040.93 95.00 +598074.18 5679179.16 97.50 +598074.24 5678380.95 107.50 +598074.51 5682392.76 96.25 +598074.54 5683695.38 97.50 +598074.55 5682585.04 98.75 +598074.60 5682412.09 96.25 +598074.65 5678907.63 98.75 +598074.93 5681087.50 100.00 +598074.95 5683671.32 97.50 +598075.05 5684030.98 95.00 +598075.10 5680851.42 100.00 +598075.29 5678264.20 107.50 +598075.47 5681640.65 97.50 +598075.69 5678038.63 106.25 +598075.75 5682672.23 98.75 +598075.76 5682199.42 96.25 +598076.06 5680207.62 98.75 +598076.07 5678436.87 106.25 +598076.24 5684021.22 95.00 +598076.76 5681143.04 98.75 +598076.96 5681886.76 97.50 +598076.97 5682568.95 97.50 +598077.02 5682040.16 96.25 +598077.08 5683739.31 97.50 +598077.13 5678763.16 101.25 +598077.15 5681176.24 98.75 +598077.16 5679557.57 98.75 +598077.28 5678408.05 107.50 +598077.46 5681539.73 97.50 +598077.66 5678306.84 106.25 +598077.66 5682383.33 96.25 +598077.95 5677963.83 103.75 +598078.16 5679098.11 97.50 +598078.17 5677720.89 102.50 +598078.18 5681446.58 96.20 +598078.22 5678353.00 106.25 +598078.45 5678362.88 106.25 +598078.63 5682421.23 96.25 +598078.76 5678718.68 102.50 +598078.82 5680617.46 98.75 +598078.90 5682030.68 96.25 +598078.95 5678087.38 107.50 +598078.99 5678389.73 107.50 +598079.04 5680787.12 100.00 +598079.43 5683034.41 98.75 +598079.53 5678791.77 100.00 +598079.87 5681362.84 98.75 +598079.89 5680912.57 98.75 +598079.89 5678475.51 105.00 +598079.91 5681109.12 100.00 +598079.95 5682593.42 98.75 +598080.05 5680979.83 98.75 +598080.10 5683004.47 98.75 +598080.31 5682049.53 96.25 +598080.44 5678399.60 107.50 +598080.55 5682936.25 98.75 +598080.74 5678297.53 106.25 +598080.80 5678492.65 103.75 +598080.84 5677711.26 102.50 +598081.09 5678000.46 105.00 +598081.17 5682222.33 96.25 +598081.33 5682374.05 96.25 +598081.52 5683702.38 97.50 +598081.52 5681080.67 100.00 +598081.63 5678344.02 106.25 +598081.65 5678428.71 106.25 +598081.75 5684012.88 95.00 +598081.77 5678256.74 107.50 +598081.79 5683730.70 97.50 +598082.15 5678315.65 106.25 +598082.30 5678901.24 98.75 +598082.40 5681665.78 96.00 +598082.62 5681467.52 97.50 +598082.81 5682577.07 97.50 +598082.81 5678371.72 106.25 +598083.01 5681432.92 97.50 +598083.02 5680626.43 98.75 +598083.07 5683101.30 98.75 +598083.18 5682430.07 96.25 +598083.24 5681654.89 96.00 +598083.55 5682022.19 96.25 +598083.88 5678044.21 106.25 +598084.02 5678288.20 106.25 +598084.10 5678334.69 106.25 +598084.12 5679179.39 97.50 +598084.13 5683721.03 97.50 +598084.45 5683711.21 97.50 +598084.72 5680202.63 98.75 +598084.80 5681182.54 98.75 +598084.81 5678324.83 106.25 +598084.92 5677702.24 102.50 +598084.95 5680852.92 100.00 +598085.01 5682200.84 96.25 +598085.19 5681639.59 97.50 +598085.28 5681534.28 97.50 +598085.47 5681138.15 98.75 +598085.63 5682601.61 98.75 +598085.67 5679562.80 98.75 +598085.68 5681071.78 100.00 +598085.72 5682672.18 98.75 +598086.27 5680635.87 98.75 +598086.36 5677969.06 103.75 +598086.42 5682365.47 96.25 +598086.52 5681885.38 97.50 +598086.53 5680919.09 98.75 +598086.55 5681451.11 96.20 +598086.78 5678712.77 102.50 +598086.99 5678761.54 101.25 +598087.03 5678092.94 107.50 +598087.03 5683028.08 98.75 +598087.08 5678468.64 105.00 +598087.28 5679094.13 97.50 +598087.29 5681102.65 100.00 +598087.29 5678420.59 106.25 +598087.45 5682054.30 96.25 +598087.51 5678485.30 103.75 +598087.59 5683010.94 98.75 +598087.73 5684004.88 95.00 +598087.74 5678380.26 106.25 +598087.87 5682215.02 96.25 +598088.30 5682297.79 96.25 +598088.47 5678249.47 107.50 +598088.64 5682585.18 97.50 +598088.81 5680789.06 100.00 +598088.81 5682307.64 96.25 +598088.94 5678279.60 106.25 +598089.02 5682438.16 96.25 +598089.35 5678789.95 100.00 +598089.41 5680928.63 98.75 +598089.47 5681062.73 100.00 +598089.50 5680982.97 98.75 +598089.70 5682287.91 96.25 +598089.77 5680645.24 98.75 +598089.78 5681362.67 98.75 +598090.11 5677693.69 102.50 +598090.25 5678004.28 105.00 +598090.28 5683020.17 98.75 +598090.31 5682014.91 96.25 +598090.38 5682356.38 96.25 +598090.50 5682937.13 98.75 +598090.55 5682317.48 96.25 +598091.16 5678896.63 98.75 +598091.32 5682609.80 98.75 +598091.57 5680938.36 98.75 +598091.92 5681666.09 96.00 +598092.25 5683097.35 98.75 +598092.27 5681436.08 97.50 +598092.28 5682327.31 96.25 +598092.42 5681466.02 97.50 +598092.63 5681656.14 96.00 +598092.63 5678048.72 106.25 +598092.92 5682278.47 96.25 +598093.07 5681188.16 98.75 +598093.13 5681053.63 100.00 +598093.16 5678412.64 106.25 +598093.26 5682346.82 96.25 +598093.27 5680654.60 98.75 +598093.38 5680197.63 98.75 +598093.44 5678388.33 106.25 +598093.77 5679181.04 97.50 +598093.91 5683997.02 95.00 +598094.02 5682337.14 96.25 +598094.18 5681133.26 98.75 +598094.27 5678461.77 105.00 +598094.34 5678478.08 103.75 +598094.34 5679567.77 98.75 +598094.38 5681095.87 100.00 +598094.45 5682593.31 97.50 +598094.47 5681530.76 97.50 +598094.51 5677974.81 103.75 +598094.56 5681641.88 97.50 +598094.70 5680852.30 100.00 +598094.72 5678099.15 107.50 +598094.79 5678706.87 102.50 +598094.81 5682200.27 96.25 +598094.99 5678242.06 107.50 +598095.07 5679088.23 97.50 +598095.16 5682050.49 96.25 +598095.30 5677685.14 102.50 +598095.42 5682445.74 96.25 +598095.51 5680947.08 98.75 +598095.55 5682672.87 98.75 +598095.68 5682209.13 96.25 +598096.13 5681884.83 97.50 +598096.23 5682269.05 96.25 +598096.78 5678273.75 106.25 +598096.86 5678759.93 101.25 +598096.89 5681044.57 100.00 +598097.01 5682617.99 98.75 +598097.07 5682007.63 96.25 +598097.09 5678551.54 102.50 +598097.81 5678561.47 102.50 +598098.14 5678108.39 107.50 +598098.39 5678697.63 102.50 +598098.53 5678571.40 102.50 +598098.53 5680791.23 100.00 +598098.84 5681662.01 96.00 +598098.90 5678396.57 106.25 +598098.91 5680986.23 98.75 +598098.95 5678541.90 102.50 +598099.02 5678404.68 106.25 +598099.17 5678788.12 100.00 +598099.25 5683988.65 95.00 +598099.40 5678008.11 105.00 +598099.45 5681442.92 97.50 +598099.70 5681362.52 98.75 +598099.72 5682601.76 97.50 +598100.03 5678892.02 98.75 +598100.46 5682938.02 98.75 +598100.63 5681461.23 97.50 +598100.69 5677676.74 102.50 +598100.71 5678157.13 107.50 +598100.85 5678234.11 107.50 +598100.86 5678581.04 102.50 +598100.99 5678166.99 107.50 +598101.00 5678147.25 107.50 +598101.16 5681194.03 98.75 +598101.32 5682042.70 96.25 +598101.37 5681035.84 100.00 +598101.42 5680191.73 98.75 +598101.43 5683093.40 98.75 +598101.46 5678117.70 107.50 +598101.46 5678352.02 105.00 +598101.46 5678454.90 105.00 +598101.47 5681089.09 100.00 +598101.72 5683950.16 95.00 +598101.72 5678471.40 103.75 +598101.74 5681712.28 97.50 +598101.84 5678688.29 102.50 +598101.90 5678532.39 102.50 +598101.91 5678127.55 107.50 +598101.92 5678052.17 106.25 +598101.97 5679081.06 97.50 +598102.05 5678137.42 107.50 +598102.08 5680658.98 98.75 +598102.43 5678176.75 107.50 +598102.58 5683940.33 95.00 +598102.66 5677980.57 103.75 +598102.70 5678678.39 102.50 +598102.70 5681647.33 97.50 +598102.74 5681717.33 97.50 +598102.79 5682626.11 98.75 +598102.90 5681128.36 98.75 +598102.95 5679184.88 97.50 +598102.96 5682452.28 96.25 +598103.03 5679572.68 98.75 +598103.10 5681620.21 97.50 +598103.15 5683979.49 95.00 +598103.21 5680953.06 98.75 +598103.26 5681452.03 97.50 +598103.31 5681629.78 97.50 +598103.46 5678668.46 102.50 +598103.51 5683959.95 95.00 +598103.57 5678342.30 105.00 +598103.60 5678590.62 102.50 +598103.81 5678361.47 105.00 +598103.86 5682263.14 96.25 +598103.92 5681529.70 97.50 +598104.10 5681610.42 97.50 +598104.14 5682197.21 96.25 +598104.28 5682610.66 97.50 +598104.38 5680849.93 100.00 +598104.40 5678186.44 107.50 +598104.57 5682001.30 96.25 +598104.72 5682205.57 96.25 +598104.72 5681702.98 97.50 +598104.78 5682676.65 98.75 +598104.85 5678522.88 102.50 +598105.23 5683969.71 95.00 +598105.37 5678196.26 107.50 +598105.48 5678225.38 107.50 +598105.61 5678658.77 102.50 +598105.79 5681885.05 97.50 +598105.81 5678332.62 105.00 +598105.86 5681027.12 100.00 +598106.04 5678270.20 106.25 +598106.13 5678206.12 107.50 +598106.34 5678600.19 102.50 +598106.49 5681600.87 97.50 +598106.67 5678758.06 101.25 +598106.89 5678215.97 107.50 +598107.05 5677669.02 102.50 +598107.15 5683931.44 95.00 +598107.80 5681655.11 97.50 +598107.84 5682306.89 96.25 +598107.93 5681201.06 98.75 +598107.96 5682035.37 96.25 +598108.05 5678370.31 105.00 +598108.07 5682422.51 96.00 +598108.18 5678649.15 102.50 +598108.19 5681693.78 97.50 +598108.23 5681638.27 97.50 +598108.27 5680793.36 100.00 +598108.27 5678322.99 105.00 +598108.29 5681082.08 100.00 +598108.42 5678609.93 102.50 +598108.59 5682634.22 98.75 +598108.65 5678448.03 105.00 +598108.68 5680988.18 98.75 +598108.77 5683892.57 95.00 +598108.86 5681591.32 97.50 +598108.87 5679073.90 97.50 +598108.89 5678887.40 98.75 +598108.90 5678010.72 105.00 +598108.90 5682619.50 97.50 +598108.96 5678786.16 100.00 +598109.00 5678313.10 105.00 +598109.10 5678464.73 103.75 +598109.11 5682382.02 96.25 +598109.19 5680185.44 98.75 +598109.61 5681362.30 98.75 +598109.70 5681710.37 97.50 +598109.73 5681664.76 97.50 +598109.78 5678639.34 102.50 +598110.02 5678514.55 102.50 +598110.04 5683902.41 95.00 +598110.19 5678303.23 105.00 +598110.33 5682297.22 96.25 +598110.42 5682938.75 98.75 +598110.51 5678619.66 102.50 +598110.52 5681018.48 100.00 +598110.56 5682316.45 96.25 +598110.61 5682372.62 96.25 +598110.61 5683089.45 98.75 +598110.62 5681684.27 97.50 +598110.76 5683922.23 95.00 +598110.78 5683882.78 95.00 +598110.87 5682458.35 96.25 +598110.89 5681581.69 97.50 +598111.08 5678629.46 102.50 +598111.18 5681122.80 98.75 +598111.20 5678055.64 106.25 +598111.23 5681674.44 97.50 +598111.24 5682391.77 96.25 +598111.41 5680662.34 98.75 +598111.53 5683912.27 95.00 +598111.65 5677984.59 103.75 +598111.69 5681535.09 97.50 +598112.28 5679576.48 98.75 +598112.49 5679187.68 97.50 +598112.64 5681209.87 98.75 +598112.79 5683872.99 95.00 +598112.83 5682287.56 96.25 +598112.91 5681572.05 97.50 +598112.92 5680955.32 98.75 +598113.24 5681996.45 96.25 +598113.40 5677661.30 102.50 +598113.47 5682194.14 96.25 +598113.59 5682265.38 96.25 +598113.60 5682325.96 96.25 +598113.65 5680846.29 100.00 +598113.67 5681073.87 100.00 +598114.01 5682680.42 98.75 +598114.47 5678377.90 105.00 +598114.62 5682205.02 96.25 +598114.64 5682642.10 98.75 +598114.80 5682363.56 96.25 +598115.07 5681562.45 97.50 +598115.12 5678440.57 105.00 +598115.23 5681009.87 100.00 +598115.38 5678266.89 106.25 +598115.40 5682028.79 96.25 +598115.45 5681885.26 97.50 +598115.77 5679066.73 97.50 +598116.06 5681219.16 98.75 +598116.07 5681702.93 97.50 +598116.08 5682626.45 97.50 +598116.15 5681644.11 97.50 +598116.23 5678506.76 102.50 +598116.27 5678457.86 103.75 +598116.44 5681543.46 97.50 +598116.46 5683863.73 95.00 +598116.49 5678756.17 101.25 +598116.97 5680179.16 98.75 +598117.29 5681552.86 97.50 +598117.32 5682335.22 96.25 +598117.67 5682399.14 96.25 +598117.75 5678882.79 98.75 +598117.79 5678296.85 105.00 +598118.02 5680795.39 100.00 +598118.20 5681228.92 98.75 +598118.54 5680989.14 98.75 +598118.72 5678784.03 100.00 +598118.73 5678011.98 105.00 +598119.06 5681065.67 100.00 +598119.24 5682279.90 96.25 +598119.26 5682463.76 96.25 +598119.27 5682354.65 96.25 +598119.28 5681116.94 98.75 +598119.52 5681361.93 98.75 +598119.76 5681037.24 100.50 +598119.82 5682344.68 96.25 +598120.14 5683086.48 98.75 +598120.32 5678432.10 105.00 +598120.40 5682939.38 98.75 +598120.45 5678059.21 106.25 +598120.89 5678385.49 105.00 +598120.93 5681238.47 98.75 +598120.97 5677654.79 102.50 +598121.24 5677987.37 103.75 +598121.32 5680663.59 98.75 +598121.53 5681694.74 97.50 +598121.63 5681991.29 96.25 +598121.74 5682270.87 96.25 +598121.75 5679579.47 98.75 +598121.89 5678498.57 102.50 +598122.06 5679190.38 97.50 +598122.29 5678449.94 103.75 +598122.36 5682648.41 98.75 +598122.37 5683856.40 95.00 +598122.74 5680956.70 98.75 +598122.76 5682190.97 96.25 +598122.81 5682022.17 96.25 +598122.95 5680842.72 100.00 +598123.31 5682633.35 97.50 +598123.34 5682683.92 98.75 +598123.51 5681004.83 100.00 +598123.72 5679060.98 97.50 +598123.86 5681650.17 97.50 +598124.20 5678422.99 105.00 +598124.30 5680172.38 98.75 +598124.39 5678262.93 106.25 +598124.49 5682204.79 96.25 +598124.80 5681057.72 100.00 +598124.94 5681883.72 97.50 +598125.37 5678394.12 105.00 +598125.66 5678290.84 105.00 +598126.24 5681246.90 98.75 +598126.30 5678754.29 101.25 +598126.40 5681110.15 98.75 +598126.55 5681686.28 97.50 +598127.25 5682401.90 96.25 +598127.33 5678879.96 98.75 +598127.38 5681983.19 96.25 +598127.43 5678490.30 102.50 +598127.45 5678403.80 105.00 +598127.56 5678413.63 105.00 +598127.88 5680796.85 100.00 +598128.31 5678442.02 103.75 +598128.46 5678781.82 100.00 +598128.51 5680988.87 98.75 +598128.55 5682467.34 96.25 +598128.65 5678011.98 105.00 +598128.68 5677648.42 102.50 +598129.42 5681361.56 98.75 +598129.65 5678062.90 106.25 +598129.73 5682015.05 96.25 +598129.76 5683083.75 98.75 +598129.79 5681677.02 97.50 +598130.08 5682654.72 98.75 +598130.10 5681657.79 97.50 +598130.35 5681049.64 100.00 +598130.37 5682940.04 98.75 +598130.80 5682639.95 97.50 +598131.04 5683851.50 95.00 +598131.17 5677988.08 103.75 +598131.24 5680663.61 98.75 +598131.43 5680165.38 98.75 +598131.47 5681667.50 97.50 +598131.60 5679581.14 98.75 +598131.88 5679188.73 97.50 +598131.95 5681101.84 98.75 +598132.05 5682187.79 96.25 +598132.09 5678256.78 106.25 +598132.16 5681000.22 100.00 +598132.35 5681254.81 98.75 +598132.56 5681974.80 96.25 +598132.59 5680840.20 100.00 +598132.59 5679056.47 97.50 +598132.71 5680956.93 98.75 +598132.72 5682687.29 98.75 +598132.98 5678482.03 102.50 +598133.57 5678433.71 103.75 +598133.99 5678748.18 101.25 +598134.16 5682206.96 96.25 +598134.17 5678285.74 105.00 +598134.77 5681040.88 100.00 +598135.42 5682129.03 96.25 +598135.77 5681965.40 96.25 +598136.22 5681935.91 96.25 +598136.31 5678424.14 103.75 +598136.39 5677642.05 102.50 +598136.70 5681945.83 96.25 +598136.72 5682008.00 96.25 +598136.89 5681093.17 98.75 +598136.92 5678877.14 98.75 +598137.04 5682403.87 96.25 +598137.08 5678171.56 106.25 +598137.18 5681955.75 96.25 +598137.24 5678181.45 106.25 +598137.30 5682119.28 96.25 +598137.34 5680799.77 100.00 +598137.34 5678161.65 106.25 +598137.61 5678151.75 106.25 +598137.93 5678374.98 103.75 +598137.95 5682660.83 98.75 +598138.00 5681263.02 98.75 +598138.04 5682470.10 96.25 +598138.18 5678779.53 100.00 +598138.30 5682646.56 97.50 +598138.42 5680987.87 98.75 +598138.42 5678384.90 103.75 +598138.52 5678473.76 102.50 +598138.55 5678011.73 105.00 +598138.57 5680158.37 98.75 +598138.59 5678191.27 106.25 +598138.76 5678066.77 106.25 +598138.83 5678249.51 106.25 +598139.01 5678394.84 103.75 +598139.05 5678414.58 103.75 +598139.33 5681361.16 98.75 +598139.35 5678142.02 106.25 +598139.37 5683081.02 98.75 +598139.60 5678404.77 103.75 +598139.83 5683847.46 95.00 +598139.86 5681272.57 98.75 +598139.93 5678201.09 106.25 +598140.25 5682941.55 98.75 +598140.57 5678365.38 103.75 +598140.73 5681033.16 100.00 +598141.05 5681282.48 98.75 +598141.14 5677988.57 103.75 +598141.17 5681877.05 97.50 +598141.17 5680662.50 98.75 +598141.19 5678132.29 106.25 +598141.25 5680835.97 100.00 +598141.27 5680996.56 100.00 +598141.32 5681084.21 98.75 +598141.36 5678741.43 101.25 +598141.45 5679582.81 98.75 +598141.46 5679051.97 97.50 +598141.46 5682185.19 96.25 +598141.56 5678210.86 106.25 +598141.69 5679187.08 97.50 +598141.79 5682441.63 96.25 +598141.91 5681214.34 97.50 +598141.91 5680960.10 98.75 +598141.98 5678122.41 106.25 +598142.01 5678240.22 106.25 +598142.30 5682690.06 98.75 +598142.40 5681312.32 98.75 +598142.52 5681292.36 98.75 +598142.63 5681302.33 98.75 +598142.80 5678280.87 105.00 +598142.95 5677634.55 102.50 +598143.02 5678112.55 106.25 +598143.20 5678355.79 103.75 +598143.22 5681204.77 97.50 +598143.35 5681224.20 97.50 +598143.35 5678230.45 106.25 +598143.40 5678220.60 106.25 +598143.59 5678465.20 102.50 +598143.73 5682209.45 96.25 +598144.03 5682450.14 96.25 +598144.69 5682002.73 96.25 +598144.71 5682112.99 96.25 +598144.78 5681321.48 98.75 +598144.84 5678073.99 106.25 +598145.24 5678102.93 106.25 +598145.41 5681075.10 98.75 +598145.60 5680151.27 98.75 +598145.76 5682653.21 97.50 +598145.96 5682666.78 98.75 +598146.40 5680803.88 100.00 +598146.41 5682406.84 96.25 +598146.50 5678874.32 98.75 +598147.19 5681025.77 100.00 +598147.21 5681233.19 97.50 +598147.26 5678093.23 106.25 +598147.29 5681195.77 97.50 +598147.44 5678083.49 106.25 +598147.47 5678346.93 103.75 +598147.48 5678550.61 101.25 +598147.56 5680984.85 98.75 +598147.69 5682433.64 96.25 +598147.81 5678560.60 101.25 +598147.86 5678540.79 101.25 +598147.90 5678777.24 100.00 +598148.00 5682470.31 96.25 +598148.05 5678734.02 101.25 +598148.15 5678570.59 101.25 +598148.29 5680828.92 100.00 +598148.32 5678009.99 105.00 +598148.50 5678456.53 102.50 +598149.20 5682945.93 98.75 +598149.21 5681360.32 98.75 +598149.23 5677626.77 102.50 +598149.25 5681065.87 98.75 +598149.30 5683080.31 98.75 +598149.80 5683847.01 95.00 +598150.33 5679047.46 97.50 +598150.37 5680992.90 100.00 +598150.44 5682009.84 96.25 +598150.66 5678580.16 101.25 +598150.78 5681329.47 98.75 +598150.91 5682457.21 96.25 +598151.02 5677987.42 103.75 +598151.10 5681876.07 97.50 +598151.11 5680661.39 98.75 +598151.25 5682184.41 96.25 +598151.39 5679582.09 98.75 +598151.46 5680962.11 98.75 +598151.50 5679185.40 97.50 +598151.89 5682692.79 98.75 +598151.90 5682106.51 96.25 +598152.04 5678277.25 105.00 +598152.18 5682019.62 96.25 +598152.38 5680811.31 100.00 +598152.58 5680144.11 98.75 +598152.63 5678532.01 101.25 +598152.81 5682213.43 96.25 +598152.91 5678338.59 103.75 +598153.09 5681056.65 98.75 +598153.09 5680820.51 100.00 +598153.11 5682659.98 97.50 +598153.41 5678447.87 102.50 +598153.76 5681188.18 97.50 +598153.78 5681240.26 97.50 +598153.96 5682672.72 98.75 +598154.00 5678589.59 101.25 +598154.59 5678726.46 101.25 +598154.69 5682412.42 96.25 +598155.10 5682088.07 96.25 +598155.34 5677618.85 102.50 +598155.45 5681020.61 100.00 +598155.65 5682427.62 96.25 +598155.91 5680979.49 98.75 +598156.03 5682028.55 96.25 +598156.09 5678871.50 98.75 +598156.37 5682097.92 96.25 +598156.41 5678678.65 101.25 +598156.46 5678668.65 101.25 +598156.51 5678658.66 101.25 +598156.57 5678648.67 101.25 +598156.78 5682078.66 96.25 +598157.14 5678638.69 101.25 +598157.33 5678599.01 101.25 +598157.37 5678774.21 100.00 +598157.40 5678523.23 101.25 +598157.70 5678628.71 101.25 +598157.75 5678438.91 102.50 +598157.90 5682471.24 96.25 +598157.99 5681336.27 98.75 +598158.09 5678008.25 105.00 +598158.10 5678688.44 101.25 +598158.23 5682950.07 98.75 +598158.27 5678618.73 101.25 +598158.34 5678330.26 103.75 +598158.56 5678717.60 101.25 +598158.65 5678608.75 101.25 +598158.89 5681048.83 98.75 +598159.09 5681359.49 98.75 +598159.29 5683079.91 98.75 +598159.48 5680989.24 100.00 +598159.56 5680136.95 98.75 +598159.68 5683848.46 95.00 +598159.78 5679044.41 97.50 +598159.84 5682419.43 96.25 +598160.46 5682666.75 97.50 +598160.49 5678698.14 101.25 +598160.57 5682458.93 96.25 +598160.64 5681874.16 97.50 +598160.80 5678707.86 101.25 +598160.85 5677985.76 103.75 +598161.00 5677610.71 102.50 +598161.01 5680660.10 98.75 +598161.19 5682693.70 98.75 +598161.25 5681181.61 97.50 +598161.27 5679183.52 97.50 +598161.27 5678273.63 105.00 +598161.33 5679581.14 98.75 +598161.41 5680962.66 98.75 +598161.54 5682036.81 96.25 +598161.89 5682217.42 96.25 +598161.97 5682678.67 98.75 +598162.09 5678429.95 102.50 +598162.54 5681245.01 97.50 +598162.83 5682070.96 96.25 +598163.38 5678515.29 101.25 +598163.56 5677601.04 102.50 +598163.92 5678322.04 103.75 +598164.00 5681015.79 100.00 +598164.83 5680975.03 98.75 +598165.75 5678868.96 98.75 +598165.78 5681342.50 98.75 +598166.41 5681042.25 98.75 +598166.43 5678420.99 102.50 +598166.45 5677591.48 102.50 +598166.48 5678770.10 100.00 +598166.58 5682687.16 98.75 +598166.63 5680129.90 98.75 +598166.67 5682045.31 96.25 +598167.65 5678005.72 105.00 +598167.83 5682470.22 96.25 +598167.99 5680984.40 100.00 +598168.16 5682951.16 98.75 +598168.22 5682540.91 96.25 +598168.28 5682672.94 97.50 +598168.38 5681867.86 97.50 +598168.62 5681174.91 97.50 +598168.96 5681358.58 98.75 +598169.28 5683079.53 98.75 +598169.32 5679041.58 97.50 +598169.49 5680945.70 98.75 +598169.57 5683849.91 95.00 +598169.85 5682063.94 96.25 +598169.92 5678268.84 105.00 +598169.93 5678507.74 101.25 +598169.95 5678411.67 102.50 +598170.17 5677582.20 102.50 +598170.19 5682456.37 96.25 +598170.30 5677982.55 103.75 +598170.46 5682054.26 96.25 +598170.84 5678314.88 103.75 +598170.88 5680658.54 98.75 +598171.04 5679181.64 97.50 +598171.09 5682221.09 96.25 +598171.28 5679580.19 98.75 +598171.33 5680963.68 98.75 +598171.53 5682549.86 96.25 +598171.77 5680936.14 98.75 +598172.13 5681247.28 97.50 +598172.31 5681350.07 98.75 +598172.76 5682533.65 96.25 +598173.11 5681859.48 97.50 +598173.31 5681014.03 100.00 +598173.47 5678402.36 102.50 +598173.61 5678763.21 100.00 +598173.83 5680954.36 98.75 +598173.94 5681035.68 98.75 +598173.96 5677572.95 102.50 +598174.37 5680972.82 98.75 +598174.56 5680123.81 98.75 +598175.21 5678392.64 102.50 +598175.25 5681167.47 97.50 +598175.48 5678866.72 98.75 +598175.61 5678020.13 106.25 +598175.86 5681849.91 97.50 +598176.07 5678382.72 102.50 +598176.20 5680927.18 98.75 +598176.50 5682678.60 97.50 +598176.71 5678500.41 101.25 +598176.93 5678372.80 102.50 +598176.97 5678002.30 105.00 +598177.09 5680981.70 100.00 +598177.69 5678262.93 105.00 +598177.75 5682469.14 96.25 +598177.75 5678307.72 103.75 +598177.81 5677563.72 102.50 +598177.81 5681840.13 97.50 +598178.11 5682952.07 98.75 +598178.32 5678362.94 102.50 +598178.38 5678027.58 106.25 +598178.41 5682450.70 96.25 +598178.47 5683854.22 95.00 +598178.49 5681830.17 97.50 +598178.73 5682392.90 96.25 +598178.83 5681357.64 98.75 +598178.86 5679038.76 97.50 +598179.05 5682555.51 96.25 +598179.18 5681820.22 97.50 +598179.27 5683079.33 98.75 +598179.60 5678011.95 106.25 +598179.75 5677979.34 103.75 +598179.78 5678353.09 102.50 +598179.81 5682383.11 96.25 +598179.99 5680917.94 98.75 +598180.32 5682224.71 96.25 +598180.54 5678756.01 100.00 +598180.79 5680657.86 98.75 +598180.95 5679180.87 97.50 +598180.95 5679578.16 98.75 +598181.11 5681159.41 97.50 +598181.24 5680964.71 98.75 +598181.99 5681248.72 97.50 +598182.07 5682531.48 96.25 +598182.14 5682373.48 96.25 +598182.49 5680117.72 98.75 +598182.64 5678254.34 105.00 +598182.67 5681011.90 100.00 +598182.74 5680956.11 98.75 +598182.93 5681031.97 98.75 +598183.19 5678343.98 102.50 +598183.24 5682401.81 96.25 +598183.25 5677555.48 102.50 +598183.25 5681811.14 97.50 +598183.71 5680908.66 98.75 +598183.77 5678493.33 101.25 +598183.80 5680975.11 98.75 +598185.22 5678864.48 98.75 +598185.28 5678301.18 103.75 +598185.33 5682683.27 97.50 +598185.93 5681150.77 97.50 +598186.02 5680983.22 100.00 +598186.17 5682444.46 96.25 +598186.21 5682364.36 96.25 +598186.28 5677998.88 105.00 +598187.13 5683859.20 95.00 +598187.15 5678029.99 106.25 +598187.44 5681802.08 97.50 +598187.46 5678748.82 100.00 +598187.60 5678245.74 105.00 +598187.63 5682467.67 96.25 +598187.69 5680899.49 98.75 +598187.78 5678008.40 106.25 +598188.08 5682952.80 98.75 +598188.17 5678573.41 100.00 +598188.19 5679035.35 97.50 +598188.63 5678335.64 102.50 +598188.67 5682558.11 96.25 +598188.78 5683077.10 98.75 +598189.02 5682409.90 96.25 +598189.04 5678563.65 100.00 +598189.17 5677976.06 103.75 +598189.34 5678583.23 100.00 +598189.54 5681141.48 97.50 +598190.16 5679574.27 98.75 +598190.25 5677548.36 102.50 +598190.42 5680111.63 98.75 +598190.52 5678593.05 100.00 +598190.68 5678553.90 100.00 +598190.77 5680658.53 98.75 +598190.82 5678486.25 101.25 +598190.88 5679180.27 97.50 +598191.13 5678739.58 100.00 +598191.16 5680965.71 98.75 +598191.58 5682533.81 96.25 +598191.68 5681008.01 100.00 +598191.84 5681250.27 97.50 +598191.91 5678602.83 100.00 +598191.92 5680890.45 98.75 +598192.07 5678017.03 106.50 +598192.08 5680990.93 100.00 +598192.33 5678544.15 100.00 +598192.35 5682436.90 96.25 +598192.46 5682356.62 96.25 +598192.67 5681029.72 98.75 +598192.69 5681793.65 97.50 +598192.69 5680955.20 98.75 +598193.02 5682689.24 97.50 +598193.16 5681132.19 97.50 +598193.22 5678237.57 105.00 +598193.25 5678295.22 103.75 +598193.37 5678612.61 100.00 +598193.54 5680976.63 98.75 +598194.15 5682418.35 96.25 +598194.16 5678327.36 102.50 +598194.56 5678730.20 100.00 +598194.83 5678622.39 100.00 +598194.96 5678862.25 98.75 +598195.29 5680998.98 100.00 +598195.42 5678026.20 106.25 +598195.45 5677995.10 105.00 +598195.63 5678632.23 100.00 +598195.65 5683864.33 95.00 +598195.80 5678661.88 100.00 +598195.97 5678642.11 100.00 +598195.99 5682462.36 96.25 +598196.02 5678651.99 100.00 +598196.04 5682427.63 96.25 +598196.46 5678005.74 106.25 +598196.68 5678535.36 100.00 +598197.29 5678671.59 100.00 +598197.30 5681123.13 97.50 +598197.33 5679031.42 97.50 +598197.60 5680971.22 98.75 +598197.61 5677541.59 102.50 +598197.63 5680882.40 98.75 +598197.78 5678479.10 101.25 +598197.84 5683072.89 98.75 +598197.93 5682952.13 98.75 +598197.99 5678720.83 100.00 +598198.22 5678710.94 100.00 +598198.41 5682560.21 96.25 +598198.42 5680105.63 98.75 +598198.44 5678701.06 100.00 +598198.48 5677972.48 103.75 +598198.54 5681785.57 97.50 +598198.67 5678691.17 100.00 +598198.78 5682697.40 97.50 +598198.90 5678681.29 100.00 +598198.97 5678229.48 105.00 +598199.36 5679570.39 98.75 +598199.79 5678319.15 102.50 +598200.06 5682350.50 96.25 +598200.74 5680659.21 98.75 +598200.82 5679180.26 97.50 +598200.86 5682537.37 96.25 +598201.16 5683872.67 95.00 +598201.58 5678526.77 100.00 +598201.67 5681251.92 97.50 +598201.76 5678290.01 103.75 +598202.02 5681114.51 97.50 +598202.31 5678470.19 101.25 +598202.40 5681027.47 98.75 +598202.45 5680953.09 98.75 +598203.32 5677533.45 102.50 +598203.33 5682455.67 96.25 +598203.51 5678022.12 106.25 +598203.78 5677812.97 102.50 +598204.10 5678123.91 105.00 +598204.12 5677822.96 102.50 +598204.24 5682399.38 96.25 +598204.45 5678859.21 98.75 +598204.47 5682389.40 96.25 +598204.52 5677832.95 102.50 +598204.57 5677991.19 105.00 +598204.66 5681777.72 97.50 +598204.71 5678221.39 105.00 +598204.76 5678114.04 105.00 +598204.76 5682705.39 97.50 +598204.88 5677803.03 102.50 +598205.04 5683207.93 97.50 +598205.32 5680876.02 98.75 +598205.33 5678004.35 106.25 +598205.43 5678310.94 102.50 +598205.60 5678104.17 105.00 +598205.89 5682409.17 96.25 +598206.03 5683198.58 97.50 +598206.22 5677842.65 102.50 +598206.42 5680099.64 98.75 +598206.65 5679028.55 97.50 +598206.76 5677793.39 102.50 +598206.82 5678518.42 100.00 +598206.85 5678461.29 101.25 +598207.47 5683070.23 98.75 +598207.67 5682949.86 98.75 +598207.80 5677968.90 103.75 +598208.07 5682418.91 96.25 +598208.08 5678133.00 105.00 +598208.20 5682560.96 96.25 +598208.46 5683875.26 95.00 +598208.59 5679566.55 98.75 +598208.62 5677524.97 102.50 +598209.09 5682346.24 96.25 +598209.72 5682448.12 96.25 +598209.92 5682428.73 96.25 +598210.15 5677851.84 102.50 +598210.34 5683865.79 95.00 +598210.43 5678213.28 105.00 +598210.46 5682540.04 96.25 +598210.50 5678285.21 103.75 +598210.52 5682382.38 96.25 +598210.56 5681109.36 97.50 +598210.57 5678016.39 106.25 +598210.72 5680659.56 98.75 +598210.77 5679180.48 97.50 +598211.06 5678302.73 102.50 +598211.24 5681254.72 97.50 +598211.31 5683190.10 97.50 +598211.39 5678452.39 101.25 +598211.54 5682712.74 97.50 +598211.66 5683215.10 97.50 +598211.72 5681770.67 97.50 +598211.76 5682438.54 96.25 +598212.08 5678142.09 105.00 +598212.11 5681025.09 98.75 +598212.17 5680950.78 98.75 +598212.17 5683855.97 95.00 +598212.22 5678096.78 105.00 +598212.60 5677785.27 102.50 +598212.66 5678008.25 106.25 +598212.80 5678510.54 100.00 +598213.80 5678855.68 98.75 +598213.83 5677516.44 102.50 +598214.04 5677988.39 105.00 +598214.06 5683846.16 95.00 +598214.09 5677861.03 102.50 +598214.42 5680093.64 98.75 +598214.51 5680872.54 98.75 +598214.57 5678443.02 101.25 +598215.71 5678151.31 105.00 +598216.01 5678205.07 105.00 +598216.31 5683836.44 95.00 +598216.40 5678433.20 101.25 +598216.51 5682339.60 96.25 +598216.57 5679029.30 97.50 +598217.13 5683067.65 98.75 +598217.30 5677966.19 103.75 +598217.40 5682947.59 98.75 +598217.89 5683182.59 97.50 +598217.90 5679562.92 98.75 +598218.03 5686422.27 95.00 +598218.08 5682559.70 96.25 +598218.23 5678423.37 101.25 +598218.28 5677777.04 102.50 +598218.31 5682720.08 97.50 +598218.46 5681763.31 97.50 +598218.59 5678502.54 100.00 +598218.63 5678279.67 103.75 +598218.76 5677507.77 102.50 +598219.05 5678160.66 105.00 +598219.19 5678089.75 105.00 +598219.24 5686412.40 95.00 +598219.30 5683221.54 97.50 +598219.31 5678297.07 102.50 +598219.31 5677869.54 102.50 +598219.50 5681105.52 97.50 +598219.59 5683827.00 95.00 +598219.79 5678413.50 101.25 +598220.10 5681259.13 97.50 +598220.22 5682380.23 96.25 +598220.37 5682540.62 96.25 +598220.66 5679179.64 97.50 +598220.71 5680659.79 98.75 +598220.78 5677879.43 102.50 +598221.33 5678403.63 101.25 +598221.58 5678196.86 105.00 +598221.80 5681022.67 98.75 +598221.92 5680948.58 98.75 +598222.23 5677498.39 102.50 +598222.24 5677889.32 102.50 +598222.29 5680087.47 98.75 +598222.34 5678170.02 105.00 +598222.86 5678393.75 101.25 +598222.93 5683817.58 95.00 +598223.15 5678852.14 98.75 +598223.55 5678493.99 100.00 +598223.78 5677986.51 105.00 +598223.78 5677899.20 102.50 +598223.82 5682332.80 96.25 +598223.82 5677768.72 102.50 +598224.17 5680870.00 98.75 +598224.40 5678383.88 101.25 +598224.47 5683175.07 97.50 +598224.71 5677488.73 102.50 +598224.76 5681755.60 97.50 +598224.77 5683422.50 95.00 +598225.48 5678179.44 105.00 +598225.52 5678272.45 103.75 +598225.65 5677909.02 102.50 +598226.01 5682726.25 97.50 +598226.26 5686406.20 95.00 +598226.49 5679030.04 97.50 +598226.75 5683808.34 95.00 +598226.85 5683065.33 98.75 +598226.88 5683228.05 97.50 +598226.88 5678083.48 105.00 +598226.89 5677478.98 102.50 +598227.12 5682945.28 98.75 +598227.16 5678188.65 105.00 +598227.20 5679559.28 98.75 +598227.26 5677965.58 103.75 +598227.51 5677918.85 102.50 +598227.55 5678291.42 102.50 +598228.00 5682559.44 96.25 +598228.18 5678374.67 101.25 +598228.66 5681264.25 97.50 +598228.94 5678485.71 100.00 +598229.37 5677760.40 102.50 +598229.46 5681105.07 97.50 +598229.48 5677469.32 102.50 +598230.01 5683798.92 95.00 +598230.06 5677928.31 102.50 +598230.07 5682379.43 96.25 +598230.07 5683166.86 97.50 +598230.13 5680081.27 98.75 +598230.34 5682540.76 96.25 +598230.46 5681747.42 97.50 +598230.53 5679178.40 97.50 +598230.70 5680660.02 98.75 +598231.20 5678264.30 103.75 +598231.32 5681019.81 98.75 +598231.71 5680946.57 98.75 +598231.85 5678847.37 98.75 +598232.04 5677459.65 102.50 +598232.27 5678365.55 101.25 +598232.28 5682327.62 96.25 +598232.68 5683789.29 95.00 +598232.76 5683425.93 95.00 +598233.00 5686399.03 95.00 +598233.41 5678076.17 105.00 +598233.61 5677987.51 105.00 +598233.72 5680867.10 98.75 +598234.28 5683234.75 97.50 +598234.34 5679036.02 97.50 +598234.38 5677449.93 102.50 +598234.43 5678477.48 100.00 +598234.49 5678284.34 102.50 +598234.73 5682731.14 97.50 +598234.78 5681738.56 97.50 +598234.92 5677752.08 102.50 +598235.36 5683779.66 95.00 +598235.51 5677350.37 102.50 +598235.68 5677360.36 102.50 +598235.92 5683158.89 97.50 +598236.01 5677340.38 102.50 +598236.14 5677440.10 102.50 +598236.18 5677370.34 102.50 +598236.20 5682359.16 96.00 +598236.35 5683243.86 97.50 +598236.54 5679555.73 98.75 +598236.66 5678255.95 103.75 +598236.68 5677330.41 102.50 +598236.76 5683065.83 98.75 +598236.81 5677380.32 102.50 +598236.82 5681269.98 97.50 +598236.84 5682942.96 98.75 +598237.11 5678356.86 101.25 +598237.13 5677935.38 102.50 +598237.22 5677964.97 103.75 +598237.38 5683769.87 95.00 +598237.49 5677430.19 102.50 +598237.52 5677390.30 102.50 +598237.53 5681575.94 97.50 +598237.62 5681585.91 97.50 +598237.69 5681729.02 97.50 +598237.83 5682561.08 96.25 +598237.84 5677320.48 102.50 +598237.86 5680074.94 98.75 +598238.23 5677400.27 102.50 +598238.46 5677410.26 102.50 +598238.46 5677420.26 102.50 +598238.80 5678067.84 105.00 +598238.99 5677742.98 102.50 +598239.01 5677310.55 102.50 +598239.15 5682198.92 96.25 +598239.16 5682381.71 96.25 +598239.25 5683760.05 95.00 +598239.41 5681104.61 97.50 +598239.47 5682538.92 96.25 +598239.52 5681566.33 97.50 +598239.91 5678469.25 100.00 +598239.93 5681014.75 98.75 +598240.11 5678841.75 98.75 +598240.18 5681595.55 97.50 +598240.40 5679177.16 97.50 +598240.53 5686392.60 95.00 +598240.68 5680659.93 98.75 +598240.77 5678058.17 105.00 +598240.82 5678276.60 102.50 +598241.09 5682322.93 96.25 +598241.16 5683252.62 97.50 +598241.36 5677300.83 102.50 +598241.47 5681719.80 97.50 +598241.50 5680944.56 98.75 +598242.06 5679042.29 97.50 +598242.11 5678129.36 103.75 +598242.19 5678139.25 103.75 +598242.29 5678048.37 105.00 +598242.36 5678247.76 103.75 +598242.46 5683750.63 95.00 +598242.60 5686373.23 95.00 +598242.68 5683427.08 95.00 +598242.75 5681605.19 97.50 +598242.83 5681277.71 97.50 +598242.89 5678348.70 101.25 +598242.90 5677733.78 102.50 +598242.95 5680863.28 98.75 +598243.10 5686383.16 95.00 +598243.17 5677989.75 105.00 +598243.43 5686363.45 95.00 +598243.75 5682390.56 96.25 +598243.79 5683153.04 97.50 +598243.82 5681557.35 97.50 +598243.93 5678038.61 105.00 +598244.03 5678120.05 103.75 +598244.05 5682734.41 97.50 +598244.36 5683500.58 95.00 +598244.47 5677291.44 102.50 +598244.84 5682530.52 96.25 +598244.96 5680067.91 98.75 +598245.14 5677941.16 102.50 +598245.23 5682400.24 96.25 +598245.34 5678460.99 100.00 +598245.48 5682410.22 96.25 +598245.50 5681710.67 97.50 +598245.82 5683510.47 95.00 +598246.08 5679050.69 97.50 +598246.21 5679553.23 98.75 +598246.23 5683741.38 95.00 +598246.28 5678148.36 103.75 +598246.39 5681614.48 97.50 +598246.56 5682940.65 98.75 +598246.71 5683065.99 98.75 +598246.74 5686325.46 95.00 +598246.75 5683491.02 95.00 +598246.87 5683260.80 97.50 +598246.90 5679080.38 97.50 +598247.00 5678268.74 102.50 +598247.09 5677724.70 102.50 +598247.16 5677965.62 103.75 +598247.24 5679070.44 97.50 +598247.32 5686335.21 95.00 +598247.42 5679090.31 97.50 +598247.48 5682563.50 96.25 +598247.60 5682196.61 96.25 +598247.60 5679060.52 97.50 +598247.64 5686354.58 95.00 +598247.94 5679100.25 97.50 +598247.96 5681286.26 97.50 +598248.09 5681008.97 98.75 +598248.37 5678029.73 105.00 +598248.38 5678836.14 98.75 +598248.57 5679110.16 97.50 +598248.66 5678340.54 101.25 +598249.03 5678240.33 103.75 +598249.19 5679172.66 97.50 +598249.27 5686344.95 95.00 +598249.30 5681701.46 97.50 +598249.33 5682323.35 96.25 +598249.37 5681104.08 97.50 +598249.66 5686316.17 95.00 +598249.83 5677282.99 102.50 +598249.85 5683481.52 95.00 +598249.97 5681549.49 97.50 +598250.03 5681623.77 97.50 +598250.18 5678157.54 103.75 +598250.37 5682418.67 96.25 +598250.62 5680658.92 98.75 +598250.68 5683518.93 95.00 +598250.77 5678452.73 100.00 +598250.96 5682522.65 96.25 +598251.11 5678113.12 103.75 +598251.26 5677715.62 102.50 +598251.31 5680942.66 98.75 +598251.87 5678571.66 98.75 +598251.99 5679119.51 97.50 +598251.99 5683733.38 95.00 +598252.02 5683430.37 95.00 +598252.07 5680060.88 98.75 +598252.07 5677994.06 105.00 +598252.21 5680859.56 98.75 +598252.29 5681691.94 97.50 +598252.37 5678562.30 98.75 +598252.50 5681633.43 97.50 +598253.00 5678260.74 102.50 +598253.05 5678020.99 105.00 +598253.16 5681389.36 97.50 +598253.38 5683151.72 97.50 +598253.47 5681379.40 97.50 +598253.56 5681369.43 97.50 +598253.72 5683667.72 95.00 +598253.73 5681294.39 97.50 +598253.84 5682736.40 97.50 +598253.84 5678166.83 103.75 +598253.90 5683267.78 97.50 +598254.02 5677945.76 102.50 +598254.27 5678443.60 100.00 +598254.59 5683677.36 95.00 +598254.77 5681643.14 97.50 +598254.87 5681359.64 97.50 +598255.04 5678332.91 101.25 +598255.18 5677274.55 102.50 +598255.20 5681682.40 97.50 +598255.27 5677706.46 102.50 +598255.28 5683473.16 95.00 +598255.41 5679128.85 97.50 +598255.45 5682200.30 96.25 +598255.70 5678232.91 103.75 +598255.88 5679550.73 98.75 +598256.07 5681002.97 98.75 +598256.09 5679165.97 97.50 +598256.16 5681541.66 97.50 +598256.29 5682938.34 98.75 +598256.51 5682330.21 96.25 +598256.66 5683065.03 98.75 +598256.80 5681652.91 97.50 +598256.84 5678434.05 100.00 +598256.86 5686309.74 95.00 +598256.93 5678830.97 98.75 +598257.08 5677966.70 103.75 +598257.09 5682565.67 96.25 +598257.18 5683658.54 95.00 +598257.23 5681672.63 97.50 +598257.40 5678553.67 98.75 +598257.41 5678002.42 105.00 +598257.43 5678012.19 105.00 +598257.43 5678579.44 98.75 +598257.61 5681350.05 97.50 +598257.70 5680052.68 98.75 +598258.00 5681662.81 97.50 +598258.72 5678175.25 103.75 +598258.77 5677697.13 102.50 +598258.81 5683726.08 95.00 +598258.83 5679138.19 97.50 +598258.96 5682517.21 96.25 +598259.07 5682423.34 96.25 +598259.32 5681103.55 97.50 +598259.39 5678424.50 100.00 +598259.39 5683464.14 95.00 +598259.52 5681302.50 97.50 +598259.59 5678253.24 102.50 +598260.23 5683436.01 95.00 +598260.26 5678109.15 103.75 +598260.49 5680657.36 98.75 +598260.63 5683519.82 95.00 +598260.70 5681340.57 97.50 +598260.94 5683683.91 95.00 +598260.96 5677687.37 102.50 +598260.97 5679147.88 97.50 +598261.15 5680940.91 98.75 +598261.15 5679157.40 97.50 +598261.76 5683273.95 97.50 +598261.91 5681533.60 97.50 +598261.93 5678414.95 100.00 +598261.99 5680857.50 98.75 +598262.27 5682338.37 96.25 +598262.36 5678326.12 101.25 +598262.36 5678225.48 103.75 +598262.71 5683454.71 95.00 +598262.89 5678545.31 98.75 +598262.93 5680044.16 98.75 +598262.97 5677268.64 102.50 +598263.13 5677949.88 102.50 +598263.19 5683153.63 97.50 +598263.28 5682204.21 96.25 +598263.29 5677677.65 102.50 +598263.34 5681311.61 97.50 +598263.71 5682737.67 97.50 +598263.78 5681331.09 97.50 +598263.90 5683444.94 95.00 +598263.92 5680996.78 98.75 +598263.99 5683651.22 95.00 +598264.71 5686303.69 95.00 +598265.05 5681321.26 97.50 +598265.14 5681524.16 97.50 +598265.29 5678405.72 100.00 +598265.48 5678825.80 98.75 +598265.50 5679548.05 98.75 +598265.62 5683061.18 98.75 +598265.92 5683719.05 95.00 +598265.93 5682935.74 98.75 +598266.22 5678181.84 103.75 +598266.28 5677969.54 103.75 +598266.36 5677668.14 102.50 +598266.47 5678583.71 98.75 +598266.68 5678246.23 102.50 +598266.82 5682563.50 96.25 +598267.39 5678217.02 103.75 +598267.94 5686294.61 95.00 +598267.95 5681514.59 97.50 +598268.04 5678536.75 98.75 +598268.18 5682513.44 96.25 +598268.18 5680035.65 98.75 +598268.19 5681406.78 97.50 +598268.69 5677658.45 102.50 +598268.83 5682421.23 96.25 +598269.28 5681103.08 97.50 +598269.48 5682345.27 96.25 +598269.61 5683280.13 97.50 +598269.69 5678319.32 101.25 +598269.94 5678106.89 103.75 +598270.01 5678397.03 100.00 +598270.16 5677648.56 102.50 +598270.18 5681494.94 97.50 +598270.18 5681504.91 97.50 +598270.21 5683518.64 95.00 +598270.34 5680655.69 98.75 +598270.54 5683682.79 95.00 +598270.65 5681484.97 97.50 +598270.71 5683643.83 95.00 +598270.92 5682208.45 96.25 +598270.97 5681416.37 97.50 +598270.99 5680939.16 98.75 +598271.25 5678207.82 103.75 +598271.43 5686285.60 95.00 +598271.60 5681475.06 97.50 +598271.64 5677638.67 102.50 +598271.77 5680990.60 98.75 +598271.77 5680855.44 98.75 +598271.86 5677264.28 102.50 +598272.10 5677954.26 102.50 +598272.30 5683711.38 95.00 +598272.62 5683151.13 97.50 +598272.93 5678528.03 98.75 +598273.44 5680027.15 98.75 +598273.47 5678188.55 103.75 +598273.58 5681425.99 97.50 +598273.67 5681465.30 97.50 +598273.70 5682737.90 97.50 +598273.74 5677628.89 102.50 +598274.02 5678820.63 98.75 +598274.09 5683055.87 98.75 +598274.10 5677975.73 103.75 +598274.33 5678198.49 103.75 +598274.77 5678388.37 100.00 +598274.84 5678240.45 102.50 +598274.90 5679544.67 98.75 +598275.43 5683288.13 97.50 +598275.53 5682932.96 98.75 +598275.75 5678587.18 98.75 +598275.85 5677619.12 102.50 +598275.87 5681455.57 97.50 +598275.96 5681435.68 97.50 +598276.11 5682559.90 96.25 +598276.11 5682277.96 96.25 +598276.18 5681445.65 97.50 +598276.48 5682352.39 96.25 +598276.72 5683635.84 95.00 +598277.17 5678312.69 101.25 +598277.58 5682416.44 96.25 +598277.60 5682510.25 96.25 +598277.83 5682213.82 96.25 +598277.88 5677609.33 102.50 +598278.01 5686278.19 95.00 +598278.49 5678519.77 98.75 +598278.51 5683513.06 95.00 +598278.57 5683676.84 95.00 +598278.73 5683703.75 95.00 +598278.78 5680018.70 98.75 +598279.24 5681102.68 97.50 +598279.37 5683143.76 97.50 +598279.53 5678104.57 103.75 +598279.72 5677599.50 102.50 +598279.75 5680984.60 98.75 +598279.87 5686268.42 95.00 +598280.23 5680656.93 98.75 +598280.72 5683296.61 97.50 +598280.82 5680937.41 98.75 +598280.83 5677959.15 102.50 +598281.03 5678380.72 100.00 +598281.45 5678233.13 102.50 +598281.46 5678813.98 98.75 +598281.55 5680853.39 98.75 +598281.73 5683627.29 95.00 +598281.75 5677262.83 102.50 +598281.76 5682221.21 96.25 +598281.82 5683049.54 98.75 +598281.83 5677982.04 103.75 +598282.33 5686258.80 95.00 +598282.50 5683393.72 97.50 +598282.61 5682408.01 96.25 +598282.74 5682359.97 96.25 +598283.31 5677590.28 102.50 +598283.61 5682738.78 97.50 +598284.22 5686249.09 95.00 +598284.31 5680010.37 98.75 +598284.31 5679541.30 98.75 +598284.75 5678306.18 101.25 +598284.91 5678512.11 98.75 +598285.13 5682930.16 98.75 +598285.17 5683135.63 97.50 +598285.30 5683617.97 95.00 +598285.33 5682369.61 96.25 +598285.35 5683305.30 97.50 +598285.40 5682556.30 96.25 +598285.45 5683505.94 95.00 +598285.54 5683696.44 95.00 +598285.66 5678588.54 98.75 +598285.89 5682504.72 96.25 +598286.00 5682278.89 96.25 +598286.07 5683384.39 97.50 +598286.08 5683315.27 97.50 +598286.15 5686239.41 95.00 +598286.82 5683325.23 97.50 +598286.89 5678224.77 102.50 +598287.19 5682399.14 96.25 +598287.29 5678373.07 100.00 +598287.48 5678098.54 103.75 +598287.49 5681137.80 97.25 +598287.55 5683335.20 97.50 +598287.74 5682389.19 96.25 +598287.78 5683678.31 95.00 +598287.93 5682379.25 96.25 +598287.98 5677581.44 102.50 +598288.17 5683608.39 95.00 +598288.22 5680979.29 98.75 +598288.29 5683345.16 97.50 +598288.70 5681104.56 97.50 +598288.74 5682485.70 96.25 +598288.80 5678807.20 98.75 +598288.84 5683355.14 97.50 +598288.99 5678503.01 98.75 +598289.29 5677964.47 102.50 +598289.36 5683365.12 97.50 +598289.38 5682475.76 96.25 +598289.45 5686230.03 95.00 +598289.46 5682495.63 96.25 +598289.52 5683043.17 98.75 +598289.65 5683375.06 97.50 +598289.80 5683687.40 95.00 +598289.83 5680002.03 98.75 +598290.01 5677987.72 103.75 +598290.11 5680658.40 98.75 +598290.15 5678055.75 103.75 +598290.39 5683598.65 95.00 +598290.56 5681146.43 97.25 +598290.66 5680935.62 98.75 +598290.86 5682466.05 96.25 +598290.96 5678045.85 103.75 +598291.08 5678215.69 102.50 +598291.45 5680853.30 98.75 +598291.55 5677262.98 102.50 +598292.47 5678299.86 101.25 +598292.60 5683588.92 95.00 +598292.84 5686220.68 95.00 +598292.88 5678493.80 98.75 +598293.25 5678365.19 100.00 +598293.28 5682741.19 97.50 +598293.32 5683499.93 95.00 +598293.52 5683130.20 97.50 +598293.71 5679537.93 98.75 +598293.85 5677573.43 102.50 +598294.04 5678206.18 102.50 +598294.16 5678037.01 103.75 +598294.63 5682927.09 98.75 +598294.70 5682283.34 96.25 +598294.77 5682553.45 96.25 +598294.79 5678091.93 103.75 +598294.82 5681111.85 97.50 +598295.03 5678064.45 103.75 +598295.11 5681135.52 97.25 +598295.43 5679993.76 98.75 +598295.45 5682457.20 96.25 +598295.54 5678590.01 98.75 +598295.75 5686211.17 95.00 +598295.89 5683579.48 95.00 +598296.47 5678196.48 102.50 +598296.69 5680973.99 98.75 +598296.77 5678484.59 98.75 +598296.89 5681153.87 97.25 +598297.00 5678801.80 98.75 +598297.17 5683036.74 98.75 +598297.24 5680613.76 98.75 +598297.39 5683569.60 95.00 +598297.64 5680621.33 98.75 +598297.74 5677969.82 102.50 +598298.08 5678186.61 102.50 +598298.13 5686306.80 95.00 +598298.36 5683559.67 95.00 +598298.39 5683549.68 95.00 +598298.44 5678073.72 103.75 +598298.56 5677992.87 103.75 +598298.62 5686201.65 95.00 +598299.01 5678357.15 100.00 +598299.33 5681120.74 97.50 +598299.53 5686316.39 95.00 +598299.69 5678176.74 102.50 +598299.80 5678293.11 101.25 +598299.87 5678083.34 103.75 +598300.01 5680659.77 98.75 +598300.21 5683539.95 95.00 +598300.45 5677565.91 102.50 +598300.47 5680933.76 98.75 +598300.75 5686297.36 95.00 +598301.10 5678475.59 98.75 +598301.17 5686192.06 95.00 +598301.22 5677265.54 102.50 +598301.24 5682449.09 96.25 +598301.40 5680854.23 98.75 +598301.40 5686182.11 95.00 +598301.58 5679985.87 98.75 +598301.61 5678030.41 103.75 +598301.69 5679531.99 98.75 +598301.87 5682290.10 96.25 +598301.99 5683124.90 97.50 +598302.13 5682558.95 96.25 +598302.26 5686172.30 95.00 +598302.27 5682745.55 97.50 +598302.58 5683496.60 95.00 +598302.78 5681141.48 97.25 +598302.87 5681130.01 97.50 +598302.96 5678167.35 102.50 +598303.31 5681161.21 97.25 +598304.14 5682924.01 98.75 +598304.65 5683531.39 95.00 +598304.66 5683030.12 98.75 +598304.77 5678349.12 100.00 +598304.85 5680607.97 98.75 +598305.35 5678591.95 98.75 +598305.35 5680969.12 98.75 +598305.50 5678466.61 98.75 +598305.68 5686288.78 95.00 +598306.18 5686323.77 95.00 +598306.32 5678798.20 98.75 +598306.33 5678285.61 101.25 +598306.40 5680625.84 98.75 +598306.42 5686163.35 95.00 +598306.66 5677974.11 102.50 +598307.05 5677558.40 102.50 +598307.09 5677997.99 103.75 +598307.42 5678158.46 102.50 +598307.73 5679977.99 98.75 +598308.50 5681138.24 97.50 +598308.71 5682297.29 96.25 +598309.09 5682443.49 96.25 +598309.46 5682564.87 96.25 +598309.49 5679525.75 98.75 +598309.70 5680662.00 98.75 +598309.74 5681168.56 97.25 +598309.86 5678025.00 103.75 +598309.89 5681148.16 97.25 +598310.29 5680931.89 98.75 +598310.31 5677269.50 102.50 +598310.54 5678458.04 98.75 +598310.55 5683119.87 97.50 +598311.04 5678341.48 100.00 +598311.34 5680855.17 98.75 +598311.37 5678277.00 101.25 +598312.01 5686281.05 95.00 +598312.03 5682746.72 97.50 +598312.34 5683497.42 95.00 +598312.56 5683525.34 95.00 +598312.74 5683024.47 98.75 +598312.89 5686155.79 95.00 +598312.90 5678015.49 103.75 +598313.01 5678005.72 103.75 +598313.22 5680603.37 98.75 +598313.29 5682920.03 98.75 +598313.42 5678150.47 102.50 +598313.75 5677550.98 102.50 +598313.88 5679970.11 98.75 +598314.86 5678594.97 98.75 +598314.93 5680966.26 98.75 +598315.08 5681145.70 97.50 +598315.28 5686327.40 95.00 +598315.53 5678267.93 101.25 +598315.64 5678794.61 98.75 +598315.99 5682304.04 96.25 +598316.04 5680627.39 98.75 +598316.07 5681175.98 97.25 +598316.43 5677976.18 102.50 +598316.51 5681155.32 97.25 +598316.82 5678450.26 98.75 +598317.26 5679519.48 98.75 +598317.45 5686147.24 95.00 +598317.58 5678334.08 100.00 +598317.73 5682438.70 96.25 +598318.34 5686273.31 95.00 +598318.61 5679961.31 98.75 +598318.75 5686137.47 95.00 +598318.96 5682564.02 96.25 +598318.96 5680665.69 98.75 +598318.97 5677274.49 102.50 +598319.17 5686127.82 95.00 +598319.42 5678142.47 102.50 +598320.10 5680929.99 98.75 +598320.47 5677543.58 102.50 +598320.53 5683119.47 97.50 +598320.55 5683502.50 95.00 +598321.29 5680856.12 98.75 +598321.90 5680599.64 98.75 +598321.91 5682745.68 97.50 +598321.97 5681152.91 97.50 +598322.12 5679952.03 98.75 +598322.17 5683022.27 98.75 +598322.25 5678260.67 101.25 +598322.31 5681183.49 97.25 +598322.33 5682915.77 98.75 +598322.41 5683525.03 95.00 +598322.74 5682388.28 96.25 +598322.79 5682396.67 96.25 +598322.88 5679511.22 98.75 +598323.14 5681162.49 97.25 +598323.14 5678442.52 98.75 +598323.96 5678598.93 98.75 +598324.13 5678326.67 100.00 +598324.51 5679942.32 98.75 +598324.52 5680963.46 98.75 +598324.69 5686265.60 95.00 +598324.85 5678792.28 98.75 +598324.86 5686326.57 95.00 +598325.00 5682307.65 96.25 +598325.12 5682432.01 96.25 +598325.61 5680629.42 98.75 +598325.88 5679872.66 98.75 +598325.94 5677281.36 102.50 +598325.95 5678134.91 102.50 +598326.28 5677977.91 102.50 +598326.31 5679932.52 98.75 +598326.54 5679882.63 98.75 +598326.73 5677535.80 102.50 +598326.83 5686121.48 95.00 +598326.91 5679922.54 98.75 +598326.96 5682558.12 96.25 +598327.20 5679892.61 98.75 +598327.52 5679912.56 98.75 +598327.62 5682405.19 96.25 +598327.68 5680670.57 98.75 +598327.86 5679902.59 98.75 +598328.00 5683509.15 95.00 +598328.50 5679502.96 98.75 +598328.52 5679863.09 98.75 +598328.55 5681190.99 97.25 +598328.86 5681160.11 97.50 +598328.91 5678253.23 101.25 +598329.30 5682508.57 95.75 +598329.40 5681169.97 97.25 +598329.54 5678434.83 98.75 +598329.89 5680927.95 98.75 +598329.94 5682627.86 96.25 +598330.35 5683120.38 97.50 +598330.45 5682382.02 96.25 +598330.52 5682414.71 96.25 +598330.76 5682618.20 96.25 +598330.85 5678319.45 100.00 +598331.05 5686257.88 95.00 +598331.05 5683025.92 98.75 +598331.20 5682424.32 96.25 +598331.24 5680857.02 98.75 +598331.42 5680598.76 98.75 +598331.51 5682637.63 96.25 +598331.59 5679853.58 98.75 +598331.68 5682743.62 97.50 +598331.80 5677289.46 102.50 +598331.80 5682912.78 98.75 +598332.07 5678604.77 98.75 +598332.33 5679493.87 98.75 +598332.36 5683525.86 95.00 +598332.49 5677527.63 102.50 +598332.75 5678127.58 102.50 +598333.13 5686113.80 95.00 +598333.38 5678797.48 98.75 +598334.20 5680960.97 98.75 +598334.50 5686323.99 95.00 +598334.60 5682310.18 96.25 +598334.66 5679844.06 98.75 +598334.92 5680632.69 98.75 +598334.97 5679484.23 98.75 +598335.11 5680677.04 98.75 +598335.16 5683516.08 95.00 +598335.32 5682609.93 96.25 +598335.57 5681167.48 97.50 +598335.71 5678245.93 101.25 +598335.72 5681177.41 97.25 +598335.94 5678427.15 98.75 +598336.21 5677978.68 102.50 +598336.25 5682555.26 96.25 +598336.31 5682646.14 96.25 +598336.57 5686249.56 95.00 +598336.70 5681196.36 97.25 +598337.46 5677518.97 102.50 +598337.47 5679474.57 98.75 +598337.74 5679834.55 98.75 +598337.99 5677297.29 102.50 +598338.28 5683032.82 98.75 +598338.39 5678119.36 102.50 +598338.76 5678313.52 100.00 +598339.11 5679464.71 98.75 +598339.28 5686105.98 95.00 +598339.68 5680925.98 98.75 +598339.89 5683123.35 97.50 +598339.98 5682380.75 96.25 +598340.19 5678610.61 98.75 +598340.40 5683524.14 95.00 +598340.42 5686240.53 95.00 +598340.79 5680599.35 98.75 +598340.81 5679454.87 98.75 +598340.81 5679825.04 98.75 +598341.23 5680857.25 98.75 +598341.25 5680684.91 98.75 +598341.27 5682740.79 97.50 +598341.57 5682910.68 98.75 +598341.91 5678802.68 98.75 +598342.09 5678419.28 98.75 +598342.16 5681174.97 97.50 +598342.20 5677510.16 102.50 +598342.23 5681184.68 97.25 +598342.30 5678238.47 101.25 +598342.40 5686230.73 95.00 +598343.25 5678110.66 102.50 +598343.88 5680958.48 98.75 +598343.89 5679815.53 98.75 +598344.18 5679445.47 98.75 +598344.26 5682312.48 96.25 +598344.32 5680635.73 98.75 +598344.32 5686322.60 95.00 +598344.55 5681202.17 97.25 +598344.80 5682607.76 96.25 +598344.97 5677304.45 102.50 +598345.11 5686097.93 95.00 +598345.15 5686221.13 95.00 +598345.26 5683039.97 98.75 +598345.45 5682556.64 96.25 +598345.89 5682648.73 96.25 +598346.21 5677978.59 102.50 +598346.26 5677501.06 102.50 +598346.68 5678307.59 100.00 +598347.06 5679806.04 98.75 +598347.07 5678101.42 102.50 +598347.13 5678229.73 101.25 +598347.30 5680692.87 98.75 +598347.63 5678617.25 98.75 +598347.97 5678411.19 98.75 +598348.38 5679436.49 98.75 +598348.66 5683128.08 97.50 +598348.74 5681182.45 97.50 +598348.84 5678809.54 98.75 +598349.06 5681191.65 97.25 +598349.15 5686212.04 95.00 +598349.52 5682382.53 96.25 +598349.56 5677491.62 102.50 +598349.56 5680924.50 98.75 +598349.99 5680601.77 98.75 +598350.34 5679796.60 98.75 +598350.61 5678092.07 102.50 +598350.70 5678220.45 101.25 +598350.85 5682737.96 97.50 +598350.87 5686089.82 95.00 +598351.23 5680857.48 98.75 +598351.53 5682911.18 98.75 +598351.71 5681208.77 97.25 +598351.94 5677311.61 102.50 +598352.69 5677482.13 102.50 +598353.01 5682563.12 96.25 +598353.03 5678818.43 98.75 +598353.27 5680639.81 98.75 +598353.59 5680956.14 98.75 +598353.61 5679787.15 98.75 +598353.77 5678210.95 101.25 +598353.86 5686203.25 95.00 +598353.96 5682314.61 96.25 +598354.01 5678082.66 102.50 +598354.19 5679428.37 98.75 +598354.23 5677662.06 101.25 +598354.24 5677652.15 101.25 +598354.24 5683043.22 98.75 +598354.29 5686323.35 95.00 +598354.58 5680699.50 98.75 +598354.58 5682609.16 96.25 +598354.66 5678403.82 98.75 +598354.88 5678624.14 98.75 +598354.95 5677672.02 101.25 +598355.02 5678302.10 100.00 +598355.03 5678828.22 98.75 +598355.32 5681189.94 97.50 +598355.34 5677472.49 102.50 +598355.85 5682648.73 96.25 +598356.07 5681198.44 97.25 +598356.07 5677681.90 101.25 +598356.19 5677978.01 102.50 +598356.23 5677642.37 101.25 +598356.47 5678072.99 102.50 +598356.92 5679777.72 98.75 +598356.93 5678201.48 101.25 +598357.02 5678838.01 98.75 +598357.32 5683133.07 97.50 +598357.40 5686082.36 95.00 +598357.88 5677462.82 102.50 +598357.94 5686194.16 95.00 +598358.23 5677632.59 101.25 +598358.30 5678063.17 102.50 +598358.39 5682387.06 96.25 +598358.61 5681215.67 97.25 +598358.76 5677691.51 101.25 +598359.23 5677318.45 102.50 +598359.45 5680923.01 98.75 +598359.54 5680601.35 98.75 +598359.61 5678847.65 98.75 +598359.68 5677452.98 102.50 +598359.85 5678053.29 102.50 +598359.92 5682570.20 96.25 +598360.01 5679420.24 98.75 +598360.08 5678192.01 101.25 +598360.50 5682735.42 97.50 +598360.84 5677622.96 101.25 +598361.07 5680855.88 98.75 +598361.40 5678043.41 102.50 +598361.41 5682912.32 98.75 +598361.45 5677701.13 101.25 +598361.49 5677443.15 102.50 +598361.89 5678396.91 98.75 +598362.16 5680644.07 98.75 +598362.37 5678630.67 98.75 +598362.49 5678857.21 98.75 +598362.49 5677711.00 101.25 +598362.84 5677720.97 101.25 +598362.94 5680704.99 98.75 +598363.09 5681205.22 97.25 +598363.13 5679769.89 98.75 +598363.29 5677433.31 102.50 +598363.31 5680953.80 98.75 +598363.52 5678033.64 102.50 +598363.54 5677730.92 101.25 +598363.59 5682317.02 96.25 +598363.60 5686185.92 95.00 +598363.65 5678182.69 101.25 +598363.65 5681194.80 97.50 +598363.90 5682606.47 96.25 +598364.11 5683044.77 98.75 +598364.13 5678298.16 100.00 +598364.16 5677613.62 101.25 +598364.26 5686324.11 95.00 +598364.37 5677423.37 102.50 +598364.42 5686075.31 95.00 +598364.69 5677740.84 101.25 +598365.08 5682578.72 96.25 +598365.36 5677980.03 102.50 +598365.37 5678866.78 98.75 +598365.43 5677413.43 102.50 +598365.70 5677780.66 101.25 +598365.81 5682648.49 96.25 +598365.84 5678023.92 102.50 +598365.84 5677750.75 101.25 +598365.97 5679412.23 98.75 +598365.98 5677770.68 101.25 +598366.13 5677403.46 102.50 +598366.19 5683137.58 97.50 +598366.25 5677760.70 101.25 +598366.34 5681221.61 97.25 +598366.67 5677393.50 102.50 +598366.78 5677325.01 102.50 +598366.87 5677790.53 101.25 +598367.18 5682391.74 96.25 +598367.34 5682588.20 96.25 +598367.57 5682501.84 96.25 +598367.89 5686177.17 95.00 +598368.12 5678173.80 101.25 +598368.24 5682598.12 96.25 +598368.44 5682492.08 96.25 +598368.64 5677800.35 101.25 +598368.89 5677334.72 102.50 +598369.02 5678014.48 102.50 +598369.06 5686167.24 95.00 +598369.08 5680600.76 98.75 +598369.33 5680921.53 98.75 +598369.34 5679762.05 98.75 +598369.42 5678390.34 98.75 +598369.57 5677605.23 101.25 +598369.72 5681113.26 98.75 +598369.91 5677384.04 102.50 +598370.08 5686157.30 95.00 +598370.12 5681211.98 97.25 +598370.31 5682733.52 97.50 +598370.39 5677344.59 102.50 +598370.55 5681103.45 98.75 +598370.55 5680853.17 98.75 +598370.64 5678875.16 98.75 +598370.75 5686067.65 95.00 +598370.96 5682915.29 98.75 +598371.15 5677354.56 102.50 +598371.16 5677809.99 101.25 +598371.25 5680647.93 98.75 +598371.48 5678634.77 98.75 +598371.86 5677364.54 102.50 +598372.02 5682321.66 96.25 +598372.21 5680708.61 98.75 +598372.22 5682510.66 96.25 +598372.35 5686147.63 95.00 +598372.51 5681122.82 98.75 +598372.58 5677374.51 102.50 +598372.69 5679404.84 98.75 +598373.01 5682483.87 96.25 +598373.03 5680951.46 98.75 +598373.06 5678005.33 102.50 +598373.06 5681093.86 98.75 +598373.16 5681197.70 97.50 +598373.17 5678165.19 101.25 +598373.17 5686058.09 95.00 +598373.23 5677986.19 102.50 +598373.51 5686320.33 95.00 +598373.52 5681220.66 97.25 +598373.56 5678294.86 100.00 +598373.98 5683046.31 98.75 +598374.09 5677819.54 101.25 +598374.55 5677995.69 102.50 +598374.98 5677596.84 101.25 +598375.53 5686138.15 95.00 +598375.54 5682648.81 96.25 +598375.55 5679754.22 98.75 +598375.61 5682397.07 96.25 +598375.64 5683140.84 97.50 +598376.35 5681084.47 98.75 +598376.47 5681131.85 98.75 +598376.54 5678883.23 98.75 +598376.58 5686048.75 95.00 +598377.00 5678383.82 98.75 +598377.26 5682519.24 96.25 +598378.07 5677828.64 101.25 +598378.57 5680599.61 98.75 +598378.67 5682675.29 96.25 +598378.96 5682921.23 98.75 +598379.04 5680847.91 98.75 +598379.14 5678157.20 101.25 +598379.21 5680920.04 98.75 +598379.32 5682328.40 96.25 +598379.41 5679397.45 98.75 +598379.57 5682665.49 96.25 +598379.89 5686129.18 95.00 +598380.22 5682732.29 97.50 +598380.83 5680650.14 98.75 +598380.97 5678636.38 98.75 +598381.04 5682656.04 96.25 +598381.23 5681075.80 98.75 +598381.50 5686040.27 95.00 +598381.96 5682485.65 96.25 +598382.02 5680710.32 98.75 +598382.16 5677589.97 101.25 +598382.72 5677837.48 101.25 +598382.74 5680949.09 98.75 +598382.74 5682527.57 96.25 +598382.76 5686316.56 95.00 +598382.84 5681139.37 98.75 +598383.01 5683050.06 98.75 +598383.10 5681198.34 97.50 +598383.23 5678292.57 100.00 +598383.29 5678890.51 98.75 +598384.01 5679748.92 98.75 +598384.15 5682402.19 96.25 +598384.56 5686120.35 95.00 +598384.58 5678377.30 98.75 +598384.72 5678148.98 101.25 +598384.74 5682682.40 96.25 +598385.19 5683143.73 97.50 +598385.83 5679389.84 98.75 +598385.95 5682335.75 96.25 +598386.94 5682927.26 98.75 +598387.30 5680842.28 98.75 +598387.41 5681068.13 98.75 +598387.77 5680601.78 98.75 +598387.81 5677846.04 101.25 +598387.99 5686032.78 95.00 +598388.13 5682492.18 96.25 +598389.09 5680918.56 98.75 +598389.31 5678140.12 101.25 +598389.41 5677583.12 101.25 +598389.81 5686111.92 95.00 +598389.87 5682534.32 96.25 +598390.17 5682731.38 97.50 +598390.54 5678634.09 98.75 +598390.56 5680651.87 98.75 +598390.57 5681145.43 98.75 +598390.62 5682582.68 96.25 +598390.63 5679381.08 98.75 +598390.79 5678897.12 98.75 +598390.93 5682592.64 96.25 +598391.83 5683054.67 98.75 +598391.89 5681195.22 97.50 +598391.89 5682501.40 96.25 +598391.92 5686312.65 95.00 +598391.93 5680711.56 98.75 +598392.44 5680946.72 98.75 +598392.52 5679743.68 98.75 +598393.06 5682342.12 96.25 +598393.06 5682406.07 96.25 +598393.14 5678291.24 100.00 +598393.36 5678372.81 98.75 +598393.59 5677854.18 101.25 +598393.77 5682686.54 96.25 +598393.91 5678131.26 101.25 +598394.36 5680835.23 98.75 +598394.59 5681061.24 98.75 +598394.88 5682933.31 98.75 +598394.90 5683146.07 97.50 +598394.96 5682601.44 96.25 +598395.44 5679372.32 98.75 +598395.98 5682510.48 96.25 +598396.16 5677575.77 101.25 +598396.48 5680605.42 98.75 +598396.54 5686027.70 95.00 +598396.54 5686104.53 95.00 +598396.68 5682574.78 96.25 +598397.90 5682540.23 96.25 +598398.28 5678903.72 98.75 +598398.31 5678122.30 101.25 +598398.79 5686305.38 95.00 +598399.02 5680917.71 98.75 +598399.17 5678629.04 98.75 +598399.64 5677862.11 101.25 +598400.11 5682730.95 97.50 +598400.12 5681148.12 98.75 +598400.24 5679363.56 98.75 +598400.30 5681189.98 97.50 +598400.36 5680650.94 98.75 +598400.39 5680827.27 98.75 +598401.01 5678112.83 101.25 +598401.28 5683056.57 98.75 +598401.33 5679738.97 98.75 +598401.61 5678286.05 100.00 +598401.68 5680713.58 98.75 +598402.02 5682940.30 98.75 +598402.04 5681054.64 98.75 +598402.21 5678102.92 101.25 +598402.25 5680944.83 98.75 +598402.36 5682518.12 96.25 +598402.62 5682344.79 96.25 +598402.71 5678369.28 98.75 +598402.90 5678092.96 101.25 +598402.94 5677568.45 101.25 +598402.98 5682405.11 96.25 +598403.18 5680612.04 98.75 +598403.22 5682606.50 96.25 +598403.27 5686097.15 95.00 +598403.37 5682688.99 96.25 +598404.41 5678083.09 101.25 +598404.74 5683147.38 97.50 +598404.82 5686022.23 95.00 +598405.20 5682569.78 96.25 +598405.66 5686298.12 95.00 +598406.09 5677869.73 101.25 +598406.18 5678073.29 101.25 +598406.29 5682545.60 96.25 +598406.33 5680819.24 98.75 +598406.82 5680551.16 98.75 +598406.86 5679356.26 98.75 +598406.90 5678622.71 98.75 +598407.20 5678906.89 98.75 +598408.13 5680620.22 98.75 +598408.79 5683050.66 98.75 +598408.86 5682525.67 96.25 +598408.97 5680917.67 98.75 +598409.16 5682947.30 98.75 +598409.30 5681185.71 97.50 +598409.60 5677561.03 101.25 +598409.74 5678063.97 101.25 +598409.80 5681048.44 98.75 +598409.86 5678280.43 100.00 +598410.05 5682732.04 97.50 +598410.05 5681147.46 98.75 +598410.14 5680649.59 98.75 +598410.33 5679734.63 98.75 +598410.50 5686090.25 95.00 +598410.53 5680541.90 98.75 +598411.20 5680716.60 98.75 +598411.32 5686015.50 95.00 +598411.50 5686290.09 95.00 +598411.51 5686005.63 95.00 +598411.82 5682400.64 96.25 +598412.07 5678365.75 98.75 +598412.10 5682685.69 96.25 +598412.10 5680943.13 98.75 +598412.15 5680811.12 98.75 +598412.16 5678054.30 101.25 +598412.20 5682347.36 96.25 +598412.36 5682675.80 96.25 +598412.40 5677877.45 101.25 +598412.68 5682604.47 96.25 +598412.92 5682465.46 96.25 +598414.13 5680627.53 98.75 +598414.14 5680557.10 98.75 +598414.23 5680532.64 98.75 +598414.27 5683150.40 97.50 +598414.30 5678044.55 101.25 +598414.38 5679349.68 98.75 +598414.64 5678616.38 98.75 +598414.65 5685996.20 95.00 +598414.81 5682550.77 96.25 +598414.95 5677552.60 101.25 +598415.01 5683042.85 98.75 +598415.08 5682569.42 96.25 +598415.65 5681139.63 98.75 +598416.34 5682667.43 96.25 +598416.59 5686281.49 95.00 +598416.60 5682458.79 96.25 +598416.73 5681129.74 98.75 +598416.91 5682531.30 96.25 +598417.17 5678907.51 98.75 +598417.57 5681119.82 98.75 +598417.64 5682952.35 98.75 +598417.80 5680802.88 98.75 +598417.81 5686083.43 95.00 +598418.07 5678274.73 100.00 +598418.16 5677885.60 101.25 +598418.41 5681109.90 98.75 +598418.58 5680914.93 98.75 +598418.74 5682252.44 96.25 +598418.90 5678035.75 101.25 +598418.92 5680523.85 98.75 +598419.09 5681184.80 97.50 +598419.12 5681044.97 98.75 +598419.26 5681099.99 98.75 +598419.34 5679730.29 98.75 +598419.40 5682735.18 97.50 +598419.57 5679087.24 98.75 +598419.63 5685987.81 95.00 +598419.81 5681125.33 97.50 +598419.89 5680648.01 98.75 +598419.93 5681115.36 97.50 +598420.09 5679077.26 98.75 +598420.28 5681105.40 97.50 +598420.29 5677544.17 101.25 +598420.38 5682472.01 96.25 +598420.45 5682395.65 96.25 +598420.50 5680720.26 98.75 +598420.64 5682598.56 96.25 +598420.74 5683034.68 98.75 +598420.79 5681090.16 98.75 +598420.99 5681112.98 96.25 +598421.02 5681122.78 96.25 +598421.06 5681095.46 97.50 +598421.14 5677895.08 101.25 +598421.27 5680633.89 98.75 +598421.44 5678362.27 98.75 +598421.61 5678609.23 98.75 +598421.67 5681103.20 96.25 +598421.68 5686272.89 95.00 +598421.85 5679096.18 98.75 +598421.91 5679343.11 98.75 +598422.05 5680942.82 98.75 +598422.11 5682348.04 96.25 +598422.13 5681135.02 97.50 +598422.23 5682260.91 96.25 +598422.29 5683229.78 97.50 +598422.47 5681080.34 98.75 +598422.68 5681060.60 98.75 +598422.95 5683155.06 97.50 +598422.97 5681132.38 96.25 +598423.00 5681093.52 96.25 +598423.31 5679068.18 98.75 +598423.36 5682564.61 96.25 +598423.38 5683239.71 97.50 +598423.46 5680794.63 98.75 +598423.49 5680558.45 98.75 +598423.51 5682555.64 96.25 +598423.59 5681070.51 98.75 +598423.70 5680515.09 98.75 +598423.73 5681085.90 97.50 +598423.92 5677904.66 101.25 +598423.94 5683220.03 97.50 +598423.98 5678027.17 101.25 +598425.11 5686076.61 95.00 +598425.13 5678267.91 100.00 +598425.18 5682245.06 96.25 +598425.36 5681084.00 96.25 +598425.52 5683025.91 98.75 +598425.53 5682664.66 96.25 +598425.63 5677535.73 101.25 +598425.68 5682536.02 96.25 +598425.71 5680505.36 98.75 +598426.07 5682461.05 96.25 +598426.23 5683249.19 97.50 +598426.26 5680642.03 98.75 +598426.37 5683210.34 97.50 +598426.45 5681076.33 97.50 +598426.50 5685980.73 95.00 +598426.58 5681141.41 96.25 +598427.02 5681143.66 97.50 +598427.14 5678908.12 98.75 +598427.21 5682955.26 98.75 +598427.23 5677914.06 101.25 +598428.19 5680912.19 98.75 +598428.21 5681066.52 97.50 +598428.29 5680496.01 98.75 +598428.36 5679725.98 98.75 +598428.36 5681052.74 98.75 +598428.37 5681041.31 98.75 +598428.43 5682739.46 97.50 +598428.46 5678601.94 98.75 +598428.48 5680786.00 98.75 +598428.50 5681074.72 96.25 +598428.64 5682601.97 96.25 +598428.72 5683200.63 97.50 +598428.81 5682477.28 96.25 +598428.86 5680725.67 98.75 +598428.88 5679059.89 98.75 +598428.90 5682390.37 96.25 +598429.04 5681184.58 97.50 +598429.10 5678018.60 101.25 +598429.28 5679102.71 98.75 +598429.41 5683162.39 97.50 +598429.65 5682252.19 95.00 +598429.69 5677923.71 101.25 +598429.83 5677526.68 101.25 +598429.84 5686267.58 95.00 +598429.92 5677642.52 100.00 +598430.28 5677652.33 100.00 +598430.65 5679338.36 98.75 +598430.67 5678259.60 100.00 +598431.07 5683190.91 97.50 +598431.11 5681120.27 96.00 +598431.14 5678359.86 98.75 +598431.27 5682264.73 96.25 +598431.34 5681110.68 96.00 +598431.80 5681101.10 96.00 +598431.95 5680941.76 98.75 +598432.01 5682348.73 96.25 +598432.15 5683018.46 98.75 +598432.24 5683256.42 97.50 +598432.87 5683181.10 97.50 +598432.90 5681148.77 96.25 +598433.07 5681129.64 96.00 +598433.13 5677633.06 100.00 +598433.16 5686070.93 95.00 +598433.29 5680777.24 98.75 +598433.43 5680557.62 98.75 +598433.43 5681091.72 96.00 +598433.51 5677932.93 101.25 +598433.64 5682259.17 95.00 +598433.69 5681150.67 97.50 +598433.93 5677517.58 101.25 +598433.95 5682610.22 96.25 +598433.97 5678009.89 101.25 +598434.02 5681059.05 97.50 +598434.02 5683171.18 97.50 +598434.13 5682240.77 96.25 +598434.31 5681066.73 96.25 +598434.45 5679051.59 98.75 +598434.92 5682244.07 95.00 +598434.96 5682539.65 96.25 +598435.07 5682465.31 96.25 +598435.22 5685975.94 95.00 +598435.36 5677660.94 100.00 +598435.40 5682664.07 96.25 +598435.51 5678594.86 98.75 +598435.55 5682960.46 98.75 +598435.85 5682620.00 96.25 +598435.86 5680489.52 98.75 +598435.95 5678251.13 100.00 +598436.60 5681082.66 96.00 +598436.62 5682629.93 96.25 +598436.67 5680731.82 98.75 +598436.69 5681138.43 96.00 +598436.74 5678910.41 98.75 +598436.96 5681048.05 98.75 +598437.15 5677942.22 101.25 +598437.25 5681036.84 98.75 +598437.35 5682385.09 96.25 +598437.40 5679721.71 98.75 +598437.43 5682482.29 96.25 +598437.49 5680908.53 98.75 +598437.61 5682743.41 97.50 +598437.73 5677508.35 101.25 +598437.96 5677624.38 100.00 +598438.06 5679107.48 98.75 +598438.09 5680768.48 98.75 +598438.28 5681180.86 97.50 +598438.43 5678000.96 101.25 +598438.71 5683010.93 98.75 +598438.77 5686263.11 95.00 +598439.63 5679334.01 98.75 +598439.97 5678183.09 100.00 +598440.03 5678242.02 100.00 +598440.07 5677951.75 101.25 +598440.22 5680944.54 98.75 +598440.36 5682268.74 96.25 +598440.43 5677669.54 100.00 +598440.83 5678193.04 100.00 +598440.84 5678357.45 98.75 +598440.91 5681154.34 96.25 +598441.00 5682638.52 96.25 +598441.10 5677961.68 101.25 +598441.11 5677991.44 101.25 +598441.30 5683259.98 97.50 +598441.42 5678173.24 100.00 +598441.43 5677499.08 101.25 +598441.44 5681146.73 96.00 +598441.68 5678202.99 100.00 +598441.69 5681107.30 96.00 +598441.88 5680759.35 98.75 +598441.89 5677971.63 101.25 +598441.92 5682349.13 96.25 +598442.14 5681074.85 96.00 +598442.14 5681155.91 97.50 +598442.23 5680739.94 98.75 +598442.36 5686067.04 95.00 +598442.38 5681116.80 96.00 +598442.49 5677981.59 101.25 +598442.53 5678212.95 100.00 +598442.53 5681062.43 96.25 +598442.62 5681055.22 97.50 +598442.90 5682261.76 95.00 +598442.92 5681097.97 96.00 +598443.20 5678163.41 100.00 +598443.26 5678222.91 100.00 +598443.29 5679046.97 98.75 +598443.29 5680925.12 100.00 +598443.31 5677615.94 100.00 +598443.32 5680556.41 98.75 +598443.43 5680483.03 98.75 +598443.47 5678588.87 98.75 +598443.57 5682238.66 96.25 +598443.65 5682470.39 96.25 +598443.69 5680749.52 98.75 +598443.92 5682965.92 98.75 +598443.94 5685971.16 95.00 +598443.96 5682241.06 95.00 +598443.99 5678232.87 100.00 +598444.28 5682543.17 96.25 +598444.38 5681029.90 98.75 +598444.39 5681173.93 97.50 +598444.48 5677489.58 101.25 +598444.85 5682660.92 96.25 +598444.85 5683003.05 98.75 +598445.99 5678914.17 98.75 +598446.11 5682380.39 96.25 +598446.17 5682487.08 96.25 +598446.21 5681164.31 97.50 +598446.22 5679717.02 98.75 +598446.24 5677677.66 100.00 +598446.54 5681125.20 96.00 +598446.74 5680904.75 98.75 +598446.81 5682747.30 97.50 +598446.82 5681047.61 98.75 +598446.84 5679112.25 98.75 +598447.02 5681089.29 96.00 +598447.35 5686258.01 95.00 +598447.40 5678154.66 100.00 +598447.47 5682975.01 98.75 +598447.53 5677480.07 101.25 +598447.93 5680916.98 100.00 +598448.01 5680931.11 100.00 +598448.81 5681159.93 96.25 +598449.08 5682256.10 94.75 +598449.09 5682994.25 98.75 +598449.20 5682637.39 96.25 +598449.23 5679331.23 98.75 +598449.27 5682273.19 96.25 +598449.35 5681068.80 96.00 +598449.41 5681152.09 96.00 +598449.96 5680942.31 98.75 +598450.14 5681022.69 98.75 +598450.14 5677608.68 100.00 +598450.17 5683373.99 96.25 +598450.26 5678354.28 98.75 +598450.41 5682984.56 98.75 +598450.58 5677470.57 101.25 +598450.74 5683257.89 97.50 +598451.57 5686063.14 95.00 +598451.84 5678583.40 98.75 +598451.85 5682348.88 96.25 +598451.95 5681061.85 96.25 +598452.03 5677685.79 100.00 +598452.10 5681101.57 96.25 +598452.16 5682475.58 96.25 +598452.17 5679042.38 98.75 +598452.22 5682264.53 95.00 +598452.23 5681081.24 96.00 +598452.32 5682250.07 94.75 +598452.51 5681055.34 97.50 +598452.75 5681132.51 96.00 +598452.75 5681111.41 96.25 +598452.81 5685966.67 95.00 +598452.87 5678146.39 100.00 +598452.89 5680480.08 98.75 +598453.24 5680555.38 98.75 +598453.42 5682239.97 96.25 +598453.58 5682242.46 95.00 +598453.66 5681092.17 96.25 +598454.20 5682542.32 96.25 +598454.22 5682657.53 96.25 +598454.30 5680609.43 98.75 +598454.53 5682492.38 96.25 +598454.55 5682628.99 96.25 +598454.84 5677461.65 101.25 +598454.91 5679712.07 98.75 +598455.25 5678917.92 98.75 +598455.28 5681120.89 96.25 +598455.53 5679117.18 98.75 +598455.56 5682378.38 96.25 +598455.59 5686252.37 95.00 +598455.67 5680600.84 98.75 +598455.90 5681072.53 96.00 +598455.99 5680900.97 98.75 +598456.25 5681050.66 98.75 +598456.37 5680912.26 100.00 +598456.54 5682749.48 97.50 +598456.64 5683366.51 96.25 +598456.66 5678137.15 100.00 +598456.67 5681182.30 96.25 +598457.09 5686238.30 95.10 +598457.11 5677601.52 100.00 +598457.17 5682261.47 94.75 +598457.37 5681157.45 96.00 +598457.48 5677694.16 100.00 +598457.64 5680930.19 100.00 +598457.82 5682278.03 96.25 +598458.45 5683251.53 97.50 +598458.63 5681160.90 96.25 +598458.83 5679328.45 98.75 +598458.99 5681083.86 96.25 +598459.10 5681018.34 98.75 +598459.17 5678349.74 98.75 +598459.67 5682620.45 96.25 +598459.69 5680940.06 98.75 +598460.09 5681189.95 96.25 +598460.15 5681138.56 96.00 +598460.16 5680592.10 98.75 +598460.34 5678578.20 98.75 +598460.42 5677453.38 101.25 +598460.46 5678127.91 100.00 +598460.50 5682287.37 96.25 +598460.59 5681066.62 96.25 +598460.65 5682480.79 96.25 +598460.77 5686059.25 95.00 +598460.98 5682268.57 95.00 +598461.08 5682253.52 94.75 +598461.15 5681128.32 96.25 +598461.16 5681060.30 97.50 +598461.22 5679038.16 98.75 +598461.51 5682350.43 96.25 +598461.68 5682499.32 96.25 +598461.81 5685962.42 95.00 +598461.99 5683358.23 96.25 +598462.46 5682246.21 95.00 +598462.60 5680614.96 98.75 +598462.64 5680478.27 98.75 +598462.85 5682242.88 96.25 +598462.90 5681175.33 96.25 +598462.94 5677702.53 100.00 +598463.19 5680554.68 98.75 +598463.46 5679706.90 98.75 +598463.50 5682539.14 96.25 +598463.53 5681075.37 96.25 +598463.55 5682654.03 96.25 +598463.63 5686246.47 95.00 +598463.67 5681057.29 98.75 +598463.86 5682322.11 96.25 +598463.93 5677594.23 100.00 +598464.20 5679122.15 98.75 +598464.26 5678118.67 100.00 +598464.41 5683243.78 97.50 +598464.51 5678921.68 98.75 +598465.19 5682754.10 97.50 +598465.35 5680897.48 98.75 +598465.40 5682379.89 96.25 +598465.68 5682266.47 94.75 +598465.77 5680910.00 100.00 +598465.97 5681145.88 96.00 +598466.01 5677445.11 101.25 +598466.25 5681155.10 96.00 +598466.89 5681067.92 97.50 +598466.93 5683349.67 96.25 +598467.00 5682614.57 96.25 +598467.01 5680928.09 100.00 +598467.02 5680584.86 98.75 +598467.62 5677711.33 100.00 +598467.68 5681156.94 96.25 +598467.87 5678109.36 100.00 +598467.93 5678344.93 98.75 +598468.05 5681013.99 98.75 +598468.19 5682506.81 96.25 +598468.32 5680919.03 100.50 +598468.62 5681181.74 96.00 +598468.65 5685955.24 95.00 +598468.71 5679328.90 98.75 +598468.85 5683234.83 97.50 +598469.10 5680936.70 98.75 +598469.38 5686054.32 95.00 +598469.41 5682273.40 95.00 +598469.43 5681133.66 96.25 +598469.52 5681192.21 96.25 +598469.70 5678574.70 98.75 +598469.89 5682484.36 96.25 +598469.95 5682257.41 94.75 +598470.18 5681372.44 96.25 +598470.18 5677586.43 100.00 +598470.51 5679034.72 98.75 +598470.60 5681064.37 98.75 +598470.67 5678099.77 100.00 +598470.77 5682251.24 95.00 +598470.86 5686239.56 95.00 +598470.92 5682353.58 96.25 +598471.23 5682533.22 96.25 +598471.53 5682247.75 96.25 +598471.57 5681380.88 96.25 +598471.60 5677436.83 101.25 +598471.73 5678283.37 100.00 +598471.76 5680618.71 98.75 +598471.78 5683341.05 96.25 +598471.84 5677720.39 100.00 +598472.10 5679701.92 98.75 +598472.18 5681076.16 97.50 +598472.31 5681176.38 96.25 +598472.36 5682326.90 96.25 +598472.48 5682649.61 96.25 +598472.59 5680477.56 98.75 +598472.60 5680556.16 98.75 +598472.81 5678927.17 98.75 +598472.87 5679127.12 98.75 +598473.15 5683225.81 97.50 +598473.32 5682759.91 97.50 +598473.48 5678090.18 100.00 +598473.58 5678274.67 100.00 +598473.96 5682514.94 96.25 +598474.11 5677729.93 100.00 +598474.15 5680577.96 98.75 +598474.25 5682619.03 96.25 +598474.54 5682270.02 94.75 +598474.77 5681509.64 96.25 +598474.79 5680894.20 98.75 +598475.10 5682382.19 96.25 +598475.10 5677739.84 100.00 +598475.12 5682524.77 96.25 +598475.17 5680907.74 100.00 +598475.39 5685947.93 95.00 +598476.04 5681518.71 96.25 +598476.12 5681500.49 96.25 +598476.16 5683332.19 96.25 +598476.19 5680925.03 100.00 +598476.25 5686231.41 95.00 +598476.32 5678291.31 100.00 +598476.43 5677578.64 100.00 +598476.59 5678339.93 98.75 +598476.64 5681418.80 96.25 +598476.92 5681153.61 96.25 +598477.00 5681009.64 98.75 +598477.08 5681071.73 98.75 +598477.25 5682263.83 94.75 +598477.40 5686048.35 95.00 +598477.41 5683216.77 97.50 +598477.91 5677749.42 100.00 +598478.09 5682277.77 95.00 +598478.21 5681138.18 96.25 +598478.35 5677429.51 101.25 +598478.44 5682257.18 95.00 +598478.52 5680933.33 98.75 +598478.53 5678081.57 100.00 +598478.56 5678266.27 100.00 +598478.64 5679329.98 98.75 +598478.88 5681316.21 96.25 +598478.96 5681386.83 96.25 +598479.07 5678571.20 98.75 +598479.15 5682254.16 96.25 +598479.16 5681492.03 96.25 +598479.30 5686222.01 95.00 +598479.37 5681192.49 96.25 +598479.39 5681372.42 96.25 +598479.41 5682358.53 96.25 +598479.50 5682486.90 96.25 +598479.52 5686212.01 95.00 +598479.75 5686202.02 95.00 +598479.76 5682627.34 96.25 +598479.86 5681082.29 97.50 +598479.91 5686172.05 95.00 +598479.98 5682643.29 96.25 +598479.98 5686192.03 95.00 +598480.00 5680562.09 98.75 +598480.07 5686182.04 95.00 +598480.43 5679033.53 98.75 +598480.44 5678933.61 98.75 +598480.65 5677759.03 100.00 +598480.68 5683323.41 96.25 +598481.05 5682766.21 97.50 +598481.08 5681002.93 98.75 +598481.11 5680993.63 98.75 +598481.16 5681412.71 96.25 +598481.22 5680621.86 98.75 +598481.24 5680571.98 98.75 +598481.26 5679697.90 98.75 +598481.46 5681178.91 96.25 +598481.53 5679132.09 98.75 +598481.66 5683207.73 97.50 +598481.87 5686162.29 95.00 +598481.89 5681426.50 96.25 +598481.97 5682328.70 96.25 +598482.05 5681512.14 96.00 +598482.53 5680476.74 98.75 +598482.57 5685941.05 95.00 +598482.68 5677570.85 100.00 +598482.69 5681308.21 96.25 +598482.88 5681524.80 96.25 +598482.99 5677768.74 100.00 +598483.64 5678072.99 100.00 +598483.65 5681381.13 96.00 +598484.07 5682386.38 96.25 +598484.31 5678258.37 100.00 +598484.41 5680891.51 98.75 +598484.44 5678333.82 98.75 +598484.58 5680905.47 100.00 +598484.82 5683198.27 97.50 +598484.85 5686152.84 95.00 +598485.13 5682635.73 96.25 +598485.36 5681485.22 96.25 +598485.37 5677422.42 101.25 +598485.41 5686042.38 95.00 +598485.42 5681322.09 96.25 +598485.47 5680922.36 100.00 +598485.62 5682263.74 95.00 +598485.83 5681076.41 98.75 +598485.87 5678290.69 100.00 +598486.47 5682260.91 96.25 +598486.60 5677777.99 100.00 +598486.70 5680985.39 98.75 +598486.74 5681154.70 96.25 +598486.95 5682364.90 96.25 +598487.04 5683315.83 96.25 +598487.38 5682278.41 95.00 +598487.40 5681141.77 96.25 +598487.60 5683188.68 97.50 +598487.62 5679333.98 98.75 +598487.70 5677562.26 100.00 +598487.73 5681390.72 96.25 +598487.83 5678940.32 98.75 +598487.93 5680929.99 98.75 +598488.18 5682773.10 97.50 +598488.27 5681375.74 96.25 +598488.30 5678567.40 98.75 +598488.75 5682484.99 96.25 +598488.82 5681423.34 96.00 +598489.10 5681191.16 96.25 +598489.22 5681316.62 96.00 +598489.40 5679138.24 98.75 +598489.49 5678064.93 100.00 +598489.53 5681084.73 97.50 +598489.63 5681252.12 96.25 +598489.96 5681430.91 96.25 +598490.00 5681260.37 96.25 +598490.04 5681414.79 96.25 +598490.18 5686144.39 95.00 +598490.35 5679032.63 98.75 +598490.38 5683179.08 97.50 +598490.69 5679695.29 98.75 +598490.70 5681309.30 96.25 +598490.80 5685935.63 95.00 +598490.86 5680624.30 98.75 +598490.87 5678251.34 100.00 +598491.03 5677786.95 100.00 +598491.21 5681177.53 96.25 +598491.21 5681510.15 96.25 +598491.53 5681528.10 96.25 +598491.72 5682328.27 96.25 +598491.85 5681500.91 96.25 +598491.92 5678327.19 98.75 +598492.13 5677553.31 100.00 +598492.17 5682392.00 96.25 +598492.24 5682782.23 97.50 +598492.32 5682270.79 95.00 +598492.34 5686035.39 95.00 +598492.38 5677415.32 101.25 +598492.42 5680475.51 98.75 +598492.81 5683169.41 97.50 +598492.86 5682268.50 96.25 +598493.05 5683308.03 96.25 +598493.32 5681491.78 96.25 +598493.52 5682372.35 96.25 +598493.54 5681325.63 96.25 +598493.99 5681483.31 96.25 +598494.09 5680903.81 100.00 +598494.11 5683159.50 97.50 +598494.12 5680889.27 98.75 +598494.53 5678267.65 100.25 +598494.83 5680919.93 100.00 +598494.86 5678286.86 100.00 +598495.24 5680980.43 98.75 +598495.27 5681079.50 98.75 +598495.29 5681184.85 96.25 +598495.70 5681518.24 96.25 +598495.79 5683149.65 97.50 +598495.81 5681146.40 96.25 +598495.86 5678057.23 100.00 +598495.94 5678945.71 98.75 +598496.12 5677795.38 100.00 +598496.31 5682791.36 97.50 +598496.57 5677544.36 100.00 +598496.60 5681154.96 96.25 +598496.71 5679337.77 98.75 +598496.83 5681380.19 96.25 +598497.19 5678562.82 98.75 +598497.19 5681392.68 96.25 +598497.21 5679144.47 98.75 +598497.32 5682479.90 96.25 +598497.35 5683299.12 96.25 +598497.66 5680927.70 98.75 +598497.69 5686137.94 95.00 +598497.85 5686027.05 95.00 +598498.27 5682276.85 96.25 +598498.38 5681313.84 96.25 +598498.38 5681418.96 96.25 +598498.41 5678319.73 98.75 +598498.76 5681249.39 96.25 +598498.81 5683140.21 97.50 +598499.00 5681264.52 96.25 +598499.06 5681430.85 96.25 +598499.08 5682399.18 96.25 +598499.19 5681087.17 97.50 +598499.50 5681526.68 96.25 +598499.57 5678247.38 100.00 +598499.67 5685931.14 95.00 +598500.27 5679033.85 98.75 +598500.28 5677535.10 100.00 +598500.47 5677409.61 101.25 +598500.68 5679695.52 98.75 +598500.70 5680625.94 98.75 +598501.35 5682329.46 96.25 +598501.47 5682377.30 96.25 +598501.66 5683290.22 96.25 +598501.72 5682799.75 97.50 +598501.87 5681594.73 96.25 +598502.11 5678049.43 100.00 +598502.32 5680474.27 98.75 +598502.35 5681326.91 96.25 +598502.73 5678281.39 100.00 +598502.89 5683131.08 97.50 +598503.36 5686018.71 95.00 +598503.46 5682285.35 96.25 +598503.57 5678311.16 98.75 +598503.60 5682472.38 96.25 +598503.67 5680902.46 100.00 +598503.67 5677525.70 100.00 +598503.76 5680594.28 100.00 +598503.77 5677801.81 100.00 +598504.01 5680975.72 98.75 +598504.09 5680917.24 100.00 +598504.11 5680888.90 98.75 +598504.50 5681604.02 96.25 +598504.70 5680585.38 100.00 +598504.70 5682407.38 96.25 +598505.03 5679150.69 98.75 +598505.04 5681080.23 98.75 +598505.38 5682695.86 96.25 +598505.64 5678948.11 98.75 +598505.79 5681383.78 96.25 +598505.88 5686065.32 96.30 +598506.07 5678558.23 98.75 +598506.08 5682705.19 96.25 +598506.14 5686132.73 95.00 +598506.33 5681395.77 96.25 +598506.46 5683281.59 96.25 +598506.54 5679339.57 98.75 +598506.73 5681316.90 96.25 +598506.90 5681422.75 96.25 +598507.06 5677516.30 100.00 +598507.15 5682808.14 97.50 +598507.39 5680925.41 98.75 +598507.42 5682513.37 96.25 +598507.56 5681588.03 96.25 +598507.79 5683122.40 97.50 +598507.81 5681269.14 96.25 +598508.10 5681252.84 96.25 +598508.14 5682504.04 96.25 +598508.15 5681432.80 96.25 +598508.34 5678041.62 100.00 +598508.67 5685926.89 95.00 +598508.69 5678248.71 100.00 +598508.71 5681666.03 96.25 +598508.83 5681613.03 96.25 +598508.97 5682464.01 96.25 +598509.04 5681085.98 97.50 +598509.14 5681675.76 96.25 +598509.16 5677404.70 101.25 +598509.56 5678274.39 100.00 +598509.66 5682523.05 96.25 +598509.77 5682415.95 96.25 +598509.78 5682687.14 96.25 +598509.94 5681323.90 96.25 +598510.02 5680577.16 100.00 +598510.18 5679035.07 98.75 +598510.33 5677506.86 100.00 +598510.60 5680626.98 98.75 +598510.60 5681622.61 96.25 +598510.63 5680600.56 100.00 +598510.68 5679695.74 98.75 +598510.76 5677808.93 100.00 +598510.77 5686012.00 95.00 +598510.93 5682331.37 96.25 +598510.96 5679158.35 98.75 +598511.37 5682376.69 96.25 +598511.53 5682289.50 96.25 +598511.56 5682817.09 97.50 +598511.72 5683273.21 96.25 +598511.73 5680471.29 98.75 +598512.18 5678306.13 98.75 +598512.40 5681714.08 96.25 +598512.51 5682425.32 96.25 +598512.52 5680567.80 100.00 +598512.63 5680912.71 100.00 +598512.68 5681685.03 96.25 +598512.75 5680970.96 98.75 +598512.80 5682454.81 96.25 +598513.10 5683113.94 97.50 +598513.24 5680901.11 100.00 +598513.30 5682495.75 96.25 +598513.34 5682435.25 96.25 +598513.39 5681631.83 96.25 +598513.63 5681723.98 96.25 +598513.71 5681657.57 96.25 +598513.89 5678256.60 100.00 +598514.00 5682709.64 96.25 +598514.05 5682445.19 96.25 +598514.06 5682531.61 96.25 +598514.07 5680889.36 98.75 +598514.25 5681704.36 96.25 +598514.35 5677497.74 100.00 +598514.41 5678033.70 100.00 +598514.44 5678265.91 100.00 +598514.78 5681387.32 96.25 +598514.81 5681427.42 96.25 +598514.90 5679167.54 98.75 +598514.92 5681079.07 98.75 +598515.12 5681694.55 96.25 +598515.22 5678554.36 98.75 +598515.29 5682678.92 96.25 +598515.31 5686128.75 95.00 +598515.34 5678950.52 98.75 +598515.68 5681397.86 96.25 +598515.77 5681590.97 96.25 +598516.32 5679341.62 98.75 +598516.45 5681733.57 96.25 +598516.54 5681258.13 96.25 +598516.58 5681273.85 96.25 +598516.79 5680922.17 98.75 +598516.96 5685921.41 95.00 +598516.98 5683264.83 96.25 +598517.19 5681433.93 96.25 +598517.22 5677816.50 100.00 +598517.48 5680560.35 100.00 +598517.75 5682824.79 97.50 +598517.96 5677399.99 101.25 +598518.40 5682669.50 96.25 +598518.54 5686005.74 95.00 +598518.55 5681640.39 96.25 +598518.84 5679176.72 98.75 +598518.95 5681084.94 97.50 +598519.13 5680906.07 100.00 +598519.16 5677489.00 100.00 +598519.36 5681600.13 96.25 +598519.68 5678100.77 98.75 +598519.68 5681649.65 96.25 +598519.94 5678025.38 100.00 +598520.15 5679035.11 98.75 +598520.15 5683106.86 97.50 +598520.27 5682659.85 96.25 +598520.30 5680599.00 100.00 +598520.49 5678300.65 98.75 +598520.54 5682333.15 96.25 +598520.55 5680627.47 98.75 +598520.67 5679695.97 98.75 +598520.77 5682649.94 96.25 +598520.78 5680467.14 98.75 +598520.97 5682374.40 96.25 +598520.99 5682538.46 96.25 +598521.01 5682489.49 96.25 +598521.12 5683255.89 96.25 +598521.34 5681742.14 96.25 +598521.40 5682290.83 96.25 +598521.46 5680966.14 98.75 +598521.47 5678091.84 98.75 +598521.48 5681609.87 96.25 +598521.87 5681392.97 96.25 +598522.00 5677825.27 100.00 +598522.78 5679185.90 98.75 +598522.90 5685859.70 95.00 +598523.22 5682708.21 96.25 +598523.28 5685849.87 95.00 +598523.92 5680890.89 98.75 +598524.09 5678108.99 98.75 +598524.55 5686124.94 95.00 +598524.67 5677480.66 100.00 +598524.78 5681263.73 96.25 +598524.79 5683246.71 96.25 +598524.79 5681077.78 98.75 +598524.95 5678552.07 98.75 +598525.04 5678952.92 98.75 +598525.11 5681618.90 96.25 +598525.13 5682831.50 97.50 +598525.22 5685915.87 95.00 +598525.25 5680402.04 98.75 +598525.46 5678017.05 100.00 +598525.61 5685869.27 95.00 +598525.66 5681277.93 96.25 +598525.88 5680918.03 98.75 +598526.09 5679343.70 98.75 +598526.23 5680411.95 98.75 +598526.37 5680556.70 100.00 +598526.40 5685840.85 95.00 +598526.61 5677395.03 101.25 +598526.63 5685999.87 95.00 +598526.79 5677834.04 100.00 +598527.16 5678084.14 98.75 +598527.23 5683099.82 97.50 +598527.25 5680421.87 98.75 +598527.55 5681749.96 96.25 +598527.64 5679194.61 98.75 +598528.32 5682482.78 96.25 +598528.39 5678294.55 98.75 +598528.50 5680460.83 98.75 +598528.50 5683237.55 96.25 +598528.68 5680431.73 98.75 +598528.79 5685878.68 95.00 +598528.89 5681084.22 97.50 +598529.01 5682644.76 96.25 +598529.29 5680392.93 98.75 +598529.33 5680595.38 100.00 +598529.73 5682336.41 96.25 +598529.87 5685907.08 95.00 +598530.09 5679699.00 98.75 +598530.13 5679034.70 98.75 +598530.17 5677843.42 100.00 +598530.26 5680625.19 98.75 +598530.28 5680961.54 98.75 +598530.32 5680441.57 98.75 +598530.58 5682541.03 96.25 +598530.88 5682373.96 96.25 +598530.99 5678008.73 100.00 +598531.09 5680451.39 98.75 +598531.21 5681626.77 96.25 +598531.21 5682292.53 96.25 +598531.30 5678115.48 98.75 +598531.79 5677473.68 100.00 +598532.04 5682703.68 96.25 +598532.25 5680911.03 98.75 +598532.33 5685887.98 95.00 +598532.72 5685897.82 95.00 +598532.73 5681269.72 96.25 +598532.74 5685833.18 95.00 +598532.81 5679203.16 98.75 +598532.81 5682474.22 96.25 +598533.01 5681758.28 96.25 +598533.17 5682837.41 97.50 +598533.22 5677852.93 100.00 +598533.31 5686120.34 95.00 +598533.34 5680383.82 98.75 +598533.45 5680893.78 98.75 +598533.94 5683229.28 96.25 +598533.95 5681075.12 98.75 +598534.39 5682425.61 96.25 +598534.49 5677862.84 100.00 +598534.56 5682435.16 96.25 +598534.64 5678077.92 98.75 +598534.66 5677999.53 100.00 +598534.68 5678549.77 98.75 +598534.71 5677882.73 100.00 +598534.77 5678955.14 98.75 +598534.89 5682464.57 96.25 +598535.02 5685994.44 95.00 +598535.03 5681281.31 96.25 +598535.05 5677389.70 101.25 +598535.33 5677872.76 100.00 +598535.67 5681767.75 96.25 +598535.76 5683095.17 97.50 +598535.98 5682454.70 96.25 +598536.00 5679344.62 98.75 +598536.07 5680555.35 100.00 +598536.29 5678288.46 98.75 +598536.51 5677892.55 100.00 +598536.75 5682444.85 96.25 +598536.77 5680902.12 98.75 +598536.90 5681723.07 96.25 +598537.15 5681777.63 96.25 +598537.56 5677989.97 100.00 +598537.63 5681713.31 96.25 +598537.92 5681080.14 97.50 +598537.98 5679211.71 98.75 +598537.99 5681634.11 96.25 +598538.07 5682640.76 96.25 +598538.19 5682416.62 96.25 +598538.44 5680591.98 100.00 +598538.64 5681732.80 96.25 +598538.65 5682340.40 96.25 +598538.93 5677902.24 100.00 +598539.00 5677466.77 100.00 +598539.32 5680957.38 98.75 +598539.39 5681786.86 96.25 +598539.40 5683221.04 96.25 +598539.42 5679702.59 98.75 +598539.48 5678120.57 98.75 +598539.97 5680622.90 98.75 +598540.11 5679034.29 98.75 +598540.13 5682375.73 96.25 +598540.21 5682543.38 96.25 +598540.32 5680377.29 98.75 +598540.45 5677980.41 100.00 +598540.64 5682698.74 96.25 +598541.01 5682294.31 96.25 +598541.02 5681275.22 96.25 +598541.13 5686114.11 95.00 +598541.51 5677911.89 100.00 +598541.52 5682842.90 97.50 +598541.53 5681068.76 98.75 +598542.06 5685829.90 95.00 +598542.47 5681741.87 96.25 +598542.73 5681642.78 96.25 +598543.05 5681652.71 96.25 +598543.05 5681662.70 96.25 +598543.05 5681672.70 96.25 +598543.15 5679220.26 98.75 +598543.37 5677970.85 100.00 +598543.41 5685989.01 95.00 +598543.49 5677384.37 101.25 +598543.69 5677921.64 100.00 +598543.71 5678074.58 98.75 +598543.73 5681286.11 96.25 +598543.99 5680542.00 100.00 +598544.19 5678282.37 98.75 +598544.43 5680551.02 100.00 +598544.46 5678548.40 98.75 +598544.65 5678956.65 98.75 +598544.70 5681682.55 96.25 +598544.89 5687257.26 95.00 +598545.01 5681710.06 96.25 +598545.04 5680532.78 100.00 +598545.32 5683092.25 97.50 +598545.47 5687247.32 95.00 +598545.83 5681074.43 97.50 +598545.87 5677931.39 100.00 +598545.99 5679344.85 98.75 +598546.08 5686105.45 95.00 +598546.11 5677961.27 100.00 +598546.14 5683213.80 96.25 +598546.30 5677951.28 100.00 +598546.49 5677941.30 100.00 +598546.53 5687237.38 95.00 +598546.79 5682636.25 96.25 +598546.92 5681793.35 96.25 +598546.99 5677460.90 100.00 +598547.19 5682412.48 96.25 +598547.69 5682343.94 96.25 +598547.74 5680952.13 98.75 +598547.77 5687227.47 95.00 +598547.94 5679707.53 98.75 +598548.06 5680590.11 100.00 +598548.12 5682381.63 96.25 +598548.15 5679028.62 98.75 +598548.38 5681061.55 98.75 +598548.63 5681749.40 96.25 +598548.68 5678118.59 98.75 +598548.82 5681691.34 96.25 +598548.87 5680372.16 98.75 +598549.00 5687217.56 95.00 +598549.16 5687266.30 95.00 +598549.18 5679228.21 98.75 +598549.25 5682693.81 96.25 +598549.68 5680620.63 98.75 +598549.86 5682290.23 96.25 +598549.91 5682848.32 97.50 +598550.03 5687207.63 95.00 +598550.07 5682544.59 96.25 +598550.10 5687197.64 95.00 +598550.16 5687187.65 95.00 +598550.23 5687177.66 95.00 +598550.37 5681278.34 96.25 +598550.45 5681293.34 96.25 +598550.66 5687167.69 95.00 +598551.17 5686096.86 95.00 +598551.36 5687157.72 95.00 +598551.41 5677378.45 101.25 +598551.51 5685826.81 95.00 +598551.64 5678275.76 98.75 +598552.03 5685983.95 95.00 +598552.06 5687147.75 95.00 +598552.18 5681066.76 97.50 +598552.69 5681079.91 96.25 +598552.76 5687137.79 95.00 +598552.88 5683206.56 96.25 +598553.09 5678072.40 98.75 +598553.30 5678961.40 98.75 +598553.42 5687275.33 95.00 +598553.62 5680531.40 100.00 +598554.16 5682629.62 96.25 +598554.38 5678549.63 98.75 +598554.80 5681729.53 96.75 +598554.83 5681710.61 96.25 +598555.00 5683089.80 97.50 +598555.17 5687128.12 95.00 +598555.36 5679236.06 98.75 +598555.39 5681054.48 98.75 +598555.52 5677455.71 100.00 +598555.69 5679713.84 98.75 +598555.71 5679022.09 98.75 +598555.80 5681756.20 96.25 +598555.88 5680946.41 98.75 +598555.94 5681088.18 96.25 +598555.96 5678112.38 98.75 +598555.96 5681797.62 96.25 +598555.97 5679344.74 98.75 +598556.63 5681697.34 96.25 +598556.77 5686088.60 95.00 +598556.85 5681300.98 96.25 +598556.96 5681070.94 96.25 +598557.11 5682412.08 96.25 +598557.35 5682345.36 96.25 +598557.40 5682385.10 96.25 +598557.43 5678102.78 98.75 +598557.68 5687284.37 95.00 +598557.70 5677370.70 101.25 +598557.83 5680589.87 100.00 +598557.87 5682688.90 96.25 +598557.88 5687118.50 95.00 +598558.34 5682853.68 97.50 +598558.45 5680369.90 98.75 +598558.64 5682286.00 96.25 +598558.74 5678268.74 98.75 +598558.97 5681059.46 97.50 +598559.08 5681233.32 96.25 +598559.39 5680618.39 98.75 +598559.44 5681242.75 96.25 +598559.53 5682543.27 96.25 +598559.89 5683199.58 96.25 +598560.25 5681279.18 96.25 +598560.58 5687108.89 95.00 +598560.65 5685978.89 95.00 +598560.75 5687293.86 95.00 +598561.16 5685824.45 95.00 +598561.27 5682622.73 96.25 +598561.64 5680565.98 101.00 +598561.70 5678966.80 98.75 +598561.96 5681047.23 98.75 +598561.97 5680536.48 100.00 +598562.02 5681062.53 96.25 +598562.09 5679243.29 98.75 +598562.66 5681763.32 96.25 +598562.76 5678072.57 98.75 +598562.81 5678095.21 98.75 +598562.95 5686080.75 95.00 +598563.04 5680939.52 98.75 +598563.07 5679015.33 98.75 +598563.29 5687099.27 95.00 +598563.44 5679720.16 98.75 +598563.51 5681308.39 96.25 +598563.56 5677449.79 100.00 +598563.61 5687303.43 95.00 +598563.96 5681400.66 96.25 +598563.99 5677362.95 101.25 +598564.03 5681803.30 96.25 +598564.07 5681093.86 96.25 +598564.19 5681051.13 97.50 +598564.31 5678550.85 98.75 +598564.45 5683191.24 96.25 +598564.56 5682406.78 96.25 +598564.59 5681712.15 96.25 +598564.91 5683088.72 97.50 +598564.95 5687089.46 95.00 +598565.05 5682474.35 96.50 +598565.13 5687313.27 95.00 +598565.66 5681701.32 96.25 +598565.79 5681053.81 96.25 +598565.84 5687079.51 95.00 +598565.96 5682389.96 96.25 +598565.96 5679344.42 98.75 +598566.18 5687323.21 95.00 +598566.62 5687333.19 95.00 +598566.73 5687069.56 95.00 +598566.80 5682859.01 97.50 +598566.86 5678262.95 98.75 +598566.91 5683181.68 96.25 +598566.96 5682281.11 96.25 +598566.98 5687343.17 95.00 +598567.06 5682345.19 96.25 +598567.35 5687353.15 95.00 +598567.42 5682686.33 96.25 +598567.47 5681244.35 96.25 +598567.47 5681228.54 96.25 +598567.58 5680589.53 100.00 +598567.69 5687059.63 95.00 +598567.71 5687363.14 95.00 +598567.93 5681407.75 96.25 +598567.94 5682615.73 96.25 +598568.08 5687373.12 95.00 +598568.09 5680369.55 98.75 +598568.26 5681235.59 96.00 +598568.36 5681039.83 98.75 +598568.56 5682539.14 96.25 +598568.59 5685972.89 95.00 +598568.96 5682398.42 96.25 +598569.04 5678087.73 98.75 +598569.13 5680616.28 98.75 +598569.15 5681042.78 97.50 +598569.40 5678972.98 98.75 +598569.42 5679007.76 98.75 +598569.56 5681276.82 96.25 +598569.72 5681770.22 96.25 +598569.75 5679727.86 98.75 +598569.95 5687382.93 95.00 +598570.01 5680542.09 100.00 +598570.08 5680932.48 98.75 +598570.25 5686074.03 95.00 +598570.34 5678078.68 98.75 +598570.59 5681810.65 96.25 +598570.62 5686750.80 95.00 +598570.64 5679248.46 98.75 +598570.91 5685822.52 95.00 +598570.99 5687050.20 95.00 +598571.08 5677355.93 101.25 +598571.12 5681045.87 96.25 +598571.23 5681313.87 96.25 +598571.35 5683172.84 96.25 +598571.44 5677443.66 100.00 +598571.50 5678485.12 98.75 +598571.64 5678508.61 98.75 +598571.87 5681395.32 96.25 +598571.93 5683081.76 97.50 +598571.94 5678492.96 98.75 +598571.94 5687392.72 95.00 +598572.18 5681134.05 96.25 +598572.28 5678500.79 98.75 +598572.57 5681099.00 96.25 +598573.02 5678555.58 98.75 +598573.27 5681742.34 96.25 +598573.58 5683004.09 97.50 +598573.66 5681751.77 96.25 +598573.89 5683014.05 97.50 +598574.00 5682274.38 96.25 +598574.17 5687402.45 95.00 +598574.17 5681714.56 96.25 +598574.18 5681142.90 96.25 +598574.24 5681819.95 96.25 +598574.29 5687040.77 95.00 +598574.40 5682994.17 97.50 +598574.50 5682865.08 97.50 +598574.54 5678999.18 98.75 +598574.58 5686757.95 95.00 +598574.66 5681032.35 98.75 +598575.02 5678257.22 98.75 +598575.07 5678517.79 98.75 +598575.08 5683023.97 97.50 +598575.28 5682531.91 96.25 +598575.36 5681703.68 96.25 +598575.49 5686742.28 95.00 +598575.55 5678980.86 98.75 +598575.59 5681238.75 96.25 +598575.78 5683164.00 96.25 +598575.79 5679735.83 98.75 +598575.81 5681124.77 96.25 +598575.84 5681732.84 96.25 +598575.95 5679344.09 98.75 +598576.01 5681035.71 97.50 +598576.04 5681269.66 96.25 +598576.11 5685966.31 95.00 +598576.56 5682342.90 96.25 +598576.63 5681038.06 96.25 +598576.64 5680374.68 98.75 +598576.64 5687031.07 95.00 +598576.65 5678476.78 98.75 +598576.73 5683073.05 97.50 +598576.99 5680586.76 100.00 +598577.01 5683033.75 97.50 +598577.05 5687412.01 95.00 +598577.05 5682683.94 96.25 +598577.12 5680925.44 98.75 +598577.24 5681227.27 96.25 +598577.26 5681411.22 96.25 +598577.34 5682984.62 97.50 +598577.34 5681776.28 96.25 +598577.47 5682612.98 96.25 +598577.74 5678990.04 98.75 +598577.82 5681829.28 96.25 +598577.89 5681723.26 96.25 +598577.97 5680547.80 100.00 +598578.20 5686067.97 95.00 +598578.34 5677349.08 101.25 +598578.65 5687021.29 95.00 +598578.69 5683063.28 97.50 +598578.90 5681760.15 96.25 +598579.02 5681186.33 96.25 +598579.05 5677437.19 100.00 +598579.07 5680615.46 98.75 +598579.19 5679253.64 98.75 +598579.32 5681105.97 96.25 +598579.59 5683053.36 97.50 +598579.62 5683043.39 97.50 +598579.73 5681115.62 96.25 +598579.79 5682873.56 97.50 +598579.84 5685818.76 95.00 +598579.93 5687421.58 95.00 +598580.40 5683155.26 96.25 +598580.45 5682523.54 96.25 +598580.66 5687011.50 95.00 +598580.68 5681313.14 96.25 +598580.88 5681150.19 96.25 +598581.05 5681769.75 96.25 +598581.17 5681261.12 96.25 +598581.33 5681838.64 96.25 +598581.49 5678525.10 98.75 +598581.63 5682268.32 96.25 +598581.66 5681393.65 96.25 +598581.67 5681025.57 98.75 +598581.67 5682975.76 97.50 +598581.75 5678560.44 98.75 +598581.80 5678468.44 98.75 +598582.11 5679743.55 98.75 +598582.18 5681231.64 96.25 +598582.54 5681028.33 97.50 +598582.67 5687001.72 95.00 +598582.86 5681177.14 96.25 +598582.92 5681030.93 96.25 +598583.19 5678251.49 98.75 +598583.63 5685959.73 95.00 +598583.64 5682882.77 97.50 +598583.69 5686991.79 95.00 +598583.71 5687430.75 95.00 +598583.74 5686736.67 95.00 +598583.75 5682676.62 96.25 +598583.85 5686760.71 95.00 +598583.98 5680918.24 98.75 +598584.03 5680381.30 98.75 +598584.40 5686981.83 95.00 +598584.74 5682514.58 96.25 +598584.82 5681706.92 96.25 +598585.04 5681191.97 96.25 +598585.28 5683146.65 96.25 +598585.43 5686061.09 95.00 +598585.71 5686971.96 95.00 +598585.71 5681740.86 96.25 +598585.78 5677342.42 101.25 +598585.93 5679343.78 98.75 +598585.93 5680553.51 100.00 +598586.05 5681305.18 96.25 +598586.13 5681847.38 96.25 +598586.15 5682341.10 96.25 +598586.39 5680584.00 100.00 +598586.56 5677430.61 100.00 +598586.59 5681295.40 96.25 +598586.67 5681158.25 96.25 +598586.80 5682609.65 96.25 +598586.84 5681413.92 96.25 +598587.02 5681168.09 96.25 +598587.10 5681789.84 96.25 +598587.36 5682892.04 97.50 +598587.42 5681798.90 96.25 +598587.49 5682967.64 97.50 +598587.72 5685812.69 95.00 +598587.74 5679258.81 98.75 +598588.08 5681731.19 96.25 +598588.09 5681285.68 96.25 +598588.13 5686962.27 95.00 +598588.26 5678532.19 98.75 +598588.83 5687439.32 95.00 +598588.91 5681255.02 96.25 +598589.01 5680614.65 98.75 +598589.13 5678462.26 98.75 +598589.16 5679750.64 98.75 +598589.17 5681019.31 98.75 +598589.42 5682262.49 96.25 +598590.01 5681021.93 97.50 +598590.04 5682506.55 96.25 +598590.13 5681024.68 96.25 +598590.16 5683138.05 96.25 +598590.45 5682669.31 96.25 +598590.46 5680910.69 98.75 +598590.49 5678565.29 98.75 +598590.60 5682901.48 97.50 +598590.64 5685952.62 95.00 +598590.92 5681276.13 96.25 +598591.08 5680388.35 98.75 +598591.29 5686952.83 95.00 +598591.35 5678245.75 98.75 +598591.49 5681394.87 96.25 +598591.65 5681185.27 96.25 +598591.70 5686053.36 95.00 +598591.77 5681747.41 96.25 +598592.02 5681855.42 96.25 +598592.08 5677334.73 101.25 +598592.36 5681722.16 96.25 +598592.38 5682958.96 97.50 +598592.45 5681807.53 96.25 +598592.64 5682293.27 96.25 +598592.95 5680576.79 100.00 +598593.00 5677422.97 100.00 +598593.01 5686732.94 95.00 +598593.01 5681712.42 96.25 +598593.14 5686764.37 95.00 +598593.44 5682911.06 97.50 +598593.54 5680559.64 100.00 +598593.96 5687447.90 95.00 +598594.16 5682603.30 96.25 +598595.16 5683129.52 96.25 +598595.29 5686943.67 95.00 +598595.47 5685806.49 95.00 +598595.76 5682339.36 96.25 +598595.81 5679342.94 98.75 +598595.95 5682920.73 97.50 +598596.22 5679757.73 98.75 +598596.23 5682285.20 96.25 +598596.24 5680567.90 100.00 +598596.32 5680396.82 98.75 +598596.41 5679263.77 98.75 +598596.46 5681416.48 96.25 +598596.51 5681792.32 96.25 +598596.76 5682949.98 97.50 +598596.95 5680903.14 98.75 +598597.07 5681268.41 96.25 +598597.20 5678532.44 98.75 +598597.24 5681816.30 96.25 +598597.36 5686045.12 95.00 +598597.41 5678457.01 98.75 +598597.48 5685945.33 95.00 +598597.80 5681014.71 98.75 +598597.99 5681187.89 96.25 +598597.99 5677326.69 101.25 +598598.01 5682257.89 96.25 +598598.14 5681019.45 96.25 +598598.22 5681251.58 96.25 +598598.24 5681863.23 96.25 +598598.27 5682930.45 97.50 +598598.51 5682501.37 96.25 +598598.53 5687456.78 95.00 +598598.60 5681017.36 97.50 +598598.66 5682940.29 97.50 +598598.66 5681197.35 96.25 +598598.94 5682664.47 96.25 +598598.95 5680613.84 98.75 +598599.19 5678570.21 98.75 +598599.30 5686934.52 95.00 +598599.51 5678240.01 98.75 +598599.60 5678496.67 99.00 +598599.74 5682297.52 96.25 +598599.77 5682441.99 96.25 +598599.95 5681743.66 96.25 +598600.03 5681951.11 96.25 +598600.20 5677416.06 100.00 +598600.38 5681961.02 96.25 +598600.52 5682595.69 96.25 +598600.72 5683121.34 96.25 +598600.74 5682451.76 96.25 +598601.19 5686035.99 95.00 +598601.23 5681396.90 96.25 +598601.26 5686924.73 95.00 +598601.51 5680405.34 98.75 +598601.62 5685798.67 95.00 +598601.69 5681941.25 96.25 +598602.02 5681825.08 96.25 +598602.28 5686729.22 95.00 +598602.36 5686764.40 95.00 +598602.47 5681872.28 96.25 +598603.02 5686914.90 95.00 +598603.09 5687465.67 95.00 +598603.27 5679764.81 98.75 +598603.33 5681931.39 96.25 +598603.44 5680895.59 98.75 +598603.63 5681799.34 96.25 +598603.90 5677318.64 101.25 +598604.23 5680414.85 98.75 +598604.28 5686904.99 95.00 +598604.30 5686026.49 95.00 +598604.31 5685938.03 95.00 +598604.58 5682280.35 96.25 +598604.78 5681921.50 96.25 +598605.08 5679268.74 98.75 +598605.20 5679339.52 98.75 +598605.24 5682337.01 96.25 +598605.31 5681881.81 96.25 +598605.54 5686895.08 95.00 +598605.64 5681264.53 96.25 +598605.73 5682460.04 96.25 +598605.97 5678452.24 98.75 +598605.97 5678232.41 98.75 +598606.08 5681419.02 96.25 +598606.12 5681834.19 96.25 +598606.23 5681911.62 96.25 +598606.27 5683113.15 96.25 +598606.39 5680424.58 98.75 +598606.51 5678529.91 98.75 +598606.53 5681901.63 96.25 +598606.70 5681891.64 96.25 +598606.82 5682435.01 96.25 +598606.83 5682253.89 96.25 +598606.91 5686885.18 95.00 +598607.26 5681016.77 96.25 +598607.39 5681012.76 98.75 +598607.50 5681196.06 96.25 +598607.52 5681737.14 96.25 +598607.65 5687474.56 95.00 +598607.76 5685790.85 95.00 +598607.78 5678575.33 98.75 +598607.98 5681014.36 97.50 +598607.98 5681250.65 96.25 +598608.11 5682501.78 96.25 +598608.44 5686875.31 95.00 +598608.59 5686017.47 95.00 +598608.64 5677410.92 100.00 +598608.65 5682663.10 96.25 +598608.67 5680434.29 98.75 +598608.69 5680612.38 98.75 +598609.10 5682590.91 96.25 +598609.25 5681964.43 96.25 +598609.40 5682297.71 96.25 +598609.71 5678693.49 98.75 +598610.02 5686865.45 95.00 +598610.16 5681117.70 96.25 +598610.23 5681843.30 96.25 +598610.35 5679771.87 98.75 +598610.45 5686758.61 95.00 +598610.78 5681806.32 96.25 +598610.86 5685930.49 95.00 +598610.93 5681399.16 96.25 +598611.04 5680443.98 98.75 +598611.47 5677312.50 101.25 +598611.58 5678683.83 98.75 +598611.58 5686725.59 95.00 +598611.96 5681127.50 96.25 +598611.98 5686855.65 95.00 +598611.99 5683105.09 96.25 +598612.01 5680890.58 98.75 +598612.43 5678224.81 98.75 +598612.45 5678887.83 98.75 +598612.50 5678897.55 98.75 +598612.62 5682275.00 96.25 +598612.87 5686008.44 95.00 +598612.94 5678702.93 98.75 +598613.04 5679274.70 98.75 +598613.40 5687482.68 95.00 +598613.40 5680453.67 98.75 +598613.75 5682427.90 96.25 +598613.88 5685783.01 95.00 +598613.89 5681852.58 96.25 +598613.94 5686845.86 95.00 +598614.02 5682332.85 96.25 +598614.03 5678523.62 98.75 +598614.14 5678674.17 98.75 +598614.33 5681188.83 96.25 +598614.53 5678447.48 98.75 +598614.59 5679336.11 98.75 +598614.82 5678907.27 98.75 +598614.84 5678878.13 98.75 +598615.28 5682462.75 96.25 +598615.29 5678581.84 98.75 +598615.30 5681730.88 96.25 +598615.31 5681264.78 96.25 +598615.73 5681421.48 96.25 +598615.82 5686836.05 95.00 +598615.90 5683161.57 95.00 +598615.96 5680463.30 98.75 +598616.30 5682251.58 96.25 +598616.66 5681015.05 96.25 +598616.67 5686826.10 95.00 +598616.77 5681862.15 96.25 +598617.04 5681011.68 98.75 +598617.14 5681135.28 96.25 +598617.20 5681110.71 96.25 +598617.23 5678868.42 98.75 +598617.28 5686751.32 95.00 +598617.31 5685922.86 95.00 +598617.39 5682382.31 96.25 +598617.43 5682391.44 96.25 +598617.48 5680607.68 98.75 +598617.57 5679778.79 98.75 +598617.57 5686816.15 95.00 +598617.63 5678664.80 98.75 +598617.64 5681252.77 96.25 +598617.66 5683152.10 95.00 +598617.69 5682666.37 96.25 +598617.70 5681959.51 96.25 +598617.77 5683097.06 96.25 +598617.80 5681013.63 97.50 +598617.90 5682586.34 96.25 +598617.92 5682503.29 96.25 +598618.07 5681813.15 96.25 +598618.13 5678216.62 98.75 +598618.26 5677409.15 100.00 +598618.41 5678916.04 98.75 +598618.60 5678711.18 98.75 +598618.70 5686806.22 95.00 +598618.77 5681871.89 96.25 +598618.79 5686000.57 95.00 +598619.00 5683170.89 95.00 +598619.06 5682297.90 96.25 +598619.16 5680472.74 98.75 +598619.57 5687490.54 95.00 +598619.60 5681881.85 96.25 +598619.77 5685774.99 95.00 +598619.96 5682401.03 96.25 +598619.96 5686796.31 95.00 +598619.98 5678858.83 98.75 +598620.22 5677307.69 101.25 +598620.43 5681891.81 96.25 +598620.47 5682420.59 96.25 +598620.48 5683142.64 95.00 +598620.56 5681401.69 96.25 +598620.59 5679281.25 98.75 +598620.69 5680885.71 98.75 +598620.90 5686721.98 95.00 +598621.01 5681901.78 96.25 +598621.05 5681911.77 96.25 +598621.10 5681921.77 96.25 +598621.45 5678655.57 98.75 +598621.51 5682410.76 96.25 +598621.55 5678517.34 98.75 +598621.69 5686786.47 95.00 +598621.97 5682273.39 96.25 +598622.31 5681931.68 96.25 +598622.36 5678588.91 98.75 +598622.37 5680482.18 98.75 +598622.82 5681183.62 96.25 +598622.94 5679330.93 98.75 +598622.94 5682286.65 96.50 +598623.10 5678442.72 98.75 +598623.11 5683133.12 95.00 +598623.33 5681941.61 96.25 +598623.41 5685765.90 95.00 +598623.43 5685914.98 95.00 +598623.48 5681951.60 96.25 +598623.61 5682374.85 96.25 +598623.63 5681725.36 96.25 +598623.73 5681269.62 96.25 +598623.82 5686776.74 95.00 +598624.01 5678849.68 98.75 +598624.23 5683179.26 95.00 +598624.26 5678208.98 98.75 +598624.34 5683123.38 95.00 +598624.38 5678719.33 98.75 +598624.54 5682673.55 96.25 +598624.78 5679785.71 98.75 +598624.81 5683113.52 95.00 +598625.02 5683090.35 96.25 +598625.15 5682463.35 96.25 +598625.17 5681141.11 96.25 +598625.36 5681423.98 96.25 +598625.57 5680491.62 98.75 +598625.69 5678646.52 98.75 +598625.82 5682252.29 96.25 +598625.84 5687498.31 95.00 +598625.89 5685993.53 95.00 +598625.92 5681112.31 96.25 +598625.92 5685756.28 95.00 +598626.14 5686748.62 95.00 +598626.15 5681015.01 96.25 +598626.27 5680602.97 98.75 +598626.62 5682581.61 96.25 +598626.72 5682621.31 96.00 +598626.81 5681012.15 98.75 +598627.11 5681817.28 96.25 +598627.11 5678920.96 98.75 +598627.16 5678509.32 98.75 +598627.19 5686767.34 95.00 +598627.21 5678597.61 98.75 +598627.22 5682506.69 96.25 +598627.38 5681253.30 96.25 +598627.44 5682302.59 96.25 +598627.60 5681013.72 97.50 +598627.87 5682682.49 96.25 +598628.09 5678840.56 98.75 +598628.13 5679287.80 98.75 +598628.17 5683104.29 95.00 +598628.25 5677408.99 100.00 +598628.78 5680501.07 98.75 +598628.82 5686757.49 95.00 +598628.92 5678637.23 98.75 +598628.99 5685906.67 95.00 +598629.09 5678607.25 98.75 +598629.11 5683138.24 94.75 +598629.14 5678627.23 98.75 +598629.21 5685746.96 95.00 +598629.37 5678617.24 98.75 +598629.52 5683128.50 94.75 +598629.55 5682692.27 96.25 +598629.76 5680882.00 98.75 +598629.87 5677305.54 101.25 +598630.16 5681718.46 96.25 +598630.18 5681404.23 96.25 +598630.19 5686718.31 95.00 +598630.33 5680510.78 98.75 +598630.33 5680520.75 98.75 +598630.45 5679324.35 98.75 +598630.55 5678727.19 98.75 +598630.71 5682277.22 96.25 +598630.75 5681276.68 96.25 +598630.99 5681120.89 96.25 +598631.01 5683185.79 95.00 +598631.38 5681416.57 95.85 +598631.57 5681178.85 96.25 +598631.68 5683118.89 94.75 +598631.72 5679792.89 98.75 +598631.88 5679296.95 98.75 +598632.22 5681699.01 96.25 +598632.22 5680530.42 98.75 +598632.24 5678831.46 98.75 +598632.33 5683083.68 96.25 +598632.45 5678440.16 98.75 +598632.57 5682371.39 96.25 +598632.71 5678501.24 98.75 +598632.75 5687505.53 95.00 +598632.96 5681708.94 96.25 +598633.38 5685986.97 95.00 +598633.46 5682701.36 96.25 +598633.50 5678205.21 98.75 +598633.95 5685738.21 95.00 +598633.96 5681145.80 96.25 +598634.15 5681689.20 96.25 +598634.16 5683146.43 94.75 +598634.29 5683109.39 94.75 +598634.69 5685898.50 95.00 +598634.75 5681018.52 96.25 +598634.84 5681427.03 96.25 +598634.98 5679315.89 98.75 +598635.07 5682463.73 96.25 +598635.23 5682308.27 96.25 +598635.27 5683097.73 95.00 +598635.27 5681248.53 96.25 +598635.29 5679306.35 98.75 +598635.34 5682576.89 96.25 +598635.37 5682254.24 96.25 +598635.46 5680599.16 98.75 +598635.80 5680539.55 98.75 +598635.82 5678925.87 98.75 +598636.00 5678492.07 98.75 +598636.01 5681015.01 98.75 +598636.31 5686710.97 95.00 +598636.48 5681820.73 96.25 +598636.63 5681017.16 97.50 +598636.76 5678822.54 98.75 +598636.78 5682506.61 96.25 +598637.17 5678734.69 98.75 +598637.28 5677413.26 100.00 +598637.41 5682284.12 96.25 +598638.02 5679800.64 98.75 +598638.05 5683100.52 94.75 +598638.18 5681283.32 96.25 +598638.46 5686672.05 95.00 +598638.57 5682709.76 96.25 +598638.68 5685729.47 95.00 +598638.78 5686682.03 95.00 +598638.87 5678482.70 98.75 +598638.99 5681239.55 96.25 +598639.01 5681172.35 96.25 +598639.22 5686692.01 95.00 +598639.62 5680880.62 98.75 +598639.68 5686662.14 95.00 +598639.73 5681407.04 96.25 +598639.78 5681681.34 96.25 +598639.79 5681125.52 96.25 +598639.81 5677305.80 101.25 +598639.86 5686701.98 95.00 +598640.13 5683187.13 95.00 +598640.29 5687511.95 95.00 +598640.35 5681153.12 96.25 +598640.42 5683078.60 96.25 +598640.48 5686533.75 95.00 +598640.52 5686524.05 95.00 +598640.90 5686652.22 95.00 +598641.20 5681163.00 96.25 +598641.56 5685981.22 95.00 +598641.80 5678439.48 98.75 +598641.83 5681230.04 96.25 +598642.16 5678814.19 98.75 +598642.37 5682371.21 96.25 +598642.41 5682292.30 96.25 +598642.61 5681023.96 96.25 +598642.66 5685892.46 95.00 +598642.70 5678473.73 98.75 +598642.71 5686474.79 95.00 +598642.77 5681698.12 96.25 +598642.92 5686642.45 95.00 +598643.13 5686465.05 95.00 +598643.17 5686514.45 95.00 +598643.18 5683091.83 95.00 +598643.27 5682570.96 96.25 +598643.33 5681688.14 96.25 +598643.39 5678205.09 98.75 +598643.40 5686504.46 95.00 +598643.46 5686543.10 95.00 +598643.54 5683146.51 94.75 +598643.81 5678742.16 98.75 +598643.81 5681020.47 98.75 +598643.83 5682309.51 96.25 +598644.07 5681023.51 97.50 +598644.12 5686494.50 95.00 +598644.15 5680545.00 98.75 +598644.32 5681430.08 96.25 +598644.33 5682257.87 96.25 +598644.37 5677763.99 100.00 +598644.42 5681260.34 96.25 +598644.64 5679808.09 98.75 +598644.66 5686484.59 95.00 +598644.69 5678930.45 98.75 +598644.74 5681268.99 96.25 +598644.74 5681086.90 96.25 +598644.85 5682717.44 96.25 +598644.88 5680595.88 98.75 +598644.93 5682464.91 96.25 +598645.01 5681096.37 96.25 +598645.38 5682301.49 96.25 +598645.39 5686632.78 95.00 +598645.40 5683094.05 94.75 +598645.55 5686455.36 95.00 +598645.64 5685722.77 95.00 +598645.78 5677418.38 100.00 +598646.06 5681823.58 96.25 +598646.14 5682503.91 96.25 +598646.34 5677755.24 100.00 +598646.34 5681288.64 96.25 +598646.52 5682275.58 95.00 +598646.65 5681221.52 96.25 +598646.67 5681088.66 97.50 +598646.79 5678464.89 98.75 +598647.16 5681077.71 96.25 +598647.42 5681706.20 96.25 +598647.53 5683181.11 95.00 +598647.68 5681098.39 97.50 +598647.71 5681733.51 96.25 +598647.91 5681031.70 96.25 +598648.31 5681723.73 96.25 +598648.34 5682284.49 95.00 +598648.40 5678806.38 98.75 +598648.40 5681094.26 98.75 +598648.45 5681130.45 96.25 +598648.53 5677772.17 100.00 +598648.71 5678455.28 98.75 +598648.86 5681105.01 96.25 +598648.87 5687517.07 95.00 +598648.92 5678446.21 98.75 +598648.95 5681079.17 97.50 +598649.01 5681084.75 98.75 +598649.16 5677308.96 101.25 +598649.22 5681410.04 96.25 +598649.42 5686623.64 95.00 +598649.48 5680879.28 98.75 +598649.52 5681031.55 97.50 +598649.66 5681028.30 98.75 +598649.74 5685975.48 95.00 +598649.75 5678750.17 98.75 +598650.15 5683076.83 96.25 +598650.21 5686549.87 95.00 +598650.33 5681068.70 96.25 +598650.62 5685886.42 95.00 +598650.66 5681742.99 96.25 +598650.74 5682293.51 95.00 +598650.93 5681276.54 96.25 +598651.08 5682564.83 96.25 +598651.16 5686447.52 95.00 +598651.29 5681040.58 96.25 +598651.35 5682303.04 95.00 +598651.46 5683086.57 95.00 +598651.53 5683141.27 94.75 +598651.57 5682724.22 96.25 +598651.77 5681075.36 98.75 +598651.91 5682263.55 96.25 +598652.00 5682373.62 96.25 +598652.03 5681714.59 96.25 +598652.18 5678797.15 98.75 +598652.19 5681254.21 96.25 +598652.41 5679814.39 98.75 +598652.44 5687290.33 95.00 +598652.47 5681069.97 97.50 +598652.49 5681059.42 96.25 +598652.50 5680550.44 98.75 +598652.65 5681213.95 96.25 +598652.70 5681040.86 97.50 +598653.03 5681049.88 96.25 +598653.18 5682470.11 96.25 +598653.20 5687300.16 95.00 +598653.21 5678206.11 98.75 +598653.32 5682497.05 96.25 +598653.40 5681102.51 98.75 +598653.53 5681106.18 97.50 +598653.54 5686614.54 95.00 +598653.54 5677424.67 100.00 +598653.58 5683173.35 95.00 +598653.60 5681037.11 98.75 +598653.91 5678934.32 98.75 +598653.97 5685717.34 95.00 +598654.06 5681752.39 96.25 +598654.08 5681431.44 96.25 +598654.16 5681050.52 97.50 +598654.16 5681060.36 97.50 +598654.32 5680592.69 98.75 +598654.55 5683090.71 94.75 +598654.55 5678758.84 98.75 +598654.83 5687310.02 95.00 +598654.88 5681066.09 98.75 +598654.95 5681828.07 96.25 +598655.06 5677750.95 100.00 +598655.31 5681046.72 98.75 +598655.65 5681111.67 96.25 +598655.72 5682274.83 95.00 +598655.81 5681056.49 98.75 +598655.85 5678787.85 98.75 +598655.87 5681291.54 96.25 +598656.37 5677778.23 100.00 +598656.49 5681204.77 96.25 +598656.52 5687281.31 95.00 +598656.62 5687319.84 95.00 +598656.88 5683133.03 94.75 +598656.94 5682487.86 96.25 +598656.95 5681761.96 96.25 +598657.09 5682271.79 96.25 +598657.11 5687522.66 95.00 +598657.21 5678768.48 98.75 +598657.21 5681135.17 96.25 +598657.44 5685969.14 95.00 +598657.46 5682309.70 95.00 +598657.54 5682478.34 96.25 +598658.02 5686605.61 95.00 +598658.26 5682652.86 96.25 +598658.27 5678778.21 98.75 +598658.31 5677312.96 101.25 +598658.58 5685880.38 95.00 +598658.83 5681412.25 96.25 +598658.99 5681246.93 96.25 +598659.08 5682558.98 96.25 +598659.31 5681281.93 96.25 +598659.37 5686442.13 95.00 +598659.43 5680879.28 98.75 +598659.55 5677432.59 100.00 +598659.61 5682720.74 96.25 +598659.77 5687329.16 95.00 +598659.79 5682282.89 95.00 +598659.94 5683077.75 96.25 +598660.04 5686551.68 95.00 +598660.14 5682643.54 96.25 +598660.17 5679820.69 98.75 +598660.25 5681771.36 96.25 +598660.71 5683086.38 95.00 +598660.81 5681112.72 97.50 +598660.91 5683166.73 95.00 +598660.97 5682711.13 96.25 +598661.00 5683124.13 94.75 +598661.00 5682280.72 96.25 +598661.11 5681195.94 96.25 +598661.33 5682662.30 96.25 +598661.63 5682376.04 96.25 +598661.71 5681107.24 98.75 +598661.83 5683095.83 94.75 +598661.88 5682701.27 96.25 +598662.25 5680551.93 98.75 +598662.31 5685711.91 95.00 +598662.44 5678209.90 98.75 +598662.50 5686596.68 95.00 +598662.98 5683114.48 94.75 +598663.17 5682291.88 95.00 +598663.21 5681238.08 96.25 +598663.44 5678934.99 98.75 +598663.60 5682671.91 96.25 +598663.63 5682634.25 96.25 +598663.67 5682691.51 96.25 +598663.78 5680589.54 98.75 +598663.90 5681116.40 96.25 +598663.93 5681832.45 96.25 +598663.98 5682289.98 96.25 +598664.03 5681431.66 96.25 +598664.08 5683104.68 94.75 +598664.28 5677441.29 100.00 +598664.32 5687283.18 95.00 +598664.73 5687529.12 95.00 +598664.79 5681780.26 96.25 +598664.80 5685962.38 95.00 +598664.90 5677749.28 100.00 +598664.92 5682681.74 96.25 +598665.09 5682301.28 95.00 +598665.12 5687337.54 95.00 +598665.78 5681292.41 96.25 +598666.08 5677780.55 100.00 +598666.20 5681139.46 96.25 +598666.50 5685874.29 95.00 +598666.54 5681228.68 96.25 +598666.60 5682299.37 96.25 +598666.74 5682310.74 95.00 +598667.30 5681188.22 96.25 +598667.55 5677450.72 100.00 +598667.71 5677316.29 101.25 +598667.91 5682554.58 96.25 +598668.08 5683092.36 95.00 +598668.23 5683160.11 95.00 +598668.53 5686588.80 95.00 +598668.74 5686440.39 95.00 +598668.78 5681412.45 96.25 +598668.88 5680882.34 98.75 +598669.02 5679825.29 98.75 +598669.10 5681283.67 96.25 +598669.11 5682308.79 96.25 +598669.33 5681789.17 96.25 +598669.36 5682626.17 96.25 +598669.73 5683079.13 96.25 +598669.96 5686552.65 95.00 +598670.03 5687537.41 95.00 +598670.29 5681219.45 96.25 +598670.65 5681112.38 97.50 +598670.76 5687290.82 95.00 +598670.94 5682379.48 96.25 +598671.12 5678214.69 98.75 +598671.29 5677459.97 100.00 +598671.46 5685708.07 95.00 +598671.57 5681106.56 98.75 +598671.62 5682318.21 96.25 +598671.70 5680551.05 98.75 +598672.00 5685955.45 95.00 +598672.03 5683101.33 95.00 +598672.13 5681837.69 96.25 +598673.12 5687343.53 95.00 +598673.24 5678933.00 98.75 +598673.35 5681119.45 96.25 +598673.45 5680587.44 98.75 +598673.90 5681430.55 96.25 +598674.04 5681180.88 96.25 +598674.42 5685868.18 95.00 +598674.57 5687546.31 95.00 +598674.89 5677749.28 100.00 +598675.18 5686581.35 95.00 +598675.18 5682618.14 96.25 +598675.41 5683110.60 95.00 +598675.64 5677468.96 100.00 +598675.66 5687299.45 95.00 +598675.72 5681292.60 96.25 +598675.85 5677781.88 100.00 +598675.86 5681141.85 96.25 +598676.07 5681690.01 96.25 +598676.76 5683155.14 95.00 +598676.98 5681795.41 96.25 +598677.10 5682550.84 96.25 +598677.20 5677319.38 101.25 +598677.64 5681213.10 96.25 +598677.76 5686444.13 95.00 +598678.02 5679829.64 98.75 +598678.11 5681845.70 96.25 +598678.33 5680885.43 98.75 +598678.65 5681281.69 96.25 +598678.73 5681412.73 96.25 +598678.74 5682385.59 96.25 +598678.99 5685948.31 95.00 +598679.02 5682324.47 96.25 +598679.03 5678220.75 98.75 +598679.15 5682609.10 96.25 +598679.41 5677764.57 100.25 +598679.42 5681699.16 96.25 +598679.47 5687555.02 95.00 +598679.55 5683078.81 96.25 +598679.93 5686553.34 95.00 +598679.94 5680545.44 98.75 +598680.17 5681110.04 97.50 +598680.43 5677477.72 100.00 +598680.72 5685704.44 95.00 +598680.80 5681103.25 98.75 +598681.13 5681173.89 96.25 +598681.20 5687349.40 95.00 +598681.87 5686573.93 95.00 +598681.94 5687306.99 95.00 +598682.05 5681684.13 96.25 +598682.26 5682365.24 96.25 +598682.33 5685862.08 95.00 +598682.66 5682599.83 96.25 +598683.04 5678931.01 98.75 +598683.09 5681118.96 96.25 +598683.36 5683112.53 95.00 +598683.40 5680586.85 98.75 +598683.75 5681429.12 96.25 +598684.11 5681853.69 96.25 +598684.38 5687563.72 95.00 +598684.47 5681146.58 96.25 +598684.87 5677749.28 100.00 +598685.25 5686450.74 95.00 +598685.28 5681707.25 96.25 +598685.29 5683150.16 95.00 +598685.51 5682392.60 96.25 +598685.53 5677486.31 100.00 +598685.67 5681292.10 96.25 +598685.78 5677780.84 100.00 +598685.86 5678227.95 98.75 +598685.98 5685941.17 95.00 +598686.04 5681165.49 96.25 +598686.22 5682373.61 96.25 +598686.24 5682546.98 96.25 +598686.51 5681797.67 96.25 +598686.87 5677321.59 101.25 +598687.14 5682329.68 96.25 +598687.38 5681212.09 96.25 +598687.39 5679833.12 98.75 +598687.57 5681155.73 96.25 +598687.67 5682591.43 96.25 +598687.92 5680888.10 98.75 +598687.97 5686556.97 95.00 +598688.00 5681278.27 96.25 +598688.11 5682430.98 96.25 +598688.19 5680539.83 98.75 +598688.56 5686566.51 95.00 +598688.63 5682440.50 96.25 +598688.67 5681413.22 96.25 +598688.72 5682421.07 96.25 +598688.81 5683076.00 96.25 +598689.24 5687355.33 95.00 +598689.60 5681107.21 97.50 +598689.62 5685700.02 95.00 +598689.75 5682411.20 96.25 +598689.83 5687313.03 95.00 +598689.86 5687572.07 95.00 +598689.90 5681099.40 98.75 +598689.98 5682401.47 96.25 +598690.11 5685855.82 95.00 +598690.42 5681689.16 96.25 +598690.69 5681861.22 96.25 +598690.77 5681715.59 96.25 +598691.25 5677494.49 100.00 +598691.51 5678236.17 98.75 +598691.89 5683107.99 95.00 +598692.15 5681114.88 96.25 +598692.17 5678927.01 98.75 +598692.20 5685933.35 95.00 +598692.26 5681754.10 96.25 +598692.53 5681744.24 96.25 +598693.32 5686456.61 95.00 +598693.36 5680586.27 98.75 +598693.58 5681427.51 96.25 +598693.85 5683145.24 95.00 +598694.07 5682583.85 96.25 +598694.26 5682379.43 96.25 +598694.54 5681734.45 96.25 +598694.56 5681724.77 96.25 +598694.86 5677749.28 100.00 +598694.90 5682542.24 96.25 +598694.97 5681763.57 96.25 +598695.21 5681186.81 96.25 +598695.48 5687580.33 95.00 +598695.48 5681292.87 96.25 +598695.59 5677778.99 100.00 +598696.27 5682332.84 96.25 +598696.32 5680893.17 98.75 +598696.32 5680534.06 98.75 +598696.40 5681797.29 96.25 +598696.82 5677322.41 101.25 +598696.99 5682444.85 96.25 +598697.01 5681274.01 96.25 +598697.02 5683070.63 96.25 +598697.04 5679834.79 98.75 +598697.05 5681214.07 96.25 +598697.10 5687361.50 95.00 +598697.26 5681868.74 96.25 +598697.26 5685848.84 95.00 +598697.34 5681195.84 96.25 +598697.38 5678244.22 98.75 +598697.53 5681696.13 96.25 +598697.64 5677502.08 100.00 +598698.07 5681102.25 97.50 +598698.25 5685695.17 95.00 +598698.38 5685925.49 95.00 +598698.48 5687318.02 95.00 +598698.59 5681414.05 96.25 +598698.75 5678076.22 98.75 +598698.98 5678066.82 98.75 +598699.11 5681095.81 98.75 +598699.69 5683102.01 95.00 +598700.15 5681108.95 96.25 +598700.33 5681422.64 96.25 +598700.56 5678921.64 98.75 +598700.84 5681771.56 96.25 +598701.16 5681179.13 96.25 +598702.05 5686459.67 95.00 +598702.54 5683140.55 95.00 +598702.71 5678058.06 98.75 +598702.88 5682384.35 96.25 +598702.92 5680583.77 98.75 +598703.05 5682580.16 96.25 +598703.15 5682536.72 96.25 +598703.22 5683062.92 96.25 +598703.33 5681876.67 96.25 +598703.61 5681203.58 96.25 +598703.67 5687585.64 95.00 +598704.00 5681703.71 96.25 +598704.25 5678251.45 98.75 +598704.25 5677774.64 100.00 +598704.26 5680899.17 98.75 +598704.39 5678083.86 98.75 +598704.41 5685841.86 95.00 +598704.44 5680528.26 98.75 +598704.44 5681296.64 96.25 +598704.55 5685917.64 95.00 +598704.84 5677749.15 100.00 +598704.95 5687367.68 95.00 +598705.44 5685688.30 95.00 +598705.57 5681211.80 96.25 +598705.70 5682335.02 96.25 +598705.73 5681794.39 96.25 +598705.93 5677507.66 100.00 +598706.44 5681097.06 97.50 +598706.50 5683094.85 95.00 +598706.51 5681271.20 96.25 +598706.77 5677322.02 101.25 +598706.87 5682444.90 96.25 +598706.89 5687323.41 95.00 +598707.02 5679834.28 98.75 +598707.38 5681779.11 96.25 +598707.90 5681171.78 96.25 +598708.02 5683054.40 96.25 +598708.19 5681103.07 96.25 +598708.40 5681092.44 98.75 +598708.63 5681123.38 96.25 +598708.67 5678915.79 98.75 +598709.04 5681884.87 96.25 +598709.12 5681712.29 96.25 +598709.17 5678050.64 98.75 +598710.49 5681132.33 96.25 +598710.74 5681751.29 96.25 +598710.88 5680578.32 98.75 +598710.95 5686456.02 95.00 +598710.95 5677767.34 100.00 +598711.02 5685910.03 95.00 +598711.13 5678258.68 98.75 +598711.22 5683135.85 95.00 +598711.57 5685834.88 95.00 +598711.59 5681303.57 96.25 +598711.65 5683045.20 96.25 +598711.78 5681114.08 96.25 +598711.87 5681760.84 96.25 +598711.89 5681787.59 96.25 +598712.00 5680905.42 98.75 +598712.03 5681721.67 96.25 +598712.04 5681741.38 96.25 +598712.06 5682532.51 96.25 +598712.15 5687374.42 95.00 +598712.25 5682387.08 96.25 +598712.60 5687590.13 95.00 +598712.64 5685681.43 95.00 +598712.74 5683087.20 95.00 +598712.77 5682579.75 96.25 +598713.48 5678086.49 98.75 +598713.56 5681731.55 96.25 +598713.93 5680525.77 98.75 +598714.14 5681814.70 96.25 +598714.27 5681893.38 96.25 +598714.32 5677513.06 100.00 +598714.39 5681164.22 96.25 +598714.48 5681824.38 96.25 +598714.60 5677750.17 100.00 +598714.79 5681091.83 97.50 +598715.16 5687329.00 95.00 +598715.30 5683036.01 96.25 +598715.30 5682336.39 96.25 +598715.62 5678043.21 98.75 +598716.05 5681105.08 96.25 +598716.12 5679177.11 98.75 +598716.21 5677759.08 100.00 +598716.31 5679186.71 98.75 +598716.36 5679830.91 98.75 +598716.38 5681269.93 96.25 +598716.56 5681087.10 98.75 +598716.63 5677320.72 101.25 +598716.76 5682444.06 96.25 +598716.78 5678909.94 98.75 +598717.31 5687382.98 95.00 +598717.42 5680570.79 98.75 +598717.69 5679167.23 98.75 +598717.91 5685902.79 95.00 +598718.07 5685827.45 95.00 +598718.22 5678265.69 98.75 +598718.28 5686449.37 95.00 +598718.54 5678752.23 98.75 +598718.56 5683129.25 95.00 +598718.60 5681310.65 96.25 +598718.69 5685673.57 95.00 +598718.69 5681767.18 96.25 +598718.97 5683079.54 95.00 +598719.02 5681137.09 96.25 +598719.51 5680911.96 98.75 +598719.58 5679157.48 98.75 +598719.84 5678060.48 98.50 +598720.06 5681832.60 96.25 +598720.52 5678761.67 98.75 +598720.67 5681900.97 96.25 +598720.70 5679195.70 98.75 +598720.80 5681810.34 96.25 +598720.87 5681156.65 96.25 +598720.88 5682391.62 96.25 +598721.37 5682529.11 96.25 +598721.83 5687593.59 95.00 +598722.02 5678035.74 98.75 +598722.12 5685818.31 95.00 +598722.47 5687335.80 95.00 +598722.51 5681760.45 96.25 +598722.52 5682580.20 96.25 +598722.55 5681750.47 96.25 +598722.62 5678743.62 98.75 +598722.68 5683031.88 96.25 +598722.70 5681740.51 96.25 +598722.85 5687391.29 95.00 +598722.86 5677518.25 100.00 +598722.90 5681480.52 96.25 +598723.22 5678085.10 98.75 +598723.57 5681087.48 97.50 +598723.60 5682400.67 96.25 +598723.64 5681730.56 96.25 +598723.76 5680524.06 98.75 +598724.04 5680563.35 98.75 +598724.18 5681080.80 98.75 +598724.44 5685665.46 95.00 +598724.57 5681720.61 96.25 +598724.80 5685895.55 95.00 +598724.88 5679149.00 98.75 +598724.99 5682336.31 96.25 +598725.01 5679825.96 98.75 +598725.28 5683071.95 95.00 +598725.32 5678272.70 98.75 +598725.48 5681472.19 96.25 +598725.51 5681710.66 96.25 +598725.75 5681840.81 96.25 +598725.85 5683122.60 95.00 +598725.96 5681317.27 96.25 +598726.26 5677318.11 101.25 +598726.30 5681269.03 96.25 +598726.36 5681700.70 96.25 +598726.58 5678908.26 98.75 +598726.67 5682444.67 96.25 +598726.95 5682409.99 96.25 +598727.01 5680918.50 98.75 +598727.03 5683078.08 94.75 +598727.05 5679202.27 98.75 +598727.19 5681690.74 96.25 +598727.26 5686444.99 95.00 +598727.28 5678768.57 98.75 +598727.31 5685809.82 95.00 +598727.76 5687399.98 95.00 +598728.44 5681135.88 96.25 +598729.12 5678029.15 98.75 +598729.17 5681905.22 96.25 +598729.18 5686401.01 95.00 +598729.35 5681681.15 96.25 +598729.45 5678736.34 98.75 +598729.52 5683086.84 94.75 +598729.76 5685657.14 95.00 +598729.78 5687342.61 95.00 +598730.06 5681152.79 96.25 +598730.13 5681813.91 96.25 +598730.18 5679140.53 98.75 +598730.32 5681485.54 96.25 +598730.63 5683070.40 94.75 +598730.94 5682526.67 96.25 +598731.08 5681849.21 96.25 +598731.08 5683114.23 95.00 +598731.18 5678079.70 98.75 +598731.27 5682575.52 96.25 +598731.37 5686409.75 95.00 +598731.70 5680556.96 98.75 +598731.77 5687594.61 95.00 +598731.82 5683064.57 95.00 +598732.31 5677521.16 100.00 +598732.42 5678279.72 98.75 +598732.46 5685647.56 95.00 +598732.54 5683031.12 96.25 +598732.88 5681084.43 97.50 +598732.91 5682417.48 96.25 +598733.04 5685801.63 95.00 +598733.05 5681076.57 98.75 +598733.19 5685890.29 95.00 +598733.30 5680526.74 98.75 +598733.40 5679820.53 98.75 +598733.51 5681858.91 96.25 +598733.62 5687407.71 95.00 +598734.32 5681322.70 96.25 +598734.53 5680778.68 97.50 +598734.66 5682336.45 96.25 +598734.71 5681470.72 96.25 +598734.77 5681672.96 96.25 +598734.92 5680924.43 98.75 +598734.93 5681868.76 96.25 +598735.02 5686393.37 95.00 +598735.15 5685637.99 95.00 +598735.18 5681265.59 96.25 +598735.20 5681898.55 96.25 +598735.22 5682449.64 96.25 +598735.33 5677314.04 101.25 +598735.37 5679131.98 98.75 +598735.43 5678774.34 98.75 +598735.67 5681878.73 96.25 +598736.08 5681888.71 96.25 +598736.25 5686440.62 95.00 +598736.37 5678906.27 98.75 +598736.74 5678071.87 98.75 +598736.74 5679204.73 98.75 +598737.03 5678730.09 98.75 +598737.40 5683106.82 95.00 +598737.79 5681132.45 96.25 +598737.79 5685628.36 95.00 +598737.82 5687348.54 95.00 +598737.88 5681778.85 96.25 +598737.92 5686417.30 95.00 +598738.36 5678028.71 98.75 +598738.49 5681479.49 96.00 +598738.59 5683086.35 94.75 +598738.60 5681769.19 96.25 +598738.62 5679812.11 98.75 +598738.95 5683066.50 94.75 +598739.23 5685793.79 95.00 +598739.25 5681148.93 96.25 +598739.36 5680550.58 98.75 +598739.44 5682570.17 96.25 +598739.62 5681487.61 96.25 +598739.94 5681813.87 96.25 +598740.46 5679123.38 98.75 +598740.56 5685618.77 95.00 +598740.60 5678285.41 98.75 +598740.63 5683060.11 95.00 +598740.74 5682525.07 96.25 +598740.85 5678062.93 98.75 +598741.02 5680532.88 98.75 +598741.44 5682422.43 96.25 +598741.67 5681705.61 96.25 +598741.71 5687595.63 95.00 +598741.97 5681285.15 96.25 +598741.99 5687413.16 95.00 +598742.01 5683033.72 96.25 +598742.03 5685885.62 95.00 +598742.08 5677523.22 100.00 +598742.16 5681072.76 98.75 +598742.28 5681696.68 96.25 +598742.43 5681666.54 96.25 +598742.62 5680542.13 98.75 +598742.65 5681786.63 96.25 +598742.66 5681083.67 97.50 +598742.67 5681760.23 96.25 +598742.83 5680930.36 98.75 +598742.86 5681259.24 96.25 +598743.18 5686425.73 95.00 +598743.52 5679803.40 98.75 +598743.62 5678053.62 98.75 +598743.86 5679055.88 98.75 +598743.93 5679045.88 98.75 +598743.95 5681325.16 96.25 +598743.95 5686389.13 95.00 +598743.99 5679035.89 98.75 +598744.03 5682453.14 96.25 +598744.05 5679025.89 98.75 +598744.12 5686435.44 95.00 +598744.14 5682338.43 96.25 +598744.18 5677309.42 101.25 +598744.26 5681470.76 96.25 +598744.45 5680778.68 97.50 +598744.48 5678778.48 98.75 +598744.69 5678043.84 98.75 +598745.07 5683100.60 95.00 +598745.13 5681294.06 96.25 +598745.49 5682562.31 96.25 +598745.50 5679065.71 98.75 +598745.52 5685610.10 95.00 +598745.55 5679114.77 98.75 +598745.56 5685786.06 95.00 +598745.75 5678034.05 98.75 +598746.09 5678903.92 98.75 +598746.13 5678725.97 98.75 +598746.43 5679207.20 98.75 +598746.57 5679016.44 98.75 +598746.68 5687352.84 95.00 +598746.98 5681128.64 96.25 +598747.28 5683083.33 94.75 +598747.48 5683063.02 94.75 +598747.56 5679075.49 98.75 +598747.56 5681277.32 96.25 +598747.57 5679105.14 98.75 +598747.89 5679794.41 98.75 +598747.89 5681688.47 96.25 +598748.36 5681809.21 96.25 +598748.66 5679095.20 98.75 +598748.80 5681486.41 96.25 +598748.86 5678291.01 98.75 +598748.90 5681659.00 96.25 +598748.95 5681146.79 96.25 +598749.11 5681251.49 96.25 +598749.24 5681752.73 96.25 +598749.62 5679085.27 98.75 +598750.01 5681966.83 96.25 +598750.05 5683057.49 95.00 +598750.50 5682426.49 96.25 +598750.61 5682524.72 96.25 +598750.86 5685880.95 95.00 +598750.98 5681957.14 96.25 +598750.98 5680935.94 98.75 +598751.03 5679007.53 98.75 +598751.24 5679785.03 98.75 +598751.35 5683036.91 96.25 +598751.60 5681706.33 96.25 +598751.63 5687596.76 95.00 +598751.63 5687415.43 95.00 +598751.66 5685778.14 95.00 +598751.67 5685602.42 95.00 +598751.81 5677303.09 101.25 +598751.83 5681074.46 98.75 +598751.90 5677525.06 100.00 +598751.92 5681789.63 96.25 +598752.14 5681976.55 96.25 +598752.39 5681085.15 97.50 +598752.65 5681300.50 96.25 +598752.90 5683094.61 95.00 +598753.18 5682556.33 96.25 +598753.21 5682341.86 96.25 +598753.24 5686385.44 95.00 +598753.43 5682451.28 96.25 +598753.52 5681203.64 96.75 +598753.64 5681472.39 96.25 +598753.74 5678782.22 98.75 +598753.85 5681324.26 96.25 +598753.97 5679775.41 98.75 +598754.16 5680776.79 97.50 +598754.42 5681986.24 96.25 +598754.80 5681650.94 96.25 +598755.02 5681270.72 96.25 +598755.23 5678721.84 98.75 +598755.33 5683078.86 94.75 +598755.55 5681123.56 96.25 +598755.89 5678901.94 98.75 +598756.06 5679209.85 98.75 +598756.20 5683060.73 94.75 +598756.23 5687355.77 95.00 +598756.27 5681683.28 96.25 +598756.50 5682434.08 96.25 +598756.66 5681804.38 96.25 +598756.66 5681641.12 96.25 +598756.71 5681245.49 96.25 +598756.71 5679765.80 98.75 +598756.78 5681995.91 96.25 +598757.51 5678999.92 98.75 +598757.77 5685770.23 95.00 +598758.02 5682005.77 96.25 +598758.16 5681484.66 96.25 +598758.43 5682443.04 96.25 +598758.55 5681958.46 96.25 +598758.62 5681749.45 96.25 +598758.70 5678292.52 98.75 +598758.75 5681145.00 96.25 +598758.92 5682015.68 96.25 +598759.07 5677296.24 101.25 +598759.20 5680941.42 98.75 +598759.48 5679756.19 98.75 +598759.71 5683042.19 96.25 +598759.75 5685597.00 95.00 +598759.80 5683056.87 95.00 +598760.01 5681631.84 96.25 +598760.23 5681306.97 96.25 +598760.38 5685877.97 95.00 +598760.53 5682524.95 96.25 +598760.77 5681703.38 96.25 +598760.90 5681968.02 96.25 +598761.26 5681728.91 96.25 +598761.33 5683089.46 95.00 +598761.35 5681077.09 98.75 +598761.46 5687417.22 95.00 +598761.53 5687598.09 95.00 +598761.56 5681088.71 97.50 +598761.72 5677526.90 100.00 +598761.83 5682025.20 96.25 +598761.87 5681789.75 96.25 +598762.12 5682552.14 96.25 +598762.27 5679746.59 98.75 +598762.35 5682345.04 96.25 +598762.95 5686383.37 95.00 +598762.96 5681977.75 96.25 +598762.97 5683073.74 94.75 +598763.01 5681264.84 96.25 +598763.08 5681721.34 96.25 +598763.17 5678785.43 98.75 +598763.18 5681472.72 96.25 +598763.22 5683065.06 94.75 +598763.50 5681322.37 96.25 +598763.82 5680774.53 97.50 +598763.85 5685762.30 95.00 +598764.18 5681118.59 96.25 +598764.35 5677287.84 101.25 +598764.57 5678718.42 98.75 +598764.86 5681987.52 96.25 +598764.95 5681623.16 96.25 +598765.07 5679736.99 98.75 +598765.21 5678993.57 98.75 +598765.41 5682034.46 96.25 +598765.49 5682008.71 96.00 +598765.51 5679213.13 98.75 +598765.71 5678900.09 98.75 +598765.82 5681241.44 96.25 +598765.85 5687358.31 95.00 +598766.02 5681681.21 96.25 +598766.44 5681805.08 96.25 +598766.63 5681314.53 96.25 +598767.60 5680946.58 98.75 +598767.66 5681997.04 96.25 +598767.70 5681484.66 96.25 +598768.08 5683047.47 96.25 +598768.22 5681746.74 96.25 +598768.56 5681143.20 96.25 +598768.65 5678293.30 98.75 +598769.24 5677279.14 101.25 +598769.26 5683058.83 95.00 +598769.42 5683083.98 95.00 +598769.43 5681698.42 96.25 +598769.68 5685595.94 95.00 +598769.74 5685874.65 95.00 +598769.91 5685754.35 95.00 +598770.26 5681714.47 96.25 +598770.28 5682526.66 96.25 +598770.38 5681614.77 96.25 +598770.47 5681729.16 96.25 +598770.69 5681092.40 97.50 +598770.87 5681079.78 98.75 +598770.95 5680352.87 98.75 +598771.16 5682006.36 96.25 +598771.29 5679729.40 98.75 +598771.30 5677529.62 100.00 +598771.35 5687599.78 95.00 +598771.45 5687417.45 95.00 +598771.53 5682549.00 96.25 +598771.57 5681259.73 96.25 +598771.60 5681790.63 96.25 +598771.60 5682041.41 96.25 +598771.68 5680768.63 97.50 +598771.73 5680362.81 98.75 +598771.96 5682346.39 96.25 +598771.96 5681566.20 96.25 +598772.08 5680343.14 98.75 +598772.64 5681473.98 96.25 +598772.66 5681576.17 96.25 +598772.74 5686383.18 95.00 +598772.93 5678787.56 98.75 +598773.03 5677269.91 101.25 +598773.05 5678987.37 98.75 +598773.32 5681114.65 96.25 +598773.53 5682015.96 96.25 +598773.58 5681556.88 96.25 +598773.65 5681586.12 96.25 +598774.02 5680372.52 98.75 +598774.09 5681635.36 96.25 +598774.28 5681605.68 96.25 +598774.29 5678716.10 98.75 +598774.36 5681236.42 96.25 +598774.36 5683075.44 95.00 +598774.82 5682025.83 96.25 +598774.94 5678896.41 98.75 +598774.96 5679216.40 98.75 +598775.04 5680333.61 98.75 +598775.05 5681596.00 96.25 +598775.14 5681809.72 96.25 +598775.29 5683066.20 95.00 +598775.51 5677260.28 101.25 +598775.57 5681643.93 96.25 +598775.84 5687358.53 95.00 +598775.88 5681626.45 96.25 +598775.90 5682035.72 96.25 +598775.92 5681681.69 96.25 +598776.00 5685746.43 95.00 +598776.36 5680382.21 98.75 +598776.44 5683052.75 96.25 +598776.81 5680950.15 98.75 +598777.10 5681325.13 96.25 +598777.22 5681483.92 96.25 +598777.37 5677250.48 101.25 +598777.85 5681744.12 96.25 +598777.92 5680324.06 98.75 +598778.23 5681693.73 96.25 +598778.31 5679722.28 98.75 +598778.38 5685869.62 95.00 +598778.44 5685600.03 95.00 +598778.48 5681709.04 96.25 +598778.49 5681142.39 96.25 +598778.60 5678294.01 98.75 +598778.80 5681333.46 96.25 +598779.06 5680762.06 97.50 +598779.17 5682530.37 96.25 +598779.24 5677240.67 101.25 +598779.89 5680391.48 98.75 +598779.97 5680314.30 98.75 +598780.13 5681095.18 97.50 +598780.18 5681726.87 96.25 +598780.21 5678980.60 98.75 +598780.47 5681082.11 98.75 +598780.62 5681794.89 96.25 +598780.71 5677532.98 100.00 +598780.75 5681619.15 96.25 +598780.77 5681633.16 96.50 +598780.80 5682545.47 96.25 +598780.80 5687603.01 95.00 +598781.01 5681257.07 96.25 +598781.32 5687418.64 95.00 +598781.44 5677230.93 101.25 +598781.54 5681553.66 96.25 +598781.56 5682347.60 96.25 +598781.68 5681817.10 96.25 +598781.97 5686386.81 95.00 +598782.03 5680304.54 98.75 +598782.09 5685738.50 95.00 +598782.16 5681474.70 96.25 +598782.36 5681230.49 96.25 +598782.69 5678789.69 98.75 +598782.76 5682186.01 96.25 +598783.11 5681646.74 96.25 +598783.15 5681114.33 96.25 +598783.68 5677221.21 101.25 +598783.98 5678892.14 98.75 +598784.01 5678713.79 98.75 +598784.08 5680294.78 98.75 +598784.09 5682195.72 96.25 +598784.14 5682538.06 96.25 +598784.29 5680400.43 98.75 +598784.40 5679219.68 98.75 +598784.56 5680753.80 97.50 +598784.58 5682176.38 96.25 +598784.73 5678752.24 99.00 +598784.80 5683058.04 96.25 +598784.88 5678971.76 98.75 +598785.45 5679715.36 98.75 +598785.53 5681578.04 96.25 +598785.73 5681325.78 96.25 +598785.75 5680284.95 98.75 +598785.80 5681681.04 96.25 +598785.82 5687358.24 95.00 +598785.85 5681340.55 96.25 +598785.91 5681480.95 96.25 +598786.02 5681826.10 96.25 +598786.04 5680953.69 98.75 +598786.37 5683460.74 95.00 +598786.49 5678155.01 98.75 +598786.56 5681568.12 96.25 +598786.71 5683450.82 95.00 +598786.89 5677211.79 101.25 +598786.91 5678164.48 98.75 +598787.04 5683470.61 95.00 +598787.17 5685865.11 95.00 +598787.22 5685604.78 95.00 +598787.25 5681704.73 96.25 +598787.41 5680275.11 98.75 +598787.43 5681695.87 96.25 +598787.46 5681741.45 96.25 +598787.68 5681621.77 96.25 +598787.86 5683440.95 95.00 +598787.90 5681587.75 96.25 +598788.01 5681639.42 96.25 +598788.38 5682204.72 96.25 +598788.42 5681141.62 96.25 +598788.56 5678294.40 98.75 +598788.57 5680409.43 98.75 +598788.81 5681800.47 96.25 +598788.85 5681558.78 96.25 +598789.02 5683431.07 95.00 +598789.02 5678145.34 98.75 +598789.08 5680265.28 98.75 +598789.08 5681223.13 96.25 +598789.29 5683480.30 95.00 +598789.31 5681098.69 97.50 +598789.55 5682170.60 96.25 +598789.56 5685731.96 95.00 +598789.83 5681630.48 96.25 +598789.88 5677536.93 100.00 +598789.91 5681724.66 96.25 +598790.00 5677458.79 100.00 +598790.07 5680745.55 97.50 +598790.13 5681835.20 96.25 +598790.18 5683421.19 95.00 +598790.22 5686392.44 95.00 +598790.23 5681082.40 98.75 +598790.26 5687606.23 95.00 +598790.32 5681259.38 96.25 +598790.50 5678963.64 98.75 +598790.57 5678173.78 98.75 +598790.80 5677202.61 101.25 +598790.81 5680255.46 98.75 +598790.94 5687421.15 95.00 +598791.06 5682345.82 96.25 +598791.35 5678135.63 98.75 +598791.54 5683489.99 95.00 +598791.67 5677449.19 100.00 +598792.15 5680418.74 98.75 +598792.53 5680245.63 98.75 +598792.57 5682213.76 96.25 +598792.58 5683411.58 95.00 +598792.60 5678789.09 98.75 +598792.67 5681595.43 96.25 +598792.71 5681347.82 96.25 +598793.03 5678887.88 98.75 +598793.09 5681114.89 96.25 +598793.14 5683063.36 96.25 +598793.39 5681844.65 96.25 +598793.52 5681932.24 96.25 +598793.60 5687456.97 95.00 +598793.79 5678714.00 98.75 +598793.79 5683499.67 95.00 +598793.84 5681942.23 96.25 +598794.12 5679221.94 98.75 +598794.25 5680235.81 98.75 +598794.30 5681330.82 96.25 +598794.38 5687466.88 95.00 +598794.43 5681676.68 96.25 +598794.57 5680736.72 97.50 +598794.75 5679711.69 98.75 +598794.76 5681215.14 96.25 +598795.03 5682177.90 96.25 +598795.14 5681922.47 96.25 +598795.45 5683402.05 95.00 +598795.46 5680956.68 98.75 +598795.51 5687447.16 95.00 +598795.73 5680428.05 98.75 +598795.79 5687357.76 95.00 +598795.92 5680225.97 98.75 +598796.13 5677466.51 100.00 +598796.18 5681951.67 96.25 +598796.19 5678126.88 98.75 +598796.36 5681806.92 96.25 +598796.40 5683362.54 95.00 +598796.53 5682222.91 96.25 +598796.55 5682204.62 96.00 +598796.58 5685607.52 95.00 +598796.63 5683372.48 95.00 +598796.63 5681737.81 96.25 +598796.65 5681854.10 96.25 +598796.76 5677194.80 101.25 +598796.81 5678181.21 98.75 +598796.85 5683382.42 95.00 +598796.87 5683352.65 95.00 +598796.97 5681265.75 96.25 +598797.08 5683392.37 95.00 +598797.15 5685864.83 95.00 +598797.21 5683509.00 95.00 +598797.44 5687437.36 95.00 +598797.50 5685725.90 95.00 +598797.53 5687428.15 95.00 +598797.66 5681912.80 96.25 +598797.73 5678956.73 98.75 +598797.97 5683459.31 96.25 +598798.04 5680437.75 98.75 +598798.04 5681143.93 96.25 +598798.07 5686398.62 95.00 +598798.14 5681205.76 96.25 +598798.20 5682232.60 96.25 +598798.34 5681102.52 97.50 +598798.40 5680216.46 98.75 +598798.49 5678293.99 98.75 +598798.52 5683342.85 95.00 +598798.73 5682339.95 96.25 +598798.84 5682242.55 96.25 +598798.85 5680727.77 97.50 +598798.87 5682187.09 96.25 +598798.92 5677541.18 100.00 +598799.02 5687475.07 95.00 +598799.11 5683450.28 96.25 +598799.14 5687610.76 95.00 +598799.23 5682252.18 96.25 +598799.36 5681863.71 96.25 +598799.48 5681723.20 96.25 +598799.50 5681355.15 96.25 +598799.82 5681903.04 96.25 +598800.03 5681275.22 96.25 +598800.07 5681081.53 98.75 +598800.23 5680447.48 98.75 +598800.31 5681582.67 96.25 +598800.48 5677446.80 100.00 +598800.55 5681592.66 96.25 +598800.74 5683069.61 96.25 +598800.79 5683518.27 95.00 +598800.82 5681669.06 96.25 +598800.92 5681960.47 96.25 +598800.98 5680718.15 97.50 +598801.01 5681931.30 96.00 +598801.02 5681940.88 96.00 +598801.02 5678118.14 98.75 +598801.23 5683467.96 96.25 +598801.24 5681815.62 96.25 +598801.47 5681893.21 96.25 +598801.78 5683333.47 95.00 +598801.86 5681873.39 96.25 +598801.98 5677897.80 98.75 +598802.14 5681337.01 96.25 +598802.14 5681196.77 96.25 +598802.24 5677457.62 99.50 +598802.27 5681883.25 96.25 +598802.33 5677474.15 100.00 +598802.35 5681284.88 96.25 +598802.35 5680708.33 97.50 +598802.54 5678788.06 98.75 +598802.59 5682196.33 96.25 +598802.80 5677888.59 98.75 +598802.94 5678886.64 98.75 +598802.99 5681115.99 96.25 +598803.05 5681730.56 96.25 +598803.21 5681573.79 96.25 +598803.27 5678157.39 98.50 +598803.59 5680698.48 97.50 +598803.61 5678715.81 98.75 +598803.77 5677187.69 101.25 +598803.79 5681922.20 96.00 +598803.85 5678948.83 98.75 +598803.87 5680208.11 98.75 +598803.93 5679223.85 98.75 +598803.98 5681949.97 96.00 +598804.03 5681294.51 96.25 +598804.35 5681659.80 96.25 +598804.37 5683527.55 95.00 +598804.54 5678187.40 98.75 +598804.63 5679710.69 98.75 +598804.68 5680466.01 98.75 +598804.97 5680959.31 98.75 +598805.03 5683444.49 96.25 +598805.05 5683460.42 96.30 +598805.14 5685935.17 95.00 +598805.20 5680456.05 98.75 +598805.47 5682332.97 96.25 +598805.49 5677906.33 98.75 +598805.55 5685925.31 95.00 +598805.57 5680688.79 97.50 +598805.62 5685720.21 95.00 +598805.63 5681527.59 96.25 +598805.70 5687358.00 95.00 +598805.84 5682205.73 96.25 +598806.09 5685867.44 95.00 +598806.11 5681824.32 96.25 +598806.21 5682376.34 96.25 +598806.24 5687481.97 95.00 +598806.28 5683324.72 95.00 +598806.53 5681968.71 96.25 +598806.54 5681149.04 96.25 +598806.55 5683077.25 96.25 +598806.57 5685607.75 95.00 +598806.64 5685945.01 95.00 +598806.66 5681620.37 96.25 +598806.70 5683474.89 96.25 +598806.82 5681630.27 96.25 +598806.82 5681650.21 96.25 +598806.85 5686403.04 95.00 +598807.07 5681640.24 96.25 +598807.36 5678110.49 98.75 +598807.50 5681913.34 96.00 +598807.59 5677464.45 99.50 +598807.72 5678290.21 98.75 +598807.74 5677545.86 100.00 +598807.87 5680474.54 98.75 +598807.89 5681519.01 96.25 +598807.90 5682254.83 96.25 +598807.92 5687615.53 95.00 +598807.94 5682215.47 96.25 +598807.95 5683536.83 95.00 +598808.06 5681104.14 97.50 +598808.09 5685915.64 95.00 +598808.35 5680679.26 97.50 +598808.72 5681358.45 96.25 +598808.97 5677451.79 100.00 +598808.98 5681189.53 96.25 +598809.07 5681930.87 96.00 +598809.08 5682225.37 96.25 +598809.18 5683086.78 96.25 +598809.20 5681957.95 96.00 +598809.32 5681233.09 96.25 +598809.33 5680199.77 98.75 +598809.37 5677881.68 98.75 +598809.44 5677480.97 100.00 +598809.74 5681343.29 96.25 +598809.79 5681921.32 96.00 +598809.83 5682245.24 96.25 +598809.91 5678940.88 98.75 +598809.92 5681080.66 98.75 +598809.92 5681833.52 96.25 +598810.09 5682235.28 96.25 +598810.10 5685876.30 95.00 +598810.38 5681566.86 96.25 +598810.51 5685954.11 95.00 +598810.59 5681940.19 96.00 +598810.66 5683451.01 96.25 +598810.74 5685906.00 95.00 +598810.80 5677180.61 101.25 +598810.95 5683096.48 96.25 +598811.23 5681611.73 96.25 +598811.30 5685886.16 95.00 +598811.31 5681223.33 96.25 +598811.32 5681295.99 96.25 +598811.52 5683546.10 95.00 +598811.56 5682325.45 96.25 +598811.58 5680669.93 97.50 +598811.59 5685896.15 95.00 +598811.70 5683460.13 96.25 +598811.89 5678890.07 98.75 +598811.98 5683469.38 96.25 +598812.28 5678785.83 98.75 +598812.33 5681534.66 96.25 +598812.35 5683316.85 95.00 +598812.48 5680483.21 98.75 +598812.62 5683106.09 96.25 +598812.91 5681115.91 96.25 +598812.95 5677471.27 99.50 +598813.15 5679075.91 98.75 +598813.23 5681241.60 96.25 +598813.25 5680493.16 98.75 +598813.42 5679085.72 98.75 +598813.44 5682370.69 96.25 +598813.44 5681842.86 96.25 +598813.44 5681975.73 96.25 +598813.45 5678717.51 98.75 +598813.64 5681949.26 96.00 +598813.88 5679224.91 98.75 +598813.97 5687488.28 95.00 +598814.06 5678184.68 98.75 +598814.11 5681155.40 96.25 +598814.47 5681181.21 96.25 +598814.54 5681286.82 96.25 +598814.59 5679710.62 98.75 +598814.68 5680961.16 98.75 +598814.74 5681583.26 96.25 +598814.93 5677907.60 98.75 +598814.94 5677459.64 100.00 +598815.09 5678932.39 98.75 +598815.16 5687361.02 95.00 +598815.17 5680191.70 98.75 +598815.25 5678104.58 98.75 +598815.37 5685718.01 95.00 +598815.44 5681965.24 96.00 +598815.72 5683555.10 95.00 +598816.00 5680502.58 98.75 +598816.12 5687621.15 95.00 +598816.12 5686402.35 95.00 +598816.27 5679066.45 98.75 +598816.30 5685606.25 95.00 +598816.38 5682342.26 96.25 +598816.46 5677550.73 100.00 +598816.51 5682351.99 96.25 +598816.54 5681214.94 96.25 +598816.60 5685961.45 95.00 +598816.72 5680661.45 97.50 +598816.80 5681852.24 96.25 +598816.81 5681517.36 96.25 +598816.87 5682361.58 96.25 +598816.92 5677875.99 98.75 +598816.94 5677487.26 100.00 +598817.05 5679094.60 98.75 +598817.06 5678286.73 98.75 +598817.78 5681277.42 96.25 +598817.81 5681560.18 96.25 +598817.82 5681105.35 97.50 +598817.83 5683114.50 96.25 +598817.93 5681957.84 96.00 +598818.30 5677478.10 99.50 +598818.42 5683308.97 95.00 +598818.54 5677174.31 101.25 +598818.60 5681249.98 96.25 +598818.65 5681357.89 96.25 +598819.11 5681077.15 98.75 +598819.20 5681333.91 96.25 +598819.31 5681606.13 96.25 +598819.44 5681326.02 96.25 +598819.44 5681861.86 96.25 +598819.52 5678923.43 98.75 +598819.54 5681574.60 96.25 +598819.55 5678147.53 98.75 +598819.70 5681342.40 96.25 +598819.74 5678177.35 98.75 +598819.79 5678157.49 98.75 +598819.81 5683564.15 95.00 +598819.95 5682323.64 96.25 +598819.95 5681172.89 96.25 +598820.01 5678895.87 98.75 +598820.07 5681163.07 96.25 +598820.12 5678137.57 98.75 +598820.86 5678167.43 98.75 +598820.99 5681590.56 96.25 +598821.03 5680511.08 98.75 +598821.09 5677467.33 100.00 +598821.37 5681931.19 96.25 +598821.47 5680183.96 98.75 +598821.56 5682351.13 96.00 +598821.63 5681966.68 96.00 +598821.68 5678127.70 98.75 +598821.69 5686394.64 95.00 +598821.87 5680652.96 97.50 +598821.88 5687494.38 95.00 +598821.91 5681537.41 96.25 +598821.92 5681981.01 96.25 +598821.93 5681921.23 96.25 +598821.95 5681871.51 96.25 +598822.02 5678783.60 98.75 +598822.15 5678722.16 98.75 +598822.33 5681268.58 96.25 +598822.39 5681940.99 96.25 +598822.44 5679059.38 98.75 +598822.58 5681911.28 96.25 +598822.78 5681881.45 96.25 +598822.82 5681114.97 96.25 +598822.84 5681258.91 96.25 +598822.97 5678107.82 98.75 +598822.97 5678117.81 98.75 +598823.09 5683573.54 95.00 +598823.09 5678914.12 98.75 +598823.36 5681901.33 96.25 +598823.52 5686384.96 95.00 +598823.54 5682359.06 96.00 +598823.60 5683300.50 95.00 +598823.61 5681891.39 96.25 +598823.78 5687627.57 95.00 +598823.78 5679101.65 98.75 +598823.82 5679225.96 98.75 +598823.85 5687365.96 95.00 +598824.09 5682340.60 96.25 +598824.24 5677870.02 98.75 +598824.24 5678904.59 98.75 +598824.39 5677906.34 98.75 +598824.39 5680963.02 98.75 +598824.43 5679712.38 98.75 +598824.48 5685601.15 95.00 +598824.55 5681552.84 96.25 +598824.74 5686375.05 95.00 +598824.88 5681209.50 96.25 +598824.95 5681950.63 96.25 +598825.12 5685715.80 95.00 +598825.19 5681522.72 96.25 +598825.42 5677490.12 100.00 +598826.17 5677552.85 100.00 +598826.22 5685963.96 95.00 +598826.33 5678283.13 98.75 +598826.34 5677168.08 101.25 +598826.97 5677475.20 100.00 +598826.99 5683582.54 95.00 +598827.03 5683111.68 96.25 +598827.43 5681568.57 96.25 +598827.44 5680518.72 98.75 +598827.57 5681105.68 97.50 +598827.71 5683446.67 95.00 +598827.78 5680645.12 97.50 +598827.82 5683455.48 95.00 +598827.83 5681544.53 96.25 +598827.99 5686366.24 95.00 +598828.21 5681073.30 98.75 +598828.40 5682366.27 96.00 +598828.44 5680177.13 98.75 +598828.56 5681356.73 96.25 +598828.61 5683291.91 95.00 +598828.77 5682349.60 96.00 +598828.82 5681603.17 96.25 +598828.90 5682327.38 96.25 +598828.92 5683525.66 95.00 +598829.20 5681328.12 96.25 +598829.62 5683463.65 95.00 +598829.75 5681958.95 96.25 +598829.78 5687500.49 95.00 +598830.53 5678727.59 98.75 +598830.56 5682042.22 96.25 +598830.69 5677863.00 98.75 +598830.87 5679054.10 98.75 +598830.89 5681590.85 96.25 +598831.02 5681984.89 96.25 +598831.09 5685593.65 95.00 +598831.25 5687634.18 95.00 +598831.29 5683535.21 95.00 +598831.38 5683439.93 95.00 +598831.69 5677483.85 100.00 +598831.76 5678781.37 98.75 +598831.82 5682346.64 96.25 +598832.12 5681529.91 96.25 +598832.53 5687370.89 95.00 +598832.54 5681112.80 96.25 +598832.54 5679230.63 98.75 +598832.55 5681180.27 96.25 +598832.90 5679105.63 98.75 +598833.02 5683517.76 95.00 +598833.08 5682388.43 96.25 +598833.25 5681204.09 96.25 +598833.33 5682032.62 96.25 +598833.49 5680526.65 98.75 +598833.50 5682398.10 96.25 +598833.74 5683453.10 94.90 +598833.77 5677904.69 98.75 +598833.85 5680965.73 98.75 +598833.86 5683589.73 95.00 +598834.27 5679714.14 98.75 +598834.35 5677162.12 101.25 +598834.54 5682051.29 96.25 +598834.67 5685718.33 95.00 +598834.67 5685584.34 95.00 +598834.68 5683105.50 96.25 +598834.75 5683284.09 95.00 +598834.98 5682355.54 96.00 +598835.25 5680638.59 97.50 +598835.26 5678278.67 98.75 +598835.52 5681170.76 96.25 +598835.84 5682369.47 96.00 +598835.93 5685962.40 95.00 +598836.00 5677554.65 100.00 +598836.04 5681597.39 96.25 +598836.07 5683447.28 95.00 +598836.09 5681563.62 96.25 +598836.41 5686360.89 95.00 +598836.55 5682023.22 96.25 +598836.86 5681068.58 98.75 +598836.94 5681965.87 96.25 +598836.97 5683532.45 94.90 +598837.07 5681103.09 97.50 +598837.23 5677856.06 98.75 +598837.42 5683463.81 95.00 +598837.46 5682380.05 96.25 +598837.66 5687506.64 95.00 +598837.66 5680173.34 98.75 +598838.05 5683541.62 95.00 +598838.06 5682330.55 96.25 +598838.15 5687641.41 95.00 +598838.21 5685574.99 95.00 +598838.32 5681354.73 96.25 +598838.33 5681161.20 96.25 +598838.50 5683455.69 95.00 +598838.58 5678733.47 98.75 +598838.58 5682060.42 96.25 +598838.65 5682353.72 96.25 +598838.73 5681331.16 96.25 +598839.17 5681186.15 96.25 +598839.41 5682405.93 96.25 +598839.52 5682362.80 96.00 +598839.54 5680534.58 98.75 +598839.66 5683523.64 95.00 +598839.71 5679049.50 98.75 +598840.28 5681535.44 96.25 +598840.41 5678776.39 98.75 +598840.56 5681987.67 96.25 +598840.63 5679236.45 98.75 +598840.73 5683596.92 95.00 +598840.80 5683097.73 96.25 +598840.90 5683276.28 95.00 +598840.95 5682395.48 95.00 +598841.52 5682041.46 95.80 +598841.76 5687374.55 95.00 +598841.80 5682385.88 95.00 +598841.91 5682014.79 96.25 +598842.01 5685565.76 95.00 +598842.03 5679109.62 98.75 +598842.05 5681199.62 96.25 +598842.07 5681151.97 96.25 +598842.25 5681110.58 96.25 +598842.32 5682069.69 96.25 +598842.36 5677156.16 101.25 +598842.63 5677901.76 98.75 +598842.74 5683143.28 95.00 +598842.79 5680632.13 97.50 +598843.11 5680969.20 98.75 +598843.45 5685722.73 95.00 +598843.63 5683536.81 94.90 +598843.76 5678273.47 98.75 +598843.99 5679716.45 98.75 +598844.57 5682049.72 95.80 +598844.64 5682404.38 95.00 +598844.74 5681558.64 96.25 +598844.97 5685958.14 95.00 +598845.00 5682361.20 96.25 +598845.13 5686356.02 95.00 +598845.22 5681063.30 98.75 +598845.51 5682034.07 95.80 +598845.53 5687512.79 95.00 +598845.64 5687648.00 95.00 +598845.65 5680542.46 98.75 +598845.75 5681996.08 96.25 +598845.79 5677556.61 100.00 +598845.84 5681970.36 96.25 +598845.87 5685556.54 95.00 +598845.89 5682378.85 96.25 +598845.96 5682005.70 96.25 +598845.96 5677852.83 98.75 +598846.02 5683605.25 95.00 +598846.08 5682413.16 96.25 +598846.17 5678739.97 98.75 +598846.39 5682325.25 96.25 +598846.61 5683431.55 96.25 +598846.66 5681100.88 97.50 +598846.72 5683546.10 95.00 +598846.80 5683441.35 96.25 +598846.89 5680169.56 98.75 +598846.91 5683089.95 96.25 +598847.05 5683268.46 95.00 +598847.11 5682025.51 95.90 +598847.16 5681143.42 96.25 +598847.41 5682078.29 96.25 +598847.57 5683528.37 95.00 +598847.77 5682016.83 95.90 +598847.77 5683460.89 96.25 +598848.05 5683470.68 96.25 +598848.13 5679243.06 98.75 +598848.23 5679044.39 98.75 +598848.25 5683451.07 96.25 +598848.29 5681334.00 96.25 +598848.29 5681355.42 96.25 +598848.52 5683555.77 95.00 +598848.93 5678771.23 98.75 +598849.01 5681184.61 96.25 +598849.37 5682384.28 95.00 +598849.60 5681538.45 96.25 +598849.72 5685547.32 95.00 +598849.86 5683423.79 96.25 +598849.98 5683479.97 96.25 +598850.28 5682041.42 95.80 +598850.31 5677896.10 98.75 +598850.56 5683519.18 95.00 +598850.60 5680626.02 97.50 +598850.65 5683565.34 95.00 +598850.68 5677150.70 101.25 +598850.73 5683614.01 95.00 +598850.89 5682050.47 95.80 +598850.93 5680975.09 98.75 +598851.22 5685950.82 95.00 +598851.26 5685728.97 95.00 +598851.28 5683539.01 94.90 +598851.30 5681196.08 96.25 +598851.35 5687377.35 95.00 +598851.39 5682411.63 95.00 +598851.42 5682368.49 96.25 +598851.62 5683139.42 95.00 +598851.85 5680550.28 98.75 +598851.92 5679110.74 98.75 +598851.94 5683259.83 95.00 +598851.96 5681108.35 96.25 +598852.17 5678268.11 98.75 +598852.70 5683623.72 95.00 +598852.90 5681135.28 96.25 +598852.95 5683082.12 96.25 +598853.08 5683509.67 95.00 +598853.20 5682086.41 96.25 +598853.21 5682009.22 95.90 +598853.30 5683450.82 96.30 +598853.32 5687654.38 95.00 +598853.39 5681057.76 98.75 +598853.40 5687518.94 95.00 +598853.43 5681976.79 96.25 +598853.50 5685538.08 95.00 +598853.57 5679719.30 98.75 +598853.61 5682419.47 96.25 +598853.76 5678746.46 98.75 +598853.98 5683547.44 94.90 +598854.33 5686352.13 95.00 +598854.47 5681557.29 96.25 +598854.73 5685738.13 95.00 +598854.90 5683531.48 94.90 +598855.04 5682320.57 96.25 +598855.06 5683574.14 95.00 +598855.11 5683556.15 94.90 +598855.21 5685757.75 95.00 +598855.26 5682381.83 96.25 +598855.43 5683522.97 94.90 +598855.49 5677852.47 98.75 +598855.50 5685767.74 95.00 +598855.52 5678763.72 98.75 +598855.55 5677558.78 100.00 +598855.63 5679249.66 98.75 +598855.71 5680164.91 98.75 +598855.72 5683564.97 94.90 +598855.84 5683514.43 94.90 +598856.01 5683632.94 95.00 +598856.07 5682026.74 95.90 +598856.17 5685777.71 95.00 +598856.27 5685942.20 95.00 +598856.27 5685747.82 95.00 +598856.40 5679038.71 98.75 +598856.41 5681100.24 97.50 +598857.09 5683251.37 95.00 +598857.13 5685787.66 95.00 +598857.17 5683429.28 96.25 +598857.28 5685528.83 95.00 +598857.43 5683477.92 96.25 +598857.48 5685932.39 95.00 +598857.62 5681484.87 96.25 +598857.70 5682388.96 95.00 +598857.81 5678755.37 98.75 +598857.85 5680982.12 98.75 +598858.03 5677890.51 98.75 +598858.05 5680558.09 98.75 +598858.05 5683504.66 95.00 +598858.18 5685922.42 95.00 +598858.21 5681335.24 96.25 +598858.27 5681355.92 96.25 +598858.36 5683468.13 96.25 +598858.42 5680619.90 97.50 +598858.70 5681494.75 96.25 +598858.72 5685797.50 95.00 +598858.77 5682418.21 95.00 +598858.85 5681183.13 96.25 +598858.97 5683074.27 96.25 +598859.04 5682045.43 96.25 +598859.15 5681127.62 96.25 +598859.18 5682017.90 95.90 +598859.23 5682055.16 96.25 +598859.24 5677145.62 101.25 +598859.28 5681537.07 96.25 +598859.33 5685519.09 95.00 +598859.43 5683572.92 94.90 +598859.43 5683523.07 95.00 +598859.54 5682094.13 96.25 +598859.54 5683532.91 95.00 +598859.55 5683438.79 96.25 +598859.61 5683458.38 96.25 +598859.76 5677462.29 100.00 +598859.77 5683562.11 95.00 +598859.85 5683582.73 95.00 +598859.90 5681191.05 96.25 +598859.98 5683513.24 95.00 +598859.98 5682373.32 96.25 +598860.06 5683134.71 95.00 +598860.08 5685912.76 95.00 +598860.12 5687526.16 95.00 +598860.17 5683448.61 96.25 +598860.24 5682008.39 95.90 +598860.39 5677453.45 100.00 +598860.39 5683542.71 95.00 +598860.68 5682426.25 96.25 +598860.91 5681983.40 96.25 +598860.93 5685509.23 95.00 +598860.95 5678263.38 98.75 +598861.03 5683641.53 95.00 +598861.07 5683552.49 95.00 +598861.15 5687379.23 95.00 +598861.19 5685807.19 95.00 +598861.24 5677471.17 100.00 +598861.29 5681051.83 98.75 +598861.71 5686345.61 95.00 +598861.77 5679112.22 98.75 +598861.80 5683346.63 95.00 +598861.91 5681108.24 96.25 +598861.94 5677757.75 98.75 +598861.96 5683355.27 95.00 +598862.01 5681310.52 96.25 +598862.25 5683571.64 95.00 +598862.52 5685499.37 95.00 +598862.72 5687657.64 95.00 +598862.75 5681503.88 96.25 +598862.80 5682387.84 96.25 +598862.96 5679256.41 98.75 +598863.02 5682036.37 96.25 +598863.15 5679722.15 98.75 +598863.17 5682064.15 96.25 +598863.26 5683243.57 95.00 +598863.37 5683405.40 95.00 +598863.76 5683415.32 95.00 +598863.84 5681559.31 96.25 +598863.86 5683521.43 96.25 +598863.97 5679032.30 98.75 +598864.12 5685489.51 95.00 +598864.21 5683511.62 96.25 +598864.30 5682317.58 96.25 +598864.34 5685903.73 95.00 +598864.42 5680160.06 98.75 +598864.45 5680989.48 98.75 +598864.56 5683591.29 95.00 +598864.58 5677855.01 98.75 +598864.69 5680565.43 98.75 +598864.75 5683482.12 96.25 +598864.81 5677446.06 100.00 +598864.88 5682395.79 95.00 +598864.95 5681568.84 96.25 +598864.95 5683338.31 95.00 +598864.98 5683472.14 96.25 +598865.14 5683363.63 95.00 +598865.18 5683531.32 96.25 +598865.21 5677767.09 98.75 +598865.29 5681513.49 96.25 +598865.37 5677560.32 100.00 +598865.62 5683580.89 95.00 +598865.63 5677884.79 98.75 +598865.64 5687534.49 95.00 +598865.65 5683492.04 96.25 +598866.03 5683541.25 96.25 +598866.08 5683551.24 96.25 +598866.10 5681101.79 97.50 +598866.14 5683561.22 96.25 +598866.22 5681991.58 96.25 +598866.26 5681481.31 96.25 +598866.35 5687572.80 95.00 +598866.40 5683067.89 96.25 +598866.40 5682424.54 95.00 +598866.41 5677138.67 101.25 +598866.51 5682101.19 96.25 +598866.54 5683501.91 96.25 +598866.73 5683349.41 94.90 +598866.79 5683600.87 95.00 +598866.79 5683397.55 95.00 +598866.98 5685815.13 95.00 +598867.04 5683424.46 95.00 +598867.09 5683462.44 96.25 +598867.14 5681043.98 98.75 +598867.21 5685480.02 95.00 +598867.23 5682433.58 96.25 +598867.26 5683649.15 95.00 +598867.26 5677750.45 98.75 +598867.27 5681121.99 96.25 +598867.45 5680615.91 97.50 +598867.56 5681531.85 96.25 +598867.68 5679265.22 98.75 +598867.71 5681523.17 96.25 +598867.79 5683570.90 96.25 +598867.79 5686337.91 95.00 +598867.99 5677476.05 100.00 +598868.05 5677460.22 99.75 +598868.12 5687582.24 95.00 +598868.12 5681336.48 96.25 +598868.22 5683129.49 95.00 +598868.26 5681356.07 96.25 +598868.31 5681575.01 96.25 +598868.45 5687563.03 95.00 +598868.47 5681306.19 96.25 +598868.61 5682072.46 96.25 +598868.82 5683610.50 95.00 +598869.12 5683590.08 95.00 +598869.22 5682028.56 96.25 +598869.39 5680997.84 98.75 +598869.43 5683235.78 95.00 +598869.52 5683411.13 94.90 +598869.61 5682375.02 96.25 +598869.67 5682394.87 96.25 +598869.74 5683452.81 96.25 +598869.90 5681314.94 96.25 +598869.90 5678259.07 98.75 +598869.93 5687543.49 95.00 +598869.96 5687553.16 95.00 +598870.04 5685895.64 95.00 +598870.05 5682000.78 96.25 +598870.52 5686328.30 95.00 +598870.73 5683363.13 95.00 +598870.73 5679025.02 98.75 +598870.74 5677775.32 98.75 +598870.85 5683620.13 95.00 +598871.01 5687380.83 95.00 +598871.11 5683336.49 95.00 +598871.51 5683580.16 96.25 +598871.58 5679113.92 98.75 +598871.63 5677877.37 98.75 +598871.64 5683354.23 95.00 +598871.84 5687591.50 95.00 +598871.86 5681108.49 96.25 +598871.88 5682402.79 95.00 +598872.04 5677860.72 98.75 +598872.04 5679391.25 98.75 +598872.16 5683345.30 95.00 +598872.16 5686318.46 95.00 +598872.30 5681035.56 98.75 +598872.32 5679401.23 98.75 +598872.36 5687659.86 95.00 +598872.44 5682441.91 96.25 +598872.50 5679381.26 98.75 +598872.65 5682010.41 96.25 +598872.77 5677446.56 100.00 +598872.79 5681007.11 98.75 +598872.83 5679411.22 98.75 +598872.95 5685823.13 95.00 +598872.96 5685472.04 95.00 +598872.97 5680570.99 98.75 +598872.97 5679371.27 98.75 +598873.03 5679273.64 98.75 +598873.05 5679722.17 98.75 +598873.10 5683629.71 95.00 +598873.10 5683422.10 95.00 +598873.14 5680155.22 98.75 +598873.23 5683599.03 95.00 +598873.34 5679421.20 98.75 +598873.44 5683061.37 96.25 +598873.49 5683402.41 95.00 +598873.56 5682431.31 95.00 +598873.63 5682318.74 96.25 +598873.74 5683412.34 95.00 +598873.90 5683443.75 96.25 +598873.97 5679431.18 98.75 +598873.99 5683226.95 95.00 +598874.01 5677132.20 101.25 +598874.07 5679361.34 98.75 +598874.14 5682019.93 96.25 +598874.51 5683655.95 95.00 +598874.53 5677471.36 100.00 +598874.54 5682107.15 96.25 +598874.54 5681016.84 98.75 +598874.63 5681567.68 96.25 +598874.78 5681485.88 96.25 +598874.94 5677869.05 98.75 +598875.22 5683589.43 96.25 +598875.36 5677560.32 100.00 +598875.37 5679351.43 98.75 +598875.50 5682079.67 96.25 +598875.59 5681104.26 97.50 +598875.76 5683123.58 95.00 +598875.98 5686309.23 95.00 +598875.98 5682402.41 96.25 +598876.29 5681026.57 98.75 +598876.42 5679440.50 98.75 +598876.57 5679016.95 98.75 +598876.64 5683513.18 96.25 +598876.68 5679341.52 98.75 +598876.69 5680612.29 97.50 +598876.69 5681118.79 96.25 +598876.71 5685888.20 95.00 +598876.78 5683052.06 96.25 +598876.82 5677750.40 98.75 +598876.89 5683608.14 95.00 +598877.04 5683638.73 95.00 +598877.20 5677454.17 100.00 +598877.35 5683561.40 96.25 +598877.38 5677764.18 98.50 +598877.45 5677463.00 100.00 +598877.50 5683523.12 96.25 +598877.54 5683503.34 96.25 +598877.84 5679331.59 98.75 +598877.91 5682450.05 96.25 +598877.91 5681514.42 96.25 +598877.93 5683434.65 96.25 +598878.04 5681337.73 96.25 +598878.24 5681494.46 96.25 +598878.24 5679281.97 98.75 +598878.26 5681356.22 96.25 +598878.36 5683533.07 96.25 +598878.42 5681504.44 96.25 +598878.42 5681305.33 96.25 +598878.43 5677781.45 98.75 +598878.45 5683218.06 95.00 +598878.54 5683463.79 96.25 +598878.81 5685831.23 95.00 +598878.88 5682409.81 95.00 +598878.91 5683598.71 96.25 +598879.00 5679321.66 98.75 +598879.32 5683473.74 96.25 +598879.37 5682376.14 96.25 +598879.48 5682439.26 95.00 +598879.50 5679291.88 98.75 +598879.59 5678256.69 98.75 +598879.61 5683493.57 96.25 +598879.63 5683617.59 95.00 +598879.71 5683571.11 96.25 +598879.72 5681316.19 96.25 +598879.76 5683551.78 96.25 +598879.90 5683454.03 96.25 +598880.01 5686300.12 95.00 +598880.01 5685465.10 95.00 +598880.10 5683483.69 96.25 +598880.12 5683042.75 96.25 +598880.15 5679311.73 98.75 +598880.26 5683424.94 96.25 +598880.38 5687596.68 95.00 +598880.42 5682088.33 96.25 +598880.62 5687383.41 95.00 +598880.76 5679301.80 98.75 +598880.96 5681559.98 96.25 +598881.08 5681523.76 96.25 +598881.17 5683647.66 95.00 +598881.24 5680576.56 98.75 +598881.25 5683365.47 96.25 +598881.36 5679115.78 98.75 +598881.48 5683355.48 96.25 +598881.63 5681110.09 96.25 +598881.64 5677125.77 101.25 +598881.71 5683345.50 96.25 +598881.76 5683315.55 96.25 +598881.77 5683115.98 95.00 +598881.80 5683662.71 95.00 +598881.87 5683542.23 96.25 +598881.89 5683325.54 96.25 +598881.93 5683335.52 96.25 +598882.26 5682320.52 96.25 +598882.30 5680151.42 98.75 +598882.33 5683375.39 96.25 +598882.35 5687659.83 95.00 +598882.37 5683627.04 95.00 +598882.42 5679008.89 98.75 +598882.42 5679448.50 98.75 +598882.58 5683415.23 96.25 +598882.58 5683305.67 96.25 +598882.60 5683607.99 96.25 +598882.60 5683444.44 96.25 +598882.72 5682112.88 96.25 +598882.84 5683209.14 95.00 +598883.01 5683405.26 96.25 +598883.03 5679721.51 98.75 +598883.04 5685880.46 95.00 +598883.39 5683395.28 96.25 +598883.42 5683385.32 96.25 +598883.46 5683033.44 96.25 +598883.57 5682408.58 96.25 +598883.65 5677771.11 98.50 +598883.69 5682457.99 96.25 +598884.54 5681108.37 97.50 +598884.77 5683295.92 96.25 +598885.23 5677755.24 98.75 +598885.35 5677560.32 100.00 +598885.41 5683579.01 96.25 +598885.41 5677788.10 98.75 +598885.66 5685838.45 95.00 +598885.78 5681116.87 96.25 +598885.79 5682416.91 95.00 +598885.80 5686291.98 95.00 +598886.07 5682096.24 96.25 +598886.23 5683617.29 96.25 +598886.37 5681170.34 96.25 +598886.37 5680611.18 97.50 +598886.43 5682446.32 95.00 +598886.66 5683635.89 95.00 +598886.92 5683200.08 95.00 +598886.95 5683286.18 96.25 +598887.77 5683108.38 95.00 +598887.93 5681339.16 96.25 +598888.13 5683436.12 96.25 +598888.23 5681356.78 96.25 +598888.40 5683670.07 95.00 +598888.41 5681305.48 96.25 +598888.53 5683557.76 95.00 +598888.78 5679001.32 98.75 +598888.87 5683652.06 95.00 +598888.95 5685460.82 95.00 +598889.05 5679455.75 98.75 +598889.07 5682375.44 96.25 +598889.20 5687601.16 95.00 +598889.22 5677119.28 101.25 +598889.30 5678254.40 98.75 +598889.36 5685872.72 95.00 +598889.39 5683551.15 95.00 +598889.58 5683025.94 96.25 +598889.59 5683626.69 96.25 +598889.60 5681555.65 96.25 +598889.60 5685706.92 95.00 +598889.71 5681315.77 96.25 +598889.86 5680581.51 98.75 +598889.91 5677797.00 98.75 +598889.92 5677778.03 98.50 +598890.01 5681176.06 96.25 +598890.09 5687386.61 95.00 +598890.19 5681523.43 96.25 +598890.30 5683276.82 96.25 +598890.32 5683644.98 95.00 +598890.72 5679119.01 98.75 +598891.00 5683191.01 95.00 +598891.10 5682316.32 96.25 +598891.27 5682117.92 96.25 +598891.40 5682464.07 96.25 +598891.41 5683327.28 96.25 +598891.55 5682414.32 96.25 +598891.86 5680148.58 98.75 +598892.09 5685716.46 95.00 +598892.15 5683337.09 96.25 +598892.15 5677762.37 98.75 +598892.15 5683554.37 94.90 +598892.16 5685845.79 95.00 +598892.22 5683586.31 96.25 +598892.34 5687659.80 95.00 +598892.71 5682424.00 95.00 +598892.78 5686284.84 95.00 +598892.93 5683317.42 96.25 +598892.96 5683636.09 96.25 +598892.97 5685697.52 95.00 +598893.00 5679721.08 98.75 +598893.05 5683427.56 96.25 +598893.10 5683100.31 95.00 +598893.22 5683397.97 96.25 +598893.24 5685726.38 95.00 +598893.61 5681163.83 96.25 +598893.64 5682453.03 95.00 +598893.96 5681515.75 96.25 +598894.01 5677806.10 98.75 +598894.02 5683388.01 96.25 +598894.19 5681110.30 97.50 +598894.27 5683407.85 96.25 +598894.35 5683267.70 96.25 +598894.55 5683346.77 96.25 +598894.65 5683417.71 96.25 +598894.74 5683307.60 96.25 +598894.75 5685864.31 95.00 +598894.76 5677563.45 100.00 +598894.93 5682100.14 96.25 +598895.01 5685736.15 95.00 +598895.03 5683378.17 96.25 +598895.08 5683181.94 95.00 +598895.12 5681505.88 96.25 +598895.31 5685855.27 95.00 +598895.38 5677815.89 98.75 +598895.82 5683676.44 95.00 +598896.08 5683557.91 95.00 +598896.19 5677784.96 98.50 +598896.29 5680611.40 97.50 +598896.37 5677112.32 101.25 +598896.49 5683018.88 96.25 +598896.63 5678995.19 98.75 +598896.63 5683297.79 96.25 +598896.65 5683550.28 95.00 +598897.34 5682422.01 96.25 +598897.43 5681549.72 96.25 +598897.52 5678563.57 98.75 +598897.55 5678573.55 98.75 +598897.58 5678583.53 98.75 +598897.77 5683594.46 96.25 +598897.82 5681340.58 96.25 +598897.89 5679460.43 98.75 +598898.01 5682371.45 96.25 +598898.04 5683091.98 95.00 +598898.15 5683644.32 96.25 +598898.16 5683258.47 96.25 +598898.19 5681357.57 96.25 +598898.27 5683328.40 95.00 +598898.40 5681305.80 96.25 +598898.40 5677770.15 98.75 +598898.44 5685689.17 95.00 +598898.56 5685745.49 95.00 +598898.82 5687391.30 95.00 +598898.84 5677824.79 98.75 +598898.92 5685460.15 95.00 +598898.95 5680585.62 98.75 +598898.96 5687603.29 95.00 +598899.06 5678252.43 98.75 +598899.11 5683338.14 95.00 +598899.39 5682431.32 95.00 +598899.64 5682469.37 96.25 +598899.65 5683354.26 96.25 +598899.67 5683288.36 96.25 +598899.69 5683318.69 95.00 +598899.69 5681316.29 96.25 +598899.82 5679123.04 98.75 +598900.00 5681175.84 96.25 +598900.21 5678593.03 98.75 +598900.23 5686278.19 95.00 +598900.72 5682314.11 96.25 +598900.85 5682119.77 96.25 +598901.06 5687655.01 95.00 +598901.10 5683308.98 95.00 +598901.57 5681480.64 96.25 +598901.58 5680146.40 98.75 +598901.59 5683174.46 95.00 +598901.67 5683249.13 96.25 +598901.71 5683347.54 95.00 +598901.81 5678555.31 98.75 +598901.82 5677792.37 98.50 +598901.90 5683603.55 96.25 +598901.97 5685754.87 95.00 +598902.20 5683555.80 95.00 +598902.44 5682457.58 95.00 +598902.65 5683371.72 96.25 +598902.81 5681499.72 96.25 +598902.82 5683011.29 96.25 +598902.86 5683484.98 95.00 +598902.89 5683083.59 95.00 +598902.90 5681160.15 96.25 +598902.95 5679722.08 98.75 +598903.53 5677105.35 101.25 +598903.68 5681490.39 96.25 +598903.70 5678602.38 98.75 +598903.87 5683279.30 96.25 +598903.94 5681111.17 97.50 +598904.01 5685680.88 95.00 +598904.09 5677567.03 100.00 +598904.47 5678989.07 98.75 +598904.49 5683681.19 95.00 +598904.65 5677777.93 98.75 +598904.91 5682100.14 96.25 +598904.92 5685764.42 95.00 +598904.93 5681543.14 96.25 +598904.98 5683478.64 95.00 +598905.03 5677832.62 98.75 +598905.04 5683299.99 95.00 +598905.19 5683239.78 96.25 +598905.20 5682439.08 95.00 +598905.28 5683651.31 96.25 +598905.58 5680614.57 97.50 +598906.02 5683612.64 96.25 +598906.25 5682366.07 96.25 +598906.66 5677800.36 98.50 +598906.73 5679465.10 98.75 +598906.99 5682423.24 96.25 +598907.10 5687396.88 95.00 +598907.49 5682475.05 96.25 +598907.64 5686271.52 95.00 +598907.66 5683075.16 95.00 +598907.78 5681340.93 96.25 +598907.97 5685463.75 95.00 +598908.04 5683492.02 95.00 +598908.16 5681358.35 96.25 +598908.16 5683270.28 96.25 +598908.24 5683167.07 95.00 +598908.27 5679128.28 98.75 +598908.38 5681306.26 96.25 +598908.38 5681474.96 96.25 +598908.44 5683343.75 95.00 +598908.46 5680588.40 98.75 +598908.67 5687605.56 95.00 +598908.69 5678548.08 98.75 +598908.70 5683230.43 96.25 +598908.91 5683665.48 95.00 +598908.92 5683290.98 95.00 +598909.03 5678252.07 98.75 +598909.03 5683354.18 96.25 +598909.16 5683003.69 96.25 +598909.50 5678610.47 98.75 +598909.55 5685672.56 95.00 +598909.55 5683621.98 96.25 +598909.67 5681316.86 96.25 +598909.74 5683065.87 95.00 +598909.75 5687650.06 95.00 +598909.81 5683488.08 94.90 +598909.99 5681175.93 96.25 +598910.27 5683365.26 96.25 +598910.37 5682312.08 96.25 +598910.52 5682117.28 96.25 +598910.58 5683500.43 95.00 +598910.64 5685771.99 95.00 +598910.73 5683056.23 95.00 +598910.98 5687368.22 95.00 +598911.01 5677098.78 101.25 +598911.41 5677785.25 98.75 +598911.42 5680144.75 98.75 +598911.49 5677808.36 98.50 +598912.00 5682457.30 95.00 +598912.25 5683482.78 95.00 +598912.42 5683658.29 96.25 +598912.48 5683261.28 96.25 +598912.51 5681157.48 96.25 +598912.57 5677572.25 100.00 +598912.65 5681536.83 96.25 +598912.76 5677838.89 98.75 +598912.85 5683221.36 96.25 +598912.89 5683046.84 95.00 +598912.89 5679723.07 98.75 +598912.92 5683282.03 95.00 +598912.96 5683335.09 95.00 +598913.04 5683631.33 96.25 +598913.05 5683674.30 95.00 +598913.43 5686263.38 95.00 +598913.55 5681128.12 96.25 +598913.60 5682482.73 96.25 +598913.78 5681110.85 97.50 +598913.87 5682041.38 96.25 +598913.92 5683682.63 95.00 +598913.98 5687377.60 95.00 +598914.07 5678987.06 98.75 +598914.10 5682441.50 95.00 +598914.28 5681118.39 96.25 +598914.32 5683345.86 96.25 +598914.53 5683303.94 94.75 +598914.57 5682097.80 96.25 +598914.63 5682360.95 96.25 +598914.73 5680618.43 97.50 +598914.84 5683159.63 95.00 +598914.85 5682032.22 96.25 +598914.92 5685664.16 95.00 +598914.97 5682995.70 96.25 +598915.23 5687402.70 95.00 +598915.41 5683490.72 95.00 +598915.57 5679469.77 98.75 +598915.65 5683506.24 95.00 +598915.75 5687360.59 95.00 +598915.96 5683037.65 95.00 +598916.10 5683325.79 95.00 +598916.13 5685469.31 95.00 +598916.47 5678617.37 98.75 +598916.63 5678542.18 98.75 +598916.67 5683666.97 95.00 +598916.78 5679133.46 98.75 +598916.78 5682422.27 96.25 +598916.81 5683252.28 96.25 +598917.02 5682491.86 96.25 +598917.06 5677815.84 98.50 +598917.21 5681478.38 96.25 +598917.23 5683212.38 96.25 +598917.37 5682050.43 96.25 +598917.54 5683499.23 95.00 +598917.63 5683358.52 96.25 +598917.70 5681341.62 96.25 +598917.72 5687609.80 95.00 +598917.75 5683640.01 96.25 +598918.03 5681359.79 96.25 +598918.13 5683273.72 95.00 +598918.19 5683028.26 95.00 +598918.27 5680590.20 98.75 +598918.35 5681306.96 96.25 +598918.43 5687645.12 95.00 +598918.46 5677792.31 98.75 +598918.60 5685654.89 95.00 +598918.69 5685777.90 95.00 +598918.70 5686254.89 95.00 +598918.91 5677092.67 101.25 +598918.96 5678252.78 98.75 +598919.01 5683337.05 96.25 +598919.36 5681178.43 96.25 +598919.56 5683018.67 95.00 +598919.56 5681317.85 96.25 +598919.79 5681135.89 96.25 +598920.02 5682501.21 96.25 +598920.03 5682114.20 96.25 +598920.11 5682310.49 96.25 +598920.48 5682987.49 96.25 +598920.55 5681530.74 96.25 +598920.57 5687384.62 95.00 +598920.65 5677845.00 98.75 +598920.67 5682024.12 96.25 +598920.86 5683663.53 96.25 +598920.88 5685645.16 95.00 +598920.90 5677577.77 100.00 +598921.19 5683151.98 95.00 +598921.25 5680143.09 98.75 +598921.25 5683317.51 95.00 +598921.50 5683009.28 95.00 +598921.59 5681154.64 96.25 +598921.60 5686245.53 95.00 +598921.82 5682457.58 95.00 +598921.90 5683203.56 96.25 +598921.90 5683243.71 96.25 +598922.09 5683264.96 95.00 +598922.66 5679725.16 98.75 +598922.97 5683674.67 95.00 +598923.00 5677823.05 98.50 +598923.03 5685476.53 95.00 +598923.06 5685635.42 95.00 +598923.15 5686235.66 95.00 +598923.20 5683255.21 95.00 +598923.28 5681145.18 96.25 +598923.28 5681114.17 96.25 +598923.41 5683328.09 96.25 +598923.62 5681110.53 97.50 +598923.64 5682357.70 96.25 +598923.65 5682058.18 96.25 +598923.87 5683647.90 96.25 +598923.93 5678985.71 98.75 +598923.95 5682440.41 95.00 +598923.96 5680622.07 97.50 +598924.13 5682094.96 96.25 +598924.14 5687406.85 95.00 +598924.23 5682510.01 96.25 +598924.52 5687356.21 95.00 +598924.78 5683351.55 96.25 +598924.94 5678622.66 98.75 +598924.97 5682407.90 96.25 +598925.20 5678537.06 98.75 +598925.24 5686225.89 95.00 +598925.25 5681484.30 96.25 +598925.30 5679471.93 98.75 +598925.31 5679138.60 98.75 +598925.63 5677799.24 98.75 +598925.80 5685625.89 95.00 +598925.85 5683308.95 95.00 +598925.98 5682979.27 96.25 +598926.20 5687638.87 95.00 +598926.27 5683000.84 95.00 +598926.34 5685784.28 95.00 +598926.52 5682422.95 96.25 +598926.57 5683194.73 96.25 +598926.76 5687614.04 95.00 +598926.97 5677086.80 101.25 +598927.23 5683235.27 96.25 +598927.49 5681343.64 96.25 +598927.54 5683144.33 95.00 +598927.55 5679067.94 99.00 +598927.74 5683299.43 95.00 +598927.83 5683319.13 96.25 +598927.86 5681361.63 96.25 +598927.86 5686216.27 95.00 +598927.89 5677584.75 100.00 +598927.97 5683289.62 95.00 +598928.12 5680591.75 98.75 +598928.17 5682399.04 96.25 +598928.18 5681524.31 96.25 +598928.18 5681308.60 96.25 +598928.24 5683247.70 95.00 +598928.85 5678253.99 98.75 +598928.88 5681180.59 96.25 +598928.95 5677830.26 98.50 +598929.01 5681321.11 96.25 +598929.31 5682019.73 96.25 +598929.34 5677849.71 98.75 +598929.35 5687389.32 95.00 +598929.44 5682307.58 96.25 +598929.49 5682111.01 96.25 +598929.56 5683682.11 95.00 +598929.56 5683668.44 96.25 +598929.99 5683655.79 96.25 +598930.22 5682065.67 96.25 +598930.23 5681157.22 96.00 +598930.26 5682517.71 96.25 +598930.30 5683280.15 95.00 +598930.56 5682970.53 96.25 +598930.74 5685482.89 95.00 +598930.85 5685617.27 95.00 +598930.92 5682460.45 95.00 +598931.04 5682413.82 96.25 +598931.09 5680141.44 98.75 +598931.32 5682493.39 95.00 +598931.35 5686206.91 95.00 +598931.57 5687630.86 95.00 +598931.63 5682992.78 95.00 +598931.93 5683344.58 96.25 +598932.13 5681147.98 96.00 +598932.35 5687411.94 95.00 +598932.38 5679727.48 98.75 +598932.55 5682503.01 95.00 +598932.56 5683226.82 96.25 +598932.65 5683310.39 96.25 +598932.90 5682090.91 96.25 +598932.90 5687621.73 95.00 +598933.04 5683187.22 96.25 +598933.07 5677805.89 98.75 +598933.13 5681113.13 96.25 +598933.20 5680625.67 97.50 +598933.22 5682358.34 96.25 +598933.35 5685791.41 95.00 +598933.42 5681109.38 97.50 +598933.59 5679477.38 98.75 +598933.72 5678627.25 98.75 +598933.77 5678531.95 98.75 +598933.80 5682439.39 95.00 +598933.84 5678986.52 98.75 +598933.95 5687358.07 95.00 +598933.95 5679143.50 98.75 +598934.13 5677592.55 100.00 +598934.20 5681488.72 96.25 +598934.25 5682391.31 96.25 +598934.54 5683300.61 96.25 +598934.65 5683271.50 95.00 +598934.73 5683137.54 95.00 +598934.77 5682961.58 96.25 +598934.94 5682340.76 96.25 +598934.95 5683290.69 96.25 +598935.27 5683253.53 95.00 +598935.29 5677081.28 101.25 +598935.65 5682332.54 96.25 +598935.94 5686198.07 95.00 +598935.95 5682425.51 96.25 +598936.00 5682486.25 95.00 +598936.08 5681164.55 96.00 +598936.20 5683689.51 95.00 +598936.25 5682512.16 95.00 +598936.57 5682073.25 96.25 +598936.67 5682525.14 96.25 +598936.78 5685609.22 95.00 +598936.82 5682502.17 94.75 +598936.98 5681521.17 96.25 +598937.06 5683662.83 96.25 +598937.07 5681346.37 96.25 +598937.21 5682984.87 95.00 +598937.41 5683281.62 96.25 +598937.65 5683262.84 95.00 +598937.68 5681363.48 96.25 +598937.79 5682082.22 96.25 +598937.86 5681310.99 96.25 +598938.00 5680593.13 98.75 +598938.12 5682105.97 96.25 +598938.16 5682467.21 95.00 +598938.28 5681324.81 96.25 +598938.38 5682303.40 96.25 +598938.48 5687393.39 95.00 +598938.50 5683218.80 96.25 +598938.53 5678256.41 98.75 +598938.62 5677853.37 98.75 +598938.80 5681180.10 96.25 +598938.98 5682952.63 96.25 +598939.00 5685488.25 95.00 +598939.04 5683337.58 96.25 +598939.05 5682018.02 96.25 +598939.22 5683670.39 96.25 +598939.38 5687419.04 95.00 +598939.63 5682383.12 96.25 +598939.73 5681141.67 96.00 +598939.92 5682409.68 96.25 +598939.95 5677813.04 98.75 +598940.29 5682364.72 96.25 +598940.35 5685798.53 95.00 +598940.37 5677600.35 100.00 +598940.39 5683180.46 96.25 +598940.93 5680139.82 98.75 +598940.96 5686189.44 95.00 +598941.41 5682493.49 95.00 +598941.74 5679483.18 98.75 +598942.01 5682347.54 96.25 +598942.13 5679729.68 98.75 +598942.30 5680629.61 97.50 +598942.34 5678526.84 98.75 +598942.39 5683697.29 95.00 +598942.50 5682943.39 96.25 +598942.54 5683131.38 95.00 +598942.54 5682374.06 96.25 +598942.80 5682976.95 95.00 +598942.83 5682532.79 96.25 +598942.92 5687362.21 95.00 +598942.97 5681107.04 97.50 +598943.03 5681114.54 96.25 +598943.23 5682326.51 96.25 +598943.25 5678630.21 98.75 +598943.32 5679146.86 98.75 +598943.38 5682518.10 95.00 +598943.39 5682503.17 95.00 +598943.42 5678988.84 98.75 +598943.55 5685601.91 95.00 +598943.67 5682439.47 95.00 +598943.80 5681488.10 96.25 +598944.34 5677077.08 101.25 +598944.42 5683274.62 96.25 +598944.58 5683210.88 96.25 +598945.16 5683258.95 95.00 +598945.26 5682428.62 96.25 +598945.29 5682474.08 95.00 +598945.52 5682454.42 94.75 +598945.66 5682099.60 96.25 +598945.72 5677821.18 98.75 +598945.93 5681165.48 96.00 +598945.94 5682934.12 96.25 +598945.97 5682297.48 96.25 +598946.13 5683330.55 96.25 +598946.17 5677608.48 100.00 +598946.18 5681368.62 96.25 +598946.46 5686181.10 95.00 +598946.47 5677849.39 98.75 +598946.47 5681349.77 96.25 +598946.68 5681330.00 96.25 +598946.83 5685806.09 95.00 +598946.86 5687425.52 95.00 +598946.95 5681521.17 96.25 +598947.03 5682512.35 95.00 +598947.06 5681314.89 96.25 +598947.46 5682054.26 96.25 +598947.58 5680595.68 98.75 +598947.60 5687397.46 95.00 +598947.72 5682397.41 96.25 +598947.80 5678259.83 98.75 +598948.04 5683251.01 95.00 +598948.29 5683174.43 96.25 +598948.33 5682063.60 96.25 +598948.34 5682540.89 96.25 +598948.51 5685491.30 95.00 +598948.57 5683705.08 95.00 +598948.59 5677830.62 98.75 +598948.64 5682969.24 95.00 +598948.71 5681180.60 96.25 +598948.90 5681138.04 96.00 +598948.94 5682017.64 96.25 +598949.01 5682407.11 96.25 +598949.27 5683417.77 96.25 +598949.36 5682388.61 96.25 +598949.48 5682460.74 94.75 +598949.52 5679489.45 98.75 +598949.72 5677840.37 98.75 +598949.73 5682353.79 96.25 +598949.86 5682925.08 96.25 +598950.00 5683124.80 95.00 +598950.36 5682482.59 95.00 +598950.44 5683202.83 96.25 +598950.49 5683426.94 96.25 +598950.63 5685594.87 95.00 +598950.77 5680138.20 98.75 +598950.78 5687368.39 95.00 +598950.92 5678521.75 98.75 +598951.05 5680634.28 97.50 +598951.12 5683253.80 94.90 +598951.71 5682091.77 96.25 +598951.78 5681482.09 96.25 +598951.88 5677616.68 100.00 +598951.94 5679731.60 98.75 +598952.04 5682321.96 96.25 +598952.11 5686172.86 95.00 +598952.12 5682072.85 96.25 +598952.18 5681103.61 97.50 +598952.24 5683268.42 96.25 +598952.33 5681112.70 96.25 +598952.60 5685814.25 95.00 +598952.65 5683408.37 96.25 +598952.66 5678992.54 98.75 +598952.90 5682290.61 96.25 +598952.93 5678632.05 98.75 +598952.98 5681337.65 96.25 +598953.07 5679148.22 98.75 +598953.28 5682549.37 96.25 +598953.41 5677072.89 101.25 +598953.42 5682441.23 95.00 +598953.43 5683257.68 95.00 +598953.73 5681375.16 96.25 +598953.97 5682379.95 96.25 +598954.07 5683056.92 95.00 +598954.09 5683713.33 95.00 +598954.18 5682491.71 95.00 +598954.38 5682453.75 94.75 +598954.42 5681321.37 96.25 +598954.70 5683193.80 96.25 +598954.82 5682082.47 96.25 +598954.83 5682429.36 96.25 +598954.89 5683330.98 96.25 +598954.93 5681347.14 96.25 +598955.01 5682916.63 96.25 +598955.07 5682961.99 95.00 +598955.07 5683398.70 96.25 +598955.64 5681509.19 96.25 +598955.68 5681163.39 96.00 +598955.73 5687430.12 95.00 +598955.86 5683047.85 95.00 +598956.13 5682049.64 96.25 +598956.17 5682361.01 96.25 +598956.37 5678264.95 98.75 +598956.49 5683174.29 96.25 +598956.60 5679496.47 98.75 +598956.74 5681522.91 96.25 +598956.74 5683247.35 95.00 +598956.83 5683184.08 96.25 +598956.96 5680599.09 98.75 +598957.03 5683388.91 96.25 +598957.03 5682370.51 96.25 +598957.07 5687400.60 95.00 +598957.08 5682410.75 96.25 +598957.28 5682397.83 96.25 +598957.32 5683433.44 96.25 +598957.32 5682342.42 96.00 +598957.38 5682539.77 95.00 +598957.58 5677624.88 100.00 +598957.70 5682500.98 95.00 +598957.76 5686164.62 95.00 +598957.84 5682420.48 96.25 +598958.00 5682464.81 94.75 +598958.18 5682021.39 96.25 +598958.18 5685491.14 95.00 +598958.25 5683119.45 95.00 +598958.28 5681183.34 96.25 +598958.34 5685822.43 95.00 +598958.40 5683379.04 96.25 +598958.45 5685588.65 95.00 +598958.55 5681330.25 96.25 +598958.55 5682530.57 95.00 +598958.60 5681137.20 96.00 +598959.19 5683369.09 96.25 +598959.33 5683064.79 95.00 +598959.51 5678516.66 98.75 +598959.54 5681475.79 96.25 +598959.56 5681097.90 97.50 +598959.66 5682556.82 96.25 +598959.81 5680638.95 97.50 +598959.94 5681106.46 96.25 +598959.97 5683721.29 95.00 +598959.98 5683359.13 96.25 +598960.04 5682383.20 96.00 +598960.13 5687371.44 95.00 +598960.15 5682908.18 96.25 +598960.26 5683038.95 95.00 +598960.31 5683339.18 96.25 +598960.35 5683349.16 96.25 +598960.36 5683262.61 96.25 +598960.38 5682611.84 96.25 +598960.59 5680136.45 98.75 +598960.70 5682549.13 95.00 +598960.86 5682621.79 96.25 +598960.89 5683251.88 95.00 +598961.19 5682601.94 96.25 +598961.30 5682285.43 96.25 +598961.31 5682318.60 96.25 +598961.35 5683614.32 95.00 +598961.49 5680960.85 98.75 +598961.49 5682954.73 95.00 +598961.50 5682350.89 96.00 +598961.51 5681339.80 96.25 +598961.55 5682510.10 95.00 +598961.75 5679733.53 98.75 +598961.90 5683604.48 95.00 +598961.90 5678996.25 98.75 +598962.07 5682337.42 96.00 +598962.27 5681502.09 96.25 +598962.27 5681088.43 97.50 +598962.29 5681513.29 96.25 +598962.33 5682445.55 95.00 +598962.35 5683424.81 96.25 +598962.50 5680951.13 98.75 +598962.57 5682458.10 94.75 +598962.58 5681379.47 96.25 +598962.61 5677069.03 101.25 +598962.89 5686156.07 95.00 +598962.91 5678631.71 98.75 +598962.98 5683594.59 95.00 +598963.02 5679148.45 98.75 +598963.15 5680970.47 98.75 +598963.15 5679504.01 98.75 +598963.28 5677633.09 100.00 +598963.51 5682472.44 94.75 +598963.54 5682631.29 96.25 +598963.90 5683623.93 95.00 +598964.05 5685830.62 95.00 +598964.30 5683029.89 95.00 +598964.36 5682592.89 96.25 +598964.51 5680941.71 98.75 +598964.56 5682375.69 96.00 +598964.67 5687432.64 95.00 +598964.90 5682558.19 95.00 +598965.02 5683584.87 95.00 +598965.20 5678269.05 98.75 +598965.25 5681160.65 96.00 +598965.39 5682564.76 96.25 +598965.51 5681079.10 97.50 +598965.57 5681348.88 96.25 +598965.57 5682899.95 96.25 +598965.71 5682946.14 95.00 +598965.93 5683415.57 96.25 +598966.02 5682048.24 96.25 +598966.08 5685582.23 95.00 +598966.09 5682393.35 96.25 +598966.12 5682499.62 94.75 +598966.15 5682386.17 96.00 +598966.26 5680602.67 98.75 +598966.27 5681525.82 96.25 +598966.44 5683633.55 95.00 +598966.51 5681098.93 96.25 +598966.62 5682481.31 94.75 +598966.65 5687403.43 95.00 +598966.75 5682610.48 95.00 +598966.97 5682026.10 96.25 +598967.07 5682533.54 95.00 +598967.16 5683575.16 95.00 +598967.28 5683115.30 95.00 +598967.38 5682358.32 96.00 +598967.49 5686147.21 95.00 +598967.55 5680978.96 98.75 +598967.62 5683727.40 95.00 +598967.69 5682490.34 94.75 +598967.85 5679512.77 98.75 +598967.86 5685488.78 95.00 +598967.86 5683020.63 95.00 +598967.86 5681470.32 96.25 +598967.93 5682619.99 95.00 +598967.95 5681185.80 96.25 +598968.02 5683256.22 96.25 +598968.10 5678511.58 98.75 +598968.13 5682516.20 95.00 +598968.23 5681139.36 96.00 +598968.32 5682639.97 96.25 +598968.54 5681069.72 97.50 +598968.54 5683066.62 95.00 +598968.57 5680643.62 97.50 +598968.60 5683405.95 96.25 +598968.79 5682367.69 96.00 +598968.79 5682507.77 94.75 +598968.88 5682343.87 96.00 +598968.98 5683643.16 95.00 +598969.17 5682937.09 95.00 +598969.19 5680933.13 98.75 +598969.30 5683565.45 95.00 +598969.32 5682464.69 94.75 +598969.57 5677640.84 100.00 +598969.70 5682280.25 96.25 +598969.77 5685838.81 95.00 +598969.85 5682629.38 95.00 +598969.88 5687373.60 95.00 +598970.29 5683682.66 95.00 +598970.38 5682451.30 95.00 +598970.39 5680134.56 98.75 +598970.52 5683672.72 95.00 +598970.59 5682566.35 95.00 +598970.64 5682573.03 96.25 +598970.74 5683662.78 95.00 +598970.94 5682316.24 96.25 +598970.97 5683652.84 95.00 +598971.12 5686137.90 95.00 +598971.16 5681497.58 96.25 +598971.25 5681060.23 97.50 +598971.28 5683396.33 96.25 +598971.33 5678999.46 98.75 +598971.44 5683555.74 95.00 +598971.49 5682605.63 95.00 +598971.56 5679735.45 98.75 +598971.76 5683011.50 95.00 +598971.87 5677065.31 101.25 +598972.16 5679521.79 98.75 +598972.24 5681513.90 96.25 +598972.39 5682379.62 96.00 +598972.44 5681379.28 96.25 +598972.53 5682892.93 96.25 +598972.60 5682588.52 96.25 +598972.68 5682541.81 95.00 +598972.75 5682352.52 96.00 +598972.78 5682473.46 94.75 +598972.88 5678631.36 98.75 +598972.93 5685574.96 95.00 +598972.98 5679148.68 98.75 +598973.05 5681154.79 96.00 +598973.10 5683692.15 95.00 +598973.20 5681354.20 96.25 +598973.23 5682928.31 95.00 +598973.45 5683721.58 95.00 +598973.58 5683546.03 95.00 +598973.61 5687428.19 95.00 +598973.86 5682501.45 94.75 +598974.11 5682637.71 95.00 +598974.28 5681050.85 97.50 +598974.44 5681443.70 96.25 +598974.49 5682482.74 94.75 +598974.55 5682388.19 96.25 +598974.55 5681093.86 96.25 +598974.73 5683701.85 95.00 +598974.75 5686128.59 95.00 +598974.83 5683536.17 95.00 +598974.94 5682627.70 94.75 +598974.98 5682492.12 94.75 +598975.00 5683711.79 95.00 +598975.18 5678268.91 98.75 +598975.30 5682646.55 96.25 +598975.35 5680606.78 98.75 +598975.46 5682361.58 96.00 +598975.46 5683249.57 96.25 +598975.55 5681529.41 96.25 +598975.57 5682370.73 96.00 +598975.57 5682614.26 95.00 +598975.57 5681145.41 96.00 +598975.60 5680925.76 98.75 +598975.81 5683002.44 95.00 +598975.93 5683387.60 96.25 +598975.94 5682047.01 96.25 +598975.96 5683526.29 95.00 +598976.03 5677648.46 100.00 +598976.23 5687406.26 95.00 +598976.33 5685846.23 95.00 +598976.34 5680982.08 98.75 +598976.50 5682513.13 95.00 +598976.69 5682027.91 96.25 +598976.69 5678506.50 98.75 +598976.71 5683112.18 95.00 +598976.74 5681182.08 96.25 +598976.77 5685484.27 95.00 +598976.88 5679530.60 98.75 +598976.92 5683516.39 95.00 +598977.03 5680648.79 97.50 +598977.04 5681467.17 96.25 +598977.28 5686118.93 95.00 +598977.41 5682458.20 95.00 +598977.50 5682919.61 95.00 +598977.58 5682573.37 95.00 +598977.60 5682596.52 96.25 +598977.74 5683506.48 95.00 +598977.84 5681102.62 96.25 +598977.89 5681041.66 97.50 +598978.18 5682579.15 96.25 +598978.43 5682606.46 96.25 +598978.44 5682275.75 96.25 +598978.45 5683066.28 95.00 +598978.46 5682530.32 96.25 +598978.56 5683496.57 95.00 +598978.73 5682623.32 95.00 +598979.49 5682885.90 96.25 +598979.51 5683486.68 95.00 +598979.59 5681112.46 96.25 +598979.65 5680131.71 98.75 +598979.66 5682520.64 96.25 +598979.72 5687375.31 95.00 +598979.78 5685567.68 95.00 +598979.80 5686109.26 95.00 +598979.89 5682993.39 95.00 +598980.04 5681493.03 96.25 +598980.06 5680947.37 99.00 +598980.25 5682548.19 95.00 +598980.52 5683476.78 95.00 +598980.52 5683010.75 96.25 +598980.61 5682314.04 96.25 +598980.65 5681437.38 96.25 +598980.78 5679002.61 98.75 +598980.93 5683298.53 96.30 +598980.97 5681449.32 96.25 +598981.05 5683020.63 96.25 +598981.27 5677061.94 101.25 +598981.34 5679737.55 98.75 +598981.38 5683379.24 96.25 +598981.50 5681032.48 97.50 +598981.50 5682504.65 95.00 +598981.52 5682615.90 96.25 +598981.53 5683466.89 95.00 +598981.61 5679539.41 98.75 +598981.68 5682539.04 96.25 +598981.76 5682910.91 95.00 +598981.95 5681376.21 96.25 +598982.02 5680918.39 98.75 +598982.14 5678044.10 98.75 +598982.15 5683001.04 96.25 +598982.22 5681514.00 96.25 +598982.22 5682381.91 96.25 +598982.24 5682642.04 95.00 +598982.53 5678053.91 98.75 +598982.56 5682466.51 95.00 +598982.62 5678633.50 98.75 +598982.67 5687423.96 95.00 +598982.80 5678034.25 98.75 +598982.80 5683457.03 95.00 +598982.80 5683030.31 96.25 +598982.81 5679147.71 98.75 +598982.90 5683242.91 96.25 +598983.13 5677655.35 100.00 +598983.19 5681354.05 96.25 +598983.26 5682567.67 94.75 +598983.49 5682901.57 95.00 +598983.70 5680976.88 98.75 +598983.80 5686100.17 95.00 +598983.81 5682891.89 95.00 +598983.98 5678063.67 98.75 +598984.02 5685852.61 95.00 +598984.06 5681534.57 96.25 +598984.09 5680611.51 98.75 +598984.11 5682984.41 95.00 +598984.21 5682631.00 95.00 +598984.34 5683447.21 95.00 +598984.45 5682650.50 96.25 +598984.77 5681023.17 97.50 +598984.84 5682495.41 95.00 +598985.01 5682562.96 94.75 +598985.14 5678268.47 98.75 +598985.22 5681120.71 96.25 +598985.28 5687409.83 95.00 +598985.28 5678501.43 98.75 +598985.35 5681177.91 96.25 +598985.38 5680046.55 98.75 +598985.44 5678073.44 98.75 +598985.46 5680654.03 97.50 +598985.49 5680056.30 98.75 +598985.59 5682579.32 95.00 +598985.59 5682512.79 96.25 +598985.69 5685479.76 95.00 +598985.69 5681211.98 96.25 +598985.69 5682044.97 96.25 +598985.72 5682475.83 95.00 +598985.83 5681202.22 96.25 +598985.88 5683437.39 95.00 +598985.89 5678024.90 98.75 +598985.98 5682025.89 96.25 +598986.00 5682878.45 96.25 +598986.24 5683109.37 95.00 +598986.33 5679548.22 98.75 +598986.35 5680124.36 98.75 +598986.44 5682485.71 95.00 +598986.73 5682275.26 95.00 +598986.94 5681466.21 96.25 +598986.94 5680909.95 98.75 +598986.96 5683370.96 96.25 +598986.99 5682583.49 96.25 +598987.25 5682992.50 96.25 +598987.38 5680036.77 98.75 +598987.52 5683234.07 96.25 +598987.58 5682272.03 96.25 +598987.64 5685561.55 95.00 +598987.65 5680066.04 98.75 +598987.82 5681013.79 97.50 +598987.84 5678015.41 98.75 +598987.90 5683427.65 95.00 +598987.97 5681221.60 96.25 +598987.98 5683063.49 95.00 +598988.00 5679009.42 98.75 +598988.03 5682623.25 96.25 +598988.18 5678082.92 98.75 +598988.21 5682546.20 96.25 +598988.22 5680968.24 98.75 +598988.28 5682554.14 95.00 +598988.34 5682975.43 95.00 +598988.47 5686091.34 95.00 +598988.86 5683038.02 96.25 +598988.93 5681488.51 96.25 +598989.39 5680075.85 98.75 +598989.43 5682638.76 95.00 +598989.55 5687376.86 95.00 +598989.72 5682375.70 96.25 +598989.78 5680027.10 98.75 +598989.89 5687418.24 95.00 +598989.96 5683417.93 95.00 +598990.05 5681193.29 96.25 +598990.18 5677057.57 101.25 +598990.42 5682312.57 96.25 +598990.55 5681437.24 96.25 +598990.57 5681004.31 97.50 +598990.57 5682572.95 94.75 +598990.80 5680115.47 98.75 +598990.90 5680085.71 98.75 +598990.90 5681450.46 96.25 +598990.92 5678092.41 98.75 +598991.10 5679739.70 98.75 +598991.51 5682504.95 96.25 +598991.54 5677660.74 100.00 +598991.55 5679018.46 98.75 +598991.56 5680105.52 98.75 +598991.69 5681377.14 96.25 +598991.77 5680901.46 98.75 +598991.82 5681515.65 96.25 +598991.85 5679556.51 98.75 +598991.86 5681350.00 96.25 +598991.89 5680959.18 98.75 +598992.03 5685858.47 95.00 +598992.08 5681540.51 96.25 +598992.20 5678636.29 98.75 +598992.22 5683408.25 95.00 +598992.30 5680617.17 98.75 +598992.32 5681184.01 96.25 +598992.33 5680095.58 98.75 +598992.34 5683225.33 96.25 +598992.44 5681230.54 96.25 +598992.50 5679145.42 98.75 +598992.57 5682966.45 95.00 +598992.69 5681250.06 96.25 +598992.92 5683362.95 96.25 +598993.01 5682279.97 95.00 +598993.03 5682984.40 96.25 +598993.17 5681240.15 96.25 +598993.23 5682566.78 94.75 +598993.29 5678101.99 98.75 +598993.29 5682366.45 96.25 +598993.74 5679028.16 98.75 +598993.81 5681330.29 96.25 +598993.81 5681340.28 96.25 +598993.88 5680018.18 98.75 +598993.88 5682653.61 96.25 +598993.89 5680659.27 97.50 +598994.04 5678007.76 98.75 +598994.18 5686083.17 95.00 +598994.22 5678497.02 98.75 +598994.40 5681259.89 96.25 +598994.56 5685475.17 95.00 +598994.84 5681122.73 96.25 +598994.99 5682021.69 96.25 +598995.06 5678267.38 98.75 +598995.07 5682582.48 95.00 +598995.14 5680995.74 97.50 +598995.18 5679038.01 98.75 +598995.25 5682042.07 96.25 +598995.29 5682630.09 96.25 +598995.31 5683398.80 95.00 +598995.35 5678111.64 98.75 +598995.45 5680950.08 98.75 +598995.49 5683353.69 96.25 +598995.63 5682271.54 95.00 +598995.73 5685555.69 95.00 +598995.78 5683106.56 95.00 +598995.90 5682560.39 95.00 +598996.00 5682587.37 96.25 +598996.14 5682552.01 96.25 +598996.16 5681462.97 96.25 +598996.26 5682356.99 96.25 +598996.26 5681320.91 96.25 +598996.61 5680892.96 98.75 +598996.72 5682268.31 96.25 +598996.78 5682957.46 95.00 +598997.48 5678121.28 98.75 +598997.50 5683060.70 95.00 +598997.63 5679047.61 98.75 +598997.63 5683216.87 96.25 +598997.95 5681484.25 96.25 +598997.95 5683344.08 96.25 +598998.06 5682424.76 94.75 +598998.15 5679564.27 98.75 +598998.39 5677998.89 98.75 +598998.40 5682577.51 94.75 +598998.40 5683389.35 95.00 +598998.41 5683040.85 96.25 +598998.68 5677052.33 101.25 +598998.82 5687380.56 95.00 +598998.93 5680940.94 98.75 +598998.99 5682347.46 96.25 +598999.00 5680624.56 98.75 +598999.13 5681522.10 96.25 +598999.43 5681454.57 96.25 +598999.47 5682503.81 96.25 +598999.53 5682415.13 94.75 +598999.74 5680010.12 98.75 +598999.80 5681382.94 96.25 +598999.83 5682977.16 96.25 +598999.96 5677666.12 100.00 +599000.00 5678130.82 98.75 +599000.13 5682311.95 96.25 +599000.31 5686075.29 95.00 +599000.54 5681437.62 96.25 +599000.88 5679140.18 98.75 +599000.88 5679741.73 98.75 +599000.95 5682948.45 95.00 +599001.01 5683207.53 96.25 +599001.04 5680987.83 97.50 +599001.07 5685862.74 95.00 +599001.10 5679056.94 98.75 +599001.10 5681265.86 96.25 +599001.10 5681538.84 96.25 +599001.12 5683334.61 96.25 +599001.21 5682571.12 94.75 +599001.75 5683379.99 95.00 +599001.77 5678639.12 98.75 +599002.09 5677989.77 98.75 +599002.14 5680931.71 98.75 +599002.39 5682338.14 96.25 +599002.67 5682278.85 95.00 +599002.72 5680663.77 97.50 +599003.28 5685470.30 95.00 +599003.28 5678492.84 98.75 +599003.34 5682512.84 96.25 +599003.42 5682406.13 94.75 +599003.48 5681319.20 96.25 +599003.52 5682566.64 95.00 +599003.61 5682655.77 96.25 +599003.63 5682634.87 96.25 +599003.86 5681208.04 96.25 +599003.86 5681218.03 96.25 +599003.95 5682557.97 96.25 +599003.99 5685550.08 95.00 +599004.00 5678139.80 98.75 +599004.20 5680887.28 98.75 +599004.26 5681530.24 96.25 +599004.30 5681228.01 96.25 +599004.46 5682451.65 94.75 +599004.52 5682267.77 95.00 +599004.53 5682018.79 96.25 +599004.55 5682585.64 95.00 +599004.57 5682038.44 96.25 +599004.66 5683198.32 96.25 +599004.69 5683325.29 96.25 +599004.83 5681123.03 96.25 +599004.85 5681198.14 96.25 +599004.86 5682429.35 94.75 +599004.89 5681237.99 96.25 +599004.94 5678266.01 98.75 +599004.99 5682939.39 95.00 +599005.02 5677980.34 98.75 +599005.10 5680632.39 98.75 +599005.15 5683370.65 95.00 +599005.22 5682590.74 96.25 +599005.45 5681328.73 96.25 +599005.47 5683104.42 95.00 +599005.54 5682318.89 96.25 +599005.62 5682328.78 96.25 +599005.68 5682522.39 96.25 +599005.75 5682264.33 96.25 +599005.76 5681257.89 96.25 +599005.79 5681247.94 96.25 +599006.04 5682582.35 94.75 +599006.21 5682969.67 96.25 +599006.25 5679570.10 98.75 +599006.36 5681338.68 96.25 +599006.76 5686067.68 95.00 +599006.88 5683057.47 95.00 +599006.90 5680979.90 97.50 +599006.94 5680923.28 98.75 +599006.99 5679064.85 98.75 +599007.01 5682459.68 94.75 +599007.07 5677046.93 101.25 +599007.16 5687386.04 95.00 +599007.23 5681481.13 96.25 +599007.36 5681389.48 96.25 +599007.39 5679132.67 98.75 +599007.55 5681371.55 96.25 +599007.74 5681188.74 96.25 +599007.95 5677970.92 98.75 +599008.23 5683039.56 96.25 +599008.28 5680005.31 98.75 +599008.31 5683315.98 96.25 +599008.52 5677671.26 100.00 +599008.55 5683361.30 95.00 +599008.77 5682576.11 94.75 +599008.95 5682930.28 95.00 +599008.96 5682531.33 96.25 +599009.37 5682444.54 94.75 +599009.57 5681348.00 96.25 +599009.61 5681380.67 96.25 +599009.84 5683189.78 96.25 +599009.98 5680641.09 98.75 +599010.10 5685867.00 95.00 +599010.13 5682421.23 94.75 +599010.17 5678147.26 98.75 +599010.24 5681498.55 96.25 +599010.30 5682960.59 96.25 +599010.32 5682630.44 96.25 +599010.53 5681437.70 96.25 +599010.69 5680914.25 98.75 +599010.77 5680970.82 97.50 +599010.84 5681488.62 96.25 +599010.86 5682402.00 94.75 +599010.88 5679741.96 98.75 +599011.15 5682572.88 95.00 +599011.34 5678641.95 98.75 +599011.55 5682564.22 96.25 +599011.56 5683351.83 95.00 +599011.67 5680668.06 97.50 +599011.83 5682275.21 95.00 +599011.85 5682744.25 96.25 +599011.87 5679540.79 97.50 +599012.01 5685465.43 95.00 +599012.26 5683306.81 96.25 +599012.27 5685544.49 95.00 +599012.35 5678488.66 98.75 +599012.43 5682411.61 94.75 +599012.89 5682735.02 96.25 +599012.91 5682921.18 95.00 +599012.98 5682659.15 96.25 +599013.16 5680888.42 98.75 +599013.33 5679550.11 97.50 +599013.47 5681180.56 96.25 +599013.48 5682264.22 95.00 +599013.50 5679072.38 98.75 +599013.64 5686060.43 95.00 +599013.82 5679125.06 98.75 +599013.82 5677962.98 98.75 +599014.02 5682588.80 95.00 +599014.16 5682035.68 96.25 +599014.16 5682686.72 96.25 +599014.22 5682951.45 96.25 +599014.34 5682582.96 94.75 +599014.36 5683297.14 96.25 +599014.38 5682594.15 96.25 +599014.39 5682017.30 96.25 +599014.43 5680905.22 98.75 +599014.46 5678263.25 98.75 +599014.47 5679575.79 98.75 +599014.48 5683342.32 95.00 +599014.54 5681121.67 96.25 +599014.63 5680961.74 97.50 +599014.76 5682260.30 96.25 +599015.08 5682457.27 94.75 +599015.12 5680649.63 98.75 +599015.22 5682696.54 96.25 +599015.28 5681388.09 96.25 +599015.28 5683102.76 95.00 +599015.34 5677041.34 101.25 +599015.48 5683181.57 96.25 +599015.49 5687391.56 95.00 +599015.58 5683287.23 96.25 +599015.66 5681502.41 96.25 +599015.98 5682448.65 94.75 +599016.04 5682911.77 95.00 +599016.08 5681369.81 96.25 +599016.17 5683053.97 95.00 +599016.26 5682725.65 96.25 +599016.44 5681048.38 96.25 +599016.62 5682677.07 96.25 +599016.75 5681038.46 96.25 +599016.82 5683277.32 96.25 +599016.83 5680952.12 97.50 +599016.87 5681354.55 96.25 +599016.93 5682536.70 96.25 +599017.11 5683332.74 95.00 +599017.15 5677676.29 100.00 +599017.16 5680895.85 98.75 +599017.30 5681171.39 96.25 +599017.70 5682667.26 96.25 +599017.76 5681028.52 96.25 +599017.97 5678153.06 98.75 +599018.05 5680004.17 98.75 +599018.06 5681058.25 96.25 +599018.06 5683267.41 96.25 +599018.06 5683038.03 96.25 +599018.10 5682942.28 96.25 +599018.11 5682715.97 96.25 +599018.24 5682706.00 96.25 +599018.68 5682628.75 96.25 +599018.71 5685458.11 95.00 +599018.80 5682750.60 96.25 +599018.95 5680942.49 97.50 +599019.00 5679116.62 98.75 +599019.03 5679536.74 97.50 +599019.12 5682902.33 95.00 +599019.14 5682570.46 96.25 +599019.17 5679557.97 97.50 +599019.45 5683323.08 95.00 +599019.61 5682577.68 95.00 +599019.62 5685537.78 95.00 +599019.71 5681068.10 96.25 +599019.73 5685869.60 95.00 +599020.38 5679079.58 98.75 +599020.52 5686053.19 95.00 +599020.52 5681437.70 96.25 +599020.53 5680672.53 97.50 +599020.59 5680657.96 98.75 +599020.71 5681162.00 96.25 +599020.74 5677956.35 98.75 +599020.87 5679742.18 98.75 +599021.00 5678644.45 98.75 +599021.32 5682274.81 95.00 +599021.59 5678484.95 98.75 +599021.77 5683258.17 96.25 +599021.80 5683313.41 95.00 +599021.81 5683173.85 96.25 +599021.84 5681019.57 96.25 +599021.89 5682933.08 96.25 +599021.99 5680933.10 97.50 +599022.06 5681077.82 96.25 +599022.14 5681495.02 96.25 +599022.37 5681116.43 96.25 +599022.49 5682599.68 96.25 +599022.70 5682261.77 95.00 +599022.72 5677034.61 101.25 +599022.75 5682637.23 96.25 +599022.92 5679107.53 98.75 +599023.24 5682592.67 95.00 +599023.30 5679580.47 98.75 +599023.74 5682037.25 96.25 +599023.75 5678259.60 98.75 +599023.77 5682256.43 96.25 +599023.80 5687397.11 95.00 +599024.27 5682015.96 96.25 +599024.31 5683303.79 95.00 +599024.42 5681087.53 96.25 +599024.61 5679088.05 98.75 +599024.63 5681374.99 96.25 +599025.08 5683101.11 95.00 +599025.15 5680923.76 97.50 +599025.20 5682719.95 95.00 +599025.34 5685529.70 95.00 +599025.45 5679097.90 98.75 +599025.49 5681359.38 96.25 +599025.51 5683050.62 95.00 +599025.51 5682710.92 95.00 +599025.68 5682923.87 96.25 +599025.69 5683248.99 96.25 +599025.79 5677681.32 100.00 +599026.01 5681097.34 96.25 +599026.14 5681107.33 96.25 +599026.19 5682375.91 95.00 +599026.27 5682701.88 95.00 +599026.31 5682366.24 95.00 +599026.59 5681154.25 96.25 +599026.71 5682692.82 95.00 +599026.73 5682646.30 96.25 +599026.75 5682537.29 96.25 +599026.84 5681010.91 96.25 +599026.86 5683294.18 95.00 +599027.11 5685453.20 95.00 +599027.22 5679563.81 97.50 +599027.40 5686045.94 95.00 +599027.65 5683035.49 96.25 +599027.67 5682575.35 96.25 +599027.80 5678153.87 98.75 +599027.85 5680005.13 98.75 +599027.98 5682866.99 96.25 +599028.20 5682753.93 96.25 +599028.24 5679476.62 98.75 +599028.31 5680914.41 97.50 +599028.48 5679539.91 97.50 +599028.50 5680663.96 98.75 +599028.52 5682385.12 95.00 +599028.53 5682914.34 96.25 +599028.82 5682581.18 95.00 +599028.97 5682280.80 95.00 +599029.31 5680677.15 97.50 +599029.42 5685872.05 95.00 +599029.42 5683167.51 96.25 +599029.47 5683284.59 95.00 +599029.53 5681433.66 96.25 +599029.56 5685520.75 95.00 +599029.65 5681488.47 96.25 +599029.80 5677952.43 98.75 +599030.03 5682357.11 95.00 +599030.04 5677027.84 101.25 +599030.06 5679485.17 98.75 +599030.21 5681001.58 96.25 +599030.31 5682725.40 95.00 +599030.38 5680904.80 97.50 +599030.71 5678646.74 98.75 +599030.72 5682686.62 95.00 +599030.73 5679467.24 98.75 +599030.86 5679742.19 98.75 +599030.89 5682604.75 96.25 +599030.95 5685510.86 95.00 +599031.08 5683240.67 96.25 +599031.13 5678482.01 98.75 +599031.28 5682904.78 96.25 +599031.76 5680895.03 97.50 +599031.78 5682654.89 96.25 +599031.84 5678253.82 98.75 +599031.89 5682705.95 94.75 +599031.95 5679585.43 98.75 +599032.03 5682263.33 95.00 +599032.43 5682875.89 96.25 +599032.44 5682596.57 95.00 +599032.49 5685500.99 95.00 +599032.54 5682041.93 96.25 +599032.75 5683275.20 95.00 +599032.79 5682376.75 94.74 +599032.86 5680991.94 96.25 +599032.89 5686037.59 95.00 +599032.90 5682260.18 96.25 +599033.01 5682347.75 95.00 +599033.13 5680885.26 97.50 +599033.14 5681380.23 96.25 +599033.49 5687398.95 95.00 +599033.88 5682895.17 96.25 +599033.90 5682288.98 95.00 +599034.02 5682298.84 95.00 +599034.20 5682015.20 96.25 +599034.28 5682308.69 95.00 +599034.37 5677686.43 100.00 +599034.62 5682318.54 95.00 +599034.84 5685491.28 95.00 +599034.84 5682885.50 96.25 +599034.86 5683099.30 95.00 +599034.94 5683047.53 95.00 +599034.95 5681362.60 96.25 +599035.09 5682338.12 95.00 +599035.12 5679458.98 98.75 +599035.18 5682384.69 94.74 +599035.36 5682328.37 95.00 +599035.60 5680982.33 96.25 +599035.62 5682369.70 94.74 +599035.75 5682692.33 95.00 +599035.80 5679568.88 97.50 +599035.82 5682464.42 95.00 +599035.89 5682540.62 96.25 +599036.11 5682719.20 95.00 +599036.17 5681153.85 96.25 +599036.19 5677019.98 101.25 +599036.20 5682580.25 96.25 +599036.22 5682474.27 95.00 +599036.34 5682454.61 95.00 +599036.48 5682390.52 95.00 +599036.48 5683266.02 95.00 +599036.50 5685449.88 95.00 +599036.74 5680669.57 98.75 +599036.86 5681427.09 96.25 +599037.07 5683032.28 96.25 +599037.14 5682663.30 96.25 +599037.18 5686028.59 95.00 +599037.20 5682701.27 95.00 +599037.22 5683232.80 96.25 +599037.37 5680008.10 98.75 +599037.48 5679491.38 98.75 +599037.51 5678153.08 98.75 +599037.53 5682585.81 95.00 +599037.53 5682757.42 96.25 +599037.63 5682710.25 95.00 +599037.80 5683162.13 96.25 +599037.81 5680682.27 97.50 +599037.87 5681482.87 96.25 +599037.87 5679543.25 97.50 +599038.20 5682444.98 95.00 +599038.50 5685926.68 95.00 +599038.52 5680972.77 96.25 +599038.82 5682483.74 95.00 +599039.08 5685874.55 95.00 +599039.16 5685916.72 95.00 +599039.24 5682269.58 95.00 +599039.31 5677950.19 98.75 +599039.60 5678247.57 98.75 +599039.66 5682472.00 94.75 +599039.79 5679591.64 98.75 +599040.16 5682462.28 94.75 +599040.25 5682563.29 96.50 +599040.43 5682606.55 96.25 +599040.46 5682265.58 96.25 +599040.51 5678648.33 98.75 +599040.66 5678479.07 98.75 +599040.73 5683223.73 96.25 +599040.74 5685483.53 95.00 +599040.79 5679741.05 98.75 +599041.30 5683257.32 95.00 +599041.33 5686019.50 95.00 +599041.43 5680963.21 96.25 +599041.46 5682046.11 96.25 +599041.63 5682600.49 95.00 +599041.70 5677011.68 101.25 +599041.71 5685935.84 95.00 +599041.71 5682481.51 94.75 +599041.76 5682435.83 95.00 +599042.03 5682452.86 94.75 +599042.03 5682671.98 96.25 +599042.16 5679452.30 98.75 +599042.18 5682492.98 95.00 +599042.63 5683213.93 96.25 +599042.71 5681382.34 96.25 +599042.84 5682387.07 94.74 +599042.91 5677691.61 100.00 +599043.02 5680953.36 96.25 +599043.03 5682372.96 94.74 +599043.24 5682740.61 96.25 +599043.34 5682731.01 96.25 +599043.36 5681159.75 96.25 +599043.45 5687399.63 95.00 +599043.55 5681419.67 96.25 +599043.73 5682278.12 95.00 +599043.90 5683043.29 95.00 +599043.97 5680870.32 96.25 +599044.01 5682721.07 96.25 +599044.06 5685908.13 95.00 +599044.14 5680943.44 96.25 +599044.16 5679574.31 97.50 +599044.18 5682014.95 96.25 +599044.52 5683096.97 95.00 +599044.54 5683204.12 96.25 +599044.58 5682711.12 96.25 +599044.63 5682274.52 96.25 +599044.68 5681363.99 96.25 +599044.81 5682490.67 94.75 +599044.83 5682584.91 96.25 +599044.87 5682544.63 96.25 +599044.87 5680933.47 96.25 +599044.89 5680888.82 96.25 +599045.28 5680879.57 96.25 +599045.30 5682681.37 96.25 +599045.33 5686010.35 95.00 +599045.37 5682763.49 96.25 +599045.45 5680674.43 98.75 +599045.75 5682701.22 96.25 +599045.93 5683248.52 95.00 +599045.94 5682691.27 96.25 +599046.00 5682287.41 95.00 +599046.11 5683028.15 96.25 +599046.20 5680687.57 97.50 +599046.25 5682391.85 95.00 +599046.38 5679494.40 98.75 +599046.39 5682590.08 95.00 +599046.39 5685448.47 95.00 +599046.41 5682444.28 94.75 +599046.52 5685881.08 95.00 +599046.59 5682380.57 94.74 +599046.63 5683194.38 96.25 +599046.63 5677003.01 101.25 +599046.80 5685475.64 95.00 +599046.89 5678150.21 98.75 +599046.89 5680011.07 98.75 +599046.94 5681478.78 96.25 +599047.05 5677835.58 100.00 +599047.17 5682501.36 95.00 +599047.22 5678241.12 98.75 +599047.24 5683159.57 96.25 +599047.28 5679546.52 97.50 +599047.35 5682427.72 95.00 +599047.46 5685943.80 95.00 +599047.57 5680863.00 96.25 +599047.57 5682296.94 95.00 +599047.62 5679597.85 98.75 +599047.63 5680923.95 96.25 +599047.79 5682283.74 96.25 +599048.01 5685898.97 95.00 +599048.10 5682306.56 95.00 +599048.30 5681168.42 96.25 +599048.46 5682316.21 95.00 +599048.70 5686000.95 95.00 +599048.74 5682293.56 96.25 +599048.81 5682325.86 95.00 +599049.12 5677949.07 98.75 +599049.17 5682335.50 95.00 +599049.18 5680895.74 96.25 +599049.24 5677844.99 100.00 +599049.38 5682345.15 95.00 +599049.38 5682354.80 95.00 +599049.43 5679445.87 98.75 +599049.51 5682748.36 96.25 +599049.69 5682303.38 96.25 +599049.80 5682609.06 96.25 +599049.98 5682313.24 96.25 +599050.05 5683185.00 96.25 +599050.06 5682498.65 94.75 +599050.10 5682323.11 96.25 +599050.22 5682332.97 96.25 +599050.23 5683239.56 95.00 +599050.38 5682342.84 96.25 +599050.41 5681412.40 96.25 +599050.49 5678648.56 98.75 +599050.51 5678477.61 98.75 +599050.58 5679739.20 98.75 +599050.60 5682352.71 96.25 +599050.77 5677826.75 100.00 +599050.82 5682604.41 95.00 +599050.94 5680877.29 96.10 +599051.43 5682046.77 96.25 +599051.43 5685889.72 95.00 +599051.66 5677696.42 100.00 +599051.75 5682771.11 96.25 +599051.94 5681450.39 96.50 +599052.00 5682472.52 94.75 +599052.08 5685991.54 95.00 +599052.22 5685467.26 95.00 +599052.30 5682942.56 96.25 +599052.45 5681177.50 96.25 +599052.53 5681383.15 96.25 +599052.65 5682436.80 94.75 +599052.77 5682363.75 95.00 +599052.82 5681187.48 96.25 +599052.89 5679579.05 97.50 +599052.90 5682462.82 94.75 +599052.95 5676995.32 101.25 +599053.19 5681197.47 96.25 +599053.25 5682549.72 96.25 +599053.37 5678233.33 98.75 +599053.42 5682482.06 94.75 +599053.43 5687400.10 95.00 +599053.47 5683175.61 96.25 +599053.53 5682420.06 95.00 +599053.62 5681207.46 96.25 +599053.63 5682011.86 96.25 +599053.77 5682508.67 95.00 +599053.79 5682950.81 96.25 +599053.82 5682361.78 96.25 +599053.83 5683043.29 95.00 +599053.89 5683166.08 96.25 +599054.06 5682588.31 96.25 +599054.07 5681217.44 96.25 +599054.20 5683094.68 95.00 +599054.21 5680679.20 98.75 +599054.53 5682453.26 94.75 +599054.53 5683230.59 95.00 +599054.63 5681363.20 96.25 +599054.64 5680692.66 97.50 +599055.01 5683023.70 96.25 +599055.06 5681227.32 96.25 +599055.10 5680917.73 96.25 +599055.10 5685950.22 95.00 +599055.13 5679604.37 98.75 +599055.24 5685450.05 95.00 +599055.62 5682756.24 96.25 +599055.68 5682593.37 95.00 +599055.68 5680892.06 96.25 +599055.82 5678147.21 98.75 +599055.84 5682933.25 96.25 +599055.99 5679495.76 98.75 +599056.05 5682390.86 95.00 +599056.16 5680864.85 96.25 +599056.24 5682491.35 94.75 +599056.24 5680014.42 98.75 +599056.27 5677851.74 100.00 +599056.29 5685982.52 95.00 +599056.45 5685458.21 95.00 +599056.54 5681477.13 96.25 +599056.86 5682428.09 94.75 +599057.07 5682443.87 94.75 +599057.08 5679440.19 98.75 +599057.15 5681405.02 96.25 +599057.18 5679547.70 97.50 +599057.61 5682500.62 94.75 +599058.09 5680883.07 96.25 +599058.24 5682778.62 96.25 +599058.25 5681024.98 96.25 +599058.32 5681236.77 96.25 +599058.49 5682474.94 95.00 +599058.58 5682613.45 96.25 +599058.65 5682371.40 95.00 +599058.65 5682465.28 95.00 +599058.68 5680873.77 96.25 +599058.77 5677841.40 100.25 +599058.83 5683221.63 95.00 +599058.92 5677947.91 98.75 +599058.94 5681034.94 96.25 +599059.02 5677823.14 100.00 +599059.14 5678225.19 98.75 +599059.51 5682369.68 96.25 +599059.55 5678606.48 99.10 +599059.68 5682455.60 95.00 +599059.70 5676987.98 101.25 +599059.82 5679735.54 98.75 +599060.14 5682516.20 95.00 +599060.17 5682484.51 95.00 +599060.17 5682924.25 96.25 +599060.35 5682607.33 95.00 +599060.42 5678476.47 98.75 +599060.44 5681015.35 96.25 +599060.47 5678648.79 98.75 +599060.47 5682944.89 96.25 +599060.59 5682043.75 96.25 +599060.66 5677700.75 100.00 +599060.73 5682413.42 95.00 +599060.90 5679612.54 98.75 +599060.99 5685973.71 95.00 +599061.19 5681387.84 96.25 +599061.25 5681044.59 96.25 +599061.40 5682555.22 96.25 +599061.57 5681246.22 96.25 +599061.59 5679583.89 97.50 +599061.73 5682764.11 96.25 +599062.22 5682435.61 94.75 +599062.40 5681256.07 96.25 +599062.86 5682008.13 96.25 +599063.10 5681397.31 96.25 +599063.13 5680683.66 98.75 +599063.13 5683212.66 95.00 +599063.24 5681266.02 96.25 +599063.28 5681005.79 96.25 +599063.34 5683045.77 95.00 +599063.36 5685955.73 95.00 +599063.41 5687400.57 95.00 +599063.53 5682589.15 96.25 +599063.59 5682446.88 95.00 +599063.92 5682421.57 94.75 +599063.95 5683092.75 95.00 +599063.98 5681285.87 96.25 +599064.15 5681361.18 96.25 +599064.25 5682493.35 95.00 +599064.37 5681275.95 96.25 +599064.49 5681324.38 96.25 +599064.56 5680692.42 97.50 +599064.61 5683024.94 96.25 +599064.67 5680019.75 98.75 +599064.76 5682935.87 96.25 +599064.78 5682915.40 96.25 +599064.88 5680915.88 96.25 +599064.91 5678217.05 98.75 +599065.04 5685964.58 95.00 +599065.10 5681334.24 96.25 +599065.13 5677855.92 100.00 +599065.22 5682595.61 95.00 +599065.48 5682393.25 95.00 +599065.60 5679497.12 98.75 +599065.65 5682378.00 95.00 +599065.68 5678147.65 98.75 +599065.70 5682785.24 96.25 +599066.35 5679620.88 98.75 +599066.48 5681477.77 96.25 +599066.52 5681314.63 96.25 +599066.59 5679438.27 98.75 +599066.79 5682523.46 95.00 +599066.80 5682376.34 96.25 +599067.07 5676981.25 101.25 +599067.08 5679548.87 97.50 +599067.38 5680996.75 96.25 +599067.49 5683203.73 95.00 +599067.64 5679466.63 99.00 +599067.83 5682616.64 96.25 +599067.85 5681294.97 96.25 +599067.90 5682471.14 96.25 +599067.94 5682406.72 95.00 +599068.09 5677827.15 100.00 +599068.19 5681304.83 96.25 +599068.32 5682428.11 94.75 +599068.57 5682771.34 96.25 +599068.61 5679730.77 98.75 +599068.66 5679590.79 97.50 +599068.68 5682502.00 95.00 +599068.72 5677946.70 98.75 +599068.82 5682438.68 95.00 +599069.15 5681050.11 96.25 +599069.18 5682561.22 96.25 +599069.19 5682926.92 96.25 +599069.27 5681343.32 96.25 +599069.48 5682039.34 96.25 +599069.52 5681424.59 96.25 +599069.60 5681353.07 96.25 +599069.67 5682480.72 96.25 +599069.76 5682461.71 96.25 +599070.01 5682609.88 95.00 +599070.04 5681414.63 96.25 +599070.27 5678474.96 98.75 +599070.33 5679630.05 98.75 +599070.44 5678649.01 98.75 +599070.52 5677700.98 100.00 +599071.00 5678209.16 98.75 +599071.43 5682003.25 96.25 +599071.55 5682415.53 94.75 +599071.92 5682908.44 96.25 +599072.15 5680987.99 96.25 +599072.32 5679897.86 97.50 +599072.44 5683030.65 96.25 +599072.72 5682398.54 95.00 +599072.74 5683195.29 95.00 +599072.79 5683048.80 95.00 +599072.88 5682489.82 96.25 +599072.90 5680910.34 96.25 +599072.99 5681433.76 96.25 +599072.99 5680683.78 98.75 +599073.09 5679907.73 97.50 +599073.10 5680025.08 98.75 +599073.22 5682530.85 95.00 +599073.22 5682587.53 96.25 +599073.39 5687401.04 95.00 +599073.67 5679639.45 98.75 +599073.68 5681405.54 96.25 +599073.71 5683090.83 95.00 +599073.76 5679888.00 97.50 +599073.83 5682453.03 96.25 +599073.86 5682382.96 95.00 +599073.93 5682510.20 95.00 +599074.24 5680690.84 97.50 +599074.45 5676974.53 101.25 +599074.49 5679917.59 97.50 +599074.54 5682918.59 96.25 +599074.68 5679598.72 97.50 +599074.69 5677857.77 100.00 +599074.71 5682788.70 96.25 +599074.88 5677834.39 100.00 +599074.99 5682596.89 95.00 +599075.02 5682431.18 95.00 +599075.20 5679495.66 98.75 +599075.20 5682380.84 96.25 +599075.26 5678149.72 98.75 +599075.43 5681482.17 96.25 +599075.81 5679927.47 97.50 +599075.93 5679724.29 98.75 +599075.94 5679878.29 97.50 +599076.09 5680978.80 96.25 +599076.11 5679436.36 98.75 +599076.32 5679649.09 98.75 +599076.45 5682422.75 94.75 +599076.76 5682958.61 96.25 +599076.93 5682567.27 96.25 +599077.02 5679549.26 97.50 +599077.17 5679937.35 97.50 +599077.30 5681995.19 96.25 +599077.31 5682619.16 96.25 +599077.67 5678201.89 98.75 +599077.75 5682774.77 96.25 +599077.77 5682408.80 94.75 +599077.98 5682498.09 96.25 +599078.00 5683186.85 95.00 +599078.08 5681442.22 96.25 +599078.46 5677945.21 98.75 +599078.62 5679947.21 97.50 +599078.66 5679607.75 97.50 +599078.68 5679868.71 97.50 +599078.70 5682539.04 95.00 +599078.90 5681048.04 96.25 +599078.98 5679658.73 98.75 +599079.36 5682039.21 96.25 +599079.39 5682445.03 96.25 +599079.47 5682518.19 95.00 +599079.52 5677698.33 100.00 +599079.65 5680969.50 96.25 +599079.67 5682612.42 95.00 +599079.86 5676966.27 101.25 +599079.88 5682399.57 94.75 +599080.03 5679957.08 97.50 +599080.03 5678472.86 98.75 +599080.06 5679976.99 97.50 +599080.23 5679967.02 97.50 +599080.32 5681986.19 96.25 +599080.33 5680677.70 98.75 +599080.37 5681398.23 96.25 +599080.40 5678648.74 98.75 +599080.44 5683001.96 96.25 +599080.50 5680903.84 96.25 +599080.51 5681976.22 96.25 +599080.98 5682904.22 96.25 +599081.06 5683035.03 96.25 +599081.30 5681966.28 96.25 +599081.42 5679859.13 97.50 +599081.45 5679715.99 98.75 +599081.49 5680959.68 96.25 +599081.53 5680030.41 98.75 +599081.61 5679668.37 98.75 +599081.66 5677841.63 100.00 +599081.70 5683009.80 96.25 +599081.86 5682950.65 96.25 +599081.87 5679617.19 97.50 +599081.93 5679986.44 97.50 +599082.46 5676879.37 101.25 +599082.52 5682912.59 96.25 +599082.53 5683048.73 95.00 +599082.96 5682588.22 96.25 +599083.15 5682467.43 96.50 +599083.18 5682385.06 95.00 +599083.29 5682506.25 96.25 +599083.33 5680949.86 96.25 +599083.37 5687401.50 95.00 +599083.38 5680687.16 97.50 +599083.46 5679849.37 97.50 +599083.46 5683088.91 95.00 +599083.65 5676889.28 101.25 +599083.84 5682427.08 95.00 +599083.98 5679492.01 98.75 +599084.14 5683179.03 95.00 +599084.25 5679678.01 98.75 +599084.31 5676957.34 101.25 +599084.56 5682790.19 96.25 +599084.60 5677857.22 100.00 +599084.68 5681485.83 96.25 +599084.81 5682597.68 95.00 +599084.82 5678151.87 98.75 +599084.83 5682383.02 96.25 +599084.90 5681449.50 96.25 +599084.99 5676899.17 101.25 +599085.09 5681957.26 96.25 +599085.10 5682418.35 94.75 +599085.22 5679839.57 97.50 +599085.38 5682994.63 96.25 +599085.43 5682525.89 95.00 +599085.48 5682958.13 96.25 +599085.55 5679436.02 98.75 +599085.58 5682546.09 95.00 +599085.63 5682437.84 96.25 +599085.71 5679626.36 97.50 +599085.88 5680940.21 96.25 +599085.89 5682571.12 96.25 +599086.19 5681368.56 96.50 +599086.25 5679707.22 98.75 +599086.56 5679829.69 97.50 +599086.57 5676870.55 101.25 +599086.65 5679687.70 98.75 +599086.67 5677691.35 100.00 +599086.73 5679819.73 97.50 +599086.75 5679550.36 97.50 +599087.03 5682620.49 96.25 +599087.10 5678198.94 98.75 +599087.10 5677378.50 100.00 +599087.24 5677849.78 100.00 +599087.24 5679994.77 97.50 +599087.30 5680670.58 98.75 +599087.31 5676908.88 101.25 +599087.34 5679809.83 97.50 +599087.42 5679697.67 98.75 +599087.45 5681043.27 96.25 +599087.60 5682774.55 96.25 +599087.61 5677387.60 100.00 +599087.88 5677942.28 98.75 +599088.42 5681392.38 96.25 +599088.46 5676948.26 101.25 +599088.48 5680898.23 96.25 +599088.49 5682897.83 96.25 +599088.51 5682395.89 94.75 +599088.53 5677369.34 100.00 +599088.55 5682042.72 96.25 +599088.60 5682514.41 96.25 +599088.79 5680037.24 98.75 +599088.92 5680930.69 96.25 +599089.02 5681300.97 96.25 +599089.24 5681291.10 96.25 +599089.29 5679800.05 97.50 +599089.36 5676918.63 101.25 +599089.52 5682613.84 95.00 +599089.54 5677396.66 100.00 +599089.79 5678470.76 98.75 +599089.81 5683011.93 96.25 +599089.90 5682905.94 96.25 +599089.95 5676938.50 101.25 +599090.02 5682534.44 95.00 +599090.12 5683033.48 96.25 +599090.12 5681948.69 96.25 +599090.26 5679635.23 97.50 +599090.34 5682945.77 96.25 +599090.34 5678647.84 98.75 +599090.37 5683171.29 95.00 +599090.50 5676928.55 101.25 +599090.83 5680680.61 97.50 +599091.01 5681310.57 96.25 +599091.49 5682987.84 96.25 +599091.82 5680921.13 96.25 +599091.87 5679486.48 98.75 +599092.08 5683046.61 95.00 +599092.11 5681281.55 96.25 +599092.26 5682523.43 96.25 +599092.28 5677683.15 100.00 +599092.33 5682422.32 95.00 +599092.47 5682553.15 95.00 +599092.62 5682386.99 95.00 +599092.70 5682589.53 96.25 +599093.05 5677405.21 100.00 +599093.28 5683087.41 95.00 +599093.29 5687402.67 95.00 +599093.59 5679791.22 97.50 +599093.60 5682787.46 96.25 +599093.88 5682998.20 96.00 +599093.90 5682889.61 96.25 +599094.15 5681488.98 96.25 +599094.31 5680911.47 96.25 +599094.43 5682415.76 94.75 +599094.45 5677363.01 100.00 +599094.45 5682385.19 96.25 +599094.49 5682599.11 95.00 +599094.52 5682435.23 96.25 +599094.57 5680663.75 98.75 +599094.66 5681451.48 96.25 +599094.68 5678152.42 98.75 +599094.80 5680001.27 97.50 +599094.85 5679438.82 98.75 +599094.86 5682542.82 95.00 +599094.86 5681319.73 96.25 +599094.93 5681998.70 96.25 +599094.95 5680901.55 96.25 +599094.95 5682955.25 96.25 +599094.98 5676865.18 101.25 +599095.15 5682574.43 96.25 +599095.21 5682532.68 96.25 +599095.32 5679555.19 97.50 +599095.49 5681037.36 96.25 +599095.60 5677635.14 100.00 +599095.76 5680752.00 97.00 +599095.94 5678201.91 98.75 +599095.98 5681988.78 96.25 +599095.98 5680044.15 98.75 +599096.01 5682898.05 96.25 +599096.01 5682049.37 96.25 +599096.10 5677625.19 100.00 +599096.17 5679643.19 97.50 +599096.49 5681386.52 96.25 +599096.61 5683163.54 95.00 +599096.68 5682008.37 96.25 +599096.79 5682621.25 96.25 +599096.82 5681329.52 96.25 +599096.87 5681272.86 96.25 +599096.91 5679892.60 97.50 +599097.15 5682772.02 96.25 +599097.22 5677939.07 98.75 +599097.34 5677644.98 100.00 +599097.38 5677382.74 99.50 +599097.39 5680759.12 97.00 +599097.46 5679882.85 97.50 +599097.48 5677674.62 100.00 +599097.79 5679478.79 98.75 +599097.85 5683007.79 96.25 +599097.87 5682880.44 96.25 +599097.90 5677615.75 100.00 +599097.92 5682398.33 94.75 +599098.16 5679902.42 97.50 +599098.28 5680674.05 97.50 +599098.38 5677664.85 100.00 +599098.48 5682981.96 96.25 +599098.49 5682541.70 96.25 +599098.50 5677654.86 100.00 +599098.75 5681979.25 96.25 +599098.76 5683028.54 96.25 +599098.77 5681339.30 96.25 +599098.86 5681943.87 96.25 +599099.27 5682941.50 96.25 +599099.40 5678468.22 98.75 +599099.49 5682614.47 95.00 +599099.69 5679783.44 97.50 +599099.85 5682559.66 95.00 +599100.16 5678022.87 98.75 +599100.28 5678646.94 98.75 +599100.41 5678210.51 98.75 +599100.44 5679873.34 97.50 +599100.48 5683041.33 95.00 +599100.73 5681349.08 96.25 +599101.06 5682781.10 96.25 +599101.09 5678032.70 98.75 +599101.09 5682418.41 95.00 +599101.10 5682057.77 96.25 +599101.14 5682550.23 95.00 +599101.20 5680656.32 98.75 +599101.32 5677405.22 100.00 +599101.87 5681378.42 96.25 +599101.95 5682890.02 96.25 +599101.95 5682389.44 95.00 +599102.04 5679562.55 97.50 +599102.10 5681969.85 96.25 +599102.18 5682440.77 96.25 +599102.20 5681264.42 96.25 +599102.27 5678013.35 98.75 +599102.35 5680007.77 97.50 +599102.42 5682591.04 96.25 +599102.51 5682496.72 96.25 +599102.62 5677364.10 100.00 +599102.66 5679444.16 98.75 +599102.68 5679650.72 97.50 +599102.69 5681358.86 96.25 +599102.70 5682487.01 96.25 +599102.93 5678220.16 98.75 +599102.96 5683155.90 95.00 +599103.06 5679853.79 97.50 +599103.06 5679863.76 97.50 +599103.17 5680051.06 98.75 +599103.19 5683086.62 95.00 +599103.19 5687403.97 95.00 +599103.21 5681368.82 96.25 +599103.21 5682506.44 96.25 +599103.34 5681031.21 96.25 +599103.39 5682413.14 94.75 +599103.45 5680230.37 100.00 +599103.50 5682014.99 96.25 +599103.66 5681491.40 96.25 +599103.71 5682872.36 96.25 +599103.77 5682477.38 96.25 +599103.85 5682602.12 95.00 +599103.96 5678149.26 98.75 +599104.00 5682387.70 96.25 +599104.10 5676861.33 101.25 +599104.21 5679471.62 98.75 +599104.26 5682067.25 96.25 +599104.40 5681451.95 96.25 +599104.47 5678041.89 98.75 +599104.50 5682952.64 96.25 +599104.51 5682516.05 96.25 +599104.51 5682577.41 96.25 +599104.53 5679910.04 97.50 +599104.76 5682765.77 96.25 +599104.91 5679844.13 97.50 +599105.06 5682404.39 94.75 +599105.09 5680666.90 97.50 +599105.10 5680752.25 97.00 +599105.18 5683002.35 96.25 +599105.33 5677609.06 100.00 +599105.88 5678004.22 98.75 +599105.97 5678229.66 98.75 +599105.99 5680762.65 97.00 +599106.05 5681255.31 96.25 +599106.12 5679452.44 98.75 +599106.27 5679462.13 98.75 +599106.42 5677935.50 98.75 +599106.61 5682621.02 96.25 +599106.72 5682449.38 96.25 +599106.85 5682525.51 96.25 +599107.10 5682468.23 96.25 +599107.10 5682773.17 96.25 +599107.13 5680731.05 97.00 +599107.20 5683023.27 96.25 +599107.24 5682543.53 96.25 +599107.26 5682983.12 96.25 +599107.37 5677398.54 100.00 +599107.39 5680648.50 98.75 +599107.42 5679834.50 97.50 +599107.53 5679777.42 97.50 +599107.64 5679570.57 97.50 +599108.01 5681245.53 96.25 +599108.01 5682882.07 96.25 +599108.20 5682564.68 95.00 +599108.26 5677370.95 100.00 +599108.37 5681941.28 96.25 +599108.39 5681962.13 96.25 +599108.42 5678463.97 98.75 +599108.61 5677380.21 100.00 +599108.66 5683035.73 95.00 +599108.70 5682458.79 96.25 +599108.76 5682938.88 96.25 +599108.87 5680671.67 97.00 +599108.95 5677389.47 100.00 +599109.01 5682534.98 96.25 +599109.25 5678239.08 98.75 +599109.46 5682615.02 95.00 +599109.58 5682075.33 96.25 +599109.68 5680679.23 97.00 +599109.71 5683148.60 95.00 +599110.05 5682554.15 95.00 +599110.05 5680014.10 97.50 +599110.12 5678645.43 98.75 +599110.19 5682419.46 95.00 +599110.26 5681235.81 96.25 +599110.34 5680058.00 98.75 +599110.51 5681024.49 96.25 +599110.55 5680725.16 97.00 +599110.63 5679656.74 97.50 +599110.77 5682865.34 96.25 +599110.79 5679580.02 97.50 +599110.87 5679825.29 97.50 +599110.90 5678049.00 98.75 +599111.08 5680658.99 97.50 +599111.21 5677996.11 98.75 +599111.21 5682392.15 95.00 +599111.31 5680759.08 97.00 +599111.43 5682764.26 96.25 +599111.79 5681486.72 96.25 +599111.96 5680737.52 97.00 +599112.14 5682592.40 96.25 +599112.32 5678144.43 98.75 +599112.32 5682019.56 96.25 +599112.43 5682996.78 96.25 +599112.47 5679916.07 97.50 +599112.81 5677602.45 100.00 +599112.99 5683087.80 95.00 +599113.02 5687405.73 95.00 +599113.43 5680640.58 98.75 +599113.52 5682390.27 96.25 +599113.64 5676858.40 101.25 +599113.70 5681226.65 96.25 +599113.71 5682602.12 95.00 +599113.86 5682988.62 96.25 +599113.94 5679589.48 97.50 +599113.96 5682874.04 96.25 +599114.02 5682579.89 96.25 +599114.06 5681449.64 96.25 +599114.10 5682950.24 96.25 +599114.55 5681015.37 96.25 +599115.00 5682520.75 95.00 +599115.23 5678246.97 98.75 +599115.46 5682511.02 95.00 +599115.63 5683017.98 96.25 +599115.71 5677932.21 98.75 +599115.91 5682501.30 95.00 +599116.02 5681478.00 96.25 +599116.15 5680666.34 97.00 +599116.40 5682426.67 95.00 +599116.40 5682620.39 96.25 +599116.44 5679966.17 97.50 +599116.45 5683141.29 95.00 +599116.50 5679773.08 97.50 +599116.51 5681956.59 96.25 +599116.60 5682530.30 95.00 +599116.66 5683029.84 95.00 +599116.82 5680650.90 97.50 +599116.84 5680729.56 97.00 +599117.16 5679598.91 97.50 +599117.23 5682491.68 95.00 +599117.27 5682549.37 95.00 +599117.30 5679817.99 97.50 +599117.34 5682568.36 95.00 +599117.44 5678459.71 98.75 +599117.63 5680020.56 97.50 +599117.71 5678136.50 98.75 +599117.78 5680676.06 97.00 +599117.83 5682080.82 96.25 +599118.01 5679956.55 97.50 +599118.14 5679663.24 97.50 +599118.14 5679975.78 97.50 +599118.21 5681939.61 96.25 +599118.30 5682936.36 96.25 +599118.32 5680063.79 98.75 +599118.40 5682858.90 96.25 +599118.58 5681006.24 96.25 +599118.59 5681106.80 96.25 +599118.64 5678055.11 98.75 +599118.66 5680632.08 98.75 +599118.67 5681116.63 96.25 +599118.71 5682539.80 95.00 +599118.77 5680737.17 97.00 +599119.18 5682482.14 95.00 +599119.44 5682614.50 95.00 +599119.69 5681096.89 96.25 +599119.81 5681218.76 96.25 +599119.84 5677991.31 98.75 +599119.85 5678643.20 98.75 +599119.89 5682025.84 96.25 +599120.12 5681428.10 96.25 +599120.33 5678126.98 98.75 +599120.37 5682395.20 95.00 +599120.40 5679922.11 97.50 +599120.48 5682435.47 95.00 +599120.49 5682866.47 96.25 +599120.71 5679608.19 97.50 +599121.13 5677596.91 100.00 +599121.22 5681126.27 96.25 +599121.29 5681087.05 96.25 +599121.62 5678254.64 98.75 +599121.97 5682592.62 96.25 +599122.43 5680659.76 97.00 +599122.49 5682473.02 95.00 +599122.49 5680642.75 97.50 +599122.59 5681136.15 96.25 +599122.63 5679984.28 97.50 +599122.64 5683133.56 95.00 +599122.65 5678117.39 98.75 +599122.66 5680997.14 96.25 +599122.70 5683089.80 95.00 +599122.80 5687407.77 95.00 +599122.83 5682393.56 96.25 +599123.19 5682444.83 95.00 +599123.21 5682599.62 95.00 +599123.29 5676856.19 101.25 +599123.38 5681077.30 96.25 +599123.66 5682581.72 96.25 +599123.77 5682948.14 96.25 +599123.86 5681146.04 96.25 +599123.88 5680623.59 98.75 +599123.94 5681450.45 96.25 +599124.10 5681419.45 96.25 +599124.14 5683012.81 96.25 +599124.65 5678107.72 98.75 +599124.65 5683023.96 95.00 +599124.68 5680027.61 97.50 +599125.00 5679670.47 97.50 +599125.18 5682454.31 95.00 +599125.30 5680670.93 97.00 +599125.30 5678062.40 98.75 +599125.37 5679768.54 97.50 +599125.42 5677930.44 98.75 +599125.50 5681952.32 96.25 +599125.61 5681155.85 96.25 +599125.72 5681477.45 96.25 +599125.76 5679616.79 97.50 +599125.83 5679951.74 97.50 +599125.98 5679813.08 97.50 +599126.01 5682464.01 95.00 +599126.10 5682033.64 96.25 +599126.18 5682619.49 96.25 +599126.26 5682852.72 96.25 +599126.32 5681067.83 96.25 +599126.42 5681211.29 96.25 +599126.69 5682571.30 95.00 +599126.74 5681432.60 96.25 +599126.91 5681935.40 96.25 +599126.95 5682429.59 94.75 +599126.96 5678456.78 98.75 +599127.14 5682083.86 96.25 +599127.14 5682906.72 96.25 +599127.24 5680068.25 98.75 +599127.28 5682932.21 96.25 +599127.50 5680988.48 96.25 +599127.62 5682438.35 94.75 +599127.86 5683125.10 95.00 +599127.94 5678098.41 98.75 +599128.06 5681165.52 96.25 +599128.12 5682860.02 96.25 +599128.32 5680634.73 97.50 +599128.47 5677986.53 98.75 +599128.69 5680653.15 97.00 +599128.77 5683097.68 95.00 +599128.99 5678261.34 98.75 +599129.07 5680615.07 98.75 +599129.24 5679926.47 97.50 +599129.42 5682613.98 95.00 +599129.44 5677591.37 100.00 +599129.56 5682398.15 95.00 +599129.57 5678640.97 98.75 +599129.75 5681058.58 96.25 +599130.47 5681048.63 96.25 +599130.51 5681175.18 96.25 +599130.65 5679989.96 97.50 +599130.69 5682913.47 96.25 +599130.77 5678070.46 98.75 +599130.89 5679625.33 97.50 +599131.10 5678089.06 98.75 +599131.18 5681038.68 96.25 +599131.26 5680664.05 97.00 +599131.29 5682590.93 96.25 +599131.54 5682446.35 94.75 +599131.54 5683116.12 95.00 +599131.73 5680034.66 97.50 +599131.77 5679677.79 97.50 +599132.13 5681413.69 96.25 +599132.13 5682396.85 96.25 +599132.23 5682041.51 96.25 +599132.40 5681028.78 96.25 +599132.51 5683106.22 95.00 +599132.61 5682423.91 94.75 +599132.64 5687408.75 95.00 +599132.66 5683007.66 96.25 +599132.69 5682596.90 95.00 +599132.92 5679971.74 97.75 +599132.93 5681454.51 96.25 +599132.97 5681184.85 96.25 +599133.03 5682899.37 96.25 +599133.19 5681203.97 96.25 +599133.27 5676856.34 101.25 +599133.35 5682845.71 96.25 +599133.38 5683019.27 95.00 +599133.39 5680980.42 96.25 +599133.43 5682582.81 96.25 +599133.53 5682946.47 96.25 +599133.75 5679763.33 97.50 +599133.76 5678079.56 98.75 +599133.87 5680606.33 98.75 +599134.31 5680626.81 97.50 +599134.60 5682406.37 95.00 +599134.61 5681929.06 96.25 +599134.63 5681194.63 96.25 +599134.75 5681948.57 96.25 +599135.00 5681480.60 96.25 +599135.06 5679809.01 97.50 +599135.07 5677930.36 98.75 +599135.37 5681428.09 96.25 +599135.53 5679952.41 97.50 +599135.65 5682507.35 95.00 +599135.75 5682853.56 96.25 +599135.79 5682517.21 95.00 +599135.86 5682617.87 96.25 +599135.89 5680648.72 97.00 +599136.00 5682927.52 96.25 +599136.01 5681019.69 96.25 +599136.23 5682573.63 95.00 +599136.33 5677980.84 98.75 +599136.49 5682497.55 95.00 +599136.57 5682086.37 96.25 +599136.60 5678454.20 98.75 +599136.65 5678267.70 98.75 +599136.65 5680656.74 97.00 +599136.75 5680071.00 98.75 +599137.25 5682526.93 95.00 +599137.41 5679632.86 97.50 +599137.71 5682430.99 94.75 +599137.75 5677585.83 100.00 +599137.80 5682448.33 94.75 +599138.22 5682790.33 96.25 +599138.25 5679685.36 97.50 +599138.34 5681462.89 96.25 +599138.35 5681420.33 96.00 +599138.43 5682487.91 95.00 +599138.62 5679929.84 97.50 +599138.68 5680597.59 98.75 +599138.78 5682837.35 96.25 +599139.03 5682536.62 95.00 +599139.30 5682439.77 94.75 +599139.30 5678638.75 98.75 +599139.36 5680618.35 97.50 +599139.40 5682613.47 95.00 +599139.69 5679994.04 97.50 +599139.80 5682915.44 96.25 +599140.23 5682402.00 96.25 +599140.37 5682046.66 96.25 +599140.49 5680038.96 97.50 +599140.53 5679756.03 97.50 +599140.76 5681010.96 96.25 +599140.87 5682906.61 96.00 +599140.99 5682478.40 95.00 +599141.32 5683002.76 96.25 +599141.34 5682782.19 96.25 +599141.44 5681411.23 96.25 +599141.65 5682413.26 95.00 +599141.66 5682592.89 95.00 +599141.75 5682519.65 96.25 +599141.76 5679802.61 97.50 +599141.93 5682509.80 96.25 +599142.03 5680976.17 96.25 +599142.06 5681922.44 96.25 +599142.20 5683014.70 95.00 +599142.25 5682898.07 96.25 +599142.41 5677973.06 98.75 +599142.49 5677935.69 98.75 +599142.59 5687407.83 95.00 +599142.82 5682499.93 96.25 +599142.86 5681942.83 96.25 +599143.01 5682545.56 95.00 +599143.14 5682846.85 96.25 +599143.24 5680588.72 98.75 +599143.25 5676856.50 101.25 +599143.35 5680609.26 97.50 +599143.38 5682945.66 96.25 +599143.45 5682529.41 96.25 +599143.63 5682828.61 96.25 +599143.76 5682490.07 96.25 +599143.83 5682093.12 96.25 +599143.98 5679957.21 97.50 +599144.08 5679640.23 97.50 +599144.14 5681484.27 96.25 +599144.19 5681001.59 96.25 +599144.23 5679693.30 97.50 +599144.45 5682935.68 96.00 +599144.73 5682469.34 95.00 +599144.77 5678226.93 100.00 +599144.97 5682614.76 96.25 +599145.18 5682924.02 96.25 +599145.36 5681428.09 96.25 +599145.37 5678272.56 98.75 +599145.40 5682577.25 95.00 +599145.46 5677579.52 100.00 +599145.86 5681469.39 96.25 +599145.97 5677963.98 98.75 +599146.24 5678451.61 98.75 +599146.29 5682421.83 95.00 +599146.53 5680072.92 98.75 +599146.54 5682795.67 96.25 +599146.67 5680991.93 96.25 +599146.68 5678235.62 100.00 +599146.75 5682538.50 96.25 +599146.77 5682480.63 96.25 +599146.87 5677944.37 98.75 +599146.87 5677954.24 98.75 +599147.11 5682102.44 96.25 +599147.31 5679748.73 97.50 +599147.33 5680600.17 97.50 +599147.37 5679934.61 97.50 +599147.37 5680579.65 98.75 +599147.42 5682585.78 95.00 +599147.67 5682460.01 95.00 +599147.84 5680982.09 96.25 +599148.10 5682819.67 96.25 +599148.43 5679998.75 97.50 +599148.57 5682112.21 96.25 +599148.77 5682406.36 96.25 +599148.85 5682913.64 96.25 +599149.03 5678636.52 98.75 +599149.47 5679701.78 97.50 +599149.52 5681915.81 96.25 +599149.73 5682450.38 95.00 +599149.78 5682049.25 96.25 +599149.91 5682471.25 96.25 +599149.92 5682839.50 96.25 +599149.92 5682777.27 96.25 +599149.97 5680041.96 97.50 +599149.98 5682430.92 95.00 +599149.99 5682997.88 96.25 +599150.67 5682550.21 95.00 +599150.72 5679964.39 97.50 +599150.78 5681936.77 96.25 +599151.09 5683010.29 95.00 +599151.10 5682440.71 95.00 +599151.14 5681412.57 96.25 +599151.26 5687403.24 95.00 +599151.51 5680570.57 98.75 +599151.62 5682897.05 96.25 +599151.66 5679801.39 97.50 +599152.00 5678220.15 100.00 +599152.12 5679740.02 97.50 +599152.20 5679646.02 97.50 +599152.40 5680591.64 97.50 +599152.43 5682810.67 96.25 +599152.67 5679711.16 97.50 +599152.76 5677572.70 100.00 +599153.21 5682944.79 96.25 +599153.23 5676856.67 101.25 +599153.57 5681475.73 96.25 +599153.57 5682933.40 96.00 +599153.87 5681483.62 96.25 +599153.98 5682543.36 96.25 +599154.03 5682504.96 96.25 +599154.06 5682495.06 96.25 +599154.08 5678277.41 98.75 +599154.27 5682800.92 96.25 +599154.71 5682514.83 96.25 +599154.74 5679730.52 97.50 +599154.77 5682921.56 96.25 +599155.01 5679940.87 97.50 +599155.22 5681429.36 96.25 +599155.41 5679720.74 97.50 +599155.62 5678239.28 100.00 +599155.70 5682463.21 96.25 +599155.85 5682524.68 96.25 +599155.87 5681908.12 96.25 +599156.16 5682831.70 96.25 +599156.19 5678451.37 98.75 +599156.30 5680074.96 98.75 +599156.40 5682787.95 95.75 +599156.55 5682118.22 96.25 +599156.62 5682534.56 96.25 +599156.75 5679972.26 97.50 +599156.87 5680562.18 98.75 +599157.32 5679654.24 97.50 +599157.53 5680583.15 97.50 +599157.85 5682910.99 96.25 +599157.86 5676744.68 101.25 +599157.89 5682409.31 96.25 +599158.13 5681930.08 96.25 +599158.13 5679999.83 97.50 +599158.38 5676754.25 101.25 +599158.67 5682993.00 96.25 +599158.76 5678634.29 98.75 +599159.07 5681418.65 96.25 +599159.30 5682486.65 96.25 +599159.59 5682047.45 96.25 +599159.73 5682775.51 96.25 +599159.87 5680043.15 97.50 +599159.89 5687398.24 95.00 +599160.07 5677565.89 100.00 +599160.10 5683006.13 95.00 +599160.38 5682548.85 95.00 +599161.03 5682897.43 96.25 +599161.15 5679799.06 97.50 +599161.54 5678217.51 100.00 +599161.73 5679663.15 97.50 +599161.90 5678228.91 100.25 +599162.04 5682434.55 96.25 +599162.05 5679947.93 97.50 +599162.14 5681900.37 96.25 +599162.14 5679980.60 97.50 +599162.33 5682823.84 96.25 +599162.68 5680554.08 98.75 +599162.70 5682931.12 96.00 +599162.75 5682942.14 96.25 +599162.80 5676736.55 101.25 +599162.88 5680574.79 97.50 +599162.90 5678282.06 98.75 +599162.99 5676858.73 101.25 +599163.08 5682426.23 96.25 +599163.36 5682457.05 96.25 +599163.40 5681427.02 96.25 +599163.82 5682125.08 96.25 +599163.84 5676762.26 101.25 +599164.63 5682920.86 96.25 +599164.85 5681922.72 96.25 +599165.52 5678239.28 100.00 +599165.60 5677557.58 100.00 +599165.96 5680077.44 98.75 +599166.17 5678451.32 98.75 +599166.55 5682479.89 96.25 +599167.12 5681891.84 96.25 +599167.15 5682875.22 96.25 +599167.27 5682910.99 96.25 +599167.38 5682410.55 96.25 +599167.41 5682730.73 96.25 +599167.48 5679998.29 97.50 +599167.51 5679988.95 97.50 +599167.67 5682542.34 95.00 +599167.74 5679670.99 97.50 +599168.06 5679955.88 97.50 +599168.09 5682815.66 96.25 +599168.14 5682989.99 96.25 +599168.42 5680566.56 97.50 +599168.66 5678633.61 98.75 +599168.94 5687394.05 95.00 +599169.05 5681913.70 96.25 +599169.07 5683001.89 95.00 +599169.08 5682773.22 96.25 +599169.15 5680546.49 98.75 +599169.28 5682738.58 96.25 +599169.41 5682045.68 96.25 +599169.62 5679793.80 97.50 +599169.73 5680043.92 97.50 +599170.32 5676730.00 101.25 +599170.34 5682436.33 96.25 +599170.43 5682879.23 96.25 +599170.44 5682898.04 96.25 +599170.94 5681882.63 96.25 +599171.09 5677549.23 100.00 +599171.11 5676769.10 101.25 +599171.22 5677029.69 100.00 +599171.29 5678218.15 100.00 +599171.37 5682423.06 96.25 +599171.47 5677020.34 100.00 +599171.72 5677011.00 100.00 +599171.82 5682928.84 96.00 +599172.09 5678285.95 98.75 +599172.15 5682429.20 96.50 +599172.20 5682939.22 96.25 +599172.25 5682454.95 96.25 +599172.41 5682129.76 96.25 +599172.48 5682806.75 96.25 +599172.83 5676859.91 101.25 +599173.63 5681905.53 96.25 +599173.64 5682505.16 95.00 +599174.06 5679963.83 97.50 +599174.16 5682723.92 96.25 +599174.28 5680558.55 97.50 +599174.52 5682920.33 96.25 +599174.72 5682475.08 96.25 +599174.75 5681873.41 96.25 +599174.78 5677038.33 100.00 +599175.08 5678236.64 100.00 +599175.20 5679677.59 97.50 +599175.32 5682765.53 96.25 +599175.38 5682495.39 95.00 +599175.43 5682870.09 96.25 +599175.62 5677002.61 100.00 +599175.65 5680538.93 98.75 +599175.73 5682514.35 95.00 +599175.76 5680079.24 98.75 +599175.82 5678453.06 98.75 +599176.07 5682537.24 95.00 +599176.17 5682909.02 96.25 +599176.23 5682797.48 96.25 +599176.58 5677540.88 100.00 +599176.59 5682407.98 96.25 +599176.64 5679787.00 97.50 +599177.46 5682986.60 96.25 +599177.48 5682996.63 95.00 +599177.61 5681474.76 96.25 +599178.46 5687391.03 95.00 +599178.49 5676724.31 101.25 +599178.60 5681864.21 96.25 +599178.64 5678633.58 98.75 +599178.85 5682739.10 96.25 +599178.89 5682901.61 96.25 +599178.98 5679972.48 97.50 +599179.25 5682044.04 96.25 +599179.28 5680041.06 97.50 +599179.34 5676774.65 101.25 +599179.40 5678222.19 100.00 +599179.52 5682435.57 96.25 +599179.85 5677045.94 100.00 +599179.89 5682876.69 96.25 +599180.21 5682501.97 94.75 +599180.21 5682788.31 96.25 +599180.39 5682423.25 96.25 +599180.46 5680550.81 97.50 +599180.49 5682135.41 96.25 +599180.75 5681898.75 96.25 +599180.94 5682926.52 96.00 +599181.05 5682757.34 96.25 +599181.14 5682488.84 95.00 +599181.28 5678289.83 98.75 +599181.43 5679685.19 97.50 +599181.62 5682936.15 96.25 +599181.64 5678231.05 100.00 +599181.91 5677532.44 100.00 +599182.00 5682456.75 96.25 +599182.00 5682598.33 95.00 +599182.19 5680531.39 98.75 +599182.42 5679778.88 97.50 +599182.56 5681855.05 96.25 +599182.81 5676859.55 101.25 +599182.89 5681466.67 96.25 +599183.10 5677000.55 100.00 +599183.22 5681275.85 96.25 +599183.24 5682719.77 96.25 +599183.51 5681480.18 96.25 +599183.77 5681266.01 96.25 +599184.05 5682917.99 96.25 +599184.11 5679980.88 97.50 +599184.11 5682865.66 96.25 +599184.31 5682514.69 95.00 +599184.32 5682779.20 96.25 +599184.43 5682474.74 96.25 +599184.70 5677028.91 99.50 +599184.94 5681889.82 96.25 +599185.02 5682403.60 96.25 +599185.16 5678456.58 98.75 +599185.19 5682429.93 96.25 +599185.34 5682536.02 95.00 +599185.61 5680080.80 98.75 +599185.90 5682991.37 95.00 +599186.01 5682981.51 96.25 +599186.24 5681256.57 96.25 +599186.31 5679693.88 97.50 +599186.32 5680522.35 98.75 +599186.43 5681285.04 96.25 +599186.52 5682143.22 96.25 +599186.92 5677523.80 100.00 +599187.01 5676719.11 101.25 +599187.06 5680543.40 97.50 +599187.17 5682495.73 95.00 +599187.20 5682734.25 96.25 +599187.58 5682505.56 95.00 +599187.65 5679770.44 97.50 +599187.85 5682890.13 96.25 +599187.98 5676779.64 101.25 +599187.98 5687388.00 95.00 +599188.04 5681880.34 96.25 +599188.15 5677049.34 100.00 +599188.58 5680037.58 97.50 +599188.60 5678126.23 100.00 +599188.62 5678633.46 98.75 +599189.11 5682043.91 96.25 +599189.13 5682873.38 96.25 +599189.17 5682591.88 95.00 +599189.28 5682770.52 96.25 +599189.53 5680109.66 98.75 +599189.54 5682752.07 96.25 +599189.82 5682613.81 96.25 +599189.84 5681459.86 96.25 +599189.85 5677006.32 100.00 +599190.02 5681849.39 96.25 +599190.03 5682924.13 96.00 +599190.13 5678116.50 100.00 +599190.25 5680513.18 98.75 +599190.32 5680132.95 98.75 +599190.44 5681247.73 96.25 +599190.59 5681293.94 96.25 +599190.82 5681870.77 96.25 +599190.84 5678291.88 98.75 +599191.10 5682933.31 96.25 +599191.19 5679702.58 97.50 +599191.30 5682713.92 96.25 +599191.46 5682459.66 96.25 +599191.76 5679987.26 97.50 +599191.79 5679761.37 97.50 +599191.84 5682859.62 96.25 +599191.94 5677515.16 100.00 +599192.13 5678135.54 100.00 +599192.14 5682542.68 95.00 +599192.31 5676856.56 101.25 +599192.39 5681477.21 96.25 +599192.58 5682604.43 96.25 +599192.66 5682397.84 96.25 +599192.80 5682150.91 96.25 +599192.99 5679712.29 97.50 +599193.15 5680535.61 97.50 +599193.39 5682914.71 96.25 +599193.61 5680115.77 98.75 +599193.77 5678107.64 100.00 +599193.77 5680086.49 98.75 +599193.79 5682478.01 96.25 +599194.04 5682726.97 96.25 +599194.15 5682405.24 95.00 +599194.19 5680504.02 98.75 +599194.31 5679722.17 97.50 +599194.36 5682884.09 96.25 +599194.50 5678460.10 98.75 +599194.57 5682976.43 96.25 +599194.65 5682460.06 96.25 +599194.69 5679752.03 97.50 +599194.72 5677014.17 100.00 +599194.74 5682986.99 95.00 +599194.83 5679742.06 97.50 +599194.95 5682395.46 95.00 +599194.97 5679732.09 97.50 +599195.18 5681861.79 96.25 +599195.25 5681451.75 96.25 +599195.39 5680125.21 98.75 +599195.69 5681302.37 96.25 +599195.73 5681239.43 96.25 +599195.75 5676714.68 101.25 +599195.91 5680140.04 98.75 +599196.13 5682893.62 96.25 +599196.41 5676784.96 101.25 +599196.51 5677506.28 100.00 +599196.77 5682414.57 95.00 +599197.03 5677047.69 100.00 +599197.12 5682705.83 96.25 +599197.33 5682765.02 96.25 +599197.52 5678143.55 100.00 +599197.64 5682389.94 96.25 +599197.69 5680526.78 97.50 +599197.78 5681852.42 96.25 +599197.89 5687386.73 95.00 +599198.00 5680034.58 97.50 +599198.17 5682550.46 95.00 +599198.20 5680494.89 98.75 +599198.21 5680105.67 98.75 +599198.22 5677022.84 100.00 +599198.27 5682869.78 96.25 +599198.42 5682588.19 95.00 +599198.58 5678632.90 98.75 +599198.69 5682852.59 96.25 +599198.71 5682748.08 96.25 +599198.98 5682045.36 96.25 +599199.13 5682921.74 96.00 +599199.42 5679993.64 97.50 +599199.64 5681443.22 96.25 +599199.64 5681311.16 96.25 +599199.67 5681267.42 96.00 +599200.28 5681320.99 96.25 +599200.29 5681471.50 96.25 +599200.33 5682598.15 96.25 +599200.43 5681230.78 96.25 +599200.54 5682387.43 95.00 +599200.58 5682381.20 96.25 +599200.60 5682930.50 96.25 +599200.71 5677497.22 100.00 +599200.81 5678100.60 100.00 +599200.82 5678291.88 98.75 +599200.89 5676851.67 101.25 +599200.93 5677031.74 100.00 +599201.01 5682156.47 96.25 +599201.03 5682719.83 96.25 +599201.20 5682423.29 95.00 +599201.55 5681433.67 96.25 +599201.57 5680517.68 97.50 +599201.63 5680117.95 98.75 +599201.89 5680092.28 98.75 +599202.20 5680485.75 98.75 +599202.55 5677040.94 100.00 +599202.60 5682697.49 96.25 +599202.63 5682433.01 95.00 +599202.81 5682911.70 96.25 +599202.84 5682372.11 96.25 +599202.97 5678465.31 98.75 +599203.15 5682971.39 96.25 +599203.18 5682377.82 95.00 +599203.31 5682480.64 96.25 +599203.41 5681329.70 96.25 +599203.46 5681424.11 96.25 +599203.76 5676791.53 101.25 +599203.86 5682558.37 95.00 +599204.05 5682881.83 96.25 +599204.14 5682983.82 95.00 +599204.24 5682462.54 96.25 +599204.29 5682442.61 95.00 +599204.69 5680144.19 98.75 +599204.77 5680508.29 97.50 +599205.08 5678150.03 100.00 +599205.52 5682368.14 95.00 +599205.54 5681173.91 96.25 +599205.54 5682845.56 96.25 +599205.73 5676714.68 101.25 +599206.07 5682893.18 96.25 +599206.16 5680101.11 98.75 +599206.22 5681183.87 96.25 +599206.30 5682051.68 96.25 +599206.34 5682363.42 96.25 +599206.56 5682761.27 96.25 +599206.65 5681223.29 96.25 +599206.82 5681164.15 96.25 +599206.91 5680476.97 98.75 +599207.17 5682688.61 96.25 +599207.25 5682865.82 96.25 +599207.49 5682712.22 96.25 +599207.54 5681465.03 96.25 +599207.71 5682743.74 96.25 +599207.80 5687385.49 95.00 +599207.82 5680035.64 97.50 +599207.85 5678093.56 100.00 +599208.00 5677490.44 100.00 +599208.14 5682586.13 95.00 +599208.22 5682919.35 96.00 +599208.44 5682592.56 96.25 +599208.54 5678632.34 98.75 +599208.55 5681193.51 96.25 +599208.69 5681416.06 96.25 +599208.77 5680499.25 97.50 +599208.78 5676845.63 101.25 +599209.17 5676799.92 101.25 +599209.52 5682450.28 95.00 +599209.57 5681154.55 96.25 +599209.69 5682161.44 96.25 +599209.91 5682060.90 96.25 +599210.06 5682927.61 96.25 +599210.56 5682355.08 96.25 +599210.79 5678291.69 98.75 +599210.85 5682679.34 96.25 +599211.25 5681332.98 96.25 +599211.28 5682837.63 96.25 +599211.31 5678470.80 98.75 +599211.84 5681285.72 96.25 +599211.92 5680468.35 98.75 +599212.14 5682967.18 96.25 +599212.31 5681144.94 96.25 +599212.48 5682909.58 96.25 +599212.78 5681295.53 96.25 +599212.83 5682362.11 95.00 +599213.08 5682482.31 96.25 +599213.19 5682070.33 96.25 +599213.30 5678155.56 100.00 +599213.34 5682850.86 96.00 +599213.55 5682980.65 95.00 +599213.59 5680490.57 97.50 +599213.61 5682559.84 95.00 +599213.72 5681305.34 96.25 +599213.80 5682704.47 96.25 +599213.80 5676837.00 101.25 +599213.84 5682465.02 96.25 +599213.84 5682879.95 96.25 +599213.92 5681276.10 96.25 +599214.09 5676719.40 101.25 +599214.14 5681324.98 96.25 +599214.35 5679993.44 97.00 +599214.42 5680145.13 98.75 +599214.43 5681458.14 96.25 +599214.58 5681315.14 96.25 +599214.58 5676808.30 101.25 +599215.16 5682080.10 96.25 +599215.41 5682409.87 95.00 +599215.52 5682860.71 96.25 +599215.54 5678087.25 100.00 +599215.55 5682347.14 96.25 +599215.56 5681199.60 96.25 +599215.57 5681221.53 96.25 +599215.71 5677484.16 100.00 +599215.74 5682757.50 96.25 +599215.84 5682738.01 96.25 +599215.87 5682891.44 96.25 +599215.99 5682670.78 96.25 +599216.05 5681266.49 96.25 +599216.44 5682419.78 95.00 +599216.65 5681135.95 96.25 +599216.70 5682400.14 95.00 +599216.75 5676827.55 101.25 +599216.77 5682829.50 96.25 +599216.85 5677272.95 100.00 +599216.92 5680459.72 98.75 +599217.08 5682089.89 96.25 +599217.09 5677264.19 100.00 +599217.28 5676817.82 101.25 +599217.32 5682916.96 96.00 +599217.42 5680481.43 97.50 +599217.52 5682429.67 95.00 +599217.62 5681417.14 96.25 +599217.63 5682455.88 95.00 +599217.64 5680037.35 97.50 +599217.79 5687385.52 95.00 +599217.94 5682584.36 95.00 +599218.02 5682589.78 96.25 +599218.14 5679984.80 97.00 +599218.19 5681256.87 96.25 +599218.51 5678631.78 98.75 +599218.79 5681437.05 96.00 +599219.00 5682164.86 96.25 +599219.28 5682696.16 96.25 +599219.34 5677255.86 100.00 +599219.53 5682924.72 96.25 +599219.65 5678476.28 98.75 +599220.54 5682339.20 96.25 +599220.72 5678290.70 98.75 +599220.96 5680472.16 97.50 +599221.01 5676726.58 101.25 +599221.05 5681126.99 96.25 +599221.13 5682662.21 96.25 +599221.34 5682963.38 96.25 +599221.35 5682438.87 95.00 +599221.39 5682391.40 95.00 +599221.58 5682905.97 96.25 +599221.73 5681247.68 96.25 +599221.90 5680029.11 97.50 +599221.93 5680451.09 98.75 +599221.93 5679976.15 97.00 +599222.06 5678160.30 100.00 +599222.17 5682853.65 96.25 +599222.23 5681228.51 96.25 +599222.24 5681452.46 96.25 +599222.38 5682359.51 95.00 +599222.56 5679996.64 97.00 +599222.57 5682098.10 96.25 +599222.66 5682821.64 96.25 +599222.93 5682483.42 96.25 +599222.95 5682977.47 95.00 +599222.97 5682468.72 96.25 +599223.39 5682876.99 96.25 +599223.39 5682560.93 95.00 +599223.44 5678081.19 100.00 +599223.64 5681238.03 96.25 +599223.96 5682751.81 96.25 +599224.16 5682732.57 96.25 +599224.18 5682687.46 96.25 +599224.19 5680143.11 98.75 +599224.31 5680105.14 96.00 +599224.34 5677261.99 99.75 +599224.49 5677479.39 100.00 +599224.50 5677274.09 100.00 +599224.89 5681200.83 96.25 +599224.95 5682887.25 96.25 +599225.04 5677249.70 100.00 +599225.12 5680463.32 97.50 +599225.30 5682331.13 96.25 +599225.72 5679967.50 97.00 +599225.85 5682461.29 95.00 +599226.04 5681422.01 96.25 +599226.08 5682382.64 95.00 +599226.16 5680020.87 97.50 +599226.27 5682653.64 96.25 +599226.66 5681118.84 96.25 +599227.16 5678482.79 98.75 +599227.19 5682845.21 96.25 +599227.32 5682446.22 95.00 +599227.58 5679990.40 97.00 +599227.73 5682582.53 95.00 +599227.78 5687385.56 95.00 +599227.79 5680443.02 98.75 +599227.80 5676733.89 101.25 +599227.93 5682588.75 96.25 +599228.47 5678631.21 98.75 +599228.63 5682167.54 96.25 +599228.77 5682663.02 96.00 +599228.98 5682363.96 95.00 +599229.00 5682921.82 96.25 +599229.04 5682537.88 96.25 +599229.08 5682678.75 96.25 +599229.17 5682105.54 96.25 +599229.44 5682373.27 95.00 +599229.95 5682322.98 96.25 +599230.20 5682901.10 96.25 +599230.23 5682528.50 96.25 +599230.30 5677268.26 100.00 +599230.32 5678288.53 98.75 +599230.43 5682959.32 96.25 +599230.75 5681447.71 96.25 +599230.91 5678164.84 100.00 +599230.98 5682818.80 96.25 +599230.98 5679981.59 97.00 +599231.03 5679961.43 97.00 +599231.17 5680027.13 97.50 +599231.27 5682433.28 96.25 +599231.34 5678075.12 100.00 +599231.35 5682745.08 96.25 +599231.46 5682645.11 96.25 +599231.55 5680455.76 97.50 +599231.73 5682836.53 96.25 +599231.79 5682473.25 96.25 +599232.19 5681142.34 96.00 +599232.33 5682974.22 95.00 +599232.34 5682485.41 96.25 +599232.67 5677251.40 100.00 +599232.94 5682874.03 96.25 +599233.21 5682561.26 95.00 +599233.23 5682424.00 96.25 +599233.29 5682729.36 96.25 +599233.36 5677260.13 100.00 +599233.39 5681111.46 96.25 +599233.44 5680139.43 98.75 +599233.57 5682669.83 96.25 +599233.62 5682467.36 95.00 +599233.65 5681196.99 96.25 +599233.68 5680434.97 98.75 +599233.84 5680036.01 97.50 +599233.95 5677476.24 100.00 +599234.50 5678489.54 98.75 +599234.59 5682314.84 96.25 +599234.84 5682885.91 96.25 +599235.00 5681425.49 96.25 +599235.12 5682519.99 96.25 +599235.14 5682827.40 96.25 +599235.19 5679973.14 97.00 +599235.26 5682442.35 96.25 +599235.82 5682451.42 95.00 +599236.03 5681133.59 96.00 +599236.31 5682112.50 96.25 +599236.36 5682542.89 96.25 +599236.60 5680044.86 97.50 +599236.71 5682736.78 96.25 +599236.95 5676737.63 101.25 +599237.46 5682580.54 95.00 +599237.67 5682637.28 96.25 +599237.77 5687385.55 95.00 +599237.84 5682660.80 96.25 +599237.89 5682588.33 96.25 +599238.05 5680448.27 97.50 +599238.19 5682170.44 96.25 +599238.25 5682918.30 96.25 +599238.45 5678630.95 98.75 +599238.50 5681145.85 96.00 +599238.85 5682896.29 96.25 +599239.08 5682479.91 96.25 +599239.12 5678068.93 100.00 +599239.23 5681103.39 96.25 +599239.30 5682306.73 96.25 +599239.34 5678284.27 98.75 +599239.35 5682492.42 96.25 +599239.46 5682955.13 96.25 +599239.54 5679964.76 97.00 +599239.57 5682416.36 96.25 +599239.74 5680427.07 98.75 +599239.92 5681189.22 96.25 +599239.95 5678169.03 100.00 +599240.02 5682511.52 96.25 +599240.30 5681125.05 96.00 +599240.40 5681447.50 96.25 +599241.48 5682473.29 95.00 +599241.68 5680133.97 98.75 +599241.70 5682970.96 95.00 +599241.97 5682501.81 96.25 +599242.08 5681093.88 96.25 +599242.28 5678495.79 98.75 +599242.31 5682651.88 96.25 +599242.73 5682872.05 96.25 +599242.89 5682559.87 95.00 +599243.60 5682877.15 96.00 +599243.61 5682446.30 96.25 +599243.61 5677474.10 100.00 +599243.87 5682629.45 96.25 +599244.13 5682298.69 96.25 +599244.40 5680440.65 97.50 +599244.50 5686248.75 95.00 +599244.62 5681427.02 96.25 +599244.64 5682883.94 96.25 +599244.67 5682116.66 96.25 +599244.82 5682524.57 96.50 +599245.10 5681139.09 96.00 +599245.11 5681116.80 96.00 +599245.16 5682454.71 95.00 +599245.51 5678061.29 100.00 +599245.55 5681180.98 96.25 +599245.65 5680046.45 97.50 +599245.80 5686238.85 95.00 +599246.03 5681084.89 96.25 +599246.17 5686258.30 95.00 +599246.18 5682575.73 95.00 +599246.23 5682543.56 96.25 +599246.36 5676740.96 101.25 +599246.43 5680751.19 96.25 +599246.52 5680419.75 98.75 +599246.90 5682409.67 96.25 +599246.90 5682485.94 96.25 +599247.34 5687382.71 95.00 +599247.49 5682914.75 96.25 +599247.67 5686229.10 95.00 +599247.73 5682587.24 96.25 +599247.74 5680126.57 98.75 +599247.74 5682173.41 96.25 +599247.88 5682643.59 96.25 +599247.95 5682892.41 96.25 +599248.42 5678630.73 98.75 +599248.53 5678280.38 98.75 +599248.73 5682951.70 96.25 +599248.99 5678173.21 100.00 +599249.25 5682290.86 96.25 +599249.41 5681451.21 96.25 +599249.48 5686267.73 95.00 +599249.79 5682478.58 95.00 +599250.06 5678502.04 98.75 +599250.25 5681108.74 96.00 +599250.31 5680068.28 96.00 +599250.37 5680432.72 97.50 +599250.48 5680742.54 96.25 +599250.49 5680116.98 98.75 +599250.70 5682622.26 96.25 +599250.88 5681172.54 96.25 +599250.92 5681131.51 96.00 +599251.08 5682967.70 95.00 +599251.64 5678053.50 100.00 +599251.78 5686220.00 95.00 +599251.81 5682555.67 95.00 +599251.94 5681076.84 96.25 +599252.30 5680411.65 98.75 +599252.43 5682537.79 96.25 +599252.57 5682870.27 96.25 +599253.29 5682448.60 96.25 +599253.46 5682635.30 96.25 +599253.60 5677474.43 100.00 +599254.00 5682459.07 95.00 +599254.15 5681429.02 96.25 +599254.18 5682114.75 96.25 +599254.20 5680755.69 96.25 +599254.40 5680049.50 97.50 +599254.45 5682881.98 96.25 +599254.52 5682492.20 96.25 +599254.55 5677975.49 100.00 +599254.82 5677985.43 100.00 +599254.91 5682570.92 95.00 +599254.97 5680075.27 96.00 +599255.00 5677965.55 100.00 +599255.11 5682404.07 96.25 +599255.22 5678044.21 100.00 +599255.32 5682283.71 96.25 +599255.47 5680062.74 96.00 +599255.49 5677995.37 100.00 +599255.71 5681100.90 96.00 +599255.98 5686210.94 95.00 +599256.03 5682528.58 96.25 +599256.10 5676740.82 101.25 +599256.22 5681164.09 96.25 +599256.35 5680424.80 97.50 +599256.36 5680735.06 96.25 +599256.45 5681123.72 96.00 +599256.50 5678005.26 100.00 +599256.60 5682583.20 96.25 +599256.72 5687379.36 95.00 +599256.74 5682911.21 96.25 +599256.81 5680402.84 98.75 +599256.86 5678135.07 101.25 +599257.00 5682485.27 95.00 +599257.02 5686271.29 95.00 +599257.11 5682382.16 96.25 +599257.12 5682888.68 96.25 +599257.40 5682175.88 96.25 +599257.60 5678810.49 98.75 +599257.74 5678276.56 98.75 +599257.80 5680746.08 96.10 +599257.83 5678800.56 98.75 +599257.86 5678034.66 100.00 +599258.11 5681455.55 96.25 +599258.15 5681069.01 96.25 +599258.18 5682372.30 96.25 +599258.31 5677956.16 100.00 +599258.32 5678015.05 100.00 +599258.40 5678630.50 98.75 +599258.46 5682548.89 95.00 +599258.54 5682950.01 96.25 +599258.61 5678175.78 100.00 +599258.66 5682616.23 96.25 +599259.07 5682519.14 96.25 +599259.49 5678504.25 98.75 +599259.57 5678024.85 100.00 +599259.76 5678143.84 101.25 +599259.98 5680393.39 98.75 +599260.14 5680119.51 98.75 +599260.28 5682499.91 96.25 +599260.45 5682964.44 95.00 +599260.62 5678126.98 101.25 +599260.73 5682628.68 96.25 +599260.81 5682539.38 95.00 +599261.06 5682454.22 96.25 +599261.13 5678819.12 98.75 +599261.19 5686202.42 95.00 +599261.67 5681093.49 96.00 +599261.70 5681115.74 96.00 +599261.81 5677946.88 100.00 +599261.85 5682509.69 96.25 +599261.92 5681155.89 96.25 +599261.96 5682564.00 95.00 +599262.13 5682464.74 95.00 +599262.29 5682276.55 96.25 +599262.32 5680416.87 97.50 +599262.34 5682868.23 96.25 +599262.46 5680053.70 97.50 +599262.71 5680078.36 96.00 +599262.92 5681060.30 96.25 +599263.05 5680066.30 96.00 +599263.18 5680759.22 96.25 +599263.26 5682110.60 96.25 +599263.31 5682492.71 95.00 +599263.47 5681431.61 96.25 +599263.50 5677475.55 100.00 +599263.74 5678792.73 98.75 +599263.97 5682530.06 95.00 +599263.99 5682576.59 96.25 +599264.08 5682879.35 96.25 +599264.19 5682399.96 96.25 +599264.29 5680732.64 96.25 +599265.07 5682382.87 96.25 +599265.43 5682365.61 96.25 +599265.56 5687374.71 95.00 +599265.75 5680749.92 96.25 +599265.87 5676738.98 101.25 +599265.97 5682907.64 96.25 +599266.11 5681460.88 96.25 +599266.40 5686193.90 95.00 +599266.46 5682885.40 96.25 +599266.48 5680385.83 98.75 +599266.79 5682462.39 96.25 +599266.83 5682520.64 95.00 +599266.84 5678150.84 101.25 +599266.87 5681107.70 96.00 +599266.98 5686271.34 95.00 +599267.10 5680408.20 97.50 +599267.18 5681051.26 96.25 +599267.23 5680740.42 96.25 +599267.25 5682175.61 96.25 +599267.39 5678274.00 98.75 +599267.69 5682612.21 96.25 +599267.88 5680073.42 96.00 +599268.05 5682501.35 95.00 +599268.17 5677939.21 100.00 +599268.19 5681148.24 96.25 +599268.23 5678178.36 100.00 +599268.28 5682556.41 95.00 +599268.30 5678629.31 98.75 +599268.34 5678825.60 98.75 +599268.35 5682948.33 96.25 +599268.76 5682511.06 95.00 +599268.77 5682472.17 95.00 +599268.80 5678121.36 101.25 +599268.97 5680060.31 97.50 +599269.26 5682269.38 96.25 +599269.42 5678505.26 98.75 +599269.66 5680122.29 98.75 +599269.68 5682624.55 96.25 +599269.72 5682960.87 95.00 +599269.81 5681090.71 96.00 +599269.89 5682568.55 96.25 +599270.03 5678785.05 98.75 +599270.08 5681438.74 96.25 +599271.11 5682546.86 95.00 +599271.29 5681042.16 96.25 +599271.29 5681099.23 96.00 +599271.63 5680399.37 97.50 +599271.71 5681468.85 96.25 +599271.80 5682864.99 96.25 +599272.47 5682470.59 96.25 +599272.77 5682394.86 96.25 +599272.89 5682359.01 96.25 +599272.89 5686186.31 95.00 +599272.98 5680378.26 98.75 +599273.11 5682109.15 96.25 +599273.35 5682875.66 96.25 +599273.36 5677477.17 100.00 +599273.46 5682377.49 96.25 +599273.48 5682480.78 95.00 +599273.94 5682537.31 95.00 +599273.99 5687369.42 95.00 +599274.18 5682559.61 96.25 +599274.52 5677931.53 100.00 +599275.00 5676734.98 101.25 +599275.21 5682904.08 96.25 +599275.25 5681032.99 96.25 +599275.28 5680067.11 97.50 +599275.41 5681141.44 96.25 +599275.80 5682882.12 96.25 +599276.12 5681339.58 97.50 +599276.13 5678154.48 101.25 +599276.17 5680390.54 97.50 +599276.22 5682262.21 96.25 +599276.23 5686267.56 95.00 +599276.67 5678777.74 98.75 +599276.89 5681329.88 97.50 +599277.14 5678271.92 98.75 +599277.16 5682174.52 96.25 +599277.17 5682609.06 96.25 +599277.29 5681445.30 96.25 +599277.31 5682527.94 95.00 +599277.42 5678829.63 98.75 +599277.43 5681349.32 97.50 +599277.54 5682489.84 95.00 +599277.54 5680128.41 98.75 +599277.78 5681476.42 96.25 +599277.79 5682550.31 96.25 +599277.85 5678180.94 100.00 +599277.99 5678117.47 101.25 +599278.20 5682946.92 96.25 +599278.20 5678628.06 98.75 +599278.52 5682478.51 96.25 +599278.53 5681320.19 97.50 +599278.81 5681023.67 96.25 +599278.98 5682957.30 95.00 +599279.29 5682621.83 96.25 +599279.34 5678505.75 98.75 +599279.39 5682351.44 96.25 +599279.48 5680370.69 98.75 +599279.90 5682518.40 95.00 +599279.98 5686179.50 95.00 +599280.37 5681358.66 97.50 +599280.40 5681387.36 97.50 +599280.56 5682860.38 96.25 +599280.65 5681397.02 97.50 +599280.86 5682508.49 95.00 +599281.07 5682540.89 96.25 +599281.25 5682389.70 96.25 +599281.31 5677924.25 100.00 +599281.52 5680382.22 97.50 +599281.70 5681133.69 96.25 +599281.82 5682498.57 95.00 +599281.89 5681406.77 97.50 +599282.08 5681014.23 96.25 +599282.14 5682871.11 96.25 +599282.50 5681368.16 97.50 +599282.52 5681311.55 97.50 +599282.66 5682374.55 96.25 +599282.72 5682254.62 96.25 +599282.99 5682107.77 96.25 +599283.02 5687365.44 95.00 +599283.03 5677479.65 100.00 +599283.23 5681377.95 97.50 +599283.31 5676729.44 101.25 +599283.63 5680072.17 97.50 +599283.88 5682486.91 96.25 +599284.18 5682899.97 96.25 +599284.50 5681451.85 96.25 +599284.57 5682531.55 96.25 +599284.79 5678772.01 98.75 +599285.00 5682878.46 96.25 +599285.22 5680362.54 98.75 +599285.30 5681482.33 96.25 +599285.40 5681415.89 97.50 +599285.42 5680134.52 98.75 +599285.81 5678155.87 101.25 +599285.89 5686265.69 95.00 +599285.93 5678111.63 101.25 +599286.01 5682343.98 96.25 +599286.11 5682723.54 96.25 +599286.11 5682733.08 96.25 +599286.51 5681005.36 96.25 +599286.82 5682606.48 96.25 +599286.86 5682381.67 96.25 +599286.92 5682172.94 96.25 +599286.94 5678270.04 98.75 +599286.95 5678831.98 98.75 +599287.00 5682862.86 96.25 +599287.35 5681125.48 96.25 +599287.45 5680374.27 97.50 +599287.66 5678179.33 100.00 +599288.07 5682945.63 96.25 +599288.10 5678626.80 98.75 +599288.15 5677917.01 100.00 +599288.24 5682953.72 95.00 +599288.37 5682522.33 96.25 +599288.96 5686336.91 95.00 +599288.99 5682619.45 96.25 +599289.10 5678504.02 98.75 +599289.18 5686175.63 95.00 +599289.19 5682247.01 96.25 +599289.59 5681460.12 96.25 +599289.60 5686327.23 95.00 +599289.64 5681305.53 97.50 +599289.78 5682714.74 96.25 +599290.05 5686346.84 95.00 +599290.63 5682494.26 96.25 +599290.73 5677964.04 101.25 +599290.96 5680354.38 98.75 +599291.40 5677954.26 101.25 +599291.48 5682217.63 96.25 +599291.55 5676723.81 101.25 +599291.89 5682513.01 96.25 +599291.95 5677973.85 101.25 +599291.99 5682237.42 96.25 +599292.02 5681422.87 97.50 +599292.18 5682738.13 96.25 +599292.32 5680076.51 97.50 +599292.37 5682227.59 96.25 +599292.49 5681116.91 96.25 +599292.50 5680141.49 98.75 +599292.71 5682894.93 96.25 +599292.72 5687363.28 95.00 +599292.73 5677482.03 100.00 +599292.88 5682336.75 96.25 +599292.88 5682720.75 96.00 +599292.90 5678766.28 98.75 +599292.96 5682107.93 96.25 +599293.30 5686270.55 95.00 +599293.34 5678104.97 101.25 +599293.38 5680366.31 97.50 +599293.47 5686356.18 95.00 +599293.52 5686318.04 95.00 +599293.76 5680998.99 96.25 +599293.95 5682503.34 96.25 +599294.13 5682874.64 96.25 +599294.21 5682706.37 96.25 +599294.45 5677944.77 101.25 +599294.49 5681468.55 96.25 +599294.74 5681484.64 96.25 +599294.86 5677909.65 100.00 +599295.08 5682208.53 96.25 +599295.15 5682167.61 96.25 +599295.67 5686308.34 95.00 +599295.78 5678155.71 101.25 +599295.95 5682260.59 95.70 +599296.26 5680752.90 96.25 +599296.46 5682730.52 96.25 +599296.48 5682603.95 96.25 +599296.69 5680346.22 98.75 +599296.82 5678833.07 98.75 +599296.86 5678269.07 98.75 +599296.93 5678497.83 98.75 +599296.98 5677982.31 101.25 +599297.32 5682250.92 95.70 +599297.48 5678177.66 100.00 +599297.50 5682950.15 95.00 +599297.62 5686365.25 95.00 +599297.67 5681477.73 96.25 +599297.72 5686298.58 95.00 +599297.74 5681108.41 96.25 +599297.76 5686279.33 95.00 +599297.94 5682944.35 96.25 +599298.00 5678625.54 98.75 +599298.06 5682231.49 95.70 +599298.24 5680743.25 96.25 +599298.52 5682241.24 95.70 +599298.63 5686172.66 95.00 +599298.74 5682617.26 96.25 +599298.75 5677100.04 100.00 +599298.98 5681079.17 96.25 +599298.99 5682221.78 95.70 +599299.02 5680149.04 98.75 +599299.03 5681069.19 96.25 +599299.21 5680358.28 97.50 +599299.30 5681303.72 97.50 +599299.39 5682721.67 96.25 +599299.40 5682673.02 96.25 +599299.44 5681059.22 96.25 +599299.55 5677109.63 100.00 +599299.62 5681429.09 97.50 +599299.72 5676718.07 101.25 +599299.72 5678097.38 101.25 +599299.81 5681089.13 96.25 +599299.93 5682329.69 96.25 +599300.29 5681099.09 96.25 +599300.36 5686288.95 95.00 +599300.46 5681049.28 96.25 +599300.70 5682889.23 96.25 +599300.90 5677090.61 100.00 +599301.08 5677937.32 101.25 +599301.27 5678760.93 98.75 +599301.35 5682200.75 96.25 +599301.47 5682703.78 96.25 +599301.47 5680758.63 96.25 +599301.56 5680079.54 97.50 +599301.56 5677902.29 100.00 +599302.11 5681001.23 96.25 +599302.33 5682212.65 95.70 +599302.38 5686374.03 95.00 +599302.57 5677483.62 100.00 +599302.65 5680734.32 96.25 +599302.66 5687362.26 95.00 +599302.71 5682712.75 96.25 +599302.80 5682679.18 96.25 +599302.84 5682108.71 96.25 +599302.89 5682161.53 96.25 +599302.93 5682262.20 95.70 +599303.12 5681039.73 96.25 +599303.43 5680338.87 98.75 +599303.62 5682664.49 96.25 +599303.68 5682873.55 96.25 +599304.03 5677989.36 101.25 +599304.47 5677118.22 100.00 +599304.77 5678491.65 98.75 +599304.98 5680350.21 97.50 +599305.01 5678151.98 101.25 +599305.13 5679671.91 98.75 +599305.49 5682901.92 96.25 +599305.53 5678089.27 101.25 +599305.53 5680156.58 98.75 +599305.86 5677893.31 100.00 +599305.93 5681010.46 96.25 +599306.09 5682253.61 95.70 +599306.11 5682601.30 96.25 +599306.39 5681020.35 96.25 +599306.39 5681030.34 96.25 +599306.66 5682243.87 95.70 +599306.68 5679662.25 98.75 +599306.70 5678834.17 98.75 +599306.76 5682946.58 95.00 +599306.77 5686383.00 95.00 +599306.81 5678268.38 98.75 +599306.98 5682322.63 96.25 +599307.02 5677968.80 102.50 +599307.06 5678175.10 100.00 +599307.06 5682881.83 96.25 +599307.12 5679681.68 98.75 +599307.18 5682940.73 96.25 +599307.38 5677959.33 102.50 +599307.71 5682893.02 96.25 +599307.73 5682234.23 95.70 +599307.85 5677930.03 101.25 +599307.86 5682193.18 96.25 +599307.91 5678624.31 98.75 +599307.95 5680725.85 96.25 +599308.00 5677084.99 100.00 +599308.33 5681433.64 97.50 +599308.33 5682447.35 96.25 +599308.37 5680752.13 96.25 +599308.53 5682615.37 96.25 +599308.56 5686171.57 95.00 +599309.01 5676714.99 101.25 +599309.01 5681305.08 97.50 +599309.15 5679691.43 98.75 +599309.23 5679652.62 98.75 +599309.60 5677126.47 100.00 +599309.66 5678755.61 98.75 +599310.15 5677884.32 100.00 +599310.30 5680331.64 98.75 +599310.43 5682657.30 96.25 +599310.50 5682454.04 96.25 +599310.53 5677977.45 102.50 +599310.64 5678080.75 101.25 +599310.72 5682224.93 95.70 +599310.78 5678484.01 98.75 +599311.09 5680342.40 97.50 +599311.12 5677950.65 102.50 +599311.15 5686391.98 95.00 +599311.28 5682210.01 95.70 +599311.30 5680080.24 97.50 +599311.31 5682674.32 96.25 +599311.78 5679642.98 98.75 +599311.99 5677995.36 101.25 +599312.15 5680164.04 98.75 +599312.37 5686451.25 95.00 +599312.37 5682111.69 96.25 +599312.56 5677483.62 100.00 +599312.59 5682161.98 96.25 +599312.60 5687361.37 95.00 +599312.60 5682285.23 96.25 +599312.60 5682904.23 96.25 +599312.66 5686461.02 95.00 +599312.74 5682884.67 96.25 +599312.95 5680743.25 96.25 +599312.96 5686441.28 95.00 +599313.10 5682314.91 96.25 +599313.17 5682275.27 96.25 +599313.17 5682295.17 96.25 +599313.34 5679700.47 98.75 +599313.54 5686431.31 95.00 +599313.73 5686401.61 95.00 +599313.87 5682265.32 96.25 +599314.10 5682305.10 96.25 +599314.18 5678148.06 101.25 +599314.26 5680718.12 96.25 +599314.27 5686421.35 95.00 +599314.40 5677875.32 100.00 +599314.77 5682742.02 96.25 +599314.98 5682186.17 96.25 +599315.04 5678071.81 101.25 +599315.10 5678475.01 98.75 +599315.12 5686411.39 95.00 +599315.55 5682255.49 96.25 +599315.70 5682598.49 96.25 +599316.02 5677924.31 101.25 +599316.02 5682943.01 95.00 +599316.26 5682216.96 95.70 +599316.40 5682936.99 96.25 +599316.41 5678171.67 100.00 +599316.57 5678835.27 98.75 +599316.63 5682649.56 96.25 +599316.75 5680734.04 96.25 +599316.77 5678268.33 98.75 +599316.88 5682733.93 96.25 +599316.99 5680708.64 96.25 +599317.04 5681438.19 97.50 +599317.07 5677132.96 100.00 +599317.17 5680324.41 98.75 +599317.43 5677082.01 100.00 +599317.48 5680334.80 97.50 +599317.54 5681351.84 98.00 +599317.60 5677865.89 100.00 +599317.60 5686469.70 95.00 +599317.81 5678623.09 98.75 +599317.83 5679635.09 98.75 +599317.86 5682445.31 96.25 +599317.99 5677983.07 102.50 +599318.04 5678750.29 98.75 +599318.23 5686169.31 95.00 +599318.30 5679708.91 98.75 +599318.47 5682614.35 96.25 +599318.60 5677944.91 102.50 +599318.73 5681306.54 97.50 +599318.84 5676713.41 101.25 +599318.94 5682168.27 96.25 +599319.01 5678465.87 98.75 +599319.06 5682750.72 96.25 +599319.08 5682924.99 96.25 +599319.11 5682877.21 96.25 +599319.28 5682668.43 96.25 +599319.54 5680170.74 98.75 +599319.59 5682246.81 96.25 +599319.75 5682118.19 96.25 +599319.76 5678063.03 101.25 +599319.77 5678001.57 101.25 +599319.86 5682177.95 96.25 +599320.20 5682454.12 96.25 +599320.80 5677856.46 100.00 +599321.03 5680079.49 97.50 +599321.10 5680699.53 96.25 +599321.43 5682900.02 96.25 +599321.59 5678456.23 98.75 +599321.82 5686673.64 95.00 +599322.05 5680725.71 96.25 +599322.09 5686664.06 95.00 +599322.40 5682917.18 96.25 +599322.40 5677482.33 100.00 +599322.51 5682641.59 96.25 +599322.55 5687362.25 95.00 +599322.55 5677112.87 99.50 +599322.78 5680316.27 98.75 +599322.84 5682888.42 95.00 +599323.26 5678143.94 101.25 +599323.35 5680689.84 96.25 +599323.52 5682237.72 96.25 +599323.54 5682741.86 96.00 +599323.86 5680327.20 97.50 +599323.99 5679627.25 98.75 +599324.00 5677847.02 100.00 +599324.17 5678446.59 98.75 +599324.19 5677918.60 101.25 +599324.87 5678054.47 101.25 +599325.00 5682600.56 96.25 +599325.26 5682939.38 95.00 +599325.49 5686682.55 95.00 +599325.69 5682933.40 96.25 +599325.71 5682228.05 96.25 +599325.76 5677137.68 100.00 +599325.76 5678168.25 100.00 +599325.88 5682879.28 95.00 +599325.92 5682870.14 96.25 +599326.10 5679715.12 98.75 +599326.19 5682733.04 96.25 +599326.41 5681440.14 97.50 +599326.44 5678836.37 98.75 +599326.46 5686472.42 95.00 +599326.46 5678745.02 98.75 +599326.48 5677078.04 100.00 +599326.62 5682609.36 96.25 +599326.70 5678267.87 98.75 +599326.79 5677940.17 102.50 +599326.81 5682125.24 96.25 +599326.88 5682925.33 96.25 +599326.92 5680177.45 98.75 +599327.01 5677985.97 102.50 +599327.05 5680680.57 96.25 +599327.09 5678008.35 101.25 +599327.22 5682442.58 96.25 +599327.33 5682662.64 96.25 +599327.48 5680307.47 98.75 +599327.67 5686166.05 95.00 +599327.73 5678623.01 98.75 +599327.81 5681310.11 97.50 +599327.90 5682749.80 96.25 +599327.99 5678437.42 98.75 +599328.32 5682633.55 96.25 +599328.82 5676713.62 101.25 +599328.82 5678045.35 101.25 +599328.90 5682218.78 96.25 +599329.20 5680727.32 96.25 +599329.27 5686657.94 95.00 +599329.27 5682910.27 96.25 +599329.28 5682479.96 96.25 +599329.89 5682453.24 96.25 +599329.91 5679619.27 98.75 +599330.03 5682895.27 96.25 +599330.24 5680319.60 97.50 +599330.31 5677839.35 100.00 +599330.52 5680737.23 96.25 +599330.63 5682740.78 96.25 +599330.67 5680671.27 96.25 +599330.77 5680078.74 97.50 +599330.80 5682882.32 94.75 +599331.02 5682887.51 95.00 +599331.67 5678035.81 101.25 +599331.86 5682133.84 96.25 +599331.98 5686690.15 95.00 +599332.11 5682642.63 95.00 +599332.12 5677480.01 100.00 +599332.14 5677113.12 99.50 +599332.16 5677912.61 101.25 +599332.17 5680298.67 98.75 +599332.26 5678016.25 101.25 +599332.32 5680812.59 96.25 +599332.34 5678139.82 101.25 +599332.43 5678428.48 98.75 +599332.50 5687363.13 95.00 +599332.65 5680746.92 96.25 +599333.20 5682872.49 95.00 +599333.31 5680822.29 96.25 +599333.59 5682864.00 96.25 +599333.67 5678026.12 101.25 +599333.83 5682210.10 96.25 +599333.90 5679721.32 98.75 +599334.19 5679610.27 98.75 +599334.31 5680184.15 98.75 +599334.38 5682436.29 96.25 +599334.45 5682919.14 96.25 +599334.46 5682935.66 95.00 +599334.52 5682634.44 95.00 +599334.67 5680662.22 96.25 +599334.96 5682472.09 96.25 +599334.97 5678739.90 98.75 +599334.97 5677072.95 100.00 +599334.97 5682929.82 96.25 +599335.04 5677141.14 100.00 +599335.12 5678164.83 100.00 +599335.15 5677935.70 102.50 +599335.53 5682657.08 96.25 +599335.54 5681436.56 97.50 +599335.91 5682627.18 96.25 +599335.97 5680311.52 97.50 +599336.29 5677987.74 102.50 +599336.36 5678835.93 98.75 +599336.39 5682481.91 96.25 +599336.40 5686473.39 95.00 +599336.51 5680804.42 96.25 +599336.61 5678266.76 98.75 +599336.72 5677831.73 100.00 +599336.74 5681314.23 97.50 +599336.86 5682142.48 96.25 +599336.91 5682904.15 96.25 +599337.44 5680831.14 96.25 +599337.57 5686165.72 95.00 +599337.63 5678420.09 98.75 +599337.67 5678623.88 98.75 +599338.24 5680698.50 96.00 +599338.27 5682638.33 94.75 +599338.39 5686697.81 95.00 +599338.43 5682890.20 96.25 +599338.47 5676716.07 101.25 +599338.47 5679601.27 98.75 +599338.51 5682646.10 95.00 +599338.51 5680291.02 98.75 +599338.87 5677962.07 101.00 +599339.04 5680752.45 96.25 +599339.21 5686657.71 95.00 +599339.51 5682451.63 96.25 +599339.56 5682882.32 95.00 +599340.09 5677906.57 101.25 +599340.50 5680077.92 97.50 +599340.52 5680191.86 98.75 +599340.56 5682907.21 96.00 +599340.75 5682203.03 96.25 +599340.87 5680654.42 96.25 +599341.31 5680303.16 97.50 +599341.52 5678135.94 101.25 +599341.57 5682629.57 95.00 +599341.73 5677113.38 99.50 +599341.76 5682858.56 96.25 +599341.77 5682912.64 96.25 +599341.81 5682873.64 95.00 +599341.84 5677477.70 100.00 +599341.91 5681429.07 97.50 +599341.92 5682430.41 96.25 +599342.05 5681655.79 96.25 +599342.30 5680690.53 96.00 +599342.42 5687363.16 95.00 +599342.76 5679592.27 98.75 +599343.39 5679724.30 98.75 +599343.40 5682149.27 96.25 +599343.43 5680838.79 96.25 +599343.45 5682639.52 95.00 +599343.48 5678734.77 98.75 +599343.61 5682924.89 96.25 +599343.61 5682620.99 96.25 +599343.67 5682931.95 95.00 +599343.75 5682651.54 96.25 +599343.95 5677825.08 100.00 +599344.06 5677106.13 99.50 +599344.21 5682897.64 96.25 +599344.24 5682468.38 96.25 +599344.32 5677144.61 100.00 +599344.33 5677933.39 102.50 +599344.45 5681319.94 97.50 +599344.47 5678161.41 100.00 +599344.54 5677072.19 100.00 +599344.67 5678413.01 98.75 +599344.83 5680744.31 96.25 +599344.84 5680806.63 96.25 +599345.12 5680283.54 98.75 +599345.39 5681400.60 97.50 +599345.44 5681419.93 97.50 +599345.58 5681663.18 96.25 +599345.62 5682478.13 96.25 +599345.72 5677987.32 102.50 +599345.86 5681410.36 97.50 +599345.97 5680200.21 98.75 +599346.14 5682352.63 96.25 +599346.26 5678107.18 105.00 +599346.28 5678835.42 98.75 +599346.36 5686474.19 95.00 +599346.36 5680682.57 96.00 +599346.39 5682884.51 96.25 +599346.39 5677098.87 99.50 +599346.53 5678265.65 98.75 +599346.65 5686702.96 95.00 +599346.66 5680294.80 97.50 +599346.96 5678099.37 105.00 +599347.04 5679583.27 98.75 +599347.04 5681390.94 97.50 +599347.28 5682850.45 96.25 +599347.34 5682631.93 95.00 +599347.37 5680646.83 96.25 +599347.38 5686167.60 95.00 +599347.53 5678625.33 98.75 +599347.63 5682900.90 96.00 +599347.68 5682195.87 96.25 +599347.71 5677900.17 101.25 +599347.73 5676719.60 101.25 +599348.42 5681568.35 96.25 +599348.54 5681649.96 96.25 +599348.64 5680735.24 96.25 +599348.85 5677118.83 99.50 +599348.86 5682905.92 96.25 +599349.02 5681576.75 96.25 +599349.07 5682449.77 96.25 +599349.20 5686657.71 95.00 +599349.28 5680815.35 96.25 +599349.87 5682345.65 96.25 +599350.11 5680275.06 98.75 +599350.22 5682438.44 96.00 +599350.22 5680077.09 97.50 +599350.42 5680674.60 96.00 +599350.59 5681381.78 97.50 +599350.63 5678205.38 100.00 +599350.78 5678132.25 101.25 +599350.83 5680845.20 96.25 +599350.84 5681327.41 97.50 +599350.94 5680208.81 98.75 +599351.01 5682471.49 96.00 +599351.11 5680725.56 96.25 +599351.16 5682428.08 96.25 +599351.28 5679574.25 98.75 +599351.41 5682891.02 96.25 +599351.55 5677475.34 100.00 +599351.62 5678214.24 100.00 +599351.70 5678405.93 98.75 +599351.89 5680286.37 97.50 +599351.98 5678729.64 98.75 +599352.09 5682646.19 96.25 +599352.18 5682699.25 96.25 +599352.18 5682919.83 96.25 +599352.19 5682841.96 96.25 +599352.21 5677078.46 100.00 +599352.22 5686176.07 95.00 +599352.28 5687361.56 95.00 +599352.49 5680824.63 96.25 +599352.51 5677819.99 100.00 +599352.56 5682927.54 95.00 +599352.60 5682148.31 96.25 +599352.66 5680715.70 96.25 +599352.88 5682617.49 96.25 +599352.93 5679727.16 98.75 +599353.01 5678196.20 100.00 +599353.26 5678093.31 105.00 +599353.48 5680638.93 96.25 +599353.64 5682877.89 96.25 +599353.77 5677932.61 102.50 +599353.77 5677932.61 105.00 +599353.80 5682465.51 96.25 +599353.89 5677892.49 101.25 +599353.89 5677147.14 100.00 +599353.89 5680265.83 98.75 +599353.93 5681665.32 96.25 +599354.08 5682789.71 96.25 +599354.10 5678158.89 100.00 +599354.39 5682188.49 96.25 +599354.45 5678109.67 105.00 +599354.49 5680666.64 96.00 +599354.60 5677353.26 100.00 +599354.60 5681372.82 97.50 +599354.62 5680705.94 96.25 +599354.62 5680218.08 98.75 +599354.70 5682894.58 96.00 +599354.88 5677984.87 102.50 +599355.23 5682352.19 96.25 +599355.48 5686477.00 95.00 +599355.50 5682476.80 96.25 +599355.51 5679565.23 98.75 +599355.55 5682898.78 96.25 +599355.57 5682832.90 96.25 +599355.76 5677363.19 100.00 +599355.82 5681583.67 96.25 +599355.86 5686185.37 95.00 +599355.87 5686706.79 95.00 +599355.98 5677124.27 99.50 +599356.20 5678834.92 98.75 +599356.25 5682796.81 96.25 +599356.26 5678263.49 98.75 +599356.38 5676724.58 101.25 +599356.68 5680277.68 97.50 +599356.69 5682703.17 96.25 +599356.85 5682823.16 96.25 +599356.86 5681646.20 96.25 +599357.09 5682339.12 96.25 +599357.14 5680832.77 96.25 +599357.15 5681566.54 96.25 +599357.22 5681334.88 97.50 +599357.27 5678627.47 98.75 +599357.48 5686994.89 95.00 +599357.62 5682179.15 96.25 +599357.62 5677086.73 100.00 +599357.65 5680696.41 96.25 +599357.67 5680256.60 98.75 +599357.69 5682691.78 96.25 +599357.80 5682781.04 96.25 +599357.84 5677344.19 100.00 +599357.97 5681363.63 97.50 +599357.99 5682140.12 96.25 +599358.23 5687004.84 95.00 +599358.27 5678219.44 100.00 +599358.30 5680227.35 98.75 +599358.55 5680658.68 96.00 +599358.58 5682447.59 96.25 +599358.61 5682884.40 96.25 +599358.62 5677883.71 101.25 +599358.74 5678398.86 98.75 +599358.75 5680851.00 96.25 +599358.85 5681654.96 96.00 +599358.86 5686656.23 95.00 +599359.04 5680246.74 98.75 +599359.17 5681344.40 97.50 +599359.18 5682870.03 96.25 +599359.29 5680630.82 96.25 +599359.53 5677372.41 100.00 +599359.55 5682813.74 96.25 +599359.60 5678099.66 105.25 +599359.62 5682640.03 96.25 +599359.72 5686194.58 95.00 +599359.73 5679556.20 98.75 +599359.95 5680076.26 97.50 +599360.06 5678128.60 101.25 +599360.10 5687014.61 95.00 +599360.26 5680236.84 98.75 +599360.28 5686986.23 95.00 +599360.29 5681354.09 97.50 +599360.45 5681575.72 96.00 +599360.49 5677096.10 100.00 +599360.60 5682914.58 96.25 +599360.91 5682428.08 96.25 +599361.07 5677472.39 100.00 +599361.11 5677926.39 105.00 +599361.19 5682169.84 96.25 +599361.20 5677815.18 100.00 +599361.29 5682772.08 96.25 +599361.31 5678726.24 98.75 +599361.38 5678089.75 105.00 +599361.46 5687074.27 95.00 +599361.48 5680268.99 97.50 +599361.62 5687024.43 95.00 +599361.77 5682888.27 96.00 +599361.77 5678193.23 100.00 +599361.92 5682924.37 95.00 +599362.15 5687359.97 95.00 +599362.38 5680687.81 96.25 +599362.39 5687064.33 95.00 +599362.41 5687034.39 95.00 +599362.45 5682615.85 96.25 +599362.50 5682891.90 96.25 +599362.51 5677934.13 105.00 +599362.62 5687054.34 95.00 +599362.64 5687083.86 95.00 +599362.76 5679728.74 98.75 +599362.84 5687044.36 95.00 +599362.85 5677335.59 100.00 +599362.94 5678106.64 105.00 +599362.95 5681664.07 96.25 +599362.96 5686483.60 95.00 +599362.98 5682131.48 96.25 +599363.10 5677129.71 99.50 +599363.15 5682861.05 96.25 +599363.24 5677874.88 101.25 +599363.47 5677149.67 100.00 +599363.51 5682467.89 96.25 +599363.60 5682790.81 96.25 +599363.62 5677981.27 102.50 +599363.76 5682684.52 96.25 +599363.77 5682347.68 96.25 +599363.81 5678156.74 100.00 +599363.85 5686203.68 95.00 +599363.87 5682804.99 96.25 +599364.03 5679547.21 98.75 +599364.09 5682697.41 96.25 +599364.20 5680622.12 96.25 +599364.21 5682631.31 96.25 +599364.36 5682332.64 96.25 +599364.68 5680259.73 97.50 +599364.83 5681587.67 96.25 +599364.86 5682763.15 96.25 +599364.95 5682160.60 96.25 +599364.96 5676729.67 101.25 +599365.10 5686710.62 95.00 +599365.34 5681642.81 96.25 +599365.46 5682476.56 96.25 +599365.58 5677104.45 100.00 +599365.58 5677380.30 100.00 +599365.77 5680837.36 96.25 +599365.94 5678261.09 98.75 +599366.05 5682878.05 96.25 +599366.11 5678834.42 98.75 +599366.38 5678392.48 98.75 +599366.52 5681569.61 96.25 +599366.54 5680249.98 97.50 +599366.61 5687093.02 95.00 +599367.02 5678629.61 98.75 +599367.13 5682852.07 96.25 +599367.23 5682907.17 96.25 +599367.25 5677865.75 101.25 +599367.44 5686651.40 95.00 +599367.58 5678221.24 100.00 +599367.60 5682621.99 96.25 +599367.62 5682443.94 96.25 +599367.74 5682685.71 96.00 +599367.74 5680854.93 96.25 +599367.89 5686589.26 95.00 +599368.20 5682881.31 96.00 +599368.25 5680240.21 97.50 +599368.26 5682123.02 96.25 +599368.26 5686980.22 95.00 +599368.34 5686491.97 95.00 +599368.46 5682782.51 96.25 +599368.63 5682754.30 96.25 +599368.65 5680680.03 96.25 +599368.72 5679538.42 98.75 +599368.83 5686579.47 95.00 +599369.09 5682151.63 96.25 +599369.11 5680613.41 96.25 +599369.33 5682768.14 96.00 +599369.33 5678124.95 101.25 +599369.61 5677328.24 100.00 +599369.65 5682885.22 96.25 +599369.68 5680076.35 97.50 +599369.91 5677938.62 105.00 +599370.01 5682677.41 96.25 +599370.01 5677923.08 105.00 +599370.07 5682842.72 96.25 +599370.16 5680230.47 97.50 +599370.23 5677135.15 99.50 +599370.30 5686598.96 95.00 +599370.34 5682690.29 96.25 +599370.37 5677468.73 100.00 +599370.38 5678090.11 105.00 +599370.63 5682428.84 96.25 +599370.65 5678722.85 98.75 +599370.67 5677812.09 100.00 +599370.70 5686569.66 95.00 +599370.94 5678191.12 100.00 +599371.01 5678102.51 105.00 +599371.05 5682798.96 96.25 +599371.49 5686209.52 95.00 +599371.52 5681661.64 96.25 +599371.52 5682921.84 95.00 +599371.80 5687357.91 95.00 +599371.94 5677112.02 100.00 +599372.05 5682342.55 96.25 +599372.06 5677387.91 100.00 +599372.17 5677977.18 102.50 +599372.17 5677977.18 105.00 +599372.33 5682773.73 96.25 +599372.43 5680220.81 97.50 +599372.49 5679730.80 98.75 +599372.52 5686559.84 95.00 +599372.54 5687100.95 95.00 +599372.77 5686500.92 95.00 +599372.78 5682833.28 96.25 +599372.86 5680767.00 97.50 +599372.90 5682328.00 96.25 +599373.06 5680211.07 97.50 +599373.10 5682470.59 96.25 +599373.17 5682759.46 96.00 +599373.19 5680604.31 96.25 +599373.21 5676735.29 101.25 +599373.23 5677151.15 100.00 +599373.31 5681584.85 96.25 +599373.49 5680671.29 96.25 +599373.50 5682871.69 96.25 +599373.50 5682746.01 96.25 +599373.59 5681575.73 96.25 +599373.60 5682114.59 96.25 +599373.62 5686643.54 95.00 +599373.68 5678155.39 100.00 +599373.73 5680757.32 97.50 +599373.74 5677858.19 101.25 +599373.86 5682899.74 96.25 +599373.86 5679530.02 98.75 +599374.19 5686714.72 95.00 +599374.32 5680776.71 97.50 +599374.35 5681642.22 96.25 +599374.37 5686550.02 95.00 +599374.45 5678386.62 98.75 +599374.51 5682874.24 96.00 +599374.89 5678206.11 100.25 +599375.13 5682476.37 96.25 +599375.14 5680840.29 96.25 +599375.37 5686607.49 95.00 +599375.43 5682823.83 96.25 +599375.60 5686510.50 95.00 +599375.64 5682144.11 96.25 +599375.69 5678259.07 98.75 +599375.90 5677945.26 105.00 +599375.92 5682764.81 96.25 +599376.02 5678833.76 98.75 +599376.17 5680747.77 97.50 +599376.21 5678095.69 105.00 +599376.23 5680201.97 97.50 +599376.23 5682814.04 96.25 +599376.38 5677320.88 100.00 +599376.44 5682670.48 96.25 +599376.55 5686520.40 95.00 +599376.56 5686540.27 95.00 +599376.62 5680786.29 97.50 +599376.66 5682440.30 96.25 +599376.75 5680858.85 96.25 +599376.80 5682804.30 96.25 +599376.80 5682878.54 96.25 +599376.81 5678631.54 98.75 +599376.93 5678220.53 100.00 +599377.01 5682750.78 96.00 +599377.06 5686530.38 95.00 +599377.08 5680595.11 96.25 +599377.15 5682683.74 96.25 +599377.26 5686980.07 95.00 +599377.47 5677969.98 105.00 +599377.97 5678120.11 101.25 +599378.22 5680662.50 96.25 +599378.30 5681655.58 96.25 +599378.37 5682737.72 96.25 +599378.53 5677119.41 100.00 +599378.65 5677395.42 100.00 +599378.79 5677463.40 100.00 +599378.89 5686635.16 95.00 +599378.93 5682106.16 96.25 +599379.11 5687108.49 95.00 +599379.28 5677920.80 105.00 +599379.40 5680077.26 97.50 +599379.62 5687351.69 95.00 +599379.74 5682755.99 96.25 +599379.75 5682425.39 96.25 +599379.83 5677952.90 105.00 +599379.94 5677982.79 105.00 +599379.99 5678719.46 98.75 +599380.04 5682864.44 96.25 +599380.07 5682891.96 96.25 +599380.14 5677809.00 100.00 +599380.25 5686214.32 95.00 +599380.25 5682337.29 96.25 +599380.28 5686616.18 95.00 +599380.39 5680193.14 97.50 +599380.42 5678191.36 100.00 +599380.48 5677961.67 105.00 +599380.48 5677851.02 101.25 +599380.72 5680739.03 97.50 +599380.86 5678379.06 98.75 +599380.91 5682742.13 96.00 +599381.08 5681647.65 96.25 +599381.30 5682867.64 96.00 +599381.38 5680586.09 96.25 +599381.46 5676740.91 101.25 +599381.48 5682136.02 96.25 +599381.55 5682323.51 96.25 +599381.83 5686625.75 95.00 +599381.84 5682728.78 96.25 +599381.95 5679524.20 98.75 +599381.99 5680653.25 96.25 +599382.05 5679733.59 98.75 +599382.53 5677313.06 100.00 +599382.77 5680793.84 97.50 +599382.85 5686719.71 95.00 +599383.04 5677150.78 100.00 +599383.28 5682676.91 96.25 +599383.35 5686987.99 95.00 +599383.55 5678154.05 100.00 +599384.00 5682871.91 96.25 +599384.28 5680843.86 96.25 +599384.41 5677127.37 100.00 +599384.59 5680184.32 97.50 +599384.59 5682747.69 96.25 +599384.80 5677199.81 100.00 +599384.86 5682667.69 96.25 +599384.86 5682733.50 96.00 +599384.94 5682719.68 96.25 +599385.09 5677403.05 100.00 +599385.13 5678449.71 100.00 +599385.27 5678459.42 100.00 +599385.28 5680730.31 97.50 +599385.64 5678258.34 98.75 +599385.70 5687115.99 95.00 +599385.70 5682436.63 96.25 +599385.78 5678440.00 100.00 +599385.90 5680862.21 96.25 +599385.91 5678832.83 98.75 +599385.97 5678469.12 100.00 +599386.02 5680853.19 96.00 +599386.03 5677209.67 100.00 +599386.08 5678114.31 101.25 +599386.29 5678219.06 100.00 +599386.33 5677189.96 100.00 +599386.37 5682884.26 96.25 +599386.39 5682857.00 96.25 +599386.42 5678430.29 100.00 +599386.47 5677457.17 100.00 +599386.67 5678478.83 100.00 +599386.68 5678633.00 98.75 +599386.74 5680644.46 96.25 +599386.75 5682099.96 96.25 +599386.88 5678371.10 98.75 +599386.96 5682127.69 96.25 +599387.44 5687345.47 95.00 +599387.83 5678420.77 100.00 +599388.01 5680754.04 97.80 +599388.02 5677304.71 100.00 +599388.12 5682861.08 96.00 +599388.16 5680578.96 96.25 +599388.43 5682331.99 96.25 +599388.59 5682738.98 96.25 +599388.64 5682710.81 96.25 +599388.82 5677986.47 105.00 +599388.84 5677219.21 100.00 +599388.85 5677921.74 105.00 +599389.03 5682422.52 96.25 +599389.09 5680078.45 97.50 +599389.32 5678716.07 98.75 +599389.36 5686727.06 95.00 +599389.61 5680606.91 96.00 +599389.64 5677806.03 100.00 +599389.85 5686217.04 95.00 +599389.89 5678191.60 100.00 +599389.90 5686995.53 95.00 +599389.91 5676746.22 101.25 +599390.04 5679518.38 98.75 +599390.09 5677848.35 101.25 +599390.14 5680721.74 97.50 +599390.18 5682319.00 96.25 +599390.18 5678487.66 100.00 +599390.29 5677135.34 100.00 +599390.36 5677144.85 100.00 +599390.43 5682864.59 96.25 +599390.82 5680177.15 97.50 +599391.14 5678071.05 101.25 +599391.21 5682118.70 96.25 +599391.22 5677410.94 100.00 +599391.32 5677181.57 100.00 +599391.48 5680635.67 96.25 +599391.60 5678411.79 100.00 +599391.62 5679736.39 98.75 +599391.90 5678061.74 101.25 +599391.90 5680795.62 97.50 +599392.01 5682729.99 96.25 +599392.04 5677448.94 100.00 +599392.43 5677228.53 100.00 +599392.89 5678363.13 98.75 +599392.90 5682876.74 96.25 +599393.03 5687122.78 95.00 +599393.20 5682849.97 96.25 +599393.37 5678152.41 100.00 +599393.50 5677296.35 100.00 +599393.54 5687337.65 95.00 +599393.54 5680847.12 96.25 +599393.71 5678080.69 101.25 +599393.73 5682702.75 96.25 +599394.11 5678108.41 101.25 +599394.30 5682853.89 96.00 +599394.57 5682093.77 96.25 +599394.68 5686735.51 95.00 +599394.76 5677420.20 100.00 +599394.99 5681481.34 97.50 +599395.09 5678496.06 100.00 +599395.10 5682434.85 96.25 +599395.10 5682109.52 96.25 +599395.31 5677238.08 100.00 +599395.36 5678402.82 100.00 +599395.39 5678216.41 100.00 +599395.42 5680599.55 96.00 +599395.57 5678257.86 98.75 +599395.62 5677948.33 105.50 +599395.65 5682721.09 96.25 +599395.68 5680713.67 97.50 +599395.71 5680572.41 96.25 +599395.71 5680862.66 96.25 +599395.80 5678831.89 98.75 +599396.17 5678052.74 101.25 +599396.19 5678090.34 101.25 +599396.21 5677429.99 100.00 +599396.32 5687003.18 95.00 +599396.35 5677439.93 100.00 +599396.40 5682856.84 96.25 +599396.52 5678633.93 98.75 +599396.68 5682326.84 96.25 +599396.75 5680627.20 96.25 +599397.38 5677287.32 100.00 +599397.79 5677247.76 100.00 +599398.07 5678099.68 101.25 +599398.12 5678196.29 100.00 +599398.22 5677985.12 105.00 +599398.31 5677923.33 105.00 +599398.36 5676751.54 101.25 +599398.40 5679513.01 98.75 +599398.54 5680171.16 97.50 +599398.57 5681489.81 97.50 +599398.60 5682421.15 96.25 +599398.61 5686744.57 95.00 +599398.66 5678712.69 98.75 +599398.71 5680080.02 97.50 +599398.79 5682314.44 96.25 +599398.90 5678355.17 98.75 +599398.96 5687329.28 95.00 +599398.97 5677277.48 100.00 +599399.12 5678393.85 100.00 +599399.17 5677803.13 100.00 +599399.31 5682100.47 96.25 +599399.43 5682869.23 96.25 +599399.44 5677257.60 100.00 +599399.48 5686219.68 95.00 +599399.65 5682712.35 96.25 +599399.76 5677267.52 100.00 +599399.79 5677846.12 101.25 +599399.92 5682842.87 96.25 +599400.00 5678504.46 100.00 +599400.32 5677178.27 100.00 +599400.36 5687129.57 95.00 +599400.36 5680791.16 97.50 +599400.48 5682846.70 96.00 +599400.99 5686754.27 95.00 +599401.19 5679739.18 98.75 +599401.23 5680592.19 96.00 +599401.57 5682703.50 96.25 +599402.36 5680981.92 96.25 +599402.46 5687011.07 95.00 +599402.60 5682849.27 96.25 +599402.68 5680619.16 96.25 +599402.97 5678211.20 100.00 +599402.99 5680707.57 97.50 +599402.99 5678384.93 100.00 +599403.08 5680849.45 96.25 +599403.18 5678150.72 100.00 +599403.23 5680565.84 96.25 +599403.27 5678045.98 101.25 +599403.33 5687320.30 95.00 +599403.50 5682092.03 96.25 +599404.03 5681481.67 97.50 +599404.32 5680782.36 97.50 +599404.44 5678203.07 100.00 +599404.81 5682435.31 96.25 +599404.91 5678512.86 100.00 +599405.32 5678259.99 98.75 +599405.42 5681988.45 96.25 +599405.45 5680862.23 96.25 +599405.50 5682322.71 96.25 +599405.60 5686763.08 95.00 +599405.69 5678830.96 98.75 +599405.74 5680164.61 97.50 +599406.07 5682384.32 96.25 +599406.17 5680772.72 97.50 +599406.21 5678631.54 98.75 +599406.29 5682835.44 96.25 +599406.31 5687137.59 95.00 +599406.33 5682862.07 96.25 +599406.43 5677980.23 105.00 +599406.66 5682839.52 96.00 +599406.78 5676756.90 101.25 +599406.81 5681997.37 96.25 +599407.00 5678349.86 98.75 +599407.32 5679508.55 98.75 +599407.43 5682309.96 96.25 +599407.54 5680762.97 97.50 +599407.64 5677925.63 105.00 +599407.68 5680585.40 96.00 +599407.81 5678376.48 100.00 +599407.85 5682553.99 96.25 +599408.09 5680082.70 97.50 +599408.27 5682422.44 96.25 +599408.43 5678711.30 98.75 +599408.48 5682392.04 96.25 +599408.70 5677800.23 100.00 +599408.72 5680753.19 97.50 +599408.86 5687018.70 95.00 +599408.94 5682841.82 96.25 +599408.95 5680611.39 96.25 +599409.23 5686221.86 95.00 +599409.60 5677181.47 100.00 +599409.64 5677844.54 101.25 +599409.75 5681474.74 97.50 +599409.79 5687312.98 95.00 +599409.82 5678521.26 100.00 +599409.83 5680975.72 96.25 +599409.84 5680743.40 97.50 +599410.48 5687214.08 95.00 +599410.65 5680559.14 96.25 +599410.67 5687224.07 95.00 +599410.70 5686771.68 95.00 +599410.76 5679741.97 98.75 +599410.91 5687204.12 95.00 +599410.92 5681445.25 97.50 +599410.92 5681455.11 97.50 +599410.92 5681464.96 97.50 +599411.30 5678040.08 101.25 +599411.66 5681435.44 97.50 +599411.74 5687194.16 95.00 +599412.24 5687145.63 95.00 +599412.33 5680852.47 96.25 +599412.39 5686324.25 95.00 +599412.43 5680708.15 97.50 +599412.44 5680157.51 97.50 +599412.53 5680734.00 97.50 +599412.63 5678368.02 100.00 +599412.65 5682828.01 96.25 +599412.66 5681425.64 97.50 +599412.87 5678148.43 100.00 +599412.92 5677973.18 105.00 +599412.96 5686334.22 95.00 +599413.25 5686314.31 95.00 +599413.32 5682854.98 96.25 +599413.42 5687233.67 95.00 +599413.58 5681984.57 96.25 +599413.61 5687184.38 95.00 +599413.65 5681415.84 97.50 +599413.92 5682546.24 96.25 +599414.17 5680578.63 96.00 +599414.30 5678264.03 98.75 +599414.31 5682380.24 96.25 +599414.33 5682318.58 96.25 +599414.35 5682435.59 96.25 +599414.62 5686304.42 95.00 +599414.63 5680859.05 96.25 +599414.72 5682003.21 96.25 +599415.13 5676762.38 101.25 +599415.22 5682834.33 96.25 +599415.29 5681406.14 97.50 +599415.35 5678529.22 100.00 +599415.49 5687154.85 95.00 +599415.50 5680603.85 96.25 +599415.53 5678829.66 98.75 +599415.68 5682428.66 96.25 +599415.90 5678629.15 98.75 +599416.03 5687174.68 95.00 +599416.03 5682555.42 96.25 +599416.04 5686780.11 95.00 +599416.13 5682759.58 96.25 +599416.15 5687025.53 95.00 +599416.16 5678345.90 98.75 +599416.26 5679504.15 98.75 +599416.41 5687164.76 95.00 +599416.54 5682306.50 96.25 +599416.60 5680725.03 97.50 +599416.66 5686294.64 95.00 +599416.86 5682819.20 96.25 +599416.96 5680086.71 97.50 +599416.99 5686342.90 95.00 +599417.01 5680969.27 96.25 +599417.23 5677926.37 105.00 +599417.30 5682749.95 96.25 +599417.33 5682394.78 96.25 +599417.46 5681396.53 97.50 +599417.51 5681995.64 96.00 +599417.69 5687306.87 95.00 +599417.85 5680715.79 97.50 +599417.92 5677186.99 100.00 +599418.06 5680552.44 96.25 +599418.17 5680149.70 97.50 +599418.18 5678360.32 100.00 +599418.22 5677797.33 100.00 +599418.33 5678710.50 98.75 +599418.42 5682768.64 96.25 +599418.46 5677965.38 105.00 +599418.59 5682740.33 96.25 +599418.88 5681143.38 97.50 +599418.94 5686224.21 95.00 +599419.01 5686284.94 95.00 +599419.36 5677842.36 101.25 +599419.49 5687240.95 95.00 +599419.63 5681386.92 97.50 +599419.68 5678034.68 101.25 +599419.90 5682730.72 96.25 +599420.31 5682847.89 96.25 +599420.32 5679744.77 98.75 +599420.67 5680571.87 96.00 +599420.86 5682539.27 96.25 +599421.04 5682826.46 96.25 +599421.22 5682721.10 96.25 +599421.81 5681377.31 97.50 +599421.87 5682810.92 96.25 +599422.03 5686275.45 95.00 +599422.03 5678536.24 100.00 +599422.05 5680596.30 96.25 +599422.22 5681989.24 96.25 +599422.32 5680961.14 96.25 +599422.37 5686787.84 95.00 +599422.53 5678146.04 100.00 +599422.58 5680141.02 97.50 +599422.83 5678269.21 98.75 +599423.13 5686350.79 95.00 +599423.21 5682314.58 96.25 +599423.22 5680093.61 97.50 +599423.66 5682378.95 96.25 +599423.69 5682659.55 96.25 +599423.72 5682007.37 96.25 +599423.73 5682711.89 96.25 +599423.75 5681151.95 97.50 +599423.84 5676767.05 101.25 +599423.84 5677957.50 105.00 +599423.89 5678495.23 100.00 +599423.98 5681367.70 97.50 +599424.16 5678504.82 100.00 +599424.32 5682650.98 96.25 +599424.42 5678514.41 100.00 +599424.66 5682550.68 96.25 +599424.95 5682770.01 96.25 +599425.14 5680131.61 97.50 +599425.23 5687029.03 95.00 +599425.26 5679499.86 98.75 +599425.32 5678341.93 98.75 +599425.35 5677193.54 100.00 +599425.37 5678828.30 98.75 +599425.48 5682388.26 96.00 +599425.59 5678626.76 98.75 +599425.64 5682303.04 96.25 +599425.96 5680546.34 96.25 +599426.02 5686266.29 95.00 +599426.16 5681358.10 97.50 +599426.20 5687301.64 95.00 +599426.49 5680102.72 97.50 +599426.70 5682395.09 96.25 +599426.72 5678355.65 100.00 +599426.77 5686229.94 95.00 +599426.83 5677926.81 105.00 +599426.85 5682818.59 96.25 +599427.02 5677792.72 100.00 +599427.12 5680122.09 97.50 +599427.30 5682840.81 96.25 +599427.41 5678028.48 101.25 +599427.58 5678487.17 100.00 +599427.60 5680112.34 97.50 +599427.63 5680953.01 96.25 +599427.85 5687246.35 95.00 +599427.98 5678523.31 100.00 +599428.00 5680588.29 96.25 +599428.23 5678709.68 98.75 +599428.23 5682532.76 96.25 +599428.28 5682760.91 96.25 +599428.45 5682803.68 96.25 +599428.51 5682703.45 96.25 +599428.61 5681160.52 97.50 +599428.92 5677839.69 101.25 +599429.04 5686256.77 95.00 +599429.25 5681996.20 96.25 +599429.67 5681348.91 97.50 +599429.74 5679748.03 98.75 +599429.76 5678766.27 99.00 +599429.82 5678542.08 100.00 +599429.99 5682642.97 96.25 +599430.08 5678532.49 100.00 +599430.35 5677950.44 105.00 +599431.15 5682005.12 96.25 +599431.20 5686355.84 95.00 +599431.22 5682751.66 96.25 +599431.24 5678274.57 98.75 +599431.34 5680578.94 96.25 +599431.40 5677201.49 100.00 +599431.50 5686791.87 95.00 +599431.61 5678141.94 100.00 +599431.80 5682660.34 96.25 +599431.90 5682712.13 95.00 +599432.15 5682310.71 96.25 +599432.16 5682703.80 95.00 +599432.35 5686247.35 95.00 +599432.49 5686237.69 95.00 +599432.65 5682694.68 96.25 +599432.75 5678401.81 101.25 +599432.84 5682810.85 96.25 +599432.85 5682742.16 96.25 +599432.86 5681169.40 97.50 +599432.90 5682545.31 96.25 +599432.94 5680944.89 96.25 +599433.04 5682377.91 96.25 +599433.12 5678411.52 101.25 +599433.39 5681339.78 97.50 +599433.44 5676769.79 101.25 +599433.49 5679494.47 98.75 +599433.78 5682833.27 96.25 +599433.92 5677932.46 105.00 +599434.08 5680540.52 96.25 +599434.10 5678392.11 101.25 +599434.26 5682298.51 96.25 +599434.33 5677941.69 105.00 +599434.34 5678021.32 101.25 +599434.43 5678421.24 101.25 +599434.48 5678337.97 98.75 +599434.55 5687027.49 95.00 +599434.74 5678480.88 100.00 +599434.81 5677298.13 100.00 +599434.93 5682732.83 96.25 +599435.13 5687297.17 95.00 +599435.20 5678826.89 98.75 +599435.28 5678351.02 100.00 +599435.38 5678624.82 98.75 +599435.45 5678382.40 101.25 +599435.47 5677307.97 100.00 +599435.47 5682526.13 96.25 +599435.70 5677288.18 100.00 +599435.70 5677787.85 100.00 +599435.73 5678430.95 101.25 +599435.98 5682394.01 96.25 +599436.08 5681178.55 97.50 +599436.13 5682797.84 96.25 +599436.36 5682635.47 96.25 +599436.37 5681188.40 97.50 +599436.48 5677210.07 100.00 +599436.67 5681198.24 97.50 +599436.75 5682685.88 96.25 +599436.75 5677278.25 100.00 +599436.94 5687250.49 95.00 +599436.96 5680570.68 96.25 +599437.10 5681330.66 97.50 +599437.15 5682695.58 95.00 +599437.21 5681208.08 97.50 +599437.51 5677834.63 101.25 +599437.92 5682640.62 96.00 +599437.93 5680936.58 96.25 +599437.97 5681217.90 97.50 +599438.01 5677317.62 100.00 +599438.13 5678708.85 98.75 +599438.32 5678546.09 100.00 +599438.51 5682653.37 96.25 +599438.57 5677268.43 100.00 +599438.81 5682723.94 96.25 +599438.88 5682803.15 96.25 +599438.89 5678440.07 101.25 +599439.10 5679751.44 98.75 +599439.46 5678280.21 98.75 +599439.72 5686797.52 95.00 +599439.79 5681227.58 97.50 +599440.05 5682825.54 96.25 +599440.31 5677219.23 100.00 +599440.51 5682699.95 94.75 +599440.54 5678013.51 101.25 +599440.55 5678137.58 100.00 +599440.57 5677258.65 100.00 +599440.64 5679487.53 98.75 +599440.77 5686358.71 95.00 +599440.81 5682710.40 95.00 +599441.02 5681321.63 97.50 +599441.09 5682539.85 96.25 +599441.29 5682307.35 96.25 +599441.85 5678375.49 101.25 +599442.04 5682518.79 96.25 +599442.12 5680534.60 96.25 +599442.19 5677326.70 100.00 +599442.19 5680927.86 96.25 +599442.23 5677248.80 100.00 +599442.43 5687022.02 95.00 +599442.48 5682377.91 96.25 +599442.67 5682627.91 96.25 +599442.70 5677228.89 100.00 +599442.77 5687291.03 95.00 +599442.88 5678475.81 100.00 +599442.98 5682294.20 96.25 +599443.04 5680562.75 96.25 +599443.05 5677238.88 100.00 +599443.22 5686983.57 95.00 +599443.40 5676769.48 101.25 +599443.48 5678448.73 101.25 +599443.48 5686973.83 95.00 +599443.63 5678334.00 98.75 +599443.74 5682688.86 95.00 +599443.87 5677782.24 100.00 +599444.00 5678346.71 100.00 +599444.14 5682645.31 96.25 +599444.29 5682679.82 96.25 +599444.31 5679992.85 97.50 +599444.35 5687257.12 95.00 +599444.55 5682390.04 96.25 +599444.56 5682716.12 96.25 +599444.60 5678824.02 98.75 +599445.18 5678622.98 98.75 +599445.36 5681312.78 97.50 +599445.48 5686993.28 95.00 +599446.01 5677829.46 101.25 +599446.32 5682817.81 96.25 +599446.62 5687003.11 95.00 +599446.73 5678005.70 101.25 +599446.74 5687013.10 95.00 +599446.93 5680919.41 96.25 +599447.10 5678546.09 100.00 +599447.10 5682703.14 95.00 +599447.12 5686804.07 95.00 +599447.42 5677335.16 100.00 +599447.99 5681229.14 97.50 +599448.02 5678708.03 98.75 +599448.09 5679480.91 98.75 +599448.46 5678284.43 98.75 +599448.47 5679754.84 98.75 +599448.82 5687283.20 95.00 +599448.89 5682511.76 96.25 +599448.92 5682620.32 96.25 +599449.07 5682534.09 96.25 +599449.12 5678456.68 101.25 +599449.17 5678132.58 100.00 +599449.29 5686966.86 95.00 +599449.37 5678369.21 101.25 +599449.47 5682637.03 96.25 +599449.67 5681303.93 97.50 +599449.85 5680555.49 96.25 +599450.07 5680528.54 96.25 +599450.31 5682708.31 96.25 +599450.36 5686357.14 95.00 +599450.76 5682305.84 96.25 +599450.98 5687264.39 95.00 +599451.32 5677775.64 100.00 +599451.68 5682809.42 96.25 +599451.76 5678472.99 100.00 +599451.78 5682673.65 96.25 +599451.81 5682376.69 96.25 +599451.99 5682695.14 95.00 +599452.00 5682290.54 96.25 +599452.28 5682685.70 95.00 +599452.32 5687273.84 95.00 +599452.47 5686812.43 95.00 +599452.47 5678329.37 98.75 +599452.47 5678341.95 100.00 +599452.54 5680911.49 96.25 +599452.89 5676766.83 101.25 +599453.03 5679988.06 97.50 +599453.24 5677343.28 100.00 +599453.26 5682386.49 96.25 +599453.30 5681294.77 97.50 +599453.30 5677822.65 101.25 +599453.62 5678819.86 98.75 +599454.22 5677999.12 101.25 +599454.49 5682612.28 96.25 +599454.99 5678621.15 98.75 +599455.54 5682517.08 96.00 +599455.73 5682629.45 96.25 +599455.74 5679474.53 98.75 +599456.06 5682700.49 96.25 +599456.08 5678543.33 100.00 +599456.19 5686821.70 95.00 +599456.33 5681227.43 97.50 +599456.49 5682505.50 96.25 +599456.68 5678462.32 101.25 +599456.87 5682528.08 96.25 +599456.93 5681285.61 97.50 +599457.01 5682801.02 96.25 +599457.37 5678363.58 101.25 +599457.55 5680549.15 96.25 +599457.62 5678127.33 100.00 +599457.68 5678705.93 98.75 +599457.69 5678288.23 98.75 +599458.15 5680903.57 96.25 +599458.18 5680522.72 96.25 +599458.32 5686962.59 95.00 +599458.38 5679754.24 98.75 +599458.78 5677769.03 100.00 +599459.32 5682296.68 96.00 +599459.61 5682668.12 96.25 +599459.96 5686354.38 95.00 +599459.98 5677815.30 101.25 +599460.46 5682305.39 96.25 +599460.69 5678336.74 100.00 +599460.90 5682374.27 96.25 +599460.93 5676761.05 101.25 +599461.04 5682286.91 96.25 +599461.31 5678324.73 98.75 +599461.33 5678472.38 100.00 +599461.70 5682692.60 96.25 +599461.90 5679983.58 97.50 +599461.95 5681277.19 97.50 +599461.98 5686829.82 95.00 +599462.00 5682621.86 96.25 +599462.05 5682605.98 96.25 +599462.42 5682384.20 96.25 +599462.62 5677345.90 100.00 +599462.64 5678815.69 98.75 +599462.89 5678537.19 100.00 +599462.97 5682793.08 96.25 +599463.09 5677994.89 101.25 +599463.26 5682512.23 96.00 +599463.36 5679468.11 98.75 +599463.38 5681233.78 97.50 +599464.41 5680896.15 96.25 +599464.67 5682500.13 96.25 +599464.73 5682522.16 96.25 +599464.80 5678619.32 98.75 +599465.64 5678358.33 101.25 +599465.76 5679512.28 99.20 +599465.82 5680543.54 96.25 +599465.86 5678121.73 100.00 +599465.99 5677807.34 101.25 +599466.00 5678465.35 101.25 +599466.37 5678292.84 98.75 +599466.38 5676752.82 101.25 +599466.66 5677762.95 100.00 +599466.83 5680517.72 96.25 +599467.07 5681268.79 97.50 +599467.17 5678703.00 98.75 +599467.21 5686958.04 95.00 +599467.25 5682684.64 96.25 +599467.40 5676693.45 101.25 +599468.14 5678330.59 100.00 +599468.17 5679752.64 98.75 +599468.30 5686837.52 95.00 +599468.35 5676743.12 101.25 +599468.54 5676703.36 101.25 +599468.56 5682614.53 96.25 +599468.56 5682666.68 96.25 +599468.60 5678318.18 98.75 +599469.09 5678530.13 100.00 +599469.20 5686350.60 95.00 +599469.30 5681241.66 97.50 +599469.53 5682785.59 96.25 +599469.53 5676733.22 101.25 +599469.68 5676713.28 101.25 +599469.80 5676723.24 101.25 +599469.82 5682303.03 96.25 +599470.01 5682372.16 96.25 +599470.18 5682284.24 96.25 +599470.54 5679461.20 98.75 +599470.67 5682675.66 96.25 +599470.81 5678473.87 100.00 +599470.83 5680888.90 96.25 +599470.89 5679979.32 97.50 +599470.92 5676684.11 101.25 +599470.99 5682507.39 96.00 +599471.37 5682605.80 96.25 +599471.43 5682381.44 96.25 +599471.48 5681259.98 97.50 +599471.66 5678811.53 98.75 +599472.07 5677799.44 101.25 +599472.50 5677991.60 101.25 +599472.60 5677345.39 100.00 +599472.64 5681250.40 97.50 +599472.84 5678351.70 101.25 +599473.18 5682517.11 96.25 +599473.29 5678309.90 98.75 +599473.32 5678299.99 98.75 +599473.44 5682495.66 96.25 +599473.60 5680537.35 96.25 +599474.16 5678116.24 100.00 +599474.46 5678616.81 98.75 +599474.55 5677756.87 100.00 +599475.38 5686952.88 95.00 +599475.50 5678467.76 101.25 +599475.55 5686844.39 95.00 +599475.59 5678324.44 100.00 +599475.70 5678523.47 100.00 +599475.91 5680513.73 96.25 +599476.08 5682778.10 96.25 +599476.57 5676676.26 101.25 +599476.66 5678700.08 98.75 +599476.71 5686942.98 95.00 +599476.91 5682376.20 96.25 +599477.49 5677956.07 105.00 +599477.68 5677946.89 105.00 +599477.71 5679749.78 98.75 +599477.72 5679454.29 98.75 +599477.74 5682297.69 96.25 +599478.04 5686933.07 95.00 +599478.34 5686346.58 95.00 +599478.37 5680882.78 96.25 +599478.42 5677791.76 101.25 +599478.43 5686853.20 95.00 +599478.49 5686923.10 95.00 +599478.50 5682288.38 96.25 +599478.65 5686863.18 95.00 +599478.72 5682502.54 96.00 +599478.88 5686873.17 95.00 +599478.89 5686913.11 95.00 +599479.11 5686883.16 95.00 +599479.29 5686903.13 95.00 +599479.33 5686893.15 95.00 +599479.55 5678344.64 101.25 +599479.66 5679974.62 97.50 +599479.90 5678476.91 100.00 +599479.98 5678806.12 98.75 +599480.68 5680530.29 96.25 +599481.48 5677938.35 105.00 +599481.55 5677341.50 100.00 +599481.63 5682512.07 96.25 +599481.93 5677988.36 101.25 +599482.22 5682491.20 96.25 +599482.44 5677750.79 100.00 +599482.48 5678110.76 100.00 +599482.78 5678517.29 100.00 +599482.91 5677961.36 105.00 +599483.05 5678318.28 100.00 +599483.43 5682771.39 96.25 +599484.10 5678614.22 98.75 +599484.36 5678336.10 101.25 +599484.78 5677784.08 101.25 +599484.90 5679447.38 98.75 +599485.03 5678470.03 101.25 +599485.28 5677929.81 105.00 +599485.42 5676673.32 101.25 +599485.49 5680510.88 96.25 +599485.79 5679744.24 98.75 +599486.02 5678696.78 98.75 +599486.38 5680877.39 96.25 +599486.98 5682498.69 96.00 +599487.00 5678483.10 100.00 +599487.30 5678799.61 98.75 +599487.88 5680523.37 96.25 +599488.03 5682704.02 96.25 +599488.13 5686344.86 95.00 +599488.37 5679969.83 97.50 +599490.00 5678104.37 100.00 +599490.02 5677336.21 100.00 +599490.09 5682507.02 96.25 +599490.19 5678511.62 100.00 +599490.20 5677943.02 105.25 +599490.22 5682764.22 96.25 +599490.32 5682712.70 96.25 +599490.72 5677745.28 100.00 +599491.08 5678416.97 102.00 +599491.28 5682487.34 96.25 +599491.38 5677985.19 101.25 +599491.57 5678313.75 100.00 +599491.59 5677776.87 101.25 +599491.71 5682694.87 96.25 +599491.99 5678331.17 101.25 +599492.08 5679440.46 98.75 +599492.10 5677960.33 105.00 +599492.19 5680514.72 96.25 +599493.22 5679737.61 98.75 +599493.34 5678791.72 98.75 +599493.55 5677925.76 105.00 +599493.69 5678489.99 100.00 +599493.73 5678611.62 98.75 +599494.64 5678471.96 101.25 +599495.06 5680873.05 96.25 +599495.27 5682494.88 96.00 +599495.31 5678693.26 98.75 +599495.36 5676673.87 101.25 +599495.54 5682755.81 96.25 +599495.85 5682336.41 96.25 +599496.65 5678096.95 100.00 +599496.70 5682686.28 96.25 +599497.61 5682008.06 96.25 +599497.77 5679966.58 97.50 +599498.03 5686345.48 95.00 +599498.13 5677330.39 100.00 +599498.41 5677953.80 105.00 +599498.70 5678507.61 100.00 +599499.04 5682502.94 96.25 +599499.09 5677739.87 100.00 +599499.29 5682712.99 96.25 +599499.51 5677770.82 101.25 +599499.82 5678326.62 101.25 +599499.88 5678784.33 98.75 +599500.02 5679730.33 98.75 +599500.14 5678309.28 100.00 +599500.32 5679435.00 98.75 +599500.33 5682483.49 96.25 +599500.44 5678496.80 100.00 +599500.48 5678049.01 100.00 +599500.83 5682343.83 96.25 +599500.85 5677982.08 101.25 +599500.87 5682747.40 96.25 +599500.96 5678088.44 100.00 +599501.00 5682066.79 96.25 +599501.63 5682677.65 96.25 +599501.80 5678039.98 100.00 +599502.19 5677928.67 105.00 +599502.41 5678078.58 100.00 +599502.68 5678058.73 100.00 +599502.90 5678068.66 100.00 +599503.02 5682620.49 96.25 +599503.04 5682013.66 96.25 +599503.26 5677321.84 100.00 +599503.26 5682630.40 96.25 +599503.29 5678608.78 98.75 +599503.48 5682610.56 96.25 +599503.55 5682491.07 96.00 +599503.60 5677946.04 105.00 +599503.66 5682334.29 96.25 +599503.74 5680868.71 96.25 +599504.04 5682640.31 96.25 +599504.30 5678473.61 101.25 +599504.60 5678689.74 98.75 +599504.75 5682704.79 96.25 +599504.82 5682058.54 96.25 +599505.02 5676676.37 101.25 +599505.03 5677936.91 105.00 +599505.13 5682001.69 96.25 +599505.78 5682738.74 96.25 +599506.53 5682669.01 96.25 +599506.81 5682649.85 96.25 +599506.83 5679723.05 98.75 +599506.93 5686349.61 95.00 +599507.20 5678503.61 100.00 +599507.21 5682351.00 96.25 +599507.37 5679964.08 97.50 +599507.43 5677764.76 101.25 +599507.45 5678031.78 100.00 +599507.45 5677734.47 100.00 +599507.60 5682601.88 96.25 +599507.77 5678778.31 98.75 +599508.01 5682498.88 96.25 +599508.30 5678323.36 101.25 +599508.38 5677313.26 100.00 +599508.40 5682659.56 96.25 +599508.45 5680607.07 96.25 +599508.67 5678304.73 100.00 +599509.01 5679430.16 98.75 +599509.16 5682479.12 96.25 +599509.19 5682066.97 96.25 +599509.77 5677977.71 101.25 +599510.69 5682730.08 96.25 +599511.24 5678186.04 98.75 +599511.34 5682697.35 96.25 +599511.68 5682051.93 96.25 +599511.78 5679714.57 98.75 +599511.84 5682487.27 96.00 +599512.16 5682102.28 96.25 +599512.36 5682011.44 96.25 +599512.67 5678605.37 98.75 +599512.76 5680865.13 96.25 +599512.80 5682337.25 96.25 +599513.16 5681995.90 96.25 +599513.38 5680598.73 96.25 +599513.48 5678195.77 98.75 +599513.63 5677304.76 100.00 +599513.70 5682093.66 96.25 +599513.82 5686356.53 95.00 +599513.87 5678686.17 98.75 +599513.97 5682644.60 96.00 +599513.98 5678475.15 101.25 +599514.00 5681955.50 96.25 +599514.01 5676680.48 101.25 +599514.17 5678177.37 98.75 +599514.19 5682604.58 96.25 +599514.29 5678024.65 100.00 +599514.34 5680612.16 96.25 +599514.37 5682357.33 96.25 +599514.67 5682287.29 97.50 +599515.35 5677758.70 101.25 +599515.35 5678503.57 100.00 +599515.56 5682721.41 96.25 +599515.63 5679705.37 98.75 +599515.73 5678205.51 98.75 +599515.73 5678772.38 98.75 +599515.82 5677729.06 100.00 +599516.15 5682688.83 96.25 +599516.73 5679423.87 98.75 +599516.90 5679961.69 97.50 +599516.92 5682494.69 96.25 +599517.00 5678299.85 100.00 +599517.16 5678321.95 101.25 +599517.72 5682062.71 96.25 +599517.96 5682474.72 96.25 +599517.98 5678215.24 98.75 +599518.48 5677972.84 101.25 +599518.59 5682045.36 96.25 +599518.83 5681947.13 96.25 +599518.97 5682108.20 96.25 +599519.09 5682613.22 96.25 +599519.28 5681427.15 97.40 +599519.36 5686364.84 95.00 +599519.48 5679696.18 98.75 +599519.76 5681960.60 96.25 +599519.79 5682679.58 96.25 +599519.89 5687130.07 95.00 +599520.08 5681988.74 96.25 +599520.09 5682292.47 97.50 +599520.10 5678169.33 98.75 +599520.12 5682483.46 96.00 +599520.13 5682280.34 97.50 +599520.37 5678224.94 98.75 +599520.41 5682712.72 96.25 +599520.66 5677297.68 100.00 +599520.72 5687120.41 95.00 +599520.81 5682006.17 96.25 +599520.92 5680592.63 96.25 +599520.93 5682089.00 96.25 +599521.54 5680861.18 96.25 +599521.84 5682340.48 96.25 +599521.87 5681436.39 97.40 +599522.05 5678601.97 98.75 +599522.10 5678680.80 98.75 +599522.24 5676686.10 101.25 +599522.34 5682362.57 96.25 +599522.40 5678019.23 100.00 +599522.78 5678234.64 98.75 +599522.94 5682622.37 96.25 +599523.12 5679686.91 98.75 +599523.43 5682670.34 96.25 +599523.70 5678474.85 101.25 +599523.75 5680610.20 96.25 +599523.87 5687139.23 95.00 +599523.89 5677753.83 101.25 +599524.04 5678501.98 100.00 +599524.13 5687112.01 95.00 +599524.17 5677825.50 101.25 +599524.30 5678767.35 98.75 +599524.46 5679417.58 98.75 +599524.52 5677724.24 100.00 +599524.63 5682056.25 96.25 +599524.63 5682098.78 96.00 +599524.66 5678160.51 98.75 +599524.91 5686373.15 95.00 +599525.03 5682038.34 96.25 +599525.13 5679956.10 97.50 +599525.18 5678244.34 98.75 +599525.27 5682704.03 96.25 +599525.41 5677816.69 101.25 +599525.43 5678298.48 100.00 +599525.80 5678336.21 101.25 +599525.83 5682490.51 96.25 +599525.85 5678323.01 101.25 +599525.91 5682660.72 96.25 +599525.93 5677966.23 101.25 +599526.01 5681421.68 97.40 +599526.46 5679677.52 98.75 +599526.49 5682469.80 96.25 +599526.57 5682631.62 96.25 +599526.90 5681941.41 96.25 +599527.04 5681981.62 96.25 +599527.46 5681954.29 96.25 +599527.59 5678254.04 98.75 +599527.68 5678345.83 101.25 +599527.83 5677290.75 100.00 +599528.05 5681443.78 97.40 +599528.09 5682109.09 96.25 +599528.21 5682285.13 97.75 +599528.37 5682651.09 96.25 +599528.41 5682479.65 96.00 +599528.48 5682641.27 96.25 +599528.53 5678151.30 98.75 +599528.58 5680854.49 96.25 +599528.61 5682277.24 97.50 +599528.68 5682000.13 96.25 +599528.75 5680586.96 96.25 +599529.16 5682292.66 97.50 +599529.28 5678375.06 101.25 +599529.30 5678355.49 101.25 +599529.40 5682354.81 96.00 +599529.51 5678365.26 101.25 +599529.73 5676692.62 101.25 +599529.76 5682345.91 96.25 +599529.81 5679668.13 98.75 +599529.84 5678674.58 98.75 +599529.96 5678263.74 98.75 +599530.04 5687146.57 95.00 +599530.12 5682695.34 96.25 +599530.20 5682088.42 96.25 +599530.62 5686381.34 95.00 +599530.65 5678329.97 101.25 +599531.10 5678597.80 98.75 +599531.17 5682049.32 96.25 +599531.18 5682031.06 96.25 +599531.41 5682365.73 96.25 +599531.54 5678141.79 98.75 +599531.87 5678384.41 101.25 +599532.08 5678016.90 100.00 +599532.19 5679411.28 98.75 +599532.31 5680605.64 96.25 +599532.33 5678273.45 98.75 +599532.39 5682039.25 96.00 +599532.78 5678762.19 98.75 +599532.86 5681658.77 97.50 +599532.88 5678502.49 100.00 +599532.91 5680595.12 96.00 +599532.93 5677959.14 101.25 +599533.03 5677830.04 101.25 +599533.31 5677719.55 100.00 +599533.38 5677750.77 101.25 +599533.44 5678473.76 101.25 +599533.53 5681650.07 97.50 +599533.57 5679950.84 97.50 +599533.86 5677811.40 101.25 +599533.91 5679659.13 98.75 +599533.92 5687110.02 95.00 +599534.01 5678302.94 100.00 +599534.04 5681974.54 96.25 +599534.24 5678132.17 98.75 +599534.69 5682486.23 96.25 +599534.96 5682464.79 96.25 +599535.22 5681935.94 96.25 +599535.41 5682686.91 96.25 +599535.43 5681424.25 97.40 +599535.49 5681948.42 96.25 +599535.73 5681449.80 97.40 +599535.73 5678393.37 101.25 +599536.00 5676700.39 101.25 +599536.18 5681993.58 96.25 +599536.43 5686389.47 95.00 +599536.49 5682105.40 96.25 +599536.84 5678667.53 98.75 +599536.94 5678122.55 98.75 +599536.95 5677286.67 100.00 +599537.09 5680582.01 96.25 +599537.46 5682023.89 96.25 +599537.47 5682042.16 96.25 +599537.51 5682277.52 97.50 +599537.88 5682351.00 96.25 +599538.16 5682291.10 97.50 +599538.56 5677950.99 101.25 +599538.95 5687150.89 95.00 +599538.97 5682091.41 96.25 +599539.60 5679650.95 98.75 +599539.86 5678113.01 98.75 +599539.92 5679404.99 98.75 +599540.01 5678593.30 98.75 +599540.35 5687116.57 95.00 +599540.51 5678309.96 100.00 +599540.53 5682368.72 96.25 +599540.62 5678277.83 98.75 +599540.71 5682678.48 96.25 +599540.77 5678401.78 101.25 +599540.81 5681664.41 97.50 +599540.87 5680601.09 96.25 +599541.17 5678756.87 98.75 +599541.41 5677941.67 101.25 +599541.72 5678503.01 100.00 +599541.77 5678014.58 100.00 +599541.78 5679945.35 97.50 +599541.79 5676708.50 101.25 +599542.10 5677714.86 100.00 +599542.22 5678469.93 101.25 +599542.31 5681969.71 96.25 +599542.42 5681648.69 97.50 +599542.51 5677931.76 101.25 +599542.73 5677832.37 101.25 +599542.82 5681430.11 97.40 +599542.86 5677747.71 101.25 +599542.89 5682098.85 96.25 +599543.08 5682283.78 97.50 +599543.18 5686396.49 95.00 +599543.26 5682459.49 96.25 +599543.43 5678103.67 98.75 +599543.45 5682481.73 96.25 +599543.64 5677810.31 101.25 +599543.69 5682034.93 96.25 +599543.81 5681987.18 96.25 +599543.82 5681455.26 97.40 +599543.83 5678660.47 98.75 +599543.84 5681943.00 96.25 +599543.87 5677921.88 101.25 +599543.99 5681931.35 96.25 +599544.43 5682017.37 96.25 +599544.83 5682600.84 96.25 +599544.83 5682610.79 96.25 +599544.83 5682620.75 96.25 +599545.15 5682590.91 96.25 +599545.18 5682669.59 96.25 +599545.22 5677912.01 101.25 +599545.29 5679642.76 98.75 +599545.96 5678410.09 101.25 +599546.05 5682630.59 96.25 +599546.07 5677282.59 100.00 +599546.08 5680578.44 96.25 +599546.08 5678317.73 100.00 +599546.55 5677902.12 101.25 +599546.61 5682354.99 96.25 +599546.93 5682581.12 96.25 +599546.99 5678094.34 98.75 +599547.07 5676716.97 101.25 +599547.64 5679398.69 98.75 +599547.79 5682660.21 96.25 +599547.89 5682640.37 96.25 +599547.90 5677892.25 101.25 +599547.92 5679937.52 97.50 +599548.10 5681438.23 97.40 +599548.16 5682650.27 96.25 +599548.42 5687154.07 95.00 +599548.71 5682571.33 96.25 +599548.92 5678588.81 98.75 +599549.03 5678326.93 100.00 +599549.20 5681669.32 97.50 +599549.42 5680596.51 96.25 +599549.53 5687120.33 95.00 +599549.56 5678751.55 98.75 +599549.68 5678463.75 101.25 +599549.90 5682370.67 96.25 +599549.91 5682027.70 96.25 +599550.04 5678281.16 98.75 +599550.47 5678501.69 100.00 +599550.61 5682475.26 96.25 +599550.82 5678653.42 98.75 +599550.89 5677710.18 100.00 +599550.90 5678085.15 98.75 +599551.16 5678011.38 100.00 +599551.22 5677882.85 101.25 +599551.30 5678418.30 101.25 +599551.48 5677836.90 101.25 +599551.60 5679635.10 98.75 +599551.68 5681651.60 97.50 +599551.74 5681981.16 96.25 +599551.74 5682011.29 96.25 +599551.83 5686401.44 95.00 +599551.84 5682561.99 96.25 +599551.98 5678336.13 100.00 +599551.98 5681967.34 96.25 +599552.12 5681460.40 97.40 +599552.22 5682430.66 96.20 +599552.35 5676725.44 101.25 +599552.35 5677744.64 101.25 +599552.39 5681937.91 96.25 +599552.53 5681446.94 97.40 +599552.57 5682458.12 96.25 +599553.28 5681927.76 96.25 +599553.58 5677810.31 101.25 +599554.05 5679929.69 97.50 +599554.27 5677873.36 101.25 +599554.45 5678345.57 100.00 +599554.90 5678075.99 98.75 +599554.98 5678455.78 101.25 +599555.12 5678743.32 98.75 +599555.22 5682466.85 96.25 +599555.37 5679392.40 98.75 +599555.62 5680577.28 96.25 +599555.72 5677280.90 100.00 +599555.85 5682357.24 96.25 +599556.12 5678426.70 101.25 +599556.37 5682553.13 96.25 +599556.55 5681455.84 97.40 +599556.72 5678446.14 101.25 +599556.91 5678355.01 100.00 +599557.15 5677863.81 101.25 +599557.16 5678436.45 101.25 +599557.25 5677844.48 101.25 +599557.38 5682021.77 96.25 +599557.63 5680591.37 96.25 +599557.66 5682433.93 96.20 +599557.78 5687152.27 95.00 +599557.87 5681673.76 97.50 +599558.06 5678584.96 98.75 +599558.21 5676733.48 101.25 +599558.27 5678646.89 98.75 +599558.38 5687121.73 95.00 +599558.64 5679628.05 98.75 +599558.81 5677854.03 101.25 +599559.21 5678500.27 100.00 +599559.40 5682426.37 96.20 +599559.44 5682369.57 96.25 +599559.56 5678284.21 98.75 +599559.98 5686407.18 95.00 +599560.01 5677706.37 100.00 +599560.08 5678067.70 98.75 +599560.22 5679921.89 97.50 +599560.26 5682007.49 96.25 +599560.35 5678007.53 100.00 +599560.36 5681656.03 97.50 +599560.82 5681977.13 96.25 +599560.95 5681464.55 97.40 +599561.27 5680583.80 96.25 +599561.27 5681933.79 96.25 +599561.36 5682544.54 96.25 +599561.56 5681964.70 96.25 +599561.73 5677741.26 101.25 +599562.30 5676663.45 101.25 +599562.66 5681924.50 96.25 +599562.72 5676673.08 101.25 +599563.09 5678362.57 100.00 +599563.43 5679386.54 98.75 +599563.51 5677811.29 101.25 +599564.23 5678744.47 98.75 +599564.42 5682015.45 96.25 +599564.70 5687156.37 95.00 +599564.91 5676740.88 101.25 +599565.25 5682356.02 96.25 +599565.36 5687114.59 95.00 +599565.71 5677280.75 100.00 +599565.96 5686415.18 95.00 +599566.03 5679621.41 98.75 +599566.20 5678177.48 98.75 +599566.25 5678640.98 98.75 +599566.44 5682432.46 96.20 +599566.86 5676655.05 101.25 +599566.90 5681677.36 97.50 +599566.90 5679914.52 97.50 +599566.98 5678496.18 100.00 +599567.09 5682536.41 96.25 +599567.31 5678187.30 98.75 +599567.61 5678061.14 98.75 +599567.67 5678000.96 100.00 +599567.68 5678167.63 98.75 +599567.80 5678582.81 98.75 +599568.24 5682426.46 96.20 +599568.40 5682007.17 96.25 +599568.55 5681331.50 97.50 +599568.98 5682368.47 96.25 +599569.06 5681660.40 97.50 +599569.25 5679796.34 97.50 +599569.41 5678284.68 98.75 +599569.67 5677703.95 100.00 +599569.86 5678369.57 100.00 +599569.98 5681973.22 96.25 +599570.10 5679805.17 97.50 +599570.43 5686423.79 95.00 +599570.52 5681960.36 96.25 +599570.62 5687164.35 95.00 +599570.63 5678196.65 98.75 +599570.72 5678158.11 98.75 +599571.10 5677737.85 101.25 +599571.21 5681933.73 96.25 +599571.31 5681325.62 97.50 +599571.55 5676677.76 101.25 +599571.61 5679380.85 98.75 +599571.67 5686433.71 95.00 +599572.16 5679787.93 97.50 +599572.28 5676747.55 101.25 +599572.43 5681922.73 96.25 +599572.76 5687121.18 95.00 +599572.83 5682528.28 96.25 +599572.89 5678633.61 98.75 +599572.98 5681670.19 97.00 +599573.17 5676647.30 101.25 +599573.19 5678741.88 98.75 +599573.40 5677812.52 101.25 +599573.41 5677907.30 100.00 +599573.59 5679907.15 97.50 +599574.01 5686443.39 95.00 +599574.15 5677917.08 100.00 +599574.28 5679615.83 98.75 +599574.49 5681338.56 97.50 +599574.60 5677993.80 100.00 +599574.62 5678491.69 100.00 +599574.69 5682354.43 96.25 +599574.93 5678205.67 98.75 +599575.13 5677897.49 100.00 +599575.26 5677283.44 100.00 +599575.47 5678054.99 98.75 +599575.54 5679811.56 97.50 +599575.90 5678149.61 98.75 +599575.92 5682518.88 96.25 +599576.06 5677926.86 100.00 +599576.08 5681680.65 97.50 +599576.20 5678376.92 100.00 +599576.81 5686452.98 95.00 +599577.31 5678278.57 98.75 +599577.50 5677887.91 100.00 +599577.55 5678580.66 98.75 +599577.66 5679789.85 97.25 +599577.94 5682365.12 96.25 +599577.97 5681664.35 97.50 +599578.25 5677936.57 100.00 +599578.36 5687170.58 95.00 +599578.39 5679781.42 97.50 +599578.42 5679373.84 98.75 +599578.65 5682509.31 96.25 +599578.89 5677985.19 100.00 +599578.92 5678214.83 98.75 +599579.08 5681969.19 96.25 +599579.33 5677701.54 100.00 +599579.42 5678626.13 98.75 +599579.48 5681956.02 96.25 +599579.48 5676639.54 101.25 +599579.68 5678483.35 100.00 +599579.75 5679798.00 97.25 +599579.88 5686462.46 95.00 +599580.20 5676753.62 101.25 +599580.45 5687069.77 95.00 +599580.56 5677734.73 101.25 +599580.73 5677946.22 100.00 +599580.74 5679900.25 97.50 +599580.82 5676681.40 101.25 +599580.99 5681324.09 97.50 +599581.05 5681935.26 96.25 +599581.26 5677975.52 100.00 +599581.36 5687079.54 95.00 +599581.58 5681673.42 97.00 +599581.61 5678385.04 100.00 +599581.64 5687059.85 95.00 +599581.88 5678737.06 98.75 +599581.94 5687019.98 95.00 +599582.13 5682500.01 96.25 +599582.21 5687121.45 95.00 +599582.23 5687029.96 95.00 +599582.26 5681924.33 96.25 +599582.27 5681344.47 97.50 +599582.33 5687010.01 95.00 +599582.53 5687039.95 95.00 +599582.54 5679610.24 98.75 +599582.55 5677879.36 100.00 +599582.59 5682357.81 96.25 +599582.66 5677955.96 100.00 +599582.81 5678224.04 98.75 +599582.83 5687049.93 95.00 +599583.06 5678142.97 98.75 +599583.11 5687000.05 95.00 +599583.29 5677813.46 101.25 +599583.56 5679809.66 97.50 +599583.63 5677965.85 100.00 +599583.67 5678049.28 98.75 +599583.74 5679365.42 98.75 +599583.89 5686990.09 95.00 +599584.01 5687178.82 95.00 +599584.10 5678271.59 98.75 +599584.33 5686471.41 95.00 +599584.41 5687243.97 95.00 +599584.42 5687088.85 95.00 +599584.61 5679785.13 97.25 +599584.75 5678475.02 100.00 +599584.75 5677286.57 100.00 +599585.25 5681683.93 97.50 +599585.77 5686980.36 95.00 +599585.87 5687253.19 95.00 +599585.89 5681948.48 96.25 +599586.14 5678233.45 98.75 +599586.22 5679778.29 97.50 +599586.25 5676632.26 101.25 +599586.27 5687263.12 95.00 +599586.56 5679793.25 97.25 +599586.77 5682491.26 96.25 +599586.77 5687273.07 95.00 +599586.88 5681668.29 97.50 +599587.02 5678393.16 100.00 +599587.29 5678578.50 98.75 +599587.84 5678621.06 98.75 +599588.05 5681964.87 96.25 +599588.05 5679893.51 97.50 +599588.10 5678262.43 98.75 +599588.16 5679802.01 97.50 +599588.25 5682179.49 96.25 +599588.29 5679356.57 98.75 +599588.29 5676759.42 101.25 +599588.42 5682189.44 96.25 +599588.58 5682199.39 96.25 +599588.77 5686480.36 95.00 +599588.99 5677699.12 100.00 +599589.01 5677871.78 100.00 +599589.03 5686970.91 95.00 +599589.03 5681939.63 96.25 +599589.30 5678242.93 98.75 +599589.33 5682169.60 96.25 +599589.34 5677765.21 105.00 +599589.55 5681351.04 97.50 +599589.65 5678466.58 100.00 +599589.84 5687282.58 95.00 +599589.88 5678252.70 98.75 +599589.94 5681326.60 97.50 +599590.13 5677731.90 101.25 +599590.18 5681676.65 97.00 +599590.20 5687186.58 95.00 +599590.35 5676684.43 101.25 +599590.37 5682209.11 96.25 +599590.54 5682159.72 96.25 +599590.56 5678732.24 98.75 +599590.79 5679604.66 98.75 +599590.84 5678402.12 100.00 +599590.92 5679793.30 97.50 +599591.44 5682149.81 96.25 +599591.54 5678137.70 98.75 +599591.76 5677756.21 105.00 +599591.79 5679784.32 97.50 +599591.80 5679347.28 98.75 +599591.88 5686577.34 95.00 +599592.07 5687123.03 95.00 +599592.10 5681925.45 96.25 +599592.16 5686587.32 95.00 +599592.36 5678044.41 98.75 +599592.39 5686961.51 95.00 +599592.49 5686489.60 95.00 +599592.50 5686597.30 95.00 +599592.65 5682139.97 96.25 +599592.75 5687094.36 95.00 +599592.84 5686607.29 95.00 +599592.85 5682483.38 96.25 +599593.19 5677812.24 101.25 +599593.36 5682218.60 96.25 +599593.99 5687241.16 95.00 +599594.08 5676626.05 101.25 +599594.38 5677289.20 100.00 +599594.39 5686567.67 95.00 +599594.43 5681687.19 97.50 +599594.48 5679337.68 98.75 +599594.48 5678411.17 100.00 +599594.53 5678458.13 100.00 +599594.98 5686617.01 95.00 +599595.28 5677771.67 105.00 +599595.43 5682287.15 96.25 +599595.44 5679886.84 97.50 +599595.48 5686499.13 95.00 +599595.63 5687290.30 95.00 +599595.77 5686952.10 95.00 +599595.79 5681672.24 97.50 +599595.81 5682277.28 96.25 +599595.94 5677864.71 100.00 +599596.20 5686557.84 95.00 +599596.23 5682130.69 96.25 +599596.34 5681959.62 96.25 +599596.49 5682297.05 96.25 +599596.69 5678616.55 98.75 +599596.74 5682227.96 96.25 +599596.82 5681357.60 97.50 +599596.94 5682474.57 96.25 +599596.99 5679328.03 98.75 +599597.02 5682267.40 96.25 +599597.03 5678420.57 100.00 +599597.12 5678576.80 98.75 +599597.15 5686626.75 95.00 +599597.25 5682257.45 96.25 +599597.60 5686706.11 95.00 +599597.61 5682306.94 96.25 +599597.63 5682247.51 96.25 +599597.69 5676762.54 101.25 +599597.75 5686696.15 95.00 +599597.79 5677749.38 105.00 +599597.81 5676928.65 101.25 +599597.84 5678725.85 98.75 +599597.85 5687193.00 95.00 +599597.96 5678449.13 100.00 +599598.15 5686548.05 95.00 +599598.19 5681936.21 96.00 +599598.21 5677695.54 100.00 +599598.24 5686716.08 95.00 +599598.29 5682237.58 96.25 +599598.40 5681331.52 97.50 +599598.44 5676938.35 101.25 +599598.48 5686508.66 95.00 +599598.51 5687129.70 95.00 +599598.65 5686636.63 95.00 +599598.71 5686686.21 95.00 +599598.78 5681679.87 97.00 +599598.85 5686942.60 95.00 +599598.87 5686726.05 95.00 +599599.06 5679599.09 98.75 +599599.08 5682316.78 96.25 +599599.17 5682464.86 96.25 +599599.31 5678430.06 100.00 +599599.50 5686736.02 95.00 +599599.69 5677729.10 101.25 +599599.75 5686775.92 95.00 +599599.81 5686538.23 95.00 +599599.82 5682121.40 96.25 +599599.95 5678439.57 100.00 +599600.00 5686676.30 95.00 +599600.09 5686528.24 95.00 +599600.10 5686745.99 95.00 +599600.15 5686646.51 95.00 +599600.23 5686785.88 95.00 +599600.24 5676685.60 101.25 +599600.26 5686765.94 95.00 +599600.29 5678038.45 98.75 +599600.34 5679318.75 98.75 +599600.39 5676919.01 101.25 +599600.56 5682326.63 96.25 +599600.70 5686755.96 95.00 +599600.77 5686518.28 95.00 +599600.84 5678134.89 98.75 +599600.93 5686795.85 95.00 +599600.94 5687234.61 95.00 +599601.04 5686656.46 95.00 +599601.32 5682455.15 96.25 +599601.33 5686666.40 95.00 +599601.34 5687099.30 95.00 +599601.60 5681866.03 96.25 +599601.60 5682336.52 96.25 +599601.77 5686933.05 95.00 +599601.95 5681924.04 96.25 +599601.96 5676619.89 101.25 +599602.22 5686805.70 95.00 +599602.31 5681951.65 96.25 +599602.48 5682346.44 96.25 +599602.85 5679880.21 97.50 +599602.98 5677810.50 101.25 +599603.00 5686923.20 95.00 +599603.13 5687296.90 95.00 +599603.19 5676946.63 101.25 +599603.28 5681875.04 96.25 +599603.35 5682356.35 96.25 +599603.42 5682445.42 96.25 +599603.47 5686913.22 95.00 +599603.62 5681690.44 97.50 +599603.64 5678717.78 98.75 +599604.03 5677858.90 100.00 +599604.13 5677291.35 100.00 +599604.20 5687137.30 95.00 +599604.22 5682366.27 96.25 +599604.31 5686903.29 95.00 +599604.38 5677773.80 105.00 +599604.50 5682112.66 96.25 +599604.80 5676910.40 101.25 +599604.85 5681363.16 97.50 +599605.09 5682376.18 96.25 +599605.09 5681674.92 97.50 +599605.17 5686815.25 95.00 +599605.44 5679310.18 98.75 +599605.51 5682435.69 96.25 +599605.70 5687199.17 95.00 +599605.85 5682386.10 96.25 +599606.11 5678613.52 98.75 +599606.13 5686893.46 95.00 +599606.36 5677745.47 105.00 +599606.41 5681337.18 97.50 +599606.48 5681417.87 97.50 +599606.55 5677758.92 105.50 +599606.55 5682425.80 96.25 +599606.56 5682396.03 96.25 +599606.64 5679592.67 98.75 +599606.79 5681408.77 97.50 +599606.80 5687226.52 95.00 +599606.96 5681858.65 96.25 +599606.96 5678575.16 98.75 +599607.00 5680828.18 97.50 +599607.02 5677690.89 100.00 +599607.27 5682405.96 96.25 +599607.44 5681682.94 97.00 +599607.45 5682415.88 96.25 +599607.48 5676764.47 101.25 +599607.81 5678031.87 98.75 +599607.86 5681943.39 96.25 +599607.96 5686883.64 95.00 +599608.11 5686824.80 95.00 +599609.27 5677726.32 101.25 +599609.29 5687104.44 95.00 +599609.71 5682104.18 96.25 +599609.71 5678709.92 98.75 +599609.86 5676613.76 101.25 +599609.91 5687207.53 95.00 +599609.92 5686873.85 95.00 +599609.99 5687304.14 95.00 +599610.03 5680837.34 97.50 +599610.20 5687217.35 95.00 +599610.21 5676686.39 101.25 +599610.26 5679873.58 97.50 +599610.67 5686834.45 95.00 +599610.78 5678133.97 98.75 +599611.11 5676952.59 101.25 +599611.43 5681867.62 95.15 +599611.47 5679302.39 98.75 +599611.51 5681921.42 96.25 +599611.63 5681426.20 97.50 +599611.73 5676903.21 101.25 +599611.83 5681878.77 96.25 +599611.87 5686864.05 95.00 +599612.33 5677853.44 100.00 +599612.65 5677808.05 101.25 +599612.78 5686854.10 95.00 +599612.79 5686844.21 95.00 +599612.80 5681693.69 97.50 +599613.13 5677771.25 105.00 +599613.23 5681368.23 97.50 +599613.78 5681935.40 96.25 +599613.84 5687138.49 95.00 +599613.89 5679585.82 98.75 +599614.12 5677291.35 100.00 +599614.48 5678024.52 98.75 +599614.66 5681676.79 97.50 +599614.76 5681342.25 97.50 +599614.92 5682095.70 96.25 +599615.27 5677742.59 105.00 +599615.31 5687112.41 95.00 +599615.67 5678610.82 98.75 +599615.80 5678702.08 98.75 +599615.83 5677686.25 100.00 +599615.83 5681858.31 96.25 +599616.06 5681407.84 97.50 +599616.22 5681685.62 97.00 +599616.56 5687311.67 95.00 +599616.81 5678573.52 98.75 +599617.14 5681434.33 97.50 +599617.42 5676765.13 101.25 +599617.57 5679866.84 97.50 +599618.35 5687130.84 95.00 +599618.68 5680841.87 97.50 +599618.75 5676896.12 101.25 +599618.85 5677723.57 101.25 +599618.91 5679295.76 98.75 +599619.18 5676610.23 101.25 +599619.42 5687120.94 95.00 +599619.44 5681915.77 96.25 +599619.66 5687321.02 95.00 +599620.07 5681874.91 96.25 +599620.14 5678016.30 98.75 +599620.16 5681214.31 98.75 +599620.18 5676687.19 101.25 +599620.34 5676955.76 101.25 +599620.44 5679578.34 98.75 +599620.54 5677765.39 105.00 +599620.61 5678132.20 98.75 +599620.64 5681928.21 96.25 +599620.67 5682087.62 96.25 +599620.87 5680709.42 97.50 +599621.30 5677849.11 100.00 +599621.32 5681865.69 96.25 +599621.41 5677803.74 101.25 +599621.64 5681373.27 97.50 +599622.05 5678694.35 98.75 +599622.10 5681696.60 97.50 +599622.15 5687330.69 95.00 +599622.67 5680699.68 97.50 +599622.85 5681347.79 97.50 +599622.89 5681442.28 97.50 +599623.14 5687340.62 95.00 +599624.11 5677291.29 100.00 +599624.22 5681678.66 97.50 +599624.22 5681205.45 98.75 +599624.63 5687350.36 95.00 +599624.66 5677681.64 100.00 +599624.71 5677742.68 105.00 +599624.79 5681412.32 97.50 +599624.83 5679860.03 97.50 +599624.90 5680717.97 97.50 +599625.00 5681688.30 97.00 +599625.13 5681907.63 96.25 +599625.13 5678007.64 98.75 +599625.23 5678608.11 98.75 +599625.92 5676889.17 101.25 +599626.35 5679289.13 98.75 +599626.53 5681219.03 98.75 +599626.65 5678571.87 98.75 +599626.70 5679570.59 98.75 +599627.11 5680691.08 97.50 +599627.26 5682080.16 96.25 +599627.40 5676765.37 101.25 +599627.99 5681921.50 96.25 +599628.20 5680844.33 97.50 +599628.26 5677759.96 105.00 +599628.37 5678686.69 98.75 +599628.56 5677721.31 101.25 +599628.79 5676607.57 101.25 +599629.30 5677797.64 101.25 +599629.64 5687359.00 95.00 +599630.12 5681378.17 97.50 +599630.12 5677998.99 98.75 +599630.14 5676687.99 101.25 +599630.29 5676956.60 101.25 +599630.35 5677844.96 100.00 +599630.36 5678130.03 98.75 +599630.93 5681353.33 97.50 +599631.20 5681447.44 97.50 +599631.37 5681198.52 98.75 +599631.40 5681699.51 97.50 +599632.08 5679853.22 97.50 +599632.24 5681900.79 96.25 +599632.96 5679562.83 98.75 +599633.00 5680683.11 97.50 +599633.08 5676882.22 101.25 +599633.23 5680723.21 97.50 +599633.23 5681417.30 97.50 +599633.30 5677745.61 105.00 +599633.53 5677677.12 100.00 +599633.78 5681680.52 97.50 +599633.79 5679282.50 98.75 +599633.80 5681690.96 97.00 +599634.10 5677291.11 100.00 +599634.33 5681212.98 98.75 +599634.64 5678606.52 98.75 +599634.69 5678679.03 98.75 +599634.92 5677753.81 105.00 +599635.11 5677990.33 98.75 +599635.36 5681914.80 96.25 +599636.03 5678568.73 98.75 +599636.95 5677791.24 101.25 +599637.38 5676765.47 101.25 +599637.72 5687364.75 95.00 +599638.00 5680845.04 97.50 +599638.05 5681191.14 98.75 +599638.30 5677719.21 101.25 +599638.54 5681383.16 97.50 +599638.55 5679554.59 98.75 +599638.60 5676605.68 101.25 +599639.02 5681358.86 97.50 +599639.44 5679846.53 97.50 +599639.45 5681452.75 97.50 +599639.46 5677840.95 100.00 +599639.75 5678126.83 98.75 +599639.85 5678670.57 98.75 +599639.93 5681894.47 96.25 +599640.13 5676687.91 101.25 +599640.25 5676957.31 101.25 +599640.40 5679275.04 98.75 +599640.46 5680676.97 97.50 +599640.56 5676875.61 101.25 +599640.69 5681702.43 97.50 +599641.04 5677982.41 98.75 +599641.44 5681422.69 97.50 +599641.53 5681206.10 98.75 +599642.24 5681439.01 97.30 +599642.41 5677672.60 100.00 +599642.44 5681646.79 97.50 +599642.54 5680725.83 97.50 +599642.76 5681656.58 97.50 +599642.81 5681692.72 97.00 +599643.01 5681908.43 96.25 +599643.15 5678611.64 98.75 +599643.17 5678968.65 97.50 +599643.23 5681682.88 97.50 +599643.57 5677288.10 100.00 +599643.92 5677784.14 101.25 +599643.93 5679546.20 98.75 +599644.76 5678661.94 98.75 +599645.05 5678564.47 98.75 +599645.22 5678959.08 97.50 +599645.24 5681184.24 98.75 +599645.34 5681390.22 97.50 +599645.84 5680931.06 97.50 +599645.92 5678978.13 97.50 +599645.98 5680921.32 97.50 +599646.15 5681637.72 97.50 +599646.32 5687369.74 95.00 +599646.80 5679839.85 97.50 +599646.96 5680940.83 97.50 +599646.99 5679267.56 98.75 +599647.09 5681458.84 97.50 +599647.36 5676765.47 101.25 +599647.41 5681363.86 97.50 +599647.66 5680911.63 97.50 +599647.83 5680845.12 97.50 +599648.03 5676868.98 101.25 +599648.09 5677717.31 101.25 +599648.27 5677975.52 98.75 +599648.45 5680950.54 97.50 +599648.45 5678121.92 98.75 +599648.50 5681889.41 96.25 +599648.58 5677836.94 100.00 +599648.60 5676605.64 101.25 +599648.87 5681199.38 98.75 +599649.23 5680672.37 97.50 +599649.31 5679537.81 98.75 +599649.33 5681153.73 97.50 +599649.40 5678950.07 97.50 +599649.44 5680901.96 97.50 +599649.70 5681427.99 97.50 +599650.05 5676958.72 101.25 +599650.07 5681705.06 97.50 +599650.13 5676687.76 101.25 +599650.32 5681658.42 97.50 +599650.41 5680960.18 97.50 +599650.47 5678653.82 98.75 +599650.59 5677776.73 101.25 +599650.67 5681902.07 96.25 +599650.95 5681398.10 97.50 +599651.33 5677668.22 100.00 +599651.37 5681162.99 97.50 +599651.43 5681629.30 97.50 +599651.66 5678616.77 98.75 +599651.82 5681694.48 97.00 +599652.40 5680726.71 97.50 +599652.43 5681177.35 98.75 +599652.49 5681467.03 97.50 +599652.52 5677283.94 100.00 +599652.64 5680892.66 97.50 +599652.69 5681685.24 97.50 +599652.79 5678985.15 97.50 +599653.04 5681144.59 97.50 +599653.16 5678940.87 97.50 +599653.46 5679259.99 98.75 +599653.50 5680969.41 97.50 +599653.95 5678560.00 98.75 +599654.19 5679833.18 97.50 +599654.28 5678931.00 97.50 +599654.64 5681504.30 97.50 +599654.97 5678911.18 97.50 +599655.06 5678901.24 97.50 +599655.15 5681406.95 97.50 +599655.21 5678921.11 97.50 +599655.28 5678891.31 97.50 +599655.41 5678645.48 98.75 +599655.41 5679529.97 98.75 +599655.43 5676862.28 101.25 +599655.51 5677968.63 98.75 +599655.60 5678625.80 98.75 +599655.68 5687373.21 95.00 +599655.98 5678635.56 98.75 +599656.24 5681513.44 97.50 +599656.26 5681368.07 97.50 +599656.53 5681494.67 97.50 +599656.53 5678881.52 97.50 +599656.93 5681193.54 98.75 +599657.15 5678117.01 98.75 +599657.20 5676766.86 101.25 +599657.33 5681884.82 96.25 +599657.54 5680701.83 97.75 +599657.63 5680845.40 97.50 +599657.66 5681484.95 97.50 +599657.67 5677832.89 100.00 +599657.79 5680925.38 97.50 +599657.86 5680884.46 97.50 +599657.89 5677717.94 101.25 +599657.89 5681475.23 97.50 +599657.92 5681621.70 97.50 +599657.95 5681433.30 97.50 +599658.10 5680915.55 97.50 +599658.21 5680935.07 97.50 +599658.21 5681652.35 97.50 +599658.24 5680978.03 97.50 +599658.26 5680668.31 97.50 +599658.30 5677770.42 101.25 +599658.38 5676604.12 101.25 +599658.61 5681896.10 96.25 +599659.12 5678871.93 97.50 +599659.44 5676962.11 101.25 +599659.54 5681707.35 97.50 +599659.71 5679252.23 98.75 +599659.79 5681170.66 98.75 +599659.84 5680906.02 97.50 +599660.13 5676687.62 101.25 +599660.19 5677277.54 100.00 +599660.48 5681162.30 97.50 +599660.68 5678991.02 97.50 +599660.73 5681138.26 97.50 +599660.91 5677665.49 100.00 +599661.22 5681414.47 97.50 +599661.45 5681521.58 97.50 +599661.58 5679826.53 97.50 +599662.01 5679522.50 98.75 +599662.11 5680726.29 97.50 +599662.14 5681687.61 97.50 +599662.24 5678554.44 98.75 +599662.39 5680943.97 97.50 +599662.74 5677961.73 98.75 +599663.20 5680986.50 97.50 +599663.60 5676856.97 101.25 +599663.77 5680897.00 97.50 +599663.95 5678863.24 97.50 +599663.98 5680876.76 97.50 +599664.35 5678402.57 98.75 +599664.51 5681614.22 97.50 +599664.89 5680850.25 97.50 +599664.89 5687377.06 95.00 +599664.94 5681372.62 97.50 +599664.99 5681187.69 98.75 +599665.40 5681645.44 97.50 +599665.54 5678111.61 98.75 +599665.68 5681439.23 97.50 +599665.96 5679244.46 98.75 +599666.07 5677764.18 101.25 +599666.12 5678392.84 98.75 +599666.40 5681880.72 96.25 +599666.57 5680952.88 97.50 +599666.59 5677828.58 100.00 +599666.77 5676769.48 101.25 +599666.80 5677721.64 101.25 +599667.25 5681891.40 96.25 +599667.46 5678411.59 98.75 +599667.65 5681164.54 98.75 +599667.89 5680665.99 97.50 +599667.97 5681155.94 97.50 +599667.99 5676601.37 101.25 +599668.19 5677271.57 100.00 +599668.24 5681421.30 97.50 +599668.33 5681131.82 97.50 +599668.61 5679515.03 98.75 +599668.68 5676965.87 101.25 +599668.78 5678854.55 97.50 +599668.97 5679819.88 97.50 +599669.01 5681709.64 97.50 +599669.14 5680859.06 97.50 +599669.14 5681527.67 97.50 +599669.46 5680994.09 97.50 +599669.47 5680868.89 97.50 +599669.57 5680889.23 97.50 +599669.61 5678995.39 97.50 +599669.87 5676688.69 101.25 +599670.49 5677662.75 100.00 +599670.51 5681399.99 97.20 +599670.53 5678548.89 98.75 +599670.53 5678383.89 98.75 +599671.38 5680961.45 97.50 +599671.48 5681690.33 97.50 +599671.48 5680723.07 97.50 +599671.64 5681475.80 97.50 +599671.69 5678845.09 97.50 +599671.73 5677756.14 101.25 +599672.01 5677958.51 98.75 +599672.12 5681607.76 97.50 +599672.16 5681446.59 97.50 +599672.41 5678420.26 98.75 +599672.64 5681466.04 97.50 +599673.00 5681638.96 97.50 +599673.05 5681181.84 98.75 +599673.09 5677821.03 100.00 +599673.18 5676854.15 101.25 +599673.27 5681456.25 97.50 +599673.29 5678105.31 98.75 +599673.49 5681377.39 97.50 +599673.73 5679238.24 98.75 +599673.78 5681886.58 96.25 +599673.88 5687381.41 95.00 +599674.02 5677728.40 101.25 +599674.02 5678835.44 97.50 +599674.31 5681157.24 98.75 +599674.61 5681148.52 97.50 +599674.99 5681484.51 97.50 +599675.54 5681876.78 96.25 +599675.72 5678825.65 97.50 +599675.73 5681125.15 97.50 +599675.73 5676773.86 101.25 +599675.80 5679508.21 98.75 +599675.81 5681001.57 97.50 +599676.02 5681427.16 97.50 +599676.22 5680970.02 97.50 +599676.37 5677265.84 100.00 +599676.46 5678540.90 98.75 +599676.58 5680882.33 97.50 +599676.64 5677747.46 101.25 +599676.91 5681618.83 97.00 +599677.05 5678376.67 98.75 +599677.09 5677737.56 101.25 +599677.19 5679814.29 97.50 +599677.20 5678429.01 98.75 +599677.37 5676597.93 101.25 +599677.65 5676970.26 101.25 +599677.72 5680667.29 97.50 +599678.04 5679000.54 97.50 +599678.47 5681510.69 97.20 +599678.60 5681711.31 97.50 +599678.87 5681526.91 97.50 +599678.96 5676692.85 101.25 +599679.07 5680797.52 96.25 +599679.59 5678816.54 97.50 +599679.61 5677813.50 100.00 +599680.01 5681384.31 97.50 +599680.21 5677661.47 100.00 +599680.37 5681149.34 98.75 +599680.41 5681602.50 97.50 +599680.49 5681632.37 97.50 +599680.68 5680719.38 97.50 +599680.69 5681693.51 97.50 +599681.03 5681175.90 98.75 +599681.03 5678099.00 98.75 +599681.48 5681141.31 97.50 +599681.59 5679232.11 98.75 +599681.68 5687387.66 95.00 +599681.69 5677956.01 98.75 +599681.97 5678437.77 98.75 +599682.15 5681491.05 97.50 +599682.26 5678532.78 98.75 +599682.65 5680977.40 97.50 +599682.95 5676853.23 101.25 +599683.50 5681118.93 97.50 +599683.57 5680875.45 97.50 +599683.90 5679502.41 98.75 +599683.94 5676779.55 101.25 +599684.03 5680789.46 96.25 +599684.19 5677259.64 100.00 +599684.39 5681432.27 97.50 +599684.49 5681006.18 97.50 +599684.66 5678808.01 97.50 +599684.97 5678370.59 98.75 +599685.18 5681392.64 97.50 +599685.50 5679808.82 97.50 +599685.83 5679006.72 97.50 +599686.17 5678446.80 98.75 +599686.32 5677806.14 100.00 +599686.39 5680847.63 97.50 +599686.51 5678523.77 98.75 +599686.61 5676974.65 101.25 +599686.62 5676594.15 101.25 +599686.97 5681141.89 98.75 +599686.97 5680857.27 97.50 +599687.54 5680668.59 97.50 +599687.55 5680866.87 97.50 +599687.69 5681133.56 97.50 +599687.86 5676697.39 101.25 +599688.13 5681710.69 97.50 +599688.35 5681169.14 98.75 +599688.56 5681525.41 97.50 +599688.78 5681626.80 97.50 +599688.78 5678092.69 98.75 +599689.23 5681401.54 97.50 +599689.27 5680838.31 97.50 +599689.43 5680984.53 97.50 +599689.63 5679226.27 98.75 +599689.65 5678456.15 98.75 +599689.82 5680828.58 97.50 +599689.85 5681599.26 97.50 +599689.86 5680715.67 97.50 +599689.90 5681696.69 97.50 +599689.99 5680782.13 96.25 +599690.12 5678799.71 97.50 +599690.15 5677662.15 100.00 +599690.62 5678514.68 98.75 +599690.95 5687390.74 95.00 +599691.24 5681494.20 97.50 +599691.32 5677953.35 98.75 +599691.48 5681113.00 97.50 +599692.00 5679496.60 98.75 +599692.14 5676785.24 101.25 +599692.34 5677254.14 100.00 +599692.42 5681429.76 97.50 +599692.68 5681011.57 97.50 +599692.88 5681410.61 97.50 +599692.89 5676854.07 101.25 +599693.03 5677798.79 100.00 +599693.09 5678505.15 98.75 +599693.13 5678465.51 98.75 +599693.31 5681125.37 97.50 +599693.74 5678365.89 98.75 +599693.78 5681134.63 98.75 +599693.82 5679803.38 97.50 +599693.93 5681420.35 97.50 +599693.94 5678495.21 98.75 +599694.35 5678475.28 98.75 +599694.45 5678485.26 98.75 +599694.53 5681704.75 97.50 +599694.87 5679010.73 97.50 +599695.62 5676978.95 101.25 +599695.66 5681162.39 98.75 +599695.88 5676590.39 101.25 +599696.34 5680775.10 96.25 +599696.53 5680991.33 97.50 +599696.59 5680799.51 96.25 +599696.63 5676702.19 101.25 +599696.81 5680671.96 97.50 +599696.97 5678087.03 98.75 +599697.07 5681621.23 97.50 +599697.59 5681521.93 97.50 +599697.75 5678793.55 97.50 +599698.63 5679222.00 98.75 +599698.78 5681594.81 97.50 +599699.07 5681126.24 98.75 +599699.10 5680712.09 97.50 +599700.01 5677663.17 100.00 +599700.19 5681108.16 97.50 +599700.50 5681017.55 97.50 +599700.50 5679491.48 98.75 +599700.65 5677949.99 98.75 +599700.71 5681118.69 97.50 +599700.74 5687392.73 95.00 +599700.91 5681492.83 97.50 +599701.04 5676789.65 101.25 +599701.17 5676859.60 101.25 +599701.52 5677794.06 100.00 +599701.73 5677250.71 100.00 +599702.15 5679797.93 97.50 +599702.72 5678361.55 98.75 +599702.88 5681155.52 98.75 +599703.67 5680793.22 96.25 +599703.86 5680997.89 97.50 +599704.32 5680770.03 96.25 +599704.50 5679011.58 97.50 +599704.72 5676708.01 101.25 +599704.80 5676982.86 101.25 +599705.23 5676586.83 101.25 +599705.36 5681615.67 97.50 +599706.03 5678082.97 98.75 +599706.05 5678788.09 97.50 +599706.14 5681517.10 97.50 +599706.33 5680673.96 97.50 +599706.84 5681120.02 98.75 +599707.57 5687390.01 95.00 +599707.63 5679217.73 98.75 +599708.01 5681591.07 97.50 +599708.34 5680708.52 97.50 +599708.60 5681112.71 97.50 +599708.88 5677944.32 98.75 +599708.91 5681022.63 97.50 +599709.10 5681103.74 97.50 +599709.39 5677666.54 100.00 +599709.51 5679487.22 98.75 +599709.74 5676864.69 101.25 +599710.03 5681148.59 98.75 +599710.21 5679792.13 97.50 +599710.32 5676793.31 101.25 +599710.43 5681493.97 97.50 +599710.52 5687050.28 95.00 +599710.54 5687380.97 95.00 +599710.84 5677790.56 100.00 +599710.88 5680787.08 96.25 +599710.93 5687040.54 95.00 +599711.44 5677248.70 100.00 +599711.57 5687060.20 95.00 +599711.89 5678357.61 98.75 +599711.95 5681003.49 97.50 +599712.53 5681509.90 97.50 +599712.80 5676713.86 101.25 +599712.91 5680766.26 96.25 +599713.00 5681609.27 97.50 +599713.03 5676988.36 101.25 +599713.66 5687069.97 95.00 +599714.39 5679010.61 97.50 +599714.63 5676583.52 101.25 +599714.87 5678783.50 97.50 +599714.99 5686790.03 95.00 +599715.05 5687031.44 95.00 +599715.07 5686780.14 95.00 +599715.73 5678080.82 98.75 +599715.74 5681115.89 98.75 +599715.75 5687079.74 95.00 +599715.90 5681501.15 97.50 +599716.03 5677429.24 98.75 +599716.24 5680673.96 97.50 +599716.39 5677419.38 98.75 +599717.01 5679214.50 98.75 +599717.10 5677938.65 98.75 +599717.18 5681141.66 98.75 +599717.20 5677438.97 98.75 +599717.34 5681107.97 97.50 +599717.36 5681027.65 97.50 +599717.58 5681589.64 97.50 +599717.60 5680704.98 97.50 +599717.76 5680780.57 96.25 +599717.84 5687089.51 95.00 +599717.95 5679785.88 97.50 +599718.05 5686799.49 95.00 +599718.17 5681099.61 97.50 +599718.53 5679482.97 98.75 +599718.53 5676869.42 101.25 +599718.76 5677669.90 100.00 +599719.17 5687022.34 95.00 +599719.28 5677448.61 98.75 +599719.44 5686771.16 95.00 +599719.94 5687099.28 95.00 +599719.97 5676795.85 101.25 +599720.08 5681009.03 97.50 +599720.26 5677787.33 100.00 +599720.39 5681602.57 97.50 +599720.51 5687380.37 95.00 +599720.60 5677410.50 98.75 +599720.78 5676994.64 101.25 +599721.06 5678353.67 98.75 +599721.25 5687139.02 95.00 +599721.37 5677247.60 100.00 +599721.40 5686808.90 95.00 +599721.48 5687129.03 95.00 +599721.71 5687119.04 95.00 +599721.75 5676717.67 101.25 +599721.93 5687109.05 95.00 +599722.10 5680765.70 96.25 +599722.58 5677457.82 98.75 +599723.30 5687013.24 95.00 +599723.58 5678778.75 97.50 +599723.64 5680773.28 96.25 +599723.67 5686818.61 95.00 +599723.78 5679008.12 97.50 +599723.82 5686762.17 95.00 +599724.27 5681594.46 97.50 +599724.48 5681092.10 97.50 +599724.54 5681134.96 98.75 +599724.57 5676582.48 101.25 +599724.80 5677932.29 98.75 +599724.80 5681111.83 98.75 +599724.93 5687147.98 95.00 +599725.16 5679779.03 97.50 +599725.58 5686828.42 95.00 +599725.66 5678081.27 98.75 +599725.66 5681032.93 97.50 +599726.05 5680675.25 97.50 +599726.69 5679212.12 98.75 +599726.81 5681104.87 97.50 +599726.83 5686752.70 95.00 +599726.87 5680701.48 97.50 +599726.93 5677675.58 100.00 +599727.06 5677466.62 98.75 +599727.14 5686838.28 95.00 +599727.49 5676873.81 101.25 +599727.71 5677403.69 98.75 +599727.96 5679479.74 98.75 +599728.02 5687375.06 95.00 +599728.17 5678186.53 98.75 +599728.27 5677001.20 101.25 +599728.47 5678196.50 98.75 +599728.58 5681013.97 97.50 +599728.78 5686848.12 95.00 +599728.94 5678206.48 98.75 +599729.28 5687005.33 95.00 +599729.78 5677784.42 100.00 +599729.83 5676796.90 101.25 +599729.84 5678176.67 98.75 +599729.89 5678216.43 98.75 +599730.03 5687156.57 95.00 +599730.09 5681083.87 97.50 +599730.29 5678349.90 98.75 +599730.85 5678226.37 98.75 +599730.87 5686743.68 95.00 +599731.28 5677924.86 98.75 +599731.35 5677247.16 100.00 +599731.40 5677475.47 98.75 +599731.50 5678166.82 98.75 +599731.54 5678772.80 97.50 +599731.75 5676717.49 101.25 +599732.03 5680913.50 97.50 +599732.27 5679002.95 97.50 +599732.27 5679772.08 97.50 +599732.37 5686857.44 95.00 +599732.75 5681129.38 98.75 +599733.57 5680923.07 97.50 +599733.58 5681107.14 98.75 +599733.83 5678235.78 98.75 +599733.84 5680903.88 97.50 +599734.34 5687367.32 95.00 +599734.36 5677484.80 98.75 +599734.51 5676581.44 101.25 +599734.66 5677008.86 101.25 +599734.74 5681098.92 97.50 +599734.85 5678084.79 98.75 +599734.88 5681036.00 97.50 +599734.98 5678157.53 98.75 +599735.04 5680696.22 97.50 +599735.06 5677681.33 100.00 +599735.13 5687165.16 95.00 +599735.14 5680678.32 97.50 +599735.39 5681075.44 97.50 +599735.46 5678245.57 98.75 +599735.77 5686997.73 95.00 +599736.13 5677399.34 98.75 +599736.30 5677494.48 98.75 +599736.31 5676878.45 101.25 +599736.37 5679209.74 98.75 +599736.41 5677916.28 98.75 +599736.56 5678255.50 98.75 +599736.59 5679475.02 98.75 +599736.78 5686736.08 95.00 +599737.08 5681018.92 97.50 +599737.51 5680894.64 97.50 +599737.62 5680687.81 97.50 +599737.67 5678265.43 98.75 +599738.23 5677504.15 98.75 +599738.30 5678275.39 98.75 +599738.30 5687174.62 95.00 +599738.53 5678285.38 98.75 +599738.63 5678295.37 98.75 +599738.67 5677780.18 100.00 +599738.95 5678766.23 97.50 +599739.13 5679764.89 97.50 +599739.17 5678305.21 98.75 +599739.18 5678148.46 98.75 +599739.25 5686864.68 95.00 +599739.81 5676797.03 101.25 +599739.83 5678346.96 98.75 +599740.50 5677016.96 101.25 +599740.68 5686989.11 95.00 +599740.74 5676713.74 101.25 +599740.75 5678997.78 97.50 +599740.84 5677907.41 98.75 +599741.22 5681124.14 98.75 +599741.25 5680919.66 97.50 +599741.28 5681067.46 97.50 +599741.33 5677246.75 100.00 +599741.34 5687360.34 95.00 +599741.37 5687184.13 95.00 +599741.45 5677688.87 100.00 +599741.51 5680164.11 96.25 +599742.06 5678091.52 98.75 +599742.23 5681102.20 98.75 +599742.27 5677513.13 98.75 +599742.45 5681092.63 97.50 +599742.59 5678139.12 98.75 +599743.02 5680155.30 96.25 +599743.04 5678314.42 98.75 +599743.23 5680886.48 97.50 +599743.47 5677897.77 98.75 +599744.05 5681034.59 97.50 +599744.14 5681025.45 97.50 +599744.26 5676579.38 101.25 +599744.28 5686979.86 95.00 +599744.42 5687193.64 95.00 +599744.52 5679468.98 98.75 +599744.99 5678129.42 98.75 +599745.15 5686872.67 95.00 +599745.20 5680146.57 96.25 +599745.52 5676881.22 101.25 +599745.61 5679757.37 97.50 +599745.71 5677025.45 101.25 +599745.89 5680171.29 96.25 +599745.89 5678759.11 97.50 +599745.91 5677398.42 98.75 +599746.19 5686970.06 95.00 +599746.26 5679209.27 98.75 +599746.41 5686734.12 95.00 +599746.47 5680911.18 97.50 +599746.48 5677888.25 98.75 +599746.66 5678323.72 98.75 +599746.77 5678100.18 98.75 +599746.92 5677774.61 100.00 +599746.94 5680137.75 96.25 +599747.24 5687203.23 95.00 +599747.25 5677521.56 98.75 +599747.31 5678119.71 98.75 +599747.43 5677696.83 100.00 +599747.80 5686960.21 95.00 +599748.12 5681060.23 97.50 +599748.27 5686950.23 95.00 +599748.35 5678109.77 98.75 +599748.49 5680128.89 96.25 +599748.58 5676707.76 101.25 +599748.70 5681084.87 97.50 +599748.75 5686940.26 95.00 +599749.07 5677878.62 98.75 +599749.29 5680878.59 97.50 +599749.47 5686930.29 95.00 +599749.47 5678344.69 98.75 +599749.53 5678993.13 97.50 +599749.68 5676798.19 101.25 +599749.88 5681119.31 98.75 +599750.05 5687356.37 95.00 +599750.06 5687212.81 95.00 +599750.25 5686920.33 95.00 +599750.30 5686881.23 95.00 +599750.31 5681096.41 98.75 +599750.35 5677034.29 101.25 +599750.79 5677868.78 98.75 +599751.04 5686910.37 95.00 +599751.16 5680120.35 96.25 +599751.31 5677246.82 100.00 +599751.37 5680171.98 96.25 +599751.77 5678328.96 98.75 +599751.82 5680902.78 97.50 +599751.83 5686900.41 95.00 +599752.30 5679462.75 98.75 +599752.54 5681569.22 97.50 +599752.62 5686890.46 95.00 +599752.83 5678752.00 97.50 +599752.88 5687222.39 95.00 +599753.35 5679751.12 97.50 +599753.40 5677704.80 100.00 +599753.72 5677529.01 98.75 +599753.86 5676576.60 101.25 +599754.02 5686739.53 95.00 +599754.46 5676699.72 101.25 +599754.54 5680112.02 96.25 +599754.90 5677768.71 100.00 +599755.01 5677859.78 98.75 +599755.11 5681077.27 97.50 +599755.25 5679204.98 98.75 +599755.48 5676881.40 101.25 +599755.61 5680870.89 97.50 +599755.70 5687231.98 95.00 +599755.78 5681053.87 97.50 +599755.78 5677398.42 98.75 +599756.31 5677042.23 101.25 +599756.61 5680165.07 96.25 +599757.37 5681370.14 97.50 +599757.46 5680156.12 96.25 +599757.54 5680147.04 96.25 +599757.67 5680894.74 97.50 +599757.67 5686748.45 95.00 +599757.69 5681089.74 98.75 +599757.81 5681561.56 96.25 +599758.19 5677713.48 100.00 +599758.23 5680138.02 96.25 +599758.38 5678988.61 97.50 +599758.52 5687241.56 95.00 +599759.03 5679250.46 99.00 +599759.19 5686758.33 95.00 +599759.20 5681360.54 97.50 +599759.22 5680104.36 96.25 +599759.32 5676690.99 101.25 +599759.37 5681116.30 98.75 +599759.44 5678344.41 98.75 +599759.46 5687359.69 95.00 +599759.49 5676800.07 101.25 +599759.59 5677850.89 98.75 +599759.86 5680129.10 96.25 +599760.53 5678745.74 97.50 +599760.80 5680862.47 97.50 +599761.23 5677535.16 98.75 +599761.25 5678325.80 98.75 +599761.28 5677247.48 100.00 +599761.29 5679458.64 98.75 +599761.35 5687251.14 95.00 +599761.56 5677761.31 100.00 +599761.98 5686767.83 95.00 +599762.04 5679746.40 97.50 +599762.10 5681567.08 97.50 +599762.16 5681070.22 97.50 +599762.43 5677722.49 100.00 +599762.78 5677049.83 101.25 +599763.10 5680120.62 96.25 +599763.46 5676573.82 101.25 +599763.59 5681047.69 97.50 +599763.90 5676682.11 101.25 +599763.93 5677751.97 100.00 +599764.17 5687260.73 95.00 +599764.25 5677732.17 100.00 +599764.40 5679201.03 98.75 +599764.58 5681352.31 97.50 +599764.81 5680888.06 97.50 +599764.87 5681554.57 96.25 +599765.06 5677742.08 100.00 +599765.11 5681083.10 98.75 +599765.14 5680853.51 97.50 +599765.23 5676879.27 101.25 +599765.59 5681374.28 97.50 +599765.65 5677398.42 98.75 +599765.97 5686776.99 95.00 +599766.20 5680099.21 96.25 +599766.74 5677844.01 98.75 +599767.29 5680112.58 96.25 +599767.47 5686825.45 95.00 +599767.53 5678984.88 97.50 +599767.96 5686815.47 95.00 +599768.41 5678739.68 97.50 +599768.58 5687363.78 95.00 +599768.68 5687269.56 95.00 +599768.86 5681113.28 98.75 +599768.98 5678347.34 98.75 +599769.16 5686805.66 95.00 +599769.25 5686835.05 95.00 +599769.27 5676802.05 101.25 +599769.28 5680103.89 96.25 +599769.48 5680844.54 97.50 +599769.54 5677057.18 101.25 +599769.81 5681560.79 97.50 +599769.82 5681343.88 97.50 +599769.96 5686786.15 95.00 +599770.05 5681064.24 97.50 +599770.06 5677539.45 98.75 +599770.17 5676675.33 101.25 +599770.59 5679455.05 98.75 +599770.73 5678322.64 98.75 +599770.73 5686796.01 95.00 +599770.78 5679741.69 97.50 +599771.00 5681546.68 96.25 +599771.12 5677245.93 100.00 +599771.23 5681041.31 97.50 +599771.85 5680834.95 97.50 +599772.47 5680881.88 97.50 +599772.64 5676570.00 101.25 +599772.90 5686844.35 95.00 +599773.06 5681077.22 98.75 +599773.50 5679196.96 98.75 +599774.20 5677837.36 98.75 +599774.57 5687277.51 95.00 +599774.80 5681335.27 97.50 +599774.82 5676876.55 101.25 +599775.42 5681372.83 97.50 +599775.50 5677398.31 98.75 +599775.72 5681552.75 97.50 +599776.12 5681538.19 96.25 +599776.28 5678733.61 97.50 +599776.33 5677064.50 101.25 +599776.38 5687369.98 95.00 +599776.55 5686853.65 95.00 +599777.17 5678982.44 97.50 +599778.34 5678350.67 98.75 +599778.60 5681111.20 98.75 +599778.62 5681094.38 99.00 +599778.83 5676804.56 101.25 +599778.88 5681034.92 97.50 +599778.93 5681060.18 97.50 +599779.13 5679736.29 97.50 +599779.30 5680874.64 97.50 +599779.38 5676562.72 101.25 +599779.56 5679391.41 100.00 +599779.65 5677540.69 98.75 +599779.77 5676672.68 101.25 +599779.77 5681326.66 97.50 +599780.03 5679451.90 98.75 +599780.17 5681529.06 96.25 +599780.20 5686862.95 95.00 +599780.32 5678319.85 98.75 +599780.55 5681544.06 97.50 +599780.93 5677465.27 98.50 +599780.94 5677244.10 100.00 +599781.66 5677830.72 98.75 +599781.68 5680458.05 97.50 +599781.96 5680467.90 97.50 +599782.06 5687284.12 95.00 +599782.26 5681365.86 97.50 +599782.53 5679192.75 98.75 +599782.61 5681074.91 98.75 +599782.78 5681317.27 97.50 +599782.86 5679382.62 100.00 +599783.25 5676871.72 101.25 +599783.43 5681519.62 96.25 +599784.01 5687376.43 95.00 +599784.08 5680866.09 97.50 +599784.14 5678727.52 97.50 +599784.52 5686871.94 95.00 +599784.71 5681535.01 97.50 +599785.14 5681307.61 97.50 +599785.27 5676554.66 101.25 +599785.32 5677399.29 98.75 +599785.39 5680449.12 97.50 +599785.41 5677068.40 101.25 +599785.48 5680476.91 97.50 +599786.28 5681337.37 97.00 +599786.62 5681510.16 96.25 +599786.68 5678356.14 98.75 +599786.87 5676810.48 101.25 +599786.92 5678980.67 97.50 +599787.04 5681357.32 97.50 +599787.16 5680856.66 97.50 +599787.30 5680439.52 97.50 +599787.48 5679730.88 97.50 +599787.57 5681030.14 97.50 +599787.86 5681525.55 97.50 +599788.11 5679394.11 100.00 +599788.32 5681109.08 98.75 +599788.40 5686881.01 95.00 +599788.79 5681058.87 97.50 +599788.80 5680429.78 97.50 +599788.87 5677537.19 98.75 +599789.00 5680846.87 97.50 +599789.34 5680419.96 97.50 +599789.39 5687023.60 95.00 +599789.51 5681298.70 97.50 +599789.53 5680410.11 97.50 +599789.71 5679449.55 98.75 +599789.72 5676671.72 101.25 +599789.77 5680836.94 97.50 +599789.90 5686890.89 95.00 +599789.97 5678317.27 98.75 +599789.99 5677825.20 98.75 +599790.01 5687013.67 95.00 +599790.09 5676864.47 101.25 +599790.51 5681219.25 98.75 +599790.56 5681348.03 97.50 +599790.69 5677241.96 100.00 +599790.75 5681210.86 98.75 +599790.79 5679376.96 100.00 +599791.00 5676546.47 101.25 +599791.26 5680400.47 97.50 +599791.39 5686900.76 95.00 +599791.40 5687383.13 95.00 +599791.51 5681516.27 97.50 +599791.51 5687286.55 95.00 +599791.56 5679188.53 98.75 +599791.61 5681501.51 96.25 +599791.74 5680484.03 97.50 +599792.07 5678721.54 97.50 +599792.20 5686984.42 95.00 +599792.25 5686994.26 95.00 +599792.57 5681075.04 98.75 +599792.57 5676818.60 101.25 +599792.75 5687004.06 95.00 +599793.19 5686910.59 95.00 +599793.50 5687032.49 95.00 +599793.74 5680390.94 97.50 +599794.10 5681289.89 97.50 +599794.41 5686974.77 95.00 +599794.79 5678361.96 98.75 +599794.83 5677071.53 101.25 +599795.13 5681339.20 97.50 +599795.14 5677400.25 98.75 +599795.74 5681507.27 97.50 +599795.80 5676856.35 101.25 +599795.88 5679725.56 97.50 +599795.94 5676537.77 101.25 +599796.39 5681224.89 98.75 +599796.51 5681025.76 97.50 +599796.63 5681492.87 96.25 +599796.64 5676827.62 101.25 +599796.80 5678979.60 97.50 +599797.23 5681204.46 98.75 +599797.30 5679391.08 100.00 +599797.43 5677532.36 98.75 +599797.50 5681105.24 98.75 +599797.92 5678111.74 98.75 +599798.02 5686919.11 95.00 +599798.08 5687390.56 95.00 +599798.25 5680382.64 97.50 +599798.31 5677819.67 98.75 +599798.60 5678714.14 97.50 +599798.61 5681060.30 97.50 +599798.74 5678101.81 98.75 +599798.83 5678603.33 97.50 +599799.06 5676847.05 101.25 +599799.14 5679371.99 100.00 +599799.32 5678593.40 97.50 +599799.35 5679380.57 100.25 +599799.38 5676673.93 101.25 +599799.40 5679447.20 98.75 +599799.53 5678121.42 98.75 +599799.63 5678314.69 98.75 +599799.65 5676837.13 101.25 +599799.68 5679182.83 98.75 +599799.71 5681330.37 97.50 +599799.98 5678092.00 98.75 +599800.12 5681212.24 99.00 +599800.45 5677239.80 100.00 +599800.70 5681498.61 97.50 +599801.08 5680483.89 97.50 +599801.11 5678583.63 97.50 +599801.14 5681079.32 98.75 +599801.38 5687288.05 95.00 +599801.43 5686967.65 95.00 +599801.65 5681484.23 96.25 +599802.00 5678131.05 98.75 +599802.31 5687035.94 95.00 +599802.31 5678170.42 98.75 +599802.31 5678180.38 98.75 +599802.54 5681286.64 97.50 +599802.55 5678160.48 98.75 +599802.90 5678367.78 98.75 +599802.95 5678611.96 97.50 +599803.56 5676531.66 101.25 +599803.64 5678140.88 98.75 +599803.70 5681321.29 97.50 +599803.78 5681097.73 98.75 +599803.99 5678705.92 97.50 +599804.39 5679720.41 97.50 +599804.46 5678150.70 98.75 +599804.46 5678574.28 97.50 +599804.51 5678083.12 98.75 +599804.59 5681199.11 98.75 +599804.80 5677071.89 101.25 +599804.97 5677401.14 98.75 +599805.15 5681222.64 98.75 +599805.19 5681087.90 98.75 +599805.56 5681489.90 97.50 +599805.57 5680376.05 97.50 +599805.75 5677527.05 98.75 +599805.93 5687396.68 95.00 +599805.93 5678189.65 98.75 +599805.96 5686924.94 95.00 +599806.07 5681023.64 97.50 +599806.12 5679386.95 100.00 +599806.64 5677814.15 98.75 +599806.67 5681475.60 96.25 +599806.68 5678978.53 97.50 +599806.74 5678696.37 97.50 +599806.74 5676680.54 101.25 +599807.04 5681311.92 97.50 +599807.52 5679176.67 98.75 +599807.66 5679367.28 100.00 +599807.96 5681063.62 97.50 +599808.39 5678620.28 97.50 +599808.57 5681302.18 97.50 +599808.65 5680478.68 97.50 +599808.86 5686960.99 95.00 +599808.96 5678686.68 97.50 +599809.07 5686933.89 95.00 +599809.08 5679444.85 98.75 +599809.27 5681292.27 97.50 +599809.28 5678312.11 98.75 +599809.64 5678198.90 98.75 +599810.07 5681215.03 98.75 +599810.35 5677238.50 100.00 +599810.42 5681481.19 97.50 +599810.89 5678075.55 98.75 +599810.98 5686943.70 95.00 +599811.00 5678373.59 98.75 +599811.18 5678677.00 97.50 +599811.25 5678567.01 97.50 +599811.28 5687289.39 95.00 +599811.72 5681466.98 96.25 +599812.20 5687036.67 95.00 +599812.29 5676526.80 101.25 +599812.75 5681198.35 98.75 +599812.98 5679715.40 97.50 +599813.18 5686953.44 95.00 +599813.20 5680369.82 97.50 +599813.23 5678628.96 97.50 +599813.44 5676687.88 101.25 +599813.65 5678667.38 97.50 +599813.70 5677521.20 98.75 +599813.77 5681206.78 98.75 +599814.04 5677068.96 101.25 +599814.26 5681071.33 97.50 +599814.34 5677404.10 98.75 +599814.44 5680470.71 97.50 +599814.83 5687400.70 95.00 +599814.86 5679384.97 100.00 +599815.35 5679170.52 98.75 +599815.46 5677809.48 98.75 +599816.01 5681022.91 97.50 +599816.03 5681472.97 97.50 +599816.34 5678206.14 98.75 +599816.37 5678638.36 97.50 +599816.51 5678977.22 97.50 +599816.66 5678657.91 97.50 +599816.80 5681458.38 96.25 +599817.12 5679366.60 100.00 +599817.33 5681080.38 97.50 +599817.66 5678648.05 97.50 +599817.72 5678559.47 97.50 +599817.73 5678068.31 98.75 +599818.24 5681090.30 97.50 +599818.43 5676696.54 101.25 +599818.77 5679442.49 98.75 +599818.96 5678309.64 98.75 +599819.50 5678378.82 98.75 +599820.11 5681099.81 97.50 +599820.12 5677061.38 101.25 +599820.18 5677003.46 101.25 +599820.26 5677237.20 100.00 +599820.34 5680462.82 97.50 +599820.81 5687291.90 95.00 +599820.91 5680363.68 97.50 +599821.29 5677013.26 101.25 +599821.36 5676522.71 101.25 +599821.44 5676993.56 101.25 +599821.46 5679710.20 97.50 +599821.72 5677515.47 98.75 +599821.88 5681449.77 96.25 +599822.03 5681465.01 97.50 +599822.19 5687036.44 95.00 +599822.86 5676705.44 101.25 +599823.10 5679373.15 100.00 +599823.41 5677023.01 101.25 +599823.42 5677407.93 98.75 +599823.51 5678551.37 97.50 +599823.62 5676983.83 101.25 +599823.83 5678212.28 98.75 +599823.92 5679382.57 100.00 +599824.31 5677052.39 101.25 +599824.42 5677805.07 98.75 +599824.63 5687402.61 95.00 +599824.68 5679167.13 98.75 +599825.41 5680454.51 97.50 +599825.45 5676715.10 101.25 +599825.51 5677032.77 101.25 +599825.89 5681023.88 97.50 +599825.94 5678974.07 97.50 +599826.06 5677042.74 101.25 +599826.79 5681106.56 97.50 +599827.23 5681441.36 96.25 +599827.28 5678067.14 98.75 +599827.79 5676724.81 101.25 +599828.03 5678384.00 98.75 +599828.07 5676975.07 101.25 +599828.24 5680445.07 97.50 +599828.36 5681213.39 97.50 +599828.43 5678542.77 97.50 +599828.44 5681457.37 97.50 +599828.45 5679440.14 98.75 +599828.62 5680357.54 97.50 +599828.66 5678307.22 98.75 +599828.76 5681524.39 97.50 +599828.79 5681307.41 97.50 +599829.20 5681203.80 97.50 +599829.35 5681297.48 97.50 +599829.62 5676734.64 101.25 +599829.70 5681257.73 97.50 +599829.70 5679704.64 97.50 +599829.71 5687296.45 95.00 +599829.91 5681287.55 97.50 +599829.93 5677509.99 98.75 +599830.02 5681267.67 97.50 +599830.17 5680435.44 97.50 +599830.18 5677236.06 100.00 +599830.33 5681277.62 97.50 +599830.57 5681317.20 97.50 +599830.64 5677414.25 98.75 +599830.72 5676911.87 101.25 +599830.81 5681221.80 97.50 +599831.19 5676520.89 101.25 +599831.32 5676921.82 101.25 +599831.37 5676744.48 101.25 +599832.07 5681053.26 97.00 +599832.18 5687036.22 95.00 +599832.19 5681532.07 97.50 +599832.29 5680425.89 97.50 +599832.32 5678533.62 97.50 +599832.98 5681194.99 97.50 +599833.39 5677800.66 98.75 +599833.43 5681433.53 96.25 +599833.47 5681326.67 97.50 +599833.56 5676902.29 101.25 +599833.78 5678212.87 98.75 +599833.87 5681516.44 97.50 +599834.03 5676753.98 101.25 +599834.19 5680386.61 98.00 +599834.28 5679164.53 98.75 +599834.44 5687404.52 95.00 +599834.82 5681449.71 97.50 +599835.03 5676931.09 101.25 +599835.04 5681250.98 97.50 +599835.44 5678971.17 97.50 +599835.51 5678071.96 98.75 +599835.57 5681025.91 97.50 +599835.82 5678524.30 97.50 +599835.95 5680416.79 97.50 +599836.39 5681305.98 96.25 +599836.58 5677422.12 98.75 +599836.60 5681186.02 97.50 +599836.65 5681107.12 97.50 +599836.93 5680352.25 97.50 +599837.02 5678387.99 98.75 +599837.19 5676974.05 101.25 +599837.67 5679436.52 98.75 +599837.77 5687302.16 95.00 +599837.91 5679699.03 97.50 +599838.22 5676893.60 101.25 +599838.35 5678304.80 98.75 +599838.85 5678171.00 99.00 +599839.19 5677507.17 98.75 +599839.20 5676762.54 101.25 +599839.24 5681176.71 97.50 +599839.29 5681508.56 97.50 +599839.64 5681425.70 96.25 +599839.70 5676939.89 101.25 +599839.73 5681333.94 97.50 +599839.74 5678515.17 97.50 +599839.79 5681167.00 97.50 +599840.16 5677235.55 100.00 +599840.34 5681157.29 97.50 +599840.39 5681221.84 97.50 +599840.53 5681314.32 96.25 +599840.55 5681530.91 97.50 +599840.69 5681441.65 97.50 +599840.79 5681300.52 96.25 +599840.95 5676518.77 101.25 +599842.36 5677796.26 98.75 +599842.55 5680344.21 97.50 +599842.60 5677429.94 98.75 +599842.60 5681147.83 97.50 +599842.97 5681255.68 97.50 +599843.25 5678078.23 98.75 +599843.71 5678212.30 98.75 +599843.84 5687407.89 95.00 +599844.08 5679162.75 98.75 +599844.36 5676979.92 101.25 +599844.48 5681213.20 97.50 +599844.48 5676771.02 101.25 +599844.61 5678506.54 97.50 +599844.70 5676886.09 101.25 +599844.71 5681500.67 97.50 +599844.76 5680412.38 97.50 +599844.81 5681029.57 97.50 +599844.86 5687309.19 95.00 +599844.94 5676948.41 101.25 +599845.00 5678968.48 97.50 +599845.03 5681138.44 97.50 +599845.82 5681417.86 96.25 +599845.85 5679693.03 97.50 +599845.95 5681104.76 97.50 +599846.59 5679432.06 98.75 +599846.62 5681433.63 97.50 +599846.83 5678389.81 98.75 +599847.03 5681264.68 97.50 +599847.16 5681203.85 97.50 +599847.19 5676989.49 101.25 +599847.32 5681524.16 97.50 +599847.37 5681320.82 96.25 +599848.01 5680336.02 97.50 +599848.04 5678302.37 98.75 +599848.20 5678086.88 98.75 +599848.30 5681305.82 96.25 +599848.45 5681335.36 97.50 +599848.67 5677437.72 98.75 +599848.69 5681274.48 97.50 +599848.95 5687318.30 95.00 +599848.95 5677505.76 98.75 +599849.49 5676957.29 101.25 +599849.64 5676999.16 101.25 +599849.76 5681194.48 97.50 +599849.89 5676779.43 101.25 +599849.96 5681130.06 97.50 +599850.01 5681284.33 97.50 +599850.09 5677234.73 100.00 +599850.54 5676515.97 101.25 +599851.09 5681152.51 97.00 +599851.36 5681294.05 97.50 +599851.37 5678499.51 97.50 +599851.49 5681493.96 97.50 +599851.73 5681409.80 96.25 +599851.86 5677793.17 98.75 +599852.10 5677008.84 101.25 +599852.34 5680406.11 97.50 +599852.49 5676879.82 101.25 +599852.51 5687412.74 95.00 +599852.62 5681185.19 97.50 +599852.68 5678208.82 98.75 +599852.79 5681425.79 97.50 +599852.93 5687327.46 95.00 +599853.16 5678095.53 98.75 +599853.18 5681314.68 96.00 +599853.38 5681516.76 97.50 +599853.50 5679686.72 97.50 +599853.65 5681241.65 97.50 +599853.69 5679163.97 98.75 +599854.04 5676966.17 101.25 +599854.09 5681099.01 97.50 +599854.17 5681504.02 97.10 +599854.67 5681029.10 97.50 +599854.80 5677445.46 98.75 +599854.92 5678967.93 97.50 +599855.04 5677018.33 101.25 +599855.17 5680329.37 97.50 +599855.44 5679427.48 98.75 +599855.63 5681175.94 97.50 +599856.23 5681321.92 96.25 +599856.31 5681123.02 97.50 +599856.52 5676786.87 101.25 +599856.64 5678391.63 98.75 +599857.31 5681331.16 97.50 +599857.40 5681305.71 96.25 +599857.64 5681401.75 96.25 +599857.72 5687335.96 95.00 +599857.74 5678299.95 98.75 +599858.11 5678104.17 98.75 +599858.32 5681233.22 97.50 +599858.49 5681487.44 97.50 +599858.55 5681293.94 97.50 +599858.76 5681063.21 97.50 +599858.76 5677504.65 98.75 +599858.85 5681166.76 97.50 +599859.01 5681417.99 97.50 +599859.37 5676974.59 101.25 +599859.57 5677027.23 101.25 +599859.72 5676512.08 101.25 +599859.81 5677232.41 100.00 +599859.83 5680399.71 97.50 +599860.28 5676873.55 101.25 +599860.30 5681244.74 97.50 +599860.41 5679679.56 97.50 +599860.44 5681510.31 97.50 +599860.49 5678202.69 98.75 +599860.66 5681091.68 97.50 +599860.75 5681053.45 97.50 +599860.86 5687418.23 95.00 +599861.22 5678500.44 97.50 +599861.34 5676956.04 100.00 +599861.36 5677790.08 98.75 +599861.46 5681072.80 97.50 +599861.53 5677452.66 98.75 +599861.76 5679925.59 97.50 +599861.84 5679916.12 97.50 +599862.21 5681157.64 97.50 +599862.68 5678113.02 98.75 +599862.98 5676946.36 100.00 +599863.13 5681082.53 97.50 +599863.16 5679167.08 98.75 +599863.29 5680323.85 97.50 +599863.54 5679906.47 97.50 +599863.83 5681025.18 97.50 +599863.96 5681394.05 96.25 +599864.09 5681316.90 96.25 +599864.12 5679422.59 98.75 +599864.19 5677036.08 101.25 +599864.32 5676793.04 101.25 +599864.44 5676965.40 100.00 +599864.47 5681299.71 96.25 +599864.81 5678968.08 97.50 +599864.82 5681121.28 97.50 +599864.82 5681286.24 97.50 +599864.90 5676982.89 101.25 +599864.98 5681324.85 97.50 +599865.17 5681226.18 97.50 +599865.49 5679896.89 97.50 +599865.51 5681410.42 97.50 +599865.54 5681148.52 97.50 +599865.72 5681481.20 97.50 +599865.84 5687341.78 95.00 +599866.59 5678392.13 98.75 +599866.96 5681138.90 97.50 +599867.10 5678121.95 98.75 +599867.31 5680393.31 97.50 +599867.33 5678297.17 98.75 +599867.41 5681129.21 97.50 +599867.47 5678195.58 98.75 +599867.51 5681503.86 97.50 +599867.67 5676937.78 100.00 +599867.94 5676506.48 101.25 +599868.04 5676867.26 101.25 +599868.10 5681046.93 97.50 +599868.32 5677459.82 98.75 +599868.39 5677502.59 98.75 +599868.47 5679887.56 97.50 +599868.49 5679673.94 97.50 +599868.50 5681239.34 97.50 +599868.74 5681277.10 97.50 +599868.86 5677044.90 101.25 +599869.02 5679930.00 97.50 +599869.38 5676974.05 100.00 +599869.40 5678505.41 97.50 +599869.48 5677229.93 100.00 +599869.63 5687422.91 95.00 +599870.04 5676991.45 101.25 +599870.33 5681309.81 96.25 +599870.84 5681018.41 97.50 +599870.92 5677787.18 98.75 +599870.99 5681386.95 96.25 +599871.44 5678130.92 98.75 +599871.45 5679878.23 97.50 +599871.98 5681219.10 97.50 +599872.00 5681402.86 97.50 +599872.07 5680319.46 97.50 +599872.14 5679171.07 98.75 +599872.26 5681318.07 97.50 +599872.74 5681268.00 97.50 +599872.80 5679417.69 98.75 +599872.84 5677000.95 101.25 +599872.89 5678573.05 97.50 +599872.93 5681300.93 96.25 +599872.98 5680385.44 97.50 +599873.05 5678583.00 97.50 +599873.06 5676797.81 101.25 +599873.18 5678563.12 97.50 +599873.37 5678187.75 98.75 +599873.45 5677053.76 101.25 +599873.51 5681475.64 97.50 +599873.78 5676929.89 100.00 +599874.09 5681496.96 97.50 +599874.32 5678513.89 97.50 +599874.42 5679868.91 97.50 +599874.53 5678553.26 97.50 +599874.61 5678969.68 97.50 +599874.69 5676499.11 101.25 +599874.77 5687346.05 95.00 +599875.16 5677466.93 98.75 +599875.21 5676982.16 100.00 +599875.22 5678140.13 98.75 +599875.47 5678543.36 97.50 +599875.50 5677010.55 101.25 +599875.70 5678592.58 97.50 +599875.81 5676860.96 101.25 +599875.87 5678533.42 97.50 +599876.10 5678523.47 97.50 +599876.11 5681233.23 97.50 +599876.27 5681223.09 97.20 +599876.38 5681010.22 97.50 +599876.53 5678392.71 98.75 +599876.88 5678294.24 98.75 +599876.95 5678178.48 98.75 +599877.05 5681042.55 97.50 +599877.20 5679669.13 97.50 +599877.20 5677498.39 98.75 +599877.40 5679859.58 97.50 +599877.53 5680376.71 97.50 +599877.56 5679179.44 98.75 +599877.60 5679926.83 97.50 +599878.01 5681259.84 97.50 +599878.01 5681379.84 96.25 +599878.03 5676920.99 100.00 +599878.39 5677020.09 101.25 +599878.50 5681395.29 97.50 +599878.63 5681211.88 97.50 +599878.88 5677062.10 101.25 +599878.89 5678149.38 98.75 +599878.97 5687426.34 95.00 +599879.12 5677227.28 100.00 +599879.12 5681310.87 97.50 +599879.40 5678168.82 98.75 +599879.96 5681489.41 97.50 +599880.00 5677029.94 101.25 +599880.25 5676990.71 100.00 +599880.37 5678601.19 97.50 +599880.47 5676911.33 100.00 +599880.51 5677784.38 98.75 +599880.57 5679850.32 97.50 +599880.78 5681001.30 97.50 +599880.79 5676901.34 100.00 +599880.92 5678159.14 98.75 +599881.44 5676491.73 101.25 +599881.46 5680317.37 97.50 +599881.48 5679412.79 98.75 +599881.56 5681471.18 97.50 +599881.75 5680367.80 97.50 +599881.76 5676891.42 100.00 +599881.82 5677474.22 98.75 +599882.16 5676801.96 101.25 +599882.84 5681226.08 97.50 +599882.92 5679187.84 98.75 +599883.12 5680524.52 97.50 +599883.12 5680534.29 97.50 +599883.26 5678974.00 97.50 +599883.46 5676881.58 100.00 +599883.59 5676854.69 101.25 +599883.63 5681302.05 97.50 +599883.76 5679841.06 97.50 +599883.94 5676999.99 100.00 +599884.17 5687349.42 95.00 +599884.29 5679919.99 97.50 +599884.39 5680358.47 97.50 +599884.41 5677491.81 98.75 +599884.43 5677038.69 101.25 +599884.54 5681372.28 96.25 +599884.60 5681387.40 97.50 +599884.63 5681204.11 97.50 +599884.68 5676942.62 98.75 +599884.85 5677070.10 101.25 +599884.88 5680543.84 97.50 +599885.22 5680515.13 97.50 +599885.35 5676952.57 98.75 +599885.81 5681253.70 97.50 +599885.96 5681481.96 97.50 +599885.99 5681038.15 97.50 +599886.03 5678609.36 97.50 +599886.04 5680168.80 96.25 +599886.08 5679664.65 97.50 +599886.21 5677482.51 98.75 +599886.40 5678394.19 98.75 +599886.43 5678291.30 98.75 +599886.58 5681563.50 97.50 +599886.65 5680993.25 97.50 +599886.88 5679831.78 97.50 +599886.89 5680349.04 97.50 +599887.25 5680553.32 97.50 +599887.63 5677009.27 100.00 +599887.70 5681292.99 97.50 +599887.71 5676962.28 98.75 +599887.92 5676484.12 101.25 +599888.13 5679196.33 98.75 +599888.45 5681553.74 97.50 +599888.46 5681218.02 97.50 +599888.57 5680177.16 96.25 +599888.79 5677047.60 101.25 +599888.80 5676933.83 98.75 +599888.88 5687427.51 95.00 +599888.88 5677225.22 100.00 +599888.96 5677019.15 100.00 +599889.03 5679911.42 97.50 +599889.32 5680506.34 97.50 +599889.58 5680321.93 97.50 +599889.78 5681474.43 97.50 +599889.88 5677002.51 100.00 +599889.91 5679822.47 97.50 +599890.06 5676971.99 98.75 +599890.11 5677781.59 98.75 +599890.16 5677029.05 100.00 +599890.22 5681543.96 97.50 +599890.23 5680562.54 97.50 +599890.37 5680339.83 97.50 +599890.50 5681196.23 97.50 +599890.54 5681283.46 97.50 +599890.61 5681379.44 97.50 +599890.67 5676847.79 101.25 +599890.82 5678618.02 97.50 +599890.88 5679409.74 98.75 +599891.05 5681364.70 96.25 +599891.19 5680160.31 96.25 +599891.20 5676993.78 100.00 +599891.20 5678979.98 97.50 +599891.42 5676805.73 101.25 +599891.56 5676881.55 100.00 +599891.83 5687355.79 95.00 +599892.10 5677497.14 100.00 +599892.20 5677011.31 100.00 +599892.23 5677056.97 101.25 +599892.78 5678647.32 97.50 +599892.84 5680985.46 97.50 +599892.95 5679813.16 97.50 +599893.02 5681534.55 97.50 +599893.04 5679204.99 98.75 +599893.23 5677074.79 101.25 +599893.36 5678627.64 97.50 +599893.41 5680330.46 97.50 +599893.43 5681273.95 97.50 +599893.46 5676981.34 98.75 +599893.65 5679902.79 97.50 +599893.77 5681031.95 97.50 +599893.83 5678637.43 97.50 +599894.07 5681209.96 97.50 +599894.17 5678657.16 97.50 +599894.19 5677038.19 100.00 +599894.30 5676476.43 101.25 +599894.39 5681248.67 97.50 +599894.98 5680498.39 97.50 +599895.21 5677019.91 100.00 +599895.23 5679660.84 97.50 +599895.32 5680570.87 97.50 +599895.57 5677066.23 101.25 +599895.73 5681187.96 97.50 +599895.92 5677488.40 100.00 +599895.98 5678288.37 98.75 +599896.02 5676839.34 101.25 +599896.27 5678395.67 98.75 +599896.37 5678666.76 97.50 +599896.40 5680151.86 96.25 +599896.47 5676997.88 100.00 +599896.69 5681371.54 97.50 +599896.70 5676937.34 98.75 +599897.03 5679214.12 98.75 +599897.49 5679804.51 97.50 +599897.55 5681357.12 96.25 +599897.64 5676990.41 98.75 +599897.69 5680176.27 96.25 +599897.76 5681525.82 97.50 +599897.95 5681265.50 97.50 +599898.06 5677012.13 100.50 +599898.14 5676812.50 101.25 +599898.23 5679894.14 97.50 +599898.24 5677047.32 100.00 +599898.57 5687363.12 95.00 +599898.58 5676886.25 100.00 +599898.58 5681201.28 97.50 +599898.68 5687426.75 95.00 +599898.72 5677223.50 100.00 +599899.12 5677028.11 100.00 +599899.44 5676896.20 100.00 +599899.48 5677778.20 98.75 +599899.75 5677479.65 100.00 +599899.80 5680978.48 97.50 +599900.19 5681179.21 97.50 +599900.26 5681024.39 97.50 +599900.26 5677006.11 100.00 +599900.31 5676906.16 100.00 +599900.52 5680579.14 97.50 +599900.57 5676946.54 98.75 +599900.65 5680490.43 97.50 +599900.66 5679407.87 98.75 +599900.77 5676468.98 101.25 +599901.03 5679223.25 98.75 +599901.16 5676830.77 101.25 +599901.23 5678675.45 97.50 +599901.38 5676916.09 100.00 +599901.54 5677498.53 100.00 +599901.66 5680143.45 96.25 +599902.28 5679795.97 97.50 +599902.28 5676999.23 98.75 +599902.29 5677056.46 100.00 +599902.42 5681014.76 97.50 +599902.47 5676926.02 100.00 +599902.48 5681192.27 97.50 +599902.93 5677014.81 100.00 +599903.05 5676821.08 101.25 +599903.20 5681517.65 97.50 +599903.21 5681363.99 97.50 +599903.57 5677470.91 100.00 +599903.61 5679885.95 97.50 +599903.78 5676935.92 100.00 +599903.96 5681246.37 97.50 +599903.98 5680168.83 96.25 +599904.09 5681349.57 96.25 +599904.29 5687371.10 95.00 +599904.37 5681005.00 97.50 +599904.77 5679658.02 97.50 +599904.82 5687381.08 95.00 +599904.93 5676955.53 98.75 +599905.17 5677023.63 100.00 +599905.30 5677032.46 100.00 +599905.45 5679232.17 98.75 +599905.47 5687419.54 95.00 +599905.53 5678285.44 98.75 +599905.59 5687391.04 95.00 +599905.78 5681183.02 97.50 +599905.82 5680587.35 97.50 +599905.85 5681259.46 97.50 +599906.10 5678397.36 98.75 +599906.22 5681174.11 97.50 +599906.35 5680482.50 97.50 +599906.78 5680995.34 97.50 +599907.35 5677065.04 100.00 +599907.37 5687400.84 95.00 +599907.38 5676944.56 100.00 +599907.40 5677462.16 100.00 +599907.42 5680135.37 96.25 +599907.51 5679787.72 97.50 +599907.62 5677007.68 98.75 +599908.20 5678682.28 97.50 +599908.24 5680973.19 97.50 +599908.55 5677774.02 98.75 +599908.63 5677223.01 100.00 +599908.74 5676964.75 98.75 +599908.99 5679877.77 97.50 +599909.46 5680160.58 96.25 +599909.74 5687410.50 95.00 +599909.98 5676465.15 101.25 +599910.35 5681357.06 97.50 +599910.39 5679240.82 98.75 +599910.42 5681251.70 97.50 +599910.52 5679406.43 98.75 +599910.68 5681511.10 97.50 +599910.74 5680146.20 96.00 +599910.76 5681342.14 96.25 +599910.97 5677498.97 100.00 +599911.28 5677453.44 100.00 +599911.51 5680986.82 97.50 +599911.82 5676974.25 98.75 +599912.08 5680474.59 97.50 +599912.83 5676938.70 100.00 +599912.85 5677073.38 100.00 +599913.07 5677016.05 98.75 +599913.31 5676918.75 100.00 +599913.38 5680127.43 96.25 +599913.50 5679779.98 97.50 +599913.52 5676928.73 100.00 +599913.56 5679653.63 97.50 +599913.58 5679824.35 97.75 +599914.36 5679869.59 97.50 +599914.46 5676909.10 100.00 +599915.12 5678282.63 98.75 +599915.34 5677444.80 100.00 +599915.67 5679249.27 98.75 +599915.84 5676983.28 98.75 +599915.85 5678399.50 98.75 +599916.26 5680153.34 96.25 +599916.57 5680967.73 97.50 +599916.60 5678687.56 97.50 +599916.75 5680534.98 98.75 +599916.92 5680525.43 98.75 +599917.62 5677769.83 98.75 +599917.66 5681350.31 97.50 +599917.88 5680544.58 98.75 +599917.97 5681335.23 96.25 +599918.30 5680467.11 97.50 +599918.46 5677224.32 100.00 +599918.49 5681504.98 97.50 +599918.49 5677081.61 100.00 +599918.59 5680119.00 96.25 +599918.59 5677024.35 98.75 +599918.75 5680980.04 97.50 +599919.22 5679402.37 98.75 +599919.48 5680842.88 97.50 +599919.49 5679772.23 97.50 +599919.68 5676463.08 101.25 +599919.74 5679861.41 97.50 +599920.06 5680516.25 98.75 +599920.39 5677497.42 100.00 +599920.55 5680553.90 98.75 +599921.57 5676907.70 100.00 +599921.68 5676991.39 98.75 +599921.75 5679647.99 97.50 +599921.79 5679257.09 98.75 +599921.98 5680145.47 96.25 +599922.34 5677033.62 98.75 +599922.66 5677446.85 100.00 +599922.94 5680834.51 97.50 +599923.11 5681420.33 97.50 +599923.29 5676917.38 100.00 +599923.44 5681429.41 97.50 +599923.48 5680110.36 96.25 +599923.96 5676927.35 100.00 +599923.98 5681342.59 97.50 +599924.53 5676937.32 100.00 +599924.65 5680507.82 98.75 +599924.72 5678279.86 98.75 +599924.74 5677089.41 100.00 +599924.91 5679764.09 97.50 +599924.97 5681328.14 96.25 +599925.03 5680136.03 96.25 +599925.06 5676947.30 100.00 +599925.12 5679853.22 97.50 +599925.43 5680460.43 97.50 +599925.52 5680972.94 97.50 +599925.60 5678401.63 98.75 +599925.65 5680964.52 97.50 +599925.74 5676957.24 100.00 +599925.87 5677042.96 98.75 +599926.31 5679395.46 98.75 +599926.53 5678688.14 97.50 +599926.57 5681499.21 97.50 +599926.98 5677766.41 98.75 +599927.15 5676999.74 98.75 +599927.56 5680844.94 97.50 +599927.60 5681411.59 97.50 +599927.64 5677228.04 100.00 +599927.91 5681213.92 96.25 +599928.36 5680126.67 96.25 +599928.53 5679264.43 98.75 +599928.65 5681204.14 96.25 +599928.66 5681223.88 96.25 +599928.87 5676966.73 100.00 +599929.55 5677052.24 98.75 +599929.61 5679641.93 97.50 +599929.65 5676462.80 101.25 +599929.72 5677495.44 100.00 +599929.80 5680102.70 96.25 +599930.17 5679755.82 97.50 +599930.25 5680499.90 98.75 +599930.30 5681334.87 97.50 +599930.34 5681233.71 96.25 +599930.51 5681319.83 96.25 +599930.55 5679845.08 97.50 +599930.80 5680828.63 97.50 +599930.86 5677451.74 100.00 +599930.98 5677097.21 100.00 +599930.99 5681435.19 97.50 +599931.22 5677479.26 100.25 +599931.53 5680452.89 97.50 +599931.71 5681426.12 96.25 +599931.81 5681194.66 96.25 +599931.99 5676976.22 100.00 +599932.25 5679387.46 98.75 +599932.26 5680117.58 96.25 +599932.34 5681243.50 96.25 +599932.50 5677008.18 98.75 +599932.90 5681416.79 96.25 +599933.39 5681210.83 97.50 +599933.70 5681403.85 97.50 +599934.20 5681200.99 97.50 +599934.30 5681220.76 97.50 +599934.30 5677061.03 98.75 +599934.32 5678277.08 98.75 +599934.39 5681253.27 96.25 +599934.50 5681185.05 96.25 +599934.56 5676985.88 100.00 +599934.70 5677235.10 100.00 +599935.02 5681494.02 97.50 +599935.23 5681230.69 97.50 +599935.34 5681311.16 96.25 +599935.46 5679271.59 98.75 +599935.46 5678402.93 98.75 +599935.47 5681326.47 97.50 +599935.79 5681240.65 97.50 +599936.11 5680095.05 96.25 +599936.26 5679837.12 97.50 +599936.42 5677017.36 98.75 +599936.44 5681191.27 97.50 +599936.47 5678688.70 97.50 +599936.59 5677763.70 98.75 +599936.78 5680842.09 97.50 +599936.79 5681262.97 96.25 +599936.84 5680444.69 97.50 +599936.84 5681407.95 96.25 +599936.90 5679635.17 97.50 +599936.96 5680493.05 98.75 +599937.08 5676995.54 100.00 +599937.14 5681175.42 96.25 +599937.23 5677105.01 100.00 +599937.28 5680109.02 96.25 +599937.73 5681250.31 97.50 +599937.73 5679749.75 97.50 +599937.86 5679379.22 98.75 +599938.73 5681301.76 96.25 +599938.86 5677456.95 100.00 +599938.88 5677492.82 100.00 +599939.05 5677069.82 98.75 +599939.08 5677005.33 100.00 +599939.30 5681317.26 97.50 +599939.40 5681272.61 96.25 +599939.58 5681395.94 97.50 +599939.63 5676463.45 101.25 +599939.70 5680824.27 97.50 +599939.75 5681181.91 97.50 +599939.95 5681428.56 96.25 +599940.18 5677026.62 98.75 +599940.29 5681436.86 97.50 +599940.37 5677243.19 100.00 +599941.14 5681259.68 97.50 +599941.25 5681282.38 96.25 +599941.58 5681166.47 96.25 +599941.95 5681292.34 96.25 +599941.97 5679829.17 97.50 +599942.15 5680436.49 97.50 +599942.43 5679278.70 98.75 +599942.45 5681399.91 96.25 +599942.47 5680087.43 96.25 +599943.06 5681308.02 97.50 +599943.41 5679370.94 98.75 +599943.72 5681172.76 97.50 +599943.77 5677078.63 98.75 +599943.86 5681489.49 97.50 +599943.87 5677252.45 100.00 +599943.88 5677112.45 100.00 +599943.92 5678274.31 98.75 +599943.99 5677035.85 98.75 +599944.20 5679628.41 97.50 +599944.21 5681269.17 97.50 +599944.54 5680835.94 97.50 +599944.66 5680487.15 98.75 +599944.82 5679096.69 97.25 +599944.84 5680102.62 96.25 +599945.18 5677010.83 100.00 +599945.22 5681387.86 97.50 +599945.42 5678403.49 98.75 +599945.70 5679744.05 97.50 +599945.76 5680827.29 97.25 +599945.90 5677262.23 100.00 +599946.02 5681157.52 96.25 +599946.26 5681298.64 97.50 +599946.27 5677761.21 98.75 +599946.32 5678687.32 97.50 +599946.40 5681278.90 97.50 +599946.49 5679820.53 97.50 +599946.50 5677462.65 100.00 +599947.20 5677488.32 100.00 +599947.26 5681288.72 97.50 +599947.66 5677272.06 100.00 +599947.79 5680428.52 97.50 +599947.85 5679287.07 98.75 +599947.98 5681391.81 96.25 +599948.02 5677044.99 98.75 +599948.10 5681423.37 96.25 +599948.16 5679105.84 97.25 +599948.44 5680819.63 97.50 +599948.92 5681164.25 97.50 +599948.97 5677281.96 100.00 +599949.05 5679362.73 98.75 +599949.17 5677086.94 98.75 +599949.24 5681434.34 97.50 +599949.27 5676465.85 101.25 +599949.29 5680478.65 98.75 +599949.70 5679089.57 97.25 +599949.97 5680080.93 96.25 +599950.47 5679811.59 97.50 +599950.50 5677291.84 100.00 +599950.71 5677119.74 100.00 +599950.79 5677471.01 100.00 +599950.80 5681148.77 96.25 +599950.88 5681379.79 97.50 +599951.20 5678889.93 97.50 +599951.43 5679621.58 97.50 +599951.72 5677480.35 100.00 +599951.86 5678899.86 97.50 +599952.05 5677054.14 98.75 +599952.06 5677301.70 100.00 +599952.12 5678880.06 97.50 +599952.33 5679295.88 98.75 +599952.37 5680096.17 96.25 +599952.53 5680830.07 97.50 +599952.54 5681484.65 97.50 +599953.18 5678909.68 97.50 +599953.23 5679737.82 97.50 +599953.23 5679353.81 98.75 +599953.32 5681383.58 96.25 +599953.45 5680420.56 97.50 +599953.52 5678271.54 98.75 +599953.53 5677006.12 100.00 +599953.58 5678870.22 97.50 +599953.71 5681155.51 97.50 +599953.74 5679114.03 97.25 +599954.46 5679802.64 97.50 +599954.93 5680470.84 98.75 +599955.07 5678860.38 97.50 +599955.26 5681416.85 96.25 +599955.29 5677311.08 100.00 +599955.39 5678404.05 98.75 +599955.57 5679305.31 98.75 +599955.57 5681371.19 97.50 +599955.68 5678919.32 97.50 +599955.96 5681427.13 97.50 +599956.02 5677759.04 98.75 +599956.07 5679344.26 98.75 +599956.09 5677094.15 98.75 +599956.17 5678685.88 97.50 +599956.41 5681140.51 96.25 +599956.62 5680814.06 97.50 +599957.45 5677127.11 100.00 +599957.48 5680074.43 96.25 +599957.57 5679083.55 97.25 +599957.81 5678850.81 97.50 +599957.91 5679315.00 98.75 +599958.10 5677062.01 98.75 +599958.29 5678928.92 97.50 +599958.35 5681329.11 97.50 +599958.45 5679793.70 97.50 +599958.47 5681146.75 97.50 +599958.55 5679614.64 97.50 +599958.66 5681375.36 96.25 +599958.87 5676466.99 101.25 +599958.90 5679334.70 98.75 +599959.17 5676997.87 100.00 +599959.25 5680089.01 96.25 +599959.32 5679122.22 97.25 +599959.32 5679324.80 98.75 +599959.38 5677320.19 100.00 +599959.53 5681362.16 97.50 +599959.95 5680529.16 100.00 +599960.02 5680520.42 100.00 +599960.56 5678841.25 97.50 +599960.71 5680414.20 97.50 +599961.02 5681408.90 96.25 +599961.06 5681479.58 97.50 +599961.22 5678938.43 97.50 +599961.35 5680463.57 98.75 +599961.41 5680825.69 97.50 +599961.63 5679739.81 97.50 +599962.13 5681189.17 97.50 +599962.37 5681419.64 97.50 +599962.41 5681132.55 96.25 +599962.43 5679784.76 97.50 +599962.69 5677101.64 98.75 +599962.93 5681179.42 97.50 +599963.03 5680511.61 100.00 +599963.12 5678268.76 98.75 +599963.27 5681333.78 97.50 +599963.40 5680537.80 100.00 +599963.71 5677134.90 100.00 +599963.72 5677329.18 100.00 +599963.86 5681367.04 96.25 +599964.03 5681138.48 97.50 +599964.04 5681353.40 97.50 +599964.15 5678947.94 97.50 +599964.53 5677069.66 98.75 +599964.72 5681322.38 97.50 +599964.90 5679130.41 97.25 +599965.05 5681169.90 97.50 +599965.36 5678404.22 98.75 +599965.38 5679607.47 97.50 +599965.39 5681198.42 97.50 +599965.60 5680068.78 96.25 +599965.61 5680810.28 97.50 +599965.68 5678832.76 97.50 +599965.78 5679078.00 97.25 +599965.82 5677757.17 98.75 +599966.07 5678684.91 97.50 +599966.16 5681400.55 96.25 +599966.42 5679775.81 97.50 +599966.90 5680082.73 96.25 +599967.11 5678957.44 97.50 +599967.86 5679747.04 97.50 +599967.89 5679766.25 97.50 +599967.91 5681231.27 97.50 +599967.97 5681411.65 97.50 +599968.00 5681160.56 97.50 +599968.19 5681344.46 97.50 +599968.25 5676994.76 100.00 +599968.34 5676463.99 101.25 +599968.43 5680504.25 100.00 +599968.51 5679756.48 97.50 +599968.67 5681473.19 97.50 +599968.68 5677337.84 100.00 +599968.88 5680408.97 97.50 +599968.93 5681358.65 96.25 +599969.04 5677109.35 98.75 +599969.14 5681125.16 96.25 +599969.73 5680820.48 97.50 +599969.92 5680459.83 98.75 +599969.96 5677142.69 100.00 +599970.01 5681391.60 96.25 +599970.10 5678966.93 97.50 +599970.26 5679598.80 97.50 +599970.29 5680543.78 100.00 +599970.88 5678824.29 97.50 +599970.90 5677077.36 98.75 +599971.16 5681222.72 97.50 +599971.34 5681131.86 97.50 +599971.43 5681205.44 97.50 +599971.76 5679123.31 97.25 +599971.78 5681402.56 97.50 +599972.25 5681335.48 97.50 +599972.31 5678976.63 97.50 +599972.31 5680532.80 100.25 +599972.72 5678265.99 98.75 +599972.97 5681152.12 97.50 +599972.99 5681382.26 96.25 +599973.58 5681318.23 97.50 +599973.99 5680812.31 97.50 +599974.00 5679072.47 97.25 +599974.01 5681350.25 96.25 +599974.04 5681235.04 97.50 +599974.06 5680063.58 96.25 +599974.24 5681465.07 97.50 +599974.30 5677346.10 100.00 +599974.34 5678986.38 97.50 +599974.78 5681393.18 97.50 +599974.98 5678815.22 97.50 +599975.08 5680077.14 96.25 +599975.13 5679590.13 97.50 +599975.27 5680498.19 100.00 +599975.33 5678404.00 98.75 +599975.39 5677117.07 98.75 +599975.60 5677150.92 100.00 +599975.68 5678686.16 97.50 +599975.76 5677756.11 98.75 +599975.86 5681117.78 96.25 +599976.33 5681455.51 97.50 +599976.56 5681373.14 96.25 +599977.33 5676459.63 101.25 +599977.38 5681215.79 97.50 +599977.57 5676998.37 100.00 +599977.60 5678995.65 97.50 +599977.72 5681445.67 97.50 +599977.82 5679115.50 97.25 +599977.98 5680548.88 100.00 +599977.99 5681143.70 97.50 +599977.99 5677084.37 98.75 +599978.19 5681383.95 97.50 +599978.22 5680407.02 97.50 +599978.67 5681125.18 97.50 +599979.08 5678806.15 97.50 +599979.27 5681435.86 97.50 +599979.43 5680458.34 98.75 +599979.97 5679581.44 97.50 +599980.21 5681364.04 96.25 +599980.28 5681311.22 97.50 +599980.35 5681203.72 97.50 +599980.47 5677125.66 98.75 +599980.59 5677353.85 100.00 +599980.90 5681350.23 96.00 +599980.99 5677159.34 100.00 +599981.06 5681343.97 96.00 +599981.06 5681343.97 96.25 +599981.56 5681229.96 97.50 +599982.27 5678263.06 98.75 +599982.42 5681375.04 97.50 +599982.52 5679004.30 97.50 +599982.94 5681110.74 96.25 +599982.94 5678796.99 97.50 +599983.00 5680071.47 96.25 +599983.05 5679068.78 97.25 +599983.13 5680063.00 96.25 +599983.29 5681217.22 97.20 +599983.31 5681354.74 96.00 +599983.31 5681354.74 96.25 +599983.38 5681426.84 97.50 +599984.16 5681334.99 96.00 +599984.21 5678691.08 97.50 +599984.23 5681136.14 97.50 +599984.26 5680495.77 100.00 +599984.57 5681209.70 97.50 +599984.62 5679572.65 97.50 +599984.82 5679108.49 97.25 +599985.11 5681117.57 97.50 +599985.31 5678403.77 98.75 +599985.37 5677091.11 98.75 +599985.40 5677134.35 98.75 +599985.46 5676454.02 101.25 +599985.52 5681302.87 97.50 +599985.69 5677755.05 98.75 +599985.86 5681365.84 97.50 +599986.00 5678787.52 97.50 +599986.38 5677167.75 100.00 +599986.39 5677003.01 100.00 +599987.12 5680550.69 100.00 +599987.15 5679013.10 97.50 +599987.16 5681196.78 97.50 +599987.26 5681326.00 96.00 +599987.29 5680410.65 97.50 +599987.67 5681222.79 97.50 +599987.93 5677360.31 100.00 +599988.55 5681418.35 97.50 +599988.66 5681356.39 96.00 +599988.66 5681356.39 97.50 +599988.73 5680459.27 98.75 +599989.07 5678778.05 97.50 +599989.48 5679563.97 97.50 +599990.04 5678699.01 97.50 +599990.07 5679100.12 97.25 +599990.23 5681103.91 96.25 +599990.33 5677143.04 98.75 +599990.36 5681150.82 96.25 +599990.41 5678768.22 97.50 +599990.59 5681317.11 96.00 +599990.75 5677099.36 98.75 +599990.86 5681128.94 97.50 +599991.23 5681294.84 97.50 +599991.32 5681203.18 97.50 +599991.43 5679022.09 97.50 +599991.51 5678758.33 97.50 +599991.69 5678748.38 97.50 +599991.77 5677176.16 100.00 +599991.82 5678738.43 97.50 +599991.82 5678260.12 98.75 +599991.89 5681110.26 97.50 +599991.94 5678728.47 97.50 +599992.22 5678708.62 97.50 +599992.28 5678718.53 97.50 +599992.60 5679068.15 97.25 +599992.76 5676447.20 101.25 +599993.53 5681141.90 96.25 +599993.58 5681189.38 97.50 +599993.70 5681349.12 96.00 +599993.89 5681215.72 97.50 +599994.17 5681308.31 96.00 +599994.46 5679555.36 97.50 +599995.01 5677008.05 100.00 +599995.17 5678402.32 98.75 +599995.19 5677108.30 98.75 +599995.29 5679091.70 97.25 +599995.41 5680466.30 98.75 +599995.45 5681411.23 97.50 +599995.59 5677151.53 98.75 +599995.60 5680415.72 97.50 +599995.63 5677753.99 98.75 +599995.91 5681156.04 96.25 +599995.96 5680549.48 100.00 +599996.03 5681340.46 96.00 +599996.05 5679030.90 97.50 +599996.65 5681096.27 96.25 +599996.89 5681286.80 97.50 +599997.03 5677364.44 100.00 +599997.09 5677184.61 100.00 +599997.41 5681195.99 97.50 +599997.44 5678034.09 97.50 +599997.82 5681299.54 96.00 +599997.85 5678024.37 97.50 +599997.92 5681122.15 97.50 +599998.84 5678043.71 97.50 +599998.94 5681134.09 96.25 +599998.94 5681103.21 97.50 +599999.25 5679075.22 97.25 +599999.30 5681332.03 96.00 +599999.43 5679546.74 97.50 +599999.43 5681181.52 97.50 +599999.64 5677117.25 98.75 +600000.12 5681208.66 97.50 +600000.28 5678053.34 97.50 +600000.35 5681277.57 97.50 +600000.83 5676441.29 101.25 +600000.87 5679039.61 97.50 +600000.93 5677159.97 98.75 +600000.95 5679083.58 97.25 +600001.37 5678257.18 98.75 +600001.51 5681138.48 96.00 +600001.91 5681149.04 96.25 +600002.18 5678062.88 97.50 +600002.42 5677193.07 100.00 +600002.49 5681323.58 96.00 +600002.96 5681291.55 96.00 +600002.96 5681088.52 96.25 +600002.99 5680422.00 97.50 +600003.75 5679537.83 97.50 +600003.79 5681405.99 97.50 +600003.86 5677012.64 100.00 +600004.09 5677126.19 98.75 +600004.17 5678072.40 97.50 +600004.17 5681268.49 97.50 +600004.57 5680545.94 100.00 +600004.69 5681115.06 97.50 +600004.80 5681126.62 96.25 +600004.93 5681190.69 97.50 +600004.96 5678400.40 98.75 +600005.07 5679048.62 97.50 +600005.26 5677168.86 98.75 +600005.29 5681173.66 97.50 +600005.32 5678020.79 97.50 +600005.44 5677754.30 98.75 +600005.79 5681315.16 96.00 +600005.84 5681096.00 97.50 +600006.11 5677368.59 100.00 +600006.48 5681201.70 97.50 +600006.57 5681140.76 96.25 +600006.84 5678081.76 97.50 +600006.95 5679528.42 97.50 +600007.18 5677201.80 100.00 +600007.86 5677178.51 98.75 +600008.09 5681283.56 96.00 +600008.54 5677135.14 98.75 +600008.57 5681259.72 97.50 +600008.78 5679057.80 97.50 +600008.88 5681080.48 96.25 +600009.18 5679067.74 97.50 +600009.22 5681306.80 96.00 +600009.47 5676436.31 101.25 +600009.51 5678091.12 97.50 +600009.60 5680429.19 97.50 +600010.14 5679519.00 97.50 +600010.18 5681165.19 97.50 +600010.46 5677188.16 98.75 +600010.79 5677211.12 100.00 +600010.94 5678254.32 98.75 +600011.26 5681132.51 96.25 +600011.33 5677198.11 98.75 +600011.46 5681107.98 97.50 +600011.78 5681120.31 96.25 +600012.16 5677208.06 98.75 +600012.59 5681401.39 97.50 +600012.67 5681088.74 97.50 +600012.83 5681194.74 97.50 +600013.01 5680050.62 96.25 +600013.05 5677016.58 100.00 +600013.08 5677144.04 98.75 +600013.28 5678025.07 97.50 +600013.36 5681187.28 97.50 +600013.38 5681275.67 96.00 +600013.77 5681299.08 96.00 +600014.32 5677220.46 100.00 +600014.66 5678398.05 98.75 +600014.69 5681252.00 97.50 +600014.72 5680043.83 96.25 +600014.87 5681156.58 97.50 +600014.91 5677757.44 98.75 +600014.92 5681072.54 96.25 +600015.07 5677217.56 98.75 +600015.28 5680329.55 97.50 +600015.75 5680436.76 97.50 +600015.76 5679274.27 97.25 +600015.99 5677370.10 100.00 +600016.07 5681124.32 96.25 +600016.08 5678072.66 97.25 +600016.61 5679264.62 97.25 +600017.39 5678033.75 97.50 +600017.73 5676430.71 101.25 +600017.74 5677229.85 100.00 +600017.75 5679254.95 97.25 +600017.75 5677152.87 98.75 +600017.97 5679283.76 97.25 +600018.00 5678093.78 97.50 +600018.17 5681100.83 97.50 +600018.53 5677226.94 98.75 +600018.55 5681147.52 97.50 +600018.74 5680320.47 97.50 +600019.11 5681268.09 96.00 +600019.24 5681291.89 96.00 +600019.81 5680336.93 97.50 +600019.89 5681081.86 97.50 +600019.98 5678043.12 97.50 +600020.14 5680056.86 96.25 +600020.29 5679245.57 97.25 +600020.55 5678251.57 98.75 +600020.96 5677239.31 100.00 +600021.29 5680444.80 97.50 +600021.43 5681396.85 97.50 +600021.57 5681065.08 96.25 +600021.92 5678052.65 97.50 +600021.97 5681138.33 97.50 +600022.03 5681245.51 97.50 +600022.06 5677236.28 98.75 +600022.41 5677161.71 98.75 +600022.49 5677019.83 100.00 +600023.15 5679236.26 97.25 +600023.20 5679291.74 97.25 +600024.12 5677761.32 98.75 +600024.18 5677248.77 100.00 +600024.26 5680041.12 96.25 +600024.30 5678395.49 98.75 +600024.45 5680312.56 97.50 +600024.71 5681284.69 96.00 +600024.71 5681284.69 97.50 +600024.71 5681128.92 97.50 +600024.96 5679770.82 97.50 +600024.99 5681093.85 97.50 +600025.28 5681260.92 96.00 +600025.32 5680846.81 97.50 +600025.33 5679780.71 97.50 +600025.47 5678061.63 97.50 +600025.74 5677245.57 98.75 +600025.75 5679790.59 97.50 +600025.80 5676424.80 101.25 +600025.88 5677371.45 100.00 +600026.12 5678089.46 97.50 +600026.34 5679800.47 97.50 +600026.39 5681074.35 97.50 +600026.78 5679761.29 97.50 +600026.90 5681056.79 96.25 +600027.03 5681119.41 97.50 +600027.08 5677170.55 98.75 +600027.19 5679227.47 97.25 +600027.42 5677258.21 100.00 +600027.84 5680853.83 97.50 +600028.69 5678070.71 97.50 +600028.71 5678080.28 97.50 +600029.18 5679284.63 97.25 +600029.22 5680059.86 96.25 +600029.29 5679809.64 97.50 +600029.34 5677254.89 98.75 +600029.35 5680338.96 97.50 +600029.71 5681276.94 96.00 +600029.78 5681239.43 97.50 +600030.15 5678248.83 98.75 +600030.20 5679752.00 97.50 +600030.27 5681392.32 97.50 +600030.63 5681065.58 97.50 +600030.71 5677267.65 100.00 +600030.78 5681110.79 97.50 +600030.84 5681047.60 96.25 +600031.65 5676958.15 100.00 +600031.71 5680305.89 97.50 +600031.74 5677179.38 98.75 +600031.79 5681277.74 97.50 +600032.06 5679219.03 97.25 +600032.13 5677021.65 100.00 +600032.40 5680841.47 97.50 +600032.43 5681254.66 96.00 +600032.44 5679275.49 97.25 +600033.15 5679265.90 97.25 +600033.21 5679256.24 97.25 +600033.30 5681056.03 97.50 +600033.41 5677764.93 98.75 +600033.56 5679742.70 97.50 +600033.57 5676967.91 100.00 +600033.66 5676418.62 101.25 +600033.82 5678392.52 98.75 +600033.95 5681093.01 97.50 +600034.00 5677277.08 100.00 +600034.13 5677263.54 98.75 +600034.22 5680041.49 96.25 +600034.50 5676948.84 100.00 +600034.57 5681101.94 97.50 +600034.79 5681038.43 96.25 +600035.15 5678521.73 97.50 +600035.57 5679246.79 97.25 +600035.80 5677372.64 100.00 +600036.13 5679733.15 97.50 +600036.36 5681270.52 96.00 +600036.41 5677188.22 98.75 +600036.84 5678513.20 97.50 +600037.07 5679210.68 97.25 +600037.20 5681232.94 97.50 +600037.20 5680854.79 97.50 +600037.30 5677286.51 100.00 +600037.36 5676977.02 100.00 +600037.48 5681046.98 97.50 +600037.96 5679811.50 97.50 +600038.69 5679723.60 97.50 +600039.09 5681029.41 96.25 +600039.13 5680339.32 97.50 +600039.16 5680059.18 96.25 +600039.26 5679332.59 97.25 +600039.47 5681248.30 96.00 +600039.57 5681272.01 97.50 +600039.64 5681389.07 97.50 +600039.76 5678246.08 98.75 +600039.78 5680300.22 97.50 +600040.33 5679238.35 97.25 +600040.48 5677271.23 98.75 +600040.54 5681317.73 97.50 +600040.59 5677295.95 100.00 +600040.83 5679328.04 97.25 +600040.88 5677018.12 100.00 +600041.07 5677197.05 98.75 +600041.26 5679714.04 97.50 +600041.56 5681037.88 97.50 +600041.79 5676412.88 101.25 +600041.88 5680839.76 97.50 +600042.10 5681308.28 97.50 +600042.29 5678527.92 97.50 +600042.54 5676944.06 100.00 +600043.00 5681264.09 96.00 +600043.02 5680847.10 97.25 +600043.23 5677766.73 98.75 +600043.35 5678389.55 98.75 +600043.38 5681020.40 96.25 +600043.40 5681225.43 97.50 +600043.41 5676984.97 100.00 +600043.88 5679704.50 97.50 +600043.88 5677305.38 100.00 +600043.94 5679204.11 97.25 +600044.19 5680041.85 96.25 +600044.32 5679340.96 97.25 +600045.24 5678508.35 97.50 +600045.24 5679806.79 97.50 +600045.24 5681240.76 96.00 +600045.43 5679230.06 97.25 +600045.52 5677205.97 98.75 +600045.63 5681028.77 97.50 +600045.77 5677373.15 100.00 +600046.49 5679694.96 97.50 +600046.88 5680854.10 97.50 +600047.17 5677314.81 100.00 +600047.47 5677010.66 100.00 +600047.67 5681320.13 97.50 +600047.70 5681011.39 96.25 +600047.85 5680294.54 97.50 +600047.91 5677277.90 98.75 +600048.17 5677215.61 98.75 +600048.44 5681216.96 97.50 +600048.46 5679685.27 97.50 +600048.53 5679334.07 97.25 +600048.72 5681385.18 97.50 +600048.76 5680060.92 96.25 +600048.85 5680337.61 97.50 +600049.05 5681301.58 97.50 +600049.13 5681269.35 97.50 +600049.37 5678243.33 98.75 +600049.40 5681019.54 97.50 +600049.65 5681257.67 96.00 +600049.65 5681257.67 96.25 +600049.68 5676992.74 100.00 +600049.74 5679349.05 97.25 +600049.82 5679274.70 97.50 +600049.94 5679798.13 97.50 +600050.40 5679675.57 97.50 +600050.46 5677324.24 100.00 +600050.51 5679284.55 97.50 +600050.81 5677225.24 98.75 +600050.86 5676408.71 101.25 +600051.03 5681233.22 96.00 +600051.13 5678532.15 97.50 +600051.38 5679222.42 97.25 +600051.58 5680839.87 97.50 +600051.59 5679264.91 97.50 +600051.93 5677002.28 100.00 +600052.00 5679294.38 97.50 +600052.26 5676945.75 100.00 +600052.34 5679665.87 97.50 +600052.70 5679788.63 97.50 +600052.86 5677286.58 98.75 +600052.88 5678386.58 98.75 +600053.02 5681002.94 96.25 +600053.10 5679205.03 97.25 +600053.10 5677768.07 98.75 +600053.11 5680037.56 96.25 +600053.12 5681010.28 97.50 +600053.35 5679255.12 97.50 +600053.55 5677333.74 100.00 +600053.64 5677234.82 98.75 +600054.08 5679304.04 97.50 +600054.92 5678507.68 97.50 +600054.99 5679656.37 97.50 +600055.12 5679245.33 97.50 +600055.36 5681210.08 97.50 +600055.46 5679779.13 97.50 +600055.48 5679213.59 97.25 +600055.61 5679356.70 97.25 +600055.76 5677373.41 100.00 +600055.99 5680288.95 97.50 +600056.00 5679340.38 97.25 +600056.23 5681294.97 97.50 +600056.27 5681315.72 97.50 +600056.44 5677295.82 98.75 +600056.46 5681250.52 96.00 +600056.56 5680853.47 97.50 +600056.56 5677343.27 100.00 +600056.80 5677244.30 98.75 +600056.87 5681225.72 96.00 +600057.34 5681380.25 97.50 +600057.73 5679769.50 97.50 +600058.01 5680064.64 96.25 +600058.06 5679366.02 97.25 +600058.23 5681001.74 97.50 +600058.35 5680994.49 96.25 +600058.40 5681045.87 97.50 +600058.49 5679647.12 97.50 +600058.57 5680335.95 97.50 +600058.89 5681267.81 97.50 +600058.92 5677305.49 98.75 +600058.96 5679375.75 97.25 +600059.04 5678240.85 98.75 +600059.49 5679312.39 97.50 +600059.57 5677352.80 100.00 +600059.64 5681257.65 96.25 +600059.81 5678536.64 97.50 +600059.96 5677253.78 98.75 +600060.01 5679759.87 97.50 +600060.06 5679385.47 97.25 +600060.37 5681036.14 97.50 +600060.43 5676405.82 101.25 +600060.57 5676951.29 100.00 +600060.60 5679237.45 97.50 +600060.77 5677315.31 98.75 +600060.79 5680031.52 96.25 +600061.16 5679395.18 97.25 +600061.16 5679404.96 97.25 +600061.26 5680840.37 97.50 +600062.01 5679414.68 97.25 +600062.02 5679637.88 97.50 +600062.11 5679347.90 97.25 +600062.29 5679750.25 97.50 +600062.36 5681217.99 96.00 +600062.41 5678383.61 98.75 +600062.50 5681053.79 97.50 +600062.58 5677362.32 100.00 +600062.62 5681308.31 97.50 +600063.04 5681203.90 97.50 +600063.10 5677768.07 98.75 +600063.12 5677263.26 98.75 +600063.26 5681243.36 96.00 +600063.37 5681288.32 97.50 +600063.67 5680986.03 96.25 +600063.76 5680993.45 97.50 +600063.86 5681026.78 97.50 +600063.97 5678511.40 97.50 +600064.11 5677324.70 98.75 +600064.20 5680283.48 97.50 +600064.36 5679321.02 97.50 +600065.54 5677371.82 100.00 +600065.59 5681374.75 97.50 +600065.67 5680259.71 96.25 +600065.77 5679741.01 97.50 +600066.18 5679423.36 97.25 +600066.24 5680853.87 97.50 +600066.28 5677272.74 98.75 +600066.38 5679356.51 97.25 +600066.74 5680069.47 96.25 +600066.82 5679229.79 97.50 +600066.89 5680250.60 96.25 +600067.07 5680023.78 96.25 +600067.29 5681209.87 96.00 +600067.45 5680313.52 98.75 +600067.49 5678542.73 97.50 +600067.52 5681152.89 97.50 +600067.62 5677334.05 98.75 +600067.69 5681017.58 97.50 +600067.79 5679629.84 97.50 +600067.92 5679330.31 97.50 +600067.95 5678527.93 97.75 +600068.17 5679366.13 97.25 +600068.30 5679810.62 96.25 +600068.30 5680334.29 97.50 +600068.46 5679800.65 96.25 +600068.62 5679790.68 96.25 +600068.62 5676957.19 100.00 +600068.74 5678238.44 98.75 +600068.77 5681266.91 97.50 +600069.00 5680977.58 96.25 +600069.07 5680304.83 98.75 +600069.19 5680171.35 97.50 +600069.36 5679820.48 96.25 +600069.40 5677282.23 98.75 +600069.46 5681256.84 96.25 +600069.57 5679414.66 97.25 +600069.62 5679731.90 97.50 +600069.77 5681301.80 97.50 +600069.85 5680985.55 97.50 +600069.95 5679375.74 97.25 +600070.06 5679590.89 97.50 +600070.06 5681236.21 96.00 +600070.09 5677343.73 98.75 +600070.25 5676407.23 101.25 +600070.50 5679385.50 97.25 +600070.51 5681281.66 97.50 +600070.55 5679424.39 97.25 +600070.79 5679395.28 97.25 +600070.82 5680180.52 97.50 +600070.86 5679600.23 97.50 +600070.91 5679581.24 97.50 +600070.92 5680841.24 97.50 +600071.01 5679405.05 97.25 +600071.13 5679781.04 96.25 +600071.33 5681198.92 97.50 +600071.35 5679830.25 96.25 +600071.39 5680014.86 96.25 +600071.48 5679339.60 97.50 +600071.55 5679221.04 97.50 +600071.60 5677353.56 98.75 +600071.62 5681054.37 97.50 +600071.89 5679673.75 97.75 +600071.93 5678380.64 98.75 +600072.09 5677764.54 98.75 +600072.28 5677363.53 98.75 +600072.33 5677291.78 98.75 +600072.38 5680162.00 97.50 +600072.41 5680278.00 97.50 +600072.64 5681144.54 97.50 +600072.75 5680046.99 96.25 +600072.87 5678515.50 97.50 +600073.08 5681009.16 97.50 +600073.32 5679571.88 97.50 +600073.46 5679722.78 97.50 +600073.53 5681368.77 97.50 +600073.64 5677373.43 98.75 +600073.83 5679839.89 96.25 +600073.85 5681203.11 96.00 +600074.04 5680264.07 96.25 +600074.32 5679771.61 96.25 +600074.41 5679349.04 97.50 +600074.55 5680037.24 96.25 +600074.71 5679623.03 97.50 +600074.83 5680297.20 98.75 +600074.99 5677383.33 98.75 +600075.24 5680969.83 96.25 +600075.26 5677301.33 98.75 +600075.28 5680005.68 96.25 +600075.56 5678548.01 97.50 +600075.67 5679358.91 97.50 +600075.67 5680073.82 96.25 +600075.82 5681156.39 97.50 +600075.94 5680977.65 97.50 +600075.94 5680853.87 97.50 +600075.96 5680247.11 96.25 +600076.07 5679562.59 97.50 +600076.28 5679212.29 97.50 +600076.39 5680316.43 98.75 +600076.51 5676963.32 100.00 +600076.56 5680056.20 96.25 +600076.63 5680188.58 97.50 +600077.14 5679849.29 96.25 +600077.24 5681229.44 96.00 +600077.42 5679713.71 97.50 +600077.51 5679368.67 97.50 +600077.62 5681262.65 97.50 +600077.87 5680153.64 97.50 +600077.91 5681275.29 97.50 +600077.92 5679762.31 96.25 +600077.94 5681296.47 97.50 +600078.03 5680332.66 97.50 +600078.10 5679605.43 97.50 +600078.20 5677310.88 98.75 +600078.44 5678236.03 98.75 +600078.70 5681253.06 96.25 +600078.78 5681048.24 97.50 +600078.96 5680028.58 96.25 +600079.30 5679996.56 96.25 +600079.45 5677392.19 98.75 +600079.50 5676410.73 101.25 +600079.71 5679553.61 97.50 +600079.72 5681001.69 97.50 +600080.03 5679378.29 97.50 +600080.04 5680844.43 97.50 +600080.05 5679858.83 96.25 +600080.49 5681138.43 97.50 +600080.51 5677759.19 98.75 +600080.95 5681196.79 96.00 +600080.95 5681196.79 97.50 +600081.01 5679203.53 97.50 +600081.02 5680065.11 96.25 +600081.08 5679906.90 96.25 +600081.20 5680290.06 98.75 +600081.20 5679752.90 96.25 +600081.29 5677320.38 98.75 +600081.37 5679704.65 97.50 +600081.39 5680273.92 97.50 +600081.46 5678377.67 98.75 +600081.68 5681363.09 97.50 +600081.77 5678519.60 97.50 +600082.02 5680962.50 96.25 +600082.32 5679145.41 97.50 +600082.82 5680970.44 97.50 +600082.86 5679868.40 96.25 +600082.95 5679897.37 96.25 +600083.02 5679155.10 97.50 +600083.13 5679916.66 96.25 +600083.33 5679987.43 96.25 +600083.69 5680263.79 96.25 +600083.69 5679387.46 97.50 +600083.71 5679619.35 97.50 +600083.72 5680145.54 97.50 +600083.94 5677052.93 98.75 +600084.00 5679135.61 97.50 +600084.12 5680194.91 97.50 +600084.35 5677400.90 98.75 +600084.35 5679743.43 96.25 +600084.38 5681151.33 97.50 +600084.44 5677329.87 98.75 +600084.47 5681222.72 96.00 +600084.61 5676969.16 100.00 +600084.67 5679194.30 97.50 +600084.74 5681040.21 97.50 +600084.74 5680852.10 97.50 +600084.77 5680073.68 96.25 +600084.87 5680020.58 96.25 +600085.08 5678549.89 97.50 +600085.33 5681268.95 97.50 +600085.33 5679695.58 97.50 +600085.61 5679164.70 97.50 +600085.61 5680246.08 96.25 +600085.67 5679877.96 96.25 +600085.72 5681290.59 97.50 +600085.94 5680316.30 98.75 +600085.97 5679546.60 97.50 +600086.10 5679887.91 96.25 +600086.26 5681257.79 97.50 +600086.29 5679174.62 97.50 +600086.35 5680994.21 97.50 +600086.53 5679184.52 97.50 +600087.39 5679608.19 97.50 +600087.41 5681248.41 96.25 +600087.42 5679126.38 97.50 +600087.58 5677339.35 98.75 +600087.68 5679734.04 96.25 +600087.80 5679978.53 96.25 +600087.81 5679925.26 96.25 +600087.90 5680332.79 97.50 +600087.99 5676415.80 101.25 +600088.08 5677752.67 98.75 +600088.13 5678233.61 98.75 +600088.15 5678526.71 97.50 +600088.31 5680283.75 98.75 +600088.37 5677409.99 98.75 +600088.45 5681132.47 97.50 +600088.50 5679396.17 97.50 +600088.61 5681010.36 97.00 +600088.92 5680955.27 96.25 +600089.29 5679686.52 97.50 +600089.43 5680011.72 96.25 +600089.53 5681191.91 96.00 +600089.98 5680137.75 97.50 +600090.06 5680963.59 97.50 +600090.47 5680270.05 97.50 +600090.67 5678373.88 98.75 +600090.73 5677348.83 98.75 +600090.96 5677057.33 98.75 +600091.41 5681032.78 97.50 +600091.42 5679724.79 96.25 +600091.51 5681362.20 97.50 +600091.51 5677419.47 98.75 +600091.62 5677594.46 98.75 +600091.93 5679117.51 97.50 +600092.04 5677604.38 98.75 +600092.34 5680259.36 96.25 +600092.39 5677048.67 98.75 +600092.40 5679621.53 97.50 +600092.56 5681145.67 97.50 +600092.56 5681217.22 96.00 +600092.57 5678544.61 97.50 +600092.62 5679969.80 96.25 +600092.63 5677584.52 98.75 +600092.65 5677052.83 98.50 +600092.80 5680002.39 96.25 +600092.98 5680986.73 97.50 +600092.99 5681136.58 97.20 +600093.01 5679677.35 97.50 +600093.04 5676974.52 100.00 +600093.22 5678535.09 97.50 +600093.25 5681263.39 97.50 +600093.29 5681284.41 97.50 +600093.37 5677614.28 98.75 +600093.38 5680198.56 97.50 +600093.51 5679933.43 96.25 +600093.76 5677574.60 98.75 +600093.87 5677358.32 98.75 +600094.21 5676423.63 101.25 +600094.43 5681252.16 97.50 +600094.60 5677745.12 98.75 +600094.65 5677428.96 98.75 +600094.97 5681241.90 96.25 +600094.98 5679543.75 97.50 +600095.00 5680243.79 96.25 +600095.20 5679715.57 96.25 +600095.28 5680314.20 98.75 +600095.33 5679992.75 96.25 +600095.70 5677623.93 98.75 +600096.10 5680278.20 98.75 +600096.15 5679586.29 92.50 +600096.20 5680948.47 96.25 +600096.24 5680129.95 97.50 +600096.37 5679803.86 96.25 +600096.41 5681126.52 97.50 +600096.45 5679108.65 97.50 +600096.51 5677565.00 98.75 +600096.52 5679668.10 97.50 +600096.75 5679610.69 97.50 +600096.79 5679401.13 97.50 +600097.01 5677367.80 98.75 +600097.19 5679813.74 96.25 +600097.52 5679793.97 96.25 +600097.57 5679629.73 97.50 +600097.66 5680957.14 97.50 +600097.69 5680293.93 99.00 +600097.74 5680332.28 97.50 +600097.83 5678231.20 98.75 +600097.87 5677022.99 100.00 +600097.89 5677438.41 98.75 +600097.90 5679961.34 96.25 +600098.12 5681187.04 96.00 +600098.12 5681025.37 97.50 +600098.38 5679942.14 96.25 +600098.53 5679823.61 96.25 +600098.64 5677031.82 100.00 +600099.18 5677633.30 98.75 +600099.27 5677555.40 98.75 +600099.40 5681272.58 96.25 +600099.49 5679952.03 96.25 +600099.59 5680266.28 97.50 +600099.62 5680979.26 97.50 +600099.66 5679706.65 96.25 +600099.74 5678369.73 98.75 +600099.75 5679658.80 97.50 +600099.97 5679648.91 97.50 +600100.05 5677377.32 98.75 +600100.07 5679984.03 96.25 +600100.20 5679639.02 97.50 +600100.69 5677056.46 98.75 +600100.72 5679784.57 96.25 +600100.74 5681140.01 97.50 +600100.89 5681359.28 97.50 +600100.95 5677737.40 98.75 +600101.21 5680255.54 96.25 +600101.25 5681278.83 97.50 +600101.25 5676980.19 100.00 +600101.31 5676430.63 101.25 +600101.31 5681212.65 96.00 +600101.40 5679833.14 96.25 +600101.49 5677049.56 98.75 +600101.54 5679100.12 97.50 +600101.57 5677447.70 98.75 +600102.17 5681259.43 97.50 +600102.37 5680692.62 97.50 +600102.40 5677545.96 98.75 +600102.60 5681246.53 97.50 +600102.67 5677642.66 98.75 +600102.90 5680122.54 97.50 +600103.10 5677386.84 98.75 +600103.24 5681236.35 96.25 +600103.33 5680199.57 97.50 +600103.34 5679547.30 97.50 +600103.65 5679775.06 96.25 +600104.03 5680942.27 96.25 +600104.12 5679697.73 96.25 +600104.14 5681120.26 97.50 +600104.22 5680240.72 96.25 +600104.26 5680310.96 98.75 +600104.29 5677015.34 100.00 +600104.33 5679842.67 96.25 +600104.57 5681264.92 96.25 +600104.67 5681017.84 97.50 +600104.76 5677039.67 100.00 +600104.92 5680275.28 98.75 +600105.25 5677456.99 98.75 +600105.30 5680950.73 97.50 +600105.54 5677728.60 98.75 +600105.78 5677652.15 98.75 +600105.91 5680683.27 97.50 +600106.07 5679976.16 96.25 +600106.12 5679613.19 97.50 +600106.14 5677396.35 98.75 +600106.26 5680971.79 97.50 +600106.33 5681181.64 96.00 +600106.42 5681031.38 97.50 +600106.49 5679402.45 97.50 +600106.83 5679765.65 96.25 +600106.87 5679852.28 96.25 +600106.89 5681270.42 96.25 +600106.94 5679091.76 97.50 +600107.16 5680329.62 97.50 +600107.40 5676987.37 100.00 +600107.52 5678228.79 98.75 +600107.57 5677537.40 98.75 +600108.26 5679688.67 96.25 +600108.54 5679862.10 96.25 +600108.76 5676437.29 101.25 +600108.84 5677661.67 98.75 +600108.84 5681134.24 97.50 +600108.88 5678365.74 98.75 +600108.91 5677466.28 98.75 +600109.13 5681353.94 97.50 +600109.14 5677405.88 98.75 +600109.23 5676997.16 100.00 +600109.29 5680673.86 97.50 +600109.32 5681206.99 96.00 +600109.33 5681038.63 97.50 +600109.40 5680265.96 97.50 +600109.44 5679554.83 97.50 +600109.63 5677719.48 98.75 +600109.71 5681022.07 97.50 +600109.72 5677007.14 100.00 +600109.78 5681274.07 97.50 +600109.79 5681009.25 97.50 +600110.21 5679871.92 96.25 +600110.35 5677047.42 100.00 +600110.35 5680115.86 97.50 +600110.70 5680253.43 96.25 +600110.86 5679756.54 96.25 +600110.92 5681241.13 97.50 +600111.16 5681255.63 97.50 +600111.55 5677415.58 98.75 +600111.65 5679679.30 96.25 +600111.87 5680936.07 96.25 +600111.89 5677671.18 98.75 +600111.90 5681231.42 96.25 +600111.91 5679881.74 96.25 +600112.19 5680306.06 98.75 +600112.34 5679083.40 97.50 +600112.36 5677475.66 98.75 +600112.45 5680664.38 97.50 +600112.47 5677057.08 100.00 +600112.48 5681114.84 97.50 +600112.77 5681259.90 96.25 +600113.06 5680944.48 97.50 +600113.09 5677710.16 98.75 +600113.16 5679746.86 96.25 +600113.18 5680964.59 97.50 +600113.18 5680236.95 96.25 +600113.28 5680200.58 97.50 +600113.87 5679891.50 96.25 +600113.92 5681175.32 96.00 +600113.95 5677425.28 98.75 +600114.16 5677530.09 98.75 +600114.28 5677680.88 98.75 +600114.44 5680274.71 98.75 +600114.71 5679972.51 96.25 +600114.75 5679562.93 97.50 +600114.90 5681013.64 97.50 +600114.91 5681000.67 97.50 +600114.97 5681265.22 96.25 +600115.12 5677700.38 98.75 +600115.15 5679737.10 96.25 +600115.59 5679615.16 97.50 +600115.80 5677485.04 98.75 +600116.08 5680325.51 97.50 +600116.34 5676443.77 101.25 +600116.36 5677434.98 98.75 +600116.43 5679402.68 97.50 +600116.58 5677690.60 98.75 +600116.58 5680655.30 97.50 +600116.61 5679670.70 96.25 +600116.68 5681347.49 97.50 +600116.74 5681200.49 96.00 +600116.88 5681128.39 97.50 +600116.88 5679727.29 96.25 +600117.19 5680777.00 97.50 +600117.22 5678226.40 98.75 +600117.30 5681033.74 97.50 +600117.59 5680108.98 97.50 +600118.02 5679075.25 97.50 +600118.18 5681269.11 97.50 +600118.24 5681225.76 96.25 +600118.33 5679900.35 96.25 +600118.34 5680298.79 98.75 +600118.37 5678362.66 98.75 +600118.91 5681249.79 97.50 +600118.92 5680732.00 97.50 +600118.93 5677494.52 98.75 +600119.06 5681235.48 97.50 +600119.21 5680722.74 97.50 +600119.27 5680265.81 97.50 +600119.27 5680064.41 96.25 +600119.70 5680929.88 96.25 +600119.77 5680991.95 97.50 +600119.88 5677063.59 100.00 +600119.89 5679571.14 97.50 +600120.19 5680251.32 96.25 +600120.31 5680783.66 97.50 +600120.46 5677027.27 101.25 +600120.48 5681005.46 97.50 +600120.55 5677443.97 98.75 +600120.73 5680958.05 97.50 +600120.74 5680071.64 96.25 +600120.83 5681109.43 97.50 +600120.84 5680280.32 98.75 +600120.85 5681218.56 96.25 +600120.97 5681254.89 96.25 +600121.02 5679718.33 96.25 +600121.10 5680289.74 98.75 +600121.23 5680938.75 97.50 +600121.34 5677523.41 98.75 +600121.56 5677504.16 98.75 +600121.84 5681169.47 96.00 +600121.87 5677018.16 101.25 +600122.04 5679662.34 96.25 +600122.19 5680233.32 96.25 +600122.31 5679977.08 96.25 +600122.61 5680647.43 97.50 +600122.79 5677036.09 101.25 +600122.91 5681193.02 96.00 +600123.05 5681260.02 96.25 +600123.24 5680201.37 97.50 +600123.25 5679909.01 96.25 +600123.60 5680319.19 97.50 +600123.63 5681026.12 97.50 +600123.70 5680982.76 97.50 +600124.04 5680770.38 97.50 +600124.08 5677513.80 98.75 +600124.13 5679398.11 97.50 +600124.17 5679067.43 97.50 +600124.20 5681340.99 97.50 +600124.26 5680101.53 97.50 +600124.53 5679579.65 97.50 +600124.92 5681122.53 97.50 +600124.93 5676448.89 101.25 +600125.18 5679616.49 97.50 +600125.32 5680996.85 97.50 +600125.41 5677452.70 98.75 +600125.98 5679986.07 96.25 +600126.00 5679709.71 96.25 +600126.51 5681264.02 97.50 +600126.81 5681229.29 97.50 +600126.84 5677011.15 101.25 +600126.84 5680775.62 97.25 +600126.93 5678224.02 98.75 +600127.02 5681207.52 96.25 +600127.05 5680736.05 97.50 +600127.33 5681184.19 96.00 +600127.43 5680717.88 97.50 +600127.80 5680973.66 97.50 +600127.84 5680924.08 96.25 +600127.86 5678359.57 98.75 +600127.90 5679588.66 97.50 +600128.02 5679995.83 96.25 +600128.26 5679607.75 97.50 +600128.29 5680951.51 97.50 +600128.56 5681248.79 97.50 +600128.69 5679389.58 97.50 +600128.88 5681222.74 96.25 +600129.04 5679917.02 96.25 +600129.13 5680265.62 97.50 +600129.20 5680064.01 96.25 +600129.28 5679598.11 97.50 +600129.41 5681104.48 97.50 +600129.43 5680933.07 97.50 +600129.45 5680640.14 97.50 +600129.55 5680076.26 96.25 +600129.58 5677461.78 98.75 +600129.60 5681250.72 96.25 +600129.72 5677064.46 100.00 +600129.81 5680311.54 97.50 +600129.81 5680988.03 97.50 +600129.84 5681018.42 97.50 +600129.91 5680251.32 96.25 +600129.94 5680781.89 97.50 +600130.13 5681164.12 96.00 +600130.15 5679059.48 97.50 +600130.23 5677022.25 101.50 +600130.45 5679379.79 97.50 +600130.56 5679350.01 97.50 +600130.61 5679359.96 97.50 +600130.69 5679340.07 97.50 +600130.80 5679369.91 97.50 +600130.90 5679658.36 96.25 +600131.00 5677038.76 101.25 +600131.23 5680094.41 97.50 +600131.27 5681255.04 96.25 +600131.32 5679330.14 97.50 +600131.48 5680230.48 96.25 +600131.53 5679701.42 96.25 +600131.81 5681199.55 96.25 +600131.90 5679320.21 97.50 +600131.92 5680005.00 96.25 +600132.26 5681335.18 97.50 +600132.45 5679310.28 97.50 +600133.20 5681117.04 97.50 +600133.24 5680201.73 97.50 +600133.29 5680965.31 97.50 +600133.36 5680767.42 97.50 +600133.47 5679300.39 97.50 +600133.68 5677470.89 98.75 +600133.82 5676453.45 101.25 +600133.87 5681176.81 96.00 +600134.14 5680979.13 97.50 +600134.20 5681179.19 96.25 +600134.48 5681211.03 96.25 +600134.96 5679290.55 97.50 +600135.23 5680303.31 97.50 +600135.34 5681224.60 97.50 +600135.63 5677008.71 101.25 +600135.71 5681260.96 97.50 +600135.83 5680014.18 96.25 +600135.84 5680944.96 97.50 +600135.98 5680918.29 96.25 +600136.10 5679051.50 97.50 +600136.26 5679923.89 96.25 +600136.41 5681011.07 97.50 +600136.48 5680633.03 97.50 +600136.57 5680738.40 97.50 +600136.64 5678221.65 98.75 +600137.00 5681243.92 97.50 +600137.06 5679693.14 96.25 +600137.30 5677032.37 101.25 +600137.42 5678356.70 98.75 +600137.78 5677480.00 98.75 +600137.83 5681218.48 96.25 +600137.83 5680927.71 97.50 +600138.13 5680268.73 97.50 +600138.45 5681246.96 96.25 +600138.58 5681161.14 96.00 +600138.63 5681100.76 97.50 +600138.84 5680079.77 96.25 +600139.07 5680065.45 96.25 +600139.15 5680254.32 96.25 +600139.22 5677061.72 100.00 +600139.38 5680779.01 97.50 +600139.44 5680088.96 97.50 +600139.48 5681168.85 96.00 +600139.93 5679655.69 96.25 +600139.97 5680958.12 97.50 +600140.21 5681252.90 96.25 +600140.33 5677023.55 101.25 +600140.36 5680971.43 97.50 +600140.50 5680226.90 96.25 +600140.56 5680295.01 97.50 +600140.65 5681195.32 96.25 +600140.69 5679282.55 97.50 +600140.78 5681330.09 97.50 +600140.96 5677014.23 101.25 +600140.97 5681168.04 96.25 +600141.65 5681111.79 97.50 +600141.88 5677489.11 98.75 +600142.03 5680770.83 97.50 +600142.45 5679043.86 97.50 +600143.19 5680202.34 97.50 +600143.21 5680020.85 96.25 +600143.40 5680938.42 97.50 +600143.45 5676456.04 101.25 +600143.48 5679930.75 96.25 +600143.55 5680625.96 97.50 +600143.62 5681181.29 96.25 +600143.74 5680276.59 97.50 +600144.02 5681004.73 97.50 +600144.36 5680912.91 96.25 +600144.38 5681209.88 96.25 +600144.53 5679181.07 97.75 +600144.73 5680286.27 97.50 +600144.87 5681221.85 97.50 +600145.15 5681258.46 97.50 +600145.35 5681176.40 96.50 +600145.46 5680921.32 97.50 +600145.96 5679647.79 96.25 +600145.98 5677498.22 98.75 +600146.23 5680740.16 97.50 +600146.34 5678219.28 98.75 +600146.60 5681242.83 97.50 +600146.75 5681249.27 96.00 +600146.75 5679274.67 97.50 +600147.06 5678354.14 98.75 +600147.55 5681216.18 96.25 +600147.73 5680964.93 97.50 +600147.76 5677056.54 100.00 +600147.83 5681245.62 96.25 +600147.89 5679313.57 96.25 +600148.03 5681097.89 97.50 +600148.21 5680257.81 96.25 +600148.25 5680952.57 97.50 +600148.53 5680081.54 96.25 +600148.94 5680066.89 96.25 +600149.35 5679036.70 97.50 +600149.44 5680088.96 97.50 +600149.45 5681325.23 97.50 +600149.55 5677507.55 98.75 +600149.57 5680223.95 96.25 +600149.66 5680242.17 96.00 +600149.81 5681253.36 96.25 +600149.94 5679323.27 96.25 +600150.00 5681191.96 96.25 +600150.27 5679938.03 96.25 +600150.37 5681170.52 96.25 +600150.43 5679303.93 96.25 +600150.62 5680618.89 97.50 +600150.73 5678982.60 97.25 +600150.83 5681109.28 97.50 +600150.86 5679639.10 96.25 +600150.91 5680027.01 96.25 +600151.35 5680932.60 97.50 +600152.20 5679332.96 96.25 +600152.26 5680999.30 97.50 +600152.35 5678991.38 97.25 +600152.51 5679266.56 97.50 +600152.78 5680205.16 97.50 +600152.96 5679294.30 96.25 +600153.00 5677516.93 98.75 +600153.12 5676458.56 101.25 +600153.31 5681181.94 96.25 +600153.37 5680908.60 96.25 +600153.65 5680265.72 96.25 +600153.67 5680915.72 97.50 +600154.24 5681208.32 96.25 +600154.69 5681220.92 97.50 +600154.90 5681258.33 97.50 +600155.07 5679342.50 96.25 +600155.28 5680275.31 96.25 +600155.51 5678974.31 97.25 +600155.52 5677050.40 100.00 +600155.77 5679630.42 96.25 +600155.88 5680741.92 97.50 +600156.05 5678216.91 98.75 +600156.34 5681242.19 97.50 +600156.44 5677526.31 98.75 +600156.57 5680961.52 97.50 +600156.61 5679285.07 96.25 +600156.71 5678351.59 98.75 +600156.84 5680611.07 97.50 +600156.90 5680284.89 96.25 +600156.95 5679945.42 96.25 +600157.20 5679104.25 97.50 +600157.21 5681245.90 96.25 +600157.43 5681215.03 96.25 +600157.65 5679031.49 97.50 +600157.75 5679113.73 97.50 +600157.80 5681175.42 96.25 +600157.93 5679352.04 96.25 +600157.98 5681097.63 97.50 +600158.10 5681320.36 97.50 +600158.14 5680951.12 97.50 +600158.27 5679258.45 97.50 +600158.49 5680081.03 96.25 +600158.83 5680068.11 96.25 +600158.91 5680225.55 96.25 +600159.03 5681251.06 96.25 +600159.43 5680088.77 97.50 +600159.54 5680294.19 96.25 +600159.80 5680211.63 97.50 +600159.88 5677535.69 98.75 +600159.97 5681192.50 96.25 +600160.59 5680029.43 96.25 +600160.70 5679275.98 96.25 +600160.74 5679621.78 96.25 +600160.77 5681109.60 97.50 +600160.86 5679361.56 96.25 +600160.86 5679123.12 97.50 +600161.02 5680930.16 97.50 +600161.10 5679330.17 96.00 +600161.37 5678966.81 97.25 +600161.60 5678990.05 97.25 +600161.70 5680997.77 97.50 +600161.75 5679339.75 96.00 +600162.37 5677043.12 100.00 +600162.38 5679642.54 96.25 +600162.58 5679095.93 97.50 +600162.73 5679249.64 97.50 +600162.74 5679302.39 96.25 +600162.76 5676460.08 101.25 +600162.87 5680905.61 96.25 +600162.90 5680603.11 97.50 +600163.03 5680913.21 97.50 +600163.33 5677545.07 98.75 +600163.47 5679952.94 96.25 +600163.73 5679633.74 96.25 +600164.16 5679453.28 96.25 +600164.19 5681208.03 96.25 +600164.28 5679370.91 96.25 +600164.60 5681220.54 97.50 +600164.66 5681258.33 97.50 +600164.72 5678345.62 98.75 +600164.82 5676597.25 101.25 +600164.98 5679348.79 96.00 +600165.08 5676607.25 101.25 +600165.09 5679292.73 96.25 +600165.22 5680744.87 97.50 +600165.33 5676617.24 101.25 +600165.75 5680219.66 97.50 +600165.75 5678214.54 98.75 +600165.81 5679311.64 96.25 +600166.06 5681242.74 97.50 +600166.27 5679613.48 96.25 +600166.45 5680960.98 97.50 +600166.48 5679240.45 97.50 +600166.49 5680231.52 96.25 +600166.55 5676587.41 101.25 +600166.65 5679325.66 96.00 +600166.70 5680295.68 96.25 +600166.73 5681315.43 97.50 +600166.77 5677554.44 98.75 +600166.97 5679268.34 96.25 +600167.04 5679461.85 96.25 +600167.15 5679087.33 97.50 +600167.39 5681214.45 96.25 +600167.41 5679031.20 97.50 +600167.73 5681099.22 97.50 +600167.84 5678959.76 97.25 +600167.89 5679624.75 96.25 +600168.00 5679127.66 97.50 +600168.09 5679380.09 96.25 +600168.10 5680950.63 97.50 +600168.43 5679357.78 96.00 +600168.45 5680081.35 96.25 +600168.73 5680069.33 96.25 +600168.73 5680595.00 97.50 +600168.88 5676626.58 101.25 +600169.05 5678984.04 97.25 +600169.13 5679077.58 97.50 +600169.29 5677035.92 100.00 +600169.42 5680088.32 97.50 +600169.45 5676577.88 101.25 +600169.59 5679960.81 96.25 +600169.77 5679445.79 96.25 +600169.84 5681193.84 96.25 +600169.87 5679614.99 96.25 +600169.90 5679284.19 96.25 +600170.18 5677563.84 98.75 +600170.30 5680031.65 96.25 +600170.50 5679067.73 97.50 +600170.71 5681109.86 97.50 +600170.81 5679320.17 96.25 +600170.90 5676465.75 101.25 +600170.96 5680929.10 97.50 +600171.14 5679645.24 96.25 +600171.49 5680239.56 96.25 +600171.59 5680998.00 97.50 +600171.61 5679057.85 97.50 +600171.64 5679333.79 96.00 +600171.67 5679231.96 97.50 +600171.89 5679366.76 96.00 +600172.06 5680287.83 96.25 +600172.12 5681183.67 96.25 +600172.50 5679047.94 97.50 +600172.52 5680903.01 96.25 +600172.60 5680226.95 97.50 +600172.61 5678339.50 98.75 +600172.96 5679120.80 97.50 +600172.98 5680912.64 97.50 +600172.98 5679388.76 96.25 +600173.09 5681190.54 96.25 +600173.09 5680278.17 96.25 +600173.15 5680249.01 96.25 +600173.15 5680258.73 96.25 +600173.15 5680268.45 96.25 +600173.18 5679304.04 97.50 +600173.32 5676635.37 101.25 +600173.32 5679038.04 97.50 +600173.48 5677573.27 98.75 +600173.50 5676568.76 101.25 +600174.03 5679261.32 96.25 +600174.12 5681208.42 96.25 +600174.35 5681174.12 96.25 +600174.39 5680586.75 97.50 +600174.41 5681258.63 97.50 +600174.42 5679342.96 96.00 +600174.48 5681219.65 97.50 +600174.49 5679457.05 96.25 +600174.51 5680748.03 97.50 +600174.60 5679312.71 97.50 +600174.86 5678953.28 97.25 +600175.14 5681310.14 97.50 +600175.24 5679968.99 96.25 +600175.30 5679375.77 96.00 +600175.41 5678211.97 98.75 +600175.77 5681243.78 97.50 +600175.79 5680864.86 97.50 +600176.03 5679352.44 96.00 +600176.14 5678977.65 97.25 +600176.18 5679276.50 96.25 +600176.25 5677028.75 100.00 +600176.35 5680960.98 97.50 +600176.51 5679328.32 96.25 +600176.78 5677582.70 98.75 +600176.83 5681178.39 96.25 +600176.86 5679223.48 97.50 +600177.06 5676473.55 101.25 +600177.18 5679295.26 97.50 +600177.37 5681214.23 96.25 +600177.48 5681101.04 97.50 +600177.56 5679361.94 96.00 +600178.01 5676559.83 101.25 +600178.09 5680950.63 97.50 +600178.22 5679440.75 96.25 +600178.22 5680234.89 97.50 +600178.40 5680081.96 96.25 +600178.50 5680886.42 97.50 +600178.51 5679384.84 96.00 +600178.57 5679115.56 97.50 +600178.61 5680068.83 96.25 +600178.72 5680872.83 97.50 +600179.03 5679396.64 96.25 +600179.17 5679321.20 97.50 +600179.35 5681196.62 96.25 +600179.39 5680087.57 97.50 +600179.49 5679640.71 96.25 +600179.79 5681003.36 97.50 +600179.79 5679092.57 96.25 +600179.94 5678332.71 98.75 +600180.00 5680284.45 97.50 +600180.04 5680578.50 97.50 +600180.08 5680033.64 96.25 +600180.08 5677592.13 98.75 +600180.16 5676642.66 101.25 +600180.20 5679874.32 97.50 +600180.34 5680294.38 97.50 +600180.35 5679102.47 96.25 +600180.39 5679977.52 96.25 +600180.43 5680244.64 97.50 +600180.53 5679864.34 97.50 +600180.60 5681110.84 97.50 +600180.62 5679337.25 96.25 +600180.68 5680274.48 97.50 +600180.69 5679884.27 97.50 +600180.70 5679370.96 96.00 +600180.86 5679854.36 97.50 +600180.90 5680928.05 97.50 +600180.95 5679082.71 96.25 +600181.02 5679394.13 96.00 +600181.19 5679254.41 96.25 +600181.24 5679844.39 97.50 +600181.33 5676482.54 101.25 +600181.35 5680264.50 97.50 +600181.61 5680254.51 97.50 +600181.66 5679894.20 97.50 +600181.86 5679834.42 97.50 +600182.02 5681182.37 96.25 +600182.18 5680900.45 96.25 +600182.20 5676550.76 101.25 +600182.25 5680304.18 97.50 +600182.28 5678970.33 97.25 +600182.31 5679287.19 97.50 +600182.32 5681194.21 96.25 +600182.34 5679072.87 96.25 +600182.48 5679824.46 97.50 +600182.66 5679451.36 96.25 +600182.89 5679269.16 96.25 +600182.94 5680913.15 97.50 +600183.01 5680752.87 97.50 +600183.02 5678949.08 97.25 +600183.15 5676492.37 101.25 +600183.19 5680859.84 97.50 +600183.31 5679814.51 97.50 +600183.31 5679346.81 96.25 +600183.38 5677601.56 98.75 +600183.48 5680889.01 96.25 +600183.52 5681304.80 97.50 +600183.57 5681171.17 96.25 +600183.74 5677022.15 100.00 +600183.94 5679111.74 96.25 +600184.02 5679329.55 97.50 +600184.05 5679903.84 97.50 +600184.10 5679216.86 97.50 +600184.11 5681257.72 97.50 +600184.17 5680878.41 97.50 +600184.20 5680709.55 97.50 +600184.29 5679804.58 97.50 +600184.29 5681218.29 97.50 +600184.77 5679379.68 96.00 +600184.82 5676502.23 101.25 +600185.01 5679986.34 96.25 +600185.01 5679356.61 96.25 +600185.04 5678209.30 98.75 +600185.04 5680313.79 97.50 +600185.05 5681246.79 97.50 +600185.11 5679648.09 96.25 +600185.35 5679404.34 96.25 +600185.68 5679063.71 96.25 +600185.95 5679338.93 97.50 +600186.11 5676541.58 101.25 +600186.24 5680961.18 97.50 +600186.43 5676512.09 101.25 +600186.56 5679401.31 96.00 +600186.67 5677610.99 98.75 +600186.79 5681178.24 96.25 +600186.81 5679366.39 96.25 +600187.05 5679246.35 96.25 +600187.13 5679913.34 97.50 +600187.19 5680714.52 96.25 +600187.19 5679120.10 97.50 +600187.27 5678325.92 98.75 +600187.37 5676649.57 101.25 +600187.39 5681101.92 97.50 +600187.48 5678962.30 97.25 +600187.52 5680571.90 97.50 +600187.53 5679795.21 97.50 +600187.88 5679348.31 97.50 +600187.91 5680065.66 96.25 +600188.07 5679439.44 96.25 +600188.09 5676531.79 101.25 +600188.09 5680950.63 97.50 +600188.12 5681201.32 96.25 +600188.25 5680080.74 96.25 +600188.39 5676521.90 101.25 +600188.56 5680939.88 97.25 +600188.57 5679279.85 97.50 +600188.61 5680100.72 97.50 +600188.73 5681007.48 97.50 +600188.96 5679388.35 96.00 +600189.01 5679261.33 96.25 +600189.05 5680088.39 97.50 +600189.37 5679923.03 97.50 +600189.57 5679375.95 96.25 +600189.63 5679995.17 96.25 +600189.68 5680322.63 97.50 +600189.74 5680033.36 96.25 +600189.81 5679357.68 97.50 +600189.88 5678953.43 97.25 +600189.89 5680096.18 97.50 +600189.93 5677620.44 98.75 +600190.30 5679068.81 96.25 +600190.48 5681112.00 97.50 +600190.76 5680928.60 97.50 +600190.87 5679932.90 97.50 +600190.89 5679445.74 96.25 +600191.36 5680758.03 97.50 +600191.51 5680897.02 96.25 +600191.53 5679117.56 96.25 +600191.57 5680883.17 96.25 +600191.57 5679786.09 97.50 +600191.64 5679412.06 96.25 +600191.66 5681253.29 97.50 +600191.81 5677016.37 100.00 +600191.85 5681299.39 97.50 +600191.94 5681181.25 96.25 +600192.04 5681196.14 96.25 +600192.16 5679078.58 96.25 +600192.26 5679237.87 96.25 +600192.31 5679110.15 96.00 +600192.37 5679942.77 97.50 +600192.56 5678317.56 98.75 +600192.74 5679652.97 96.25 +600192.84 5679397.16 96.00 +600192.85 5679212.34 97.50 +600192.87 5680913.87 97.50 +600192.98 5680859.64 97.50 +600193.17 5679128.02 97.50 +600193.19 5677629.88 98.75 +600193.19 5679002.54 97.50 +600193.22 5679366.62 97.50 +600193.39 5680706.35 97.50 +600193.42 5681169.90 96.25 +600193.68 5679088.41 96.25 +600193.93 5681215.93 97.50 +600194.06 5679952.61 97.50 +600194.38 5679384.60 96.25 +600194.44 5680331.42 97.50 +600194.45 5680003.89 96.25 +600194.67 5678206.63 98.75 +600194.67 5679570.02 96.25 +600194.70 5680564.96 97.50 +600194.93 5676656.12 101.25 +600194.96 5679253.36 96.25 +600195.06 5679272.71 97.50 +600195.73 5680987.26 97.20 +600196.12 5680961.78 97.50 +600196.16 5679118.50 96.00 +600196.29 5679074.07 97.50 +600196.42 5679962.31 97.50 +600196.45 5677639.33 98.75 +600196.46 5681175.77 96.25 +600196.50 5679777.41 97.50 +600196.50 5681206.32 96.25 +600196.65 5680713.56 96.25 +600196.67 5680060.92 96.25 +600196.96 5679375.42 97.50 +600197.26 5678993.89 97.50 +600197.27 5681102.95 97.50 +600197.42 5679436.71 96.25 +600197.48 5679229.39 96.25 +600197.69 5679097.46 96.25 +600197.71 5678309.02 98.75 +600197.87 5679419.84 96.25 +600198.04 5680079.74 96.25 +600198.04 5681010.77 97.50 +600198.05 5680950.91 97.50 +600198.07 5679064.69 97.50 +600198.12 5679008.90 97.50 +600198.21 5680102.80 97.50 +600198.26 5679108.93 96.00 +600198.28 5679124.35 96.25 +600198.76 5679083.67 97.50 +600198.89 5679578.01 96.25 +600198.97 5680340.32 97.50 +600198.98 5680763.90 97.50 +600199.18 5679135.95 97.50 +600199.31 5680030.59 96.25 +600199.54 5679393.11 96.25 +600199.69 5681293.34 97.50 +600199.71 5677648.77 98.75 +600199.79 5679971.53 97.50 +600200.20 5679445.73 96.25 +600200.35 5681113.02 97.50 +600200.51 5680892.69 96.25 +600200.53 5680930.68 97.50 +600200.60 5679093.40 97.50 +600200.67 5680881.89 96.25 +600200.78 5677011.97 100.00 +600201.28 5680701.19 97.50 +600201.45 5680557.59 97.50 +600201.56 5679768.82 97.50 +600201.61 5679566.43 96.25 +600201.64 5679246.03 96.25 +600201.66 5679383.76 97.50 +600201.72 5679265.73 97.50 +600201.72 5681193.72 96.25 +600201.79 5680856.43 97.50 +600201.86 5679428.78 96.25 +600201.87 5681180.22 96.25 +600202.08 5679106.38 96.25 +600202.17 5679208.86 97.50 +600202.32 5679651.55 96.25 +600202.39 5679318.55 97.75 +600202.46 5680349.69 97.50 +600202.49 5681165.83 96.25 +600202.55 5680916.27 97.50 +600202.58 5679125.70 96.00 +600202.89 5676662.11 101.25 +600203.40 5678300.80 98.75 +600203.52 5678986.11 97.50 +600203.54 5679402.21 96.25 +600203.57 5681213.58 97.50 +600203.94 5679102.61 97.50 +600203.96 5680772.35 97.50 +600204.05 5679061.83 97.50 +600204.16 5679222.00 96.25 +600204.29 5678203.96 98.75 +600204.44 5677657.51 98.75 +600204.52 5679131.62 96.25 +600204.68 5679116.12 96.00 +600204.98 5679585.49 96.25 +600205.09 5679143.95 97.50 +600205.24 5680692.31 97.50 +600205.25 5680866.58 96.25 +600205.68 5680905.63 97.50 +600205.73 5679392.42 97.50 +600205.82 5679979.48 97.50 +600205.83 5680717.38 96.25 +600205.85 5680057.57 96.25 +600205.91 5680963.24 97.50 +600205.94 5680359.07 97.50 +600206.15 5681173.87 96.25 +600206.47 5681206.67 96.25 +600206.72 5680876.46 96.25 +600206.77 5680848.24 97.50 +600206.79 5680083.68 96.25 +600206.85 5681105.61 97.50 +600206.96 5680682.72 97.50 +600207.05 5681286.67 97.50 +600207.09 5680898.21 97.50 +600207.43 5679760.74 97.50 +600207.51 5679411.33 96.25 +600207.70 5681012.57 97.50 +600207.71 5679450.98 96.25 +600207.73 5680857.21 96.25 +600207.75 5680953.33 97.50 +600207.88 5679007.61 97.50 +600207.99 5680550.02 97.50 +600208.18 5680103.39 97.50 +600208.22 5680781.17 97.50 +600208.29 5680510.73 97.50 +600208.29 5680520.73 97.50 +600208.46 5679114.01 96.25 +600208.55 5679041.19 97.50 +600208.67 5679594.72 96.25 +600208.69 5678977.56 97.50 +600208.73 5680368.67 97.50 +600208.75 5679111.23 97.50 +600208.78 5679239.10 96.25 +600208.90 5680673.17 97.50 +600209.06 5680500.80 97.50 +600209.07 5679132.85 96.00 +600209.09 5678292.59 98.75 +600209.17 5680029.07 96.25 +600209.38 5679401.27 97.50 +600209.46 5679571.87 96.25 +600209.55 5680838.96 97.50 +600209.57 5679050.63 97.50 +600209.58 5680644.51 97.50 +600209.78 5680530.57 97.50 +600209.85 5679124.28 96.00 +600209.87 5680634.77 97.50 +600210.08 5677665.74 98.75 +600210.12 5679139.36 96.25 +600210.14 5680892.34 96.25 +600210.24 5681111.96 97.50 +600210.27 5680540.35 97.50 +600210.31 5680932.77 97.50 +600210.36 5681159.68 96.25 +600210.56 5677010.25 100.00 +600210.63 5680829.21 97.50 +600210.67 5680490.93 97.50 +600210.71 5680654.14 97.50 +600210.79 5679214.57 96.25 +600210.82 5679152.09 97.50 +600210.92 5681189.94 96.25 +600211.11 5680663.68 97.50 +600211.20 5679264.86 97.50 +600211.22 5679205.01 97.50 +600211.34 5676667.46 101.25 +600211.44 5681178.03 96.25 +600211.45 5681198.69 96.25 +600211.53 5680378.27 97.50 +600211.54 5679647.88 96.25 +600211.67 5679031.81 97.50 +600211.79 5680848.09 96.25 +600212.02 5680790.21 97.50 +600212.10 5679420.13 96.25 +600212.21 5680918.77 97.50 +600212.23 5680819.53 97.50 +600212.37 5679986.97 97.50 +600212.48 5679066.74 97.50 +600212.56 5680799.98 97.50 +600212.63 5680481.14 97.50 +600212.68 5679581.29 96.25 +600212.88 5680809.78 97.50 +600212.89 5679459.48 96.25 +600212.90 5680866.26 96.25 +600213.02 5679603.48 96.25 +600213.02 5680091.47 96.25 +600213.16 5679410.05 97.50 +600213.30 5679752.67 97.50 +600213.32 5681211.79 97.50 +600213.46 5678968.79 97.50 +600213.59 5680625.82 97.50 +600213.72 5681279.32 97.50 +600213.86 5680838.39 96.25 +600213.92 5678201.29 98.75 +600214.08 5680908.80 97.50 +600214.51 5680722.24 96.25 +600214.54 5679140.80 96.00 +600214.59 5678284.25 98.75 +600214.84 5679121.64 96.25 +600215.06 5680874.93 96.25 +600215.28 5681201.80 96.25 +600215.30 5680856.72 96.25 +600215.33 5679147.40 96.25 +600215.57 5680471.58 97.50 +600215.58 5680387.37 97.50 +600215.69 5679590.54 96.25 +600215.70 5680964.70 97.50 +600215.75 5680056.61 96.25 +600215.75 5680828.62 96.25 +600215.80 5679118.19 97.50 +600215.83 5679131.85 96.00 +600215.88 5679160.61 97.50 +600215.91 5679232.17 96.25 +600216.46 5681206.67 96.25 +600216.50 5677673.39 98.75 +600216.54 5679446.70 96.00 +600216.54 5679002.94 97.50 +600216.87 5681008.85 97.50 +600216.90 5680897.35 97.50 +600217.07 5681152.47 96.25 +600217.33 5679428.59 96.25 +600217.38 5679054.92 97.50 +600217.41 5679023.93 97.50 +600217.44 5680955.76 97.50 +600217.49 5678959.64 97.50 +600217.72 5680106.38 97.50 +600217.76 5679455.14 96.00 +600217.82 5679075.08 97.50 +600217.90 5679197.63 97.50 +600217.94 5679390.04 96.25 +600218.16 5680847.18 96.25 +600218.27 5680779.29 97.50 +600218.38 5679418.08 97.50 +600218.42 5680617.39 97.50 +600218.55 5680819.03 96.25 +600218.66 5679208.51 96.25 +600218.74 5680865.54 97.50 +600219.05 5680028.95 96.25 +600219.15 5679270.33 97.50 +600219.17 5679744.59 97.50 +600219.21 5679381.13 96.25 +600219.25 5680099.25 96.25 +600219.47 5680462.41 97.50 +600219.47 5681184.90 96.25 +600219.53 5679149.06 96.00 +600219.67 5679398.54 96.25 +600219.73 5679993.71 97.50 +600219.85 5681193.56 96.25 +600219.89 5676672.64 101.25 +600219.94 5679642.53 96.25 +600219.97 5678275.83 98.75 +600219.97 5680935.29 97.50 +600220.01 5680855.82 97.50 +600220.02 5680893.77 96.25 +600220.04 5680789.04 97.50 +600220.10 5680396.29 97.50 +600220.12 5679169.61 97.50 +600220.32 5680770.79 97.50 +600220.45 5677008.85 100.00 +600220.52 5679155.45 96.25 +600220.60 5678950.22 97.50 +600220.62 5679465.69 96.25 +600220.71 5681272.36 97.50 +600220.71 5680837.53 96.25 +600221.17 5679608.27 96.25 +600221.20 5679129.29 96.25 +600221.78 5680921.56 97.50 +600221.86 5679139.40 96.00 +600222.07 5679189.11 97.50 +600222.20 5679179.23 97.50 +600222.36 5680873.67 97.50 +600222.56 5679437.05 96.25 +600222.64 5679211.94 96.00 +600222.66 5681144.21 96.25 +600222.71 5679224.91 96.25 +600222.99 5680727.47 96.25 +600223.12 5681210.57 97.50 +600223.25 5679426.31 97.50 +600223.30 5679373.27 96.25 +600223.30 5679373.27 97.50 +600223.30 5679594.36 96.25 +600223.30 5677680.67 98.75 +600223.45 5679200.22 96.25 +600223.47 5680880.33 96.25 +600223.49 5679406.66 96.25 +600223.49 5680846.53 97.50 +600223.56 5679124.18 97.50 +600223.69 5679278.59 97.50 +600223.71 5679363.63 97.50 +600223.74 5680609.22 97.50 +600223.76 5678199.70 98.75 +600223.90 5680798.16 97.50 +600223.92 5680909.31 97.50 +600223.94 5680453.47 97.50 +600224.11 5679447.40 96.00 +600224.43 5680828.27 96.25 +600224.46 5679316.37 97.50 +600224.52 5679082.38 97.50 +600224.61 5680405.22 97.50 +600224.72 5678997.18 97.50 +600224.81 5679325.84 97.50 +600224.88 5679354.12 97.50 +600224.88 5679461.04 96.00 +600225.04 5679634.35 96.25 +600225.04 5679736.51 97.50 +600225.04 5679156.98 96.00 +600225.14 5680818.69 96.25 +600225.18 5681200.69 96.25 +600225.21 5680967.02 97.50 +600225.21 5679203.12 96.00 +600225.33 5680053.87 96.25 +600225.34 5679163.72 96.25 +600225.34 5678267.40 98.75 +600225.41 5679017.94 97.50 +600225.51 5679585.91 96.25 +600225.69 5679306.80 97.50 +600225.89 5680836.95 97.50 +600225.99 5678941.83 97.50 +600226.25 5679287.83 97.50 +600226.30 5681005.91 97.50 +600226.37 5679147.93 96.00 +600226.43 5681206.50 96.25 +600226.55 5680898.67 97.50 +600226.56 5680110.83 97.50 +600226.66 5679335.28 97.50 +600226.73 5680105.74 96.25 +600226.78 5679137.47 96.25 +600226.81 5680807.64 97.50 +600227.08 5680444.05 97.50 +600227.09 5680600.29 97.50 +600227.14 5680958.18 97.50 +600227.19 5679191.53 96.25 +600227.34 5679055.74 97.50 +600227.37 5681178.80 96.25 +600227.53 5680827.17 97.50 +600227.58 5679344.89 97.50 +600227.58 5679297.34 97.50 +600227.93 5679434.47 97.50 +600227.97 5679999.21 97.50 +600228.27 5679576.64 96.25 +600228.27 5680817.29 97.50 +600228.27 5679602.39 96.25 +600228.28 5680032.10 96.25 +600228.37 5679172.60 96.25 +600228.56 5679165.95 96.00 +600228.60 5676677.55 101.25 +600228.62 5680414.26 97.50 +600228.70 5678837.66 97.50 +600228.73 5679471.44 96.25 +600228.79 5679182.09 96.25 +600228.80 5680424.26 97.50 +600228.94 5681266.79 97.50 +600228.97 5679194.23 96.00 +600228.98 5680434.26 97.50 +600229.00 5681189.57 96.25 +600229.06 5680590.82 97.50 +600229.09 5679211.19 96.00 +600229.29 5681136.75 96.25 +600229.41 5679412.98 96.25 +600229.48 5679217.64 96.25 +600229.49 5680938.34 97.50 +600229.63 5679625.56 96.25 +600229.67 5680896.35 96.25 +600229.94 5679443.69 96.25 +600230.03 5680772.80 97.50 +600230.24 5677006.89 100.00 +600230.51 5680879.11 97.50 +600230.61 5679264.46 96.25 +600230.73 5679184.88 96.00 +600230.80 5678259.03 98.75 +600230.81 5677687.27 98.75 +600230.82 5679371.98 96.25 +600230.86 5679156.48 96.00 +600230.90 5679728.44 97.50 +600231.16 5679175.24 96.00 +600231.36 5680924.34 97.50 +600231.48 5679362.18 96.25 +600231.57 5679146.18 96.25 +600231.86 5679274.14 96.25 +600231.95 5679452.47 96.00 +600232.24 5678934.02 97.50 +600232.26 5679088.50 97.50 +600232.34 5679128.76 97.50 +600232.62 5679257.40 96.25 +600232.70 5680729.21 96.25 +600232.72 5680884.06 96.25 +600232.73 5679283.94 96.25 +600233.03 5681211.07 97.50 +600233.08 5680040.28 96.25 +600233.29 5679352.52 96.25 +600233.41 5679011.94 97.50 +600233.56 5679463.99 96.00 +600233.61 5678199.86 98.75 +600233.67 5680049.18 96.25 +600233.68 5678992.90 97.50 +600233.71 5680094.25 96.25 +600233.71 5680910.37 97.50 +600233.75 5679202.86 96.00 +600233.84 5681182.28 96.25 +600233.84 5679293.70 96.25 +600233.92 5679303.54 96.25 +600233.97 5680971.63 97.50 +600234.00 5679313.37 96.25 +600234.32 5679323.20 96.25 +600234.38 5680085.97 96.25 +600234.50 5679165.37 96.00 +600234.53 5679373.49 96.25 +600234.57 5680582.78 97.50 +600234.68 5679333.02 96.25 +600234.88 5680116.38 97.50 +600235.04 5679342.85 96.25 +600235.08 5681199.43 96.25 +600235.35 5680110.65 96.25 +600235.90 5681003.63 97.50 +600235.97 5679155.10 96.25 +600236.00 5680962.80 97.50 +600236.01 5679375.11 96.25 +600236.01 5679375.11 97.50 +600236.12 5680901.01 97.50 +600236.15 5679439.38 97.50 +600236.18 5679380.78 96.25 +600236.34 5679386.45 96.25 +600236.34 5679386.45 97.50 +600236.40 5681260.25 97.50 +600236.40 5678250.76 98.75 +600236.41 5681206.06 96.25 +600236.53 5681129.91 96.25 +600236.54 5679394.85 96.25 +600236.70 5679720.31 97.50 +600236.92 5680003.59 97.50 +600236.93 5679193.74 96.00 +600236.93 5679599.85 96.25 +600236.99 5679476.86 96.25 +600237.03 5679058.14 97.50 +600237.04 5679577.53 96.25 +600237.17 5679619.54 96.25 +600237.23 5679174.63 96.00 +600237.31 5676682.46 101.25 +600237.31 5679211.50 96.25 +600237.66 5679364.16 96.25 +600237.72 5680102.13 96.25 +600237.73 5679184.14 96.00 +600237.77 5679449.82 96.25 +600237.78 5679416.27 96.25 +600237.78 5679416.27 97.50 +600238.31 5677693.87 98.75 +600238.53 5678926.25 97.50 +600238.59 5679296.30 96.00 +600238.69 5680777.55 97.50 +600238.69 5680942.09 97.50 +600238.69 5678837.43 97.50 +600239.32 5680898.93 96.25 +600239.68 5679287.24 96.00 +600239.84 5680882.47 97.50 +600239.89 5679402.52 96.25 +600239.89 5679314.88 96.00 +600240.01 5679164.19 96.25 +600240.09 5677005.29 100.00 +600240.23 5679456.57 96.00 +600240.45 5676898.02 100.00 +600240.51 5679004.90 97.50 +600240.54 5679093.91 97.50 +600240.56 5679366.21 97.50 +600240.62 5679305.40 96.00 +600240.63 5680928.01 97.50 +600240.78 5679354.84 96.25 +600240.83 5679262.51 96.25 +600240.89 5679202.46 96.25 +600241.13 5679133.34 97.50 +600241.21 5680576.06 97.50 +600241.22 5679469.02 96.00 +600241.78 5681172.10 97.50 +600241.78 5680888.24 96.25 +600241.82 5681189.63 97.50 +600241.84 5679585.93 96.25 +600242.00 5678242.49 98.75 +600242.05 5678995.88 97.50 +600242.24 5680083.88 96.25 +600242.33 5679712.07 97.50 +600242.59 5680730.41 96.25 +600242.71 5680914.08 97.50 +600242.74 5680976.23 97.50 +600242.93 5681210.97 97.50 +600243.08 5680122.11 97.50 +600243.12 5679410.10 96.25 +600243.15 5678202.57 98.75 +600243.43 5679484.45 96.25 +600243.48 5679243.11 97.50 +600243.67 5679323.30 96.00 +600243.68 5679173.43 96.25 +600243.79 5679192.95 96.25 +600244.08 5679345.58 96.25 +600244.19 5679594.62 96.25 +600244.21 5681123.55 96.25 +600244.30 5679605.83 96.25 +600244.38 5679444.28 97.50 +600244.44 5680114.74 96.25 +600244.85 5678918.50 97.50 +600244.85 5676904.37 100.00 +600244.86 5680905.41 97.50 +600244.86 5680967.44 97.50 +600244.92 5679183.24 96.25 +600244.97 5679381.91 97.50 +600245.00 5679251.23 97.50 +600245.02 5681198.43 96.25 +600245.11 5679357.30 97.50 +600245.12 5681182.05 97.50 +600245.29 5679114.82 97.75 +600245.35 5681255.98 97.50 +600245.42 5680096.63 96.50 +600245.55 5679615.15 96.25 +600245.77 5680106.16 96.25 +600245.78 5679455.70 96.25 +600245.79 5681004.12 97.50 +600245.80 5679421.34 97.50 +600245.81 5677700.47 98.75 +600245.82 5679463.78 96.00 +600245.93 5676891.14 100.00 +600246.16 5680007.38 97.50 +600246.35 5679061.75 97.50 +600246.38 5681205.87 96.25 +600246.42 5676686.46 101.25 +600246.82 5680783.13 97.50 +600247.24 5678234.00 98.75 +600247.35 5680947.09 97.50 +600247.41 5681176.68 97.50 +600247.63 5679336.41 96.25 +600247.80 5679284.52 96.00 +600247.86 5679316.34 96.00 +600247.97 5679703.83 97.50 +600248.20 5680903.50 96.25 +600248.63 5678836.52 97.50 +600248.82 5679268.00 96.25 +600248.98 5681167.02 97.50 +600249.15 5679235.42 97.50 +600249.17 5680885.83 97.50 +600249.35 5679472.26 96.00 +600249.38 5679098.37 97.50 +600249.64 5679307.02 96.00 +600249.70 5681195.12 97.50 +600249.84 5680931.82 97.50 +600249.89 5679137.96 97.50 +600249.97 5680571.79 97.50 +600249.97 5680088.43 96.25 +600250.03 5679182.62 97.50 +600250.03 5677004.27 100.00 +600250.54 5679416.73 96.25 +600250.64 5680892.85 96.25 +600250.98 5679172.95 97.50 +600251.05 5680981.56 97.50 +600251.17 5680127.97 97.50 +600251.18 5679327.24 96.25 +600251.29 5679349.50 97.50 +600251.35 5679487.90 96.25 +600251.47 5680918.57 97.50 +600251.49 5678208.07 98.75 +600251.60 5679463.76 96.25 +600251.81 5678911.43 97.50 +600251.96 5679395.65 97.50 +600252.02 5678225.22 98.75 +600252.16 5679297.85 96.00 +600252.32 5679192.13 97.50 +600252.49 5680731.62 96.25 +600252.66 5681118.23 96.25 +600252.69 5679448.91 97.50 +600252.84 5681210.42 97.50 +600252.84 5679427.83 97.50 +600252.86 5679593.86 96.25 +600253.00 5679256.24 97.50 +600253.31 5677707.07 98.75 +600253.41 5680910.30 97.50 +600253.57 5676885.83 100.00 +600253.61 5676905.41 100.00 +600253.64 5680972.21 97.50 +600253.83 5680013.41 97.50 +600253.98 5679695.86 97.50 +600253.99 5680635.95 97.50 +600254.11 5680789.86 97.50 +600254.13 5680116.90 96.25 +600254.30 5681178.55 97.50 +600254.57 5679288.66 96.00 +600254.62 5680107.04 96.25 +600254.77 5679383.20 97.50 +600254.92 5679318.15 96.25 +600254.93 5681253.92 97.50 +600254.95 5679201.53 97.50 +600255.17 5679066.43 97.50 +600255.35 5680626.29 97.50 +600255.61 5681005.16 97.50 +600255.69 5680952.54 97.50 +600255.85 5676689.81 101.25 +600255.85 5679404.70 97.50 +600256.01 5678216.35 98.75 +600256.19 5679471.13 96.25 +600256.23 5679228.70 97.50 +600256.34 5680094.80 96.25 +600257.04 5681174.30 97.50 +600257.07 5680908.10 96.25 +600257.69 5679103.73 97.50 +600257.73 5679423.61 96.25 +600257.73 5679143.83 97.50 +600257.83 5679341.94 97.50 +600257.87 5680845.40 97.50 +600257.97 5680643.24 97.50 +600258.02 5679271.44 96.25 +600258.05 5679392.74 97.50 +600258.07 5679308.89 96.25 +600258.20 5679210.76 97.50 +600258.40 5680616.97 97.50 +600258.48 5681164.15 97.50 +600258.50 5680889.18 97.50 +600258.51 5678834.99 97.50 +600258.74 5680567.55 97.50 +600258.94 5680935.90 97.50 +600259.05 5680987.38 97.50 +600259.18 5680021.71 97.50 +600259.53 5681196.27 97.50 +600259.54 5679434.48 97.50 +600259.55 5680133.42 97.50 +600259.62 5677005.96 100.00 +600259.70 5679443.82 97.50 +600259.71 5679299.19 96.25 +600259.71 5679220.42 97.50 +600259.82 5680896.43 96.25 +600259.96 5678905.65 97.50 +600260.00 5680102.60 96.25 +600260.10 5679687.97 97.50 +600260.16 5680923.21 97.50 +600260.20 5679172.49 97.50 +600260.36 5679587.55 96.25 +600260.73 5680797.24 97.50 +600260.81 5677713.67 98.75 +600260.98 5679486.85 96.25 +600261.25 5680627.52 97.25 +600261.29 5680839.10 97.50 +600261.59 5681113.87 96.25 +600262.10 5680914.94 97.50 +600262.26 5679259.36 97.50 +600262.40 5676882.91 100.00 +600262.42 5680732.14 96.25 +600262.42 5680976.99 97.50 +600262.45 5679412.20 97.50 +600262.72 5681209.54 97.50 +600262.75 5676903.80 100.00 +600263.01 5679505.87 96.25 +600263.15 5680318.79 97.50 +600263.28 5680959.04 97.50 +600263.29 5680608.50 97.50 +600263.31 5679496.14 96.25 +600263.44 5680030.74 97.50 +600263.72 5680328.65 97.50 +600263.96 5680118.58 96.25 +600264.02 5679290.62 96.25 +600264.06 5679431.12 96.25 +600264.15 5679334.24 97.50 +600264.15 5679386.58 97.50 +600264.22 5681178.24 97.50 +600264.41 5680309.19 97.50 +600264.45 5676892.57 100.50 +600264.57 5679069.82 97.50 +600264.58 5680851.96 97.50 +600264.69 5680637.55 97.50 +600264.81 5681252.87 97.50 +600264.90 5679150.66 97.50 +600265.18 5679679.42 97.50 +600265.37 5681006.82 97.50 +600265.51 5679468.27 96.25 +600265.58 5676692.05 101.25 +600265.80 5679109.42 97.50 +600265.84 5680338.12 97.50 +600265.94 5680912.69 96.25 +600266.49 5679397.20 97.50 +600266.82 5681173.60 97.50 +600266.88 5679580.01 96.25 +600267.32 5680992.80 97.50 +600267.42 5679273.82 96.25 +600267.55 5680804.44 97.50 +600267.74 5680299.89 97.50 +600267.79 5680628.26 97.50 +600267.85 5680892.49 97.50 +600267.86 5681160.95 97.50 +600267.92 5679324.98 97.50 +600267.95 5680940.18 97.50 +600268.13 5680138.56 97.50 +600268.20 5680923.75 98.00 +600268.24 5678832.78 97.50 +600268.40 5678900.31 97.50 +600268.46 5677720.10 98.75 +600268.47 5680039.34 97.50 +600268.55 5679439.99 96.25 +600268.85 5680927.86 97.50 +600268.92 5679176.88 97.50 +600268.95 5677009.51 100.00 +600269.18 5679419.59 97.50 +600269.42 5679513.36 96.25 +600269.44 5681196.13 97.50 +600269.57 5679459.37 96.25 +600269.74 5680897.61 96.25 +600269.80 5679670.57 97.50 +600270.01 5680347.08 97.50 +600270.19 5680602.50 97.50 +600270.19 5679449.58 96.25 +600270.21 5680618.76 97.50 +600270.42 5680840.08 97.50 +600270.80 5679284.11 96.25 +600270.81 5680919.54 97.50 +600271.26 5676880.07 100.00 +600271.27 5681111.42 96.25 +600271.28 5679347.39 96.25 +600271.30 5679356.70 96.25 +600271.45 5680981.23 97.50 +600271.54 5676900.94 100.00 +600271.69 5679315.72 97.50 +600271.90 5679258.93 97.50 +600272.08 5680963.66 97.50 +600272.09 5680291.42 97.50 +600272.17 5679157.38 97.50 +600272.39 5680732.14 96.25 +600272.59 5681208.58 97.50 +600272.82 5679365.77 96.25 +600273.19 5679769.65 97.50 +600273.39 5679759.78 97.50 +600273.41 5679572.47 96.25 +600273.43 5680855.67 97.50 +600273.54 5679389.90 97.50 +600273.78 5680120.27 96.25 +600273.85 5680047.75 97.50 +600273.92 5679115.10 97.50 +600273.97 5680356.13 97.50 +600274.04 5681178.59 97.50 +600274.11 5680609.77 97.50 +600274.26 5679306.07 97.50 +600274.26 5679068.97 97.50 +600274.43 5679661.72 97.50 +600274.43 5679338.63 96.25 +600274.65 5681251.50 97.50 +600274.77 5679749.97 97.50 +600274.81 5681009.71 97.50 +600274.84 5680917.23 96.25 +600274.95 5679427.71 97.50 +600275.36 5676694.13 101.25 +600275.63 5679740.11 97.50 +600275.65 5679400.29 97.50 +600275.91 5680851.43 97.20 +600275.96 5680997.62 97.50 +600275.99 5679778.62 97.50 +600276.03 5680809.59 97.50 +600276.06 5679730.22 97.50 +600276.24 5677726.37 98.75 +600276.54 5680143.96 97.50 +600276.71 5681174.29 97.50 +600276.82 5680944.74 97.50 +600276.85 5679720.35 97.50 +600276.97 5681157.02 97.50 +600277.04 5679182.34 97.50 +600277.08 5679296.48 97.50 +600277.08 5678895.34 97.50 +600277.18 5679272.55 96.25 +600277.23 5680895.66 97.50 +600277.41 5680365.37 97.50 +600277.54 5680932.50 97.50 +600277.57 5679329.87 96.25 +600277.89 5678830.14 97.50 +600278.20 5679517.03 96.25 +600278.29 5677013.07 100.00 +600278.36 5679710.65 97.50 +600278.47 5680414.10 97.50 +600278.94 5679436.77 97.50 +600279.00 5679564.23 96.25 +600279.12 5680843.95 97.50 +600279.24 5680056.15 97.50 +600279.28 5681197.36 97.50 +600279.39 5679653.06 97.50 +600279.43 5680423.93 97.50 +600279.55 5680924.08 97.50 +600279.63 5679349.26 96.50 +600279.68 5680898.66 96.25 +600279.83 5680404.34 97.50 +600279.86 5676896.78 100.00 +600279.86 5680374.94 97.50 +600280.01 5676876.92 100.00 +600280.29 5679281.53 96.25 +600280.48 5679162.77 97.50 +600280.61 5679122.33 97.50 +600280.69 5680286.86 97.50 +600280.80 5680984.76 97.50 +600280.90 5679367.99 96.25 +600280.90 5680384.70 97.50 +600281.05 5681109.60 96.25 +600281.05 5680433.64 97.50 +600281.12 5680394.58 97.50 +600281.15 5680967.87 97.50 +600281.62 5679257.79 97.50 +600281.78 5679321.62 96.25 +600282.22 5679701.52 97.50 +600282.24 5680730.87 96.25 +600282.28 5680859.39 97.50 +600282.34 5680538.25 97.50 +600282.43 5681207.33 97.50 +600283.05 5679445.55 97.50 +600283.07 5679064.84 97.50 +600283.14 5679389.23 97.50 +600283.25 5680592.38 97.50 +600283.34 5680122.71 96.25 +600283.52 5680443.21 97.50 +600283.64 5681180.29 97.50 +600283.72 5680612.27 97.50 +600283.74 5680921.76 96.25 +600283.78 5679289.56 97.50 +600283.90 5680622.22 97.50 +600284.01 5677732.64 98.75 +600284.20 5681012.86 97.50 +600284.21 5680602.31 97.50 +600284.22 5679644.33 97.50 +600284.41 5681249.63 97.50 +600284.50 5680814.73 97.50 +600284.63 5680064.55 97.50 +600284.65 5678888.93 97.50 +600284.73 5681002.21 97.50 +600284.78 5680149.62 97.50 +600284.79 5679779.14 97.50 +600285.14 5676696.21 101.25 +600285.19 5679187.74 97.50 +600285.27 5680949.99 97.50 +600285.28 5679399.49 97.50 +600285.29 5680528.83 97.50 +600285.37 5680631.95 97.50 +600285.45 5679556.87 96.25 +600285.77 5679360.44 96.25 +600286.09 5681153.12 97.50 +600286.22 5681176.63 97.50 +600286.25 5680937.08 97.50 +600286.86 5679692.82 97.50 +600286.93 5679271.29 96.25 +600286.93 5679129.95 97.50 +600287.12 5680896.34 97.50 +600287.41 5676891.41 100.00 +600287.47 5680848.68 97.50 +600287.53 5678827.50 97.50 +600287.62 5677016.63 100.00 +600287.63 5681201.21 97.50 +600287.79 5679351.46 96.25 +600288.13 5679517.81 96.25 +600288.18 5680519.38 97.50 +600288.32 5680451.84 97.50 +600288.33 5680928.55 97.50 +600288.41 5679342.20 96.25 +600288.41 5679332.89 96.25 +600288.53 5680539.92 96.25 +600288.56 5676875.82 100.00 +600288.69 5679635.40 97.50 +600288.93 5679167.90 97.50 +600289.00 5679323.68 96.25 +600289.09 5679224.89 97.75 +600289.21 5680973.76 97.50 +600289.62 5680899.64 96.25 +600289.79 5679279.00 96.25 +600290.15 5680072.88 97.50 +600290.32 5680864.64 97.50 +600290.44 5681194.11 97.50 +600290.49 5680986.47 97.50 +600290.57 5680286.86 97.50 +600290.61 5679139.15 97.50 +600290.67 5680640.41 97.50 +600290.77 5679254.74 97.50 +600290.82 5677739.80 98.75 +600290.86 5679058.56 97.50 +600290.94 5680509.90 97.50 +600291.01 5681109.01 96.25 +600291.15 5680461.07 97.50 +600291.23 5679383.50 97.50 +600291.43 5680530.96 96.25 +600291.50 5676883.50 100.00 +600291.59 5679447.38 97.50 +600291.69 5678881.83 97.50 +600291.76 5679283.53 97.50 +600291.93 5679772.43 97.50 +600292.06 5680729.13 96.25 +600292.12 5680470.89 97.50 +600292.33 5680119.39 96.25 +600292.36 5679684.58 97.50 +600292.62 5680926.35 96.25 +600292.67 5680820.32 97.50 +600292.82 5680500.20 97.50 +600292.97 5681007.48 97.50 +600293.02 5680155.28 97.50 +600293.16 5679626.48 97.50 +600293.25 5681181.33 97.50 +600293.42 5680955.75 97.50 +600293.59 5679551.18 96.25 +600293.60 5679192.72 97.50 +600293.64 5681014.43 97.50 +600293.64 5680490.37 97.50 +600293.96 5681247.12 97.50 +600294.27 5680480.51 97.50 +600294.29 5679148.35 97.50 +600294.32 5680522.00 96.25 +600294.55 5679395.75 97.50 +600294.96 5676698.07 101.25 +600294.99 5680941.64 97.50 +600295.24 5681149.30 97.50 +600295.25 5681186.26 97.50 +600295.26 5681176.08 97.50 +600295.37 5680854.14 97.50 +600295.37 5680918.69 96.00 +600295.53 5680981.22 97.50 +600295.67 5680081.19 97.50 +600295.84 5679267.54 96.25 +600295.87 5679763.71 97.50 +600296.11 5680648.77 97.50 +600296.15 5677021.71 100.00 +600296.37 5677748.11 98.75 +600296.78 5680658.34 97.50 +600296.79 5681200.11 97.50 +600296.80 5679375.27 97.50 +600297.02 5680897.00 97.50 +600297.11 5680933.01 97.50 +600297.18 5678824.86 97.50 +600297.22 5680513.04 96.25 +600297.46 5679166.70 97.50 +600297.63 5679617.55 97.50 +600297.78 5679157.62 97.50 +600297.91 5679754.02 97.50 +600298.06 5679518.59 96.25 +600298.23 5679051.83 97.50 +600298.30 5679676.69 97.50 +600298.76 5678874.76 97.50 +600299.07 5680667.88 97.50 +600299.12 5680868.44 97.50 +600299.22 5680503.84 96.25 +600299.24 5679276.28 96.25 +600299.53 5679543.17 96.25 +600299.53 5680900.86 96.25 +600299.59 5679250.50 97.50 +600299.86 5679744.31 97.50 +600299.98 5680723.27 96.25 +600300.01 5679442.36 97.50 +600300.15 5680288.55 97.50 +600300.31 5680826.65 97.50 +600300.62 5681123.41 97.50 +600300.69 5680113.95 96.25 +600300.90 5681107.77 96.25 +600301.02 5680926.47 96.00 +600301.09 5679280.05 97.50 +600301.18 5680161.07 97.50 +600301.20 5680089.50 97.50 +600301.34 5680494.68 96.25 +600301.41 5680931.08 96.25 +600301.70 5677756.54 98.75 +600301.71 5680961.29 97.50 +600301.88 5679197.93 97.50 +600302.20 5679389.45 97.50 +600302.53 5679328.02 97.50 +600302.53 5681169.57 97.50 +600302.84 5681242.68 97.50 +600303.30 5679609.35 97.50 +600303.45 5680467.21 96.25 +600303.71 5680858.88 97.50 +600303.72 5680946.20 97.50 +600303.81 5680919.35 96.00 +600303.95 5679318.20 97.50 +600304.10 5681131.33 97.50 +600304.24 5680485.72 96.25 +600304.31 5677027.47 100.00 +600304.40 5681145.48 97.50 +600304.54 5679262.96 96.25 +600304.63 5679371.68 97.50 +600304.82 5676699.71 101.25 +600304.83 5680476.48 96.25 +600304.92 5679669.33 97.50 +600305.22 5679044.69 97.50 +600305.31 5680675.48 97.50 +600305.55 5679736.53 97.50 +600305.77 5680937.69 97.50 +600306.09 5678867.97 97.50 +600306.12 5680459.30 96.25 +600306.14 5681203.37 97.50 +600306.17 5677765.48 98.75 +600306.18 5679380.81 97.50 +600306.25 5681116.06 97.50 +600306.29 5678820.90 97.50 +600306.77 5680097.79 97.50 +600306.81 5679516.06 96.25 +600306.91 5680897.68 97.50 +600307.01 5679308.71 97.50 +600307.66 5679435.93 97.50 +600307.70 5680716.97 96.25 +600307.79 5679245.33 97.50 +600307.86 5680833.07 97.50 +600307.86 5679538.27 96.25 +600308.24 5680167.99 97.50 +600308.30 5679333.55 97.50 +600308.38 5680870.37 97.50 +600308.69 5679273.56 96.25 +600309.13 5679601.24 97.50 +600309.21 5680932.11 96.00 +600309.29 5680902.81 96.25 +600309.44 5680291.91 97.50 +600309.84 5681163.37 97.50 +600309.94 5680111.87 96.25 +600309.98 5680936.21 96.25 +600310.01 5679203.37 97.50 +600310.05 5680966.76 97.50 +600310.14 5680917.93 96.25 +600310.38 5680420.41 96.25 +600310.53 5679299.36 97.50 +600310.64 5677774.42 98.75 +600310.65 5679281.20 97.50 +600310.70 5680926.47 96.00 +600310.79 5681106.77 96.25 +600310.86 5680749.22 97.50 +600310.97 5680429.57 96.25 +600311.20 5680864.83 97.50 +600311.55 5679661.96 97.50 +600311.83 5681238.45 97.50 +600311.83 5680411.11 96.25 +600312.30 5679037.62 97.50 +600312.33 5680452.22 96.25 +600312.34 5679729.31 97.50 +600312.41 5680739.64 97.50 +600312.42 5677033.30 100.00 +600312.52 5680950.62 97.50 +600313.20 5679508.75 96.25 +600313.22 5681141.00 97.50 +600313.29 5679258.49 96.25 +600313.30 5681134.09 97.50 +600313.52 5680943.73 97.50 +600313.53 5679289.82 97.50 +600314.05 5680401.99 96.25 +600314.11 5680657.28 97.50 +600314.14 5680674.48 97.50 +600314.32 5680175.93 97.50 +600314.43 5679681.37 97.25 +600314.47 5680438.23 96.25 +600314.48 5678862.77 97.50 +600314.49 5681208.14 97.50 +600314.68 5676701.35 101.25 +600314.78 5679498.92 96.25 +600314.87 5681111.16 97.50 +600314.96 5679593.14 97.50 +600314.99 5680103.22 97.50 +600315.08 5678816.14 97.50 +600315.11 5677783.35 98.75 +600315.15 5679238.89 97.50 +600315.18 5679211.29 97.50 +600315.30 5679429.50 97.50 +600315.34 5680839.59 97.50 +600315.63 5679327.07 97.50 +600315.73 5680914.32 96.25 +600316.43 5679489.10 96.25 +600316.67 5680899.45 97.50 +600316.80 5680392.98 96.25 +600317.27 5679535.24 96.25 +600317.37 5680714.80 96.25 +600317.40 5680924.70 96.25 +600317.49 5680755.62 97.50 +600317.50 5681166.29 97.50 +600317.51 5679654.19 97.50 +600317.95 5679721.15 97.50 +600318.14 5679270.84 96.25 +600318.31 5679230.07 97.50 +600318.37 5679479.33 96.25 +600318.38 5679220.48 97.50 +600318.39 5680972.23 97.50 +600318.40 5680665.80 97.50 +600318.45 5680116.68 96.25 +600318.46 5680295.88 97.50 +600318.49 5680941.44 96.25 +600318.54 5680445.15 96.25 +600318.85 5680905.72 96.25 +600319.45 5679030.64 97.50 +600319.58 5677792.29 98.75 +600320.14 5680733.31 97.50 +600320.35 5681216.10 97.50 +600320.43 5679318.32 97.50 +600320.76 5681107.32 96.25 +600320.80 5679585.04 97.50 +600320.81 5679469.72 96.25 +600320.85 5680183.50 97.50 +600321.09 5681234.85 97.50 +600321.16 5679252.65 96.25 +600321.18 5679644.99 97.50 +600321.31 5677037.55 100.00 +600321.42 5680954.83 97.50 +600321.82 5680948.90 97.50 +600322.29 5681174.95 97.50 +600322.83 5679422.93 97.50 +600322.91 5679712.68 97.50 +600323.32 5680915.74 96.00 +600323.67 5680108.14 97.50 +600323.69 5678858.90 97.50 +600323.80 5679309.14 97.50 +600323.88 5678811.38 97.50 +600323.89 5679299.14 97.50 +600323.97 5679289.14 97.50 +600324.00 5680844.36 97.50 +600324.05 5677801.23 98.75 +600324.16 5680908.67 96.00 +600324.23 5681111.37 97.50 +600324.48 5680919.02 96.25 +600324.57 5676702.66 101.25 +600324.86 5679635.79 97.50 +600325.25 5680123.89 96.25 +600325.34 5680930.77 96.25 +600325.47 5679461.02 96.25 +600325.58 5679264.77 96.25 +600325.75 5680761.25 97.50 +600325.76 5679703.19 97.50 +600325.93 5680902.81 97.50 +600326.17 5680978.45 97.50 +600326.63 5679576.94 97.50 +600326.80 5679279.60 97.50 +600327.03 5680946.62 96.25 +600327.15 5680712.89 96.25 +600327.18 5680300.51 97.50 +600327.23 5679534.61 96.25 +600327.41 5679024.59 97.50 +600327.48 5680190.99 97.50 +600327.95 5680727.09 97.50 +600328.32 5680908.88 96.25 +600328.33 5679246.07 96.25 +600328.50 5679693.68 97.50 +600328.51 5677810.16 98.75 +600328.88 5681228.95 97.50 +600329.60 5681218.34 97.50 +600329.72 5680560.41 96.25 +600329.78 5679627.22 97.50 +600329.97 5679270.12 97.50 +600330.28 5679416.27 97.50 +600330.53 5681177.46 97.50 +600330.58 5680958.37 97.50 +600330.60 5681108.93 96.25 +600330.67 5680115.12 97.50 +600330.68 5680953.21 97.50 +600330.73 5679256.67 96.25 +600330.79 5679684.04 97.50 +600330.88 5677040.44 100.00 +600330.91 5680609.70 96.25 +600331.26 5679146.75 97.50 +600331.63 5680131.55 96.25 +600331.68 5679217.78 96.25 +600331.71 5680619.13 96.25 +600331.84 5679136.77 97.50 +600332.03 5680553.28 96.25 +600332.21 5680920.27 96.00 +600332.32 5679453.78 96.25 +600332.38 5679568.78 97.50 +600332.74 5679126.83 97.50 +600332.77 5679237.37 96.25 +600332.81 5679227.55 96.25 +600332.90 5678807.07 97.50 +600332.90 5680848.73 97.50 +600332.98 5679156.58 97.50 +600332.98 5677819.10 98.75 +600333.14 5680924.01 96.25 +600333.24 5678855.95 97.50 +600333.35 5680697.53 96.25 +600333.44 5680628.45 96.25 +600333.45 5681114.89 97.50 +600333.50 5680912.12 96.00 +600333.72 5680363.71 96.25 +600333.74 5680936.15 96.25 +600333.91 5680984.73 97.50 +600333.94 5679097.32 97.50 +600333.97 5679674.80 97.50 +600334.00 5680766.88 97.50 +600334.14 5679261.03 97.50 +600334.56 5676702.55 101.25 +600334.79 5679107.22 97.50 +600334.79 5679247.77 96.25 +600334.88 5679117.07 97.50 +600334.91 5679166.39 97.50 +600334.98 5680906.88 97.50 +600335.06 5680637.77 96.25 +600335.11 5679618.89 97.50 +600335.20 5680197.33 97.50 +600335.32 5680568.66 96.25 +600335.33 5680647.25 96.25 +600335.36 5679176.36 97.50 +600335.37 5679018.54 97.50 +600335.37 5679087.43 97.50 +600335.61 5680951.74 96.25 +600336.19 5680304.07 97.50 +600336.39 5680706.73 96.25 +600336.49 5680688.34 96.25 +600336.81 5679186.20 97.50 +600336.87 5680722.57 97.50 +600336.99 5680656.54 96.25 +600336.99 5679533.13 96.25 +600337.00 5680713.90 96.25 +600337.12 5681223.67 97.50 +600337.23 5680122.65 97.50 +600337.39 5680139.67 96.25 +600337.41 5680611.89 96.25 +600337.45 5677828.04 98.75 +600337.60 5679212.23 96.25 +600337.61 5680912.51 96.25 +600337.98 5679409.92 97.50 +600338.10 5679560.60 97.50 +600338.35 5679251.96 97.50 +600338.71 5681214.46 97.50 +600339.22 5679078.28 97.50 +600339.23 5679195.90 97.50 +600339.25 5679446.63 96.25 +600339.62 5680597.11 96.25 +600339.65 5679666.69 97.50 +600339.77 5680587.24 96.25 +600339.83 5679239.32 96.25 +600339.96 5681112.25 96.25 +600340.22 5680577.34 96.25 +600340.45 5681177.40 97.50 +600340.57 5677042.85 100.00 +600340.99 5680925.01 96.00 +600341.08 5679220.14 96.25 +600341.31 5680773.67 97.50 +600341.34 5678801.77 97.50 +600341.39 5679229.96 96.25 +600341.78 5679611.56 97.50 +600341.85 5680853.00 97.50 +600341.85 5680928.89 96.25 +600341.89 5680990.72 97.50 +600341.92 5677836.97 98.75 +600341.99 5680552.96 96.25 +600342.29 5680941.31 96.25 +600342.32 5680916.69 96.00 +600342.44 5679242.84 97.50 +600342.44 5680680.35 96.25 +600342.71 5680148.10 96.25 +600342.83 5679205.09 97.50 +600342.97 5680203.62 97.50 +600343.09 5680606.45 96.25 +600343.12 5681117.08 97.50 +600343.15 5678854.75 97.50 +600343.21 5680361.17 96.25 +600343.36 5680619.27 96.25 +600343.38 5679012.56 97.50 +600343.55 5680130.38 97.50 +600343.58 5680692.85 97.50 +600343.61 5679069.29 97.50 +600343.83 5679552.42 97.50 +600344.13 5680956.95 96.25 +600344.28 5680660.35 96.25 +600344.38 5680640.16 96.75 +600344.38 5676701.22 101.25 +600344.52 5680909.53 97.50 +600345.50 5679658.75 97.50 +600345.71 5680701.88 97.50 +600345.89 5679439.23 96.25 +600346.06 5679404.04 97.50 +600346.07 5680304.38 97.50 +600346.17 5680708.62 96.25 +600346.23 5680720.84 97.50 +600346.24 5681219.71 97.50 +600346.32 5679529.60 96.25 +600346.46 5679233.69 97.50 +600346.50 5679362.53 97.50 +600346.65 5680916.76 96.25 +600346.71 5677845.66 98.75 +600346.86 5680715.36 96.25 +600346.89 5681208.84 97.50 +600346.94 5679213.90 97.50 +600346.99 5681097.53 96.25 +600347.21 5679223.89 97.50 +600347.45 5680156.87 96.25 +600347.50 5680683.66 97.50 +600347.85 5680781.18 97.50 +600347.93 5681159.18 97.50 +600348.44 5679604.23 97.50 +600348.49 5680672.43 96.25 +600349.19 5680626.73 96.25 +600349.25 5679061.05 97.50 +600349.48 5679370.39 97.50 +600349.54 5680930.14 96.00 +600349.55 5678796.06 97.50 +600349.64 5680613.94 96.25 +600349.77 5681112.86 96.25 +600349.87 5680996.70 97.50 +600350.09 5679544.66 97.50 +600350.30 5677045.12 100.00 +600350.37 5681177.40 97.50 +600350.46 5680947.02 96.25 +600350.52 5680922.38 96.00 +600350.61 5680653.30 96.25 +600350.65 5680933.62 96.25 +600350.81 5680354.97 96.25 +600350.90 5680136.72 97.50 +600350.90 5679353.73 97.50 +600351.30 5680855.86 97.50 +600351.49 5679006.72 97.50 +600351.69 5679305.86 97.50 +600352.00 5679431.36 96.25 +600352.03 5680165.72 96.25 +600352.07 5680207.56 97.50 +600352.28 5681104.82 96.25 +600352.29 5679296.10 97.50 +600352.53 5680962.36 96.25 +600352.54 5681120.14 97.50 +600352.79 5680598.86 97.50 +600353.03 5681150.71 97.50 +600353.10 5678853.74 97.50 +600353.11 5680608.35 97.50 +600353.15 5680635.34 96.25 +600353.31 5680644.30 96.25 +600353.56 5680913.37 97.50 +600353.59 5679315.67 97.50 +600353.65 5679653.21 97.50 +600353.80 5680789.20 97.50 +600353.85 5681165.22 97.50 +600353.99 5680705.59 97.50 +600353.99 5676698.45 101.25 +600354.13 5679398.15 97.50 +600354.18 5679442.03 96.00 +600354.30 5679523.85 96.25 +600354.40 5677852.03 98.75 +600354.73 5680677.03 97.50 +600354.89 5680664.78 96.25 +600354.98 5680589.42 97.50 +600355.04 5679052.90 97.50 +600355.06 5681203.23 97.50 +600355.33 5680921.66 96.25 +600355.39 5679344.94 97.50 +600355.40 5681215.87 97.50 +600355.51 5679325.48 97.50 +600355.92 5679451.75 96.00 +600355.96 5680710.51 96.25 +600356.12 5680722.31 97.50 +600356.18 5681094.31 96.25 +600356.40 5679287.13 97.50 +600356.49 5679536.99 97.50 +600356.52 5679598.71 97.50 +600356.73 5680716.73 96.25 +600356.93 5680620.66 96.25 +600357.10 5679432.72 96.00 +600357.13 5680174.23 96.25 +600357.30 5680347.48 96.25 +600357.45 5679335.28 97.50 +600357.83 5678790.46 97.50 +600358.17 5679423.55 96.25 +600358.27 5680934.97 96.00 +600358.29 5681002.03 97.50 +600358.30 5680953.22 96.25 +600358.31 5680580.26 97.50 +600358.82 5680927.92 96.00 +600358.90 5681142.66 97.50 +600358.98 5679372.95 97.50 +600359.32 5680615.36 97.50 +600359.45 5680938.35 96.25 +600359.51 5679645.23 97.50 +600359.61 5681174.03 97.50 +600359.63 5679000.91 97.50 +600360.02 5677047.40 100.00 +600360.16 5680140.29 97.50 +600360.36 5680968.52 96.25 +600360.94 5679044.83 97.50 +600360.94 5680858.17 97.50 +600361.04 5680796.08 97.50 +600361.28 5680657.14 96.25 +600361.46 5679278.57 97.50 +600361.48 5680210.93 97.50 +600361.51 5680571.05 97.50 +600361.76 5679517.22 96.25 +600361.93 5681123.29 97.50 +600361.96 5679455.76 96.00 +600362.09 5680918.43 97.50 +600362.18 5679392.23 97.50 +600362.26 5679424.53 96.00 +600362.66 5680670.95 97.50 +600362.77 5677857.46 98.75 +600362.83 5681161.52 97.50 +600362.90 5680628.24 96.25 +600362.97 5679529.40 97.50 +600362.97 5681147.23 96.25 +600363.03 5678853.83 97.50 +600363.04 5679268.70 97.50 +600363.27 5676694.75 101.25 +600363.54 5681198.09 97.50 +600363.56 5680181.86 96.25 +600363.66 5680927.17 96.25 +600363.83 5680340.01 96.25 +600363.83 5680647.54 96.25 +600363.89 5680706.90 97.50 +600364.07 5680609.93 97.50 +600364.29 5679636.67 97.50 +600364.59 5680561.81 97.50 +600364.61 5681212.14 97.50 +600364.63 5679258.84 97.50 +600364.80 5679416.12 96.25 +600365.08 5680637.73 96.25 +600365.21 5680960.40 96.25 +600365.62 5679595.73 97.50 +600365.75 5680712.39 96.25 +600365.80 5681008.53 97.50 +600365.82 5681135.65 97.50 +600366.01 5680600.43 97.50 +600366.06 5680723.06 97.50 +600366.17 5681094.44 96.25 +600366.18 5678784.96 97.50 +600366.22 5679248.97 97.50 +600366.47 5680940.62 96.00 +600366.61 5680718.07 96.25 +600367.08 5680933.51 96.00 +600367.41 5680944.38 96.25 +600367.46 5679376.98 97.50 +600367.49 5679183.71 97.50 +600367.51 5679037.30 97.50 +600367.64 5679627.35 97.50 +600367.67 5680552.56 97.50 +600367.75 5681153.42 96.25 +600367.84 5678995.20 97.50 +600367.88 5680975.10 96.25 +600368.31 5680802.94 97.50 +600368.51 5680663.43 97.50 +600369.05 5681171.17 97.50 +600369.12 5679385.38 97.50 +600369.21 5679510.60 96.25 +600369.52 5679417.76 96.00 +600369.65 5679521.99 97.50 +600369.68 5680591.40 97.50 +600369.76 5680862.58 97.50 +600369.82 5679192.47 97.50 +600369.83 5677049.24 100.00 +600370.08 5680141.36 97.50 +600370.29 5680924.01 97.50 +600370.29 5681141.49 96.25 +600370.63 5680188.71 96.25 +600370.68 5680900.01 98.00 +600370.73 5679700.43 97.50 +600370.86 5679240.22 97.50 +600370.99 5679174.35 97.50 +600371.11 5680213.54 97.50 +600371.15 5681156.04 97.50 +600371.25 5679618.13 97.50 +600371.29 5680333.48 96.25 +600371.29 5677862.68 98.75 +600371.40 5680653.87 97.50 +600371.43 5679452.80 96.00 +600371.44 5679408.69 96.25 +600371.53 5681125.77 97.50 +600371.93 5680967.80 96.25 +600372.13 5681193.13 97.50 +600372.26 5680932.24 96.25 +600372.57 5676691.14 101.25 +600372.93 5678855.19 97.50 +600373.03 5681015.41 97.50 +600373.52 5681144.55 96.00 +600373.69 5679608.65 97.50 +600373.76 5681208.27 97.50 +600373.83 5680707.90 97.50 +600373.89 5677880.69 98.50 +600373.97 5678778.77 97.50 +600374.03 5680644.23 97.50 +600374.04 5679029.73 97.50 +600374.13 5679598.85 97.50 +600374.35 5680946.73 96.00 +600374.45 5680582.96 97.50 +600374.53 5679691.95 97.50 +600374.66 5679346.79 96.25 +600375.27 5680950.53 96.25 +600375.35 5681132.63 97.50 +600375.40 5680981.67 96.25 +600375.53 5680714.26 96.25 +600375.56 5679705.48 97.50 +600375.59 5679337.32 96.25 +600375.59 5679502.97 96.25 +600375.64 5680938.60 96.00 +600375.77 5680809.59 97.50 +600375.94 5679231.62 97.50 +600376.03 5680634.46 97.50 +600376.05 5678989.49 97.50 +600376.05 5680723.29 97.50 +600376.13 5681093.96 96.25 +600376.34 5679514.57 97.50 +600376.37 5681149.03 96.25 +600376.48 5680719.40 96.25 +600376.77 5679410.98 96.00 +600377.13 5680624.53 97.50 +600377.18 5679166.51 97.50 +600377.58 5680614.55 97.50 +600377.59 5679198.15 97.50 +600377.95 5679401.17 96.25 +600377.96 5677877.33 98.50 +600378.35 5680218.44 97.50 +600378.39 5680867.47 97.50 +600378.51 5680929.54 97.50 +600378.59 5679355.02 96.25 +600378.75 5680326.95 96.25 +600378.81 5681169.40 97.50 +600379.18 5681137.56 96.25 +600379.23 5681150.28 97.50 +600379.25 5680193.74 96.25 +600379.31 5677888.65 98.50 +600379.39 5680974.41 96.25 +600379.41 5679683.78 97.50 +600379.45 5680604.93 97.50 +600379.45 5679021.32 97.50 +600379.74 5677050.50 100.00 +600379.81 5677867.89 98.75 +600379.83 5680140.30 97.50 +600380.12 5680575.04 97.50 +600380.26 5681022.28 97.50 +600380.42 5681187.68 97.50 +600380.52 5680937.85 96.25 +600380.77 5679222.87 97.50 +600380.97 5679450.06 96.00 +600381.03 5678771.69 97.50 +600381.25 5681123.83 97.50 +600381.51 5680227.93 97.50 +600381.76 5679495.13 96.25 +600382.24 5676688.60 101.25 +600382.30 5680952.76 96.00 +600382.31 5678851.77 97.50 +600382.52 5679333.94 96.25 +600382.63 5680957.29 96.25 +600382.91 5681204.40 97.50 +600382.92 5680988.25 96.25 +600383.03 5679507.16 97.50 +600383.17 5678982.57 97.50 +600383.22 5680816.25 97.50 +600383.33 5680944.84 96.00 +600383.41 5680595.75 97.50 +600383.46 5679392.87 96.25 +600383.46 5679403.65 96.00 +600383.77 5680708.94 97.50 +600383.91 5680566.40 97.50 +600384.00 5679675.44 97.50 +600384.07 5679702.08 97.50 +600384.10 5679159.35 97.50 +600384.20 5680546.98 97.50 +600384.61 5679204.09 97.50 +600384.62 5680556.72 97.50 +600384.65 5679213.74 97.50 +600384.76 5681144.22 96.25 +600384.86 5679012.92 97.50 +600385.25 5680650.21 97.50 +600385.27 5681131.75 97.50 +600385.47 5680714.74 96.25 +600385.68 5677895.98 98.50 +600385.82 5681092.13 96.25 +600386.04 5680723.52 97.50 +600386.21 5680320.42 96.25 +600386.36 5677882.18 98.50 +600386.40 5680720.38 96.25 +600386.48 5679342.72 96.25 +600386.65 5679360.83 96.25 +600386.87 5680934.88 97.50 +600386.87 5680872.60 97.50 +600387.06 5680980.81 96.25 +600387.18 5680586.50 97.50 +600387.35 5680659.09 97.50 +600387.49 5681029.15 97.50 +600388.00 5679487.35 96.25 +600388.17 5678764.69 97.50 +600388.34 5677873.11 98.75 +600388.57 5681167.63 97.50 +600388.59 5680640.88 97.50 +600388.60 5680943.72 96.25 +600388.70 5680196.08 96.25 +600388.72 5681136.00 96.25 +600388.92 5681147.82 97.50 +600388.97 5679384.57 96.25 +600389.10 5681183.37 97.50 +600389.30 5679667.52 97.50 +600389.47 5680138.49 97.50 +600389.65 5677051.77 100.00 +600389.75 5678975.04 97.50 +600389.79 5679499.81 97.50 +600389.79 5679322.77 97.50 +600390.15 5679396.31 96.00 +600390.18 5679332.67 97.50 +600390.31 5680963.65 96.25 +600390.49 5680994.77 96.25 +600390.52 5679447.33 96.00 +600390.56 5680958.35 96.00 +600390.72 5681120.92 97.50 +600390.74 5679351.10 96.25 +600390.85 5680951.36 96.00 +600390.95 5680577.24 97.50 +600390.99 5679005.09 97.50 +600391.14 5680157.10 97.50 +600391.29 5679695.87 97.50 +600391.40 5679312.91 97.50 +600391.41 5680821.72 97.50 +600391.58 5679152.73 97.50 +600391.74 5678848.45 97.50 +600391.83 5676685.82 101.25 +600392.04 5677903.33 98.50 +600392.06 5681200.53 97.50 +600392.50 5679342.37 97.50 +600392.83 5680148.58 97.50 +600393.49 5680632.46 97.50 +600393.53 5680313.73 96.25 +600393.70 5680710.09 97.50 +600393.93 5681141.00 96.25 +600394.05 5679376.14 96.25 +600394.15 5681036.57 97.50 +600394.27 5679366.18 96.25 +600394.33 5679479.65 96.25 +600394.48 5680941.21 97.50 +600394.60 5677887.32 98.50 +600394.73 5680987.20 96.25 +600394.98 5679303.67 97.50 +600395.05 5681088.32 96.25 +600395.09 5680878.14 97.50 +600395.23 5679660.08 97.50 +600395.23 5681131.05 97.50 +600395.40 5678757.79 97.50 +600395.43 5680714.88 96.25 +600395.57 5678966.92 97.50 +600395.98 5680724.53 97.50 +600396.20 5680659.22 97.50 +600396.34 5680720.99 96.25 +600396.62 5680949.68 96.25 +600396.63 5679492.55 97.50 +600396.84 5679388.98 96.00 +600396.86 5677878.33 98.75 +600397.31 5680569.58 97.50 +600397.64 5679145.08 97.50 +600398.06 5681001.28 96.25 +600398.16 5678998.12 97.50 +600398.37 5681134.92 96.25 +600398.39 5680969.52 96.25 +600398.40 5680140.98 97.50 +600398.40 5681166.31 97.50 +600398.59 5679689.74 97.50 +600398.64 5680196.87 96.25 +600398.82 5680963.94 96.00 +600398.83 5681146.63 97.50 +600398.86 5677910.21 98.50 +600398.94 5679442.18 96.00 +600398.99 5681182.58 97.50 +600399.28 5679294.66 97.50 +600399.50 5680956.34 96.00 +600399.64 5677051.49 100.00 +600399.98 5679471.43 96.25 +600400.19 5681117.99 97.50 +600400.33 5679353.41 96.25 +600400.38 5680650.31 97.50 +600400.39 5680158.53 97.50 +600400.67 5680825.47 97.50 +600400.72 5679264.80 97.50 +600400.75 5681044.05 97.50 +600400.77 5679274.79 97.50 +600400.81 5679284.78 97.50 +600400.85 5680307.05 96.25 +600400.93 5676681.68 101.25 +600401.13 5680626.02 97.50 +600401.23 5678958.68 97.50 +600401.27 5678845.44 97.50 +600401.38 5679345.89 97.50 +600401.46 5679652.87 97.50 +600401.48 5681197.45 97.50 +600401.61 5679135.90 97.50 +600401.84 5680947.84 97.50 +600402.18 5679254.99 97.50 +600402.67 5680993.27 96.25 +600402.68 5678750.97 97.50 +600402.89 5677892.40 98.50 +600402.93 5680640.65 97.50 +600403.37 5679666.62 97.25 +600403.41 5680883.53 97.50 +600403.48 5679485.28 97.50 +600403.62 5680711.03 97.50 +600403.63 5681140.57 96.25 +600403.85 5680562.03 97.50 +600404.58 5679245.29 97.50 +600404.72 5681086.51 96.25 +600404.76 5679383.02 96.00 +600405.16 5680954.78 96.25 +600405.18 5681130.01 97.50 +600405.32 5680727.26 97.50 +600405.33 5678991.16 97.50 +600405.38 5677883.54 98.75 +600405.40 5680715.02 96.25 +600405.54 5679126.72 97.50 +600405.62 5681007.81 96.25 +600405.63 5679463.22 96.25 +600405.88 5679683.61 97.50 +600406.18 5677916.60 98.50 +600406.31 5680720.99 96.25 +600406.48 5680975.39 96.25 +600407.12 5678950.61 97.50 +600407.19 5680969.38 96.00 +600407.20 5679436.68 96.00 +600407.43 5677545.84 98.75 +600407.44 5677536.61 98.75 +600407.47 5680631.77 97.50 +600407.54 5681051.33 97.50 +600407.91 5680961.69 96.00 +600407.95 5679235.93 97.50 +600407.96 5681163.80 97.50 +600408.06 5680300.24 96.25 +600408.07 5681134.30 96.25 +600408.56 5680197.80 96.25 +600408.75 5680619.56 97.50 +600408.77 5681145.60 97.50 +600408.82 5680436.01 96.25 +600408.87 5681181.78 97.50 +600409.27 5679647.51 97.50 +600409.43 5679117.51 97.50 +600409.50 5677555.61 98.75 +600409.62 5677051.07 100.00 +600409.72 5680426.12 96.25 +600409.80 5681115.53 97.50 +600409.92 5679477.66 97.50 +600409.98 5680416.19 96.25 +600410.03 5676677.55 101.25 +600410.18 5679351.91 96.25 +600410.25 5680157.25 97.50 +600410.27 5678841.22 97.50 +600410.46 5680827.15 97.50 +600410.49 5680554.56 97.50 +600410.60 5680999.34 96.25 +600410.76 5680952.18 97.50 +600410.94 5679343.03 97.50 +600411.11 5677565.47 98.75 +600411.12 5681195.04 97.50 +600411.20 5677897.43 98.50 +600411.20 5680445.09 96.25 +600411.67 5679455.29 96.25 +600411.97 5680888.54 97.50 +600412.17 5679226.88 97.50 +600412.42 5678984.11 97.50 +600412.49 5678749.06 97.50 +600412.58 5680407.15 96.25 +600412.74 5679677.02 97.50 +600412.76 5681014.80 96.25 +600412.78 5679377.16 96.00 +600413.10 5678942.59 97.50 +600413.34 5681140.17 96.25 +600413.48 5680709.40 97.50 +600413.66 5680624.15 97.50 +600413.68 5680732.75 97.50 +600413.83 5679108.55 97.50 +600413.90 5677888.76 98.75 +600414.08 5680959.28 96.25 +600414.32 5679429.85 96.00 +600414.51 5677921.50 98.50 +600414.69 5681086.62 96.25 +600414.77 5680725.93 96.25 +600414.79 5680611.60 97.50 +600415.00 5677532.26 98.75 +600415.04 5680980.53 96.25 +600415.07 5681057.87 97.50 +600415.15 5681129.45 97.50 +600415.17 5680293.33 96.25 +600415.23 5680713.43 96.25 +600415.55 5680974.82 96.00 +600415.85 5677573.78 98.75 +600416.18 5680967.28 96.00 +600416.18 5679469.89 97.50 +600416.35 5680937.18 97.50 +600416.39 5679217.82 97.50 +600417.00 5680547.02 97.50 +600417.03 5680453.11 96.25 +600417.37 5681160.66 97.50 +600417.50 5679642.74 97.50 +600417.77 5681133.68 96.25 +600417.90 5679447.50 96.25 +600418.16 5678933.97 97.50 +600418.30 5680199.92 96.25 +600418.35 5679346.31 96.25 +600418.44 5681005.54 96.25 +600418.51 5679099.72 97.50 +600418.55 5681179.71 97.50 +600418.59 5680946.08 97.50 +600418.66 5680399.29 96.25 +600418.70 5681144.48 97.50 +600418.87 5678836.14 97.50 +600418.88 5679669.78 97.50 +600418.93 5679337.12 97.50 +600418.94 5680740.96 97.50 +600419.42 5680956.94 97.50 +600419.45 5678977.00 97.50 +600419.51 5677902.46 98.50 +600419.59 5677050.43 100.00 +600419.74 5681115.28 97.50 +600419.86 5676675.80 101.25 +600419.90 5681021.78 96.25 +600419.95 5680154.96 97.50 +600420.35 5680603.30 97.50 +600420.39 5680828.28 97.50 +600420.63 5680893.37 97.50 +600420.65 5679208.78 97.50 +600420.67 5681192.34 97.50 +600420.80 5679371.31 96.00 +600420.95 5679422.47 96.00 +600421.21 5680537.96 97.50 +600421.27 5680617.67 97.50 +600421.64 5680929.41 97.50 +600422.01 5680732.75 96.25 +600422.30 5678747.14 97.50 +600422.42 5677893.97 98.75 +600422.45 5679462.12 97.50 +600422.64 5680964.31 96.25 +600422.78 5677580.99 98.75 +600422.86 5677537.14 98.75 +600423.02 5681139.38 96.25 +600423.10 5678925.28 97.50 +600423.11 5677926.02 98.50 +600423.18 5679090.89 97.50 +600423.22 5681063.56 97.50 +600423.31 5680974.14 96.00 +600423.35 5680707.84 97.50 +600423.60 5680288.54 96.25 +600423.63 5680985.62 96.25 +600423.66 5680460.44 96.25 +600423.70 5680980.58 96.00 +600423.91 5680405.45 96.25 +600424.14 5679661.84 97.50 +600424.18 5679439.76 96.25 +600424.41 5681088.86 96.25 +600424.91 5681127.61 97.50 +600425.15 5680528.78 97.50 +600425.18 5680712.77 96.25 +600425.20 5679199.88 97.50 +600425.67 5680594.84 97.50 +600426.27 5681011.73 96.25 +600426.40 5681156.60 97.50 +600426.41 5679639.72 97.50 +600426.42 5679340.48 96.25 +600426.42 5680952.14 97.50 +600426.66 5678970.16 97.50 +600426.93 5678830.23 97.50 +600426.95 5679331.18 97.50 +600426.99 5681028.82 96.25 +600427.41 5681132.53 96.25 +600427.41 5680962.81 97.50 +600427.43 5679414.94 96.00 +600427.43 5677545.98 98.75 +600427.67 5680202.89 96.25 +600427.82 5677907.49 98.50 +600428.15 5681177.21 97.50 +600428.19 5679653.35 97.50 +600428.23 5680741.04 97.50 +600428.43 5679082.42 97.50 +600428.47 5680519.36 97.50 +600428.57 5678916.95 97.50 +600428.63 5681143.29 97.50 +600428.64 5680414.17 96.25 +600428.75 5680611.05 97.50 +600428.82 5679365.46 96.00 +600429.46 5680897.89 97.50 +600429.51 5681114.01 97.50 +600429.54 5680152.17 97.50 +600429.56 5677049.80 100.00 +600429.61 5679455.17 97.50 +600429.72 5676674.17 101.25 +600429.96 5679191.10 97.50 +600430.08 5680970.98 96.25 +600430.10 5681189.20 97.50 +600430.12 5680830.39 97.50 +600430.24 5677587.44 98.75 +600430.34 5679644.07 97.50 +600430.73 5680734.88 96.25 +600430.84 5680586.29 97.50 +600430.91 5679432.40 96.25 +600430.95 5677899.19 98.75 +600431.25 5680927.23 97.50 +600431.55 5677555.08 98.75 +600431.60 5677930.69 98.50 +600432.09 5678745.08 97.50 +600432.21 5680465.50 96.25 +600432.21 5680990.73 96.25 +600432.28 5681067.56 97.50 +600432.56 5681137.74 96.25 +600432.67 5681019.37 96.25 +600432.84 5680290.36 96.25 +600432.92 5680423.13 96.25 +600433.16 5680707.41 97.50 +600433.79 5679407.32 96.00 +600434.00 5681035.93 96.25 +600434.11 5681091.23 96.25 +600434.35 5680512.06 97.50 +600434.45 5679074.45 97.50 +600434.52 5681124.84 97.50 +600434.68 5679334.97 96.25 +600434.78 5680969.40 97.50 +600434.85 5680714.77 96.25 +600434.96 5679182.45 97.50 +600435.08 5680577.34 97.50 +600435.08 5678824.45 97.50 +600435.33 5680956.30 97.50 +600435.38 5678909.71 97.50 +600435.41 5679325.86 97.50 +600435.76 5680208.72 96.25 +600435.81 5678966.11 97.50 +600435.89 5681154.29 97.50 +600436.06 5680299.21 96.25 +600436.07 5677912.62 98.50 +600436.07 5680604.25 97.50 +600436.72 5681129.98 96.25 +600436.83 5679448.27 97.50 +600436.84 5679359.60 96.00 +600436.93 5679760.23 97.50 +600436.93 5679750.27 97.50 +600436.95 5680432.21 96.25 +600436.97 5679740.31 97.50 +600436.98 5679770.18 97.50 +600437.01 5679730.36 97.50 +600437.05 5679720.40 97.50 +600437.10 5679780.13 97.50 +600437.28 5680737.27 97.50 +600437.52 5680977.64 96.25 +600437.63 5679425.03 96.25 +600437.67 5681174.45 97.50 +600437.68 5677562.76 98.75 +600438.09 5681140.30 97.50 +600438.14 5677805.03 98.75 +600438.42 5680567.97 97.50 +600438.53 5680901.86 97.50 +600438.55 5680148.16 97.50 +600438.92 5679710.63 97.50 +600439.03 5681111.18 97.50 +600439.13 5680729.55 96.25 +600439.14 5679789.87 97.50 +600439.27 5677814.96 98.75 +600439.47 5677904.41 98.75 +600439.52 5681186.06 97.50 +600439.52 5677049.16 100.00 +600439.57 5677591.03 98.75 +600439.58 5681026.49 96.25 +600439.62 5676672.82 101.25 +600439.69 5680833.25 97.50 +600439.86 5679173.74 97.50 +600440.16 5679399.71 96.00 +600440.40 5680996.46 96.25 +600440.53 5677934.51 98.50 +600440.55 5679066.54 97.50 +600440.83 5680722.04 96.25 +600440.86 5679700.86 97.50 +600441.05 5680925.74 97.50 +600441.28 5678741.64 97.50 +600441.56 5680672.94 97.50 +600441.66 5680464.13 96.25 +600441.68 5681041.99 96.25 +600441.68 5680976.52 97.50 +600441.79 5681070.58 97.50 +600441.91 5681135.12 96.25 +600442.35 5680963.31 97.50 +600442.49 5680663.13 97.50 +600442.62 5680710.60 97.50 +600443.02 5680507.09 97.50 +600443.09 5680597.14 97.50 +600443.17 5680559.18 97.50 +600443.24 5678903.53 97.50 +600443.54 5679691.28 97.50 +600443.79 5681093.65 96.25 +600443.86 5679320.53 97.50 +600443.90 5679331.23 96.25 +600443.92 5677797.69 98.75 +600444.05 5679441.38 97.50 +600444.22 5681122.46 97.50 +600444.28 5677917.81 98.50 +600444.41 5678821.02 97.50 +600444.67 5679164.98 97.50 +600444.77 5680984.51 96.25 +600444.79 5679418.10 96.25 +600444.80 5678961.77 97.50 +600444.81 5680436.23 96.25 +600444.88 5679353.79 96.00 +600445.20 5677569.22 98.75 +600445.77 5681153.59 97.50 +600445.88 5681126.85 96.25 +600445.98 5680653.76 97.50 +600446.12 5677821.43 98.75 +600446.43 5679681.76 97.50 +600446.80 5680142.54 97.50 +600446.96 5679392.51 96.00 +600447.02 5680677.51 97.50 +600447.12 5681032.88 96.25 +600447.16 5681171.56 97.50 +600447.23 5680737.34 97.50 +600447.29 5680906.36 97.50 +600447.49 5681137.00 97.50 +600448.01 5677909.60 98.75 +600448.06 5679060.03 97.50 +600448.27 5680457.40 96.25 +600448.66 5681002.08 96.25 +600448.69 5680837.30 97.50 +600448.73 5679789.70 97.50 +600448.85 5681109.75 97.50 +600448.95 5677594.46 98.75 +600449.03 5680983.18 97.50 +600449.17 5677046.55 100.00 +600449.45 5681186.01 97.50 +600449.46 5677938.34 98.50 +600449.47 5679156.22 97.50 +600449.47 5678735.91 97.50 +600449.57 5676671.86 101.25 +600449.87 5680589.80 97.50 +600449.88 5681041.87 96.25 +600450.02 5680552.06 97.50 +600450.20 5680644.73 97.50 +600450.32 5680968.97 97.50 +600450.63 5679672.73 97.50 +600450.86 5680924.24 97.50 +600450.89 5677790.53 98.75 +600451.09 5678897.34 97.50 +600451.24 5681132.41 96.25 +600451.30 5681073.59 97.50 +600451.47 5680715.24 97.50 +600451.50 5679434.81 97.50 +600452.01 5680991.40 96.25 +600452.20 5679411.43 96.25 +600452.21 5680504.06 97.50 +600452.24 5680669.17 97.50 +600452.48 5677923.01 98.50 +600452.82 5680430.97 96.25 +600452.93 5679347.97 96.00 +600453.13 5679327.48 96.25 +600453.27 5679317.75 97.50 +600453.37 5678956.63 97.50 +600453.50 5681095.98 96.25 +600453.56 5678817.22 97.50 +600453.57 5680449.00 96.25 +600453.66 5681123.66 97.50 +600453.86 5679147.24 97.50 +600453.87 5677827.67 98.75 +600454.22 5680135.92 97.50 +600454.39 5679385.93 96.00 +600454.43 5677573.05 98.75 +600454.83 5680635.87 97.50 +600454.83 5679663.70 97.50 +600455.38 5680912.10 97.50 +600455.47 5681126.68 96.25 +600455.68 5681153.98 97.50 +600456.16 5680659.98 97.50 +600456.37 5680582.21 97.50 +600456.49 5679054.65 97.50 +600456.53 5680843.40 97.50 +600456.55 5677914.78 98.75 +600456.65 5679784.30 97.50 +600456.65 5681168.67 97.50 +600456.73 5680989.42 97.50 +600457.06 5681007.47 96.25 +600457.11 5680738.86 97.50 +600457.32 5681135.21 97.50 +600457.42 5680545.37 97.50 +600457.67 5678730.18 97.50 +600457.85 5677783.36 98.75 +600458.22 5679138.25 97.50 +600458.39 5677942.16 98.50 +600458.43 5677597.62 98.75 +600458.71 5681108.96 97.50 +600458.82 5680440.61 96.25 +600458.84 5677044.07 100.00 +600459.12 5679654.73 97.50 +600459.28 5681185.13 97.50 +600459.45 5680627.01 97.50 +600459.45 5680423.58 96.25 +600459.52 5676670.90 101.25 +600459.57 5678892.13 97.50 +600459.59 5680997.90 96.25 +600459.61 5679404.76 96.25 +600459.88 5680967.83 97.50 +600460.08 5680650.79 97.50 +600460.40 5679430.28 97.50 +600460.58 5681131.75 96.25 +600460.61 5680718.84 97.50 +600460.66 5677928.26 98.50 +600460.69 5680922.95 97.50 +600460.70 5681076.91 97.50 +600460.94 5677834.74 98.75 +600460.97 5679342.15 96.00 +600461.28 5680128.86 97.50 +600461.33 5678950.61 97.50 +600461.85 5679379.38 96.00 +600461.90 5678811.71 97.50 +600462.19 5680503.54 97.50 +600462.51 5680918.97 97.50 +600462.55 5679324.30 96.25 +600462.58 5677774.98 98.75 +600462.59 5679129.26 97.50 +600462.66 5680851.29 97.50 +600462.70 5680574.49 97.50 +600463.04 5680210.91 96.25 +600463.12 5679776.74 97.50 +600463.15 5679316.25 97.50 +600463.27 5681098.03 96.25 +600463.37 5681124.96 97.50 +600463.85 5680618.04 97.50 +600463.91 5677765.13 98.75 +600463.97 5680537.82 97.50 +600464.03 5677575.63 98.75 +600464.05 5677755.14 98.75 +600464.20 5677745.15 98.75 +600464.35 5677735.16 98.75 +600464.41 5679646.29 97.50 +600464.62 5680995.43 97.50 +600464.91 5679049.27 97.50 +600465.09 5677919.96 98.75 +600465.27 5680642.31 97.50 +600465.46 5681012.88 96.25 +600465.60 5681154.36 97.50 +600466.23 5678725.03 97.50 +600466.57 5681168.45 97.50 +600466.87 5677842.66 98.75 +600466.90 5681087.81 97.50 +600466.99 5680740.37 97.50 +600467.08 5680417.22 96.25 +600467.22 5681134.06 97.50 +600467.30 5679398.44 96.25 +600467.39 5681090.29 96.25 +600467.41 5680435.61 96.25 +600467.57 5677944.91 98.50 +600467.68 5681003.64 96.25 +600467.80 5680121.32 97.50 +600467.95 5677600.62 98.75 +600468.22 5680609.05 97.50 +600468.45 5678887.51 97.50 +600468.54 5677041.65 100.00 +600468.56 5681110.28 97.50 +600468.63 5679768.57 97.50 +600468.69 5680566.49 97.50 +600468.73 5679121.53 97.50 +600468.79 5680859.19 97.50 +600468.82 5677933.53 98.50 +600468.87 5678944.05 97.50 +600468.94 5681182.81 97.50 +600468.99 5677726.48 98.75 +600469.02 5679336.34 96.00 +600469.29 5679425.75 97.50 +600469.35 5680203.47 96.25 +600469.43 5676671.12 101.25 +600469.54 5680965.72 97.50 +600469.71 5679637.86 97.50 +600469.91 5679373.58 96.00 +600469.92 5678805.78 97.50 +600470.45 5681078.99 97.50 +600470.60 5680719.07 97.50 +600471.00 5680634.13 97.50 +600471.33 5680531.13 97.50 +600471.74 5677851.38 98.75 +600471.77 5679311.65 97.50 +600472.02 5679628.27 97.50 +600472.14 5680502.65 97.50 +600472.20 5679321.84 96.25 +600472.44 5679759.38 97.50 +600472.58 5681001.34 97.50 +600472.63 5680600.09 97.50 +600473.32 5679043.87 97.50 +600473.37 5681124.84 97.50 +600473.63 5677925.14 98.75 +600473.77 5681018.42 96.25 +600473.79 5677577.73 98.75 +600473.97 5680113.47 97.50 +600474.41 5679730.09 97.50 +600474.71 5678719.76 97.50 +600474.80 5679739.98 97.50 +600474.95 5679618.90 97.50 +600475.19 5679749.82 97.50 +600475.33 5677940.08 98.50 +600475.34 5680195.79 96.25 +600475.40 5679392.63 96.25 +600475.46 5680412.04 96.25 +600475.49 5681153.94 97.50 +600475.55 5677719.78 98.75 +600475.72 5679114.39 97.50 +600475.88 5678936.93 97.50 +600475.90 5679720.25 97.50 +600475.93 5680736.20 97.50 +600475.94 5680560.69 97.50 +600475.95 5680625.45 97.50 +600475.96 5677860.35 98.75 +600476.00 5680430.62 96.25 +600476.03 5680865.94 97.50 +600476.48 5680294.63 96.25 +600476.48 5681168.26 97.50 +600476.74 5681007.85 96.25 +600476.74 5681089.39 97.50 +600477.05 5677604.39 98.75 +600477.14 5678882.59 97.50 +600477.15 5680591.17 97.50 +600477.21 5681133.74 97.50 +600477.27 5678799.01 97.50 +600477.39 5679710.40 97.50 +600477.43 5679331.07 96.00 +600477.96 5677870.14 98.75 +600477.97 5679367.78 96.00 +600478.00 5680713.50 97.50 +600478.19 5679421.22 97.50 +600478.38 5679892.07 97.50 +600478.39 5677040.29 100.00 +600478.41 5681111.56 97.50 +600478.44 5681179.98 97.50 +600478.55 5679882.13 97.50 +600479.16 5679700.61 97.50 +600479.24 5680525.02 97.50 +600479.27 5676672.87 101.25 +600479.30 5680963.96 97.50 +600479.30 5681082.42 97.50 +600479.90 5679305.85 97.50 +600480.01 5679610.33 97.50 +600480.25 5680187.37 96.25 +600480.69 5680616.66 97.50 +600480.93 5680106.35 97.50 +600480.94 5680243.91 96.25 +600481.06 5679317.50 96.25 +600481.34 5681005.61 97.50 +600481.65 5679038.36 97.50 +600481.74 5680582.30 97.50 +600481.92 5679872.73 97.50 +600482.08 5681023.96 96.25 +600482.09 5680503.59 97.50 +600482.18 5677930.32 98.75 +600482.61 5680302.11 96.25 +600482.69 5678713.73 97.50 +600482.72 5679107.25 97.50 +600482.76 5681128.20 97.50 +600482.99 5679691.71 97.50 +600483.06 5677878.68 98.75 +600483.27 5678930.19 97.50 +600483.35 5677580.65 98.75 +600483.42 5679386.70 96.25 +600483.68 5680563.10 97.50 +600483.99 5679899.71 97.50 +600484.02 5680407.27 96.25 +600484.08 5680730.68 97.50 +600484.09 5680871.81 97.50 +600484.26 5680572.67 97.50 +600484.47 5677611.05 98.75 +600484.53 5681162.70 97.50 +600484.63 5678792.24 97.50 +600484.64 5680706.07 97.50 +600484.67 5680425.77 96.25 +600484.85 5680607.58 97.50 +600485.07 5680262.24 96.25 +600485.07 5679601.76 97.50 +600485.14 5681155.09 97.50 +600485.17 5680178.94 96.25 +600485.24 5677717.31 98.75 +600485.29 5680252.53 96.25 +600485.48 5679863.40 97.50 +600485.74 5681012.18 96.25 +600485.74 5680235.21 96.25 +600485.75 5678877.50 97.50 +600485.76 5680517.64 97.50 +600485.82 5679361.72 96.00 +600485.91 5679325.91 96.00 +600486.35 5680311.28 96.25 +600487.10 5680098.60 97.50 +600487.34 5680958.55 97.50 +600487.45 5679417.56 97.50 +600487.58 5681176.09 97.50 +600487.75 5679299.68 97.50 +600488.05 5680321.04 96.25 +600488.20 5680330.98 96.25 +600488.27 5681112.79 97.50 +600488.35 5680340.91 96.25 +600488.36 5677039.60 100.00 +600488.73 5676675.85 101.25 +600488.74 5679853.97 97.50 +600488.75 5680350.83 96.25 +600488.96 5680509.17 97.50 +600489.02 5680598.49 97.50 +600489.15 5679683.89 97.50 +600489.35 5680268.72 96.25 +600489.43 5680360.74 96.25 +600489.51 5679834.40 97.50 +600489.57 5679312.32 96.25 +600489.59 5679844.23 97.50 +600489.85 5679032.67 97.50 +600490.05 5680170.48 96.25 +600490.05 5677885.44 98.75 +600490.19 5680286.17 96.25 +600490.26 5679100.71 97.50 +600490.54 5680226.51 96.25 +600490.55 5678707.56 97.50 +600490.55 5679593.46 97.50 +600490.72 5677935.50 98.75 +600490.73 5680723.22 97.50 +600490.78 5678923.60 97.50 +600490.78 5681028.86 96.25 +600490.82 5680400.06 96.25 +600490.85 5677618.74 98.75 +600490.91 5681008.20 97.50 +600490.93 5679380.14 96.25 +600491.02 5680278.02 96.25 +600491.05 5680370.52 96.25 +600491.75 5680390.16 96.25 +600492.27 5679824.81 97.50 +600492.34 5680090.10 97.50 +600492.54 5678786.15 97.50 +600492.69 5680380.27 96.25 +600492.76 5680700.23 97.50 +600492.93 5677583.45 98.75 +600493.18 5680589.41 97.50 +600493.43 5680421.09 96.25 +600493.53 5679355.47 96.00 +600493.72 5680874.49 97.50 +600493.81 5679899.21 97.50 +600493.95 5680951.19 97.50 +600494.36 5678872.42 97.50 +600494.38 5679320.74 96.00 +600494.50 5681016.98 96.25 +600494.92 5680162.03 96.25 +600494.92 5677714.85 98.75 +600495.27 5680217.78 96.25 +600495.28 5679293.11 97.50 +600495.34 5679676.09 97.50 +600496.54 5679585.51 97.50 +600496.72 5681172.19 97.50 +600496.90 5679414.34 97.50 +600497.00 5679305.79 96.25 +600497.32 5679026.04 97.50 +600497.49 5680263.13 96.25 +600497.50 5677626.16 98.75 +600497.64 5680081.65 97.50 +600497.78 5678700.66 97.50 +600497.82 5676680.01 101.25 +600497.95 5680580.65 97.50 +600497.95 5679094.34 97.50 +600498.07 5681114.35 97.50 +600498.08 5680716.82 97.50 +600498.16 5680271.29 96.25 +600498.25 5681102.78 97.50 +600498.32 5677038.78 100.00 +600498.37 5680291.81 96.25 +600498.43 5679373.57 96.25 +600498.57 5677890.66 98.75 +600499.18 5678918.18 97.50 +600499.19 5677939.42 98.75 +600499.40 5679817.91 97.50 +600499.56 5681033.64 96.25 +600499.82 5680153.59 96.25 +600499.98 5681012.19 97.50 +600499.98 5680209.03 96.25 +600500.62 5678780.26 97.50 +600500.87 5680694.40 97.50 +600501.02 5679348.96 96.00 +600501.11 5680415.01 96.25 +600501.18 5681095.56 98.75 +600501.78 5681109.24 97.50 +600501.90 5679668.60 97.50 +600501.95 5678865.98 97.50 +600502.06 5679621.21 97.25 +600502.41 5680072.93 97.50 +600502.45 5679286.16 97.50 +600502.49 5680955.76 97.50 +600502.63 5677585.85 98.75 +600502.86 5679315.57 96.00 +600503.19 5680572.14 97.50 +600503.21 5681021.87 96.25 +600503.28 5679896.35 97.50 +600503.35 5680877.17 97.50 +600503.95 5679298.66 96.25 +600504.26 5679579.77 97.50 +600504.59 5677712.35 98.75 +600504.70 5680200.29 96.25 +600504.80 5679019.41 97.50 +600504.86 5680145.23 96.25 +600505.23 5677632.49 98.75 +600505.26 5680256.95 96.25 +600505.34 5679087.65 97.50 +600505.81 5680264.96 96.25 +600505.84 5680063.55 97.50 +600505.96 5678695.02 97.50 +600505.97 5679367.05 96.25 +600506.15 5681169.13 97.50 +600506.36 5679411.15 97.50 +600506.63 5679811.03 97.50 +600506.84 5677896.25 98.75 +600506.89 5681100.25 98.75 +600506.91 5676684.16 101.25 +600507.06 5677933.26 98.75 +600507.10 5680296.53 96.25 +600507.41 5679341.43 96.00 +600507.55 5680713.62 97.50 +600507.58 5678912.75 97.50 +600507.80 5681116.38 97.50 +600507.82 5680407.69 96.25 +600508.12 5681101.64 97.50 +600508.28 5677038.06 100.00 +600508.33 5681038.41 96.25 +600508.44 5680563.64 97.50 +600508.46 5679661.11 97.50 +600508.78 5680733.70 97.50 +600509.11 5678775.05 97.50 +600509.32 5681015.47 97.50 +600509.34 5680054.20 97.50 +600509.41 5680191.54 96.25 +600509.43 5679279.01 97.50 +600509.83 5681092.90 98.75 +600509.89 5680962.38 97.50 +600509.90 5680136.87 96.25 +600510.22 5680691.64 97.50 +600510.58 5680884.04 97.50 +600510.79 5678861.42 97.50 +600510.91 5679291.54 96.25 +600511.30 5681112.09 97.50 +600511.30 5681027.69 96.25 +600511.89 5679080.10 97.50 +600512.27 5679012.78 97.50 +600512.35 5677587.53 98.75 +600512.39 5679315.29 96.00 +600512.55 5679892.64 97.50 +600512.81 5679333.15 96.00 +600512.93 5680044.89 97.50 +600513.01 5680726.95 97.50 +600513.03 5680250.76 96.25 +600513.38 5679575.81 97.50 +600513.66 5680399.71 96.25 +600513.68 5680258.97 96.25 +600513.70 5679360.74 96.25 +600513.76 5677708.39 98.75 +600513.80 5679804.08 97.50 +600514.12 5680182.80 96.25 +600514.17 5677636.87 98.75 +600514.28 5677926.39 98.75 +600514.44 5680555.75 97.50 +600514.79 5679653.43 97.50 +600514.83 5677902.25 98.75 +600514.93 5680128.52 96.25 +600515.01 5676689.99 101.25 +600515.24 5680302.11 96.25 +600515.50 5678692.85 97.50 +600515.53 5679323.70 96.00 +600515.73 5681166.50 97.50 +600515.87 5679408.10 97.50 +600515.96 5680737.25 97.50 +600516.25 5680969.98 97.50 +600516.27 5681100.18 98.75 +600516.34 5681036.18 96.25 +600516.41 5679271.86 97.50 +600516.48 5678908.25 97.50 +600516.52 5680035.57 97.50 +600517.10 5680710.74 97.50 +600517.42 5681020.73 97.50 +600517.43 5681118.81 97.50 +600517.85 5680890.89 97.50 +600517.86 5680390.74 96.25 +600518.02 5681102.36 97.50 +600518.10 5678770.68 97.50 +600518.27 5677038.06 100.00 +600518.30 5679072.44 97.50 +600518.42 5679285.00 96.25 +600518.70 5680381.06 96.25 +600518.84 5680174.05 96.25 +600519.16 5681091.97 98.75 +600519.25 5680371.31 96.25 +600519.45 5679005.85 97.50 +600519.83 5678857.15 97.50 +600520.04 5680026.23 97.50 +600520.08 5680120.23 96.25 +600520.11 5680690.22 97.50 +600520.82 5681114.91 97.50 +600520.96 5677919.05 98.75 +600520.97 5679797.13 97.50 +600521.00 5679645.65 97.50 +600521.01 5680722.07 97.50 +600521.26 5677909.64 98.75 +600521.42 5679354.43 96.25 +600521.60 5678699.80 97.50 +600521.74 5680548.93 97.50 +600521.82 5679888.93 97.50 +600521.89 5679570.64 97.50 +600522.00 5680246.68 96.25 +600522.15 5677585.60 98.75 +600522.20 5677703.10 98.75 +600522.31 5680977.83 97.50 +600522.42 5680308.95 96.25 +600522.72 5680254.86 96.25 +600522.98 5676696.02 101.25 +600523.25 5678709.66 97.50 +600523.27 5677640.99 98.75 +600523.55 5680165.31 96.25 +600523.89 5680017.05 97.50 +600524.51 5679064.61 97.50 +600524.54 5681027.63 97.50 +600524.66 5680318.01 96.25 +600525.03 5680345.65 96.25 +600525.05 5680734.76 97.50 +600525.06 5680327.92 96.25 +600525.28 5680111.97 96.25 +600525.29 5680897.57 97.50 +600525.30 5679267.39 97.50 +600525.35 5679404.98 97.50 +600525.56 5678904.06 97.50 +600525.59 5681100.55 98.75 +600525.66 5681166.50 97.50 +600525.84 5678719.30 97.50 +600525.93 5679278.46 96.25 +600525.97 5678998.28 97.50 +600526.34 5680354.54 96.25 +600526.39 5680368.42 96.25 +600526.88 5680708.66 97.50 +600527.03 5681121.33 97.50 +600527.10 5678766.31 97.50 +600527.22 5679637.88 97.50 +600527.83 5681103.81 97.50 +600527.84 5679789.92 97.50 +600528.26 5677038.06 100.00 +600528.28 5680156.57 96.25 +600528.52 5681091.29 98.75 +600528.70 5680985.41 97.50 +600528.89 5678852.94 97.50 +600528.90 5680726.27 97.25 +600529.09 5679348.07 96.25 +600529.15 5680008.57 97.50 +600529.30 5680542.42 97.50 +600529.74 5680687.80 97.50 +600529.80 5680718.66 97.50 +600529.89 5677696.77 98.75 +600530.40 5679565.47 97.50 +600530.46 5681117.32 97.50 +600530.47 5680103.70 96.25 +600530.74 5676702.32 101.25 +600530.77 5679056.82 97.50 +600531.04 5680334.28 96.25 +600531.30 5680243.17 96.25 +600531.62 5677582.65 98.75 +600531.71 5679887.69 97.50 +600531.77 5680250.74 96.25 +600531.98 5681034.19 97.50 +600532.50 5678990.71 97.50 +600532.74 5680361.93 96.25 +600533.06 5677642.99 98.75 +600533.07 5679629.84 97.50 +600533.08 5680147.88 96.25 +600533.30 5679689.39 97.50 +600533.44 5679271.91 96.25 +600533.73 5680345.10 96.25 +600533.84 5680731.34 97.50 +600533.93 5680902.43 97.50 +600533.99 5679782.05 97.50 +600534.34 5679263.13 97.50 +600534.65 5678899.87 97.50 +600534.68 5679401.44 97.50 +600534.74 5681102.61 98.75 +600534.75 5680000.31 97.50 +600534.90 5678708.78 97.50 +600534.94 5678718.77 97.50 +600535.19 5680369.95 96.25 +600535.41 5680703.50 97.50 +600535.52 5678760.93 97.50 +600535.60 5681166.68 97.50 +600535.64 5680095.43 96.25 +600535.94 5679738.14 97.50 +600536.14 5679341.02 96.25 +600536.55 5681091.29 98.75 +600536.83 5681122.96 97.50 +600536.98 5680990.76 97.50 +600537.01 5677689.76 98.75 +600537.06 5679049.06 97.50 +600537.11 5679680.22 97.50 +600537.25 5680536.35 97.50 +600537.52 5681105.99 97.50 +600537.79 5679695.95 97.50 +600537.88 5680139.18 96.25 +600538.13 5678849.10 97.50 +600538.23 5677037.50 100.00 +600538.27 5676708.89 101.25 +600538.47 5679621.47 97.50 +600538.58 5679728.93 97.50 +600538.84 5680716.03 97.50 +600538.91 5679560.30 97.50 +600538.97 5679670.48 97.50 +600539.02 5678983.15 97.50 +600539.03 5680684.13 97.50 +600539.49 5681040.66 97.50 +600539.51 5679747.36 97.50 +600540.10 5680338.36 96.25 +600540.14 5679774.19 97.50 +600540.26 5681118.91 97.50 +600540.38 5679992.06 97.50 +600540.61 5677578.30 98.75 +600540.69 5678703.10 97.50 +600540.76 5680087.12 96.25 +600540.77 5680240.25 96.25 +600540.86 5681098.86 99.10 +600541.00 5680247.30 96.25 +600541.63 5679886.55 97.50 +600541.67 5679660.99 97.50 +600541.76 5677647.74 98.75 +600542.62 5680727.92 97.50 +600542.68 5680130.48 96.25 +600542.82 5680349.11 96.25 +600542.97 5680906.70 97.50 +600543.08 5679269.85 96.25 +600543.19 5679333.97 96.25 +600543.36 5679041.30 97.50 +600543.63 5677682.36 98.75 +600543.68 5681105.44 98.75 +600543.79 5678895.83 97.50 +600543.86 5679613.10 97.50 +600543.89 5679260.48 97.50 +600543.92 5680698.25 97.50 +600544.02 5679397.91 97.50 +600544.16 5678755.96 97.50 +600544.36 5679765.28 97.50 +600544.43 5679756.01 97.50 +600544.55 5681091.60 98.75 +600544.91 5680996.62 97.50 +600545.16 5680530.26 97.50 +600545.39 5681165.92 97.50 +600545.82 5679723.36 97.50 +600545.90 5680078.82 96.25 +600545.91 5679652.02 97.50 +600546.00 5678976.01 97.50 +600546.11 5679983.88 97.50 +600546.43 5681110.28 97.50 +600546.46 5676714.55 101.25 +600546.60 5679693.40 97.50 +600546.76 5681123.10 97.50 +600546.98 5681047.16 97.50 +600547.41 5679555.12 97.50 +600547.45 5678845.54 97.50 +600547.48 5680121.79 96.25 +600547.80 5680715.22 97.50 +600548.18 5677036.71 100.00 +600548.20 5680343.80 96.25 +600548.33 5680680.47 97.50 +600548.74 5677673.78 98.75 +600548.76 5678488.22 98.75 +600548.77 5678662.80 97.50 +600548.78 5677654.59 98.75 +600549.45 5679604.86 97.50 +600549.60 5677573.95 98.75 +600549.65 5679033.54 97.50 +600549.88 5680722.31 97.50 +600550.09 5678705.80 97.50 +600550.45 5680238.04 96.25 +600550.74 5679643.34 97.50 +600550.74 5679327.49 96.25 +600550.80 5677664.23 98.75 +600550.84 5680245.89 96.25 +600550.93 5681095.17 98.75 +600551.16 5680070.61 96.25 +600551.30 5681102.26 98.75 +600551.54 5678478.75 98.75 +600551.58 5679886.12 97.50 +600551.60 5681003.86 97.50 +600551.83 5679975.71 97.50 +600552.03 5681109.46 98.75 +600552.21 5680523.18 97.50 +600552.26 5680113.07 96.25 +600552.37 5678653.57 97.50 +600552.44 5680693.03 97.50 +600552.71 5680907.10 97.50 +600552.90 5679268.17 96.25 +600553.02 5678892.00 97.50 +600553.23 5678751.76 97.50 +600553.25 5678969.13 97.50 +600553.33 5679394.32 97.50 +600553.73 5679258.73 97.50 +600554.11 5678495.80 98.75 +600554.27 5679687.16 97.50 +600554.48 5678670.36 97.50 +600554.93 5681163.15 97.50 +600555.03 5679596.62 97.50 +600555.09 5676719.59 101.25 +600555.39 5679720.52 97.50 +600555.52 5681114.25 97.50 +600555.92 5679549.95 97.50 +600556.09 5681049.33 97.50 +600556.13 5681012.58 97.50 +600556.42 5680062.39 96.25 +600556.89 5680104.29 96.25 +600556.97 5679026.84 97.50 +600557.14 5678843.07 97.50 +600557.63 5680676.81 97.50 +600557.91 5679636.61 97.50 +600557.94 5677034.54 100.00 +600558.21 5678645.45 97.50 +600558.43 5677569.28 98.75 +600558.52 5678711.18 97.50 +600558.58 5679968.39 97.50 +600558.72 5679321.51 96.25 +600558.86 5681022.10 97.50 +600559.26 5680516.09 97.50 +600559.60 5681106.41 98.75 +600560.12 5678473.73 98.75 +600560.23 5680236.29 96.25 +600560.26 5679588.15 97.50 +600560.30 5680983.76 96.25 +600560.49 5678962.25 97.50 +600560.67 5680244.49 96.25 +600560.72 5681112.70 98.75 +600561.01 5681031.78 97.50 +600561.02 5681041.70 97.50 +600561.17 5680053.87 96.25 +600561.52 5680095.50 96.25 +600561.56 5679886.34 97.50 +600561.79 5678746.67 97.50 +600561.89 5680689.79 97.50 +600562.15 5680992.67 96.25 +600562.26 5678888.17 97.50 +600562.49 5679390.33 97.50 +600562.63 5680906.14 97.50 +600562.71 5679266.46 96.25 +600562.88 5681101.69 98.75 +600563.06 5678636.71 97.50 +600563.17 5681094.79 98.75 +600563.25 5679682.93 97.50 +600563.57 5679256.99 97.50 +600563.78 5678671.35 97.50 +600563.88 5678497.65 98.75 +600563.90 5676724.30 101.25 +600564.53 5679544.96 97.50 +600564.66 5681161.15 97.50 +600564.86 5681117.60 97.50 +600564.93 5679020.80 97.50 +600565.06 5679718.06 97.50 +600565.65 5680045.20 96.25 +600565.72 5679961.42 97.50 +600565.85 5679580.00 97.50 +600565.87 5680508.68 97.50 +600566.16 5680086.71 96.25 +600566.46 5681001.56 96.25 +600566.56 5678627.43 97.50 +600566.64 5679632.46 97.50 +600566.65 5677563.67 98.75 +600566.67 5680672.59 97.50 +600566.70 5679315.52 96.25 +600566.83 5678840.59 97.50 +600567.50 5677031.78 100.00 +600567.74 5678955.37 97.50 +600568.33 5678711.71 97.50 +600568.58 5678468.50 98.75 +600568.58 5681108.55 98.75 +600568.98 5680983.75 96.25 +600569.40 5681115.96 98.75 +600569.96 5678740.91 97.50 +600570.01 5680234.54 96.25 +600570.13 5680036.54 96.25 +600570.17 5678882.13 97.50 +600570.58 5680243.94 96.25 +600570.59 5678618.77 97.50 +600570.79 5680077.92 96.25 +600570.81 5680499.99 97.50 +600571.34 5680686.54 97.50 +600571.42 5679887.39 97.50 +600571.49 5679386.09 97.50 +600571.71 5679953.52 97.50 +600571.87 5681009.90 96.25 +600572.08 5680902.86 97.50 +600572.14 5681104.67 98.75 +600572.23 5679678.69 97.50 +600572.48 5679264.52 96.25 +600572.66 5679572.74 97.50 +600572.81 5681094.20 98.75 +600572.94 5676728.57 101.25 +600573.19 5679015.23 97.50 +600573.41 5679255.24 97.50 +600573.43 5680703.72 97.50 +600573.43 5679540.56 97.50 +600573.51 5678669.16 97.50 +600573.60 5678499.74 98.75 +600574.31 5677557.26 98.75 +600574.37 5681120.48 97.50 +600574.43 5679714.94 97.50 +600574.49 5681159.82 97.50 +600574.84 5679309.76 96.25 +600575.08 5680028.12 96.25 +600575.42 5680069.13 96.25 +600575.50 5680491.18 97.50 +600575.50 5680667.92 97.50 +600575.75 5681100.30 99.00 +600576.00 5680346.34 97.50 +600576.09 5678949.90 97.50 +600576.32 5679630.24 97.50 +600576.43 5678837.80 97.50 +600576.72 5677027.93 100.00 +600576.96 5679945.03 97.50 +600577.09 5680336.62 97.50 +600577.22 5681018.27 96.25 +600577.30 5678463.76 98.75 +600577.43 5680988.90 96.25 +600577.48 5681111.01 98.75 +600577.93 5678709.03 97.50 +600578.12 5681119.11 98.75 +600578.19 5678876.20 97.50 +600578.20 5680356.08 97.50 +600578.94 5678613.33 97.50 +600578.97 5678736.76 97.50 +600579.05 5680481.88 97.50 +600579.47 5679380.09 97.50 +600579.62 5679565.62 97.50 +600579.78 5680706.37 97.50 +600579.90 5680234.10 96.25 +600579.95 5680697.43 97.50 +600580.03 5680019.71 96.25 +600580.05 5680060.35 96.25 +600580.17 5680327.27 97.50 +600580.18 5677549.36 98.75 +600580.32 5680471.97 97.50 +600580.51 5680243.76 96.25 +600580.78 5680683.28 97.50 +600580.79 5679935.84 97.50 +600580.83 5680365.68 97.50 +600581.03 5680452.05 97.50 +600581.05 5679890.03 97.50 +600581.31 5680462.04 97.50 +600581.46 5679675.08 97.50 +600581.62 5680900.01 97.50 +600581.85 5681104.28 98.75 +600581.89 5680442.11 97.50 +600581.94 5679010.39 97.50 +600582.02 5678663.92 97.50 +600582.25 5679262.58 96.25 +600582.44 5676731.60 101.25 +600582.52 5681094.72 98.75 +600582.55 5681026.67 96.25 +600582.65 5679709.27 97.50 +600582.82 5679538.13 97.50 +600582.99 5679304.02 96.25 +600583.25 5678502.15 98.75 +600583.25 5679253.52 97.50 +600583.34 5681156.87 97.50 +600583.40 5680432.27 97.50 +600583.40 5680996.73 96.25 +600583.64 5680662.14 97.50 +600583.98 5679926.40 97.50 +600584.16 5681121.50 97.50 +600584.41 5681116.24 98.75 +600584.52 5678944.53 97.50 +600584.69 5680051.56 96.25 +600584.87 5680011.24 96.25 +600585.03 5677540.63 98.75 +600585.10 5680374.72 97.50 +600585.83 5677023.85 100.00 +600585.96 5678834.80 97.50 +600586.07 5679628.40 97.50 +600586.31 5680422.72 97.50 +600586.35 5679916.70 97.50 +600586.42 5678459.80 98.75 +600586.65 5680319.67 97.50 +600586.77 5678871.07 97.50 +600587.11 5678705.04 97.50 +600587.15 5679559.12 97.50 +600587.30 5681035.39 96.25 +600587.30 5680691.77 97.50 +600587.45 5679374.09 97.50 +600587.64 5679897.41 97.50 +600587.87 5678608.85 97.50 +600587.90 5681020.06 96.00 +600588.41 5681100.47 98.75 +600588.42 5678733.55 97.50 +600588.68 5680413.01 97.50 +600588.70 5680703.90 97.50 +600588.72 5679907.00 97.50 +600588.88 5680677.43 97.50 +600588.95 5681004.97 96.25 +600589.27 5677531.59 98.75 +600589.32 5680042.77 96.25 +600589.36 5680383.76 97.50 +600589.46 5680231.75 96.25 +600589.64 5680002.73 96.25 +600590.03 5681149.53 97.50 +600590.24 5679702.97 97.50 +600590.42 5680244.04 96.25 +600590.68 5679005.55 97.50 +600590.94 5679672.09 97.50 +600591.04 5680403.30 97.50 +600591.13 5678659.89 97.50 +600591.14 5679298.27 96.25 +600591.34 5680393.54 97.50 +600591.43 5680899.74 97.50 +600591.73 5679541.88 97.50 +600591.73 5681044.28 96.25 +600591.79 5680656.38 97.50 +600591.93 5679550.57 97.50 +600592.02 5679260.64 96.25 +600592.06 5676734.32 101.25 +600592.93 5678504.40 98.75 +600592.95 5678939.17 97.50 +600593.10 5679251.85 97.50 +600593.15 5681125.70 97.50 +600593.33 5677522.46 98.75 +600593.71 5680312.72 97.50 +600593.86 5681013.58 96.25 +600593.98 5680034.00 96.25 +600594.33 5679994.17 96.25 +600594.83 5677019.50 100.00 +600594.88 5678830.35 97.50 +600595.07 5680694.55 97.25 +600595.18 5680686.89 97.50 +600595.24 5678865.77 97.50 +600595.77 5680670.32 97.50 +600595.81 5681053.35 96.25 +600595.92 5678457.74 98.75 +600595.94 5679627.35 97.50 +600596.02 5679368.99 97.50 +600596.03 5679694.83 97.50 +600596.03 5677512.88 98.75 +600596.17 5681141.78 97.50 +600596.81 5678604.36 97.50 +600596.85 5678703.18 97.50 +600597.90 5680702.67 97.50 +600598.05 5681022.60 96.25 +600598.23 5677503.13 98.75 +600598.38 5678732.70 97.50 +600598.68 5680025.25 96.25 +600598.81 5679985.50 96.25 +600598.99 5681132.61 97.50 +600599.13 5680230.12 96.25 +600599.42 5679000.71 97.50 +600599.45 5679685.51 97.50 +600599.47 5679676.09 97.50 +600600.06 5679293.83 96.25 +600600.31 5680244.99 96.25 +600600.43 5677493.39 98.75 +600600.48 5678656.36 97.50 +600600.66 5681061.98 96.25 +600601.03 5680652.91 97.50 +600601.13 5680902.16 97.50 +600601.59 5678934.15 97.50 +600601.82 5679258.89 96.25 +600601.94 5676735.26 101.25 +600602.08 5680307.26 97.50 +600602.23 5681031.61 96.25 +600602.34 5680662.84 97.50 +600602.71 5678506.22 98.75 +600602.88 5677483.70 98.75 +600602.92 5680681.77 97.50 +600602.95 5679250.18 97.50 +600603.25 5678859.78 97.50 +600603.39 5680016.50 96.25 +600603.67 5678825.57 97.50 +600603.81 5679771.46 97.50 +600603.83 5677015.16 100.00 +600604.66 5679363.98 97.50 +600604.86 5679762.39 97.50 +600605.42 5677474.04 98.75 +600605.46 5678599.35 97.50 +600605.66 5680697.58 97.50 +600605.74 5679625.77 97.50 +600605.84 5679987.97 96.25 +600605.86 5678457.96 98.75 +600606.24 5681040.70 96.25 +600606.39 5680007.03 96.25 +600606.83 5678703.14 97.50 +600607.18 5679997.31 96.25 +600607.32 5680234.33 96.25 +600607.95 5677464.37 98.75 +600608.10 5678995.76 97.50 +600608.30 5678733.62 97.50 +600608.65 5680655.80 97.50 +600608.79 5681066.95 96.25 +600609.02 5679289.44 96.25 +600609.39 5679753.57 97.50 +600609.55 5680248.30 96.25 +600609.63 5678482.88 99.00 +600609.67 5680689.71 97.50 +600609.73 5681050.01 96.25 +600609.75 5678652.63 97.50 +600610.34 5678929.34 97.50 +600610.49 5680905.64 97.50 +600610.73 5680310.97 97.50 +600611.26 5678853.80 97.50 +600611.27 5679743.99 97.50 +600611.48 5680680.63 97.50 +600611.67 5679257.45 96.25 +600611.87 5676734.76 101.25 +600612.31 5681059.54 96.25 +600612.34 5677455.64 98.75 +600612.48 5678508.05 98.75 +600612.79 5679248.43 97.50 +600612.91 5677011.07 100.00 +600613.13 5678822.54 97.50 +600613.28 5679770.51 97.50 +600613.68 5679734.48 97.50 +600613.73 5679359.90 97.50 +600614.05 5678594.24 97.50 +600615.28 5680240.01 96.25 +600615.44 5679623.64 97.50 +600615.51 5678460.20 98.75 +600616.74 5678990.74 97.50 +600616.83 5678703.37 97.50 +600617.59 5679725.37 97.50 +600618.10 5679841.25 97.50 +600618.17 5678735.20 97.50 +600618.29 5677447.62 98.75 +600618.56 5679286.81 96.25 +600618.60 5680252.35 96.25 +600618.79 5678648.36 97.50 +600618.82 5680316.70 97.50 +600618.88 5679831.35 97.50 +600619.07 5679762.77 97.50 +600619.74 5678926.16 97.50 +600619.84 5678848.67 97.50 +600620.15 5680908.11 97.50 +600620.42 5679821.54 97.50 +600621.19 5679849.86 97.50 +600621.53 5679256.01 96.25 +600621.59 5676732.43 101.25 +600621.63 5679801.79 97.50 +600621.87 5679811.72 97.50 +600622.27 5678508.73 98.75 +600622.37 5678819.14 97.50 +600622.58 5679246.42 97.50 +600622.62 5677008.69 100.00 +600622.62 5678589.09 97.50 +600623.11 5679356.51 97.50 +600623.13 5679717.34 97.50 +600623.80 5676868.97 100.00 +600623.83 5676859.02 100.00 +600623.88 5679792.34 97.50 +600624.03 5677439.43 98.75 +600624.08 5680244.57 96.25 +600624.57 5678984.55 97.50 +600625.11 5679621.42 97.50 +600625.12 5678462.71 98.75 +600625.45 5679755.18 97.50 +600625.87 5676878.74 100.00 +600626.00 5680323.65 97.50 +600626.82 5678703.75 97.50 +600627.35 5678643.19 97.50 +600627.98 5678737.13 97.50 +600628.14 5676850.49 100.00 +600628.16 5680255.08 96.25 +600628.35 5679284.97 96.25 +600628.42 5679783.59 97.50 +600628.65 5678844.12 97.50 +600629.14 5677001.61 100.00 +600629.43 5678923.70 97.50 +600629.74 5677431.24 98.75 +600629.98 5680909.33 97.50 +600630.20 5679851.51 97.50 +600630.54 5679710.74 97.50 +600630.56 5678813.40 97.50 +600630.95 5679730.70 98.00 +600631.05 5680251.05 96.25 +600631.11 5676729.49 101.25 +600631.17 5678583.91 97.50 +600631.38 5679254.56 96.25 +600631.53 5676886.70 100.00 +600631.81 5679747.57 97.50 +600632.07 5678507.05 98.75 +600632.31 5678978.23 97.50 +600632.36 5679244.40 97.50 +600632.59 5679353.52 97.50 +600633.19 5680330.60 97.50 +600634.31 5679617.68 97.50 +600634.36 5676842.67 100.00 +600634.78 5679775.96 97.50 +600634.88 5678464.67 98.75 +600634.95 5676993.49 100.00 +600635.15 5680710.07 97.50 +600635.24 5677422.89 98.75 +600635.76 5678637.81 97.50 +600636.00 5678701.47 97.50 +600636.17 5680586.41 97.50 +600636.32 5680577.10 97.50 +600636.46 5680558.45 97.50 +600636.73 5680567.78 97.50 +600636.79 5680719.61 97.50 +600637.35 5680595.66 97.50 +600637.68 5679703.87 97.50 +600637.87 5678738.53 97.50 +600638.13 5679739.92 97.50 +600638.23 5679283.70 96.25 +600638.33 5680549.49 97.50 +600638.34 5679845.83 97.50 +600638.42 5678841.98 97.50 +600638.53 5676893.74 100.00 +600638.56 5678807.41 97.50 +600638.95 5678920.78 97.50 +600639.47 5680907.27 97.50 +600639.68 5680338.19 97.50 +600639.72 5678578.73 97.50 +600640.09 5678971.96 97.50 +600640.30 5676725.55 101.25 +600640.55 5677414.43 98.75 +600640.73 5680728.79 97.50 +600640.89 5679251.72 96.25 +600641.40 5676985.87 100.00 +600641.51 5679768.67 97.50 +600641.67 5680540.77 97.50 +600641.87 5678505.37 98.75 +600641.88 5679730.74 97.50 +600642.15 5679242.38 97.50 +600642.40 5676836.83 100.00 +600642.54 5679352.66 97.50 +600642.69 5679695.31 97.50 +600643.02 5679612.90 97.50 +600643.54 5680834.80 97.50 +600643.56 5680824.84 97.50 +600643.76 5678631.81 97.50 +600644.08 5680844.78 97.50 +600644.21 5678695.76 97.50 +600644.56 5680814.90 97.50 +600644.82 5678464.36 98.75 +600645.02 5680532.06 97.50 +600645.43 5680737.55 97.50 +600645.63 5679721.56 97.50 +600645.78 5677405.92 98.75 +600645.94 5679839.43 97.50 +600646.16 5680345.80 97.50 +600646.42 5680854.28 97.50 +600646.49 5678801.32 97.50 +600646.68 5680805.17 97.50 +600647.03 5676898.99 100.00 +600647.41 5679711.87 97.50 +600647.59 5680901.45 97.50 +600647.60 5676718.73 101.25 +600647.80 5678739.77 97.50 +600647.87 5680523.18 97.50 +600647.93 5678965.77 97.50 +600648.00 5678916.54 97.50 +600648.03 5676978.42 100.00 +600648.11 5679282.43 96.25 +600648.19 5678839.85 97.50 +600648.28 5678573.54 97.50 +600648.52 5679761.64 97.50 +600649.38 5679692.64 97.50 +600649.51 5679702.23 97.50 +600649.68 5680795.76 97.50 +600650.12 5680354.93 97.50 +600650.14 5680863.47 97.50 +600650.29 5679248.44 96.25 +600650.70 5676831.26 100.00 +600651.02 5677397.41 98.75 +600651.27 5680745.66 97.50 +600651.44 5680514.63 97.50 +600651.47 5680892.73 97.50 +600651.55 5678503.15 98.75 +600651.71 5678689.15 97.50 +600651.76 5678625.80 97.50 +600651.87 5679608.42 97.50 +600651.94 5679240.36 97.50 +600652.13 5680873.26 97.50 +600652.48 5679351.79 97.50 +600653.17 5676969.85 100.00 +600653.54 5679833.04 97.50 +600653.81 5680364.21 97.50 +600653.94 5680883.05 97.50 +600654.01 5678794.73 97.50 +600654.76 5678464.04 98.75 +600654.84 5679754.02 97.50 +600654.87 5676904.93 100.00 +600654.91 5676711.90 101.25 +600655.68 5677388.59 98.75 +600655.77 5678959.57 97.50 +600656.04 5680506.51 97.50 +600657.04 5678912.29 97.50 +600657.64 5680753.36 97.50 +600657.69 5678570.28 97.50 +600657.78 5678739.90 97.50 +600657.87 5679280.47 96.25 +600658.07 5678838.37 97.50 +600658.32 5676961.29 100.00 +600658.45 5680790.97 97.50 +600659.03 5678682.35 97.50 +600659.11 5676825.87 100.00 +600659.26 5681179.24 97.50 +600659.54 5680372.40 97.50 +600659.70 5679245.15 96.25 +600659.76 5678619.80 97.50 +600659.90 5677379.54 98.75 +600659.93 5679745.52 97.50 +600660.31 5676913.25 100.00 +600660.94 5679236.14 97.50 +600661.02 5679604.56 97.50 +600661.11 5678500.40 98.75 +600661.14 5679826.64 97.50 +600661.95 5679348.93 97.50 +600661.96 5676704.81 101.25 +600662.49 5676952.21 100.00 +600662.50 5676922.99 100.00 +600662.58 5678789.99 97.50 +600663.01 5680500.31 97.50 +600663.15 5681185.15 97.50 +600663.26 5677221.22 98.75 +600663.61 5678953.37 97.50 +600664.13 5677370.48 98.75 +600664.42 5679736.66 97.50 +600664.46 5680760.66 97.50 +600664.55 5676932.76 100.00 +600664.64 5678464.62 98.75 +600664.77 5677231.10 98.75 +600664.81 5676942.74 100.00 +600665.12 5677290.87 98.75 +600665.16 5677300.85 98.75 +600665.56 5677310.83 98.75 +600665.62 5677280.89 98.75 +600665.80 5677360.63 98.75 +600665.96 5677320.81 98.75 +600666.09 5678908.05 97.50 +600666.12 5677270.91 98.75 +600666.14 5678675.32 97.50 +600666.24 5677240.98 98.75 +600666.38 5677330.80 98.75 +600666.62 5677260.93 98.75 +600666.79 5677340.78 98.75 +600666.84 5677250.95 98.75 +600666.90 5681174.15 97.50 +600667.07 5678613.07 97.50 +600667.20 5677350.76 98.75 +600667.23 5678567.29 97.50 +600667.58 5679278.27 96.25 +600667.59 5680786.96 97.50 +600667.60 5676820.61 100.00 +600667.77 5678739.73 97.50 +600667.79 5676580.83 101.25 +600667.98 5677215.67 98.75 +600667.99 5678837.07 97.50 +600668.05 5679819.53 97.50 +600668.39 5680375.63 97.50 +600668.53 5676570.86 101.25 +600668.58 5676590.48 101.25 +600668.90 5679727.80 97.50 +600668.95 5676697.68 101.25 +600669.59 5679244.60 96.25 +600669.80 5680768.70 97.50 +600669.81 5679231.54 97.50 +600670.00 5680494.12 97.50 +600670.17 5679600.69 97.50 +600670.34 5678496.95 98.75 +600670.56 5679344.17 97.50 +600671.34 5678947.04 97.50 +600671.90 5680778.48 97.50 +600672.15 5678787.18 97.50 +600672.38 5681186.14 97.50 +600672.57 5679718.57 97.50 +600673.17 5676599.36 101.25 +600673.55 5678605.46 97.50 +600673.63 5681150.29 96.25 +600674.33 5680523.06 96.25 +600674.48 5678466.08 98.75 +600674.59 5679812.06 97.50 +600674.82 5676563.15 101.25 +600674.86 5680532.91 96.25 +600675.25 5678904.07 97.50 +600675.41 5680371.35 97.50 +600675.45 5676690.07 101.25 +600675.65 5678672.92 97.50 +600675.68 5680542.75 96.25 +600675.90 5681172.57 97.50 +600676.00 5676815.21 100.00 +600676.20 5679709.32 97.50 +600676.68 5680552.57 96.25 +600677.03 5678566.31 97.50 +600677.23 5679275.80 96.25 +600677.30 5676608.46 101.25 +600677.54 5680516.08 96.25 +600677.64 5680562.39 96.25 +600677.66 5677213.26 98.75 +600677.76 5678739.37 97.50 +600677.80 5678835.42 97.50 +600677.94 5679337.44 97.50 +600678.47 5680572.23 96.25 +600678.56 5678491.36 98.75 +600678.68 5679226.94 97.50 +600678.73 5681157.91 96.25 +600679.05 5678940.69 97.50 +600679.31 5680582.07 96.25 +600679.55 5679244.41 96.25 +600679.57 5679597.52 97.50 +600679.93 5679700.11 97.50 +600680.25 5680362.61 97.50 +600680.33 5679803.96 97.50 +600680.39 5680591.88 96.25 +600681.02 5678599.15 97.50 +600681.26 5676555.51 101.25 +600681.53 5680601.68 96.25 +600681.60 5676682.25 101.25 +600681.66 5681186.59 97.50 +600681.97 5678785.34 97.50 +600682.10 5676617.11 101.25 +600682.47 5681146.05 96.25 +600682.67 5680611.49 96.25 +600682.92 5681178.99 97.75 +600682.96 5678678.53 97.50 +600683.75 5678469.58 98.75 +600683.77 5680621.30 96.25 +600683.81 5679690.97 97.50 +600684.28 5676809.61 100.00 +600684.31 5679218.92 97.50 +600684.46 5678900.18 97.50 +600684.78 5680631.12 96.25 +600685.02 5680353.83 97.50 +600685.11 5681173.02 97.50 +600685.23 5679795.37 97.50 +600685.32 5679330.71 97.50 +600685.73 5680520.09 96.25 +600685.78 5680640.94 96.25 +600685.83 5676673.19 101.25 +600685.97 5678484.84 98.75 +600686.64 5678934.19 97.50 +600686.81 5679273.09 96.25 +600686.81 5680650.76 96.25 +600686.97 5678831.44 97.50 +600687.02 5678566.62 97.50 +600687.08 5677209.91 98.75 +600687.36 5678687.50 97.50 +600687.68 5679681.83 97.50 +600687.71 5678738.35 97.50 +600687.93 5681160.98 96.25 +600687.94 5680660.57 96.25 +600688.59 5676624.57 101.25 +600688.73 5679593.84 97.50 +600688.74 5679786.15 97.50 +600688.82 5676663.67 101.25 +600689.08 5680670.37 96.25 +600689.12 5676549.61 101.25 +600689.28 5678476.64 98.75 +600689.35 5679210.30 97.50 +600689.50 5679244.22 96.25 +600689.81 5679776.28 97.50 +600689.84 5678597.29 97.50 +600690.21 5680680.18 96.25 +600690.96 5681186.70 97.50 +600691.19 5676654.00 101.25 +600691.52 5680528.09 96.25 +600691.57 5676634.11 101.25 +600691.71 5676644.01 101.25 +600691.86 5678783.90 97.50 +600692.15 5681144.72 96.25 +600692.20 5679673.00 97.50 +600692.28 5679323.62 97.50 +600692.60 5676804.08 100.00 +600692.91 5678695.65 97.50 +600693.23 5678895.41 97.50 +600693.29 5680348.53 97.50 +600693.39 5680689.53 96.25 +600693.48 5679201.24 97.50 +600693.96 5678927.39 97.50 +600694.04 5678613.91 97.50 +600694.19 5680586.60 96.00 +600694.39 5681173.57 97.50 +600695.91 5677205.35 98.75 +600695.97 5679768.51 97.50 +600696.00 5680536.88 96.25 +600696.09 5678604.29 97.50 +600696.19 5679269.78 96.25 +600696.32 5678828.34 97.50 +600696.57 5680698.87 96.25 +600696.91 5679191.85 97.50 +600697.02 5678566.68 97.50 +600697.20 5679664.42 97.50 +600697.22 5679588.69 97.50 +600697.65 5678737.34 97.50 +600697.72 5681161.44 96.25 +600697.92 5676544.87 101.25 +600698.14 5679315.53 97.50 +600698.44 5681109.78 96.25 +600698.94 5680312.91 97.50 +600699.41 5679244.96 96.25 +600699.75 5680708.22 96.25 +600699.79 5680302.96 97.50 +600700.10 5681100.48 96.25 +600700.20 5680545.80 96.25 +600700.26 5681186.85 97.50 +600700.30 5680322.80 97.50 +600700.33 5679182.47 97.50 +600700.40 5678616.39 97.50 +600700.71 5680342.61 97.50 +600701.09 5676798.82 100.00 +600701.20 5681141.66 96.25 +600701.62 5678920.99 97.50 +600701.71 5678782.27 97.50 +600701.81 5680332.68 97.50 +600701.92 5679655.69 97.50 +600702.19 5679760.76 97.50 +600702.25 5678698.94 97.50 +600702.49 5678895.31 97.50 +600702.93 5680717.56 96.25 +600703.06 5681117.99 96.25 +600703.38 5681175.75 97.50 +600703.68 5680555.04 96.25 +600703.83 5680294.79 97.50 +600704.44 5677200.15 98.75 +600704.45 5679307.82 97.50 +600704.61 5679173.52 97.50 +600704.91 5679582.40 97.50 +600705.11 5680173.25 97.50 +600705.49 5679266.19 96.25 +600705.60 5681092.37 96.25 +600706.19 5679646.72 97.50 +600706.31 5678828.57 97.50 +600706.34 5678912.90 97.50 +600706.55 5680726.74 96.25 +600706.71 5676540.10 101.25 +600706.78 5680182.79 97.50 +600706.90 5681183.52 97.50 +600707.01 5678566.41 97.50 +600707.09 5679428.06 97.50 +600707.16 5679419.93 97.50 +600707.17 5680564.27 96.25 +600707.35 5678903.04 97.50 +600707.46 5681162.40 96.25 +600707.60 5678736.32 97.50 +600707.99 5681083.10 96.25 +600708.20 5681126.29 96.25 +600708.33 5681135.64 96.25 +600708.55 5681073.32 96.25 +600708.80 5681063.52 96.25 +600708.99 5679753.52 97.50 +600709.29 5679246.21 96.25 +600709.58 5676793.55 100.00 +600709.62 5678612.57 97.50 +600710.25 5680735.90 96.25 +600710.32 5679165.33 97.50 +600710.47 5679637.76 97.50 +600710.63 5679218.02 97.50 +600710.95 5679410.85 97.50 +600710.99 5680166.66 97.50 +600711.49 5678780.17 97.50 +600711.54 5680573.12 96.25 +600711.83 5679301.15 97.50 +600711.88 5677193.57 98.75 +600711.90 5678698.39 97.50 +600712.07 5680289.24 97.50 +600712.50 5679227.83 97.50 +600712.51 5680631.98 96.25 +600712.65 5680622.11 96.25 +600712.71 5679576.26 97.50 +600712.78 5680612.24 96.25 +600712.90 5680190.47 97.50 +600712.97 5680602.37 96.25 +600713.13 5680641.83 96.25 +600713.16 5680745.30 96.25 +600713.35 5679628.27 97.50 +600713.37 5680582.66 96.25 +600713.45 5680592.51 96.25 +600713.76 5680651.69 96.25 +600713.83 5679261.51 96.25 +600714.05 5679208.80 97.50 +600714.72 5679401.77 97.50 +600714.96 5680661.46 96.25 +600715.24 5679433.14 97.50 +600715.35 5679252.74 96.25 +600715.46 5676535.26 101.25 +600715.69 5680754.84 96.25 +600715.79 5679746.28 97.50 +600716.04 5679157.13 97.50 +600716.09 5679618.74 97.50 +600716.20 5678829.45 97.50 +600716.87 5680671.15 96.25 +600716.99 5678566.17 97.50 +600716.99 5678733.18 97.50 +600717.16 5681163.86 96.25 +600717.29 5679199.38 97.50 +600718.33 5676788.74 100.00 +600718.44 5678690.83 97.50 +600718.79 5680680.83 96.25 +600718.87 5677186.43 98.75 +600719.06 5677017.30 98.75 +600719.14 5678609.51 97.50 +600719.36 5680764.00 96.25 +600719.49 5679232.93 97.50 +600719.73 5679189.69 97.50 +600720.13 5677026.71 98.75 +600720.32 5679296.68 97.50 +600720.45 5680197.02 97.50 +600720.92 5680166.81 97.50 +600720.97 5679570.75 97.50 +600721.03 5680690.43 96.25 +600721.12 5679394.99 97.50 +600721.23 5678777.95 97.50 +600721.64 5680286.37 97.50 +600721.78 5679610.61 97.50 +600722.13 5679738.65 97.50 +600722.33 5679149.38 97.50 +600722.82 5677008.60 98.75 +600723.94 5680699.87 96.25 +600724.18 5676530.38 101.25 +600724.74 5679181.06 97.50 +600724.78 5678683.10 97.50 +600725.02 5679432.15 97.50 +600725.30 5680770.18 96.25 +600725.72 5678832.51 97.50 +600726.06 5677179.49 98.75 +600726.16 5678729.20 97.50 +600726.45 5680394.75 96.25 +600726.81 5677033.66 98.75 +600726.85 5680709.30 96.25 +600726.96 5678566.82 97.50 +600727.15 5676784.04 100.00 +600727.48 5679602.47 97.50 +600728.06 5680404.14 96.25 +600728.11 5679730.74 97.50 +600728.35 5680385.56 96.25 +600728.66 5678606.45 97.50 +600728.75 5680279.91 97.50 +600728.77 5679141.73 97.50 +600729.12 5679235.57 97.50 +600729.33 5680201.58 97.50 +600729.45 5676636.77 100.00 +600729.49 5680718.81 96.25 +600729.62 5680130.20 97.50 +600729.76 5680120.47 97.50 +600729.95 5677001.63 98.75 +600730.28 5679296.00 97.50 +600730.41 5680390.47 96.00 +600730.46 5679172.88 97.50 +600730.48 5679393.12 97.50 +600730.49 5680169.20 97.50 +600730.56 5678774.36 97.50 +600730.60 5678674.98 97.50 +600730.67 5679569.17 97.50 +600731.16 5676626.93 100.00 +600731.34 5678721.15 97.50 +600731.92 5680412.60 96.25 +600732.12 5680728.33 96.25 +600732.20 5680270.85 97.50 +600732.37 5676524.65 101.25 +600732.82 5679722.00 97.50 +600733.14 5679594.31 97.50 +600733.23 5677172.53 98.75 +600733.31 5676645.66 100.00 +600733.65 5680260.97 97.50 +600733.84 5680377.98 96.25 +600733.87 5680250.98 97.50 +600734.26 5680737.93 96.25 +600734.32 5680767.44 96.25 +600734.72 5676618.06 100.00 +600734.82 5680757.62 96.25 +600734.85 5679431.89 97.50 +600735.12 5680747.76 96.25 +600735.21 5679134.09 97.50 +600735.23 5677039.00 98.75 +600735.24 5678835.58 97.50 +600735.29 5680138.40 97.50 +600735.53 5678666.33 97.50 +600735.55 5680382.61 96.00 +600735.75 5678571.00 97.50 +600735.87 5680241.30 97.50 +600735.92 5676779.27 100.00 +600736.42 5679164.86 97.50 +600736.60 5678713.02 97.50 +600737.26 5679576.07 97.50 +600737.29 5681109.34 97.50 +600737.31 5680393.12 96.00 +600737.47 5678734.53 97.50 +600737.53 5679713.25 97.50 +600737.56 5681118.40 97.50 +600738.07 5676995.95 98.75 +600738.09 5680206.38 97.50 +600738.09 5679585.84 97.50 +600738.25 5678603.63 97.50 +600738.54 5681099.43 97.50 +600738.94 5680119.09 97.50 +600738.97 5679236.66 97.50 +600739.34 5679396.55 97.50 +600739.34 5677164.63 98.75 +600739.56 5680232.02 97.50 +600739.64 5680173.06 97.50 +600739.76 5676652.60 100.00 +600739.88 5680147.28 97.50 +600739.88 5678771.13 97.50 +600740.06 5681089.54 97.50 +600740.25 5679295.43 97.50 +600740.29 5678657.61 97.50 +600740.45 5681079.56 97.50 +600740.50 5680371.11 96.25 +600740.56 5676518.91 101.25 +600741.05 5680414.48 96.25 +600741.57 5679126.40 97.50 +600741.88 5676611.09 100.00 +600742.36 5679704.57 97.50 +600742.37 5679156.83 97.50 +600743.38 5680376.55 96.00 +600743.66 5678840.95 97.50 +600743.71 5680222.93 97.50 +600744.05 5680213.64 97.50 +600744.27 5676773.79 100.00 +600744.34 5678576.08 97.50 +600744.51 5677042.60 98.75 +600744.69 5679431.92 97.50 +600745.02 5678707.62 97.50 +600745.03 5680155.84 97.50 +600745.05 5678730.89 97.50 +600745.25 5678738.39 97.50 +600745.40 5681080.33 97.50 +600745.45 5677156.73 98.75 +600745.47 5679417.85 97.25 +600745.53 5680805.28 96.25 +600745.73 5680387.92 96.00 +600745.91 5680815.07 96.25 +600746.25 5681123.17 97.50 +600746.33 5679117.61 97.50 +600746.40 5678649.69 97.50 +600746.55 5679695.58 97.50 +600746.58 5676990.75 98.75 +600746.88 5680363.97 96.25 +600747.22 5681002.35 97.50 +600747.71 5678601.98 97.50 +600747.86 5679401.46 97.50 +600748.00 5676512.26 101.25 +600748.16 5676603.33 100.00 +600748.32 5679148.80 97.50 +600748.50 5678776.12 97.50 +600748.55 5680930.11 97.50 +600748.59 5680121.69 97.50 +600748.63 5681011.47 97.50 +600748.63 5680920.12 97.50 +600748.70 5680777.32 96.25 +600748.96 5679236.64 97.50 +600749.03 5676656.07 100.00 +600749.18 5680910.15 97.50 +600749.22 5680175.90 97.50 +600749.74 5680411.00 96.25 +600750.17 5680939.89 97.50 +600750.22 5679294.88 97.50 +600750.45 5680787.11 96.25 +600750.63 5680768.54 96.25 +600750.63 5680797.08 96.25 +600750.77 5679108.67 97.50 +600751.48 5679687.07 97.50 +600751.50 5681088.25 97.50 +600751.75 5680371.12 96.00 +600752.08 5678846.35 97.50 +600752.13 5677149.34 98.75 +600752.14 5678641.51 97.50 +600752.37 5680820.98 96.25 +600752.50 5680162.42 97.50 +600752.62 5676768.30 100.00 +600753.24 5680356.84 96.25 +600753.40 5678580.32 97.50 +600753.46 5680901.29 97.50 +600753.64 5678702.60 97.50 +600753.69 5680949.07 97.50 +600753.84 5681129.67 97.50 +600753.92 5680382.24 96.00 +600754.12 5681019.44 97.50 +600754.14 5677044.90 98.75 +600754.27 5679433.65 97.50 +600754.31 5679140.81 97.50 +600754.42 5676595.54 100.00 +600754.47 5678727.81 97.50 +600754.89 5679099.57 97.50 +600754.98 5678736.83 97.50 +600755.00 5680997.68 97.50 +600755.11 5676985.59 98.75 +600755.20 5676505.33 101.25 +600755.73 5679407.36 97.50 +600755.93 5678607.68 97.50 +600756.38 5678782.23 97.50 +600756.43 5679070.06 97.50 +600756.97 5679090.00 97.50 +600757.19 5679080.01 97.50 +600757.25 5678632.93 97.50 +600757.42 5679061.09 97.50 +600757.43 5680394.58 96.25 +600757.58 5679679.23 97.50 +600757.86 5681095.95 97.50 +600758.32 5680123.95 97.50 +600758.51 5680179.47 97.50 +600758.65 5676653.36 100.00 +600758.86 5680407.52 96.25 +600758.95 5679236.61 97.50 +600759.48 5677142.57 98.75 +600759.75 5680893.52 97.50 +600759.81 5680365.24 96.00 +600759.97 5680768.48 96.25 +600760.14 5679293.83 97.50 +600760.16 5680168.84 97.50 +600760.29 5676761.90 100.00 +600760.31 5680956.56 97.50 +600760.31 5679132.82 97.50 +600760.50 5676587.62 100.00 +600760.63 5678851.52 97.50 +600760.98 5680351.21 96.25 +600761.31 5681136.23 97.50 +600761.35 5680375.71 96.00 +600761.40 5680817.86 96.25 +600761.84 5678624.06 97.50 +600761.88 5681025.65 97.50 +600761.89 5678585.47 97.50 +600761.89 5676497.90 101.25 +600762.04 5678790.47 97.50 +600762.17 5680386.21 96.25 +600762.42 5678614.37 97.50 +600762.77 5678698.53 97.50 +600763.38 5679437.23 97.50 +600763.64 5676980.44 98.75 +600763.68 5679671.39 97.50 +600763.78 5679413.01 97.50 +600763.80 5681001.98 97.50 +600763.87 5678724.68 97.50 +600764.03 5677046.09 98.75 +600764.49 5681103.44 97.50 +600764.63 5678734.58 97.50 +600765.09 5680396.87 96.25 +600765.16 5678446.35 98.75 +600765.69 5679055.47 97.50 +600765.91 5680885.65 97.50 +600766.31 5679124.83 97.50 +600766.37 5676579.54 100.00 +600766.87 5678437.01 98.75 +600766.90 5677135.88 98.75 +600766.92 5678656.71 97.50 +600767.01 5680963.98 97.50 +600767.71 5678798.70 97.50 +600767.73 5680181.75 97.50 +600767.83 5680359.32 96.00 +600767.90 5676755.43 100.00 +600767.90 5680175.16 97.50 +600768.05 5680368.31 96.00 +600768.11 5680125.98 97.50 +600768.14 5676650.34 100.00 +600768.33 5678455.44 98.75 +600768.36 5678665.76 97.50 +600768.37 5680405.37 96.25 +600768.59 5676490.48 101.25 +600768.72 5680345.59 96.25 +600768.80 5679238.21 97.50 +600769.00 5681032.48 97.50 +600769.34 5678856.44 97.50 +600769.38 5680771.74 96.25 +600769.48 5679296.61 97.50 +600769.71 5680380.05 96.25 +600770.17 5681140.52 97.50 +600770.34 5680813.47 96.25 +600770.59 5678590.25 97.50 +600770.90 5678728.24 97.25 +600771.14 5680794.96 96.00 +600771.18 5679664.99 97.50 +600771.86 5680877.62 97.50 +600771.96 5676571.26 100.00 +600771.97 5679418.45 97.50 +600771.99 5679441.99 97.50 +600771.99 5681007.56 97.50 +600772.03 5678694.89 97.50 +600772.19 5681109.47 97.50 +600772.24 5676975.40 98.75 +600772.32 5679116.84 97.50 +600773.32 5678721.68 97.50 +600773.51 5677049.27 98.75 +600773.87 5678649.62 97.50 +600774.03 5679049.99 97.50 +600774.08 5680971.05 97.50 +600774.35 5677129.23 98.75 +600774.42 5678733.69 97.50 +600774.59 5678805.92 97.50 +600774.60 5678431.71 98.75 +600774.82 5681040.54 97.50 +600774.85 5680396.31 96.25 +600775.29 5676483.06 101.25 +600775.45 5680931.32 97.50 +600775.52 5676748.97 100.00 +600775.56 5680923.60 97.50 +600775.86 5680353.40 96.00 +600775.95 5680362.28 96.00 +600776.70 5676739.87 100.00 +600776.75 5676645.28 100.00 +600776.91 5680130.17 97.50 +600776.91 5680340.67 96.25 +600777.01 5681025.81 98.00 +600777.16 5678457.56 98.75 +600777.22 5676562.77 100.00 +600777.47 5680402.45 96.25 +600777.64 5680869.46 97.50 +600777.88 5679301.72 97.50 +600777.94 5678667.75 97.50 +600778.04 5678861.36 97.50 +600778.55 5679109.03 97.50 +600778.65 5679239.92 97.50 +600778.81 5680376.52 96.25 +600779.23 5679659.17 97.50 +600779.32 5680772.06 96.25 +600779.82 5678594.07 97.50 +600779.84 5680810.46 96.25 +600779.92 5681142.72 97.50 +600780.05 5681013.37 97.50 +600780.37 5679423.56 97.50 +600780.60 5678725.87 97.25 +600780.98 5676970.61 98.75 +600781.15 5680939.48 97.50 +600781.19 5678642.82 97.50 +600781.26 5681113.68 97.50 +600781.42 5679444.24 97.50 +600781.56 5681047.75 97.50 +600781.70 5677122.47 98.75 +600781.93 5678693.50 97.50 +600782.13 5678812.41 97.50 +600782.17 5680976.85 97.50 +600782.17 5676734.21 100.00 +600782.73 5679045.06 97.50 +600782.89 5678719.11 97.50 +600782.99 5677052.43 98.75 +600783.14 5678427.77 98.75 +600783.28 5680904.77 97.50 +600783.42 5680861.30 97.50 +600783.56 5676555.05 100.00 +600783.76 5676477.79 101.25 +600784.14 5680927.74 97.50 +600784.33 5678733.91 97.50 +600784.34 5680348.15 96.00 +600784.38 5679309.23 97.50 +600784.50 5680357.32 96.00 +600784.86 5680136.22 97.50 +600784.88 5679101.31 97.50 +600785.04 5676639.79 100.00 +600785.23 5680335.94 96.25 +600785.77 5678661.73 97.50 +600786.75 5678456.71 98.75 +600786.85 5680778.31 96.25 +600786.93 5678865.88 97.50 +600787.21 5680947.25 97.50 +600787.70 5679654.32 97.50 +600787.86 5680372.84 96.25 +600787.89 5677114.63 98.75 +600788.00 5680900.08 97.50 +600788.32 5681018.88 97.50 +600788.49 5679241.66 97.50 +600788.68 5681038.45 97.50 +600788.78 5679428.67 97.50 +600788.98 5678636.55 97.50 +600789.06 5681054.28 97.50 +600789.19 5680853.14 97.50 +600789.46 5680808.43 96.25 +600789.52 5680911.26 97.50 +600789.53 5678596.46 97.50 +600789.72 5676965.82 98.75 +600789.76 5681144.48 97.50 +600790.16 5679317.37 97.50 +600790.40 5678723.97 97.25 +600790.41 5676547.79 100.00 +600790.57 5680982.27 97.50 +600790.61 5678817.71 97.50 +600791.03 5679443.77 97.50 +600791.14 5681114.59 97.50 +600791.42 5679040.14 97.50 +600791.71 5680934.25 97.50 +600791.71 5676731.28 100.00 +600791.74 5678691.69 97.50 +600792.09 5680955.98 97.50 +600792.18 5679094.48 97.50 +600792.25 5676632.88 100.00 +600792.31 5676472.61 101.25 +600792.46 5678716.54 97.50 +600792.51 5677055.46 98.75 +600792.57 5680142.58 97.50 +600792.76 5678427.99 98.75 +600792.92 5680343.08 96.00 +600793.49 5681046.98 97.50 +600793.64 5680331.37 96.25 +600793.94 5680354.10 96.00 +600793.99 5679326.55 97.50 +600794.05 5678732.00 97.50 +600794.08 5677106.79 98.75 +600794.18 5680784.52 96.25 +600794.60 5678657.32 97.50 +600794.73 5680844.82 97.50 +600795.37 5679435.87 97.50 +600796.17 5678458.68 98.75 +600796.17 5681024.97 97.50 +600796.22 5680903.31 97.50 +600796.30 5678869.37 97.50 +600796.58 5681060.78 97.50 +600796.68 5681039.33 97.50 +600796.86 5680369.03 96.25 +600796.95 5680917.02 97.50 +600796.98 5680964.70 97.50 +600797.11 5678443.53 99.00 +600797.15 5678630.90 97.50 +600797.43 5679652.30 97.50 +600797.90 5679245.01 97.50 +600798.27 5678824.11 97.50 +600798.35 5676542.44 100.00 +600798.46 5676961.03 98.75 +600798.65 5679335.12 97.50 +600799.14 5680940.94 97.50 +600799.41 5680808.98 96.25 +600799.45 5678597.55 97.50 +600799.47 5676625.97 100.00 +600799.48 5679087.66 97.50 +600799.56 5681146.44 97.50 +600799.98 5680985.51 97.50 +600800.08 5679035.14 97.50 +600800.09 5681054.41 97.50 +600800.22 5676726.03 100.00 +600800.26 5680836.49 97.50 +600800.27 5677098.95 98.75 +600800.32 5678722.82 97.25 +600800.86 5677060.93 98.75 +600800.88 5681116.16 97.50 +600801.33 5678688.87 97.50 +600801.71 5680144.34 97.50 +600801.74 5676469.46 101.25 +600801.89 5680338.71 96.00 +600801.95 5680973.37 97.50 +600802.09 5680326.88 96.25 +600802.26 5678715.85 97.50 +600802.34 5678428.80 98.75 +600802.72 5681202.03 97.50 +600803.27 5680788.55 96.25 +600803.38 5680909.41 97.50 +600803.42 5680350.99 96.00 +600803.64 5677089.57 98.75 +600803.77 5678730.05 97.50 +600803.93 5681031.19 97.50 +600804.12 5681067.25 97.50 +600804.39 5678655.91 97.50 +600804.39 5680922.78 97.50 +600804.87 5681044.91 97.50 +600804.92 5677079.73 98.75 +600805.13 5679079.44 97.50 +600805.26 5677069.80 98.75 +600805.58 5678460.25 98.75 +600805.67 5678872.86 97.50 +600805.78 5680828.16 97.50 +600805.81 5678830.68 97.50 +600805.85 5680365.22 96.25 +600805.99 5680982.22 97.50 +600806.11 5679341.76 97.50 +600806.20 5678626.64 97.50 +600806.39 5680947.81 97.50 +600807.02 5676955.92 98.75 +600807.04 5679649.87 97.50 +600807.32 5679248.36 97.50 +600807.94 5681060.49 97.50 +600808.01 5676621.06 100.00 +600808.20 5679029.38 97.50 +600808.21 5676540.82 100.00 +600808.65 5676720.69 100.00 +600808.94 5680811.69 96.25 +600808.94 5681198.20 97.50 +600809.07 5681149.48 97.50 +600809.13 5681208.88 97.50 +600809.42 5678598.31 97.50 +600810.07 5678684.24 97.50 +600810.11 5681120.01 97.50 +600810.25 5678721.66 97.25 +600810.65 5679071.11 97.50 +600810.92 5680929.55 97.50 +600811.01 5680914.87 97.50 +600811.02 5680334.73 96.00 +600811.04 5680794.71 96.25 +600811.05 5680324.19 96.25 +600811.29 5680146.42 97.50 +600811.45 5681037.69 97.50 +600811.46 5676467.14 101.25 +600811.67 5681073.72 97.50 +600811.89 5678430.05 98.75 +600812.16 5678716.07 97.50 +600812.41 5681051.38 97.50 +600812.96 5680348.10 96.00 +600813.48 5678728.10 97.50 +600813.56 5678837.00 97.50 +600814.38 5678655.85 97.50 +600814.77 5679345.99 97.50 +600814.83 5678457.59 98.75 +600814.83 5680361.36 96.25 +600814.94 5680824.66 97.50 +600814.96 5680952.94 97.50 +600815.04 5678876.35 97.50 +600815.44 5678623.12 97.50 +600815.56 5676950.78 98.75 +600815.87 5681066.49 97.50 +600815.93 5679023.04 97.50 +600815.94 5680926.76 97.25 +600816.17 5679062.78 97.50 +600816.40 5679646.54 97.50 +600816.73 5679251.71 97.50 +600816.78 5676714.88 100.00 +600816.92 5680604.19 97.50 +600817.17 5676617.07 100.00 +600817.41 5680594.33 97.50 +600817.89 5680816.04 96.25 +600817.93 5680935.71 97.50 +600818.02 5681212.69 97.50 +600818.07 5676539.20 100.00 +600818.28 5681200.66 97.50 +600818.51 5681152.79 97.50 +600818.52 5678678.91 97.50 +600818.58 5680801.21 96.25 +600818.66 5681080.75 97.50 +600818.74 5680613.83 97.50 +600818.91 5680919.97 97.50 +600819.06 5681044.05 97.50 +600819.35 5681123.81 97.50 +600819.37 5678599.34 97.50 +600819.48 5678434.98 98.75 +600819.72 5680426.83 97.50 +600819.96 5681057.85 97.50 +600820.20 5678720.79 97.25 +600820.52 5680331.70 96.00 +600820.60 5680323.56 96.25 +600820.69 5680584.88 97.50 +600820.73 5680149.67 97.50 +600821.25 5676465.12 101.25 +600821.70 5679054.46 97.50 +600821.85 5678842.59 97.50 +600821.91 5680716.55 97.50 +600821.99 5678714.93 97.50 +600822.50 5678451.87 98.75 +600822.51 5680345.20 96.00 +600822.94 5680622.90 97.50 +600823.30 5680417.67 97.50 +600823.34 5678727.11 97.50 +600823.55 5679016.62 97.50 +600823.65 5680957.90 97.50 +600823.67 5681072.65 97.50 +600823.81 5680357.50 96.25 +600823.98 5678442.87 98.75 +600824.10 5676945.64 98.75 +600824.15 5680725.82 97.50 +600824.35 5678655.83 97.50 +600824.41 5678879.84 97.50 +600824.56 5679347.96 97.50 +600824.67 5680824.70 97.50 +600824.91 5680575.96 97.50 +600824.91 5676709.07 100.00 +600825.14 5681088.29 97.50 +600825.36 5679642.28 97.50 +600825.37 5678622.89 97.50 +600826.10 5680940.33 97.50 +600826.14 5679255.06 97.50 +600826.33 5676613.08 100.00 +600826.52 5680807.17 96.25 +600826.81 5680925.08 97.50 +600826.92 5679045.94 97.50 +600827.10 5678673.78 97.50 +600827.16 5680819.70 96.25 +600827.22 5681204.34 97.50 +600827.25 5681215.39 97.50 +600827.74 5681156.57 97.50 +600827.83 5681063.92 97.50 +600827.93 5676537.59 100.00 +600827.95 5681048.49 97.50 +600828.13 5680734.99 97.50 +600828.52 5679008.33 97.50 +600828.98 5681126.53 97.50 +600829.34 5680711.88 97.50 +600829.35 5678599.81 97.50 +600829.77 5680997.62 97.50 +600829.96 5681006.95 97.50 +600830.09 5680322.37 96.25 +600830.17 5678719.98 97.25 +600830.18 5680329.67 96.00 +600830.29 5680410.68 97.50 +600830.30 5680629.50 97.50 +600830.37 5680450.62 97.50 +600830.45 5680151.50 97.50 +600830.82 5678846.85 97.50 +600831.05 5676463.16 101.25 +600831.18 5680568.17 97.50 +600831.40 5681078.90 97.50 +600831.79 5678713.45 97.50 +600831.90 5680963.16 97.50 +600831.91 5681095.53 97.50 +600832.09 5679037.39 97.50 +600832.28 5680343.19 96.00 +600833.07 5680354.48 96.25 +600833.21 5678726.17 97.50 +600833.21 5680285.43 97.50 +600833.21 5676703.52 100.00 +600833.30 5676941.87 98.75 +600833.44 5680743.46 97.50 +600833.74 5679637.16 97.50 +600833.80 5680828.45 97.50 +600834.13 5678653.75 97.50 +600834.27 5678881.28 97.50 +600834.34 5679876.78 97.50 +600834.35 5679349.87 97.50 +600834.36 5679886.78 97.50 +600834.39 5679866.80 97.50 +600834.41 5679896.77 97.50 +600834.94 5680929.77 97.50 +600835.03 5680278.00 97.50 +600835.10 5678625.19 97.50 +600835.12 5680812.21 96.25 +600835.31 5679906.69 97.50 +600835.43 5680941.53 97.50 +600835.48 5679856.86 97.50 +600835.60 5679258.28 97.50 +600835.63 5676609.66 100.00 +600835.78 5681069.88 97.50 +600836.24 5680823.76 96.25 +600836.25 5680990.03 97.50 +600836.28 5678669.82 97.50 +600836.42 5681207.26 97.50 +600836.59 5681161.22 97.50 +600836.65 5679028.59 97.50 +600836.75 5681053.12 97.50 +600836.75 5681217.15 97.50 +600837.03 5679916.53 97.50 +600837.22 5680457.81 97.50 +600837.32 5680793.23 97.50 +600837.36 5680971.48 97.50 +600837.81 5679847.22 97.50 +600837.85 5676536.45 100.00 +600838.05 5680635.81 97.50 +600838.07 5681187.78 97.50 +600838.14 5681010.24 97.50 +600838.25 5679009.58 97.50 +600838.37 5680785.13 97.50 +600838.60 5681129.25 97.50 +600838.75 5680405.60 97.50 +600838.84 5680751.87 97.50 +600838.90 5679018.85 97.50 +600838.99 5680146.32 97.50 +600839.13 5681085.14 97.50 +600839.32 5680712.38 97.50 +600839.33 5680562.39 97.50 +600839.34 5678600.04 97.50 +600839.50 5681101.94 97.50 +600839.53 5680320.79 96.25 +600839.71 5679926.12 97.50 +600839.99 5680981.00 97.50 +600840.13 5678719.17 97.25 +600840.15 5680329.67 96.00 +600840.19 5678850.35 97.50 +600840.33 5680937.03 97.50 +600840.47 5679629.85 97.50 +600840.94 5676461.69 101.25 +600841.20 5680290.42 97.50 +600841.29 5679837.86 97.50 +600841.48 5681181.26 97.50 +600841.58 5676698.06 100.00 +600841.59 5678711.98 97.50 +600842.05 5680341.18 96.00 +600842.51 5680351.98 96.25 +600842.52 5680833.33 97.50 +600842.67 5676938.48 98.75 +600843.09 5678725.54 97.50 +600843.66 5681075.94 97.50 +600843.91 5680816.80 96.25 +600844.08 5678652.94 97.50 +600844.17 5679351.70 97.50 +600844.21 5678882.42 97.50 +600844.31 5679934.90 97.50 +600844.38 5680760.19 97.50 +600844.39 5680275.13 97.50 +600844.62 5680464.24 97.50 +600844.72 5678627.88 97.50 +600845.07 5679261.49 97.50 +600845.13 5680828.26 96.25 +600845.20 5681166.28 97.50 +600845.25 5680642.74 97.50 +600845.26 5681192.70 97.50 +600845.33 5678665.63 97.50 +600845.37 5680778.56 97.50 +600845.38 5681058.05 97.50 +600845.43 5681004.18 97.50 +600845.59 5676608.90 100.00 +600845.68 5680797.95 97.50 +600845.75 5681209.81 97.50 +600846.05 5679829.13 97.50 +600846.06 5681219.55 97.50 +600846.67 5681187.65 97.75 +600846.91 5681091.33 97.50 +600846.98 5680140.36 97.50 +600847.03 5681134.44 97.50 +600847.20 5679622.55 97.50 +600847.43 5681107.92 97.50 +600847.63 5680556.87 97.50 +600847.79 5676535.40 100.00 +600848.00 5680769.21 97.50 +600848.43 5680403.79 97.50 +600848.96 5680319.43 96.25 +600849.09 5680714.20 97.50 +600849.33 5678600.33 97.50 +600849.86 5681183.07 97.50 +600849.87 5676692.49 100.00 +600849.91 5680824.52 96.25 +600850.01 5678717.71 97.25 +600850.08 5680995.38 97.50 +600850.11 5678851.57 97.50 +600850.11 5680330.06 96.00 +600850.36 5679942.82 97.50 +600850.39 5680294.24 97.50 +600850.71 5676459.58 101.25 +600850.87 5678658.94 97.50 +600851.20 5680838.30 97.50 +600851.20 5678709.59 97.50 +600851.42 5681082.15 97.50 +600851.44 5679820.71 97.50 +600851.44 5678184.68 98.75 +600851.84 5679613.77 97.50 +600851.86 5680339.62 96.00 +600852.11 5680350.14 96.25 +600852.19 5676935.55 98.75 +600852.21 5678194.60 98.75 +600852.29 5678175.00 98.75 +600852.54 5680649.58 97.50 +600853.00 5678725.34 97.50 +600853.04 5678204.50 98.75 +600853.11 5681195.18 97.50 +600853.58 5681171.75 97.50 +600853.58 5680277.36 97.50 +600853.63 5680468.43 97.50 +600853.92 5678214.41 98.75 +600853.98 5681063.03 97.50 +600854.13 5679351.43 97.50 +600854.14 5678883.57 97.50 +600854.26 5678630.88 97.50 +600854.60 5680133.91 97.50 +600854.69 5681097.52 97.50 +600854.70 5679264.05 97.50 +600854.81 5678224.31 98.75 +600854.85 5681223.59 97.50 +600855.08 5681212.35 97.50 +600855.19 5681140.22 97.50 +600855.41 5680799.89 97.50 +600855.56 5676608.13 100.00 +600855.78 5678165.69 98.75 +600855.78 5681113.29 97.50 +600855.91 5681188.33 97.50 +600856.42 5679604.96 97.50 +600856.83 5681218.51 97.80 +600856.83 5679812.30 97.50 +600856.92 5680553.17 97.50 +600856.92 5680989.74 97.50 +600857.72 5676534.34 100.00 +600857.84 5679949.28 97.50 +600858.09 5676686.80 100.00 +600858.18 5680402.17 97.50 +600858.34 5680321.31 96.25 +600858.75 5680716.77 97.50 +600858.96 5678232.97 98.75 +600859.18 5681088.36 97.50 +600859.27 5678156.38 98.75 +600859.29 5678601.22 97.50 +600859.46 5680298.34 97.50 +600859.76 5679595.67 97.50 +600859.88 5680843.26 97.50 +600859.89 5678716.19 97.25 +600860.04 5678852.76 97.50 +600860.05 5680330.86 96.00 +600860.24 5680655.96 97.50 +600860.48 5676457.47 101.25 +600860.82 5678707.20 97.50 +600861.71 5680348.34 96.25 +600861.80 5676932.97 98.75 +600861.84 5680339.62 96.00 +600861.94 5681104.27 97.50 +600862.23 5680127.46 97.50 +600862.26 5681176.66 97.50 +600862.33 5681068.42 97.50 +600862.62 5679586.20 97.50 +600862.79 5681146.68 97.50 +600862.80 5680281.08 97.50 +600862.91 5678725.15 97.50 +600862.91 5680471.51 97.50 +600863.14 5679804.55 97.50 +600863.47 5681227.96 97.50 +600863.55 5678147.54 98.75 +600863.79 5678633.91 97.50 +600864.09 5678884.58 97.50 +600864.11 5679351.01 97.50 +600864.31 5681215.16 97.50 +600864.52 5679265.90 97.50 +600864.78 5681116.86 97.50 +600864.85 5678240.98 98.75 +600865.25 5680801.43 97.50 +600865.44 5676608.65 100.00 +600866.01 5680992.80 97.50 +600866.21 5680549.48 97.50 +600866.31 5676681.12 100.00 +600866.69 5679953.92 97.50 +600866.90 5681094.63 97.50 +600866.95 5679716.96 97.50 +600867.49 5679577.54 97.50 +600867.54 5680662.73 97.50 +600867.55 5676532.61 100.00 +600867.71 5680399.58 97.50 +600868.02 5680303.38 97.50 +600868.45 5680719.22 97.50 +600868.50 5678604.48 97.50 +600868.54 5681111.70 97.50 +600868.55 5680848.23 97.50 +600868.55 5679726.23 97.50 +600869.00 5679707.20 97.50 +600869.74 5678714.51 97.25 +600869.85 5681074.85 97.50 +600869.90 5680332.32 96.00 +600869.98 5678853.75 97.50 +600870.00 5681153.60 97.50 +600870.07 5678140.04 98.75 +600870.13 5680121.35 97.50 +600870.29 5676455.58 101.25 +600870.37 5678704.55 97.50 +600870.71 5679798.10 97.50 +600871.24 5681181.05 97.50 +600871.48 5680348.46 96.25 +600871.48 5678248.31 98.75 +600871.64 5679697.57 97.50 +600871.71 5676931.89 98.75 +600871.78 5680340.27 96.00 +600871.97 5681232.56 97.50 +600872.36 5679568.89 97.50 +600872.59 5680281.99 97.50 +600872.79 5678725.66 97.50 +600872.83 5680472.10 97.50 +600872.95 5677753.63 97.50 +600873.12 5681219.17 97.50 +600873.24 5678637.17 97.50 +600873.37 5676674.07 100.00 +600873.69 5680670.61 97.50 +600873.71 5680999.17 97.50 +600873.85 5679687.82 97.50 +600873.98 5679352.32 97.50 +600874.03 5678885.58 97.50 +600874.23 5679734.41 97.50 +600874.29 5677743.94 97.50 +600874.34 5679267.75 97.50 +600874.46 5677763.24 97.50 +600874.48 5680543.86 97.50 +600874.57 5681100.94 97.50 +600874.94 5680803.89 97.50 +600875.24 5676610.61 100.00 +600875.53 5679958.56 97.50 +600876.03 5679678.07 97.50 +600876.51 5680308.45 97.50 +600876.58 5679638.80 97.50 +600876.60 5678132.54 98.75 +600876.67 5681123.66 97.50 +600876.74 5679648.70 97.50 +600876.82 5680395.83 97.50 +600876.88 5681081.87 97.50 +600876.90 5678609.87 97.50 +600877.23 5680853.19 97.50 +600877.34 5676530.59 100.00 +600877.58 5679560.48 97.50 +600877.91 5679658.62 97.50 +600878.25 5680721.05 97.50 +600878.34 5680115.65 97.50 +600878.45 5680679.25 97.50 +600878.55 5679791.91 97.50 +600878.69 5681158.38 97.50 +600878.84 5679668.48 97.50 +600878.95 5678212.72 99.00 +600879.00 5678254.81 98.75 +600879.32 5679629.22 97.50 +600879.59 5678712.81 97.25 +600879.72 5680333.90 96.00 +600879.76 5677771.67 97.50 +600879.91 5678701.88 97.50 +600879.93 5676666.63 100.00 +600879.95 5678854.61 97.50 +600879.99 5677737.40 97.50 +600880.18 5676454.12 101.25 +600880.48 5681184.82 97.50 +600880.56 5681225.13 97.50 +600880.57 5680276.80 97.50 +600880.75 5679741.99 97.50 +600880.95 5677672.41 97.50 +600881.06 5676831.52 98.75 +600881.07 5681090.45 97.50 +600881.14 5681117.59 97.50 +600881.20 5680347.62 96.25 +600881.38 5681005.55 97.50 +600881.49 5681232.78 97.50 +600881.68 5676932.03 98.75 +600881.70 5680341.29 96.00 +600881.79 5680688.67 97.50 +600881.96 5680537.31 97.50 +600882.39 5681107.07 97.50 +600882.65 5678726.64 97.50 +600882.67 5678640.49 97.50 +600882.68 5680470.93 97.50 +600882.75 5676821.70 98.75 +600882.96 5676840.98 98.75 +600883.07 5677663.10 97.50 +600883.07 5677681.76 97.50 +600883.24 5678125.17 98.75 +600883.35 5680808.69 97.50 +600883.41 5681130.92 97.50 +600883.83 5679353.93 97.50 +600883.89 5679620.34 97.50 +600884.00 5678886.40 97.50 +600884.04 5676614.68 100.00 +600884.22 5679268.86 97.50 +600884.25 5679553.12 97.50 +600884.28 5679096.71 97.50 +600884.30 5676657.65 100.00 +600884.70 5678616.12 97.50 +600884.75 5679962.43 97.50 +600885.54 5680697.93 97.50 +600885.61 5680391.32 97.50 +600885.77 5677779.58 97.50 +600885.90 5680858.17 97.50 +600886.02 5680292.84 97.25 +600886.29 5680310.30 97.50 +600886.34 5679785.66 97.50 +600886.53 5678261.31 98.75 +600886.58 5680110.01 97.50 +600887.11 5679749.68 97.50 +600887.12 5676528.56 100.00 +600887.32 5680269.52 97.50 +600887.73 5681162.65 97.50 +600887.81 5677742.38 97.50 +600888.04 5679102.84 97.50 +600888.10 5681097.48 97.50 +600888.20 5680722.02 97.50 +600888.28 5679611.36 97.50 +600888.30 5677689.85 97.50 +600888.41 5676848.80 98.75 +600888.43 5676813.81 98.75 +600888.44 5680817.02 97.50 +600888.68 5676648.66 100.00 +600888.72 5680529.95 97.50 +600889.44 5678711.10 97.25 +600889.46 5678699.21 97.50 +600889.67 5680334.53 96.00 +600889.90 5678855.57 97.50 +600889.93 5681188.08 97.50 +600890.05 5676452.58 101.25 +600890.07 5681138.37 97.50 +600890.20 5680706.74 97.50 +600890.45 5681120.85 97.50 +600890.69 5681008.84 97.50 +600890.69 5681112.54 97.50 +600890.73 5679089.09 97.50 +600890.88 5680347.84 96.25 +600890.92 5679545.76 97.50 +600891.26 5678119.28 98.75 +600891.31 5676929.85 98.75 +600891.35 5679758.56 97.50 +600891.48 5677658.10 97.50 +600891.63 5680342.31 96.00 +600891.82 5676620.96 100.00 +600892.10 5678643.81 97.50 +600892.24 5676639.33 100.00 +600892.31 5677787.10 97.50 +600892.36 5679778.01 97.50 +600892.52 5678727.38 97.50 +600892.57 5680470.05 97.50 +600892.57 5680826.11 97.50 +600892.65 5679602.38 97.50 +600892.98 5677750.89 97.50 +600893.21 5679768.36 97.50 +600893.25 5679356.85 97.50 +600893.49 5678620.83 97.50 +600893.56 5679966.94 97.50 +600893.94 5681239.72 97.50 +600893.98 5678886.88 97.50 +600894.21 5680715.23 97.50 +600894.22 5679268.78 97.50 +600894.49 5680386.96 97.50 +600894.50 5680863.27 97.50 +600894.88 5680104.43 97.50 +600894.97 5678265.99 98.75 +600895.03 5676806.35 98.75 +600895.03 5676629.92 100.00 +600895.06 5680522.22 97.50 +600895.80 5681103.76 97.50 +600896.07 5680265.12 97.50 +600896.15 5680310.53 97.50 +600896.56 5679593.19 97.50 +600896.63 5681145.92 97.50 +600896.83 5676854.00 98.75 +600896.90 5676526.53 100.00 +600897.09 5677759.89 97.50 +600897.17 5679105.93 97.50 +600897.30 5677795.71 97.50 +600897.41 5680834.86 97.50 +600897.48 5681162.52 97.50 +600897.67 5681127.76 97.50 +600897.71 5681234.09 97.50 +600897.76 5679538.58 97.50 +600897.81 5677692.92 97.50 +600898.03 5679082.27 97.50 +600898.37 5681193.37 97.50 +600898.83 5676447.80 101.25 +600898.98 5681118.02 97.50 +600899.00 5678696.54 97.50 +600899.27 5678113.39 98.75 +600899.28 5678709.37 97.25 +600899.63 5680335.16 96.00 +600899.73 5681006.31 97.50 +600899.86 5678856.43 97.50 +600900.15 5677769.37 97.50 +600900.24 5679583.90 97.50 +600900.52 5680349.44 96.25 +600900.67 5676926.50 98.75 +600901.03 5681241.61 97.75 +600901.03 5681246.19 97.50 +600901.11 5679973.49 97.50 +600901.25 5681154.77 97.50 +600901.30 5680344.69 96.00 +600901.40 5677656.88 97.50 +600901.41 5676798.69 98.75 +600901.42 5678647.39 97.50 +600902.11 5679361.45 97.50 +600902.28 5677804.34 97.50 +600902.30 5680515.42 97.50 +600902.43 5678727.34 97.50 +600902.50 5680469.83 97.50 +600902.57 5678624.98 97.50 +600903.10 5679574.34 97.50 +600903.10 5680868.36 97.50 +600903.43 5680433.72 96.25 +600903.47 5680382.86 97.50 +600903.63 5680967.44 97.50 +600903.69 5680100.01 97.50 +600903.73 5680997.15 97.50 +600903.76 5680842.50 97.50 +600903.93 5681109.46 97.50 +600903.97 5678887.27 97.50 +600904.06 5680977.21 97.50 +600904.17 5680987.18 97.50 +600904.21 5679268.69 97.50 +600904.40 5680427.81 96.25 +600904.61 5680268.91 97.50 +600904.64 5681134.92 97.50 +600904.67 5678268.19 98.75 +600904.90 5677778.02 97.50 +600905.26 5679532.07 97.50 +600905.50 5679075.68 97.50 +600905.71 5681239.38 97.50 +600905.97 5680278.62 97.50 +600906.07 5680309.65 97.50 +600906.15 5679564.92 97.50 +600906.32 5680288.54 97.50 +600906.71 5676855.34 98.75 +600906.74 5676524.80 100.00 +600907.08 5677813.07 97.50 +600907.13 5681198.20 97.50 +600907.16 5679106.36 97.50 +600907.28 5678107.51 98.75 +600907.30 5677696.02 97.50 +600907.44 5681123.23 97.50 +600907.62 5676443.06 101.25 +600907.78 5676791.02 98.75 +600908.38 5679980.32 97.50 +600908.71 5678694.64 97.50 +600909.09 5678707.48 97.25 +600909.19 5681251.75 97.50 +600909.43 5680336.94 96.00 +600909.63 5676922.14 98.75 +600909.82 5678857.28 97.50 +600910.16 5680351.03 96.25 +600910.19 5680509.27 97.50 +600910.36 5678651.87 97.50 +600910.57 5677786.21 97.50 +600910.68 5679366.55 97.50 +600910.71 5680849.69 97.50 +600910.93 5680874.57 97.50 +600910.97 5680347.12 96.00 +600911.02 5679524.11 97.50 +600911.37 5677657.30 97.50 +600911.38 5681142.30 97.50 +600911.84 5680965.75 97.50 +600911.88 5677821.80 97.50 +600911.89 5680296.07 97.50 +600911.98 5678628.35 97.50 +600911.99 5681115.16 97.50 +600912.28 5679557.03 97.50 +600912.34 5678727.31 97.50 +600912.41 5680470.23 97.50 +600912.42 5680437.60 96.25 +600912.62 5680379.09 97.50 +600912.84 5681246.28 97.50 +600913.36 5680097.50 97.50 +600913.76 5680424.92 96.25 +600913.96 5678887.67 97.50 +600914.12 5679268.13 97.50 +600914.15 5676783.36 98.75 +600914.37 5678270.17 98.75 +600914.39 5679071.11 97.50 +600914.59 5681217.65 97.50 +600915.08 5679987.73 97.50 +600915.88 5681203.02 97.50 +600915.95 5680308.45 97.50 +600916.03 5679515.53 97.50 +600916.42 5681127.36 97.50 +600916.43 5678103.69 98.75 +600916.58 5676523.08 100.00 +600916.61 5676856.47 98.75 +600916.78 5677699.18 97.50 +600916.79 5677809.01 97.25 +600917.14 5679106.33 97.50 +600917.20 5676440.20 101.25 +600917.78 5680856.76 97.50 +600917.98 5677829.57 97.50 +600918.41 5679549.15 97.50 +600918.51 5681224.15 97.50 +600918.52 5678693.23 97.50 +600918.53 5681122.64 97.50 +600918.67 5676917.98 98.75 +600918.82 5680880.64 97.50 +600918.90 5678705.59 97.25 +600919.05 5679371.98 97.50 +600919.06 5680339.50 96.00 +600919.34 5678656.27 97.50 +600919.46 5680505.56 97.50 +600919.75 5680352.90 96.25 +600919.76 5681147.73 97.50 +600919.76 5676775.15 98.75 +600919.78 5678858.14 97.50 +600919.97 5680784.07 97.50 +600920.11 5677730.89 97.50 +600920.41 5677787.79 97.50 +600920.69 5680775.70 97.50 +600920.75 5680349.08 96.00 +600921.06 5680969.60 97.50 +600921.34 5677657.88 97.50 +600921.57 5678723.76 97.50 +600921.57 5678630.62 97.50 +600921.59 5680297.60 97.50 +600921.71 5677739.56 97.50 +600921.74 5680440.41 96.25 +600921.84 5679507.53 97.50 +600922.30 5680471.09 97.50 +600922.32 5680377.38 97.50 +600922.42 5679994.46 97.50 +600922.90 5680421.41 96.25 +600923.03 5680094.99 97.50 +600923.20 5681216.05 97.50 +600923.61 5679067.57 97.50 +600923.61 5679265.01 97.50 +600923.76 5679540.72 97.50 +600923.77 5678889.63 97.50 +600924.26 5678269.12 98.75 +600924.31 5677725.40 97.50 +600924.64 5681207.84 97.50 +600924.86 5677836.77 97.50 +600924.98 5677704.86 97.50 +600925.00 5676766.66 98.75 +600925.32 5681221.30 97.25 +600925.32 5680791.90 97.50 +600925.53 5677747.70 97.50 +600925.69 5678100.07 98.75 +600925.82 5680307.16 97.50 +600926.18 5680430.11 97.50 +600926.40 5676521.21 100.00 +600926.49 5680861.66 97.50 +600926.55 5676857.17 98.75 +600926.59 5676436.80 101.25 +600926.91 5681228.07 97.50 +600926.94 5679378.08 97.50 +600927.06 5679106.49 97.50 +600927.85 5676757.18 98.75 +600928.00 5680884.59 97.50 +600928.16 5679162.25 97.50 +600928.31 5681152.89 97.50 +600928.35 5679500.03 97.50 +600928.37 5676915.67 98.75 +600928.37 5677792.01 97.50 +600928.37 5678692.50 97.50 +600928.40 5678660.51 97.50 +600928.45 5677741.12 97.75 +600928.47 5680342.75 96.00 +600928.79 5679532.09 97.50 +600928.87 5678705.91 97.25 +600928.98 5680502.62 97.50 +600929.21 5680777.36 97.50 +600929.34 5680354.77 96.25 +600929.76 5678858.77 97.50 +600929.99 5679171.83 97.50 +600930.24 5676747.50 98.75 +600930.28 5680445.12 96.25 +600930.34 5680000.54 97.50 +600930.46 5677755.05 97.50 +600930.52 5680972.76 97.50 +600930.69 5680423.06 97.50 +600930.72 5680349.18 96.00 +600930.74 5676737.57 98.75 +600930.99 5676727.61 98.75 +600930.99 5680416.04 96.25 +600931.05 5677730.94 97.50 +600931.08 5677659.86 97.50 +600931.18 5678722.36 97.50 +600931.47 5680296.40 97.50 +600931.51 5678631.40 97.50 +600931.69 5680474.27 97.50 +600931.80 5680798.99 97.50 +600931.93 5681219.15 97.50 +600932.10 5680375.95 97.50 +600932.44 5677711.51 97.50 +600932.71 5680092.51 97.50 +600933.10 5677800.78 97.50 +600933.10 5679261.88 97.50 +600933.30 5680336.94 96.25 +600933.30 5680336.94 97.50 +600933.33 5679523.19 97.50 +600933.40 5681212.67 97.50 +600933.48 5679066.01 97.50 +600933.57 5678891.60 97.50 +600934.01 5681175.60 97.50 +600934.15 5678268.06 98.75 +600934.59 5677838.65 97.50 +600934.67 5679384.40 97.50 +600934.71 5679154.69 97.50 +600934.90 5679180.45 97.50 +600934.90 5676718.64 98.75 +600934.95 5678096.46 98.75 +600934.97 5680433.12 97.50 +600935.01 5680784.86 97.50 +600935.03 5680329.24 97.50 +600935.30 5681232.03 97.50 +600935.43 5680866.13 97.50 +600935.48 5677738.40 97.50 +600935.69 5680305.88 97.50 +600935.75 5679493.40 97.50 +600935.75 5676432.81 101.25 +600936.06 5679110.84 97.50 +600936.09 5680796.05 97.25 +600936.17 5676519.17 100.00 +600936.47 5676856.91 98.75 +600936.97 5681184.97 97.50 +600937.37 5681157.12 97.50 +600937.42 5680887.70 97.50 +600937.61 5677719.88 97.50 +600937.82 5679514.26 97.50 +600937.83 5677809.54 97.50 +600937.84 5678662.62 97.50 +600937.86 5676912.70 98.75 +600937.87 5680345.36 96.25 +600938.01 5677747.03 97.50 +600938.02 5680451.12 96.25 +600938.08 5677755.92 97.50 +600938.23 5678693.07 97.50 +600938.52 5680805.86 97.50 +600938.64 5680502.64 97.50 +600938.75 5680005.91 97.50 +600938.82 5680320.70 97.50 +600938.83 5680357.01 96.25 +600938.85 5678706.45 97.25 +600939.08 5681170.83 97.50 +600939.27 5679145.91 97.50 +600939.30 5680419.45 97.50 +600939.53 5679406.66 97.50 +600939.75 5678858.79 97.50 +600940.04 5681223.64 97.50 +600940.25 5680975.03 97.50 +600940.33 5680413.08 96.25 +600940.72 5677662.50 97.50 +600941.07 5680477.56 97.50 +600941.07 5680792.27 97.50 +600941.09 5678722.59 97.50 +600941.37 5676711.19 98.75 +600941.39 5680297.09 97.50 +600941.41 5678632.78 97.50 +600941.92 5680376.15 97.50 +600941.97 5677728.87 97.50 +600942.22 5680335.11 97.50 +600942.35 5681217.11 97.50 +600942.41 5680090.10 97.50 +600942.50 5681193.30 97.50 +600942.51 5680739.94 97.50 +600942.55 5680340.49 97.50 +600942.56 5677818.31 97.50 +600942.66 5679416.09 97.50 +600942.69 5677834.15 97.50 +600942.75 5679186.62 97.50 +600942.90 5679117.11 97.50 +600942.92 5679136.64 97.50 +600943.01 5681025.95 96.25 +600943.02 5679260.77 97.50 +600943.04 5679486.65 97.50 +600943.30 5679067.36 97.50 +600943.37 5678264.83 98.75 +600943.37 5678893.56 97.50 +600944.05 5679507.06 97.50 +600944.20 5678092.80 98.75 +600944.27 5679126.74 97.50 +600944.29 5680435.40 97.50 +600944.32 5681233.60 97.50 +600944.74 5680869.75 97.50 +600944.88 5676428.73 101.25 +600944.96 5679661.96 97.50 +600945.02 5680812.91 97.50 +600945.62 5680306.66 97.50 +600945.63 5679425.57 97.50 +600945.72 5680351.15 96.25 +600945.91 5681018.79 96.25 +600945.95 5676517.12 100.00 +600946.28 5680456.01 96.25 +600946.36 5676855.70 98.75 +600946.68 5680733.95 97.50 +600946.94 5677737.53 97.50 +600947.03 5680748.19 97.50 +600947.18 5681158.89 97.50 +600947.23 5676909.27 98.75 +600947.26 5677827.09 97.50 +600947.32 5680889.08 97.50 +600947.35 5679652.57 97.50 +600947.49 5680799.42 97.50 +600947.59 5677669.08 97.50 +600947.79 5678661.83 97.50 +600947.82 5678695.59 97.50 +600948.05 5680506.02 97.50 +600948.12 5680360.03 96.25 +600948.20 5681228.05 97.50 +600948.40 5680320.51 97.50 +600948.50 5680008.09 97.50 +600948.59 5679435.05 97.50 +600948.63 5680417.21 97.50 +600948.64 5676704.37 98.75 +600948.69 5681173.45 97.50 +600949.32 5679669.42 97.50 +600949.70 5678859.67 97.50 +600949.73 5681032.76 96.25 +600949.91 5679479.52 97.50 +600949.99 5680411.62 96.25 +600950.01 5678718.36 97.50 +600950.05 5680976.98 97.50 +600950.40 5681199.41 97.50 +600950.44 5680480.85 97.50 +600950.63 5677678.33 97.50 +600951.24 5680298.18 97.50 +600951.27 5678633.96 97.50 +600951.36 5681221.42 97.50 +600951.51 5680993.87 96.25 +600951.66 5680377.75 97.50 +600951.71 5680208.13 97.50 +600951.74 5677688.25 97.50 +600951.75 5680986.70 96.25 +600951.82 5680343.99 97.50 +600951.98 5680336.24 97.50 +600952.00 5679190.33 97.50 +600952.06 5679444.33 97.50 +600952.10 5680087.67 97.50 +600952.10 5677746.08 97.50 +600952.16 5678260.19 98.75 +600952.22 5679644.01 97.50 +600952.29 5680217.58 97.50 +600952.97 5679259.77 97.50 +600953.04 5680755.45 97.50 +600953.06 5679069.46 97.50 +600953.18 5678895.52 97.50 +600953.19 5680817.50 97.50 +600953.32 5681142.25 96.25 +600953.42 5678089.08 98.75 +600953.65 5679508.58 97.50 +600953.86 5676424.36 101.25 +600953.87 5680739.05 97.50 +600953.90 5680435.57 97.50 +600954.14 5680873.14 97.50 +600954.51 5680805.97 97.50 +600954.77 5680354.83 96.25 +600955.15 5681021.37 96.25 +600955.35 5678701.79 97.50 +600955.36 5677696.50 97.50 +600955.39 5680305.84 97.50 +600955.73 5679471.47 97.50 +600955.73 5676515.07 100.00 +600955.83 5681135.61 96.25 +600955.86 5681163.78 97.50 +600955.91 5676697.55 98.75 +600956.02 5678656.14 97.50 +600956.04 5680456.59 96.25 +600956.06 5676853.47 98.75 +600956.12 5679389.17 97.50 +600956.21 5678711.43 97.50 +600956.23 5680495.58 96.25 +600956.46 5679453.23 97.50 +600956.60 5676905.90 98.75 +600956.62 5681039.96 96.25 +600957.05 5680226.29 97.50 +600957.05 5681178.91 97.50 +600957.16 5680890.84 97.50 +600957.26 5677754.64 97.50 +600957.27 5680509.81 97.50 +600957.28 5680363.42 96.25 +600957.42 5679635.61 97.50 +600957.85 5681206.06 97.50 +600957.92 5679517.61 97.50 +600957.95 5679666.33 97.50 +600958.17 5680416.10 97.50 +600958.25 5680006.63 97.50 +600958.30 5680320.37 97.50 +600958.82 5680762.90 97.50 +600958.88 5679462.72 97.50 +600959.24 5680813.94 97.50 +600959.36 5680999.05 96.25 +600959.39 5680293.67 97.50 +600959.61 5678860.94 97.50 +600959.63 5680979.81 97.50 +600959.68 5680746.47 97.50 +600959.75 5678628.66 97.50 +600959.76 5680410.98 96.25 +600959.80 5678254.12 98.75 +600959.91 5681226.60 97.50 +600959.95 5680483.70 97.50 +600960.27 5681148.83 96.25 +600960.34 5680503.22 96.25 +600960.44 5680204.38 97.50 +600960.46 5680987.03 96.25 +600960.58 5677764.05 97.50 +600960.60 5677675.47 97.50 +600960.62 5679194.92 97.50 +600960.82 5680082.80 97.50 +600961.14 5680347.36 97.50 +600961.24 5680235.27 97.50 +600961.31 5680379.89 97.50 +600961.32 5680264.46 97.50 +600961.59 5677684.55 97.50 +600961.81 5680335.78 97.50 +600962.02 5680284.21 97.50 +600962.20 5681028.43 96.25 +600962.22 5677773.90 97.50 +600962.47 5676419.28 101.25 +600962.47 5680274.31 97.50 +600962.64 5678085.36 98.75 +600962.67 5679072.20 97.50 +600962.74 5679258.15 97.50 +600963.08 5678896.77 97.50 +600963.10 5680254.66 97.50 +600963.27 5680433.60 97.50 +600963.27 5680219.99 97.50 +600963.37 5679627.73 97.50 +600963.47 5681047.21 96.25 +600963.66 5680876.20 97.50 +600963.67 5680424.64 97.75 +600963.69 5676691.68 98.75 +600963.81 5680358.53 96.25 +600963.86 5677783.76 97.50 +600963.89 5680244.76 97.50 +600964.26 5678650.49 97.50 +600964.28 5681169.13 97.50 +600964.33 5679524.41 97.50 +600964.56 5680770.37 97.50 +600964.66 5680302.39 97.50 +600964.68 5681138.81 96.25 +600964.70 5677699.13 97.50 +600964.73 5680491.90 96.25 +600964.75 5681185.29 97.50 +600964.77 5679659.19 97.50 +600964.96 5680762.21 97.75 +600965.09 5681212.93 97.50 +600965.19 5679385.95 97.50 +600965.27 5680754.04 97.50 +600965.46 5681039.25 96.00 +600965.46 5680459.14 96.25 +600965.50 5677681.71 97.75 +600965.51 5676513.02 100.00 +600965.64 5677671.93 97.50 +600965.72 5676851.01 98.75 +600966.02 5680514.65 97.50 +600966.22 5678246.52 98.75 +600966.28 5677793.43 97.50 +600966.30 5680367.17 96.25 +600966.35 5677691.87 97.50 +600966.55 5676905.34 98.75 +600966.92 5680892.99 97.50 +600966.94 5680002.41 97.50 +600967.22 5680213.42 97.50 +600967.43 5679202.23 97.50 +600967.52 5680316.87 97.50 +600967.58 5681003.62 96.25 +600967.65 5678622.58 97.50 +600967.72 5680415.14 97.50 +600967.85 5681154.73 96.25 +600968.13 5679515.62 97.50 +600968.31 5680228.46 97.50 +600968.46 5681231.77 97.50 +600968.61 5680508.67 96.25 +600969.04 5680990.89 96.25 +600969.14 5677803.00 97.50 +600969.28 5680982.39 97.50 +600969.29 5680486.98 97.50 +600969.38 5678863.03 97.50 +600969.48 5679619.96 97.50 +600969.52 5680411.37 96.25 +600969.55 5680077.92 97.50 +600969.97 5680762.21 97.50 +600969.97 5679506.01 97.50 +600970.06 5680778.01 97.50 +600970.36 5680205.31 97.50 +600970.46 5680350.73 97.50 +600970.54 5681033.88 96.25 +600970.94 5677678.86 97.50 +600971.02 5680381.72 97.50 +600971.07 5676414.19 101.25 +600971.30 5680295.81 97.50 +600971.35 5680333.05 97.50 +600971.60 5679652.05 97.50 +600971.70 5680960.93 97.50 +600971.76 5677687.82 97.50 +600971.90 5679254.15 97.50 +600971.98 5678081.98 98.75 +600972.00 5677812.57 97.50 +600972.10 5681175.36 97.50 +600972.10 5679378.78 97.50 +600972.10 5681052.17 96.25 +600972.51 5678644.84 97.50 +600972.52 5681144.17 96.25 +600972.52 5679072.94 97.50 +600972.55 5680432.30 97.50 +600972.60 5681219.45 97.50 +600972.63 5678238.93 98.75 +600972.69 5680237.22 97.50 +600972.74 5681191.28 97.50 +600972.82 5680362.32 96.25 +600973.02 5681152.74 96.00 +600973.05 5678897.46 97.50 +600973.19 5680879.20 97.50 +600973.27 5679210.24 97.50 +600973.29 5680256.91 97.50 +600973.36 5676689.26 98.75 +600973.49 5679632.45 97.25 +600973.58 5680496.17 96.25 +600973.66 5680969.39 97.50 +600974.05 5680463.77 96.25 +600974.12 5680246.99 97.50 +600974.23 5680266.78 97.50 +600974.33 5679995.68 97.50 +600974.66 5680309.98 97.50 +600974.67 5677699.80 97.50 +600974.74 5680519.54 97.50 +600974.74 5680286.47 97.50 +600974.82 5681161.33 96.25 +600974.91 5680786.09 97.50 +600975.02 5677822.10 97.50 +600975.20 5678616.03 97.50 +600975.29 5676510.97 100.00 +600975.41 5680999.43 96.00 +600975.51 5680276.65 97.50 +600975.58 5679612.20 97.50 +600975.61 5680370.11 96.25 +600975.62 5676849.80 98.75 +600975.80 5680769.60 97.50 +600975.81 5681008.19 96.25 +600976.50 5676904.79 98.75 +600976.83 5680071.17 97.50 +600976.91 5680893.39 97.50 +600977.01 5680214.23 97.50 +600977.14 5680513.69 96.25 +600977.30 5680415.78 96.25 +600977.30 5680415.78 97.50 +600977.57 5681235.86 97.50 +600977.83 5680994.26 96.25 +600977.90 5680482.28 96.25 +600977.90 5680482.28 97.50 +600977.95 5679219.07 97.50 +600978.05 5679247.05 97.50 +600978.10 5677831.60 97.50 +600978.11 5680987.08 97.50 +600978.13 5680491.47 97.50 +600978.26 5679371.03 97.50 +600978.34 5681040.01 96.25 +600978.52 5678230.96 98.75 +600978.70 5680508.76 96.00 +600978.72 5679502.11 97.50 +600979.04 5679645.55 97.50 +600979.10 5678865.36 97.50 +600979.28 5681226.88 97.50 +600979.41 5681150.85 96.25 +600979.78 5680354.09 97.50 +600979.92 5681181.59 97.50 +600980.03 5680207.55 97.50 +600980.58 5676411.40 101.25 +600980.73 5680329.85 97.50 +600980.84 5680382.81 97.50 +600980.90 5680470.72 96.25 +600981.02 5679237.57 97.50 +600981.04 5681196.85 97.50 +600981.04 5680367.57 96.25 +600981.17 5677841.10 97.50 +600981.39 5681055.82 96.25 +600981.49 5680502.13 96.25 +600981.49 5678079.09 98.75 +600981.51 5680961.21 97.50 +600981.60 5680434.64 97.50 +600981.61 5680975.32 97.50 +600981.65 5680776.97 97.50 +600981.67 5678641.02 97.50 +600981.85 5681081.58 97.50 +600981.89 5679604.60 97.50 +600981.90 5680970.34 96.25 +600981.97 5679989.25 97.50 +600982.27 5681167.38 96.25 +600982.32 5681071.92 97.50 +600982.51 5679072.57 97.50 +600982.64 5679227.89 97.50 +600982.83 5680304.81 97.50 +600982.84 5678609.58 97.50 +600982.99 5678897.23 97.50 +600983.04 5676686.85 98.75 +600983.07 5680790.42 97.50 +600983.18 5680879.59 97.50 +600983.42 5680524.50 97.50 +600983.57 5677354.59 97.50 +600983.68 5678222.46 98.75 +600983.82 5680064.02 97.50 +600983.88 5681013.03 96.25 +600983.89 5677344.63 97.50 +600984.59 5677701.00 97.50 +600985.06 5676508.92 100.00 +600985.21 5677334.79 97.50 +600985.51 5676848.60 98.75 +600985.61 5681090.85 97.50 +600985.67 5680518.71 96.25 +600985.72 5681046.72 96.25 +600985.83 5680488.27 97.50 +600985.89 5681032.88 97.50 +600985.98 5681234.18 97.50 +600985.99 5680497.54 97.50 +600986.02 5680998.68 96.25 +600986.03 5679638.71 97.50 +600986.28 5680992.84 97.50 +600986.30 5676903.01 98.75 +600986.34 5681157.50 96.25 +600986.47 5677363.99 97.50 +600986.64 5680216.75 97.50 +600986.76 5677849.36 97.50 +600986.80 5681239.69 97.50 +600986.84 5680784.81 97.50 +600986.90 5680893.75 97.50 +600987.22 5677325.03 97.50 +600987.32 5680483.11 96.25 +600987.48 5681027.19 97.50 +600987.53 5677735.03 97.00 +600987.62 5679372.08 97.50 +600987.75 5677744.66 97.00 +600987.95 5681187.37 97.50 +600988.62 5677754.23 97.00 +600988.71 5679501.88 97.50 +600988.81 5678867.76 97.50 +600988.84 5678213.96 98.75 +600988.85 5679597.83 97.50 +600988.87 5680974.83 96.25 +600989.08 5677725.51 97.00 +600989.28 5681061.89 96.25 +600989.41 5680356.33 97.50 +600989.52 5680210.53 97.50 +600989.71 5680507.63 96.25 +600989.74 5680966.96 96.25 +600989.91 5679983.19 97.50 +600990.11 5680438.64 97.50 +600990.17 5681200.90 97.50 +600990.22 5680328.03 97.50 +600990.31 5680473.06 96.25 +600990.35 5676409.27 101.25 +600990.44 5680980.00 97.50 +600990.48 5681172.24 96.25 +600990.49 5681099.41 97.50 +600990.69 5680383.61 97.50 +600990.80 5680056.87 97.50 +600990.81 5677315.74 97.50 +600990.84 5678603.59 97.50 +600990.90 5679630.12 97.50 +600991.00 5681071.15 97.50 +600991.00 5678076.20 98.75 +600991.02 5681041.46 97.50 +600991.11 5677763.55 97.00 +600991.12 5680963.73 97.50 +600991.15 5678637.83 97.50 +600991.58 5677372.52 97.50 +600991.81 5680529.92 97.50 +600991.91 5679069.25 97.50 +600992.02 5681165.04 96.25 +600992.33 5680302.02 97.50 +600992.47 5677857.56 97.50 +600992.56 5681016.59 96.25 +600992.66 5676684.27 98.75 +600992.87 5678895.68 97.50 +600993.16 5681053.30 96.25 +600993.16 5680879.27 97.50 +600993.43 5681004.48 96.25 +600993.75 5680494.25 97.50 +600993.82 5677306.28 97.50 +600994.00 5678205.46 98.75 +600994.10 5680999.06 97.50 +600994.17 5680523.78 96.25 +600994.27 5680503.02 97.50 +600994.54 5677701.60 97.50 +600994.86 5679378.89 97.50 +600994.94 5676507.50 100.00 +600995.09 5681234.40 97.50 +600995.45 5676848.08 98.75 +600995.78 5679621.52 97.50 +600995.91 5677296.54 97.50 +600996.08 5681243.16 97.50 +600996.12 5680487.34 96.25 +600996.21 5676901.94 98.75 +600996.31 5677771.55 97.00 +600996.45 5680218.45 97.50 +600996.57 5679975.94 97.50 +600996.77 5681049.57 97.50 +600996.89 5680894.00 97.50 +600996.92 5680974.74 96.00 +600996.92 5680979.52 96.25 +600997.07 5681061.56 96.25 +600997.20 5677720.29 97.00 +600997.29 5681028.83 97.50 +600997.41 5681106.50 97.50 +600997.49 5677286.71 97.50 +600997.73 5677380.12 97.50 +600997.73 5679595.88 97.50 +600997.74 5681189.42 97.50 +600997.78 5680049.73 97.50 +600998.06 5680512.95 96.25 +600998.21 5680970.82 96.25 +600998.38 5677276.78 97.50 +600998.46 5678870.37 97.50 +600998.70 5679501.64 97.50 +600998.71 5680442.41 97.50 +600998.84 5678597.59 97.50 +600999.06 5677864.95 97.50 +600999.08 5680213.13 97.50 +600999.14 5680358.24 97.50 +600999.27 5680984.68 97.50 +600999.58 5680476.19 96.25 +600999.58 5681204.21 97.50 +601000.10 5680328.87 97.50 +601000.12 5678197.62 98.75 +601000.18 5681075.10 97.50 +601000.21 5680967.88 97.50 +601000.28 5676408.73 101.25 +601000.28 5680535.22 97.50 +601000.53 5680383.50 97.50 +601000.54 5679612.87 97.50 +601000.66 5678074.06 98.75 +601000.71 5678634.93 97.50 +601000.96 5681020.72 96.25 +601001.00 5677267.20 97.50 +601001.04 5681010.01 96.25 +601001.30 5679065.82 97.50 +601001.93 5681227.22 97.50 +601001.97 5681005.22 97.50 +601002.04 5679967.57 97.50 +601002.08 5680499.65 97.50 +601002.18 5680300.79 97.50 +601002.19 5676681.34 98.75 +601002.59 5680508.44 97.50 +601002.75 5678894.17 97.50 +601002.85 5680528.54 96.25 +601002.87 5679603.78 97.50 +601003.14 5680878.66 97.50 +601003.27 5679378.15 97.50 +601003.29 5680316.13 97.00 +601004.51 5681055.90 97.50 +601004.53 5677701.60 97.50 +601004.57 5680492.29 96.25 +601004.77 5680042.59 97.50 +601004.88 5676506.45 100.00 +601005.29 5677771.11 97.00 +601005.32 5680983.54 96.25 +601005.42 5676847.90 98.75 +601005.53 5677258.39 97.50 +601005.77 5677715.98 97.00 +601005.91 5681244.95 97.50 +601006.12 5676900.88 98.75 +601006.22 5680220.33 97.50 +601006.23 5677385.34 97.50 +601006.23 5678189.78 98.75 +601006.33 5680518.39 96.25 +601006.33 5681033.08 97.50 +601006.46 5680975.14 96.25 +601006.70 5681110.06 97.50 +601006.70 5677871.38 97.50 +601006.84 5678591.59 97.50 +601006.88 5680894.23 97.50 +601007.25 5679959.06 97.50 +601007.52 5681191.46 97.50 +601007.71 5680444.91 97.50 +601007.72 5679334.33 97.50 +601008.14 5678872.84 97.50 +601008.32 5680480.60 96.25 +601008.46 5680988.53 97.50 +601008.56 5679500.41 97.50 +601008.59 5681219.78 97.50 +601008.74 5680360.64 97.50 +601008.87 5681015.23 96.25 +601008.96 5680214.41 97.50 +601009.06 5680540.00 97.50 +601009.33 5680971.99 97.50 +601009.34 5681079.11 97.50 +601009.49 5681023.87 96.25 +601009.57 5681204.61 97.50 +601010.01 5680329.39 97.50 +601010.11 5681011.03 97.50 +601010.27 5676408.85 101.25 +601010.36 5680382.44 97.50 +601010.47 5678632.80 97.50 +601010.48 5680514.47 97.50 +601010.49 5680504.94 97.50 +601010.51 5680534.68 96.25 +601010.57 5678073.27 98.75 +601010.68 5679062.39 97.50 +601011.19 5677250.24 97.50 +601011.28 5679372.40 97.50 +601011.63 5679950.08 97.50 +601011.76 5676678.56 98.75 +601011.99 5677764.28 97.00 +601012.03 5680299.99 97.50 +601012.04 5680035.76 97.50 +601012.05 5679339.24 97.50 +601012.25 5681062.22 97.50 +601012.35 5678181.94 98.75 +601012.45 5680981.06 96.25 +601012.58 5679325.99 97.50 +601012.64 5678892.68 97.50 +601013.13 5680878.31 97.50 +601013.28 5680496.72 96.25 +601014.02 5679418.45 97.50 +601014.35 5677877.82 97.50 +601014.36 5679428.39 97.50 +601014.38 5677703.21 97.50 +601014.39 5680524.13 96.25 +601014.73 5677849.88 97.25 +601014.78 5677390.43 97.50 +601014.81 5676505.40 100.00 +601014.84 5678585.60 97.50 +601015.17 5677714.73 97.00 +601015.38 5681037.33 97.50 +601015.39 5676847.73 98.75 +601015.80 5680223.02 97.50 +601015.81 5681243.73 97.50 +601015.96 5681020.87 96.25 +601016.00 5679941.09 97.50 +601016.04 5676899.88 98.75 +601016.40 5679438.17 97.50 +601016.61 5681111.36 97.50 +601016.75 5680892.96 97.50 +601016.83 5678173.16 98.75 +601016.86 5679364.27 97.50 +601016.89 5680444.26 97.50 +601016.91 5679317.37 97.50 +601016.99 5680546.03 97.50 +601017.04 5680485.07 96.25 +601017.09 5679496.77 97.50 +601017.39 5681193.09 97.50 +601017.43 5679394.90 97.50 +601017.43 5677756.31 97.00 +601017.81 5680541.37 96.25 +601017.95 5680991.67 97.50 +601017.97 5677242.94 97.50 +601018.04 5678874.28 97.50 +601018.12 5681217.43 97.50 +601018.20 5680363.57 97.50 +601018.32 5679332.22 97.50 +601018.34 5680520.54 97.50 +601018.42 5681083.30 97.50 +601018.44 5680976.09 97.50 +601018.45 5679404.79 97.50 +601018.62 5680510.61 97.50 +601018.78 5681015.95 97.50 +601018.87 5680215.09 97.50 +601019.16 5679447.77 97.50 +601019.55 5681205.14 97.50 +601019.88 5680330.42 97.50 +601019.92 5677854.98 97.25 +601019.94 5679487.21 97.50 +601019.97 5676410.80 101.25 +601020.07 5679058.96 97.50 +601020.07 5680029.82 97.50 +601020.24 5678630.66 97.50 +601020.25 5680382.53 97.50 +601020.47 5679932.16 97.50 +601020.48 5678072.48 98.75 +601020.55 5681067.78 97.50 +601020.57 5679416.10 97.50 +601020.59 5678163.96 98.75 +601021.13 5679308.69 97.50 +601021.23 5680531.24 96.25 +601021.27 5679477.30 97.50 +601021.43 5676676.15 98.75 +601021.78 5677747.70 97.00 +601021.80 5679467.33 97.50 +601021.80 5680437.18 97.50 +601021.91 5679457.38 97.50 +601021.91 5680300.92 97.50 +601021.93 5679355.71 97.50 +601022.27 5677883.83 97.50 +601022.50 5677720.34 97.00 +601022.51 5680499.90 96.25 +601022.58 5678892.27 97.50 +601022.88 5678579.65 97.50 +601023.08 5680878.82 97.50 +601023.11 5680946.08 97.50 +601023.40 5679386.94 97.50 +601023.50 5679324.08 97.50 +601023.60 5678154.59 98.75 +601023.71 5681042.82 97.50 +601023.87 5678144.66 98.75 +601023.91 5677394.43 97.50 +601024.13 5677705.29 97.50 +601024.50 5680552.61 97.50 +601024.55 5680955.48 97.50 +601024.79 5676504.96 100.00 +601024.92 5677235.80 97.50 +601024.94 5681224.61 97.50 +601025.01 5677767.20 97.50 +601025.10 5677860.08 97.25 +601025.24 5680547.91 96.25 +601025.33 5676848.25 98.75 +601025.41 5677738.76 97.00 +601025.42 5681241.16 97.50 +601025.60 5677729.27 97.00 +601025.69 5680223.08 97.50 +601025.74 5679300.22 97.50 +601025.74 5681114.93 97.50 +601025.85 5678135.35 98.75 +601025.86 5680527.01 97.50 +601025.96 5676898.89 98.75 +601026.02 5679923.85 97.50 +601026.08 5680488.75 96.25 +601026.24 5680890.40 97.50 +601026.24 5680516.98 97.50 +601026.46 5679424.15 97.50 +601026.68 5679409.57 97.50 +601026.93 5677757.48 97.50 +601027.04 5681191.80 97.50 +601027.24 5680367.58 97.50 +601027.37 5680937.75 97.50 +601027.50 5681087.49 97.50 +601027.62 5680980.05 97.50 +601027.64 5680994.15 97.50 +601027.72 5678876.36 97.50 +601027.77 5681020.30 97.50 +601027.83 5680538.62 96.25 +601028.07 5678077.67 98.75 +601028.10 5680023.87 97.50 +601028.16 5679347.99 97.50 +601028.82 5680215.09 97.50 +601028.97 5681073.17 97.50 +601029.09 5679054.72 97.50 +601029.26 5679316.36 97.50 +601029.46 5676413.93 101.25 +601029.48 5681233.38 97.50 +601029.53 5681205.67 97.50 +601029.57 5680330.47 97.50 +601029.86 5678627.94 97.50 +601030.09 5677748.03 97.50 +601030.13 5680382.68 97.50 +601030.28 5677865.17 97.25 +601030.35 5679291.74 97.50 +601030.42 5679543.01 97.50 +601030.56 5677773.22 97.50 +601030.84 5680560.34 97.50 +601031.02 5680883.27 97.50 +601031.10 5677888.50 97.50 +601031.27 5679552.92 97.50 +601031.32 5678574.37 97.50 +601031.38 5676676.78 98.75 +601031.44 5677835.10 97.50 +601031.51 5680303.38 97.50 +601031.56 5679915.54 97.50 +601031.60 5679533.11 97.50 +601031.62 5680962.55 97.50 +601031.78 5679381.82 97.50 +601031.82 5680555.29 96.25 +601031.87 5681048.60 97.50 +601031.88 5677710.55 97.50 +601032.08 5678127.60 98.75 +601032.14 5680501.73 96.25 +601032.27 5677229.07 97.50 +601032.43 5679298.87 97.25 +601032.57 5678892.71 97.50 +601032.71 5679431.89 97.50 +601032.75 5679562.80 97.50 +601033.05 5677398.42 97.50 +601033.10 5680533.82 97.50 +601033.65 5679523.33 97.50 +601033.78 5677738.75 97.50 +601033.86 5680523.35 97.50 +601034.22 5677830.48 97.50 +601034.29 5679572.68 97.50 +601034.43 5680546.00 96.25 +601034.45 5681119.81 97.50 +601034.77 5676504.59 100.00 +601034.87 5678084.93 98.75 +601034.91 5679283.24 97.50 +601035.25 5680492.04 96.25 +601035.26 5676849.10 98.75 +601035.38 5679308.90 97.50 +601035.54 5680017.22 97.50 +601035.58 5679341.36 97.50 +601035.64 5680222.63 97.50 +601035.78 5676897.38 98.75 +601036.01 5677872.54 97.25 +601036.10 5680372.01 97.50 +601036.19 5679582.49 97.50 +601036.30 5677729.24 97.50 +601036.34 5681092.14 97.50 +601036.47 5678881.19 97.50 +601036.48 5677719.25 97.50 +601036.61 5681189.37 97.50 +601036.63 5679409.67 97.50 +601036.80 5680934.87 97.50 +601036.80 5680984.02 97.50 +601036.85 5680958.96 98.75 +601037.18 5680568.07 97.50 +601037.26 5681023.46 97.50 +601037.29 5679592.39 97.50 +601037.32 5680996.64 97.50 +601037.47 5679291.35 97.25 +601037.74 5679602.37 97.50 +601037.91 5679050.03 97.50 +601038.05 5679612.36 97.50 +601038.07 5681077.30 97.50 +601038.19 5680562.86 96.25 +601038.31 5678119.85 98.75 +601038.36 5679622.35 97.50 +601038.39 5677842.07 97.50 +601038.44 5680326.03 97.50 +601038.66 5679632.34 97.50 +601038.73 5680214.17 97.50 +601038.75 5679908.89 97.50 +601038.83 5676417.35 101.25 +601038.87 5680952.32 98.75 +601039.36 5679274.68 97.50 +601039.47 5681206.69 97.50 +601039.48 5677863.81 97.25 +601039.48 5678625.22 97.50 +601039.54 5680968.50 97.50 +601039.65 5678093.36 98.75 +601039.69 5677893.53 97.50 +601039.70 5677222.44 97.50 +601039.78 5680308.87 97.50 +601039.81 5679642.19 97.50 +601039.86 5677776.60 97.50 +601039.90 5680384.20 97.50 +601040.00 5679438.63 97.50 +601040.03 5680540.89 97.50 +601040.24 5680588.01 96.25 +601040.29 5681053.97 97.50 +601040.34 5680498.49 96.25 +601040.40 5678570.19 97.50 +601040.61 5679377.24 97.50 +601041.02 5680553.38 96.25 +601041.08 5679301.15 97.50 +601041.18 5678889.17 97.50 +601041.32 5676677.42 98.75 +601041.49 5680529.71 97.50 +601041.75 5677879.92 97.25 +601041.80 5679522.50 97.50 +601041.84 5680596.58 96.25 +601042.36 5677401.95 97.50 +601042.51 5679283.83 97.25 +601042.57 5679651.80 97.50 +601042.67 5678102.84 98.75 +601042.83 5680010.38 97.50 +601043.58 5680575.74 97.50 +601043.61 5681123.81 97.50 +601043.82 5679266.12 97.50 +601043.84 5680317.83 97.50 +601043.98 5677828.35 97.50 +601044.36 5677795.07 97.50 +601044.38 5680964.69 98.75 +601044.52 5679337.38 97.50 +601044.54 5678112.10 98.75 +601044.75 5677785.09 97.50 +601044.76 5676504.21 100.00 +601044.96 5680376.44 97.50 +601045.07 5681097.00 97.50 +601045.09 5680569.95 96.25 +601045.19 5676849.96 98.75 +601045.23 5679661.43 97.50 +601045.37 5676894.66 98.75 +601045.53 5680221.83 97.50 +601045.87 5680988.22 97.50 +601045.98 5680548.85 97.50 +601045.98 5679292.84 97.50 +601046.06 5677804.86 97.50 +601046.49 5681190.86 97.50 +601046.57 5679409.21 97.50 +601046.65 5681000.25 97.50 +601046.79 5680934.57 97.50 +601046.80 5681026.45 97.50 +601047.13 5679903.45 97.50 +601047.18 5677900.13 97.50 +601047.23 5681081.30 97.50 +601047.27 5679046.59 97.50 +601047.48 5677887.29 97.25 +601047.49 5677216.21 97.50 +601047.51 5680603.83 96.25 +601047.52 5679671.16 97.50 +601047.54 5679276.31 97.25 +601047.62 5680560.76 96.25 +601047.67 5677844.78 97.50 +601047.73 5676421.90 101.25 +601047.75 5680954.76 98.75 +601047.81 5680973.99 97.50 +601048.35 5677814.58 97.50 +601048.42 5679529.98 97.50 +601048.49 5680212.50 97.50 +601048.60 5680588.70 96.25 +601048.63 5679443.67 97.50 +601048.68 5677862.45 97.25 +601048.90 5681059.05 97.50 +601049.03 5680536.18 97.50 +601049.16 5678622.72 97.50 +601049.21 5679372.26 97.50 +601049.22 5681208.73 97.50 +601049.49 5678566.02 97.50 +601049.67 5680385.60 97.50 +601049.81 5679680.88 97.50 +601049.93 5679258.68 97.50 +601050.20 5680003.64 97.50 +601050.22 5680583.22 97.50 +601050.35 5680599.12 96.00 +601050.50 5681245.20 97.50 +601050.68 5677824.29 97.50 +601050.88 5679284.52 97.50 +601050.90 5681237.55 97.50 +601050.91 5676680.14 98.75 +601051.18 5677406.42 97.50 +601051.21 5680577.73 96.25 +601051.76 5681268.59 97.50 +601051.92 5680556.81 97.50 +601052.46 5680969.77 98.75 +601052.49 5680940.82 97.50 +601052.49 5679690.50 97.50 +601052.58 5679268.79 97.25 +601052.75 5681127.86 97.50 +601052.96 5680946.65 97.50 +601053.22 5677894.66 97.25 +601053.54 5680568.70 96.25 +601053.81 5681101.85 97.50 +601053.90 5679334.07 97.50 +601054.29 5680609.23 96.25 +601054.33 5680595.94 96.25 +601054.48 5679537.93 97.50 +601054.68 5677906.73 97.50 +601054.71 5680375.58 97.50 +601054.73 5676504.38 100.00 +601054.81 5680981.13 97.50 +601054.86 5676891.62 98.75 +601055.11 5680219.16 97.50 +601055.13 5676850.41 98.75 +601055.15 5679275.87 97.50 +601055.27 5677209.99 97.50 +601055.31 5681005.18 97.50 +601055.51 5679898.00 97.50 +601055.53 5679700.02 97.50 +601055.59 5681194.78 97.50 +601055.79 5680988.36 97.50 +601055.81 5679412.18 97.50 +601056.22 5679251.37 97.50 +601056.24 5681029.67 97.50 +601056.28 5680959.03 98.75 +601056.50 5681262.01 97.50 +601056.50 5680542.72 97.50 +601056.52 5681084.99 97.50 +601056.62 5680590.89 97.50 +601056.63 5676426.46 101.25 +601056.72 5680935.32 97.50 +601056.77 5679043.49 97.50 +601057.21 5680585.60 96.25 +601057.26 5679448.71 97.50 +601057.49 5681064.16 97.50 +601057.52 5680565.00 97.50 +601057.55 5679366.83 97.50 +601057.66 5677845.08 97.50 +601057.82 5679997.17 97.50 +601057.84 5680966.98 99.00 +601057.88 5677861.09 97.25 +601057.90 5680209.27 97.50 +601057.91 5680604.30 96.25 +601058.57 5679709.54 97.50 +601058.63 5678561.97 97.50 +601058.74 5677412.88 97.50 +601058.76 5681211.72 97.50 +601058.95 5677902.03 97.25 +601058.98 5678620.86 97.50 +601059.47 5680576.63 96.25 +601059.56 5680385.32 97.50 +601059.69 5681233.03 97.50 +601060.04 5681247.86 97.50 +601060.15 5679267.71 97.50 +601060.37 5676683.15 98.75 +601060.39 5680975.05 98.75 +601060.56 5679545.86 97.50 +601060.58 5681134.07 97.50 +601060.60 5681272.14 97.50 +601060.72 5679719.21 97.50 +601061.07 5679729.20 97.50 +601061.32 5680943.39 97.25 +601061.34 5677884.63 97.50 +601061.41 5679739.19 97.50 +601061.76 5679749.17 97.50 +601061.82 5680940.23 97.50 +601061.99 5677913.53 97.50 +601062.12 5680948.56 97.50 +601062.16 5677894.32 97.50 +601062.56 5679244.09 97.50 +601062.63 5680598.88 97.50 +601062.95 5680573.32 97.50 +601063.09 5679330.26 97.50 +601063.18 5679759.05 97.50 +601063.44 5677204.29 97.50 +601063.48 5681010.91 97.50 +601063.49 5681104.08 97.50 +601063.50 5680593.15 96.25 +601063.84 5679892.49 97.50 +601063.95 5680549.29 97.50 +601064.25 5680964.27 98.75 +601064.30 5681199.69 97.50 +601064.30 5680215.55 97.50 +601064.31 5676888.44 98.75 +601064.60 5680374.99 97.50 +601064.68 5677909.40 97.25 +601064.69 5676505.11 100.00 +601064.80 5679416.45 97.50 +601064.87 5679768.89 97.50 +601064.99 5676431.91 101.25 +601065.04 5679454.91 97.50 +601065.09 5681070.66 97.50 +601065.10 5676850.06 98.75 +601065.11 5677420.44 97.50 +601065.38 5680584.56 96.25 +601065.38 5681033.53 97.50 +601065.44 5679990.71 97.50 +601065.77 5679361.25 97.50 +601065.86 5681088.55 97.50 +601066.17 5681259.90 97.50 +601066.21 5679040.24 97.50 +601066.51 5679260.45 97.50 +601066.57 5680936.96 97.50 +601067.08 5677859.73 97.25 +601067.30 5677902.89 97.50 +601067.31 5680206.02 97.50 +601067.62 5681216.35 97.50 +601067.64 5677845.47 97.50 +601067.70 5679552.83 97.50 +601067.77 5677877.55 97.50 +601067.88 5680980.93 98.75 +601067.93 5678558.35 97.50 +601068.06 5680581.83 97.50 +601068.26 5681140.46 97.50 +601068.64 5680606.86 97.50 +601068.68 5676688.65 98.75 +601068.81 5678618.99 97.50 +601068.82 5677920.82 97.50 +601069.00 5680387.55 97.50 +601069.25 5679777.87 97.50 +601069.44 5679237.50 97.50 +601069.62 5680593.40 96.25 +601069.63 5681234.07 97.50 +601069.95 5677429.09 97.50 +601070.01 5681248.59 97.50 +601070.29 5681273.90 97.50 +601070.71 5677916.54 97.25 +601070.72 5680943.09 97.50 +601071.25 5680556.03 97.50 +601071.34 5681017.10 97.50 +601071.40 5679325.14 97.50 +601071.41 5680949.39 97.50 +601071.65 5679983.15 97.50 +601071.68 5677198.68 97.50 +601071.80 5679886.45 97.50 +601071.90 5680969.96 98.75 +601072.33 5679252.91 97.50 +601072.52 5679461.55 97.50 +601072.61 5677438.70 97.50 +601072.69 5681077.15 97.50 +601072.82 5680210.40 97.50 +601072.89 5680590.51 97.50 +601073.06 5681204.43 97.50 +601073.18 5676437.64 101.25 +601073.21 5679354.64 97.50 +601073.33 5681105.85 97.50 +601073.35 5679421.49 97.50 +601073.64 5676884.96 98.75 +601073.79 5680615.42 97.50 +601074.10 5677910.21 97.50 +601074.24 5677448.52 97.50 +601074.36 5680376.08 97.50 +601074.53 5679243.52 97.50 +601074.66 5676505.85 100.00 +601074.74 5681093.01 97.50 +601075.06 5676849.71 98.75 +601075.15 5681035.63 97.50 +601075.33 5680200.37 97.50 +601075.34 5679036.17 97.50 +601075.57 5681147.29 97.50 +601075.57 5677928.16 97.50 +601076.00 5681258.25 97.50 +601076.01 5679974.16 97.50 +601076.02 5680393.61 97.50 +601076.31 5680939.25 97.50 +601076.34 5677872.60 97.50 +601076.56 5681220.77 97.50 +601076.62 5680984.32 98.75 +601076.80 5679556.03 97.50 +601076.81 5677848.45 97.50 +601076.87 5677923.55 97.25 +601076.99 5676694.16 98.75 +601077.33 5681267.39 97.70 +601077.49 5679317.33 97.50 +601077.71 5680599.19 97.50 +601077.73 5678556.38 97.50 +601077.73 5679964.46 97.50 +601077.84 5680977.12 98.75 +601077.95 5679780.84 97.50 +601078.23 5679346.19 97.50 +601078.31 5681024.11 97.50 +601078.49 5679954.49 97.50 +601078.55 5680562.76 97.50 +601078.66 5678617.39 97.50 +601078.72 5679469.30 97.50 +601078.77 5680624.09 97.50 +601078.90 5679879.54 97.50 +601078.91 5677457.00 97.50 +601079.59 5681234.78 97.50 +601079.90 5681101.38 97.50 +601079.93 5680944.49 97.50 +601079.94 5680995.90 97.50 +601079.99 5681248.94 97.50 +601080.21 5681272.87 97.50 +601080.40 5680951.95 97.50 +601080.67 5677936.76 97.50 +601080.91 5677917.52 97.50 +601080.96 5679944.84 97.50 +601080.98 5677195.35 97.50 +601081.37 5681081.94 97.50 +601081.44 5680205.43 97.50 +601081.59 5679427.07 97.50 +601081.83 5676442.59 101.25 +601082.13 5680401.34 97.50 +601082.25 5679478.63 97.50 +601082.49 5680607.90 97.50 +601082.58 5677865.26 97.50 +601082.62 5679337.26 97.50 +601082.72 5676880.87 98.75 +601082.86 5681206.39 97.50 +601082.86 5680193.88 97.50 +601082.87 5677855.71 97.50 +601082.89 5679308.97 97.50 +601082.99 5681153.94 97.50 +601083.03 5677930.57 97.25 +601083.43 5681003.94 97.50 +601083.63 5681032.32 97.50 +601083.72 5679935.23 97.50 +601083.75 5680632.76 97.50 +601084.12 5680377.75 97.50 +601084.13 5680570.60 97.50 +601084.46 5679032.10 97.50 +601084.62 5676506.58 100.00 +601084.89 5679816.12 97.50 +601084.93 5679871.58 97.50 +601084.97 5679774.10 97.50 +601085.02 5676849.36 98.75 +601085.17 5677464.75 97.50 +601085.27 5679695.64 97.50 +601085.48 5680903.92 97.50 +601085.69 5679488.02 97.50 +601085.69 5680951.27 97.50 +601085.69 5679806.16 97.50 +601085.76 5677945.35 97.50 +601085.81 5680942.26 97.50 +601085.81 5676698.78 98.75 +601085.96 5681258.86 97.50 +601086.10 5679685.69 97.50 +601086.13 5681223.67 97.50 +601086.45 5680617.01 97.50 +601086.50 5679796.20 97.50 +601086.59 5679554.55 97.50 +601086.62 5679925.67 97.50 +601087.35 5679705.39 97.50 +601087.40 5679300.12 97.50 +601087.55 5677924.98 97.50 +601087.60 5680579.90 97.50 +601087.66 5678556.35 97.50 +601087.71 5679328.72 97.50 +601088.14 5679764.98 97.50 +601088.19 5679825.24 97.50 +601088.64 5678616.74 97.50 +601088.69 5680991.68 97.50 +601088.73 5680641.43 97.50 +601089.04 5679497.43 97.50 +601089.20 5679755.04 97.50 +601089.20 5677937.59 97.25 +601089.34 5679715.16 97.50 +601089.45 5677190.34 97.50 +601089.59 5681234.78 97.50 +601089.89 5679745.08 97.50 +601089.99 5681249.05 97.50 +601090.00 5679786.87 97.50 +601090.04 5679916.29 97.50 +601090.13 5679725.12 97.50 +601090.13 5681271.85 97.50 +601090.28 5679735.09 97.50 +601090.32 5680200.94 97.50 +601090.33 5679863.28 97.50 +601090.46 5677954.16 97.50 +601090.85 5681084.75 97.50 +601090.86 5676446.88 101.25 +601090.97 5680625.85 97.50 +601091.00 5679429.83 97.50 +601091.46 5680589.06 97.50 +601091.57 5681009.58 97.50 +601091.65 5679546.23 97.50 +601091.65 5679507.07 97.50 +601091.72 5679291.16 97.50 +601091.74 5680896.82 97.50 +601091.76 5681158.74 97.50 +601091.81 5676876.77 98.75 +601091.95 5680189.80 97.50 +601091.95 5679677.82 97.50 +601092.06 5679834.37 97.50 +601092.43 5680908.90 97.50 +601092.52 5677471.40 97.50 +601092.66 5681208.35 97.50 +601093.09 5679320.35 97.50 +601093.42 5679853.78 97.50 +601093.48 5679906.91 97.50 +601093.55 5679027.95 97.50 +601093.98 5680378.75 97.50 +601093.99 5680649.93 97.50 +601094.02 5679281.54 97.50 +601094.13 5679844.15 97.50 +601094.18 5677932.45 97.50 +601094.26 5679516.72 97.50 +601094.33 5680598.55 97.50 +601094.34 5679536.60 97.50 +601094.49 5676508.04 100.00 +601094.51 5681228.43 97.50 +601094.67 5679526.70 97.50 +601094.76 5676703.17 98.75 +601094.88 5680946.43 97.50 +601094.89 5677963.11 97.50 +601094.98 5676849.02 98.75 +601095.31 5677944.65 97.25 +601095.70 5680634.58 97.50 +601095.71 5679779.07 97.50 +601095.92 5681259.39 97.50 +601096.34 5679271.91 97.50 +601096.98 5680608.12 97.50 +601097.39 5677184.34 97.50 +601097.64 5678557.01 97.50 +601098.36 5678617.50 97.50 +601098.46 5679311.97 97.50 +601098.57 5679898.31 97.50 +601098.64 5680991.25 97.50 +601099.32 5677972.07 97.50 +601099.34 5680658.37 97.50 +601099.40 5680196.86 97.50 +601099.61 5676451.70 101.25 +601099.83 5680891.07 97.50 +601099.98 5681249.33 97.50 +601100.06 5681270.81 97.50 +601100.31 5681014.35 97.50 +601100.33 5679262.80 97.50 +601100.51 5680643.27 97.50 +601100.53 5681163.54 97.50 +601100.64 5677476.95 97.50 +601100.74 5680617.30 97.50 +601100.76 5679431.79 97.50 +601100.77 5681085.96 97.50 +601100.89 5676872.65 98.75 +601101.03 5680185.72 97.50 +601101.40 5677951.73 97.25 +601101.50 5679674.88 97.50 +601101.94 5677938.67 97.50 +601102.43 5680908.90 97.50 +601102.56 5679023.64 97.50 +601102.59 5681208.13 97.50 +601102.93 5679303.15 97.50 +601103.66 5679889.71 97.50 +601103.71 5676707.56 98.75 +601103.79 5680950.97 97.50 +601104.16 5677177.02 97.50 +601104.27 5679253.67 97.50 +601104.29 5676509.94 100.00 +601104.40 5676851.99 98.75 +601104.60 5679777.87 97.50 +601104.69 5680626.42 97.50 +601104.70 5680666.81 97.50 +601104.83 5681183.25 96.35 +601105.01 5677980.24 97.50 +601105.45 5680651.88 97.50 +601105.88 5681258.90 97.50 +601106.41 5679293.83 97.50 +601107.32 5678558.97 97.50 +601107.44 5678621.69 97.50 +601107.49 5677958.81 97.25 +601108.01 5679787.24 97.50 +601108.21 5681176.13 96.35 +601108.52 5680675.96 97.50 +601108.58 5680990.61 97.50 +601108.65 5681019.78 97.50 +601108.68 5680193.34 97.50 +601108.69 5676455.54 101.25 +601108.69 5680886.49 97.50 +601109.43 5679881.55 97.50 +601109.49 5679797.13 97.50 +601109.60 5676868.08 98.75 +601109.89 5679284.50 97.50 +601109.91 5680634.82 97.50 +601109.92 5681250.40 97.50 +601109.98 5681269.78 97.50 +601110.04 5681166.22 97.50 +601110.23 5681088.84 97.50 +601110.36 5677943.90 97.50 +601110.40 5680660.49 97.50 +601110.42 5679248.22 97.50 +601110.51 5679433.47 97.50 +601110.52 5677478.26 97.50 +601110.55 5676859.29 98.75 +601110.67 5680183.36 97.50 +601110.92 5677169.71 97.50 +601111.22 5677988.06 97.50 +601111.25 5679675.77 97.50 +601111.42 5679806.90 97.50 +601111.58 5679019.32 97.50 +601111.58 5680685.47 97.50 +601111.59 5680905.00 97.50 +601111.78 5679274.75 97.50 +601112.52 5681186.47 96.35 +601112.55 5681207.27 97.50 +601113.07 5680954.64 97.50 +601113.09 5676710.79 98.75 +601113.51 5679264.95 97.50 +601113.59 5677965.89 97.25 +601114.15 5676511.48 100.00 +601114.16 5679255.09 97.50 +601114.41 5679816.44 97.50 +601115.12 5679873.36 97.50 +601115.51 5678627.15 97.50 +601115.54 5680669.00 97.50 +601115.58 5680642.97 97.50 +601115.83 5680450.60 96.25 +601115.85 5681258.40 97.50 +601116.50 5678562.93 97.50 +601116.87 5681025.41 97.50 +601116.90 5680693.93 97.50 +601117.32 5677162.07 97.50 +601117.33 5681173.19 96.35 +601117.46 5679825.96 97.50 +601117.74 5680713.55 97.50 +601118.09 5680883.09 97.50 +601118.12 5677995.08 97.50 +601118.17 5680703.56 97.50 +601118.19 5680723.47 97.50 +601118.27 5680190.66 97.50 +601118.48 5680989.51 97.50 +601118.56 5676457.11 101.25 +601119.16 5681178.42 96.00 +601119.35 5681092.93 97.50 +601119.59 5680458.58 96.25 +601119.68 5677972.97 97.25 +601119.73 5681267.66 97.50 +601119.79 5679864.53 97.50 +601119.81 5680651.93 97.50 +601119.82 5677947.10 97.50 +601119.84 5681250.16 97.50 +601119.91 5681167.26 97.50 +601119.94 5680733.31 97.50 +601120.04 5680899.65 97.50 +601120.26 5679431.44 97.50 +601120.40 5677479.56 97.50 +601120.47 5680181.64 97.50 +601120.75 5679678.75 97.50 +601120.95 5679835.32 97.50 +601121.05 5679016.41 97.50 +601121.39 5680725.16 96.25 +601121.69 5680743.15 97.50 +601121.81 5678634.90 97.50 +601121.91 5680715.32 96.25 +601121.95 5681184.79 96.35 +601121.97 5681204.22 97.50 +601122.04 5679855.08 97.50 +601122.11 5679845.09 97.50 +601122.41 5680670.74 97.50 +601122.71 5676713.43 98.75 +601122.84 5680954.98 97.50 +601122.99 5680734.90 96.25 +601123.45 5680753.00 97.50 +601123.70 5680661.07 97.50 +601123.73 5681032.64 97.50 +601123.77 5676513.44 100.00 +601124.26 5678569.10 97.50 +601124.60 5677155.42 97.50 +601124.99 5680744.59 96.25 +601125.00 5680449.12 96.25 +601125.81 5681257.90 97.50 +601125.89 5680762.68 97.50 +601126.50 5681170.49 96.35 +601126.72 5680754.33 96.25 +601127.06 5677953.16 97.50 +601127.50 5677995.53 97.50 +601127.61 5680187.29 97.50 +601127.66 5680720.58 96.25 +601127.81 5680880.76 97.50 +601127.89 5680986.49 97.50 +601128.11 5680463.67 96.25 +601128.27 5680730.46 96.25 +601128.45 5676458.57 101.25 +601128.52 5681096.91 97.50 +601128.65 5680772.29 97.50 +601128.75 5680764.01 96.25 +601129.08 5680948.60 97.50 +601129.09 5680895.80 97.50 +601129.18 5680740.31 96.25 +601129.48 5681265.56 97.50 +601129.73 5679683.03 97.50 +601129.74 5681248.82 97.50 +601129.86 5681166.29 97.50 +601129.92 5678640.75 97.50 +601129.97 5679429.29 97.50 +601130.27 5677479.96 97.50 +601130.37 5680180.84 97.50 +601130.41 5679887.44 97.50 +601130.84 5680938.78 97.50 +601130.86 5680750.04 96.25 +601130.86 5679014.51 97.50 +601131.01 5681200.03 97.50 +601131.07 5681182.44 96.35 +601131.25 5678576.22 97.50 +601131.31 5681039.10 97.50 +601131.37 5680773.52 96.25 +601131.60 5680781.84 97.50 +601131.60 5679877.60 97.50 +601132.32 5676716.07 98.75 +601132.38 5676518.51 100.00 +601132.41 5679897.05 97.50 +601132.49 5677961.55 97.50 +601133.02 5680929.10 97.50 +601133.02 5677150.10 97.50 +601133.88 5680759.43 96.25 +601133.92 5681174.43 96.35 +601133.92 5680453.32 96.25 +601134.42 5679868.06 97.50 +601135.10 5677989.41 97.50 +601135.16 5680791.13 97.50 +601135.36 5679906.55 97.50 +601135.39 5680772.76 95.75 +601135.69 5681256.59 97.50 +601135.70 5680782.42 96.25 +601136.13 5680727.55 96.25 +601136.85 5680468.37 96.25 +601137.26 5680737.48 96.25 +601137.47 5680984.60 97.50 +601137.53 5680768.63 96.25 +601137.58 5681016.06 98.50 +601137.64 5680718.01 96.25 +601137.65 5680879.13 97.50 +601137.82 5677969.96 97.50 +601137.82 5677979.95 97.50 +601137.87 5681100.44 97.50 +601137.93 5679858.79 97.50 +601137.95 5678583.62 97.50 +601138.02 5679681.37 97.50 +601138.02 5678646.61 97.50 +601138.30 5676460.22 101.25 +601138.49 5679915.99 97.50 +601138.79 5680781.57 95.75 +601138.86 5680893.64 97.50 +601139.22 5681194.33 97.50 +601139.24 5680747.27 96.25 +601139.26 5681263.60 97.50 +601139.39 5681044.90 97.50 +601139.43 5679426.24 97.50 +601139.59 5681247.13 97.50 +601139.81 5681165.31 97.50 +601139.83 5676525.05 100.00 +601139.90 5680799.94 97.50 +601139.91 5680791.37 96.25 +601140.13 5677478.49 97.50 +601140.33 5680923.00 97.50 +601141.43 5679893.83 97.50 +601141.49 5680777.69 96.25 +601141.65 5677145.12 97.50 +601141.67 5680756.94 96.25 +601141.92 5677840.23 97.50 +601141.93 5676718.71 98.75 +601142.05 5679903.79 97.50 +601142.05 5679925.29 97.50 +601142.18 5679883.98 97.50 +601142.42 5677830.88 97.50 +601142.45 5680790.24 95.75 +601142.58 5679850.00 97.50 +601142.59 5680952.36 97.50 +601142.60 5680458.10 96.25 +601143.18 5680724.52 96.25 +601143.69 5680943.89 97.50 +601143.99 5679673.59 97.50 +601144.07 5680800.35 96.25 +601144.64 5680962.10 97.50 +601144.72 5680808.69 97.50 +601144.96 5679854.89 96.25 +601144.98 5679913.22 97.50 +601145.02 5680734.34 96.25 +601145.06 5680766.34 96.25 +601145.27 5680473.59 96.25 +601145.57 5681255.15 97.50 +601145.59 5679874.95 97.50 +601145.70 5680989.60 97.50 +601145.70 5678589.93 97.50 +601145.85 5680023.17 97.50 +601145.92 5680786.54 96.25 +601145.95 5679934.44 97.50 +601146.70 5680971.85 97.50 +601146.82 5676532.19 100.00 +601146.83 5678651.14 97.50 +601147.04 5680744.13 96.25 +601147.08 5677847.41 97.50 +601147.42 5679841.34 97.50 +601147.43 5681188.62 97.50 +601147.48 5680877.49 97.50 +601147.57 5681102.33 97.50 +601147.74 5679664.42 97.50 +601147.97 5681049.88 97.50 +601147.97 5676462.73 101.25 +601147.99 5680797.89 95.75 +601148.09 5677823.78 97.50 +601148.20 5680927.05 97.50 +601148.21 5679421.57 97.50 +601148.55 5680891.20 97.50 +601148.74 5679922.46 97.50 +601149.10 5681262.05 97.50 +601149.28 5680808.76 96.25 +601149.38 5681245.08 97.50 +601149.40 5679861.97 96.25 +601149.40 5680775.32 96.25 +601149.71 5680753.74 96.25 +601149.79 5677476.16 97.50 +601149.81 5681165.25 97.50 +601149.85 5679943.59 97.50 +601150.00 5680029.73 97.50 +601150.20 5680464.50 96.25 +601150.44 5679654.80 97.50 +601150.51 5680980.98 97.50 +601150.63 5680795.23 96.25 +601150.87 5679847.24 96.25 +601150.99 5680816.47 97.50 +601151.06 5680015.01 97.50 +601151.17 5677142.16 97.50 +601151.22 5680373.27 96.25 +601151.22 5680373.27 97.50 +601151.34 5676721.98 98.75 +601151.55 5677834.21 97.25 +601151.92 5680947.30 97.50 +601152.41 5679645.01 97.50 +601152.58 5679867.84 97.50 +601152.71 5676540.25 100.00 +601152.91 5680763.20 96.25 +601152.94 5679931.51 97.50 +601153.00 5676764.26 98.75 +601153.11 5680479.69 96.25 +601153.17 5680996.16 97.50 +601153.45 5678596.25 97.50 +601153.53 5680805.53 95.75 +601153.62 5676774.15 98.75 +601154.40 5680783.94 96.25 +601154.58 5679635.26 97.50 +601154.68 5680817.05 96.25 +601154.70 5679952.19 97.50 +601154.79 5679834.66 97.50 +601155.06 5679414.54 97.50 +601155.08 5680989.83 97.50 +601155.42 5681253.61 97.50 +601155.47 5680641.90 96.25 +601155.51 5680933.82 97.50 +601155.70 5680768.58 96.25 +601155.96 5677845.75 97.50 +601156.21 5678654.61 97.50 +601156.52 5680803.12 96.25 +601156.53 5681184.49 97.50 +601156.62 5679605.55 97.50 +601156.69 5679615.55 97.50 +601156.76 5679625.54 97.50 +601156.93 5679856.30 96.25 +601157.09 5680777.94 96.00 +601157.10 5676782.49 98.75 +601157.11 5680874.79 97.50 +601157.15 5679940.56 97.50 +601157.18 5681053.69 97.50 +601157.25 5677821.51 97.50 +601157.26 5679847.93 96.00 +601157.27 5680824.25 97.50 +601157.38 5680380.45 96.25 +601157.55 5681102.80 97.50 +601157.56 5676465.56 101.25 +601157.82 5680470.88 96.25 +601157.89 5679840.37 96.25 +601158.21 5680888.64 97.50 +601158.32 5679595.73 97.50 +601158.49 5681169.35 97.50 +601158.51 5676548.38 100.00 +601158.53 5676755.96 98.75 +601158.71 5680954.56 97.50 +601158.81 5680008.87 97.50 +601159.06 5681261.49 97.50 +601159.08 5680813.18 95.75 +601159.10 5679860.29 97.50 +601159.16 5681243.02 97.50 +601159.29 5677473.17 97.50 +601159.55 5680028.73 97.50 +601159.64 5680634.74 96.25 +601159.90 5680650.51 96.25 +601160.08 5680486.77 96.25 +601160.21 5677829.75 97.25 +601160.22 5680825.25 96.25 +601160.35 5679406.11 97.50 +601160.56 5680682.19 96.25 +601160.60 5680791.78 96.25 +601160.72 5676725.37 98.75 +601160.74 5677139.39 97.50 +601160.86 5680374.18 97.50 +601160.86 5679960.01 97.50 +601161.45 5678602.23 97.50 +601161.47 5679586.32 97.50 +601161.62 5680776.61 96.25 +601161.75 5679949.41 97.50 +601162.16 5679827.97 97.50 +601162.27 5681177.96 97.50 +601162.28 5681080.26 97.50 +601162.72 5680940.23 97.50 +601162.73 5677839.11 97.50 +601162.85 5680674.31 96.25 +601163.14 5680810.46 96.25 +601164.03 5679849.52 96.25 +601164.26 5679679.72 97.50 +601164.27 5676556.55 100.00 +601164.37 5680831.28 97.50 +601164.51 5680691.01 96.25 +601164.60 5680659.15 96.25 +601164.65 5680483.87 96.00 +601164.90 5676748.31 98.75 +601165.00 5679833.60 96.25 +601165.15 5680385.73 96.25 +601165.25 5681251.88 97.50 +601165.26 5680757.60 96.25 +601165.44 5676787.95 98.75 +601165.46 5680961.89 97.50 +601165.50 5680477.17 96.25 +601165.64 5677816.94 97.50 +601165.89 5678656.57 97.50 +601166.31 5679853.40 97.50 +601166.33 5680767.06 96.25 +601166.49 5681057.24 97.50 +601166.59 5676469.65 101.25 +601166.60 5680002.78 97.50 +601166.77 5680021.89 97.50 +601166.79 5679578.01 97.50 +601166.79 5680872.37 97.50 +601166.99 5679967.84 97.50 +601167.16 5680493.72 96.25 +601167.19 5679399.10 97.50 +601167.29 5680799.15 96.25 +601167.46 5680640.23 96.25 +601167.54 5681103.27 97.50 +601167.89 5680748.41 96.25 +601167.90 5680886.17 97.50 +601167.91 5679688.40 97.50 +601167.97 5680668.14 96.25 +601168.04 5676731.39 98.75 +601168.20 5680700.03 96.25 +601168.35 5680783.99 96.25 +601168.41 5681086.47 97.50 +601168.48 5679956.78 97.50 +601168.74 5677470.05 97.50 +601168.79 5681240.46 97.50 +601168.86 5677825.30 97.25 +601169.01 5681260.88 97.50 +601169.04 5680764.60 95.70 +601169.06 5680818.38 96.25 +601169.73 5680738.82 96.25 +601169.74 5678607.82 97.50 +601169.83 5680827.51 96.25 +601169.89 5676564.81 100.00 +601169.93 5680719.30 96.25 +601170.03 5680371.96 97.50 +601170.04 5677136.11 97.50 +601170.08 5680679.74 96.25 +601170.11 5680709.55 96.25 +601170.15 5679822.08 97.50 +601170.31 5680729.07 96.25 +601170.43 5679842.41 96.25 +601170.59 5676740.44 98.75 +601170.84 5677834.06 97.50 +601171.19 5681075.80 97.50 +601171.19 5680392.89 96.25 +601171.24 5680945.42 97.50 +601171.45 5680838.34 97.50 +601171.91 5680755.14 96.25 +601172.00 5680490.24 96.00 +601172.26 5679976.28 97.50 +601172.34 5679832.86 96.25 +601172.62 5679845.69 97.50 +601172.74 5680968.69 97.50 +601172.76 5679675.47 97.50 +601172.94 5679995.33 97.50 +601172.94 5680483.74 96.25 +601173.27 5680772.87 96.25 +601173.44 5680745.51 96.25 +601173.61 5679570.71 97.50 +601173.93 5681034.08 97.50 +601173.96 5680015.01 97.50 +601174.03 5677812.37 97.50 +601174.17 5679985.46 97.50 +601174.49 5680647.20 96.25 +601174.51 5680688.45 96.25 +601174.52 5680764.11 96.25 +601174.58 5681053.10 97.50 +601174.59 5680791.80 96.25 +601174.75 5676791.20 98.75 +601174.76 5680464.76 96.25 +601174.85 5679695.29 97.50 +601174.97 5680805.52 96.25 +601175.05 5680499.75 96.25 +601175.07 5681250.16 97.50 +601175.09 5676474.91 101.25 +601175.61 5680674.44 96.25 +601175.88 5678656.98 97.50 +601176.02 5680401.01 96.25 +601176.25 5680736.17 96.25 +601176.27 5680869.84 97.50 +601176.28 5680456.80 96.25 +601176.61 5679396.71 97.50 +601176.71 5681099.65 97.50 +601176.86 5680697.92 96.25 +601176.93 5676571.78 100.00 +601176.94 5679961.96 97.50 +601177.07 5677820.08 97.25 +601177.16 5681043.48 97.50 +601177.27 5681083.67 97.50 +601177.30 5677464.94 97.50 +601177.31 5680885.32 97.50 +601177.73 5677129.82 97.50 +601178.04 5681236.67 97.50 +601178.33 5680726.74 96.25 +601178.36 5679816.45 97.50 +601178.51 5680845.41 97.50 +601178.54 5680367.48 97.50 +601178.59 5677828.51 97.50 +601178.73 5681259.37 97.50 +601178.83 5678611.88 97.50 +601178.84 5680716.98 96.25 +601179.20 5680903.71 97.50 +601179.25 5679838.23 97.50 +601179.34 5680496.62 96.00 +601179.64 5680707.25 96.25 +601179.73 5680950.69 97.50 +601179.85 5680913.27 97.50 +601179.89 5680397.64 97.50 +601180.02 5680490.71 96.25 +601180.06 5680893.76 97.50 +601180.11 5681071.34 97.50 +601180.16 5681039.11 97.50 +601180.16 5680975.33 97.50 +601180.34 5680007.38 97.50 +601180.63 5680409.28 96.25 +601180.74 5679563.71 97.50 +601181.04 5680472.07 96.25 +601181.51 5680815.40 97.50 +601181.80 5680653.83 96.25 +601181.93 5677120.78 97.50 +601181.97 5680798.39 96.25 +601181.97 5679678.79 97.50 +601181.97 5680824.31 97.50 +601181.99 5680770.41 96.25 +601182.29 5680776.13 96.25 +601182.30 5680072.95 97.50 +601182.36 5680862.55 97.50 +601182.41 5680506.32 96.25 +601182.43 5677807.80 97.50 +601182.47 5680465.25 96.00 +601182.62 5680406.42 97.50 +601182.62 5679701.49 97.50 +601182.67 5676481.43 101.25 +601183.02 5680381.02 96.25 +601183.16 5680811.26 96.25 +601183.52 5677111.03 97.50 +601183.65 5680680.20 96.25 +601184.34 5677101.11 97.50 +601184.41 5676793.67 98.75 +601184.43 5680371.46 96.25 +601184.44 5677091.14 97.50 +601184.46 5680853.39 97.50 +601184.54 5677081.17 97.50 +601184.61 5676578.16 100.00 +601184.90 5681248.43 97.50 +601185.07 5680459.14 96.25 +601185.23 5677814.77 97.25 +601185.39 5681047.57 97.50 +601185.41 5680066.03 97.50 +601185.77 5680396.67 97.50 +601185.83 5678657.93 97.50 +601185.86 5677459.83 97.50 +601185.93 5677071.37 97.50 +601186.07 5681096.33 97.50 +601186.08 5677822.57 97.50 +601186.15 5681079.16 97.50 +601186.23 5680416.89 96.25 +601186.30 5680503.38 96.00 +601186.36 5680361.77 97.50 +601186.41 5679831.28 97.50 +601186.42 5679395.16 97.50 +601186.44 5679961.65 97.50 +601186.61 5679999.65 97.50 +601186.64 5679810.95 97.50 +601186.66 5680389.80 96.25 +601186.75 5681013.27 97.25 +601186.76 5680498.00 96.25 +601187.29 5681232.87 97.50 +601187.34 5681254.33 97.50 +601187.67 5680981.86 97.50 +601187.72 5680832.27 97.50 +601187.83 5681065.20 97.50 +601187.88 5680912.52 97.50 +601187.96 5679556.80 97.50 +601188.13 5680478.62 96.25 +601188.14 5678615.55 97.50 +601188.23 5677061.67 97.50 +601188.51 5680514.16 96.25 +601188.54 5680955.36 97.50 +601188.57 5680414.01 97.50 +601189.00 5680848.80 97.50 +601189.18 5680363.20 96.25 +601189.32 5679708.86 97.50 +601189.40 5681056.64 97.50 +601189.56 5679685.23 97.50 +601189.79 5676488.38 101.25 +601189.98 5680782.15 96.25 +601190.06 5680659.21 96.25 +601190.07 5680775.88 96.25 +601190.16 5680804.11 96.25 +601190.46 5680819.49 97.50 +601190.66 5680071.64 97.50 +601191.03 5680466.73 96.25 +601191.04 5680672.71 95.80 +601191.10 5677803.79 97.50 +601191.12 5680371.83 96.25 +601191.75 5680903.44 97.50 +601191.79 5680059.47 97.50 +601192.00 5680685.50 96.25 +601192.05 5680815.37 96.25 +601192.12 5679953.68 97.50 +601192.27 5680380.84 96.25 +601192.37 5676584.45 100.00 +601192.53 5680423.78 96.25 +601192.75 5680857.92 97.50 +601192.94 5680510.48 96.00 +601193.34 5680505.44 96.25 +601193.62 5679824.39 97.50 +601193.72 5677816.84 97.50 +601194.07 5676796.14 98.75 +601194.09 5680399.95 97.50 +601194.10 5680989.47 97.50 +601194.18 5677054.02 97.50 +601194.28 5677454.51 97.50 +601194.31 5679549.08 97.50 +601194.46 5680356.49 97.50 +601194.55 5681245.95 97.50 +601194.61 5680522.00 96.25 +601194.92 5680390.05 96.25 +601194.98 5680839.15 97.50 +601195.18 5680850.53 97.50 +601195.22 5680485.16 96.25 +601195.22 5679995.30 97.50 +601195.26 5681075.28 97.50 +601195.43 5679806.28 97.50 +601195.76 5678659.08 97.50 +601195.88 5681095.10 97.50 +601195.94 5676496.27 101.25 +601196.01 5679716.22 97.50 +601196.09 5679392.82 97.50 +601196.22 5680961.38 97.50 +601196.22 5681228.43 97.50 +601196.31 5681250.39 97.50 +601196.37 5680419.74 97.50 +601196.38 5680894.84 97.50 +601196.59 5680474.62 96.25 +601196.89 5680789.06 96.25 +601196.91 5679944.92 97.50 +601197.34 5680370.26 96.25 +601197.44 5680810.92 96.25 +601197.45 5679691.34 97.50 +601197.74 5678618.27 97.50 +601197.99 5680359.61 96.25 +601198.09 5680781.44 96.25 +601198.09 5680825.94 97.50 +601198.18 5680052.91 97.50 +601198.77 5680067.44 97.50 +601199.37 5680517.77 96.00 +601199.39 5680662.53 96.25 +601199.45 5680997.73 97.50 +601199.70 5680865.11 97.50 +601200.07 5680057.78 97.30 +601200.15 5677803.84 97.50 +601200.47 5680393.70 97.50 +601200.51 5680428.83 96.25 +601200.54 5680529.97 96.25 +601200.58 5680690.43 96.25 +601200.63 5680512.17 96.25 +601200.66 5679541.37 97.50 +601200.84 5676589.75 100.00 +601201.07 5680492.84 96.25 +601201.16 5676504.76 101.25 +601201.22 5680858.50 97.50 +601201.62 5677811.46 97.50 +601201.74 5680482.77 96.25 +601201.89 5679724.21 97.50 +601202.14 5679936.49 97.50 +601202.24 5680846.02 97.50 +601202.34 5680969.18 97.50 +601202.41 5679819.74 97.50 +601202.66 5677449.11 97.50 +601202.84 5680351.64 97.50 +601203.22 5681006.96 97.50 +601203.61 5677053.61 97.50 +601203.79 5676798.29 98.75 +601203.80 5680795.97 96.25 +601203.93 5680377.33 96.25 +601204.11 5681243.11 97.50 +601204.27 5679801.71 97.50 +601204.27 5680425.34 97.50 +601204.49 5680889.24 97.50 +601204.59 5679997.80 97.50 +601204.91 5681223.49 97.50 +601205.02 5678931.07 97.50 +601205.04 5681073.72 97.50 +601205.16 5680046.99 97.50 +601205.25 5680060.96 97.50 +601205.50 5680525.31 96.00 +601205.57 5679697.11 97.50 +601205.68 5680787.60 96.25 +601205.69 5678660.23 97.50 +601205.70 5679390.22 97.50 +601205.81 5681096.24 97.50 +601205.94 5676513.54 101.25 +601205.99 5680832.05 97.50 +601206.22 5681249.27 97.50 +601206.38 5680538.00 96.25 +601206.45 5681016.35 97.50 +601206.65 5680387.04 97.50 +601206.66 5680872.28 97.50 +601206.73 5680978.16 97.50 +601207.14 5680500.33 96.25 +601207.18 5680356.66 96.25 +601207.44 5678620.70 97.50 +601207.45 5680490.53 96.25 +601207.55 5679534.16 97.50 +601207.56 5680363.52 96.00 +601207.64 5679732.31 97.50 +601207.89 5680518.94 96.25 +601207.95 5678940.10 97.50 +601208.47 5680433.70 96.25 +601208.71 5680665.86 96.25 +601208.89 5681026.01 97.50 +601209.20 5680863.75 97.50 +601209.30 5676595.05 100.00 +601209.55 5678922.60 97.50 +601209.70 5680881.52 97.50 +601209.73 5680693.22 96.25 +601209.75 5680473.82 96.25 +601209.99 5680852.33 97.50 +601210.16 5680373.45 96.25 +601210.36 5679931.82 97.50 +601210.63 5681035.80 97.50 +601210.69 5677060.31 97.50 +601211.04 5677443.71 97.50 +601211.18 5679814.97 97.50 +601211.33 5680802.08 96.25 +601211.52 5680466.90 96.25 +601211.55 5680532.93 96.00 +601211.57 5680004.88 97.50 +601211.90 5681045.69 97.50 +601212.12 5680349.80 97.50 +601212.20 5680685.65 96.25 +601212.21 5680546.04 96.25 +601212.24 5680041.19 97.50 +601212.44 5680430.21 97.50 +601212.57 5680055.68 97.50 +601212.59 5676520.81 101.25 +601212.99 5681079.72 97.50 +601213.14 5681239.12 97.50 +601213.14 5679797.20 97.50 +601213.20 5680985.77 97.50 +601213.38 5680793.60 96.25 +601213.63 5681218.59 97.50 +601213.67 5676799.60 98.75 +601213.85 5680507.25 96.25 +601213.89 5680497.68 96.25 +601214.02 5679702.43 97.50 +601214.21 5679739.79 97.50 +601214.29 5680837.62 97.50 +601214.71 5681055.19 97.50 +601214.78 5677108.17 97.50 +601214.92 5680525.97 96.25 +601214.96 5679391.82 97.50 +601215.04 5681099.78 97.50 +601215.13 5677118.07 97.50 +601215.33 5680476.01 96.00 +601215.34 5677069.02 97.50 +601215.52 5680816.72 97.50 +601215.63 5678661.36 97.50 +601216.02 5681247.41 97.50 +601216.08 5677098.29 97.50 +601216.10 5679530.39 97.50 +601216.13 5680385.17 97.50 +601216.22 5679998.11 97.50 +601216.25 5680481.34 96.25 +601216.43 5680013.56 97.50 +601216.63 5680355.15 96.25 +601216.79 5680048.05 97.50 +601216.98 5677435.76 97.50 +601217.01 5680859.34 97.50 +601217.14 5678623.13 97.50 +601217.17 5678942.68 97.50 +601217.29 5676600.95 100.00 +601217.37 5677088.41 97.50 +601217.47 5680435.23 96.25 +601217.53 5680540.58 96.00 +601217.71 5678917.10 97.50 +601217.72 5680370.05 96.25 +601218.13 5680554.02 96.25 +601218.14 5681064.55 97.50 +601218.22 5677078.56 97.50 +601218.24 5679936.43 97.50 +601218.59 5680666.23 96.25 +601218.71 5677126.95 97.50 +601218.72 5680865.93 97.50 +601218.93 5680801.41 96.25 +601219.09 5680505.54 96.25 +601219.29 5680472.76 96.25 +601219.45 5680993.57 97.50 +601219.50 5680825.11 97.50 +601219.91 5679810.15 97.50 +601220.17 5680006.82 97.50 +601220.25 5676527.22 101.25 +601220.36 5680625.32 96.25 +601220.55 5680534.12 96.25 +601220.70 5680022.54 97.50 +601220.72 5680683.43 96.25 +601220.91 5679747.11 97.50 +601221.46 5681233.63 97.50 +601221.65 5680350.11 97.50 +601221.67 5681073.87 97.50 +601221.96 5678300.94 97.50 +601221.96 5679991.20 97.50 +601222.06 5681083.51 97.50 +601222.06 5680430.00 97.50 +601222.08 5679792.87 97.50 +601222.16 5678310.78 97.50 +601222.19 5680843.67 97.50 +601222.35 5681213.71 97.50 +601222.67 5680368.18 96.25 +601222.67 5679707.39 97.50 +601222.78 5677427.65 97.50 +601222.90 5681105.71 97.50 +601222.91 5680488.72 96.25 +601222.99 5680548.61 96.00 +601223.25 5680634.18 96.25 +601223.25 5678320.58 97.50 +601223.31 5680814.45 97.50 +601223.37 5680361.15 96.25 +601223.55 5676800.91 98.75 +601223.98 5681002.37 97.50 +601223.99 5679395.99 97.50 +601224.02 5680376.85 96.25 +601224.11 5680561.95 96.25 +601224.20 5676608.16 100.00 +601224.52 5678330.36 97.50 +601224.55 5680480.96 96.25 +601224.95 5680031.54 97.50 +601225.36 5680015.34 97.50 +601225.48 5679532.08 97.50 +601225.51 5677134.02 97.50 +601225.56 5678662.48 97.50 +601225.75 5679922.69 97.50 +601225.80 5680384.90 97.50 +601225.81 5678340.13 97.50 +601225.82 5681245.55 97.50 +601225.86 5679482.37 97.50 +601225.91 5679932.66 97.50 +601225.96 5680356.53 96.25 +601226.04 5680542.40 96.25 +601226.08 5679472.53 97.50 +601226.09 5680431.66 96.25 +601226.19 5680697.65 96.25 +601226.19 5680832.54 97.50 +601226.48 5678912.40 97.50 +601226.51 5680621.50 96.25 +601226.59 5678292.66 97.50 +601226.81 5678625.66 97.50 +601227.09 5678943.06 97.50 +601227.37 5680642.86 96.25 +601227.53 5679913.06 97.50 +601227.56 5679462.70 97.50 +601227.59 5679492.17 97.50 +601227.67 5681011.66 97.50 +601227.99 5680556.95 96.00 +601228.38 5680665.22 96.25 +601228.41 5676533.00 101.25 +601228.58 5677419.55 97.50 +601228.59 5678349.58 97.50 +601228.71 5680375.46 96.25 +601228.96 5680706.06 96.25 +601228.98 5680851.01 97.50 +601228.99 5680570.57 96.25 +601229.06 5679752.82 97.50 +601229.09 5679997.48 97.50 +601229.16 5677201.51 97.50 +601229.53 5679807.55 97.50 +601229.57 5680496.10 96.25 +601229.76 5681112.98 97.50 +601229.79 5681228.13 97.50 +601229.83 5680636.65 96.00 +601230.07 5680040.07 97.50 +601230.32 5680489.00 96.25 +601230.36 5677211.41 97.50 +601230.42 5680425.12 97.50 +601230.57 5680682.47 96.25 +601230.69 5677191.77 97.50 +601230.72 5680353.51 97.50 +601230.88 5681021.12 97.50 +601230.90 5680023.64 97.50 +601230.93 5679712.83 97.50 +601231.00 5679453.37 97.50 +601231.11 5676615.38 100.00 +601231.18 5681209.02 97.50 +601231.26 5679501.26 97.50 +601231.59 5679789.94 97.50 +601231.74 5680550.53 96.25 +601231.79 5680364.22 96.25 +601231.92 5680049.55 97.50 +601231.92 5680628.99 96.25 +601232.07 5678358.79 97.50 +601232.17 5680818.92 97.50 +601232.35 5680059.48 97.50 +601232.36 5680651.06 96.25 +601232.55 5680704.07 96.00 +601232.89 5681030.91 97.50 +601232.89 5680839.96 97.50 +601232.94 5680565.31 96.00 +601232.95 5677220.92 97.50 +601232.97 5679400.28 97.50 +601233.24 5679923.24 97.50 +601233.39 5679931.76 97.50 +601233.46 5676801.78 98.75 +601233.52 5680579.41 96.25 +601233.66 5679537.82 97.50 +601233.67 5680699.85 96.25 +601233.68 5680426.07 96.25 +601233.72 5678288.91 97.50 +601234.03 5677780.28 98.75 +601234.12 5679906.09 97.50 +601234.41 5681040.79 97.50 +601234.43 5677411.48 97.50 +601234.44 5677770.47 98.75 +601234.54 5680360.97 96.25 +601234.69 5681050.78 97.50 +601234.78 5677137.08 97.50 +601234.81 5681060.77 97.50 +601235.07 5679913.82 97.50 +601235.11 5677183.09 97.50 +601235.20 5681070.76 97.50 +601235.24 5680382.97 97.50 +601235.25 5681242.39 97.50 +601235.26 5677790.14 98.75 +601235.41 5678664.16 97.50 +601235.73 5680068.34 97.50 +601235.77 5680858.34 97.50 +601235.94 5678367.86 97.50 +601236.07 5680637.74 96.25 +601236.11 5678910.12 97.50 +601236.12 5680032.14 97.50 +601236.17 5680711.35 96.25 +601236.23 5681120.59 97.50 +601236.23 5680503.48 96.25 +601236.26 5678628.93 97.50 +601236.39 5677760.71 98.75 +601236.49 5680559.20 96.25 +601236.50 5680003.50 97.50 +601236.73 5680496.58 96.25 +601236.85 5680588.76 96.25 +601236.94 5676538.19 101.25 +601236.94 5678943.88 97.50 +601236.96 5677230.04 97.50 +601237.23 5680574.02 96.00 +601237.32 5679758.37 97.50 +601237.59 5679720.26 97.50 +601237.71 5679446.24 97.50 +601237.77 5680418.84 97.50 +601238.11 5680663.37 96.25 +601238.11 5677799.42 98.75 +601238.34 5677750.96 98.75 +601238.36 5681223.03 97.50 +601238.47 5676622.12 100.00 +601238.72 5680358.86 97.50 +601238.78 5680368.51 96.25 +601238.96 5681079.77 97.50 +601239.11 5679965.87 97.50 +601239.17 5679905.23 97.50 +601239.19 5679507.28 97.50 +601239.20 5679805.09 97.50 +601239.36 5679928.07 97.50 +601239.81 5678376.93 97.50 +601239.85 5679897.92 97.50 +601239.89 5680419.28 96.25 +601239.94 5680706.30 96.25 +601239.99 5680598.18 96.25 +601239.99 5680846.96 97.50 +601240.09 5680655.55 96.25 +601240.09 5680646.55 96.25 +601240.10 5679955.98 97.50 +601240.12 5681204.55 97.50 +601240.14 5679975.79 97.50 +601240.27 5677403.41 97.50 +601240.29 5679911.24 97.30 +601240.40 5680681.30 96.25 +601240.41 5679995.67 97.50 +601240.55 5680568.27 96.25 +601240.57 5679545.04 97.50 +601240.81 5680823.96 97.50 +601240.90 5680583.01 96.00 +601241.04 5680040.82 97.50 +601241.09 5679985.72 97.50 +601241.10 5679787.02 97.50 +601241.21 5680409.91 96.25 +601241.21 5680409.91 97.50 +601241.26 5677175.25 97.50 +601241.29 5680375.98 97.50 +601241.41 5680504.68 95.80 +601241.53 5679946.11 97.50 +601242.02 5681004.92 97.50 +601242.12 5679918.89 97.50 +601242.18 5677741.79 98.75 +601242.22 5678293.59 97.50 +601242.38 5677238.31 97.50 +601242.48 5679400.15 97.50 +601242.50 5681128.38 97.50 +601242.56 5680865.68 97.50 +601243.21 5680510.56 96.25 +601243.42 5680367.12 97.50 +601243.43 5676801.70 98.75 +601243.50 5680592.38 96.00 +601243.54 5681088.63 97.50 +601243.56 5680074.47 97.50 +601243.60 5680607.40 96.25 +601243.79 5679936.42 97.50 +601243.82 5680503.54 96.25 +601243.93 5681014.67 97.50 +601244.04 5677806.96 98.75 +601244.17 5677135.01 97.50 +601244.24 5679727.66 97.50 +601244.56 5681238.81 97.50 +601244.92 5679897.58 97.50 +601244.96 5680577.16 96.25 +601244.99 5679764.48 97.50 +601245.08 5679439.55 97.50 +601245.18 5678666.28 97.50 +601245.24 5678385.27 97.50 +601245.39 5678632.81 97.50 +601245.68 5676543.03 101.25 +601245.82 5678910.45 97.50 +601245.86 5679910.05 97.50 +601245.97 5680049.49 97.50 +601245.98 5676628.71 100.00 +601246.04 5677732.62 98.75 +601246.09 5681024.37 97.50 +601246.42 5679890.48 97.50 +601246.62 5678946.22 97.50 +601246.64 5679926.85 97.50 +601246.87 5677396.02 97.50 +601246.96 5681217.97 97.50 +601247.29 5680649.78 96.25 +601247.49 5680685.88 96.25 +601247.59 5679799.85 97.50 +601247.66 5680853.38 97.50 +601247.89 5680661.82 96.25 +601248.06 5679551.63 97.50 +601248.12 5680586.47 96.25 +601248.22 5681000.18 97.50 +601248.65 5677246.06 97.50 +601248.70 5681097.08 97.50 +601248.73 5680873.51 97.50 +601248.74 5679508.88 97.50 +601248.76 5680829.94 97.50 +601248.86 5681033.91 97.50 +601249.02 5677169.08 97.50 +601249.06 5681200.08 97.50 +601249.08 5678300.67 97.50 +601249.34 5681135.33 97.50 +601249.39 5679782.50 97.50 +601249.48 5680613.86 96.25 +601249.48 5679736.15 97.50 +601249.80 5679773.13 97.50 +601250.13 5679917.51 97.50 +601250.19 5680517.64 96.25 +601250.20 5680596.18 96.25 +601250.66 5679901.73 97.50 +601250.79 5678393.50 97.50 +601250.92 5679431.50 97.50 +601251.05 5680510.37 96.25 +601251.49 5680694.87 96.25 +601251.67 5679396.64 97.50 +601251.71 5681043.43 97.50 +601251.80 5680255.64 97.50 +601251.92 5677725.01 98.75 +601251.96 5680079.61 97.50 +601252.19 5680057.29 97.50 +601252.27 5680605.90 96.25 +601252.38 5679893.53 97.50 +601252.40 5680265.55 97.50 +601252.57 5680643.55 96.25 +601252.71 5680656.21 96.25 +601253.05 5677130.49 97.50 +601253.39 5676801.62 98.75 +601253.59 5678638.54 97.50 +601253.63 5679883.58 97.50 +601253.67 5681234.77 97.50 +601253.73 5679908.20 97.50 +601253.89 5676634.76 100.00 +601253.93 5677807.34 98.75 +601253.94 5681053.12 97.50 +601254.11 5680247.09 97.50 +601254.29 5680668.27 96.25 +601254.34 5677389.42 97.50 +601254.36 5681105.24 97.50 +601254.42 5680881.73 97.50 +601254.47 5680275.27 97.50 +601254.56 5676547.59 101.25 +601254.58 5681007.31 97.50 +601254.69 5680704.24 96.25 +601254.91 5678665.63 97.50 +601254.93 5680860.15 97.50 +601254.98 5679744.47 97.50 +601255.45 5678912.97 97.50 +601255.56 5681212.91 97.50 +601255.73 5681062.89 97.50 +601255.86 5678307.81 97.50 +601256.15 5679795.24 97.50 +601256.23 5679556.95 97.50 +601256.30 5678948.55 97.50 +601256.32 5680836.49 97.50 +601256.37 5679423.20 97.50 +601256.48 5677251.65 97.50 +601256.50 5680285.00 97.50 +601256.89 5681072.76 97.50 +601256.91 5680650.99 96.00 +601257.25 5677163.54 97.50 +601257.27 5681016.88 97.50 +601257.34 5680713.77 96.25 +601257.62 5679899.02 97.50 +601257.65 5678400.71 97.50 +601257.83 5680524.00 96.25 +601258.04 5680677.18 96.25 +601258.21 5679943.73 97.50 +601258.21 5679953.64 97.50 +601258.38 5680517.08 96.25 +601258.39 5681196.52 97.50 +601258.42 5680065.08 97.50 +601258.52 5680294.73 97.50 +601258.56 5679507.46 97.50 +601258.71 5680253.14 97.50 +601258.72 5681114.24 97.50 +601258.90 5681137.89 97.50 +601258.94 5681082.47 97.50 +601259.44 5680077.77 96.25 +601259.50 5680085.86 97.50 +601259.53 5680979.95 97.50 +601259.72 5681026.51 97.50 +601259.76 5679963.32 97.50 +601259.78 5677718.91 98.75 +601259.95 5679391.18 97.50 +601260.00 5680304.54 97.50 +601260.11 5679819.39 97.50 +601260.46 5679876.31 97.50 +601260.54 5680989.79 97.50 +601260.56 5678316.48 97.50 +601260.59 5680261.67 97.50 +601260.59 5680868.39 97.50 +601260.72 5679752.61 97.50 +601260.81 5680686.65 96.25 +601260.85 5678645.37 97.50 +601260.92 5680072.84 96.25 +601261.00 5680645.14 96.25 +601261.01 5680722.93 96.25 +601261.05 5680314.43 97.50 +601261.23 5679414.55 97.50 +601261.49 5680656.96 96.25 +601261.54 5680970.22 97.50 +601261.59 5680888.69 97.50 +601261.98 5677383.03 97.50 +601262.06 5679934.91 97.50 +601262.08 5680999.59 97.50 +601262.09 5680324.31 97.50 +601262.15 5677126.44 97.50 +601262.20 5679890.26 97.50 +601262.21 5680354.06 97.50 +601262.26 5680241.41 97.50 +601262.39 5676640.01 100.00 +601262.59 5680344.13 97.50 +601262.59 5681230.30 97.50 +601262.74 5679972.76 97.50 +601262.96 5680334.20 97.50 +601263.08 5681123.24 97.50 +601263.10 5678827.11 97.50 +601263.17 5679809.89 97.50 +601263.35 5676801.37 98.75 +601263.55 5679799.99 97.50 +601263.74 5677805.71 98.75 +601263.88 5680843.03 97.50 +601263.98 5680245.55 97.50 +601264.03 5676550.80 101.25 +601264.17 5680695.97 96.25 +601264.21 5678662.46 97.50 +601264.29 5681208.09 97.50 +601264.51 5678407.91 97.50 +601264.63 5680960.93 97.50 +601264.77 5681090.52 97.50 +601264.84 5678325.33 97.50 +601264.86 5678916.17 97.50 +601265.11 5681009.05 97.50 +601265.16 5680731.92 96.25 +601265.40 5681034.66 97.50 +601265.50 5680530.32 96.25 +601265.59 5680071.78 97.50 +601265.63 5678653.59 97.50 +601265.77 5680258.46 97.30 +601265.79 5677255.20 97.50 +601265.88 5681132.76 97.50 +601266.01 5678950.73 97.50 +601266.12 5679558.37 97.50 +601266.25 5680523.15 96.25 +601266.36 5680079.80 96.00 +601266.61 5677160.12 97.50 +601266.65 5680650.82 96.25 +601266.84 5679824.18 97.50 +601267.19 5680875.87 97.50 +601267.40 5680083.26 96.25 +601267.60 5679510.13 97.50 +601267.63 5677712.81 98.75 +601267.76 5679958.63 97.25 +601267.77 5679385.03 97.50 +601267.79 5680266.06 97.50 +601267.83 5681193.23 97.50 +601267.84 5680705.16 96.25 +601267.96 5678334.68 97.50 +601268.00 5679407.26 97.50 +601268.03 5678835.14 97.50 +601268.13 5679759.30 97.50 +601268.13 5679870.08 97.50 +601268.15 5681018.52 97.50 +601268.19 5680090.71 97.50 +601268.83 5679882.81 97.50 +601268.85 5679980.57 97.50 +601269.24 5680894.95 97.50 +601269.29 5680077.55 96.25 +601269.52 5680740.80 96.25 +601269.53 5680251.88 97.30 +601269.89 5677376.96 97.50 +601270.84 5680236.42 97.50 +601270.88 5676645.27 100.00 +601270.99 5677799.11 98.75 +601271.22 5679935.92 97.50 +601271.23 5680984.86 97.50 +601271.33 5677122.55 97.50 +601271.34 5681027.93 97.50 +601271.36 5681225.55 97.50 +601271.37 5680994.74 97.50 +601271.71 5681097.52 97.50 +601271.76 5680714.24 96.25 +601271.84 5678826.15 97.50 +601271.91 5680848.96 97.50 +601272.12 5680259.94 97.30 +601272.61 5680956.68 97.50 +601272.69 5678343.07 97.50 +601272.79 5680242.40 97.50 +601273.01 5680536.83 96.25 +601273.07 5681203.36 97.50 +601273.20 5676799.86 98.75 +601273.22 5678412.34 97.50 +601273.38 5680975.24 97.50 +601273.51 5681037.55 97.50 +601273.74 5679517.41 97.50 +601273.78 5676552.57 101.25 +601273.85 5677745.20 99.00 +601274.12 5679874.91 97.50 +601274.14 5680883.06 97.50 +601274.14 5680749.55 96.25 +601274.40 5678918.93 97.50 +601274.46 5681063.74 97.00 +601274.59 5680528.52 96.25 +601274.64 5679944.56 97.50 +601274.72 5680075.31 97.50 +601274.73 5681004.10 97.50 +601274.78 5679399.98 97.50 +601275.10 5680965.74 97.50 +601275.22 5677258.21 97.50 +601275.66 5677155.97 97.50 +601275.72 5678952.91 97.50 +601275.83 5677707.17 98.75 +601275.86 5679820.42 97.50 +601275.91 5679560.39 97.50 +601276.04 5679954.37 97.50 +601276.05 5678840.99 97.50 +601276.28 5680723.05 96.25 +601276.32 5681187.99 97.50 +601276.42 5680265.52 97.50 +601276.57 5680086.11 96.25 +601276.81 5680706.75 97.50 +601276.84 5679381.02 97.50 +601277.32 5679964.20 97.50 +601277.32 5679984.01 97.50 +601277.46 5680093.89 97.50 +601277.56 5677791.71 98.75 +601277.63 5679974.11 97.50 +601277.80 5677370.90 97.50 +601277.84 5679761.03 97.50 +601277.90 5681013.52 97.50 +601277.90 5680251.98 97.30 +601278.11 5680229.99 97.50 +601278.16 5680453.23 96.25 +601278.36 5680081.06 96.25 +601278.40 5680898.96 97.50 +601278.56 5679526.11 97.50 +601278.83 5681104.36 97.50 +601279.34 5677116.68 97.50 +601279.44 5680716.24 97.50 +601279.49 5678350.21 97.50 +601279.53 5680757.86 96.25 +601279.58 5676650.17 100.00 +601279.63 5680537.53 96.00 +601279.75 5680443.76 96.25 +601280.13 5681220.79 97.50 +601280.13 5680259.27 97.30 +601280.17 5680854.59 97.50 +601280.19 5680246.69 97.50 +601280.41 5680493.85 96.25 +601280.49 5680543.32 96.25 +601280.62 5680272.99 97.50 +601280.81 5678830.25 97.50 +601280.93 5680282.32 97.50 +601280.93 5680338.93 96.25 +601281.25 5681022.85 97.50 +601281.37 5678417.57 97.50 +601281.83 5680731.17 96.25 +601281.85 5681198.62 97.50 +601281.94 5679393.08 97.50 +601282.32 5680888.61 97.50 +601282.55 5680534.37 96.25 +601282.74 5680461.82 96.25 +601282.84 5677783.27 98.75 +601283.05 5676798.34 98.75 +601283.33 5680700.75 97.50 +601283.72 5679534.60 97.50 +601283.75 5676553.23 101.25 +601284.08 5680222.04 97.50 +601284.09 5677701.65 98.75 +601284.13 5679814.84 97.50 +601284.15 5678920.94 97.50 +601284.57 5677151.51 97.50 +601284.59 5678846.10 97.50 +601284.61 5680076.63 97.50 +601284.67 5680502.10 96.25 +601284.73 5681182.59 97.50 +601285.03 5680724.45 97.50 +601285.10 5681112.08 97.50 +601285.11 5679384.34 97.50 +601285.17 5677258.73 97.50 +601285.42 5678955.13 97.50 +601285.46 5677364.55 97.50 +601285.48 5680765.73 96.25 +601285.71 5679562.09 97.50 +601285.93 5679755.61 97.50 +601286.00 5681031.58 97.50 +601286.49 5680253.60 97.50 +601286.86 5678356.44 97.50 +601286.98 5680280.84 97.50 +601287.10 5680542.81 96.25 +601287.19 5677110.54 97.50 +601287.33 5680095.14 97.50 +601287.48 5680234.81 97.50 +601287.53 5680212.76 97.50 +601287.56 5680902.97 97.50 +601287.96 5680425.11 96.25 +601288.00 5677774.77 98.75 +601288.07 5678424.92 97.50 +601288.10 5680262.61 97.50 +601288.17 5680738.78 96.25 +601288.35 5676654.97 100.00 +601288.39 5680860.28 97.50 +601288.45 5680495.95 96.25 +601288.46 5680439.03 96.25 +601288.49 5680469.83 96.25 +601288.51 5680244.65 97.50 +601288.61 5680271.96 97.50 +601288.95 5680089.23 96.25 +601289.02 5680335.22 96.25 +601289.15 5678835.68 97.50 +601289.16 5681216.67 97.50 +601289.89 5680254.48 97.50 +601289.90 5681081.85 97.50 +601290.15 5680303.53 97.50 +601290.39 5680293.67 97.50 +601290.40 5680225.32 97.50 +601290.43 5679541.95 97.50 +601290.66 5681193.94 97.50 +601290.79 5680203.37 97.50 +601291.03 5680448.38 96.00 +601291.03 5680732.44 97.50 +601291.14 5680893.32 97.50 +601291.18 5681119.94 97.50 +601291.23 5681040.03 97.50 +601291.33 5680313.39 97.50 +601291.74 5681091.14 97.50 +601291.94 5680773.23 96.25 +601292.06 5680085.80 96.25 +601292.16 5680283.90 97.50 +601292.16 5680508.22 96.25 +601292.38 5680264.10 97.50 +601292.72 5680274.03 97.50 +601292.81 5677357.81 97.50 +601292.89 5677766.11 98.75 +601292.90 5676796.82 98.75 +601293.14 5678851.18 97.50 +601293.15 5681177.20 97.50 +601293.18 5677146.49 97.50 +601293.26 5677697.80 98.75 +601293.26 5680701.53 97.50 +601293.32 5680215.82 97.50 +601293.37 5680761.11 96.00 +601293.44 5679811.53 97.50 +601293.60 5680193.84 97.50 +601293.64 5680429.03 96.25 +601293.73 5676553.10 101.25 +601293.84 5677103.47 97.50 +601293.85 5679749.54 97.50 +601293.90 5678922.95 97.50 +601294.15 5680746.66 96.25 +601294.43 5680078.40 97.50 +601294.46 5679566.34 97.50 +601294.56 5678432.46 97.50 +601294.91 5680420.18 96.25 +601295.04 5677258.61 97.50 +601295.12 5678957.38 97.50 +601295.26 5681049.04 97.50 +601295.36 5680466.84 96.25 +601295.54 5681201.69 97.75 +601295.68 5680476.69 96.25 +601295.86 5681100.17 97.50 +601295.95 5680320.14 97.50 +601295.97 5680329.74 96.25 +601296.15 5680502.17 96.25 +601296.22 5678359.56 97.50 +601296.57 5680866.02 97.50 +601296.69 5680458.02 96.25 +601296.70 5680907.01 97.50 +601296.80 5680206.51 97.50 +601296.88 5680097.16 97.50 +601297.14 5679549.29 97.50 +601297.16 5680184.63 97.50 +601297.69 5681127.41 97.50 +601297.71 5680435.39 96.25 +601297.77 5680739.83 97.50 +601297.78 5677757.45 98.75 +601297.86 5680091.82 96.25 +601297.89 5676657.87 100.00 +601298.05 5678840.13 97.50 +601298.13 5677094.56 97.50 +601298.14 5681084.53 97.50 +601298.43 5681058.46 97.50 +601298.73 5681213.83 97.50 +601298.75 5680780.42 96.25 +601299.55 5681189.40 97.50 +601300.02 5680897.90 97.50 +601300.06 5680754.60 96.25 +601300.09 5680421.49 96.00 +601300.16 5677351.08 97.50 +601300.65 5680513.28 96.25 +601300.92 5679742.62 97.50 +601301.12 5680086.70 96.25 +601301.16 5678439.76 97.50 +601301.24 5680322.60 96.25 +601301.33 5681171.46 97.50 +601301.55 5677141.14 97.50 +601301.63 5680198.01 97.50 +601301.63 5680313.04 97.50 +601301.66 5681067.86 97.50 +601302.00 5680175.95 97.50 +601302.26 5681107.68 97.50 +601302.30 5680425.68 96.25 +601302.36 5678854.92 97.50 +601302.51 5677694.24 98.75 +601302.54 5679761.23 97.50 +601302.62 5679572.05 97.50 +601302.62 5680473.26 96.25 +601302.76 5676795.32 98.75 +601302.79 5680415.16 96.25 +601302.88 5680483.55 96.25 +601303.15 5679809.39 97.50 +601303.23 5680702.07 97.50 +601303.54 5677749.40 98.75 +601303.62 5678925.06 97.50 +601303.71 5676552.46 101.25 +601303.79 5680081.54 97.50 +601303.79 5680872.90 97.50 +601303.99 5679733.16 97.50 +601304.03 5681092.37 97.50 +601304.11 5680508.03 96.25 +601304.41 5680747.29 97.50 +601304.50 5677255.46 97.50 +601304.61 5680452.08 96.25 +601304.86 5679751.76 97.50 +601304.88 5678959.19 97.50 +601304.99 5681077.22 97.50 +601305.16 5680102.55 97.50 +601305.18 5677087.51 97.50 +601305.29 5679554.98 97.50 +601305.53 5681133.44 97.50 +601305.53 5680096.99 96.25 +601305.66 5677342.81 97.50 +601305.66 5678362.38 97.50 +601305.74 5680911.28 97.50 +601305.95 5680418.31 96.00 +601306.09 5680762.45 96.25 +601306.13 5680787.02 96.25 +601306.36 5679723.47 97.50 +601307.16 5678844.05 97.50 +601307.36 5681208.96 97.50 +601307.57 5680434.55 96.25 +601307.57 5676660.29 100.00 +601307.77 5679742.37 97.50 +601307.83 5681101.54 97.50 +601308.22 5680190.57 97.50 +601308.49 5681184.98 97.50 +601308.56 5681115.35 97.50 +601308.60 5680092.15 96.25 +601308.95 5680518.67 96.25 +601308.96 5680902.38 97.50 +601309.04 5677134.58 97.50 +601309.11 5680169.13 97.50 +601309.18 5681165.28 97.50 +601309.21 5679732.51 97.50 +601309.32 5679715.18 97.50 +601309.80 5681085.92 97.50 +601309.81 5680490.67 96.25 +601310.00 5680479.89 96.25 +601310.02 5677741.86 98.75 +601310.05 5679764.31 97.50 +601310.34 5680755.34 97.50 +601310.39 5680420.99 96.25 +601310.44 5678443.35 97.50 +601310.47 5679578.14 97.50 +601310.53 5680409.93 96.25 +601310.94 5677334.35 97.50 +601311.02 5680266.92 96.25 +601311.03 5680110.58 97.50 +601311.29 5680257.15 96.25 +601311.40 5679722.78 97.50 +601311.41 5680878.93 97.50 +601311.52 5680104.11 96.25 +601311.65 5680276.71 96.25 +601311.81 5680415.12 96.00 +601311.86 5678856.52 97.50 +601312.13 5680513.82 96.25 +601312.26 5680086.81 97.50 +601312.35 5677692.81 98.75 +601312.37 5677080.64 97.50 +601312.39 5680770.09 96.25 +601312.62 5676793.84 98.75 +601313.03 5680446.79 96.25 +601313.05 5681109.99 97.50 +601313.09 5679808.49 97.50 +601313.22 5680702.07 97.50 +601313.27 5679560.90 97.50 +601313.30 5680286.39 96.25 +601313.35 5678924.70 97.50 +601313.51 5680793.62 96.25 +601313.62 5681123.74 97.50 +601313.69 5676551.85 101.25 +601313.80 5680247.67 96.25 +601313.95 5677252.31 97.50 +601314.31 5681133.33 97.50 +601314.50 5680370.35 96.25 +601314.81 5678959.90 97.50 +601314.81 5680915.48 97.50 +601314.84 5680183.16 97.50 +601314.89 5677126.51 97.50 +601315.01 5678365.46 97.50 +601315.08 5681094.28 97.50 +601315.12 5680098.75 96.25 +601315.21 5680360.71 96.25 +601315.74 5681203.55 97.50 +601315.97 5680380.23 96.25 +601316.01 5680763.57 97.50 +601316.44 5677734.27 98.75 +601316.74 5678844.28 97.50 +601316.80 5680524.64 96.25 +601316.82 5680274.87 97.50 +601316.82 5680284.79 97.50 +601316.83 5680118.66 97.50 +601316.84 5677326.37 97.50 +601316.85 5680497.68 96.25 +601317.03 5680486.92 96.25 +601317.33 5680111.38 96.25 +601317.33 5676662.44 100.00 +601317.36 5680859.03 97.50 +601317.40 5679585.21 97.50 +601317.51 5680434.44 96.25 +601317.57 5681180.85 97.50 +601317.67 5680411.94 96.00 +601317.91 5680265.02 97.50 +601318.10 5681160.79 97.50 +601318.11 5680906.40 97.50 +601318.20 5680094.57 97.50 +601318.29 5680165.83 97.50 +601318.50 5680239.23 96.25 +601318.52 5680405.07 96.25 +601318.60 5681118.23 97.50 +601318.63 5680294.50 97.50 +601318.69 5680777.72 96.25 +601318.85 5680850.57 97.50 +601319.10 5680417.76 96.25 +601319.15 5680255.17 97.50 +601319.31 5679760.76 97.50 +601319.63 5680801.39 96.25 +601319.83 5678446.49 97.50 +601320.21 5680304.27 97.50 +601320.34 5680519.33 96.25 +601320.51 5677074.89 97.50 +601320.56 5680877.94 97.50 +601320.68 5680107.59 96.00 +601320.83 5680868.41 97.50 +601320.98 5679567.20 97.50 +601321.00 5680314.16 97.50 +601321.22 5680388.72 96.25 +601321.37 5677119.00 97.50 +601321.38 5680772.01 97.50 +601321.53 5680245.60 97.50 +601321.58 5680105.34 96.25 +601321.61 5681101.78 97.50 +601321.73 5678855.28 97.50 +601322.01 5680354.35 96.25 +601322.11 5677693.19 98.75 +601322.36 5680443.45 96.25 +601322.36 5677726.27 98.75 +601322.47 5676792.36 98.75 +601322.98 5680178.48 97.50 +601323.01 5679808.97 97.50 +601323.09 5678922.64 97.50 +601323.19 5680702.73 97.50 +601323.47 5679593.08 97.50 +601323.51 5677250.01 97.50 +601323.52 5677318.97 97.50 +601323.63 5676551.14 101.25 +601324.06 5680493.95 96.25 +601324.06 5680919.27 97.50 +601324.24 5681198.32 97.50 +601324.28 5680504.27 96.25 +601324.32 5678368.42 97.50 +601324.35 5680531.04 96.25 +601324.35 5680102.26 97.50 +601324.62 5680231.55 96.25 +601324.74 5678960.58 97.50 +601324.82 5680785.49 96.25 +601325.40 5680123.05 97.50 +601325.46 5680115.74 96.25 +601325.62 5680322.74 97.50 +601325.75 5680809.18 96.25 +601325.97 5679753.34 97.50 +601326.24 5680731.95 97.50 +601326.37 5681124.37 97.50 +601326.37 5678841.78 97.50 +601326.49 5680412.24 96.25 +601326.65 5681176.72 97.50 +601326.98 5680237.31 97.50 +601327.10 5681156.45 97.50 +601327.14 5676663.93 100.00 +601327.18 5680404.11 96.25 +601327.45 5680434.44 96.25 +601327.63 5680855.07 97.50 +601327.85 5680908.44 97.50 +601327.86 5680396.15 96.25 +601327.86 5677718.00 98.75 +601328.12 5680164.70 97.50 +601328.14 5681109.27 97.50 +601328.26 5680779.19 97.50 +601328.35 5680360.72 96.25 +601328.46 5680524.96 96.25 +601328.50 5679601.67 97.50 +601328.51 5677699.42 98.75 +601328.52 5677068.96 97.50 +601328.69 5679573.49 97.50 +601328.70 5677112.25 97.50 +601329.68 5678447.90 97.50 +601329.73 5680109.69 96.25 +601330.51 5677311.91 97.50 +601330.52 5680370.30 96.25 +601330.72 5680793.44 96.25 +601330.77 5677709.08 98.75 +601331.04 5680501.02 96.25 +601331.48 5678853.31 97.50 +601331.72 5680510.86 96.25 +601331.82 5679745.26 97.50 +601331.90 5680537.43 96.25 +601331.90 5680816.93 96.25 +601331.96 5680725.82 97.50 +601331.98 5680225.04 96.25 +601332.09 5680441.80 96.25 +601332.38 5676791.29 98.75 +601332.39 5680330.00 97.50 +601332.44 5680739.51 97.50 +601332.60 5679681.94 97.50 +601332.71 5680177.98 97.50 +601332.78 5681162.37 97.50 +601332.79 5681193.19 97.50 +601332.92 5679810.12 97.50 +601332.93 5678921.16 97.50 +601333.07 5676547.86 101.25 +601333.09 5679097.51 97.50 +601333.17 5680703.29 97.50 +601333.28 5680105.37 97.50 +601333.32 5680923.06 97.50 +601333.33 5680287.12 97.50 +601333.43 5677250.87 97.50 +601333.83 5679610.05 97.50 +601334.09 5678369.71 97.50 +601334.31 5680230.66 97.50 +601334.43 5680117.06 96.25 +601334.61 5680826.32 96.25 +601334.69 5678960.58 97.50 +601334.77 5681116.67 97.50 +601334.98 5681129.31 97.50 +601335.01 5679581.17 97.50 +601335.10 5680786.43 97.50 +601335.24 5680402.82 96.25 +601335.31 5680123.31 97.50 +601335.47 5680378.93 96.25 +601335.63 5680861.07 97.50 +601335.73 5681172.59 97.50 +601335.86 5678838.80 97.50 +601335.91 5679688.20 97.50 +601336.03 5681151.96 97.50 +601336.04 5677105.51 97.50 +601336.19 5677062.61 97.50 +601336.29 5680531.00 96.25 +601336.85 5679672.94 97.50 +601337.11 5676663.28 100.00 +601337.22 5679736.88 97.50 +601337.38 5680434.54 96.25 +601337.46 5680293.44 97.50 +601337.67 5680910.20 97.50 +601337.68 5679105.28 97.50 +601337.78 5680800.34 96.25 +601337.79 5680835.66 96.25 +601337.87 5680165.79 97.50 +601337.92 5680508.20 96.25 +601338.33 5677305.74 97.50 +601338.46 5680337.82 97.50 +601338.88 5680111.36 96.25 +601338.95 5680517.69 96.25 +601339.12 5680279.61 97.50 +601339.16 5681164.61 97.50 +601339.55 5678448.07 97.50 +601339.55 5680746.53 97.50 +601339.62 5679092.54 97.50 +601339.71 5680543.49 96.25 +601339.99 5679617.87 97.50 +601339.99 5681124.42 97.50 +601340.56 5681156.44 97.50 +601340.65 5680387.48 96.25 +601340.76 5680220.80 96.25 +601340.77 5680794.66 97.50 +601341.19 5678851.14 97.50 +601341.35 5681188.06 97.50 +601341.47 5679588.71 97.50 +601341.53 5680727.46 97.50 +601341.76 5680177.44 97.50 +601342.00 5680441.24 96.25 +601342.16 5679728.21 97.50 +601342.19 5680927.65 97.50 +601342.31 5676790.36 98.75 +601342.32 5679664.67 97.50 +601342.51 5676544.58 101.25 +601342.52 5680706.69 97.50 +601342.82 5678920.36 97.50 +601342.83 5679811.29 97.50 +601342.94 5680225.77 97.50 +601343.12 5677055.59 97.50 +601343.15 5677098.52 97.50 +601343.16 5680867.65 97.50 +601343.25 5680105.55 97.50 +601343.33 5677251.89 97.50 +601343.52 5680408.27 96.25 +601343.71 5679041.83 97.50 +601343.72 5680537.51 96.25 +601343.81 5679683.30 97.50 +601343.91 5678368.87 97.50 +601344.22 5680345.89 97.50 +601344.24 5680842.70 96.25 +601344.51 5680821.42 96.25 +601344.63 5678960.82 97.50 +601344.81 5681168.47 97.50 +601344.84 5680120.82 97.50 +601344.89 5681147.33 97.50 +601345.15 5680806.94 96.25 +601345.21 5679033.08 97.50 +601345.36 5678835.82 97.50 +601345.60 5680374.66 97.50 +601345.81 5679110.70 97.50 +601345.83 5680169.75 97.50 +601345.91 5680272.93 97.50 +601346.14 5679625.69 97.50 +601346.14 5680513.76 96.25 +601346.15 5680524.54 96.25 +601346.16 5677299.57 97.50 +601346.22 5679926.54 97.50 +601346.60 5680365.00 97.50 +601346.82 5680293.34 97.50 +601346.90 5679917.12 97.50 +601346.92 5680355.41 97.50 +601346.95 5679935.73 97.50 +601347.03 5680913.72 97.50 +601347.07 5676662.64 100.00 +601347.09 5680830.95 96.25 +601347.14 5680384.46 97.50 +601347.28 5680435.37 96.25 +601347.53 5680549.54 96.25 +601347.63 5679719.87 97.50 +601347.76 5679907.71 97.50 +601348.17 5679656.62 97.50 +601348.28 5680749.97 97.50 +601348.46 5680800.96 97.50 +601348.51 5677047.20 97.50 +601348.56 5681161.25 97.50 +601348.57 5679595.69 97.50 +601348.58 5679088.40 97.50 +601348.65 5680393.45 96.25 +601349.31 5680099.33 97.50 +601349.33 5680927.35 96.25 +601349.41 5681151.77 97.50 +601349.44 5678447.02 97.50 +601349.83 5679675.44 97.50 +601349.91 5680814.42 96.25 +601350.19 5677091.47 97.50 +601350.29 5680219.86 96.25 +601350.30 5680840.32 96.25 +601350.41 5681183.90 97.50 +601350.41 5679046.69 97.50 +601350.68 5680874.22 97.50 +601350.84 5678848.73 97.50 +601350.95 5680932.47 97.50 +601351.05 5680544.14 96.25 +601351.34 5679943.89 97.50 +601351.38 5680729.13 97.50 +601351.47 5679025.47 97.50 +601351.73 5680710.57 97.50 +601351.86 5676541.04 101.25 +601351.90 5680442.09 96.25 +601351.96 5679899.28 97.50 +601352.15 5676788.85 98.75 +601352.15 5680923.02 96.25 +601352.17 5680089.87 97.50 +601352.32 5679811.06 97.50 +601352.65 5678921.33 97.50 +601352.80 5680225.64 97.50 +601352.96 5677254.49 97.50 +601352.99 5680411.49 96.25 +601353.17 5679632.70 97.50 +601353.21 5677809.90 97.50 +601353.21 5681141.85 97.50 +601353.45 5680267.13 97.50 +601353.54 5678366.77 97.50 +601353.54 5680123.31 97.50 +601353.60 5677292.97 97.50 +601353.86 5677038.79 97.50 +601353.89 5681164.34 97.50 +601353.93 5680530.68 96.25 +601354.01 5679648.56 97.50 +601354.09 5679038.25 97.25 +601354.13 5680519.65 96.25 +601354.36 5677819.14 97.50 +601354.43 5680080.22 97.50 +601354.53 5678961.84 97.50 +601354.80 5678832.69 97.50 +601354.98 5680288.42 97.50 +601355.24 5679715.07 97.50 +601355.35 5680555.60 96.25 +601355.37 5680389.38 97.50 +601355.44 5679081.18 97.50 +601355.56 5679112.70 97.50 +601355.66 5679602.66 97.50 +601355.81 5680918.51 97.50 +601356.09 5680249.81 97.50 +601356.12 5677801.00 97.50 +601356.52 5680806.86 97.50 +601356.96 5679925.58 97.25 +601356.96 5679668.50 97.50 +601356.98 5680103.06 97.50 +601357.04 5676661.93 100.00 +601357.19 5680436.19 96.25 +601357.45 5681156.68 97.50 +601357.51 5677084.71 97.50 +601357.53 5680259.21 97.50 +601357.54 5680241.17 97.50 +601357.66 5680112.69 97.50 +601357.69 5680396.50 96.25 +601358.03 5680932.10 96.25 +601358.13 5680749.54 97.50 +601358.23 5680880.78 97.50 +601358.25 5681147.11 97.50 +601358.37 5680093.19 97.50 +601358.52 5678689.04 97.50 +601358.58 5679767.55 97.50 +601358.59 5678679.25 97.50 +601358.65 5679031.44 97.25 +601358.68 5679639.78 97.50 +601358.72 5680550.38 96.25 +601358.98 5677030.25 97.50 +601359.29 5678445.64 97.50 +601359.40 5679757.71 97.50 +601359.55 5681179.91 97.50 +601359.65 5680937.40 97.50 +601359.68 5679947.48 97.50 +601359.76 5679804.49 97.50 +601359.86 5680221.71 96.25 +601359.91 5680167.77 97.50 +601359.95 5679897.49 97.50 +601360.17 5680130.56 97.50 +601360.23 5678669.44 97.50 +601360.27 5679611.48 97.50 +601360.30 5679047.02 97.50 +601360.34 5678845.82 97.50 +601360.34 5680074.42 97.50 +601360.43 5678698.80 97.50 +601360.43 5679021.13 97.50 +601360.44 5677260.51 97.50 +601360.58 5677285.86 97.50 +601360.71 5680714.96 97.50 +601361.10 5676537.23 101.25 +601361.31 5680926.22 96.25 +601361.31 5680729.26 97.50 +601361.33 5677824.53 97.50 +601361.46 5680204.64 97.50 +601361.66 5680158.15 97.50 +601361.66 5680177.55 97.50 +601361.68 5681136.62 97.50 +601361.70 5680443.68 96.25 +601361.78 5677793.58 97.50 +601361.80 5680525.95 96.25 +601361.98 5676787.17 98.75 +601362.06 5680536.39 96.25 +601362.07 5680083.96 97.50 +601362.26 5678923.91 97.50 +601362.40 5678659.73 97.50 +601362.58 5679074.31 97.50 +601362.63 5680226.99 97.50 +601362.83 5680412.89 96.25 +601362.95 5679040.80 97.25 +601362.98 5681160.21 97.50 +601363.17 5680561.66 96.25 +601363.24 5680283.65 97.50 +601363.28 5678366.34 97.50 +601363.38 5679748.62 97.50 +601363.51 5680120.64 97.50 +601363.68 5679772.74 97.50 +601363.83 5679689.93 97.50 +601363.94 5678707.99 97.50 +601364.04 5677021.67 97.50 +601364.06 5678964.48 97.50 +601364.09 5679661.56 97.50 +601364.22 5678829.49 97.50 +601364.55 5680148.63 97.50 +601364.63 5680923.21 97.50 +601364.63 5680187.04 97.50 +601364.67 5680391.38 97.50 +601364.67 5678650.05 97.50 +601364.71 5677077.84 97.50 +601364.72 5679717.46 97.50 +601364.78 5679904.72 97.50 +601364.88 5680139.24 97.50 +601364.88 5679620.30 97.50 +601365.23 5679796.14 97.50 +601365.31 5679114.71 97.50 +601365.54 5680811.16 97.50 +601365.80 5680887.31 97.50 +601365.84 5680160.04 97.50 +601365.88 5677277.67 97.50 +601365.99 5680196.77 97.50 +601366.04 5680722.90 97.50 +601366.35 5681152.12 97.50 +601366.63 5680238.61 97.50 +601366.67 5680169.69 97.50 +601366.67 5677268.18 97.50 +601366.72 5679942.02 97.50 +601366.73 5680556.17 96.25 +601366.76 5678676.34 97.25 +601366.76 5679913.93 97.50 +601366.80 5676659.80 100.00 +601366.85 5678685.76 97.25 +601366.88 5680438.37 96.25 +601367.04 5680936.18 96.25 +601367.19 5681142.65 97.50 +601367.45 5677012.30 97.50 +601367.63 5679923.34 97.50 +601367.63 5680396.61 96.25 +601367.68 5680748.67 97.50 +601367.95 5679028.40 97.25 +601368.07 5680179.25 97.50 +601368.47 5680942.03 97.50 +601368.51 5679932.74 97.50 +601368.53 5678701.82 97.25 +601368.69 5681175.91 97.50 +601368.94 5678666.65 97.25 +601369.14 5679695.85 97.50 +601369.14 5678444.29 97.50 +601369.21 5677787.57 97.50 +601369.55 5680542.91 96.25 +601369.68 5678842.38 97.50 +601369.70 5679741.40 97.50 +601369.88 5680151.64 97.50 +601369.98 5679653.58 97.50 +601370.03 5680531.53 96.25 +601370.05 5679019.02 97.50 +601370.15 5679045.59 97.50 +601370.21 5679616.01 97.50 +601370.29 5680828.71 96.25 +601370.36 5680930.25 96.25 +601370.40 5678715.13 97.50 +601370.41 5676533.59 101.25 +601370.57 5680506.56 96.25 +601370.64 5681132.20 97.50 +601370.82 5680127.42 97.50 +601370.87 5677002.94 97.50 +601370.88 5677825.06 97.50 +601371.13 5679684.71 97.50 +601371.20 5680446.25 96.25 +601371.21 5680567.42 96.25 +601371.36 5677070.42 97.50 +601371.47 5680278.83 97.50 +601371.56 5679788.50 97.50 +601371.69 5680258.71 96.00 +601371.83 5678926.60 97.50 +601371.89 5676787.33 98.75 +601371.93 5679070.91 97.50 +601372.14 5681156.28 97.50 +601372.43 5680415.11 96.25 +601372.43 5680465.97 96.25 +601372.61 5679039.48 97.25 +601372.67 5679768.39 97.50 +601372.77 5678644.67 97.50 +601373.04 5678968.65 97.50 +601373.08 5678709.24 97.25 +601373.10 5678367.23 97.50 +601373.16 5678693.25 97.25 +601373.37 5680893.84 97.50 +601373.50 5680927.81 97.50 +601373.53 5678825.96 97.50 +601373.92 5680185.49 97.50 +601374.01 5680388.05 97.50 +601374.07 5680502.96 96.25 +601374.45 5678659.19 97.25 +601374.59 5679716.55 97.50 +601374.59 5679088.99 97.50 +601374.74 5680561.96 96.25 +601374.86 5676993.89 97.50 +601375.04 5680724.31 97.50 +601375.06 5679116.74 97.50 +601375.16 5680813.89 97.50 +601375.27 5681147.62 97.50 +601375.30 5680136.33 97.50 +601375.40 5680173.38 97.25 +601375.55 5679645.33 97.50 +601375.60 5680474.67 96.25 +601375.77 5679607.76 97.50 +601376.10 5680238.48 97.50 +601376.21 5680441.59 96.25 +601376.23 5681138.38 97.50 +601376.30 5680939.70 96.25 +601376.35 5680514.44 96.25 +601376.44 5680835.35 96.25 +601376.51 5680715.40 97.50 +601376.60 5677062.05 97.50 +601376.63 5678691.06 97.25 +601376.68 5676658.60 100.00 +601376.71 5680752.59 97.50 +601376.88 5680538.68 96.25 +601376.90 5677781.87 97.50 +601376.92 5680392.93 96.25 +601377.27 5679025.44 97.25 +601377.38 5680826.80 96.25 +601377.74 5680547.47 96.25 +601377.83 5681171.91 97.50 +601378.06 5680944.85 97.50 +601378.26 5679736.28 97.50 +601378.26 5680147.03 97.50 +601378.51 5679079.84 97.50 +601378.71 5679097.96 97.50 +601378.80 5679781.64 97.50 +601378.85 5679696.45 97.50 +601379.00 5678838.90 97.50 +601379.01 5680273.10 97.50 +601379.04 5678443.34 97.50 +601379.27 5680573.15 96.25 +601379.54 5680933.94 96.25 +601379.59 5679761.34 97.50 +601379.70 5680733.16 97.50 +601379.70 5681127.98 97.50 +601379.77 5678699.27 97.25 +601379.77 5676530.08 101.25 +601379.83 5678681.69 97.25 +601379.84 5680451.16 96.25 +601379.93 5679017.77 97.50 +601379.95 5677822.36 97.50 +601380.00 5679044.17 97.50 +601380.04 5678713.85 97.50 +601380.59 5678663.09 97.25 +601380.60 5679682.48 97.50 +601380.68 5678931.17 97.50 +601380.70 5680464.43 96.25 +601380.74 5676985.84 97.50 +601380.94 5677053.08 97.50 +601381.12 5679637.09 97.50 +601381.29 5679067.51 97.50 +601381.33 5679599.50 97.50 +601381.38 5681152.52 97.50 +601381.46 5678973.96 97.50 +601381.47 5680419.35 96.25 +601381.57 5680160.33 97.50 +601381.75 5680899.21 97.50 +601381.84 5676788.05 98.75 +601381.93 5680508.79 96.25 +601382.10 5678646.08 97.50 +601382.17 5679037.41 97.25 +601382.47 5678821.61 97.50 +601382.49 5680568.10 96.25 +601382.63 5678707.60 97.25 +601382.67 5680834.88 96.00 +601382.76 5678672.58 97.25 +601382.78 5680141.75 97.50 +601382.95 5678367.61 97.50 +601383.06 5680930.62 97.50 +601383.27 5680384.50 97.50 +601383.41 5680184.23 97.50 +601383.45 5680480.55 96.25 +601383.71 5680520.95 96.25 +601384.20 5681143.13 97.50 +601384.29 5679714.28 97.50 +601384.60 5679119.46 97.50 +601384.65 5677776.28 97.50 +601384.68 5680168.72 97.50 +601384.69 5680758.58 97.50 +601384.80 5680709.88 97.50 +601384.84 5680813.29 97.50 +601384.85 5679773.88 97.50 +601385.00 5678695.07 97.50 +601385.05 5680839.73 96.25 +601385.13 5680741.37 97.50 +601385.16 5680241.16 97.50 +601385.22 5680445.77 96.25 +601385.24 5681134.04 97.50 +601385.24 5679073.84 97.50 +601385.27 5680152.44 97.50 +601385.40 5677044.17 97.50 +601385.42 5680266.03 97.50 +601385.62 5678688.65 97.50 +601385.73 5680942.73 96.25 +601385.82 5680831.47 96.25 +601386.21 5680389.25 96.25 +601386.35 5679764.60 97.50 +601386.66 5676658.07 100.00 +601386.68 5679628.84 97.50 +601386.96 5681167.89 97.50 +601386.99 5679024.33 97.25 +601387.04 5679591.36 97.50 +601387.18 5679731.83 97.50 +601387.33 5680578.88 96.25 +601387.41 5677034.48 97.50 +601387.49 5676978.64 97.50 +601387.61 5680947.80 97.50 +601387.87 5679100.08 97.50 +601388.04 5678834.75 97.50 +601388.04 5680456.60 96.25 +601388.27 5680470.01 96.25 +601388.50 5680177.02 97.50 +601388.58 5679696.24 97.50 +601388.77 5678444.63 97.50 +601388.87 5680399.83 96.00 +601388.90 5681124.05 97.50 +601388.93 5677819.08 97.50 +601389.03 5680936.78 96.25 +601389.05 5678980.30 97.50 +601389.22 5676526.82 101.25 +601389.36 5677024.72 97.50 +601389.42 5677797.67 97.25 +601389.44 5678711.10 97.50 +601389.46 5678699.89 97.25 +601389.52 5678935.74 97.50 +601389.58 5678652.21 97.50 +601389.75 5679042.36 97.50 +601389.80 5679016.51 97.50 +601389.81 5680257.68 97.50 +601389.90 5680514.49 96.25 +601389.97 5679679.84 97.50 +601390.10 5678679.97 97.50 +601390.49 5680904.07 97.50 +601390.52 5680423.59 96.25 +601390.53 5680248.41 97.50 +601390.54 5680573.81 96.25 +601390.63 5681148.76 97.50 +601390.91 5679065.05 97.50 +601390.92 5680486.91 96.25 +601391.26 5680527.21 96.25 +601391.61 5676789.82 98.75 +601391.64 5680139.70 97.50 +601391.69 5679035.15 97.25 +601391.77 5680483.02 96.00 +601391.87 5678843.23 97.50 +601392.17 5680520.45 96.00 +601392.26 5677015.21 97.50 +601392.38 5678370.25 97.50 +601392.41 5678706.26 97.25 +601392.45 5679620.73 97.50 +601392.49 5680380.82 97.50 +601392.63 5680933.50 97.50 +601392.81 5677771.31 97.50 +601392.97 5679583.37 97.50 +601393.13 5681138.63 97.50 +601393.36 5678660.90 97.50 +601393.47 5680808.42 97.50 +601393.48 5680762.47 97.50 +601393.52 5679123.54 97.50 +601393.61 5678670.66 97.50 +601393.62 5680742.27 97.50 +601393.66 5679716.62 97.50 +601393.87 5680843.72 96.25 +601393.93 5680836.76 96.25 +601394.22 5681129.64 97.50 +601394.36 5680706.95 97.50 +601394.37 5680395.34 96.00 +601394.48 5680449.38 96.25 +601394.55 5680464.11 96.25 +601394.67 5679725.76 97.50 +601394.74 5680477.39 96.25 +601394.78 5679071.01 97.50 +601394.92 5678694.40 97.50 +601395.10 5680155.97 97.50 +601395.20 5680945.65 96.25 +601395.30 5680584.73 96.25 +601395.39 5676972.56 97.50 +601395.50 5680385.56 96.25 +601395.70 5678851.71 97.50 +601396.09 5681163.87 97.50 +601396.09 5678987.34 97.50 +601396.23 5680202.29 97.50 +601396.51 5679687.89 97.30 +601396.53 5677006.22 97.50 +601396.64 5676658.20 100.00 +601396.72 5679023.23 97.25 +601396.76 5680951.82 97.50 +601397.63 5679101.81 97.50 +601397.78 5680493.91 96.25 +601397.90 5677815.75 97.50 +601397.93 5678448.15 97.50 +601397.99 5680400.12 96.00 +601398.09 5681120.13 97.50 +601398.25 5679695.19 97.50 +601398.30 5680519.58 96.25 +601398.49 5679612.83 97.50 +601398.53 5680939.61 96.25 +601398.58 5678939.80 97.50 +601398.61 5680132.64 97.50 +601398.65 5680489.75 96.00 +601398.89 5679575.37 97.50 +601398.92 5676524.49 101.25 +601399.06 5679038.83 97.50 +601399.07 5680525.44 96.00 +601399.08 5680578.81 96.25 +601399.08 5680211.43 97.50 +601399.22 5680147.08 97.50 +601399.31 5680908.75 97.50 +601399.34 5680532.80 96.25 +601399.38 5678711.53 97.50 +601399.39 5678699.56 97.25 +601399.41 5679677.52 97.50 +601399.53 5680427.91 96.25 +601399.53 5678860.19 97.50 +601399.63 5679131.40 97.50 +601399.66 5679015.18 97.50 +601399.75 5681144.72 97.50 +601400.37 5680162.74 97.50 +601400.42 5678375.31 97.50 +601400.57 5680942.49 96.00 +601400.65 5679062.99 97.50 +601400.86 5680801.78 97.50 +601401.05 5680484.90 96.25 +601401.21 5679032.90 97.25 +601401.26 5680471.44 96.25 +601401.30 5680758.30 97.50 +601401.36 5676791.80 98.75 +601401.53 5680740.42 97.50 +601401.64 5680377.00 97.50 +601401.66 5677767.87 97.50 +601401.87 5681133.78 97.50 +601402.08 5680195.77 97.50 +601402.08 5676997.94 97.50 +601402.18 5678706.94 97.25 +601402.18 5680841.85 96.25 +601402.18 5680936.46 97.50 +601402.38 5679026.28 97.00 +601402.50 5680848.12 96.25 +601402.72 5677523.63 98.75 +601403.19 5681125.25 97.50 +601403.21 5680590.67 96.25 +601403.28 5676966.48 97.50 +601403.37 5678868.67 97.50 +601403.47 5680393.83 96.00 +601403.77 5680452.92 96.25 +601404.06 5680704.60 97.50 +601404.13 5678993.12 97.50 +601404.33 5680501.21 96.25 +601404.47 5679567.15 97.50 +601404.53 5679604.92 97.50 +601404.53 5680124.65 97.50 +601404.64 5679069.68 97.50 +601404.67 5680948.57 96.25 +601404.84 5678694.03 97.50 +601404.93 5680749.22 97.50 +601404.96 5677533.24 98.75 +601405.21 5681159.84 97.50 +601405.29 5680383.88 96.25 +601405.52 5680496.48 96.00 +601405.74 5679139.25 97.50 +601405.89 5680894.38 97.50 +601405.96 5680530.43 96.00 +601406.03 5680139.82 97.50 +601406.12 5678453.78 97.50 +601406.40 5680954.29 97.50 +601406.44 5679022.12 97.25 +601406.45 5680525.06 96.25 +601406.60 5677811.83 97.50 +601406.61 5676658.75 100.00 +601406.73 5678382.88 97.50 +601407.07 5680584.59 96.25 +601407.17 5680885.95 97.50 +601407.18 5679104.63 97.50 +601407.20 5678877.15 97.50 +601407.24 5680400.51 96.00 +601407.28 5681116.19 97.50 +601407.35 5680492.43 96.25 +601407.56 5679692.47 97.50 +601407.64 5680538.05 96.25 +601407.68 5677515.22 98.75 +601408.04 5678942.45 97.50 +601408.10 5680478.66 96.25 +601408.28 5678316.57 97.50 +601408.35 5680940.89 96.25 +601408.41 5680795.47 97.50 +601408.43 5680432.45 96.25 +601408.56 5678306.83 97.50 +601408.59 5680912.48 97.50 +601408.61 5678713.43 97.50 +601408.72 5680213.92 97.50 +601408.76 5676990.63 97.50 +601408.81 5676523.73 101.25 +601408.83 5680944.88 96.00 +601408.87 5681140.68 97.50 +601408.87 5679037.20 97.50 +601408.89 5680470.82 96.25 +601408.95 5679677.66 97.50 +601409.03 5679011.82 97.50 +601409.05 5678700.81 97.25 +601409.31 5679558.46 97.50 +601409.46 5680189.72 97.50 +601409.75 5680165.89 97.50 +601410.03 5680463.02 96.25 +601410.27 5679060.46 97.50 +601410.40 5678297.11 97.50 +601410.49 5681128.72 97.50 +601410.53 5679596.98 97.50 +601410.71 5678885.76 97.50 +601410.74 5679030.66 97.25 +601410.79 5680373.25 97.50 +601410.89 5680508.51 96.25 +601410.98 5680845.89 96.25 +601411.11 5680596.62 96.25 +601411.18 5677768.11 97.50 +601411.20 5676793.40 98.75 +601411.24 5678711.02 97.25 +601411.30 5680123.16 97.50 +601411.32 5680852.11 96.25 +601411.47 5679548.84 97.50 +601411.59 5677540.31 98.75 +601411.87 5679147.10 97.50 +601412.09 5680937.77 97.50 +601412.27 5676962.17 97.50 +601412.32 5680564.97 96.25 +601412.44 5680901.59 97.50 +601412.45 5680503.15 96.00 +601412.52 5681121.69 97.50 +601412.67 5678998.11 97.50 +601412.73 5680393.43 96.00 +601412.79 5680132.79 97.50 +601412.87 5677506.82 98.75 +601412.87 5679685.32 97.50 +601412.89 5678287.53 97.50 +601412.93 5680535.30 96.00 +601413.08 5680456.39 96.25 +601413.15 5678460.76 97.50 +601413.53 5678323.72 97.50 +601413.81 5680499.79 96.25 +601413.83 5678389.70 97.50 +601413.94 5680703.12 97.50 +601413.97 5678721.81 97.50 +601414.17 5678894.40 97.50 +601414.21 5680574.14 96.25 +601414.24 5680762.40 97.50 +601414.27 5680951.00 96.25 +601414.31 5680486.37 96.25 +601414.34 5681155.82 97.50 +601414.51 5679068.36 97.50 +601414.55 5680530.63 96.25 +601414.67 5678695.52 97.50 +601414.77 5680590.80 96.25 +601414.91 5676982.91 97.50 +601414.99 5677807.24 97.50 +601415.03 5680181.44 97.50 +601415.22 5680382.78 96.25 +601415.59 5678310.78 97.25 +601415.95 5680543.30 96.25 +601416.09 5679020.52 97.25 +601416.25 5680955.94 97.50 +601416.29 5678278.27 97.50 +601416.31 5679006.96 97.50 +601416.41 5680477.32 96.25 +601416.47 5681112.25 97.50 +601416.48 5679589.01 97.50 +601416.49 5676659.86 100.00 +601416.50 5680400.45 96.00 +601416.61 5678707.06 97.25 +601416.72 5680885.91 97.50 +601416.72 5679107.45 97.50 +601416.81 5680101.45 97.50 +601416.91 5680171.95 97.50 +601417.18 5680946.85 96.00 +601417.33 5680436.98 96.25 +601417.44 5679540.87 97.50 +601417.61 5680791.60 97.50 +601417.70 5678940.06 97.50 +601417.73 5677498.23 98.75 +601417.86 5680916.21 97.50 +601417.99 5678718.17 97.25 +601417.99 5681136.64 97.50 +601418.02 5678902.85 97.50 +601418.10 5680942.62 96.25 +601418.21 5680466.88 96.25 +601418.25 5680514.99 96.25 +601418.32 5678302.10 97.25 +601418.66 5679035.43 97.50 +601418.67 5680214.28 97.50 +601418.78 5676524.42 101.25 +601419.00 5680602.59 96.25 +601419.31 5679153.57 97.50 +601419.33 5680111.10 97.50 +601419.50 5681124.41 97.50 +601419.60 5680509.58 96.00 +601419.62 5680768.58 97.50 +601419.80 5679057.58 97.50 +601419.86 5677772.13 97.50 +601419.88 5678468.09 97.50 +601419.96 5678318.70 97.50 +601420.00 5678729.72 97.50 +601420.08 5680539.91 96.00 +601420.11 5676965.30 97.50 +601420.12 5680494.42 96.25 +601420.21 5676975.03 97.50 +601420.27 5680855.80 96.25 +601420.28 5679028.49 97.25 +601420.29 5680848.50 96.25 +601420.40 5680374.82 97.50 +601420.72 5680450.97 96.25 +601420.82 5678269.61 97.50 +601420.98 5680906.54 97.50 +601420.99 5677542.69 98.75 +601421.00 5679531.82 97.50 +601421.01 5676795.20 98.75 +601421.01 5680506.46 96.25 +601421.04 5678293.41 97.25 +601421.12 5680568.69 96.25 +601421.14 5678396.32 97.50 +601421.19 5680757.40 97.50 +601421.51 5680019.82 97.50 +601421.61 5680461.39 96.25 +601421.86 5680393.96 96.00 +601422.00 5680939.04 97.50 +601422.01 5681118.57 97.50 +601422.07 5680120.70 97.50 +601422.20 5680009.94 97.50 +601422.25 5680579.78 96.25 +601422.28 5679580.95 97.50 +601422.44 5678715.07 97.25 +601422.56 5678910.97 97.50 +601422.58 5680536.28 96.25 +601422.89 5677801.92 97.50 +601422.95 5678701.03 97.50 +601423.02 5680596.19 96.25 +601423.06 5679522.08 97.50 +601423.24 5678309.38 97.50 +601423.26 5680000.04 97.50 +601423.31 5681151.45 97.50 +601423.49 5677490.24 98.75 +601423.57 5680250.35 97.50 +601423.87 5678726.15 97.25 +601423.89 5680702.18 97.50 +601424.05 5680029.26 97.50 +601424.12 5680950.79 96.25 +601424.18 5678284.88 97.25 +601424.24 5679066.27 97.50 +601424.25 5680548.55 96.25 +601424.30 5680620.24 97.50 +601424.38 5680458.62 96.25 +601424.83 5680130.29 97.50 +601424.88 5680482.48 96.25 +601424.90 5680385.13 96.25 +601425.00 5680730.19 96.25 +601425.11 5680259.39 97.50 +601425.22 5679017.23 97.25 +601425.59 5679571.57 97.50 +601425.59 5678476.21 97.50 +601425.66 5681108.32 97.50 +601425.67 5680399.16 96.00 +601425.73 5680947.75 96.00 +601425.75 5680521.33 96.25 +601425.92 5680442.00 96.25 +601426.05 5678737.61 97.50 +601426.05 5676662.74 100.00 +601426.10 5680469.30 96.25 +601426.20 5680956.89 97.50 +601426.27 5679110.27 97.50 +601426.28 5678299.97 97.50 +601426.57 5679512.80 97.50 +601426.63 5680887.17 97.50 +601426.81 5680515.95 96.00 +601426.94 5677778.44 97.50 +601427.06 5678936.69 97.50 +601427.07 5679051.16 97.50 +601427.10 5678919.09 97.50 +601427.11 5680578.09 96.00 +601427.16 5680788.64 97.50 +601427.23 5680544.52 96.00 +601427.26 5680501.33 96.25 +601427.27 5680919.55 97.50 +601427.41 5679159.35 97.50 +601427.43 5680607.69 96.25 +601427.47 5681133.75 97.50 +601427.59 5680139.87 97.50 +601427.84 5680944.07 96.25 +601427.84 5678276.55 97.25 +601427.85 5680629.27 97.50 +601428.03 5678262.84 97.50 +601428.20 5680567.21 97.50 +601428.21 5680513.13 96.25 +601428.29 5679035.45 97.50 +601428.42 5680212.14 97.50 +601428.47 5680723.81 96.25 +601428.63 5681120.33 97.50 +601428.68 5676525.51 101.25 +601428.87 5678402.41 97.50 +601428.93 5680379.88 97.50 +601429.02 5679562.24 97.50 +601429.06 5678927.60 97.50 +601429.17 5677794.99 97.50 +601429.21 5680574.44 96.25 +601429.35 5678722.21 97.25 +601429.51 5680149.66 97.50 +601429.52 5680851.40 96.25 +601429.55 5680769.71 97.50 +601429.56 5677482.45 98.75 +601429.66 5680857.38 96.25 +601429.67 5680452.67 96.25 +601429.77 5678708.04 97.50 +601429.82 5679026.32 97.25 +601429.97 5680268.03 97.50 +601430.15 5678733.77 97.25 +601430.16 5678290.87 97.50 +601430.23 5680910.33 97.50 +601430.35 5678484.82 97.50 +601430.61 5680541.94 96.25 +601430.69 5680760.21 97.50 +601430.79 5677542.61 98.75 +601430.89 5676795.84 98.75 +601431.10 5680584.26 96.25 +601431.11 5680458.80 96.00 +601431.24 5681114.83 97.50 +601431.35 5680159.47 97.50 +601431.60 5679504.68 97.50 +601431.62 5680601.08 96.25 +601431.91 5680940.37 97.50 +601432.03 5680464.60 96.25 +601432.04 5679043.19 97.50 +601432.09 5677786.36 97.50 +601432.17 5681146.88 97.50 +601432.36 5680249.11 97.50 +601432.36 5680441.71 96.00 +601432.52 5680553.84 96.25 +601432.63 5678745.07 97.50 +601432.76 5678494.47 97.50 +601432.79 5680494.57 96.00 +601433.03 5677259.11 97.50 +601433.12 5680027.27 97.50 +601433.38 5680527.48 96.25 +601433.50 5678269.48 97.25 +601433.51 5679553.35 97.50 +601433.51 5680637.50 97.50 +601433.57 5680448.43 96.25 +601433.64 5680487.15 96.25 +601433.70 5680620.35 97.50 +601433.77 5677894.40 98.75 +601433.83 5680701.09 97.50 +601433.97 5679064.17 97.50 +601434.00 5677884.73 98.75 +601434.01 5680951.31 96.25 +601434.09 5679013.09 97.25 +601434.15 5680732.07 96.25 +601434.23 5680522.05 96.00 +601434.31 5680948.44 96.00 +601434.38 5680549.12 96.00 +601434.45 5680432.46 96.00 +601434.53 5678282.04 97.50 +601434.53 5680276.84 97.50 +601434.56 5680387.68 96.25 +601434.64 5680168.85 97.50 +601434.67 5680565.02 97.50 +601434.78 5680573.41 97.50 +601435.17 5678504.12 97.50 +601435.23 5680507.03 96.25 +601435.25 5681106.03 97.50 +601435.26 5679114.44 97.50 +601435.46 5678716.20 97.50 +601435.62 5676665.61 100.00 +601435.89 5680783.90 97.50 +601436.09 5678729.50 97.25 +601436.13 5678257.17 97.50 +601436.15 5680206.21 97.50 +601436.16 5680957.72 97.50 +601436.20 5680518.82 96.25 +601436.21 5677903.48 98.75 +601436.21 5680612.23 96.25 +601436.44 5680889.11 97.50 +601436.57 5677875.32 98.75 +601436.63 5678408.40 97.50 +601436.88 5680922.29 97.50 +601436.92 5679162.18 97.50 +601437.04 5677476.46 98.75 +601437.13 5678740.85 97.25 +601437.26 5681131.83 97.50 +601437.26 5680458.50 96.25 +601437.38 5678513.82 97.50 +601437.43 5680775.10 97.50 +601437.47 5680579.95 96.25 +601437.59 5680945.31 96.25 +601437.60 5680720.84 96.25 +601437.75 5681116.25 97.50 +601437.87 5680571.52 97.75 +601437.89 5680464.40 96.00 +601437.99 5679544.47 97.50 +601438.16 5680382.71 97.50 +601438.22 5676528.48 101.25 +601438.43 5680178.08 97.50 +601438.54 5677265.36 97.50 +601438.66 5680547.56 96.25 +601438.88 5677252.14 97.50 +601439.05 5678523.62 97.50 +601439.21 5680285.58 97.50 +601439.31 5679023.97 97.25 +601439.34 5680645.61 97.50 +601439.43 5678262.58 97.25 +601439.65 5680470.61 96.25 +601439.73 5678751.86 97.50 +601439.85 5677866.19 98.75 +601439.89 5680912.83 97.50 +601439.92 5680764.07 97.50 +601439.93 5681109.89 97.50 +601440.00 5680588.66 96.25 +601440.31 5679499.86 97.50 +601440.40 5680605.62 96.25 +601440.40 5678274.07 97.50 +601440.43 5680197.48 97.50 +601440.59 5680436.30 96.00 +601440.63 5677541.76 98.75 +601440.63 5680187.74 97.50 +601440.67 5680499.83 96.00 +601440.72 5678533.43 97.50 +601440.79 5680559.16 96.25 +601440.84 5676795.30 98.75 +601440.94 5680424.97 96.00 +601441.04 5681142.30 97.50 +601441.55 5680022.11 97.50 +601441.58 5680532.87 96.25 +601441.58 5680252.53 97.50 +601441.69 5680454.23 96.25 +601441.84 5680941.49 97.50 +601441.98 5678723.62 97.50 +601442.07 5680527.62 96.00 +601442.30 5677910.59 98.75 +601442.39 5678543.23 97.50 +601442.54 5678416.29 97.50 +601442.73 5680491.17 96.25 +601442.77 5680949.78 96.00 +601442.92 5680624.01 97.50 +601442.94 5679059.87 97.50 +601443.10 5680654.88 97.50 +601443.10 5679009.56 97.25 +601443.40 5680568.65 97.50 +601443.42 5678736.04 97.25 +601443.46 5679536.19 97.50 +601443.52 5680576.99 97.50 +601443.79 5680700.21 97.50 +601443.84 5680952.49 96.25 +601443.99 5680732.71 96.25 +601444.02 5680390.90 96.25 +601444.02 5679119.16 97.50 +601444.05 5680465.43 96.25 +601444.24 5680524.44 96.25 +601444.25 5680511.22 96.25 +601444.26 5677857.49 98.75 +601444.56 5680617.50 96.25 +601444.63 5680446.66 96.25 +601444.67 5680469.99 96.00 +601444.71 5678747.24 97.25 +601444.93 5680440.19 96.25 +601444.96 5678253.91 97.50 +601445.19 5676668.49 100.00 +601445.26 5680293.43 97.50 +601445.93 5680866.04 97.50 +601446.01 5678552.40 97.50 +601446.03 5677472.37 98.75 +601446.12 5680958.55 97.50 +601446.31 5680834.93 97.50 +601446.32 5680890.11 97.50 +601446.44 5680584.22 96.25 +601446.61 5678266.37 97.50 +601446.66 5681111.73 97.50 +601446.68 5680921.74 97.50 +601446.69 5679164.05 97.50 +601446.72 5680477.26 96.25 +601446.72 5680553.19 96.25 +601446.83 5680664.15 97.50 +601447.04 5681129.85 97.50 +601447.14 5680947.95 96.25 +601447.22 5676532.83 101.25 +601447.33 5677246.98 97.50 +601447.36 5680720.76 96.25 +601447.64 5680429.27 96.00 +601448.04 5680383.50 97.50 +601448.05 5680874.19 97.50 +601448.32 5677266.46 97.50 +601448.49 5678424.15 97.50 +601448.58 5678756.40 97.50 +601448.63 5680015.27 97.50 +601448.65 5679021.05 97.25 +601448.67 5680418.68 96.00 +601448.80 5680504.64 96.00 +601448.96 5680592.96 96.25 +601449.03 5677849.01 98.75 +601449.04 5680564.48 96.25 +601449.20 5680767.28 97.50 +601449.24 5680825.92 97.50 +601449.26 5679528.10 97.50 +601449.26 5680610.02 96.25 +601449.34 5680915.56 97.50 +601449.45 5678730.18 97.50 +601449.64 5680538.44 96.25 +601449.91 5680533.20 96.00 +601450.04 5679498.55 97.50 +601450.05 5677539.40 98.75 +601450.17 5680458.65 96.25 +601450.21 5681138.38 97.50 +601450.23 5680257.39 97.50 +601450.28 5680574.55 97.50 +601450.31 5677505.90 99.00 +601450.46 5678561.30 97.50 +601450.79 5676794.77 98.75 +601451.09 5679054.59 97.50 +601451.09 5680951.97 96.00 +601451.10 5680604.54 96.25 +601451.10 5680945.13 97.50 +601451.14 5679012.82 97.25 +601451.40 5680301.23 97.50 +601451.45 5680475.57 96.00 +601451.57 5680599.39 96.25 +601451.61 5678258.46 97.50 +601451.68 5680628.83 97.50 +601451.71 5680495.38 96.25 +601451.80 5680909.01 97.50 +601451.89 5677912.02 98.75 +601451.96 5678741.11 97.25 +601452.16 5680530.22 96.25 +601452.39 5680470.22 96.25 +601452.40 5679124.54 97.50 +601452.70 5680859.08 97.50 +601452.71 5680623.11 96.25 +601452.85 5680727.27 95.90 +601452.90 5680672.05 97.50 +601452.97 5678752.48 97.25 +601452.98 5680452.15 96.25 +601452.99 5680006.39 97.50 +601453.22 5680515.48 96.25 +601453.38 5680954.99 96.25 +601453.42 5678432.64 97.50 +601453.47 5680839.68 97.50 +601453.75 5680699.42 97.50 +601453.80 5680733.77 96.25 +601453.81 5680110.01 97.50 +601453.86 5680391.87 96.25 +601453.98 5680903.25 97.50 +601454.16 5680483.47 96.25 +601454.50 5680589.74 96.25 +601454.65 5680422.19 96.00 +601454.71 5680442.24 96.25 +601454.75 5677841.11 98.75 +601454.78 5676671.25 100.00 +601455.00 5680558.47 96.25 +601455.16 5678570.06 97.50 +601455.30 5677468.98 98.75 +601455.44 5681106.95 97.50 +601455.77 5679996.85 97.50 +601455.80 5679521.68 97.50 +601455.93 5680960.43 97.50 +601455.93 5677242.06 97.50 +601456.05 5680100.31 97.50 +601456.24 5676537.12 101.25 +601456.31 5680889.70 97.50 +601456.51 5679165.65 97.50 +601456.55 5680412.60 96.00 +601456.59 5680950.90 96.25 +601456.68 5679046.35 97.50 +601456.78 5680819.48 97.50 +601456.78 5681127.71 97.50 +601456.81 5680545.13 96.25 +601457.05 5680570.17 96.25 +601457.15 5680722.04 96.25 +601457.23 5680117.07 97.50 +601457.32 5680871.74 97.50 +601457.41 5680508.58 96.00 +601457.61 5680308.96 97.50 +601457.71 5678760.28 97.50 +601457.93 5680384.38 97.50 +601458.02 5680614.61 96.25 +601458.14 5677265.13 97.50 +601458.14 5680464.48 96.25 +601458.20 5678734.63 97.50 +601458.24 5680481.16 96.00 +601458.29 5680090.61 97.50 +601458.49 5680262.86 97.50 +601458.53 5679147.88 96.25 +601458.92 5679112.83 97.50 +601458.95 5677535.12 98.75 +601458.95 5680765.07 97.50 +601459.29 5680679.73 97.50 +601459.32 5678988.05 97.50 +601459.41 5678440.41 97.50 +601459.43 5681134.59 97.50 +601459.51 5679036.88 97.50 +601459.62 5680501.39 96.25 +601459.64 5680476.53 96.25 +601459.87 5679498.78 97.50 +601460.09 5680536.00 96.25 +601460.11 5680080.82 97.50 +601460.14 5678578.67 97.50 +601460.28 5680633.92 97.50 +601460.34 5680607.22 96.25 +601460.67 5680947.91 97.50 +601460.74 5677833.47 98.75 +601460.75 5676794.23 98.75 +601460.82 5679129.84 97.50 +601460.91 5680628.64 96.25 +601461.07 5680853.71 97.50 +601461.09 5679156.08 96.25 +601461.14 5680910.43 97.50 +601461.14 5678744.74 97.25 +601461.18 5680599.41 96.25 +601461.38 5679027.15 97.50 +601461.63 5677911.74 98.75 +601461.66 5679017.20 97.50 +601461.83 5679991.84 97.50 +601461.86 5680415.36 96.00 +601461.91 5677121.44 97.50 +601461.91 5680489.28 96.25 +601462.18 5680519.79 96.25 +601462.25 5679007.26 97.50 +601462.46 5680835.29 97.50 +601462.53 5680471.49 96.25 +601462.71 5678754.42 97.25 +601462.73 5680727.87 95.90 +601462.80 5680958.05 96.25 +601462.86 5680564.33 96.25 +601462.89 5678997.33 97.50 +601463.12 5680071.46 97.50 +601463.21 5680696.34 97.50 +601463.39 5680317.00 97.50 +601463.56 5680901.66 97.50 +601463.58 5680735.09 96.25 +601463.82 5679119.73 97.50 +601463.85 5680391.99 96.25 +601464.10 5680445.47 96.25 +601464.22 5681102.16 97.50 +601464.29 5680551.47 96.25 +601464.48 5679171.61 97.50 +601464.57 5680406.69 96.00 +601464.58 5680813.23 97.50 +601464.60 5677465.67 98.75 +601464.61 5680111.34 97.50 +601464.62 5676673.00 100.00 +601464.83 5677237.87 97.50 +601465.28 5680963.74 97.50 +601465.30 5680575.48 96.25 +601465.53 5680687.52 97.50 +601465.61 5676540.61 101.25 +601465.66 5679909.85 97.50 +601465.68 5680513.19 96.00 +601465.70 5679522.69 97.50 +601465.82 5680866.47 97.50 +601465.88 5679115.36 97.25 +601466.03 5680953.84 96.25 +601466.10 5680888.04 97.50 +601466.15 5679108.99 97.50 +601466.20 5677128.46 97.50 +601466.23 5677112.63 97.50 +601466.25 5680483.63 96.25 +601466.33 5681128.49 97.50 +601466.52 5680268.67 97.50 +601466.58 5680619.56 96.25 +601466.65 5677529.00 98.75 +601466.66 5680141.00 97.50 +601466.71 5679146.27 96.25 +601466.82 5680465.14 96.25 +601466.95 5680723.14 96.25 +601467.19 5678763.14 97.50 +601467.23 5678585.41 97.50 +601467.49 5678738.21 97.50 +601467.59 5677262.42 97.50 +601467.71 5678445.13 97.50 +601467.76 5679999.65 97.50 +601467.79 5680062.66 97.50 +601467.80 5680385.29 97.50 +601467.88 5680506.91 96.25 +601467.99 5680541.83 96.25 +601468.01 5679162.99 96.25 +601468.41 5677827.46 98.75 +601468.47 5680325.52 97.50 +601468.70 5680762.86 97.50 +601468.73 5680847.29 97.50 +601468.80 5679154.34 96.00 +601468.84 5680639.08 97.50 +601469.04 5680416.01 96.25 +601469.19 5680131.37 97.50 +601469.24 5679135.15 97.50 +601469.49 5679500.86 97.50 +601469.62 5680633.31 96.25 +601469.80 5680607.97 96.25 +601470.18 5680409.87 96.00 +601470.21 5680490.63 96.25 +601470.22 5680103.11 97.50 +601470.28 5680421.97 96.25 +601470.36 5680950.34 97.50 +601470.51 5677907.71 98.75 +601470.64 5680428.50 96.25 +601470.66 5678747.55 97.25 +601470.69 5680476.99 96.25 +601470.70 5676793.66 98.75 +601470.80 5680599.90 96.25 +601470.81 5680909.82 97.50 +601470.86 5680524.52 96.25 +601470.91 5680569.72 96.25 +601471.22 5680830.48 97.50 +601471.62 5680471.42 96.00 +601472.11 5680557.39 96.25 +601472.24 5680435.53 96.25 +601472.26 5680959.54 96.25 +601472.43 5680807.05 97.50 +601472.45 5680053.87 97.50 +601472.46 5678756.35 97.25 +601472.54 5679177.45 97.50 +601472.61 5680728.47 95.90 +601472.64 5677105.15 97.50 +601472.84 5680122.21 97.50 +601472.98 5681097.35 97.50 +601473.02 5680401.49 96.00 +601473.04 5679121.99 97.50 +601473.20 5680449.60 96.25 +601473.25 5680900.81 97.50 +601473.35 5680736.42 96.25 +601473.70 5680275.52 97.50 +601473.76 5680391.08 96.25 +601473.79 5680580.42 96.25 +601473.80 5680518.06 96.00 +601473.96 5679113.12 97.50 +601473.97 5677462.57 98.75 +601474.15 5680905.26 97.20 +601474.16 5677522.60 98.75 +601474.26 5680968.15 97.50 +601474.31 5680861.20 97.50 +601474.36 5679151.82 96.25 +601474.39 5677235.26 97.50 +601474.46 5676674.74 100.00 +601474.90 5679160.70 96.00 +601474.98 5676544.10 101.25 +601475.08 5680332.87 97.50 +601475.16 5679169.72 96.25 +601475.18 5680624.44 96.25 +601475.18 5678591.38 97.50 +601475.28 5679911.77 97.50 +601475.32 5680005.66 97.50 +601475.60 5679523.69 97.50 +601475.72 5680885.32 97.50 +601475.85 5680547.69 96.25 +601475.89 5677128.64 97.50 +601475.94 5680840.36 97.50 +601475.94 5680468.83 96.25 +601476.22 5677821.62 98.75 +601476.44 5680095.37 97.50 +601476.54 5680511.68 96.25 +601476.77 5680724.03 96.25 +601476.87 5677258.96 97.50 +601476.87 5679141.38 97.50 +601477.04 5678739.46 97.50 +601477.09 5678443.20 97.50 +601477.12 5678762.76 97.50 +601477.26 5677861.80 99.00 +601477.33 5680045.20 97.50 +601477.39 5678486.40 97.50 +601477.47 5680644.13 97.50 +601477.59 5680384.86 97.50 +601477.96 5680113.68 97.50 +601478.32 5680531.09 96.25 +601478.37 5680637.93 96.25 +601478.38 5680941.78 97.50 +601478.41 5680760.48 97.50 +601478.67 5680415.07 96.25 +601479.06 5678496.16 97.50 +601479.16 5680481.97 96.25 +601479.30 5680405.95 96.00 +601479.30 5680954.81 97.50 +601479.33 5677903.57 98.75 +601479.37 5680607.90 96.25 +601479.39 5680476.15 96.00 +601479.43 5679500.33 97.50 +601479.84 5678476.77 97.50 +601479.86 5680825.46 97.50 +601480.03 5680283.10 97.50 +601480.10 5680423.84 96.25 +601480.20 5680572.89 96.25 +601480.26 5677098.82 97.50 +601480.39 5680908.18 97.50 +601480.39 5680600.70 96.25 +601480.44 5680562.52 96.25 +601480.60 5678747.55 97.25 +601480.62 5679183.25 97.50 +601480.63 5680428.30 96.25 +601480.65 5676793.09 98.75 +601480.70 5680923.81 97.50 +601480.92 5678505.93 97.50 +601480.97 5679159.08 96.25 +601481.00 5679167.07 96.00 +601481.01 5680440.33 96.25 +601481.48 5680803.32 97.50 +601481.57 5681092.23 97.50 +601481.67 5677516.19 98.75 +601481.96 5680340.02 97.50 +601481.99 5680397.17 96.00 +601482.25 5678755.34 97.25 +601482.29 5678467.14 97.50 +601482.34 5679176.38 96.25 +601482.46 5680453.34 96.25 +601482.49 5680036.68 97.50 +601482.49 5680729.07 95.90 +601482.54 5680963.34 97.50 +601482.72 5680855.79 97.50 +601482.72 5680968.86 97.50 +601482.75 5680584.27 96.25 +601482.86 5680973.24 97.50 +601482.93 5680899.96 97.50 +601483.12 5680087.98 97.50 +601483.14 5680105.18 97.50 +601483.22 5680736.42 96.25 +601483.35 5680833.69 97.50 +601483.42 5677459.72 98.75 +601483.42 5678515.51 97.50 +601483.45 5679148.85 97.50 +601483.58 5680389.28 96.25 +601483.61 5680553.70 96.25 +601483.72 5678436.23 97.50 +601483.83 5680629.23 96.25 +601483.94 5677232.66 97.50 +601483.99 5680903.91 97.20 +601484.13 5680010.29 97.50 +601484.24 5678595.20 97.50 +601484.35 5676676.13 100.00 +601484.36 5677816.31 98.75 +601484.49 5676547.15 101.25 +601484.51 5680930.04 97.50 +601484.70 5679914.43 97.50 +601484.80 5680472.99 96.25 +601484.83 5680948.42 97.50 +601485.24 5680939.20 97.50 +601485.33 5680882.58 97.50 +601485.53 5679524.42 97.50 +601485.70 5677127.58 97.50 +601485.82 5680291.16 97.50 +601485.82 5680537.61 96.25 +601485.89 5680515.06 96.25 +601486.16 5680027.50 97.50 +601486.31 5680648.80 97.50 +601486.35 5677256.07 97.50 +601486.61 5680723.25 96.25 +601486.84 5680481.36 96.00 +601486.90 5678738.14 97.50 +601486.96 5678524.79 97.50 +601487.06 5678762.38 97.50 +601487.10 5679173.43 96.00 +601487.24 5680642.30 96.25 +601487.27 5680382.68 97.50 +601487.48 5680487.21 96.25 +601487.82 5677898.77 98.75 +601487.95 5680017.79 97.50 +601487.96 5679165.97 96.25 +601487.96 5678459.46 97.50 +601488.09 5680757.99 97.50 +601488.24 5680820.02 97.50 +601488.29 5680959.18 97.50 +601488.38 5680561.64 96.25 +601488.39 5680417.39 96.25 +601488.44 5680315.93 97.50 +601488.52 5677093.51 97.50 +601488.67 5680402.68 96.00 +601488.74 5680919.39 97.50 +601488.76 5680610.03 96.25 +601488.85 5679251.76 96.25 +601488.92 5680097.07 97.50 +601489.00 5679497.70 97.50 +601489.18 5677509.79 98.75 +601489.21 5679188.27 97.50 +601489.30 5680576.59 96.25 +601489.34 5680526.18 96.25 +601489.40 5680346.58 97.50 +601489.57 5680080.40 97.50 +601489.58 5678428.32 97.50 +601489.75 5679241.83 96.25 +601489.75 5680426.37 96.25 +601489.88 5679156.44 97.50 +601489.96 5680431.78 96.25 +601489.98 5680601.54 96.25 +601490.03 5680907.00 97.50 +601490.07 5680444.50 96.25 +601490.16 5681087.12 97.50 +601490.30 5679182.13 96.25 +601490.47 5678747.14 97.25 +601490.50 5678534.08 97.50 +601490.60 5676792.51 98.75 +601490.97 5680323.64 97.50 +601491.11 5680850.35 97.50 +601491.37 5680409.47 96.25 +601491.42 5680978.41 97.50 +601491.42 5680802.26 97.50 +601491.64 5680457.24 96.25 +601491.74 5680828.26 97.50 +601491.75 5680395.23 96.00 +601491.78 5680635.09 96.25 +601491.78 5678752.89 97.25 +601492.01 5679260.82 96.25 +601492.08 5680298.69 97.50 +601492.12 5680972.26 97.50 +601492.19 5680586.97 96.25 +601492.21 5680963.58 97.50 +601492.38 5680728.83 95.90 +601492.48 5680934.40 97.50 +601492.54 5680898.61 97.50 +601492.57 5680533.14 96.25 +601493.01 5680478.40 96.25 +601493.05 5680735.56 96.25 +601493.17 5677459.47 98.75 +601493.19 5679179.80 96.00 +601493.26 5680625.21 97.50 +601493.26 5680544.19 96.25 +601493.41 5680387.47 96.25 +601493.46 5680946.07 97.25 +601493.53 5677812.99 98.75 +601493.67 5677230.91 97.50 +601493.75 5678598.11 97.50 +601493.82 5680902.55 97.20 +601493.86 5679128.88 97.50 +601493.96 5679917.68 97.50 +601493.98 5680487.00 96.00 +601494.04 5678543.37 97.50 +601494.13 5676549.82 101.25 +601494.24 5678419.63 97.50 +601494.27 5676677.25 100.00 +601494.46 5680950.06 97.50 +601494.63 5680941.73 97.50 +601494.69 5680088.96 97.50 +601494.95 5679172.86 96.25 +601495.02 5680880.14 97.50 +601495.02 5680414.59 96.25 +601495.15 5680653.46 97.50 +601495.28 5677892.57 98.75 +601495.31 5677125.18 97.50 +601495.38 5678452.85 97.50 +601495.44 5679524.99 97.50 +601495.51 5680517.56 96.25 +601495.67 5679164.53 97.50 +601495.70 5680647.37 96.25 +601495.81 5680492.44 96.25 +601495.82 5677253.19 97.50 +601495.94 5677502.59 98.75 +601496.00 5680072.80 97.50 +601496.05 5680925.17 97.25 +601496.28 5678758.64 97.50 +601496.42 5680722.39 96.25 +601496.51 5679491.29 97.50 +601496.54 5678735.81 97.50 +601496.78 5680314.64 97.50 +601496.88 5680581.03 96.25 +601496.95 5680380.50 97.50 +601497.45 5680916.01 97.50 +601497.46 5680331.14 97.50 +601497.62 5679235.91 96.25 +601497.70 5680816.79 97.50 +601497.71 5677090.21 97.50 +601497.82 5680961.13 97.50 +601497.92 5679193.08 97.50 +601497.98 5680756.69 97.50 +601498.09 5680419.80 96.25 +601498.15 5680612.15 96.25 +601498.36 5680350.49 97.50 +601498.56 5681081.71 97.50 +601498.56 5679267.90 96.25 +601498.57 5680436.79 96.25 +601498.60 5680401.81 96.00 +601498.94 5680430.14 96.25 +601498.96 5680525.53 96.25 +601498.96 5678410.97 97.50 +601498.99 5679186.17 96.25 +601499.25 5680448.45 96.25 +601499.32 5680603.87 96.25 +601499.33 5678551.76 97.50 +601499.59 5680632.77 97.50 +601499.68 5680906.01 97.50 +601499.76 5680640.86 96.25 +601499.81 5680933.82 97.50 +601499.93 5680485.37 96.25 +601499.93 5680845.68 97.50 +601499.93 5678744.11 97.25 +601500.06 5680822.72 97.50 +601500.23 5680462.34 96.25 +601500.33 5680539.32 96.25 +601500.47 5680982.63 97.50 +601500.51 5676792.95 98.75 +601500.54 5680623.26 97.50 +601500.58 5680080.94 97.50 +601500.60 5680550.89 96.25 +601500.62 5678748.35 97.25 +601500.67 5680303.66 97.50 +601500.93 5680406.60 96.25 +601500.97 5677494.16 98.75 +601501.00 5680064.22 97.50 +601501.01 5680968.32 97.50 +601501.05 5679180.41 96.25 +601501.37 5680801.29 97.50 +601501.42 5679172.66 97.50 +601501.51 5680975.69 97.50 +601501.53 5679135.30 97.50 +601501.58 5680393.60 96.00 +601501.75 5680726.49 95.90 +601502.06 5680896.66 97.50 +601502.06 5680732.00 96.25 +601502.40 5677885.90 98.75 +601502.75 5677809.95 98.75 +601502.78 5678446.22 97.50 +601502.87 5677460.54 98.75 +601503.19 5680385.44 96.25 +601503.28 5678600.92 97.50 +601503.50 5677229.67 97.50 +601503.51 5679919.93 97.50 +601503.57 5678402.27 97.50 +601503.66 5680901.20 97.20 +601503.76 5676552.49 101.25 +601503.79 5680653.05 96.25 +601503.82 5679484.53 97.50 +601503.84 5680493.75 96.25 +601503.99 5680658.13 97.50 +601504.09 5680338.52 97.50 +601504.12 5680951.64 97.50 +601504.20 5676678.38 100.00 +601504.22 5680943.70 97.50 +601504.22 5680320.89 97.50 +601504.69 5679948.87 97.50 +601504.81 5680416.45 96.25 +601504.84 5678560.03 97.50 +601504.85 5680878.30 97.50 +601504.92 5680717.37 96.25 +601504.98 5680520.48 96.25 +601505.17 5677124.60 97.50 +601505.21 5679523.10 97.50 +601505.35 5678754.55 97.50 +601505.44 5677250.81 97.50 +601505.54 5680926.59 97.50 +601505.59 5677485.44 98.75 +601505.68 5679621.24 97.50 +601505.68 5679631.21 97.50 +601505.68 5679641.19 97.50 +601505.68 5679651.16 97.50 +601505.69 5679230.07 96.25 +601505.72 5679611.27 97.50 +601505.75 5680055.47 97.50 +601505.83 5679661.13 97.50 +601505.85 5680597.18 97.50 +601506.07 5678732.95 97.50 +601506.20 5680912.74 97.50 +601506.47 5680347.62 97.50 +601506.76 5680379.01 97.50 +601506.77 5681076.00 97.50 +601506.83 5680752.48 97.50 +601506.90 5679180.97 97.50 +601506.95 5680073.29 97.50 +601507.00 5680442.15 96.25 +601507.00 5679195.69 97.50 +601507.01 5679273.18 96.25 +601507.19 5678393.10 97.50 +601507.28 5680615.19 96.25 +601507.37 5677091.23 97.50 +601507.59 5680959.54 97.50 +601507.64 5680435.06 96.25 +601507.73 5680422.41 96.25 +601507.76 5679670.91 97.50 +601507.82 5680529.91 96.25 +601507.95 5680638.26 97.50 +601508.09 5679601.58 97.50 +601508.17 5680452.90 96.25 +601508.30 5679508.97 97.00 +601508.45 5680606.90 96.25 +601508.54 5680401.29 96.00 +601508.56 5680544.89 96.25 +601508.57 5680467.81 96.25 +601508.64 5680645.23 96.25 +601508.90 5680841.26 97.50 +601509.01 5680903.30 97.50 +601509.16 5680555.55 96.25 +601509.19 5680974.01 97.50 +601509.22 5678740.60 97.25 +601509.26 5680308.62 97.50 +601509.33 5679141.50 97.50 +601509.50 5677879.22 98.75 +601509.53 5677476.39 98.75 +601509.69 5679680.70 97.50 +601509.77 5677466.92 98.75 +601509.81 5678744.67 97.25 +601509.82 5680626.97 97.50 +601509.91 5679512.03 97.00 +601509.92 5680985.03 97.50 +601509.96 5679710.36 97.50 +601510.08 5679720.31 97.50 +601510.19 5678439.59 97.50 +601510.32 5676794.60 98.75 +601510.37 5680980.20 97.50 +601510.39 5680721.65 95.90 +601510.46 5679591.89 97.50 +601510.70 5680046.84 97.50 +601510.71 5679730.26 97.50 +601510.81 5678383.93 97.50 +601510.81 5679700.42 97.50 +601510.85 5680727.54 96.25 +601510.87 5680405.60 96.25 +601511.16 5680327.98 97.50 +601511.22 5679477.90 97.50 +601511.24 5680802.63 97.50 +601511.26 5679740.22 97.50 +601511.38 5680967.16 97.50 +601511.50 5680948.50 97.50 +601511.50 5680392.89 96.00 +601511.58 5680894.71 97.50 +601511.62 5679690.48 97.50 +601511.87 5679749.99 97.50 +601512.35 5679501.18 97.00 +601512.38 5679189.28 97.50 +601512.50 5677809.59 98.75 +601512.73 5680065.25 97.50 +601512.79 5680657.11 96.25 +601512.85 5678430.25 97.50 +601512.87 5680602.40 97.50 +601512.95 5680386.20 96.25 +601513.02 5679953.13 97.50 +601513.04 5678602.87 97.50 +601513.12 5678564.58 97.50 +601513.16 5677227.74 97.50 +601513.24 5679919.35 97.50 +601513.27 5679249.87 96.50 +601513.30 5680661.62 97.50 +601513.34 5680899.02 97.20 +601513.41 5680712.35 96.25 +601513.49 5676554.67 101.25 +601513.80 5680922.55 97.50 +601514.15 5680524.32 96.25 +601514.16 5676679.10 100.00 +601514.28 5679225.53 96.25 +601514.28 5678374.70 97.50 +601514.30 5680419.56 96.25 +601514.35 5677127.01 97.50 +601514.46 5678750.58 97.50 +601514.77 5680877.18 97.50 +601514.98 5679521.21 97.50 +601515.03 5681070.38 97.50 +601515.05 5677248.44 97.50 +601515.12 5680910.25 97.50 +601515.17 5680447.90 96.25 +601515.24 5680597.31 97.50 +601515.62 5680747.84 97.50 +601515.65 5678730.36 97.50 +601515.66 5680038.21 97.50 +601516.02 5678420.85 97.50 +601516.13 5677095.81 97.50 +601516.24 5680474.11 96.25 +601516.38 5680439.91 96.25 +601516.39 5680618.30 96.25 +601516.47 5680643.43 97.50 +601516.56 5680377.52 97.50 +601516.58 5680955.52 97.50 +601516.61 5677872.55 98.75 +601516.65 5680458.19 96.25 +601516.86 5680534.05 96.25 +601516.92 5679273.12 96.25 +601517.16 5680425.71 96.25 +601517.25 5680056.38 97.50 +601517.28 5680650.03 96.25 +601517.37 5680979.73 97.50 +601517.41 5680549.33 96.25 +601517.66 5680609.70 96.25 +601517.80 5679949.85 97.50 +601518.12 5680335.06 97.50 +601518.12 5680313.06 97.50 +601518.24 5679757.37 97.50 +601518.29 5680837.85 97.50 +601518.36 5679145.79 97.50 +601518.38 5680973.20 97.50 +601518.43 5680900.91 97.50 +601518.45 5679008.96 97.50 +601518.45 5678365.84 97.50 +601518.50 5680400.94 96.00 +601518.51 5678737.08 97.25 +601518.57 5680558.73 96.25 +601518.69 5680960.84 97.50 +601518.90 5679511.53 97.00 +601518.93 5680631.03 97.50 +601519.03 5680716.81 95.90 +601519.29 5679495.33 97.00 +601519.32 5678741.80 97.25 +601519.34 5679960.57 97.50 +601519.44 5678411.52 97.50 +601519.54 5679472.44 97.50 +601519.80 5676797.70 98.75 +601519.86 5680723.52 96.25 +601520.12 5680029.31 97.50 +601520.84 5680405.79 96.25 +601520.94 5680892.10 97.50 +601521.10 5680804.27 97.50 +601521.34 5679943.63 97.50 +601521.43 5680393.34 96.00 +601521.79 5680047.53 97.50 +601521.87 5680707.26 96.25 +601521.93 5677811.40 98.75 +601522.18 5678606.38 97.50 +601522.24 5680482.11 96.25 +601522.25 5680659.61 96.25 +601522.30 5677103.56 97.50 +601522.32 5680605.66 97.50 +601522.41 5677864.83 98.75 +601522.51 5677224.45 97.50 +601522.63 5678567.49 97.50 +601522.71 5680920.47 97.50 +601522.73 5679920.96 97.50 +601522.76 5680529.28 96.25 +601522.77 5680387.82 96.25 +601522.84 5677132.13 97.50 +601522.88 5678402.19 97.50 +601522.93 5680664.30 97.50 +601522.96 5680896.58 97.20 +601523.23 5678959.07 97.50 +601523.27 5680453.75 96.25 +601523.39 5681064.89 97.50 +601523.42 5676555.87 101.25 +601523.52 5679516.55 97.50 +601523.63 5680912.02 97.50 +601523.77 5680422.76 96.25 +601523.87 5678747.35 97.50 +601524.07 5679224.99 96.25 +601524.07 5678357.74 97.50 +601524.13 5676679.73 100.00 +601524.17 5679957.27 97.50 +601524.36 5680623.63 96.25 +601524.54 5678950.09 97.50 +601524.56 5680875.59 97.50 +601524.63 5677245.91 97.50 +601524.95 5680599.24 97.50 +601524.99 5680744.34 97.50 +601525.13 5680463.47 96.25 +601525.16 5680342.03 97.50 +601525.19 5680444.61 96.25 +601525.34 5680655.67 96.25 +601525.54 5678729.29 97.50 +601525.69 5680647.30 97.50 +601525.92 5680538.14 96.25 +601525.94 5680984.88 97.50 +601526.16 5679003.26 97.50 +601526.33 5680375.77 97.50 +601526.50 5679506.63 97.00 +601526.54 5680553.26 96.25 +601526.56 5677856.10 98.75 +601526.58 5678392.96 97.50 +601526.61 5680428.94 96.25 +601526.64 5679271.68 96.25 +601526.70 5680978.63 97.50 +601526.75 5679966.95 97.50 +601526.88 5680612.45 96.25 +601527.00 5680039.04 97.50 +601527.04 5680022.38 97.50 +601527.08 5680317.31 97.50 +601527.30 5680711.38 95.90 +601527.43 5680636.24 97.50 +601527.56 5679493.58 97.00 +601527.65 5679149.22 97.50 +601527.81 5680835.42 97.50 +601527.90 5680898.71 97.50 +601527.93 5680490.31 96.25 +601527.98 5679759.53 97.50 +601527.99 5678734.24 97.25 +601528.06 5680398.89 96.00 +601528.13 5680718.14 96.25 +601528.28 5680560.84 96.25 +601528.37 5677846.55 98.75 +601528.48 5677111.30 97.50 +601528.74 5677836.80 98.75 +601528.77 5676801.93 98.75 +601528.80 5677817.80 98.75 +601529.00 5678739.66 97.25 +601529.28 5679470.87 97.50 +601529.46 5677827.08 98.75 +601529.68 5678349.63 97.50 +601530.19 5680889.12 97.50 +601530.28 5678383.74 97.50 +601530.40 5680029.83 97.50 +601530.43 5679964.82 97.50 +601530.54 5679946.31 97.50 +601530.62 5680702.80 96.25 +601530.65 5678611.59 97.50 +601530.66 5677218.94 97.50 +601530.76 5680406.93 96.25 +601530.77 5679926.16 97.50 +601530.88 5680630.55 96.25 +601530.91 5681058.32 97.50 +601531.02 5680804.44 97.50 +601531.14 5677137.51 97.50 +601531.30 5680393.07 96.00 +601531.48 5679510.58 97.50 +601531.56 5680594.40 97.50 +601531.62 5680533.76 96.25 +601531.74 5677618.21 97.50 +601531.79 5680608.85 97.50 +601531.80 5678943.83 97.50 +601532.01 5679499.81 97.00 +601532.13 5678570.39 97.50 +601532.27 5678960.31 97.50 +601532.29 5680427.65 96.25 +601532.58 5680456.81 96.25 +601532.59 5680894.14 97.20 +601532.75 5680665.86 97.50 +601532.76 5680388.01 96.25 +601532.99 5680348.12 97.50 +601533.02 5680469.54 96.25 +601533.10 5680450.33 96.25 +601533.21 5676557.82 101.25 +601533.30 5680870.90 97.50 +601533.37 5680498.69 96.25 +601533.46 5677628.02 97.50 +601533.49 5679228.08 96.25 +601533.69 5678746.07 97.50 +601534.08 5677243.02 97.50 +601534.10 5676680.36 100.00 +601534.15 5678997.98 97.50 +601534.18 5680625.03 95.75 +601534.27 5678340.90 97.50 +601534.47 5680741.18 97.50 +601534.53 5680990.01 97.50 +601534.60 5677609.28 97.50 +601534.85 5678375.00 97.50 +601534.96 5680542.26 96.25 +601535.11 5680617.44 96.25 +601535.14 5680966.56 97.50 +601535.15 5680650.46 97.50 +601535.45 5678728.62 97.50 +601535.47 5677118.24 97.50 +601535.87 5680982.53 97.50 +601535.97 5679268.18 96.25 +601536.05 5680321.56 97.50 +601536.09 5680374.02 97.50 +601536.10 5680555.89 96.25 +601536.15 5680707.23 95.90 +601536.18 5680941.58 97.50 +601536.64 5679933.88 97.50 +601536.71 5680713.44 96.25 +601536.81 5680833.31 97.50 +601537.09 5680638.84 97.50 +601537.34 5679151.37 97.50 +601537.37 5680896.51 97.50 +601537.39 5676806.93 98.75 +601537.42 5680958.95 97.50 +601537.58 5680917.05 97.50 +601537.64 5679475.19 97.50 +601537.74 5679943.15 97.50 +601537.82 5680563.59 96.25 +601537.87 5678733.18 97.25 +601538.33 5681051.62 97.50 +601538.37 5679503.43 97.50 +601538.59 5677213.00 97.50 +601538.82 5678739.39 97.25 +601538.85 5678332.17 97.50 +601539.12 5678616.81 97.50 +601539.22 5677143.25 97.50 +601539.29 5680634.80 96.25 +601539.34 5680575.12 97.50 +601539.40 5680885.99 97.50 +601539.51 5678938.16 97.50 +601539.84 5680340.58 96.25 +601539.87 5680699.38 96.25 +601540.03 5677635.47 97.50 +601540.07 5678366.64 97.50 +601540.21 5680594.81 97.50 +601540.55 5680476.12 96.25 +601540.61 5680921.65 97.50 +601540.67 5680408.08 96.25 +601540.70 5680537.80 96.25 +601540.78 5680613.17 97.50 +601540.88 5680934.30 97.50 +601540.94 5680354.06 97.50 +601540.96 5680864.48 97.50 +601540.98 5680803.50 97.50 +601541.01 5680504.89 96.25 +601541.06 5679494.19 97.50 +601541.06 5679484.47 97.50 +601541.55 5679233.94 96.25 +601541.63 5678573.31 97.50 +601541.69 5678958.74 97.50 +601541.99 5680890.99 97.20 +601542.06 5680945.05 97.50 +601542.31 5677603.12 97.50 +601542.42 5680582.59 97.50 +601542.51 5680349.92 96.25 +601542.54 5680385.98 96.25 +601542.54 5678993.43 97.50 +601542.72 5680666.47 97.50 +601542.98 5676559.94 101.25 +601543.00 5677238.72 97.50 +601543.11 5680995.13 97.50 +601543.13 5677124.52 97.50 +601543.28 5678746.06 97.50 +601543.41 5678323.43 97.50 +601543.48 5680622.17 96.25 +601543.69 5680331.79 96.25 +601543.92 5680546.55 96.25 +601543.98 5676678.99 100.00 +601544.05 5680561.21 96.25 +601544.07 5680738.47 97.50 +601544.14 5680910.61 97.50 +601544.17 5679157.96 97.50 +601544.43 5680966.15 97.50 +601544.43 5680987.70 97.50 +601544.82 5680653.00 97.50 +601544.99 5680827.56 97.50 +601545.01 5680325.81 97.50 +601545.33 5678358.30 97.50 +601545.37 5680953.64 97.50 +601545.39 5678728.92 97.50 +601545.60 5681044.77 97.50 +601545.60 5680371.21 97.50 +601545.63 5680704.37 95.90 +601545.92 5681073.60 97.50 +601546.00 5680855.96 97.50 +601546.05 5680465.53 96.00 +601546.05 5677206.51 97.50 +601546.10 5679233.63 97.50 +601546.22 5680710.79 96.25 +601546.50 5676807.83 98.75 +601546.66 5678736.46 97.25 +601546.73 5680641.50 97.50 +601546.82 5680894.28 97.50 +601546.99 5680442.18 96.25 +601547.15 5680573.86 97.50 +601547.23 5681064.76 97.50 +601547.29 5677148.99 97.50 +601547.33 5680471.76 96.00 +601547.37 5678622.37 97.50 +601547.52 5678932.91 97.50 +601547.64 5678742.89 97.25 +601547.78 5677641.54 97.50 +601548.34 5680399.62 96.00 +601548.55 5680882.74 97.50 +601548.59 5680637.15 96.25 +601548.74 5680481.71 96.25 +601548.99 5680359.85 97.50 +601548.99 5680510.89 96.25 +601548.99 5680929.68 97.50 +601549.28 5680696.68 96.25 +601549.39 5680598.77 97.50 +601549.40 5680918.44 97.50 +601549.64 5680617.80 97.50 +601549.66 5679166.16 97.50 +601549.71 5679761.22 97.50 +601549.74 5680541.92 96.25 +601549.76 5680356.78 96.25 +601550.07 5680352.55 96.00 +601550.43 5678752.97 97.50 +601550.43 5680783.93 97.50 +601550.45 5678349.88 97.50 +601550.47 5680940.99 97.50 +601550.52 5680406.37 96.25 +601550.62 5680847.09 97.50 +601550.92 5680802.45 97.50 +601551.10 5678956.93 97.50 +601551.11 5678576.31 97.50 +601551.27 5680887.47 97.20 +601551.35 5677129.79 97.50 +601551.36 5680347.15 96.00 +601551.37 5677233.50 97.50 +601551.38 5678989.72 97.50 +601551.56 5680381.87 96.25 +601551.58 5678322.38 97.50 +601551.66 5677600.29 97.50 +601551.68 5680586.25 97.50 +601551.97 5680905.61 97.50 +601552.04 5680626.57 96.25 +601552.19 5680999.24 97.50 +601552.67 5680667.51 97.50 +601552.67 5681037.70 97.50 +601552.73 5680335.55 96.25 +601552.77 5680551.07 96.25 +601552.87 5676561.27 101.25 +601553.08 5680438.10 96.25 +601553.16 5677199.63 97.50 +601553.39 5680992.06 97.50 +601553.40 5680790.56 97.50 +601553.43 5680393.99 96.00 +601553.47 5680823.17 97.50 +601553.65 5680962.92 97.50 +601553.85 5676677.44 100.00 +601553.98 5680330.06 97.50 +601553.98 5678733.88 97.50 +601554.03 5680737.52 97.50 +601554.04 5679227.55 97.50 +601554.10 5678340.87 97.50 +601554.13 5678742.98 97.25 +601554.17 5681078.73 97.50 +601554.22 5680366.72 97.50 +601554.40 5680655.85 97.50 +601554.56 5678750.02 97.25 +601554.69 5680950.85 97.50 +601554.70 5681058.12 97.50 +601554.82 5677155.40 97.50 +601554.86 5680499.30 96.25 +601555.37 5678331.24 97.50 +601555.48 5680468.55 96.00 +601555.54 5680446.49 96.25 +601555.62 5678627.92 97.50 +601555.83 5680708.74 96.25 +601555.88 5680476.84 96.00 +601556.08 5676808.90 98.75 +601556.11 5680838.75 97.50 +601556.18 5680891.69 97.50 +601556.50 5680643.59 97.50 +601556.58 5680908.64 97.25 +601556.59 5680577.04 97.50 +601556.78 5679907.10 97.50 +601556.83 5677644.68 97.50 +601557.10 5679172.84 97.50 +601557.17 5680925.17 97.50 +601557.23 5680506.66 96.25 +601557.44 5680358.86 96.00 +601557.46 5680398.42 96.00 +601557.59 5680486.35 96.25 +601557.67 5680879.38 97.50 +601557.84 5678759.60 97.50 +601557.90 5677190.93 97.50 +601557.92 5680515.34 96.25 +601557.97 5680914.62 97.50 +601558.17 5680638.11 96.25 +601558.22 5679916.51 97.50 +601558.46 5680829.75 97.50 +601558.47 5680361.60 96.25 +601558.57 5680602.73 97.50 +601558.63 5680936.44 97.50 +601558.75 5680546.12 96.25 +601558.86 5680796.97 97.50 +601558.91 5680621.55 97.50 +601558.92 5679765.01 97.50 +601559.13 5680696.19 96.25 +601559.32 5677227.60 97.50 +601559.32 5680779.78 97.50 +601559.66 5679925.92 97.50 +601559.70 5678581.08 97.50 +601559.76 5681030.65 97.50 +601560.16 5680954.83 97.25 +601560.23 5679219.76 97.50 +601560.27 5678986.14 97.50 +601560.30 5680377.01 96.25 +601560.30 5680631.51 96.25 +601560.33 5680404.48 96.25 +601560.56 5680883.96 97.20 +601560.56 5678955.43 97.50 +601560.57 5680901.84 97.50 +601560.76 5677132.88 97.50 +601560.78 5679898.81 97.50 +601560.83 5680349.21 96.00 +601560.89 5680997.50 97.50 +601561.10 5678757.50 97.25 +601561.12 5680589.53 97.50 +601561.24 5678749.92 97.25 +601561.35 5678740.45 97.50 +601561.37 5677181.81 97.50 +601561.41 5680339.90 96.25 +601561.49 5677598.72 97.50 +601561.62 5679528.22 97.50 +601561.62 5680555.60 96.25 +601561.75 5679537.50 97.50 +601561.75 5680928.55 97.25 +601561.91 5677162.16 97.50 +601562.00 5680389.20 96.00 +601562.16 5681051.46 97.50 +601562.52 5680440.29 96.25 +601562.60 5680668.65 97.50 +601562.80 5677172.01 97.50 +601562.83 5676562.11 101.25 +601562.96 5679180.87 97.50 +601562.97 5679210.23 97.50 +601563.04 5679519.16 97.50 +601563.15 5680960.61 97.50 +601563.40 5680333.12 97.50 +601563.65 5676675.59 100.00 +601563.83 5680473.94 96.00 +601563.94 5680502.67 96.25 +601563.98 5680736.58 97.50 +601563.98 5680658.70 97.50 +601564.19 5678632.90 97.50 +601564.30 5680949.07 97.50 +601564.52 5679864.71 97.50 +601564.59 5680481.62 96.00 +601564.82 5680449.46 96.25 +601564.88 5679200.44 97.50 +601565.38 5680888.54 97.50 +601565.41 5680512.37 96.25 +601565.51 5678765.94 97.50 +601565.67 5680708.08 96.25 +601565.67 5676811.60 98.75 +601565.71 5679190.48 97.50 +601565.81 5679890.74 97.50 +601565.91 5680580.35 97.50 +601566.07 5680922.33 97.50 +601566.24 5679510.45 97.50 +601566.31 5680645.48 97.50 +601566.32 5677220.87 97.50 +601566.37 5680875.06 97.50 +601566.44 5680490.99 96.25 +601566.45 5680394.49 96.00 +601566.78 5680911.49 97.50 +601566.78 5677644.37 97.50 +601566.91 5680361.42 96.00 +601566.93 5679700.16 97.50 +601567.12 5680932.55 97.50 +601567.14 5681023.90 97.50 +601567.24 5680518.87 96.25 +601567.74 5680550.36 96.25 +601567.81 5678586.83 97.50 +601567.96 5678757.23 97.25 +601568.08 5680605.79 97.50 +601568.10 5680363.31 96.25 +601568.28 5680625.00 97.50 +601568.30 5680371.24 96.25 +601568.51 5678764.11 97.25 +601568.58 5679329.00 97.50 +601568.69 5678746.89 97.50 +601568.78 5679733.13 97.50 +601568.81 5679764.53 97.50 +601568.83 5680696.66 96.25 +601568.96 5680777.11 97.50 +601569.10 5680574.90 97.50 +601569.13 5676989.55 98.75 +601569.16 5679319.29 97.50 +601569.28 5676999.26 98.75 +601569.38 5678983.19 97.50 +601569.44 5679501.73 97.50 +601569.50 5680400.74 96.25 +601569.50 5680566.63 97.50 +601569.59 5680899.26 97.50 +601569.63 5681044.82 97.50 +601569.70 5680353.23 96.00 +601569.72 5679856.66 97.50 +601569.77 5677610.20 97.25 +601570.05 5678954.04 97.50 +601570.21 5677134.24 97.50 +601570.43 5680560.19 96.25 +601570.56 5680592.82 97.50 +601570.87 5680384.98 96.00 +601570.98 5677212.13 97.50 +601571.01 5678936.09 97.50 +601571.37 5680340.65 96.25 +601571.42 5677598.51 97.50 +601571.57 5679725.21 97.50 +601571.87 5677007.83 98.75 +601571.91 5680442.97 96.25 +601572.29 5680508.17 96.25 +601572.32 5679539.26 97.50 +601572.37 5679492.92 97.50 +601572.51 5679310.36 97.50 +601572.52 5680669.92 97.50 +601572.52 5679847.49 97.50 +601572.60 5680958.14 97.50 +601572.69 5680478.45 96.00 +601572.70 5680334.22 97.50 +601572.74 5679707.94 97.50 +601572.77 5676563.21 101.25 +601572.86 5679530.03 97.50 +601573.25 5676672.81 100.00 +601573.28 5678636.94 97.50 +601573.42 5677202.80 97.50 +601573.50 5678903.54 97.50 +601573.60 5680661.43 97.50 +601573.61 5680485.80 96.00 +601573.71 5680946.44 97.50 +601573.73 5677192.90 97.50 +601573.76 5680734.52 97.50 +601573.86 5679837.98 97.50 +601573.87 5680883.91 97.50 +601573.95 5680452.93 96.25 +601574.24 5678769.94 97.50 +601574.30 5679697.60 97.50 +601574.36 5681017.02 97.50 +601574.43 5679339.01 96.25 +601574.56 5679887.85 97.50 +601574.72 5676981.73 98.75 +601574.75 5680918.86 97.50 +601575.07 5679740.48 97.50 +601575.09 5680870.78 97.50 +601575.11 5679484.04 97.50 +601575.16 5679521.06 97.50 +601575.27 5676814.30 98.75 +601575.28 5679828.49 97.50 +601575.32 5680907.58 97.50 +601575.32 5680390.28 96.00 +601575.41 5680495.39 96.25 +601575.48 5677640.27 97.50 +601575.49 5678763.06 97.25 +601575.51 5680707.31 96.25 +601575.74 5680929.01 97.50 +601575.80 5680365.49 96.00 +601575.88 5677183.27 97.50 +601575.92 5678592.58 97.50 +601576.21 5680646.72 97.50 +601576.23 5679758.99 97.50 +601576.42 5679329.54 96.25 +601576.72 5680554.62 96.25 +601576.98 5681038.04 97.50 +601577.12 5679319.90 96.25 +601577.59 5680701.09 96.25 +601577.60 5679819.17 97.50 +601577.68 5680608.57 97.50 +601577.72 5680628.31 97.50 +601577.75 5678978.67 97.50 +601577.90 5678766.61 97.25 +601577.92 5680772.73 97.50 +601577.98 5679750.00 97.50 +601578.01 5678748.44 97.50 +601578.22 5678999.83 97.50 +601578.38 5680396.16 96.25 +601578.42 5679512.36 97.50 +601578.47 5680570.58 97.50 +601578.62 5680896.69 97.50 +601578.66 5680357.11 96.00 +601578.91 5679302.99 97.50 +601579.20 5680564.88 96.25 +601579.20 5677014.20 98.75 +601579.43 5678952.14 97.50 +601579.58 5680380.50 96.00 +601579.72 5677131.46 97.50 +601579.72 5681008.59 97.50 +601580.10 5680595.82 97.50 +601580.14 5677174.52 97.50 +601580.60 5676974.01 98.75 +601580.62 5680513.69 96.25 +601580.76 5679713.75 97.50 +601580.77 5680329.05 97.50 +601580.93 5678936.09 97.50 +601580.93 5679477.97 97.50 +601580.97 5679810.18 97.50 +601581.05 5679311.82 96.25 +601581.05 5680446.41 96.25 +601581.08 5680319.15 97.50 +601581.12 5679722.66 97.50 +601581.29 5680339.53 96.25 +601581.32 5677599.19 97.50 +601581.42 5680954.19 97.50 +601581.48 5680877.97 97.50 +601581.56 5679503.62 97.50 +601581.64 5680482.79 96.00 +601582.11 5678900.15 97.50 +601582.16 5680309.47 97.50 +601582.37 5678640.98 97.50 +601582.41 5680671.27 97.50 +601582.63 5680490.00 96.00 +601582.66 5676564.62 101.25 +601582.70 5680901.85 97.50 +601582.74 5680372.23 96.00 +601582.84 5676670.02 100.00 +601583.18 5680456.12 96.25 +601583.32 5680944.92 97.50 +601583.34 5680663.31 97.50 +601583.40 5679701.65 97.50 +601583.57 5680732.60 97.50 +601583.62 5680385.15 96.00 +601583.64 5677634.56 97.50 +601583.84 5679885.71 97.50 +601583.95 5679494.68 97.50 +601583.96 5680866.84 97.50 +601583.97 5678598.41 97.50 +601583.97 5680917.68 97.50 +601584.03 5678769.10 97.50 +601584.09 5680999.62 97.50 +601584.25 5678741.02 97.50 +601584.30 5681031.24 97.50 +601584.42 5680426.38 96.25 +601584.48 5680499.60 96.25 +601584.74 5680420.16 96.25 +601584.83 5680926.85 97.50 +601584.85 5679485.52 97.50 +601584.86 5676817.01 98.75 +601585.18 5679940.23 97.50 +601585.19 5680300.02 97.50 +601585.23 5678761.11 97.25 +601585.70 5680558.88 96.25 +601586.06 5679337.18 96.25 +601586.16 5679802.61 97.50 +601586.19 5680647.30 97.50 +601586.34 5678974.60 97.50 +601586.35 5679346.82 96.25 +601586.37 5677166.86 97.50 +601586.48 5676966.28 98.75 +601586.75 5678926.40 97.50 +601586.83 5679297.33 97.50 +601586.84 5680362.50 96.00 +601586.99 5680768.55 97.50 +601587.13 5678995.29 97.50 +601587.25 5680631.32 97.50 +601587.28 5680611.35 97.50 +601587.29 5679931.23 97.50 +601587.53 5678891.90 97.50 +601587.61 5680574.60 97.50 +601587.70 5678765.04 97.25 +601587.87 5678731.75 97.50 +601587.87 5680870.72 97.50 +601588.06 5680290.53 97.50 +601588.12 5680569.25 96.25 +601588.12 5680990.47 97.50 +601588.18 5680394.63 96.25 +601588.59 5680519.62 96.25 +601588.64 5679305.95 96.25 +601588.67 5678921.98 97.50 +601588.71 5677016.08 98.75 +601588.80 5678950.74 97.50 +601588.98 5679234.34 97.50 +601588.99 5680948.32 97.50 +601589.09 5677128.25 97.50 +601589.66 5680598.76 97.50 +601589.91 5678934.98 97.50 +601589.92 5680543.62 97.50 +601590.05 5679328.18 96.25 +601590.19 5680449.86 96.25 +601590.29 5677602.93 97.50 +601590.68 5680280.96 97.50 +601590.69 5680486.90 96.00 +601591.23 5680338.55 96.25 +601591.34 5680981.01 97.50 +601591.36 5678645.23 97.50 +601591.40 5679243.65 97.50 +601591.49 5680494.51 96.00 +601591.64 5680489.77 96.00 +601591.65 5681024.46 97.50 +601591.67 5680379.59 96.00 +601591.69 5678753.79 97.25 +601591.75 5678722.60 97.50 +601591.76 5679947.12 97.50 +601591.79 5677628.85 97.50 +601591.80 5679806.72 97.50 +601591.86 5679355.08 96.25 +601591.96 5679863.45 97.50 +601592.02 5678604.23 97.50 +601592.03 5680674.02 97.50 +601592.12 5678883.12 97.50 +601592.24 5676666.65 100.00 +601592.29 5679706.15 97.50 +601592.42 5678764.37 97.50 +601592.47 5680459.13 96.25 +601592.58 5676565.87 101.25 +601593.05 5680918.58 97.50 +601593.11 5679883.56 97.50 +601593.16 5680664.30 97.50 +601593.18 5680430.83 96.25 +601593.34 5679923.48 97.50 +601593.42 5680730.92 97.50 +601593.47 5680503.94 96.25 +601593.50 5679290.18 97.50 +601593.54 5677160.03 97.50 +601593.64 5680923.91 97.50 +601593.74 5679226.00 97.50 +601593.84 5680387.15 96.25 +601593.94 5678757.77 97.25 +601593.97 5680420.73 96.25 +601594.25 5676960.46 98.75 +601594.28 5680382.36 96.25 +601594.31 5678744.21 97.25 +601594.51 5680563.46 96.25 +601594.55 5680971.54 97.50 +601594.82 5676817.26 98.75 +601594.88 5678734.29 97.25 +601595.06 5680527.23 96.25 +601595.12 5679252.67 97.50 +601595.29 5678971.22 97.50 +601595.37 5679319.82 96.25 +601595.90 5680365.99 96.00 +601595.99 5679813.61 97.50 +601596.01 5678990.69 97.50 +601596.07 5680648.71 97.50 +601596.08 5678713.65 97.50 +601596.10 5677610.56 97.50 +601596.38 5679388.50 96.25 +601596.44 5680765.65 97.50 +601596.57 5680273.26 97.50 +601596.65 5680578.84 97.50 +601596.69 5677620.18 97.50 +601596.79 5680550.74 97.50 +601596.83 5680634.15 97.50 +601596.88 5680614.13 97.50 +601596.89 5678874.43 97.50 +601597.02 5679262.23 97.50 +601597.05 5680573.62 96.25 +601597.26 5679301.57 96.25 +601597.33 5680542.00 97.50 +601597.46 5679342.01 97.25 +601597.50 5679363.24 96.25 +601597.66 5680962.04 97.50 +601597.66 5679281.61 97.50 +601597.75 5680396.67 96.25 +601597.92 5678748.67 97.25 +601598.11 5679271.92 97.50 +601598.15 5678756.23 97.50 +601598.25 5678952.31 97.50 +601598.35 5678923.69 97.50 +601598.36 5677016.99 98.75 +601598.40 5677124.89 97.50 +601598.89 5679856.87 97.50 +601599.06 5680344.04 96.25 +601599.17 5678725.38 97.25 +601599.17 5680453.65 96.25 +601599.21 5680601.70 97.50 +601599.24 5681017.95 97.50 +601599.35 5680493.33 96.00 +601599.73 5680977.86 97.50 +601599.90 5680490.65 96.00 +601600.23 5679397.56 96.25 +601600.32 5679951.86 97.50 +601600.35 5678649.48 97.50 +601600.37 5680952.42 97.50 +601600.38 5680375.07 96.00 +601600.41 5678704.69 97.50 +601600.65 5680498.32 96.00 +601600.68 5679334.66 97.25 +601600.75 5677153.23 97.50 +601600.89 5678865.42 97.50 +601600.93 5677686.52 97.50 +601601.02 5679917.34 97.50 +601601.05 5678746.77 97.50 +601601.11 5678739.25 97.25 +601601.14 5679710.71 97.50 +601601.30 5678607.62 97.50 +601601.39 5677677.03 97.50 +601601.56 5676663.05 100.00 +601601.60 5680968.79 97.50 +601601.62 5679421.82 96.25 +601601.64 5680676.76 97.50 +601601.76 5680462.13 96.25 +601602.01 5676954.64 98.75 +601602.11 5680435.00 96.25 +601602.24 5679225.74 97.50 +601602.24 5679348.45 97.25 +601602.40 5680425.82 96.25 +601602.44 5679884.77 97.50 +601602.47 5680508.28 96.25 +601602.55 5676566.62 101.25 +601602.56 5680667.71 97.50 +601602.69 5679937.06 96.25 +601602.92 5680391.13 96.25 +601603.21 5680532.93 96.25 +601603.24 5680729.04 97.50 +601603.33 5680568.04 96.25 +601603.47 5680266.12 97.50 +601603.47 5680412.94 96.25 +601603.50 5678966.29 97.50 +601603.63 5679371.00 96.25 +601603.64 5679294.64 96.25 +601603.65 5678855.90 97.50 +601603.87 5679315.65 96.25 +601603.90 5678737.25 97.50 +601603.91 5678716.64 97.25 +601603.96 5680943.18 97.50 +601604.02 5678729.82 97.25 +601604.14 5680381.07 96.25 +601604.32 5680524.72 96.25 +601604.64 5680556.93 97.50 +601604.73 5676816.66 98.75 +601604.79 5678985.90 97.50 +601604.80 5680768.63 97.50 +601605.03 5679810.79 97.50 +601605.28 5679360.64 97.50 +601605.37 5680364.70 96.00 +601605.41 5679351.07 97.50 +601605.59 5679385.25 96.25 +601605.59 5680583.31 97.50 +601605.66 5678958.16 97.50 +601605.73 5680351.45 96.25 +601605.82 5680578.29 96.25 +601605.92 5680650.44 97.50 +601605.94 5679405.68 96.25 +601605.98 5677668.46 97.50 +601606.27 5679203.07 97.50 +601606.28 5680974.05 97.50 +601606.41 5680637.04 97.50 +601606.60 5680616.45 97.50 +601606.73 5679212.50 97.50 +601606.83 5680961.02 97.50 +601606.93 5681011.57 97.50 +601607.01 5679851.75 97.50 +601607.07 5680496.89 96.00 +601607.10 5680543.83 97.50 +601607.10 5678928.15 97.50 +601607.17 5679958.27 97.50 +601607.21 5678697.98 97.50 +601607.34 5680399.35 96.25 +601607.43 5679285.90 96.25 +601607.45 5677120.86 97.50 +601607.56 5680420.17 96.25 +601607.76 5680458.30 96.25 +601607.78 5679233.34 97.50 +601607.84 5679977.03 97.50 +601607.84 5678728.11 97.50 +601607.86 5677678.78 97.25 +601607.94 5679826.14 97.50 +601608.00 5679343.12 97.25 +601608.05 5677017.58 98.75 +601608.10 5679335.10 97.25 +601608.29 5679193.70 97.50 +601608.64 5677147.24 97.50 +601608.68 5679323.40 97.50 +601608.69 5677688.68 97.50 +601608.69 5679911.20 97.50 +601608.72 5679929.83 96.25 +601608.78 5680604.58 97.50 +601609.12 5680494.41 96.00 +601609.19 5678654.05 97.50 +601609.22 5679276.44 96.25 +601609.32 5679986.70 97.50 +601609.33 5678721.43 97.25 +601609.42 5679266.77 96.25 +601609.44 5679967.39 97.50 +601609.49 5680468.10 96.25 +601609.53 5679423.87 96.25 +601609.58 5680521.60 96.25 +601609.75 5680258.47 97.50 +601609.80 5676980.15 99.00 +601609.82 5679715.62 97.50 +601609.84 5679333.02 97.50 +601609.99 5680935.33 97.50 +601610.01 5680373.87 96.00 +601610.06 5680501.54 96.00 +601610.09 5679378.49 96.25 +601610.13 5679833.10 97.50 +601610.16 5678848.65 97.50 +601610.19 5679342.58 97.50 +601610.29 5680486.54 97.50 +601610.48 5679414.22 96.25 +601610.57 5679939.12 96.25 +601610.68 5680776.70 97.50 +601610.70 5676950.52 98.75 +601610.78 5678610.59 97.50 +601610.89 5676659.47 100.00 +601610.99 5680680.29 97.50 +601611.03 5678709.71 97.25 +601611.05 5679460.80 97.50 +601611.09 5679242.52 97.50 +601611.13 5680430.38 96.25 +601611.13 5680438.97 96.25 +601611.31 5680966.15 97.50 +601611.36 5679367.96 97.50 +601611.46 5680349.23 97.50 +601611.49 5680341.66 97.50 +601611.61 5680538.34 96.25 +601611.62 5680531.54 96.25 +601611.64 5680952.98 97.50 +601611.74 5680511.98 96.25 +601611.74 5680395.75 96.25 +601611.85 5679885.81 97.50 +601611.95 5680671.14 97.50 +601612.15 5680572.63 96.25 +601612.46 5680412.39 96.25 +601612.51 5676567.38 101.25 +601612.64 5680562.92 97.50 +601612.79 5678719.86 97.50 +601612.80 5677661.60 97.50 +601612.81 5679311.35 96.25 +601612.97 5680726.74 97.50 +601613.13 5679805.93 97.50 +601613.15 5679219.88 97.50 +601613.17 5679185.43 97.50 +601613.56 5678981.10 97.50 +601613.80 5679198.99 96.25 +601613.87 5680977.91 97.50 +601614.07 5679818.76 97.50 +601614.10 5679845.33 97.50 +601614.13 5680380.78 96.25 +601614.27 5680588.27 97.50 +601614.41 5680951.95 97.75 +601614.58 5676815.13 98.75 +601614.59 5679316.16 97.50 +601614.59 5680582.96 96.25 +601614.71 5679469.83 97.50 +601614.73 5677672.28 97.25 +601614.75 5681005.34 97.50 +601614.91 5680957.53 97.50 +601614.93 5680500.09 96.00 +601614.98 5679455.56 97.50 +601615.05 5680970.59 97.50 +601615.14 5680363.74 96.00 +601615.32 5680353.57 96.25 +601615.41 5678933.57 97.50 +601615.49 5679923.23 96.25 +601615.51 5679904.13 97.50 +601615.70 5678692.79 97.50 +601615.70 5680250.53 97.50 +601615.77 5679207.67 96.25 +601615.79 5680652.03 97.50 +601615.82 5679251.08 97.50 +601615.86 5680492.89 97.50 +601615.94 5680640.04 97.50 +601616.17 5678714.22 97.25 +601616.20 5680463.18 96.25 +601616.36 5680618.64 97.50 +601616.49 5677116.83 97.50 +601616.51 5680547.20 97.50 +601616.53 5677141.26 97.50 +601616.56 5680424.33 96.25 +601616.97 5680945.32 97.50 +601617.06 5680401.61 96.25 +601617.12 5680784.32 97.50 +601617.19 5677683.97 97.50 +601617.25 5679930.53 96.00 +601617.34 5678841.81 97.50 +601617.39 5680928.61 97.50 +601617.52 5680473.64 96.25 +601617.53 5680436.01 96.00 +601617.75 5679837.25 97.50 +601617.75 5677018.09 98.75 +601617.90 5678658.84 97.50 +601617.91 5679265.70 96.20 +601617.96 5679985.28 97.50 +601618.23 5679720.91 97.50 +601618.24 5678702.88 97.25 +601618.25 5679405.55 97.50 +601618.26 5680334.30 97.50 +601618.36 5680369.56 96.00 +601618.37 5680498.05 96.00 +601618.38 5680607.38 97.50 +601618.59 5679273.97 96.20 +601618.84 5680484.57 97.50 +601618.89 5680525.21 96.25 +601618.97 5679810.79 97.50 +601619.41 5680504.95 96.00 +601619.54 5680962.40 97.50 +601619.62 5679282.15 96.20 +601619.85 5676947.27 98.75 +601619.87 5680972.80 97.50 +601619.88 5679939.41 96.25 +601620.02 5680434.63 96.25 +601620.08 5677655.16 97.50 +601620.09 5680949.75 97.50 +601620.11 5679478.07 97.50 +601620.14 5680543.51 96.25 +601620.14 5679372.37 97.50 +601620.15 5680442.93 96.25 +601620.21 5676655.89 100.00 +601620.27 5678613.56 97.50 +601620.29 5680683.96 97.50 +601620.75 5680535.59 96.25 +601620.93 5680568.46 97.50 +601620.97 5680577.21 96.25 +601621.17 5679198.81 96.25 +601621.19 5680515.22 96.25 +601621.20 5679306.17 96.25 +601621.28 5680674.71 97.50 +601621.30 5679398.62 97.50 +601621.34 5680398.52 96.25 +601621.35 5678714.79 97.50 +601621.43 5680348.54 97.50 +601621.50 5679224.78 97.50 +601621.51 5680421.08 96.00 +601621.63 5679180.51 97.50 +601621.64 5680242.59 97.50 +601621.84 5680415.51 96.25 +601622.13 5680853.94 97.50 +601622.34 5678976.31 97.50 +601622.34 5680998.85 97.50 +601622.44 5677666.94 97.25 +601622.48 5676568.13 101.25 +601622.70 5680724.44 97.50 +601622.77 5679461.62 97.50 +601622.80 5680503.29 96.00 +601622.80 5679289.81 96.20 +601622.86 5680593.38 97.50 +601622.92 5680938.08 97.50 +601623.02 5678686.08 97.50 +601623.25 5676810.30 98.75 +601623.30 5679213.34 96.25 +601623.34 5679413.59 97.50 +601623.37 5679918.11 96.25 +601623.47 5680587.41 96.25 +601623.69 5679312.87 97.50 +601623.85 5678938.77 97.50 +601623.90 5680474.24 96.00 +601623.93 5680469.15 96.25 +601623.94 5679132.32 97.50 +601624.01 5678708.20 97.25 +601624.09 5677010.92 98.75 +601624.11 5680380.88 96.25 +601624.11 5678834.58 97.50 +601624.37 5680958.72 97.75 +601624.44 5679248.71 97.50 +601624.58 5680954.53 97.50 +601624.66 5680351.10 96.25 +601624.70 5679901.06 97.50 +601624.79 5680921.89 97.50 +601624.81 5680964.86 97.50 +601625.01 5679270.54 96.20 +601625.11 5680496.68 97.50 +601625.46 5678696.05 97.25 +601625.48 5680643.04 97.50 +601625.51 5680789.66 97.50 +601625.52 5680439.34 96.00 +601625.69 5680653.42 97.50 +601625.69 5677679.24 97.50 +601625.69 5679979.36 97.50 +601625.72 5679932.67 96.25 +601625.75 5680428.13 96.25 +601625.78 5680478.85 96.25 +601625.92 5680550.57 97.50 +601625.98 5679297.47 96.20 +601625.98 5679297.47 96.25 +601626.15 5677114.48 97.50 +601626.19 5680620.46 97.50 +601626.24 5679726.09 97.50 +601626.36 5680405.27 96.25 +601626.44 5677140.37 97.50 +601626.56 5680942.99 97.50 +601626.60 5678663.66 97.50 +601626.82 5679958.46 96.25 +601626.86 5679379.45 97.50 +601627.00 5680845.22 97.50 +601627.11 5680329.76 97.50 +601627.41 5679422.19 97.50 +601627.44 5680234.53 97.50 +601627.50 5680489.52 97.50 +601627.82 5680501.14 96.00 +601627.98 5680610.18 97.50 +601628.01 5680529.29 96.25 +601628.17 5679413.38 97.75 +601628.30 5679404.27 97.50 +601628.52 5677651.58 97.50 +601628.52 5679204.74 96.25 +601628.62 5678708.02 97.50 +601628.71 5680508.47 96.00 +601628.82 5678618.36 97.50 +601628.88 5679230.76 97.50 +601628.88 5680930.85 97.50 +601628.93 5677002.52 98.75 +601629.05 5679240.13 97.50 +601629.28 5680547.53 96.25 +601629.29 5680437.92 96.25 +601629.35 5680446.45 96.25 +601629.38 5676946.71 98.75 +601629.52 5680540.25 96.25 +601629.56 5680991.93 97.50 +601629.65 5680946.68 97.50 +601629.68 5679468.00 97.50 +601629.71 5680687.27 97.50 +601629.75 5680956.92 97.50 +601629.86 5679278.02 96.20 +601629.92 5680853.63 97.50 +601629.97 5680344.08 97.50 +601629.97 5679305.67 96.20 +601629.97 5679305.67 97.50 +601629.99 5680581.37 96.25 +601630.10 5680424.36 96.00 +601630.19 5680572.14 97.50 +601630.21 5676656.12 100.00 +601630.22 5678679.22 97.50 +601630.26 5679964.78 96.25 +601630.52 5678827.02 97.50 +601630.62 5680678.29 97.50 +601630.64 5680518.46 96.25 +601630.67 5680506.49 96.00 +601630.67 5679176.83 97.50 +601630.73 5680419.95 96.25 +601630.79 5677662.50 97.25 +601630.81 5678971.11 97.50 +601630.94 5679388.43 97.50 +601631.00 5678945.25 97.50 +601631.09 5679125.35 97.50 +601631.09 5680400.67 96.25 +601631.67 5679217.71 96.25 +601631.84 5679925.49 96.25 +601631.99 5680720.79 97.50 +601632.05 5680474.45 96.25 +601632.16 5680935.52 97.50 +601632.19 5678702.55 97.25 +601632.20 5680596.89 97.50 +601632.21 5680915.18 97.50 +601632.22 5678670.93 97.50 +601632.31 5676806.15 98.75 +601632.39 5676567.05 101.25 +601632.47 5680479.00 96.00 +601632.48 5680836.86 97.50 +601632.53 5680591.50 96.25 +601632.57 5679918.25 96.25 +601632.74 5679412.65 97.50 +601632.76 5679972.53 97.50 +601632.98 5678689.59 97.25 +601633.00 5679950.74 96.25 +601633.33 5679428.50 97.50 +601633.52 5680442.68 96.00 +601633.77 5680226.93 97.50 +601633.79 5680347.05 96.25 +601633.89 5679286.08 96.20 +601633.98 5676994.23 98.75 +601634.07 5680381.62 96.25 +601634.11 5679312.99 96.20 +601634.25 5680391.78 96.25 +601634.37 5679902.32 97.50 +601634.38 5677674.91 97.50 +601634.62 5679955.44 96.00 +601634.65 5680482.90 96.25 +601634.66 5680499.64 97.50 +601634.87 5680554.85 97.50 +601635.14 5680787.40 97.50 +601635.28 5680430.93 96.25 +601635.38 5677143.43 97.50 +601635.44 5680642.69 97.50 +601635.50 5680324.54 97.50 +601635.56 5679421.73 97.50 +601635.57 5677111.63 97.50 +601635.59 5680654.81 97.50 +601635.67 5680949.73 97.50 +601635.73 5679397.06 97.50 +601635.82 5680927.01 97.50 +601635.84 5680408.31 96.25 +601635.84 5678701.18 97.50 +601636.03 5679210.46 96.25 +601636.04 5680622.13 97.50 +601636.14 5679724.91 97.50 +601636.14 5679142.26 97.50 +601636.16 5680396.73 96.25 +601636.43 5680846.04 97.50 +601636.52 5680547.05 96.25 +601636.67 5680984.90 97.50 +601636.76 5678624.33 97.50 +601636.85 5680941.66 97.50 +601636.85 5680493.03 97.50 +601636.92 5680828.08 97.50 +601636.96 5680367.61 96.25 +601637.00 5679453.98 97.50 +601637.08 5678819.57 97.50 +601637.18 5679463.70 97.50 +601637.27 5680504.24 96.00 +601637.31 5680532.64 96.25 +601637.45 5679237.43 97.50 +601637.56 5676985.28 98.75 +601637.86 5680611.62 97.50 +601637.96 5678964.12 97.50 +601638.09 5680511.72 96.00 +601638.09 5679959.37 96.25 +601638.15 5680338.35 97.50 +601638.20 5679444.18 97.50 +601638.23 5679118.38 97.50 +601638.24 5677651.58 97.50 +601638.39 5676949.95 98.75 +601638.51 5679293.82 96.20 +601638.51 5679293.82 97.50 +601638.69 5680427.63 96.00 +601638.69 5680440.87 96.25 +601638.70 5680449.56 96.25 +601638.71 5680818.25 97.50 +601639.00 5679319.84 96.20 +601639.09 5680585.37 96.25 +601639.33 5679965.25 97.50 +601639.37 5680689.82 97.50 +601639.73 5677659.87 97.25 +601639.77 5679173.27 97.50 +601639.90 5680908.80 97.50 +601639.91 5680423.74 96.25 +601640.01 5678696.48 97.25 +601640.07 5679284.08 97.50 +601640.08 5679405.92 97.50 +601640.16 5678942.60 97.50 +601640.18 5680572.67 97.50 +601640.20 5676656.34 100.00 +601640.25 5680680.99 97.50 +601640.25 5679221.66 96.25 +601640.35 5680520.75 96.25 +601640.43 5680416.68 96.25 +601640.47 5676976.02 98.75 +601640.48 5679244.43 97.50 +601640.51 5679944.63 96.25 +601640.55 5680219.69 97.50 +601640.70 5680403.32 96.25 +601640.74 5679434.67 97.50 +601640.84 5680373.40 96.25 +601641.01 5680478.35 96.25 +601641.06 5677151.19 97.50 +601641.24 5680717.00 97.50 +601641.36 5676801.99 98.75 +601641.46 5678684.68 97.25 +601641.52 5680446.01 96.00 +601641.57 5680482.59 96.00 +601641.62 5680600.24 97.50 +601641.71 5680595.29 96.25 +601642.31 5680342.10 96.25 +601642.31 5676565.95 101.25 +601642.58 5679415.24 97.50 +601642.67 5679274.57 97.50 +601642.72 5679425.11 97.50 +601642.75 5680317.66 97.50 +601642.81 5680809.36 97.50 +601642.93 5677670.60 97.50 +601643.04 5679950.97 96.25 +601643.19 5680838.68 97.50 +601643.22 5676966.71 98.75 +601643.47 5677105.60 97.50 +601643.64 5678812.13 97.50 +601643.69 5676957.41 98.75 +601643.73 5680486.46 96.25 +601643.74 5680977.84 97.50 +601643.77 5679301.65 96.20 +601643.92 5679326.66 96.20 +601643.95 5677160.74 97.50 +601644.06 5680381.84 96.25 +601644.08 5680391.63 96.25 +601644.09 5679903.54 97.50 +601644.17 5679719.27 97.50 +601644.18 5680240.34 97.50 +601644.26 5680502.41 97.50 +601644.34 5679216.75 96.00 +601644.40 5679136.64 97.50 +601644.46 5678696.31 97.50 +601644.46 5680783.94 97.50 +601644.54 5679232.51 97.50 +601644.57 5678630.48 97.50 +601644.64 5680556.99 97.50 +601644.75 5677210.44 97.50 +601644.87 5680433.55 96.25 +601644.98 5677200.46 97.50 +601645.15 5677190.49 97.50 +601645.17 5677180.51 97.50 +601645.18 5677170.53 97.50 +601645.21 5678957.23 97.50 +601645.25 5679754.43 97.50 +601645.33 5677220.39 97.50 +601645.33 5680889.43 97.50 +601645.36 5679957.49 97.50 +601645.36 5679111.40 97.50 +601645.41 5679211.46 96.25 +601645.43 5680642.18 97.50 +601645.44 5679745.10 97.50 +601645.49 5680656.19 97.50 +601645.65 5680410.18 96.25 +601645.85 5680398.88 96.25 +601645.90 5680623.80 97.50 +601645.92 5678688.50 97.25 +601646.07 5677230.34 97.50 +601646.14 5679265.34 97.50 +601646.35 5679166.66 97.50 +601646.42 5680332.80 97.50 +601646.49 5680495.70 97.50 +601646.49 5680422.21 96.25 +601646.55 5680365.06 96.25 +601646.74 5680212.00 97.50 +601646.76 5680507.21 96.00 +601646.79 5680880.69 97.50 +601646.82 5677240.29 97.50 +601646.99 5677654.98 97.50 +601647.04 5680232.75 97.50 +601647.28 5680533.33 96.25 +601647.29 5680430.89 96.00 +601647.60 5680902.42 97.50 +601647.64 5680453.70 96.25 +601647.74 5680514.13 96.00 +601647.77 5680612.92 97.50 +601647.86 5680444.41 96.25 +601648.13 5679735.82 97.50 +601648.17 5680589.42 96.25 +601648.34 5679131.08 97.40 +601648.57 5678937.34 97.50 +601648.62 5677250.08 97.50 +601648.65 5680801.26 97.50 +601648.86 5679240.10 97.50 +601648.99 5677663.06 97.50 +601649.01 5679333.37 96.20 +601649.12 5679309.44 96.20 +601649.17 5680691.62 97.50 +601649.20 5680427.27 96.25 +601649.30 5680310.11 97.50 +601649.36 5679224.06 96.25 +601649.37 5680335.04 96.25 +601649.49 5680449.41 96.00 +601649.52 5679948.67 97.50 +601649.53 5680417.07 96.25 +601649.57 5679763.16 97.50 +601649.63 5680924.93 97.50 +601649.67 5679256.12 97.50 +601649.95 5680683.29 97.50 +601650.02 5680482.08 96.25 +601650.09 5676797.23 98.75 +601650.14 5680522.78 96.25 +601650.16 5680572.47 97.50 +601650.20 5676656.57 100.00 +601650.28 5680406.05 96.25 +601650.42 5680831.80 97.50 +601650.45 5677098.61 97.50 +601650.64 5679711.77 97.50 +601650.64 5680374.81 96.25 +601650.74 5677259.83 97.50 +601650.85 5680485.78 96.00 +601651.01 5680603.69 97.50 +601651.05 5680715.61 97.50 +601651.12 5680598.47 96.25 +601651.70 5680972.02 97.50 +601651.70 5678806.38 97.50 +601651.86 5680203.50 97.50 +601652.00 5679123.32 97.40 +601652.29 5676565.37 101.25 +601652.39 5678636.62 97.50 +601652.42 5679104.34 97.50 +601652.53 5680240.28 97.50 +601652.63 5680778.30 97.50 +601652.65 5679131.02 97.50 +601652.65 5678950.56 97.50 +601652.68 5679727.21 97.50 +601652.78 5680225.00 97.50 +601652.86 5679359.40 97.50 +601652.87 5677269.58 97.50 +601652.93 5679349.64 97.50 +601653.01 5679939.48 97.50 +601653.11 5680873.20 97.50 +601653.17 5680488.96 96.25 +601653.27 5680917.02 97.50 +601653.42 5680886.18 97.50 +601653.61 5680325.85 97.50 +601653.64 5679247.10 97.50 +601653.69 5679904.32 97.50 +601653.80 5680393.51 96.25 +601653.91 5680505.04 97.50 +601653.91 5678694.05 97.50 +601653.99 5679369.17 97.50 +601654.05 5680382.05 96.25 +601654.06 5679229.92 97.50 +601654.13 5679843.06 97.50 +601654.24 5680436.84 96.25 +601654.26 5679317.37 96.20 +601654.31 5679339.90 96.20 +601654.31 5679339.90 97.50 +601654.47 5680558.77 97.50 +601654.52 5677089.98 97.50 +601654.56 5679213.10 96.25 +601654.60 5680926.50 97.50 +601655.04 5680301.93 97.50 +601655.06 5679378.95 97.50 +601655.11 5680793.63 97.50 +601655.29 5680896.03 97.50 +601655.39 5680657.58 97.50 +601655.40 5679388.78 97.50 +601655.40 5680412.23 96.25 +601655.43 5680642.16 97.50 +601655.48 5680401.25 96.25 +601655.63 5680425.64 96.25 +601655.72 5677279.14 97.50 +601655.79 5677080.12 97.50 +601655.84 5680624.74 97.50 +601655.91 5680434.10 96.00 +601656.03 5680919.29 97.80 +601656.07 5679930.16 97.50 +601656.08 5679127.32 97.40 +601656.17 5680498.08 97.50 +601656.32 5680509.95 96.00 +601656.46 5678931.50 97.50 +601656.48 5679398.54 97.50 +601656.52 5680364.43 96.25 +601656.58 5679703.78 97.50 +601656.59 5680457.84 96.25 +601656.74 5680448.69 96.25 +601656.96 5680349.29 96.25 +601656.99 5677070.25 97.50 +601657.06 5680328.68 96.25 +601657.06 5680195.07 97.50 +601657.13 5679834.29 97.50 +601657.18 5680534.55 96.25 +601657.24 5679718.60 97.50 +601657.39 5680516.55 96.00 +601657.41 5679115.29 97.40 +601657.42 5680452.91 96.00 +601657.64 5680614.52 97.50 +601657.64 5679825.03 97.50 +601657.78 5679343.75 96.20 +601657.78 5679343.75 96.25 +601657.85 5677060.35 97.50 +601657.95 5679353.50 96.25 +601657.97 5680825.24 97.50 +601657.99 5680590.53 96.25 +601658.14 5678644.50 97.50 +601658.19 5679363.24 96.25 +601658.36 5679920.60 97.50 +601658.49 5680430.82 96.25 +601658.51 5679372.99 96.25 +601658.53 5676791.93 98.75 +601658.56 5680420.77 96.25 +601658.60 5679408.12 97.50 +601658.73 5679225.01 96.25 +601658.76 5679815.82 97.50 +601658.79 5677288.62 97.50 +601658.84 5677050.46 97.50 +601659.00 5680217.70 97.50 +601659.13 5680692.48 97.50 +601659.31 5679910.97 97.50 +601659.42 5680484.74 96.25 +601659.48 5679097.28 97.50 +601659.51 5678772.73 97.50 +601659.54 5679382.68 96.25 +601659.70 5679217.73 96.25 +601659.79 5680865.95 97.50 +601659.83 5679124.11 97.50 +601659.87 5680684.59 97.50 +601659.92 5680524.81 96.25 +601659.95 5680966.39 97.50 +601660.03 5678943.81 97.50 +601660.06 5676657.90 100.00 +601660.11 5677040.60 97.50 +601660.13 5679324.73 96.20 +601660.13 5680488.97 96.00 +601660.13 5680571.83 97.50 +601660.16 5680407.53 96.25 +601660.42 5680772.06 97.50 +601660.47 5680606.68 97.50 +601660.48 5678802.00 97.50 +601660.62 5680375.22 96.25 +601660.68 5680912.56 97.50 +601660.70 5680879.57 97.50 +601660.87 5679392.33 96.25 +601660.97 5680319.08 97.50 +601660.98 5680599.49 96.25 +601661.04 5680715.18 97.50 +601661.20 5680920.89 97.50 +601661.21 5680294.06 97.50 +601661.23 5680785.74 97.50 +601661.37 5677030.74 97.50 +601661.66 5680237.15 97.50 +601661.88 5679417.39 97.50 +601661.88 5680340.71 96.25 +601662.00 5678698.37 97.50 +601662.27 5676565.01 101.25 +601662.51 5680491.78 96.25 +601662.58 5679120.12 97.40 +601662.63 5678923.74 97.50 +601662.63 5679695.86 97.50 +601662.64 5677020.89 97.50 +601662.65 5679710.59 97.50 +601662.73 5679349.26 96.20 +601662.82 5677297.75 97.50 +601662.88 5678653.24 97.50 +601662.91 5679107.30 97.40 +601662.99 5680889.65 97.50 +601663.06 5679401.83 96.25 +601663.13 5680396.92 96.25 +601663.57 5680440.27 96.25 +601663.61 5679227.45 97.50 +601663.65 5680507.28 97.50 +601663.77 5680354.84 96.25 +601663.99 5680382.99 96.25 +601664.02 5680188.00 97.50 +601664.22 5680028.62 97.50 +601664.34 5680416.70 96.25 +601664.38 5680559.55 97.50 +601664.52 5680437.31 96.00 +601664.67 5680429.33 96.25 +601664.81 5680817.96 97.50 +601664.83 5680404.59 96.25 +601664.97 5680322.58 96.25 +601665.06 5679811.25 97.50 +601665.15 5680477.70 96.25 +601665.29 5680658.96 97.50 +601665.35 5680456.41 96.00 +601665.42 5680642.16 97.50 +601665.63 5680452.95 96.25 +601665.66 5680461.66 96.25 +601665.67 5680019.37 97.50 +601665.72 5680484.24 96.25 +601665.74 5680914.56 97.50 +601665.82 5680625.38 97.50 +601665.89 5680512.68 96.00 +601665.93 5679411.14 96.25 +601666.07 5677011.60 97.50 +601666.13 5680499.04 97.50 +601666.32 5680858.57 97.50 +601666.43 5679331.77 96.20 +601666.51 5680364.33 96.25 +601666.52 5680211.66 97.50 +601666.54 5679090.22 97.50 +601666.57 5679116.77 97.50 +601666.66 5680777.37 97.50 +601666.68 5679425.78 97.50 +601666.73 5680009.77 97.50 +601666.84 5677306.89 97.50 +601666.97 5680536.55 96.25 +601666.97 5676786.64 98.75 +601667.11 5680518.59 96.00 +601667.15 5680000.41 97.50 +601667.20 5679364.21 96.25 +601667.26 5678936.90 97.50 +601667.38 5680435.26 96.25 +601667.41 5679827.70 97.50 +601667.47 5679795.49 97.50 +601667.49 5680616.20 97.50 +601667.52 5679373.91 96.25 +601667.60 5678706.55 97.50 +601667.66 5680960.03 97.50 +601667.71 5680424.18 96.25 +601667.76 5680872.69 97.50 +601667.88 5679112.03 97.40 +601667.90 5680591.30 96.25 +601667.95 5678915.55 97.50 +601667.96 5679354.49 96.20 +601667.96 5679354.49 96.25 +601668.09 5680286.83 97.50 +601668.28 5680768.06 97.50 +601668.32 5680312.31 97.50 +601668.47 5679099.36 97.40 +601668.48 5680195.54 97.50 +601668.61 5679818.50 97.50 +601668.64 5679383.59 96.25 +601668.71 5678661.25 97.50 +601668.82 5680487.40 96.25 +601669.07 5679393.33 96.25 +601669.09 5680693.33 97.50 +601669.11 5680333.82 96.25 +601669.21 5677598.53 97.50 +601669.22 5679703.39 97.50 +601669.40 5678771.71 97.50 +601669.41 5680411.11 96.25 +601669.75 5680526.58 96.25 +601669.79 5679689.25 97.50 +601669.80 5676660.17 100.00 +601669.80 5680685.29 97.50 +601669.84 5677002.40 97.50 +601669.95 5680647.37 97.50 +601670.00 5678799.23 97.50 +601670.11 5680571.20 97.50 +601670.39 5680233.05 97.50 +601670.40 5680882.95 97.50 +601670.42 5678905.94 97.50 +601670.47 5680606.68 97.50 +601670.59 5680375.82 96.25 +601670.86 5677316.02 97.50 +601670.89 5680600.13 96.25 +601670.96 5678886.17 97.50 +601670.96 5678896.09 97.50 +601670.98 5680180.92 97.50 +601671.01 5680714.68 97.50 +601671.28 5680480.41 96.00 +601671.49 5680810.53 97.50 +601671.62 5679081.66 97.50 +601671.69 5680495.11 96.25 +601671.74 5677590.64 97.50 +601671.84 5680027.18 97.50 +601671.93 5679417.85 96.25 +601672.09 5679339.30 96.20 +601672.20 5680445.20 96.25 +601672.25 5676565.69 101.25 +601672.25 5679402.47 96.25 +601672.35 5679830.30 97.50 +601672.35 5679803.33 97.50 +601672.39 5680400.47 96.25 +601672.52 5680850.90 97.50 +601672.57 5680186.61 97.50 +601672.57 5680316.12 96.25 +601672.89 5679109.04 97.50 +601672.94 5678876.46 97.50 +601672.94 5678714.94 97.50 +601672.96 5680440.96 96.00 +601673.08 5679433.25 97.50 +601673.27 5680459.90 96.00 +601673.39 5680509.52 97.50 +601673.40 5679104.08 97.40 +601673.45 5679226.68 97.50 +601673.55 5680857.38 97.25 +601673.61 5676993.21 97.50 +601673.62 5680433.23 96.25 +601673.76 5680354.54 96.25 +601673.91 5680419.46 96.25 +601673.92 5680384.12 96.25 +601673.93 5677595.61 97.25 +601674.07 5680205.66 97.50 +601674.12 5679812.43 97.50 +601674.14 5680408.03 96.25 +601674.34 5680558.69 97.50 +601674.57 5680865.56 97.50 +601674.67 5680477.47 96.25 +601674.81 5679996.26 97.50 +601674.82 5680456.49 96.25 +601674.87 5677325.15 97.50 +601674.88 5679360.72 96.20 +601674.91 5680304.80 97.50 +601674.93 5680465.00 96.25 +601674.94 5678930.51 97.50 +601674.98 5678866.75 97.50 +601675.10 5680279.70 97.50 +601675.13 5679821.61 97.50 +601675.19 5680660.35 97.50 +601675.26 5680953.53 97.50 +601675.40 5679092.59 97.40 +601675.41 5680641.95 97.50 +601675.45 5676781.41 98.75 +601675.46 5680326.14 96.25 +601675.54 5680651.73 97.50 +601675.57 5678668.23 97.50 +601675.58 5680624.60 97.50 +601675.59 5680484.71 96.25 +601675.60 5680514.79 96.00 +601675.78 5679696.20 97.50 +601675.96 5680500.78 97.50 +601676.07 5680197.84 97.50 +601676.26 5679411.35 96.25 +601676.46 5680439.28 96.25 +601676.48 5679072.95 97.50 +601676.50 5680364.47 96.25 +601676.81 5680538.03 96.25 +601676.92 5678724.02 97.50 +601676.95 5679682.64 97.50 +601676.97 5680519.92 96.00 +601677.00 5680619.05 97.50 +601677.13 5680802.30 97.50 +601677.13 5680426.70 96.25 +601677.22 5679347.23 96.20 +601677.26 5680173.25 97.50 +601677.39 5676984.01 97.50 +601677.65 5680876.07 97.50 +601677.79 5679519.41 97.50 +601677.81 5680592.06 96.25 +601677.85 5679528.53 97.50 +601677.93 5678857.35 97.50 +601678.15 5680178.32 97.50 +601678.22 5679389.98 97.50 +601678.26 5680489.87 96.25 +601678.48 5677600.04 97.50 +601678.72 5680843.24 97.50 +601678.86 5679441.21 97.50 +601678.86 5680228.46 97.50 +601678.88 5677334.29 97.50 +601678.92 5680414.12 96.25 +601678.96 5679399.46 97.50 +601678.97 5679101.13 97.50 +601678.98 5678769.10 97.50 +601679.05 5680692.89 97.50 +601679.30 5677584.31 97.50 +601679.45 5679096.51 97.40 +601679.53 5676662.43 100.00 +601679.56 5680009.29 97.10 +601679.61 5678796.76 97.50 +601679.63 5680309.05 96.25 +601679.64 5680528.00 96.25 +601679.66 5680021.37 97.50 +601679.79 5680684.81 97.50 +601679.86 5680646.19 97.50 +601680.02 5678882.29 97.50 +601680.09 5680570.66 97.50 +601680.15 5680849.93 97.25 +601680.37 5680605.79 97.50 +601680.45 5678733.32 97.50 +601680.54 5679380.74 97.50 +601680.56 5680376.46 96.25 +601680.66 5679063.92 97.50 +601680.81 5680599.47 96.25 +601680.86 5680712.97 97.50 +601680.90 5680481.31 96.00 +601681.04 5679611.14 97.50 +601681.16 5676974.81 97.50 +601681.19 5680449.37 96.25 +601681.29 5680496.80 96.25 +601681.31 5677591.60 97.25 +601681.38 5680444.66 96.00 +601681.38 5680858.43 97.50 +601681.46 5680318.15 96.25 +601681.47 5680404.49 96.25 +601681.48 5679367.27 96.20 +601681.56 5680105.56 97.50 +601681.63 5679085.24 97.40 +601681.65 5680297.44 97.50 +601681.66 5678891.40 97.50 +601681.72 5680908.93 97.50 +601682.05 5680200.23 97.50 +601682.09 5678848.35 97.50 +601682.11 5680272.57 97.50 +601682.15 5678872.52 97.50 +601682.22 5676566.36 101.25 +601682.55 5680793.90 97.50 +601682.61 5679620.12 97.50 +601682.72 5679602.02 97.50 +601682.80 5678924.34 97.50 +601682.85 5680947.03 97.50 +601682.90 5677343.42 97.50 +601682.91 5680436.22 96.25 +601683.00 5679407.92 97.50 +601683.14 5679707.46 97.50 +601683.18 5680190.95 97.50 +601683.20 5680096.73 97.50 +601683.25 5680511.15 97.50 +601683.30 5679226.35 97.50 +601683.36 5679354.40 96.20 +601683.43 5680432.43 96.00 +601683.44 5680899.23 97.50 +601683.45 5680411.47 96.25 +601683.48 5680165.52 97.50 +601683.60 5678742.75 97.50 +601683.61 5680421.86 96.25 +601683.74 5680354.15 96.25 +601683.84 5680383.95 96.25 +601683.88 5679536.08 97.50 +601683.89 5679054.48 97.50 +601683.96 5679690.97 97.50 +601683.98 5676776.26 98.75 +601684.02 5680460.04 96.25 +601684.20 5680468.33 96.25 +601684.29 5678862.75 97.50 +601684.30 5680557.84 97.50 +601684.35 5680170.49 97.50 +601684.39 5678672.78 97.50 +601684.48 5680478.72 96.25 +601684.50 5679997.30 97.50 +601684.64 5679449.18 97.50 +601684.76 5679676.96 97.50 +601684.90 5680869.18 97.50 +601684.92 5679093.11 97.50 +601684.93 5676965.62 97.50 +601685.11 5680661.64 97.50 +601685.28 5679088.76 97.40 +601685.29 5679716.31 97.50 +601685.34 5680640.83 97.50 +601685.37 5680516.66 96.00 +601685.42 5680836.01 97.50 +601685.43 5680485.74 96.25 +601685.43 5678762.14 97.50 +601685.51 5679593.31 97.50 +601685.53 5680651.94 97.50 +601685.61 5680915.63 97.50 +601685.78 5680442.74 96.25 +601685.78 5679515.18 97.50 +601685.79 5680502.59 97.50 +601686.15 5678752.31 97.50 +601686.26 5678839.35 97.50 +601686.48 5680363.99 96.25 +601686.60 5680429.07 96.25 +601686.61 5679044.92 97.50 +601686.70 5680301.99 96.25 +601686.75 5680842.48 97.25 +601686.77 5679077.02 97.40 +601686.80 5680538.03 96.25 +601686.83 5680521.24 96.00 +601687.01 5679627.91 97.50 +601687.08 5680594.94 96.25 +601687.10 5679526.93 97.25 +601687.16 5677352.44 97.50 +601687.19 5680223.59 97.50 +601687.32 5679374.47 96.20 +601687.32 5679374.47 97.50 +601687.36 5680890.04 97.50 +601687.43 5680109.62 97.50 +601687.66 5679416.22 97.50 +601687.67 5679034.99 97.50 +601687.72 5680310.36 96.25 +601687.73 5680492.27 96.25 +601687.78 5678791.36 97.50 +601687.87 5678853.50 97.50 +601687.89 5680851.03 97.50 +601687.94 5680016.34 97.50 +601688.04 5679704.07 97.50 +601688.23 5677597.94 97.50 +601688.33 5680785.75 97.50 +601688.48 5679724.89 97.50 +601688.51 5680089.35 97.50 +601688.53 5680416.83 96.25 +601688.96 5677582.39 97.50 +601688.98 5676956.54 97.50 +601688.99 5680290.65 97.50 +601689.02 5680692.10 97.50 +601689.22 5680265.54 97.50 +601689.25 5680193.93 97.50 +601689.38 5677589.67 97.25 +601689.38 5679585.71 97.50 +601689.43 5676663.62 100.00 +601689.53 5680529.43 96.25 +601689.58 5679361.52 96.20 +601689.69 5680157.79 97.50 +601689.71 5680208.74 97.75 +601689.73 5680683.98 97.50 +601689.80 5680448.36 96.00 +601689.85 5680646.19 97.50 +601689.85 5679496.58 97.50 +601689.98 5680434.74 96.00 +601690.02 5680571.83 97.50 +601690.05 5678917.45 97.50 +601690.08 5678896.19 97.50 +601690.15 5680603.70 97.50 +601690.34 5680183.99 97.50 +601690.37 5679543.29 97.50 +601690.39 5680940.47 97.50 +601690.42 5679068.04 97.40 +601690.44 5680482.73 96.00 +601690.46 5680452.98 96.25 +601690.55 5680376.36 96.25 +601690.63 5679487.01 97.50 +601690.75 5680711.63 97.50 +601690.85 5680861.17 97.50 +601690.91 5680498.42 96.25 +601690.99 5678830.66 97.50 +601691.00 5680407.16 96.25 +601691.05 5679080.97 97.40 +601691.12 5680880.77 97.50 +601691.21 5679456.48 97.50 +601691.32 5680163.38 97.50 +601691.42 5677361.46 97.50 +601691.50 5679609.36 97.25 +601691.51 5679085.63 97.50 +601691.95 5679685.46 97.50 +601692.09 5676567.76 101.25 +601692.12 5680828.77 97.50 +601692.21 5680439.20 96.25 +601692.27 5679381.65 96.20 +601692.38 5678844.57 97.50 +601692.52 5676771.12 98.75 +601692.79 5679026.68 97.50 +601692.94 5680414.30 96.25 +601693.04 5680381.18 96.25 +601693.11 5680463.83 96.25 +601693.12 5680512.75 97.50 +601693.17 5679226.21 97.50 +601693.29 5676947.59 97.50 +601693.31 5680424.27 96.25 +601693.32 5680835.01 97.25 +601693.52 5680471.55 96.25 +601693.55 5679730.83 97.50 +601693.71 5679673.12 97.50 +601693.72 5680353.70 96.25 +601693.76 5680294.92 96.25 +601693.79 5680910.24 97.50 +601694.01 5680345.05 96.25 +601694.07 5678675.03 97.50 +601694.15 5679496.48 97.30 +601694.18 5676983.06 97.50 +601694.20 5680843.46 97.50 +601694.21 5680480.40 96.25 +601694.21 5679998.17 97.50 +601694.29 5680557.47 97.50 +601694.32 5680303.01 96.25 +601694.34 5679422.02 97.50 +601694.40 5679505.29 97.50 +601694.52 5680777.90 97.50 +601694.59 5679632.99 97.50 +601694.68 5680082.49 97.50 +601694.80 5679059.41 97.40 +601694.87 5680149.34 97.50 +601694.90 5676973.16 97.50 +601695.03 5679720.36 97.25 +601695.03 5680662.80 97.50 +601695.10 5680446.18 96.25 +601695.10 5680487.79 96.25 +601695.15 5679517.15 97.50 +601695.28 5680639.72 97.50 +601695.29 5680517.37 96.00 +601695.43 5680871.79 97.50 +601695.46 5680218.63 97.50 +601695.50 5678785.14 97.50 +601695.51 5680652.53 97.50 +601695.61 5680186.68 97.50 +601695.71 5680503.85 97.50 +601695.72 5680106.33 97.50 +601695.85 5679708.81 97.50 +601695.88 5680283.44 97.50 +601696.00 5679488.88 97.50 +601696.04 5680431.54 96.25 +601696.33 5678909.86 97.50 +601696.36 5678822.32 97.50 +601696.36 5679368.09 96.20 +601696.36 5679368.09 97.50 +601696.38 5680258.57 97.50 +601696.46 5680363.50 96.25 +601696.50 5677370.01 97.50 +601696.55 5680437.00 96.00 +601696.65 5680853.03 97.50 +601696.68 5680522.57 96.00 +601696.79 5680538.04 96.25 +601696.89 5678835.64 97.50 +601696.95 5680012.65 97.50 +601697.14 5679073.44 97.40 +601697.23 5680494.53 96.25 +601697.25 5679525.65 97.50 +601697.38 5679077.71 97.50 +601697.59 5676938.63 97.50 +601697.65 5679585.48 97.50 +601697.70 5677589.09 97.25 +601697.71 5680177.23 97.50 +601697.88 5680933.84 97.50 +601697.96 5679463.64 97.50 +601698.05 5680090.35 97.20 +601698.10 5678900.78 97.50 +601698.16 5679018.38 97.50 +601698.17 5677597.16 97.50 +601698.29 5680418.97 96.25 +601698.33 5679387.90 96.20 +601698.88 5680821.60 97.50 +601698.93 5680156.90 97.50 +601698.93 5677583.01 97.50 +601698.98 5680691.29 97.50 +601699.10 5679544.09 97.50 +601699.19 5679678.94 97.50 +601699.21 5679534.97 97.50 +601699.39 5680531.05 96.25 +601699.39 5680457.27 96.25 +601699.41 5676664.16 100.00 +601699.55 5680682.07 97.50 +601699.55 5676964.62 97.50 +601699.78 5680342.51 96.25 +601699.82 5680645.51 97.50 +601699.86 5677643.43 97.50 +601699.89 5680827.53 97.25 +601699.94 5680573.00 97.50 +601699.95 5680484.39 96.00 +601699.96 5680140.82 97.50 +601700.12 5680602.96 97.50 +601700.13 5680902.51 97.50 +601700.26 5680501.24 96.25 +601700.41 5679064.35 97.40 +601700.58 5680835.94 97.50 +601700.62 5679594.20 97.50 +601700.63 5680769.99 97.50 +601700.66 5680409.46 96.25 +601700.74 5680711.63 97.50 +601700.75 5679472.96 97.50 +601700.83 5680287.86 96.25 +601700.85 5680863.40 97.50 +601701.04 5679359.82 97.50 +601701.18 5680443.03 96.25 +601701.26 5679497.04 97.50 +601701.32 5679008.91 97.50 +601701.34 5680076.12 97.50 +601701.38 5679055.28 97.40 +601701.43 5679506.61 97.50 +601701.60 5679068.66 97.50 +601701.60 5676767.29 98.75 +601701.60 5678826.87 97.50 +601701.72 5679373.27 96.20 +601701.73 5678813.98 97.50 +601701.82 5680099.41 97.50 +601701.88 5676569.37 101.25 +601701.90 5676929.67 97.50 +601702.05 5679349.90 97.50 +601702.09 5679612.59 97.50 +601702.17 5680467.69 96.25 +601702.22 5680275.71 97.50 +601702.27 5677378.15 97.50 +601702.31 5678778.09 97.50 +601702.33 5679603.32 97.50 +601702.37 5680212.09 97.50 +601702.38 5679672.16 97.50 +601702.44 5680844.88 97.50 +601702.47 5680347.89 96.25 +601702.48 5679729.08 97.50 +601702.59 5679621.85 97.50 +601702.61 5680416.56 96.25 +601702.70 5680427.64 96.25 +601702.81 5679630.79 97.50 +601702.92 5680514.74 97.50 +601702.92 5680180.56 97.50 +601702.93 5680474.48 96.25 +601702.98 5679339.96 97.50 +601703.02 5679225.82 97.50 +601703.07 5679714.42 97.50 +601703.14 5680439.20 96.00 +601703.29 5680298.60 96.25 +601703.41 5678999.18 97.50 +601703.53 5677635.48 97.50 +601703.55 5676985.35 97.50 +601703.61 5679423.27 97.50 +601703.68 5680354.37 96.25 +601703.69 5680251.75 97.50 +601703.80 5680482.80 96.25 +601703.85 5678675.23 97.50 +601703.95 5679997.91 97.50 +601703.97 5679330.03 97.50 +601704.28 5680557.21 97.50 +601704.42 5680926.31 97.50 +601704.43 5680449.61 96.25 +601704.45 5680548.78 97.50 +601704.54 5679295.16 97.50 +601704.56 5679394.00 96.20 +601704.80 5679285.38 97.50 +601704.85 5680489.44 96.25 +601704.89 5678989.31 97.50 +601704.90 5680148.98 97.50 +601705.00 5680663.63 97.50 +601705.07 5680170.47 97.50 +601705.13 5680435.11 96.25 +601705.21 5680518.08 96.00 +601705.26 5680639.40 97.50 +601705.36 5680506.03 97.50 +601705.49 5680653.13 97.50 +601705.72 5680814.50 97.50 +601705.75 5679275.64 97.50 +601705.81 5679059.61 97.50 +601706.00 5678979.39 97.50 +601706.07 5677589.65 97.25 +601706.08 5680009.25 97.50 +601706.09 5679479.86 97.50 +601706.21 5680133.16 97.50 +601706.21 5676920.72 97.50 +601706.32 5680894.67 97.50 +601706.39 5680761.82 97.50 +601706.39 5676957.35 97.50 +601706.43 5680363.57 96.25 +601706.44 5678769.07 97.50 +601706.44 5678805.27 97.50 +601706.45 5680820.05 97.25 +601706.48 5679358.25 97.50 +601706.54 5680523.89 96.00 +601706.76 5680538.75 96.25 +601706.79 5680496.55 96.25 +601706.86 5679722.43 97.50 +601706.92 5679368.22 97.50 +601707.12 5679320.59 97.50 +601707.14 5679265.96 97.50 +601707.17 5680828.61 97.50 +601707.27 5680855.74 97.50 +601707.30 5679378.19 96.20 +601707.30 5679378.19 97.50 +601707.50 5679348.38 97.50 +601707.76 5680092.35 97.50 +601707.85 5680280.75 96.25 +601707.92 5680421.58 96.25 +601707.99 5680462.26 96.25 +601708.00 5680204.36 97.50 +601708.04 5677386.29 97.50 +601708.15 5677596.97 97.50 +601708.15 5677647.17 97.50 +601708.52 5680836.94 97.50 +601708.63 5678970.00 97.50 +601708.66 5677639.92 97.25 +601708.70 5678819.83 97.50 +601708.72 5677584.88 97.50 +601708.82 5679256.35 97.50 +601708.94 5680690.39 97.50 +601708.99 5679416.98 97.50 +601709.20 5680532.92 96.25 +601709.39 5676664.70 100.00 +601709.43 5680680.93 97.50 +601709.47 5679338.61 97.50 +601709.48 5680342.51 96.25 +601709.76 5680503.32 96.25 +601709.77 5680073.03 97.50 +601709.79 5680644.67 97.50 +601709.93 5680573.14 97.50 +601709.96 5680269.45 97.50 +601710.09 5680602.26 97.50 +601710.11 5679029.01 97.50 +601710.32 5679296.75 97.50 +601710.34 5680445.68 96.25 +601710.36 5680411.58 96.25 +601710.43 5680709.50 97.50 +601710.48 5679050.80 97.50 +601710.78 5678796.35 97.50 +601710.82 5680195.14 97.50 +601710.83 5680141.03 97.50 +601710.99 5680918.80 97.50 +601711.08 5680245.01 97.50 +601711.09 5679311.49 97.50 +601711.13 5680316.13 96.25 +601711.20 5680323.45 96.25 +601711.25 5676764.84 98.75 +601711.49 5680470.88 96.25 +601711.52 5676912.38 97.50 +601711.62 5680176.52 97.50 +601711.62 5680806.63 97.50 +601711.80 5679264.82 97.25 +601711.82 5676568.35 101.25 +601711.87 5679247.05 97.50 +601711.89 5679408.00 97.50 +601712.03 5679287.40 97.50 +601712.05 5679398.47 96.20 +601712.05 5679398.47 97.50 +601712.06 5679328.97 97.50 +601712.12 5680545.61 97.50 +601712.13 5680348.80 96.25 +601712.20 5680886.58 97.50 +601712.24 5680430.05 96.25 +601712.28 5677632.14 97.50 +601712.33 5680477.42 96.25 +601712.39 5680417.25 96.25 +601712.41 5680299.02 96.25 +601712.42 5680163.69 97.50 +601712.50 5676981.27 97.50 +601712.64 5680552.80 97.50 +601712.66 5680487.17 96.25 +601712.68 5680516.88 97.50 +601712.76 5676949.68 97.50 +601712.77 5680125.72 97.50 +601712.84 5679225.23 97.50 +601713.00 5680754.57 97.50 +601713.13 5679382.73 96.20 +601713.28 5679475.65 97.50 +601713.37 5679277.71 97.50 +601713.37 5680812.92 97.25 +601713.47 5680440.07 96.25 +601713.47 5680453.66 96.25 +601713.48 5680085.13 97.50 +601713.55 5678961.31 97.50 +601713.55 5678673.59 97.50 +601713.64 5680355.17 96.25 +601713.65 5679997.84 97.50 +601713.77 5680821.28 97.50 +601713.93 5680848.30 97.50 +601714.01 5678764.29 97.50 +601714.21 5680558.37 97.50 +601714.21 5677394.11 97.50 +601714.22 5680522.12 96.00 +601714.44 5680510.23 97.50 +601714.49 5677591.70 97.50 +601714.53 5679456.36 97.50 +601714.54 5680004.52 97.50 +601714.63 5680829.03 97.50 +601714.68 5679319.34 97.50 +601714.71 5679020.16 97.50 +601714.87 5680273.64 96.25 +601714.94 5679237.76 97.50 +601714.98 5680664.08 97.50 +601715.10 5679466.12 97.50 +601715.22 5680638.72 97.50 +601715.22 5680186.59 97.50 +601715.23 5679446.73 97.50 +601715.47 5680653.72 97.50 +601715.62 5679061.41 97.50 +601715.80 5678812.79 97.50 +601715.98 5679268.29 97.50 +601716.11 5679302.87 97.50 +601716.32 5680498.65 96.25 +601716.39 5680364.40 96.25 +601716.60 5678788.36 97.50 +601716.72 5679043.21 97.50 +601716.73 5680539.47 96.25 +601716.93 5680425.69 96.25 +601716.96 5680076.80 97.50 +601717.42 5680465.30 96.25 +601717.52 5677645.67 97.50 +601717.58 5676904.50 97.50 +601717.61 5680798.81 97.50 +601717.70 5679030.29 97.50 +601717.73 5679437.21 97.50 +601717.91 5680117.14 97.50 +601717.98 5677637.84 97.25 +601718.01 5679309.94 97.50 +601718.02 5680263.54 97.50 +601718.08 5680878.50 97.50 +601718.26 5679958.09 97.50 +601718.37 5680912.06 97.50 +601718.49 5680238.32 97.50 +601718.53 5680134.65 97.50 +601718.58 5680688.09 97.50 +601718.64 5679067.62 97.50 +601718.67 5678952.75 97.50 +601718.81 5679258.93 97.50 +601718.96 5679387.28 96.20 +601718.96 5679387.28 97.50 +601719.01 5680534.80 96.25 +601719.03 5676941.91 97.50 +601719.19 5680342.51 96.25 +601719.26 5679011.27 97.50 +601719.38 5680503.94 96.25 +601719.38 5676665.24 100.00 +601719.40 5680177.93 97.50 +601719.43 5680681.00 97.50 +601719.65 5679402.93 96.20 +601719.73 5680643.66 97.50 +601719.77 5680156.91 97.50 +601719.78 5676974.70 97.50 +601719.93 5678770.03 97.50 +601719.93 5680573.17 97.50 +601719.99 5680314.55 96.25 +601720.02 5680706.68 97.50 +601720.06 5680601.61 97.50 +601720.07 5680412.14 96.25 +601720.20 5678779.20 97.50 +601720.34 5680324.17 96.25 +601720.37 5680813.96 97.50 +601720.53 5680806.01 97.25 +601720.57 5679427.79 97.50 +601720.67 5679294.00 97.50 +601720.67 5680474.18 96.25 +601720.71 5679965.20 97.50 +601720.74 5678666.72 97.50 +601720.80 5677401.60 97.50 +601720.93 5680460.01 96.25 +601720.97 5676762.71 98.75 +601720.98 5679053.55 97.50 +601721.10 5680748.83 97.50 +601721.10 5680841.34 97.50 +601721.15 5680821.49 97.50 +601721.61 5678982.42 97.50 +601721.72 5679249.59 97.50 +601721.74 5677630.77 97.50 +601721.75 5680302.29 96.25 +601721.77 5676567.33 101.25 +601721.80 5680349.65 96.25 +601721.89 5680478.82 96.25 +601721.92 5679239.98 97.50 +601721.96 5680266.60 96.25 +601722.01 5679221.60 97.50 +601722.06 5680544.93 97.50 +601722.12 5680528.93 97.50 +601722.29 5680416.45 96.25 +601722.43 5680519.10 97.50 +601722.55 5680554.08 97.50 +601722.73 5679301.55 97.50 +601723.24 5679378.42 97.50 +601723.62 5680355.67 96.25 +601723.77 5680109.08 97.50 +601724.01 5680870.45 97.50 +601724.03 5680512.96 97.50 +601724.14 5680559.54 97.50 +601724.17 5678807.41 97.50 +601724.25 5678944.47 97.50 +601724.26 5680791.63 97.50 +601724.50 5679036.95 97.50 +601724.52 5679002.83 97.50 +601724.60 5676897.77 97.50 +601724.63 5678751.68 97.50 +601724.89 5679393.79 96.20 +601724.97 5680664.20 97.50 +601725.01 5680904.62 97.50 +601725.11 5678989.03 97.50 +601725.14 5679195.86 97.50 +601725.14 5678761.15 97.50 +601725.16 5680637.65 97.50 +601725.25 5680230.95 97.50 +601725.27 5680256.83 97.50 +601725.29 5676934.15 97.50 +601725.45 5680148.73 97.50 +601725.45 5680653.69 97.50 +601725.49 5679285.27 97.50 +601725.74 5680127.73 97.50 +601725.96 5679953.06 97.50 +601726.35 5680365.10 96.25 +601726.44 5680806.24 97.50 +601726.62 5680540.77 96.25 +601726.62 5677642.80 97.50 +601726.64 5676967.57 97.50 +601726.70 5679025.99 97.50 +601726.95 5680683.59 97.50 +601726.99 5678974.13 97.50 +601727.03 5679062.95 97.50 +601727.09 5679421.12 97.50 +601727.11 5678742.28 97.50 +601727.31 5677635.77 97.25 +601727.59 5679406.15 96.20 +601727.68 5679958.15 97.25 +601727.78 5679369.70 97.50 +601727.80 5680318.32 96.00 +601727.94 5680741.55 97.50 +601728.28 5680834.38 97.50 +601728.36 5680814.56 97.50 +601728.56 5677407.87 97.50 +601728.59 5679293.85 97.50 +601728.64 5678660.76 97.50 +601728.65 5679275.80 97.50 +601728.78 5680536.91 96.25 +601728.90 5680342.48 96.25 +601728.92 5679047.49 97.50 +601729.10 5680111.01 96.25 +601729.20 5679391.10 97.50 +601729.25 5680259.77 96.25 +601729.34 5676664.56 100.00 +601729.39 5680314.24 96.25 +601729.44 5680703.34 97.50 +601729.64 5680322.84 96.25 +601729.68 5680642.64 97.50 +601729.80 5680410.19 96.25 +601729.83 5678936.19 97.50 +601729.93 5680573.20 97.50 +601729.95 5679963.94 97.50 +601730.06 5680601.38 97.50 +601730.11 5680862.53 97.50 +601730.25 5680101.47 97.50 +601730.54 5680896.32 97.50 +601730.67 5679400.42 96.20 +601730.75 5679381.45 97.50 +601730.86 5676761.53 98.75 +601730.89 5680532.16 97.50 +601730.90 5680140.34 97.50 +601730.99 5680248.63 97.50 +601731.00 5677631.56 97.50 +601731.08 5680222.83 97.50 +601731.18 5680528.40 97.50 +601731.48 5680350.36 96.25 +601731.59 5676926.41 97.50 +601731.66 5676565.96 101.25 +601731.68 5680102.02 96.25 +601731.70 5680797.90 97.50 +601731.74 5680302.09 96.25 +601732.04 5680545.54 97.50 +601732.08 5678767.21 97.50 +601732.13 5680415.16 96.25 +601732.20 5680521.23 97.50 +601732.53 5680554.70 97.50 +601732.57 5679361.16 97.50 +601732.57 5679284.71 97.50 +601732.61 5679331.65 97.50 +601732.72 5679351.33 97.50 +601732.76 5679341.49 97.50 +601732.84 5678802.44 97.50 +601732.84 5680789.40 97.50 +601732.85 5680120.70 97.50 +601732.93 5679189.70 97.50 +601732.94 5679371.94 97.50 +601732.97 5678734.27 97.50 +601733.04 5679321.83 97.50 +601733.05 5678998.33 97.50 +601733.15 5680587.20 97.50 +601733.30 5678966.58 97.50 +601733.38 5679976.85 97.50 +601733.46 5676893.26 97.50 +601733.60 5679983.82 97.50 +601733.60 5679033.14 97.50 +601733.61 5680356.05 96.25 +601733.71 5679268.05 97.50 +601733.73 5680515.36 97.50 +601733.96 5679055.78 97.50 +601734.07 5680560.70 97.50 +601734.27 5680457.08 97.50 +601734.28 5679399.50 97.50 +601734.34 5678986.34 97.50 +601734.54 5680213.60 97.50 +601734.55 5679312.16 97.50 +601734.57 5679869.73 98.75 +601734.79 5680734.26 97.50 +601734.96 5680663.88 97.50 +601735.10 5680636.60 97.50 +601735.11 5677638.50 97.50 +601735.12 5680239.60 97.50 +601735.18 5679952.36 97.50 +601735.21 5679020.78 97.50 +601735.23 5680452.35 97.50 +601735.31 5676962.63 97.50 +601735.43 5680653.12 97.50 +601735.46 5680827.41 97.50 +601735.56 5680807.62 97.50 +601735.65 5679417.04 97.50 +601735.68 5678928.11 97.50 +601735.81 5680887.83 97.50 +601735.99 5679275.34 97.50 +601736.15 5680854.56 97.50 +601736.34 5680365.47 96.25 +601736.45 5680542.55 96.25 +601736.45 5680252.85 96.25 +601736.50 5680110.31 96.25 +601737.00 5678655.38 97.50 +601737.12 5679041.92 97.50 +601737.35 5677412.41 97.50 +601737.39 5680496.83 97.50 +601737.43 5680132.88 97.50 +601737.49 5679302.77 97.50 +601737.54 5679860.92 98.75 +601737.78 5680094.95 97.50 +601737.85 5677006.28 97.50 +601737.94 5679959.32 97.50 +601737.94 5679878.80 98.75 +601738.25 5679978.29 97.25 +601738.26 5679363.67 97.50 +601738.29 5680101.27 96.00 +601738.39 5679408.09 97.50 +601738.49 5676919.20 97.50 +601738.56 5680204.48 97.50 +601738.59 5680538.73 96.25 +601738.60 5680342.33 96.25 +601738.68 5680699.55 97.50 +601738.75 5680313.43 96.25 +601738.95 5680321.51 96.25 +601739.01 5680095.51 96.25 +601739.04 5680406.56 96.25 +601739.12 5677016.18 97.50 +601739.29 5676663.60 100.00 +601739.50 5679324.92 97.50 +601739.64 5680641.88 97.50 +601739.74 5680396.48 96.25 +601739.74 5680113.46 97.50 +601739.74 5680230.78 97.50 +601739.81 5679293.21 97.50 +601739.93 5680573.24 97.50 +601740.01 5680503.42 97.50 +601740.01 5679334.74 97.50 +601740.05 5680601.14 97.50 +601740.29 5678959.60 97.50 +601740.38 5677026.07 97.50 +601740.42 5679971.63 97.50 +601740.47 5680592.59 97.50 +601740.59 5676996.75 97.50 +601740.61 5679354.21 97.50 +601740.69 5676759.89 98.75 +601740.73 5679315.22 97.50 +601740.73 5679183.54 97.50 +601740.77 5680533.68 97.50 +601740.89 5679344.53 97.50 +601740.95 5680584.29 97.50 +601741.15 5680528.85 97.50 +601741.17 5680350.93 96.25 +601741.38 5677036.00 97.50 +601741.45 5680726.80 97.50 +601741.46 5679869.74 99.00 +601741.48 5676564.06 101.25 +601741.50 5680300.13 96.25 +601741.50 5679049.64 97.50 +601741.54 5680412.49 96.25 +601741.55 5678768.99 97.50 +601741.71 5678721.33 97.25 +601741.83 5678920.25 97.50 +601741.85 5680547.25 97.50 +601741.88 5680879.88 97.50 +601741.96 5680523.36 97.50 +601742.00 5679283.62 97.50 +601742.03 5679981.05 97.50 +601742.04 5680846.49 97.50 +601742.07 5677045.95 97.50 +601742.08 5678980.28 97.50 +601742.13 5678730.81 97.50 +601742.14 5680435.34 96.25 +601742.23 5676888.59 97.50 +601742.30 5680820.14 97.50 +601742.33 5680244.77 96.25 +601742.38 5678994.76 97.50 +601742.51 5680555.32 97.50 +601742.65 5678800.64 97.50 +601742.76 5680800.69 97.50 +601742.76 5677055.90 97.50 +601742.86 5680195.45 97.50 +601743.04 5679029.88 97.50 +601743.07 5680103.03 96.25 +601743.18 5680461.25 97.50 +601743.37 5680518.00 97.50 +601743.43 5679305.85 97.50 +601743.45 5677065.86 97.50 +601743.52 5677085.81 97.50 +601743.52 5677075.83 97.50 +601743.57 5677095.78 97.50 +601743.59 5680356.42 96.25 +601743.72 5679015.56 97.50 +601743.79 5677105.76 97.50 +601743.83 5680346.89 95.75 +601743.92 5676987.38 97.50 +601744.00 5680561.86 97.50 +601744.02 5677115.73 97.50 +601744.07 5676957.93 97.50 +601744.81 5680126.14 97.50 +601744.94 5680454.19 97.50 +601744.95 5680663.52 97.50 +601744.97 5680222.26 97.50 +601745.08 5680636.08 97.50 +601745.16 5677125.62 97.50 +601745.38 5676911.99 97.50 +601745.42 5680652.55 97.50 +601745.44 5678650.14 97.50 +601745.52 5678712.57 97.25 +601745.66 5680088.80 97.50 +601745.78 5677417.40 97.50 +601745.80 5680393.29 96.25 +601746.23 5680544.56 96.25 +601746.30 5680366.12 96.25 +601746.48 5679038.46 97.50 +601746.52 5680451.81 96.25 +601746.54 5679861.33 98.75 +601746.63 5680106.22 97.50 +601746.66 5679974.91 97.50 +601746.72 5679928.26 97.50 +601746.79 5679878.74 98.75 +601746.87 5677135.45 97.50 +601747.10 5680494.89 97.50 +601747.10 5678725.18 97.25 +601747.23 5680446.05 96.25 +601747.27 5680236.21 96.25 +601747.43 5680871.59 97.50 +601747.65 5678953.00 97.50 +601747.65 5679297.00 97.50 +601747.78 5680091.45 96.25 +601747.80 5680695.46 97.50 +601747.81 5680186.79 97.50 +601747.88 5679937.07 97.50 +601747.93 5680838.41 97.50 +601748.12 5680312.62 96.25 +601748.22 5680212.82 97.50 +601748.23 5680719.46 97.50 +601748.24 5679278.83 97.50 +601748.29 5680403.03 96.25 +601748.31 5680342.17 96.25 +601748.35 5680321.24 96.25 +601748.36 5677145.31 97.50 +601748.45 5678912.81 97.50 +601748.49 5680540.13 96.25 +601748.63 5680431.68 96.25 +601748.72 5678961.35 97.75 +601748.80 5679177.75 97.50 +601748.85 5680400.37 96.25 +601749.03 5680812.74 97.50 +601749.03 5680389.89 97.50 +601749.16 5678973.37 97.50 +601749.23 5680507.10 97.50 +601749.24 5676662.63 100.00 +601749.34 5676979.01 97.50 +601749.38 5677155.23 97.50 +601749.54 5680095.67 96.25 +601749.62 5680641.34 97.50 +601749.63 5680383.64 97.50 +601749.82 5680603.26 97.50 +601749.92 5680573.27 97.50 +601750.06 5676882.87 97.50 +601750.37 5680592.54 97.50 +601750.39 5677165.16 97.50 +601750.41 5680794.27 97.50 +601750.46 5680226.74 96.25 +601750.52 5679870.22 98.75 +601750.52 5676758.25 98.75 +601750.59 5679045.50 97.50 +601750.64 5679287.66 97.50 +601750.67 5680535.05 97.50 +601750.69 5680409.46 96.25 +601750.86 5680351.50 96.25 +601750.93 5680439.32 96.25 +601750.95 5680530.64 97.50 +601750.95 5680584.43 97.50 +601751.02 5678766.19 97.50 +601751.08 5678727.43 97.50 +601751.22 5680297.80 96.25 +601751.22 5677175.10 97.50 +601751.25 5679209.35 97.50 +601751.29 5676562.15 101.25 +601751.40 5679919.77 97.50 +601751.49 5678716.98 97.25 +601751.51 5678990.79 97.50 +601751.52 5680558.98 97.50 +601751.58 5680549.57 97.50 +601751.76 5680525.34 97.50 +601751.81 5677185.06 97.50 +601751.94 5679025.85 97.50 +601752.08 5680203.59 97.50 +601752.28 5676904.78 97.50 +601752.33 5678798.22 97.50 +601752.39 5677195.02 97.50 +601752.44 5677685.30 97.50 +601752.46 5680346.74 95.75 +601752.48 5680862.96 97.50 +601752.55 5678708.61 97.25 +601752.67 5677424.61 97.50 +601752.72 5679011.25 97.50 +601752.73 5680464.23 97.50 +601752.87 5677254.75 97.50 +601752.88 5677204.99 97.50 +601752.90 5680521.00 97.50 +601753.05 5677244.83 97.50 +601753.19 5680082.22 97.50 +601753.24 5677214.96 97.50 +601753.33 5680178.48 97.50 +601753.40 5680121.02 97.50 +601753.58 5680356.78 96.25 +601753.61 5677224.93 97.50 +601753.82 5680830.33 97.50 +601753.87 5676956.06 97.50 +601753.93 5677675.43 97.50 +601753.98 5677234.90 97.50 +601754.02 5677695.05 97.50 +601754.05 5678645.17 97.50 +601754.09 5677264.65 97.50 +601754.15 5680099.63 97.50 +601754.18 5680217.53 96.25 +601754.34 5680457.57 97.50 +601754.46 5676970.46 97.50 +601754.85 5680662.13 97.50 +601755.01 5678946.41 97.50 +601755.05 5680635.41 97.50 +601755.18 5679922.72 97.25 +601755.21 5679910.81 97.50 +601755.31 5677274.55 97.50 +601755.32 5678719.08 97.50 +601755.32 5676874.44 97.50 +601755.35 5680712.45 97.50 +601755.40 5680651.98 97.50 +601755.55 5680395.17 96.25 +601755.66 5678905.91 97.50 +601755.66 5680455.44 96.25 +601755.67 5678709.19 97.50 +601755.72 5677487.81 97.50 +601755.75 5679034.75 97.50 +601755.75 5680805.34 97.50 +601755.82 5679933.37 97.50 +601755.89 5680547.11 96.25 +601756.13 5680367.83 96.25 +601756.13 5680428.74 97.50 +601756.49 5680449.39 96.25 +601756.63 5680475.22 97.50 +601756.72 5680690.94 97.50 +601757.07 5680495.13 97.50 +601757.08 5679172.26 97.50 +601757.19 5680314.31 96.25 +601757.39 5678699.42 97.50 +601757.41 5678967.93 97.50 +601757.54 5680543.99 96.25 +601757.57 5677481.21 97.50 +601757.60 5680319.93 96.25 +601757.74 5680854.46 97.50 +601757.78 5680435.28 96.25 +601757.82 5679201.89 97.50 +601758.01 5680342.01 96.25 +601758.06 5680195.67 97.50 +601758.14 5680393.76 97.50 +601758.18 5677703.58 97.50 +601758.26 5676896.82 97.50 +601758.34 5680788.20 97.50 +601758.42 5677283.94 97.50 +601758.61 5679018.82 97.50 +601758.83 5680509.86 97.50 +601758.89 5676961.52 97.50 +601758.95 5677432.28 97.50 +601759.03 5676660.65 100.00 +601759.09 5680481.80 97.50 +601759.23 5680421.33 97.50 +601759.40 5679040.81 97.50 +601759.57 5677667.65 97.50 +601759.58 5680384.07 97.50 +601759.58 5680640.55 97.50 +601759.66 5680822.22 97.50 +601759.71 5680603.23 97.50 +601759.72 5680209.22 96.25 +601759.89 5678761.97 97.50 +601759.92 5680573.30 97.50 +601759.98 5679902.33 97.50 +601759.99 5679952.63 97.50 +601760.15 5680538.16 97.50 +601760.17 5678985.81 97.50 +601760.19 5680171.20 97.50 +601760.33 5680442.23 96.25 +601760.35 5680591.90 97.50 +601760.35 5676756.61 98.75 +601760.35 5680075.26 97.50 +601760.43 5680231.89 96.25 +601760.54 5680533.44 97.50 +601760.55 5680352.07 96.25 +601760.61 5680409.76 96.25 +601760.63 5679924.95 97.50 +601760.92 5680584.91 97.50 +601760.97 5676559.69 101.25 +601761.09 5680346.59 95.75 +601761.10 5676866.39 97.50 +601761.19 5680241.30 96.25 +601761.19 5680298.28 96.25 +601761.31 5680551.86 97.50 +601761.58 5680527.25 97.50 +601761.68 5680093.06 97.50 +601761.70 5680154.96 97.50 +601761.84 5679007.20 97.50 +601761.84 5678795.14 97.50 +601761.86 5679961.40 97.50 +601762.05 5680116.01 97.50 +601762.27 5680467.21 97.50 +601762.47 5680705.43 97.50 +601762.50 5680797.97 97.50 +601762.65 5677292.95 97.50 +601762.77 5680522.59 97.50 +601762.88 5678899.01 97.50 +601762.98 5678691.44 97.50 +601763.09 5680846.02 97.50 +601763.56 5680357.12 96.25 +601763.65 5679915.71 97.50 +601763.66 5678643.81 97.50 +601763.73 5680460.99 97.50 +601763.81 5678941.91 97.50 +601763.81 5677440.99 97.50 +601763.98 5676888.65 97.50 +601763.98 5680736.96 97.50 +601764.34 5680145.86 97.50 +601764.55 5680433.14 97.50 +601764.68 5680188.19 97.50 +601764.69 5680660.39 97.50 +601764.84 5680633.41 97.50 +601764.88 5680458.89 96.25 +601764.88 5677474.42 97.50 +601764.90 5677491.37 97.50 +601764.99 5680398.18 96.25 +601765.01 5679031.02 97.50 +601765.06 5679195.69 97.50 +601765.31 5679944.68 97.50 +601765.36 5679166.77 97.50 +601765.38 5680651.41 97.50 +601765.50 5680814.10 97.50 +601765.63 5680781.40 97.50 +601765.63 5680686.42 97.50 +601765.66 5678962.49 97.50 +601765.69 5679906.21 97.50 +601765.78 5680728.38 97.50 +601765.94 5680369.45 96.25 +601766.11 5677709.31 97.50 +601766.12 5680201.55 96.25 +601766.14 5680451.07 96.25 +601766.22 5680476.28 97.50 +601766.59 5677660.55 97.50 +601766.72 5680249.59 96.25 +601766.94 5680496.72 97.50 +601766.94 5680224.31 96.25 +601766.97 5678755.02 97.50 +601766.99 5680438.77 96.25 +601767.47 5680068.25 97.50 +601767.66 5680164.57 97.50 +601767.72 5680341.86 96.25 +601767.74 5676859.00 97.50 +601767.93 5680395.80 97.50 +601767.96 5679015.82 97.50 +601768.22 5680485.58 97.50 +601768.26 5677449.90 97.50 +601768.30 5677301.17 97.50 +601768.35 5680085.62 97.50 +601768.53 5680512.28 97.50 +601768.64 5680837.70 97.50 +601768.78 5676658.43 100.00 +601768.82 5678980.84 97.50 +601768.84 5680456.12 96.00 +601768.99 5679038.50 97.50 +601769.03 5680446.65 96.25 +601769.15 5680420.21 97.50 +601769.21 5680601.40 97.50 +601769.30 5680790.64 97.50 +601769.34 5680386.20 97.50 +601769.40 5678683.93 97.50 +601769.43 5680638.86 97.50 +601769.53 5680541.63 97.50 +601769.71 5680346.58 95.75 +601769.92 5680573.33 97.50 +601770.08 5680593.95 97.50 +601770.10 5678892.12 97.50 +601770.15 5680536.21 97.50 +601770.18 5676754.97 98.75 +601770.20 5680411.95 96.25 +601770.23 5678789.99 97.50 +601770.25 5680351.75 96.25 +601770.32 5680699.26 97.50 +601770.36 5680157.61 97.50 +601770.59 5676556.95 101.25 +601770.81 5680138.52 97.50 +601770.81 5680586.34 97.50 +601770.88 5676881.50 97.50 +601770.88 5679962.82 97.50 +601770.97 5680233.71 97.50 +601771.06 5680111.69 97.50 +601771.10 5680553.90 97.50 +601771.15 5680299.09 96.25 +601771.23 5680529.83 97.50 +601771.26 5679003.90 97.50 +601771.34 5680805.99 97.50 +601771.40 5680720.76 97.50 +601771.65 5680735.38 97.50 +601771.79 5678138.83 97.50 +601771.81 5680470.19 97.50 +601771.90 5678148.76 97.50 +601771.98 5677459.16 97.50 +601772.00 5680181.38 97.50 +601772.11 5679937.89 97.50 +601772.19 5677467.63 97.50 +601772.43 5680774.07 97.50 +601772.70 5678158.65 97.50 +601772.71 5680523.33 97.50 +601772.91 5680194.23 96.25 +601772.93 5680257.42 96.25 +601773.10 5679160.54 97.50 +601773.22 5680444.57 96.00 +601773.28 5680463.98 97.50 +601773.29 5678939.42 97.50 +601773.55 5680357.45 96.25 +601773.59 5678643.80 97.50 +601773.60 5677653.46 97.50 +601773.70 5678956.78 97.50 +601773.73 5680216.98 96.25 +601773.88 5678129.20 97.50 +601773.99 5680436.43 97.50 +601774.19 5678168.47 97.50 +601774.23 5680829.41 97.50 +601774.39 5680461.39 96.25 +601774.42 5680658.10 97.50 +601774.45 5676851.66 97.50 +601774.49 5680400.99 96.25 +601774.55 5680681.90 97.50 +601774.62 5679028.41 97.50 +601774.64 5680631.41 97.50 +601774.86 5677491.92 97.50 +601774.89 5679194.28 97.50 +601774.90 5680078.07 97.50 +601774.97 5680225.18 97.50 +601775.26 5680650.01 97.50 +601775.27 5677706.97 97.50 +601775.52 5680062.34 97.50 +601775.86 5678751.49 97.50 +601775.88 5680723.78 97.20 +601775.92 5680369.91 96.25 +601775.96 5678178.19 97.50 +601776.00 5680478.31 97.50 +601776.10 5680783.30 97.50 +601776.21 5680442.21 96.25 +601776.41 5680455.72 96.00 +601776.65 5680498.96 97.50 +601776.67 5678119.66 97.50 +601776.71 5678974.73 97.50 +601776.90 5680797.69 97.50 +601777.02 5677304.29 97.50 +601777.08 5680236.92 97.50 +601777.11 5680765.43 97.50 +601777.31 5678885.22 97.50 +601777.42 5680341.77 96.25 +601777.68 5680488.82 97.50 +601777.73 5680397.77 97.50 +601777.80 5679015.15 97.50 +601777.86 5680713.89 97.50 +601777.99 5680131.73 97.50 +601778.17 5678679.28 97.50 +601778.18 5680514.85 97.50 +601778.20 5676874.73 97.50 +601778.27 5680265.85 96.25 +601778.27 5680728.56 97.50 +601778.32 5680693.27 97.50 +601778.34 5680346.82 95.75 +601778.52 5676656.20 100.00 +601778.60 5680449.95 96.00 +601778.67 5680755.74 97.50 +601778.77 5680745.75 97.50 +601778.85 5680545.23 97.50 +601778.85 5678785.14 97.50 +601778.88 5679037.13 97.50 +601778.88 5680389.17 97.50 +601779.13 5679931.34 97.50 +601779.13 5680420.82 97.50 +601779.27 5680637.07 97.50 +601779.28 5680174.52 97.50 +601779.41 5678110.11 97.50 +601779.60 5680415.13 96.25 +601779.80 5680187.01 96.25 +601779.83 5680538.69 97.50 +601779.91 5680573.36 97.50 +601779.94 5680821.22 97.50 +601779.96 5680351.44 96.25 +601780.01 5676753.34 98.75 +601780.20 5676554.22 101.25 +601780.34 5679961.10 97.50 +601780.40 5680209.54 96.25 +601780.68 5679000.60 97.50 +601780.70 5680587.81 97.50 +601780.73 5680109.41 97.50 +601780.87 5680532.47 97.50 +601780.93 5680555.56 97.50 +601781.03 5678950.14 97.50 +601781.08 5677646.86 97.50 +601781.08 5680300.19 96.25 +601781.18 5676844.35 97.50 +601781.29 5680217.43 97.50 +601781.31 5679154.99 97.50 +601781.36 5680473.17 97.50 +601781.48 5680070.54 97.50 +601781.50 5678186.44 97.50 +601781.67 5679946.45 97.25 +601782.14 5680274.98 96.25 +601782.35 5680521.93 97.50 +601782.51 5677700.25 97.50 +601782.64 5678941.08 97.50 +601782.72 5680467.23 97.50 +601782.79 5680789.65 97.50 +601782.79 5680122.96 97.50 +601782.89 5680775.97 97.50 +601783.14 5677297.05 97.50 +601783.23 5678101.06 97.50 +601783.52 5678644.25 97.50 +601783.53 5680357.90 96.25 +601783.53 5680439.39 97.50 +601783.71 5680677.96 97.50 +601783.83 5680326.43 96.25 +601783.91 5680463.89 96.25 +601783.97 5680455.32 96.00 +601784.10 5680057.27 97.50 +601784.15 5680655.82 97.50 +601784.18 5680403.14 96.25 +601784.35 5679191.73 97.50 +601784.39 5680629.21 97.50 +601784.44 5679026.73 97.50 +601784.78 5677287.24 97.50 +601784.83 5677492.31 97.50 +601785.09 5680648.22 97.50 +601785.41 5680738.73 97.50 +601785.45 5680445.60 96.25 +601785.46 5680722.34 97.50 +601785.51 5678752.46 97.50 +601785.51 5680481.36 97.50 +601785.60 5678879.79 97.50 +601785.75 5676868.26 97.50 +601785.80 5678970.79 97.50 +601785.90 5680370.37 96.25 +601786.08 5680232.60 97.50 +601786.09 5680714.24 97.50 +601786.13 5680179.28 96.25 +601786.14 5680502.13 97.50 +601786.24 5679019.86 97.50 +601786.42 5680167.53 97.50 +601786.83 5680813.98 97.50 +601786.92 5677277.58 97.50 +601786.97 5680347.05 95.75 +601786.98 5680202.02 96.25 +601787.04 5678194.69 97.50 +601787.11 5680342.39 96.25 +601787.14 5680492.05 97.50 +601787.33 5680114.12 97.50 +601787.54 5680399.11 97.50 +601787.58 5680689.71 97.50 +601787.72 5680209.78 97.50 +601787.83 5679928.82 97.50 +601787.91 5676652.92 100.00 +601787.97 5678678.11 97.50 +601788.10 5678781.34 97.50 +601788.15 5680063.12 97.50 +601788.38 5680392.23 97.50 +601788.45 5679955.99 97.50 +601788.48 5680547.91 97.50 +601788.52 5677640.23 97.50 +601788.67 5677692.40 97.50 +601788.79 5680282.32 96.25 +601788.81 5679036.13 97.50 +601788.82 5678092.84 97.50 +601788.89 5676838.14 97.50 +601789.07 5680418.10 96.25 +601789.09 5680421.54 97.50 +601789.10 5680635.26 97.50 +601789.44 5680321.38 96.25 +601789.52 5680541.17 97.50 +601789.66 5680351.36 96.25 +601789.68 5676551.06 101.25 +601789.69 5680768.64 97.50 +601789.76 5680782.49 97.50 +601789.82 5679149.87 97.50 +601789.84 5676751.71 98.75 +601789.88 5680574.12 97.50 +601789.96 5678996.93 97.50 +601790.27 5678142.79 97.50 +601790.56 5680589.49 97.50 +601790.58 5680534.86 97.50 +601790.92 5680555.93 97.50 +601790.92 5680476.08 97.50 +601790.93 5678132.81 97.50 +601790.98 5677268.47 97.50 +601791.01 5680301.22 96.25 +601791.19 5680192.99 96.25 +601791.27 5679184.84 97.50 +601791.74 5678152.65 97.50 +601791.83 5680458.02 96.00 +601792.04 5680470.84 97.50 +601792.44 5680330.08 96.25 +601792.46 5680171.56 96.25 +601792.87 5677012.22 98.75 +601792.93 5680412.32 96.00 +601793.03 5678202.54 97.50 +601793.15 5680442.13 97.50 +601793.17 5680674.72 97.50 +601793.28 5680466.90 96.25 +601793.45 5678644.70 97.50 +601793.46 5678162.50 97.50 +601793.50 5680358.61 96.25 +601793.68 5680160.66 97.50 +601793.71 5678123.31 97.50 +601793.72 5680806.73 97.50 +601793.80 5677002.66 98.75 +601793.83 5680405.49 96.25 +601793.89 5680653.54 97.50 +601793.98 5680733.59 97.50 +601794.12 5680626.94 97.50 +601794.13 5680202.13 97.50 +601794.35 5678874.99 97.50 +601794.47 5680449.51 96.25 +601794.49 5676863.44 97.50 +601794.55 5679935.65 97.50 +601794.71 5680227.55 97.50 +601794.80 5677492.35 97.50 +601794.93 5680646.42 97.50 +601794.94 5680484.66 97.50 +601795.04 5677684.72 97.50 +601795.04 5678755.05 97.50 +601795.13 5678085.21 97.50 +601795.18 5678172.35 97.50 +601795.34 5678968.28 97.50 +601795.59 5680347.29 95.75 +601795.62 5680505.29 97.50 +601795.64 5677633.23 97.50 +601795.88 5680370.19 96.25 +601795.90 5679949.93 97.50 +601796.48 5680761.31 97.50 +601796.64 5680495.17 97.50 +601796.69 5680324.69 96.00 +601796.74 5680775.33 97.50 +601796.80 5680343.00 96.25 +601796.82 5680184.80 96.25 +601796.85 5680402.77 97.50 +601796.90 5680686.18 97.50 +601796.95 5676648.65 100.00 +601797.38 5678114.01 97.50 +601797.44 5679177.05 97.50 +601797.47 5680287.25 96.25 +601797.48 5678778.01 97.50 +601797.61 5677261.89 97.50 +601797.84 5676834.36 97.50 +601797.87 5678678.35 97.50 +601798.33 5680549.18 97.50 +601798.34 5679144.74 97.50 +601798.36 5680392.75 97.50 +601798.59 5680420.92 96.25 +601798.68 5680424.34 97.50 +601798.74 5676994.19 98.75 +601798.78 5679035.79 97.50 +601798.86 5680320.31 96.25 +601798.90 5680633.32 97.50 +601799.07 5676547.63 101.25 +601799.09 5680193.45 97.50 +601799.16 5678993.07 97.50 +601799.36 5680351.54 96.25 +601799.47 5680541.56 97.50 +601799.62 5680164.58 96.25 +601799.62 5676749.86 98.75 +601799.70 5680460.72 96.00 +601799.84 5680574.96 97.50 +601800.26 5678180.80 97.50 +601800.27 5678715.99 98.50 +601800.36 5680799.26 97.50 +601800.38 5680536.57 97.50 +601800.41 5680590.99 97.50 +601800.50 5680478.96 97.50 +601800.71 5678208.85 97.50 +601800.90 5680555.47 97.50 +601801.00 5680301.62 96.25 +601801.02 5679942.09 97.50 +601801.07 5680153.93 97.50 +601801.37 5677677.01 97.50 +601801.60 5680473.70 97.50 +601801.88 5680727.49 97.50 +601801.92 5680329.31 96.25 +601801.99 5680414.32 96.00 +601802.02 5678078.04 97.50 +601802.44 5678105.46 97.50 +601802.58 5677626.07 97.50 +601802.58 5677011.59 98.75 +601802.62 5678869.40 97.50 +601802.63 5680671.49 97.50 +601802.70 5680469.74 96.25 +601802.77 5680444.86 97.50 +601802.98 5680176.94 96.25 +601803.06 5680273.90 96.25 +601803.28 5678646.02 97.50 +601803.28 5680753.97 97.50 +601803.42 5676859.09 97.50 +601803.44 5680407.98 96.25 +601803.46 5680359.32 96.25 +601803.59 5680623.77 97.50 +601803.63 5680268.47 96.25 +601803.64 5680651.36 97.50 +601803.69 5680452.96 96.25 +601803.80 5680223.49 97.50 +601803.89 5680768.36 97.50 +601804.44 5680487.78 97.50 +601804.51 5677356.28 97.50 +601804.73 5677493.19 97.50 +601804.75 5680644.55 97.50 +601804.96 5678755.38 97.50 +601805.04 5680185.43 97.50 +601805.11 5680508.45 97.50 +601805.16 5677365.87 97.50 +601805.32 5678968.09 97.50 +601805.67 5680681.38 97.50 +601805.86 5680369.69 96.25 +601805.99 5676644.38 100.00 +601806.14 5680498.28 97.50 +601806.22 5678188.82 97.50 +601806.40 5680405.63 97.50 +601806.48 5680342.99 96.25 +601806.62 5680157.46 96.25 +601806.73 5679175.28 97.50 +601806.88 5677260.66 97.50 +601806.95 5680290.34 96.25 +601806.98 5680791.77 97.50 +601807.10 5676988.89 98.75 +601807.21 5677668.92 97.50 +601807.24 5679140.36 97.50 +601807.37 5678776.50 97.50 +601807.45 5680463.71 96.00 +601807.55 5678069.92 97.50 +601807.59 5676832.39 97.50 +601807.76 5678679.03 97.50 +601808.24 5680423.21 96.25 +601808.26 5678097.34 97.50 +601808.27 5680548.49 97.50 +601808.34 5680630.03 97.50 +601808.34 5680393.27 97.50 +601808.37 5680426.75 97.50 +601808.39 5677347.17 97.50 +601808.39 5678989.26 97.50 +601808.41 5680320.31 96.25 +601808.57 5676544.52 101.25 +601808.76 5679035.72 97.50 +601808.80 5678954.33 97.50 +601808.83 5680147.64 97.50 +601809.06 5680351.90 96.25 +601809.12 5678214.10 97.50 +601809.36 5680720.87 97.50 +601809.41 5676747.97 98.75 +601809.47 5677618.85 97.50 +601809.47 5680541.65 97.50 +601809.62 5680576.69 97.50 +601809.89 5680169.74 96.25 +601810.03 5677374.32 97.50 +601810.07 5680481.83 97.50 +601810.32 5680589.65 97.50 +601810.32 5680746.90 97.50 +601810.37 5680536.94 97.50 +601810.85 5678863.75 97.50 +601810.89 5680555.01 97.50 +601810.96 5680301.61 96.25 +601811.05 5680416.32 96.00 +601811.18 5680761.51 97.50 +601811.31 5680476.07 97.50 +601811.42 5680328.28 96.25 +601811.63 5677007.80 98.75 +601811.75 5678961.46 97.50 +601811.78 5678060.94 97.50 +601811.81 5678650.37 97.50 +601811.98 5680178.26 97.50 +601812.08 5680668.22 97.50 +601812.19 5680472.34 96.25 +601812.32 5680447.80 97.50 +601812.36 5680457.60 96.25 +601812.36 5676854.74 97.50 +601812.73 5678196.41 97.50 +601812.77 5680619.83 97.50 +601812.78 5680275.22 96.25 +601812.89 5680265.33 96.25 +601812.92 5677338.28 97.50 +601813.04 5677660.83 97.50 +601813.05 5680410.47 96.25 +601813.22 5680220.14 97.50 +601813.41 5680649.23 97.50 +601813.43 5680360.04 96.25 +601813.60 5680150.33 96.25 +601813.64 5680784.32 97.50 +601813.67 5680640.10 97.50 +601813.94 5680490.89 97.50 +601814.16 5677266.70 97.50 +601814.21 5677495.72 97.50 +601814.26 5678752.69 97.50 +601814.42 5676639.06 100.00 +601814.44 5680676.58 97.50 +601814.46 5677610.30 97.50 +601814.58 5680376.56 97.50 +601814.64 5680511.44 97.50 +601814.70 5678971.48 97.50 +601814.76 5678051.46 97.50 +601814.93 5679180.42 97.50 +601815.01 5678090.08 97.50 +601815.07 5680467.03 96.00 +601815.21 5677276.61 97.50 +601815.46 5676983.59 98.75 +601815.48 5680295.01 96.25 +601815.63 5680385.26 97.50 +601815.64 5680501.39 97.50 +601815.84 5680369.20 96.25 +601816.13 5680407.92 97.50 +601816.17 5680342.36 96.25 +601816.25 5679166.54 97.50 +601816.29 5679136.26 97.50 +601816.51 5680141.25 97.50 +601816.68 5680714.06 97.50 +601816.81 5677381.62 97.50 +601816.83 5677286.46 97.50 +601816.88 5680162.61 96.25 +601817.10 5678950.97 97.50 +601817.25 5678774.99 97.50 +601817.32 5677600.75 97.50 +601817.32 5680322.54 96.25 +601817.34 5676830.49 97.50 +601817.57 5678680.25 97.50 +601817.72 5678219.10 97.50 +601817.78 5680626.75 97.50 +601817.89 5680740.37 97.50 +601817.90 5680425.50 96.25 +601817.99 5676541.20 101.25 +601818.16 5680547.09 97.50 +601818.23 5680428.39 97.50 +601818.28 5676743.83 98.75 +601818.28 5680392.59 97.50 +601818.31 5678989.38 97.50 +601818.46 5680754.66 97.50 +601818.51 5678042.25 97.50 +601818.62 5679034.21 97.50 +601818.74 5680352.62 96.25 +601819.02 5678204.18 97.50 +601819.07 5680579.88 97.50 +601819.07 5677296.17 97.50 +601819.08 5678858.09 97.50 +601819.19 5680171.34 97.50 +601819.35 5677330.66 97.50 +601819.42 5678656.75 97.50 +601819.46 5680541.60 97.50 +601819.58 5677653.31 97.50 +601819.58 5679189.06 97.50 +601819.63 5680484.76 97.50 +601819.76 5680587.32 97.50 +601819.78 5679158.87 97.50 +601820.11 5680418.31 96.00 +601820.13 5678966.07 97.50 +601820.22 5680535.29 97.50 +601820.25 5677591.33 97.50 +601820.31 5680776.86 97.50 +601820.53 5677003.47 98.75 +601820.73 5680553.30 97.50 +601820.91 5680462.48 96.25 +601821.00 5680478.54 97.50 +601821.26 5680614.78 97.50 +601821.50 5680664.89 97.50 +601821.59 5676851.06 97.50 +601821.69 5680474.94 96.25 +601821.87 5680450.76 97.50 +601821.98 5678746.46 97.50 +601822.05 5680271.88 96.25 +601822.38 5680146.39 96.25 +601822.42 5680262.82 96.25 +601822.43 5680154.30 96.25 +601822.54 5680635.48 97.50 +601822.62 5676633.34 100.00 +601822.66 5680412.95 96.25 +601822.70 5680470.36 96.00 +601822.70 5680216.98 97.50 +601822.78 5678083.79 97.50 +601823.04 5680706.42 97.50 +601823.09 5676977.33 98.75 +601823.13 5677389.34 97.50 +601823.17 5680647.06 97.50 +601823.21 5680671.79 97.50 +601823.34 5677499.15 97.50 +601823.37 5680360.97 96.25 +601823.41 5680494.08 97.50 +601823.44 5678033.74 97.50 +601823.75 5680373.07 97.50 +601823.88 5678975.37 97.50 +601823.96 5680134.59 97.50 +601824.10 5679172.63 97.50 +601824.25 5680514.19 97.50 +601824.48 5677304.26 97.50 +601825.07 5678225.45 97.50 +601825.24 5680504.18 97.50 +601825.46 5680733.84 97.50 +601825.49 5678211.72 97.50 +601825.64 5679132.88 97.50 +601825.73 5680747.80 97.50 +601825.82 5680368.87 96.25 +601825.83 5677323.07 97.50 +601825.85 5680342.58 96.25 +601825.93 5677583.13 97.50 +601826.06 5680408.91 97.50 +601826.27 5680164.28 97.50 +601826.32 5677645.95 97.50 +601826.39 5676738.06 98.75 +601826.51 5678949.61 97.50 +601826.69 5680622.31 97.50 +601826.97 5680769.41 97.50 +601827.04 5678683.21 97.50 +601827.11 5676828.63 97.50 +601827.13 5678773.49 97.50 +601827.29 5677382.58 97.50 +601827.31 5676537.57 101.25 +601827.39 5677313.39 97.50 +601827.49 5678662.44 97.50 +601827.50 5680428.03 96.25 +601827.60 5678852.89 97.50 +601827.85 5678992.03 97.50 +601827.94 5680545.13 97.50 +601828.00 5680430.45 97.50 +601828.11 5679154.32 97.50 +601828.23 5679031.78 97.50 +601828.42 5680353.35 96.25 +601828.73 5680698.21 97.50 +601829.08 5678739.54 97.50 +601829.11 5680608.77 97.50 +601829.17 5679187.31 97.50 +601829.18 5680487.70 97.50 +601829.18 5680420.24 96.00 +601829.28 5680539.75 97.50 +601829.37 5678076.50 97.50 +601829.47 5680467.29 96.25 +601829.48 5676999.24 98.75 +601829.52 5678967.95 97.50 +601829.67 5678026.00 97.50 +601830.14 5680534.19 97.50 +601830.40 5676970.65 98.75 +601830.48 5680660.60 97.50 +601830.55 5680551.42 97.50 +601830.57 5680481.43 97.50 +601830.76 5680257.82 96.25 +601830.83 5678233.55 97.50 +601830.90 5676847.58 97.50 +601830.97 5680478.20 96.25 +601831.08 5677373.35 97.50 +601831.18 5679179.40 97.50 +601831.27 5678957.83 97.90 +601831.39 5680630.83 97.50 +601831.51 5680269.11 96.25 +601831.53 5676629.10 100.00 +601831.53 5680453.33 97.50 +601831.73 5680128.31 97.50 +601831.97 5680726.26 97.50 +601832.10 5680667.22 97.50 +601832.16 5680213.74 97.50 +601832.31 5680415.14 96.25 +601832.36 5677575.50 97.50 +601832.66 5680497.89 97.50 +601832.71 5680644.07 97.50 +601832.80 5680156.72 97.50 +601832.90 5678979.65 97.50 +601832.91 5680740.84 97.50 +601833.29 5680362.21 96.25 +601833.32 5677499.19 97.50 +601833.60 5677639.32 97.50 +601833.64 5678217.52 97.50 +601833.67 5680373.77 97.50 +601833.86 5680762.17 97.50 +601833.86 5680516.95 97.50 +601834.22 5678067.76 97.50 +601834.25 5676731.94 98.75 +601834.47 5679128.37 97.50 +601834.50 5678753.73 97.50 +601834.62 5679146.94 97.50 +601834.81 5677364.10 97.50 +601834.84 5680506.96 97.50 +601834.85 5680690.30 97.50 +601835.29 5678945.91 97.50 +601835.29 5680617.22 97.50 +601835.53 5680343.34 96.25 +601835.75 5678018.14 97.50 +601835.77 5680369.76 96.25 +601835.96 5678732.40 97.50 +601835.99 5678997.70 97.50 +601836.04 5680409.57 97.50 +601836.12 5678847.70 97.50 +601836.17 5676824.62 97.50 +601836.17 5678241.91 97.50 +601836.41 5678686.43 97.50 +601836.63 5676533.95 101.25 +601837.07 5680430.67 96.25 +601837.12 5678773.61 97.50 +601837.15 5678664.81 97.50 +601837.25 5676993.30 98.75 +601837.43 5679027.90 97.50 +601837.55 5680542.37 97.50 +601837.59 5680433.26 97.50 +601837.78 5680535.90 97.50 +601838.00 5677567.32 97.50 +601838.07 5680604.36 97.50 +601838.08 5680353.07 96.25 +601838.17 5676964.52 98.75 +601838.26 5678964.94 97.50 +601838.26 5680422.18 96.00 +601838.26 5678761.72 97.50 +601838.35 5680718.57 97.50 +601838.44 5677354.80 97.50 +601838.74 5680490.65 97.50 +601838.79 5680470.45 96.25 +601838.83 5678058.89 97.50 +601838.86 5680148.77 97.50 +601839.03 5680655.43 97.50 +601839.65 5680122.21 97.50 +601839.69 5678745.44 97.50 +601840.05 5680484.60 97.50 +601840.09 5680733.88 97.50 +601840.12 5676843.90 97.50 +601840.23 5680481.54 96.25 +601840.27 5680255.24 96.25 +601840.46 5680550.14 97.50 +601840.51 5680626.92 97.50 +601840.63 5678682.53 97.25 +601840.78 5680662.28 97.50 +601840.85 5680265.99 96.25 +601840.86 5678250.68 97.50 +601841.08 5680755.27 97.50 +601841.13 5676626.34 100.00 +601841.23 5680455.76 97.50 +601841.46 5680210.11 97.50 +601841.48 5678674.36 97.25 +601841.55 5678010.07 97.50 +601841.77 5678223.34 97.50 +601841.83 5679121.72 97.50 +601841.95 5680683.31 97.50 +601841.99 5678939.12 97.50 +601842.05 5680501.21 97.50 +601842.11 5676725.82 98.75 +601842.23 5680415.14 96.25 +601842.25 5680641.09 97.50 +601842.62 5677635.07 97.50 +601842.79 5678980.73 97.50 +601842.82 5678725.25 97.50 +601843.05 5677558.72 97.50 +601843.10 5678049.85 97.50 +601843.16 5678957.28 97.50 +601843.21 5680363.34 96.25 +601843.28 5677498.75 97.50 +601843.46 5680375.84 97.50 +601843.49 5680519.51 97.50 +601843.66 5679143.64 97.50 +601843.71 5677347.66 97.50 +601844.08 5680612.51 97.50 +601844.12 5680510.52 97.50 +601844.30 5680258.62 96.00 +601844.41 5676986.46 98.75 +601844.69 5680710.84 97.50 +601844.82 5678842.84 97.50 +601845.08 5680344.86 96.25 +601845.14 5679001.44 97.50 +601845.17 5676820.39 97.50 +601845.74 5680370.27 96.25 +601845.86 5679022.60 97.50 +601845.95 5678687.80 97.50 +601845.96 5676530.36 101.25 +601846.03 5680409.57 97.50 +601846.05 5678737.73 97.50 +601846.07 5676958.56 98.75 +601846.58 5680226.85 97.50 +601846.59 5678664.54 97.50 +601846.88 5678258.39 97.50 +601846.93 5680726.60 97.50 +601846.96 5680431.08 96.25 +601846.96 5678948.50 97.50 +601846.97 5680142.99 97.50 +601847.12 5678773.84 97.50 +601847.23 5680435.89 97.50 +601847.24 5680539.93 97.50 +601847.53 5680422.18 96.00 +601847.59 5680650.26 97.50 +601847.63 5680351.80 96.25 +601847.67 5678764.44 97.50 +601847.84 5680602.25 97.50 +601848.01 5678041.19 97.50 +601848.13 5680748.17 97.50 +601848.22 5680473.28 96.25 +601848.33 5680493.45 97.50 +601848.48 5678002.95 97.50 +601848.54 5677550.39 97.50 +601848.63 5680117.82 97.50 +601848.82 5677627.39 97.50 +601848.96 5678230.14 97.50 +601848.97 5676839.38 97.50 +601849.13 5679114.97 97.50 +601849.25 5678939.78 97.50 +601849.26 5680656.98 97.50 +601849.40 5680676.64 97.50 +601849.48 5680487.90 97.50 +601849.68 5678685.72 97.25 +601849.76 5680483.96 96.25 +601849.78 5680252.66 96.25 +601849.89 5676719.59 98.75 +601850.18 5678718.60 97.50 +601850.28 5680624.81 97.50 +601850.38 5680263.77 96.25 +601850.40 5680549.06 97.50 +601850.50 5680205.83 97.50 +601850.53 5680636.15 97.50 +601850.74 5676623.57 100.00 +601850.86 5680702.98 97.50 +601850.93 5680458.18 97.50 +601851.02 5680516.63 97.50 +601851.31 5678672.58 97.25 +601851.59 5680232.91 97.50 +601851.85 5680503.18 97.50 +601852.16 5680415.14 96.25 +601852.49 5680218.99 97.50 +601852.50 5678730.09 97.50 +601852.52 5676981.00 98.75 +601852.63 5680365.84 96.25 +601852.68 5678982.06 97.50 +601853.24 5679015.92 97.50 +601853.25 5677498.70 97.50 +601853.32 5680374.23 97.50 +601853.41 5680608.91 97.50 +601853.58 5677346.23 97.50 +601853.58 5679143.11 97.50 +601853.60 5678971.16 97.50 +601853.72 5680719.25 97.50 +601853.87 5678962.55 97.50 +601853.90 5680257.29 96.00 +601854.00 5678838.91 97.50 +601854.04 5678033.22 97.50 +601854.18 5676952.88 98.75 +601854.28 5677619.09 97.50 +601854.31 5676816.48 97.50 +601854.31 5678265.00 97.50 +601854.31 5678238.59 97.50 +601854.69 5677542.60 97.50 +601854.73 5678999.88 97.50 +601855.13 5680741.04 97.50 +601855.25 5680137.39 97.50 +601855.32 5676526.87 101.25 +601855.79 5678686.57 97.50 +601855.79 5680644.56 97.50 +601855.93 5676965.55 99.00 +601855.94 5678661.41 97.50 +601856.03 5680409.57 97.50 +601856.34 5680628.22 97.50 +601856.35 5679108.15 97.50 +601856.49 5678248.25 97.50 +601856.80 5680422.08 96.00 +601856.88 5680431.20 96.25 +601856.93 5680537.54 97.50 +601857.03 5680670.19 97.50 +601857.04 5680437.82 97.50 +601857.04 5680695.12 97.50 +601857.09 5678774.55 97.50 +601857.29 5680112.84 97.50 +601857.58 5680600.01 97.50 +601857.60 5676713.28 98.75 +601857.63 5678765.36 97.50 +601857.76 5680651.71 97.50 +601857.80 5678712.26 97.50 +601857.82 5676834.85 97.50 +601857.88 5679130.89 97.50 +601857.93 5680496.25 97.50 +601857.95 5680474.67 96.25 +601858.30 5679123.98 97.50 +601858.35 5677609.97 97.50 +601859.04 5678722.52 97.50 +601859.18 5680490.30 97.50 +601859.25 5678257.68 97.50 +601859.30 5680250.09 96.25 +601859.34 5680486.20 96.25 +601859.56 5678684.25 97.25 +601859.58 5680201.65 97.50 +601860.14 5680262.58 96.25 +601860.31 5680547.74 97.50 +601860.32 5680461.58 97.50 +601860.37 5680711.80 97.50 +601860.44 5679009.01 97.50 +601860.55 5676622.33 100.00 +601860.56 5678942.36 97.50 +601860.90 5680732.91 97.50 +601860.93 5678025.99 97.50 +601861.03 5680213.79 97.50 +601861.17 5678671.02 97.25 +601861.38 5680368.84 97.50 +601861.43 5680231.38 97.50 +601861.48 5676976.78 98.75 +601861.65 5680505.16 97.50 +601861.71 5677535.52 97.50 +601862.07 5676810.62 97.50 +601862.09 5680415.14 96.25 +601862.30 5676947.22 98.75 +601862.34 5677502.39 97.50 +601862.41 5677600.86 97.50 +601862.42 5678981.20 97.50 +601862.46 5678270.68 97.50 +601862.70 5678993.90 97.50 +601862.73 5680605.30 97.50 +601862.98 5678974.09 97.50 +601863.07 5677347.41 97.50 +601863.08 5679141.92 97.50 +601863.17 5678834.98 97.50 +601863.22 5680687.25 97.50 +601863.30 5679101.04 97.50 +601863.44 5680255.61 96.00 +601863.57 5678960.18 97.50 +601863.61 5680131.89 97.50 +601863.83 5680638.63 97.50 +601864.88 5680664.02 97.50 +601865.05 5676524.56 101.25 +601865.31 5676706.97 98.75 +601865.39 5678684.26 97.50 +601865.61 5680107.31 97.50 +601865.83 5678660.43 97.50 +601865.90 5678715.30 97.50 +601865.91 5678706.79 97.50 +601866.03 5680409.44 97.50 +601866.08 5680421.98 96.00 +601866.25 5680533.93 97.50 +601866.28 5680646.48 97.50 +601866.30 5680703.76 97.50 +601866.33 5680539.33 97.50 +601866.39 5680724.56 97.50 +601866.60 5678263.52 97.50 +601866.69 5679118.77 97.50 +601866.70 5678946.86 97.50 +601866.79 5680430.66 96.25 +601866.82 5677591.92 97.50 +601866.86 5676830.74 97.50 +601866.89 5680439.24 97.50 +601867.06 5678775.31 97.50 +601867.08 5680596.90 97.50 +601867.21 5679134.03 97.50 +601867.50 5680499.14 97.50 +601867.60 5678766.17 97.50 +601867.72 5680475.85 96.25 +601867.78 5679002.25 97.50 +601868.09 5680361.45 97.50 +601868.18 5677527.92 97.50 +601868.45 5678937.08 97.50 +601868.48 5678019.49 97.50 +601868.71 5680207.43 97.50 +601868.74 5677509.27 97.50 +601868.83 5676803.33 97.50 +601868.89 5680492.70 97.50 +601868.92 5678680.80 97.25 +601868.95 5680248.30 96.25 +601869.00 5680488.06 96.25 +601869.29 5678277.70 97.50 +601869.36 5680200.16 97.50 +601869.39 5680679.39 97.50 +601869.63 5680259.94 96.25 +601869.70 5680465.06 97.50 +601870.25 5676972.21 98.75 +601870.26 5680547.45 97.50 +601870.37 5680226.91 97.50 +601870.54 5676622.56 100.00 +601870.78 5678668.32 97.25 +601871.16 5679095.07 97.50 +601871.25 5677518.53 97.50 +601871.31 5680125.54 97.50 +601871.45 5680507.13 97.50 +601871.48 5678993.77 97.50 +601871.51 5677352.32 97.50 +601871.64 5676943.93 98.75 +601871.66 5677583.20 97.50 +601872.01 5680415.14 96.25 +601872.07 5680716.33 97.50 +601872.17 5680602.03 97.50 +601872.23 5680695.71 97.50 +601872.26 5680633.26 97.50 +601872.41 5678831.19 97.50 +601872.97 5680253.84 96.00 +601873.08 5680313.00 97.50 +601873.13 5680544.54 97.50 +601873.18 5679111.33 97.50 +601873.27 5680658.58 97.50 +601873.51 5678959.40 97.50 +601873.71 5680101.47 97.50 +601874.04 5676702.28 98.75 +601874.56 5678680.77 97.50 +601874.59 5676521.57 101.25 +601874.62 5680353.88 97.50 +601874.84 5678710.81 97.50 +601874.92 5680641.50 97.50 +601874.98 5680535.98 97.50 +601875.09 5678906.57 97.50 +601875.19 5678285.71 97.50 +601875.27 5678915.96 97.50 +601875.33 5678703.69 97.50 +601875.36 5680421.88 96.00 +601875.57 5680671.53 97.50 +601875.59 5676796.04 97.50 +601875.71 5678263.80 97.50 +601875.72 5678659.44 97.50 +601875.91 5676826.64 97.50 +601875.97 5680531.68 97.50 +601876.02 5680409.26 97.50 +601876.15 5679123.97 97.50 +601876.25 5678295.48 97.50 +601876.26 5680593.04 97.50 +601876.48 5678305.42 97.50 +601876.49 5678315.35 97.50 +601876.51 5677574.48 97.50 +601876.52 5680319.80 97.50 +601876.58 5678945.63 97.50 +601876.63 5678013.70 97.50 +601876.68 5680429.85 96.25 +601876.89 5680439.12 97.50 +601876.98 5680502.28 97.50 +601876.99 5678776.46 97.50 +601877.41 5678325.25 97.50 +601877.45 5680565.36 97.50 +601877.53 5680476.57 96.25 +601877.57 5678766.89 97.50 +601877.65 5678675.96 97.25 +601877.90 5678934.12 97.50 +601878.08 5680687.60 97.50 +601878.40 5677359.54 97.50 +601878.66 5680494.77 97.50 +601878.67 5680489.92 96.25 +601878.69 5680118.83 97.50 +601878.77 5680247.48 96.25 +601878.86 5676967.31 98.75 +601878.93 5680468.88 97.50 +601879.14 5680709.33 97.50 +601879.24 5680257.76 96.25 +601879.43 5679089.60 97.50 +601879.47 5680222.78 97.50 +601879.48 5678897.63 97.50 +601880.02 5678334.79 97.50 +601880.04 5678924.67 97.50 +601880.24 5680547.99 97.50 +601880.31 5677609.76 98.75 +601880.54 5676622.78 100.00 +601880.60 5680570.23 97.50 +601880.63 5678666.74 97.25 +601880.79 5680628.04 97.50 +601880.86 5679115.26 97.50 +601880.94 5679105.53 97.50 +601880.98 5676940.64 98.75 +601881.24 5677426.23 97.50 +601881.33 5680508.67 97.50 +601881.35 5680652.71 97.50 +601881.36 5677565.76 97.50 +601881.39 5680346.52 97.50 +601881.40 5680308.48 97.50 +601881.42 5677619.67 98.75 +601881.46 5679127.06 97.50 +601881.77 5680599.24 97.50 +601881.80 5677416.27 97.50 +601881.83 5677600.10 98.75 +601881.88 5678828.04 97.50 +601881.91 5680414.39 96.25 +601881.92 5676788.39 97.50 +601882.35 5678300.19 97.25 +601882.42 5680546.09 97.50 +601882.49 5680664.33 97.50 +601882.70 5678955.75 97.50 +601882.71 5678256.82 97.50 +601882.81 5680097.56 97.50 +601882.83 5677629.50 98.75 +601883.05 5680541.26 97.25 +601883.05 5677435.56 97.50 +601883.05 5676698.02 98.75 +601883.08 5678290.69 97.25 +601883.24 5678344.19 97.50 +601883.30 5677085.39 97.50 +601883.52 5677406.46 97.50 +601883.87 5678309.70 97.25 +601883.90 5680679.47 97.50 +601884.05 5678007.04 97.50 +601884.12 5676518.55 101.25 +601884.12 5677367.62 97.50 +601884.14 5678707.43 97.50 +601884.15 5680637.65 97.50 +601884.44 5680535.70 97.50 +601884.45 5678680.15 97.50 +601884.61 5676821.84 97.50 +601884.79 5677590.58 98.75 +601884.82 5678281.23 97.25 +601884.91 5680111.00 97.50 +601884.92 5678701.27 97.50 +601884.98 5680588.15 97.50 +601885.51 5677396.68 97.50 +601885.62 5678658.90 97.50 +601885.81 5680529.90 97.50 +601885.92 5677094.19 97.50 +601885.97 5680408.30 97.50 +601886.03 5678942.80 97.50 +601886.20 5680702.27 97.50 +601886.21 5677557.04 97.50 +601886.21 5680561.90 97.50 +601886.22 5679082.34 97.50 +601886.36 5680320.65 97.50 +601886.44 5677638.79 98.75 +601886.51 5680428.49 96.25 +601886.71 5677386.81 97.50 +601886.86 5680503.82 97.50 +601886.89 5680438.98 97.50 +601886.90 5678777.79 97.50 +601886.93 5677376.84 97.50 +601887.27 5678891.88 97.50 +601887.36 5678674.88 97.25 +601887.36 5680476.84 96.25 +601887.37 5678353.22 97.50 +601887.39 5679108.02 97.50 +601887.46 5678768.12 97.50 +601887.47 5676962.44 98.75 +601888.08 5678272.16 97.25 +601888.13 5678248.42 97.50 +601888.15 5679119.78 97.50 +601888.17 5680248.78 96.25 +601888.30 5680339.29 97.50 +601888.30 5676780.77 97.50 +601888.43 5680471.67 97.50 +601888.50 5680490.01 96.25 +601888.51 5680496.50 97.50 +601888.65 5677443.81 97.50 +601888.73 5680101.80 97.50 +601888.78 5680219.16 97.50 +601888.81 5680255.46 96.25 +601888.82 5680646.07 97.50 +601889.31 5680622.82 97.50 +601889.46 5677078.72 97.50 +601889.56 5680657.26 97.50 +601889.60 5678316.93 97.25 +601889.71 5680671.34 97.50 +601890.05 5677648.08 98.75 +601890.10 5678949.30 97.50 +601890.11 5680569.03 97.50 +601890.21 5680548.13 97.50 +601890.37 5676937.50 98.75 +601890.54 5676623.01 100.00 +601890.55 5678667.78 97.25 +601890.63 5680594.85 97.50 +601890.71 5680564.26 97.25 +601891.07 5677548.33 97.50 +601891.10 5677999.95 97.50 +601891.21 5680510.18 97.50 +601891.32 5680307.26 97.50 +601891.33 5678263.09 97.25 +601891.35 5678824.88 97.50 +601891.68 5678362.18 97.50 +601891.79 5680413.46 96.25 +601891.80 5680545.20 97.50 +601891.81 5680631.33 97.50 +601892.28 5676694.58 98.75 +601892.29 5678239.35 97.50 +601892.91 5680694.86 97.50 +601893.38 5676817.17 97.50 +601893.53 5676515.23 101.25 +601893.66 5680583.19 97.50 +601893.90 5680535.68 97.50 +601893.98 5678705.67 97.50 +601894.01 5679111.76 97.50 +601894.11 5677589.91 98.75 +601894.15 5678773.68 97.50 +601894.20 5677657.12 98.75 +601894.37 5678680.15 97.50 +601894.38 5678835.28 97.50 +601894.56 5677098.42 97.50 +601894.70 5677451.74 97.50 +601894.71 5678699.63 97.50 +601894.83 5676773.28 97.50 +601895.32 5677539.41 97.50 +601895.51 5680332.41 97.50 +601895.55 5678659.46 97.50 +601895.68 5680560.10 97.50 +601895.71 5680528.60 97.50 +601895.79 5680663.40 97.50 +601895.84 5680638.99 97.50 +601895.86 5678254.71 97.25 +601895.92 5680407.34 97.50 +601895.96 5680649.68 97.50 +601896.06 5680318.46 97.50 +601896.34 5676958.03 98.75 +601896.35 5680427.12 96.25 +601896.56 5677529.51 97.50 +601896.60 5678230.40 97.50 +601896.61 5676793.02 97.50 +601896.75 5680504.12 97.50 +601896.79 5678888.89 97.50 +601896.82 5680685.83 97.50 +601896.83 5680437.99 97.50 +601896.89 5678827.99 97.50 +601896.99 5678370.58 97.50 +601897.04 5678314.82 97.25 +601897.19 5680477.02 96.25 +601897.31 5678675.51 97.25 +601897.80 5677519.61 97.50 +601898.13 5680618.10 97.50 +601898.14 5680488.40 96.25 +601898.17 5680494.76 97.50 +601898.17 5680215.72 97.50 +601898.28 5677993.00 97.50 +601898.36 5680472.69 97.50 +601898.60 5677810.12 98.75 +601898.68 5677550.58 98.75 +601898.82 5677076.41 97.50 +601898.96 5677665.88 98.75 +601898.97 5677800.16 98.75 +601898.98 5680589.35 97.50 +601899.01 5677509.71 97.50 +601899.01 5680624.46 97.50 +601899.35 5677460.28 97.50 +601899.38 5676799.66 97.50 +601899.40 5677820.06 98.75 +601899.44 5677790.21 98.75 +601899.50 5680566.87 97.50 +601899.54 5679103.51 97.50 +601899.73 5677089.46 97.25 +601899.74 5680676.27 97.50 +601899.77 5676934.40 98.75 +601900.12 5677499.79 97.50 +601900.13 5680546.88 97.50 +601900.25 5677559.54 98.75 +601900.45 5678669.13 97.25 +601900.50 5676623.64 100.00 +601900.55 5677540.79 98.75 +601900.78 5678839.49 97.50 +601900.81 5677780.38 98.75 +601900.82 5678821.72 97.50 +601900.86 5680509.41 97.50 +601901.03 5677470.12 97.50 +601901.04 5680543.15 97.50 +601901.04 5677829.81 98.75 +601901.09 5680641.09 97.50 +601901.23 5677489.88 97.50 +601901.31 5680307.23 97.50 +601901.50 5680411.40 96.25 +601901.60 5678246.98 97.25 +601901.91 5680655.50 97.50 +601901.96 5678306.54 97.25 +601902.18 5680577.97 97.50 +601902.20 5676693.64 98.75 +601902.23 5680631.29 97.50 +601902.35 5677479.96 97.50 +601902.40 5678378.90 97.50 +601902.50 5676510.83 101.25 +601902.56 5677531.03 98.75 +601902.79 5680537.38 97.50 +601902.82 5676814.06 97.50 +601902.94 5678222.67 97.50 +601903.21 5677770.71 98.75 +601903.47 5676770.04 97.50 +601903.73 5677674.63 98.75 +601903.73 5678703.52 97.50 +601903.82 5680326.97 97.50 +601903.92 5678297.11 97.25 +601903.95 5677100.58 97.50 +601904.07 5677589.69 98.75 +601904.13 5680667.34 97.50 +601904.25 5678697.06 97.50 +601904.27 5678679.69 97.50 +601904.33 5677839.23 98.75 +601904.39 5678834.25 97.75 +601904.39 5676786.83 97.50 +601904.62 5676952.64 98.75 +601904.89 5678827.87 97.50 +601904.91 5679095.15 97.50 +601905.06 5680560.48 97.50 +601905.29 5678130.53 97.50 +601905.40 5678658.90 97.50 +601905.59 5680315.48 97.50 +601905.60 5678287.63 97.25 +601905.61 5677761.03 98.75 +601905.70 5680528.31 97.50 +601905.78 5680424.60 96.25 +601905.87 5680406.38 97.50 +601905.96 5677986.60 97.50 +601906.19 5678120.57 97.50 +601906.19 5680632.49 97.50 +601906.23 5680501.88 97.50 +601906.37 5678886.10 97.50 +601906.45 5678140.19 97.50 +601906.62 5680674.19 98.75 +601906.73 5680210.66 97.50 +601906.73 5680683.18 98.75 +601906.75 5680622.38 97.50 +601906.78 5680437.01 97.50 +601906.79 5680255.12 97.50 +601906.87 5680478.53 96.25 +601906.90 5677522.20 98.75 +601906.97 5678278.10 97.25 +601907.07 5678674.23 97.25 +601907.27 5680583.78 97.50 +601907.33 5680485.28 96.25 +601907.43 5677566.41 98.75 +601907.62 5677848.64 98.75 +601907.68 5680491.75 97.50 +601907.92 5680647.51 97.50 +601908.01 5677751.36 98.75 +601908.02 5677079.16 97.50 +601908.06 5677683.57 98.75 +601908.08 5678239.88 97.25 +601908.22 5680471.02 97.50 +601908.67 5678214.48 97.50 +601908.67 5678110.93 97.50 +601908.96 5680262.73 97.50 +601909.04 5676930.93 98.75 +601909.05 5680658.64 97.50 +601909.24 5678841.23 97.50 +601909.31 5676799.37 97.50 +601909.47 5678268.83 97.25 +601909.70 5680504.88 97.50 +601909.86 5680544.99 97.50 +601909.96 5678666.99 97.25 +601909.98 5678385.32 97.50 +601910.09 5679086.67 97.50 +601910.29 5678818.57 97.50 +601910.33 5680613.11 97.50 +601910.42 5676624.89 100.00 +601910.49 5680665.62 98.75 +601910.60 5680572.59 97.50 +601910.74 5677741.77 98.75 +601910.93 5680623.69 97.50 +601910.93 5677693.11 98.75 +601911.05 5680304.98 97.50 +601911.15 5676779.60 97.50 +601911.16 5676505.84 101.25 +601911.28 5678101.32 97.50 +601911.33 5680410.14 96.25 +601911.71 5678091.33 97.50 +601912.12 5678148.36 97.50 +601912.12 5676692.70 98.75 +601912.22 5677513.78 98.75 +601912.29 5676811.09 97.50 +601912.49 5676946.65 98.75 +601912.58 5678259.71 97.25 +601912.66 5676771.25 97.50 +601913.03 5679077.30 97.50 +601913.18 5680323.49 97.50 +601913.26 5678700.49 97.50 +601913.31 5678363.69 97.25 +601913.36 5678829.50 97.50 +601913.41 5677098.70 97.50 +601913.43 5678081.52 97.50 +601913.45 5680603.62 97.50 +601913.49 5677732.19 98.75 +601913.50 5678693.52 97.50 +601913.56 5678677.10 97.50 +601913.59 5680495.13 97.50 +601913.65 5677980.21 97.50 +601913.66 5680639.32 97.50 +601913.77 5677587.70 98.75 +601913.77 5680649.83 97.50 +601913.80 5677702.66 98.75 +601913.84 5677856.21 98.75 +601914.11 5680248.45 97.50 +601914.39 5680419.66 96.25 +601914.41 5678206.29 97.50 +601914.56 5680681.55 98.75 +601914.72 5678656.07 97.50 +601914.82 5677722.39 98.75 +601915.05 5677712.43 98.75 +601915.09 5678233.27 97.25 +601915.11 5677572.77 98.75 +601915.14 5679067.59 97.50 +601915.28 5680205.52 97.50 +601915.39 5680313.53 97.50 +601915.45 5680578.02 97.50 +601915.46 5680526.78 97.50 +601915.56 5680657.73 98.75 +601915.64 5680404.37 97.50 +601915.76 5678836.50 97.50 +601916.14 5678884.07 97.50 +601916.20 5677504.94 98.75 +601916.21 5678250.80 97.25 +601916.42 5677494.97 98.75 +601916.48 5680615.42 97.50 +601916.58 5677082.70 97.50 +601916.60 5678671.42 97.25 +601916.65 5677485.01 98.75 +601916.68 5680487.39 97.50 +601916.75 5680436.21 97.50 +601917.25 5678372.47 97.25 +601917.36 5678356.88 97.25 +601917.46 5678391.83 97.50 +601917.82 5680468.27 97.50 +601918.04 5680499.37 97.50 +601918.11 5676931.64 98.75 +601918.55 5680595.06 97.50 +601918.60 5678662.02 97.25 +601918.60 5680641.09 97.50 +601918.64 5680264.48 97.50 +601918.73 5680566.97 97.50 +601918.78 5676939.33 98.75 +601918.86 5678155.73 97.50 +601918.92 5680540.76 97.50 +601918.93 5680663.55 99.00 +601919.18 5677475.39 98.75 +601919.21 5676798.47 97.50 +601919.27 5676500.12 101.25 +601919.40 5678074.58 97.50 +601919.41 5680631.15 97.50 +601919.50 5677091.88 97.50 +601919.76 5678815.41 97.50 +601919.79 5678241.86 97.25 +601919.98 5680411.82 96.25 +601920.16 5677580.86 98.75 +601920.35 5676626.07 100.00 +601920.43 5679059.29 97.50 +601920.48 5680674.27 98.75 +601920.59 5680302.01 97.50 +601920.63 5678198.47 97.50 +601920.87 5677863.28 98.75 +601921.04 5680650.10 98.75 +601921.04 5678232.64 97.25 +601921.61 5677974.18 97.50 +601921.76 5680570.77 97.50 +601921.82 5678400.76 97.50 +601921.87 5677465.79 98.75 +601922.04 5676691.74 98.75 +601922.07 5676809.30 97.50 +601922.09 5678672.04 97.50 +601922.21 5678303.69 97.50 +601922.32 5680319.67 97.50 +601922.37 5678689.08 97.50 +601922.41 5678696.56 97.50 +601922.45 5680491.83 97.50 +601922.58 5678293.70 97.50 +601922.59 5680607.51 97.50 +601922.63 5678380.57 97.25 +601922.69 5678313.64 97.50 +601922.73 5678650.19 97.50 +601923.26 5680106.79 96.25 +601923.31 5678283.73 97.50 +601923.49 5680245.30 97.50 +601924.01 5678323.55 97.50 +601924.16 5680200.92 97.50 +601924.49 5678273.80 97.50 +601924.70 5680633.17 97.50 +601924.83 5680523.33 97.50 +601924.84 5677456.29 98.75 +601925.13 5680482.26 97.50 +601925.24 5678880.15 97.50 +601925.29 5680401.78 97.50 +601925.29 5680313.48 97.50 +601925.32 5678666.54 97.25 +601925.32 5680623.08 97.50 +601925.35 5678333.46 97.50 +601925.45 5680097.53 96.25 +601925.90 5678162.82 97.50 +601926.10 5680666.74 98.75 +601926.18 5678409.69 97.50 +601926.18 5679051.18 97.50 +601926.19 5680588.76 97.50 +601926.24 5678190.27 97.50 +601926.26 5676492.97 101.25 +601926.72 5678356.23 97.25 +601926.73 5680435.61 97.50 +601926.76 5678656.31 97.25 +601927.08 5680535.18 97.50 +601927.62 5680644.52 98.75 +601927.64 5680467.62 97.50 +601927.81 5680088.30 96.25 +601928.01 5677397.41 98.75 +601928.40 5678264.66 97.50 +601928.52 5677407.36 98.75 +601928.55 5677447.04 98.75 +601928.60 5680264.22 97.50 +601928.68 5677869.40 98.75 +601928.82 5677387.60 98.75 +601929.03 5677417.32 98.75 +601929.09 5678811.89 97.50 +601929.10 5676797.50 97.50 +601929.21 5678074.01 97.50 +601929.38 5677427.28 98.75 +601929.44 5677437.25 98.75 +601929.48 5678387.53 97.25 +601929.64 5680110.41 96.25 +601929.86 5680600.70 97.50 +601929.98 5680098.28 96.00 +601930.01 5680298.68 97.50 +601930.01 5678171.24 97.50 +601930.18 5680658.27 98.75 +601930.34 5676626.30 100.00 +601930.39 5678181.17 97.50 +601930.51 5677970.34 97.50 +601930.54 5678418.62 97.50 +601930.56 5678666.87 97.50 +601930.75 5678644.31 97.50 +601930.80 5680625.25 97.50 +601931.01 5678341.70 97.50 +601931.06 5680079.39 96.25 +601931.30 5678692.40 97.50 +601931.39 5678685.02 97.50 +601931.39 5680474.71 97.50 +601931.46 5677377.98 98.75 +601931.76 5680615.44 97.50 +601931.90 5676808.05 97.50 +601931.96 5676690.79 98.75 +601932.67 5678255.62 97.50 +601932.87 5680421.40 97.50 +601933.11 5680517.73 97.50 +601933.15 5679044.57 97.50 +601933.23 5680243.03 97.50 +601933.53 5680649.78 98.75 +601933.89 5680198.90 97.50 +601933.94 5678661.52 97.25 +601934.08 5678875.52 97.50 +601934.10 5677368.37 98.75 +601934.42 5680102.38 96.25 +601934.45 5678649.95 97.25 +601934.49 5680397.89 97.50 +601934.50 5680528.48 97.50 +601934.64 5676487.86 101.25 +601934.65 5680412.49 97.50 +601934.69 5680583.52 97.50 +601934.90 5678427.56 97.50 +601934.92 5680533.66 97.50 +601935.19 5678360.80 97.25 +601935.24 5678395.41 97.25 +601935.81 5680093.02 96.25 +601936.16 5680083.52 96.25 +601936.70 5678349.92 97.50 +601936.70 5680435.01 97.50 +601936.73 5677358.76 98.75 +601936.94 5677874.97 98.75 +601936.99 5680306.62 97.50 +601937.42 5680594.16 97.50 +601937.46 5678246.91 97.50 +601937.47 5680292.11 97.50 +601937.65 5680538.61 97.50 +601937.79 5680618.13 97.50 +601938.26 5678807.94 97.50 +601938.29 5680607.87 97.50 +601938.32 5680262.21 97.50 +601938.38 5678638.00 97.50 +601938.84 5678661.43 97.50 +601938.87 5678075.90 97.50 +601939.03 5676797.08 97.50 +601939.14 5677953.41 97.25 +601939.25 5678436.49 97.50 +601939.90 5678403.98 97.25 +601940.33 5676626.46 100.00 +601940.48 5678368.50 97.25 +601940.49 5677969.70 97.50 +601940.71 5678545.73 97.50 +601940.87 5678682.09 97.50 +601941.06 5677349.85 98.75 +601941.11 5678690.45 97.50 +601941.16 5678555.63 97.50 +601941.21 5679040.22 97.50 +601941.34 5680147.39 97.50 +601941.37 5676952.20 97.50 +601941.49 5680139.50 97.50 +601941.49 5680424.97 97.50 +601941.53 5680512.38 97.50 +601941.55 5678535.90 97.50 +601941.84 5676807.91 97.50 +601941.91 5676690.38 98.75 +601942.21 5680314.10 97.50 +601942.23 5678854.05 97.50 +601942.29 5678565.51 97.50 +601942.30 5678656.05 97.25 +601942.32 5680522.29 97.50 +601942.40 5678358.14 97.50 +601942.48 5680528.02 97.50 +601942.58 5678644.15 97.25 +601942.59 5680299.33 97.50 +601942.97 5676942.71 97.50 +601942.99 5680240.91 97.50 +601943.00 5680407.18 97.50 +601943.14 5678871.44 97.50 +601943.25 5678148.56 97.50 +601943.36 5680578.54 97.50 +601943.36 5676960.62 97.50 +601943.48 5678158.47 97.50 +601943.48 5678138.57 97.50 +601943.61 5678445.42 97.50 +601943.64 5680393.86 97.50 +601943.80 5680197.63 97.50 +601943.85 5676483.98 101.25 +601943.89 5678239.25 97.50 +601943.94 5678128.61 97.50 +601944.30 5678377.49 97.25 +601944.47 5680532.40 97.25 +601944.83 5680600.31 97.50 +601944.94 5680587.56 97.50 +601944.94 5680285.47 97.50 +601945.04 5676933.30 97.50 +601945.04 5680611.25 97.50 +601945.14 5678575.01 97.50 +601945.20 5678630.77 97.50 +601945.21 5677880.54 98.75 +601945.35 5678845.82 97.50 +601945.52 5677957.57 97.25 +601945.60 5677341.02 98.75 +601945.67 5678526.85 97.50 +601946.00 5678411.54 97.25 +601946.22 5677947.76 97.25 +601946.68 5680434.39 97.50 +601946.69 5679032.05 97.50 +601946.77 5678119.01 97.50 +601946.77 5680535.98 97.50 +601946.82 5678655.54 97.50 +601946.82 5678081.62 97.50 +601947.33 5678167.70 97.50 +601947.42 5678803.98 97.50 +601947.60 5680258.50 97.50 +601947.67 5676924.03 97.50 +601947.85 5680132.76 97.50 +601948.21 5678584.46 97.50 +601948.29 5678366.20 97.50 +601948.65 5677331.53 98.75 +601948.67 5678386.14 97.25 +601948.89 5678453.83 97.50 +601948.96 5676796.72 97.50 +601949.38 5676943.84 97.25 +601949.59 5678109.42 97.50 +601949.65 5679022.57 97.50 +601949.69 5678637.20 97.25 +601949.95 5677966.51 97.50 +601950.15 5676624.55 100.00 +601950.29 5678622.34 97.50 +601950.33 5678231.60 97.50 +601950.38 5678650.21 97.25 +601950.42 5680145.81 97.50 +601950.47 5678679.62 97.50 +601950.64 5680516.75 97.50 +601950.67 5680508.33 97.50 +601950.73 5676914.99 97.50 +601950.80 5678857.59 97.50 +601950.88 5680294.21 97.50 +601951.04 5678689.43 97.50 +601951.14 5677888.45 98.75 +601951.26 5680423.30 97.50 +601951.28 5678593.91 97.50 +601951.32 5680524.92 97.50 +601951.37 5678090.31 97.50 +601951.71 5676959.30 97.50 +601951.77 5680573.17 97.50 +601951.77 5678519.42 97.50 +601951.78 5676808.03 97.50 +601951.87 5680314.65 97.50 +601951.87 5676690.23 98.75 +601952.09 5680403.01 97.50 +601952.25 5680604.32 97.50 +601952.27 5678099.79 97.50 +601952.48 5680594.26 97.50 +601952.56 5680238.16 97.50 +601952.62 5680279.07 97.50 +601952.67 5680389.57 97.50 +601952.67 5680124.23 97.50 +601952.76 5678868.74 97.50 +601952.90 5677322.59 98.75 +601953.01 5680581.75 97.50 +601953.12 5676480.22 101.25 +601953.39 5680134.02 97.25 +601953.44 5678603.57 97.50 +601953.45 5676934.83 97.25 +601953.47 5678840.02 97.50 +601953.53 5678175.25 97.50 +601953.56 5678417.42 97.25 +601953.66 5679013.48 97.50 +601953.77 5680196.79 97.50 +601954.04 5678559.22 97.25 +601954.25 5678569.06 97.25 +601954.28 5678462.18 97.50 +601954.41 5677943.57 97.25 +601954.51 5678649.32 97.50 +601954.64 5677956.35 97.25 +601954.66 5678613.42 97.50 +601954.75 5680531.33 97.50 +601954.81 5678373.79 97.50 +601954.93 5677451.56 98.75 +601955.29 5678393.26 97.25 +601956.18 5678629.68 97.25 +601956.40 5680115.19 97.50 +601956.65 5680433.66 97.50 +601956.69 5677896.73 98.75 +601956.76 5678223.94 97.50 +601956.87 5676907.55 97.50 +601957.02 5678801.47 97.50 +601957.19 5680255.70 97.50 +601957.26 5676951.44 97.50 +601957.46 5678578.51 97.25 +601957.51 5676925.82 97.25 +601957.77 5679004.44 97.50 +601958.05 5678643.82 97.25 +601958.05 5680139.81 97.50 +601958.16 5677314.13 98.75 +601958.55 5677442.64 98.75 +601958.65 5678581.10 97.25 +601958.71 5680596.70 97.50 +601958.82 5676795.50 97.50 +601958.86 5676620.12 100.00 +601959.22 5680299.82 96.25 +601959.36 5678513.11 97.50 +601959.39 5680512.04 97.50 +601959.40 5677963.25 97.50 +601959.51 5678470.63 97.50 +601959.61 5680305.69 96.25 +601959.65 5680290.16 97.50 +601959.79 5680567.21 97.50 +601959.80 5678620.37 97.25 +601959.82 5680504.30 97.50 +601960.24 5678678.96 97.50 +601960.42 5680106.99 97.50 +601960.64 5678590.89 97.25 +601960.77 5678857.27 97.50 +601960.85 5680273.50 97.50 +601961.01 5680421.07 97.50 +601961.02 5678688.75 97.50 +601961.32 5678381.38 97.50 +601961.42 5680399.43 97.50 +601961.47 5678642.25 97.50 +601961.59 5680314.45 97.50 +601961.60 5678400.46 97.25 +601961.61 5680385.10 97.50 +601961.66 5676942.86 97.50 +601961.68 5680576.77 97.50 +601961.70 5676808.42 97.50 +601961.76 5680234.24 97.50 +601961.81 5676916.93 97.25 +601961.83 5676690.08 98.75 +601961.89 5678610.71 97.25 +601962.02 5678600.77 97.25 +601962.20 5677905.03 98.75 +601962.21 5678558.75 97.25 +601962.26 5678417.90 97.25 +601962.40 5676476.51 101.25 +601962.43 5680131.05 97.50 +601962.63 5678174.69 97.50 +601962.69 5678868.12 97.50 +601962.69 5677456.58 98.75 +601962.72 5676899.90 97.50 +601962.73 5678836.30 97.50 +601962.95 5680193.41 97.50 +601963.06 5677940.41 97.25 +601963.16 5678996.12 97.50 +601963.43 5677953.72 97.25 +601963.43 5677305.67 98.75 +601963.53 5678635.56 97.25 +601963.70 5678216.80 97.50 +601963.96 5678479.52 97.50 +601964.43 5678557.81 97.50 +601964.79 5680492.60 97.50 +601964.80 5678409.41 97.25 +601965.06 5678504.97 97.50 +601965.16 5678568.28 97.25 +601965.18 5678547.84 97.50 +601965.81 5680121.88 97.50 +601965.82 5678805.15 97.50 +601965.94 5678537.87 97.50 +601966.43 5680512.19 97.50 +601966.55 5680112.28 97.50 +601966.62 5680432.93 97.50 +601966.87 5677438.69 98.75 +601966.92 5676614.20 100.00 +601966.94 5680293.53 96.25 +601966.95 5678567.34 97.50 +601966.98 5676908.51 97.25 +601967.18 5680255.65 97.50 +601967.23 5680521.67 97.50 +601967.30 5676935.06 97.50 +601967.66 5678634.57 97.50 +601967.70 5677913.34 98.75 +601967.89 5680561.35 97.50 +601967.94 5678577.88 97.25 +601967.94 5678388.85 97.50 +601968.41 5678488.40 97.50 +601968.41 5678626.86 97.25 +601968.51 5676892.20 97.50 +601968.55 5677959.22 97.50 +601968.67 5676794.14 97.50 +601968.81 5678987.95 97.50 +601968.88 5680302.69 96.25 +601968.92 5680287.15 97.50 +601968.93 5680500.20 97.50 +601969.40 5677297.74 98.75 +601969.73 5680297.24 96.00 +601969.76 5680268.97 97.50 +601969.94 5678587.64 97.25 +601970.14 5678679.60 97.50 +601970.32 5678576.75 97.50 +601970.34 5680571.78 97.50 +601970.70 5678856.26 97.50 +601970.76 5680485.28 97.50 +601970.77 5680229.92 97.50 +601970.80 5680395.98 97.50 +601970.81 5678168.94 97.50 +601970.90 5680419.66 97.50 +601970.94 5678617.34 97.25 +601970.98 5678687.93 97.50 +601971.08 5678529.38 97.50 +601971.14 5678497.11 97.50 +601971.26 5678597.54 97.25 +601971.32 5680313.97 97.50 +601971.35 5680382.93 97.50 +601971.46 5678210.50 97.50 +601971.47 5676926.52 97.50 +601971.55 5680492.99 97.50 +601971.55 5676809.74 97.50 +601971.77 5676689.55 98.75 +601971.81 5680188.78 97.50 +601971.87 5677937.77 97.25 +601972.00 5678832.59 97.50 +601972.07 5677950.59 97.25 +601972.16 5676900.09 97.25 +601972.23 5678865.50 97.50 +601972.28 5676475.40 101.25 +601972.35 5678607.45 97.25 +601972.54 5677458.06 98.75 +601972.64 5676917.04 97.50 +601973.21 5677921.66 98.75 +601973.86 5678586.10 97.50 +601973.98 5678627.28 97.50 +601973.98 5677446.77 98.50 +601974.59 5676884.73 97.50 +601974.98 5676608.29 100.00 +601975.53 5678807.28 97.50 +601975.64 5678980.79 97.50 +601975.66 5680288.70 96.25 +601975.72 5678395.13 97.50 +601975.99 5680555.49 97.50 +601976.12 5677290.38 98.75 +601976.56 5680519.41 97.50 +601976.58 5680432.09 97.50 +601976.69 5678433.59 97.50 +601976.70 5676908.84 97.50 +601976.77 5678423.59 97.50 +601976.85 5678413.60 97.50 +601976.86 5677438.55 98.75 +601977.17 5680255.45 97.50 +601977.26 5680477.93 97.50 +601977.50 5677954.78 97.50 +601977.63 5678522.06 97.50 +601977.75 5678595.31 97.50 +601977.77 5680495.52 97.50 +601977.97 5678403.66 97.50 +601977.98 5680283.58 97.50 +601978.03 5680565.40 97.50 +601978.09 5680298.83 96.25 +601978.59 5680223.74 97.50 +601978.60 5676794.33 97.50 +601978.76 5676892.83 97.25 +601978.81 5678859.14 97.50 +601979.15 5678163.44 97.50 +601979.22 5680265.82 97.50 +601979.23 5678443.19 97.50 +601979.39 5680308.98 97.50 +601979.47 5677945.11 97.25 +601979.47 5678204.56 97.50 +601979.53 5680487.31 97.50 +601979.74 5678678.54 97.50 +601979.92 5680391.88 97.50 +601980.39 5677937.99 97.25 +601980.83 5680418.71 97.50 +601980.85 5676812.80 97.50 +601980.93 5678686.90 97.50 +601980.93 5676877.47 97.50 +601981.11 5677925.61 98.75 +601981.13 5680380.84 97.50 +601981.16 5678632.66 97.50 +601981.33 5678829.06 97.50 +601981.33 5680186.27 97.50 +601981.41 5676600.78 100.00 +601981.43 5678604.61 97.50 +601981.69 5676688.63 98.75 +601981.88 5680510.94 97.50 +601982.10 5677455.17 98.75 +601982.23 5677445.78 98.50 +601982.25 5676475.27 101.25 +601982.31 5678452.70 97.50 +601982.40 5680479.14 97.20 +601982.83 5676901.40 97.50 +601982.84 5677283.01 98.75 +601982.86 5680290.30 96.25 +601983.02 5678974.19 97.50 +601983.62 5680470.46 97.50 +601983.65 5680549.18 97.50 +601984.49 5680215.81 97.50 +601984.63 5678803.71 97.50 +601984.67 5678614.06 97.50 +601984.88 5676591.47 100.00 +601985.32 5680301.25 97.50 +601985.38 5678462.22 97.50 +601985.67 5680558.96 97.50 +601985.78 5678516.29 97.50 +601985.96 5676886.06 97.25 +601986.21 5677949.86 97.50 +601986.30 5680490.48 97.50 +601986.48 5677436.02 98.75 +601986.49 5676869.62 97.50 +601986.53 5680431.07 97.50 +601986.83 5680480.75 97.50 +601986.97 5680279.84 97.50 +601986.98 5680253.66 97.50 +601987.12 5680502.43 97.50 +601987.32 5678640.43 97.50 +601987.92 5676581.94 100.00 +601988.01 5678158.80 97.50 +601988.16 5678199.61 97.50 +601988.41 5678673.88 97.50 +601988.46 5678471.73 97.50 +601988.54 5676794.56 97.50 +601988.63 5680262.49 97.50 +601988.72 5678623.09 97.50 +601988.84 5680471.86 97.20 +601989.25 5680207.03 97.50 +601989.25 5677275.39 98.75 +601989.28 5680388.38 97.50 +601989.76 5680541.26 97.50 +601989.84 5680462.87 97.50 +601989.90 5676894.85 97.50 +601990.47 5677444.80 98.50 +601990.77 5676813.08 97.50 +601990.79 5680188.14 97.50 +601990.82 5680419.07 97.50 +601990.84 5678685.72 97.50 +601990.87 5680378.58 97.50 +601991.01 5678826.64 97.50 +601991.02 5677924.61 98.75 +601991.20 5680293.49 97.50 +601991.62 5676687.72 98.75 +601991.67 5677452.29 98.75 +601991.75 5678481.17 97.50 +601992.01 5678969.95 97.50 +601992.22 5676475.99 101.25 +601992.46 5676573.09 100.00 +601992.50 5680482.64 97.50 +601992.53 5680197.79 97.50 +601992.54 5678508.92 97.50 +601992.81 5678648.70 97.50 +601993.04 5676862.81 97.50 +601993.08 5680552.27 97.50 +601993.17 5676879.29 97.25 +601993.43 5680494.75 97.50 +601993.44 5678799.01 97.50 +601993.84 5680473.89 97.50 +601994.77 5680274.03 97.50 +601994.84 5678631.00 97.50 +601995.18 5677267.38 98.75 +601995.50 5678490.44 97.50 +601995.64 5680464.92 97.20 +601995.67 5678667.12 97.50 +601995.73 5677432.31 98.75 +601995.87 5680533.35 97.50 +601995.89 5677947.80 97.50 +601996.07 5680249.57 97.50 +601996.12 5678500.35 97.50 +601996.24 5676887.64 97.50 +601996.27 5680429.12 97.50 +601996.70 5678657.75 97.50 +601996.81 5680456.07 97.50 +601996.85 5678194.67 97.50 +601997.46 5678155.85 97.50 +601997.51 5677440.50 98.50 +601997.60 5680286.15 97.50 +601997.93 5680258.80 97.50 +601998.15 5676797.11 97.50 +601999.01 5680386.21 97.50 +601999.54 5680475.57 97.50 +601999.58 5680422.70 97.50 +601999.67 5680544.76 97.50 +601999.74 5676566.64 100.00 +602000.15 5678639.46 97.50 +602000.17 5678682.12 97.50 +602000.35 5680375.61 97.50 +602000.60 5680466.78 97.50 +602000.65 5678827.71 97.50 +602000.66 5680487.87 97.50 +602000.71 5676813.02 97.50 +602000.72 5676684.82 98.75 +602000.90 5677923.34 98.75 +602001.12 5677259.37 98.75 +602001.24 5677449.40 98.75 +602001.33 5678966.62 97.50 +602002.05 5676879.96 97.50 +602002.19 5676476.71 101.25 +602002.41 5680267.99 97.50 +602002.43 5680525.81 97.50 +602002.54 5676861.32 97.50 +602002.63 5678795.30 97.50 +602002.70 5680458.24 97.20 +602003.88 5680398.90 97.50 +602003.92 5676870.62 97.50 +602004.67 5680450.20 97.50 +602004.71 5677427.94 98.75 +602004.90 5678648.23 97.50 +602004.99 5680279.82 97.50 +602005.19 5677437.35 98.50 +602005.71 5677250.54 98.75 +602005.78 5677946.34 97.50 +602005.99 5678190.62 97.50 +602006.02 5680248.65 97.50 +602006.26 5680537.24 97.50 +602006.59 5680308.36 97.50 +602006.86 5680254.33 97.50 +602006.87 5680468.78 97.50 +602006.91 5680433.82 97.50 +602007.24 5680459.57 97.50 +602007.27 5678153.90 97.50 +602007.43 5680405.21 97.50 +602007.44 5676800.33 97.50 +602007.72 5678676.44 97.50 +602008.40 5676678.47 98.75 +602008.50 5680481.67 97.50 +602008.63 5678814.57 97.50 +602008.64 5678657.50 97.50 +602008.84 5680384.38 97.50 +602009.06 5680518.33 97.50 +602009.12 5676565.90 100.00 +602009.35 5680425.99 97.50 +602009.37 5680371.28 97.50 +602009.52 5677443.87 98.75 +602009.75 5680395.79 97.50 +602009.79 5680299.48 97.50 +602009.88 5678962.23 97.50 +602010.16 5678830.53 97.50 +602010.17 5677241.63 98.75 +602010.60 5676812.45 97.50 +602010.70 5678667.22 97.50 +602010.81 5680316.60 97.50 +602010.86 5677923.01 98.75 +602010.93 5680263.31 97.50 +602011.51 5678806.07 97.50 +602011.66 5678796.34 97.50 +602012.10 5680529.17 97.50 +602012.17 5676477.33 101.25 +602012.66 5680444.50 97.50 +602013.16 5680400.20 97.25 +602013.53 5680452.05 97.50 +602013.73 5680275.58 97.50 +602013.94 5678796.93 97.50 +602014.01 5678805.83 97.50 +602014.02 5677424.82 98.75 +602014.42 5680432.47 97.50 +602014.78 5676573.55 100.00 +602014.82 5677232.81 98.75 +602015.11 5680291.83 97.50 +602015.14 5680463.18 97.50 +602015.14 5678186.57 97.50 +602015.35 5680419.31 97.50 +602015.50 5680510.70 97.50 +602015.59 5676806.03 97.50 +602015.70 5677945.65 97.50 +602015.75 5678954.34 97.50 +602015.77 5680405.06 97.50 +602016.08 5676672.13 98.75 +602016.20 5680475.29 97.50 +602016.91 5677437.25 98.75 +602017.09 5678152.03 97.50 +602017.21 5680520.58 97.50 +602018.10 5680396.10 97.50 +602018.18 5678816.87 97.50 +602018.38 5680366.95 97.50 +602018.43 5677934.07 97.25 +602018.67 5680382.54 97.50 +602018.94 5680320.96 97.50 +602019.27 5680437.25 97.50 +602019.33 5680421.50 97.25 +602019.64 5677224.08 98.75 +602020.00 5678832.18 97.50 +602020.25 5678945.49 97.50 +602020.28 5677428.77 98.75 +602020.32 5680261.99 97.50 +602020.59 5677940.39 97.25 +602020.77 5680426.14 97.50 +602020.81 5677923.08 98.75 +602020.89 5680502.28 97.50 +602020.93 5680445.61 97.50 +602021.10 5680269.32 97.50 +602021.41 5678791.91 97.50 +602021.66 5680412.93 97.50 +602021.98 5678810.07 97.50 +602022.15 5676477.93 101.25 +602022.32 5680400.82 97.50 +602022.43 5680512.07 97.50 +602023.06 5680286.63 97.50 +602023.67 5676577.77 100.00 +602023.71 5680468.70 97.50 +602023.73 5676665.74 98.75 +602024.28 5678182.52 97.50 +602024.37 5680460.76 97.50 +602024.46 5677215.36 98.75 +602025.19 5678936.88 97.50 +602025.67 5677946.42 97.50 +602025.70 5680429.84 97.50 +602026.37 5680493.92 97.50 +602026.58 5680419.30 97.50 +602026.84 5680316.16 97.50 +602026.98 5678150.59 97.50 +602027.17 5680438.13 97.50 +602027.39 5680362.63 97.50 +602027.55 5677932.63 97.25 +602028.02 5678818.44 97.50 +602028.25 5680379.77 97.50 +602028.59 5680407.77 97.50 +602029.59 5678831.06 97.50 +602029.59 5677942.21 97.25 +602029.74 5678793.69 97.50 +602029.75 5677206.93 98.75 +602029.82 5680505.69 97.50 +602029.86 5680307.20 97.50 +602030.32 5678290.12 97.50 +602030.39 5678928.41 97.50 +602030.72 5677924.20 98.75 +602030.82 5678810.24 97.50 +602030.87 5680281.22 97.50 +602031.32 5676659.29 98.75 +602031.97 5680412.13 97.50 +602032.05 5680485.69 97.50 +602032.13 5676478.52 101.25 +602032.46 5680422.73 97.50 +602033.07 5678281.41 97.50 +602033.11 5678801.86 97.50 +602033.66 5676578.24 100.00 +602033.94 5680431.12 97.50 +602033.98 5678181.15 97.50 +602034.68 5677950.17 97.50 +602034.84 5680299.17 97.50 +602034.96 5678298.40 97.50 +602035.03 5680289.68 97.25 +602035.23 5678919.73 97.50 +602035.35 5678824.60 97.50 +602035.42 5677198.73 98.75 +602036.77 5677933.45 97.25 +602036.88 5678149.15 97.50 +602037.06 5680274.16 97.50 +602037.11 5680511.06 97.50 +602037.20 5680362.05 97.50 +602037.23 5680375.61 97.50 +602037.72 5680477.46 97.50 +602038.74 5677943.78 97.25 +602039.29 5680304.89 97.50 +602039.34 5676653.51 98.75 +602039.47 5680415.86 97.50 +602040.04 5678911.04 97.50 +602040.41 5678306.11 97.50 +602040.61 5678275.86 97.50 +602040.62 5677925.33 98.75 +602041.08 5677190.53 98.75 +602041.12 5680424.44 97.50 +602041.14 5680345.54 96.25 +602041.58 5680385.52 97.50 +602041.88 5680354.54 96.25 +602042.02 5680367.64 97.50 +602042.11 5676479.12 101.25 +602042.28 5680468.61 97.50 +602043.24 5677955.35 97.50 +602043.33 5680310.26 97.50 +602043.62 5676578.49 100.00 +602043.91 5678181.61 97.50 +602044.19 5680336.66 96.25 +602045.30 5680270.21 97.50 +602045.50 5680506.90 97.50 +602045.77 5678903.04 97.50 +602045.89 5677935.19 97.25 +602046.02 5680416.23 97.50 +602046.36 5680459.48 97.50 +602046.38 5680377.48 97.50 +602046.45 5678313.42 97.50 +602046.69 5678147.27 97.50 +602046.82 5680390.70 97.50 +602047.88 5677945.40 97.25 +602048.43 5676649.43 98.75 +602048.46 5677183.90 98.75 +602048.56 5678270.69 97.50 +602049.37 5680341.44 96.00 +602049.84 5680497.90 97.50 +602050.36 5680353.59 96.25 +602050.48 5680450.38 97.50 +602050.54 5677926.32 98.75 +602051.08 5680382.08 97.25 +602051.25 5680330.45 96.25 +602051.79 5677960.53 97.50 +602052.08 5676479.81 101.25 +602052.19 5680273.89 97.50 +602052.60 5680309.04 97.50 +602052.81 5678896.03 97.50 +602052.99 5678291.27 95.50 +602053.19 5678319.93 97.50 +602053.29 5677940.52 97.25 +602053.38 5678184.82 97.50 +602053.49 5676576.93 100.00 +602053.66 5680488.67 97.50 +602053.98 5680441.04 97.50 +602054.01 5680372.94 97.50 +602054.24 5680283.17 97.50 +602054.50 5678165.99 97.50 +602054.93 5680386.57 97.50 +602056.16 5677177.57 98.75 +602056.26 5680292.45 97.50 +602056.35 5680346.52 96.25 +602056.46 5678145.15 97.50 +602056.55 5678265.58 97.50 +602056.74 5680431.43 97.50 +602056.88 5680479.21 97.50 +602057.08 5680301.71 97.50 +602057.28 5678174.65 97.50 +602057.89 5676646.32 98.75 +602058.99 5680328.25 96.25 +602059.28 5680378.21 97.50 +602059.32 5680337.64 96.25 +602059.42 5680421.80 97.50 +602059.54 5677966.84 97.50 +602060.05 5677926.25 98.75 +602060.10 5680469.74 97.50 +602060.12 5678889.30 97.50 +602060.16 5676569.96 100.00 +602060.72 5678159.52 97.50 +602061.75 5678322.20 97.50 +602061.96 5676481.34 101.25 +602062.10 5680412.17 97.50 +602062.84 5678188.05 97.50 +602063.35 5680460.29 97.50 +602063.86 5677171.23 98.75 +602064.53 5680402.47 97.50 +602065.10 5678262.48 97.50 +602065.57 5678881.10 97.50 +602065.67 5678179.82 97.50 +602065.72 5678314.19 97.50 +602065.91 5677918.19 98.75 +602066.12 5678304.72 97.50 +602066.23 5678143.03 97.50 +602066.62 5680450.84 97.50 +602066.87 5680392.75 97.50 +602067.22 5677973.23 97.50 +602067.39 5676643.32 98.75 +602067.64 5676563.81 100.00 +602068.42 5678295.52 97.50 +602068.48 5677821.32 98.75 +602068.58 5677831.29 98.75 +602068.63 5677811.36 98.75 +602068.68 5677841.26 98.75 +602068.78 5677851.23 98.75 +602068.85 5677801.39 98.75 +602069.18 5680383.02 97.50 +602069.23 5680441.22 97.50 +602069.83 5678872.15 97.50 +602069.94 5677861.09 98.75 +602070.29 5678286.26 97.50 +602070.46 5678157.97 97.50 +602070.76 5680373.15 97.50 +602070.98 5678276.80 97.50 +602071.05 5677909.79 98.75 +602071.08 5680431.39 97.50 +602071.45 5678267.36 97.50 +602071.56 5677164.90 98.75 +602071.71 5677791.95 98.75 +602071.79 5677870.88 98.75 +602071.84 5676482.87 101.25 +602072.05 5678191.93 97.50 +602072.33 5680363.28 97.50 +602072.99 5680421.58 97.50 +602073.14 5678862.81 97.50 +602073.55 5677900.14 98.75 +602073.64 5680353.37 97.50 +602073.65 5677880.68 98.75 +602074.80 5680343.44 97.50 +602074.92 5680411.77 97.50 +602075.00 5678853.05 97.50 +602075.16 5677979.20 97.50 +602075.31 5677782.65 98.75 +602075.50 5677890.47 98.75 +602075.55 5678181.38 97.50 +602075.95 5680333.51 97.50 +602076.06 5678141.20 97.50 +602076.42 5680518.02 97.50 +602076.69 5680303.56 97.50 +602076.69 5680313.56 97.50 +602076.69 5680323.56 97.50 +602076.83 5676559.85 100.00 +602076.86 5678843.29 97.50 +602076.89 5676640.33 98.75 +602077.05 5680402.00 97.50 +602078.40 5680508.42 97.50 +602078.73 5678833.53 97.50 +602079.18 5680392.23 97.50 +602079.26 5677158.57 98.75 +602079.29 5677773.52 98.75 +602080.28 5678823.72 97.50 +602080.44 5678157.40 97.50 +602080.63 5680382.34 97.50 +602080.98 5680498.98 97.50 +602081.05 5680295.09 97.50 +602081.27 5678195.82 97.50 +602081.76 5678813.89 97.50 +602081.82 5676482.76 101.25 +602082.08 5680372.45 97.50 +602083.18 5680362.52 97.50 +602083.19 5680239.68 97.50 +602083.34 5680489.48 97.50 +602083.67 5677764.57 98.75 +602083.81 5678804.18 97.50 +602084.01 5680302.65 97.50 +602084.16 5680352.57 97.50 +602084.50 5677982.76 97.50 +602084.61 5680312.63 97.50 +602084.83 5680342.60 97.50 +602084.90 5680249.32 97.50 +602085.05 5680332.61 97.50 +602085.07 5678184.23 97.50 +602085.20 5680322.61 97.50 +602085.30 5680479.89 97.50 +602085.69 5678138.60 97.50 +602086.06 5678794.50 97.50 +602086.35 5676637.20 98.75 +602086.71 5676558.98 100.00 +602086.80 5680258.92 97.50 +602087.63 5677153.20 98.75 +602087.63 5680470.38 97.50 +602088.05 5677755.62 98.75 +602088.32 5678784.83 97.50 +602089.52 5678153.41 97.50 +602089.83 5680268.23 97.50 +602090.14 5680460.91 97.50 +602090.44 5678775.12 97.50 +602090.81 5678198.66 97.50 +602091.80 5676482.38 101.25 +602091.82 5680277.74 97.50 +602092.23 5678765.35 97.50 +602092.43 5680451.39 97.50 +602092.69 5680287.48 97.50 +602092.94 5677746.93 98.75 +602094.02 5678755.58 97.50 +602094.21 5677983.25 97.50 +602094.53 5678187.34 97.50 +602094.57 5680441.84 97.50 +602094.73 5680297.06 97.50 +602095.38 5678136.30 97.50 +602095.58 5678706.76 97.50 +602095.79 5676634.00 98.75 +602096.07 5678745.86 97.50 +602096.26 5677148.23 98.75 +602096.61 5677819.72 97.50 +602096.62 5678716.64 97.50 +602096.62 5680432.26 97.50 +602096.67 5678697.38 97.50 +602096.70 5676558.57 100.00 +602096.73 5677809.86 97.50 +602096.79 5680306.64 97.50 +602097.88 5677738.27 98.75 +602097.94 5678148.12 97.50 +602098.16 5678736.14 97.50 +602098.23 5680422.60 97.50 +602098.42 5678726.41 97.50 +602098.96 5680316.19 97.50 +602099.09 5678707.01 98.75 +602099.19 5677829.38 97.50 +602099.84 5680412.94 97.50 +602100.57 5678200.85 97.50 +602100.66 5678697.46 98.75 +602100.79 5678688.62 97.50 +602100.91 5677838.74 97.50 +602100.95 5677801.95 97.50 +602101.12 5680325.74 97.50 +602101.45 5680403.28 97.50 +602101.49 5676479.92 101.25 +602102.23 5678860.14 97.50 +602102.30 5678678.80 97.50 +602102.77 5678141.04 97.50 +602102.81 5677729.61 98.75 +602103.01 5680393.61 97.50 +602103.07 5678687.81 98.75 +602103.49 5678715.26 98.75 +602103.95 5680335.08 97.50 +602104.13 5677981.97 97.50 +602104.36 5678189.15 97.50 +602104.40 5677142.50 98.75 +602104.50 5680344.86 97.50 +602104.53 5680383.94 97.50 +602104.62 5678669.15 97.50 +602104.85 5676629.92 98.75 +602105.00 5678678.03 98.75 +602105.04 5680354.64 97.50 +602105.25 5680364.43 97.50 +602105.42 5680374.22 97.50 +602106.02 5677847.34 97.50 +602106.70 5676558.58 100.00 +602106.95 5678659.49 97.50 +602107.22 5677478.22 98.75 +602107.31 5678668.34 98.75 +602107.53 5677681.60 98.75 +602107.64 5677468.36 98.75 +602107.66 5677691.57 98.75 +602107.67 5678852.29 97.50 +602107.74 5677720.95 98.75 +602107.82 5677671.65 98.75 +602108.31 5677701.51 98.75 +602108.62 5677661.71 98.75 +602108.69 5677805.99 97.50 +602108.71 5677488.07 98.75 +602109.03 5677711.46 98.75 +602109.12 5677458.50 98.75 +602109.83 5678658.69 98.75 +602110.09 5678863.16 97.50 +602110.20 5677497.93 98.75 +602110.27 5678650.13 97.50 +602110.31 5678203.09 97.50 +602110.35 5677856.33 97.50 +602110.60 5677448.65 98.75 +602110.69 5677652.13 98.75 +602111.21 5676477.59 101.25 +602111.70 5677507.79 98.75 +602111.95 5678714.40 98.75 +602112.39 5677136.53 98.75 +602112.69 5677942.28 97.50 +602112.78 5677977.20 97.50 +602112.96 5678649.24 98.75 +602113.56 5677439.41 98.75 +602113.65 5678640.78 97.50 +602113.71 5678936.55 97.50 +602113.99 5676626.61 98.75 +602114.28 5678190.26 97.50 +602114.31 5677865.51 97.50 +602114.45 5678845.04 97.50 +602114.79 5677813.92 97.50 +602114.94 5677517.05 98.75 +602115.08 5677643.18 98.75 +602115.36 5678705.05 98.75 +602116.32 5678927.33 97.50 +602116.37 5677932.99 97.50 +602116.57 5678639.94 98.75 +602116.70 5676558.59 100.00 +602117.17 5678631.49 97.50 +602118.27 5677874.69 97.50 +602118.87 5678858.53 97.50 +602118.91 5677822.94 97.50 +602119.35 5678695.92 98.75 +602119.37 5678207.33 97.50 +602119.48 5677634.23 98.75 +602119.55 5677431.44 98.75 +602119.62 5678836.63 97.50 +602119.68 5677691.11 97.40 +602119.69 5677700.73 97.40 +602119.71 5677525.81 98.75 +602120.05 5677923.69 97.50 +602120.06 5677970.46 97.50 +602120.17 5677681.49 97.40 +602120.18 5678630.65 98.75 +602120.24 5677884.47 97.50 +602120.37 5677130.56 98.75 +602120.70 5678622.20 97.50 +602120.98 5676475.47 101.25 +602121.32 5677710.13 97.40 +602121.61 5678919.11 97.50 +602121.69 5677672.05 97.40 +602121.96 5677894.32 97.50 +602122.33 5677913.97 97.50 +602122.43 5677832.30 97.50 +602123.09 5678827.28 97.50 +602123.63 5678686.92 98.75 +602123.68 5677904.17 97.50 +602123.79 5677625.25 98.75 +602123.89 5678621.40 98.75 +602123.92 5678192.27 97.50 +602123.95 5676626.84 98.75 +602123.97 5678865.14 97.50 +602124.34 5677662.80 97.40 +602124.47 5677534.56 98.75 +602124.60 5677719.11 97.40 +602124.82 5678613.18 97.50 +602125.55 5677423.48 98.75 +602125.68 5677841.75 97.50 +602126.30 5677653.37 97.40 +602126.31 5678817.85 97.50 +602126.66 5676558.16 100.00 +602126.76 5677963.04 97.50 +602126.99 5677708.83 97.40 +602127.68 5677718.44 97.40 +602127.70 5678853.95 97.50 +602128.06 5677616.24 98.75 +602128.13 5678612.44 98.75 +602128.42 5678211.57 97.50 +602128.53 5677699.33 97.40 +602128.76 5677851.27 97.50 +602129.12 5677680.16 97.40 +602129.22 5677125.98 98.75 +602129.23 5677543.32 98.75 +602129.26 5678604.29 97.50 +602129.36 5677689.78 97.40 +602129.39 5678678.88 98.75 +602129.84 5677644.43 97.40 +602130.14 5678914.16 97.50 +602130.21 5678808.73 97.50 +602130.27 5677670.60 97.40 +602130.48 5676472.56 101.25 +602131.54 5677415.51 98.75 +602131.86 5677860.77 97.50 +602132.32 5677607.23 98.75 +602132.51 5677661.25 97.40 +602132.58 5678860.16 97.50 +602132.92 5677955.18 97.50 +602133.01 5678196.44 97.50 +602133.83 5676627.82 98.75 +602133.99 5678604.38 98.75 +602134.07 5677552.04 98.75 +602134.39 5677635.99 97.40 +602134.85 5677481.76 98.75 +602134.98 5677870.27 97.50 +602135.05 5677651.96 97.40 +602135.26 5678596.38 97.50 +602135.44 5678800.24 97.50 +602135.89 5677491.68 98.75 +602136.54 5676556.60 100.00 +602136.59 5677598.22 98.75 +602136.92 5677501.60 98.75 +602136.92 5677407.12 98.75 +602137.09 5678850.59 97.50 +602137.13 5678672.71 98.75 +602137.75 5677472.28 98.75 +602137.85 5678214.85 97.50 +602138.07 5677879.78 97.50 +602138.11 5677121.47 98.75 +602138.70 5678909.26 97.50 +602138.76 5677643.08 97.40 +602138.81 5677947.10 97.50 +602138.84 5677511.26 98.75 +602138.96 5678595.81 98.75 +602139.04 5677560.68 98.75 +602139.58 5676468.42 101.25 +602139.91 5677628.16 97.40 +602139.93 5677588.91 98.75 +602140.08 5677889.57 97.50 +602140.90 5678202.43 97.50 +602140.97 5677462.84 98.75 +602140.98 5678791.95 97.50 +602141.34 5678588.52 97.50 +602141.54 5678855.88 97.50 +602141.87 5677579.13 98.75 +602142.09 5677899.37 97.50 +602142.27 5677398.71 98.75 +602143.51 5677520.07 98.75 +602143.53 5677634.72 97.40 +602143.60 5678820.22 98.75 +602143.62 5676629.64 98.75 +602143.79 5677938.48 97.50 +602143.81 5677569.35 98.75 +602144.07 5677909.17 97.50 +602144.18 5677453.39 98.75 +602145.78 5678667.78 98.75 +602145.85 5677919.01 97.50 +602146.02 5678846.34 97.50 +602146.19 5677928.88 97.50 +602146.24 5678589.02 98.75 +602146.30 5678810.66 98.75 +602146.41 5676555.04 100.00 +602146.43 5677708.60 97.50 +602147.00 5677116.97 98.75 +602147.00 5678915.85 96.25 +602147.04 5678218.45 97.50 +602147.06 5678904.11 97.50 +602147.16 5678784.12 97.50 +602147.27 5677698.81 97.50 +602147.32 5677718.52 97.50 +602147.53 5677622.27 97.40 +602147.53 5678580.70 97.50 +602147.62 5677390.30 98.75 +602147.71 5678774.23 97.50 +602147.86 5677626.14 97.40 +602148.06 5678826.78 98.75 +602148.17 5677528.89 98.75 +602148.22 5677728.44 97.50 +602148.54 5677444.50 98.75 +602148.57 5676464.05 101.25 +602148.72 5678764.38 97.50 +602149.24 5678207.81 97.50 +602149.63 5677689.14 97.50 +602149.67 5678801.30 98.75 +602150.17 5677738.04 97.50 +602150.60 5678851.77 97.50 +602150.84 5678906.67 96.25 +602151.54 5678754.82 97.50 +602152.00 5677679.46 97.50 +602152.21 5678791.72 98.75 +602152.70 5677381.72 98.75 +602153.17 5678581.95 98.75 +602153.42 5676631.47 98.75 +602153.83 5678661.91 98.75 +602153.87 5677436.07 98.75 +602153.87 5678573.01 97.50 +602154.06 5678781.95 98.75 +602154.12 5678225.52 97.50 +602154.24 5678840.68 97.50 +602154.35 5677536.70 98.75 +602154.36 5677669.79 97.50 +602154.43 5678897.56 97.50 +602154.90 5677746.80 97.50 +602156.05 5677113.05 98.75 +602156.19 5676552.96 100.00 +602156.38 5678772.29 98.75 +602156.64 5677660.09 97.50 +602157.06 5678746.77 97.50 +602157.46 5676459.47 101.25 +602157.59 5677373.04 98.75 +602157.60 5678824.30 98.75 +602158.12 5678212.41 97.50 +602158.91 5677650.40 97.50 +602159.05 5678901.83 96.25 +602159.20 5677427.63 98.75 +602159.24 5678574.04 98.75 +602159.54 5678762.92 98.75 +602159.56 5678847.45 97.50 +602159.62 5677755.57 97.50 +602159.93 5677539.92 98.75 +602160.40 5678565.48 97.50 +602162.15 5678230.90 97.50 +602162.33 5678656.69 98.75 +602162.48 5678835.07 97.50 +602162.48 5677364.35 98.75 +602162.65 5678892.14 97.50 +602162.81 5677837.51 97.40 +602163.23 5676630.21 98.75 +602163.29 5677641.66 97.50 +602163.43 5677530.57 98.75 +602163.53 5678739.18 97.50 +602164.00 5677847.19 97.40 +602164.11 5677764.45 97.50 +602164.64 5678754.41 98.75 +602164.73 5677419.42 98.75 +602165.20 5678566.06 98.75 +602165.68 5678818.55 98.75 +602165.89 5676550.57 100.00 +602166.00 5677112.48 98.75 +602166.34 5676454.88 101.25 +602166.78 5678557.81 97.50 +602166.93 5677521.23 98.75 +602167.43 5677856.35 97.40 +602167.64 5677355.83 98.75 +602167.80 5678214.94 97.50 +602167.87 5678841.99 97.50 +602167.90 5677773.66 97.50 +602168.18 5678602.22 98.75 +602168.47 5678592.37 98.75 +602168.57 5678899.05 96.25 +602168.76 5677838.15 97.40 +602169.10 5677633.57 97.50 +602170.16 5678731.73 97.50 +602170.75 5678746.56 98.75 +602171.17 5678887.24 97.50 +602171.17 5678558.08 98.75 +602171.19 5678652.16 98.75 +602171.20 5677512.25 98.75 +602171.39 5678582.98 98.75 +602171.51 5678830.86 97.50 +602171.69 5677782.87 97.50 +602171.84 5678233.37 97.50 +602172.44 5677864.69 97.40 +602172.73 5678619.95 97.50 +602172.97 5678550.00 97.50 +602173.00 5678811.89 98.75 +602173.03 5677347.44 98.75 +602173.04 5676628.47 98.75 +602173.37 5677414.43 98.75 +602173.88 5677380.39 98.75 +602174.36 5676448.95 101.25 +602174.91 5677625.48 97.50 +602175.10 5677845.56 97.40 +602175.48 5677792.08 97.50 +602175.51 5677114.67 98.75 +602175.60 5676548.17 100.00 +602176.13 5677503.58 98.75 +602176.31 5677370.72 98.75 +602176.39 5678605.69 98.75 +602176.63 5678574.52 98.75 +602176.91 5678837.89 97.50 +602176.97 5678211.84 97.50 +602177.04 5678738.86 98.75 +602177.42 5678550.31 98.75 +602177.62 5678894.90 96.25 +602177.91 5678725.91 97.50 +602178.08 5677872.67 97.40 +602178.42 5677339.06 98.75 +602178.74 5678612.99 97.50 +602179.07 5678624.24 97.50 +602179.16 5678542.18 97.50 +602179.26 5677801.29 97.50 +602179.54 5678812.42 97.50 +602179.73 5678804.57 98.75 +602179.78 5677377.79 98.75 +602180.24 5678883.37 97.50 +602180.46 5678648.72 98.75 +602180.55 5678826.65 97.50 +602180.60 5677853.64 97.40 +602180.72 5677617.39 97.50 +602181.06 5677494.91 98.75 +602181.15 5678230.90 97.50 +602181.28 5677394.73 98.75 +602181.42 5677362.23 98.75 +602182.07 5677409.55 98.75 +602182.24 5676442.80 101.25 +602182.33 5678817.35 97.50 +602182.37 5678566.36 98.75 +602182.45 5678019.06 97.50 +602182.49 5676625.42 98.75 +602182.54 5678010.48 97.50 +602183.62 5677810.22 97.50 +602183.80 5677119.83 98.75 +602183.81 5677330.67 98.75 +602184.20 5677880.30 97.40 +602184.65 5676544.12 100.00 +602184.96 5677386.49 98.75 +602185.07 5678733.98 98.75 +602185.12 5678206.54 97.50 +602185.67 5677862.00 97.40 +602185.76 5678534.74 97.50 +602185.82 5678557.21 98.75 +602185.82 5678547.76 98.75 +602185.83 5678796.73 98.75 +602185.98 5677486.23 98.75 +602186.07 5678834.02 97.50 +602186.11 5678603.51 98.75 +602186.53 5677609.30 97.50 +602186.97 5677353.94 98.75 +602187.23 5678806.16 97.50 +602187.26 5678892.85 96.25 +602187.27 5678616.59 97.25 +602187.34 5678722.65 97.50 +602187.78 5678610.40 97.50 +602187.87 5677371.95 98.75 +602188.37 5678026.69 97.50 +602188.53 5678622.75 97.50 +602188.60 5677818.85 97.50 +602189.20 5677322.29 98.75 +602189.37 5678822.00 97.50 +602189.44 5677397.71 98.75 +602189.63 5678225.67 97.50 +602189.94 5678882.47 97.50 +602190.26 5678646.87 98.75 +602190.30 5677887.94 97.40 +602190.60 5677870.45 97.40 +602190.71 5676437.49 101.25 +602190.74 5677477.46 98.75 +602190.84 5677126.88 98.75 +602190.85 5677404.84 98.75 +602190.90 5678198.38 97.50 +602191.12 5678812.82 97.50 +602191.27 5678008.49 97.50 +602191.80 5678788.77 98.75 +602191.80 5676621.88 98.75 +602192.50 5677601.37 97.50 +602192.70 5677380.30 98.75 +602192.91 5677345.94 98.75 +602193.09 5678527.97 97.50 +602193.33 5676539.17 100.00 +602193.57 5677827.48 97.50 +602194.22 5678730.58 98.75 +602194.31 5677313.74 98.75 +602194.76 5678829.19 97.50 +602195.49 5677468.69 98.75 +602195.53 5677878.89 97.40 +602195.57 5678717.66 97.50 +602195.60 5678800.79 97.50 +602195.85 5678601.36 98.75 +602195.96 5677366.12 98.75 +602196.09 5678032.55 97.50 +602196.37 5677895.61 97.40 +602196.77 5678219.00 97.50 +602197.13 5678190.56 97.50 +602197.14 5678891.66 96.25 +602197.15 5678608.53 97.50 +602197.29 5677134.45 98.75 +602197.70 5678619.99 97.50 +602197.77 5678780.82 98.75 +602198.01 5678817.03 97.50 +602198.54 5677836.11 97.50 +602198.89 5677394.52 98.75 +602199.15 5677305.02 98.75 +602199.21 5677338.21 98.75 +602199.22 5676432.25 101.25 +602199.76 5678881.80 97.50 +602200.12 5678012.46 97.50 +602200.15 5678808.83 97.50 +602200.17 5678645.81 98.75 +602200.25 5678024.16 97.25 +602200.26 5677595.12 97.50 +602200.33 5676616.87 98.75 +602200.58 5677460.13 98.75 +602200.82 5678521.69 97.50 +602200.82 5677404.34 98.75 +602201.20 5677886.86 97.40 +602201.33 5677375.30 98.75 +602201.67 5678210.28 97.50 +602201.84 5676533.95 100.00 +602202.18 5678710.20 97.50 +602202.29 5678724.77 98.75 +602202.43 5677903.28 97.40 +602203.23 5677142.45 98.75 +602203.35 5678182.73 97.50 +602203.40 5678824.27 97.50 +602203.41 5678612.90 97.50 +602203.52 5677844.73 97.50 +602203.97 5678784.89 97.50 +602203.99 5677296.31 98.75 +602204.42 5678037.61 97.50 +602204.57 5678796.47 97.50 +602204.60 5678773.64 98.75 +602204.73 5677361.42 98.75 +602205.52 5677330.48 98.75 +602205.58 5678599.21 98.75 +602206.18 5677451.87 98.75 +602206.66 5678812.06 97.50 +602206.79 5678201.70 97.50 +602207.03 5677894.70 97.40 +602207.05 5678890.81 96.25 +602207.37 5676426.49 101.25 +602207.42 5678701.72 97.50 +602207.48 5677545.86 97.50 +602207.58 5677539.05 97.50 +602208.02 5677588.88 97.50 +602208.15 5678716.74 98.75 +602208.34 5677391.31 98.75 +602208.48 5676611.13 98.75 +602208.49 5677853.36 97.50 +602208.63 5678017.20 97.50 +602208.67 5677910.81 97.40 +602208.82 5677287.59 98.75 +602208.84 5678515.77 97.50 +602209.05 5678028.29 97.25 +602209.17 5677150.46 98.75 +602209.34 5678879.97 97.50 +602209.35 5678805.08 97.50 +602209.69 5676527.76 100.00 +602209.86 5678777.65 97.50 +602209.95 5677370.29 98.75 +602210.07 5678646.53 98.75 +602210.10 5676851.24 97.50 +602210.12 5677114.69 98.75 +602210.51 5678175.75 97.50 +602210.78 5677403.84 98.75 +602210.78 5678786.29 97.50 +602210.99 5676860.57 97.50 +602211.75 5677322.69 98.75 +602211.88 5678766.88 98.75 +602211.98 5677443.78 98.75 +602211.99 5677104.90 98.75 +602212.05 5678819.37 97.50 +602212.32 5678779.81 97.25 +602212.59 5678193.56 97.50 +602212.82 5678790.89 97.50 +602212.94 5678042.33 97.50 +602213.20 5677123.91 98.75 +602213.36 5678693.70 97.50 +602213.67 5677901.87 97.40 +602213.75 5677357.17 98.75 +602213.93 5677531.37 97.50 +602214.25 5678708.89 98.75 +602214.40 5677861.32 97.50 +602214.41 5677095.27 98.75 +602214.60 5677279.54 98.75 +602215.05 5677918.23 97.40 +602215.22 5676420.29 101.25 +602215.34 5678597.22 98.75 +602215.45 5678807.35 97.50 +602215.46 5676604.04 98.75 +602215.78 5677582.64 97.50 +602215.78 5678893.89 96.25 +602216.29 5677157.39 98.75 +602216.84 5676868.20 97.50 +602216.86 5678509.85 97.50 +602217.23 5677133.03 98.75 +602217.27 5677544.05 97.50 +602217.40 5678021.37 97.50 +602217.40 5678771.97 97.50 +602217.44 5676521.44 100.00 +602217.45 5678885.60 97.50 +602217.47 5677314.52 98.75 +602217.49 5677435.52 98.75 +602217.61 5676848.34 97.50 +602217.71 5677387.90 98.75 +602217.85 5678032.41 97.25 +602217.91 5677085.94 98.75 +602218.01 5678780.29 97.50 +602218.01 5678169.16 97.50 +602218.05 5678875.35 97.50 +602218.11 5678800.39 97.50 +602218.59 5678775.05 97.25 +602219.17 5678760.11 98.75 +602219.28 5678186.35 97.50 +602219.28 5677443.42 97.50 +602219.50 5677367.58 98.75 +602219.86 5678648.35 98.75 +602219.93 5678686.22 97.50 +602220.32 5677909.05 97.40 +602220.58 5678701.22 98.75 +602220.60 5677402.33 98.75 +602220.75 5678814.55 97.50 +602220.93 5677868.84 97.50 +602221.26 5677272.12 98.75 +602221.41 5677925.65 97.40 +602221.42 5677076.62 98.75 +602221.87 5678786.73 97.50 +602222.05 5678045.81 97.50 +602222.16 5677525.81 97.50 +602222.40 5676596.88 98.75 +602222.68 5676413.65 101.25 +602222.77 5677352.91 98.75 +602222.94 5678501.97 97.50 +602223.18 5677140.89 98.75 +602223.19 5677306.35 98.75 +602223.27 5677020.21 97.50 +602223.61 5677576.49 97.50 +602223.78 5678888.55 97.50 +602223.80 5677163.90 98.75 +602223.89 5678765.46 97.50 +602224.09 5677428.45 98.75 +602224.15 5678769.49 97.25 +602224.27 5678802.69 97.50 +602224.57 5677010.52 97.50 +602224.67 5678879.15 97.50 +602224.69 5678773.61 97.50 +602225.06 5676514.97 100.00 +602225.14 5676873.21 97.50 +602225.19 5678595.66 98.75 +602226.00 5678163.17 97.50 +602226.16 5676664.09 98.75 +602226.27 5678794.68 97.50 +602226.53 5678024.76 97.50 +602226.53 5677068.11 98.75 +602226.64 5678753.54 98.75 +602226.79 5678870.80 97.50 +602226.83 5677263.88 98.75 +602226.93 5677541.65 97.50 +602227.03 5677000.98 97.50 +602227.05 5677028.91 97.50 +602227.08 5677384.48 98.75 +602227.13 5676850.35 97.50 +602227.23 5678034.66 97.25 +602227.31 5677915.86 97.40 +602227.46 5677876.36 97.50 +602227.68 5677933.16 97.40 +602227.74 5678181.03 97.50 +602227.82 5677438.29 97.50 +602228.14 5676673.85 98.75 +602228.46 5678681.29 97.50 +602228.56 5678779.39 97.50 +602228.64 5678554.99 98.75 +602228.85 5676654.54 98.75 +602228.89 5678493.97 97.50 +602229.01 5677298.24 98.75 +602229.20 5677365.26 98.75 +602229.33 5678696.53 98.75 +602229.46 5678809.74 97.50 +602229.61 5678650.41 98.75 +602229.64 5676864.56 97.25 +602229.95 5676406.79 101.25 +602230.05 5676991.59 97.50 +602230.14 5677147.96 98.75 +602230.30 5677400.01 98.75 +602230.35 5678758.56 97.50 +602230.44 5676683.51 98.75 +602230.62 5678766.32 97.50 +602230.64 5676591.41 98.75 +602230.76 5677520.85 97.50 +602231.26 5678048.54 97.50 +602231.81 5677348.71 98.75 +602231.98 5676645.10 98.75 +602232.03 5677059.80 98.75 +602232.10 5677571.30 97.50 +602232.23 5677255.50 98.75 +602232.46 5677423.02 98.75 +602232.73 5677168.34 98.75 +602233.17 5676509.30 100.00 +602233.17 5678798.20 97.50 +602233.41 5678886.47 97.50 +602233.52 5676982.35 97.50 +602233.91 5678875.70 97.50 +602233.91 5677940.69 97.40 +602233.99 5677883.88 97.50 +602234.07 5678771.14 97.50 +602234.17 5676876.47 97.50 +602234.17 5678747.06 98.75 +602234.42 5678788.96 97.50 +602234.47 5678548.50 98.75 +602234.59 5678158.05 97.50 +602234.71 5677922.26 97.40 +602234.81 5678562.37 98.75 +602234.82 5677009.93 97.25 +602234.85 5676692.44 98.75 +602235.02 5677290.29 98.75 +602235.08 5678596.26 98.75 +602235.51 5678866.20 97.50 +602235.88 5677029.41 97.50 +602235.97 5678175.38 97.50 +602236.00 5678487.20 97.50 +602236.08 5676854.17 97.50 +602236.14 5678026.07 97.50 +602236.19 5677050.76 98.75 +602236.30 5677433.07 97.50 +602236.47 5676636.21 98.75 +602236.54 5677539.03 97.50 +602236.68 5677382.00 98.75 +602236.74 5678759.20 97.50 +602236.81 5678751.66 97.50 +602236.82 5678036.20 97.25 +602237.37 5676973.26 97.50 +602237.94 5678678.58 97.50 +602238.05 5678804.73 97.50 +602238.20 5678692.04 98.75 +602238.33 5676401.42 101.25 +602238.41 5677000.72 97.25 +602238.46 5676701.70 98.75 +602238.50 5677153.37 98.75 +602238.90 5677362.94 98.75 +602239.13 5677248.43 98.75 +602239.43 5678652.11 98.75 +602239.73 5676588.82 98.75 +602239.83 5677516.74 97.50 +602239.97 5678763.32 97.50 +602240.00 5677397.69 98.75 +602240.14 5677948.23 97.40 +602240.16 5677021.91 97.50 +602240.19 5677041.64 98.75 +602240.60 5677566.10 97.50 +602240.65 5677891.27 97.50 +602240.84 5677417.60 98.75 +602240.93 5677344.65 98.75 +602240.98 5678047.85 97.50 +602241.04 5677282.33 98.75 +602241.21 5676964.17 97.50 +602241.51 5676711.19 98.75 +602241.66 5677172.77 98.75 +602241.71 5678740.57 98.75 +602241.88 5677928.90 97.40 +602242.00 5676991.51 97.25 +602242.09 5678793.74 97.50 +602242.46 5676505.60 100.00 +602242.99 5678884.20 97.50 +602243.16 5678872.30 97.50 +602243.32 5678784.85 97.50 +602243.35 5676875.40 97.50 +602243.42 5678153.37 97.50 +602243.47 5678744.99 97.50 +602243.55 5677012.72 97.50 +602243.70 5678169.05 97.50 +602243.75 5678566.69 98.75 +602243.80 5676629.78 98.75 +602243.85 5678752.99 97.50 +602243.93 5678545.35 98.75 +602244.05 5678861.28 97.50 +602244.19 5677032.51 98.75 +602244.34 5678481.74 97.50 +602244.54 5678067.43 97.50 +602244.56 5676720.67 98.75 +602244.75 5677427.79 97.50 +602244.89 5676858.10 97.50 +602245.03 5678596.84 98.75 +602245.06 5676955.08 97.50 +602245.35 5678776.08 97.30 +602245.58 5676982.30 97.25 +602245.68 5678027.98 97.50 +602245.87 5678075.24 97.50 +602246.21 5677536.68 97.50 +602246.42 5678037.73 97.25 +602246.58 5677380.73 98.75 +602246.60 5678799.66 97.50 +602246.71 5677241.95 98.75 +602246.77 5677955.42 97.40 +602246.90 5676867.55 97.50 +602247.02 5676396.48 101.25 +602247.12 5677274.43 98.75 +602247.17 5678687.75 98.75 +602247.18 5678675.10 97.50 +602247.30 5677157.81 98.75 +602247.64 5677003.73 97.50 +602247.69 5678781.27 97.30 +602247.70 5678757.07 97.50 +602247.87 5676730.07 98.75 +602247.99 5677023.30 98.75 +602248.04 5677897.95 97.50 +602248.21 5677359.66 98.75 +602248.90 5677512.63 97.50 +602249.03 5677935.57 97.40 +602249.10 5677560.91 97.50 +602249.16 5676946.10 97.50 +602249.26 5678653.77 98.75 +602249.28 5676973.14 97.25 +602249.29 5677412.34 98.75 +602249.54 5678734.46 98.75 +602249.58 5676590.32 98.75 +602249.68 5677395.30 98.75 +602250.04 5677340.60 98.75 +602250.56 5678048.10 97.50 +602250.84 5677176.65 98.75 +602250.99 5678789.24 97.50 +602251.00 5678746.94 97.50 +602251.04 5678768.79 97.30 +602251.45 5676739.36 98.75 +602251.47 5678740.28 97.50 +602251.62 5678879.43 97.50 +602251.66 5677014.04 98.75 +602251.72 5676994.75 97.50 +602251.75 5676501.90 100.00 +602251.88 5678063.25 97.50 +602252.25 5678148.68 97.50 +602252.42 5678868.92 97.50 +602252.58 5676625.15 98.75 +602252.64 5678540.57 98.75 +602252.66 5678781.62 97.50 +602252.69 5678476.27 97.50 +602252.87 5678165.09 97.50 +602253.00 5678857.20 97.50 +602253.31 5677422.75 97.50 +602253.41 5677962.61 97.40 +602253.41 5676937.19 97.50 +602253.49 5678568.83 98.75 +602253.57 5677266.82 98.75 +602253.80 5676964.35 97.25 +602254.28 5677235.47 98.75 +602254.76 5678077.48 97.50 +602254.99 5678597.17 98.75 +602255.03 5678030.60 97.50 +602255.04 5676748.66 98.75 +602255.17 5678794.62 97.50 +602255.32 5677004.78 98.75 +602255.42 5677904.64 97.50 +602255.61 5678776.53 97.30 +602255.75 5676391.62 101.25 +602255.79 5677942.64 97.40 +602255.82 5678670.20 97.50 +602255.86 5676985.79 97.50 +602255.97 5677534.69 97.50 +602256.14 5678683.47 98.75 +602256.19 5678751.89 97.50 +602256.44 5677380.80 98.75 +602256.51 5678531.52 98.75 +602256.73 5677354.47 98.75 +602256.94 5677160.31 98.75 +602257.56 5678728.57 98.75 +602257.66 5676928.28 97.50 +602257.72 5678071.51 97.25 +602257.72 5677556.01 97.50 +602257.97 5677508.52 97.50 +602258.31 5676955.55 97.25 +602258.54 5677408.58 98.75 +602258.60 5678763.44 97.30 +602258.63 5677390.90 98.75 +602259.06 5678521.94 98.75 +602259.06 5678652.23 98.75 +602259.14 5676757.65 98.75 +602259.18 5676995.59 98.75 +602259.27 5677336.82 98.75 +602259.47 5676590.66 98.75 +602259.72 5678050.94 97.50 +602259.79 5678784.56 97.50 +602260.02 5677259.21 98.75 +602260.10 5676976.87 97.50 +602260.16 5677179.95 98.75 +602260.35 5677969.48 97.40 +602260.51 5678875.19 97.50 +602260.70 5678512.10 98.75 +602260.92 5676497.94 100.00 +602261.03 5678470.81 97.50 +602261.06 5678063.57 97.50 +602261.40 5678864.98 97.50 +602261.46 5676620.68 98.75 +602261.60 5678777.24 97.50 +602261.60 5678145.77 97.50 +602261.85 5677228.99 98.75 +602261.91 5676919.37 97.50 +602262.18 5678853.61 97.50 +602262.25 5678161.95 97.50 +602262.54 5677949.71 97.40 +602262.58 5677419.10 97.50 +602262.82 5676946.76 97.25 +602262.91 5677911.19 97.50 +602263.13 5676986.44 98.75 +602263.22 5678570.97 98.75 +602263.75 5678664.15 97.50 +602263.97 5678034.48 97.50 +602263.98 5678078.05 97.50 +602264.02 5678790.07 97.50 +602264.15 5678502.76 98.75 +602264.23 5678773.08 97.30 +602264.33 5678677.85 98.75 +602264.34 5676967.96 97.50 +602264.49 5676386.75 101.25 +602264.91 5678598.07 98.75 +602265.00 5677384.58 98.75 +602265.25 5677349.28 98.75 +602265.53 5676765.29 98.75 +602265.57 5678722.68 98.75 +602265.61 5678748.74 97.50 +602265.71 5678644.96 98.75 +602265.73 5677532.71 97.50 +602266.38 5677503.19 97.50 +602266.43 5676910.60 97.50 +602266.48 5677251.60 98.75 +602266.60 5677161.63 98.75 +602267.19 5678760.08 97.30 +602267.33 5676937.96 97.25 +602267.34 5677553.42 97.50 +602267.36 5676977.43 98.75 +602267.78 5677404.84 98.75 +602267.90 5677975.53 97.40 +602268.52 5677333.08 98.75 +602268.58 5678858.48 97.50 +602268.80 5678780.34 97.50 +602268.84 5677957.19 97.40 +602269.03 5676959.29 97.50 +602269.08 5678049.29 97.50 +602269.40 5676589.83 98.75 +602269.43 5678870.99 97.50 +602269.69 5678066.71 97.50 +602269.75 5676615.15 98.75 +602269.92 5677223.14 98.75 +602270.00 5678041.02 97.50 +602270.12 5677180.43 98.75 +602270.42 5678495.78 98.75 +602270.44 5676495.79 100.00 +602270.52 5678467.77 97.50 +602270.54 5678657.06 97.50 +602270.77 5677917.31 97.50 +602270.95 5676901.82 97.50 +602270.97 5678773.91 97.50 +602271.57 5678144.96 97.50 +602271.72 5676773.09 98.75 +602271.84 5677415.44 97.50 +602271.85 5676929.17 97.25 +602272.12 5678074.56 97.50 +602272.24 5678161.69 97.50 +602272.26 5676968.76 98.75 +602272.41 5678672.06 98.75 +602272.64 5678637.79 98.75 +602272.86 5678785.51 97.50 +602273.15 5678571.83 98.75 +602273.22 5678770.82 97.30 +602273.58 5678716.80 98.75 +602274.19 5677344.94 98.75 +602274.21 5676950.89 97.50 +602274.41 5676385.75 101.25 +602274.50 5677245.71 98.75 +602274.70 5677497.73 97.50 +602274.77 5678745.05 97.50 +602274.77 5678599.56 98.75 +602274.84 5677964.83 97.40 +602275.46 5677530.57 97.50 +602275.46 5676893.04 97.50 +602276.07 5678513.72 98.75 +602276.16 5678758.50 97.30 +602276.30 5677159.37 98.75 +602276.32 5677974.50 97.40 +602276.40 5678649.10 97.50 +602276.73 5676920.58 97.25 +602276.95 5677550.83 97.50 +602277.07 5677401.20 98.75 +602277.17 5676960.09 98.75 +602277.40 5676781.28 98.75 +602277.64 5677609.17 97.50 +602277.77 5677329.35 98.75 +602278.04 5676609.62 98.75 +602278.07 5677217.41 98.75 +602278.17 5678776.91 97.50 +602278.22 5678664.39 98.75 +602278.57 5678867.30 97.50 +602278.63 5677923.43 97.50 +602278.66 5676586.40 98.75 +602279.04 5677175.99 98.75 +602279.07 5678490.84 98.75 +602279.25 5678768.70 97.50 +602279.39 5676942.48 97.50 +602279.83 5678631.01 98.75 +602279.95 5678765.02 97.30 +602279.98 5676884.27 97.50 +602280.03 5678464.77 97.50 +602280.09 5678505.91 98.75 +602280.24 5676494.72 100.00 +602280.87 5677490.08 97.50 +602281.35 5678146.45 97.50 +602281.43 5678520.67 98.75 +602281.53 5677413.48 97.50 +602281.60 5678710.91 98.75 +602281.81 5676912.10 97.25 +602281.83 5678781.29 97.50 +602281.89 5676951.32 98.75 +602282.15 5678162.32 97.50 +602282.20 5677600.60 97.50 +602282.52 5678575.06 98.75 +602282.57 5678739.05 97.50 +602282.64 5677239.95 98.75 +602283.43 5678656.00 98.75 +602283.46 5677341.25 98.75 +602283.76 5678760.25 97.50 +602284.14 5677613.97 97.50 +602284.17 5678642.85 97.50 +602284.32 5676384.55 101.25 +602284.44 5676934.00 97.50 +602284.58 5676875.54 97.50 +602284.65 5678600.67 98.75 +602284.71 5676579.08 98.75 +602285.17 5677528.38 97.50 +602285.35 5676786.68 98.75 +602285.98 5677157.03 98.75 +602286.23 5677211.68 98.75 +602286.26 5676604.00 98.75 +602286.35 5677397.55 98.75 +602286.43 5676942.45 98.75 +602286.46 5677481.83 97.50 +602286.49 5677929.54 97.50 +602286.57 5677548.23 97.50 +602286.89 5676903.62 97.25 +602287.02 5677325.61 98.75 +602287.51 5678773.41 97.50 +602287.73 5678863.66 97.50 +602288.23 5678501.43 98.75 +602288.45 5678487.46 98.75 +602288.63 5677173.65 98.75 +602288.64 5678731.15 97.50 +602288.75 5677593.29 97.50 +602288.99 5678627.09 98.75 +602289.02 5678752.21 97.50 +602289.39 5676925.46 97.50 +602289.45 5676570.32 98.75 +602289.49 5678461.62 97.50 +602289.69 5676491.48 100.00 +602289.72 5678648.30 98.75 +602289.87 5676867.20 97.50 +602290.22 5678523.44 98.75 +602290.32 5678706.13 98.75 +602290.39 5677233.68 98.75 +602290.96 5676933.57 98.75 +602291.05 5678148.88 97.50 +602291.36 5678778.44 97.50 +602291.42 5677412.30 97.50 +602291.48 5676894.88 97.25 +602291.77 5678578.76 98.75 +602291.88 5678164.62 97.50 +602291.94 5678636.60 97.50 +602292.73 5677337.56 98.75 +602292.82 5677474.22 97.50 +602293.74 5677612.13 97.50 +602294.01 5676786.90 98.75 +602294.06 5676382.31 101.25 +602294.18 5676916.84 97.50 +602294.35 5677935.66 97.50 +602294.36 5677205.91 98.75 +602294.40 5676598.25 98.75 +602294.58 5678723.16 97.50 +602294.62 5678600.71 98.75 +602294.68 5678560.86 98.75 +602294.77 5677529.87 97.50 +602295.08 5676562.10 98.75 +602295.16 5676858.87 97.50 +602295.40 5677153.76 98.75 +602295.41 5677543.68 97.50 +602295.49 5676924.70 98.75 +602295.64 5677393.91 98.75 +602295.76 5676885.96 97.25 +602296.18 5678736.82 97.30 +602296.20 5677321.71 98.75 +602296.75 5678745.94 97.50 +602296.81 5678769.83 97.50 +602296.89 5677588.03 97.50 +602297.13 5678860.69 97.50 +602297.14 5678641.93 98.75 +602297.50 5678831.07 97.50 +602297.61 5678500.49 98.75 +602297.61 5678568.84 98.75 +602297.85 5678511.01 99.20 +602297.89 5677227.11 98.75 +602298.22 5678486.75 98.75 +602298.39 5676907.91 97.50 +602298.55 5677173.65 98.75 +602298.72 5678624.94 98.75 +602298.95 5678458.46 97.50 +602299.15 5676488.23 100.00 +602299.23 5678701.73 98.75 +602299.53 5677598.98 97.25 +602299.57 5678522.34 98.75 +602299.74 5677467.05 97.50 +602299.84 5678836.06 97.50 +602300.02 5676915.83 98.75 +602300.03 5676877.05 97.25 +602300.04 5678757.25 97.50 +602300.44 5678631.55 97.50 +602300.45 5676850.54 97.50 +602300.63 5678151.74 97.50 +602300.70 5678740.53 97.30 +602300.74 5677537.14 97.50 +602300.89 5678775.60 97.50 +602300.99 5678715.54 97.50 +602301.10 5678582.27 98.75 +602301.31 5677411.13 97.50 +602301.61 5678166.91 97.50 +602301.65 5676554.76 98.75 +602301.81 5676780.70 98.75 +602302.19 5677941.80 97.50 +602302.44 5677335.32 98.75 +602302.49 5677200.15 98.75 +602302.61 5676898.98 97.50 +602302.68 5678729.54 97.30 +602302.70 5676592.74 98.75 +602302.87 5677608.54 97.50 +602303.54 5676379.38 101.25 +602304.31 5676868.14 97.25 +602304.33 5678561.22 98.75 +602304.55 5676906.95 98.75 +602304.56 5678600.73 98.75 +602304.81 5677150.50 98.75 +602304.93 5677390.27 98.75 +602305.03 5678740.40 97.50 +602305.05 5676841.94 97.50 +602305.28 5678749.71 97.50 +602305.34 5676812.77 97.50 +602305.34 5677317.71 98.75 +602305.37 5678824.99 97.50 +602305.40 5677220.54 98.75 +602305.80 5677583.92 97.50 +602306.01 5678637.52 98.75 +602306.12 5678766.25 97.50 +602306.26 5678573.71 98.75 +602306.40 5676802.96 97.50 +602306.60 5676822.49 97.50 +602306.67 5676832.20 97.50 +602306.74 5678859.65 97.50 +602307.02 5678500.79 98.75 +602307.07 5677177.24 98.75 +602307.17 5676890.24 97.50 +602307.54 5677593.26 97.25 +602307.82 5677461.71 97.50 +602307.97 5676772.87 98.75 +602308.00 5676483.59 100.00 +602308.02 5678518.11 98.75 +602308.18 5678487.28 98.75 +602308.31 5678697.72 98.75 +602308.51 5678455.64 97.50 +602308.54 5676859.21 97.25 +602308.64 5678624.01 98.75 +602308.98 5676898.03 98.75 +602309.08 5678735.53 97.30 +602309.15 5678710.07 97.50 +602309.35 5678833.15 97.50 +602309.35 5678756.30 97.50 +602309.42 5676548.51 98.75 +602309.47 5678587.14 98.75 +602309.50 5678722.49 97.30 +602309.54 5678627.45 97.50 +602310.00 5677947.97 97.50 +602310.31 5678152.18 97.50 +602310.46 5678772.88 97.50 +602310.57 5678808.20 97.50 +602310.62 5677194.38 98.75 +602310.67 5676794.23 97.50 +602310.82 5676763.84 98.75 +602311.00 5676587.23 98.75 +602311.04 5676753.88 98.75 +602311.08 5677603.24 97.50 +602311.21 5677409.99 97.50 +602311.49 5678166.53 97.50 +602311.62 5678595.54 98.75 +602311.95 5678817.78 97.50 +602311.97 5676881.62 97.50 +602312.17 5677333.12 98.75 +602312.26 5676374.50 101.25 +602312.32 5677185.19 98.75 +602312.69 5676850.24 97.25 +602312.90 5677213.97 98.75 +602312.94 5678734.35 97.50 +602313.39 5676889.09 98.75 +602313.86 5678745.42 97.50 +602314.06 5678563.25 98.75 +602314.22 5677386.64 98.75 +602314.22 5677147.23 98.75 +602314.50 5678579.19 98.75 +602314.58 5678800.37 97.50 +602314.64 5676872.11 97.50 +602314.69 5677579.75 97.50 +602314.74 5676476.32 100.00 +602315.01 5677315.42 98.75 +602315.02 5676744.74 98.75 +602315.43 5678762.67 97.50 +602315.55 5677587.54 97.25 +602315.63 5678634.98 98.75 +602316.00 5678503.72 98.75 +602316.08 5678728.65 97.30 +602316.55 5678860.41 97.50 +602316.80 5676811.87 97.25 +602316.85 5676841.27 97.25 +602316.92 5678519.65 98.75 +602317.11 5678716.68 97.30 +602317.32 5677458.78 97.50 +602317.36 5676579.74 98.75 +602317.57 5678490.28 98.75 +602317.66 5678694.33 98.75 +602317.80 5676880.16 98.75 +602317.81 5677954.15 97.50 +602317.82 5676821.70 97.25 +602318.10 5676862.88 97.50 +602318.19 5676831.53 97.25 +602318.19 5678453.27 97.50 +602318.30 5676790.11 97.50 +602318.60 5678623.82 98.75 +602318.61 5678753.40 97.50 +602318.64 5676735.47 98.75 +602318.67 5676551.51 98.75 +602318.70 5678707.24 97.50 +602318.95 5677597.38 97.50 +602319.06 5678833.76 97.50 +602319.39 5678626.31 97.50 +602320.06 5678770.30 97.50 +602320.10 5678150.12 97.50 +602320.27 5677207.25 98.75 +602320.65 5676369.07 101.25 +602320.87 5678728.32 97.50 +602320.94 5676570.78 98.75 +602321.02 5677408.39 97.50 +602321.41 5678165.31 97.50 +602321.88 5678720.76 97.30 +602321.90 5677330.90 98.75 +602321.96 5676560.86 98.75 +602322.01 5676726.09 98.75 +602322.12 5678585.56 98.75 +602322.18 5676470.11 100.00 +602322.35 5677141.59 98.75 +602322.46 5678794.32 97.50 +602322.48 5676854.09 97.50 +602322.70 5676871.48 98.75 +602322.85 5678741.77 97.50 +602322.92 5678549.70 98.75 +602323.23 5678566.97 98.75 +602323.36 5678541.93 98.75 +602323.39 5676798.52 97.50 +602323.56 5677575.54 97.50 +602323.79 5677383.97 98.75 +602323.99 5677582.47 97.25 +602324.35 5678508.04 98.75 +602324.79 5678524.88 98.75 +602324.81 5677313.56 98.75 +602324.98 5678819.75 97.50 +602325.24 5678632.45 98.75 +602325.30 5678761.38 97.50 +602325.50 5678856.29 97.50 +602325.63 5677960.33 97.50 +602326.10 5678495.29 98.75 +602326.24 5678826.84 97.50 +602326.41 5677590.99 97.50 +602327.04 5678691.02 98.75 +602327.07 5677456.72 97.50 +602327.16 5676717.83 98.75 +602327.43 5676807.52 97.50 +602327.59 5677200.47 98.75 +602327.60 5676862.81 98.75 +602327.63 5676845.70 97.50 +602327.66 5678749.92 97.50 +602327.90 5678451.03 97.50 +602328.08 5678621.37 98.75 +602328.10 5678043.35 97.50 +602328.23 5678704.37 97.50 +602328.50 5678833.11 97.50 +602328.67 5676363.14 101.25 +602329.11 5678722.74 97.50 +602329.33 5678625.50 97.50 +602329.55 5678767.33 97.50 +602329.60 5676817.14 97.50 +602329.88 5678148.04 97.50 +602330.10 5678788.00 97.50 +602330.21 5677135.47 98.75 +602330.57 5678580.48 99.10 +602330.61 5676836.29 97.50 +602330.71 5677406.08 97.50 +602330.78 5678590.39 98.75 +602331.24 5678163.62 97.50 +602331.52 5678514.17 98.75 +602331.59 5676466.71 100.00 +602331.61 5677328.64 98.75 +602331.69 5676826.79 97.50 +602331.85 5678551.70 98.75 +602331.85 5678738.16 97.50 +602332.12 5678571.39 98.75 +602332.36 5677571.18 97.50 +602332.51 5678530.33 98.75 +602332.53 5677577.58 97.25 +602332.57 5676854.17 98.75 +602332.78 5678539.82 98.75 +602333.10 5678814.00 97.50 +602333.27 5676798.85 98.75 +602333.41 5677966.54 97.50 +602333.57 5677382.00 98.75 +602333.73 5676788.89 98.75 +602334.00 5677584.77 97.50 +602334.13 5678851.52 97.50 +602334.19 5676710.77 98.75 +602334.19 5676778.94 98.75 +602334.43 5676768.98 98.75 +602334.44 5676759.02 98.75 +602334.46 5678628.77 98.75 +602334.46 5676749.06 98.75 +602334.61 5677311.72 98.75 +602334.90 5678499.48 98.75 +602334.91 5677193.69 98.75 +602335.17 5678760.06 97.50 +602335.77 5678741.43 97.25 +602336.17 5676356.53 101.25 +602336.30 5678687.43 98.75 +602336.56 5678780.49 97.50 +602336.66 5678048.49 97.50 +602336.67 5678746.34 97.50 +602336.79 5677454.57 97.50 +602337.07 5676808.03 98.75 +602337.30 5678617.57 98.75 +602337.41 5678700.53 97.50 +602337.71 5678717.72 97.50 +602337.72 5678521.26 98.75 +602337.84 5678450.17 97.50 +602338.07 5677129.35 98.75 +602338.13 5676845.91 98.75 +602338.18 5676740.17 98.75 +602338.75 5678622.28 97.50 +602338.99 5678764.18 97.50 +602339.62 5678145.81 97.50 +602340.24 5678529.93 98.75 +602340.34 5678592.98 98.75 +602340.40 5677403.78 97.50 +602340.57 5677973.46 97.50 +602340.84 5678160.80 97.50 +602340.92 5678734.71 97.50 +602340.94 5676463.20 100.00 +602340.95 5677566.43 97.50 +602340.96 5677572.50 97.25 +602340.96 5676817.21 98.75 +602341.08 5678575.68 98.75 +602341.19 5676703.73 98.75 +602341.23 5678808.28 97.50 +602341.28 5677326.22 98.75 +602341.45 5676827.12 98.75 +602341.50 5678552.34 98.75 +602341.75 5676837.08 98.75 +602341.80 5677578.81 97.50 +602341.95 5677186.62 98.75 +602342.36 5678538.44 98.75 +602343.25 5677379.74 98.75 +602343.26 5678847.82 97.50 +602343.50 5676731.74 98.75 +602343.55 5678624.76 98.75 +602343.88 5678739.14 97.25 +602344.25 5676350.65 101.25 +602344.34 5677121.64 98.75 +602344.44 5677310.05 98.75 +602344.70 5678775.66 97.50 +602344.75 5678498.48 98.75 +602344.77 5678488.54 98.75 +602344.87 5678757.75 97.50 +602344.90 5678054.09 97.50 +602345.31 5678683.23 98.75 +602345.69 5678742.78 97.50 +602345.79 5678711.94 97.50 +602346.03 5676695.02 98.75 +602346.39 5677451.94 97.50 +602346.50 5678696.45 97.50 +602346.73 5678614.37 98.75 +602346.93 5678545.24 99.00 +602347.73 5677980.38 97.50 +602347.77 5678449.31 97.50 +602347.89 5678618.39 97.50 +602348.39 5676685.43 98.75 +602348.55 5678761.49 97.50 +602348.82 5676723.32 98.75 +602348.98 5677179.55 98.75 +602349.01 5676342.35 101.25 +602349.29 5678729.99 97.50 +602349.31 5677567.29 97.25 +602349.37 5677572.56 97.50 +602349.39 5678143.82 97.50 +602349.54 5677561.68 97.50 +602349.77 5677321.59 98.75 +602349.82 5678803.42 97.50 +602349.99 5677401.12 97.50 +602350.00 5678580.00 98.75 +602350.09 5678593.98 98.75 +602350.15 5676675.62 98.75 +602350.22 5676459.47 100.00 +602350.34 5678481.45 98.75 +602350.42 5678157.94 97.50 +602350.44 5677113.76 98.75 +602350.70 5678555.33 98.75 +602351.00 5678734.81 97.25 +602351.92 5678539.15 98.75 +602352.02 5676665.84 98.75 +602352.31 5677375.55 98.75 +602352.45 5678620.39 98.75 +602352.86 5678060.12 97.50 +602352.94 5678846.13 97.50 +602353.39 5677313.23 98.75 +602353.78 5678705.99 97.50 +602354.13 5676714.89 98.75 +602354.36 5678773.28 97.50 +602354.36 5678679.11 98.75 +602354.58 5678755.44 97.50 +602354.79 5678739.40 97.50 +602355.25 5676656.42 98.75 +602355.30 5678691.85 97.50 +602355.53 5676334.94 101.25 +602355.71 5678610.36 98.75 +602355.71 5678587.55 98.75 +602355.91 5677986.04 97.50 +602356.00 5677449.31 97.50 +602356.02 5677172.48 98.75 +602356.39 5678613.18 97.50 +602356.54 5677105.89 98.75 +602357.06 5678724.19 97.50 +602357.70 5677567.40 97.50 +602357.71 5678448.45 97.50 +602357.76 5677556.35 97.50 +602357.78 5677562.28 97.25 +602357.86 5678729.93 97.25 +602358.22 5678759.19 97.50 +602358.47 5676646.99 98.75 +602358.69 5678146.08 97.50 +602359.11 5678799.90 97.50 +602359.37 5676455.45 100.00 +602359.45 5676706.47 98.75 +602359.47 5678553.31 98.75 +602359.56 5677398.36 97.50 +602359.78 5678481.41 98.75 +602359.84 5678543.95 98.75 +602359.90 5678154.78 97.50 +602360.57 5678614.65 98.75 +602361.36 5677371.35 98.75 +602361.44 5678065.02 97.50 +602361.49 5678767.73 97.50 +602362.18 5678788.24 97.50 +602362.18 5678733.28 97.50 +602362.20 5678848.90 97.50 +602362.54 5677097.93 98.75 +602362.77 5677165.14 98.75 +602362.96 5676328.26 101.25 +602363.09 5676638.30 98.75 +602363.21 5678702.83 97.50 +602363.52 5678604.18 98.75 +602363.54 5678675.28 98.75 +602363.65 5678686.44 97.50 +602363.87 5678724.04 97.25 +602364.18 5677991.60 97.50 +602364.30 5678717.75 97.50 +602364.31 5678607.17 97.50 +602364.48 5678754.32 97.50 +602364.77 5676698.04 98.75 +602365.60 5677446.68 97.50 +602365.61 5677550.45 97.50 +602365.84 5678813.72 97.50 +602366.56 5678793.83 97.50 +602366.56 5677557.83 97.25 +602366.94 5677564.38 97.50 +602367.64 5678447.59 97.50 +602368.22 5676688.98 98.75 +602368.50 5676451.40 100.00 +602368.52 5677089.96 98.75 +602368.61 5678780.66 97.50 +602368.68 5678608.90 98.75 +602368.70 5678726.12 97.50 +602369.05 5678484.95 98.75 +602369.07 5676630.33 98.75 +602369.09 5676679.06 98.75 +602369.13 5677395.61 97.50 +602369.33 5677157.63 98.75 +602369.42 5678805.36 97.50 +602369.75 5678718.02 97.25 +602369.97 5676669.13 98.75 +602370.41 5677367.16 98.75 +602370.44 5678597.04 98.75 +602370.71 5678696.30 97.50 +602370.80 5678068.49 97.50 +602370.84 5676322.25 101.25 +602371.07 5678816.94 97.50 +602371.37 5678711.11 97.50 +602372.11 5678601.01 97.50 +602372.26 5678681.43 97.50 +602372.44 5677997.15 97.50 +602372.57 5678671.19 98.75 +602372.67 5676659.64 98.75 +602374.40 5678753.38 97.50 +602374.49 5677081.99 98.75 +602374.75 5677547.48 97.50 +602375.04 5678718.77 97.50 +602375.04 5676622.35 98.75 +602375.21 5677444.05 97.50 +602375.55 5678773.58 97.50 +602375.62 5677554.14 97.25 +602375.89 5677150.11 98.75 +602376.28 5676650.35 98.75 +602376.43 5677561.87 97.50 +602377.08 5678589.61 98.75 +602377.11 5678806.68 97.25 +602377.14 5678800.88 97.50 +602377.40 5678604.13 98.75 +602377.61 5678447.82 97.50 +602377.89 5678489.55 98.75 +602377.93 5678689.45 97.50 +602377.97 5676448.18 100.00 +602378.33 5678704.36 97.50 +602378.62 5677392.57 97.50 +602378.75 5678512.66 98.75 +602378.88 5678812.22 97.50 +602379.57 5677363.23 98.75 +602379.90 5676641.07 98.75 +602380.01 5678521.13 98.75 +602380.16 5678071.95 97.50 +602380.19 5678003.32 97.50 +602380.40 5676319.31 101.25 +602380.45 5677074.00 98.75 +602380.72 5678595.98 97.50 +602380.83 5678676.39 97.50 +602381.04 5678665.98 98.75 +602381.59 5678711.62 97.50 +602381.62 5676614.88 98.75 +602382.34 5677142.50 98.75 +602383.14 5678528.70 98.75 +602383.36 5678767.43 97.50 +602384.29 5678551.58 98.75 +602384.36 5678753.23 97.50 +602384.40 5677545.65 97.50 +602384.66 5678509.40 98.75 +602384.74 5677441.16 97.50 +602385.12 5678697.44 97.50 +602385.16 5678583.89 98.75 +602385.20 5677551.87 97.25 +602385.67 5678797.59 97.50 +602385.70 5678521.58 99.00 +602385.76 5678683.29 97.50 +602385.82 5677559.03 97.50 +602386.11 5678559.23 98.75 +602386.31 5677065.95 98.75 +602386.38 5678599.99 98.75 +602386.43 5678494.68 98.75 +602386.45 5676633.68 98.75 +602386.46 5678807.28 97.50 +602386.68 5678728.29 97.50 +602387.07 5678010.52 97.50 +602387.43 5676444.96 100.00 +602387.58 5678448.07 97.50 +602388.07 5677389.46 97.50 +602388.15 5678704.47 97.50 +602388.50 5676607.68 98.75 +602388.77 5677134.88 98.75 +602388.94 5677359.80 98.75 +602389.18 5678660.28 98.75 +602389.22 5678671.87 97.50 +602389.50 5678075.47 97.50 +602389.61 5678719.70 97.50 +602389.62 5678591.58 97.50 +602390.11 5676317.29 101.25 +602390.48 5678529.79 98.75 +602390.71 5678515.43 98.75 +602391.51 5678761.75 97.50 +602391.99 5678558.58 99.00 +602392.09 5678550.33 98.75 +602392.10 5678690.70 97.50 +602392.18 5677057.89 98.75 +602392.51 5678564.94 98.75 +602393.04 5678676.60 97.50 +602393.11 5676437.93 100.00 +602393.45 5676626.59 98.75 +602393.78 5678793.33 97.50 +602393.97 5677543.47 97.50 +602394.03 5678751.10 97.50 +602394.10 5678017.57 97.50 +602394.27 5677438.27 97.50 +602394.43 5678803.00 97.50 +602394.48 5678523.06 98.75 +602394.53 5678500.43 98.75 +602394.68 5677549.27 97.25 +602394.78 5678581.30 98.75 +602394.96 5678735.11 98.75 +602395.05 5677555.67 97.50 +602395.06 5678697.67 97.50 +602395.20 5677127.25 98.75 +602395.24 5678725.14 97.50 +602395.64 5678712.42 97.50 +602395.82 5676600.92 98.75 +602396.01 5678597.49 98.75 +602396.39 5676428.48 100.00 +602396.49 5678719.09 97.25 +602397.20 5678654.41 98.75 +602397.46 5678449.37 97.50 +602397.49 5677049.48 98.75 +602397.94 5677388.89 97.50 +602398.62 5678555.65 98.75 +602398.73 5677358.03 98.75 +602398.83 5678079.04 97.50 +602399.07 5678588.39 97.50 +602399.30 5678684.21 97.50 +602399.86 5678756.34 97.50 +602400.09 5676316.98 101.25 +602400.19 5678796.50 97.50 +602400.26 5678563.62 98.75 +602400.44 5676619.50 98.75 +602400.71 5678508.06 98.75 +602401.17 5678738.38 98.75 +602401.28 5676419.79 100.00 +602401.55 5678024.18 97.50 +602401.63 5678728.76 98.75 +602401.78 5678714.68 97.25 +602402.27 5678691.19 97.50 +602402.35 5677040.78 98.75 +602402.48 5678706.01 97.50 +602402.53 5677120.54 98.75 +602402.90 5678746.53 97.50 +602402.91 5678719.59 97.50 +602403.13 5676594.15 98.75 +602403.38 5677540.69 97.50 +602403.80 5677435.39 97.50 +602403.99 5677546.06 97.25 +602404.18 5678578.00 98.75 +602404.67 5677553.74 97.50 +602405.09 5678648.36 98.75 +602405.62 5678516.73 98.75 +602405.92 5678596.88 98.75 +602406.44 5676411.23 100.00 +602407.02 5678678.36 97.50 +602407.07 5678710.28 97.25 +602407.21 5677032.09 98.75 +602407.35 5678450.71 97.50 +602407.90 5677388.89 97.50 +602407.93 5678750.53 97.50 +602408.07 5676613.09 98.75 +602408.26 5678082.32 97.50 +602408.35 5678584.88 97.50 +602408.59 5677356.52 98.75 +602409.01 5678030.78 97.50 +602409.68 5676586.67 98.75 +602409.93 5676318.76 101.25 +602410.11 5678723.60 98.75 +602410.30 5678734.64 98.75 +602410.30 5677114.29 98.75 +602410.38 5678685.89 97.50 +602410.59 5678714.06 97.50 +602410.60 5678701.15 97.50 +602410.86 5678525.21 98.75 +602411.38 5678741.39 97.50 +602412.05 5677023.38 98.75 +602412.23 5677536.55 97.50 +602413.30 5677542.85 97.25 +602413.33 5677432.50 97.50 +602413.39 5678574.37 98.75 +602413.52 5677549.74 97.50 +602414.17 5678645.16 98.75 +602414.60 5676405.55 100.00 +602415.34 5678673.44 97.50 +602415.70 5676606.68 98.75 +602415.86 5678596.55 98.75 +602416.00 5678744.71 97.50 +602416.03 5676578.98 98.75 +602416.20 5678706.43 97.50 +602416.31 5678037.53 97.50 +602416.58 5678579.25 97.50 +602416.71 5677014.57 98.75 +602417.23 5678452.06 97.50 +602417.76 5678085.37 97.50 +602417.83 5677389.27 97.50 +602418.08 5677108.04 98.75 +602418.24 5678717.92 98.75 +602418.36 5677354.51 98.75 +602418.59 5678530.91 98.75 +602418.68 5678681.16 97.50 +602418.93 5678734.88 97.50 +602419.11 5678730.02 98.75 +602419.66 5676320.87 101.25 +602419.75 5678698.74 97.50 +602420.04 5678660.57 98.75 +602420.27 5678650.63 98.75 +602420.60 5678567.48 98.75 +602420.85 5677531.85 97.50 +602421.37 5677005.76 98.75 +602421.75 5676570.91 98.75 +602421.90 5677544.69 97.50 +602422.46 5677428.51 97.50 +602422.62 5676599.63 98.75 +602422.95 5676400.06 100.00 +602423.03 5678044.89 97.50 +602423.23 5678673.09 97.50 +602423.87 5678572.44 97.50 +602423.94 5678738.74 97.50 +602425.01 5678710.64 98.75 +602425.40 5678722.44 98.75 +602425.65 5678559.21 98.75 +602425.80 5678596.39 98.75 +602425.83 5676561.83 98.75 +602426.02 5676996.95 98.75 +602426.16 5677102.21 98.75 +602426.45 5678728.33 97.50 +602426.46 5677536.64 97.50 +602427.11 5678453.41 97.50 +602427.28 5677391.94 97.50 +602427.49 5678087.59 97.50 +602428.10 5677352.36 98.75 +602428.28 5676591.43 98.75 +602428.33 5678532.60 98.75 +602428.76 5676325.01 101.25 +602428.95 5678660.11 98.75 +602428.99 5678549.82 98.75 +602429.08 5678780.89 97.50 +602429.43 5678052.49 97.50 +602429.92 5676552.74 98.75 +602430.20 5678678.75 98.75 +602430.52 5678702.44 98.75 +602430.68 5676988.15 98.75 +602431.12 5678565.60 97.50 +602431.27 5678540.12 98.75 +602431.33 5678732.09 97.50 +602431.56 5677424.46 97.50 +602431.83 5678714.86 98.75 +602432.69 5676399.03 100.00 +602433.92 5678721.72 97.50 +602433.94 5676583.23 98.75 +602433.95 5678080.00 97.50 +602434.38 5677096.55 98.75 +602434.44 5676543.88 98.75 +602434.96 5678773.58 97.50 +602435.02 5678670.12 98.75 +602435.07 5678060.70 97.50 +602435.36 5678070.60 97.50 +602435.74 5678596.39 98.75 +602435.76 5677397.11 97.50 +602435.78 5678783.82 97.50 +602436.19 5678686.51 98.75 +602436.48 5678694.49 98.75 +602436.91 5678455.17 97.50 +602436.95 5676980.52 98.75 +602437.69 5676329.46 101.25 +602437.73 5677349.84 98.75 +602437.92 5678655.83 98.75 +602438.34 5678558.72 97.50 +602438.38 5676574.32 98.75 +602438.53 5678812.38 97.50 +602438.73 5678725.44 97.50 +602438.86 5678707.93 98.75 +602439.76 5676535.46 98.75 +602440.05 5677419.37 97.50 +602441.38 5678715.11 97.50 +602441.44 5678804.79 97.50 +602442.61 5676565.31 98.75 +602442.64 5677090.97 98.75 +602442.68 5676399.00 100.00 +602443.00 5678767.73 97.50 +602443.26 5678664.55 98.75 +602443.32 5677403.59 97.50 +602443.93 5676973.40 98.75 +602445.05 5678780.22 97.50 +602445.08 5676527.03 98.75 +602445.43 5677411.47 97.50 +602445.66 5678596.59 98.75 +602445.95 5676335.09 101.25 +602445.97 5678718.63 97.50 +602446.31 5678656.14 98.75 +602446.72 5678456.77 97.50 +602446.80 5678553.63 97.50 +602446.85 5676556.29 98.75 +602447.07 5677346.35 98.75 +602447.32 5678702.71 98.75 +602447.67 5678811.60 97.50 +602447.94 5678797.67 97.50 +602449.31 5678709.06 97.50 +602450.44 5676518.64 98.75 +602450.91 5676966.29 98.75 +602451.12 5678762.07 97.50 +602451.78 5677086.99 98.75 +602451.88 5676547.75 98.75 +602452.68 5676399.23 100.00 +602453.06 5678711.65 97.50 +602453.39 5678789.51 97.50 +602453.65 5678775.30 97.50 +602454.48 5677804.80 97.75 +602454.67 5676339.96 101.25 +602454.70 5678600.44 98.75 +602454.87 5678696.28 98.75 +602455.08 5677814.75 97.75 +602455.97 5676510.35 98.75 +602456.15 5678633.76 99.25 +602456.39 5677824.63 97.75 +602456.42 5677342.86 98.75 +602456.58 5678554.38 97.50 +602456.65 5678456.84 97.50 +602456.88 5678807.95 97.50 +602456.96 5677795.18 97.75 +602457.24 5678703.01 97.50 +602457.86 5676539.78 98.75 +602457.88 5676959.18 98.75 +602458.19 5677834.42 97.75 +602460.19 5678758.00 97.50 +602460.28 5678704.82 97.50 +602460.93 5677083.00 98.75 +602460.98 5678783.10 97.50 +602461.49 5676502.06 98.75 +602462.16 5677786.67 97.75 +602462.52 5678813.68 97.50 +602462.56 5678690.00 98.75 +602462.62 5676400.17 100.00 +602462.90 5678772.49 97.50 +602463.00 5678605.92 98.75 +602463.01 5677812.29 97.80 +602463.55 5676344.54 101.25 +602463.59 5677840.91 97.75 +602463.83 5676531.80 98.75 +602464.27 5678819.75 97.50 +602464.69 5678696.41 97.50 +602465.12 5676952.33 98.75 +602465.28 5678802.67 97.50 +602465.40 5678647.13 97.50 +602465.84 5677339.59 98.75 +602466.31 5678454.38 97.50 +602466.51 5678553.56 97.50 +602467.40 5677785.78 97.75 +602467.41 5676494.07 98.75 +602467.95 5678698.49 97.50 +602468.22 5678776.36 97.50 +602468.80 5678753.03 97.50 +602469.27 5677833.97 97.75 +602470.01 5677078.89 98.75 +602470.06 5676524.03 98.75 +602470.21 5678640.69 97.50 +602470.58 5677794.84 97.75 +602470.69 5678808.45 97.50 +602470.70 5678684.30 98.75 +602471.69 5678651.70 97.50 +602471.75 5677824.33 97.75 +602471.82 5678689.44 97.50 +602472.04 5677804.70 97.75 +602472.37 5676402.27 100.00 +602472.43 5676945.56 98.75 +602472.47 5678607.21 98.75 +602472.63 5676348.72 101.25 +602473.29 5678796.81 97.50 +602473.40 5677814.57 97.75 +602473.91 5678817.47 97.50 +602474.18 5676486.76 98.75 +602475.27 5677336.33 98.75 +602475.61 5678692.15 97.50 +602475.76 5678550.02 97.50 +602475.85 5678451.48 97.50 +602476.27 5678461.39 97.50 +602476.32 5676516.28 98.75 +602476.73 5678747.05 97.50 +602477.75 5678677.31 98.75 +602478.95 5678682.46 97.50 +602479.00 5678641.07 97.50 +602479.00 5677074.55 98.75 +602479.23 5678803.39 97.50 +602479.62 5678646.92 97.25 +602479.79 5676938.85 98.75 +602480.38 5678653.23 97.50 +602480.54 5678790.00 97.50 +602481.17 5678469.41 97.50 +602481.68 5676480.85 98.75 +602481.77 5676352.78 101.25 +602481.96 5676405.08 100.00 +602482.40 5678606.77 98.75 +602482.58 5676508.52 98.75 +602483.20 5678814.10 97.50 +602483.27 5678685.81 97.50 +602484.44 5678740.77 97.50 +602484.60 5678670.11 98.75 +602484.69 5677333.06 98.75 +602484.74 5678545.71 97.50 +602485.24 5678460.40 97.50 +602485.30 5678449.29 97.50 +602486.20 5678675.62 97.50 +602487.53 5678797.90 97.50 +602487.60 5676932.67 98.75 +602487.70 5678642.51 97.50 +602487.87 5676500.28 98.75 +602487.94 5678783.36 97.50 +602487.98 5677070.21 98.75 +602488.93 5678653.82 97.50 +602489.33 5678475.14 97.50 +602490.43 5676490.65 98.75 +602490.49 5676481.03 98.75 +602490.64 5678679.13 97.50 +602491.08 5676356.41 101.25 +602491.56 5676407.87 100.00 +602492.01 5678663.50 98.75 +602492.03 5678734.34 97.50 +602492.05 5678809.56 97.50 +602492.32 5678606.09 98.75 +602493.12 5677327.85 98.75 +602493.63 5678541.18 97.50 +602493.78 5678669.14 97.50 +602494.09 5678752.75 97.50 +602494.38 5678647.59 97.50 +602494.58 5678463.69 97.50 +602495.16 5678450.50 97.50 +602495.41 5676926.48 98.75 +602495.89 5678792.52 97.50 +602497.08 5677066.14 98.75 +602497.16 5678481.31 97.50 +602497.18 5678780.96 97.50 +602497.79 5677226.60 98.75 +602498.01 5678672.45 97.50 +602498.17 5677365.16 97.50 +602498.19 5677235.50 98.75 +602499.47 5678727.75 97.50 +602499.70 5678657.20 98.75 +602499.91 5678755.80 97.50 +602500.37 5678745.49 97.50 +602500.72 5676359.06 101.25 +602500.87 5678804.96 97.50 +602501.10 5677371.51 97.50 +602501.27 5677322.09 98.75 +602501.36 5678662.67 97.50 +602501.52 5676408.74 100.00 +602501.60 5677217.70 98.75 +602502.24 5678605.41 98.75 +602502.77 5678469.37 97.50 +602502.95 5678785.77 97.50 +602503.22 5676920.30 98.75 +602503.55 5678540.36 97.50 +602503.75 5678455.27 97.50 +602503.78 5678488.72 97.50 +602504.60 5678693.88 97.50 +602505.41 5678665.80 97.50 +602505.77 5677236.48 98.75 +602505.85 5677208.98 98.75 +602506.32 5677062.38 98.75 +602506.51 5677221.42 98.50 +602506.66 5677361.41 97.50 +602506.80 5678738.36 97.50 +602507.39 5678650.90 98.75 +602507.61 5678722.35 97.50 +602508.96 5678656.21 97.50 +602509.10 5678753.21 97.50 +602509.26 5677316.13 98.75 +602509.81 5678496.65 97.50 +602510.04 5678801.14 97.50 +602510.21 5677372.28 97.50 +602510.30 5677200.37 98.75 +602510.34 5678697.19 97.50 +602510.36 5676361.71 101.25 +602510.44 5677214.56 98.50 +602511.47 5676409.69 100.00 +602511.77 5678473.17 97.50 +602511.83 5678687.48 97.50 +602511.90 5676915.42 98.75 +602511.95 5678460.96 97.50 +602512.09 5678827.38 97.50 +602512.09 5678604.09 98.75 +602512.29 5677229.30 98.75 +602512.97 5678659.35 97.50 +602513.27 5678538.74 97.50 +602513.80 5678731.93 97.50 +602514.37 5677207.69 98.50 +602515.09 5678644.60 98.75 +602515.49 5677357.71 97.50 +602515.54 5678504.81 97.50 +602515.56 5677058.61 98.75 +602515.67 5677192.29 98.75 +602515.99 5677220.33 98.75 +602516.75 5678649.98 97.50 +602516.83 5678718.64 97.50 +602517.10 5677309.96 98.75 +602517.69 5678748.92 97.50 +602518.26 5678691.62 97.50 +602518.30 5677200.83 98.50 +602519.17 5678802.69 97.50 +602519.23 5678820.46 97.50 +602519.41 5677369.67 97.50 +602519.41 5678681.08 97.50 +602519.70 5677211.36 98.75 +602520.10 5678478.52 97.50 +602520.16 5676363.54 101.25 +602520.41 5678466.21 97.50 +602520.46 5678737.59 97.75 +602520.54 5678652.90 97.50 +602520.66 5676910.68 98.75 +602521.38 5676411.05 100.00 +602521.90 5678602.47 98.75 +602522.06 5678512.32 97.50 +602522.31 5678534.53 97.50 +602522.53 5677185.51 98.75 +602522.57 5678728.01 97.50 +602522.57 5678811.35 97.50 +602523.46 5678639.25 98.75 +602523.46 5677202.43 98.75 +602523.77 5677352.84 97.50 +602524.54 5678643.75 97.50 +602524.79 5677054.84 98.75 +602524.94 5677303.79 98.75 +602525.26 5678684.57 97.50 +602526.24 5678744.55 97.50 +602526.27 5678715.53 97.50 +602526.64 5678674.25 97.50 +602527.05 5678485.51 97.50 +602527.82 5677193.76 98.75 +602528.04 5677365.46 97.50 +602528.20 5676917.04 98.75 +602528.27 5678520.09 97.50 +602528.96 5676905.14 98.75 +602528.98 5678647.67 97.50 +602529.13 5678471.05 97.50 +602530.13 5676363.43 101.25 +602530.38 5677185.17 98.75 +602530.61 5678529.11 97.50 +602530.86 5677356.06 97.25 +602530.98 5678750.18 97.50 +602531.29 5676412.38 100.00 +602531.46 5677347.10 97.50 +602531.54 5678724.62 97.50 +602531.77 5678602.03 98.75 +602531.94 5678634.07 98.75 +602532.29 5678756.69 97.50 +602532.83 5678678.13 97.50 +602533.06 5677298.04 98.75 +602533.21 5678638.88 97.50 +602533.67 5677050.29 98.75 +602533.85 5678667.39 97.50 +602534.60 5678491.81 97.50 +602534.96 5678740.55 97.50 +602535.70 5676923.61 98.75 +602536.07 5678713.83 97.50 +602536.62 5677361.13 97.50 +602537.25 5676899.60 98.75 +602537.49 5678782.66 97.50 +602537.56 5678642.65 97.50 +602537.81 5678792.42 97.50 +602537.95 5678475.70 97.50 +602538.25 5677350.74 97.25 +602539.06 5677341.23 97.50 +602540.12 5676362.95 101.25 +602540.30 5678720.73 97.50 +602540.30 5678671.55 97.50 +602540.37 5678748.39 97.50 +602540.42 5678628.88 98.75 +602541.02 5678660.50 97.50 +602541.25 5676413.23 100.00 +602541.66 5677292.98 98.75 +602541.69 5678602.73 98.75 +602541.91 5677044.85 98.75 +602542.05 5678634.28 97.50 +602542.20 5678755.65 97.50 +602543.11 5676930.30 98.75 +602543.17 5678496.84 97.50 +602543.20 5678735.70 97.50 +602543.74 5678774.97 97.50 +602544.97 5677356.37 97.50 +602545.55 5676894.06 98.75 +602545.64 5677345.43 97.25 +602545.69 5678711.35 97.50 +602545.74 5678794.69 97.50 +602546.04 5678637.44 97.50 +602546.07 5678481.48 97.50 +602546.82 5677335.56 97.50 +602547.70 5678664.92 97.50 +602547.93 5678653.35 97.50 +602548.54 5678715.90 97.50 +602548.83 5678743.11 97.50 +602549.07 5678623.97 98.75 +602549.12 5677563.91 97.50 +602549.12 5677037.96 98.75 +602549.89 5676361.10 101.25 +602549.94 5678767.16 97.50 +602550.26 5677287.93 98.75 +602550.28 5678686.74 97.50 +602550.51 5676936.98 98.75 +602550.65 5678629.24 97.50 +602551.09 5676414.57 100.00 +602551.14 5678730.31 97.50 +602551.62 5678603.17 98.75 +602552.10 5678754.98 97.50 +602552.13 5678696.17 97.50 +602552.52 5678500.30 97.50 +602553.03 5677340.12 97.25 +602553.07 5677351.24 97.50 +602553.30 5677554.98 97.50 +602553.76 5678705.64 97.50 +602554.51 5678632.23 97.50 +602554.57 5677329.88 97.50 +602554.57 5678486.57 97.50 +602554.69 5676890.62 98.75 +602554.85 5678646.20 97.50 +602554.86 5678790.99 97.50 +602555.11 5678658.28 97.50 +602555.20 5676401.52 101.25 +602555.21 5677567.55 97.50 +602555.92 5676945.28 98.75 +602556.49 5678722.43 97.50 +602556.66 5677031.43 98.75 +602556.96 5677004.02 98.75 +602557.19 5678679.59 97.50 +602557.20 5678713.19 97.50 +602557.53 5676994.06 98.75 +602557.75 5678619.13 98.75 +602557.87 5678739.11 97.50 +602558.03 5677013.85 98.75 +602558.09 5676984.10 98.75 +602558.48 5677546.45 97.50 +602558.66 5676974.14 98.75 +602558.86 5678762.75 97.50 +602559.11 5678623.96 97.50 +602559.18 5676964.18 98.75 +602559.27 5677283.80 98.75 +602559.56 5676358.58 101.25 +602559.62 5676419.57 100.00 +602559.69 5676954.22 98.75 +602560.15 5677023.59 98.75 +602560.42 5677334.80 97.25 +602560.81 5677345.54 97.50 +602561.10 5678725.84 97.50 +602561.20 5678604.52 98.75 +602561.53 5678638.84 97.50 +602561.69 5678752.30 97.50 +602561.88 5676919.07 98.75 +602562.13 5678502.91 97.50 +602562.22 5678651.33 97.50 +602562.31 5677324.20 97.50 +602562.45 5677560.97 97.50 +602562.55 5678626.41 97.50 +602562.65 5676909.13 98.75 +602562.80 5676407.56 101.25 +602563.10 5676928.90 98.75 +602563.42 5676899.18 98.75 +602563.51 5678786.04 97.50 +602563.58 5678716.45 97.50 +602563.67 5678490.64 97.50 +602563.94 5678697.91 97.50 +602564.19 5676889.24 98.75 +602564.20 5677538.33 97.50 +602564.30 5678688.99 97.50 +602565.02 5676938.69 98.75 +602565.34 5678612.94 98.75 +602565.51 5678674.15 97.50 +602566.30 5678707.04 97.50 +602566.52 5676948.53 98.75 +602566.63 5676958.50 98.75 +602566.75 5676968.48 98.75 +602566.87 5676978.45 98.75 +602567.00 5676426.31 100.00 +602567.29 5678735.89 97.50 +602567.31 5678618.29 97.50 +602567.46 5677552.33 97.50 +602567.48 5676988.40 98.75 +602567.81 5678758.37 97.50 +602567.82 5677329.49 97.25 +602568.11 5677339.32 97.50 +602568.25 5676998.35 98.75 +602568.42 5678726.55 97.50 +602568.43 5678631.72 97.50 +602568.82 5677280.91 98.75 +602569.01 5677008.29 98.75 +602569.20 5678644.25 97.50 +602569.26 5676356.15 101.25 +602569.63 5678497.38 97.50 +602570.22 5677018.19 98.75 +602570.33 5677530.49 97.50 +602570.47 5678620.40 97.50 +602570.56 5677319.26 97.50 +602570.86 5676412.88 101.25 +602571.26 5678751.23 97.50 +602571.49 5677539.96 97.25 +602571.56 5677028.08 98.75 +602571.99 5678780.94 97.50 +602572.42 5678683.86 97.50 +602573.00 5677037.95 98.75 +602573.32 5676433.94 100.00 +602573.99 5677544.81 97.50 +602574.47 5678669.99 97.50 +602575.21 5677521.80 97.50 +602575.21 5677332.84 97.50 +602575.27 5677047.66 98.75 +602575.51 5678612.61 97.50 +602576.28 5678637.27 97.50 +602576.41 5678625.78 97.50 +602576.48 5678732.00 97.50 +602576.49 5677532.91 97.25 +602576.99 5678722.11 97.50 +602577.53 5677057.38 98.75 +602578.26 5676442.63 100.00 +602578.36 5677278.03 98.75 +602578.51 5678614.54 97.50 +602578.79 5677316.48 97.50 +602578.90 5676418.17 101.25 +602579.02 5676354.13 101.25 +602579.90 5677067.07 98.75 +602580.25 5677324.77 97.50 +602580.41 5677537.18 97.50 +602580.43 5677513.32 97.50 +602581.10 5678679.30 97.50 +602581.49 5677525.87 97.25 +602581.66 5678778.48 97.50 +602581.76 5676451.99 100.00 +602582.25 5678605.27 97.50 +602582.27 5677076.75 98.75 +602583.09 5676471.59 100.00 +602583.22 5676481.57 100.00 +602583.65 5676461.61 100.00 +602583.80 5676491.55 100.00 +602583.82 5678666.58 97.50 +602584.19 5678631.24 97.50 +602584.64 5677086.44 98.75 +602584.81 5678620.51 97.50 +602585.06 5677504.52 97.50 +602585.10 5678716.61 97.50 +602585.15 5678733.32 97.50 +602585.16 5676501.41 100.00 +602585.55 5677518.26 97.25 +602585.84 5676424.96 101.25 +602586.29 5677529.11 97.50 +602586.38 5677096.26 98.75 +602586.92 5678609.24 97.50 +602587.68 5676511.09 100.00 +602587.87 5677106.12 98.75 +602587.96 5677275.36 98.75 +602588.54 5678692.91 98.00 +602588.95 5678597.89 97.50 +602589.01 5676353.68 101.25 +602589.24 5677116.00 98.75 +602589.36 5677510.51 97.25 +602589.53 5677495.60 97.50 +602589.80 5678674.79 97.50 +602590.34 5677125.92 98.75 +602590.89 5678774.85 97.50 +602591.35 5677520.52 97.50 +602591.43 5677135.83 98.75 +602591.69 5676520.18 100.00 +602591.98 5676432.42 101.25 +602592.14 5678625.27 97.50 +602592.71 5678662.34 97.50 +602592.93 5678710.72 97.50 +602593.28 5678615.33 97.50 +602593.35 5678731.52 97.50 +602593.50 5678589.11 97.50 +602594.66 5677145.09 98.75 +602595.74 5678604.74 97.50 +602596.05 5677511.71 97.50 +602596.45 5676528.97 100.00 +602597.48 5678579.97 97.50 +602597.50 5676440.39 101.25 +602597.66 5677492.64 97.50 +602597.82 5677273.80 98.75 +602597.93 5678669.37 97.50 +602598.85 5677502.29 97.50 +602598.99 5676353.22 101.25 +602599.35 5677153.89 98.75 +602599.86 5678770.50 97.50 +602600.41 5678608.55 97.50 +602600.44 5678619.79 97.50 +602600.66 5678656.37 97.50 +602600.89 5678725.01 97.50 +602601.17 5678705.44 97.50 +602601.55 5676449.19 101.25 +602601.69 5678570.94 97.50 +602603.41 5676535.94 100.00 +602603.70 5677162.85 98.75 +602604.55 5676458.37 101.25 +602605.63 5678716.43 97.50 +602606.54 5676467.87 101.25 +602606.58 5678664.77 97.50 +602606.59 5678562.25 97.50 +602606.87 5677269.79 98.75 +602607.55 5677172.06 98.75 +602607.96 5678764.74 97.50 +602608.29 5678698.88 97.50 +602608.74 5678614.31 97.50 +602608.98 5676352.80 101.25 +602609.29 5678651.43 97.50 +602610.64 5678575.69 96.25 +602611.03 5678708.15 97.50 +602611.05 5677181.39 98.75 +602611.14 5676542.28 100.00 +602611.20 5676476.22 101.25 +602611.48 5678553.56 97.50 +602614.37 5677190.80 98.75 +602614.64 5678566.75 96.25 +602614.66 5678691.43 97.50 +602614.70 5678659.37 97.50 +602615.13 5678757.87 97.50 +602615.24 5676485.04 101.25 +602615.53 5678579.67 96.25 +602615.58 5677265.05 98.75 +602616.39 5678544.89 97.50 +602617.05 5678608.86 97.50 +602617.32 5678700.41 97.50 +602617.48 5678645.93 97.50 +602617.94 5677200.10 98.75 +602618.98 5676352.80 101.25 +602620.90 5678559.30 96.25 +602621.38 5677256.94 98.75 +602621.47 5678684.39 97.50 +602621.53 5678536.33 97.50 +602621.75 5678750.41 97.50 +602622.15 5678653.01 97.50 +602622.20 5677209.13 98.75 +602623.74 5678692.78 97.50 +602624.21 5676487.01 101.25 +602624.31 5678575.20 96.25 +602624.44 5678638.83 97.50 +602625.07 5677218.58 98.75 +602625.34 5677248.04 98.75 +602625.44 5678603.51 97.50 +602626.18 5678527.53 97.50 +602626.75 5677228.42 98.75 +602627.20 5677238.24 98.75 +602628.30 5678677.36 97.50 +602628.90 5678743.47 97.50 +602628.98 5676352.80 101.25 +602629.08 5678646.08 97.50 +602629.29 5678554.43 96.25 +602630.27 5678685.25 97.50 +602630.52 5678518.55 97.50 +602631.17 5678631.51 97.50 +602632.72 5676482.43 101.25 +602632.97 5678570.53 96.25 +602633.53 5678561.46 96.00 +602634.06 5678669.47 97.50 +602634.43 5678599.88 97.50 +602634.62 5678509.46 97.50 +602635.92 5678641.43 97.50 +602636.25 5678736.73 97.50 +602636.60 5678660.16 97.50 +602636.80 5678677.71 97.50 +602637.34 5678623.76 97.50 +602637.37 5678650.43 97.50 +602638.39 5678550.67 96.25 +602638.72 5678500.37 97.50 +602638.86 5676354.14 101.25 +602640.42 5676476.54 101.25 +602641.41 5678558.78 96.00 +602641.58 5678565.77 96.25 +602641.78 5678669.24 97.50 +602642.34 5678615.16 97.50 +602642.96 5678491.35 97.50 +602643.28 5678729.70 97.50 +602644.31 5678598.73 97.50 +602645.42 5678659.95 97.50 +602646.87 5678545.86 96.25 +602646.99 5678606.37 97.50 +602647.97 5676470.44 101.25 +602647.98 5678482.73 97.50 +602648.35 5678554.46 96.00 +602648.43 5676356.74 101.25 +602648.69 5678650.53 97.50 +602649.21 5678721.68 97.50 +602650.62 5678561.85 96.25 +602651.96 5678641.11 97.50 +602652.91 5678474.08 97.50 +602654.12 5678539.19 96.25 +602654.66 5678549.03 96.00 +602655.32 5678713.81 97.50 +602655.82 5678464.54 97.50 +602656.02 5678632.07 97.50 +602657.55 5676360.83 101.25 +602658.50 5678556.06 96.25 +602660.96 5678543.59 96.00 +602661.26 5678623.58 97.50 +602661.33 5678456.64 97.50 +602661.49 5678705.98 97.50 +602661.94 5678533.23 96.25 +602665.74 5678471.45 97.50 +602666.05 5678549.72 96.25 +602666.27 5678481.09 97.50 +602666.50 5678615.10 97.50 +602667.02 5678461.58 97.50 +602667.40 5678697.94 97.50 +602670.18 5678527.84 96.25 +602671.86 5678606.69 97.50 +602673.06 5678689.74 97.50 +602673.65 5678543.46 96.25 +602673.78 5678480.68 97.50 +602677.03 5678498.01 97.50 +602677.91 5678598.77 97.50 +602677.95 5678471.62 97.50 +602678.17 5678681.18 97.50 +602678.44 5678526.89 96.25 +602678.82 5678506.16 97.50 +602679.38 5678535.91 96.25 +602680.09 5678489.73 97.50 +602681.98 5678462.50 97.50 +602682.36 5678672.13 97.50 +602683.11 5678495.27 97.75 +602683.68 5678481.59 97.50 +602683.96 5678590.84 97.50 +602685.16 5678560.98 96.25 +602685.26 5678504.01 97.50 +602685.32 5678453.11 97.50 +602685.64 5678551.53 96.25 +602686.68 5678663.14 97.50 +602687.95 5678495.54 97.50 +602688.44 5678474.08 97.50 +602688.71 5678582.12 97.50 +602688.95 5678542.25 96.25 +602689.22 5678443.93 97.50 +602690.08 5678486.91 97.50 +602690.41 5678550.89 96.00 +602691.26 5678478.09 97.50 +602691.55 5678654.45 97.50 +602692.98 5678573.11 97.50 +602693.74 5678435.12 97.50 +602694.19 5678559.95 96.25 +602694.85 5678540.28 96.25 +602695.19 5678550.13 96.25 +602696.11 5678645.59 97.50 +602697.24 5678564.09 97.50 +602699.46 5678554.50 97.50 +602699.84 5678636.34 97.50 +602700.02 5678484.83 97.50 +602700.24 5678474.86 97.50 +602700.42 5678494.79 97.50 +602700.46 5678464.89 97.50 +602700.59 5678544.59 97.50 +602700.99 5678504.75 97.50 +602701.05 5678454.94 97.50 +602701.08 5678534.63 97.50 +602701.47 5678524.67 97.50 +602701.56 5678514.70 97.50 +602701.67 5678444.99 97.50 +602701.77 5678435.03 97.50 +602703.58 5678627.10 97.50 +602704.63 5678598.34 97.50 +602709.01 5678589.38 97.50 +602710.10 5678620.21 97.50 +602714.75 5678581.28 97.50 +602718.30 5678614.57 97.50 +602718.96 5678572.27 97.50 +602721.23 5678562.57 97.50 +602722.20 5678605.68 97.50 +602722.32 5678595.76 97.50 +602724.00 5678553.02 97.50 +602725.19 5678586.21 97.50 +602728.06 5678576.66 97.50 +602729.37 5678545.10 97.50 +602732.37 5678567.67 97.50 +602734.22 5678548.32 97.50 +602734.75 5678558.12 97.50 diff --git a/autoarray/util/nn/src/nn/examples/5/makefile b/autoarray/util/nn/src/nn/examples/5/makefile index 25bd071a3..dae056d53 100644 --- a/autoarray/util/nn/src/nn/examples/5/makefile +++ b/autoarray/util/nn/src/nn/examples/5/makefile @@ -1,4 +1,4 @@ -all: - ./test.sh -clean: - rm -f lin*.txt nn.txt *~ core +all: + ./test.sh +clean: + rm -f lin*.txt nn.txt *~ core diff --git a/autoarray/util/nn/src/nn/examples/5/test.sh b/autoarray/util/nn/src/nn/examples/5/test.sh index bb6f10278..3397ce6a6 100644 --- a/autoarray/util/nn/src/nn/examples/5/test.sh +++ b/autoarray/util/nn/src/nn/examples/5/test.sh @@ -1,21 +1,21 @@ -#!/bin/bash - -N=373 -M=455 - -if [ ! -x ../../nnbathy ] -then - echo "error: no executable found" - echo 'Run "./configure" and "make" in the source directory' - exit 1 -fi - -echo "" -echo -n "Linear interpolation..." -../../nnbathy -i data.txt -n "$N"x"$M" -P alg=l > lin.txt -echo "done" -echo -n "Natural Neighbours Sibson interpolation..." -../../nnbathy -i data.txt -n "$N"x"$M" -W 0 > nn.txt -echo "done" -echo "" -echo 'To visualize, in Matlab run "viewexample"' +#!/bin/bash + +N=373 +M=455 + +if [ ! -x ../../nnbathy ] +then + echo "error: no executable found" + echo 'Run "./configure" and "make" in the source directory' + exit 1 +fi + +echo "" +echo -n "Linear interpolation..." +../../nnbathy -i data.txt -n "$N"x"$M" -P alg=l > lin.txt +echo "done" +echo -n "Natural Neighbours Sibson interpolation..." +../../nnbathy -i data.txt -n "$N"x"$M" -W 0 > nn.txt +echo "done" +echo "" +echo 'To visualize, in Matlab run "viewexample"' diff --git a/autoarray/util/nn/src/nn/examples/5/viewexample.m b/autoarray/util/nn/src/nn/examples/5/viewexample.m index 7eab24f3e..e118fed91 100644 --- a/autoarray/util/nn/src/nn/examples/5/viewexample.m +++ b/autoarray/util/nn/src/nn/examples/5/viewexample.m @@ -1,23 +1,23 @@ -figure - -subplot(2, 2, 1); -viewinterp2('data.txt', 'lin.txt'); -title('Linear interpolation (contours)'); -pause(0.1); - -subplot(2, 2, 2); -viewinterp('data.txt', 'lin.txt'); -title('Linear interpolation (colour coded image)'); -pause(0.1); - -subplot(2, 2, 3); -viewinterp2('data.txt', 'nn.txt'); -title(sprintf('NN interpolation (contours)')); -pause(0.1); - -subplot(2, 2, 4); -viewinterp('data.txt', 'nn.txt'); -title(sprintf('NN interpolation (colour coded image)')); -pause(0.1); - -suptitle('Interpolation from elevation contours using nnbathy'); +figure + +subplot(2, 2, 1); +viewinterp2('data.txt', 'lin.txt'); +title('Linear interpolation (contours)'); +pause(0.1); + +subplot(2, 2, 2); +viewinterp('data.txt', 'lin.txt'); +title('Linear interpolation (colour coded image)'); +pause(0.1); + +subplot(2, 2, 3); +viewinterp2('data.txt', 'nn.txt'); +title(sprintf('NN interpolation (contours)')); +pause(0.1); + +subplot(2, 2, 4); +viewinterp('data.txt', 'nn.txt'); +title(sprintf('NN interpolation (colour coded image)')); +pause(0.1); + +suptitle('Interpolation from elevation contours using nnbathy'); diff --git a/autoarray/util/nn/src/nn/examples/5/viewinterp.m b/autoarray/util/nn/src/nn/examples/5/viewinterp.m index 9d1ef7483..abc919124 100644 --- a/autoarray/util/nn/src/nn/examples/5/viewinterp.m +++ b/autoarray/util/nn/src/nn/examples/5/viewinterp.m @@ -1,130 +1,130 @@ -function [h] = viewinterp(fin, fout, verbose) - - if nargin == 2 - verbose = 1; - end - - if verbose - fprintf('plotting data from "%s" and "%s"\n', fin, fout); - fprintf(' reading "%s"...', fin); - end - - data = load(fin); - xin = data(:, 1); - yin = data(:, 2); - - if verbose - fprintf('\n reading "%s"...', fout); - end - - data = load(fout); - x = data(:, 1); - y = data(:, 2); - z = data(:, 3); - clear data; - - if verbose - fprintf('\n'); - end - - if verbose - fprintf(' working out the grid dimensions...') - end - n = length(x); - if x(2) - x(1) ~= 0 & y(2) - y(1) == 0 - xfirst = 1; - xinc = x(2) > x(1); - if xinc - nx = min(find(diff(x) < 0)); - else - nx = min(find(diff(x) > 0)); - end - if mod(n, nx) ~= 0 - error(sprintf('\n Error: could not work out the grid size, n = %d, nx = %d, n / nx = %f\n', n, nx, n / nx)); - end - ny = n / nx; - x = x(1 : nx); - y = y(1 : nx : n); - z = reshape(z, nx, ny)'; - elseif x(2) - x(1) == 0 & y(2) - y(1) ~= 0 - xfirst = 0; - yinc = y(2) > y(1); - if yinc - ny = min(find(diff(y) < 0)); - else - ny = min(find(diff(y) > 0)); - end - if mod(n, ny) ~= 0 - error(sprintf('\n Error: could not work out the grid size, n = %d, ny = %d, n / ny = %.3f\n', n, ny, n / ny)); - end - nx = n / ny; - y = y(1 : ny); - x = x(1 : ny : n); - z = reshape(z, ny, nx); - else - error(' Error: not a rectangular grid'); - end - if verbose - if xfirst - fprintf('%d x %d, stored by rows\n', nx, ny); - else - fprintf('%d x %d, stored by columns\n', nx, ny); - end - end - - if verbose - fprintf(' plotting...'); - end - - h = pcolor_ps(x, y, z); - zrange = [min(min(z)) max(max(z))]; - caxis(zrange); - set(h, 'LineStyle', 'none'); - axis equal; - axis tight; - hold on; - plot(xin, yin, 'w.', 'markersize', 1); - - if verbose - fprintf('\n'); - end - - return - -function [h] = pcolor_ps(x, y, A); - - if nargin == 1 - A = x; - [n, m] = size(A); - xx = (0.5 : m + 0.5)'; - yy = (0.5 : n + 0.5)'; - elseif nargin == 3 - n = length(y); - m = length(x); - A = reshape(A, n, m); % just in case - xx = getcorners(x); - yy = getcorners(y); - else - error(sprintf('\n Error: pcolor_ps(): nargin = %d (expected 1 or 3)\n', nargin)); - end - - TMP = zeros(n + 1, m + 1); - TMP(1 : n, 1 : m) = A; - - if nargout == 0 - pcolor(xx, yy, TMP); - else - h = pcolor(xx, yy, TMP); - end - - return - -function [c] = getcorners(x) - - n = length(x); - c = zeros(n + 1, 1); - c(2 : n) = (x(2 : n) + x(1 : n - 1)) / 2; - c(1) = 2 * x(1) - c(2); - c(n + 1) = 2 * x(n) - c(n); - - return +function [h] = viewinterp(fin, fout, verbose) + + if nargin == 2 + verbose = 1; + end + + if verbose + fprintf('plotting data from "%s" and "%s"\n', fin, fout); + fprintf(' reading "%s"...', fin); + end + + data = load(fin); + xin = data(:, 1); + yin = data(:, 2); + + if verbose + fprintf('\n reading "%s"...', fout); + end + + data = load(fout); + x = data(:, 1); + y = data(:, 2); + z = data(:, 3); + clear data; + + if verbose + fprintf('\n'); + end + + if verbose + fprintf(' working out the grid dimensions...') + end + n = length(x); + if x(2) - x(1) ~= 0 & y(2) - y(1) == 0 + xfirst = 1; + xinc = x(2) > x(1); + if xinc + nx = min(find(diff(x) < 0)); + else + nx = min(find(diff(x) > 0)); + end + if mod(n, nx) ~= 0 + error(sprintf('\n Error: could not work out the grid size, n = %d, nx = %d, n / nx = %f\n', n, nx, n / nx)); + end + ny = n / nx; + x = x(1 : nx); + y = y(1 : nx : n); + z = reshape(z, nx, ny)'; + elseif x(2) - x(1) == 0 & y(2) - y(1) ~= 0 + xfirst = 0; + yinc = y(2) > y(1); + if yinc + ny = min(find(diff(y) < 0)); + else + ny = min(find(diff(y) > 0)); + end + if mod(n, ny) ~= 0 + error(sprintf('\n Error: could not work out the grid size, n = %d, ny = %d, n / ny = %.3f\n', n, ny, n / ny)); + end + nx = n / ny; + y = y(1 : ny); + x = x(1 : ny : n); + z = reshape(z, ny, nx); + else + error(' Error: not a rectangular grid'); + end + if verbose + if xfirst + fprintf('%d x %d, stored by rows\n', nx, ny); + else + fprintf('%d x %d, stored by columns\n', nx, ny); + end + end + + if verbose + fprintf(' plotting...'); + end + + h = pcolor_ps(x, y, z); + zrange = [min(min(z)) max(max(z))]; + caxis(zrange); + set(h, 'LineStyle', 'none'); + axis equal; + axis tight; + hold on; + plot(xin, yin, 'w.', 'markersize', 1); + + if verbose + fprintf('\n'); + end + + return + +function [h] = pcolor_ps(x, y, A); + + if nargin == 1 + A = x; + [n, m] = size(A); + xx = (0.5 : m + 0.5)'; + yy = (0.5 : n + 0.5)'; + elseif nargin == 3 + n = length(y); + m = length(x); + A = reshape(A, n, m); % just in case + xx = getcorners(x); + yy = getcorners(y); + else + error(sprintf('\n Error: pcolor_ps(): nargin = %d (expected 1 or 3)\n', nargin)); + end + + TMP = zeros(n + 1, m + 1); + TMP(1 : n, 1 : m) = A; + + if nargout == 0 + pcolor(xx, yy, TMP); + else + h = pcolor(xx, yy, TMP); + end + + return + +function [c] = getcorners(x) + + n = length(x); + c = zeros(n + 1, 1); + c(2 : n) = (x(2 : n) + x(1 : n - 1)) / 2; + c(1) = 2 * x(1) - c(2); + c(n + 1) = 2 * x(n) - c(n); + + return diff --git a/autoarray/util/nn/src/nn/examples/5/viewinterp2.m b/autoarray/util/nn/src/nn/examples/5/viewinterp2.m index 2e8666c90..e77b34074 100644 --- a/autoarray/util/nn/src/nn/examples/5/viewinterp2.m +++ b/autoarray/util/nn/src/nn/examples/5/viewinterp2.m @@ -1,112 +1,112 @@ -function [h] = viewinterp2(fin, fout, verbose) - - if nargin == 2 - verbose = 1; - end - - if verbose - fprintf('plotting data from "%s" and "%s"\n', fin, fout); - fprintf(' reading "%s"...', fin); - end - - data = load(fin); - xin = data(:, 1); - yin = data(:, 2); - zin = data(:, 3); - zmin = min(zin); - zmax = max(zin); - nz = length(zin); - - if verbose - fprintf('\n reading "%s"...', fout); - end - - data = load(fout); - x = data(:, 1); - y = data(:, 2); - z = data(:, 3); - clear data; - - if verbose - fprintf('\n'); - end - - if verbose - fprintf(' working out the grid dimensions...') - end - n = length(x); - if x(2) - x(1) ~= 0 & y(2) - y(1) == 0 - xfirst = 1; - xinc = x(2) > x(1); - if xinc - nx = min(find(diff(x) < 0)); - else - nx = min(find(diff(x) > 0)); - end - if mod(n, nx) ~= 0 - error(sprintf('\n Error: could not work out the grid size, n = %d, nx = %d, n / nx = %f\n', n, nx, n / nx)); - end - ny = n / nx; - x = x(1 : nx); - y = y(1 : nx : n); - z = reshape(z, nx, ny)'; - elseif x(2) - x(1) == 0 & y(2) - y(1) ~= 0 - xfirst = 0; - yinc = y(2) > y(1); - if yinc - ny = min(find(diff(y) < 0)); - else - ny = min(find(diff(y) > 0)); - end - if mod(n, ny) ~= 0 - error(sprintf('\n Error: could not work out the grid size, n = %d, ny = %d, n / ny = %.3f\n', n, ny, n / ny)); - end - nx = n / ny; - y = y(1 : ny); - x = x(1 : ny : n); - z = reshape(z, ny, nx); - else - error(' Error: not a rectangular grid'); - end - if verbose - if xfirst - fprintf('%d x %d, stored by rows\n', nx, ny); - else - fprintf('%d x %d, stored by columns\n', nx, ny); - end - end - - if verbose - fprintf(sprintf(' plotting "%s"...', fin)); - end - - map = colormap; - hold on; - for i = 1 : nz - plot(xin(i), yin(i), '.', 'color', zcolor(zin(i), zmin, zmax, map), 'markersize', 2); - end - axis equal; - axis tight; - set(gca, 'box', 'on'); - - if verbose - fprintf(sprintf('\n plotting "%s"...', fout)); - end - - dv = floor((zmax - zmin) / 15); - V = [floor(zmin) : dv : ceil(zmax)]; - contour(x, y, z, V, 'k'); - - if verbose - fprintf('\n'); - end - - return - -function c = zcolor(z, zmin, zmax, map) - - ind = floor((z - zmin) / (zmax - zmin) * 64 + 1); - ind = min(ind, 64); - c = map(ind, :); - - return +function [h] = viewinterp2(fin, fout, verbose) + + if nargin == 2 + verbose = 1; + end + + if verbose + fprintf('plotting data from "%s" and "%s"\n', fin, fout); + fprintf(' reading "%s"...', fin); + end + + data = load(fin); + xin = data(:, 1); + yin = data(:, 2); + zin = data(:, 3); + zmin = min(zin); + zmax = max(zin); + nz = length(zin); + + if verbose + fprintf('\n reading "%s"...', fout); + end + + data = load(fout); + x = data(:, 1); + y = data(:, 2); + z = data(:, 3); + clear data; + + if verbose + fprintf('\n'); + end + + if verbose + fprintf(' working out the grid dimensions...') + end + n = length(x); + if x(2) - x(1) ~= 0 & y(2) - y(1) == 0 + xfirst = 1; + xinc = x(2) > x(1); + if xinc + nx = min(find(diff(x) < 0)); + else + nx = min(find(diff(x) > 0)); + end + if mod(n, nx) ~= 0 + error(sprintf('\n Error: could not work out the grid size, n = %d, nx = %d, n / nx = %f\n', n, nx, n / nx)); + end + ny = n / nx; + x = x(1 : nx); + y = y(1 : nx : n); + z = reshape(z, nx, ny)'; + elseif x(2) - x(1) == 0 & y(2) - y(1) ~= 0 + xfirst = 0; + yinc = y(2) > y(1); + if yinc + ny = min(find(diff(y) < 0)); + else + ny = min(find(diff(y) > 0)); + end + if mod(n, ny) ~= 0 + error(sprintf('\n Error: could not work out the grid size, n = %d, ny = %d, n / ny = %.3f\n', n, ny, n / ny)); + end + nx = n / ny; + y = y(1 : ny); + x = x(1 : ny : n); + z = reshape(z, ny, nx); + else + error(' Error: not a rectangular grid'); + end + if verbose + if xfirst + fprintf('%d x %d, stored by rows\n', nx, ny); + else + fprintf('%d x %d, stored by columns\n', nx, ny); + end + end + + if verbose + fprintf(sprintf(' plotting "%s"...', fin)); + end + + map = colormap; + hold on; + for i = 1 : nz + plot(xin(i), yin(i), '.', 'color', zcolor(zin(i), zmin, zmax, map), 'markersize', 2); + end + axis equal; + axis tight; + set(gca, 'box', 'on'); + + if verbose + fprintf(sprintf('\n plotting "%s"...', fout)); + end + + dv = floor((zmax - zmin) / 15); + V = [floor(zmin) : dv : ceil(zmax)]; + contour(x, y, z, V, 'k'); + + if verbose + fprintf('\n'); + end + + return + +function c = zcolor(z, zmin, zmax, map) + + ind = floor((z - zmin) / (zmax - zmin) * 64 + 1); + ind = min(ind, 64); + c = map(ind, :); + + return diff --git a/autoarray/util/nn/src/nn/examples/6/README b/autoarray/util/nn/src/nn/examples/6/README index 6f902471e..2f878d34b 100644 --- a/autoarray/util/nn/src/nn/examples/6/README +++ b/autoarray/util/nn/src/nn/examples/6/README @@ -1,13 +1,13 @@ -This is yet another example based on digitised elevation contours. It provides -a particularly good torture test for the numerics involved in Sibson -interpolation using Watson's method. In fact, it forced me to make changes to -the code that handles degenerate cases during Sibson interpolation in v. 1.69. -Many thanks to Nick Cahill for identifying the problem and providing the data -and to Maciej Sieczka for putting up the bug report. - -To reproduce the example, run "./test.sh" or "make". -To visualize, in Matlab run "viewinterp('data.txt', 'nn.txt');". -To clean up, run "make clean". - -Good luck! -Pavel Sakov +This is yet another example based on digitised elevation contours. It provides +a particularly good torture test for the numerics involved in Sibson +interpolation using Watson's method. In fact, it forced me to make changes to +the code that handles degenerate cases during Sibson interpolation in v. 1.69. +Many thanks to Nick Cahill for identifying the problem and providing the data +and to Maciej Sieczka for putting up the bug report. + +To reproduce the example, run "./test.sh" or "make". +To visualize, in Matlab run "viewinterp('data.txt', 'nn.txt');". +To clean up, run "make clean". + +Good luck! +Pavel Sakov diff --git a/autoarray/util/nn/src/nn/examples/6/data.txt b/autoarray/util/nn/src/nn/examples/6/data.txt index 65203606b..25ac97efa 100644 --- a/autoarray/util/nn/src/nn/examples/6/data.txt +++ b/autoarray/util/nn/src/nn/examples/6/data.txt @@ -1,4485 +1,4485 @@ -591042.52505426 4260093.61151167 136 -591062.48303156 4260093.61151167 134 -591074.45781794 4260093.61151167 132 -591124.35276119 4260093.61151167 132 -591150.29813167 4260093.61151167 134 -591152.29392941 4260093.61151167 134 -591154.28972713 4260093.61151167 134 -591156.28552487 4260093.61151167 134 -591158.28132259 4260093.61151167 134 -591160.27712033 4260093.61151167 134 -591162.27291805 4260093.61151167 134 -591174.24770444 4260093.61151167 134 -591180.23509763 4260093.61151167 136 -591190.21408627 4260093.61151167 138 -591200.19307492 4260093.61151167 140 -591202.18887266 4260093.61151167 140 -591204.18467038 4260093.61151167 140 -591228.13424315 4260093.61151167 140 -591230.13004087 4260093.61151167 140 -591232.1258386 4260093.61151167 140 -591234.12163634 4260093.61151167 140 -591236.11743406 4260093.61151167 140 -591248.09222045 4260093.61151167 138 -591250.08801817 4260093.61151167 138 -591252.08381591 4260093.61151167 138 -591254.07961363 4260093.61151167 138 -591290.00397277 4260093.61151167 136 -591309.96195007 4260093.61151167 134 -591020.57127923 4260091.61364147 138 -591044.52085198 4260091.61364147 136 -591064.47882929 4260091.61364147 134 -591076.45361566 4260091.61364147 132 -591120.36116573 4260091.61364147 132 -591122.35696345 4260091.61364147 132 -591144.31073848 4260091.61364147 134 -591146.30653622 4260091.61364147 134 -591148.30233395 4260091.61364147 134 -591164.26871579 4260091.61364147 134 -591174.24770444 4260091.61364147 134 -591180.23509763 4260091.61364147 136 -591188.21828855 4260091.61364147 138 -591196.20147947 4260091.61364147 140 -591198.1972772 4260091.61364147 140 -591238.1132318 4260091.61364147 140 -591240.10902952 4260091.61364147 140 -591242.10482726 4260091.61364147 140 -591256.07541137 4260091.61364147 138 -591258.07120909 4260091.61364147 138 -591260.06700683 4260091.61364147 138 -591262.06280455 4260091.61364147 138 -591264.05860228 4260091.61364147 138 -591291.99977051 4260091.61364147 136 -591311.9577478 4260091.61364147 134 -591022.56707695 4260089.61577125 138 -591024.56287469 4260089.61577125 138 -591046.51664972 4260089.61577125 136 -591066.47462702 4260089.61577125 134 -591078.4494134 4260089.61577125 132 -591118.36536799 4260089.61577125 132 -591120.36116573 4260089.61577125 132 -591138.3233453 4260089.61577125 134 -591140.31914302 4260089.61577125 134 -591142.31494076 4260089.61577125 134 -591166.26451352 4260089.61577125 134 -591172.2519067 4260089.61577125 134 -591178.2392999 4260089.61577125 136 -591184.22669309 4260089.61577125 138 -591186.22249081 4260089.61577125 138 -591192.20988401 4260089.61577125 140 -591194.20568173 4260089.61577125 140 -591244.10062498 4260089.61577125 140 -591246.09642271 4260089.61577125 140 -591266.05440002 4260089.61577125 138 -591268.05019774 4260089.61577125 138 -591270.04599548 4260089.61577125 138 -591272.0417932 4260089.61577125 138 -591274.03759094 4260089.61577125 138 -591276.03338866 4260089.61577125 138 -591278.02918639 4260089.61577125 138 -591293.99556823 4260089.61577125 136 -591313.95354553 4260089.61577125 134 -591315.94934327 4260089.61577125 134 -591026.55867241 4260087.61790104 138 -591028.55447015 4260087.61790104 138 -591048.51244745 4260087.61790104 136 -591066.47462702 4260087.61790104 134 -591080.44521113 4260087.61790104 132 -591082.44100886 4260087.61790104 132 -591114.37377254 4260087.61790104 132 -591116.36957027 4260087.61790104 132 -591134.33174984 4260087.61790104 134 -591136.32754756 4260087.61790104 134 -591166.26451352 4260087.61790104 134 -591172.2519067 4260087.61790104 134 -591176.24350216 4260087.61790104 136 -591182.23089535 4260087.61790104 138 -591190.21408627 4260087.61790104 140 -591248.09222045 4260087.61790104 140 -591250.08801817 4260087.61790104 140 -591280.02498412 4260087.61790104 138 -591295.99136596 4260087.61790104 136 -591317.94514099 4260087.61790104 134 -591319.94093873 4260087.61790104 134 -591321.93673645 4260087.61790104 134 -591030.55026788 4260085.62003084 138 -591050.50824518 4260085.62003084 136 -591052.50404291 4260085.62003084 136 -591068.47042474 4260085.62003084 134 -591084.43680659 4260085.62003084 132 -591086.43260431 4260085.62003084 132 -591108.38637934 4260085.62003084 132 -591110.38217708 4260085.62003084 132 -591112.37797481 4260085.62003084 132 -591130.34015438 4260085.62003084 134 -591132.33595211 4260085.62003084 134 -591168.26031124 4260085.62003084 134 -591170.25610898 4260085.62003084 134 -591176.24350216 4260085.62003084 136 -591180.23509763 4260085.62003084 138 -591186.22249081 4260085.62003084 140 -591188.21828855 4260085.62003084 140 -591252.08381591 4260085.62003084 140 -591254.07961363 4260085.62003084 140 -591256.07541137 4260085.62003084 140 -591280.02498412 4260085.62003084 138 -591297.9871637 4260085.62003084 136 -591032.54606561 4260083.62216062 138 -591034.54186334 4260083.62216062 138 -591054.49984063 4260083.62216062 136 -591070.46622248 4260083.62216062 134 -591088.42840205 4260083.62216062 132 -591090.42419977 4260083.62216062 132 -591092.41999751 4260083.62216062 132 -591102.39898616 4260083.62216062 132 -591104.39478388 4260083.62216062 132 -591106.39058162 4260083.62216062 132 -591128.34435665 4260083.62216062 134 -591168.26031124 4260083.62216062 134 -591174.24770444 4260083.62216062 136 -591178.2392999 4260083.62216062 138 -591184.22669309 4260083.62216062 140 -591258.07120909 4260083.62216062 140 -591260.06700683 4260083.62216062 140 -591262.06280455 4260083.62216062 140 -591282.02078185 4260083.62216062 138 -591299.98296142 4260083.62216062 136 -591036.53766106 4260081.62429042 138 -591056.49563837 4260081.62429042 136 -591058.49143609 4260081.62429042 136 -591072.4620202 4260081.62429042 134 -591094.41579523 4260081.62429042 132 -591096.41159297 4260081.62429042 132 -591098.4073907 4260081.62429042 132 -591100.40318842 4260081.62429042 132 -591124.35276119 4260081.62429042 134 -591126.34855891 4260081.62429042 134 -591152.29392941 4260081.62429042 136 -591154.28972713 4260081.62429042 136 -591172.2519067 4260081.62429042 136 -591176.24350216 4260081.62429042 138 -591182.23089535 4260081.62429042 140 -591264.05860228 4260081.62429042 140 -591266.05440002 4260081.62429042 140 -591284.01657959 4260081.62429042 138 -591301.97875916 4260081.62429042 136 -591038.5334588 4260079.6264202 138 -591060.48723383 4260079.6264202 136 -591074.45781794 4260079.6264202 134 -591122.35696345 4260079.6264202 134 -591148.30233395 4260079.6264202 136 -591150.29813167 4260079.6264202 136 -591152.29392941 4260079.6264202 136 -591154.28972713 4260079.6264202 136 -591156.28552487 4260079.6264202 136 -591158.28132259 4260079.6264202 136 -591172.2519067 4260079.6264202 136 -591174.24770444 4260079.6264202 138 -591180.23509763 4260079.6264202 140 -591268.05019774 4260079.6264202 140 -591286.01237731 4260079.6264202 138 -591303.97455688 4260079.6264202 136 -591040.52925652 4260077.62854999 138 -591042.52505426 4260077.62854999 138 -591062.48303156 4260077.62854999 136 -591076.45361566 4260077.62854999 134 -591120.36116573 4260077.62854999 134 -591146.30653622 4260077.62854999 136 -591160.27712033 4260077.62854999 136 -591170.25610898 4260077.62854999 136 -591174.24770444 4260077.62854999 138 -591178.2392999 4260077.62854999 140 -591204.18467038 4260077.62854999 142 -591206.18046812 4260077.62854999 142 -591208.17626584 4260077.62854999 142 -591210.17206358 4260077.62854999 142 -591212.1678613 4260077.62854999 142 -591214.16365903 4260077.62854999 142 -591216.15945677 4260077.62854999 142 -591218.15525449 4260077.62854999 142 -591220.15105223 4260077.62854999 142 -591222.14684995 4260077.62854999 142 -591224.14264769 4260077.62854999 142 -591226.13844541 4260077.62854999 142 -591228.13424315 4260077.62854999 142 -591230.13004087 4260077.62854999 142 -591232.1258386 4260077.62854999 142 -591234.12163634 4260077.62854999 142 -591236.11743406 4260077.62854999 142 -591238.1132318 4260077.62854999 142 -591240.10902952 4260077.62854999 142 -591270.04599548 4260077.62854999 140 -591272.0417932 4260077.62854999 140 -591286.01237731 4260077.62854999 138 -591305.97035462 4260077.62854999 136 -591307.96615234 4260077.62854999 136 -591044.52085198 4260075.63067979 138 -591064.47882929 4260075.63067979 136 -591066.47462702 4260075.63067979 136 -591078.4494134 4260075.63067979 134 -591116.36957027 4260075.63067979 134 -591118.36536799 4260075.63067979 134 -591142.31494076 4260075.63067979 136 -591144.31073848 4260075.63067979 136 -591162.27291805 4260075.63067979 136 -591168.26031124 4260075.63067979 136 -591172.2519067 4260075.63067979 138 -591176.24350216 4260075.63067979 140 -591200.19307492 4260075.63067979 142 -591202.18887266 4260075.63067979 142 -591240.10902952 4260075.63067979 142 -591242.10482726 4260075.63067979 142 -591244.10062498 4260075.63067979 142 -591246.09642271 4260075.63067979 142 -591272.0417932 4260075.63067979 140 -591274.03759094 4260075.63067979 140 -591288.00817505 4260075.63067979 138 -591309.96195007 4260075.63067979 136 -591046.51664972 4260073.63280957 138 -591068.47042474 4260073.63280957 136 -591080.44521113 4260073.63280957 134 -591082.44100886 4260073.63280957 134 -591114.37377254 4260073.63280957 134 -591140.31914302 4260073.63280957 136 -591162.27291805 4260073.63280957 136 -591166.26451352 4260073.63280957 136 -591170.25610898 4260073.63280957 138 -591176.24350216 4260073.63280957 140 -591196.20147947 4260073.63280957 142 -591198.1972772 4260073.63280957 142 -591248.09222045 4260073.63280957 142 -591250.08801817 4260073.63280957 142 -591252.08381591 4260073.63280957 142 -591274.03759094 4260073.63280957 140 -591290.00397277 4260073.63280957 138 -591291.99977051 4260073.63280957 138 -591311.9577478 4260073.63280957 136 -591313.95354553 4260073.63280957 136 -591048.51244745 4260071.63493937 138 -591070.46622248 4260071.63493937 136 -591084.43680659 4260071.63493937 134 -591086.43260431 4260071.63493937 134 -591106.39058162 4260071.63493937 134 -591108.38637934 4260071.63493937 134 -591110.38217708 4260071.63493937 134 -591112.37797481 4260071.63493937 134 -591138.3233453 4260071.63493937 136 -591162.27291805 4260071.63493937 136 -591164.26871579 4260071.63493937 136 -591170.25610898 4260071.63493937 138 -591174.24770444 4260071.63493937 140 -591192.20988401 4260071.63493937 142 -591194.20568173 4260071.63493937 142 -591254.07961363 4260071.63493937 142 -591256.07541137 4260071.63493937 142 -591276.03338866 4260071.63493937 140 -591293.99556823 4260071.63493937 138 -591315.94934327 4260071.63493937 136 -591317.94514099 4260071.63493937 136 -591020.57127923 4260069.63706915 140 -591022.56707695 4260069.63706915 140 -591024.56287469 4260069.63706915 140 -591050.50824518 4260069.63706915 138 -591052.50404291 4260069.63706915 138 -591072.4620202 4260069.63706915 136 -591088.42840205 4260069.63706915 134 -591090.42419977 4260069.63706915 134 -591092.41999751 4260069.63706915 134 -591094.41579523 4260069.63706915 134 -591096.41159297 4260069.63706915 134 -591098.4073907 4260069.63706915 134 -591100.40318842 4260069.63706915 134 -591102.39898616 4260069.63706915 134 -591104.39478388 4260069.63706915 134 -591134.33174984 4260069.63706915 136 -591136.32754756 4260069.63706915 136 -591168.26031124 4260069.63706915 138 -591174.24770444 4260069.63706915 140 -591190.21408627 4260069.63706915 142 -591258.07120909 4260069.63706915 142 -591260.06700683 4260069.63706915 142 -591276.03338866 4260069.63706915 140 -591295.99136596 4260069.63706915 138 -591319.94093873 4260069.63706915 136 -591321.93673645 4260069.63706915 136 -591026.55867241 4260067.63919894 140 -591028.55447015 4260067.63919894 140 -591054.49984063 4260067.63919894 138 -591074.45781794 4260067.63919894 136 -591130.34015438 4260067.63919894 136 -591132.33595211 4260067.63919894 136 -591166.26451352 4260067.63919894 138 -591172.2519067 4260067.63919894 140 -591188.21828855 4260067.63919894 142 -591262.06280455 4260067.63919894 142 -591276.03338866 4260067.63919894 140 -591297.9871637 4260067.63919894 138 -591030.55026788 4260065.64132874 140 -591032.54606561 4260065.64132874 140 -591056.49563837 4260065.64132874 138 -591058.49143609 4260065.64132874 138 -591076.45361566 4260065.64132874 136 -591078.4494134 4260065.64132874 136 -591128.34435665 4260065.64132874 136 -591154.28972713 4260065.64132874 138 -591156.28552487 4260065.64132874 138 -591166.26451352 4260065.64132874 138 -591170.25610898 4260065.64132874 140 -591186.22249081 4260065.64132874 142 -591264.05860228 4260065.64132874 142 -591278.02918639 4260065.64132874 140 -591299.98296142 4260065.64132874 138 -591034.54186334 4260063.64345852 140 -591036.53766106 4260063.64345852 140 -591060.48723383 4260063.64345852 138 -591062.48303156 4260063.64345852 138 -591080.44521113 4260063.64345852 136 -591124.35276119 4260063.64345852 136 -591126.34855891 4260063.64345852 136 -591150.29813167 4260063.64345852 138 -591152.29392941 4260063.64345852 138 -591158.28132259 4260063.64345852 138 -591164.26871579 4260063.64345852 138 -591170.25610898 4260063.64345852 140 -591184.22669309 4260063.64345852 142 -591266.05440002 4260063.64345852 142 -591280.02498412 4260063.64345852 140 -591301.97875916 4260063.64345852 138 -591038.5334588 4260061.64558832 140 -591040.52925652 4260061.64558832 140 -591062.48303156 4260061.64558832 138 -591064.47882929 4260061.64558832 138 -591066.47462702 4260061.64558832 138 -591082.44100886 4260061.64558832 136 -591084.43680659 4260061.64558832 136 -591086.43260431 4260061.64558832 136 -591088.42840205 4260061.64558832 136 -591116.36957027 4260061.64558832 136 -591118.36536799 4260061.64558832 136 -591120.36116573 4260061.64558832 136 -591122.35696345 4260061.64558832 136 -591148.30233395 4260061.64558832 138 -591160.27712033 4260061.64558832 138 -591162.27291805 4260061.64558832 138 -591168.26031124 4260061.64558832 140 -591182.23089535 4260061.64558832 142 -591200.19307492 4260061.64558832 144 -591202.18887266 4260061.64558832 144 -591204.18467038 4260061.64558832 144 -591206.18046812 4260061.64558832 144 -591208.17626584 4260061.64558832 144 -591210.17206358 4260061.64558832 144 -591212.1678613 4260061.64558832 144 -591214.16365903 4260061.64558832 144 -591216.15945677 4260061.64558832 144 -591218.15525449 4260061.64558832 144 -591220.15105223 4260061.64558832 144 -591222.14684995 4260061.64558832 144 -591224.14264769 4260061.64558832 144 -591226.13844541 4260061.64558832 144 -591228.13424315 4260061.64558832 144 -591230.13004087 4260061.64558832 144 -591232.1258386 4260061.64558832 144 -591234.12163634 4260061.64558832 144 -591236.11743406 4260061.64558832 144 -591238.1132318 4260061.64558832 144 -591266.05440002 4260061.64558832 142 -591280.02498412 4260061.64558832 140 -591303.97455688 4260061.64558832 138 -591020.57127923 4260059.6477181 142 -591042.52505426 4260059.6477181 140 -591044.52085198 4260059.6477181 140 -591068.47042474 4260059.6477181 138 -591070.46622248 4260059.6477181 138 -591072.4620202 4260059.6477181 138 -591088.42840205 4260059.6477181 136 -591090.42419977 4260059.6477181 136 -591092.41999751 4260059.6477181 136 -591094.41579523 4260059.6477181 136 -591096.41159297 4260059.6477181 136 -591098.4073907 4260059.6477181 136 -591100.40318842 4260059.6477181 136 -591102.39898616 4260059.6477181 136 -591104.39478388 4260059.6477181 136 -591106.39058162 4260059.6477181 136 -591108.38637934 4260059.6477181 136 -591110.38217708 4260059.6477181 136 -591112.37797481 4260059.6477181 136 -591114.37377254 4260059.6477181 136 -591146.30653622 4260059.6477181 138 -591166.26451352 4260059.6477181 140 -591180.23509763 4260059.6477181 142 -591196.20147947 4260059.6477181 144 -591198.1972772 4260059.6477181 144 -591240.10902952 4260059.6477181 144 -591242.10482726 4260059.6477181 144 -591244.10062498 4260059.6477181 144 -591268.05019774 4260059.6477181 142 -591282.02078185 4260059.6477181 140 -591305.97035462 4260059.6477181 138 -591022.56707695 4260057.64984789 142 -591046.51664972 4260057.64984789 140 -591074.45781794 4260057.64984789 138 -591076.45361566 4260057.64984789 138 -591142.31494076 4260057.64984789 138 -591144.31073848 4260057.64984789 138 -591166.26451352 4260057.64984789 140 -591178.2392999 4260057.64984789 142 -591192.20988401 4260057.64984789 144 -591194.20568173 4260057.64984789 144 -591246.09642271 4260057.64984789 144 -591270.04599548 4260057.64984789 142 -591282.02078185 4260057.64984789 140 -591307.96615234 4260057.64984789 138 -591024.56287469 4260055.65197769 142 -591048.51244745 4260055.65197769 140 -591050.50824518 4260055.65197769 140 -591078.4494134 4260055.65197769 138 -591080.44521113 4260055.65197769 138 -591082.44100886 4260055.65197769 138 -591140.31914302 4260055.65197769 138 -591164.26871579 4260055.65197769 140 -591178.2392999 4260055.65197769 142 -591190.21408627 4260055.65197769 144 -591248.09222045 4260055.65197769 144 -591250.08801817 4260055.65197769 144 -591270.04599548 4260055.65197769 142 -591284.01657959 4260055.65197769 140 -591309.96195007 4260055.65197769 138 -591026.55867241 4260053.65410747 142 -591052.50404291 4260053.65410747 140 -591084.43680659 4260053.65410747 138 -591086.43260431 4260053.65410747 138 -591136.32754756 4260053.65410747 138 -591138.3233453 4260053.65410747 138 -591162.27291805 4260053.65410747 140 -591176.24350216 4260053.65410747 142 -591188.21828855 4260053.65410747 144 -591252.08381591 4260053.65410747 144 -591254.07961363 4260053.65410747 144 -591272.0417932 4260053.65410747 142 -591284.01657959 4260053.65410747 140 -591311.9577478 4260053.65410747 138 -591028.55447015 4260051.65623727 142 -591030.55026788 4260051.65623727 142 -591054.49984063 4260051.65623727 140 -591088.42840205 4260051.65623727 138 -591090.42419977 4260051.65623727 138 -591092.41999751 4260051.65623727 138 -591102.39898616 4260051.65623727 138 -591104.39478388 4260051.65623727 138 -591106.39058162 4260051.65623727 138 -591108.38637934 4260051.65623727 138 -591110.38217708 4260051.65623727 138 -591112.37797481 4260051.65623727 138 -591114.37377254 4260051.65623727 138 -591116.36957027 4260051.65623727 138 -591120.36116573 4260051.65623727 138 -591128.34435665 4260051.65623727 138 -591130.34015438 4260051.65623727 138 -591132.33595211 4260051.65623727 138 -591134.33174984 4260051.65623727 138 -591162.27291805 4260051.65623727 140 -591174.24770444 4260051.65623727 142 -591186.22249081 4260051.65623727 144 -591210.17206358 4260051.65623727 146 -591212.1678613 4260051.65623727 146 -591214.16365903 4260051.65623727 146 -591216.15945677 4260051.65623727 146 -591218.15525449 4260051.65623727 146 -591220.15105223 4260051.65623727 146 -591222.14684995 4260051.65623727 146 -591224.14264769 4260051.65623727 146 -591254.07961363 4260051.65623727 144 -591256.07541137 4260051.65623727 144 -591258.07120909 4260051.65623727 144 -591260.06700683 4260051.65623727 144 -591274.03759094 4260051.65623727 142 -591286.01237731 4260051.65623727 140 -591311.9577478 4260051.65623727 138 -591032.54606561 4260049.65836705 142 -591034.54186334 4260049.65836705 142 -591036.53766106 4260049.65836705 142 -591038.5334588 4260049.65836705 142 -591040.52925652 4260049.65836705 142 -591056.49563837 4260049.65836705 140 -591058.49143609 4260049.65836705 140 -591060.48723383 4260049.65836705 140 -591062.48303156 4260049.65836705 140 -591064.47882929 4260049.65836705 140 -591066.47462702 4260049.65836705 140 -591068.47042474 4260049.65836705 140 -591070.46622248 4260049.65836705 140 -591072.4620202 4260049.65836705 140 -591074.45781794 4260049.65836705 140 -591076.45361566 4260049.65836705 140 -591078.4494134 4260049.65836705 140 -591094.41579523 4260049.65836705 138 -591096.41159297 4260049.65836705 138 -591098.4073907 4260049.65836705 138 -591100.40318842 4260049.65836705 138 -591118.36536799 4260049.65836705 138 -591120.36116573 4260049.65836705 138 -591122.35696345 4260049.65836705 138 -591124.35276119 4260049.65836705 138 -591126.34855891 4260049.65836705 138 -591160.27712033 4260049.65836705 140 -591170.25610898 4260049.65836705 142 -591172.2519067 4260049.65836705 142 -591184.22669309 4260049.65836705 144 -591200.19307492 4260049.65836705 146 -591202.18887266 4260049.65836705 146 -591204.18467038 4260049.65836705 146 -591206.18046812 4260049.65836705 146 -591208.17626584 4260049.65836705 146 -591226.13844541 4260049.65836705 146 -591228.13424315 4260049.65836705 146 -591230.13004087 4260049.65836705 146 -591232.1258386 4260049.65836705 146 -591258.07120909 4260049.65836705 144 -591260.06700683 4260049.65836705 144 -591262.06280455 4260049.65836705 144 -591274.03759094 4260049.65836705 142 -591288.00817505 4260049.65836705 140 -591313.95354553 4260049.65836705 138 -591020.57127923 4260047.66049684 144 -591022.56707695 4260047.66049684 144 -591042.52505426 4260047.66049684 142 -591044.52085198 4260047.66049684 142 -591046.51664972 4260047.66049684 142 -591048.51244745 4260047.66049684 142 -591050.50824518 4260047.66049684 142 -591080.44521113 4260047.66049684 140 -591082.44100886 4260047.66049684 140 -591084.43680659 4260047.66049684 140 -591158.28132259 4260047.66049684 140 -591168.26031124 4260047.66049684 142 -591182.23089535 4260047.66049684 144 -591194.20568173 4260047.66049684 146 -591196.20147947 4260047.66049684 146 -591198.1972772 4260047.66049684 146 -591234.12163634 4260047.66049684 146 -591236.11743406 4260047.66049684 146 -591238.1132318 4260047.66049684 146 -591264.05860228 4260047.66049684 144 -591276.03338866 4260047.66049684 142 -591290.00397277 4260047.66049684 140 -591315.94934327 4260047.66049684 138 -591024.56287469 4260045.66262664 144 -591052.50404291 4260045.66262664 142 -591054.49984063 4260045.66262664 142 -591086.43260431 4260045.66262664 140 -591088.42840205 4260045.66262664 140 -591090.42419977 4260045.66262664 140 -591156.28552487 4260045.66262664 140 -591166.26451352 4260045.66262664 142 -591178.2392999 4260045.66262664 144 -591180.23509763 4260045.66262664 144 -591192.20988401 4260045.66262664 146 -591194.20568173 4260045.66262664 146 -591240.10902952 4260045.66262664 146 -591264.05860228 4260045.66262664 144 -591278.02918639 4260045.66262664 142 -591291.99977051 4260045.66262664 140 -591315.94934327 4260045.66262664 138 -591026.55867241 4260043.66475642 144 -591056.49563837 4260043.66475642 142 -591092.41999751 4260043.66475642 140 -591094.41579523 4260043.66475642 140 -591096.41159297 4260043.66475642 140 -591098.4073907 4260043.66475642 140 -591134.33174984 4260043.66475642 140 -591136.32754756 4260043.66475642 140 -591138.3233453 4260043.66475642 140 -591140.31914302 4260043.66475642 140 -591142.31494076 4260043.66475642 140 -591144.31073848 4260043.66475642 140 -591156.28552487 4260043.66475642 140 -591164.26871579 4260043.66475642 142 -591176.24350216 4260043.66475642 144 -591178.2392999 4260043.66475642 144 -591190.21408627 4260043.66475642 146 -591242.10482726 4260043.66475642 146 -591244.10062498 4260043.66475642 146 -591266.05440002 4260043.66475642 144 -591278.02918639 4260043.66475642 142 -591291.99977051 4260043.66475642 140 -591317.94514099 4260043.66475642 138 -591028.55447015 4260041.66688622 144 -591058.49143609 4260041.66688622 142 -591060.48723383 4260041.66688622 142 -591098.4073907 4260041.66688622 140 -591100.40318842 4260041.66688622 140 -591102.39898616 4260041.66688622 140 -591104.39478388 4260041.66688622 140 -591106.39058162 4260041.66688622 140 -591130.34015438 4260041.66688622 140 -591132.33595211 4260041.66688622 140 -591146.30653622 4260041.66688622 140 -591154.28972713 4260041.66688622 140 -591162.27291805 4260041.66688622 142 -591174.24770444 4260041.66688622 144 -591188.21828855 4260041.66688622 146 -591208.17626584 4260041.66688622 148 -591210.17206358 4260041.66688622 148 -591212.1678613 4260041.66688622 148 -591246.09642271 4260041.66688622 146 -591266.05440002 4260041.66688622 144 -591280.02498412 4260041.66688622 142 -591293.99556823 4260041.66688622 140 -591317.94514099 4260041.66688622 138 -591030.55026788 4260039.669016 144 -591032.54606561 4260039.669016 144 -591034.54186334 4260039.669016 144 -591036.53766106 4260039.669016 144 -591062.48303156 4260039.669016 142 -591064.47882929 4260039.669016 142 -591066.47462702 4260039.669016 142 -591068.47042474 4260039.669016 142 -591070.46622248 4260039.669016 142 -591072.4620202 4260039.669016 142 -591074.45781794 4260039.669016 142 -591108.38637934 4260039.669016 140 -591110.38217708 4260039.669016 140 -591112.37797481 4260039.669016 140 -591114.37377254 4260039.669016 140 -591116.36957027 4260039.669016 140 -591118.36536799 4260039.669016 140 -591120.36116573 4260039.669016 140 -591122.35696345 4260039.669016 140 -591124.35276119 4260039.669016 140 -591126.34855891 4260039.669016 140 -591128.34435665 4260039.669016 140 -591148.30233395 4260039.669016 140 -591152.29392941 4260039.669016 140 -591154.28972713 4260039.669016 140 -591162.27291805 4260039.669016 142 -591172.2519067 4260039.669016 144 -591186.22249081 4260039.669016 146 -591200.19307492 4260039.669016 148 -591202.18887266 4260039.669016 148 -591204.18467038 4260039.669016 148 -591206.18046812 4260039.669016 148 -591214.16365903 4260039.669016 148 -591216.15945677 4260039.669016 148 -591218.15525449 4260039.669016 148 -591220.15105223 4260039.669016 148 -591222.14684995 4260039.669016 148 -591248.09222045 4260039.669016 146 -591266.05440002 4260039.669016 144 -591280.02498412 4260039.669016 142 -591295.99136596 4260039.669016 140 -591317.94514099 4260039.669016 138 -591038.5334588 4260037.67114579 144 -591040.52925652 4260037.67114579 144 -591042.52505426 4260037.67114579 144 -591044.52085198 4260037.67114579 144 -591046.51664972 4260037.67114579 144 -591076.45361566 4260037.67114579 142 -591078.4494134 4260037.67114579 142 -591080.44521113 4260037.67114579 142 -591082.44100886 4260037.67114579 142 -591084.43680659 4260037.67114579 142 -591086.43260431 4260037.67114579 142 -591088.42840205 4260037.67114579 142 -591090.42419977 4260037.67114579 142 -591092.41999751 4260037.67114579 142 -591094.41579523 4260037.67114579 142 -591150.29813167 4260037.67114579 140 -591160.27712033 4260037.67114579 142 -591170.25610898 4260037.67114579 144 -591184.22669309 4260037.67114579 146 -591196.20147947 4260037.67114579 148 -591198.1972772 4260037.67114579 148 -591224.14264769 4260037.67114579 148 -591226.13844541 4260037.67114579 148 -591228.13424315 4260037.67114579 148 -591248.09222045 4260037.67114579 146 -591266.05440002 4260037.67114579 144 -591282.02078185 4260037.67114579 142 -591295.99136596 4260037.67114579 140 -591317.94514099 4260037.67114579 138 -591048.51244745 4260035.67327559 144 -591050.50824518 4260035.67327559 144 -591096.41159297 4260035.67327559 142 -591098.4073907 4260035.67327559 142 -591100.40318842 4260035.67327559 142 -591102.39898616 4260035.67327559 142 -591124.35276119 4260035.67327559 142 -591126.34855891 4260035.67327559 142 -591128.34435665 4260035.67327559 142 -591130.34015438 4260035.67327559 142 -591132.33595211 4260035.67327559 142 -591134.33174984 4260035.67327559 142 -591136.32754756 4260035.67327559 142 -591138.3233453 4260035.67327559 142 -591140.31914302 4260035.67327559 142 -591158.28132259 4260035.67327559 142 -591168.26031124 4260035.67327559 144 -591182.23089535 4260035.67327559 146 -591192.20988401 4260035.67327559 148 -591194.20568173 4260035.67327559 148 -591230.13004087 4260035.67327559 148 -591250.08801817 4260035.67327559 146 -591268.05019774 4260035.67327559 144 -591282.02078185 4260035.67327559 142 -591295.99136596 4260035.67327559 140 -591317.94514099 4260035.67327559 138 -591052.50404291 4260033.67540537 144 -591104.39478388 4260033.67540537 142 -591106.39058162 4260033.67540537 142 -591108.38637934 4260033.67540537 142 -591110.38217708 4260033.67540537 142 -591112.37797481 4260033.67540537 142 -591114.37377254 4260033.67540537 142 -591116.36957027 4260033.67540537 142 -591118.36536799 4260033.67540537 142 -591120.36116573 4260033.67540537 142 -591122.35696345 4260033.67540537 142 -591142.31494076 4260033.67540537 142 -591144.31073848 4260033.67540537 142 -591156.28552487 4260033.67540537 142 -591168.26031124 4260033.67540537 144 -591180.23509763 4260033.67540537 146 -591192.20988401 4260033.67540537 148 -591232.1258386 4260033.67540537 148 -591234.12163634 4260033.67540537 148 -591250.08801817 4260033.67540537 146 -591268.05019774 4260033.67540537 144 -591282.02078185 4260033.67540537 142 -591295.99136596 4260033.67540537 140 -591317.94514099 4260033.67540537 138 -591020.57127923 4260031.67753517 146 -591054.49984063 4260031.67753517 144 -591056.49563837 4260031.67753517 144 -591072.4620202 4260031.67753517 144 -591074.45781794 4260031.67753517 144 -591076.45361566 4260031.67753517 144 -591078.4494134 4260031.67753517 144 -591114.37377254 4260031.67753517 142 -591146.30653622 4260031.67753517 142 -591148.30233395 4260031.67753517 142 -591156.28552487 4260031.67753517 142 -591166.26451352 4260031.67753517 144 -591168.26031124 4260031.67753517 144 -591178.2392999 4260031.67753517 146 -591190.21408627 4260031.67753517 148 -591234.12163634 4260031.67753517 148 -591252.08381591 4260031.67753517 146 -591268.05019774 4260031.67753517 144 -591282.02078185 4260031.67753517 142 -591295.99136596 4260031.67753517 140 -591317.94514099 4260031.67753517 138 -591022.56707695 4260029.67966495 146 -591024.56287469 4260029.67966495 146 -591026.55867241 4260029.67966495 146 -591028.55447015 4260029.67966495 146 -591030.55026788 4260029.67966495 146 -591032.54606561 4260029.67966495 146 -591058.49143609 4260029.67966495 144 -591060.48723383 4260029.67966495 144 -591062.48303156 4260029.67966495 144 -591064.47882929 4260029.67966495 144 -591066.47462702 4260029.67966495 144 -591068.47042474 4260029.67966495 144 -591070.46622248 4260029.67966495 144 -591080.44521113 4260029.67966495 144 -591082.44100886 4260029.67966495 144 -591084.43680659 4260029.67966495 144 -591086.43260431 4260029.67966495 144 -591088.42840205 4260029.67966495 144 -591122.35696345 4260029.67966495 144 -591124.35276119 4260029.67966495 144 -591126.34855891 4260029.67966495 144 -591128.34435665 4260029.67966495 144 -591130.34015438 4260029.67966495 144 -591132.33595211 4260029.67966495 144 -591134.33174984 4260029.67966495 144 -591136.32754756 4260029.67966495 144 -591138.3233453 4260029.67966495 144 -591140.31914302 4260029.67966495 144 -591142.31494076 4260029.67966495 144 -591150.29813167 4260029.67966495 142 -591152.29392941 4260029.67966495 142 -591154.28972713 4260029.67966495 142 -591156.28552487 4260029.67966495 142 -591166.26451352 4260029.67966495 144 -591178.2392999 4260029.67966495 146 -591190.21408627 4260029.67966495 148 -591204.18467038 4260029.67966495 150 -591206.18046812 4260029.67966495 150 -591208.17626584 4260029.67966495 150 -591210.17206358 4260029.67966495 150 -591212.1678613 4260029.67966495 150 -591214.16365903 4260029.67966495 150 -591216.15945677 4260029.67966495 150 -591218.15525449 4260029.67966495 150 -591236.11743406 4260029.67966495 148 -591252.08381591 4260029.67966495 146 -591268.05019774 4260029.67966495 144 -591282.02078185 4260029.67966495 142 -591295.99136596 4260029.67966495 140 -591317.94514099 4260029.67966495 138 -591034.54186334 4260027.68179474 146 -591036.53766106 4260027.68179474 146 -591038.5334588 4260027.68179474 146 -591040.52925652 4260027.68179474 146 -591042.52505426 4260027.68179474 146 -591044.52085198 4260027.68179474 146 -591090.42419977 4260027.68179474 144 -591092.41999751 4260027.68179474 144 -591094.41579523 4260027.68179474 144 -591096.41159297 4260027.68179474 144 -591098.4073907 4260027.68179474 144 -591100.40318842 4260027.68179474 144 -591114.37377254 4260027.68179474 144 -591116.36957027 4260027.68179474 144 -591118.36536799 4260027.68179474 144 -591120.36116573 4260027.68179474 144 -591144.31073848 4260027.68179474 144 -591146.30653622 4260027.68179474 144 -591148.30233395 4260027.68179474 144 -591166.26451352 4260027.68179474 144 -591178.2392999 4260027.68179474 146 -591190.21408627 4260027.68179474 148 -591200.19307492 4260027.68179474 150 -591202.18887266 4260027.68179474 150 -591220.15105223 4260027.68179474 150 -591222.14684995 4260027.68179474 150 -591224.14264769 4260027.68179474 150 -591238.1132318 4260027.68179474 148 -591254.07961363 4260027.68179474 146 -591268.05019774 4260027.68179474 144 -591282.02078185 4260027.68179474 142 -591297.9871637 4260027.68179474 140 -591319.94093873 4260027.68179474 138 -591046.51664972 4260025.68392454 146 -591100.40318842 4260025.68392454 144 -591102.39898616 4260025.68392454 144 -591104.39478388 4260025.68392454 144 -591106.39058162 4260025.68392454 144 -591108.38637934 4260025.68392454 144 -591110.38217708 4260025.68392454 144 -591112.37797481 4260025.68392454 144 -591126.34855891 4260025.68392454 146 -591128.34435665 4260025.68392454 146 -591130.34015438 4260025.68392454 146 -591132.33595211 4260025.68392454 146 -591150.29813167 4260025.68392454 144 -591152.29392941 4260025.68392454 144 -591166.26451352 4260025.68392454 144 -591176.24350216 4260025.68392454 146 -591188.21828855 4260025.68392454 148 -591198.1972772 4260025.68392454 150 -591226.13844541 4260025.68392454 150 -591228.13424315 4260025.68392454 150 -591240.10902952 4260025.68392454 148 -591254.07961363 4260025.68392454 146 -591270.04599548 4260025.68392454 144 -591282.02078185 4260025.68392454 142 -591297.9871637 4260025.68392454 140 -591319.94093873 4260025.68392454 138 -591048.51244745 4260023.68605432 146 -591050.50824518 4260023.68605432 146 -591052.50404291 4260023.68605432 146 -591066.47462702 4260023.68605432 146 -591068.47042474 4260023.68605432 146 -591070.46622248 4260023.68605432 146 -591072.4620202 4260023.68605432 146 -591074.45781794 4260023.68605432 146 -591076.45361566 4260023.68605432 146 -591078.4494134 4260023.68605432 146 -591080.44521113 4260023.68605432 146 -591114.37377254 4260023.68605432 146 -591116.36957027 4260023.68605432 146 -591118.36536799 4260023.68605432 146 -591120.36116573 4260023.68605432 146 -591122.35696345 4260023.68605432 146 -591124.35276119 4260023.68605432 146 -591134.33174984 4260023.68605432 146 -591136.32754756 4260023.68605432 146 -591138.3233453 4260023.68605432 146 -591140.31914302 4260023.68605432 146 -591154.28972713 4260023.68605432 144 -591156.28552487 4260023.68605432 144 -591166.26451352 4260023.68605432 144 -591176.24350216 4260023.68605432 146 -591188.21828855 4260023.68605432 148 -591196.20147947 4260023.68605432 150 -591230.13004087 4260023.68605432 150 -591242.10482726 4260023.68605432 148 -591256.07541137 4260023.68605432 146 -591270.04599548 4260023.68605432 144 -591282.02078185 4260023.68605432 142 -591299.98296142 4260023.68605432 140 -591321.93673645 4260023.68605432 138 -591020.57127923 4260021.68818412 148 -591054.49984063 4260021.68818412 146 -591056.49563837 4260021.68818412 146 -591058.49143609 4260021.68818412 146 -591060.48723383 4260021.68818412 146 -591062.48303156 4260021.68818412 146 -591064.47882929 4260021.68818412 146 -591082.44100886 4260021.68818412 146 -591084.43680659 4260021.68818412 146 -591086.43260431 4260021.68818412 146 -591088.42840205 4260021.68818412 146 -591090.42419977 4260021.68818412 146 -591092.41999751 4260021.68818412 146 -591094.41579523 4260021.68818412 146 -591096.41159297 4260021.68818412 146 -591098.4073907 4260021.68818412 146 -591100.40318842 4260021.68818412 146 -591102.39898616 4260021.68818412 146 -591104.39478388 4260021.68818412 146 -591106.39058162 4260021.68818412 146 -591108.38637934 4260021.68818412 146 -591110.38217708 4260021.68818412 146 -591112.37797481 4260021.68818412 146 -591142.31494076 4260021.68818412 146 -591144.31073848 4260021.68818412 146 -591158.28132259 4260021.68818412 144 -591160.27712033 4260021.68818412 144 -591166.26451352 4260021.68818412 144 -591176.24350216 4260021.68818412 146 -591188.21828855 4260021.68818412 148 -591194.20568173 4260021.68818412 150 -591232.1258386 4260021.68818412 150 -591242.10482726 4260021.68818412 148 -591256.07541137 4260021.68818412 146 -591272.0417932 4260021.68818412 144 -591284.01657959 4260021.68818412 142 -591301.97875916 4260021.68818412 140 -591022.56707695 4260019.6903139 148 -591024.56287469 4260019.6903139 148 -591026.55867241 4260019.6903139 148 -591028.55447015 4260019.6903139 148 -591030.55026788 4260019.6903139 148 -591032.54606561 4260019.6903139 148 -591118.36536799 4260019.6903139 148 -591120.36116573 4260019.6903139 148 -591122.35696345 4260019.6903139 148 -591124.35276119 4260019.6903139 148 -591126.34855891 4260019.6903139 148 -591128.34435665 4260019.6903139 148 -591146.30653622 4260019.6903139 146 -591148.30233395 4260019.6903139 146 -591150.29813167 4260019.6903139 146 -591162.27291805 4260019.6903139 144 -591164.26871579 4260019.6903139 144 -591176.24350216 4260019.6903139 146 -591186.22249081 4260019.6903139 148 -591194.20568173 4260019.6903139 150 -591234.12163634 4260019.6903139 150 -591244.10062498 4260019.6903139 148 -591258.07120909 4260019.6903139 146 -591260.06700683 4260019.6903139 146 -591272.0417932 4260019.6903139 144 -591284.01657959 4260019.6903139 142 -591301.97875916 4260019.6903139 140 -591034.54186334 4260017.69244369 148 -591036.53766106 4260017.69244369 148 -591038.5334588 4260017.69244369 148 -591110.38217708 4260017.69244369 148 -591112.37797481 4260017.69244369 148 -591114.37377254 4260017.69244369 148 -591116.36957027 4260017.69244369 148 -591130.34015438 4260017.69244369 148 -591132.33595211 4260017.69244369 148 -591134.33174984 4260017.69244369 148 -591136.32754756 4260017.69244369 148 -591152.29392941 4260017.69244369 146 -591154.28972713 4260017.69244369 146 -591156.28552487 4260017.69244369 146 -591176.24350216 4260017.69244369 146 -591186.22249081 4260017.69244369 148 -591194.20568173 4260017.69244369 150 -591236.11743406 4260017.69244369 150 -591246.09642271 4260017.69244369 148 -591262.06280455 4260017.69244369 146 -591274.03759094 4260017.69244369 144 -591286.01237731 4260017.69244369 142 -591288.00817505 4260017.69244369 142 -591303.97455688 4260017.69244369 140 -591040.52925652 4260015.69457349 148 -591042.52505426 4260015.69457349 148 -591044.52085198 4260015.69457349 148 -591064.47882929 4260015.69457349 148 -591066.47462702 4260015.69457349 148 -591068.47042474 4260015.69457349 148 -591070.46622248 4260015.69457349 148 -591072.4620202 4260015.69457349 148 -591074.45781794 4260015.69457349 148 -591076.45361566 4260015.69457349 148 -591100.40318842 4260015.69457349 148 -591102.39898616 4260015.69457349 148 -591104.39478388 4260015.69457349 148 -591106.39058162 4260015.69457349 148 -591108.38637934 4260015.69457349 148 -591138.3233453 4260015.69457349 148 -591140.31914302 4260015.69457349 148 -591142.31494076 4260015.69457349 148 -591144.31073848 4260015.69457349 148 -591146.30653622 4260015.69457349 148 -591148.30233395 4260015.69457349 148 -591156.28552487 4260015.69457349 146 -591158.28132259 4260015.69457349 146 -591160.27712033 4260015.69457349 146 -591162.27291805 4260015.69457349 146 -591176.24350216 4260015.69457349 146 -591186.22249081 4260015.69457349 148 -591192.20988401 4260015.69457349 150 -591238.1132318 4260015.69457349 150 -591246.09642271 4260015.69457349 148 -591264.05860228 4260015.69457349 146 -591276.03338866 4260015.69457349 144 -591290.00397277 4260015.69457349 142 -591305.97035462 4260015.69457349 140 -591046.51664972 4260013.69670327 148 -591048.51244745 4260013.69670327 148 -591050.50824518 4260013.69670327 148 -591052.50404291 4260013.69670327 148 -591054.49984063 4260013.69670327 148 -591056.49563837 4260013.69670327 148 -591058.49143609 4260013.69670327 148 -591060.48723383 4260013.69670327 148 -591062.48303156 4260013.69670327 148 -591078.4494134 4260013.69670327 148 -591080.44521113 4260013.69670327 148 -591082.44100886 4260013.69670327 148 -591090.42419977 4260013.69670327 148 -591092.41999751 4260013.69670327 148 -591094.41579523 4260013.69670327 148 -591096.41159297 4260013.69670327 148 -591098.4073907 4260013.69670327 148 -591120.36116573 4260013.69670327 150 -591122.35696345 4260013.69670327 150 -591124.35276119 4260013.69670327 150 -591126.34855891 4260013.69670327 150 -591128.34435665 4260013.69670327 150 -591130.34015438 4260013.69670327 150 -591132.33595211 4260013.69670327 150 -591134.33174984 4260013.69670327 150 -591150.29813167 4260013.69670327 148 -591152.29392941 4260013.69670327 148 -591154.28972713 4260013.69670327 148 -591156.28552487 4260013.69670327 148 -591164.26871579 4260013.69670327 146 -591166.26451352 4260013.69670327 146 -591168.26031124 4260013.69670327 146 -591176.24350216 4260013.69670327 146 -591184.22669309 4260013.69670327 148 -591186.22249081 4260013.69670327 148 -591192.20988401 4260013.69670327 150 -591240.10902952 4260013.69670327 150 -591248.09222045 4260013.69670327 148 -591264.05860228 4260013.69670327 146 -591278.02918639 4260013.69670327 144 -591291.99977051 4260013.69670327 142 -591307.96615234 4260013.69670327 140 -591082.44100886 4260011.69883307 148 -591084.43680659 4260011.69883307 148 -591086.43260431 4260011.69883307 148 -591088.42840205 4260011.69883307 148 -591116.36957027 4260011.69883307 150 -591118.36536799 4260011.69883307 150 -591120.36116573 4260011.69883307 150 -591136.32754756 4260011.69883307 150 -591138.3233453 4260011.69883307 150 -591140.31914302 4260011.69883307 150 -591142.31494076 4260011.69883307 150 -591158.28132259 4260011.69883307 148 -591160.27712033 4260011.69883307 148 -591170.25610898 4260011.69883307 146 -591172.2519067 4260011.69883307 146 -591176.24350216 4260011.69883307 146 -591184.22669309 4260011.69883307 148 -591192.20988401 4260011.69883307 150 -591242.10482726 4260011.69883307 150 -591248.09222045 4260011.69883307 148 -591266.05440002 4260011.69883307 146 -591280.02498412 4260011.69883307 144 -591293.99556823 4260011.69883307 142 -591309.96195007 4260011.69883307 140 -591112.37797481 4260009.70096285 150 -591114.37377254 4260009.70096285 150 -591144.31073848 4260009.70096285 150 -591146.30653622 4260009.70096285 150 -591162.27291805 4260009.70096285 148 -591164.26871579 4260009.70096285 148 -591174.24770444 4260009.70096285 146 -591176.24350216 4260009.70096285 146 -591184.22669309 4260009.70096285 148 -591192.20988401 4260009.70096285 150 -591242.10482726 4260009.70096285 150 -591250.08801817 4260009.70096285 148 -591268.05019774 4260009.70096285 146 -591282.02078185 4260009.70096285 144 -591295.99136596 4260009.70096285 142 -591297.9871637 4260009.70096285 142 -591311.9577478 4260009.70096285 140 -591020.57127923 4260007.70309264 150 -591022.56707695 4260007.70309264 150 -591106.39058162 4260007.70309264 150 -591108.38637934 4260007.70309264 150 -591110.38217708 4260007.70309264 150 -591148.30233395 4260007.70309264 150 -591150.29813167 4260007.70309264 150 -591166.26451352 4260007.70309264 148 -591184.22669309 4260007.70309264 148 -591192.20988401 4260007.70309264 150 -591194.20568173 4260007.70309264 150 -591214.16365903 4260007.70309264 152 -591216.15945677 4260007.70309264 152 -591218.15525449 4260007.70309264 152 -591220.15105223 4260007.70309264 152 -591222.14684995 4260007.70309264 152 -591244.10062498 4260007.70309264 150 -591250.08801817 4260007.70309264 148 -591270.04599548 4260007.70309264 146 -591284.01657959 4260007.70309264 144 -591299.98296142 4260007.70309264 142 -591301.97875916 4260007.70309264 142 -591313.95354553 4260007.70309264 140 -591024.56287469 4260005.70522244 150 -591026.55867241 4260005.70522244 150 -591028.55447015 4260005.70522244 150 -591030.55026788 4260005.70522244 150 -591032.54606561 4260005.70522244 150 -591034.54186334 4260005.70522244 150 -591036.53766106 4260005.70522244 150 -591038.5334588 4260005.70522244 150 -591060.48723383 4260005.70522244 150 -591062.48303156 4260005.70522244 150 -591064.47882929 4260005.70522244 150 -591066.47462702 4260005.70522244 150 -591076.45361566 4260005.70522244 150 -591078.4494134 4260005.70522244 150 -591080.44521113 4260005.70522244 150 -591082.44100886 4260005.70522244 150 -591084.43680659 4260005.70522244 150 -591086.43260431 4260005.70522244 150 -591088.42840205 4260005.70522244 150 -591090.42419977 4260005.70522244 150 -591092.41999751 4260005.70522244 150 -591094.41579523 4260005.70522244 150 -591096.41159297 4260005.70522244 150 -591098.4073907 4260005.70522244 150 -591100.40318842 4260005.70522244 150 -591102.39898616 4260005.70522244 150 -591104.39478388 4260005.70522244 150 -591152.29392941 4260005.70522244 150 -591154.28972713 4260005.70522244 150 -591168.26031124 4260005.70522244 148 -591170.25610898 4260005.70522244 148 -591184.22669309 4260005.70522244 148 -591192.20988401 4260005.70522244 150 -591208.17626584 4260005.70522244 152 -591210.17206358 4260005.70522244 152 -591212.1678613 4260005.70522244 152 -591224.14264769 4260005.70522244 152 -591226.13844541 4260005.70522244 152 -591228.13424315 4260005.70522244 152 -591244.10062498 4260005.70522244 150 -591252.08381591 4260005.70522244 148 -591272.0417932 4260005.70522244 146 -591286.01237731 4260005.70522244 144 -591303.97455688 4260005.70522244 142 -591315.94934327 4260005.70522244 140 -591040.52925652 4260003.70735222 150 -591042.52505426 4260003.70735222 150 -591044.52085198 4260003.70735222 150 -591046.51664972 4260003.70735222 150 -591048.51244745 4260003.70735222 150 -591050.50824518 4260003.70735222 150 -591052.50404291 4260003.70735222 150 -591054.49984063 4260003.70735222 150 -591056.49563837 4260003.70735222 150 -591058.49143609 4260003.70735222 150 -591156.28552487 4260003.70735222 150 -591158.28132259 4260003.70735222 150 -591172.2519067 4260003.70735222 148 -591174.24770444 4260003.70735222 148 -591184.22669309 4260003.70735222 148 -591192.20988401 4260003.70735222 150 -591204.18467038 4260003.70735222 152 -591206.18046812 4260003.70735222 152 -591230.13004087 4260003.70735222 152 -591244.10062498 4260003.70735222 150 -591246.09642271 4260003.70735222 150 -591252.08381591 4260003.70735222 148 -591272.0417932 4260003.70735222 146 -591288.00817505 4260003.70735222 144 -591305.97035462 4260003.70735222 142 -591315.94934327 4260003.70735222 140 -591160.27712033 4260001.70948202 150 -591162.27291805 4260001.70948202 150 -591176.24350216 4260001.70948202 148 -591184.22669309 4260001.70948202 148 -591192.20988401 4260001.70948202 150 -591202.18887266 4260001.70948202 152 -591232.1258386 4260001.70948202 152 -591234.12163634 4260001.70948202 152 -591246.09642271 4260001.70948202 150 -591254.07961363 4260001.70948202 148 -591274.03759094 4260001.70948202 146 -591288.00817505 4260001.70948202 144 -591307.96615234 4260001.70948202 142 -591317.94514099 4260001.70948202 140 -591112.37797481 4259999.7116118 152 -591114.37377254 4259999.7116118 152 -591118.36536799 4259999.7116118 152 -591120.36116573 4259999.7116118 152 -591122.35696345 4259999.7116118 152 -591124.35276119 4259999.7116118 152 -591126.34855891 4259999.7116118 152 -591128.34435665 4259999.7116118 152 -591130.34015438 4259999.7116118 152 -591132.33595211 4259999.7116118 152 -591134.33174984 4259999.7116118 152 -591136.32754756 4259999.7116118 152 -591138.3233453 4259999.7116118 152 -591164.26871579 4259999.7116118 150 -591166.26451352 4259999.7116118 150 -591178.2392999 4259999.7116118 148 -591184.22669309 4259999.7116118 148 -591192.20988401 4259999.7116118 150 -591200.19307492 4259999.7116118 152 -591236.11743406 4259999.7116118 152 -591246.09642271 4259999.7116118 150 -591254.07961363 4259999.7116118 148 -591276.03338866 4259999.7116118 146 -591290.00397277 4259999.7116118 144 -591309.96195007 4259999.7116118 142 -591317.94514099 4259999.7116118 140 -591020.57127923 4259997.71374159 152 -591022.56707695 4259997.71374159 152 -591024.56287469 4259997.71374159 152 -591066.47462702 4259997.71374159 152 -591068.47042474 4259997.71374159 152 -591070.46622248 4259997.71374159 152 -591072.4620202 4259997.71374159 152 -591074.45781794 4259997.71374159 152 -591076.45361566 4259997.71374159 152 -591102.39898616 4259997.71374159 152 -591104.39478388 4259997.71374159 152 -591106.39058162 4259997.71374159 152 -591108.38637934 4259997.71374159 152 -591110.38217708 4259997.71374159 152 -591114.37377254 4259997.71374159 152 -591116.36957027 4259997.71374159 152 -591138.3233453 4259997.71374159 152 -591140.31914302 4259997.71374159 152 -591142.31494076 4259997.71374159 152 -591168.26031124 4259997.71374159 150 -591170.25610898 4259997.71374159 150 -591180.23509763 4259997.71374159 148 -591182.23089535 4259997.71374159 148 -591184.22669309 4259997.71374159 148 -591192.20988401 4259997.71374159 150 -591200.19307492 4259997.71374159 152 -591236.11743406 4259997.71374159 152 -591246.09642271 4259997.71374159 150 -591256.07541137 4259997.71374159 148 -591276.03338866 4259997.71374159 146 -591291.99977051 4259997.71374159 144 -591311.9577478 4259997.71374159 142 -591319.94093873 4259997.71374159 140 -591026.55867241 4259995.71587139 152 -591028.55447015 4259995.71587139 152 -591030.55026788 4259995.71587139 152 -591032.54606561 4259995.71587139 152 -591034.54186334 4259995.71587139 152 -591036.53766106 4259995.71587139 152 -591038.5334588 4259995.71587139 152 -591040.52925652 4259995.71587139 152 -591042.52505426 4259995.71587139 152 -591044.52085198 4259995.71587139 152 -591046.51664972 4259995.71587139 152 -591048.51244745 4259995.71587139 152 -591050.50824518 4259995.71587139 152 -591052.50404291 4259995.71587139 152 -591054.49984063 4259995.71587139 152 -591056.49563837 4259995.71587139 152 -591058.49143609 4259995.71587139 152 -591060.48723383 4259995.71587139 152 -591062.48303156 4259995.71587139 152 -591064.47882929 4259995.71587139 152 -591066.47462702 4259995.71587139 152 -591078.4494134 4259995.71587139 152 -591080.44521113 4259995.71587139 152 -591082.44100886 4259995.71587139 152 -591084.43680659 4259995.71587139 152 -591086.43260431 4259995.71587139 152 -591088.42840205 4259995.71587139 152 -591090.42419977 4259995.71587139 152 -591092.41999751 4259995.71587139 152 -591094.41579523 4259995.71587139 152 -591096.41159297 4259995.71587139 152 -591098.4073907 4259995.71587139 152 -591100.40318842 4259995.71587139 152 -591144.31073848 4259995.71587139 152 -591146.30653622 4259995.71587139 152 -591148.30233395 4259995.71587139 152 -591150.29813167 4259995.71587139 152 -591172.2519067 4259995.71587139 150 -591174.24770444 4259995.71587139 150 -591184.22669309 4259995.71587139 148 -591192.20988401 4259995.71587139 150 -591202.18887266 4259995.71587139 152 -591238.1132318 4259995.71587139 152 -591248.09222045 4259995.71587139 150 -591256.07541137 4259995.71587139 148 -591278.02918639 4259995.71587139 146 -591293.99556823 4259995.71587139 144 -591311.9577478 4259995.71587139 142 -591319.94093873 4259995.71587139 140 -591150.29813167 4259993.71800117 152 -591152.29392941 4259993.71800117 152 -591176.24350216 4259993.71800117 150 -591192.20988401 4259993.71800117 150 -591202.18887266 4259993.71800117 152 -591238.1132318 4259993.71800117 152 -591248.09222045 4259993.71800117 150 -591258.07120909 4259993.71800117 148 -591260.06700683 4259993.71800117 148 -591278.02918639 4259993.71800117 146 -591295.99136596 4259993.71800117 144 -591313.95354553 4259993.71800117 142 -591321.93673645 4259993.71800117 140 -591154.28972713 4259991.72013097 152 -591156.28552487 4259991.72013097 152 -591178.2392999 4259991.72013097 150 -591192.20988401 4259991.72013097 150 -591202.18887266 4259991.72013097 152 -591240.10902952 4259991.72013097 152 -591248.09222045 4259991.72013097 150 -591262.06280455 4259991.72013097 148 -591280.02498412 4259991.72013097 146 -591295.99136596 4259991.72013097 144 -591313.95354553 4259991.72013097 142 -591321.93673645 4259991.72013097 140 -591040.52925652 4259989.72226075 154 -591042.52505426 4259989.72226075 154 -591044.52085198 4259989.72226075 154 -591046.51664972 4259989.72226075 154 -591048.51244745 4259989.72226075 154 -591050.50824518 4259989.72226075 154 -591052.50404291 4259989.72226075 154 -591054.49984063 4259989.72226075 154 -591056.49563837 4259989.72226075 154 -591058.49143609 4259989.72226075 154 -591060.48723383 4259989.72226075 154 -591062.48303156 4259989.72226075 154 -591064.47882929 4259989.72226075 154 -591066.47462702 4259989.72226075 154 -591068.47042474 4259989.72226075 154 -591070.46622248 4259989.72226075 154 -591072.4620202 4259989.72226075 154 -591074.45781794 4259989.72226075 154 -591076.45361566 4259989.72226075 154 -591078.4494134 4259989.72226075 154 -591080.44521113 4259989.72226075 154 -591082.44100886 4259989.72226075 154 -591084.43680659 4259989.72226075 154 -591086.43260431 4259989.72226075 154 -591088.42840205 4259989.72226075 154 -591090.42419977 4259989.72226075 154 -591092.41999751 4259989.72226075 154 -591094.41579523 4259989.72226075 154 -591096.41159297 4259989.72226075 154 -591098.4073907 4259989.72226075 154 -591100.40318842 4259989.72226075 154 -591102.39898616 4259989.72226075 154 -591104.39478388 4259989.72226075 154 -591106.39058162 4259989.72226075 154 -591108.38637934 4259989.72226075 154 -591110.38217708 4259989.72226075 154 -591112.37797481 4259989.72226075 154 -591114.37377254 4259989.72226075 154 -591116.36957027 4259989.72226075 154 -591158.28132259 4259989.72226075 152 -591160.27712033 4259989.72226075 152 -591180.23509763 4259989.72226075 150 -591192.20988401 4259989.72226075 150 -591202.18887266 4259989.72226075 152 -591240.10902952 4259989.72226075 152 -591250.08801817 4259989.72226075 150 -591262.06280455 4259989.72226075 148 -591282.02078185 4259989.72226075 146 -591297.9871637 4259989.72226075 144 -591315.94934327 4259989.72226075 142 -591321.93673645 4259989.72226075 140 -591030.55026788 4259987.72439054 154 -591032.54606561 4259987.72439054 154 -591034.54186334 4259987.72439054 154 -591036.53766106 4259987.72439054 154 -591038.5334588 4259987.72439054 154 -591118.36536799 4259987.72439054 154 -591120.36116573 4259987.72439054 154 -591122.35696345 4259987.72439054 154 -591124.35276119 4259987.72439054 154 -591126.34855891 4259987.72439054 154 -591128.34435665 4259987.72439054 154 -591162.27291805 4259987.72439054 152 -591182.23089535 4259987.72439054 150 -591190.21408627 4259987.72439054 150 -591202.18887266 4259987.72439054 152 -591242.10482726 4259987.72439054 152 -591250.08801817 4259987.72439054 150 -591264.05860228 4259987.72439054 148 -591282.02078185 4259987.72439054 146 -591299.98296142 4259987.72439054 144 -591315.94934327 4259987.72439054 142 -591020.57127923 4259985.72652034 154 -591022.56707695 4259985.72652034 154 -591024.56287469 4259985.72652034 154 -591026.55867241 4259985.72652034 154 -591028.55447015 4259985.72652034 154 -591128.34435665 4259985.72652034 154 -591130.34015438 4259985.72652034 154 -591132.33595211 4259985.72652034 154 -591134.33174984 4259985.72652034 154 -591164.26871579 4259985.72652034 152 -591166.26451352 4259985.72652034 152 -591182.23089535 4259985.72652034 150 -591190.21408627 4259985.72652034 150 -591202.18887266 4259985.72652034 152 -591242.10482726 4259985.72652034 152 -591252.08381591 4259985.72652034 150 -591264.05860228 4259985.72652034 148 -591284.01657959 4259985.72652034 146 -591299.98296142 4259985.72652034 144 -591317.94514099 4259985.72652034 142 -591046.51664972 4259983.72865012 156 -591048.51244745 4259983.72865012 156 -591050.50824518 4259983.72865012 156 -591052.50404291 4259983.72865012 156 -591054.49984063 4259983.72865012 156 -591056.49563837 4259983.72865012 156 -591058.49143609 4259983.72865012 156 -591060.48723383 4259983.72865012 156 -591062.48303156 4259983.72865012 156 -591064.47882929 4259983.72865012 156 -591066.47462702 4259983.72865012 156 -591068.47042474 4259983.72865012 156 -591070.46622248 4259983.72865012 156 -591072.4620202 4259983.72865012 156 -591074.45781794 4259983.72865012 156 -591076.45361566 4259983.72865012 156 -591078.4494134 4259983.72865012 156 -591080.44521113 4259983.72865012 156 -591082.44100886 4259983.72865012 156 -591084.43680659 4259983.72865012 156 -591086.43260431 4259983.72865012 156 -591088.42840205 4259983.72865012 156 -591090.42419977 4259983.72865012 156 -591136.32754756 4259983.72865012 154 -591138.3233453 4259983.72865012 154 -591140.31914302 4259983.72865012 154 -591142.31494076 4259983.72865012 154 -591168.26031124 4259983.72865012 152 -591182.23089535 4259983.72865012 150 -591188.21828855 4259983.72865012 150 -591200.19307492 4259983.72865012 152 -591214.16365903 4259983.72865012 154 -591216.15945677 4259983.72865012 154 -591218.15525449 4259983.72865012 154 -591220.15105223 4259983.72865012 154 -591222.14684995 4259983.72865012 154 -591244.10062498 4259983.72865012 152 -591252.08381591 4259983.72865012 150 -591266.05440002 4259983.72865012 148 -591286.01237731 4259983.72865012 146 -591301.97875916 4259983.72865012 144 -591317.94514099 4259983.72865012 142 -591036.53766106 4259981.73077992 156 -591038.5334588 4259981.73077992 156 -591040.52925652 4259981.73077992 156 -591042.52505426 4259981.73077992 156 -591044.52085198 4259981.73077992 156 -591092.41999751 4259981.73077992 156 -591094.41579523 4259981.73077992 156 -591096.41159297 4259981.73077992 156 -591098.4073907 4259981.73077992 156 -591100.40318842 4259981.73077992 156 -591144.31073848 4259981.73077992 154 -591146.30653622 4259981.73077992 154 -591148.30233395 4259981.73077992 154 -591170.25610898 4259981.73077992 152 -591184.22669309 4259981.73077992 150 -591186.22249081 4259981.73077992 150 -591200.19307492 4259981.73077992 152 -591210.17206358 4259981.73077992 154 -591212.1678613 4259981.73077992 154 -591222.14684995 4259981.73077992 154 -591224.14264769 4259981.73077992 154 -591244.10062498 4259981.73077992 152 -591254.07961363 4259981.73077992 150 -591268.05019774 4259981.73077992 148 -591288.00817505 4259981.73077992 146 -591301.97875916 4259981.73077992 144 -591319.94093873 4259981.73077992 142 -591028.55447015 4259979.7329097 156 -591030.55026788 4259979.7329097 156 -591032.54606561 4259979.7329097 156 -591034.54186334 4259979.7329097 156 -591102.39898616 4259979.7329097 156 -591104.39478388 4259979.7329097 156 -591106.39058162 4259979.7329097 156 -591108.38637934 4259979.7329097 156 -591110.38217708 4259979.7329097 156 -591112.37797481 4259979.7329097 156 -591114.37377254 4259979.7329097 156 -591116.36957027 4259979.7329097 156 -591118.36536799 4259979.7329097 156 -591150.29813167 4259979.7329097 154 -591152.29392941 4259979.7329097 154 -591172.2519067 4259979.7329097 152 -591200.19307492 4259979.7329097 152 -591208.17626584 4259979.7329097 154 -591226.13844541 4259979.7329097 154 -591246.09642271 4259979.7329097 152 -591254.07961363 4259979.7329097 150 -591268.05019774 4259979.7329097 148 -591288.00817505 4259979.7329097 146 -591303.97455688 4259979.7329097 144 -591319.94093873 4259979.7329097 142 -591020.57127923 4259977.73503949 156 -591022.56707695 4259977.73503949 156 -591024.56287469 4259977.73503949 156 -591026.55867241 4259977.73503949 156 -591112.37797481 4259977.73503949 156 -591120.36116573 4259977.73503949 156 -591122.35696345 4259977.73503949 156 -591124.35276119 4259977.73503949 156 -591126.34855891 4259977.73503949 156 -591128.34435665 4259977.73503949 156 -591130.34015438 4259977.73503949 156 -591132.33595211 4259977.73503949 156 -591134.33174984 4259977.73503949 156 -591154.28972713 4259977.73503949 154 -591156.28552487 4259977.73503949 154 -591174.24770444 4259977.73503949 152 -591200.19307492 4259977.73503949 152 -591206.18046812 4259977.73503949 154 -591228.13424315 4259977.73503949 154 -591246.09642271 4259977.73503949 152 -591254.07961363 4259977.73503949 150 -591270.04599548 4259977.73503949 148 -591290.00397277 4259977.73503949 146 -591305.97035462 4259977.73503949 144 -591319.94093873 4259977.73503949 142 -591048.51244745 4259975.73716928 158 -591050.50824518 4259975.73716928 158 -591052.50404291 4259975.73716928 158 -591054.49984063 4259975.73716928 158 -591056.49563837 4259975.73716928 158 -591058.49143609 4259975.73716928 158 -591060.48723383 4259975.73716928 158 -591062.48303156 4259975.73716928 158 -591064.47882929 4259975.73716928 158 -591066.47462702 4259975.73716928 158 -591068.47042474 4259975.73716928 158 -591070.46622248 4259975.73716928 158 -591072.4620202 4259975.73716928 158 -591074.45781794 4259975.73716928 158 -591076.45361566 4259975.73716928 158 -591136.32754756 4259975.73716928 156 -591138.3233453 4259975.73716928 156 -591140.31914302 4259975.73716928 156 -591142.31494076 4259975.73716928 156 -591158.28132259 4259975.73716928 154 -591160.27712033 4259975.73716928 154 -591176.24350216 4259975.73716928 152 -591198.1972772 4259975.73716928 152 -591204.18467038 4259975.73716928 154 -591230.13004087 4259975.73716928 154 -591246.09642271 4259975.73716928 152 -591254.07961363 4259975.73716928 150 -591270.04599548 4259975.73716928 148 -591291.99977051 4259975.73716928 146 -591307.96615234 4259975.73716928 144 -591321.93673645 4259975.73716928 142 -591040.52925652 4259973.73929907 158 -591042.52505426 4259973.73929907 158 -591044.52085198 4259973.73929907 158 -591046.51664972 4259973.73929907 158 -591078.4494134 4259973.73929907 158 -591080.44521113 4259973.73929907 158 -591082.44100886 4259973.73929907 158 -591084.43680659 4259973.73929907 158 -591086.43260431 4259973.73929907 158 -591088.42840205 4259973.73929907 158 -591090.42419977 4259973.73929907 158 -591092.41999751 4259973.73929907 158 -591094.41579523 4259973.73929907 158 -591144.31073848 4259973.73929907 156 -591146.30653622 4259973.73929907 156 -591162.27291805 4259973.73929907 154 -591164.26871579 4259973.73929907 154 -591178.2392999 4259973.73929907 152 -591190.21408627 4259973.73929907 152 -591192.20988401 4259973.73929907 152 -591194.20568173 4259973.73929907 152 -591196.20147947 4259973.73929907 152 -591204.18467038 4259973.73929907 154 -591230.13004087 4259973.73929907 154 -591246.09642271 4259973.73929907 152 -591254.07961363 4259973.73929907 150 -591272.0417932 4259973.73929907 148 -591293.99556823 4259973.73929907 146 -591307.96615234 4259973.73929907 144 -591034.54186334 4259971.74142887 158 -591036.53766106 4259971.74142887 158 -591038.5334588 4259971.74142887 158 -591096.41159297 4259971.74142887 158 -591098.4073907 4259971.74142887 158 -591100.40318842 4259971.74142887 158 -591102.39898616 4259971.74142887 158 -591104.39478388 4259971.74142887 158 -591106.39058162 4259971.74142887 158 -591108.38637934 4259971.74142887 158 -591110.38217708 4259971.74142887 158 -591148.30233395 4259971.74142887 156 -591150.29813167 4259971.74142887 156 -591166.26451352 4259971.74142887 154 -591168.26031124 4259971.74142887 154 -591180.23509763 4259971.74142887 152 -591188.21828855 4259971.74142887 152 -591190.21408627 4259971.74142887 152 -591200.19307492 4259971.74142887 154 -591202.18887266 4259971.74142887 154 -591232.1258386 4259971.74142887 154 -591248.09222045 4259971.74142887 152 -591256.07541137 4259971.74142887 150 -591274.03759094 4259971.74142887 148 -591293.99556823 4259971.74142887 146 -591309.96195007 4259971.74142887 144 -591311.9577478 4259971.74142887 144 -591026.55867241 4259969.74355865 158 -591028.55447015 4259969.74355865 158 -591030.55026788 4259969.74355865 158 -591032.54606561 4259969.74355865 158 -591056.49563837 4259969.74355865 160 -591058.49143609 4259969.74355865 160 -591060.48723383 4259969.74355865 160 -591062.48303156 4259969.74355865 160 -591064.47882929 4259969.74355865 160 -591066.47462702 4259969.74355865 160 -591068.47042474 4259969.74355865 160 -591070.46622248 4259969.74355865 160 -591072.4620202 4259969.74355865 160 -591112.37797481 4259969.74355865 158 -591114.37377254 4259969.74355865 158 -591116.36957027 4259969.74355865 158 -591118.36536799 4259969.74355865 158 -591120.36116573 4259969.74355865 158 -591152.29392941 4259969.74355865 156 -591154.28972713 4259969.74355865 156 -591170.25610898 4259969.74355865 154 -591172.2519067 4259969.74355865 154 -591180.23509763 4259969.74355865 152 -591186.22249081 4259969.74355865 152 -591188.21828855 4259969.74355865 152 -591196.20147947 4259969.74355865 154 -591198.1972772 4259969.74355865 154 -591206.18046812 4259969.74355865 156 -591208.17626584 4259969.74355865 156 -591210.17206358 4259969.74355865 156 -591212.1678613 4259969.74355865 156 -591214.16365903 4259969.74355865 156 -591216.15945677 4259969.74355865 156 -591218.15525449 4259969.74355865 156 -591234.12163634 4259969.74355865 154 -591248.09222045 4259969.74355865 152 -591256.07541137 4259969.74355865 150 -591276.03338866 4259969.74355865 148 -591295.99136596 4259969.74355865 146 -591311.9577478 4259969.74355865 144 -591313.95354553 4259969.74355865 144 -591020.57127923 4259967.74568844 158 -591022.56707695 4259967.74568844 158 -591024.56287469 4259967.74568844 158 -591050.50824518 4259967.74568844 160 -591052.50404291 4259967.74568844 160 -591054.49984063 4259967.74568844 160 -591074.45781794 4259967.74568844 160 -591076.45361566 4259967.74568844 160 -591078.4494134 4259967.74568844 160 -591080.44521113 4259967.74568844 160 -591082.44100886 4259967.74568844 160 -591122.35696345 4259967.74568844 158 -591124.35276119 4259967.74568844 158 -591126.34855891 4259967.74568844 158 -591156.28552487 4259967.74568844 156 -591158.28132259 4259967.74568844 156 -591160.27712033 4259967.74568844 156 -591174.24770444 4259967.74568844 154 -591182.23089535 4259967.74568844 152 -591184.22669309 4259967.74568844 152 -591194.20568173 4259967.74568844 154 -591202.18887266 4259967.74568844 156 -591204.18467038 4259967.74568844 156 -591220.15105223 4259967.74568844 156 -591222.14684995 4259967.74568844 156 -591234.12163634 4259967.74568844 154 -591248.09222045 4259967.74568844 152 -591256.07541137 4259967.74568844 150 -591276.03338866 4259967.74568844 148 -591297.9871637 4259967.74568844 146 -591315.94934327 4259967.74568844 144 -591046.51664972 4259965.74781823 160 -591048.51244745 4259965.74781823 160 -591054.49984063 4259965.74781823 162 -591056.49563837 4259965.74781823 162 -591058.49143609 4259965.74781823 162 -591060.48723383 4259965.74781823 162 -591062.48303156 4259965.74781823 162 -591064.47882929 4259965.74781823 162 -591066.47462702 4259965.74781823 162 -591068.47042474 4259965.74781823 162 -591070.46622248 4259965.74781823 162 -591072.4620202 4259965.74781823 162 -591074.45781794 4259965.74781823 162 -591076.45361566 4259965.74781823 162 -591078.4494134 4259965.74781823 162 -591080.44521113 4259965.74781823 162 -591082.44100886 4259965.74781823 162 -591084.43680659 4259965.74781823 160 -591086.43260431 4259965.74781823 160 -591088.42840205 4259965.74781823 160 -591090.42419977 4259965.74781823 160 -591092.41999751 4259965.74781823 160 -591126.34855891 4259965.74781823 158 -591128.34435665 4259965.74781823 158 -591130.34015438 4259965.74781823 158 -591162.27291805 4259965.74781823 156 -591164.26871579 4259965.74781823 156 -591166.26451352 4259965.74781823 156 -591168.26031124 4259965.74781823 156 -591176.24350216 4259965.74781823 154 -591178.2392999 4259965.74781823 154 -591192.20988401 4259965.74781823 154 -591198.1972772 4259965.74781823 156 -591200.19307492 4259965.74781823 156 -591224.14264769 4259965.74781823 156 -591236.11743406 4259965.74781823 154 -591248.09222045 4259965.74781823 152 -591256.07541137 4259965.74781823 150 -591278.02918639 4259965.74781823 148 -591297.9871637 4259965.74781823 146 -591317.94514099 4259965.74781823 144 -591044.52085198 4259963.74994802 160 -591052.50404291 4259963.74994802 162 -591054.49984063 4259963.74994802 162 -591084.43680659 4259963.74994802 162 -591086.43260431 4259963.74994802 162 -591088.42840205 4259963.74994802 162 -591090.42419977 4259963.74994802 162 -591092.41999751 4259963.74994802 162 -591094.41579523 4259963.74994802 160 -591096.41159297 4259963.74994802 160 -591098.4073907 4259963.74994802 160 -591100.40318842 4259963.74994802 160 -591102.39898616 4259963.74994802 160 -591104.39478388 4259963.74994802 160 -591132.33595211 4259963.74994802 158 -591134.33174984 4259963.74994802 158 -591168.26031124 4259963.74994802 156 -591170.25610898 4259963.74994802 156 -591172.2519067 4259963.74994802 156 -591180.23509763 4259963.74994802 154 -591190.21408627 4259963.74994802 154 -591196.20147947 4259963.74994802 156 -591226.13844541 4259963.74994802 156 -591236.11743406 4259963.74994802 154 -591250.08801817 4259963.74994802 152 -591256.07541137 4259963.74994802 150 -591280.02498412 4259963.74994802 148 -591299.98296142 4259963.74994802 146 -591319.94093873 4259963.74994802 144 -591042.52505426 4259961.75207782 160 -591048.51244745 4259961.75207782 162 -591050.50824518 4259961.75207782 162 -591094.41579523 4259961.75207782 162 -591096.41159297 4259961.75207782 162 -591098.4073907 4259961.75207782 162 -591100.40318842 4259961.75207782 162 -591106.39058162 4259961.75207782 160 -591108.38637934 4259961.75207782 160 -591110.38217708 4259961.75207782 160 -591112.37797481 4259961.75207782 160 -591114.37377254 4259961.75207782 160 -591136.32754756 4259961.75207782 158 -591138.3233453 4259961.75207782 158 -591174.24770444 4259961.75207782 156 -591176.24350216 4259961.75207782 156 -591182.23089535 4259961.75207782 154 -591188.21828855 4259961.75207782 154 -591194.20568173 4259961.75207782 156 -591226.13844541 4259961.75207782 156 -591238.1132318 4259961.75207782 154 -591250.08801817 4259961.75207782 152 -591258.07120909 4259961.75207782 150 -591260.06700683 4259961.75207782 150 -591280.02498412 4259961.75207782 148 -591301.97875916 4259961.75207782 146 -591321.93673645 4259961.75207782 144 -591040.52925652 4259959.7542076 160 -591046.51664972 4259959.7542076 162 -591056.49563837 4259959.7542076 164 -591058.49143609 4259959.7542076 164 -591060.48723383 4259959.7542076 164 -591062.48303156 4259959.7542076 164 -591064.47882929 4259959.7542076 164 -591066.47462702 4259959.7542076 164 -591068.47042474 4259959.7542076 164 -591070.46622248 4259959.7542076 164 -591072.4620202 4259959.7542076 164 -591074.45781794 4259959.7542076 164 -591076.45361566 4259959.7542076 164 -591078.4494134 4259959.7542076 164 -591080.44521113 4259959.7542076 164 -591082.44100886 4259959.7542076 164 -591084.43680659 4259959.7542076 164 -591086.43260431 4259959.7542076 164 -591088.42840205 4259959.7542076 164 -591102.39898616 4259959.7542076 162 -591104.39478388 4259959.7542076 162 -591106.39058162 4259959.7542076 162 -591116.36957027 4259959.7542076 160 -591118.36536799 4259959.7542076 160 -591120.36116573 4259959.7542076 160 -591140.31914302 4259959.7542076 158 -591142.31494076 4259959.7542076 158 -591178.2392999 4259959.7542076 156 -591184.22669309 4259959.7542076 154 -591186.22249081 4259959.7542076 154 -591194.20568173 4259959.7542076 156 -591228.13424315 4259959.7542076 156 -591238.1132318 4259959.7542076 154 -591240.10902952 4259959.7542076 154 -591250.08801817 4259959.7542076 152 -591258.07120909 4259959.7542076 150 -591260.06700683 4259959.7542076 150 -591282.02078185 4259959.7542076 148 -591303.97455688 4259959.7542076 146 -591036.53766106 4259957.75633739 160 -591038.5334588 4259957.75633739 160 -591044.52085198 4259957.75633739 162 -591050.50824518 4259957.75633739 164 -591052.50404291 4259957.75633739 164 -591054.49984063 4259957.75633739 164 -591090.42419977 4259957.75633739 164 -591092.41999751 4259957.75633739 164 -591094.41579523 4259957.75633739 164 -591096.41159297 4259957.75633739 164 -591098.4073907 4259957.75633739 164 -591100.40318842 4259957.75633739 164 -591108.38637934 4259957.75633739 162 -591110.38217708 4259957.75633739 162 -591112.37797481 4259957.75633739 162 -591114.37377254 4259957.75633739 162 -591122.35696345 4259957.75633739 160 -591124.35276119 4259957.75633739 160 -591126.34855891 4259957.75633739 160 -591128.34435665 4259957.75633739 160 -591144.31073848 4259957.75633739 158 -591146.30653622 4259957.75633739 158 -591180.23509763 4259957.75633739 156 -591184.22669309 4259957.75633739 154 -591192.20988401 4259957.75633739 156 -591230.13004087 4259957.75633739 156 -591240.10902952 4259957.75633739 154 -591250.08801817 4259957.75633739 152 -591252.08381591 4259957.75633739 152 -591258.07120909 4259957.75633739 150 -591260.06700683 4259957.75633739 150 -591262.06280455 4259957.75633739 150 -591282.02078185 4259957.75633739 148 -591305.97035462 4259957.75633739 146 -591034.54186334 4259955.75846718 160 -591040.52925652 4259955.75846718 162 -591042.52505426 4259955.75846718 162 -591046.51664972 4259955.75846718 164 -591048.51244745 4259955.75846718 164 -591054.49984063 4259955.75846718 166 -591056.49563837 4259955.75846718 166 -591058.49143609 4259955.75846718 166 -591060.48723383 4259955.75846718 166 -591062.48303156 4259955.75846718 166 -591064.47882929 4259955.75846718 166 -591066.47462702 4259955.75846718 166 -591068.47042474 4259955.75846718 166 -591070.46622248 4259955.75846718 166 -591072.4620202 4259955.75846718 166 -591074.45781794 4259955.75846718 166 -591076.45361566 4259955.75846718 166 -591078.4494134 4259955.75846718 166 -591080.44521113 4259955.75846718 166 -591082.44100886 4259955.75846718 166 -591084.43680659 4259955.75846718 166 -591086.43260431 4259955.75846718 166 -591088.42840205 4259955.75846718 166 -591090.42419977 4259955.75846718 166 -591092.41999751 4259955.75846718 166 -591094.41579523 4259955.75846718 166 -591102.39898616 4259955.75846718 164 -591104.39478388 4259955.75846718 164 -591106.39058162 4259955.75846718 164 -591108.38637934 4259955.75846718 164 -591110.38217708 4259955.75846718 164 -591116.36957027 4259955.75846718 162 -591118.36536799 4259955.75846718 162 -591120.36116573 4259955.75846718 162 -591122.35696345 4259955.75846718 162 -591128.34435665 4259955.75846718 160 -591130.34015438 4259955.75846718 160 -591132.33595211 4259955.75846718 160 -591148.30233395 4259955.75846718 158 -591150.29813167 4259955.75846718 158 -591152.29392941 4259955.75846718 158 -591180.23509763 4259955.75846718 156 -591190.21408627 4259955.75846718 156 -591230.13004087 4259955.75846718 156 -591240.10902952 4259955.75846718 154 -591252.08381591 4259955.75846718 152 -591262.06280455 4259955.75846718 150 -591284.01657959 4259955.75846718 148 -591307.96615234 4259955.75846718 146 -591034.54186334 4259953.76059697 160 -591038.5334588 4259953.76059697 162 -591044.52085198 4259953.76059697 164 -591048.51244745 4259953.76059697 166 -591050.50824518 4259953.76059697 166 -591052.50404291 4259953.76059697 166 -591060.48723383 4259953.76059697 168 -591062.48303156 4259953.76059697 168 -591064.47882929 4259953.76059697 168 -591066.47462702 4259953.76059697 168 -591068.47042474 4259953.76059697 168 -591070.46622248 4259953.76059697 168 -591072.4620202 4259953.76059697 168 -591074.45781794 4259953.76059697 168 -591076.45361566 4259953.76059697 168 -591078.4494134 4259953.76059697 168 -591080.44521113 4259953.76059697 168 -591082.44100886 4259953.76059697 168 -591084.43680659 4259953.76059697 168 -591096.41159297 4259953.76059697 166 -591098.4073907 4259953.76059697 166 -591100.40318842 4259953.76059697 166 -591102.39898616 4259953.76059697 166 -591104.39478388 4259953.76059697 166 -591112.37797481 4259953.76059697 164 -591114.37377254 4259953.76059697 164 -591116.36957027 4259953.76059697 164 -591124.35276119 4259953.76059697 162 -591126.34855891 4259953.76059697 162 -591128.34435665 4259953.76059697 162 -591134.33174984 4259953.76059697 160 -591136.32754756 4259953.76059697 160 -591154.28972713 4259953.76059697 158 -591156.28552487 4259953.76059697 158 -591158.28132259 4259953.76059697 158 -591160.27712033 4259953.76059697 158 -591162.27291805 4259953.76059697 158 -591182.23089535 4259953.76059697 156 -591188.21828855 4259953.76059697 156 -591232.1258386 4259953.76059697 156 -591242.10482726 4259953.76059697 154 -591252.08381591 4259953.76059697 152 -591262.06280455 4259953.76059697 150 -591286.01237731 4259953.76059697 148 -591309.96195007 4259953.76059697 146 -591311.9577478 4259953.76059697 146 -591030.55026788 4259951.76272677 160 -591032.54606561 4259951.76272677 160 -591036.53766106 4259951.76272677 162 -591040.52925652 4259951.76272677 164 -591042.52505426 4259951.76272677 164 -591046.51664972 4259951.76272677 166 -591054.49984063 4259951.76272677 168 -591056.49563837 4259951.76272677 168 -591058.49143609 4259951.76272677 168 -591068.47042474 4259951.76272677 170 -591070.46622248 4259951.76272677 170 -591072.4620202 4259951.76272677 170 -591074.45781794 4259951.76272677 170 -591076.45361566 4259951.76272677 170 -591078.4494134 4259951.76272677 170 -591086.43260431 4259951.76272677 168 -591088.42840205 4259951.76272677 168 -591090.42419977 4259951.76272677 168 -591092.41999751 4259951.76272677 168 -591106.39058162 4259951.76272677 166 -591108.38637934 4259951.76272677 166 -591110.38217708 4259951.76272677 166 -591112.37797481 4259951.76272677 166 -591118.36536799 4259951.76272677 164 -591120.36116573 4259951.76272677 164 -591122.35696345 4259951.76272677 164 -591130.34015438 4259951.76272677 162 -591132.33595211 4259951.76272677 162 -591138.3233453 4259951.76272677 160 -591140.31914302 4259951.76272677 160 -591164.26871579 4259951.76272677 158 -591166.26451352 4259951.76272677 158 -591168.26031124 4259951.76272677 158 -591170.25610898 4259951.76272677 158 -591172.2519067 4259951.76272677 158 -591182.23089535 4259951.76272677 156 -591184.22669309 4259951.76272677 156 -591186.22249081 4259951.76272677 156 -591198.1972772 4259951.76272677 158 -591200.19307492 4259951.76272677 158 -591202.18887266 4259951.76272677 158 -591204.18467038 4259951.76272677 158 -591206.18046812 4259951.76272677 158 -591208.17626584 4259951.76272677 158 -591210.17206358 4259951.76272677 158 -591212.1678613 4259951.76272677 158 -591234.12163634 4259951.76272677 156 -591242.10482726 4259951.76272677 154 -591252.08381591 4259951.76272677 152 -591264.05860228 4259951.76272677 150 -591288.00817505 4259951.76272677 148 -591311.9577478 4259951.76272677 146 -591020.57127923 4259949.76485655 160 -591022.56707695 4259949.76485655 160 -591024.56287469 4259949.76485655 160 -591026.55867241 4259949.76485655 160 -591028.55447015 4259949.76485655 160 -591034.54186334 4259949.76485655 162 -591038.5334588 4259949.76485655 164 -591044.52085198 4259949.76485655 166 -591052.50404291 4259949.76485655 168 -591058.49143609 4259949.76485655 170 -591060.48723383 4259949.76485655 170 -591062.48303156 4259949.76485655 170 -591064.47882929 4259949.76485655 170 -591066.47462702 4259949.76485655 170 -591080.44521113 4259949.76485655 170 -591082.44100886 4259949.76485655 170 -591084.43680659 4259949.76485655 170 -591086.43260431 4259949.76485655 170 -591088.42840205 4259949.76485655 170 -591094.41579523 4259949.76485655 168 -591096.41159297 4259949.76485655 168 -591098.4073907 4259949.76485655 168 -591100.40318842 4259949.76485655 168 -591102.39898616 4259949.76485655 168 -591104.39478388 4259949.76485655 168 -591114.37377254 4259949.76485655 166 -591116.36957027 4259949.76485655 166 -591118.36536799 4259949.76485655 166 -591120.36116573 4259949.76485655 166 -591124.35276119 4259949.76485655 164 -591126.34855891 4259949.76485655 164 -591128.34435665 4259949.76485655 164 -591134.33174984 4259949.76485655 162 -591136.32754756 4259949.76485655 162 -591142.31494076 4259949.76485655 160 -591144.31073848 4259949.76485655 160 -591146.30653622 4259949.76485655 160 -591172.2519067 4259949.76485655 158 -591184.22669309 4259949.76485655 156 -591192.20988401 4259949.76485655 158 -591194.20568173 4259949.76485655 158 -591196.20147947 4259949.76485655 158 -591214.16365903 4259949.76485655 158 -591236.11743406 4259949.76485655 156 -591244.10062498 4259949.76485655 154 -591254.07961363 4259949.76485655 152 -591266.05440002 4259949.76485655 150 -591290.00397277 4259949.76485655 148 -591313.95354553 4259949.76485655 146 -591030.55026788 4259947.76698634 162 -591032.54606561 4259947.76698634 162 -591038.5334588 4259947.76698634 164 -591042.52505426 4259947.76698634 166 -591050.50824518 4259947.76698634 168 -591056.49563837 4259947.76698634 170 -591066.47462702 4259947.76698634 172 -591068.47042474 4259947.76698634 172 -591070.46622248 4259947.76698634 172 -591072.4620202 4259947.76698634 172 -591074.45781794 4259947.76698634 172 -591076.45361566 4259947.76698634 172 -591078.4494134 4259947.76698634 172 -591080.44521113 4259947.76698634 172 -591082.44100886 4259947.76698634 172 -591090.42419977 4259947.76698634 170 -591092.41999751 4259947.76698634 170 -591094.41579523 4259947.76698634 170 -591096.41159297 4259947.76698634 170 -591106.39058162 4259947.76698634 168 -591108.38637934 4259947.76698634 168 -591110.38217708 4259947.76698634 168 -591112.37797481 4259947.76698634 168 -591122.35696345 4259947.76698634 166 -591124.35276119 4259947.76698634 166 -591130.34015438 4259947.76698634 164 -591132.33595211 4259947.76698634 164 -591138.3233453 4259947.76698634 162 -591140.31914302 4259947.76698634 162 -591142.31494076 4259947.76698634 162 -591148.30233395 4259947.76698634 160 -591150.29813167 4259947.76698634 160 -591174.24770444 4259947.76698634 158 -591188.21828855 4259947.76698634 158 -591190.21408627 4259947.76698634 158 -591216.15945677 4259947.76698634 158 -591218.15525449 4259947.76698634 158 -591238.1132318 4259947.76698634 156 -591240.10902952 4259947.76698634 156 -591244.10062498 4259947.76698634 154 -591254.07961363 4259947.76698634 152 -591268.05019774 4259947.76698634 150 -591290.00397277 4259947.76698634 148 -591313.95354553 4259947.76698634 146 -591026.55867241 4259945.76911613 162 -591028.55447015 4259945.76911613 162 -591030.55026788 4259945.76911613 162 -591036.53766106 4259945.76911613 164 -591038.5334588 4259945.76911613 166 -591040.52925652 4259945.76911613 166 -591048.51244745 4259945.76911613 168 -591054.49984063 4259945.76911613 170 -591062.48303156 4259945.76911613 172 -591064.47882929 4259945.76911613 172 -591084.43680659 4259945.76911613 172 -591086.43260431 4259945.76911613 172 -591088.42840205 4259945.76911613 172 -591090.42419977 4259945.76911613 172 -591092.41999751 4259945.76911613 172 -591094.41579523 4259945.76911613 172 -591096.41159297 4259945.76911613 172 -591098.4073907 4259945.76911613 170 -591100.40318842 4259945.76911613 170 -591102.39898616 4259945.76911613 170 -591104.39478388 4259945.76911613 170 -591106.39058162 4259945.76911613 170 -591114.37377254 4259945.76911613 168 -591116.36957027 4259945.76911613 168 -591118.36536799 4259945.76911613 168 -591126.34855891 4259945.76911613 166 -591128.34435665 4259945.76911613 166 -591134.33174984 4259945.76911613 164 -591136.32754756 4259945.76911613 164 -591144.31073848 4259945.76911613 162 -591146.30653622 4259945.76911613 162 -591152.29392941 4259945.76911613 160 -591154.28972713 4259945.76911613 160 -591174.24770444 4259945.76911613 158 -591184.22669309 4259945.76911613 158 -591186.22249081 4259945.76911613 158 -591220.15105223 4259945.76911613 158 -591242.10482726 4259945.76911613 156 -591246.09642271 4259945.76911613 154 -591256.07541137 4259945.76911613 152 -591258.07120909 4259945.76911613 152 -591260.06700683 4259945.76911613 152 -591268.05019774 4259945.76911613 150 -591291.99977051 4259945.76911613 148 -591313.95354553 4259945.76911613 146 -591020.57127923 4259943.77124592 162 -591022.56707695 4259943.77124592 162 -591024.56287469 4259943.77124592 162 -591034.54186334 4259943.77124592 164 -591036.53766106 4259943.77124592 166 -591046.51664972 4259943.77124592 168 -591050.50824518 4259943.77124592 170 -591052.50404291 4259943.77124592 170 -591058.49143609 4259943.77124592 172 -591060.48723383 4259943.77124592 172 -591070.46622248 4259943.77124592 174 -591072.4620202 4259943.77124592 174 -591074.45781794 4259943.77124592 174 -591076.45361566 4259943.77124592 174 -591078.4494134 4259943.77124592 174 -591080.44521113 4259943.77124592 174 -591102.39898616 4259943.77124592 172 -591104.39478388 4259943.77124592 172 -591108.38637934 4259943.77124592 170 -591110.38217708 4259943.77124592 170 -591112.37797481 4259943.77124592 170 -591120.36116573 4259943.77124592 168 -591122.35696345 4259943.77124592 168 -591130.34015438 4259943.77124592 166 -591132.33595211 4259943.77124592 166 -591138.3233453 4259943.77124592 164 -591140.31914302 4259943.77124592 164 -591148.30233395 4259943.77124592 162 -591150.29813167 4259943.77124592 162 -591156.28552487 4259943.77124592 160 -591158.28132259 4259943.77124592 160 -591174.24770444 4259943.77124592 158 -591182.23089535 4259943.77124592 158 -591198.1972772 4259943.77124592 160 -591200.19307492 4259943.77124592 160 -591202.18887266 4259943.77124592 160 -591204.18467038 4259943.77124592 160 -591222.14684995 4259943.77124592 158 -591244.10062498 4259943.77124592 156 -591248.09222045 4259943.77124592 154 -591250.08801817 4259943.77124592 154 -591262.06280455 4259943.77124592 152 -591270.04599548 4259943.77124592 150 -591272.0417932 4259943.77124592 150 -591293.99556823 4259943.77124592 148 -591315.94934327 4259943.77124592 146 -591032.54606561 4259941.77337572 164 -591034.54186334 4259941.77337572 166 -591044.52085198 4259941.77337572 168 -591048.51244745 4259941.77337572 170 -591056.49563837 4259941.77337572 172 -591064.47882929 4259941.77337572 174 -591066.47462702 4259941.77337572 174 -591068.47042474 4259941.77337572 174 -591080.44521113 4259941.77337572 174 -591082.44100886 4259941.77337572 174 -591084.43680659 4259941.77337572 174 -591086.43260431 4259941.77337572 174 -591088.42840205 4259941.77337572 174 -591090.42419977 4259941.77337572 174 -591092.41999751 4259941.77337572 174 -591094.41579523 4259941.77337572 174 -591096.41159297 4259941.77337572 174 -591098.4073907 4259941.77337572 174 -591100.40318842 4259941.77337572 174 -591102.39898616 4259941.77337572 174 -591106.39058162 4259941.77337572 172 -591108.38637934 4259941.77337572 172 -591110.38217708 4259941.77337572 172 -591114.37377254 4259941.77337572 170 -591116.36957027 4259941.77337572 170 -591124.35276119 4259941.77337572 168 -591134.33174984 4259941.77337572 166 -591142.31494076 4259941.77337572 164 -591144.31073848 4259941.77337572 164 -591152.29392941 4259941.77337572 162 -591154.28972713 4259941.77337572 162 -591160.27712033 4259941.77337572 160 -591162.27291805 4259941.77337572 160 -591174.24770444 4259941.77337572 158 -591178.2392999 4259941.77337572 158 -591180.23509763 4259941.77337572 158 -591190.21408627 4259941.77337572 160 -591192.20988401 4259941.77337572 160 -591194.20568173 4259941.77337572 160 -591196.20147947 4259941.77337572 160 -591206.18046812 4259941.77337572 160 -591208.17626584 4259941.77337572 160 -591210.17206358 4259941.77337572 160 -591224.14264769 4259941.77337572 158 -591246.09642271 4259941.77337572 156 -591248.09222045 4259941.77337572 156 -591252.08381591 4259941.77337572 154 -591264.05860228 4259941.77337572 152 -591274.03759094 4259941.77337572 150 -591295.99136596 4259941.77337572 148 -591315.94934327 4259941.77337572 146 -591030.55026788 4259939.7755055 164 -591034.54186334 4259939.7755055 166 -591042.52505426 4259939.7755055 168 -591046.51664972 4259939.7755055 170 -591048.51244745 4259939.7755055 170 -591054.49984063 4259939.7755055 172 -591062.48303156 4259939.7755055 174 -591068.47042474 4259939.7755055 176 -591070.46622248 4259939.7755055 176 -591072.4620202 4259939.7755055 176 -591074.45781794 4259939.7755055 176 -591076.45361566 4259939.7755055 176 -591078.4494134 4259939.7755055 176 -591080.44521113 4259939.7755055 176 -591104.39478388 4259939.7755055 174 -591106.39058162 4259939.7755055 174 -591108.38637934 4259939.7755055 174 -591112.37797481 4259939.7755055 172 -591114.37377254 4259939.7755055 172 -591118.36536799 4259939.7755055 170 -591120.36116573 4259939.7755055 170 -591126.34855891 4259939.7755055 168 -591136.32754756 4259939.7755055 166 -591138.3233453 4259939.7755055 166 -591146.30653622 4259939.7755055 164 -591148.30233395 4259939.7755055 164 -591156.28552487 4259939.7755055 162 -591164.26871579 4259939.7755055 160 -591174.24770444 4259939.7755055 158 -591176.24350216 4259939.7755055 158 -591184.22669309 4259939.7755055 160 -591186.22249081 4259939.7755055 160 -591188.21828855 4259939.7755055 160 -591212.1678613 4259939.7755055 160 -591226.13844541 4259939.7755055 158 -591228.13424315 4259939.7755055 158 -591250.08801817 4259939.7755055 156 -591252.08381591 4259939.7755055 156 -591254.07961363 4259939.7755055 154 -591256.07541137 4259939.7755055 154 -591258.07120909 4259939.7755055 154 -591260.06700683 4259939.7755055 154 -591266.05440002 4259939.7755055 152 -591276.03338866 4259939.7755055 150 -591297.9871637 4259939.7755055 148 -591317.94514099 4259939.7755055 146 -591028.55447015 4259937.77763529 164 -591032.54606561 4259937.77763529 166 -591040.52925652 4259937.77763529 168 -591044.52085198 4259937.77763529 170 -591052.50404291 4259937.77763529 172 -591058.49143609 4259937.77763529 174 -591060.48723383 4259937.77763529 174 -591064.47882929 4259937.77763529 176 -591066.47462702 4259937.77763529 176 -591070.46622248 4259937.77763529 178 -591072.4620202 4259937.77763529 178 -591074.45781794 4259937.77763529 178 -591076.45361566 4259937.77763529 178 -591078.4494134 4259937.77763529 178 -591080.44521113 4259937.77763529 178 -591082.44100886 4259937.77763529 176 -591084.43680659 4259937.77763529 176 -591086.43260431 4259937.77763529 176 -591088.42840205 4259937.77763529 176 -591090.42419977 4259937.77763529 176 -591092.41999751 4259937.77763529 176 -591094.41579523 4259937.77763529 176 -591096.41159297 4259937.77763529 176 -591098.4073907 4259937.77763529 176 -591100.40318842 4259937.77763529 176 -591102.39898616 4259937.77763529 176 -591110.38217708 4259937.77763529 174 -591116.36957027 4259937.77763529 172 -591118.36536799 4259937.77763529 172 -591122.35696345 4259937.77763529 170 -591128.34435665 4259937.77763529 168 -591140.31914302 4259937.77763529 166 -591150.29813167 4259937.77763529 164 -591158.28132259 4259937.77763529 162 -591164.26871579 4259937.77763529 160 -591180.23509763 4259937.77763529 160 -591182.23089535 4259937.77763529 160 -591214.16365903 4259937.77763529 160 -591230.13004087 4259937.77763529 158 -591232.1258386 4259937.77763529 158 -591234.12163634 4259937.77763529 158 -591254.07961363 4259937.77763529 156 -591256.07541137 4259937.77763529 156 -591262.06280455 4259937.77763529 154 -591264.05860228 4259937.77763529 154 -591268.05019774 4259937.77763529 152 -591270.04599548 4259937.77763529 152 -591278.02918639 4259937.77763529 150 -591280.02498412 4259937.77763529 150 -591299.98296142 4259937.77763529 148 -591317.94514099 4259937.77763529 146 -591024.56287469 4259935.77976508 164 -591026.55867241 4259935.77976508 164 -591030.55026788 4259935.77976508 166 -591036.53766106 4259935.77976508 168 -591038.5334588 4259935.77976508 168 -591044.52085198 4259935.77976508 170 -591050.50824518 4259935.77976508 172 -591056.49563837 4259935.77976508 174 -591060.48723383 4259935.77976508 176 -591062.48303156 4259935.77976508 176 -591066.47462702 4259935.77976508 178 -591068.47042474 4259935.77976508 178 -591074.45781794 4259935.77976508 180 -591076.45361566 4259935.77976508 180 -591082.44100886 4259935.77976508 178 -591084.43680659 4259935.77976508 178 -591086.43260431 4259935.77976508 178 -591088.42840205 4259935.77976508 178 -591090.42419977 4259935.77976508 178 -591092.41999751 4259935.77976508 178 -591094.41579523 4259935.77976508 178 -591104.39478388 4259935.77976508 176 -591106.39058162 4259935.77976508 176 -591112.37797481 4259935.77976508 174 -591114.37377254 4259935.77976508 174 -591120.36116573 4259935.77976508 172 -591124.35276119 4259935.77976508 170 -591126.34855891 4259935.77976508 170 -591130.34015438 4259935.77976508 168 -591132.33595211 4259935.77976508 168 -591142.31494076 4259935.77976508 166 -591152.29392941 4259935.77976508 164 -591160.27712033 4259935.77976508 162 -591164.26871579 4259935.77976508 160 -591174.24770444 4259935.77976508 160 -591176.24350216 4259935.77976508 160 -591178.2392999 4259935.77976508 160 -591188.21828855 4259935.77976508 162 -591190.21408627 4259935.77976508 162 -591192.20988401 4259935.77976508 162 -591194.20568173 4259935.77976508 162 -591196.20147947 4259935.77976508 162 -591198.1972772 4259935.77976508 162 -591200.19307492 4259935.77976508 162 -591216.15945677 4259935.77976508 160 -591236.11743406 4259935.77976508 158 -591238.1132318 4259935.77976508 158 -591240.10902952 4259935.77976508 158 -591242.10482726 4259935.77976508 158 -591244.10062498 4259935.77976508 158 -591246.09642271 4259935.77976508 158 -591248.09222045 4259935.77976508 158 -591258.07120909 4259935.77976508 156 -591260.06700683 4259935.77976508 156 -591262.06280455 4259935.77976508 156 -591266.05440002 4259935.77976508 154 -591268.05019774 4259935.77976508 154 -591272.0417932 4259935.77976508 152 -591282.02078185 4259935.77976508 150 -591301.97875916 4259935.77976508 148 -591319.94093873 4259935.77976508 146 -591020.57127923 4259933.78189487 164 -591022.56707695 4259933.78189487 164 -591028.55447015 4259933.78189487 166 -591034.54186334 4259933.78189487 168 -591042.52505426 4259933.78189487 170 -591048.51244745 4259933.78189487 172 -591054.49984063 4259933.78189487 174 -591058.49143609 4259933.78189487 176 -591064.47882929 4259933.78189487 178 -591070.46622248 4259933.78189487 180 -591072.4620202 4259933.78189487 180 -591074.45781794 4259933.78189487 180 -591078.4494134 4259933.78189487 180 -591080.44521113 4259933.78189487 180 -591082.44100886 4259933.78189487 180 -591084.43680659 4259933.78189487 180 -591086.43260431 4259933.78189487 180 -591088.42840205 4259933.78189487 180 -591090.42419977 4259933.78189487 180 -591092.41999751 4259933.78189487 180 -591094.41579523 4259933.78189487 180 -591096.41159297 4259933.78189487 178 -591098.4073907 4259933.78189487 178 -591100.40318842 4259933.78189487 178 -591102.39898616 4259933.78189487 178 -591108.38637934 4259933.78189487 176 -591110.38217708 4259933.78189487 176 -591116.36957027 4259933.78189487 174 -591122.35696345 4259933.78189487 172 -591124.35276119 4259933.78189487 172 -591128.34435665 4259933.78189487 170 -591134.33174984 4259933.78189487 168 -591144.31073848 4259933.78189487 166 -591146.30653622 4259933.78189487 166 -591154.28972713 4259933.78189487 164 -591160.27712033 4259933.78189487 162 -591166.26451352 4259933.78189487 160 -591172.2519067 4259933.78189487 160 -591174.24770444 4259933.78189487 160 -591182.23089535 4259933.78189487 162 -591184.22669309 4259933.78189487 162 -591186.22249081 4259933.78189487 162 -591202.18887266 4259933.78189487 162 -591204.18467038 4259933.78189487 162 -591206.18046812 4259933.78189487 162 -591218.15525449 4259933.78189487 160 -591250.08801817 4259933.78189487 158 -591252.08381591 4259933.78189487 158 -591254.07961363 4259933.78189487 158 -591256.07541137 4259933.78189487 158 -591264.05860228 4259933.78189487 156 -591266.05440002 4259933.78189487 156 -591270.04599548 4259933.78189487 154 -591272.0417932 4259933.78189487 154 -591274.03759094 4259933.78189487 152 -591276.03338866 4259933.78189487 152 -591278.02918639 4259933.78189487 152 -591284.01657959 4259933.78189487 150 -591286.01237731 4259933.78189487 150 -591303.97455688 4259933.78189487 148 -591319.94093873 4259933.78189487 146 -591026.55867241 4259931.78402467 166 -591032.54606561 4259931.78402467 168 -591040.52925652 4259931.78402467 170 -591046.51664972 4259931.78402467 172 -591052.50404291 4259931.78402467 174 -591056.49563837 4259931.78402467 176 -591062.48303156 4259931.78402467 178 -591068.47042474 4259931.78402467 180 -591076.45361566 4259931.78402467 182 -591078.4494134 4259931.78402467 182 -591080.44521113 4259931.78402467 182 -591096.41159297 4259931.78402467 180 -591098.4073907 4259931.78402467 180 -591100.40318842 4259931.78402467 180 -591104.39478388 4259931.78402467 178 -591112.37797481 4259931.78402467 176 -591118.36536799 4259931.78402467 174 -591124.35276119 4259931.78402467 172 -591126.34855891 4259931.78402467 172 -591130.34015438 4259931.78402467 170 -591136.32754756 4259931.78402467 168 -591146.30653622 4259931.78402467 166 -591156.28552487 4259931.78402467 164 -591162.27291805 4259931.78402467 162 -591166.26451352 4259931.78402467 160 -591168.26031124 4259931.78402467 160 -591170.25610898 4259931.78402467 160 -591178.2392999 4259931.78402467 162 -591180.23509763 4259931.78402467 162 -591208.17626584 4259931.78402467 162 -591210.17206358 4259931.78402467 162 -591220.15105223 4259931.78402467 160 -591222.14684995 4259931.78402467 160 -591258.07120909 4259931.78402467 158 -591260.06700683 4259931.78402467 158 -591262.06280455 4259931.78402467 158 -591268.05019774 4259931.78402467 156 -591270.04599548 4259931.78402467 156 -591274.03759094 4259931.78402467 154 -591276.03338866 4259931.78402467 154 -591278.02918639 4259931.78402467 152 -591280.02498412 4259931.78402467 152 -591288.00817505 4259931.78402467 150 -591305.97035462 4259931.78402467 148 -591321.93673645 4259931.78402467 146 -591022.56707695 4259929.78615445 166 -591024.56287469 4259929.78615445 166 -591032.54606561 4259929.78615445 168 -591038.5334588 4259929.78615445 170 -591044.52085198 4259929.78615445 172 -591050.50824518 4259929.78615445 174 -591052.50404291 4259929.78615445 176 -591054.49984063 4259929.78615445 176 -591060.48723383 4259929.78615445 178 -591066.47462702 4259929.78615445 180 -591072.4620202 4259929.78615445 182 -591074.45781794 4259929.78615445 182 -591082.44100886 4259929.78615445 182 -591084.43680659 4259929.78615445 182 -591086.43260431 4259929.78615445 182 -591088.42840205 4259929.78615445 182 -591102.39898616 4259929.78615445 180 -591104.39478388 4259929.78615445 180 -591106.39058162 4259929.78615445 178 -591108.38637934 4259929.78615445 178 -591114.37377254 4259929.78615445 176 -591120.36116573 4259929.78615445 174 -591128.34435665 4259929.78615445 172 -591130.34015438 4259929.78615445 170 -591136.32754756 4259929.78615445 168 -591148.30233395 4259929.78615445 166 -591156.28552487 4259929.78615445 164 -591164.26871579 4259929.78615445 162 -591176.24350216 4259929.78615445 162 -591212.1678613 4259929.78615445 162 -591214.16365903 4259929.78615445 162 -591224.14264769 4259929.78615445 160 -591264.05860228 4259929.78615445 158 -591266.05440002 4259929.78615445 158 -591272.0417932 4259929.78615445 156 -591274.03759094 4259929.78615445 156 -591278.02918639 4259929.78615445 154 -591280.02498412 4259929.78615445 154 -591282.02078185 4259929.78615445 152 -591290.00397277 4259929.78615445 150 -591305.97035462 4259929.78615445 148 -591321.93673645 4259929.78615445 146 -591020.57127923 4259927.78828424 166 -591030.55026788 4259927.78828424 168 -591036.53766106 4259927.78828424 170 -591042.52505426 4259927.78828424 172 -591048.51244745 4259927.78828424 174 -591050.50824518 4259927.78828424 176 -591058.49143609 4259927.78828424 178 -591064.47882929 4259927.78828424 180 -591070.46622248 4259927.78828424 182 -591090.42419977 4259927.78828424 182 -591092.41999751 4259927.78828424 182 -591094.41579523 4259927.78828424 182 -591096.41159297 4259927.78828424 182 -591098.4073907 4259927.78828424 182 -591100.40318842 4259927.78828424 182 -591106.39058162 4259927.78828424 180 -591110.38217708 4259927.78828424 178 -591112.37797481 4259927.78828424 178 -591116.36957027 4259927.78828424 176 -591122.35696345 4259927.78828424 174 -591130.34015438 4259927.78828424 172 -591132.33595211 4259927.78828424 170 -591138.3233453 4259927.78828424 168 -591150.29813167 4259927.78828424 166 -591158.28132259 4259927.78828424 164 -591164.26871579 4259927.78828424 162 -591174.24770444 4259927.78828424 162 -591216.15945677 4259927.78828424 162 -591218.15525449 4259927.78828424 162 -591226.13844541 4259927.78828424 160 -591228.13424315 4259927.78828424 160 -591230.13004087 4259927.78828424 160 -591232.1258386 4259927.78828424 160 -591234.12163634 4259927.78828424 160 -591236.11743406 4259927.78828424 160 -591238.1132318 4259927.78828424 160 -591240.10902952 4259927.78828424 160 -591242.10482726 4259927.78828424 160 -591244.10062498 4259927.78828424 160 -591246.09642271 4259927.78828424 160 -591248.09222045 4259927.78828424 160 -591250.08801817 4259927.78828424 160 -591252.08381591 4259927.78828424 160 -591254.07961363 4259927.78828424 160 -591256.07541137 4259927.78828424 160 -591258.07120909 4259927.78828424 160 -591260.06700683 4259927.78828424 160 -591268.05019774 4259927.78828424 158 -591270.04599548 4259927.78828424 158 -591276.03338866 4259927.78828424 156 -591282.02078185 4259927.78828424 154 -591284.01657959 4259927.78828424 152 -591286.01237731 4259927.78828424 152 -591291.99977051 4259927.78828424 150 -591307.96615234 4259927.78828424 148 -591028.55447015 4259925.79041403 168 -591034.54186334 4259925.79041403 170 -591042.52505426 4259925.79041403 172 -591046.51664972 4259925.79041403 174 -591048.51244745 4259925.79041403 176 -591050.50824518 4259925.79041403 176 -591056.49563837 4259925.79041403 178 -591062.48303156 4259925.79041403 180 -591068.47042474 4259925.79041403 182 -591102.39898616 4259925.79041403 182 -591104.39478388 4259925.79041403 182 -591108.38637934 4259925.79041403 180 -591110.38217708 4259925.79041403 180 -591112.37797481 4259925.79041403 178 -591114.37377254 4259925.79041403 178 -591118.36536799 4259925.79041403 176 -591124.35276119 4259925.79041403 174 -591132.33595211 4259925.79041403 172 -591134.33174984 4259925.79041403 170 -591140.31914302 4259925.79041403 168 -591150.29813167 4259925.79041403 166 -591158.28132259 4259925.79041403 164 -591164.26871579 4259925.79041403 162 -591166.26451352 4259925.79041403 162 -591172.2519067 4259925.79041403 162 -591178.2392999 4259925.79041403 164 -591180.23509763 4259925.79041403 164 -591182.23089535 4259925.79041403 164 -591184.22669309 4259925.79041403 164 -591186.22249081 4259925.79041403 164 -591188.21828855 4259925.79041403 164 -591190.21408627 4259925.79041403 164 -591192.20988401 4259925.79041403 164 -591194.20568173 4259925.79041403 164 -591196.20147947 4259925.79041403 164 -591198.1972772 4259925.79041403 164 -591220.15105223 4259925.79041403 162 -591222.14684995 4259925.79041403 162 -591262.06280455 4259925.79041403 160 -591264.05860228 4259925.79041403 160 -591272.0417932 4259925.79041403 158 -591274.03759094 4259925.79041403 158 -591278.02918639 4259925.79041403 156 -591280.02498412 4259925.79041403 156 -591284.01657959 4259925.79041403 154 -591288.00817505 4259925.79041403 152 -591293.99556823 4259925.79041403 150 -591295.99136596 4259925.79041403 150 -591309.96195007 4259925.79041403 148 -591026.55867241 4259923.79254382 168 -591032.54606561 4259923.79254382 170 -591040.52925652 4259923.79254382 172 -591044.52085198 4259923.79254382 174 -591046.51664972 4259923.79254382 176 -591054.49984063 4259923.79254382 178 -591060.48723383 4259923.79254382 180 -591066.47462702 4259923.79254382 182 -591074.45781794 4259923.79254382 184 -591076.45361566 4259923.79254382 184 -591078.4494134 4259923.79254382 184 -591080.44521113 4259923.79254382 184 -591082.44100886 4259923.79254382 184 -591084.43680659 4259923.79254382 184 -591086.43260431 4259923.79254382 184 -591088.42840205 4259923.79254382 184 -591090.42419977 4259923.79254382 184 -591092.41999751 4259923.79254382 186 -591094.41579523 4259923.79254382 184 -591096.41159297 4259923.79254382 186 -591098.4073907 4259923.79254382 184 -591100.40318842 4259923.79254382 184 -591102.39898616 4259923.79254382 184 -591106.39058162 4259923.79254382 182 -591112.37797481 4259923.79254382 180 -591116.36957027 4259923.79254382 178 -591120.36116573 4259923.79254382 176 -591126.34855891 4259923.79254382 174 -591132.33595211 4259923.79254382 172 -591136.32754756 4259923.79254382 170 -591142.31494076 4259923.79254382 168 -591152.29392941 4259923.79254382 166 -591158.28132259 4259923.79254382 164 -591166.26451352 4259923.79254382 162 -591170.25610898 4259923.79254382 162 -591178.2392999 4259923.79254382 164 -591200.19307492 4259923.79254382 164 -591202.18887266 4259923.79254382 164 -591204.18467038 4259923.79254382 164 -591206.18046812 4259923.79254382 164 -591208.17626584 4259923.79254382 164 -591210.17206358 4259923.79254382 164 -591224.14264769 4259923.79254382 162 -591226.13844541 4259923.79254382 162 -591228.13424315 4259923.79254382 162 -591230.13004087 4259923.79254382 162 -591232.1258386 4259923.79254382 162 -591234.12163634 4259923.79254382 162 -591236.11743406 4259923.79254382 162 -591238.1132318 4259923.79254382 162 -591240.10902952 4259923.79254382 162 -591242.10482726 4259923.79254382 162 -591244.10062498 4259923.79254382 162 -591246.09642271 4259923.79254382 162 -591248.09222045 4259923.79254382 162 -591250.08801817 4259923.79254382 162 -591252.08381591 4259923.79254382 162 -591254.07961363 4259923.79254382 162 -591266.05440002 4259923.79254382 160 -591276.03338866 4259923.79254382 158 -591278.02918639 4259923.79254382 158 -591282.02078185 4259923.79254382 156 -591286.01237731 4259923.79254382 154 -591288.00817505 4259923.79254382 154 -591290.00397277 4259923.79254382 152 -591295.99136596 4259923.79254382 150 -591297.9871637 4259923.79254382 150 -591311.9577478 4259923.79254382 148 -591024.56287469 4259921.79467362 168 -591030.55026788 4259921.79467362 170 -591038.5334588 4259921.79467362 172 -591040.52925652 4259921.79467362 174 -591042.52505426 4259921.79467362 174 -591044.52085198 4259921.79467362 176 -591052.50404291 4259921.79467362 178 -591060.48723383 4259921.79467362 180 -591064.47882929 4259921.79467362 182 -591072.4620202 4259921.79467362 184 -591084.43680659 4259921.79467362 186 -591086.43260431 4259921.79467362 186 -591088.42840205 4259921.79467362 186 -591090.42419977 4259921.79467362 186 -591094.41579523 4259921.79467362 186 -591096.41159297 4259921.79467362 186 -591098.4073907 4259921.79467362 186 -591100.40318842 4259921.79467362 186 -591102.39898616 4259921.79467362 186 -591104.39478388 4259921.79467362 184 -591106.39058162 4259921.79467362 184 -591108.38637934 4259921.79467362 182 -591110.38217708 4259921.79467362 182 -591114.37377254 4259921.79467362 180 -591116.36957027 4259921.79467362 180 -591118.36536799 4259921.79467362 178 -591122.35696345 4259921.79467362 176 -591128.34435665 4259921.79467362 174 -591134.33174984 4259921.79467362 172 -591138.3233453 4259921.79467362 170 -591144.31073848 4259921.79467362 168 -591154.28972713 4259921.79467362 166 -591160.27712033 4259921.79467362 164 -591168.26031124 4259921.79467362 162 -591170.25610898 4259921.79467362 162 -591176.24350216 4259921.79467362 164 -591212.1678613 4259921.79467362 164 -591214.16365903 4259921.79467362 164 -591216.15945677 4259921.79467362 164 -591218.15525449 4259921.79467362 164 -591220.15105223 4259921.79467362 164 -591222.14684995 4259921.79467362 164 -591224.14264769 4259921.79467362 164 -591226.13844541 4259921.79467362 164 -591228.13424315 4259921.79467362 164 -591230.13004087 4259921.79467362 164 -591232.1258386 4259921.79467362 164 -591234.12163634 4259921.79467362 164 -591236.11743406 4259921.79467362 164 -591238.1132318 4259921.79467362 164 -591240.10902952 4259921.79467362 164 -591242.10482726 4259921.79467362 164 -591244.10062498 4259921.79467362 164 -591246.09642271 4259921.79467362 164 -591248.09222045 4259921.79467362 164 -591250.08801817 4259921.79467362 164 -591252.08381591 4259921.79467362 164 -591256.07541137 4259921.79467362 162 -591258.07120909 4259921.79467362 162 -591260.06700683 4259921.79467362 162 -591262.06280455 4259921.79467362 162 -591268.05019774 4259921.79467362 160 -591270.04599548 4259921.79467362 160 -591280.02498412 4259921.79467362 158 -591282.02078185 4259921.79467362 158 -591284.01657959 4259921.79467362 156 -591286.01237731 4259921.79467362 156 -591290.00397277 4259921.79467362 154 -591291.99977051 4259921.79467362 152 -591293.99556823 4259921.79467362 152 -591299.98296142 4259921.79467362 150 -591313.95354553 4259921.79467362 148 -591020.57127923 4259919.7968034 168 -591022.56707695 4259919.7968034 168 -591028.55447015 4259919.7968034 170 -591036.53766106 4259919.7968034 172 -591038.5334588 4259919.7968034 174 -591044.52085198 4259919.7968034 176 -591050.50824518 4259919.7968034 178 -591058.49143609 4259919.7968034 180 -591062.48303156 4259919.7968034 182 -591068.47042474 4259919.7968034 184 -591070.46622248 4259919.7968034 184 -591078.4494134 4259919.7968034 186 -591080.44521113 4259919.7968034 186 -591082.44100886 4259919.7968034 186 -591090.42419977 4259919.7968034 188 -591092.41999751 4259919.7968034 188 -591094.41579523 4259919.7968034 188 -591096.41159297 4259919.7968034 188 -591098.4073907 4259919.7968034 188 -591102.39898616 4259919.7968034 186 -591104.39478388 4259919.7968034 186 -591108.38637934 4259919.7968034 184 -591112.37797481 4259919.7968034 182 -591118.36536799 4259919.7968034 180 -591120.36116573 4259919.7968034 178 -591124.35276119 4259919.7968034 176 -591126.34855891 4259919.7968034 176 -591130.34015438 4259919.7968034 174 -591136.32754756 4259919.7968034 172 -591140.31914302 4259919.7968034 170 -591146.30653622 4259919.7968034 168 -591154.28972713 4259919.7968034 166 -591162.27291805 4259919.7968034 164 -591176.24350216 4259919.7968034 164 -591240.10902952 4259919.7968034 166 -591242.10482726 4259919.7968034 166 -591244.10062498 4259919.7968034 166 -591246.09642271 4259919.7968034 166 -591248.09222045 4259919.7968034 166 -591250.08801817 4259919.7968034 166 -591252.08381591 4259919.7968034 166 -591254.07961363 4259919.7968034 164 -591256.07541137 4259919.7968034 164 -591258.07120909 4259919.7968034 164 -591260.06700683 4259919.7968034 164 -591262.06280455 4259919.7968034 164 -591264.05860228 4259919.7968034 162 -591266.05440002 4259919.7968034 162 -591268.05019774 4259919.7968034 162 -591272.0417932 4259919.7968034 160 -591274.03759094 4259919.7968034 160 -591282.02078185 4259919.7968034 158 -591284.01657959 4259919.7968034 158 -591288.00817505 4259919.7968034 156 -591291.99977051 4259919.7968034 154 -591293.99556823 4259919.7968034 154 -591295.99136596 4259919.7968034 152 -591299.98296142 4259919.7968034 150 -591301.97875916 4259919.7968034 150 -591315.94934327 4259919.7968034 148 -591020.57127923 4259917.79893319 168 -591026.55867241 4259917.79893319 170 -591034.54186334 4259917.79893319 172 -591036.53766106 4259917.79893319 174 -591042.52505426 4259917.79893319 176 -591048.51244745 4259917.79893319 178 -591056.49563837 4259917.79893319 180 -591060.48723383 4259917.79893319 182 -591068.47042474 4259917.79893319 184 -591074.45781794 4259917.79893319 186 -591076.45361566 4259917.79893319 186 -591080.44521113 4259917.79893319 188 -591082.44100886 4259917.79893319 188 -591084.43680659 4259917.79893319 188 -591086.43260431 4259917.79893319 188 -591088.42840205 4259917.79893319 188 -591100.40318842 4259917.79893319 188 -591102.39898616 4259917.79893319 188 -591106.39058162 4259917.79893319 186 -591108.38637934 4259917.79893319 186 -591110.38217708 4259917.79893319 184 -591112.37797481 4259917.79893319 184 -591114.37377254 4259917.79893319 182 -591120.36116573 4259917.79893319 180 -591122.35696345 4259917.79893319 178 -591128.34435665 4259917.79893319 176 -591132.33595211 4259917.79893319 174 -591138.3233453 4259917.79893319 172 -591140.31914302 4259917.79893319 170 -591148.30233395 4259917.79893319 168 -591156.28552487 4259917.79893319 166 -591164.26871579 4259917.79893319 164 -591166.26451352 4259917.79893319 164 -591176.24350216 4259917.79893319 164 -591184.22669309 4259917.79893319 166 -591186.22249081 4259917.79893319 166 -591188.21828855 4259917.79893319 166 -591190.21408627 4259917.79893319 166 -591192.20988401 4259917.79893319 166 -591194.20568173 4259917.79893319 166 -591196.20147947 4259917.79893319 166 -591198.1972772 4259917.79893319 166 -591200.19307492 4259917.79893319 166 -591202.18887266 4259917.79893319 166 -591204.18467038 4259917.79893319 166 -591206.18046812 4259917.79893319 166 -591208.17626584 4259917.79893319 166 -591226.13844541 4259917.79893319 166 -591228.13424315 4259917.79893319 166 -591230.13004087 4259917.79893319 166 -591232.1258386 4259917.79893319 166 -591234.12163634 4259917.79893319 166 -591236.11743406 4259917.79893319 166 -591238.1132318 4259917.79893319 166 -591252.08381591 4259917.79893319 166 -591254.07961363 4259917.79893319 166 -591256.07541137 4259917.79893319 166 -591264.05860228 4259917.79893319 164 -591266.05440002 4259917.79893319 164 -591270.04599548 4259917.79893319 162 -591276.03338866 4259917.79893319 160 -591278.02918639 4259917.79893319 160 -591286.01237731 4259917.79893319 158 -591290.00397277 4259917.79893319 156 -591295.99136596 4259917.79893319 154 -591297.9871637 4259917.79893319 152 -591303.97455688 4259917.79893319 150 -591317.94514099 4259917.79893319 148 -591024.56287469 4259915.80106298 170 -591032.54606561 4259915.80106298 172 -591034.54186334 4259915.80106298 174 -591040.52925652 4259915.80106298 176 -591046.51664972 4259915.80106298 178 -591054.49984063 4259915.80106298 180 -591058.49143609 4259915.80106298 182 -591066.47462702 4259915.80106298 184 -591072.4620202 4259915.80106298 186 -591074.45781794 4259915.80106298 186 -591078.4494134 4259915.80106298 188 -591088.42840205 4259915.80106298 190 -591090.42419977 4259915.80106298 190 -591092.41999751 4259915.80106298 190 -591094.41579523 4259915.80106298 190 -591096.41159297 4259915.80106298 190 -591104.39478388 4259915.80106298 188 -591106.39058162 4259915.80106298 188 -591110.38217708 4259915.80106298 186 -591114.37377254 4259915.80106298 184 -591116.36957027 4259915.80106298 182 -591122.35696345 4259915.80106298 180 -591124.35276119 4259915.80106298 178 -591130.34015438 4259915.80106298 176 -591134.33174984 4259915.80106298 174 -591140.31914302 4259915.80106298 172 -591142.31494076 4259915.80106298 170 -591150.29813167 4259915.80106298 168 -591158.28132259 4259915.80106298 166 -591168.26031124 4259915.80106298 164 -591170.25610898 4259915.80106298 164 -591172.2519067 4259915.80106298 164 -591176.24350216 4259915.80106298 164 -591182.23089535 4259915.80106298 166 -591184.22669309 4259915.80106298 166 -591210.17206358 4259915.80106298 166 -591212.1678613 4259915.80106298 166 -591214.16365903 4259915.80106298 166 -591216.15945677 4259915.80106298 166 -591218.15525449 4259915.80106298 166 -591220.15105223 4259915.80106298 166 -591222.14684995 4259915.80106298 166 -591224.14264769 4259915.80106298 166 -591230.13004087 4259915.80106298 168 -591232.1258386 4259915.80106298 168 -591234.12163634 4259915.80106298 168 -591236.11743406 4259915.80106298 168 -591238.1132318 4259915.80106298 168 -591240.10902952 4259915.80106298 168 -591242.10482726 4259915.80106298 168 -591244.10062498 4259915.80106298 168 -591246.09642271 4259915.80106298 168 -591248.09222045 4259915.80106298 168 -591258.07120909 4259915.80106298 166 -591260.06700683 4259915.80106298 166 -591262.06280455 4259915.80106298 166 -591268.05019774 4259915.80106298 164 -591270.04599548 4259915.80106298 164 -591272.0417932 4259915.80106298 162 -591274.03759094 4259915.80106298 162 -591280.02498412 4259915.80106298 160 -591288.00817505 4259915.80106298 158 -591291.99977051 4259915.80106298 156 -591297.9871637 4259915.80106298 154 -591299.98296142 4259915.80106298 152 -591305.97035462 4259915.80106298 150 -591319.94093873 4259915.80106298 148 -591321.93673645 4259915.80106298 148 -591024.56287469 4259913.80319277 170 -591030.55026788 4259913.80319277 172 -591032.54606561 4259913.80319277 174 -591038.5334588 4259913.80319277 176 -591046.51664972 4259913.80319277 178 -591052.50404291 4259913.80319277 180 -591056.49563837 4259913.80319277 182 -591064.47882929 4259913.80319277 184 -591070.46622248 4259913.80319277 186 -591076.45361566 4259913.80319277 188 -591086.43260431 4259913.80319277 190 -591098.4073907 4259913.80319277 190 -591100.40318842 4259913.80319277 190 -591102.39898616 4259913.80319277 190 -591104.39478388 4259913.80319277 190 -591108.38637934 4259913.80319277 188 -591112.37797481 4259913.80319277 186 -591116.36957027 4259913.80319277 184 -591118.36536799 4259913.80319277 182 -591122.35696345 4259913.80319277 180 -591126.34855891 4259913.80319277 178 -591132.33595211 4259913.80319277 176 -591136.32754756 4259913.80319277 174 -591140.31914302 4259913.80319277 172 -591144.31073848 4259913.80319277 170 -591152.29392941 4259913.80319277 168 -591160.27712033 4259913.80319277 166 -591162.27291805 4259913.80319277 166 -591174.24770444 4259913.80319277 164 -591176.24350216 4259913.80319277 164 -591180.23509763 4259913.80319277 166 -591224.14264769 4259913.80319277 168 -591226.13844541 4259913.80319277 168 -591228.13424315 4259913.80319277 168 -591230.13004087 4259913.80319277 168 -591250.08801817 4259913.80319277 168 -591252.08381591 4259913.80319277 168 -591254.07961363 4259913.80319277 168 -591264.05860228 4259913.80319277 166 -591266.05440002 4259913.80319277 166 -591272.0417932 4259913.80319277 164 -591276.03338866 4259913.80319277 162 -591278.02918639 4259913.80319277 162 -591282.02078185 4259913.80319277 160 -591290.00397277 4259913.80319277 158 -591293.99556823 4259913.80319277 156 -591299.98296142 4259913.80319277 154 -591301.97875916 4259913.80319277 152 -591307.96615234 4259913.80319277 150 -591022.56707695 4259911.80532257 170 -591028.55447015 4259911.80532257 172 -591030.55026788 4259911.80532257 174 -591032.54606561 4259911.80532257 174 -591036.53766106 4259911.80532257 176 -591044.52085198 4259911.80532257 178 -591050.50824518 4259911.80532257 180 -591054.49984063 4259911.80532257 182 -591062.48303156 4259911.80532257 184 -591068.47042474 4259911.80532257 186 -591074.45781794 4259911.80532257 188 -591084.43680659 4259911.80532257 190 -591106.39058162 4259911.80532257 190 -591108.38637934 4259911.80532257 190 -591110.38217708 4259911.80532257 188 -591114.37377254 4259911.80532257 186 -591118.36536799 4259911.80532257 184 -591120.36116573 4259911.80532257 182 -591124.35276119 4259911.80532257 180 -591128.34435665 4259911.80532257 178 -591134.33174984 4259911.80532257 176 -591138.3233453 4259911.80532257 174 -591142.31494076 4259911.80532257 172 -591146.30653622 4259911.80532257 170 -591152.29392941 4259911.80532257 168 -591164.26871579 4259911.80532257 166 -591178.2392999 4259911.80532257 166 -591214.16365903 4259911.80532257 168 -591216.15945677 4259911.80532257 168 -591218.15525449 4259911.80532257 168 -591220.15105223 4259911.80532257 168 -591222.14684995 4259911.80532257 168 -591224.14264769 4259911.80532257 168 -591240.10902952 4259911.80532257 170 -591242.10482726 4259911.80532257 170 -591244.10062498 4259911.80532257 170 -591246.09642271 4259911.80532257 170 -591248.09222045 4259911.80532257 170 -591250.08801817 4259911.80532257 170 -591256.07541137 4259911.80532257 168 -591258.07120909 4259911.80532257 168 -591260.06700683 4259911.80532257 168 -591268.05019774 4259911.80532257 166 -591274.03759094 4259911.80532257 164 -591276.03338866 4259911.80532257 164 -591280.02498412 4259911.80532257 162 -591282.02078185 4259911.80532257 162 -591284.01657959 4259911.80532257 160 -591291.99977051 4259911.80532257 158 -591295.99136596 4259911.80532257 156 -591301.97875916 4259911.80532257 154 -591303.97455688 4259911.80532257 152 -591305.97035462 4259911.80532257 152 -591307.96615234 4259911.80532257 150 -591309.96195007 4259911.80532257 150 -591020.57127923 4259909.80745235 170 -591026.55867241 4259909.80745235 172 -591030.55026788 4259909.80745235 174 -591034.54186334 4259909.80745235 176 -591042.52505426 4259909.80745235 178 -591048.51244745 4259909.80745235 180 -591054.49984063 4259909.80745235 182 -591060.48723383 4259909.80745235 184 -591068.47042474 4259909.80745235 186 -591072.4620202 4259909.80745235 188 -591082.44100886 4259909.80745235 190 -591098.4073907 4259909.80745235 192 -591100.40318842 4259909.80745235 192 -591110.38217708 4259909.80745235 190 -591112.37797481 4259909.80745235 188 -591116.36957027 4259909.80745235 186 -591118.36536799 4259909.80745235 184 -591120.36116573 4259909.80745235 182 -591126.34855891 4259909.80745235 180 -591130.34015438 4259909.80745235 178 -591134.33174984 4259909.80745235 176 -591136.32754756 4259909.80745235 176 -591138.3233453 4259909.80745235 174 -591142.31494076 4259909.80745235 172 -591146.30653622 4259909.80745235 170 -591154.28972713 4259909.80745235 168 -591166.26451352 4259909.80745235 166 -591178.2392999 4259909.80745235 166 -591188.21828855 4259909.80745235 168 -591190.21408627 4259909.80745235 168 -591192.20988401 4259909.80745235 168 -591194.20568173 4259909.80745235 168 -591196.20147947 4259909.80745235 168 -591198.1972772 4259909.80745235 168 -591200.19307492 4259909.80745235 168 -591202.18887266 4259909.80745235 168 -591204.18467038 4259909.80745235 168 -591206.18046812 4259909.80745235 168 -591208.17626584 4259909.80745235 168 -591210.17206358 4259909.80745235 168 -591212.1678613 4259909.80745235 168 -591226.13844541 4259909.80745235 170 -591228.13424315 4259909.80745235 170 -591230.13004087 4259909.80745235 170 -591232.1258386 4259909.80745235 170 -591234.12163634 4259909.80745235 170 -591236.11743406 4259909.80745235 170 -591238.1132318 4259909.80745235 170 -591240.10902952 4259909.80745235 172 -591242.10482726 4259909.80745235 172 -591244.10062498 4259909.80745235 172 -591246.09642271 4259909.80745235 172 -591248.09222045 4259909.80745235 172 -591252.08381591 4259909.80745235 170 -591254.07961363 4259909.80745235 170 -591256.07541137 4259909.80745235 170 -591262.06280455 4259909.80745235 168 -591264.05860228 4259909.80745235 168 -591270.04599548 4259909.80745235 166 -591272.0417932 4259909.80745235 166 -591278.02918639 4259909.80745235 164 -591284.01657959 4259909.80745235 162 -591286.01237731 4259909.80745235 160 -591293.99556823 4259909.80745235 158 -591297.9871637 4259909.80745235 156 -591303.97455688 4259909.80745235 154 -591307.96615234 4259909.80745235 152 -591311.9577478 4259909.80745235 150 -591024.56287469 4259907.80958214 172 -591028.55447015 4259907.80958214 174 -591034.54186334 4259907.80958214 176 -591040.52925652 4259907.80958214 178 -591048.51244745 4259907.80958214 180 -591052.50404291 4259907.80958214 182 -591058.49143609 4259907.80958214 184 -591066.47462702 4259907.80958214 186 -591072.4620202 4259907.80958214 188 -591080.44521113 4259907.80958214 190 -591094.41579523 4259907.80958214 192 -591096.41159297 4259907.80958214 192 -591102.39898616 4259907.80958214 192 -591110.38217708 4259907.80958214 190 -591114.37377254 4259907.80958214 188 -591116.36957027 4259907.80958214 186 -591120.36116573 4259907.80958214 184 -591122.35696345 4259907.80958214 182 -591126.34855891 4259907.80958214 180 -591132.33595211 4259907.80958214 178 -591136.32754756 4259907.80958214 176 -591140.31914302 4259907.80958214 174 -591144.31073848 4259907.80958214 172 -591148.30233395 4259907.80958214 170 -591156.28552487 4259907.80958214 168 -591168.26031124 4259907.80958214 166 -591176.24350216 4259907.80958214 166 -591184.22669309 4259907.80958214 168 -591186.22249081 4259907.80958214 168 -591220.15105223 4259907.80958214 170 -591222.14684995 4259907.80958214 170 -591224.14264769 4259907.80958214 170 -591228.13424315 4259907.80958214 172 -591230.13004087 4259907.80958214 172 -591232.1258386 4259907.80958214 172 -591234.12163634 4259907.80958214 172 -591236.11743406 4259907.80958214 172 -591238.1132318 4259907.80958214 172 -591250.08801817 4259907.80958214 172 -591252.08381591 4259907.80958214 172 -591254.07961363 4259907.80958214 172 -591258.07120909 4259907.80958214 170 -591260.06700683 4259907.80958214 170 -591262.06280455 4259907.80958214 170 -591266.05440002 4259907.80958214 168 -591268.05019774 4259907.80958214 168 -591274.03759094 4259907.80958214 166 -591276.03338866 4259907.80958214 166 -591280.02498412 4259907.80958214 164 -591286.01237731 4259907.80958214 162 -591288.00817505 4259907.80958214 160 -591295.99136596 4259907.80958214 158 -591299.98296142 4259907.80958214 156 -591305.97035462 4259907.80958214 154 -591309.96195007 4259907.80958214 152 -591313.95354553 4259907.80958214 150 -591315.94934327 4259907.80958214 150 -591022.56707695 4259905.81171193 172 -591026.55867241 4259905.81171193 174 -591032.54606561 4259905.81171193 176 -591040.52925652 4259905.81171193 178 -591046.51664972 4259905.81171193 180 -591050.50824518 4259905.81171193 182 -591056.49563837 4259905.81171193 184 -591064.47882929 4259905.81171193 186 -591070.46622248 4259905.81171193 188 -591080.44521113 4259905.81171193 190 -591090.42419977 4259905.81171193 192 -591092.41999751 4259905.81171193 192 -591104.39478388 4259905.81171193 192 -591112.37797481 4259905.81171193 190 -591116.36957027 4259905.81171193 188 -591118.36536799 4259905.81171193 186 -591120.36116573 4259905.81171193 184 -591122.35696345 4259905.81171193 182 -591128.34435665 4259905.81171193 180 -591132.33595211 4259905.81171193 178 -591136.32754756 4259905.81171193 176 -591140.31914302 4259905.81171193 174 -591144.31073848 4259905.81171193 172 -591150.29813167 4259905.81171193 170 -591156.28552487 4259905.81171193 168 -591170.25610898 4259905.81171193 166 -591172.2519067 4259905.81171193 166 -591174.24770444 4259905.81171193 166 -591180.23509763 4259905.81171193 168 -591182.23089535 4259905.81171193 168 -591212.1678613 4259905.81171193 170 -591214.16365903 4259905.81171193 170 -591216.15945677 4259905.81171193 170 -591218.15525449 4259905.81171193 170 -591220.15105223 4259905.81171193 172 -591222.14684995 4259905.81171193 172 -591224.14264769 4259905.81171193 172 -591226.13844541 4259905.81171193 172 -591236.11743406 4259905.81171193 174 -591238.1132318 4259905.81171193 174 -591240.10902952 4259905.81171193 174 -591242.10482726 4259905.81171193 174 -591244.10062498 4259905.81171193 174 -591246.09642271 4259905.81171193 174 -591256.07541137 4259905.81171193 172 -591258.07120909 4259905.81171193 172 -591260.06700683 4259905.81171193 172 -591264.05860228 4259905.81171193 170 -591266.05440002 4259905.81171193 170 -591270.04599548 4259905.81171193 168 -591272.0417932 4259905.81171193 168 -591278.02918639 4259905.81171193 166 -591282.02078185 4259905.81171193 164 -591284.01657959 4259905.81171193 164 -591288.00817505 4259905.81171193 162 -591290.00397277 4259905.81171193 160 -591297.9871637 4259905.81171193 158 -591301.97875916 4259905.81171193 156 -591307.96615234 4259905.81171193 154 -591311.9577478 4259905.81171193 152 -591313.95354553 4259905.81171193 152 -591317.94514099 4259905.81171193 150 -591020.57127923 4259903.81384172 172 -591024.56287469 4259903.81384172 174 -591030.55026788 4259903.81384172 176 -591038.5334588 4259903.81384172 178 -591046.51664972 4259903.81384172 180 -591050.50824518 4259903.81384172 182 -591056.49563837 4259903.81384172 184 -591064.47882929 4259903.81384172 186 -591070.46622248 4259903.81384172 188 -591078.4494134 4259903.81384172 190 -591088.42840205 4259903.81384172 192 -591096.41159297 4259903.81384172 194 -591098.4073907 4259903.81384172 194 -591106.39058162 4259903.81384172 192 -591112.37797481 4259903.81384172 190 -591116.36957027 4259903.81384172 188 -591118.36536799 4259903.81384172 186 -591120.36116573 4259903.81384172 184 -591124.35276119 4259903.81384172 182 -591128.34435665 4259903.81384172 180 -591132.33595211 4259903.81384172 178 -591138.3233453 4259903.81384172 176 -591140.31914302 4259903.81384172 174 -591146.30653622 4259903.81384172 172 -591150.29813167 4259903.81384172 170 -591158.28132259 4259903.81384172 168 -591178.2392999 4259903.81384172 168 -591206.18046812 4259903.81384172 170 -591208.17626584 4259903.81384172 170 -591210.17206358 4259903.81384172 170 -591212.1678613 4259903.81384172 172 -591214.16365903 4259903.81384172 172 -591216.15945677 4259903.81384172 172 -591218.15525449 4259903.81384172 172 -591226.13844541 4259903.81384172 174 -591228.13424315 4259903.81384172 174 -591230.13004087 4259903.81384172 174 -591232.1258386 4259903.81384172 174 -591234.12163634 4259903.81384172 174 -591248.09222045 4259903.81384172 174 -591250.08801817 4259903.81384172 174 -591252.08381591 4259903.81384172 174 -591254.07961363 4259903.81384172 174 -591262.06280455 4259903.81384172 172 -591264.05860228 4259903.81384172 172 -591268.05019774 4259903.81384172 170 -591270.04599548 4259903.81384172 170 -591274.03759094 4259903.81384172 168 -591276.03338866 4259903.81384172 168 -591280.02498412 4259903.81384172 166 -591286.01237731 4259903.81384172 164 -591290.00397277 4259903.81384172 162 -591291.99977051 4259903.81384172 160 -591293.99556823 4259903.81384172 160 -591297.9871637 4259903.81384172 158 -591303.97455688 4259903.81384172 156 -591309.96195007 4259903.81384172 154 -591315.94934327 4259903.81384172 152 -591319.94093873 4259903.81384172 150 -591022.56707695 4259901.81597152 174 -591028.55447015 4259901.81597152 176 -591036.53766106 4259901.81597152 178 -591044.52085198 4259901.81597152 180 -591048.51244745 4259901.81597152 182 -591054.49984063 4259901.81597152 184 -591062.48303156 4259901.81597152 186 -591070.46622248 4259901.81597152 188 -591078.4494134 4259901.81597152 190 -591086.43260431 4259901.81597152 192 -591092.41999751 4259901.81597152 194 -591094.41579523 4259901.81597152 194 -591100.40318842 4259901.81597152 194 -591106.39058162 4259901.81597152 192 -591112.37797481 4259901.81597152 190 -591116.36957027 4259901.81597152 188 -591118.36536799 4259901.81597152 186 -591120.36116573 4259901.81597152 184 -591124.35276119 4259901.81597152 182 -591128.34435665 4259901.81597152 180 -591134.33174984 4259901.81597152 178 -591138.3233453 4259901.81597152 176 -591142.31494076 4259901.81597152 174 -591146.30653622 4259901.81597152 172 -591152.29392941 4259901.81597152 170 -591158.28132259 4259901.81597152 168 -591160.27712033 4259901.81597152 168 -591176.24350216 4259901.81597152 168 -591194.20568173 4259901.81597152 170 -591196.20147947 4259901.81597152 170 -591198.1972772 4259901.81597152 170 -591200.19307492 4259901.81597152 170 -591202.18887266 4259901.81597152 170 -591204.18467038 4259901.81597152 170 -591206.18046812 4259901.81597152 172 -591208.17626584 4259901.81597152 172 -591210.17206358 4259901.81597152 172 -591218.15525449 4259901.81597152 174 -591220.15105223 4259901.81597152 174 -591222.14684995 4259901.81597152 174 -591224.14264769 4259901.81597152 174 -591256.07541137 4259901.81597152 174 -591258.07120909 4259901.81597152 174 -591260.06700683 4259901.81597152 174 -591266.05440002 4259901.81597152 172 -591268.05019774 4259901.81597152 172 -591272.0417932 4259901.81597152 170 -591278.02918639 4259901.81597152 168 -591282.02078185 4259901.81597152 166 -591284.01657959 4259901.81597152 166 -591288.00817505 4259901.81597152 164 -591291.99977051 4259901.81597152 162 -591295.99136596 4259901.81597152 160 -591299.98296142 4259901.81597152 158 -591305.97035462 4259901.81597152 156 -591311.9577478 4259901.81597152 154 -591317.94514099 4259901.81597152 152 -591321.93673645 4259901.81597152 150 -591020.57127923 4259899.8181013 174 -591028.55447015 4259899.8181013 176 -591036.53766106 4259899.8181013 178 -591044.52085198 4259899.8181013 180 -591046.51664972 4259899.8181013 182 -591052.50404291 4259899.8181013 184 -591062.48303156 4259899.8181013 186 -591068.47042474 4259899.8181013 188 -591076.45361566 4259899.8181013 190 -591084.43680659 4259899.8181013 192 -591090.42419977 4259899.8181013 194 -591102.39898616 4259899.8181013 194 -591106.39058162 4259899.8181013 192 -591112.37797481 4259899.8181013 190 -591116.36957027 4259899.8181013 188 -591118.36536799 4259899.8181013 186 -591120.36116573 4259899.8181013 184 -591124.35276119 4259899.8181013 182 -591130.34015438 4259899.8181013 180 -591134.33174984 4259899.8181013 178 -591140.31914302 4259899.8181013 176 -591142.31494076 4259899.8181013 174 -591148.30233395 4259899.8181013 172 -591152.29392941 4259899.8181013 170 -591160.27712033 4259899.8181013 168 -591174.24770444 4259899.8181013 168 -591188.21828855 4259899.8181013 170 -591190.21408627 4259899.8181013 170 -591192.20988401 4259899.8181013 170 -591200.19307492 4259899.8181013 172 -591202.18887266 4259899.8181013 172 -591204.18467038 4259899.8181013 172 -591212.1678613 4259899.8181013 174 -591214.16365903 4259899.8181013 174 -591216.15945677 4259899.8181013 174 -591234.12163634 4259899.8181013 176 -591236.11743406 4259899.8181013 176 -591238.1132318 4259899.8181013 176 -591240.10902952 4259899.8181013 176 -591242.10482726 4259899.8181013 176 -591244.10062498 4259899.8181013 176 -591246.09642271 4259899.8181013 176 -591248.09222045 4259899.8181013 176 -591250.08801817 4259899.8181013 176 -591252.08381591 4259899.8181013 176 -591254.07961363 4259899.8181013 176 -591262.06280455 4259899.8181013 174 -591270.04599548 4259899.8181013 172 -591274.03759094 4259899.8181013 170 -591276.03338866 4259899.8181013 170 -591280.02498412 4259899.8181013 168 -591282.02078185 4259899.8181013 168 -591286.01237731 4259899.8181013 166 -591290.00397277 4259899.8181013 164 -591293.99556823 4259899.8181013 162 -591297.9871637 4259899.8181013 160 -591301.97875916 4259899.8181013 158 -591303.97455688 4259899.8181013 158 -591307.96615234 4259899.8181013 156 -591313.95354553 4259899.8181013 154 -591319.94093873 4259899.8181013 152 -591321.93673645 4259899.8181013 150 -591026.55867241 4259897.82023109 176 -591034.54186334 4259897.82023109 178 -591042.52505426 4259897.82023109 180 -591046.51664972 4259897.82023109 182 -591050.50824518 4259897.82023109 184 -591060.48723383 4259897.82023109 186 -591068.47042474 4259897.82023109 188 -591076.45361566 4259897.82023109 190 -591084.43680659 4259897.82023109 192 -591090.42419977 4259897.82023109 194 -591102.39898616 4259897.82023109 194 -591106.39058162 4259897.82023109 192 -591112.37797481 4259897.82023109 190 -591116.36957027 4259897.82023109 188 -591118.36536799 4259897.82023109 186 -591122.35696345 4259897.82023109 184 -591124.35276119 4259897.82023109 182 -591130.34015438 4259897.82023109 180 -591134.33174984 4259897.82023109 178 -591140.31914302 4259897.82023109 176 -591144.31073848 4259897.82023109 174 -591150.29813167 4259897.82023109 172 -591154.28972713 4259897.82023109 170 -591160.27712033 4259897.82023109 168 -591172.2519067 4259897.82023109 168 -591184.22669309 4259897.82023109 170 -591186.22249081 4259897.82023109 170 -591192.20988401 4259897.82023109 172 -591194.20568173 4259897.82023109 172 -591196.20147947 4259897.82023109 172 -591198.1972772 4259897.82023109 172 -591200.19307492 4259897.82023109 172 -591202.18887266 4259897.82023109 174 -591204.18467038 4259897.82023109 174 -591206.18046812 4259897.82023109 174 -591208.17626584 4259897.82023109 174 -591210.17206358 4259897.82023109 174 -591222.14684995 4259897.82023109 176 -591224.14264769 4259897.82023109 176 -591226.13844541 4259897.82023109 176 -591228.13424315 4259897.82023109 176 -591230.13004087 4259897.82023109 176 -591232.1258386 4259897.82023109 176 -591234.12163634 4259897.82023109 176 -591244.10062498 4259897.82023109 178 -591246.09642271 4259897.82023109 178 -591248.09222045 4259897.82023109 178 -591256.07541137 4259897.82023109 176 -591258.07120909 4259897.82023109 176 -591260.06700683 4259897.82023109 176 -591264.05860228 4259897.82023109 174 -591266.05440002 4259897.82023109 174 -591272.0417932 4259897.82023109 172 -591274.03759094 4259897.82023109 172 -591278.02918639 4259897.82023109 170 -591280.02498412 4259897.82023109 170 -591284.01657959 4259897.82023109 168 -591288.00817505 4259897.82023109 166 -591291.99977051 4259897.82023109 164 -591295.99136596 4259897.82023109 162 -591299.98296142 4259897.82023109 160 -591301.97875916 4259897.82023109 160 -591303.97455688 4259897.82023109 158 -591305.97035462 4259897.82023109 158 -591309.96195007 4259897.82023109 156 -591315.94934327 4259897.82023109 154 -591319.94093873 4259897.82023109 152 -591022.56707695 4259895.82236088 176 -591024.56287469 4259895.82236088 176 -591032.54606561 4259895.82236088 178 -591040.52925652 4259895.82236088 180 -591044.52085198 4259895.82236088 182 -591050.50824518 4259895.82236088 184 -591058.49143609 4259895.82236088 186 -591066.47462702 4259895.82236088 188 -591074.45781794 4259895.82236088 190 -591082.44100886 4259895.82236088 192 -591088.42840205 4259895.82236088 194 -591104.39478388 4259895.82236088 194 -591106.39058162 4259895.82236088 192 -591112.37797481 4259895.82236088 190 -591116.36957027 4259895.82236088 188 -591120.36116573 4259895.82236088 186 -591122.35696345 4259895.82236088 184 -591126.34855891 4259895.82236088 182 -591132.33595211 4259895.82236088 180 -591136.32754756 4259895.82236088 178 -591142.31494076 4259895.82236088 176 -591144.31073848 4259895.82236088 174 -591150.29813167 4259895.82236088 172 -591154.28972713 4259895.82236088 170 -591160.27712033 4259895.82236088 168 -591170.25610898 4259895.82236088 168 -591182.23089535 4259895.82236088 170 -591188.21828855 4259895.82236088 172 -591190.21408627 4259895.82236088 172 -591196.20147947 4259895.82236088 174 -591198.1972772 4259895.82236088 174 -591200.19307492 4259895.82236088 174 -591212.1678613 4259895.82236088 176 -591214.16365903 4259895.82236088 176 -591216.15945677 4259895.82236088 176 -591218.15525449 4259895.82236088 176 -591220.15105223 4259895.82236088 176 -591238.1132318 4259895.82236088 178 -591240.10902952 4259895.82236088 178 -591242.10482726 4259895.82236088 178 -591250.08801817 4259895.82236088 178 -591252.08381591 4259895.82236088 178 -591254.07961363 4259895.82236088 178 -591256.07541137 4259895.82236088 178 -591262.06280455 4259895.82236088 176 -591264.05860228 4259895.82236088 176 -591268.05019774 4259895.82236088 174 -591270.04599548 4259895.82236088 174 -591276.03338866 4259895.82236088 172 -591282.02078185 4259895.82236088 170 -591286.01237731 4259895.82236088 168 -591288.00817505 4259895.82236088 168 -591290.00397277 4259895.82236088 166 -591293.99556823 4259895.82236088 164 -591295.99136596 4259895.82236088 164 -591297.9871637 4259895.82236088 162 -591303.97455688 4259895.82236088 160 -591307.96615234 4259895.82236088 158 -591311.9577478 4259895.82236088 156 -591317.94514099 4259895.82236088 154 -591321.93673645 4259895.82236088 152 -591020.57127923 4259893.82449067 176 -591030.55026788 4259893.82449067 178 -591040.52925652 4259893.82449067 180 -591042.52505426 4259893.82449067 182 -591048.51244745 4259893.82449067 184 -591056.49563837 4259893.82449067 186 -591058.49143609 4259893.82449067 186 -591066.47462702 4259893.82449067 188 -591074.45781794 4259893.82449067 190 -591082.44100886 4259893.82449067 192 -591088.42840205 4259893.82449067 194 -591104.39478388 4259893.82449067 194 -591108.38637934 4259893.82449067 192 -591112.37797481 4259893.82449067 190 -591116.36957027 4259893.82449067 188 -591120.36116573 4259893.82449067 186 -591122.35696345 4259893.82449067 184 -591126.34855891 4259893.82449067 182 -591132.33595211 4259893.82449067 180 -591136.32754756 4259893.82449067 178 -591142.31494076 4259893.82449067 176 -591144.31073848 4259893.82449067 174 -591150.29813167 4259893.82449067 172 -591156.28552487 4259893.82449067 170 -591162.27291805 4259893.82449067 168 -591168.26031124 4259893.82449067 168 -591178.2392999 4259893.82449067 170 -591180.23509763 4259893.82449067 170 -591184.22669309 4259893.82449067 172 -591186.22249081 4259893.82449067 172 -591190.21408627 4259893.82449067 174 -591192.20988401 4259893.82449067 174 -591194.20568173 4259893.82449067 174 -591200.19307492 4259893.82449067 176 -591202.18887266 4259893.82449067 176 -591204.18467038 4259893.82449067 176 -591206.18046812 4259893.82449067 176 -591208.17626584 4259893.82449067 176 -591210.17206358 4259893.82449067 176 -591232.1258386 4259893.82449067 178 -591234.12163634 4259893.82449067 178 -591236.11743406 4259893.82449067 178 -591258.07120909 4259893.82449067 178 -591260.06700683 4259893.82449067 178 -591262.06280455 4259893.82449067 178 -591266.05440002 4259893.82449067 176 -591272.0417932 4259893.82449067 174 -591278.02918639 4259893.82449067 172 -591284.01657959 4259893.82449067 170 -591286.01237731 4259893.82449067 170 -591290.00397277 4259893.82449067 168 -591291.99977051 4259893.82449067 166 -591295.99136596 4259893.82449067 164 -591297.9871637 4259893.82449067 164 -591299.98296142 4259893.82449067 162 -591301.97875916 4259893.82449067 162 -591305.97035462 4259893.82449067 160 -591307.96615234 4259893.82449067 160 -591309.96195007 4259893.82449067 158 -591313.95354553 4259893.82449067 156 -591319.94093873 4259893.82449067 154 -591028.55447015 4259891.82662047 178 -591038.5334588 4259891.82662047 180 -591042.52505426 4259891.82662047 182 -591046.51664972 4259891.82662047 184 -591054.49984063 4259891.82662047 186 -591056.49563837 4259891.82662047 186 -591064.47882929 4259891.82662047 188 -591072.4620202 4259891.82662047 190 -591074.45781794 4259891.82662047 190 -591080.44521113 4259891.82662047 192 -591086.43260431 4259891.82662047 194 -591104.39478388 4259891.82662047 194 -591108.38637934 4259891.82662047 192 -591112.37797481 4259891.82662047 190 -591116.36957027 4259891.82662047 188 -591120.36116573 4259891.82662047 186 -591122.35696345 4259891.82662047 184 -591126.34855891 4259891.82662047 182 -591132.33595211 4259891.82662047 180 -591136.32754756 4259891.82662047 178 -591144.31073848 4259891.82662047 176 -591146.30653622 4259891.82662047 174 -591152.29392941 4259891.82662047 172 -591156.28552487 4259891.82662047 170 -591162.27291805 4259891.82662047 168 -591166.26451352 4259891.82662047 168 -591176.24350216 4259891.82662047 170 -591182.23089535 4259891.82662047 172 -591186.22249081 4259891.82662047 174 -591188.21828855 4259891.82662047 174 -591192.20988401 4259891.82662047 176 -591194.20568173 4259891.82662047 176 -591196.20147947 4259891.82662047 176 -591198.1972772 4259891.82662047 176 -591200.19307492 4259891.82662047 176 -591222.14684995 4259891.82662047 178 -591224.14264769 4259891.82662047 178 -591226.13844541 4259891.82662047 178 -591228.13424315 4259891.82662047 178 -591230.13004087 4259891.82662047 178 -591238.1132318 4259891.82662047 180 -591240.10902952 4259891.82662047 180 -591242.10482726 4259891.82662047 180 -591244.10062498 4259891.82662047 180 -591246.09642271 4259891.82662047 180 -591248.09222045 4259891.82662047 180 -591250.08801817 4259891.82662047 180 -591252.08381591 4259891.82662047 180 -591254.07961363 4259891.82662047 180 -591256.07541137 4259891.82662047 180 -591262.06280455 4259891.82662047 178 -591264.05860228 4259891.82662047 178 -591268.05019774 4259891.82662047 176 -591270.04599548 4259891.82662047 176 -591274.03759094 4259891.82662047 174 -591280.02498412 4259891.82662047 172 -591282.02078185 4259891.82662047 172 -591288.00817505 4259891.82662047 170 -591291.99977051 4259891.82662047 168 -591293.99556823 4259891.82662047 166 -591295.99136596 4259891.82662047 166 -591299.98296142 4259891.82662047 164 -591303.97455688 4259891.82662047 162 -591309.96195007 4259891.82662047 160 -591311.9577478 4259891.82662047 160 -591313.95354553 4259891.82662047 158 -591315.94934327 4259891.82662047 156 -591321.93673645 4259891.82662047 154 -591026.55867241 4259889.82875025 178 -591028.55447015 4259889.82875025 178 -591038.5334588 4259889.82875025 180 -591040.52925652 4259889.82875025 182 -591044.52085198 4259889.82875025 184 -591054.49984063 4259889.82875025 186 -591064.47882929 4259889.82875025 188 -591072.4620202 4259889.82875025 190 -591080.44521113 4259889.82875025 192 -591086.43260431 4259889.82875025 194 -591096.41159297 4259889.82875025 195 -591104.39478388 4259889.82875025 194 -591108.38637934 4259889.82875025 192 -591112.37797481 4259889.82875025 190 -591116.36957027 4259889.82875025 188 -591120.36116573 4259889.82875025 186 -591124.35276119 4259889.82875025 184 -591128.34435665 4259889.82875025 182 -591132.33595211 4259889.82875025 180 -591138.3233453 4259889.82875025 178 -591144.31073848 4259889.82875025 176 -591146.30653622 4259889.82875025 174 -591152.29392941 4259889.82875025 172 -591156.28552487 4259889.82875025 170 -591164.26871579 4259889.82875025 168 -591174.24770444 4259889.82875025 170 -591180.23509763 4259889.82875025 172 -591182.23089535 4259889.82875025 174 -591184.22669309 4259889.82875025 174 -591186.22249081 4259889.82875025 176 -591188.21828855 4259889.82875025 176 -591190.21408627 4259889.82875025 176 -591202.18887266 4259889.82875025 178 -591204.18467038 4259889.82875025 178 -591206.18046812 4259889.82875025 178 -591208.17626584 4259889.82875025 178 -591210.17206358 4259889.82875025 178 -591212.1678613 4259889.82875025 178 -591214.16365903 4259889.82875025 178 -591216.15945677 4259889.82875025 178 -591218.15525449 4259889.82875025 178 -591220.15105223 4259889.82875025 178 -591222.14684995 4259889.82875025 178 -591230.13004087 4259889.82875025 180 -591232.1258386 4259889.82875025 180 -591234.12163634 4259889.82875025 180 -591236.11743406 4259889.82875025 180 -591240.10902952 4259889.82875025 182 -591242.10482726 4259889.82875025 182 -591244.10062498 4259889.82875025 182 -591246.09642271 4259889.82875025 182 -591248.09222045 4259889.82875025 182 -591258.07120909 4259889.82875025 180 -591260.06700683 4259889.82875025 180 -591262.06280455 4259889.82875025 180 -591266.05440002 4259889.82875025 178 -591272.0417932 4259889.82875025 176 -591276.03338866 4259889.82875025 174 -591278.02918639 4259889.82875025 174 -591284.01657959 4259889.82875025 172 -591290.00397277 4259889.82875025 170 -591293.99556823 4259889.82875025 168 -591297.9871637 4259889.82875025 166 -591301.97875916 4259889.82875025 164 -591303.97455688 4259889.82875025 164 -591305.97035462 4259889.82875025 162 -591313.95354553 4259889.82875025 160 -591315.94934327 4259889.82875025 158 -591317.94514099 4259889.82875025 156 -591022.56707695 4259887.83088004 178 -591024.56287469 4259887.83088004 178 -591034.54186334 4259887.83088004 180 -591036.53766106 4259887.83088004 180 -591038.5334588 4259887.83088004 182 -591042.52505426 4259887.83088004 184 -591052.50404291 4259887.83088004 186 -591062.48303156 4259887.83088004 188 -591070.46622248 4259887.83088004 190 -591078.4494134 4259887.83088004 192 -591084.43680659 4259887.83088004 194 -591092.41999751 4259887.83088004 195 -591094.41579523 4259887.83088004 195 -591098.4073907 4259887.83088004 195 -591100.40318842 4259887.83088004 195 -591104.39478388 4259887.83088004 194 -591108.38637934 4259887.83088004 192 -591112.37797481 4259887.83088004 190 -591116.36957027 4259887.83088004 188 -591120.36116573 4259887.83088004 186 -591124.35276119 4259887.83088004 184 -591128.34435665 4259887.83088004 182 -591134.33174984 4259887.83088004 180 -591138.3233453 4259887.83088004 178 -591144.31073848 4259887.83088004 176 -591148.30233395 4259887.83088004 174 -591154.28972713 4259887.83088004 172 -591158.28132259 4259887.83088004 170 -591172.2519067 4259887.83088004 170 -591178.2392999 4259887.83088004 172 -591180.23509763 4259887.83088004 174 -591184.22669309 4259887.83088004 176 -591186.22249081 4259887.83088004 176 -591192.20988401 4259887.83088004 178 -591194.20568173 4259887.83088004 178 -591196.20147947 4259887.83088004 178 -591198.1972772 4259887.83088004 178 -591200.19307492 4259887.83088004 178 -591202.18887266 4259887.83088004 178 -591224.14264769 4259887.83088004 180 -591226.13844541 4259887.83088004 180 -591228.13424315 4259887.83088004 180 -591230.13004087 4259887.83088004 182 -591232.1258386 4259887.83088004 182 -591234.12163634 4259887.83088004 182 -591236.11743406 4259887.83088004 182 -591238.1132318 4259887.83088004 182 -591250.08801817 4259887.83088004 182 -591252.08381591 4259887.83088004 182 -591254.07961363 4259887.83088004 182 -591264.05860228 4259887.83088004 180 -591268.05019774 4259887.83088004 178 -591274.03759094 4259887.83088004 176 -591280.02498412 4259887.83088004 174 -591282.02078185 4259887.83088004 174 -591286.01237731 4259887.83088004 172 -591291.99977051 4259887.83088004 170 -591295.99136596 4259887.83088004 168 -591299.98296142 4259887.83088004 166 -591305.97035462 4259887.83088004 164 -591307.96615234 4259887.83088004 162 -591309.96195007 4259887.83088004 162 -591315.94934327 4259887.83088004 160 -591317.94514099 4259887.83088004 158 -591319.94093873 4259887.83088004 156 -591020.57127923 4259885.83300983 178 -591030.55026788 4259885.83300983 180 -591032.54606561 4259885.83300983 180 -591038.5334588 4259885.83300983 182 -591042.52505426 4259885.83300983 184 -591050.50824518 4259885.83300983 186 -591060.48723383 4259885.83300983 188 -591070.46622248 4259885.83300983 190 -591076.45361566 4259885.83300983 192 -591078.4494134 4259885.83300983 192 -591082.44100886 4259885.83300983 194 -591090.42419977 4259885.83300983 195 -591100.40318842 4259885.83300983 195 -591104.39478388 4259885.83300983 194 -591108.38637934 4259885.83300983 192 -591112.37797481 4259885.83300983 190 -591116.36957027 4259885.83300983 188 -591120.36116573 4259885.83300983 186 -591124.35276119 4259885.83300983 184 -591128.34435665 4259885.83300983 182 -591134.33174984 4259885.83300983 180 -591138.3233453 4259885.83300983 178 -591146.30653622 4259885.83300983 176 -591150.29813167 4259885.83300983 174 -591154.28972713 4259885.83300983 172 -591158.28132259 4259885.83300983 170 -591172.2519067 4259885.83300983 170 -591176.24350216 4259885.83300983 172 -591178.2392999 4259885.83300983 174 -591182.23089535 4259885.83300983 176 -591188.21828855 4259885.83300983 178 -591190.21408627 4259885.83300983 178 -591216.15945677 4259885.83300983 180 -591218.15525449 4259885.83300983 180 -591220.15105223 4259885.83300983 180 -591222.14684995 4259885.83300983 180 -591224.14264769 4259885.83300983 182 -591226.13844541 4259885.83300983 182 -591228.13424315 4259885.83300983 182 -591240.10902952 4259885.83300983 184 -591242.10482726 4259885.83300983 184 -591244.10062498 4259885.83300983 184 -591246.09642271 4259885.83300983 184 -591248.09222045 4259885.83300983 184 -591256.07541137 4259885.83300983 182 -591258.07120909 4259885.83300983 182 -591260.06700683 4259885.83300983 182 -591266.05440002 4259885.83300983 180 -591270.04599548 4259885.83300983 178 -591276.03338866 4259885.83300983 176 -591278.02918639 4259885.83300983 176 -591284.01657959 4259885.83300983 174 -591288.00817505 4259885.83300983 172 -591290.00397277 4259885.83300983 172 -591293.99556823 4259885.83300983 170 -591297.9871637 4259885.83300983 168 -591299.98296142 4259885.83300983 168 -591301.97875916 4259885.83300983 166 -591303.97455688 4259885.83300983 166 -591307.96615234 4259885.83300983 164 -591311.9577478 4259885.83300983 162 -591317.94514099 4259885.83300983 160 -591319.94093873 4259885.83300983 158 -591321.93673645 4259885.83300983 158 -591026.55867241 4259883.83513962 180 -591028.55447015 4259883.83513962 180 -591034.54186334 4259883.83513962 182 -591036.53766106 4259883.83513962 182 -591040.52925652 4259883.83513962 184 -591048.51244745 4259883.83513962 186 -591058.49143609 4259883.83513962 188 -591068.47042474 4259883.83513962 190 -591074.45781794 4259883.83513962 192 -591076.45361566 4259883.83513962 192 -591082.44100886 4259883.83513962 194 -591088.42840205 4259883.83513962 195 -591100.40318842 4259883.83513962 195 -591102.39898616 4259883.83513962 195 -591104.39478388 4259883.83513962 194 -591108.38637934 4259883.83513962 192 -591112.37797481 4259883.83513962 190 -591116.36957027 4259883.83513962 188 -591120.36116573 4259883.83513962 186 -591124.35276119 4259883.83513962 184 -591128.34435665 4259883.83513962 182 -591136.32754756 4259883.83513962 180 -591140.31914302 4259883.83513962 178 -591146.30653622 4259883.83513962 176 -591150.29813167 4259883.83513962 174 -591156.28552487 4259883.83513962 172 -591158.28132259 4259883.83513962 170 -591170.25610898 4259883.83513962 170 -591174.24770444 4259883.83513962 172 -591176.24350216 4259883.83513962 174 -591180.23509763 4259883.83513962 176 -591186.22249081 4259883.83513962 178 -591192.20988401 4259883.83513962 180 -591194.20568173 4259883.83513962 180 -591196.20147947 4259883.83513962 180 -591198.1972772 4259883.83513962 180 -591200.19307492 4259883.83513962 180 -591202.18887266 4259883.83513962 180 -591204.18467038 4259883.83513962 180 -591206.18046812 4259883.83513962 180 -591208.17626584 4259883.83513962 180 -591210.17206358 4259883.83513962 180 -591212.1678613 4259883.83513962 180 -591214.16365903 4259883.83513962 180 -591220.15105223 4259883.83513962 182 -591222.14684995 4259883.83513962 182 -591236.11743406 4259883.83513962 184 -591238.1132318 4259883.83513962 184 -591250.08801817 4259883.83513962 184 -591252.08381591 4259883.83513962 184 -591262.06280455 4259883.83513962 182 -591268.05019774 4259883.83513962 180 -591272.0417932 4259883.83513962 178 -591280.02498412 4259883.83513962 176 -591286.01237731 4259883.83513962 174 -591288.00817505 4259883.83513962 174 -591291.99977051 4259883.83513962 172 -591295.99136596 4259883.83513962 170 -591297.9871637 4259883.83513962 170 -591301.97875916 4259883.83513962 168 -591303.97455688 4259883.83513962 168 -591305.97035462 4259883.83513962 166 -591309.96195007 4259883.83513962 164 -591311.9577478 4259883.83513962 164 -591313.95354553 4259883.83513962 162 -591319.94093873 4259883.83513962 160 -591024.56287469 4259881.83726942 180 -591034.54186334 4259881.83726942 182 -591038.5334588 4259881.83726942 184 -591046.51664972 4259881.83726942 186 -591058.49143609 4259881.83726942 188 -591066.47462702 4259881.83726942 190 -591074.45781794 4259881.83726942 192 -591080.44521113 4259881.83726942 194 -591088.42840205 4259881.83726942 195 -591102.39898616 4259881.83726942 195 -591104.39478388 4259881.83726942 194 -591108.38637934 4259881.83726942 192 -591112.37797481 4259881.83726942 190 -591116.36957027 4259881.83726942 188 -591120.36116573 4259881.83726942 186 -591124.35276119 4259881.83726942 184 -591128.34435665 4259881.83726942 182 -591138.3233453 4259881.83726942 180 -591142.31494076 4259881.83726942 178 -591148.30233395 4259881.83726942 176 -591152.29392941 4259881.83726942 174 -591156.28552487 4259881.83726942 172 -591160.27712033 4259881.83726942 170 -591168.26031124 4259881.83726942 170 -591172.2519067 4259881.83726942 172 -591174.24770444 4259881.83726942 174 -591178.2392999 4259881.83726942 176 -591184.22669309 4259881.83726942 178 -591188.21828855 4259881.83726942 180 -591190.21408627 4259881.83726942 180 -591216.15945677 4259881.83726942 182 -591218.15525449 4259881.83726942 182 -591230.13004087 4259881.83726942 184 -591232.1258386 4259881.83726942 184 -591234.12163634 4259881.83726942 184 -591254.07961363 4259881.83726942 184 -591256.07541137 4259881.83726942 184 -591264.05860228 4259881.83726942 182 -591266.05440002 4259881.83726942 182 -591270.04599548 4259881.83726942 180 -591274.03759094 4259881.83726942 178 -591282.02078185 4259881.83726942 176 -591290.00397277 4259881.83726942 174 -591293.99556823 4259881.83726942 172 -591295.99136596 4259881.83726942 172 -591299.98296142 4259881.83726942 170 -591305.97035462 4259881.83726942 168 -591307.96615234 4259881.83726942 166 -591309.96195007 4259881.83726942 166 -591313.95354553 4259881.83726942 164 -591315.94934327 4259881.83726942 164 -591317.94514099 4259881.83726942 162 -591321.93673645 4259881.83726942 160 -591022.56707695 4259879.8393992 180 -591032.54606561 4259879.8393992 182 -591036.53766106 4259879.8393992 184 -591044.52085198 4259879.8393992 186 -591056.49563837 4259879.8393992 188 -591064.47882929 4259879.8393992 190 -591072.4620202 4259879.8393992 192 -591080.44521113 4259879.8393992 194 -591086.43260431 4259879.8393992 195 -591102.39898616 4259879.8393992 195 -591104.39478388 4259879.8393992 194 -591108.38637934 4259879.8393992 192 -591112.37797481 4259879.8393992 190 -591116.36957027 4259879.8393992 188 -591120.36116573 4259879.8393992 186 -591126.34855891 4259879.8393992 184 -591130.34015438 4259879.8393992 182 -591138.3233453 4259879.8393992 180 -591142.31494076 4259879.8393992 178 -591150.29813167 4259879.8393992 176 -591154.28972713 4259879.8393992 174 -591156.28552487 4259879.8393992 172 -591158.28132259 4259879.8393992 172 -591160.27712033 4259879.8393992 170 -591166.26451352 4259879.8393992 170 -591170.25610898 4259879.8393992 172 -591174.24770444 4259879.8393992 174 -591178.2392999 4259879.8393992 176 -591182.23089535 4259879.8393992 178 -591186.22249081 4259879.8393992 180 -591210.17206358 4259879.8393992 182 -591212.1678613 4259879.8393992 182 -591214.16365903 4259879.8393992 182 -591222.14684995 4259879.8393992 184 -591224.14264769 4259879.8393992 184 -591226.13844541 4259879.8393992 184 -591228.13424315 4259879.8393992 184 -591232.1258386 4259879.8393992 186 -591234.12163634 4259879.8393992 186 -591236.11743406 4259879.8393992 186 -591238.1132318 4259879.8393992 186 -591240.10902952 4259879.8393992 186 -591242.10482726 4259879.8393992 186 -591244.10062498 4259879.8393992 186 -591246.09642271 4259879.8393992 186 -591248.09222045 4259879.8393992 186 -591250.08801817 4259879.8393992 186 -591252.08381591 4259879.8393992 186 -591258.07120909 4259879.8393992 184 -591260.06700683 4259879.8393992 184 -591262.06280455 4259879.8393992 184 -591268.05019774 4259879.8393992 182 -591272.0417932 4259879.8393992 180 -591274.03759094 4259879.8393992 180 -591276.03338866 4259879.8393992 178 -591278.02918639 4259879.8393992 178 -591284.01657959 4259879.8393992 176 -591291.99977051 4259879.8393992 174 -591293.99556823 4259879.8393992 174 -591297.9871637 4259879.8393992 172 -591301.97875916 4259879.8393992 170 -591303.97455688 4259879.8393992 170 -591307.96615234 4259879.8393992 168 -591309.96195007 4259879.8393992 168 -591311.9577478 4259879.8393992 166 -591317.94514099 4259879.8393992 164 -591319.94093873 4259879.8393992 162 -591020.57127923 4259877.84152899 180 -591022.56707695 4259877.84152899 180 -591028.55447015 4259877.84152899 182 -591030.55026788 4259877.84152899 182 -591034.54186334 4259877.84152899 184 -591042.52505426 4259877.84152899 186 -591054.49984063 4259877.84152899 188 -591064.47882929 4259877.84152899 190 -591070.46622248 4259877.84152899 192 -591078.4494134 4259877.84152899 194 -591084.43680659 4259877.84152899 195 -591102.39898616 4259877.84152899 195 -591104.39478388 4259877.84152899 194 -591108.38637934 4259877.84152899 192 -591112.37797481 4259877.84152899 190 -591116.36957027 4259877.84152899 188 -591122.35696345 4259877.84152899 186 -591126.34855891 4259877.84152899 184 -591130.34015438 4259877.84152899 182 -591140.31914302 4259877.84152899 180 -591144.31073848 4259877.84152899 178 -591150.29813167 4259877.84152899 176 -591154.28972713 4259877.84152899 174 -591158.28132259 4259877.84152899 172 -591162.27291805 4259877.84152899 170 -591164.26871579 4259877.84152899 170 -591168.26031124 4259877.84152899 172 -591172.2519067 4259877.84152899 174 -591176.24350216 4259877.84152899 176 -591180.23509763 4259877.84152899 178 -591184.22669309 4259877.84152899 180 -591204.18467038 4259877.84152899 182 -591206.18046812 4259877.84152899 182 -591208.17626584 4259877.84152899 182 -591214.16365903 4259877.84152899 184 -591216.15945677 4259877.84152899 184 -591218.15525449 4259877.84152899 184 -591220.15105223 4259877.84152899 184 -591222.14684995 4259877.84152899 186 -591224.14264769 4259877.84152899 186 -591226.13844541 4259877.84152899 186 -591228.13424315 4259877.84152899 186 -591230.13004087 4259877.84152899 186 -591254.07961363 4259877.84152899 186 -591256.07541137 4259877.84152899 186 -591264.05860228 4259877.84152899 184 -591266.05440002 4259877.84152899 184 -591270.04599548 4259877.84152899 182 -591276.03338866 4259877.84152899 180 -591280.02498412 4259877.84152899 178 -591286.01237731 4259877.84152899 176 -591288.00817505 4259877.84152899 176 -591295.99136596 4259877.84152899 174 -591299.98296142 4259877.84152899 172 -591305.97035462 4259877.84152899 170 -591307.96615234 4259877.84152899 170 -591311.9577478 4259877.84152899 168 -591313.95354553 4259877.84152899 166 -591315.94934327 4259877.84152899 166 -591319.94093873 4259877.84152899 164 -591321.93673645 4259877.84152899 164 -591020.57127923 4259875.84365878 180 -591026.55867241 4259875.84365878 182 -591032.54606561 4259875.84365878 184 -591040.52925652 4259875.84365878 186 -591050.50824518 4259875.84365878 188 -591052.50404291 4259875.84365878 188 -591062.48303156 4259875.84365878 190 -591066.47462702 4259875.84365878 192 -591068.47042474 4259875.84365878 192 -591076.45361566 4259875.84365878 194 -591082.44100886 4259875.84365878 195 -591102.39898616 4259875.84365878 195 -591104.39478388 4259875.84365878 194 -591108.38637934 4259875.84365878 192 -591112.37797481 4259875.84365878 190 -591116.36957027 4259875.84365878 188 -591122.35696345 4259875.84365878 186 -591126.34855891 4259875.84365878 184 -591130.34015438 4259875.84365878 182 -591142.31494076 4259875.84365878 180 -591146.30653622 4259875.84365878 178 -591152.29392941 4259875.84365878 176 -591156.28552487 4259875.84365878 174 -591160.27712033 4259875.84365878 172 -591168.26031124 4259875.84365878 172 -591170.25610898 4259875.84365878 174 -591174.24770444 4259875.84365878 176 -591178.2392999 4259875.84365878 178 -591182.23089535 4259875.84365878 180 -591196.20147947 4259875.84365878 182 -591198.1972772 4259875.84365878 182 -591200.19307492 4259875.84365878 182 -591202.18887266 4259875.84365878 182 -591208.17626584 4259875.84365878 184 -591210.17206358 4259875.84365878 184 -591212.1678613 4259875.84365878 184 -591218.15525449 4259875.84365878 186 -591220.15105223 4259875.84365878 186 -591232.1258386 4259875.84365878 188 -591234.12163634 4259875.84365878 188 -591236.11743406 4259875.84365878 188 -591238.1132318 4259875.84365878 188 -591240.10902952 4259875.84365878 188 -591242.10482726 4259875.84365878 188 -591244.10062498 4259875.84365878 188 -591246.09642271 4259875.84365878 188 -591248.09222045 4259875.84365878 188 -591250.08801817 4259875.84365878 188 -591252.08381591 4259875.84365878 188 -591258.07120909 4259875.84365878 186 -591260.06700683 4259875.84365878 186 -591262.06280455 4259875.84365878 186 -591268.05019774 4259875.84365878 184 -591272.0417932 4259875.84365878 182 -591278.02918639 4259875.84365878 180 -591282.02078185 4259875.84365878 178 -591290.00397277 4259875.84365878 176 -591295.99136596 4259875.84365878 174 -591297.9871637 4259875.84365878 174 -591301.97875916 4259875.84365878 172 -591303.97455688 4259875.84365878 172 -591309.96195007 4259875.84365878 170 -591311.9577478 4259875.84365878 170 -591313.95354553 4259875.84365878 168 -591315.94934327 4259875.84365878 168 -591317.94514099 4259875.84365878 166 -591319.94093873 4259875.84365878 166 -591024.56287469 4259873.84578857 182 -591030.55026788 4259873.84578857 184 -591038.5334588 4259873.84578857 186 -591046.51664972 4259873.84578857 188 -591048.51244745 4259873.84578857 188 -591058.49143609 4259873.84578857 190 -591060.48723383 4259873.84578857 190 -591064.47882929 4259873.84578857 192 -591074.45781794 4259873.84578857 194 -591080.44521113 4259873.84578857 195 -591102.39898616 4259873.84578857 195 -591106.39058162 4259873.84578857 194 -591108.38637934 4259873.84578857 192 -591112.37797481 4259873.84578857 190 -591116.36957027 4259873.84578857 188 -591122.35696345 4259873.84578857 186 -591128.34435665 4259873.84578857 184 -591132.33595211 4259873.84578857 182 -591142.31494076 4259873.84578857 180 -591148.30233395 4259873.84578857 178 -591154.28972713 4259873.84578857 176 -591158.28132259 4259873.84578857 174 -591162.27291805 4259873.84578857 172 -591166.26451352 4259873.84578857 172 -591170.25610898 4259873.84578857 174 -591174.24770444 4259873.84578857 176 -591176.24350216 4259873.84578857 178 -591180.23509763 4259873.84578857 180 -591192.20988401 4259873.84578857 182 -591194.20568173 4259873.84578857 182 -591204.18467038 4259873.84578857 184 -591206.18046812 4259873.84578857 184 -591216.15945677 4259873.84578857 186 -591230.13004087 4259873.84578857 188 -591238.1132318 4259873.84578857 190 -591240.10902952 4259873.84578857 190 -591242.10482726 4259873.84578857 190 -591244.10062498 4259873.84578857 190 -591246.09642271 4259873.84578857 190 -591248.09222045 4259873.84578857 190 -591254.07961363 4259873.84578857 188 -591256.07541137 4259873.84578857 188 -591264.05860228 4259873.84578857 186 -591266.05440002 4259873.84578857 186 -591270.04599548 4259873.84578857 184 -591272.0417932 4259873.84578857 184 -591274.03759094 4259873.84578857 182 -591280.02498412 4259873.84578857 180 -591284.01657959 4259873.84578857 178 -591291.99977051 4259873.84578857 176 -591299.98296142 4259873.84578857 174 -591305.97035462 4259873.84578857 172 -591307.96615234 4259873.84578857 172 -591313.95354553 4259873.84578857 170 -591315.94934327 4259873.84578857 170 -591317.94514099 4259873.84578857 168 -591319.94093873 4259873.84578857 168 -591321.93673645 4259873.84578857 166 -591022.56707695 4259871.84791837 182 -591028.55447015 4259871.84791837 184 -591034.54186334 4259871.84791837 186 -591036.53766106 4259871.84791837 186 -591044.52085198 4259871.84791837 188 -591056.49563837 4259871.84791837 190 -591062.48303156 4259871.84791837 192 -591072.4620202 4259871.84791837 194 -591078.4494134 4259871.84791837 195 -591088.42840205 4259871.84791837 196 -591090.42419977 4259871.84791837 196 -591092.41999751 4259871.84791837 196 -591094.41579523 4259871.84791837 196 -591096.41159297 4259871.84791837 196 -591102.39898616 4259871.84791837 195 -591106.39058162 4259871.84791837 194 -591108.38637934 4259871.84791837 192 -591112.37797481 4259871.84791837 190 -591116.36957027 4259871.84791837 188 -591124.35276119 4259871.84791837 186 -591128.34435665 4259871.84791837 184 -591132.33595211 4259871.84791837 182 -591144.31073848 4259871.84791837 180 -591150.29813167 4259871.84791837 178 -591154.28972713 4259871.84791837 176 -591158.28132259 4259871.84791837 174 -591162.27291805 4259871.84791837 172 -591164.26871579 4259871.84791837 172 -591168.26031124 4259871.84791837 174 -591172.2519067 4259871.84791837 176 -591174.24770444 4259871.84791837 178 -591178.2392999 4259871.84791837 180 -591190.21408627 4259871.84791837 182 -591202.18887266 4259871.84791837 184 -591212.1678613 4259871.84791837 186 -591214.16365903 4259871.84791837 186 -591228.13424315 4259871.84791837 188 -591234.12163634 4259871.84791837 190 -591236.11743406 4259871.84791837 190 -591238.1132318 4259871.84791837 190 -591250.08801817 4259871.84791837 190 -591252.08381591 4259871.84791837 190 -591254.07961363 4259871.84791837 190 -591258.07120909 4259871.84791837 188 -591260.06700683 4259871.84791837 188 -591262.06280455 4259871.84791837 188 -591268.05019774 4259871.84791837 186 -591274.03759094 4259871.84791837 184 -591276.03338866 4259871.84791837 182 -591278.02918639 4259871.84791837 182 -591282.02078185 4259871.84791837 180 -591286.01237731 4259871.84791837 178 -591293.99556823 4259871.84791837 176 -591301.97875916 4259871.84791837 174 -591309.96195007 4259871.84791837 172 -591311.9577478 4259871.84791837 172 -591317.94514099 4259871.84791837 170 -591319.94093873 4259871.84791837 170 -591321.93673645 4259871.84791837 168 -591020.57127923 4259869.85004815 182 -591026.55867241 4259869.85004815 184 -591032.54606561 4259869.85004815 186 -591040.52925652 4259869.85004815 188 -591042.52505426 4259869.85004815 188 -591054.49984063 4259869.85004815 190 -591060.48723383 4259869.85004815 192 -591070.46622248 4259869.85004815 194 -591074.45781794 4259869.85004815 195 -591076.45361566 4259869.85004815 195 -591082.44100886 4259869.85004815 196 -591084.43680659 4259869.85004815 196 -591086.43260431 4259869.85004815 196 -591098.4073907 4259869.85004815 196 -591102.39898616 4259869.85004815 195 -591106.39058162 4259869.85004815 194 -591108.38637934 4259869.85004815 192 -591112.37797481 4259869.85004815 190 -591116.36957027 4259869.85004815 188 -591124.35276119 4259869.85004815 186 -591128.34435665 4259869.85004815 184 -591134.33174984 4259869.85004815 182 -591146.30653622 4259869.85004815 180 -591152.29392941 4259869.85004815 178 -591156.28552487 4259869.85004815 176 -591160.27712033 4259869.85004815 174 -591168.26031124 4259869.85004815 174 -591172.2519067 4259869.85004815 176 -591174.24770444 4259869.85004815 178 -591176.24350216 4259869.85004815 180 -591188.21828855 4259869.85004815 182 -591200.19307492 4259869.85004815 184 -591210.17206358 4259869.85004815 186 -591226.13844541 4259869.85004815 188 -591232.1258386 4259869.85004815 190 -591234.12163634 4259869.85004815 190 -591256.07541137 4259869.85004815 190 -591258.07120909 4259869.85004815 190 -591260.06700683 4259869.85004815 190 -591264.05860228 4259869.85004815 188 -591266.05440002 4259869.85004815 188 -591270.04599548 4259869.85004815 186 -591272.0417932 4259869.85004815 186 -591276.03338866 4259869.85004815 184 -591280.02498412 4259869.85004815 182 -591284.01657959 4259869.85004815 180 -591288.00817505 4259869.85004815 178 -591295.99136596 4259869.85004815 176 -591303.97455688 4259869.85004815 174 -591313.95354553 4259869.85004815 172 -591315.94934327 4259869.85004815 172 -591321.93673645 4259869.85004815 170 -591026.55867241 4259867.85217794 184 -591030.55026788 4259867.85217794 186 -591036.53766106 4259867.85217794 188 -591038.5334588 4259867.85217794 188 -591052.50404291 4259867.85217794 190 -591058.49143609 4259867.85217794 192 -591066.47462702 4259867.85217794 194 -591068.47042474 4259867.85217794 194 -591072.4620202 4259867.85217794 195 -591078.4494134 4259867.85217794 196 -591080.44521113 4259867.85217794 196 -591098.4073907 4259867.85217794 196 -591102.39898616 4259867.85217794 195 -591106.39058162 4259867.85217794 194 -591108.38637934 4259867.85217794 192 -591112.37797481 4259867.85217794 190 -591118.36536799 4259867.85217794 188 -591124.35276119 4259867.85217794 186 -591130.34015438 4259867.85217794 184 -591134.33174984 4259867.85217794 182 -591146.30653622 4259867.85217794 180 -591152.29392941 4259867.85217794 178 -591158.28132259 4259867.85217794 176 -591162.27291805 4259867.85217794 174 -591166.26451352 4259867.85217794 174 -591172.2519067 4259867.85217794 178 -591174.24770444 4259867.85217794 180 -591186.22249081 4259867.85217794 182 -591198.1972772 4259867.85217794 184 -591208.17626584 4259867.85217794 186 -591224.14264769 4259867.85217794 188 -591230.13004087 4259867.85217794 190 -591262.06280455 4259867.85217794 190 -591264.05860228 4259867.85217794 190 -591268.05019774 4259867.85217794 188 -591270.04599548 4259867.85217794 188 -591274.03759094 4259867.85217794 186 -591278.02918639 4259867.85217794 184 -591280.02498412 4259867.85217794 184 -591282.02078185 4259867.85217794 182 -591284.01657959 4259867.85217794 182 -591286.01237731 4259867.85217794 180 -591288.00817505 4259867.85217794 180 -591290.00397277 4259867.85217794 178 -591297.9871637 4259867.85217794 176 -591305.97035462 4259867.85217794 174 -591317.94514099 4259867.85217794 172 -591319.94093873 4259867.85217794 172 +591042.52505426 4260093.61151167 136 +591062.48303156 4260093.61151167 134 +591074.45781794 4260093.61151167 132 +591124.35276119 4260093.61151167 132 +591150.29813167 4260093.61151167 134 +591152.29392941 4260093.61151167 134 +591154.28972713 4260093.61151167 134 +591156.28552487 4260093.61151167 134 +591158.28132259 4260093.61151167 134 +591160.27712033 4260093.61151167 134 +591162.27291805 4260093.61151167 134 +591174.24770444 4260093.61151167 134 +591180.23509763 4260093.61151167 136 +591190.21408627 4260093.61151167 138 +591200.19307492 4260093.61151167 140 +591202.18887266 4260093.61151167 140 +591204.18467038 4260093.61151167 140 +591228.13424315 4260093.61151167 140 +591230.13004087 4260093.61151167 140 +591232.1258386 4260093.61151167 140 +591234.12163634 4260093.61151167 140 +591236.11743406 4260093.61151167 140 +591248.09222045 4260093.61151167 138 +591250.08801817 4260093.61151167 138 +591252.08381591 4260093.61151167 138 +591254.07961363 4260093.61151167 138 +591290.00397277 4260093.61151167 136 +591309.96195007 4260093.61151167 134 +591020.57127923 4260091.61364147 138 +591044.52085198 4260091.61364147 136 +591064.47882929 4260091.61364147 134 +591076.45361566 4260091.61364147 132 +591120.36116573 4260091.61364147 132 +591122.35696345 4260091.61364147 132 +591144.31073848 4260091.61364147 134 +591146.30653622 4260091.61364147 134 +591148.30233395 4260091.61364147 134 +591164.26871579 4260091.61364147 134 +591174.24770444 4260091.61364147 134 +591180.23509763 4260091.61364147 136 +591188.21828855 4260091.61364147 138 +591196.20147947 4260091.61364147 140 +591198.1972772 4260091.61364147 140 +591238.1132318 4260091.61364147 140 +591240.10902952 4260091.61364147 140 +591242.10482726 4260091.61364147 140 +591256.07541137 4260091.61364147 138 +591258.07120909 4260091.61364147 138 +591260.06700683 4260091.61364147 138 +591262.06280455 4260091.61364147 138 +591264.05860228 4260091.61364147 138 +591291.99977051 4260091.61364147 136 +591311.9577478 4260091.61364147 134 +591022.56707695 4260089.61577125 138 +591024.56287469 4260089.61577125 138 +591046.51664972 4260089.61577125 136 +591066.47462702 4260089.61577125 134 +591078.4494134 4260089.61577125 132 +591118.36536799 4260089.61577125 132 +591120.36116573 4260089.61577125 132 +591138.3233453 4260089.61577125 134 +591140.31914302 4260089.61577125 134 +591142.31494076 4260089.61577125 134 +591166.26451352 4260089.61577125 134 +591172.2519067 4260089.61577125 134 +591178.2392999 4260089.61577125 136 +591184.22669309 4260089.61577125 138 +591186.22249081 4260089.61577125 138 +591192.20988401 4260089.61577125 140 +591194.20568173 4260089.61577125 140 +591244.10062498 4260089.61577125 140 +591246.09642271 4260089.61577125 140 +591266.05440002 4260089.61577125 138 +591268.05019774 4260089.61577125 138 +591270.04599548 4260089.61577125 138 +591272.0417932 4260089.61577125 138 +591274.03759094 4260089.61577125 138 +591276.03338866 4260089.61577125 138 +591278.02918639 4260089.61577125 138 +591293.99556823 4260089.61577125 136 +591313.95354553 4260089.61577125 134 +591315.94934327 4260089.61577125 134 +591026.55867241 4260087.61790104 138 +591028.55447015 4260087.61790104 138 +591048.51244745 4260087.61790104 136 +591066.47462702 4260087.61790104 134 +591080.44521113 4260087.61790104 132 +591082.44100886 4260087.61790104 132 +591114.37377254 4260087.61790104 132 +591116.36957027 4260087.61790104 132 +591134.33174984 4260087.61790104 134 +591136.32754756 4260087.61790104 134 +591166.26451352 4260087.61790104 134 +591172.2519067 4260087.61790104 134 +591176.24350216 4260087.61790104 136 +591182.23089535 4260087.61790104 138 +591190.21408627 4260087.61790104 140 +591248.09222045 4260087.61790104 140 +591250.08801817 4260087.61790104 140 +591280.02498412 4260087.61790104 138 +591295.99136596 4260087.61790104 136 +591317.94514099 4260087.61790104 134 +591319.94093873 4260087.61790104 134 +591321.93673645 4260087.61790104 134 +591030.55026788 4260085.62003084 138 +591050.50824518 4260085.62003084 136 +591052.50404291 4260085.62003084 136 +591068.47042474 4260085.62003084 134 +591084.43680659 4260085.62003084 132 +591086.43260431 4260085.62003084 132 +591108.38637934 4260085.62003084 132 +591110.38217708 4260085.62003084 132 +591112.37797481 4260085.62003084 132 +591130.34015438 4260085.62003084 134 +591132.33595211 4260085.62003084 134 +591168.26031124 4260085.62003084 134 +591170.25610898 4260085.62003084 134 +591176.24350216 4260085.62003084 136 +591180.23509763 4260085.62003084 138 +591186.22249081 4260085.62003084 140 +591188.21828855 4260085.62003084 140 +591252.08381591 4260085.62003084 140 +591254.07961363 4260085.62003084 140 +591256.07541137 4260085.62003084 140 +591280.02498412 4260085.62003084 138 +591297.9871637 4260085.62003084 136 +591032.54606561 4260083.62216062 138 +591034.54186334 4260083.62216062 138 +591054.49984063 4260083.62216062 136 +591070.46622248 4260083.62216062 134 +591088.42840205 4260083.62216062 132 +591090.42419977 4260083.62216062 132 +591092.41999751 4260083.62216062 132 +591102.39898616 4260083.62216062 132 +591104.39478388 4260083.62216062 132 +591106.39058162 4260083.62216062 132 +591128.34435665 4260083.62216062 134 +591168.26031124 4260083.62216062 134 +591174.24770444 4260083.62216062 136 +591178.2392999 4260083.62216062 138 +591184.22669309 4260083.62216062 140 +591258.07120909 4260083.62216062 140 +591260.06700683 4260083.62216062 140 +591262.06280455 4260083.62216062 140 +591282.02078185 4260083.62216062 138 +591299.98296142 4260083.62216062 136 +591036.53766106 4260081.62429042 138 +591056.49563837 4260081.62429042 136 +591058.49143609 4260081.62429042 136 +591072.4620202 4260081.62429042 134 +591094.41579523 4260081.62429042 132 +591096.41159297 4260081.62429042 132 +591098.4073907 4260081.62429042 132 +591100.40318842 4260081.62429042 132 +591124.35276119 4260081.62429042 134 +591126.34855891 4260081.62429042 134 +591152.29392941 4260081.62429042 136 +591154.28972713 4260081.62429042 136 +591172.2519067 4260081.62429042 136 +591176.24350216 4260081.62429042 138 +591182.23089535 4260081.62429042 140 +591264.05860228 4260081.62429042 140 +591266.05440002 4260081.62429042 140 +591284.01657959 4260081.62429042 138 +591301.97875916 4260081.62429042 136 +591038.5334588 4260079.6264202 138 +591060.48723383 4260079.6264202 136 +591074.45781794 4260079.6264202 134 +591122.35696345 4260079.6264202 134 +591148.30233395 4260079.6264202 136 +591150.29813167 4260079.6264202 136 +591152.29392941 4260079.6264202 136 +591154.28972713 4260079.6264202 136 +591156.28552487 4260079.6264202 136 +591158.28132259 4260079.6264202 136 +591172.2519067 4260079.6264202 136 +591174.24770444 4260079.6264202 138 +591180.23509763 4260079.6264202 140 +591268.05019774 4260079.6264202 140 +591286.01237731 4260079.6264202 138 +591303.97455688 4260079.6264202 136 +591040.52925652 4260077.62854999 138 +591042.52505426 4260077.62854999 138 +591062.48303156 4260077.62854999 136 +591076.45361566 4260077.62854999 134 +591120.36116573 4260077.62854999 134 +591146.30653622 4260077.62854999 136 +591160.27712033 4260077.62854999 136 +591170.25610898 4260077.62854999 136 +591174.24770444 4260077.62854999 138 +591178.2392999 4260077.62854999 140 +591204.18467038 4260077.62854999 142 +591206.18046812 4260077.62854999 142 +591208.17626584 4260077.62854999 142 +591210.17206358 4260077.62854999 142 +591212.1678613 4260077.62854999 142 +591214.16365903 4260077.62854999 142 +591216.15945677 4260077.62854999 142 +591218.15525449 4260077.62854999 142 +591220.15105223 4260077.62854999 142 +591222.14684995 4260077.62854999 142 +591224.14264769 4260077.62854999 142 +591226.13844541 4260077.62854999 142 +591228.13424315 4260077.62854999 142 +591230.13004087 4260077.62854999 142 +591232.1258386 4260077.62854999 142 +591234.12163634 4260077.62854999 142 +591236.11743406 4260077.62854999 142 +591238.1132318 4260077.62854999 142 +591240.10902952 4260077.62854999 142 +591270.04599548 4260077.62854999 140 +591272.0417932 4260077.62854999 140 +591286.01237731 4260077.62854999 138 +591305.97035462 4260077.62854999 136 +591307.96615234 4260077.62854999 136 +591044.52085198 4260075.63067979 138 +591064.47882929 4260075.63067979 136 +591066.47462702 4260075.63067979 136 +591078.4494134 4260075.63067979 134 +591116.36957027 4260075.63067979 134 +591118.36536799 4260075.63067979 134 +591142.31494076 4260075.63067979 136 +591144.31073848 4260075.63067979 136 +591162.27291805 4260075.63067979 136 +591168.26031124 4260075.63067979 136 +591172.2519067 4260075.63067979 138 +591176.24350216 4260075.63067979 140 +591200.19307492 4260075.63067979 142 +591202.18887266 4260075.63067979 142 +591240.10902952 4260075.63067979 142 +591242.10482726 4260075.63067979 142 +591244.10062498 4260075.63067979 142 +591246.09642271 4260075.63067979 142 +591272.0417932 4260075.63067979 140 +591274.03759094 4260075.63067979 140 +591288.00817505 4260075.63067979 138 +591309.96195007 4260075.63067979 136 +591046.51664972 4260073.63280957 138 +591068.47042474 4260073.63280957 136 +591080.44521113 4260073.63280957 134 +591082.44100886 4260073.63280957 134 +591114.37377254 4260073.63280957 134 +591140.31914302 4260073.63280957 136 +591162.27291805 4260073.63280957 136 +591166.26451352 4260073.63280957 136 +591170.25610898 4260073.63280957 138 +591176.24350216 4260073.63280957 140 +591196.20147947 4260073.63280957 142 +591198.1972772 4260073.63280957 142 +591248.09222045 4260073.63280957 142 +591250.08801817 4260073.63280957 142 +591252.08381591 4260073.63280957 142 +591274.03759094 4260073.63280957 140 +591290.00397277 4260073.63280957 138 +591291.99977051 4260073.63280957 138 +591311.9577478 4260073.63280957 136 +591313.95354553 4260073.63280957 136 +591048.51244745 4260071.63493937 138 +591070.46622248 4260071.63493937 136 +591084.43680659 4260071.63493937 134 +591086.43260431 4260071.63493937 134 +591106.39058162 4260071.63493937 134 +591108.38637934 4260071.63493937 134 +591110.38217708 4260071.63493937 134 +591112.37797481 4260071.63493937 134 +591138.3233453 4260071.63493937 136 +591162.27291805 4260071.63493937 136 +591164.26871579 4260071.63493937 136 +591170.25610898 4260071.63493937 138 +591174.24770444 4260071.63493937 140 +591192.20988401 4260071.63493937 142 +591194.20568173 4260071.63493937 142 +591254.07961363 4260071.63493937 142 +591256.07541137 4260071.63493937 142 +591276.03338866 4260071.63493937 140 +591293.99556823 4260071.63493937 138 +591315.94934327 4260071.63493937 136 +591317.94514099 4260071.63493937 136 +591020.57127923 4260069.63706915 140 +591022.56707695 4260069.63706915 140 +591024.56287469 4260069.63706915 140 +591050.50824518 4260069.63706915 138 +591052.50404291 4260069.63706915 138 +591072.4620202 4260069.63706915 136 +591088.42840205 4260069.63706915 134 +591090.42419977 4260069.63706915 134 +591092.41999751 4260069.63706915 134 +591094.41579523 4260069.63706915 134 +591096.41159297 4260069.63706915 134 +591098.4073907 4260069.63706915 134 +591100.40318842 4260069.63706915 134 +591102.39898616 4260069.63706915 134 +591104.39478388 4260069.63706915 134 +591134.33174984 4260069.63706915 136 +591136.32754756 4260069.63706915 136 +591168.26031124 4260069.63706915 138 +591174.24770444 4260069.63706915 140 +591190.21408627 4260069.63706915 142 +591258.07120909 4260069.63706915 142 +591260.06700683 4260069.63706915 142 +591276.03338866 4260069.63706915 140 +591295.99136596 4260069.63706915 138 +591319.94093873 4260069.63706915 136 +591321.93673645 4260069.63706915 136 +591026.55867241 4260067.63919894 140 +591028.55447015 4260067.63919894 140 +591054.49984063 4260067.63919894 138 +591074.45781794 4260067.63919894 136 +591130.34015438 4260067.63919894 136 +591132.33595211 4260067.63919894 136 +591166.26451352 4260067.63919894 138 +591172.2519067 4260067.63919894 140 +591188.21828855 4260067.63919894 142 +591262.06280455 4260067.63919894 142 +591276.03338866 4260067.63919894 140 +591297.9871637 4260067.63919894 138 +591030.55026788 4260065.64132874 140 +591032.54606561 4260065.64132874 140 +591056.49563837 4260065.64132874 138 +591058.49143609 4260065.64132874 138 +591076.45361566 4260065.64132874 136 +591078.4494134 4260065.64132874 136 +591128.34435665 4260065.64132874 136 +591154.28972713 4260065.64132874 138 +591156.28552487 4260065.64132874 138 +591166.26451352 4260065.64132874 138 +591170.25610898 4260065.64132874 140 +591186.22249081 4260065.64132874 142 +591264.05860228 4260065.64132874 142 +591278.02918639 4260065.64132874 140 +591299.98296142 4260065.64132874 138 +591034.54186334 4260063.64345852 140 +591036.53766106 4260063.64345852 140 +591060.48723383 4260063.64345852 138 +591062.48303156 4260063.64345852 138 +591080.44521113 4260063.64345852 136 +591124.35276119 4260063.64345852 136 +591126.34855891 4260063.64345852 136 +591150.29813167 4260063.64345852 138 +591152.29392941 4260063.64345852 138 +591158.28132259 4260063.64345852 138 +591164.26871579 4260063.64345852 138 +591170.25610898 4260063.64345852 140 +591184.22669309 4260063.64345852 142 +591266.05440002 4260063.64345852 142 +591280.02498412 4260063.64345852 140 +591301.97875916 4260063.64345852 138 +591038.5334588 4260061.64558832 140 +591040.52925652 4260061.64558832 140 +591062.48303156 4260061.64558832 138 +591064.47882929 4260061.64558832 138 +591066.47462702 4260061.64558832 138 +591082.44100886 4260061.64558832 136 +591084.43680659 4260061.64558832 136 +591086.43260431 4260061.64558832 136 +591088.42840205 4260061.64558832 136 +591116.36957027 4260061.64558832 136 +591118.36536799 4260061.64558832 136 +591120.36116573 4260061.64558832 136 +591122.35696345 4260061.64558832 136 +591148.30233395 4260061.64558832 138 +591160.27712033 4260061.64558832 138 +591162.27291805 4260061.64558832 138 +591168.26031124 4260061.64558832 140 +591182.23089535 4260061.64558832 142 +591200.19307492 4260061.64558832 144 +591202.18887266 4260061.64558832 144 +591204.18467038 4260061.64558832 144 +591206.18046812 4260061.64558832 144 +591208.17626584 4260061.64558832 144 +591210.17206358 4260061.64558832 144 +591212.1678613 4260061.64558832 144 +591214.16365903 4260061.64558832 144 +591216.15945677 4260061.64558832 144 +591218.15525449 4260061.64558832 144 +591220.15105223 4260061.64558832 144 +591222.14684995 4260061.64558832 144 +591224.14264769 4260061.64558832 144 +591226.13844541 4260061.64558832 144 +591228.13424315 4260061.64558832 144 +591230.13004087 4260061.64558832 144 +591232.1258386 4260061.64558832 144 +591234.12163634 4260061.64558832 144 +591236.11743406 4260061.64558832 144 +591238.1132318 4260061.64558832 144 +591266.05440002 4260061.64558832 142 +591280.02498412 4260061.64558832 140 +591303.97455688 4260061.64558832 138 +591020.57127923 4260059.6477181 142 +591042.52505426 4260059.6477181 140 +591044.52085198 4260059.6477181 140 +591068.47042474 4260059.6477181 138 +591070.46622248 4260059.6477181 138 +591072.4620202 4260059.6477181 138 +591088.42840205 4260059.6477181 136 +591090.42419977 4260059.6477181 136 +591092.41999751 4260059.6477181 136 +591094.41579523 4260059.6477181 136 +591096.41159297 4260059.6477181 136 +591098.4073907 4260059.6477181 136 +591100.40318842 4260059.6477181 136 +591102.39898616 4260059.6477181 136 +591104.39478388 4260059.6477181 136 +591106.39058162 4260059.6477181 136 +591108.38637934 4260059.6477181 136 +591110.38217708 4260059.6477181 136 +591112.37797481 4260059.6477181 136 +591114.37377254 4260059.6477181 136 +591146.30653622 4260059.6477181 138 +591166.26451352 4260059.6477181 140 +591180.23509763 4260059.6477181 142 +591196.20147947 4260059.6477181 144 +591198.1972772 4260059.6477181 144 +591240.10902952 4260059.6477181 144 +591242.10482726 4260059.6477181 144 +591244.10062498 4260059.6477181 144 +591268.05019774 4260059.6477181 142 +591282.02078185 4260059.6477181 140 +591305.97035462 4260059.6477181 138 +591022.56707695 4260057.64984789 142 +591046.51664972 4260057.64984789 140 +591074.45781794 4260057.64984789 138 +591076.45361566 4260057.64984789 138 +591142.31494076 4260057.64984789 138 +591144.31073848 4260057.64984789 138 +591166.26451352 4260057.64984789 140 +591178.2392999 4260057.64984789 142 +591192.20988401 4260057.64984789 144 +591194.20568173 4260057.64984789 144 +591246.09642271 4260057.64984789 144 +591270.04599548 4260057.64984789 142 +591282.02078185 4260057.64984789 140 +591307.96615234 4260057.64984789 138 +591024.56287469 4260055.65197769 142 +591048.51244745 4260055.65197769 140 +591050.50824518 4260055.65197769 140 +591078.4494134 4260055.65197769 138 +591080.44521113 4260055.65197769 138 +591082.44100886 4260055.65197769 138 +591140.31914302 4260055.65197769 138 +591164.26871579 4260055.65197769 140 +591178.2392999 4260055.65197769 142 +591190.21408627 4260055.65197769 144 +591248.09222045 4260055.65197769 144 +591250.08801817 4260055.65197769 144 +591270.04599548 4260055.65197769 142 +591284.01657959 4260055.65197769 140 +591309.96195007 4260055.65197769 138 +591026.55867241 4260053.65410747 142 +591052.50404291 4260053.65410747 140 +591084.43680659 4260053.65410747 138 +591086.43260431 4260053.65410747 138 +591136.32754756 4260053.65410747 138 +591138.3233453 4260053.65410747 138 +591162.27291805 4260053.65410747 140 +591176.24350216 4260053.65410747 142 +591188.21828855 4260053.65410747 144 +591252.08381591 4260053.65410747 144 +591254.07961363 4260053.65410747 144 +591272.0417932 4260053.65410747 142 +591284.01657959 4260053.65410747 140 +591311.9577478 4260053.65410747 138 +591028.55447015 4260051.65623727 142 +591030.55026788 4260051.65623727 142 +591054.49984063 4260051.65623727 140 +591088.42840205 4260051.65623727 138 +591090.42419977 4260051.65623727 138 +591092.41999751 4260051.65623727 138 +591102.39898616 4260051.65623727 138 +591104.39478388 4260051.65623727 138 +591106.39058162 4260051.65623727 138 +591108.38637934 4260051.65623727 138 +591110.38217708 4260051.65623727 138 +591112.37797481 4260051.65623727 138 +591114.37377254 4260051.65623727 138 +591116.36957027 4260051.65623727 138 +591120.36116573 4260051.65623727 138 +591128.34435665 4260051.65623727 138 +591130.34015438 4260051.65623727 138 +591132.33595211 4260051.65623727 138 +591134.33174984 4260051.65623727 138 +591162.27291805 4260051.65623727 140 +591174.24770444 4260051.65623727 142 +591186.22249081 4260051.65623727 144 +591210.17206358 4260051.65623727 146 +591212.1678613 4260051.65623727 146 +591214.16365903 4260051.65623727 146 +591216.15945677 4260051.65623727 146 +591218.15525449 4260051.65623727 146 +591220.15105223 4260051.65623727 146 +591222.14684995 4260051.65623727 146 +591224.14264769 4260051.65623727 146 +591254.07961363 4260051.65623727 144 +591256.07541137 4260051.65623727 144 +591258.07120909 4260051.65623727 144 +591260.06700683 4260051.65623727 144 +591274.03759094 4260051.65623727 142 +591286.01237731 4260051.65623727 140 +591311.9577478 4260051.65623727 138 +591032.54606561 4260049.65836705 142 +591034.54186334 4260049.65836705 142 +591036.53766106 4260049.65836705 142 +591038.5334588 4260049.65836705 142 +591040.52925652 4260049.65836705 142 +591056.49563837 4260049.65836705 140 +591058.49143609 4260049.65836705 140 +591060.48723383 4260049.65836705 140 +591062.48303156 4260049.65836705 140 +591064.47882929 4260049.65836705 140 +591066.47462702 4260049.65836705 140 +591068.47042474 4260049.65836705 140 +591070.46622248 4260049.65836705 140 +591072.4620202 4260049.65836705 140 +591074.45781794 4260049.65836705 140 +591076.45361566 4260049.65836705 140 +591078.4494134 4260049.65836705 140 +591094.41579523 4260049.65836705 138 +591096.41159297 4260049.65836705 138 +591098.4073907 4260049.65836705 138 +591100.40318842 4260049.65836705 138 +591118.36536799 4260049.65836705 138 +591120.36116573 4260049.65836705 138 +591122.35696345 4260049.65836705 138 +591124.35276119 4260049.65836705 138 +591126.34855891 4260049.65836705 138 +591160.27712033 4260049.65836705 140 +591170.25610898 4260049.65836705 142 +591172.2519067 4260049.65836705 142 +591184.22669309 4260049.65836705 144 +591200.19307492 4260049.65836705 146 +591202.18887266 4260049.65836705 146 +591204.18467038 4260049.65836705 146 +591206.18046812 4260049.65836705 146 +591208.17626584 4260049.65836705 146 +591226.13844541 4260049.65836705 146 +591228.13424315 4260049.65836705 146 +591230.13004087 4260049.65836705 146 +591232.1258386 4260049.65836705 146 +591258.07120909 4260049.65836705 144 +591260.06700683 4260049.65836705 144 +591262.06280455 4260049.65836705 144 +591274.03759094 4260049.65836705 142 +591288.00817505 4260049.65836705 140 +591313.95354553 4260049.65836705 138 +591020.57127923 4260047.66049684 144 +591022.56707695 4260047.66049684 144 +591042.52505426 4260047.66049684 142 +591044.52085198 4260047.66049684 142 +591046.51664972 4260047.66049684 142 +591048.51244745 4260047.66049684 142 +591050.50824518 4260047.66049684 142 +591080.44521113 4260047.66049684 140 +591082.44100886 4260047.66049684 140 +591084.43680659 4260047.66049684 140 +591158.28132259 4260047.66049684 140 +591168.26031124 4260047.66049684 142 +591182.23089535 4260047.66049684 144 +591194.20568173 4260047.66049684 146 +591196.20147947 4260047.66049684 146 +591198.1972772 4260047.66049684 146 +591234.12163634 4260047.66049684 146 +591236.11743406 4260047.66049684 146 +591238.1132318 4260047.66049684 146 +591264.05860228 4260047.66049684 144 +591276.03338866 4260047.66049684 142 +591290.00397277 4260047.66049684 140 +591315.94934327 4260047.66049684 138 +591024.56287469 4260045.66262664 144 +591052.50404291 4260045.66262664 142 +591054.49984063 4260045.66262664 142 +591086.43260431 4260045.66262664 140 +591088.42840205 4260045.66262664 140 +591090.42419977 4260045.66262664 140 +591156.28552487 4260045.66262664 140 +591166.26451352 4260045.66262664 142 +591178.2392999 4260045.66262664 144 +591180.23509763 4260045.66262664 144 +591192.20988401 4260045.66262664 146 +591194.20568173 4260045.66262664 146 +591240.10902952 4260045.66262664 146 +591264.05860228 4260045.66262664 144 +591278.02918639 4260045.66262664 142 +591291.99977051 4260045.66262664 140 +591315.94934327 4260045.66262664 138 +591026.55867241 4260043.66475642 144 +591056.49563837 4260043.66475642 142 +591092.41999751 4260043.66475642 140 +591094.41579523 4260043.66475642 140 +591096.41159297 4260043.66475642 140 +591098.4073907 4260043.66475642 140 +591134.33174984 4260043.66475642 140 +591136.32754756 4260043.66475642 140 +591138.3233453 4260043.66475642 140 +591140.31914302 4260043.66475642 140 +591142.31494076 4260043.66475642 140 +591144.31073848 4260043.66475642 140 +591156.28552487 4260043.66475642 140 +591164.26871579 4260043.66475642 142 +591176.24350216 4260043.66475642 144 +591178.2392999 4260043.66475642 144 +591190.21408627 4260043.66475642 146 +591242.10482726 4260043.66475642 146 +591244.10062498 4260043.66475642 146 +591266.05440002 4260043.66475642 144 +591278.02918639 4260043.66475642 142 +591291.99977051 4260043.66475642 140 +591317.94514099 4260043.66475642 138 +591028.55447015 4260041.66688622 144 +591058.49143609 4260041.66688622 142 +591060.48723383 4260041.66688622 142 +591098.4073907 4260041.66688622 140 +591100.40318842 4260041.66688622 140 +591102.39898616 4260041.66688622 140 +591104.39478388 4260041.66688622 140 +591106.39058162 4260041.66688622 140 +591130.34015438 4260041.66688622 140 +591132.33595211 4260041.66688622 140 +591146.30653622 4260041.66688622 140 +591154.28972713 4260041.66688622 140 +591162.27291805 4260041.66688622 142 +591174.24770444 4260041.66688622 144 +591188.21828855 4260041.66688622 146 +591208.17626584 4260041.66688622 148 +591210.17206358 4260041.66688622 148 +591212.1678613 4260041.66688622 148 +591246.09642271 4260041.66688622 146 +591266.05440002 4260041.66688622 144 +591280.02498412 4260041.66688622 142 +591293.99556823 4260041.66688622 140 +591317.94514099 4260041.66688622 138 +591030.55026788 4260039.669016 144 +591032.54606561 4260039.669016 144 +591034.54186334 4260039.669016 144 +591036.53766106 4260039.669016 144 +591062.48303156 4260039.669016 142 +591064.47882929 4260039.669016 142 +591066.47462702 4260039.669016 142 +591068.47042474 4260039.669016 142 +591070.46622248 4260039.669016 142 +591072.4620202 4260039.669016 142 +591074.45781794 4260039.669016 142 +591108.38637934 4260039.669016 140 +591110.38217708 4260039.669016 140 +591112.37797481 4260039.669016 140 +591114.37377254 4260039.669016 140 +591116.36957027 4260039.669016 140 +591118.36536799 4260039.669016 140 +591120.36116573 4260039.669016 140 +591122.35696345 4260039.669016 140 +591124.35276119 4260039.669016 140 +591126.34855891 4260039.669016 140 +591128.34435665 4260039.669016 140 +591148.30233395 4260039.669016 140 +591152.29392941 4260039.669016 140 +591154.28972713 4260039.669016 140 +591162.27291805 4260039.669016 142 +591172.2519067 4260039.669016 144 +591186.22249081 4260039.669016 146 +591200.19307492 4260039.669016 148 +591202.18887266 4260039.669016 148 +591204.18467038 4260039.669016 148 +591206.18046812 4260039.669016 148 +591214.16365903 4260039.669016 148 +591216.15945677 4260039.669016 148 +591218.15525449 4260039.669016 148 +591220.15105223 4260039.669016 148 +591222.14684995 4260039.669016 148 +591248.09222045 4260039.669016 146 +591266.05440002 4260039.669016 144 +591280.02498412 4260039.669016 142 +591295.99136596 4260039.669016 140 +591317.94514099 4260039.669016 138 +591038.5334588 4260037.67114579 144 +591040.52925652 4260037.67114579 144 +591042.52505426 4260037.67114579 144 +591044.52085198 4260037.67114579 144 +591046.51664972 4260037.67114579 144 +591076.45361566 4260037.67114579 142 +591078.4494134 4260037.67114579 142 +591080.44521113 4260037.67114579 142 +591082.44100886 4260037.67114579 142 +591084.43680659 4260037.67114579 142 +591086.43260431 4260037.67114579 142 +591088.42840205 4260037.67114579 142 +591090.42419977 4260037.67114579 142 +591092.41999751 4260037.67114579 142 +591094.41579523 4260037.67114579 142 +591150.29813167 4260037.67114579 140 +591160.27712033 4260037.67114579 142 +591170.25610898 4260037.67114579 144 +591184.22669309 4260037.67114579 146 +591196.20147947 4260037.67114579 148 +591198.1972772 4260037.67114579 148 +591224.14264769 4260037.67114579 148 +591226.13844541 4260037.67114579 148 +591228.13424315 4260037.67114579 148 +591248.09222045 4260037.67114579 146 +591266.05440002 4260037.67114579 144 +591282.02078185 4260037.67114579 142 +591295.99136596 4260037.67114579 140 +591317.94514099 4260037.67114579 138 +591048.51244745 4260035.67327559 144 +591050.50824518 4260035.67327559 144 +591096.41159297 4260035.67327559 142 +591098.4073907 4260035.67327559 142 +591100.40318842 4260035.67327559 142 +591102.39898616 4260035.67327559 142 +591124.35276119 4260035.67327559 142 +591126.34855891 4260035.67327559 142 +591128.34435665 4260035.67327559 142 +591130.34015438 4260035.67327559 142 +591132.33595211 4260035.67327559 142 +591134.33174984 4260035.67327559 142 +591136.32754756 4260035.67327559 142 +591138.3233453 4260035.67327559 142 +591140.31914302 4260035.67327559 142 +591158.28132259 4260035.67327559 142 +591168.26031124 4260035.67327559 144 +591182.23089535 4260035.67327559 146 +591192.20988401 4260035.67327559 148 +591194.20568173 4260035.67327559 148 +591230.13004087 4260035.67327559 148 +591250.08801817 4260035.67327559 146 +591268.05019774 4260035.67327559 144 +591282.02078185 4260035.67327559 142 +591295.99136596 4260035.67327559 140 +591317.94514099 4260035.67327559 138 +591052.50404291 4260033.67540537 144 +591104.39478388 4260033.67540537 142 +591106.39058162 4260033.67540537 142 +591108.38637934 4260033.67540537 142 +591110.38217708 4260033.67540537 142 +591112.37797481 4260033.67540537 142 +591114.37377254 4260033.67540537 142 +591116.36957027 4260033.67540537 142 +591118.36536799 4260033.67540537 142 +591120.36116573 4260033.67540537 142 +591122.35696345 4260033.67540537 142 +591142.31494076 4260033.67540537 142 +591144.31073848 4260033.67540537 142 +591156.28552487 4260033.67540537 142 +591168.26031124 4260033.67540537 144 +591180.23509763 4260033.67540537 146 +591192.20988401 4260033.67540537 148 +591232.1258386 4260033.67540537 148 +591234.12163634 4260033.67540537 148 +591250.08801817 4260033.67540537 146 +591268.05019774 4260033.67540537 144 +591282.02078185 4260033.67540537 142 +591295.99136596 4260033.67540537 140 +591317.94514099 4260033.67540537 138 +591020.57127923 4260031.67753517 146 +591054.49984063 4260031.67753517 144 +591056.49563837 4260031.67753517 144 +591072.4620202 4260031.67753517 144 +591074.45781794 4260031.67753517 144 +591076.45361566 4260031.67753517 144 +591078.4494134 4260031.67753517 144 +591114.37377254 4260031.67753517 142 +591146.30653622 4260031.67753517 142 +591148.30233395 4260031.67753517 142 +591156.28552487 4260031.67753517 142 +591166.26451352 4260031.67753517 144 +591168.26031124 4260031.67753517 144 +591178.2392999 4260031.67753517 146 +591190.21408627 4260031.67753517 148 +591234.12163634 4260031.67753517 148 +591252.08381591 4260031.67753517 146 +591268.05019774 4260031.67753517 144 +591282.02078185 4260031.67753517 142 +591295.99136596 4260031.67753517 140 +591317.94514099 4260031.67753517 138 +591022.56707695 4260029.67966495 146 +591024.56287469 4260029.67966495 146 +591026.55867241 4260029.67966495 146 +591028.55447015 4260029.67966495 146 +591030.55026788 4260029.67966495 146 +591032.54606561 4260029.67966495 146 +591058.49143609 4260029.67966495 144 +591060.48723383 4260029.67966495 144 +591062.48303156 4260029.67966495 144 +591064.47882929 4260029.67966495 144 +591066.47462702 4260029.67966495 144 +591068.47042474 4260029.67966495 144 +591070.46622248 4260029.67966495 144 +591080.44521113 4260029.67966495 144 +591082.44100886 4260029.67966495 144 +591084.43680659 4260029.67966495 144 +591086.43260431 4260029.67966495 144 +591088.42840205 4260029.67966495 144 +591122.35696345 4260029.67966495 144 +591124.35276119 4260029.67966495 144 +591126.34855891 4260029.67966495 144 +591128.34435665 4260029.67966495 144 +591130.34015438 4260029.67966495 144 +591132.33595211 4260029.67966495 144 +591134.33174984 4260029.67966495 144 +591136.32754756 4260029.67966495 144 +591138.3233453 4260029.67966495 144 +591140.31914302 4260029.67966495 144 +591142.31494076 4260029.67966495 144 +591150.29813167 4260029.67966495 142 +591152.29392941 4260029.67966495 142 +591154.28972713 4260029.67966495 142 +591156.28552487 4260029.67966495 142 +591166.26451352 4260029.67966495 144 +591178.2392999 4260029.67966495 146 +591190.21408627 4260029.67966495 148 +591204.18467038 4260029.67966495 150 +591206.18046812 4260029.67966495 150 +591208.17626584 4260029.67966495 150 +591210.17206358 4260029.67966495 150 +591212.1678613 4260029.67966495 150 +591214.16365903 4260029.67966495 150 +591216.15945677 4260029.67966495 150 +591218.15525449 4260029.67966495 150 +591236.11743406 4260029.67966495 148 +591252.08381591 4260029.67966495 146 +591268.05019774 4260029.67966495 144 +591282.02078185 4260029.67966495 142 +591295.99136596 4260029.67966495 140 +591317.94514099 4260029.67966495 138 +591034.54186334 4260027.68179474 146 +591036.53766106 4260027.68179474 146 +591038.5334588 4260027.68179474 146 +591040.52925652 4260027.68179474 146 +591042.52505426 4260027.68179474 146 +591044.52085198 4260027.68179474 146 +591090.42419977 4260027.68179474 144 +591092.41999751 4260027.68179474 144 +591094.41579523 4260027.68179474 144 +591096.41159297 4260027.68179474 144 +591098.4073907 4260027.68179474 144 +591100.40318842 4260027.68179474 144 +591114.37377254 4260027.68179474 144 +591116.36957027 4260027.68179474 144 +591118.36536799 4260027.68179474 144 +591120.36116573 4260027.68179474 144 +591144.31073848 4260027.68179474 144 +591146.30653622 4260027.68179474 144 +591148.30233395 4260027.68179474 144 +591166.26451352 4260027.68179474 144 +591178.2392999 4260027.68179474 146 +591190.21408627 4260027.68179474 148 +591200.19307492 4260027.68179474 150 +591202.18887266 4260027.68179474 150 +591220.15105223 4260027.68179474 150 +591222.14684995 4260027.68179474 150 +591224.14264769 4260027.68179474 150 +591238.1132318 4260027.68179474 148 +591254.07961363 4260027.68179474 146 +591268.05019774 4260027.68179474 144 +591282.02078185 4260027.68179474 142 +591297.9871637 4260027.68179474 140 +591319.94093873 4260027.68179474 138 +591046.51664972 4260025.68392454 146 +591100.40318842 4260025.68392454 144 +591102.39898616 4260025.68392454 144 +591104.39478388 4260025.68392454 144 +591106.39058162 4260025.68392454 144 +591108.38637934 4260025.68392454 144 +591110.38217708 4260025.68392454 144 +591112.37797481 4260025.68392454 144 +591126.34855891 4260025.68392454 146 +591128.34435665 4260025.68392454 146 +591130.34015438 4260025.68392454 146 +591132.33595211 4260025.68392454 146 +591150.29813167 4260025.68392454 144 +591152.29392941 4260025.68392454 144 +591166.26451352 4260025.68392454 144 +591176.24350216 4260025.68392454 146 +591188.21828855 4260025.68392454 148 +591198.1972772 4260025.68392454 150 +591226.13844541 4260025.68392454 150 +591228.13424315 4260025.68392454 150 +591240.10902952 4260025.68392454 148 +591254.07961363 4260025.68392454 146 +591270.04599548 4260025.68392454 144 +591282.02078185 4260025.68392454 142 +591297.9871637 4260025.68392454 140 +591319.94093873 4260025.68392454 138 +591048.51244745 4260023.68605432 146 +591050.50824518 4260023.68605432 146 +591052.50404291 4260023.68605432 146 +591066.47462702 4260023.68605432 146 +591068.47042474 4260023.68605432 146 +591070.46622248 4260023.68605432 146 +591072.4620202 4260023.68605432 146 +591074.45781794 4260023.68605432 146 +591076.45361566 4260023.68605432 146 +591078.4494134 4260023.68605432 146 +591080.44521113 4260023.68605432 146 +591114.37377254 4260023.68605432 146 +591116.36957027 4260023.68605432 146 +591118.36536799 4260023.68605432 146 +591120.36116573 4260023.68605432 146 +591122.35696345 4260023.68605432 146 +591124.35276119 4260023.68605432 146 +591134.33174984 4260023.68605432 146 +591136.32754756 4260023.68605432 146 +591138.3233453 4260023.68605432 146 +591140.31914302 4260023.68605432 146 +591154.28972713 4260023.68605432 144 +591156.28552487 4260023.68605432 144 +591166.26451352 4260023.68605432 144 +591176.24350216 4260023.68605432 146 +591188.21828855 4260023.68605432 148 +591196.20147947 4260023.68605432 150 +591230.13004087 4260023.68605432 150 +591242.10482726 4260023.68605432 148 +591256.07541137 4260023.68605432 146 +591270.04599548 4260023.68605432 144 +591282.02078185 4260023.68605432 142 +591299.98296142 4260023.68605432 140 +591321.93673645 4260023.68605432 138 +591020.57127923 4260021.68818412 148 +591054.49984063 4260021.68818412 146 +591056.49563837 4260021.68818412 146 +591058.49143609 4260021.68818412 146 +591060.48723383 4260021.68818412 146 +591062.48303156 4260021.68818412 146 +591064.47882929 4260021.68818412 146 +591082.44100886 4260021.68818412 146 +591084.43680659 4260021.68818412 146 +591086.43260431 4260021.68818412 146 +591088.42840205 4260021.68818412 146 +591090.42419977 4260021.68818412 146 +591092.41999751 4260021.68818412 146 +591094.41579523 4260021.68818412 146 +591096.41159297 4260021.68818412 146 +591098.4073907 4260021.68818412 146 +591100.40318842 4260021.68818412 146 +591102.39898616 4260021.68818412 146 +591104.39478388 4260021.68818412 146 +591106.39058162 4260021.68818412 146 +591108.38637934 4260021.68818412 146 +591110.38217708 4260021.68818412 146 +591112.37797481 4260021.68818412 146 +591142.31494076 4260021.68818412 146 +591144.31073848 4260021.68818412 146 +591158.28132259 4260021.68818412 144 +591160.27712033 4260021.68818412 144 +591166.26451352 4260021.68818412 144 +591176.24350216 4260021.68818412 146 +591188.21828855 4260021.68818412 148 +591194.20568173 4260021.68818412 150 +591232.1258386 4260021.68818412 150 +591242.10482726 4260021.68818412 148 +591256.07541137 4260021.68818412 146 +591272.0417932 4260021.68818412 144 +591284.01657959 4260021.68818412 142 +591301.97875916 4260021.68818412 140 +591022.56707695 4260019.6903139 148 +591024.56287469 4260019.6903139 148 +591026.55867241 4260019.6903139 148 +591028.55447015 4260019.6903139 148 +591030.55026788 4260019.6903139 148 +591032.54606561 4260019.6903139 148 +591118.36536799 4260019.6903139 148 +591120.36116573 4260019.6903139 148 +591122.35696345 4260019.6903139 148 +591124.35276119 4260019.6903139 148 +591126.34855891 4260019.6903139 148 +591128.34435665 4260019.6903139 148 +591146.30653622 4260019.6903139 146 +591148.30233395 4260019.6903139 146 +591150.29813167 4260019.6903139 146 +591162.27291805 4260019.6903139 144 +591164.26871579 4260019.6903139 144 +591176.24350216 4260019.6903139 146 +591186.22249081 4260019.6903139 148 +591194.20568173 4260019.6903139 150 +591234.12163634 4260019.6903139 150 +591244.10062498 4260019.6903139 148 +591258.07120909 4260019.6903139 146 +591260.06700683 4260019.6903139 146 +591272.0417932 4260019.6903139 144 +591284.01657959 4260019.6903139 142 +591301.97875916 4260019.6903139 140 +591034.54186334 4260017.69244369 148 +591036.53766106 4260017.69244369 148 +591038.5334588 4260017.69244369 148 +591110.38217708 4260017.69244369 148 +591112.37797481 4260017.69244369 148 +591114.37377254 4260017.69244369 148 +591116.36957027 4260017.69244369 148 +591130.34015438 4260017.69244369 148 +591132.33595211 4260017.69244369 148 +591134.33174984 4260017.69244369 148 +591136.32754756 4260017.69244369 148 +591152.29392941 4260017.69244369 146 +591154.28972713 4260017.69244369 146 +591156.28552487 4260017.69244369 146 +591176.24350216 4260017.69244369 146 +591186.22249081 4260017.69244369 148 +591194.20568173 4260017.69244369 150 +591236.11743406 4260017.69244369 150 +591246.09642271 4260017.69244369 148 +591262.06280455 4260017.69244369 146 +591274.03759094 4260017.69244369 144 +591286.01237731 4260017.69244369 142 +591288.00817505 4260017.69244369 142 +591303.97455688 4260017.69244369 140 +591040.52925652 4260015.69457349 148 +591042.52505426 4260015.69457349 148 +591044.52085198 4260015.69457349 148 +591064.47882929 4260015.69457349 148 +591066.47462702 4260015.69457349 148 +591068.47042474 4260015.69457349 148 +591070.46622248 4260015.69457349 148 +591072.4620202 4260015.69457349 148 +591074.45781794 4260015.69457349 148 +591076.45361566 4260015.69457349 148 +591100.40318842 4260015.69457349 148 +591102.39898616 4260015.69457349 148 +591104.39478388 4260015.69457349 148 +591106.39058162 4260015.69457349 148 +591108.38637934 4260015.69457349 148 +591138.3233453 4260015.69457349 148 +591140.31914302 4260015.69457349 148 +591142.31494076 4260015.69457349 148 +591144.31073848 4260015.69457349 148 +591146.30653622 4260015.69457349 148 +591148.30233395 4260015.69457349 148 +591156.28552487 4260015.69457349 146 +591158.28132259 4260015.69457349 146 +591160.27712033 4260015.69457349 146 +591162.27291805 4260015.69457349 146 +591176.24350216 4260015.69457349 146 +591186.22249081 4260015.69457349 148 +591192.20988401 4260015.69457349 150 +591238.1132318 4260015.69457349 150 +591246.09642271 4260015.69457349 148 +591264.05860228 4260015.69457349 146 +591276.03338866 4260015.69457349 144 +591290.00397277 4260015.69457349 142 +591305.97035462 4260015.69457349 140 +591046.51664972 4260013.69670327 148 +591048.51244745 4260013.69670327 148 +591050.50824518 4260013.69670327 148 +591052.50404291 4260013.69670327 148 +591054.49984063 4260013.69670327 148 +591056.49563837 4260013.69670327 148 +591058.49143609 4260013.69670327 148 +591060.48723383 4260013.69670327 148 +591062.48303156 4260013.69670327 148 +591078.4494134 4260013.69670327 148 +591080.44521113 4260013.69670327 148 +591082.44100886 4260013.69670327 148 +591090.42419977 4260013.69670327 148 +591092.41999751 4260013.69670327 148 +591094.41579523 4260013.69670327 148 +591096.41159297 4260013.69670327 148 +591098.4073907 4260013.69670327 148 +591120.36116573 4260013.69670327 150 +591122.35696345 4260013.69670327 150 +591124.35276119 4260013.69670327 150 +591126.34855891 4260013.69670327 150 +591128.34435665 4260013.69670327 150 +591130.34015438 4260013.69670327 150 +591132.33595211 4260013.69670327 150 +591134.33174984 4260013.69670327 150 +591150.29813167 4260013.69670327 148 +591152.29392941 4260013.69670327 148 +591154.28972713 4260013.69670327 148 +591156.28552487 4260013.69670327 148 +591164.26871579 4260013.69670327 146 +591166.26451352 4260013.69670327 146 +591168.26031124 4260013.69670327 146 +591176.24350216 4260013.69670327 146 +591184.22669309 4260013.69670327 148 +591186.22249081 4260013.69670327 148 +591192.20988401 4260013.69670327 150 +591240.10902952 4260013.69670327 150 +591248.09222045 4260013.69670327 148 +591264.05860228 4260013.69670327 146 +591278.02918639 4260013.69670327 144 +591291.99977051 4260013.69670327 142 +591307.96615234 4260013.69670327 140 +591082.44100886 4260011.69883307 148 +591084.43680659 4260011.69883307 148 +591086.43260431 4260011.69883307 148 +591088.42840205 4260011.69883307 148 +591116.36957027 4260011.69883307 150 +591118.36536799 4260011.69883307 150 +591120.36116573 4260011.69883307 150 +591136.32754756 4260011.69883307 150 +591138.3233453 4260011.69883307 150 +591140.31914302 4260011.69883307 150 +591142.31494076 4260011.69883307 150 +591158.28132259 4260011.69883307 148 +591160.27712033 4260011.69883307 148 +591170.25610898 4260011.69883307 146 +591172.2519067 4260011.69883307 146 +591176.24350216 4260011.69883307 146 +591184.22669309 4260011.69883307 148 +591192.20988401 4260011.69883307 150 +591242.10482726 4260011.69883307 150 +591248.09222045 4260011.69883307 148 +591266.05440002 4260011.69883307 146 +591280.02498412 4260011.69883307 144 +591293.99556823 4260011.69883307 142 +591309.96195007 4260011.69883307 140 +591112.37797481 4260009.70096285 150 +591114.37377254 4260009.70096285 150 +591144.31073848 4260009.70096285 150 +591146.30653622 4260009.70096285 150 +591162.27291805 4260009.70096285 148 +591164.26871579 4260009.70096285 148 +591174.24770444 4260009.70096285 146 +591176.24350216 4260009.70096285 146 +591184.22669309 4260009.70096285 148 +591192.20988401 4260009.70096285 150 +591242.10482726 4260009.70096285 150 +591250.08801817 4260009.70096285 148 +591268.05019774 4260009.70096285 146 +591282.02078185 4260009.70096285 144 +591295.99136596 4260009.70096285 142 +591297.9871637 4260009.70096285 142 +591311.9577478 4260009.70096285 140 +591020.57127923 4260007.70309264 150 +591022.56707695 4260007.70309264 150 +591106.39058162 4260007.70309264 150 +591108.38637934 4260007.70309264 150 +591110.38217708 4260007.70309264 150 +591148.30233395 4260007.70309264 150 +591150.29813167 4260007.70309264 150 +591166.26451352 4260007.70309264 148 +591184.22669309 4260007.70309264 148 +591192.20988401 4260007.70309264 150 +591194.20568173 4260007.70309264 150 +591214.16365903 4260007.70309264 152 +591216.15945677 4260007.70309264 152 +591218.15525449 4260007.70309264 152 +591220.15105223 4260007.70309264 152 +591222.14684995 4260007.70309264 152 +591244.10062498 4260007.70309264 150 +591250.08801817 4260007.70309264 148 +591270.04599548 4260007.70309264 146 +591284.01657959 4260007.70309264 144 +591299.98296142 4260007.70309264 142 +591301.97875916 4260007.70309264 142 +591313.95354553 4260007.70309264 140 +591024.56287469 4260005.70522244 150 +591026.55867241 4260005.70522244 150 +591028.55447015 4260005.70522244 150 +591030.55026788 4260005.70522244 150 +591032.54606561 4260005.70522244 150 +591034.54186334 4260005.70522244 150 +591036.53766106 4260005.70522244 150 +591038.5334588 4260005.70522244 150 +591060.48723383 4260005.70522244 150 +591062.48303156 4260005.70522244 150 +591064.47882929 4260005.70522244 150 +591066.47462702 4260005.70522244 150 +591076.45361566 4260005.70522244 150 +591078.4494134 4260005.70522244 150 +591080.44521113 4260005.70522244 150 +591082.44100886 4260005.70522244 150 +591084.43680659 4260005.70522244 150 +591086.43260431 4260005.70522244 150 +591088.42840205 4260005.70522244 150 +591090.42419977 4260005.70522244 150 +591092.41999751 4260005.70522244 150 +591094.41579523 4260005.70522244 150 +591096.41159297 4260005.70522244 150 +591098.4073907 4260005.70522244 150 +591100.40318842 4260005.70522244 150 +591102.39898616 4260005.70522244 150 +591104.39478388 4260005.70522244 150 +591152.29392941 4260005.70522244 150 +591154.28972713 4260005.70522244 150 +591168.26031124 4260005.70522244 148 +591170.25610898 4260005.70522244 148 +591184.22669309 4260005.70522244 148 +591192.20988401 4260005.70522244 150 +591208.17626584 4260005.70522244 152 +591210.17206358 4260005.70522244 152 +591212.1678613 4260005.70522244 152 +591224.14264769 4260005.70522244 152 +591226.13844541 4260005.70522244 152 +591228.13424315 4260005.70522244 152 +591244.10062498 4260005.70522244 150 +591252.08381591 4260005.70522244 148 +591272.0417932 4260005.70522244 146 +591286.01237731 4260005.70522244 144 +591303.97455688 4260005.70522244 142 +591315.94934327 4260005.70522244 140 +591040.52925652 4260003.70735222 150 +591042.52505426 4260003.70735222 150 +591044.52085198 4260003.70735222 150 +591046.51664972 4260003.70735222 150 +591048.51244745 4260003.70735222 150 +591050.50824518 4260003.70735222 150 +591052.50404291 4260003.70735222 150 +591054.49984063 4260003.70735222 150 +591056.49563837 4260003.70735222 150 +591058.49143609 4260003.70735222 150 +591156.28552487 4260003.70735222 150 +591158.28132259 4260003.70735222 150 +591172.2519067 4260003.70735222 148 +591174.24770444 4260003.70735222 148 +591184.22669309 4260003.70735222 148 +591192.20988401 4260003.70735222 150 +591204.18467038 4260003.70735222 152 +591206.18046812 4260003.70735222 152 +591230.13004087 4260003.70735222 152 +591244.10062498 4260003.70735222 150 +591246.09642271 4260003.70735222 150 +591252.08381591 4260003.70735222 148 +591272.0417932 4260003.70735222 146 +591288.00817505 4260003.70735222 144 +591305.97035462 4260003.70735222 142 +591315.94934327 4260003.70735222 140 +591160.27712033 4260001.70948202 150 +591162.27291805 4260001.70948202 150 +591176.24350216 4260001.70948202 148 +591184.22669309 4260001.70948202 148 +591192.20988401 4260001.70948202 150 +591202.18887266 4260001.70948202 152 +591232.1258386 4260001.70948202 152 +591234.12163634 4260001.70948202 152 +591246.09642271 4260001.70948202 150 +591254.07961363 4260001.70948202 148 +591274.03759094 4260001.70948202 146 +591288.00817505 4260001.70948202 144 +591307.96615234 4260001.70948202 142 +591317.94514099 4260001.70948202 140 +591112.37797481 4259999.7116118 152 +591114.37377254 4259999.7116118 152 +591118.36536799 4259999.7116118 152 +591120.36116573 4259999.7116118 152 +591122.35696345 4259999.7116118 152 +591124.35276119 4259999.7116118 152 +591126.34855891 4259999.7116118 152 +591128.34435665 4259999.7116118 152 +591130.34015438 4259999.7116118 152 +591132.33595211 4259999.7116118 152 +591134.33174984 4259999.7116118 152 +591136.32754756 4259999.7116118 152 +591138.3233453 4259999.7116118 152 +591164.26871579 4259999.7116118 150 +591166.26451352 4259999.7116118 150 +591178.2392999 4259999.7116118 148 +591184.22669309 4259999.7116118 148 +591192.20988401 4259999.7116118 150 +591200.19307492 4259999.7116118 152 +591236.11743406 4259999.7116118 152 +591246.09642271 4259999.7116118 150 +591254.07961363 4259999.7116118 148 +591276.03338866 4259999.7116118 146 +591290.00397277 4259999.7116118 144 +591309.96195007 4259999.7116118 142 +591317.94514099 4259999.7116118 140 +591020.57127923 4259997.71374159 152 +591022.56707695 4259997.71374159 152 +591024.56287469 4259997.71374159 152 +591066.47462702 4259997.71374159 152 +591068.47042474 4259997.71374159 152 +591070.46622248 4259997.71374159 152 +591072.4620202 4259997.71374159 152 +591074.45781794 4259997.71374159 152 +591076.45361566 4259997.71374159 152 +591102.39898616 4259997.71374159 152 +591104.39478388 4259997.71374159 152 +591106.39058162 4259997.71374159 152 +591108.38637934 4259997.71374159 152 +591110.38217708 4259997.71374159 152 +591114.37377254 4259997.71374159 152 +591116.36957027 4259997.71374159 152 +591138.3233453 4259997.71374159 152 +591140.31914302 4259997.71374159 152 +591142.31494076 4259997.71374159 152 +591168.26031124 4259997.71374159 150 +591170.25610898 4259997.71374159 150 +591180.23509763 4259997.71374159 148 +591182.23089535 4259997.71374159 148 +591184.22669309 4259997.71374159 148 +591192.20988401 4259997.71374159 150 +591200.19307492 4259997.71374159 152 +591236.11743406 4259997.71374159 152 +591246.09642271 4259997.71374159 150 +591256.07541137 4259997.71374159 148 +591276.03338866 4259997.71374159 146 +591291.99977051 4259997.71374159 144 +591311.9577478 4259997.71374159 142 +591319.94093873 4259997.71374159 140 +591026.55867241 4259995.71587139 152 +591028.55447015 4259995.71587139 152 +591030.55026788 4259995.71587139 152 +591032.54606561 4259995.71587139 152 +591034.54186334 4259995.71587139 152 +591036.53766106 4259995.71587139 152 +591038.5334588 4259995.71587139 152 +591040.52925652 4259995.71587139 152 +591042.52505426 4259995.71587139 152 +591044.52085198 4259995.71587139 152 +591046.51664972 4259995.71587139 152 +591048.51244745 4259995.71587139 152 +591050.50824518 4259995.71587139 152 +591052.50404291 4259995.71587139 152 +591054.49984063 4259995.71587139 152 +591056.49563837 4259995.71587139 152 +591058.49143609 4259995.71587139 152 +591060.48723383 4259995.71587139 152 +591062.48303156 4259995.71587139 152 +591064.47882929 4259995.71587139 152 +591066.47462702 4259995.71587139 152 +591078.4494134 4259995.71587139 152 +591080.44521113 4259995.71587139 152 +591082.44100886 4259995.71587139 152 +591084.43680659 4259995.71587139 152 +591086.43260431 4259995.71587139 152 +591088.42840205 4259995.71587139 152 +591090.42419977 4259995.71587139 152 +591092.41999751 4259995.71587139 152 +591094.41579523 4259995.71587139 152 +591096.41159297 4259995.71587139 152 +591098.4073907 4259995.71587139 152 +591100.40318842 4259995.71587139 152 +591144.31073848 4259995.71587139 152 +591146.30653622 4259995.71587139 152 +591148.30233395 4259995.71587139 152 +591150.29813167 4259995.71587139 152 +591172.2519067 4259995.71587139 150 +591174.24770444 4259995.71587139 150 +591184.22669309 4259995.71587139 148 +591192.20988401 4259995.71587139 150 +591202.18887266 4259995.71587139 152 +591238.1132318 4259995.71587139 152 +591248.09222045 4259995.71587139 150 +591256.07541137 4259995.71587139 148 +591278.02918639 4259995.71587139 146 +591293.99556823 4259995.71587139 144 +591311.9577478 4259995.71587139 142 +591319.94093873 4259995.71587139 140 +591150.29813167 4259993.71800117 152 +591152.29392941 4259993.71800117 152 +591176.24350216 4259993.71800117 150 +591192.20988401 4259993.71800117 150 +591202.18887266 4259993.71800117 152 +591238.1132318 4259993.71800117 152 +591248.09222045 4259993.71800117 150 +591258.07120909 4259993.71800117 148 +591260.06700683 4259993.71800117 148 +591278.02918639 4259993.71800117 146 +591295.99136596 4259993.71800117 144 +591313.95354553 4259993.71800117 142 +591321.93673645 4259993.71800117 140 +591154.28972713 4259991.72013097 152 +591156.28552487 4259991.72013097 152 +591178.2392999 4259991.72013097 150 +591192.20988401 4259991.72013097 150 +591202.18887266 4259991.72013097 152 +591240.10902952 4259991.72013097 152 +591248.09222045 4259991.72013097 150 +591262.06280455 4259991.72013097 148 +591280.02498412 4259991.72013097 146 +591295.99136596 4259991.72013097 144 +591313.95354553 4259991.72013097 142 +591321.93673645 4259991.72013097 140 +591040.52925652 4259989.72226075 154 +591042.52505426 4259989.72226075 154 +591044.52085198 4259989.72226075 154 +591046.51664972 4259989.72226075 154 +591048.51244745 4259989.72226075 154 +591050.50824518 4259989.72226075 154 +591052.50404291 4259989.72226075 154 +591054.49984063 4259989.72226075 154 +591056.49563837 4259989.72226075 154 +591058.49143609 4259989.72226075 154 +591060.48723383 4259989.72226075 154 +591062.48303156 4259989.72226075 154 +591064.47882929 4259989.72226075 154 +591066.47462702 4259989.72226075 154 +591068.47042474 4259989.72226075 154 +591070.46622248 4259989.72226075 154 +591072.4620202 4259989.72226075 154 +591074.45781794 4259989.72226075 154 +591076.45361566 4259989.72226075 154 +591078.4494134 4259989.72226075 154 +591080.44521113 4259989.72226075 154 +591082.44100886 4259989.72226075 154 +591084.43680659 4259989.72226075 154 +591086.43260431 4259989.72226075 154 +591088.42840205 4259989.72226075 154 +591090.42419977 4259989.72226075 154 +591092.41999751 4259989.72226075 154 +591094.41579523 4259989.72226075 154 +591096.41159297 4259989.72226075 154 +591098.4073907 4259989.72226075 154 +591100.40318842 4259989.72226075 154 +591102.39898616 4259989.72226075 154 +591104.39478388 4259989.72226075 154 +591106.39058162 4259989.72226075 154 +591108.38637934 4259989.72226075 154 +591110.38217708 4259989.72226075 154 +591112.37797481 4259989.72226075 154 +591114.37377254 4259989.72226075 154 +591116.36957027 4259989.72226075 154 +591158.28132259 4259989.72226075 152 +591160.27712033 4259989.72226075 152 +591180.23509763 4259989.72226075 150 +591192.20988401 4259989.72226075 150 +591202.18887266 4259989.72226075 152 +591240.10902952 4259989.72226075 152 +591250.08801817 4259989.72226075 150 +591262.06280455 4259989.72226075 148 +591282.02078185 4259989.72226075 146 +591297.9871637 4259989.72226075 144 +591315.94934327 4259989.72226075 142 +591321.93673645 4259989.72226075 140 +591030.55026788 4259987.72439054 154 +591032.54606561 4259987.72439054 154 +591034.54186334 4259987.72439054 154 +591036.53766106 4259987.72439054 154 +591038.5334588 4259987.72439054 154 +591118.36536799 4259987.72439054 154 +591120.36116573 4259987.72439054 154 +591122.35696345 4259987.72439054 154 +591124.35276119 4259987.72439054 154 +591126.34855891 4259987.72439054 154 +591128.34435665 4259987.72439054 154 +591162.27291805 4259987.72439054 152 +591182.23089535 4259987.72439054 150 +591190.21408627 4259987.72439054 150 +591202.18887266 4259987.72439054 152 +591242.10482726 4259987.72439054 152 +591250.08801817 4259987.72439054 150 +591264.05860228 4259987.72439054 148 +591282.02078185 4259987.72439054 146 +591299.98296142 4259987.72439054 144 +591315.94934327 4259987.72439054 142 +591020.57127923 4259985.72652034 154 +591022.56707695 4259985.72652034 154 +591024.56287469 4259985.72652034 154 +591026.55867241 4259985.72652034 154 +591028.55447015 4259985.72652034 154 +591128.34435665 4259985.72652034 154 +591130.34015438 4259985.72652034 154 +591132.33595211 4259985.72652034 154 +591134.33174984 4259985.72652034 154 +591164.26871579 4259985.72652034 152 +591166.26451352 4259985.72652034 152 +591182.23089535 4259985.72652034 150 +591190.21408627 4259985.72652034 150 +591202.18887266 4259985.72652034 152 +591242.10482726 4259985.72652034 152 +591252.08381591 4259985.72652034 150 +591264.05860228 4259985.72652034 148 +591284.01657959 4259985.72652034 146 +591299.98296142 4259985.72652034 144 +591317.94514099 4259985.72652034 142 +591046.51664972 4259983.72865012 156 +591048.51244745 4259983.72865012 156 +591050.50824518 4259983.72865012 156 +591052.50404291 4259983.72865012 156 +591054.49984063 4259983.72865012 156 +591056.49563837 4259983.72865012 156 +591058.49143609 4259983.72865012 156 +591060.48723383 4259983.72865012 156 +591062.48303156 4259983.72865012 156 +591064.47882929 4259983.72865012 156 +591066.47462702 4259983.72865012 156 +591068.47042474 4259983.72865012 156 +591070.46622248 4259983.72865012 156 +591072.4620202 4259983.72865012 156 +591074.45781794 4259983.72865012 156 +591076.45361566 4259983.72865012 156 +591078.4494134 4259983.72865012 156 +591080.44521113 4259983.72865012 156 +591082.44100886 4259983.72865012 156 +591084.43680659 4259983.72865012 156 +591086.43260431 4259983.72865012 156 +591088.42840205 4259983.72865012 156 +591090.42419977 4259983.72865012 156 +591136.32754756 4259983.72865012 154 +591138.3233453 4259983.72865012 154 +591140.31914302 4259983.72865012 154 +591142.31494076 4259983.72865012 154 +591168.26031124 4259983.72865012 152 +591182.23089535 4259983.72865012 150 +591188.21828855 4259983.72865012 150 +591200.19307492 4259983.72865012 152 +591214.16365903 4259983.72865012 154 +591216.15945677 4259983.72865012 154 +591218.15525449 4259983.72865012 154 +591220.15105223 4259983.72865012 154 +591222.14684995 4259983.72865012 154 +591244.10062498 4259983.72865012 152 +591252.08381591 4259983.72865012 150 +591266.05440002 4259983.72865012 148 +591286.01237731 4259983.72865012 146 +591301.97875916 4259983.72865012 144 +591317.94514099 4259983.72865012 142 +591036.53766106 4259981.73077992 156 +591038.5334588 4259981.73077992 156 +591040.52925652 4259981.73077992 156 +591042.52505426 4259981.73077992 156 +591044.52085198 4259981.73077992 156 +591092.41999751 4259981.73077992 156 +591094.41579523 4259981.73077992 156 +591096.41159297 4259981.73077992 156 +591098.4073907 4259981.73077992 156 +591100.40318842 4259981.73077992 156 +591144.31073848 4259981.73077992 154 +591146.30653622 4259981.73077992 154 +591148.30233395 4259981.73077992 154 +591170.25610898 4259981.73077992 152 +591184.22669309 4259981.73077992 150 +591186.22249081 4259981.73077992 150 +591200.19307492 4259981.73077992 152 +591210.17206358 4259981.73077992 154 +591212.1678613 4259981.73077992 154 +591222.14684995 4259981.73077992 154 +591224.14264769 4259981.73077992 154 +591244.10062498 4259981.73077992 152 +591254.07961363 4259981.73077992 150 +591268.05019774 4259981.73077992 148 +591288.00817505 4259981.73077992 146 +591301.97875916 4259981.73077992 144 +591319.94093873 4259981.73077992 142 +591028.55447015 4259979.7329097 156 +591030.55026788 4259979.7329097 156 +591032.54606561 4259979.7329097 156 +591034.54186334 4259979.7329097 156 +591102.39898616 4259979.7329097 156 +591104.39478388 4259979.7329097 156 +591106.39058162 4259979.7329097 156 +591108.38637934 4259979.7329097 156 +591110.38217708 4259979.7329097 156 +591112.37797481 4259979.7329097 156 +591114.37377254 4259979.7329097 156 +591116.36957027 4259979.7329097 156 +591118.36536799 4259979.7329097 156 +591150.29813167 4259979.7329097 154 +591152.29392941 4259979.7329097 154 +591172.2519067 4259979.7329097 152 +591200.19307492 4259979.7329097 152 +591208.17626584 4259979.7329097 154 +591226.13844541 4259979.7329097 154 +591246.09642271 4259979.7329097 152 +591254.07961363 4259979.7329097 150 +591268.05019774 4259979.7329097 148 +591288.00817505 4259979.7329097 146 +591303.97455688 4259979.7329097 144 +591319.94093873 4259979.7329097 142 +591020.57127923 4259977.73503949 156 +591022.56707695 4259977.73503949 156 +591024.56287469 4259977.73503949 156 +591026.55867241 4259977.73503949 156 +591112.37797481 4259977.73503949 156 +591120.36116573 4259977.73503949 156 +591122.35696345 4259977.73503949 156 +591124.35276119 4259977.73503949 156 +591126.34855891 4259977.73503949 156 +591128.34435665 4259977.73503949 156 +591130.34015438 4259977.73503949 156 +591132.33595211 4259977.73503949 156 +591134.33174984 4259977.73503949 156 +591154.28972713 4259977.73503949 154 +591156.28552487 4259977.73503949 154 +591174.24770444 4259977.73503949 152 +591200.19307492 4259977.73503949 152 +591206.18046812 4259977.73503949 154 +591228.13424315 4259977.73503949 154 +591246.09642271 4259977.73503949 152 +591254.07961363 4259977.73503949 150 +591270.04599548 4259977.73503949 148 +591290.00397277 4259977.73503949 146 +591305.97035462 4259977.73503949 144 +591319.94093873 4259977.73503949 142 +591048.51244745 4259975.73716928 158 +591050.50824518 4259975.73716928 158 +591052.50404291 4259975.73716928 158 +591054.49984063 4259975.73716928 158 +591056.49563837 4259975.73716928 158 +591058.49143609 4259975.73716928 158 +591060.48723383 4259975.73716928 158 +591062.48303156 4259975.73716928 158 +591064.47882929 4259975.73716928 158 +591066.47462702 4259975.73716928 158 +591068.47042474 4259975.73716928 158 +591070.46622248 4259975.73716928 158 +591072.4620202 4259975.73716928 158 +591074.45781794 4259975.73716928 158 +591076.45361566 4259975.73716928 158 +591136.32754756 4259975.73716928 156 +591138.3233453 4259975.73716928 156 +591140.31914302 4259975.73716928 156 +591142.31494076 4259975.73716928 156 +591158.28132259 4259975.73716928 154 +591160.27712033 4259975.73716928 154 +591176.24350216 4259975.73716928 152 +591198.1972772 4259975.73716928 152 +591204.18467038 4259975.73716928 154 +591230.13004087 4259975.73716928 154 +591246.09642271 4259975.73716928 152 +591254.07961363 4259975.73716928 150 +591270.04599548 4259975.73716928 148 +591291.99977051 4259975.73716928 146 +591307.96615234 4259975.73716928 144 +591321.93673645 4259975.73716928 142 +591040.52925652 4259973.73929907 158 +591042.52505426 4259973.73929907 158 +591044.52085198 4259973.73929907 158 +591046.51664972 4259973.73929907 158 +591078.4494134 4259973.73929907 158 +591080.44521113 4259973.73929907 158 +591082.44100886 4259973.73929907 158 +591084.43680659 4259973.73929907 158 +591086.43260431 4259973.73929907 158 +591088.42840205 4259973.73929907 158 +591090.42419977 4259973.73929907 158 +591092.41999751 4259973.73929907 158 +591094.41579523 4259973.73929907 158 +591144.31073848 4259973.73929907 156 +591146.30653622 4259973.73929907 156 +591162.27291805 4259973.73929907 154 +591164.26871579 4259973.73929907 154 +591178.2392999 4259973.73929907 152 +591190.21408627 4259973.73929907 152 +591192.20988401 4259973.73929907 152 +591194.20568173 4259973.73929907 152 +591196.20147947 4259973.73929907 152 +591204.18467038 4259973.73929907 154 +591230.13004087 4259973.73929907 154 +591246.09642271 4259973.73929907 152 +591254.07961363 4259973.73929907 150 +591272.0417932 4259973.73929907 148 +591293.99556823 4259973.73929907 146 +591307.96615234 4259973.73929907 144 +591034.54186334 4259971.74142887 158 +591036.53766106 4259971.74142887 158 +591038.5334588 4259971.74142887 158 +591096.41159297 4259971.74142887 158 +591098.4073907 4259971.74142887 158 +591100.40318842 4259971.74142887 158 +591102.39898616 4259971.74142887 158 +591104.39478388 4259971.74142887 158 +591106.39058162 4259971.74142887 158 +591108.38637934 4259971.74142887 158 +591110.38217708 4259971.74142887 158 +591148.30233395 4259971.74142887 156 +591150.29813167 4259971.74142887 156 +591166.26451352 4259971.74142887 154 +591168.26031124 4259971.74142887 154 +591180.23509763 4259971.74142887 152 +591188.21828855 4259971.74142887 152 +591190.21408627 4259971.74142887 152 +591200.19307492 4259971.74142887 154 +591202.18887266 4259971.74142887 154 +591232.1258386 4259971.74142887 154 +591248.09222045 4259971.74142887 152 +591256.07541137 4259971.74142887 150 +591274.03759094 4259971.74142887 148 +591293.99556823 4259971.74142887 146 +591309.96195007 4259971.74142887 144 +591311.9577478 4259971.74142887 144 +591026.55867241 4259969.74355865 158 +591028.55447015 4259969.74355865 158 +591030.55026788 4259969.74355865 158 +591032.54606561 4259969.74355865 158 +591056.49563837 4259969.74355865 160 +591058.49143609 4259969.74355865 160 +591060.48723383 4259969.74355865 160 +591062.48303156 4259969.74355865 160 +591064.47882929 4259969.74355865 160 +591066.47462702 4259969.74355865 160 +591068.47042474 4259969.74355865 160 +591070.46622248 4259969.74355865 160 +591072.4620202 4259969.74355865 160 +591112.37797481 4259969.74355865 158 +591114.37377254 4259969.74355865 158 +591116.36957027 4259969.74355865 158 +591118.36536799 4259969.74355865 158 +591120.36116573 4259969.74355865 158 +591152.29392941 4259969.74355865 156 +591154.28972713 4259969.74355865 156 +591170.25610898 4259969.74355865 154 +591172.2519067 4259969.74355865 154 +591180.23509763 4259969.74355865 152 +591186.22249081 4259969.74355865 152 +591188.21828855 4259969.74355865 152 +591196.20147947 4259969.74355865 154 +591198.1972772 4259969.74355865 154 +591206.18046812 4259969.74355865 156 +591208.17626584 4259969.74355865 156 +591210.17206358 4259969.74355865 156 +591212.1678613 4259969.74355865 156 +591214.16365903 4259969.74355865 156 +591216.15945677 4259969.74355865 156 +591218.15525449 4259969.74355865 156 +591234.12163634 4259969.74355865 154 +591248.09222045 4259969.74355865 152 +591256.07541137 4259969.74355865 150 +591276.03338866 4259969.74355865 148 +591295.99136596 4259969.74355865 146 +591311.9577478 4259969.74355865 144 +591313.95354553 4259969.74355865 144 +591020.57127923 4259967.74568844 158 +591022.56707695 4259967.74568844 158 +591024.56287469 4259967.74568844 158 +591050.50824518 4259967.74568844 160 +591052.50404291 4259967.74568844 160 +591054.49984063 4259967.74568844 160 +591074.45781794 4259967.74568844 160 +591076.45361566 4259967.74568844 160 +591078.4494134 4259967.74568844 160 +591080.44521113 4259967.74568844 160 +591082.44100886 4259967.74568844 160 +591122.35696345 4259967.74568844 158 +591124.35276119 4259967.74568844 158 +591126.34855891 4259967.74568844 158 +591156.28552487 4259967.74568844 156 +591158.28132259 4259967.74568844 156 +591160.27712033 4259967.74568844 156 +591174.24770444 4259967.74568844 154 +591182.23089535 4259967.74568844 152 +591184.22669309 4259967.74568844 152 +591194.20568173 4259967.74568844 154 +591202.18887266 4259967.74568844 156 +591204.18467038 4259967.74568844 156 +591220.15105223 4259967.74568844 156 +591222.14684995 4259967.74568844 156 +591234.12163634 4259967.74568844 154 +591248.09222045 4259967.74568844 152 +591256.07541137 4259967.74568844 150 +591276.03338866 4259967.74568844 148 +591297.9871637 4259967.74568844 146 +591315.94934327 4259967.74568844 144 +591046.51664972 4259965.74781823 160 +591048.51244745 4259965.74781823 160 +591054.49984063 4259965.74781823 162 +591056.49563837 4259965.74781823 162 +591058.49143609 4259965.74781823 162 +591060.48723383 4259965.74781823 162 +591062.48303156 4259965.74781823 162 +591064.47882929 4259965.74781823 162 +591066.47462702 4259965.74781823 162 +591068.47042474 4259965.74781823 162 +591070.46622248 4259965.74781823 162 +591072.4620202 4259965.74781823 162 +591074.45781794 4259965.74781823 162 +591076.45361566 4259965.74781823 162 +591078.4494134 4259965.74781823 162 +591080.44521113 4259965.74781823 162 +591082.44100886 4259965.74781823 162 +591084.43680659 4259965.74781823 160 +591086.43260431 4259965.74781823 160 +591088.42840205 4259965.74781823 160 +591090.42419977 4259965.74781823 160 +591092.41999751 4259965.74781823 160 +591126.34855891 4259965.74781823 158 +591128.34435665 4259965.74781823 158 +591130.34015438 4259965.74781823 158 +591162.27291805 4259965.74781823 156 +591164.26871579 4259965.74781823 156 +591166.26451352 4259965.74781823 156 +591168.26031124 4259965.74781823 156 +591176.24350216 4259965.74781823 154 +591178.2392999 4259965.74781823 154 +591192.20988401 4259965.74781823 154 +591198.1972772 4259965.74781823 156 +591200.19307492 4259965.74781823 156 +591224.14264769 4259965.74781823 156 +591236.11743406 4259965.74781823 154 +591248.09222045 4259965.74781823 152 +591256.07541137 4259965.74781823 150 +591278.02918639 4259965.74781823 148 +591297.9871637 4259965.74781823 146 +591317.94514099 4259965.74781823 144 +591044.52085198 4259963.74994802 160 +591052.50404291 4259963.74994802 162 +591054.49984063 4259963.74994802 162 +591084.43680659 4259963.74994802 162 +591086.43260431 4259963.74994802 162 +591088.42840205 4259963.74994802 162 +591090.42419977 4259963.74994802 162 +591092.41999751 4259963.74994802 162 +591094.41579523 4259963.74994802 160 +591096.41159297 4259963.74994802 160 +591098.4073907 4259963.74994802 160 +591100.40318842 4259963.74994802 160 +591102.39898616 4259963.74994802 160 +591104.39478388 4259963.74994802 160 +591132.33595211 4259963.74994802 158 +591134.33174984 4259963.74994802 158 +591168.26031124 4259963.74994802 156 +591170.25610898 4259963.74994802 156 +591172.2519067 4259963.74994802 156 +591180.23509763 4259963.74994802 154 +591190.21408627 4259963.74994802 154 +591196.20147947 4259963.74994802 156 +591226.13844541 4259963.74994802 156 +591236.11743406 4259963.74994802 154 +591250.08801817 4259963.74994802 152 +591256.07541137 4259963.74994802 150 +591280.02498412 4259963.74994802 148 +591299.98296142 4259963.74994802 146 +591319.94093873 4259963.74994802 144 +591042.52505426 4259961.75207782 160 +591048.51244745 4259961.75207782 162 +591050.50824518 4259961.75207782 162 +591094.41579523 4259961.75207782 162 +591096.41159297 4259961.75207782 162 +591098.4073907 4259961.75207782 162 +591100.40318842 4259961.75207782 162 +591106.39058162 4259961.75207782 160 +591108.38637934 4259961.75207782 160 +591110.38217708 4259961.75207782 160 +591112.37797481 4259961.75207782 160 +591114.37377254 4259961.75207782 160 +591136.32754756 4259961.75207782 158 +591138.3233453 4259961.75207782 158 +591174.24770444 4259961.75207782 156 +591176.24350216 4259961.75207782 156 +591182.23089535 4259961.75207782 154 +591188.21828855 4259961.75207782 154 +591194.20568173 4259961.75207782 156 +591226.13844541 4259961.75207782 156 +591238.1132318 4259961.75207782 154 +591250.08801817 4259961.75207782 152 +591258.07120909 4259961.75207782 150 +591260.06700683 4259961.75207782 150 +591280.02498412 4259961.75207782 148 +591301.97875916 4259961.75207782 146 +591321.93673645 4259961.75207782 144 +591040.52925652 4259959.7542076 160 +591046.51664972 4259959.7542076 162 +591056.49563837 4259959.7542076 164 +591058.49143609 4259959.7542076 164 +591060.48723383 4259959.7542076 164 +591062.48303156 4259959.7542076 164 +591064.47882929 4259959.7542076 164 +591066.47462702 4259959.7542076 164 +591068.47042474 4259959.7542076 164 +591070.46622248 4259959.7542076 164 +591072.4620202 4259959.7542076 164 +591074.45781794 4259959.7542076 164 +591076.45361566 4259959.7542076 164 +591078.4494134 4259959.7542076 164 +591080.44521113 4259959.7542076 164 +591082.44100886 4259959.7542076 164 +591084.43680659 4259959.7542076 164 +591086.43260431 4259959.7542076 164 +591088.42840205 4259959.7542076 164 +591102.39898616 4259959.7542076 162 +591104.39478388 4259959.7542076 162 +591106.39058162 4259959.7542076 162 +591116.36957027 4259959.7542076 160 +591118.36536799 4259959.7542076 160 +591120.36116573 4259959.7542076 160 +591140.31914302 4259959.7542076 158 +591142.31494076 4259959.7542076 158 +591178.2392999 4259959.7542076 156 +591184.22669309 4259959.7542076 154 +591186.22249081 4259959.7542076 154 +591194.20568173 4259959.7542076 156 +591228.13424315 4259959.7542076 156 +591238.1132318 4259959.7542076 154 +591240.10902952 4259959.7542076 154 +591250.08801817 4259959.7542076 152 +591258.07120909 4259959.7542076 150 +591260.06700683 4259959.7542076 150 +591282.02078185 4259959.7542076 148 +591303.97455688 4259959.7542076 146 +591036.53766106 4259957.75633739 160 +591038.5334588 4259957.75633739 160 +591044.52085198 4259957.75633739 162 +591050.50824518 4259957.75633739 164 +591052.50404291 4259957.75633739 164 +591054.49984063 4259957.75633739 164 +591090.42419977 4259957.75633739 164 +591092.41999751 4259957.75633739 164 +591094.41579523 4259957.75633739 164 +591096.41159297 4259957.75633739 164 +591098.4073907 4259957.75633739 164 +591100.40318842 4259957.75633739 164 +591108.38637934 4259957.75633739 162 +591110.38217708 4259957.75633739 162 +591112.37797481 4259957.75633739 162 +591114.37377254 4259957.75633739 162 +591122.35696345 4259957.75633739 160 +591124.35276119 4259957.75633739 160 +591126.34855891 4259957.75633739 160 +591128.34435665 4259957.75633739 160 +591144.31073848 4259957.75633739 158 +591146.30653622 4259957.75633739 158 +591180.23509763 4259957.75633739 156 +591184.22669309 4259957.75633739 154 +591192.20988401 4259957.75633739 156 +591230.13004087 4259957.75633739 156 +591240.10902952 4259957.75633739 154 +591250.08801817 4259957.75633739 152 +591252.08381591 4259957.75633739 152 +591258.07120909 4259957.75633739 150 +591260.06700683 4259957.75633739 150 +591262.06280455 4259957.75633739 150 +591282.02078185 4259957.75633739 148 +591305.97035462 4259957.75633739 146 +591034.54186334 4259955.75846718 160 +591040.52925652 4259955.75846718 162 +591042.52505426 4259955.75846718 162 +591046.51664972 4259955.75846718 164 +591048.51244745 4259955.75846718 164 +591054.49984063 4259955.75846718 166 +591056.49563837 4259955.75846718 166 +591058.49143609 4259955.75846718 166 +591060.48723383 4259955.75846718 166 +591062.48303156 4259955.75846718 166 +591064.47882929 4259955.75846718 166 +591066.47462702 4259955.75846718 166 +591068.47042474 4259955.75846718 166 +591070.46622248 4259955.75846718 166 +591072.4620202 4259955.75846718 166 +591074.45781794 4259955.75846718 166 +591076.45361566 4259955.75846718 166 +591078.4494134 4259955.75846718 166 +591080.44521113 4259955.75846718 166 +591082.44100886 4259955.75846718 166 +591084.43680659 4259955.75846718 166 +591086.43260431 4259955.75846718 166 +591088.42840205 4259955.75846718 166 +591090.42419977 4259955.75846718 166 +591092.41999751 4259955.75846718 166 +591094.41579523 4259955.75846718 166 +591102.39898616 4259955.75846718 164 +591104.39478388 4259955.75846718 164 +591106.39058162 4259955.75846718 164 +591108.38637934 4259955.75846718 164 +591110.38217708 4259955.75846718 164 +591116.36957027 4259955.75846718 162 +591118.36536799 4259955.75846718 162 +591120.36116573 4259955.75846718 162 +591122.35696345 4259955.75846718 162 +591128.34435665 4259955.75846718 160 +591130.34015438 4259955.75846718 160 +591132.33595211 4259955.75846718 160 +591148.30233395 4259955.75846718 158 +591150.29813167 4259955.75846718 158 +591152.29392941 4259955.75846718 158 +591180.23509763 4259955.75846718 156 +591190.21408627 4259955.75846718 156 +591230.13004087 4259955.75846718 156 +591240.10902952 4259955.75846718 154 +591252.08381591 4259955.75846718 152 +591262.06280455 4259955.75846718 150 +591284.01657959 4259955.75846718 148 +591307.96615234 4259955.75846718 146 +591034.54186334 4259953.76059697 160 +591038.5334588 4259953.76059697 162 +591044.52085198 4259953.76059697 164 +591048.51244745 4259953.76059697 166 +591050.50824518 4259953.76059697 166 +591052.50404291 4259953.76059697 166 +591060.48723383 4259953.76059697 168 +591062.48303156 4259953.76059697 168 +591064.47882929 4259953.76059697 168 +591066.47462702 4259953.76059697 168 +591068.47042474 4259953.76059697 168 +591070.46622248 4259953.76059697 168 +591072.4620202 4259953.76059697 168 +591074.45781794 4259953.76059697 168 +591076.45361566 4259953.76059697 168 +591078.4494134 4259953.76059697 168 +591080.44521113 4259953.76059697 168 +591082.44100886 4259953.76059697 168 +591084.43680659 4259953.76059697 168 +591096.41159297 4259953.76059697 166 +591098.4073907 4259953.76059697 166 +591100.40318842 4259953.76059697 166 +591102.39898616 4259953.76059697 166 +591104.39478388 4259953.76059697 166 +591112.37797481 4259953.76059697 164 +591114.37377254 4259953.76059697 164 +591116.36957027 4259953.76059697 164 +591124.35276119 4259953.76059697 162 +591126.34855891 4259953.76059697 162 +591128.34435665 4259953.76059697 162 +591134.33174984 4259953.76059697 160 +591136.32754756 4259953.76059697 160 +591154.28972713 4259953.76059697 158 +591156.28552487 4259953.76059697 158 +591158.28132259 4259953.76059697 158 +591160.27712033 4259953.76059697 158 +591162.27291805 4259953.76059697 158 +591182.23089535 4259953.76059697 156 +591188.21828855 4259953.76059697 156 +591232.1258386 4259953.76059697 156 +591242.10482726 4259953.76059697 154 +591252.08381591 4259953.76059697 152 +591262.06280455 4259953.76059697 150 +591286.01237731 4259953.76059697 148 +591309.96195007 4259953.76059697 146 +591311.9577478 4259953.76059697 146 +591030.55026788 4259951.76272677 160 +591032.54606561 4259951.76272677 160 +591036.53766106 4259951.76272677 162 +591040.52925652 4259951.76272677 164 +591042.52505426 4259951.76272677 164 +591046.51664972 4259951.76272677 166 +591054.49984063 4259951.76272677 168 +591056.49563837 4259951.76272677 168 +591058.49143609 4259951.76272677 168 +591068.47042474 4259951.76272677 170 +591070.46622248 4259951.76272677 170 +591072.4620202 4259951.76272677 170 +591074.45781794 4259951.76272677 170 +591076.45361566 4259951.76272677 170 +591078.4494134 4259951.76272677 170 +591086.43260431 4259951.76272677 168 +591088.42840205 4259951.76272677 168 +591090.42419977 4259951.76272677 168 +591092.41999751 4259951.76272677 168 +591106.39058162 4259951.76272677 166 +591108.38637934 4259951.76272677 166 +591110.38217708 4259951.76272677 166 +591112.37797481 4259951.76272677 166 +591118.36536799 4259951.76272677 164 +591120.36116573 4259951.76272677 164 +591122.35696345 4259951.76272677 164 +591130.34015438 4259951.76272677 162 +591132.33595211 4259951.76272677 162 +591138.3233453 4259951.76272677 160 +591140.31914302 4259951.76272677 160 +591164.26871579 4259951.76272677 158 +591166.26451352 4259951.76272677 158 +591168.26031124 4259951.76272677 158 +591170.25610898 4259951.76272677 158 +591172.2519067 4259951.76272677 158 +591182.23089535 4259951.76272677 156 +591184.22669309 4259951.76272677 156 +591186.22249081 4259951.76272677 156 +591198.1972772 4259951.76272677 158 +591200.19307492 4259951.76272677 158 +591202.18887266 4259951.76272677 158 +591204.18467038 4259951.76272677 158 +591206.18046812 4259951.76272677 158 +591208.17626584 4259951.76272677 158 +591210.17206358 4259951.76272677 158 +591212.1678613 4259951.76272677 158 +591234.12163634 4259951.76272677 156 +591242.10482726 4259951.76272677 154 +591252.08381591 4259951.76272677 152 +591264.05860228 4259951.76272677 150 +591288.00817505 4259951.76272677 148 +591311.9577478 4259951.76272677 146 +591020.57127923 4259949.76485655 160 +591022.56707695 4259949.76485655 160 +591024.56287469 4259949.76485655 160 +591026.55867241 4259949.76485655 160 +591028.55447015 4259949.76485655 160 +591034.54186334 4259949.76485655 162 +591038.5334588 4259949.76485655 164 +591044.52085198 4259949.76485655 166 +591052.50404291 4259949.76485655 168 +591058.49143609 4259949.76485655 170 +591060.48723383 4259949.76485655 170 +591062.48303156 4259949.76485655 170 +591064.47882929 4259949.76485655 170 +591066.47462702 4259949.76485655 170 +591080.44521113 4259949.76485655 170 +591082.44100886 4259949.76485655 170 +591084.43680659 4259949.76485655 170 +591086.43260431 4259949.76485655 170 +591088.42840205 4259949.76485655 170 +591094.41579523 4259949.76485655 168 +591096.41159297 4259949.76485655 168 +591098.4073907 4259949.76485655 168 +591100.40318842 4259949.76485655 168 +591102.39898616 4259949.76485655 168 +591104.39478388 4259949.76485655 168 +591114.37377254 4259949.76485655 166 +591116.36957027 4259949.76485655 166 +591118.36536799 4259949.76485655 166 +591120.36116573 4259949.76485655 166 +591124.35276119 4259949.76485655 164 +591126.34855891 4259949.76485655 164 +591128.34435665 4259949.76485655 164 +591134.33174984 4259949.76485655 162 +591136.32754756 4259949.76485655 162 +591142.31494076 4259949.76485655 160 +591144.31073848 4259949.76485655 160 +591146.30653622 4259949.76485655 160 +591172.2519067 4259949.76485655 158 +591184.22669309 4259949.76485655 156 +591192.20988401 4259949.76485655 158 +591194.20568173 4259949.76485655 158 +591196.20147947 4259949.76485655 158 +591214.16365903 4259949.76485655 158 +591236.11743406 4259949.76485655 156 +591244.10062498 4259949.76485655 154 +591254.07961363 4259949.76485655 152 +591266.05440002 4259949.76485655 150 +591290.00397277 4259949.76485655 148 +591313.95354553 4259949.76485655 146 +591030.55026788 4259947.76698634 162 +591032.54606561 4259947.76698634 162 +591038.5334588 4259947.76698634 164 +591042.52505426 4259947.76698634 166 +591050.50824518 4259947.76698634 168 +591056.49563837 4259947.76698634 170 +591066.47462702 4259947.76698634 172 +591068.47042474 4259947.76698634 172 +591070.46622248 4259947.76698634 172 +591072.4620202 4259947.76698634 172 +591074.45781794 4259947.76698634 172 +591076.45361566 4259947.76698634 172 +591078.4494134 4259947.76698634 172 +591080.44521113 4259947.76698634 172 +591082.44100886 4259947.76698634 172 +591090.42419977 4259947.76698634 170 +591092.41999751 4259947.76698634 170 +591094.41579523 4259947.76698634 170 +591096.41159297 4259947.76698634 170 +591106.39058162 4259947.76698634 168 +591108.38637934 4259947.76698634 168 +591110.38217708 4259947.76698634 168 +591112.37797481 4259947.76698634 168 +591122.35696345 4259947.76698634 166 +591124.35276119 4259947.76698634 166 +591130.34015438 4259947.76698634 164 +591132.33595211 4259947.76698634 164 +591138.3233453 4259947.76698634 162 +591140.31914302 4259947.76698634 162 +591142.31494076 4259947.76698634 162 +591148.30233395 4259947.76698634 160 +591150.29813167 4259947.76698634 160 +591174.24770444 4259947.76698634 158 +591188.21828855 4259947.76698634 158 +591190.21408627 4259947.76698634 158 +591216.15945677 4259947.76698634 158 +591218.15525449 4259947.76698634 158 +591238.1132318 4259947.76698634 156 +591240.10902952 4259947.76698634 156 +591244.10062498 4259947.76698634 154 +591254.07961363 4259947.76698634 152 +591268.05019774 4259947.76698634 150 +591290.00397277 4259947.76698634 148 +591313.95354553 4259947.76698634 146 +591026.55867241 4259945.76911613 162 +591028.55447015 4259945.76911613 162 +591030.55026788 4259945.76911613 162 +591036.53766106 4259945.76911613 164 +591038.5334588 4259945.76911613 166 +591040.52925652 4259945.76911613 166 +591048.51244745 4259945.76911613 168 +591054.49984063 4259945.76911613 170 +591062.48303156 4259945.76911613 172 +591064.47882929 4259945.76911613 172 +591084.43680659 4259945.76911613 172 +591086.43260431 4259945.76911613 172 +591088.42840205 4259945.76911613 172 +591090.42419977 4259945.76911613 172 +591092.41999751 4259945.76911613 172 +591094.41579523 4259945.76911613 172 +591096.41159297 4259945.76911613 172 +591098.4073907 4259945.76911613 170 +591100.40318842 4259945.76911613 170 +591102.39898616 4259945.76911613 170 +591104.39478388 4259945.76911613 170 +591106.39058162 4259945.76911613 170 +591114.37377254 4259945.76911613 168 +591116.36957027 4259945.76911613 168 +591118.36536799 4259945.76911613 168 +591126.34855891 4259945.76911613 166 +591128.34435665 4259945.76911613 166 +591134.33174984 4259945.76911613 164 +591136.32754756 4259945.76911613 164 +591144.31073848 4259945.76911613 162 +591146.30653622 4259945.76911613 162 +591152.29392941 4259945.76911613 160 +591154.28972713 4259945.76911613 160 +591174.24770444 4259945.76911613 158 +591184.22669309 4259945.76911613 158 +591186.22249081 4259945.76911613 158 +591220.15105223 4259945.76911613 158 +591242.10482726 4259945.76911613 156 +591246.09642271 4259945.76911613 154 +591256.07541137 4259945.76911613 152 +591258.07120909 4259945.76911613 152 +591260.06700683 4259945.76911613 152 +591268.05019774 4259945.76911613 150 +591291.99977051 4259945.76911613 148 +591313.95354553 4259945.76911613 146 +591020.57127923 4259943.77124592 162 +591022.56707695 4259943.77124592 162 +591024.56287469 4259943.77124592 162 +591034.54186334 4259943.77124592 164 +591036.53766106 4259943.77124592 166 +591046.51664972 4259943.77124592 168 +591050.50824518 4259943.77124592 170 +591052.50404291 4259943.77124592 170 +591058.49143609 4259943.77124592 172 +591060.48723383 4259943.77124592 172 +591070.46622248 4259943.77124592 174 +591072.4620202 4259943.77124592 174 +591074.45781794 4259943.77124592 174 +591076.45361566 4259943.77124592 174 +591078.4494134 4259943.77124592 174 +591080.44521113 4259943.77124592 174 +591102.39898616 4259943.77124592 172 +591104.39478388 4259943.77124592 172 +591108.38637934 4259943.77124592 170 +591110.38217708 4259943.77124592 170 +591112.37797481 4259943.77124592 170 +591120.36116573 4259943.77124592 168 +591122.35696345 4259943.77124592 168 +591130.34015438 4259943.77124592 166 +591132.33595211 4259943.77124592 166 +591138.3233453 4259943.77124592 164 +591140.31914302 4259943.77124592 164 +591148.30233395 4259943.77124592 162 +591150.29813167 4259943.77124592 162 +591156.28552487 4259943.77124592 160 +591158.28132259 4259943.77124592 160 +591174.24770444 4259943.77124592 158 +591182.23089535 4259943.77124592 158 +591198.1972772 4259943.77124592 160 +591200.19307492 4259943.77124592 160 +591202.18887266 4259943.77124592 160 +591204.18467038 4259943.77124592 160 +591222.14684995 4259943.77124592 158 +591244.10062498 4259943.77124592 156 +591248.09222045 4259943.77124592 154 +591250.08801817 4259943.77124592 154 +591262.06280455 4259943.77124592 152 +591270.04599548 4259943.77124592 150 +591272.0417932 4259943.77124592 150 +591293.99556823 4259943.77124592 148 +591315.94934327 4259943.77124592 146 +591032.54606561 4259941.77337572 164 +591034.54186334 4259941.77337572 166 +591044.52085198 4259941.77337572 168 +591048.51244745 4259941.77337572 170 +591056.49563837 4259941.77337572 172 +591064.47882929 4259941.77337572 174 +591066.47462702 4259941.77337572 174 +591068.47042474 4259941.77337572 174 +591080.44521113 4259941.77337572 174 +591082.44100886 4259941.77337572 174 +591084.43680659 4259941.77337572 174 +591086.43260431 4259941.77337572 174 +591088.42840205 4259941.77337572 174 +591090.42419977 4259941.77337572 174 +591092.41999751 4259941.77337572 174 +591094.41579523 4259941.77337572 174 +591096.41159297 4259941.77337572 174 +591098.4073907 4259941.77337572 174 +591100.40318842 4259941.77337572 174 +591102.39898616 4259941.77337572 174 +591106.39058162 4259941.77337572 172 +591108.38637934 4259941.77337572 172 +591110.38217708 4259941.77337572 172 +591114.37377254 4259941.77337572 170 +591116.36957027 4259941.77337572 170 +591124.35276119 4259941.77337572 168 +591134.33174984 4259941.77337572 166 +591142.31494076 4259941.77337572 164 +591144.31073848 4259941.77337572 164 +591152.29392941 4259941.77337572 162 +591154.28972713 4259941.77337572 162 +591160.27712033 4259941.77337572 160 +591162.27291805 4259941.77337572 160 +591174.24770444 4259941.77337572 158 +591178.2392999 4259941.77337572 158 +591180.23509763 4259941.77337572 158 +591190.21408627 4259941.77337572 160 +591192.20988401 4259941.77337572 160 +591194.20568173 4259941.77337572 160 +591196.20147947 4259941.77337572 160 +591206.18046812 4259941.77337572 160 +591208.17626584 4259941.77337572 160 +591210.17206358 4259941.77337572 160 +591224.14264769 4259941.77337572 158 +591246.09642271 4259941.77337572 156 +591248.09222045 4259941.77337572 156 +591252.08381591 4259941.77337572 154 +591264.05860228 4259941.77337572 152 +591274.03759094 4259941.77337572 150 +591295.99136596 4259941.77337572 148 +591315.94934327 4259941.77337572 146 +591030.55026788 4259939.7755055 164 +591034.54186334 4259939.7755055 166 +591042.52505426 4259939.7755055 168 +591046.51664972 4259939.7755055 170 +591048.51244745 4259939.7755055 170 +591054.49984063 4259939.7755055 172 +591062.48303156 4259939.7755055 174 +591068.47042474 4259939.7755055 176 +591070.46622248 4259939.7755055 176 +591072.4620202 4259939.7755055 176 +591074.45781794 4259939.7755055 176 +591076.45361566 4259939.7755055 176 +591078.4494134 4259939.7755055 176 +591080.44521113 4259939.7755055 176 +591104.39478388 4259939.7755055 174 +591106.39058162 4259939.7755055 174 +591108.38637934 4259939.7755055 174 +591112.37797481 4259939.7755055 172 +591114.37377254 4259939.7755055 172 +591118.36536799 4259939.7755055 170 +591120.36116573 4259939.7755055 170 +591126.34855891 4259939.7755055 168 +591136.32754756 4259939.7755055 166 +591138.3233453 4259939.7755055 166 +591146.30653622 4259939.7755055 164 +591148.30233395 4259939.7755055 164 +591156.28552487 4259939.7755055 162 +591164.26871579 4259939.7755055 160 +591174.24770444 4259939.7755055 158 +591176.24350216 4259939.7755055 158 +591184.22669309 4259939.7755055 160 +591186.22249081 4259939.7755055 160 +591188.21828855 4259939.7755055 160 +591212.1678613 4259939.7755055 160 +591226.13844541 4259939.7755055 158 +591228.13424315 4259939.7755055 158 +591250.08801817 4259939.7755055 156 +591252.08381591 4259939.7755055 156 +591254.07961363 4259939.7755055 154 +591256.07541137 4259939.7755055 154 +591258.07120909 4259939.7755055 154 +591260.06700683 4259939.7755055 154 +591266.05440002 4259939.7755055 152 +591276.03338866 4259939.7755055 150 +591297.9871637 4259939.7755055 148 +591317.94514099 4259939.7755055 146 +591028.55447015 4259937.77763529 164 +591032.54606561 4259937.77763529 166 +591040.52925652 4259937.77763529 168 +591044.52085198 4259937.77763529 170 +591052.50404291 4259937.77763529 172 +591058.49143609 4259937.77763529 174 +591060.48723383 4259937.77763529 174 +591064.47882929 4259937.77763529 176 +591066.47462702 4259937.77763529 176 +591070.46622248 4259937.77763529 178 +591072.4620202 4259937.77763529 178 +591074.45781794 4259937.77763529 178 +591076.45361566 4259937.77763529 178 +591078.4494134 4259937.77763529 178 +591080.44521113 4259937.77763529 178 +591082.44100886 4259937.77763529 176 +591084.43680659 4259937.77763529 176 +591086.43260431 4259937.77763529 176 +591088.42840205 4259937.77763529 176 +591090.42419977 4259937.77763529 176 +591092.41999751 4259937.77763529 176 +591094.41579523 4259937.77763529 176 +591096.41159297 4259937.77763529 176 +591098.4073907 4259937.77763529 176 +591100.40318842 4259937.77763529 176 +591102.39898616 4259937.77763529 176 +591110.38217708 4259937.77763529 174 +591116.36957027 4259937.77763529 172 +591118.36536799 4259937.77763529 172 +591122.35696345 4259937.77763529 170 +591128.34435665 4259937.77763529 168 +591140.31914302 4259937.77763529 166 +591150.29813167 4259937.77763529 164 +591158.28132259 4259937.77763529 162 +591164.26871579 4259937.77763529 160 +591180.23509763 4259937.77763529 160 +591182.23089535 4259937.77763529 160 +591214.16365903 4259937.77763529 160 +591230.13004087 4259937.77763529 158 +591232.1258386 4259937.77763529 158 +591234.12163634 4259937.77763529 158 +591254.07961363 4259937.77763529 156 +591256.07541137 4259937.77763529 156 +591262.06280455 4259937.77763529 154 +591264.05860228 4259937.77763529 154 +591268.05019774 4259937.77763529 152 +591270.04599548 4259937.77763529 152 +591278.02918639 4259937.77763529 150 +591280.02498412 4259937.77763529 150 +591299.98296142 4259937.77763529 148 +591317.94514099 4259937.77763529 146 +591024.56287469 4259935.77976508 164 +591026.55867241 4259935.77976508 164 +591030.55026788 4259935.77976508 166 +591036.53766106 4259935.77976508 168 +591038.5334588 4259935.77976508 168 +591044.52085198 4259935.77976508 170 +591050.50824518 4259935.77976508 172 +591056.49563837 4259935.77976508 174 +591060.48723383 4259935.77976508 176 +591062.48303156 4259935.77976508 176 +591066.47462702 4259935.77976508 178 +591068.47042474 4259935.77976508 178 +591074.45781794 4259935.77976508 180 +591076.45361566 4259935.77976508 180 +591082.44100886 4259935.77976508 178 +591084.43680659 4259935.77976508 178 +591086.43260431 4259935.77976508 178 +591088.42840205 4259935.77976508 178 +591090.42419977 4259935.77976508 178 +591092.41999751 4259935.77976508 178 +591094.41579523 4259935.77976508 178 +591104.39478388 4259935.77976508 176 +591106.39058162 4259935.77976508 176 +591112.37797481 4259935.77976508 174 +591114.37377254 4259935.77976508 174 +591120.36116573 4259935.77976508 172 +591124.35276119 4259935.77976508 170 +591126.34855891 4259935.77976508 170 +591130.34015438 4259935.77976508 168 +591132.33595211 4259935.77976508 168 +591142.31494076 4259935.77976508 166 +591152.29392941 4259935.77976508 164 +591160.27712033 4259935.77976508 162 +591164.26871579 4259935.77976508 160 +591174.24770444 4259935.77976508 160 +591176.24350216 4259935.77976508 160 +591178.2392999 4259935.77976508 160 +591188.21828855 4259935.77976508 162 +591190.21408627 4259935.77976508 162 +591192.20988401 4259935.77976508 162 +591194.20568173 4259935.77976508 162 +591196.20147947 4259935.77976508 162 +591198.1972772 4259935.77976508 162 +591200.19307492 4259935.77976508 162 +591216.15945677 4259935.77976508 160 +591236.11743406 4259935.77976508 158 +591238.1132318 4259935.77976508 158 +591240.10902952 4259935.77976508 158 +591242.10482726 4259935.77976508 158 +591244.10062498 4259935.77976508 158 +591246.09642271 4259935.77976508 158 +591248.09222045 4259935.77976508 158 +591258.07120909 4259935.77976508 156 +591260.06700683 4259935.77976508 156 +591262.06280455 4259935.77976508 156 +591266.05440002 4259935.77976508 154 +591268.05019774 4259935.77976508 154 +591272.0417932 4259935.77976508 152 +591282.02078185 4259935.77976508 150 +591301.97875916 4259935.77976508 148 +591319.94093873 4259935.77976508 146 +591020.57127923 4259933.78189487 164 +591022.56707695 4259933.78189487 164 +591028.55447015 4259933.78189487 166 +591034.54186334 4259933.78189487 168 +591042.52505426 4259933.78189487 170 +591048.51244745 4259933.78189487 172 +591054.49984063 4259933.78189487 174 +591058.49143609 4259933.78189487 176 +591064.47882929 4259933.78189487 178 +591070.46622248 4259933.78189487 180 +591072.4620202 4259933.78189487 180 +591074.45781794 4259933.78189487 180 +591078.4494134 4259933.78189487 180 +591080.44521113 4259933.78189487 180 +591082.44100886 4259933.78189487 180 +591084.43680659 4259933.78189487 180 +591086.43260431 4259933.78189487 180 +591088.42840205 4259933.78189487 180 +591090.42419977 4259933.78189487 180 +591092.41999751 4259933.78189487 180 +591094.41579523 4259933.78189487 180 +591096.41159297 4259933.78189487 178 +591098.4073907 4259933.78189487 178 +591100.40318842 4259933.78189487 178 +591102.39898616 4259933.78189487 178 +591108.38637934 4259933.78189487 176 +591110.38217708 4259933.78189487 176 +591116.36957027 4259933.78189487 174 +591122.35696345 4259933.78189487 172 +591124.35276119 4259933.78189487 172 +591128.34435665 4259933.78189487 170 +591134.33174984 4259933.78189487 168 +591144.31073848 4259933.78189487 166 +591146.30653622 4259933.78189487 166 +591154.28972713 4259933.78189487 164 +591160.27712033 4259933.78189487 162 +591166.26451352 4259933.78189487 160 +591172.2519067 4259933.78189487 160 +591174.24770444 4259933.78189487 160 +591182.23089535 4259933.78189487 162 +591184.22669309 4259933.78189487 162 +591186.22249081 4259933.78189487 162 +591202.18887266 4259933.78189487 162 +591204.18467038 4259933.78189487 162 +591206.18046812 4259933.78189487 162 +591218.15525449 4259933.78189487 160 +591250.08801817 4259933.78189487 158 +591252.08381591 4259933.78189487 158 +591254.07961363 4259933.78189487 158 +591256.07541137 4259933.78189487 158 +591264.05860228 4259933.78189487 156 +591266.05440002 4259933.78189487 156 +591270.04599548 4259933.78189487 154 +591272.0417932 4259933.78189487 154 +591274.03759094 4259933.78189487 152 +591276.03338866 4259933.78189487 152 +591278.02918639 4259933.78189487 152 +591284.01657959 4259933.78189487 150 +591286.01237731 4259933.78189487 150 +591303.97455688 4259933.78189487 148 +591319.94093873 4259933.78189487 146 +591026.55867241 4259931.78402467 166 +591032.54606561 4259931.78402467 168 +591040.52925652 4259931.78402467 170 +591046.51664972 4259931.78402467 172 +591052.50404291 4259931.78402467 174 +591056.49563837 4259931.78402467 176 +591062.48303156 4259931.78402467 178 +591068.47042474 4259931.78402467 180 +591076.45361566 4259931.78402467 182 +591078.4494134 4259931.78402467 182 +591080.44521113 4259931.78402467 182 +591096.41159297 4259931.78402467 180 +591098.4073907 4259931.78402467 180 +591100.40318842 4259931.78402467 180 +591104.39478388 4259931.78402467 178 +591112.37797481 4259931.78402467 176 +591118.36536799 4259931.78402467 174 +591124.35276119 4259931.78402467 172 +591126.34855891 4259931.78402467 172 +591130.34015438 4259931.78402467 170 +591136.32754756 4259931.78402467 168 +591146.30653622 4259931.78402467 166 +591156.28552487 4259931.78402467 164 +591162.27291805 4259931.78402467 162 +591166.26451352 4259931.78402467 160 +591168.26031124 4259931.78402467 160 +591170.25610898 4259931.78402467 160 +591178.2392999 4259931.78402467 162 +591180.23509763 4259931.78402467 162 +591208.17626584 4259931.78402467 162 +591210.17206358 4259931.78402467 162 +591220.15105223 4259931.78402467 160 +591222.14684995 4259931.78402467 160 +591258.07120909 4259931.78402467 158 +591260.06700683 4259931.78402467 158 +591262.06280455 4259931.78402467 158 +591268.05019774 4259931.78402467 156 +591270.04599548 4259931.78402467 156 +591274.03759094 4259931.78402467 154 +591276.03338866 4259931.78402467 154 +591278.02918639 4259931.78402467 152 +591280.02498412 4259931.78402467 152 +591288.00817505 4259931.78402467 150 +591305.97035462 4259931.78402467 148 +591321.93673645 4259931.78402467 146 +591022.56707695 4259929.78615445 166 +591024.56287469 4259929.78615445 166 +591032.54606561 4259929.78615445 168 +591038.5334588 4259929.78615445 170 +591044.52085198 4259929.78615445 172 +591050.50824518 4259929.78615445 174 +591052.50404291 4259929.78615445 176 +591054.49984063 4259929.78615445 176 +591060.48723383 4259929.78615445 178 +591066.47462702 4259929.78615445 180 +591072.4620202 4259929.78615445 182 +591074.45781794 4259929.78615445 182 +591082.44100886 4259929.78615445 182 +591084.43680659 4259929.78615445 182 +591086.43260431 4259929.78615445 182 +591088.42840205 4259929.78615445 182 +591102.39898616 4259929.78615445 180 +591104.39478388 4259929.78615445 180 +591106.39058162 4259929.78615445 178 +591108.38637934 4259929.78615445 178 +591114.37377254 4259929.78615445 176 +591120.36116573 4259929.78615445 174 +591128.34435665 4259929.78615445 172 +591130.34015438 4259929.78615445 170 +591136.32754756 4259929.78615445 168 +591148.30233395 4259929.78615445 166 +591156.28552487 4259929.78615445 164 +591164.26871579 4259929.78615445 162 +591176.24350216 4259929.78615445 162 +591212.1678613 4259929.78615445 162 +591214.16365903 4259929.78615445 162 +591224.14264769 4259929.78615445 160 +591264.05860228 4259929.78615445 158 +591266.05440002 4259929.78615445 158 +591272.0417932 4259929.78615445 156 +591274.03759094 4259929.78615445 156 +591278.02918639 4259929.78615445 154 +591280.02498412 4259929.78615445 154 +591282.02078185 4259929.78615445 152 +591290.00397277 4259929.78615445 150 +591305.97035462 4259929.78615445 148 +591321.93673645 4259929.78615445 146 +591020.57127923 4259927.78828424 166 +591030.55026788 4259927.78828424 168 +591036.53766106 4259927.78828424 170 +591042.52505426 4259927.78828424 172 +591048.51244745 4259927.78828424 174 +591050.50824518 4259927.78828424 176 +591058.49143609 4259927.78828424 178 +591064.47882929 4259927.78828424 180 +591070.46622248 4259927.78828424 182 +591090.42419977 4259927.78828424 182 +591092.41999751 4259927.78828424 182 +591094.41579523 4259927.78828424 182 +591096.41159297 4259927.78828424 182 +591098.4073907 4259927.78828424 182 +591100.40318842 4259927.78828424 182 +591106.39058162 4259927.78828424 180 +591110.38217708 4259927.78828424 178 +591112.37797481 4259927.78828424 178 +591116.36957027 4259927.78828424 176 +591122.35696345 4259927.78828424 174 +591130.34015438 4259927.78828424 172 +591132.33595211 4259927.78828424 170 +591138.3233453 4259927.78828424 168 +591150.29813167 4259927.78828424 166 +591158.28132259 4259927.78828424 164 +591164.26871579 4259927.78828424 162 +591174.24770444 4259927.78828424 162 +591216.15945677 4259927.78828424 162 +591218.15525449 4259927.78828424 162 +591226.13844541 4259927.78828424 160 +591228.13424315 4259927.78828424 160 +591230.13004087 4259927.78828424 160 +591232.1258386 4259927.78828424 160 +591234.12163634 4259927.78828424 160 +591236.11743406 4259927.78828424 160 +591238.1132318 4259927.78828424 160 +591240.10902952 4259927.78828424 160 +591242.10482726 4259927.78828424 160 +591244.10062498 4259927.78828424 160 +591246.09642271 4259927.78828424 160 +591248.09222045 4259927.78828424 160 +591250.08801817 4259927.78828424 160 +591252.08381591 4259927.78828424 160 +591254.07961363 4259927.78828424 160 +591256.07541137 4259927.78828424 160 +591258.07120909 4259927.78828424 160 +591260.06700683 4259927.78828424 160 +591268.05019774 4259927.78828424 158 +591270.04599548 4259927.78828424 158 +591276.03338866 4259927.78828424 156 +591282.02078185 4259927.78828424 154 +591284.01657959 4259927.78828424 152 +591286.01237731 4259927.78828424 152 +591291.99977051 4259927.78828424 150 +591307.96615234 4259927.78828424 148 +591028.55447015 4259925.79041403 168 +591034.54186334 4259925.79041403 170 +591042.52505426 4259925.79041403 172 +591046.51664972 4259925.79041403 174 +591048.51244745 4259925.79041403 176 +591050.50824518 4259925.79041403 176 +591056.49563837 4259925.79041403 178 +591062.48303156 4259925.79041403 180 +591068.47042474 4259925.79041403 182 +591102.39898616 4259925.79041403 182 +591104.39478388 4259925.79041403 182 +591108.38637934 4259925.79041403 180 +591110.38217708 4259925.79041403 180 +591112.37797481 4259925.79041403 178 +591114.37377254 4259925.79041403 178 +591118.36536799 4259925.79041403 176 +591124.35276119 4259925.79041403 174 +591132.33595211 4259925.79041403 172 +591134.33174984 4259925.79041403 170 +591140.31914302 4259925.79041403 168 +591150.29813167 4259925.79041403 166 +591158.28132259 4259925.79041403 164 +591164.26871579 4259925.79041403 162 +591166.26451352 4259925.79041403 162 +591172.2519067 4259925.79041403 162 +591178.2392999 4259925.79041403 164 +591180.23509763 4259925.79041403 164 +591182.23089535 4259925.79041403 164 +591184.22669309 4259925.79041403 164 +591186.22249081 4259925.79041403 164 +591188.21828855 4259925.79041403 164 +591190.21408627 4259925.79041403 164 +591192.20988401 4259925.79041403 164 +591194.20568173 4259925.79041403 164 +591196.20147947 4259925.79041403 164 +591198.1972772 4259925.79041403 164 +591220.15105223 4259925.79041403 162 +591222.14684995 4259925.79041403 162 +591262.06280455 4259925.79041403 160 +591264.05860228 4259925.79041403 160 +591272.0417932 4259925.79041403 158 +591274.03759094 4259925.79041403 158 +591278.02918639 4259925.79041403 156 +591280.02498412 4259925.79041403 156 +591284.01657959 4259925.79041403 154 +591288.00817505 4259925.79041403 152 +591293.99556823 4259925.79041403 150 +591295.99136596 4259925.79041403 150 +591309.96195007 4259925.79041403 148 +591026.55867241 4259923.79254382 168 +591032.54606561 4259923.79254382 170 +591040.52925652 4259923.79254382 172 +591044.52085198 4259923.79254382 174 +591046.51664972 4259923.79254382 176 +591054.49984063 4259923.79254382 178 +591060.48723383 4259923.79254382 180 +591066.47462702 4259923.79254382 182 +591074.45781794 4259923.79254382 184 +591076.45361566 4259923.79254382 184 +591078.4494134 4259923.79254382 184 +591080.44521113 4259923.79254382 184 +591082.44100886 4259923.79254382 184 +591084.43680659 4259923.79254382 184 +591086.43260431 4259923.79254382 184 +591088.42840205 4259923.79254382 184 +591090.42419977 4259923.79254382 184 +591092.41999751 4259923.79254382 186 +591094.41579523 4259923.79254382 184 +591096.41159297 4259923.79254382 186 +591098.4073907 4259923.79254382 184 +591100.40318842 4259923.79254382 184 +591102.39898616 4259923.79254382 184 +591106.39058162 4259923.79254382 182 +591112.37797481 4259923.79254382 180 +591116.36957027 4259923.79254382 178 +591120.36116573 4259923.79254382 176 +591126.34855891 4259923.79254382 174 +591132.33595211 4259923.79254382 172 +591136.32754756 4259923.79254382 170 +591142.31494076 4259923.79254382 168 +591152.29392941 4259923.79254382 166 +591158.28132259 4259923.79254382 164 +591166.26451352 4259923.79254382 162 +591170.25610898 4259923.79254382 162 +591178.2392999 4259923.79254382 164 +591200.19307492 4259923.79254382 164 +591202.18887266 4259923.79254382 164 +591204.18467038 4259923.79254382 164 +591206.18046812 4259923.79254382 164 +591208.17626584 4259923.79254382 164 +591210.17206358 4259923.79254382 164 +591224.14264769 4259923.79254382 162 +591226.13844541 4259923.79254382 162 +591228.13424315 4259923.79254382 162 +591230.13004087 4259923.79254382 162 +591232.1258386 4259923.79254382 162 +591234.12163634 4259923.79254382 162 +591236.11743406 4259923.79254382 162 +591238.1132318 4259923.79254382 162 +591240.10902952 4259923.79254382 162 +591242.10482726 4259923.79254382 162 +591244.10062498 4259923.79254382 162 +591246.09642271 4259923.79254382 162 +591248.09222045 4259923.79254382 162 +591250.08801817 4259923.79254382 162 +591252.08381591 4259923.79254382 162 +591254.07961363 4259923.79254382 162 +591266.05440002 4259923.79254382 160 +591276.03338866 4259923.79254382 158 +591278.02918639 4259923.79254382 158 +591282.02078185 4259923.79254382 156 +591286.01237731 4259923.79254382 154 +591288.00817505 4259923.79254382 154 +591290.00397277 4259923.79254382 152 +591295.99136596 4259923.79254382 150 +591297.9871637 4259923.79254382 150 +591311.9577478 4259923.79254382 148 +591024.56287469 4259921.79467362 168 +591030.55026788 4259921.79467362 170 +591038.5334588 4259921.79467362 172 +591040.52925652 4259921.79467362 174 +591042.52505426 4259921.79467362 174 +591044.52085198 4259921.79467362 176 +591052.50404291 4259921.79467362 178 +591060.48723383 4259921.79467362 180 +591064.47882929 4259921.79467362 182 +591072.4620202 4259921.79467362 184 +591084.43680659 4259921.79467362 186 +591086.43260431 4259921.79467362 186 +591088.42840205 4259921.79467362 186 +591090.42419977 4259921.79467362 186 +591094.41579523 4259921.79467362 186 +591096.41159297 4259921.79467362 186 +591098.4073907 4259921.79467362 186 +591100.40318842 4259921.79467362 186 +591102.39898616 4259921.79467362 186 +591104.39478388 4259921.79467362 184 +591106.39058162 4259921.79467362 184 +591108.38637934 4259921.79467362 182 +591110.38217708 4259921.79467362 182 +591114.37377254 4259921.79467362 180 +591116.36957027 4259921.79467362 180 +591118.36536799 4259921.79467362 178 +591122.35696345 4259921.79467362 176 +591128.34435665 4259921.79467362 174 +591134.33174984 4259921.79467362 172 +591138.3233453 4259921.79467362 170 +591144.31073848 4259921.79467362 168 +591154.28972713 4259921.79467362 166 +591160.27712033 4259921.79467362 164 +591168.26031124 4259921.79467362 162 +591170.25610898 4259921.79467362 162 +591176.24350216 4259921.79467362 164 +591212.1678613 4259921.79467362 164 +591214.16365903 4259921.79467362 164 +591216.15945677 4259921.79467362 164 +591218.15525449 4259921.79467362 164 +591220.15105223 4259921.79467362 164 +591222.14684995 4259921.79467362 164 +591224.14264769 4259921.79467362 164 +591226.13844541 4259921.79467362 164 +591228.13424315 4259921.79467362 164 +591230.13004087 4259921.79467362 164 +591232.1258386 4259921.79467362 164 +591234.12163634 4259921.79467362 164 +591236.11743406 4259921.79467362 164 +591238.1132318 4259921.79467362 164 +591240.10902952 4259921.79467362 164 +591242.10482726 4259921.79467362 164 +591244.10062498 4259921.79467362 164 +591246.09642271 4259921.79467362 164 +591248.09222045 4259921.79467362 164 +591250.08801817 4259921.79467362 164 +591252.08381591 4259921.79467362 164 +591256.07541137 4259921.79467362 162 +591258.07120909 4259921.79467362 162 +591260.06700683 4259921.79467362 162 +591262.06280455 4259921.79467362 162 +591268.05019774 4259921.79467362 160 +591270.04599548 4259921.79467362 160 +591280.02498412 4259921.79467362 158 +591282.02078185 4259921.79467362 158 +591284.01657959 4259921.79467362 156 +591286.01237731 4259921.79467362 156 +591290.00397277 4259921.79467362 154 +591291.99977051 4259921.79467362 152 +591293.99556823 4259921.79467362 152 +591299.98296142 4259921.79467362 150 +591313.95354553 4259921.79467362 148 +591020.57127923 4259919.7968034 168 +591022.56707695 4259919.7968034 168 +591028.55447015 4259919.7968034 170 +591036.53766106 4259919.7968034 172 +591038.5334588 4259919.7968034 174 +591044.52085198 4259919.7968034 176 +591050.50824518 4259919.7968034 178 +591058.49143609 4259919.7968034 180 +591062.48303156 4259919.7968034 182 +591068.47042474 4259919.7968034 184 +591070.46622248 4259919.7968034 184 +591078.4494134 4259919.7968034 186 +591080.44521113 4259919.7968034 186 +591082.44100886 4259919.7968034 186 +591090.42419977 4259919.7968034 188 +591092.41999751 4259919.7968034 188 +591094.41579523 4259919.7968034 188 +591096.41159297 4259919.7968034 188 +591098.4073907 4259919.7968034 188 +591102.39898616 4259919.7968034 186 +591104.39478388 4259919.7968034 186 +591108.38637934 4259919.7968034 184 +591112.37797481 4259919.7968034 182 +591118.36536799 4259919.7968034 180 +591120.36116573 4259919.7968034 178 +591124.35276119 4259919.7968034 176 +591126.34855891 4259919.7968034 176 +591130.34015438 4259919.7968034 174 +591136.32754756 4259919.7968034 172 +591140.31914302 4259919.7968034 170 +591146.30653622 4259919.7968034 168 +591154.28972713 4259919.7968034 166 +591162.27291805 4259919.7968034 164 +591176.24350216 4259919.7968034 164 +591240.10902952 4259919.7968034 166 +591242.10482726 4259919.7968034 166 +591244.10062498 4259919.7968034 166 +591246.09642271 4259919.7968034 166 +591248.09222045 4259919.7968034 166 +591250.08801817 4259919.7968034 166 +591252.08381591 4259919.7968034 166 +591254.07961363 4259919.7968034 164 +591256.07541137 4259919.7968034 164 +591258.07120909 4259919.7968034 164 +591260.06700683 4259919.7968034 164 +591262.06280455 4259919.7968034 164 +591264.05860228 4259919.7968034 162 +591266.05440002 4259919.7968034 162 +591268.05019774 4259919.7968034 162 +591272.0417932 4259919.7968034 160 +591274.03759094 4259919.7968034 160 +591282.02078185 4259919.7968034 158 +591284.01657959 4259919.7968034 158 +591288.00817505 4259919.7968034 156 +591291.99977051 4259919.7968034 154 +591293.99556823 4259919.7968034 154 +591295.99136596 4259919.7968034 152 +591299.98296142 4259919.7968034 150 +591301.97875916 4259919.7968034 150 +591315.94934327 4259919.7968034 148 +591020.57127923 4259917.79893319 168 +591026.55867241 4259917.79893319 170 +591034.54186334 4259917.79893319 172 +591036.53766106 4259917.79893319 174 +591042.52505426 4259917.79893319 176 +591048.51244745 4259917.79893319 178 +591056.49563837 4259917.79893319 180 +591060.48723383 4259917.79893319 182 +591068.47042474 4259917.79893319 184 +591074.45781794 4259917.79893319 186 +591076.45361566 4259917.79893319 186 +591080.44521113 4259917.79893319 188 +591082.44100886 4259917.79893319 188 +591084.43680659 4259917.79893319 188 +591086.43260431 4259917.79893319 188 +591088.42840205 4259917.79893319 188 +591100.40318842 4259917.79893319 188 +591102.39898616 4259917.79893319 188 +591106.39058162 4259917.79893319 186 +591108.38637934 4259917.79893319 186 +591110.38217708 4259917.79893319 184 +591112.37797481 4259917.79893319 184 +591114.37377254 4259917.79893319 182 +591120.36116573 4259917.79893319 180 +591122.35696345 4259917.79893319 178 +591128.34435665 4259917.79893319 176 +591132.33595211 4259917.79893319 174 +591138.3233453 4259917.79893319 172 +591140.31914302 4259917.79893319 170 +591148.30233395 4259917.79893319 168 +591156.28552487 4259917.79893319 166 +591164.26871579 4259917.79893319 164 +591166.26451352 4259917.79893319 164 +591176.24350216 4259917.79893319 164 +591184.22669309 4259917.79893319 166 +591186.22249081 4259917.79893319 166 +591188.21828855 4259917.79893319 166 +591190.21408627 4259917.79893319 166 +591192.20988401 4259917.79893319 166 +591194.20568173 4259917.79893319 166 +591196.20147947 4259917.79893319 166 +591198.1972772 4259917.79893319 166 +591200.19307492 4259917.79893319 166 +591202.18887266 4259917.79893319 166 +591204.18467038 4259917.79893319 166 +591206.18046812 4259917.79893319 166 +591208.17626584 4259917.79893319 166 +591226.13844541 4259917.79893319 166 +591228.13424315 4259917.79893319 166 +591230.13004087 4259917.79893319 166 +591232.1258386 4259917.79893319 166 +591234.12163634 4259917.79893319 166 +591236.11743406 4259917.79893319 166 +591238.1132318 4259917.79893319 166 +591252.08381591 4259917.79893319 166 +591254.07961363 4259917.79893319 166 +591256.07541137 4259917.79893319 166 +591264.05860228 4259917.79893319 164 +591266.05440002 4259917.79893319 164 +591270.04599548 4259917.79893319 162 +591276.03338866 4259917.79893319 160 +591278.02918639 4259917.79893319 160 +591286.01237731 4259917.79893319 158 +591290.00397277 4259917.79893319 156 +591295.99136596 4259917.79893319 154 +591297.9871637 4259917.79893319 152 +591303.97455688 4259917.79893319 150 +591317.94514099 4259917.79893319 148 +591024.56287469 4259915.80106298 170 +591032.54606561 4259915.80106298 172 +591034.54186334 4259915.80106298 174 +591040.52925652 4259915.80106298 176 +591046.51664972 4259915.80106298 178 +591054.49984063 4259915.80106298 180 +591058.49143609 4259915.80106298 182 +591066.47462702 4259915.80106298 184 +591072.4620202 4259915.80106298 186 +591074.45781794 4259915.80106298 186 +591078.4494134 4259915.80106298 188 +591088.42840205 4259915.80106298 190 +591090.42419977 4259915.80106298 190 +591092.41999751 4259915.80106298 190 +591094.41579523 4259915.80106298 190 +591096.41159297 4259915.80106298 190 +591104.39478388 4259915.80106298 188 +591106.39058162 4259915.80106298 188 +591110.38217708 4259915.80106298 186 +591114.37377254 4259915.80106298 184 +591116.36957027 4259915.80106298 182 +591122.35696345 4259915.80106298 180 +591124.35276119 4259915.80106298 178 +591130.34015438 4259915.80106298 176 +591134.33174984 4259915.80106298 174 +591140.31914302 4259915.80106298 172 +591142.31494076 4259915.80106298 170 +591150.29813167 4259915.80106298 168 +591158.28132259 4259915.80106298 166 +591168.26031124 4259915.80106298 164 +591170.25610898 4259915.80106298 164 +591172.2519067 4259915.80106298 164 +591176.24350216 4259915.80106298 164 +591182.23089535 4259915.80106298 166 +591184.22669309 4259915.80106298 166 +591210.17206358 4259915.80106298 166 +591212.1678613 4259915.80106298 166 +591214.16365903 4259915.80106298 166 +591216.15945677 4259915.80106298 166 +591218.15525449 4259915.80106298 166 +591220.15105223 4259915.80106298 166 +591222.14684995 4259915.80106298 166 +591224.14264769 4259915.80106298 166 +591230.13004087 4259915.80106298 168 +591232.1258386 4259915.80106298 168 +591234.12163634 4259915.80106298 168 +591236.11743406 4259915.80106298 168 +591238.1132318 4259915.80106298 168 +591240.10902952 4259915.80106298 168 +591242.10482726 4259915.80106298 168 +591244.10062498 4259915.80106298 168 +591246.09642271 4259915.80106298 168 +591248.09222045 4259915.80106298 168 +591258.07120909 4259915.80106298 166 +591260.06700683 4259915.80106298 166 +591262.06280455 4259915.80106298 166 +591268.05019774 4259915.80106298 164 +591270.04599548 4259915.80106298 164 +591272.0417932 4259915.80106298 162 +591274.03759094 4259915.80106298 162 +591280.02498412 4259915.80106298 160 +591288.00817505 4259915.80106298 158 +591291.99977051 4259915.80106298 156 +591297.9871637 4259915.80106298 154 +591299.98296142 4259915.80106298 152 +591305.97035462 4259915.80106298 150 +591319.94093873 4259915.80106298 148 +591321.93673645 4259915.80106298 148 +591024.56287469 4259913.80319277 170 +591030.55026788 4259913.80319277 172 +591032.54606561 4259913.80319277 174 +591038.5334588 4259913.80319277 176 +591046.51664972 4259913.80319277 178 +591052.50404291 4259913.80319277 180 +591056.49563837 4259913.80319277 182 +591064.47882929 4259913.80319277 184 +591070.46622248 4259913.80319277 186 +591076.45361566 4259913.80319277 188 +591086.43260431 4259913.80319277 190 +591098.4073907 4259913.80319277 190 +591100.40318842 4259913.80319277 190 +591102.39898616 4259913.80319277 190 +591104.39478388 4259913.80319277 190 +591108.38637934 4259913.80319277 188 +591112.37797481 4259913.80319277 186 +591116.36957027 4259913.80319277 184 +591118.36536799 4259913.80319277 182 +591122.35696345 4259913.80319277 180 +591126.34855891 4259913.80319277 178 +591132.33595211 4259913.80319277 176 +591136.32754756 4259913.80319277 174 +591140.31914302 4259913.80319277 172 +591144.31073848 4259913.80319277 170 +591152.29392941 4259913.80319277 168 +591160.27712033 4259913.80319277 166 +591162.27291805 4259913.80319277 166 +591174.24770444 4259913.80319277 164 +591176.24350216 4259913.80319277 164 +591180.23509763 4259913.80319277 166 +591224.14264769 4259913.80319277 168 +591226.13844541 4259913.80319277 168 +591228.13424315 4259913.80319277 168 +591230.13004087 4259913.80319277 168 +591250.08801817 4259913.80319277 168 +591252.08381591 4259913.80319277 168 +591254.07961363 4259913.80319277 168 +591264.05860228 4259913.80319277 166 +591266.05440002 4259913.80319277 166 +591272.0417932 4259913.80319277 164 +591276.03338866 4259913.80319277 162 +591278.02918639 4259913.80319277 162 +591282.02078185 4259913.80319277 160 +591290.00397277 4259913.80319277 158 +591293.99556823 4259913.80319277 156 +591299.98296142 4259913.80319277 154 +591301.97875916 4259913.80319277 152 +591307.96615234 4259913.80319277 150 +591022.56707695 4259911.80532257 170 +591028.55447015 4259911.80532257 172 +591030.55026788 4259911.80532257 174 +591032.54606561 4259911.80532257 174 +591036.53766106 4259911.80532257 176 +591044.52085198 4259911.80532257 178 +591050.50824518 4259911.80532257 180 +591054.49984063 4259911.80532257 182 +591062.48303156 4259911.80532257 184 +591068.47042474 4259911.80532257 186 +591074.45781794 4259911.80532257 188 +591084.43680659 4259911.80532257 190 +591106.39058162 4259911.80532257 190 +591108.38637934 4259911.80532257 190 +591110.38217708 4259911.80532257 188 +591114.37377254 4259911.80532257 186 +591118.36536799 4259911.80532257 184 +591120.36116573 4259911.80532257 182 +591124.35276119 4259911.80532257 180 +591128.34435665 4259911.80532257 178 +591134.33174984 4259911.80532257 176 +591138.3233453 4259911.80532257 174 +591142.31494076 4259911.80532257 172 +591146.30653622 4259911.80532257 170 +591152.29392941 4259911.80532257 168 +591164.26871579 4259911.80532257 166 +591178.2392999 4259911.80532257 166 +591214.16365903 4259911.80532257 168 +591216.15945677 4259911.80532257 168 +591218.15525449 4259911.80532257 168 +591220.15105223 4259911.80532257 168 +591222.14684995 4259911.80532257 168 +591224.14264769 4259911.80532257 168 +591240.10902952 4259911.80532257 170 +591242.10482726 4259911.80532257 170 +591244.10062498 4259911.80532257 170 +591246.09642271 4259911.80532257 170 +591248.09222045 4259911.80532257 170 +591250.08801817 4259911.80532257 170 +591256.07541137 4259911.80532257 168 +591258.07120909 4259911.80532257 168 +591260.06700683 4259911.80532257 168 +591268.05019774 4259911.80532257 166 +591274.03759094 4259911.80532257 164 +591276.03338866 4259911.80532257 164 +591280.02498412 4259911.80532257 162 +591282.02078185 4259911.80532257 162 +591284.01657959 4259911.80532257 160 +591291.99977051 4259911.80532257 158 +591295.99136596 4259911.80532257 156 +591301.97875916 4259911.80532257 154 +591303.97455688 4259911.80532257 152 +591305.97035462 4259911.80532257 152 +591307.96615234 4259911.80532257 150 +591309.96195007 4259911.80532257 150 +591020.57127923 4259909.80745235 170 +591026.55867241 4259909.80745235 172 +591030.55026788 4259909.80745235 174 +591034.54186334 4259909.80745235 176 +591042.52505426 4259909.80745235 178 +591048.51244745 4259909.80745235 180 +591054.49984063 4259909.80745235 182 +591060.48723383 4259909.80745235 184 +591068.47042474 4259909.80745235 186 +591072.4620202 4259909.80745235 188 +591082.44100886 4259909.80745235 190 +591098.4073907 4259909.80745235 192 +591100.40318842 4259909.80745235 192 +591110.38217708 4259909.80745235 190 +591112.37797481 4259909.80745235 188 +591116.36957027 4259909.80745235 186 +591118.36536799 4259909.80745235 184 +591120.36116573 4259909.80745235 182 +591126.34855891 4259909.80745235 180 +591130.34015438 4259909.80745235 178 +591134.33174984 4259909.80745235 176 +591136.32754756 4259909.80745235 176 +591138.3233453 4259909.80745235 174 +591142.31494076 4259909.80745235 172 +591146.30653622 4259909.80745235 170 +591154.28972713 4259909.80745235 168 +591166.26451352 4259909.80745235 166 +591178.2392999 4259909.80745235 166 +591188.21828855 4259909.80745235 168 +591190.21408627 4259909.80745235 168 +591192.20988401 4259909.80745235 168 +591194.20568173 4259909.80745235 168 +591196.20147947 4259909.80745235 168 +591198.1972772 4259909.80745235 168 +591200.19307492 4259909.80745235 168 +591202.18887266 4259909.80745235 168 +591204.18467038 4259909.80745235 168 +591206.18046812 4259909.80745235 168 +591208.17626584 4259909.80745235 168 +591210.17206358 4259909.80745235 168 +591212.1678613 4259909.80745235 168 +591226.13844541 4259909.80745235 170 +591228.13424315 4259909.80745235 170 +591230.13004087 4259909.80745235 170 +591232.1258386 4259909.80745235 170 +591234.12163634 4259909.80745235 170 +591236.11743406 4259909.80745235 170 +591238.1132318 4259909.80745235 170 +591240.10902952 4259909.80745235 172 +591242.10482726 4259909.80745235 172 +591244.10062498 4259909.80745235 172 +591246.09642271 4259909.80745235 172 +591248.09222045 4259909.80745235 172 +591252.08381591 4259909.80745235 170 +591254.07961363 4259909.80745235 170 +591256.07541137 4259909.80745235 170 +591262.06280455 4259909.80745235 168 +591264.05860228 4259909.80745235 168 +591270.04599548 4259909.80745235 166 +591272.0417932 4259909.80745235 166 +591278.02918639 4259909.80745235 164 +591284.01657959 4259909.80745235 162 +591286.01237731 4259909.80745235 160 +591293.99556823 4259909.80745235 158 +591297.9871637 4259909.80745235 156 +591303.97455688 4259909.80745235 154 +591307.96615234 4259909.80745235 152 +591311.9577478 4259909.80745235 150 +591024.56287469 4259907.80958214 172 +591028.55447015 4259907.80958214 174 +591034.54186334 4259907.80958214 176 +591040.52925652 4259907.80958214 178 +591048.51244745 4259907.80958214 180 +591052.50404291 4259907.80958214 182 +591058.49143609 4259907.80958214 184 +591066.47462702 4259907.80958214 186 +591072.4620202 4259907.80958214 188 +591080.44521113 4259907.80958214 190 +591094.41579523 4259907.80958214 192 +591096.41159297 4259907.80958214 192 +591102.39898616 4259907.80958214 192 +591110.38217708 4259907.80958214 190 +591114.37377254 4259907.80958214 188 +591116.36957027 4259907.80958214 186 +591120.36116573 4259907.80958214 184 +591122.35696345 4259907.80958214 182 +591126.34855891 4259907.80958214 180 +591132.33595211 4259907.80958214 178 +591136.32754756 4259907.80958214 176 +591140.31914302 4259907.80958214 174 +591144.31073848 4259907.80958214 172 +591148.30233395 4259907.80958214 170 +591156.28552487 4259907.80958214 168 +591168.26031124 4259907.80958214 166 +591176.24350216 4259907.80958214 166 +591184.22669309 4259907.80958214 168 +591186.22249081 4259907.80958214 168 +591220.15105223 4259907.80958214 170 +591222.14684995 4259907.80958214 170 +591224.14264769 4259907.80958214 170 +591228.13424315 4259907.80958214 172 +591230.13004087 4259907.80958214 172 +591232.1258386 4259907.80958214 172 +591234.12163634 4259907.80958214 172 +591236.11743406 4259907.80958214 172 +591238.1132318 4259907.80958214 172 +591250.08801817 4259907.80958214 172 +591252.08381591 4259907.80958214 172 +591254.07961363 4259907.80958214 172 +591258.07120909 4259907.80958214 170 +591260.06700683 4259907.80958214 170 +591262.06280455 4259907.80958214 170 +591266.05440002 4259907.80958214 168 +591268.05019774 4259907.80958214 168 +591274.03759094 4259907.80958214 166 +591276.03338866 4259907.80958214 166 +591280.02498412 4259907.80958214 164 +591286.01237731 4259907.80958214 162 +591288.00817505 4259907.80958214 160 +591295.99136596 4259907.80958214 158 +591299.98296142 4259907.80958214 156 +591305.97035462 4259907.80958214 154 +591309.96195007 4259907.80958214 152 +591313.95354553 4259907.80958214 150 +591315.94934327 4259907.80958214 150 +591022.56707695 4259905.81171193 172 +591026.55867241 4259905.81171193 174 +591032.54606561 4259905.81171193 176 +591040.52925652 4259905.81171193 178 +591046.51664972 4259905.81171193 180 +591050.50824518 4259905.81171193 182 +591056.49563837 4259905.81171193 184 +591064.47882929 4259905.81171193 186 +591070.46622248 4259905.81171193 188 +591080.44521113 4259905.81171193 190 +591090.42419977 4259905.81171193 192 +591092.41999751 4259905.81171193 192 +591104.39478388 4259905.81171193 192 +591112.37797481 4259905.81171193 190 +591116.36957027 4259905.81171193 188 +591118.36536799 4259905.81171193 186 +591120.36116573 4259905.81171193 184 +591122.35696345 4259905.81171193 182 +591128.34435665 4259905.81171193 180 +591132.33595211 4259905.81171193 178 +591136.32754756 4259905.81171193 176 +591140.31914302 4259905.81171193 174 +591144.31073848 4259905.81171193 172 +591150.29813167 4259905.81171193 170 +591156.28552487 4259905.81171193 168 +591170.25610898 4259905.81171193 166 +591172.2519067 4259905.81171193 166 +591174.24770444 4259905.81171193 166 +591180.23509763 4259905.81171193 168 +591182.23089535 4259905.81171193 168 +591212.1678613 4259905.81171193 170 +591214.16365903 4259905.81171193 170 +591216.15945677 4259905.81171193 170 +591218.15525449 4259905.81171193 170 +591220.15105223 4259905.81171193 172 +591222.14684995 4259905.81171193 172 +591224.14264769 4259905.81171193 172 +591226.13844541 4259905.81171193 172 +591236.11743406 4259905.81171193 174 +591238.1132318 4259905.81171193 174 +591240.10902952 4259905.81171193 174 +591242.10482726 4259905.81171193 174 +591244.10062498 4259905.81171193 174 +591246.09642271 4259905.81171193 174 +591256.07541137 4259905.81171193 172 +591258.07120909 4259905.81171193 172 +591260.06700683 4259905.81171193 172 +591264.05860228 4259905.81171193 170 +591266.05440002 4259905.81171193 170 +591270.04599548 4259905.81171193 168 +591272.0417932 4259905.81171193 168 +591278.02918639 4259905.81171193 166 +591282.02078185 4259905.81171193 164 +591284.01657959 4259905.81171193 164 +591288.00817505 4259905.81171193 162 +591290.00397277 4259905.81171193 160 +591297.9871637 4259905.81171193 158 +591301.97875916 4259905.81171193 156 +591307.96615234 4259905.81171193 154 +591311.9577478 4259905.81171193 152 +591313.95354553 4259905.81171193 152 +591317.94514099 4259905.81171193 150 +591020.57127923 4259903.81384172 172 +591024.56287469 4259903.81384172 174 +591030.55026788 4259903.81384172 176 +591038.5334588 4259903.81384172 178 +591046.51664972 4259903.81384172 180 +591050.50824518 4259903.81384172 182 +591056.49563837 4259903.81384172 184 +591064.47882929 4259903.81384172 186 +591070.46622248 4259903.81384172 188 +591078.4494134 4259903.81384172 190 +591088.42840205 4259903.81384172 192 +591096.41159297 4259903.81384172 194 +591098.4073907 4259903.81384172 194 +591106.39058162 4259903.81384172 192 +591112.37797481 4259903.81384172 190 +591116.36957027 4259903.81384172 188 +591118.36536799 4259903.81384172 186 +591120.36116573 4259903.81384172 184 +591124.35276119 4259903.81384172 182 +591128.34435665 4259903.81384172 180 +591132.33595211 4259903.81384172 178 +591138.3233453 4259903.81384172 176 +591140.31914302 4259903.81384172 174 +591146.30653622 4259903.81384172 172 +591150.29813167 4259903.81384172 170 +591158.28132259 4259903.81384172 168 +591178.2392999 4259903.81384172 168 +591206.18046812 4259903.81384172 170 +591208.17626584 4259903.81384172 170 +591210.17206358 4259903.81384172 170 +591212.1678613 4259903.81384172 172 +591214.16365903 4259903.81384172 172 +591216.15945677 4259903.81384172 172 +591218.15525449 4259903.81384172 172 +591226.13844541 4259903.81384172 174 +591228.13424315 4259903.81384172 174 +591230.13004087 4259903.81384172 174 +591232.1258386 4259903.81384172 174 +591234.12163634 4259903.81384172 174 +591248.09222045 4259903.81384172 174 +591250.08801817 4259903.81384172 174 +591252.08381591 4259903.81384172 174 +591254.07961363 4259903.81384172 174 +591262.06280455 4259903.81384172 172 +591264.05860228 4259903.81384172 172 +591268.05019774 4259903.81384172 170 +591270.04599548 4259903.81384172 170 +591274.03759094 4259903.81384172 168 +591276.03338866 4259903.81384172 168 +591280.02498412 4259903.81384172 166 +591286.01237731 4259903.81384172 164 +591290.00397277 4259903.81384172 162 +591291.99977051 4259903.81384172 160 +591293.99556823 4259903.81384172 160 +591297.9871637 4259903.81384172 158 +591303.97455688 4259903.81384172 156 +591309.96195007 4259903.81384172 154 +591315.94934327 4259903.81384172 152 +591319.94093873 4259903.81384172 150 +591022.56707695 4259901.81597152 174 +591028.55447015 4259901.81597152 176 +591036.53766106 4259901.81597152 178 +591044.52085198 4259901.81597152 180 +591048.51244745 4259901.81597152 182 +591054.49984063 4259901.81597152 184 +591062.48303156 4259901.81597152 186 +591070.46622248 4259901.81597152 188 +591078.4494134 4259901.81597152 190 +591086.43260431 4259901.81597152 192 +591092.41999751 4259901.81597152 194 +591094.41579523 4259901.81597152 194 +591100.40318842 4259901.81597152 194 +591106.39058162 4259901.81597152 192 +591112.37797481 4259901.81597152 190 +591116.36957027 4259901.81597152 188 +591118.36536799 4259901.81597152 186 +591120.36116573 4259901.81597152 184 +591124.35276119 4259901.81597152 182 +591128.34435665 4259901.81597152 180 +591134.33174984 4259901.81597152 178 +591138.3233453 4259901.81597152 176 +591142.31494076 4259901.81597152 174 +591146.30653622 4259901.81597152 172 +591152.29392941 4259901.81597152 170 +591158.28132259 4259901.81597152 168 +591160.27712033 4259901.81597152 168 +591176.24350216 4259901.81597152 168 +591194.20568173 4259901.81597152 170 +591196.20147947 4259901.81597152 170 +591198.1972772 4259901.81597152 170 +591200.19307492 4259901.81597152 170 +591202.18887266 4259901.81597152 170 +591204.18467038 4259901.81597152 170 +591206.18046812 4259901.81597152 172 +591208.17626584 4259901.81597152 172 +591210.17206358 4259901.81597152 172 +591218.15525449 4259901.81597152 174 +591220.15105223 4259901.81597152 174 +591222.14684995 4259901.81597152 174 +591224.14264769 4259901.81597152 174 +591256.07541137 4259901.81597152 174 +591258.07120909 4259901.81597152 174 +591260.06700683 4259901.81597152 174 +591266.05440002 4259901.81597152 172 +591268.05019774 4259901.81597152 172 +591272.0417932 4259901.81597152 170 +591278.02918639 4259901.81597152 168 +591282.02078185 4259901.81597152 166 +591284.01657959 4259901.81597152 166 +591288.00817505 4259901.81597152 164 +591291.99977051 4259901.81597152 162 +591295.99136596 4259901.81597152 160 +591299.98296142 4259901.81597152 158 +591305.97035462 4259901.81597152 156 +591311.9577478 4259901.81597152 154 +591317.94514099 4259901.81597152 152 +591321.93673645 4259901.81597152 150 +591020.57127923 4259899.8181013 174 +591028.55447015 4259899.8181013 176 +591036.53766106 4259899.8181013 178 +591044.52085198 4259899.8181013 180 +591046.51664972 4259899.8181013 182 +591052.50404291 4259899.8181013 184 +591062.48303156 4259899.8181013 186 +591068.47042474 4259899.8181013 188 +591076.45361566 4259899.8181013 190 +591084.43680659 4259899.8181013 192 +591090.42419977 4259899.8181013 194 +591102.39898616 4259899.8181013 194 +591106.39058162 4259899.8181013 192 +591112.37797481 4259899.8181013 190 +591116.36957027 4259899.8181013 188 +591118.36536799 4259899.8181013 186 +591120.36116573 4259899.8181013 184 +591124.35276119 4259899.8181013 182 +591130.34015438 4259899.8181013 180 +591134.33174984 4259899.8181013 178 +591140.31914302 4259899.8181013 176 +591142.31494076 4259899.8181013 174 +591148.30233395 4259899.8181013 172 +591152.29392941 4259899.8181013 170 +591160.27712033 4259899.8181013 168 +591174.24770444 4259899.8181013 168 +591188.21828855 4259899.8181013 170 +591190.21408627 4259899.8181013 170 +591192.20988401 4259899.8181013 170 +591200.19307492 4259899.8181013 172 +591202.18887266 4259899.8181013 172 +591204.18467038 4259899.8181013 172 +591212.1678613 4259899.8181013 174 +591214.16365903 4259899.8181013 174 +591216.15945677 4259899.8181013 174 +591234.12163634 4259899.8181013 176 +591236.11743406 4259899.8181013 176 +591238.1132318 4259899.8181013 176 +591240.10902952 4259899.8181013 176 +591242.10482726 4259899.8181013 176 +591244.10062498 4259899.8181013 176 +591246.09642271 4259899.8181013 176 +591248.09222045 4259899.8181013 176 +591250.08801817 4259899.8181013 176 +591252.08381591 4259899.8181013 176 +591254.07961363 4259899.8181013 176 +591262.06280455 4259899.8181013 174 +591270.04599548 4259899.8181013 172 +591274.03759094 4259899.8181013 170 +591276.03338866 4259899.8181013 170 +591280.02498412 4259899.8181013 168 +591282.02078185 4259899.8181013 168 +591286.01237731 4259899.8181013 166 +591290.00397277 4259899.8181013 164 +591293.99556823 4259899.8181013 162 +591297.9871637 4259899.8181013 160 +591301.97875916 4259899.8181013 158 +591303.97455688 4259899.8181013 158 +591307.96615234 4259899.8181013 156 +591313.95354553 4259899.8181013 154 +591319.94093873 4259899.8181013 152 +591321.93673645 4259899.8181013 150 +591026.55867241 4259897.82023109 176 +591034.54186334 4259897.82023109 178 +591042.52505426 4259897.82023109 180 +591046.51664972 4259897.82023109 182 +591050.50824518 4259897.82023109 184 +591060.48723383 4259897.82023109 186 +591068.47042474 4259897.82023109 188 +591076.45361566 4259897.82023109 190 +591084.43680659 4259897.82023109 192 +591090.42419977 4259897.82023109 194 +591102.39898616 4259897.82023109 194 +591106.39058162 4259897.82023109 192 +591112.37797481 4259897.82023109 190 +591116.36957027 4259897.82023109 188 +591118.36536799 4259897.82023109 186 +591122.35696345 4259897.82023109 184 +591124.35276119 4259897.82023109 182 +591130.34015438 4259897.82023109 180 +591134.33174984 4259897.82023109 178 +591140.31914302 4259897.82023109 176 +591144.31073848 4259897.82023109 174 +591150.29813167 4259897.82023109 172 +591154.28972713 4259897.82023109 170 +591160.27712033 4259897.82023109 168 +591172.2519067 4259897.82023109 168 +591184.22669309 4259897.82023109 170 +591186.22249081 4259897.82023109 170 +591192.20988401 4259897.82023109 172 +591194.20568173 4259897.82023109 172 +591196.20147947 4259897.82023109 172 +591198.1972772 4259897.82023109 172 +591200.19307492 4259897.82023109 172 +591202.18887266 4259897.82023109 174 +591204.18467038 4259897.82023109 174 +591206.18046812 4259897.82023109 174 +591208.17626584 4259897.82023109 174 +591210.17206358 4259897.82023109 174 +591222.14684995 4259897.82023109 176 +591224.14264769 4259897.82023109 176 +591226.13844541 4259897.82023109 176 +591228.13424315 4259897.82023109 176 +591230.13004087 4259897.82023109 176 +591232.1258386 4259897.82023109 176 +591234.12163634 4259897.82023109 176 +591244.10062498 4259897.82023109 178 +591246.09642271 4259897.82023109 178 +591248.09222045 4259897.82023109 178 +591256.07541137 4259897.82023109 176 +591258.07120909 4259897.82023109 176 +591260.06700683 4259897.82023109 176 +591264.05860228 4259897.82023109 174 +591266.05440002 4259897.82023109 174 +591272.0417932 4259897.82023109 172 +591274.03759094 4259897.82023109 172 +591278.02918639 4259897.82023109 170 +591280.02498412 4259897.82023109 170 +591284.01657959 4259897.82023109 168 +591288.00817505 4259897.82023109 166 +591291.99977051 4259897.82023109 164 +591295.99136596 4259897.82023109 162 +591299.98296142 4259897.82023109 160 +591301.97875916 4259897.82023109 160 +591303.97455688 4259897.82023109 158 +591305.97035462 4259897.82023109 158 +591309.96195007 4259897.82023109 156 +591315.94934327 4259897.82023109 154 +591319.94093873 4259897.82023109 152 +591022.56707695 4259895.82236088 176 +591024.56287469 4259895.82236088 176 +591032.54606561 4259895.82236088 178 +591040.52925652 4259895.82236088 180 +591044.52085198 4259895.82236088 182 +591050.50824518 4259895.82236088 184 +591058.49143609 4259895.82236088 186 +591066.47462702 4259895.82236088 188 +591074.45781794 4259895.82236088 190 +591082.44100886 4259895.82236088 192 +591088.42840205 4259895.82236088 194 +591104.39478388 4259895.82236088 194 +591106.39058162 4259895.82236088 192 +591112.37797481 4259895.82236088 190 +591116.36957027 4259895.82236088 188 +591120.36116573 4259895.82236088 186 +591122.35696345 4259895.82236088 184 +591126.34855891 4259895.82236088 182 +591132.33595211 4259895.82236088 180 +591136.32754756 4259895.82236088 178 +591142.31494076 4259895.82236088 176 +591144.31073848 4259895.82236088 174 +591150.29813167 4259895.82236088 172 +591154.28972713 4259895.82236088 170 +591160.27712033 4259895.82236088 168 +591170.25610898 4259895.82236088 168 +591182.23089535 4259895.82236088 170 +591188.21828855 4259895.82236088 172 +591190.21408627 4259895.82236088 172 +591196.20147947 4259895.82236088 174 +591198.1972772 4259895.82236088 174 +591200.19307492 4259895.82236088 174 +591212.1678613 4259895.82236088 176 +591214.16365903 4259895.82236088 176 +591216.15945677 4259895.82236088 176 +591218.15525449 4259895.82236088 176 +591220.15105223 4259895.82236088 176 +591238.1132318 4259895.82236088 178 +591240.10902952 4259895.82236088 178 +591242.10482726 4259895.82236088 178 +591250.08801817 4259895.82236088 178 +591252.08381591 4259895.82236088 178 +591254.07961363 4259895.82236088 178 +591256.07541137 4259895.82236088 178 +591262.06280455 4259895.82236088 176 +591264.05860228 4259895.82236088 176 +591268.05019774 4259895.82236088 174 +591270.04599548 4259895.82236088 174 +591276.03338866 4259895.82236088 172 +591282.02078185 4259895.82236088 170 +591286.01237731 4259895.82236088 168 +591288.00817505 4259895.82236088 168 +591290.00397277 4259895.82236088 166 +591293.99556823 4259895.82236088 164 +591295.99136596 4259895.82236088 164 +591297.9871637 4259895.82236088 162 +591303.97455688 4259895.82236088 160 +591307.96615234 4259895.82236088 158 +591311.9577478 4259895.82236088 156 +591317.94514099 4259895.82236088 154 +591321.93673645 4259895.82236088 152 +591020.57127923 4259893.82449067 176 +591030.55026788 4259893.82449067 178 +591040.52925652 4259893.82449067 180 +591042.52505426 4259893.82449067 182 +591048.51244745 4259893.82449067 184 +591056.49563837 4259893.82449067 186 +591058.49143609 4259893.82449067 186 +591066.47462702 4259893.82449067 188 +591074.45781794 4259893.82449067 190 +591082.44100886 4259893.82449067 192 +591088.42840205 4259893.82449067 194 +591104.39478388 4259893.82449067 194 +591108.38637934 4259893.82449067 192 +591112.37797481 4259893.82449067 190 +591116.36957027 4259893.82449067 188 +591120.36116573 4259893.82449067 186 +591122.35696345 4259893.82449067 184 +591126.34855891 4259893.82449067 182 +591132.33595211 4259893.82449067 180 +591136.32754756 4259893.82449067 178 +591142.31494076 4259893.82449067 176 +591144.31073848 4259893.82449067 174 +591150.29813167 4259893.82449067 172 +591156.28552487 4259893.82449067 170 +591162.27291805 4259893.82449067 168 +591168.26031124 4259893.82449067 168 +591178.2392999 4259893.82449067 170 +591180.23509763 4259893.82449067 170 +591184.22669309 4259893.82449067 172 +591186.22249081 4259893.82449067 172 +591190.21408627 4259893.82449067 174 +591192.20988401 4259893.82449067 174 +591194.20568173 4259893.82449067 174 +591200.19307492 4259893.82449067 176 +591202.18887266 4259893.82449067 176 +591204.18467038 4259893.82449067 176 +591206.18046812 4259893.82449067 176 +591208.17626584 4259893.82449067 176 +591210.17206358 4259893.82449067 176 +591232.1258386 4259893.82449067 178 +591234.12163634 4259893.82449067 178 +591236.11743406 4259893.82449067 178 +591258.07120909 4259893.82449067 178 +591260.06700683 4259893.82449067 178 +591262.06280455 4259893.82449067 178 +591266.05440002 4259893.82449067 176 +591272.0417932 4259893.82449067 174 +591278.02918639 4259893.82449067 172 +591284.01657959 4259893.82449067 170 +591286.01237731 4259893.82449067 170 +591290.00397277 4259893.82449067 168 +591291.99977051 4259893.82449067 166 +591295.99136596 4259893.82449067 164 +591297.9871637 4259893.82449067 164 +591299.98296142 4259893.82449067 162 +591301.97875916 4259893.82449067 162 +591305.97035462 4259893.82449067 160 +591307.96615234 4259893.82449067 160 +591309.96195007 4259893.82449067 158 +591313.95354553 4259893.82449067 156 +591319.94093873 4259893.82449067 154 +591028.55447015 4259891.82662047 178 +591038.5334588 4259891.82662047 180 +591042.52505426 4259891.82662047 182 +591046.51664972 4259891.82662047 184 +591054.49984063 4259891.82662047 186 +591056.49563837 4259891.82662047 186 +591064.47882929 4259891.82662047 188 +591072.4620202 4259891.82662047 190 +591074.45781794 4259891.82662047 190 +591080.44521113 4259891.82662047 192 +591086.43260431 4259891.82662047 194 +591104.39478388 4259891.82662047 194 +591108.38637934 4259891.82662047 192 +591112.37797481 4259891.82662047 190 +591116.36957027 4259891.82662047 188 +591120.36116573 4259891.82662047 186 +591122.35696345 4259891.82662047 184 +591126.34855891 4259891.82662047 182 +591132.33595211 4259891.82662047 180 +591136.32754756 4259891.82662047 178 +591144.31073848 4259891.82662047 176 +591146.30653622 4259891.82662047 174 +591152.29392941 4259891.82662047 172 +591156.28552487 4259891.82662047 170 +591162.27291805 4259891.82662047 168 +591166.26451352 4259891.82662047 168 +591176.24350216 4259891.82662047 170 +591182.23089535 4259891.82662047 172 +591186.22249081 4259891.82662047 174 +591188.21828855 4259891.82662047 174 +591192.20988401 4259891.82662047 176 +591194.20568173 4259891.82662047 176 +591196.20147947 4259891.82662047 176 +591198.1972772 4259891.82662047 176 +591200.19307492 4259891.82662047 176 +591222.14684995 4259891.82662047 178 +591224.14264769 4259891.82662047 178 +591226.13844541 4259891.82662047 178 +591228.13424315 4259891.82662047 178 +591230.13004087 4259891.82662047 178 +591238.1132318 4259891.82662047 180 +591240.10902952 4259891.82662047 180 +591242.10482726 4259891.82662047 180 +591244.10062498 4259891.82662047 180 +591246.09642271 4259891.82662047 180 +591248.09222045 4259891.82662047 180 +591250.08801817 4259891.82662047 180 +591252.08381591 4259891.82662047 180 +591254.07961363 4259891.82662047 180 +591256.07541137 4259891.82662047 180 +591262.06280455 4259891.82662047 178 +591264.05860228 4259891.82662047 178 +591268.05019774 4259891.82662047 176 +591270.04599548 4259891.82662047 176 +591274.03759094 4259891.82662047 174 +591280.02498412 4259891.82662047 172 +591282.02078185 4259891.82662047 172 +591288.00817505 4259891.82662047 170 +591291.99977051 4259891.82662047 168 +591293.99556823 4259891.82662047 166 +591295.99136596 4259891.82662047 166 +591299.98296142 4259891.82662047 164 +591303.97455688 4259891.82662047 162 +591309.96195007 4259891.82662047 160 +591311.9577478 4259891.82662047 160 +591313.95354553 4259891.82662047 158 +591315.94934327 4259891.82662047 156 +591321.93673645 4259891.82662047 154 +591026.55867241 4259889.82875025 178 +591028.55447015 4259889.82875025 178 +591038.5334588 4259889.82875025 180 +591040.52925652 4259889.82875025 182 +591044.52085198 4259889.82875025 184 +591054.49984063 4259889.82875025 186 +591064.47882929 4259889.82875025 188 +591072.4620202 4259889.82875025 190 +591080.44521113 4259889.82875025 192 +591086.43260431 4259889.82875025 194 +591096.41159297 4259889.82875025 195 +591104.39478388 4259889.82875025 194 +591108.38637934 4259889.82875025 192 +591112.37797481 4259889.82875025 190 +591116.36957027 4259889.82875025 188 +591120.36116573 4259889.82875025 186 +591124.35276119 4259889.82875025 184 +591128.34435665 4259889.82875025 182 +591132.33595211 4259889.82875025 180 +591138.3233453 4259889.82875025 178 +591144.31073848 4259889.82875025 176 +591146.30653622 4259889.82875025 174 +591152.29392941 4259889.82875025 172 +591156.28552487 4259889.82875025 170 +591164.26871579 4259889.82875025 168 +591174.24770444 4259889.82875025 170 +591180.23509763 4259889.82875025 172 +591182.23089535 4259889.82875025 174 +591184.22669309 4259889.82875025 174 +591186.22249081 4259889.82875025 176 +591188.21828855 4259889.82875025 176 +591190.21408627 4259889.82875025 176 +591202.18887266 4259889.82875025 178 +591204.18467038 4259889.82875025 178 +591206.18046812 4259889.82875025 178 +591208.17626584 4259889.82875025 178 +591210.17206358 4259889.82875025 178 +591212.1678613 4259889.82875025 178 +591214.16365903 4259889.82875025 178 +591216.15945677 4259889.82875025 178 +591218.15525449 4259889.82875025 178 +591220.15105223 4259889.82875025 178 +591222.14684995 4259889.82875025 178 +591230.13004087 4259889.82875025 180 +591232.1258386 4259889.82875025 180 +591234.12163634 4259889.82875025 180 +591236.11743406 4259889.82875025 180 +591240.10902952 4259889.82875025 182 +591242.10482726 4259889.82875025 182 +591244.10062498 4259889.82875025 182 +591246.09642271 4259889.82875025 182 +591248.09222045 4259889.82875025 182 +591258.07120909 4259889.82875025 180 +591260.06700683 4259889.82875025 180 +591262.06280455 4259889.82875025 180 +591266.05440002 4259889.82875025 178 +591272.0417932 4259889.82875025 176 +591276.03338866 4259889.82875025 174 +591278.02918639 4259889.82875025 174 +591284.01657959 4259889.82875025 172 +591290.00397277 4259889.82875025 170 +591293.99556823 4259889.82875025 168 +591297.9871637 4259889.82875025 166 +591301.97875916 4259889.82875025 164 +591303.97455688 4259889.82875025 164 +591305.97035462 4259889.82875025 162 +591313.95354553 4259889.82875025 160 +591315.94934327 4259889.82875025 158 +591317.94514099 4259889.82875025 156 +591022.56707695 4259887.83088004 178 +591024.56287469 4259887.83088004 178 +591034.54186334 4259887.83088004 180 +591036.53766106 4259887.83088004 180 +591038.5334588 4259887.83088004 182 +591042.52505426 4259887.83088004 184 +591052.50404291 4259887.83088004 186 +591062.48303156 4259887.83088004 188 +591070.46622248 4259887.83088004 190 +591078.4494134 4259887.83088004 192 +591084.43680659 4259887.83088004 194 +591092.41999751 4259887.83088004 195 +591094.41579523 4259887.83088004 195 +591098.4073907 4259887.83088004 195 +591100.40318842 4259887.83088004 195 +591104.39478388 4259887.83088004 194 +591108.38637934 4259887.83088004 192 +591112.37797481 4259887.83088004 190 +591116.36957027 4259887.83088004 188 +591120.36116573 4259887.83088004 186 +591124.35276119 4259887.83088004 184 +591128.34435665 4259887.83088004 182 +591134.33174984 4259887.83088004 180 +591138.3233453 4259887.83088004 178 +591144.31073848 4259887.83088004 176 +591148.30233395 4259887.83088004 174 +591154.28972713 4259887.83088004 172 +591158.28132259 4259887.83088004 170 +591172.2519067 4259887.83088004 170 +591178.2392999 4259887.83088004 172 +591180.23509763 4259887.83088004 174 +591184.22669309 4259887.83088004 176 +591186.22249081 4259887.83088004 176 +591192.20988401 4259887.83088004 178 +591194.20568173 4259887.83088004 178 +591196.20147947 4259887.83088004 178 +591198.1972772 4259887.83088004 178 +591200.19307492 4259887.83088004 178 +591202.18887266 4259887.83088004 178 +591224.14264769 4259887.83088004 180 +591226.13844541 4259887.83088004 180 +591228.13424315 4259887.83088004 180 +591230.13004087 4259887.83088004 182 +591232.1258386 4259887.83088004 182 +591234.12163634 4259887.83088004 182 +591236.11743406 4259887.83088004 182 +591238.1132318 4259887.83088004 182 +591250.08801817 4259887.83088004 182 +591252.08381591 4259887.83088004 182 +591254.07961363 4259887.83088004 182 +591264.05860228 4259887.83088004 180 +591268.05019774 4259887.83088004 178 +591274.03759094 4259887.83088004 176 +591280.02498412 4259887.83088004 174 +591282.02078185 4259887.83088004 174 +591286.01237731 4259887.83088004 172 +591291.99977051 4259887.83088004 170 +591295.99136596 4259887.83088004 168 +591299.98296142 4259887.83088004 166 +591305.97035462 4259887.83088004 164 +591307.96615234 4259887.83088004 162 +591309.96195007 4259887.83088004 162 +591315.94934327 4259887.83088004 160 +591317.94514099 4259887.83088004 158 +591319.94093873 4259887.83088004 156 +591020.57127923 4259885.83300983 178 +591030.55026788 4259885.83300983 180 +591032.54606561 4259885.83300983 180 +591038.5334588 4259885.83300983 182 +591042.52505426 4259885.83300983 184 +591050.50824518 4259885.83300983 186 +591060.48723383 4259885.83300983 188 +591070.46622248 4259885.83300983 190 +591076.45361566 4259885.83300983 192 +591078.4494134 4259885.83300983 192 +591082.44100886 4259885.83300983 194 +591090.42419977 4259885.83300983 195 +591100.40318842 4259885.83300983 195 +591104.39478388 4259885.83300983 194 +591108.38637934 4259885.83300983 192 +591112.37797481 4259885.83300983 190 +591116.36957027 4259885.83300983 188 +591120.36116573 4259885.83300983 186 +591124.35276119 4259885.83300983 184 +591128.34435665 4259885.83300983 182 +591134.33174984 4259885.83300983 180 +591138.3233453 4259885.83300983 178 +591146.30653622 4259885.83300983 176 +591150.29813167 4259885.83300983 174 +591154.28972713 4259885.83300983 172 +591158.28132259 4259885.83300983 170 +591172.2519067 4259885.83300983 170 +591176.24350216 4259885.83300983 172 +591178.2392999 4259885.83300983 174 +591182.23089535 4259885.83300983 176 +591188.21828855 4259885.83300983 178 +591190.21408627 4259885.83300983 178 +591216.15945677 4259885.83300983 180 +591218.15525449 4259885.83300983 180 +591220.15105223 4259885.83300983 180 +591222.14684995 4259885.83300983 180 +591224.14264769 4259885.83300983 182 +591226.13844541 4259885.83300983 182 +591228.13424315 4259885.83300983 182 +591240.10902952 4259885.83300983 184 +591242.10482726 4259885.83300983 184 +591244.10062498 4259885.83300983 184 +591246.09642271 4259885.83300983 184 +591248.09222045 4259885.83300983 184 +591256.07541137 4259885.83300983 182 +591258.07120909 4259885.83300983 182 +591260.06700683 4259885.83300983 182 +591266.05440002 4259885.83300983 180 +591270.04599548 4259885.83300983 178 +591276.03338866 4259885.83300983 176 +591278.02918639 4259885.83300983 176 +591284.01657959 4259885.83300983 174 +591288.00817505 4259885.83300983 172 +591290.00397277 4259885.83300983 172 +591293.99556823 4259885.83300983 170 +591297.9871637 4259885.83300983 168 +591299.98296142 4259885.83300983 168 +591301.97875916 4259885.83300983 166 +591303.97455688 4259885.83300983 166 +591307.96615234 4259885.83300983 164 +591311.9577478 4259885.83300983 162 +591317.94514099 4259885.83300983 160 +591319.94093873 4259885.83300983 158 +591321.93673645 4259885.83300983 158 +591026.55867241 4259883.83513962 180 +591028.55447015 4259883.83513962 180 +591034.54186334 4259883.83513962 182 +591036.53766106 4259883.83513962 182 +591040.52925652 4259883.83513962 184 +591048.51244745 4259883.83513962 186 +591058.49143609 4259883.83513962 188 +591068.47042474 4259883.83513962 190 +591074.45781794 4259883.83513962 192 +591076.45361566 4259883.83513962 192 +591082.44100886 4259883.83513962 194 +591088.42840205 4259883.83513962 195 +591100.40318842 4259883.83513962 195 +591102.39898616 4259883.83513962 195 +591104.39478388 4259883.83513962 194 +591108.38637934 4259883.83513962 192 +591112.37797481 4259883.83513962 190 +591116.36957027 4259883.83513962 188 +591120.36116573 4259883.83513962 186 +591124.35276119 4259883.83513962 184 +591128.34435665 4259883.83513962 182 +591136.32754756 4259883.83513962 180 +591140.31914302 4259883.83513962 178 +591146.30653622 4259883.83513962 176 +591150.29813167 4259883.83513962 174 +591156.28552487 4259883.83513962 172 +591158.28132259 4259883.83513962 170 +591170.25610898 4259883.83513962 170 +591174.24770444 4259883.83513962 172 +591176.24350216 4259883.83513962 174 +591180.23509763 4259883.83513962 176 +591186.22249081 4259883.83513962 178 +591192.20988401 4259883.83513962 180 +591194.20568173 4259883.83513962 180 +591196.20147947 4259883.83513962 180 +591198.1972772 4259883.83513962 180 +591200.19307492 4259883.83513962 180 +591202.18887266 4259883.83513962 180 +591204.18467038 4259883.83513962 180 +591206.18046812 4259883.83513962 180 +591208.17626584 4259883.83513962 180 +591210.17206358 4259883.83513962 180 +591212.1678613 4259883.83513962 180 +591214.16365903 4259883.83513962 180 +591220.15105223 4259883.83513962 182 +591222.14684995 4259883.83513962 182 +591236.11743406 4259883.83513962 184 +591238.1132318 4259883.83513962 184 +591250.08801817 4259883.83513962 184 +591252.08381591 4259883.83513962 184 +591262.06280455 4259883.83513962 182 +591268.05019774 4259883.83513962 180 +591272.0417932 4259883.83513962 178 +591280.02498412 4259883.83513962 176 +591286.01237731 4259883.83513962 174 +591288.00817505 4259883.83513962 174 +591291.99977051 4259883.83513962 172 +591295.99136596 4259883.83513962 170 +591297.9871637 4259883.83513962 170 +591301.97875916 4259883.83513962 168 +591303.97455688 4259883.83513962 168 +591305.97035462 4259883.83513962 166 +591309.96195007 4259883.83513962 164 +591311.9577478 4259883.83513962 164 +591313.95354553 4259883.83513962 162 +591319.94093873 4259883.83513962 160 +591024.56287469 4259881.83726942 180 +591034.54186334 4259881.83726942 182 +591038.5334588 4259881.83726942 184 +591046.51664972 4259881.83726942 186 +591058.49143609 4259881.83726942 188 +591066.47462702 4259881.83726942 190 +591074.45781794 4259881.83726942 192 +591080.44521113 4259881.83726942 194 +591088.42840205 4259881.83726942 195 +591102.39898616 4259881.83726942 195 +591104.39478388 4259881.83726942 194 +591108.38637934 4259881.83726942 192 +591112.37797481 4259881.83726942 190 +591116.36957027 4259881.83726942 188 +591120.36116573 4259881.83726942 186 +591124.35276119 4259881.83726942 184 +591128.34435665 4259881.83726942 182 +591138.3233453 4259881.83726942 180 +591142.31494076 4259881.83726942 178 +591148.30233395 4259881.83726942 176 +591152.29392941 4259881.83726942 174 +591156.28552487 4259881.83726942 172 +591160.27712033 4259881.83726942 170 +591168.26031124 4259881.83726942 170 +591172.2519067 4259881.83726942 172 +591174.24770444 4259881.83726942 174 +591178.2392999 4259881.83726942 176 +591184.22669309 4259881.83726942 178 +591188.21828855 4259881.83726942 180 +591190.21408627 4259881.83726942 180 +591216.15945677 4259881.83726942 182 +591218.15525449 4259881.83726942 182 +591230.13004087 4259881.83726942 184 +591232.1258386 4259881.83726942 184 +591234.12163634 4259881.83726942 184 +591254.07961363 4259881.83726942 184 +591256.07541137 4259881.83726942 184 +591264.05860228 4259881.83726942 182 +591266.05440002 4259881.83726942 182 +591270.04599548 4259881.83726942 180 +591274.03759094 4259881.83726942 178 +591282.02078185 4259881.83726942 176 +591290.00397277 4259881.83726942 174 +591293.99556823 4259881.83726942 172 +591295.99136596 4259881.83726942 172 +591299.98296142 4259881.83726942 170 +591305.97035462 4259881.83726942 168 +591307.96615234 4259881.83726942 166 +591309.96195007 4259881.83726942 166 +591313.95354553 4259881.83726942 164 +591315.94934327 4259881.83726942 164 +591317.94514099 4259881.83726942 162 +591321.93673645 4259881.83726942 160 +591022.56707695 4259879.8393992 180 +591032.54606561 4259879.8393992 182 +591036.53766106 4259879.8393992 184 +591044.52085198 4259879.8393992 186 +591056.49563837 4259879.8393992 188 +591064.47882929 4259879.8393992 190 +591072.4620202 4259879.8393992 192 +591080.44521113 4259879.8393992 194 +591086.43260431 4259879.8393992 195 +591102.39898616 4259879.8393992 195 +591104.39478388 4259879.8393992 194 +591108.38637934 4259879.8393992 192 +591112.37797481 4259879.8393992 190 +591116.36957027 4259879.8393992 188 +591120.36116573 4259879.8393992 186 +591126.34855891 4259879.8393992 184 +591130.34015438 4259879.8393992 182 +591138.3233453 4259879.8393992 180 +591142.31494076 4259879.8393992 178 +591150.29813167 4259879.8393992 176 +591154.28972713 4259879.8393992 174 +591156.28552487 4259879.8393992 172 +591158.28132259 4259879.8393992 172 +591160.27712033 4259879.8393992 170 +591166.26451352 4259879.8393992 170 +591170.25610898 4259879.8393992 172 +591174.24770444 4259879.8393992 174 +591178.2392999 4259879.8393992 176 +591182.23089535 4259879.8393992 178 +591186.22249081 4259879.8393992 180 +591210.17206358 4259879.8393992 182 +591212.1678613 4259879.8393992 182 +591214.16365903 4259879.8393992 182 +591222.14684995 4259879.8393992 184 +591224.14264769 4259879.8393992 184 +591226.13844541 4259879.8393992 184 +591228.13424315 4259879.8393992 184 +591232.1258386 4259879.8393992 186 +591234.12163634 4259879.8393992 186 +591236.11743406 4259879.8393992 186 +591238.1132318 4259879.8393992 186 +591240.10902952 4259879.8393992 186 +591242.10482726 4259879.8393992 186 +591244.10062498 4259879.8393992 186 +591246.09642271 4259879.8393992 186 +591248.09222045 4259879.8393992 186 +591250.08801817 4259879.8393992 186 +591252.08381591 4259879.8393992 186 +591258.07120909 4259879.8393992 184 +591260.06700683 4259879.8393992 184 +591262.06280455 4259879.8393992 184 +591268.05019774 4259879.8393992 182 +591272.0417932 4259879.8393992 180 +591274.03759094 4259879.8393992 180 +591276.03338866 4259879.8393992 178 +591278.02918639 4259879.8393992 178 +591284.01657959 4259879.8393992 176 +591291.99977051 4259879.8393992 174 +591293.99556823 4259879.8393992 174 +591297.9871637 4259879.8393992 172 +591301.97875916 4259879.8393992 170 +591303.97455688 4259879.8393992 170 +591307.96615234 4259879.8393992 168 +591309.96195007 4259879.8393992 168 +591311.9577478 4259879.8393992 166 +591317.94514099 4259879.8393992 164 +591319.94093873 4259879.8393992 162 +591020.57127923 4259877.84152899 180 +591022.56707695 4259877.84152899 180 +591028.55447015 4259877.84152899 182 +591030.55026788 4259877.84152899 182 +591034.54186334 4259877.84152899 184 +591042.52505426 4259877.84152899 186 +591054.49984063 4259877.84152899 188 +591064.47882929 4259877.84152899 190 +591070.46622248 4259877.84152899 192 +591078.4494134 4259877.84152899 194 +591084.43680659 4259877.84152899 195 +591102.39898616 4259877.84152899 195 +591104.39478388 4259877.84152899 194 +591108.38637934 4259877.84152899 192 +591112.37797481 4259877.84152899 190 +591116.36957027 4259877.84152899 188 +591122.35696345 4259877.84152899 186 +591126.34855891 4259877.84152899 184 +591130.34015438 4259877.84152899 182 +591140.31914302 4259877.84152899 180 +591144.31073848 4259877.84152899 178 +591150.29813167 4259877.84152899 176 +591154.28972713 4259877.84152899 174 +591158.28132259 4259877.84152899 172 +591162.27291805 4259877.84152899 170 +591164.26871579 4259877.84152899 170 +591168.26031124 4259877.84152899 172 +591172.2519067 4259877.84152899 174 +591176.24350216 4259877.84152899 176 +591180.23509763 4259877.84152899 178 +591184.22669309 4259877.84152899 180 +591204.18467038 4259877.84152899 182 +591206.18046812 4259877.84152899 182 +591208.17626584 4259877.84152899 182 +591214.16365903 4259877.84152899 184 +591216.15945677 4259877.84152899 184 +591218.15525449 4259877.84152899 184 +591220.15105223 4259877.84152899 184 +591222.14684995 4259877.84152899 186 +591224.14264769 4259877.84152899 186 +591226.13844541 4259877.84152899 186 +591228.13424315 4259877.84152899 186 +591230.13004087 4259877.84152899 186 +591254.07961363 4259877.84152899 186 +591256.07541137 4259877.84152899 186 +591264.05860228 4259877.84152899 184 +591266.05440002 4259877.84152899 184 +591270.04599548 4259877.84152899 182 +591276.03338866 4259877.84152899 180 +591280.02498412 4259877.84152899 178 +591286.01237731 4259877.84152899 176 +591288.00817505 4259877.84152899 176 +591295.99136596 4259877.84152899 174 +591299.98296142 4259877.84152899 172 +591305.97035462 4259877.84152899 170 +591307.96615234 4259877.84152899 170 +591311.9577478 4259877.84152899 168 +591313.95354553 4259877.84152899 166 +591315.94934327 4259877.84152899 166 +591319.94093873 4259877.84152899 164 +591321.93673645 4259877.84152899 164 +591020.57127923 4259875.84365878 180 +591026.55867241 4259875.84365878 182 +591032.54606561 4259875.84365878 184 +591040.52925652 4259875.84365878 186 +591050.50824518 4259875.84365878 188 +591052.50404291 4259875.84365878 188 +591062.48303156 4259875.84365878 190 +591066.47462702 4259875.84365878 192 +591068.47042474 4259875.84365878 192 +591076.45361566 4259875.84365878 194 +591082.44100886 4259875.84365878 195 +591102.39898616 4259875.84365878 195 +591104.39478388 4259875.84365878 194 +591108.38637934 4259875.84365878 192 +591112.37797481 4259875.84365878 190 +591116.36957027 4259875.84365878 188 +591122.35696345 4259875.84365878 186 +591126.34855891 4259875.84365878 184 +591130.34015438 4259875.84365878 182 +591142.31494076 4259875.84365878 180 +591146.30653622 4259875.84365878 178 +591152.29392941 4259875.84365878 176 +591156.28552487 4259875.84365878 174 +591160.27712033 4259875.84365878 172 +591168.26031124 4259875.84365878 172 +591170.25610898 4259875.84365878 174 +591174.24770444 4259875.84365878 176 +591178.2392999 4259875.84365878 178 +591182.23089535 4259875.84365878 180 +591196.20147947 4259875.84365878 182 +591198.1972772 4259875.84365878 182 +591200.19307492 4259875.84365878 182 +591202.18887266 4259875.84365878 182 +591208.17626584 4259875.84365878 184 +591210.17206358 4259875.84365878 184 +591212.1678613 4259875.84365878 184 +591218.15525449 4259875.84365878 186 +591220.15105223 4259875.84365878 186 +591232.1258386 4259875.84365878 188 +591234.12163634 4259875.84365878 188 +591236.11743406 4259875.84365878 188 +591238.1132318 4259875.84365878 188 +591240.10902952 4259875.84365878 188 +591242.10482726 4259875.84365878 188 +591244.10062498 4259875.84365878 188 +591246.09642271 4259875.84365878 188 +591248.09222045 4259875.84365878 188 +591250.08801817 4259875.84365878 188 +591252.08381591 4259875.84365878 188 +591258.07120909 4259875.84365878 186 +591260.06700683 4259875.84365878 186 +591262.06280455 4259875.84365878 186 +591268.05019774 4259875.84365878 184 +591272.0417932 4259875.84365878 182 +591278.02918639 4259875.84365878 180 +591282.02078185 4259875.84365878 178 +591290.00397277 4259875.84365878 176 +591295.99136596 4259875.84365878 174 +591297.9871637 4259875.84365878 174 +591301.97875916 4259875.84365878 172 +591303.97455688 4259875.84365878 172 +591309.96195007 4259875.84365878 170 +591311.9577478 4259875.84365878 170 +591313.95354553 4259875.84365878 168 +591315.94934327 4259875.84365878 168 +591317.94514099 4259875.84365878 166 +591319.94093873 4259875.84365878 166 +591024.56287469 4259873.84578857 182 +591030.55026788 4259873.84578857 184 +591038.5334588 4259873.84578857 186 +591046.51664972 4259873.84578857 188 +591048.51244745 4259873.84578857 188 +591058.49143609 4259873.84578857 190 +591060.48723383 4259873.84578857 190 +591064.47882929 4259873.84578857 192 +591074.45781794 4259873.84578857 194 +591080.44521113 4259873.84578857 195 +591102.39898616 4259873.84578857 195 +591106.39058162 4259873.84578857 194 +591108.38637934 4259873.84578857 192 +591112.37797481 4259873.84578857 190 +591116.36957027 4259873.84578857 188 +591122.35696345 4259873.84578857 186 +591128.34435665 4259873.84578857 184 +591132.33595211 4259873.84578857 182 +591142.31494076 4259873.84578857 180 +591148.30233395 4259873.84578857 178 +591154.28972713 4259873.84578857 176 +591158.28132259 4259873.84578857 174 +591162.27291805 4259873.84578857 172 +591166.26451352 4259873.84578857 172 +591170.25610898 4259873.84578857 174 +591174.24770444 4259873.84578857 176 +591176.24350216 4259873.84578857 178 +591180.23509763 4259873.84578857 180 +591192.20988401 4259873.84578857 182 +591194.20568173 4259873.84578857 182 +591204.18467038 4259873.84578857 184 +591206.18046812 4259873.84578857 184 +591216.15945677 4259873.84578857 186 +591230.13004087 4259873.84578857 188 +591238.1132318 4259873.84578857 190 +591240.10902952 4259873.84578857 190 +591242.10482726 4259873.84578857 190 +591244.10062498 4259873.84578857 190 +591246.09642271 4259873.84578857 190 +591248.09222045 4259873.84578857 190 +591254.07961363 4259873.84578857 188 +591256.07541137 4259873.84578857 188 +591264.05860228 4259873.84578857 186 +591266.05440002 4259873.84578857 186 +591270.04599548 4259873.84578857 184 +591272.0417932 4259873.84578857 184 +591274.03759094 4259873.84578857 182 +591280.02498412 4259873.84578857 180 +591284.01657959 4259873.84578857 178 +591291.99977051 4259873.84578857 176 +591299.98296142 4259873.84578857 174 +591305.97035462 4259873.84578857 172 +591307.96615234 4259873.84578857 172 +591313.95354553 4259873.84578857 170 +591315.94934327 4259873.84578857 170 +591317.94514099 4259873.84578857 168 +591319.94093873 4259873.84578857 168 +591321.93673645 4259873.84578857 166 +591022.56707695 4259871.84791837 182 +591028.55447015 4259871.84791837 184 +591034.54186334 4259871.84791837 186 +591036.53766106 4259871.84791837 186 +591044.52085198 4259871.84791837 188 +591056.49563837 4259871.84791837 190 +591062.48303156 4259871.84791837 192 +591072.4620202 4259871.84791837 194 +591078.4494134 4259871.84791837 195 +591088.42840205 4259871.84791837 196 +591090.42419977 4259871.84791837 196 +591092.41999751 4259871.84791837 196 +591094.41579523 4259871.84791837 196 +591096.41159297 4259871.84791837 196 +591102.39898616 4259871.84791837 195 +591106.39058162 4259871.84791837 194 +591108.38637934 4259871.84791837 192 +591112.37797481 4259871.84791837 190 +591116.36957027 4259871.84791837 188 +591124.35276119 4259871.84791837 186 +591128.34435665 4259871.84791837 184 +591132.33595211 4259871.84791837 182 +591144.31073848 4259871.84791837 180 +591150.29813167 4259871.84791837 178 +591154.28972713 4259871.84791837 176 +591158.28132259 4259871.84791837 174 +591162.27291805 4259871.84791837 172 +591164.26871579 4259871.84791837 172 +591168.26031124 4259871.84791837 174 +591172.2519067 4259871.84791837 176 +591174.24770444 4259871.84791837 178 +591178.2392999 4259871.84791837 180 +591190.21408627 4259871.84791837 182 +591202.18887266 4259871.84791837 184 +591212.1678613 4259871.84791837 186 +591214.16365903 4259871.84791837 186 +591228.13424315 4259871.84791837 188 +591234.12163634 4259871.84791837 190 +591236.11743406 4259871.84791837 190 +591238.1132318 4259871.84791837 190 +591250.08801817 4259871.84791837 190 +591252.08381591 4259871.84791837 190 +591254.07961363 4259871.84791837 190 +591258.07120909 4259871.84791837 188 +591260.06700683 4259871.84791837 188 +591262.06280455 4259871.84791837 188 +591268.05019774 4259871.84791837 186 +591274.03759094 4259871.84791837 184 +591276.03338866 4259871.84791837 182 +591278.02918639 4259871.84791837 182 +591282.02078185 4259871.84791837 180 +591286.01237731 4259871.84791837 178 +591293.99556823 4259871.84791837 176 +591301.97875916 4259871.84791837 174 +591309.96195007 4259871.84791837 172 +591311.9577478 4259871.84791837 172 +591317.94514099 4259871.84791837 170 +591319.94093873 4259871.84791837 170 +591321.93673645 4259871.84791837 168 +591020.57127923 4259869.85004815 182 +591026.55867241 4259869.85004815 184 +591032.54606561 4259869.85004815 186 +591040.52925652 4259869.85004815 188 +591042.52505426 4259869.85004815 188 +591054.49984063 4259869.85004815 190 +591060.48723383 4259869.85004815 192 +591070.46622248 4259869.85004815 194 +591074.45781794 4259869.85004815 195 +591076.45361566 4259869.85004815 195 +591082.44100886 4259869.85004815 196 +591084.43680659 4259869.85004815 196 +591086.43260431 4259869.85004815 196 +591098.4073907 4259869.85004815 196 +591102.39898616 4259869.85004815 195 +591106.39058162 4259869.85004815 194 +591108.38637934 4259869.85004815 192 +591112.37797481 4259869.85004815 190 +591116.36957027 4259869.85004815 188 +591124.35276119 4259869.85004815 186 +591128.34435665 4259869.85004815 184 +591134.33174984 4259869.85004815 182 +591146.30653622 4259869.85004815 180 +591152.29392941 4259869.85004815 178 +591156.28552487 4259869.85004815 176 +591160.27712033 4259869.85004815 174 +591168.26031124 4259869.85004815 174 +591172.2519067 4259869.85004815 176 +591174.24770444 4259869.85004815 178 +591176.24350216 4259869.85004815 180 +591188.21828855 4259869.85004815 182 +591200.19307492 4259869.85004815 184 +591210.17206358 4259869.85004815 186 +591226.13844541 4259869.85004815 188 +591232.1258386 4259869.85004815 190 +591234.12163634 4259869.85004815 190 +591256.07541137 4259869.85004815 190 +591258.07120909 4259869.85004815 190 +591260.06700683 4259869.85004815 190 +591264.05860228 4259869.85004815 188 +591266.05440002 4259869.85004815 188 +591270.04599548 4259869.85004815 186 +591272.0417932 4259869.85004815 186 +591276.03338866 4259869.85004815 184 +591280.02498412 4259869.85004815 182 +591284.01657959 4259869.85004815 180 +591288.00817505 4259869.85004815 178 +591295.99136596 4259869.85004815 176 +591303.97455688 4259869.85004815 174 +591313.95354553 4259869.85004815 172 +591315.94934327 4259869.85004815 172 +591321.93673645 4259869.85004815 170 +591026.55867241 4259867.85217794 184 +591030.55026788 4259867.85217794 186 +591036.53766106 4259867.85217794 188 +591038.5334588 4259867.85217794 188 +591052.50404291 4259867.85217794 190 +591058.49143609 4259867.85217794 192 +591066.47462702 4259867.85217794 194 +591068.47042474 4259867.85217794 194 +591072.4620202 4259867.85217794 195 +591078.4494134 4259867.85217794 196 +591080.44521113 4259867.85217794 196 +591098.4073907 4259867.85217794 196 +591102.39898616 4259867.85217794 195 +591106.39058162 4259867.85217794 194 +591108.38637934 4259867.85217794 192 +591112.37797481 4259867.85217794 190 +591118.36536799 4259867.85217794 188 +591124.35276119 4259867.85217794 186 +591130.34015438 4259867.85217794 184 +591134.33174984 4259867.85217794 182 +591146.30653622 4259867.85217794 180 +591152.29392941 4259867.85217794 178 +591158.28132259 4259867.85217794 176 +591162.27291805 4259867.85217794 174 +591166.26451352 4259867.85217794 174 +591172.2519067 4259867.85217794 178 +591174.24770444 4259867.85217794 180 +591186.22249081 4259867.85217794 182 +591198.1972772 4259867.85217794 184 +591208.17626584 4259867.85217794 186 +591224.14264769 4259867.85217794 188 +591230.13004087 4259867.85217794 190 +591262.06280455 4259867.85217794 190 +591264.05860228 4259867.85217794 190 +591268.05019774 4259867.85217794 188 +591270.04599548 4259867.85217794 188 +591274.03759094 4259867.85217794 186 +591278.02918639 4259867.85217794 184 +591280.02498412 4259867.85217794 184 +591282.02078185 4259867.85217794 182 +591284.01657959 4259867.85217794 182 +591286.01237731 4259867.85217794 180 +591288.00817505 4259867.85217794 180 +591290.00397277 4259867.85217794 178 +591297.9871637 4259867.85217794 176 +591305.97035462 4259867.85217794 174 +591317.94514099 4259867.85217794 172 +591319.94093873 4259867.85217794 172 diff --git a/autoarray/util/nn/src/nn/examples/6/makefile b/autoarray/util/nn/src/nn/examples/6/makefile index 8fc41fadc..a3ed9492c 100644 --- a/autoarray/util/nn/src/nn/examples/6/makefile +++ b/autoarray/util/nn/src/nn/examples/6/makefile @@ -1,4 +1,4 @@ -all: - ./test.sh -clean: - rm -f nn.txt *~ core +all: + ./test.sh +clean: + rm -f nn.txt *~ core diff --git a/autoarray/util/nn/src/nn/examples/6/test.sh b/autoarray/util/nn/src/nn/examples/6/test.sh index 9d09e69f3..ab9e92788 100644 --- a/autoarray/util/nn/src/nn/examples/6/test.sh +++ b/autoarray/util/nn/src/nn/examples/6/test.sh @@ -1,15 +1,15 @@ -#!/bin/bash - -if [ ! -x ../../nnbathy ] -then - echo "error: no executable found" - echo 'Run "./configure" and "make" in the source directory' - exit 1 -fi - -echo "" -echo -n "Natural Neighbours Sibson interpolation with -W 0 ..." -../../nnbathy -W 0 -n 152x114 -x 591020.57127923 591321.93673645 -y 4260093.61151167 4259867.85217794 -i data.txt > nn.txt -echo "done" -echo "" -echo 'To visualize, in Matlab run "viewexample"' +#!/bin/bash + +if [ ! -x ../../nnbathy ] +then + echo "error: no executable found" + echo 'Run "./configure" and "make" in the source directory' + exit 1 +fi + +echo "" +echo -n "Natural Neighbours Sibson interpolation with -W 0 ..." +../../nnbathy -W 0 -n 152x114 -x 591020.57127923 591321.93673645 -y 4260093.61151167 4259867.85217794 -i data.txt > nn.txt +echo "done" +echo "" +echo 'To visualize, in Matlab run "viewexample"' diff --git a/autoarray/util/nn/src/nn/examples/6/viewexample.m b/autoarray/util/nn/src/nn/examples/6/viewexample.m index c65efd711..5fcd80b71 100644 --- a/autoarray/util/nn/src/nn/examples/6/viewexample.m +++ b/autoarray/util/nn/src/nn/examples/6/viewexample.m @@ -1 +1 @@ -viewinterp('data.txt', 'nn.txt'); +viewinterp('data.txt', 'nn.txt'); diff --git a/autoarray/util/nn/src/nn/examples/6/viewinterp.m b/autoarray/util/nn/src/nn/examples/6/viewinterp.m index 2c36ec89a..1c961db5b 100644 --- a/autoarray/util/nn/src/nn/examples/6/viewinterp.m +++ b/autoarray/util/nn/src/nn/examples/6/viewinterp.m @@ -1,130 +1,130 @@ -function [h] = viewinterp(fin, fout, verbose) - - if nargin == 2 - verbose = 1; - end - - if verbose - fprintf('plotting data from "%s" and "%s"\n', fin, fout); - fprintf(' reading "%s"...', fin); - end - - data = load(fin); - xin = data(:, 1); - yin = data(:, 2); - - if verbose - fprintf('\n reading "%s"...', fout); - end - - data = load(fout); - x = data(:, 1); - y = data(:, 2); - z = data(:, 3); - clear data; - - if verbose - fprintf('\n'); - end - - if verbose - fprintf(' working out the grid dimensions...') - end - n = length(x); - if x(2) - x(1) ~= 0 & y(2) - y(1) == 0 - xfirst = 1; - xinc = x(2) > x(1); - if xinc - nx = min(find(diff(x) < 0)); - else - nx = min(find(diff(x) > 0)); - end - if mod(n, nx) ~= 0 - error(sprintf('\n Error: could not work out the grid size, n = %d, nx = %d, n / nx = %f\n', n, nx, n / nx)); - end - ny = n / nx; - x = x(1 : nx); - y = y(1 : nx : n); - z = reshape(z, nx, ny)'; - elseif x(2) - x(1) == 0 & y(2) - y(1) ~= 0 - xfirst = 0; - yinc = y(2) > y(1); - if yinc - ny = min(find(diff(y) < 0)); - else - ny = min(find(diff(y) > 0)); - end - if mod(n, ny) ~= 0 - error(sprintf('\n Error: could not work out the grid size, n = %d, ny = %d, n / ny = %.3f\n', n, ny, n / ny)); - end - nx = n / ny; - y = y(1 : ny); - x = x(1 : ny : n); - z = reshape(z, ny, nx); - else - error(' Error: not a rectangular grid'); - end - if verbose - if xfirst - fprintf('%d x %d, stored by rows\n', nx, ny); - else - fprintf('%d x %d, stored by columns\n', nx, ny); - end - end - - if verbose - fprintf(' plotting...'); - end - - h = pcolor_ps(x, y, z); - zrange = [min(min(z)) max(max(z))]; - caxis(zrange); - set(h, 'LineStyle', 'none'); - axis equal; - axis tight; - hold on; - plot(xin, yin, 'k.', 'markersize', 1); - - if verbose - fprintf('\n'); - end - - return - -function [h] = pcolor_ps(x, y, A); - - if nargin == 1 - A = x; - [n, m] = size(A); - xx = (0.5 : m + 0.5)'; - yy = (0.5 : n + 0.5)'; - elseif nargin == 3 - n = length(y); - m = length(x); - A = reshape(A, n, m); % just in case - xx = getcorners(x); - yy = getcorners(y); - else - error(sprintf('\n Error: pcolor_ps(): nargin = %d (expected 1 or 3)\n', nargin)); - end - - TMP = zeros(n + 1, m + 1); - TMP(1 : n, 1 : m) = A; - - if nargout == 0 - pcolor(xx, yy, TMP); - else - h = pcolor(xx, yy, TMP); - end - - return - -function [c] = getcorners(x) - - n = length(x); - c = zeros(n + 1, 1); - c(2 : n) = (x(2 : n) + x(1 : n - 1)) / 2; - c(1) = 2 * x(1) - c(2); - c(n + 1) = 2 * x(n) - c(n); - - return +function [h] = viewinterp(fin, fout, verbose) + + if nargin == 2 + verbose = 1; + end + + if verbose + fprintf('plotting data from "%s" and "%s"\n', fin, fout); + fprintf(' reading "%s"...', fin); + end + + data = load(fin); + xin = data(:, 1); + yin = data(:, 2); + + if verbose + fprintf('\n reading "%s"...', fout); + end + + data = load(fout); + x = data(:, 1); + y = data(:, 2); + z = data(:, 3); + clear data; + + if verbose + fprintf('\n'); + end + + if verbose + fprintf(' working out the grid dimensions...') + end + n = length(x); + if x(2) - x(1) ~= 0 & y(2) - y(1) == 0 + xfirst = 1; + xinc = x(2) > x(1); + if xinc + nx = min(find(diff(x) < 0)); + else + nx = min(find(diff(x) > 0)); + end + if mod(n, nx) ~= 0 + error(sprintf('\n Error: could not work out the grid size, n = %d, nx = %d, n / nx = %f\n', n, nx, n / nx)); + end + ny = n / nx; + x = x(1 : nx); + y = y(1 : nx : n); + z = reshape(z, nx, ny)'; + elseif x(2) - x(1) == 0 & y(2) - y(1) ~= 0 + xfirst = 0; + yinc = y(2) > y(1); + if yinc + ny = min(find(diff(y) < 0)); + else + ny = min(find(diff(y) > 0)); + end + if mod(n, ny) ~= 0 + error(sprintf('\n Error: could not work out the grid size, n = %d, ny = %d, n / ny = %.3f\n', n, ny, n / ny)); + end + nx = n / ny; + y = y(1 : ny); + x = x(1 : ny : n); + z = reshape(z, ny, nx); + else + error(' Error: not a rectangular grid'); + end + if verbose + if xfirst + fprintf('%d x %d, stored by rows\n', nx, ny); + else + fprintf('%d x %d, stored by columns\n', nx, ny); + end + end + + if verbose + fprintf(' plotting...'); + end + + h = pcolor_ps(x, y, z); + zrange = [min(min(z)) max(max(z))]; + caxis(zrange); + set(h, 'LineStyle', 'none'); + axis equal; + axis tight; + hold on; + plot(xin, yin, 'k.', 'markersize', 1); + + if verbose + fprintf('\n'); + end + + return + +function [h] = pcolor_ps(x, y, A); + + if nargin == 1 + A = x; + [n, m] = size(A); + xx = (0.5 : m + 0.5)'; + yy = (0.5 : n + 0.5)'; + elseif nargin == 3 + n = length(y); + m = length(x); + A = reshape(A, n, m); % just in case + xx = getcorners(x); + yy = getcorners(y); + else + error(sprintf('\n Error: pcolor_ps(): nargin = %d (expected 1 or 3)\n', nargin)); + end + + TMP = zeros(n + 1, m + 1); + TMP(1 : n, 1 : m) = A; + + if nargout == 0 + pcolor(xx, yy, TMP); + else + h = pcolor(xx, yy, TMP); + end + + return + +function [c] = getcorners(x) + + n = length(x); + c = zeros(n + 1, 1); + c(2 : n) = (x(2 : n) + x(1 : n - 1)) / 2; + c(1) = 2 * x(1) - c(2); + c(n + 1) = 2 * x(n) - c(n); + + return diff --git a/autoarray/util/nn/src/nn/examples/README b/autoarray/util/nn/src/nn/examples/README index d6ca334f4..d76c4978f 100644 --- a/autoarray/util/nn/src/nn/examples/README +++ b/autoarray/util/nn/src/nn/examples/README @@ -1,17 +1,17 @@ -This directory contains some tough (or not so tough) tests based mainly on -some real data (except Examples 1 and 3), on which `nn' has initially failed. -Example 1 is added for a comparison with the `csa' package in the case of -uniformly distributed data. - -Example 1: uniformly distributed random measurements of Franke test fuction. - -Example 2: bathymetry from sonar. - -Example 3: degenerate case: both interpolation points and data points lie in - the nodes of a rectangular grid. - -Example 4: topographic data from a satellite altimeter. - -Example 5: topographic data from digitised contours. - -Example 6: topographic data from digitised contours. +This directory contains some tough (or not so tough) tests based mainly on +some real data (except Examples 1 and 3), on which `nn' has initially failed. +Example 1 is added for a comparison with the `csa' package in the case of +uniformly distributed data. + +Example 1: uniformly distributed random measurements of Franke test fuction. + +Example 2: bathymetry from sonar. + +Example 3: degenerate case: both interpolation points and data points lie in + the nodes of a rectangular grid. + +Example 4: topographic data from a satellite altimeter. + +Example 5: topographic data from digitised contours. + +Example 6: topographic data from digitised contours. diff --git a/autoarray/util/nn/src/nn/hash.c b/autoarray/util/nn/src/nn/hash.c index 0b420f296..eef6243a0 100644 --- a/autoarray/util/nn/src/nn/hash.c +++ b/autoarray/util/nn/src/nn/hash.c @@ -1,841 +1,841 @@ -/****************************************************************************** - * - * File: hash.c - * - * Purpose: Hash table implementation - * - * Author: Jerry Coffin - * - * Description: Public domain code by Jerry Coffin, with improvements by - * HenkJan Wolthuis. - * - * Revisions: 18-09-2002 -- Pavel Sakov: modified - * 07-06-2017 -- Pavel Sakov: changed the hash type from - * unsigned int to uint32_t - * - *****************************************************************************/ - -#include -#include -#include -#include -#include "hash.h" - -#define SIZEOFDOUBLE 8 - -/** A hash table consists of an array of these buckets. - */ -typedef struct ht_bucket { - void* key; - void* data; - int id; /* unique id -- just in case */ - struct ht_bucket* next; -} ht_bucket; - -/** Hash table structure. - * Note that more nodes than `size' can be inserted in the table, - * but performance degrades as this happens. - */ -struct hashtable { - int size; /* table size */ - int n; /* current number of entries */ - int naccum; /* number of inserted entries */ - int nhash; /* number of used table elements */ - ht_keycp cp; - ht_keyeq eq; - ht_key2hash hash; - ht_bucket** table; -}; - -/** Creates a hash table of specified size. - * - * @param size Size of hash table for output points - * @param cp Key copy function - * @param eq Key equality check function - * @param hash Hash value calculation function - */ -hashtable* ht_create(int size, ht_keycp cp, ht_keyeq eq, ht_key2hash hash) -{ - hashtable* table = malloc(sizeof(hashtable)); - ht_bucket** bucket; - int i; - - assert(table != NULL); - - if (size <= 0) { - free(table); - return NULL; - } - - table->size = size; - table->table = malloc(sizeof(ht_bucket*) * size); - assert(table->table != NULL); - bucket = table->table; - - if (bucket == NULL) { - free(table); - return NULL; - } - - for (i = 0; i < size; ++i) - bucket[i] = NULL; - table->n = 0; - table->naccum = 0; - table->nhash = 0; - table->eq = eq; - table->cp = cp; - table->hash = hash; - - return table; -} - -/* Destroys a hash table. - * (Take care of deallocating data by ht_process() prior to destroying the - * table if necessary.) - * - * @param table Hash table to be destroyed - */ -void ht_destroy(hashtable* table) -{ - int i; - - if (table == NULL) - return; - - for (i = 0; i < table->size; ++i) { - ht_bucket* bucket; - - for (bucket = (table->table)[i]; bucket != NULL;) { - ht_bucket* prev = bucket; - - free(bucket->key); - bucket = bucket->next; - free(prev); - } - } - - free(table->table); - free(table); -} - -/* Inserts a new entry into the hash table. - * - * @param table The hash table - * @param key Ponter to entry's key - * @param data Pointer to associated data - * @return Pointer to the old data associated with the key, NULL if the key - * wasn't in the table previously - */ -void* ht_insert(hashtable* table, void* key, void* data) -{ - uint32_t val = table->hash(key) % table->size; - ht_bucket* bucket; - - /* - * NULL means this bucket hasn't been used yet. We'll simply allocate - * space for our new bucket and put our data there, with the table - * pointing at it. - */ - if ((table->table)[val] == NULL) { - bucket = malloc(sizeof(ht_bucket)); - assert(bucket != NULL); - - bucket->key = table->cp(key); - bucket->next = NULL; - bucket->data = data; - bucket->id = table->naccum; - - (table->table)[val] = bucket; - table->n++; - table->naccum++; - table->nhash++; - - return NULL; - } - - /* - * This spot in the table is already in use. See if the current string - * has already been inserted, and if so, return corresponding data. - */ - for (bucket = (table->table)[val]; bucket != NULL; bucket = bucket->next) - if (table->eq(key, bucket->key) == 1) { - void* old_data = bucket->data; - - bucket->data = data; - bucket->id = table->naccum; - table->naccum++; - - return old_data; - } - - /* - * This key must not be in the table yet. We'll add it to the head of - * the list at this spot in the hash table. Speed would be slightly - * improved if the list was kept sorted instead. In this case, this - * code would be moved into the loop above, and the insertion would take - * place as soon as it was determined that the present key in the list - * was larger than this one. - */ - bucket = (ht_bucket*) malloc(sizeof(ht_bucket)); - assert(bucket != NULL); - bucket->key = table->cp(key); - bucket->data = data; - bucket->next = (table->table)[val]; - bucket->id = table->naccum; - - (table->table)[val] = bucket; - table->n++; - table->naccum++; - - return NULL; -} - -/* Returns a pointer to the data associated with a key. If the key has - * not been inserted in the table, returns NULL. - * - * @param table The hash table - * @param key The key - * @return The associated data or NULL - */ -void* ht_find(hashtable* table, void* key) -{ - uint32_t val = table->hash(key) % table->size; - ht_bucket* bucket; - - if ((table->table)[val] == NULL) - return NULL; - - for (bucket = (table->table)[val]; bucket != NULL; bucket = bucket->next) - if (table->eq(key, bucket->key) == 1) - return bucket->data; - - return NULL; -} - -/** Returns id of the bucket associated with a key. If the key has - * not been inserted in the table, returns -1. - * - * @param table The hash table - * @param key The key - * @return id or -1 - */ -int ht_findid(hashtable* table, void* key) -{ - uint32_t val = table->hash(key) % table->size; - ht_bucket* bucket; - - if ((table->table)[val] == NULL) - return -1; - - for (bucket = (table->table)[val]; bucket != NULL; bucket = bucket->next) - if (table->eq(key, bucket->key) == 1) - return bucket->id; - - return -1; -} - -/* Deletes an entry from the table. Returns a pointer to the data that - * was associated with the key so that the calling code can dispose it - * properly. - * - * @param table The hash table - * @param key The key - * @return The associated data or NULL - */ -void* ht_delete(hashtable* table, void* key) -{ - uint32_t val = table->hash(key) % table->size; - ht_bucket* prev; - ht_bucket* bucket; - void* data; - - if ((table->table)[val] == NULL) - return NULL; - - /* - * Traverse the list, keeping track of the previous node in the list. - * When we find the node to delete, we set the previous node's next - * pointer to point to the node after ourself instead. We then delete - * the key from the present node, and return a pointer to the data it - * contains. - */ - for (prev = NULL, bucket = (table->table)[val]; bucket != NULL; prev = bucket, bucket = bucket->next) { - if (table->eq(key, bucket->key) == 1) { - data = bucket->data; - if (prev != NULL) - prev->next = bucket->next; - else { - /* - * If 'prev' still equals NULL, it means that we need to - * delete the first node in the list. This simply consists - * of putting our own 'next' pointer in the array holding - * the head of the list. We then dispose of the current - * node as above. - */ - (table->table)[val] = bucket->next; - table->nhash--; - } - free(bucket->key); - free(bucket); - table->n--; - - return data; - } - } - - /* - * If we get here, it means we didn't find the item in the table. Signal - * this by returning NULL. - */ - return NULL; -} - -/* For each entry, calls a specified function with corresponding data as a - * parameter. - * - * @param table The hash table - * @param func The action function - */ -void ht_process(hashtable* table, void (*func) (void*)) -{ - int i; - - for (i = 0; i < table->size; ++i) - if ((table->table)[i] != NULL) { - ht_bucket* bucket; - - for (bucket = (table->table)[i]; bucket != NULL; bucket = bucket->next) - func(bucket->data); - } -} - -/* - * functions for for string keys - */ - -static uint32_t strhash(void* key) -{ - char* str = key; - uint32_t hashvalue = 0; - - while (*str != 0) { - hashvalue ^= (uint32_t) str[0]; - hashvalue <<= 1; - str++; - } - - return hashvalue; -} - -static void* strcp(void* key) -{ - return strdup(key); -} - -static int streq(void* key1, void* key2) -{ - return !strcmp(key1, key2); -} - -/* functions for for double keys */ - -static uint32_t d1hash(void* key) -{ - uint32_t* v = key; - - return v[0] + v[1]; -} - -static void* d1cp(void* key) -{ - double* newkey = malloc(sizeof(double)); - - *newkey = *(double*) key; - - return newkey; -} - -static int d1eq(void* key1, void* key2) -{ - return *(double*) key1 == *(double*) key2; -} - -/* - * functions for for double[2] keys - */ - -static uint32_t d2hash(void* key) -{ - uint32_t* v = key; - - /* - * PS: here multiplications suppose to make (a,b) and (b,a) generate - * different hash values - */ - return v[0] + v[1] + v[2] * 3 + v[3] * 7; -} - -static void* d2cp(void* key) -{ - double* newkey = malloc(sizeof(double) * 2); - - newkey[0] = ((double*) key)[0]; - newkey[1] = ((double*) key)[1]; - - return newkey; -} - -static int d2eq(void* key1, void* key2) -{ - return (((double*) key1)[0] == ((double*) key2)[0]) && (((double*) key1)[1] == ((double*) key2)[1]); -} - -/* - * functions for for int[1] keys - */ - -static uint32_t i1hash(void* key) -{ - return (uint32_t) ((uint32_t *) key)[0]; -} - -static void* i1cp(void* key) -{ - uint32_t* newkey = malloc(sizeof(int)); - - newkey[0] = ((uint32_t *) key)[0]; - - return newkey; -} - -static int i1eq(void* key1, void* key2) -{ - return (((uint32_t *) key1)[0] == ((uint32_t *) key2)[0]); -} - -/* - * functions for for int[2] keys - */ - -static uint32_t i2hash(void* key) -{ - uint32_t* v = key; - - return v[0] + (v[1] << 16); -} - -static void* i2cp(void* key) -{ - uint32_t* newkey = malloc(sizeof(uint32_t) * 2); - - newkey[0] = ((uint32_t *) key)[0]; - newkey[1] = ((uint32_t *) key)[1]; - - return newkey; -} - -static int i2eq(void* key1, void* key2) -{ - return (((uint32_t *) key1)[0] == ((uint32_t *) key2)[0]) && (((uint32_t *) key1)[1] == ((uint32_t *) key2)[1]); -} - -/* - * functions for for int[1]short[2] keys - */ - -static uint32_t i1s2hash(void* key) -{ - uint32_t* vi = key; - uint16_t* vs = key; - - return vi[0] + ((uint32_t) vs[2] << 16) + ((uint32_t) vs[3] << 24); -} - -static void* i1s2cp(void* key) -{ - uint32_t* newkey = malloc(sizeof(uint32_t) * 2); - uint16_t* s = (uint16_t *) newkey; - - newkey[0] = ((uint32_t *) key)[0]; - s[2] = ((uint16_t *) key)[2]; - s[3] = ((uint16_t *) key)[3]; - - return newkey; -} - -static int i1s2eq(void* key1, void* key2) -{ - return (((uint32_t *) key1)[0] == ((uint32_t *) key2)[0]) && (((uint16_t *) key1)[2] == ((uint16_t *) key2)[2]) && (((uint16_t *) key1)[3] == ((uint16_t *) key2)[3]); -} - -/* - * functions for for short[4] keys - */ - -static uint32_t s4hash(void* key) -{ - uint16_t* v = key; - - return (uint32_t) v[0] + ((uint32_t) v[1] << 8) + ((uint32_t) v[2] << 16) + ((uint32_t) v[3] << 24); -} - -static void* s4cp(void* key) -{ - uint16_t* newkey = malloc(sizeof(short) * 4); - - newkey[0] = ((uint16_t *) key)[0]; - newkey[1] = ((uint16_t *) key)[1]; - newkey[2] = ((uint16_t *) key)[2]; - newkey[3] = ((uint16_t *) key)[3]; - - return newkey; -} - -static int s4eq(void* p1, void* p2) -{ - uint16_t* key1 = (uint16_t *) p1; - uint16_t* key2 = (uint16_t *) p2; - - return (key1[0] == key2[0] && key1[1] == key2[1] && key1[2] == key2[2] && key1[3] == key2[3]); -} - -hashtable* ht_create_d1(int size) -{ - assert(sizeof(double) == SIZEOFDOUBLE); - return ht_create(size, d1cp, d1eq, d1hash); -} - -hashtable* ht_create_d2(int size) -{ - assert(sizeof(double) == SIZEOFDOUBLE); - return ht_create(size, d2cp, d2eq, d2hash); -} - -hashtable* ht_create_str(int size) -{ - return ht_create(size, strcp, streq, strhash); -} - -hashtable* ht_create_i1(int size) -{ - return ht_create(size, i1cp, i1eq, i1hash); -} - -hashtable* ht_create_i2(int size) -{ - return ht_create(size, i2cp, i2eq, i2hash); -} - -hashtable* ht_create_i1s2(int size) -{ - return ht_create(size, i1s2cp, i1s2eq, i1s2hash); -} - -hashtable* ht_create_s4(int size) -{ - return ht_create(size, s4cp, s4eq, s4hash); -} - -int ht_getnentries(hashtable* table) -{ - return table->n; -} - -int ht_getsize(hashtable* table) -{ - return table->size; -} - -int ht_getnfilled(hashtable* table) -{ - return table->nhash; -} - -#if defined(HT_TEST) - -#include -#include - -#define BUFSIZE 1024 - -static void print_double(void* data) -{ - printf(" \"%d\"", (int)* (double*) data); -} - -static void print_string(void* data) -{ - printf(" \"%s\"", (char*) data); -} - -int main() -{ - double points[] = { - 922803.7855, 7372394.688, 0, - 922849.2037, 7372307.027, 1, - 922894.657, 7372219.306, 2, - 922940.1475, 7372131.528, 3, - 922985.6777, 7372043.692, 4, - 923031.2501, 7371955.802, 5, - 923076.8669, 7371867.857, 6, - 923122.5307, 7371779.861, 7, - 923168.2439, 7371691.816, 8, - 923214.0091, 7371603.722, 9, - 923259.8288, 7371515.583, 10, - 922891.3958, 7372440.117, 11, - 922936.873, 7372352.489, 12, - 922982.3839, 7372264.804, 13, - 923027.9308, 7372177.064, 14, - 923073.5159, 7372089.268, 15, - 923119.1415, 7372001.42, 16, - 923164.8099, 7371913.521, 17, - 923210.5233, 7371825.572, 18, - 923256.2841, 7371737.575, 19, - 923302.0946, 7371649.534, 20, - 923347.9572, 7371561.45, 21, - 922978.9747, 7372485.605, 22, - 923024.5085, 7372398.009, 23, - 923070.0748, 7372310.358, 24, - 923115.6759, 7372222.654, 25, - 923161.3136, 7372134.897, 26, - 923206.9903, 7372047.09, 27, - 923252.7079, 7371959.233, 28, - 923298.4686, 7371871.33, 29, - 923344.2745, 7371783.381, 30, - 923390.1279, 7371695.389, 31, - 923436.0309, 7371607.357, 32, - 923066.5232, 7372531.148, 33, - 923112.1115, 7372443.583, 34, - 923157.7311, 7372355.966, 35, - 923203.3842, 7372268.296, 36, - 923249.0725, 7372180.577, 37, - 923294.7981, 7372092.808, 38, - 923340.5628, 7372004.993, 39, - 923386.3686, 7371917.132, 40, - 923432.2176, 7371829.229, 41, - 923478.1116, 7371741.284, 42, - 923524.0527, 7371653.302, 43, - 923154.0423, 7372576.746, 44, - 923199.6831, 7372489.211, 45, - 923245.3541, 7372401.625, 46, - 923291.0572, 7372313.989, 47, - 923336.7941, 7372226.305, 48, - 923382.5667, 7372138.574, 49, - 923428.3766, 7372050.798, 50, - 923474.2256, 7371962.978, 51, - 923520.1155, 7371875.118, 52, - 923566.0481, 7371787.218, 53, - 923612.0252, 7371699.282, 54, - 923241.533, 7372622.396, 55, - 923287.2244, 7372534.889, 56, - 923332.9449, 7372447.334, 57, - 923378.6963, 7372359.731, 58, - 923424.4801, 7372272.081, 59, - 923470.2979, 7372184.385, 60, - 923516.1513, 7372096.646, 61, - 923562.0418, 7372008.866, 62, - 923607.9709, 7371921.046, 63, - 923653.9402, 7371833.188, 64, - 923699.9514, 7371745.296, 65, - 923328.9962, 7372668.095, 66, - 923374.7365, 7372580.617, 67, - 923420.5049, 7372493.091, 68, - 923466.303, 7372405.519, 69, - 923512.1321, 7372317.901, 70, - 923557.9936, 7372230.24, 71, - 923603.8889, 7372142.536, 72, - 923649.8192, 7372054.793, 73, - 923695.786, 7371967.011, 74, - 923741.7905, 7371879.193, 75, - 923787.8341, 7371791.342, 76, - 923416.4327, 7372713.844, 77, - 923462.2204, 7372626.393, 78, - 923508.0353, 7372538.895, 79, - 923553.8787, 7372451.353, 80, - 923599.7517, 7372363.766, 81, - 923645.6555, 7372276.137, 82, - 923691.5914, 7372188.467, 83, - 923737.5603, 7372100.757, 84, - 923783.5634, 7372013.011, 85, - 923829.6017, 7371925.231, 86, - 923875.6763, 7371837.419, 87, - 923503.8433, 7372759.64, 88, - 923549.6771, 7372672.214, 89, - 923595.5372, 7372584.744, 90, - 923641.4246, 7372497.23, 91, - 923687.3404, 7372409.673, 92, - 923733.2855, 7372322.074, 93, - 923779.2608, 7372234.436, 94, - 923825.2672, 7372146.759, 95, - 923871.3056, 7372059.047, 96, - 923917.3766, 7371971.301, 97, - 923963.4812, 7371883.524, 98, - 923591.2288, 7372805.481, 99, - 923637.1076, 7372718.081, 100, - 923683.0118, 7372630.638, 101, - 923728.9423, 7372543.151, 102, - 923774.8998, 7372455.622, 103, - 923820.8852, 7372368.052, 104, - 923866.8991, 7372280.443, 105, - 923912.9422, 7372192.797, 106, - 923959.015, 7372105.116, 107, - 924005.118, 7372017.402, 108, - 924051.2518, 7371929.657, 109, - 923678.5898, 7372851.367, 110, - 923724.5126, 7372763.992, 111, - 923770.46, 7372676.574, 112, - 923816.4328, 7372589.113, 113, - 923862.4314, 7372501.611, 114, - 923908.4564, 7372414.069, 115, - 923954.5083, 7372326.488, 116, - 924000.5875, 7372238.87, 117, - 924046.6941, 7372151.218, 118, - 924092.8286, 7372063.533, 119, - 924138.9911, 7371975.818, 120 - }; - - int size = sizeof(points) / sizeof(double) / 3; - hashtable* ht; - int i; - - /* - * double[2] key - */ - - printf("\n1. Testing a table with key of double[2] type\n\n"); - - printf(" creating a table..."); - ht = ht_create_d2(size); - printf("done\n"); - - printf(" inserting %d values from a data array...", size); - for (i = 0; i < size; ++i) - ht_insert(ht, &points[i * 3], &points[i * 3 + 2]); - printf("done\n"); - - printf(" stats:\n"); - printf(" %d entries, %d table elements, %d filled elements\n", ht->n, ht->size, ht->nhash); - printf(" %f entries per hash value in use\n", (double) ht->n / ht->nhash); - - printf(" finding and printing each 10th data:\n"); - for (i = 0; i < size; i += 10) { - double* point = &points[i * 3]; - double* data = ht_find(ht, point); - - if (data != NULL) - printf(" i = %d; data = \"%d\"\n", i, (int)* data); - else - printf(" i = %d; data = \n", i); - } - - printf(" removing every 3rd element..."); - for (i = 0; i < size; i += 3) { - double* point = &points[i * 3]; - - ht_delete(ht, point); - } - printf("done\n"); - - printf(" stats:\n"); - printf(" %d entries, %d table elements, %d filled elements\n", ht->n, ht->size, ht->nhash); - printf(" %f entries per hash value in use\n", (double) ht->n / ht->nhash); - - printf(" finding and printing each 10th data:\n"); - for (i = 0; i < size; i += 10) { - double* point = &points[i * 3]; - double* data = ht_find(ht, point); - - if (data != NULL) - printf(" i = %d; data = \"%d\"\n", i, (int)* data); - else - printf(" i = %d; data = \n", i); - } - - printf(" printing all data by calling ht_process():\n "); - ht_process(ht, print_double); - - printf("\n destroying the hash table..."); - ht_destroy(ht); - printf("done\n"); - - /* - * char* key - */ - - printf("\n2. Testing a table with key of char* type\n\n"); - - printf(" creating a table..."); - ht = ht_create_str(size); - printf("done\n"); - - printf(" inserting %d elements with deep copy of each data string...", size); - for (i = 0; i < size; ++i) { - char key[BUFSIZE]; - char str[BUFSIZE]; - char* data; - - snprintf(key, BUFSIZE, "%d-th key", i); - snprintf(str, BUFSIZE, "%d-th data", i); - data = strdup(str); - ht_insert(ht, key, data); - } - printf("done\n"); - - printf(" stats:\n"); - printf(" %d entries, %d table elements, %d filled elements\n", ht->n, ht->size, ht->nhash); - printf(" %f entries per hash value in use\n", (double) ht->n / ht->nhash); - - printf(" finding and printing each 10th data:\n"); - for (i = 0; i < size; i += 10) { - char key[BUFSIZE]; - char* data; - - snprintf(key, BUFSIZE, "%d-th key", i); - data = ht_find(ht, key); - if (data != NULL) - printf(" i = %d; data = \"%s\"\n", i, data); - else - printf(" i = %d; data = \n", i); - } - - printf(" removing every 3rd element..."); - for (i = 0; i < size; i += 3) { - char key[BUFSIZE]; - - snprintf(key, BUFSIZE, "%d-th key", i); - free(ht_delete(ht, key)); - } - printf("done\n"); - - printf(" stats:\n"); - printf(" %d entries, %d table elements, %d filled elements\n", ht->n, ht->size, ht->nhash); - printf(" %f entries per hash value in use\n", (double) ht->n / ht->nhash); - - printf(" finding and printing each 10th data:\n"); - for (i = 0; i < size; i += 10) { - char key[BUFSIZE]; - char* data; - - snprintf(key, BUFSIZE, "%d-th key", i); - data = ht_find(ht, key); - if (data != NULL) - printf(" i = %d; data = \"%s\"\n", i, data); - else - printf(" i = %d; data = \n", i); - } - - printf(" printing all data by calling ht_process():\n "); - ht_process(ht, print_string); - - printf("\n freeing the remaining data by calling ht_process()..."); - ht_process(ht, free); - printf("done\n"); - - printf(" destroying the hash table..."); - ht_destroy(ht); - printf("done\n"); - - return 0; -} - -#endif /* HT_TEST */ +/****************************************************************************** + * + * File: hash.c + * + * Purpose: Hash table implementation + * + * Author: Jerry Coffin + * + * Description: Public domain code by Jerry Coffin, with improvements by + * HenkJan Wolthuis. + * + * Revisions: 18-09-2002 -- Pavel Sakov: modified + * 07-06-2017 -- Pavel Sakov: changed the hash type from + * unsigned int to uint32_t + * + *****************************************************************************/ + +#include +#include +#include +#include +#include "hash.h" + +#define SIZEOFDOUBLE 8 + +/** A hash table consists of an array of these buckets. + */ +typedef struct ht_bucket { + void* key; + void* data; + int id; /* unique id -- just in case */ + struct ht_bucket* next; +} ht_bucket; + +/** Hash table structure. + * Note that more nodes than `size' can be inserted in the table, + * but performance degrades as this happens. + */ +struct hashtable { + int size; /* table size */ + int n; /* current number of entries */ + int naccum; /* number of inserted entries */ + int nhash; /* number of used table elements */ + ht_keycp cp; + ht_keyeq eq; + ht_key2hash hash; + ht_bucket** table; +}; + +/** Creates a hash table of specified size. + * + * @param size Size of hash table for output points + * @param cp Key copy function + * @param eq Key equality check function + * @param hash Hash value calculation function + */ +hashtable* ht_create(int size, ht_keycp cp, ht_keyeq eq, ht_key2hash hash) +{ + hashtable* table = malloc(sizeof(hashtable)); + ht_bucket** bucket; + int i; + + assert(table != NULL); + + if (size <= 0) { + free(table); + return NULL; + } + + table->size = size; + table->table = malloc(sizeof(ht_bucket*) * size); + assert(table->table != NULL); + bucket = table->table; + + if (bucket == NULL) { + free(table); + return NULL; + } + + for (i = 0; i < size; ++i) + bucket[i] = NULL; + table->n = 0; + table->naccum = 0; + table->nhash = 0; + table->eq = eq; + table->cp = cp; + table->hash = hash; + + return table; +} + +/* Destroys a hash table. + * (Take care of deallocating data by ht_process() prior to destroying the + * table if necessary.) + * + * @param table Hash table to be destroyed + */ +void ht_destroy(hashtable* table) +{ + int i; + + if (table == NULL) + return; + + for (i = 0; i < table->size; ++i) { + ht_bucket* bucket; + + for (bucket = (table->table)[i]; bucket != NULL;) { + ht_bucket* prev = bucket; + + free(bucket->key); + bucket = bucket->next; + free(prev); + } + } + + free(table->table); + free(table); +} + +/* Inserts a new entry into the hash table. + * + * @param table The hash table + * @param key Ponter to entry's key + * @param data Pointer to associated data + * @return Pointer to the old data associated with the key, NULL if the key + * wasn't in the table previously + */ +void* ht_insert(hashtable* table, void* key, void* data) +{ + uint32_t val = table->hash(key) % table->size; + ht_bucket* bucket; + + /* + * NULL means this bucket hasn't been used yet. We'll simply allocate + * space for our new bucket and put our data there, with the table + * pointing at it. + */ + if ((table->table)[val] == NULL) { + bucket = malloc(sizeof(ht_bucket)); + assert(bucket != NULL); + + bucket->key = table->cp(key); + bucket->next = NULL; + bucket->data = data; + bucket->id = table->naccum; + + (table->table)[val] = bucket; + table->n++; + table->naccum++; + table->nhash++; + + return NULL; + } + + /* + * This spot in the table is already in use. See if the current string + * has already been inserted, and if so, return corresponding data. + */ + for (bucket = (table->table)[val]; bucket != NULL; bucket = bucket->next) + if (table->eq(key, bucket->key) == 1) { + void* old_data = bucket->data; + + bucket->data = data; + bucket->id = table->naccum; + table->naccum++; + + return old_data; + } + + /* + * This key must not be in the table yet. We'll add it to the head of + * the list at this spot in the hash table. Speed would be slightly + * improved if the list was kept sorted instead. In this case, this + * code would be moved into the loop above, and the insertion would take + * place as soon as it was determined that the present key in the list + * was larger than this one. + */ + bucket = (ht_bucket*) malloc(sizeof(ht_bucket)); + assert(bucket != NULL); + bucket->key = table->cp(key); + bucket->data = data; + bucket->next = (table->table)[val]; + bucket->id = table->naccum; + + (table->table)[val] = bucket; + table->n++; + table->naccum++; + + return NULL; +} + +/* Returns a pointer to the data associated with a key. If the key has + * not been inserted in the table, returns NULL. + * + * @param table The hash table + * @param key The key + * @return The associated data or NULL + */ +void* ht_find(hashtable* table, void* key) +{ + uint32_t val = table->hash(key) % table->size; + ht_bucket* bucket; + + if ((table->table)[val] == NULL) + return NULL; + + for (bucket = (table->table)[val]; bucket != NULL; bucket = bucket->next) + if (table->eq(key, bucket->key) == 1) + return bucket->data; + + return NULL; +} + +/** Returns id of the bucket associated with a key. If the key has + * not been inserted in the table, returns -1. + * + * @param table The hash table + * @param key The key + * @return id or -1 + */ +int ht_findid(hashtable* table, void* key) +{ + uint32_t val = table->hash(key) % table->size; + ht_bucket* bucket; + + if ((table->table)[val] == NULL) + return -1; + + for (bucket = (table->table)[val]; bucket != NULL; bucket = bucket->next) + if (table->eq(key, bucket->key) == 1) + return bucket->id; + + return -1; +} + +/* Deletes an entry from the table. Returns a pointer to the data that + * was associated with the key so that the calling code can dispose it + * properly. + * + * @param table The hash table + * @param key The key + * @return The associated data or NULL + */ +void* ht_delete(hashtable* table, void* key) +{ + uint32_t val = table->hash(key) % table->size; + ht_bucket* prev; + ht_bucket* bucket; + void* data; + + if ((table->table)[val] == NULL) + return NULL; + + /* + * Traverse the list, keeping track of the previous node in the list. + * When we find the node to delete, we set the previous node's next + * pointer to point to the node after ourself instead. We then delete + * the key from the present node, and return a pointer to the data it + * contains. + */ + for (prev = NULL, bucket = (table->table)[val]; bucket != NULL; prev = bucket, bucket = bucket->next) { + if (table->eq(key, bucket->key) == 1) { + data = bucket->data; + if (prev != NULL) + prev->next = bucket->next; + else { + /* + * If 'prev' still equals NULL, it means that we need to + * delete the first node in the list. This simply consists + * of putting our own 'next' pointer in the array holding + * the head of the list. We then dispose of the current + * node as above. + */ + (table->table)[val] = bucket->next; + table->nhash--; + } + free(bucket->key); + free(bucket); + table->n--; + + return data; + } + } + + /* + * If we get here, it means we didn't find the item in the table. Signal + * this by returning NULL. + */ + return NULL; +} + +/* For each entry, calls a specified function with corresponding data as a + * parameter. + * + * @param table The hash table + * @param func The action function + */ +void ht_process(hashtable* table, void (*func) (void*)) +{ + int i; + + for (i = 0; i < table->size; ++i) + if ((table->table)[i] != NULL) { + ht_bucket* bucket; + + for (bucket = (table->table)[i]; bucket != NULL; bucket = bucket->next) + func(bucket->data); + } +} + +/* + * functions for for string keys + */ + +static uint32_t strhash(void* key) +{ + char* str = key; + uint32_t hashvalue = 0; + + while (*str != 0) { + hashvalue ^= (uint32_t) str[0]; + hashvalue <<= 1; + str++; + } + + return hashvalue; +} + +static void* strcp(void* key) +{ + return strdup(key); +} + +static int streq(void* key1, void* key2) +{ + return !strcmp(key1, key2); +} + +/* functions for for double keys */ + +static uint32_t d1hash(void* key) +{ + uint32_t* v = key; + + return v[0] + v[1]; +} + +static void* d1cp(void* key) +{ + double* newkey = malloc(sizeof(double)); + + *newkey = *(double*) key; + + return newkey; +} + +static int d1eq(void* key1, void* key2) +{ + return *(double*) key1 == *(double*) key2; +} + +/* + * functions for for double[2] keys + */ + +static uint32_t d2hash(void* key) +{ + uint32_t* v = key; + + /* + * PS: here multiplications suppose to make (a,b) and (b,a) generate + * different hash values + */ + return v[0] + v[1] + v[2] * 3 + v[3] * 7; +} + +static void* d2cp(void* key) +{ + double* newkey = malloc(sizeof(double) * 2); + + newkey[0] = ((double*) key)[0]; + newkey[1] = ((double*) key)[1]; + + return newkey; +} + +static int d2eq(void* key1, void* key2) +{ + return (((double*) key1)[0] == ((double*) key2)[0]) && (((double*) key1)[1] == ((double*) key2)[1]); +} + +/* + * functions for for int[1] keys + */ + +static uint32_t i1hash(void* key) +{ + return (uint32_t) ((uint32_t *) key)[0]; +} + +static void* i1cp(void* key) +{ + uint32_t* newkey = malloc(sizeof(int)); + + newkey[0] = ((uint32_t *) key)[0]; + + return newkey; +} + +static int i1eq(void* key1, void* key2) +{ + return (((uint32_t *) key1)[0] == ((uint32_t *) key2)[0]); +} + +/* + * functions for for int[2] keys + */ + +static uint32_t i2hash(void* key) +{ + uint32_t* v = key; + + return v[0] + (v[1] << 16); +} + +static void* i2cp(void* key) +{ + uint32_t* newkey = malloc(sizeof(uint32_t) * 2); + + newkey[0] = ((uint32_t *) key)[0]; + newkey[1] = ((uint32_t *) key)[1]; + + return newkey; +} + +static int i2eq(void* key1, void* key2) +{ + return (((uint32_t *) key1)[0] == ((uint32_t *) key2)[0]) && (((uint32_t *) key1)[1] == ((uint32_t *) key2)[1]); +} + +/* + * functions for for int[1]short[2] keys + */ + +static uint32_t i1s2hash(void* key) +{ + uint32_t* vi = key; + uint16_t* vs = key; + + return vi[0] + ((uint32_t) vs[2] << 16) + ((uint32_t) vs[3] << 24); +} + +static void* i1s2cp(void* key) +{ + uint32_t* newkey = malloc(sizeof(uint32_t) * 2); + uint16_t* s = (uint16_t *) newkey; + + newkey[0] = ((uint32_t *) key)[0]; + s[2] = ((uint16_t *) key)[2]; + s[3] = ((uint16_t *) key)[3]; + + return newkey; +} + +static int i1s2eq(void* key1, void* key2) +{ + return (((uint32_t *) key1)[0] == ((uint32_t *) key2)[0]) && (((uint16_t *) key1)[2] == ((uint16_t *) key2)[2]) && (((uint16_t *) key1)[3] == ((uint16_t *) key2)[3]); +} + +/* + * functions for for short[4] keys + */ + +static uint32_t s4hash(void* key) +{ + uint16_t* v = key; + + return (uint32_t) v[0] + ((uint32_t) v[1] << 8) + ((uint32_t) v[2] << 16) + ((uint32_t) v[3] << 24); +} + +static void* s4cp(void* key) +{ + uint16_t* newkey = malloc(sizeof(short) * 4); + + newkey[0] = ((uint16_t *) key)[0]; + newkey[1] = ((uint16_t *) key)[1]; + newkey[2] = ((uint16_t *) key)[2]; + newkey[3] = ((uint16_t *) key)[3]; + + return newkey; +} + +static int s4eq(void* p1, void* p2) +{ + uint16_t* key1 = (uint16_t *) p1; + uint16_t* key2 = (uint16_t *) p2; + + return (key1[0] == key2[0] && key1[1] == key2[1] && key1[2] == key2[2] && key1[3] == key2[3]); +} + +hashtable* ht_create_d1(int size) +{ + assert(sizeof(double) == SIZEOFDOUBLE); + return ht_create(size, d1cp, d1eq, d1hash); +} + +hashtable* ht_create_d2(int size) +{ + assert(sizeof(double) == SIZEOFDOUBLE); + return ht_create(size, d2cp, d2eq, d2hash); +} + +hashtable* ht_create_str(int size) +{ + return ht_create(size, strcp, streq, strhash); +} + +hashtable* ht_create_i1(int size) +{ + return ht_create(size, i1cp, i1eq, i1hash); +} + +hashtable* ht_create_i2(int size) +{ + return ht_create(size, i2cp, i2eq, i2hash); +} + +hashtable* ht_create_i1s2(int size) +{ + return ht_create(size, i1s2cp, i1s2eq, i1s2hash); +} + +hashtable* ht_create_s4(int size) +{ + return ht_create(size, s4cp, s4eq, s4hash); +} + +int ht_getnentries(hashtable* table) +{ + return table->n; +} + +int ht_getsize(hashtable* table) +{ + return table->size; +} + +int ht_getnfilled(hashtable* table) +{ + return table->nhash; +} + +#if defined(HT_TEST) + +#include +#include + +#define BUFSIZE 1024 + +static void print_double(void* data) +{ + printf(" \"%d\"", (int)* (double*) data); +} + +static void print_string(void* data) +{ + printf(" \"%s\"", (char*) data); +} + +int main() +{ + double points[] = { + 922803.7855, 7372394.688, 0, + 922849.2037, 7372307.027, 1, + 922894.657, 7372219.306, 2, + 922940.1475, 7372131.528, 3, + 922985.6777, 7372043.692, 4, + 923031.2501, 7371955.802, 5, + 923076.8669, 7371867.857, 6, + 923122.5307, 7371779.861, 7, + 923168.2439, 7371691.816, 8, + 923214.0091, 7371603.722, 9, + 923259.8288, 7371515.583, 10, + 922891.3958, 7372440.117, 11, + 922936.873, 7372352.489, 12, + 922982.3839, 7372264.804, 13, + 923027.9308, 7372177.064, 14, + 923073.5159, 7372089.268, 15, + 923119.1415, 7372001.42, 16, + 923164.8099, 7371913.521, 17, + 923210.5233, 7371825.572, 18, + 923256.2841, 7371737.575, 19, + 923302.0946, 7371649.534, 20, + 923347.9572, 7371561.45, 21, + 922978.9747, 7372485.605, 22, + 923024.5085, 7372398.009, 23, + 923070.0748, 7372310.358, 24, + 923115.6759, 7372222.654, 25, + 923161.3136, 7372134.897, 26, + 923206.9903, 7372047.09, 27, + 923252.7079, 7371959.233, 28, + 923298.4686, 7371871.33, 29, + 923344.2745, 7371783.381, 30, + 923390.1279, 7371695.389, 31, + 923436.0309, 7371607.357, 32, + 923066.5232, 7372531.148, 33, + 923112.1115, 7372443.583, 34, + 923157.7311, 7372355.966, 35, + 923203.3842, 7372268.296, 36, + 923249.0725, 7372180.577, 37, + 923294.7981, 7372092.808, 38, + 923340.5628, 7372004.993, 39, + 923386.3686, 7371917.132, 40, + 923432.2176, 7371829.229, 41, + 923478.1116, 7371741.284, 42, + 923524.0527, 7371653.302, 43, + 923154.0423, 7372576.746, 44, + 923199.6831, 7372489.211, 45, + 923245.3541, 7372401.625, 46, + 923291.0572, 7372313.989, 47, + 923336.7941, 7372226.305, 48, + 923382.5667, 7372138.574, 49, + 923428.3766, 7372050.798, 50, + 923474.2256, 7371962.978, 51, + 923520.1155, 7371875.118, 52, + 923566.0481, 7371787.218, 53, + 923612.0252, 7371699.282, 54, + 923241.533, 7372622.396, 55, + 923287.2244, 7372534.889, 56, + 923332.9449, 7372447.334, 57, + 923378.6963, 7372359.731, 58, + 923424.4801, 7372272.081, 59, + 923470.2979, 7372184.385, 60, + 923516.1513, 7372096.646, 61, + 923562.0418, 7372008.866, 62, + 923607.9709, 7371921.046, 63, + 923653.9402, 7371833.188, 64, + 923699.9514, 7371745.296, 65, + 923328.9962, 7372668.095, 66, + 923374.7365, 7372580.617, 67, + 923420.5049, 7372493.091, 68, + 923466.303, 7372405.519, 69, + 923512.1321, 7372317.901, 70, + 923557.9936, 7372230.24, 71, + 923603.8889, 7372142.536, 72, + 923649.8192, 7372054.793, 73, + 923695.786, 7371967.011, 74, + 923741.7905, 7371879.193, 75, + 923787.8341, 7371791.342, 76, + 923416.4327, 7372713.844, 77, + 923462.2204, 7372626.393, 78, + 923508.0353, 7372538.895, 79, + 923553.8787, 7372451.353, 80, + 923599.7517, 7372363.766, 81, + 923645.6555, 7372276.137, 82, + 923691.5914, 7372188.467, 83, + 923737.5603, 7372100.757, 84, + 923783.5634, 7372013.011, 85, + 923829.6017, 7371925.231, 86, + 923875.6763, 7371837.419, 87, + 923503.8433, 7372759.64, 88, + 923549.6771, 7372672.214, 89, + 923595.5372, 7372584.744, 90, + 923641.4246, 7372497.23, 91, + 923687.3404, 7372409.673, 92, + 923733.2855, 7372322.074, 93, + 923779.2608, 7372234.436, 94, + 923825.2672, 7372146.759, 95, + 923871.3056, 7372059.047, 96, + 923917.3766, 7371971.301, 97, + 923963.4812, 7371883.524, 98, + 923591.2288, 7372805.481, 99, + 923637.1076, 7372718.081, 100, + 923683.0118, 7372630.638, 101, + 923728.9423, 7372543.151, 102, + 923774.8998, 7372455.622, 103, + 923820.8852, 7372368.052, 104, + 923866.8991, 7372280.443, 105, + 923912.9422, 7372192.797, 106, + 923959.015, 7372105.116, 107, + 924005.118, 7372017.402, 108, + 924051.2518, 7371929.657, 109, + 923678.5898, 7372851.367, 110, + 923724.5126, 7372763.992, 111, + 923770.46, 7372676.574, 112, + 923816.4328, 7372589.113, 113, + 923862.4314, 7372501.611, 114, + 923908.4564, 7372414.069, 115, + 923954.5083, 7372326.488, 116, + 924000.5875, 7372238.87, 117, + 924046.6941, 7372151.218, 118, + 924092.8286, 7372063.533, 119, + 924138.9911, 7371975.818, 120 + }; + + int size = sizeof(points) / sizeof(double) / 3; + hashtable* ht; + int i; + + /* + * double[2] key + */ + + printf("\n1. Testing a table with key of double[2] type\n\n"); + + printf(" creating a table..."); + ht = ht_create_d2(size); + printf("done\n"); + + printf(" inserting %d values from a data array...", size); + for (i = 0; i < size; ++i) + ht_insert(ht, &points[i * 3], &points[i * 3 + 2]); + printf("done\n"); + + printf(" stats:\n"); + printf(" %d entries, %d table elements, %d filled elements\n", ht->n, ht->size, ht->nhash); + printf(" %f entries per hash value in use\n", (double) ht->n / ht->nhash); + + printf(" finding and printing each 10th data:\n"); + for (i = 0; i < size; i += 10) { + double* point = &points[i * 3]; + double* data = ht_find(ht, point); + + if (data != NULL) + printf(" i = %d; data = \"%d\"\n", i, (int)* data); + else + printf(" i = %d; data = \n", i); + } + + printf(" removing every 3rd element..."); + for (i = 0; i < size; i += 3) { + double* point = &points[i * 3]; + + ht_delete(ht, point); + } + printf("done\n"); + + printf(" stats:\n"); + printf(" %d entries, %d table elements, %d filled elements\n", ht->n, ht->size, ht->nhash); + printf(" %f entries per hash value in use\n", (double) ht->n / ht->nhash); + + printf(" finding and printing each 10th data:\n"); + for (i = 0; i < size; i += 10) { + double* point = &points[i * 3]; + double* data = ht_find(ht, point); + + if (data != NULL) + printf(" i = %d; data = \"%d\"\n", i, (int)* data); + else + printf(" i = %d; data = \n", i); + } + + printf(" printing all data by calling ht_process():\n "); + ht_process(ht, print_double); + + printf("\n destroying the hash table..."); + ht_destroy(ht); + printf("done\n"); + + /* + * char* key + */ + + printf("\n2. Testing a table with key of char* type\n\n"); + + printf(" creating a table..."); + ht = ht_create_str(size); + printf("done\n"); + + printf(" inserting %d elements with deep copy of each data string...", size); + for (i = 0; i < size; ++i) { + char key[BUFSIZE]; + char str[BUFSIZE]; + char* data; + + snprintf(key, BUFSIZE, "%d-th key", i); + snprintf(str, BUFSIZE, "%d-th data", i); + data = strdup(str); + ht_insert(ht, key, data); + } + printf("done\n"); + + printf(" stats:\n"); + printf(" %d entries, %d table elements, %d filled elements\n", ht->n, ht->size, ht->nhash); + printf(" %f entries per hash value in use\n", (double) ht->n / ht->nhash); + + printf(" finding and printing each 10th data:\n"); + for (i = 0; i < size; i += 10) { + char key[BUFSIZE]; + char* data; + + snprintf(key, BUFSIZE, "%d-th key", i); + data = ht_find(ht, key); + if (data != NULL) + printf(" i = %d; data = \"%s\"\n", i, data); + else + printf(" i = %d; data = \n", i); + } + + printf(" removing every 3rd element..."); + for (i = 0; i < size; i += 3) { + char key[BUFSIZE]; + + snprintf(key, BUFSIZE, "%d-th key", i); + free(ht_delete(ht, key)); + } + printf("done\n"); + + printf(" stats:\n"); + printf(" %d entries, %d table elements, %d filled elements\n", ht->n, ht->size, ht->nhash); + printf(" %f entries per hash value in use\n", (double) ht->n / ht->nhash); + + printf(" finding and printing each 10th data:\n"); + for (i = 0; i < size; i += 10) { + char key[BUFSIZE]; + char* data; + + snprintf(key, BUFSIZE, "%d-th key", i); + data = ht_find(ht, key); + if (data != NULL) + printf(" i = %d; data = \"%s\"\n", i, data); + else + printf(" i = %d; data = \n", i); + } + + printf(" printing all data by calling ht_process():\n "); + ht_process(ht, print_string); + + printf("\n freeing the remaining data by calling ht_process()..."); + ht_process(ht, free); + printf("done\n"); + + printf(" destroying the hash table..."); + ht_destroy(ht); + printf("done\n"); + + return 0; +} + +#endif /* HT_TEST */ diff --git a/autoarray/util/nn/src/nn/hash.h b/autoarray/util/nn/src/nn/hash.h index 32d492126..3615bb62e 100644 --- a/autoarray/util/nn/src/nn/hash.h +++ b/autoarray/util/nn/src/nn/hash.h @@ -1,61 +1,61 @@ -/****************************************************************************** - * - * File: hash.h - * - * Purpose: Hash table header - * - * Author: Jerry Coffin - * - * Description: Public domain code by Jerry Coffin, with improvements by - * HenkJan Wolthuis. - * Date last modified: 05-Jul-1997 - * - * Revisions: 18-09-2002 -- Pavel Sakov: modified - * 07-06-2017 -- Pavel Sakov: changed the hash type from - * unsigned int to uint32_t - * - *****************************************************************************/ - -#ifndef _HASH_H -#define _HASH_H - -#include - -struct hashtable; -typedef struct hashtable hashtable; - -/** Copies a key. The key must permit to be deallocated by free(). - */ -typedef void* (*ht_keycp) (void*); - -/** Returns 1 if two keys are equal, 0 otherwise. - */ -typedef int (*ht_keyeq) (void*, void*); - -/** Converts key to an unsigned 32-bit integer (not necessarily unique). - */ -typedef uint32_t(*ht_key2hash) (void*); - -hashtable* ht_create(int size, ht_keycp cp, ht_keyeq eq, ht_key2hash hash); - -/** Create a hash table of specified size and key type. - */ -hashtable* ht_create_d1(int size); /* double[1] */ -hashtable* ht_create_d2(int size); /* double[2] */ -hashtable* ht_create_str(int size); /* char* */ -hashtable* ht_create_i1(int size); /* uint32_t[1] */ -hashtable* ht_create_i2(int size); /* uint32_t[2] */ -hashtable* ht_create_i1s2(int size); /* uint32_t[1]uint16_t[2] */ -hashtable* ht_create_s4(int size); /* uint16_t[4] */ - -void ht_destroy(hashtable* table); -void* ht_insert(hashtable* table, void* key, void* data); -void* ht_find(hashtable* table, void* key); -int ht_findid(hashtable* table, void* key); -void* ht_delete(hashtable* table, void* key); -void ht_process(hashtable* table, void (*func) (void*)); -int ht_getnentries(hashtable* table); -int ht_getsize(hashtable* table); -int ht_getnfilled(hashtable* table); - -#endif /* _HASH_H */ +/****************************************************************************** + * + * File: hash.h + * + * Purpose: Hash table header + * + * Author: Jerry Coffin + * + * Description: Public domain code by Jerry Coffin, with improvements by + * HenkJan Wolthuis. + * Date last modified: 05-Jul-1997 + * + * Revisions: 18-09-2002 -- Pavel Sakov: modified + * 07-06-2017 -- Pavel Sakov: changed the hash type from + * unsigned int to uint32_t + * + *****************************************************************************/ + +#ifndef _HASH_H +#define _HASH_H + +#include + +struct hashtable; +typedef struct hashtable hashtable; + +/** Copies a key. The key must permit to be deallocated by free(). + */ +typedef void* (*ht_keycp) (void*); + +/** Returns 1 if two keys are equal, 0 otherwise. + */ +typedef int (*ht_keyeq) (void*, void*); + +/** Converts key to an unsigned 32-bit integer (not necessarily unique). + */ +typedef uint32_t(*ht_key2hash) (void*); + +hashtable* ht_create(int size, ht_keycp cp, ht_keyeq eq, ht_key2hash hash); + +/** Create a hash table of specified size and key type. + */ +hashtable* ht_create_d1(int size); /* double[1] */ +hashtable* ht_create_d2(int size); /* double[2] */ +hashtable* ht_create_str(int size); /* char* */ +hashtable* ht_create_i1(int size); /* uint32_t[1] */ +hashtable* ht_create_i2(int size); /* uint32_t[2] */ +hashtable* ht_create_i1s2(int size); /* uint32_t[1]uint16_t[2] */ +hashtable* ht_create_s4(int size); /* uint16_t[4] */ + +void ht_destroy(hashtable* table); +void* ht_insert(hashtable* table, void* key, void* data); +void* ht_find(hashtable* table, void* key); +int ht_findid(hashtable* table, void* key); +void* ht_delete(hashtable* table, void* key); +void ht_process(hashtable* table, void (*func) (void*)); +int ht_getnentries(hashtable* table); +int ht_getsize(hashtable* table); +int ht_getnfilled(hashtable* table); + +#endif /* _HASH_H */ diff --git a/autoarray/util/nn/src/nn/install-sh b/autoarray/util/nn/src/nn/install-sh index 89fc9b098..e5efbab1e 100644 --- a/autoarray/util/nn/src/nn/install-sh +++ b/autoarray/util/nn/src/nn/install-sh @@ -1,238 +1,238 @@ -#! /bin/sh -# -# install - install a program, script, or datafile -# This comes from X11R5. -# -# Calling this script install-sh is preferred over install.sh, to prevent -# `make' implicit rules from creating a file called install from it -# when there is no Makefile. -# -# This script is compatible with the BSD install script, but was written -# from scratch. -# - - -# set DOITPROG to echo to test this script - -# Don't use :- since 4.3BSD and earlier shells don't like it. -doit="${DOITPROG-}" - - -# put in absolute paths if you don't have them in your path; or use env. vars. - -mvprog="${MVPROG-mv}" -cpprog="${CPPROG-cp}" -chmodprog="${CHMODPROG-chmod}" -chownprog="${CHOWNPROG-chown}" -chgrpprog="${CHGRPPROG-chgrp}" -stripprog="${STRIPPROG-strip}" -rmprog="${RMPROG-rm}" -mkdirprog="${MKDIRPROG-mkdir}" - -tranformbasename="" -transform_arg="" -instcmd="$mvprog" -chmodcmd="$chmodprog 0755" -chowncmd="" -chgrpcmd="" -stripcmd="" -rmcmd="$rmprog -f" -mvcmd="$mvprog" -src="" -dst="" -dir_arg="" - -while [ x"$1" != x ]; do - case $1 in - -c) instcmd="$cpprog" - shift - continue;; - - -d) dir_arg=true - shift - continue;; - - -m) chmodcmd="$chmodprog $2" - shift - shift - continue;; - - -o) chowncmd="$chownprog $2" - shift - shift - continue;; - - -g) chgrpcmd="$chgrpprog $2" - shift - shift - continue;; - - -s) stripcmd="$stripprog" - shift - continue;; - - -t=*) transformarg=`echo $1 | sed 's/-t=//'` - shift - continue;; - - -b=*) transformbasename=`echo $1 | sed 's/-b=//'` - shift - continue;; - - *) if [ x"$src" = x ] - then - src=$1 - else - # this colon is to work around a 386BSD /bin/sh bug - : - dst=$1 - fi - shift - continue;; - esac -done - -if [ x"$src" = x ] -then - echo "install: no input file specified" - exit 1 -else - true -fi - -if [ x"$dir_arg" != x ]; then - dst=$src - src="" - - if [ -d $dst ]; then - instcmd=: - else - instcmd=mkdir - fi -else - -# Waiting for this to be detected by the "$instcmd $src $dsttmp" command -# might cause directories to be created, which would be especially bad -# if $src (and thus $dsttmp) contains '*'. - - if [ -f $src -o -d $src ] - then - true - else - echo "install: $src does not exist" - exit 1 - fi - - if [ x"$dst" = x ] - then - echo "install: no destination specified" - exit 1 - else - true - fi - -# If destination is a directory, append the input filename; if your system -# does not like double slashes in filenames, you may need to add some logic - - if [ -d $dst ] - then - dst="$dst"/`basename $src` - else - true - fi -fi - -## this sed command emulates the dirname command -dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'` - -# Make sure that the destination directory exists. -# this part is taken from Noah Friedman's mkinstalldirs script - -# Skip lots of stat calls in the usual case. -if [ ! -d "$dstdir" ]; then -defaultIFS=' -' -IFS="${IFS-${defaultIFS}}" - -oIFS="${IFS}" -# Some sh's can't handle IFS=/ for some reason. -IFS='%' -set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'` -IFS="${oIFS}" - -pathcomp='' - -while [ $# -ne 0 ] ; do - pathcomp="${pathcomp}${1}" - shift - - if [ ! -d "${pathcomp}" ] ; - then - $mkdirprog "${pathcomp}" - else - true - fi - - pathcomp="${pathcomp}/" -done -fi - -if [ x"$dir_arg" != x ] -then - $doit $instcmd $dst && - - if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else true ; fi && - if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else true ; fi && - if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else true ; fi && - if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else true ; fi -else - -# If we're going to rename the final executable, determine the name now. - - if [ x"$transformarg" = x ] - then - dstfile=`basename $dst` - else - dstfile=`basename $dst $transformbasename | - sed $transformarg`$transformbasename - fi - -# don't allow the sed command to completely eliminate the filename - - if [ x"$dstfile" = x ] - then - dstfile=`basename $dst` - else - true - fi - -# Make a temp file name in the proper directory. - - dsttmp=$dstdir/#inst.$$# - -# Move or copy the file name to the temp name - - $doit $instcmd $src $dsttmp && - - trap "rm -f ${dsttmp}" 0 && - -# and set any options; do chmod last to preserve setuid bits - -# If any of these fail, we abort the whole thing. If we want to -# ignore errors from any of these, just make sure not to ignore -# errors from the above "$doit $instcmd $src $dsttmp" command. - - if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else true;fi && - if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else true;fi && - if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else true;fi && - if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else true;fi && - -# Now rename the file to the real destination. - - $doit $rmcmd -f $dstdir/$dstfile && - $doit $mvcmd $dsttmp $dstdir/$dstfile - -fi && - - -exit 0 +#! /bin/sh +# +# install - install a program, script, or datafile +# This comes from X11R5. +# +# Calling this script install-sh is preferred over install.sh, to prevent +# `make' implicit rules from creating a file called install from it +# when there is no Makefile. +# +# This script is compatible with the BSD install script, but was written +# from scratch. +# + + +# set DOITPROG to echo to test this script + +# Don't use :- since 4.3BSD and earlier shells don't like it. +doit="${DOITPROG-}" + + +# put in absolute paths if you don't have them in your path; or use env. vars. + +mvprog="${MVPROG-mv}" +cpprog="${CPPROG-cp}" +chmodprog="${CHMODPROG-chmod}" +chownprog="${CHOWNPROG-chown}" +chgrpprog="${CHGRPPROG-chgrp}" +stripprog="${STRIPPROG-strip}" +rmprog="${RMPROG-rm}" +mkdirprog="${MKDIRPROG-mkdir}" + +tranformbasename="" +transform_arg="" +instcmd="$mvprog" +chmodcmd="$chmodprog 0755" +chowncmd="" +chgrpcmd="" +stripcmd="" +rmcmd="$rmprog -f" +mvcmd="$mvprog" +src="" +dst="" +dir_arg="" + +while [ x"$1" != x ]; do + case $1 in + -c) instcmd="$cpprog" + shift + continue;; + + -d) dir_arg=true + shift + continue;; + + -m) chmodcmd="$chmodprog $2" + shift + shift + continue;; + + -o) chowncmd="$chownprog $2" + shift + shift + continue;; + + -g) chgrpcmd="$chgrpprog $2" + shift + shift + continue;; + + -s) stripcmd="$stripprog" + shift + continue;; + + -t=*) transformarg=`echo $1 | sed 's/-t=//'` + shift + continue;; + + -b=*) transformbasename=`echo $1 | sed 's/-b=//'` + shift + continue;; + + *) if [ x"$src" = x ] + then + src=$1 + else + # this colon is to work around a 386BSD /bin/sh bug + : + dst=$1 + fi + shift + continue;; + esac +done + +if [ x"$src" = x ] +then + echo "install: no input file specified" + exit 1 +else + true +fi + +if [ x"$dir_arg" != x ]; then + dst=$src + src="" + + if [ -d $dst ]; then + instcmd=: + else + instcmd=mkdir + fi +else + +# Waiting for this to be detected by the "$instcmd $src $dsttmp" command +# might cause directories to be created, which would be especially bad +# if $src (and thus $dsttmp) contains '*'. + + if [ -f $src -o -d $src ] + then + true + else + echo "install: $src does not exist" + exit 1 + fi + + if [ x"$dst" = x ] + then + echo "install: no destination specified" + exit 1 + else + true + fi + +# If destination is a directory, append the input filename; if your system +# does not like double slashes in filenames, you may need to add some logic + + if [ -d $dst ] + then + dst="$dst"/`basename $src` + else + true + fi +fi + +## this sed command emulates the dirname command +dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'` + +# Make sure that the destination directory exists. +# this part is taken from Noah Friedman's mkinstalldirs script + +# Skip lots of stat calls in the usual case. +if [ ! -d "$dstdir" ]; then +defaultIFS=' +' +IFS="${IFS-${defaultIFS}}" + +oIFS="${IFS}" +# Some sh's can't handle IFS=/ for some reason. +IFS='%' +set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'` +IFS="${oIFS}" + +pathcomp='' + +while [ $# -ne 0 ] ; do + pathcomp="${pathcomp}${1}" + shift + + if [ ! -d "${pathcomp}" ] ; + then + $mkdirprog "${pathcomp}" + else + true + fi + + pathcomp="${pathcomp}/" +done +fi + +if [ x"$dir_arg" != x ] +then + $doit $instcmd $dst && + + if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else true ; fi && + if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else true ; fi && + if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else true ; fi && + if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else true ; fi +else + +# If we're going to rename the final executable, determine the name now. + + if [ x"$transformarg" = x ] + then + dstfile=`basename $dst` + else + dstfile=`basename $dst $transformbasename | + sed $transformarg`$transformbasename + fi + +# don't allow the sed command to completely eliminate the filename + + if [ x"$dstfile" = x ] + then + dstfile=`basename $dst` + else + true + fi + +# Make a temp file name in the proper directory. + + dsttmp=$dstdir/#inst.$$# + +# Move or copy the file name to the temp name + + $doit $instcmd $src $dsttmp && + + trap "rm -f ${dsttmp}" 0 && + +# and set any options; do chmod last to preserve setuid bits + +# If any of these fail, we abort the whole thing. If we want to +# ignore errors from any of these, just make sure not to ignore +# errors from the above "$doit $instcmd $src $dsttmp" command. + + if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else true;fi && + if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else true;fi && + if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else true;fi && + if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else true;fi && + +# Now rename the file to the real destination. + + $doit $rmcmd -f $dstdir/$dstfile && + $doit $mvcmd $dsttmp $dstdir/$dstfile + +fi && + + +exit 0 diff --git a/autoarray/util/nn/src/nn/istack.c b/autoarray/util/nn/src/nn/istack.c index 6b48563ff..6cfdfae17 100644 --- a/autoarray/util/nn/src/nn/istack.c +++ b/autoarray/util/nn/src/nn/istack.c @@ -1,84 +1,84 @@ -/****************************************************************************** - * - * File: istack.c - * - * Created: 06/06/2001 - * - * Author: Pavel Sakov - * CSIRO Marine Research - * - * Purpose: Handling stack of integers - * - * Description: None - * - * Revisions: None - * - *****************************************************************************/ - -#define STACK_NSTART 50 -#define STACK_NINC 50 - -#include -#include -#include "istack.h" -#include "istack_internal.h" - -istack* istack_create(void) -{ - istack* s = malloc(sizeof(istack)); - - s->n = 0; - s->nallocated = STACK_NSTART; - s->v = malloc(STACK_NSTART * sizeof(int)); - return s; -} - -void istack_destroy(istack* s) -{ - if (s != NULL) { - free(s->v); - free(s); - } -} - -void istack_reset(istack* s) -{ - s->n = 0; -} - -int istack_contains(istack* s, int v) -{ - int i; - - for (i = 0; i < s->n; ++i) - if (s->v[i] == v) - return 1; - return 0; -} - -void istack_push(istack* s, int v) -{ - if (s->n == s->nallocated) { - s->nallocated *= 2; - s->v = realloc(s->v, s->nallocated * sizeof(int)); - } - - s->v[s->n] = v; - s->n++; -} - -int istack_pop(istack* s) -{ - s->n--; - return s->v[s->n]; -} - -int istack_getnentries(istack* s) -{ - return s->n; -} - -int* istack_getentries(istack* s) -{ - return s->v; -} +/****************************************************************************** + * + * File: istack.c + * + * Created: 06/06/2001 + * + * Author: Pavel Sakov + * CSIRO Marine Research + * + * Purpose: Handling stack of integers + * + * Description: None + * + * Revisions: None + * + *****************************************************************************/ + +#define STACK_NSTART 50 +#define STACK_NINC 50 + +#include +#include +#include "istack.h" +#include "istack_internal.h" + +istack* istack_create(void) +{ + istack* s = malloc(sizeof(istack)); + + s->n = 0; + s->nallocated = STACK_NSTART; + s->v = malloc(STACK_NSTART * sizeof(int)); + return s; +} + +void istack_destroy(istack* s) +{ + if (s != NULL) { + free(s->v); + free(s); + } +} + +void istack_reset(istack* s) +{ + s->n = 0; +} + +int istack_contains(istack* s, int v) +{ + int i; + + for (i = 0; i < s->n; ++i) + if (s->v[i] == v) + return 1; + return 0; +} + +void istack_push(istack* s, int v) +{ + if (s->n == s->nallocated) { + s->nallocated *= 2; + s->v = realloc(s->v, s->nallocated * sizeof(int)); + } + + s->v[s->n] = v; + s->n++; +} + +int istack_pop(istack* s) +{ + s->n--; + return s->v[s->n]; +} + +int istack_getnentries(istack* s) +{ + return s->n; +} + +int* istack_getentries(istack* s) +{ + return s->v; +} diff --git a/autoarray/util/nn/src/nn/istack.h b/autoarray/util/nn/src/nn/istack.h index f25f6977c..57d6fba25 100644 --- a/autoarray/util/nn/src/nn/istack.h +++ b/autoarray/util/nn/src/nn/istack.h @@ -1,34 +1,34 @@ -/****************************************************************************** - * - * File: istack.h - * - * Created: 06/06/2001 - * - * Author: Pavel Sakov - * CSIRO Marine Research - * - * Purpose: Header for handling stack of integers. - * - * Description: None - * - * Revisions: None - * - *****************************************************************************/ - -#if !defined(_ISTACK_H) -#define _ISTACK_H - -#if !defined(_ISTACK_STRUCT) -#define _ISTACK_STRUCT -struct istack; -typedef struct istack istack; -#endif - -istack* istack_create(void); -void istack_destroy(istack* s); -void istack_push(istack* s, int v); -int istack_pop(istack* s); -int istack_contains(istack* s, int v); -void istack_reset(istack* s); - -#endif +/****************************************************************************** + * + * File: istack.h + * + * Created: 06/06/2001 + * + * Author: Pavel Sakov + * CSIRO Marine Research + * + * Purpose: Header for handling stack of integers. + * + * Description: None + * + * Revisions: None + * + *****************************************************************************/ + +#if !defined(_ISTACK_H) +#define _ISTACK_H + +#if !defined(_ISTACK_STRUCT) +#define _ISTACK_STRUCT +struct istack; +typedef struct istack istack; +#endif + +istack* istack_create(void); +void istack_destroy(istack* s); +void istack_push(istack* s, int v); +int istack_pop(istack* s); +int istack_contains(istack* s, int v); +void istack_reset(istack* s); + +#endif diff --git a/autoarray/util/nn/src/nn/istack_internal.h b/autoarray/util/nn/src/nn/istack_internal.h index 7c00d3b9c..296d268ea 100644 --- a/autoarray/util/nn/src/nn/istack_internal.h +++ b/autoarray/util/nn/src/nn/istack_internal.h @@ -1,29 +1,29 @@ -/****************************************************************************** - * - * File: istack_internal.h - * - * Created: 05/05/2021 - * - * Author: Pavel Sakov - * BoM - * - * Purpose: Internal header for istack. - * - * Description: None - * - * Revisions: None - * - *****************************************************************************/ - -#if !defined(_ISTACK_INTERNAL_H) -#define _ISTACK_INTERNAL_H - -#include "istack.h" - -struct istack { - int n; - int nallocated; - int* v; -}; - -#endif /* _ISTACK_INTERNAL_H */ +/****************************************************************************** + * + * File: istack_internal.h + * + * Created: 05/05/2021 + * + * Author: Pavel Sakov + * BoM + * + * Purpose: Internal header for istack. + * + * Description: None + * + * Revisions: None + * + *****************************************************************************/ + +#if !defined(_ISTACK_INTERNAL_H) +#define _ISTACK_INTERNAL_H + +#include "istack.h" + +struct istack { + int n; + int nallocated; + int* v; +}; + +#endif /* _ISTACK_INTERNAL_H */ diff --git a/autoarray/util/nn/src/nn/lpi.c b/autoarray/util/nn/src/nn/lpi.c index 2088a8951..3559536b4 100644 --- a/autoarray/util/nn/src/nn/lpi.c +++ b/autoarray/util/nn/src/nn/lpi.c @@ -1,157 +1,157 @@ -/****************************************************************************** - * - * File: linear.c - * - * Created: 04/08/2000 - * - * Author: Pavel Sakov - * CSIRO Marine Research - * - * Purpose: 2D linear interpolation - * - * Description: `lpi' -- "Linear Point Interpolator" -- is - * a structure for conducting linear interpolation on a given - * data on a "point-to-point" basis. It interpolates linearly - * within each triangle resulted from the Delaunay - * triangluation of input data. `lpi' is much - * faster than all Natural Neighbours interpolators in `nn' - * library. - * - * Revisions: None - * - *****************************************************************************/ - -#include -#include -#include "nan.h" -#include "nn.h" -#include "nncommon.h" -#include "delaunay_internal.h" - -typedef struct { - double w[3]; -} lweights; - -struct lpi { - delaunay* d; - lweights* weights; - int first_id; -}; - -int delaunay_xytoi(delaunay* d, point* p, int seed); - -/* Builds linear interpolator. - * - * @param d Delaunay triangulation - * @return Linear interpolator - */ -lpi* lpi_build(delaunay* d) -{ - int i; - lpi* l = malloc(sizeof(lpi)); - - l->d = d; - l->weights = malloc(d->ntriangles * sizeof(lweights)); - l->first_id = -1; - - for (i = 0; i < d->ntriangles; ++i) { - triangle* t = &d->triangles[i]; - lweights* lw = &l->weights[i]; - double x0 = d->points[t->vids[0]].x; - double y0 = d->points[t->vids[0]].y; - double z0 = d->points[t->vids[0]].z; - double x1 = d->points[t->vids[1]].x; - double y1 = d->points[t->vids[1]].y; - double z1 = d->points[t->vids[1]].z; - double x2 = d->points[t->vids[2]].x; - double y2 = d->points[t->vids[2]].y; - double z2 = d->points[t->vids[2]].z; - double x02 = x0 - x2; - double y02 = y0 - y2; - double z02 = z0 - z2; - double x12 = x1 - x2; - double y12 = y1 - y2; - double z12 = z1 - z2; - - if (y12 != 0.0) { - double y0212 = y02 / y12; - - lw->w[0] = (z02 - z12 * y0212) / (x02 - x12 * y0212); - lw->w[1] = (z12 - lw->w[0] * x12) / y12; - lw->w[2] = (z2 - lw->w[0] * x2 - lw->w[1] * y2); - } else { - double x0212 = x02 / x12; - - lw->w[1] = (z02 - z12 * x0212) / (y02 - y12 * x0212); - lw->w[0] = (z12 - lw->w[1] * y12) / x12; - lw->w[2] = (z2 - lw->w[0] * x2 - lw->w[1] * y2); - } - } - - return l; -} - -/* Destroys linear interpolator. - * - * @param l Structure to be destroyed - */ -void lpi_destroy(lpi* l) -{ - free(l->weights); - free(l); -} - -/* Finds linearly interpolated value in a point. - * - * @param l Linear interpolation - * @param p Point to be interpolated (p->x, p->y -- input; p->z -- output) - */ -void lpi_interpolate_point(lpi* l, point* p) -{ - delaunay* d = l->d; - int tid = delaunay_xytoi(d, p, l->first_id); - - if (tid >= 0) { - lweights* lw = &l->weights[tid]; - - l->first_id = tid; - p->z = p->x * lw->w[0] + p->y * lw->w[1] + lw->w[2]; - } else - p->z = NaN; -} - -/* Linearly interpolates data in an array of points. - * - * @param nin Number of input points - * @param pin Array of input points [pin] - * @param nout Number of ouput points - * @param pout Array of output points [nout] - */ -void lpi_interpolate_points(delaunay* d, int nout, point pout[]) -{ - lpi* l = lpi_build(d); - int seed = 0; - int i; - - if (nn_verbose) { - fprintf(stderr, "xytoi:\n"); - for (i = 0; i < nout; ++i) { - point* p = &pout[i]; - - fprintf(stderr, "(%.7g,%.7g) -> %d\n", p->x, p->y, delaunay_xytoi(d, p, seed)); - } - } - - for (i = 0; i < nout; ++i) - lpi_interpolate_point(l, &pout[i]); - - if (nn_verbose) { - fprintf(stderr, "output:\n"); - for (i = 0; i < nout; ++i) { - point* p = &pout[i];; - fprintf(stderr, " %d:%15.7g %15.7g %15.7g\n", i, p->x, p->y, p->z); - } - } - - lpi_destroy(l); -} +/****************************************************************************** + * + * File: linear.c + * + * Created: 04/08/2000 + * + * Author: Pavel Sakov + * CSIRO Marine Research + * + * Purpose: 2D linear interpolation + * + * Description: `lpi' -- "Linear Point Interpolator" -- is + * a structure for conducting linear interpolation on a given + * data on a "point-to-point" basis. It interpolates linearly + * within each triangle resulted from the Delaunay + * triangluation of input data. `lpi' is much + * faster than all Natural Neighbours interpolators in `nn' + * library. + * + * Revisions: None + * + *****************************************************************************/ + +#include +#include +#include "nan.h" +#include "nn.h" +#include "nncommon.h" +#include "delaunay_internal.h" + +typedef struct { + double w[3]; +} lweights; + +struct lpi { + delaunay* d; + lweights* weights; + int first_id; +}; + +int delaunay_xytoi(delaunay* d, point* p, int seed); + +/* Builds linear interpolator. + * + * @param d Delaunay triangulation + * @return Linear interpolator + */ +lpi* lpi_build(delaunay* d) +{ + int i; + lpi* l = malloc(sizeof(lpi)); + + l->d = d; + l->weights = malloc(d->ntriangles * sizeof(lweights)); + l->first_id = -1; + + for (i = 0; i < d->ntriangles; ++i) { + triangle* t = &d->triangles[i]; + lweights* lw = &l->weights[i]; + double x0 = d->points[t->vids[0]].x; + double y0 = d->points[t->vids[0]].y; + double z0 = d->points[t->vids[0]].z; + double x1 = d->points[t->vids[1]].x; + double y1 = d->points[t->vids[1]].y; + double z1 = d->points[t->vids[1]].z; + double x2 = d->points[t->vids[2]].x; + double y2 = d->points[t->vids[2]].y; + double z2 = d->points[t->vids[2]].z; + double x02 = x0 - x2; + double y02 = y0 - y2; + double z02 = z0 - z2; + double x12 = x1 - x2; + double y12 = y1 - y2; + double z12 = z1 - z2; + + if (y12 != 0.0) { + double y0212 = y02 / y12; + + lw->w[0] = (z02 - z12 * y0212) / (x02 - x12 * y0212); + lw->w[1] = (z12 - lw->w[0] * x12) / y12; + lw->w[2] = (z2 - lw->w[0] * x2 - lw->w[1] * y2); + } else { + double x0212 = x02 / x12; + + lw->w[1] = (z02 - z12 * x0212) / (y02 - y12 * x0212); + lw->w[0] = (z12 - lw->w[1] * y12) / x12; + lw->w[2] = (z2 - lw->w[0] * x2 - lw->w[1] * y2); + } + } + + return l; +} + +/* Destroys linear interpolator. + * + * @param l Structure to be destroyed + */ +void lpi_destroy(lpi* l) +{ + free(l->weights); + free(l); +} + +/* Finds linearly interpolated value in a point. + * + * @param l Linear interpolation + * @param p Point to be interpolated (p->x, p->y -- input; p->z -- output) + */ +void lpi_interpolate_point(lpi* l, point* p) +{ + delaunay* d = l->d; + int tid = delaunay_xytoi(d, p, l->first_id); + + if (tid >= 0) { + lweights* lw = &l->weights[tid]; + + l->first_id = tid; + p->z = p->x * lw->w[0] + p->y * lw->w[1] + lw->w[2]; + } else + p->z = NaN; +} + +/* Linearly interpolates data in an array of points. + * + * @param nin Number of input points + * @param pin Array of input points [pin] + * @param nout Number of ouput points + * @param pout Array of output points [nout] + */ +void lpi_interpolate_points(delaunay* d, int nout, point pout[]) +{ + lpi* l = lpi_build(d); + int seed = 0; + int i; + + if (nn_verbose) { + fprintf(stderr, "xytoi:\n"); + for (i = 0; i < nout; ++i) { + point* p = &pout[i]; + + fprintf(stderr, "(%.7g,%.7g) -> %d\n", p->x, p->y, delaunay_xytoi(d, p, seed)); + } + } + + for (i = 0; i < nout; ++i) + lpi_interpolate_point(l, &pout[i]); + + if (nn_verbose) { + fprintf(stderr, "output:\n"); + for (i = 0; i < nout; ++i) { + point* p = &pout[i];; + fprintf(stderr, " %d:%15.7g %15.7g %15.7g\n", i, p->x, p->y, p->z); + } + } + + lpi_destroy(l); +} diff --git a/autoarray/util/nn/src/nn/makefile.example b/autoarray/util/nn/src/nn/makefile.example index 6e2738b39..91b9c0321 100644 --- a/autoarray/util/nn/src/nn/makefile.example +++ b/autoarray/util/nn/src/nn/makefile.example @@ -1,166 +1,166 @@ -SHELL = /bin/sh - -prefix = /usr/local -exec_prefix = ${prefix} -bindir = ${exec_prefix}/bin -libdir = ${exec_prefix}/lib64 -includedir = ${prefix}/include - -INSTALLDIRS =\ -$(bindir)\ -$(libdir)\ -$(includedir) - -INSTALL = /usr/bin/install -c -INSTALL_PROGRAM = ${INSTALL} -INSTALL_DATA = ${INSTALL} -m 644 - -MPI = yes -# only matters if MPI = yes -VIAFILE = no -CC = gcc -CFLAGS = -g -O2 -Wall -pedantic -D_GNU_SOURCE -std=c99 -CFLAGS_TRIANGLE = -O2 -w -ffloat-store -CFLAGS_VULNERABLE = -ffloat-store -LDFLAGS = - -AR = ar -ARFLAGS = cr - -MLIB = -lm - -SRC_LIB =\ -delaunay.c\ -hash.c\ -istack.c\ -lpi.c\ -minell.c\ -nnai.c\ -nnpi.c\ -nncommon.c\ -nncommon-vulnerable.c\ -preader.c\ -version.c - -HDR_LIB =\ -delaunay.h\ -delaunay_internal.h\ -hash.h\ -istack.h\ -istack_internal.h\ -minell.h\ -nan.h\ -nn.h\ -nnpi.h\ -preader.h - -SRC_NNBATHY=\ -nnbathy.c -HDR_NNBATHY = - -PROGRAMS =\ -minell\ -nnbathy - -TESTS=\ -nnai_test\ -nnphi_test\ -ht_test - -OBJ_LIB = $(SRC_LIB:.c=.o) - -all: libnn.a $(PROGRAMS) - -minell: minell.c - $(CC) -o minell minell.c -DME_STANDALONE $(CFLAGS) -I. $(LDFLAGS) $(MLIB) - -ifeq ($(MPI), yes) -delaunay.o: override CC = mpicc -delaunay.o: override CFLAGS += -DMPI -DUSE_SHMEM -nnbathy: override CC = mpicc -nnbathy: override CFLAGS += -DMPI -DUSE_SHMEM -ifeq ($(VIAFILE), yes) -nnbathy: override CFLAGS += -DVIAFILE -SRC_NNBATHY += distribute.c -HDR_NNBATHY += distribute.h -endif -else -nnbathy: override CFLAGS += -DNN_SERIAL -endif - -nnbathy: libnn.a nnbathy.c $(SRC_NNBATHY) $(HDR_NNBATHY) - $(CC) -o nnbathy $(SRC_NNBATHY) $(CFLAGS) -I. $(LDFLAGS) libnn.a $(MLIB) - -standalone: override LDFLAGS+=-static -standalone: $(PROGRAMS) - strip $(PROGRAMS) - -libnn.a: triangle.o $(OBJ_LIB) - $(AR) $(ARFLAGS) libnn.a $(OBJ_LIB) triangle.o - chmod go+r libnn.a - -nncommon-vulnerable.o: override CFLAGS+=$(CFLAGS_VULNERABLE) - -triangle.o: triangle.c triangle.h - $(CC) -c -DTRILIBRARY $(CFLAGS_TRIANGLE) -I. triangle.c - -tests: libnn.a $(TESTS) - -nnai_test: - $(CC) -o nnai_test nnai.c -DNNAI_TEST $(CFLAGS) -I. $(MLIB) libnn.a - -nnphi_test: - $(CC) -o nnphi_test nnpi.c -DNNPHI_TEST $(CFLAGS) -I. $(MLIB) libnn.a - -ht_test: - $(CC) -o ht_test hash.c -DHT_TEST $(CFLAGS) -I. $(MLIB) - -%.o: %.c makefile $(HDR_LIB) - $(CC) $(CFLAGS) -c $< -o $@ - -installdirs: - $(SHELL) mkinstalldirs $(INSTALLDIRS) - -install: all installdirs - for i in libnn.a; do \ - $(INSTALL_DATA) $$i $(libdir)/$$i; \ - done - - for i in nn.h; do \ - $(INSTALL_DATA) $$i $(includedir); \ - done - - for i in $(PROGRAMS); do \ - fname=`basename $$i`; \ - $(INSTALL_PROGRAM) $$i $(bindir); \ - done - -clean: - rm -f *.o libnn.a $(PROGRAMS) $(TESTS) *~ core - -configclean: - rm -f config.h makefile config.cache config.status config.log - -ex1clean: - cd examples/1; make clean; - -ex2clean: - cd examples/2; make clean; - -ex3clean: - cd examples/3; make clean; - -ex4clean: - cd examples/4; make clean; - -ex5clean: - cd examples/5; make clean; - -ex6clean: - cd examples/6; make clean; - -distclean: clean configclean ex1clean ex2clean ex3clean ex4clean ex5clean ex6clean - -indent: - indent -T FILE -T NN_ALGORITHM -T point -T delaunay -Tdsearch -T lpi -T nnpi -T nnhpi -T indexedpoint -T nnai -T ht_bucket -T hashtable -T istack -T triangle -T triangle_neighbours -T circle -T nn_weights -T lweights -T minell -T specs -T reader -T preader -T grid $(SRC_LIB) $(SRC_NNBATHY) $(HDR_NNBATHY) - rm -f *~ +SHELL = /bin/sh + +prefix = /usr/local +exec_prefix = ${prefix} +bindir = ${exec_prefix}/bin +libdir = ${exec_prefix}/lib64 +includedir = ${prefix}/include + +INSTALLDIRS =\ +$(bindir)\ +$(libdir)\ +$(includedir) + +INSTALL = /usr/bin/install -c +INSTALL_PROGRAM = ${INSTALL} +INSTALL_DATA = ${INSTALL} -m 644 + +MPI = yes +# only matters if MPI = yes +VIAFILE = no +CC = gcc +CFLAGS = -g -O2 -Wall -pedantic -D_GNU_SOURCE -std=c99 +CFLAGS_TRIANGLE = -O2 -w -ffloat-store +CFLAGS_VULNERABLE = -ffloat-store +LDFLAGS = + +AR = ar +ARFLAGS = cr + +MLIB = -lm + +SRC_LIB =\ +delaunay.c\ +hash.c\ +istack.c\ +lpi.c\ +minell.c\ +nnai.c\ +nnpi.c\ +nncommon.c\ +nncommon-vulnerable.c\ +preader.c\ +version.c + +HDR_LIB =\ +delaunay.h\ +delaunay_internal.h\ +hash.h\ +istack.h\ +istack_internal.h\ +minell.h\ +nan.h\ +nn.h\ +nnpi.h\ +preader.h + +SRC_NNBATHY=\ +nnbathy.c +HDR_NNBATHY = + +PROGRAMS =\ +minell\ +nnbathy + +TESTS=\ +nnai_test\ +nnphi_test\ +ht_test + +OBJ_LIB = $(SRC_LIB:.c=.o) + +all: libnn.a $(PROGRAMS) + +minell: minell.c + $(CC) -o minell minell.c -DME_STANDALONE $(CFLAGS) -I. $(LDFLAGS) $(MLIB) + +ifeq ($(MPI), yes) +delaunay.o: override CC = mpicc +delaunay.o: override CFLAGS += -DMPI -DUSE_SHMEM +nnbathy: override CC = mpicc +nnbathy: override CFLAGS += -DMPI -DUSE_SHMEM +ifeq ($(VIAFILE), yes) +nnbathy: override CFLAGS += -DVIAFILE +SRC_NNBATHY += distribute.c +HDR_NNBATHY += distribute.h +endif +else +nnbathy: override CFLAGS += -DNN_SERIAL +endif + +nnbathy: libnn.a nnbathy.c $(SRC_NNBATHY) $(HDR_NNBATHY) + $(CC) -o nnbathy $(SRC_NNBATHY) $(CFLAGS) -I. $(LDFLAGS) libnn.a $(MLIB) + +standalone: override LDFLAGS+=-static +standalone: $(PROGRAMS) + strip $(PROGRAMS) + +libnn.a: triangle.o $(OBJ_LIB) + $(AR) $(ARFLAGS) libnn.a $(OBJ_LIB) triangle.o + chmod go+r libnn.a + +nncommon-vulnerable.o: override CFLAGS+=$(CFLAGS_VULNERABLE) + +triangle.o: triangle.c triangle.h + $(CC) -c -DTRILIBRARY $(CFLAGS_TRIANGLE) -I. triangle.c + +tests: libnn.a $(TESTS) + +nnai_test: + $(CC) -o nnai_test nnai.c -DNNAI_TEST $(CFLAGS) -I. $(MLIB) libnn.a + +nnphi_test: + $(CC) -o nnphi_test nnpi.c -DNNPHI_TEST $(CFLAGS) -I. $(MLIB) libnn.a + +ht_test: + $(CC) -o ht_test hash.c -DHT_TEST $(CFLAGS) -I. $(MLIB) + +%.o: %.c makefile $(HDR_LIB) + $(CC) $(CFLAGS) -c $< -o $@ + +installdirs: + $(SHELL) mkinstalldirs $(INSTALLDIRS) + +install: all installdirs + for i in libnn.a; do \ + $(INSTALL_DATA) $$i $(libdir)/$$i; \ + done + + for i in nn.h; do \ + $(INSTALL_DATA) $$i $(includedir); \ + done + + for i in $(PROGRAMS); do \ + fname=`basename $$i`; \ + $(INSTALL_PROGRAM) $$i $(bindir); \ + done + +clean: + rm -f *.o libnn.a $(PROGRAMS) $(TESTS) *~ core + +configclean: + rm -f config.h makefile config.cache config.status config.log + +ex1clean: + cd examples/1; make clean; + +ex2clean: + cd examples/2; make clean; + +ex3clean: + cd examples/3; make clean; + +ex4clean: + cd examples/4; make clean; + +ex5clean: + cd examples/5; make clean; + +ex6clean: + cd examples/6; make clean; + +distclean: clean configclean ex1clean ex2clean ex3clean ex4clean ex5clean ex6clean + +indent: + indent -T FILE -T NN_ALGORITHM -T point -T delaunay -Tdsearch -T lpi -T nnpi -T nnhpi -T indexedpoint -T nnai -T ht_bucket -T hashtable -T istack -T triangle -T triangle_neighbours -T circle -T nn_weights -T lweights -T minell -T specs -T reader -T preader -T grid $(SRC_LIB) $(SRC_NNBATHY) $(HDR_NNBATHY) + rm -f *~ diff --git a/autoarray/util/nn/src/nn/makefile.in b/autoarray/util/nn/src/nn/makefile.in index 0ddfa3c4f..a19db3147 100644 --- a/autoarray/util/nn/src/nn/makefile.in +++ b/autoarray/util/nn/src/nn/makefile.in @@ -1,166 +1,166 @@ -SHELL = /bin/sh - -prefix = @prefix@ -exec_prefix = @exec_prefix@ -bindir = @bindir@ -libdir = @libdir@ -includedir = @includedir@ - -INSTALLDIRS =\ -$(bindir)\ -$(libdir)\ -$(includedir) - -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ - -MPI = no -# only matters if MPI = yes -VIAFILE = no -CC = @CC@ -CFLAGS = @CFLAGS@ -CFLAGS_TRIANGLE = @CFLAGS_TRIANGLE@ -CFLAGS_VULNERABLE = @CFLAGS_VULNERABLE@ -LDFLAGS = @LDFLAGS@ - -AR = @AR@ -ARFLAGS = cr - -MLIB = -lm - -SRC_LIB =\ -delaunay.c\ -hash.c\ -istack.c\ -lpi.c\ -minell.c\ -nnai.c\ -nnpi.c\ -nncommon.c\ -nncommon-vulnerable.c\ -preader.c\ -version.c - -HDR_LIB =\ -delaunay.h\ -delaunay_internal.h\ -hash.h\ -istack.h\ -istack_internal.h\ -minell.h\ -nan.h\ -nn.h\ -nnpi.h\ -preader.h - -SRC_NNBATHY=\ -nnbathy.c -HDR_NNBATHY = - -PROGRAMS =\ -minell\ -nnbathy - -TESTS=\ -nnai_test\ -nnphi_test\ -ht_test - -OBJ_LIB = $(SRC_LIB:.c=.o) - -all: libnn.a $(PROGRAMS) - -minell: minell.c - $(CC) -o minell minell.c -DME_STANDALONE $(CFLAGS) -I. $(LDFLAGS) $(MLIB) - -ifeq ($(MPI), yes) -delaunay.o: override CC = mpicc -delaunay.o: override CFLAGS += -DMPI -DUSE_SHMEM -nnbathy: override CC = mpicc -nnbathy: override CFLAGS += -DMPI -DUSE_SHMEM -ifeq ($(VIAFILE), yes) -nnbathy: override CFLAGS += -DVIAFILE -SRC_NNBATHY += distribute.c -HDR_NNBATHY += distribute.h -endif -else -nnbathy: override CFLAGS += -DNN_SERIAL -endif - -nnbathy: libnn.a nnbathy.c $(SRC_NNBATHY) $(HDR_NNBATHY) - $(CC) -o nnbathy $(SRC_NNBATHY) $(CFLAGS) -I. $(LDFLAGS) libnn.a $(MLIB) - -standalone: override LDFLAGS+=-static -standalone: $(PROGRAMS) - strip $(PROGRAMS) - -libnn.a: triangle.o $(OBJ_LIB) - $(AR) $(ARFLAGS) libnn.a $(OBJ_LIB) triangle.o - chmod go+r libnn.a - -nncommon-vulnerable.o: override CFLAGS+=$(CFLAGS_VULNERABLE) - -triangle.o: triangle.c triangle.h - $(CC) -c -DTRILIBRARY $(CFLAGS_TRIANGLE) -I. triangle.c - -tests: libnn.a $(TESTS) - -nnai_test: - $(CC) -o nnai_test nnai.c -DNNAI_TEST $(CFLAGS) -I. $(MLIB) libnn.a - -nnphi_test: - $(CC) -o nnphi_test nnpi.c -DNNPHI_TEST $(CFLAGS) -I. $(MLIB) libnn.a - -ht_test: - $(CC) -o ht_test hash.c -DHT_TEST $(CFLAGS) -I. $(MLIB) - -%.o: %.c makefile $(HDR_LIB) - $(CC) $(CFLAGS) -c $< -o $@ - -installdirs: - $(SHELL) mkinstalldirs $(INSTALLDIRS) - -install: all installdirs - for i in libnn.a; do \ - $(INSTALL_DATA) $$i $(libdir)/$$i; \ - done - - for i in nn.h; do \ - $(INSTALL_DATA) $$i $(includedir); \ - done - - for i in $(PROGRAMS); do \ - fname=`basename $$i`; \ - $(INSTALL_PROGRAM) $$i $(bindir); \ - done - -clean: - rm -f *.o libnn.a $(PROGRAMS) $(TESTS) *~ core - -configclean: - rm -f config.h makefile config.cache config.status config.log - -ex1clean: - cd examples/1; make clean; - -ex2clean: - cd examples/2; make clean; - -ex3clean: - cd examples/3; make clean; - -ex4clean: - cd examples/4; make clean; - -ex5clean: - cd examples/5; make clean; - -ex6clean: - cd examples/6; make clean; - -distclean: clean configclean ex1clean ex2clean ex3clean ex4clean ex5clean ex6clean - -indent: - indent -T FILE -T NN_ALGORITHM -T point -T delaunay -Tdsearch -T lpi -T nnpi -T nnhpi -T indexedpoint -T nnai -T ht_bucket -T hashtable -T istack -T triangle -T triangle_neighbours -T circle -T nn_weights -T lweights -T minell -T specs -T reader -T preader -T grid $(SRC_LIB) $(SRC_NNBATHY) $(HDR_NNBATHY) - rm -f *~ +SHELL = /bin/sh + +prefix = @prefix@ +exec_prefix = @exec_prefix@ +bindir = @bindir@ +libdir = @libdir@ +includedir = @includedir@ + +INSTALLDIRS =\ +$(bindir)\ +$(libdir)\ +$(includedir) + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_DATA = @INSTALL_DATA@ + +MPI = no +# only matters if MPI = yes +VIAFILE = no +CC = @CC@ +CFLAGS = @CFLAGS@ +CFLAGS_TRIANGLE = @CFLAGS_TRIANGLE@ +CFLAGS_VULNERABLE = @CFLAGS_VULNERABLE@ +LDFLAGS = @LDFLAGS@ + +AR = @AR@ +ARFLAGS = cr + +MLIB = -lm + +SRC_LIB =\ +delaunay.c\ +hash.c\ +istack.c\ +lpi.c\ +minell.c\ +nnai.c\ +nnpi.c\ +nncommon.c\ +nncommon-vulnerable.c\ +preader.c\ +version.c + +HDR_LIB =\ +delaunay.h\ +delaunay_internal.h\ +hash.h\ +istack.h\ +istack_internal.h\ +minell.h\ +nan.h\ +nn.h\ +nnpi.h\ +preader.h + +SRC_NNBATHY=\ +nnbathy.c +HDR_NNBATHY = + +PROGRAMS =\ +minell\ +nnbathy + +TESTS=\ +nnai_test\ +nnphi_test\ +ht_test + +OBJ_LIB = $(SRC_LIB:.c=.o) + +all: libnn.a $(PROGRAMS) + +minell: minell.c + $(CC) -o minell minell.c -DME_STANDALONE $(CFLAGS) -I. $(LDFLAGS) $(MLIB) + +ifeq ($(MPI), yes) +delaunay.o: override CC = mpicc +delaunay.o: override CFLAGS += -DMPI -DUSE_SHMEM +nnbathy: override CC = mpicc +nnbathy: override CFLAGS += -DMPI -DUSE_SHMEM +ifeq ($(VIAFILE), yes) +nnbathy: override CFLAGS += -DVIAFILE +SRC_NNBATHY += distribute.c +HDR_NNBATHY += distribute.h +endif +else +nnbathy: override CFLAGS += -DNN_SERIAL +endif + +nnbathy: libnn.a nnbathy.c $(SRC_NNBATHY) $(HDR_NNBATHY) + $(CC) -o nnbathy $(SRC_NNBATHY) $(CFLAGS) -I. $(LDFLAGS) libnn.a $(MLIB) + +standalone: override LDFLAGS+=-static +standalone: $(PROGRAMS) + strip $(PROGRAMS) + +libnn.a: triangle.o $(OBJ_LIB) + $(AR) $(ARFLAGS) libnn.a $(OBJ_LIB) triangle.o + chmod go+r libnn.a + +nncommon-vulnerable.o: override CFLAGS+=$(CFLAGS_VULNERABLE) + +triangle.o: triangle.c triangle.h + $(CC) -c -DTRILIBRARY $(CFLAGS_TRIANGLE) -I. triangle.c + +tests: libnn.a $(TESTS) + +nnai_test: + $(CC) -o nnai_test nnai.c -DNNAI_TEST $(CFLAGS) -I. $(MLIB) libnn.a + +nnphi_test: + $(CC) -o nnphi_test nnpi.c -DNNPHI_TEST $(CFLAGS) -I. $(MLIB) libnn.a + +ht_test: + $(CC) -o ht_test hash.c -DHT_TEST $(CFLAGS) -I. $(MLIB) + +%.o: %.c makefile $(HDR_LIB) + $(CC) $(CFLAGS) -c $< -o $@ + +installdirs: + $(SHELL) mkinstalldirs $(INSTALLDIRS) + +install: all installdirs + for i in libnn.a; do \ + $(INSTALL_DATA) $$i $(libdir)/$$i; \ + done + + for i in nn.h; do \ + $(INSTALL_DATA) $$i $(includedir); \ + done + + for i in $(PROGRAMS); do \ + fname=`basename $$i`; \ + $(INSTALL_PROGRAM) $$i $(bindir); \ + done + +clean: + rm -f *.o libnn.a $(PROGRAMS) $(TESTS) *~ core + +configclean: + rm -f config.h makefile config.cache config.status config.log + +ex1clean: + cd examples/1; make clean; + +ex2clean: + cd examples/2; make clean; + +ex3clean: + cd examples/3; make clean; + +ex4clean: + cd examples/4; make clean; + +ex5clean: + cd examples/5; make clean; + +ex6clean: + cd examples/6; make clean; + +distclean: clean configclean ex1clean ex2clean ex3clean ex4clean ex5clean ex6clean + +indent: + indent -T FILE -T NN_ALGORITHM -T point -T delaunay -Tdsearch -T lpi -T nnpi -T nnhpi -T indexedpoint -T nnai -T ht_bucket -T hashtable -T istack -T triangle -T triangle_neighbours -T circle -T nn_weights -T lweights -T minell -T specs -T reader -T preader -T grid $(SRC_LIB) $(SRC_NNBATHY) $(HDR_NNBATHY) + rm -f *~ diff --git a/autoarray/util/nn/src/nn/makefile_autolens b/autoarray/util/nn/src/nn/makefile_autolens index 2bb80fd33..5edccac28 100644 --- a/autoarray/util/nn/src/nn/makefile_autolens +++ b/autoarray/util/nn/src/nn/makefile_autolens @@ -1,152 +1,152 @@ -SHELL = /bin/sh - -prefix = /usr/local -exec_prefix = ${prefix} -bindir = ${exec_prefix}/bin -libdir = /usr/local/lib -includedir = ${prefix}/include - -INSTALLDIRS =\ -$(bindir)\ -$(libdir)\ -$(includedir) - -INSTALL = /usr/bin/install -c -INSTALL_PROGRAM = ${INSTALL} -INSTALL_DATA = ${INSTALL} -m 644 - -MPI = no -# only matters if MPI = yes -VIAFILE = no -CC = gcc -CFLAGS = -g -O2 -Wall -pedantic -D_GNU_SOURCE -std=c99 -CFLAGS_TRIANGLE = -O2 -w -ffloat-store -CFLAGS_VULNERABLE = -ffloat-store -LDFLAGS = - -AR = ar -ARFLAGS = cr - -MLIB = -lm - -SRC_LIB =\ -delaunay.c\ -hash.c\ -istack.c\ -lpi.c\ -minell.c\ -nnai.c\ -nnpi.c\ -nncommon.c\ -nncommon-vulnerable.c\ -preader.c\ -version.c\ -nnhpi_customized.c - -HDR_LIB =\ -delaunay.h\ -delaunay_internal.h\ -hash.h\ -istack.h\ -istack_internal.h\ -minell.h\ -nan.h\ -nn.h\ -nnpi.h\ -preader.h - -SRC_NNBATHY=\ -nnbathy.c -HDR_NNBATHY = - -PROGRAMS =\ -minell\ -nnbathy\ - -TESTS=\ -nnai_test\ -nnphi_test\ -ht_test - -OBJ_LIB = $(SRC_LIB:.c=.o) - -all: libnn.so libnnhpi_customized.so $(PROGRAMS) - -minell: minell.c - $(CC) -o minell minell.c -DME_STANDALONE $(CFLAGS) -I. $(LDFLAGS) $(MLIB) - -ifeq ($(MPI), yes) -delaunay.o: override CC = mpicc -delaunay.o: override CFLAGS += -DMPI -DUSE_SHMEM -nnbathy: override CC = mpicc -nnbathy: override CFLAGS += -DMPI -DUSE_SHMEM -ifeq ($(VIAFILE), yes) -nnbathy: override CFLAGS += -DVIAFILE -SRC_NNBATHY += distribute.c -HDR_NNBATHY += distribute.h -endif -else -nnbathy: override CFLAGS += -DNN_SERIAL -endif - -nnbathy: libnn.so nnbathy.c $(SRC_NNBATHY) $(HDR_NNBATHY) - $(CC) -o nnbathy $(SRC_NNBATHY) $(CFLAGS) -I. -L. -lnn $(MLIB) - -standalone: override LDFLAGS+=-static -standalone: $(PROGRAMS) - strip $(PROGRAMS) - -libnn.so: triangle.o $(OBJ_LIB) - $(CC) -shared -fPIC -o libnn.so triangle.o $(OBJ_LIB) - -libnnhpi_customized.so: libnn.so nnhpi_customized.o - $(CC) -shared -fPIC -o libnnhpi_customized.so nnhpi_customized.o -I. -L. -lnn $(MLIB) - -nncommon-vulnerable.o: override CFLAGS+=$(CFLAGS_VULNERABLE) - -triangle.o: triangle.c triangle.h - $(CC) -c -DTRILIBRARY $(CFLAGS_TRIANGLE) -I. -fPIC triangle.c - -tests: libnn.so $(TESTS) - -nnai_test: - $(CC) -o nnai_test nnai.c -DNNAI_TEST $(CFLAGS) -I. -L. $(MLIB) -lnn - -nnphi_test: - $(CC) -o nnphi_test nnpi.c -DNNPHI_TEST $(CFLAGS) -I. -L. $(MLIB) -lnn - -ht_test: - $(CC) -o ht_test hash.c -DHT_TEST $(CFLAGS) -I. $(MLIB) - -%.o: %.c makefile $(HDR_LIB) - $(CC) $(CFLAGS) -fPIC -c $< -o $@ - -clean: - rm -f *.o libnn.so libnnhpi_customized.so $(PROGRAMS) $(TESTS) *~ core - -configclean: - rm -f config.h makefile config.cache config.status config.log - -ex1clean: - cd examples/1; make clean; - -ex2clean: - cd examples/2; make clean; - -ex3clean: - cd examples/3; make clean; - -ex4clean: - cd examples/4; make clean; - -ex5clean: - cd examples/5; make clean; - -ex6clean: - cd examples/6; make clean; - -distclean: clean configclean ex1clean ex2clean ex3clean ex4clean ex5clean ex6clean - -indent: - indent -T FILE -T NN_ALGORITHM -T point -T delaunay -Tdsearch -T lpi -T nnpi -T nnhpi -T indexedpoint -T nnai -T ht_bucket -T hashtable -T istack -T triangle -T triangle_neighbours -T circle -T nn_weights -T lweights -T minell -T specs -T reader -T preader -T grid $(SRC_LIB) $(SRC_NNBATHY) $(HDR_NNBATHY) - rm -f *~ +SHELL = /bin/sh + +prefix = /usr/local +exec_prefix = ${prefix} +bindir = ${exec_prefix}/bin +libdir = /usr/local/lib +includedir = ${prefix}/include + +INSTALLDIRS =\ +$(bindir)\ +$(libdir)\ +$(includedir) + +INSTALL = /usr/bin/install -c +INSTALL_PROGRAM = ${INSTALL} +INSTALL_DATA = ${INSTALL} -m 644 + +MPI = no +# only matters if MPI = yes +VIAFILE = no +CC = gcc +CFLAGS = -g -O2 -Wall -pedantic -D_GNU_SOURCE -std=c99 +CFLAGS_TRIANGLE = -O2 -w -ffloat-store +CFLAGS_VULNERABLE = -ffloat-store +LDFLAGS = + +AR = ar +ARFLAGS = cr + +MLIB = -lm + +SRC_LIB =\ +delaunay.c\ +hash.c\ +istack.c\ +lpi.c\ +minell.c\ +nnai.c\ +nnpi.c\ +nncommon.c\ +nncommon-vulnerable.c\ +preader.c\ +version.c\ +nnhpi_customized.c + +HDR_LIB =\ +delaunay.h\ +delaunay_internal.h\ +hash.h\ +istack.h\ +istack_internal.h\ +minell.h\ +nan.h\ +nn.h\ +nnpi.h\ +preader.h + +SRC_NNBATHY=\ +nnbathy.c +HDR_NNBATHY = + +PROGRAMS =\ +minell\ +nnbathy\ + +TESTS=\ +nnai_test\ +nnphi_test\ +ht_test + +OBJ_LIB = $(SRC_LIB:.c=.o) + +all: libnn.so libnnhpi_customized.so $(PROGRAMS) + +minell: minell.c + $(CC) -o minell minell.c -DME_STANDALONE $(CFLAGS) -I. $(LDFLAGS) $(MLIB) + +ifeq ($(MPI), yes) +delaunay.o: override CC = mpicc +delaunay.o: override CFLAGS += -DMPI -DUSE_SHMEM +nnbathy: override CC = mpicc +nnbathy: override CFLAGS += -DMPI -DUSE_SHMEM +ifeq ($(VIAFILE), yes) +nnbathy: override CFLAGS += -DVIAFILE +SRC_NNBATHY += distribute.c +HDR_NNBATHY += distribute.h +endif +else +nnbathy: override CFLAGS += -DNN_SERIAL +endif + +nnbathy: libnn.so nnbathy.c $(SRC_NNBATHY) $(HDR_NNBATHY) + $(CC) -o nnbathy $(SRC_NNBATHY) $(CFLAGS) -I. -L. -lnn $(MLIB) + +standalone: override LDFLAGS+=-static +standalone: $(PROGRAMS) + strip $(PROGRAMS) + +libnn.so: triangle.o $(OBJ_LIB) + $(CC) -shared -fPIC -o libnn.so triangle.o $(OBJ_LIB) + +libnnhpi_customized.so: libnn.so nnhpi_customized.o + $(CC) -shared -fPIC -o libnnhpi_customized.so nnhpi_customized.o -I. -L. -lnn $(MLIB) + +nncommon-vulnerable.o: override CFLAGS+=$(CFLAGS_VULNERABLE) + +triangle.o: triangle.c triangle.h + $(CC) -c -DTRILIBRARY $(CFLAGS_TRIANGLE) -I. -fPIC triangle.c + +tests: libnn.so $(TESTS) + +nnai_test: + $(CC) -o nnai_test nnai.c -DNNAI_TEST $(CFLAGS) -I. -L. $(MLIB) -lnn + +nnphi_test: + $(CC) -o nnphi_test nnpi.c -DNNPHI_TEST $(CFLAGS) -I. -L. $(MLIB) -lnn + +ht_test: + $(CC) -o ht_test hash.c -DHT_TEST $(CFLAGS) -I. $(MLIB) + +%.o: %.c makefile $(HDR_LIB) + $(CC) $(CFLAGS) -fPIC -c $< -o $@ + +clean: + rm -f *.o libnn.so libnnhpi_customized.so $(PROGRAMS) $(TESTS) *~ core + +configclean: + rm -f config.h makefile config.cache config.status config.log + +ex1clean: + cd examples/1; make clean; + +ex2clean: + cd examples/2; make clean; + +ex3clean: + cd examples/3; make clean; + +ex4clean: + cd examples/4; make clean; + +ex5clean: + cd examples/5; make clean; + +ex6clean: + cd examples/6; make clean; + +distclean: clean configclean ex1clean ex2clean ex3clean ex4clean ex5clean ex6clean + +indent: + indent -T FILE -T NN_ALGORITHM -T point -T delaunay -Tdsearch -T lpi -T nnpi -T nnhpi -T indexedpoint -T nnai -T ht_bucket -T hashtable -T istack -T triangle -T triangle_neighbours -T circle -T nn_weights -T lweights -T minell -T specs -T reader -T preader -T grid $(SRC_LIB) $(SRC_NNBATHY) $(HDR_NNBATHY) + rm -f *~ diff --git a/autoarray/util/nn/src/nn/minell.c b/autoarray/util/nn/src/nn/minell.c index 8aa9b7871..cc16c5a7e 100644 --- a/autoarray/util/nn/src/nn/minell.c +++ b/autoarray/util/nn/src/nn/minell.c @@ -1,1310 +1,1310 @@ -/****************************************************************************** - * - * File: minell.c - * - * Created: 24/02/2003 - * - * Author: Pavel Sakov - * CSIRO Marine Research - * NERSC - * - * Description: Minimal ellipse stuff: construction of an ellipse of minimal - * area containing a given set of points on a plane. Affine - * transformation that would transform it into a unit circle with - * center in (0,0) and back. - * - * Minimal ellipse is a handy object due to its uniqueness for a - * given set of points (unlike, say, minimal rectangle) and due - * to the speed of construction algorithms. - * - * The minimal ellipse construction is based on Welzl's algorithm, - * - * E. Welzl. Smallest Enclosing Disks (Balls and Ellipsoids). - * LNCS, 555:359--370, 1991. 32 - * http://www.inf.ethz.ch/personal/emo/ps-files/ - * SmallEnclDisks-LNCS555.ps - * - * The original Welzl's algorithm is purely recursive. To improve - * performance, we developed a modified algorithm, when Welzl's - * procedure is called for maximum 6 points at any one time. For - * big datasets, the modified algorithm is 3 to 5 times faster - * than the original one. - * - * The numerics is described in - * - * B. Gartner and S. Schonherr. Smallest enclosing ellipses - fast - * and exact. Serie B - Informatik B 97-03, Freie Universitat - * Berlin, Germany, June 1997. - * http://www.inf.fu-berlin.de/~sven/own_work/ - * smell2exact_tr-b-97-03.ps.gz - * ftp://ftp.inf.fu-berlin.de/pub/reports/tr-b-97-03.ps.gz - * - * or - * - * B. Gartner and S. Schonherr. Exact primitives for smallest - * enclosing ellipses. In Proc. 13th Annu. ACM Symp. on - * Computational Geometry, pages 430-432, 1997. [GS97b] - * http://www.inf.fu-berlin.de/~sven/own_work/ - * smell2exact_socg97.ps.gz - * - * See also - * http://geometryalgorithms.com/Archive/algorithm_0107 - * - * Revisions: PS 27/02/2003 -- improved performance by modifying the algorithm - * - * PS 04/03/2003 -- fixed code in regard to the wrong assumption - * that five support points may originate only - * imediately after test for the fifth point being - * in ellipse defined by four support points - * - * PS 24/09/2008 -- fixed deficiencies in minell_calcprm() - thanks - * to Glen Low for the bug report. - * - *****************************************************************************/ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include "config.h" -#include "nan.h" -#include "minell.h" - -#define BIGNUMBER 1.0e+100 -#define SECANT_COUNT_MAX 30 -#define SECANT_EPS 5.0e-11 -#define EPS 1.0e-14 - -static int me_seed = 1; -static int me_classic = 0; -static int me_verbose = 0; - -struct minell { - /* - * support points - */ - int n; - int nprev; - point* points[5]; - - /* - * Center form representation. A point p belongs to minimal ellipse if - * - * (p - c)^T M (p - c) - 1 <= 0, - * - * M = || r t || - * || t s || - */ - point c; /* ellipsoid center */ - double r; - double t; - double s; - - /* - * Some other ellipse parameters (calculated after the ellipse is built) - */ - double theta; /* inclination */ - double a; /* semi-axis length */ - double b; /* semi-axis length */ - - /* - * two conics -- for n = 4 and n = 5 - */ - double dx12; - double dy12; - double d12; - double dx23; - double dy23; - double d23; - double dx34; - double dy34; - double d34; - double dx41; - double dy41; - double d41; - double r1; - double r2; - double s1; - double s2; - double t1; - double t2; - double u1; - double u2; - double v1; - double v2; - double w1; - double w2; - /* - * the two conics are given by: - * - * C1(x,y) = (dy12 * x - dx12 * y + d12) * (dy34 * x - dx34 * y + d34) - * C2(x,y) = (dy23 * x - dx23 * y + d23) * (dy41 * x - dx41 * y + d41) - * - * or - * - * C_i(x,y) = r_i x^2 + s_i y^2 + 2 t_i x y + 2 u_i x + 2 v_i y + w_i - */ - - /* - * some coefficients used in-ellipse tests - */ - double alpha; - double beta; - double gamma; - - /* - * n = 5: conic coefficients - */ - double lambda0; - double mu0; - - /* - * stats - */ - int minell_npoints; - int minell_calc_count; - int minell_calc3_count; - int minell_calc4_count; - int minell_calc5_count; - int minell_eval3_count; - int minell_eval4_count; - int minell_eval5_count; -}; - -/* For a minimal ellipse with 4 support points, finds whether the conic - * through these points and a given fifth point is an ellipse. - */ -static int isellipse(minell* me, point* p) -{ - double x = p->x; - double y = p->y; - - me->mu0 = -(me->dy12 * x - me->dx12 * y + me->d12) * (me->dy34 * x - me->dx34 * y + me->d34); - me->lambda0 = (me->dy23 * x - me->dx23 * y + me->d23) * (me->dy41 * x - me->dx41 * y + me->d41); - - return (me->alpha * me->lambda0 + me->beta * me->mu0) * me->lambda0 + me->gamma * me->mu0 * me->mu0 > 0.0; -} - -/* For a given point, calculates a value correlated with the distance to the - * minimal ellipse boundary. Applicable in the case if there are 4 support - * points AND the conic through these and the tested point is an ellipse only. - * The fifth point is inside the minimal ellipse if the calculated value <= 0. - */ -static double minell_calcinsideeval(minell* me) -{ - double r = me->lambda0 * me->r1 + me->mu0 * me->r2; - double s = me->lambda0 * me->s1 + me->mu0 * me->s2; - double t = me->lambda0 * me->t1 + me->mu0 * me->t2; - double u = me->lambda0 * me->u1 + me->mu0 * me->u2; - double v = me->lambda0 * me->v1 + me->mu0 * me->v2; - double w = me->lambda0 * me->w1 + me->mu0 * me->w2; - double d = r * s - t * t; - double Ds = me->r1 * me->s2 - me->r2 * me->s1; - double Dt = me->r1 * me->t2 - me->r2 * me->t1; - double Du = me->r1 * me->u2 - me->r2 * me->u1; - double Dv = me->r1 * me->v2 - me->r2 * me->v1; - double Dw = me->r1 * me->w2 - me->r2 * me->w1; - double Dd = r * Ds - 2.0 * t * Dt; - double Z = (u * s - 2.0 * v * t) * u + v * v * r; - double DZ = 2.0 * (u * Du * s + v * Dv * r - Du * v * t - u * Dv * t - u * v * Dt) + u * u * Ds; - double delta = 3.0 * Dd * Z + d * (2.0 * d * Dw - Dd * w - 2.0 * DZ); - double ballpark = fabs(3.0 * Dd * Z) + fabs(d) * (fabs(2.0 * d * Dw) + fabs(Dd * w) + fabs(2.0 * DZ)); - - return r * delta / ballpark; -} - -static int minell_containspoint(minell* me, point* p) -{ - int i; - - for (i = 0; i < me->n; ++i) - if (me->points[i]->x == p->x && me->points[i]->y == p->y) - return 1; - - if (me->n < 3) - return 0; - else if (me->n == 3) { - point* c = &me->c; - double dx = p->x - c->x; - double dy = p->y - c->y; - - me->minell_eval3_count++; - - return (me->r * dx + 2.0 * me->t * dy) * dx + me->s * dy * dy - 1.0 <= EPS; - } else if (me->n == 4) { - me->minell_eval4_count++; - - if (!isellipse(me, p)) { - double lambda = 2.0 * me->gamma - me->beta; - double mu = 2.0 * me->alpha - me->beta; - double ballpark = fabs(mu * me->lambda0) + fabs(lambda * me->mu0); - - return mu * me->lambda0 - lambda * me->mu0 <= EPS * ballpark; - } else - return minell_calcinsideeval(me) <= EPS; - } else { /* me->n == 5 */ - double x = p->x; - double y = p->y; - double C1 = (me->dy12 * x - me->dx12 * y + me->d12) * (me->dy34 * x - me->dx34 * y + me->d34) * me->lambda0; - double C2 = (me->dy23 * x - me->dx23 * y + me->d23) * (me->dy41 * x - me->dx41 * y + me->d41) * me->mu0; - double r = me->lambda0 * me->r1 + me->mu0 * me->r2; - double ballpark = (fabs(me->dy12 * x) + fabs(me->dx12 * y) + fabs(me->d12)) * (fabs(me->dy34 * x) + fabs(me->dx34 * y) + fabs(me->d34)) * fabs(me->lambda0) + (fabs(me->dy23 * x) + fabs(me->dx23 * y) + fabs(me->d23)) * (fabs(me->dy41 * x) + fabs(me->dx41 * y) + fabs(me->d41)) * fabs(me->mu0); - - me->minell_eval5_count++; - - if (r > 0.0) - return (C1 + C2) / ballpark <= EPS; - else - return (C1 + C2) / ballpark >= -EPS; - } -} - -static point** points_shuffle(int n, point* p) -{ - int* numbers = malloc(n * sizeof(int)); - point** pp = malloc(n * sizeof(point*)); - int i; - - for (i = 0; i < n; ++i) - numbers[i] = i; - - srand(me_seed); - - for (i = 0; i < n; ++i) { - int nn = (int) ((double) n * (double) rand() / ((double) RAND_MAX + 1.0)); - int tmp = numbers[i]; - - numbers[i] = numbers[nn]; - numbers[nn] = tmp; - } - - for (i = 0; i < n; ++i) - pp[i] = &p[numbers[i]]; - - free(numbers); - - return pp; -} - -static minell* minell_create(void) -{ - minell* me = malloc(sizeof(minell)); - - me->n = 0; - me->nprev = -1; - me->minell_npoints = 0; - me->minell_calc_count = 0; - me->minell_calc3_count = 0; - me->minell_calc4_count = 0; - me->minell_calc5_count = 0; - me->minell_eval3_count = 0; - me->minell_eval4_count = 0; - me->minell_eval5_count = 0; - - return me; -} - -void minell_destroy(minell* me) -{ - if (me != NULL) - free(me); -} - -/* Calculates minimal ellipse by 3 boundary points. - */ -static void minell_calc3(minell* me) -{ - point** points = me->points; - point* c = &me->c; - int i; - - me->minell_calc3_count++; - - /* - * find center - */ - c->x = 0.0; - c->y = 0.0; - c->z = NaN; - for (i = 0; i < 3; ++i) { - c->x += points[i]->x; - c->y += points[i]->y; - } - c->x /= 3.0; - c->y /= 3.0; - - { - double a = 0.0, b = 0.0, d = 0.0; - double D; - - for (i = 0; i < 3; ++i) { - point* p = points[i]; - double dx = p->x - c->x; - double dy = p->y - c->y; - - a += dx * dx; - b += dx * dy; - d += dy * dy; - } - - D = (a * d - b * b) / 1.5; - - if (D == 0.0) { - me->r = d * BIGNUMBER; - me->t = -b * BIGNUMBER; - me->s = a * BIGNUMBER; - } else { - me->r = d / D; - me->t = -b / D; - me->s = a / D; - } - } -} - -/* Calculates whether the point p is on the left side of vector [p0, p1]. - * Returns 1 if on the left side, -1 if on the right side, 0 if on the line. - */ -static int onleftside(point* p, point* p0, point* p1) -{ - double tmp = (p0->x - p->x) * (p1->y - p->y) - (p1->x - p->x) * (p0->y - p->y); - - if (tmp > 0.0) - return 1; - else if (tmp < 0.0) - return -1; - else - return 0; -} - -/* Moves points within in an array (of up to 5 points) so that they become - * aranged in counterclockwise direction. - */ -static void points_makeccw(int n, point* points[]) -{ - point* p; - int i; - - if (n < 3) - return; - - if (onleftside(points[0], points[1], points[2]) < 0) { - p = points[1]; - points[1] = points[2]; - points[2] = p; - } - - if (n == 3) - return; - - for (i = 0; i < 3; ++i) { - int i1 = (i + 1) % 3; - - if (onleftside(points[3], points[i], points[i1]) < 0) - break; - } - - if (i == 3) { - for (i = 0; i < 3; ++i) { - int i1 = (i + 1) % 3; - - if (onleftside(points[3], points[i], points[i1]) <= 0) - break; - } - } - - assert(i < 3); - - if (i == 1) { - p = points[3]; - points[3] = points[2]; - points[2] = p; - } else if (i == 0) { - p = points[3]; - points[3] = points[2]; - points[2] = points[1]; - points[1] = p; - } - - if (n == 4) - return; - - for (i = 0; i < 4; ++i) { - int i1 = (i + 1) % 4; - - if (onleftside(points[4], points[i], points[i1]) < 0) - break; - } - - if (i == 4) { - for (i = 0; i < 4; ++i) { - int i1 = (i + 1) % 4; - - if (onleftside(points[4], points[i], points[i1]) <= 0) - break; - } - } - - assert(i < 4); - - if (i == 2) { - p = points[4]; - points[4] = points[3]; - points[3] = p; - } else if (i == 1) { - p = points[4]; - points[4] = points[3]; - points[3] = points[2]; - points[2] = p; - } else if (i == 0) { - p = points[4]; - points[4] = points[3]; - points[3] = points[2]; - points[2] = points[1]; - points[1] = p; - } -} - -/* Makes some preliminary calculations for a minimal ellipse defined by 4 - * boundary points. - */ -static void minell_calc4(minell* me) -{ - point** points = me->points; - - me->minell_calc4_count++; - - /* - * make sure the 4 points are in counterclockwise order - */ - points_makeccw(me->n, me->points); - - me->dx12 = points[0]->x - points[1]->x; - me->dy12 = points[0]->y - points[1]->y; - me->d12 = points[0]->x * points[1]->y - points[1]->x * points[0]->y; - - me->dx23 = points[1]->x - points[2]->x; - me->dy23 = points[1]->y - points[2]->y; - me->d23 = points[1]->x * points[2]->y - points[2]->x * points[1]->y; - - me->dx34 = points[2]->x - points[3]->x; - me->dy34 = points[2]->y - points[3]->y; - me->d34 = points[2]->x * points[3]->y - points[3]->x * points[2]->y; - - me->dx41 = points[3]->x - points[0]->x; - me->dy41 = points[3]->y - points[0]->y; - me->d41 = points[3]->x * points[0]->y - points[0]->x * points[3]->y; - - me->r1 = me->dy12 * me->dy34; - me->s1 = me->dx12 * me->dx34; - me->t1 = -(me->dx12 * me->dy34 + me->dx34 * me->dy12) / 2.0; - me->u1 = (me->dy12 * me->d34 + me->dy34 * me->d12) / 2.0; - me->v1 = -(me->dx12 * me->d34 + me->dx34 * me->d12) / 2.0; - me->w1 = me->d12 * me->d34; - - me->r2 = me->dy23 * me->dy41; - me->s2 = me->dx23 * me->dx41; - me->t2 = -(me->dx23 * me->dy41 + me->dx41 * me->dy23) / 2.0; - me->u2 = (me->dy23 * me->d41 + me->dy41 * me->d23) / 2.0; - me->v2 = -(me->dx23 * me->d41 + me->dx41 * me->d23) / 2.0; - me->w2 = me->d23 * me->d41; - - me->alpha = me->r1 * me->s1 - me->t1 * me->t1; - me->beta = me->r1 * me->s2 + me->r2 * me->s1 - 2.0 * me->t1 * me->t2; - me->gamma = me->r2 * me->s2 - me->t2 * me->t2; -} - -static void minell_calcb(minell* me, int nb, point* pointsb[]) -{ - int i; - - me->nprev = me->n; - me->n = nb; - for (i = 0; i < nb; ++i) - me->points[i] = pointsb[i]; - - if (nb < 3) - return; - else if (nb == 3) - minell_calc3(me); - else if (nb == 4) - minell_calc4(me); - else if (me->nprev == 5) { /* nb == 5 */ - /* - * (should never happen according to B. Gartner and S. Schonherr, - * "Smallest enclosing ellipses - fast and exact", but life is not - * always like this...) - */ - me->minell_calc5_count++; - minell_calcb(me, 4, pointsb); - (void) minell_containspoint(me, pointsb[4]); - me->n = 5; - me->nprev = 4; - } -} - -/* Moves the last point to the front of the point pointer array. - */ -static void points_movelasttofront(point** points, int n) -{ - point* p = points[n - 1]; - - memmove(&points[1], points, (n - 1) * sizeof(point*)); - points[0] = p; -} - -static double distance(point* p1, point* p2) -{ - return hypot(p1->x - p2->x, p1->y - p2->y); -} - -/* For a minimal ellipse defined by 4 boundary points, finds a fifth point - * on the boundary. - * Note: may need some tuning. - */ -static void minell_findfifthpoint(minell* me) -{ - point** ps = me->points; - int factor = 5; - int offset = 0; - double x1, y1, x2, y2; - double dx21, dy21; - point p; - point p1, p2; - double f1, f2; - double xprev = NaN; - int count; - int i; - - /* - * for the quadrilateral formed by four boundary points, choose a pair of - * opposite edges that does not include the edge of minimal length to - * reduce loss of precision in the case if there is an edge of nearly zero - * length - */ - { - double mindist = DBL_MAX; - - for (i = 0; i < 4; ++i) { - int i1 = (i + 1) % 4; - double dist = distance(ps[i], ps[i1]); - - if (dist < mindist) { - mindist = dist; - offset = i1 % 2; - } - } - } - - /* - * take middle points of the chosen edges - */ - if (offset == 0) { - x1 = (ps[2]->x + ps[3]->x) / 2.0; - y1 = (ps[2]->y + ps[3]->y) / 2.0; - x2 = (ps[0]->x + ps[1]->x) / 2.0; - y2 = (ps[0]->y + ps[1]->y) / 2.0; - } else { - x1 = (ps[3]->x + ps[0]->x) / 2.0; - y1 = (ps[3]->y + ps[0]->y) / 2.0; - x2 = (ps[1]->x + ps[2]->x) / 2.0; - y2 = (ps[1]->y + ps[2]->y) / 2.0; - } - dx21 = x2 - x1; - dy21 = y2 - y1; - - /* - * on the line connecting the middle points, find a point p1 such that the - * conic through it + four boundary points is an ellipse - */ - do { - double dx, dy; - - p1.x = x2; - p1.y = y2; - - factor *= 2; - dx = dx21 / (double) factor; - dy = dy21 / (double) factor; - - for (i = 0; i < factor; ++i) { - p1.x += dx; - p1.y += dy; - if (isellipse(me, &p1)) - break; - } - } while (i == factor); - - f1 = minell_calcinsideeval(me); - f2 = f1; - - /* - * find a point p2 such that p1 and p2 are on different sides of the - * minimal ellipse boundary - */ - do { - int inside = (f1 < 0.0) ? 1 : -1; - double dx, dy; - - p2.x = p1.x; - p2.y = p1.y; - - factor *= 2; - dx = dx21 * (double) inside / (double) factor; - dy = dy21 * (double) inside / (double) factor; - - for (i = 0; i < factor; ++i) { - p2.x += dx; - p2.y += dy; - if (!isellipse(me, &p2)) - break; - f2 = minell_calcinsideeval(me); - if (f1 * f2 <= 0.0) - break; - } - } while (f1 * f2 > 0.0); - - /* - * OK, now squeeze it to death - */ - x2 = 1.0; - x1 = 0.0; - xprev = NaN; - count = 0; - while (count < SECANT_COUNT_MAX) { - double x = (f2 * x1 - f1 * x2) / (f2 - f1); - double f; - int ok; - - p.x = p2.x * x + p1.x * (1.0 - x); - p.y = p2.y * x + p1.y * (1.0 - x); - - ok = isellipse(me, &p); - assert(ok); - - f = minell_calcinsideeval(me); - - if (f == 0.0 || fabs(x - xprev) < SECANT_EPS) - break; - - if (f * f1 > 0.0) { - x1 = x2; - f1 = f2; - x2 = x; - f2 = f; - } else { - x2 = x1; - f2 = f1; - x1 = x; - f1 = f; - } - - xprev = x; - count++; - } - if (me_verbose > 1) - fprintf(stderr, "minimal ellipse: find fifth point: count = %d\n", count); -} - -static void minell_center2human(minell* me) -{ - double sum = me->r + me->s; - double diff = me->r - me->s; - double sqr = hypot(diff, 2.0 * me->t); - double a = (sum - sqr) / 2.0; - double b = (sum + sqr) / 2.0; - - me->a = sqrt(1.0 / a); - me->b = sqrt(1.0 / b); - - if (a == b) { - me->theta = 0.0; - return; - } - - me->theta = -asin(2.0 * me->t / sqr) / 2.0; - if (me->s < me->r) { /* cos(2 theta) < 0 */ - if (me->theta > 0) - me->theta = M_PI / 2.0 - me->theta; - else - me->theta = -M_PI / 2.0 - me->theta; - } -} - -/* Calculates human-form parameters of the minimal ellipse from whatever is - * available. - */ -static void minell_calcprm(minell* me) -{ - point** ps = me->points; - - me->c.z = NaN; - if (me->n == 0) { - me->c.x = NaN; - me->c.y = NaN; - me->a = NaN; - me->b = NaN; - me->theta = NaN; - } else if (me->n == 1) { - me->c.x = ps[0]->x; - me->c.y = ps[0]->y; - me->a = 0.0; - me->b = 0.0; - me->theta = 0.0; - } else if (me->n == 2) { - me->c.x = (ps[0]->x + ps[1]->x) / 2.0; - me->c.y = (ps[0]->y + ps[1]->y) / 2.0; - me->a = hypot(me->c.x - ps[0]->x, me->c.y - ps[0]->y); - me->b = 0.0; - me->theta = atan((ps[0]->y - ps[1]->y) / (ps[0]->x - ps[1]->x)); - } else if (me->n == 3) { - minell_center2human(me); - } else { - if (me->n == 4) - minell_findfifthpoint(me); - /* - * We have 4 explicit points on the boundary of the minimal ellipse. - * Because the last tested point is on the boundary, lambda0 and mu0 - * give us the coefficients for the minimal ellipse conic. - */ - { - double r = me->lambda0 * me->r1 + me->mu0 * me->r2; - double s = me->lambda0 * me->s1 + me->mu0 * me->s2; - double t = me->lambda0 * me->t1 + me->mu0 * me->t2; - double u = me->lambda0 * me->u1 + me->mu0 * me->u2; - double v = me->lambda0 * me->v1 + me->mu0 * me->v2; - double w = me->lambda0 * me->w1 + me->mu0 * me->w2; - double d = r * s - t * t; - double z; - - me->c.x = (t * v - s * u) / d; - me->c.y = (t * u - r * v) / d; - - z = (u * (u * s - 2.0 * v * t) + v * v * r) / d - w; - - me->r = r / z; - me->s = s / z; - me->t = t / z; - - assert(me->r > 0.0); - assert(me->s > 0.0); - } - minell_center2human(me); - } -} - -static void minell_info(minell* me, FILE* f) -{ - int i; - - fprintf(f, "minimal ellipse: info:\n"); - fprintf(f, " defined by %d points:\n", me->n); - for (i = 0; i < me->n; ++i) { - point* p = me->points[i]; - - fprintf(f, " point %d: (%.15g, %.15g)\n", i, p->x, p->y); - } - fprintf(f, " center = (%.15g, %.15g)\n", me->c.x, me->c.y); - fprintf(f, " semiaxis a = %.15g (inclination = %.15g deg)\n", me->a, me->theta * 180.0 / M_PI); - fprintf(f, " semiaxis b = %.15g\n", me->b); -} - -/* Recursively calculates minimal ellipse by Welzl's algorithm. - */ -static void minell_calc_welzl(minell* me, int n, point* points[], int nb, point* pointsb[]) -{ - point* p; - int count; - - me->minell_calc_count++; - count = me->minell_calc_count; - - if (me_verbose > 1) { - int i; - - fprintf(stderr, "%d: %d | %d\n", count, n, nb); - fprintf(stderr, " pointsb:\n"); - fprintf(stderr, " x = ["); - for (i = 0; i < nb; ++i) - fprintf(stderr, "%.4f ", pointsb[i]->x); - fprintf(stderr, "];\n"); - fprintf(stderr, " y = ["); - for (i = 0; i < nb; ++i) - fprintf(stderr, "%.4f ", pointsb[i]->y); - fprintf(stderr, "];\n"); - - fflush(stderr); - } - - if (n == 0 || nb == 5) { - /* - * This is the only location where the ellipse (`me') gets - * calculated. It then is passed up the stack of resursive - * procedures to check that all data points do belong to it. - */ - minell_calcb(me, nb, pointsb); - - if (me_verbose > 2) { - minell_calcprm(me); - minell_info(me, stderr); - } - - return; - } - - p = points[n - 1]; - minell_calc_welzl(me, n - 1, points, nb, pointsb); - - if (me_verbose > 1) { - int i; - - fprintf(stderr, "%d: %d | %d\n", count, n, nb); - fprintf(stderr, " me->points:\n"); - fprintf(stderr, " x = ["); - for (i = 0; i < me->n; ++i) - fprintf(stderr, "%.4f ", me->points[i]->x); - fprintf(stderr, "];\n"); - fprintf(stderr, " y = ["); - for (i = 0; i < me->n; ++i) - fprintf(stderr, "%.4f ", me->points[i]->y); - fprintf(stderr, "];\n"); - } - - if (minell_containspoint(me, p)) { - if (me_verbose > 1) { - fprintf(stderr, " p = (%.4f, %.4f) : IN\n", p->x, p->y); - fflush(stderr); - } - return; - } else { - if (me_verbose > 1) { - fprintf(stderr, " p = (%.4f, %.4f) : OUT\n", p->x, p->y); - fflush(stderr); - } - - /* - * OK, the point does not belong to the ellipse. Add it to the list - * of boundary points and recalculate the ellipse. - */ - - pointsb[nb] = p; - - minell_calc_welzl(me, n - 1, points, nb + 1, pointsb); - - /* - * This operation by Welzl greatly reduces (by 5-10 times) the number - * of recursive calls and in-ellipse tests (although it has n^2 - * flavour). - */ - if (me_classic) - points_movelasttofront(points, n); - } -} - -/* This improvement to the direct call of the Welzl's recursive algorithm - * is based on the observation that when an in-ellipse test fails, almost - * always the new ellipse's support points will include the new point and - * some of the former support points only. It therefore avoids making - * in-ellipse check for all processed points each time a new point is added to - * the boundary. Instead, it carries on until all points are verified to be - * inside the calculated ellipse. - */ -static void minell_calc(minell* me, int n, point* points[]) -{ - int nin; - int i; - - for (i = 0, nin = 0; nin < n; i = (i + 1) % n) { - point* pointstocheck[5]; - point* pointsonboundary[5]; - int j; - - if (minell_containspoint(me, points[i])) { - nin++; - continue; - } - - if (me_verbose > 1) - fprintf(stderr, "*** calc --> welzl ***\n"); - - nin = 0; - - pointsonboundary[0] = points[i]; - for (j = 0; j < me->n; ++j) - pointstocheck[j] = me->points[j]; - - minell_calc_welzl(me, me->n, pointstocheck, 1, pointsonboundary); - } -} - -minell* minell_build(int n, point p[]) -{ - point** pp = points_shuffle(n, p); - minell* me = minell_create(); - - me->minell_npoints = n; - - if (me_classic) { - point* pointsb[5]; - - minell_calc_welzl(me, n, pp, 0, pointsb); - } else - minell_calc(me, n, pp); - - free(pp); - - minell_calcprm(me); - - return me; -} - -/* For given points, applies an affine transformation that would transfer a - * given ellipse into a unit circle with center in (0,0). - */ -void minell_scalepoints(minell* me, int n, point points[]) -{ - double _cos = cos(me->theta); - double _sin = sin(me->theta); - double a = me->a; - double b = me->b; - double x0 = me->c.x; - double y0 = me->c.y; - int i; - - for (i = 0; i < n; ++i) { - point* p = &points[i]; - double x = p->x - x0; - double y = p->y - y0; - - p->x = (x * _cos - y * _sin) / a; - p->y = (x * _sin + y * _cos) / b; - } -} - -/* For given points, applies an affine transformation inverse to the previous - * one. - */ -void minell_rescalepoints(minell* me, int n, point points[]) -{ - double _cos = cos(me->theta); - double _sin = sin(me->theta); - double a = me->a; - double b = me->b; - double x0 = me->c.x; - double y0 = me->c.y; - int i; - - for (i = 0; i < n; ++i) { - point* p = &points[i]; - double x = p->x * a; - double y = p->y * b; - - p->x = (x * _cos + y * _sin) + x0; - p->y = (-x * _sin + y * _cos) + y0; - } -} - -#if defined(ME_STANDALONE) - -#include - -int userandomseed = 0; -int test = 0; - -#define NTEST 1000 - -static void minell_quit(char* format, ...) -{ - va_list args; - - fflush(stdout); - fprintf(stderr, "error: minimal ellipse: "); - va_start(args, format); - vfprintf(stderr, format, args); - va_end(args); - - exit(1); -} - -static void minell_stats(minell* me, FILE* f) -{ - fprintf(f, "minimal ellipse: stats:\n"); - fprintf(f, " built over %d points\n", me->minell_npoints); - fprintf(f, " by %sWelzl's algorithm\n", (me_classic) ? "" : "modified "); - if (me_verbose && me_seed != 1) - fprintf(f, " seed = %d\n", me_seed); - fprintf(f, " %d calls to Welzl's procedure\n", me->minell_calc_count); - fprintf(f, " computed by 3 points: %d times\n", me->minell_calc3_count); - fprintf(f, " computed by 4 points: %d times\n", me->minell_calc4_count); - fprintf(f, " computed by 5 points: %d times\n", me->minell_calc5_count); - fprintf(f, " in-ellipse test by 3 points: %d times\n", me->minell_eval3_count); - fprintf(f, " in-ellipse test by 4 points: %d times\n", me->minell_eval4_count); - fprintf(f, " in-ellipse test by 5 points: %d times\n", me->minell_eval5_count); -} - -static void usage() -{ - printf("Usage: minell [-c] [-r|-s ] [-t] [-v|-V]\n"); - printf(" -- data file with X and Y coords in the first two columns\n"); - printf(" (use \"stdin\" or \"-\" for standard input)\n"); - printf("Options:\n"); - printf(" -c -- use classic algorithm by Welzl\n"); - printf(" -r -- use random seed at shuffling the input points\n"); - printf(" -s -- use this seed at shuffling the input points\n"); - printf(" -t -- produce stats by running 1000 times with seed changing from\n"); - printf(" 1 (unless explicitely specified) to 1000\n"); - printf(" -v -- verbose\n"); - printf(" -V -- very verbose\n"); - printf(" -VV -- even more verbose\n"); - printf("Description: `minell' calculates and prints parameters of the ellipse of\n"); - printf(" minimal area containing specified points.\n"); - - exit(0); -} - -static void parse_commandline(int argc, char* argv[], char** fname) -{ - int i; - - *fname = NULL; - - i = 1; - while (i < argc) { - if (argv[i][0] != '-') { - if (*fname == NULL) { - *fname = argv[i]; - i++; - } else - usage(); - } else { - switch (argv[i][1]) { - case 0: - if (*fname == NULL) { - *fname = argv[i]; - i++; - } else - usage(); - break; - case 'c': - me_classic = 1; - i++; - break; - case 'r': - userandomseed = 1; - i++; - break; - case 's': - i++; - if (i >= argc) - minell_quit("could not read random seed after \"-s\"\n"); - me_seed = atoi(argv[i]); - userandomseed = 0; - i++; - break; - case 't': - test = 1; - i++; - break; - case 'v': - me_verbose = 1; - i++; - break; - case 'V': - if (argv[i][2] == 'V') - me_verbose = 3; - else - me_verbose = 2; - i++; - break; - default: - usage(); - break; - } - } - } -} - -static int str2double(char* token, double* value) -{ - char* end = NULL; - - if (token == NULL) { - *value = NaN; - return 0; - } - - *value = strtod(token, &end); - - if (end == token) { - *value = NaN; - return 0; - } - - return 1; -} - -#define NALLOCATED_START 1024 -#define BUFSIZE 10240 - -/* Reads array of points from a columnar file. - * - * @param fname File name (can be "stdin" or "-" for standard input) - * @param dim Number of dimensions (must be 2 or 3) - * @param n Pointer to number of points (output) - * @param points Pointer to array of points [*n] (output) (to be freed) - */ -static void points_read(char* fname, int dim, int* n, point** points) -{ - FILE* f = NULL; - int nallocated = NALLOCATED_START; - char buf[BUFSIZE]; - char seps[] = " ,;\t"; - char* token; - - if (dim < 2 || dim > 3) { - *n = 0; - *points = NULL; - return; - } - - if (fname == NULL) - f = stdin; - else { - if (strcmp(fname, "stdin") == 0 || strcmp(fname, "-") == 0) - f = stdin; - else { - f = fopen(fname, "r"); - if (f == NULL) - minell_quit("%s: %s\n", fname, strerror(errno)); - } - } - - *points = malloc(nallocated * sizeof(point)); - *n = 0; - while (fgets(buf, BUFSIZE, f) != NULL) { - point* p; - - if (*n == nallocated) { - nallocated *= 2; - *points = realloc(*points, nallocated * sizeof(point)); - } - - p = &(*points)[*n]; - - if (buf[0] == '#') - continue; - if ((token = strtok(buf, seps)) == NULL) - continue; - if (!str2double(token, &p->x)) - continue; - if ((token = strtok(NULL, seps)) == NULL) - continue; - if (!str2double(token, &p->y)) - continue; - if (dim == 2) - p->z = NaN; - else { - if ((token = strtok(NULL, seps)) == NULL) - continue; - if (!str2double(token, &p->z)) - continue; - } - (*n)++; - } - - if (*n == 0) { - free(*points); - *points = NULL; - } else - *points = realloc(*points, *n * sizeof(point)); - - if (f != stdin) - if (fclose(f) != 0) - minell_quit("%s: %s\n", fname, strerror(errno)); -} - -int main(int argc, char* argv[]) -{ - char* fname = NULL; - int npoints = 0; - point* points = NULL; - minell* me = NULL; - struct timeval tv0, tv1; - struct timezone tz; - - parse_commandline(argc, argv, &fname); - - if (fname == NULL) { - fprintf(stderr, "error: minimal ellipse: no input data\n"); - usage(); - } - - points_read(fname, 2, &npoints, &points); - - gettimeofday(&tv0, &tz); - - if (userandomseed) - me_seed = tv0.tv_usec % INT_MAX; - - if (!test) { - me = minell_build(npoints, points); - - gettimeofday(&tv1, &tz); - - minell_info(me, stdout); - if (me_verbose) { - long dt = 1000000 * (tv1.tv_sec - tv0.tv_sec) + tv1.tv_usec - tv0.tv_usec; - - minell_stats(me, stdout); - fprintf(stdout, "minimal ellipse: elapsed time = %ld us\n", dt); - } - - minell_destroy(me); - } else { - int minell_calc_count = 0; - int minell_calc3_count = 0; - int minell_calc4_count = 0; - int minell_calc5_count = 0; - int minell_eval3_count = 0; - int minell_eval4_count = 0; - int minell_eval5_count = 0; - long dt; - int i; - - for (i = 0; i < NTEST; ++i, ++me_seed) { - me = minell_build(npoints, points); - - minell_calc_count += me->minell_calc_count; - minell_calc3_count += me->minell_calc3_count; - minell_calc4_count += me->minell_calc4_count; - minell_calc5_count += me->minell_calc5_count; - minell_eval3_count += me->minell_eval3_count; - minell_eval4_count += me->minell_eval4_count; - minell_eval5_count += me->minell_eval5_count; - - minell_destroy(me); - } - - gettimeofday(&tv1, &tz); - dt = 1000000 * (tv1.tv_sec - tv0.tv_sec) + tv1.tv_usec - tv0.tv_usec; - fprintf(stdout, "minimal ellipse:\n"); - fprintf(stdout, " average build time = %ld us\n", dt / NTEST); - fprintf(stdout, " average number of calls to Welzl's procedure = %d\n", minell_calc_count / NTEST); - fprintf(stdout, " average number of ellipses built by 3 support points = %d\n", minell_calc3_count / NTEST); - fprintf(stdout, " average number of ellipses built by 4 support points = %d\n", minell_calc4_count / NTEST); - fprintf(stdout, " average number of in-ellipse test by 3 support points = %d\n", minell_eval3_count / NTEST); - fprintf(stdout, " average number of in-ellipse test by 4 support points = %d\n", minell_eval4_count / NTEST); - fprintf(stdout, " average number of in-ellipse test by 5 support points = %d\n", minell_eval5_count / NTEST); - } - - if (points != NULL) - free(points); - - return 0; -} - -#endif /* ME_UTIL */ +/****************************************************************************** + * + * File: minell.c + * + * Created: 24/02/2003 + * + * Author: Pavel Sakov + * CSIRO Marine Research + * NERSC + * + * Description: Minimal ellipse stuff: construction of an ellipse of minimal + * area containing a given set of points on a plane. Affine + * transformation that would transform it into a unit circle with + * center in (0,0) and back. + * + * Minimal ellipse is a handy object due to its uniqueness for a + * given set of points (unlike, say, minimal rectangle) and due + * to the speed of construction algorithms. + * + * The minimal ellipse construction is based on Welzl's algorithm, + * + * E. Welzl. Smallest Enclosing Disks (Balls and Ellipsoids). + * LNCS, 555:359--370, 1991. 32 + * http://www.inf.ethz.ch/personal/emo/ps-files/ + * SmallEnclDisks-LNCS555.ps + * + * The original Welzl's algorithm is purely recursive. To improve + * performance, we developed a modified algorithm, when Welzl's + * procedure is called for maximum 6 points at any one time. For + * big datasets, the modified algorithm is 3 to 5 times faster + * than the original one. + * + * The numerics is described in + * + * B. Gartner and S. Schonherr. Smallest enclosing ellipses - fast + * and exact. Serie B - Informatik B 97-03, Freie Universitat + * Berlin, Germany, June 1997. + * http://www.inf.fu-berlin.de/~sven/own_work/ + * smell2exact_tr-b-97-03.ps.gz + * ftp://ftp.inf.fu-berlin.de/pub/reports/tr-b-97-03.ps.gz + * + * or + * + * B. Gartner and S. Schonherr. Exact primitives for smallest + * enclosing ellipses. In Proc. 13th Annu. ACM Symp. on + * Computational Geometry, pages 430-432, 1997. [GS97b] + * http://www.inf.fu-berlin.de/~sven/own_work/ + * smell2exact_socg97.ps.gz + * + * See also + * http://geometryalgorithms.com/Archive/algorithm_0107 + * + * Revisions: PS 27/02/2003 -- improved performance by modifying the algorithm + * + * PS 04/03/2003 -- fixed code in regard to the wrong assumption + * that five support points may originate only + * imediately after test for the fifth point being + * in ellipse defined by four support points + * + * PS 24/09/2008 -- fixed deficiencies in minell_calcprm() - thanks + * to Glen Low for the bug report. + * + *****************************************************************************/ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "config.h" +#include "nan.h" +#include "minell.h" + +#define BIGNUMBER 1.0e+100 +#define SECANT_COUNT_MAX 30 +#define SECANT_EPS 5.0e-11 +#define EPS 1.0e-14 + +static int me_seed = 1; +static int me_classic = 0; +static int me_verbose = 0; + +struct minell { + /* + * support points + */ + int n; + int nprev; + point* points[5]; + + /* + * Center form representation. A point p belongs to minimal ellipse if + * + * (p - c)^T M (p - c) - 1 <= 0, + * + * M = || r t || + * || t s || + */ + point c; /* ellipsoid center */ + double r; + double t; + double s; + + /* + * Some other ellipse parameters (calculated after the ellipse is built) + */ + double theta; /* inclination */ + double a; /* semi-axis length */ + double b; /* semi-axis length */ + + /* + * two conics -- for n = 4 and n = 5 + */ + double dx12; + double dy12; + double d12; + double dx23; + double dy23; + double d23; + double dx34; + double dy34; + double d34; + double dx41; + double dy41; + double d41; + double r1; + double r2; + double s1; + double s2; + double t1; + double t2; + double u1; + double u2; + double v1; + double v2; + double w1; + double w2; + /* + * the two conics are given by: + * + * C1(x,y) = (dy12 * x - dx12 * y + d12) * (dy34 * x - dx34 * y + d34) + * C2(x,y) = (dy23 * x - dx23 * y + d23) * (dy41 * x - dx41 * y + d41) + * + * or + * + * C_i(x,y) = r_i x^2 + s_i y^2 + 2 t_i x y + 2 u_i x + 2 v_i y + w_i + */ + + /* + * some coefficients used in-ellipse tests + */ + double alpha; + double beta; + double gamma; + + /* + * n = 5: conic coefficients + */ + double lambda0; + double mu0; + + /* + * stats + */ + int minell_npoints; + int minell_calc_count; + int minell_calc3_count; + int minell_calc4_count; + int minell_calc5_count; + int minell_eval3_count; + int minell_eval4_count; + int minell_eval5_count; +}; + +/* For a minimal ellipse with 4 support points, finds whether the conic + * through these points and a given fifth point is an ellipse. + */ +static int isellipse(minell* me, point* p) +{ + double x = p->x; + double y = p->y; + + me->mu0 = -(me->dy12 * x - me->dx12 * y + me->d12) * (me->dy34 * x - me->dx34 * y + me->d34); + me->lambda0 = (me->dy23 * x - me->dx23 * y + me->d23) * (me->dy41 * x - me->dx41 * y + me->d41); + + return (me->alpha * me->lambda0 + me->beta * me->mu0) * me->lambda0 + me->gamma * me->mu0 * me->mu0 > 0.0; +} + +/* For a given point, calculates a value correlated with the distance to the + * minimal ellipse boundary. Applicable in the case if there are 4 support + * points AND the conic through these and the tested point is an ellipse only. + * The fifth point is inside the minimal ellipse if the calculated value <= 0. + */ +static double minell_calcinsideeval(minell* me) +{ + double r = me->lambda0 * me->r1 + me->mu0 * me->r2; + double s = me->lambda0 * me->s1 + me->mu0 * me->s2; + double t = me->lambda0 * me->t1 + me->mu0 * me->t2; + double u = me->lambda0 * me->u1 + me->mu0 * me->u2; + double v = me->lambda0 * me->v1 + me->mu0 * me->v2; + double w = me->lambda0 * me->w1 + me->mu0 * me->w2; + double d = r * s - t * t; + double Ds = me->r1 * me->s2 - me->r2 * me->s1; + double Dt = me->r1 * me->t2 - me->r2 * me->t1; + double Du = me->r1 * me->u2 - me->r2 * me->u1; + double Dv = me->r1 * me->v2 - me->r2 * me->v1; + double Dw = me->r1 * me->w2 - me->r2 * me->w1; + double Dd = r * Ds - 2.0 * t * Dt; + double Z = (u * s - 2.0 * v * t) * u + v * v * r; + double DZ = 2.0 * (u * Du * s + v * Dv * r - Du * v * t - u * Dv * t - u * v * Dt) + u * u * Ds; + double delta = 3.0 * Dd * Z + d * (2.0 * d * Dw - Dd * w - 2.0 * DZ); + double ballpark = fabs(3.0 * Dd * Z) + fabs(d) * (fabs(2.0 * d * Dw) + fabs(Dd * w) + fabs(2.0 * DZ)); + + return r * delta / ballpark; +} + +static int minell_containspoint(minell* me, point* p) +{ + int i; + + for (i = 0; i < me->n; ++i) + if (me->points[i]->x == p->x && me->points[i]->y == p->y) + return 1; + + if (me->n < 3) + return 0; + else if (me->n == 3) { + point* c = &me->c; + double dx = p->x - c->x; + double dy = p->y - c->y; + + me->minell_eval3_count++; + + return (me->r * dx + 2.0 * me->t * dy) * dx + me->s * dy * dy - 1.0 <= EPS; + } else if (me->n == 4) { + me->minell_eval4_count++; + + if (!isellipse(me, p)) { + double lambda = 2.0 * me->gamma - me->beta; + double mu = 2.0 * me->alpha - me->beta; + double ballpark = fabs(mu * me->lambda0) + fabs(lambda * me->mu0); + + return mu * me->lambda0 - lambda * me->mu0 <= EPS * ballpark; + } else + return minell_calcinsideeval(me) <= EPS; + } else { /* me->n == 5 */ + double x = p->x; + double y = p->y; + double C1 = (me->dy12 * x - me->dx12 * y + me->d12) * (me->dy34 * x - me->dx34 * y + me->d34) * me->lambda0; + double C2 = (me->dy23 * x - me->dx23 * y + me->d23) * (me->dy41 * x - me->dx41 * y + me->d41) * me->mu0; + double r = me->lambda0 * me->r1 + me->mu0 * me->r2; + double ballpark = (fabs(me->dy12 * x) + fabs(me->dx12 * y) + fabs(me->d12)) * (fabs(me->dy34 * x) + fabs(me->dx34 * y) + fabs(me->d34)) * fabs(me->lambda0) + (fabs(me->dy23 * x) + fabs(me->dx23 * y) + fabs(me->d23)) * (fabs(me->dy41 * x) + fabs(me->dx41 * y) + fabs(me->d41)) * fabs(me->mu0); + + me->minell_eval5_count++; + + if (r > 0.0) + return (C1 + C2) / ballpark <= EPS; + else + return (C1 + C2) / ballpark >= -EPS; + } +} + +static point** points_shuffle(int n, point* p) +{ + int* numbers = malloc(n * sizeof(int)); + point** pp = malloc(n * sizeof(point*)); + int i; + + for (i = 0; i < n; ++i) + numbers[i] = i; + + srand(me_seed); + + for (i = 0; i < n; ++i) { + int nn = (int) ((double) n * (double) rand() / ((double) RAND_MAX + 1.0)); + int tmp = numbers[i]; + + numbers[i] = numbers[nn]; + numbers[nn] = tmp; + } + + for (i = 0; i < n; ++i) + pp[i] = &p[numbers[i]]; + + free(numbers); + + return pp; +} + +static minell* minell_create(void) +{ + minell* me = malloc(sizeof(minell)); + + me->n = 0; + me->nprev = -1; + me->minell_npoints = 0; + me->minell_calc_count = 0; + me->minell_calc3_count = 0; + me->minell_calc4_count = 0; + me->minell_calc5_count = 0; + me->minell_eval3_count = 0; + me->minell_eval4_count = 0; + me->minell_eval5_count = 0; + + return me; +} + +void minell_destroy(minell* me) +{ + if (me != NULL) + free(me); +} + +/* Calculates minimal ellipse by 3 boundary points. + */ +static void minell_calc3(minell* me) +{ + point** points = me->points; + point* c = &me->c; + int i; + + me->minell_calc3_count++; + + /* + * find center + */ + c->x = 0.0; + c->y = 0.0; + c->z = NaN; + for (i = 0; i < 3; ++i) { + c->x += points[i]->x; + c->y += points[i]->y; + } + c->x /= 3.0; + c->y /= 3.0; + + { + double a = 0.0, b = 0.0, d = 0.0; + double D; + + for (i = 0; i < 3; ++i) { + point* p = points[i]; + double dx = p->x - c->x; + double dy = p->y - c->y; + + a += dx * dx; + b += dx * dy; + d += dy * dy; + } + + D = (a * d - b * b) / 1.5; + + if (D == 0.0) { + me->r = d * BIGNUMBER; + me->t = -b * BIGNUMBER; + me->s = a * BIGNUMBER; + } else { + me->r = d / D; + me->t = -b / D; + me->s = a / D; + } + } +} + +/* Calculates whether the point p is on the left side of vector [p0, p1]. + * Returns 1 if on the left side, -1 if on the right side, 0 if on the line. + */ +static int onleftside(point* p, point* p0, point* p1) +{ + double tmp = (p0->x - p->x) * (p1->y - p->y) - (p1->x - p->x) * (p0->y - p->y); + + if (tmp > 0.0) + return 1; + else if (tmp < 0.0) + return -1; + else + return 0; +} + +/* Moves points within in an array (of up to 5 points) so that they become + * aranged in counterclockwise direction. + */ +static void points_makeccw(int n, point* points[]) +{ + point* p; + int i; + + if (n < 3) + return; + + if (onleftside(points[0], points[1], points[2]) < 0) { + p = points[1]; + points[1] = points[2]; + points[2] = p; + } + + if (n == 3) + return; + + for (i = 0; i < 3; ++i) { + int i1 = (i + 1) % 3; + + if (onleftside(points[3], points[i], points[i1]) < 0) + break; + } + + if (i == 3) { + for (i = 0; i < 3; ++i) { + int i1 = (i + 1) % 3; + + if (onleftside(points[3], points[i], points[i1]) <= 0) + break; + } + } + + assert(i < 3); + + if (i == 1) { + p = points[3]; + points[3] = points[2]; + points[2] = p; + } else if (i == 0) { + p = points[3]; + points[3] = points[2]; + points[2] = points[1]; + points[1] = p; + } + + if (n == 4) + return; + + for (i = 0; i < 4; ++i) { + int i1 = (i + 1) % 4; + + if (onleftside(points[4], points[i], points[i1]) < 0) + break; + } + + if (i == 4) { + for (i = 0; i < 4; ++i) { + int i1 = (i + 1) % 4; + + if (onleftside(points[4], points[i], points[i1]) <= 0) + break; + } + } + + assert(i < 4); + + if (i == 2) { + p = points[4]; + points[4] = points[3]; + points[3] = p; + } else if (i == 1) { + p = points[4]; + points[4] = points[3]; + points[3] = points[2]; + points[2] = p; + } else if (i == 0) { + p = points[4]; + points[4] = points[3]; + points[3] = points[2]; + points[2] = points[1]; + points[1] = p; + } +} + +/* Makes some preliminary calculations for a minimal ellipse defined by 4 + * boundary points. + */ +static void minell_calc4(minell* me) +{ + point** points = me->points; + + me->minell_calc4_count++; + + /* + * make sure the 4 points are in counterclockwise order + */ + points_makeccw(me->n, me->points); + + me->dx12 = points[0]->x - points[1]->x; + me->dy12 = points[0]->y - points[1]->y; + me->d12 = points[0]->x * points[1]->y - points[1]->x * points[0]->y; + + me->dx23 = points[1]->x - points[2]->x; + me->dy23 = points[1]->y - points[2]->y; + me->d23 = points[1]->x * points[2]->y - points[2]->x * points[1]->y; + + me->dx34 = points[2]->x - points[3]->x; + me->dy34 = points[2]->y - points[3]->y; + me->d34 = points[2]->x * points[3]->y - points[3]->x * points[2]->y; + + me->dx41 = points[3]->x - points[0]->x; + me->dy41 = points[3]->y - points[0]->y; + me->d41 = points[3]->x * points[0]->y - points[0]->x * points[3]->y; + + me->r1 = me->dy12 * me->dy34; + me->s1 = me->dx12 * me->dx34; + me->t1 = -(me->dx12 * me->dy34 + me->dx34 * me->dy12) / 2.0; + me->u1 = (me->dy12 * me->d34 + me->dy34 * me->d12) / 2.0; + me->v1 = -(me->dx12 * me->d34 + me->dx34 * me->d12) / 2.0; + me->w1 = me->d12 * me->d34; + + me->r2 = me->dy23 * me->dy41; + me->s2 = me->dx23 * me->dx41; + me->t2 = -(me->dx23 * me->dy41 + me->dx41 * me->dy23) / 2.0; + me->u2 = (me->dy23 * me->d41 + me->dy41 * me->d23) / 2.0; + me->v2 = -(me->dx23 * me->d41 + me->dx41 * me->d23) / 2.0; + me->w2 = me->d23 * me->d41; + + me->alpha = me->r1 * me->s1 - me->t1 * me->t1; + me->beta = me->r1 * me->s2 + me->r2 * me->s1 - 2.0 * me->t1 * me->t2; + me->gamma = me->r2 * me->s2 - me->t2 * me->t2; +} + +static void minell_calcb(minell* me, int nb, point* pointsb[]) +{ + int i; + + me->nprev = me->n; + me->n = nb; + for (i = 0; i < nb; ++i) + me->points[i] = pointsb[i]; + + if (nb < 3) + return; + else if (nb == 3) + minell_calc3(me); + else if (nb == 4) + minell_calc4(me); + else if (me->nprev == 5) { /* nb == 5 */ + /* + * (should never happen according to B. Gartner and S. Schonherr, + * "Smallest enclosing ellipses - fast and exact", but life is not + * always like this...) + */ + me->minell_calc5_count++; + minell_calcb(me, 4, pointsb); + (void) minell_containspoint(me, pointsb[4]); + me->n = 5; + me->nprev = 4; + } +} + +/* Moves the last point to the front of the point pointer array. + */ +static void points_movelasttofront(point** points, int n) +{ + point* p = points[n - 1]; + + memmove(&points[1], points, (n - 1) * sizeof(point*)); + points[0] = p; +} + +static double distance(point* p1, point* p2) +{ + return hypot(p1->x - p2->x, p1->y - p2->y); +} + +/* For a minimal ellipse defined by 4 boundary points, finds a fifth point + * on the boundary. + * Note: may need some tuning. + */ +static void minell_findfifthpoint(minell* me) +{ + point** ps = me->points; + int factor = 5; + int offset = 0; + double x1, y1, x2, y2; + double dx21, dy21; + point p; + point p1, p2; + double f1, f2; + double xprev = NaN; + int count; + int i; + + /* + * for the quadrilateral formed by four boundary points, choose a pair of + * opposite edges that does not include the edge of minimal length to + * reduce loss of precision in the case if there is an edge of nearly zero + * length + */ + { + double mindist = DBL_MAX; + + for (i = 0; i < 4; ++i) { + int i1 = (i + 1) % 4; + double dist = distance(ps[i], ps[i1]); + + if (dist < mindist) { + mindist = dist; + offset = i1 % 2; + } + } + } + + /* + * take middle points of the chosen edges + */ + if (offset == 0) { + x1 = (ps[2]->x + ps[3]->x) / 2.0; + y1 = (ps[2]->y + ps[3]->y) / 2.0; + x2 = (ps[0]->x + ps[1]->x) / 2.0; + y2 = (ps[0]->y + ps[1]->y) / 2.0; + } else { + x1 = (ps[3]->x + ps[0]->x) / 2.0; + y1 = (ps[3]->y + ps[0]->y) / 2.0; + x2 = (ps[1]->x + ps[2]->x) / 2.0; + y2 = (ps[1]->y + ps[2]->y) / 2.0; + } + dx21 = x2 - x1; + dy21 = y2 - y1; + + /* + * on the line connecting the middle points, find a point p1 such that the + * conic through it + four boundary points is an ellipse + */ + do { + double dx, dy; + + p1.x = x2; + p1.y = y2; + + factor *= 2; + dx = dx21 / (double) factor; + dy = dy21 / (double) factor; + + for (i = 0; i < factor; ++i) { + p1.x += dx; + p1.y += dy; + if (isellipse(me, &p1)) + break; + } + } while (i == factor); + + f1 = minell_calcinsideeval(me); + f2 = f1; + + /* + * find a point p2 such that p1 and p2 are on different sides of the + * minimal ellipse boundary + */ + do { + int inside = (f1 < 0.0) ? 1 : -1; + double dx, dy; + + p2.x = p1.x; + p2.y = p1.y; + + factor *= 2; + dx = dx21 * (double) inside / (double) factor; + dy = dy21 * (double) inside / (double) factor; + + for (i = 0; i < factor; ++i) { + p2.x += dx; + p2.y += dy; + if (!isellipse(me, &p2)) + break; + f2 = minell_calcinsideeval(me); + if (f1 * f2 <= 0.0) + break; + } + } while (f1 * f2 > 0.0); + + /* + * OK, now squeeze it to death + */ + x2 = 1.0; + x1 = 0.0; + xprev = NaN; + count = 0; + while (count < SECANT_COUNT_MAX) { + double x = (f2 * x1 - f1 * x2) / (f2 - f1); + double f; + int ok; + + p.x = p2.x * x + p1.x * (1.0 - x); + p.y = p2.y * x + p1.y * (1.0 - x); + + ok = isellipse(me, &p); + assert(ok); + + f = minell_calcinsideeval(me); + + if (f == 0.0 || fabs(x - xprev) < SECANT_EPS) + break; + + if (f * f1 > 0.0) { + x1 = x2; + f1 = f2; + x2 = x; + f2 = f; + } else { + x2 = x1; + f2 = f1; + x1 = x; + f1 = f; + } + + xprev = x; + count++; + } + if (me_verbose > 1) + fprintf(stderr, "minimal ellipse: find fifth point: count = %d\n", count); +} + +static void minell_center2human(minell* me) +{ + double sum = me->r + me->s; + double diff = me->r - me->s; + double sqr = hypot(diff, 2.0 * me->t); + double a = (sum - sqr) / 2.0; + double b = (sum + sqr) / 2.0; + + me->a = sqrt(1.0 / a); + me->b = sqrt(1.0 / b); + + if (a == b) { + me->theta = 0.0; + return; + } + + me->theta = -asin(2.0 * me->t / sqr) / 2.0; + if (me->s < me->r) { /* cos(2 theta) < 0 */ + if (me->theta > 0) + me->theta = M_PI / 2.0 - me->theta; + else + me->theta = -M_PI / 2.0 - me->theta; + } +} + +/* Calculates human-form parameters of the minimal ellipse from whatever is + * available. + */ +static void minell_calcprm(minell* me) +{ + point** ps = me->points; + + me->c.z = NaN; + if (me->n == 0) { + me->c.x = NaN; + me->c.y = NaN; + me->a = NaN; + me->b = NaN; + me->theta = NaN; + } else if (me->n == 1) { + me->c.x = ps[0]->x; + me->c.y = ps[0]->y; + me->a = 0.0; + me->b = 0.0; + me->theta = 0.0; + } else if (me->n == 2) { + me->c.x = (ps[0]->x + ps[1]->x) / 2.0; + me->c.y = (ps[0]->y + ps[1]->y) / 2.0; + me->a = hypot(me->c.x - ps[0]->x, me->c.y - ps[0]->y); + me->b = 0.0; + me->theta = atan((ps[0]->y - ps[1]->y) / (ps[0]->x - ps[1]->x)); + } else if (me->n == 3) { + minell_center2human(me); + } else { + if (me->n == 4) + minell_findfifthpoint(me); + /* + * We have 4 explicit points on the boundary of the minimal ellipse. + * Because the last tested point is on the boundary, lambda0 and mu0 + * give us the coefficients for the minimal ellipse conic. + */ + { + double r = me->lambda0 * me->r1 + me->mu0 * me->r2; + double s = me->lambda0 * me->s1 + me->mu0 * me->s2; + double t = me->lambda0 * me->t1 + me->mu0 * me->t2; + double u = me->lambda0 * me->u1 + me->mu0 * me->u2; + double v = me->lambda0 * me->v1 + me->mu0 * me->v2; + double w = me->lambda0 * me->w1 + me->mu0 * me->w2; + double d = r * s - t * t; + double z; + + me->c.x = (t * v - s * u) / d; + me->c.y = (t * u - r * v) / d; + + z = (u * (u * s - 2.0 * v * t) + v * v * r) / d - w; + + me->r = r / z; + me->s = s / z; + me->t = t / z; + + assert(me->r > 0.0); + assert(me->s > 0.0); + } + minell_center2human(me); + } +} + +static void minell_info(minell* me, FILE* f) +{ + int i; + + fprintf(f, "minimal ellipse: info:\n"); + fprintf(f, " defined by %d points:\n", me->n); + for (i = 0; i < me->n; ++i) { + point* p = me->points[i]; + + fprintf(f, " point %d: (%.15g, %.15g)\n", i, p->x, p->y); + } + fprintf(f, " center = (%.15g, %.15g)\n", me->c.x, me->c.y); + fprintf(f, " semiaxis a = %.15g (inclination = %.15g deg)\n", me->a, me->theta * 180.0 / M_PI); + fprintf(f, " semiaxis b = %.15g\n", me->b); +} + +/* Recursively calculates minimal ellipse by Welzl's algorithm. + */ +static void minell_calc_welzl(minell* me, int n, point* points[], int nb, point* pointsb[]) +{ + point* p; + int count; + + me->minell_calc_count++; + count = me->minell_calc_count; + + if (me_verbose > 1) { + int i; + + fprintf(stderr, "%d: %d | %d\n", count, n, nb); + fprintf(stderr, " pointsb:\n"); + fprintf(stderr, " x = ["); + for (i = 0; i < nb; ++i) + fprintf(stderr, "%.4f ", pointsb[i]->x); + fprintf(stderr, "];\n"); + fprintf(stderr, " y = ["); + for (i = 0; i < nb; ++i) + fprintf(stderr, "%.4f ", pointsb[i]->y); + fprintf(stderr, "];\n"); + + fflush(stderr); + } + + if (n == 0 || nb == 5) { + /* + * This is the only location where the ellipse (`me') gets + * calculated. It then is passed up the stack of resursive + * procedures to check that all data points do belong to it. + */ + minell_calcb(me, nb, pointsb); + + if (me_verbose > 2) { + minell_calcprm(me); + minell_info(me, stderr); + } + + return; + } + + p = points[n - 1]; + minell_calc_welzl(me, n - 1, points, nb, pointsb); + + if (me_verbose > 1) { + int i; + + fprintf(stderr, "%d: %d | %d\n", count, n, nb); + fprintf(stderr, " me->points:\n"); + fprintf(stderr, " x = ["); + for (i = 0; i < me->n; ++i) + fprintf(stderr, "%.4f ", me->points[i]->x); + fprintf(stderr, "];\n"); + fprintf(stderr, " y = ["); + for (i = 0; i < me->n; ++i) + fprintf(stderr, "%.4f ", me->points[i]->y); + fprintf(stderr, "];\n"); + } + + if (minell_containspoint(me, p)) { + if (me_verbose > 1) { + fprintf(stderr, " p = (%.4f, %.4f) : IN\n", p->x, p->y); + fflush(stderr); + } + return; + } else { + if (me_verbose > 1) { + fprintf(stderr, " p = (%.4f, %.4f) : OUT\n", p->x, p->y); + fflush(stderr); + } + + /* + * OK, the point does not belong to the ellipse. Add it to the list + * of boundary points and recalculate the ellipse. + */ + + pointsb[nb] = p; + + minell_calc_welzl(me, n - 1, points, nb + 1, pointsb); + + /* + * This operation by Welzl greatly reduces (by 5-10 times) the number + * of recursive calls and in-ellipse tests (although it has n^2 + * flavour). + */ + if (me_classic) + points_movelasttofront(points, n); + } +} + +/* This improvement to the direct call of the Welzl's recursive algorithm + * is based on the observation that when an in-ellipse test fails, almost + * always the new ellipse's support points will include the new point and + * some of the former support points only. It therefore avoids making + * in-ellipse check for all processed points each time a new point is added to + * the boundary. Instead, it carries on until all points are verified to be + * inside the calculated ellipse. + */ +static void minell_calc(minell* me, int n, point* points[]) +{ + int nin; + int i; + + for (i = 0, nin = 0; nin < n; i = (i + 1) % n) { + point* pointstocheck[5]; + point* pointsonboundary[5]; + int j; + + if (minell_containspoint(me, points[i])) { + nin++; + continue; + } + + if (me_verbose > 1) + fprintf(stderr, "*** calc --> welzl ***\n"); + + nin = 0; + + pointsonboundary[0] = points[i]; + for (j = 0; j < me->n; ++j) + pointstocheck[j] = me->points[j]; + + minell_calc_welzl(me, me->n, pointstocheck, 1, pointsonboundary); + } +} + +minell* minell_build(int n, point p[]) +{ + point** pp = points_shuffle(n, p); + minell* me = minell_create(); + + me->minell_npoints = n; + + if (me_classic) { + point* pointsb[5]; + + minell_calc_welzl(me, n, pp, 0, pointsb); + } else + minell_calc(me, n, pp); + + free(pp); + + minell_calcprm(me); + + return me; +} + +/* For given points, applies an affine transformation that would transfer a + * given ellipse into a unit circle with center in (0,0). + */ +void minell_scalepoints(minell* me, int n, point points[]) +{ + double _cos = cos(me->theta); + double _sin = sin(me->theta); + double a = me->a; + double b = me->b; + double x0 = me->c.x; + double y0 = me->c.y; + int i; + + for (i = 0; i < n; ++i) { + point* p = &points[i]; + double x = p->x - x0; + double y = p->y - y0; + + p->x = (x * _cos - y * _sin) / a; + p->y = (x * _sin + y * _cos) / b; + } +} + +/* For given points, applies an affine transformation inverse to the previous + * one. + */ +void minell_rescalepoints(minell* me, int n, point points[]) +{ + double _cos = cos(me->theta); + double _sin = sin(me->theta); + double a = me->a; + double b = me->b; + double x0 = me->c.x; + double y0 = me->c.y; + int i; + + for (i = 0; i < n; ++i) { + point* p = &points[i]; + double x = p->x * a; + double y = p->y * b; + + p->x = (x * _cos + y * _sin) + x0; + p->y = (-x * _sin + y * _cos) + y0; + } +} + +#if defined(ME_STANDALONE) + +#include + +int userandomseed = 0; +int test = 0; + +#define NTEST 1000 + +static void minell_quit(char* format, ...) +{ + va_list args; + + fflush(stdout); + fprintf(stderr, "error: minimal ellipse: "); + va_start(args, format); + vfprintf(stderr, format, args); + va_end(args); + + exit(1); +} + +static void minell_stats(minell* me, FILE* f) +{ + fprintf(f, "minimal ellipse: stats:\n"); + fprintf(f, " built over %d points\n", me->minell_npoints); + fprintf(f, " by %sWelzl's algorithm\n", (me_classic) ? "" : "modified "); + if (me_verbose && me_seed != 1) + fprintf(f, " seed = %d\n", me_seed); + fprintf(f, " %d calls to Welzl's procedure\n", me->minell_calc_count); + fprintf(f, " computed by 3 points: %d times\n", me->minell_calc3_count); + fprintf(f, " computed by 4 points: %d times\n", me->minell_calc4_count); + fprintf(f, " computed by 5 points: %d times\n", me->minell_calc5_count); + fprintf(f, " in-ellipse test by 3 points: %d times\n", me->minell_eval3_count); + fprintf(f, " in-ellipse test by 4 points: %d times\n", me->minell_eval4_count); + fprintf(f, " in-ellipse test by 5 points: %d times\n", me->minell_eval5_count); +} + +static void usage() +{ + printf("Usage: minell [-c] [-r|-s ] [-t] [-v|-V]\n"); + printf(" -- data file with X and Y coords in the first two columns\n"); + printf(" (use \"stdin\" or \"-\" for standard input)\n"); + printf("Options:\n"); + printf(" -c -- use classic algorithm by Welzl\n"); + printf(" -r -- use random seed at shuffling the input points\n"); + printf(" -s -- use this seed at shuffling the input points\n"); + printf(" -t -- produce stats by running 1000 times with seed changing from\n"); + printf(" 1 (unless explicitely specified) to 1000\n"); + printf(" -v -- verbose\n"); + printf(" -V -- very verbose\n"); + printf(" -VV -- even more verbose\n"); + printf("Description: `minell' calculates and prints parameters of the ellipse of\n"); + printf(" minimal area containing specified points.\n"); + + exit(0); +} + +static void parse_commandline(int argc, char* argv[], char** fname) +{ + int i; + + *fname = NULL; + + i = 1; + while (i < argc) { + if (argv[i][0] != '-') { + if (*fname == NULL) { + *fname = argv[i]; + i++; + } else + usage(); + } else { + switch (argv[i][1]) { + case 0: + if (*fname == NULL) { + *fname = argv[i]; + i++; + } else + usage(); + break; + case 'c': + me_classic = 1; + i++; + break; + case 'r': + userandomseed = 1; + i++; + break; + case 's': + i++; + if (i >= argc) + minell_quit("could not read random seed after \"-s\"\n"); + me_seed = atoi(argv[i]); + userandomseed = 0; + i++; + break; + case 't': + test = 1; + i++; + break; + case 'v': + me_verbose = 1; + i++; + break; + case 'V': + if (argv[i][2] == 'V') + me_verbose = 3; + else + me_verbose = 2; + i++; + break; + default: + usage(); + break; + } + } + } +} + +static int str2double(char* token, double* value) +{ + char* end = NULL; + + if (token == NULL) { + *value = NaN; + return 0; + } + + *value = strtod(token, &end); + + if (end == token) { + *value = NaN; + return 0; + } + + return 1; +} + +#define NALLOCATED_START 1024 +#define BUFSIZE 10240 + +/* Reads array of points from a columnar file. + * + * @param fname File name (can be "stdin" or "-" for standard input) + * @param dim Number of dimensions (must be 2 or 3) + * @param n Pointer to number of points (output) + * @param points Pointer to array of points [*n] (output) (to be freed) + */ +static void points_read(char* fname, int dim, int* n, point** points) +{ + FILE* f = NULL; + int nallocated = NALLOCATED_START; + char buf[BUFSIZE]; + char seps[] = " ,;\t"; + char* token; + + if (dim < 2 || dim > 3) { + *n = 0; + *points = NULL; + return; + } + + if (fname == NULL) + f = stdin; + else { + if (strcmp(fname, "stdin") == 0 || strcmp(fname, "-") == 0) + f = stdin; + else { + f = fopen(fname, "r"); + if (f == NULL) + minell_quit("%s: %s\n", fname, strerror(errno)); + } + } + + *points = malloc(nallocated * sizeof(point)); + *n = 0; + while (fgets(buf, BUFSIZE, f) != NULL) { + point* p; + + if (*n == nallocated) { + nallocated *= 2; + *points = realloc(*points, nallocated * sizeof(point)); + } + + p = &(*points)[*n]; + + if (buf[0] == '#') + continue; + if ((token = strtok(buf, seps)) == NULL) + continue; + if (!str2double(token, &p->x)) + continue; + if ((token = strtok(NULL, seps)) == NULL) + continue; + if (!str2double(token, &p->y)) + continue; + if (dim == 2) + p->z = NaN; + else { + if ((token = strtok(NULL, seps)) == NULL) + continue; + if (!str2double(token, &p->z)) + continue; + } + (*n)++; + } + + if (*n == 0) { + free(*points); + *points = NULL; + } else + *points = realloc(*points, *n * sizeof(point)); + + if (f != stdin) + if (fclose(f) != 0) + minell_quit("%s: %s\n", fname, strerror(errno)); +} + +int main(int argc, char* argv[]) +{ + char* fname = NULL; + int npoints = 0; + point* points = NULL; + minell* me = NULL; + struct timeval tv0, tv1; + struct timezone tz; + + parse_commandline(argc, argv, &fname); + + if (fname == NULL) { + fprintf(stderr, "error: minimal ellipse: no input data\n"); + usage(); + } + + points_read(fname, 2, &npoints, &points); + + gettimeofday(&tv0, &tz); + + if (userandomseed) + me_seed = tv0.tv_usec % INT_MAX; + + if (!test) { + me = minell_build(npoints, points); + + gettimeofday(&tv1, &tz); + + minell_info(me, stdout); + if (me_verbose) { + long dt = 1000000 * (tv1.tv_sec - tv0.tv_sec) + tv1.tv_usec - tv0.tv_usec; + + minell_stats(me, stdout); + fprintf(stdout, "minimal ellipse: elapsed time = %ld us\n", dt); + } + + minell_destroy(me); + } else { + int minell_calc_count = 0; + int minell_calc3_count = 0; + int minell_calc4_count = 0; + int minell_calc5_count = 0; + int minell_eval3_count = 0; + int minell_eval4_count = 0; + int minell_eval5_count = 0; + long dt; + int i; + + for (i = 0; i < NTEST; ++i, ++me_seed) { + me = minell_build(npoints, points); + + minell_calc_count += me->minell_calc_count; + minell_calc3_count += me->minell_calc3_count; + minell_calc4_count += me->minell_calc4_count; + minell_calc5_count += me->minell_calc5_count; + minell_eval3_count += me->minell_eval3_count; + minell_eval4_count += me->minell_eval4_count; + minell_eval5_count += me->minell_eval5_count; + + minell_destroy(me); + } + + gettimeofday(&tv1, &tz); + dt = 1000000 * (tv1.tv_sec - tv0.tv_sec) + tv1.tv_usec - tv0.tv_usec; + fprintf(stdout, "minimal ellipse:\n"); + fprintf(stdout, " average build time = %ld us\n", dt / NTEST); + fprintf(stdout, " average number of calls to Welzl's procedure = %d\n", minell_calc_count / NTEST); + fprintf(stdout, " average number of ellipses built by 3 support points = %d\n", minell_calc3_count / NTEST); + fprintf(stdout, " average number of ellipses built by 4 support points = %d\n", minell_calc4_count / NTEST); + fprintf(stdout, " average number of in-ellipse test by 3 support points = %d\n", minell_eval3_count / NTEST); + fprintf(stdout, " average number of in-ellipse test by 4 support points = %d\n", minell_eval4_count / NTEST); + fprintf(stdout, " average number of in-ellipse test by 5 support points = %d\n", minell_eval5_count / NTEST); + } + + if (points != NULL) + free(points); + + return 0; +} + +#endif /* ME_UTIL */ diff --git a/autoarray/util/nn/src/nn/minell.h b/autoarray/util/nn/src/nn/minell.h index bb82ac44b..6e41a2d5b 100644 --- a/autoarray/util/nn/src/nn/minell.h +++ b/autoarray/util/nn/src/nn/minell.h @@ -1,40 +1,40 @@ -/****************************************************************************** - * - * File: minell.h - * - * Created: 24/02/2003 - * - * Author: Pavel Sakov - * CSIRO Marine Research - * - * Purpose: A header for the minimal ellipse stuff - * - * Revisions: None - * - *****************************************************************************/ - -#if !defined(_MINELL_H) -#define _MINELL_H - -#if !defined(_STRUCT_POINT) -#define _STRUCT_POINT -typedef struct { - double x; - double y; - double z; -} point; -#endif - -#if !defined(_MINELL_STRUCT) -#define _MINELL_STRUCT -struct minell; -typedef struct minell minell; -#endif - -/* Note that minell_build() shuffles the input point array */ -minell* minell_build(int n, point p[]); -void minell_destroy(minell* me); -void minell_scalepoints(minell* me, int n, point p[]); -void minell_rescalepoints(minell* me, int n, point p[]); - -#endif +/****************************************************************************** + * + * File: minell.h + * + * Created: 24/02/2003 + * + * Author: Pavel Sakov + * CSIRO Marine Research + * + * Purpose: A header for the minimal ellipse stuff + * + * Revisions: None + * + *****************************************************************************/ + +#if !defined(_MINELL_H) +#define _MINELL_H + +#if !defined(_STRUCT_POINT) +#define _STRUCT_POINT +typedef struct { + double x; + double y; + double z; +} point; +#endif + +#if !defined(_MINELL_STRUCT) +#define _MINELL_STRUCT +struct minell; +typedef struct minell minell; +#endif + +/* Note that minell_build() shuffles the input point array */ +minell* minell_build(int n, point p[]); +void minell_destroy(minell* me); +void minell_scalepoints(minell* me, int n, point p[]); +void minell_rescalepoints(minell* me, int n, point p[]); + +#endif diff --git a/autoarray/util/nn/src/nn/mkinstalldirs b/autoarray/util/nn/src/nn/mkinstalldirs index f945dbf2b..561cb0238 100644 --- a/autoarray/util/nn/src/nn/mkinstalldirs +++ b/autoarray/util/nn/src/nn/mkinstalldirs @@ -1,38 +1,38 @@ -#! /bin/sh -# mkinstalldirs --- make directory hierarchy -# Author: Noah Friedman -# Created: 1993-05-16 -# Public domain - -errstatus=0 - -for file -do - set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` - shift - - pathcomp= - for d - do - pathcomp="$pathcomp$d" - case "$pathcomp" in - -* ) pathcomp=./$pathcomp ;; - esac - - if test ! -d "$pathcomp"; then - echo "mkdir $pathcomp" 1>&2 - - mkdir "$pathcomp" || lasterr=$? - - if test ! -d "$pathcomp"; then - errstatus=$lasterr - fi - fi - - pathcomp="$pathcomp/" - done -done - -exit $errstatus - -# mkinstalldirs ends here +#! /bin/sh +# mkinstalldirs --- make directory hierarchy +# Author: Noah Friedman +# Created: 1993-05-16 +# Public domain + +errstatus=0 + +for file +do + set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` + shift + + pathcomp= + for d + do + pathcomp="$pathcomp$d" + case "$pathcomp" in + -* ) pathcomp=./$pathcomp ;; + esac + + if test ! -d "$pathcomp"; then + echo "mkdir $pathcomp" 1>&2 + + mkdir "$pathcomp" || lasterr=$? + + if test ! -d "$pathcomp"; then + errstatus=$lasterr + fi + fi + + pathcomp="$pathcomp/" + done +done + +exit $errstatus + +# mkinstalldirs ends here diff --git a/autoarray/util/nn/src/nn/nan.h b/autoarray/util/nn/src/nn/nan.h index 11d1022a0..7249cca2e 100644 --- a/autoarray/util/nn/src/nn/nan.h +++ b/autoarray/util/nn/src/nn/nan.h @@ -1,41 +1,41 @@ -/****************************************************************************** - * - * File: nan.h - * - * Created: 18/10/2001 - * - * Author: Pavel Sakov - * CSIRO Marine Research - * - * Purpose: NaN definition - * - * Description: Should cover machines with 64 bit doubles or other machines - * with GCC - * - * Revisions: None - * - *****************************************************************************/ - -#if !defined(_NAN_H) -#define _NAN_H - -#include - -#if defined(NAN) -#define NaN NAN - -#elif defined(__GNUC__) && !defined(__INTEL_COMPILER) -static const double NaN = 0.0 / 0.0; - -#elif defined(_WIN32) -static unsigned _int64 lNaN = ((unsigned _int64) 1 << 63) - 1; - -#define NaN (*(double*)&lNaN) - -#else -static const long long lNaN = ((unsigned long long) 1 << 63) - 1; - -#define NaN (*(double*)&lNaN) -#endif - -#endif +/****************************************************************************** + * + * File: nan.h + * + * Created: 18/10/2001 + * + * Author: Pavel Sakov + * CSIRO Marine Research + * + * Purpose: NaN definition + * + * Description: Should cover machines with 64 bit doubles or other machines + * with GCC + * + * Revisions: None + * + *****************************************************************************/ + +#if !defined(_NAN_H) +#define _NAN_H + +#include + +#if defined(NAN) +#define NaN NAN + +#elif defined(__GNUC__) && !defined(__INTEL_COMPILER) +static const double NaN = 0.0 / 0.0; + +#elif defined(_WIN32) +static unsigned _int64 lNaN = ((unsigned _int64) 1 << 63) - 1; + +#define NaN (*(double*)&lNaN) + +#else +static const long long lNaN = ((unsigned long long) 1 << 63) - 1; + +#define NaN (*(double*)&lNaN) +#endif + +#endif diff --git a/autoarray/util/nn/src/nn/nn.h b/autoarray/util/nn/src/nn/nn.h index 1dc72ab3c..5d887093d 100644 --- a/autoarray/util/nn/src/nn/nn.h +++ b/autoarray/util/nn/src/nn/nn.h @@ -1,337 +1,337 @@ -/****************************************************************************** - * - * File: nn.h - * - * Created: 04/08/2000 - * - * Author: Pavel Sakov - * CSIRO Marine Research - * - * Purpose: Header file for nn library - * - * Description: None - * - * Revisions: None - * - *****************************************************************************/ - -#if !defined(_NN_H) -#define _NN_H - -//int test_add(int a, int b); -/* Contains version string for the nn package. - */ -extern char* nn_version; - -/* Sets the verbosity level within nn package. - * 0 (default) - silent - * 1 - verbose - * 2 - very verbose - */ -extern int nn_verbose; - -/* Switches between different formulations for NN weights. - * SIBSON -- classic formulation by Sibson - * NON_SIBSONIAN -- alternative formulation by Belikov & Semenov - * - */ -typedef enum { SIBSON, NON_SIBSONIAN } NN_RULE; -extern NN_RULE nn_rule; - -/* Limits verbose information to a particular vertex (used mainly for - * debugging purposes). - */ -extern int nn_test_vertice; - -/* "point" is a basic data structure in this package. - */ -#if !defined(_STRUCT_POINT) -#define _STRUCT_POINT -typedef struct { - double x; - double y; - double z; -} point; -#endif - -#if !defined(_STRUCT_DELAUNAY) -#define _STRUCT_DELAUNAY -struct delaunay; -typedef struct delaunay delaunay; -#endif - -/** Smoothes the input point array by averaging the input x,y and z values - ** for each cell within virtual rectangular nx by ny grid. The corners of the - ** grid are created from min and max values of the input array. It also frees - ** the original array and returns results and new dimension via original - ** data and size pointers. - * - * @param n Pointer to number of points (input/output) - * @param p Pointer to array of points (input/output) [*n] - * @param nx Number of x nodes in decimation - * @param ny Number of y nodes in decimation - */ -void points_thingrid(int* n, point** p, int nx, int ny); - -/** Smoothes the input point array by averaging the input data (X,Y and Z - ** values) until the sum of the distances between points does not exceed the - ** specified maximum value. It also frees the original array and returns - ** results and new dimension via original data and size pointers. - * - * @param n Pointer to number of points (input/output) - * @param p Pointer to array of points (input/output) [*n] - * @param rmax Maximum allowed accumulated distance - */ -void points_thinlin(int* n, point** p, double rmax); - -/* Calculates X and/or Y ranges of the input array of points. If necessary, - * adjusts the range according to the zoom value. - * - * @param n Number of points - * @param points Array of points - * @param xmin Min X value if *xmin = NaN on input, not changed otherwise - * @param xmax Max X value if *xmax = NaN on input, not changed otherwise - * @param ymin Min Y value if *ymin = NaN on input, not changed otherwise - * @param ymax Max Y value if *ymax = NaN on input, not changed otherwise - */ -void points_getrange(int n, point points[], double zoom, double* xmin, double* xmax, double* ymin, double* ymax); - -/** Generates rectangular grid nx by ny using specified min and max x and y - ** values. Allocates space for the output point array, be sure to free it - ** when necessary! - * - * @param xmin Min x value - * @param xmax Max x value - * @param ymin Min y value - * @param ymax Max y value - * @param nx Number of x nodes - * @param ny Number of y nodes - * @param zoom Zoom coefficient - * @param nout Pointer to number of output points - * @param pout Pointer to array of output points [*nout] - */ -void points_generate(double xmin, double xmax, double ymin, double ymax, int nx, int ny, int* nout, point** pout); - -/** Reads array of points from a columnar file. - * - * @param fname File name (can be "stdin" dor stndard input) - * @param dim Number of dimensions (must be 2 or 3) - * @param n Pointer to number of points (output) - * @param points Pointer to array of points [*n] (output) - */ -void points_read(char* fname, int dim, int* n, point** points); - -/** Scales Y coordinate so that the resulting set fits into square: - ** xmax - xmin = ymax - ymin - * - * @param n Number of points - * @param points The points to scale - * @return Y axis compression coefficient - */ -double points_scaletosquare(int n, point* points); - -/** Compresses Y domain by a given multiple. - * - * @param n Number of points - * @param points The points to scale - * @param Y axis compression coefficient as returned by points_scaletosquare() - */ -void points_scale(int n, point* points, double k); - -/** `lpi' -- "Linear Point Interpolator" is a structure for linear - ** interpolation of data on a "point-to-point" basis. - * - * `lpi' interpolates linearly within each triangle resulted from the Delaunay - * triangluation of the input data. `lpi' is much faster than all Natural - * Neighbours interpolators below. - */ -struct lpi; -typedef struct lpi lpi; - -/** Builds linear interpolator. - * - * @param d Delaunay triangulation - * @return Linear interpolator - */ -lpi* lpi_build(delaunay* d); - -/** Destroys linear interpolator. - * - * @param l Structure to be destroyed - */ -void lpi_destroy(lpi* l); - -/** Finds linearly interpolated value in a point. - * - * @param l Linear point interpolator - * @param p Point to be interpolated (p->x, p->y -- input; p->z -- output) - */ -void lpi_interpolate_point(lpi* l, point* p); - -/** Linearly interpolates data in an array of points. - * - * @param nin Number of input points - * @param pin Array of input points [pin] - * @param nout Number of ouput points - * @param pout Array of output points [nout] - */ -void lpi_interpolate_points(delaunay* d, int nout, point pout[]); - -/** `nnpi' -- "Natural Neighbours Point Interpolator" is a structure for - ** Natural Neighbours interpolation of data on a "point-to-point" basis. - * - * Because it involves weight calculation for each output point, it is not - * designed to take advantage of consequitive interpolations on the same - * sets of input and output points -- use `nnhpi' or `nnai' in these cases. - */ -struct nnpi; -typedef struct nnpi nnpi; - -/** Creates Natural Neighbours point interpolator. - * - * @param d Delaunay triangulation - * @return Natural Neighbours interpolation - */ -nnpi* nnpi_create(delaunay* d); - -/** Destroys Natural Neighbours point interpolation. - * - * @param nn Structure to be destroyed - */ -void nnpi_destroy(nnpi* nn); - -/** Performs Natural Neighbours interpolation in a point. - * - * @param nn NN point interpolator - * @param p Point to be interpolated (p->x, p->y -- input; p->z -- output) - */ -void nnpi_interpolate_point(nnpi* nn, point* p); - -/** Performs Natural Neighbours interpolation in an array of points. - * - * @param nin Number of input points - * @param pin Array of input points [pin] - * @param wmin Minimal allowed weight - * @param nout Number of output points - * @param pout Array of output points [nout] - */ -void nnpi_interpolate_points(delaunay* d, double wmin, int nout, point pout[]); - -/** Sets minimal allowed weight for Natural Neighbours interpolation. - * - * For Sibson interpolation, setting wmin = 0 is equivalent to interpolating - * inside convex hall of the data only (returning NaNs otherwise). - * - * @param nn Natural Neighbours point interpolator - * @param wmin Minimal allowed weight - */ -void nnpi_setwmin(nnpi* nn, double wmin); - -/** `nnhpi' -- "Natural Neighbours Hashing Point Interpolator" -- is a - ** structure for conducting consequitive Natural Neighbours interpolations - ** from the same set of observation points, designed to take advantage of - ** repeated interpolations in the same point. It allows to modify Z - ** coordinate of observed data between interpolations (because this does not - ** affect the interpolant weights). - */ -struct nnhpi; -typedef struct nnhpi nnhpi; - -/** Creates Natural Neighbours hashing point interpolator. - * - * @param d Delaunay triangulation - * @param size Hash table size (should be of order of number of output points) - * @return Natural Neighbours interpolation - */ -nnhpi* nnhpi_create(delaunay* d, int size); - -/** Destroys Natural Neighbours hashing point interpolation. - * - * @param nn Structure to be destroyed - */ -void nnhpi_destroy(nnhpi* nn); - -/** Performs Natural Neighbours interpolation in a point. - * - * @param nnhpi NN hashing point interpolator - * @param p Point to be interpolated (p->x, p->y -- input; p->z -- output) - */ -void nnhpi_interpolate(nnhpi* nn, point* p); - -void nnhpi_interpolate_get_weights(nnhpi* nn, point* p, double* weights_out, int* neighbor_index, int max_nneighbor, int point_index); - -int nnhpi_interpolate_output_marker(nnhpi* nn, point* p); - - - -/** Modifies interpolated data. - * - * Finds point* pd in the underlying Delaunay triangulation such that - * pd->x = p->x and pd->y = p->y, and copies p->z to pd->z. Exits with error - * if the point is not found. - * - * @param nn Natural Neighbours hashing point interpolator - * @param p New data - */ -void nnhpi_modify_data(nnhpi* nn, point* p); - -/** Sets minimal allowed weight for Natural Neighbours interpolation. - * - * For Sibson interpolation, setting wmin = 0 is equivalent to interpolating - * inside convex hall of the data only (returning NaNs otherwise). - * - * @param nn Natural Neighbours point hashing interpolator - * @param wmin Minimal allowed weight - */ -void nnhpi_setwmin(nnhpi* nn, double wmin); - -/** `nnai' -- "Natural Neighbours Array Interpolator" is a structure for - ** conducting consequitive Natural Neighbours interpolations from the same - ** set of observation points in the same set of points. It allows to modify Z - ** coordinate of data between interpolations (because this does not - ** affect the interpolant weights). - * - * `nnai' is the fastest of the three Natural Neighbours interpolators in `nn' - * library. - */ -struct nnai; -typedef struct nnai nnai; - -/** Builds Natural Neighbours array interpolator. - * - * This includes calculation of weights used in nnai_interpolate(). - * - * @param d Delaunay triangulation - * @return Natural Neighbours interpolation - */ -nnai* nnai_build(delaunay* d, int n, double* x, double* y); - -/** Destroys Natural Neighbours array interpolator. - * - * @param nn Structure to be destroyed - */ -void nnai_destroy(nnai* nn); - -/** Conducts NN interpolation in a fixed array of output points using - ** data specified in a fixed array of input points. Uses pre-calculated - ** weights. - * - * @param nn NN array interpolator - * @param zin input data [nn->d->npoints] - * @param zout output data [nn->n]. Must be pre-allocated! - */ -void nnai_interpolate(nnai* nn, double* zin, double* zout); - -/** Sets minimal allowed weight for Natural Neighbours interpolation. - * - * For Sibson interpolation, setting wmin = 0 is equivalent to interpolating - * inside convex hall of the input data only (returning NaNs otherwise). - * - * @param nn Natural Neighbours array interpolator - * @param wmin Minimal allowed weight - */ -void nnai_setwmin(nnai* nn, double wmin); - - -#endif /* _NN_H */ - +/****************************************************************************** + * + * File: nn.h + * + * Created: 04/08/2000 + * + * Author: Pavel Sakov + * CSIRO Marine Research + * + * Purpose: Header file for nn library + * + * Description: None + * + * Revisions: None + * + *****************************************************************************/ + +#if !defined(_NN_H) +#define _NN_H + +//int test_add(int a, int b); +/* Contains version string for the nn package. + */ +extern char* nn_version; + +/* Sets the verbosity level within nn package. + * 0 (default) - silent + * 1 - verbose + * 2 - very verbose + */ +extern int nn_verbose; + +/* Switches between different formulations for NN weights. + * SIBSON -- classic formulation by Sibson + * NON_SIBSONIAN -- alternative formulation by Belikov & Semenov + * + */ +typedef enum { SIBSON, NON_SIBSONIAN } NN_RULE; +extern NN_RULE nn_rule; + +/* Limits verbose information to a particular vertex (used mainly for + * debugging purposes). + */ +extern int nn_test_vertice; + +/* "point" is a basic data structure in this package. + */ +#if !defined(_STRUCT_POINT) +#define _STRUCT_POINT +typedef struct { + double x; + double y; + double z; +} point; +#endif + +#if !defined(_STRUCT_DELAUNAY) +#define _STRUCT_DELAUNAY +struct delaunay; +typedef struct delaunay delaunay; +#endif + +/** Smoothes the input point array by averaging the input x,y and z values + ** for each cell within virtual rectangular nx by ny grid. The corners of the + ** grid are created from min and max values of the input array. It also frees + ** the original array and returns results and new dimension via original + ** data and size pointers. + * + * @param n Pointer to number of points (input/output) + * @param p Pointer to array of points (input/output) [*n] + * @param nx Number of x nodes in decimation + * @param ny Number of y nodes in decimation + */ +void points_thingrid(int* n, point** p, int nx, int ny); + +/** Smoothes the input point array by averaging the input data (X,Y and Z + ** values) until the sum of the distances between points does not exceed the + ** specified maximum value. It also frees the original array and returns + ** results and new dimension via original data and size pointers. + * + * @param n Pointer to number of points (input/output) + * @param p Pointer to array of points (input/output) [*n] + * @param rmax Maximum allowed accumulated distance + */ +void points_thinlin(int* n, point** p, double rmax); + +/* Calculates X and/or Y ranges of the input array of points. If necessary, + * adjusts the range according to the zoom value. + * + * @param n Number of points + * @param points Array of points + * @param xmin Min X value if *xmin = NaN on input, not changed otherwise + * @param xmax Max X value if *xmax = NaN on input, not changed otherwise + * @param ymin Min Y value if *ymin = NaN on input, not changed otherwise + * @param ymax Max Y value if *ymax = NaN on input, not changed otherwise + */ +void points_getrange(int n, point points[], double zoom, double* xmin, double* xmax, double* ymin, double* ymax); + +/** Generates rectangular grid nx by ny using specified min and max x and y + ** values. Allocates space for the output point array, be sure to free it + ** when necessary! + * + * @param xmin Min x value + * @param xmax Max x value + * @param ymin Min y value + * @param ymax Max y value + * @param nx Number of x nodes + * @param ny Number of y nodes + * @param zoom Zoom coefficient + * @param nout Pointer to number of output points + * @param pout Pointer to array of output points [*nout] + */ +void points_generate(double xmin, double xmax, double ymin, double ymax, int nx, int ny, int* nout, point** pout); + +/** Reads array of points from a columnar file. + * + * @param fname File name (can be "stdin" dor stndard input) + * @param dim Number of dimensions (must be 2 or 3) + * @param n Pointer to number of points (output) + * @param points Pointer to array of points [*n] (output) + */ +void points_read(char* fname, int dim, int* n, point** points); + +/** Scales Y coordinate so that the resulting set fits into square: + ** xmax - xmin = ymax - ymin + * + * @param n Number of points + * @param points The points to scale + * @return Y axis compression coefficient + */ +double points_scaletosquare(int n, point* points); + +/** Compresses Y domain by a given multiple. + * + * @param n Number of points + * @param points The points to scale + * @param Y axis compression coefficient as returned by points_scaletosquare() + */ +void points_scale(int n, point* points, double k); + +/** `lpi' -- "Linear Point Interpolator" is a structure for linear + ** interpolation of data on a "point-to-point" basis. + * + * `lpi' interpolates linearly within each triangle resulted from the Delaunay + * triangluation of the input data. `lpi' is much faster than all Natural + * Neighbours interpolators below. + */ +struct lpi; +typedef struct lpi lpi; + +/** Builds linear interpolator. + * + * @param d Delaunay triangulation + * @return Linear interpolator + */ +lpi* lpi_build(delaunay* d); + +/** Destroys linear interpolator. + * + * @param l Structure to be destroyed + */ +void lpi_destroy(lpi* l); + +/** Finds linearly interpolated value in a point. + * + * @param l Linear point interpolator + * @param p Point to be interpolated (p->x, p->y -- input; p->z -- output) + */ +void lpi_interpolate_point(lpi* l, point* p); + +/** Linearly interpolates data in an array of points. + * + * @param nin Number of input points + * @param pin Array of input points [pin] + * @param nout Number of ouput points + * @param pout Array of output points [nout] + */ +void lpi_interpolate_points(delaunay* d, int nout, point pout[]); + +/** `nnpi' -- "Natural Neighbours Point Interpolator" is a structure for + ** Natural Neighbours interpolation of data on a "point-to-point" basis. + * + * Because it involves weight calculation for each output point, it is not + * designed to take advantage of consequitive interpolations on the same + * sets of input and output points -- use `nnhpi' or `nnai' in these cases. + */ +struct nnpi; +typedef struct nnpi nnpi; + +/** Creates Natural Neighbours point interpolator. + * + * @param d Delaunay triangulation + * @return Natural Neighbours interpolation + */ +nnpi* nnpi_create(delaunay* d); + +/** Destroys Natural Neighbours point interpolation. + * + * @param nn Structure to be destroyed + */ +void nnpi_destroy(nnpi* nn); + +/** Performs Natural Neighbours interpolation in a point. + * + * @param nn NN point interpolator + * @param p Point to be interpolated (p->x, p->y -- input; p->z -- output) + */ +void nnpi_interpolate_point(nnpi* nn, point* p); + +/** Performs Natural Neighbours interpolation in an array of points. + * + * @param nin Number of input points + * @param pin Array of input points [pin] + * @param wmin Minimal allowed weight + * @param nout Number of output points + * @param pout Array of output points [nout] + */ +void nnpi_interpolate_points(delaunay* d, double wmin, int nout, point pout[]); + +/** Sets minimal allowed weight for Natural Neighbours interpolation. + * + * For Sibson interpolation, setting wmin = 0 is equivalent to interpolating + * inside convex hall of the data only (returning NaNs otherwise). + * + * @param nn Natural Neighbours point interpolator + * @param wmin Minimal allowed weight + */ +void nnpi_setwmin(nnpi* nn, double wmin); + +/** `nnhpi' -- "Natural Neighbours Hashing Point Interpolator" -- is a + ** structure for conducting consequitive Natural Neighbours interpolations + ** from the same set of observation points, designed to take advantage of + ** repeated interpolations in the same point. It allows to modify Z + ** coordinate of observed data between interpolations (because this does not + ** affect the interpolant weights). + */ +struct nnhpi; +typedef struct nnhpi nnhpi; + +/** Creates Natural Neighbours hashing point interpolator. + * + * @param d Delaunay triangulation + * @param size Hash table size (should be of order of number of output points) + * @return Natural Neighbours interpolation + */ +nnhpi* nnhpi_create(delaunay* d, int size); + +/** Destroys Natural Neighbours hashing point interpolation. + * + * @param nn Structure to be destroyed + */ +void nnhpi_destroy(nnhpi* nn); + +/** Performs Natural Neighbours interpolation in a point. + * + * @param nnhpi NN hashing point interpolator + * @param p Point to be interpolated (p->x, p->y -- input; p->z -- output) + */ +void nnhpi_interpolate(nnhpi* nn, point* p); + +void nnhpi_interpolate_get_weights(nnhpi* nn, point* p, double* weights_out, int* neighbor_index, int max_nneighbor, int point_index); + +int nnhpi_interpolate_output_marker(nnhpi* nn, point* p); + + + +/** Modifies interpolated data. + * + * Finds point* pd in the underlying Delaunay triangulation such that + * pd->x = p->x and pd->y = p->y, and copies p->z to pd->z. Exits with error + * if the point is not found. + * + * @param nn Natural Neighbours hashing point interpolator + * @param p New data + */ +void nnhpi_modify_data(nnhpi* nn, point* p); + +/** Sets minimal allowed weight for Natural Neighbours interpolation. + * + * For Sibson interpolation, setting wmin = 0 is equivalent to interpolating + * inside convex hall of the data only (returning NaNs otherwise). + * + * @param nn Natural Neighbours point hashing interpolator + * @param wmin Minimal allowed weight + */ +void nnhpi_setwmin(nnhpi* nn, double wmin); + +/** `nnai' -- "Natural Neighbours Array Interpolator" is a structure for + ** conducting consequitive Natural Neighbours interpolations from the same + ** set of observation points in the same set of points. It allows to modify Z + ** coordinate of data between interpolations (because this does not + ** affect the interpolant weights). + * + * `nnai' is the fastest of the three Natural Neighbours interpolators in `nn' + * library. + */ +struct nnai; +typedef struct nnai nnai; + +/** Builds Natural Neighbours array interpolator. + * + * This includes calculation of weights used in nnai_interpolate(). + * + * @param d Delaunay triangulation + * @return Natural Neighbours interpolation + */ +nnai* nnai_build(delaunay* d, int n, double* x, double* y); + +/** Destroys Natural Neighbours array interpolator. + * + * @param nn Structure to be destroyed + */ +void nnai_destroy(nnai* nn); + +/** Conducts NN interpolation in a fixed array of output points using + ** data specified in a fixed array of input points. Uses pre-calculated + ** weights. + * + * @param nn NN array interpolator + * @param zin input data [nn->d->npoints] + * @param zout output data [nn->n]. Must be pre-allocated! + */ +void nnai_interpolate(nnai* nn, double* zin, double* zout); + +/** Sets minimal allowed weight for Natural Neighbours interpolation. + * + * For Sibson interpolation, setting wmin = 0 is equivalent to interpolating + * inside convex hall of the input data only (returning NaNs otherwise). + * + * @param nn Natural Neighbours array interpolator + * @param wmin Minimal allowed weight + */ +void nnai_setwmin(nnai* nn, double wmin); + + +#endif /* _NN_H */ + diff --git a/autoarray/util/nn/src/nn/nn_internal.h b/autoarray/util/nn/src/nn/nn_internal.h index 3eb91fb87..8d357d47a 100644 --- a/autoarray/util/nn/src/nn/nn_internal.h +++ b/autoarray/util/nn/src/nn/nn_internal.h @@ -1,38 +1,38 @@ -/****************************************************************************** - * - * File: nn_internal.h - * - * Created: 11/03/2005 - * - * Author: Pavel Sakov - * CSIRO Marine Research - * - * Purpose: Header for internal stuff in the nn library - * - * Description: None - * - * Revisions: None - * - *****************************************************************************/ - -#if !defined(_NN_INTERNAL_H) -#define _NN_INTERNAL_H - -/* - * nnpi.c - */ -void nnpi_calculate_weights(nnpi* nn, point* p); -int nnpi_get_nvertices(nnpi* nn); -int* nnpi_get_vertices(nnpi* nn); -double* nnpi_get_weights(nnpi* nn); - -/* - * nncommon.c, nncommon-vulnerable.c - */ -int circle_build1(circle* c, point* p0, point* p1, point* p2); -int circle_build2(circle* c, point* p0, point* p1, point* p2); -int circle_contains(circle* c, point* p); -void nn_quit(char* format, ...); -int str2double(char* token, double* value); - -#endif +/****************************************************************************** + * + * File: nn_internal.h + * + * Created: 11/03/2005 + * + * Author: Pavel Sakov + * CSIRO Marine Research + * + * Purpose: Header for internal stuff in the nn library + * + * Description: None + * + * Revisions: None + * + *****************************************************************************/ + +#if !defined(_NN_INTERNAL_H) +#define _NN_INTERNAL_H + +/* + * nnpi.c + */ +void nnpi_calculate_weights(nnpi* nn, point* p); +int nnpi_get_nvertices(nnpi* nn); +int* nnpi_get_vertices(nnpi* nn); +double* nnpi_get_weights(nnpi* nn); + +/* + * nncommon.c, nncommon-vulnerable.c + */ +int circle_build1(circle* c, point* p0, point* p1, point* p2); +int circle_build2(circle* c, point* p0, point* p1, point* p2); +int circle_contains(circle* c, point* p); +void nn_quit(char* format, ...); +int str2double(char* token, double* value); + +#endif diff --git a/autoarray/util/nn/src/nn/nnai.c b/autoarray/util/nn/src/nn/nnai.c index a50160adb..8fc8d1532 100644 --- a/autoarray/util/nn/src/nn/nnai.c +++ b/autoarray/util/nn/src/nn/nnai.c @@ -1,426 +1,426 @@ -/****************************************************************************** - * - * File: nnai.c - * - * Created: 15/11/2002 - * - * Author: Pavel Sakov - * CSIRO Marine Research - * - * Purpose: Code for: - * -- Natural Neighbours Array Interpolator - * - * Description: `nnai' is a structure for conducting repeated Natural - * Neighbours interpolations when locations of input and output - * data points do not change. It re-uses interpolation weights - * calculated during initialisation and can be substantially - * faster than the more generic Natural Neighbours Point - * Interpolator `nnpi'. - * - * Revisions: None - * - *****************************************************************************/ - -#include -#include -#include -#include -#include "nan.h" -#include "nn.h" -#include "nncommon.h" -#include "delaunay.h" -#include "nnpi.h" - -typedef struct { - int nvertices; - int* vertices; /* vertex indices [nvertices] */ - double* weights; /* vertex weights [nvertices] */ -} nn_weights; - -struct nnai { - delaunay* d; - double wmin; - double n; /* number of output points */ - double* x; /* [n] */ - double* y; /* [n] */ - nn_weights* weights; -}; - -/** Builds Natural Neighbours array interpolator. - * - * This includes calculation of weights used in nnai_interpolate(). - * - * @param d Delaunay triangulation - * @return Natural Neighbours interpolation - */ -nnai* nnai_build(delaunay* d, int n, double* x, double* y) -{ - nnai* nn = malloc(sizeof(nnai)); - nnpi* nnpi = nnpi_create(d); - int* vertices; - double* weights; - int i; - - if (n <= 0) - nn_quit("nnai_create(): n = %d\n", n); - - nn->d = d; - nn->n = n; - nn->x = malloc(n * sizeof(double)); - memcpy(nn->x, x, n * sizeof(double)); - nn->y = malloc(n * sizeof(double)); - memcpy(nn->y, y, n * sizeof(double)); - nn->weights = malloc(n * sizeof(nn_weights)); - - for (i = 0; i < n; ++i) { - nn_weights* w = &nn->weights[i]; - point p; - - p.x = x[i]; - p.y = y[i]; - - nnpi_calculate_weights(nnpi, &p); - - vertices = nnpi_get_vertices(nnpi); - weights = nnpi_get_weights(nnpi); - - w->nvertices = nnpi_get_nvertices(nnpi); - w->vertices = malloc(w->nvertices * sizeof(int)); - memcpy(w->vertices, vertices, w->nvertices * sizeof(int)); - w->weights = malloc(w->nvertices * sizeof(double)); - memcpy(w->weights, weights, w->nvertices * sizeof(double)); - } - - nnpi_destroy(nnpi); - - return nn; -} - -/* Destroys Natural Neighbours array interpolator. - * - * @param nn Structure to be destroyed - */ -void nnai_destroy(nnai* nn) -{ - int i; - - for (i = 0; i < nn->n; ++i) { - nn_weights* w = &nn->weights[i]; - - free(w->vertices); - free(w->weights); - } - - free(nn->x); - free(nn->y); - free(nn->weights); - free(nn); -} - -/* Conducts NN interpolation in a fixed array of output points using - * data specified in a fixed array of input points. Uses pre-calculated - * weights. - * - * @param nn NN array interpolator - * @param zin input data [nn->d->npoints] - * @param zout output data [nn->n]. Must be pre-allocated! - */ -void nnai_interpolate(nnai* nn, double* zin, double* zout) -{ - int i; - - for (i = 0; i < nn->n; ++i) { - nn_weights* w = &nn->weights[i]; - double z = 0.0; - int j; - - for (j = 0; j < w->nvertices; ++j) { - double weight = w->weights[j]; - - if (weight < nn->wmin) { - z = NaN; - break; - } - z += weight * zin[w->vertices[j]]; - } - - zout[i] = z; - } -} - -/* Sets minimal allowed weight for Natural Neighbours interpolation. - * - * For Sibson interpolation, setting wmin = 0 is equivalent to interpolating - * inside convex hall of the data only (returning NaNs otherwise). - * - * @param nn Natural Neighbours array interpolator - * @param wmin Minimal allowed weight - */ -void nnai_setwmin(nnai* nn, double wmin) -{ - nn->wmin = wmin; -} - -/* The rest of this file contains a number of test programs. - */ -#if defined(NNAI_TEST) - -#include - -#define NPOINTSIN 10000 -#define NMIN 10 -#define NX 101 -#define NXMIN 1 - -#define SQ(x) ((x) * (x)) - -static double franke(double x, double y) -{ - x *= 9.0; - y *= 9.0; - return 0.75 * exp((-SQ(x - 2.0) - SQ(y - 2.0)) / 4.0) - + 0.75 * exp(-SQ(x - 2.0) / 49.0 - (y - 2.0) / 10.0) - + 0.5 * exp((-SQ(x - 7.0) - SQ(y - 3.0)) / 4.0) - - 0.2 * exp(-SQ(x - 4.0) - SQ(y - 7.0)); -} - -static void usage() -{ - printf("Usage: nnai_test [-v|-V] [-n ]\n"); - printf("Options:\n"); - printf(" -a -- use non-Sibsonian interpolation rule\n"); - printf(" -n :\n"); - printf(" -- number of input points (default = 10000)\n"); - printf(" -- number of output points per side (default = 64)\n"); - printf(" -v -- verbose\n"); - printf(" -V -- very verbose\n"); -} - -int main(int argc, char* argv[]) -{ - int nin = NPOINTSIN; - int nx = NX; - int nout = 0; - point* pin = NULL; - delaunay* d = NULL; - point* pout = NULL; - nnai* nn = NULL; - double* zin = NULL; - double* xout = NULL; - double* yout = NULL; - double* zout = NULL; - int cpi = -1; /* control point index */ - struct timeval tv0, tv1, tv2; - struct timezone tz; - int i; - - i = 1; - while (i < argc) { - switch (argv[i][1]) { - case 'a': - i++; - nn_rule = NON_SIBSONIAN; - break; - case 'n': - i++; - if (i >= argc) - nn_quit("no number of data points found after -i\n"); - nin = atoi(argv[i]); - i++; - if (i >= argc) - nn_quit("no number of ouput points per side found after -i\n"); - nx = atoi(argv[i]); - i++; - break; - case 'v': - i++; - nn_verbose = 1; - break; - case 'V': - i++; - nn_verbose = 2; - break; - default: - usage(); - break; - } - } - - if (nin < NMIN) - nin = NMIN; - if (nx < NXMIN) - nx = NXMIN; - - printf("\nTest of Natural Neighbours array interpolator:\n\n"); - printf(" %d data points\n", nin); - printf(" %d output points\n", nx * nx); - - /* - * generate data - */ - printf(" generating data:\n"); - fflush(stdout); - pin = malloc(nin * sizeof(point)); - zin = malloc(nin * sizeof(double)); - for (i = 0; i < nin; ++i) { - point* p = &pin[i]; - - p->x = (double) random() / RAND_MAX; - p->y = (double) random() / RAND_MAX; - p->z = franke(p->x, p->y); - zin[i] = p->z; - if (nn_verbose) - printf(" (%f, %f, %f)\n", p->x, p->y, p->z); - } - - /* - * triangulate - */ - printf(" triangulating:\n"); - fflush(stdout); - d = delaunay_build(nin, pin, 0, NULL, 0, NULL); - - /* - * generate output points - */ - points_generate(-0.1, 1.1, -0.1, 1.1, nx, nx, &nout, &pout); - xout = malloc(nout * sizeof(double)); - yout = malloc(nout * sizeof(double)); - zout = malloc(nout * sizeof(double)); - for (i = 0; i < nout; ++i) { - point* p = &pout[i]; - - xout[i] = p->x; - yout[i] = p->y; - zout[i] = NaN; - } - cpi = (nx / 2) * (nx + 1); - - gettimeofday(&tv0, &tz); - - /* - * create interpolator - */ - printf(" creating interpolator:\n"); - fflush(stdout); - nn = nnai_build(d, nout, xout, yout); - - fflush(stdout); - gettimeofday(&tv1, &tz); - { - long dt = 1000000 * (tv1.tv_sec - tv0.tv_sec) + tv1.tv_usec - tv0.tv_usec; - - printf(" interpolator creation time = %ld us (%.2f us / point)\n", dt, (double) dt / nout); - } - - /* - * interpolate - */ - printf(" interpolating:\n"); - fflush(stdout); - nnai_interpolate(nn, zin, zout); - if (nn_verbose) - for (i = 0; i < nout; ++i) - printf(" (%f, %f, %f)\n", xout[i], yout[i], zout[i]); - - fflush(stdout); - gettimeofday(&tv2, &tz); - { - long dt = 1000000.0 * (tv2.tv_sec - tv1.tv_sec) + tv2.tv_usec - tv1.tv_usec; - - printf(" interpolation time = %ld us (%.2f us / point)\n", dt, (double) dt / nout); - } - - if (!nn_verbose) - printf(" control point: (%f, %f, %f) (expected z = %f)\n", xout[cpi], yout[cpi], zout[cpi], franke(xout[cpi], yout[cpi])); - - /* - * interpolate one more time - */ - printf(" interpolating one more time:\n"); - fflush(stdout); - nnai_interpolate(nn, zin, zout); - if (nn_verbose) - for (i = 0; i < nout; ++i) - printf(" (%f, %f, %f)\n", xout[i], yout[i], zout[i]); - - fflush(stdout); - gettimeofday(&tv0, &tz); - { - long dt = 1000000.0 * (tv0.tv_sec - tv2.tv_sec) + tv0.tv_usec - tv2.tv_usec; - - printf(" interpolation time = %ld us (%.2f us / point)\n", dt, (double) dt / nout); - } - - if (!nn_verbose) - printf(" control point: (%f, %f, %f) (expected z = %f)\n", xout[cpi], yout[cpi], zout[cpi], franke(xout[cpi], yout[cpi])); - - /* - * change the data - */ - printf(" entering new data:\n"); - fflush(stdout); - for (i = 0; i < nin; ++i) { - point* p = &pin[i]; - - p->z = p->x * p->x - p->y * p->y; - zin[i] = p->z; - if (nn_verbose) - printf(" (%f, %f, %f)\n", p->x, p->y, p->z); - } - - /* - * interpolate - */ - printf(" interpolating:\n"); - fflush(stdout); - nnai_interpolate(nn, zin, zout); - if (nn_verbose) - for (i = 0; i < nout; ++i) - printf(" (%f, %f, %f)\n", xout[i], yout[i], zout[i]); - - if (!nn_verbose) - printf(" control point: (%f, %f, %f) (expected z = %f)\n", xout[cpi], yout[cpi], zout[cpi], xout[cpi] * xout[cpi] - yout[cpi] * yout[cpi]); - - /* - * restore old data - */ - printf(" restoring data:\n"); - fflush(stdout); - for (i = 0; i < nin; ++i) { - point* p = &pin[i]; - - p->z = franke(p->x, p->y); - zin[i] = p->z; - if (nn_verbose) - printf(" (%f, %f, %f)\n", p->x, p->y, p->z); - } - - /* - * interpolate - */ - printf(" interpolating:\n"); - fflush(stdout); - nnai_interpolate(nn, zin, zout); - if (nn_verbose) - for (i = 0; i < nout; ++i) - printf(" (%f, %f, %f)\n", xout[i], yout[i], zout[i]); - - if (!nn_verbose) - printf(" control point: (%f, %f, %f) (expected z = %f)\n", xout[cpi], yout[cpi], zout[cpi], franke(xout[cpi], yout[cpi])); - - printf("\n"); - - nnai_destroy(nn); - free(zin); - free(xout); - free(yout); - free(zout); - free(pout); - delaunay_destroy(d); - free(pin); - - return 0; -} - -#endif +/****************************************************************************** + * + * File: nnai.c + * + * Created: 15/11/2002 + * + * Author: Pavel Sakov + * CSIRO Marine Research + * + * Purpose: Code for: + * -- Natural Neighbours Array Interpolator + * + * Description: `nnai' is a structure for conducting repeated Natural + * Neighbours interpolations when locations of input and output + * data points do not change. It re-uses interpolation weights + * calculated during initialisation and can be substantially + * faster than the more generic Natural Neighbours Point + * Interpolator `nnpi'. + * + * Revisions: None + * + *****************************************************************************/ + +#include +#include +#include +#include +#include "nan.h" +#include "nn.h" +#include "nncommon.h" +#include "delaunay.h" +#include "nnpi.h" + +typedef struct { + int nvertices; + int* vertices; /* vertex indices [nvertices] */ + double* weights; /* vertex weights [nvertices] */ +} nn_weights; + +struct nnai { + delaunay* d; + double wmin; + double n; /* number of output points */ + double* x; /* [n] */ + double* y; /* [n] */ + nn_weights* weights; +}; + +/** Builds Natural Neighbours array interpolator. + * + * This includes calculation of weights used in nnai_interpolate(). + * + * @param d Delaunay triangulation + * @return Natural Neighbours interpolation + */ +nnai* nnai_build(delaunay* d, int n, double* x, double* y) +{ + nnai* nn = malloc(sizeof(nnai)); + nnpi* nnpi = nnpi_create(d); + int* vertices; + double* weights; + int i; + + if (n <= 0) + nn_quit("nnai_create(): n = %d\n", n); + + nn->d = d; + nn->n = n; + nn->x = malloc(n * sizeof(double)); + memcpy(nn->x, x, n * sizeof(double)); + nn->y = malloc(n * sizeof(double)); + memcpy(nn->y, y, n * sizeof(double)); + nn->weights = malloc(n * sizeof(nn_weights)); + + for (i = 0; i < n; ++i) { + nn_weights* w = &nn->weights[i]; + point p; + + p.x = x[i]; + p.y = y[i]; + + nnpi_calculate_weights(nnpi, &p); + + vertices = nnpi_get_vertices(nnpi); + weights = nnpi_get_weights(nnpi); + + w->nvertices = nnpi_get_nvertices(nnpi); + w->vertices = malloc(w->nvertices * sizeof(int)); + memcpy(w->vertices, vertices, w->nvertices * sizeof(int)); + w->weights = malloc(w->nvertices * sizeof(double)); + memcpy(w->weights, weights, w->nvertices * sizeof(double)); + } + + nnpi_destroy(nnpi); + + return nn; +} + +/* Destroys Natural Neighbours array interpolator. + * + * @param nn Structure to be destroyed + */ +void nnai_destroy(nnai* nn) +{ + int i; + + for (i = 0; i < nn->n; ++i) { + nn_weights* w = &nn->weights[i]; + + free(w->vertices); + free(w->weights); + } + + free(nn->x); + free(nn->y); + free(nn->weights); + free(nn); +} + +/* Conducts NN interpolation in a fixed array of output points using + * data specified in a fixed array of input points. Uses pre-calculated + * weights. + * + * @param nn NN array interpolator + * @param zin input data [nn->d->npoints] + * @param zout output data [nn->n]. Must be pre-allocated! + */ +void nnai_interpolate(nnai* nn, double* zin, double* zout) +{ + int i; + + for (i = 0; i < nn->n; ++i) { + nn_weights* w = &nn->weights[i]; + double z = 0.0; + int j; + + for (j = 0; j < w->nvertices; ++j) { + double weight = w->weights[j]; + + if (weight < nn->wmin) { + z = NaN; + break; + } + z += weight * zin[w->vertices[j]]; + } + + zout[i] = z; + } +} + +/* Sets minimal allowed weight for Natural Neighbours interpolation. + * + * For Sibson interpolation, setting wmin = 0 is equivalent to interpolating + * inside convex hall of the data only (returning NaNs otherwise). + * + * @param nn Natural Neighbours array interpolator + * @param wmin Minimal allowed weight + */ +void nnai_setwmin(nnai* nn, double wmin) +{ + nn->wmin = wmin; +} + +/* The rest of this file contains a number of test programs. + */ +#if defined(NNAI_TEST) + +#include + +#define NPOINTSIN 10000 +#define NMIN 10 +#define NX 101 +#define NXMIN 1 + +#define SQ(x) ((x) * (x)) + +static double franke(double x, double y) +{ + x *= 9.0; + y *= 9.0; + return 0.75 * exp((-SQ(x - 2.0) - SQ(y - 2.0)) / 4.0) + + 0.75 * exp(-SQ(x - 2.0) / 49.0 - (y - 2.0) / 10.0) + + 0.5 * exp((-SQ(x - 7.0) - SQ(y - 3.0)) / 4.0) + - 0.2 * exp(-SQ(x - 4.0) - SQ(y - 7.0)); +} + +static void usage() +{ + printf("Usage: nnai_test [-v|-V] [-n ]\n"); + printf("Options:\n"); + printf(" -a -- use non-Sibsonian interpolation rule\n"); + printf(" -n :\n"); + printf(" -- number of input points (default = 10000)\n"); + printf(" -- number of output points per side (default = 64)\n"); + printf(" -v -- verbose\n"); + printf(" -V -- very verbose\n"); +} + +int main(int argc, char* argv[]) +{ + int nin = NPOINTSIN; + int nx = NX; + int nout = 0; + point* pin = NULL; + delaunay* d = NULL; + point* pout = NULL; + nnai* nn = NULL; + double* zin = NULL; + double* xout = NULL; + double* yout = NULL; + double* zout = NULL; + int cpi = -1; /* control point index */ + struct timeval tv0, tv1, tv2; + struct timezone tz; + int i; + + i = 1; + while (i < argc) { + switch (argv[i][1]) { + case 'a': + i++; + nn_rule = NON_SIBSONIAN; + break; + case 'n': + i++; + if (i >= argc) + nn_quit("no number of data points found after -i\n"); + nin = atoi(argv[i]); + i++; + if (i >= argc) + nn_quit("no number of ouput points per side found after -i\n"); + nx = atoi(argv[i]); + i++; + break; + case 'v': + i++; + nn_verbose = 1; + break; + case 'V': + i++; + nn_verbose = 2; + break; + default: + usage(); + break; + } + } + + if (nin < NMIN) + nin = NMIN; + if (nx < NXMIN) + nx = NXMIN; + + printf("\nTest of Natural Neighbours array interpolator:\n\n"); + printf(" %d data points\n", nin); + printf(" %d output points\n", nx * nx); + + /* + * generate data + */ + printf(" generating data:\n"); + fflush(stdout); + pin = malloc(nin * sizeof(point)); + zin = malloc(nin * sizeof(double)); + for (i = 0; i < nin; ++i) { + point* p = &pin[i]; + + p->x = (double) random() / RAND_MAX; + p->y = (double) random() / RAND_MAX; + p->z = franke(p->x, p->y); + zin[i] = p->z; + if (nn_verbose) + printf(" (%f, %f, %f)\n", p->x, p->y, p->z); + } + + /* + * triangulate + */ + printf(" triangulating:\n"); + fflush(stdout); + d = delaunay_build(nin, pin, 0, NULL, 0, NULL); + + /* + * generate output points + */ + points_generate(-0.1, 1.1, -0.1, 1.1, nx, nx, &nout, &pout); + xout = malloc(nout * sizeof(double)); + yout = malloc(nout * sizeof(double)); + zout = malloc(nout * sizeof(double)); + for (i = 0; i < nout; ++i) { + point* p = &pout[i]; + + xout[i] = p->x; + yout[i] = p->y; + zout[i] = NaN; + } + cpi = (nx / 2) * (nx + 1); + + gettimeofday(&tv0, &tz); + + /* + * create interpolator + */ + printf(" creating interpolator:\n"); + fflush(stdout); + nn = nnai_build(d, nout, xout, yout); + + fflush(stdout); + gettimeofday(&tv1, &tz); + { + long dt = 1000000 * (tv1.tv_sec - tv0.tv_sec) + tv1.tv_usec - tv0.tv_usec; + + printf(" interpolator creation time = %ld us (%.2f us / point)\n", dt, (double) dt / nout); + } + + /* + * interpolate + */ + printf(" interpolating:\n"); + fflush(stdout); + nnai_interpolate(nn, zin, zout); + if (nn_verbose) + for (i = 0; i < nout; ++i) + printf(" (%f, %f, %f)\n", xout[i], yout[i], zout[i]); + + fflush(stdout); + gettimeofday(&tv2, &tz); + { + long dt = 1000000.0 * (tv2.tv_sec - tv1.tv_sec) + tv2.tv_usec - tv1.tv_usec; + + printf(" interpolation time = %ld us (%.2f us / point)\n", dt, (double) dt / nout); + } + + if (!nn_verbose) + printf(" control point: (%f, %f, %f) (expected z = %f)\n", xout[cpi], yout[cpi], zout[cpi], franke(xout[cpi], yout[cpi])); + + /* + * interpolate one more time + */ + printf(" interpolating one more time:\n"); + fflush(stdout); + nnai_interpolate(nn, zin, zout); + if (nn_verbose) + for (i = 0; i < nout; ++i) + printf(" (%f, %f, %f)\n", xout[i], yout[i], zout[i]); + + fflush(stdout); + gettimeofday(&tv0, &tz); + { + long dt = 1000000.0 * (tv0.tv_sec - tv2.tv_sec) + tv0.tv_usec - tv2.tv_usec; + + printf(" interpolation time = %ld us (%.2f us / point)\n", dt, (double) dt / nout); + } + + if (!nn_verbose) + printf(" control point: (%f, %f, %f) (expected z = %f)\n", xout[cpi], yout[cpi], zout[cpi], franke(xout[cpi], yout[cpi])); + + /* + * change the data + */ + printf(" entering new data:\n"); + fflush(stdout); + for (i = 0; i < nin; ++i) { + point* p = &pin[i]; + + p->z = p->x * p->x - p->y * p->y; + zin[i] = p->z; + if (nn_verbose) + printf(" (%f, %f, %f)\n", p->x, p->y, p->z); + } + + /* + * interpolate + */ + printf(" interpolating:\n"); + fflush(stdout); + nnai_interpolate(nn, zin, zout); + if (nn_verbose) + for (i = 0; i < nout; ++i) + printf(" (%f, %f, %f)\n", xout[i], yout[i], zout[i]); + + if (!nn_verbose) + printf(" control point: (%f, %f, %f) (expected z = %f)\n", xout[cpi], yout[cpi], zout[cpi], xout[cpi] * xout[cpi] - yout[cpi] * yout[cpi]); + + /* + * restore old data + */ + printf(" restoring data:\n"); + fflush(stdout); + for (i = 0; i < nin; ++i) { + point* p = &pin[i]; + + p->z = franke(p->x, p->y); + zin[i] = p->z; + if (nn_verbose) + printf(" (%f, %f, %f)\n", p->x, p->y, p->z); + } + + /* + * interpolate + */ + printf(" interpolating:\n"); + fflush(stdout); + nnai_interpolate(nn, zin, zout); + if (nn_verbose) + for (i = 0; i < nout; ++i) + printf(" (%f, %f, %f)\n", xout[i], yout[i], zout[i]); + + if (!nn_verbose) + printf(" control point: (%f, %f, %f) (expected z = %f)\n", xout[cpi], yout[cpi], zout[cpi], franke(xout[cpi], yout[cpi])); + + printf("\n"); + + nnai_destroy(nn); + free(zin); + free(xout); + free(yout); + free(zout); + free(pout); + delaunay_destroy(d); + free(pin); + + return 0; +} + +#endif diff --git a/autoarray/util/nn/src/nn/nnbathy.c b/autoarray/util/nn/src/nn/nnbathy.c index 8efd1c2e8..88a4c1b76 100644 --- a/autoarray/util/nn/src/nn/nnbathy.c +++ b/autoarray/util/nn/src/nn/nnbathy.c @@ -1,1018 +1,1018 @@ -/****************************************************************************** - * - * File: nnbathy.c - * - * Created: 04/08/2000 - * - * Author: Pavel Sakov - * CSIRO Marine Research - * - * Purpose: Interpolate scalar 2D data in specified points using - * Natural Neighbours interpolation. - * - * Description: See usage(). - * - * The default vers ion of nnbathy allocates the whole output - * grid in memory before interpolating; the compilier flag - * NN_SERIAL compiles a bit more sophisticated version of that - * interpolates in output points on one-by-one basis. - * - * Revisions: 29/05/2006: introduced NN_SERIAL, see the description above - * 01/06/2006: moved flags and other command-line input into - * structure "specs" - * 05/05/2021: added MPI version - * 11/05/2021: added another communication algorithm when worker - * CPUs write results to "tiles" on disk rather than - * send them to master; it activates by defining - * VIAFILE - * - *****************************************************************************/ - -#include -#include -#include -#include -#include -#include -#include -#include -#if defined(MPI) -#include -#include -#if defined(VIAFILE) -#include "distribute.h" -#endif -#endif -#include "config.h" -#include "nan.h" -#include "minell.h" -#include "nn.h" -#include "delaunay.h" -#if defined(NN_SERIAL) || defined(MPI) -#include "preader.h" -#endif - -#if !defined(NN_SERIAL) && !defined(MPI) -#define NMAX 4096 -#endif -#define STRBUFSIZE 256 - -typedef struct { - int generate_points; - int thin; - int nointerp; - int linear; - int invariant; - int square; - char* fin; - char* fout; - int nx; - int ny; - int nxd; - int nyd; - double rmax; - double wmin; - double zoom; - double xmin; - double xmax; - double ymin; - double ymax; -#if defined(NN_SERIAL) || defined(MPI) - int npoints; -#endif -} specs; - -static void version() -{ - printf(" nnbathy/nn version %s\n", nn_version); - exit(0); -} - -static void usage() -{ - printf("Usage: nnbathy -i \n"); - printf(" -o | -n x [-c|-s] [-z ]\n"); - printf(" [-x ] [-xmin ] [-xmax ]\n"); - printf(" [-y ] [-ymin ] [-ymax ]\n"); - printf(" [-v|-T |-V]\n"); - printf(" [-D [x]]\n"); - printf(" [-L ]\n"); - printf(" [-N]\n"); - printf(" [-P alg={l|nn|ns}]\n"); - printf(" [-W ]\n"); -#if defined(NN_SERIAL) || defined(MPI) - printf(" [-%% [npoints]]\n"); -#endif - printf("Options:\n"); - printf(" -c -- scale internally so that the enclosing minimal ellipse\n"); - printf(" turns into a circle (this produces results invariant to\n"); - printf(" affine transformations)\n"); - printf(" -i -- three-column file with points to interpolate from\n"); - printf(" (use \"-i stdin\" or \"-i -\" for standard input)\n"); - printf(" -n x -- generate x output rectangular grid\n"); - printf(" -o -- two-column file with points to interpolate in\n"); - printf(" (use \"-o stdin\" or \"-o -\" for standard input)\n"); - printf(" -s -- scale internally so that Xmax - Xmin = Ymax - Ymin\n"); - printf(" -x -- set Xmin and Xmax for the output grid\n"); - printf(" -xmin -- set Xmin for the output grid\n"); - printf(" -xmax -- set Xmin for the output grid\n"); - printf(" -y -- set Ymin and Ymax for the output grid\n"); - printf(" -ymin -- set Ymin for the output grid\n"); - printf(" -ymax -- set Ymin for the output grid\n"); - printf(" -v -- verbose / version\n"); - printf(" -z -- zoom in (if < 1) or out ( > 1) (activated\n"); - printf(" only when used in conjunction with -n)\n"); - printf(" -D [x] -- thin input data by averaging X, Y and Z values within\n"); - printf(" every cell of the rectangular x grid (size\n"); - printf(" optional with -n)\n"); - printf(" -L -- thin input data by averaging X, Y and Z values within\n"); - printf(" clusters of consequitive input points such that the\n"); - printf(" sum of distances between points within each cluster\n"); - printf(" does not exceed the specified maximum value\n"); - printf(" -N -- do not interpolate, only pre-process\n"); - printf(" -P alg= -- use the following algorithm:\n"); - printf(" l -- linear interpolation\n"); - printf(" nn -- Sibson interpolation (default)\n"); - printf(" ns -- Non-Sibsonian interpolation\n"); - printf(" -T -- verbose; in weights output print weights associated\n"); - printf(" with this vertex only\n"); - printf(" -V -- very verbose / version\n"); - printf(" -W -- restricts extrapolation by assigning minimal allowed\n"); - printf(" weight for a vertex (normally \"-1\" or so; lower\n"); - printf(" values correspond to lower reliability; \"0\" means\n"); - printf(" no extrapolation)\n"); -#if defined(NN_SERIAL) || defined(MPI) - printf(" -%% [npoints] -- print percent of the work done to standard error;\n"); - printf(" npoints -- total number of points to be done (optional\n"); - printf(" with -n)\n"); -#endif - printf("Description:\n"); - printf(" `nnbathy' interpolates scalar 2D data in specified points using Natural\n"); - printf(" Neighbours interpolation. The interpolated values are written to standard\n"); - printf(" output.\n"); - - exit(0); -} - -static void quit(char* format, ...) -{ - va_list args; - - fflush(stdout); /* just in case, to have exit message last */ - - fprintf(stderr, " error: "); - va_start(args, format); - vfprintf(stderr, format, args); - va_end(args); - -#if defined(MPI) - MPI_Abort(MPI_COMM_WORLD, 1); /* kill all MPI jobs */ -#else - abort(); /* raise SIGABRT for debugging */ -#endif - exit(1); -} - -static double str2double(char* token, char* option) -{ - char* end = NULL; - double value = NaN; - - if (token != NULL) - value = strtod(token, &end); - - if (token == NULL || end == token) { - fprintf(stderr, " error: command-line option \"%s\": could not convert \"%s\" to double\n", option, (token != NULL) ? token : "NULL"); - - exit(1); - } - - return value; -} - -static specs* specs_create(void) -{ - specs* s = malloc(sizeof(specs)); - - s->generate_points = 0; - s->thin = 0; - s->nointerp = 0; - s->linear = 0; - s->invariant = 0; - s->square = 0; - s->fin = NULL; - s->fout = NULL; - s->nx = -1; - s->ny = -1; - s->nxd = -1; - s->nyd = -1; - s->rmax = NaN; - s->wmin = -DBL_MAX; - s->zoom = 1.0; - s->xmin = NaN; - s->xmax = NaN; - s->ymin = NaN; - s->ymax = NaN; -#if defined(NN_SERIAL) || defined(MPI) - s->npoints = 0; -#endif - return s; -} - -void specs_destroy(specs* s) -{ - free(s); -} - -static void parse_commandline(int argc, char* argv[], specs* s) -{ - int i; - - if (argc < 2) - usage(); - - i = 1; - while (i < argc) { - if (argv[i][0] != '-') - usage(); - - switch (argv[i][1]) { - case 'c': - i++; - s->square = 0; - s->invariant = 1; - break; - case 'i': - i++; - if (i >= argc) - quit("no file name found after -i\n"); - s->fin = argv[i]; - i++; - break; - case 'l': - i++; - s->linear = 1; - break; - case 'n': - i++; - s->fout = NULL; - s->generate_points = 1; - if (i >= argc) - quit("no grid dimensions found after -n\n"); - if (sscanf(argv[i], "%dx%d", &s->nx, &s->ny) != 2) - quit("could not read grid dimensions after \"-n\"\n"); -#if defined(NN_SERIAL) || defined(MPI) - if (s->nx <= 0 || s->ny <= 0) -#else - if (s->nx <= 0 || s->nx > NMAX || s->ny <= 0 || s->ny > NMAX) -#endif - quit("invalid size for output grid\n"); - i++; - break; - case 'o': - i++; - if (i >= argc) - quit("no file name found after -o\n"); - s->fout = argv[i]; - i++; - break; - case 's': - i++; - s->square = 1; - s->invariant = 0; - break; - case 'x': - if (argv[i][2] == 0) { - i++; - if (i >= argc) - quit("no xmin value found after -x\n"); - s->xmin = str2double(argv[i], "-x"); - i++; - if (i >= argc) - quit("no xmax value found after -x\n"); - s->xmax = str2double(argv[i], "-x"); - i++; - } else if (strcmp(argv[i], "-xmin") == 0) { - i++; - if (i >= argc) - quit("no value found after -xmin\n"); - s->xmin = str2double(argv[i], "-xmin"); - i++; - } else if (strcmp(argv[i], "-xmax") == 0) { - i++; - if (i >= argc) - quit("no value found after -xmax\n"); - s->xmax = str2double(argv[i], "-xmax"); - i++; - } else - usage(); - break; - case 'y': - if (argv[i][2] == 0) { - i++; - if (i >= argc) - quit("no ymin value found after -y\n"); - s->ymin = str2double(argv[i], "-y"); - i++; - if (i >= argc) - quit("no ymax value found after -y\n"); - s->ymax = str2double(argv[i], "-y"); - i++; - } else if (strcmp(argv[i], "-ymin") == 0) { - i++; - if (i >= argc) - quit("no value found after -ymin\n"); - s->ymin = str2double(argv[i], "-ymin"); - i++; - } else if (strcmp(argv[i], "-ymax") == 0) { - i++; - if (i >= argc) - quit("no value found after -ymax\n"); - s->ymax = str2double(argv[i], "-ymax"); - i++; - } else - usage(); - break; - case 'v': - i++; - nn_verbose = 1; - break; - case 'z': - i++; - if (i >= argc) - quit("no zoom value found after -z\n"); - s->zoom = str2double(argv[i], "-z"); - i++; - break; - case 'D': - i++; - s->thin = 1; - if (argc > i && argv[i][0] != '-') { - if (sscanf(argv[i], "%dx%d", &s->nxd, &s->nyd) != 2) - quit("could not read grid dimensions after \"-D\"\n"); - if (s->nxd <= 0 || s->nyd <= 0) - quit("invalid value for nx = %d or ny = %d after -D option\n", s->nxd, s->nyd); -#if !defined(NN_SERIAL) && !defined(MPI) - if (s->nxd > NMAX || s->nyd > NMAX) - quit("too big value after -D option (expected < %d)\n", NMAX); -#endif - i++; - } - break; - case 'L': - i++; - s->thin = 2; - if (i >= argc) - quit("no value found after -L\n"); - s->rmax = str2double(argv[i], "-L"); - i++; - break; - case 'N': - i++; - s->nointerp = 1; - break; - case 'P':{ - char delim[] = "="; - char prmstr[STRBUFSIZE] = ""; - char* token; - - i++; - if (i >= argc) - quit("no input found after -P\n"); - - if (strlen(argv[i]) >= STRBUFSIZE) - quit("could not interpret \"%s\" after -P option\n", argv[i]); - - strcpy(prmstr, argv[i]); - token = strtok(prmstr, delim); - if (token == NULL) - quit("could not interpret \"%s\" after -P option\n", argv[i]); - - if (strcmp(token, "alg") == 0) { - token = strtok(NULL, delim); - if (token == NULL) - quit("could not interpret \"%s\" after -P option\n", argv[i]); - - if (strcmp(token, "nn") == 0) { - nn_rule = SIBSON; - s->linear = 0; - } else if (strcmp(token, "ns") == 0) { - nn_rule = NON_SIBSONIAN; - s->linear = 0; - } else if (strcmp(token, "l") == 0) { - s->linear = 1; - } else - usage(); - } - - i++; - break; - } - case 'W': - i++; - if (i >= argc) - quit("no minimal allowed weight found after -W\n"); - s->wmin = str2double(argv[i], "-W"); - i++; - break; - case 'T': - i++; - if (i >= argc) - quit("no vertex id found after -T\n"); - nn_test_vertice = atoi(argv[i]); - nn_verbose = 1; - i++; - break; - case 'V': - i++; - nn_verbose = 2; - break; -#if defined(NN_SERIAL) || defined(MPI) - case '%': - i++; - if (i < argc && argv[i][0] != '-') { - s->npoints = atoi(argv[i]); - i++; - } else - s->npoints = 1; - break; -#endif - default: - usage(); - break; - } - } - - if (nn_verbose && argc == 2) - version(); - - if (s->thin) { - if (s->nxd == -1) - s->nxd = s->nx; - if (s->nyd == -1) - s->nyd = s->ny; - if (s->nxd <= 0 || s->nyd <= 0) - quit("invalid grid size for thinning\n"); - } -#if defined(NN_SERIAL) || defined(MPI) - if (s->npoints == 1) { - if (s->nx <= 0) - s->npoints = 0; - else - s->npoints = s->nx * s->ny; - } -#endif -} - -static void points_write(int n, point* points) -{ - int i; - - for (i = 0; i < n; ++i) { - point* p = &points[i]; - - if (isnan(p->z)) - printf("%.15g %.15g NaN\n", p->x, p->y); - else - printf("%.15g %.15g %.15g\n", p->x, p->y, p->z); - } -} - -#if defined(MPI) && defined(VIAFILE) -#include - -static void file_delete(char fname[]) -{ - int status = -1; - - status = unlink(fname); - if (status != 0) { - int errno_saved = errno; - - quit("could not delete file \"%s\": %s", fname, strerror(errno_saved)); - } -} -#endif - -#if !defined(MPI) -#if !defined(NN_SERIAL) -/* A simpler version of nnbathy that allocates the whole output grid in memory - */ -int main(int argc, char* argv[]) -{ - delaunay* d = NULL; - specs* s = specs_create(); - int nin = 0; - point* pin = NULL; - minell* me = NULL; - int nout = 0; - point* pout = NULL; - double k = NaN; - - parse_commandline(argc, argv, s); - - if (s->fin == NULL) - quit("no input data\n"); - - if (!s->generate_points && s->fout == NULL && !s->nointerp) - quit("no output grid specified\n"); - - points_read(s->fin, 3, &nin, &pin); - - if (nin < 3) - return 0; - - if (s->thin == 1) - points_thingrid(&nin, &pin, s->nxd, s->nyd); - else if (s->thin == 2) - points_thinlin(&nin, &pin, s->rmax); - - if (s->nointerp) { - points_write(nin, pin); - specs_destroy(s); - free(pin); - return 0; - } - - if (s->generate_points) { - /* - * points_getrange() only writes the proper values to those arguments - * which do not point to NaNs - */ - points_getrange(nin, pin, s->zoom, &s->xmin, &s->xmax, &s->ymin, &s->ymax); - points_generate(s->xmin, s->xmax, s->ymin, s->ymax, s->nx, s->ny, &nout, &pout); - } else - points_read(s->fout, 2, &nout, &pout); - - if (s->invariant) { - me = minell_build(nin, pin); - minell_scalepoints(me, nin, pin); - minell_scalepoints(me, nout, pout); - } else if (s->square) { - k = points_scaletosquare(nin, pin); - points_scale(nout, pout, k); - } - - d = delaunay_build(nin, pin, 0, NULL, 0, NULL); - - if (s->linear) - lpi_interpolate_points(d, nout, pout); - else - nnpi_interpolate_points(d, s->wmin, nout, pout); - - delaunay_destroy(d); - - if (s->invariant) - minell_rescalepoints(me, nout, pout); - else if (s->square) - points_scale(nout, pout, 1.0 / k); - - points_write(nout, pout); - - if (me != NULL) - minell_destroy(me); - specs_destroy(s); - free(pin); - free(pout); - - return 0; -} -#else /* NN_SERIAL */ -/* A version of nnbathy that interpolates output points serially. Can save a - * bit of memory for large output grids. - */ -int main(int argc, char* argv[]) -{ - specs* s = specs_create(); - int nin = 0; - point* pin = NULL; - minell* me = NULL; - point* pout = NULL; - double k = NaN; - preader* pr = NULL; - delaunay* d = NULL; - void* interpolator = NULL; - int ndone = 0; - - parse_commandline(argc, argv, s); - - if (s->fin == NULL) - quit("no input data\n"); - - if (!s->generate_points && s->fout == NULL && !s->nointerp) - quit("no output grid specified\n"); - - points_read(s->fin, 3, &nin, &pin); - - if (nin < 3) - return 0; - - if (s->thin == 1) - points_thingrid(&nin, &pin, s->nxd, s->nyd); - else if (s->thin == 2) - points_thinlin(&nin, &pin, s->rmax); - - if (s->nointerp) { - points_write(nin, pin); - specs_destroy(s); - free(pin); - return 0; - } - - if (s->generate_points) { - points_getrange(nin, pin, s->zoom, &s->xmin, &s->xmax, &s->ymin, &s->ymax); - pr = preader_create1(s->xmin, s->xmax, s->ymin, s->ymax, s->nx, s->ny, -1, -1); - } else - pr = preader_create2(s->fout); - - if (s->invariant) { - me = minell_build(nin, pin); - minell_scalepoints(me, nin, pin); - } else if (s->square) - k = points_scaletosquare(nin, pin); - - d = delaunay_build(nin, pin, 0, NULL, 0, NULL); - - if (s->linear) - interpolator = lpi_build(d); - else { - interpolator = nnpi_create(d); - nnpi_setwmin(interpolator, s->wmin); - } - - while ((pout = preader_getpoint(pr)) != NULL) { - if (s->invariant) - minell_scalepoints(me, 1, pout); - else if (s->square) - points_scale(1, pout, k); - - if (s->linear) - lpi_interpolate_point(interpolator, pout); - else - nnpi_interpolate_point(interpolator, pout); - - if (s->invariant) - minell_rescalepoints(me, 1, pout); - else if (s->square) - points_scale(1, pout, 1.0 / k); - - points_write(1, pout); - ndone++; - - if (s->npoints > 0) { - int quant = s->npoints / 1000; - - if (quant == 0 || ndone % quant == 0) { - char percent[STRBUFSIZE]; - - snprintf(percent, STRBUFSIZE, " %5.1f%% done\r", 100.0 * ndone / s->npoints); - fprintf(stderr, "%s", percent); - fflush(stderr); - } - } - } - if (s->npoints > 0) - fprintf(stderr, " \r"); - - if (me != NULL) - minell_destroy(me); - if (s->linear) - lpi_destroy(interpolator); - else - nnpi_destroy(interpolator); - delaunay_destroy(d); - preader_destroy(pr); - specs_destroy(s); - free(pin); - - return 0; -} -#endif -#else /* MPI */ -/* - * the number of points assigned to each cpu to work on at a time - */ -#define MPIBUFSIZE 1024 -/* - * the maximal number of cpus when master interpolates as other workers; - * otherwise it is used for collecting and writing results only - */ -#define N_IDLEMASTER 3 -#if defined(VIAFILE) -#define BUFSIZE 4096 -#endif -int main(int argc, char* argv[]) -{ - specs* s = specs_create(); - int nin = 0; - point* pin = NULL; - minell* me = NULL; - point* pout = NULL; - double k = NaN; - preader* pr = NULL; - -#if defined(USE_SHMEM) - MPI_Win sm_win_inputdata = MPI_WIN_NULL; -#endif - - delaunay* d = NULL; - void* interpolator = NULL; - - point* buffer = NULL; - int nactiveprocesses, firstactiveprocess, ndone, nsent; - - int* nremain = NULL; - int nremain_total, r; - - parse_commandline(argc, argv, s); - - MPI_Init(&argc, &argv); - MPI_Comm_size(MPI_COMM_WORLD, &nprocesses); - MPI_Comm_rank(MPI_COMM_WORLD, &rank); - if (nn_verbose && rank == 0) - fprintf(stderr, " MPI: initialised %d process(es)\n", nprocesses); - MPI_Barrier(MPI_COMM_WORLD); -#if defined(USE_SHMEM) - { - (void) MPI_Comm_split_type(MPI_COMM_WORLD, MPI_COMM_TYPE_SHARED, 0, MPI_INFO_NULL, &sm_comm); - (void) MPI_Comm_rank(sm_comm, &sm_comm_rank); - (void) MPI_Comm_size(sm_comm, &sm_comm_size); - } -#endif - - if (s->fin == NULL) - quit("no input data\n"); - - if (!s->generate_points && s->fout == NULL && !s->nointerp) - quit("no output grid specified\n"); - -#if defined(USE_SHMEM) - if (sm_comm_rank == 0) -#endif - points_read(s->fin, 3, &nin, &pin); - -#if defined(USE_SHMEM) - /* - * Put input data into shared memory. - */ - { - MPI_Aint size; - void* data = NULL; - - (void) MPI_Bcast(&nin, 1, MPI_INT, 0, MPI_COMM_WORLD); - - assert(sizeof(MPI_Aint) == sizeof(size_t)); - size = nin * sizeof(point); - (void) MPI_Win_allocate_shared((sm_comm_rank == 0) ? size : 0, sizeof(point), MPI_INFO_NULL, sm_comm, &data, &sm_win_inputdata); - if (sm_comm_rank == 0) { - memcpy(data, pin, size); - free(pin); - pin = data; - if (nn_verbose) - fprintf(stderr, " MPI: put %u bytes of input data into shared memory\n", (unsigned int) size); - } else { - int disp_unit; - MPI_Aint my_size; - - MPI_Win_shared_query(sm_win_inputdata, 0, &my_size, &disp_unit, &pin); - assert(my_size == size); - assert(disp_unit == sizeof(point)); - assert(pin != NULL); - } - MPI_Win_fence(0, sm_win_inputdata); - MPI_Barrier(sm_comm); - } -#endif - - if (nin < 3) - return 0; - - if (s->thin == 1) - points_thingrid(&nin, &pin, s->nxd, s->nyd); - else if (s->thin == 2) - points_thinlin(&nin, &pin, s->rmax); - - if (s->nointerp) { - points_write(nin, pin); - specs_destroy(s); - free(pin); - return 0; - } - - if (s->generate_points) { - points_getrange(nin, pin, s->zoom, &s->xmin, &s->xmax, &s->ymin, &s->ymax); -#if !defined(VIAFILE) - pr = preader_create1(s->xmin, s->xmax, s->ymin, s->ymax, s->nx, s->ny, -1, -1); -#else - distribute_iterations(0, s->ny - 1, nprocesses, rank); - pr = preader_create1(s->xmin, s->xmax, s->ymin, s->ymax, s->nx, s->ny, my_first_iteration, my_last_iteration); - s->npoints = s->nx * (my_last_iteration - my_first_iteration + 1); -#endif - } else - pr = preader_create2(s->fout); - - if (s->invariant) { - me = minell_build(nin, pin); - minell_scalepoints(me, nin, pin); - } else if (s->square) - k = points_scaletosquare(nin, pin); - - d = delaunay_build(nin, pin, 0, NULL, 0, NULL); - - if (s->linear) - interpolator = lpi_build(d); - else { - interpolator = nnpi_create(d); - nnpi_setwmin(interpolator, s->wmin); - } - - /* - * interpolate - */ -#if defined(VIAFILE) - if (!preader_istype1(pr)) { -#endif - ndone = 0; /* number of points processed */ - nsent = 0; /* number of exchange sessions completed */ - nactiveprocesses = (nprocesses <= N_IDLEMASTER) ? nprocesses : nprocesses - 1; - firstactiveprocess = (nprocesses <= N_IDLEMASTER) ? 0 : 1; - buffer = malloc(MPIBUFSIZE * sizeof(point)); - while ((pout = preader_getpoint(pr)) != NULL) { - int activeprocess, iter; - - activeprocess = (ndone / MPIBUFSIZE) % nactiveprocesses + firstactiveprocess; - - if (activeprocess != rank) - goto postprocess; - - if (s->invariant) - minell_scalepoints(me, 1, pout); - else if (s->square) - points_scale(1, pout, k); - - if (s->linear) - lpi_interpolate_point(interpolator, pout); - else - nnpi_interpolate_point(interpolator, pout); - - if (s->invariant) - minell_rescalepoints(me, 1, pout); - else if (s->square) - points_scale(1, pout, 1.0 / k); - - buffer[ndone % MPIBUFSIZE] = *pout; - - postprocess: - ndone++; - - if (rank == 0 && s->npoints > 0) { - int quant = s->npoints / 1000; - - if (quant == 0 || ndone % quant == 0) { - char percent[STRBUFSIZE]; - - snprintf(percent, STRBUFSIZE, " %5.1f%% done\r", 100.0 * ndone / s->npoints); - fprintf(stderr, "%s", percent); - fflush(stderr); - } - } - - iter = ndone / MPIBUFSIZE / nactiveprocesses; - if (iter > nsent) { - /* - * start exchange session - */ - if (rank == 0) { - int r; - - if (firstactiveprocess == 0) - points_write(MPIBUFSIZE, buffer); - for (r = 1; r < nprocesses; ++r) { - (void) MPI_Recv(buffer, MPIBUFSIZE * 3, MPI_DOUBLE, r, iter, MPI_COMM_WORLD, MPI_STATUS_IGNORE); - points_write(MPIBUFSIZE, buffer); - } - } else - (void) MPI_Send(buffer, MPIBUFSIZE * 3, MPI_DOUBLE, 0, iter, MPI_COMM_WORLD); - nsent = iter; - } - } - - /* - * write remaining results - */ - nremain = calloc(nprocesses, sizeof(int)); - nremain_total = ndone - nsent * nactiveprocesses * MPIBUFSIZE; - for (r = firstactiveprocess; r < nprocesses; ++r) { - if (nremain_total >= MPIBUFSIZE) { - nremain[r] = MPIBUFSIZE; - nremain_total -= MPIBUFSIZE; - } else { - nremain[r] = nremain_total; - nremain_total = 0; - } - } - if (rank == 0) { - points_write(nremain[0], buffer); - for (r = 1; r < nprocesses; ++r) { - (void) MPI_Recv(buffer, nremain[r] * 3, MPI_DOUBLE, r, nsent + 1, MPI_COMM_WORLD, MPI_STATUS_IGNORE); - points_write(nremain[r], buffer); - } - fflush(stdout); - } else - (void) MPI_Send(buffer, nremain[rank] * 3, MPI_DOUBLE, 0, nsent + 1, MPI_COMM_WORLD); - - free(nremain); - free(buffer); -#if defined(VIAFILE) - } else { - FILE* f = NULL; - char fname[STRBUFSIZE]; - - if (rank > 0) { - sprintf(fname, "nnbathy.rank%03d.tmp", rank); - f = fopen(fname, "w+"); - } - - ndone = 0; - while ((pout = preader_getpoint(pr)) != NULL) { - if (s->invariant) - minell_scalepoints(me, 1, pout); - else if (s->square) - points_scale(1, pout, k); - - if (s->linear) - lpi_interpolate_point(interpolator, pout); - else - nnpi_interpolate_point(interpolator, pout); - - if (s->invariant) - minell_rescalepoints(me, 1, pout); - else if (s->square) - points_scale(1, pout, 1.0 / k); - - if (rank == 0) - points_write(1, pout); - else - fwrite(pout, 1, sizeof(point), f); - - if (s->npoints > 0 && rank == 0) { - int quant = s->npoints / 1000; - - if (quant == 0 || ndone % quant == 0) { - char percent[STRBUFSIZE]; - - snprintf(percent, STRBUFSIZE, " %5.1f%% done\r", 100.0 * ndone / s->npoints); - fprintf(stderr, "%s", percent); - fflush(stderr); - } - } - ndone++; - } - if (rank > 0) { - fclose(f); - (void) MPI_Send(NULL, 0, MPI_INT, 0, rank, MPI_COMM_WORLD); - } else { - /* - * write temporary files to stdout - */ - for (r = 1; r < nprocesses; ++r) { - void* buffer = malloc(sizeof(point) * BUFSIZE); - int len; - - (void) MPI_Recv(NULL, 0, MPI_INT, r, r, MPI_COMM_WORLD, MPI_STATUS_IGNORE); - sprintf(fname, "nnbathy.rank%03d.tmp", r); - f = fopen(fname, "r"); - while ((len = fread(buffer, sizeof(point), BUFSIZE, f)) > 0) - points_write(len, buffer); - fclose(f); - file_delete(fname); - free(buffer); - } - fflush(stdout); - } - } -#endif /* VIAFILE */ - - if (s->npoints > 0 && rank == 0) - fprintf(stderr, " \r"); - - if (me != NULL) - minell_destroy(me); - if (s->linear) - lpi_destroy(interpolator); - else - nnpi_destroy(interpolator); - delaunay_destroy(d); - preader_destroy(pr); - specs_destroy(s); -#if !defined(USE_SHMEM) - free(pin); -#else - MPI_Win_free(&sm_win_inputdata); -#endif - - MPI_Finalize(); - - return 0; -} -#endif /* MPI */ +/****************************************************************************** + * + * File: nnbathy.c + * + * Created: 04/08/2000 + * + * Author: Pavel Sakov + * CSIRO Marine Research + * + * Purpose: Interpolate scalar 2D data in specified points using + * Natural Neighbours interpolation. + * + * Description: See usage(). + * + * The default vers ion of nnbathy allocates the whole output + * grid in memory before interpolating; the compilier flag + * NN_SERIAL compiles a bit more sophisticated version of that + * interpolates in output points on one-by-one basis. + * + * Revisions: 29/05/2006: introduced NN_SERIAL, see the description above + * 01/06/2006: moved flags and other command-line input into + * structure "specs" + * 05/05/2021: added MPI version + * 11/05/2021: added another communication algorithm when worker + * CPUs write results to "tiles" on disk rather than + * send them to master; it activates by defining + * VIAFILE + * + *****************************************************************************/ + +#include +#include +#include +#include +#include +#include +#include +#include +#if defined(MPI) +#include +#include +#if defined(VIAFILE) +#include "distribute.h" +#endif +#endif +#include "config.h" +#include "nan.h" +#include "minell.h" +#include "nn.h" +#include "delaunay.h" +#if defined(NN_SERIAL) || defined(MPI) +#include "preader.h" +#endif + +#if !defined(NN_SERIAL) && !defined(MPI) +#define NMAX 4096 +#endif +#define STRBUFSIZE 256 + +typedef struct { + int generate_points; + int thin; + int nointerp; + int linear; + int invariant; + int square; + char* fin; + char* fout; + int nx; + int ny; + int nxd; + int nyd; + double rmax; + double wmin; + double zoom; + double xmin; + double xmax; + double ymin; + double ymax; +#if defined(NN_SERIAL) || defined(MPI) + int npoints; +#endif +} specs; + +static void version() +{ + printf(" nnbathy/nn version %s\n", nn_version); + exit(0); +} + +static void usage() +{ + printf("Usage: nnbathy -i \n"); + printf(" -o | -n x [-c|-s] [-z ]\n"); + printf(" [-x ] [-xmin ] [-xmax ]\n"); + printf(" [-y ] [-ymin ] [-ymax ]\n"); + printf(" [-v|-T |-V]\n"); + printf(" [-D [x]]\n"); + printf(" [-L ]\n"); + printf(" [-N]\n"); + printf(" [-P alg={l|nn|ns}]\n"); + printf(" [-W ]\n"); +#if defined(NN_SERIAL) || defined(MPI) + printf(" [-%% [npoints]]\n"); +#endif + printf("Options:\n"); + printf(" -c -- scale internally so that the enclosing minimal ellipse\n"); + printf(" turns into a circle (this produces results invariant to\n"); + printf(" affine transformations)\n"); + printf(" -i -- three-column file with points to interpolate from\n"); + printf(" (use \"-i stdin\" or \"-i -\" for standard input)\n"); + printf(" -n x -- generate x output rectangular grid\n"); + printf(" -o -- two-column file with points to interpolate in\n"); + printf(" (use \"-o stdin\" or \"-o -\" for standard input)\n"); + printf(" -s -- scale internally so that Xmax - Xmin = Ymax - Ymin\n"); + printf(" -x -- set Xmin and Xmax for the output grid\n"); + printf(" -xmin -- set Xmin for the output grid\n"); + printf(" -xmax -- set Xmin for the output grid\n"); + printf(" -y -- set Ymin and Ymax for the output grid\n"); + printf(" -ymin -- set Ymin for the output grid\n"); + printf(" -ymax -- set Ymin for the output grid\n"); + printf(" -v -- verbose / version\n"); + printf(" -z -- zoom in (if < 1) or out ( > 1) (activated\n"); + printf(" only when used in conjunction with -n)\n"); + printf(" -D [x] -- thin input data by averaging X, Y and Z values within\n"); + printf(" every cell of the rectangular x grid (size\n"); + printf(" optional with -n)\n"); + printf(" -L -- thin input data by averaging X, Y and Z values within\n"); + printf(" clusters of consequitive input points such that the\n"); + printf(" sum of distances between points within each cluster\n"); + printf(" does not exceed the specified maximum value\n"); + printf(" -N -- do not interpolate, only pre-process\n"); + printf(" -P alg= -- use the following algorithm:\n"); + printf(" l -- linear interpolation\n"); + printf(" nn -- Sibson interpolation (default)\n"); + printf(" ns -- Non-Sibsonian interpolation\n"); + printf(" -T -- verbose; in weights output print weights associated\n"); + printf(" with this vertex only\n"); + printf(" -V -- very verbose / version\n"); + printf(" -W -- restricts extrapolation by assigning minimal allowed\n"); + printf(" weight for a vertex (normally \"-1\" or so; lower\n"); + printf(" values correspond to lower reliability; \"0\" means\n"); + printf(" no extrapolation)\n"); +#if defined(NN_SERIAL) || defined(MPI) + printf(" -%% [npoints] -- print percent of the work done to standard error;\n"); + printf(" npoints -- total number of points to be done (optional\n"); + printf(" with -n)\n"); +#endif + printf("Description:\n"); + printf(" `nnbathy' interpolates scalar 2D data in specified points using Natural\n"); + printf(" Neighbours interpolation. The interpolated values are written to standard\n"); + printf(" output.\n"); + + exit(0); +} + +static void quit(char* format, ...) +{ + va_list args; + + fflush(stdout); /* just in case, to have exit message last */ + + fprintf(stderr, " error: "); + va_start(args, format); + vfprintf(stderr, format, args); + va_end(args); + +#if defined(MPI) + MPI_Abort(MPI_COMM_WORLD, 1); /* kill all MPI jobs */ +#else + abort(); /* raise SIGABRT for debugging */ +#endif + exit(1); +} + +static double str2double(char* token, char* option) +{ + char* end = NULL; + double value = NaN; + + if (token != NULL) + value = strtod(token, &end); + + if (token == NULL || end == token) { + fprintf(stderr, " error: command-line option \"%s\": could not convert \"%s\" to double\n", option, (token != NULL) ? token : "NULL"); + + exit(1); + } + + return value; +} + +static specs* specs_create(void) +{ + specs* s = malloc(sizeof(specs)); + + s->generate_points = 0; + s->thin = 0; + s->nointerp = 0; + s->linear = 0; + s->invariant = 0; + s->square = 0; + s->fin = NULL; + s->fout = NULL; + s->nx = -1; + s->ny = -1; + s->nxd = -1; + s->nyd = -1; + s->rmax = NaN; + s->wmin = -DBL_MAX; + s->zoom = 1.0; + s->xmin = NaN; + s->xmax = NaN; + s->ymin = NaN; + s->ymax = NaN; +#if defined(NN_SERIAL) || defined(MPI) + s->npoints = 0; +#endif + return s; +} + +void specs_destroy(specs* s) +{ + free(s); +} + +static void parse_commandline(int argc, char* argv[], specs* s) +{ + int i; + + if (argc < 2) + usage(); + + i = 1; + while (i < argc) { + if (argv[i][0] != '-') + usage(); + + switch (argv[i][1]) { + case 'c': + i++; + s->square = 0; + s->invariant = 1; + break; + case 'i': + i++; + if (i >= argc) + quit("no file name found after -i\n"); + s->fin = argv[i]; + i++; + break; + case 'l': + i++; + s->linear = 1; + break; + case 'n': + i++; + s->fout = NULL; + s->generate_points = 1; + if (i >= argc) + quit("no grid dimensions found after -n\n"); + if (sscanf(argv[i], "%dx%d", &s->nx, &s->ny) != 2) + quit("could not read grid dimensions after \"-n\"\n"); +#if defined(NN_SERIAL) || defined(MPI) + if (s->nx <= 0 || s->ny <= 0) +#else + if (s->nx <= 0 || s->nx > NMAX || s->ny <= 0 || s->ny > NMAX) +#endif + quit("invalid size for output grid\n"); + i++; + break; + case 'o': + i++; + if (i >= argc) + quit("no file name found after -o\n"); + s->fout = argv[i]; + i++; + break; + case 's': + i++; + s->square = 1; + s->invariant = 0; + break; + case 'x': + if (argv[i][2] == 0) { + i++; + if (i >= argc) + quit("no xmin value found after -x\n"); + s->xmin = str2double(argv[i], "-x"); + i++; + if (i >= argc) + quit("no xmax value found after -x\n"); + s->xmax = str2double(argv[i], "-x"); + i++; + } else if (strcmp(argv[i], "-xmin") == 0) { + i++; + if (i >= argc) + quit("no value found after -xmin\n"); + s->xmin = str2double(argv[i], "-xmin"); + i++; + } else if (strcmp(argv[i], "-xmax") == 0) { + i++; + if (i >= argc) + quit("no value found after -xmax\n"); + s->xmax = str2double(argv[i], "-xmax"); + i++; + } else + usage(); + break; + case 'y': + if (argv[i][2] == 0) { + i++; + if (i >= argc) + quit("no ymin value found after -y\n"); + s->ymin = str2double(argv[i], "-y"); + i++; + if (i >= argc) + quit("no ymax value found after -y\n"); + s->ymax = str2double(argv[i], "-y"); + i++; + } else if (strcmp(argv[i], "-ymin") == 0) { + i++; + if (i >= argc) + quit("no value found after -ymin\n"); + s->ymin = str2double(argv[i], "-ymin"); + i++; + } else if (strcmp(argv[i], "-ymax") == 0) { + i++; + if (i >= argc) + quit("no value found after -ymax\n"); + s->ymax = str2double(argv[i], "-ymax"); + i++; + } else + usage(); + break; + case 'v': + i++; + nn_verbose = 1; + break; + case 'z': + i++; + if (i >= argc) + quit("no zoom value found after -z\n"); + s->zoom = str2double(argv[i], "-z"); + i++; + break; + case 'D': + i++; + s->thin = 1; + if (argc > i && argv[i][0] != '-') { + if (sscanf(argv[i], "%dx%d", &s->nxd, &s->nyd) != 2) + quit("could not read grid dimensions after \"-D\"\n"); + if (s->nxd <= 0 || s->nyd <= 0) + quit("invalid value for nx = %d or ny = %d after -D option\n", s->nxd, s->nyd); +#if !defined(NN_SERIAL) && !defined(MPI) + if (s->nxd > NMAX || s->nyd > NMAX) + quit("too big value after -D option (expected < %d)\n", NMAX); +#endif + i++; + } + break; + case 'L': + i++; + s->thin = 2; + if (i >= argc) + quit("no value found after -L\n"); + s->rmax = str2double(argv[i], "-L"); + i++; + break; + case 'N': + i++; + s->nointerp = 1; + break; + case 'P':{ + char delim[] = "="; + char prmstr[STRBUFSIZE] = ""; + char* token; + + i++; + if (i >= argc) + quit("no input found after -P\n"); + + if (strlen(argv[i]) >= STRBUFSIZE) + quit("could not interpret \"%s\" after -P option\n", argv[i]); + + strcpy(prmstr, argv[i]); + token = strtok(prmstr, delim); + if (token == NULL) + quit("could not interpret \"%s\" after -P option\n", argv[i]); + + if (strcmp(token, "alg") == 0) { + token = strtok(NULL, delim); + if (token == NULL) + quit("could not interpret \"%s\" after -P option\n", argv[i]); + + if (strcmp(token, "nn") == 0) { + nn_rule = SIBSON; + s->linear = 0; + } else if (strcmp(token, "ns") == 0) { + nn_rule = NON_SIBSONIAN; + s->linear = 0; + } else if (strcmp(token, "l") == 0) { + s->linear = 1; + } else + usage(); + } + + i++; + break; + } + case 'W': + i++; + if (i >= argc) + quit("no minimal allowed weight found after -W\n"); + s->wmin = str2double(argv[i], "-W"); + i++; + break; + case 'T': + i++; + if (i >= argc) + quit("no vertex id found after -T\n"); + nn_test_vertice = atoi(argv[i]); + nn_verbose = 1; + i++; + break; + case 'V': + i++; + nn_verbose = 2; + break; +#if defined(NN_SERIAL) || defined(MPI) + case '%': + i++; + if (i < argc && argv[i][0] != '-') { + s->npoints = atoi(argv[i]); + i++; + } else + s->npoints = 1; + break; +#endif + default: + usage(); + break; + } + } + + if (nn_verbose && argc == 2) + version(); + + if (s->thin) { + if (s->nxd == -1) + s->nxd = s->nx; + if (s->nyd == -1) + s->nyd = s->ny; + if (s->nxd <= 0 || s->nyd <= 0) + quit("invalid grid size for thinning\n"); + } +#if defined(NN_SERIAL) || defined(MPI) + if (s->npoints == 1) { + if (s->nx <= 0) + s->npoints = 0; + else + s->npoints = s->nx * s->ny; + } +#endif +} + +static void points_write(int n, point* points) +{ + int i; + + for (i = 0; i < n; ++i) { + point* p = &points[i]; + + if (isnan(p->z)) + printf("%.15g %.15g NaN\n", p->x, p->y); + else + printf("%.15g %.15g %.15g\n", p->x, p->y, p->z); + } +} + +#if defined(MPI) && defined(VIAFILE) +#include + +static void file_delete(char fname[]) +{ + int status = -1; + + status = unlink(fname); + if (status != 0) { + int errno_saved = errno; + + quit("could not delete file \"%s\": %s", fname, strerror(errno_saved)); + } +} +#endif + +#if !defined(MPI) +#if !defined(NN_SERIAL) +/* A simpler version of nnbathy that allocates the whole output grid in memory + */ +int main(int argc, char* argv[]) +{ + delaunay* d = NULL; + specs* s = specs_create(); + int nin = 0; + point* pin = NULL; + minell* me = NULL; + int nout = 0; + point* pout = NULL; + double k = NaN; + + parse_commandline(argc, argv, s); + + if (s->fin == NULL) + quit("no input data\n"); + + if (!s->generate_points && s->fout == NULL && !s->nointerp) + quit("no output grid specified\n"); + + points_read(s->fin, 3, &nin, &pin); + + if (nin < 3) + return 0; + + if (s->thin == 1) + points_thingrid(&nin, &pin, s->nxd, s->nyd); + else if (s->thin == 2) + points_thinlin(&nin, &pin, s->rmax); + + if (s->nointerp) { + points_write(nin, pin); + specs_destroy(s); + free(pin); + return 0; + } + + if (s->generate_points) { + /* + * points_getrange() only writes the proper values to those arguments + * which do not point to NaNs + */ + points_getrange(nin, pin, s->zoom, &s->xmin, &s->xmax, &s->ymin, &s->ymax); + points_generate(s->xmin, s->xmax, s->ymin, s->ymax, s->nx, s->ny, &nout, &pout); + } else + points_read(s->fout, 2, &nout, &pout); + + if (s->invariant) { + me = minell_build(nin, pin); + minell_scalepoints(me, nin, pin); + minell_scalepoints(me, nout, pout); + } else if (s->square) { + k = points_scaletosquare(nin, pin); + points_scale(nout, pout, k); + } + + d = delaunay_build(nin, pin, 0, NULL, 0, NULL); + + if (s->linear) + lpi_interpolate_points(d, nout, pout); + else + nnpi_interpolate_points(d, s->wmin, nout, pout); + + delaunay_destroy(d); + + if (s->invariant) + minell_rescalepoints(me, nout, pout); + else if (s->square) + points_scale(nout, pout, 1.0 / k); + + points_write(nout, pout); + + if (me != NULL) + minell_destroy(me); + specs_destroy(s); + free(pin); + free(pout); + + return 0; +} +#else /* NN_SERIAL */ +/* A version of nnbathy that interpolates output points serially. Can save a + * bit of memory for large output grids. + */ +int main(int argc, char* argv[]) +{ + specs* s = specs_create(); + int nin = 0; + point* pin = NULL; + minell* me = NULL; + point* pout = NULL; + double k = NaN; + preader* pr = NULL; + delaunay* d = NULL; + void* interpolator = NULL; + int ndone = 0; + + parse_commandline(argc, argv, s); + + if (s->fin == NULL) + quit("no input data\n"); + + if (!s->generate_points && s->fout == NULL && !s->nointerp) + quit("no output grid specified\n"); + + points_read(s->fin, 3, &nin, &pin); + + if (nin < 3) + return 0; + + if (s->thin == 1) + points_thingrid(&nin, &pin, s->nxd, s->nyd); + else if (s->thin == 2) + points_thinlin(&nin, &pin, s->rmax); + + if (s->nointerp) { + points_write(nin, pin); + specs_destroy(s); + free(pin); + return 0; + } + + if (s->generate_points) { + points_getrange(nin, pin, s->zoom, &s->xmin, &s->xmax, &s->ymin, &s->ymax); + pr = preader_create1(s->xmin, s->xmax, s->ymin, s->ymax, s->nx, s->ny, -1, -1); + } else + pr = preader_create2(s->fout); + + if (s->invariant) { + me = minell_build(nin, pin); + minell_scalepoints(me, nin, pin); + } else if (s->square) + k = points_scaletosquare(nin, pin); + + d = delaunay_build(nin, pin, 0, NULL, 0, NULL); + + if (s->linear) + interpolator = lpi_build(d); + else { + interpolator = nnpi_create(d); + nnpi_setwmin(interpolator, s->wmin); + } + + while ((pout = preader_getpoint(pr)) != NULL) { + if (s->invariant) + minell_scalepoints(me, 1, pout); + else if (s->square) + points_scale(1, pout, k); + + if (s->linear) + lpi_interpolate_point(interpolator, pout); + else + nnpi_interpolate_point(interpolator, pout); + + if (s->invariant) + minell_rescalepoints(me, 1, pout); + else if (s->square) + points_scale(1, pout, 1.0 / k); + + points_write(1, pout); + ndone++; + + if (s->npoints > 0) { + int quant = s->npoints / 1000; + + if (quant == 0 || ndone % quant == 0) { + char percent[STRBUFSIZE]; + + snprintf(percent, STRBUFSIZE, " %5.1f%% done\r", 100.0 * ndone / s->npoints); + fprintf(stderr, "%s", percent); + fflush(stderr); + } + } + } + if (s->npoints > 0) + fprintf(stderr, " \r"); + + if (me != NULL) + minell_destroy(me); + if (s->linear) + lpi_destroy(interpolator); + else + nnpi_destroy(interpolator); + delaunay_destroy(d); + preader_destroy(pr); + specs_destroy(s); + free(pin); + + return 0; +} +#endif +#else /* MPI */ +/* + * the number of points assigned to each cpu to work on at a time + */ +#define MPIBUFSIZE 1024 +/* + * the maximal number of cpus when master interpolates as other workers; + * otherwise it is used for collecting and writing results only + */ +#define N_IDLEMASTER 3 +#if defined(VIAFILE) +#define BUFSIZE 4096 +#endif +int main(int argc, char* argv[]) +{ + specs* s = specs_create(); + int nin = 0; + point* pin = NULL; + minell* me = NULL; + point* pout = NULL; + double k = NaN; + preader* pr = NULL; + +#if defined(USE_SHMEM) + MPI_Win sm_win_inputdata = MPI_WIN_NULL; +#endif + + delaunay* d = NULL; + void* interpolator = NULL; + + point* buffer = NULL; + int nactiveprocesses, firstactiveprocess, ndone, nsent; + + int* nremain = NULL; + int nremain_total, r; + + parse_commandline(argc, argv, s); + + MPI_Init(&argc, &argv); + MPI_Comm_size(MPI_COMM_WORLD, &nprocesses); + MPI_Comm_rank(MPI_COMM_WORLD, &rank); + if (nn_verbose && rank == 0) + fprintf(stderr, " MPI: initialised %d process(es)\n", nprocesses); + MPI_Barrier(MPI_COMM_WORLD); +#if defined(USE_SHMEM) + { + (void) MPI_Comm_split_type(MPI_COMM_WORLD, MPI_COMM_TYPE_SHARED, 0, MPI_INFO_NULL, &sm_comm); + (void) MPI_Comm_rank(sm_comm, &sm_comm_rank); + (void) MPI_Comm_size(sm_comm, &sm_comm_size); + } +#endif + + if (s->fin == NULL) + quit("no input data\n"); + + if (!s->generate_points && s->fout == NULL && !s->nointerp) + quit("no output grid specified\n"); + +#if defined(USE_SHMEM) + if (sm_comm_rank == 0) +#endif + points_read(s->fin, 3, &nin, &pin); + +#if defined(USE_SHMEM) + /* + * Put input data into shared memory. + */ + { + MPI_Aint size; + void* data = NULL; + + (void) MPI_Bcast(&nin, 1, MPI_INT, 0, MPI_COMM_WORLD); + + assert(sizeof(MPI_Aint) == sizeof(size_t)); + size = nin * sizeof(point); + (void) MPI_Win_allocate_shared((sm_comm_rank == 0) ? size : 0, sizeof(point), MPI_INFO_NULL, sm_comm, &data, &sm_win_inputdata); + if (sm_comm_rank == 0) { + memcpy(data, pin, size); + free(pin); + pin = data; + if (nn_verbose) + fprintf(stderr, " MPI: put %u bytes of input data into shared memory\n", (unsigned int) size); + } else { + int disp_unit; + MPI_Aint my_size; + + MPI_Win_shared_query(sm_win_inputdata, 0, &my_size, &disp_unit, &pin); + assert(my_size == size); + assert(disp_unit == sizeof(point)); + assert(pin != NULL); + } + MPI_Win_fence(0, sm_win_inputdata); + MPI_Barrier(sm_comm); + } +#endif + + if (nin < 3) + return 0; + + if (s->thin == 1) + points_thingrid(&nin, &pin, s->nxd, s->nyd); + else if (s->thin == 2) + points_thinlin(&nin, &pin, s->rmax); + + if (s->nointerp) { + points_write(nin, pin); + specs_destroy(s); + free(pin); + return 0; + } + + if (s->generate_points) { + points_getrange(nin, pin, s->zoom, &s->xmin, &s->xmax, &s->ymin, &s->ymax); +#if !defined(VIAFILE) + pr = preader_create1(s->xmin, s->xmax, s->ymin, s->ymax, s->nx, s->ny, -1, -1); +#else + distribute_iterations(0, s->ny - 1, nprocesses, rank); + pr = preader_create1(s->xmin, s->xmax, s->ymin, s->ymax, s->nx, s->ny, my_first_iteration, my_last_iteration); + s->npoints = s->nx * (my_last_iteration - my_first_iteration + 1); +#endif + } else + pr = preader_create2(s->fout); + + if (s->invariant) { + me = minell_build(nin, pin); + minell_scalepoints(me, nin, pin); + } else if (s->square) + k = points_scaletosquare(nin, pin); + + d = delaunay_build(nin, pin, 0, NULL, 0, NULL); + + if (s->linear) + interpolator = lpi_build(d); + else { + interpolator = nnpi_create(d); + nnpi_setwmin(interpolator, s->wmin); + } + + /* + * interpolate + */ +#if defined(VIAFILE) + if (!preader_istype1(pr)) { +#endif + ndone = 0; /* number of points processed */ + nsent = 0; /* number of exchange sessions completed */ + nactiveprocesses = (nprocesses <= N_IDLEMASTER) ? nprocesses : nprocesses - 1; + firstactiveprocess = (nprocesses <= N_IDLEMASTER) ? 0 : 1; + buffer = malloc(MPIBUFSIZE * sizeof(point)); + while ((pout = preader_getpoint(pr)) != NULL) { + int activeprocess, iter; + + activeprocess = (ndone / MPIBUFSIZE) % nactiveprocesses + firstactiveprocess; + + if (activeprocess != rank) + goto postprocess; + + if (s->invariant) + minell_scalepoints(me, 1, pout); + else if (s->square) + points_scale(1, pout, k); + + if (s->linear) + lpi_interpolate_point(interpolator, pout); + else + nnpi_interpolate_point(interpolator, pout); + + if (s->invariant) + minell_rescalepoints(me, 1, pout); + else if (s->square) + points_scale(1, pout, 1.0 / k); + + buffer[ndone % MPIBUFSIZE] = *pout; + + postprocess: + ndone++; + + if (rank == 0 && s->npoints > 0) { + int quant = s->npoints / 1000; + + if (quant == 0 || ndone % quant == 0) { + char percent[STRBUFSIZE]; + + snprintf(percent, STRBUFSIZE, " %5.1f%% done\r", 100.0 * ndone / s->npoints); + fprintf(stderr, "%s", percent); + fflush(stderr); + } + } + + iter = ndone / MPIBUFSIZE / nactiveprocesses; + if (iter > nsent) { + /* + * start exchange session + */ + if (rank == 0) { + int r; + + if (firstactiveprocess == 0) + points_write(MPIBUFSIZE, buffer); + for (r = 1; r < nprocesses; ++r) { + (void) MPI_Recv(buffer, MPIBUFSIZE * 3, MPI_DOUBLE, r, iter, MPI_COMM_WORLD, MPI_STATUS_IGNORE); + points_write(MPIBUFSIZE, buffer); + } + } else + (void) MPI_Send(buffer, MPIBUFSIZE * 3, MPI_DOUBLE, 0, iter, MPI_COMM_WORLD); + nsent = iter; + } + } + + /* + * write remaining results + */ + nremain = calloc(nprocesses, sizeof(int)); + nremain_total = ndone - nsent * nactiveprocesses * MPIBUFSIZE; + for (r = firstactiveprocess; r < nprocesses; ++r) { + if (nremain_total >= MPIBUFSIZE) { + nremain[r] = MPIBUFSIZE; + nremain_total -= MPIBUFSIZE; + } else { + nremain[r] = nremain_total; + nremain_total = 0; + } + } + if (rank == 0) { + points_write(nremain[0], buffer); + for (r = 1; r < nprocesses; ++r) { + (void) MPI_Recv(buffer, nremain[r] * 3, MPI_DOUBLE, r, nsent + 1, MPI_COMM_WORLD, MPI_STATUS_IGNORE); + points_write(nremain[r], buffer); + } + fflush(stdout); + } else + (void) MPI_Send(buffer, nremain[rank] * 3, MPI_DOUBLE, 0, nsent + 1, MPI_COMM_WORLD); + + free(nremain); + free(buffer); +#if defined(VIAFILE) + } else { + FILE* f = NULL; + char fname[STRBUFSIZE]; + + if (rank > 0) { + sprintf(fname, "nnbathy.rank%03d.tmp", rank); + f = fopen(fname, "w+"); + } + + ndone = 0; + while ((pout = preader_getpoint(pr)) != NULL) { + if (s->invariant) + minell_scalepoints(me, 1, pout); + else if (s->square) + points_scale(1, pout, k); + + if (s->linear) + lpi_interpolate_point(interpolator, pout); + else + nnpi_interpolate_point(interpolator, pout); + + if (s->invariant) + minell_rescalepoints(me, 1, pout); + else if (s->square) + points_scale(1, pout, 1.0 / k); + + if (rank == 0) + points_write(1, pout); + else + fwrite(pout, 1, sizeof(point), f); + + if (s->npoints > 0 && rank == 0) { + int quant = s->npoints / 1000; + + if (quant == 0 || ndone % quant == 0) { + char percent[STRBUFSIZE]; + + snprintf(percent, STRBUFSIZE, " %5.1f%% done\r", 100.0 * ndone / s->npoints); + fprintf(stderr, "%s", percent); + fflush(stderr); + } + } + ndone++; + } + if (rank > 0) { + fclose(f); + (void) MPI_Send(NULL, 0, MPI_INT, 0, rank, MPI_COMM_WORLD); + } else { + /* + * write temporary files to stdout + */ + for (r = 1; r < nprocesses; ++r) { + void* buffer = malloc(sizeof(point) * BUFSIZE); + int len; + + (void) MPI_Recv(NULL, 0, MPI_INT, r, r, MPI_COMM_WORLD, MPI_STATUS_IGNORE); + sprintf(fname, "nnbathy.rank%03d.tmp", r); + f = fopen(fname, "r"); + while ((len = fread(buffer, sizeof(point), BUFSIZE, f)) > 0) + points_write(len, buffer); + fclose(f); + file_delete(fname); + free(buffer); + } + fflush(stdout); + } + } +#endif /* VIAFILE */ + + if (s->npoints > 0 && rank == 0) + fprintf(stderr, " \r"); + + if (me != NULL) + minell_destroy(me); + if (s->linear) + lpi_destroy(interpolator); + else + nnpi_destroy(interpolator); + delaunay_destroy(d); + preader_destroy(pr); + specs_destroy(s); +#if !defined(USE_SHMEM) + free(pin); +#else + MPI_Win_free(&sm_win_inputdata); +#endif + + MPI_Finalize(); + + return 0; +} +#endif /* MPI */ diff --git a/autoarray/util/nn/src/nn/nncommon-vulnerable.c b/autoarray/util/nn/src/nn/nncommon-vulnerable.c index f93a66744..6f3d7b9ab 100644 --- a/autoarray/util/nn/src/nn/nncommon-vulnerable.c +++ b/autoarray/util/nn/src/nn/nncommon-vulnerable.c @@ -1,90 +1,90 @@ -/****************************************************************************** - * - * File: nncommon-vulnerable.c - * - * Created: 05/08/2004 - * - * Author: Pavel Sakov - * CSIRO Marine Research - * - * Purpose: Stuff for NN interpolation library found to be vulnerable - * from -O2 optimisation by gcc. - * - * Description: None - * - * Revisions: 07/04/2005 PS: Changed numerics to force underflow when - * there is a substantial loss of precision. - * 15/04/2005 PS: Further improved numerics. Looks like it - * became pretty good, so I had to split circle_build() into - * circle_build1() -- for general use, and circle_build2() -- - * for use in nnpi_triangle_process() (it signals loss of - * precision in Watson's algorithm). - * - *****************************************************************************/ - -#include -#include -#include "nan.h" -#include "nn.h" -#include "nncommon.h" - -#define MULT 1.0e+7 - -int circle_build1(circle* c, point* p1, point* p2, point* p3) -{ - double x2 = p2->x - p1->x; - double y2 = p2->y - p1->y; - double x3 = p3->x - p1->x; - double y3 = p3->y - p1->y; - - double denom = x2 * y3 - y2 * x3; - double frac; - - if (denom == 0.0) { - c->x = NaN; - c->y = NaN; - c->r = NaN; - return 0; - } - - frac = (x2 * (x2 - x3) + y2 * (y2 - y3)) / denom; - c->x = (x3 + frac * y3) / 2.0; - c->y = (y3 - frac * x3) / 2.0; - c->r = hypot(c->x, c->y); - c->x += p1->x; - c->y += p1->y; - - return 1; -} - -int circle_build2(circle* c, point* p1, point* p2, point* p3) -{ - double x2 = p2->x - p1->x; - double y2 = p2->y - p1->y; - double x3 = p3->x - p1->x; - double y3 = p3->y - p1->y; - - double denom = x2 * y3 - y2 * x3; - double frac; - - if (denom == 0) { - c->x = NaN; - c->y = NaN; - c->r = NaN; - return 0; - } - - frac = (x2 * (x2 - x3) + y2 * (y2 - y3)) / denom; - c->x = (x3 + frac * y3) / 2.0; - c->y = (y3 - frac * x3) / 2.0; - c->r = hypot(c->x, c->y); - if (c->r > (fabs(x2) + fabs(x3) + fabs(y2) + fabs(y3)) * MULT) { - c->x = NaN; - c->y = NaN; - } else { - c->x += p1->x; - c->y += p1->y; - } - - return 1; -} +/****************************************************************************** + * + * File: nncommon-vulnerable.c + * + * Created: 05/08/2004 + * + * Author: Pavel Sakov + * CSIRO Marine Research + * + * Purpose: Stuff for NN interpolation library found to be vulnerable + * from -O2 optimisation by gcc. + * + * Description: None + * + * Revisions: 07/04/2005 PS: Changed numerics to force underflow when + * there is a substantial loss of precision. + * 15/04/2005 PS: Further improved numerics. Looks like it + * became pretty good, so I had to split circle_build() into + * circle_build1() -- for general use, and circle_build2() -- + * for use in nnpi_triangle_process() (it signals loss of + * precision in Watson's algorithm). + * + *****************************************************************************/ + +#include +#include +#include "nan.h" +#include "nn.h" +#include "nncommon.h" + +#define MULT 1.0e+7 + +int circle_build1(circle* c, point* p1, point* p2, point* p3) +{ + double x2 = p2->x - p1->x; + double y2 = p2->y - p1->y; + double x3 = p3->x - p1->x; + double y3 = p3->y - p1->y; + + double denom = x2 * y3 - y2 * x3; + double frac; + + if (denom == 0.0) { + c->x = NaN; + c->y = NaN; + c->r = NaN; + return 0; + } + + frac = (x2 * (x2 - x3) + y2 * (y2 - y3)) / denom; + c->x = (x3 + frac * y3) / 2.0; + c->y = (y3 - frac * x3) / 2.0; + c->r = hypot(c->x, c->y); + c->x += p1->x; + c->y += p1->y; + + return 1; +} + +int circle_build2(circle* c, point* p1, point* p2, point* p3) +{ + double x2 = p2->x - p1->x; + double y2 = p2->y - p1->y; + double x3 = p3->x - p1->x; + double y3 = p3->y - p1->y; + + double denom = x2 * y3 - y2 * x3; + double frac; + + if (denom == 0) { + c->x = NaN; + c->y = NaN; + c->r = NaN; + return 0; + } + + frac = (x2 * (x2 - x3) + y2 * (y2 - y3)) / denom; + c->x = (x3 + frac * y3) / 2.0; + c->y = (y3 - frac * x3) / 2.0; + c->r = hypot(c->x, c->y); + if (c->r > (fabs(x2) + fabs(x3) + fabs(y2) + fabs(y3)) * MULT) { + c->x = NaN; + c->y = NaN; + } else { + c->x += p1->x; + c->y += p1->y; + } + + return 1; +} diff --git a/autoarray/util/nn/src/nn/nncommon.c b/autoarray/util/nn/src/nn/nncommon.c index db373d602..968c4c798 100644 --- a/autoarray/util/nn/src/nn/nncommon.c +++ b/autoarray/util/nn/src/nn/nncommon.c @@ -1,565 +1,565 @@ -/****************************************************************************** - * - * File: nncommon.c - * - * Created: 04/08/2000 - * - * Author: Pavel Sakov - * CSIRO Marine Research - * - * Purpose: Common stuff for NN interpolation library - * - * Description: None - * - * Revisions: 15/11/2002 PS: Changed name from "utils.c" - * 28/02/2003 PS: Modified points_read() to do the job without - * rewinding the file. This allows to read from stdin when - * necessary. - * 09/04/2003 PS: Modified points_read() to read from a - * file specified by name, not by handle. - * 05/08/2004 PS: Moved circle_build() to - * nncommon-vulnerable.c. - * - *****************************************************************************/ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include "config.h" -#include "nan.h" -#include "nn.h" -#include "nncommon.h" - -#define BUFSIZE 1024 -#define EPS 1.0e-15 -#define NALLOCATED_START 1024 - -int nn_verbose = 0; -int nn_test_vertice = -1; -NN_RULE nn_rule = SIBSON; - -void nn_quit(char* format, ...) -{ - va_list args; - - fflush(stdout); /* just in case, to have the exit message - * last */ - - fprintf(stderr, " error: libnn: "); - va_start(args, format); - vfprintf(stderr, format, args); - va_end(args); - - exit(1); -} - -int circle_contains(circle* c, point* p) -{ - return hypot(c->x - p->x, c->y - p->y) <= c->r; -} - -/* Smoothes the input point array by averaging the input x, y and z values - * for each cell within virtual rectangular nx by ny grid. The corners of the - * grid are created from min and max values of the input array. It also frees - * the original array and returns results and new dimension via original - * data and size pointers. - * - * @param pn Pointer to number of points (input/output) - * @param ppoints Pointer to array of points (input/output) [*pn] - * @param nx Number of x nodes in decimation - * @param ny Number of y nodes in decimation - */ -void points_thingrid(int* pn, point** ppoints, int nx, int ny) -{ - int n = *pn; - point* points = *ppoints; - double xmin = DBL_MAX; - double xmax = -DBL_MAX; - double ymin = DBL_MAX; - double ymax = -DBL_MAX; - int nxy = nx * ny; - double* sumx = calloc(nxy, sizeof(double)); - double* sumy = calloc(nxy, sizeof(double)); - double* sumz = calloc(nxy, sizeof(double)); - int* count = calloc(nxy, sizeof(int)); - double stepx = 0.0; - double stepy = 0.0; - int nnew = 0; - point* pointsnew = NULL; - int i, j, ii, index; - - if (nn_verbose) - fprintf(stderr, "thinned: %d points -> ", *pn); - - if (nx < 1 || ny < 1) { - free(points); - *ppoints = NULL; - *pn = 0; - if (nn_verbose) - fprintf(stderr, "0 points"); - return; - } - - for (ii = 0; ii < n; ++ii) { - point* p = &points[ii]; - - if (p->x < xmin) - xmin = p->x; - if (p->x > xmax) - xmax = p->x; - if (p->y < ymin) - ymin = p->y; - if (p->y > ymax) - ymax = p->y; - } - - stepx = (nx > 1) ? (xmax - xmin) / nx : 0.0; - stepy = (ny > 1) ? (ymax - ymin) / ny : 0.0; - - for (ii = 0; ii < n; ++ii) { - point* p = &points[ii]; - int index; - - if (nx == 1) - i = 0; - else { - double fi = (p->x - xmin) / stepx; - - if (fabs(rint(fi) - fi) < EPS) - i = rint(fi); - else - i = (int) floor(fi); - } - if (ny == 1) - j = 0; - else { - double fj = (p->y - ymin) / stepy; - - if (fabs(rint(fj) - fj) < EPS) - j = rint(fj); - else - j = (int) floor(fj); - } - - if (i == nx) - i--; - if (j == ny) - j--; - index = i + j * nx; - sumx[index] += p->x; - sumy[index] += p->y; - sumz[index] += p->z; - count[index]++; - } - - for (j = 0; j < ny; ++j) { - for (i = 0; i < nx; ++i) { - int index = i + j * nx; - - if (count[index] > 0) - nnew++; - } - } - - pointsnew = malloc(nnew * sizeof(point)); - - for (j = 0, index = 0, ii = 0; j < ny; ++j) { - for (i = 0; i < nx; ++i, ++index) { - int nn = count[index]; - - if (nn > 0) { - point* p = &pointsnew[ii]; - - p->x = sumx[index] / nn; - p->y = sumy[index] / nn; - p->z = sumz[index] / nn; - ii++; - } - } - } - - if (nn_verbose) - fprintf(stderr, "%d points\n", nnew); - - free(sumx); - free(sumy); - free(sumz); - free(count); - - free(points); - *ppoints = pointsnew; - *pn = nnew; -} - -/* Smoothes the input point array by averaging the input data (X,Y and Z - * values) until the sum of the distances between points does not exceed the - * specified maximum value. It also frees the original array and returns - * results and new dimension via original data and size pointers. - * - * @param pn Pointer to number of points (input/output) - * @param ppoints Pointer to array of points (input/output) [*pn] - * @param rmax Maximum allowed accumulated distance - */ -void points_thinlin(int* nin, point** pin, double rmax) -{ - int nout = 0; - int nallocated = NALLOCATED_START; - point* pout = malloc(nallocated * sizeof(point)); - double n = 0; - double sum_x = 0.0; - double sum_y = 0.0; - double sum_z = 0.0; - double sum_r = 0.0; - point* pprev = NULL; - int i; - - for (i = 0; i < *nin; ++i) { - point* p = &(*pin)[i]; - double dist; - - if (isnan(p->x) || isnan(p->y) || isnan(p->z)) { - if (pprev != NULL) { - /* - * write point - */ - if (nout == nallocated) { - nallocated = nallocated * 2; - pout = realloc(pout, nallocated * sizeof(point)); - } - pout[nout].x = sum_x / (double) n; - pout[nout].y = sum_y / (double) n; - pout[nout].z = sum_z / (double) n; - nout++; - /* - * reset cluster - */ - pprev = NULL; - } - continue; - } - - /* - * init cluster - */ - if (pprev == NULL) { - sum_x = p->x; - sum_y = p->y; - sum_z = p->z; - sum_r = 0.0; - n = 1; - pprev = p; - continue; - } - - dist = hypot(p->x - pprev->x, p->y - pprev->y); - if (sum_r + dist > rmax) { - /* - * write point - */ - if (nout == nallocated) { - nallocated = nallocated * 2; - pout = realloc(pout, nallocated * sizeof(point)); - } - pout[nout].x = sum_x / (double) n; - pout[nout].y = sum_y / (double) n; - pout[nout].z = sum_z / (double) n; - nout++; - /* - * reset cluster - */ - pprev = NULL; - } else { - /* - * add to cluster - */ - sum_x += p->x; - sum_y += p->y; - sum_z += p->z; - sum_r += dist; - n++; - pprev = p; - } - } - - free(*pin); - *pin = realloc(pout, nout * sizeof(point)); - *nin = nout; -} - -/* Calculates X and/or Y ranges of the input array of points. If necessary, - * adjusts the range according to the zoom value. - * - * @param n Number of points - * @param points Array of points - * @param xmin Min X value if *xmin = NaN on input, not changed otherwise - * @param xmax Max X value if *xmax = NaN on input, not changed otherwise - * @param ymin Min Y value if *ymin = NaN on input, not changed otherwise - * @param ymax Max Y value if *ymax = NaN on input, not changed otherwise - */ -void points_getrange(int n, point points[], double zoom, double* xmin, double* xmax, double* ymin, double* ymax) -{ - int i; - - if (xmin != NULL) { - if (isnan(*xmin)) - *xmin = DBL_MAX; - else - xmin = NULL; - } - if (xmax != NULL) { - if (isnan(*xmax)) - *xmax = -DBL_MAX; - else - xmax = NULL; - } - if (ymin != NULL) { - if (isnan(*ymin)) - *ymin = DBL_MAX; - else - ymin = NULL; - } - if (ymax != NULL) { - if (isnan(*ymax)) - *ymax = -DBL_MAX; - else - ymax = NULL; - } - - for (i = 0; i < n; ++i) { - point* p = &points[i]; - - if (xmin != NULL && p->x < *xmin) - *xmin = p->x; - if (xmax != NULL && p->x > *xmax) - *xmax = p->x; - if (ymin != NULL && p->y < *ymin) - *ymin = p->y; - if (ymax != NULL && p->y > *ymax) - *ymax = p->y; - } - - if (isnan(zoom) || zoom <= 0.0 || zoom == 1.0) - return; - - if (xmin != NULL && xmax != NULL) { - double xdiff2 = (*xmax - *xmin) / 2.0; - double xav = (*xmax + *xmin) / 2.0; - - *xmin = xav - xdiff2 * zoom; - *xmax = xav + xdiff2 * zoom; - } - if (ymin != NULL && ymax != NULL) { - double ydiff2 = (*ymax - *ymin) / 2.0; - double yav = (*ymax + *ymin) / 2.0; - - *ymin = yav - ydiff2 * zoom; - *ymax = yav + ydiff2 * zoom; - } -} - -/* Generates rectangular grid nx by ny using specified min and max x and y - * values. Allocates space for the output point array, be sure to free it - * when necessary! - * - * @param xmin Min x value - * @param xmax Max x value - * @param ymin Min y value - * @param ymax Max y value - * @param nx Number of x nodes - * @param ny Number of y nodes - * @param nout Pointer to number of output points - * @param pout Pointer to array of output points [*nout] - */ -void points_generate(double xmin, double xmax, double ymin, double ymax, int nx, int ny, int* nout, point** pout) -{ - double stepx, stepy; - double x0, xx, yy; - int i, j, ii; - - if (nx < 1 || ny < 1) { - *pout = NULL; - *nout = 0; - return; - } - - *nout = nx * ny; - *pout = malloc(*nout * sizeof(point)); - - stepx = (nx > 1) ? (xmax - xmin) / (nx - 1) : 0.0; - stepy = (ny > 1) ? (ymax - ymin) / (ny - 1) : 0.0; - x0 = (nx > 1) ? xmin : (xmin + xmax) / 2.0; - yy = (ny > 1) ? ymin : (ymin + ymax) / 2.0; - - ii = 0; - for (j = 0; j < ny; ++j) { - xx = x0; - for (i = 0; i < nx; ++i) { - point* p = &(*pout)[ii]; - - p->x = xx; - p->y = yy; - xx += stepx; - ii++; - } - yy += stepy; - } -} - -int str2double(char* token, double* value) -{ - char* end = NULL; - - if (token == NULL) { - *value = NaN; - return 0; - } - - *value = strtod(token, &end); - - if (end == token) { - *value = NaN; - return 0; - } - - return 1; -} - -/* Reads array of points from a columnar file. - * - * @param fname File name (can be "stdin" for standard input) - * @param dim Number of dimensions (must be 2 or 3) - * @param n Pointer to number of points (output) - * @param points Pointer to array of points [*n] (output) (to be freed) - */ -void points_read(char* fname, int dim, int* n, point** points) -{ - FILE* f = NULL; - int nallocated = NALLOCATED_START; - char buf[BUFSIZE]; - char seps[] = " ,;\t"; - char* token; - - if (dim < 2 || dim > 3) { - *n = 0; - *points = NULL; - return; - } - - if (fname == NULL) - f = stdin; - else { - if (strcmp(fname, "stdin") == 0 || strcmp(fname, "-") == 0) - f = stdin; - else { - f = fopen(fname, "r"); - if (f == NULL) - nn_quit("%s: %s\n", fname, strerror(errno)); - } - } - - *points = malloc(nallocated * sizeof(point)); - *n = 0; - while (fgets(buf, BUFSIZE, f) != NULL) { - point* p; - - if (*n == nallocated) { - nallocated *= 2; - *points = realloc(*points, nallocated * sizeof(point)); - } - - p = &(*points)[*n]; - - if (buf[0] == '#') - continue; - if ((token = strtok(buf, seps)) == NULL) - continue; - if (!str2double(token, &p->x)) - continue; - if ((token = strtok(NULL, seps)) == NULL) - continue; - if (!str2double(token, &p->y)) - continue; - if (dim == 2) - p->z = NaN; - else { - if ((token = strtok(NULL, seps)) == NULL) - continue; - if (!str2double(token, &p->z)) - continue; - } - (*n)++; - } - - if (*n == 0) { - free(*points); - *points = NULL; - } else - *points = realloc(*points, *n * sizeof(point)); - - if (f != stdin) - if (fclose(f) != 0) - nn_quit("%s: %s\n", fname, strerror(errno)); -} - -/** Scales Y coordinate so that the resulting set fits into square: - ** xmax - xmin = ymax - ymin - * - * @param n Number of points - * @param points The points to scale - * @return Y axis compression coefficient - */ -double points_scaletosquare(int n, point* points) -{ - double xmin, ymin, xmax, ymax; - double k; - int i; - - if (n <= 0) - return NaN; - - xmin = xmax = points[0].x; - ymin = ymax = points[0].y; - - for (i = 1; i < n; ++i) { - point* p = &points[i]; - - if (p->x < xmin) - xmin = p->x; - else if (p->x > xmax) - xmax = p->x; - if (p->y < ymin) - ymin = p->y; - else if (p->y > ymax) - ymax = p->y; - } - - if (xmin == xmax || ymin == ymax) - return NaN; - else - k = (ymax - ymin) / (xmax - xmin); - - for (i = 0; i < n; ++i) - points[i].y /= k; - - return k; -} - -/** Compresses Y domain by a given multiple. - * - * @param n Number of points - * @param points The points to scale - * @param Y axis compression coefficient as returned by points_scaletosquare() - */ -void points_scale(int n, point* points, double k) -{ - int i; - - for (i = 0; i < n; ++i) - points[i].y /= k; -} +/****************************************************************************** + * + * File: nncommon.c + * + * Created: 04/08/2000 + * + * Author: Pavel Sakov + * CSIRO Marine Research + * + * Purpose: Common stuff for NN interpolation library + * + * Description: None + * + * Revisions: 15/11/2002 PS: Changed name from "utils.c" + * 28/02/2003 PS: Modified points_read() to do the job without + * rewinding the file. This allows to read from stdin when + * necessary. + * 09/04/2003 PS: Modified points_read() to read from a + * file specified by name, not by handle. + * 05/08/2004 PS: Moved circle_build() to + * nncommon-vulnerable.c. + * + *****************************************************************************/ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "config.h" +#include "nan.h" +#include "nn.h" +#include "nncommon.h" + +#define BUFSIZE 1024 +#define EPS 1.0e-15 +#define NALLOCATED_START 1024 + +int nn_verbose = 0; +int nn_test_vertice = -1; +NN_RULE nn_rule = SIBSON; + +void nn_quit(char* format, ...) +{ + va_list args; + + fflush(stdout); /* just in case, to have the exit message + * last */ + + fprintf(stderr, " error: libnn: "); + va_start(args, format); + vfprintf(stderr, format, args); + va_end(args); + + exit(1); +} + +int circle_contains(circle* c, point* p) +{ + return hypot(c->x - p->x, c->y - p->y) <= c->r; +} + +/* Smoothes the input point array by averaging the input x, y and z values + * for each cell within virtual rectangular nx by ny grid. The corners of the + * grid are created from min and max values of the input array. It also frees + * the original array and returns results and new dimension via original + * data and size pointers. + * + * @param pn Pointer to number of points (input/output) + * @param ppoints Pointer to array of points (input/output) [*pn] + * @param nx Number of x nodes in decimation + * @param ny Number of y nodes in decimation + */ +void points_thingrid(int* pn, point** ppoints, int nx, int ny) +{ + int n = *pn; + point* points = *ppoints; + double xmin = DBL_MAX; + double xmax = -DBL_MAX; + double ymin = DBL_MAX; + double ymax = -DBL_MAX; + int nxy = nx * ny; + double* sumx = calloc(nxy, sizeof(double)); + double* sumy = calloc(nxy, sizeof(double)); + double* sumz = calloc(nxy, sizeof(double)); + int* count = calloc(nxy, sizeof(int)); + double stepx = 0.0; + double stepy = 0.0; + int nnew = 0; + point* pointsnew = NULL; + int i, j, ii, index; + + if (nn_verbose) + fprintf(stderr, "thinned: %d points -> ", *pn); + + if (nx < 1 || ny < 1) { + free(points); + *ppoints = NULL; + *pn = 0; + if (nn_verbose) + fprintf(stderr, "0 points"); + return; + } + + for (ii = 0; ii < n; ++ii) { + point* p = &points[ii]; + + if (p->x < xmin) + xmin = p->x; + if (p->x > xmax) + xmax = p->x; + if (p->y < ymin) + ymin = p->y; + if (p->y > ymax) + ymax = p->y; + } + + stepx = (nx > 1) ? (xmax - xmin) / nx : 0.0; + stepy = (ny > 1) ? (ymax - ymin) / ny : 0.0; + + for (ii = 0; ii < n; ++ii) { + point* p = &points[ii]; + int index; + + if (nx == 1) + i = 0; + else { + double fi = (p->x - xmin) / stepx; + + if (fabs(rint(fi) - fi) < EPS) + i = rint(fi); + else + i = (int) floor(fi); + } + if (ny == 1) + j = 0; + else { + double fj = (p->y - ymin) / stepy; + + if (fabs(rint(fj) - fj) < EPS) + j = rint(fj); + else + j = (int) floor(fj); + } + + if (i == nx) + i--; + if (j == ny) + j--; + index = i + j * nx; + sumx[index] += p->x; + sumy[index] += p->y; + sumz[index] += p->z; + count[index]++; + } + + for (j = 0; j < ny; ++j) { + for (i = 0; i < nx; ++i) { + int index = i + j * nx; + + if (count[index] > 0) + nnew++; + } + } + + pointsnew = malloc(nnew * sizeof(point)); + + for (j = 0, index = 0, ii = 0; j < ny; ++j) { + for (i = 0; i < nx; ++i, ++index) { + int nn = count[index]; + + if (nn > 0) { + point* p = &pointsnew[ii]; + + p->x = sumx[index] / nn; + p->y = sumy[index] / nn; + p->z = sumz[index] / nn; + ii++; + } + } + } + + if (nn_verbose) + fprintf(stderr, "%d points\n", nnew); + + free(sumx); + free(sumy); + free(sumz); + free(count); + + free(points); + *ppoints = pointsnew; + *pn = nnew; +} + +/* Smoothes the input point array by averaging the input data (X,Y and Z + * values) until the sum of the distances between points does not exceed the + * specified maximum value. It also frees the original array and returns + * results and new dimension via original data and size pointers. + * + * @param pn Pointer to number of points (input/output) + * @param ppoints Pointer to array of points (input/output) [*pn] + * @param rmax Maximum allowed accumulated distance + */ +void points_thinlin(int* nin, point** pin, double rmax) +{ + int nout = 0; + int nallocated = NALLOCATED_START; + point* pout = malloc(nallocated * sizeof(point)); + double n = 0; + double sum_x = 0.0; + double sum_y = 0.0; + double sum_z = 0.0; + double sum_r = 0.0; + point* pprev = NULL; + int i; + + for (i = 0; i < *nin; ++i) { + point* p = &(*pin)[i]; + double dist; + + if (isnan(p->x) || isnan(p->y) || isnan(p->z)) { + if (pprev != NULL) { + /* + * write point + */ + if (nout == nallocated) { + nallocated = nallocated * 2; + pout = realloc(pout, nallocated * sizeof(point)); + } + pout[nout].x = sum_x / (double) n; + pout[nout].y = sum_y / (double) n; + pout[nout].z = sum_z / (double) n; + nout++; + /* + * reset cluster + */ + pprev = NULL; + } + continue; + } + + /* + * init cluster + */ + if (pprev == NULL) { + sum_x = p->x; + sum_y = p->y; + sum_z = p->z; + sum_r = 0.0; + n = 1; + pprev = p; + continue; + } + + dist = hypot(p->x - pprev->x, p->y - pprev->y); + if (sum_r + dist > rmax) { + /* + * write point + */ + if (nout == nallocated) { + nallocated = nallocated * 2; + pout = realloc(pout, nallocated * sizeof(point)); + } + pout[nout].x = sum_x / (double) n; + pout[nout].y = sum_y / (double) n; + pout[nout].z = sum_z / (double) n; + nout++; + /* + * reset cluster + */ + pprev = NULL; + } else { + /* + * add to cluster + */ + sum_x += p->x; + sum_y += p->y; + sum_z += p->z; + sum_r += dist; + n++; + pprev = p; + } + } + + free(*pin); + *pin = realloc(pout, nout * sizeof(point)); + *nin = nout; +} + +/* Calculates X and/or Y ranges of the input array of points. If necessary, + * adjusts the range according to the zoom value. + * + * @param n Number of points + * @param points Array of points + * @param xmin Min X value if *xmin = NaN on input, not changed otherwise + * @param xmax Max X value if *xmax = NaN on input, not changed otherwise + * @param ymin Min Y value if *ymin = NaN on input, not changed otherwise + * @param ymax Max Y value if *ymax = NaN on input, not changed otherwise + */ +void points_getrange(int n, point points[], double zoom, double* xmin, double* xmax, double* ymin, double* ymax) +{ + int i; + + if (xmin != NULL) { + if (isnan(*xmin)) + *xmin = DBL_MAX; + else + xmin = NULL; + } + if (xmax != NULL) { + if (isnan(*xmax)) + *xmax = -DBL_MAX; + else + xmax = NULL; + } + if (ymin != NULL) { + if (isnan(*ymin)) + *ymin = DBL_MAX; + else + ymin = NULL; + } + if (ymax != NULL) { + if (isnan(*ymax)) + *ymax = -DBL_MAX; + else + ymax = NULL; + } + + for (i = 0; i < n; ++i) { + point* p = &points[i]; + + if (xmin != NULL && p->x < *xmin) + *xmin = p->x; + if (xmax != NULL && p->x > *xmax) + *xmax = p->x; + if (ymin != NULL && p->y < *ymin) + *ymin = p->y; + if (ymax != NULL && p->y > *ymax) + *ymax = p->y; + } + + if (isnan(zoom) || zoom <= 0.0 || zoom == 1.0) + return; + + if (xmin != NULL && xmax != NULL) { + double xdiff2 = (*xmax - *xmin) / 2.0; + double xav = (*xmax + *xmin) / 2.0; + + *xmin = xav - xdiff2 * zoom; + *xmax = xav + xdiff2 * zoom; + } + if (ymin != NULL && ymax != NULL) { + double ydiff2 = (*ymax - *ymin) / 2.0; + double yav = (*ymax + *ymin) / 2.0; + + *ymin = yav - ydiff2 * zoom; + *ymax = yav + ydiff2 * zoom; + } +} + +/* Generates rectangular grid nx by ny using specified min and max x and y + * values. Allocates space for the output point array, be sure to free it + * when necessary! + * + * @param xmin Min x value + * @param xmax Max x value + * @param ymin Min y value + * @param ymax Max y value + * @param nx Number of x nodes + * @param ny Number of y nodes + * @param nout Pointer to number of output points + * @param pout Pointer to array of output points [*nout] + */ +void points_generate(double xmin, double xmax, double ymin, double ymax, int nx, int ny, int* nout, point** pout) +{ + double stepx, stepy; + double x0, xx, yy; + int i, j, ii; + + if (nx < 1 || ny < 1) { + *pout = NULL; + *nout = 0; + return; + } + + *nout = nx * ny; + *pout = malloc(*nout * sizeof(point)); + + stepx = (nx > 1) ? (xmax - xmin) / (nx - 1) : 0.0; + stepy = (ny > 1) ? (ymax - ymin) / (ny - 1) : 0.0; + x0 = (nx > 1) ? xmin : (xmin + xmax) / 2.0; + yy = (ny > 1) ? ymin : (ymin + ymax) / 2.0; + + ii = 0; + for (j = 0; j < ny; ++j) { + xx = x0; + for (i = 0; i < nx; ++i) { + point* p = &(*pout)[ii]; + + p->x = xx; + p->y = yy; + xx += stepx; + ii++; + } + yy += stepy; + } +} + +int str2double(char* token, double* value) +{ + char* end = NULL; + + if (token == NULL) { + *value = NaN; + return 0; + } + + *value = strtod(token, &end); + + if (end == token) { + *value = NaN; + return 0; + } + + return 1; +} + +/* Reads array of points from a columnar file. + * + * @param fname File name (can be "stdin" for standard input) + * @param dim Number of dimensions (must be 2 or 3) + * @param n Pointer to number of points (output) + * @param points Pointer to array of points [*n] (output) (to be freed) + */ +void points_read(char* fname, int dim, int* n, point** points) +{ + FILE* f = NULL; + int nallocated = NALLOCATED_START; + char buf[BUFSIZE]; + char seps[] = " ,;\t"; + char* token; + + if (dim < 2 || dim > 3) { + *n = 0; + *points = NULL; + return; + } + + if (fname == NULL) + f = stdin; + else { + if (strcmp(fname, "stdin") == 0 || strcmp(fname, "-") == 0) + f = stdin; + else { + f = fopen(fname, "r"); + if (f == NULL) + nn_quit("%s: %s\n", fname, strerror(errno)); + } + } + + *points = malloc(nallocated * sizeof(point)); + *n = 0; + while (fgets(buf, BUFSIZE, f) != NULL) { + point* p; + + if (*n == nallocated) { + nallocated *= 2; + *points = realloc(*points, nallocated * sizeof(point)); + } + + p = &(*points)[*n]; + + if (buf[0] == '#') + continue; + if ((token = strtok(buf, seps)) == NULL) + continue; + if (!str2double(token, &p->x)) + continue; + if ((token = strtok(NULL, seps)) == NULL) + continue; + if (!str2double(token, &p->y)) + continue; + if (dim == 2) + p->z = NaN; + else { + if ((token = strtok(NULL, seps)) == NULL) + continue; + if (!str2double(token, &p->z)) + continue; + } + (*n)++; + } + + if (*n == 0) { + free(*points); + *points = NULL; + } else + *points = realloc(*points, *n * sizeof(point)); + + if (f != stdin) + if (fclose(f) != 0) + nn_quit("%s: %s\n", fname, strerror(errno)); +} + +/** Scales Y coordinate so that the resulting set fits into square: + ** xmax - xmin = ymax - ymin + * + * @param n Number of points + * @param points The points to scale + * @return Y axis compression coefficient + */ +double points_scaletosquare(int n, point* points) +{ + double xmin, ymin, xmax, ymax; + double k; + int i; + + if (n <= 0) + return NaN; + + xmin = xmax = points[0].x; + ymin = ymax = points[0].y; + + for (i = 1; i < n; ++i) { + point* p = &points[i]; + + if (p->x < xmin) + xmin = p->x; + else if (p->x > xmax) + xmax = p->x; + if (p->y < ymin) + ymin = p->y; + else if (p->y > ymax) + ymax = p->y; + } + + if (xmin == xmax || ymin == ymax) + return NaN; + else + k = (ymax - ymin) / (xmax - xmin); + + for (i = 0; i < n; ++i) + points[i].y /= k; + + return k; +} + +/** Compresses Y domain by a given multiple. + * + * @param n Number of points + * @param points The points to scale + * @param Y axis compression coefficient as returned by points_scaletosquare() + */ +void points_scale(int n, point* points, double k) +{ + int i; + + for (i = 0; i < n; ++i) + points[i].y /= k; +} diff --git a/autoarray/util/nn/src/nn/nncommon.h b/autoarray/util/nn/src/nn/nncommon.h index 20da9b5ad..62bffe1d1 100644 --- a/autoarray/util/nn/src/nn/nncommon.h +++ b/autoarray/util/nn/src/nn/nncommon.h @@ -1,16 +1,16 @@ -#if !defined(_NNCOMMON_H) -#define _NN_COMMON_H - -typedef struct { - double x; - double y; - double r; -} circle; - -int circle_build1(circle* c, point* p0, point* p1, point* p2); -int circle_build2(circle* c, point* p0, point* p1, point* p2); -int circle_contains(circle* c, point* p); -void nn_quit(char* format, ...); -int str2double(char* token, double* value); - -#endif /* _NN_COMMON_H */ +#if !defined(_NNCOMMON_H) +#define _NN_COMMON_H + +typedef struct { + double x; + double y; + double r; +} circle; + +int circle_build1(circle* c, point* p0, point* p1, point* p2); +int circle_build2(circle* c, point* p0, point* p1, point* p2); +int circle_contains(circle* c, point* p); +void nn_quit(char* format, ...); +int str2double(char* token, double* value); + +#endif /* _NN_COMMON_H */ diff --git a/autoarray/util/nn/src/nn/nnhpi_customized.c b/autoarray/util/nn/src/nn/nnhpi_customized.c index 843625d38..ef5371f10 100644 --- a/autoarray/util/nn/src/nn/nnhpi_customized.c +++ b/autoarray/util/nn/src/nn/nnhpi_customized.c @@ -1,129 +1,129 @@ -#include -#include -#include -#include -#include "nn.h" -#include "nnpi.h" -#include "nncommon.h" -#include "delaunay_internal.h" - - - -int interpolate_from(double *xc, double *yc, double *zc, int nin, double *xout, double *yout, double *zout, int* bad_markers, - int nout) -{ - - //printf(" Start! "); - - point* pin = NULL; - delaunay* d = NULL; - nnhpi* nn = NULL; - - int i; - - //int nout = 0; - point* pout = NULL; - - pin = malloc(nin * sizeof(point)); - - for (i = 0; i < nin; ++i) { - point* p = &pin[i]; - - p->x = xc[i]; - p->y = yc[i]; - p->z = zc[i]; - } - - d = delaunay_build(nin, pin, 0, NULL, 0, NULL); - - //points_generate(2.0, 3.0, 2.0, 3.0, 3, 3, &nout, &pout); - - pout = malloc(nout * sizeof(point)); - - for (i = 0; i < nout; ++i) { - point* p = &pout[i]; - p->x = xout[i]; - p->y = yout[i]; - } - - nn = nnhpi_create(d, nout); - - for (i = 0; i < nout; ++i) { - point* p = &pout[i]; - bad_markers[i] = nnhpi_interpolate_output_marker(nn, p); - zout[i] = p-> z; - //printf(" (%f, %f, %f)\n ", p->x, p->y, p->z); - } - - nnhpi_destroy(nn); - free(pout); - delaunay_destroy(d); - free(pin); - //printf(" Done! "); - - return 0; -} - -int interpolate_weights_from( - double *xc, - double *yc, - double *zc, - int nin, - double *xout, - double *yout, - int nout, - double *weights_out, - int *neighbor_index, - int max_nneighbor) -{ - - //printf(" Start! "); - - point* pin = NULL; - delaunay* d = NULL; - nnhpi* nn = NULL; - - int i; - - //int nout = 0; - point* pout = NULL; - - pin = malloc(nin * sizeof(point)); - - for (i = 0; i < nin; ++i) { - point* p = &pin[i]; - - p->x = xc[i]; - p->y = yc[i]; - p->z = zc[i]; - } - - d = delaunay_build(nin, pin, 0, NULL, 0, NULL); - - //points_generate(2.0, 3.0, 2.0, 3.0, 3, 3, &nout, &pout); - - pout = malloc(nout * sizeof(point)); - - for (i = 0; i < nout; ++i) { - point* p = &pout[i]; - p->x = xout[i]; - p->y = yout[i]; - } - - nn = nnhpi_create(d, nout); - - for (i = 0; i < nout; ++i) { - point* p = &pout[i]; - nnhpi_interpolate_get_weights(nn, p, weights_out, neighbor_index, max_nneighbor, i); - //printf(" (%f, %f, %f)\n ", p->x, p->y, p->z); - } - - - nnhpi_destroy(nn); - free(pout); - delaunay_destroy(d); - free(pin); - //printf(" Done! "); - - return 0; -} +#include +#include +#include +#include +#include "nn.h" +#include "nnpi.h" +#include "nncommon.h" +#include "delaunay_internal.h" + + + +int interpolate_from(double *xc, double *yc, double *zc, int nin, double *xout, double *yout, double *zout, int* bad_markers, + int nout) +{ + + //printf(" Start! "); + + point* pin = NULL; + delaunay* d = NULL; + nnhpi* nn = NULL; + + int i; + + //int nout = 0; + point* pout = NULL; + + pin = malloc(nin * sizeof(point)); + + for (i = 0; i < nin; ++i) { + point* p = &pin[i]; + + p->x = xc[i]; + p->y = yc[i]; + p->z = zc[i]; + } + + d = delaunay_build(nin, pin, 0, NULL, 0, NULL); + + //points_generate(2.0, 3.0, 2.0, 3.0, 3, 3, &nout, &pout); + + pout = malloc(nout * sizeof(point)); + + for (i = 0; i < nout; ++i) { + point* p = &pout[i]; + p->x = xout[i]; + p->y = yout[i]; + } + + nn = nnhpi_create(d, nout); + + for (i = 0; i < nout; ++i) { + point* p = &pout[i]; + bad_markers[i] = nnhpi_interpolate_output_marker(nn, p); + zout[i] = p-> z; + //printf(" (%f, %f, %f)\n ", p->x, p->y, p->z); + } + + nnhpi_destroy(nn); + free(pout); + delaunay_destroy(d); + free(pin); + //printf(" Done! "); + + return 0; +} + +int interpolate_weights_from( + double *xc, + double *yc, + double *zc, + int nin, + double *xout, + double *yout, + int nout, + double *weights_out, + int *neighbor_index, + int max_nneighbor) +{ + + //printf(" Start! "); + + point* pin = NULL; + delaunay* d = NULL; + nnhpi* nn = NULL; + + int i; + + //int nout = 0; + point* pout = NULL; + + pin = malloc(nin * sizeof(point)); + + for (i = 0; i < nin; ++i) { + point* p = &pin[i]; + + p->x = xc[i]; + p->y = yc[i]; + p->z = zc[i]; + } + + d = delaunay_build(nin, pin, 0, NULL, 0, NULL); + + //points_generate(2.0, 3.0, 2.0, 3.0, 3, 3, &nout, &pout); + + pout = malloc(nout * sizeof(point)); + + for (i = 0; i < nout; ++i) { + point* p = &pout[i]; + p->x = xout[i]; + p->y = yout[i]; + } + + nn = nnhpi_create(d, nout); + + for (i = 0; i < nout; ++i) { + point* p = &pout[i]; + nnhpi_interpolate_get_weights(nn, p, weights_out, neighbor_index, max_nneighbor, i); + //printf(" (%f, %f, %f)\n ", p->x, p->y, p->z); + } + + + nnhpi_destroy(nn); + free(pout); + delaunay_destroy(d); + free(pin); + //printf(" Done! "); + + return 0; +} diff --git a/autoarray/util/nn/src/nn/nnpi.c b/autoarray/util/nn/src/nn/nnpi.c index 1bad83065..557ddff14 100644 --- a/autoarray/util/nn/src/nn/nnpi.c +++ b/autoarray/util/nn/src/nn/nnpi.c @@ -1,1409 +1,1409 @@ -/***************************************************************************** - * - * File: nnpi.c - * - * Created: 15/11/2002 - * - * Author: Pavel Sakov - * CSIRO Marine Research - * - * Purpose: Code for: - * -- Natural Neighbours Point Interpolator - * -- Natural Neighbours Point Hashing Interpolator - * - * Description: `nnpi' -- "Natural Neighbours Point Interpolator" -- is a - * structure for conducting Natural Neighbours interpolation on - * a "point-to-point" basis. Because it calculates weights for - * each output point, `nnpi' does not take advantage of - * repeated interpolations when locations of input and output - * data points do not change -- use `nnhpi' or `nnai' in these - * cases. - * - * `nnhpi' -- "Natural Neighbours Hashing Point Interpolator" - * is a structure for conducting repeated Natural Neighbours - * interpolations when (i) input data points have constant - * locations and (ii) locations of output data points are often - * repeated. - * - * For Sibson NN interpolation this code uses Dave Watson's - * algorithm (Watson, D. F. nngridr: An implementation of - * natural neighbour interpolation. David Watson, 1994). - * - * For non-Sibsonian NN interpolation this code uses Eq.(40) - * from Sukumar, N., Moran, B., Semenov, A. Yu, and - * Belikov V. V. Natural neighbour Galerkin methods. - * Int. J. Numer. Meth. Engng 2001, v.50: 1­27. - * - * - * Revisions: 01/04/2003 PS: modified nnpi_triangle_process(): for - * Sibson interpolation, if circle_build fails(), now a - * local copy of a point is moved slightly rather than the - * data point itself. The later approach have found leading - * to inconsistencies of the new point position with the - * earlier built triangulation. - * 22/11/2006 PS: introduced special treatment for big circles - * by moving their centers in a certain way, closer to the - * data points; added hashtable nn->bad to account for - * such events. Modified _nnpi_calculate_weights() to handle - * the case when instead of being in between two data points - * the interpolation point is close to a data point. - * 30/10/2007 PS: Modified treatment of degenerate cases in - * nnpi_triangle_process(), many thanks to John Gerschwitz, - * Petroleum Geo-Services, for exposing the defect introduced - * in v. 1.69. Changed EPS_SAME from 1.0e-15 to 1.0e-8. Also - * modified nnpi_calculate_weights(). - * 30/10/2007 PS: Got rid of memset(nn->d->flags, ...) in - * nnpi_reset(). The flags are reset now internally on return - * from delaunay_circles_find(). This is very important - * for large datasets, many thanks to John Gerschwitz, - * Petroleum Geo-Services, for identifying the problem. - * - *****************************************************************************/ - -#include -#include -#include -#include -#include -#include -#include -#include "nan.h" -#include "hash.h" -#include "nn.h" -#include "nncommon.h" -#include "istack_internal.h" -#include "delaunay_internal.h" - - -//int test_add(int a, int b) { -// -// printf("test_add called! \n"); -// fflush(stdout); -// return a + b; -//} - - - -struct nnpi { - dsearch* ds; - double wmin; - int n; /* number of points processed */ - /* - * work variables - */ - int ncircles; - int nvertices; - int nallocated; - int* vertices; /* vertex indices */ - double* weights; - double dx, dy; /* vertex perturbation */ - hashtable* bad; /* ids of vertices that require a special - * treatment */ -}; - -#define NSTART 10 -#define NINC 10 -#define EPS_SHIFT 1.0e-5 -#define BIGNUMBER 1.0e+100 -#define EPS_WMIN 1.0e-6 -#define HT_SIZE 100 -#define EPS_SAME 1.0e-8 - -/* Creates Natural Neighbours point interpolator. - * - * @param d Delaunay triangulation - * @return Natural Neighbours interpolation - */ -nnpi* nnpi_create(delaunay* d) -{ - nnpi* nn = malloc(sizeof(nnpi)); - - nn->ds = dsearch_build(d); - nn->wmin = -DBL_MAX; - nn->n = 0; - nn->ncircles = 0; - nn->vertices = calloc(NSTART, sizeof(int)); - nn->weights = calloc(NSTART, sizeof(double)); - nn->nvertices = 0; - nn->nallocated = NSTART; - nn->bad = NULL; - - return nn; -} - -/* Destroys Natural Neighbours point interpolator. - * - * @param nn Structure to be destroyed - */ -void nnpi_destroy(nnpi* nn) -{ - dsearch_destroy(nn->ds); - free(nn->weights); - free(nn->vertices); - free(nn); -} - -void nnpi_reset(nnpi* nn) -{ - nn->nvertices = 0; - nn->ncircles = 0; - if (nn->bad != NULL) { - ht_destroy(nn->bad); - nn->bad = NULL; - } -} - -static void nnpi_add_weight(nnpi* nn, int vertex, double w) -{ - int i; - - /* - * find whether the vertex is already in the list - */ - /* - * For clustered data the number of natural neighbours for a point may - * be quite big ( a few hundreds in example 2), and using hashtable here - * could accelerate things a bit. However, profiling shows that use of - * linear search is not a major issue. - */ - for (i = 0; i < nn->nvertices; ++i) - if (nn->vertices[i] == vertex) - break; - - if (i == nn->nvertices) { /* not in the list */ - /* - * get more memory if necessary - */ - if (nn->nvertices == nn->nallocated) { - nn->vertices = realloc(nn->vertices, (nn->nallocated + NINC) * sizeof(int)); - nn->weights = realloc(nn->weights, (nn->nallocated + NINC) * sizeof(double)); - nn->nallocated += NINC; - } - - /* - * add the vertex to the list - */ - nn->vertices[i] = vertex; - nn->weights[i] = w; - nn->nvertices++; - } else /* in the list */ - nn->weights[i] += w; -} - -/* This is a central procedure for the Natural Neighbours interpolation. It - * uses the Watson's algorithm for the required areas calculation and implies - * that the vertices of the delaunay triangulation are listed in uniform - * (clockwise or counterclockwise) order. - */ -static void nnpi_triangle_process(nnpi* nn, point* p, int i) -{ - delaunay* d = nn->ds->d; - triangle* t = &d->triangles[i]; - circle* c = &d->circles[i]; - circle cs[3]; - int j; - - /* - * There used to be a useful assertion here: - * - * assert(circle_contains(c, p)); - * - * I removed it after introducing flag `contains' to - * delaunay_circles_find(). It looks like the code is robust enough to - * run without this assertion. - */ - - /* - * Sibson interpolation by using Watson's algorithm - */ - for (j = 0; j < 3; ++j) { - int j1 = (j + 1) % 3; - int j2 = (j + 2) % 3; - int v1 = t->vids[j1]; - int v2 = t->vids[j2]; - - if (!circle_build2(&cs[j], &d->points[v1], &d->points[v2], p)) { - point* p1 = &d->points[v1]; - point* p2 = &d->points[v2]; - - if ((fabs(p1->x - p->x) + fabs(p1->y - p->y)) / c->r < EPS_SAME) { - /* - * if (p1->x == p->x && p1->y == p->y) { - */ - nnpi_add_weight(nn, v1, BIGNUMBER); - return; - } else if ((fabs(p2->x - p->x) + fabs(p2->y - p->y)) / c->r < EPS_SAME) { - /* - * } else if (p2->x == p->x && p2->y == p->y) { - */ - nnpi_add_weight(nn, v2, BIGNUMBER); - return; - } - } - } - - for (j = 0; j < 3; ++j) { - int j1 = (j + 1) % 3; - int j2 = (j + 2) % 3; - double det = ((cs[j1].x - c->x) * (cs[j2].y - c->y) - (cs[j2].x - c->x) * (cs[j1].y - c->y)); - - if (isnan(det)) { - /* - * Here, if the determinant is NaN, then the interpolation point - * is almost in between two data points. This case is difficult to - * handle robustly because the areas (determinants) calculated by - * Watson's algorithm are obtained as a diference between two big - * numbers. This case is handled here in the following way. - * - * If a circle is recognised as very large in circle_build2(), then - * its parameters are replaced by NaNs, which results in the - * variable `det' above being NaN. - * - * When this happens inside convex hall of the data, there is - * always a triangle on another side of the edge, processing of - * which also produces an invalid circle. Processing of this edge - * yields two pairs of infinite determinants, with singularities - * of each pair cancelling if the point moves slightly off the edge. - * - * Each of the determinants corresponds to the (signed) area of a - * triangle, and an inifinite determinant corresponds to the area of - * a triangle with one vertex moved to infinity. "Subtracting" one - * triangle from another within each pair yields a valid - * quadrilateral (in fact, a trapezoid). The doubled area of these - * quadrilaterals is calculated in the cycle over ii below. - */ - int j1bad = isnan(cs[j1].x); - int key[2]; - double* v = NULL; - - key[0] = t->vids[j]; - - if (nn->bad == NULL) - nn->bad = ht_create_i2(HT_SIZE); - - key[1] = (j1bad) ? t->vids[j2] : t->vids[j1]; - v = ht_find(nn->bad, &key); - - if (v == NULL) { - v = malloc(8 * sizeof(double)); - if (j1bad) { - v[0] = cs[j2].x; - v[1] = cs[j2].y; - } else { - v[0] = cs[j1].x; - v[1] = cs[j1].y; - } - v[2] = c->x; - v[3] = c->y; - (void) ht_insert(nn->bad, &key, v); - det = 0.0; - } else { - int ii; - - /* - * Looking for a matching "bad" triangle. I guess it is - * possible that the first circle will come out from - * circle_build2()as "bad", but the matching cicle will not; - * hence the ">" condition below. - */ - if (j1bad || cs[j1].r > cs[j2].r) { - v[6] = cs[j2].x; - v[7] = cs[j2].y; - } else { - v[6] = cs[j1].x; - v[7] = cs[j1].y; - } - v[4] = c->x; - v[5] = c->y; - - det = 0; - for (ii = 0; ii < 4; ++ii) { - int ii1 = (ii + 1) % 4; - - det += (v[ii * 2] + v[ii1 * 2]) * (v[ii * 2 + 1] - v[ii1 * 2 + 1]); - } - det = fabs(det); - - free(v); - ht_delete(nn->bad, &key); - } - } - - nnpi_add_weight(nn, t->vids[j], det); - } -} - -static int compare_int(const void* p1, const void* p2) -{ - int* v1 = (int*) p1; - int* v2 = (int*) p2; - - if (*v1 > *v2) - return 1; - else if (*v1 < *v2) - return -1; - else - return 0; -} - -typedef struct { - point* p0; - point* p1; - point* p; - int i; -} indexedpoint; - -static int onleftside(point* p, point* p0, point* p1) -{ - return (p0->x - p->x) * (p1->y - p->y) > (p1->x - p->x) * (p0->y - p->y); -} - -static int compare_indexedpoints(const void* pp1, const void* pp2) -{ - indexedpoint* ip1 = (indexedpoint*) pp1; - indexedpoint* ip2 = (indexedpoint*) pp2; - point* p0 = ip1->p0; - point* p1 = ip1->p1; - point* a = ip1->p; - point* b = ip2->p; - - if (onleftside(a, p0, b)) { - if (onleftside(a, p0, p1) && !onleftside(b, p0, p1)) - /* - * (the reason for the second check is that while we want to sort - * the natural neighbours in a clockwise manner, one needs to break - * the circuit at some point) - */ - return 1; - else - return -1; - } else { - if (onleftside(b, p0, p1) && !onleftside(a, p0, p1)) - /* - * (see the comment above) - */ - return -1; - else - return 1; - } -} - -static void nnpi_getneighbours(nnpi* nn, point* p, int nt, int* tids, int* n, int** nids) -{ - delaunay* d = nn->ds->d; - istack* neighbours = istack_create(); - indexedpoint* v = NULL; - int i; - - for (i = 0; i < nt; ++i) { - triangle* t = &d->triangles[tids[i]]; - - istack_push(neighbours, t->vids[0]); - istack_push(neighbours, t->vids[1]); - istack_push(neighbours, t->vids[2]); - } - qsort(neighbours->v, neighbours->n, sizeof(int), compare_int); - - v = malloc(sizeof(indexedpoint) * neighbours->n); - - v[0].p = &d->points[neighbours->v[0]]; - v[0].i = neighbours->v[0]; - *n = 1; - for (i = 1; i < neighbours->n; ++i) { - if (neighbours->v[i] == neighbours->v[i - 1]) - continue; - v[*n].p = &d->points[neighbours->v[i]]; - v[*n].i = neighbours->v[i]; - (*n)++; - } - - /* - * I assume that if there is exactly one tricircle the point belongs to, - * then number of natural neighbours *n = 3, and they are already sorted - * in the right way in triangulation process. - */ - if (*n > 3) { - v[0].p0 = NULL; - v[0].p1 = NULL; - for (i = 1; i < *n; ++i) { - v[i].p0 = p; - v[i].p1 = v[0].p; - } - - qsort(&v[1], *n - 1, sizeof(indexedpoint), compare_indexedpoints); - } - - (*nids) = malloc(*n * sizeof(int)); - - for (i = 0; i < *n; ++i) - (*nids)[i] = v[i].i; - - istack_destroy(neighbours); - free(v); -} - -static int nnpi_neighbours_process(nnpi* nn, point* p, int n, int* nids) -{ - delaunay* d = nn->ds->d; - int i; - - for (i = 0; i < n; ++i) { - int im1 = (i + n - 1) % n; - int ip1 = (i + 1) % n; - point* p0 = &d->points[nids[i]]; - point* pp1 = &d->points[nids[ip1]]; - point* pm1 = &d->points[nids[im1]]; - double nom1, nom2, denom1, denom2; - - denom1 = (p0->x - p->x) * (pp1->y - p->y) - (p0->y - p->y) * (pp1->x - p->x); - denom2 = (p0->x - p->x) * (pm1->y - p->y) - (p0->y - p->y) * (pm1->x - p->x); - if (denom1 == 0.0) { - if (p->x == p0->x && p->y == p0->y) { - nnpi_add_weight(nn, nids[i], BIGNUMBER); - return 1; - } else if (p->x == pp1->x && p->y == pp1->y) { - nnpi_add_weight(nn, nids[ip1], BIGNUMBER); - return 1; - } else { - nn->dx = EPS_SHIFT * (pp1->y - p0->y); - nn->dy = -EPS_SHIFT * (pp1->x - p0->x); - return 0; - } - } - if (denom2 == 0.0) { - if (p->x == pm1->x && p->y == pm1->y) { - nnpi_add_weight(nn, nids[im1], BIGNUMBER); - return 1; - } else { - nn->dx = EPS_SHIFT * (pm1->y - p0->y); - nn->dy = -EPS_SHIFT * (pm1->x - p0->x); - return 0; - } - } - - nom1 = (p0->x - pp1->x) * (pp1->x - p->x) + (p0->y - pp1->y) * (pp1->y - p->y); - nom2 = (p0->x - pm1->x) * (pm1->x - p->x) + (p0->y - pm1->y) * (pm1->y - p->y); - nnpi_add_weight(nn, nids[i], nom1 / denom1 - nom2 / denom2); - } - - return 1; -} - -static int _nnpi_calculate_weights(nnpi* nn, point* p) -{ - int* tids = NULL; - int i; - - dsearch_circles_find(nn->ds, p, &nn->ncircles, &tids); - if (nn->ncircles == 0) - return 1; - - /* - * The algorithms of calculating weights for Sibson and non-Sibsonian - * interpolations are quite different; in the first case, the weights are - * calculated by processing Delaunay triangles whose tricircles contain - * the interpolated point; in the second case, they are calculated by - * processing triplets of natural neighbours by moving clockwise or - * counterclockwise around the interpolated point. - */ - if (nn_rule == SIBSON) { - for (i = 0; i < nn->ncircles; ++i) - nnpi_triangle_process(nn, p, tids[i]); - if (nn->bad != NULL) { - int nentries = ht_getnentries(nn->bad); - - if (nentries > 0) { - ht_process(nn->bad, free); - return 0; - } - } - return 1; - } else if (nn_rule == NON_SIBSONIAN) { - int nneigh = 0; - int* nids = NULL; - int status; - - nnpi_getneighbours(nn, p, nn->ncircles, tids, &nneigh, &nids); - status = nnpi_neighbours_process(nn, p, nneigh, nids); - free(nids); - - return status; - } else - nn_quit("programming error"); - - return 0; -} - -static void nnpi_normalize_weights(nnpi* nn) -{ - int n = nn->nvertices; - double sum = 0.0; - int i; - - for (i = 0; i < n; ++i) - sum += nn->weights[i]; - - for (i = 0; i < n; ++i) - nn->weights[i] /= sum; -} - -#define RANDOM (double) rand() / ((double) RAND_MAX + 1.0) - -void nnpi_calculate_weights(nnpi* nn, point* p) -{ - delaunay* d = nn->ds->d; - point pp; - int nvertices = 0; - int* vertices = NULL; - double* weights = NULL; - int i; - - nnpi_reset(nn); - - if (_nnpi_calculate_weights(nn, p)) { - nnpi_normalize_weights(nn); - return; - } - - nnpi_reset(nn); - - nn->dx = (d->xmax - d->xmin) * EPS_SHIFT; - nn->dy = (d->ymax - d->ymin) * EPS_SHIFT; - - pp.x = p->x + nn->dx; - pp.y = p->y + nn->dy; - - while (!_nnpi_calculate_weights(nn, &pp)) { - nnpi_reset(nn); - pp.x = p->x + nn->dx * RANDOM; - pp.y = p->y + nn->dy * RANDOM; - } - nnpi_normalize_weights(nn); - - nvertices = nn->nvertices; - if (nvertices > 0) { - vertices = malloc(nvertices * sizeof(int)); - memcpy(vertices, nn->vertices, nvertices * sizeof(int)); - weights = malloc(nvertices * sizeof(double)); - memcpy(weights, nn->weights, nvertices * sizeof(double)); - } - - nnpi_reset(nn); - - pp.x = 2.0 * p->x - pp.x; - pp.y = 2.0 * p->y - pp.y; - - while (!_nnpi_calculate_weights(nn, &pp) || nn->nvertices == 0) { - nnpi_reset(nn); - pp.x = p->x + nn->dx * RANDOM; - pp.y = p->y + nn->dy * RANDOM; - } - nnpi_normalize_weights(nn); - - if (nvertices > 0) - for (i = 0; i < nn->nvertices; ++i) - nn->weights[i] /= 2.0; - - for (i = 0; i < nvertices; ++i) - nnpi_add_weight(nn, vertices[i], weights[i] / 2.0); - - if (nvertices > 0) { - free(vertices); - free(weights); - } -} - -typedef struct { - double* v; - int i; -} indexedvalue; - -static int cmp_iv(const void* p1, const void* p2) -{ - double v1 = *((indexedvalue *) p1)->v; - double v2 = *((indexedvalue *) p2)->v; - - if (v1 > v2) - return -1; - if (v1 < v2) - return 1; - return 0; -} - -/* Performs Natural Neighbours interpolation in a point. - * - * @param nn NN interpolation - * @param p Point to be interpolated (p->x, p->y -- input; p->z -- output) - */ -void nnpi_interpolate_point(nnpi* nn, point* p) -{ - delaunay* d = nn->ds->d; - int i; - - nnpi_calculate_weights(nn, p); - - if (nn_verbose) { - if (nn_test_vertice == -1) { - indexedvalue* ivs = NULL; - - if (nn->nvertices > 0) { - ivs = malloc(nn->nvertices * sizeof(indexedvalue)); - - for (i = 0; i < nn->nvertices; ++i) { - ivs[i].i = nn->vertices[i]; - ivs[i].v = &nn->weights[i]; - } - - qsort(ivs, nn->nvertices, sizeof(indexedvalue), cmp_iv); - } - - if (nn->n == 0) - fprintf(stderr, "weights:\n"); - fprintf(stderr, " %d: (%.10g, %10g)\n", nn->n, p->x, p->y); - fprintf(stderr, " %4s %15s %15s %15s %15s\n", "id", "x", "y", "z", "w"); - for (i = 0; i < nn->nvertices; ++i) { - int ii = ivs[i].i; - point* pp = &d->points[ii]; - - fprintf(stderr, " %5d %15.10g %15.10g %15.10g %15f\n", ii, pp->x, pp->y, pp->z, *ivs[i].v); - } - - if (nn->nvertices > 0) - free(ivs); - } else { - double w = 0.0; - - if (nn->n == 0) - fprintf(stderr, "weight of vertex %d:\n", nn_test_vertice); - for (i = 0; i < nn->nvertices; ++i) { - if (nn->vertices[i] == nn_test_vertice) { - w = nn->weights[i]; - break; - } - } - fprintf(stderr, " (%.10g, %.10g): %.7g\n", p->x, p->y, w); - } - } - - nn->n++; - - if (nn->nvertices == 0) { - p->z = NaN; - return; - } - - p->z = 0.0; - for (i = 0; i < nn->nvertices; ++i) { - double weight = nn->weights[i]; - - if (weight < nn->wmin) { - p->z = NaN; - return; - } - p->z += d->points[nn->vertices[i]].z * weight; - } -} - -/* Performs Natural Neighbours interpolation for an array of points. - * - * @param d Delaunay triangulation - * @param pin Array of input points [pin] - * @param wmin Minimal allowed weight - * @param nout Number of output points - * @param pout Array of output points [nout] - */ -void nnpi_interpolate_points(delaunay* d, double wmin, int nout, point pout[]) -{ - nnpi* nn = nnpi_create(d); - int seed = 0; - int i; - - nnpi_setwmin(nn, wmin); - - if (nn_verbose) { - fprintf(stderr, "xytoi:\n"); - for (i = 0; i < nout; ++i) { - point* p = &pout[i]; - - fprintf(stderr, "(%.7g,%.7g) -> %d\n", p->x, p->y, delaunay_xytoi(d, p, seed)); - } - } - - for (i = 0; i < nout; ++i) - nnpi_interpolate_point(nn, &pout[i]); - - if (nn_verbose) { - fprintf(stderr, "output:\n"); - for (i = 0; i < nout; ++i) { - point* p = &pout[i]; - - fprintf(stderr, " %d:%15.7g %15.7g %15.7g\n", i, p->x, p->y, p->z); - } - } - - nnpi_destroy(nn); -} - -/* Sets minimal allowed weight for Natural Neighbours interpolation. - * - * For Sibson interpolation, setting wmin = 0 is equivalent to interpolating - * inside convex hall of the data only (returning NaNs otherwise). - * - * @param nn Natural Neighbours point interpolator - * @param wmin Minimal allowed weight - */ -void nnpi_setwmin(nnpi* nn, double wmin) -{ - nn->wmin = (wmin == 0) ? -EPS_WMIN : wmin; -} - -/* Gets number of data points involved in current interpolation. For use by - * `nnai'. - * - * @return Number of data points involved in current interpolation - */ -int nnpi_get_nvertices(nnpi* nn) -{ - return nn->nvertices; -} - -/* Gets indices of data points involved in current interpolation. For use by - * `nnai'. - * - * @return indices of data points involved in current interpolation - */ -int* nnpi_get_vertices(nnpi* nn) -{ - return nn->vertices; -} - -/* Gets weights of data points involved in current interpolation. For use by - * `nnai'. - * @return weights of data points involved in current interpolation - */ -double* nnpi_get_weights(nnpi* nn) -{ - return nn->weights; -} - -/* - * nnhpi - */ - -struct nnhpi { - nnpi* nnpi; - hashtable* ht_data; - hashtable* ht_weights; - int n; /* number of points processed */ -}; - -typedef struct { - int nvertices; - int* vertices; /* vertex indices [nvertices] */ - double* weights; /* vertex weights [nvertices] */ -} nn_weights; - -/* Creates Natural Neighbours hashing point interpolator. - * - * @param d Delaunay triangulation - * @param size Hash table size (should be of order of number of output points) - * @return Natural Neighbours interpolation - */ -nnhpi* nnhpi_create(delaunay* d, int size) -{ - nnhpi* nn = malloc(sizeof(nnhpi)); - int i; - - nn->nnpi = nnpi_create(d); - - nn->ht_data = ht_create_d2(d->npoints); - nn->ht_weights = ht_create_d2(size); - nn->n = 0; - - for (i = 0; i < d->npoints; ++i) - ht_insert(nn->ht_data, &d->points[i], &d->points[i]); - - return nn; -} - -static void free_nn_weights(void* data) -{ - nn_weights* weights = (nn_weights*) data; - - free(weights->vertices); - free(weights->weights); - free(weights); -} - -/* Destroys Natural Neighbours hashing point interpolation. - * - * @param nn Structure to be destroyed - */ -void nnhpi_destroy(nnhpi* nn) -{ - ht_destroy(nn->ht_data); - ht_process(nn->ht_weights, free_nn_weights); - ht_destroy(nn->ht_weights); - nnpi_destroy(nn->nnpi); -} - -/* Finds Natural Neighbours-interpolated value in a point. - * - * @param nnhpi NN point hashing interpolator - * @param p Point to be interpolated (p->x, p->y -- input; p->z -- output) - */ -void nnhpi_interpolate(nnhpi* nnhpi, point* p) -{ - nnpi* nnpi = nnhpi->nnpi; - delaunay* d = nnpi->ds->d; - hashtable* ht_weights = nnhpi->ht_weights; - nn_weights* weights; - int i; - - if (ht_find(ht_weights, p) != NULL) { - weights = ht_find(ht_weights, p); - if (nn_verbose) - fprintf(stderr, " \n"); - } else { - nnpi_calculate_weights(nnpi, p); - - weights = malloc(sizeof(nn_weights)); - weights->vertices = malloc(sizeof(int) * nnpi->nvertices); - weights->weights = malloc(sizeof(double) * nnpi->nvertices); - - weights->nvertices = nnpi->nvertices; - - for (i = 0; i < nnpi->nvertices; ++i) { - weights->vertices[i] = nnpi->vertices[i]; - weights->weights[i] = nnpi->weights[i]; - } - - ht_insert(ht_weights, p, weights); - - if (nn_verbose) { - if (nn_test_vertice == -1) { - if (nnpi->n == 0) - fprintf(stderr, "weights:\n"); - fprintf(stderr, " %d: {", nnpi->n); - - for (i = 0; i < nnpi->nvertices; ++i) { - fprintf(stderr, "(%d,%.5g)", nnpi->vertices[i], nnpi->weights[i]); - - if (i < nnpi->nvertices - 1) - fprintf(stderr, ", "); - } - fprintf(stderr, "}\n"); - } else { - double w = 0.0; - - if (nnpi->n == 0) - fprintf(stderr, "weights for vertex %d:\n", nn_test_vertice); - for (i = 0; i < nnpi->nvertices; ++i) { - if (nnpi->vertices[i] == nn_test_vertice) { - w = nnpi->weights[i]; - - break; - } - } - fprintf(stderr, "%15.7g %15.7g %15.7g\n", p->x, p->y, w); - } - } - - nnpi->n++; - } - - nnhpi->n++; - - if (weights->nvertices == 0) { - p->z = NaN; - return; - } - - p->z = 0.0; - for (i = 0; i < weights->nvertices; ++i) { - if (weights->weights[i] < nnpi->wmin) { - p->z = NaN; - return; - } - p->z += d->points[weights->vertices[i]].z * weights->weights[i]; - } -} - -void nnhpi_interpolate_get_weights(nnhpi* nnhpi, point* p, double* weight_out, int* neighbor_index, - int max_nneighbor, int point_index) -{ - nnpi* nnpi = nnhpi->nnpi; - //delaunay* d = nnpi->ds->d; - hashtable* ht_weights = nnhpi->ht_weights; - nn_weights* weights; - int i; - int count; - - if (ht_find(ht_weights, p) != NULL) { - weights = ht_find(ht_weights, p); - if (nn_verbose) - fprintf(stderr, " \n"); - } else { - nnpi_calculate_weights(nnpi, p); - - weights = malloc(sizeof(nn_weights)); - weights->vertices = malloc(sizeof(int) * nnpi->nvertices); - weights->weights = malloc(sizeof(double) * nnpi->nvertices); - - weights->nvertices = nnpi->nvertices; - - for (i = 0; i < nnpi->nvertices; ++i) { - weights->vertices[i] = nnpi->vertices[i]; - weights->weights[i] = nnpi->weights[i]; - } - - ht_insert(ht_weights, p, weights); - - if (nn_verbose) { - if (nn_test_vertice == -1) { - if (nnpi->n == 0) - fprintf(stderr, "weights:\n"); - fprintf(stderr, " %d: {", nnpi->n); - - for (i = 0; i < nnpi->nvertices; ++i) { - fprintf(stderr, "(%d,%.5g)", nnpi->vertices[i], nnpi->weights[i]); - - if (i < nnpi->nvertices - 1) - fprintf(stderr, ", "); - } - fprintf(stderr, "}\n"); - } else { - double w = 0.0; - - if (nnpi->n == 0) - fprintf(stderr, "weights for vertex %d:\n", nn_test_vertice); - for (i = 0; i < nnpi->nvertices; ++i) { - if (nnpi->vertices[i] == nn_test_vertice) { - w = nnpi->weights[i]; - - break; - } - } - fprintf(stderr, "%15.7g %15.7g %15.7g\n", p->x, p->y, w); - } - } - - nnpi->n++; - } - - nnhpi->n++; - - if (weights->nvertices == 0) { - //p->z = NaN; - return; - } - - //p->z = 0.0; - count = 0; - for (i = 0; i < weights->nvertices; ++i) { - if (count < weights->nvertices){ - if (weights->weights[i] < nnpi->wmin) { - //p->z = NaN; - return; - } - //p->z += d->points[weights->vertices[i]].z * weights->weights[i]; - weight_out[point_index * max_nneighbor + count] = weights->weights[i]; - neighbor_index[point_index * max_nneighbor + count] = weights->vertices[i]; - //printf("weights vertices: %d", weights->vertices[i]); - //printf("vertices: %d\n", neighbor_index[point_index * max_nneighbor + count]); - //printf("values: %f\n", d->points[weights->vertices[i]].z); - count++; - } else { - printf("neighour number exceed maximum!"); - fflush(stdout); - abort(); - exit(1); - } - } -} - - -int nnhpi_interpolate_output_marker(nnhpi* nnhpi, point* p) -{ - nnpi* nnpi = nnhpi->nnpi; - delaunay* d = nnpi->ds->d; - hashtable* ht_weights = nnhpi->ht_weights; - nn_weights* weights; - int i; - - if (ht_find(ht_weights, p) != NULL) { - weights = ht_find(ht_weights, p); - if (nn_verbose) - fprintf(stderr, " \n"); - } else { - nnpi_calculate_weights(nnpi, p); - - weights = malloc(sizeof(nn_weights)); - weights->vertices = malloc(sizeof(int) * nnpi->nvertices); - weights->weights = malloc(sizeof(double) * nnpi->nvertices); - - weights->nvertices = nnpi->nvertices; - - for (i = 0; i < nnpi->nvertices; ++i) { - weights->vertices[i] = nnpi->vertices[i]; - weights->weights[i] = nnpi->weights[i]; - } - - ht_insert(ht_weights, p, weights); - - if (nn_verbose) { - if (nn_test_vertice == -1) { - if (nnpi->n == 0) - fprintf(stderr, "weights:\n"); - fprintf(stderr, " %d: {", nnpi->n); - - for (i = 0; i < nnpi->nvertices; ++i) { - fprintf(stderr, "(%d,%.5g)", nnpi->vertices[i], nnpi->weights[i]); - - if (i < nnpi->nvertices - 1) - fprintf(stderr, ", "); - } - fprintf(stderr, "}\n"); - } else { - double w = 0.0; - - if (nnpi->n == 0) - fprintf(stderr, "weights for vertex %d:\n", nn_test_vertice); - for (i = 0; i < nnpi->nvertices; ++i) { - if (nnpi->vertices[i] == nn_test_vertice) { - w = nnpi->weights[i]; - - break; - } - } - fprintf(stderr, "%15.7g %15.7g %15.7g\n", p->x, p->y, w); - } - } - - nnpi->n++; - } - - nnhpi->n++; - - if (weights->nvertices == 0) { - p->z = NaN; - return -1; - } - - p->z = 0.0; - for (i = 0; i < weights->nvertices; ++i) { - if (weights->weights[i] >= 0.0){ - if (weights->weights[i] < nnpi->wmin) { - p->z = NaN; - return -1; - } - p->z += d->points[weights->vertices[i]].z * weights->weights[i]; - } else - { - return -1; - } - } - return 1; -} - - - -/* Modifies interpolated data. - * - * Finds point* pd in the underlying Delaunay triangulation such that - * pd->x = p->x and pd->y = p->y, and copies p->z to pd->z. Exits with error - * if the point is not found. - * - * @param nnhpi Natural Neighbours hashing point interpolator - * @param p New data - */ -void nnhpi_modify_data(nnhpi* nnhpi, point* p) -{ - point* orig = ht_find(nnhpi->ht_data, p); - - assert(orig != NULL); - orig->z = p->z; -} - -/* Sets minimal allowed weight for Natural Neighbours interpolation. - * - * For Sibson interpolation, setting wmin = 0 is equivalent to interpolating - * inside convex hall of the data only (returning NaNs otherwise). - * - * @param nn Natural Neighbours point hashing interpolator - * @param wmin Minimal allowed weight - */ -void nnhpi_setwmin(nnhpi* nn, double wmin) -{ - nn->nnpi->wmin = wmin; -} - -#if defined(NNPHI_TEST) - -#include - -#define NPOINTSIN 10000 -#define NMIN 10 -#define NX 101 -#define NXMIN 1 - -#define SQ(x) ((x) * (x)) - -static double franke(double x, double y) -{ - x *= 9.0; - y *= 9.0; - return 0.75 * exp((-SQ(x - 2.0) - SQ(y - 2.0)) / 4.0) - + 0.75 * exp(-SQ(x - 2.0) / 49.0 - (y - 2.0) / 10.0) - + 0.5 * exp((-SQ(x - 7.0) - SQ(y - 3.0)) / 4.0) - - 0.2 * exp(-SQ(x - 4.0) - SQ(y - 7.0)); -} - -static void usage() -{ - printf("Usage: nnhpi_test [-a] [-n ] [-v|-V]\n"); - printf("Options:\n"); - printf(" -a -- use non-Sibsonian interpolation rule\n"); - printf(" -n :\n"); - printf(" -- number of input points (default = 10000)\n"); - printf(" -- number of output points per side (default = 64)\n"); - printf(" -v -- verbose\n"); - printf(" -V -- very verbose\n"); - - exit(0); -} - -int main(int argc, char* argv[]) -{ - int nin = NPOINTSIN; - int nx = NX; - int nout = 0; - point* pin = NULL; - delaunay* d = NULL; - point* pout = NULL; - nnhpi* nn = NULL; - int cpi = -1; /* control point index */ - struct timeval tv0, tv1; - struct timezone tz; - int i; - - i = 1; - while (i < argc) { - switch (argv[i][1]) { - case 'a': - i++; - nn_rule = NON_SIBSONIAN; - break; - case 'n': - i++; - if (i >= argc) - nn_quit("no number of data points found after -n\n"); - nin = atoi(argv[i]); - i++; - if (i >= argc) - nn_quit("no number of ouput points per side found after -i\n"); - nx = atoi(argv[i]); - i++; - break; - case 'v': - i++; - nn_verbose = 1; - break; - case 'V': - i++; - nn_verbose = 2; - break; - default: - usage(); - break; - } - } - - if (nin < NMIN) - nin = NMIN; - if (nx < NXMIN) - nx = NXMIN; - - printf("\nTest of Natural Neighbours hashing point interpolator:\n\n"); - printf(" %d data points\n", nin); - printf(" %d output points\n", nx * nx); - - /* - * generate data - */ - printf(" generating data:\n"); - fflush(stdout); - pin = malloc(nin * sizeof(point)); - for (i = 0; i < nin; ++i) { - point* p = &pin[i]; - - p->x = (double) random() / RAND_MAX; - p->y = (double) random() / RAND_MAX; - p->z = franke(p->x, p->y); - if (nn_verbose) - printf(" (%f, %f, %f)\n", p->x, p->y, p->z); - } - - /* - * triangulate - */ - printf(" triangulating:\n"); - fflush(stdout); - d = delaunay_build(nin, pin, 0, NULL, 0, NULL); - - /* - * generate output points - */ - points_generate(-0.1, 1.1, -0.1, 1.1, nx, nx, &nout, &pout); - cpi = (nx / 2) * (nx + 1); - - gettimeofday(&tv0, &tz); - - /* - * create interpolator - */ - printf(" creating interpolator:\n"); - fflush(stdout); - nn = nnhpi_create(d, nout); - - fflush(stdout); - gettimeofday(&tv1, &tz); - { - long dt = 1000000 * (tv1.tv_sec - tv0.tv_sec) + tv1.tv_usec - tv0.tv_usec; - - printf(" interpolator creation time = %ld us (%.2f us / point)\n", dt, (double) dt / nout); - } - - /* - * interpolate - */ - printf(" interpolating:\n"); - fflush(stdout); - gettimeofday(&tv1, &tz); - for (i = 0; i < nout; ++i) { - point* p = &pout[i]; - - nnhpi_interpolate(nn, p); - if (nn_verbose) - printf(" (%f, %f, %f)\n", p->x, p->y, p->z); - } - - fflush(stdout); - gettimeofday(&tv0, &tz); - { - long dt = 1000000.0 * (tv0.tv_sec - tv1.tv_sec) + tv0.tv_usec - tv1.tv_usec; - - printf(" interpolation time = %ld us (%.2f us / point)\n", dt, (double) dt / nout); - } - - if (!nn_verbose) - printf(" control point: (%f, %f, %f) (expected z = %f)\n", pout[cpi].x, pout[cpi].y, pout[cpi].z, franke(pout[cpi].x, pout[cpi].y)); - - printf(" interpolating one more time:\n"); - fflush(stdout); - gettimeofday(&tv0, &tz); - for (i = 0; i < nout; ++i) { - point* p = &pout[i]; - - nnhpi_interpolate(nn, p); - if (nn_verbose) - printf(" (%f, %f, %f)\n", p->x, p->y, p->z); - } - - fflush(stdout); - gettimeofday(&tv1, &tz); - { - long dt = 1000000.0 * (tv1.tv_sec - tv0.tv_sec) + tv1.tv_usec - tv0.tv_usec; - - printf(" interpolation time = %ld us (%.2f us / point)\n", dt, (double) dt / nout); - } - - if (!nn_verbose) - printf(" control point: (%f, %f, %f) (expected z = %f)\n", pout[cpi].x, pout[cpi].y, pout[cpi].z, franke(pout[cpi].x, pout[cpi].y)); - - printf(" entering new data:\n"); - fflush(stdout); - for (i = 0; i < nin; ++i) { - point* p = &pin[i]; - - p->z = p->x * p->x - p->y * p->y; - nnhpi_modify_data(nn, p); - if (nn_verbose) - printf(" (%f, %f, %f)\n", p->x, p->y, p->z); - } - - printf(" interpolating:\n"); - fflush(stdout); - gettimeofday(&tv1, &tz); - for (i = 0; i < nout; ++i) { - point* p = &pout[i]; - - nnhpi_interpolate(nn, p); - if (nn_verbose) - printf(" (%f, %f, %f)\n", p->x, p->y, p->z); - } - - fflush(stdout); - gettimeofday(&tv0, &tz); - { - long dt = 1000000.0 * (tv0.tv_sec - tv1.tv_sec) + tv0.tv_usec - tv1.tv_usec; - - printf(" interpolation time = %ld us (%.2f us / point)\n", dt, (double) dt / nout); - } - - if (!nn_verbose) - printf(" control point: (%f, %f, %f) (expected z = %f)\n", pout[cpi].x, pout[cpi].y, pout[cpi].z, pout[cpi].x * pout[cpi].x - pout[cpi].y * pout[cpi].y); - - printf(" restoring data:\n"); - fflush(stdout); - for (i = 0; i < nin; ++i) { - point* p = &pin[i]; - - p->z = franke(p->x, p->y); - nnhpi_modify_data(nn, p); - if (nn_verbose) - printf(" (%f, %f, %f)\n", p->x, p->y, p->z); - } - - printf(" interpolating:\n"); - fflush(stdout); - gettimeofday(&tv0, &tz); - for (i = 0; i < nout; ++i) { - point* p = &pout[i]; - - nnhpi_interpolate(nn, p); - if (nn_verbose) - printf(" (%f, %f, %f)\n", p->x, p->y, p->z); - } - - fflush(stdout); - gettimeofday(&tv1, &tz); - { - long dt = 1000000.0 * (tv1.tv_sec - tv0.tv_sec) + tv1.tv_usec - tv0.tv_usec; - - printf(" interpolation time = %ld us (%.2f us / point)\n", dt, (double) dt / nout); - } - - if (!nn_verbose) - printf(" control point: (%f, %f, %f) (expected z = %f)\n", pout[cpi].x, pout[cpi].y, pout[cpi].z, franke(pout[cpi].x, pout[cpi].y)); - - printf(" hashtable stats:\n"); - fflush(stdout); - { - hashtable* ht = nn->ht_data; - - printf(" input points: %d entries, %d table elements, %d filled elements\n", ht_getnentries(ht), ht_getsize(ht), ht_getnfilled(ht)); - ht = nn->ht_weights; - printf(" weights: %d entries, %d table elements, %d filled elements\n", ht_getnentries(ht), ht_getsize(ht), ht_getnfilled(ht)); - } - printf("\n"); - - nnhpi_destroy(nn); - free(pout); - delaunay_destroy(d); - free(pin); - - return 0; -} - -#endif +/***************************************************************************** + * + * File: nnpi.c + * + * Created: 15/11/2002 + * + * Author: Pavel Sakov + * CSIRO Marine Research + * + * Purpose: Code for: + * -- Natural Neighbours Point Interpolator + * -- Natural Neighbours Point Hashing Interpolator + * + * Description: `nnpi' -- "Natural Neighbours Point Interpolator" -- is a + * structure for conducting Natural Neighbours interpolation on + * a "point-to-point" basis. Because it calculates weights for + * each output point, `nnpi' does not take advantage of + * repeated interpolations when locations of input and output + * data points do not change -- use `nnhpi' or `nnai' in these + * cases. + * + * `nnhpi' -- "Natural Neighbours Hashing Point Interpolator" + * is a structure for conducting repeated Natural Neighbours + * interpolations when (i) input data points have constant + * locations and (ii) locations of output data points are often + * repeated. + * + * For Sibson NN interpolation this code uses Dave Watson's + * algorithm (Watson, D. F. nngridr: An implementation of + * natural neighbour interpolation. David Watson, 1994). + * + * For non-Sibsonian NN interpolation this code uses Eq.(40) + * from Sukumar, N., Moran, B., Semenov, A. Yu, and + * Belikov V. V. Natural neighbour Galerkin methods. + * Int. J. Numer. Meth. Engng 2001, v.50: 1­27. + * + * + * Revisions: 01/04/2003 PS: modified nnpi_triangle_process(): for + * Sibson interpolation, if circle_build fails(), now a + * local copy of a point is moved slightly rather than the + * data point itself. The later approach have found leading + * to inconsistencies of the new point position with the + * earlier built triangulation. + * 22/11/2006 PS: introduced special treatment for big circles + * by moving their centers in a certain way, closer to the + * data points; added hashtable nn->bad to account for + * such events. Modified _nnpi_calculate_weights() to handle + * the case when instead of being in between two data points + * the interpolation point is close to a data point. + * 30/10/2007 PS: Modified treatment of degenerate cases in + * nnpi_triangle_process(), many thanks to John Gerschwitz, + * Petroleum Geo-Services, for exposing the defect introduced + * in v. 1.69. Changed EPS_SAME from 1.0e-15 to 1.0e-8. Also + * modified nnpi_calculate_weights(). + * 30/10/2007 PS: Got rid of memset(nn->d->flags, ...) in + * nnpi_reset(). The flags are reset now internally on return + * from delaunay_circles_find(). This is very important + * for large datasets, many thanks to John Gerschwitz, + * Petroleum Geo-Services, for identifying the problem. + * + *****************************************************************************/ + +#include +#include +#include +#include +#include +#include +#include +#include "nan.h" +#include "hash.h" +#include "nn.h" +#include "nncommon.h" +#include "istack_internal.h" +#include "delaunay_internal.h" + + +//int test_add(int a, int b) { +// +// printf("test_add called! \n"); +// fflush(stdout); +// return a + b; +//} + + + +struct nnpi { + dsearch* ds; + double wmin; + int n; /* number of points processed */ + /* + * work variables + */ + int ncircles; + int nvertices; + int nallocated; + int* vertices; /* vertex indices */ + double* weights; + double dx, dy; /* vertex perturbation */ + hashtable* bad; /* ids of vertices that require a special + * treatment */ +}; + +#define NSTART 10 +#define NINC 10 +#define EPS_SHIFT 1.0e-5 +#define BIGNUMBER 1.0e+100 +#define EPS_WMIN 1.0e-6 +#define HT_SIZE 100 +#define EPS_SAME 1.0e-8 + +/* Creates Natural Neighbours point interpolator. + * + * @param d Delaunay triangulation + * @return Natural Neighbours interpolation + */ +nnpi* nnpi_create(delaunay* d) +{ + nnpi* nn = malloc(sizeof(nnpi)); + + nn->ds = dsearch_build(d); + nn->wmin = -DBL_MAX; + nn->n = 0; + nn->ncircles = 0; + nn->vertices = calloc(NSTART, sizeof(int)); + nn->weights = calloc(NSTART, sizeof(double)); + nn->nvertices = 0; + nn->nallocated = NSTART; + nn->bad = NULL; + + return nn; +} + +/* Destroys Natural Neighbours point interpolator. + * + * @param nn Structure to be destroyed + */ +void nnpi_destroy(nnpi* nn) +{ + dsearch_destroy(nn->ds); + free(nn->weights); + free(nn->vertices); + free(nn); +} + +void nnpi_reset(nnpi* nn) +{ + nn->nvertices = 0; + nn->ncircles = 0; + if (nn->bad != NULL) { + ht_destroy(nn->bad); + nn->bad = NULL; + } +} + +static void nnpi_add_weight(nnpi* nn, int vertex, double w) +{ + int i; + + /* + * find whether the vertex is already in the list + */ + /* + * For clustered data the number of natural neighbours for a point may + * be quite big ( a few hundreds in example 2), and using hashtable here + * could accelerate things a bit. However, profiling shows that use of + * linear search is not a major issue. + */ + for (i = 0; i < nn->nvertices; ++i) + if (nn->vertices[i] == vertex) + break; + + if (i == nn->nvertices) { /* not in the list */ + /* + * get more memory if necessary + */ + if (nn->nvertices == nn->nallocated) { + nn->vertices = realloc(nn->vertices, (nn->nallocated + NINC) * sizeof(int)); + nn->weights = realloc(nn->weights, (nn->nallocated + NINC) * sizeof(double)); + nn->nallocated += NINC; + } + + /* + * add the vertex to the list + */ + nn->vertices[i] = vertex; + nn->weights[i] = w; + nn->nvertices++; + } else /* in the list */ + nn->weights[i] += w; +} + +/* This is a central procedure for the Natural Neighbours interpolation. It + * uses the Watson's algorithm for the required areas calculation and implies + * that the vertices of the delaunay triangulation are listed in uniform + * (clockwise or counterclockwise) order. + */ +static void nnpi_triangle_process(nnpi* nn, point* p, int i) +{ + delaunay* d = nn->ds->d; + triangle* t = &d->triangles[i]; + circle* c = &d->circles[i]; + circle cs[3]; + int j; + + /* + * There used to be a useful assertion here: + * + * assert(circle_contains(c, p)); + * + * I removed it after introducing flag `contains' to + * delaunay_circles_find(). It looks like the code is robust enough to + * run without this assertion. + */ + + /* + * Sibson interpolation by using Watson's algorithm + */ + for (j = 0; j < 3; ++j) { + int j1 = (j + 1) % 3; + int j2 = (j + 2) % 3; + int v1 = t->vids[j1]; + int v2 = t->vids[j2]; + + if (!circle_build2(&cs[j], &d->points[v1], &d->points[v2], p)) { + point* p1 = &d->points[v1]; + point* p2 = &d->points[v2]; + + if ((fabs(p1->x - p->x) + fabs(p1->y - p->y)) / c->r < EPS_SAME) { + /* + * if (p1->x == p->x && p1->y == p->y) { + */ + nnpi_add_weight(nn, v1, BIGNUMBER); + return; + } else if ((fabs(p2->x - p->x) + fabs(p2->y - p->y)) / c->r < EPS_SAME) { + /* + * } else if (p2->x == p->x && p2->y == p->y) { + */ + nnpi_add_weight(nn, v2, BIGNUMBER); + return; + } + } + } + + for (j = 0; j < 3; ++j) { + int j1 = (j + 1) % 3; + int j2 = (j + 2) % 3; + double det = ((cs[j1].x - c->x) * (cs[j2].y - c->y) - (cs[j2].x - c->x) * (cs[j1].y - c->y)); + + if (isnan(det)) { + /* + * Here, if the determinant is NaN, then the interpolation point + * is almost in between two data points. This case is difficult to + * handle robustly because the areas (determinants) calculated by + * Watson's algorithm are obtained as a diference between two big + * numbers. This case is handled here in the following way. + * + * If a circle is recognised as very large in circle_build2(), then + * its parameters are replaced by NaNs, which results in the + * variable `det' above being NaN. + * + * When this happens inside convex hall of the data, there is + * always a triangle on another side of the edge, processing of + * which also produces an invalid circle. Processing of this edge + * yields two pairs of infinite determinants, with singularities + * of each pair cancelling if the point moves slightly off the edge. + * + * Each of the determinants corresponds to the (signed) area of a + * triangle, and an inifinite determinant corresponds to the area of + * a triangle with one vertex moved to infinity. "Subtracting" one + * triangle from another within each pair yields a valid + * quadrilateral (in fact, a trapezoid). The doubled area of these + * quadrilaterals is calculated in the cycle over ii below. + */ + int j1bad = isnan(cs[j1].x); + int key[2]; + double* v = NULL; + + key[0] = t->vids[j]; + + if (nn->bad == NULL) + nn->bad = ht_create_i2(HT_SIZE); + + key[1] = (j1bad) ? t->vids[j2] : t->vids[j1]; + v = ht_find(nn->bad, &key); + + if (v == NULL) { + v = malloc(8 * sizeof(double)); + if (j1bad) { + v[0] = cs[j2].x; + v[1] = cs[j2].y; + } else { + v[0] = cs[j1].x; + v[1] = cs[j1].y; + } + v[2] = c->x; + v[3] = c->y; + (void) ht_insert(nn->bad, &key, v); + det = 0.0; + } else { + int ii; + + /* + * Looking for a matching "bad" triangle. I guess it is + * possible that the first circle will come out from + * circle_build2()as "bad", but the matching cicle will not; + * hence the ">" condition below. + */ + if (j1bad || cs[j1].r > cs[j2].r) { + v[6] = cs[j2].x; + v[7] = cs[j2].y; + } else { + v[6] = cs[j1].x; + v[7] = cs[j1].y; + } + v[4] = c->x; + v[5] = c->y; + + det = 0; + for (ii = 0; ii < 4; ++ii) { + int ii1 = (ii + 1) % 4; + + det += (v[ii * 2] + v[ii1 * 2]) * (v[ii * 2 + 1] - v[ii1 * 2 + 1]); + } + det = fabs(det); + + free(v); + ht_delete(nn->bad, &key); + } + } + + nnpi_add_weight(nn, t->vids[j], det); + } +} + +static int compare_int(const void* p1, const void* p2) +{ + int* v1 = (int*) p1; + int* v2 = (int*) p2; + + if (*v1 > *v2) + return 1; + else if (*v1 < *v2) + return -1; + else + return 0; +} + +typedef struct { + point* p0; + point* p1; + point* p; + int i; +} indexedpoint; + +static int onleftside(point* p, point* p0, point* p1) +{ + return (p0->x - p->x) * (p1->y - p->y) > (p1->x - p->x) * (p0->y - p->y); +} + +static int compare_indexedpoints(const void* pp1, const void* pp2) +{ + indexedpoint* ip1 = (indexedpoint*) pp1; + indexedpoint* ip2 = (indexedpoint*) pp2; + point* p0 = ip1->p0; + point* p1 = ip1->p1; + point* a = ip1->p; + point* b = ip2->p; + + if (onleftside(a, p0, b)) { + if (onleftside(a, p0, p1) && !onleftside(b, p0, p1)) + /* + * (the reason for the second check is that while we want to sort + * the natural neighbours in a clockwise manner, one needs to break + * the circuit at some point) + */ + return 1; + else + return -1; + } else { + if (onleftside(b, p0, p1) && !onleftside(a, p0, p1)) + /* + * (see the comment above) + */ + return -1; + else + return 1; + } +} + +static void nnpi_getneighbours(nnpi* nn, point* p, int nt, int* tids, int* n, int** nids) +{ + delaunay* d = nn->ds->d; + istack* neighbours = istack_create(); + indexedpoint* v = NULL; + int i; + + for (i = 0; i < nt; ++i) { + triangle* t = &d->triangles[tids[i]]; + + istack_push(neighbours, t->vids[0]); + istack_push(neighbours, t->vids[1]); + istack_push(neighbours, t->vids[2]); + } + qsort(neighbours->v, neighbours->n, sizeof(int), compare_int); + + v = malloc(sizeof(indexedpoint) * neighbours->n); + + v[0].p = &d->points[neighbours->v[0]]; + v[0].i = neighbours->v[0]; + *n = 1; + for (i = 1; i < neighbours->n; ++i) { + if (neighbours->v[i] == neighbours->v[i - 1]) + continue; + v[*n].p = &d->points[neighbours->v[i]]; + v[*n].i = neighbours->v[i]; + (*n)++; + } + + /* + * I assume that if there is exactly one tricircle the point belongs to, + * then number of natural neighbours *n = 3, and they are already sorted + * in the right way in triangulation process. + */ + if (*n > 3) { + v[0].p0 = NULL; + v[0].p1 = NULL; + for (i = 1; i < *n; ++i) { + v[i].p0 = p; + v[i].p1 = v[0].p; + } + + qsort(&v[1], *n - 1, sizeof(indexedpoint), compare_indexedpoints); + } + + (*nids) = malloc(*n * sizeof(int)); + + for (i = 0; i < *n; ++i) + (*nids)[i] = v[i].i; + + istack_destroy(neighbours); + free(v); +} + +static int nnpi_neighbours_process(nnpi* nn, point* p, int n, int* nids) +{ + delaunay* d = nn->ds->d; + int i; + + for (i = 0; i < n; ++i) { + int im1 = (i + n - 1) % n; + int ip1 = (i + 1) % n; + point* p0 = &d->points[nids[i]]; + point* pp1 = &d->points[nids[ip1]]; + point* pm1 = &d->points[nids[im1]]; + double nom1, nom2, denom1, denom2; + + denom1 = (p0->x - p->x) * (pp1->y - p->y) - (p0->y - p->y) * (pp1->x - p->x); + denom2 = (p0->x - p->x) * (pm1->y - p->y) - (p0->y - p->y) * (pm1->x - p->x); + if (denom1 == 0.0) { + if (p->x == p0->x && p->y == p0->y) { + nnpi_add_weight(nn, nids[i], BIGNUMBER); + return 1; + } else if (p->x == pp1->x && p->y == pp1->y) { + nnpi_add_weight(nn, nids[ip1], BIGNUMBER); + return 1; + } else { + nn->dx = EPS_SHIFT * (pp1->y - p0->y); + nn->dy = -EPS_SHIFT * (pp1->x - p0->x); + return 0; + } + } + if (denom2 == 0.0) { + if (p->x == pm1->x && p->y == pm1->y) { + nnpi_add_weight(nn, nids[im1], BIGNUMBER); + return 1; + } else { + nn->dx = EPS_SHIFT * (pm1->y - p0->y); + nn->dy = -EPS_SHIFT * (pm1->x - p0->x); + return 0; + } + } + + nom1 = (p0->x - pp1->x) * (pp1->x - p->x) + (p0->y - pp1->y) * (pp1->y - p->y); + nom2 = (p0->x - pm1->x) * (pm1->x - p->x) + (p0->y - pm1->y) * (pm1->y - p->y); + nnpi_add_weight(nn, nids[i], nom1 / denom1 - nom2 / denom2); + } + + return 1; +} + +static int _nnpi_calculate_weights(nnpi* nn, point* p) +{ + int* tids = NULL; + int i; + + dsearch_circles_find(nn->ds, p, &nn->ncircles, &tids); + if (nn->ncircles == 0) + return 1; + + /* + * The algorithms of calculating weights for Sibson and non-Sibsonian + * interpolations are quite different; in the first case, the weights are + * calculated by processing Delaunay triangles whose tricircles contain + * the interpolated point; in the second case, they are calculated by + * processing triplets of natural neighbours by moving clockwise or + * counterclockwise around the interpolated point. + */ + if (nn_rule == SIBSON) { + for (i = 0; i < nn->ncircles; ++i) + nnpi_triangle_process(nn, p, tids[i]); + if (nn->bad != NULL) { + int nentries = ht_getnentries(nn->bad); + + if (nentries > 0) { + ht_process(nn->bad, free); + return 0; + } + } + return 1; + } else if (nn_rule == NON_SIBSONIAN) { + int nneigh = 0; + int* nids = NULL; + int status; + + nnpi_getneighbours(nn, p, nn->ncircles, tids, &nneigh, &nids); + status = nnpi_neighbours_process(nn, p, nneigh, nids); + free(nids); + + return status; + } else + nn_quit("programming error"); + + return 0; +} + +static void nnpi_normalize_weights(nnpi* nn) +{ + int n = nn->nvertices; + double sum = 0.0; + int i; + + for (i = 0; i < n; ++i) + sum += nn->weights[i]; + + for (i = 0; i < n; ++i) + nn->weights[i] /= sum; +} + +#define RANDOM (double) rand() / ((double) RAND_MAX + 1.0) + +void nnpi_calculate_weights(nnpi* nn, point* p) +{ + delaunay* d = nn->ds->d; + point pp; + int nvertices = 0; + int* vertices = NULL; + double* weights = NULL; + int i; + + nnpi_reset(nn); + + if (_nnpi_calculate_weights(nn, p)) { + nnpi_normalize_weights(nn); + return; + } + + nnpi_reset(nn); + + nn->dx = (d->xmax - d->xmin) * EPS_SHIFT; + nn->dy = (d->ymax - d->ymin) * EPS_SHIFT; + + pp.x = p->x + nn->dx; + pp.y = p->y + nn->dy; + + while (!_nnpi_calculate_weights(nn, &pp)) { + nnpi_reset(nn); + pp.x = p->x + nn->dx * RANDOM; + pp.y = p->y + nn->dy * RANDOM; + } + nnpi_normalize_weights(nn); + + nvertices = nn->nvertices; + if (nvertices > 0) { + vertices = malloc(nvertices * sizeof(int)); + memcpy(vertices, nn->vertices, nvertices * sizeof(int)); + weights = malloc(nvertices * sizeof(double)); + memcpy(weights, nn->weights, nvertices * sizeof(double)); + } + + nnpi_reset(nn); + + pp.x = 2.0 * p->x - pp.x; + pp.y = 2.0 * p->y - pp.y; + + while (!_nnpi_calculate_weights(nn, &pp) || nn->nvertices == 0) { + nnpi_reset(nn); + pp.x = p->x + nn->dx * RANDOM; + pp.y = p->y + nn->dy * RANDOM; + } + nnpi_normalize_weights(nn); + + if (nvertices > 0) + for (i = 0; i < nn->nvertices; ++i) + nn->weights[i] /= 2.0; + + for (i = 0; i < nvertices; ++i) + nnpi_add_weight(nn, vertices[i], weights[i] / 2.0); + + if (nvertices > 0) { + free(vertices); + free(weights); + } +} + +typedef struct { + double* v; + int i; +} indexedvalue; + +static int cmp_iv(const void* p1, const void* p2) +{ + double v1 = *((indexedvalue *) p1)->v; + double v2 = *((indexedvalue *) p2)->v; + + if (v1 > v2) + return -1; + if (v1 < v2) + return 1; + return 0; +} + +/* Performs Natural Neighbours interpolation in a point. + * + * @param nn NN interpolation + * @param p Point to be interpolated (p->x, p->y -- input; p->z -- output) + */ +void nnpi_interpolate_point(nnpi* nn, point* p) +{ + delaunay* d = nn->ds->d; + int i; + + nnpi_calculate_weights(nn, p); + + if (nn_verbose) { + if (nn_test_vertice == -1) { + indexedvalue* ivs = NULL; + + if (nn->nvertices > 0) { + ivs = malloc(nn->nvertices * sizeof(indexedvalue)); + + for (i = 0; i < nn->nvertices; ++i) { + ivs[i].i = nn->vertices[i]; + ivs[i].v = &nn->weights[i]; + } + + qsort(ivs, nn->nvertices, sizeof(indexedvalue), cmp_iv); + } + + if (nn->n == 0) + fprintf(stderr, "weights:\n"); + fprintf(stderr, " %d: (%.10g, %10g)\n", nn->n, p->x, p->y); + fprintf(stderr, " %4s %15s %15s %15s %15s\n", "id", "x", "y", "z", "w"); + for (i = 0; i < nn->nvertices; ++i) { + int ii = ivs[i].i; + point* pp = &d->points[ii]; + + fprintf(stderr, " %5d %15.10g %15.10g %15.10g %15f\n", ii, pp->x, pp->y, pp->z, *ivs[i].v); + } + + if (nn->nvertices > 0) + free(ivs); + } else { + double w = 0.0; + + if (nn->n == 0) + fprintf(stderr, "weight of vertex %d:\n", nn_test_vertice); + for (i = 0; i < nn->nvertices; ++i) { + if (nn->vertices[i] == nn_test_vertice) { + w = nn->weights[i]; + break; + } + } + fprintf(stderr, " (%.10g, %.10g): %.7g\n", p->x, p->y, w); + } + } + + nn->n++; + + if (nn->nvertices == 0) { + p->z = NaN; + return; + } + + p->z = 0.0; + for (i = 0; i < nn->nvertices; ++i) { + double weight = nn->weights[i]; + + if (weight < nn->wmin) { + p->z = NaN; + return; + } + p->z += d->points[nn->vertices[i]].z * weight; + } +} + +/* Performs Natural Neighbours interpolation for an array of points. + * + * @param d Delaunay triangulation + * @param pin Array of input points [pin] + * @param wmin Minimal allowed weight + * @param nout Number of output points + * @param pout Array of output points [nout] + */ +void nnpi_interpolate_points(delaunay* d, double wmin, int nout, point pout[]) +{ + nnpi* nn = nnpi_create(d); + int seed = 0; + int i; + + nnpi_setwmin(nn, wmin); + + if (nn_verbose) { + fprintf(stderr, "xytoi:\n"); + for (i = 0; i < nout; ++i) { + point* p = &pout[i]; + + fprintf(stderr, "(%.7g,%.7g) -> %d\n", p->x, p->y, delaunay_xytoi(d, p, seed)); + } + } + + for (i = 0; i < nout; ++i) + nnpi_interpolate_point(nn, &pout[i]); + + if (nn_verbose) { + fprintf(stderr, "output:\n"); + for (i = 0; i < nout; ++i) { + point* p = &pout[i]; + + fprintf(stderr, " %d:%15.7g %15.7g %15.7g\n", i, p->x, p->y, p->z); + } + } + + nnpi_destroy(nn); +} + +/* Sets minimal allowed weight for Natural Neighbours interpolation. + * + * For Sibson interpolation, setting wmin = 0 is equivalent to interpolating + * inside convex hall of the data only (returning NaNs otherwise). + * + * @param nn Natural Neighbours point interpolator + * @param wmin Minimal allowed weight + */ +void nnpi_setwmin(nnpi* nn, double wmin) +{ + nn->wmin = (wmin == 0) ? -EPS_WMIN : wmin; +} + +/* Gets number of data points involved in current interpolation. For use by + * `nnai'. + * + * @return Number of data points involved in current interpolation + */ +int nnpi_get_nvertices(nnpi* nn) +{ + return nn->nvertices; +} + +/* Gets indices of data points involved in current interpolation. For use by + * `nnai'. + * + * @return indices of data points involved in current interpolation + */ +int* nnpi_get_vertices(nnpi* nn) +{ + return nn->vertices; +} + +/* Gets weights of data points involved in current interpolation. For use by + * `nnai'. + * @return weights of data points involved in current interpolation + */ +double* nnpi_get_weights(nnpi* nn) +{ + return nn->weights; +} + +/* + * nnhpi + */ + +struct nnhpi { + nnpi* nnpi; + hashtable* ht_data; + hashtable* ht_weights; + int n; /* number of points processed */ +}; + +typedef struct { + int nvertices; + int* vertices; /* vertex indices [nvertices] */ + double* weights; /* vertex weights [nvertices] */ +} nn_weights; + +/* Creates Natural Neighbours hashing point interpolator. + * + * @param d Delaunay triangulation + * @param size Hash table size (should be of order of number of output points) + * @return Natural Neighbours interpolation + */ +nnhpi* nnhpi_create(delaunay* d, int size) +{ + nnhpi* nn = malloc(sizeof(nnhpi)); + int i; + + nn->nnpi = nnpi_create(d); + + nn->ht_data = ht_create_d2(d->npoints); + nn->ht_weights = ht_create_d2(size); + nn->n = 0; + + for (i = 0; i < d->npoints; ++i) + ht_insert(nn->ht_data, &d->points[i], &d->points[i]); + + return nn; +} + +static void free_nn_weights(void* data) +{ + nn_weights* weights = (nn_weights*) data; + + free(weights->vertices); + free(weights->weights); + free(weights); +} + +/* Destroys Natural Neighbours hashing point interpolation. + * + * @param nn Structure to be destroyed + */ +void nnhpi_destroy(nnhpi* nn) +{ + ht_destroy(nn->ht_data); + ht_process(nn->ht_weights, free_nn_weights); + ht_destroy(nn->ht_weights); + nnpi_destroy(nn->nnpi); +} + +/* Finds Natural Neighbours-interpolated value in a point. + * + * @param nnhpi NN point hashing interpolator + * @param p Point to be interpolated (p->x, p->y -- input; p->z -- output) + */ +void nnhpi_interpolate(nnhpi* nnhpi, point* p) +{ + nnpi* nnpi = nnhpi->nnpi; + delaunay* d = nnpi->ds->d; + hashtable* ht_weights = nnhpi->ht_weights; + nn_weights* weights; + int i; + + if (ht_find(ht_weights, p) != NULL) { + weights = ht_find(ht_weights, p); + if (nn_verbose) + fprintf(stderr, " \n"); + } else { + nnpi_calculate_weights(nnpi, p); + + weights = malloc(sizeof(nn_weights)); + weights->vertices = malloc(sizeof(int) * nnpi->nvertices); + weights->weights = malloc(sizeof(double) * nnpi->nvertices); + + weights->nvertices = nnpi->nvertices; + + for (i = 0; i < nnpi->nvertices; ++i) { + weights->vertices[i] = nnpi->vertices[i]; + weights->weights[i] = nnpi->weights[i]; + } + + ht_insert(ht_weights, p, weights); + + if (nn_verbose) { + if (nn_test_vertice == -1) { + if (nnpi->n == 0) + fprintf(stderr, "weights:\n"); + fprintf(stderr, " %d: {", nnpi->n); + + for (i = 0; i < nnpi->nvertices; ++i) { + fprintf(stderr, "(%d,%.5g)", nnpi->vertices[i], nnpi->weights[i]); + + if (i < nnpi->nvertices - 1) + fprintf(stderr, ", "); + } + fprintf(stderr, "}\n"); + } else { + double w = 0.0; + + if (nnpi->n == 0) + fprintf(stderr, "weights for vertex %d:\n", nn_test_vertice); + for (i = 0; i < nnpi->nvertices; ++i) { + if (nnpi->vertices[i] == nn_test_vertice) { + w = nnpi->weights[i]; + + break; + } + } + fprintf(stderr, "%15.7g %15.7g %15.7g\n", p->x, p->y, w); + } + } + + nnpi->n++; + } + + nnhpi->n++; + + if (weights->nvertices == 0) { + p->z = NaN; + return; + } + + p->z = 0.0; + for (i = 0; i < weights->nvertices; ++i) { + if (weights->weights[i] < nnpi->wmin) { + p->z = NaN; + return; + } + p->z += d->points[weights->vertices[i]].z * weights->weights[i]; + } +} + +void nnhpi_interpolate_get_weights(nnhpi* nnhpi, point* p, double* weight_out, int* neighbor_index, + int max_nneighbor, int point_index) +{ + nnpi* nnpi = nnhpi->nnpi; + //delaunay* d = nnpi->ds->d; + hashtable* ht_weights = nnhpi->ht_weights; + nn_weights* weights; + int i; + int count; + + if (ht_find(ht_weights, p) != NULL) { + weights = ht_find(ht_weights, p); + if (nn_verbose) + fprintf(stderr, " \n"); + } else { + nnpi_calculate_weights(nnpi, p); + + weights = malloc(sizeof(nn_weights)); + weights->vertices = malloc(sizeof(int) * nnpi->nvertices); + weights->weights = malloc(sizeof(double) * nnpi->nvertices); + + weights->nvertices = nnpi->nvertices; + + for (i = 0; i < nnpi->nvertices; ++i) { + weights->vertices[i] = nnpi->vertices[i]; + weights->weights[i] = nnpi->weights[i]; + } + + ht_insert(ht_weights, p, weights); + + if (nn_verbose) { + if (nn_test_vertice == -1) { + if (nnpi->n == 0) + fprintf(stderr, "weights:\n"); + fprintf(stderr, " %d: {", nnpi->n); + + for (i = 0; i < nnpi->nvertices; ++i) { + fprintf(stderr, "(%d,%.5g)", nnpi->vertices[i], nnpi->weights[i]); + + if (i < nnpi->nvertices - 1) + fprintf(stderr, ", "); + } + fprintf(stderr, "}\n"); + } else { + double w = 0.0; + + if (nnpi->n == 0) + fprintf(stderr, "weights for vertex %d:\n", nn_test_vertice); + for (i = 0; i < nnpi->nvertices; ++i) { + if (nnpi->vertices[i] == nn_test_vertice) { + w = nnpi->weights[i]; + + break; + } + } + fprintf(stderr, "%15.7g %15.7g %15.7g\n", p->x, p->y, w); + } + } + + nnpi->n++; + } + + nnhpi->n++; + + if (weights->nvertices == 0) { + //p->z = NaN; + return; + } + + //p->z = 0.0; + count = 0; + for (i = 0; i < weights->nvertices; ++i) { + if (count < weights->nvertices){ + if (weights->weights[i] < nnpi->wmin) { + //p->z = NaN; + return; + } + //p->z += d->points[weights->vertices[i]].z * weights->weights[i]; + weight_out[point_index * max_nneighbor + count] = weights->weights[i]; + neighbor_index[point_index * max_nneighbor + count] = weights->vertices[i]; + //printf("weights vertices: %d", weights->vertices[i]); + //printf("vertices: %d\n", neighbor_index[point_index * max_nneighbor + count]); + //printf("values: %f\n", d->points[weights->vertices[i]].z); + count++; + } else { + printf("neighour number exceed maximum!"); + fflush(stdout); + abort(); + exit(1); + } + } +} + + +int nnhpi_interpolate_output_marker(nnhpi* nnhpi, point* p) +{ + nnpi* nnpi = nnhpi->nnpi; + delaunay* d = nnpi->ds->d; + hashtable* ht_weights = nnhpi->ht_weights; + nn_weights* weights; + int i; + + if (ht_find(ht_weights, p) != NULL) { + weights = ht_find(ht_weights, p); + if (nn_verbose) + fprintf(stderr, " \n"); + } else { + nnpi_calculate_weights(nnpi, p); + + weights = malloc(sizeof(nn_weights)); + weights->vertices = malloc(sizeof(int) * nnpi->nvertices); + weights->weights = malloc(sizeof(double) * nnpi->nvertices); + + weights->nvertices = nnpi->nvertices; + + for (i = 0; i < nnpi->nvertices; ++i) { + weights->vertices[i] = nnpi->vertices[i]; + weights->weights[i] = nnpi->weights[i]; + } + + ht_insert(ht_weights, p, weights); + + if (nn_verbose) { + if (nn_test_vertice == -1) { + if (nnpi->n == 0) + fprintf(stderr, "weights:\n"); + fprintf(stderr, " %d: {", nnpi->n); + + for (i = 0; i < nnpi->nvertices; ++i) { + fprintf(stderr, "(%d,%.5g)", nnpi->vertices[i], nnpi->weights[i]); + + if (i < nnpi->nvertices - 1) + fprintf(stderr, ", "); + } + fprintf(stderr, "}\n"); + } else { + double w = 0.0; + + if (nnpi->n == 0) + fprintf(stderr, "weights for vertex %d:\n", nn_test_vertice); + for (i = 0; i < nnpi->nvertices; ++i) { + if (nnpi->vertices[i] == nn_test_vertice) { + w = nnpi->weights[i]; + + break; + } + } + fprintf(stderr, "%15.7g %15.7g %15.7g\n", p->x, p->y, w); + } + } + + nnpi->n++; + } + + nnhpi->n++; + + if (weights->nvertices == 0) { + p->z = NaN; + return -1; + } + + p->z = 0.0; + for (i = 0; i < weights->nvertices; ++i) { + if (weights->weights[i] >= 0.0){ + if (weights->weights[i] < nnpi->wmin) { + p->z = NaN; + return -1; + } + p->z += d->points[weights->vertices[i]].z * weights->weights[i]; + } else + { + return -1; + } + } + return 1; +} + + + +/* Modifies interpolated data. + * + * Finds point* pd in the underlying Delaunay triangulation such that + * pd->x = p->x and pd->y = p->y, and copies p->z to pd->z. Exits with error + * if the point is not found. + * + * @param nnhpi Natural Neighbours hashing point interpolator + * @param p New data + */ +void nnhpi_modify_data(nnhpi* nnhpi, point* p) +{ + point* orig = ht_find(nnhpi->ht_data, p); + + assert(orig != NULL); + orig->z = p->z; +} + +/* Sets minimal allowed weight for Natural Neighbours interpolation. + * + * For Sibson interpolation, setting wmin = 0 is equivalent to interpolating + * inside convex hall of the data only (returning NaNs otherwise). + * + * @param nn Natural Neighbours point hashing interpolator + * @param wmin Minimal allowed weight + */ +void nnhpi_setwmin(nnhpi* nn, double wmin) +{ + nn->nnpi->wmin = wmin; +} + +#if defined(NNPHI_TEST) + +#include + +#define NPOINTSIN 10000 +#define NMIN 10 +#define NX 101 +#define NXMIN 1 + +#define SQ(x) ((x) * (x)) + +static double franke(double x, double y) +{ + x *= 9.0; + y *= 9.0; + return 0.75 * exp((-SQ(x - 2.0) - SQ(y - 2.0)) / 4.0) + + 0.75 * exp(-SQ(x - 2.0) / 49.0 - (y - 2.0) / 10.0) + + 0.5 * exp((-SQ(x - 7.0) - SQ(y - 3.0)) / 4.0) + - 0.2 * exp(-SQ(x - 4.0) - SQ(y - 7.0)); +} + +static void usage() +{ + printf("Usage: nnhpi_test [-a] [-n ] [-v|-V]\n"); + printf("Options:\n"); + printf(" -a -- use non-Sibsonian interpolation rule\n"); + printf(" -n :\n"); + printf(" -- number of input points (default = 10000)\n"); + printf(" -- number of output points per side (default = 64)\n"); + printf(" -v -- verbose\n"); + printf(" -V -- very verbose\n"); + + exit(0); +} + +int main(int argc, char* argv[]) +{ + int nin = NPOINTSIN; + int nx = NX; + int nout = 0; + point* pin = NULL; + delaunay* d = NULL; + point* pout = NULL; + nnhpi* nn = NULL; + int cpi = -1; /* control point index */ + struct timeval tv0, tv1; + struct timezone tz; + int i; + + i = 1; + while (i < argc) { + switch (argv[i][1]) { + case 'a': + i++; + nn_rule = NON_SIBSONIAN; + break; + case 'n': + i++; + if (i >= argc) + nn_quit("no number of data points found after -n\n"); + nin = atoi(argv[i]); + i++; + if (i >= argc) + nn_quit("no number of ouput points per side found after -i\n"); + nx = atoi(argv[i]); + i++; + break; + case 'v': + i++; + nn_verbose = 1; + break; + case 'V': + i++; + nn_verbose = 2; + break; + default: + usage(); + break; + } + } + + if (nin < NMIN) + nin = NMIN; + if (nx < NXMIN) + nx = NXMIN; + + printf("\nTest of Natural Neighbours hashing point interpolator:\n\n"); + printf(" %d data points\n", nin); + printf(" %d output points\n", nx * nx); + + /* + * generate data + */ + printf(" generating data:\n"); + fflush(stdout); + pin = malloc(nin * sizeof(point)); + for (i = 0; i < nin; ++i) { + point* p = &pin[i]; + + p->x = (double) random() / RAND_MAX; + p->y = (double) random() / RAND_MAX; + p->z = franke(p->x, p->y); + if (nn_verbose) + printf(" (%f, %f, %f)\n", p->x, p->y, p->z); + } + + /* + * triangulate + */ + printf(" triangulating:\n"); + fflush(stdout); + d = delaunay_build(nin, pin, 0, NULL, 0, NULL); + + /* + * generate output points + */ + points_generate(-0.1, 1.1, -0.1, 1.1, nx, nx, &nout, &pout); + cpi = (nx / 2) * (nx + 1); + + gettimeofday(&tv0, &tz); + + /* + * create interpolator + */ + printf(" creating interpolator:\n"); + fflush(stdout); + nn = nnhpi_create(d, nout); + + fflush(stdout); + gettimeofday(&tv1, &tz); + { + long dt = 1000000 * (tv1.tv_sec - tv0.tv_sec) + tv1.tv_usec - tv0.tv_usec; + + printf(" interpolator creation time = %ld us (%.2f us / point)\n", dt, (double) dt / nout); + } + + /* + * interpolate + */ + printf(" interpolating:\n"); + fflush(stdout); + gettimeofday(&tv1, &tz); + for (i = 0; i < nout; ++i) { + point* p = &pout[i]; + + nnhpi_interpolate(nn, p); + if (nn_verbose) + printf(" (%f, %f, %f)\n", p->x, p->y, p->z); + } + + fflush(stdout); + gettimeofday(&tv0, &tz); + { + long dt = 1000000.0 * (tv0.tv_sec - tv1.tv_sec) + tv0.tv_usec - tv1.tv_usec; + + printf(" interpolation time = %ld us (%.2f us / point)\n", dt, (double) dt / nout); + } + + if (!nn_verbose) + printf(" control point: (%f, %f, %f) (expected z = %f)\n", pout[cpi].x, pout[cpi].y, pout[cpi].z, franke(pout[cpi].x, pout[cpi].y)); + + printf(" interpolating one more time:\n"); + fflush(stdout); + gettimeofday(&tv0, &tz); + for (i = 0; i < nout; ++i) { + point* p = &pout[i]; + + nnhpi_interpolate(nn, p); + if (nn_verbose) + printf(" (%f, %f, %f)\n", p->x, p->y, p->z); + } + + fflush(stdout); + gettimeofday(&tv1, &tz); + { + long dt = 1000000.0 * (tv1.tv_sec - tv0.tv_sec) + tv1.tv_usec - tv0.tv_usec; + + printf(" interpolation time = %ld us (%.2f us / point)\n", dt, (double) dt / nout); + } + + if (!nn_verbose) + printf(" control point: (%f, %f, %f) (expected z = %f)\n", pout[cpi].x, pout[cpi].y, pout[cpi].z, franke(pout[cpi].x, pout[cpi].y)); + + printf(" entering new data:\n"); + fflush(stdout); + for (i = 0; i < nin; ++i) { + point* p = &pin[i]; + + p->z = p->x * p->x - p->y * p->y; + nnhpi_modify_data(nn, p); + if (nn_verbose) + printf(" (%f, %f, %f)\n", p->x, p->y, p->z); + } + + printf(" interpolating:\n"); + fflush(stdout); + gettimeofday(&tv1, &tz); + for (i = 0; i < nout; ++i) { + point* p = &pout[i]; + + nnhpi_interpolate(nn, p); + if (nn_verbose) + printf(" (%f, %f, %f)\n", p->x, p->y, p->z); + } + + fflush(stdout); + gettimeofday(&tv0, &tz); + { + long dt = 1000000.0 * (tv0.tv_sec - tv1.tv_sec) + tv0.tv_usec - tv1.tv_usec; + + printf(" interpolation time = %ld us (%.2f us / point)\n", dt, (double) dt / nout); + } + + if (!nn_verbose) + printf(" control point: (%f, %f, %f) (expected z = %f)\n", pout[cpi].x, pout[cpi].y, pout[cpi].z, pout[cpi].x * pout[cpi].x - pout[cpi].y * pout[cpi].y); + + printf(" restoring data:\n"); + fflush(stdout); + for (i = 0; i < nin; ++i) { + point* p = &pin[i]; + + p->z = franke(p->x, p->y); + nnhpi_modify_data(nn, p); + if (nn_verbose) + printf(" (%f, %f, %f)\n", p->x, p->y, p->z); + } + + printf(" interpolating:\n"); + fflush(stdout); + gettimeofday(&tv0, &tz); + for (i = 0; i < nout; ++i) { + point* p = &pout[i]; + + nnhpi_interpolate(nn, p); + if (nn_verbose) + printf(" (%f, %f, %f)\n", p->x, p->y, p->z); + } + + fflush(stdout); + gettimeofday(&tv1, &tz); + { + long dt = 1000000.0 * (tv1.tv_sec - tv0.tv_sec) + tv1.tv_usec - tv0.tv_usec; + + printf(" interpolation time = %ld us (%.2f us / point)\n", dt, (double) dt / nout); + } + + if (!nn_verbose) + printf(" control point: (%f, %f, %f) (expected z = %f)\n", pout[cpi].x, pout[cpi].y, pout[cpi].z, franke(pout[cpi].x, pout[cpi].y)); + + printf(" hashtable stats:\n"); + fflush(stdout); + { + hashtable* ht = nn->ht_data; + + printf(" input points: %d entries, %d table elements, %d filled elements\n", ht_getnentries(ht), ht_getsize(ht), ht_getnfilled(ht)); + ht = nn->ht_weights; + printf(" weights: %d entries, %d table elements, %d filled elements\n", ht_getnentries(ht), ht_getsize(ht), ht_getnfilled(ht)); + } + printf("\n"); + + nnhpi_destroy(nn); + free(pout); + delaunay_destroy(d); + free(pin); + + return 0; +} + +#endif diff --git a/autoarray/util/nn/src/nn/nnpi.h b/autoarray/util/nn/src/nn/nnpi.h index 82c4100d0..4f48242e1 100644 --- a/autoarray/util/nn/src/nn/nnpi.h +++ b/autoarray/util/nn/src/nn/nnpi.h @@ -1,5 +1,5 @@ -void nnpi_calculate_weights(nnpi* nn, point* p); -int nnpi_get_nvertices(nnpi* nn); -int* nnpi_get_vertices(nnpi* nn); -double* nnpi_get_weights(nnpi* nn); -//int test_add(int a, int b); +void nnpi_calculate_weights(nnpi* nn, point* p); +int nnpi_get_nvertices(nnpi* nn); +int* nnpi_get_vertices(nnpi* nn); +double* nnpi_get_weights(nnpi* nn); +//int test_add(int a, int b); diff --git a/autoarray/util/nn/src/nn/preader.c b/autoarray/util/nn/src/nn/preader.c index f7d321761..9fbb668d9 100644 --- a/autoarray/util/nn/src/nn/preader.c +++ b/autoarray/util/nn/src/nn/preader.c @@ -1,225 +1,225 @@ -/****************************************************************************** - * - * File: preader.c - * - * Created: 29/05/2006 - * - * Author: Pavel Sakov - * CSIRO Marine Research - * - * Purpose: Serial "reader" of the output point locations - * - * Description: The `reader' object enables the client code to "read" one - * output point at a time, either from a file or from a virtual - * nx x ny grid. As a result, using `reader' makes it possible - * to interpolate on a point-by-point basis, avoiding allocation - * of the whole output array in memory. - * - * Revisions: None - * - *****************************************************************************/ - -#include -#include -#include -#include -#include -#include -#include -#include "config.h" -#include "nan.h" -#include "nn.h" -#include "nncommon.h" -#include "preader.h" - -#define BUFSIZE 1024 - -typedef struct { - char* fname; - FILE* f; - int n; - point p; -} reader; - -typedef struct { - int nx; - int ny; - int nmax; - double stepx; - double stepy; - double x0; - int n; - point p; -} grid; - -struct preader { - grid* g; - reader* r; -}; - -static grid* grid_create(double xmin, double xmax, double ymin, double ymax, int nx, int ny, int j1, int j2) -{ - grid* g = NULL; - int i; - - if (nx < 1 || ny < 1) - return NULL; - - g = malloc(sizeof(grid)); - g->nx = nx; - g->ny = ny; - g->nmax = nx * ny; - - if (j1 < 0 || j2 < 0) - j1 = 0; - else - g->nmax = nx * (j2 - j1 + 1); - - g->stepx = (nx > 1) ? (xmax - xmin) / (nx - 1) : 0.0; - g->stepy = (ny > 1) ? (ymax - ymin) / (ny - 1) : 0.0; - g->x0 = (nx > 1) ? xmin : (xmin + xmax) / 2.0; - g->p.y = (ny > 1) ? ymin - g->stepy : (ymin + ymax) / 2.0; - for (i = 0; i < j1; ++i) - g->p.y += g->stepy; - g->n = 0; - - return g; -} - -static point* grid_getpoint(grid* g) -{ - if (g->n >= g->nmax) - return NULL; - - if (g->n % g->nx == 0) { - g->p.x = g->x0; - g->p.y += g->stepy; - } else - g->p.x += g->stepx; - - g->n++; - - return &g->p; -} - -static void grid_destroy(grid* g) -{ - free(g); -} - -static reader* reader_create(char* fname) -{ - reader* r = malloc(sizeof(reader)); - - r->fname = NULL; - r->f = NULL; - r->p.x = NaN; - r->p.y = NaN; - r->p.z = NaN; - r->n = 0; - - if (fname == NULL) { - r->fname = strdup("stdin"); - r->f = stdin; - } else { - if (strcmp(fname, "stdin") == 0 || strcmp(fname, "-") == 0) { - r->fname = strdup("stdin"); - r->f = stdin; - } else { - r->fname = strdup(fname); - r->f = fopen(fname, "r"); - if (r->f == NULL) - nn_quit("%s: %s\n", fname, strerror(errno)); - } - } - - return r; -} - -static point* reader_getpoint(reader* r) -{ - char buf[BUFSIZE]; - char seps[] = " ,;\t"; - char* token; - point* p = &r->p; - - if (r->f == NULL) - return NULL; - - while (1) { - if (fgets(buf, BUFSIZE, r->f) == NULL) { - if (r->f != stdin) - if (fclose(r->f) != 0) - nn_quit("%s: %s\n", r->fname, strerror(errno)); - r->f = NULL; - - return NULL; - } - - if (buf[0] == '#') - continue; - if ((token = strtok(buf, seps)) == NULL) - continue; - if (!str2double(token, &p->x)) - continue; - if ((token = strtok(NULL, seps)) == NULL) - continue; - if (!str2double(token, &p->y)) - continue; - r->n++; - - return p; - } -} - -static void reader_destroy(reader* r) -{ - if (r->f != stdin && r->f != NULL) - if (fclose(r->f) != 0) - nn_quit("%s: %s\n", r->fname, strerror(errno)); - free(r->fname); - free(r); -} - -preader* preader_create1(double xmin, double xmax, double ymin, double ymax, int nx, int ny, int j1, int j2) -{ - preader* pr = malloc(sizeof(preader)); - - pr->r = NULL; - pr->g = grid_create(xmin, xmax, ymin, ymax, nx, ny, j1, j2); - - return pr; -} - -preader* preader_create2(char* fname) -{ - preader* pr = malloc(sizeof(preader)); - - pr->g = NULL; - pr->r = reader_create(fname); - - return pr; -} - -int preader_istype1(preader* pr) -{ - return (pr->g != NULL); -} - -point* preader_getpoint(preader* pr) -{ - if (pr->g != NULL) - return grid_getpoint(pr->g); - else - return reader_getpoint(pr->r); -} - -void preader_destroy(preader* pr) -{ - if (pr->g != NULL) - grid_destroy(pr->g); - else - reader_destroy(pr->r); - - free(pr); -} +/****************************************************************************** + * + * File: preader.c + * + * Created: 29/05/2006 + * + * Author: Pavel Sakov + * CSIRO Marine Research + * + * Purpose: Serial "reader" of the output point locations + * + * Description: The `reader' object enables the client code to "read" one + * output point at a time, either from a file or from a virtual + * nx x ny grid. As a result, using `reader' makes it possible + * to interpolate on a point-by-point basis, avoiding allocation + * of the whole output array in memory. + * + * Revisions: None + * + *****************************************************************************/ + +#include +#include +#include +#include +#include +#include +#include +#include "config.h" +#include "nan.h" +#include "nn.h" +#include "nncommon.h" +#include "preader.h" + +#define BUFSIZE 1024 + +typedef struct { + char* fname; + FILE* f; + int n; + point p; +} reader; + +typedef struct { + int nx; + int ny; + int nmax; + double stepx; + double stepy; + double x0; + int n; + point p; +} grid; + +struct preader { + grid* g; + reader* r; +}; + +static grid* grid_create(double xmin, double xmax, double ymin, double ymax, int nx, int ny, int j1, int j2) +{ + grid* g = NULL; + int i; + + if (nx < 1 || ny < 1) + return NULL; + + g = malloc(sizeof(grid)); + g->nx = nx; + g->ny = ny; + g->nmax = nx * ny; + + if (j1 < 0 || j2 < 0) + j1 = 0; + else + g->nmax = nx * (j2 - j1 + 1); + + g->stepx = (nx > 1) ? (xmax - xmin) / (nx - 1) : 0.0; + g->stepy = (ny > 1) ? (ymax - ymin) / (ny - 1) : 0.0; + g->x0 = (nx > 1) ? xmin : (xmin + xmax) / 2.0; + g->p.y = (ny > 1) ? ymin - g->stepy : (ymin + ymax) / 2.0; + for (i = 0; i < j1; ++i) + g->p.y += g->stepy; + g->n = 0; + + return g; +} + +static point* grid_getpoint(grid* g) +{ + if (g->n >= g->nmax) + return NULL; + + if (g->n % g->nx == 0) { + g->p.x = g->x0; + g->p.y += g->stepy; + } else + g->p.x += g->stepx; + + g->n++; + + return &g->p; +} + +static void grid_destroy(grid* g) +{ + free(g); +} + +static reader* reader_create(char* fname) +{ + reader* r = malloc(sizeof(reader)); + + r->fname = NULL; + r->f = NULL; + r->p.x = NaN; + r->p.y = NaN; + r->p.z = NaN; + r->n = 0; + + if (fname == NULL) { + r->fname = strdup("stdin"); + r->f = stdin; + } else { + if (strcmp(fname, "stdin") == 0 || strcmp(fname, "-") == 0) { + r->fname = strdup("stdin"); + r->f = stdin; + } else { + r->fname = strdup(fname); + r->f = fopen(fname, "r"); + if (r->f == NULL) + nn_quit("%s: %s\n", fname, strerror(errno)); + } + } + + return r; +} + +static point* reader_getpoint(reader* r) +{ + char buf[BUFSIZE]; + char seps[] = " ,;\t"; + char* token; + point* p = &r->p; + + if (r->f == NULL) + return NULL; + + while (1) { + if (fgets(buf, BUFSIZE, r->f) == NULL) { + if (r->f != stdin) + if (fclose(r->f) != 0) + nn_quit("%s: %s\n", r->fname, strerror(errno)); + r->f = NULL; + + return NULL; + } + + if (buf[0] == '#') + continue; + if ((token = strtok(buf, seps)) == NULL) + continue; + if (!str2double(token, &p->x)) + continue; + if ((token = strtok(NULL, seps)) == NULL) + continue; + if (!str2double(token, &p->y)) + continue; + r->n++; + + return p; + } +} + +static void reader_destroy(reader* r) +{ + if (r->f != stdin && r->f != NULL) + if (fclose(r->f) != 0) + nn_quit("%s: %s\n", r->fname, strerror(errno)); + free(r->fname); + free(r); +} + +preader* preader_create1(double xmin, double xmax, double ymin, double ymax, int nx, int ny, int j1, int j2) +{ + preader* pr = malloc(sizeof(preader)); + + pr->r = NULL; + pr->g = grid_create(xmin, xmax, ymin, ymax, nx, ny, j1, j2); + + return pr; +} + +preader* preader_create2(char* fname) +{ + preader* pr = malloc(sizeof(preader)); + + pr->g = NULL; + pr->r = reader_create(fname); + + return pr; +} + +int preader_istype1(preader* pr) +{ + return (pr->g != NULL); +} + +point* preader_getpoint(preader* pr) +{ + if (pr->g != NULL) + return grid_getpoint(pr->g); + else + return reader_getpoint(pr->r); +} + +void preader_destroy(preader* pr) +{ + if (pr->g != NULL) + grid_destroy(pr->g); + else + reader_destroy(pr->r); + + free(pr); +} diff --git a/autoarray/util/nn/src/nn/preader.h b/autoarray/util/nn/src/nn/preader.h index e2e24cf2c..3eb0fb34d 100644 --- a/autoarray/util/nn/src/nn/preader.h +++ b/autoarray/util/nn/src/nn/preader.h @@ -1,28 +1,28 @@ -/****************************************************************************** - * - * File: preader.h - * - * Created: 29/05/2006 - * - * Author: Pavel Sakov - * CSIRO Marine Research - * - * Purpose: A header file with preader.c - * - * Revisions: None - * - *****************************************************************************/ - -#if !defined(_PREADER_H) -#define _PREADER_H - -struct preader; -typedef struct preader preader; - -preader* preader_create1(double xmin, double xmax, double ymin, double ymax, int nx, int ny, int j1, int j2); -preader* preader_create2(char* fname); -point* preader_getpoint(preader* pr); -void preader_destroy(preader* pr); -int preader_istype1(preader* pr); - -#endif +/****************************************************************************** + * + * File: preader.h + * + * Created: 29/05/2006 + * + * Author: Pavel Sakov + * CSIRO Marine Research + * + * Purpose: A header file with preader.c + * + * Revisions: None + * + *****************************************************************************/ + +#if !defined(_PREADER_H) +#define _PREADER_H + +struct preader; +typedef struct preader preader; + +preader* preader_create1(double xmin, double xmax, double ymin, double ymax, int nx, int ny, int j1, int j2); +preader* preader_create2(char* fname); +point* preader_getpoint(preader* pr); +void preader_destroy(preader* pr); +int preader_istype1(preader* pr); + +#endif diff --git a/autoarray/util/nn/src/nn/sample.py b/autoarray/util/nn/src/nn/sample.py index 24c2e37c6..72ea99b2f 100644 --- a/autoarray/util/nn/src/nn/sample.py +++ b/autoarray/util/nn/src/nn/sample.py @@ -1,94 +1,94 @@ -import ctypes -import os -import numpy as np -import time -import matplotlib.pyplot as plt - - -def xy_function(x, y): - - return x * x + 2 * y - x * y - - -np.random.seed(2) - -nin = 4000 -x = 10.0 * np.random.random(nin) -y = 10.0 * np.random.random(nin) -z = xy_function(x, y) - -nout_1d = int(5) -nout = nout_1d * nout_1d -xout_oneside = np.linspace(10.0, 20.0, nout_1d) -yout_oneside = np.linspace(10.0, 20.0, nout_1d) -xout_2d, yout_2d = np.meshgrid(xout_oneside, yout_oneside) -xout = xout_2d.ravel() -yout = yout_2d.ravel() - -max_nneighbor = 25 -weights_out = np.zeros(nout * max_nneighbor, dtype=np.double) -neighbor_index = np.zeros(nout * max_nneighbor, dtype=np.intc) - 1 - - -# x = np.array(x, dtype='float') -# y = np.array(y, dtype='float') - -_file = "libqiuhan.so" -_mod = ctypes.cdll.LoadLibrary("./" + _file) - -interpolate_from_input = _mod.interpolate_weights_from_input - -interpolate_from_input.argtypes = ( - ctypes.POINTER(ctypes.c_double), - ctypes.POINTER(ctypes.c_double), - ctypes.POINTER(ctypes.c_double), - ctypes.c_int, - ctypes.POINTER(ctypes.c_double), - ctypes.POINTER(ctypes.c_double), - ctypes.c_int, - ctypes.POINTER(ctypes.c_double), - ctypes.POINTER(ctypes.c_int), - ctypes.c_int, -) - -interpolate_from_input.restype = ctypes.c_int - -t1 = time.time() -answer = interpolate_from_input( - x.ctypes.data_as(ctypes.POINTER(ctypes.c_double)), - y.ctypes.data_as(ctypes.POINTER(ctypes.c_double)), - z.ctypes.data_as(ctypes.POINTER(ctypes.c_double)), - ctypes.c_int(nin), - xout.ctypes.data_as(ctypes.POINTER(ctypes.c_double)), - yout.ctypes.data_as(ctypes.POINTER(ctypes.c_double)), - ctypes.c_int(nout), - weights_out.ctypes.data_as(ctypes.POINTER(ctypes.c_double)), - neighbor_index.ctypes.data_as(ctypes.POINTER(ctypes.c_int)), - ctypes.c_int(max_nneighbor), -) -t2 = time.time() -print("Time cost is {:.2f}".format(t2 - t1)) - - -print(weights_out) -print(neighbor_index[0]) - -weights_out_2d = weights_out.reshape((nout, max_nneighbor)) -neighbor_index_2d = neighbor_index.reshape((nout, max_nneighbor)) - -print("answer from python: {}".format(answer)) - -ind = 1165 -print("Point Value {} {}".format(ind, z[ind])) - - -ind = 228 -print("Point Value {} {}".format(ind, z[ind])) - -print(neighbor_index_2d) -print(weights_out_2d) - - -# plt.imshow(zout.reshape((nout_1d, nout_1d))) -# plt.colorbar() -# plt.show() +import ctypes +import os +import numpy as np +import time +import matplotlib.pyplot as plt + + +def xy_function(x, y): + + return x * x + 2 * y - x * y + + +np.random.seed(2) + +nin = 4000 +x = 10.0 * np.random.random(nin) +y = 10.0 * np.random.random(nin) +z = xy_function(x, y) + +nout_1d = int(5) +nout = nout_1d * nout_1d +xout_oneside = np.linspace(10.0, 20.0, nout_1d) +yout_oneside = np.linspace(10.0, 20.0, nout_1d) +xout_2d, yout_2d = np.meshgrid(xout_oneside, yout_oneside) +xout = xout_2d.ravel() +yout = yout_2d.ravel() + +max_nneighbor = 25 +weights_out = np.zeros(nout * max_nneighbor, dtype=np.double) +neighbor_index = np.zeros(nout * max_nneighbor, dtype=np.intc) - 1 + + +# x = np.array(x, dtype='float') +# y = np.array(y, dtype='float') + +_file = "libqiuhan.so" +_mod = ctypes.cdll.LoadLibrary("./" + _file) + +interpolate_from_input = _mod.interpolate_weights_from_input + +interpolate_from_input.argtypes = ( + ctypes.POINTER(ctypes.c_double), + ctypes.POINTER(ctypes.c_double), + ctypes.POINTER(ctypes.c_double), + ctypes.c_int, + ctypes.POINTER(ctypes.c_double), + ctypes.POINTER(ctypes.c_double), + ctypes.c_int, + ctypes.POINTER(ctypes.c_double), + ctypes.POINTER(ctypes.c_int), + ctypes.c_int, +) + +interpolate_from_input.restype = ctypes.c_int + +t1 = time.time() +answer = interpolate_from_input( + x.ctypes.data_as(ctypes.POINTER(ctypes.c_double)), + y.ctypes.data_as(ctypes.POINTER(ctypes.c_double)), + z.ctypes.data_as(ctypes.POINTER(ctypes.c_double)), + ctypes.c_int(nin), + xout.ctypes.data_as(ctypes.POINTER(ctypes.c_double)), + yout.ctypes.data_as(ctypes.POINTER(ctypes.c_double)), + ctypes.c_int(nout), + weights_out.ctypes.data_as(ctypes.POINTER(ctypes.c_double)), + neighbor_index.ctypes.data_as(ctypes.POINTER(ctypes.c_int)), + ctypes.c_int(max_nneighbor), +) +t2 = time.time() +print("Time cost is {:.2f}".format(t2 - t1)) + + +print(weights_out) +print(neighbor_index[0]) + +weights_out_2d = weights_out.reshape((nout, max_nneighbor)) +neighbor_index_2d = neighbor_index.reshape((nout, max_nneighbor)) + +print("answer from python: {}".format(answer)) + +ind = 1165 +print("Point Value {} {}".format(ind, z[ind])) + + +ind = 228 +print("Point Value {} {}".format(ind, z[ind])) + +print(neighbor_index_2d) +print(weights_out_2d) + + +# plt.imshow(zout.reshape((nout_1d, nout_1d))) +# plt.colorbar() +# plt.show() diff --git a/autoarray/util/nn/src/nn/triangle.c b/autoarray/util/nn/src/nn/triangle.c index cbf98907a..b2643a1af 100644 --- a/autoarray/util/nn/src/nn/triangle.c +++ b/autoarray/util/nn/src/nn/triangle.c @@ -1,15930 +1,15930 @@ -/*****************************************************************************/ -/* */ -/* 888888888 ,o, / 888 */ -/* 888 88o88o " o8888o 88o8888o o88888o 888 o88888o */ -/* 888 888 888 88b 888 888 888 888 888 d888 88b */ -/* 888 888 888 o88^o888 888 888 "88888" 888 8888oo888 */ -/* 888 888 888 C888 888 888 888 / 888 q888 */ -/* 888 888 888 "88o^888 888 888 Cb 888 "88oooo" */ -/* "8oo8D */ -/* */ -/* A Two-Dimensional Quality Mesh Generator and Delaunay Triangulator. */ -/* (triangle.c) */ -/* */ -/* Version 1.4 */ -/* November 1, 2002 */ -/* */ -/* Copyright 1993, 1995, 1997, 1998, 2002 */ -/* Jonathan Richard Shewchuk */ -/* 2360 Woolsey #H */ -/* Berkeley, California 94705-1927 */ -/* jrs@cs.berkeley.edu */ -/* */ -/* This program may be freely redistributed under the condition that the */ -/* copyright notices (including this entire header and the copyright */ -/* notice printed when the `-h' switch is selected) are not removed, and */ -/* no compensation is received. Private, research, and institutional */ -/* use is free. You may distribute modified versions of this code UNDER */ -/* THE CONDITION THAT THIS CODE AND ANY MODIFICATIONS MADE TO IT IN THE */ -/* SAME FILE REMAIN UNDER COPYRIGHT OF THE ORIGINAL AUTHOR, BOTH SOURCE */ -/* AND OBJECT CODE ARE MADE FREELY AVAILABLE WITHOUT CHARGE, AND CLEAR */ -/* NOTICE IS GIVEN OF THE MODIFICATIONS. Distribution of this code as */ -/* part of a commercial system is permissible ONLY BY DIRECT ARRANGEMENT */ -/* WITH THE AUTHOR. (If you are not directly supplying this code to a */ -/* customer, and you are instead telling them how they can obtain it for */ -/* free, then you are not required to make any arrangement with me.) */ -/* */ -/* Hypertext instructions for Triangle are available on the Web at */ -/* */ -/* http://www.cs.cmu.edu/~quake/triangle.html */ -/* */ -/* Some of the references listed below are marked with an asterisk. [*] */ -/* These references are available for downloading from the Web page */ -/* */ -/* http://www.cs.cmu.edu/~quake/triangle.research.html */ -/* */ -/* Three papers discussing aspects of Triangle are available. A short */ -/* overview appears in "Triangle: Engineering a 2D Quality Mesh */ -/* Generator and Delaunay Triangulator," in Applied Computational */ -/* Geometry: Towards Geometric Engineering, Ming C. Lin and Dinesh */ -/* Manocha, editors, Lecture Notes in Computer Science volume 1148, */ -/* pages 203-222, Springer-Verlag, Berlin, May 1996 (from the First ACM */ -/* Workshop on Applied Computational Geometry). [*] */ -/* */ -/* The algorithms are discussed in the greatest detail in "Delaunay */ -/* Refinement Algorithms for Triangular Mesh Generation," Computational */ -/* Geometry: Theory and Applications 22(1-3):21-74, May 2002. [*] */ -/* */ -/* More detail about the data structures may be found in my dissertation: */ -/* "Delaunay Refinement Mesh Generation," Ph.D. thesis, Technical Report */ -/* CMU-CS-97-137, School of Computer Science, Carnegie Mellon University, */ -/* Pittsburgh, Pennsylvania, 18 May 1997. [*] */ -/* */ -/* Triangle was created as part of the Archimedes project in the School of */ -/* Computer Science at Carnegie Mellon University. Archimedes is a */ -/* system for compiling parallel finite element solvers. For further */ -/* information, see Hesheng Bao, Jacobo Bielak, Omar Ghattas, Loukas F. */ -/* Kallivokas, David R. O'Hallaron, Jonathan R. Shewchuk, and Jifeng Xu, */ -/* "Large-scale Simulation of Elastic Wave Propagation in Heterogeneous */ -/* Media on Parallel Computers," Computer Methods in Applied Mechanics */ -/* and Engineering 152(1-2):85-102, 22 January 1998. */ -/* */ -/* Triangle's Delaunay refinement algorithm for quality mesh generation is */ -/* a hybrid of one due to Jim Ruppert, "A Delaunay Refinement Algorithm */ -/* for Quality 2-Dimensional Mesh Generation," Journal of Algorithms */ -/* 18(3):548-585, May 1995 [*], and one due to L. Paul Chew, "Guaranteed- */ -/* Quality Mesh Generation for Curved Surfaces," Proceedings of the Ninth */ -/* Annual Symposium on Computational Geometry (San Diego, California), */ -/* pages 274-280, Association for Computing Machinery, May 1993. */ -/* */ -/* The Delaunay refinement algorithm has been modified so that it */ -/* consistently meshes domains with small input angles, as described in */ -/* my lengthy journal article listed above, or in abbreviated form in */ -/* Jonathan Richard Shewchuk, "Mesh Generation for Domains with Small */ -/* Angles," Proceedings of the Sixteenth Annual Symposium on */ -/* Computational Geometry (Hong Kong), pages 1-10, Association for */ -/* Computing Machinery, June 2000. [*] */ -/* */ -/* My implementation of the divide-and-conquer and incremental Delaunay */ -/* triangulation algorithms follows closely the presentation of Guibas */ -/* and Stolfi, even though I use a triangle-based data structure instead */ -/* of their quad-edge data structure. (In fact, I originally implemented */ -/* Triangle using the quad-edge data structure, but the switch to a */ -/* triangle-based data structure sped Triangle by a factor of two.) The */ -/* mesh manipulation primitives and the two aforementioned Delaunay */ -/* triangulation algorithms are described by Leonidas J. Guibas and Jorge */ -/* Stolfi, "Primitives for the Manipulation of General Subdivisions and */ -/* the Computation of Voronoi Diagrams," ACM Transactions on Graphics */ -/* 4(2):74-123, April 1985. */ -/* */ -/* Their O(n log n) divide-and-conquer algorithm is adapted from Der-Tsai */ -/* Lee and Bruce J. Schachter, "Two Algorithms for Constructing the */ -/* Delaunay Triangulation," International Journal of Computer and */ -/* Information Science 9(3):219-242, 1980. Triangle's improvement of the */ -/* divide-and-conquer algorithm by alternating between vertical and */ -/* horizontal cuts was introduced by Rex A. Dwyer, "A Faster Divide-and- */ -/* Conquer Algorithm for Constructing Delaunay Triangulations," */ -/* Algorithmica 2(2):137-151, 1987. */ -/* */ -/* The incremental insertion algorithm was first proposed by C. L. Lawson, */ -/* "Software for C1 Surface Interpolation," in Mathematical Software III, */ -/* John R. Rice, editor, Academic Press, New York, pp. 161-194, 1977. */ -/* For point location, I use the algorithm of Ernst P. Mucke, Isaac */ -/* Saias, and Binhai Zhu, "Fast Randomized Point Location Without */ -/* Preprocessing in Two- and Three-Dimensional Delaunay Triangulations," */ -/* Proceedings of the Twelfth Annual Symposium on Computational Geometry, */ -/* ACM, May 1996. [*] If I were to randomize the order of vertex */ -/* insertion (I currently don't bother), their result combined with the */ -/* result of Kenneth L. Clarkson and Peter W. Shor, "Applications of */ -/* Random Sampling in Computational Geometry II," Discrete & */ -/* Computational Geometry 4(1):387-421, 1989, would yield an expected */ -/* O(n^{4/3}) bound on running time. */ -/* */ -/* The O(n log n) sweepline Delaunay triangulation algorithm is taken from */ -/* Steven Fortune, "A Sweepline Algorithm for Voronoi Diagrams", */ -/* Algorithmica 2(2):153-174, 1987. A random sample of edges on the */ -/* boundary of the triangulation are maintained in a splay tree for the */ -/* purpose of point location. Splay trees are described by Daniel */ -/* Dominic Sleator and Robert Endre Tarjan, "Self-Adjusting Binary Search */ -/* Trees," Journal of the ACM 32(3):652-686, July 1985. */ -/* */ -/* The algorithms for exact computation of the signs of determinants are */ -/* described in Jonathan Richard Shewchuk, "Adaptive Precision Floating- */ -/* Point Arithmetic and Fast Robust Geometric Predicates," Discrete & */ -/* Computational Geometry 18(3):305-363, October 1997. (Also available */ -/* as Technical Report CMU-CS-96-140, School of Computer Science, */ -/* Carnegie Mellon University, Pittsburgh, Pennsylvania, May 1996.) [*] */ -/* An abbreviated version appears as Jonathan Richard Shewchuk, "Robust */ -/* Adaptive Floating-Point Geometric Predicates," Proceedings of the */ -/* Twelfth Annual Symposium on Computational Geometry, ACM, May 1996. [*] */ -/* Many of the ideas for my exact arithmetic routines originate with */ -/* Douglas M. Priest, "Algorithms for Arbitrary Precision Floating Point */ -/* Arithmetic," Tenth Symposium on Computer Arithmetic, pp. 132-143, IEEE */ -/* Computer Society Press, 1991. [*] Many of the ideas for the correct */ -/* evaluation of the signs of determinants are taken from Steven Fortune */ -/* and Christopher J. Van Wyk, "Efficient Exact Arithmetic for Computa- */ -/* tional Geometry," Proceedings of the Ninth Annual Symposium on */ -/* Computational Geometry, ACM, pp. 163-172, May 1993, and from Steven */ -/* Fortune, "Numerical Stability of Algorithms for 2D Delaunay Triangu- */ -/* lations," International Journal of Computational Geometry & Applica- */ -/* tions 5(1-2):193-213, March-June 1995. */ -/* */ -/* For definitions of and results involving Delaunay triangulations, */ -/* constrained and conforming versions thereof, and other aspects of */ -/* triangular mesh generation, see the excellent survey by Marshall Bern */ -/* and David Eppstein, "Mesh Generation and Optimal Triangulation," in */ -/* Computing and Euclidean Geometry, Ding-Zhu Du and Frank Hwang, */ -/* editors, World Scientific, Singapore, pp. 23-90, 1992. [*] */ -/* */ -/* The time for incrementally adding PSLG (planar straight line graph) */ -/* segments to create a constrained Delaunay triangulation is probably */ -/* O(t^2) per segment in the worst case and O(t) per segment in the */ -/* common case, where t is the number of triangles that intersect the */ -/* segment before it is inserted. This doesn't count point location, */ -/* which can be much more expensive. I could improve this to O(d log d) */ -/* time, but d is usually quite small, so it's not worth the bother. */ -/* (This note does not apply to conforming Delaunay triangulations, for */ -/* which a different method is used to insert segments.) */ -/* */ -/* The time for adding segments to a conforming Delaunay triangulation is */ -/* not clear, but does not depend upon t alone. In some cases, very */ -/* small features (like a vertex lying next to a segment) can cause a */ -/* single segment to be split an arbitrary number of times. Of course, */ -/* floating-point precision is a practical barrier to how much this can */ -/* happen. */ -/* */ -/* The time for deleting a vertex from a Delaunay triangulation is O(d^2) */ -/* in the worst case and O(d) in the common case, where d is the degree */ -/* of the vertex being deleted. I could improve this to O(d log d) time, */ -/* but d is usually quite small, so it's not worth the bother. */ -/* */ -/* Ruppert's Delaunay refinement algorithm typically generates triangles */ -/* at a linear rate (constant time per triangle) after the initial */ -/* triangulation is formed. There may be pathological cases where */ -/* quadratic time is required, but these never arise in practice. */ -/* */ -/* The geometric predicates (circumcenter calculations, segment */ -/* intersection formulae, etc.) appear in my "Lecture Notes on Geometric */ -/* Robustness" at http://www.cs.berkeley.edu/~jrs/mesh.html . */ -/* */ -/* If you make any improvements to this code, please please please let me */ -/* know, so that I may obtain the improvements. Even if you don't change */ -/* the code, I'd still love to hear what it's being used for. */ -/* */ -/* Disclaimer: Neither I nor Carnegie Mellon warrant this code in any way */ -/* whatsoever. This code is provided "as-is". Use at your own risk. */ -/* */ -/*****************************************************************************/ - -/* For single precision (which will save some memory and reduce paging), */ -/* define the symbol SINGLE by using the -DSINGLE compiler switch or by */ -/* writing "#define SINGLE" below. */ -/* */ -/* For double precision (which will allow you to refine meshes to a smaller */ -/* edge length), leave SINGLE undefined. */ -/* */ -/* Double precision uses more memory, but improves the resolution of the */ -/* meshes you can generate with Triangle. It also reduces the likelihood */ -/* of a floating exception due to overflow. Finally, it is much faster */ -/* than single precision on 64-bit architectures like the DEC Alpha. I */ -/* recommend double precision unless you want to generate a mesh for which */ -/* you do not have enough memory. */ - -/* #define SINGLE */ - -#ifdef SINGLE -#define REAL float -#else /* not SINGLE */ -#define REAL double -#endif /* not SINGLE */ - -/* If yours is not a Unix system, define the NO_TIMER compiler switch to */ -/* remove the Unix-specific timing code. */ - -/* #define NO_TIMER */ - -/* To insert lots of self-checks for internal errors, define the SELF_CHECK */ -/* symbol. This will slow down the program significantly. It is best to */ -/* define the symbol using the -DSELF_CHECK compiler switch, but you could */ -/* write "#define SELF_CHECK" below. If you are modifying this code, I */ -/* recommend you turn self-checks on until your work is debugged. */ - -/* #define SELF_CHECK */ - -/* To compile Triangle as a callable object library (triangle.o), define the */ -/* TRILIBRARY symbol. Read the file triangle.h for details on how to call */ -/* the procedure triangulate() that results. */ - -/* #define TRILIBRARY */ - -/* It is possible to generate a smaller version of Triangle using one or */ -/* both of the following symbols. Define the REDUCED symbol to eliminate */ -/* all features that are primarily of research interest; specifically, the */ -/* -i, -F, -s, and -C switches. Define the CDT_ONLY symbol to eliminate */ -/* all meshing algorithms above and beyond constrained Delaunay */ -/* triangulation; specifically, the -r, -q, -a, -S, and -s switches. */ -/* These reductions are most likely to be useful when generating an object */ -/* library (triangle.o) by defining the TRILIBRARY symbol. */ - -/* #define REDUCED */ -/* #define CDT_ONLY */ - -/* On some machines, my exact arithmetic routines might be defeated by the */ -/* use of internal extended precision floating-point registers. The best */ -/* way to solve this problem is to set the floating-point registers to use */ -/* single or double precision internally. On 80x86 processors, this may */ -/* be accomplished by setting the CPU86 symbol for the Microsoft C */ -/* compiler, or the LINUX symbol for the gcc compiler running on Linux. */ -/* */ -/* An inferior solution is to declare certain values as `volatile', thus */ -/* forcing them to be stored to memory and rounded off. Unfortunately, */ -/* this solution might slow Triangle down quite a bit. To use volatile */ -/* values, write "#define INEXACT volatile" below. Normally, however, */ -/* INEXACT should be defined to be nothing. ("#define INEXACT".) */ -/* */ -/* For more discussion, see http://www.cs.cmu.edu/~quake/robust.pc.html . */ -/* For yet more discussion, see Section 5 of my paper, "Adaptive Precision */ -/* Floating-Point Arithmetic and Fast Robust Geometric Predicates" (also */ -/* available as Section 6.6 of my dissertation). */ - -/* #define CPU86 */ -/* #define LINUX */ - -#define INEXACT /* Nothing */ -/* #define INEXACT volatile */ - -/* Maximum number of characters in a file name (including the null). */ - -#define FILENAMESIZE 512 - -/* Maximum number of characters in a line read from a file (including the */ -/* null). */ - -#define INPUTLINESIZE 512 - -/* For efficiency, a variety of data structures are allocated in bulk. The */ -/* following constants determine how many of each structure is allocated */ -/* at once. */ - -#define TRIPERBLOCK 4092 /* Number of triangles allocated at once. */ -#define SUBSEGPERBLOCK 508 /* Number of subsegments allocated at once. */ -#define VERTEXPERBLOCK 4092 /* Number of vertices allocated at once. */ -#define VIRUSPERBLOCK 1020 /* Number of virus triangles allocated at once. */ -/* Number of encroached subsegments allocated at once. */ -#define BADSUBSEGPERBLOCK 252 -/* Number of skinny triangles allocated at once. */ -#define BADTRIPERBLOCK 4092 -/* Number of flipped triangles allocated at once. */ -#define FLIPSTACKERPERBLOCK 252 -/* Number of splay tree nodes allocated at once. */ -#define SPLAYNODEPERBLOCK 508 - -/* The vertex types. A DEADVERTEX has been deleted entirely. An */ -/* UNDEADVERTEX is not part of the mesh, but is written to the output */ -/* .node file and affects the node indexing in the other output files. */ - -#define INPUTVERTEX 0 -#define SEGMENTVERTEX 1 -#define FREEVERTEX 2 -#define DEADVERTEX -32768 -#define UNDEADVERTEX -32767 - -/* The next line is used to outsmart some very stupid compilers. If your */ -/* compiler is smarter, feel free to replace the "int" with "void". */ -/* Not that it matters. */ - -#define VOID int - -/* Two constants for algorithms based on random sampling. Both constants */ -/* have been chosen empirically to optimize their respective algorithms. */ - -/* Used for the point location scheme of Mucke, Saias, and Zhu, to decide */ -/* how large a random sample of triangles to inspect. */ - -#define SAMPLEFACTOR 11 - -/* Used in Fortune's sweepline Delaunay algorithm to determine what fraction */ -/* of boundary edges should be maintained in the splay tree for point */ -/* location on the front. */ - -#define SAMPLERATE 10 - -/* A number that speaks for itself, every kissable digit. */ - -#define PI 3.141592653589793238462643383279502884197169399375105820974944592308 - -/* Another fave. */ - -#define SQUAREROOTTWO 1.4142135623730950488016887242096980785696718753769480732 - -/* And here's one for those of you who are intimidated by math. */ - -#define ONETHIRD 0.333333333333333333333333333333333333333333333333333333333333 - -#include -#include -#include -#include -#include "config.h" -#ifndef NO_TIMER -#include -#endif /* not NO_TIMER */ -#ifdef CPU86 -#include -#endif /* CPU86 */ -#ifdef LINUX -#include -#endif /* LINUX */ -#ifdef TRILIBRARY -#include "triangle.h" -#endif /* TRILIBRARY */ - -/* A few forward declarations. */ - -#ifndef TRILIBRARY -char *readline(); -char *findfield(); -#endif /* not TRILIBRARY */ - -/* Labels that signify whether a record consists primarily of pointers or of */ -/* floating-point words. Used to make decisions about data alignment. */ - -enum wordtype {POINTER, FLOATINGPOINT}; - -/* Labels that signify the result of point location. The result of a */ -/* search indicates that the point falls in the interior of a triangle, on */ -/* an edge, on a vertex, or outside the mesh. */ - -enum locateresult {INTRIANGLE, ONEDGE, ONVERTEX, OUTSIDE}; - -/* Labels that signify the result of vertex insertion. The result indicates */ -/* that the vertex was inserted with complete success, was inserted but */ -/* encroaches upon a subsegment, was not inserted because it lies on a */ -/* segment, or was not inserted because another vertex occupies the same */ -/* location. */ - -enum insertvertexresult {SUCCESSFULVERTEX, ENCROACHINGVERTEX, VIOLATINGVERTEX, - DUPLICATEVERTEX}; - -/* Labels that signify the result of direction finding. The result */ -/* indicates that a segment connecting the two query points falls within */ -/* the direction triangle, along the left edge of the direction triangle, */ -/* or along the right edge of the direction triangle. */ - -enum finddirectionresult {WITHIN, LEFTCOLLINEAR, RIGHTCOLLINEAR}; - -/*****************************************************************************/ -/* */ -/* The basic mesh data structures */ -/* */ -/* There are three: vertices, triangles, and subsegments (abbreviated */ -/* `subseg'). These three data structures, linked by pointers, comprise */ -/* the mesh. A vertex simply represents a mesh vertex and its properties. */ -/* A triangle is a triangle. A subsegment is a special data structure used */ -/* to represent an impenetrable edge of the mesh (perhaps on the outer */ -/* boundary, on the boundary of a hole, or part of an internal boundary */ -/* separating two triangulated regions). Subsegments represent boundaries, */ -/* defined by the user, that triangles may not lie across. */ -/* */ -/* A triangle consists of a list of three vertices, a list of three */ -/* adjoining triangles, a list of three adjoining subsegments (when */ -/* segments exist), an arbitrary number of optional user-defined */ -/* floating-point attributes, and an optional area constraint. The latter */ -/* is an upper bound on the permissible area of each triangle in a region, */ -/* used for mesh refinement. */ -/* */ -/* For a triangle on a boundary of the mesh, some or all of the neighboring */ -/* triangles may not be present. For a triangle in the interior of the */ -/* mesh, often no neighboring subsegments are present. Such absent */ -/* triangles and subsegments are never represented by NULL pointers; they */ -/* are represented by two special records: `dummytri', the triangle that */ -/* fills "outer space", and `dummysub', the omnipresent subsegment. */ -/* `dummytri' and `dummysub' are used for several reasons; for instance, */ -/* they can be dereferenced and their contents examined without violating */ -/* protected memory. */ -/* */ -/* However, it is important to understand that a triangle includes other */ -/* information as well. The pointers to adjoining vertices, triangles, and */ -/* subsegments are ordered in a way that indicates their geometric relation */ -/* to each other. Furthermore, each of these pointers contains orientation */ -/* information. Each pointer to an adjoining triangle indicates which face */ -/* of that triangle is contacted. Similarly, each pointer to an adjoining */ -/* subsegment indicates which side of that subsegment is contacted, and how */ -/* the subsegment is oriented relative to the triangle. */ -/* */ -/* The data structure representing a subsegment may be thought to be */ -/* abutting the edge of one or two triangle data structures: either */ -/* sandwiched between two triangles, or resting against one triangle on an */ -/* exterior boundary or hole boundary. */ -/* */ -/* A subsegment consists of a list of two vertices, a list of two */ -/* adjoining subsegments, and a list of two adjoining triangles. One of */ -/* the two adjoining triangles may not be present (though there should */ -/* always be one), and neighboring subsegments might not be present. */ -/* Subsegments also store a user-defined integer "boundary marker". */ -/* Typically, this integer is used to indicate what boundary conditions are */ -/* to be applied at that location in a finite element simulation. */ -/* */ -/* Like triangles, subsegments maintain information about the relative */ -/* orientation of neighboring objects. */ -/* */ -/* Vertices are relatively simple. A vertex is a list of floating-point */ -/* numbers, starting with the x, and y coordinates, followed by an */ -/* arbitrary number of optional user-defined floating-point attributes, */ -/* followed by an integer boundary marker. During the segment insertion */ -/* phase, there is also a pointer from each vertex to a triangle that may */ -/* contain it. Each pointer is not always correct, but when one is, it */ -/* speeds up segment insertion. These pointers are assigned values once */ -/* at the beginning of the segment insertion phase, and are not used or */ -/* updated except during this phase. Edge flipping during segment */ -/* insertion will render some of them incorrect. Hence, don't rely upon */ -/* them for anything. */ -/* */ -/* Other than the exception mentioned above, vertices have no information */ -/* about what triangles, subfacets, or subsegments they are linked to. */ -/* */ -/*****************************************************************************/ - -/*****************************************************************************/ -/* */ -/* Handles */ -/* */ -/* The oriented triangle (`otri') and oriented subsegment (`osub') data */ -/* structures defined below do not themselves store any part of the mesh. */ -/* The mesh itself is made of `triangle's, `subseg's, and `vertex's. */ -/* */ -/* Oriented triangles and oriented subsegments will usually be referred to */ -/* as "handles." A handle is essentially a pointer into the mesh; it */ -/* allows you to "hold" one particular part of the mesh. Handles are used */ -/* to specify the regions in which one is traversing and modifying the mesh.*/ -/* A single `triangle' may be held by many handles, or none at all. (The */ -/* latter case is not a memory leak, because the triangle is still */ -/* connected to other triangles in the mesh.) */ -/* */ -/* An `otri' is a handle that holds a triangle. It holds a specific edge */ -/* of the triangle. An `osub' is a handle that holds a subsegment. It */ -/* holds either the left or right side of the subsegment. */ -/* */ -/* Navigation about the mesh is accomplished through a set of mesh */ -/* manipulation primitives, further below. Many of these primitives take */ -/* a handle and produce a new handle that holds the mesh near the first */ -/* handle. Other primitives take two handles and glue the corresponding */ -/* parts of the mesh together. The orientation of the handles is */ -/* important. For instance, when two triangles are glued together by the */ -/* bond() primitive, they are glued at the edges on which the handles lie. */ -/* */ -/* Because vertices have no information about which triangles they are */ -/* attached to, I commonly represent a vertex by use of a handle whose */ -/* origin is the vertex. A single handle can simultaneously represent a */ -/* triangle, an edge, and a vertex. */ -/* */ -/*****************************************************************************/ - -/* The triangle data structure. Each triangle contains three pointers to */ -/* adjoining triangles, plus three pointers to vertices, plus three */ -/* pointers to subsegments (declared below; these pointers are usually */ -/* `dummysub'). It may or may not also contain user-defined attributes */ -/* and/or a floating-point "area constraint." It may also contain extra */ -/* pointers for nodes, when the user asks for high-order elements. */ -/* Because the size and structure of a `triangle' is not decided until */ -/* runtime, I haven't simply declared the type `triangle' as a struct. */ - -typedef REAL **triangle; /* Really: typedef triangle *triangle */ - -/* An oriented triangle: includes a pointer to a triangle and orientation. */ -/* The orientation denotes an edge of the triangle. Hence, there are */ -/* three possible orientations. By convention, each edge always points */ -/* counterclockwise about the corresponding triangle. */ - -struct otri { - triangle *tri; - int orient; /* Ranges from 0 to 2. */ -}; - -/* The subsegment data structure. Each subsegment contains two pointers to */ -/* adjoining subsegments, plus two pointers to vertices, plus two pointers */ -/* to adjoining triangles, plus one boundary marker. */ - -typedef REAL **subseg; /* Really: typedef subseg *subseg */ - -/* An oriented subsegment: includes a pointer to a subsegment and an */ -/* orientation. The orientation denotes a side of the edge. Hence, there */ -/* are two possible orientations. By convention, the edge is always */ -/* directed so that the "side" denoted is the right side of the edge. */ - -struct osub { - subseg *ss; - int ssorient; /* Ranges from 0 to 1. */ -}; - -/* The vertex data structure. Each vertex is actually an array of REALs. */ -/* The number of REALs is unknown until runtime. An integer boundary */ -/* marker, and sometimes a pointer to a triangle, is appended after the */ -/* REALs. */ - -typedef REAL *vertex; - -/* A queue used to store encroached subsegments. Each subsegment's vertices */ -/* are stored so that we can check whether a subsegment is still the same. */ - -struct badsubseg { - subseg encsubseg; /* An encroached subsegment. */ - vertex subsegorg, subsegdest; /* Its two vertices. */ -}; - -/* A queue used to store bad triangles. The key is the square of the cosine */ -/* of the smallest angle of the triangle. Each triangle's vertices are */ -/* stored so that one can check whether a triangle is still the same. */ - -struct badtriang { - triangle poortri; /* A skinny or too-large triangle. */ - REAL key; /* cos^2 of smallest (apical) angle. */ - vertex triangorg, triangdest, triangapex; /* Its three vertices. */ - struct badtriang *nexttriang; /* Pointer to next bad triangle. */ -}; - -/* A stack of triangles flipped during the most recent vertex insertion. */ -/* The stack is used to undo the vertex insertion if the vertex encroaches */ -/* upon a subsegment. */ - -struct flipstacker { - triangle flippedtri; /* A recently flipped triangle. */ - struct flipstacker *prevflip; /* Previous flip in the stack. */ -}; - -/* A node in a heap used to store events for the sweepline Delaunay */ -/* algorithm. Nodes do not point directly to their parents or children in */ -/* the heap. Instead, each node knows its position in the heap, and can */ -/* look up its parent and children in a separate array. The `eventptr' */ -/* points either to a `vertex' or to a triangle (in encoded format, so */ -/* that an orientation is included). In the latter case, the origin of */ -/* the oriented triangle is the apex of a "circle event" of the sweepline */ -/* algorithm. To distinguish site events from circle events, all circle */ -/* events are given an invalid (smaller than `xmin') x-coordinate `xkey'. */ - -struct event { - REAL xkey, ykey; /* Coordinates of the event. */ - VOID *eventptr; /* Can be a vertex or the location of a circle event. */ - int heapposition; /* Marks this event's position in the heap. */ -}; - -/* A node in the splay tree. Each node holds an oriented ghost triangle */ -/* that represents a boundary edge of the growing triangulation. When a */ -/* circle event covers two boundary edges with a triangle, so that they */ -/* are no longer boundary edges, those edges are not immediately deleted */ -/* from the tree; rather, they are lazily deleted when they are next */ -/* encountered. (Since only a random sample of boundary edges are kept */ -/* in the tree, lazy deletion is faster.) `keydest' is used to verify */ -/* that a triangle is still the same as when it entered the splay tree; if */ -/* it has been rotated (due to a circle event), it no longer represents a */ -/* boundary edge and should be deleted. */ - -struct splaynode { - struct otri keyedge; /* Lprev of an edge on the front. */ - vertex keydest; /* Used to verify that splay node is still live. */ - struct splaynode *lchild, *rchild; /* Children in splay tree. */ -}; - -/* A type used to allocate memory. firstblock is the first block of items. */ -/* nowblock is the block from which items are currently being allocated. */ -/* nextitem points to the next slab of free memory for an item. */ -/* deaditemstack is the head of a linked list (stack) of deallocated items */ -/* that can be recycled. unallocateditems is the number of items that */ -/* remain to be allocated from nowblock. */ -/* */ -/* Traversal is the process of walking through the entire list of items, and */ -/* is separate from allocation. Note that a traversal will visit items on */ -/* the "deaditemstack" stack as well as live items. pathblock points to */ -/* the block currently being traversed. pathitem points to the next item */ -/* to be traversed. pathitemsleft is the number of items that remain to */ -/* be traversed in pathblock. */ -/* */ -/* itemwordtype is set to POINTER or FLOATINGPOINT, and is used to suggest */ -/* what sort of word the record is primarily made up of. alignbytes */ -/* determines how new records should be aligned in memory. itembytes and */ -/* itemwords are the length of a record in bytes (after rounding up) and */ -/* words. itemsperblock is the number of items allocated at once in a */ -/* single block. items is the number of currently allocated items. */ -/* maxitems is the maximum number of items that have been allocated at */ -/* once; it is the current number of items plus the number of records kept */ -/* on deaditemstack. */ - -struct memorypool { - VOID **firstblock, **nowblock; - VOID *nextitem; - VOID *deaditemstack; - VOID **pathblock; - VOID *pathitem; - enum wordtype itemwordtype; - int alignbytes; - int itembytes, itemwords; - int itemsperblock; - long items, maxitems; - int unallocateditems; - int pathitemsleft; -}; - - -/* Global constants. */ - -REAL splitter; /* Used to split REAL factors for exact multiplication. */ -REAL epsilon; /* Floating-point machine epsilon. */ -REAL resulterrbound; -REAL ccwerrboundA, ccwerrboundB, ccwerrboundC; -REAL iccerrboundA, iccerrboundB, iccerrboundC; -REAL o3derrboundA, o3derrboundB, o3derrboundC; - -/* Random number seed is not constant, but I've made it global anyway. */ - -unsigned long randomseed; /* Current random number seed. */ - - -/* Mesh data structure. Triangle operates on only one mesh, but the mesh */ -/* structure is used (instead of global variables) to allow reentrancy. */ - -struct mesh { - -/* Variables used to allocate memory for triangles, subsegments, vertices, */ -/* viri (triangles being eaten), encroached segments, bad (skinny or too */ -/* large) triangles, and splay tree nodes. */ - - struct memorypool triangles; - struct memorypool subsegs; - struct memorypool vertices; - struct memorypool viri; - struct memorypool badsubsegs; - struct memorypool badtriangles; - struct memorypool flipstackers; - struct memorypool splaynodes; - -/* Variables that maintain the bad triangle queues. The queues are */ -/* ordered from 63 (highest priority) to 0 (lowest priority). */ - - struct badtriang *queuefront[64]; - struct badtriang *queuetail[64]; - int nextnonemptyq[64]; - int firstnonemptyq; - -/* Variable that maintains the stack of recently flipped triangles. */ - - struct flipstacker *lastflip; - -/* Other variables. */ - - REAL xmin, xmax, ymin, ymax; /* x and y bounds. */ - REAL xminextreme; /* Nonexistent x value used as a flag in sweepline. */ - int invertices; /* Number of input vertices. */ - int inelements; /* Number of input triangles. */ - int insegments; /* Number of input segments. */ - int holes; /* Number of input holes. */ - int regions; /* Number of input regions. */ - int undeads; /* Number of input vertices that don't appear in the mesh. */ - long edges; /* Number of output edges. */ - int mesh_dim; /* Dimension (ought to be 2). */ - int nextras; /* Number of attributes per vertex. */ - int eextras; /* Number of attributes per triangle. */ - long hullsize; /* Number of edges in convex hull. */ - int steinerleft; /* Number of Steiner points not yet used. */ - int vertexmarkindex; /* Index to find boundary marker of a vertex. */ - int vertex2triindex; /* Index to find a triangle adjacent to a vertex. */ - int highorderindex; /* Index to find extra nodes for high-order elements. */ - int elemattribindex; /* Index to find attributes of a triangle. */ - int areaboundindex; /* Index to find area bound of a triangle. */ - int checksegments; /* Are there segments in the triangulation yet? */ - int checkquality; /* Has quality triangulation begun yet? */ - int readnodefile; /* Has a .node file been read? */ - long samples; /* Number of random samples for point location. */ - - long incirclecount; /* Number of incircle tests performed. */ - long counterclockcount; /* Number of counterclockwise tests performed. */ - long orient3dcount; /* Number of 3D orientation tests performed. */ - long hyperbolacount; /* Number of right-of-hyperbola tests performed. */ - long circumcentercount; /* Number of circumcenter calculations performed. */ - long circletopcount; /* Number of circle top calculations performed. */ - -/* Triangular bounding box vertices. */ - - vertex infvertex1, infvertex2, infvertex3; - -/* Pointer to the `triangle' that occupies all of "outer space." */ - - triangle *dummytri; - triangle *dummytribase; /* Keep base address so we can free() it later. */ - -/* Pointer to the omnipresent subsegment. Referenced by any triangle or */ -/* subsegment that isn't really connected to a subsegment at that */ -/* location. */ - - subseg *dummysub; - subseg *dummysubbase; /* Keep base address so we can free() it later. */ - -/* Pointer to a recently visited triangle. Improves point location if */ -/* proximate vertices are inserted sequentially. */ - - struct otri recenttri; - -}; /* End of `struct mesh'. */ - - -/* Data structure for command line switches and file names. This structure */ -/* is used (instead of global variables) to allow reentrancy. */ - -struct behavior { - -/* Switches for the triangulator. */ -/* poly: -p switch. refine: -r switch. */ -/* quality: -q switch. */ -/* minangle: minimum angle bound, specified after -q switch. */ -/* goodangle: cosine squared of minangle. */ -/* vararea: -a switch without number. */ -/* fixedarea: -a switch with number. */ -/* maxarea: maximum area bound, specified after -a switch. */ -/* usertest: -u switch. */ -/* regionattrib: -A switch. convex: -c switch. */ -/* weighted: 1 for -w switch, 2 for -W switch. jettison: -j switch */ -/* firstnumber: inverse of -z switch. All items are numbered starting */ -/* from `firstnumber'. */ -/* edgesout: -e switch. voronoi: -v switch. */ -/* neighbors: -n switch. geomview: -g switch. */ -/* nobound: -B switch. nopolywritten: -P switch. */ -/* nonodewritten: -N switch. noelewritten: -E switch. */ -/* noiterationnum: -I switch. noholes: -O switch. */ -/* noexact: -X switch. */ -/* order: element order, specified after -o switch. */ -/* nobisect: count of how often -Y switch is selected. */ -/* steiner: maximum number of Steiner points, specified after -S switch. */ -/* incremental: -i switch. sweepline: -F switch. */ -/* dwyer: inverse of -l switch. */ -/* splitseg: -s switch. */ -/* nolenses: -L switch. docheck: -C switch. */ -/* quiet: -Q switch. verbose: count of how often -V switch is selected. */ -/* usesegments: -p, -r, -q, or -c switch; determines whether segments are */ -/* used at all. */ -/* */ -/* Read the instructions to find out the meaning of these switches. */ - - int poly, refine, quality, vararea, fixedarea, usertest; - int regionattrib, convex, weighted, jettison; - int firstnumber; - int edgesout, voronoi, neighbors, geomview; - int nobound, nopolywritten, nonodewritten, noelewritten, noiterationnum; - int noholes, noexact, nolenses; - int incremental, sweepline, dwyer; - int splitseg; - int docheck; - int quiet, verbose; - int usesegments; - int order; - int nobisect; - int steiner; - REAL minangle, goodangle; - REAL maxarea; - -/* Variables for file names. */ - -#ifndef TRILIBRARY - char innodefilename[FILENAMESIZE]; - char inelefilename[FILENAMESIZE]; - char inpolyfilename[FILENAMESIZE]; - char areafilename[FILENAMESIZE]; - char outnodefilename[FILENAMESIZE]; - char outelefilename[FILENAMESIZE]; - char outpolyfilename[FILENAMESIZE]; - char edgefilename[FILENAMESIZE]; - char vnodefilename[FILENAMESIZE]; - char vedgefilename[FILENAMESIZE]; - char neighborfilename[FILENAMESIZE]; - char offfilename[FILENAMESIZE]; -#endif /* not TRILIBRARY */ - -}; /* End of `struct behavior'. */ - - -/*****************************************************************************/ -/* */ -/* Mesh manipulation primitives. Each triangle contains three pointers to */ -/* other triangles, with orientations. Each pointer points not to the */ -/* first byte of a triangle, but to one of the first three bytes of a */ -/* triangle. It is necessary to extract both the triangle itself and the */ -/* orientation. To save memory, I keep both pieces of information in one */ -/* pointer. To make this possible, I assume that all triangles are aligned */ -/* to four-byte boundaries. The decode() routine below decodes a pointer, */ -/* extracting an orientation (in the range 0 to 2) and a pointer to the */ -/* beginning of a triangle. The encode() routine compresses a pointer to a */ -/* triangle and an orientation into a single pointer. My assumptions that */ -/* triangles are four-byte-aligned and that the `unsigned long' type is */ -/* long enough to hold a pointer are two of the few kludges in this program.*/ -/* */ -/* Subsegments are manipulated similarly. A pointer to a subsegment */ -/* carries both an address and an orientation in the range 0 to 1. */ -/* */ -/* The other primitives take an oriented triangle or oriented subsegment, */ -/* and return an oriented triangle or oriented subsegment or vertex; or */ -/* they change the connections in the data structure. */ -/* */ -/* Below, triangles and subsegments are denoted by their vertices. The */ -/* triangle abc has origin (org) a, destination (dest) b, and apex (apex) */ -/* c. These vertices occur in counterclockwise order about the triangle. */ -/* The handle abc may simultaneously denote vertex a, edge ab, and triangle */ -/* abc. */ -/* */ -/* Similarly, the subsegment ab has origin (sorg) a and destination (sdest) */ -/* b. If ab is thought to be directed upward (with b directly above a), */ -/* then the handle ab is thought to grasp the right side of ab, and may */ -/* simultaneously denote vertex a and edge ab. */ -/* */ -/* An asterisk (*) denotes a vertex whose identity is unknown. */ -/* */ -/* Given this notation, a partial list of mesh manipulation primitives */ -/* follows. */ -/* */ -/* */ -/* For triangles: */ -/* */ -/* sym: Find the abutting triangle; same edge. */ -/* sym(abc) -> ba* */ -/* */ -/* lnext: Find the next edge (counterclockwise) of a triangle. */ -/* lnext(abc) -> bca */ -/* */ -/* lprev: Find the previous edge (clockwise) of a triangle. */ -/* lprev(abc) -> cab */ -/* */ -/* onext: Find the next edge counterclockwise with the same origin. */ -/* onext(abc) -> ac* */ -/* */ -/* oprev: Find the next edge clockwise with the same origin. */ -/* oprev(abc) -> a*b */ -/* */ -/* dnext: Find the next edge counterclockwise with the same destination. */ -/* dnext(abc) -> *ba */ -/* */ -/* dprev: Find the next edge clockwise with the same destination. */ -/* dprev(abc) -> cb* */ -/* */ -/* rnext: Find the next edge (counterclockwise) of the adjacent triangle. */ -/* rnext(abc) -> *a* */ -/* */ -/* rprev: Find the previous edge (clockwise) of the adjacent triangle. */ -/* rprev(abc) -> b** */ -/* */ -/* org: Origin dest: Destination apex: Apex */ -/* org(abc) -> a dest(abc) -> b apex(abc) -> c */ -/* */ -/* bond: Bond two triangles together at the resepective handles. */ -/* bond(abc, bad) */ -/* */ -/* */ -/* For subsegments: */ -/* */ -/* ssym: Reverse the orientation of a subsegment. */ -/* ssym(ab) -> ba */ -/* */ -/* spivot: Find adjoining subsegment with the same origin. */ -/* spivot(ab) -> a* */ -/* */ -/* snext: Find next subsegment in sequence. */ -/* snext(ab) -> b* */ -/* */ -/* sorg: Origin sdest: Destination */ -/* sorg(ab) -> a sdest(ab) -> b */ -/* */ -/* sbond: Bond two subsegments together at the respective origins. */ -/* sbond(ab, ac) */ -/* */ -/* */ -/* For interacting tetrahedra and subfacets: */ -/* */ -/* tspivot: Find a subsegment abutting a triangle. */ -/* tspivot(abc) -> ba */ -/* */ -/* stpivot: Find a triangle abutting a subsegment. */ -/* stpivot(ab) -> ba* */ -/* */ -/* tsbond: Bond a triangle to a subsegment. */ -/* tsbond(abc, ba) */ -/* */ -/*****************************************************************************/ - -/********* Mesh manipulation primitives begin here *********/ -/** **/ -/** **/ - -/* Fast lookup arrays to speed some of the mesh manipulation primitives. */ - -int plus1mod3[3] = {1, 2, 0}; -int minus1mod3[3] = {2, 0, 1}; - -/********* Primitives for triangles *********/ -/* */ -/* */ - -/* decode() converts a pointer to an oriented triangle. The orientation is */ -/* extracted from the two least significant bits of the pointer. */ - -#define decode(ptr, otri) \ - (otri).orient = (int) ((unsigned long) (ptr) & (unsigned long) 3l); \ - (otri).tri = (triangle *) \ - ((unsigned long) (ptr) ^ (unsigned long) (otri).orient) - -/* encode() compresses an oriented triangle into a single pointer. It */ -/* relies on the assumption that all triangles are aligned to four-byte */ -/* boundaries, so the two least significant bits of (otri).tri are zero. */ - -#define encode(otri) \ - (triangle) ((unsigned long) (otri).tri | (unsigned long) (otri).orient) - -/* The following handle manipulation primitives are all described by Guibas */ -/* and Stolfi. However, Guibas and Stolfi use an edge-based data */ -/* structure, whereas I use a triangle-based data structure. */ - -/* sym() finds the abutting triangle, on the same edge. Note that the edge */ -/* direction is necessarily reversed, because the handle specified by an */ -/* oriented triangle is directed counterclockwise around the triangle. */ - -#define sym(otri1, otri2) \ - ptr = (otri1).tri[(otri1).orient]; \ - decode(ptr, otri2); - -#define symself(otri) \ - ptr = (otri).tri[(otri).orient]; \ - decode(ptr, otri); - -/* lnext() finds the next edge (counterclockwise) of a triangle. */ - -#define lnext(otri1, otri2) \ - (otri2).tri = (otri1).tri; \ - (otri2).orient = plus1mod3[(otri1).orient] - -#define lnextself(otri) \ - (otri).orient = plus1mod3[(otri).orient] - -/* lprev() finds the previous edge (clockwise) of a triangle. */ - -#define lprev(otri1, otri2) \ - (otri2).tri = (otri1).tri; \ - (otri2).orient = minus1mod3[(otri1).orient] - -#define lprevself(otri) \ - (otri).orient = minus1mod3[(otri).orient] - -/* onext() spins counterclockwise around a vertex; that is, it finds the */ -/* next edge with the same origin in the counterclockwise direction. This */ -/* edge is part of a different triangle. */ - -#define onext(otri1, otri2) \ - lprev(otri1, otri2); \ - symself(otri2); - -#define onextself(otri) \ - lprevself(otri); \ - symself(otri); - -/* oprev() spins clockwise around a vertex; that is, it finds the next edge */ -/* with the same origin in the clockwise direction. This edge is part of */ -/* a different triangle. */ - -#define oprev(otri1, otri2) \ - sym(otri1, otri2); \ - lnextself(otri2); - -#define oprevself(otri) \ - symself(otri); \ - lnextself(otri); - -/* dnext() spins counterclockwise around a vertex; that is, it finds the */ -/* next edge with the same destination in the counterclockwise direction. */ -/* This edge is part of a different triangle. */ - -#define dnext(otri1, otri2) \ - sym(otri1, otri2); \ - lprevself(otri2); - -#define dnextself(otri) \ - symself(otri); \ - lprevself(otri); - -/* dprev() spins clockwise around a vertex; that is, it finds the next edge */ -/* with the same destination in the clockwise direction. This edge is */ -/* part of a different triangle. */ - -#define dprev(otri1, otri2) \ - lnext(otri1, otri2); \ - symself(otri2); - -#define dprevself(otri) \ - lnextself(otri); \ - symself(otri); - -/* rnext() moves one edge counterclockwise about the adjacent triangle. */ -/* (It's best understood by reading Guibas and Stolfi. It involves */ -/* changing triangles twice.) */ - -#define rnext(otri1, otri2) \ - sym(otri1, otri2); \ - lnextself(otri2); \ - symself(otri2); - -#define rnextself(otri) \ - symself(otri); \ - lnextself(otri); \ - symself(otri); - -/* rprev() moves one edge clockwise about the adjacent triangle. */ -/* (It's best understood by reading Guibas and Stolfi. It involves */ -/* changing triangles twice.) */ - -#define rprev(otri1, otri2) \ - sym(otri1, otri2); \ - lprevself(otri2); \ - symself(otri2); - -#define rprevself(otri) \ - symself(otri); \ - lprevself(otri); \ - symself(otri); - -/* These primitives determine or set the origin, destination, or apex of a */ -/* triangle. */ - -#define org(otri, vertexptr) \ - vertexptr = (vertex) (otri).tri[plus1mod3[(otri).orient] + 3] - -#define dest(otri, vertexptr) \ - vertexptr = (vertex) (otri).tri[minus1mod3[(otri).orient] + 3] - -#define apex(otri, vertexptr) \ - vertexptr = (vertex) (otri).tri[(otri).orient + 3] - -#define setorg(otri, vertexptr) \ - (otri).tri[plus1mod3[(otri).orient] + 3] = (triangle) vertexptr - -#define setdest(otri, vertexptr) \ - (otri).tri[minus1mod3[(otri).orient] + 3] = (triangle) vertexptr - -#define setapex(otri, vertexptr) \ - (otri).tri[(otri).orient + 3] = (triangle) vertexptr - -/* Bond two triangles together. */ - -#define bond(otri1, otri2) \ - (otri1).tri[(otri1).orient] = encode(otri2); \ - (otri2).tri[(otri2).orient] = encode(otri1) - -/* Dissolve a bond (from one side). Note that the other triangle will still */ -/* think it's connected to this triangle. Usually, however, the other */ -/* triangle is being deleted entirely, or bonded to another triangle, so */ -/* it doesn't matter. */ - -#define dissolve(otri) \ - (otri).tri[(otri).orient] = (triangle) m->dummytri - -/* Copy an oriented triangle. */ - -#define otricopy(otri1, otri2) \ - (otri2).tri = (otri1).tri; \ - (otri2).orient = (otri1).orient - -/* Test for equality of oriented triangles. */ - -#define otriequal(otri1, otri2) \ - (((otri1).tri == (otri2).tri) && \ - ((otri1).orient == (otri2).orient)) - -/* Primitives to infect or cure a triangle with the virus. These rely on */ -/* the assumption that all subsegments are aligned to four-byte boundaries.*/ - -#define infect(otri) \ - (otri).tri[6] = (triangle) \ - ((unsigned long) (otri).tri[6] | (unsigned long) 2l) - -#define uninfect(otri) \ - (otri).tri[6] = (triangle) \ - ((unsigned long) (otri).tri[6] & ~ (unsigned long) 2l) - -/* Test a triangle for viral infection. */ - -#define infected(otri) \ - (((unsigned long) (otri).tri[6] & (unsigned long) 2l) != 0l) - -/* Check or set a triangle's attributes. */ - -#define elemattribute(otri, attnum) \ - ((REAL *) (otri).tri)[m->elemattribindex + (attnum)] - -#define setelemattribute(otri, attnum, value) \ - ((REAL *) (otri).tri)[m->elemattribindex + (attnum)] = value - -/* Check or set a triangle's maximum area bound. */ - -#define areabound(otri) ((REAL *) (otri).tri)[m->areaboundindex] - -#define setareabound(otri, value) \ - ((REAL *) (otri).tri)[m->areaboundindex] = value - -/* Check or set a triangle's deallocation. Its second pointer is set to */ -/* NULL to indicate that it is not allocated. (Its first pointer is used */ -/* for the stack of dead items.) Its fourth pointer (its first vertex) */ -/* is set to NULL in case a `badtriang' structure points to it. */ - -#define deadtri(tria) ((tria)[1] == (triangle) NULL) - -#define killtri(tria) \ - (tria)[1] = (triangle) NULL; \ - (tria)[3] = (triangle) NULL - -/********* Primitives for subsegments *********/ -/* */ -/* */ - -/* sdecode() converts a pointer to an oriented subsegment. The orientation */ -/* is extracted from the least significant bit of the pointer. The two */ -/* least significant bits (one for orientation, one for viral infection) */ -/* are masked out to produce the real pointer. */ - -#define sdecode(sptr, osub) \ - (osub).ssorient = (int) ((unsigned long) (sptr) & (unsigned long) 1l); \ - (osub).ss = (subseg *) \ - ((unsigned long) (sptr) & ~ (unsigned long) 3l) - -/* sencode() compresses an oriented subsegment into a single pointer. It */ -/* relies on the assumption that all subsegments are aligned to two-byte */ -/* boundaries, so the least significant bit of (osub).ss is zero. */ - -#define sencode(osub) \ - (subseg) ((unsigned long) (osub).ss | (unsigned long) (osub).ssorient) - -/* ssym() toggles the orientation of a subsegment. */ - -#define ssym(osub1, osub2) \ - (osub2).ss = (osub1).ss; \ - (osub2).ssorient = 1 - (osub1).ssorient - -#define ssymself(osub) \ - (osub).ssorient = 1 - (osub).ssorient - -/* spivot() finds the other subsegment (from the same segment) that shares */ -/* the same origin. */ - -#define spivot(osub1, osub2) \ - sptr = (osub1).ss[(osub1).ssorient]; \ - sdecode(sptr, osub2) - -#define spivotself(osub) \ - sptr = (osub).ss[(osub).ssorient]; \ - sdecode(sptr, osub) - -/* snext() finds the next subsegment (from the same segment) in sequence; */ -/* one whose origin is the input subsegment's destination. */ - -#define snext(osub1, osub2) \ - sptr = (osub1).ss[1 - (osub1).ssorient]; \ - sdecode(sptr, osub2) - -#define snextself(osub) \ - sptr = (osub).ss[1 - (osub).ssorient]; \ - sdecode(sptr, osub) - -/* These primitives determine or set the origin or destination of a */ -/* subsegment. */ - -#define sorg(osub, vertexptr) \ - vertexptr = (vertex) (osub).ss[2 + (osub).ssorient] - -#define sdest(osub, vertexptr) \ - vertexptr = (vertex) (osub).ss[3 - (osub).ssorient] - -#define setsorg(osub, vertexptr) \ - (osub).ss[2 + (osub).ssorient] = (subseg) vertexptr - -#define setsdest(osub, vertexptr) \ - (osub).ss[3 - (osub).ssorient] = (subseg) vertexptr - -/* These primitives read or set a boundary marker. Boundary markers are */ -/* used to hold user-defined tags for setting boundary conditions in */ -/* finite element solvers. */ - -#define mark(osub) (* (int *) ((osub).ss + 6)) - -#define setmark(osub, value) \ - * (int *) ((osub).ss + 6) = value - -/* Bond two subsegments together. */ - -#define sbond(osub1, osub2) \ - (osub1).ss[(osub1).ssorient] = sencode(osub2); \ - (osub2).ss[(osub2).ssorient] = sencode(osub1) - -/* Dissolve a subsegment bond (from one side). Note that the other */ -/* subsegment will still think it's connected to this subsegment. */ - -#define sdissolve(osub) \ - (osub).ss[(osub).ssorient] = (subseg) m->dummysub - -/* Copy a subsegment. */ - -#define subsegcopy(osub1, osub2) \ - (osub2).ss = (osub1).ss; \ - (osub2).ssorient = (osub1).ssorient - -/* Test for equality of subsegments. */ - -#define subsegequal(osub1, osub2) \ - (((osub1).ss == (osub2).ss) && \ - ((osub1).ssorient == (osub2).ssorient)) - -/* Check or set a subsegment's deallocation. Its second pointer is set to */ -/* NULL to indicate that it is not allocated. (Its first pointer is used */ -/* for the stack of dead items.) Its third pointer (its first vertex) */ -/* is set to NULL in case a `badsubseg' structure points to it. */ - -#define deadsubseg(sub) ((sub)[1] == (subseg) NULL) - -#define killsubseg(sub) \ - (sub)[1] = (subseg) NULL; \ - (sub)[2] = (subseg) NULL - -/********* Primitives for interacting triangles and subsegments *********/ -/* */ -/* */ - -/* tspivot() finds a subsegment abutting a triangle. */ - -#define tspivot(otri, osub) \ - sptr = (subseg) (otri).tri[6 + (otri).orient]; \ - sdecode(sptr, osub) - -/* stpivot() finds a triangle abutting a subsegment. It requires that the */ -/* variable `ptr' of type `triangle' be defined. */ - -#define stpivot(osub, otri) \ - ptr = (triangle) (osub).ss[4 + (osub).ssorient]; \ - decode(ptr, otri) - -/* Bond a triangle to a subsegment. */ - -#define tsbond(otri, osub) \ - (otri).tri[6 + (otri).orient] = (triangle) sencode(osub); \ - (osub).ss[4 + (osub).ssorient] = (subseg) encode(otri) - -/* Dissolve a bond (from the triangle side). */ - -#define tsdissolve(otri) \ - (otri).tri[6 + (otri).orient] = (triangle) m->dummysub - -/* Dissolve a bond (from the subsegment side). */ - -#define stdissolve(osub) \ - (osub).ss[4 + (osub).ssorient] = (subseg) m->dummytri - -/********* Primitives for vertices *********/ -/* */ -/* */ - -#define vertexmark(vx) ((int *) (vx))[m->vertexmarkindex] - -#define setvertexmark(vx, value) \ - ((int *) (vx))[m->vertexmarkindex] = value - -#define vertextype(vx) ((int *) (vx))[m->vertexmarkindex + 1] - -#define setvertextype(vx, value) \ - ((int *) (vx))[m->vertexmarkindex + 1] = value - -#define vertex2tri(vx) ((triangle *) (vx))[m->vertex2triindex] - -#define setvertex2tri(vx, value) \ - ((triangle *) (vx))[m->vertex2triindex] = value - -/** **/ -/** **/ -/********* Mesh manipulation primitives end here *********/ - -/********* User-defined triangle evaluation routine begins here *********/ -/** **/ -/** **/ - -/*****************************************************************************/ -/* */ -/* triunsuitable() Determine if a triangle is unsuitable, and thus must */ -/* be further refined. */ -/* */ -/* You may write your own procedure that decides whether or not a selected */ -/* triangle is too big (and needs to be refined). There are two ways to do */ -/* this. */ -/* */ -/* (1) Modify the procedure `triunsuitable' below, then recompile */ -/* Triangle. */ -/* */ -/* (2) Define the symbol EXTERNAL_TEST (either by adding the definition */ -/* to this file, or by using the appropriate compiler switch). This way, */ -/* you can compile triangle.c separately from your test. Write your own */ -/* `triunsuitable' procedure in a separate C file (using the same prototype */ -/* as below). Compile it and link the object code with triangle.o. */ -/* */ -/* This procedure returns 1 if the triangle is too large and should be */ -/* refined; 0 otherwise. */ -/* */ -/*****************************************************************************/ - -#ifdef EXTERNAL_TEST - -#ifdef ANSI_DECLARATORS -extern int triunsuitable(vertex triorg, vertex tridest, vertex triapex, - REAL area); -#else /* not ANSI_DECLARATORS */ -extern int triunsuitable(); -#endif /* not ANSI_DECLARATORS */ - -#else /* not EXTERNAL_TEST */ - -#ifdef ANSI_DECLARATORS -int triunsuitable(vertex triorg, vertex tridest, vertex triapex, REAL area) -#else /* not ANSI_DECLARATORS */ -int triunsuitable(triorg, tridest, triapex, area) -vertex triorg; /* The triangle's origin vertex. */ -vertex tridest; /* The triangle's destination vertex. */ -vertex triapex; /* The triangle's apex vertex. */ -REAL area; /* The area of the triangle. */ -#endif /* not ANSI_DECLARATORS */ - -{ - REAL dxoa, dxda, dxod; - REAL dyoa, dyda, dyod; - REAL oalen, dalen, odlen; - REAL maxlen; - - dxoa = triorg[0] - triapex[0]; - dyoa = triorg[1] - triapex[1]; - dxda = tridest[0] - triapex[0]; - dyda = tridest[1] - triapex[1]; - dxod = triorg[0] - tridest[0]; - dyod = triorg[1] - tridest[1]; - /* Find the squares of the lengths of the triangle's three edges. */ - oalen = dxoa * dxoa + dyoa * dyoa; - dalen = dxda * dxda + dyda * dyda; - odlen = dxod * dxod + dyod * dyod; - /* Find the square of the length of the longest edge. */ - maxlen = (dalen > oalen) ? dalen : oalen; - maxlen = (odlen > maxlen) ? odlen : maxlen; - - if (maxlen > 0.05 * (triorg[0] * triorg[0] + triorg[1] * triorg[1]) + 0.02) { - return 1; - } else { - return 0; - } -} - -#endif /* not EXTERNAL_TEST */ - -/** **/ -/** **/ -/********* User-defined triangle evaluation routine ends here *********/ - -/********* Memory allocation wrappers begin here *********/ -/** **/ -/** **/ - -#ifdef ANSI_DECLARATORS -VOID *trimalloc(int size) -#else /* not ANSI_DECLARATORS */ -VOID *trimalloc(size) -int size; -#endif /* not ANSI_DECLARATORS */ - -{ - VOID *memptr; - - memptr = malloc(size); - if (memptr == (VOID *) NULL) { - fprintf(stderr, "Error: Out of memory.\n"); - exit(1); - } - return(memptr); -} - -#ifdef ANSI_DECLARATORS -void trifree(VOID *memptr) -#else /* not ANSI_DECLARATORS */ -void trifree(memptr) -VOID *memptr; -#endif /* not ANSI_DECLARATORS */ - -{ - free(memptr); -} - -/** **/ -/** **/ -/********* Memory allocation wrappers end here *********/ - -/********* User interaction routines begin here *********/ -/** **/ -/** **/ - -/*****************************************************************************/ -/* */ -/* syntax() Print list of command line switches. */ -/* */ -/*****************************************************************************/ - -#ifndef TRILIBRARY - -void syntax() -{ -#ifdef CDT_ONLY -#ifdef REDUCED - printf("triangle [-pAcjevngBPNEIOXzo_lQVh] input_file\n"); -#else /* not REDUCED */ - printf("triangle [-pAcjevngBPNEIOXzo_iFlCQVh] input_file\n"); -#endif /* not REDUCED */ -#else /* not CDT_ONLY */ -#ifdef REDUCED - printf("triangle [-prq__a__uAcjevngBPNEIOXzo_YS__LlQVh] input_file\n"); -#else /* not REDUCED */ - printf("triangle [-prq__a__uAcjevngBPNEIOXzo_YS__LiFlsCQVh] input_file\n"); -#endif /* not REDUCED */ -#endif /* not CDT_ONLY */ - - printf(" -p Triangulates a Planar Straight Line Graph (.poly file).\n"); -#ifndef CDT_ONLY - printf(" -r Refines a previously generated mesh.\n"); - printf( - " -q Quality mesh generation. A minimum angle may be specified.\n"); - printf(" -a Applies a maximum triangle area constraint.\n"); - printf(" -u Applies a user-defined triangle constraint.\n"); -#endif /* not CDT_ONLY */ - printf( - " -A Applies attributes to identify triangles in certain regions.\n"); - printf(" -c Encloses the convex hull with segments.\n"); - printf(" -w Weighted Delaunay triangulation.\n"); - printf(" -W Regular triangulation (lower hull of a height field).\n"); - printf(" -j Jettison unused vertices from output .node file.\n"); - printf(" -e Generates an edge list.\n"); - printf(" -v Generates a Voronoi diagram.\n"); - printf(" -n Generates a list of triangle neighbors.\n"); - printf(" -g Generates an .off file for Geomview.\n"); - printf(" -B Suppresses output of boundary information.\n"); - printf(" -P Suppresses output of .poly file.\n"); - printf(" -N Suppresses output of .node file.\n"); - printf(" -E Suppresses output of .ele file.\n"); - printf(" -I Suppresses mesh iteration numbers.\n"); - printf(" -O Ignores holes in .poly file.\n"); - printf(" -X Suppresses use of exact arithmetic.\n"); - printf(" -z Numbers all items starting from zero (rather than one).\n"); - printf(" -o2 Generates second-order subparametric elements.\n"); -#ifndef CDT_ONLY - printf(" -Y Suppresses boundary segment splitting.\n"); - printf(" -S Specifies maximum number of added Steiner points.\n"); - printf(" -L Uses equatorial circles, not equatorial lenses.\n"); -#endif /* not CDT_ONLY */ -#ifndef REDUCED - printf(" -i Uses incremental method, rather than divide-and-conquer.\n"); - printf(" -F Uses Fortune's sweepline algorithm, rather than d-and-c.\n"); -#endif /* not REDUCED */ - printf(" -l Uses vertical cuts only, rather than alternating cuts.\n"); -#ifndef REDUCED -#ifndef CDT_ONLY - printf( - " -s Force segments into mesh by splitting (instead of using CDT).\n"); - printf(" -L Uses Ruppert's diametral spheres, not diametral lenses.\n"); -#endif /* not CDT_ONLY */ - printf(" -C Check consistency of final mesh.\n"); -#endif /* not REDUCED */ - printf(" -Q Quiet: No terminal output except errors.\n"); - printf(" -V Verbose: Detailed information on what I'm doing.\n"); - printf(" -h Help: Detailed instructions for Triangle.\n"); - exit(0); -} - -#endif /* not TRILIBRARY */ - -/*****************************************************************************/ -/* */ -/* info() Print out complete instructions. */ -/* */ -/*****************************************************************************/ - -#ifndef TRILIBRARY - -void info() -{ - printf("Triangle\n"); - printf( -"A Two-Dimensional Quality Mesh Generator and Delaunay Triangulator.\n"); - printf("Version 1.4\n\n"); - printf("Copyright 1993, 1995, 1997, 1998, 2002 Jonathan Richard Shewchuk\n"); - printf("2360 Woolsey #H / Berkeley, California 94705-1927\n"); - printf("Bugs/comments to jrs@cs.berkeley.edu\n"); - printf( -"Created as part of the Archimedes project (tools for parallel FEM).\n"); - printf( -"Supported in part by NSF Grant CMS-9318163 and an NSERC 1967 Scholarship.\n"); - printf("There is no warranty whatsoever. Use at your own risk.\n"); -#ifdef SINGLE - printf("This executable is compiled for single precision arithmetic.\n\n\n"); -#else /* not SINGLE */ - printf("This executable is compiled for double precision arithmetic.\n\n\n"); -#endif /* not SINGLE */ - printf( -"Triangle generates exact Delaunay triangulations, constrained Delaunay\n"); - printf( -"triangulations, Voronoi diagrams, and quality conforming Delaunay\n"); - printf( -"triangulations. The latter can be generated with no small angles, and are\n" -); - printf( -"thus suitable for finite element analysis. If no command line switches are\n" -); - printf( -"specified, your .node input file is read, and the Delaunay triangulation is\n" -); - printf("returned in .node and .ele output files. The command syntax is:\n"); - printf("\n"); - printf("triangle [-prq__a__uAcjevngBPNEIOXzo_YS__LiFlsCQVh] input_file\n"); - printf("\n"); - printf( -"Underscores indicate that numbers may optionally follow certain switches.\n"); - printf( -"Do not leave any space between a switch and its numeric parameter.\n"); - printf( -"input_file must be a file with extension .node, or extension .poly if the\n"); - printf( -"-p switch is used. If -r is used, you must supply .node and .ele files,\n"); - printf( -"and possibly a .poly file and an .area file as well. The formats of these\n" -); - printf("files are described below.\n\n"); - printf("Command Line Switches:\n\n"); - printf( -" -p Reads a Planar Straight Line Graph (.poly file), which can specify\n" -); - printf(" vertices, segments, holes, regional attributes, and area\n"); - printf( -" constraints. Generates a constrained Delaunay triangulation (CDT)\n" -); - printf( -" fitting the input; or, if -s, -q, -a, or -u is used, a conforming\n"); - printf( -" constrained Delaunay triangulation (CCDT). If -p is not used,\n"); - printf(" Triangle reads a .node file by default.\n"); - printf( -" -r Refines a previously generated mesh. The mesh is read from a .node\n" -); - printf( -" file and an .ele file. If -p is also used, a .poly file is read\n"); - printf( -" and used to constrain segments in the mesh. If -a is also used\n"); - printf( -" (with no number following), an .area file is read and used to\n"); - printf( -" impose area constraints on the mesh. Further details on refinement\n" -); - printf(" are given below.\n"); - printf( -" -q Quality mesh generation by my variant of Jim Ruppert's Delaunay\n"); - printf( -" refinement algorithm. Adds vertices to the mesh to ensure that no\n" -); - printf( -" angles smaller than 20 degrees occur. An alternative minimum angle\n" -); - printf( -" may be specified after the `q'. If the minimum angle is 20.7\n"); - printf( -" degrees or smaller, the triangulation algorithm is mathematically\n"); - printf( -" guaranteed to terminate (assuming infinite precision arithmetic--\n"); - printf( -" Triangle may fail to terminate if you run out of precision). In\n"); - printf( -" practice, the algorithm often succeeds for minimum angles up to\n"); - printf( -" 33.8 degrees. For some meshes, however, it may be necessary to\n"); - printf( -" reduce the minimum angle to avoid problems associated with\n"); - printf( -" insufficient floating-point precision. The specified angle may\n"); - printf(" include a decimal point.\n"); - printf( -" -a Imposes a maximum triangle area. If a number follows the `a', no\n"); - printf( -" triangle is generated whose area is larger than that number. If no\n" -); - printf( -" number is specified, an .area file (if -r is used) or .poly file\n"); - printf( -" (if -r is not used) specifies a set of maximum area constraints.\n"); - printf( -" An .area file contains a separate area constraint for each\n"); - printf( -" triangle, and is useful for refining a finite element mesh based on\n" -); - printf( -" a posteriori error estimates. A .poly file can optionally contain\n" -); - printf( -" an area constraint for each segment-bounded region, thereby\n"); - printf( -" controlling triangle densities in a first triangulation of a PSLG.\n" -); - printf( -" You can impose both a fixed area constraint and a varying area\n"); - printf( -" constraint by invoking the -a switch twice, once with and once\n"); - printf( -" without a number following. Each area specified may include a\n"); - printf(" decimal point.\n"); - printf( -" -u Imposes a user-defined constraint on triangle size. There are two\n" -); - printf( -" ways to use this feature. One is to edit the triunsuitable()\n"); - printf( -" procedure in triangle.c to encode any constraint you like, then\n"); - printf( -" recompile Triangle. The other is to compile triangle.c with the\n"); - printf( -" EXTERNAL_TEST symbol set (compiler switch -DEXTERNAL_TEST), then\n"); - printf( -" link Triangle against a separate object file that implements\n"); - printf( -" triunsuitable(). In either case, the -u switch causes the user-\n"); - printf(" defined test to be applied to every triangle.\n"); - printf( -" -A Assigns an additional attribute to each triangle that identifies\n"); - printf( -" what segment-bounded region each triangle belongs to. Attributes\n"); - printf( -" are assigned to regions by the .poly file. If a region is not\n"); - printf( -" explicitly marked by the .poly file, triangles in that region are\n"); - printf( -" assigned an attribute of zero. The -A switch has an effect only\n"); - printf(" when the -p switch is used and the -r switch is not.\n"); - printf( -" -c Creates segments on the convex hull of the triangulation. If you\n"); - printf( -" are triangulating a vertex set, this switch causes a .poly file to\n" -); - printf( -" be written, containing all edges in the convex hull. If you are\n"); - printf( -" triangulating a PSLG, this switch specifies that the whole convex\n"); - printf( -" hull of the PSLG should be triangulated, regardless of what\n"); - printf( -" segments the PSLG has. If you do not use this switch when\n"); - printf( -" triangulating a PSLG, it is assumed that you have identified the\n"); - printf( -" region to be triangulated by surrounding it with segments of the\n"); - printf( -" input PSLG. Beware: if you are not careful, this switch can cause\n" -); - printf( -" the introduction of an extremely thin angle between a PSLG segment\n" -); - printf( -" and a convex hull segment, which can cause overrefinement (and\n"); - printf( -" possibly failure if Triangle runs out of precision). If you are\n"); - printf( -" refining a mesh, the -c switch works differently; it generates the\n" -); - printf( -" set of boundary edges of the mesh (useful if no .poly file was\n"); - printf(" read).\n"); - printf( -" -j Jettisons vertices that are not part of the final triangulation\n"); - printf( -" from the output .node file. By default, Triangle copies all\n"); - printf( -" vertices in the input .node file to the output .node file, in the\n"); - printf( -" same order, so their indices do not change. The -j switch prevents\n" -); - printf( -" duplicated input vertices from appearing in the output .node file;\n" -); - printf( -" hence, if two input vertices have exactly the same coordinates,\n"); - printf( -" only the first appears in the output. If any vertices are\n"); - printf( -" jettisoned, the vertex numbering in the output .node file differs\n"); - printf(" from that of the input .node file.\n"); - printf( -" -e Outputs (to an .edge file) a list of edges of the triangulation.\n"); - printf( -" -v Outputs the Voronoi diagram associated with the triangulation.\n"); - printf( -" Does not attempt to detect degeneracies, so some Voronoi vertices\n"); - printf( -" may be duplicated. See the discussion of Voronoi diagrams below.\n"); - printf( -" -n Outputs (to a .neigh file) a list of triangles neighboring each\n"); - printf(" triangle.\n"); - printf( -" -g Outputs the mesh to an Object File Format (.off) file, suitable for\n" -); - printf(" viewing with the Geometry Center's Geomview package.\n"); - printf( -" -B No boundary markers in the output .node, .poly, and .edge output\n"); - printf( -" files. See the detailed discussion of boundary markers below.\n"); - printf( -" -P No output .poly file. Saves disk space, but you lose the ability\n"); - printf( -" to maintain constraining segments on later refinements of the mesh.\n" -); - printf(" -N No output .node file.\n"); - printf(" -E No output .ele file.\n"); - printf( -" -I No iteration numbers. Suppresses the output of .node and .poly\n"); - printf( -" files, so your input files won't be overwritten. (If your input is\n" -); - printf( -" a .poly file only, a .node file is written.) Cannot be used with\n"); - printf( -" the -r switch, because that would overwrite your input .ele file.\n"); - printf( -" Shouldn't be used with the -q, -a, -u, or -s switch if you are\n"); - printf( -" using a .node file for input, because no .node file is written, so\n" -); - printf(" there is no record of any added Steiner points.\n"); - printf(" -O No holes. Ignores the holes in the .poly file.\n"); - printf( -" -X No exact arithmetic. Normally, Triangle uses exact floating-point\n" -); - printf( -" arithmetic for certain tests if it thinks the inexact tests are not\n" -); - printf( -" accurate enough. Exact arithmetic ensures the robustness of the\n"); - printf( -" triangulation algorithms, despite floating-point roundoff error.\n"); - printf( -" Disabling exact arithmetic with the -X switch causes a small\n"); - printf( -" improvement in speed and creates the possibility (albeit small)\n"); - printf( -" that Triangle will fail to produce a valid mesh. Not recommended.\n" -); - printf( -" -z Numbers all items starting from zero (rather than one). Note that\n" -); - printf( -" this switch is normally overrided by the value used to number the\n"); - printf( -" first vertex of the input .node or .poly file. However, this\n"); - printf( -" switch is useful when calling Triangle from another program.\n"); - printf( -" -o2 Generates second-order subparametric elements with six nodes each.\n" -); - printf( -" -Y No new vertices on the boundary. This switch is useful when the\n"); - printf( -" mesh boundary must be preserved so that it conforms to some\n"); - printf( -" adjacent mesh. Be forewarned that you will probably sacrifice some\n" -); - printf( -" of the quality of the mesh; Triangle will try, but the resulting\n"); - printf( -" mesh may contain triangles of poor aspect ratio. Works well if all\n" -); - printf( -" the boundary vertices are closely spaced. Specify this switch\n"); - printf( -" twice (`-YY') to prevent all segment splitting, including internal\n" -); - printf(" boundaries.\n"); - printf( -" -S Specifies the maximum number of Steiner points (vertices that are\n"); - printf( -" not in the input, but are added to meet the constraints on minimum\n" -); - printf( -" angle and maximum area). The default is to allow an unlimited\n"); - printf( -" number. If you specify this switch with no number after it,\n"); - printf( -" the limit is set to zero. Triangle always adds vertices at segment\n" -); - printf( -" intersections, even if it needs to use more vertices than the limit\n" -); - printf( -" you set. When Triangle inserts segments by splitting (-s), it\n"); - printf( -" always adds enough vertices to ensure that all the segments of the\n" -); - printf(" PLSG are recovered, ignoring the limit if necessary.\n"); - printf( -" -L Do not use diametral lenses to determine whether subsegments are\n"); - printf( -" encroached; use diametral circles instead (as in Ruppert's\n"); - printf( -" algorithm). Use this switch if you want all triangles in the mesh\n" -); - printf( -" to be Delaunay, and not just constrained Delaunay; or if you want\n"); - printf( -" to ensure that all Voronoi vertices lie within the triangulation.\n"); - printf( -" (Applications such as some finite volume methods may have this\n"); - printf( -" requirement.) This switch may increase the number of vertices in\n"); - printf(" the mesh to meet these constraints.\n"); - printf( -" -i Uses an incremental rather than divide-and-conquer algorithm to\n"); - printf( -" form a Delaunay triangulation. Try it if the divide-and-conquer\n"); - printf(" algorithm fails.\n"); - printf( -" -F Uses Steven Fortune's sweepline algorithm to form a Delaunay\n"); - printf( -" triangulation. Warning: does not use exact arithmetic for all\n"); - printf(" calculations. An exact result is not guaranteed.\n"); - printf( -" -l Uses only vertical cuts in the divide-and-conquer algorithm. By\n"); - printf( -" default, Triangle uses alternating vertical and horizontal cuts,\n"); - printf( -" which usually improve the speed except with vertex sets that are\n"); - printf( -" small or short and wide. This switch is primarily of theoretical\n"); - printf(" interest.\n"); - printf( -" -s Specifies that segments should be forced into the triangulation by\n" -); - printf( -" recursively splitting them at their midpoints, rather than by\n"); - printf( -" generating a constrained Delaunay triangulation. Segment splitting\n" -); - printf( -" is true to Ruppert's original algorithm, but can create needlessly\n" -); - printf( -" small triangles. This switch is primarily of theoretical interest.\n" -); - printf( -" -C Check the consistency of the final mesh. Uses exact arithmetic for\n" -); - printf( -" checking, even if the -X switch is used. Useful if you suspect\n"); - printf(" Triangle is buggy.\n"); - printf( -" -Q Quiet: Suppresses all explanation of what Triangle is doing,\n"); - printf(" unless an error occurs.\n"); - printf( -" -V Verbose: Gives detailed information about what Triangle is doing.\n" -); - printf( -" Add more `V's for increasing amount of detail. `-V' gives\n"); - printf( -" information on algorithmic progress and more detailed statistics.\n"); - printf( -" `-VV' gives vertex-by-vertex details, and prints so much that\n"); - printf( -" Triangle runs much more slowly. `-VVVV' gives information only\n"); - printf(" a debugger could love.\n"); - printf(" -h Help: Displays these instructions.\n"); - printf("\n"); - printf("Definitions:\n"); - printf("\n"); - printf( -" A Delaunay triangulation of a vertex set is a triangulation whose\n"); - printf( -" vertices are the vertex set, wherein no vertex in the vertex set falls in\n" -); - printf( -" the interior of the circumcircle (circle that passes through all three\n"); - printf(" vertices) of any triangle in the triangulation.\n\n"); - printf( -" A Voronoi diagram of a vertex set is a subdivision of the plane into\n"); - printf( -" polygonal regions (some of which may be infinite), where each region is\n"); - printf( -" the set of points in the plane that are closer to some input vertex than\n" -); - printf( -" to any other input vertex. (The Voronoi diagram is the geometric dual of\n" -); - printf(" the Delaunay triangulation.)\n\n"); - printf( -" A Planar Straight Line Graph (PSLG) is a set of vertices and segments.\n"); - printf( -" Segments are simply edges, whose endpoints are vertices in the PSLG.\n"); - printf( -" Segments may intersect each other only at their endpoints. The file\n"); - printf(" format for PSLGs (.poly files) is described below.\n\n"); - printf( -" A constrained Delaunay triangulation (CDT) of a PSLG is similar to a\n"); - printf( -" Delaunay triangulation, but each PSLG segment is present as a single edge\n" -); - printf( -" in the triangulation. (A constrained Delaunay triangulation is not truly\n" -); - printf( -" a Delaunay triangulation.) By definition, a CDT does not have any\n"); - printf(" vertices other than those specified in the input PSLG.\n\n"); - printf( -" A conforming Delaunay triangulation of a PSLG is a true Delaunay\n"); - printf( -" triangulation in which each PSLG segment is represented by a linear\n"); - printf( -" contiguous sequence of edges in the triangulation. Each input segment\n"); - printf( -" may have been subdivided into shorter subsegments by the insertion of\n"); - printf( -" additional vertices. These inserted vertices are necessary to maintain\n"); - printf( -" the Delaunay property while ensuring that every segment is represented.\n"); - printf("\n"); - printf("File Formats:\n"); - printf("\n"); - printf( -" All files may contain comments prefixed by the character '#'. Vertices,\n" -); - printf( -" triangles, edges, holes, and maximum area constraints must be numbered\n"); - printf( -" consecutively, starting from either 1 or 0. Whichever you choose, all\n"); - printf( -" input files must be consistent; if the vertices are numbered from 1, so\n"); - printf( -" must be all other objects. Triangle automatically detects your choice\n"); - printf( -" while reading the .node (or .poly) file. (When calling Triangle from\n"); - printf( -" another program, use the -z switch if you wish to number objects from\n"); - printf(" zero.) Examples of these file formats are given below.\n\n"); - printf(" .node files:\n"); - printf( -" First line: <# of vertices> <# of attributes>\n" -); - printf( -" <# of boundary markers (0 or 1)>\n" -); - printf( -" Remaining lines: [attributes] [boundary marker]\n"); - printf("\n"); - printf( -" The attributes, which are typically floating-point values of physical\n"); - printf( -" quantities (such as mass or conductivity) associated with the nodes of\n" -); - printf( -" a finite element mesh, are copied unchanged to the output mesh. If -q,\n" -); - printf( -" -a, -u, or -s is selected, each new Steiner point added to the mesh\n"); - printf(" has attributes assigned to it by linear interpolation.\n\n"); - printf( -" If the fourth entry of the first line is `1', the last column of the\n"); - printf( -" remainder of the file is assumed to contain boundary markers. Boundary\n" -); - printf( -" markers are used to identify boundary vertices and vertices resting on\n" -); - printf( -" PSLG segments; a complete description appears in a section below. The\n" -); - printf( -" .node file produced by Triangle contains boundary markers in the last\n"); - printf(" column unless they are suppressed by the -B switch.\n\n"); - printf(" .ele files:\n"); - printf( -" First line: <# of triangles> <# of attributes>\n"); - printf( -" Remaining lines: ... [attributes]\n"); - printf("\n"); - printf( -" Nodes are indices into the corresponding .node file. The first three\n"); - printf( -" nodes are the corner vertices, and are listed in counterclockwise order\n" -); - printf( -" around each triangle. (The remaining nodes, if any, depend on the type\n" -); - printf(" of finite element used.)\n\n"); - printf( -" The attributes are just like those of .node files. Because there is no\n" -); - printf( -" simple mapping from input to output triangles, an attempt is made to\n"); - printf( -" interpolate attributes, which may result in a good deal of diffusion of\n" -); - printf( -" attributes among nearby triangles as the triangulation is refined.\n"); - printf( -" Attributes do not diffuse across segments, so attributes used to\n"); - printf(" identify segment-bounded regions remain intact.\n\n"); - printf( -" In .ele files produced by Triangle, each triangular element has three\n"); - printf( -" nodes (vertices) unless the -o2 switch is used, in which case\n"); - printf( -" subparametric quadratic elements with six nodes each are generated.\n"); - printf( -" The first three nodes are the corners in counterclockwise order, and\n"); - printf( -" the fourth, fifth, and sixth nodes lie on the midpoints of the edges\n"); - printf( -" opposite the first, second, and third vertices, respectively.\n"); - printf("\n"); - printf(" .poly files:\n"); - printf( -" First line: <# of vertices> <# of attributes>\n" -); - printf( -" <# of boundary markers (0 or 1)>\n" -); - printf( -" Following lines: [attributes] [boundary marker]\n"); - printf(" One line: <# of segments> <# of boundary markers (0 or 1)>\n"); - printf( -" Following lines: [boundary marker]\n"); - printf(" One line: <# of holes>\n"); - printf(" Following lines: \n"); - printf( -" Optional line: <# of regional attributes and/or area constraints>\n"); - printf( -" Optional following lines: \n"); - printf("\n"); - printf( -" A .poly file represents a PSLG, as well as some additional information.\n" -); - printf( -" The first section lists all the vertices, and is identical to the\n"); - printf( -" format of .node files. <# of vertices> may be set to zero to indicate\n" -); - printf( -" that the vertices are listed in a separate .node file; .poly files\n"); - printf( -" produced by Triangle always have this format. A vertex set represented\n" -); - printf( -" this way has the advantage that it may easily be triangulated with or\n"); - printf( -" without segments (depending on whether the .poly or .node file is\n"); - printf(" read).\n\n"); - printf( -" The second section lists the segments. Segments are edges whose\n"); - printf( -" presence in the triangulation is enforced (although each segment may be\n" -); - printf( -" subdivided into smaller edges). Each segment is specified by listing\n"); - printf( -" the indices of its two endpoints. This means that you must include its\n" -); - printf( -" endpoints in the vertex list. Each segment, like each point, may have\n" -); - printf(" a boundary marker.\n\n"); - printf( -" If -q, -a, -u, and -s are not selected, Triangle produces a constrained\n" -); - printf( -" Delaunay triangulation (CDT), in which each segment appears as a single\n" -); - printf( -" edge in the triangulation. If -q, -a, -u, or -s is selected, Triangle\n" -); - printf( -" produces a conforming constrained Delaunay triangulation (CCDT), in\n"); - printf( -" which segments may be subdivided into smaller edges. If -L is selected\n" -); - printf( -" as well, Triangle produces a conforming Delaunay triangulation, so\n"); - printf( -" every triangle is Delaunay, and not just constrained Delaunay.\n"); - printf("\n"); - printf( -" The third section lists holes (and concavities, if -c is selected) in\n"); - printf( -" the triangulation. Holes are specified by identifying a point inside\n"); - printf( -" each hole. After the triangulation is formed, Triangle creates holes\n"); - printf( -" by eating triangles, spreading out from each hole point until its\n"); - printf( -" progress is blocked by PSLG segments; you must be careful to enclose\n"); - printf( -" each hole in segments, or your whole triangulation might be eaten away.\n" -); - printf( -" If the two triangles abutting a segment are eaten, the segment itself\n"); - printf( -" is also eaten. Do not place a hole directly on a segment; if you do,\n"); - printf(" Triangle chooses one side of the segment arbitrarily.\n\n"); - printf( -" The optional fourth section lists regional attributes (to be assigned\n"); - printf( -" to all triangles in a region) and regional constraints on the maximum\n"); - printf( -" triangle area. Triangle reads this section only if the -A switch is\n"); - printf( -" used or the -a switch is used without a number following it, and the -r\n" -); - printf( -" switch is not used. Regional attributes and area constraints are\n"); - printf( -" propagated in the same manner as holes; you specify a point for each\n"); - printf( -" attribute and/or constraint, and the attribute and/or constraint\n"); - printf( -" affects the whole region (bounded by segments) containing the point.\n"); - printf( -" If two values are written on a line after the x and y coordinate, the\n"); - printf( -" first such value is assumed to be a regional attribute (but is only\n"); - printf( -" applied if the -A switch is selected), and the second value is assumed\n" -); - printf( -" to be a regional area constraint (but is only applied if the -a switch\n" -); - printf( -" is selected). You may specify just one value after the coordinates,\n"); - printf( -" which can serve as both an attribute and an area constraint, depending\n" -); - printf( -" on the choice of switches. If you are using the -A and -a switches\n"); - printf( -" simultaneously and wish to assign an attribute to some region without\n"); - printf(" imposing an area constraint, use a negative maximum area.\n\n"); - printf( -" When a triangulation is created from a .poly file, you must either\n"); - printf( -" enclose the entire region to be triangulated in PSLG segments, or\n"); - printf( -" use the -c switch, which encloses the convex hull of the input vertex\n"); - printf( -" set. If you do not use the -c switch, Triangle eats all triangles that\n" -); - printf( -" are not enclosed by segments; if you are not careful, your whole\n"); - printf( -" triangulation may be eaten away. If you do use the -c switch, you can\n" -); - printf( -" still produce concavities by the appropriate placement of holes just\n"); - printf(" within the convex hull.\n\n"); - printf( -" An ideal PSLG has no intersecting segments, nor any vertices that lie\n"); - printf( -" upon segments (except, of course, the endpoints of each segment.) You\n" -); - printf( -" aren't required to make your .poly files ideal, but you should be aware\n" -); - printf( -" of what can go wrong. Segment intersections are relatively safe--\n"); - printf( -" Triangle calculates the intersection points for you and adds them to\n"); - printf( -" the triangulation--as long as your machine's floating-point precision\n"); - printf( -" doesn't become a problem. You are tempting the fates if you have three\n" -); - printf( -" segments that cross at the same location, and expect Triangle to figure\n" -); - printf( -" out where the intersection point is. Thanks to floating-point roundoff\n" -); - printf( -" error, Triangle will probably decide that the three segments intersect\n" -); - printf( -" at three different points, and you will find a minuscule triangle in\n"); - printf( -" your output--unless Triangle tries to refine the tiny triangle, uses\n"); - printf( -" up the last bit of machine precision, and fails to terminate at all.\n"); - printf( -" You're better off putting the intersection point in the input files,\n"); - printf( -" and manually breaking up each segment into two. Similarly, if you\n"); - printf( -" place a vertex at the middle of a segment, and hope that Triangle will\n" -); - printf( -" break up the segment at that vertex, you might get lucky. On the other\n" -); - printf( -" hand, Triangle might decide that the vertex doesn't lie precisely on\n"); - printf( -" the segment, and you'll have a needle-sharp triangle in your output--or\n" -); - printf(" a lot of tiny triangles if you're generating a quality mesh.\n"); - printf("\n"); - printf( -" When Triangle reads a .poly file, it also writes a .poly file, which\n"); - printf( -" includes all edges that are parts of input segments. If the -c switch\n" -); - printf( -" is used, the output .poly file also includes all of the edges on the\n"); - printf( -" convex hull. Hence, the output .poly file is useful for finding edges\n" -); - printf( -" associated with input segments and for setting boundary conditions in\n"); - printf( -" finite element simulations. Moreover, you will need it if you plan to\n" -); - printf( -" refine the output mesh, and don't want segments to be missing in later\n" -); - printf(" triangulations.\n\n"); - printf(" .area files:\n"); - printf(" First line: <# of triangles>\n"); - printf(" Following lines: \n\n"); - printf( -" An .area file associates with each triangle a maximum area that is used\n" -); - printf( -" for mesh refinement. As with other file formats, every triangle must\n"); - printf( -" be represented, and they must be numbered consecutively. A triangle\n"); - printf( -" may be left unconstrained by assigning it a negative maximum area.\n"); - printf("\n"); - printf(" .edge files:\n"); - printf(" First line: <# of edges> <# of boundary markers (0 or 1)>\n"); - printf( -" Following lines: [boundary marker]\n"); - printf("\n"); - printf( -" Endpoints are indices into the corresponding .node file. Triangle can\n" -); - printf( -" produce .edge files (use the -e switch), but cannot read them. The\n"); - printf( -" optional column of boundary markers is suppressed by the -B switch.\n"); - printf("\n"); - printf( -" In Voronoi diagrams, one also finds a special kind of edge that is an\n"); - printf( -" infinite ray with only one endpoint. For these edges, a different\n"); - printf(" format is used:\n\n"); - printf(" -1 \n\n"); - printf( -" The `direction' is a floating-point vector that indicates the direction\n" -); - printf(" of the infinite ray.\n\n"); - printf(" .neigh files:\n"); - printf( -" First line: <# of triangles> <# of neighbors per triangle (always 3)>\n" -); - printf( -" Following lines: \n"); - printf("\n"); - printf( -" Neighbors are indices into the corresponding .ele file. An index of -1\n" -); - printf( -" indicates no neighbor (because the triangle is on an exterior\n"); - printf( -" boundary). The first neighbor of triangle i is opposite the first\n"); - printf(" corner of triangle i, and so on.\n\n"); - printf( -" Triangle can produce .neigh files (use the -n switch), but cannot read\n" -); - printf(" them.\n\n"); - printf("Boundary Markers:\n\n"); - printf( -" Boundary markers are tags used mainly to identify which output vertices\n"); - printf( -" and edges are associated with which PSLG segment, and to identify which\n"); - printf( -" vertices and edges occur on a boundary of the triangulation. A common\n"); - printf( -" use is to determine where boundary conditions should be applied to a\n"); - printf( -" finite element mesh. You can prevent boundary markers from being written\n" -); - printf(" into files produced by Triangle by using the -B switch.\n\n"); - printf( -" The boundary marker associated with each segment in an output .poly file\n" -); - printf(" and each edge in an output .edge file is chosen as follows:\n"); - printf( -" - If an output edge is part or all of a PSLG segment with a nonzero\n"); - printf( -" boundary marker, then the edge is assigned the same marker.\n"); - printf( -" - Otherwise, if the edge occurs on a boundary of the triangulation\n"); - printf( -" (including boundaries of holes), then the edge is assigned the marker\n" -); - printf(" one (1).\n"); - printf(" - Otherwise, the edge is assigned the marker zero (0).\n"); - printf( -" The boundary marker associated with each vertex in an output .node file\n"); - printf(" is chosen as follows:\n"); - printf( -" - If a vertex is assigned a nonzero boundary marker in the input file,\n" -); - printf( -" then it is assigned the same marker in the output .node file.\n"); - printf( -" - Otherwise, if the vertex lies on a PSLG segment (including the\n"); - printf( -" segment's endpoints) with a nonzero boundary marker, then the vertex\n" -); - printf( -" is assigned the same marker. If the vertex lies on several such\n"); - printf(" segments, one of the markers is chosen arbitrarily.\n"); - printf( -" - Otherwise, if the vertex occurs on a boundary of the triangulation,\n"); - printf(" then the vertex is assigned the marker one (1).\n"); - printf(" - Otherwise, the vertex is assigned the marker zero (0).\n"); - printf("\n"); - printf( -" If you want Triangle to determine for you which vertices and edges are on\n" -); - printf( -" the boundary, assign them the boundary marker zero (or use no markers at\n" -); - printf( -" all) in your input files. In the output files, all boundary vertices,\n"); - printf(" edges, and segments are assigned the value one.\n\n"); - printf("Triangulation Iteration Numbers:\n\n"); - printf( -" Because Triangle can read and refine its own triangulations, input\n"); - printf( -" and output files have iteration numbers. For instance, Triangle might\n"); - printf( -" read the files mesh.3.node, mesh.3.ele, and mesh.3.poly, refine the\n"); - printf( -" triangulation, and output the files mesh.4.node, mesh.4.ele, and\n"); - printf(" mesh.4.poly. Files with no iteration number are treated as if\n"); - printf( -" their iteration number is zero; hence, Triangle might read the file\n"); - printf( -" points.node, triangulate it, and produce the files points.1.node and\n"); - printf(" points.1.ele.\n\n"); - printf( -" Iteration numbers allow you to create a sequence of successively finer\n"); - printf( -" meshes suitable for multigrid methods. They also allow you to produce a\n" -); - printf( -" sequence of meshes using error estimate-driven mesh refinement.\n"); - printf("\n"); - printf( -" If you're not using refinement or quality meshing, and you don't like\n"); - printf( -" iteration numbers, use the -I switch to disable them. This switch also\n"); - printf( -" disables output of .node and .poly files to prevent your input files from\n" -); - printf( -" being overwritten. (If the input is a .poly file that contains its own\n"); - printf(" points, a .node file is written.)\n\n"); - printf("Examples of How to Use Triangle:\n\n"); - printf( -" `triangle dots' reads vertices from dots.node, and writes their Delaunay\n" -); - printf( -" triangulation to dots.1.node and dots.1.ele. (dots.1.node is identical\n"); - printf( -" to dots.node.) `triangle -I dots' writes the triangulation to dots.ele\n"); - printf( -" instead. (No additional .node file is needed, so none is written.)\n"); - printf("\n"); - printf( -" `triangle -pe object.1' reads a PSLG from object.1.poly (and possibly\n"); - printf( -" object.1.node, if the vertices are omitted from object.1.poly) and writes\n" -); - printf( -" its constrained Delaunay triangulation to object.2.node and object.2.ele.\n" -); - printf( -" The segments are copied to object.2.poly, and all edges are written to\n"); - printf(" object.2.edge.\n\n"); - printf( -" `triangle -pq31.5a.1 object' reads a PSLG from object.poly (and possibly\n" -); - printf( -" object.node), generates a mesh whose angles are all 31.5 degrees or\n"); - printf( -" greater and whose triangles all have areas of 0.1 or less, and writes the\n" -); - printf( -" mesh to object.1.node and object.1.ele. Each segment may be broken up\n"); - printf(" into multiple subsegments; these are written to object.1.poly.\n"); - printf("\n"); - printf( -" Here is a sample file `box.poly' describing a square with a square hole:\n" -); - printf("\n"); - printf( -" # A box with eight vertices in 2D, no attributes, one boundary marker.\n" -); - printf(" 8 2 0 1\n"); - printf(" # Outer box has these vertices:\n"); - printf(" 1 0 0 0\n"); - printf(" 2 0 3 0\n"); - printf(" 3 3 0 0\n"); - printf(" 4 3 3 33 # A special marker for this vertex.\n"); - printf(" # Inner square has these vertices:\n"); - printf(" 5 1 1 0\n"); - printf(" 6 1 2 0\n"); - printf(" 7 2 1 0\n"); - printf(" 8 2 2 0\n"); - printf(" # Five segments with boundary markers.\n"); - printf(" 5 1\n"); - printf(" 1 1 2 5 # Left side of outer box.\n"); - printf(" # Square hole has these segments:\n"); - printf(" 2 5 7 0\n"); - printf(" 3 7 8 0\n"); - printf(" 4 8 6 10\n"); - printf(" 5 6 5 0\n"); - printf(" # One hole in the middle of the inner square.\n"); - printf(" 1\n"); - printf(" 1 1.5 1.5\n"); - printf("\n"); - printf( -" Note that some segments are missing from the outer square, so one must\n"); - printf( -" use the `-c' switch. After `triangle -pqc box.poly', here is the output\n" -); - printf( -" file `box.1.node', with twelve vertices. The last four vertices were\n"); - printf( -" added to meet the angle constraint. Vertices 1, 2, and 9 have markers\n"); - printf( -" from segment 1. Vertices 6 and 8 have markers from segment 4. All the\n"); - printf( -" other vertices but 4 have been marked to indicate that they lie on a\n"); - printf(" boundary.\n\n"); - printf(" 12 2 0 1\n"); - printf(" 1 0 0 5\n"); - printf(" 2 0 3 5\n"); - printf(" 3 3 0 1\n"); - printf(" 4 3 3 33\n"); - printf(" 5 1 1 1\n"); - printf(" 6 1 2 10\n"); - printf(" 7 2 1 1\n"); - printf(" 8 2 2 10\n"); - printf(" 9 0 1.5 5\n"); - printf(" 10 1.5 0 1\n"); - printf(" 11 3 1.5 1\n"); - printf(" 12 1.5 3 1\n"); - printf(" # Generated by triangle -pqc box.poly\n"); - printf("\n"); - printf(" Here is the output file `box.1.ele', with twelve triangles.\n"); - printf("\n"); - printf(" 12 3 0\n"); - printf(" 1 5 6 9\n"); - printf(" 2 10 3 7\n"); - printf(" 3 6 8 12\n"); - printf(" 4 9 1 5\n"); - printf(" 5 6 2 9\n"); - printf(" 6 7 3 11\n"); - printf(" 7 11 4 8\n"); - printf(" 8 7 5 10\n"); - printf(" 9 12 2 6\n"); - printf(" 10 8 7 11\n"); - printf(" 11 5 1 10\n"); - printf(" 12 8 4 12\n"); - printf(" # Generated by triangle -pqc box.poly\n\n"); - printf( -" Here is the output file `box.1.poly'. Note that segments have been added\n" -); - printf( -" to represent the convex hull, and some segments have been split by newly\n" -); - printf( -" added vertices. Note also that <# of vertices> is set to zero to\n"); - printf(" indicate that the vertices should be read from the .node file.\n"); - printf("\n"); - printf(" 0 2 0 1\n"); - printf(" 12 1\n"); - printf(" 1 1 9 5\n"); - printf(" 2 5 7 1\n"); - printf(" 3 8 7 1\n"); - printf(" 4 6 8 10\n"); - printf(" 5 5 6 1\n"); - printf(" 6 3 10 1\n"); - printf(" 7 4 11 1\n"); - printf(" 8 2 12 1\n"); - printf(" 9 9 2 5\n"); - printf(" 10 10 1 1\n"); - printf(" 11 11 3 1\n"); - printf(" 12 12 4 1\n"); - printf(" 1\n"); - printf(" 1 1.5 1.5\n"); - printf(" # Generated by triangle -pqc box.poly\n"); - printf("\n"); - printf("Refinement and Area Constraints:\n"); - printf("\n"); - printf( -" The -r switch causes a mesh (.node and .ele files) to be read and\n"); - printf( -" refined. If the -p switch is also used, a .poly file is read and used to\n" -); - printf( -" specify edges that are constrained and cannot be eliminated (although\n"); - printf( -" they can be divided into smaller edges) by the refinement process.\n"); - printf("\n"); - printf( -" When you refine a mesh, you generally want to impose tighter quality\n"); - printf( -" constraints. One way to accomplish this is to use -q with a larger\n"); - printf( -" angle, or -a followed by a smaller area than you used to generate the\n"); - printf( -" mesh you are refining. Another way to do this is to create an .area\n"); - printf( -" file, which specifies a maximum area for each triangle, and use the -a\n"); - printf( -" switch (without a number following). Each triangle's area constraint is\n" -); - printf( -" applied to that triangle. Area constraints tend to diffuse as the mesh\n"); - printf( -" is refined, so if there are large variations in area constraint between\n"); - printf(" adjacent triangles, you may not get the results you want.\n\n"); - printf( -" If you are refining a mesh composed of linear (three-node) elements, the\n" -); - printf( -" output mesh contains all the nodes present in the input mesh, in the same\n" -); - printf( -" order, with new nodes added at the end of the .node file. However, the\n"); - printf( -" refinement is not hierarchical: there is no guarantee that each output\n"); - printf( -" element is contained in a single input element. Often, output elements\n"); - printf( -" overlap two input elements, and some input edges are not present in the\n"); - printf( -" output mesh. Hence, a sequence of refined meshes forms a hierarchy of\n"); - printf( -" nodes, but not a hierarchy of elements. If you refine a mesh of higher-\n" -); - printf( -" order elements, the hierarchical property applies only to the nodes at\n"); - printf( -" the corners of an element; other nodes may not be present in the refined\n" -); - printf(" mesh.\n\n"); - printf( -" Maximum area constraints in .poly files operate differently from those in\n" -); - printf( -" .area files. A maximum area in a .poly file applies to the whole\n"); - printf( -" (segment-bounded) region in which a point falls, whereas a maximum area\n"); - printf( -" in an .area file applies to only one triangle. Area constraints in .poly\n" -); - printf( -" files are used only when a mesh is first generated, whereas area\n"); - printf( -" constraints in .area files are used only to refine an existing mesh, and\n" -); - printf( -" are typically based on a posteriori error estimates resulting from a\n"); - printf(" finite element simulation on that mesh.\n\n"); - printf( -" `triangle -rq25 object.1' reads object.1.node and object.1.ele, then\n"); - printf( -" refines the triangulation to enforce a 25 degree minimum angle, and then\n" -); - printf( -" writes the refined triangulation to object.2.node and object.2.ele.\n"); - printf("\n"); - printf( -" `triangle -rpaa6.2 z.3' reads z.3.node, z.3.ele, z.3.poly, and z.3.area.\n" -); - printf( -" After reconstructing the mesh and its subsegments, Triangle refines the\n"); - printf( -" mesh so that no triangle has area greater than 6.2, and furthermore the\n"); - printf( -" triangles satisfy the maximum area constraints in z.3.area. No angle\n"); - printf( -" bound is imposed at all. The output is written to z.4.node, z.4.ele, and\n" -); - printf(" z.4.poly.\n\n"); - printf( -" The sequence `triangle -qa1 x', `triangle -rqa.3 x.1', `triangle -rqa.1\n"); - printf( -" x.2' creates a sequence of successively finer meshes x.1, x.2, and x.3,\n"); - printf(" suitable for multigrid.\n\n"); - printf("Convex Hulls and Mesh Boundaries:\n\n"); - printf( -" If the input is a vertex set (rather than a PSLG), Triangle produces its\n" -); - printf( -" convex hull as a by-product in the output .poly file if you use the -c\n"); - printf( -" switch. There are faster algorithms for finding a two-dimensional convex\n" -); - printf( -" hull than triangulation, of course, but this one comes for free.\n"); - printf("\n"); - printf( -" If the input is an unconstrained mesh (you are using the -r switch but\n"); - printf( -" not the -p switch), Triangle produces a list of its boundary edges\n"); - printf( -" (including hole boundaries) as a by-product when you use the -c switch.\n"); - printf( -" If you also use the -p switch, the output .poly file contains all the\n"); - printf(" segments from the input .poly file as well.\n\n"); - printf("Voronoi Diagrams:\n\n"); - printf( -" The -v switch produces a Voronoi diagram, in files suffixed .v.node and\n"); - printf( -" .v.edge. For example, `triangle -v points' reads points.node, produces\n"); - printf( -" its Delaunay triangulation in points.1.node and points.1.ele, and\n"); - printf( -" produces its Voronoi diagram in points.1.v.node and points.1.v.edge. The\n" -); - printf( -" .v.node file contains a list of all Voronoi vertices, and the .v.edge\n"); - printf( -" file contains a list of all Voronoi edges, some of which may be infinite\n" -); - printf( -" rays. (The choice of filenames makes it easy to run the set of Voronoi\n"); - printf(" vertices through Triangle, if so desired.)\n\n"); - printf( -" This implementation does not use exact arithmetic to compute the Voronoi\n" -); - printf( -" vertices, and does not check whether neighboring vertices are identical.\n" -); - printf( -" Be forewarned that if the Delaunay triangulation is degenerate or\n"); - printf( -" near-degenerate, the Voronoi diagram may have duplicate vertices,\n"); - printf( -" crossing edges, or infinite rays whose direction vector is zero.\n"); - printf("\n"); - printf( -" The result is a valid Voronoi diagram only if Triangle's output is a true\n" -); - printf( -" Delaunay triangulation. The Voronoi output is usually meaningless (and\n"); - printf( -" may contain crossing edges and other pathology) if the output is a CDT or\n" -); - printf( -" CCDT, or if it has holes or concavities. If the triangulation is convex\n" -); - printf( -" and has no holes, this can be fixed by using the -L switch to ensure a\n"); - printf(" conforming Delaunay triangulation is constructed.\n\n"); - printf("Mesh Topology:\n\n"); - printf( -" You may wish to know which triangles are adjacent to a certain Delaunay\n"); - printf( -" edge in an .edge file, which Voronoi regions are adjacent to a certain\n"); - printf( -" Voronoi edge in a .v.edge file, or which Voronoi regions are adjacent to\n" -); - printf( -" each other. All of this information can be found by cross-referencing\n"); - printf( -" output files with the recollection that the Delaunay triangulation and\n"); - printf(" the Voronoi diagram are planar duals.\n\n"); - printf( -" Specifically, edge i of an .edge file is the dual of Voronoi edge i of\n"); - printf( -" the corresponding .v.edge file, and is rotated 90 degrees counterclock-\n"); - printf( -" wise from the Voronoi edge. Triangle j of an .ele file is the dual of\n"); - printf( -" vertex j of the corresponding .v.node file. Voronoi region k is the dual\n" -); - printf(" of vertex k of the corresponding .node file.\n\n"); - printf( -" Hence, to find the triangles adjacent to a Delaunay edge, look at the\n"); - printf( -" vertices of the corresponding Voronoi edge. If the endpoints of a\n"); - printf( -" Voronoi edge are Voronoi vertices 2 and 6 respectively, then triangles 2\n" -); - printf( -" and 6 adjoin the left and right sides of the corresponding Delaunay edge,\n" -); - printf( -" respectively. To find the Voronoi regions adjacent to a Voronoi edge,\n"); - printf( -" look at the endpoints of the corresponding Delaunay edge. If the\n"); - printf( -" endpoints of a Delaunay edge are input vertices 7 and 12, then Voronoi\n"); - printf( -" regions 7 and 12 adjoin the right and left sides of the corresponding\n"); - printf( -" Voronoi edge, respectively. To find which Voronoi regions are adjacent\n"); - printf(" to each other, just read the list of Delaunay edges.\n\n"); - printf( -" Triangle does not write a list of Voronoi regions, but one can be\n"); - printf( -" reconstructed straightforwardly. For instance, to find all the edges of\n" -); - printf( -" Voronoi region 1, search the output .edge file for every edge that has\n"); - printf( -" input vertex 1 as an endpoint. The corresponding dual edges in the\n"); - printf(" output .v.edge file form the boundary of Voronoi region 1.\n\n"); - printf("Quadratic Elements:\n\n"); - printf( -" Triangle generates meshes with subparametric quadratic elements if the\n"); - printf( -" -o2 switch is specified. Quadratic elements have six nodes per element,\n" -); - printf( -" rather than three. `Subparametric' means that the edges of the triangles\n" -); - printf( -" are always straight, so that subparametric quadratic elements are\n"); - printf( -" geometrically identical to linear elements, even though they can be used\n" -); - printf( -" with quadratic interpolating functions. The three extra nodes of an\n"); - printf( -" element fall at the midpoints of the three edges, with the fourth, fifth,\n" -); - printf( -" and sixth nodes appearing opposite the first, second, and third corners\n"); - printf(" respectively.\n\n"); - printf("Statistics:\n\n"); - printf( -" After generating a mesh, Triangle prints a count of the number of\n"); - printf( -" vertices, triangles, edges, exterior boundary edges (including hole\n"); - printf( -" boundaries), interior boundary edges, and segments in the output mesh.\n"); - printf( -" If you've forgotten the statistics for an existing mesh, run Triangle on\n" -); - printf( -" that mesh with the -rNEP switches to read the mesh and print the\n"); - printf( -" statistics without writing any files. Use -rpNEP if you've got a .poly\n"); - printf(" file for the mesh.\n\n"); - printf( -" The -V switch produces extended statistics, including a rough estimate\n"); - printf( -" of memory use, the number of calls to geometric predicates, and\n"); - printf(" histograms of triangle aspect ratios and angles in the mesh.\n\n"); - printf("Exact Arithmetic:\n\n"); - printf( -" Triangle uses adaptive exact arithmetic to perform what computational\n"); - printf( -" geometers call the `orientation' and `incircle' tests. If the floating-\n" -); - printf( -" point arithmetic of your machine conforms to the IEEE 754 standard (as\n"); - printf( -" most workstations do), and does not use extended precision internal\n"); - printf( -" floating-point registers, then your output is guaranteed to be an\n"); - printf( -" absolutely true Delaunay or constrained Delaunay triangulation, roundoff\n" -); - printf( -" error notwithstanding. The word `adaptive' implies that these arithmetic\n" -); - printf( -" routines compute the result only to the precision necessary to guarantee\n" -); - printf( -" correctness, so they are usually nearly as fast as their approximate\n"); - printf(" counterparts.\n\n"); - printf( -" Pentiums have extended precision floating-point registers. These must be\n" -); - printf( -" reconfigured so their precision is reduced to memory precision. Triangle\n" -); - printf( -" does this if it is compiled correctly. See the makefile for details.\n"); - printf("\n"); - printf( -" The exact tests can be disabled with the -X switch. On most inputs, this\n" -); - printf( -" switch reduces the computation time by about eight percent--it's not\n"); - printf( -" worth the risk. There are rare difficult inputs (having many collinear\n"); - printf( -" and cocircular vertices), however, for which the difference in speed\n"); - printf( -" could be a factor of two. Be forewarned that these are precisely the\n"); - printf( -" inputs most likely to cause errors if you use the -X switch. Hence, the\n" -); - printf(" -X switch is not recommended.\n\n"); - printf( -" Unfortunately, the exact tests don't solve every numerical problem.\n"); - printf( -" Exact arithmetic is not used to compute the positions of new vertices,\n"); - printf( -" because the bit complexity of vertex coordinates would grow without\n"); - printf( -" bound. Hence, segment intersections aren't computed exactly; in very\n"); - printf( -" unusual cases, roundoff error in computing an intersection point might\n"); - printf( -" actually lead to an inverted triangle and an invalid triangulation.\n"); - printf( -" (This is one reason to compute your own intersection points in your .poly\n" -); - printf( -" files.) Similarly, exact arithmetic is not used to compute the vertices\n" -); - printf(" of the Voronoi diagram.\n\n"); - printf( -" Another pair of problems not solved by the exact arithmetic routines is\n"); - printf( -" underflow and overflow. If Triangle is compiled for double precision\n"); - printf( -" arithmetic, I believe that Triangle's geometric predicates work correctly\n" -); - printf( -" if the exponent of every input coordinate falls in the range [-148, 201].\n" -); - printf( -" Underflow can silently prevent the orientation and incircle tests from\n"); - printf( -" being performed exactly, while overflow typically causes a floating\n"); - printf(" exception.\n\n"); - printf("Calling Triangle from Another Program:\n\n"); - printf(" Read the file triangle.h for details.\n\n"); - printf("Troubleshooting:\n\n"); - printf(" Please read this section before mailing me bugs.\n\n"); - printf(" `My output mesh has no triangles!'\n\n"); - printf( -" If you're using a PSLG, you've probably failed to specify a proper set\n" -); - printf( -" of bounding segments, or forgotten to use the -c switch. Or you may\n"); - printf( -" have placed a hole badly, thereby eating all your triangles. To test\n"); - printf(" these possibilities, try again with the -c and -O switches.\n"); - printf( -" Alternatively, all your input vertices may be collinear, in which case\n" -); - printf(" you can hardly expect to triangulate them.\n\n"); - printf(" `Triangle doesn't terminate, or just crashes.'\n\n"); - printf( -" Bad things can happen when triangles get so small that the distance\n"); - printf( -" between their vertices isn't much larger than the precision of your\n"); - printf( -" machine's arithmetic. If you've compiled Triangle for single-precision\n" -); - printf( -" arithmetic, you might do better by recompiling it for double-precision.\n" -); - printf( -" Then again, you might just have to settle for more lenient constraints\n" -); - printf( -" on the minimum angle and the maximum area than you had planned.\n"); - printf("\n"); - printf( -" You can minimize precision problems by ensuring that the origin lies\n"); - printf( -" inside your vertex set, or even inside the densest part of your\n"); - printf( -" mesh. If you're triangulating an object whose x coordinates all fall\n"); - printf( -" between 6247133 and 6247134, you're not leaving much floating-point\n"); - printf(" precision for Triangle to work with.\n\n"); - printf( -" Precision problems can occur covertly if the input PSLG contains two\n"); - printf( -" segments that meet (or intersect) at an extremely small angle, or if\n"); - printf( -" such an angle is introduced by the -c switch. If you don't realize\n"); - printf( -" that a tiny angle is being formed, you might never discover why\n"); - printf( -" Triangle is crashing. To check for this possibility, use the -S switch\n" -); - printf( -" (with an appropriate limit on the number of Steiner points, found by\n"); - printf( -" trial-and-error) to stop Triangle early, and view the output .poly file\n" -); - printf( -" with Show Me (described below). Look carefully for regions where dense\n" -); - printf( -" clusters of vertices are forming and for small angles between segments.\n" -); - printf( -" Zoom in closely, as such segments might look like a single segment from\n" -); - printf(" a distance.\n\n"); - printf( -" If some of the input values are too large, Triangle may suffer a\n"); - printf( -" floating exception due to overflow when attempting to perform an\n"); - printf( -" orientation or incircle test. (Read the section on exact arithmetic\n"); - printf( -" above.) Again, I recommend compiling Triangle for double (rather\n"); - printf(" than single) precision arithmetic.\n\n"); - printf( -" Unexpected problems can arise if you use quality meshing (-q, -a, or\n"); - printf( -" -u) with an input that is not segment-bounded--that is, if your input\n"); - printf( -" is a vertex set, or you're using the -c switch. If the convex hull of\n" -); - printf( -" your input vertices has collinear vertices on its boundary, an input\n"); - printf( -" vertex that you think lies on the convex hull might actually lie just\n"); - printf( -" inside the convex hull. If so, an extremely thin triangle is formed by\n" -); - printf( -" the vertex and the convex hull edge beside it. When Triangle tries to\n" -); - printf( -" refine the mesh to enforce angle and area constraints, extremely tiny\n"); - printf( -" triangles may be formed, or Triangle may fail because of insufficient\n"); - printf(" floating-point precision.\n\n"); - printf( -" `The numbering of the output vertices doesn't match the input vertices.'\n" -); - printf("\n"); - printf( -" You may have had duplicate input vertices, or you may have eaten some\n"); - printf( -" of your input vertices with a hole, or by placing them outside the area\n" -); - printf( -" enclosed by segments. In any case, you can solve the problem by not\n"); - printf(" using the -j switch.\n\n"); - printf( -" `Triangle executes without incident, but when I look at the resulting\n"); - printf( -" mesh, it has overlapping triangles or other geometric inconsistencies.'\n"); - printf("\n"); - printf( -" If you select the -X switch, Triangle occasionally makes mistakes due\n"); - printf( -" to floating-point roundoff error. Although these errors are rare,\n"); - printf( -" don't use the -X switch. If you still have problems, please report the\n" -); - printf(" bug.\n\n"); - printf( -" Strange things can happen if you've taken liberties with your PSLG. Do\n"); - printf( -" you have a vertex lying in the middle of a segment? Triangle sometimes\n"); - printf( -" copes poorly with that sort of thing. Do you want to lay out a collinear\n" -); - printf( -" row of evenly spaced, segment-connected vertices? Have you simply\n"); - printf( -" defined one long segment connecting the leftmost vertex to the rightmost\n" -); - printf( -" vertex, and a bunch of vertices lying along it? This method occasionally\n" -); - printf( -" works, especially with horizontal and vertical lines, but often it\n"); - printf( -" doesn't, and you'll have to connect each adjacent pair of vertices with a\n" -); - printf(" separate segment. If you don't like it, tough.\n\n"); - printf( -" Furthermore, if you have segments that intersect other than at their\n"); - printf( -" endpoints, try not to let the intersections fall extremely close to PSLG\n" -); - printf(" vertices or each other.\n\n"); - printf( -" If you have problems refining a triangulation not produced by Triangle:\n"); - printf( -" Are you sure the triangulation is geometrically valid? Is it formatted\n"); - printf( -" correctly for Triangle? Are the triangles all listed so the first three\n" -); - printf( -" vertices are their corners in counterclockwise order? Are all of the\n"); - printf( -" triangles constrained Delaunay? Triangle's Delaunay refinement algorithm\n" -); - printf(" assumes that it starts with a CDT.\n\n"); - printf("Show Me:\n\n"); - printf( -" Triangle comes with a separate program named `Show Me', whose primary\n"); - printf( -" purpose is to draw meshes on your screen or in PostScript. Its secondary\n" -); - printf( -" purpose is to check the validity of your input files, and do so more\n"); - printf( -" thoroughly than Triangle does. Unlike Triangle, Show Me requires that\n"); - printf(" you have the X Windows system.\n\n"); - printf("Triangle on the Web:\n\n"); - printf( -" To see an illustrated, updated version of these instructions, check out\n"); - printf("\n"); - printf(" http://www.cs.cmu.edu/~quake/triangle.html\n"); - printf("\n"); - printf("A Brief Plea:\n"); - printf("\n"); - printf( -" If you use Triangle, and especially if you use it to accomplish real\n"); - printf( -" work, I would like very much to hear from you. A short letter or email\n"); - printf( -" (to jrs@cs.berkeley.edu) describing how you use Triangle will mean a lot\n" -); - printf( -" to me. The more people I know are using this program, the more easily I\n" -); - printf( -" can justify spending time on improvements, which in turn will benefit\n"); - printf( -" you. Also, I can put you on a list to receive email whenever a new\n"); - printf(" version of Triangle is available.\n\n"); - printf( -" If you use a mesh generated by Triangle in a publication, please include\n" -); - printf(" an acknowledgment as well.\n\n"); - printf("Research credit:\n\n"); - printf( -" Of course, I can take credit for only a fraction of the ideas that made\n"); - printf( -" this mesh generator possible. Triangle owes its existence to the efforts\n" -); - printf( -" of many fine computational geometers and other researchers, including\n"); - printf( -" Marshall Bern, L. Paul Chew, Boris Delaunay, Rex A. Dwyer, David\n"); - printf( -" Eppstein, Steven Fortune, Leonidas J. Guibas, Donald E. Knuth, C. L.\n"); - printf( -" Lawson, Der-Tsai Lee, Ernst P. Mucke, Douglas M. Priest, Jim Ruppert,\n"); - printf( -" Isaac Saias, Bruce J. Schachter, Micha Sharir, Daniel D. Sleator, Jorge\n"); - printf( -" Stolfi, Robert E. Tarjan, Christopher J. Van Wyk, and Binhai Zhu. See\n"); - printf( -" the comments at the beginning of the source code for references.\n"); - exit(0); -} - -#endif /* not TRILIBRARY */ - -/*****************************************************************************/ -/* */ -/* internalerror() Ask the user to send me the defective product. Exit. */ -/* */ -/*****************************************************************************/ - -void internalerror() -{ - fflush(stdout); - fprintf(stderr, " Please report this bug to jrs@cs.berkeley.edu\n"); - fprintf(stderr, " Include the message above, your input data set, and the exact\n"); - fprintf(stderr, " command line you used to run Triangle.\n"); - exit(1); -} - -/*****************************************************************************/ -/* */ -/* parsecommandline() Read the command line, identify switches, and set */ -/* up options and file names. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void parsecommandline(int argc, char **argv, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -void parsecommandline(argc, argv, b) -int argc; -char **argv; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ -#ifdef TRILIBRARY -#define STARTINDEX 0 -#else /* not TRILIBRARY */ -#define STARTINDEX 1 - int increment; - int meshnumber; -#endif /* not TRILIBRARY */ - int i, j, k; - char workstring[FILENAMESIZE]; - - b->poly = b->refine = b->quality = 0; - b->vararea = b->fixedarea = b->usertest = 0; - b->regionattrib = b->convex = b->weighted = b->jettison = 0; - b->firstnumber = 1; - b->edgesout = b->voronoi = b->neighbors = b->geomview = 0; - b->nobound = b->nopolywritten = b->nonodewritten = b->noelewritten = 0; - b->noiterationnum = 0; - b->noholes = b->noexact = 0; - b->incremental = b->sweepline = 0; - b->dwyer = 1; - b->splitseg = 0; - b->docheck = 0; - b->nobisect = 0; - b->nolenses = 0; - b->steiner = -1; - b->order = 1; - b->minangle = 0.0; - b->maxarea = -1.0; - b->quiet = b->verbose = 0; -#ifndef TRILIBRARY - b->innodefilename[0] = '\0'; -#endif /* not TRILIBRARY */ - - for (i = STARTINDEX; i < argc; i++) { -#ifndef TRILIBRARY - if (argv[i][0] == '-') { -#endif /* not TRILIBRARY */ - for (j = STARTINDEX; argv[i][j] != '\0'; j++) { - if (argv[i][j] == 'p') { - b->poly = 1; - } -#ifndef CDT_ONLY - if (argv[i][j] == 'r') { - b->refine = 1; - } - if (argv[i][j] == 'q') { - b->quality = 1; - if (((argv[i][j + 1] >= '0') && (argv[i][j + 1] <= '9')) || - (argv[i][j + 1] == '.')) { - k = 0; - while (((argv[i][j + 1] >= '0') && (argv[i][j + 1] <= '9')) || - (argv[i][j + 1] == '.')) { - j++; - workstring[k] = argv[i][j]; - k++; - } - workstring[k] = '\0'; - b->minangle = (REAL) strtod(workstring, (char **) NULL); - } else { - b->minangle = 20.0; - } - } - if (argv[i][j] == 'a') { - b->quality = 1; - if (((argv[i][j + 1] >= '0') && (argv[i][j + 1] <= '9')) || - (argv[i][j + 1] == '.')) { - b->fixedarea = 1; - k = 0; - while (((argv[i][j + 1] >= '0') && (argv[i][j + 1] <= '9')) || - (argv[i][j + 1] == '.')) { - j++; - workstring[k] = argv[i][j]; - k++; - } - workstring[k] = '\0'; - b->maxarea = (REAL) strtod(workstring, (char **) NULL); - if (b->maxarea <= 0.0) { - fprintf(stderr, "Error: Maximum area must be greater than zero.\n"); - exit(1); - } - } else { - b->vararea = 1; - } - } - if (argv[i][j] == 'u') { - b->quality = 1; - b->usertest = 1; - } -#endif /* not CDT_ONLY */ - if (argv[i][j] == 'A') { - b->regionattrib = 1; - } - if (argv[i][j] == 'c') { - b->convex = 1; - } - if (argv[i][j] == 'w') { - b->weighted = 1; - } - if (argv[i][j] == 'W') { - b->weighted = 2; - } - if (argv[i][j] == 'j') { - b->jettison = 1; - } - if (argv[i][j] == 'z') { - b->firstnumber = 0; - } - if (argv[i][j] == 'e') { - b->edgesout = 1; - } - if (argv[i][j] == 'v') { - b->voronoi = 1; - } - if (argv[i][j] == 'n') { - b->neighbors = 1; - } - if (argv[i][j] == 'g') { - b->geomview = 1; - } - if (argv[i][j] == 'B') { - b->nobound = 1; - } - if (argv[i][j] == 'P') { - b->nopolywritten = 1; - } - if (argv[i][j] == 'N') { - b->nonodewritten = 1; - } - if (argv[i][j] == 'E') { - b->noelewritten = 1; - } -#ifndef TRILIBRARY - if (argv[i][j] == 'I') { - b->noiterationnum = 1; - } -#endif /* not TRILIBRARY */ - if (argv[i][j] == 'O') { - b->noholes = 1; - } - if (argv[i][j] == 'X') { - b->noexact = 1; - } - if (argv[i][j] == 'o') { - if (argv[i][j + 1] == '2') { - j++; - b->order = 2; - } - } -#ifndef CDT_ONLY - if (argv[i][j] == 'Y') { - b->nobisect++; - } - if (argv[i][j] == 'S') { - b->steiner = 0; - while ((argv[i][j + 1] >= '0') && (argv[i][j + 1] <= '9')) { - j++; - b->steiner = b->steiner * 10 + (int) (argv[i][j] - '0'); - } - } -#endif /* not CDT_ONLY */ -#ifndef REDUCED - if (argv[i][j] == 'i') { - b->incremental = 1; - } - if (argv[i][j] == 'F') { - b->sweepline = 1; - } -#endif /* not REDUCED */ - if (argv[i][j] == 'l') { - b->dwyer = 0; - } -#ifndef REDUCED -#ifndef CDT_ONLY - if (argv[i][j] == 's') { - b->splitseg = 1; - } - if (argv[i][j] == 'L') { - b->nolenses = 1; - } -#endif /* not CDT_ONLY */ - if (argv[i][j] == 'C') { - b->docheck = 1; - } -#endif /* not REDUCED */ - if (argv[i][j] == 'Q') { - b->quiet = 1; - } - if (argv[i][j] == 'V') { - b->verbose++; - } -#ifndef TRILIBRARY - if ((argv[i][j] == 'h') || (argv[i][j] == 'H') || - (argv[i][j] == '?')) { - info(); - } -#endif /* not TRILIBRARY */ - } -#ifndef TRILIBRARY - } else { - strncpy(b->innodefilename, argv[i], FILENAMESIZE - 1); - b->innodefilename[FILENAMESIZE - 1] = '\0'; - } -#endif /* not TRILIBRARY */ - } -#ifndef TRILIBRARY - if (b->innodefilename[0] == '\0') { - syntax(); - } - if (!strcmp(&b->innodefilename[strlen(b->innodefilename) - 5], ".node")) { - b->innodefilename[strlen(b->innodefilename) - 5] = '\0'; - } - if (!strcmp(&b->innodefilename[strlen(b->innodefilename) - 5], ".poly")) { - b->innodefilename[strlen(b->innodefilename) - 5] = '\0'; - b->poly = 1; - } -#ifndef CDT_ONLY - if (!strcmp(&b->innodefilename[strlen(b->innodefilename) - 4], ".ele")) { - b->innodefilename[strlen(b->innodefilename) - 4] = '\0'; - b->refine = 1; - } - if (!strcmp(&b->innodefilename[strlen(b->innodefilename) - 5], ".area")) { - b->innodefilename[strlen(b->innodefilename) - 5] = '\0'; - b->refine = 1; - b->quality = 1; - b->vararea = 1; - } -#endif /* not CDT_ONLY */ -#endif /* not TRILIBRARY */ - b->usesegments = b->poly || b->refine || b->quality || b->convex; - b->goodangle = cos(b->minangle * PI / 180.0); - b->goodangle *= b->goodangle; - if (b->refine && b->noiterationnum) { - fprintf(stderr, - "Error: You cannot use the -I switch when refining a triangulation.\n"); - exit(1); - } - /* Be careful not to allocate space for element area constraints that */ - /* will never be assigned any value (other than the default -1.0). */ - if (!b->refine && !b->poly) { - b->vararea = 0; - } - /* Be careful not to add an extra attribute to each element unless the */ - /* input supports it (PSLG in, but not refining a preexisting mesh). */ - if (b->refine || !b->poly) { - b->regionattrib = 0; - } - /* Regular/weighted triangulations are incompatible with PSLGs */ - /* and meshing. */ - if (b->weighted && (b->poly || b->quality)) { - b->weighted = 0; - if (!b->quiet) { - fprintf(stderr, "Warning: weighted triangulations (-w, -W) are incompatible\n"); - fprintf(stderr, " with PSLGs (-p) and meshing (-q, -a, -u). Weights ignored.\n" - ); - } - } - if (b->jettison && b->nonodewritten && !b->quiet) { - fprintf(stderr, "Warning: -j and -N switches are somewhat incompatible.\n"); - fprintf(stderr, " If any vertices are jettisoned, you will need the output\n"); - fprintf(stderr, " .node file to reconstruct the new node indices."); - } - -#ifndef TRILIBRARY - strcpy(b->inpolyfilename, b->innodefilename); - strcpy(b->inelefilename, b->innodefilename); - strcpy(b->areafilename, b->innodefilename); - increment = 0; - strcpy(workstring, b->innodefilename); - j = 1; - while (workstring[j] != '\0') { - if ((workstring[j] == '.') && (workstring[j + 1] != '\0')) { - increment = j + 1; - } - j++; - } - meshnumber = 0; - if (increment > 0) { - j = increment; - do { - if ((workstring[j] >= '0') && (workstring[j] <= '9')) { - meshnumber = meshnumber * 10 + (int) (workstring[j] - '0'); - } else { - increment = 0; - } - j++; - } while (workstring[j] != '\0'); - } - if (b->noiterationnum) { - strcpy(b->outnodefilename, b->innodefilename); - strcpy(b->outelefilename, b->innodefilename); - strcpy(b->edgefilename, b->innodefilename); - strcpy(b->vnodefilename, b->innodefilename); - strcpy(b->vedgefilename, b->innodefilename); - strcpy(b->neighborfilename, b->innodefilename); - strcpy(b->offfilename, b->innodefilename); - strcat(b->outnodefilename, ".node"); - strcat(b->outelefilename, ".ele"); - strcat(b->edgefilename, ".edge"); - strcat(b->vnodefilename, ".v.node"); - strcat(b->vedgefilename, ".v.edge"); - strcat(b->neighborfilename, ".neigh"); - strcat(b->offfilename, ".off"); - } else if (increment == 0) { - strcpy(b->outnodefilename, b->innodefilename); - strcpy(b->outpolyfilename, b->innodefilename); - strcpy(b->outelefilename, b->innodefilename); - strcpy(b->edgefilename, b->innodefilename); - strcpy(b->vnodefilename, b->innodefilename); - strcpy(b->vedgefilename, b->innodefilename); - strcpy(b->neighborfilename, b->innodefilename); - strcpy(b->offfilename, b->innodefilename); - strcat(b->outnodefilename, ".1.node"); - strcat(b->outpolyfilename, ".1.poly"); - strcat(b->outelefilename, ".1.ele"); - strcat(b->edgefilename, ".1.edge"); - strcat(b->vnodefilename, ".1.v.node"); - strcat(b->vedgefilename, ".1.v.edge"); - strcat(b->neighborfilename, ".1.neigh"); - strcat(b->offfilename, ".1.off"); - } else { - workstring[increment] = '%'; - workstring[increment + 1] = 'd'; - workstring[increment + 2] = '\0'; - sprintf(b->outnodefilename, workstring, meshnumber + 1); - strcpy(b->outpolyfilename, b->outnodefilename); - strcpy(b->outelefilename, b->outnodefilename); - strcpy(b->edgefilename, b->outnodefilename); - strcpy(b->vnodefilename, b->outnodefilename); - strcpy(b->vedgefilename, b->outnodefilename); - strcpy(b->neighborfilename, b->outnodefilename); - strcpy(b->offfilename, b->outnodefilename); - strcat(b->outnodefilename, ".node"); - strcat(b->outpolyfilename, ".poly"); - strcat(b->outelefilename, ".ele"); - strcat(b->edgefilename, ".edge"); - strcat(b->vnodefilename, ".v.node"); - strcat(b->vedgefilename, ".v.edge"); - strcat(b->neighborfilename, ".neigh"); - strcat(b->offfilename, ".off"); - } - strcat(b->innodefilename, ".node"); - strcat(b->inpolyfilename, ".poly"); - strcat(b->inelefilename, ".ele"); - strcat(b->areafilename, ".area"); -#endif /* not TRILIBRARY */ -} - -/** **/ -/** **/ -/********* User interaction routines begin here *********/ - -/********* Debugging routines begin here *********/ -/** **/ -/** **/ - -/*****************************************************************************/ -/* */ -/* printtriangle() Print out the details of an oriented triangle. */ -/* */ -/* I originally wrote this procedure to simplify debugging; it can be */ -/* called directly from the debugger, and presents information about an */ -/* oriented triangle in digestible form. It's also used when the */ -/* highest level of verbosity (`-VVV') is specified. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void printtriangle(struct mesh *m, struct behavior *b, struct otri *t) -#else /* not ANSI_DECLARATORS */ -void printtriangle(m, b, t) -struct mesh *m; -struct behavior *b; -struct otri *t; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri printtri; - struct osub printsh; - vertex printvertex; - - fprintf(stderr, "triangle x%lx with orientation %d:\n", (unsigned long) t->tri, - t->orient); - decode(t->tri[0], printtri); - if (printtri.tri == m->dummytri) { - fprintf(stderr, " [0] = Outer space\n"); - } else { - fprintf(stderr, " [0] = x%lx %d\n", (unsigned long) printtri.tri, - printtri.orient); - } - decode(t->tri[1], printtri); - if (printtri.tri == m->dummytri) { - fprintf(stderr, " [1] = Outer space\n"); - } else { - fprintf(stderr, " [1] = x%lx %d\n", (unsigned long) printtri.tri, - printtri.orient); - } - decode(t->tri[2], printtri); - if (printtri.tri == m->dummytri) { - fprintf(stderr, " [2] = Outer space\n"); - } else { - fprintf(stderr, " [2] = x%lx %d\n", (unsigned long) printtri.tri, - printtri.orient); - } - - org(*t, printvertex); - if (printvertex == (vertex) NULL) - fprintf(stderr, " Origin[%d] = NULL\n", (t->orient + 1) % 3 + 3); - else - fprintf(stderr, " Origin[%d] = x%lx (%.12g, %.12g)\n", - (t->orient + 1) % 3 + 3, (unsigned long) printvertex, - printvertex[0], printvertex[1]); - dest(*t, printvertex); - if (printvertex == (vertex) NULL) - fprintf(stderr, " Dest [%d] = NULL\n", (t->orient + 2) % 3 + 3); - else - fprintf(stderr, " Dest [%d] = x%lx (%.12g, %.12g)\n", - (t->orient + 2) % 3 + 3, (unsigned long) printvertex, - printvertex[0], printvertex[1]); - apex(*t, printvertex); - if (printvertex == (vertex) NULL) - fprintf(stderr, " Apex [%d] = NULL\n", t->orient + 3); - else - fprintf(stderr, " Apex [%d] = x%lx (%.12g, %.12g)\n", - t->orient + 3, (unsigned long) printvertex, - printvertex[0], printvertex[1]); - - if (b->usesegments) { - sdecode(t->tri[6], printsh); - if (printsh.ss != m->dummysub) { - fprintf(stderr, " [6] = x%lx %d\n", (unsigned long) printsh.ss, - printsh.ssorient); - } - sdecode(t->tri[7], printsh); - if (printsh.ss != m->dummysub) { - fprintf(stderr, " [7] = x%lx %d\n", (unsigned long) printsh.ss, - printsh.ssorient); - } - sdecode(t->tri[8], printsh); - if (printsh.ss != m->dummysub) { - fprintf(stderr, " [8] = x%lx %d\n", (unsigned long) printsh.ss, - printsh.ssorient); - } - } - - if (b->vararea) { - fprintf(stderr, " Area constraint: %.4g\n", areabound(*t)); - } -} - -/*****************************************************************************/ -/* */ -/* printsubseg() Print out the details of an oriented subsegment. */ -/* */ -/* I originally wrote this procedure to simplify debugging; it can be */ -/* called directly from the debugger, and presents information about an */ -/* oriented subsegment in digestible form. It's also used when the highest */ -/* level of verbosity (`-VVV') is specified. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void printsubseg(struct mesh *m, struct behavior *b, struct osub *s) -#else /* not ANSI_DECLARATORS */ -void printsubseg(m, b, s) -struct mesh *m; -struct behavior *b; -struct osub *s; -#endif /* not ANSI_DECLARATORS */ - -{ - struct osub printsh; - struct otri printtri; - vertex printvertex; - - fprintf(stderr, "subsegment x%lx with orientation %d and mark %d:\n", - (unsigned long) s->ss, s->ssorient, mark(*s)); - sdecode(s->ss[0], printsh); - if (printsh.ss == m->dummysub) { - fprintf(stderr, " [0] = No subsegment\n"); - } else { - fprintf(stderr, " [0] = x%lx %d\n", (unsigned long) printsh.ss, - printsh.ssorient); - } - sdecode(s->ss[1], printsh); - if (printsh.ss == m->dummysub) { - fprintf(stderr, " [1] = No subsegment\n"); - } else { - fprintf(stderr, " [1] = x%lx %d\n", (unsigned long) printsh.ss, - printsh.ssorient); - } - - sorg(*s, printvertex); - if (printvertex == (vertex) NULL) - fprintf(stderr, " Origin[%d] = NULL\n", 2 + s->ssorient); - else - fprintf(stderr, " Origin[%d] = x%lx (%.12g, %.12g)\n", - 2 + s->ssorient, (unsigned long) printvertex, - printvertex[0], printvertex[1]); - sdest(*s, printvertex); - if (printvertex == (vertex) NULL) - fprintf(stderr, " Dest [%d] = NULL\n", 3 - s->ssorient); - else - fprintf(stderr, " Dest [%d] = x%lx (%.12g, %.12g)\n", - 3 - s->ssorient, (unsigned long) printvertex, - printvertex[0], printvertex[1]); - - decode(s->ss[4], printtri); - if (printtri.tri == m->dummytri) { - fprintf(stderr, " [4] = Outer space\n"); - } else { - fprintf(stderr, " [4] = x%lx %d\n", (unsigned long) printtri.tri, - printtri.orient); - } - decode(s->ss[5], printtri); - if (printtri.tri == m->dummytri) { - fprintf(stderr, " [5] = Outer space\n"); - } else { - fprintf(stderr, " [5] = x%lx %d\n", (unsigned long) printtri.tri, - printtri.orient); - } -} - -/** **/ -/** **/ -/********* Debugging routines end here *********/ - -/********* Memory management routines begin here *********/ -/** **/ -/** **/ - -/*****************************************************************************/ -/* */ -/* poolrestart() Deallocate all items in a pool. */ -/* */ -/* The pool is returned to its starting state, except that no memory is */ -/* freed to the operating system. Rather, the previously allocated blocks */ -/* are ready to be reused. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void poolrestart(struct memorypool *pool) -#else /* not ANSI_DECLARATORS */ -void poolrestart(pool) -struct memorypool *pool; -#endif /* not ANSI_DECLARATORS */ - -{ - unsigned long alignptr; - - pool->items = 0; - pool->maxitems = 0; - - /* Set the currently active block. */ - pool->nowblock = pool->firstblock; - /* Find the first item in the pool. Increment by the size of (VOID *). */ - alignptr = (unsigned long) (pool->nowblock + 1); - /* Align the item on an `alignbytes'-byte boundary. */ - pool->nextitem = (VOID *) - (alignptr + (unsigned long) pool->alignbytes - - (alignptr % (unsigned long) pool->alignbytes)); - /* There are lots of unallocated items left in this block. */ - pool->unallocateditems = pool->itemsperblock; - /* The stack of deallocated items is empty. */ - pool->deaditemstack = (VOID *) NULL; -} - -/*****************************************************************************/ -/* */ -/* poolinit() Initialize a pool of memory for allocation of items. */ -/* */ -/* This routine initializes the machinery for allocating items. A `pool' */ -/* is created whose records have size at least `bytecount'. Items will be */ -/* allocated in `itemcount'-item blocks. Each item is assumed to be a */ -/* collection of words, and either pointers or floating-point values are */ -/* assumed to be the "primary" word type. (The "primary" word type is used */ -/* to determine alignment of items.) If `alignment' isn't zero, all items */ -/* will be `alignment'-byte aligned in memory. `alignment' must be either */ -/* a multiple or a factor of the primary word size; powers of two are safe. */ -/* `alignment' is normally used to create a few unused bits at the bottom */ -/* of each item's pointer, in which information may be stored. */ -/* */ -/* Don't change this routine unless you understand it. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void poolinit(struct memorypool *pool, int bytecount, int itemcount, - enum wordtype wtype, int alignment) -#else /* not ANSI_DECLARATORS */ -void poolinit(pool, bytecount, itemcount, wtype, alignment) -struct memorypool *pool; -int bytecount; -int itemcount; -enum wordtype wtype; -int alignment; -#endif /* not ANSI_DECLARATORS */ - -{ - int wordsize; - - /* Initialize values in the pool. */ - pool->itemwordtype = wtype; - wordsize = (pool->itemwordtype == POINTER) ? sizeof(VOID *) : sizeof(REAL); - /* Find the proper alignment, which must be at least as large as: */ - /* - The parameter `alignment'. */ - /* - The primary word type, to avoid unaligned accesses. */ - /* - sizeof(VOID *), so the stack of dead items can be maintained */ - /* without unaligned accesses. */ - if (alignment > wordsize) { - pool->alignbytes = alignment; - } else { - pool->alignbytes = wordsize; - } - if (sizeof(VOID *) > pool->alignbytes) { - pool->alignbytes = sizeof(VOID *); - } - pool->itemwords = ((bytecount + pool->alignbytes - 1) / pool->alignbytes) - * (pool->alignbytes / wordsize); - pool->itembytes = pool->itemwords * wordsize; - pool->itemsperblock = itemcount; - - /* Allocate a block of items. Space for `itemsperblock' items and one */ - /* pointer (to point to the next block) are allocated, as well as space */ - /* to ensure alignment of the items. */ - pool->firstblock = (VOID **) trimalloc(pool->itemsperblock * pool->itembytes - + sizeof(VOID *) + pool->alignbytes); - /* Set the next block pointer to NULL. */ - *(pool->firstblock) = (VOID *) NULL; - poolrestart(pool); -} - -/*****************************************************************************/ -/* */ -/* pooldeinit() Free to the operating system all memory taken by a pool. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void pooldeinit(struct memorypool *pool) -#else /* not ANSI_DECLARATORS */ -void pooldeinit(pool) -struct memorypool *pool; -#endif /* not ANSI_DECLARATORS */ - -{ - while (pool->firstblock != (VOID **) NULL) { - pool->nowblock = (VOID **) *(pool->firstblock); - trifree((VOID *) pool->firstblock); - pool->firstblock = pool->nowblock; - } -} - -/*****************************************************************************/ -/* */ -/* poolalloc() Allocate space for an item. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -VOID *poolalloc(struct memorypool *pool) -#else /* not ANSI_DECLARATORS */ -VOID *poolalloc(pool) -struct memorypool *pool; -#endif /* not ANSI_DECLARATORS */ - -{ - VOID *newitem; - VOID **newblock; - unsigned long alignptr; - - /* First check the linked list of dead items. If the list is not */ - /* empty, allocate an item from the list rather than a fresh one. */ - if (pool->deaditemstack != (VOID *) NULL) { - newitem = pool->deaditemstack; /* Take first item in list. */ - pool->deaditemstack = * (VOID **) pool->deaditemstack; - } else { - /* Check if there are any free items left in the current block. */ - if (pool->unallocateditems == 0) { - /* Check if another block must be allocated. */ - if (*(pool->nowblock) == (VOID *) NULL) { - /* Allocate a new block of items, pointed to by the previous block. */ - newblock = (VOID **) trimalloc(pool->itemsperblock * pool->itembytes + - sizeof(VOID *) + pool->alignbytes); - *(pool->nowblock) = (VOID *) newblock; - /* The next block pointer is NULL. */ - *newblock = (VOID *) NULL; - } - /* Move to the new block. */ - pool->nowblock = (VOID **) *(pool->nowblock); - /* Find the first item in the block. */ - /* Increment by the size of (VOID *). */ - alignptr = (unsigned long) (pool->nowblock + 1); - /* Align the item on an `alignbytes'-byte boundary. */ - pool->nextitem = (VOID *) - (alignptr + (unsigned long) pool->alignbytes - - (alignptr % (unsigned long) pool->alignbytes)); - /* There are lots of unallocated items left in this block. */ - pool->unallocateditems = pool->itemsperblock; - } - /* Allocate a new item. */ - newitem = pool->nextitem; - /* Advance `nextitem' pointer to next free item in block. */ - if (pool->itemwordtype == POINTER) { - pool->nextitem = (VOID *) ((VOID **) pool->nextitem + pool->itemwords); - } else { - pool->nextitem = (VOID *) ((REAL *) pool->nextitem + pool->itemwords); - } - pool->unallocateditems--; - pool->maxitems++; - } - pool->items++; - return newitem; -} - -/*****************************************************************************/ -/* */ -/* pooldealloc() Deallocate space for an item. */ -/* */ -/* The deallocated space is stored in a queue for later reuse. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void pooldealloc(struct memorypool *pool, VOID *dyingitem) -#else /* not ANSI_DECLARATORS */ -void pooldealloc(pool, dyingitem) -struct memorypool *pool; -VOID *dyingitem; -#endif /* not ANSI_DECLARATORS */ - -{ - /* Push freshly killed item onto stack. */ - *((VOID **) dyingitem) = pool->deaditemstack; - pool->deaditemstack = dyingitem; - pool->items--; -} - -/*****************************************************************************/ -/* */ -/* traversalinit() Prepare to traverse the entire list of items. */ -/* */ -/* This routine is used in conjunction with traverse(). */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void traversalinit(struct memorypool *pool) -#else /* not ANSI_DECLARATORS */ -void traversalinit(pool) -struct memorypool *pool; -#endif /* not ANSI_DECLARATORS */ - -{ - unsigned long alignptr; - - /* Begin the traversal in the first block. */ - pool->pathblock = pool->firstblock; - /* Find the first item in the block. Increment by the size of (VOID *). */ - alignptr = (unsigned long) (pool->pathblock + 1); - /* Align with item on an `alignbytes'-byte boundary. */ - pool->pathitem = (VOID *) - (alignptr + (unsigned long) pool->alignbytes - - (alignptr % (unsigned long) pool->alignbytes)); - /* Set the number of items left in the current block. */ - pool->pathitemsleft = pool->itemsperblock; -} - -/*****************************************************************************/ -/* */ -/* traverse() Find the next item in the list. */ -/* */ -/* This routine is used in conjunction with traversalinit(). Be forewarned */ -/* that this routine successively returns all items in the list, including */ -/* deallocated ones on the deaditemqueue. It's up to you to figure out */ -/* which ones are actually dead. Why? I don't want to allocate extra */ -/* space just to demarcate dead items. It can usually be done more */ -/* space-efficiently by a routine that knows something about the structure */ -/* of the item. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -VOID *traverse(struct memorypool *pool) -#else /* not ANSI_DECLARATORS */ -VOID *traverse(pool) -struct memorypool *pool; -#endif /* not ANSI_DECLARATORS */ - -{ - VOID *newitem; - unsigned long alignptr; - - /* Stop upon exhausting the list of items. */ - if (pool->pathitem == pool->nextitem) { - return (VOID *) NULL; - } - /* Check whether any untraversed items remain in the current block. */ - if (pool->pathitemsleft == 0) { - /* Find the next block. */ - pool->pathblock = (VOID **) *(pool->pathblock); - /* Find the first item in the block. Increment by the size of (VOID *). */ - alignptr = (unsigned long) (pool->pathblock + 1); - /* Align with item on an `alignbytes'-byte boundary. */ - pool->pathitem = (VOID *) - (alignptr + (unsigned long) pool->alignbytes - - (alignptr % (unsigned long) pool->alignbytes)); - /* Set the number of items left in the current block. */ - pool->pathitemsleft = pool->itemsperblock; - } - newitem = pool->pathitem; - /* Find the next item in the block. */ - if (pool->itemwordtype == POINTER) { - pool->pathitem = (VOID *) ((VOID **) pool->pathitem + pool->itemwords); - } else { - pool->pathitem = (VOID *) ((REAL *) pool->pathitem + pool->itemwords); - } - pool->pathitemsleft--; - return newitem; -} - -/*****************************************************************************/ -/* */ -/* dummyinit() Initialize the triangle that fills "outer space" and the */ -/* omnipresent subsegment. */ -/* */ -/* The triangle that fills "outer space," called `dummytri', is pointed to */ -/* by every triangle and subsegment on a boundary (be it outer or inner) of */ -/* the triangulation. Also, `dummytri' points to one of the triangles on */ -/* the convex hull (until the holes and concavities are carved), making it */ -/* possible to find a starting triangle for point location. */ -/* */ -/* The omnipresent subsegment, `dummysub', is pointed to by every triangle */ -/* or subsegment that doesn't have a full complement of real subsegments */ -/* to point to. */ -/* */ -/* `dummytri' and `dummysub' are generally required to fulfill only a few */ -/* invariants: their vertices must remain NULL and `dummytri' must always */ -/* be bonded (at offset zero) to some triangle on the convex hull of the */ -/* mesh, via a boundary edge. Otherwise, the connections of `dummytri' and */ -/* `dummysub' may change willy-nilly. This makes it possible to avoid */ -/* writing a good deal of special-case code (in the edge flip, for example) */ -/* for dealing with the boundary of the mesh, places where no subsegment is */ -/* present, and so forth. Other entities are frequently bonded to */ -/* `dummytri' and `dummysub' as if they were real mesh entities, with no */ -/* harm done. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void dummyinit(struct mesh *m, struct behavior *b, int trianglewords, - int subsegwords) -#else /* not ANSI_DECLARATORS */ -void dummyinit(m, b, trianglewords, subsegwords) -struct mesh *m; -struct behavior *b; -int trianglewords; -int subsegwords; -#endif /* not ANSI_DECLARATORS */ - -{ - unsigned long alignptr; - - /* Set up `dummytri', the `triangle' that occupies "outer space." */ - m->dummytribase = (triangle *) trimalloc(trianglewords * sizeof(triangle) + - m->triangles.alignbytes); - /* Align `dummytri' on a `triangles.alignbytes'-byte boundary. */ - alignptr = (unsigned long) m->dummytribase; - m->dummytri = (triangle *) - (alignptr + (unsigned long) m->triangles.alignbytes - - (alignptr % (unsigned long) m->triangles.alignbytes)); - /* Initialize the three adjoining triangles to be "outer space." These */ - /* will eventually be changed by various bonding operations, but their */ - /* values don't really matter, as long as they can legally be */ - /* dereferenced. */ - m->dummytri[0] = (triangle) m->dummytri; - m->dummytri[1] = (triangle) m->dummytri; - m->dummytri[2] = (triangle) m->dummytri; - /* Three NULL vertices. */ - m->dummytri[3] = (triangle) NULL; - m->dummytri[4] = (triangle) NULL; - m->dummytri[5] = (triangle) NULL; - - if (b->usesegments) { - /* Set up `dummysub', the omnipresent subsegment pointed to by any */ - /* triangle side or subsegment end that isn't attached to a real */ - /* subsegment. */ - m->dummysubbase = (subseg *) trimalloc(subsegwords * sizeof(subseg) + - m->subsegs.alignbytes); - /* Align `dummysub' on a `subsegs.alignbytes'-byte boundary. */ - alignptr = (unsigned long) m->dummysubbase; - m->dummysub = (subseg *) - (alignptr + (unsigned long) m->subsegs.alignbytes - - (alignptr % (unsigned long) m->subsegs.alignbytes)); - /* Initialize the two adjoining subsegments to be the omnipresent */ - /* subsegment. These will eventually be changed by various bonding */ - /* operations, but their values don't really matter, as long as they */ - /* can legally be dereferenced. */ - m->dummysub[0] = (subseg) m->dummysub; - m->dummysub[1] = (subseg) m->dummysub; - /* Two NULL vertices. */ - m->dummysub[2] = (subseg) NULL; - m->dummysub[3] = (subseg) NULL; - /* Initialize the two adjoining triangles to be "outer space." */ - m->dummysub[4] = (subseg) m->dummytri; - m->dummysub[5] = (subseg) m->dummytri; - /* Set the boundary marker to zero. */ - * (int *) (m->dummysub + 6) = 0; - - /* Initialize the three adjoining subsegments of `dummytri' to be */ - /* the omnipresent subsegment. */ - m->dummytri[6] = (triangle) m->dummysub; - m->dummytri[7] = (triangle) m->dummysub; - m->dummytri[8] = (triangle) m->dummysub; - } -} - -/*****************************************************************************/ -/* */ -/* initializevertexpool() Calculate the size of the vertex data structure */ -/* and initialize its memory pool. */ -/* */ -/* This routine also computes the `vertexmarkindex' and `vertex2triindex' */ -/* indices used to find values within each vertex. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void initializevertexpool(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -void initializevertexpool(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - int vertexsize; - - /* The index within each vertex at which the boundary marker is found, */ - /* followed by the vertex type. Ensure the vertex marker is aligned to */ - /* a sizeof(int)-byte address. */ - m->vertexmarkindex = ((m->mesh_dim + m->nextras) * sizeof(REAL) + - sizeof(int) - 1) / - sizeof(int); - vertexsize = (m->vertexmarkindex + 2) * sizeof(int); - if (b->poly) { - /* The index within each vertex at which a triangle pointer is found. */ - /* Ensure the pointer is aligned to a sizeof(triangle)-byte address. */ - m->vertex2triindex = (vertexsize + sizeof(triangle) - 1) / - sizeof(triangle); - vertexsize = (m->vertex2triindex + 1) * sizeof(triangle); - } - /* Initialize the pool of vertices. */ - poolinit(&m->vertices, vertexsize, VERTEXPERBLOCK, - (sizeof(REAL) >= sizeof(triangle)) ? FLOATINGPOINT : POINTER, 0); -} - -/*****************************************************************************/ -/* */ -/* initializetrisubpools() Calculate the sizes of the triangle and */ -/* subsegment data structures and initialize */ -/* their memory pools. */ -/* */ -/* This routine also computes the `highorderindex', `elemattribindex', and */ -/* `areaboundindex' indices used to find values within each triangle. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void initializetrisubpools(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -void initializetrisubpools(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - int trisize; - - /* The index within each triangle at which the extra nodes (above three) */ - /* associated with high order elements are found. There are three */ - /* pointers to other triangles, three pointers to corners, and possibly */ - /* three pointers to subsegments before the extra nodes. */ - m->highorderindex = 6 + (b->usesegments * 3); - /* The number of bytes occupied by a triangle. */ - trisize = ((b->order + 1) * (b->order + 2) / 2 + (m->highorderindex - 3)) * - sizeof(triangle); - /* The index within each triangle at which its attributes are found, */ - /* where the index is measured in REALs. */ - m->elemattribindex = (trisize + sizeof(REAL) - 1) / sizeof(REAL); - /* The index within each triangle at which the maximum area constraint */ - /* is found, where the index is measured in REALs. Note that if the */ - /* `regionattrib' flag is set, an additional attribute will be added. */ - m->areaboundindex = m->elemattribindex + m->eextras + b->regionattrib; - /* If triangle attributes or an area bound are needed, increase the number */ - /* of bytes occupied by a triangle. */ - if (b->vararea) { - trisize = (m->areaboundindex + 1) * sizeof(REAL); - } else if (m->eextras + b->regionattrib > 0) { - trisize = m->areaboundindex * sizeof(REAL); - } - /* If a Voronoi diagram or triangle neighbor graph is requested, make */ - /* sure there's room to store an integer index in each triangle. This */ - /* integer index can occupy the same space as the subsegment pointers */ - /* or attributes or area constraint or extra nodes. */ - if ((b->voronoi || b->neighbors) && - (trisize < 6 * sizeof(triangle) + sizeof(int))) { - trisize = 6 * sizeof(triangle) + sizeof(int); - } - /* Having determined the memory size of a triangle, initialize the pool. */ - poolinit(&m->triangles, trisize, TRIPERBLOCK, POINTER, 4); - - if (b->usesegments) { - /* Initialize the pool of subsegments. Take into account all six */ - /* pointers and one boundary marker. */ - poolinit(&m->subsegs, 6 * sizeof(triangle) + sizeof(int), SUBSEGPERBLOCK, - POINTER, 4); - - /* Initialize the "outer space" triangle and omnipresent subsegment. */ - dummyinit(m, b, m->triangles.itemwords, m->subsegs.itemwords); - } else { - /* Initialize the "outer space" triangle. */ - dummyinit(m, b, m->triangles.itemwords, 0); - } -} - -/*****************************************************************************/ -/* */ -/* triangledealloc() Deallocate space for a triangle, marking it dead. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void triangledealloc(struct mesh *m, triangle *dyingtriangle) -#else /* not ANSI_DECLARATORS */ -void triangledealloc(m, dyingtriangle) -struct mesh *m; -triangle *dyingtriangle; -#endif /* not ANSI_DECLARATORS */ - -{ - /* Mark the triangle as dead. This makes it possible to detect dead */ - /* triangles when traversing the list of all triangles. */ - killtri(dyingtriangle); - pooldealloc(&m->triangles, (VOID *) dyingtriangle); -} - -/*****************************************************************************/ -/* */ -/* triangletraverse() Traverse the triangles, skipping dead ones. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -triangle *triangletraverse(struct mesh *m) -#else /* not ANSI_DECLARATORS */ -triangle *triangletraverse(m) -struct mesh *m; -#endif /* not ANSI_DECLARATORS */ - -{ - triangle *newtriangle; - - do { - newtriangle = (triangle *) traverse(&m->triangles); - if (newtriangle == (triangle *) NULL) { - return (triangle *) NULL; - } - } while (deadtri(newtriangle)); /* Skip dead ones. */ - return newtriangle; -} - -/*****************************************************************************/ -/* */ -/* subsegdealloc() Deallocate space for a subsegment, marking it dead. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void subsegdealloc(struct mesh *m, subseg *dyingsubseg) -#else /* not ANSI_DECLARATORS */ -void subsegdealloc(m, dyingsubseg) -struct mesh *m; -subseg *dyingsubseg; -#endif /* not ANSI_DECLARATORS */ - -{ - /* Mark the subsegment as dead. This makes it possible to detect dead */ - /* subsegments when traversing the list of all subsegments. */ - killsubseg(dyingsubseg); - pooldealloc(&m->subsegs, (VOID *) dyingsubseg); -} - -/*****************************************************************************/ -/* */ -/* subsegtraverse() Traverse the subsegments, skipping dead ones. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -subseg *subsegtraverse(struct mesh *m) -#else /* not ANSI_DECLARATORS */ -subseg *subsegtraverse(m) -struct mesh *m; -#endif /* not ANSI_DECLARATORS */ - -{ - subseg *newsubseg; - - do { - newsubseg = (subseg *) traverse(&m->subsegs); - if (newsubseg == (subseg *) NULL) { - return (subseg *) NULL; - } - } while (deadsubseg(newsubseg)); /* Skip dead ones. */ - return newsubseg; -} - -/*****************************************************************************/ -/* */ -/* vertexdealloc() Deallocate space for a vertex, marking it dead. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void vertexdealloc(struct mesh *m, vertex dyingvertex) -#else /* not ANSI_DECLARATORS */ -void vertexdealloc(m, dyingvertex) -struct mesh *m; -vertex dyingvertex; -#endif /* not ANSI_DECLARATORS */ - -{ - /* Mark the vertex as dead. This makes it possible to detect dead */ - /* vertices when traversing the list of all vertices. */ - setvertextype(dyingvertex, DEADVERTEX); - pooldealloc(&m->vertices, (VOID *) dyingvertex); -} - -/*****************************************************************************/ -/* */ -/* vertextraverse() Traverse the vertices, skipping dead ones. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -vertex vertextraverse(struct mesh *m) -#else /* not ANSI_DECLARATORS */ -vertex vertextraverse(m) -struct mesh *m; -#endif /* not ANSI_DECLARATORS */ - -{ - vertex newvertex; - - do { - newvertex = (vertex) traverse(&m->vertices); - if (newvertex == (vertex) NULL) { - return (vertex) NULL; - } - } while (vertextype(newvertex) == DEADVERTEX); /* Skip dead ones. */ - return newvertex; -} - -/*****************************************************************************/ -/* */ -/* badsubsegdealloc() Deallocate space for a bad subsegment, marking it */ -/* dead. */ -/* */ -/*****************************************************************************/ - -#ifndef CDT_ONLY - -#ifdef ANSI_DECLARATORS -void badsubsegdealloc(struct mesh *m, struct badsubseg *dyingseg) -#else /* not ANSI_DECLARATORS */ -void badsubsegdealloc(m, dyingseg) -struct mesh *m; -struct badsubseg *dyingseg; -#endif /* not ANSI_DECLARATORS */ - -{ - /* Set subsegment's origin to NULL. This makes it possible to detect dead */ - /* subsegments when traversing the list of all encroached subsegments. */ - dyingseg->subsegorg = (vertex) NULL; - pooldealloc(&m->badsubsegs, (VOID *) dyingseg); -} - -#endif /* not CDT_ONLY */ - -/*****************************************************************************/ -/* */ -/* badsubsegtraverse() Traverse the bad subsegments, skipping dead ones. */ -/* */ -/*****************************************************************************/ - -#ifndef CDT_ONLY - -#ifdef ANSI_DECLARATORS -struct badsubseg *badsubsegtraverse(struct mesh *m) -#else /* not ANSI_DECLARATORS */ -struct badsubseg *badsubsegtraverse(m) -struct mesh *m; -#endif /* not ANSI_DECLARATORS */ - -{ - struct badsubseg *newseg; - - do { - newseg = (struct badsubseg *) traverse(&m->badsubsegs); - if (newseg == (struct badsubseg *) NULL) { - return (struct badsubseg *) NULL; - } - } while (newseg->subsegorg == (vertex) NULL); /* Skip dead ones. */ - return newseg; -} - -#endif /* not CDT_ONLY */ - -/*****************************************************************************/ -/* */ -/* getvertex() Get a specific vertex, by number, from the list. */ -/* */ -/* The first vertex is number 'firstnumber'. */ -/* */ -/* Note that this takes O(n) time (with a small constant, if VERTEXPERBLOCK */ -/* is large). I don't care to take the trouble to make it work in constant */ -/* time. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -vertex getvertex(struct mesh *m, struct behavior *b, int number) -#else /* not ANSI_DECLARATORS */ -vertex getvertex(m, b, number) -struct mesh *m; -struct behavior *b; -int number; -#endif /* not ANSI_DECLARATORS */ - -{ - VOID **getblock; - vertex foundvertex; - unsigned long alignptr; - int current; - - getblock = m->vertices.firstblock; - current = b->firstnumber; - /* Find the right block. */ - while (current + m->vertices.itemsperblock <= number) { - getblock = (VOID **) *getblock; - current += m->vertices.itemsperblock; - } - /* Now find the right vertex. */ - alignptr = (unsigned long) (getblock + 1); - foundvertex = (vertex) (alignptr + (unsigned long) m->vertices.alignbytes - - (alignptr % (unsigned long) m->vertices.alignbytes)); - while (current < number) { - foundvertex += m->vertices.itemwords; - current++; - } - return foundvertex; -} - -/*****************************************************************************/ -/* */ -/* triangledeinit() Free all remaining allocated memory. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void triangledeinit(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -void triangledeinit(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - pooldeinit(&m->triangles); - trifree((VOID *) m->dummytribase); - if (b->usesegments) { - pooldeinit(&m->subsegs); - trifree((VOID *) m->dummysubbase); - } - pooldeinit(&m->vertices); -#ifndef CDT_ONLY - if (b->quality) { - pooldeinit(&m->badsubsegs); - if ((b->minangle > 0.0) || b->vararea || b->fixedarea || b->usertest) { - pooldeinit(&m->badtriangles); - pooldeinit(&m->flipstackers); - } - } -#endif /* not CDT_ONLY */ -} - -/** **/ -/** **/ -/********* Memory management routines end here *********/ - -/********* Constructors begin here *********/ -/** **/ -/** **/ - -/*****************************************************************************/ -/* */ -/* maketriangle() Create a new triangle with orientation zero. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void maketriangle(struct mesh *m, struct behavior *b, struct otri *newotri) -#else /* not ANSI_DECLARATORS */ -void maketriangle(m, b, newotri) -struct mesh *m; -struct behavior *b; -struct otri *newotri; -#endif /* not ANSI_DECLARATORS */ - -{ - int i; - - newotri->tri = (triangle *) poolalloc(&m->triangles); - /* Initialize the three adjoining triangles to be "outer space". */ - newotri->tri[0] = (triangle) m->dummytri; - newotri->tri[1] = (triangle) m->dummytri; - newotri->tri[2] = (triangle) m->dummytri; - /* Three NULL vertices. */ - newotri->tri[3] = (triangle) NULL; - newotri->tri[4] = (triangle) NULL; - newotri->tri[5] = (triangle) NULL; - if (b->usesegments) { - /* Initialize the three adjoining subsegments to be the omnipresent */ - /* subsegment. */ - newotri->tri[6] = (triangle) m->dummysub; - newotri->tri[7] = (triangle) m->dummysub; - newotri->tri[8] = (triangle) m->dummysub; - } - for (i = 0; i < m->eextras; i++) { - setelemattribute(*newotri, i, 0.0); - } - if (b->vararea) { - setareabound(*newotri, -1.0); - } - - newotri->orient = 0; -} - -/*****************************************************************************/ -/* */ -/* makesubseg() Create a new subsegment with orientation zero. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void makesubseg(struct mesh *m, struct osub *newsubseg) -#else /* not ANSI_DECLARATORS */ -void makesubseg(m, newsubseg) -struct mesh *m; -struct osub *newsubseg; -#endif /* not ANSI_DECLARATORS */ - -{ - newsubseg->ss = (subseg *) poolalloc(&m->subsegs); - /* Initialize the two adjoining subsegments to be the omnipresent */ - /* subsegment. */ - newsubseg->ss[0] = (subseg) m->dummysub; - newsubseg->ss[1] = (subseg) m->dummysub; - /* Two NULL vertices. */ - newsubseg->ss[2] = (subseg) NULL; - newsubseg->ss[3] = (subseg) NULL; - /* Initialize the two adjoining triangles to be "outer space." */ - newsubseg->ss[4] = (subseg) m->dummytri; - newsubseg->ss[5] = (subseg) m->dummytri; - /* Set the boundary marker to zero. */ - setmark(*newsubseg, 0); - - newsubseg->ssorient = 0; -} - -/** **/ -/** **/ -/********* Constructors end here *********/ - -/********* Geometric primitives begin here *********/ -/** **/ -/** **/ - -/* The adaptive exact arithmetic geometric predicates implemented herein are */ -/* described in detail in my paper, "Adaptive Precision Floating-Point */ -/* Arithmetic and Fast Robust Geometric Predicates." See the header for a */ -/* full citation. */ - -/* Which of the following two methods of finding the absolute values is */ -/* fastest is compiler-dependent. A few compilers can inline and optimize */ -/* the fabs() call; but most will incur the overhead of a function call, */ -/* which is disastrously slow. A faster way on IEEE machines might be to */ -/* mask the appropriate bit, but that's difficult to do in C without */ -/* forcing the value to be stored to memory (rather than be kept in the */ -/* register to which the optimizer assigned it). */ - -#define Absolute(a) ((a) >= 0.0 ? (a) : -(a)) -/* #define Absolute(a) fabs(a) */ - -/* Many of the operations are broken up into two pieces, a main part that */ -/* performs an approximate operation, and a "tail" that computes the */ -/* roundoff error of that operation. */ -/* */ -/* The operations Fast_Two_Sum(), Fast_Two_Diff(), Two_Sum(), Two_Diff(), */ -/* Split(), and Two_Product() are all implemented as described in the */ -/* reference. Each of these macros requires certain variables to be */ -/* defined in the calling routine. The variables `bvirt', `c', `abig', */ -/* `_i', `_j', `_k', `_l', `_m', and `_n' are declared `INEXACT' because */ -/* they store the result of an operation that may incur roundoff error. */ -/* The input parameter `x' (or the highest numbered `x_' parameter) must */ -/* also be declared `INEXACT'. */ - -#define Fast_Two_Sum_Tail(a, b, x, y) \ - bvirt = x - a; \ - y = b - bvirt - -#define Fast_Two_Sum(a, b, x, y) \ - x = (REAL) (a + b); \ - Fast_Two_Sum_Tail(a, b, x, y) - -#define Two_Sum_Tail(a, b, x, y) \ - bvirt = (REAL) (x - a); \ - avirt = x - bvirt; \ - bround = b - bvirt; \ - around = a - avirt; \ - y = around + bround - -#define Two_Sum(a, b, x, y) \ - x = (REAL) (a + b); \ - Two_Sum_Tail(a, b, x, y) - -#define Two_Diff_Tail(a, b, x, y) \ - bvirt = (REAL) (a - x); \ - avirt = x + bvirt; \ - bround = bvirt - b; \ - around = a - avirt; \ - y = around + bround - -#define Two_Diff(a, b, x, y) \ - x = (REAL) (a - b); \ - Two_Diff_Tail(a, b, x, y) - -#define Split(a, ahi, alo) \ - c = (REAL) (splitter * a); \ - abig = (REAL) (c - a); \ - ahi = c - abig; \ - alo = a - ahi - -#define Two_Product_Tail(a, b, x, y) \ - Split(a, ahi, alo); \ - Split(b, bhi, blo); \ - err1 = x - (ahi * bhi); \ - err2 = err1 - (alo * bhi); \ - err3 = err2 - (ahi * blo); \ - y = (alo * blo) - err3 - -#define Two_Product(a, b, x, y) \ - x = (REAL) (a * b); \ - Two_Product_Tail(a, b, x, y) - -/* Two_Product_Presplit() is Two_Product() where one of the inputs has */ -/* already been split. Avoids redundant splitting. */ - -#define Two_Product_Presplit(a, b, bhi, blo, x, y) \ - x = (REAL) (a * b); \ - Split(a, ahi, alo); \ - err1 = x - (ahi * bhi); \ - err2 = err1 - (alo * bhi); \ - err3 = err2 - (ahi * blo); \ - y = (alo * blo) - err3 - -/* Square() can be done more quickly than Two_Product(). */ - -#define Square_Tail(a, x, y) \ - Split(a, ahi, alo); \ - err1 = x - (ahi * ahi); \ - err3 = err1 - ((ahi + ahi) * alo); \ - y = (alo * alo) - err3 - -#define Square(a, x, y) \ - x = (REAL) (a * a); \ - Square_Tail(a, x, y) - -/* Macros for summing expansions of various fixed lengths. These are all */ -/* unrolled versions of Expansion_Sum(). */ - -#define Two_One_Sum(a1, a0, b, x2, x1, x0) \ - Two_Sum(a0, b , _i, x0); \ - Two_Sum(a1, _i, x2, x1) - -#define Two_One_Diff(a1, a0, b, x2, x1, x0) \ - Two_Diff(a0, b , _i, x0); \ - Two_Sum( a1, _i, x2, x1) - -#define Two_Two_Sum(a1, a0, b1, b0, x3, x2, x1, x0) \ - Two_One_Sum(a1, a0, b0, _j, _0, x0); \ - Two_One_Sum(_j, _0, b1, x3, x2, x1) - -#define Two_Two_Diff(a1, a0, b1, b0, x3, x2, x1, x0) \ - Two_One_Diff(a1, a0, b0, _j, _0, x0); \ - Two_One_Diff(_j, _0, b1, x3, x2, x1) - -/* Macro for multiplying a two-component expansion by a single component. */ - -#define Two_One_Product(a1, a0, b, x3, x2, x1, x0) \ - Split(b, bhi, blo); \ - Two_Product_Presplit(a0, b, bhi, blo, _i, x0); \ - Two_Product_Presplit(a1, b, bhi, blo, _j, _0); \ - Two_Sum(_i, _0, _k, x1); \ - Fast_Two_Sum(_j, _k, x3, x2) - -/*****************************************************************************/ -/* */ -/* exactinit() Initialize the variables used for exact arithmetic. */ -/* */ -/* `epsilon' is the largest power of two such that 1.0 + epsilon = 1.0 in */ -/* floating-point arithmetic. `epsilon' bounds the relative roundoff */ -/* error. It is used for floating-point error analysis. */ -/* */ -/* `splitter' is used to split floating-point numbers into two half- */ -/* length significands for exact multiplication. */ -/* */ -/* I imagine that a highly optimizing compiler might be too smart for its */ -/* own good, and somehow cause this routine to fail, if it pretends that */ -/* floating-point arithmetic is too much like real arithmetic. */ -/* */ -/* Don't change this routine unless you fully understand it. */ -/* */ -/*****************************************************************************/ - -void exactinit() -{ - REAL half; - REAL check, lastcheck; - int every_other; -#ifdef LINUX - int cword; -#endif /* LINUX */ - -#ifdef CPU86 -#ifdef SINGLE - _control87(_PC_24, _MCW_PC); /* Set FPU control word for single precision. */ -#else /* not SINGLE */ - _control87(_PC_53, _MCW_PC); /* Set FPU control word for double precision. */ -#endif /* not SINGLE */ -#endif /* CPU86 */ -#ifdef LINUX -#ifdef SINGLE - /* cword = 4223; */ - cword = 4210; /* set FPU control word for single precision */ -#else /* not SINGLE */ - /* cword = 4735; */ - cword = 4722; /* set FPU control word for double precision */ -#endif /* not SINGLE */ - _FPU_SETCW(cword); -#endif /* LINUX */ - - every_other = 1; - half = 0.5; - epsilon = 1.0; - splitter = 1.0; - check = 1.0; - /* Repeatedly divide `epsilon' by two until it is too small to add to */ - /* one without causing roundoff. (Also check if the sum is equal to */ - /* the previous sum, for machines that round up instead of using exact */ - /* rounding. Not that these routines will work on such machines.) */ - do { - lastcheck = check; - epsilon *= half; - if (every_other) { - splitter *= 2.0; - } - every_other = !every_other; - check = 1.0 + epsilon; - } while ((check != 1.0) && (check != lastcheck)); - splitter += 1.0; - /* Error bounds for orientation and incircle tests. */ - resulterrbound = (3.0 + 8.0 * epsilon) * epsilon; - ccwerrboundA = (3.0 + 16.0 * epsilon) * epsilon; - ccwerrboundB = (2.0 + 12.0 * epsilon) * epsilon; - ccwerrboundC = (9.0 + 64.0 * epsilon) * epsilon * epsilon; - iccerrboundA = (10.0 + 96.0 * epsilon) * epsilon; - iccerrboundB = (4.0 + 48.0 * epsilon) * epsilon; - iccerrboundC = (44.0 + 576.0 * epsilon) * epsilon * epsilon; - o3derrboundA = (7.0 + 56.0 * epsilon) * epsilon; - o3derrboundB = (3.0 + 28.0 * epsilon) * epsilon; - o3derrboundC = (26.0 + 288.0 * epsilon) * epsilon * epsilon; -} - -/*****************************************************************************/ -/* */ -/* fast_expansion_sum_zeroelim() Sum two expansions, eliminating zero */ -/* components from the output expansion. */ -/* */ -/* Sets h = e + f. See my Robust Predicates paper for details. */ -/* */ -/* If round-to-even is used (as with IEEE 754), maintains the strongly */ -/* nonoverlapping property. (That is, if e is strongly nonoverlapping, h */ -/* will be also.) Does NOT maintain the nonoverlapping or nonadjacent */ -/* properties. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -int fast_expansion_sum_zeroelim(int elen, REAL *e, int flen, REAL *f, REAL *h) -#else /* not ANSI_DECLARATORS */ -int fast_expansion_sum_zeroelim(elen, e, flen, f, h) /* h cannot be e or f. */ -int elen; -REAL *e; -int flen; -REAL *f; -REAL *h; -#endif /* not ANSI_DECLARATORS */ - -{ - REAL Q; - INEXACT REAL Qnew; - INEXACT REAL hh; - INEXACT REAL bvirt; - REAL avirt, bround, around; - int eindex, findex, hindex; - REAL enow, fnow; - - enow = e[0]; - fnow = f[0]; - eindex = findex = 0; - if ((fnow > enow) == (fnow > -enow)) { - Q = enow; - enow = e[++eindex]; - } else { - Q = fnow; - fnow = f[++findex]; - } - hindex = 0; - if ((eindex < elen) && (findex < flen)) { - if ((fnow > enow) == (fnow > -enow)) { - Fast_Two_Sum(enow, Q, Qnew, hh); - enow = e[++eindex]; - } else { - Fast_Two_Sum(fnow, Q, Qnew, hh); - fnow = f[++findex]; - } - Q = Qnew; - if (hh != 0.0) { - h[hindex++] = hh; - } - while ((eindex < elen) && (findex < flen)) { - if ((fnow > enow) == (fnow > -enow)) { - Two_Sum(Q, enow, Qnew, hh); - enow = e[++eindex]; - } else { - Two_Sum(Q, fnow, Qnew, hh); - fnow = f[++findex]; - } - Q = Qnew; - if (hh != 0.0) { - h[hindex++] = hh; - } - } - } - while (eindex < elen) { - Two_Sum(Q, enow, Qnew, hh); - enow = e[++eindex]; - Q = Qnew; - if (hh != 0.0) { - h[hindex++] = hh; - } - } - while (findex < flen) { - Two_Sum(Q, fnow, Qnew, hh); - fnow = f[++findex]; - Q = Qnew; - if (hh != 0.0) { - h[hindex++] = hh; - } - } - if ((Q != 0.0) || (hindex == 0)) { - h[hindex++] = Q; - } - return hindex; -} - -/*****************************************************************************/ -/* */ -/* scale_expansion_zeroelim() Multiply an expansion by a scalar, */ -/* eliminating zero components from the */ -/* output expansion. */ -/* */ -/* Sets h = be. See my Robust Predicates paper for details. */ -/* */ -/* Maintains the nonoverlapping property. If round-to-even is used (as */ -/* with IEEE 754), maintains the strongly nonoverlapping and nonadjacent */ -/* properties as well. (That is, if e has one of these properties, so */ -/* will h.) */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -int scale_expansion_zeroelim(int elen, REAL *e, REAL b, REAL *h) -#else /* not ANSI_DECLARATORS */ -int scale_expansion_zeroelim(elen, e, b, h) /* e and h cannot be the same. */ -int elen; -REAL *e; -REAL b; -REAL *h; -#endif /* not ANSI_DECLARATORS */ - -{ - INEXACT REAL Q, sum; - REAL hh; - INEXACT REAL product1; - REAL product0; - int eindex, hindex; - REAL enow; - INEXACT REAL bvirt; - REAL avirt, bround, around; - INEXACT REAL c; - INEXACT REAL abig; - REAL ahi, alo, bhi, blo; - REAL err1, err2, err3; - - Split(b, bhi, blo); - Two_Product_Presplit(e[0], b, bhi, blo, Q, hh); - hindex = 0; - if (hh != 0) { - h[hindex++] = hh; - } - for (eindex = 1; eindex < elen; eindex++) { - enow = e[eindex]; - Two_Product_Presplit(enow, b, bhi, blo, product1, product0); - Two_Sum(Q, product0, sum, hh); - if (hh != 0) { - h[hindex++] = hh; - } - Fast_Two_Sum(product1, sum, Q, hh); - if (hh != 0) { - h[hindex++] = hh; - } - } - if ((Q != 0.0) || (hindex == 0)) { - h[hindex++] = Q; - } - return hindex; -} - -/*****************************************************************************/ -/* */ -/* estimate() Produce a one-word estimate of an expansion's value. */ -/* */ -/* See my Robust Predicates paper for details. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -REAL estimate(int elen, REAL *e) -#else /* not ANSI_DECLARATORS */ -REAL estimate(elen, e) -int elen; -REAL *e; -#endif /* not ANSI_DECLARATORS */ - -{ - REAL Q; - int eindex; - - Q = e[0]; - for (eindex = 1; eindex < elen; eindex++) { - Q += e[eindex]; - } - return Q; -} - -/*****************************************************************************/ -/* */ -/* counterclockwise() Return a positive value if the points pa, pb, and */ -/* pc occur in counterclockwise order; a negative */ -/* value if they occur in clockwise order; and zero */ -/* if they are collinear. The result is also a rough */ -/* approximation of twice the signed area of the */ -/* triangle defined by the three points. */ -/* */ -/* Uses exact arithmetic if necessary to ensure a correct answer. The */ -/* result returned is the determinant of a matrix. This determinant is */ -/* computed adaptively, in the sense that exact arithmetic is used only to */ -/* the degree it is needed to ensure that the returned value has the */ -/* correct sign. Hence, this function is usually quite fast, but will run */ -/* more slowly when the input points are collinear or nearly so. */ -/* */ -/* See my Robust Predicates paper for details. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -REAL counterclockwiseadapt(vertex pa, vertex pb, vertex pc, REAL detsum) -#else /* not ANSI_DECLARATORS */ -REAL counterclockwiseadapt(pa, pb, pc, detsum) -vertex pa; -vertex pb; -vertex pc; -REAL detsum; -#endif /* not ANSI_DECLARATORS */ - -{ - INEXACT REAL acx, acy, bcx, bcy; - REAL acxtail, acytail, bcxtail, bcytail; - INEXACT REAL detleft, detright; - REAL detlefttail, detrighttail; - REAL det, errbound; - REAL B[4], C1[8], C2[12], D[16]; - INEXACT REAL B3; - int C1length, C2length, Dlength; - REAL u[4]; - INEXACT REAL u3; - INEXACT REAL s1, t1; - REAL s0, t0; - - INEXACT REAL bvirt; - REAL avirt, bround, around; - INEXACT REAL c; - INEXACT REAL abig; - REAL ahi, alo, bhi, blo; - REAL err1, err2, err3; - INEXACT REAL _i, _j; - REAL _0; - - acx = (REAL) (pa[0] - pc[0]); - bcx = (REAL) (pb[0] - pc[0]); - acy = (REAL) (pa[1] - pc[1]); - bcy = (REAL) (pb[1] - pc[1]); - - Two_Product(acx, bcy, detleft, detlefttail); - Two_Product(acy, bcx, detright, detrighttail); - - Two_Two_Diff(detleft, detlefttail, detright, detrighttail, - B3, B[2], B[1], B[0]); - B[3] = B3; - - det = estimate(4, B); - errbound = ccwerrboundB * detsum; - if ((det >= errbound) || (-det >= errbound)) { - return det; - } - - Two_Diff_Tail(pa[0], pc[0], acx, acxtail); - Two_Diff_Tail(pb[0], pc[0], bcx, bcxtail); - Two_Diff_Tail(pa[1], pc[1], acy, acytail); - Two_Diff_Tail(pb[1], pc[1], bcy, bcytail); - - if ((acxtail == 0.0) && (acytail == 0.0) - && (bcxtail == 0.0) && (bcytail == 0.0)) { - return det; - } - - errbound = ccwerrboundC * detsum + resulterrbound * Absolute(det); - det += (acx * bcytail + bcy * acxtail) - - (acy * bcxtail + bcx * acytail); - if ((det >= errbound) || (-det >= errbound)) { - return det; - } - - Two_Product(acxtail, bcy, s1, s0); - Two_Product(acytail, bcx, t1, t0); - Two_Two_Diff(s1, s0, t1, t0, u3, u[2], u[1], u[0]); - u[3] = u3; - C1length = fast_expansion_sum_zeroelim(4, B, 4, u, C1); - - Two_Product(acx, bcytail, s1, s0); - Two_Product(acy, bcxtail, t1, t0); - Two_Two_Diff(s1, s0, t1, t0, u3, u[2], u[1], u[0]); - u[3] = u3; - C2length = fast_expansion_sum_zeroelim(C1length, C1, 4, u, C2); - - Two_Product(acxtail, bcytail, s1, s0); - Two_Product(acytail, bcxtail, t1, t0); - Two_Two_Diff(s1, s0, t1, t0, u3, u[2], u[1], u[0]); - u[3] = u3; - Dlength = fast_expansion_sum_zeroelim(C2length, C2, 4, u, D); - - return(D[Dlength - 1]); -} - -#ifdef ANSI_DECLARATORS -REAL counterclockwise(struct mesh *m, struct behavior *b, - vertex pa, vertex pb, vertex pc) -#else /* not ANSI_DECLARATORS */ -REAL counterclockwise(m, b, pa, pb, pc) -struct mesh *m; -struct behavior *b; -vertex pa; -vertex pb; -vertex pc; -#endif /* not ANSI_DECLARATORS */ - -{ - REAL detleft, detright, det; - REAL detsum, errbound; - - m->counterclockcount++; - - detleft = (pa[0] - pc[0]) * (pb[1] - pc[1]); - detright = (pa[1] - pc[1]) * (pb[0] - pc[0]); - det = detleft - detright; - - if (b->noexact) { - return det; - } - - if (detleft > 0.0) { - if (detright <= 0.0) { - return det; - } else { - detsum = detleft + detright; - } - } else if (detleft < 0.0) { - if (detright >= 0.0) { - return det; - } else { - detsum = -detleft - detright; - } - } else { - return det; - } - - errbound = ccwerrboundA * detsum; - if ((det >= errbound) || (-det >= errbound)) { - return det; - } - - return counterclockwiseadapt(pa, pb, pc, detsum); -} - -/*****************************************************************************/ -/* */ -/* incircle() Return a positive value if the point pd lies inside the */ -/* circle passing through pa, pb, and pc; a negative value if */ -/* it lies outside; and zero if the four points are cocircular.*/ -/* The points pa, pb, and pc must be in counterclockwise */ -/* order, or the sign of the result will be reversed. */ -/* */ -/* Uses exact arithmetic if necessary to ensure a correct answer. The */ -/* result returned is the determinant of a matrix. This determinant is */ -/* computed adaptively, in the sense that exact arithmetic is used only to */ -/* the degree it is needed to ensure that the returned value has the */ -/* correct sign. Hence, this function is usually quite fast, but will run */ -/* more slowly when the input points are cocircular or nearly so. */ -/* */ -/* See my Robust Predicates paper for details. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -REAL incircleadapt(vertex pa, vertex pb, vertex pc, vertex pd, REAL permanent) -#else /* not ANSI_DECLARATORS */ -REAL incircleadapt(pa, pb, pc, pd, permanent) -vertex pa; -vertex pb; -vertex pc; -vertex pd; -REAL permanent; -#endif /* not ANSI_DECLARATORS */ - -{ - INEXACT REAL adx, bdx, cdx, ady, bdy, cdy; - REAL det, errbound; - - INEXACT REAL bdxcdy1, cdxbdy1, cdxady1, adxcdy1, adxbdy1, bdxady1; - REAL bdxcdy0, cdxbdy0, cdxady0, adxcdy0, adxbdy0, bdxady0; - REAL bc[4], ca[4], ab[4]; - INEXACT REAL bc3, ca3, ab3; - REAL axbc[8], axxbc[16], aybc[8], ayybc[16], adet[32]; - int axbclen, axxbclen, aybclen, ayybclen, alen; - REAL bxca[8], bxxca[16], byca[8], byyca[16], bdet[32]; - int bxcalen, bxxcalen, bycalen, byycalen, blen; - REAL cxab[8], cxxab[16], cyab[8], cyyab[16], cdet[32]; - int cxablen, cxxablen, cyablen, cyyablen, clen; - REAL abdet[64]; - int ablen; - REAL fin1[1152], fin2[1152]; - REAL *finnow, *finother, *finswap; - int finlength; - - REAL adxtail, bdxtail, cdxtail, adytail, bdytail, cdytail; - INEXACT REAL adxadx1, adyady1, bdxbdx1, bdybdy1, cdxcdx1, cdycdy1; - REAL adxadx0, adyady0, bdxbdx0, bdybdy0, cdxcdx0, cdycdy0; - REAL aa[4], bb[4], cc[4]; - INEXACT REAL aa3, bb3, cc3; - INEXACT REAL ti1, tj1; - REAL ti0, tj0; - REAL u[4], v[4]; - INEXACT REAL u3, v3; - REAL temp8[8], temp16a[16], temp16b[16], temp16c[16]; - REAL temp32a[32], temp32b[32], temp48[48], temp64[64]; - int temp8len, temp16alen, temp16blen, temp16clen; - int temp32alen, temp32blen, temp48len, temp64len; - REAL axtbb[8], axtcc[8], aytbb[8], aytcc[8]; - int axtbblen, axtcclen, aytbblen, aytcclen; - REAL bxtaa[8], bxtcc[8], bytaa[8], bytcc[8]; - int bxtaalen, bxtcclen, bytaalen, bytcclen; - REAL cxtaa[8], cxtbb[8], cytaa[8], cytbb[8]; - int cxtaalen, cxtbblen, cytaalen, cytbblen; - REAL axtbc[8], aytbc[8], bxtca[8], bytca[8], cxtab[8], cytab[8]; - int axtbclen, aytbclen, bxtcalen, bytcalen, cxtablen, cytablen; - REAL axtbct[16], aytbct[16], bxtcat[16], bytcat[16], cxtabt[16], cytabt[16]; - int axtbctlen, aytbctlen, bxtcatlen, bytcatlen, cxtabtlen, cytabtlen; - REAL axtbctt[8], aytbctt[8], bxtcatt[8]; - REAL bytcatt[8], cxtabtt[8], cytabtt[8]; - int axtbcttlen, aytbcttlen, bxtcattlen, bytcattlen, cxtabttlen, cytabttlen; - REAL abt[8], bct[8], cat[8]; - int abtlen, bctlen, catlen; - REAL abtt[4], bctt[4], catt[4]; - int abttlen, bcttlen, cattlen; - INEXACT REAL abtt3, bctt3, catt3; - REAL negate; - - INEXACT REAL bvirt; - REAL avirt, bround, around; - INEXACT REAL c; - INEXACT REAL abig; - REAL ahi, alo, bhi, blo; - REAL err1, err2, err3; - INEXACT REAL _i, _j; - REAL _0; - - adx = (REAL) (pa[0] - pd[0]); - bdx = (REAL) (pb[0] - pd[0]); - cdx = (REAL) (pc[0] - pd[0]); - ady = (REAL) (pa[1] - pd[1]); - bdy = (REAL) (pb[1] - pd[1]); - cdy = (REAL) (pc[1] - pd[1]); - - Two_Product(bdx, cdy, bdxcdy1, bdxcdy0); - Two_Product(cdx, bdy, cdxbdy1, cdxbdy0); - Two_Two_Diff(bdxcdy1, bdxcdy0, cdxbdy1, cdxbdy0, bc3, bc[2], bc[1], bc[0]); - bc[3] = bc3; - axbclen = scale_expansion_zeroelim(4, bc, adx, axbc); - axxbclen = scale_expansion_zeroelim(axbclen, axbc, adx, axxbc); - aybclen = scale_expansion_zeroelim(4, bc, ady, aybc); - ayybclen = scale_expansion_zeroelim(aybclen, aybc, ady, ayybc); - alen = fast_expansion_sum_zeroelim(axxbclen, axxbc, ayybclen, ayybc, adet); - - Two_Product(cdx, ady, cdxady1, cdxady0); - Two_Product(adx, cdy, adxcdy1, adxcdy0); - Two_Two_Diff(cdxady1, cdxady0, adxcdy1, adxcdy0, ca3, ca[2], ca[1], ca[0]); - ca[3] = ca3; - bxcalen = scale_expansion_zeroelim(4, ca, bdx, bxca); - bxxcalen = scale_expansion_zeroelim(bxcalen, bxca, bdx, bxxca); - bycalen = scale_expansion_zeroelim(4, ca, bdy, byca); - byycalen = scale_expansion_zeroelim(bycalen, byca, bdy, byyca); - blen = fast_expansion_sum_zeroelim(bxxcalen, bxxca, byycalen, byyca, bdet); - - Two_Product(adx, bdy, adxbdy1, adxbdy0); - Two_Product(bdx, ady, bdxady1, bdxady0); - Two_Two_Diff(adxbdy1, adxbdy0, bdxady1, bdxady0, ab3, ab[2], ab[1], ab[0]); - ab[3] = ab3; - cxablen = scale_expansion_zeroelim(4, ab, cdx, cxab); - cxxablen = scale_expansion_zeroelim(cxablen, cxab, cdx, cxxab); - cyablen = scale_expansion_zeroelim(4, ab, cdy, cyab); - cyyablen = scale_expansion_zeroelim(cyablen, cyab, cdy, cyyab); - clen = fast_expansion_sum_zeroelim(cxxablen, cxxab, cyyablen, cyyab, cdet); - - ablen = fast_expansion_sum_zeroelim(alen, adet, blen, bdet, abdet); - finlength = fast_expansion_sum_zeroelim(ablen, abdet, clen, cdet, fin1); - - det = estimate(finlength, fin1); - errbound = iccerrboundB * permanent; - if ((det >= errbound) || (-det >= errbound)) { - return det; - } - - Two_Diff_Tail(pa[0], pd[0], adx, adxtail); - Two_Diff_Tail(pa[1], pd[1], ady, adytail); - Two_Diff_Tail(pb[0], pd[0], bdx, bdxtail); - Two_Diff_Tail(pb[1], pd[1], bdy, bdytail); - Two_Diff_Tail(pc[0], pd[0], cdx, cdxtail); - Two_Diff_Tail(pc[1], pd[1], cdy, cdytail); - if ((adxtail == 0.0) && (bdxtail == 0.0) && (cdxtail == 0.0) - && (adytail == 0.0) && (bdytail == 0.0) && (cdytail == 0.0)) { - return det; - } - - errbound = iccerrboundC * permanent + resulterrbound * Absolute(det); - det += ((adx * adx + ady * ady) * ((bdx * cdytail + cdy * bdxtail) - - (bdy * cdxtail + cdx * bdytail)) - + 2.0 * (adx * adxtail + ady * adytail) * (bdx * cdy - bdy * cdx)) - + ((bdx * bdx + bdy * bdy) * ((cdx * adytail + ady * cdxtail) - - (cdy * adxtail + adx * cdytail)) - + 2.0 * (bdx * bdxtail + bdy * bdytail) * (cdx * ady - cdy * adx)) - + ((cdx * cdx + cdy * cdy) * ((adx * bdytail + bdy * adxtail) - - (ady * bdxtail + bdx * adytail)) - + 2.0 * (cdx * cdxtail + cdy * cdytail) * (adx * bdy - ady * bdx)); - if ((det >= errbound) || (-det >= errbound)) { - return det; - } - - finnow = fin1; - finother = fin2; - - if ((bdxtail != 0.0) || (bdytail != 0.0) - || (cdxtail != 0.0) || (cdytail != 0.0)) { - Square(adx, adxadx1, adxadx0); - Square(ady, adyady1, adyady0); - Two_Two_Sum(adxadx1, adxadx0, adyady1, adyady0, aa3, aa[2], aa[1], aa[0]); - aa[3] = aa3; - } - if ((cdxtail != 0.0) || (cdytail != 0.0) - || (adxtail != 0.0) || (adytail != 0.0)) { - Square(bdx, bdxbdx1, bdxbdx0); - Square(bdy, bdybdy1, bdybdy0); - Two_Two_Sum(bdxbdx1, bdxbdx0, bdybdy1, bdybdy0, bb3, bb[2], bb[1], bb[0]); - bb[3] = bb3; - } - if ((adxtail != 0.0) || (adytail != 0.0) - || (bdxtail != 0.0) || (bdytail != 0.0)) { - Square(cdx, cdxcdx1, cdxcdx0); - Square(cdy, cdycdy1, cdycdy0); - Two_Two_Sum(cdxcdx1, cdxcdx0, cdycdy1, cdycdy0, cc3, cc[2], cc[1], cc[0]); - cc[3] = cc3; - } - - if (adxtail != 0.0) { - axtbclen = scale_expansion_zeroelim(4, bc, adxtail, axtbc); - temp16alen = scale_expansion_zeroelim(axtbclen, axtbc, 2.0 * adx, - temp16a); - - axtcclen = scale_expansion_zeroelim(4, cc, adxtail, axtcc); - temp16blen = scale_expansion_zeroelim(axtcclen, axtcc, bdy, temp16b); - - axtbblen = scale_expansion_zeroelim(4, bb, adxtail, axtbb); - temp16clen = scale_expansion_zeroelim(axtbblen, axtbb, -cdy, temp16c); - - temp32alen = fast_expansion_sum_zeroelim(temp16alen, temp16a, - temp16blen, temp16b, temp32a); - temp48len = fast_expansion_sum_zeroelim(temp16clen, temp16c, - temp32alen, temp32a, temp48); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, - temp48, finother); - finswap = finnow; finnow = finother; finother = finswap; - } - if (adytail != 0.0) { - aytbclen = scale_expansion_zeroelim(4, bc, adytail, aytbc); - temp16alen = scale_expansion_zeroelim(aytbclen, aytbc, 2.0 * ady, - temp16a); - - aytbblen = scale_expansion_zeroelim(4, bb, adytail, aytbb); - temp16blen = scale_expansion_zeroelim(aytbblen, aytbb, cdx, temp16b); - - aytcclen = scale_expansion_zeroelim(4, cc, adytail, aytcc); - temp16clen = scale_expansion_zeroelim(aytcclen, aytcc, -bdx, temp16c); - - temp32alen = fast_expansion_sum_zeroelim(temp16alen, temp16a, - temp16blen, temp16b, temp32a); - temp48len = fast_expansion_sum_zeroelim(temp16clen, temp16c, - temp32alen, temp32a, temp48); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, - temp48, finother); - finswap = finnow; finnow = finother; finother = finswap; - } - if (bdxtail != 0.0) { - bxtcalen = scale_expansion_zeroelim(4, ca, bdxtail, bxtca); - temp16alen = scale_expansion_zeroelim(bxtcalen, bxtca, 2.0 * bdx, - temp16a); - - bxtaalen = scale_expansion_zeroelim(4, aa, bdxtail, bxtaa); - temp16blen = scale_expansion_zeroelim(bxtaalen, bxtaa, cdy, temp16b); - - bxtcclen = scale_expansion_zeroelim(4, cc, bdxtail, bxtcc); - temp16clen = scale_expansion_zeroelim(bxtcclen, bxtcc, -ady, temp16c); - - temp32alen = fast_expansion_sum_zeroelim(temp16alen, temp16a, - temp16blen, temp16b, temp32a); - temp48len = fast_expansion_sum_zeroelim(temp16clen, temp16c, - temp32alen, temp32a, temp48); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, - temp48, finother); - finswap = finnow; finnow = finother; finother = finswap; - } - if (bdytail != 0.0) { - bytcalen = scale_expansion_zeroelim(4, ca, bdytail, bytca); - temp16alen = scale_expansion_zeroelim(bytcalen, bytca, 2.0 * bdy, - temp16a); - - bytcclen = scale_expansion_zeroelim(4, cc, bdytail, bytcc); - temp16blen = scale_expansion_zeroelim(bytcclen, bytcc, adx, temp16b); - - bytaalen = scale_expansion_zeroelim(4, aa, bdytail, bytaa); - temp16clen = scale_expansion_zeroelim(bytaalen, bytaa, -cdx, temp16c); - - temp32alen = fast_expansion_sum_zeroelim(temp16alen, temp16a, - temp16blen, temp16b, temp32a); - temp48len = fast_expansion_sum_zeroelim(temp16clen, temp16c, - temp32alen, temp32a, temp48); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, - temp48, finother); - finswap = finnow; finnow = finother; finother = finswap; - } - if (cdxtail != 0.0) { - cxtablen = scale_expansion_zeroelim(4, ab, cdxtail, cxtab); - temp16alen = scale_expansion_zeroelim(cxtablen, cxtab, 2.0 * cdx, - temp16a); - - cxtbblen = scale_expansion_zeroelim(4, bb, cdxtail, cxtbb); - temp16blen = scale_expansion_zeroelim(cxtbblen, cxtbb, ady, temp16b); - - cxtaalen = scale_expansion_zeroelim(4, aa, cdxtail, cxtaa); - temp16clen = scale_expansion_zeroelim(cxtaalen, cxtaa, -bdy, temp16c); - - temp32alen = fast_expansion_sum_zeroelim(temp16alen, temp16a, - temp16blen, temp16b, temp32a); - temp48len = fast_expansion_sum_zeroelim(temp16clen, temp16c, - temp32alen, temp32a, temp48); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, - temp48, finother); - finswap = finnow; finnow = finother; finother = finswap; - } - if (cdytail != 0.0) { - cytablen = scale_expansion_zeroelim(4, ab, cdytail, cytab); - temp16alen = scale_expansion_zeroelim(cytablen, cytab, 2.0 * cdy, - temp16a); - - cytaalen = scale_expansion_zeroelim(4, aa, cdytail, cytaa); - temp16blen = scale_expansion_zeroelim(cytaalen, cytaa, bdx, temp16b); - - cytbblen = scale_expansion_zeroelim(4, bb, cdytail, cytbb); - temp16clen = scale_expansion_zeroelim(cytbblen, cytbb, -adx, temp16c); - - temp32alen = fast_expansion_sum_zeroelim(temp16alen, temp16a, - temp16blen, temp16b, temp32a); - temp48len = fast_expansion_sum_zeroelim(temp16clen, temp16c, - temp32alen, temp32a, temp48); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, - temp48, finother); - finswap = finnow; finnow = finother; finother = finswap; - } - - if ((adxtail != 0.0) || (adytail != 0.0)) { - if ((bdxtail != 0.0) || (bdytail != 0.0) - || (cdxtail != 0.0) || (cdytail != 0.0)) { - Two_Product(bdxtail, cdy, ti1, ti0); - Two_Product(bdx, cdytail, tj1, tj0); - Two_Two_Sum(ti1, ti0, tj1, tj0, u3, u[2], u[1], u[0]); - u[3] = u3; - negate = -bdy; - Two_Product(cdxtail, negate, ti1, ti0); - negate = -bdytail; - Two_Product(cdx, negate, tj1, tj0); - Two_Two_Sum(ti1, ti0, tj1, tj0, v3, v[2], v[1], v[0]); - v[3] = v3; - bctlen = fast_expansion_sum_zeroelim(4, u, 4, v, bct); - - Two_Product(bdxtail, cdytail, ti1, ti0); - Two_Product(cdxtail, bdytail, tj1, tj0); - Two_Two_Diff(ti1, ti0, tj1, tj0, bctt3, bctt[2], bctt[1], bctt[0]); - bctt[3] = bctt3; - bcttlen = 4; - } else { - bct[0] = 0.0; - bctlen = 1; - bctt[0] = 0.0; - bcttlen = 1; - } - - if (adxtail != 0.0) { - temp16alen = scale_expansion_zeroelim(axtbclen, axtbc, adxtail, temp16a); - axtbctlen = scale_expansion_zeroelim(bctlen, bct, adxtail, axtbct); - temp32alen = scale_expansion_zeroelim(axtbctlen, axtbct, 2.0 * adx, - temp32a); - temp48len = fast_expansion_sum_zeroelim(temp16alen, temp16a, - temp32alen, temp32a, temp48); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, - temp48, finother); - finswap = finnow; finnow = finother; finother = finswap; - if (bdytail != 0.0) { - temp8len = scale_expansion_zeroelim(4, cc, adxtail, temp8); - temp16alen = scale_expansion_zeroelim(temp8len, temp8, bdytail, - temp16a); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp16alen, - temp16a, finother); - finswap = finnow; finnow = finother; finother = finswap; - } - if (cdytail != 0.0) { - temp8len = scale_expansion_zeroelim(4, bb, -adxtail, temp8); - temp16alen = scale_expansion_zeroelim(temp8len, temp8, cdytail, - temp16a); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp16alen, - temp16a, finother); - finswap = finnow; finnow = finother; finother = finswap; - } - - temp32alen = scale_expansion_zeroelim(axtbctlen, axtbct, adxtail, - temp32a); - axtbcttlen = scale_expansion_zeroelim(bcttlen, bctt, adxtail, axtbctt); - temp16alen = scale_expansion_zeroelim(axtbcttlen, axtbctt, 2.0 * adx, - temp16a); - temp16blen = scale_expansion_zeroelim(axtbcttlen, axtbctt, adxtail, - temp16b); - temp32blen = fast_expansion_sum_zeroelim(temp16alen, temp16a, - temp16blen, temp16b, temp32b); - temp64len = fast_expansion_sum_zeroelim(temp32alen, temp32a, - temp32blen, temp32b, temp64); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp64len, - temp64, finother); - finswap = finnow; finnow = finother; finother = finswap; - } - if (adytail != 0.0) { - temp16alen = scale_expansion_zeroelim(aytbclen, aytbc, adytail, temp16a); - aytbctlen = scale_expansion_zeroelim(bctlen, bct, adytail, aytbct); - temp32alen = scale_expansion_zeroelim(aytbctlen, aytbct, 2.0 * ady, - temp32a); - temp48len = fast_expansion_sum_zeroelim(temp16alen, temp16a, - temp32alen, temp32a, temp48); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, - temp48, finother); - finswap = finnow; finnow = finother; finother = finswap; - - - temp32alen = scale_expansion_zeroelim(aytbctlen, aytbct, adytail, - temp32a); - aytbcttlen = scale_expansion_zeroelim(bcttlen, bctt, adytail, aytbctt); - temp16alen = scale_expansion_zeroelim(aytbcttlen, aytbctt, 2.0 * ady, - temp16a); - temp16blen = scale_expansion_zeroelim(aytbcttlen, aytbctt, adytail, - temp16b); - temp32blen = fast_expansion_sum_zeroelim(temp16alen, temp16a, - temp16blen, temp16b, temp32b); - temp64len = fast_expansion_sum_zeroelim(temp32alen, temp32a, - temp32blen, temp32b, temp64); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp64len, - temp64, finother); - finswap = finnow; finnow = finother; finother = finswap; - } - } - if ((bdxtail != 0.0) || (bdytail != 0.0)) { - if ((cdxtail != 0.0) || (cdytail != 0.0) - || (adxtail != 0.0) || (adytail != 0.0)) { - Two_Product(cdxtail, ady, ti1, ti0); - Two_Product(cdx, adytail, tj1, tj0); - Two_Two_Sum(ti1, ti0, tj1, tj0, u3, u[2], u[1], u[0]); - u[3] = u3; - negate = -cdy; - Two_Product(adxtail, negate, ti1, ti0); - negate = -cdytail; - Two_Product(adx, negate, tj1, tj0); - Two_Two_Sum(ti1, ti0, tj1, tj0, v3, v[2], v[1], v[0]); - v[3] = v3; - catlen = fast_expansion_sum_zeroelim(4, u, 4, v, cat); - - Two_Product(cdxtail, adytail, ti1, ti0); - Two_Product(adxtail, cdytail, tj1, tj0); - Two_Two_Diff(ti1, ti0, tj1, tj0, catt3, catt[2], catt[1], catt[0]); - catt[3] = catt3; - cattlen = 4; - } else { - cat[0] = 0.0; - catlen = 1; - catt[0] = 0.0; - cattlen = 1; - } - - if (bdxtail != 0.0) { - temp16alen = scale_expansion_zeroelim(bxtcalen, bxtca, bdxtail, temp16a); - bxtcatlen = scale_expansion_zeroelim(catlen, cat, bdxtail, bxtcat); - temp32alen = scale_expansion_zeroelim(bxtcatlen, bxtcat, 2.0 * bdx, - temp32a); - temp48len = fast_expansion_sum_zeroelim(temp16alen, temp16a, - temp32alen, temp32a, temp48); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, - temp48, finother); - finswap = finnow; finnow = finother; finother = finswap; - if (cdytail != 0.0) { - temp8len = scale_expansion_zeroelim(4, aa, bdxtail, temp8); - temp16alen = scale_expansion_zeroelim(temp8len, temp8, cdytail, - temp16a); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp16alen, - temp16a, finother); - finswap = finnow; finnow = finother; finother = finswap; - } - if (adytail != 0.0) { - temp8len = scale_expansion_zeroelim(4, cc, -bdxtail, temp8); - temp16alen = scale_expansion_zeroelim(temp8len, temp8, adytail, - temp16a); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp16alen, - temp16a, finother); - finswap = finnow; finnow = finother; finother = finswap; - } - - temp32alen = scale_expansion_zeroelim(bxtcatlen, bxtcat, bdxtail, - temp32a); - bxtcattlen = scale_expansion_zeroelim(cattlen, catt, bdxtail, bxtcatt); - temp16alen = scale_expansion_zeroelim(bxtcattlen, bxtcatt, 2.0 * bdx, - temp16a); - temp16blen = scale_expansion_zeroelim(bxtcattlen, bxtcatt, bdxtail, - temp16b); - temp32blen = fast_expansion_sum_zeroelim(temp16alen, temp16a, - temp16blen, temp16b, temp32b); - temp64len = fast_expansion_sum_zeroelim(temp32alen, temp32a, - temp32blen, temp32b, temp64); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp64len, - temp64, finother); - finswap = finnow; finnow = finother; finother = finswap; - } - if (bdytail != 0.0) { - temp16alen = scale_expansion_zeroelim(bytcalen, bytca, bdytail, temp16a); - bytcatlen = scale_expansion_zeroelim(catlen, cat, bdytail, bytcat); - temp32alen = scale_expansion_zeroelim(bytcatlen, bytcat, 2.0 * bdy, - temp32a); - temp48len = fast_expansion_sum_zeroelim(temp16alen, temp16a, - temp32alen, temp32a, temp48); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, - temp48, finother); - finswap = finnow; finnow = finother; finother = finswap; - - - temp32alen = scale_expansion_zeroelim(bytcatlen, bytcat, bdytail, - temp32a); - bytcattlen = scale_expansion_zeroelim(cattlen, catt, bdytail, bytcatt); - temp16alen = scale_expansion_zeroelim(bytcattlen, bytcatt, 2.0 * bdy, - temp16a); - temp16blen = scale_expansion_zeroelim(bytcattlen, bytcatt, bdytail, - temp16b); - temp32blen = fast_expansion_sum_zeroelim(temp16alen, temp16a, - temp16blen, temp16b, temp32b); - temp64len = fast_expansion_sum_zeroelim(temp32alen, temp32a, - temp32blen, temp32b, temp64); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp64len, - temp64, finother); - finswap = finnow; finnow = finother; finother = finswap; - } - } - if ((cdxtail != 0.0) || (cdytail != 0.0)) { - if ((adxtail != 0.0) || (adytail != 0.0) - || (bdxtail != 0.0) || (bdytail != 0.0)) { - Two_Product(adxtail, bdy, ti1, ti0); - Two_Product(adx, bdytail, tj1, tj0); - Two_Two_Sum(ti1, ti0, tj1, tj0, u3, u[2], u[1], u[0]); - u[3] = u3; - negate = -ady; - Two_Product(bdxtail, negate, ti1, ti0); - negate = -adytail; - Two_Product(bdx, negate, tj1, tj0); - Two_Two_Sum(ti1, ti0, tj1, tj0, v3, v[2], v[1], v[0]); - v[3] = v3; - abtlen = fast_expansion_sum_zeroelim(4, u, 4, v, abt); - - Two_Product(adxtail, bdytail, ti1, ti0); - Two_Product(bdxtail, adytail, tj1, tj0); - Two_Two_Diff(ti1, ti0, tj1, tj0, abtt3, abtt[2], abtt[1], abtt[0]); - abtt[3] = abtt3; - abttlen = 4; - } else { - abt[0] = 0.0; - abtlen = 1; - abtt[0] = 0.0; - abttlen = 1; - } - - if (cdxtail != 0.0) { - temp16alen = scale_expansion_zeroelim(cxtablen, cxtab, cdxtail, temp16a); - cxtabtlen = scale_expansion_zeroelim(abtlen, abt, cdxtail, cxtabt); - temp32alen = scale_expansion_zeroelim(cxtabtlen, cxtabt, 2.0 * cdx, - temp32a); - temp48len = fast_expansion_sum_zeroelim(temp16alen, temp16a, - temp32alen, temp32a, temp48); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, - temp48, finother); - finswap = finnow; finnow = finother; finother = finswap; - if (adytail != 0.0) { - temp8len = scale_expansion_zeroelim(4, bb, cdxtail, temp8); - temp16alen = scale_expansion_zeroelim(temp8len, temp8, adytail, - temp16a); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp16alen, - temp16a, finother); - finswap = finnow; finnow = finother; finother = finswap; - } - if (bdytail != 0.0) { - temp8len = scale_expansion_zeroelim(4, aa, -cdxtail, temp8); - temp16alen = scale_expansion_zeroelim(temp8len, temp8, bdytail, - temp16a); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp16alen, - temp16a, finother); - finswap = finnow; finnow = finother; finother = finswap; - } - - temp32alen = scale_expansion_zeroelim(cxtabtlen, cxtabt, cdxtail, - temp32a); - cxtabttlen = scale_expansion_zeroelim(abttlen, abtt, cdxtail, cxtabtt); - temp16alen = scale_expansion_zeroelim(cxtabttlen, cxtabtt, 2.0 * cdx, - temp16a); - temp16blen = scale_expansion_zeroelim(cxtabttlen, cxtabtt, cdxtail, - temp16b); - temp32blen = fast_expansion_sum_zeroelim(temp16alen, temp16a, - temp16blen, temp16b, temp32b); - temp64len = fast_expansion_sum_zeroelim(temp32alen, temp32a, - temp32blen, temp32b, temp64); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp64len, - temp64, finother); - finswap = finnow; finnow = finother; finother = finswap; - } - if (cdytail != 0.0) { - temp16alen = scale_expansion_zeroelim(cytablen, cytab, cdytail, temp16a); - cytabtlen = scale_expansion_zeroelim(abtlen, abt, cdytail, cytabt); - temp32alen = scale_expansion_zeroelim(cytabtlen, cytabt, 2.0 * cdy, - temp32a); - temp48len = fast_expansion_sum_zeroelim(temp16alen, temp16a, - temp32alen, temp32a, temp48); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, - temp48, finother); - finswap = finnow; finnow = finother; finother = finswap; - - - temp32alen = scale_expansion_zeroelim(cytabtlen, cytabt, cdytail, - temp32a); - cytabttlen = scale_expansion_zeroelim(abttlen, abtt, cdytail, cytabtt); - temp16alen = scale_expansion_zeroelim(cytabttlen, cytabtt, 2.0 * cdy, - temp16a); - temp16blen = scale_expansion_zeroelim(cytabttlen, cytabtt, cdytail, - temp16b); - temp32blen = fast_expansion_sum_zeroelim(temp16alen, temp16a, - temp16blen, temp16b, temp32b); - temp64len = fast_expansion_sum_zeroelim(temp32alen, temp32a, - temp32blen, temp32b, temp64); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp64len, - temp64, finother); - finswap = finnow; finnow = finother; finother = finswap; - } - } - - return finnow[finlength - 1]; -} - -#ifdef ANSI_DECLARATORS -REAL incircle(struct mesh *m, struct behavior *b, - vertex pa, vertex pb, vertex pc, vertex pd) -#else /* not ANSI_DECLARATORS */ -REAL incircle(m, b, pa, pb, pc, pd) -struct mesh *m; -struct behavior *b; -vertex pa; -vertex pb; -vertex pc; -vertex pd; -#endif /* not ANSI_DECLARATORS */ - -{ - REAL adx, bdx, cdx, ady, bdy, cdy; - REAL bdxcdy, cdxbdy, cdxady, adxcdy, adxbdy, bdxady; - REAL alift, blift, clift; - REAL det; - REAL permanent, errbound; - - m->incirclecount++; - - adx = pa[0] - pd[0]; - bdx = pb[0] - pd[0]; - cdx = pc[0] - pd[0]; - ady = pa[1] - pd[1]; - bdy = pb[1] - pd[1]; - cdy = pc[1] - pd[1]; - - bdxcdy = bdx * cdy; - cdxbdy = cdx * bdy; - alift = adx * adx + ady * ady; - - cdxady = cdx * ady; - adxcdy = adx * cdy; - blift = bdx * bdx + bdy * bdy; - - adxbdy = adx * bdy; - bdxady = bdx * ady; - clift = cdx * cdx + cdy * cdy; - - det = alift * (bdxcdy - cdxbdy) - + blift * (cdxady - adxcdy) - + clift * (adxbdy - bdxady); - - if (b->noexact) { - return det; - } - - permanent = (Absolute(bdxcdy) + Absolute(cdxbdy)) * alift - + (Absolute(cdxady) + Absolute(adxcdy)) * blift - + (Absolute(adxbdy) + Absolute(bdxady)) * clift; - errbound = iccerrboundA * permanent; - if ((det > errbound) || (-det > errbound)) { - return det; - } - - return incircleadapt(pa, pb, pc, pd, permanent); -} - -/*****************************************************************************/ -/* */ -/* orient3d() Return a positive value if the point pd lies below the */ -/* plane passing through pa, pb, and pc; "below" is defined so */ -/* that pa, pb, and pc appear in counterclockwise order when */ -/* viewed from above the plane. Returns a negative value if */ -/* pd lies above the plane. Returns zero if the points are */ -/* coplanar. The result is also a rough approximation of six */ -/* times the signed volume of the tetrahedron defined by the */ -/* four points. */ -/* */ -/* Uses exact arithmetic if necessary to ensure a correct answer. The */ -/* result returned is the determinant of a matrix. This determinant is */ -/* computed adaptively, in the sense that exact arithmetic is used only to */ -/* the degree it is needed to ensure that the returned value has the */ -/* correct sign. Hence, this function is usually quite fast, but will run */ -/* more slowly when the input points are coplanar or nearly so. */ -/* */ -/* See my Robust Predicates paper for details. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -REAL orient3dadapt(vertex pa, vertex pb, vertex pc, vertex pd, - REAL aheight, REAL bheight, REAL cheight, REAL dheight, - REAL permanent) -#else /* not ANSI_DECLARATORS */ -REAL orient3dadapt(pa, pb, pc, pd, - aheight, bheight, cheight, dheight, permanent) -vertex pa; -vertex pb; -vertex pc; -vertex pd; -REAL aheight; -REAL bheight; -REAL cheight; -REAL dheight; -REAL permanent; -#endif /* not ANSI_DECLARATORS */ - -{ - INEXACT REAL adx, bdx, cdx, ady, bdy, cdy, adheight, bdheight, cdheight; - REAL det, errbound; - - INEXACT REAL bdxcdy1, cdxbdy1, cdxady1, adxcdy1, adxbdy1, bdxady1; - REAL bdxcdy0, cdxbdy0, cdxady0, adxcdy0, adxbdy0, bdxady0; - REAL bc[4], ca[4], ab[4]; - INEXACT REAL bc3, ca3, ab3; - REAL adet[8], bdet[8], cdet[8]; - int alen, blen, clen; - REAL abdet[16]; - int ablen; - REAL *finnow, *finother, *finswap; - REAL fin1[192], fin2[192]; - int finlength; - - REAL adxtail, bdxtail, cdxtail; - REAL adytail, bdytail, cdytail; - REAL adheighttail, bdheighttail, cdheighttail; - INEXACT REAL at_blarge, at_clarge; - INEXACT REAL bt_clarge, bt_alarge; - INEXACT REAL ct_alarge, ct_blarge; - REAL at_b[4], at_c[4], bt_c[4], bt_a[4], ct_a[4], ct_b[4]; - int at_blen, at_clen, bt_clen, bt_alen, ct_alen, ct_blen; - INEXACT REAL bdxt_cdy1, cdxt_bdy1, cdxt_ady1; - INEXACT REAL adxt_cdy1, adxt_bdy1, bdxt_ady1; - REAL bdxt_cdy0, cdxt_bdy0, cdxt_ady0; - REAL adxt_cdy0, adxt_bdy0, bdxt_ady0; - INEXACT REAL bdyt_cdx1, cdyt_bdx1, cdyt_adx1; - INEXACT REAL adyt_cdx1, adyt_bdx1, bdyt_adx1; - REAL bdyt_cdx0, cdyt_bdx0, cdyt_adx0; - REAL adyt_cdx0, adyt_bdx0, bdyt_adx0; - REAL bct[8], cat[8], abt[8]; - int bctlen, catlen, abtlen; - INEXACT REAL bdxt_cdyt1, cdxt_bdyt1, cdxt_adyt1; - INEXACT REAL adxt_cdyt1, adxt_bdyt1, bdxt_adyt1; - REAL bdxt_cdyt0, cdxt_bdyt0, cdxt_adyt0; - REAL adxt_cdyt0, adxt_bdyt0, bdxt_adyt0; - REAL u[4], v[12], w[16]; - INEXACT REAL u3; - int vlength, wlength; - REAL negate; - - INEXACT REAL bvirt; - REAL avirt, bround, around; - INEXACT REAL c; - INEXACT REAL abig; - REAL ahi, alo, bhi, blo; - REAL err1, err2, err3; - INEXACT REAL _i, _j, _k; - REAL _0; - - adx = (REAL) (pa[0] - pd[0]); - bdx = (REAL) (pb[0] - pd[0]); - cdx = (REAL) (pc[0] - pd[0]); - ady = (REAL) (pa[1] - pd[1]); - bdy = (REAL) (pb[1] - pd[1]); - cdy = (REAL) (pc[1] - pd[1]); - adheight = (REAL) (aheight - dheight); - bdheight = (REAL) (bheight - dheight); - cdheight = (REAL) (cheight - dheight); - - Two_Product(bdx, cdy, bdxcdy1, bdxcdy0); - Two_Product(cdx, bdy, cdxbdy1, cdxbdy0); - Two_Two_Diff(bdxcdy1, bdxcdy0, cdxbdy1, cdxbdy0, bc3, bc[2], bc[1], bc[0]); - bc[3] = bc3; - alen = scale_expansion_zeroelim(4, bc, adheight, adet); - - Two_Product(cdx, ady, cdxady1, cdxady0); - Two_Product(adx, cdy, adxcdy1, adxcdy0); - Two_Two_Diff(cdxady1, cdxady0, adxcdy1, adxcdy0, ca3, ca[2], ca[1], ca[0]); - ca[3] = ca3; - blen = scale_expansion_zeroelim(4, ca, bdheight, bdet); - - Two_Product(adx, bdy, adxbdy1, adxbdy0); - Two_Product(bdx, ady, bdxady1, bdxady0); - Two_Two_Diff(adxbdy1, adxbdy0, bdxady1, bdxady0, ab3, ab[2], ab[1], ab[0]); - ab[3] = ab3; - clen = scale_expansion_zeroelim(4, ab, cdheight, cdet); - - ablen = fast_expansion_sum_zeroelim(alen, adet, blen, bdet, abdet); - finlength = fast_expansion_sum_zeroelim(ablen, abdet, clen, cdet, fin1); - - det = estimate(finlength, fin1); - errbound = o3derrboundB * permanent; - if ((det >= errbound) || (-det >= errbound)) { - return det; - } - - Two_Diff_Tail(pa[0], pd[0], adx, adxtail); - Two_Diff_Tail(pb[0], pd[0], bdx, bdxtail); - Two_Diff_Tail(pc[0], pd[0], cdx, cdxtail); - Two_Diff_Tail(pa[1], pd[1], ady, adytail); - Two_Diff_Tail(pb[1], pd[1], bdy, bdytail); - Two_Diff_Tail(pc[1], pd[1], cdy, cdytail); - Two_Diff_Tail(aheight, dheight, adheight, adheighttail); - Two_Diff_Tail(bheight, dheight, bdheight, bdheighttail); - Two_Diff_Tail(cheight, dheight, cdheight, cdheighttail); - - if ((adxtail == 0.0) && (bdxtail == 0.0) && (cdxtail == 0.0) && - (adytail == 0.0) && (bdytail == 0.0) && (cdytail == 0.0) && - (adheighttail == 0.0) && - (bdheighttail == 0.0) && - (cdheighttail == 0.0)) { - return det; - } - - errbound = o3derrboundC * permanent + resulterrbound * Absolute(det); - det += (adheight * ((bdx * cdytail + cdy * bdxtail) - - (bdy * cdxtail + cdx * bdytail)) + - adheighttail * (bdx * cdy - bdy * cdx)) + - (bdheight * ((cdx * adytail + ady * cdxtail) - - (cdy * adxtail + adx * cdytail)) + - bdheighttail * (cdx * ady - cdy * adx)) + - (cdheight * ((adx * bdytail + bdy * adxtail) - - (ady * bdxtail + bdx * adytail)) + - cdheighttail * (adx * bdy - ady * bdx)); - if ((det >= errbound) || (-det >= errbound)) { - return det; - } - - finnow = fin1; - finother = fin2; - - if (adxtail == 0.0) { - if (adytail == 0.0) { - at_b[0] = 0.0; - at_blen = 1; - at_c[0] = 0.0; - at_clen = 1; - } else { - negate = -adytail; - Two_Product(negate, bdx, at_blarge, at_b[0]); - at_b[1] = at_blarge; - at_blen = 2; - Two_Product(adytail, cdx, at_clarge, at_c[0]); - at_c[1] = at_clarge; - at_clen = 2; - } - } else { - if (adytail == 0.0) { - Two_Product(adxtail, bdy, at_blarge, at_b[0]); - at_b[1] = at_blarge; - at_blen = 2; - negate = -adxtail; - Two_Product(negate, cdy, at_clarge, at_c[0]); - at_c[1] = at_clarge; - at_clen = 2; - } else { - Two_Product(adxtail, bdy, adxt_bdy1, adxt_bdy0); - Two_Product(adytail, bdx, adyt_bdx1, adyt_bdx0); - Two_Two_Diff(adxt_bdy1, adxt_bdy0, adyt_bdx1, adyt_bdx0, - at_blarge, at_b[2], at_b[1], at_b[0]); - at_b[3] = at_blarge; - at_blen = 4; - Two_Product(adytail, cdx, adyt_cdx1, adyt_cdx0); - Two_Product(adxtail, cdy, adxt_cdy1, adxt_cdy0); - Two_Two_Diff(adyt_cdx1, adyt_cdx0, adxt_cdy1, adxt_cdy0, - at_clarge, at_c[2], at_c[1], at_c[0]); - at_c[3] = at_clarge; - at_clen = 4; - } - } - if (bdxtail == 0.0) { - if (bdytail == 0.0) { - bt_c[0] = 0.0; - bt_clen = 1; - bt_a[0] = 0.0; - bt_alen = 1; - } else { - negate = -bdytail; - Two_Product(negate, cdx, bt_clarge, bt_c[0]); - bt_c[1] = bt_clarge; - bt_clen = 2; - Two_Product(bdytail, adx, bt_alarge, bt_a[0]); - bt_a[1] = bt_alarge; - bt_alen = 2; - } - } else { - if (bdytail == 0.0) { - Two_Product(bdxtail, cdy, bt_clarge, bt_c[0]); - bt_c[1] = bt_clarge; - bt_clen = 2; - negate = -bdxtail; - Two_Product(negate, ady, bt_alarge, bt_a[0]); - bt_a[1] = bt_alarge; - bt_alen = 2; - } else { - Two_Product(bdxtail, cdy, bdxt_cdy1, bdxt_cdy0); - Two_Product(bdytail, cdx, bdyt_cdx1, bdyt_cdx0); - Two_Two_Diff(bdxt_cdy1, bdxt_cdy0, bdyt_cdx1, bdyt_cdx0, - bt_clarge, bt_c[2], bt_c[1], bt_c[0]); - bt_c[3] = bt_clarge; - bt_clen = 4; - Two_Product(bdytail, adx, bdyt_adx1, bdyt_adx0); - Two_Product(bdxtail, ady, bdxt_ady1, bdxt_ady0); - Two_Two_Diff(bdyt_adx1, bdyt_adx0, bdxt_ady1, bdxt_ady0, - bt_alarge, bt_a[2], bt_a[1], bt_a[0]); - bt_a[3] = bt_alarge; - bt_alen = 4; - } - } - if (cdxtail == 0.0) { - if (cdytail == 0.0) { - ct_a[0] = 0.0; - ct_alen = 1; - ct_b[0] = 0.0; - ct_blen = 1; - } else { - negate = -cdytail; - Two_Product(negate, adx, ct_alarge, ct_a[0]); - ct_a[1] = ct_alarge; - ct_alen = 2; - Two_Product(cdytail, bdx, ct_blarge, ct_b[0]); - ct_b[1] = ct_blarge; - ct_blen = 2; - } - } else { - if (cdytail == 0.0) { - Two_Product(cdxtail, ady, ct_alarge, ct_a[0]); - ct_a[1] = ct_alarge; - ct_alen = 2; - negate = -cdxtail; - Two_Product(negate, bdy, ct_blarge, ct_b[0]); - ct_b[1] = ct_blarge; - ct_blen = 2; - } else { - Two_Product(cdxtail, ady, cdxt_ady1, cdxt_ady0); - Two_Product(cdytail, adx, cdyt_adx1, cdyt_adx0); - Two_Two_Diff(cdxt_ady1, cdxt_ady0, cdyt_adx1, cdyt_adx0, - ct_alarge, ct_a[2], ct_a[1], ct_a[0]); - ct_a[3] = ct_alarge; - ct_alen = 4; - Two_Product(cdytail, bdx, cdyt_bdx1, cdyt_bdx0); - Two_Product(cdxtail, bdy, cdxt_bdy1, cdxt_bdy0); - Two_Two_Diff(cdyt_bdx1, cdyt_bdx0, cdxt_bdy1, cdxt_bdy0, - ct_blarge, ct_b[2], ct_b[1], ct_b[0]); - ct_b[3] = ct_blarge; - ct_blen = 4; - } - } - - bctlen = fast_expansion_sum_zeroelim(bt_clen, bt_c, ct_blen, ct_b, bct); - wlength = scale_expansion_zeroelim(bctlen, bct, adheight, w); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, wlength, w, - finother); - finswap = finnow; finnow = finother; finother = finswap; - - catlen = fast_expansion_sum_zeroelim(ct_alen, ct_a, at_clen, at_c, cat); - wlength = scale_expansion_zeroelim(catlen, cat, bdheight, w); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, wlength, w, - finother); - finswap = finnow; finnow = finother; finother = finswap; - - abtlen = fast_expansion_sum_zeroelim(at_blen, at_b, bt_alen, bt_a, abt); - wlength = scale_expansion_zeroelim(abtlen, abt, cdheight, w); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, wlength, w, - finother); - finswap = finnow; finnow = finother; finother = finswap; - - if (adheighttail != 0.0) { - vlength = scale_expansion_zeroelim(4, bc, adheighttail, v); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, vlength, v, - finother); - finswap = finnow; finnow = finother; finother = finswap; - } - if (bdheighttail != 0.0) { - vlength = scale_expansion_zeroelim(4, ca, bdheighttail, v); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, vlength, v, - finother); - finswap = finnow; finnow = finother; finother = finswap; - } - if (cdheighttail != 0.0) { - vlength = scale_expansion_zeroelim(4, ab, cdheighttail, v); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, vlength, v, - finother); - finswap = finnow; finnow = finother; finother = finswap; - } - - if (adxtail != 0.0) { - if (bdytail != 0.0) { - Two_Product(adxtail, bdytail, adxt_bdyt1, adxt_bdyt0); - Two_One_Product(adxt_bdyt1, adxt_bdyt0, cdheight, u3, u[2], u[1], u[0]); - u[3] = u3; - finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, - finother); - finswap = finnow; finnow = finother; finother = finswap; - if (cdheighttail != 0.0) { - Two_One_Product(adxt_bdyt1, adxt_bdyt0, cdheighttail, - u3, u[2], u[1], u[0]); - u[3] = u3; - finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, - finother); - finswap = finnow; finnow = finother; finother = finswap; - } - } - if (cdytail != 0.0) { - negate = -adxtail; - Two_Product(negate, cdytail, adxt_cdyt1, adxt_cdyt0); - Two_One_Product(adxt_cdyt1, adxt_cdyt0, bdheight, u3, u[2], u[1], u[0]); - u[3] = u3; - finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, - finother); - finswap = finnow; finnow = finother; finother = finswap; - if (bdheighttail != 0.0) { - Two_One_Product(adxt_cdyt1, adxt_cdyt0, bdheighttail, - u3, u[2], u[1], u[0]); - u[3] = u3; - finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, - finother); - finswap = finnow; finnow = finother; finother = finswap; - } - } - } - if (bdxtail != 0.0) { - if (cdytail != 0.0) { - Two_Product(bdxtail, cdytail, bdxt_cdyt1, bdxt_cdyt0); - Two_One_Product(bdxt_cdyt1, bdxt_cdyt0, adheight, u3, u[2], u[1], u[0]); - u[3] = u3; - finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, - finother); - finswap = finnow; finnow = finother; finother = finswap; - if (adheighttail != 0.0) { - Two_One_Product(bdxt_cdyt1, bdxt_cdyt0, adheighttail, - u3, u[2], u[1], u[0]); - u[3] = u3; - finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, - finother); - finswap = finnow; finnow = finother; finother = finswap; - } - } - if (adytail != 0.0) { - negate = -bdxtail; - Two_Product(negate, adytail, bdxt_adyt1, bdxt_adyt0); - Two_One_Product(bdxt_adyt1, bdxt_adyt0, cdheight, u3, u[2], u[1], u[0]); - u[3] = u3; - finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, - finother); - finswap = finnow; finnow = finother; finother = finswap; - if (cdheighttail != 0.0) { - Two_One_Product(bdxt_adyt1, bdxt_adyt0, cdheighttail, - u3, u[2], u[1], u[0]); - u[3] = u3; - finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, - finother); - finswap = finnow; finnow = finother; finother = finswap; - } - } - } - if (cdxtail != 0.0) { - if (adytail != 0.0) { - Two_Product(cdxtail, adytail, cdxt_adyt1, cdxt_adyt0); - Two_One_Product(cdxt_adyt1, cdxt_adyt0, bdheight, u3, u[2], u[1], u[0]); - u[3] = u3; - finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, - finother); - finswap = finnow; finnow = finother; finother = finswap; - if (bdheighttail != 0.0) { - Two_One_Product(cdxt_adyt1, cdxt_adyt0, bdheighttail, - u3, u[2], u[1], u[0]); - u[3] = u3; - finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, - finother); - finswap = finnow; finnow = finother; finother = finswap; - } - } - if (bdytail != 0.0) { - negate = -cdxtail; - Two_Product(negate, bdytail, cdxt_bdyt1, cdxt_bdyt0); - Two_One_Product(cdxt_bdyt1, cdxt_bdyt0, adheight, u3, u[2], u[1], u[0]); - u[3] = u3; - finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, - finother); - finswap = finnow; finnow = finother; finother = finswap; - if (adheighttail != 0.0) { - Two_One_Product(cdxt_bdyt1, cdxt_bdyt0, adheighttail, - u3, u[2], u[1], u[0]); - u[3] = u3; - finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, - finother); - finswap = finnow; finnow = finother; finother = finswap; - } - } - } - - if (adheighttail != 0.0) { - wlength = scale_expansion_zeroelim(bctlen, bct, adheighttail, w); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, wlength, w, - finother); - finswap = finnow; finnow = finother; finother = finswap; - } - if (bdheighttail != 0.0) { - wlength = scale_expansion_zeroelim(catlen, cat, bdheighttail, w); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, wlength, w, - finother); - finswap = finnow; finnow = finother; finother = finswap; - } - if (cdheighttail != 0.0) { - wlength = scale_expansion_zeroelim(abtlen, abt, cdheighttail, w); - finlength = fast_expansion_sum_zeroelim(finlength, finnow, wlength, w, - finother); - finswap = finnow; finnow = finother; finother = finswap; - } - - return finnow[finlength - 1]; -} - -#ifdef ANSI_DECLARATORS -REAL orient3d(struct mesh *m, struct behavior *b, - vertex pa, vertex pb, vertex pc, vertex pd, - REAL aheight, REAL bheight, REAL cheight, REAL dheight) -#else /* not ANSI_DECLARATORS */ -REAL orient3d(m, b, pa, pb, pc, pd, aheight, bheight, cheight, dheight) -struct mesh *m; -struct behavior *b; -vertex pa; -vertex pb; -vertex pc; -vertex pd; -REAL aheight; -REAL bheight; -REAL cheight; -REAL dheight; -#endif /* not ANSI_DECLARATORS */ - -{ - REAL adx, bdx, cdx, ady, bdy, cdy, adheight, bdheight, cdheight; - REAL bdxcdy, cdxbdy, cdxady, adxcdy, adxbdy, bdxady; - REAL det; - REAL permanent, errbound; - - m->orient3dcount++; - - adx = pa[0] - pd[0]; - bdx = pb[0] - pd[0]; - cdx = pc[0] - pd[0]; - ady = pa[1] - pd[1]; - bdy = pb[1] - pd[1]; - cdy = pc[1] - pd[1]; - adheight = aheight - dheight; - bdheight = bheight - dheight; - cdheight = cheight - dheight; - - bdxcdy = bdx * cdy; - cdxbdy = cdx * bdy; - - cdxady = cdx * ady; - adxcdy = adx * cdy; - - adxbdy = adx * bdy; - bdxady = bdx * ady; - - det = adheight * (bdxcdy - cdxbdy) - + bdheight * (cdxady - adxcdy) - + cdheight * (adxbdy - bdxady); - - if (b->noexact) { - return det; - } - - permanent = (Absolute(bdxcdy) + Absolute(cdxbdy)) * Absolute(adheight) - + (Absolute(cdxady) + Absolute(adxcdy)) * Absolute(bdheight) - + (Absolute(adxbdy) + Absolute(bdxady)) * Absolute(cdheight); - errbound = o3derrboundA * permanent; - if ((det > errbound) || (-det > errbound)) { - return det; - } - - return orient3dadapt(pa, pb, pc, pd, aheight, bheight, cheight, dheight, - permanent); -} - -/*****************************************************************************/ -/* */ -/* nonregular() Return a positive value if the point pd is incompatible */ -/* with the circle or plane passing through pa, pb, and pc */ -/* (meaning that pd is inside the circle or below the */ -/* plane); a negative value if it is compatible; and zero if */ -/* the four points are cocircular/coplanar. The points pa, */ -/* pb, and pc must be in counterclockwise order, or the sign */ -/* of the result will be reversed. */ -/* */ -/* If the -w switch is used, the points are lifted onto the parabolic */ -/* lifting map, then they are dropped according to their weights, then the */ -/* 3D orientation test is applied. If the -W switch is used, the points' */ -/* heights are already provided, so the 3D orientation test is applied */ -/* directly. If neither switch is used, the incircle test is applied. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -REAL nonregular(struct mesh *m, struct behavior *b, - vertex pa, vertex pb, vertex pc, vertex pd) -#else /* not ANSI_DECLARATORS */ -REAL nonregular(m, b, pa, pb, pc, pd) -struct mesh *m; -struct behavior *b; -vertex pa; -vertex pb; -vertex pc; -vertex pd; -#endif /* not ANSI_DECLARATORS */ - -{ - if (b->weighted == 0) { - return incircle(m, b, pa, pb, pc, pd); - } else if (b->weighted == 1) { - return orient3d(m, b, pa, pb, pc, pd, - pa[0] * pa[0] + pa[1] * pa[1] - pa[2], - pb[0] * pb[0] + pb[1] * pb[1] - pb[2], - pc[0] * pc[0] + pc[1] * pc[1] - pc[2], - pd[0] * pd[0] + pd[1] * pd[1] - pd[2]); - } else { - return orient3d(m, b, pa, pb, pc, pd, pa[2], pb[2], pc[2], pd[2]); - } -} - -/*****************************************************************************/ -/* */ -/* findcircumcenter() Find the circumcenter of a triangle. */ -/* */ -/* The result is returned both in terms of x-y coordinates and xi-eta */ -/* (barycentric) coordinates. The xi-eta coordinate system is defined in */ -/* terms of the triangle: the origin of the triangle is the origin of the */ -/* coordinate system; the destination of the triangle is one unit along the */ -/* xi axis; and the apex of the triangle is one unit along the eta axis. */ -/* This procedure also returns the square of the length of the triangle's */ -/* shortest edge. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void findcircumcenter(struct mesh *m, struct behavior *b, - vertex torg, vertex tdest, vertex tapex, - vertex circumcenter, REAL *xi, REAL *eta, REAL *minedge) -#else /* not ANSI_DECLARATORS */ -void findcircumcenter(m, b, torg, tdest, tapex, circumcenter, xi, eta, minedge) -struct mesh *m; -struct behavior *b; -vertex torg; -vertex tdest; -vertex tapex; -vertex circumcenter; -REAL *xi; -REAL *eta; -REAL *minedge; -#endif /* not ANSI_DECLARATORS */ - -{ - REAL xdo, ydo, xao, yao; - REAL dodist, aodist, dadist; - REAL denominator; - REAL dx, dy; - - m->circumcentercount++; - - /* Compute the circumcenter of the triangle. */ - xdo = tdest[0] - torg[0]; - ydo = tdest[1] - torg[1]; - xao = tapex[0] - torg[0]; - yao = tapex[1] - torg[1]; - dodist = xdo * xdo + ydo * ydo; - aodist = xao * xao + yao * yao; - dadist = (tdest[0] - tapex[0]) * (tdest[0] - tapex[0]) + - (tdest[1] - tapex[1]) * (tdest[1] - tapex[1]); - if (b->noexact) { - denominator = 0.5 / (xdo * yao - xao * ydo); - } else { - /* Use the counterclockwise() routine to ensure a positive (and */ - /* reasonably accurate) result, avoiding any possibility of */ - /* division by zero. */ - denominator = 0.5 / counterclockwise(m, b, tdest, tapex, torg); - /* Don't count the above as an orientation test. */ - m->counterclockcount--; - } - circumcenter[0] = torg[0] - (ydo * aodist - yao * dodist) * denominator; - circumcenter[1] = torg[1] + (xdo * aodist - xao * dodist) * denominator; - - /* To interpolate vertex attributes for the new vertex inserted at */ - /* the circumcenter, define a coordinate system with a xi-axis, */ - /* directed from the triangle's origin to its destination, and */ - /* an eta-axis, directed from its origin to its apex. */ - /* Calculate the xi and eta coordinates of the circumcenter. */ - dx = circumcenter[0] - torg[0]; - dy = circumcenter[1] - torg[1]; - *xi = (dx * yao - xao * dy) * (2.0 * denominator); - *eta = (xdo * dy - dx * ydo) * (2.0 * denominator); - - /* Find the length of the triangle's shortest edge. This serves as */ - /* a conservative estimate of the insertion radius of the */ - /* circumcenter's parent. The estimate is used to ensure that */ - /* the algorithm terminates even if very small angles appear in */ - /* the input PSLG. */ - *minedge = ((dodist < aodist) && (dodist < dadist)) ? dodist : - (aodist < dadist) ? aodist : dadist; -} - -/** **/ -/** **/ -/********* Geometric primitives end here *********/ - -/*****************************************************************************/ -/* */ -/* triangleinit() Initialize some variables. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void triangleinit(struct mesh *m) -#else /* not ANSI_DECLARATORS */ -void triangleinit(m) -struct mesh *m; -#endif /* not ANSI_DECLARATORS */ - -{ - m->vertices.maxitems = m->triangles.maxitems = m->subsegs.maxitems = - m->viri.maxitems = m->badsubsegs.maxitems = m->badtriangles.maxitems = - m->flipstackers.maxitems = m->splaynodes.maxitems = 0l; - m->vertices.itembytes = m->triangles.itembytes = m->subsegs.itembytes = - m->viri.itembytes = m->badsubsegs.itembytes = m->badtriangles.itembytes = - m->flipstackers.itembytes = m->splaynodes.itembytes = 0; - m->recenttri.tri = (triangle *) NULL; /* No triangle has been visited yet. */ - m->undeads = 0; /* No eliminated input vertices yet. */ - m->samples = 1; /* Point location should take at least one sample. */ - m->checksegments = 0; /* There are no segments in the triangulation yet. */ - m->checkquality = 0; /* The quality triangulation stage has not begun. */ - m->incirclecount = m->counterclockcount = m->orient3dcount = 0; - m->hyperbolacount = m->circletopcount = m->circumcentercount = 0; - randomseed = 1; - - exactinit(); /* Initialize exact arithmetic constants. */ -} - -/*****************************************************************************/ -/* */ -/* randomnation() Generate a random number between 0 and `choices' - 1. */ -/* */ -/* This is a simple linear congruential random number generator. Hence, it */ -/* is a bad random number generator, but good enough for most randomized */ -/* geometric algorithms. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -unsigned long randomnation(unsigned int choices) -#else /* not ANSI_DECLARATORS */ -unsigned long randomnation(choices) -unsigned int choices; -#endif /* not ANSI_DECLARATORS */ - -{ - randomseed = (randomseed * 1366l + 150889l) % 714025l; - return randomseed / (714025l / choices + 1); -} - -/********* Mesh quality testing routines begin here *********/ -/** **/ -/** **/ - -/*****************************************************************************/ -/* */ -/* checkmesh() Test the mesh for topological consistency. */ -/* */ -/*****************************************************************************/ - -#ifndef REDUCED - -#ifdef ANSI_DECLARATORS -void checkmesh(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -void checkmesh(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri triangleloop; - struct otri oppotri, oppooppotri; - vertex triorg, tridest, triapex; - vertex oppoorg, oppodest; - int horrors; - int saveexact; - triangle ptr; /* Temporary variable used by sym(). */ - - /* Temporarily turn on exact arithmetic if it's off. */ - saveexact = b->noexact; - b->noexact = 0; - if (!b->quiet) { - fprintf(stderr, " Checking consistency of mesh...\n"); - } - horrors = 0; - /* Run through the list of triangles, checking each one. */ - traversalinit(&m->triangles); - triangleloop.tri = triangletraverse(m); - while (triangleloop.tri != (triangle *) NULL) { - /* Check all three edges of the triangle. */ - for (triangleloop.orient = 0; triangleloop.orient < 3; - triangleloop.orient++) { - org(triangleloop, triorg); - dest(triangleloop, tridest); - if (triangleloop.orient == 0) { /* Only test for inversion once. */ - /* Test if the triangle is flat or inverted. */ - apex(triangleloop, triapex); - if (counterclockwise(m, b, triorg, tridest, triapex) <= 0.0) { - fprintf(stderr, " !! !! Inverted "); - printtriangle(m, b, &triangleloop); - horrors++; - } - } - /* Find the neighboring triangle on this edge. */ - sym(triangleloop, oppotri); - if (oppotri.tri != m->dummytri) { - /* Check that the triangle's neighbor knows it's a neighbor. */ - sym(oppotri, oppooppotri); - if ((triangleloop.tri != oppooppotri.tri) - || (triangleloop.orient != oppooppotri.orient)) { - fprintf(stderr, " !! !! Asymmetric triangle-triangle bond:\n"); - if (triangleloop.tri == oppooppotri.tri) { - fprintf(stderr, " (Right triangle, wrong orientation)\n"); - } - fprintf(stderr, " First "); - printtriangle(m, b, &triangleloop); - fprintf(stderr, " Second (nonreciprocating) "); - printtriangle(m, b, &oppotri); - horrors++; - } - /* Check that both triangles agree on the identities */ - /* of their shared vertices. */ - org(oppotri, oppoorg); - dest(oppotri, oppodest); - if ((triorg != oppodest) || (tridest != oppoorg)) { - fprintf(stderr, " !! !! Mismatched edge coordinates between two triangles:\n" - ); - fprintf(stderr, " First mismatched "); - printtriangle(m, b, &triangleloop); - fprintf(stderr, " Second mismatched "); - printtriangle(m, b, &oppotri); - horrors++; - } - } - } - triangleloop.tri = triangletraverse(m); - } - if (horrors == 0) { - if (!b->quiet) { - fprintf(stderr, " In my studied opinion, the mesh appears to be consistent.\n"); - } - } else if (horrors == 1) { - fprintf(stderr, " !! !! !! !! Precisely one festering wound discovered.\n"); - } else { - fprintf(stderr, " !! !! !! !! %d abominations witnessed.\n", horrors); - } - /* Restore the status of exact arithmetic. */ - b->noexact = saveexact; -} - -#endif /* not REDUCED */ - -/*****************************************************************************/ -/* */ -/* checkdelaunay() Ensure that the mesh is (constrained) Delaunay. */ -/* */ -/*****************************************************************************/ - -#ifndef REDUCED - -#ifdef ANSI_DECLARATORS -void checkdelaunay(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -void checkdelaunay(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri triangleloop; - struct otri oppotri; - struct osub opposubseg; - vertex triorg, tridest, triapex; - vertex oppoapex; - int shouldbedelaunay; - int horrors; - int saveexact; - triangle ptr; /* Temporary variable used by sym(). */ - subseg sptr; /* Temporary variable used by tspivot(). */ - - /* Temporarily turn on exact arithmetic if it's off. */ - saveexact = b->noexact; - b->noexact = 0; - if (!b->quiet) { - fprintf(stderr, " Checking Delaunay property of mesh...\n"); - } - horrors = 0; - /* Run through the list of triangles, checking each one. */ - traversalinit(&m->triangles); - triangleloop.tri = triangletraverse(m); - while (triangleloop.tri != (triangle *) NULL) { - /* Check all three edges of the triangle. */ - for (triangleloop.orient = 0; triangleloop.orient < 3; - triangleloop.orient++) { - org(triangleloop, triorg); - dest(triangleloop, tridest); - apex(triangleloop, triapex); - sym(triangleloop, oppotri); - apex(oppotri, oppoapex); - /* Only test that the edge is locally Delaunay if there is an */ - /* adjoining triangle whose pointer is larger (to ensure that */ - /* each pair isn't tested twice). */ - shouldbedelaunay = (oppotri.tri != m->dummytri) && - !deadtri(oppotri.tri) && (triangleloop.tri < oppotri.tri) && - (triorg != m->infvertex1) && (triorg != m->infvertex2) && - (triorg != m->infvertex3) && - (tridest != m->infvertex1) && (tridest != m->infvertex2) && - (tridest != m->infvertex3) && - (triapex != m->infvertex1) && (triapex != m->infvertex2) && - (triapex != m->infvertex3) && - (oppoapex != m->infvertex1) && (oppoapex != m->infvertex2) && - (oppoapex != m->infvertex3); - if (m->checksegments && shouldbedelaunay) { - /* If a subsegment separates the triangles, then the edge is */ - /* constrained, so no local Delaunay test should be done. */ - tspivot(triangleloop, opposubseg); - if (opposubseg.ss != m->dummysub){ - shouldbedelaunay = 0; - } - } - if (shouldbedelaunay) { - if (nonregular(m, b, triorg, tridest, triapex, oppoapex) > 0.0) { - if (!b->weighted) { - fprintf(stderr, " !! !! Non-Delaunay pair of triangles:\n"); - fprintf(stderr, " First non-Delaunay "); - printtriangle(m, b, &triangleloop); - fprintf(stderr, " Second non-Delaunay "); - } else { - fprintf(stderr, " !! !! Non-regular pair of triangles:\n"); - fprintf(stderr, " First non-regular "); - printtriangle(m, b, &triangleloop); - fprintf(stderr, " Second non-regular "); - } - printtriangle(m, b, &oppotri); - horrors++; - } - } - } - triangleloop.tri = triangletraverse(m); - } - if (horrors == 0) { - if (!b->quiet) { - fprintf(stderr, - " By virtue of my perceptive intelligence, I declare the mesh Delaunay.\n"); - } - } else if (horrors == 1) { - fprintf(stderr, - " !! !! !! !! Precisely one terrifying transgression identified.\n"); - } else { - fprintf(stderr, " !! !! !! !! %d obscenities viewed with horror.\n", horrors); - } - /* Restore the status of exact arithmetic. */ - b->noexact = saveexact; -} - -#endif /* not REDUCED */ - -/*****************************************************************************/ -/* */ -/* enqueuebadtriang() Add a bad triangle data structure to the end of a */ -/* queue. */ -/* */ -/* The queue is actually a set of 64 queues. I use multiple queues to give */ -/* priority to smaller angles. I originally implemented a heap, but the */ -/* queues are faster by a larger margin than I'd suspected. */ -/* */ -/*****************************************************************************/ - -#ifndef CDT_ONLY - -#ifdef ANSI_DECLARATORS -void enqueuebadtriang(struct mesh *m, struct behavior *b, - struct badtriang *badtri) -#else /* not ANSI_DECLARATORS */ -void enqueuebadtriang(m, b, badtri) -struct mesh *m; -struct behavior *b; -struct badtriang *badtri; -#endif /* not ANSI_DECLARATORS */ - -{ - int queuenumber; - int i; - - if (b->verbose > 2) { - fprintf(stderr, " Queueing bad triangle:\n"); - fprintf(stderr, " (%.12g, %.12g) (%.12g, %.12g) (%.12g, %.12g)\n", - badtri->triangorg[0], badtri->triangorg[1], - badtri->triangdest[0], badtri->triangdest[1], - badtri->triangapex[0], badtri->triangapex[1]); - } - /* Determine the appropriate queue to put the bad triangle into. */ - if (badtri->key > 0.6) { - queuenumber = (int) (160.0 * (badtri->key - 0.6)); - if (queuenumber > 63) { - queuenumber = 63; - } - } else { - /* It's not a bad angle; put the triangle in the lowest-priority queue. */ - queuenumber = 0; - } - - /* Are we inserting into an empty queue? */ - if (m->queuefront[queuenumber] == (struct badtriang *) NULL) { - /* Yes, we are inserting into an empty queue. */ - /* Will this become the highest-priority queue? */ - if (queuenumber > m->firstnonemptyq) { - /* Yes, this is the highest-priority queue. */ - m->nextnonemptyq[queuenumber] = m->firstnonemptyq; - m->firstnonemptyq = queuenumber; - } else { - /* No, this is not the highest-priority queue. */ - /* Find the queue with next higher priority. */ - i = queuenumber + 1; - while (m->queuefront[i] == (struct badtriang *) NULL) { - i++; - } - /* Mark the newly nonempty queue as following a higher-priority queue. */ - m->nextnonemptyq[queuenumber] = m->nextnonemptyq[i]; - m->nextnonemptyq[i] = queuenumber; - } - /* Put the bad triangle at the beginning of the (empty) queue. */ - m->queuefront[queuenumber] = badtri; - } else { - /* Add the bad triangle to the end of an already nonempty queue. */ - m->queuetail[queuenumber]->nexttriang = badtri; - } - /* Maintain a pointer to the last triangle of the queue. */ - m->queuetail[queuenumber] = badtri; - /* Newly enqueued bad triangle has no successor in the queue. */ - badtri->nexttriang = (struct badtriang *) NULL; -} - -#endif /* not CDT_ONLY */ - -/*****************************************************************************/ -/* */ -/* enqueuebadtri() Add a bad triangle to the end of a queue. */ -/* */ -/* Allocates a badtriang data structure for the triangle, then passes it to */ -/* enqueuebadtriang(). */ -/* */ -/*****************************************************************************/ - -#ifndef CDT_ONLY - -#ifdef ANSI_DECLARATORS -void enqueuebadtri(struct mesh *m, struct behavior *b, struct otri *enqtri, - REAL angle, vertex enqapex, vertex enqorg, vertex enqdest) -#else /* not ANSI_DECLARATORS */ -void enqueuebadtri(m, b, enqtri, angle, enqapex, enqorg, enqdest) -struct mesh *m; -struct behavior *b; -struct otri *enqtri; -REAL angle; -vertex enqapex; -vertex enqorg; -vertex enqdest; -#endif /* not ANSI_DECLARATORS */ - -{ - struct badtriang *newbad; - - /* Allocate space for the bad triangle. */ - newbad = (struct badtriang *) poolalloc(&m->badtriangles); - newbad->poortri = encode(*enqtri); - newbad->key = angle; - newbad->triangapex = enqapex; - newbad->triangorg = enqorg; - newbad->triangdest = enqdest; - enqueuebadtriang(m, b, newbad); -} - -#endif /* not CDT_ONLY */ - -/*****************************************************************************/ -/* */ -/* dequeuebadtriang() Remove a triangle from the front of the queue. */ -/* */ -/*****************************************************************************/ - -#ifndef CDT_ONLY - -#ifdef ANSI_DECLARATORS -struct badtriang *dequeuebadtriang(struct mesh *m) -#else /* not ANSI_DECLARATORS */ -struct badtriang *dequeuebadtriang(m) -struct mesh *m; -#endif /* not ANSI_DECLARATORS */ - -{ - struct badtriang *result; - - /* If no queues are nonempty, return NULL. */ - if (m->firstnonemptyq < 0) { - return (struct badtriang *) NULL; - } - /* Find the first triangle of the highest-priority queue. */ - result = m->queuefront[m->firstnonemptyq]; - /* Remove the triangle from the queue. */ - m->queuefront[m->firstnonemptyq] = result->nexttriang; - /* If this queue is now empty, note the new highest-priority */ - /* nonempty queue. */ - if (result == m->queuetail[m->firstnonemptyq]) { - m->firstnonemptyq = m->nextnonemptyq[m->firstnonemptyq]; - } - return result; -} - -#endif /* not CDT_ONLY */ - -/*****************************************************************************/ -/* */ -/* under60degrees() Return 1 if the two incident input segments are */ -/* separated by an angle less than 60 degrees; */ -/* 0 otherwise. */ -/* */ -/* The two input segments MUST have the same origin. */ -/* */ -/*****************************************************************************/ - -#ifndef CDT_ONLY - -int under60degrees(struct osub *sub1, struct osub *sub2) { - vertex segmentapex, v1, v2; - REAL dotprod; - - sorg(*sub1, segmentapex); - sdest(*sub1, v1); - sdest(*sub2, v2); - dotprod = (v2[0] - segmentapex[0]) * (v1[0] - segmentapex[0]) + - (v2[1] - segmentapex[1]) * (v1[1] - segmentapex[1]); - return (dotprod > 0.0) && - (4.0 * dotprod * dotprod > - ((v1[0] - segmentapex[0]) * (v1[0] - segmentapex[0]) + - (v1[1] - segmentapex[1]) * (v1[1] - segmentapex[1])) * - ((v2[0] - segmentapex[0]) * (v2[0] - segmentapex[0]) + - (v2[1] - segmentapex[1]) * (v2[1] - segmentapex[1]))); -} - -#endif /* not CDT_ONLY */ - -/*****************************************************************************/ -/* */ -/* clockwiseseg() Find the next segment clockwise from `thissub' having */ -/* the same origin and return it as `nextsub' if the */ -/* intervening region is inside the domain. */ -/* */ -/* Returns 1 if the next segment is separated from `thissub' by less than */ -/* 60 degrees, and the intervening region is inside the domain. */ -/* */ -/*****************************************************************************/ - -#ifndef CDT_ONLY - -int clockwiseseg(struct mesh *m, struct osub *thissub, struct osub *nextsub) { - struct otri neighbortri; - triangle ptr; /* Temporary variable used by sym() and stpivot(). */ - subseg sptr; /* Temporary variable used by tspivot(). */ - - stpivot(*thissub, neighbortri); - if (neighbortri.tri == m->dummytri) { - return 0; - } else { - lnextself(neighbortri); - tspivot(neighbortri, *nextsub); - while (nextsub->ss == m->dummysub) { - symself(neighbortri); - lnextself(neighbortri); - tspivot(neighbortri, *nextsub); - } - ssymself(*nextsub); - return under60degrees(thissub, nextsub); - } -} - -#endif /* not CDT_ONLY */ - -/*****************************************************************************/ -/* */ -/* counterclockwiseseg() Find the next segment counterclockwise from */ -/* `thissub' having the same origin and return it */ -/* as `nextsub' if the intervening region is inside */ -/* the domain. */ -/* */ -/* Returns 1 if the next segment is separated from `thissub' by less than */ -/* 60 degrees, and the intervening region is inside the domain. */ -/* */ -/*****************************************************************************/ - -#ifndef CDT_ONLY - -int counterclockwiseseg(struct mesh *m, struct osub *thissub, - struct osub *nextsub) { - struct otri neighbortri; - struct osub subsym; - triangle ptr; /* Temporary variable used by sym() and stpivot(). */ - subseg sptr; /* Temporary variable used by tspivot(). */ - - ssym(*thissub, subsym); - stpivot(subsym, neighbortri); - if (neighbortri.tri == m->dummytri) { - return 0; - } else { - lprevself(neighbortri); - tspivot(neighbortri, *nextsub); - while (nextsub->ss == m->dummysub) { - symself(neighbortri); - lprevself(neighbortri); - tspivot(neighbortri, *nextsub); - } - return under60degrees(thissub, nextsub); - } -} - -#endif /* not CDT_ONLY */ - -#ifndef CDT_ONLY - -/*****************************************************************************/ -/* */ -/* splitpermitted() Return 1 if `testsubseg' is part of a subsegment */ -/* cluster that is eligible for splitting. */ -/* */ -/* The term "subsegment cluster" is formally defined in my paper "Mesh */ -/* Generation for Domains with Small Angles." The algorithm that uses this */ -/* procedure is also described there. */ -/* */ -/* A subsegment cluster is eligible for splitting if (1) it includes a */ -/* subsegment whose length is not a power of two, (2) its subsegments are */ -/* not all the same length, or (3) no new edge that will be created by */ -/* splitting all the subsegments in the cluster has a length shorter than */ -/* the insertion radius of the encroaching vertex, whose square is given */ -/* as the parameter `iradius'. Note that the shortest edges created by */ -/* splitting a cluster are those whose endpoints are both subsegment */ -/* midpoints introduced when the cluster is split. */ -/* */ -/* `testsubseg' is also eligible for splitting (and a 1 will be returned) */ -/* if it is part of two subsegment clusters; one at its origin and one at */ -/* its destination. */ -/* */ -/*****************************************************************************/ - -int splitpermitted(struct mesh *m, struct osub *testsubseg, REAL iradius) { - struct osub cwsubseg, ccwsubseg, cwsubseg2, ccwsubseg2; - struct osub testsym; - struct osub startsubseg, nowsubseg; - vertex suborg, dest1, dest2; - REAL nearestpoweroffour, seglength, prevseglength, edgelength; - int cwsmall, ccwsmall, cwsmall2, ccwsmall2; - int orgcluster, destcluster; - int toosmall; - - /* Find the square of the subsegment's length, and the nearest power of */ - /* four (which is the square of the nearest power of two to the */ - /* subsegment's length). */ - sorg(*testsubseg, suborg); - sdest(*testsubseg, dest1); - seglength = (dest1[0] - suborg[0]) * (dest1[0] - suborg[0]) + - (dest1[1] - suborg[1]) * (dest1[1] - suborg[1]); - nearestpoweroffour = 1.0; - while (seglength > 2.0 * nearestpoweroffour) { - nearestpoweroffour *= 4.0; - } - while (seglength < 0.5 * nearestpoweroffour) { - nearestpoweroffour *= 0.25; - } - /* If the segment's length is not a power of two, the segment */ - /* is eligible for splitting. */ - if ((nearestpoweroffour > 1.001 * seglength) || - (nearestpoweroffour < 0.999 * seglength)) { - return 1; - } - - /* Is `testsubseg' part of a subsegment cluster at its origin? */ - cwsmall = clockwiseseg(m, testsubseg, &cwsubseg); - ccwsmall = cwsmall ? 0 : counterclockwiseseg(m, testsubseg, &ccwsubseg); - orgcluster = cwsmall || ccwsmall; - - /* Is `testsubseg' part of a subsegment cluster at its destination? */ - ssym(*testsubseg, testsym); - cwsmall2 = clockwiseseg(m, &testsym, &cwsubseg2); - ccwsmall2 = cwsmall2 ? 0 : counterclockwiseseg(m, &testsym, &ccwsubseg2); - destcluster = cwsmall2 || ccwsmall2; - - if (orgcluster == destcluster) { - /* `testsubseg' is part of two clusters or none, */ - /* and thus should be split. */ - return 1; - } else if (orgcluster) { - /* `testsubseg' is part of a cluster at its origin. */ - subsegcopy(*testsubseg, startsubseg); - } else { - /* `testsubseg' is part of a cluster at its destination; switch to */ - /* the symmetric case, so we can use the same code to handle it. */ - subsegcopy(testsym, startsubseg); - subsegcopy(cwsubseg2, cwsubseg); - subsegcopy(ccwsubseg2, ccwsubseg); - cwsmall = cwsmall2; - ccwsmall = ccwsmall2; - } - - toosmall = 0; - if (cwsmall) { - /* Check the subsegment(s) clockwise from `testsubseg'. */ - subsegcopy(startsubseg, nowsubseg); - sorg(nowsubseg, suborg); - sdest(nowsubseg, dest1); - prevseglength = nearestpoweroffour; - do { - /* Is the next subsegment shorter than `startsubseg'? */ - sdest(cwsubseg, dest2); - seglength = (dest2[0] - suborg[0]) * (dest2[0] - suborg[0]) + - (dest2[1] - suborg[1]) * (dest2[1] - suborg[1]); - if (nearestpoweroffour > 1.001 * seglength) { - /* It's shorter; it's safe to split `startsubseg'. */ - return 1; - } - /* If the current and previous subsegments are split to a length */ - /* half that of `startsubseg' (which is a likely consequence if */ - /* `startsubseg' is split), what will be (the square of) the */ - /* length of the free edge between the splitting vertices? */ - edgelength = 0.5 * nearestpoweroffour * - (1 - (((dest1[0] - suborg[0]) * (dest2[0] - suborg[0]) + - (dest1[1] - suborg[1]) * (dest2[1] - suborg[1])) / - sqrt(prevseglength * seglength))); - if (edgelength < iradius) { - /* If this cluster is split, the new edge dest1-dest2 will be */ - /* smaller than the insertion radius of the encroaching vertex. */ - /* Hence, we'd prefer to avoid splitting it if possible. */ - toosmall = 1; - } - if (cwsubseg.ss == startsubseg.ss) { - /* We've gone all the way around the vertex. Split the cluster */ - /* if no edges will be too short. */ - return !toosmall; - } - - /* Find the next subsegment clockwise around the vertex. */ - subsegcopy(cwsubseg, nowsubseg); - dest1 = dest2; - prevseglength = seglength; - cwsmall = clockwiseseg(m, &nowsubseg, &cwsubseg); - } while (cwsmall); - - /* Prepare to start searching counterclockwise from */ - /* the starting subsegment. */ - ccwsmall = counterclockwiseseg(m, &startsubseg, &ccwsubseg); - } - - if (ccwsmall) { - /* Check the subsegment(s) counterclockwise from `testsubseg'. */ - subsegcopy(startsubseg, nowsubseg); - sorg(nowsubseg, suborg); - sdest(nowsubseg, dest1); - prevseglength = nearestpoweroffour; - do { - /* Is the next subsegment shorter than `startsubseg'? */ - sdest(ccwsubseg, dest2); - seglength = (dest2[0] - suborg[0]) * (dest2[0] - suborg[0]) + - (dest2[1] - suborg[1]) * (dest2[1] - suborg[1]); - if (nearestpoweroffour > 1.001 * seglength) { - /* It's shorter; it's safe to split `startsubseg'. */ - return 1; - } - /* half that of `startsubseg' (which is a likely consequence if */ - /* `startsubseg' is split), what will be (the square of) the */ - /* length of the free edge between the splitting vertices? */ - edgelength = 0.5 * nearestpoweroffour * - (1 - (((dest1[0] - suborg[0]) * (dest2[0] - suborg[0]) + - (dest1[1] - suborg[1]) * (dest2[1] - suborg[1])) / - sqrt(prevseglength * seglength))); - if (edgelength < iradius) { - /* If this cluster is split, the new edge dest1-dest2 will be */ - /* smaller than the insertion radius of the encroaching vertex. */ - /* Hence, we'd prefer to avoid splitting it if possible. */ - toosmall = 1; - } - if (ccwsubseg.ss == startsubseg.ss) { - /* We've gone all the way around the vertex. Split the cluster */ - /* if no edges will be too short. */ - return !toosmall; - } - - /* Find the next subsegment counterclockwise around the vertex. */ - subsegcopy(ccwsubseg, nowsubseg); - dest1 = dest2; - prevseglength = seglength; - ccwsmall = counterclockwiseseg(m, &nowsubseg, &ccwsubseg); - } while (ccwsmall); - } - - /* We've found every subsegment in the cluster. Split the cluster */ - /* if no edges will be too short. */ - return !toosmall; -} - -#endif /* not CDT_ONLY */ - -/*****************************************************************************/ -/* */ -/* checkseg4encroach() Check a subsegment to see if it is encroached; add */ -/* it to the list if it is. */ -/* */ -/* A subsegment is encroached if there is a vertex in its diametral circle */ -/* (that is, the subsegment faces an angle greater than 90 degrees). This */ -/* definition is due to Ruppert. */ -/* */ -/* Returns a nonzero value if the subsegment is encroached. */ -/* */ -/*****************************************************************************/ - -#ifndef CDT_ONLY - -#ifdef ANSI_DECLARATORS -int checkseg4encroach(struct mesh *m, struct behavior *b, - struct osub *testsubseg, REAL iradius) -#else /* not ANSI_DECLARATORS */ -int checkseg4encroach(m, b, testsubseg, iradius) -struct mesh *m; -struct behavior *b; -struct osub *testsubseg; -REAL iradius; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri neighbortri; - struct osub testsym; - struct badsubseg *encroachedseg; - REAL dotproduct; - int encroached; - int sides; - int enq; - vertex eorg, edest, eapex; - triangle ptr; /* Temporary variable used by stpivot(). */ - - encroached = 0; - sides = 0; - - sorg(*testsubseg, eorg); - sdest(*testsubseg, edest); - /* Check one neighbor of the subsegment. */ - stpivot(*testsubseg, neighbortri); - /* Does the neighbor exist, or is this a boundary edge? */ - if (neighbortri.tri != m->dummytri) { - sides++; - /* Find a vertex opposite this subsegment. */ - apex(neighbortri, eapex); - /* Check whether the apex is in the diametral lens of the subsegment */ - /* (or the diametral circle, if `nolenses' is set). A dot product */ - /* of two sides of the triangle is used to check whether the angle */ - /* at the apex is greater than 120 degrees (for lenses; 90 degrees */ - /* for diametral circles). */ - dotproduct = (eorg[0] - eapex[0]) * (edest[0] - eapex[0]) + - (eorg[1] - eapex[1]) * (edest[1] - eapex[1]); - if (dotproduct < 0.0) { - if (b->nolenses || - (dotproduct * dotproduct >= - 0.25 * ((eorg[0] - eapex[0]) * (eorg[0] - eapex[0]) + - (eorg[1] - eapex[1]) * (eorg[1] - eapex[1])) * - ((edest[0] - eapex[0]) * (edest[0] - eapex[0]) + - (edest[1] - eapex[1]) * (edest[1] - eapex[1])))) { - encroached = 1; - } - } - } - /* Check the other neighbor of the subsegment. */ - ssym(*testsubseg, testsym); - stpivot(testsym, neighbortri); - /* Does the neighbor exist, or is this a boundary edge? */ - if (neighbortri.tri != m->dummytri) { - sides++; - /* Find the other vertex opposite this subsegment. */ - apex(neighbortri, eapex); - /* Check whether the apex is in the diametral lens of the subsegment */ - /* (or the diametral circle, if `nolenses' is set). */ - dotproduct = (eorg[0] - eapex[0]) * (edest[0] - eapex[0]) + - (eorg[1] - eapex[1]) * (edest[1] - eapex[1]); - if (dotproduct < 0.0) { - if (b->nolenses || - (dotproduct * dotproduct >= - 0.25 * ((eorg[0] - eapex[0]) * (eorg[0] - eapex[0]) + - (eorg[1] - eapex[1]) * (eorg[1] - eapex[1])) * - ((edest[0] - eapex[0]) * (edest[0] - eapex[0]) + - (edest[1] - eapex[1]) * (edest[1] - eapex[1])))) { - encroached += 2; - } - } - } - - if (encroached && (!b->nobisect || ((b->nobisect == 1) && (sides == 2)))) { - /* Decide whether `testsubseg' should be split. */ - if (iradius > 0.0) { - /* The encroaching vertex is a triangle circumcenter, which will be */ - /* rejected. Hence, `testsubseg' probably should be split, unless */ - /* it is part of a subsegment cluster which, according to the rules */ - /* described in my paper "Mesh Generation for Domains with Small */ - /* Angles," should not be split. */ - enq = splitpermitted(m, testsubseg, iradius); - } else { - /* The encroaching vertex is an input vertex or was inserted in a */ - /* subsegment, so the encroached subsegment must be split. */ - enq = 1; - } - if (enq) { - if (b->verbose > 2) { - fprintf(stderr, - " Queueing encroached subsegment (%.12g, %.12g) (%.12g, %.12g).\n", - eorg[0], eorg[1], edest[0], edest[1]); - } - /* Add the subsegment to the list of encroached subsegments. */ - /* Be sure to get the orientation right. */ - encroachedseg = (struct badsubseg *) poolalloc(&m->badsubsegs); - if (encroached == 1) { - encroachedseg->encsubseg = sencode(*testsubseg); - encroachedseg->subsegorg = eorg; - encroachedseg->subsegdest = edest; - } else { - encroachedseg->encsubseg = sencode(testsym); - encroachedseg->subsegorg = edest; - encroachedseg->subsegdest = eorg; - } - } - } - - return encroached; -} - -#endif /* not CDT_ONLY */ - -/*****************************************************************************/ -/* */ -/* testtriangle() Test a face for quality measures. */ -/* */ -/* Tests a triangle to see if it satisfies the minimum angle condition and */ -/* the maximum area condition. Triangles that aren't up to spec are added */ -/* to the bad triangle queue. */ -/* */ -/*****************************************************************************/ - -#ifndef CDT_ONLY - -#ifdef ANSI_DECLARATORS -void testtriangle(struct mesh *m, struct behavior *b, struct otri *testtri) -#else /* not ANSI_DECLARATORS */ -void testtriangle(m, b, testtri) -struct mesh *m; -struct behavior *b; -struct otri *testtri; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri sametesttri; - struct osub subseg1, subseg2; - vertex torg, tdest, tapex; - vertex anglevertex; - REAL dxod, dyod, dxda, dyda, dxao, dyao; - REAL dxod2, dyod2, dxda2, dyda2, dxao2, dyao2; - REAL apexlen, orglen, destlen; - REAL angle; - REAL area; - subseg sptr; /* Temporary variable used by tspivot(). */ - - org(*testtri, torg); - dest(*testtri, tdest); - apex(*testtri, tapex); - dxod = torg[0] - tdest[0]; - dyod = torg[1] - tdest[1]; - dxda = tdest[0] - tapex[0]; - dyda = tdest[1] - tapex[1]; - dxao = tapex[0] - torg[0]; - dyao = tapex[1] - torg[1]; - dxod2 = dxod * dxod; - dyod2 = dyod * dyod; - dxda2 = dxda * dxda; - dyda2 = dyda * dyda; - dxao2 = dxao * dxao; - dyao2 = dyao * dyao; - /* Find the lengths of the triangle's three edges. */ - apexlen = dxod2 + dyod2; - orglen = dxda2 + dyda2; - destlen = dxao2 + dyao2; - if ((apexlen < orglen) && (apexlen < destlen)) { - /* The edge opposite the apex is shortest. */ - /* Find the square of the cosine of the angle at the apex. */ - angle = dxda * dxao + dyda * dyao; - angle = angle * angle / (orglen * destlen); - anglevertex = tapex; - lnext(*testtri, sametesttri); - tspivot(sametesttri, subseg1); - lnextself(sametesttri); - tspivot(sametesttri, subseg2); - } else if (orglen < destlen) { - /* The edge opposite the origin is shortest. */ - /* Find the square of the cosine of the angle at the origin. */ - angle = dxod * dxao + dyod * dyao; - angle = angle * angle / (apexlen * destlen); - anglevertex = torg; - tspivot(*testtri, subseg1); - lprev(*testtri, sametesttri); - tspivot(sametesttri, subseg2); - } else { - /* The edge opposite the destination is shortest. */ - /* Find the square of the cosine of the angle at the destination. */ - angle = dxod * dxda + dyod * dyda; - angle = angle * angle / (apexlen * orglen); - anglevertex = tdest; - tspivot(*testtri, subseg1); - lnext(*testtri, sametesttri); - tspivot(sametesttri, subseg2); - } - - /* Check if both edges that form the angle are segments. */ - if ((subseg1.ss != m->dummysub) && (subseg2.ss != m->dummysub)) { - /* The angle is a segment intersection. Don't add this bad triangle to */ - /* the list; there's nothing that can be done about a small angle */ - /* between two segments. */ - angle = 0.0; - } - - /* Check whether the angle is smaller than permitted. */ - if (angle > b->goodangle) { - /* Add this triangle to the list of bad triangles. */ - enqueuebadtri(m, b, testtri, angle, tapex, torg, tdest); - return; - } - - if (b->vararea || b->fixedarea || b->usertest) { - /* Check whether the area is larger than permitted. */ - area = 0.5 * (dxod * dyda - dyod * dxda); - if (b->fixedarea && (area > b->maxarea)) { - /* Add this triangle to the list of bad triangles. */ - enqueuebadtri(m, b, testtri, angle, tapex, torg, tdest); - return; - } - - /* Nonpositive area constraints are treated as unconstrained. */ - if ((b->vararea) && (area > areabound(*testtri)) && - (areabound(*testtri) > 0.0)) { - /* Add this triangle to the list of bad triangles. */ - enqueuebadtri(m, b, testtri, angle, tapex, torg, tdest); - return; - } - - if (b->usertest) { - /* Check whether the user thinks this triangle is too large. */ - if (triunsuitable(torg, tdest, tapex, area)) { - enqueuebadtri(m, b, testtri, angle, tapex, torg, tdest); - return; - } - } - } -} - -#endif /* not CDT_ONLY */ - -/** **/ -/** **/ -/********* Mesh quality testing routines end here *********/ - -/********* Point location routines begin here *********/ -/** **/ -/** **/ - -/*****************************************************************************/ -/* */ -/* makevertexmap() Construct a mapping from vertices to triangles to */ -/* improve the speed of point location for segment */ -/* insertion. */ -/* */ -/* Traverses all the triangles, and provides each corner of each triangle */ -/* with a pointer to that triangle. Of course, pointers will be */ -/* overwritten by other pointers because (almost) each vertex is a corner */ -/* of several triangles, but in the end every vertex will point to some */ -/* triangle that contains it. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void makevertexmap(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -void makevertexmap(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri triangleloop; - vertex triorg; - - if (b->verbose) { - fprintf(stderr, " Constructing mapping from vertices to triangles.\n"); - } - traversalinit(&m->triangles); - triangleloop.tri = triangletraverse(m); - while (triangleloop.tri != (triangle *) NULL) { - /* Check all three vertices of the triangle. */ - for (triangleloop.orient = 0; triangleloop.orient < 3; - triangleloop.orient++) { - org(triangleloop, triorg); - setvertex2tri(triorg, encode(triangleloop)); - } - triangleloop.tri = triangletraverse(m); - } -} - -/*****************************************************************************/ -/* */ -/* preciselocate() Find a triangle or edge containing a given point. */ -/* */ -/* Begins its search from `searchtri'. It is important that `searchtri' */ -/* be a handle with the property that `searchpoint' is strictly to the left */ -/* of the edge denoted by `searchtri', or is collinear with that edge and */ -/* does not intersect that edge. (In particular, `searchpoint' should not */ -/* be the origin or destination of that edge.) */ -/* */ -/* These conditions are imposed because preciselocate() is normally used in */ -/* one of two situations: */ -/* */ -/* (1) To try to find the location to insert a new point. Normally, we */ -/* know an edge that the point is strictly to the left of. In the */ -/* incremental Delaunay algorithm, that edge is a bounding box edge. */ -/* In Ruppert's Delaunay refinement algorithm for quality meshing, */ -/* that edge is the shortest edge of the triangle whose circumcenter */ -/* is being inserted. */ -/* */ -/* (2) To try to find an existing point. In this case, any edge on the */ -/* convex hull is a good starting edge. You must screen out the */ -/* possibility that the vertex sought is an endpoint of the starting */ -/* edge before you call preciselocate(). */ -/* */ -/* On completion, `searchtri' is a triangle that contains `searchpoint'. */ -/* */ -/* This implementation differs from that given by Guibas and Stolfi. It */ -/* walks from triangle to triangle, crossing an edge only if `searchpoint' */ -/* is on the other side of the line containing that edge. After entering */ -/* a triangle, there are two edges by which one can leave that triangle. */ -/* If both edges are valid (`searchpoint' is on the other side of both */ -/* edges), one of the two is chosen by drawing a line perpendicular to */ -/* the entry edge (whose endpoints are `forg' and `fdest') passing through */ -/* `fapex'. Depending on which side of this perpendicular `searchpoint' */ -/* falls on, an exit edge is chosen. */ -/* */ -/* This implementation is empirically faster than the Guibas and Stolfi */ -/* point location routine (which I originally used), which tends to spiral */ -/* in toward its target. */ -/* */ -/* Returns ONVERTEX if the point lies on an existing vertex. `searchtri' */ -/* is a handle whose origin is the existing vertex. */ -/* */ -/* Returns ONEDGE if the point lies on a mesh edge. `searchtri' is a */ -/* handle whose primary edge is the edge on which the point lies. */ -/* */ -/* Returns INTRIANGLE if the point lies strictly within a triangle. */ -/* `searchtri' is a handle on the triangle that contains the point. */ -/* */ -/* Returns OUTSIDE if the point lies outside the mesh. `searchtri' is a */ -/* handle whose primary edge the point is to the right of. This might */ -/* occur when the circumcenter of a triangle falls just slightly outside */ -/* the mesh due to floating-point roundoff error. It also occurs when */ -/* seeking a hole or region point that a foolish user has placed outside */ -/* the mesh. */ -/* */ -/* If `stopatsubsegment' is nonzero, the search will stop if it tries to */ -/* walk through a subsegment, and will return OUTSIDE. */ -/* */ -/* WARNING: This routine is designed for convex triangulations, and will */ -/* not generally work after the holes and concavities have been carved. */ -/* However, it can still be used to find the circumcenter of a triangle, as */ -/* long as the search is begun from the triangle in question. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -enum locateresult preciselocate(struct mesh *m, struct behavior *b, - vertex searchpoint, struct otri *searchtri, - int stopatsubsegment) -#else /* not ANSI_DECLARATORS */ -enum locateresult preciselocate(m, b, searchpoint, searchtri, stopatsubsegment) -struct mesh *m; -struct behavior *b; -vertex searchpoint; -struct otri *searchtri; -int stopatsubsegment; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri backtracktri; - struct osub checkedge; - vertex forg, fdest, fapex; - REAL orgorient, destorient; - int moveleft; - triangle ptr; /* Temporary variable used by sym(). */ - subseg sptr; /* Temporary variable used by tspivot(). */ - - if (b->verbose > 2) { - fprintf(stderr, " Searching for point (%.12g, %.12g).\n", - searchpoint[0], searchpoint[1]); - } - /* Where are we? */ - org(*searchtri, forg); - dest(*searchtri, fdest); - apex(*searchtri, fapex); - while (1) { - if (b->verbose > 2) { - fprintf(stderr, " At (%.12g, %.12g) (%.12g, %.12g) (%.12g, %.12g)\n", - forg[0], forg[1], fdest[0], fdest[1], fapex[0], fapex[1]); - } - /* Check whether the apex is the point we seek. */ - if ((fapex[0] == searchpoint[0]) && (fapex[1] == searchpoint[1])) { - lprevself(*searchtri); - return ONVERTEX; - } - /* Does the point lie on the other side of the line defined by the */ - /* triangle edge opposite the triangle's destination? */ - destorient = counterclockwise(m, b, forg, fapex, searchpoint); - /* Does the point lie on the other side of the line defined by the */ - /* triangle edge opposite the triangle's origin? */ - orgorient = counterclockwise(m, b, fapex, fdest, searchpoint); - if (destorient > 0.0) { - if (orgorient > 0.0) { - /* Move left if the inner product of (fapex - searchpoint) and */ - /* (fdest - forg) is positive. This is equivalent to drawing */ - /* a line perpendicular to the line (forg, fdest) and passing */ - /* through `fapex', and determining which side of this line */ - /* `searchpoint' falls on. */ - moveleft = (fapex[0] - searchpoint[0]) * (fdest[0] - forg[0]) + - (fapex[1] - searchpoint[1]) * (fdest[1] - forg[1]) > 0.0; - } else { - moveleft = 1; - } - } else { - if (orgorient > 0.0) { - moveleft = 0; - } else { - /* The point we seek must be on the boundary of or inside this */ - /* triangle. */ - if (destorient == 0.0) { - lprevself(*searchtri); - return ONEDGE; - } - if (orgorient == 0.0) { - lnextself(*searchtri); - return ONEDGE; - } - return INTRIANGLE; - } - } - - /* Move to another triangle. Leave a trace `backtracktri' in case */ - /* floating-point roundoff or some such bogey causes us to walk */ - /* off a boundary of the triangulation. */ - if (moveleft) { - lprev(*searchtri, backtracktri); - fdest = fapex; - } else { - lnext(*searchtri, backtracktri); - forg = fapex; - } - sym(backtracktri, *searchtri); - - if (m->checksegments && stopatsubsegment) { - /* Check for walking through a subsegment. */ - tspivot(backtracktri, checkedge); - if (checkedge.ss != m->dummysub) { - /* Go back to the last triangle. */ - otricopy(backtracktri, *searchtri); - return OUTSIDE; - } - } - /* Check for walking right out of the triangulation. */ - if (searchtri->tri == m->dummytri) { - /* Go back to the last triangle. */ - otricopy(backtracktri, *searchtri); - return OUTSIDE; - } - - apex(*searchtri, fapex); - } -} - -/*****************************************************************************/ -/* */ -/* locate() Find a triangle or edge containing a given point. */ -/* */ -/* Searching begins from one of: the input `searchtri', a recently */ -/* encountered triangle `recenttri', or from a triangle chosen from a */ -/* random sample. The choice is made by determining which triangle's */ -/* origin is closest to the point we are searching for. Normally, */ -/* `searchtri' should be a handle on the convex hull of the triangulation. */ -/* */ -/* Details on the random sampling method can be found in the Mucke, Saias, */ -/* and Zhu paper cited in the header of this code. */ -/* */ -/* On completion, `searchtri' is a triangle that contains `searchpoint'. */ -/* */ -/* Returns ONVERTEX if the point lies on an existing vertex. `searchtri' */ -/* is a handle whose origin is the existing vertex. */ -/* */ -/* Returns ONEDGE if the point lies on a mesh edge. `searchtri' is a */ -/* handle whose primary edge is the edge on which the point lies. */ -/* */ -/* Returns INTRIANGLE if the point lies strictly within a triangle. */ -/* `searchtri' is a handle on the triangle that contains the point. */ -/* */ -/* Returns OUTSIDE if the point lies outside the mesh. `searchtri' is a */ -/* handle whose primary edge the point is to the right of. This might */ -/* occur when the circumcenter of a triangle falls just slightly outside */ -/* the mesh due to floating-point roundoff error. It also occurs when */ -/* seeking a hole or region point that a foolish user has placed outside */ -/* the mesh. */ -/* */ -/* WARNING: This routine is designed for convex triangulations, and will */ -/* not generally work after the holes and concavities have been carved. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -enum locateresult locate(struct mesh *m, struct behavior *b, - vertex searchpoint, struct otri *searchtri) -#else /* not ANSI_DECLARATORS */ -enum locateresult locate(m, b, searchpoint, searchtri) -struct mesh *m; -struct behavior *b; -vertex searchpoint; -struct otri *searchtri; -#endif /* not ANSI_DECLARATORS */ - -{ - VOID **sampleblock; - triangle *firsttri; - struct otri sampletri; - vertex torg, tdest; - unsigned long alignptr; - REAL searchdist, dist; - REAL ahead; - long sampleblocks, samplesperblock, samplenum; - long triblocks; - long i, j; - triangle ptr; /* Temporary variable used by sym(). */ - - if (b->verbose > 2) { - fprintf(stderr, " Randomly sampling for a triangle near point (%.12g, %.12g).\n", - searchpoint[0], searchpoint[1]); - } - /* Record the distance from the suggested starting triangle to the */ - /* point we seek. */ - org(*searchtri, torg); - searchdist = (searchpoint[0] - torg[0]) * (searchpoint[0] - torg[0]) + - (searchpoint[1] - torg[1]) * (searchpoint[1] - torg[1]); - if (b->verbose > 2) { - fprintf(stderr, " Boundary triangle has origin (%.12g, %.12g).\n", - torg[0], torg[1]); - } - - /* If a recently encountered triangle has been recorded and has not been */ - /* deallocated, test it as a good starting point. */ - if (m->recenttri.tri != (triangle *) NULL) { - if (!deadtri(m->recenttri.tri)) { - org(m->recenttri, torg); - if ((torg[0] == searchpoint[0]) && (torg[1] == searchpoint[1])) { - otricopy(m->recenttri, *searchtri); - return ONVERTEX; - } - dist = (searchpoint[0] - torg[0]) * (searchpoint[0] - torg[0]) + - (searchpoint[1] - torg[1]) * (searchpoint[1] - torg[1]); - if (dist < searchdist) { - otricopy(m->recenttri, *searchtri); - searchdist = dist; - if (b->verbose > 2) { - fprintf(stderr, " Choosing recent triangle with origin (%.12g, %.12g).\n", - torg[0], torg[1]); - } - } - } - } - - /* The number of random samples taken is proportional to the cube root of */ - /* the number of triangles in the mesh. The next bit of code assumes */ - /* that the number of triangles increases monotonically. */ - while (SAMPLEFACTOR * m->samples * m->samples * m->samples < - m->triangles.items) { - m->samples++; - } - triblocks = (m->triangles.maxitems + TRIPERBLOCK - 1) / TRIPERBLOCK; - samplesperblock = (m->samples + triblocks - 1) / triblocks; - sampleblocks = m->samples / samplesperblock; - sampleblock = m->triangles.firstblock; - sampletri.orient = 0; - for (i = 0; i < sampleblocks; i++) { - alignptr = (unsigned long) (sampleblock + 1); - firsttri = (triangle *) (alignptr + (unsigned long) m->triangles.alignbytes - - (alignptr % (unsigned long) m->triangles.alignbytes)); - for (j = 0; j < samplesperblock; j++) { - if (i == triblocks - 1) { - samplenum = randomnation((int) - (m->triangles.maxitems - (i * TRIPERBLOCK))); - } else { - samplenum = randomnation(TRIPERBLOCK); - } - sampletri.tri = (triangle *) - (firsttri + (samplenum * m->triangles.itemwords)); - if (!deadtri(sampletri.tri)) { - org(sampletri, torg); - dist = (searchpoint[0] - torg[0]) * (searchpoint[0] - torg[0]) + - (searchpoint[1] - torg[1]) * (searchpoint[1] - torg[1]); - if (dist < searchdist) { - otricopy(sampletri, *searchtri); - searchdist = dist; - if (b->verbose > 2) { - fprintf(stderr, " Choosing triangle with origin (%.12g, %.12g).\n", - torg[0], torg[1]); - } - } - } - } - sampleblock = (VOID **) *sampleblock; - } - - /* Where are we? */ - org(*searchtri, torg); - dest(*searchtri, tdest); - /* Check the starting triangle's vertices. */ - if ((torg[0] == searchpoint[0]) && (torg[1] == searchpoint[1])) { - return ONVERTEX; - } - if ((tdest[0] == searchpoint[0]) && (tdest[1] == searchpoint[1])) { - lnextself(*searchtri); - return ONVERTEX; - } - /* Orient `searchtri' to fit the preconditions of calling preciselocate(). */ - ahead = counterclockwise(m, b, torg, tdest, searchpoint); - if (ahead < 0.0) { - /* Turn around so that `searchpoint' is to the left of the */ - /* edge specified by `searchtri'. */ - symself(*searchtri); - } else if (ahead == 0.0) { - /* Check if `searchpoint' is between `torg' and `tdest'. */ - if (((torg[0] < searchpoint[0]) == (searchpoint[0] < tdest[0])) && - ((torg[1] < searchpoint[1]) == (searchpoint[1] < tdest[1]))) { - return ONEDGE; - } - } - return preciselocate(m, b, searchpoint, searchtri, 0); -} - -/** **/ -/** **/ -/********* Point location routines end here *********/ - -/********* Mesh transformation routines begin here *********/ -/** **/ -/** **/ - -/*****************************************************************************/ -/* */ -/* insertsubseg() Create a new subsegment and insert it between two */ -/* triangles. */ -/* */ -/* The new subsegment is inserted at the edge described by the handle */ -/* `tri'. Its vertices are properly initialized. The marker `subsegmark' */ -/* is applied to the subsegment and, if appropriate, its vertices. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void insertsubseg(struct mesh *m, struct behavior *b, struct otri *tri, - int subsegmark) -#else /* not ANSI_DECLARATORS */ -void insertsubseg(m, b, tri, subsegmark) -struct mesh *m; -struct behavior *b; -struct otri *tri; /* Edge at which to insert the new subsegment. */ -int subsegmark; /* Marker for the new subsegment. */ -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri oppotri; - struct osub newsubseg; - vertex triorg, tridest; - triangle ptr; /* Temporary variable used by sym(). */ - subseg sptr; /* Temporary variable used by tspivot(). */ - - org(*tri, triorg); - dest(*tri, tridest); - /* Mark vertices if possible. */ - if (vertexmark(triorg) == 0) { - setvertexmark(triorg, subsegmark); - } - if (vertexmark(tridest) == 0) { - setvertexmark(tridest, subsegmark); - } - /* Check if there's already a subsegment here. */ - tspivot(*tri, newsubseg); - if (newsubseg.ss == m->dummysub) { - /* Make new subsegment and initialize its vertices. */ - makesubseg(m, &newsubseg); - setsorg(newsubseg, tridest); - setsdest(newsubseg, triorg); - /* Bond new subsegment to the two triangles it is sandwiched between. */ - /* Note that the facing triangle `oppotri' might be equal to */ - /* `dummytri' (outer space), but the new subsegment is bonded to it */ - /* all the same. */ - tsbond(*tri, newsubseg); - sym(*tri, oppotri); - ssymself(newsubseg); - tsbond(oppotri, newsubseg); - setmark(newsubseg, subsegmark); - if (b->verbose > 2) { - fprintf(stderr, " Inserting new "); - printsubseg(m, b, &newsubseg); - } - } else { - if (mark(newsubseg) == 0) { - setmark(newsubseg, subsegmark); - } - } -} - -/*****************************************************************************/ -/* */ -/* Terminology */ -/* */ -/* A "local transformation" replaces a small set of triangles with another */ -/* set of triangles. This may or may not involve inserting or deleting a */ -/* vertex. */ -/* */ -/* The term "casing" is used to describe the set of triangles that are */ -/* attached to the triangles being transformed, but are not transformed */ -/* themselves. Think of the casing as a fixed hollow structure inside */ -/* which all the action happens. A "casing" is only defined relative to */ -/* a single transformation; each occurrence of a transformation will */ -/* involve a different casing. */ -/* */ -/*****************************************************************************/ - -/*****************************************************************************/ -/* */ -/* flip() Transform two triangles to two different triangles by flipping */ -/* an edge counterclockwise within a quadrilateral. */ -/* */ -/* Imagine the original triangles, abc and bad, oriented so that the */ -/* shared edge ab lies in a horizontal plane, with the vertex b on the left */ -/* and the vertex a on the right. The vertex c lies below the edge, and */ -/* the vertex d lies above the edge. The `flipedge' handle holds the edge */ -/* ab of triangle abc, and is directed left, from vertex a to vertex b. */ -/* */ -/* The triangles abc and bad are deleted and replaced by the triangles cdb */ -/* and dca. The triangles that represent abc and bad are NOT deallocated; */ -/* they are reused for dca and cdb, respectively. Hence, any handles that */ -/* may have held the original triangles are still valid, although not */ -/* directed as they were before. */ -/* */ -/* Upon completion of this routine, the `flipedge' handle holds the edge */ -/* dc of triangle dca, and is directed down, from vertex d to vertex c. */ -/* (Hence, the two triangles have rotated counterclockwise.) */ -/* */ -/* WARNING: This transformation is geometrically valid only if the */ -/* quadrilateral adbc is convex. Furthermore, this transformation is */ -/* valid only if there is not a subsegment between the triangles abc and */ -/* bad. This routine does not check either of these preconditions, and */ -/* it is the responsibility of the calling routine to ensure that they are */ -/* met. If they are not, the streets shall be filled with wailing and */ -/* gnashing of teeth. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void flip(struct mesh *m, struct behavior *b, struct otri *flipedge) -#else /* not ANSI_DECLARATORS */ -void flip(m, b, flipedge) -struct mesh *m; -struct behavior *b; -struct otri *flipedge; /* Handle for the triangle abc. */ -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri botleft, botright; - struct otri topleft, topright; - struct otri top; - struct otri botlcasing, botrcasing; - struct otri toplcasing, toprcasing; - struct osub botlsubseg, botrsubseg; - struct osub toplsubseg, toprsubseg; - vertex leftvertex, rightvertex, botvertex; - vertex farvertex; - triangle ptr; /* Temporary variable used by sym(). */ - subseg sptr; /* Temporary variable used by tspivot(). */ - - /* Identify the vertices of the quadrilateral. */ - org(*flipedge, rightvertex); - dest(*flipedge, leftvertex); - apex(*flipedge, botvertex); - sym(*flipedge, top); -#ifdef SELF_CHECK - if (top.tri == m->dummytri) { - fprintf(stderr, "Internal error in flip(): Attempt to flip on boundary.\n"); - lnextself(*flipedge); - return; - } - if (m->checksegments) { - tspivot(*flipedge, toplsubseg); - if (toplsubseg.ss != m->dummysub) { - fprintf(stderr, "Internal error in flip(): Attempt to flip a segment.\n"); - lnextself(*flipedge); - return; - } - } -#endif /* SELF_CHECK */ - apex(top, farvertex); - - /* Identify the casing of the quadrilateral. */ - lprev(top, topleft); - sym(topleft, toplcasing); - lnext(top, topright); - sym(topright, toprcasing); - lnext(*flipedge, botleft); - sym(botleft, botlcasing); - lprev(*flipedge, botright); - sym(botright, botrcasing); - /* Rotate the quadrilateral one-quarter turn counterclockwise. */ - bond(topleft, botlcasing); - bond(botleft, botrcasing); - bond(botright, toprcasing); - bond(topright, toplcasing); - - if (m->checksegments) { - /* Check for subsegments and rebond them to the quadrilateral. */ - tspivot(topleft, toplsubseg); - tspivot(botleft, botlsubseg); - tspivot(botright, botrsubseg); - tspivot(topright, toprsubseg); - if (toplsubseg.ss == m->dummysub) { - tsdissolve(topright); - } else { - tsbond(topright, toplsubseg); - } - if (botlsubseg.ss == m->dummysub) { - tsdissolve(topleft); - } else { - tsbond(topleft, botlsubseg); - } - if (botrsubseg.ss == m->dummysub) { - tsdissolve(botleft); - } else { - tsbond(botleft, botrsubseg); - } - if (toprsubseg.ss == m->dummysub) { - tsdissolve(botright); - } else { - tsbond(botright, toprsubseg); - } - } - - /* New vertex assignments for the rotated quadrilateral. */ - setorg(*flipedge, farvertex); - setdest(*flipedge, botvertex); - setapex(*flipedge, rightvertex); - setorg(top, botvertex); - setdest(top, farvertex); - setapex(top, leftvertex); - if (b->verbose > 2) { - fprintf(stderr, " Edge flip results in left "); - printtriangle(m, b, &top); - fprintf(stderr, " and right "); - printtriangle(m, b, flipedge); - } -} - -/*****************************************************************************/ -/* */ -/* unflip() Transform two triangles to two different triangles by */ -/* flipping an edge clockwise within a quadrilateral. Reverses */ -/* the flip() operation so that the data structures representing */ -/* the triangles are back where they were before the flip(). */ -/* */ -/* Imagine the original triangles, abc and bad, oriented so that the */ -/* shared edge ab lies in a horizontal plane, with the vertex b on the left */ -/* and the vertex a on the right. The vertex c lies below the edge, and */ -/* the vertex d lies above the edge. The `flipedge' handle holds the edge */ -/* ab of triangle abc, and is directed left, from vertex a to vertex b. */ -/* */ -/* The triangles abc and bad are deleted and replaced by the triangles cdb */ -/* and dca. The triangles that represent abc and bad are NOT deallocated; */ -/* they are reused for cdb and dca, respectively. Hence, any handles that */ -/* may have held the original triangles are still valid, although not */ -/* directed as they were before. */ -/* */ -/* Upon completion of this routine, the `flipedge' handle holds the edge */ -/* cd of triangle cdb, and is directed up, from vertex c to vertex d. */ -/* (Hence, the two triangles have rotated clockwise.) */ -/* */ -/* WARNING: This transformation is geometrically valid only if the */ -/* quadrilateral adbc is convex. Furthermore, this transformation is */ -/* valid only if there is not a subsegment between the triangles abc and */ -/* bad. This routine does not check either of these preconditions, and */ -/* it is the responsibility of the calling routine to ensure that they are */ -/* met. If they are not, the streets shall be filled with wailing and */ -/* gnashing of teeth. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void unflip(struct mesh *m, struct behavior *b, struct otri *flipedge) -#else /* not ANSI_DECLARATORS */ -void unflip(m, b, flipedge) -struct mesh *m; -struct behavior *b; -struct otri *flipedge; /* Handle for the triangle abc. */ -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri botleft, botright; - struct otri topleft, topright; - struct otri top; - struct otri botlcasing, botrcasing; - struct otri toplcasing, toprcasing; - struct osub botlsubseg, botrsubseg; - struct osub toplsubseg, toprsubseg; - vertex leftvertex, rightvertex, botvertex; - vertex farvertex; - triangle ptr; /* Temporary variable used by sym(). */ - subseg sptr; /* Temporary variable used by tspivot(). */ - - /* Identify the vertices of the quadrilateral. */ - org(*flipedge, rightvertex); - dest(*flipedge, leftvertex); - apex(*flipedge, botvertex); - sym(*flipedge, top); -#ifdef SELF_CHECK - if (top.tri == m->dummytri) { - fprintf(stderr, "Internal error in unflip(): Attempt to flip on boundary.\n"); - lnextself(*flipedge); - return; - } - if (m->checksegments) { - tspivot(*flipedge, toplsubseg); - if (toplsubseg.ss != m->dummysub) { - fprintf(stderr, "Internal error in unflip(): Attempt to flip a subsegment.\n"); - lnextself(*flipedge); - return; - } - } -#endif /* SELF_CHECK */ - apex(top, farvertex); - - /* Identify the casing of the quadrilateral. */ - lprev(top, topleft); - sym(topleft, toplcasing); - lnext(top, topright); - sym(topright, toprcasing); - lnext(*flipedge, botleft); - sym(botleft, botlcasing); - lprev(*flipedge, botright); - sym(botright, botrcasing); - /* Rotate the quadrilateral one-quarter turn clockwise. */ - bond(topleft, toprcasing); - bond(botleft, toplcasing); - bond(botright, botlcasing); - bond(topright, botrcasing); - - if (m->checksegments) { - /* Check for subsegments and rebond them to the quadrilateral. */ - tspivot(topleft, toplsubseg); - tspivot(botleft, botlsubseg); - tspivot(botright, botrsubseg); - tspivot(topright, toprsubseg); - if (toplsubseg.ss == m->dummysub) { - tsdissolve(botleft); - } else { - tsbond(botleft, toplsubseg); - } - if (botlsubseg.ss == m->dummysub) { - tsdissolve(botright); - } else { - tsbond(botright, botlsubseg); - } - if (botrsubseg.ss == m->dummysub) { - tsdissolve(topright); - } else { - tsbond(topright, botrsubseg); - } - if (toprsubseg.ss == m->dummysub) { - tsdissolve(topleft); - } else { - tsbond(topleft, toprsubseg); - } - } - - /* New vertex assignments for the rotated quadrilateral. */ - setorg(*flipedge, botvertex); - setdest(*flipedge, farvertex); - setapex(*flipedge, leftvertex); - setorg(top, farvertex); - setdest(top, botvertex); - setapex(top, rightvertex); - if (b->verbose > 2) { - fprintf(stderr, " Edge unflip results in left "); - printtriangle(m, b, flipedge); - fprintf(stderr, " and right "); - printtriangle(m, b, &top); - } -} - -/*****************************************************************************/ -/* */ -/* insertvertex() Insert a vertex into a Delaunay triangulation, */ -/* performing flips as necessary to maintain the Delaunay */ -/* property. */ -/* */ -/* The point `insertvertex' is located. If `searchtri.tri' is not NULL, */ -/* the search for the containing triangle begins from `searchtri'. If */ -/* `searchtri.tri' is NULL, a full point location procedure is called. */ -/* If `insertvertex' is found inside a triangle, the triangle is split into */ -/* three; if `insertvertex' lies on an edge, the edge is split in two, */ -/* thereby splitting the two adjacent triangles into four. Edge flips are */ -/* used to restore the Delaunay property. If `insertvertex' lies on an */ -/* existing vertex, no action is taken, and the value DUPLICATEVERTEX is */ -/* returned. On return, `searchtri' is set to a handle whose origin is the */ -/* existing vertex. */ -/* */ -/* Normally, the parameter `splitseg' is set to NULL, implying that no */ -/* subsegment should be split. In this case, if `insertvertex' is found to */ -/* lie on a segment, no action is taken, and the value VIOLATINGVERTEX is */ -/* returned. On return, `searchtri' is set to a handle whose primary edge */ -/* is the violated subsegment. */ -/* */ -/* If the calling routine wishes to split a subsegment by inserting a */ -/* vertex in it, the parameter `splitseg' should be that subsegment. In */ -/* this case, `searchtri' MUST be the triangle handle reached by pivoting */ -/* from that subsegment; no point location is done. */ -/* */ -/* `segmentflaws' and `triflaws' are flags that indicate whether or not */ -/* there should be checks for the creation of encroached subsegments or bad */ -/* quality triangles. If a newly inserted vertex encroaches upon */ -/* subsegments, these subsegments are added to the list of subsegments to */ -/* be split if `segmentflaws' is set. If bad triangles are created, these */ -/* are added to the queue if `triflaws' is set. */ -/* */ -/* If a duplicate vertex or violated segment does not prevent the vertex */ -/* from being inserted, the return value will be ENCROACHINGVERTEX if the */ -/* vertex encroaches upon a subsegment (and checking is enabled), or */ -/* SUCCESSFULVERTEX otherwise. In either case, `searchtri' is set to a */ -/* handle whose origin is the newly inserted vertex. */ -/* */ -/* insertvertex() does not use flip() for reasons of speed; some */ -/* information can be reused from edge flip to edge flip, like the */ -/* locations of subsegments. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -enum insertvertexresult insertvertex(struct mesh *m, struct behavior *b, - vertex newvertex, struct otri *searchtri, - struct osub *splitseg, - int segmentflaws, int triflaws, - REAL iradius) -#else /* not ANSI_DECLARATORS */ -enum insertvertexresult insertvertex(m, b, newvertex, searchtri, splitseg, - segmentflaws, triflaws, iradius) -struct mesh *m; -struct behavior *b; -vertex newvertex; -struct otri *searchtri; -struct osub *splitseg; -int segmentflaws; -int triflaws; -REAL iradius; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri horiz; - struct otri top; - struct otri botleft, botright; - struct otri topleft, topright; - struct otri newbotleft, newbotright; - struct otri newtopright; - struct otri botlcasing, botrcasing; - struct otri toplcasing, toprcasing; - struct otri testtri; - struct osub botlsubseg, botrsubseg; - struct osub toplsubseg, toprsubseg; - struct osub brokensubseg; - struct osub checksubseg; - struct osub rightsubseg; - struct osub newsubseg; - struct badsubseg *encroached; - struct flipstacker *newflip; - vertex first; - vertex leftvertex, rightvertex, botvertex, topvertex, farvertex; - REAL attrib; - REAL area; - enum insertvertexresult success; - enum locateresult intersect; - int doflip; - int mirrorflag; - int enq; - int i; - triangle ptr; /* Temporary variable used by sym(). */ - subseg sptr; /* Temporary variable used by spivot() and tspivot(). */ - - if (b->verbose > 1) { - fprintf(stderr, " Inserting (%.12g, %.12g).\n", newvertex[0], newvertex[1]); - } - - if (splitseg == (struct osub *) NULL) { - /* Find the location of the vertex to be inserted. Check if a good */ - /* starting triangle has already been provided by the caller. */ - if (searchtri->tri == m->dummytri) { - /* Find a boundary triangle. */ - horiz.tri = m->dummytri; - horiz.orient = 0; - symself(horiz); - /* Search for a triangle containing `newvertex'. */ - intersect = locate(m, b, newvertex, &horiz); - } else { - /* Start searching from the triangle provided by the caller. */ - otricopy(*searchtri, horiz); - intersect = preciselocate(m, b, newvertex, &horiz, 1); - } - } else { - /* The calling routine provides the subsegment in which */ - /* the vertex is inserted. */ - otricopy(*searchtri, horiz); - intersect = ONEDGE; - } - if (intersect == ONVERTEX) { - /* There's already a vertex there. Return in `searchtri' a triangle */ - /* whose origin is the existing vertex. */ - otricopy(horiz, *searchtri); - otricopy(horiz, m->recenttri); - return DUPLICATEVERTEX; - } - if ((intersect == ONEDGE) || (intersect == OUTSIDE)) { - /* The vertex falls on an edge or boundary. */ - if (m->checksegments && (splitseg == (struct osub *) NULL)) { - /* Check whether the vertex falls on a subsegment. */ - tspivot(horiz, brokensubseg); - if (brokensubseg.ss != m->dummysub) { - /* The vertex falls on a subsegment, and hence will not be inserted. */ - if (segmentflaws) { - if (b->nobisect == 2) { - enq = 0; -#ifndef CDT_ONLY - } else if (iradius > 0.0) { - enq = splitpermitted(m, &brokensubseg, iradius); -#endif /* not CDT_ONLY */ - } else { - enq = 1; - } - if (enq && (b->nobisect == 1)) { - /* This subsegment may be split only if it is an */ - /* internal boundary. */ - sym(horiz, testtri); - enq = testtri.tri != m->dummytri; - } - if (enq) { - /* Add the subsegment to the list of encroached subsegments. */ - encroached = (struct badsubseg *) poolalloc(&m->badsubsegs); - encroached->encsubseg = sencode(brokensubseg); - sorg(brokensubseg, encroached->subsegorg); - sdest(brokensubseg, encroached->subsegdest); - if (b->verbose > 2) { - fprintf(stderr, - " Queueing encroached subsegment (%.12g, %.12g) (%.12g, %.12g).\n", - encroached->subsegorg[0], encroached->subsegorg[1], - encroached->subsegdest[0], encroached->subsegdest[1]); - } - } - } - /* Return a handle whose primary edge contains the vertex, */ - /* which has not been inserted. */ - otricopy(horiz, *searchtri); - otricopy(horiz, m->recenttri); - return VIOLATINGVERTEX; - } - } - - /* Insert the vertex on an edge, dividing one triangle into two (if */ - /* the edge lies on a boundary) or two triangles into four. */ - lprev(horiz, botright); - sym(botright, botrcasing); - sym(horiz, topright); - /* Is there a second triangle? (Or does this edge lie on a boundary?) */ - mirrorflag = topright.tri != m->dummytri; - if (mirrorflag) { - lnextself(topright); - sym(topright, toprcasing); - maketriangle(m, b, &newtopright); - } else { - /* Splitting a boundary edge increases the number of boundary edges. */ - m->hullsize++; - } - maketriangle(m, b, &newbotright); - - /* Set the vertices of changed and new triangles. */ - org(horiz, rightvertex); - dest(horiz, leftvertex); - apex(horiz, botvertex); - setorg(newbotright, botvertex); - setdest(newbotright, rightvertex); - setapex(newbotright, newvertex); - setorg(horiz, newvertex); - for (i = 0; i < m->eextras; i++) { - /* Set the element attributes of a new triangle. */ - setelemattribute(newbotright, i, elemattribute(botright, i)); - } - if (b->vararea) { - /* Set the area constraint of a new triangle. */ - setareabound(newbotright, areabound(botright)); - } - if (mirrorflag) { - dest(topright, topvertex); - setorg(newtopright, rightvertex); - setdest(newtopright, topvertex); - setapex(newtopright, newvertex); - setorg(topright, newvertex); - for (i = 0; i < m->eextras; i++) { - /* Set the element attributes of another new triangle. */ - setelemattribute(newtopright, i, elemattribute(topright, i)); - } - if (b->vararea) { - /* Set the area constraint of another new triangle. */ - setareabound(newtopright, areabound(topright)); - } - } - - /* There may be subsegments that need to be bonded */ - /* to the new triangle(s). */ - if (m->checksegments) { - tspivot(botright, botrsubseg); - if (botrsubseg.ss != m->dummysub) { - tsdissolve(botright); - tsbond(newbotright, botrsubseg); - } - if (mirrorflag) { - tspivot(topright, toprsubseg); - if (toprsubseg.ss != m->dummysub) { - tsdissolve(topright); - tsbond(newtopright, toprsubseg); - } - } - } - - /* Bond the new triangle(s) to the surrounding triangles. */ - bond(newbotright, botrcasing); - lprevself(newbotright); - bond(newbotright, botright); - lprevself(newbotright); - if (mirrorflag) { - bond(newtopright, toprcasing); - lnextself(newtopright); - bond(newtopright, topright); - lnextself(newtopright); - bond(newtopright, newbotright); - } - - if (splitseg != (struct osub *) NULL) { - /* Split the subsegment into two. */ - setsdest(*splitseg, newvertex); - ssymself(*splitseg); - spivot(*splitseg, rightsubseg); - insertsubseg(m, b, &newbotright, mark(*splitseg)); - tspivot(newbotright, newsubseg); - sbond(*splitseg, newsubseg); - ssymself(newsubseg); - sbond(newsubseg, rightsubseg); - ssymself(*splitseg); - /* Transfer the subsegment's boundary marker to the vertex */ - /* if required. */ - if (vertexmark(newvertex) == 0) { - setvertexmark(newvertex, mark(*splitseg)); - } - } - - if (m->checkquality) { - poolrestart(&m->flipstackers); - m->lastflip = (struct flipstacker *) poolalloc(&m->flipstackers); - m->lastflip->flippedtri = encode(horiz); - m->lastflip->prevflip = (struct flipstacker *) &insertvertex; - } - -#ifdef SELF_CHECK - if (counterclockwise(m, b, rightvertex, leftvertex, botvertex) < 0.0) { - fprintf(stderr, "Internal error in insertvertex():\n"); - fprintf(stderr, - " Clockwise triangle prior to edge vertex insertion (bottom).\n"); - } - if (mirrorflag) { - if (counterclockwise(m, b, leftvertex, rightvertex, topvertex) < 0.0) { - fprintf(stderr, "Internal error in insertvertex():\n"); - fprintf(stderr, " Clockwise triangle prior to edge vertex insertion (top).\n"); - } - if (counterclockwise(m, b, rightvertex, topvertex, newvertex) < 0.0) { - fprintf(stderr, "Internal error in insertvertex():\n"); - fprintf(stderr, - " Clockwise triangle after edge vertex insertion (top right).\n"); - } - if (counterclockwise(m, b, topvertex, leftvertex, newvertex) < 0.0) { - fprintf(stderr, "Internal error in insertvertex():\n"); - fprintf(stderr, - " Clockwise triangle after edge vertex insertion (top left).\n"); - } - } - if (counterclockwise(m, b, leftvertex, botvertex, newvertex) < 0.0) { - fprintf(stderr, "Internal error in insertvertex():\n"); - fprintf(stderr, - " Clockwise triangle after edge vertex insertion (bottom left).\n"); - } - if (counterclockwise(m, b, botvertex, rightvertex, newvertex) < 0.0) { - fprintf(stderr, "Internal error in insertvertex():\n"); - fprintf(stderr, - " Clockwise triangle after edge vertex insertion (bottom right).\n"); - } -#endif /* SELF_CHECK */ - if (b->verbose > 2) { - fprintf(stderr, " Updating bottom left "); - printtriangle(m, b, &botright); - if (mirrorflag) { - fprintf(stderr, " Updating top left "); - printtriangle(m, b, &topright); - fprintf(stderr, " Creating top right "); - printtriangle(m, b, &newtopright); - } - fprintf(stderr, " Creating bottom right "); - printtriangle(m, b, &newbotright); - } - - /* Position `horiz' on the first edge to check for */ - /* the Delaunay property. */ - lnextself(horiz); - } else { - /* Insert the vertex in a triangle, splitting it into three. */ - lnext(horiz, botleft); - lprev(horiz, botright); - sym(botleft, botlcasing); - sym(botright, botrcasing); - maketriangle(m, b, &newbotleft); - maketriangle(m, b, &newbotright); - - /* Set the vertices of changed and new triangles. */ - org(horiz, rightvertex); - dest(horiz, leftvertex); - apex(horiz, botvertex); - setorg(newbotleft, leftvertex); - setdest(newbotleft, botvertex); - setapex(newbotleft, newvertex); - setorg(newbotright, botvertex); - setdest(newbotright, rightvertex); - setapex(newbotright, newvertex); - setapex(horiz, newvertex); - for (i = 0; i < m->eextras; i++) { - /* Set the element attributes of the new triangles. */ - attrib = elemattribute(horiz, i); - setelemattribute(newbotleft, i, attrib); - setelemattribute(newbotright, i, attrib); - } - if (b->vararea) { - /* Set the area constraint of the new triangles. */ - area = areabound(horiz); - setareabound(newbotleft, area); - setareabound(newbotright, area); - } - - /* There may be subsegments that need to be bonded */ - /* to the new triangles. */ - if (m->checksegments) { - tspivot(botleft, botlsubseg); - if (botlsubseg.ss != m->dummysub) { - tsdissolve(botleft); - tsbond(newbotleft, botlsubseg); - } - tspivot(botright, botrsubseg); - if (botrsubseg.ss != m->dummysub) { - tsdissolve(botright); - tsbond(newbotright, botrsubseg); - } - } - - /* Bond the new triangles to the surrounding triangles. */ - bond(newbotleft, botlcasing); - bond(newbotright, botrcasing); - lnextself(newbotleft); - lprevself(newbotright); - bond(newbotleft, newbotright); - lnextself(newbotleft); - bond(botleft, newbotleft); - lprevself(newbotright); - bond(botright, newbotright); - - if (m->checkquality) { - poolrestart(&m->flipstackers); - m->lastflip = (struct flipstacker *) poolalloc(&m->flipstackers); - m->lastflip->flippedtri = encode(horiz); - m->lastflip->prevflip = (struct flipstacker *) NULL; - } - -#ifdef SELF_CHECK - if (counterclockwise(m, b, rightvertex, leftvertex, botvertex) < 0.0) { - fprintf(stderr, "Internal error in insertvertex():\n"); - fprintf(stderr, " Clockwise triangle prior to vertex insertion.\n"); - } - if (counterclockwise(m, b, rightvertex, leftvertex, newvertex) < 0.0) { - fprintf(stderr, "Internal error in insertvertex():\n"); - fprintf(stderr, " Clockwise triangle after vertex insertion (top).\n"); - } - if (counterclockwise(m, b, leftvertex, botvertex, newvertex) < 0.0) { - fprintf(stderr, "Internal error in insertvertex():\n"); - fprintf(stderr, " Clockwise triangle after vertex insertion (left).\n"); - } - if (counterclockwise(m, b, botvertex, rightvertex, newvertex) < 0.0) { - fprintf(stderr, "Internal error in insertvertex():\n"); - fprintf(stderr, " Clockwise triangle after vertex insertion (right).\n"); - } -#endif /* SELF_CHECK */ - if (b->verbose > 2) { - fprintf(stderr, " Updating top "); - printtriangle(m, b, &horiz); - fprintf(stderr, " Creating left "); - printtriangle(m, b, &newbotleft); - fprintf(stderr, " Creating right "); - printtriangle(m, b, &newbotright); - } - } - - /* The insertion is successful by default, unless an encroached */ - /* subsegment is found. */ - success = SUCCESSFULVERTEX; - /* Circle around the newly inserted vertex, checking each edge opposite */ - /* it for the Delaunay property. Non-Delaunay edges are flipped. */ - /* `horiz' is always the edge being checked. `first' marks where to */ - /* stop circling. */ - org(horiz, first); - rightvertex = first; - dest(horiz, leftvertex); - /* Circle until finished. */ - while (1) { - /* By default, the edge will be flipped. */ - doflip = 1; - - if (m->checksegments) { - /* Check for a subsegment, which cannot be flipped. */ - tspivot(horiz, checksubseg); - if (checksubseg.ss != m->dummysub) { - /* The edge is a subsegment and cannot be flipped. */ - doflip = 0; -#ifndef CDT_ONLY - if (segmentflaws) { - /* Does the new vertex encroach upon this subsegment? */ - if (checkseg4encroach(m, b, &checksubseg, iradius)) { - success = ENCROACHINGVERTEX; - } - } -#endif /* not CDT_ONLY */ - } - } - - if (doflip) { - /* Check if the edge is a boundary edge. */ - sym(horiz, top); - if (top.tri == m->dummytri) { - /* The edge is a boundary edge and cannot be flipped. */ - doflip = 0; - } else { - /* Find the vertex on the other side of the edge. */ - apex(top, farvertex); - /* In the incremental Delaunay triangulation algorithm, any of */ - /* `leftvertex', `rightvertex', and `farvertex' could be vertices */ - /* of the triangular bounding box. These vertices must be */ - /* treated as if they are infinitely distant, even though their */ - /* "coordinates" are not. */ - if ((leftvertex == m->infvertex1) || (leftvertex == m->infvertex2) || - (leftvertex == m->infvertex3)) { - /* `leftvertex' is infinitely distant. Check the convexity of */ - /* the boundary of the triangulation. 'farvertex' might be */ - /* infinite as well, but trust me, this same condition should */ - /* be applied. */ - doflip = counterclockwise(m, b, newvertex, rightvertex, farvertex) - > 0.0; - } else if ((rightvertex == m->infvertex1) || - (rightvertex == m->infvertex2) || - (rightvertex == m->infvertex3)) { - /* `rightvertex' is infinitely distant. Check the convexity of */ - /* the boundary of the triangulation. 'farvertex' might be */ - /* infinite as well, but trust me, this same condition should */ - /* be applied. */ - doflip = counterclockwise(m, b, farvertex, leftvertex, newvertex) - > 0.0; - } else if ((farvertex == m->infvertex1) || - (farvertex == m->infvertex2) || - (farvertex == m->infvertex3)) { - /* `farvertex' is infinitely distant and cannot be inside */ - /* the circumcircle of the triangle `horiz'. */ - doflip = 0; - } else { - /* Test whether the edge is locally Delaunay. */ - doflip = incircle(m, b, leftvertex, newvertex, rightvertex, - farvertex) > 0.0; - } - if (doflip) { - /* We made it! Flip the edge `horiz' by rotating its containing */ - /* quadrilateral (the two triangles adjacent to `horiz'). */ - /* Identify the casing of the quadrilateral. */ - lprev(top, topleft); - sym(topleft, toplcasing); - lnext(top, topright); - sym(topright, toprcasing); - lnext(horiz, botleft); - sym(botleft, botlcasing); - lprev(horiz, botright); - sym(botright, botrcasing); - /* Rotate the quadrilateral one-quarter turn counterclockwise. */ - bond(topleft, botlcasing); - bond(botleft, botrcasing); - bond(botright, toprcasing); - bond(topright, toplcasing); - if (m->checksegments) { - /* Check for subsegments and rebond them to the quadrilateral. */ - tspivot(topleft, toplsubseg); - tspivot(botleft, botlsubseg); - tspivot(botright, botrsubseg); - tspivot(topright, toprsubseg); - if (toplsubseg.ss == m->dummysub) { - tsdissolve(topright); - } else { - tsbond(topright, toplsubseg); - } - if (botlsubseg.ss == m->dummysub) { - tsdissolve(topleft); - } else { - tsbond(topleft, botlsubseg); - } - if (botrsubseg.ss == m->dummysub) { - tsdissolve(botleft); - } else { - tsbond(botleft, botrsubseg); - } - if (toprsubseg.ss == m->dummysub) { - tsdissolve(botright); - } else { - tsbond(botright, toprsubseg); - } - } - /* New vertex assignments for the rotated quadrilateral. */ - setorg(horiz, farvertex); - setdest(horiz, newvertex); - setapex(horiz, rightvertex); - setorg(top, newvertex); - setdest(top, farvertex); - setapex(top, leftvertex); - for (i = 0; i < m->eextras; i++) { - /* Take the average of the two triangles' attributes. */ - attrib = 0.5 * (elemattribute(top, i) + elemattribute(horiz, i)); - setelemattribute(top, i, attrib); - setelemattribute(horiz, i, attrib); - } - if (b->vararea) { - if ((areabound(top) <= 0.0) || (areabound(horiz) <= 0.0)) { - area = -1.0; - } else { - /* Take the average of the two triangles' area constraints. */ - /* This prevents small area constraints from migrating a */ - /* long, long way from their original location due to flips. */ - area = 0.5 * (areabound(top) + areabound(horiz)); - } - setareabound(top, area); - setareabound(horiz, area); - } - - if (m->checkquality) { - newflip = (struct flipstacker *) poolalloc(&m->flipstackers); - newflip->flippedtri = encode(horiz); - newflip->prevflip = m->lastflip; - m->lastflip = newflip; - } - -#ifdef SELF_CHECK - if (newvertex != (vertex) NULL) { - if (counterclockwise(m, b, leftvertex, newvertex, rightvertex) < - 0.0) { - fprintf(stderr, "Internal error in insertvertex():\n"); - fprintf(stderr, " Clockwise triangle prior to edge flip (bottom).\n"); - } - /* The following test has been removed because constrainededge() */ - /* sometimes generates inverted triangles that insertvertex() */ - /* removes. */ -/* - if (counterclockwise(m, b, rightvertex, farvertex, leftvertex) < - 0.0) { - fprintf(stderr, "Internal error in insertvertex():\n"); - fprintf(stderr, " Clockwise triangle prior to edge flip (top).\n"); - } -*/ - if (counterclockwise(m, b, farvertex, leftvertex, newvertex) < - 0.0) { - fprintf(stderr, "Internal error in insertvertex():\n"); - fprintf(stderr, " Clockwise triangle after edge flip (left).\n"); - } - if (counterclockwise(m, b, newvertex, rightvertex, farvertex) < - 0.0) { - fprintf(stderr, "Internal error in insertvertex():\n"); - fprintf(stderr, " Clockwise triangle after edge flip (right).\n"); - } - } -#endif /* SELF_CHECK */ - if (b->verbose > 2) { - fprintf(stderr, " Edge flip results in left "); - lnextself(topleft); - printtriangle(m, b, &topleft); - fprintf(stderr, " and right "); - printtriangle(m, b, &horiz); - } - /* On the next iterations, consider the two edges that were */ - /* exposed (this is, are now visible to the newly inserted */ - /* vertex) by the edge flip. */ - lprevself(horiz); - leftvertex = farvertex; - } - } - } - if (!doflip) { - /* The handle `horiz' is accepted as locally Delaunay. */ -#ifndef CDT_ONLY - if (triflaws) { - /* Check the triangle `horiz' for quality. */ - testtriangle(m, b, &horiz); - } -#endif /* not CDT_ONLY */ - /* Look for the next edge around the newly inserted vertex. */ - lnextself(horiz); - sym(horiz, testtri); - /* Check for finishing a complete revolution about the new vertex, or */ - /* falling outside of the triangulation. The latter will happen */ - /* when a vertex is inserted at a boundary. */ - if ((leftvertex == first) || (testtri.tri == m->dummytri)) { - /* We're done. Return a triangle whose origin is the new vertex. */ - lnext(horiz, *searchtri); - lnext(horiz, m->recenttri); - return success; - } - /* Finish finding the next edge around the newly inserted vertex. */ - lnext(testtri, horiz); - rightvertex = leftvertex; - dest(horiz, leftvertex); - } - } -} - -/*****************************************************************************/ -/* */ -/* triangulatepolygon() Find the Delaunay triangulation of a polygon that */ -/* has a certain "nice" shape. This includes the */ -/* polygons that result from deletion of a vertex or */ -/* insertion of a segment. */ -/* */ -/* This is a conceptually difficult routine. The starting assumption is */ -/* that we have a polygon with n sides. n - 1 of these sides are currently */ -/* represented as edges in the mesh. One side, called the "base", need not */ -/* be. */ -/* */ -/* Inside the polygon is a structure I call a "fan", consisting of n - 1 */ -/* triangles that share a common origin. For each of these triangles, the */ -/* edge opposite the origin is one of the sides of the polygon. The */ -/* primary edge of each triangle is the edge directed from the origin to */ -/* the destination; note that this is not the same edge that is a side of */ -/* the polygon. `firstedge' is the primary edge of the first triangle. */ -/* From there, the triangles follow in counterclockwise order about the */ -/* polygon, until `lastedge', the primary edge of the last triangle. */ -/* `firstedge' and `lastedge' are probably connected to other triangles */ -/* beyond the extremes of the fan, but their identity is not important, as */ -/* long as the fan remains connected to them. */ -/* */ -/* Imagine the polygon oriented so that its base is at the bottom. This */ -/* puts `firstedge' on the far right, and `lastedge' on the far left. */ -/* The right vertex of the base is the destination of `firstedge', and the */ -/* left vertex of the base is the apex of `lastedge'. */ -/* */ -/* The challenge now is to find the right sequence of edge flips to */ -/* transform the fan into a Delaunay triangulation of the polygon. Each */ -/* edge flip effectively removes one triangle from the fan, committing it */ -/* to the polygon. The resulting polygon has one fewer edge. If `doflip' */ -/* is set, the final flip will be performed, resulting in a fan of one */ -/* (useless?) triangle. If `doflip' is not set, the final flip is not */ -/* performed, resulting in a fan of two triangles, and an unfinished */ -/* triangular polygon that is not yet filled out with a single triangle. */ -/* On completion of the routine, `lastedge' is the last remaining triangle, */ -/* or the leftmost of the last two. */ -/* */ -/* Although the flips are performed in the order described above, the */ -/* decisions about what flips to perform are made in precisely the reverse */ -/* order. The recursive triangulatepolygon() procedure makes a decision, */ -/* uses up to two recursive calls to triangulate the "subproblems" */ -/* (polygons with fewer edges), and then performs an edge flip. */ -/* */ -/* The "decision" it makes is which vertex of the polygon should be */ -/* connected to the base. This decision is made by testing every possible */ -/* vertex. Once the best vertex is found, the two edges that connect this */ -/* vertex to the base become the bases for two smaller polygons. These */ -/* are triangulated recursively. Unfortunately, this approach can take */ -/* O(n^2) time not only in the worst case, but in many common cases. It's */ -/* rarely a big deal for vertex deletion, where n is rarely larger than */ -/* ten, but it could be a big deal for segment insertion, especially if */ -/* there's a lot of long segments that each cut many triangles. I ought to */ -/* code a faster algorithm some day. */ -/* */ -/* The `edgecount' parameter is the number of sides of the polygon, */ -/* including its base. `triflaws' is a flag that determines whether the */ -/* new triangles should be tested for quality, and enqueued if they are */ -/* bad. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void triangulatepolygon(struct mesh *m, struct behavior *b, - struct otri *firstedge, struct otri *lastedge, - int edgecount, int doflip, int triflaws) -#else /* not ANSI_DECLARATORS */ -void triangulatepolygon(m, b, firstedge, lastedge, edgecount, doflip, triflaws) -struct mesh *m; -struct behavior *b; -struct otri *firstedge; -struct otri *lastedge; -int edgecount; -int doflip; -int triflaws; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri testtri; - struct otri besttri; - struct otri tempedge; - vertex leftbasevertex, rightbasevertex; - vertex testvertex; - vertex bestvertex; - int bestnumber; - int i; - triangle ptr; /* Temporary variable used by sym(), onext(), and oprev(). */ - - /* Identify the base vertices. */ - apex(*lastedge, leftbasevertex); - dest(*firstedge, rightbasevertex); - if (b->verbose > 2) { - fprintf(stderr, " Triangulating interior polygon at edge\n"); - fprintf(stderr, " (%.12g, %.12g) (%.12g, %.12g)\n", leftbasevertex[0], - leftbasevertex[1], rightbasevertex[0], rightbasevertex[1]); - } - /* Find the best vertex to connect the base to. */ - onext(*firstedge, besttri); - dest(besttri, bestvertex); - otricopy(besttri, testtri); - bestnumber = 1; - for (i = 2; i <= edgecount - 2; i++) { - onextself(testtri); - dest(testtri, testvertex); - /* Is this a better vertex? */ - if (incircle(m, b, leftbasevertex, rightbasevertex, bestvertex, - testvertex) > 0.0) { - otricopy(testtri, besttri); - bestvertex = testvertex; - bestnumber = i; - } - } - if (b->verbose > 2) { - fprintf(stderr, " Connecting edge to (%.12g, %.12g)\n", bestvertex[0], - bestvertex[1]); - } - if (bestnumber > 1) { - /* Recursively triangulate the smaller polygon on the right. */ - oprev(besttri, tempedge); - triangulatepolygon(m, b, firstedge, &tempedge, bestnumber + 1, 1, - triflaws); - } - if (bestnumber < edgecount - 2) { - /* Recursively triangulate the smaller polygon on the left. */ - sym(besttri, tempedge); - triangulatepolygon(m, b, &besttri, lastedge, edgecount - bestnumber, 1, - triflaws); - /* Find `besttri' again; it may have been lost to edge flips. */ - sym(tempedge, besttri); - } - if (doflip) { - /* Do one final edge flip. */ - flip(m, b, &besttri); -#ifndef CDT_ONLY - if (triflaws) { - /* Check the quality of the newly committed triangle. */ - sym(besttri, testtri); - testtriangle(m, b, &testtri); - } -#endif /* not CDT_ONLY */ - } - /* Return the base triangle. */ - otricopy(besttri, *lastedge); -} - -/*****************************************************************************/ -/* */ -/* deletevertex() Delete a vertex from a Delaunay triangulation, ensuring */ -/* that the triangulation remains Delaunay. */ -/* */ -/* The origin of `deltri' is deleted. The union of the triangles adjacent */ -/* to this vertex is a polygon, for which the Delaunay triangulation is */ -/* found. Two triangles are removed from the mesh. */ -/* */ -/* Only interior vertices that do not lie on segments or boundaries may be */ -/* deleted. */ -/* */ -/*****************************************************************************/ - -#ifndef CDT_ONLY - -#ifdef ANSI_DECLARATORS -void deletevertex(struct mesh *m, struct behavior *b, struct otri *deltri) -#else /* not ANSI_DECLARATORS */ -void deletevertex(m, b, deltri) -struct mesh *m; -struct behavior *b; -struct otri *deltri; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri countingtri; - struct otri firstedge, lastedge; - struct otri deltriright; - struct otri lefttri, righttri; - struct otri leftcasing, rightcasing; - struct osub leftsubseg, rightsubseg; - vertex delvertex; - vertex neworg; - int edgecount; - triangle ptr; /* Temporary variable used by sym(), onext(), and oprev(). */ - subseg sptr; /* Temporary variable used by tspivot(). */ - - org(*deltri, delvertex); - if (b->verbose > 1) { - fprintf(stderr, " Deleting (%.12g, %.12g).\n", delvertex[0], delvertex[1]); - } - vertexdealloc(m, delvertex); - - /* Count the degree of the vertex being deleted. */ - onext(*deltri, countingtri); - edgecount = 1; - while (!otriequal(*deltri, countingtri)) { -#ifdef SELF_CHECK - if (countingtri.tri == m->dummytri) { - fprintf(stderr, "Internal error in deletevertex():\n"); - fprintf(stderr, " Attempt to delete boundary vertex.\n"); - internalerror(); - } -#endif /* SELF_CHECK */ - edgecount++; - onextself(countingtri); - } - -#ifdef SELF_CHECK - if (edgecount < 3) { - fprintf(stderr, "Internal error in deletevertex():\n Vertex has degree %d.\n", - edgecount); - internalerror(); - } -#endif /* SELF_CHECK */ - if (edgecount > 3) { - /* Triangulate the polygon defined by the union of all triangles */ - /* adjacent to the vertex being deleted. Check the quality of */ - /* the resulting triangles. */ - onext(*deltri, firstedge); - oprev(*deltri, lastedge); - triangulatepolygon(m, b, &firstedge, &lastedge, edgecount, 0, - !b->nobisect); - } - /* Splice out two triangles. */ - lprev(*deltri, deltriright); - dnext(*deltri, lefttri); - sym(lefttri, leftcasing); - oprev(deltriright, righttri); - sym(righttri, rightcasing); - bond(*deltri, leftcasing); - bond(deltriright, rightcasing); - tspivot(lefttri, leftsubseg); - if (leftsubseg.ss != m->dummysub) { - tsbond(*deltri, leftsubseg); - } - tspivot(righttri, rightsubseg); - if (rightsubseg.ss != m->dummysub) { - tsbond(deltriright, rightsubseg); - } - - /* Set the new origin of `deltri' and check its quality. */ - org(lefttri, neworg); - setorg(*deltri, neworg); - if (!b->nobisect) { - testtriangle(m, b, deltri); - } - - /* Delete the two spliced-out triangles. */ - triangledealloc(m, lefttri.tri); - triangledealloc(m, righttri.tri); -} - -#endif /* not CDT_ONLY */ - -/*****************************************************************************/ -/* */ -/* undovertex() Undo the most recent vertex insertion. */ -/* */ -/* Walks through the list of transformations (flips and a vertex insertion) */ -/* in the reverse of the order in which they were done, and undoes them. */ -/* The inserted vertex is removed from the triangulation and deallocated. */ -/* Two triangles (possibly just one) are also deallocated. */ -/* */ -/*****************************************************************************/ - -#ifndef CDT_ONLY - -#ifdef ANSI_DECLARATORS -void undovertex(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -void undovertex(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri fliptri; - struct otri botleft, botright, topright; - struct otri botlcasing, botrcasing, toprcasing; - struct otri gluetri; - struct osub botlsubseg, botrsubseg, toprsubseg; - vertex botvertex, rightvertex; - triangle ptr; /* Temporary variable used by sym(). */ - subseg sptr; /* Temporary variable used by tspivot(). */ - - /* Walk through the list of transformations (flips and a vertex insertion) */ - /* in the reverse of the order in which they were done, and undo them. */ - while (m->lastflip != (struct flipstacker *) NULL) { - /* Find a triangle involved in the last unreversed transformation. */ - decode(m->lastflip->flippedtri, fliptri); - - /* We are reversing one of three transformations: a trisection of one */ - /* triangle into three (by inserting a vertex in the triangle), a */ - /* bisection of two triangles into four (by inserting a vertex in an */ - /* edge), or an edge flip. */ - if (m->lastflip->prevflip == (struct flipstacker *) NULL) { - /* Restore a triangle that was split into three triangles, */ - /* so it is again one triangle. */ - dprev(fliptri, botleft); - lnextself(botleft); - onext(fliptri, botright); - lprevself(botright); - sym(botleft, botlcasing); - sym(botright, botrcasing); - dest(botleft, botvertex); - - setapex(fliptri, botvertex); - lnextself(fliptri); - bond(fliptri, botlcasing); - tspivot(botleft, botlsubseg); - tsbond(fliptri, botlsubseg); - lnextself(fliptri); - bond(fliptri, botrcasing); - tspivot(botright, botrsubseg); - tsbond(fliptri, botrsubseg); - - /* Delete the two spliced-out triangles. */ - triangledealloc(m, botleft.tri); - triangledealloc(m, botright.tri); - } else if (m->lastflip->prevflip == (struct flipstacker *) &insertvertex) { - /* Restore two triangles that were split into four triangles, */ - /* so they are again two triangles. */ - lprev(fliptri, gluetri); - sym(gluetri, botright); - lnextself(botright); - sym(botright, botrcasing); - dest(botright, rightvertex); - - setorg(fliptri, rightvertex); - bond(gluetri, botrcasing); - tspivot(botright, botrsubseg); - tsbond(gluetri, botrsubseg); - - /* Delete the spliced-out triangle. */ - triangledealloc(m, botright.tri); - - sym(fliptri, gluetri); - if (gluetri.tri != m->dummytri) { - lnextself(gluetri); - dnext(gluetri, topright); - sym(topright, toprcasing); - - setorg(gluetri, rightvertex); - bond(gluetri, toprcasing); - tspivot(topright, toprsubseg); - tsbond(gluetri, toprsubseg); - - /* Delete the spliced-out triangle. */ - triangledealloc(m, topright.tri); - } - - /* This is the end of the list, sneakily encoded. */ - m->lastflip->prevflip = (struct flipstacker *) NULL; - } else { - /* Undo an edge flip. */ - unflip(m, b, &fliptri); - } - - /* Go on and process the next transformation. */ - m->lastflip = m->lastflip->prevflip; - } -} - -#endif /* not CDT_ONLY */ - -/** **/ -/** **/ -/********* Mesh transformation routines end here *********/ - -/********* Divide-and-conquer Delaunay triangulation begins here *********/ -/** **/ -/** **/ - -/*****************************************************************************/ -/* */ -/* The divide-and-conquer bounding box */ -/* */ -/* I originally implemented the divide-and-conquer and incremental Delaunay */ -/* triangulations using the edge-based data structure presented by Guibas */ -/* and Stolfi. Switching to a triangle-based data structure doubled the */ -/* speed. However, I had to think of a few extra tricks to maintain the */ -/* elegance of the original algorithms. */ -/* */ -/* The "bounding box" used by my variant of the divide-and-conquer */ -/* algorithm uses one triangle for each edge of the convex hull of the */ -/* triangulation. These bounding triangles all share a common apical */ -/* vertex, which is represented by NULL and which represents nothing. */ -/* The bounding triangles are linked in a circular fan about this NULL */ -/* vertex, and the edges on the convex hull of the triangulation appear */ -/* opposite the NULL vertex. You might find it easiest to imagine that */ -/* the NULL vertex is a point in 3D space behind the center of the */ -/* triangulation, and that the bounding triangles form a sort of cone. */ -/* */ -/* This bounding box makes it easy to represent degenerate cases. For */ -/* instance, the triangulation of two vertices is a single edge. This edge */ -/* is represented by two bounding box triangles, one on each "side" of the */ -/* edge. These triangles are also linked together in a fan about the NULL */ -/* vertex. */ -/* */ -/* The bounding box also makes it easy to traverse the convex hull, as the */ -/* divide-and-conquer algorithm needs to do. */ -/* */ -/*****************************************************************************/ - -/*****************************************************************************/ -/* */ -/* vertexsort() Sort an array of vertices by x-coordinate, using the */ -/* y-coordinate as a secondary key. */ -/* */ -/* Uses quicksort. Randomized O(n log n) time. No, I did not make any of */ -/* the usual quicksort mistakes. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void vertexsort(vertex *sortarray, int arraysize) -#else /* not ANSI_DECLARATORS */ -void vertexsort(sortarray, arraysize) -vertex *sortarray; -int arraysize; -#endif /* not ANSI_DECLARATORS */ - -{ - int left, right; - int pivot; - REAL pivotx, pivoty; - vertex temp; - - if (arraysize == 2) { - /* Recursive base case. */ - if ((sortarray[0][0] > sortarray[1][0]) || - ((sortarray[0][0] == sortarray[1][0]) && - (sortarray[0][1] > sortarray[1][1]))) { - temp = sortarray[1]; - sortarray[1] = sortarray[0]; - sortarray[0] = temp; - } - return; - } - /* Choose a random pivot to split the array. */ - pivot = (int) randomnation(arraysize); - pivotx = sortarray[pivot][0]; - pivoty = sortarray[pivot][1]; - /* Split the array. */ - left = -1; - right = arraysize; - while (left < right) { - /* Search for a vertex whose x-coordinate is too large for the left. */ - do { - left++; - } while ((left <= right) && ((sortarray[left][0] < pivotx) || - ((sortarray[left][0] == pivotx) && - (sortarray[left][1] < pivoty)))); - /* Search for a vertex whose x-coordinate is too small for the right. */ - do { - right--; - } while ((left <= right) && ((sortarray[right][0] > pivotx) || - ((sortarray[right][0] == pivotx) && - (sortarray[right][1] > pivoty)))); - if (left < right) { - /* Swap the left and right vertices. */ - temp = sortarray[left]; - sortarray[left] = sortarray[right]; - sortarray[right] = temp; - } - } - if (left > 1) { - /* Recursively sort the left subset. */ - vertexsort(sortarray, left); - } - if (right < arraysize - 2) { - /* Recursively sort the right subset. */ - vertexsort(&sortarray[right + 1], arraysize - right - 1); - } -} - -/*****************************************************************************/ -/* */ -/* vertexmedian() An order statistic algorithm, almost. Shuffles an */ -/* array of vertices so that the first `median' vertices */ -/* occur lexicographically before the remaining vertices. */ -/* */ -/* Uses the x-coordinate as the primary key if axis == 0; the y-coordinate */ -/* if axis == 1. Very similar to the vertexsort() procedure, but runs in */ -/* randomized linear time. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void vertexmedian(vertex *sortarray, int arraysize, int median, int axis) -#else /* not ANSI_DECLARATORS */ -void vertexmedian(sortarray, arraysize, median, axis) -vertex *sortarray; -int arraysize; -int median; -int axis; -#endif /* not ANSI_DECLARATORS */ - -{ - int left, right; - int pivot; - REAL pivot1, pivot2; - vertex temp; - - if (arraysize == 2) { - /* Recursive base case. */ - if ((sortarray[0][axis] > sortarray[1][axis]) || - ((sortarray[0][axis] == sortarray[1][axis]) && - (sortarray[0][1 - axis] > sortarray[1][1 - axis]))) { - temp = sortarray[1]; - sortarray[1] = sortarray[0]; - sortarray[0] = temp; - } - return; - } - /* Choose a random pivot to split the array. */ - pivot = (int) randomnation(arraysize); - pivot1 = sortarray[pivot][axis]; - pivot2 = sortarray[pivot][1 - axis]; - /* Split the array. */ - left = -1; - right = arraysize; - while (left < right) { - /* Search for a vertex whose x-coordinate is too large for the left. */ - do { - left++; - } while ((left <= right) && ((sortarray[left][axis] < pivot1) || - ((sortarray[left][axis] == pivot1) && - (sortarray[left][1 - axis] < pivot2)))); - /* Search for a vertex whose x-coordinate is too small for the right. */ - do { - right--; - } while ((left <= right) && ((sortarray[right][axis] > pivot1) || - ((sortarray[right][axis] == pivot1) && - (sortarray[right][1 - axis] > pivot2)))); - if (left < right) { - /* Swap the left and right vertices. */ - temp = sortarray[left]; - sortarray[left] = sortarray[right]; - sortarray[right] = temp; - } - } - /* Unlike in vertexsort(), at most one of the following */ - /* conditionals is true. */ - if (left > median) { - /* Recursively shuffle the left subset. */ - vertexmedian(sortarray, left, median, axis); - } - if (right < median - 1) { - /* Recursively shuffle the right subset. */ - vertexmedian(&sortarray[right + 1], arraysize - right - 1, - median - right - 1, axis); - } -} - -/*****************************************************************************/ -/* */ -/* alternateaxes() Sorts the vertices as appropriate for the divide-and- */ -/* conquer algorithm with alternating cuts. */ -/* */ -/* Partitions by x-coordinate if axis == 0; by y-coordinate if axis == 1. */ -/* For the base case, subsets containing only two or three vertices are */ -/* always sorted by x-coordinate. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void alternateaxes(vertex *sortarray, int arraysize, int axis) -#else /* not ANSI_DECLARATORS */ -void alternateaxes(sortarray, arraysize, axis) -vertex *sortarray; -int arraysize; -int axis; -#endif /* not ANSI_DECLARATORS */ - -{ - int divider; - - divider = arraysize >> 1; - if (arraysize <= 3) { - /* Recursive base case: subsets of two or three vertices will be */ - /* handled specially, and should always be sorted by x-coordinate. */ - axis = 0; - } - /* Partition with a horizontal or vertical cut. */ - vertexmedian(sortarray, arraysize, divider, axis); - /* Recursively partition the subsets with a cross cut. */ - if (arraysize - divider >= 2) { - if (divider >= 2) { - alternateaxes(sortarray, divider, 1 - axis); - } - alternateaxes(&sortarray[divider], arraysize - divider, 1 - axis); - } -} - -/*****************************************************************************/ -/* */ -/* mergehulls() Merge two adjacent Delaunay triangulations into a */ -/* single Delaunay triangulation. */ -/* */ -/* This is similar to the algorithm given by Guibas and Stolfi, but uses */ -/* a triangle-based, rather than edge-based, data structure. */ -/* */ -/* The algorithm walks up the gap between the two triangulations, knitting */ -/* them together. As they are merged, some of their bounding triangles */ -/* are converted into real triangles of the triangulation. The procedure */ -/* pulls each hull's bounding triangles apart, then knits them together */ -/* like the teeth of two gears. The Delaunay property determines, at each */ -/* step, whether the next "tooth" is a bounding triangle of the left hull */ -/* or the right. When a bounding triangle becomes real, its apex is */ -/* changed from NULL to a real vertex. */ -/* */ -/* Only two new triangles need to be allocated. These become new bounding */ -/* triangles at the top and bottom of the seam. They are used to connect */ -/* the remaining bounding triangles (those that have not been converted */ -/* into real triangles) into a single fan. */ -/* */ -/* On entry, `farleft' and `innerleft' are bounding triangles of the left */ -/* triangulation. The origin of `farleft' is the leftmost vertex, and */ -/* the destination of `innerleft' is the rightmost vertex of the */ -/* triangulation. Similarly, `innerright' and `farright' are bounding */ -/* triangles of the right triangulation. The origin of `innerright' and */ -/* destination of `farright' are the leftmost and rightmost vertices. */ -/* */ -/* On completion, the origin of `farleft' is the leftmost vertex of the */ -/* merged triangulation, and the destination of `farright' is the rightmost */ -/* vertex. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void mergehulls(struct mesh *m, struct behavior *b, struct otri *farleft, - struct otri *innerleft, struct otri *innerright, - struct otri *farright, int axis) -#else /* not ANSI_DECLARATORS */ -void mergehulls(m, b, farleft, innerleft, innerright, farright, axis) -struct mesh *m; -struct behavior *b; -struct otri *farleft; -struct otri *innerleft; -struct otri *innerright; -struct otri *farright; -int axis; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri leftcand, rightcand; - struct otri baseedge; - struct otri nextedge; - struct otri sidecasing, topcasing, outercasing; - struct otri checkedge; - vertex innerleftdest; - vertex innerrightorg; - vertex innerleftapex, innerrightapex; - vertex farleftpt, farrightpt; - vertex farleftapex, farrightapex; - vertex lowerleft, lowerright; - vertex upperleft, upperright; - vertex nextapex; - vertex checkvertex; - int changemade; - int badedge; - int leftfinished, rightfinished; - triangle ptr; /* Temporary variable used by sym(). */ - - dest(*innerleft, innerleftdest); - apex(*innerleft, innerleftapex); - org(*innerright, innerrightorg); - apex(*innerright, innerrightapex); - /* Special treatment for horizontal cuts. */ - if (b->dwyer && (axis == 1)) { - org(*farleft, farleftpt); - apex(*farleft, farleftapex); - dest(*farright, farrightpt); - apex(*farright, farrightapex); - /* The pointers to the extremal vertices are shifted to point to the */ - /* topmost and bottommost vertex of each hull, rather than the */ - /* leftmost and rightmost vertices. */ - while (farleftapex[1] < farleftpt[1]) { - lnextself(*farleft); - symself(*farleft); - farleftpt = farleftapex; - apex(*farleft, farleftapex); - } - sym(*innerleft, checkedge); - apex(checkedge, checkvertex); - while (checkvertex[1] > innerleftdest[1]) { - lnext(checkedge, *innerleft); - innerleftapex = innerleftdest; - innerleftdest = checkvertex; - sym(*innerleft, checkedge); - apex(checkedge, checkvertex); - } - while (innerrightapex[1] < innerrightorg[1]) { - lnextself(*innerright); - symself(*innerright); - innerrightorg = innerrightapex; - apex(*innerright, innerrightapex); - } - sym(*farright, checkedge); - apex(checkedge, checkvertex); - while (checkvertex[1] > farrightpt[1]) { - lnext(checkedge, *farright); - farrightapex = farrightpt; - farrightpt = checkvertex; - sym(*farright, checkedge); - apex(checkedge, checkvertex); - } - } - /* Find a line tangent to and below both hulls. */ - do { - changemade = 0; - /* Make innerleftdest the "bottommost" vertex of the left hull. */ - if (counterclockwise(m, b, innerleftdest, innerleftapex, innerrightorg) > - 0.0) { - lprevself(*innerleft); - symself(*innerleft); - innerleftdest = innerleftapex; - apex(*innerleft, innerleftapex); - changemade = 1; - } - /* Make innerrightorg the "bottommost" vertex of the right hull. */ - if (counterclockwise(m, b, innerrightapex, innerrightorg, innerleftdest) > - 0.0) { - lnextself(*innerright); - symself(*innerright); - innerrightorg = innerrightapex; - apex(*innerright, innerrightapex); - changemade = 1; - } - } while (changemade); - /* Find the two candidates to be the next "gear tooth." */ - sym(*innerleft, leftcand); - sym(*innerright, rightcand); - /* Create the bottom new bounding triangle. */ - maketriangle(m, b, &baseedge); - /* Connect it to the bounding boxes of the left and right triangulations. */ - bond(baseedge, *innerleft); - lnextself(baseedge); - bond(baseedge, *innerright); - lnextself(baseedge); - setorg(baseedge, innerrightorg); - setdest(baseedge, innerleftdest); - /* Apex is intentionally left NULL. */ - if (b->verbose > 2) { - fprintf(stderr, " Creating base bounding "); - printtriangle(m, b, &baseedge); - } - /* Fix the extreme triangles if necessary. */ - org(*farleft, farleftpt); - if (innerleftdest == farleftpt) { - lnext(baseedge, *farleft); - } - dest(*farright, farrightpt); - if (innerrightorg == farrightpt) { - lprev(baseedge, *farright); - } - /* The vertices of the current knitting edge. */ - lowerleft = innerleftdest; - lowerright = innerrightorg; - /* The candidate vertices for knitting. */ - apex(leftcand, upperleft); - apex(rightcand, upperright); - /* Walk up the gap between the two triangulations, knitting them together. */ - while (1) { - /* Have we reached the top? (This isn't quite the right question, */ - /* because even though the left triangulation might seem finished now, */ - /* moving up on the right triangulation might reveal a new vertex of */ - /* the left triangulation. And vice-versa.) */ - leftfinished = counterclockwise(m, b, upperleft, lowerleft, lowerright) <= - 0.0; - rightfinished = counterclockwise(m, b, upperright, lowerleft, lowerright) - <= 0.0; - if (leftfinished && rightfinished) { - /* Create the top new bounding triangle. */ - maketriangle(m, b, &nextedge); - setorg(nextedge, lowerleft); - setdest(nextedge, lowerright); - /* Apex is intentionally left NULL. */ - /* Connect it to the bounding boxes of the two triangulations. */ - bond(nextedge, baseedge); - lnextself(nextedge); - bond(nextedge, rightcand); - lnextself(nextedge); - bond(nextedge, leftcand); - if (b->verbose > 2) { - fprintf(stderr, " Creating top bounding "); - printtriangle(m, b, &nextedge); - } - /* Special treatment for horizontal cuts. */ - if (b->dwyer && (axis == 1)) { - org(*farleft, farleftpt); - apex(*farleft, farleftapex); - dest(*farright, farrightpt); - apex(*farright, farrightapex); - sym(*farleft, checkedge); - apex(checkedge, checkvertex); - /* The pointers to the extremal vertices are restored to the */ - /* leftmost and rightmost vertices (rather than topmost and */ - /* bottommost). */ - while (checkvertex[0] < farleftpt[0]) { - lprev(checkedge, *farleft); - farleftapex = farleftpt; - farleftpt = checkvertex; - sym(*farleft, checkedge); - apex(checkedge, checkvertex); - } - while (farrightapex[0] > farrightpt[0]) { - lprevself(*farright); - symself(*farright); - farrightpt = farrightapex; - apex(*farright, farrightapex); - } - } - return; - } - /* Consider eliminating edges from the left triangulation. */ - if (!leftfinished) { - /* What vertex would be exposed if an edge were deleted? */ - lprev(leftcand, nextedge); - symself(nextedge); - apex(nextedge, nextapex); - /* If nextapex is NULL, then no vertex would be exposed; the */ - /* triangulation would have been eaten right through. */ - if (nextapex != (vertex) NULL) { - /* Check whether the edge is Delaunay. */ - badedge = incircle(m, b, lowerleft, lowerright, upperleft, nextapex) > - 0.0; - while (badedge) { - /* Eliminate the edge with an edge flip. As a result, the */ - /* left triangulation will have one more boundary triangle. */ - lnextself(nextedge); - sym(nextedge, topcasing); - lnextself(nextedge); - sym(nextedge, sidecasing); - bond(nextedge, topcasing); - bond(leftcand, sidecasing); - lnextself(leftcand); - sym(leftcand, outercasing); - lprevself(nextedge); - bond(nextedge, outercasing); - /* Correct the vertices to reflect the edge flip. */ - setorg(leftcand, lowerleft); - setdest(leftcand, NULL); - setapex(leftcand, nextapex); - setorg(nextedge, NULL); - setdest(nextedge, upperleft); - setapex(nextedge, nextapex); - /* Consider the newly exposed vertex. */ - upperleft = nextapex; - /* What vertex would be exposed if another edge were deleted? */ - otricopy(sidecasing, nextedge); - apex(nextedge, nextapex); - if (nextapex != (vertex) NULL) { - /* Check whether the edge is Delaunay. */ - badedge = incircle(m, b, lowerleft, lowerright, upperleft, - nextapex) > 0.0; - } else { - /* Avoid eating right through the triangulation. */ - badedge = 0; - } - } - } - } - /* Consider eliminating edges from the right triangulation. */ - if (!rightfinished) { - /* What vertex would be exposed if an edge were deleted? */ - lnext(rightcand, nextedge); - symself(nextedge); - apex(nextedge, nextapex); - /* If nextapex is NULL, then no vertex would be exposed; the */ - /* triangulation would have been eaten right through. */ - if (nextapex != (vertex) NULL) { - /* Check whether the edge is Delaunay. */ - badedge = incircle(m, b, lowerleft, lowerright, upperright, nextapex) > - 0.0; - while (badedge) { - /* Eliminate the edge with an edge flip. As a result, the */ - /* right triangulation will have one more boundary triangle. */ - lprevself(nextedge); - sym(nextedge, topcasing); - lprevself(nextedge); - sym(nextedge, sidecasing); - bond(nextedge, topcasing); - bond(rightcand, sidecasing); - lprevself(rightcand); - sym(rightcand, outercasing); - lnextself(nextedge); - bond(nextedge, outercasing); - /* Correct the vertices to reflect the edge flip. */ - setorg(rightcand, NULL); - setdest(rightcand, lowerright); - setapex(rightcand, nextapex); - setorg(nextedge, upperright); - setdest(nextedge, NULL); - setapex(nextedge, nextapex); - /* Consider the newly exposed vertex. */ - upperright = nextapex; - /* What vertex would be exposed if another edge were deleted? */ - otricopy(sidecasing, nextedge); - apex(nextedge, nextapex); - if (nextapex != (vertex) NULL) { - /* Check whether the edge is Delaunay. */ - badedge = incircle(m, b, lowerleft, lowerright, upperright, - nextapex) > 0.0; - } else { - /* Avoid eating right through the triangulation. */ - badedge = 0; - } - } - } - } - if (leftfinished || (!rightfinished && - (incircle(m, b, upperleft, lowerleft, lowerright, upperright) > - 0.0))) { - /* Knit the triangulations, adding an edge from `lowerleft' */ - /* to `upperright'. */ - bond(baseedge, rightcand); - lprev(rightcand, baseedge); - setdest(baseedge, lowerleft); - lowerright = upperright; - sym(baseedge, rightcand); - apex(rightcand, upperright); - } else { - /* Knit the triangulations, adding an edge from `upperleft' */ - /* to `lowerright'. */ - bond(baseedge, leftcand); - lnext(leftcand, baseedge); - setorg(baseedge, lowerright); - lowerleft = upperleft; - sym(baseedge, leftcand); - apex(leftcand, upperleft); - } - if (b->verbose > 2) { - fprintf(stderr, " Connecting "); - printtriangle(m, b, &baseedge); - } - } -} - -/*****************************************************************************/ -/* */ -/* divconqrecurse() Recursively form a Delaunay triangulation by the */ -/* divide-and-conquer method. */ -/* */ -/* Recursively breaks down the problem into smaller pieces, which are */ -/* knitted together by mergehulls(). The base cases (problems of two or */ -/* three vertices) are handled specially here. */ -/* */ -/* On completion, `farleft' and `farright' are bounding triangles such that */ -/* the origin of `farleft' is the leftmost vertex (breaking ties by */ -/* choosing the highest leftmost vertex), and the destination of */ -/* `farright' is the rightmost vertex (breaking ties by choosing the */ -/* lowest rightmost vertex). */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void divconqrecurse(struct mesh *m, struct behavior *b, vertex *sortarray, - int vertices, int axis, - struct otri *farleft, struct otri *farright) -#else /* not ANSI_DECLARATORS */ -void divconqrecurse(m, b, sortarray, vertices, axis, farleft, farright) -struct mesh *m; -struct behavior *b; -vertex *sortarray; -int vertices; -int axis; -struct otri *farleft; -struct otri *farright; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri midtri, tri1, tri2, tri3; - struct otri innerleft, innerright; - REAL area; - int divider; - - if (b->verbose > 2) { - fprintf(stderr, " Triangulating %d vertices.\n", vertices); - } - if (vertices == 2) { - /* The triangulation of two vertices is an edge. An edge is */ - /* represented by two bounding triangles. */ - maketriangle(m, b, farleft); - setorg(*farleft, sortarray[0]); - setdest(*farleft, sortarray[1]); - /* The apex is intentionally left NULL. */ - maketriangle(m, b, farright); - setorg(*farright, sortarray[1]); - setdest(*farright, sortarray[0]); - /* The apex is intentionally left NULL. */ - bond(*farleft, *farright); - lprevself(*farleft); - lnextself(*farright); - bond(*farleft, *farright); - lprevself(*farleft); - lnextself(*farright); - bond(*farleft, *farright); - if (b->verbose > 2) { - fprintf(stderr, " Creating "); - printtriangle(m, b, farleft); - fprintf(stderr, " Creating "); - printtriangle(m, b, farright); - } - /* Ensure that the origin of `farleft' is sortarray[0]. */ - lprev(*farright, *farleft); - return; - } else if (vertices == 3) { - /* The triangulation of three vertices is either a triangle (with */ - /* three bounding triangles) or two edges (with four bounding */ - /* triangles). In either case, four triangles are created. */ - maketriangle(m, b, &midtri); - maketriangle(m, b, &tri1); - maketriangle(m, b, &tri2); - maketriangle(m, b, &tri3); - area = counterclockwise(m, b, sortarray[0], sortarray[1], sortarray[2]); - if (area == 0.0) { - /* Three collinear vertices; the triangulation is two edges. */ - setorg(midtri, sortarray[0]); - setdest(midtri, sortarray[1]); - setorg(tri1, sortarray[1]); - setdest(tri1, sortarray[0]); - setorg(tri2, sortarray[2]); - setdest(tri2, sortarray[1]); - setorg(tri3, sortarray[1]); - setdest(tri3, sortarray[2]); - /* All apices are intentionally left NULL. */ - bond(midtri, tri1); - bond(tri2, tri3); - lnextself(midtri); - lprevself(tri1); - lnextself(tri2); - lprevself(tri3); - bond(midtri, tri3); - bond(tri1, tri2); - lnextself(midtri); - lprevself(tri1); - lnextself(tri2); - lprevself(tri3); - bond(midtri, tri1); - bond(tri2, tri3); - /* Ensure that the origin of `farleft' is sortarray[0]. */ - otricopy(tri1, *farleft); - /* Ensure that the destination of `farright' is sortarray[2]. */ - otricopy(tri2, *farright); - } else { - /* The three vertices are not collinear; the triangulation is one */ - /* triangle, namely `midtri'. */ - setorg(midtri, sortarray[0]); - setdest(tri1, sortarray[0]); - setorg(tri3, sortarray[0]); - /* Apices of tri1, tri2, and tri3 are left NULL. */ - if (area > 0.0) { - /* The vertices are in counterclockwise order. */ - setdest(midtri, sortarray[1]); - setorg(tri1, sortarray[1]); - setdest(tri2, sortarray[1]); - setapex(midtri, sortarray[2]); - setorg(tri2, sortarray[2]); - setdest(tri3, sortarray[2]); - } else { - /* The vertices are in clockwise order. */ - setdest(midtri, sortarray[2]); - setorg(tri1, sortarray[2]); - setdest(tri2, sortarray[2]); - setapex(midtri, sortarray[1]); - setorg(tri2, sortarray[1]); - setdest(tri3, sortarray[1]); - } - /* The topology does not depend on how the vertices are ordered. */ - bond(midtri, tri1); - lnextself(midtri); - bond(midtri, tri2); - lnextself(midtri); - bond(midtri, tri3); - lprevself(tri1); - lnextself(tri2); - bond(tri1, tri2); - lprevself(tri1); - lprevself(tri3); - bond(tri1, tri3); - lnextself(tri2); - lprevself(tri3); - bond(tri2, tri3); - /* Ensure that the origin of `farleft' is sortarray[0]. */ - otricopy(tri1, *farleft); - /* Ensure that the destination of `farright' is sortarray[2]. */ - if (area > 0.0) { - otricopy(tri2, *farright); - } else { - lnext(*farleft, *farright); - } - } - if (b->verbose > 2) { - fprintf(stderr, " Creating "); - printtriangle(m, b, &midtri); - fprintf(stderr, " Creating "); - printtriangle(m, b, &tri1); - fprintf(stderr, " Creating "); - printtriangle(m, b, &tri2); - fprintf(stderr, " Creating "); - printtriangle(m, b, &tri3); - } - return; - } else { - /* Split the vertices in half. */ - divider = vertices >> 1; - /* Recursively triangulate each half. */ - divconqrecurse(m, b, sortarray, divider, 1 - axis, farleft, &innerleft); - divconqrecurse(m, b, &sortarray[divider], vertices - divider, 1 - axis, - &innerright, farright); - if (b->verbose > 1) { - fprintf(stderr, " Joining triangulations with %d and %d vertices.\n", divider, - vertices - divider); - } - /* Merge the two triangulations into one. */ - mergehulls(m, b, farleft, &innerleft, &innerright, farright, axis); - } -} - -#ifdef ANSI_DECLARATORS -long removeghosts(struct mesh *m, struct behavior *b, struct otri *startghost) -#else /* not ANSI_DECLARATORS */ -long removeghosts(m, b, startghost) -struct mesh *m; -struct behavior *b; -struct otri *startghost; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri searchedge; - struct otri dissolveedge; - struct otri deadtriangle; - vertex markorg; - long hullsize; - triangle ptr; /* Temporary variable used by sym(). */ - - if (b->verbose) { - fprintf(stderr, " Removing ghost triangles.\n"); - } - /* Find an edge on the convex hull to start point location from. */ - lprev(*startghost, searchedge); - symself(searchedge); - m->dummytri[0] = encode(searchedge); - /* Remove the bounding box and count the convex hull edges. */ - otricopy(*startghost, dissolveedge); - hullsize = 0; - do { - hullsize++; - lnext(dissolveedge, deadtriangle); - lprevself(dissolveedge); - symself(dissolveedge); - /* If no PSLG is involved, set the boundary markers of all the vertices */ - /* on the convex hull. If a PSLG is used, this step is done later. */ - if (!b->poly) { - /* Watch out for the case where all the input vertices are collinear. */ - if (dissolveedge.tri != m->dummytri) { - org(dissolveedge, markorg); - if (vertexmark(markorg) == 0) { - setvertexmark(markorg, 1); - } - } - } - /* Remove a bounding triangle from a convex hull triangle. */ - dissolve(dissolveedge); - /* Find the next bounding triangle. */ - sym(deadtriangle, dissolveedge); - /* Delete the bounding triangle. */ - triangledealloc(m, deadtriangle.tri); - } while (!otriequal(dissolveedge, *startghost)); - return hullsize; -} - -/*****************************************************************************/ -/* */ -/* divconqdelaunay() Form a Delaunay triangulation by the divide-and- */ -/* conquer method. */ -/* */ -/* Sorts the vertices, calls a recursive procedure to triangulate them, and */ -/* removes the bounding box, setting boundary markers as appropriate. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -long divconqdelaunay(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -long divconqdelaunay(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - vertex *sortarray; - struct otri hullleft, hullright; - int divider; - int i, j; - - if (b->verbose) { - fprintf(stderr, " Sorting vertices.\n"); - } - - /* Allocate an array of pointers to vertices for sorting. */ - sortarray = (vertex *) trimalloc(m->invertices * sizeof(vertex)); - traversalinit(&m->vertices); - for (i = 0; i < m->invertices; i++) { - sortarray[i] = vertextraverse(m); - } - /* Sort the vertices. */ - vertexsort(sortarray, m->invertices); - /* Discard duplicate vertices, which can really mess up the algorithm. */ - i = 0; - for (j = 1; j < m->invertices; j++) { - if ((sortarray[i][0] == sortarray[j][0]) - && (sortarray[i][1] == sortarray[j][1])) { - if (!b->quiet) { - fprintf(stderr, -"Warning: A duplicate vertex at (%.12g, %.12g) appeared and was ignored.\n", - sortarray[j][0], sortarray[j][1]); - } - setvertextype(sortarray[j], UNDEADVERTEX); - m->undeads++; - } else { - i++; - sortarray[i] = sortarray[j]; - } - } - i++; - if (b->dwyer) { - /* Re-sort the array of vertices to accommodate alternating cuts. */ - divider = i >> 1; - if (i - divider >= 2) { - if (divider >= 2) { - alternateaxes(sortarray, divider, 1); - } - alternateaxes(&sortarray[divider], i - divider, 1); - } - } - - if (b->verbose) { - fprintf(stderr, " Forming triangulation.\n"); - } - - /* Form the Delaunay triangulation. */ - divconqrecurse(m, b, sortarray, i, 0, &hullleft, &hullright); - trifree((VOID *) sortarray); - - return removeghosts(m, b, &hullleft); -} - -/** **/ -/** **/ -/********* Divide-and-conquer Delaunay triangulation ends here *********/ - -/********* Incremental Delaunay triangulation begins here *********/ -/** **/ -/** **/ - -/*****************************************************************************/ -/* */ -/* boundingbox() Form an "infinite" bounding triangle to insert vertices */ -/* into. */ -/* */ -/* The vertices at "infinity" are assigned finite coordinates, which are */ -/* used by the point location routines, but (mostly) ignored by the */ -/* Delaunay edge flip routines. */ -/* */ -/*****************************************************************************/ - -#ifndef REDUCED - -#ifdef ANSI_DECLARATORS -void boundingbox(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -void boundingbox(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri inftri; /* Handle for the triangular bounding box. */ - REAL width; - - if (b->verbose) { - fprintf(stderr, " Creating triangular bounding box.\n"); - } - /* Find the width (or height, whichever is larger) of the triangulation. */ - width = m->xmax - m->xmin; - if (m->ymax - m->ymin > width) { - width = m->ymax - m->ymin; - } - if (width == 0.0) { - width = 1.0; - } - /* Create the vertices of the bounding box. */ - m->infvertex1 = (vertex) trimalloc(m->vertices.itembytes); - m->infvertex2 = (vertex) trimalloc(m->vertices.itembytes); - m->infvertex3 = (vertex) trimalloc(m->vertices.itembytes); - m->infvertex1[0] = m->xmin - 50.0 * width; - m->infvertex1[1] = m->ymin - 40.0 * width; - m->infvertex2[0] = m->xmax + 50.0 * width; - m->infvertex2[1] = m->ymin - 40.0 * width; - m->infvertex3[0] = 0.5 * (m->xmin + m->xmax); - m->infvertex3[1] = m->ymax + 60.0 * width; - - /* Create the bounding box. */ - maketriangle(m, b, &inftri); - setorg(inftri, m->infvertex1); - setdest(inftri, m->infvertex2); - setapex(inftri, m->infvertex3); - /* Link dummytri to the bounding box so we can always find an */ - /* edge to begin searching (point location) from. */ - m->dummytri[0] = (triangle) inftri.tri; - if (b->verbose > 2) { - fprintf(stderr, " Creating "); - printtriangle(m, b, &inftri); - } -} - -#endif /* not REDUCED */ - -/*****************************************************************************/ -/* */ -/* removebox() Remove the "infinite" bounding triangle, setting boundary */ -/* markers as appropriate. */ -/* */ -/* The triangular bounding box has three boundary triangles (one for each */ -/* side of the bounding box), and a bunch of triangles fanning out from */ -/* the three bounding box vertices (one triangle for each edge of the */ -/* convex hull of the inner mesh). This routine removes these triangles. */ -/* */ -/* Returns the number of edges on the convex hull of the triangulation. */ -/* */ -/*****************************************************************************/ - -#ifndef REDUCED - -#ifdef ANSI_DECLARATORS -long removebox(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -long removebox(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri deadtriangle; - struct otri searchedge; - struct otri checkedge; - struct otri nextedge, finaledge, dissolveedge; - vertex markorg; - long hullsize; - triangle ptr; /* Temporary variable used by sym(). */ - - if (b->verbose) { - fprintf(stderr, " Removing triangular bounding box.\n"); - } - /* Find a boundary triangle. */ - nextedge.tri = m->dummytri; - nextedge.orient = 0; - symself(nextedge); - /* Mark a place to stop. */ - lprev(nextedge, finaledge); - lnextself(nextedge); - symself(nextedge); - /* Find a triangle (on the boundary of the vertex set) that isn't */ - /* a bounding box triangle. */ - lprev(nextedge, searchedge); - symself(searchedge); - /* Check whether nextedge is another boundary triangle */ - /* adjacent to the first one. */ - lnext(nextedge, checkedge); - symself(checkedge); - if (checkedge.tri == m->dummytri) { - /* Go on to the next triangle. There are only three boundary */ - /* triangles, and this next triangle cannot be the third one, */ - /* so it's safe to stop here. */ - lprevself(searchedge); - symself(searchedge); - } - /* Find a new boundary edge to search from, as the current search */ - /* edge lies on a bounding box triangle and will be deleted. */ - m->dummytri[0] = encode(searchedge); - hullsize = -2l; - while (!otriequal(nextedge, finaledge)) { - hullsize++; - lprev(nextedge, dissolveedge); - symself(dissolveedge); - /* If not using a PSLG, the vertices should be marked now. */ - /* (If using a PSLG, markhull() will do the job.) */ - if (!b->poly) { - /* Be careful! One must check for the case where all the input */ - /* vertices are collinear, and thus all the triangles are part of */ - /* the bounding box. Otherwise, the setvertexmark() call below */ - /* will cause a bad pointer reference. */ - if (dissolveedge.tri != m->dummytri) { - org(dissolveedge, markorg); - if (vertexmark(markorg) == 0) { - setvertexmark(markorg, 1); - } - } - } - /* Disconnect the bounding box triangle from the mesh triangle. */ - dissolve(dissolveedge); - lnext(nextedge, deadtriangle); - sym(deadtriangle, nextedge); - /* Get rid of the bounding box triangle. */ - triangledealloc(m, deadtriangle.tri); - /* Do we need to turn the corner? */ - if (nextedge.tri == m->dummytri) { - /* Turn the corner. */ - otricopy(dissolveedge, nextedge); - } - } - triangledealloc(m, finaledge.tri); - - trifree((VOID *) m->infvertex1); /* Deallocate the bounding box vertices. */ - trifree((VOID *) m->infvertex2); - trifree((VOID *) m->infvertex3); - - return hullsize; -} - -#endif /* not REDUCED */ - -/*****************************************************************************/ -/* */ -/* incrementaldelaunay() Form a Delaunay triangulation by incrementally */ -/* inserting vertices. */ -/* */ -/* Returns the number of edges on the convex hull of the triangulation. */ -/* */ -/*****************************************************************************/ - -#ifndef REDUCED - -#ifdef ANSI_DECLARATORS -long incrementaldelaunay(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -long incrementaldelaunay(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri starttri; - vertex vertexloop; - - /* Create a triangular bounding box. */ - boundingbox(m, b); - if (b->verbose) { - fprintf(stderr, " Incrementally inserting vertices.\n"); - } - traversalinit(&m->vertices); - vertexloop = vertextraverse(m); - while (vertexloop != (vertex) NULL) { - starttri.tri = m->dummytri; - if (insertvertex(m, b, vertexloop, &starttri, (struct osub *) NULL, 0, 0, - 0.0) == DUPLICATEVERTEX) { - if (!b->quiet) { - fprintf(stderr, -"Warning: A duplicate vertex at (%.12g, %.12g) appeared and was ignored.\n", - vertexloop[0], vertexloop[1]); - } - setvertextype(vertexloop, UNDEADVERTEX); - m->undeads++; - } - vertexloop = vertextraverse(m); - } - /* Remove the bounding box. */ - return removebox(m, b); -} - -#endif /* not REDUCED */ - -/** **/ -/** **/ -/********* Incremental Delaunay triangulation ends here *********/ - -/********* Sweepline Delaunay triangulation begins here *********/ -/** **/ -/** **/ - -#ifndef REDUCED - -#ifdef ANSI_DECLARATORS -void eventheapinsert(struct event **heap, int heapsize, struct event *newevent) -#else /* not ANSI_DECLARATORS */ -void eventheapinsert(heap, heapsize, newevent) -struct event **heap; -int heapsize; -struct event *newevent; -#endif /* not ANSI_DECLARATORS */ - -{ - REAL eventx, eventy; - int eventnum; - int parent; - int notdone; - - eventx = newevent->xkey; - eventy = newevent->ykey; - eventnum = heapsize; - notdone = eventnum > 0; - while (notdone) { - parent = (eventnum - 1) >> 1; - if ((heap[parent]->ykey < eventy) || - ((heap[parent]->ykey == eventy) - && (heap[parent]->xkey <= eventx))) { - notdone = 0; - } else { - heap[eventnum] = heap[parent]; - heap[eventnum]->heapposition = eventnum; - - eventnum = parent; - notdone = eventnum > 0; - } - } - heap[eventnum] = newevent; - newevent->heapposition = eventnum; -} - -#endif /* not REDUCED */ - -#ifndef REDUCED - -#ifdef ANSI_DECLARATORS -void eventheapify(struct event **heap, int heapsize, int eventnum) -#else /* not ANSI_DECLARATORS */ -void eventheapify(heap, heapsize, eventnum) -struct event **heap; -int heapsize; -int eventnum; -#endif /* not ANSI_DECLARATORS */ - -{ - struct event *thisevent; - REAL eventx, eventy; - int leftchild, rightchild; - int smallest; - int notdone; - - thisevent = heap[eventnum]; - eventx = thisevent->xkey; - eventy = thisevent->ykey; - leftchild = 2 * eventnum + 1; - notdone = leftchild < heapsize; - while (notdone) { - if ((heap[leftchild]->ykey < eventy) || - ((heap[leftchild]->ykey == eventy) - && (heap[leftchild]->xkey < eventx))) { - smallest = leftchild; - } else { - smallest = eventnum; - } - rightchild = leftchild + 1; - if (rightchild < heapsize) { - if ((heap[rightchild]->ykey < heap[smallest]->ykey) || - ((heap[rightchild]->ykey == heap[smallest]->ykey) - && (heap[rightchild]->xkey < heap[smallest]->xkey))) { - smallest = rightchild; - } - } - if (smallest == eventnum) { - notdone = 0; - } else { - heap[eventnum] = heap[smallest]; - heap[eventnum]->heapposition = eventnum; - heap[smallest] = thisevent; - thisevent->heapposition = smallest; - - eventnum = smallest; - leftchild = 2 * eventnum + 1; - notdone = leftchild < heapsize; - } - } -} - -#endif /* not REDUCED */ - -#ifndef REDUCED - -#ifdef ANSI_DECLARATORS -void eventheapdelete(struct event **heap, int heapsize, int eventnum) -#else /* not ANSI_DECLARATORS */ -void eventheapdelete(heap, heapsize, eventnum) -struct event **heap; -int heapsize; -int eventnum; -#endif /* not ANSI_DECLARATORS */ - -{ - struct event *moveevent; - REAL eventx, eventy; - int parent; - int notdone; - - moveevent = heap[heapsize - 1]; - if (eventnum > 0) { - eventx = moveevent->xkey; - eventy = moveevent->ykey; - do { - parent = (eventnum - 1) >> 1; - if ((heap[parent]->ykey < eventy) || - ((heap[parent]->ykey == eventy) - && (heap[parent]->xkey <= eventx))) { - notdone = 0; - } else { - heap[eventnum] = heap[parent]; - heap[eventnum]->heapposition = eventnum; - - eventnum = parent; - notdone = eventnum > 0; - } - } while (notdone); - } - heap[eventnum] = moveevent; - moveevent->heapposition = eventnum; - eventheapify(heap, heapsize - 1, eventnum); -} - -#endif /* not REDUCED */ - -#ifndef REDUCED - -#ifdef ANSI_DECLARATORS -void createeventheap(struct mesh *m, struct event ***eventheap, - struct event **events, struct event **freeevents) -#else /* not ANSI_DECLARATORS */ -void createeventheap(m, eventheap, events, freeevents) -struct mesh *m; -struct event ***eventheap; -struct event **events; -struct event **freeevents; -#endif /* not ANSI_DECLARATORS */ - -{ - vertex thisvertex; - int maxevents; - int i; - - maxevents = (3 * m->invertices) / 2; - *eventheap = (struct event **) trimalloc(maxevents * sizeof(struct event *)); - *events = (struct event *) trimalloc(maxevents * sizeof(struct event)); - traversalinit(&m->vertices); - for (i = 0; i < m->invertices; i++) { - thisvertex = vertextraverse(m); - (*events)[i].eventptr = (VOID *) thisvertex; - (*events)[i].xkey = thisvertex[0]; - (*events)[i].ykey = thisvertex[1]; - eventheapinsert(*eventheap, i, *events + i); - } - *freeevents = (struct event *) NULL; - for (i = maxevents - 1; i >= m->invertices; i--) { - (*events)[i].eventptr = (VOID *) *freeevents; - *freeevents = *events + i; - } -} - -#endif /* not REDUCED */ - -#ifndef REDUCED - -#ifdef ANSI_DECLARATORS -int rightofhyperbola(struct mesh *m, struct otri *fronttri, vertex newsite) -#else /* not ANSI_DECLARATORS */ -int rightofhyperbola(m, fronttri, newsite) -struct mesh *m; -struct otri *fronttri; -vertex newsite; -#endif /* not ANSI_DECLARATORS */ - -{ - vertex leftvertex, rightvertex; - REAL dxa, dya, dxb, dyb; - - m->hyperbolacount++; - - dest(*fronttri, leftvertex); - apex(*fronttri, rightvertex); - if ((leftvertex[1] < rightvertex[1]) || - ((leftvertex[1] == rightvertex[1]) && - (leftvertex[0] < rightvertex[0]))) { - if (newsite[0] >= rightvertex[0]) { - return 1; - } - } else { - if (newsite[0] <= leftvertex[0]) { - return 0; - } - } - dxa = leftvertex[0] - newsite[0]; - dya = leftvertex[1] - newsite[1]; - dxb = rightvertex[0] - newsite[0]; - dyb = rightvertex[1] - newsite[1]; - return dya * (dxb * dxb + dyb * dyb) > dyb * (dxa * dxa + dya * dya); -} - -#endif /* not REDUCED */ - -#ifndef REDUCED - -#ifdef ANSI_DECLARATORS -REAL circletop(struct mesh *m, vertex pa, vertex pb, vertex pc, REAL ccwabc) -#else /* not ANSI_DECLARATORS */ -REAL circletop(m, pa, pb, pc, ccwabc) -struct mesh *m; -vertex pa; -vertex pb; -vertex pc; -REAL ccwabc; -#endif /* not ANSI_DECLARATORS */ - -{ - REAL xac, yac, xbc, ybc, xab, yab; - REAL aclen2, bclen2, ablen2; - - m->circletopcount++; - - xac = pa[0] - pc[0]; - yac = pa[1] - pc[1]; - xbc = pb[0] - pc[0]; - ybc = pb[1] - pc[1]; - xab = pa[0] - pb[0]; - yab = pa[1] - pb[1]; - aclen2 = xac * xac + yac * yac; - bclen2 = xbc * xbc + ybc * ybc; - ablen2 = xab * xab + yab * yab; - return pc[1] + (xac * bclen2 - xbc * aclen2 + sqrt(aclen2 * bclen2 * ablen2)) - / (2.0 * ccwabc); -} - -#endif /* not REDUCED */ - -#ifndef REDUCED - -#ifdef ANSI_DECLARATORS -void check4deadevent(struct otri *checktri, struct event **freeevents, - struct event **eventheap, int *heapsize) -#else /* not ANSI_DECLARATORS */ -void check4deadevent(checktri, freeevents, eventheap, heapsize) -struct otri *checktri; -struct event **freeevents; -struct event **eventheap; -int *heapsize; -#endif /* not ANSI_DECLARATORS */ - -{ - struct event *deadevent; - vertex eventvertex; - int eventnum; - - org(*checktri, eventvertex); - if (eventvertex != (vertex) NULL) { - deadevent = (struct event *) eventvertex; - eventnum = deadevent->heapposition; - deadevent->eventptr = (VOID *) *freeevents; - *freeevents = deadevent; - eventheapdelete(eventheap, *heapsize, eventnum); - (*heapsize)--; - setorg(*checktri, NULL); - } -} - -#endif /* not REDUCED */ - -#ifndef REDUCED - -#ifdef ANSI_DECLARATORS -struct splaynode *splay(struct mesh *m, struct splaynode *splaytree, - vertex searchpoint, struct otri *searchtri) -#else /* not ANSI_DECLARATORS */ -struct splaynode *splay(m, splaytree, searchpoint, searchtri) -struct mesh *m; -struct splaynode *splaytree; -vertex searchpoint; -struct otri *searchtri; -#endif /* not ANSI_DECLARATORS */ - -{ - struct splaynode *child, *grandchild; - struct splaynode *lefttree, *righttree; - struct splaynode *leftright; - vertex checkvertex; - int rightofroot, rightofchild; - - if (splaytree == (struct splaynode *) NULL) { - return (struct splaynode *) NULL; - } - dest(splaytree->keyedge, checkvertex); - if (checkvertex == splaytree->keydest) { - rightofroot = rightofhyperbola(m, &splaytree->keyedge, searchpoint); - if (rightofroot) { - otricopy(splaytree->keyedge, *searchtri); - child = splaytree->rchild; - } else { - child = splaytree->lchild; - } - if (child == (struct splaynode *) NULL) { - return splaytree; - } - dest(child->keyedge, checkvertex); - if (checkvertex != child->keydest) { - child = splay(m, child, searchpoint, searchtri); - if (child == (struct splaynode *) NULL) { - if (rightofroot) { - splaytree->rchild = (struct splaynode *) NULL; - } else { - splaytree->lchild = (struct splaynode *) NULL; - } - return splaytree; - } - } - rightofchild = rightofhyperbola(m, &child->keyedge, searchpoint); - if (rightofchild) { - otricopy(child->keyedge, *searchtri); - grandchild = splay(m, child->rchild, searchpoint, searchtri); - child->rchild = grandchild; - } else { - grandchild = splay(m, child->lchild, searchpoint, searchtri); - child->lchild = grandchild; - } - if (grandchild == (struct splaynode *) NULL) { - if (rightofroot) { - splaytree->rchild = child->lchild; - child->lchild = splaytree; - } else { - splaytree->lchild = child->rchild; - child->rchild = splaytree; - } - return child; - } - if (rightofchild) { - if (rightofroot) { - splaytree->rchild = child->lchild; - child->lchild = splaytree; - } else { - splaytree->lchild = grandchild->rchild; - grandchild->rchild = splaytree; - } - child->rchild = grandchild->lchild; - grandchild->lchild = child; - } else { - if (rightofroot) { - splaytree->rchild = grandchild->lchild; - grandchild->lchild = splaytree; - } else { - splaytree->lchild = child->rchild; - child->rchild = splaytree; - } - child->lchild = grandchild->rchild; - grandchild->rchild = child; - } - return grandchild; - } else { - lefttree = splay(m, splaytree->lchild, searchpoint, searchtri); - righttree = splay(m, splaytree->rchild, searchpoint, searchtri); - - pooldealloc(&m->splaynodes, (VOID *) splaytree); - if (lefttree == (struct splaynode *) NULL) { - return righttree; - } else if (righttree == (struct splaynode *) NULL) { - return lefttree; - } else if (lefttree->rchild == (struct splaynode *) NULL) { - lefttree->rchild = righttree->lchild; - righttree->lchild = lefttree; - return righttree; - } else if (righttree->lchild == (struct splaynode *) NULL) { - righttree->lchild = lefttree->rchild; - lefttree->rchild = righttree; - return lefttree; - } else { -/* fprintf(stderr, "Holy Toledo!!!\n"); */ - leftright = lefttree->rchild; - while (leftright->rchild != (struct splaynode *) NULL) { - leftright = leftright->rchild; - } - leftright->rchild = righttree; - return lefttree; - } - } -} - -#endif /* not REDUCED */ - -#ifndef REDUCED - -#ifdef ANSI_DECLARATORS -struct splaynode *splayinsert(struct mesh *m, struct splaynode *splayroot, - struct otri *newkey, vertex searchpoint) -#else /* not ANSI_DECLARATORS */ -struct splaynode *splayinsert(m, splayroot, newkey, searchpoint) -struct mesh *m; -struct splaynode *splayroot; -struct otri *newkey; -vertex searchpoint; -#endif /* not ANSI_DECLARATORS */ - -{ - struct splaynode *newsplaynode; - - newsplaynode = (struct splaynode *) poolalloc(&m->splaynodes); - otricopy(*newkey, newsplaynode->keyedge); - dest(*newkey, newsplaynode->keydest); - if (splayroot == (struct splaynode *) NULL) { - newsplaynode->lchild = (struct splaynode *) NULL; - newsplaynode->rchild = (struct splaynode *) NULL; - } else if (rightofhyperbola(m, &splayroot->keyedge, searchpoint)) { - newsplaynode->lchild = splayroot; - newsplaynode->rchild = splayroot->rchild; - splayroot->rchild = (struct splaynode *) NULL; - } else { - newsplaynode->lchild = splayroot->lchild; - newsplaynode->rchild = splayroot; - splayroot->lchild = (struct splaynode *) NULL; - } - return newsplaynode; -} - -#endif /* not REDUCED */ - -#ifndef REDUCED - -#ifdef ANSI_DECLARATORS -struct splaynode *circletopinsert(struct mesh *m, struct behavior *b, - struct splaynode *splayroot, - struct otri *newkey, - vertex pa, vertex pb, vertex pc, REAL topy) -#else /* not ANSI_DECLARATORS */ -struct splaynode *circletopinsert(m, b, splayroot, newkey, pa, pb, pc, topy) -struct mesh *m; -struct behavior *b; -struct splaynode *splayroot; -struct otri *newkey; -vertex pa; -vertex pb; -vertex pc; -REAL topy; -#endif /* not ANSI_DECLARATORS */ - -{ - REAL ccwabc; - REAL xac, yac, xbc, ybc; - REAL aclen2, bclen2; - REAL searchpoint[2]; - struct otri dummytri; - - ccwabc = counterclockwise(m, b, pa, pb, pc); - xac = pa[0] - pc[0]; - yac = pa[1] - pc[1]; - xbc = pb[0] - pc[0]; - ybc = pb[1] - pc[1]; - aclen2 = xac * xac + yac * yac; - bclen2 = xbc * xbc + ybc * ybc; - searchpoint[0] = pc[0] - (yac * bclen2 - ybc * aclen2) / (2.0 * ccwabc); - searchpoint[1] = topy; - return splayinsert(m, splay(m, splayroot, (vertex) searchpoint, &dummytri), - newkey, (vertex) searchpoint); -} - -#endif /* not REDUCED */ - -#ifndef REDUCED - -#ifdef ANSI_DECLARATORS -struct splaynode *frontlocate(struct mesh *m, struct splaynode *splayroot, - struct otri *bottommost, vertex searchvertex, - struct otri *searchtri, int *farright) -#else /* not ANSI_DECLARATORS */ -struct splaynode *frontlocate(m, splayroot, bottommost, searchvertex, - searchtri, farright) -struct mesh *m; -struct splaynode *splayroot; -struct otri *bottommost; -vertex searchvertex; -struct otri *searchtri; -int *farright; -#endif /* not ANSI_DECLARATORS */ - -{ - int farrightflag; - triangle ptr; /* Temporary variable used by onext(). */ - - otricopy(*bottommost, *searchtri); - splayroot = splay(m, splayroot, searchvertex, searchtri); - - farrightflag = 0; - while (!farrightflag && rightofhyperbola(m, searchtri, searchvertex)) { - onextself(*searchtri); - farrightflag = otriequal(*searchtri, *bottommost); - } - *farright = farrightflag; - return splayroot; -} - -#endif /* not REDUCED */ - -#ifndef REDUCED - -#ifdef ANSI_DECLARATORS -long sweeplinedelaunay(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -long sweeplinedelaunay(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - struct event **eventheap; - struct event *events; - struct event *freeevents; - struct event *nextevent; - struct event *newevent; - struct splaynode *splayroot; - struct otri bottommost; - struct otri searchtri; - struct otri fliptri; - struct otri lefttri, righttri, farlefttri, farrighttri; - struct otri inserttri; - vertex firstvertex, secondvertex; - vertex nextvertex, lastvertex; - vertex connectvertex; - vertex leftvertex, midvertex, rightvertex; - REAL lefttest, righttest; - int heapsize; - int check4events, farrightflag; - triangle ptr; /* Temporary variable used by sym(), onext(), and oprev(). */ - - poolinit(&m->splaynodes, sizeof(struct splaynode), SPLAYNODEPERBLOCK, - POINTER, 0); - splayroot = (struct splaynode *) NULL; - - if (b->verbose) { - fprintf(stderr, " Placing vertices in event heap.\n"); - } - createeventheap(m, &eventheap, &events, &freeevents); - heapsize = m->invertices; - - if (b->verbose) { - fprintf(stderr, " Forming triangulation.\n"); - } - maketriangle(m, b, &lefttri); - maketriangle(m, b, &righttri); - bond(lefttri, righttri); - lnextself(lefttri); - lprevself(righttri); - bond(lefttri, righttri); - lnextself(lefttri); - lprevself(righttri); - bond(lefttri, righttri); - firstvertex = (vertex) eventheap[0]->eventptr; - eventheap[0]->eventptr = (VOID *) freeevents; - freeevents = eventheap[0]; - eventheapdelete(eventheap, heapsize, 0); - heapsize--; - do { - if (heapsize == 0) { - fprintf(stderr, "Error: Input vertices are all identical.\n"); - exit(1); - } - secondvertex = (vertex) eventheap[0]->eventptr; - eventheap[0]->eventptr = (VOID *) freeevents; - freeevents = eventheap[0]; - eventheapdelete(eventheap, heapsize, 0); - heapsize--; - if ((firstvertex[0] == secondvertex[0]) && - (firstvertex[1] == secondvertex[1])) { - if (!b->quiet) { - fprintf(stderr, -"Warning: A duplicate vertex at (%.12g, %.12g) appeared and was ignored.\n", - secondvertex[0], secondvertex[1]); - } - setvertextype(secondvertex, UNDEADVERTEX); - m->undeads++; - } - } while ((firstvertex[0] == secondvertex[0]) && - (firstvertex[1] == secondvertex[1])); - setorg(lefttri, firstvertex); - setdest(lefttri, secondvertex); - setorg(righttri, secondvertex); - setdest(righttri, firstvertex); - lprev(lefttri, bottommost); - lastvertex = secondvertex; - while (heapsize > 0) { - nextevent = eventheap[0]; - eventheapdelete(eventheap, heapsize, 0); - heapsize--; - check4events = 1; - if (nextevent->xkey < m->xmin) { - decode(nextevent->eventptr, fliptri); - oprev(fliptri, farlefttri); - check4deadevent(&farlefttri, &freeevents, eventheap, &heapsize); - onext(fliptri, farrighttri); - check4deadevent(&farrighttri, &freeevents, eventheap, &heapsize); - - if (otriequal(farlefttri, bottommost)) { - lprev(fliptri, bottommost); - } - flip(m, b, &fliptri); - setapex(fliptri, NULL); - lprev(fliptri, lefttri); - lnext(fliptri, righttri); - sym(lefttri, farlefttri); - - if (randomnation(SAMPLERATE) == 0) { - symself(fliptri); - dest(fliptri, leftvertex); - apex(fliptri, midvertex); - org(fliptri, rightvertex); - splayroot = circletopinsert(m, b, splayroot, &lefttri, leftvertex, - midvertex, rightvertex, nextevent->ykey); - } - } else { - nextvertex = (vertex) nextevent->eventptr; - if ((nextvertex[0] == lastvertex[0]) && - (nextvertex[1] == lastvertex[1])) { - if (!b->quiet) { - fprintf(stderr, -"Warning: A duplicate vertex at (%.12g, %.12g) appeared and was ignored.\n", - nextvertex[0], nextvertex[1]); - } - setvertextype(nextvertex, UNDEADVERTEX); - m->undeads++; - check4events = 0; - } else { - lastvertex = nextvertex; - - splayroot = frontlocate(m, splayroot, &bottommost, nextvertex, - &searchtri, &farrightflag); -/* - otricopy(bottommost, searchtri); - farrightflag = 0; - while (!farrightflag && rightofhyperbola(m, &searchtri, nextvertex)) { - onextself(searchtri); - farrightflag = otriequal(searchtri, bottommost); - } -*/ - - check4deadevent(&searchtri, &freeevents, eventheap, &heapsize); - - otricopy(searchtri, farrighttri); - sym(searchtri, farlefttri); - maketriangle(m, b, &lefttri); - maketriangle(m, b, &righttri); - dest(farrighttri, connectvertex); - setorg(lefttri, connectvertex); - setdest(lefttri, nextvertex); - setorg(righttri, nextvertex); - setdest(righttri, connectvertex); - bond(lefttri, righttri); - lnextself(lefttri); - lprevself(righttri); - bond(lefttri, righttri); - lnextself(lefttri); - lprevself(righttri); - bond(lefttri, farlefttri); - bond(righttri, farrighttri); - if (!farrightflag && otriequal(farrighttri, bottommost)) { - otricopy(lefttri, bottommost); - } - - if (randomnation(SAMPLERATE) == 0) { - splayroot = splayinsert(m, splayroot, &lefttri, nextvertex); - } else if (randomnation(SAMPLERATE) == 0) { - lnext(righttri, inserttri); - splayroot = splayinsert(m, splayroot, &inserttri, nextvertex); - } - } - } - nextevent->eventptr = (VOID *) freeevents; - freeevents = nextevent; - - if (check4events) { - apex(farlefttri, leftvertex); - dest(lefttri, midvertex); - apex(lefttri, rightvertex); - lefttest = counterclockwise(m, b, leftvertex, midvertex, rightvertex); - if (lefttest > 0.0) { - newevent = freeevents; - freeevents = (struct event *) freeevents->eventptr; - newevent->xkey = m->xminextreme; - newevent->ykey = circletop(m, leftvertex, midvertex, rightvertex, - lefttest); - newevent->eventptr = (VOID *) encode(lefttri); - eventheapinsert(eventheap, heapsize, newevent); - heapsize++; - setorg(lefttri, newevent); - } - apex(righttri, leftvertex); - org(righttri, midvertex); - apex(farrighttri, rightvertex); - righttest = counterclockwise(m, b, leftvertex, midvertex, rightvertex); - if (righttest > 0.0) { - newevent = freeevents; - freeevents = (struct event *) freeevents->eventptr; - newevent->xkey = m->xminextreme; - newevent->ykey = circletop(m, leftvertex, midvertex, rightvertex, - righttest); - newevent->eventptr = (VOID *) encode(farrighttri); - eventheapinsert(eventheap, heapsize, newevent); - heapsize++; - setorg(farrighttri, newevent); - } - } - } - - pooldeinit(&m->splaynodes); - lprevself(bottommost); - return removeghosts(m, b, &bottommost); -} - -#endif /* not REDUCED */ - -/** **/ -/** **/ -/********* Sweepline Delaunay triangulation ends here *********/ - -/********* General mesh construction routines begin here *********/ -/** **/ -/** **/ - -/*****************************************************************************/ -/* */ -/* delaunay() Form a Delaunay triangulation. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -long delaunay(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -long delaunay(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - long hulledges; - - m->eextras = 0; - initializetrisubpools(m, b); - -#ifdef REDUCED - if (!b->quiet) { - fprintf(stderr, - "Constructing Delaunay triangulation by divide-and-conquer method.\n"); - } - hulledges = divconqdelaunay(m, b); -#else /* not REDUCED */ - if (!b->quiet) { - fprintf(stderr, "Constructing Delaunay triangulation "); - if (b->incremental) { - fprintf(stderr, "by incremental method.\n"); - } else if (b->sweepline) { - fprintf(stderr, "by sweepline method.\n"); - } else { - fprintf(stderr, "by divide-and-conquer method.\n"); - } - } - if (b->incremental) { - hulledges = incrementaldelaunay(m, b); - } else if (b->sweepline) { - hulledges = sweeplinedelaunay(m, b); - } else { - hulledges = divconqdelaunay(m, b); - } -#endif /* not REDUCED */ - - if (m->triangles.items == 0) { - /* The input vertices were all collinear, so there are no triangles. */ - return 0l; - } else { - return hulledges; - } -} - -/*****************************************************************************/ -/* */ -/* reconstruct() Reconstruct a triangulation from its .ele (and possibly */ -/* .poly) file. Used when the -r switch is used. */ -/* */ -/* Reads an .ele file and reconstructs the original mesh. If the -p switch */ -/* is used, this procedure will also read a .poly file and reconstruct the */ -/* subsegments of the original mesh. If the -a switch is used, this */ -/* procedure will also read an .area file and set a maximum area constraint */ -/* on each triangle. */ -/* */ -/* Vertices that are not corners of triangles, such as nodes on edges of */ -/* subparametric elements, are discarded. */ -/* */ -/* This routine finds the adjacencies between triangles (and subsegments) */ -/* by forming one stack of triangles for each vertex. Each triangle is on */ -/* three different stacks simultaneously. Each triangle's subsegment */ -/* pointers are used to link the items in each stack. This memory-saving */ -/* feature makes the code harder to read. The most important thing to keep */ -/* in mind is that each triangle is removed from a stack precisely when */ -/* the corresponding pointer is adjusted to refer to a subsegment rather */ -/* than the next triangle of the stack. */ -/* */ -/*****************************************************************************/ - -#ifndef CDT_ONLY - -#ifdef TRILIBRARY - -#ifdef ANSI_DECLARATORS -int reconstruct(struct mesh *m, struct behavior *b, int *trianglelist, - REAL *triangleattriblist, REAL *trianglearealist, - int elements, int corners, int attribs, - int *segmentlist,int *segmentmarkerlist, int numberofsegments) -#else /* not ANSI_DECLARATORS */ -int reconstruct(m, b, trianglelist, triangleattriblist, trianglearealist, - elements, corners, attribs, segmentlist, segmentmarkerlist, - numberofsegments) -struct mesh *m; -struct behavior *b; -int *trianglelist; -REAL *triangleattriblist; -REAL *trianglearealist; -int elements; -int corners; -int attribs; -int *segmentlist; -int *segmentmarkerlist; -int numberofsegments; -#endif /* not ANSI_DECLARATORS */ - -#else /* not TRILIBRARY */ - -#ifdef ANSI_DECLARATORS -long reconstruct(struct mesh *m, struct behavior *b, char *elefilename, - char *areafilename, char *polyfilename, FILE *polyfile) -#else /* not ANSI_DECLARATORS */ -long reconstruct(m, b, elefilename, areafilename, polyfilename, polyfile) -struct mesh *m; -struct behavior *b; -char *elefilename; -char *areafilename; -char *polyfilename; -FILE *polyfile; -#endif /* not ANSI_DECLARATORS */ - -#endif /* not TRILIBRARY */ - -{ -#ifdef TRILIBRARY - int vertexindex; - int attribindex; -#else /* not TRILIBRARY */ - FILE *elefile; - FILE *areafile; - char inputline[INPUTLINESIZE]; - char *stringptr; - int areaelements; -#endif /* not TRILIBRARY */ - struct otri triangleloop; - struct otri triangleleft; - struct otri checktri; - struct otri checkleft; - struct otri checkneighbor; - struct osub subsegloop; - triangle *vertexarray; - triangle *prevlink; - triangle nexttri; - vertex tdest, tapex; - vertex checkdest, checkapex; - vertex shorg; - vertex killvertex; - REAL area; - int corner[3]; - int end[2]; - int killvertexindex; - int incorners; - int segmentmarkers; - int boundmarker; - int aroundvertex; - long hullsize; - int notfound; - long elementnumber, segmentnumber; - int i, j; - triangle ptr; /* Temporary variable used by sym(). */ - -#ifdef TRILIBRARY - m->inelements = elements; - incorners = corners; - if (incorners < 3) { - fprintf(stderr, "Error: Triangles must have at least 3 vertices.\n"); - exit(1); - } - m->eextras = attribs; -#else /* not TRILIBRARY */ - /* Read the triangles from an .ele file. */ - if (!b->quiet) { - fprintf(stderr, "Opening %s.\n", elefilename); - } - elefile = fopen(elefilename, "r"); - if (elefile == (FILE *) NULL) { - fprintf(stderr, " Error: Cannot access file %s.\n", elefilename); - exit(1); - } - /* Read number of triangles, number of vertices per triangle, and */ - /* number of triangle attributes from .ele file. */ - stringptr = readline(inputline, elefile, elefilename); - m->inelements = (int) strtol(stringptr, &stringptr, 0); - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - incorners = 3; - } else { - incorners = (int) strtol(stringptr, &stringptr, 0); - if (incorners < 3) { - fprintf(stderr, "Error: Triangles in %s must have at least 3 vertices.\n", - elefilename); - exit(1); - } - } - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - m->eextras = 0; - } else { - m->eextras = (int) strtol(stringptr, &stringptr, 0); - } -#endif /* not TRILIBRARY */ - - initializetrisubpools(m, b); - - /* Create the triangles. */ - for (elementnumber = 1; elementnumber <= m->inelements; elementnumber++) { - maketriangle(m, b, &triangleloop); - /* Mark the triangle as living. */ - triangleloop.tri[3] = (triangle) triangleloop.tri; - } - - if (b->poly) { -#ifdef TRILIBRARY - m->insegments = numberofsegments; - segmentmarkers = segmentmarkerlist != (int *) NULL; -#else /* not TRILIBRARY */ - /* Read number of segments and number of segment */ - /* boundary markers from .poly file. */ - stringptr = readline(inputline, polyfile, b->inpolyfilename); - m->insegments = (int) strtol(stringptr, &stringptr, 0); - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - segmentmarkers = 0; - } else { - segmentmarkers = (int) strtol(stringptr, &stringptr, 0); - } -#endif /* not TRILIBRARY */ - - /* Create the subsegments. */ - for (segmentnumber = 1; segmentnumber <= m->insegments; segmentnumber++) { - makesubseg(m, &subsegloop); - /* Mark the subsegment as living. */ - subsegloop.ss[2] = (subseg) subsegloop.ss; - } - } - -#ifdef TRILIBRARY - vertexindex = 0; - attribindex = 0; -#else /* not TRILIBRARY */ - if (b->vararea) { - /* Open an .area file, check for consistency with the .ele file. */ - if (!b->quiet) { - fprintf(stderr, "Opening %s.\n", areafilename); - } - areafile = fopen(areafilename, "r"); - if (areafile == (FILE *) NULL) { - fprintf(stderr, " Error: Cannot access file %s.\n", areafilename); - exit(1); - } - stringptr = readline(inputline, areafile, areafilename); - areaelements = (int) strtol(stringptr, &stringptr, 0); - if (areaelements != m->inelements) { - fprintf(stderr, "Error: %s and %s disagree on number of triangles.\n", - elefilename, areafilename); - exit(1); - } - } -#endif /* not TRILIBRARY */ - - if (!b->quiet) { - fprintf(stderr, "Reconstructing mesh.\n"); - } - /* Allocate a temporary array that maps each vertex to some adjacent */ - /* triangle. I took care to allocate all the permanent memory for */ - /* triangles and subsegments first. */ - vertexarray = (triangle *) trimalloc(m->vertices.items * sizeof(triangle)); - /* Each vertex is initially unrepresented. */ - for (i = 0; i < m->vertices.items; i++) { - vertexarray[i] = (triangle) m->dummytri; - } - - if (b->verbose) { - fprintf(stderr, " Assembling triangles.\n"); - } - /* Read the triangles from the .ele file, and link */ - /* together those that share an edge. */ - traversalinit(&m->triangles); - triangleloop.tri = triangletraverse(m); - elementnumber = b->firstnumber; - while (triangleloop.tri != (triangle *) NULL) { -#ifdef TRILIBRARY - /* Copy the triangle's three corners. */ - for (j = 0; j < 3; j++) { - corner[j] = trianglelist[vertexindex++]; - if ((corner[j] < b->firstnumber) || - (corner[j] >= b->firstnumber + m->invertices)) { - fprintf(stderr, "Error: Triangle %ld has an invalid vertex index.\n", - elementnumber); - exit(1); - } - } -#else /* not TRILIBRARY */ - /* Read triangle number and the triangle's three corners. */ - stringptr = readline(inputline, elefile, elefilename); - for (j = 0; j < 3; j++) { - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - fprintf(stderr, "Error: Triangle %ld is missing vertex %d in %s.\n", - elementnumber, j + 1, elefilename); - exit(1); - } else { - corner[j] = (int) strtol(stringptr, &stringptr, 0); - if ((corner[j] < b->firstnumber) || - (corner[j] >= b->firstnumber + m->invertices)) { - fprintf(stderr, "Error: Triangle %ld has an invalid vertex index.\n", - elementnumber); - exit(1); - } - } - } -#endif /* not TRILIBRARY */ - - /* Find out about (and throw away) extra nodes. */ - for (j = 3; j < incorners; j++) { -#ifdef TRILIBRARY - killvertexindex = trianglelist[vertexindex++]; -#else /* not TRILIBRARY */ - stringptr = findfield(stringptr); - if (*stringptr != '\0') { - killvertexindex = (int) strtol(stringptr, &stringptr, 0); -#endif /* not TRILIBRARY */ - if ((killvertexindex >= b->firstnumber) && - (killvertexindex < b->firstnumber + m->invertices)) { - /* Delete the non-corner vertex if it's not already deleted. */ - killvertex = getvertex(m, b, killvertexindex); - if (vertextype(killvertex) != DEADVERTEX) { - vertexdealloc(m, killvertex); - } - } -#ifndef TRILIBRARY - } -#endif /* not TRILIBRARY */ - } - - /* Read the triangle's attributes. */ - for (j = 0; j < m->eextras; j++) { -#ifdef TRILIBRARY - setelemattribute(triangleloop, j, triangleattriblist[attribindex++]); -#else /* not TRILIBRARY */ - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - setelemattribute(triangleloop, j, 0); - } else { - setelemattribute(triangleloop, j, - (REAL) strtod(stringptr, &stringptr)); - } -#endif /* not TRILIBRARY */ - } - - if (b->vararea) { -#ifdef TRILIBRARY - area = trianglearealist[elementnumber - b->firstnumber]; -#else /* not TRILIBRARY */ - /* Read an area constraint from the .area file. */ - stringptr = readline(inputline, areafile, areafilename); - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - area = -1.0; /* No constraint on this triangle. */ - } else { - area = (REAL) strtod(stringptr, &stringptr); - } -#endif /* not TRILIBRARY */ - setareabound(triangleloop, area); - } - - /* Set the triangle's vertices. */ - triangleloop.orient = 0; - setorg(triangleloop, getvertex(m, b, corner[0])); - setdest(triangleloop, getvertex(m, b, corner[1])); - setapex(triangleloop, getvertex(m, b, corner[2])); - /* Try linking the triangle to others that share these vertices. */ - for (triangleloop.orient = 0; triangleloop.orient < 3; - triangleloop.orient++) { - /* Take the number for the origin of triangleloop. */ - aroundvertex = corner[triangleloop.orient]; - /* Look for other triangles having this vertex. */ - nexttri = vertexarray[aroundvertex - b->firstnumber]; - /* Link the current triangle to the next one in the stack. */ - triangleloop.tri[6 + triangleloop.orient] = nexttri; - /* Push the current triangle onto the stack. */ - vertexarray[aroundvertex - b->firstnumber] = encode(triangleloop); - decode(nexttri, checktri); - if (checktri.tri != m->dummytri) { - dest(triangleloop, tdest); - apex(triangleloop, tapex); - /* Look for other triangles that share an edge. */ - do { - dest(checktri, checkdest); - apex(checktri, checkapex); - if (tapex == checkdest) { - /* The two triangles share an edge; bond them together. */ - lprev(triangleloop, triangleleft); - bond(triangleleft, checktri); - } - if (tdest == checkapex) { - /* The two triangles share an edge; bond them together. */ - lprev(checktri, checkleft); - bond(triangleloop, checkleft); - } - /* Find the next triangle in the stack. */ - nexttri = checktri.tri[6 + checktri.orient]; - decode(nexttri, checktri); - } while (checktri.tri != m->dummytri); - } - } - triangleloop.tri = triangletraverse(m); - elementnumber++; - } - -#ifdef TRILIBRARY - vertexindex = 0; -#else /* not TRILIBRARY */ - fclose(elefile); - if (b->vararea) { - fclose(areafile); - } -#endif /* not TRILIBRARY */ - - hullsize = 0; /* Prepare to count the boundary edges. */ - if (b->poly) { - if (b->verbose) { - fprintf(stderr, " Marking segments in triangulation.\n"); - } - /* Read the segments from the .poly file, and link them */ - /* to their neighboring triangles. */ - boundmarker = 0; - traversalinit(&m->subsegs); - subsegloop.ss = subsegtraverse(m); - segmentnumber = b->firstnumber; - while (subsegloop.ss != (subseg *) NULL) { -#ifdef TRILIBRARY - end[0] = segmentlist[vertexindex++]; - end[1] = segmentlist[vertexindex++]; - if (segmentmarkers) { - boundmarker = segmentmarkerlist[segmentnumber - b->firstnumber]; - } -#else /* not TRILIBRARY */ - /* Read the endpoints of each segment, and possibly a boundary marker. */ - stringptr = readline(inputline, polyfile, b->inpolyfilename); - /* Skip the first (segment number) field. */ - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - fprintf(stderr, "Error: Segment %ld has no endpoints in %s.\n", segmentnumber, - polyfilename); - exit(1); - } else { - end[0] = (int) strtol(stringptr, &stringptr, 0); - } - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - fprintf(stderr, "Error: Segment %ld is missing its second endpoint in %s.\n", - segmentnumber, polyfilename); - exit(1); - } else { - end[1] = (int) strtol(stringptr, &stringptr, 0); - } - if (segmentmarkers) { - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - boundmarker = 0; - } else { - boundmarker = (int) strtol(stringptr, &stringptr, 0); - } - } -#endif /* not TRILIBRARY */ - for (j = 0; j < 2; j++) { - if ((end[j] < b->firstnumber) || - (end[j] >= b->firstnumber + m->invertices)) { - fprintf(stderr, "Error: Segment %ld has an invalid vertex index.\n", - segmentnumber); - exit(1); - } - } - - /* set the subsegment's vertices. */ - subsegloop.ssorient = 0; - setsorg(subsegloop, getvertex(m, b, end[0])); - setsdest(subsegloop, getvertex(m, b, end[1])); - setmark(subsegloop, boundmarker); - /* Try linking the subsegment to triangles that share these vertices. */ - for (subsegloop.ssorient = 0; subsegloop.ssorient < 2; - subsegloop.ssorient++) { - /* Take the number for the destination of subsegloop. */ - aroundvertex = end[1 - subsegloop.ssorient]; - /* Look for triangles having this vertex. */ - prevlink = &vertexarray[aroundvertex - b->firstnumber]; - nexttri = vertexarray[aroundvertex - b->firstnumber]; - decode(nexttri, checktri); - sorg(subsegloop, shorg); - notfound = 1; - /* Look for triangles having this edge. Note that I'm only */ - /* comparing each triangle's destination with the subsegment; */ - /* each triangle's apex is handled through a different vertex. */ - /* Because each triangle appears on three vertices' lists, each */ - /* occurrence of a triangle on a list can (and does) represent */ - /* an edge. In this way, most edges are represented twice, and */ - /* every triangle-subsegment bond is represented once. */ - while (notfound && (checktri.tri != m->dummytri)) { - dest(checktri, checkdest); - if (shorg == checkdest) { - /* We have a match. Remove this triangle from the list. */ - *prevlink = checktri.tri[6 + checktri.orient]; - /* Bond the subsegment to the triangle. */ - tsbond(checktri, subsegloop); - /* Check if this is a boundary edge. */ - sym(checktri, checkneighbor); - if (checkneighbor.tri == m->dummytri) { - /* The next line doesn't insert a subsegment (because there's */ - /* already one there), but it sets the boundary markers of */ - /* the existing subsegment and its vertices. */ - insertsubseg(m, b, &checktri, 1); - hullsize++; - } - notfound = 0; - } - /* Find the next triangle in the stack. */ - prevlink = &checktri.tri[6 + checktri.orient]; - nexttri = checktri.tri[6 + checktri.orient]; - decode(nexttri, checktri); - } - } - subsegloop.ss = subsegtraverse(m); - segmentnumber++; - } - } - - /* Mark the remaining edges as not being attached to any subsegment. */ - /* Also, count the (yet uncounted) boundary edges. */ - for (i = 0; i < m->vertices.items; i++) { - /* Search the stack of triangles adjacent to a vertex. */ - nexttri = vertexarray[i]; - decode(nexttri, checktri); - while (checktri.tri != m->dummytri) { - /* Find the next triangle in the stack before this */ - /* information gets overwritten. */ - nexttri = checktri.tri[6 + checktri.orient]; - /* No adjacent subsegment. (This overwrites the stack info.) */ - tsdissolve(checktri); - sym(checktri, checkneighbor); - if (checkneighbor.tri == m->dummytri) { - insertsubseg(m, b, &checktri, 1); - hullsize++; - } - decode(nexttri, checktri); - } - } - - trifree((VOID *) vertexarray); - return hullsize; -} - -#endif /* not CDT_ONLY */ - -/** **/ -/** **/ -/********* General mesh construction routines end here *********/ - -/********* Segment insertion begins here *********/ -/** **/ -/** **/ - -/*****************************************************************************/ -/* */ -/* finddirection() Find the first triangle on the path from one point */ -/* to another. */ -/* */ -/* Finds the triangle that intersects a line segment drawn from the */ -/* origin of `searchtri' to the point `searchpoint', and returns the result */ -/* in `searchtri'. The origin of `searchtri' does not change, even though */ -/* the triangle returned may differ from the one passed in. This routine */ -/* is used to find the direction to move in to get from one point to */ -/* another. */ -/* */ -/* The return value notes whether the destination or apex of the found */ -/* triangle is collinear with the two points in question. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -enum finddirectionresult finddirection(struct mesh *m, struct behavior *b, - struct otri *searchtri, - vertex searchpoint) -#else /* not ANSI_DECLARATORS */ -enum finddirectionresult finddirection(m, b, searchtri, searchpoint) -struct mesh *m; -struct behavior *b; -struct otri *searchtri; -vertex searchpoint; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri checktri; - vertex startvertex; - vertex leftvertex, rightvertex; - REAL leftccw, rightccw; - int leftflag, rightflag; - triangle ptr; /* Temporary variable used by onext() and oprev(). */ - - org(*searchtri, startvertex); - dest(*searchtri, rightvertex); - apex(*searchtri, leftvertex); - /* Is `searchpoint' to the left? */ - leftccw = counterclockwise(m, b, searchpoint, startvertex, leftvertex); - leftflag = leftccw > 0.0; - /* Is `searchpoint' to the right? */ - rightccw = counterclockwise(m, b, startvertex, searchpoint, rightvertex); - rightflag = rightccw > 0.0; - if (leftflag && rightflag) { - /* `searchtri' faces directly away from `searchpoint'. We could go left */ - /* or right. Ask whether it's a triangle or a boundary on the left. */ - onext(*searchtri, checktri); - if (checktri.tri == m->dummytri) { - leftflag = 0; - } else { - rightflag = 0; - } - } - while (leftflag) { - /* Turn left until satisfied. */ - onextself(*searchtri); - if (searchtri->tri == m->dummytri) { - fprintf(stderr, "Internal error in finddirection(): Unable to find a\n"); - fprintf(stderr, " triangle leading from (%.12g, %.12g) to", startvertex[0], - startvertex[1]); - fprintf(stderr, " (%.12g, %.12g).\n", searchpoint[0], searchpoint[1]); - internalerror(); - } - apex(*searchtri, leftvertex); - rightccw = leftccw; - leftccw = counterclockwise(m, b, searchpoint, startvertex, leftvertex); - leftflag = leftccw > 0.0; - } - while (rightflag) { - /* Turn right until satisfied. */ - oprevself(*searchtri); - if (searchtri->tri == m->dummytri) { - fprintf(stderr, "Internal error in finddirection(): Unable to find a\n"); - fprintf(stderr, " triangle leading from (%.12g, %.12g) to", startvertex[0], - startvertex[1]); - fprintf(stderr, " (%.12g, %.12g).\n", searchpoint[0], searchpoint[1]); - internalerror(); - } - dest(*searchtri, rightvertex); - leftccw = rightccw; - rightccw = counterclockwise(m, b, startvertex, searchpoint, rightvertex); - rightflag = rightccw > 0.0; - } - if (leftccw == 0.0) { - return LEFTCOLLINEAR; - } else if (rightccw == 0.0) { - return RIGHTCOLLINEAR; - } else { - return WITHIN; - } -} - -/*****************************************************************************/ -/* */ -/* segmentintersection() Find the intersection of an existing segment */ -/* and a segment that is being inserted. Insert */ -/* a vertex at the intersection, splitting an */ -/* existing subsegment. */ -/* */ -/* The segment being inserted connects the apex of splittri to endpoint2. */ -/* splitsubseg is the subsegment being split, and MUST adjoin splittri. */ -/* Hence, endpoints of the subsegment being split are the origin and */ -/* destination of splittri. */ -/* */ -/* On completion, splittri is a handle having the newly inserted */ -/* intersection point as its origin, and endpoint1 as its destination. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void segmentintersection(struct mesh *m, struct behavior *b, - struct otri *splittri, struct osub *splitsubseg, - vertex endpoint2) -#else /* not ANSI_DECLARATORS */ -void segmentintersection(m, b, splittri, splitsubseg, endpoint2) -struct mesh *m; -struct behavior *b; -struct otri *splittri; -struct osub *splitsubseg; -vertex endpoint2; -#endif /* not ANSI_DECLARATORS */ - -{ - vertex endpoint1; - vertex torg, tdest; - vertex leftvertex, rightvertex; - vertex newvertex; - enum insertvertexresult success; - enum finddirectionresult collinear; - REAL ex, ey; - REAL tx, ty; - REAL etx, ety; - REAL split, denom; - int i; - triangle ptr; /* Temporary variable used by onext(). */ - - /* Find the other three segment endpoints. */ - apex(*splittri, endpoint1); - org(*splittri, torg); - dest(*splittri, tdest); - /* Segment intersection formulae; see the Antonio reference. */ - tx = tdest[0] - torg[0]; - ty = tdest[1] - torg[1]; - ex = endpoint2[0] - endpoint1[0]; - ey = endpoint2[1] - endpoint1[1]; - etx = torg[0] - endpoint2[0]; - ety = torg[1] - endpoint2[1]; - denom = ty * ex - tx * ey; - if (denom == 0.0) { - fprintf(stderr, "Internal error in segmentintersection():"); - fprintf(stderr, " Attempt to find intersection of parallel segments.\n"); - internalerror(); - } - split = (ey * etx - ex * ety) / denom; - /* Create the new vertex. */ - newvertex = (vertex) poolalloc(&m->vertices); - /* Interpolate its coordinate and attributes. */ - for (i = 0; i < 2 + m->nextras; i++) { - newvertex[i] = torg[i] + split * (tdest[i] - torg[i]); - } - setvertexmark(newvertex, mark(*splitsubseg)); - setvertextype(newvertex, INPUTVERTEX); - if (b->verbose > 1) { - fprintf(stderr, - " Splitting subsegment (%.12g, %.12g) (%.12g, %.12g) at (%.12g, %.12g).\n", - torg[0], torg[1], tdest[0], tdest[1], newvertex[0], newvertex[1]); - } - /* Insert the intersection vertex. This should always succeed. */ - success = insertvertex(m, b, newvertex, splittri, splitsubseg, 0, 0, 0.0); - if (success != SUCCESSFULVERTEX) { - fprintf(stderr, "Internal error in segmentintersection():\n"); - fprintf(stderr, " Failure to split a segment.\n"); - internalerror(); - } - if (m->steinerleft > 0) { - m->steinerleft--; - } - /* Inserting the vertex may have caused edge flips. We wish to rediscover */ - /* the edge connecting endpoint1 to the new intersection vertex. */ - collinear = finddirection(m, b, splittri, endpoint1); - dest(*splittri, rightvertex); - apex(*splittri, leftvertex); - if ((leftvertex[0] == endpoint1[0]) && (leftvertex[1] == endpoint1[1])) { - onextself(*splittri); - } else if ((rightvertex[0] != endpoint1[0]) || - (rightvertex[1] != endpoint1[1])) { - fprintf(stderr, "Internal error in segmentintersection():\n"); - fprintf(stderr, " Topological inconsistency after splitting a segment.\n"); - internalerror(); - } - /* `splittri' should have destination endpoint1. */ -} - -/*****************************************************************************/ -/* */ -/* scoutsegment() Scout the first triangle on the path from one endpoint */ -/* to another, and check for completion (reaching the */ -/* second endpoint), a collinear vertex, or the */ -/* intersection of two segments. */ -/* */ -/* Returns one if the entire segment is successfully inserted, and zero if */ -/* the job must be finished by conformingedge() or constrainededge(). */ -/* */ -/* If the first triangle on the path has the second endpoint as its */ -/* destination or apex, a subsegment is inserted and the job is done. */ -/* */ -/* If the first triangle on the path has a destination or apex that lies on */ -/* the segment, a subsegment is inserted connecting the first endpoint to */ -/* the collinear vertex, and the search is continued from the collinear */ -/* vertex. */ -/* */ -/* If the first triangle on the path has a subsegment opposite its origin, */ -/* then there is a segment that intersects the segment being inserted. */ -/* Their intersection vertex is inserted, splitting the subsegment. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -int scoutsegment(struct mesh *m, struct behavior *b, struct otri *searchtri, - vertex endpoint2, int newmark) -#else /* not ANSI_DECLARATORS */ -int scoutsegment(m, b, searchtri, endpoint2, newmark) -struct mesh *m; -struct behavior *b; -struct otri *searchtri; -vertex endpoint2; -int newmark; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri crosstri; - struct osub crosssubseg; - vertex leftvertex, rightvertex; - enum finddirectionresult collinear; - subseg sptr; /* Temporary variable used by tspivot(). */ - - collinear = finddirection(m, b, searchtri, endpoint2); - dest(*searchtri, rightvertex); - apex(*searchtri, leftvertex); - if (((leftvertex[0] == endpoint2[0]) && (leftvertex[1] == endpoint2[1])) || - ((rightvertex[0] == endpoint2[0]) && (rightvertex[1] == endpoint2[1]))) { - /* The segment is already an edge in the mesh. */ - if ((leftvertex[0] == endpoint2[0]) && (leftvertex[1] == endpoint2[1])) { - lprevself(*searchtri); - } - /* Insert a subsegment, if there isn't already one there. */ - insertsubseg(m, b, searchtri, newmark); - return 1; - } else if (collinear == LEFTCOLLINEAR) { - /* We've collided with a vertex between the segment's endpoints. */ - /* Make the collinear vertex be the triangle's origin. */ - lprevself(*searchtri); - insertsubseg(m, b, searchtri, newmark); - /* Insert the remainder of the segment. */ - return scoutsegment(m, b, searchtri, endpoint2, newmark); - } else if (collinear == RIGHTCOLLINEAR) { - /* We've collided with a vertex between the segment's endpoints. */ - insertsubseg(m, b, searchtri, newmark); - /* Make the collinear vertex be the triangle's origin. */ - lnextself(*searchtri); - /* Insert the remainder of the segment. */ - return scoutsegment(m, b, searchtri, endpoint2, newmark); - } else { - lnext(*searchtri, crosstri); - tspivot(crosstri, crosssubseg); - /* Check for a crossing segment. */ - if (crosssubseg.ss == m->dummysub) { - return 0; - } else { - /* Insert a vertex at the intersection. */ - segmentintersection(m, b, &crosstri, &crosssubseg, endpoint2); - otricopy(crosstri, *searchtri); - insertsubseg(m, b, searchtri, newmark); - /* Insert the remainder of the segment. */ - return scoutsegment(m, b, searchtri, endpoint2, newmark); - } - } -} - -/*****************************************************************************/ -/* */ -/* conformingedge() Force a segment into a conforming Delaunay */ -/* triangulation by inserting a vertex at its midpoint, */ -/* and recursively forcing in the two half-segments if */ -/* necessary. */ -/* */ -/* Generates a sequence of subsegments connecting `endpoint1' to */ -/* `endpoint2'. `newmark' is the boundary marker of the segment, assigned */ -/* to each new splitting vertex and subsegment. */ -/* */ -/* Note that conformingedge() does not always maintain the conforming */ -/* Delaunay property. Once inserted, segments are locked into place; */ -/* vertices inserted later (to force other segments in) may render these */ -/* fixed segments non-Delaunay. The conforming Delaunay property will be */ -/* restored by enforcequality() by splitting encroached subsegments. */ -/* */ -/*****************************************************************************/ - -#ifndef REDUCED -#ifndef CDT_ONLY - -#ifdef ANSI_DECLARATORS -void conformingedge(struct mesh *m, struct behavior *b, - vertex endpoint1, vertex endpoint2, int newmark) -#else /* not ANSI_DECLARATORS */ -void conformingedge(m, b, endpoint1, endpoint2, newmark) -struct mesh *m; -struct behavior *b; -vertex endpoint1; -vertex endpoint2; -int newmark; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri searchtri1, searchtri2; - struct osub brokensubseg; - vertex newvertex; - vertex midvertex1, midvertex2; - enum insertvertexresult success; - int i; - subseg sptr; /* Temporary variable used by tspivot(). */ - - if (b->verbose > 2) { - fprintf(stderr, "Forcing segment into triangulation by recursive splitting:\n"); - fprintf(stderr, " (%.12g, %.12g) (%.12g, %.12g)\n", endpoint1[0], endpoint1[1], - endpoint2[0], endpoint2[1]); - } - /* Create a new vertex to insert in the middle of the segment. */ - newvertex = (vertex) poolalloc(&m->vertices); - /* Interpolate coordinates and attributes. */ - for (i = 0; i < 2 + m->nextras; i++) { - newvertex[i] = 0.5 * (endpoint1[i] + endpoint2[i]); - } - setvertexmark(newvertex, newmark); - setvertextype(newvertex, SEGMENTVERTEX); - /* No known triangle to search from. */ - searchtri1.tri = m->dummytri; - /* Attempt to insert the new vertex. */ - success = insertvertex(m, b, newvertex, &searchtri1, (struct osub *) NULL, - 0, 0, 0.0); - if (success == DUPLICATEVERTEX) { - if (b->verbose > 2) { - fprintf(stderr, " Segment intersects existing vertex (%.12g, %.12g).\n", - newvertex[0], newvertex[1]); - } - /* Use the vertex that's already there. */ - vertexdealloc(m, newvertex); - org(searchtri1, newvertex); - } else { - if (success == VIOLATINGVERTEX) { - if (b->verbose > 2) { - fprintf(stderr, " Two segments intersect at (%.12g, %.12g).\n", - newvertex[0], newvertex[1]); - } - /* By fluke, we've landed right on another segment. Split it. */ - tspivot(searchtri1, brokensubseg); - success = insertvertex(m, b, newvertex, &searchtri1, &brokensubseg, - 0, 0, 0.0); - if (success != SUCCESSFULVERTEX) { - fprintf(stderr, "Internal error in conformingedge():\n"); - fprintf(stderr, " Failure to split a segment.\n"); - internalerror(); - } - } - /* The vertex has been inserted successfully. */ - if (m->steinerleft > 0) { - m->steinerleft--; - } - } - otricopy(searchtri1, searchtri2); - /* `searchtri1' and `searchtri2' are fastened at their origins to */ - /* `newvertex', and will be directed toward `endpoint1' and `endpoint2' */ - /* respectively. First, we must get `searchtri2' out of the way so it */ - /* won't be invalidated during the insertion of the first half of the */ - /* segment. */ - finddirection(m, b, &searchtri2, endpoint2); - if (!scoutsegment(m, b, &searchtri1, endpoint1, newmark)) { - /* The origin of searchtri1 may have changed if a collision with an */ - /* intervening vertex on the segment occurred. */ - org(searchtri1, midvertex1); - conformingedge(m, b, midvertex1, endpoint1, newmark); - } - if (!scoutsegment(m, b, &searchtri2, endpoint2, newmark)) { - /* The origin of searchtri2 may have changed if a collision with an */ - /* intervening vertex on the segment occurred. */ - org(searchtri2, midvertex2); - conformingedge(m, b, midvertex2, endpoint2, newmark); - } -} - -#endif /* not CDT_ONLY */ -#endif /* not REDUCED */ - -/*****************************************************************************/ -/* */ -/* delaunayfixup() Enforce the Delaunay condition at an edge, fanning out */ -/* recursively from an existing vertex. Pay special */ -/* attention to stacking inverted triangles. */ -/* */ -/* This is a support routine for inserting segments into a constrained */ -/* Delaunay triangulation. */ -/* */ -/* The origin of fixuptri is treated as if it has just been inserted, and */ -/* the local Delaunay condition needs to be enforced. It is only enforced */ -/* in one sector, however, that being the angular range defined by */ -/* fixuptri. */ -/* */ -/* This routine also needs to make decisions regarding the "stacking" of */ -/* triangles. (Read the description of constrainededge() below before */ -/* reading on here, so you understand the algorithm.) If the position of */ -/* the new vertex (the origin of fixuptri) indicates that the vertex before */ -/* it on the polygon is a reflex vertex, then "stack" the triangle by */ -/* doing nothing. (fixuptri is an inverted triangle, which is how stacked */ -/* triangles are identified.) */ -/* */ -/* Otherwise, check whether the vertex before that was a reflex vertex. */ -/* If so, perform an edge flip, thereby eliminating an inverted triangle */ -/* (popping it off the stack). The edge flip may result in the creation */ -/* of a new inverted triangle, depending on whether or not the new vertex */ -/* is visible to the vertex three edges behind on the polygon. */ -/* */ -/* If neither of the two vertices behind the new vertex are reflex */ -/* vertices, fixuptri and fartri, the triangle opposite it, are not */ -/* inverted; hence, ensure that the edge between them is locally Delaunay. */ -/* */ -/* `leftside' indicates whether or not fixuptri is to the left of the */ -/* segment being inserted. (Imagine that the segment is pointing up from */ -/* endpoint1 to endpoint2.) */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void delaunayfixup(struct mesh *m, struct behavior *b, - struct otri *fixuptri, int leftside) -#else /* not ANSI_DECLARATORS */ -void delaunayfixup(m, b, fixuptri, leftside) -struct mesh *m; -struct behavior *b; -struct otri *fixuptri; -int leftside; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri neartri; - struct otri fartri; - struct osub faredge; - vertex nearvertex, leftvertex, rightvertex, farvertex; - triangle ptr; /* Temporary variable used by sym(). */ - subseg sptr; /* Temporary variable used by tspivot(). */ - - lnext(*fixuptri, neartri); - sym(neartri, fartri); - /* Check if the edge opposite the origin of fixuptri can be flipped. */ - if (fartri.tri == m->dummytri) { - return; - } - tspivot(neartri, faredge); - if (faredge.ss != m->dummysub) { - return; - } - /* Find all the relevant vertices. */ - apex(neartri, nearvertex); - org(neartri, leftvertex); - dest(neartri, rightvertex); - apex(fartri, farvertex); - /* Check whether the previous polygon vertex is a reflex vertex. */ - if (leftside) { - if (counterclockwise(m, b, nearvertex, leftvertex, farvertex) <= 0.0) { - /* leftvertex is a reflex vertex too. Nothing can */ - /* be done until a convex section is found. */ - return; - } - } else { - if (counterclockwise(m, b, farvertex, rightvertex, nearvertex) <= 0.0) { - /* rightvertex is a reflex vertex too. Nothing can */ - /* be done until a convex section is found. */ - return; - } - } - if (counterclockwise(m, b, rightvertex, leftvertex, farvertex) > 0.0) { - /* fartri is not an inverted triangle, and farvertex is not a reflex */ - /* vertex. As there are no reflex vertices, fixuptri isn't an */ - /* inverted triangle, either. Hence, test the edge between the */ - /* triangles to ensure it is locally Delaunay. */ - if (incircle(m, b, leftvertex, farvertex, rightvertex, nearvertex) <= - 0.0) { - return; - } - /* Not locally Delaunay; go on to an edge flip. */ - } /* else fartri is inverted; remove it from the stack by flipping. */ - flip(m, b, &neartri); - lprevself(*fixuptri); /* Restore the origin of fixuptri after the flip. */ - /* Recursively process the two triangles that result from the flip. */ - delaunayfixup(m, b, fixuptri, leftside); - delaunayfixup(m, b, &fartri, leftside); -} - -/*****************************************************************************/ -/* */ -/* constrainededge() Force a segment into a constrained Delaunay */ -/* triangulation by deleting the triangles it */ -/* intersects, and triangulating the polygons that */ -/* form on each side of it. */ -/* */ -/* Generates a single subsegment connecting `endpoint1' to `endpoint2'. */ -/* The triangle `starttri' has `endpoint1' as its origin. `newmark' is the */ -/* boundary marker of the segment. */ -/* */ -/* To insert a segment, every triangle whose interior intersects the */ -/* segment is deleted. The union of these deleted triangles is a polygon */ -/* (which is not necessarily monotone, but is close enough), which is */ -/* divided into two polygons by the new segment. This routine's task is */ -/* to generate the Delaunay triangulation of these two polygons. */ -/* */ -/* You might think of this routine's behavior as a two-step process. The */ -/* first step is to walk from endpoint1 to endpoint2, flipping each edge */ -/* encountered. This step creates a fan of edges connected to endpoint1, */ -/* including the desired edge to endpoint2. The second step enforces the */ -/* Delaunay condition on each side of the segment in an incremental manner: */ -/* proceeding along the polygon from endpoint1 to endpoint2 (this is done */ -/* independently on each side of the segment), each vertex is "enforced" */ -/* as if it had just been inserted, but affecting only the previous */ -/* vertices. The result is the same as if the vertices had been inserted */ -/* in the order they appear on the polygon, so the result is Delaunay. */ -/* */ -/* In truth, constrainededge() interleaves these two steps. The procedure */ -/* walks from endpoint1 to endpoint2, and each time an edge is encountered */ -/* and flipped, the newly exposed vertex (at the far end of the flipped */ -/* edge) is "enforced" upon the previously flipped edges, usually affecting */ -/* only one side of the polygon (depending upon which side of the segment */ -/* the vertex falls on). */ -/* */ -/* The algorithm is complicated by the need to handle polygons that are not */ -/* convex. Although the polygon is not necessarily monotone, it can be */ -/* triangulated in a manner similar to the stack-based algorithms for */ -/* monotone polygons. For each reflex vertex (local concavity) of the */ -/* polygon, there will be an inverted triangle formed by one of the edge */ -/* flips. (An inverted triangle is one with negative area - that is, its */ -/* vertices are arranged in clockwise order - and is best thought of as a */ -/* wrinkle in the fabric of the mesh.) Each inverted triangle can be */ -/* thought of as a reflex vertex pushed on the stack, waiting to be fixed */ -/* later. */ -/* */ -/* A reflex vertex is popped from the stack when a vertex is inserted that */ -/* is visible to the reflex vertex. (However, if the vertex behind the */ -/* reflex vertex is not visible to the reflex vertex, a new inverted */ -/* triangle will take its place on the stack.) These details are handled */ -/* by the delaunayfixup() routine above. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void constrainededge(struct mesh *m, struct behavior *b, - struct otri *starttri, vertex endpoint2, int newmark) -#else /* not ANSI_DECLARATORS */ -void constrainededge(m, b, starttri, endpoint2, newmark) -struct mesh *m; -struct behavior *b; -struct otri *starttri; -vertex endpoint2; -int newmark; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri fixuptri, fixuptri2; - struct osub crosssubseg; - vertex endpoint1; - vertex farvertex; - REAL area; - int collision; - int done; - triangle ptr; /* Temporary variable used by sym() and oprev(). */ - subseg sptr; /* Temporary variable used by tspivot(). */ - - org(*starttri, endpoint1); - lnext(*starttri, fixuptri); - flip(m, b, &fixuptri); - /* `collision' indicates whether we have found a vertex directly */ - /* between endpoint1 and endpoint2. */ - collision = 0; - done = 0; - do { - org(fixuptri, farvertex); - /* `farvertex' is the extreme point of the polygon we are "digging" */ - /* to get from endpoint1 to endpoint2. */ - if ((farvertex[0] == endpoint2[0]) && (farvertex[1] == endpoint2[1])) { - oprev(fixuptri, fixuptri2); - /* Enforce the Delaunay condition around endpoint2. */ - delaunayfixup(m, b, &fixuptri, 0); - delaunayfixup(m, b, &fixuptri2, 1); - done = 1; - } else { - /* Check whether farvertex is to the left or right of the segment */ - /* being inserted, to decide which edge of fixuptri to dig */ - /* through next. */ - area = counterclockwise(m, b, endpoint1, endpoint2, farvertex); - if (area == 0.0) { - /* We've collided with a vertex between endpoint1 and endpoint2. */ - collision = 1; - oprev(fixuptri, fixuptri2); - /* Enforce the Delaunay condition around farvertex. */ - delaunayfixup(m, b, &fixuptri, 0); - delaunayfixup(m, b, &fixuptri2, 1); - done = 1; - } else { - if (area > 0.0) { /* farvertex is to the left of the segment. */ - oprev(fixuptri, fixuptri2); - /* Enforce the Delaunay condition around farvertex, on the */ - /* left side of the segment only. */ - delaunayfixup(m, b, &fixuptri2, 1); - /* Flip the edge that crosses the segment. After the edge is */ - /* flipped, one of its endpoints is the fan vertex, and the */ - /* destination of fixuptri is the fan vertex. */ - lprevself(fixuptri); - } else { /* farvertex is to the right of the segment. */ - delaunayfixup(m, b, &fixuptri, 0); - /* Flip the edge that crosses the segment. After the edge is */ - /* flipped, one of its endpoints is the fan vertex, and the */ - /* destination of fixuptri is the fan vertex. */ - oprevself(fixuptri); - } - /* Check for two intersecting segments. */ - tspivot(fixuptri, crosssubseg); - if (crosssubseg.ss == m->dummysub) { - flip(m, b, &fixuptri); /* May create inverted triangle at left. */ - } else { - /* We've collided with a segment between endpoint1 and endpoint2. */ - collision = 1; - /* Insert a vertex at the intersection. */ - segmentintersection(m, b, &fixuptri, &crosssubseg, endpoint2); - done = 1; - } - } - } - } while (!done); - /* Insert a subsegment to make the segment permanent. */ - insertsubseg(m, b, &fixuptri, newmark); - /* If there was a collision with an interceding vertex, install another */ - /* segment connecting that vertex with endpoint2. */ - if (collision) { - /* Insert the remainder of the segment. */ - if (!scoutsegment(m, b, &fixuptri, endpoint2, newmark)) { - constrainededge(m, b, &fixuptri, endpoint2, newmark); - } - } -} - -/*****************************************************************************/ -/* */ -/* insertsegment() Insert a PSLG segment into a triangulation. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void insertsegment(struct mesh *m, struct behavior *b, - vertex endpoint1, vertex endpoint2, int newmark) -#else /* not ANSI_DECLARATORS */ -void insertsegment(m, b, endpoint1, endpoint2, newmark) -struct mesh *m; -struct behavior *b; -vertex endpoint1; -vertex endpoint2; -int newmark; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri searchtri1, searchtri2; - triangle encodedtri; - vertex checkvertex; - triangle ptr; /* Temporary variable used by sym(). */ - - if (b->verbose > 1) { - fprintf(stderr, " Connecting (%.12g, %.12g) to (%.12g, %.12g).\n", - endpoint1[0], endpoint1[1], endpoint2[0], endpoint2[1]); - } - - /* Find a triangle whose origin is the segment's first endpoint. */ - checkvertex = (vertex) NULL; - encodedtri = vertex2tri(endpoint1); - if (encodedtri != (triangle) NULL) { - decode(encodedtri, searchtri1); - org(searchtri1, checkvertex); - } - if (checkvertex != endpoint1) { - /* Find a boundary triangle to search from. */ - searchtri1.tri = m->dummytri; - searchtri1.orient = 0; - symself(searchtri1); - /* Search for the segment's first endpoint by point location. */ - if (locate(m, b, endpoint1, &searchtri1) != ONVERTEX) { - fprintf(stderr, - "Internal error in insertsegment(): Unable to locate PSLG vertex\n"); - fprintf(stderr, " (%.12g, %.12g) in triangulation.\n", - endpoint1[0], endpoint1[1]); - internalerror(); - } - } - /* Remember this triangle to improve subsequent point location. */ - otricopy(searchtri1, m->recenttri); - /* Scout the beginnings of a path from the first endpoint */ - /* toward the second. */ - if (scoutsegment(m, b, &searchtri1, endpoint2, newmark)) { - /* The segment was easily inserted. */ - return; - } - /* The first endpoint may have changed if a collision with an intervening */ - /* vertex on the segment occurred. */ - org(searchtri1, endpoint1); - - /* Find a triangle whose origin is the segment's second endpoint. */ - checkvertex = (vertex) NULL; - encodedtri = vertex2tri(endpoint2); - if (encodedtri != (triangle) NULL) { - decode(encodedtri, searchtri2); - org(searchtri2, checkvertex); - } - if (checkvertex != endpoint2) { - /* Find a boundary triangle to search from. */ - searchtri2.tri = m->dummytri; - searchtri2.orient = 0; - symself(searchtri2); - /* Search for the segment's second endpoint by point location. */ - if (locate(m, b, endpoint2, &searchtri2) != ONVERTEX) { - fprintf(stderr, - "Internal error in insertsegment(): Unable to locate PSLG vertex\n"); - fprintf(stderr, " (%.12g, %.12g) in triangulation.\n", - endpoint2[0], endpoint2[1]); - internalerror(); - } - } - /* Remember this triangle to improve subsequent point location. */ - otricopy(searchtri2, m->recenttri); - /* Scout the beginnings of a path from the second endpoint */ - /* toward the first. */ - if (scoutsegment(m, b, &searchtri2, endpoint1, newmark)) { - /* The segment was easily inserted. */ - return; - } - /* The second endpoint may have changed if a collision with an intervening */ - /* vertex on the segment occurred. */ - org(searchtri2, endpoint2); - -#ifndef REDUCED -#ifndef CDT_ONLY - if (b->splitseg) { - /* Insert vertices to force the segment into the triangulation. */ - conformingedge(m, b, endpoint1, endpoint2, newmark); - } else { -#endif /* not CDT_ONLY */ -#endif /* not REDUCED */ - /* Insert the segment directly into the triangulation. */ - constrainededge(m, b, &searchtri1, endpoint2, newmark); -#ifndef REDUCED -#ifndef CDT_ONLY - } -#endif /* not CDT_ONLY */ -#endif /* not REDUCED */ -} - -/*****************************************************************************/ -/* */ -/* markhull() Cover the convex hull of a triangulation with subsegments. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void markhull(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -void markhull(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri hulltri; - struct otri nexttri; - struct otri starttri; - triangle ptr; /* Temporary variable used by sym() and oprev(). */ - - /* Find a triangle handle on the hull. */ - hulltri.tri = m->dummytri; - hulltri.orient = 0; - symself(hulltri); - /* Remember where we started so we know when to stop. */ - otricopy(hulltri, starttri); - /* Go once counterclockwise around the convex hull. */ - do { - /* Create a subsegment if there isn't already one here. */ - insertsubseg(m, b, &hulltri, 1); - /* To find the next hull edge, go clockwise around the next vertex. */ - lnextself(hulltri); - oprev(hulltri, nexttri); - while (nexttri.tri != m->dummytri) { - otricopy(nexttri, hulltri); - oprev(hulltri, nexttri); - } - } while (!otriequal(hulltri, starttri)); -} - -/*****************************************************************************/ -/* */ -/* formskeleton() Create the segments of a triangulation, including PSLG */ -/* segments and edges on the convex hull. */ -/* */ -/* The PSLG segments are read from a .poly file. The return value is the */ -/* number of segments in the file. */ -/* */ -/*****************************************************************************/ - -#ifdef TRILIBRARY - -#ifdef ANSI_DECLARATORS -void formskeleton(struct mesh *m, struct behavior *b, int *segmentlist, - int *segmentmarkerlist, int numberofsegments) -#else /* not ANSI_DECLARATORS */ -void formskeleton(m, b, segmentlist, segmentmarkerlist, numberofsegments) -struct mesh *m; -struct behavior *b; -int *segmentlist; -int *segmentmarkerlist; -int numberofsegments; -#endif /* not ANSI_DECLARATORS */ - -#else /* not TRILIBRARY */ - -#ifdef ANSI_DECLARATORS -void formskeleton(struct mesh *m, struct behavior *b, - FILE *polyfile, char *polyfilename) -#else /* not ANSI_DECLARATORS */ -void formskeleton(m, b, polyfile, polyfilename) -struct mesh *m; -struct behavior *b; -FILE *polyfile; -char *polyfilename; -#endif /* not ANSI_DECLARATORS */ - -#endif /* not TRILIBRARY */ - -{ -#ifdef TRILIBRARY - char polyfilename[6]; - int index; -#else /* not TRILIBRARY */ - char inputline[INPUTLINESIZE]; - char *stringptr; -#endif /* not TRILIBRARY */ - vertex endpoint1, endpoint2; - int segmentmarkers; - int end1, end2; - int boundmarker; - int i; - - if (b->poly) { - if (!b->quiet) { - fprintf(stderr, "Recovering segments in Delaunay triangulation.\n"); - } -#ifdef TRILIBRARY - strcpy(polyfilename, "input"); - m->insegments = numberofsegments; - segmentmarkers = segmentmarkerlist != (int *) NULL; - index = 0; -#else /* not TRILIBRARY */ - /* Read the segments from a .poly file. */ - /* Read number of segments and number of boundary markers. */ - stringptr = readline(inputline, polyfile, polyfilename); - m->insegments = (int) strtol(stringptr, &stringptr, 0); - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - segmentmarkers = 0; - } else { - segmentmarkers = (int) strtol(stringptr, &stringptr, 0); - } -#endif /* not TRILIBRARY */ - /* If the input vertices are collinear, there is no triangulation, */ - /* so don't try to insert segments. */ - if (m->triangles.items == 0) { - return; - } - - /* If segments are to be inserted, compute a mapping */ - /* from vertices to triangles. */ - if (m->insegments > 0) { - makevertexmap(m, b); - if (b->verbose) { - fprintf(stderr, " Recovering PSLG segments.\n"); - } - } - - boundmarker = 0; - /* Read and insert the segments. */ - for (i = 0; i < m->insegments; i++) { -#ifdef TRILIBRARY - end1 = segmentlist[index++]; - end2 = segmentlist[index++]; - if (segmentmarkers) { - boundmarker = segmentmarkerlist[i]; - } -#else /* not TRILIBRARY */ - stringptr = readline(inputline, polyfile, b->inpolyfilename); - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - fprintf(stderr, "Error: Segment %d has no endpoints in %s.\n", - b->firstnumber + i, polyfilename); - exit(1); - } else { - end1 = (int) strtol(stringptr, &stringptr, 0); - } - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - fprintf(stderr, "Error: Segment %d is missing its second endpoint in %s.\n", - b->firstnumber + i, polyfilename); - exit(1); - } else { - end2 = (int) strtol(stringptr, &stringptr, 0); - } - if (segmentmarkers) { - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - boundmarker = 0; - } else { - boundmarker = (int) strtol(stringptr, &stringptr, 0); - } - } -#endif /* not TRILIBRARY */ - if ((end1 < b->firstnumber) || - (end1 >= b->firstnumber + m->invertices)) { - if (!b->quiet) { - fprintf(stderr, "Warning: Invalid first endpoint of segment %d in %s.\n", - b->firstnumber + i, polyfilename); - } - } else if ((end2 < b->firstnumber) || - (end2 >= b->firstnumber + m->invertices)) { - if (!b->quiet) { - fprintf(stderr, "Warning: Invalid second endpoint of segment %d in %s.\n", - b->firstnumber + i, polyfilename); - } - } else { - endpoint1 = getvertex(m, b, end1); - endpoint2 = getvertex(m, b, end2); - if ((endpoint1[0] == endpoint2[0]) && (endpoint1[1] == endpoint2[1])) { - if (!b->quiet) { - fprintf(stderr, "Warning: Endpoints of segment %d are coincident in %s.\n", - b->firstnumber + i, polyfilename); - } - } else { - insertsegment(m, b, endpoint1, endpoint2, boundmarker); - } - } - } - } else { - m->insegments = 0; - } - if (b->convex || !b->poly) { - /* Enclose the convex hull with subsegments. */ - if (b->verbose) { - fprintf(stderr, " Enclosing convex hull with segments.\n"); - } - markhull(m, b); - } -} - -/** **/ -/** **/ -/********* Segment insertion ends here *********/ - -/********* Carving out holes and concavities begins here *********/ -/** **/ -/** **/ - -/*****************************************************************************/ -/* */ -/* infecthull() Virally infect all of the triangles of the convex hull */ -/* that are not protected by subsegments. Where there are */ -/* subsegments, set boundary markers as appropriate. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void infecthull(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -void infecthull(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri hulltri; - struct otri nexttri; - struct otri starttri; - struct osub hullsubseg; - triangle **deadtriangle; - vertex horg, hdest; - triangle ptr; /* Temporary variable used by sym(). */ - subseg sptr; /* Temporary variable used by tspivot(). */ - - if (b->verbose) { - fprintf(stderr, " Marking concavities (external triangles) for elimination.\n"); - } - /* Find a triangle handle on the hull. */ - hulltri.tri = m->dummytri; - hulltri.orient = 0; - symself(hulltri); - /* Remember where we started so we know when to stop. */ - otricopy(hulltri, starttri); - /* Go once counterclockwise around the convex hull. */ - do { - /* Ignore triangles that are already infected. */ - if (!infected(hulltri)) { - /* Is the triangle protected by a subsegment? */ - tspivot(hulltri, hullsubseg); - if (hullsubseg.ss == m->dummysub) { - /* The triangle is not protected; infect it. */ - if (!infected(hulltri)) { - infect(hulltri); - deadtriangle = (triangle **) poolalloc(&m->viri); - *deadtriangle = hulltri.tri; - } - } else { - /* The triangle is protected; set boundary markers if appropriate. */ - if (mark(hullsubseg) == 0) { - setmark(hullsubseg, 1); - org(hulltri, horg); - dest(hulltri, hdest); - if (vertexmark(horg) == 0) { - setvertexmark(horg, 1); - } - if (vertexmark(hdest) == 0) { - setvertexmark(hdest, 1); - } - } - } - } - /* To find the next hull edge, go clockwise around the next vertex. */ - lnextself(hulltri); - oprev(hulltri, nexttri); - while (nexttri.tri != m->dummytri) { - otricopy(nexttri, hulltri); - oprev(hulltri, nexttri); - } - } while (!otriequal(hulltri, starttri)); -} - -/*****************************************************************************/ -/* */ -/* plague() Spread the virus from all infected triangles to any neighbors */ -/* not protected by subsegments. Delete all infected triangles. */ -/* */ -/* This is the procedure that actually creates holes and concavities. */ -/* */ -/* This procedure operates in two phases. The first phase identifies all */ -/* the triangles that will die, and marks them as infected. They are */ -/* marked to ensure that each triangle is added to the virus pool only */ -/* once, so the procedure will terminate. */ -/* */ -/* The second phase actually eliminates the infected triangles. It also */ -/* eliminates orphaned vertices. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void plague(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -void plague(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri testtri; - struct otri neighbor; - triangle **virusloop; - triangle **deadtriangle; - struct osub neighborsubseg; - vertex testvertex; - vertex norg, ndest; - vertex deadorg, deaddest, deadapex; - int killorg; - triangle ptr; /* Temporary variable used by sym() and onext(). */ - subseg sptr; /* Temporary variable used by tspivot(). */ - - if (b->verbose) { - fprintf(stderr, " Marking neighbors of marked triangles.\n"); - } - /* Loop through all the infected triangles, spreading the virus to */ - /* their neighbors, then to their neighbors' neighbors. */ - traversalinit(&m->viri); - virusloop = (triangle **) traverse(&m->viri); - while (virusloop != (triangle **) NULL) { - testtri.tri = *virusloop; - /* A triangle is marked as infected by messing with one of its pointers */ - /* to subsegments, setting it to an illegal value. Hence, we have to */ - /* temporarily uninfect this triangle so that we can examine its */ - /* adjacent subsegments. */ - uninfect(testtri); - if (b->verbose > 2) { - /* Assign the triangle an orientation for convenience in */ - /* checking its vertices. */ - testtri.orient = 0; - org(testtri, deadorg); - dest(testtri, deaddest); - apex(testtri, deadapex); - fprintf(stderr, " Checking (%.12g, %.12g) (%.12g, %.12g) (%.12g, %.12g)\n", - deadorg[0], deadorg[1], deaddest[0], deaddest[1], - deadapex[0], deadapex[1]); - } - /* Check each of the triangle's three neighbors. */ - for (testtri.orient = 0; testtri.orient < 3; testtri.orient++) { - /* Find the neighbor. */ - sym(testtri, neighbor); - /* Check for a subsegment between the triangle and its neighbor. */ - tspivot(testtri, neighborsubseg); - /* Check if the neighbor is nonexistent or already infected. */ - if ((neighbor.tri == m->dummytri) || infected(neighbor)) { - if (neighborsubseg.ss != m->dummysub) { - /* There is a subsegment separating the triangle from its */ - /* neighbor, but both triangles are dying, so the subsegment */ - /* dies too. */ - subsegdealloc(m, neighborsubseg.ss); - if (neighbor.tri != m->dummytri) { - /* Make sure the subsegment doesn't get deallocated again */ - /* later when the infected neighbor is visited. */ - uninfect(neighbor); - tsdissolve(neighbor); - infect(neighbor); - } - } - } else { /* The neighbor exists and is not infected. */ - if (neighborsubseg.ss == m->dummysub) { - /* There is no subsegment protecting the neighbor, so */ - /* the neighbor becomes infected. */ - if (b->verbose > 2) { - org(neighbor, deadorg); - dest(neighbor, deaddest); - apex(neighbor, deadapex); - fprintf(stderr, - " Marking (%.12g, %.12g) (%.12g, %.12g) (%.12g, %.12g)\n", - deadorg[0], deadorg[1], deaddest[0], deaddest[1], - deadapex[0], deadapex[1]); - } - infect(neighbor); - /* Ensure that the neighbor's neighbors will be infected. */ - deadtriangle = (triangle **) poolalloc(&m->viri); - *deadtriangle = neighbor.tri; - } else { /* The neighbor is protected by a subsegment. */ - /* Remove this triangle from the subsegment. */ - stdissolve(neighborsubseg); - /* The subsegment becomes a boundary. Set markers accordingly. */ - if (mark(neighborsubseg) == 0) { - setmark(neighborsubseg, 1); - } - org(neighbor, norg); - dest(neighbor, ndest); - if (vertexmark(norg) == 0) { - setvertexmark(norg, 1); - } - if (vertexmark(ndest) == 0) { - setvertexmark(ndest, 1); - } - } - } - } - /* Remark the triangle as infected, so it doesn't get added to the */ - /* virus pool again. */ - infect(testtri); - virusloop = (triangle **) traverse(&m->viri); - } - - if (b->verbose) { - fprintf(stderr, " Deleting marked triangles.\n"); - } - - traversalinit(&m->viri); - virusloop = (triangle **) traverse(&m->viri); - while (virusloop != (triangle **) NULL) { - testtri.tri = *virusloop; - - /* Check each of the three corners of the triangle for elimination. */ - /* This is done by walking around each vertex, checking if it is */ - /* still connected to at least one live triangle. */ - for (testtri.orient = 0; testtri.orient < 3; testtri.orient++) { - org(testtri, testvertex); - /* Check if the vertex has already been tested. */ - if (testvertex != (vertex) NULL) { - killorg = 1; - /* Mark the corner of the triangle as having been tested. */ - setorg(testtri, NULL); - /* Walk counterclockwise about the vertex. */ - onext(testtri, neighbor); - /* Stop upon reaching a boundary or the starting triangle. */ - while ((neighbor.tri != m->dummytri) && - (!otriequal(neighbor, testtri))) { - if (infected(neighbor)) { - /* Mark the corner of this triangle as having been tested. */ - setorg(neighbor, NULL); - } else { - /* A live triangle. The vertex survives. */ - killorg = 0; - } - /* Walk counterclockwise about the vertex. */ - onextself(neighbor); - } - /* If we reached a boundary, we must walk clockwise as well. */ - if (neighbor.tri == m->dummytri) { - /* Walk clockwise about the vertex. */ - oprev(testtri, neighbor); - /* Stop upon reaching a boundary. */ - while (neighbor.tri != m->dummytri) { - if (infected(neighbor)) { - /* Mark the corner of this triangle as having been tested. */ - setorg(neighbor, NULL); - } else { - /* A live triangle. The vertex survives. */ - killorg = 0; - } - /* Walk clockwise about the vertex. */ - oprevself(neighbor); - } - } - if (killorg) { - if (b->verbose > 1) { - fprintf(stderr, " Deleting vertex (%.12g, %.12g)\n", - testvertex[0], testvertex[1]); - } - setvertextype(testvertex, UNDEADVERTEX); - m->undeads++; - } - } - } - - /* Record changes in the number of boundary edges, and disconnect */ - /* dead triangles from their neighbors. */ - for (testtri.orient = 0; testtri.orient < 3; testtri.orient++) { - sym(testtri, neighbor); - if (neighbor.tri == m->dummytri) { - /* There is no neighboring triangle on this edge, so this edge */ - /* is a boundary edge. This triangle is being deleted, so this */ - /* boundary edge is deleted. */ - m->hullsize--; - } else { - /* Disconnect the triangle from its neighbor. */ - dissolve(neighbor); - /* There is a neighboring triangle on this edge, so this edge */ - /* becomes a boundary edge when this triangle is deleted. */ - m->hullsize++; - } - } - /* Return the dead triangle to the pool of triangles. */ - triangledealloc(m, testtri.tri); - virusloop = (triangle **) traverse(&m->viri); - } - /* Empty the virus pool. */ - poolrestart(&m->viri); -} - -/*****************************************************************************/ -/* */ -/* regionplague() Spread regional attributes and/or area constraints */ -/* (from a .poly file) throughout the mesh. */ -/* */ -/* This procedure operates in two phases. The first phase spreads an */ -/* attribute and/or an area constraint through a (segment-bounded) region. */ -/* The triangles are marked to ensure that each triangle is added to the */ -/* virus pool only once, so the procedure will terminate. */ -/* */ -/* The second phase uninfects all infected triangles, returning them to */ -/* normal. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void regionplague(struct mesh *m, struct behavior *b, - REAL attribute, REAL area) -#else /* not ANSI_DECLARATORS */ -void regionplague(m, b, attribute, area) -struct mesh *m; -struct behavior *b; -REAL attribute; -REAL area; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri testtri; - struct otri neighbor; - triangle **virusloop; - triangle **regiontri; - struct osub neighborsubseg; - vertex regionorg, regiondest, regionapex; - triangle ptr; /* Temporary variable used by sym() and onext(). */ - subseg sptr; /* Temporary variable used by tspivot(). */ - - if (b->verbose > 1) { - fprintf(stderr, " Marking neighbors of marked triangles.\n"); - } - /* Loop through all the infected triangles, spreading the attribute */ - /* and/or area constraint to their neighbors, then to their neighbors' */ - /* neighbors. */ - traversalinit(&m->viri); - virusloop = (triangle **) traverse(&m->viri); - while (virusloop != (triangle **) NULL) { - testtri.tri = *virusloop; - /* A triangle is marked as infected by messing with one of its pointers */ - /* to subsegments, setting it to an illegal value. Hence, we have to */ - /* temporarily uninfect this triangle so that we can examine its */ - /* adjacent subsegments. */ - uninfect(testtri); - if (b->regionattrib) { - /* Set an attribute. */ - setelemattribute(testtri, m->eextras, attribute); - } - if (b->vararea) { - /* Set an area constraint. */ - setareabound(testtri, area); - } - if (b->verbose > 2) { - /* Assign the triangle an orientation for convenience in */ - /* checking its vertices. */ - testtri.orient = 0; - org(testtri, regionorg); - dest(testtri, regiondest); - apex(testtri, regionapex); - fprintf(stderr, " Checking (%.12g, %.12g) (%.12g, %.12g) (%.12g, %.12g)\n", - regionorg[0], regionorg[1], regiondest[0], regiondest[1], - regionapex[0], regionapex[1]); - } - /* Check each of the triangle's three neighbors. */ - for (testtri.orient = 0; testtri.orient < 3; testtri.orient++) { - /* Find the neighbor. */ - sym(testtri, neighbor); - /* Check for a subsegment between the triangle and its neighbor. */ - tspivot(testtri, neighborsubseg); - /* Make sure the neighbor exists, is not already infected, and */ - /* isn't protected by a subsegment. */ - if ((neighbor.tri != m->dummytri) && !infected(neighbor) - && (neighborsubseg.ss == m->dummysub)) { - if (b->verbose > 2) { - org(neighbor, regionorg); - dest(neighbor, regiondest); - apex(neighbor, regionapex); - fprintf(stderr, " Marking (%.12g, %.12g) (%.12g, %.12g) (%.12g, %.12g)\n", - regionorg[0], regionorg[1], regiondest[0], regiondest[1], - regionapex[0], regionapex[1]); - } - /* Infect the neighbor. */ - infect(neighbor); - /* Ensure that the neighbor's neighbors will be infected. */ - regiontri = (triangle **) poolalloc(&m->viri); - *regiontri = neighbor.tri; - } - } - /* Remark the triangle as infected, so it doesn't get added to the */ - /* virus pool again. */ - infect(testtri); - virusloop = (triangle **) traverse(&m->viri); - } - - /* Uninfect all triangles. */ - if (b->verbose > 1) { - fprintf(stderr, " Unmarking marked triangles.\n"); - } - traversalinit(&m->viri); - virusloop = (triangle **) traverse(&m->viri); - while (virusloop != (triangle **) NULL) { - testtri.tri = *virusloop; - uninfect(testtri); - virusloop = (triangle **) traverse(&m->viri); - } - /* Empty the virus pool. */ - poolrestart(&m->viri); -} - -/*****************************************************************************/ -/* */ -/* carveholes() Find the holes and infect them. Find the area */ -/* constraints and infect them. Infect the convex hull. */ -/* Spread the infection and kill triangles. Spread the */ -/* area constraints. */ -/* */ -/* This routine mainly calls other routines to carry out all these */ -/* functions. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void carveholes(struct mesh *m, struct behavior *b, REAL *holelist, int holes, - REAL *regionlist, int regions) -#else /* not ANSI_DECLARATORS */ -void carveholes(m, b, holelist, holes, regionlist, regions) -struct mesh *m; -struct behavior *b; -REAL *holelist; -int holes; -REAL *regionlist; -int regions; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri searchtri; - struct otri triangleloop; - struct otri *regiontris; - triangle **holetri; - triangle **regiontri; - vertex searchorg, searchdest; - enum locateresult intersect; - int i; - triangle ptr; /* Temporary variable used by sym(). */ - - if (!(b->quiet || (b->noholes && b->convex))) { - fprintf(stderr, "Removing unwanted triangles.\n"); - if (b->verbose && (holes > 0)) { - fprintf(stderr, " Marking holes for elimination.\n"); - } - } - - if (regions > 0) { - /* Allocate storage for the triangles in which region points fall. */ - regiontris = (struct otri *) trimalloc(regions * sizeof(struct otri)); - } - - if (((holes > 0) && !b->noholes) || !b->convex || (regions > 0)) { - /* Initialize a pool of viri to be used for holes, concavities, */ - /* regional attributes, and/or regional area constraints. */ - poolinit(&m->viri, sizeof(triangle *), VIRUSPERBLOCK, POINTER, 0); - } - - if (!b->convex) { - /* Mark as infected any unprotected triangles on the boundary. */ - /* This is one way by which concavities are created. */ - infecthull(m, b); - } - - if ((holes > 0) && !b->noholes) { - /* Infect each triangle in which a hole lies. */ - for (i = 0; i < 2 * holes; i += 2) { - /* Ignore holes that aren't within the bounds of the mesh. */ - if ((holelist[i] >= m->xmin) && (holelist[i] <= m->xmax) - && (holelist[i + 1] >= m->ymin) && (holelist[i + 1] <= m->ymax)) { - /* Start searching from some triangle on the outer boundary. */ - searchtri.tri = m->dummytri; - searchtri.orient = 0; - symself(searchtri); - /* Ensure that the hole is to the left of this boundary edge; */ - /* otherwise, locate() will falsely report that the hole */ - /* falls within the starting triangle. */ - org(searchtri, searchorg); - dest(searchtri, searchdest); - if (counterclockwise(m, b, searchorg, searchdest, &holelist[i]) > - 0.0) { - /* Find a triangle that contains the hole. */ - intersect = locate(m, b, &holelist[i], &searchtri); - if ((intersect != OUTSIDE) && (!infected(searchtri))) { - /* Infect the triangle. This is done by marking the triangle */ - /* as infected and including the triangle in the virus pool. */ - infect(searchtri); - holetri = (triangle **) poolalloc(&m->viri); - *holetri = searchtri.tri; - } - } - } - } - } - - /* Now, we have to find all the regions BEFORE we carve the holes, because */ - /* locate() won't work when the triangulation is no longer convex. */ - /* (Incidentally, this is the reason why regional attributes and area */ - /* constraints can't be used when refining a preexisting mesh, which */ - /* might not be convex; they can only be used with a freshly */ - /* triangulated PSLG.) */ - if (regions > 0) { - /* Find the starting triangle for each region. */ - for (i = 0; i < regions; i++) { - regiontris[i].tri = m->dummytri; - /* Ignore region points that aren't within the bounds of the mesh. */ - if ((regionlist[4 * i] >= m->xmin) && (regionlist[4 * i] <= m->xmax) && - (regionlist[4 * i + 1] >= m->ymin) && - (regionlist[4 * i + 1] <= m->ymax)) { - /* Start searching from some triangle on the outer boundary. */ - searchtri.tri = m->dummytri; - searchtri.orient = 0; - symself(searchtri); - /* Ensure that the region point is to the left of this boundary */ - /* edge; otherwise, locate() will falsely report that the */ - /* region point falls within the starting triangle. */ - org(searchtri, searchorg); - dest(searchtri, searchdest); - if (counterclockwise(m, b, searchorg, searchdest, ®ionlist[4 * i]) > - 0.0) { - /* Find a triangle that contains the region point. */ - intersect = locate(m, b, ®ionlist[4 * i], &searchtri); - if ((intersect != OUTSIDE) && (!infected(searchtri))) { - /* Record the triangle for processing after the */ - /* holes have been carved. */ - otricopy(searchtri, regiontris[i]); - } - } - } - } - } - - if (m->viri.items > 0) { - /* Carve the holes and concavities. */ - plague(m, b); - } - /* The virus pool should be empty now. */ - - if (regions > 0) { - if (!b->quiet) { - if (b->regionattrib) { - if (b->vararea) { - fprintf(stderr, "Spreading regional attributes and area constraints.\n"); - } else { - fprintf(stderr, "Spreading regional attributes.\n"); - } - } else { - fprintf(stderr, "Spreading regional area constraints.\n"); - } - } - if (b->regionattrib && !b->refine) { - /* Assign every triangle a regional attribute of zero. */ - traversalinit(&m->triangles); - triangleloop.orient = 0; - triangleloop.tri = triangletraverse(m); - while (triangleloop.tri != (triangle *) NULL) { - setelemattribute(triangleloop, m->eextras, 0.0); - triangleloop.tri = triangletraverse(m); - } - } - for (i = 0; i < regions; i++) { - if (regiontris[i].tri != m->dummytri) { - /* Make sure the triangle under consideration still exists. */ - /* It may have been eaten by the virus. */ - if (!deadtri(regiontris[i].tri)) { - /* Put one triangle in the virus pool. */ - infect(regiontris[i]); - regiontri = (triangle **) poolalloc(&m->viri); - *regiontri = regiontris[i].tri; - /* Apply one region's attribute and/or area constraint. */ - regionplague(m, b, regionlist[4 * i + 2], regionlist[4 * i + 3]); - /* The virus pool should be empty now. */ - } - } - } - if (b->regionattrib && !b->refine) { - /* Note the fact that each triangle has an additional attribute. */ - m->eextras++; - } - } - - /* Free up memory. */ - if (((holes > 0) && !b->noholes) || !b->convex || (regions > 0)) { - pooldeinit(&m->viri); - } - if (regions > 0) { - trifree((VOID *) regiontris); - } -} - -/** **/ -/** **/ -/********* Carving out holes and concavities ends here *********/ - -/********* Mesh quality maintenance begins here *********/ -/** **/ -/** **/ - -/*****************************************************************************/ -/* */ -/* tallyencs() Traverse the entire list of subsegments, and check each */ -/* to see if it is encroached. If so, add it to the list. */ -/* */ -/*****************************************************************************/ - -#ifndef CDT_ONLY - -#ifdef ANSI_DECLARATORS -void tallyencs(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -void tallyencs(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - struct osub subsegloop; - int dummy; - - traversalinit(&m->subsegs); - subsegloop.ssorient = 0; - subsegloop.ss = subsegtraverse(m); - while (subsegloop.ss != (subseg *) NULL) { - /* If the segment is encroached, add it to the list. */ - dummy = checkseg4encroach(m, b, &subsegloop, 0.0); - subsegloop.ss = subsegtraverse(m); - } -} - -#endif /* not CDT_ONLY */ - -/*****************************************************************************/ -/* */ -/* precisionerror() Print an error message for precision problems. */ -/* */ -/*****************************************************************************/ - -#ifndef CDT_ONLY - -void precisionerror() -{ - fprintf(stderr, "Try increasing the area criterion and/or reducing the minimum\n"); - fprintf(stderr, " allowable angle so that tiny triangles are not created.\n"); -#ifdef SINGLE - fprintf(stderr, "Alternatively, try recompiling me with double precision\n"); - fprintf(stderr, " arithmetic (by removing \"#define SINGLE\" from the\n"); - fprintf(stderr, " source file or \"-DSINGLE\" from the makefile).\n"); -#endif /* SINGLE */ -} - -#endif /* not CDT_ONLY */ - -/*****************************************************************************/ -/* */ -/* splitencsegs() Split all the encroached subsegments. */ -/* */ -/* Each encroached subsegment is repaired by splitting it - inserting a */ -/* vertex at or near its midpoint. Newly inserted vertices may encroach */ -/* upon other subsegments; these are also repaired. */ -/* */ -/* `triflaws' is a flag that specifies whether one should take note of new */ -/* bad triangles that result from inserting vertices to repair encroached */ -/* subsegments. */ -/* */ -/*****************************************************************************/ - -#ifndef CDT_ONLY - -#ifdef ANSI_DECLARATORS -void splitencsegs(struct mesh *m, struct behavior *b, int triflaws) -#else /* not ANSI_DECLARATORS */ -void splitencsegs(m, b, triflaws) -struct mesh *m; -struct behavior *b; -int triflaws; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri enctri; - struct otri testtri; - struct osub testsh; - struct osub currentenc; - struct badsubseg *encloop; - vertex eorg, edest, eapex; - vertex newvertex; - enum insertvertexresult success; - REAL segmentlength, nearestpoweroftwo; - REAL split; - REAL multiplier, divisor; - int acuteorg, acuteorg2, acutedest, acutedest2; - int dummy; - int i; - triangle ptr; /* Temporary variable used by stpivot(). */ - subseg sptr; /* Temporary variable used by snext(). */ - - /* Note that steinerleft == -1 if an unlimited number */ - /* of Steiner points is allowed. */ - while ((m->badsubsegs.items > 0) && (m->steinerleft != 0)) { - traversalinit(&m->badsubsegs); - encloop = badsubsegtraverse(m); - while ((encloop != (struct badsubseg *) NULL) && (m->steinerleft != 0)) { - sdecode(encloop->encsubseg, currentenc); - sorg(currentenc, eorg); - sdest(currentenc, edest); - /* Make sure that this segment is still the same segment it was */ - /* when it was determined to be encroached. If the segment was */ - /* enqueued multiple times (because several newly inserted */ - /* vertices encroached it), it may have already been split. */ - if (!deadsubseg(currentenc.ss) && - (eorg == encloop->subsegorg) && (edest == encloop->subsegdest)) { - /* To decide where to split a segment, we need to know if the */ - /* segment shares an endpoint with an adjacent segment. */ - /* The concern is that, if we simply split every encroached */ - /* segment in its center, two adjacent segments with a small */ - /* angle between them might lead to an infinite loop; each */ - /* vertex added to split one segment will encroach upon the */ - /* other segment, which must then be split with a vertex that */ - /* will encroach upon the first segment, and so on forever. */ - /* To avoid this, imagine a set of concentric circles, whose */ - /* radii are powers of two, about each segment endpoint. */ - /* These concentric circles determine where the segment is */ - /* split. (If both endpoints are shared with adjacent */ - /* segments, split the segment in the middle, and apply the */ - /* concentric circles for later splittings.) */ - - /* Is the origin shared with another segment? */ - stpivot(currentenc, enctri); - lnext(enctri, testtri); - tspivot(testtri, testsh); - acuteorg = testsh.ss != m->dummysub; - /* Is the destination shared with another segment? */ - lnextself(testtri); - tspivot(testtri, testsh); - acutedest = testsh.ss != m->dummysub; - - /* If we're using diametral lenses (rather than diametral circles) */ - /* to define encroachment, delete free vertices from the */ - /* subsegment's diametral circle. */ - if (!b->nolenses && !acuteorg && !acutedest) { - apex(enctri, eapex); - while ((vertextype(eapex) == FREEVERTEX) && - ((eorg[0] - eapex[0]) * (edest[0] - eapex[0]) + - (eorg[1] - eapex[1]) * (edest[1] - eapex[1]) < 0.0)) { - deletevertex(m, b, &testtri); - stpivot(currentenc, enctri); - apex(enctri, eapex); - lprev(enctri, testtri); - } - } - - /* Now, check the other side of the segment, if there's a triangle */ - /* there. */ - sym(enctri, testtri); - if (testtri.tri != m->dummytri) { - /* Is the destination shared with another segment? */ - lnextself(testtri); - tspivot(testtri, testsh); - acutedest2 = testsh.ss != m->dummysub; - acutedest = acutedest || acutedest2; - /* Is the origin shared with another segment? */ - lnextself(testtri); - tspivot(testtri, testsh); - acuteorg2 = testsh.ss != m->dummysub; - acuteorg = acuteorg || acuteorg2; - - /* Delete free vertices from the subsegment's diametral circle. */ - if (!b->nolenses && !acuteorg2 && !acutedest2) { - org(testtri, eapex); - while ((vertextype(eapex) == FREEVERTEX) && - ((eorg[0] - eapex[0]) * (edest[0] - eapex[0]) + - (eorg[1] - eapex[1]) * (edest[1] - eapex[1]) < 0.0)) { - deletevertex(m, b, &testtri); - sym(enctri, testtri); - apex(testtri, eapex); - lprevself(testtri); - } - } - } - - /* Use the concentric circles if exactly one endpoint is shared */ - /* with another adjacent segment. */ - if (acuteorg || acutedest) { - segmentlength = sqrt((edest[0] - eorg[0]) * (edest[0] - eorg[0]) + - (edest[1] - eorg[1]) * (edest[1] - eorg[1])); - /* Find the power of two that most evenly splits the segment. */ - /* The worst case is a 2:1 ratio between subsegment lengths. */ - nearestpoweroftwo = 1.0; - while (segmentlength > 3.0 * nearestpoweroftwo) { - nearestpoweroftwo *= 2.0; - } - while (segmentlength < 1.5 * nearestpoweroftwo) { - nearestpoweroftwo *= 0.5; - } - /* Where do we split the segment? */ - split = nearestpoweroftwo / segmentlength; - if (acutedest) { - split = 1.0 - split; - } - } else { - /* If we're not worried about adjacent segments, split */ - /* this segment in the middle. */ - split = 0.5; - } - - /* Create the new vertex. */ - newvertex = (vertex) poolalloc(&m->vertices); - /* Interpolate its coordinate and attributes. */ - for (i = 0; i < 2 + m->nextras; i++) { - newvertex[i] = eorg[i] + split * (edest[i] - eorg[i]); - } - - if (!b->noexact) { - /* Roundoff in the above calculation may yield a `newvertex' */ - /* that is not precisely collinear with `eorg' and `edest'. */ - /* Improve collinearity by one step of iterative refinement. */ - multiplier = counterclockwise(m, b, eorg, edest, newvertex); - divisor = ((eorg[0] - edest[0]) * (eorg[0] - edest[0]) + - (eorg[1] - edest[1]) * (eorg[1] - edest[1])); - if ((multiplier != 0.0) && (divisor != 0.0)) { - multiplier = multiplier / divisor; - /* Watch out for NANs. */ - if (multiplier == multiplier) { - newvertex[0] += multiplier * (edest[1] - eorg[1]); - newvertex[1] += multiplier * (eorg[0] - edest[0]); - } - } - } - - setvertexmark(newvertex, mark(currentenc)); - setvertextype(newvertex, SEGMENTVERTEX); - if (b->verbose > 1) { - fprintf(stderr, - " Splitting subsegment (%.12g, %.12g) (%.12g, %.12g) at (%.12g, %.12g).\n", - eorg[0], eorg[1], edest[0], edest[1], - newvertex[0], newvertex[1]); - } - /* Check whether the new vertex lies on an endpoint. */ - if (((newvertex[0] == eorg[0]) && (newvertex[1] == eorg[1])) || - ((newvertex[0] == edest[0]) && (newvertex[1] == edest[1]))) { - fprintf(stderr, "Error: Ran out of precision at (%.12g, %.12g).\n", - newvertex[0], newvertex[1]); - fprintf(stderr, "I attempted to split a segment to a smaller size than\n"); - fprintf(stderr, " can be accommodated by the finite precision of\n"); - fprintf(stderr, " floating point arithmetic.\n"); - precisionerror(); - exit(1); - } - /* Insert the splitting vertex. This should always succeed. */ - success = insertvertex(m, b, newvertex, &enctri, ¤tenc, - 1, triflaws, 0.0); - if ((success != SUCCESSFULVERTEX) && (success != ENCROACHINGVERTEX)) { - fprintf(stderr, "Internal error in splitencsegs():\n"); - fprintf(stderr, " Failure to split a segment.\n"); - internalerror(); - } - if (m->steinerleft > 0) { - m->steinerleft--; - } - /* Check the two new subsegments to see if they're encroached. */ - dummy = checkseg4encroach(m, b, ¤tenc, 0.0); - snextself(currentenc); - dummy = checkseg4encroach(m, b, ¤tenc, 0.0); - } - - badsubsegdealloc(m, encloop); - encloop = badsubsegtraverse(m); - } - } -} - -#endif /* not CDT_ONLY */ - -/*****************************************************************************/ -/* */ -/* tallyfaces() Test every triangle in the mesh for quality measures. */ -/* */ -/*****************************************************************************/ - -#ifndef CDT_ONLY - -#ifdef ANSI_DECLARATORS -void tallyfaces(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -void tallyfaces(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri triangleloop; - - if (b->verbose) { - fprintf(stderr, " Making a list of bad triangles.\n"); - } - traversalinit(&m->triangles); - triangleloop.orient = 0; - triangleloop.tri = triangletraverse(m); - while (triangleloop.tri != (triangle *) NULL) { - /* If the triangle is bad, enqueue it. */ - testtriangle(m, b, &triangleloop); - triangleloop.tri = triangletraverse(m); - } -} - -#endif /* not CDT_ONLY */ - -/*****************************************************************************/ -/* */ -/* splittriangle() Inserts a vertex at the circumcenter of a triangle. */ -/* Deletes the newly inserted vertex if it encroaches */ -/* upon a segment. */ -/* */ -/*****************************************************************************/ - -#ifndef CDT_ONLY - -#ifdef ANSI_DECLARATORS -void splittriangle(struct mesh *m, struct behavior *b, - struct badtriang *badtri) -#else /* not ANSI_DECLARATORS */ -void splittriangle(m, b, badtri) -struct mesh *m; -struct behavior *b; -struct badtriang *badtri; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri badotri; - vertex borg, bdest, bapex; - vertex newvertex; - REAL xi, eta; - REAL minedge; - enum insertvertexresult success; - int errorflag; - int i; - - decode(badtri->poortri, badotri); - org(badotri, borg); - dest(badotri, bdest); - apex(badotri, bapex); - /* Make sure that this triangle is still the same triangle it was */ - /* when it was tested and determined to be of bad quality. */ - /* Subsequent transformations may have made it a different triangle. */ - if (!deadtri(badotri.tri) && (borg == badtri->triangorg) && - (bdest == badtri->triangdest) && (bapex == badtri->triangapex)) { - if (b->verbose > 1) { - fprintf(stderr, " Splitting this triangle at its circumcenter:\n"); - fprintf(stderr, " (%.12g, %.12g) (%.12g, %.12g) (%.12g, %.12g)\n", borg[0], - borg[1], bdest[0], bdest[1], bapex[0], bapex[1]); - } - - errorflag = 0; - /* Create a new vertex at the triangle's circumcenter. */ - newvertex = (vertex) poolalloc(&m->vertices); - findcircumcenter(m, b, borg, bdest, bapex, newvertex, &xi, &eta, &minedge); - - /* Check whether the new vertex lies on a triangle vertex. */ - if (((newvertex[0] == borg[0]) && (newvertex[1] == borg[1])) || - ((newvertex[0] == bdest[0]) && (newvertex[1] == bdest[1])) || - ((newvertex[0] == bapex[0]) && (newvertex[1] == bapex[1]))) { - if (!b->quiet) { - fprintf(stderr, - "Warning: New vertex (%.12g, %.12g) falls on existing vertex.\n", - newvertex[0], newvertex[1]); - errorflag = 1; - } - vertexdealloc(m, newvertex); - } else { - for (i = 2; i < 2 + m->nextras; i++) { - /* Interpolate the vertex attributes at the circumcenter. */ - newvertex[i] = borg[i] + xi * (bdest[i] - borg[i]) - + eta * (bapex[i] - borg[i]); - } - /* The new vertex must be in the interior, and therefore is a */ - /* free vertex with a marker of zero. */ - setvertexmark(newvertex, 0); - setvertextype(newvertex, FREEVERTEX); - - /* Ensure that the handle `badotri' does not represent the longest */ - /* edge of the triangle. This ensures that the circumcenter must */ - /* fall to the left of this edge, so point location will work. */ - /* (If the angle org-apex-dest exceeds 90 degrees, then the */ - /* circumcenter lies outside the org-dest edge, and eta is */ - /* negative. Roundoff error might prevent eta from being */ - /* negative when it should be, so I test eta against xi.) */ - if (eta < xi) { - lprevself(badotri); - } - - /* Insert the circumcenter, searching from the edge of the triangle, */ - /* and maintain the Delaunay property of the triangulation. */ - success = insertvertex(m, b, newvertex, &badotri, (struct osub *) NULL, - 1, 1, minedge); - if (success == SUCCESSFULVERTEX) { - if (m->steinerleft > 0) { - m->steinerleft--; - } - } else if (success == ENCROACHINGVERTEX) { - /* If the newly inserted vertex encroaches upon a subsegment, */ - /* delete the new vertex. */ - undovertex(m, b); - if (b->verbose > 1) { - fprintf(stderr, " Rejecting (%.12g, %.12g).\n", newvertex[0], newvertex[1]); - } - vertexdealloc(m, newvertex); - } else if (success == VIOLATINGVERTEX) { - /* Failed to insert the new vertex, but some subsegment was */ - /* marked as being encroached. */ - vertexdealloc(m, newvertex); - } else { /* success == DUPLICATEVERTEX */ - /* Couldn't insert the new vertex because a vertex is already there. */ - if (!b->quiet) { - fprintf(stderr, - "Warning: New vertex (%.12g, %.12g) falls on existing vertex.\n", - newvertex[0], newvertex[1]); - errorflag = 1; - } - vertexdealloc(m, newvertex); - } - } - if (errorflag) { - if (b->verbose) { - fprintf(stderr, " The new vertex is at the circumcenter of triangle\n"); - fprintf(stderr, " (%.12g, %.12g) (%.12g, %.12g) (%.12g, %.12g)\n", - borg[0], borg[1], bdest[0], bdest[1], bapex[0], bapex[1]); - } - fprintf(stderr, "This probably means that I am trying to refine triangles\n"); - fprintf(stderr, " to a smaller size than can be accommodated by the finite\n"); - fprintf(stderr, " precision of floating point arithmetic. (You can be\n"); - fprintf(stderr, " sure of this if I fail to terminate.)\n"); - precisionerror(); - } - } -} - -#endif /* not CDT_ONLY */ - -/*****************************************************************************/ -/* */ -/* enforcequality() Remove all the encroached subsegments and bad */ -/* triangles from the triangulation. */ -/* */ -/*****************************************************************************/ - -#ifndef CDT_ONLY - -#ifdef ANSI_DECLARATORS -void enforcequality(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -void enforcequality(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - struct badtriang *badtri; - int i; - - if (!b->quiet) { - fprintf(stderr, "Adding Steiner points to enforce quality.\n"); - } - /* Initialize the pool of encroached subsegments. */ - poolinit(&m->badsubsegs, sizeof(struct badsubseg), BADSUBSEGPERBLOCK, - POINTER, 0); - if (b->verbose) { - fprintf(stderr, " Looking for encroached subsegments.\n"); - } - /* Test all segments to see if they're encroached. */ - tallyencs(m, b); - if (b->verbose && (m->badsubsegs.items > 0)) { - fprintf(stderr, " Splitting encroached subsegments.\n"); - } - /* Fix encroached subsegments without noting bad triangles. */ - splitencsegs(m, b, 0); - /* At this point, if we haven't run out of Steiner points, the */ - /* triangulation should be (conforming) Delaunay. */ - - /* Next, we worry about enforcing triangle quality. */ - if ((b->minangle > 0.0) || b->vararea || b->fixedarea || b->usertest) { - /* Initialize the pool of bad triangles. */ - poolinit(&m->badtriangles, sizeof(struct badtriang), BADTRIPERBLOCK, - POINTER, 0); - /* Initialize the queues of bad triangles. */ - for (i = 0; i < 64; i++) { - m->queuefront[i] = (struct badtriang *) NULL; - } - m->firstnonemptyq = -1; - /* Test all triangles to see if they're bad. */ - tallyfaces(m, b); - /* Initialize the pool of recently flipped triangles. */ - poolinit(&m->flipstackers, sizeof(struct flipstacker), FLIPSTACKERPERBLOCK, - POINTER, 0); - m->checkquality = 1; - if (b->verbose) { - fprintf(stderr, " Splitting bad triangles.\n"); - } - while ((m->badtriangles.items > 0) && (m->steinerleft != 0)) { - /* Fix one bad triangle by inserting a vertex at its circumcenter. */ - badtri = dequeuebadtriang(m); - splittriangle(m, b, badtri); - if (m->badsubsegs.items > 0) { - /* Put bad triangle back in queue for another try later. */ - enqueuebadtriang(m, b, badtri); - /* Fix any encroached subsegments that resulted. */ - /* Record any new bad triangles that result. */ - splitencsegs(m, b, 1); - } else { - /* Return the bad triangle to the pool. */ - pooldealloc(&m->badtriangles, (VOID *) badtri); - } - } - } - /* At this point, if we haven't run out of Steiner points, the */ - /* triangulation should be (conforming) Delaunay and have no */ - /* low-quality triangles. */ - - /* Might we have run out of Steiner points too soon? */ - if (!b->quiet && (m->badsubsegs.items > 0) && (m->steinerleft == 0)) { - fprintf(stderr, "\nWarning: I ran out of Steiner points, but the mesh has\n"); - if (m->badsubsegs.items == 1) { - fprintf(stderr, " an encroached subsegment, and therefore might not be truly\n"); - } else { - fprintf(stderr, " %ld encroached subsegments, and therefore might not be truly\n" - , m->badsubsegs.items); - } - fprintf(stderr, " Delaunay. If the Delaunay property is important to you,\n"); - fprintf(stderr, " try increasing the number of Steiner points (controlled by\n"); - fprintf(stderr, " the -S switch) slightly and try again.\n\n"); - } -} - -#endif /* not CDT_ONLY */ - -/** **/ -/** **/ -/********* Mesh quality maintenance ends here *********/ - -/*****************************************************************************/ -/* */ -/* highorder() Create extra nodes for quadratic subparametric elements. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void highorder(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -void highorder(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri triangleloop, trisym; - struct osub checkmark; - vertex newvertex; - vertex torg, tdest; - int i; - triangle ptr; /* Temporary variable used by sym(). */ - subseg sptr; /* Temporary variable used by tspivot(). */ - - if (!b->quiet) { - fprintf(stderr, "Adding vertices for second-order triangles.\n"); - } - /* The following line ensures that dead items in the pool of nodes */ - /* cannot be allocated for the extra nodes associated with high */ - /* order elements. This ensures that the primary nodes (at the */ - /* corners of elements) will occur earlier in the output files, and */ - /* have lower indices, than the extra nodes. */ - m->vertices.deaditemstack = (VOID *) NULL; - - traversalinit(&m->triangles); - triangleloop.tri = triangletraverse(m); - /* To loop over the set of edges, loop over all triangles, and look at */ - /* the three edges of each triangle. If there isn't another triangle */ - /* adjacent to the edge, operate on the edge. If there is another */ - /* adjacent triangle, operate on the edge only if the current triangle */ - /* has a smaller pointer than its neighbor. This way, each edge is */ - /* considered only once. */ - while (triangleloop.tri != (triangle *) NULL) { - for (triangleloop.orient = 0; triangleloop.orient < 3; - triangleloop.orient++) { - sym(triangleloop, trisym); - if ((triangleloop.tri < trisym.tri) || (trisym.tri == m->dummytri)) { - org(triangleloop, torg); - dest(triangleloop, tdest); - /* Create a new node in the middle of the edge. Interpolate */ - /* its attributes. */ - newvertex = (vertex) poolalloc(&m->vertices); - for (i = 0; i < 2 + m->nextras; i++) { - newvertex[i] = 0.5 * (torg[i] + tdest[i]); - } - /* Set the new node's marker to zero or one, depending on */ - /* whether it lies on a boundary. */ - setvertexmark(newvertex, trisym.tri == m->dummytri); - setvertextype(newvertex, - trisym.tri == m->dummytri ? FREEVERTEX : SEGMENTVERTEX); - if (b->usesegments) { - tspivot(triangleloop, checkmark); - /* If this edge is a segment, transfer the marker to the new node. */ - if (checkmark.ss != m->dummysub) { - setvertexmark(newvertex, mark(checkmark)); - setvertextype(newvertex, SEGMENTVERTEX); - } - } - if (b->verbose > 1) { - fprintf(stderr, " Creating (%.12g, %.12g).\n", newvertex[0], newvertex[1]); - } - /* Record the new node in the (one or two) adjacent elements. */ - triangleloop.tri[m->highorderindex + triangleloop.orient] = - (triangle) newvertex; - if (trisym.tri != m->dummytri) { - trisym.tri[m->highorderindex + trisym.orient] = (triangle) newvertex; - } - } - } - triangleloop.tri = triangletraverse(m); - } -} - -/********* File I/O routines begin here *********/ -/** **/ -/** **/ - -/*****************************************************************************/ -/* */ -/* readline() Read a nonempty line from a file. */ -/* */ -/* A line is considered "nonempty" if it contains something that looks like */ -/* a number. Comments (prefaced by `#') are ignored. */ -/* */ -/*****************************************************************************/ - -#ifndef TRILIBRARY - -#ifdef ANSI_DECLARATORS -char *readline(char *string, FILE *infile, char *infilename) -#else /* not ANSI_DECLARATORS */ -char *readline(string, infile, infilename) -char *string; -FILE *infile; -char *infilename; -#endif /* not ANSI_DECLARATORS */ - -{ - char *result; - - /* Search for something that looks like a number. */ - do { - result = fgets(string, INPUTLINESIZE, infile); - if (result == (char *) NULL) { - fprintf(stderr, " Error: Unexpected end of file in %s.\n", infilename); - exit(1); - } - /* Skip anything that doesn't look like a number, a comment, */ - /* or the end of a line. */ - while ((*result != '\0') && (*result != '#') - && (*result != '.') && (*result != '+') && (*result != '-') - && ((*result < '0') || (*result > '9'))) { - result++; - } - /* If it's a comment or end of line, read another line and try again. */ - } while ((*result == '#') || (*result == '\0')); - return result; -} - -#endif /* not TRILIBRARY */ - -/*****************************************************************************/ -/* */ -/* findfield() Find the next field of a string. */ -/* */ -/* Jumps past the current field by searching for whitespace, then jumps */ -/* past the whitespace to find the next field. */ -/* */ -/*****************************************************************************/ - -#ifndef TRILIBRARY - -#ifdef ANSI_DECLARATORS -char *findfield(char *string) -#else /* not ANSI_DECLARATORS */ -char *findfield(string) -char *string; -#endif /* not ANSI_DECLARATORS */ - -{ - char *result; - - result = string; - /* Skip the current field. Stop upon reaching whitespace. */ - while ((*result != '\0') && (*result != '#') - && (*result != ' ') && (*result != '\t')) { - result++; - } - /* Now skip the whitespace and anything else that doesn't look like a */ - /* number, a comment, or the end of a line. */ - while ((*result != '\0') && (*result != '#') - && (*result != '.') && (*result != '+') && (*result != '-') - && ((*result < '0') || (*result > '9'))) { - result++; - } - /* Check for a comment (prefixed with `#'). */ - if (*result == '#') { - *result = '\0'; - } - return result; -} - -#endif /* not TRILIBRARY */ - -/*****************************************************************************/ -/* */ -/* readnodes() Read the vertices from a file, which may be a .node or */ -/* .poly file. */ -/* */ -/*****************************************************************************/ - -#ifndef TRILIBRARY - -#ifdef ANSI_DECLARATORS -void readnodes(struct mesh *m, struct behavior *b, char *nodefilename, - char *polyfilename, FILE **polyfile) -#else /* not ANSI_DECLARATORS */ -void readnodes(m, b, nodefilename, polyfilename, polyfile) -struct mesh *m; -struct behavior *b; -char *nodefilename; -char *polyfilename; -FILE **polyfile; -#endif /* not ANSI_DECLARATORS */ - -{ - FILE *infile; - vertex vertexloop; - char inputline[INPUTLINESIZE]; - char *stringptr; - char *infilename; - REAL x, y; - int firstnode; - int nodemarkers; - int currentmarker; - int i, j; - - if (b->poly) { - /* Read the vertices from a .poly file. */ - if (!b->quiet) { - fprintf(stderr, "Opening %s.\n", polyfilename); - } - *polyfile = fopen(polyfilename, "r"); - if (*polyfile == (FILE *) NULL) { - fprintf(stderr, " Error: Cannot access file %s.\n", polyfilename); - exit(1); - } - /* Read number of vertices, number of dimensions, number of vertex */ - /* attributes, and number of boundary markers. */ - stringptr = readline(inputline, *polyfile, polyfilename); - m->invertices = (int) strtol(stringptr, &stringptr, 0); - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - m->mesh_dim = 2; - } else { - m->mesh_dim = (int) strtol(stringptr, &stringptr, 0); - } - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - m->nextras = 0; - } else { - m->nextras = (int) strtol(stringptr, &stringptr, 0); - } - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - nodemarkers = 0; - } else { - nodemarkers = (int) strtol(stringptr, &stringptr, 0); - } - if (m->invertices > 0) { - infile = *polyfile; - infilename = polyfilename; - m->readnodefile = 0; - } else { - /* If the .poly file claims there are zero vertices, that means that */ - /* the vertices should be read from a separate .node file. */ - m->readnodefile = 1; - infilename = nodefilename; - } - } else { - m->readnodefile = 1; - infilename = nodefilename; - *polyfile = (FILE *) NULL; - } - - if (m->readnodefile) { - /* Read the vertices from a .node file. */ - if (!b->quiet) { - fprintf(stderr, "Opening %s.\n", nodefilename); - } - infile = fopen(nodefilename, "r"); - if (infile == (FILE *) NULL) { - fprintf(stderr, " Error: Cannot access file %s.\n", nodefilename); - exit(1); - } - /* Read number of vertices, number of dimensions, number of vertex */ - /* attributes, and number of boundary markers. */ - stringptr = readline(inputline, infile, nodefilename); - m->invertices = (int) strtol(stringptr, &stringptr, 0); - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - m->mesh_dim = 2; - } else { - m->mesh_dim = (int) strtol(stringptr, &stringptr, 0); - } - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - m->nextras = 0; - } else { - m->nextras = (int) strtol(stringptr, &stringptr, 0); - } - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - nodemarkers = 0; - } else { - nodemarkers = (int) strtol(stringptr, &stringptr, 0); - } - } - - if (m->invertices < 3) { - fprintf(stderr, "Error: Input must have at least three input vertices.\n"); - exit(1); - } - if (m->mesh_dim != 2) { - fprintf(stderr, "Error: Triangle only works with two-dimensional meshes.\n"); - exit(1); - } - if (m->nextras == 0) { - b->weighted = 0; - } - - initializevertexpool(m, b); - - /* Read the vertices. */ - for (i = 0; i < m->invertices; i++) { - vertexloop = (vertex) poolalloc(&m->vertices); - stringptr = readline(inputline, infile, infilename); - if (i == 0) { - firstnode = (int) strtol(stringptr, &stringptr, 0); - if ((firstnode == 0) || (firstnode == 1)) { - b->firstnumber = firstnode; - } - } - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - fprintf(stderr, "Error: Vertex %d has no x coordinate.\n", b->firstnumber + i); - exit(1); - } - x = (REAL) strtod(stringptr, &stringptr); - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - fprintf(stderr, "Error: Vertex %d has no y coordinate.\n", b->firstnumber + i); - exit(1); - } - y = (REAL) strtod(stringptr, &stringptr); - vertexloop[0] = x; - vertexloop[1] = y; - /* Read the vertex attributes. */ - for (j = 2; j < 2 + m->nextras; j++) { - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - vertexloop[j] = 0.0; - } else { - vertexloop[j] = (REAL) strtod(stringptr, &stringptr); - } - } - if (nodemarkers) { - /* Read a vertex marker. */ - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - setvertexmark(vertexloop, 0); - } else { - currentmarker = (int) strtol(stringptr, &stringptr, 0); - setvertexmark(vertexloop, currentmarker); - } - } else { - /* If no markers are specified in the file, they default to zero. */ - setvertexmark(vertexloop, 0); - } - setvertextype(vertexloop, INPUTVERTEX); - /* Determine the smallest and largest x and y coordinates. */ - if (i == 0) { - m->xmin = m->xmax = x; - m->ymin = m->ymax = y; - } else { - m->xmin = (x < m->xmin) ? x : m->xmin; - m->xmax = (x > m->xmax) ? x : m->xmax; - m->ymin = (y < m->ymin) ? y : m->ymin; - m->ymax = (y > m->ymax) ? y : m->ymax; - } - } - if (m->readnodefile) { - fclose(infile); - } - - /* Nonexistent x value used as a flag to mark circle events in sweepline */ - /* Delaunay algorithm. */ - m->xminextreme = 10 * m->xmin - 9 * m->xmax; -} - -#endif /* not TRILIBRARY */ - -/*****************************************************************************/ -/* */ -/* transfernodes() Read the vertices from memory. */ -/* */ -/*****************************************************************************/ - -#ifdef TRILIBRARY - -#ifdef ANSI_DECLARATORS -void transfernodes(struct mesh *m, struct behavior *b, REAL *pointlist, - REAL *pointattriblist, int *pointmarkerlist, - int numberofpoints, int numberofpointattribs) -#else /* not ANSI_DECLARATORS */ -void transfernodes(m, b, pointlist, pointattriblist, pointmarkerlist, - numberofpoints, numberofpointattribs) -struct mesh *m; -struct behavior *b; -REAL *pointlist; -REAL *pointattriblist; -int *pointmarkerlist; -int numberofpoints; -int numberofpointattribs; -#endif /* not ANSI_DECLARATORS */ - -{ - vertex vertexloop; - REAL x, y; - int i, j; - int coordindex; - int attribindex; - - m->invertices = numberofpoints; - m->mesh_dim = 2; - m->nextras = numberofpointattribs; - m->readnodefile = 0; - if (m->invertices < 3) { - fprintf(stderr, "Error: Input must have at least three input vertices.\n"); - exit(1); - } - if (m->nextras == 0) { - b->weighted = 0; - } - - initializevertexpool(m, b); - - /* Read the vertices. */ - coordindex = 0; - attribindex = 0; - for (i = 0; i < m->invertices; i++) { - vertexloop = (vertex) poolalloc(&m->vertices); - /* Read the vertex coordinates. */ - x = vertexloop[0] = pointlist[coordindex++]; - y = vertexloop[1] = pointlist[coordindex++]; - /* Read the vertex attributes. */ - for (j = 0; j < numberofpointattribs; j++) { - vertexloop[2 + j] = pointattriblist[attribindex++]; - } - if (pointmarkerlist != (int *) NULL) { - /* Read a vertex marker. */ - setvertexmark(vertexloop, pointmarkerlist[i]); - } else { - /* If no markers are specified, they default to zero. */ - setvertexmark(vertexloop, 0); - } - setvertextype(vertexloop, INPUTVERTEX); - /* Determine the smallest and largest x and y coordinates. */ - if (i == 0) { - m->xmin = m->xmax = x; - m->ymin = m->ymax = y; - } else { - m->xmin = (x < m->xmin) ? x : m->xmin; - m->xmax = (x > m->xmax) ? x : m->xmax; - m->ymin = (y < m->ymin) ? y : m->ymin; - m->ymax = (y > m->ymax) ? y : m->ymax; - } - } - - /* Nonexistent x value used as a flag to mark circle events in sweepline */ - /* Delaunay algorithm. */ - m->xminextreme = 10 * m->xmin - 9 * m->xmax; -} - -#endif /* TRILIBRARY */ - -/*****************************************************************************/ -/* */ -/* readholes() Read the holes, and possibly regional attributes and area */ -/* constraints, from a .poly file. */ -/* */ -/*****************************************************************************/ - -#ifndef TRILIBRARY - -#ifdef ANSI_DECLARATORS -void readholes(struct mesh *m, struct behavior *b, - FILE *polyfile, char *polyfilename, REAL **hlist, int *holes, - REAL **rlist, int *regions) -#else /* not ANSI_DECLARATORS */ -void readholes(m, b, polyfile, polyfilename, hlist, holes, rlist, regions) -struct mesh *m; -struct behavior *b; -FILE *polyfile; -char *polyfilename; -REAL **hlist; -int *holes; -REAL **rlist; -int *regions; -#endif /* not ANSI_DECLARATORS */ - -{ - REAL *holelist; - REAL *regionlist; - char inputline[INPUTLINESIZE]; - char *stringptr; - int index; - int i; - - /* Read the holes. */ - stringptr = readline(inputline, polyfile, polyfilename); - *holes = (int) strtol(stringptr, &stringptr, 0); - if (*holes > 0) { - holelist = (REAL *) trimalloc(2 * *holes * sizeof(REAL)); - *hlist = holelist; - for (i = 0; i < 2 * *holes; i += 2) { - stringptr = readline(inputline, polyfile, polyfilename); - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - fprintf(stderr, "Error: Hole %d has no x coordinate.\n", - b->firstnumber + (i >> 1)); - exit(1); - } else { - holelist[i] = (REAL) strtod(stringptr, &stringptr); - } - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - fprintf(stderr, "Error: Hole %d has no y coordinate.\n", - b->firstnumber + (i >> 1)); - exit(1); - } else { - holelist[i + 1] = (REAL) strtod(stringptr, &stringptr); - } - } - } else { - *hlist = (REAL *) NULL; - } - -#ifndef CDT_ONLY - if ((b->regionattrib || b->vararea) && !b->refine) { - /* Read the area constraints. */ - stringptr = readline(inputline, polyfile, polyfilename); - *regions = (int) strtol(stringptr, &stringptr, 0); - if (*regions > 0) { - regionlist = (REAL *) trimalloc(4 * *regions * sizeof(REAL)); - *rlist = regionlist; - index = 0; - for (i = 0; i < *regions; i++) { - stringptr = readline(inputline, polyfile, polyfilename); - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - fprintf(stderr, "Error: Region %d has no x coordinate.\n", - b->firstnumber + i); - exit(1); - } else { - regionlist[index++] = (REAL) strtod(stringptr, &stringptr); - } - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - fprintf(stderr, "Error: Region %d has no y coordinate.\n", - b->firstnumber + i); - exit(1); - } else { - regionlist[index++] = (REAL) strtod(stringptr, &stringptr); - } - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - fprintf(stderr, - "Error: Region %d has no region attribute or area constraint.\n", - b->firstnumber + i); - exit(1); - } else { - regionlist[index++] = (REAL) strtod(stringptr, &stringptr); - } - stringptr = findfield(stringptr); - if (*stringptr == '\0') { - regionlist[index] = regionlist[index - 1]; - } else { - regionlist[index] = (REAL) strtod(stringptr, &stringptr); - } - index++; - } - } - } else { - /* Set `*regions' to zero to avoid an accidental free() later. */ - *regions = 0; - *rlist = (REAL *) NULL; - } -#endif /* not CDT_ONLY */ - - fclose(polyfile); -} - -#endif /* not TRILIBRARY */ - -/*****************************************************************************/ -/* */ -/* finishfile() Write the command line to the output file so the user */ -/* can remember how the file was generated. Close the file. */ -/* */ -/*****************************************************************************/ - -#ifndef TRILIBRARY - -#ifdef ANSI_DECLARATORS -void finishfile(FILE *outfile, int argc, char **argv) -#else /* not ANSI_DECLARATORS */ -void finishfile(outfile, argc, argv) -FILE *outfile; -int argc; -char **argv; -#endif /* not ANSI_DECLARATORS */ - -{ - int i; - - fprintf(outfile, "# Generated by"); - for (i = 0; i < argc; i++) { - fprintf(outfile, " "); - fputs(argv[i], outfile); - } - fprintf(outfile, "\n"); - fclose(outfile); -} - -#endif /* not TRILIBRARY */ - -/*****************************************************************************/ -/* */ -/* writenodes() Number the vertices and write them to a .node file. */ -/* */ -/* To save memory, the vertex numbers are written over the boundary markers */ -/* after the vertices are written to a file. */ -/* */ -/*****************************************************************************/ - -#ifdef TRILIBRARY - -#ifdef ANSI_DECLARATORS -void writenodes(struct mesh *m, struct behavior *b, REAL **pointlist, - REAL **pointattriblist, int **pointmarkerlist) -#else /* not ANSI_DECLARATORS */ -void writenodes(m, b, pointlist, pointattriblist, pointmarkerlist) -struct mesh *m; -struct behavior *b; -REAL **pointlist; -REAL **pointattriblist; -int **pointmarkerlist; -#endif /* not ANSI_DECLARATORS */ - -#else /* not TRILIBRARY */ - -#ifdef ANSI_DECLARATORS -void writenodes(struct mesh *m, struct behavior *b, char *nodefilename, - int argc, char **argv) -#else /* not ANSI_DECLARATORS */ -void writenodes(m, b, nodefilename, argc, argv) -struct mesh *m; -struct behavior *b; -char *nodefilename; -int argc; -char **argv; -#endif /* not ANSI_DECLARATORS */ - -#endif /* not TRILIBRARY */ - -{ -#ifdef TRILIBRARY - REAL *plist; - REAL *palist; - int *pmlist; - int coordindex; - int attribindex; -#else /* not TRILIBRARY */ - FILE *outfile; -#endif /* not TRILIBRARY */ - vertex vertexloop; - long outvertices; - int vertexnumber; - int i; - - if (b->jettison) { - outvertices = m->vertices.items - m->undeads; - } else { - outvertices = m->vertices.items; - } - -#ifdef TRILIBRARY - if (!b->quiet) { - fprintf(stderr, "Writing vertices.\n"); - } - /* Allocate memory for output vertices if necessary. */ - if (*pointlist == (REAL *) NULL) { - *pointlist = (REAL *) trimalloc(outvertices * 2 * sizeof(REAL)); - } - /* Allocate memory for output vertex attributes if necessary. */ - if ((m->nextras > 0) && (*pointattriblist == (REAL *) NULL)) { - *pointattriblist = (REAL *) trimalloc(outvertices * m->nextras * - sizeof(REAL)); - } - /* Allocate memory for output vertex markers if necessary. */ - if (!b->nobound && (*pointmarkerlist == (int *) NULL)) { - *pointmarkerlist = (int *) trimalloc(outvertices * sizeof(int)); - } - plist = *pointlist; - palist = *pointattriblist; - pmlist = *pointmarkerlist; - coordindex = 0; - attribindex = 0; -#else /* not TRILIBRARY */ - if (!b->quiet) { - fprintf(stderr, "Writing %s.\n", nodefilename); - } - outfile = fopen(nodefilename, "w"); - if (outfile == (FILE *) NULL) { - fprintf(stderr, " Error: Cannot create file %s.\n", nodefilename); - exit(1); - } - /* Number of vertices, number of dimensions, number of vertex attributes, */ - /* and number of boundary markers (zero or one). */ - fprintf(outfile, "%ld %d %d %d\n", outvertices, m->mesh_dim, - m->nextras, 1 - b->nobound); -#endif /* not TRILIBRARY */ - - traversalinit(&m->vertices); - vertexnumber = b->firstnumber; - vertexloop = vertextraverse(m); - while (vertexloop != (vertex) NULL) { - if (!b->jettison || (vertextype(vertexloop) != UNDEADVERTEX)) { -#ifdef TRILIBRARY - /* X and y coordinates. */ - plist[coordindex++] = vertexloop[0]; - plist[coordindex++] = vertexloop[1]; - /* Vertex attributes. */ - for (i = 0; i < m->nextras; i++) { - palist[attribindex++] = vertexloop[2 + i]; - } - if (!b->nobound) { - /* Copy the boundary marker. */ - pmlist[vertexnumber - b->firstnumber] = vertexmark(vertexloop); - } -#else /* not TRILIBRARY */ - /* Vertex number, x and y coordinates. */ - fprintf(outfile, "%4d %.17g %.17g", vertexnumber, vertexloop[0], - vertexloop[1]); - for (i = 0; i < m->nextras; i++) { - /* Write an attribute. */ - fprintf(outfile, " %.17g", vertexloop[i + 2]); - } - if (b->nobound) { - fprintf(outfile, "\n"); - } else { - /* Write the boundary marker. */ - fprintf(outfile, " %d\n", vertexmark(vertexloop)); - } -#endif /* not TRILIBRARY */ - - setvertexmark(vertexloop, vertexnumber); - vertexnumber++; - } - vertexloop = vertextraverse(m); - } - -#ifndef TRILIBRARY - finishfile(outfile, argc, argv); -#endif /* not TRILIBRARY */ -} - -/*****************************************************************************/ -/* */ -/* numbernodes() Number the vertices. */ -/* */ -/* Each vertex is assigned a marker equal to its number. */ -/* */ -/* Used when writenodes() is not called because no .node file is written. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void numbernodes(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -void numbernodes(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - vertex vertexloop; - int vertexnumber; - - traversalinit(&m->vertices); - vertexnumber = b->firstnumber; - vertexloop = vertextraverse(m); - while (vertexloop != (vertex) NULL) { - setvertexmark(vertexloop, vertexnumber); - if (!b->jettison || (vertextype(vertexloop) != UNDEADVERTEX)) { - vertexnumber++; - } - vertexloop = vertextraverse(m); - } -} - -/*****************************************************************************/ -/* */ -/* writeelements() Write the triangles to an .ele file. */ -/* */ -/*****************************************************************************/ - -#ifdef TRILIBRARY - -#ifdef ANSI_DECLARATORS -void writeelements(struct mesh *m, struct behavior *b, - int **trianglelist, REAL **triangleattriblist) -#else /* not ANSI_DECLARATORS */ -void writeelements(m, b, trianglelist, triangleattriblist) -struct mesh *m; -struct behavior *b; -int **trianglelist; -REAL **triangleattriblist; -#endif /* not ANSI_DECLARATORS */ - -#else /* not TRILIBRARY */ - -#ifdef ANSI_DECLARATORS -void writeelements(struct mesh *m, struct behavior *b, char *elefilename, - int argc, char **argv) -#else /* not ANSI_DECLARATORS */ -void writeelements(m, b, elefilename, argc, argv) -struct mesh *m; -struct behavior *b; -char *elefilename; -int argc; -char **argv; -#endif /* not ANSI_DECLARATORS */ - -#endif /* not TRILIBRARY */ - -{ -#ifdef TRILIBRARY - int *tlist; - REAL *talist; - int vertexindex; - int attribindex; -#else /* not TRILIBRARY */ - FILE *outfile; -#endif /* not TRILIBRARY */ - struct otri triangleloop; - vertex p1, p2, p3; - vertex mid1, mid2, mid3; - long elementnumber; - int i; - -#ifdef TRILIBRARY - if (!b->quiet) { - fprintf(stderr, "Writing triangles.\n"); - } - /* Allocate memory for output triangles if necessary. */ - if (*trianglelist == (int *) NULL) { - *trianglelist = (int *) trimalloc(m->triangles.items * - ((b->order + 1) * (b->order + 2) / 2) * - sizeof(int)); - } - /* Allocate memory for output triangle attributes if necessary. */ - if ((m->eextras > 0) && (*triangleattriblist == (REAL *) NULL)) { - *triangleattriblist = (REAL *) trimalloc(m->triangles.items * m->eextras * - sizeof(REAL)); - } - tlist = *trianglelist; - talist = *triangleattriblist; - vertexindex = 0; - attribindex = 0; -#else /* not TRILIBRARY */ - if (!b->quiet) { - fprintf(stderr, "Writing %s.\n", elefilename); - } - outfile = fopen(elefilename, "w"); - if (outfile == (FILE *) NULL) { - fprintf(stderr, " Error: Cannot create file %s.\n", elefilename); - exit(1); - } - /* Number of triangles, vertices per triangle, attributes per triangle. */ - fprintf(outfile, "%ld %d %d\n", m->triangles.items, - (b->order + 1) * (b->order + 2) / 2, m->eextras); -#endif /* not TRILIBRARY */ - - traversalinit(&m->triangles); - triangleloop.tri = triangletraverse(m); - triangleloop.orient = 0; - elementnumber = b->firstnumber; - while (triangleloop.tri != (triangle *) NULL) { - org(triangleloop, p1); - dest(triangleloop, p2); - apex(triangleloop, p3); - if (b->order == 1) { -#ifdef TRILIBRARY - tlist[vertexindex++] = vertexmark(p1); - tlist[vertexindex++] = vertexmark(p2); - tlist[vertexindex++] = vertexmark(p3); -#else /* not TRILIBRARY */ - /* Triangle number, indices for three vertices. */ - fprintf(outfile, "%4ld %4d %4d %4d", elementnumber, - vertexmark(p1), vertexmark(p2), vertexmark(p3)); -#endif /* not TRILIBRARY */ - } else { - mid1 = (vertex) triangleloop.tri[m->highorderindex + 1]; - mid2 = (vertex) triangleloop.tri[m->highorderindex + 2]; - mid3 = (vertex) triangleloop.tri[m->highorderindex]; -#ifdef TRILIBRARY - tlist[vertexindex++] = vertexmark(p1); - tlist[vertexindex++] = vertexmark(p2); - tlist[vertexindex++] = vertexmark(p3); - tlist[vertexindex++] = vertexmark(mid1); - tlist[vertexindex++] = vertexmark(mid2); - tlist[vertexindex++] = vertexmark(mid3); -#else /* not TRILIBRARY */ - /* Triangle number, indices for six vertices. */ - fprintf(outfile, "%4ld %4d %4d %4d %4d %4d %4d", elementnumber, - vertexmark(p1), vertexmark(p2), vertexmark(p3), vertexmark(mid1), - vertexmark(mid2), vertexmark(mid3)); -#endif /* not TRILIBRARY */ - } - -#ifdef TRILIBRARY - for (i = 0; i < m->eextras; i++) { - talist[attribindex++] = elemattribute(triangleloop, i); - } -#else /* not TRILIBRARY */ - for (i = 0; i < m->eextras; i++) { - fprintf(outfile, " %.17g", elemattribute(triangleloop, i)); - } - fprintf(outfile, "\n"); -#endif /* not TRILIBRARY */ - - triangleloop.tri = triangletraverse(m); - elementnumber++; - } - -#ifndef TRILIBRARY - finishfile(outfile, argc, argv); -#endif /* not TRILIBRARY */ -} - -/*****************************************************************************/ -/* */ -/* writepoly() Write the segments and holes to a .poly file. */ -/* */ -/*****************************************************************************/ - -#ifdef TRILIBRARY - -#ifdef ANSI_DECLARATORS -void writepoly(struct mesh *m, struct behavior *b, - int **segmentlist, int **segmentmarkerlist) -#else /* not ANSI_DECLARATORS */ -void writepoly(m, b, segmentlist, segmentmarkerlist) -struct mesh *m; -struct behavior *b; -int **segmentlist; -int **segmentmarkerlist; -#endif /* not ANSI_DECLARATORS */ - -#else /* not TRILIBRARY */ - -#ifdef ANSI_DECLARATORS -void writepoly(struct mesh *m, struct behavior *b, char *polyfilename, - REAL *holelist, int holes, REAL *regionlist, int regions, - int argc, char **argv) -#else /* not ANSI_DECLARATORS */ -void writepoly(m, b, polyfilename, holelist, holes, regionlist, regions, - argc, argv) -struct mesh *m; -struct behavior *b; -char *polyfilename; -REAL *holelist; -int holes; -REAL *regionlist; -int regions; -int argc; -char **argv; -#endif /* not ANSI_DECLARATORS */ - -#endif /* not TRILIBRARY */ - -{ -#ifdef TRILIBRARY - int *slist; - int *smlist; - int index; -#else /* not TRILIBRARY */ - FILE *outfile; - long holenumber, regionnumber; -#endif /* not TRILIBRARY */ - struct osub subsegloop; - vertex endpoint1, endpoint2; - long subsegnumber; - -#ifdef TRILIBRARY - if (!b->quiet) { - fprintf(stderr, "Writing segments.\n"); - } - /* Allocate memory for output segments if necessary. */ - if (*segmentlist == (int *) NULL) { - *segmentlist = (int *) trimalloc(m->subsegs.items * 2 * sizeof(int)); - } - /* Allocate memory for output segment markers if necessary. */ - if (!b->nobound && (*segmentmarkerlist == (int *) NULL)) { - *segmentmarkerlist = (int *) trimalloc(m->subsegs.items * sizeof(int)); - } - slist = *segmentlist; - smlist = *segmentmarkerlist; - index = 0; -#else /* not TRILIBRARY */ - if (!b->quiet) { - fprintf(stderr, "Writing %s.\n", polyfilename); - } - outfile = fopen(polyfilename, "w"); - if (outfile == (FILE *) NULL) { - fprintf(stderr, " Error: Cannot create file %s.\n", polyfilename); - exit(1); - } - /* The zero indicates that the vertices are in a separate .node file. */ - /* Followed by number of dimensions, number of vertex attributes, */ - /* and number of boundary markers (zero or one). */ - fprintf(outfile, "%d %d %d %d\n", 0, m->mesh_dim, m->nextras, - 1 - b->nobound); - /* Number of segments, number of boundary markers (zero or one). */ - fprintf(outfile, "%ld %d\n", m->subsegs.items, 1 - b->nobound); -#endif /* not TRILIBRARY */ - - traversalinit(&m->subsegs); - subsegloop.ss = subsegtraverse(m); - subsegloop.ssorient = 0; - subsegnumber = b->firstnumber; - while (subsegloop.ss != (subseg *) NULL) { - sorg(subsegloop, endpoint1); - sdest(subsegloop, endpoint2); -#ifdef TRILIBRARY - /* Copy indices of the segment's two endpoints. */ - slist[index++] = vertexmark(endpoint1); - slist[index++] = vertexmark(endpoint2); - if (!b->nobound) { - /* Copy the boundary marker. */ - smlist[subsegnumber - b->firstnumber] = mark(subsegloop); - } -#else /* not TRILIBRARY */ - /* Segment number, indices of its two endpoints, and possibly a marker. */ - if (b->nobound) { - fprintf(outfile, "%4ld %4d %4d\n", subsegnumber, - vertexmark(endpoint1), vertexmark(endpoint2)); - } else { - fprintf(outfile, "%4ld %4d %4d %4d\n", subsegnumber, - vertexmark(endpoint1), vertexmark(endpoint2), mark(subsegloop)); - } -#endif /* not TRILIBRARY */ - - subsegloop.ss = subsegtraverse(m); - subsegnumber++; - } - -#ifndef TRILIBRARY -#ifndef CDT_ONLY - fprintf(outfile, "%d\n", holes); - if (holes > 0) { - for (holenumber = 0; holenumber < holes; holenumber++) { - /* Hole number, x and y coordinates. */ - fprintf(outfile, "%4ld %.17g %.17g\n", b->firstnumber + holenumber, - holelist[2 * holenumber], holelist[2 * holenumber + 1]); - } - } - if (regions > 0) { - fprintf(outfile, "%d\n", regions); - for (regionnumber = 0; regionnumber < regions; regionnumber++) { - /* Region number, x and y coordinates, attribute, maximum area. */ - fprintf(outfile, "%4ld %.17g %.17g %.17g %.17g\n", - b->firstnumber + regionnumber, - regionlist[4 * regionnumber], regionlist[4 * regionnumber + 1], - regionlist[4 * regionnumber + 2], - regionlist[4 * regionnumber + 3]); - } - } -#endif /* not CDT_ONLY */ - - finishfile(outfile, argc, argv); -#endif /* not TRILIBRARY */ -} - -/*****************************************************************************/ -/* */ -/* writeedges() Write the edges to an .edge file. */ -/* */ -/*****************************************************************************/ - -#ifdef TRILIBRARY - -#ifdef ANSI_DECLARATORS -void writeedges(struct mesh *m, struct behavior *b, - int **edgelist, int **edgemarkerlist) -#else /* not ANSI_DECLARATORS */ -void writeedges(m, b, edgelist, edgemarkerlist) -struct mesh *m; -struct behavior *b; -int **edgelist; -int **edgemarkerlist; -#endif /* not ANSI_DECLARATORS */ - -#else /* not TRILIBRARY */ - -#ifdef ANSI_DECLARATORS -void writeedges(struct mesh *m, struct behavior *b, char *edgefilename, - int argc, char **argv) -#else /* not ANSI_DECLARATORS */ -void writeedges(m, b, edgefilename, argc, argv) -struct mesh *m; -struct behavior *b; -char *edgefilename; -int argc; -char **argv; -#endif /* not ANSI_DECLARATORS */ - -#endif /* not TRILIBRARY */ - -{ -#ifdef TRILIBRARY - int *elist; - int *emlist; - int index; -#else /* not TRILIBRARY */ - FILE *outfile; -#endif /* not TRILIBRARY */ - struct otri triangleloop, trisym; - struct osub checkmark; - vertex p1, p2; - long edgenumber; - triangle ptr; /* Temporary variable used by sym(). */ - subseg sptr; /* Temporary variable used by tspivot(). */ - -#ifdef TRILIBRARY - if (!b->quiet) { - fprintf(stderr, "Writing edges.\n"); - } - /* Allocate memory for edges if necessary. */ - if (*edgelist == (int *) NULL) { - *edgelist = (int *) trimalloc(m->edges * 2 * sizeof(int)); - } - /* Allocate memory for edge markers if necessary. */ - if (!b->nobound && (*edgemarkerlist == (int *) NULL)) { - *edgemarkerlist = (int *) trimalloc(m->edges * sizeof(int)); - } - elist = *edgelist; - emlist = *edgemarkerlist; - index = 0; -#else /* not TRILIBRARY */ - if (!b->quiet) { - fprintf(stderr, "Writing %s.\n", edgefilename); - } - outfile = fopen(edgefilename, "w"); - if (outfile == (FILE *) NULL) { - fprintf(stderr, " Error: Cannot create file %s.\n", edgefilename); - exit(1); - } - /* Number of edges, number of boundary markers (zero or one). */ - fprintf(outfile, "%ld %d\n", m->edges, 1 - b->nobound); -#endif /* not TRILIBRARY */ - - traversalinit(&m->triangles); - triangleloop.tri = triangletraverse(m); - edgenumber = b->firstnumber; - /* To loop over the set of edges, loop over all triangles, and look at */ - /* the three edges of each triangle. If there isn't another triangle */ - /* adjacent to the edge, operate on the edge. If there is another */ - /* adjacent triangle, operate on the edge only if the current triangle */ - /* has a smaller pointer than its neighbor. This way, each edge is */ - /* considered only once. */ - while (triangleloop.tri != (triangle *) NULL) { - for (triangleloop.orient = 0; triangleloop.orient < 3; - triangleloop.orient++) { - sym(triangleloop, trisym); - if ((triangleloop.tri < trisym.tri) || (trisym.tri == m->dummytri)) { - org(triangleloop, p1); - dest(triangleloop, p2); -#ifdef TRILIBRARY - elist[index++] = vertexmark(p1); - elist[index++] = vertexmark(p2); -#endif /* TRILIBRARY */ - if (b->nobound) { -#ifndef TRILIBRARY - /* Edge number, indices of two endpoints. */ - fprintf(outfile, "%4ld %d %d\n", edgenumber, - vertexmark(p1), vertexmark(p2)); -#endif /* not TRILIBRARY */ - } else { - /* Edge number, indices of two endpoints, and a boundary marker. */ - /* If there's no subsegment, the boundary marker is zero. */ - if (b->usesegments) { - tspivot(triangleloop, checkmark); - if (checkmark.ss == m->dummysub) { -#ifdef TRILIBRARY - emlist[edgenumber - b->firstnumber] = 0; -#else /* not TRILIBRARY */ - fprintf(outfile, "%4ld %d %d %d\n", edgenumber, - vertexmark(p1), vertexmark(p2), 0); -#endif /* not TRILIBRARY */ - } else { -#ifdef TRILIBRARY - emlist[edgenumber - b->firstnumber] = mark(checkmark); -#else /* not TRILIBRARY */ - fprintf(outfile, "%4ld %d %d %d\n", edgenumber, - vertexmark(p1), vertexmark(p2), mark(checkmark)); -#endif /* not TRILIBRARY */ - } - } else { -#ifdef TRILIBRARY - emlist[edgenumber - b->firstnumber] = trisym.tri == m->dummytri; -#else /* not TRILIBRARY */ - fprintf(outfile, "%4ld %d %d %d\n", edgenumber, - vertexmark(p1), vertexmark(p2), trisym.tri == m->dummytri); -#endif /* not TRILIBRARY */ - } - } - edgenumber++; - } - } - triangleloop.tri = triangletraverse(m); - } - -#ifndef TRILIBRARY - finishfile(outfile, argc, argv); -#endif /* not TRILIBRARY */ -} - -/*****************************************************************************/ -/* */ -/* writevoronoi() Write the Voronoi diagram to a .v.node and .v.edge */ -/* file. */ -/* */ -/* The Voronoi diagram is the geometric dual of the Delaunay triangulation. */ -/* Hence, the Voronoi vertices are listed by traversing the Delaunay */ -/* triangles, and the Voronoi edges are listed by traversing the Delaunay */ -/* edges. */ -/* */ -/* WARNING: In order to assign numbers to the Voronoi vertices, this */ -/* procedure messes up the subsegments or the extra nodes of every */ -/* element. Hence, you should call this procedure last. */ -/* */ -/*****************************************************************************/ - -#ifdef TRILIBRARY - -#ifdef ANSI_DECLARATORS -void writevoronoi(struct mesh *m, struct behavior *b, REAL **vpointlist, - REAL **vpointattriblist, int **vpointmarkerlist, - int **vedgelist, int **vedgemarkerlist, REAL **vnormlist) -#else /* not ANSI_DECLARATORS */ -void writevoronoi(m, b, vpointlist, vpointattriblist, vpointmarkerlist, - vedgelist, vedgemarkerlist, vnormlist) -struct mesh *m; -struct behavior *b; -REAL **vpointlist; -REAL **vpointattriblist; -int **vpointmarkerlist; -int **vedgelist; -int **vedgemarkerlist; -REAL **vnormlist; -#endif /* not ANSI_DECLARATORS */ - -#else /* not TRILIBRARY */ - -#ifdef ANSI_DECLARATORS -void writevoronoi(struct mesh *m, struct behavior *b, char *vnodefilename, - char *vedgefilename, int argc, char **argv) -#else /* not ANSI_DECLARATORS */ -void writevoronoi(m, b, vnodefilename, vedgefilename, argc, argv) -struct mesh *m; -struct behavior *b; -char *vnodefilename; -char *vedgefilename; -int argc; -char **argv; -#endif /* not ANSI_DECLARATORS */ - -#endif /* not TRILIBRARY */ - -{ -#ifdef TRILIBRARY - REAL *plist; - REAL *palist; - int *elist; - REAL *normlist; - int coordindex; - int attribindex; -#else /* not TRILIBRARY */ - FILE *outfile; -#endif /* not TRILIBRARY */ - struct otri triangleloop, trisym; - vertex torg, tdest, tapex; - REAL circumcenter[2]; - REAL xi, eta; - REAL dum; - long vnodenumber, vedgenumber; - int p1, p2; - int i; - triangle ptr; /* Temporary variable used by sym(). */ - -#ifdef TRILIBRARY - if (!b->quiet) { - fprintf(stderr, "Writing Voronoi vertices.\n"); - } - /* Allocate memory for Voronoi vertices if necessary. */ - if (*vpointlist == (REAL *) NULL) { - *vpointlist = (REAL *) trimalloc(m->triangles.items * 2 * sizeof(REAL)); - } - /* Allocate memory for Voronoi vertex attributes if necessary. */ - if (*vpointattriblist == (REAL *) NULL) { - *vpointattriblist = (REAL *) trimalloc(m->triangles.items * m->nextras * - sizeof(REAL)); - } - *vpointmarkerlist = (int *) NULL; - plist = *vpointlist; - palist = *vpointattriblist; - coordindex = 0; - attribindex = 0; -#else /* not TRILIBRARY */ - if (!b->quiet) { - fprintf(stderr, "Writing %s.\n", vnodefilename); - } - outfile = fopen(vnodefilename, "w"); - if (outfile == (FILE *) NULL) { - fprintf(stderr, " Error: Cannot create file %s.\n", vnodefilename); - exit(1); - } - /* Number of triangles, two dimensions, number of vertex attributes, */ - /* no markers. */ - fprintf(outfile, "%ld %d %d %d\n", m->triangles.items, 2, m->nextras, 0); -#endif /* not TRILIBRARY */ - - traversalinit(&m->triangles); - triangleloop.tri = triangletraverse(m); - triangleloop.orient = 0; - vnodenumber = b->firstnumber; - while (triangleloop.tri != (triangle *) NULL) { - org(triangleloop, torg); - dest(triangleloop, tdest); - apex(triangleloop, tapex); - findcircumcenter(m, b, torg, tdest, tapex, circumcenter, &xi, &eta, &dum); -#ifdef TRILIBRARY - /* X and y coordinates. */ - plist[coordindex++] = circumcenter[0]; - plist[coordindex++] = circumcenter[1]; - for (i = 2; i < 2 + m->nextras; i++) { - /* Interpolate the vertex attributes at the circumcenter. */ - palist[attribindex++] = torg[i] + xi * (tdest[i] - torg[i]) - + eta * (tapex[i] - torg[i]); - } -#else /* not TRILIBRARY */ - /* Voronoi vertex number, x and y coordinates. */ - fprintf(outfile, "%4ld %.17g %.17g", vnodenumber, circumcenter[0], - circumcenter[1]); - for (i = 2; i < 2 + m->nextras; i++) { - /* Interpolate the vertex attributes at the circumcenter. */ - fprintf(outfile, " %.17g", torg[i] + xi * (tdest[i] - torg[i]) - + eta * (tapex[i] - torg[i])); - } - fprintf(outfile, "\n"); -#endif /* not TRILIBRARY */ - - * (int *) (triangleloop.tri + 6) = (int) vnodenumber; - triangleloop.tri = triangletraverse(m); - vnodenumber++; - } - -#ifndef TRILIBRARY - finishfile(outfile, argc, argv); -#endif /* not TRILIBRARY */ - -#ifdef TRILIBRARY - if (!b->quiet) { - fprintf(stderr, "Writing Voronoi edges.\n"); - } - /* Allocate memory for output Voronoi edges if necessary. */ - if (*vedgelist == (int *) NULL) { - *vedgelist = (int *) trimalloc(m->edges * 2 * sizeof(int)); - } - *vedgemarkerlist = (int *) NULL; - /* Allocate memory for output Voronoi norms if necessary. */ - if (*vnormlist == (REAL *) NULL) { - *vnormlist = (REAL *) trimalloc(m->edges * 2 * sizeof(REAL)); - } - elist = *vedgelist; - normlist = *vnormlist; - coordindex = 0; -#else /* not TRILIBRARY */ - if (!b->quiet) { - fprintf(stderr, "Writing %s.\n", vedgefilename); - } - outfile = fopen(vedgefilename, "w"); - if (outfile == (FILE *) NULL) { - fprintf(stderr, " Error: Cannot create file %s.\n", vedgefilename); - exit(1); - } - /* Number of edges, zero boundary markers. */ - fprintf(outfile, "%ld %d\n", m->edges, 0); -#endif /* not TRILIBRARY */ - - traversalinit(&m->triangles); - triangleloop.tri = triangletraverse(m); - vedgenumber = b->firstnumber; - /* To loop over the set of edges, loop over all triangles, and look at */ - /* the three edges of each triangle. If there isn't another triangle */ - /* adjacent to the edge, operate on the edge. If there is another */ - /* adjacent triangle, operate on the edge only if the current triangle */ - /* has a smaller pointer than its neighbor. This way, each edge is */ - /* considered only once. */ - while (triangleloop.tri != (triangle *) NULL) { - for (triangleloop.orient = 0; triangleloop.orient < 3; - triangleloop.orient++) { - sym(triangleloop, trisym); - if ((triangleloop.tri < trisym.tri) || (trisym.tri == m->dummytri)) { - /* Find the number of this triangle (and Voronoi vertex). */ - p1 = * (int *) (triangleloop.tri + 6); - if (trisym.tri == m->dummytri) { - org(triangleloop, torg); - dest(triangleloop, tdest); -#ifdef TRILIBRARY - /* Copy an infinite ray. Index of one endpoint, and -1. */ - elist[coordindex] = p1; - normlist[coordindex++] = tdest[1] - torg[1]; - elist[coordindex] = -1; - normlist[coordindex++] = torg[0] - tdest[0]; -#else /* not TRILIBRARY */ - /* Write an infinite ray. Edge number, index of one endpoint, -1, */ - /* and x and y coordinates of a vector representing the */ - /* direction of the ray. */ - fprintf(outfile, "%4ld %d %d %.17g %.17g\n", vedgenumber, - p1, -1, tdest[1] - torg[1], torg[0] - tdest[0]); -#endif /* not TRILIBRARY */ - } else { - /* Find the number of the adjacent triangle (and Voronoi vertex). */ - p2 = * (int *) (trisym.tri + 6); - /* Finite edge. Write indices of two endpoints. */ -#ifdef TRILIBRARY - elist[coordindex] = p1; - normlist[coordindex++] = 0.0; - elist[coordindex] = p2; - normlist[coordindex++] = 0.0; -#else /* not TRILIBRARY */ - fprintf(outfile, "%4ld %d %d\n", vedgenumber, p1, p2); -#endif /* not TRILIBRARY */ - } - vedgenumber++; - } - } - triangleloop.tri = triangletraverse(m); - } - -#ifndef TRILIBRARY - finishfile(outfile, argc, argv); -#endif /* not TRILIBRARY */ -} - -#ifdef TRILIBRARY - -#ifdef ANSI_DECLARATORS -void writeneighbors(struct mesh *m, struct behavior *b, int **neighborlist) -#else /* not ANSI_DECLARATORS */ -void writeneighbors(m, b, neighborlist) -struct mesh *m; -struct behavior *b; -int **neighborlist; -#endif /* not ANSI_DECLARATORS */ - -#else /* not TRILIBRARY */ - -#ifdef ANSI_DECLARATORS -void writeneighbors(struct mesh *m, struct behavior *b, char *neighborfilename, - int argc, char **argv) -#else /* not ANSI_DECLARATORS */ -void writeneighbors(m, b, neighborfilename, argc, argv) -struct mesh *m; -struct behavior *b; -char *neighborfilename; -int argc; -char **argv; -#endif /* not ANSI_DECLARATORS */ - -#endif /* not TRILIBRARY */ - -{ -#ifdef TRILIBRARY - int *nlist; - int index; -#else /* not TRILIBRARY */ - FILE *outfile; -#endif /* not TRILIBRARY */ - struct otri triangleloop, trisym; - long elementnumber; - int neighbor1, neighbor2, neighbor3; - triangle ptr; /* Temporary variable used by sym(). */ - -#ifdef TRILIBRARY - if (!b->quiet) { - fprintf(stderr, "Writing neighbors.\n"); - } - /* Allocate memory for neighbors if necessary. */ - if (*neighborlist == (int *) NULL) { - *neighborlist = (int *) trimalloc(m->triangles.items * 3 * sizeof(int)); - } - nlist = *neighborlist; - index = 0; -#else /* not TRILIBRARY */ - if (!b->quiet) { - fprintf(stderr, "Writing %s.\n", neighborfilename); - } - outfile = fopen(neighborfilename, "w"); - if (outfile == (FILE *) NULL) { - fprintf(stderr, " Error: Cannot create file %s.\n", neighborfilename); - exit(1); - } - /* Number of triangles, three neighbors per triangle. */ - fprintf(outfile, "%ld %d\n", m->triangles.items, 3); -#endif /* not TRILIBRARY */ - - traversalinit(&m->triangles); - triangleloop.tri = triangletraverse(m); - triangleloop.orient = 0; - elementnumber = b->firstnumber; - while (triangleloop.tri != (triangle *) NULL) { - * (int *) (triangleloop.tri + 6) = (int) elementnumber; - triangleloop.tri = triangletraverse(m); - elementnumber++; - } - * (int *) (m->dummytri + 6) = -1; - - traversalinit(&m->triangles); - triangleloop.tri = triangletraverse(m); - elementnumber = b->firstnumber; - while (triangleloop.tri != (triangle *) NULL) { - triangleloop.orient = 1; - sym(triangleloop, trisym); - neighbor1 = * (int *) (trisym.tri + 6); - triangleloop.orient = 2; - sym(triangleloop, trisym); - neighbor2 = * (int *) (trisym.tri + 6); - triangleloop.orient = 0; - sym(triangleloop, trisym); - neighbor3 = * (int *) (trisym.tri + 6); -#ifdef TRILIBRARY - nlist[index++] = neighbor1; - nlist[index++] = neighbor2; - nlist[index++] = neighbor3; -#else /* not TRILIBRARY */ - /* Triangle number, neighboring triangle numbers. */ - fprintf(outfile, "%4ld %d %d %d\n", elementnumber, - neighbor1, neighbor2, neighbor3); -#endif /* not TRILIBRARY */ - - triangleloop.tri = triangletraverse(m); - elementnumber++; - } - -#ifndef TRILIBRARY - finishfile(outfile, argc, argv); -#endif /* not TRILIBRARY */ -} - -/*****************************************************************************/ -/* */ -/* writeoff() Write the triangulation to an .off file. */ -/* */ -/* OFF stands for the Object File Format, a format used by the Geometry */ -/* Center's Geomview package. */ -/* */ -/*****************************************************************************/ - -#ifndef TRILIBRARY - -#ifdef ANSI_DECLARATORS -void writeoff(struct mesh *m, struct behavior *b, char *offfilename, - int argc, char **argv) -#else /* not ANSI_DECLARATORS */ -void writeoff(m, b, offfilename, argc, argv) -struct mesh *m; -struct behavior *b; -char *offfilename; -int argc; -char **argv; -#endif /* not ANSI_DECLARATORS */ - -{ - FILE *outfile; - struct otri triangleloop; - vertex vertexloop; - vertex p1, p2, p3; - long outvertices; - - if (!b->quiet) { - fprintf(stderr, "Writing %s.\n", offfilename); - } - - if (b->jettison) { - outvertices = m->vertices.items - m->undeads; - } else { - outvertices = m->vertices.items; - } - - outfile = fopen(offfilename, "w"); - if (outfile == (FILE *) NULL) { - fprintf(stderr, " Error: Cannot create file %s.\n", offfilename); - exit(1); - } - /* Number of vertices, triangles, and edges. */ - fprintf(outfile, "OFF\n%ld %ld %ld\n", outvertices, m->triangles.items, - m->edges); - - /* Write the vertices. */ - traversalinit(&m->vertices); - vertexloop = vertextraverse(m); - while (vertexloop != (vertex) NULL) { - if (!b->jettison || (vertextype(vertexloop) != UNDEADVERTEX)) { - /* The "0.0" is here because the OFF format uses 3D coordinates. */ - fprintf(outfile, " %.17g %.17g %.17g\n", vertexloop[0], vertexloop[1], - 0.0); - } - vertexloop = vertextraverse(m); - } - - /* Write the triangles. */ - traversalinit(&m->triangles); - triangleloop.tri = triangletraverse(m); - triangleloop.orient = 0; - while (triangleloop.tri != (triangle *) NULL) { - org(triangleloop, p1); - dest(triangleloop, p2); - apex(triangleloop, p3); - /* The "3" means a three-vertex polygon. */ - fprintf(outfile, " 3 %4d %4d %4d\n", vertexmark(p1) - 1, - vertexmark(p2) - 1, vertexmark(p3) - 1); - triangleloop.tri = triangletraverse(m); - } - finishfile(outfile, argc, argv); -} - -#endif /* not TRILIBRARY */ - -/** **/ -/** **/ -/********* File I/O routines end here *********/ - -/*****************************************************************************/ -/* */ -/* quality_statistics() Print statistics about the quality of the mesh. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void quality_statistics(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -void quality_statistics(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - struct otri triangleloop; - vertex p[3]; - REAL cossquaretable[8]; - REAL ratiotable[16]; - REAL dx[3], dy[3]; - REAL edgelength[3]; - REAL dotproduct; - REAL cossquare; - REAL triarea; - REAL shortest, longest; - REAL trilongest2; - REAL smallestarea, biggestarea; - REAL triminaltitude2; - REAL minaltitude; - REAL triaspect2; - REAL worstaspect; - REAL smallestangle, biggestangle; - REAL radconst, degconst; - int angletable[18]; - int aspecttable[16]; - int aspectindex; - int tendegree; - int acutebiggest; - int i, ii, j, k; - - fprintf(stderr, "Mesh quality statistics:\n\n"); - radconst = PI / 18.0; - degconst = 180.0 / PI; - for (i = 0; i < 8; i++) { - cossquaretable[i] = cos(radconst * (REAL) (i + 1)); - cossquaretable[i] = cossquaretable[i] * cossquaretable[i]; - } - for (i = 0; i < 18; i++) { - angletable[i] = 0; - } - - ratiotable[0] = 1.5; ratiotable[1] = 2.0; - ratiotable[2] = 2.5; ratiotable[3] = 3.0; - ratiotable[4] = 4.0; ratiotable[5] = 6.0; - ratiotable[6] = 10.0; ratiotable[7] = 15.0; - ratiotable[8] = 25.0; ratiotable[9] = 50.0; - ratiotable[10] = 100.0; ratiotable[11] = 300.0; - ratiotable[12] = 1000.0; ratiotable[13] = 10000.0; - ratiotable[14] = 100000.0; ratiotable[15] = 0.0; - for (i = 0; i < 16; i++) { - aspecttable[i] = 0; - } - - worstaspect = 0.0; - minaltitude = m->xmax - m->xmin + m->ymax - m->ymin; - minaltitude = minaltitude * minaltitude; - shortest = minaltitude; - longest = 0.0; - smallestarea = minaltitude; - biggestarea = 0.0; - worstaspect = 0.0; - smallestangle = 0.0; - biggestangle = 2.0; - acutebiggest = 1; - - traversalinit(&m->triangles); - triangleloop.tri = triangletraverse(m); - triangleloop.orient = 0; - while (triangleloop.tri != (triangle *) NULL) { - org(triangleloop, p[0]); - dest(triangleloop, p[1]); - apex(triangleloop, p[2]); - trilongest2 = 0.0; - - for (i = 0; i < 3; i++) { - j = plus1mod3[i]; - k = minus1mod3[i]; - dx[i] = p[j][0] - p[k][0]; - dy[i] = p[j][1] - p[k][1]; - edgelength[i] = dx[i] * dx[i] + dy[i] * dy[i]; - if (edgelength[i] > trilongest2) { - trilongest2 = edgelength[i]; - } - if (edgelength[i] > longest) { - longest = edgelength[i]; - } - if (edgelength[i] < shortest) { - shortest = edgelength[i]; - } - } - - triarea = counterclockwise(m, b, p[0], p[1], p[2]); - if (triarea < smallestarea) { - smallestarea = triarea; - } - if (triarea > biggestarea) { - biggestarea = triarea; - } - triminaltitude2 = triarea * triarea / trilongest2; - if (triminaltitude2 < minaltitude) { - minaltitude = triminaltitude2; - } - triaspect2 = trilongest2 / triminaltitude2; - if (triaspect2 > worstaspect) { - worstaspect = triaspect2; - } - aspectindex = 0; - while ((triaspect2 > ratiotable[aspectindex] * ratiotable[aspectindex]) - && (aspectindex < 15)) { - aspectindex++; - } - aspecttable[aspectindex]++; - - for (i = 0; i < 3; i++) { - j = plus1mod3[i]; - k = minus1mod3[i]; - dotproduct = dx[j] * dx[k] + dy[j] * dy[k]; - cossquare = dotproduct * dotproduct / (edgelength[j] * edgelength[k]); - tendegree = 8; - for (ii = 7; ii >= 0; ii--) { - if (cossquare > cossquaretable[ii]) { - tendegree = ii; - } - } - if (dotproduct <= 0.0) { - angletable[tendegree]++; - if (cossquare > smallestangle) { - smallestangle = cossquare; - } - if (acutebiggest && (cossquare < biggestangle)) { - biggestangle = cossquare; - } - } else { - angletable[17 - tendegree]++; - if (acutebiggest || (cossquare > biggestangle)) { - biggestangle = cossquare; - acutebiggest = 0; - } - } - } - triangleloop.tri = triangletraverse(m); - } - - shortest = sqrt(shortest); - longest = sqrt(longest); - minaltitude = sqrt(minaltitude); - worstaspect = sqrt(worstaspect); - smallestarea *= 0.5; - biggestarea *= 0.5; - if (smallestangle >= 1.0) { - smallestangle = 0.0; - } else { - smallestangle = degconst * acos(sqrt(smallestangle)); - } - if (biggestangle >= 1.0) { - biggestangle = 180.0; - } else { - if (acutebiggest) { - biggestangle = degconst * acos(sqrt(biggestangle)); - } else { - biggestangle = 180.0 - degconst * acos(sqrt(biggestangle)); - } - } - - fprintf(stderr, " Smallest area: %16.5g | Largest area: %16.5g\n", - smallestarea, biggestarea); - fprintf(stderr, " Shortest edge: %16.5g | Longest edge: %16.5g\n", - shortest, longest); - fprintf(stderr, " Shortest altitude: %12.5g | Largest aspect ratio: %8.5g\n\n", - minaltitude, worstaspect); - - fprintf(stderr, " Triangle aspect ratio histogram:\n"); - fprintf(stderr, " 1.1547 - %-6.6g : %8d | %6.6g - %-6.6g : %8d\n", - ratiotable[0], aspecttable[0], ratiotable[7], ratiotable[8], - aspecttable[8]); - for (i = 1; i < 7; i++) { - fprintf(stderr, " %6.6g - %-6.6g : %8d | %6.6g - %-6.6g : %8d\n", - ratiotable[i - 1], ratiotable[i], aspecttable[i], - ratiotable[i + 7], ratiotable[i + 8], aspecttable[i + 8]); - } - fprintf(stderr, " %6.6g - %-6.6g : %8d | %6.6g - : %8d\n", - ratiotable[6], ratiotable[7], aspecttable[7], ratiotable[14], - aspecttable[15]); - fprintf(stderr, " (Aspect ratio is longest edge divided by shortest altitude)\n\n"); - - fprintf(stderr, " Smallest angle: %15.5g | Largest angle: %15.5g\n\n", - smallestangle, biggestangle); - - fprintf(stderr, " Angle histogram:\n"); - for (i = 0; i < 9; i++) { - fprintf(stderr, " %3d - %3d degrees: %8d | %3d - %3d degrees: %8d\n", - i * 10, i * 10 + 10, angletable[i], - i * 10 + 90, i * 10 + 100, angletable[i + 9]); - } - fprintf(stderr, "\n"); -} - -/*****************************************************************************/ -/* */ -/* statistics() Print all sorts of cool facts. */ -/* */ -/*****************************************************************************/ - -#ifdef ANSI_DECLARATORS -void statistics(struct mesh *m, struct behavior *b) -#else /* not ANSI_DECLARATORS */ -void statistics(m, b) -struct mesh *m; -struct behavior *b; -#endif /* not ANSI_DECLARATORS */ - -{ - fprintf(stderr, "\nStatistics:\n\n"); - fprintf(stderr, " Input vertices: %d\n", m->invertices); - if (b->refine) { - fprintf(stderr, " Input triangles: %d\n", m->inelements); - } - if (b->poly) { - fprintf(stderr, " Input segments: %d\n", m->insegments); - if (!b->refine) { - fprintf(stderr, " Input holes: %d\n", m->holes); - } - } - - fprintf(stderr, "\n Mesh vertices: %ld\n", m->vertices.items - m->undeads); - fprintf(stderr, " Mesh triangles: %ld\n", m->triangles.items); - fprintf(stderr, " Mesh edges: %ld\n", m->edges); - fprintf(stderr, " Mesh exterior boundary edges: %ld\n", m->hullsize); - if (b->poly || b->refine) { - fprintf(stderr, " Mesh interior boundary edges: %ld\n", - m->subsegs.items - m->hullsize); - fprintf(stderr, " Mesh subsegments (constrained edges): %ld\n", - m->subsegs.items); - } - fprintf(stderr, "\n"); - - if (b->verbose) { - quality_statistics(m, b); - fprintf(stderr, "Memory allocation statistics:\n\n"); - fprintf(stderr, " Maximum number of vertices: %ld\n", m->vertices.maxitems); - fprintf(stderr, " Maximum number of triangles: %ld\n", m->triangles.maxitems); - if (m->subsegs.maxitems > 0) { - fprintf(stderr, " Maximum number of subsegments: %ld\n", m->subsegs.maxitems); - } - if (m->viri.maxitems > 0) { - fprintf(stderr, " Maximum number of viri: %ld\n", m->viri.maxitems); - } - if (m->badsubsegs.maxitems > 0) { - fprintf(stderr, " Maximum number of encroached subsegments: %ld\n", - m->badsubsegs.maxitems); - } - if (m->badtriangles.maxitems > 0) { - fprintf(stderr, " Maximum number of bad triangles: %ld\n", - m->badtriangles.maxitems); - } - if (m->flipstackers.maxitems > 0) { - fprintf(stderr, " Maximum number of stacked triangle flips: %ld\n", - m->flipstackers.maxitems); - } - if (m->splaynodes.maxitems > 0) { - fprintf(stderr, " Maximum number of splay tree nodes: %ld\n", - m->splaynodes.maxitems); - } - fprintf(stderr, " Approximate heap memory use (bytes): %ld\n\n", - m->vertices.maxitems * m->vertices.itembytes + - m->triangles.maxitems * m->triangles.itembytes + - m->subsegs.maxitems * m->subsegs.itembytes + - m->viri.maxitems * m->viri.itembytes + - m->badsubsegs.maxitems * m->badsubsegs.itembytes + - m->badtriangles.maxitems * m->badtriangles.itembytes + - m->flipstackers.maxitems * m->flipstackers.itembytes + - m->splaynodes.maxitems * m->splaynodes.itembytes); - - fprintf(stderr, "Algorithmic statistics:\n\n"); - if (!b->weighted) { - fprintf(stderr, " Number of incircle tests: %ld\n", m->incirclecount); - } else { - fprintf(stderr, " Number of 3D orientation tests: %ld\n", m->orient3dcount); - } - fprintf(stderr, " Number of 2D orientation tests: %ld\n", m->counterclockcount); - if (m->hyperbolacount > 0) { - fprintf(stderr, " Number of right-of-hyperbola tests: %ld\n", - m->hyperbolacount); - } - if (m->circletopcount > 0) { - fprintf(stderr, " Number of circle top computations: %ld\n", - m->circletopcount); - } - if (m->circumcentercount > 0) { - fprintf(stderr, " Number of triangle circumcenter computations: %ld\n", - m->circumcentercount); - } - fprintf(stderr, "\n"); - } -} - -/*****************************************************************************/ -/* */ -/* main() or triangulate() Gosh, do everything. */ -/* */ -/* The sequence is roughly as follows. Many of these steps can be skipped, */ -/* depending on the command line switches. */ -/* */ -/* - Initialize constants and parse the command line. */ -/* - Read the vertices from a file and either */ -/* - triangulate them (no -r), or */ -/* - read an old mesh from files and reconstruct it (-r). */ -/* - Insert the PSLG segments (-p), and possibly segments on the convex */ -/* hull (-c). */ -/* - Read the holes (-p), regional attributes (-pA), and regional area */ -/* constraints (-pa). Carve the holes and concavities, and spread the */ -/* regional attributes and area constraints. */ -/* - Enforce the constraints on minimum angle (-q) and maximum area (-a). */ -/* Also enforce the conforming Delaunay property (-q and -a). */ -/* - Compute the number of edges in the resulting mesh. */ -/* - Promote the mesh's linear triangles to higher order elements (-o). */ -/* - Write the output files and print the statistics. */ -/* - Check the consistency and Delaunay property of the mesh (-C). */ -/* */ -/*****************************************************************************/ - -#ifdef TRILIBRARY - -#ifdef ANSI_DECLARATORS -void triangulate(char *triswitches, struct triangulateio *in, - struct triangulateio *out, struct triangulateio *vorout) -#else /* not ANSI_DECLARATORS */ -void triangulate(triswitches, in, out, vorout) -char *triswitches; -struct triangulateio *in; -struct triangulateio *out; -struct triangulateio *vorout; -#endif /* not ANSI_DECLARATORS */ - -#else /* not TRILIBRARY */ - -#ifdef ANSI_DECLARATORS -int main(int argc, char **argv) -#else /* not ANSI_DECLARATORS */ -int main(argc, argv) -int argc; -char **argv; -#endif /* not ANSI_DECLARATORS */ - -#endif /* not TRILIBRARY */ - -{ - struct mesh m; - struct behavior b; - REAL *holearray; /* Array of holes. */ - REAL *regionarray; /* Array of regional attributes and area constraints. */ -#ifndef TRILIBRARY - FILE *polyfile; -#endif /* not TRILIBRARY */ -#ifndef NO_TIMER - /* Variables for timing the performance of Triangle. The types are */ - /* defined in sys/time.h. */ - struct timeval tv0, tv1, tv2, tv3, tv4, tv5, tv6; - struct timezone tz; -#endif /* not NO_TIMER */ - -#ifndef NO_TIMER - gettimeofday(&tv0, &tz); -#endif /* not NO_TIMER */ - - triangleinit(&m); -#ifdef TRILIBRARY - parsecommandline(1, &triswitches, &b); -#else /* not TRILIBRARY */ - parsecommandline(argc, argv, &b); -#endif /* not TRILIBRARY */ - m.steinerleft = b.steiner; - -#ifdef TRILIBRARY - transfernodes(&m, &b, in->pointlist, in->pointattributelist, - in->pointmarkerlist, in->numberofpoints, - in->numberofpointattributes); -#else /* not TRILIBRARY */ - readnodes(&m, &b, b.innodefilename, b.inpolyfilename, &polyfile); -#endif /* not TRILIBRARY */ - -#ifndef NO_TIMER - if (!b.quiet) { - gettimeofday(&tv1, &tz); - } -#endif /* not NO_TIMER */ - -#ifdef CDT_ONLY - m.hullsize = delaunay(&m, &b); /* Triangulate the vertices. */ -#else /* not CDT_ONLY */ - if (b.refine) { - /* Read and reconstruct a mesh. */ -#ifdef TRILIBRARY - m.hullsize = reconstruct(&m, &b, in->trianglelist, - in->triangleattributelist, in->trianglearealist, - in->numberoftriangles, in->numberofcorners, - in->numberoftriangleattributes, - in->segmentlist, in->segmentmarkerlist, - in->numberofsegments); -#else /* not TRILIBRARY */ - m.hullsize = reconstruct(&m, &b, b.inelefilename, b.areafilename, - b.inpolyfilename, polyfile); -#endif /* not TRILIBRARY */ - } else { - m.hullsize = delaunay(&m, &b); /* Triangulate the vertices. */ - } -#endif /* not CDT_ONLY */ - -#ifndef NO_TIMER - if (!b.quiet) { - gettimeofday(&tv2, &tz); - if (b.refine) { - fprintf(stderr, "Mesh reconstruction"); - } else { - fprintf(stderr, "Delaunay"); - } - fprintf(stderr, " milliseconds: %ld\n", 1000l * (tv2.tv_sec - tv1.tv_sec) + - (tv2.tv_usec - tv1.tv_usec) / 1000l); - } -#endif /* not NO_TIMER */ - - /* Ensure that no vertex can be mistaken for a triangular bounding */ - /* box vertex in insertvertex(). */ - m.infvertex1 = (vertex) NULL; - m.infvertex2 = (vertex) NULL; - m.infvertex3 = (vertex) NULL; - - if (b.usesegments) { - m.checksegments = 1; /* Segments will be introduced next. */ - if (!b.refine) { - /* Insert PSLG segments and/or convex hull segments. */ -#ifdef TRILIBRARY - formskeleton(&m, &b, in->segmentlist, - in->segmentmarkerlist, in->numberofsegments); -#else /* not TRILIBRARY */ - formskeleton(&m, &b, polyfile, b.inpolyfilename); -#endif /* not TRILIBRARY */ - } - } - -#ifndef NO_TIMER - if (!b.quiet) { - gettimeofday(&tv3, &tz); - if (b.usesegments && !b.refine) { - fprintf(stderr, "Segment milliseconds: %ld\n", - 1000l * (tv3.tv_sec - tv2.tv_sec) + - (tv3.tv_usec - tv2.tv_usec) / 1000l); - } - } -#endif /* not NO_TIMER */ - - if (b.poly && (m.triangles.items > 0)) { -#ifdef TRILIBRARY - holearray = in->holelist; - m.holes = in->numberofholes; - regionarray = in->regionlist; - m.regions = in->numberofregions; -#else /* not TRILIBRARY */ - readholes(&m, &b, polyfile, b.inpolyfilename, &holearray, &m.holes, - ®ionarray, &m.regions); -#endif /* not TRILIBRARY */ - if (!b.refine) { - /* Carve out holes and concavities. */ - carveholes(&m, &b, holearray, m.holes, regionarray, m.regions); - } - } else { - /* Without a PSLG, there can be no holes or regional attributes */ - /* or area constraints. The following are set to zero to avoid */ - /* an accidental free() later. */ - m.holes = 0; - m.regions = 0; - } - -#ifndef NO_TIMER - if (!b.quiet) { - gettimeofday(&tv4, &tz); - if (b.poly && !b.refine) { - fprintf(stderr, "Hole milliseconds: %ld\n", 1000l * (tv4.tv_sec - tv3.tv_sec) + - (tv4.tv_usec - tv3.tv_usec) / 1000l); - } - } -#endif /* not NO_TIMER */ - -#ifndef CDT_ONLY - if (b.quality && (m.triangles.items > 0)) { - enforcequality(&m, &b); /* Enforce angle and area constraints. */ - } -#endif /* not CDT_ONLY */ - -#ifndef NO_TIMER - if (!b.quiet) { - gettimeofday(&tv5, &tz); -#ifndef CDT_ONLY - if (b.quality) { - fprintf(stderr, "Quality milliseconds: %ld\n", - 1000l * (tv5.tv_sec - tv4.tv_sec) + - (tv5.tv_usec - tv4.tv_usec) / 1000l); - } -#endif /* not CDT_ONLY */ - } -#endif /* not NO_TIMER */ - - /* Calculate the number of edges. */ - m.edges = (3l * m.triangles.items + m.hullsize) / 2l; - - if (b.order > 1) { - highorder(&m, &b); /* Promote elements to higher polynomial order. */ - } - if (!b.quiet) { - fprintf(stderr, "\n"); - } - -#ifdef TRILIBRARY - out->numberofpoints = m.vertices.items; - out->numberofpointattributes = m.nextras; - out->numberoftriangles = m.triangles.items; - out->numberofcorners = (b.order + 1) * (b.order + 2) / 2; - out->numberoftriangleattributes = m.eextras; - out->numberofedges = m.edges; - if (b.usesegments) { - out->numberofsegments = m.subsegs.items; - } else { - out->numberofsegments = m.hullsize; - } - if (vorout != (struct triangulateio *) NULL) { - vorout->numberofpoints = m.triangles.items; - vorout->numberofpointattributes = m.nextras; - vorout->numberofedges = m.edges; - } -#endif /* TRILIBRARY */ - /* If not using iteration numbers, don't write a .node file if one was */ - /* read, because the original one would be overwritten! */ - if (b.nonodewritten || (b.noiterationnum && m.readnodefile)) { - if (!b.quiet) { -#ifdef TRILIBRARY - fprintf(stderr, "NOT writing vertices.\n"); -#else /* not TRILIBRARY */ - fprintf(stderr, "NOT writing a .node file.\n"); -#endif /* not TRILIBRARY */ - } - numbernodes(&m, &b); /* We must remember to number the vertices. */ - } else { - /* writenodes() numbers the vertices too. */ -#ifdef TRILIBRARY - writenodes(&m, &b, &out->pointlist, &out->pointattributelist, - &out->pointmarkerlist); -#else /* not TRILIBRARY */ - writenodes(&m, &b, b.outnodefilename, argc, argv); -#endif /* TRILIBRARY */ - } - if (b.noelewritten) { - if (!b.quiet) { -#ifdef TRILIBRARY - fprintf(stderr, "NOT writing triangles.\n"); -#else /* not TRILIBRARY */ - fprintf(stderr, "NOT writing an .ele file.\n"); -#endif /* not TRILIBRARY */ - } - } else { -#ifdef TRILIBRARY - writeelements(&m, &b, &out->trianglelist, &out->triangleattributelist); -#else /* not TRILIBRARY */ - writeelements(&m, &b, b.outelefilename, argc, argv); -#endif /* not TRILIBRARY */ - } - /* The -c switch (convex switch) causes a PSLG to be written */ - /* even if none was read. */ - if (b.poly || b.convex) { - /* If not using iteration numbers, don't overwrite the .poly file. */ - if (b.nopolywritten || b.noiterationnum) { - if (!b.quiet) { -#ifdef TRILIBRARY - fprintf(stderr, "NOT writing segments.\n"); -#else /* not TRILIBRARY */ - fprintf(stderr, "NOT writing a .poly file.\n"); -#endif /* not TRILIBRARY */ - } - } else { -#ifdef TRILIBRARY - writepoly(&m, &b, &out->segmentlist, &out->segmentmarkerlist); - out->numberofholes = m.holes; - out->numberofregions = m.regions; - if (b.poly) { - out->holelist = in->holelist; - out->regionlist = in->regionlist; - } else { - out->holelist = (REAL *) NULL; - out->regionlist = (REAL *) NULL; - } -#else /* not TRILIBRARY */ - writepoly(&m, &b, b.outpolyfilename, holearray, m.holes, regionarray, - m.regions, argc, argv); -#endif /* not TRILIBRARY */ - } - } -#ifndef TRILIBRARY -#ifndef CDT_ONLY - if (m.regions > 0) { - trifree((VOID *) regionarray); - } -#endif /* not CDT_ONLY */ - if (m.holes > 0) { - trifree((VOID *) holearray); - } - if (b.geomview) { - writeoff(&m, &b, b.offfilename, argc, argv); - } -#endif /* not TRILIBRARY */ - if (b.edgesout) { -#ifdef TRILIBRARY - writeedges(&m, &b, &out->edgelist, &out->edgemarkerlist); -#else /* not TRILIBRARY */ - writeedges(&m, &b, b.edgefilename, argc, argv); -#endif /* not TRILIBRARY */ - } - if (b.voronoi) { -#ifdef TRILIBRARY - writevoronoi(&m, &b, &vorout->pointlist, &vorout->pointattributelist, - &vorout->pointmarkerlist, &vorout->edgelist, - &vorout->edgemarkerlist, &vorout->normlist); -#else /* not TRILIBRARY */ - writevoronoi(&m, &b, b.vnodefilename, b.vedgefilename, argc, argv); -#endif /* not TRILIBRARY */ - } - if (b.neighbors) { -#ifdef TRILIBRARY - writeneighbors(&m, &b, &out->neighborlist); -#else /* not TRILIBRARY */ - writeneighbors(&m, &b, b.neighborfilename, argc, argv); -#endif /* not TRILIBRARY */ - } - - if (!b.quiet) { -#ifndef NO_TIMER - gettimeofday(&tv6, &tz); - fprintf(stderr, "\nOutput milliseconds: %ld\n", - 1000l * (tv6.tv_sec - tv5.tv_sec) + - (tv6.tv_usec - tv5.tv_usec) / 1000l); - fprintf(stderr, "Total running milliseconds: %ld\n", - 1000l * (tv6.tv_sec - tv0.tv_sec) + - (tv6.tv_usec - tv0.tv_usec) / 1000l); -#endif /* not NO_TIMER */ - - statistics(&m, &b); - } - -#ifndef REDUCED - if (b.docheck) { - checkmesh(&m, &b); - checkdelaunay(&m, &b); - } -#endif /* not REDUCED */ - - triangledeinit(&m, &b); -#ifndef TRILIBRARY - return 0; -#endif /* not TRILIBRARY */ -} +/*****************************************************************************/ +/* */ +/* 888888888 ,o, / 888 */ +/* 888 88o88o " o8888o 88o8888o o88888o 888 o88888o */ +/* 888 888 888 88b 888 888 888 888 888 d888 88b */ +/* 888 888 888 o88^o888 888 888 "88888" 888 8888oo888 */ +/* 888 888 888 C888 888 888 888 / 888 q888 */ +/* 888 888 888 "88o^888 888 888 Cb 888 "88oooo" */ +/* "8oo8D */ +/* */ +/* A Two-Dimensional Quality Mesh Generator and Delaunay Triangulator. */ +/* (triangle.c) */ +/* */ +/* Version 1.4 */ +/* November 1, 2002 */ +/* */ +/* Copyright 1993, 1995, 1997, 1998, 2002 */ +/* Jonathan Richard Shewchuk */ +/* 2360 Woolsey #H */ +/* Berkeley, California 94705-1927 */ +/* jrs@cs.berkeley.edu */ +/* */ +/* This program may be freely redistributed under the condition that the */ +/* copyright notices (including this entire header and the copyright */ +/* notice printed when the `-h' switch is selected) are not removed, and */ +/* no compensation is received. Private, research, and institutional */ +/* use is free. You may distribute modified versions of this code UNDER */ +/* THE CONDITION THAT THIS CODE AND ANY MODIFICATIONS MADE TO IT IN THE */ +/* SAME FILE REMAIN UNDER COPYRIGHT OF THE ORIGINAL AUTHOR, BOTH SOURCE */ +/* AND OBJECT CODE ARE MADE FREELY AVAILABLE WITHOUT CHARGE, AND CLEAR */ +/* NOTICE IS GIVEN OF THE MODIFICATIONS. Distribution of this code as */ +/* part of a commercial system is permissible ONLY BY DIRECT ARRANGEMENT */ +/* WITH THE AUTHOR. (If you are not directly supplying this code to a */ +/* customer, and you are instead telling them how they can obtain it for */ +/* free, then you are not required to make any arrangement with me.) */ +/* */ +/* Hypertext instructions for Triangle are available on the Web at */ +/* */ +/* http://www.cs.cmu.edu/~quake/triangle.html */ +/* */ +/* Some of the references listed below are marked with an asterisk. [*] */ +/* These references are available for downloading from the Web page */ +/* */ +/* http://www.cs.cmu.edu/~quake/triangle.research.html */ +/* */ +/* Three papers discussing aspects of Triangle are available. A short */ +/* overview appears in "Triangle: Engineering a 2D Quality Mesh */ +/* Generator and Delaunay Triangulator," in Applied Computational */ +/* Geometry: Towards Geometric Engineering, Ming C. Lin and Dinesh */ +/* Manocha, editors, Lecture Notes in Computer Science volume 1148, */ +/* pages 203-222, Springer-Verlag, Berlin, May 1996 (from the First ACM */ +/* Workshop on Applied Computational Geometry). [*] */ +/* */ +/* The algorithms are discussed in the greatest detail in "Delaunay */ +/* Refinement Algorithms for Triangular Mesh Generation," Computational */ +/* Geometry: Theory and Applications 22(1-3):21-74, May 2002. [*] */ +/* */ +/* More detail about the data structures may be found in my dissertation: */ +/* "Delaunay Refinement Mesh Generation," Ph.D. thesis, Technical Report */ +/* CMU-CS-97-137, School of Computer Science, Carnegie Mellon University, */ +/* Pittsburgh, Pennsylvania, 18 May 1997. [*] */ +/* */ +/* Triangle was created as part of the Archimedes project in the School of */ +/* Computer Science at Carnegie Mellon University. Archimedes is a */ +/* system for compiling parallel finite element solvers. For further */ +/* information, see Hesheng Bao, Jacobo Bielak, Omar Ghattas, Loukas F. */ +/* Kallivokas, David R. O'Hallaron, Jonathan R. Shewchuk, and Jifeng Xu, */ +/* "Large-scale Simulation of Elastic Wave Propagation in Heterogeneous */ +/* Media on Parallel Computers," Computer Methods in Applied Mechanics */ +/* and Engineering 152(1-2):85-102, 22 January 1998. */ +/* */ +/* Triangle's Delaunay refinement algorithm for quality mesh generation is */ +/* a hybrid of one due to Jim Ruppert, "A Delaunay Refinement Algorithm */ +/* for Quality 2-Dimensional Mesh Generation," Journal of Algorithms */ +/* 18(3):548-585, May 1995 [*], and one due to L. Paul Chew, "Guaranteed- */ +/* Quality Mesh Generation for Curved Surfaces," Proceedings of the Ninth */ +/* Annual Symposium on Computational Geometry (San Diego, California), */ +/* pages 274-280, Association for Computing Machinery, May 1993. */ +/* */ +/* The Delaunay refinement algorithm has been modified so that it */ +/* consistently meshes domains with small input angles, as described in */ +/* my lengthy journal article listed above, or in abbreviated form in */ +/* Jonathan Richard Shewchuk, "Mesh Generation for Domains with Small */ +/* Angles," Proceedings of the Sixteenth Annual Symposium on */ +/* Computational Geometry (Hong Kong), pages 1-10, Association for */ +/* Computing Machinery, June 2000. [*] */ +/* */ +/* My implementation of the divide-and-conquer and incremental Delaunay */ +/* triangulation algorithms follows closely the presentation of Guibas */ +/* and Stolfi, even though I use a triangle-based data structure instead */ +/* of their quad-edge data structure. (In fact, I originally implemented */ +/* Triangle using the quad-edge data structure, but the switch to a */ +/* triangle-based data structure sped Triangle by a factor of two.) The */ +/* mesh manipulation primitives and the two aforementioned Delaunay */ +/* triangulation algorithms are described by Leonidas J. Guibas and Jorge */ +/* Stolfi, "Primitives for the Manipulation of General Subdivisions and */ +/* the Computation of Voronoi Diagrams," ACM Transactions on Graphics */ +/* 4(2):74-123, April 1985. */ +/* */ +/* Their O(n log n) divide-and-conquer algorithm is adapted from Der-Tsai */ +/* Lee and Bruce J. Schachter, "Two Algorithms for Constructing the */ +/* Delaunay Triangulation," International Journal of Computer and */ +/* Information Science 9(3):219-242, 1980. Triangle's improvement of the */ +/* divide-and-conquer algorithm by alternating between vertical and */ +/* horizontal cuts was introduced by Rex A. Dwyer, "A Faster Divide-and- */ +/* Conquer Algorithm for Constructing Delaunay Triangulations," */ +/* Algorithmica 2(2):137-151, 1987. */ +/* */ +/* The incremental insertion algorithm was first proposed by C. L. Lawson, */ +/* "Software for C1 Surface Interpolation," in Mathematical Software III, */ +/* John R. Rice, editor, Academic Press, New York, pp. 161-194, 1977. */ +/* For point location, I use the algorithm of Ernst P. Mucke, Isaac */ +/* Saias, and Binhai Zhu, "Fast Randomized Point Location Without */ +/* Preprocessing in Two- and Three-Dimensional Delaunay Triangulations," */ +/* Proceedings of the Twelfth Annual Symposium on Computational Geometry, */ +/* ACM, May 1996. [*] If I were to randomize the order of vertex */ +/* insertion (I currently don't bother), their result combined with the */ +/* result of Kenneth L. Clarkson and Peter W. Shor, "Applications of */ +/* Random Sampling in Computational Geometry II," Discrete & */ +/* Computational Geometry 4(1):387-421, 1989, would yield an expected */ +/* O(n^{4/3}) bound on running time. */ +/* */ +/* The O(n log n) sweepline Delaunay triangulation algorithm is taken from */ +/* Steven Fortune, "A Sweepline Algorithm for Voronoi Diagrams", */ +/* Algorithmica 2(2):153-174, 1987. A random sample of edges on the */ +/* boundary of the triangulation are maintained in a splay tree for the */ +/* purpose of point location. Splay trees are described by Daniel */ +/* Dominic Sleator and Robert Endre Tarjan, "Self-Adjusting Binary Search */ +/* Trees," Journal of the ACM 32(3):652-686, July 1985. */ +/* */ +/* The algorithms for exact computation of the signs of determinants are */ +/* described in Jonathan Richard Shewchuk, "Adaptive Precision Floating- */ +/* Point Arithmetic and Fast Robust Geometric Predicates," Discrete & */ +/* Computational Geometry 18(3):305-363, October 1997. (Also available */ +/* as Technical Report CMU-CS-96-140, School of Computer Science, */ +/* Carnegie Mellon University, Pittsburgh, Pennsylvania, May 1996.) [*] */ +/* An abbreviated version appears as Jonathan Richard Shewchuk, "Robust */ +/* Adaptive Floating-Point Geometric Predicates," Proceedings of the */ +/* Twelfth Annual Symposium on Computational Geometry, ACM, May 1996. [*] */ +/* Many of the ideas for my exact arithmetic routines originate with */ +/* Douglas M. Priest, "Algorithms for Arbitrary Precision Floating Point */ +/* Arithmetic," Tenth Symposium on Computer Arithmetic, pp. 132-143, IEEE */ +/* Computer Society Press, 1991. [*] Many of the ideas for the correct */ +/* evaluation of the signs of determinants are taken from Steven Fortune */ +/* and Christopher J. Van Wyk, "Efficient Exact Arithmetic for Computa- */ +/* tional Geometry," Proceedings of the Ninth Annual Symposium on */ +/* Computational Geometry, ACM, pp. 163-172, May 1993, and from Steven */ +/* Fortune, "Numerical Stability of Algorithms for 2D Delaunay Triangu- */ +/* lations," International Journal of Computational Geometry & Applica- */ +/* tions 5(1-2):193-213, March-June 1995. */ +/* */ +/* For definitions of and results involving Delaunay triangulations, */ +/* constrained and conforming versions thereof, and other aspects of */ +/* triangular mesh generation, see the excellent survey by Marshall Bern */ +/* and David Eppstein, "Mesh Generation and Optimal Triangulation," in */ +/* Computing and Euclidean Geometry, Ding-Zhu Du and Frank Hwang, */ +/* editors, World Scientific, Singapore, pp. 23-90, 1992. [*] */ +/* */ +/* The time for incrementally adding PSLG (planar straight line graph) */ +/* segments to create a constrained Delaunay triangulation is probably */ +/* O(t^2) per segment in the worst case and O(t) per segment in the */ +/* common case, where t is the number of triangles that intersect the */ +/* segment before it is inserted. This doesn't count point location, */ +/* which can be much more expensive. I could improve this to O(d log d) */ +/* time, but d is usually quite small, so it's not worth the bother. */ +/* (This note does not apply to conforming Delaunay triangulations, for */ +/* which a different method is used to insert segments.) */ +/* */ +/* The time for adding segments to a conforming Delaunay triangulation is */ +/* not clear, but does not depend upon t alone. In some cases, very */ +/* small features (like a vertex lying next to a segment) can cause a */ +/* single segment to be split an arbitrary number of times. Of course, */ +/* floating-point precision is a practical barrier to how much this can */ +/* happen. */ +/* */ +/* The time for deleting a vertex from a Delaunay triangulation is O(d^2) */ +/* in the worst case and O(d) in the common case, where d is the degree */ +/* of the vertex being deleted. I could improve this to O(d log d) time, */ +/* but d is usually quite small, so it's not worth the bother. */ +/* */ +/* Ruppert's Delaunay refinement algorithm typically generates triangles */ +/* at a linear rate (constant time per triangle) after the initial */ +/* triangulation is formed. There may be pathological cases where */ +/* quadratic time is required, but these never arise in practice. */ +/* */ +/* The geometric predicates (circumcenter calculations, segment */ +/* intersection formulae, etc.) appear in my "Lecture Notes on Geometric */ +/* Robustness" at http://www.cs.berkeley.edu/~jrs/mesh.html . */ +/* */ +/* If you make any improvements to this code, please please please let me */ +/* know, so that I may obtain the improvements. Even if you don't change */ +/* the code, I'd still love to hear what it's being used for. */ +/* */ +/* Disclaimer: Neither I nor Carnegie Mellon warrant this code in any way */ +/* whatsoever. This code is provided "as-is". Use at your own risk. */ +/* */ +/*****************************************************************************/ + +/* For single precision (which will save some memory and reduce paging), */ +/* define the symbol SINGLE by using the -DSINGLE compiler switch or by */ +/* writing "#define SINGLE" below. */ +/* */ +/* For double precision (which will allow you to refine meshes to a smaller */ +/* edge length), leave SINGLE undefined. */ +/* */ +/* Double precision uses more memory, but improves the resolution of the */ +/* meshes you can generate with Triangle. It also reduces the likelihood */ +/* of a floating exception due to overflow. Finally, it is much faster */ +/* than single precision on 64-bit architectures like the DEC Alpha. I */ +/* recommend double precision unless you want to generate a mesh for which */ +/* you do not have enough memory. */ + +/* #define SINGLE */ + +#ifdef SINGLE +#define REAL float +#else /* not SINGLE */ +#define REAL double +#endif /* not SINGLE */ + +/* If yours is not a Unix system, define the NO_TIMER compiler switch to */ +/* remove the Unix-specific timing code. */ + +/* #define NO_TIMER */ + +/* To insert lots of self-checks for internal errors, define the SELF_CHECK */ +/* symbol. This will slow down the program significantly. It is best to */ +/* define the symbol using the -DSELF_CHECK compiler switch, but you could */ +/* write "#define SELF_CHECK" below. If you are modifying this code, I */ +/* recommend you turn self-checks on until your work is debugged. */ + +/* #define SELF_CHECK */ + +/* To compile Triangle as a callable object library (triangle.o), define the */ +/* TRILIBRARY symbol. Read the file triangle.h for details on how to call */ +/* the procedure triangulate() that results. */ + +/* #define TRILIBRARY */ + +/* It is possible to generate a smaller version of Triangle using one or */ +/* both of the following symbols. Define the REDUCED symbol to eliminate */ +/* all features that are primarily of research interest; specifically, the */ +/* -i, -F, -s, and -C switches. Define the CDT_ONLY symbol to eliminate */ +/* all meshing algorithms above and beyond constrained Delaunay */ +/* triangulation; specifically, the -r, -q, -a, -S, and -s switches. */ +/* These reductions are most likely to be useful when generating an object */ +/* library (triangle.o) by defining the TRILIBRARY symbol. */ + +/* #define REDUCED */ +/* #define CDT_ONLY */ + +/* On some machines, my exact arithmetic routines might be defeated by the */ +/* use of internal extended precision floating-point registers. The best */ +/* way to solve this problem is to set the floating-point registers to use */ +/* single or double precision internally. On 80x86 processors, this may */ +/* be accomplished by setting the CPU86 symbol for the Microsoft C */ +/* compiler, or the LINUX symbol for the gcc compiler running on Linux. */ +/* */ +/* An inferior solution is to declare certain values as `volatile', thus */ +/* forcing them to be stored to memory and rounded off. Unfortunately, */ +/* this solution might slow Triangle down quite a bit. To use volatile */ +/* values, write "#define INEXACT volatile" below. Normally, however, */ +/* INEXACT should be defined to be nothing. ("#define INEXACT".) */ +/* */ +/* For more discussion, see http://www.cs.cmu.edu/~quake/robust.pc.html . */ +/* For yet more discussion, see Section 5 of my paper, "Adaptive Precision */ +/* Floating-Point Arithmetic and Fast Robust Geometric Predicates" (also */ +/* available as Section 6.6 of my dissertation). */ + +/* #define CPU86 */ +/* #define LINUX */ + +#define INEXACT /* Nothing */ +/* #define INEXACT volatile */ + +/* Maximum number of characters in a file name (including the null). */ + +#define FILENAMESIZE 512 + +/* Maximum number of characters in a line read from a file (including the */ +/* null). */ + +#define INPUTLINESIZE 512 + +/* For efficiency, a variety of data structures are allocated in bulk. The */ +/* following constants determine how many of each structure is allocated */ +/* at once. */ + +#define TRIPERBLOCK 4092 /* Number of triangles allocated at once. */ +#define SUBSEGPERBLOCK 508 /* Number of subsegments allocated at once. */ +#define VERTEXPERBLOCK 4092 /* Number of vertices allocated at once. */ +#define VIRUSPERBLOCK 1020 /* Number of virus triangles allocated at once. */ +/* Number of encroached subsegments allocated at once. */ +#define BADSUBSEGPERBLOCK 252 +/* Number of skinny triangles allocated at once. */ +#define BADTRIPERBLOCK 4092 +/* Number of flipped triangles allocated at once. */ +#define FLIPSTACKERPERBLOCK 252 +/* Number of splay tree nodes allocated at once. */ +#define SPLAYNODEPERBLOCK 508 + +/* The vertex types. A DEADVERTEX has been deleted entirely. An */ +/* UNDEADVERTEX is not part of the mesh, but is written to the output */ +/* .node file and affects the node indexing in the other output files. */ + +#define INPUTVERTEX 0 +#define SEGMENTVERTEX 1 +#define FREEVERTEX 2 +#define DEADVERTEX -32768 +#define UNDEADVERTEX -32767 + +/* The next line is used to outsmart some very stupid compilers. If your */ +/* compiler is smarter, feel free to replace the "int" with "void". */ +/* Not that it matters. */ + +#define VOID int + +/* Two constants for algorithms based on random sampling. Both constants */ +/* have been chosen empirically to optimize their respective algorithms. */ + +/* Used for the point location scheme of Mucke, Saias, and Zhu, to decide */ +/* how large a random sample of triangles to inspect. */ + +#define SAMPLEFACTOR 11 + +/* Used in Fortune's sweepline Delaunay algorithm to determine what fraction */ +/* of boundary edges should be maintained in the splay tree for point */ +/* location on the front. */ + +#define SAMPLERATE 10 + +/* A number that speaks for itself, every kissable digit. */ + +#define PI 3.141592653589793238462643383279502884197169399375105820974944592308 + +/* Another fave. */ + +#define SQUAREROOTTWO 1.4142135623730950488016887242096980785696718753769480732 + +/* And here's one for those of you who are intimidated by math. */ + +#define ONETHIRD 0.333333333333333333333333333333333333333333333333333333333333 + +#include +#include +#include +#include +#include "config.h" +#ifndef NO_TIMER +#include +#endif /* not NO_TIMER */ +#ifdef CPU86 +#include +#endif /* CPU86 */ +#ifdef LINUX +#include +#endif /* LINUX */ +#ifdef TRILIBRARY +#include "triangle.h" +#endif /* TRILIBRARY */ + +/* A few forward declarations. */ + +#ifndef TRILIBRARY +char *readline(); +char *findfield(); +#endif /* not TRILIBRARY */ + +/* Labels that signify whether a record consists primarily of pointers or of */ +/* floating-point words. Used to make decisions about data alignment. */ + +enum wordtype {POINTER, FLOATINGPOINT}; + +/* Labels that signify the result of point location. The result of a */ +/* search indicates that the point falls in the interior of a triangle, on */ +/* an edge, on a vertex, or outside the mesh. */ + +enum locateresult {INTRIANGLE, ONEDGE, ONVERTEX, OUTSIDE}; + +/* Labels that signify the result of vertex insertion. The result indicates */ +/* that the vertex was inserted with complete success, was inserted but */ +/* encroaches upon a subsegment, was not inserted because it lies on a */ +/* segment, or was not inserted because another vertex occupies the same */ +/* location. */ + +enum insertvertexresult {SUCCESSFULVERTEX, ENCROACHINGVERTEX, VIOLATINGVERTEX, + DUPLICATEVERTEX}; + +/* Labels that signify the result of direction finding. The result */ +/* indicates that a segment connecting the two query points falls within */ +/* the direction triangle, along the left edge of the direction triangle, */ +/* or along the right edge of the direction triangle. */ + +enum finddirectionresult {WITHIN, LEFTCOLLINEAR, RIGHTCOLLINEAR}; + +/*****************************************************************************/ +/* */ +/* The basic mesh data structures */ +/* */ +/* There are three: vertices, triangles, and subsegments (abbreviated */ +/* `subseg'). These three data structures, linked by pointers, comprise */ +/* the mesh. A vertex simply represents a mesh vertex and its properties. */ +/* A triangle is a triangle. A subsegment is a special data structure used */ +/* to represent an impenetrable edge of the mesh (perhaps on the outer */ +/* boundary, on the boundary of a hole, or part of an internal boundary */ +/* separating two triangulated regions). Subsegments represent boundaries, */ +/* defined by the user, that triangles may not lie across. */ +/* */ +/* A triangle consists of a list of three vertices, a list of three */ +/* adjoining triangles, a list of three adjoining subsegments (when */ +/* segments exist), an arbitrary number of optional user-defined */ +/* floating-point attributes, and an optional area constraint. The latter */ +/* is an upper bound on the permissible area of each triangle in a region, */ +/* used for mesh refinement. */ +/* */ +/* For a triangle on a boundary of the mesh, some or all of the neighboring */ +/* triangles may not be present. For a triangle in the interior of the */ +/* mesh, often no neighboring subsegments are present. Such absent */ +/* triangles and subsegments are never represented by NULL pointers; they */ +/* are represented by two special records: `dummytri', the triangle that */ +/* fills "outer space", and `dummysub', the omnipresent subsegment. */ +/* `dummytri' and `dummysub' are used for several reasons; for instance, */ +/* they can be dereferenced and their contents examined without violating */ +/* protected memory. */ +/* */ +/* However, it is important to understand that a triangle includes other */ +/* information as well. The pointers to adjoining vertices, triangles, and */ +/* subsegments are ordered in a way that indicates their geometric relation */ +/* to each other. Furthermore, each of these pointers contains orientation */ +/* information. Each pointer to an adjoining triangle indicates which face */ +/* of that triangle is contacted. Similarly, each pointer to an adjoining */ +/* subsegment indicates which side of that subsegment is contacted, and how */ +/* the subsegment is oriented relative to the triangle. */ +/* */ +/* The data structure representing a subsegment may be thought to be */ +/* abutting the edge of one or two triangle data structures: either */ +/* sandwiched between two triangles, or resting against one triangle on an */ +/* exterior boundary or hole boundary. */ +/* */ +/* A subsegment consists of a list of two vertices, a list of two */ +/* adjoining subsegments, and a list of two adjoining triangles. One of */ +/* the two adjoining triangles may not be present (though there should */ +/* always be one), and neighboring subsegments might not be present. */ +/* Subsegments also store a user-defined integer "boundary marker". */ +/* Typically, this integer is used to indicate what boundary conditions are */ +/* to be applied at that location in a finite element simulation. */ +/* */ +/* Like triangles, subsegments maintain information about the relative */ +/* orientation of neighboring objects. */ +/* */ +/* Vertices are relatively simple. A vertex is a list of floating-point */ +/* numbers, starting with the x, and y coordinates, followed by an */ +/* arbitrary number of optional user-defined floating-point attributes, */ +/* followed by an integer boundary marker. During the segment insertion */ +/* phase, there is also a pointer from each vertex to a triangle that may */ +/* contain it. Each pointer is not always correct, but when one is, it */ +/* speeds up segment insertion. These pointers are assigned values once */ +/* at the beginning of the segment insertion phase, and are not used or */ +/* updated except during this phase. Edge flipping during segment */ +/* insertion will render some of them incorrect. Hence, don't rely upon */ +/* them for anything. */ +/* */ +/* Other than the exception mentioned above, vertices have no information */ +/* about what triangles, subfacets, or subsegments they are linked to. */ +/* */ +/*****************************************************************************/ + +/*****************************************************************************/ +/* */ +/* Handles */ +/* */ +/* The oriented triangle (`otri') and oriented subsegment (`osub') data */ +/* structures defined below do not themselves store any part of the mesh. */ +/* The mesh itself is made of `triangle's, `subseg's, and `vertex's. */ +/* */ +/* Oriented triangles and oriented subsegments will usually be referred to */ +/* as "handles." A handle is essentially a pointer into the mesh; it */ +/* allows you to "hold" one particular part of the mesh. Handles are used */ +/* to specify the regions in which one is traversing and modifying the mesh.*/ +/* A single `triangle' may be held by many handles, or none at all. (The */ +/* latter case is not a memory leak, because the triangle is still */ +/* connected to other triangles in the mesh.) */ +/* */ +/* An `otri' is a handle that holds a triangle. It holds a specific edge */ +/* of the triangle. An `osub' is a handle that holds a subsegment. It */ +/* holds either the left or right side of the subsegment. */ +/* */ +/* Navigation about the mesh is accomplished through a set of mesh */ +/* manipulation primitives, further below. Many of these primitives take */ +/* a handle and produce a new handle that holds the mesh near the first */ +/* handle. Other primitives take two handles and glue the corresponding */ +/* parts of the mesh together. The orientation of the handles is */ +/* important. For instance, when two triangles are glued together by the */ +/* bond() primitive, they are glued at the edges on which the handles lie. */ +/* */ +/* Because vertices have no information about which triangles they are */ +/* attached to, I commonly represent a vertex by use of a handle whose */ +/* origin is the vertex. A single handle can simultaneously represent a */ +/* triangle, an edge, and a vertex. */ +/* */ +/*****************************************************************************/ + +/* The triangle data structure. Each triangle contains three pointers to */ +/* adjoining triangles, plus three pointers to vertices, plus three */ +/* pointers to subsegments (declared below; these pointers are usually */ +/* `dummysub'). It may or may not also contain user-defined attributes */ +/* and/or a floating-point "area constraint." It may also contain extra */ +/* pointers for nodes, when the user asks for high-order elements. */ +/* Because the size and structure of a `triangle' is not decided until */ +/* runtime, I haven't simply declared the type `triangle' as a struct. */ + +typedef REAL **triangle; /* Really: typedef triangle *triangle */ + +/* An oriented triangle: includes a pointer to a triangle and orientation. */ +/* The orientation denotes an edge of the triangle. Hence, there are */ +/* three possible orientations. By convention, each edge always points */ +/* counterclockwise about the corresponding triangle. */ + +struct otri { + triangle *tri; + int orient; /* Ranges from 0 to 2. */ +}; + +/* The subsegment data structure. Each subsegment contains two pointers to */ +/* adjoining subsegments, plus two pointers to vertices, plus two pointers */ +/* to adjoining triangles, plus one boundary marker. */ + +typedef REAL **subseg; /* Really: typedef subseg *subseg */ + +/* An oriented subsegment: includes a pointer to a subsegment and an */ +/* orientation. The orientation denotes a side of the edge. Hence, there */ +/* are two possible orientations. By convention, the edge is always */ +/* directed so that the "side" denoted is the right side of the edge. */ + +struct osub { + subseg *ss; + int ssorient; /* Ranges from 0 to 1. */ +}; + +/* The vertex data structure. Each vertex is actually an array of REALs. */ +/* The number of REALs is unknown until runtime. An integer boundary */ +/* marker, and sometimes a pointer to a triangle, is appended after the */ +/* REALs. */ + +typedef REAL *vertex; + +/* A queue used to store encroached subsegments. Each subsegment's vertices */ +/* are stored so that we can check whether a subsegment is still the same. */ + +struct badsubseg { + subseg encsubseg; /* An encroached subsegment. */ + vertex subsegorg, subsegdest; /* Its two vertices. */ +}; + +/* A queue used to store bad triangles. The key is the square of the cosine */ +/* of the smallest angle of the triangle. Each triangle's vertices are */ +/* stored so that one can check whether a triangle is still the same. */ + +struct badtriang { + triangle poortri; /* A skinny or too-large triangle. */ + REAL key; /* cos^2 of smallest (apical) angle. */ + vertex triangorg, triangdest, triangapex; /* Its three vertices. */ + struct badtriang *nexttriang; /* Pointer to next bad triangle. */ +}; + +/* A stack of triangles flipped during the most recent vertex insertion. */ +/* The stack is used to undo the vertex insertion if the vertex encroaches */ +/* upon a subsegment. */ + +struct flipstacker { + triangle flippedtri; /* A recently flipped triangle. */ + struct flipstacker *prevflip; /* Previous flip in the stack. */ +}; + +/* A node in a heap used to store events for the sweepline Delaunay */ +/* algorithm. Nodes do not point directly to their parents or children in */ +/* the heap. Instead, each node knows its position in the heap, and can */ +/* look up its parent and children in a separate array. The `eventptr' */ +/* points either to a `vertex' or to a triangle (in encoded format, so */ +/* that an orientation is included). In the latter case, the origin of */ +/* the oriented triangle is the apex of a "circle event" of the sweepline */ +/* algorithm. To distinguish site events from circle events, all circle */ +/* events are given an invalid (smaller than `xmin') x-coordinate `xkey'. */ + +struct event { + REAL xkey, ykey; /* Coordinates of the event. */ + VOID *eventptr; /* Can be a vertex or the location of a circle event. */ + int heapposition; /* Marks this event's position in the heap. */ +}; + +/* A node in the splay tree. Each node holds an oriented ghost triangle */ +/* that represents a boundary edge of the growing triangulation. When a */ +/* circle event covers two boundary edges with a triangle, so that they */ +/* are no longer boundary edges, those edges are not immediately deleted */ +/* from the tree; rather, they are lazily deleted when they are next */ +/* encountered. (Since only a random sample of boundary edges are kept */ +/* in the tree, lazy deletion is faster.) `keydest' is used to verify */ +/* that a triangle is still the same as when it entered the splay tree; if */ +/* it has been rotated (due to a circle event), it no longer represents a */ +/* boundary edge and should be deleted. */ + +struct splaynode { + struct otri keyedge; /* Lprev of an edge on the front. */ + vertex keydest; /* Used to verify that splay node is still live. */ + struct splaynode *lchild, *rchild; /* Children in splay tree. */ +}; + +/* A type used to allocate memory. firstblock is the first block of items. */ +/* nowblock is the block from which items are currently being allocated. */ +/* nextitem points to the next slab of free memory for an item. */ +/* deaditemstack is the head of a linked list (stack) of deallocated items */ +/* that can be recycled. unallocateditems is the number of items that */ +/* remain to be allocated from nowblock. */ +/* */ +/* Traversal is the process of walking through the entire list of items, and */ +/* is separate from allocation. Note that a traversal will visit items on */ +/* the "deaditemstack" stack as well as live items. pathblock points to */ +/* the block currently being traversed. pathitem points to the next item */ +/* to be traversed. pathitemsleft is the number of items that remain to */ +/* be traversed in pathblock. */ +/* */ +/* itemwordtype is set to POINTER or FLOATINGPOINT, and is used to suggest */ +/* what sort of word the record is primarily made up of. alignbytes */ +/* determines how new records should be aligned in memory. itembytes and */ +/* itemwords are the length of a record in bytes (after rounding up) and */ +/* words. itemsperblock is the number of items allocated at once in a */ +/* single block. items is the number of currently allocated items. */ +/* maxitems is the maximum number of items that have been allocated at */ +/* once; it is the current number of items plus the number of records kept */ +/* on deaditemstack. */ + +struct memorypool { + VOID **firstblock, **nowblock; + VOID *nextitem; + VOID *deaditemstack; + VOID **pathblock; + VOID *pathitem; + enum wordtype itemwordtype; + int alignbytes; + int itembytes, itemwords; + int itemsperblock; + long items, maxitems; + int unallocateditems; + int pathitemsleft; +}; + + +/* Global constants. */ + +REAL splitter; /* Used to split REAL factors for exact multiplication. */ +REAL epsilon; /* Floating-point machine epsilon. */ +REAL resulterrbound; +REAL ccwerrboundA, ccwerrboundB, ccwerrboundC; +REAL iccerrboundA, iccerrboundB, iccerrboundC; +REAL o3derrboundA, o3derrboundB, o3derrboundC; + +/* Random number seed is not constant, but I've made it global anyway. */ + +unsigned long randomseed; /* Current random number seed. */ + + +/* Mesh data structure. Triangle operates on only one mesh, but the mesh */ +/* structure is used (instead of global variables) to allow reentrancy. */ + +struct mesh { + +/* Variables used to allocate memory for triangles, subsegments, vertices, */ +/* viri (triangles being eaten), encroached segments, bad (skinny or too */ +/* large) triangles, and splay tree nodes. */ + + struct memorypool triangles; + struct memorypool subsegs; + struct memorypool vertices; + struct memorypool viri; + struct memorypool badsubsegs; + struct memorypool badtriangles; + struct memorypool flipstackers; + struct memorypool splaynodes; + +/* Variables that maintain the bad triangle queues. The queues are */ +/* ordered from 63 (highest priority) to 0 (lowest priority). */ + + struct badtriang *queuefront[64]; + struct badtriang *queuetail[64]; + int nextnonemptyq[64]; + int firstnonemptyq; + +/* Variable that maintains the stack of recently flipped triangles. */ + + struct flipstacker *lastflip; + +/* Other variables. */ + + REAL xmin, xmax, ymin, ymax; /* x and y bounds. */ + REAL xminextreme; /* Nonexistent x value used as a flag in sweepline. */ + int invertices; /* Number of input vertices. */ + int inelements; /* Number of input triangles. */ + int insegments; /* Number of input segments. */ + int holes; /* Number of input holes. */ + int regions; /* Number of input regions. */ + int undeads; /* Number of input vertices that don't appear in the mesh. */ + long edges; /* Number of output edges. */ + int mesh_dim; /* Dimension (ought to be 2). */ + int nextras; /* Number of attributes per vertex. */ + int eextras; /* Number of attributes per triangle. */ + long hullsize; /* Number of edges in convex hull. */ + int steinerleft; /* Number of Steiner points not yet used. */ + int vertexmarkindex; /* Index to find boundary marker of a vertex. */ + int vertex2triindex; /* Index to find a triangle adjacent to a vertex. */ + int highorderindex; /* Index to find extra nodes for high-order elements. */ + int elemattribindex; /* Index to find attributes of a triangle. */ + int areaboundindex; /* Index to find area bound of a triangle. */ + int checksegments; /* Are there segments in the triangulation yet? */ + int checkquality; /* Has quality triangulation begun yet? */ + int readnodefile; /* Has a .node file been read? */ + long samples; /* Number of random samples for point location. */ + + long incirclecount; /* Number of incircle tests performed. */ + long counterclockcount; /* Number of counterclockwise tests performed. */ + long orient3dcount; /* Number of 3D orientation tests performed. */ + long hyperbolacount; /* Number of right-of-hyperbola tests performed. */ + long circumcentercount; /* Number of circumcenter calculations performed. */ + long circletopcount; /* Number of circle top calculations performed. */ + +/* Triangular bounding box vertices. */ + + vertex infvertex1, infvertex2, infvertex3; + +/* Pointer to the `triangle' that occupies all of "outer space." */ + + triangle *dummytri; + triangle *dummytribase; /* Keep base address so we can free() it later. */ + +/* Pointer to the omnipresent subsegment. Referenced by any triangle or */ +/* subsegment that isn't really connected to a subsegment at that */ +/* location. */ + + subseg *dummysub; + subseg *dummysubbase; /* Keep base address so we can free() it later. */ + +/* Pointer to a recently visited triangle. Improves point location if */ +/* proximate vertices are inserted sequentially. */ + + struct otri recenttri; + +}; /* End of `struct mesh'. */ + + +/* Data structure for command line switches and file names. This structure */ +/* is used (instead of global variables) to allow reentrancy. */ + +struct behavior { + +/* Switches for the triangulator. */ +/* poly: -p switch. refine: -r switch. */ +/* quality: -q switch. */ +/* minangle: minimum angle bound, specified after -q switch. */ +/* goodangle: cosine squared of minangle. */ +/* vararea: -a switch without number. */ +/* fixedarea: -a switch with number. */ +/* maxarea: maximum area bound, specified after -a switch. */ +/* usertest: -u switch. */ +/* regionattrib: -A switch. convex: -c switch. */ +/* weighted: 1 for -w switch, 2 for -W switch. jettison: -j switch */ +/* firstnumber: inverse of -z switch. All items are numbered starting */ +/* from `firstnumber'. */ +/* edgesout: -e switch. voronoi: -v switch. */ +/* neighbors: -n switch. geomview: -g switch. */ +/* nobound: -B switch. nopolywritten: -P switch. */ +/* nonodewritten: -N switch. noelewritten: -E switch. */ +/* noiterationnum: -I switch. noholes: -O switch. */ +/* noexact: -X switch. */ +/* order: element order, specified after -o switch. */ +/* nobisect: count of how often -Y switch is selected. */ +/* steiner: maximum number of Steiner points, specified after -S switch. */ +/* incremental: -i switch. sweepline: -F switch. */ +/* dwyer: inverse of -l switch. */ +/* splitseg: -s switch. */ +/* nolenses: -L switch. docheck: -C switch. */ +/* quiet: -Q switch. verbose: count of how often -V switch is selected. */ +/* usesegments: -p, -r, -q, or -c switch; determines whether segments are */ +/* used at all. */ +/* */ +/* Read the instructions to find out the meaning of these switches. */ + + int poly, refine, quality, vararea, fixedarea, usertest; + int regionattrib, convex, weighted, jettison; + int firstnumber; + int edgesout, voronoi, neighbors, geomview; + int nobound, nopolywritten, nonodewritten, noelewritten, noiterationnum; + int noholes, noexact, nolenses; + int incremental, sweepline, dwyer; + int splitseg; + int docheck; + int quiet, verbose; + int usesegments; + int order; + int nobisect; + int steiner; + REAL minangle, goodangle; + REAL maxarea; + +/* Variables for file names. */ + +#ifndef TRILIBRARY + char innodefilename[FILENAMESIZE]; + char inelefilename[FILENAMESIZE]; + char inpolyfilename[FILENAMESIZE]; + char areafilename[FILENAMESIZE]; + char outnodefilename[FILENAMESIZE]; + char outelefilename[FILENAMESIZE]; + char outpolyfilename[FILENAMESIZE]; + char edgefilename[FILENAMESIZE]; + char vnodefilename[FILENAMESIZE]; + char vedgefilename[FILENAMESIZE]; + char neighborfilename[FILENAMESIZE]; + char offfilename[FILENAMESIZE]; +#endif /* not TRILIBRARY */ + +}; /* End of `struct behavior'. */ + + +/*****************************************************************************/ +/* */ +/* Mesh manipulation primitives. Each triangle contains three pointers to */ +/* other triangles, with orientations. Each pointer points not to the */ +/* first byte of a triangle, but to one of the first three bytes of a */ +/* triangle. It is necessary to extract both the triangle itself and the */ +/* orientation. To save memory, I keep both pieces of information in one */ +/* pointer. To make this possible, I assume that all triangles are aligned */ +/* to four-byte boundaries. The decode() routine below decodes a pointer, */ +/* extracting an orientation (in the range 0 to 2) and a pointer to the */ +/* beginning of a triangle. The encode() routine compresses a pointer to a */ +/* triangle and an orientation into a single pointer. My assumptions that */ +/* triangles are four-byte-aligned and that the `unsigned long' type is */ +/* long enough to hold a pointer are two of the few kludges in this program.*/ +/* */ +/* Subsegments are manipulated similarly. A pointer to a subsegment */ +/* carries both an address and an orientation in the range 0 to 1. */ +/* */ +/* The other primitives take an oriented triangle or oriented subsegment, */ +/* and return an oriented triangle or oriented subsegment or vertex; or */ +/* they change the connections in the data structure. */ +/* */ +/* Below, triangles and subsegments are denoted by their vertices. The */ +/* triangle abc has origin (org) a, destination (dest) b, and apex (apex) */ +/* c. These vertices occur in counterclockwise order about the triangle. */ +/* The handle abc may simultaneously denote vertex a, edge ab, and triangle */ +/* abc. */ +/* */ +/* Similarly, the subsegment ab has origin (sorg) a and destination (sdest) */ +/* b. If ab is thought to be directed upward (with b directly above a), */ +/* then the handle ab is thought to grasp the right side of ab, and may */ +/* simultaneously denote vertex a and edge ab. */ +/* */ +/* An asterisk (*) denotes a vertex whose identity is unknown. */ +/* */ +/* Given this notation, a partial list of mesh manipulation primitives */ +/* follows. */ +/* */ +/* */ +/* For triangles: */ +/* */ +/* sym: Find the abutting triangle; same edge. */ +/* sym(abc) -> ba* */ +/* */ +/* lnext: Find the next edge (counterclockwise) of a triangle. */ +/* lnext(abc) -> bca */ +/* */ +/* lprev: Find the previous edge (clockwise) of a triangle. */ +/* lprev(abc) -> cab */ +/* */ +/* onext: Find the next edge counterclockwise with the same origin. */ +/* onext(abc) -> ac* */ +/* */ +/* oprev: Find the next edge clockwise with the same origin. */ +/* oprev(abc) -> a*b */ +/* */ +/* dnext: Find the next edge counterclockwise with the same destination. */ +/* dnext(abc) -> *ba */ +/* */ +/* dprev: Find the next edge clockwise with the same destination. */ +/* dprev(abc) -> cb* */ +/* */ +/* rnext: Find the next edge (counterclockwise) of the adjacent triangle. */ +/* rnext(abc) -> *a* */ +/* */ +/* rprev: Find the previous edge (clockwise) of the adjacent triangle. */ +/* rprev(abc) -> b** */ +/* */ +/* org: Origin dest: Destination apex: Apex */ +/* org(abc) -> a dest(abc) -> b apex(abc) -> c */ +/* */ +/* bond: Bond two triangles together at the resepective handles. */ +/* bond(abc, bad) */ +/* */ +/* */ +/* For subsegments: */ +/* */ +/* ssym: Reverse the orientation of a subsegment. */ +/* ssym(ab) -> ba */ +/* */ +/* spivot: Find adjoining subsegment with the same origin. */ +/* spivot(ab) -> a* */ +/* */ +/* snext: Find next subsegment in sequence. */ +/* snext(ab) -> b* */ +/* */ +/* sorg: Origin sdest: Destination */ +/* sorg(ab) -> a sdest(ab) -> b */ +/* */ +/* sbond: Bond two subsegments together at the respective origins. */ +/* sbond(ab, ac) */ +/* */ +/* */ +/* For interacting tetrahedra and subfacets: */ +/* */ +/* tspivot: Find a subsegment abutting a triangle. */ +/* tspivot(abc) -> ba */ +/* */ +/* stpivot: Find a triangle abutting a subsegment. */ +/* stpivot(ab) -> ba* */ +/* */ +/* tsbond: Bond a triangle to a subsegment. */ +/* tsbond(abc, ba) */ +/* */ +/*****************************************************************************/ + +/********* Mesh manipulation primitives begin here *********/ +/** **/ +/** **/ + +/* Fast lookup arrays to speed some of the mesh manipulation primitives. */ + +int plus1mod3[3] = {1, 2, 0}; +int minus1mod3[3] = {2, 0, 1}; + +/********* Primitives for triangles *********/ +/* */ +/* */ + +/* decode() converts a pointer to an oriented triangle. The orientation is */ +/* extracted from the two least significant bits of the pointer. */ + +#define decode(ptr, otri) \ + (otri).orient = (int) ((unsigned long) (ptr) & (unsigned long) 3l); \ + (otri).tri = (triangle *) \ + ((unsigned long) (ptr) ^ (unsigned long) (otri).orient) + +/* encode() compresses an oriented triangle into a single pointer. It */ +/* relies on the assumption that all triangles are aligned to four-byte */ +/* boundaries, so the two least significant bits of (otri).tri are zero. */ + +#define encode(otri) \ + (triangle) ((unsigned long) (otri).tri | (unsigned long) (otri).orient) + +/* The following handle manipulation primitives are all described by Guibas */ +/* and Stolfi. However, Guibas and Stolfi use an edge-based data */ +/* structure, whereas I use a triangle-based data structure. */ + +/* sym() finds the abutting triangle, on the same edge. Note that the edge */ +/* direction is necessarily reversed, because the handle specified by an */ +/* oriented triangle is directed counterclockwise around the triangle. */ + +#define sym(otri1, otri2) \ + ptr = (otri1).tri[(otri1).orient]; \ + decode(ptr, otri2); + +#define symself(otri) \ + ptr = (otri).tri[(otri).orient]; \ + decode(ptr, otri); + +/* lnext() finds the next edge (counterclockwise) of a triangle. */ + +#define lnext(otri1, otri2) \ + (otri2).tri = (otri1).tri; \ + (otri2).orient = plus1mod3[(otri1).orient] + +#define lnextself(otri) \ + (otri).orient = plus1mod3[(otri).orient] + +/* lprev() finds the previous edge (clockwise) of a triangle. */ + +#define lprev(otri1, otri2) \ + (otri2).tri = (otri1).tri; \ + (otri2).orient = minus1mod3[(otri1).orient] + +#define lprevself(otri) \ + (otri).orient = minus1mod3[(otri).orient] + +/* onext() spins counterclockwise around a vertex; that is, it finds the */ +/* next edge with the same origin in the counterclockwise direction. This */ +/* edge is part of a different triangle. */ + +#define onext(otri1, otri2) \ + lprev(otri1, otri2); \ + symself(otri2); + +#define onextself(otri) \ + lprevself(otri); \ + symself(otri); + +/* oprev() spins clockwise around a vertex; that is, it finds the next edge */ +/* with the same origin in the clockwise direction. This edge is part of */ +/* a different triangle. */ + +#define oprev(otri1, otri2) \ + sym(otri1, otri2); \ + lnextself(otri2); + +#define oprevself(otri) \ + symself(otri); \ + lnextself(otri); + +/* dnext() spins counterclockwise around a vertex; that is, it finds the */ +/* next edge with the same destination in the counterclockwise direction. */ +/* This edge is part of a different triangle. */ + +#define dnext(otri1, otri2) \ + sym(otri1, otri2); \ + lprevself(otri2); + +#define dnextself(otri) \ + symself(otri); \ + lprevself(otri); + +/* dprev() spins clockwise around a vertex; that is, it finds the next edge */ +/* with the same destination in the clockwise direction. This edge is */ +/* part of a different triangle. */ + +#define dprev(otri1, otri2) \ + lnext(otri1, otri2); \ + symself(otri2); + +#define dprevself(otri) \ + lnextself(otri); \ + symself(otri); + +/* rnext() moves one edge counterclockwise about the adjacent triangle. */ +/* (It's best understood by reading Guibas and Stolfi. It involves */ +/* changing triangles twice.) */ + +#define rnext(otri1, otri2) \ + sym(otri1, otri2); \ + lnextself(otri2); \ + symself(otri2); + +#define rnextself(otri) \ + symself(otri); \ + lnextself(otri); \ + symself(otri); + +/* rprev() moves one edge clockwise about the adjacent triangle. */ +/* (It's best understood by reading Guibas and Stolfi. It involves */ +/* changing triangles twice.) */ + +#define rprev(otri1, otri2) \ + sym(otri1, otri2); \ + lprevself(otri2); \ + symself(otri2); + +#define rprevself(otri) \ + symself(otri); \ + lprevself(otri); \ + symself(otri); + +/* These primitives determine or set the origin, destination, or apex of a */ +/* triangle. */ + +#define org(otri, vertexptr) \ + vertexptr = (vertex) (otri).tri[plus1mod3[(otri).orient] + 3] + +#define dest(otri, vertexptr) \ + vertexptr = (vertex) (otri).tri[minus1mod3[(otri).orient] + 3] + +#define apex(otri, vertexptr) \ + vertexptr = (vertex) (otri).tri[(otri).orient + 3] + +#define setorg(otri, vertexptr) \ + (otri).tri[plus1mod3[(otri).orient] + 3] = (triangle) vertexptr + +#define setdest(otri, vertexptr) \ + (otri).tri[minus1mod3[(otri).orient] + 3] = (triangle) vertexptr + +#define setapex(otri, vertexptr) \ + (otri).tri[(otri).orient + 3] = (triangle) vertexptr + +/* Bond two triangles together. */ + +#define bond(otri1, otri2) \ + (otri1).tri[(otri1).orient] = encode(otri2); \ + (otri2).tri[(otri2).orient] = encode(otri1) + +/* Dissolve a bond (from one side). Note that the other triangle will still */ +/* think it's connected to this triangle. Usually, however, the other */ +/* triangle is being deleted entirely, or bonded to another triangle, so */ +/* it doesn't matter. */ + +#define dissolve(otri) \ + (otri).tri[(otri).orient] = (triangle) m->dummytri + +/* Copy an oriented triangle. */ + +#define otricopy(otri1, otri2) \ + (otri2).tri = (otri1).tri; \ + (otri2).orient = (otri1).orient + +/* Test for equality of oriented triangles. */ + +#define otriequal(otri1, otri2) \ + (((otri1).tri == (otri2).tri) && \ + ((otri1).orient == (otri2).orient)) + +/* Primitives to infect or cure a triangle with the virus. These rely on */ +/* the assumption that all subsegments are aligned to four-byte boundaries.*/ + +#define infect(otri) \ + (otri).tri[6] = (triangle) \ + ((unsigned long) (otri).tri[6] | (unsigned long) 2l) + +#define uninfect(otri) \ + (otri).tri[6] = (triangle) \ + ((unsigned long) (otri).tri[6] & ~ (unsigned long) 2l) + +/* Test a triangle for viral infection. */ + +#define infected(otri) \ + (((unsigned long) (otri).tri[6] & (unsigned long) 2l) != 0l) + +/* Check or set a triangle's attributes. */ + +#define elemattribute(otri, attnum) \ + ((REAL *) (otri).tri)[m->elemattribindex + (attnum)] + +#define setelemattribute(otri, attnum, value) \ + ((REAL *) (otri).tri)[m->elemattribindex + (attnum)] = value + +/* Check or set a triangle's maximum area bound. */ + +#define areabound(otri) ((REAL *) (otri).tri)[m->areaboundindex] + +#define setareabound(otri, value) \ + ((REAL *) (otri).tri)[m->areaboundindex] = value + +/* Check or set a triangle's deallocation. Its second pointer is set to */ +/* NULL to indicate that it is not allocated. (Its first pointer is used */ +/* for the stack of dead items.) Its fourth pointer (its first vertex) */ +/* is set to NULL in case a `badtriang' structure points to it. */ + +#define deadtri(tria) ((tria)[1] == (triangle) NULL) + +#define killtri(tria) \ + (tria)[1] = (triangle) NULL; \ + (tria)[3] = (triangle) NULL + +/********* Primitives for subsegments *********/ +/* */ +/* */ + +/* sdecode() converts a pointer to an oriented subsegment. The orientation */ +/* is extracted from the least significant bit of the pointer. The two */ +/* least significant bits (one for orientation, one for viral infection) */ +/* are masked out to produce the real pointer. */ + +#define sdecode(sptr, osub) \ + (osub).ssorient = (int) ((unsigned long) (sptr) & (unsigned long) 1l); \ + (osub).ss = (subseg *) \ + ((unsigned long) (sptr) & ~ (unsigned long) 3l) + +/* sencode() compresses an oriented subsegment into a single pointer. It */ +/* relies on the assumption that all subsegments are aligned to two-byte */ +/* boundaries, so the least significant bit of (osub).ss is zero. */ + +#define sencode(osub) \ + (subseg) ((unsigned long) (osub).ss | (unsigned long) (osub).ssorient) + +/* ssym() toggles the orientation of a subsegment. */ + +#define ssym(osub1, osub2) \ + (osub2).ss = (osub1).ss; \ + (osub2).ssorient = 1 - (osub1).ssorient + +#define ssymself(osub) \ + (osub).ssorient = 1 - (osub).ssorient + +/* spivot() finds the other subsegment (from the same segment) that shares */ +/* the same origin. */ + +#define spivot(osub1, osub2) \ + sptr = (osub1).ss[(osub1).ssorient]; \ + sdecode(sptr, osub2) + +#define spivotself(osub) \ + sptr = (osub).ss[(osub).ssorient]; \ + sdecode(sptr, osub) + +/* snext() finds the next subsegment (from the same segment) in sequence; */ +/* one whose origin is the input subsegment's destination. */ + +#define snext(osub1, osub2) \ + sptr = (osub1).ss[1 - (osub1).ssorient]; \ + sdecode(sptr, osub2) + +#define snextself(osub) \ + sptr = (osub).ss[1 - (osub).ssorient]; \ + sdecode(sptr, osub) + +/* These primitives determine or set the origin or destination of a */ +/* subsegment. */ + +#define sorg(osub, vertexptr) \ + vertexptr = (vertex) (osub).ss[2 + (osub).ssorient] + +#define sdest(osub, vertexptr) \ + vertexptr = (vertex) (osub).ss[3 - (osub).ssorient] + +#define setsorg(osub, vertexptr) \ + (osub).ss[2 + (osub).ssorient] = (subseg) vertexptr + +#define setsdest(osub, vertexptr) \ + (osub).ss[3 - (osub).ssorient] = (subseg) vertexptr + +/* These primitives read or set a boundary marker. Boundary markers are */ +/* used to hold user-defined tags for setting boundary conditions in */ +/* finite element solvers. */ + +#define mark(osub) (* (int *) ((osub).ss + 6)) + +#define setmark(osub, value) \ + * (int *) ((osub).ss + 6) = value + +/* Bond two subsegments together. */ + +#define sbond(osub1, osub2) \ + (osub1).ss[(osub1).ssorient] = sencode(osub2); \ + (osub2).ss[(osub2).ssorient] = sencode(osub1) + +/* Dissolve a subsegment bond (from one side). Note that the other */ +/* subsegment will still think it's connected to this subsegment. */ + +#define sdissolve(osub) \ + (osub).ss[(osub).ssorient] = (subseg) m->dummysub + +/* Copy a subsegment. */ + +#define subsegcopy(osub1, osub2) \ + (osub2).ss = (osub1).ss; \ + (osub2).ssorient = (osub1).ssorient + +/* Test for equality of subsegments. */ + +#define subsegequal(osub1, osub2) \ + (((osub1).ss == (osub2).ss) && \ + ((osub1).ssorient == (osub2).ssorient)) + +/* Check or set a subsegment's deallocation. Its second pointer is set to */ +/* NULL to indicate that it is not allocated. (Its first pointer is used */ +/* for the stack of dead items.) Its third pointer (its first vertex) */ +/* is set to NULL in case a `badsubseg' structure points to it. */ + +#define deadsubseg(sub) ((sub)[1] == (subseg) NULL) + +#define killsubseg(sub) \ + (sub)[1] = (subseg) NULL; \ + (sub)[2] = (subseg) NULL + +/********* Primitives for interacting triangles and subsegments *********/ +/* */ +/* */ + +/* tspivot() finds a subsegment abutting a triangle. */ + +#define tspivot(otri, osub) \ + sptr = (subseg) (otri).tri[6 + (otri).orient]; \ + sdecode(sptr, osub) + +/* stpivot() finds a triangle abutting a subsegment. It requires that the */ +/* variable `ptr' of type `triangle' be defined. */ + +#define stpivot(osub, otri) \ + ptr = (triangle) (osub).ss[4 + (osub).ssorient]; \ + decode(ptr, otri) + +/* Bond a triangle to a subsegment. */ + +#define tsbond(otri, osub) \ + (otri).tri[6 + (otri).orient] = (triangle) sencode(osub); \ + (osub).ss[4 + (osub).ssorient] = (subseg) encode(otri) + +/* Dissolve a bond (from the triangle side). */ + +#define tsdissolve(otri) \ + (otri).tri[6 + (otri).orient] = (triangle) m->dummysub + +/* Dissolve a bond (from the subsegment side). */ + +#define stdissolve(osub) \ + (osub).ss[4 + (osub).ssorient] = (subseg) m->dummytri + +/********* Primitives for vertices *********/ +/* */ +/* */ + +#define vertexmark(vx) ((int *) (vx))[m->vertexmarkindex] + +#define setvertexmark(vx, value) \ + ((int *) (vx))[m->vertexmarkindex] = value + +#define vertextype(vx) ((int *) (vx))[m->vertexmarkindex + 1] + +#define setvertextype(vx, value) \ + ((int *) (vx))[m->vertexmarkindex + 1] = value + +#define vertex2tri(vx) ((triangle *) (vx))[m->vertex2triindex] + +#define setvertex2tri(vx, value) \ + ((triangle *) (vx))[m->vertex2triindex] = value + +/** **/ +/** **/ +/********* Mesh manipulation primitives end here *********/ + +/********* User-defined triangle evaluation routine begins here *********/ +/** **/ +/** **/ + +/*****************************************************************************/ +/* */ +/* triunsuitable() Determine if a triangle is unsuitable, and thus must */ +/* be further refined. */ +/* */ +/* You may write your own procedure that decides whether or not a selected */ +/* triangle is too big (and needs to be refined). There are two ways to do */ +/* this. */ +/* */ +/* (1) Modify the procedure `triunsuitable' below, then recompile */ +/* Triangle. */ +/* */ +/* (2) Define the symbol EXTERNAL_TEST (either by adding the definition */ +/* to this file, or by using the appropriate compiler switch). This way, */ +/* you can compile triangle.c separately from your test. Write your own */ +/* `triunsuitable' procedure in a separate C file (using the same prototype */ +/* as below). Compile it and link the object code with triangle.o. */ +/* */ +/* This procedure returns 1 if the triangle is too large and should be */ +/* refined; 0 otherwise. */ +/* */ +/*****************************************************************************/ + +#ifdef EXTERNAL_TEST + +#ifdef ANSI_DECLARATORS +extern int triunsuitable(vertex triorg, vertex tridest, vertex triapex, + REAL area); +#else /* not ANSI_DECLARATORS */ +extern int triunsuitable(); +#endif /* not ANSI_DECLARATORS */ + +#else /* not EXTERNAL_TEST */ + +#ifdef ANSI_DECLARATORS +int triunsuitable(vertex triorg, vertex tridest, vertex triapex, REAL area) +#else /* not ANSI_DECLARATORS */ +int triunsuitable(triorg, tridest, triapex, area) +vertex triorg; /* The triangle's origin vertex. */ +vertex tridest; /* The triangle's destination vertex. */ +vertex triapex; /* The triangle's apex vertex. */ +REAL area; /* The area of the triangle. */ +#endif /* not ANSI_DECLARATORS */ + +{ + REAL dxoa, dxda, dxod; + REAL dyoa, dyda, dyod; + REAL oalen, dalen, odlen; + REAL maxlen; + + dxoa = triorg[0] - triapex[0]; + dyoa = triorg[1] - triapex[1]; + dxda = tridest[0] - triapex[0]; + dyda = tridest[1] - triapex[1]; + dxod = triorg[0] - tridest[0]; + dyod = triorg[1] - tridest[1]; + /* Find the squares of the lengths of the triangle's three edges. */ + oalen = dxoa * dxoa + dyoa * dyoa; + dalen = dxda * dxda + dyda * dyda; + odlen = dxod * dxod + dyod * dyod; + /* Find the square of the length of the longest edge. */ + maxlen = (dalen > oalen) ? dalen : oalen; + maxlen = (odlen > maxlen) ? odlen : maxlen; + + if (maxlen > 0.05 * (triorg[0] * triorg[0] + triorg[1] * triorg[1]) + 0.02) { + return 1; + } else { + return 0; + } +} + +#endif /* not EXTERNAL_TEST */ + +/** **/ +/** **/ +/********* User-defined triangle evaluation routine ends here *********/ + +/********* Memory allocation wrappers begin here *********/ +/** **/ +/** **/ + +#ifdef ANSI_DECLARATORS +VOID *trimalloc(int size) +#else /* not ANSI_DECLARATORS */ +VOID *trimalloc(size) +int size; +#endif /* not ANSI_DECLARATORS */ + +{ + VOID *memptr; + + memptr = malloc(size); + if (memptr == (VOID *) NULL) { + fprintf(stderr, "Error: Out of memory.\n"); + exit(1); + } + return(memptr); +} + +#ifdef ANSI_DECLARATORS +void trifree(VOID *memptr) +#else /* not ANSI_DECLARATORS */ +void trifree(memptr) +VOID *memptr; +#endif /* not ANSI_DECLARATORS */ + +{ + free(memptr); +} + +/** **/ +/** **/ +/********* Memory allocation wrappers end here *********/ + +/********* User interaction routines begin here *********/ +/** **/ +/** **/ + +/*****************************************************************************/ +/* */ +/* syntax() Print list of command line switches. */ +/* */ +/*****************************************************************************/ + +#ifndef TRILIBRARY + +void syntax() +{ +#ifdef CDT_ONLY +#ifdef REDUCED + printf("triangle [-pAcjevngBPNEIOXzo_lQVh] input_file\n"); +#else /* not REDUCED */ + printf("triangle [-pAcjevngBPNEIOXzo_iFlCQVh] input_file\n"); +#endif /* not REDUCED */ +#else /* not CDT_ONLY */ +#ifdef REDUCED + printf("triangle [-prq__a__uAcjevngBPNEIOXzo_YS__LlQVh] input_file\n"); +#else /* not REDUCED */ + printf("triangle [-prq__a__uAcjevngBPNEIOXzo_YS__LiFlsCQVh] input_file\n"); +#endif /* not REDUCED */ +#endif /* not CDT_ONLY */ + + printf(" -p Triangulates a Planar Straight Line Graph (.poly file).\n"); +#ifndef CDT_ONLY + printf(" -r Refines a previously generated mesh.\n"); + printf( + " -q Quality mesh generation. A minimum angle may be specified.\n"); + printf(" -a Applies a maximum triangle area constraint.\n"); + printf(" -u Applies a user-defined triangle constraint.\n"); +#endif /* not CDT_ONLY */ + printf( + " -A Applies attributes to identify triangles in certain regions.\n"); + printf(" -c Encloses the convex hull with segments.\n"); + printf(" -w Weighted Delaunay triangulation.\n"); + printf(" -W Regular triangulation (lower hull of a height field).\n"); + printf(" -j Jettison unused vertices from output .node file.\n"); + printf(" -e Generates an edge list.\n"); + printf(" -v Generates a Voronoi diagram.\n"); + printf(" -n Generates a list of triangle neighbors.\n"); + printf(" -g Generates an .off file for Geomview.\n"); + printf(" -B Suppresses output of boundary information.\n"); + printf(" -P Suppresses output of .poly file.\n"); + printf(" -N Suppresses output of .node file.\n"); + printf(" -E Suppresses output of .ele file.\n"); + printf(" -I Suppresses mesh iteration numbers.\n"); + printf(" -O Ignores holes in .poly file.\n"); + printf(" -X Suppresses use of exact arithmetic.\n"); + printf(" -z Numbers all items starting from zero (rather than one).\n"); + printf(" -o2 Generates second-order subparametric elements.\n"); +#ifndef CDT_ONLY + printf(" -Y Suppresses boundary segment splitting.\n"); + printf(" -S Specifies maximum number of added Steiner points.\n"); + printf(" -L Uses equatorial circles, not equatorial lenses.\n"); +#endif /* not CDT_ONLY */ +#ifndef REDUCED + printf(" -i Uses incremental method, rather than divide-and-conquer.\n"); + printf(" -F Uses Fortune's sweepline algorithm, rather than d-and-c.\n"); +#endif /* not REDUCED */ + printf(" -l Uses vertical cuts only, rather than alternating cuts.\n"); +#ifndef REDUCED +#ifndef CDT_ONLY + printf( + " -s Force segments into mesh by splitting (instead of using CDT).\n"); + printf(" -L Uses Ruppert's diametral spheres, not diametral lenses.\n"); +#endif /* not CDT_ONLY */ + printf(" -C Check consistency of final mesh.\n"); +#endif /* not REDUCED */ + printf(" -Q Quiet: No terminal output except errors.\n"); + printf(" -V Verbose: Detailed information on what I'm doing.\n"); + printf(" -h Help: Detailed instructions for Triangle.\n"); + exit(0); +} + +#endif /* not TRILIBRARY */ + +/*****************************************************************************/ +/* */ +/* info() Print out complete instructions. */ +/* */ +/*****************************************************************************/ + +#ifndef TRILIBRARY + +void info() +{ + printf("Triangle\n"); + printf( +"A Two-Dimensional Quality Mesh Generator and Delaunay Triangulator.\n"); + printf("Version 1.4\n\n"); + printf("Copyright 1993, 1995, 1997, 1998, 2002 Jonathan Richard Shewchuk\n"); + printf("2360 Woolsey #H / Berkeley, California 94705-1927\n"); + printf("Bugs/comments to jrs@cs.berkeley.edu\n"); + printf( +"Created as part of the Archimedes project (tools for parallel FEM).\n"); + printf( +"Supported in part by NSF Grant CMS-9318163 and an NSERC 1967 Scholarship.\n"); + printf("There is no warranty whatsoever. Use at your own risk.\n"); +#ifdef SINGLE + printf("This executable is compiled for single precision arithmetic.\n\n\n"); +#else /* not SINGLE */ + printf("This executable is compiled for double precision arithmetic.\n\n\n"); +#endif /* not SINGLE */ + printf( +"Triangle generates exact Delaunay triangulations, constrained Delaunay\n"); + printf( +"triangulations, Voronoi diagrams, and quality conforming Delaunay\n"); + printf( +"triangulations. The latter can be generated with no small angles, and are\n" +); + printf( +"thus suitable for finite element analysis. If no command line switches are\n" +); + printf( +"specified, your .node input file is read, and the Delaunay triangulation is\n" +); + printf("returned in .node and .ele output files. The command syntax is:\n"); + printf("\n"); + printf("triangle [-prq__a__uAcjevngBPNEIOXzo_YS__LiFlsCQVh] input_file\n"); + printf("\n"); + printf( +"Underscores indicate that numbers may optionally follow certain switches.\n"); + printf( +"Do not leave any space between a switch and its numeric parameter.\n"); + printf( +"input_file must be a file with extension .node, or extension .poly if the\n"); + printf( +"-p switch is used. If -r is used, you must supply .node and .ele files,\n"); + printf( +"and possibly a .poly file and an .area file as well. The formats of these\n" +); + printf("files are described below.\n\n"); + printf("Command Line Switches:\n\n"); + printf( +" -p Reads a Planar Straight Line Graph (.poly file), which can specify\n" +); + printf(" vertices, segments, holes, regional attributes, and area\n"); + printf( +" constraints. Generates a constrained Delaunay triangulation (CDT)\n" +); + printf( +" fitting the input; or, if -s, -q, -a, or -u is used, a conforming\n"); + printf( +" constrained Delaunay triangulation (CCDT). If -p is not used,\n"); + printf(" Triangle reads a .node file by default.\n"); + printf( +" -r Refines a previously generated mesh. The mesh is read from a .node\n" +); + printf( +" file and an .ele file. If -p is also used, a .poly file is read\n"); + printf( +" and used to constrain segments in the mesh. If -a is also used\n"); + printf( +" (with no number following), an .area file is read and used to\n"); + printf( +" impose area constraints on the mesh. Further details on refinement\n" +); + printf(" are given below.\n"); + printf( +" -q Quality mesh generation by my variant of Jim Ruppert's Delaunay\n"); + printf( +" refinement algorithm. Adds vertices to the mesh to ensure that no\n" +); + printf( +" angles smaller than 20 degrees occur. An alternative minimum angle\n" +); + printf( +" may be specified after the `q'. If the minimum angle is 20.7\n"); + printf( +" degrees or smaller, the triangulation algorithm is mathematically\n"); + printf( +" guaranteed to terminate (assuming infinite precision arithmetic--\n"); + printf( +" Triangle may fail to terminate if you run out of precision). In\n"); + printf( +" practice, the algorithm often succeeds for minimum angles up to\n"); + printf( +" 33.8 degrees. For some meshes, however, it may be necessary to\n"); + printf( +" reduce the minimum angle to avoid problems associated with\n"); + printf( +" insufficient floating-point precision. The specified angle may\n"); + printf(" include a decimal point.\n"); + printf( +" -a Imposes a maximum triangle area. If a number follows the `a', no\n"); + printf( +" triangle is generated whose area is larger than that number. If no\n" +); + printf( +" number is specified, an .area file (if -r is used) or .poly file\n"); + printf( +" (if -r is not used) specifies a set of maximum area constraints.\n"); + printf( +" An .area file contains a separate area constraint for each\n"); + printf( +" triangle, and is useful for refining a finite element mesh based on\n" +); + printf( +" a posteriori error estimates. A .poly file can optionally contain\n" +); + printf( +" an area constraint for each segment-bounded region, thereby\n"); + printf( +" controlling triangle densities in a first triangulation of a PSLG.\n" +); + printf( +" You can impose both a fixed area constraint and a varying area\n"); + printf( +" constraint by invoking the -a switch twice, once with and once\n"); + printf( +" without a number following. Each area specified may include a\n"); + printf(" decimal point.\n"); + printf( +" -u Imposes a user-defined constraint on triangle size. There are two\n" +); + printf( +" ways to use this feature. One is to edit the triunsuitable()\n"); + printf( +" procedure in triangle.c to encode any constraint you like, then\n"); + printf( +" recompile Triangle. The other is to compile triangle.c with the\n"); + printf( +" EXTERNAL_TEST symbol set (compiler switch -DEXTERNAL_TEST), then\n"); + printf( +" link Triangle against a separate object file that implements\n"); + printf( +" triunsuitable(). In either case, the -u switch causes the user-\n"); + printf(" defined test to be applied to every triangle.\n"); + printf( +" -A Assigns an additional attribute to each triangle that identifies\n"); + printf( +" what segment-bounded region each triangle belongs to. Attributes\n"); + printf( +" are assigned to regions by the .poly file. If a region is not\n"); + printf( +" explicitly marked by the .poly file, triangles in that region are\n"); + printf( +" assigned an attribute of zero. The -A switch has an effect only\n"); + printf(" when the -p switch is used and the -r switch is not.\n"); + printf( +" -c Creates segments on the convex hull of the triangulation. If you\n"); + printf( +" are triangulating a vertex set, this switch causes a .poly file to\n" +); + printf( +" be written, containing all edges in the convex hull. If you are\n"); + printf( +" triangulating a PSLG, this switch specifies that the whole convex\n"); + printf( +" hull of the PSLG should be triangulated, regardless of what\n"); + printf( +" segments the PSLG has. If you do not use this switch when\n"); + printf( +" triangulating a PSLG, it is assumed that you have identified the\n"); + printf( +" region to be triangulated by surrounding it with segments of the\n"); + printf( +" input PSLG. Beware: if you are not careful, this switch can cause\n" +); + printf( +" the introduction of an extremely thin angle between a PSLG segment\n" +); + printf( +" and a convex hull segment, which can cause overrefinement (and\n"); + printf( +" possibly failure if Triangle runs out of precision). If you are\n"); + printf( +" refining a mesh, the -c switch works differently; it generates the\n" +); + printf( +" set of boundary edges of the mesh (useful if no .poly file was\n"); + printf(" read).\n"); + printf( +" -j Jettisons vertices that are not part of the final triangulation\n"); + printf( +" from the output .node file. By default, Triangle copies all\n"); + printf( +" vertices in the input .node file to the output .node file, in the\n"); + printf( +" same order, so their indices do not change. The -j switch prevents\n" +); + printf( +" duplicated input vertices from appearing in the output .node file;\n" +); + printf( +" hence, if two input vertices have exactly the same coordinates,\n"); + printf( +" only the first appears in the output. If any vertices are\n"); + printf( +" jettisoned, the vertex numbering in the output .node file differs\n"); + printf(" from that of the input .node file.\n"); + printf( +" -e Outputs (to an .edge file) a list of edges of the triangulation.\n"); + printf( +" -v Outputs the Voronoi diagram associated with the triangulation.\n"); + printf( +" Does not attempt to detect degeneracies, so some Voronoi vertices\n"); + printf( +" may be duplicated. See the discussion of Voronoi diagrams below.\n"); + printf( +" -n Outputs (to a .neigh file) a list of triangles neighboring each\n"); + printf(" triangle.\n"); + printf( +" -g Outputs the mesh to an Object File Format (.off) file, suitable for\n" +); + printf(" viewing with the Geometry Center's Geomview package.\n"); + printf( +" -B No boundary markers in the output .node, .poly, and .edge output\n"); + printf( +" files. See the detailed discussion of boundary markers below.\n"); + printf( +" -P No output .poly file. Saves disk space, but you lose the ability\n"); + printf( +" to maintain constraining segments on later refinements of the mesh.\n" +); + printf(" -N No output .node file.\n"); + printf(" -E No output .ele file.\n"); + printf( +" -I No iteration numbers. Suppresses the output of .node and .poly\n"); + printf( +" files, so your input files won't be overwritten. (If your input is\n" +); + printf( +" a .poly file only, a .node file is written.) Cannot be used with\n"); + printf( +" the -r switch, because that would overwrite your input .ele file.\n"); + printf( +" Shouldn't be used with the -q, -a, -u, or -s switch if you are\n"); + printf( +" using a .node file for input, because no .node file is written, so\n" +); + printf(" there is no record of any added Steiner points.\n"); + printf(" -O No holes. Ignores the holes in the .poly file.\n"); + printf( +" -X No exact arithmetic. Normally, Triangle uses exact floating-point\n" +); + printf( +" arithmetic for certain tests if it thinks the inexact tests are not\n" +); + printf( +" accurate enough. Exact arithmetic ensures the robustness of the\n"); + printf( +" triangulation algorithms, despite floating-point roundoff error.\n"); + printf( +" Disabling exact arithmetic with the -X switch causes a small\n"); + printf( +" improvement in speed and creates the possibility (albeit small)\n"); + printf( +" that Triangle will fail to produce a valid mesh. Not recommended.\n" +); + printf( +" -z Numbers all items starting from zero (rather than one). Note that\n" +); + printf( +" this switch is normally overrided by the value used to number the\n"); + printf( +" first vertex of the input .node or .poly file. However, this\n"); + printf( +" switch is useful when calling Triangle from another program.\n"); + printf( +" -o2 Generates second-order subparametric elements with six nodes each.\n" +); + printf( +" -Y No new vertices on the boundary. This switch is useful when the\n"); + printf( +" mesh boundary must be preserved so that it conforms to some\n"); + printf( +" adjacent mesh. Be forewarned that you will probably sacrifice some\n" +); + printf( +" of the quality of the mesh; Triangle will try, but the resulting\n"); + printf( +" mesh may contain triangles of poor aspect ratio. Works well if all\n" +); + printf( +" the boundary vertices are closely spaced. Specify this switch\n"); + printf( +" twice (`-YY') to prevent all segment splitting, including internal\n" +); + printf(" boundaries.\n"); + printf( +" -S Specifies the maximum number of Steiner points (vertices that are\n"); + printf( +" not in the input, but are added to meet the constraints on minimum\n" +); + printf( +" angle and maximum area). The default is to allow an unlimited\n"); + printf( +" number. If you specify this switch with no number after it,\n"); + printf( +" the limit is set to zero. Triangle always adds vertices at segment\n" +); + printf( +" intersections, even if it needs to use more vertices than the limit\n" +); + printf( +" you set. When Triangle inserts segments by splitting (-s), it\n"); + printf( +" always adds enough vertices to ensure that all the segments of the\n" +); + printf(" PLSG are recovered, ignoring the limit if necessary.\n"); + printf( +" -L Do not use diametral lenses to determine whether subsegments are\n"); + printf( +" encroached; use diametral circles instead (as in Ruppert's\n"); + printf( +" algorithm). Use this switch if you want all triangles in the mesh\n" +); + printf( +" to be Delaunay, and not just constrained Delaunay; or if you want\n"); + printf( +" to ensure that all Voronoi vertices lie within the triangulation.\n"); + printf( +" (Applications such as some finite volume methods may have this\n"); + printf( +" requirement.) This switch may increase the number of vertices in\n"); + printf(" the mesh to meet these constraints.\n"); + printf( +" -i Uses an incremental rather than divide-and-conquer algorithm to\n"); + printf( +" form a Delaunay triangulation. Try it if the divide-and-conquer\n"); + printf(" algorithm fails.\n"); + printf( +" -F Uses Steven Fortune's sweepline algorithm to form a Delaunay\n"); + printf( +" triangulation. Warning: does not use exact arithmetic for all\n"); + printf(" calculations. An exact result is not guaranteed.\n"); + printf( +" -l Uses only vertical cuts in the divide-and-conquer algorithm. By\n"); + printf( +" default, Triangle uses alternating vertical and horizontal cuts,\n"); + printf( +" which usually improve the speed except with vertex sets that are\n"); + printf( +" small or short and wide. This switch is primarily of theoretical\n"); + printf(" interest.\n"); + printf( +" -s Specifies that segments should be forced into the triangulation by\n" +); + printf( +" recursively splitting them at their midpoints, rather than by\n"); + printf( +" generating a constrained Delaunay triangulation. Segment splitting\n" +); + printf( +" is true to Ruppert's original algorithm, but can create needlessly\n" +); + printf( +" small triangles. This switch is primarily of theoretical interest.\n" +); + printf( +" -C Check the consistency of the final mesh. Uses exact arithmetic for\n" +); + printf( +" checking, even if the -X switch is used. Useful if you suspect\n"); + printf(" Triangle is buggy.\n"); + printf( +" -Q Quiet: Suppresses all explanation of what Triangle is doing,\n"); + printf(" unless an error occurs.\n"); + printf( +" -V Verbose: Gives detailed information about what Triangle is doing.\n" +); + printf( +" Add more `V's for increasing amount of detail. `-V' gives\n"); + printf( +" information on algorithmic progress and more detailed statistics.\n"); + printf( +" `-VV' gives vertex-by-vertex details, and prints so much that\n"); + printf( +" Triangle runs much more slowly. `-VVVV' gives information only\n"); + printf(" a debugger could love.\n"); + printf(" -h Help: Displays these instructions.\n"); + printf("\n"); + printf("Definitions:\n"); + printf("\n"); + printf( +" A Delaunay triangulation of a vertex set is a triangulation whose\n"); + printf( +" vertices are the vertex set, wherein no vertex in the vertex set falls in\n" +); + printf( +" the interior of the circumcircle (circle that passes through all three\n"); + printf(" vertices) of any triangle in the triangulation.\n\n"); + printf( +" A Voronoi diagram of a vertex set is a subdivision of the plane into\n"); + printf( +" polygonal regions (some of which may be infinite), where each region is\n"); + printf( +" the set of points in the plane that are closer to some input vertex than\n" +); + printf( +" to any other input vertex. (The Voronoi diagram is the geometric dual of\n" +); + printf(" the Delaunay triangulation.)\n\n"); + printf( +" A Planar Straight Line Graph (PSLG) is a set of vertices and segments.\n"); + printf( +" Segments are simply edges, whose endpoints are vertices in the PSLG.\n"); + printf( +" Segments may intersect each other only at their endpoints. The file\n"); + printf(" format for PSLGs (.poly files) is described below.\n\n"); + printf( +" A constrained Delaunay triangulation (CDT) of a PSLG is similar to a\n"); + printf( +" Delaunay triangulation, but each PSLG segment is present as a single edge\n" +); + printf( +" in the triangulation. (A constrained Delaunay triangulation is not truly\n" +); + printf( +" a Delaunay triangulation.) By definition, a CDT does not have any\n"); + printf(" vertices other than those specified in the input PSLG.\n\n"); + printf( +" A conforming Delaunay triangulation of a PSLG is a true Delaunay\n"); + printf( +" triangulation in which each PSLG segment is represented by a linear\n"); + printf( +" contiguous sequence of edges in the triangulation. Each input segment\n"); + printf( +" may have been subdivided into shorter subsegments by the insertion of\n"); + printf( +" additional vertices. These inserted vertices are necessary to maintain\n"); + printf( +" the Delaunay property while ensuring that every segment is represented.\n"); + printf("\n"); + printf("File Formats:\n"); + printf("\n"); + printf( +" All files may contain comments prefixed by the character '#'. Vertices,\n" +); + printf( +" triangles, edges, holes, and maximum area constraints must be numbered\n"); + printf( +" consecutively, starting from either 1 or 0. Whichever you choose, all\n"); + printf( +" input files must be consistent; if the vertices are numbered from 1, so\n"); + printf( +" must be all other objects. Triangle automatically detects your choice\n"); + printf( +" while reading the .node (or .poly) file. (When calling Triangle from\n"); + printf( +" another program, use the -z switch if you wish to number objects from\n"); + printf(" zero.) Examples of these file formats are given below.\n\n"); + printf(" .node files:\n"); + printf( +" First line: <# of vertices> <# of attributes>\n" +); + printf( +" <# of boundary markers (0 or 1)>\n" +); + printf( +" Remaining lines: [attributes] [boundary marker]\n"); + printf("\n"); + printf( +" The attributes, which are typically floating-point values of physical\n"); + printf( +" quantities (such as mass or conductivity) associated with the nodes of\n" +); + printf( +" a finite element mesh, are copied unchanged to the output mesh. If -q,\n" +); + printf( +" -a, -u, or -s is selected, each new Steiner point added to the mesh\n"); + printf(" has attributes assigned to it by linear interpolation.\n\n"); + printf( +" If the fourth entry of the first line is `1', the last column of the\n"); + printf( +" remainder of the file is assumed to contain boundary markers. Boundary\n" +); + printf( +" markers are used to identify boundary vertices and vertices resting on\n" +); + printf( +" PSLG segments; a complete description appears in a section below. The\n" +); + printf( +" .node file produced by Triangle contains boundary markers in the last\n"); + printf(" column unless they are suppressed by the -B switch.\n\n"); + printf(" .ele files:\n"); + printf( +" First line: <# of triangles> <# of attributes>\n"); + printf( +" Remaining lines: ... [attributes]\n"); + printf("\n"); + printf( +" Nodes are indices into the corresponding .node file. The first three\n"); + printf( +" nodes are the corner vertices, and are listed in counterclockwise order\n" +); + printf( +" around each triangle. (The remaining nodes, if any, depend on the type\n" +); + printf(" of finite element used.)\n\n"); + printf( +" The attributes are just like those of .node files. Because there is no\n" +); + printf( +" simple mapping from input to output triangles, an attempt is made to\n"); + printf( +" interpolate attributes, which may result in a good deal of diffusion of\n" +); + printf( +" attributes among nearby triangles as the triangulation is refined.\n"); + printf( +" Attributes do not diffuse across segments, so attributes used to\n"); + printf(" identify segment-bounded regions remain intact.\n\n"); + printf( +" In .ele files produced by Triangle, each triangular element has three\n"); + printf( +" nodes (vertices) unless the -o2 switch is used, in which case\n"); + printf( +" subparametric quadratic elements with six nodes each are generated.\n"); + printf( +" The first three nodes are the corners in counterclockwise order, and\n"); + printf( +" the fourth, fifth, and sixth nodes lie on the midpoints of the edges\n"); + printf( +" opposite the first, second, and third vertices, respectively.\n"); + printf("\n"); + printf(" .poly files:\n"); + printf( +" First line: <# of vertices> <# of attributes>\n" +); + printf( +" <# of boundary markers (0 or 1)>\n" +); + printf( +" Following lines: [attributes] [boundary marker]\n"); + printf(" One line: <# of segments> <# of boundary markers (0 or 1)>\n"); + printf( +" Following lines: [boundary marker]\n"); + printf(" One line: <# of holes>\n"); + printf(" Following lines: \n"); + printf( +" Optional line: <# of regional attributes and/or area constraints>\n"); + printf( +" Optional following lines: \n"); + printf("\n"); + printf( +" A .poly file represents a PSLG, as well as some additional information.\n" +); + printf( +" The first section lists all the vertices, and is identical to the\n"); + printf( +" format of .node files. <# of vertices> may be set to zero to indicate\n" +); + printf( +" that the vertices are listed in a separate .node file; .poly files\n"); + printf( +" produced by Triangle always have this format. A vertex set represented\n" +); + printf( +" this way has the advantage that it may easily be triangulated with or\n"); + printf( +" without segments (depending on whether the .poly or .node file is\n"); + printf(" read).\n\n"); + printf( +" The second section lists the segments. Segments are edges whose\n"); + printf( +" presence in the triangulation is enforced (although each segment may be\n" +); + printf( +" subdivided into smaller edges). Each segment is specified by listing\n"); + printf( +" the indices of its two endpoints. This means that you must include its\n" +); + printf( +" endpoints in the vertex list. Each segment, like each point, may have\n" +); + printf(" a boundary marker.\n\n"); + printf( +" If -q, -a, -u, and -s are not selected, Triangle produces a constrained\n" +); + printf( +" Delaunay triangulation (CDT), in which each segment appears as a single\n" +); + printf( +" edge in the triangulation. If -q, -a, -u, or -s is selected, Triangle\n" +); + printf( +" produces a conforming constrained Delaunay triangulation (CCDT), in\n"); + printf( +" which segments may be subdivided into smaller edges. If -L is selected\n" +); + printf( +" as well, Triangle produces a conforming Delaunay triangulation, so\n"); + printf( +" every triangle is Delaunay, and not just constrained Delaunay.\n"); + printf("\n"); + printf( +" The third section lists holes (and concavities, if -c is selected) in\n"); + printf( +" the triangulation. Holes are specified by identifying a point inside\n"); + printf( +" each hole. After the triangulation is formed, Triangle creates holes\n"); + printf( +" by eating triangles, spreading out from each hole point until its\n"); + printf( +" progress is blocked by PSLG segments; you must be careful to enclose\n"); + printf( +" each hole in segments, or your whole triangulation might be eaten away.\n" +); + printf( +" If the two triangles abutting a segment are eaten, the segment itself\n"); + printf( +" is also eaten. Do not place a hole directly on a segment; if you do,\n"); + printf(" Triangle chooses one side of the segment arbitrarily.\n\n"); + printf( +" The optional fourth section lists regional attributes (to be assigned\n"); + printf( +" to all triangles in a region) and regional constraints on the maximum\n"); + printf( +" triangle area. Triangle reads this section only if the -A switch is\n"); + printf( +" used or the -a switch is used without a number following it, and the -r\n" +); + printf( +" switch is not used. Regional attributes and area constraints are\n"); + printf( +" propagated in the same manner as holes; you specify a point for each\n"); + printf( +" attribute and/or constraint, and the attribute and/or constraint\n"); + printf( +" affects the whole region (bounded by segments) containing the point.\n"); + printf( +" If two values are written on a line after the x and y coordinate, the\n"); + printf( +" first such value is assumed to be a regional attribute (but is only\n"); + printf( +" applied if the -A switch is selected), and the second value is assumed\n" +); + printf( +" to be a regional area constraint (but is only applied if the -a switch\n" +); + printf( +" is selected). You may specify just one value after the coordinates,\n"); + printf( +" which can serve as both an attribute and an area constraint, depending\n" +); + printf( +" on the choice of switches. If you are using the -A and -a switches\n"); + printf( +" simultaneously and wish to assign an attribute to some region without\n"); + printf(" imposing an area constraint, use a negative maximum area.\n\n"); + printf( +" When a triangulation is created from a .poly file, you must either\n"); + printf( +" enclose the entire region to be triangulated in PSLG segments, or\n"); + printf( +" use the -c switch, which encloses the convex hull of the input vertex\n"); + printf( +" set. If you do not use the -c switch, Triangle eats all triangles that\n" +); + printf( +" are not enclosed by segments; if you are not careful, your whole\n"); + printf( +" triangulation may be eaten away. If you do use the -c switch, you can\n" +); + printf( +" still produce concavities by the appropriate placement of holes just\n"); + printf(" within the convex hull.\n\n"); + printf( +" An ideal PSLG has no intersecting segments, nor any vertices that lie\n"); + printf( +" upon segments (except, of course, the endpoints of each segment.) You\n" +); + printf( +" aren't required to make your .poly files ideal, but you should be aware\n" +); + printf( +" of what can go wrong. Segment intersections are relatively safe--\n"); + printf( +" Triangle calculates the intersection points for you and adds them to\n"); + printf( +" the triangulation--as long as your machine's floating-point precision\n"); + printf( +" doesn't become a problem. You are tempting the fates if you have three\n" +); + printf( +" segments that cross at the same location, and expect Triangle to figure\n" +); + printf( +" out where the intersection point is. Thanks to floating-point roundoff\n" +); + printf( +" error, Triangle will probably decide that the three segments intersect\n" +); + printf( +" at three different points, and you will find a minuscule triangle in\n"); + printf( +" your output--unless Triangle tries to refine the tiny triangle, uses\n"); + printf( +" up the last bit of machine precision, and fails to terminate at all.\n"); + printf( +" You're better off putting the intersection point in the input files,\n"); + printf( +" and manually breaking up each segment into two. Similarly, if you\n"); + printf( +" place a vertex at the middle of a segment, and hope that Triangle will\n" +); + printf( +" break up the segment at that vertex, you might get lucky. On the other\n" +); + printf( +" hand, Triangle might decide that the vertex doesn't lie precisely on\n"); + printf( +" the segment, and you'll have a needle-sharp triangle in your output--or\n" +); + printf(" a lot of tiny triangles if you're generating a quality mesh.\n"); + printf("\n"); + printf( +" When Triangle reads a .poly file, it also writes a .poly file, which\n"); + printf( +" includes all edges that are parts of input segments. If the -c switch\n" +); + printf( +" is used, the output .poly file also includes all of the edges on the\n"); + printf( +" convex hull. Hence, the output .poly file is useful for finding edges\n" +); + printf( +" associated with input segments and for setting boundary conditions in\n"); + printf( +" finite element simulations. Moreover, you will need it if you plan to\n" +); + printf( +" refine the output mesh, and don't want segments to be missing in later\n" +); + printf(" triangulations.\n\n"); + printf(" .area files:\n"); + printf(" First line: <# of triangles>\n"); + printf(" Following lines: \n\n"); + printf( +" An .area file associates with each triangle a maximum area that is used\n" +); + printf( +" for mesh refinement. As with other file formats, every triangle must\n"); + printf( +" be represented, and they must be numbered consecutively. A triangle\n"); + printf( +" may be left unconstrained by assigning it a negative maximum area.\n"); + printf("\n"); + printf(" .edge files:\n"); + printf(" First line: <# of edges> <# of boundary markers (0 or 1)>\n"); + printf( +" Following lines: [boundary marker]\n"); + printf("\n"); + printf( +" Endpoints are indices into the corresponding .node file. Triangle can\n" +); + printf( +" produce .edge files (use the -e switch), but cannot read them. The\n"); + printf( +" optional column of boundary markers is suppressed by the -B switch.\n"); + printf("\n"); + printf( +" In Voronoi diagrams, one also finds a special kind of edge that is an\n"); + printf( +" infinite ray with only one endpoint. For these edges, a different\n"); + printf(" format is used:\n\n"); + printf(" -1 \n\n"); + printf( +" The `direction' is a floating-point vector that indicates the direction\n" +); + printf(" of the infinite ray.\n\n"); + printf(" .neigh files:\n"); + printf( +" First line: <# of triangles> <# of neighbors per triangle (always 3)>\n" +); + printf( +" Following lines: \n"); + printf("\n"); + printf( +" Neighbors are indices into the corresponding .ele file. An index of -1\n" +); + printf( +" indicates no neighbor (because the triangle is on an exterior\n"); + printf( +" boundary). The first neighbor of triangle i is opposite the first\n"); + printf(" corner of triangle i, and so on.\n\n"); + printf( +" Triangle can produce .neigh files (use the -n switch), but cannot read\n" +); + printf(" them.\n\n"); + printf("Boundary Markers:\n\n"); + printf( +" Boundary markers are tags used mainly to identify which output vertices\n"); + printf( +" and edges are associated with which PSLG segment, and to identify which\n"); + printf( +" vertices and edges occur on a boundary of the triangulation. A common\n"); + printf( +" use is to determine where boundary conditions should be applied to a\n"); + printf( +" finite element mesh. You can prevent boundary markers from being written\n" +); + printf(" into files produced by Triangle by using the -B switch.\n\n"); + printf( +" The boundary marker associated with each segment in an output .poly file\n" +); + printf(" and each edge in an output .edge file is chosen as follows:\n"); + printf( +" - If an output edge is part or all of a PSLG segment with a nonzero\n"); + printf( +" boundary marker, then the edge is assigned the same marker.\n"); + printf( +" - Otherwise, if the edge occurs on a boundary of the triangulation\n"); + printf( +" (including boundaries of holes), then the edge is assigned the marker\n" +); + printf(" one (1).\n"); + printf(" - Otherwise, the edge is assigned the marker zero (0).\n"); + printf( +" The boundary marker associated with each vertex in an output .node file\n"); + printf(" is chosen as follows:\n"); + printf( +" - If a vertex is assigned a nonzero boundary marker in the input file,\n" +); + printf( +" then it is assigned the same marker in the output .node file.\n"); + printf( +" - Otherwise, if the vertex lies on a PSLG segment (including the\n"); + printf( +" segment's endpoints) with a nonzero boundary marker, then the vertex\n" +); + printf( +" is assigned the same marker. If the vertex lies on several such\n"); + printf(" segments, one of the markers is chosen arbitrarily.\n"); + printf( +" - Otherwise, if the vertex occurs on a boundary of the triangulation,\n"); + printf(" then the vertex is assigned the marker one (1).\n"); + printf(" - Otherwise, the vertex is assigned the marker zero (0).\n"); + printf("\n"); + printf( +" If you want Triangle to determine for you which vertices and edges are on\n" +); + printf( +" the boundary, assign them the boundary marker zero (or use no markers at\n" +); + printf( +" all) in your input files. In the output files, all boundary vertices,\n"); + printf(" edges, and segments are assigned the value one.\n\n"); + printf("Triangulation Iteration Numbers:\n\n"); + printf( +" Because Triangle can read and refine its own triangulations, input\n"); + printf( +" and output files have iteration numbers. For instance, Triangle might\n"); + printf( +" read the files mesh.3.node, mesh.3.ele, and mesh.3.poly, refine the\n"); + printf( +" triangulation, and output the files mesh.4.node, mesh.4.ele, and\n"); + printf(" mesh.4.poly. Files with no iteration number are treated as if\n"); + printf( +" their iteration number is zero; hence, Triangle might read the file\n"); + printf( +" points.node, triangulate it, and produce the files points.1.node and\n"); + printf(" points.1.ele.\n\n"); + printf( +" Iteration numbers allow you to create a sequence of successively finer\n"); + printf( +" meshes suitable for multigrid methods. They also allow you to produce a\n" +); + printf( +" sequence of meshes using error estimate-driven mesh refinement.\n"); + printf("\n"); + printf( +" If you're not using refinement or quality meshing, and you don't like\n"); + printf( +" iteration numbers, use the -I switch to disable them. This switch also\n"); + printf( +" disables output of .node and .poly files to prevent your input files from\n" +); + printf( +" being overwritten. (If the input is a .poly file that contains its own\n"); + printf(" points, a .node file is written.)\n\n"); + printf("Examples of How to Use Triangle:\n\n"); + printf( +" `triangle dots' reads vertices from dots.node, and writes their Delaunay\n" +); + printf( +" triangulation to dots.1.node and dots.1.ele. (dots.1.node is identical\n"); + printf( +" to dots.node.) `triangle -I dots' writes the triangulation to dots.ele\n"); + printf( +" instead. (No additional .node file is needed, so none is written.)\n"); + printf("\n"); + printf( +" `triangle -pe object.1' reads a PSLG from object.1.poly (and possibly\n"); + printf( +" object.1.node, if the vertices are omitted from object.1.poly) and writes\n" +); + printf( +" its constrained Delaunay triangulation to object.2.node and object.2.ele.\n" +); + printf( +" The segments are copied to object.2.poly, and all edges are written to\n"); + printf(" object.2.edge.\n\n"); + printf( +" `triangle -pq31.5a.1 object' reads a PSLG from object.poly (and possibly\n" +); + printf( +" object.node), generates a mesh whose angles are all 31.5 degrees or\n"); + printf( +" greater and whose triangles all have areas of 0.1 or less, and writes the\n" +); + printf( +" mesh to object.1.node and object.1.ele. Each segment may be broken up\n"); + printf(" into multiple subsegments; these are written to object.1.poly.\n"); + printf("\n"); + printf( +" Here is a sample file `box.poly' describing a square with a square hole:\n" +); + printf("\n"); + printf( +" # A box with eight vertices in 2D, no attributes, one boundary marker.\n" +); + printf(" 8 2 0 1\n"); + printf(" # Outer box has these vertices:\n"); + printf(" 1 0 0 0\n"); + printf(" 2 0 3 0\n"); + printf(" 3 3 0 0\n"); + printf(" 4 3 3 33 # A special marker for this vertex.\n"); + printf(" # Inner square has these vertices:\n"); + printf(" 5 1 1 0\n"); + printf(" 6 1 2 0\n"); + printf(" 7 2 1 0\n"); + printf(" 8 2 2 0\n"); + printf(" # Five segments with boundary markers.\n"); + printf(" 5 1\n"); + printf(" 1 1 2 5 # Left side of outer box.\n"); + printf(" # Square hole has these segments:\n"); + printf(" 2 5 7 0\n"); + printf(" 3 7 8 0\n"); + printf(" 4 8 6 10\n"); + printf(" 5 6 5 0\n"); + printf(" # One hole in the middle of the inner square.\n"); + printf(" 1\n"); + printf(" 1 1.5 1.5\n"); + printf("\n"); + printf( +" Note that some segments are missing from the outer square, so one must\n"); + printf( +" use the `-c' switch. After `triangle -pqc box.poly', here is the output\n" +); + printf( +" file `box.1.node', with twelve vertices. The last four vertices were\n"); + printf( +" added to meet the angle constraint. Vertices 1, 2, and 9 have markers\n"); + printf( +" from segment 1. Vertices 6 and 8 have markers from segment 4. All the\n"); + printf( +" other vertices but 4 have been marked to indicate that they lie on a\n"); + printf(" boundary.\n\n"); + printf(" 12 2 0 1\n"); + printf(" 1 0 0 5\n"); + printf(" 2 0 3 5\n"); + printf(" 3 3 0 1\n"); + printf(" 4 3 3 33\n"); + printf(" 5 1 1 1\n"); + printf(" 6 1 2 10\n"); + printf(" 7 2 1 1\n"); + printf(" 8 2 2 10\n"); + printf(" 9 0 1.5 5\n"); + printf(" 10 1.5 0 1\n"); + printf(" 11 3 1.5 1\n"); + printf(" 12 1.5 3 1\n"); + printf(" # Generated by triangle -pqc box.poly\n"); + printf("\n"); + printf(" Here is the output file `box.1.ele', with twelve triangles.\n"); + printf("\n"); + printf(" 12 3 0\n"); + printf(" 1 5 6 9\n"); + printf(" 2 10 3 7\n"); + printf(" 3 6 8 12\n"); + printf(" 4 9 1 5\n"); + printf(" 5 6 2 9\n"); + printf(" 6 7 3 11\n"); + printf(" 7 11 4 8\n"); + printf(" 8 7 5 10\n"); + printf(" 9 12 2 6\n"); + printf(" 10 8 7 11\n"); + printf(" 11 5 1 10\n"); + printf(" 12 8 4 12\n"); + printf(" # Generated by triangle -pqc box.poly\n\n"); + printf( +" Here is the output file `box.1.poly'. Note that segments have been added\n" +); + printf( +" to represent the convex hull, and some segments have been split by newly\n" +); + printf( +" added vertices. Note also that <# of vertices> is set to zero to\n"); + printf(" indicate that the vertices should be read from the .node file.\n"); + printf("\n"); + printf(" 0 2 0 1\n"); + printf(" 12 1\n"); + printf(" 1 1 9 5\n"); + printf(" 2 5 7 1\n"); + printf(" 3 8 7 1\n"); + printf(" 4 6 8 10\n"); + printf(" 5 5 6 1\n"); + printf(" 6 3 10 1\n"); + printf(" 7 4 11 1\n"); + printf(" 8 2 12 1\n"); + printf(" 9 9 2 5\n"); + printf(" 10 10 1 1\n"); + printf(" 11 11 3 1\n"); + printf(" 12 12 4 1\n"); + printf(" 1\n"); + printf(" 1 1.5 1.5\n"); + printf(" # Generated by triangle -pqc box.poly\n"); + printf("\n"); + printf("Refinement and Area Constraints:\n"); + printf("\n"); + printf( +" The -r switch causes a mesh (.node and .ele files) to be read and\n"); + printf( +" refined. If the -p switch is also used, a .poly file is read and used to\n" +); + printf( +" specify edges that are constrained and cannot be eliminated (although\n"); + printf( +" they can be divided into smaller edges) by the refinement process.\n"); + printf("\n"); + printf( +" When you refine a mesh, you generally want to impose tighter quality\n"); + printf( +" constraints. One way to accomplish this is to use -q with a larger\n"); + printf( +" angle, or -a followed by a smaller area than you used to generate the\n"); + printf( +" mesh you are refining. Another way to do this is to create an .area\n"); + printf( +" file, which specifies a maximum area for each triangle, and use the -a\n"); + printf( +" switch (without a number following). Each triangle's area constraint is\n" +); + printf( +" applied to that triangle. Area constraints tend to diffuse as the mesh\n"); + printf( +" is refined, so if there are large variations in area constraint between\n"); + printf(" adjacent triangles, you may not get the results you want.\n\n"); + printf( +" If you are refining a mesh composed of linear (three-node) elements, the\n" +); + printf( +" output mesh contains all the nodes present in the input mesh, in the same\n" +); + printf( +" order, with new nodes added at the end of the .node file. However, the\n"); + printf( +" refinement is not hierarchical: there is no guarantee that each output\n"); + printf( +" element is contained in a single input element. Often, output elements\n"); + printf( +" overlap two input elements, and some input edges are not present in the\n"); + printf( +" output mesh. Hence, a sequence of refined meshes forms a hierarchy of\n"); + printf( +" nodes, but not a hierarchy of elements. If you refine a mesh of higher-\n" +); + printf( +" order elements, the hierarchical property applies only to the nodes at\n"); + printf( +" the corners of an element; other nodes may not be present in the refined\n" +); + printf(" mesh.\n\n"); + printf( +" Maximum area constraints in .poly files operate differently from those in\n" +); + printf( +" .area files. A maximum area in a .poly file applies to the whole\n"); + printf( +" (segment-bounded) region in which a point falls, whereas a maximum area\n"); + printf( +" in an .area file applies to only one triangle. Area constraints in .poly\n" +); + printf( +" files are used only when a mesh is first generated, whereas area\n"); + printf( +" constraints in .area files are used only to refine an existing mesh, and\n" +); + printf( +" are typically based on a posteriori error estimates resulting from a\n"); + printf(" finite element simulation on that mesh.\n\n"); + printf( +" `triangle -rq25 object.1' reads object.1.node and object.1.ele, then\n"); + printf( +" refines the triangulation to enforce a 25 degree minimum angle, and then\n" +); + printf( +" writes the refined triangulation to object.2.node and object.2.ele.\n"); + printf("\n"); + printf( +" `triangle -rpaa6.2 z.3' reads z.3.node, z.3.ele, z.3.poly, and z.3.area.\n" +); + printf( +" After reconstructing the mesh and its subsegments, Triangle refines the\n"); + printf( +" mesh so that no triangle has area greater than 6.2, and furthermore the\n"); + printf( +" triangles satisfy the maximum area constraints in z.3.area. No angle\n"); + printf( +" bound is imposed at all. The output is written to z.4.node, z.4.ele, and\n" +); + printf(" z.4.poly.\n\n"); + printf( +" The sequence `triangle -qa1 x', `triangle -rqa.3 x.1', `triangle -rqa.1\n"); + printf( +" x.2' creates a sequence of successively finer meshes x.1, x.2, and x.3,\n"); + printf(" suitable for multigrid.\n\n"); + printf("Convex Hulls and Mesh Boundaries:\n\n"); + printf( +" If the input is a vertex set (rather than a PSLG), Triangle produces its\n" +); + printf( +" convex hull as a by-product in the output .poly file if you use the -c\n"); + printf( +" switch. There are faster algorithms for finding a two-dimensional convex\n" +); + printf( +" hull than triangulation, of course, but this one comes for free.\n"); + printf("\n"); + printf( +" If the input is an unconstrained mesh (you are using the -r switch but\n"); + printf( +" not the -p switch), Triangle produces a list of its boundary edges\n"); + printf( +" (including hole boundaries) as a by-product when you use the -c switch.\n"); + printf( +" If you also use the -p switch, the output .poly file contains all the\n"); + printf(" segments from the input .poly file as well.\n\n"); + printf("Voronoi Diagrams:\n\n"); + printf( +" The -v switch produces a Voronoi diagram, in files suffixed .v.node and\n"); + printf( +" .v.edge. For example, `triangle -v points' reads points.node, produces\n"); + printf( +" its Delaunay triangulation in points.1.node and points.1.ele, and\n"); + printf( +" produces its Voronoi diagram in points.1.v.node and points.1.v.edge. The\n" +); + printf( +" .v.node file contains a list of all Voronoi vertices, and the .v.edge\n"); + printf( +" file contains a list of all Voronoi edges, some of which may be infinite\n" +); + printf( +" rays. (The choice of filenames makes it easy to run the set of Voronoi\n"); + printf(" vertices through Triangle, if so desired.)\n\n"); + printf( +" This implementation does not use exact arithmetic to compute the Voronoi\n" +); + printf( +" vertices, and does not check whether neighboring vertices are identical.\n" +); + printf( +" Be forewarned that if the Delaunay triangulation is degenerate or\n"); + printf( +" near-degenerate, the Voronoi diagram may have duplicate vertices,\n"); + printf( +" crossing edges, or infinite rays whose direction vector is zero.\n"); + printf("\n"); + printf( +" The result is a valid Voronoi diagram only if Triangle's output is a true\n" +); + printf( +" Delaunay triangulation. The Voronoi output is usually meaningless (and\n"); + printf( +" may contain crossing edges and other pathology) if the output is a CDT or\n" +); + printf( +" CCDT, or if it has holes or concavities. If the triangulation is convex\n" +); + printf( +" and has no holes, this can be fixed by using the -L switch to ensure a\n"); + printf(" conforming Delaunay triangulation is constructed.\n\n"); + printf("Mesh Topology:\n\n"); + printf( +" You may wish to know which triangles are adjacent to a certain Delaunay\n"); + printf( +" edge in an .edge file, which Voronoi regions are adjacent to a certain\n"); + printf( +" Voronoi edge in a .v.edge file, or which Voronoi regions are adjacent to\n" +); + printf( +" each other. All of this information can be found by cross-referencing\n"); + printf( +" output files with the recollection that the Delaunay triangulation and\n"); + printf(" the Voronoi diagram are planar duals.\n\n"); + printf( +" Specifically, edge i of an .edge file is the dual of Voronoi edge i of\n"); + printf( +" the corresponding .v.edge file, and is rotated 90 degrees counterclock-\n"); + printf( +" wise from the Voronoi edge. Triangle j of an .ele file is the dual of\n"); + printf( +" vertex j of the corresponding .v.node file. Voronoi region k is the dual\n" +); + printf(" of vertex k of the corresponding .node file.\n\n"); + printf( +" Hence, to find the triangles adjacent to a Delaunay edge, look at the\n"); + printf( +" vertices of the corresponding Voronoi edge. If the endpoints of a\n"); + printf( +" Voronoi edge are Voronoi vertices 2 and 6 respectively, then triangles 2\n" +); + printf( +" and 6 adjoin the left and right sides of the corresponding Delaunay edge,\n" +); + printf( +" respectively. To find the Voronoi regions adjacent to a Voronoi edge,\n"); + printf( +" look at the endpoints of the corresponding Delaunay edge. If the\n"); + printf( +" endpoints of a Delaunay edge are input vertices 7 and 12, then Voronoi\n"); + printf( +" regions 7 and 12 adjoin the right and left sides of the corresponding\n"); + printf( +" Voronoi edge, respectively. To find which Voronoi regions are adjacent\n"); + printf(" to each other, just read the list of Delaunay edges.\n\n"); + printf( +" Triangle does not write a list of Voronoi regions, but one can be\n"); + printf( +" reconstructed straightforwardly. For instance, to find all the edges of\n" +); + printf( +" Voronoi region 1, search the output .edge file for every edge that has\n"); + printf( +" input vertex 1 as an endpoint. The corresponding dual edges in the\n"); + printf(" output .v.edge file form the boundary of Voronoi region 1.\n\n"); + printf("Quadratic Elements:\n\n"); + printf( +" Triangle generates meshes with subparametric quadratic elements if the\n"); + printf( +" -o2 switch is specified. Quadratic elements have six nodes per element,\n" +); + printf( +" rather than three. `Subparametric' means that the edges of the triangles\n" +); + printf( +" are always straight, so that subparametric quadratic elements are\n"); + printf( +" geometrically identical to linear elements, even though they can be used\n" +); + printf( +" with quadratic interpolating functions. The three extra nodes of an\n"); + printf( +" element fall at the midpoints of the three edges, with the fourth, fifth,\n" +); + printf( +" and sixth nodes appearing opposite the first, second, and third corners\n"); + printf(" respectively.\n\n"); + printf("Statistics:\n\n"); + printf( +" After generating a mesh, Triangle prints a count of the number of\n"); + printf( +" vertices, triangles, edges, exterior boundary edges (including hole\n"); + printf( +" boundaries), interior boundary edges, and segments in the output mesh.\n"); + printf( +" If you've forgotten the statistics for an existing mesh, run Triangle on\n" +); + printf( +" that mesh with the -rNEP switches to read the mesh and print the\n"); + printf( +" statistics without writing any files. Use -rpNEP if you've got a .poly\n"); + printf(" file for the mesh.\n\n"); + printf( +" The -V switch produces extended statistics, including a rough estimate\n"); + printf( +" of memory use, the number of calls to geometric predicates, and\n"); + printf(" histograms of triangle aspect ratios and angles in the mesh.\n\n"); + printf("Exact Arithmetic:\n\n"); + printf( +" Triangle uses adaptive exact arithmetic to perform what computational\n"); + printf( +" geometers call the `orientation' and `incircle' tests. If the floating-\n" +); + printf( +" point arithmetic of your machine conforms to the IEEE 754 standard (as\n"); + printf( +" most workstations do), and does not use extended precision internal\n"); + printf( +" floating-point registers, then your output is guaranteed to be an\n"); + printf( +" absolutely true Delaunay or constrained Delaunay triangulation, roundoff\n" +); + printf( +" error notwithstanding. The word `adaptive' implies that these arithmetic\n" +); + printf( +" routines compute the result only to the precision necessary to guarantee\n" +); + printf( +" correctness, so they are usually nearly as fast as their approximate\n"); + printf(" counterparts.\n\n"); + printf( +" Pentiums have extended precision floating-point registers. These must be\n" +); + printf( +" reconfigured so their precision is reduced to memory precision. Triangle\n" +); + printf( +" does this if it is compiled correctly. See the makefile for details.\n"); + printf("\n"); + printf( +" The exact tests can be disabled with the -X switch. On most inputs, this\n" +); + printf( +" switch reduces the computation time by about eight percent--it's not\n"); + printf( +" worth the risk. There are rare difficult inputs (having many collinear\n"); + printf( +" and cocircular vertices), however, for which the difference in speed\n"); + printf( +" could be a factor of two. Be forewarned that these are precisely the\n"); + printf( +" inputs most likely to cause errors if you use the -X switch. Hence, the\n" +); + printf(" -X switch is not recommended.\n\n"); + printf( +" Unfortunately, the exact tests don't solve every numerical problem.\n"); + printf( +" Exact arithmetic is not used to compute the positions of new vertices,\n"); + printf( +" because the bit complexity of vertex coordinates would grow without\n"); + printf( +" bound. Hence, segment intersections aren't computed exactly; in very\n"); + printf( +" unusual cases, roundoff error in computing an intersection point might\n"); + printf( +" actually lead to an inverted triangle and an invalid triangulation.\n"); + printf( +" (This is one reason to compute your own intersection points in your .poly\n" +); + printf( +" files.) Similarly, exact arithmetic is not used to compute the vertices\n" +); + printf(" of the Voronoi diagram.\n\n"); + printf( +" Another pair of problems not solved by the exact arithmetic routines is\n"); + printf( +" underflow and overflow. If Triangle is compiled for double precision\n"); + printf( +" arithmetic, I believe that Triangle's geometric predicates work correctly\n" +); + printf( +" if the exponent of every input coordinate falls in the range [-148, 201].\n" +); + printf( +" Underflow can silently prevent the orientation and incircle tests from\n"); + printf( +" being performed exactly, while overflow typically causes a floating\n"); + printf(" exception.\n\n"); + printf("Calling Triangle from Another Program:\n\n"); + printf(" Read the file triangle.h for details.\n\n"); + printf("Troubleshooting:\n\n"); + printf(" Please read this section before mailing me bugs.\n\n"); + printf(" `My output mesh has no triangles!'\n\n"); + printf( +" If you're using a PSLG, you've probably failed to specify a proper set\n" +); + printf( +" of bounding segments, or forgotten to use the -c switch. Or you may\n"); + printf( +" have placed a hole badly, thereby eating all your triangles. To test\n"); + printf(" these possibilities, try again with the -c and -O switches.\n"); + printf( +" Alternatively, all your input vertices may be collinear, in which case\n" +); + printf(" you can hardly expect to triangulate them.\n\n"); + printf(" `Triangle doesn't terminate, or just crashes.'\n\n"); + printf( +" Bad things can happen when triangles get so small that the distance\n"); + printf( +" between their vertices isn't much larger than the precision of your\n"); + printf( +" machine's arithmetic. If you've compiled Triangle for single-precision\n" +); + printf( +" arithmetic, you might do better by recompiling it for double-precision.\n" +); + printf( +" Then again, you might just have to settle for more lenient constraints\n" +); + printf( +" on the minimum angle and the maximum area than you had planned.\n"); + printf("\n"); + printf( +" You can minimize precision problems by ensuring that the origin lies\n"); + printf( +" inside your vertex set, or even inside the densest part of your\n"); + printf( +" mesh. If you're triangulating an object whose x coordinates all fall\n"); + printf( +" between 6247133 and 6247134, you're not leaving much floating-point\n"); + printf(" precision for Triangle to work with.\n\n"); + printf( +" Precision problems can occur covertly if the input PSLG contains two\n"); + printf( +" segments that meet (or intersect) at an extremely small angle, or if\n"); + printf( +" such an angle is introduced by the -c switch. If you don't realize\n"); + printf( +" that a tiny angle is being formed, you might never discover why\n"); + printf( +" Triangle is crashing. To check for this possibility, use the -S switch\n" +); + printf( +" (with an appropriate limit on the number of Steiner points, found by\n"); + printf( +" trial-and-error) to stop Triangle early, and view the output .poly file\n" +); + printf( +" with Show Me (described below). Look carefully for regions where dense\n" +); + printf( +" clusters of vertices are forming and for small angles between segments.\n" +); + printf( +" Zoom in closely, as such segments might look like a single segment from\n" +); + printf(" a distance.\n\n"); + printf( +" If some of the input values are too large, Triangle may suffer a\n"); + printf( +" floating exception due to overflow when attempting to perform an\n"); + printf( +" orientation or incircle test. (Read the section on exact arithmetic\n"); + printf( +" above.) Again, I recommend compiling Triangle for double (rather\n"); + printf(" than single) precision arithmetic.\n\n"); + printf( +" Unexpected problems can arise if you use quality meshing (-q, -a, or\n"); + printf( +" -u) with an input that is not segment-bounded--that is, if your input\n"); + printf( +" is a vertex set, or you're using the -c switch. If the convex hull of\n" +); + printf( +" your input vertices has collinear vertices on its boundary, an input\n"); + printf( +" vertex that you think lies on the convex hull might actually lie just\n"); + printf( +" inside the convex hull. If so, an extremely thin triangle is formed by\n" +); + printf( +" the vertex and the convex hull edge beside it. When Triangle tries to\n" +); + printf( +" refine the mesh to enforce angle and area constraints, extremely tiny\n"); + printf( +" triangles may be formed, or Triangle may fail because of insufficient\n"); + printf(" floating-point precision.\n\n"); + printf( +" `The numbering of the output vertices doesn't match the input vertices.'\n" +); + printf("\n"); + printf( +" You may have had duplicate input vertices, or you may have eaten some\n"); + printf( +" of your input vertices with a hole, or by placing them outside the area\n" +); + printf( +" enclosed by segments. In any case, you can solve the problem by not\n"); + printf(" using the -j switch.\n\n"); + printf( +" `Triangle executes without incident, but when I look at the resulting\n"); + printf( +" mesh, it has overlapping triangles or other geometric inconsistencies.'\n"); + printf("\n"); + printf( +" If you select the -X switch, Triangle occasionally makes mistakes due\n"); + printf( +" to floating-point roundoff error. Although these errors are rare,\n"); + printf( +" don't use the -X switch. If you still have problems, please report the\n" +); + printf(" bug.\n\n"); + printf( +" Strange things can happen if you've taken liberties with your PSLG. Do\n"); + printf( +" you have a vertex lying in the middle of a segment? Triangle sometimes\n"); + printf( +" copes poorly with that sort of thing. Do you want to lay out a collinear\n" +); + printf( +" row of evenly spaced, segment-connected vertices? Have you simply\n"); + printf( +" defined one long segment connecting the leftmost vertex to the rightmost\n" +); + printf( +" vertex, and a bunch of vertices lying along it? This method occasionally\n" +); + printf( +" works, especially with horizontal and vertical lines, but often it\n"); + printf( +" doesn't, and you'll have to connect each adjacent pair of vertices with a\n" +); + printf(" separate segment. If you don't like it, tough.\n\n"); + printf( +" Furthermore, if you have segments that intersect other than at their\n"); + printf( +" endpoints, try not to let the intersections fall extremely close to PSLG\n" +); + printf(" vertices or each other.\n\n"); + printf( +" If you have problems refining a triangulation not produced by Triangle:\n"); + printf( +" Are you sure the triangulation is geometrically valid? Is it formatted\n"); + printf( +" correctly for Triangle? Are the triangles all listed so the first three\n" +); + printf( +" vertices are their corners in counterclockwise order? Are all of the\n"); + printf( +" triangles constrained Delaunay? Triangle's Delaunay refinement algorithm\n" +); + printf(" assumes that it starts with a CDT.\n\n"); + printf("Show Me:\n\n"); + printf( +" Triangle comes with a separate program named `Show Me', whose primary\n"); + printf( +" purpose is to draw meshes on your screen or in PostScript. Its secondary\n" +); + printf( +" purpose is to check the validity of your input files, and do so more\n"); + printf( +" thoroughly than Triangle does. Unlike Triangle, Show Me requires that\n"); + printf(" you have the X Windows system.\n\n"); + printf("Triangle on the Web:\n\n"); + printf( +" To see an illustrated, updated version of these instructions, check out\n"); + printf("\n"); + printf(" http://www.cs.cmu.edu/~quake/triangle.html\n"); + printf("\n"); + printf("A Brief Plea:\n"); + printf("\n"); + printf( +" If you use Triangle, and especially if you use it to accomplish real\n"); + printf( +" work, I would like very much to hear from you. A short letter or email\n"); + printf( +" (to jrs@cs.berkeley.edu) describing how you use Triangle will mean a lot\n" +); + printf( +" to me. The more people I know are using this program, the more easily I\n" +); + printf( +" can justify spending time on improvements, which in turn will benefit\n"); + printf( +" you. Also, I can put you on a list to receive email whenever a new\n"); + printf(" version of Triangle is available.\n\n"); + printf( +" If you use a mesh generated by Triangle in a publication, please include\n" +); + printf(" an acknowledgment as well.\n\n"); + printf("Research credit:\n\n"); + printf( +" Of course, I can take credit for only a fraction of the ideas that made\n"); + printf( +" this mesh generator possible. Triangle owes its existence to the efforts\n" +); + printf( +" of many fine computational geometers and other researchers, including\n"); + printf( +" Marshall Bern, L. Paul Chew, Boris Delaunay, Rex A. Dwyer, David\n"); + printf( +" Eppstein, Steven Fortune, Leonidas J. Guibas, Donald E. Knuth, C. L.\n"); + printf( +" Lawson, Der-Tsai Lee, Ernst P. Mucke, Douglas M. Priest, Jim Ruppert,\n"); + printf( +" Isaac Saias, Bruce J. Schachter, Micha Sharir, Daniel D. Sleator, Jorge\n"); + printf( +" Stolfi, Robert E. Tarjan, Christopher J. Van Wyk, and Binhai Zhu. See\n"); + printf( +" the comments at the beginning of the source code for references.\n"); + exit(0); +} + +#endif /* not TRILIBRARY */ + +/*****************************************************************************/ +/* */ +/* internalerror() Ask the user to send me the defective product. Exit. */ +/* */ +/*****************************************************************************/ + +void internalerror() +{ + fflush(stdout); + fprintf(stderr, " Please report this bug to jrs@cs.berkeley.edu\n"); + fprintf(stderr, " Include the message above, your input data set, and the exact\n"); + fprintf(stderr, " command line you used to run Triangle.\n"); + exit(1); +} + +/*****************************************************************************/ +/* */ +/* parsecommandline() Read the command line, identify switches, and set */ +/* up options and file names. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void parsecommandline(int argc, char **argv, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +void parsecommandline(argc, argv, b) +int argc; +char **argv; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ +#ifdef TRILIBRARY +#define STARTINDEX 0 +#else /* not TRILIBRARY */ +#define STARTINDEX 1 + int increment; + int meshnumber; +#endif /* not TRILIBRARY */ + int i, j, k; + char workstring[FILENAMESIZE]; + + b->poly = b->refine = b->quality = 0; + b->vararea = b->fixedarea = b->usertest = 0; + b->regionattrib = b->convex = b->weighted = b->jettison = 0; + b->firstnumber = 1; + b->edgesout = b->voronoi = b->neighbors = b->geomview = 0; + b->nobound = b->nopolywritten = b->nonodewritten = b->noelewritten = 0; + b->noiterationnum = 0; + b->noholes = b->noexact = 0; + b->incremental = b->sweepline = 0; + b->dwyer = 1; + b->splitseg = 0; + b->docheck = 0; + b->nobisect = 0; + b->nolenses = 0; + b->steiner = -1; + b->order = 1; + b->minangle = 0.0; + b->maxarea = -1.0; + b->quiet = b->verbose = 0; +#ifndef TRILIBRARY + b->innodefilename[0] = '\0'; +#endif /* not TRILIBRARY */ + + for (i = STARTINDEX; i < argc; i++) { +#ifndef TRILIBRARY + if (argv[i][0] == '-') { +#endif /* not TRILIBRARY */ + for (j = STARTINDEX; argv[i][j] != '\0'; j++) { + if (argv[i][j] == 'p') { + b->poly = 1; + } +#ifndef CDT_ONLY + if (argv[i][j] == 'r') { + b->refine = 1; + } + if (argv[i][j] == 'q') { + b->quality = 1; + if (((argv[i][j + 1] >= '0') && (argv[i][j + 1] <= '9')) || + (argv[i][j + 1] == '.')) { + k = 0; + while (((argv[i][j + 1] >= '0') && (argv[i][j + 1] <= '9')) || + (argv[i][j + 1] == '.')) { + j++; + workstring[k] = argv[i][j]; + k++; + } + workstring[k] = '\0'; + b->minangle = (REAL) strtod(workstring, (char **) NULL); + } else { + b->minangle = 20.0; + } + } + if (argv[i][j] == 'a') { + b->quality = 1; + if (((argv[i][j + 1] >= '0') && (argv[i][j + 1] <= '9')) || + (argv[i][j + 1] == '.')) { + b->fixedarea = 1; + k = 0; + while (((argv[i][j + 1] >= '0') && (argv[i][j + 1] <= '9')) || + (argv[i][j + 1] == '.')) { + j++; + workstring[k] = argv[i][j]; + k++; + } + workstring[k] = '\0'; + b->maxarea = (REAL) strtod(workstring, (char **) NULL); + if (b->maxarea <= 0.0) { + fprintf(stderr, "Error: Maximum area must be greater than zero.\n"); + exit(1); + } + } else { + b->vararea = 1; + } + } + if (argv[i][j] == 'u') { + b->quality = 1; + b->usertest = 1; + } +#endif /* not CDT_ONLY */ + if (argv[i][j] == 'A') { + b->regionattrib = 1; + } + if (argv[i][j] == 'c') { + b->convex = 1; + } + if (argv[i][j] == 'w') { + b->weighted = 1; + } + if (argv[i][j] == 'W') { + b->weighted = 2; + } + if (argv[i][j] == 'j') { + b->jettison = 1; + } + if (argv[i][j] == 'z') { + b->firstnumber = 0; + } + if (argv[i][j] == 'e') { + b->edgesout = 1; + } + if (argv[i][j] == 'v') { + b->voronoi = 1; + } + if (argv[i][j] == 'n') { + b->neighbors = 1; + } + if (argv[i][j] == 'g') { + b->geomview = 1; + } + if (argv[i][j] == 'B') { + b->nobound = 1; + } + if (argv[i][j] == 'P') { + b->nopolywritten = 1; + } + if (argv[i][j] == 'N') { + b->nonodewritten = 1; + } + if (argv[i][j] == 'E') { + b->noelewritten = 1; + } +#ifndef TRILIBRARY + if (argv[i][j] == 'I') { + b->noiterationnum = 1; + } +#endif /* not TRILIBRARY */ + if (argv[i][j] == 'O') { + b->noholes = 1; + } + if (argv[i][j] == 'X') { + b->noexact = 1; + } + if (argv[i][j] == 'o') { + if (argv[i][j + 1] == '2') { + j++; + b->order = 2; + } + } +#ifndef CDT_ONLY + if (argv[i][j] == 'Y') { + b->nobisect++; + } + if (argv[i][j] == 'S') { + b->steiner = 0; + while ((argv[i][j + 1] >= '0') && (argv[i][j + 1] <= '9')) { + j++; + b->steiner = b->steiner * 10 + (int) (argv[i][j] - '0'); + } + } +#endif /* not CDT_ONLY */ +#ifndef REDUCED + if (argv[i][j] == 'i') { + b->incremental = 1; + } + if (argv[i][j] == 'F') { + b->sweepline = 1; + } +#endif /* not REDUCED */ + if (argv[i][j] == 'l') { + b->dwyer = 0; + } +#ifndef REDUCED +#ifndef CDT_ONLY + if (argv[i][j] == 's') { + b->splitseg = 1; + } + if (argv[i][j] == 'L') { + b->nolenses = 1; + } +#endif /* not CDT_ONLY */ + if (argv[i][j] == 'C') { + b->docheck = 1; + } +#endif /* not REDUCED */ + if (argv[i][j] == 'Q') { + b->quiet = 1; + } + if (argv[i][j] == 'V') { + b->verbose++; + } +#ifndef TRILIBRARY + if ((argv[i][j] == 'h') || (argv[i][j] == 'H') || + (argv[i][j] == '?')) { + info(); + } +#endif /* not TRILIBRARY */ + } +#ifndef TRILIBRARY + } else { + strncpy(b->innodefilename, argv[i], FILENAMESIZE - 1); + b->innodefilename[FILENAMESIZE - 1] = '\0'; + } +#endif /* not TRILIBRARY */ + } +#ifndef TRILIBRARY + if (b->innodefilename[0] == '\0') { + syntax(); + } + if (!strcmp(&b->innodefilename[strlen(b->innodefilename) - 5], ".node")) { + b->innodefilename[strlen(b->innodefilename) - 5] = '\0'; + } + if (!strcmp(&b->innodefilename[strlen(b->innodefilename) - 5], ".poly")) { + b->innodefilename[strlen(b->innodefilename) - 5] = '\0'; + b->poly = 1; + } +#ifndef CDT_ONLY + if (!strcmp(&b->innodefilename[strlen(b->innodefilename) - 4], ".ele")) { + b->innodefilename[strlen(b->innodefilename) - 4] = '\0'; + b->refine = 1; + } + if (!strcmp(&b->innodefilename[strlen(b->innodefilename) - 5], ".area")) { + b->innodefilename[strlen(b->innodefilename) - 5] = '\0'; + b->refine = 1; + b->quality = 1; + b->vararea = 1; + } +#endif /* not CDT_ONLY */ +#endif /* not TRILIBRARY */ + b->usesegments = b->poly || b->refine || b->quality || b->convex; + b->goodangle = cos(b->minangle * PI / 180.0); + b->goodangle *= b->goodangle; + if (b->refine && b->noiterationnum) { + fprintf(stderr, + "Error: You cannot use the -I switch when refining a triangulation.\n"); + exit(1); + } + /* Be careful not to allocate space for element area constraints that */ + /* will never be assigned any value (other than the default -1.0). */ + if (!b->refine && !b->poly) { + b->vararea = 0; + } + /* Be careful not to add an extra attribute to each element unless the */ + /* input supports it (PSLG in, but not refining a preexisting mesh). */ + if (b->refine || !b->poly) { + b->regionattrib = 0; + } + /* Regular/weighted triangulations are incompatible with PSLGs */ + /* and meshing. */ + if (b->weighted && (b->poly || b->quality)) { + b->weighted = 0; + if (!b->quiet) { + fprintf(stderr, "Warning: weighted triangulations (-w, -W) are incompatible\n"); + fprintf(stderr, " with PSLGs (-p) and meshing (-q, -a, -u). Weights ignored.\n" + ); + } + } + if (b->jettison && b->nonodewritten && !b->quiet) { + fprintf(stderr, "Warning: -j and -N switches are somewhat incompatible.\n"); + fprintf(stderr, " If any vertices are jettisoned, you will need the output\n"); + fprintf(stderr, " .node file to reconstruct the new node indices."); + } + +#ifndef TRILIBRARY + strcpy(b->inpolyfilename, b->innodefilename); + strcpy(b->inelefilename, b->innodefilename); + strcpy(b->areafilename, b->innodefilename); + increment = 0; + strcpy(workstring, b->innodefilename); + j = 1; + while (workstring[j] != '\0') { + if ((workstring[j] == '.') && (workstring[j + 1] != '\0')) { + increment = j + 1; + } + j++; + } + meshnumber = 0; + if (increment > 0) { + j = increment; + do { + if ((workstring[j] >= '0') && (workstring[j] <= '9')) { + meshnumber = meshnumber * 10 + (int) (workstring[j] - '0'); + } else { + increment = 0; + } + j++; + } while (workstring[j] != '\0'); + } + if (b->noiterationnum) { + strcpy(b->outnodefilename, b->innodefilename); + strcpy(b->outelefilename, b->innodefilename); + strcpy(b->edgefilename, b->innodefilename); + strcpy(b->vnodefilename, b->innodefilename); + strcpy(b->vedgefilename, b->innodefilename); + strcpy(b->neighborfilename, b->innodefilename); + strcpy(b->offfilename, b->innodefilename); + strcat(b->outnodefilename, ".node"); + strcat(b->outelefilename, ".ele"); + strcat(b->edgefilename, ".edge"); + strcat(b->vnodefilename, ".v.node"); + strcat(b->vedgefilename, ".v.edge"); + strcat(b->neighborfilename, ".neigh"); + strcat(b->offfilename, ".off"); + } else if (increment == 0) { + strcpy(b->outnodefilename, b->innodefilename); + strcpy(b->outpolyfilename, b->innodefilename); + strcpy(b->outelefilename, b->innodefilename); + strcpy(b->edgefilename, b->innodefilename); + strcpy(b->vnodefilename, b->innodefilename); + strcpy(b->vedgefilename, b->innodefilename); + strcpy(b->neighborfilename, b->innodefilename); + strcpy(b->offfilename, b->innodefilename); + strcat(b->outnodefilename, ".1.node"); + strcat(b->outpolyfilename, ".1.poly"); + strcat(b->outelefilename, ".1.ele"); + strcat(b->edgefilename, ".1.edge"); + strcat(b->vnodefilename, ".1.v.node"); + strcat(b->vedgefilename, ".1.v.edge"); + strcat(b->neighborfilename, ".1.neigh"); + strcat(b->offfilename, ".1.off"); + } else { + workstring[increment] = '%'; + workstring[increment + 1] = 'd'; + workstring[increment + 2] = '\0'; + sprintf(b->outnodefilename, workstring, meshnumber + 1); + strcpy(b->outpolyfilename, b->outnodefilename); + strcpy(b->outelefilename, b->outnodefilename); + strcpy(b->edgefilename, b->outnodefilename); + strcpy(b->vnodefilename, b->outnodefilename); + strcpy(b->vedgefilename, b->outnodefilename); + strcpy(b->neighborfilename, b->outnodefilename); + strcpy(b->offfilename, b->outnodefilename); + strcat(b->outnodefilename, ".node"); + strcat(b->outpolyfilename, ".poly"); + strcat(b->outelefilename, ".ele"); + strcat(b->edgefilename, ".edge"); + strcat(b->vnodefilename, ".v.node"); + strcat(b->vedgefilename, ".v.edge"); + strcat(b->neighborfilename, ".neigh"); + strcat(b->offfilename, ".off"); + } + strcat(b->innodefilename, ".node"); + strcat(b->inpolyfilename, ".poly"); + strcat(b->inelefilename, ".ele"); + strcat(b->areafilename, ".area"); +#endif /* not TRILIBRARY */ +} + +/** **/ +/** **/ +/********* User interaction routines begin here *********/ + +/********* Debugging routines begin here *********/ +/** **/ +/** **/ + +/*****************************************************************************/ +/* */ +/* printtriangle() Print out the details of an oriented triangle. */ +/* */ +/* I originally wrote this procedure to simplify debugging; it can be */ +/* called directly from the debugger, and presents information about an */ +/* oriented triangle in digestible form. It's also used when the */ +/* highest level of verbosity (`-VVV') is specified. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void printtriangle(struct mesh *m, struct behavior *b, struct otri *t) +#else /* not ANSI_DECLARATORS */ +void printtriangle(m, b, t) +struct mesh *m; +struct behavior *b; +struct otri *t; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri printtri; + struct osub printsh; + vertex printvertex; + + fprintf(stderr, "triangle x%lx with orientation %d:\n", (unsigned long) t->tri, + t->orient); + decode(t->tri[0], printtri); + if (printtri.tri == m->dummytri) { + fprintf(stderr, " [0] = Outer space\n"); + } else { + fprintf(stderr, " [0] = x%lx %d\n", (unsigned long) printtri.tri, + printtri.orient); + } + decode(t->tri[1], printtri); + if (printtri.tri == m->dummytri) { + fprintf(stderr, " [1] = Outer space\n"); + } else { + fprintf(stderr, " [1] = x%lx %d\n", (unsigned long) printtri.tri, + printtri.orient); + } + decode(t->tri[2], printtri); + if (printtri.tri == m->dummytri) { + fprintf(stderr, " [2] = Outer space\n"); + } else { + fprintf(stderr, " [2] = x%lx %d\n", (unsigned long) printtri.tri, + printtri.orient); + } + + org(*t, printvertex); + if (printvertex == (vertex) NULL) + fprintf(stderr, " Origin[%d] = NULL\n", (t->orient + 1) % 3 + 3); + else + fprintf(stderr, " Origin[%d] = x%lx (%.12g, %.12g)\n", + (t->orient + 1) % 3 + 3, (unsigned long) printvertex, + printvertex[0], printvertex[1]); + dest(*t, printvertex); + if (printvertex == (vertex) NULL) + fprintf(stderr, " Dest [%d] = NULL\n", (t->orient + 2) % 3 + 3); + else + fprintf(stderr, " Dest [%d] = x%lx (%.12g, %.12g)\n", + (t->orient + 2) % 3 + 3, (unsigned long) printvertex, + printvertex[0], printvertex[1]); + apex(*t, printvertex); + if (printvertex == (vertex) NULL) + fprintf(stderr, " Apex [%d] = NULL\n", t->orient + 3); + else + fprintf(stderr, " Apex [%d] = x%lx (%.12g, %.12g)\n", + t->orient + 3, (unsigned long) printvertex, + printvertex[0], printvertex[1]); + + if (b->usesegments) { + sdecode(t->tri[6], printsh); + if (printsh.ss != m->dummysub) { + fprintf(stderr, " [6] = x%lx %d\n", (unsigned long) printsh.ss, + printsh.ssorient); + } + sdecode(t->tri[7], printsh); + if (printsh.ss != m->dummysub) { + fprintf(stderr, " [7] = x%lx %d\n", (unsigned long) printsh.ss, + printsh.ssorient); + } + sdecode(t->tri[8], printsh); + if (printsh.ss != m->dummysub) { + fprintf(stderr, " [8] = x%lx %d\n", (unsigned long) printsh.ss, + printsh.ssorient); + } + } + + if (b->vararea) { + fprintf(stderr, " Area constraint: %.4g\n", areabound(*t)); + } +} + +/*****************************************************************************/ +/* */ +/* printsubseg() Print out the details of an oriented subsegment. */ +/* */ +/* I originally wrote this procedure to simplify debugging; it can be */ +/* called directly from the debugger, and presents information about an */ +/* oriented subsegment in digestible form. It's also used when the highest */ +/* level of verbosity (`-VVV') is specified. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void printsubseg(struct mesh *m, struct behavior *b, struct osub *s) +#else /* not ANSI_DECLARATORS */ +void printsubseg(m, b, s) +struct mesh *m; +struct behavior *b; +struct osub *s; +#endif /* not ANSI_DECLARATORS */ + +{ + struct osub printsh; + struct otri printtri; + vertex printvertex; + + fprintf(stderr, "subsegment x%lx with orientation %d and mark %d:\n", + (unsigned long) s->ss, s->ssorient, mark(*s)); + sdecode(s->ss[0], printsh); + if (printsh.ss == m->dummysub) { + fprintf(stderr, " [0] = No subsegment\n"); + } else { + fprintf(stderr, " [0] = x%lx %d\n", (unsigned long) printsh.ss, + printsh.ssorient); + } + sdecode(s->ss[1], printsh); + if (printsh.ss == m->dummysub) { + fprintf(stderr, " [1] = No subsegment\n"); + } else { + fprintf(stderr, " [1] = x%lx %d\n", (unsigned long) printsh.ss, + printsh.ssorient); + } + + sorg(*s, printvertex); + if (printvertex == (vertex) NULL) + fprintf(stderr, " Origin[%d] = NULL\n", 2 + s->ssorient); + else + fprintf(stderr, " Origin[%d] = x%lx (%.12g, %.12g)\n", + 2 + s->ssorient, (unsigned long) printvertex, + printvertex[0], printvertex[1]); + sdest(*s, printvertex); + if (printvertex == (vertex) NULL) + fprintf(stderr, " Dest [%d] = NULL\n", 3 - s->ssorient); + else + fprintf(stderr, " Dest [%d] = x%lx (%.12g, %.12g)\n", + 3 - s->ssorient, (unsigned long) printvertex, + printvertex[0], printvertex[1]); + + decode(s->ss[4], printtri); + if (printtri.tri == m->dummytri) { + fprintf(stderr, " [4] = Outer space\n"); + } else { + fprintf(stderr, " [4] = x%lx %d\n", (unsigned long) printtri.tri, + printtri.orient); + } + decode(s->ss[5], printtri); + if (printtri.tri == m->dummytri) { + fprintf(stderr, " [5] = Outer space\n"); + } else { + fprintf(stderr, " [5] = x%lx %d\n", (unsigned long) printtri.tri, + printtri.orient); + } +} + +/** **/ +/** **/ +/********* Debugging routines end here *********/ + +/********* Memory management routines begin here *********/ +/** **/ +/** **/ + +/*****************************************************************************/ +/* */ +/* poolrestart() Deallocate all items in a pool. */ +/* */ +/* The pool is returned to its starting state, except that no memory is */ +/* freed to the operating system. Rather, the previously allocated blocks */ +/* are ready to be reused. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void poolrestart(struct memorypool *pool) +#else /* not ANSI_DECLARATORS */ +void poolrestart(pool) +struct memorypool *pool; +#endif /* not ANSI_DECLARATORS */ + +{ + unsigned long alignptr; + + pool->items = 0; + pool->maxitems = 0; + + /* Set the currently active block. */ + pool->nowblock = pool->firstblock; + /* Find the first item in the pool. Increment by the size of (VOID *). */ + alignptr = (unsigned long) (pool->nowblock + 1); + /* Align the item on an `alignbytes'-byte boundary. */ + pool->nextitem = (VOID *) + (alignptr + (unsigned long) pool->alignbytes - + (alignptr % (unsigned long) pool->alignbytes)); + /* There are lots of unallocated items left in this block. */ + pool->unallocateditems = pool->itemsperblock; + /* The stack of deallocated items is empty. */ + pool->deaditemstack = (VOID *) NULL; +} + +/*****************************************************************************/ +/* */ +/* poolinit() Initialize a pool of memory for allocation of items. */ +/* */ +/* This routine initializes the machinery for allocating items. A `pool' */ +/* is created whose records have size at least `bytecount'. Items will be */ +/* allocated in `itemcount'-item blocks. Each item is assumed to be a */ +/* collection of words, and either pointers or floating-point values are */ +/* assumed to be the "primary" word type. (The "primary" word type is used */ +/* to determine alignment of items.) If `alignment' isn't zero, all items */ +/* will be `alignment'-byte aligned in memory. `alignment' must be either */ +/* a multiple or a factor of the primary word size; powers of two are safe. */ +/* `alignment' is normally used to create a few unused bits at the bottom */ +/* of each item's pointer, in which information may be stored. */ +/* */ +/* Don't change this routine unless you understand it. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void poolinit(struct memorypool *pool, int bytecount, int itemcount, + enum wordtype wtype, int alignment) +#else /* not ANSI_DECLARATORS */ +void poolinit(pool, bytecount, itemcount, wtype, alignment) +struct memorypool *pool; +int bytecount; +int itemcount; +enum wordtype wtype; +int alignment; +#endif /* not ANSI_DECLARATORS */ + +{ + int wordsize; + + /* Initialize values in the pool. */ + pool->itemwordtype = wtype; + wordsize = (pool->itemwordtype == POINTER) ? sizeof(VOID *) : sizeof(REAL); + /* Find the proper alignment, which must be at least as large as: */ + /* - The parameter `alignment'. */ + /* - The primary word type, to avoid unaligned accesses. */ + /* - sizeof(VOID *), so the stack of dead items can be maintained */ + /* without unaligned accesses. */ + if (alignment > wordsize) { + pool->alignbytes = alignment; + } else { + pool->alignbytes = wordsize; + } + if (sizeof(VOID *) > pool->alignbytes) { + pool->alignbytes = sizeof(VOID *); + } + pool->itemwords = ((bytecount + pool->alignbytes - 1) / pool->alignbytes) + * (pool->alignbytes / wordsize); + pool->itembytes = pool->itemwords * wordsize; + pool->itemsperblock = itemcount; + + /* Allocate a block of items. Space for `itemsperblock' items and one */ + /* pointer (to point to the next block) are allocated, as well as space */ + /* to ensure alignment of the items. */ + pool->firstblock = (VOID **) trimalloc(pool->itemsperblock * pool->itembytes + + sizeof(VOID *) + pool->alignbytes); + /* Set the next block pointer to NULL. */ + *(pool->firstblock) = (VOID *) NULL; + poolrestart(pool); +} + +/*****************************************************************************/ +/* */ +/* pooldeinit() Free to the operating system all memory taken by a pool. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void pooldeinit(struct memorypool *pool) +#else /* not ANSI_DECLARATORS */ +void pooldeinit(pool) +struct memorypool *pool; +#endif /* not ANSI_DECLARATORS */ + +{ + while (pool->firstblock != (VOID **) NULL) { + pool->nowblock = (VOID **) *(pool->firstblock); + trifree((VOID *) pool->firstblock); + pool->firstblock = pool->nowblock; + } +} + +/*****************************************************************************/ +/* */ +/* poolalloc() Allocate space for an item. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +VOID *poolalloc(struct memorypool *pool) +#else /* not ANSI_DECLARATORS */ +VOID *poolalloc(pool) +struct memorypool *pool; +#endif /* not ANSI_DECLARATORS */ + +{ + VOID *newitem; + VOID **newblock; + unsigned long alignptr; + + /* First check the linked list of dead items. If the list is not */ + /* empty, allocate an item from the list rather than a fresh one. */ + if (pool->deaditemstack != (VOID *) NULL) { + newitem = pool->deaditemstack; /* Take first item in list. */ + pool->deaditemstack = * (VOID **) pool->deaditemstack; + } else { + /* Check if there are any free items left in the current block. */ + if (pool->unallocateditems == 0) { + /* Check if another block must be allocated. */ + if (*(pool->nowblock) == (VOID *) NULL) { + /* Allocate a new block of items, pointed to by the previous block. */ + newblock = (VOID **) trimalloc(pool->itemsperblock * pool->itembytes + + sizeof(VOID *) + pool->alignbytes); + *(pool->nowblock) = (VOID *) newblock; + /* The next block pointer is NULL. */ + *newblock = (VOID *) NULL; + } + /* Move to the new block. */ + pool->nowblock = (VOID **) *(pool->nowblock); + /* Find the first item in the block. */ + /* Increment by the size of (VOID *). */ + alignptr = (unsigned long) (pool->nowblock + 1); + /* Align the item on an `alignbytes'-byte boundary. */ + pool->nextitem = (VOID *) + (alignptr + (unsigned long) pool->alignbytes - + (alignptr % (unsigned long) pool->alignbytes)); + /* There are lots of unallocated items left in this block. */ + pool->unallocateditems = pool->itemsperblock; + } + /* Allocate a new item. */ + newitem = pool->nextitem; + /* Advance `nextitem' pointer to next free item in block. */ + if (pool->itemwordtype == POINTER) { + pool->nextitem = (VOID *) ((VOID **) pool->nextitem + pool->itemwords); + } else { + pool->nextitem = (VOID *) ((REAL *) pool->nextitem + pool->itemwords); + } + pool->unallocateditems--; + pool->maxitems++; + } + pool->items++; + return newitem; +} + +/*****************************************************************************/ +/* */ +/* pooldealloc() Deallocate space for an item. */ +/* */ +/* The deallocated space is stored in a queue for later reuse. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void pooldealloc(struct memorypool *pool, VOID *dyingitem) +#else /* not ANSI_DECLARATORS */ +void pooldealloc(pool, dyingitem) +struct memorypool *pool; +VOID *dyingitem; +#endif /* not ANSI_DECLARATORS */ + +{ + /* Push freshly killed item onto stack. */ + *((VOID **) dyingitem) = pool->deaditemstack; + pool->deaditemstack = dyingitem; + pool->items--; +} + +/*****************************************************************************/ +/* */ +/* traversalinit() Prepare to traverse the entire list of items. */ +/* */ +/* This routine is used in conjunction with traverse(). */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void traversalinit(struct memorypool *pool) +#else /* not ANSI_DECLARATORS */ +void traversalinit(pool) +struct memorypool *pool; +#endif /* not ANSI_DECLARATORS */ + +{ + unsigned long alignptr; + + /* Begin the traversal in the first block. */ + pool->pathblock = pool->firstblock; + /* Find the first item in the block. Increment by the size of (VOID *). */ + alignptr = (unsigned long) (pool->pathblock + 1); + /* Align with item on an `alignbytes'-byte boundary. */ + pool->pathitem = (VOID *) + (alignptr + (unsigned long) pool->alignbytes - + (alignptr % (unsigned long) pool->alignbytes)); + /* Set the number of items left in the current block. */ + pool->pathitemsleft = pool->itemsperblock; +} + +/*****************************************************************************/ +/* */ +/* traverse() Find the next item in the list. */ +/* */ +/* This routine is used in conjunction with traversalinit(). Be forewarned */ +/* that this routine successively returns all items in the list, including */ +/* deallocated ones on the deaditemqueue. It's up to you to figure out */ +/* which ones are actually dead. Why? I don't want to allocate extra */ +/* space just to demarcate dead items. It can usually be done more */ +/* space-efficiently by a routine that knows something about the structure */ +/* of the item. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +VOID *traverse(struct memorypool *pool) +#else /* not ANSI_DECLARATORS */ +VOID *traverse(pool) +struct memorypool *pool; +#endif /* not ANSI_DECLARATORS */ + +{ + VOID *newitem; + unsigned long alignptr; + + /* Stop upon exhausting the list of items. */ + if (pool->pathitem == pool->nextitem) { + return (VOID *) NULL; + } + /* Check whether any untraversed items remain in the current block. */ + if (pool->pathitemsleft == 0) { + /* Find the next block. */ + pool->pathblock = (VOID **) *(pool->pathblock); + /* Find the first item in the block. Increment by the size of (VOID *). */ + alignptr = (unsigned long) (pool->pathblock + 1); + /* Align with item on an `alignbytes'-byte boundary. */ + pool->pathitem = (VOID *) + (alignptr + (unsigned long) pool->alignbytes - + (alignptr % (unsigned long) pool->alignbytes)); + /* Set the number of items left in the current block. */ + pool->pathitemsleft = pool->itemsperblock; + } + newitem = pool->pathitem; + /* Find the next item in the block. */ + if (pool->itemwordtype == POINTER) { + pool->pathitem = (VOID *) ((VOID **) pool->pathitem + pool->itemwords); + } else { + pool->pathitem = (VOID *) ((REAL *) pool->pathitem + pool->itemwords); + } + pool->pathitemsleft--; + return newitem; +} + +/*****************************************************************************/ +/* */ +/* dummyinit() Initialize the triangle that fills "outer space" and the */ +/* omnipresent subsegment. */ +/* */ +/* The triangle that fills "outer space," called `dummytri', is pointed to */ +/* by every triangle and subsegment on a boundary (be it outer or inner) of */ +/* the triangulation. Also, `dummytri' points to one of the triangles on */ +/* the convex hull (until the holes and concavities are carved), making it */ +/* possible to find a starting triangle for point location. */ +/* */ +/* The omnipresent subsegment, `dummysub', is pointed to by every triangle */ +/* or subsegment that doesn't have a full complement of real subsegments */ +/* to point to. */ +/* */ +/* `dummytri' and `dummysub' are generally required to fulfill only a few */ +/* invariants: their vertices must remain NULL and `dummytri' must always */ +/* be bonded (at offset zero) to some triangle on the convex hull of the */ +/* mesh, via a boundary edge. Otherwise, the connections of `dummytri' and */ +/* `dummysub' may change willy-nilly. This makes it possible to avoid */ +/* writing a good deal of special-case code (in the edge flip, for example) */ +/* for dealing with the boundary of the mesh, places where no subsegment is */ +/* present, and so forth. Other entities are frequently bonded to */ +/* `dummytri' and `dummysub' as if they were real mesh entities, with no */ +/* harm done. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void dummyinit(struct mesh *m, struct behavior *b, int trianglewords, + int subsegwords) +#else /* not ANSI_DECLARATORS */ +void dummyinit(m, b, trianglewords, subsegwords) +struct mesh *m; +struct behavior *b; +int trianglewords; +int subsegwords; +#endif /* not ANSI_DECLARATORS */ + +{ + unsigned long alignptr; + + /* Set up `dummytri', the `triangle' that occupies "outer space." */ + m->dummytribase = (triangle *) trimalloc(trianglewords * sizeof(triangle) + + m->triangles.alignbytes); + /* Align `dummytri' on a `triangles.alignbytes'-byte boundary. */ + alignptr = (unsigned long) m->dummytribase; + m->dummytri = (triangle *) + (alignptr + (unsigned long) m->triangles.alignbytes - + (alignptr % (unsigned long) m->triangles.alignbytes)); + /* Initialize the three adjoining triangles to be "outer space." These */ + /* will eventually be changed by various bonding operations, but their */ + /* values don't really matter, as long as they can legally be */ + /* dereferenced. */ + m->dummytri[0] = (triangle) m->dummytri; + m->dummytri[1] = (triangle) m->dummytri; + m->dummytri[2] = (triangle) m->dummytri; + /* Three NULL vertices. */ + m->dummytri[3] = (triangle) NULL; + m->dummytri[4] = (triangle) NULL; + m->dummytri[5] = (triangle) NULL; + + if (b->usesegments) { + /* Set up `dummysub', the omnipresent subsegment pointed to by any */ + /* triangle side or subsegment end that isn't attached to a real */ + /* subsegment. */ + m->dummysubbase = (subseg *) trimalloc(subsegwords * sizeof(subseg) + + m->subsegs.alignbytes); + /* Align `dummysub' on a `subsegs.alignbytes'-byte boundary. */ + alignptr = (unsigned long) m->dummysubbase; + m->dummysub = (subseg *) + (alignptr + (unsigned long) m->subsegs.alignbytes - + (alignptr % (unsigned long) m->subsegs.alignbytes)); + /* Initialize the two adjoining subsegments to be the omnipresent */ + /* subsegment. These will eventually be changed by various bonding */ + /* operations, but their values don't really matter, as long as they */ + /* can legally be dereferenced. */ + m->dummysub[0] = (subseg) m->dummysub; + m->dummysub[1] = (subseg) m->dummysub; + /* Two NULL vertices. */ + m->dummysub[2] = (subseg) NULL; + m->dummysub[3] = (subseg) NULL; + /* Initialize the two adjoining triangles to be "outer space." */ + m->dummysub[4] = (subseg) m->dummytri; + m->dummysub[5] = (subseg) m->dummytri; + /* Set the boundary marker to zero. */ + * (int *) (m->dummysub + 6) = 0; + + /* Initialize the three adjoining subsegments of `dummytri' to be */ + /* the omnipresent subsegment. */ + m->dummytri[6] = (triangle) m->dummysub; + m->dummytri[7] = (triangle) m->dummysub; + m->dummytri[8] = (triangle) m->dummysub; + } +} + +/*****************************************************************************/ +/* */ +/* initializevertexpool() Calculate the size of the vertex data structure */ +/* and initialize its memory pool. */ +/* */ +/* This routine also computes the `vertexmarkindex' and `vertex2triindex' */ +/* indices used to find values within each vertex. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void initializevertexpool(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +void initializevertexpool(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + int vertexsize; + + /* The index within each vertex at which the boundary marker is found, */ + /* followed by the vertex type. Ensure the vertex marker is aligned to */ + /* a sizeof(int)-byte address. */ + m->vertexmarkindex = ((m->mesh_dim + m->nextras) * sizeof(REAL) + + sizeof(int) - 1) / + sizeof(int); + vertexsize = (m->vertexmarkindex + 2) * sizeof(int); + if (b->poly) { + /* The index within each vertex at which a triangle pointer is found. */ + /* Ensure the pointer is aligned to a sizeof(triangle)-byte address. */ + m->vertex2triindex = (vertexsize + sizeof(triangle) - 1) / + sizeof(triangle); + vertexsize = (m->vertex2triindex + 1) * sizeof(triangle); + } + /* Initialize the pool of vertices. */ + poolinit(&m->vertices, vertexsize, VERTEXPERBLOCK, + (sizeof(REAL) >= sizeof(triangle)) ? FLOATINGPOINT : POINTER, 0); +} + +/*****************************************************************************/ +/* */ +/* initializetrisubpools() Calculate the sizes of the triangle and */ +/* subsegment data structures and initialize */ +/* their memory pools. */ +/* */ +/* This routine also computes the `highorderindex', `elemattribindex', and */ +/* `areaboundindex' indices used to find values within each triangle. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void initializetrisubpools(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +void initializetrisubpools(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + int trisize; + + /* The index within each triangle at which the extra nodes (above three) */ + /* associated with high order elements are found. There are three */ + /* pointers to other triangles, three pointers to corners, and possibly */ + /* three pointers to subsegments before the extra nodes. */ + m->highorderindex = 6 + (b->usesegments * 3); + /* The number of bytes occupied by a triangle. */ + trisize = ((b->order + 1) * (b->order + 2) / 2 + (m->highorderindex - 3)) * + sizeof(triangle); + /* The index within each triangle at which its attributes are found, */ + /* where the index is measured in REALs. */ + m->elemattribindex = (trisize + sizeof(REAL) - 1) / sizeof(REAL); + /* The index within each triangle at which the maximum area constraint */ + /* is found, where the index is measured in REALs. Note that if the */ + /* `regionattrib' flag is set, an additional attribute will be added. */ + m->areaboundindex = m->elemattribindex + m->eextras + b->regionattrib; + /* If triangle attributes or an area bound are needed, increase the number */ + /* of bytes occupied by a triangle. */ + if (b->vararea) { + trisize = (m->areaboundindex + 1) * sizeof(REAL); + } else if (m->eextras + b->regionattrib > 0) { + trisize = m->areaboundindex * sizeof(REAL); + } + /* If a Voronoi diagram or triangle neighbor graph is requested, make */ + /* sure there's room to store an integer index in each triangle. This */ + /* integer index can occupy the same space as the subsegment pointers */ + /* or attributes or area constraint or extra nodes. */ + if ((b->voronoi || b->neighbors) && + (trisize < 6 * sizeof(triangle) + sizeof(int))) { + trisize = 6 * sizeof(triangle) + sizeof(int); + } + /* Having determined the memory size of a triangle, initialize the pool. */ + poolinit(&m->triangles, trisize, TRIPERBLOCK, POINTER, 4); + + if (b->usesegments) { + /* Initialize the pool of subsegments. Take into account all six */ + /* pointers and one boundary marker. */ + poolinit(&m->subsegs, 6 * sizeof(triangle) + sizeof(int), SUBSEGPERBLOCK, + POINTER, 4); + + /* Initialize the "outer space" triangle and omnipresent subsegment. */ + dummyinit(m, b, m->triangles.itemwords, m->subsegs.itemwords); + } else { + /* Initialize the "outer space" triangle. */ + dummyinit(m, b, m->triangles.itemwords, 0); + } +} + +/*****************************************************************************/ +/* */ +/* triangledealloc() Deallocate space for a triangle, marking it dead. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void triangledealloc(struct mesh *m, triangle *dyingtriangle) +#else /* not ANSI_DECLARATORS */ +void triangledealloc(m, dyingtriangle) +struct mesh *m; +triangle *dyingtriangle; +#endif /* not ANSI_DECLARATORS */ + +{ + /* Mark the triangle as dead. This makes it possible to detect dead */ + /* triangles when traversing the list of all triangles. */ + killtri(dyingtriangle); + pooldealloc(&m->triangles, (VOID *) dyingtriangle); +} + +/*****************************************************************************/ +/* */ +/* triangletraverse() Traverse the triangles, skipping dead ones. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +triangle *triangletraverse(struct mesh *m) +#else /* not ANSI_DECLARATORS */ +triangle *triangletraverse(m) +struct mesh *m; +#endif /* not ANSI_DECLARATORS */ + +{ + triangle *newtriangle; + + do { + newtriangle = (triangle *) traverse(&m->triangles); + if (newtriangle == (triangle *) NULL) { + return (triangle *) NULL; + } + } while (deadtri(newtriangle)); /* Skip dead ones. */ + return newtriangle; +} + +/*****************************************************************************/ +/* */ +/* subsegdealloc() Deallocate space for a subsegment, marking it dead. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void subsegdealloc(struct mesh *m, subseg *dyingsubseg) +#else /* not ANSI_DECLARATORS */ +void subsegdealloc(m, dyingsubseg) +struct mesh *m; +subseg *dyingsubseg; +#endif /* not ANSI_DECLARATORS */ + +{ + /* Mark the subsegment as dead. This makes it possible to detect dead */ + /* subsegments when traversing the list of all subsegments. */ + killsubseg(dyingsubseg); + pooldealloc(&m->subsegs, (VOID *) dyingsubseg); +} + +/*****************************************************************************/ +/* */ +/* subsegtraverse() Traverse the subsegments, skipping dead ones. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +subseg *subsegtraverse(struct mesh *m) +#else /* not ANSI_DECLARATORS */ +subseg *subsegtraverse(m) +struct mesh *m; +#endif /* not ANSI_DECLARATORS */ + +{ + subseg *newsubseg; + + do { + newsubseg = (subseg *) traverse(&m->subsegs); + if (newsubseg == (subseg *) NULL) { + return (subseg *) NULL; + } + } while (deadsubseg(newsubseg)); /* Skip dead ones. */ + return newsubseg; +} + +/*****************************************************************************/ +/* */ +/* vertexdealloc() Deallocate space for a vertex, marking it dead. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void vertexdealloc(struct mesh *m, vertex dyingvertex) +#else /* not ANSI_DECLARATORS */ +void vertexdealloc(m, dyingvertex) +struct mesh *m; +vertex dyingvertex; +#endif /* not ANSI_DECLARATORS */ + +{ + /* Mark the vertex as dead. This makes it possible to detect dead */ + /* vertices when traversing the list of all vertices. */ + setvertextype(dyingvertex, DEADVERTEX); + pooldealloc(&m->vertices, (VOID *) dyingvertex); +} + +/*****************************************************************************/ +/* */ +/* vertextraverse() Traverse the vertices, skipping dead ones. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +vertex vertextraverse(struct mesh *m) +#else /* not ANSI_DECLARATORS */ +vertex vertextraverse(m) +struct mesh *m; +#endif /* not ANSI_DECLARATORS */ + +{ + vertex newvertex; + + do { + newvertex = (vertex) traverse(&m->vertices); + if (newvertex == (vertex) NULL) { + return (vertex) NULL; + } + } while (vertextype(newvertex) == DEADVERTEX); /* Skip dead ones. */ + return newvertex; +} + +/*****************************************************************************/ +/* */ +/* badsubsegdealloc() Deallocate space for a bad subsegment, marking it */ +/* dead. */ +/* */ +/*****************************************************************************/ + +#ifndef CDT_ONLY + +#ifdef ANSI_DECLARATORS +void badsubsegdealloc(struct mesh *m, struct badsubseg *dyingseg) +#else /* not ANSI_DECLARATORS */ +void badsubsegdealloc(m, dyingseg) +struct mesh *m; +struct badsubseg *dyingseg; +#endif /* not ANSI_DECLARATORS */ + +{ + /* Set subsegment's origin to NULL. This makes it possible to detect dead */ + /* subsegments when traversing the list of all encroached subsegments. */ + dyingseg->subsegorg = (vertex) NULL; + pooldealloc(&m->badsubsegs, (VOID *) dyingseg); +} + +#endif /* not CDT_ONLY */ + +/*****************************************************************************/ +/* */ +/* badsubsegtraverse() Traverse the bad subsegments, skipping dead ones. */ +/* */ +/*****************************************************************************/ + +#ifndef CDT_ONLY + +#ifdef ANSI_DECLARATORS +struct badsubseg *badsubsegtraverse(struct mesh *m) +#else /* not ANSI_DECLARATORS */ +struct badsubseg *badsubsegtraverse(m) +struct mesh *m; +#endif /* not ANSI_DECLARATORS */ + +{ + struct badsubseg *newseg; + + do { + newseg = (struct badsubseg *) traverse(&m->badsubsegs); + if (newseg == (struct badsubseg *) NULL) { + return (struct badsubseg *) NULL; + } + } while (newseg->subsegorg == (vertex) NULL); /* Skip dead ones. */ + return newseg; +} + +#endif /* not CDT_ONLY */ + +/*****************************************************************************/ +/* */ +/* getvertex() Get a specific vertex, by number, from the list. */ +/* */ +/* The first vertex is number 'firstnumber'. */ +/* */ +/* Note that this takes O(n) time (with a small constant, if VERTEXPERBLOCK */ +/* is large). I don't care to take the trouble to make it work in constant */ +/* time. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +vertex getvertex(struct mesh *m, struct behavior *b, int number) +#else /* not ANSI_DECLARATORS */ +vertex getvertex(m, b, number) +struct mesh *m; +struct behavior *b; +int number; +#endif /* not ANSI_DECLARATORS */ + +{ + VOID **getblock; + vertex foundvertex; + unsigned long alignptr; + int current; + + getblock = m->vertices.firstblock; + current = b->firstnumber; + /* Find the right block. */ + while (current + m->vertices.itemsperblock <= number) { + getblock = (VOID **) *getblock; + current += m->vertices.itemsperblock; + } + /* Now find the right vertex. */ + alignptr = (unsigned long) (getblock + 1); + foundvertex = (vertex) (alignptr + (unsigned long) m->vertices.alignbytes - + (alignptr % (unsigned long) m->vertices.alignbytes)); + while (current < number) { + foundvertex += m->vertices.itemwords; + current++; + } + return foundvertex; +} + +/*****************************************************************************/ +/* */ +/* triangledeinit() Free all remaining allocated memory. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void triangledeinit(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +void triangledeinit(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + pooldeinit(&m->triangles); + trifree((VOID *) m->dummytribase); + if (b->usesegments) { + pooldeinit(&m->subsegs); + trifree((VOID *) m->dummysubbase); + } + pooldeinit(&m->vertices); +#ifndef CDT_ONLY + if (b->quality) { + pooldeinit(&m->badsubsegs); + if ((b->minangle > 0.0) || b->vararea || b->fixedarea || b->usertest) { + pooldeinit(&m->badtriangles); + pooldeinit(&m->flipstackers); + } + } +#endif /* not CDT_ONLY */ +} + +/** **/ +/** **/ +/********* Memory management routines end here *********/ + +/********* Constructors begin here *********/ +/** **/ +/** **/ + +/*****************************************************************************/ +/* */ +/* maketriangle() Create a new triangle with orientation zero. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void maketriangle(struct mesh *m, struct behavior *b, struct otri *newotri) +#else /* not ANSI_DECLARATORS */ +void maketriangle(m, b, newotri) +struct mesh *m; +struct behavior *b; +struct otri *newotri; +#endif /* not ANSI_DECLARATORS */ + +{ + int i; + + newotri->tri = (triangle *) poolalloc(&m->triangles); + /* Initialize the three adjoining triangles to be "outer space". */ + newotri->tri[0] = (triangle) m->dummytri; + newotri->tri[1] = (triangle) m->dummytri; + newotri->tri[2] = (triangle) m->dummytri; + /* Three NULL vertices. */ + newotri->tri[3] = (triangle) NULL; + newotri->tri[4] = (triangle) NULL; + newotri->tri[5] = (triangle) NULL; + if (b->usesegments) { + /* Initialize the three adjoining subsegments to be the omnipresent */ + /* subsegment. */ + newotri->tri[6] = (triangle) m->dummysub; + newotri->tri[7] = (triangle) m->dummysub; + newotri->tri[8] = (triangle) m->dummysub; + } + for (i = 0; i < m->eextras; i++) { + setelemattribute(*newotri, i, 0.0); + } + if (b->vararea) { + setareabound(*newotri, -1.0); + } + + newotri->orient = 0; +} + +/*****************************************************************************/ +/* */ +/* makesubseg() Create a new subsegment with orientation zero. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void makesubseg(struct mesh *m, struct osub *newsubseg) +#else /* not ANSI_DECLARATORS */ +void makesubseg(m, newsubseg) +struct mesh *m; +struct osub *newsubseg; +#endif /* not ANSI_DECLARATORS */ + +{ + newsubseg->ss = (subseg *) poolalloc(&m->subsegs); + /* Initialize the two adjoining subsegments to be the omnipresent */ + /* subsegment. */ + newsubseg->ss[0] = (subseg) m->dummysub; + newsubseg->ss[1] = (subseg) m->dummysub; + /* Two NULL vertices. */ + newsubseg->ss[2] = (subseg) NULL; + newsubseg->ss[3] = (subseg) NULL; + /* Initialize the two adjoining triangles to be "outer space." */ + newsubseg->ss[4] = (subseg) m->dummytri; + newsubseg->ss[5] = (subseg) m->dummytri; + /* Set the boundary marker to zero. */ + setmark(*newsubseg, 0); + + newsubseg->ssorient = 0; +} + +/** **/ +/** **/ +/********* Constructors end here *********/ + +/********* Geometric primitives begin here *********/ +/** **/ +/** **/ + +/* The adaptive exact arithmetic geometric predicates implemented herein are */ +/* described in detail in my paper, "Adaptive Precision Floating-Point */ +/* Arithmetic and Fast Robust Geometric Predicates." See the header for a */ +/* full citation. */ + +/* Which of the following two methods of finding the absolute values is */ +/* fastest is compiler-dependent. A few compilers can inline and optimize */ +/* the fabs() call; but most will incur the overhead of a function call, */ +/* which is disastrously slow. A faster way on IEEE machines might be to */ +/* mask the appropriate bit, but that's difficult to do in C without */ +/* forcing the value to be stored to memory (rather than be kept in the */ +/* register to which the optimizer assigned it). */ + +#define Absolute(a) ((a) >= 0.0 ? (a) : -(a)) +/* #define Absolute(a) fabs(a) */ + +/* Many of the operations are broken up into two pieces, a main part that */ +/* performs an approximate operation, and a "tail" that computes the */ +/* roundoff error of that operation. */ +/* */ +/* The operations Fast_Two_Sum(), Fast_Two_Diff(), Two_Sum(), Two_Diff(), */ +/* Split(), and Two_Product() are all implemented as described in the */ +/* reference. Each of these macros requires certain variables to be */ +/* defined in the calling routine. The variables `bvirt', `c', `abig', */ +/* `_i', `_j', `_k', `_l', `_m', and `_n' are declared `INEXACT' because */ +/* they store the result of an operation that may incur roundoff error. */ +/* The input parameter `x' (or the highest numbered `x_' parameter) must */ +/* also be declared `INEXACT'. */ + +#define Fast_Two_Sum_Tail(a, b, x, y) \ + bvirt = x - a; \ + y = b - bvirt + +#define Fast_Two_Sum(a, b, x, y) \ + x = (REAL) (a + b); \ + Fast_Two_Sum_Tail(a, b, x, y) + +#define Two_Sum_Tail(a, b, x, y) \ + bvirt = (REAL) (x - a); \ + avirt = x - bvirt; \ + bround = b - bvirt; \ + around = a - avirt; \ + y = around + bround + +#define Two_Sum(a, b, x, y) \ + x = (REAL) (a + b); \ + Two_Sum_Tail(a, b, x, y) + +#define Two_Diff_Tail(a, b, x, y) \ + bvirt = (REAL) (a - x); \ + avirt = x + bvirt; \ + bround = bvirt - b; \ + around = a - avirt; \ + y = around + bround + +#define Two_Diff(a, b, x, y) \ + x = (REAL) (a - b); \ + Two_Diff_Tail(a, b, x, y) + +#define Split(a, ahi, alo) \ + c = (REAL) (splitter * a); \ + abig = (REAL) (c - a); \ + ahi = c - abig; \ + alo = a - ahi + +#define Two_Product_Tail(a, b, x, y) \ + Split(a, ahi, alo); \ + Split(b, bhi, blo); \ + err1 = x - (ahi * bhi); \ + err2 = err1 - (alo * bhi); \ + err3 = err2 - (ahi * blo); \ + y = (alo * blo) - err3 + +#define Two_Product(a, b, x, y) \ + x = (REAL) (a * b); \ + Two_Product_Tail(a, b, x, y) + +/* Two_Product_Presplit() is Two_Product() where one of the inputs has */ +/* already been split. Avoids redundant splitting. */ + +#define Two_Product_Presplit(a, b, bhi, blo, x, y) \ + x = (REAL) (a * b); \ + Split(a, ahi, alo); \ + err1 = x - (ahi * bhi); \ + err2 = err1 - (alo * bhi); \ + err3 = err2 - (ahi * blo); \ + y = (alo * blo) - err3 + +/* Square() can be done more quickly than Two_Product(). */ + +#define Square_Tail(a, x, y) \ + Split(a, ahi, alo); \ + err1 = x - (ahi * ahi); \ + err3 = err1 - ((ahi + ahi) * alo); \ + y = (alo * alo) - err3 + +#define Square(a, x, y) \ + x = (REAL) (a * a); \ + Square_Tail(a, x, y) + +/* Macros for summing expansions of various fixed lengths. These are all */ +/* unrolled versions of Expansion_Sum(). */ + +#define Two_One_Sum(a1, a0, b, x2, x1, x0) \ + Two_Sum(a0, b , _i, x0); \ + Two_Sum(a1, _i, x2, x1) + +#define Two_One_Diff(a1, a0, b, x2, x1, x0) \ + Two_Diff(a0, b , _i, x0); \ + Two_Sum( a1, _i, x2, x1) + +#define Two_Two_Sum(a1, a0, b1, b0, x3, x2, x1, x0) \ + Two_One_Sum(a1, a0, b0, _j, _0, x0); \ + Two_One_Sum(_j, _0, b1, x3, x2, x1) + +#define Two_Two_Diff(a1, a0, b1, b0, x3, x2, x1, x0) \ + Two_One_Diff(a1, a0, b0, _j, _0, x0); \ + Two_One_Diff(_j, _0, b1, x3, x2, x1) + +/* Macro for multiplying a two-component expansion by a single component. */ + +#define Two_One_Product(a1, a0, b, x3, x2, x1, x0) \ + Split(b, bhi, blo); \ + Two_Product_Presplit(a0, b, bhi, blo, _i, x0); \ + Two_Product_Presplit(a1, b, bhi, blo, _j, _0); \ + Two_Sum(_i, _0, _k, x1); \ + Fast_Two_Sum(_j, _k, x3, x2) + +/*****************************************************************************/ +/* */ +/* exactinit() Initialize the variables used for exact arithmetic. */ +/* */ +/* `epsilon' is the largest power of two such that 1.0 + epsilon = 1.0 in */ +/* floating-point arithmetic. `epsilon' bounds the relative roundoff */ +/* error. It is used for floating-point error analysis. */ +/* */ +/* `splitter' is used to split floating-point numbers into two half- */ +/* length significands for exact multiplication. */ +/* */ +/* I imagine that a highly optimizing compiler might be too smart for its */ +/* own good, and somehow cause this routine to fail, if it pretends that */ +/* floating-point arithmetic is too much like real arithmetic. */ +/* */ +/* Don't change this routine unless you fully understand it. */ +/* */ +/*****************************************************************************/ + +void exactinit() +{ + REAL half; + REAL check, lastcheck; + int every_other; +#ifdef LINUX + int cword; +#endif /* LINUX */ + +#ifdef CPU86 +#ifdef SINGLE + _control87(_PC_24, _MCW_PC); /* Set FPU control word for single precision. */ +#else /* not SINGLE */ + _control87(_PC_53, _MCW_PC); /* Set FPU control word for double precision. */ +#endif /* not SINGLE */ +#endif /* CPU86 */ +#ifdef LINUX +#ifdef SINGLE + /* cword = 4223; */ + cword = 4210; /* set FPU control word for single precision */ +#else /* not SINGLE */ + /* cword = 4735; */ + cword = 4722; /* set FPU control word for double precision */ +#endif /* not SINGLE */ + _FPU_SETCW(cword); +#endif /* LINUX */ + + every_other = 1; + half = 0.5; + epsilon = 1.0; + splitter = 1.0; + check = 1.0; + /* Repeatedly divide `epsilon' by two until it is too small to add to */ + /* one without causing roundoff. (Also check if the sum is equal to */ + /* the previous sum, for machines that round up instead of using exact */ + /* rounding. Not that these routines will work on such machines.) */ + do { + lastcheck = check; + epsilon *= half; + if (every_other) { + splitter *= 2.0; + } + every_other = !every_other; + check = 1.0 + epsilon; + } while ((check != 1.0) && (check != lastcheck)); + splitter += 1.0; + /* Error bounds for orientation and incircle tests. */ + resulterrbound = (3.0 + 8.0 * epsilon) * epsilon; + ccwerrboundA = (3.0 + 16.0 * epsilon) * epsilon; + ccwerrboundB = (2.0 + 12.0 * epsilon) * epsilon; + ccwerrboundC = (9.0 + 64.0 * epsilon) * epsilon * epsilon; + iccerrboundA = (10.0 + 96.0 * epsilon) * epsilon; + iccerrboundB = (4.0 + 48.0 * epsilon) * epsilon; + iccerrboundC = (44.0 + 576.0 * epsilon) * epsilon * epsilon; + o3derrboundA = (7.0 + 56.0 * epsilon) * epsilon; + o3derrboundB = (3.0 + 28.0 * epsilon) * epsilon; + o3derrboundC = (26.0 + 288.0 * epsilon) * epsilon * epsilon; +} + +/*****************************************************************************/ +/* */ +/* fast_expansion_sum_zeroelim() Sum two expansions, eliminating zero */ +/* components from the output expansion. */ +/* */ +/* Sets h = e + f. See my Robust Predicates paper for details. */ +/* */ +/* If round-to-even is used (as with IEEE 754), maintains the strongly */ +/* nonoverlapping property. (That is, if e is strongly nonoverlapping, h */ +/* will be also.) Does NOT maintain the nonoverlapping or nonadjacent */ +/* properties. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +int fast_expansion_sum_zeroelim(int elen, REAL *e, int flen, REAL *f, REAL *h) +#else /* not ANSI_DECLARATORS */ +int fast_expansion_sum_zeroelim(elen, e, flen, f, h) /* h cannot be e or f. */ +int elen; +REAL *e; +int flen; +REAL *f; +REAL *h; +#endif /* not ANSI_DECLARATORS */ + +{ + REAL Q; + INEXACT REAL Qnew; + INEXACT REAL hh; + INEXACT REAL bvirt; + REAL avirt, bround, around; + int eindex, findex, hindex; + REAL enow, fnow; + + enow = e[0]; + fnow = f[0]; + eindex = findex = 0; + if ((fnow > enow) == (fnow > -enow)) { + Q = enow; + enow = e[++eindex]; + } else { + Q = fnow; + fnow = f[++findex]; + } + hindex = 0; + if ((eindex < elen) && (findex < flen)) { + if ((fnow > enow) == (fnow > -enow)) { + Fast_Two_Sum(enow, Q, Qnew, hh); + enow = e[++eindex]; + } else { + Fast_Two_Sum(fnow, Q, Qnew, hh); + fnow = f[++findex]; + } + Q = Qnew; + if (hh != 0.0) { + h[hindex++] = hh; + } + while ((eindex < elen) && (findex < flen)) { + if ((fnow > enow) == (fnow > -enow)) { + Two_Sum(Q, enow, Qnew, hh); + enow = e[++eindex]; + } else { + Two_Sum(Q, fnow, Qnew, hh); + fnow = f[++findex]; + } + Q = Qnew; + if (hh != 0.0) { + h[hindex++] = hh; + } + } + } + while (eindex < elen) { + Two_Sum(Q, enow, Qnew, hh); + enow = e[++eindex]; + Q = Qnew; + if (hh != 0.0) { + h[hindex++] = hh; + } + } + while (findex < flen) { + Two_Sum(Q, fnow, Qnew, hh); + fnow = f[++findex]; + Q = Qnew; + if (hh != 0.0) { + h[hindex++] = hh; + } + } + if ((Q != 0.0) || (hindex == 0)) { + h[hindex++] = Q; + } + return hindex; +} + +/*****************************************************************************/ +/* */ +/* scale_expansion_zeroelim() Multiply an expansion by a scalar, */ +/* eliminating zero components from the */ +/* output expansion. */ +/* */ +/* Sets h = be. See my Robust Predicates paper for details. */ +/* */ +/* Maintains the nonoverlapping property. If round-to-even is used (as */ +/* with IEEE 754), maintains the strongly nonoverlapping and nonadjacent */ +/* properties as well. (That is, if e has one of these properties, so */ +/* will h.) */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +int scale_expansion_zeroelim(int elen, REAL *e, REAL b, REAL *h) +#else /* not ANSI_DECLARATORS */ +int scale_expansion_zeroelim(elen, e, b, h) /* e and h cannot be the same. */ +int elen; +REAL *e; +REAL b; +REAL *h; +#endif /* not ANSI_DECLARATORS */ + +{ + INEXACT REAL Q, sum; + REAL hh; + INEXACT REAL product1; + REAL product0; + int eindex, hindex; + REAL enow; + INEXACT REAL bvirt; + REAL avirt, bround, around; + INEXACT REAL c; + INEXACT REAL abig; + REAL ahi, alo, bhi, blo; + REAL err1, err2, err3; + + Split(b, bhi, blo); + Two_Product_Presplit(e[0], b, bhi, blo, Q, hh); + hindex = 0; + if (hh != 0) { + h[hindex++] = hh; + } + for (eindex = 1; eindex < elen; eindex++) { + enow = e[eindex]; + Two_Product_Presplit(enow, b, bhi, blo, product1, product0); + Two_Sum(Q, product0, sum, hh); + if (hh != 0) { + h[hindex++] = hh; + } + Fast_Two_Sum(product1, sum, Q, hh); + if (hh != 0) { + h[hindex++] = hh; + } + } + if ((Q != 0.0) || (hindex == 0)) { + h[hindex++] = Q; + } + return hindex; +} + +/*****************************************************************************/ +/* */ +/* estimate() Produce a one-word estimate of an expansion's value. */ +/* */ +/* See my Robust Predicates paper for details. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +REAL estimate(int elen, REAL *e) +#else /* not ANSI_DECLARATORS */ +REAL estimate(elen, e) +int elen; +REAL *e; +#endif /* not ANSI_DECLARATORS */ + +{ + REAL Q; + int eindex; + + Q = e[0]; + for (eindex = 1; eindex < elen; eindex++) { + Q += e[eindex]; + } + return Q; +} + +/*****************************************************************************/ +/* */ +/* counterclockwise() Return a positive value if the points pa, pb, and */ +/* pc occur in counterclockwise order; a negative */ +/* value if they occur in clockwise order; and zero */ +/* if they are collinear. The result is also a rough */ +/* approximation of twice the signed area of the */ +/* triangle defined by the three points. */ +/* */ +/* Uses exact arithmetic if necessary to ensure a correct answer. The */ +/* result returned is the determinant of a matrix. This determinant is */ +/* computed adaptively, in the sense that exact arithmetic is used only to */ +/* the degree it is needed to ensure that the returned value has the */ +/* correct sign. Hence, this function is usually quite fast, but will run */ +/* more slowly when the input points are collinear or nearly so. */ +/* */ +/* See my Robust Predicates paper for details. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +REAL counterclockwiseadapt(vertex pa, vertex pb, vertex pc, REAL detsum) +#else /* not ANSI_DECLARATORS */ +REAL counterclockwiseadapt(pa, pb, pc, detsum) +vertex pa; +vertex pb; +vertex pc; +REAL detsum; +#endif /* not ANSI_DECLARATORS */ + +{ + INEXACT REAL acx, acy, bcx, bcy; + REAL acxtail, acytail, bcxtail, bcytail; + INEXACT REAL detleft, detright; + REAL detlefttail, detrighttail; + REAL det, errbound; + REAL B[4], C1[8], C2[12], D[16]; + INEXACT REAL B3; + int C1length, C2length, Dlength; + REAL u[4]; + INEXACT REAL u3; + INEXACT REAL s1, t1; + REAL s0, t0; + + INEXACT REAL bvirt; + REAL avirt, bround, around; + INEXACT REAL c; + INEXACT REAL abig; + REAL ahi, alo, bhi, blo; + REAL err1, err2, err3; + INEXACT REAL _i, _j; + REAL _0; + + acx = (REAL) (pa[0] - pc[0]); + bcx = (REAL) (pb[0] - pc[0]); + acy = (REAL) (pa[1] - pc[1]); + bcy = (REAL) (pb[1] - pc[1]); + + Two_Product(acx, bcy, detleft, detlefttail); + Two_Product(acy, bcx, detright, detrighttail); + + Two_Two_Diff(detleft, detlefttail, detright, detrighttail, + B3, B[2], B[1], B[0]); + B[3] = B3; + + det = estimate(4, B); + errbound = ccwerrboundB * detsum; + if ((det >= errbound) || (-det >= errbound)) { + return det; + } + + Two_Diff_Tail(pa[0], pc[0], acx, acxtail); + Two_Diff_Tail(pb[0], pc[0], bcx, bcxtail); + Two_Diff_Tail(pa[1], pc[1], acy, acytail); + Two_Diff_Tail(pb[1], pc[1], bcy, bcytail); + + if ((acxtail == 0.0) && (acytail == 0.0) + && (bcxtail == 0.0) && (bcytail == 0.0)) { + return det; + } + + errbound = ccwerrboundC * detsum + resulterrbound * Absolute(det); + det += (acx * bcytail + bcy * acxtail) + - (acy * bcxtail + bcx * acytail); + if ((det >= errbound) || (-det >= errbound)) { + return det; + } + + Two_Product(acxtail, bcy, s1, s0); + Two_Product(acytail, bcx, t1, t0); + Two_Two_Diff(s1, s0, t1, t0, u3, u[2], u[1], u[0]); + u[3] = u3; + C1length = fast_expansion_sum_zeroelim(4, B, 4, u, C1); + + Two_Product(acx, bcytail, s1, s0); + Two_Product(acy, bcxtail, t1, t0); + Two_Two_Diff(s1, s0, t1, t0, u3, u[2], u[1], u[0]); + u[3] = u3; + C2length = fast_expansion_sum_zeroelim(C1length, C1, 4, u, C2); + + Two_Product(acxtail, bcytail, s1, s0); + Two_Product(acytail, bcxtail, t1, t0); + Two_Two_Diff(s1, s0, t1, t0, u3, u[2], u[1], u[0]); + u[3] = u3; + Dlength = fast_expansion_sum_zeroelim(C2length, C2, 4, u, D); + + return(D[Dlength - 1]); +} + +#ifdef ANSI_DECLARATORS +REAL counterclockwise(struct mesh *m, struct behavior *b, + vertex pa, vertex pb, vertex pc) +#else /* not ANSI_DECLARATORS */ +REAL counterclockwise(m, b, pa, pb, pc) +struct mesh *m; +struct behavior *b; +vertex pa; +vertex pb; +vertex pc; +#endif /* not ANSI_DECLARATORS */ + +{ + REAL detleft, detright, det; + REAL detsum, errbound; + + m->counterclockcount++; + + detleft = (pa[0] - pc[0]) * (pb[1] - pc[1]); + detright = (pa[1] - pc[1]) * (pb[0] - pc[0]); + det = detleft - detright; + + if (b->noexact) { + return det; + } + + if (detleft > 0.0) { + if (detright <= 0.0) { + return det; + } else { + detsum = detleft + detright; + } + } else if (detleft < 0.0) { + if (detright >= 0.0) { + return det; + } else { + detsum = -detleft - detright; + } + } else { + return det; + } + + errbound = ccwerrboundA * detsum; + if ((det >= errbound) || (-det >= errbound)) { + return det; + } + + return counterclockwiseadapt(pa, pb, pc, detsum); +} + +/*****************************************************************************/ +/* */ +/* incircle() Return a positive value if the point pd lies inside the */ +/* circle passing through pa, pb, and pc; a negative value if */ +/* it lies outside; and zero if the four points are cocircular.*/ +/* The points pa, pb, and pc must be in counterclockwise */ +/* order, or the sign of the result will be reversed. */ +/* */ +/* Uses exact arithmetic if necessary to ensure a correct answer. The */ +/* result returned is the determinant of a matrix. This determinant is */ +/* computed adaptively, in the sense that exact arithmetic is used only to */ +/* the degree it is needed to ensure that the returned value has the */ +/* correct sign. Hence, this function is usually quite fast, but will run */ +/* more slowly when the input points are cocircular or nearly so. */ +/* */ +/* See my Robust Predicates paper for details. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +REAL incircleadapt(vertex pa, vertex pb, vertex pc, vertex pd, REAL permanent) +#else /* not ANSI_DECLARATORS */ +REAL incircleadapt(pa, pb, pc, pd, permanent) +vertex pa; +vertex pb; +vertex pc; +vertex pd; +REAL permanent; +#endif /* not ANSI_DECLARATORS */ + +{ + INEXACT REAL adx, bdx, cdx, ady, bdy, cdy; + REAL det, errbound; + + INEXACT REAL bdxcdy1, cdxbdy1, cdxady1, adxcdy1, adxbdy1, bdxady1; + REAL bdxcdy0, cdxbdy0, cdxady0, adxcdy0, adxbdy0, bdxady0; + REAL bc[4], ca[4], ab[4]; + INEXACT REAL bc3, ca3, ab3; + REAL axbc[8], axxbc[16], aybc[8], ayybc[16], adet[32]; + int axbclen, axxbclen, aybclen, ayybclen, alen; + REAL bxca[8], bxxca[16], byca[8], byyca[16], bdet[32]; + int bxcalen, bxxcalen, bycalen, byycalen, blen; + REAL cxab[8], cxxab[16], cyab[8], cyyab[16], cdet[32]; + int cxablen, cxxablen, cyablen, cyyablen, clen; + REAL abdet[64]; + int ablen; + REAL fin1[1152], fin2[1152]; + REAL *finnow, *finother, *finswap; + int finlength; + + REAL adxtail, bdxtail, cdxtail, adytail, bdytail, cdytail; + INEXACT REAL adxadx1, adyady1, bdxbdx1, bdybdy1, cdxcdx1, cdycdy1; + REAL adxadx0, adyady0, bdxbdx0, bdybdy0, cdxcdx0, cdycdy0; + REAL aa[4], bb[4], cc[4]; + INEXACT REAL aa3, bb3, cc3; + INEXACT REAL ti1, tj1; + REAL ti0, tj0; + REAL u[4], v[4]; + INEXACT REAL u3, v3; + REAL temp8[8], temp16a[16], temp16b[16], temp16c[16]; + REAL temp32a[32], temp32b[32], temp48[48], temp64[64]; + int temp8len, temp16alen, temp16blen, temp16clen; + int temp32alen, temp32blen, temp48len, temp64len; + REAL axtbb[8], axtcc[8], aytbb[8], aytcc[8]; + int axtbblen, axtcclen, aytbblen, aytcclen; + REAL bxtaa[8], bxtcc[8], bytaa[8], bytcc[8]; + int bxtaalen, bxtcclen, bytaalen, bytcclen; + REAL cxtaa[8], cxtbb[8], cytaa[8], cytbb[8]; + int cxtaalen, cxtbblen, cytaalen, cytbblen; + REAL axtbc[8], aytbc[8], bxtca[8], bytca[8], cxtab[8], cytab[8]; + int axtbclen, aytbclen, bxtcalen, bytcalen, cxtablen, cytablen; + REAL axtbct[16], aytbct[16], bxtcat[16], bytcat[16], cxtabt[16], cytabt[16]; + int axtbctlen, aytbctlen, bxtcatlen, bytcatlen, cxtabtlen, cytabtlen; + REAL axtbctt[8], aytbctt[8], bxtcatt[8]; + REAL bytcatt[8], cxtabtt[8], cytabtt[8]; + int axtbcttlen, aytbcttlen, bxtcattlen, bytcattlen, cxtabttlen, cytabttlen; + REAL abt[8], bct[8], cat[8]; + int abtlen, bctlen, catlen; + REAL abtt[4], bctt[4], catt[4]; + int abttlen, bcttlen, cattlen; + INEXACT REAL abtt3, bctt3, catt3; + REAL negate; + + INEXACT REAL bvirt; + REAL avirt, bround, around; + INEXACT REAL c; + INEXACT REAL abig; + REAL ahi, alo, bhi, blo; + REAL err1, err2, err3; + INEXACT REAL _i, _j; + REAL _0; + + adx = (REAL) (pa[0] - pd[0]); + bdx = (REAL) (pb[0] - pd[0]); + cdx = (REAL) (pc[0] - pd[0]); + ady = (REAL) (pa[1] - pd[1]); + bdy = (REAL) (pb[1] - pd[1]); + cdy = (REAL) (pc[1] - pd[1]); + + Two_Product(bdx, cdy, bdxcdy1, bdxcdy0); + Two_Product(cdx, bdy, cdxbdy1, cdxbdy0); + Two_Two_Diff(bdxcdy1, bdxcdy0, cdxbdy1, cdxbdy0, bc3, bc[2], bc[1], bc[0]); + bc[3] = bc3; + axbclen = scale_expansion_zeroelim(4, bc, adx, axbc); + axxbclen = scale_expansion_zeroelim(axbclen, axbc, adx, axxbc); + aybclen = scale_expansion_zeroelim(4, bc, ady, aybc); + ayybclen = scale_expansion_zeroelim(aybclen, aybc, ady, ayybc); + alen = fast_expansion_sum_zeroelim(axxbclen, axxbc, ayybclen, ayybc, adet); + + Two_Product(cdx, ady, cdxady1, cdxady0); + Two_Product(adx, cdy, adxcdy1, adxcdy0); + Two_Two_Diff(cdxady1, cdxady0, adxcdy1, adxcdy0, ca3, ca[2], ca[1], ca[0]); + ca[3] = ca3; + bxcalen = scale_expansion_zeroelim(4, ca, bdx, bxca); + bxxcalen = scale_expansion_zeroelim(bxcalen, bxca, bdx, bxxca); + bycalen = scale_expansion_zeroelim(4, ca, bdy, byca); + byycalen = scale_expansion_zeroelim(bycalen, byca, bdy, byyca); + blen = fast_expansion_sum_zeroelim(bxxcalen, bxxca, byycalen, byyca, bdet); + + Two_Product(adx, bdy, adxbdy1, adxbdy0); + Two_Product(bdx, ady, bdxady1, bdxady0); + Two_Two_Diff(adxbdy1, adxbdy0, bdxady1, bdxady0, ab3, ab[2], ab[1], ab[0]); + ab[3] = ab3; + cxablen = scale_expansion_zeroelim(4, ab, cdx, cxab); + cxxablen = scale_expansion_zeroelim(cxablen, cxab, cdx, cxxab); + cyablen = scale_expansion_zeroelim(4, ab, cdy, cyab); + cyyablen = scale_expansion_zeroelim(cyablen, cyab, cdy, cyyab); + clen = fast_expansion_sum_zeroelim(cxxablen, cxxab, cyyablen, cyyab, cdet); + + ablen = fast_expansion_sum_zeroelim(alen, adet, blen, bdet, abdet); + finlength = fast_expansion_sum_zeroelim(ablen, abdet, clen, cdet, fin1); + + det = estimate(finlength, fin1); + errbound = iccerrboundB * permanent; + if ((det >= errbound) || (-det >= errbound)) { + return det; + } + + Two_Diff_Tail(pa[0], pd[0], adx, adxtail); + Two_Diff_Tail(pa[1], pd[1], ady, adytail); + Two_Diff_Tail(pb[0], pd[0], bdx, bdxtail); + Two_Diff_Tail(pb[1], pd[1], bdy, bdytail); + Two_Diff_Tail(pc[0], pd[0], cdx, cdxtail); + Two_Diff_Tail(pc[1], pd[1], cdy, cdytail); + if ((adxtail == 0.0) && (bdxtail == 0.0) && (cdxtail == 0.0) + && (adytail == 0.0) && (bdytail == 0.0) && (cdytail == 0.0)) { + return det; + } + + errbound = iccerrboundC * permanent + resulterrbound * Absolute(det); + det += ((adx * adx + ady * ady) * ((bdx * cdytail + cdy * bdxtail) + - (bdy * cdxtail + cdx * bdytail)) + + 2.0 * (adx * adxtail + ady * adytail) * (bdx * cdy - bdy * cdx)) + + ((bdx * bdx + bdy * bdy) * ((cdx * adytail + ady * cdxtail) + - (cdy * adxtail + adx * cdytail)) + + 2.0 * (bdx * bdxtail + bdy * bdytail) * (cdx * ady - cdy * adx)) + + ((cdx * cdx + cdy * cdy) * ((adx * bdytail + bdy * adxtail) + - (ady * bdxtail + bdx * adytail)) + + 2.0 * (cdx * cdxtail + cdy * cdytail) * (adx * bdy - ady * bdx)); + if ((det >= errbound) || (-det >= errbound)) { + return det; + } + + finnow = fin1; + finother = fin2; + + if ((bdxtail != 0.0) || (bdytail != 0.0) + || (cdxtail != 0.0) || (cdytail != 0.0)) { + Square(adx, adxadx1, adxadx0); + Square(ady, adyady1, adyady0); + Two_Two_Sum(adxadx1, adxadx0, adyady1, adyady0, aa3, aa[2], aa[1], aa[0]); + aa[3] = aa3; + } + if ((cdxtail != 0.0) || (cdytail != 0.0) + || (adxtail != 0.0) || (adytail != 0.0)) { + Square(bdx, bdxbdx1, bdxbdx0); + Square(bdy, bdybdy1, bdybdy0); + Two_Two_Sum(bdxbdx1, bdxbdx0, bdybdy1, bdybdy0, bb3, bb[2], bb[1], bb[0]); + bb[3] = bb3; + } + if ((adxtail != 0.0) || (adytail != 0.0) + || (bdxtail != 0.0) || (bdytail != 0.0)) { + Square(cdx, cdxcdx1, cdxcdx0); + Square(cdy, cdycdy1, cdycdy0); + Two_Two_Sum(cdxcdx1, cdxcdx0, cdycdy1, cdycdy0, cc3, cc[2], cc[1], cc[0]); + cc[3] = cc3; + } + + if (adxtail != 0.0) { + axtbclen = scale_expansion_zeroelim(4, bc, adxtail, axtbc); + temp16alen = scale_expansion_zeroelim(axtbclen, axtbc, 2.0 * adx, + temp16a); + + axtcclen = scale_expansion_zeroelim(4, cc, adxtail, axtcc); + temp16blen = scale_expansion_zeroelim(axtcclen, axtcc, bdy, temp16b); + + axtbblen = scale_expansion_zeroelim(4, bb, adxtail, axtbb); + temp16clen = scale_expansion_zeroelim(axtbblen, axtbb, -cdy, temp16c); + + temp32alen = fast_expansion_sum_zeroelim(temp16alen, temp16a, + temp16blen, temp16b, temp32a); + temp48len = fast_expansion_sum_zeroelim(temp16clen, temp16c, + temp32alen, temp32a, temp48); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, + temp48, finother); + finswap = finnow; finnow = finother; finother = finswap; + } + if (adytail != 0.0) { + aytbclen = scale_expansion_zeroelim(4, bc, adytail, aytbc); + temp16alen = scale_expansion_zeroelim(aytbclen, aytbc, 2.0 * ady, + temp16a); + + aytbblen = scale_expansion_zeroelim(4, bb, adytail, aytbb); + temp16blen = scale_expansion_zeroelim(aytbblen, aytbb, cdx, temp16b); + + aytcclen = scale_expansion_zeroelim(4, cc, adytail, aytcc); + temp16clen = scale_expansion_zeroelim(aytcclen, aytcc, -bdx, temp16c); + + temp32alen = fast_expansion_sum_zeroelim(temp16alen, temp16a, + temp16blen, temp16b, temp32a); + temp48len = fast_expansion_sum_zeroelim(temp16clen, temp16c, + temp32alen, temp32a, temp48); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, + temp48, finother); + finswap = finnow; finnow = finother; finother = finswap; + } + if (bdxtail != 0.0) { + bxtcalen = scale_expansion_zeroelim(4, ca, bdxtail, bxtca); + temp16alen = scale_expansion_zeroelim(bxtcalen, bxtca, 2.0 * bdx, + temp16a); + + bxtaalen = scale_expansion_zeroelim(4, aa, bdxtail, bxtaa); + temp16blen = scale_expansion_zeroelim(bxtaalen, bxtaa, cdy, temp16b); + + bxtcclen = scale_expansion_zeroelim(4, cc, bdxtail, bxtcc); + temp16clen = scale_expansion_zeroelim(bxtcclen, bxtcc, -ady, temp16c); + + temp32alen = fast_expansion_sum_zeroelim(temp16alen, temp16a, + temp16blen, temp16b, temp32a); + temp48len = fast_expansion_sum_zeroelim(temp16clen, temp16c, + temp32alen, temp32a, temp48); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, + temp48, finother); + finswap = finnow; finnow = finother; finother = finswap; + } + if (bdytail != 0.0) { + bytcalen = scale_expansion_zeroelim(4, ca, bdytail, bytca); + temp16alen = scale_expansion_zeroelim(bytcalen, bytca, 2.0 * bdy, + temp16a); + + bytcclen = scale_expansion_zeroelim(4, cc, bdytail, bytcc); + temp16blen = scale_expansion_zeroelim(bytcclen, bytcc, adx, temp16b); + + bytaalen = scale_expansion_zeroelim(4, aa, bdytail, bytaa); + temp16clen = scale_expansion_zeroelim(bytaalen, bytaa, -cdx, temp16c); + + temp32alen = fast_expansion_sum_zeroelim(temp16alen, temp16a, + temp16blen, temp16b, temp32a); + temp48len = fast_expansion_sum_zeroelim(temp16clen, temp16c, + temp32alen, temp32a, temp48); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, + temp48, finother); + finswap = finnow; finnow = finother; finother = finswap; + } + if (cdxtail != 0.0) { + cxtablen = scale_expansion_zeroelim(4, ab, cdxtail, cxtab); + temp16alen = scale_expansion_zeroelim(cxtablen, cxtab, 2.0 * cdx, + temp16a); + + cxtbblen = scale_expansion_zeroelim(4, bb, cdxtail, cxtbb); + temp16blen = scale_expansion_zeroelim(cxtbblen, cxtbb, ady, temp16b); + + cxtaalen = scale_expansion_zeroelim(4, aa, cdxtail, cxtaa); + temp16clen = scale_expansion_zeroelim(cxtaalen, cxtaa, -bdy, temp16c); + + temp32alen = fast_expansion_sum_zeroelim(temp16alen, temp16a, + temp16blen, temp16b, temp32a); + temp48len = fast_expansion_sum_zeroelim(temp16clen, temp16c, + temp32alen, temp32a, temp48); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, + temp48, finother); + finswap = finnow; finnow = finother; finother = finswap; + } + if (cdytail != 0.0) { + cytablen = scale_expansion_zeroelim(4, ab, cdytail, cytab); + temp16alen = scale_expansion_zeroelim(cytablen, cytab, 2.0 * cdy, + temp16a); + + cytaalen = scale_expansion_zeroelim(4, aa, cdytail, cytaa); + temp16blen = scale_expansion_zeroelim(cytaalen, cytaa, bdx, temp16b); + + cytbblen = scale_expansion_zeroelim(4, bb, cdytail, cytbb); + temp16clen = scale_expansion_zeroelim(cytbblen, cytbb, -adx, temp16c); + + temp32alen = fast_expansion_sum_zeroelim(temp16alen, temp16a, + temp16blen, temp16b, temp32a); + temp48len = fast_expansion_sum_zeroelim(temp16clen, temp16c, + temp32alen, temp32a, temp48); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, + temp48, finother); + finswap = finnow; finnow = finother; finother = finswap; + } + + if ((adxtail != 0.0) || (adytail != 0.0)) { + if ((bdxtail != 0.0) || (bdytail != 0.0) + || (cdxtail != 0.0) || (cdytail != 0.0)) { + Two_Product(bdxtail, cdy, ti1, ti0); + Two_Product(bdx, cdytail, tj1, tj0); + Two_Two_Sum(ti1, ti0, tj1, tj0, u3, u[2], u[1], u[0]); + u[3] = u3; + negate = -bdy; + Two_Product(cdxtail, negate, ti1, ti0); + negate = -bdytail; + Two_Product(cdx, negate, tj1, tj0); + Two_Two_Sum(ti1, ti0, tj1, tj0, v3, v[2], v[1], v[0]); + v[3] = v3; + bctlen = fast_expansion_sum_zeroelim(4, u, 4, v, bct); + + Two_Product(bdxtail, cdytail, ti1, ti0); + Two_Product(cdxtail, bdytail, tj1, tj0); + Two_Two_Diff(ti1, ti0, tj1, tj0, bctt3, bctt[2], bctt[1], bctt[0]); + bctt[3] = bctt3; + bcttlen = 4; + } else { + bct[0] = 0.0; + bctlen = 1; + bctt[0] = 0.0; + bcttlen = 1; + } + + if (adxtail != 0.0) { + temp16alen = scale_expansion_zeroelim(axtbclen, axtbc, adxtail, temp16a); + axtbctlen = scale_expansion_zeroelim(bctlen, bct, adxtail, axtbct); + temp32alen = scale_expansion_zeroelim(axtbctlen, axtbct, 2.0 * adx, + temp32a); + temp48len = fast_expansion_sum_zeroelim(temp16alen, temp16a, + temp32alen, temp32a, temp48); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, + temp48, finother); + finswap = finnow; finnow = finother; finother = finswap; + if (bdytail != 0.0) { + temp8len = scale_expansion_zeroelim(4, cc, adxtail, temp8); + temp16alen = scale_expansion_zeroelim(temp8len, temp8, bdytail, + temp16a); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp16alen, + temp16a, finother); + finswap = finnow; finnow = finother; finother = finswap; + } + if (cdytail != 0.0) { + temp8len = scale_expansion_zeroelim(4, bb, -adxtail, temp8); + temp16alen = scale_expansion_zeroelim(temp8len, temp8, cdytail, + temp16a); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp16alen, + temp16a, finother); + finswap = finnow; finnow = finother; finother = finswap; + } + + temp32alen = scale_expansion_zeroelim(axtbctlen, axtbct, adxtail, + temp32a); + axtbcttlen = scale_expansion_zeroelim(bcttlen, bctt, adxtail, axtbctt); + temp16alen = scale_expansion_zeroelim(axtbcttlen, axtbctt, 2.0 * adx, + temp16a); + temp16blen = scale_expansion_zeroelim(axtbcttlen, axtbctt, adxtail, + temp16b); + temp32blen = fast_expansion_sum_zeroelim(temp16alen, temp16a, + temp16blen, temp16b, temp32b); + temp64len = fast_expansion_sum_zeroelim(temp32alen, temp32a, + temp32blen, temp32b, temp64); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp64len, + temp64, finother); + finswap = finnow; finnow = finother; finother = finswap; + } + if (adytail != 0.0) { + temp16alen = scale_expansion_zeroelim(aytbclen, aytbc, adytail, temp16a); + aytbctlen = scale_expansion_zeroelim(bctlen, bct, adytail, aytbct); + temp32alen = scale_expansion_zeroelim(aytbctlen, aytbct, 2.0 * ady, + temp32a); + temp48len = fast_expansion_sum_zeroelim(temp16alen, temp16a, + temp32alen, temp32a, temp48); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, + temp48, finother); + finswap = finnow; finnow = finother; finother = finswap; + + + temp32alen = scale_expansion_zeroelim(aytbctlen, aytbct, adytail, + temp32a); + aytbcttlen = scale_expansion_zeroelim(bcttlen, bctt, adytail, aytbctt); + temp16alen = scale_expansion_zeroelim(aytbcttlen, aytbctt, 2.0 * ady, + temp16a); + temp16blen = scale_expansion_zeroelim(aytbcttlen, aytbctt, adytail, + temp16b); + temp32blen = fast_expansion_sum_zeroelim(temp16alen, temp16a, + temp16blen, temp16b, temp32b); + temp64len = fast_expansion_sum_zeroelim(temp32alen, temp32a, + temp32blen, temp32b, temp64); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp64len, + temp64, finother); + finswap = finnow; finnow = finother; finother = finswap; + } + } + if ((bdxtail != 0.0) || (bdytail != 0.0)) { + if ((cdxtail != 0.0) || (cdytail != 0.0) + || (adxtail != 0.0) || (adytail != 0.0)) { + Two_Product(cdxtail, ady, ti1, ti0); + Two_Product(cdx, adytail, tj1, tj0); + Two_Two_Sum(ti1, ti0, tj1, tj0, u3, u[2], u[1], u[0]); + u[3] = u3; + negate = -cdy; + Two_Product(adxtail, negate, ti1, ti0); + negate = -cdytail; + Two_Product(adx, negate, tj1, tj0); + Two_Two_Sum(ti1, ti0, tj1, tj0, v3, v[2], v[1], v[0]); + v[3] = v3; + catlen = fast_expansion_sum_zeroelim(4, u, 4, v, cat); + + Two_Product(cdxtail, adytail, ti1, ti0); + Two_Product(adxtail, cdytail, tj1, tj0); + Two_Two_Diff(ti1, ti0, tj1, tj0, catt3, catt[2], catt[1], catt[0]); + catt[3] = catt3; + cattlen = 4; + } else { + cat[0] = 0.0; + catlen = 1; + catt[0] = 0.0; + cattlen = 1; + } + + if (bdxtail != 0.0) { + temp16alen = scale_expansion_zeroelim(bxtcalen, bxtca, bdxtail, temp16a); + bxtcatlen = scale_expansion_zeroelim(catlen, cat, bdxtail, bxtcat); + temp32alen = scale_expansion_zeroelim(bxtcatlen, bxtcat, 2.0 * bdx, + temp32a); + temp48len = fast_expansion_sum_zeroelim(temp16alen, temp16a, + temp32alen, temp32a, temp48); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, + temp48, finother); + finswap = finnow; finnow = finother; finother = finswap; + if (cdytail != 0.0) { + temp8len = scale_expansion_zeroelim(4, aa, bdxtail, temp8); + temp16alen = scale_expansion_zeroelim(temp8len, temp8, cdytail, + temp16a); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp16alen, + temp16a, finother); + finswap = finnow; finnow = finother; finother = finswap; + } + if (adytail != 0.0) { + temp8len = scale_expansion_zeroelim(4, cc, -bdxtail, temp8); + temp16alen = scale_expansion_zeroelim(temp8len, temp8, adytail, + temp16a); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp16alen, + temp16a, finother); + finswap = finnow; finnow = finother; finother = finswap; + } + + temp32alen = scale_expansion_zeroelim(bxtcatlen, bxtcat, bdxtail, + temp32a); + bxtcattlen = scale_expansion_zeroelim(cattlen, catt, bdxtail, bxtcatt); + temp16alen = scale_expansion_zeroelim(bxtcattlen, bxtcatt, 2.0 * bdx, + temp16a); + temp16blen = scale_expansion_zeroelim(bxtcattlen, bxtcatt, bdxtail, + temp16b); + temp32blen = fast_expansion_sum_zeroelim(temp16alen, temp16a, + temp16blen, temp16b, temp32b); + temp64len = fast_expansion_sum_zeroelim(temp32alen, temp32a, + temp32blen, temp32b, temp64); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp64len, + temp64, finother); + finswap = finnow; finnow = finother; finother = finswap; + } + if (bdytail != 0.0) { + temp16alen = scale_expansion_zeroelim(bytcalen, bytca, bdytail, temp16a); + bytcatlen = scale_expansion_zeroelim(catlen, cat, bdytail, bytcat); + temp32alen = scale_expansion_zeroelim(bytcatlen, bytcat, 2.0 * bdy, + temp32a); + temp48len = fast_expansion_sum_zeroelim(temp16alen, temp16a, + temp32alen, temp32a, temp48); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, + temp48, finother); + finswap = finnow; finnow = finother; finother = finswap; + + + temp32alen = scale_expansion_zeroelim(bytcatlen, bytcat, bdytail, + temp32a); + bytcattlen = scale_expansion_zeroelim(cattlen, catt, bdytail, bytcatt); + temp16alen = scale_expansion_zeroelim(bytcattlen, bytcatt, 2.0 * bdy, + temp16a); + temp16blen = scale_expansion_zeroelim(bytcattlen, bytcatt, bdytail, + temp16b); + temp32blen = fast_expansion_sum_zeroelim(temp16alen, temp16a, + temp16blen, temp16b, temp32b); + temp64len = fast_expansion_sum_zeroelim(temp32alen, temp32a, + temp32blen, temp32b, temp64); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp64len, + temp64, finother); + finswap = finnow; finnow = finother; finother = finswap; + } + } + if ((cdxtail != 0.0) || (cdytail != 0.0)) { + if ((adxtail != 0.0) || (adytail != 0.0) + || (bdxtail != 0.0) || (bdytail != 0.0)) { + Two_Product(adxtail, bdy, ti1, ti0); + Two_Product(adx, bdytail, tj1, tj0); + Two_Two_Sum(ti1, ti0, tj1, tj0, u3, u[2], u[1], u[0]); + u[3] = u3; + negate = -ady; + Two_Product(bdxtail, negate, ti1, ti0); + negate = -adytail; + Two_Product(bdx, negate, tj1, tj0); + Two_Two_Sum(ti1, ti0, tj1, tj0, v3, v[2], v[1], v[0]); + v[3] = v3; + abtlen = fast_expansion_sum_zeroelim(4, u, 4, v, abt); + + Two_Product(adxtail, bdytail, ti1, ti0); + Two_Product(bdxtail, adytail, tj1, tj0); + Two_Two_Diff(ti1, ti0, tj1, tj0, abtt3, abtt[2], abtt[1], abtt[0]); + abtt[3] = abtt3; + abttlen = 4; + } else { + abt[0] = 0.0; + abtlen = 1; + abtt[0] = 0.0; + abttlen = 1; + } + + if (cdxtail != 0.0) { + temp16alen = scale_expansion_zeroelim(cxtablen, cxtab, cdxtail, temp16a); + cxtabtlen = scale_expansion_zeroelim(abtlen, abt, cdxtail, cxtabt); + temp32alen = scale_expansion_zeroelim(cxtabtlen, cxtabt, 2.0 * cdx, + temp32a); + temp48len = fast_expansion_sum_zeroelim(temp16alen, temp16a, + temp32alen, temp32a, temp48); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, + temp48, finother); + finswap = finnow; finnow = finother; finother = finswap; + if (adytail != 0.0) { + temp8len = scale_expansion_zeroelim(4, bb, cdxtail, temp8); + temp16alen = scale_expansion_zeroelim(temp8len, temp8, adytail, + temp16a); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp16alen, + temp16a, finother); + finswap = finnow; finnow = finother; finother = finswap; + } + if (bdytail != 0.0) { + temp8len = scale_expansion_zeroelim(4, aa, -cdxtail, temp8); + temp16alen = scale_expansion_zeroelim(temp8len, temp8, bdytail, + temp16a); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp16alen, + temp16a, finother); + finswap = finnow; finnow = finother; finother = finswap; + } + + temp32alen = scale_expansion_zeroelim(cxtabtlen, cxtabt, cdxtail, + temp32a); + cxtabttlen = scale_expansion_zeroelim(abttlen, abtt, cdxtail, cxtabtt); + temp16alen = scale_expansion_zeroelim(cxtabttlen, cxtabtt, 2.0 * cdx, + temp16a); + temp16blen = scale_expansion_zeroelim(cxtabttlen, cxtabtt, cdxtail, + temp16b); + temp32blen = fast_expansion_sum_zeroelim(temp16alen, temp16a, + temp16blen, temp16b, temp32b); + temp64len = fast_expansion_sum_zeroelim(temp32alen, temp32a, + temp32blen, temp32b, temp64); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp64len, + temp64, finother); + finswap = finnow; finnow = finother; finother = finswap; + } + if (cdytail != 0.0) { + temp16alen = scale_expansion_zeroelim(cytablen, cytab, cdytail, temp16a); + cytabtlen = scale_expansion_zeroelim(abtlen, abt, cdytail, cytabt); + temp32alen = scale_expansion_zeroelim(cytabtlen, cytabt, 2.0 * cdy, + temp32a); + temp48len = fast_expansion_sum_zeroelim(temp16alen, temp16a, + temp32alen, temp32a, temp48); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp48len, + temp48, finother); + finswap = finnow; finnow = finother; finother = finswap; + + + temp32alen = scale_expansion_zeroelim(cytabtlen, cytabt, cdytail, + temp32a); + cytabttlen = scale_expansion_zeroelim(abttlen, abtt, cdytail, cytabtt); + temp16alen = scale_expansion_zeroelim(cytabttlen, cytabtt, 2.0 * cdy, + temp16a); + temp16blen = scale_expansion_zeroelim(cytabttlen, cytabtt, cdytail, + temp16b); + temp32blen = fast_expansion_sum_zeroelim(temp16alen, temp16a, + temp16blen, temp16b, temp32b); + temp64len = fast_expansion_sum_zeroelim(temp32alen, temp32a, + temp32blen, temp32b, temp64); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, temp64len, + temp64, finother); + finswap = finnow; finnow = finother; finother = finswap; + } + } + + return finnow[finlength - 1]; +} + +#ifdef ANSI_DECLARATORS +REAL incircle(struct mesh *m, struct behavior *b, + vertex pa, vertex pb, vertex pc, vertex pd) +#else /* not ANSI_DECLARATORS */ +REAL incircle(m, b, pa, pb, pc, pd) +struct mesh *m; +struct behavior *b; +vertex pa; +vertex pb; +vertex pc; +vertex pd; +#endif /* not ANSI_DECLARATORS */ + +{ + REAL adx, bdx, cdx, ady, bdy, cdy; + REAL bdxcdy, cdxbdy, cdxady, adxcdy, adxbdy, bdxady; + REAL alift, blift, clift; + REAL det; + REAL permanent, errbound; + + m->incirclecount++; + + adx = pa[0] - pd[0]; + bdx = pb[0] - pd[0]; + cdx = pc[0] - pd[0]; + ady = pa[1] - pd[1]; + bdy = pb[1] - pd[1]; + cdy = pc[1] - pd[1]; + + bdxcdy = bdx * cdy; + cdxbdy = cdx * bdy; + alift = adx * adx + ady * ady; + + cdxady = cdx * ady; + adxcdy = adx * cdy; + blift = bdx * bdx + bdy * bdy; + + adxbdy = adx * bdy; + bdxady = bdx * ady; + clift = cdx * cdx + cdy * cdy; + + det = alift * (bdxcdy - cdxbdy) + + blift * (cdxady - adxcdy) + + clift * (adxbdy - bdxady); + + if (b->noexact) { + return det; + } + + permanent = (Absolute(bdxcdy) + Absolute(cdxbdy)) * alift + + (Absolute(cdxady) + Absolute(adxcdy)) * blift + + (Absolute(adxbdy) + Absolute(bdxady)) * clift; + errbound = iccerrboundA * permanent; + if ((det > errbound) || (-det > errbound)) { + return det; + } + + return incircleadapt(pa, pb, pc, pd, permanent); +} + +/*****************************************************************************/ +/* */ +/* orient3d() Return a positive value if the point pd lies below the */ +/* plane passing through pa, pb, and pc; "below" is defined so */ +/* that pa, pb, and pc appear in counterclockwise order when */ +/* viewed from above the plane. Returns a negative value if */ +/* pd lies above the plane. Returns zero if the points are */ +/* coplanar. The result is also a rough approximation of six */ +/* times the signed volume of the tetrahedron defined by the */ +/* four points. */ +/* */ +/* Uses exact arithmetic if necessary to ensure a correct answer. The */ +/* result returned is the determinant of a matrix. This determinant is */ +/* computed adaptively, in the sense that exact arithmetic is used only to */ +/* the degree it is needed to ensure that the returned value has the */ +/* correct sign. Hence, this function is usually quite fast, but will run */ +/* more slowly when the input points are coplanar or nearly so. */ +/* */ +/* See my Robust Predicates paper for details. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +REAL orient3dadapt(vertex pa, vertex pb, vertex pc, vertex pd, + REAL aheight, REAL bheight, REAL cheight, REAL dheight, + REAL permanent) +#else /* not ANSI_DECLARATORS */ +REAL orient3dadapt(pa, pb, pc, pd, + aheight, bheight, cheight, dheight, permanent) +vertex pa; +vertex pb; +vertex pc; +vertex pd; +REAL aheight; +REAL bheight; +REAL cheight; +REAL dheight; +REAL permanent; +#endif /* not ANSI_DECLARATORS */ + +{ + INEXACT REAL adx, bdx, cdx, ady, bdy, cdy, adheight, bdheight, cdheight; + REAL det, errbound; + + INEXACT REAL bdxcdy1, cdxbdy1, cdxady1, adxcdy1, adxbdy1, bdxady1; + REAL bdxcdy0, cdxbdy0, cdxady0, adxcdy0, adxbdy0, bdxady0; + REAL bc[4], ca[4], ab[4]; + INEXACT REAL bc3, ca3, ab3; + REAL adet[8], bdet[8], cdet[8]; + int alen, blen, clen; + REAL abdet[16]; + int ablen; + REAL *finnow, *finother, *finswap; + REAL fin1[192], fin2[192]; + int finlength; + + REAL adxtail, bdxtail, cdxtail; + REAL adytail, bdytail, cdytail; + REAL adheighttail, bdheighttail, cdheighttail; + INEXACT REAL at_blarge, at_clarge; + INEXACT REAL bt_clarge, bt_alarge; + INEXACT REAL ct_alarge, ct_blarge; + REAL at_b[4], at_c[4], bt_c[4], bt_a[4], ct_a[4], ct_b[4]; + int at_blen, at_clen, bt_clen, bt_alen, ct_alen, ct_blen; + INEXACT REAL bdxt_cdy1, cdxt_bdy1, cdxt_ady1; + INEXACT REAL adxt_cdy1, adxt_bdy1, bdxt_ady1; + REAL bdxt_cdy0, cdxt_bdy0, cdxt_ady0; + REAL adxt_cdy0, adxt_bdy0, bdxt_ady0; + INEXACT REAL bdyt_cdx1, cdyt_bdx1, cdyt_adx1; + INEXACT REAL adyt_cdx1, adyt_bdx1, bdyt_adx1; + REAL bdyt_cdx0, cdyt_bdx0, cdyt_adx0; + REAL adyt_cdx0, adyt_bdx0, bdyt_adx0; + REAL bct[8], cat[8], abt[8]; + int bctlen, catlen, abtlen; + INEXACT REAL bdxt_cdyt1, cdxt_bdyt1, cdxt_adyt1; + INEXACT REAL adxt_cdyt1, adxt_bdyt1, bdxt_adyt1; + REAL bdxt_cdyt0, cdxt_bdyt0, cdxt_adyt0; + REAL adxt_cdyt0, adxt_bdyt0, bdxt_adyt0; + REAL u[4], v[12], w[16]; + INEXACT REAL u3; + int vlength, wlength; + REAL negate; + + INEXACT REAL bvirt; + REAL avirt, bround, around; + INEXACT REAL c; + INEXACT REAL abig; + REAL ahi, alo, bhi, blo; + REAL err1, err2, err3; + INEXACT REAL _i, _j, _k; + REAL _0; + + adx = (REAL) (pa[0] - pd[0]); + bdx = (REAL) (pb[0] - pd[0]); + cdx = (REAL) (pc[0] - pd[0]); + ady = (REAL) (pa[1] - pd[1]); + bdy = (REAL) (pb[1] - pd[1]); + cdy = (REAL) (pc[1] - pd[1]); + adheight = (REAL) (aheight - dheight); + bdheight = (REAL) (bheight - dheight); + cdheight = (REAL) (cheight - dheight); + + Two_Product(bdx, cdy, bdxcdy1, bdxcdy0); + Two_Product(cdx, bdy, cdxbdy1, cdxbdy0); + Two_Two_Diff(bdxcdy1, bdxcdy0, cdxbdy1, cdxbdy0, bc3, bc[2], bc[1], bc[0]); + bc[3] = bc3; + alen = scale_expansion_zeroelim(4, bc, adheight, adet); + + Two_Product(cdx, ady, cdxady1, cdxady0); + Two_Product(adx, cdy, adxcdy1, adxcdy0); + Two_Two_Diff(cdxady1, cdxady0, adxcdy1, adxcdy0, ca3, ca[2], ca[1], ca[0]); + ca[3] = ca3; + blen = scale_expansion_zeroelim(4, ca, bdheight, bdet); + + Two_Product(adx, bdy, adxbdy1, adxbdy0); + Two_Product(bdx, ady, bdxady1, bdxady0); + Two_Two_Diff(adxbdy1, adxbdy0, bdxady1, bdxady0, ab3, ab[2], ab[1], ab[0]); + ab[3] = ab3; + clen = scale_expansion_zeroelim(4, ab, cdheight, cdet); + + ablen = fast_expansion_sum_zeroelim(alen, adet, blen, bdet, abdet); + finlength = fast_expansion_sum_zeroelim(ablen, abdet, clen, cdet, fin1); + + det = estimate(finlength, fin1); + errbound = o3derrboundB * permanent; + if ((det >= errbound) || (-det >= errbound)) { + return det; + } + + Two_Diff_Tail(pa[0], pd[0], adx, adxtail); + Two_Diff_Tail(pb[0], pd[0], bdx, bdxtail); + Two_Diff_Tail(pc[0], pd[0], cdx, cdxtail); + Two_Diff_Tail(pa[1], pd[1], ady, adytail); + Two_Diff_Tail(pb[1], pd[1], bdy, bdytail); + Two_Diff_Tail(pc[1], pd[1], cdy, cdytail); + Two_Diff_Tail(aheight, dheight, adheight, adheighttail); + Two_Diff_Tail(bheight, dheight, bdheight, bdheighttail); + Two_Diff_Tail(cheight, dheight, cdheight, cdheighttail); + + if ((adxtail == 0.0) && (bdxtail == 0.0) && (cdxtail == 0.0) && + (adytail == 0.0) && (bdytail == 0.0) && (cdytail == 0.0) && + (adheighttail == 0.0) && + (bdheighttail == 0.0) && + (cdheighttail == 0.0)) { + return det; + } + + errbound = o3derrboundC * permanent + resulterrbound * Absolute(det); + det += (adheight * ((bdx * cdytail + cdy * bdxtail) - + (bdy * cdxtail + cdx * bdytail)) + + adheighttail * (bdx * cdy - bdy * cdx)) + + (bdheight * ((cdx * adytail + ady * cdxtail) - + (cdy * adxtail + adx * cdytail)) + + bdheighttail * (cdx * ady - cdy * adx)) + + (cdheight * ((adx * bdytail + bdy * adxtail) - + (ady * bdxtail + bdx * adytail)) + + cdheighttail * (adx * bdy - ady * bdx)); + if ((det >= errbound) || (-det >= errbound)) { + return det; + } + + finnow = fin1; + finother = fin2; + + if (adxtail == 0.0) { + if (adytail == 0.0) { + at_b[0] = 0.0; + at_blen = 1; + at_c[0] = 0.0; + at_clen = 1; + } else { + negate = -adytail; + Two_Product(negate, bdx, at_blarge, at_b[0]); + at_b[1] = at_blarge; + at_blen = 2; + Two_Product(adytail, cdx, at_clarge, at_c[0]); + at_c[1] = at_clarge; + at_clen = 2; + } + } else { + if (adytail == 0.0) { + Two_Product(adxtail, bdy, at_blarge, at_b[0]); + at_b[1] = at_blarge; + at_blen = 2; + negate = -adxtail; + Two_Product(negate, cdy, at_clarge, at_c[0]); + at_c[1] = at_clarge; + at_clen = 2; + } else { + Two_Product(adxtail, bdy, adxt_bdy1, adxt_bdy0); + Two_Product(adytail, bdx, adyt_bdx1, adyt_bdx0); + Two_Two_Diff(adxt_bdy1, adxt_bdy0, adyt_bdx1, adyt_bdx0, + at_blarge, at_b[2], at_b[1], at_b[0]); + at_b[3] = at_blarge; + at_blen = 4; + Two_Product(adytail, cdx, adyt_cdx1, adyt_cdx0); + Two_Product(adxtail, cdy, adxt_cdy1, adxt_cdy0); + Two_Two_Diff(adyt_cdx1, adyt_cdx0, adxt_cdy1, adxt_cdy0, + at_clarge, at_c[2], at_c[1], at_c[0]); + at_c[3] = at_clarge; + at_clen = 4; + } + } + if (bdxtail == 0.0) { + if (bdytail == 0.0) { + bt_c[0] = 0.0; + bt_clen = 1; + bt_a[0] = 0.0; + bt_alen = 1; + } else { + negate = -bdytail; + Two_Product(negate, cdx, bt_clarge, bt_c[0]); + bt_c[1] = bt_clarge; + bt_clen = 2; + Two_Product(bdytail, adx, bt_alarge, bt_a[0]); + bt_a[1] = bt_alarge; + bt_alen = 2; + } + } else { + if (bdytail == 0.0) { + Two_Product(bdxtail, cdy, bt_clarge, bt_c[0]); + bt_c[1] = bt_clarge; + bt_clen = 2; + negate = -bdxtail; + Two_Product(negate, ady, bt_alarge, bt_a[0]); + bt_a[1] = bt_alarge; + bt_alen = 2; + } else { + Two_Product(bdxtail, cdy, bdxt_cdy1, bdxt_cdy0); + Two_Product(bdytail, cdx, bdyt_cdx1, bdyt_cdx0); + Two_Two_Diff(bdxt_cdy1, bdxt_cdy0, bdyt_cdx1, bdyt_cdx0, + bt_clarge, bt_c[2], bt_c[1], bt_c[0]); + bt_c[3] = bt_clarge; + bt_clen = 4; + Two_Product(bdytail, adx, bdyt_adx1, bdyt_adx0); + Two_Product(bdxtail, ady, bdxt_ady1, bdxt_ady0); + Two_Two_Diff(bdyt_adx1, bdyt_adx0, bdxt_ady1, bdxt_ady0, + bt_alarge, bt_a[2], bt_a[1], bt_a[0]); + bt_a[3] = bt_alarge; + bt_alen = 4; + } + } + if (cdxtail == 0.0) { + if (cdytail == 0.0) { + ct_a[0] = 0.0; + ct_alen = 1; + ct_b[0] = 0.0; + ct_blen = 1; + } else { + negate = -cdytail; + Two_Product(negate, adx, ct_alarge, ct_a[0]); + ct_a[1] = ct_alarge; + ct_alen = 2; + Two_Product(cdytail, bdx, ct_blarge, ct_b[0]); + ct_b[1] = ct_blarge; + ct_blen = 2; + } + } else { + if (cdytail == 0.0) { + Two_Product(cdxtail, ady, ct_alarge, ct_a[0]); + ct_a[1] = ct_alarge; + ct_alen = 2; + negate = -cdxtail; + Two_Product(negate, bdy, ct_blarge, ct_b[0]); + ct_b[1] = ct_blarge; + ct_blen = 2; + } else { + Two_Product(cdxtail, ady, cdxt_ady1, cdxt_ady0); + Two_Product(cdytail, adx, cdyt_adx1, cdyt_adx0); + Two_Two_Diff(cdxt_ady1, cdxt_ady0, cdyt_adx1, cdyt_adx0, + ct_alarge, ct_a[2], ct_a[1], ct_a[0]); + ct_a[3] = ct_alarge; + ct_alen = 4; + Two_Product(cdytail, bdx, cdyt_bdx1, cdyt_bdx0); + Two_Product(cdxtail, bdy, cdxt_bdy1, cdxt_bdy0); + Two_Two_Diff(cdyt_bdx1, cdyt_bdx0, cdxt_bdy1, cdxt_bdy0, + ct_blarge, ct_b[2], ct_b[1], ct_b[0]); + ct_b[3] = ct_blarge; + ct_blen = 4; + } + } + + bctlen = fast_expansion_sum_zeroelim(bt_clen, bt_c, ct_blen, ct_b, bct); + wlength = scale_expansion_zeroelim(bctlen, bct, adheight, w); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, wlength, w, + finother); + finswap = finnow; finnow = finother; finother = finswap; + + catlen = fast_expansion_sum_zeroelim(ct_alen, ct_a, at_clen, at_c, cat); + wlength = scale_expansion_zeroelim(catlen, cat, bdheight, w); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, wlength, w, + finother); + finswap = finnow; finnow = finother; finother = finswap; + + abtlen = fast_expansion_sum_zeroelim(at_blen, at_b, bt_alen, bt_a, abt); + wlength = scale_expansion_zeroelim(abtlen, abt, cdheight, w); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, wlength, w, + finother); + finswap = finnow; finnow = finother; finother = finswap; + + if (adheighttail != 0.0) { + vlength = scale_expansion_zeroelim(4, bc, adheighttail, v); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, vlength, v, + finother); + finswap = finnow; finnow = finother; finother = finswap; + } + if (bdheighttail != 0.0) { + vlength = scale_expansion_zeroelim(4, ca, bdheighttail, v); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, vlength, v, + finother); + finswap = finnow; finnow = finother; finother = finswap; + } + if (cdheighttail != 0.0) { + vlength = scale_expansion_zeroelim(4, ab, cdheighttail, v); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, vlength, v, + finother); + finswap = finnow; finnow = finother; finother = finswap; + } + + if (adxtail != 0.0) { + if (bdytail != 0.0) { + Two_Product(adxtail, bdytail, adxt_bdyt1, adxt_bdyt0); + Two_One_Product(adxt_bdyt1, adxt_bdyt0, cdheight, u3, u[2], u[1], u[0]); + u[3] = u3; + finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, + finother); + finswap = finnow; finnow = finother; finother = finswap; + if (cdheighttail != 0.0) { + Two_One_Product(adxt_bdyt1, adxt_bdyt0, cdheighttail, + u3, u[2], u[1], u[0]); + u[3] = u3; + finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, + finother); + finswap = finnow; finnow = finother; finother = finswap; + } + } + if (cdytail != 0.0) { + negate = -adxtail; + Two_Product(negate, cdytail, adxt_cdyt1, adxt_cdyt0); + Two_One_Product(adxt_cdyt1, adxt_cdyt0, bdheight, u3, u[2], u[1], u[0]); + u[3] = u3; + finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, + finother); + finswap = finnow; finnow = finother; finother = finswap; + if (bdheighttail != 0.0) { + Two_One_Product(adxt_cdyt1, adxt_cdyt0, bdheighttail, + u3, u[2], u[1], u[0]); + u[3] = u3; + finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, + finother); + finswap = finnow; finnow = finother; finother = finswap; + } + } + } + if (bdxtail != 0.0) { + if (cdytail != 0.0) { + Two_Product(bdxtail, cdytail, bdxt_cdyt1, bdxt_cdyt0); + Two_One_Product(bdxt_cdyt1, bdxt_cdyt0, adheight, u3, u[2], u[1], u[0]); + u[3] = u3; + finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, + finother); + finswap = finnow; finnow = finother; finother = finswap; + if (adheighttail != 0.0) { + Two_One_Product(bdxt_cdyt1, bdxt_cdyt0, adheighttail, + u3, u[2], u[1], u[0]); + u[3] = u3; + finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, + finother); + finswap = finnow; finnow = finother; finother = finswap; + } + } + if (adytail != 0.0) { + negate = -bdxtail; + Two_Product(negate, adytail, bdxt_adyt1, bdxt_adyt0); + Two_One_Product(bdxt_adyt1, bdxt_adyt0, cdheight, u3, u[2], u[1], u[0]); + u[3] = u3; + finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, + finother); + finswap = finnow; finnow = finother; finother = finswap; + if (cdheighttail != 0.0) { + Two_One_Product(bdxt_adyt1, bdxt_adyt0, cdheighttail, + u3, u[2], u[1], u[0]); + u[3] = u3; + finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, + finother); + finswap = finnow; finnow = finother; finother = finswap; + } + } + } + if (cdxtail != 0.0) { + if (adytail != 0.0) { + Two_Product(cdxtail, adytail, cdxt_adyt1, cdxt_adyt0); + Two_One_Product(cdxt_adyt1, cdxt_adyt0, bdheight, u3, u[2], u[1], u[0]); + u[3] = u3; + finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, + finother); + finswap = finnow; finnow = finother; finother = finswap; + if (bdheighttail != 0.0) { + Two_One_Product(cdxt_adyt1, cdxt_adyt0, bdheighttail, + u3, u[2], u[1], u[0]); + u[3] = u3; + finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, + finother); + finswap = finnow; finnow = finother; finother = finswap; + } + } + if (bdytail != 0.0) { + negate = -cdxtail; + Two_Product(negate, bdytail, cdxt_bdyt1, cdxt_bdyt0); + Two_One_Product(cdxt_bdyt1, cdxt_bdyt0, adheight, u3, u[2], u[1], u[0]); + u[3] = u3; + finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, + finother); + finswap = finnow; finnow = finother; finother = finswap; + if (adheighttail != 0.0) { + Two_One_Product(cdxt_bdyt1, cdxt_bdyt0, adheighttail, + u3, u[2], u[1], u[0]); + u[3] = u3; + finlength = fast_expansion_sum_zeroelim(finlength, finnow, 4, u, + finother); + finswap = finnow; finnow = finother; finother = finswap; + } + } + } + + if (adheighttail != 0.0) { + wlength = scale_expansion_zeroelim(bctlen, bct, adheighttail, w); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, wlength, w, + finother); + finswap = finnow; finnow = finother; finother = finswap; + } + if (bdheighttail != 0.0) { + wlength = scale_expansion_zeroelim(catlen, cat, bdheighttail, w); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, wlength, w, + finother); + finswap = finnow; finnow = finother; finother = finswap; + } + if (cdheighttail != 0.0) { + wlength = scale_expansion_zeroelim(abtlen, abt, cdheighttail, w); + finlength = fast_expansion_sum_zeroelim(finlength, finnow, wlength, w, + finother); + finswap = finnow; finnow = finother; finother = finswap; + } + + return finnow[finlength - 1]; +} + +#ifdef ANSI_DECLARATORS +REAL orient3d(struct mesh *m, struct behavior *b, + vertex pa, vertex pb, vertex pc, vertex pd, + REAL aheight, REAL bheight, REAL cheight, REAL dheight) +#else /* not ANSI_DECLARATORS */ +REAL orient3d(m, b, pa, pb, pc, pd, aheight, bheight, cheight, dheight) +struct mesh *m; +struct behavior *b; +vertex pa; +vertex pb; +vertex pc; +vertex pd; +REAL aheight; +REAL bheight; +REAL cheight; +REAL dheight; +#endif /* not ANSI_DECLARATORS */ + +{ + REAL adx, bdx, cdx, ady, bdy, cdy, adheight, bdheight, cdheight; + REAL bdxcdy, cdxbdy, cdxady, adxcdy, adxbdy, bdxady; + REAL det; + REAL permanent, errbound; + + m->orient3dcount++; + + adx = pa[0] - pd[0]; + bdx = pb[0] - pd[0]; + cdx = pc[0] - pd[0]; + ady = pa[1] - pd[1]; + bdy = pb[1] - pd[1]; + cdy = pc[1] - pd[1]; + adheight = aheight - dheight; + bdheight = bheight - dheight; + cdheight = cheight - dheight; + + bdxcdy = bdx * cdy; + cdxbdy = cdx * bdy; + + cdxady = cdx * ady; + adxcdy = adx * cdy; + + adxbdy = adx * bdy; + bdxady = bdx * ady; + + det = adheight * (bdxcdy - cdxbdy) + + bdheight * (cdxady - adxcdy) + + cdheight * (adxbdy - bdxady); + + if (b->noexact) { + return det; + } + + permanent = (Absolute(bdxcdy) + Absolute(cdxbdy)) * Absolute(adheight) + + (Absolute(cdxady) + Absolute(adxcdy)) * Absolute(bdheight) + + (Absolute(adxbdy) + Absolute(bdxady)) * Absolute(cdheight); + errbound = o3derrboundA * permanent; + if ((det > errbound) || (-det > errbound)) { + return det; + } + + return orient3dadapt(pa, pb, pc, pd, aheight, bheight, cheight, dheight, + permanent); +} + +/*****************************************************************************/ +/* */ +/* nonregular() Return a positive value if the point pd is incompatible */ +/* with the circle or plane passing through pa, pb, and pc */ +/* (meaning that pd is inside the circle or below the */ +/* plane); a negative value if it is compatible; and zero if */ +/* the four points are cocircular/coplanar. The points pa, */ +/* pb, and pc must be in counterclockwise order, or the sign */ +/* of the result will be reversed. */ +/* */ +/* If the -w switch is used, the points are lifted onto the parabolic */ +/* lifting map, then they are dropped according to their weights, then the */ +/* 3D orientation test is applied. If the -W switch is used, the points' */ +/* heights are already provided, so the 3D orientation test is applied */ +/* directly. If neither switch is used, the incircle test is applied. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +REAL nonregular(struct mesh *m, struct behavior *b, + vertex pa, vertex pb, vertex pc, vertex pd) +#else /* not ANSI_DECLARATORS */ +REAL nonregular(m, b, pa, pb, pc, pd) +struct mesh *m; +struct behavior *b; +vertex pa; +vertex pb; +vertex pc; +vertex pd; +#endif /* not ANSI_DECLARATORS */ + +{ + if (b->weighted == 0) { + return incircle(m, b, pa, pb, pc, pd); + } else if (b->weighted == 1) { + return orient3d(m, b, pa, pb, pc, pd, + pa[0] * pa[0] + pa[1] * pa[1] - pa[2], + pb[0] * pb[0] + pb[1] * pb[1] - pb[2], + pc[0] * pc[0] + pc[1] * pc[1] - pc[2], + pd[0] * pd[0] + pd[1] * pd[1] - pd[2]); + } else { + return orient3d(m, b, pa, pb, pc, pd, pa[2], pb[2], pc[2], pd[2]); + } +} + +/*****************************************************************************/ +/* */ +/* findcircumcenter() Find the circumcenter of a triangle. */ +/* */ +/* The result is returned both in terms of x-y coordinates and xi-eta */ +/* (barycentric) coordinates. The xi-eta coordinate system is defined in */ +/* terms of the triangle: the origin of the triangle is the origin of the */ +/* coordinate system; the destination of the triangle is one unit along the */ +/* xi axis; and the apex of the triangle is one unit along the eta axis. */ +/* This procedure also returns the square of the length of the triangle's */ +/* shortest edge. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void findcircumcenter(struct mesh *m, struct behavior *b, + vertex torg, vertex tdest, vertex tapex, + vertex circumcenter, REAL *xi, REAL *eta, REAL *minedge) +#else /* not ANSI_DECLARATORS */ +void findcircumcenter(m, b, torg, tdest, tapex, circumcenter, xi, eta, minedge) +struct mesh *m; +struct behavior *b; +vertex torg; +vertex tdest; +vertex tapex; +vertex circumcenter; +REAL *xi; +REAL *eta; +REAL *minedge; +#endif /* not ANSI_DECLARATORS */ + +{ + REAL xdo, ydo, xao, yao; + REAL dodist, aodist, dadist; + REAL denominator; + REAL dx, dy; + + m->circumcentercount++; + + /* Compute the circumcenter of the triangle. */ + xdo = tdest[0] - torg[0]; + ydo = tdest[1] - torg[1]; + xao = tapex[0] - torg[0]; + yao = tapex[1] - torg[1]; + dodist = xdo * xdo + ydo * ydo; + aodist = xao * xao + yao * yao; + dadist = (tdest[0] - tapex[0]) * (tdest[0] - tapex[0]) + + (tdest[1] - tapex[1]) * (tdest[1] - tapex[1]); + if (b->noexact) { + denominator = 0.5 / (xdo * yao - xao * ydo); + } else { + /* Use the counterclockwise() routine to ensure a positive (and */ + /* reasonably accurate) result, avoiding any possibility of */ + /* division by zero. */ + denominator = 0.5 / counterclockwise(m, b, tdest, tapex, torg); + /* Don't count the above as an orientation test. */ + m->counterclockcount--; + } + circumcenter[0] = torg[0] - (ydo * aodist - yao * dodist) * denominator; + circumcenter[1] = torg[1] + (xdo * aodist - xao * dodist) * denominator; + + /* To interpolate vertex attributes for the new vertex inserted at */ + /* the circumcenter, define a coordinate system with a xi-axis, */ + /* directed from the triangle's origin to its destination, and */ + /* an eta-axis, directed from its origin to its apex. */ + /* Calculate the xi and eta coordinates of the circumcenter. */ + dx = circumcenter[0] - torg[0]; + dy = circumcenter[1] - torg[1]; + *xi = (dx * yao - xao * dy) * (2.0 * denominator); + *eta = (xdo * dy - dx * ydo) * (2.0 * denominator); + + /* Find the length of the triangle's shortest edge. This serves as */ + /* a conservative estimate of the insertion radius of the */ + /* circumcenter's parent. The estimate is used to ensure that */ + /* the algorithm terminates even if very small angles appear in */ + /* the input PSLG. */ + *minedge = ((dodist < aodist) && (dodist < dadist)) ? dodist : + (aodist < dadist) ? aodist : dadist; +} + +/** **/ +/** **/ +/********* Geometric primitives end here *********/ + +/*****************************************************************************/ +/* */ +/* triangleinit() Initialize some variables. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void triangleinit(struct mesh *m) +#else /* not ANSI_DECLARATORS */ +void triangleinit(m) +struct mesh *m; +#endif /* not ANSI_DECLARATORS */ + +{ + m->vertices.maxitems = m->triangles.maxitems = m->subsegs.maxitems = + m->viri.maxitems = m->badsubsegs.maxitems = m->badtriangles.maxitems = + m->flipstackers.maxitems = m->splaynodes.maxitems = 0l; + m->vertices.itembytes = m->triangles.itembytes = m->subsegs.itembytes = + m->viri.itembytes = m->badsubsegs.itembytes = m->badtriangles.itembytes = + m->flipstackers.itembytes = m->splaynodes.itembytes = 0; + m->recenttri.tri = (triangle *) NULL; /* No triangle has been visited yet. */ + m->undeads = 0; /* No eliminated input vertices yet. */ + m->samples = 1; /* Point location should take at least one sample. */ + m->checksegments = 0; /* There are no segments in the triangulation yet. */ + m->checkquality = 0; /* The quality triangulation stage has not begun. */ + m->incirclecount = m->counterclockcount = m->orient3dcount = 0; + m->hyperbolacount = m->circletopcount = m->circumcentercount = 0; + randomseed = 1; + + exactinit(); /* Initialize exact arithmetic constants. */ +} + +/*****************************************************************************/ +/* */ +/* randomnation() Generate a random number between 0 and `choices' - 1. */ +/* */ +/* This is a simple linear congruential random number generator. Hence, it */ +/* is a bad random number generator, but good enough for most randomized */ +/* geometric algorithms. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +unsigned long randomnation(unsigned int choices) +#else /* not ANSI_DECLARATORS */ +unsigned long randomnation(choices) +unsigned int choices; +#endif /* not ANSI_DECLARATORS */ + +{ + randomseed = (randomseed * 1366l + 150889l) % 714025l; + return randomseed / (714025l / choices + 1); +} + +/********* Mesh quality testing routines begin here *********/ +/** **/ +/** **/ + +/*****************************************************************************/ +/* */ +/* checkmesh() Test the mesh for topological consistency. */ +/* */ +/*****************************************************************************/ + +#ifndef REDUCED + +#ifdef ANSI_DECLARATORS +void checkmesh(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +void checkmesh(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri triangleloop; + struct otri oppotri, oppooppotri; + vertex triorg, tridest, triapex; + vertex oppoorg, oppodest; + int horrors; + int saveexact; + triangle ptr; /* Temporary variable used by sym(). */ + + /* Temporarily turn on exact arithmetic if it's off. */ + saveexact = b->noexact; + b->noexact = 0; + if (!b->quiet) { + fprintf(stderr, " Checking consistency of mesh...\n"); + } + horrors = 0; + /* Run through the list of triangles, checking each one. */ + traversalinit(&m->triangles); + triangleloop.tri = triangletraverse(m); + while (triangleloop.tri != (triangle *) NULL) { + /* Check all three edges of the triangle. */ + for (triangleloop.orient = 0; triangleloop.orient < 3; + triangleloop.orient++) { + org(triangleloop, triorg); + dest(triangleloop, tridest); + if (triangleloop.orient == 0) { /* Only test for inversion once. */ + /* Test if the triangle is flat or inverted. */ + apex(triangleloop, triapex); + if (counterclockwise(m, b, triorg, tridest, triapex) <= 0.0) { + fprintf(stderr, " !! !! Inverted "); + printtriangle(m, b, &triangleloop); + horrors++; + } + } + /* Find the neighboring triangle on this edge. */ + sym(triangleloop, oppotri); + if (oppotri.tri != m->dummytri) { + /* Check that the triangle's neighbor knows it's a neighbor. */ + sym(oppotri, oppooppotri); + if ((triangleloop.tri != oppooppotri.tri) + || (triangleloop.orient != oppooppotri.orient)) { + fprintf(stderr, " !! !! Asymmetric triangle-triangle bond:\n"); + if (triangleloop.tri == oppooppotri.tri) { + fprintf(stderr, " (Right triangle, wrong orientation)\n"); + } + fprintf(stderr, " First "); + printtriangle(m, b, &triangleloop); + fprintf(stderr, " Second (nonreciprocating) "); + printtriangle(m, b, &oppotri); + horrors++; + } + /* Check that both triangles agree on the identities */ + /* of their shared vertices. */ + org(oppotri, oppoorg); + dest(oppotri, oppodest); + if ((triorg != oppodest) || (tridest != oppoorg)) { + fprintf(stderr, " !! !! Mismatched edge coordinates between two triangles:\n" + ); + fprintf(stderr, " First mismatched "); + printtriangle(m, b, &triangleloop); + fprintf(stderr, " Second mismatched "); + printtriangle(m, b, &oppotri); + horrors++; + } + } + } + triangleloop.tri = triangletraverse(m); + } + if (horrors == 0) { + if (!b->quiet) { + fprintf(stderr, " In my studied opinion, the mesh appears to be consistent.\n"); + } + } else if (horrors == 1) { + fprintf(stderr, " !! !! !! !! Precisely one festering wound discovered.\n"); + } else { + fprintf(stderr, " !! !! !! !! %d abominations witnessed.\n", horrors); + } + /* Restore the status of exact arithmetic. */ + b->noexact = saveexact; +} + +#endif /* not REDUCED */ + +/*****************************************************************************/ +/* */ +/* checkdelaunay() Ensure that the mesh is (constrained) Delaunay. */ +/* */ +/*****************************************************************************/ + +#ifndef REDUCED + +#ifdef ANSI_DECLARATORS +void checkdelaunay(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +void checkdelaunay(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri triangleloop; + struct otri oppotri; + struct osub opposubseg; + vertex triorg, tridest, triapex; + vertex oppoapex; + int shouldbedelaunay; + int horrors; + int saveexact; + triangle ptr; /* Temporary variable used by sym(). */ + subseg sptr; /* Temporary variable used by tspivot(). */ + + /* Temporarily turn on exact arithmetic if it's off. */ + saveexact = b->noexact; + b->noexact = 0; + if (!b->quiet) { + fprintf(stderr, " Checking Delaunay property of mesh...\n"); + } + horrors = 0; + /* Run through the list of triangles, checking each one. */ + traversalinit(&m->triangles); + triangleloop.tri = triangletraverse(m); + while (triangleloop.tri != (triangle *) NULL) { + /* Check all three edges of the triangle. */ + for (triangleloop.orient = 0; triangleloop.orient < 3; + triangleloop.orient++) { + org(triangleloop, triorg); + dest(triangleloop, tridest); + apex(triangleloop, triapex); + sym(triangleloop, oppotri); + apex(oppotri, oppoapex); + /* Only test that the edge is locally Delaunay if there is an */ + /* adjoining triangle whose pointer is larger (to ensure that */ + /* each pair isn't tested twice). */ + shouldbedelaunay = (oppotri.tri != m->dummytri) && + !deadtri(oppotri.tri) && (triangleloop.tri < oppotri.tri) && + (triorg != m->infvertex1) && (triorg != m->infvertex2) && + (triorg != m->infvertex3) && + (tridest != m->infvertex1) && (tridest != m->infvertex2) && + (tridest != m->infvertex3) && + (triapex != m->infvertex1) && (triapex != m->infvertex2) && + (triapex != m->infvertex3) && + (oppoapex != m->infvertex1) && (oppoapex != m->infvertex2) && + (oppoapex != m->infvertex3); + if (m->checksegments && shouldbedelaunay) { + /* If a subsegment separates the triangles, then the edge is */ + /* constrained, so no local Delaunay test should be done. */ + tspivot(triangleloop, opposubseg); + if (opposubseg.ss != m->dummysub){ + shouldbedelaunay = 0; + } + } + if (shouldbedelaunay) { + if (nonregular(m, b, triorg, tridest, triapex, oppoapex) > 0.0) { + if (!b->weighted) { + fprintf(stderr, " !! !! Non-Delaunay pair of triangles:\n"); + fprintf(stderr, " First non-Delaunay "); + printtriangle(m, b, &triangleloop); + fprintf(stderr, " Second non-Delaunay "); + } else { + fprintf(stderr, " !! !! Non-regular pair of triangles:\n"); + fprintf(stderr, " First non-regular "); + printtriangle(m, b, &triangleloop); + fprintf(stderr, " Second non-regular "); + } + printtriangle(m, b, &oppotri); + horrors++; + } + } + } + triangleloop.tri = triangletraverse(m); + } + if (horrors == 0) { + if (!b->quiet) { + fprintf(stderr, + " By virtue of my perceptive intelligence, I declare the mesh Delaunay.\n"); + } + } else if (horrors == 1) { + fprintf(stderr, + " !! !! !! !! Precisely one terrifying transgression identified.\n"); + } else { + fprintf(stderr, " !! !! !! !! %d obscenities viewed with horror.\n", horrors); + } + /* Restore the status of exact arithmetic. */ + b->noexact = saveexact; +} + +#endif /* not REDUCED */ + +/*****************************************************************************/ +/* */ +/* enqueuebadtriang() Add a bad triangle data structure to the end of a */ +/* queue. */ +/* */ +/* The queue is actually a set of 64 queues. I use multiple queues to give */ +/* priority to smaller angles. I originally implemented a heap, but the */ +/* queues are faster by a larger margin than I'd suspected. */ +/* */ +/*****************************************************************************/ + +#ifndef CDT_ONLY + +#ifdef ANSI_DECLARATORS +void enqueuebadtriang(struct mesh *m, struct behavior *b, + struct badtriang *badtri) +#else /* not ANSI_DECLARATORS */ +void enqueuebadtriang(m, b, badtri) +struct mesh *m; +struct behavior *b; +struct badtriang *badtri; +#endif /* not ANSI_DECLARATORS */ + +{ + int queuenumber; + int i; + + if (b->verbose > 2) { + fprintf(stderr, " Queueing bad triangle:\n"); + fprintf(stderr, " (%.12g, %.12g) (%.12g, %.12g) (%.12g, %.12g)\n", + badtri->triangorg[0], badtri->triangorg[1], + badtri->triangdest[0], badtri->triangdest[1], + badtri->triangapex[0], badtri->triangapex[1]); + } + /* Determine the appropriate queue to put the bad triangle into. */ + if (badtri->key > 0.6) { + queuenumber = (int) (160.0 * (badtri->key - 0.6)); + if (queuenumber > 63) { + queuenumber = 63; + } + } else { + /* It's not a bad angle; put the triangle in the lowest-priority queue. */ + queuenumber = 0; + } + + /* Are we inserting into an empty queue? */ + if (m->queuefront[queuenumber] == (struct badtriang *) NULL) { + /* Yes, we are inserting into an empty queue. */ + /* Will this become the highest-priority queue? */ + if (queuenumber > m->firstnonemptyq) { + /* Yes, this is the highest-priority queue. */ + m->nextnonemptyq[queuenumber] = m->firstnonemptyq; + m->firstnonemptyq = queuenumber; + } else { + /* No, this is not the highest-priority queue. */ + /* Find the queue with next higher priority. */ + i = queuenumber + 1; + while (m->queuefront[i] == (struct badtriang *) NULL) { + i++; + } + /* Mark the newly nonempty queue as following a higher-priority queue. */ + m->nextnonemptyq[queuenumber] = m->nextnonemptyq[i]; + m->nextnonemptyq[i] = queuenumber; + } + /* Put the bad triangle at the beginning of the (empty) queue. */ + m->queuefront[queuenumber] = badtri; + } else { + /* Add the bad triangle to the end of an already nonempty queue. */ + m->queuetail[queuenumber]->nexttriang = badtri; + } + /* Maintain a pointer to the last triangle of the queue. */ + m->queuetail[queuenumber] = badtri; + /* Newly enqueued bad triangle has no successor in the queue. */ + badtri->nexttriang = (struct badtriang *) NULL; +} + +#endif /* not CDT_ONLY */ + +/*****************************************************************************/ +/* */ +/* enqueuebadtri() Add a bad triangle to the end of a queue. */ +/* */ +/* Allocates a badtriang data structure for the triangle, then passes it to */ +/* enqueuebadtriang(). */ +/* */ +/*****************************************************************************/ + +#ifndef CDT_ONLY + +#ifdef ANSI_DECLARATORS +void enqueuebadtri(struct mesh *m, struct behavior *b, struct otri *enqtri, + REAL angle, vertex enqapex, vertex enqorg, vertex enqdest) +#else /* not ANSI_DECLARATORS */ +void enqueuebadtri(m, b, enqtri, angle, enqapex, enqorg, enqdest) +struct mesh *m; +struct behavior *b; +struct otri *enqtri; +REAL angle; +vertex enqapex; +vertex enqorg; +vertex enqdest; +#endif /* not ANSI_DECLARATORS */ + +{ + struct badtriang *newbad; + + /* Allocate space for the bad triangle. */ + newbad = (struct badtriang *) poolalloc(&m->badtriangles); + newbad->poortri = encode(*enqtri); + newbad->key = angle; + newbad->triangapex = enqapex; + newbad->triangorg = enqorg; + newbad->triangdest = enqdest; + enqueuebadtriang(m, b, newbad); +} + +#endif /* not CDT_ONLY */ + +/*****************************************************************************/ +/* */ +/* dequeuebadtriang() Remove a triangle from the front of the queue. */ +/* */ +/*****************************************************************************/ + +#ifndef CDT_ONLY + +#ifdef ANSI_DECLARATORS +struct badtriang *dequeuebadtriang(struct mesh *m) +#else /* not ANSI_DECLARATORS */ +struct badtriang *dequeuebadtriang(m) +struct mesh *m; +#endif /* not ANSI_DECLARATORS */ + +{ + struct badtriang *result; + + /* If no queues are nonempty, return NULL. */ + if (m->firstnonemptyq < 0) { + return (struct badtriang *) NULL; + } + /* Find the first triangle of the highest-priority queue. */ + result = m->queuefront[m->firstnonemptyq]; + /* Remove the triangle from the queue. */ + m->queuefront[m->firstnonemptyq] = result->nexttriang; + /* If this queue is now empty, note the new highest-priority */ + /* nonempty queue. */ + if (result == m->queuetail[m->firstnonemptyq]) { + m->firstnonemptyq = m->nextnonemptyq[m->firstnonemptyq]; + } + return result; +} + +#endif /* not CDT_ONLY */ + +/*****************************************************************************/ +/* */ +/* under60degrees() Return 1 if the two incident input segments are */ +/* separated by an angle less than 60 degrees; */ +/* 0 otherwise. */ +/* */ +/* The two input segments MUST have the same origin. */ +/* */ +/*****************************************************************************/ + +#ifndef CDT_ONLY + +int under60degrees(struct osub *sub1, struct osub *sub2) { + vertex segmentapex, v1, v2; + REAL dotprod; + + sorg(*sub1, segmentapex); + sdest(*sub1, v1); + sdest(*sub2, v2); + dotprod = (v2[0] - segmentapex[0]) * (v1[0] - segmentapex[0]) + + (v2[1] - segmentapex[1]) * (v1[1] - segmentapex[1]); + return (dotprod > 0.0) && + (4.0 * dotprod * dotprod > + ((v1[0] - segmentapex[0]) * (v1[0] - segmentapex[0]) + + (v1[1] - segmentapex[1]) * (v1[1] - segmentapex[1])) * + ((v2[0] - segmentapex[0]) * (v2[0] - segmentapex[0]) + + (v2[1] - segmentapex[1]) * (v2[1] - segmentapex[1]))); +} + +#endif /* not CDT_ONLY */ + +/*****************************************************************************/ +/* */ +/* clockwiseseg() Find the next segment clockwise from `thissub' having */ +/* the same origin and return it as `nextsub' if the */ +/* intervening region is inside the domain. */ +/* */ +/* Returns 1 if the next segment is separated from `thissub' by less than */ +/* 60 degrees, and the intervening region is inside the domain. */ +/* */ +/*****************************************************************************/ + +#ifndef CDT_ONLY + +int clockwiseseg(struct mesh *m, struct osub *thissub, struct osub *nextsub) { + struct otri neighbortri; + triangle ptr; /* Temporary variable used by sym() and stpivot(). */ + subseg sptr; /* Temporary variable used by tspivot(). */ + + stpivot(*thissub, neighbortri); + if (neighbortri.tri == m->dummytri) { + return 0; + } else { + lnextself(neighbortri); + tspivot(neighbortri, *nextsub); + while (nextsub->ss == m->dummysub) { + symself(neighbortri); + lnextself(neighbortri); + tspivot(neighbortri, *nextsub); + } + ssymself(*nextsub); + return under60degrees(thissub, nextsub); + } +} + +#endif /* not CDT_ONLY */ + +/*****************************************************************************/ +/* */ +/* counterclockwiseseg() Find the next segment counterclockwise from */ +/* `thissub' having the same origin and return it */ +/* as `nextsub' if the intervening region is inside */ +/* the domain. */ +/* */ +/* Returns 1 if the next segment is separated from `thissub' by less than */ +/* 60 degrees, and the intervening region is inside the domain. */ +/* */ +/*****************************************************************************/ + +#ifndef CDT_ONLY + +int counterclockwiseseg(struct mesh *m, struct osub *thissub, + struct osub *nextsub) { + struct otri neighbortri; + struct osub subsym; + triangle ptr; /* Temporary variable used by sym() and stpivot(). */ + subseg sptr; /* Temporary variable used by tspivot(). */ + + ssym(*thissub, subsym); + stpivot(subsym, neighbortri); + if (neighbortri.tri == m->dummytri) { + return 0; + } else { + lprevself(neighbortri); + tspivot(neighbortri, *nextsub); + while (nextsub->ss == m->dummysub) { + symself(neighbortri); + lprevself(neighbortri); + tspivot(neighbortri, *nextsub); + } + return under60degrees(thissub, nextsub); + } +} + +#endif /* not CDT_ONLY */ + +#ifndef CDT_ONLY + +/*****************************************************************************/ +/* */ +/* splitpermitted() Return 1 if `testsubseg' is part of a subsegment */ +/* cluster that is eligible for splitting. */ +/* */ +/* The term "subsegment cluster" is formally defined in my paper "Mesh */ +/* Generation for Domains with Small Angles." The algorithm that uses this */ +/* procedure is also described there. */ +/* */ +/* A subsegment cluster is eligible for splitting if (1) it includes a */ +/* subsegment whose length is not a power of two, (2) its subsegments are */ +/* not all the same length, or (3) no new edge that will be created by */ +/* splitting all the subsegments in the cluster has a length shorter than */ +/* the insertion radius of the encroaching vertex, whose square is given */ +/* as the parameter `iradius'. Note that the shortest edges created by */ +/* splitting a cluster are those whose endpoints are both subsegment */ +/* midpoints introduced when the cluster is split. */ +/* */ +/* `testsubseg' is also eligible for splitting (and a 1 will be returned) */ +/* if it is part of two subsegment clusters; one at its origin and one at */ +/* its destination. */ +/* */ +/*****************************************************************************/ + +int splitpermitted(struct mesh *m, struct osub *testsubseg, REAL iradius) { + struct osub cwsubseg, ccwsubseg, cwsubseg2, ccwsubseg2; + struct osub testsym; + struct osub startsubseg, nowsubseg; + vertex suborg, dest1, dest2; + REAL nearestpoweroffour, seglength, prevseglength, edgelength; + int cwsmall, ccwsmall, cwsmall2, ccwsmall2; + int orgcluster, destcluster; + int toosmall; + + /* Find the square of the subsegment's length, and the nearest power of */ + /* four (which is the square of the nearest power of two to the */ + /* subsegment's length). */ + sorg(*testsubseg, suborg); + sdest(*testsubseg, dest1); + seglength = (dest1[0] - suborg[0]) * (dest1[0] - suborg[0]) + + (dest1[1] - suborg[1]) * (dest1[1] - suborg[1]); + nearestpoweroffour = 1.0; + while (seglength > 2.0 * nearestpoweroffour) { + nearestpoweroffour *= 4.0; + } + while (seglength < 0.5 * nearestpoweroffour) { + nearestpoweroffour *= 0.25; + } + /* If the segment's length is not a power of two, the segment */ + /* is eligible for splitting. */ + if ((nearestpoweroffour > 1.001 * seglength) || + (nearestpoweroffour < 0.999 * seglength)) { + return 1; + } + + /* Is `testsubseg' part of a subsegment cluster at its origin? */ + cwsmall = clockwiseseg(m, testsubseg, &cwsubseg); + ccwsmall = cwsmall ? 0 : counterclockwiseseg(m, testsubseg, &ccwsubseg); + orgcluster = cwsmall || ccwsmall; + + /* Is `testsubseg' part of a subsegment cluster at its destination? */ + ssym(*testsubseg, testsym); + cwsmall2 = clockwiseseg(m, &testsym, &cwsubseg2); + ccwsmall2 = cwsmall2 ? 0 : counterclockwiseseg(m, &testsym, &ccwsubseg2); + destcluster = cwsmall2 || ccwsmall2; + + if (orgcluster == destcluster) { + /* `testsubseg' is part of two clusters or none, */ + /* and thus should be split. */ + return 1; + } else if (orgcluster) { + /* `testsubseg' is part of a cluster at its origin. */ + subsegcopy(*testsubseg, startsubseg); + } else { + /* `testsubseg' is part of a cluster at its destination; switch to */ + /* the symmetric case, so we can use the same code to handle it. */ + subsegcopy(testsym, startsubseg); + subsegcopy(cwsubseg2, cwsubseg); + subsegcopy(ccwsubseg2, ccwsubseg); + cwsmall = cwsmall2; + ccwsmall = ccwsmall2; + } + + toosmall = 0; + if (cwsmall) { + /* Check the subsegment(s) clockwise from `testsubseg'. */ + subsegcopy(startsubseg, nowsubseg); + sorg(nowsubseg, suborg); + sdest(nowsubseg, dest1); + prevseglength = nearestpoweroffour; + do { + /* Is the next subsegment shorter than `startsubseg'? */ + sdest(cwsubseg, dest2); + seglength = (dest2[0] - suborg[0]) * (dest2[0] - suborg[0]) + + (dest2[1] - suborg[1]) * (dest2[1] - suborg[1]); + if (nearestpoweroffour > 1.001 * seglength) { + /* It's shorter; it's safe to split `startsubseg'. */ + return 1; + } + /* If the current and previous subsegments are split to a length */ + /* half that of `startsubseg' (which is a likely consequence if */ + /* `startsubseg' is split), what will be (the square of) the */ + /* length of the free edge between the splitting vertices? */ + edgelength = 0.5 * nearestpoweroffour * + (1 - (((dest1[0] - suborg[0]) * (dest2[0] - suborg[0]) + + (dest1[1] - suborg[1]) * (dest2[1] - suborg[1])) / + sqrt(prevseglength * seglength))); + if (edgelength < iradius) { + /* If this cluster is split, the new edge dest1-dest2 will be */ + /* smaller than the insertion radius of the encroaching vertex. */ + /* Hence, we'd prefer to avoid splitting it if possible. */ + toosmall = 1; + } + if (cwsubseg.ss == startsubseg.ss) { + /* We've gone all the way around the vertex. Split the cluster */ + /* if no edges will be too short. */ + return !toosmall; + } + + /* Find the next subsegment clockwise around the vertex. */ + subsegcopy(cwsubseg, nowsubseg); + dest1 = dest2; + prevseglength = seglength; + cwsmall = clockwiseseg(m, &nowsubseg, &cwsubseg); + } while (cwsmall); + + /* Prepare to start searching counterclockwise from */ + /* the starting subsegment. */ + ccwsmall = counterclockwiseseg(m, &startsubseg, &ccwsubseg); + } + + if (ccwsmall) { + /* Check the subsegment(s) counterclockwise from `testsubseg'. */ + subsegcopy(startsubseg, nowsubseg); + sorg(nowsubseg, suborg); + sdest(nowsubseg, dest1); + prevseglength = nearestpoweroffour; + do { + /* Is the next subsegment shorter than `startsubseg'? */ + sdest(ccwsubseg, dest2); + seglength = (dest2[0] - suborg[0]) * (dest2[0] - suborg[0]) + + (dest2[1] - suborg[1]) * (dest2[1] - suborg[1]); + if (nearestpoweroffour > 1.001 * seglength) { + /* It's shorter; it's safe to split `startsubseg'. */ + return 1; + } + /* half that of `startsubseg' (which is a likely consequence if */ + /* `startsubseg' is split), what will be (the square of) the */ + /* length of the free edge between the splitting vertices? */ + edgelength = 0.5 * nearestpoweroffour * + (1 - (((dest1[0] - suborg[0]) * (dest2[0] - suborg[0]) + + (dest1[1] - suborg[1]) * (dest2[1] - suborg[1])) / + sqrt(prevseglength * seglength))); + if (edgelength < iradius) { + /* If this cluster is split, the new edge dest1-dest2 will be */ + /* smaller than the insertion radius of the encroaching vertex. */ + /* Hence, we'd prefer to avoid splitting it if possible. */ + toosmall = 1; + } + if (ccwsubseg.ss == startsubseg.ss) { + /* We've gone all the way around the vertex. Split the cluster */ + /* if no edges will be too short. */ + return !toosmall; + } + + /* Find the next subsegment counterclockwise around the vertex. */ + subsegcopy(ccwsubseg, nowsubseg); + dest1 = dest2; + prevseglength = seglength; + ccwsmall = counterclockwiseseg(m, &nowsubseg, &ccwsubseg); + } while (ccwsmall); + } + + /* We've found every subsegment in the cluster. Split the cluster */ + /* if no edges will be too short. */ + return !toosmall; +} + +#endif /* not CDT_ONLY */ + +/*****************************************************************************/ +/* */ +/* checkseg4encroach() Check a subsegment to see if it is encroached; add */ +/* it to the list if it is. */ +/* */ +/* A subsegment is encroached if there is a vertex in its diametral circle */ +/* (that is, the subsegment faces an angle greater than 90 degrees). This */ +/* definition is due to Ruppert. */ +/* */ +/* Returns a nonzero value if the subsegment is encroached. */ +/* */ +/*****************************************************************************/ + +#ifndef CDT_ONLY + +#ifdef ANSI_DECLARATORS +int checkseg4encroach(struct mesh *m, struct behavior *b, + struct osub *testsubseg, REAL iradius) +#else /* not ANSI_DECLARATORS */ +int checkseg4encroach(m, b, testsubseg, iradius) +struct mesh *m; +struct behavior *b; +struct osub *testsubseg; +REAL iradius; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri neighbortri; + struct osub testsym; + struct badsubseg *encroachedseg; + REAL dotproduct; + int encroached; + int sides; + int enq; + vertex eorg, edest, eapex; + triangle ptr; /* Temporary variable used by stpivot(). */ + + encroached = 0; + sides = 0; + + sorg(*testsubseg, eorg); + sdest(*testsubseg, edest); + /* Check one neighbor of the subsegment. */ + stpivot(*testsubseg, neighbortri); + /* Does the neighbor exist, or is this a boundary edge? */ + if (neighbortri.tri != m->dummytri) { + sides++; + /* Find a vertex opposite this subsegment. */ + apex(neighbortri, eapex); + /* Check whether the apex is in the diametral lens of the subsegment */ + /* (or the diametral circle, if `nolenses' is set). A dot product */ + /* of two sides of the triangle is used to check whether the angle */ + /* at the apex is greater than 120 degrees (for lenses; 90 degrees */ + /* for diametral circles). */ + dotproduct = (eorg[0] - eapex[0]) * (edest[0] - eapex[0]) + + (eorg[1] - eapex[1]) * (edest[1] - eapex[1]); + if (dotproduct < 0.0) { + if (b->nolenses || + (dotproduct * dotproduct >= + 0.25 * ((eorg[0] - eapex[0]) * (eorg[0] - eapex[0]) + + (eorg[1] - eapex[1]) * (eorg[1] - eapex[1])) * + ((edest[0] - eapex[0]) * (edest[0] - eapex[0]) + + (edest[1] - eapex[1]) * (edest[1] - eapex[1])))) { + encroached = 1; + } + } + } + /* Check the other neighbor of the subsegment. */ + ssym(*testsubseg, testsym); + stpivot(testsym, neighbortri); + /* Does the neighbor exist, or is this a boundary edge? */ + if (neighbortri.tri != m->dummytri) { + sides++; + /* Find the other vertex opposite this subsegment. */ + apex(neighbortri, eapex); + /* Check whether the apex is in the diametral lens of the subsegment */ + /* (or the diametral circle, if `nolenses' is set). */ + dotproduct = (eorg[0] - eapex[0]) * (edest[0] - eapex[0]) + + (eorg[1] - eapex[1]) * (edest[1] - eapex[1]); + if (dotproduct < 0.0) { + if (b->nolenses || + (dotproduct * dotproduct >= + 0.25 * ((eorg[0] - eapex[0]) * (eorg[0] - eapex[0]) + + (eorg[1] - eapex[1]) * (eorg[1] - eapex[1])) * + ((edest[0] - eapex[0]) * (edest[0] - eapex[0]) + + (edest[1] - eapex[1]) * (edest[1] - eapex[1])))) { + encroached += 2; + } + } + } + + if (encroached && (!b->nobisect || ((b->nobisect == 1) && (sides == 2)))) { + /* Decide whether `testsubseg' should be split. */ + if (iradius > 0.0) { + /* The encroaching vertex is a triangle circumcenter, which will be */ + /* rejected. Hence, `testsubseg' probably should be split, unless */ + /* it is part of a subsegment cluster which, according to the rules */ + /* described in my paper "Mesh Generation for Domains with Small */ + /* Angles," should not be split. */ + enq = splitpermitted(m, testsubseg, iradius); + } else { + /* The encroaching vertex is an input vertex or was inserted in a */ + /* subsegment, so the encroached subsegment must be split. */ + enq = 1; + } + if (enq) { + if (b->verbose > 2) { + fprintf(stderr, + " Queueing encroached subsegment (%.12g, %.12g) (%.12g, %.12g).\n", + eorg[0], eorg[1], edest[0], edest[1]); + } + /* Add the subsegment to the list of encroached subsegments. */ + /* Be sure to get the orientation right. */ + encroachedseg = (struct badsubseg *) poolalloc(&m->badsubsegs); + if (encroached == 1) { + encroachedseg->encsubseg = sencode(*testsubseg); + encroachedseg->subsegorg = eorg; + encroachedseg->subsegdest = edest; + } else { + encroachedseg->encsubseg = sencode(testsym); + encroachedseg->subsegorg = edest; + encroachedseg->subsegdest = eorg; + } + } + } + + return encroached; +} + +#endif /* not CDT_ONLY */ + +/*****************************************************************************/ +/* */ +/* testtriangle() Test a face for quality measures. */ +/* */ +/* Tests a triangle to see if it satisfies the minimum angle condition and */ +/* the maximum area condition. Triangles that aren't up to spec are added */ +/* to the bad triangle queue. */ +/* */ +/*****************************************************************************/ + +#ifndef CDT_ONLY + +#ifdef ANSI_DECLARATORS +void testtriangle(struct mesh *m, struct behavior *b, struct otri *testtri) +#else /* not ANSI_DECLARATORS */ +void testtriangle(m, b, testtri) +struct mesh *m; +struct behavior *b; +struct otri *testtri; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri sametesttri; + struct osub subseg1, subseg2; + vertex torg, tdest, tapex; + vertex anglevertex; + REAL dxod, dyod, dxda, dyda, dxao, dyao; + REAL dxod2, dyod2, dxda2, dyda2, dxao2, dyao2; + REAL apexlen, orglen, destlen; + REAL angle; + REAL area; + subseg sptr; /* Temporary variable used by tspivot(). */ + + org(*testtri, torg); + dest(*testtri, tdest); + apex(*testtri, tapex); + dxod = torg[0] - tdest[0]; + dyod = torg[1] - tdest[1]; + dxda = tdest[0] - tapex[0]; + dyda = tdest[1] - tapex[1]; + dxao = tapex[0] - torg[0]; + dyao = tapex[1] - torg[1]; + dxod2 = dxod * dxod; + dyod2 = dyod * dyod; + dxda2 = dxda * dxda; + dyda2 = dyda * dyda; + dxao2 = dxao * dxao; + dyao2 = dyao * dyao; + /* Find the lengths of the triangle's three edges. */ + apexlen = dxod2 + dyod2; + orglen = dxda2 + dyda2; + destlen = dxao2 + dyao2; + if ((apexlen < orglen) && (apexlen < destlen)) { + /* The edge opposite the apex is shortest. */ + /* Find the square of the cosine of the angle at the apex. */ + angle = dxda * dxao + dyda * dyao; + angle = angle * angle / (orglen * destlen); + anglevertex = tapex; + lnext(*testtri, sametesttri); + tspivot(sametesttri, subseg1); + lnextself(sametesttri); + tspivot(sametesttri, subseg2); + } else if (orglen < destlen) { + /* The edge opposite the origin is shortest. */ + /* Find the square of the cosine of the angle at the origin. */ + angle = dxod * dxao + dyod * dyao; + angle = angle * angle / (apexlen * destlen); + anglevertex = torg; + tspivot(*testtri, subseg1); + lprev(*testtri, sametesttri); + tspivot(sametesttri, subseg2); + } else { + /* The edge opposite the destination is shortest. */ + /* Find the square of the cosine of the angle at the destination. */ + angle = dxod * dxda + dyod * dyda; + angle = angle * angle / (apexlen * orglen); + anglevertex = tdest; + tspivot(*testtri, subseg1); + lnext(*testtri, sametesttri); + tspivot(sametesttri, subseg2); + } + + /* Check if both edges that form the angle are segments. */ + if ((subseg1.ss != m->dummysub) && (subseg2.ss != m->dummysub)) { + /* The angle is a segment intersection. Don't add this bad triangle to */ + /* the list; there's nothing that can be done about a small angle */ + /* between two segments. */ + angle = 0.0; + } + + /* Check whether the angle is smaller than permitted. */ + if (angle > b->goodangle) { + /* Add this triangle to the list of bad triangles. */ + enqueuebadtri(m, b, testtri, angle, tapex, torg, tdest); + return; + } + + if (b->vararea || b->fixedarea || b->usertest) { + /* Check whether the area is larger than permitted. */ + area = 0.5 * (dxod * dyda - dyod * dxda); + if (b->fixedarea && (area > b->maxarea)) { + /* Add this triangle to the list of bad triangles. */ + enqueuebadtri(m, b, testtri, angle, tapex, torg, tdest); + return; + } + + /* Nonpositive area constraints are treated as unconstrained. */ + if ((b->vararea) && (area > areabound(*testtri)) && + (areabound(*testtri) > 0.0)) { + /* Add this triangle to the list of bad triangles. */ + enqueuebadtri(m, b, testtri, angle, tapex, torg, tdest); + return; + } + + if (b->usertest) { + /* Check whether the user thinks this triangle is too large. */ + if (triunsuitable(torg, tdest, tapex, area)) { + enqueuebadtri(m, b, testtri, angle, tapex, torg, tdest); + return; + } + } + } +} + +#endif /* not CDT_ONLY */ + +/** **/ +/** **/ +/********* Mesh quality testing routines end here *********/ + +/********* Point location routines begin here *********/ +/** **/ +/** **/ + +/*****************************************************************************/ +/* */ +/* makevertexmap() Construct a mapping from vertices to triangles to */ +/* improve the speed of point location for segment */ +/* insertion. */ +/* */ +/* Traverses all the triangles, and provides each corner of each triangle */ +/* with a pointer to that triangle. Of course, pointers will be */ +/* overwritten by other pointers because (almost) each vertex is a corner */ +/* of several triangles, but in the end every vertex will point to some */ +/* triangle that contains it. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void makevertexmap(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +void makevertexmap(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri triangleloop; + vertex triorg; + + if (b->verbose) { + fprintf(stderr, " Constructing mapping from vertices to triangles.\n"); + } + traversalinit(&m->triangles); + triangleloop.tri = triangletraverse(m); + while (triangleloop.tri != (triangle *) NULL) { + /* Check all three vertices of the triangle. */ + for (triangleloop.orient = 0; triangleloop.orient < 3; + triangleloop.orient++) { + org(triangleloop, triorg); + setvertex2tri(triorg, encode(triangleloop)); + } + triangleloop.tri = triangletraverse(m); + } +} + +/*****************************************************************************/ +/* */ +/* preciselocate() Find a triangle or edge containing a given point. */ +/* */ +/* Begins its search from `searchtri'. It is important that `searchtri' */ +/* be a handle with the property that `searchpoint' is strictly to the left */ +/* of the edge denoted by `searchtri', or is collinear with that edge and */ +/* does not intersect that edge. (In particular, `searchpoint' should not */ +/* be the origin or destination of that edge.) */ +/* */ +/* These conditions are imposed because preciselocate() is normally used in */ +/* one of two situations: */ +/* */ +/* (1) To try to find the location to insert a new point. Normally, we */ +/* know an edge that the point is strictly to the left of. In the */ +/* incremental Delaunay algorithm, that edge is a bounding box edge. */ +/* In Ruppert's Delaunay refinement algorithm for quality meshing, */ +/* that edge is the shortest edge of the triangle whose circumcenter */ +/* is being inserted. */ +/* */ +/* (2) To try to find an existing point. In this case, any edge on the */ +/* convex hull is a good starting edge. You must screen out the */ +/* possibility that the vertex sought is an endpoint of the starting */ +/* edge before you call preciselocate(). */ +/* */ +/* On completion, `searchtri' is a triangle that contains `searchpoint'. */ +/* */ +/* This implementation differs from that given by Guibas and Stolfi. It */ +/* walks from triangle to triangle, crossing an edge only if `searchpoint' */ +/* is on the other side of the line containing that edge. After entering */ +/* a triangle, there are two edges by which one can leave that triangle. */ +/* If both edges are valid (`searchpoint' is on the other side of both */ +/* edges), one of the two is chosen by drawing a line perpendicular to */ +/* the entry edge (whose endpoints are `forg' and `fdest') passing through */ +/* `fapex'. Depending on which side of this perpendicular `searchpoint' */ +/* falls on, an exit edge is chosen. */ +/* */ +/* This implementation is empirically faster than the Guibas and Stolfi */ +/* point location routine (which I originally used), which tends to spiral */ +/* in toward its target. */ +/* */ +/* Returns ONVERTEX if the point lies on an existing vertex. `searchtri' */ +/* is a handle whose origin is the existing vertex. */ +/* */ +/* Returns ONEDGE if the point lies on a mesh edge. `searchtri' is a */ +/* handle whose primary edge is the edge on which the point lies. */ +/* */ +/* Returns INTRIANGLE if the point lies strictly within a triangle. */ +/* `searchtri' is a handle on the triangle that contains the point. */ +/* */ +/* Returns OUTSIDE if the point lies outside the mesh. `searchtri' is a */ +/* handle whose primary edge the point is to the right of. This might */ +/* occur when the circumcenter of a triangle falls just slightly outside */ +/* the mesh due to floating-point roundoff error. It also occurs when */ +/* seeking a hole or region point that a foolish user has placed outside */ +/* the mesh. */ +/* */ +/* If `stopatsubsegment' is nonzero, the search will stop if it tries to */ +/* walk through a subsegment, and will return OUTSIDE. */ +/* */ +/* WARNING: This routine is designed for convex triangulations, and will */ +/* not generally work after the holes and concavities have been carved. */ +/* However, it can still be used to find the circumcenter of a triangle, as */ +/* long as the search is begun from the triangle in question. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +enum locateresult preciselocate(struct mesh *m, struct behavior *b, + vertex searchpoint, struct otri *searchtri, + int stopatsubsegment) +#else /* not ANSI_DECLARATORS */ +enum locateresult preciselocate(m, b, searchpoint, searchtri, stopatsubsegment) +struct mesh *m; +struct behavior *b; +vertex searchpoint; +struct otri *searchtri; +int stopatsubsegment; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri backtracktri; + struct osub checkedge; + vertex forg, fdest, fapex; + REAL orgorient, destorient; + int moveleft; + triangle ptr; /* Temporary variable used by sym(). */ + subseg sptr; /* Temporary variable used by tspivot(). */ + + if (b->verbose > 2) { + fprintf(stderr, " Searching for point (%.12g, %.12g).\n", + searchpoint[0], searchpoint[1]); + } + /* Where are we? */ + org(*searchtri, forg); + dest(*searchtri, fdest); + apex(*searchtri, fapex); + while (1) { + if (b->verbose > 2) { + fprintf(stderr, " At (%.12g, %.12g) (%.12g, %.12g) (%.12g, %.12g)\n", + forg[0], forg[1], fdest[0], fdest[1], fapex[0], fapex[1]); + } + /* Check whether the apex is the point we seek. */ + if ((fapex[0] == searchpoint[0]) && (fapex[1] == searchpoint[1])) { + lprevself(*searchtri); + return ONVERTEX; + } + /* Does the point lie on the other side of the line defined by the */ + /* triangle edge opposite the triangle's destination? */ + destorient = counterclockwise(m, b, forg, fapex, searchpoint); + /* Does the point lie on the other side of the line defined by the */ + /* triangle edge opposite the triangle's origin? */ + orgorient = counterclockwise(m, b, fapex, fdest, searchpoint); + if (destorient > 0.0) { + if (orgorient > 0.0) { + /* Move left if the inner product of (fapex - searchpoint) and */ + /* (fdest - forg) is positive. This is equivalent to drawing */ + /* a line perpendicular to the line (forg, fdest) and passing */ + /* through `fapex', and determining which side of this line */ + /* `searchpoint' falls on. */ + moveleft = (fapex[0] - searchpoint[0]) * (fdest[0] - forg[0]) + + (fapex[1] - searchpoint[1]) * (fdest[1] - forg[1]) > 0.0; + } else { + moveleft = 1; + } + } else { + if (orgorient > 0.0) { + moveleft = 0; + } else { + /* The point we seek must be on the boundary of or inside this */ + /* triangle. */ + if (destorient == 0.0) { + lprevself(*searchtri); + return ONEDGE; + } + if (orgorient == 0.0) { + lnextself(*searchtri); + return ONEDGE; + } + return INTRIANGLE; + } + } + + /* Move to another triangle. Leave a trace `backtracktri' in case */ + /* floating-point roundoff or some such bogey causes us to walk */ + /* off a boundary of the triangulation. */ + if (moveleft) { + lprev(*searchtri, backtracktri); + fdest = fapex; + } else { + lnext(*searchtri, backtracktri); + forg = fapex; + } + sym(backtracktri, *searchtri); + + if (m->checksegments && stopatsubsegment) { + /* Check for walking through a subsegment. */ + tspivot(backtracktri, checkedge); + if (checkedge.ss != m->dummysub) { + /* Go back to the last triangle. */ + otricopy(backtracktri, *searchtri); + return OUTSIDE; + } + } + /* Check for walking right out of the triangulation. */ + if (searchtri->tri == m->dummytri) { + /* Go back to the last triangle. */ + otricopy(backtracktri, *searchtri); + return OUTSIDE; + } + + apex(*searchtri, fapex); + } +} + +/*****************************************************************************/ +/* */ +/* locate() Find a triangle or edge containing a given point. */ +/* */ +/* Searching begins from one of: the input `searchtri', a recently */ +/* encountered triangle `recenttri', or from a triangle chosen from a */ +/* random sample. The choice is made by determining which triangle's */ +/* origin is closest to the point we are searching for. Normally, */ +/* `searchtri' should be a handle on the convex hull of the triangulation. */ +/* */ +/* Details on the random sampling method can be found in the Mucke, Saias, */ +/* and Zhu paper cited in the header of this code. */ +/* */ +/* On completion, `searchtri' is a triangle that contains `searchpoint'. */ +/* */ +/* Returns ONVERTEX if the point lies on an existing vertex. `searchtri' */ +/* is a handle whose origin is the existing vertex. */ +/* */ +/* Returns ONEDGE if the point lies on a mesh edge. `searchtri' is a */ +/* handle whose primary edge is the edge on which the point lies. */ +/* */ +/* Returns INTRIANGLE if the point lies strictly within a triangle. */ +/* `searchtri' is a handle on the triangle that contains the point. */ +/* */ +/* Returns OUTSIDE if the point lies outside the mesh. `searchtri' is a */ +/* handle whose primary edge the point is to the right of. This might */ +/* occur when the circumcenter of a triangle falls just slightly outside */ +/* the mesh due to floating-point roundoff error. It also occurs when */ +/* seeking a hole or region point that a foolish user has placed outside */ +/* the mesh. */ +/* */ +/* WARNING: This routine is designed for convex triangulations, and will */ +/* not generally work after the holes and concavities have been carved. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +enum locateresult locate(struct mesh *m, struct behavior *b, + vertex searchpoint, struct otri *searchtri) +#else /* not ANSI_DECLARATORS */ +enum locateresult locate(m, b, searchpoint, searchtri) +struct mesh *m; +struct behavior *b; +vertex searchpoint; +struct otri *searchtri; +#endif /* not ANSI_DECLARATORS */ + +{ + VOID **sampleblock; + triangle *firsttri; + struct otri sampletri; + vertex torg, tdest; + unsigned long alignptr; + REAL searchdist, dist; + REAL ahead; + long sampleblocks, samplesperblock, samplenum; + long triblocks; + long i, j; + triangle ptr; /* Temporary variable used by sym(). */ + + if (b->verbose > 2) { + fprintf(stderr, " Randomly sampling for a triangle near point (%.12g, %.12g).\n", + searchpoint[0], searchpoint[1]); + } + /* Record the distance from the suggested starting triangle to the */ + /* point we seek. */ + org(*searchtri, torg); + searchdist = (searchpoint[0] - torg[0]) * (searchpoint[0] - torg[0]) + + (searchpoint[1] - torg[1]) * (searchpoint[1] - torg[1]); + if (b->verbose > 2) { + fprintf(stderr, " Boundary triangle has origin (%.12g, %.12g).\n", + torg[0], torg[1]); + } + + /* If a recently encountered triangle has been recorded and has not been */ + /* deallocated, test it as a good starting point. */ + if (m->recenttri.tri != (triangle *) NULL) { + if (!deadtri(m->recenttri.tri)) { + org(m->recenttri, torg); + if ((torg[0] == searchpoint[0]) && (torg[1] == searchpoint[1])) { + otricopy(m->recenttri, *searchtri); + return ONVERTEX; + } + dist = (searchpoint[0] - torg[0]) * (searchpoint[0] - torg[0]) + + (searchpoint[1] - torg[1]) * (searchpoint[1] - torg[1]); + if (dist < searchdist) { + otricopy(m->recenttri, *searchtri); + searchdist = dist; + if (b->verbose > 2) { + fprintf(stderr, " Choosing recent triangle with origin (%.12g, %.12g).\n", + torg[0], torg[1]); + } + } + } + } + + /* The number of random samples taken is proportional to the cube root of */ + /* the number of triangles in the mesh. The next bit of code assumes */ + /* that the number of triangles increases monotonically. */ + while (SAMPLEFACTOR * m->samples * m->samples * m->samples < + m->triangles.items) { + m->samples++; + } + triblocks = (m->triangles.maxitems + TRIPERBLOCK - 1) / TRIPERBLOCK; + samplesperblock = (m->samples + triblocks - 1) / triblocks; + sampleblocks = m->samples / samplesperblock; + sampleblock = m->triangles.firstblock; + sampletri.orient = 0; + for (i = 0; i < sampleblocks; i++) { + alignptr = (unsigned long) (sampleblock + 1); + firsttri = (triangle *) (alignptr + (unsigned long) m->triangles.alignbytes + - (alignptr % (unsigned long) m->triangles.alignbytes)); + for (j = 0; j < samplesperblock; j++) { + if (i == triblocks - 1) { + samplenum = randomnation((int) + (m->triangles.maxitems - (i * TRIPERBLOCK))); + } else { + samplenum = randomnation(TRIPERBLOCK); + } + sampletri.tri = (triangle *) + (firsttri + (samplenum * m->triangles.itemwords)); + if (!deadtri(sampletri.tri)) { + org(sampletri, torg); + dist = (searchpoint[0] - torg[0]) * (searchpoint[0] - torg[0]) + + (searchpoint[1] - torg[1]) * (searchpoint[1] - torg[1]); + if (dist < searchdist) { + otricopy(sampletri, *searchtri); + searchdist = dist; + if (b->verbose > 2) { + fprintf(stderr, " Choosing triangle with origin (%.12g, %.12g).\n", + torg[0], torg[1]); + } + } + } + } + sampleblock = (VOID **) *sampleblock; + } + + /* Where are we? */ + org(*searchtri, torg); + dest(*searchtri, tdest); + /* Check the starting triangle's vertices. */ + if ((torg[0] == searchpoint[0]) && (torg[1] == searchpoint[1])) { + return ONVERTEX; + } + if ((tdest[0] == searchpoint[0]) && (tdest[1] == searchpoint[1])) { + lnextself(*searchtri); + return ONVERTEX; + } + /* Orient `searchtri' to fit the preconditions of calling preciselocate(). */ + ahead = counterclockwise(m, b, torg, tdest, searchpoint); + if (ahead < 0.0) { + /* Turn around so that `searchpoint' is to the left of the */ + /* edge specified by `searchtri'. */ + symself(*searchtri); + } else if (ahead == 0.0) { + /* Check if `searchpoint' is between `torg' and `tdest'. */ + if (((torg[0] < searchpoint[0]) == (searchpoint[0] < tdest[0])) && + ((torg[1] < searchpoint[1]) == (searchpoint[1] < tdest[1]))) { + return ONEDGE; + } + } + return preciselocate(m, b, searchpoint, searchtri, 0); +} + +/** **/ +/** **/ +/********* Point location routines end here *********/ + +/********* Mesh transformation routines begin here *********/ +/** **/ +/** **/ + +/*****************************************************************************/ +/* */ +/* insertsubseg() Create a new subsegment and insert it between two */ +/* triangles. */ +/* */ +/* The new subsegment is inserted at the edge described by the handle */ +/* `tri'. Its vertices are properly initialized. The marker `subsegmark' */ +/* is applied to the subsegment and, if appropriate, its vertices. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void insertsubseg(struct mesh *m, struct behavior *b, struct otri *tri, + int subsegmark) +#else /* not ANSI_DECLARATORS */ +void insertsubseg(m, b, tri, subsegmark) +struct mesh *m; +struct behavior *b; +struct otri *tri; /* Edge at which to insert the new subsegment. */ +int subsegmark; /* Marker for the new subsegment. */ +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri oppotri; + struct osub newsubseg; + vertex triorg, tridest; + triangle ptr; /* Temporary variable used by sym(). */ + subseg sptr; /* Temporary variable used by tspivot(). */ + + org(*tri, triorg); + dest(*tri, tridest); + /* Mark vertices if possible. */ + if (vertexmark(triorg) == 0) { + setvertexmark(triorg, subsegmark); + } + if (vertexmark(tridest) == 0) { + setvertexmark(tridest, subsegmark); + } + /* Check if there's already a subsegment here. */ + tspivot(*tri, newsubseg); + if (newsubseg.ss == m->dummysub) { + /* Make new subsegment and initialize its vertices. */ + makesubseg(m, &newsubseg); + setsorg(newsubseg, tridest); + setsdest(newsubseg, triorg); + /* Bond new subsegment to the two triangles it is sandwiched between. */ + /* Note that the facing triangle `oppotri' might be equal to */ + /* `dummytri' (outer space), but the new subsegment is bonded to it */ + /* all the same. */ + tsbond(*tri, newsubseg); + sym(*tri, oppotri); + ssymself(newsubseg); + tsbond(oppotri, newsubseg); + setmark(newsubseg, subsegmark); + if (b->verbose > 2) { + fprintf(stderr, " Inserting new "); + printsubseg(m, b, &newsubseg); + } + } else { + if (mark(newsubseg) == 0) { + setmark(newsubseg, subsegmark); + } + } +} + +/*****************************************************************************/ +/* */ +/* Terminology */ +/* */ +/* A "local transformation" replaces a small set of triangles with another */ +/* set of triangles. This may or may not involve inserting or deleting a */ +/* vertex. */ +/* */ +/* The term "casing" is used to describe the set of triangles that are */ +/* attached to the triangles being transformed, but are not transformed */ +/* themselves. Think of the casing as a fixed hollow structure inside */ +/* which all the action happens. A "casing" is only defined relative to */ +/* a single transformation; each occurrence of a transformation will */ +/* involve a different casing. */ +/* */ +/*****************************************************************************/ + +/*****************************************************************************/ +/* */ +/* flip() Transform two triangles to two different triangles by flipping */ +/* an edge counterclockwise within a quadrilateral. */ +/* */ +/* Imagine the original triangles, abc and bad, oriented so that the */ +/* shared edge ab lies in a horizontal plane, with the vertex b on the left */ +/* and the vertex a on the right. The vertex c lies below the edge, and */ +/* the vertex d lies above the edge. The `flipedge' handle holds the edge */ +/* ab of triangle abc, and is directed left, from vertex a to vertex b. */ +/* */ +/* The triangles abc and bad are deleted and replaced by the triangles cdb */ +/* and dca. The triangles that represent abc and bad are NOT deallocated; */ +/* they are reused for dca and cdb, respectively. Hence, any handles that */ +/* may have held the original triangles are still valid, although not */ +/* directed as they were before. */ +/* */ +/* Upon completion of this routine, the `flipedge' handle holds the edge */ +/* dc of triangle dca, and is directed down, from vertex d to vertex c. */ +/* (Hence, the two triangles have rotated counterclockwise.) */ +/* */ +/* WARNING: This transformation is geometrically valid only if the */ +/* quadrilateral adbc is convex. Furthermore, this transformation is */ +/* valid only if there is not a subsegment between the triangles abc and */ +/* bad. This routine does not check either of these preconditions, and */ +/* it is the responsibility of the calling routine to ensure that they are */ +/* met. If they are not, the streets shall be filled with wailing and */ +/* gnashing of teeth. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void flip(struct mesh *m, struct behavior *b, struct otri *flipedge) +#else /* not ANSI_DECLARATORS */ +void flip(m, b, flipedge) +struct mesh *m; +struct behavior *b; +struct otri *flipedge; /* Handle for the triangle abc. */ +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri botleft, botright; + struct otri topleft, topright; + struct otri top; + struct otri botlcasing, botrcasing; + struct otri toplcasing, toprcasing; + struct osub botlsubseg, botrsubseg; + struct osub toplsubseg, toprsubseg; + vertex leftvertex, rightvertex, botvertex; + vertex farvertex; + triangle ptr; /* Temporary variable used by sym(). */ + subseg sptr; /* Temporary variable used by tspivot(). */ + + /* Identify the vertices of the quadrilateral. */ + org(*flipedge, rightvertex); + dest(*flipedge, leftvertex); + apex(*flipedge, botvertex); + sym(*flipedge, top); +#ifdef SELF_CHECK + if (top.tri == m->dummytri) { + fprintf(stderr, "Internal error in flip(): Attempt to flip on boundary.\n"); + lnextself(*flipedge); + return; + } + if (m->checksegments) { + tspivot(*flipedge, toplsubseg); + if (toplsubseg.ss != m->dummysub) { + fprintf(stderr, "Internal error in flip(): Attempt to flip a segment.\n"); + lnextself(*flipedge); + return; + } + } +#endif /* SELF_CHECK */ + apex(top, farvertex); + + /* Identify the casing of the quadrilateral. */ + lprev(top, topleft); + sym(topleft, toplcasing); + lnext(top, topright); + sym(topright, toprcasing); + lnext(*flipedge, botleft); + sym(botleft, botlcasing); + lprev(*flipedge, botright); + sym(botright, botrcasing); + /* Rotate the quadrilateral one-quarter turn counterclockwise. */ + bond(topleft, botlcasing); + bond(botleft, botrcasing); + bond(botright, toprcasing); + bond(topright, toplcasing); + + if (m->checksegments) { + /* Check for subsegments and rebond them to the quadrilateral. */ + tspivot(topleft, toplsubseg); + tspivot(botleft, botlsubseg); + tspivot(botright, botrsubseg); + tspivot(topright, toprsubseg); + if (toplsubseg.ss == m->dummysub) { + tsdissolve(topright); + } else { + tsbond(topright, toplsubseg); + } + if (botlsubseg.ss == m->dummysub) { + tsdissolve(topleft); + } else { + tsbond(topleft, botlsubseg); + } + if (botrsubseg.ss == m->dummysub) { + tsdissolve(botleft); + } else { + tsbond(botleft, botrsubseg); + } + if (toprsubseg.ss == m->dummysub) { + tsdissolve(botright); + } else { + tsbond(botright, toprsubseg); + } + } + + /* New vertex assignments for the rotated quadrilateral. */ + setorg(*flipedge, farvertex); + setdest(*flipedge, botvertex); + setapex(*flipedge, rightvertex); + setorg(top, botvertex); + setdest(top, farvertex); + setapex(top, leftvertex); + if (b->verbose > 2) { + fprintf(stderr, " Edge flip results in left "); + printtriangle(m, b, &top); + fprintf(stderr, " and right "); + printtriangle(m, b, flipedge); + } +} + +/*****************************************************************************/ +/* */ +/* unflip() Transform two triangles to two different triangles by */ +/* flipping an edge clockwise within a quadrilateral. Reverses */ +/* the flip() operation so that the data structures representing */ +/* the triangles are back where they were before the flip(). */ +/* */ +/* Imagine the original triangles, abc and bad, oriented so that the */ +/* shared edge ab lies in a horizontal plane, with the vertex b on the left */ +/* and the vertex a on the right. The vertex c lies below the edge, and */ +/* the vertex d lies above the edge. The `flipedge' handle holds the edge */ +/* ab of triangle abc, and is directed left, from vertex a to vertex b. */ +/* */ +/* The triangles abc and bad are deleted and replaced by the triangles cdb */ +/* and dca. The triangles that represent abc and bad are NOT deallocated; */ +/* they are reused for cdb and dca, respectively. Hence, any handles that */ +/* may have held the original triangles are still valid, although not */ +/* directed as they were before. */ +/* */ +/* Upon completion of this routine, the `flipedge' handle holds the edge */ +/* cd of triangle cdb, and is directed up, from vertex c to vertex d. */ +/* (Hence, the two triangles have rotated clockwise.) */ +/* */ +/* WARNING: This transformation is geometrically valid only if the */ +/* quadrilateral adbc is convex. Furthermore, this transformation is */ +/* valid only if there is not a subsegment between the triangles abc and */ +/* bad. This routine does not check either of these preconditions, and */ +/* it is the responsibility of the calling routine to ensure that they are */ +/* met. If they are not, the streets shall be filled with wailing and */ +/* gnashing of teeth. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void unflip(struct mesh *m, struct behavior *b, struct otri *flipedge) +#else /* not ANSI_DECLARATORS */ +void unflip(m, b, flipedge) +struct mesh *m; +struct behavior *b; +struct otri *flipedge; /* Handle for the triangle abc. */ +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri botleft, botright; + struct otri topleft, topright; + struct otri top; + struct otri botlcasing, botrcasing; + struct otri toplcasing, toprcasing; + struct osub botlsubseg, botrsubseg; + struct osub toplsubseg, toprsubseg; + vertex leftvertex, rightvertex, botvertex; + vertex farvertex; + triangle ptr; /* Temporary variable used by sym(). */ + subseg sptr; /* Temporary variable used by tspivot(). */ + + /* Identify the vertices of the quadrilateral. */ + org(*flipedge, rightvertex); + dest(*flipedge, leftvertex); + apex(*flipedge, botvertex); + sym(*flipedge, top); +#ifdef SELF_CHECK + if (top.tri == m->dummytri) { + fprintf(stderr, "Internal error in unflip(): Attempt to flip on boundary.\n"); + lnextself(*flipedge); + return; + } + if (m->checksegments) { + tspivot(*flipedge, toplsubseg); + if (toplsubseg.ss != m->dummysub) { + fprintf(stderr, "Internal error in unflip(): Attempt to flip a subsegment.\n"); + lnextself(*flipedge); + return; + } + } +#endif /* SELF_CHECK */ + apex(top, farvertex); + + /* Identify the casing of the quadrilateral. */ + lprev(top, topleft); + sym(topleft, toplcasing); + lnext(top, topright); + sym(topright, toprcasing); + lnext(*flipedge, botleft); + sym(botleft, botlcasing); + lprev(*flipedge, botright); + sym(botright, botrcasing); + /* Rotate the quadrilateral one-quarter turn clockwise. */ + bond(topleft, toprcasing); + bond(botleft, toplcasing); + bond(botright, botlcasing); + bond(topright, botrcasing); + + if (m->checksegments) { + /* Check for subsegments and rebond them to the quadrilateral. */ + tspivot(topleft, toplsubseg); + tspivot(botleft, botlsubseg); + tspivot(botright, botrsubseg); + tspivot(topright, toprsubseg); + if (toplsubseg.ss == m->dummysub) { + tsdissolve(botleft); + } else { + tsbond(botleft, toplsubseg); + } + if (botlsubseg.ss == m->dummysub) { + tsdissolve(botright); + } else { + tsbond(botright, botlsubseg); + } + if (botrsubseg.ss == m->dummysub) { + tsdissolve(topright); + } else { + tsbond(topright, botrsubseg); + } + if (toprsubseg.ss == m->dummysub) { + tsdissolve(topleft); + } else { + tsbond(topleft, toprsubseg); + } + } + + /* New vertex assignments for the rotated quadrilateral. */ + setorg(*flipedge, botvertex); + setdest(*flipedge, farvertex); + setapex(*flipedge, leftvertex); + setorg(top, farvertex); + setdest(top, botvertex); + setapex(top, rightvertex); + if (b->verbose > 2) { + fprintf(stderr, " Edge unflip results in left "); + printtriangle(m, b, flipedge); + fprintf(stderr, " and right "); + printtriangle(m, b, &top); + } +} + +/*****************************************************************************/ +/* */ +/* insertvertex() Insert a vertex into a Delaunay triangulation, */ +/* performing flips as necessary to maintain the Delaunay */ +/* property. */ +/* */ +/* The point `insertvertex' is located. If `searchtri.tri' is not NULL, */ +/* the search for the containing triangle begins from `searchtri'. If */ +/* `searchtri.tri' is NULL, a full point location procedure is called. */ +/* If `insertvertex' is found inside a triangle, the triangle is split into */ +/* three; if `insertvertex' lies on an edge, the edge is split in two, */ +/* thereby splitting the two adjacent triangles into four. Edge flips are */ +/* used to restore the Delaunay property. If `insertvertex' lies on an */ +/* existing vertex, no action is taken, and the value DUPLICATEVERTEX is */ +/* returned. On return, `searchtri' is set to a handle whose origin is the */ +/* existing vertex. */ +/* */ +/* Normally, the parameter `splitseg' is set to NULL, implying that no */ +/* subsegment should be split. In this case, if `insertvertex' is found to */ +/* lie on a segment, no action is taken, and the value VIOLATINGVERTEX is */ +/* returned. On return, `searchtri' is set to a handle whose primary edge */ +/* is the violated subsegment. */ +/* */ +/* If the calling routine wishes to split a subsegment by inserting a */ +/* vertex in it, the parameter `splitseg' should be that subsegment. In */ +/* this case, `searchtri' MUST be the triangle handle reached by pivoting */ +/* from that subsegment; no point location is done. */ +/* */ +/* `segmentflaws' and `triflaws' are flags that indicate whether or not */ +/* there should be checks for the creation of encroached subsegments or bad */ +/* quality triangles. If a newly inserted vertex encroaches upon */ +/* subsegments, these subsegments are added to the list of subsegments to */ +/* be split if `segmentflaws' is set. If bad triangles are created, these */ +/* are added to the queue if `triflaws' is set. */ +/* */ +/* If a duplicate vertex or violated segment does not prevent the vertex */ +/* from being inserted, the return value will be ENCROACHINGVERTEX if the */ +/* vertex encroaches upon a subsegment (and checking is enabled), or */ +/* SUCCESSFULVERTEX otherwise. In either case, `searchtri' is set to a */ +/* handle whose origin is the newly inserted vertex. */ +/* */ +/* insertvertex() does not use flip() for reasons of speed; some */ +/* information can be reused from edge flip to edge flip, like the */ +/* locations of subsegments. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +enum insertvertexresult insertvertex(struct mesh *m, struct behavior *b, + vertex newvertex, struct otri *searchtri, + struct osub *splitseg, + int segmentflaws, int triflaws, + REAL iradius) +#else /* not ANSI_DECLARATORS */ +enum insertvertexresult insertvertex(m, b, newvertex, searchtri, splitseg, + segmentflaws, triflaws, iradius) +struct mesh *m; +struct behavior *b; +vertex newvertex; +struct otri *searchtri; +struct osub *splitseg; +int segmentflaws; +int triflaws; +REAL iradius; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri horiz; + struct otri top; + struct otri botleft, botright; + struct otri topleft, topright; + struct otri newbotleft, newbotright; + struct otri newtopright; + struct otri botlcasing, botrcasing; + struct otri toplcasing, toprcasing; + struct otri testtri; + struct osub botlsubseg, botrsubseg; + struct osub toplsubseg, toprsubseg; + struct osub brokensubseg; + struct osub checksubseg; + struct osub rightsubseg; + struct osub newsubseg; + struct badsubseg *encroached; + struct flipstacker *newflip; + vertex first; + vertex leftvertex, rightvertex, botvertex, topvertex, farvertex; + REAL attrib; + REAL area; + enum insertvertexresult success; + enum locateresult intersect; + int doflip; + int mirrorflag; + int enq; + int i; + triangle ptr; /* Temporary variable used by sym(). */ + subseg sptr; /* Temporary variable used by spivot() and tspivot(). */ + + if (b->verbose > 1) { + fprintf(stderr, " Inserting (%.12g, %.12g).\n", newvertex[0], newvertex[1]); + } + + if (splitseg == (struct osub *) NULL) { + /* Find the location of the vertex to be inserted. Check if a good */ + /* starting triangle has already been provided by the caller. */ + if (searchtri->tri == m->dummytri) { + /* Find a boundary triangle. */ + horiz.tri = m->dummytri; + horiz.orient = 0; + symself(horiz); + /* Search for a triangle containing `newvertex'. */ + intersect = locate(m, b, newvertex, &horiz); + } else { + /* Start searching from the triangle provided by the caller. */ + otricopy(*searchtri, horiz); + intersect = preciselocate(m, b, newvertex, &horiz, 1); + } + } else { + /* The calling routine provides the subsegment in which */ + /* the vertex is inserted. */ + otricopy(*searchtri, horiz); + intersect = ONEDGE; + } + if (intersect == ONVERTEX) { + /* There's already a vertex there. Return in `searchtri' a triangle */ + /* whose origin is the existing vertex. */ + otricopy(horiz, *searchtri); + otricopy(horiz, m->recenttri); + return DUPLICATEVERTEX; + } + if ((intersect == ONEDGE) || (intersect == OUTSIDE)) { + /* The vertex falls on an edge or boundary. */ + if (m->checksegments && (splitseg == (struct osub *) NULL)) { + /* Check whether the vertex falls on a subsegment. */ + tspivot(horiz, brokensubseg); + if (brokensubseg.ss != m->dummysub) { + /* The vertex falls on a subsegment, and hence will not be inserted. */ + if (segmentflaws) { + if (b->nobisect == 2) { + enq = 0; +#ifndef CDT_ONLY + } else if (iradius > 0.0) { + enq = splitpermitted(m, &brokensubseg, iradius); +#endif /* not CDT_ONLY */ + } else { + enq = 1; + } + if (enq && (b->nobisect == 1)) { + /* This subsegment may be split only if it is an */ + /* internal boundary. */ + sym(horiz, testtri); + enq = testtri.tri != m->dummytri; + } + if (enq) { + /* Add the subsegment to the list of encroached subsegments. */ + encroached = (struct badsubseg *) poolalloc(&m->badsubsegs); + encroached->encsubseg = sencode(brokensubseg); + sorg(brokensubseg, encroached->subsegorg); + sdest(brokensubseg, encroached->subsegdest); + if (b->verbose > 2) { + fprintf(stderr, + " Queueing encroached subsegment (%.12g, %.12g) (%.12g, %.12g).\n", + encroached->subsegorg[0], encroached->subsegorg[1], + encroached->subsegdest[0], encroached->subsegdest[1]); + } + } + } + /* Return a handle whose primary edge contains the vertex, */ + /* which has not been inserted. */ + otricopy(horiz, *searchtri); + otricopy(horiz, m->recenttri); + return VIOLATINGVERTEX; + } + } + + /* Insert the vertex on an edge, dividing one triangle into two (if */ + /* the edge lies on a boundary) or two triangles into four. */ + lprev(horiz, botright); + sym(botright, botrcasing); + sym(horiz, topright); + /* Is there a second triangle? (Or does this edge lie on a boundary?) */ + mirrorflag = topright.tri != m->dummytri; + if (mirrorflag) { + lnextself(topright); + sym(topright, toprcasing); + maketriangle(m, b, &newtopright); + } else { + /* Splitting a boundary edge increases the number of boundary edges. */ + m->hullsize++; + } + maketriangle(m, b, &newbotright); + + /* Set the vertices of changed and new triangles. */ + org(horiz, rightvertex); + dest(horiz, leftvertex); + apex(horiz, botvertex); + setorg(newbotright, botvertex); + setdest(newbotright, rightvertex); + setapex(newbotright, newvertex); + setorg(horiz, newvertex); + for (i = 0; i < m->eextras; i++) { + /* Set the element attributes of a new triangle. */ + setelemattribute(newbotright, i, elemattribute(botright, i)); + } + if (b->vararea) { + /* Set the area constraint of a new triangle. */ + setareabound(newbotright, areabound(botright)); + } + if (mirrorflag) { + dest(topright, topvertex); + setorg(newtopright, rightvertex); + setdest(newtopright, topvertex); + setapex(newtopright, newvertex); + setorg(topright, newvertex); + for (i = 0; i < m->eextras; i++) { + /* Set the element attributes of another new triangle. */ + setelemattribute(newtopright, i, elemattribute(topright, i)); + } + if (b->vararea) { + /* Set the area constraint of another new triangle. */ + setareabound(newtopright, areabound(topright)); + } + } + + /* There may be subsegments that need to be bonded */ + /* to the new triangle(s). */ + if (m->checksegments) { + tspivot(botright, botrsubseg); + if (botrsubseg.ss != m->dummysub) { + tsdissolve(botright); + tsbond(newbotright, botrsubseg); + } + if (mirrorflag) { + tspivot(topright, toprsubseg); + if (toprsubseg.ss != m->dummysub) { + tsdissolve(topright); + tsbond(newtopright, toprsubseg); + } + } + } + + /* Bond the new triangle(s) to the surrounding triangles. */ + bond(newbotright, botrcasing); + lprevself(newbotright); + bond(newbotright, botright); + lprevself(newbotright); + if (mirrorflag) { + bond(newtopright, toprcasing); + lnextself(newtopright); + bond(newtopright, topright); + lnextself(newtopright); + bond(newtopright, newbotright); + } + + if (splitseg != (struct osub *) NULL) { + /* Split the subsegment into two. */ + setsdest(*splitseg, newvertex); + ssymself(*splitseg); + spivot(*splitseg, rightsubseg); + insertsubseg(m, b, &newbotright, mark(*splitseg)); + tspivot(newbotright, newsubseg); + sbond(*splitseg, newsubseg); + ssymself(newsubseg); + sbond(newsubseg, rightsubseg); + ssymself(*splitseg); + /* Transfer the subsegment's boundary marker to the vertex */ + /* if required. */ + if (vertexmark(newvertex) == 0) { + setvertexmark(newvertex, mark(*splitseg)); + } + } + + if (m->checkquality) { + poolrestart(&m->flipstackers); + m->lastflip = (struct flipstacker *) poolalloc(&m->flipstackers); + m->lastflip->flippedtri = encode(horiz); + m->lastflip->prevflip = (struct flipstacker *) &insertvertex; + } + +#ifdef SELF_CHECK + if (counterclockwise(m, b, rightvertex, leftvertex, botvertex) < 0.0) { + fprintf(stderr, "Internal error in insertvertex():\n"); + fprintf(stderr, + " Clockwise triangle prior to edge vertex insertion (bottom).\n"); + } + if (mirrorflag) { + if (counterclockwise(m, b, leftvertex, rightvertex, topvertex) < 0.0) { + fprintf(stderr, "Internal error in insertvertex():\n"); + fprintf(stderr, " Clockwise triangle prior to edge vertex insertion (top).\n"); + } + if (counterclockwise(m, b, rightvertex, topvertex, newvertex) < 0.0) { + fprintf(stderr, "Internal error in insertvertex():\n"); + fprintf(stderr, + " Clockwise triangle after edge vertex insertion (top right).\n"); + } + if (counterclockwise(m, b, topvertex, leftvertex, newvertex) < 0.0) { + fprintf(stderr, "Internal error in insertvertex():\n"); + fprintf(stderr, + " Clockwise triangle after edge vertex insertion (top left).\n"); + } + } + if (counterclockwise(m, b, leftvertex, botvertex, newvertex) < 0.0) { + fprintf(stderr, "Internal error in insertvertex():\n"); + fprintf(stderr, + " Clockwise triangle after edge vertex insertion (bottom left).\n"); + } + if (counterclockwise(m, b, botvertex, rightvertex, newvertex) < 0.0) { + fprintf(stderr, "Internal error in insertvertex():\n"); + fprintf(stderr, + " Clockwise triangle after edge vertex insertion (bottom right).\n"); + } +#endif /* SELF_CHECK */ + if (b->verbose > 2) { + fprintf(stderr, " Updating bottom left "); + printtriangle(m, b, &botright); + if (mirrorflag) { + fprintf(stderr, " Updating top left "); + printtriangle(m, b, &topright); + fprintf(stderr, " Creating top right "); + printtriangle(m, b, &newtopright); + } + fprintf(stderr, " Creating bottom right "); + printtriangle(m, b, &newbotright); + } + + /* Position `horiz' on the first edge to check for */ + /* the Delaunay property. */ + lnextself(horiz); + } else { + /* Insert the vertex in a triangle, splitting it into three. */ + lnext(horiz, botleft); + lprev(horiz, botright); + sym(botleft, botlcasing); + sym(botright, botrcasing); + maketriangle(m, b, &newbotleft); + maketriangle(m, b, &newbotright); + + /* Set the vertices of changed and new triangles. */ + org(horiz, rightvertex); + dest(horiz, leftvertex); + apex(horiz, botvertex); + setorg(newbotleft, leftvertex); + setdest(newbotleft, botvertex); + setapex(newbotleft, newvertex); + setorg(newbotright, botvertex); + setdest(newbotright, rightvertex); + setapex(newbotright, newvertex); + setapex(horiz, newvertex); + for (i = 0; i < m->eextras; i++) { + /* Set the element attributes of the new triangles. */ + attrib = elemattribute(horiz, i); + setelemattribute(newbotleft, i, attrib); + setelemattribute(newbotright, i, attrib); + } + if (b->vararea) { + /* Set the area constraint of the new triangles. */ + area = areabound(horiz); + setareabound(newbotleft, area); + setareabound(newbotright, area); + } + + /* There may be subsegments that need to be bonded */ + /* to the new triangles. */ + if (m->checksegments) { + tspivot(botleft, botlsubseg); + if (botlsubseg.ss != m->dummysub) { + tsdissolve(botleft); + tsbond(newbotleft, botlsubseg); + } + tspivot(botright, botrsubseg); + if (botrsubseg.ss != m->dummysub) { + tsdissolve(botright); + tsbond(newbotright, botrsubseg); + } + } + + /* Bond the new triangles to the surrounding triangles. */ + bond(newbotleft, botlcasing); + bond(newbotright, botrcasing); + lnextself(newbotleft); + lprevself(newbotright); + bond(newbotleft, newbotright); + lnextself(newbotleft); + bond(botleft, newbotleft); + lprevself(newbotright); + bond(botright, newbotright); + + if (m->checkquality) { + poolrestart(&m->flipstackers); + m->lastflip = (struct flipstacker *) poolalloc(&m->flipstackers); + m->lastflip->flippedtri = encode(horiz); + m->lastflip->prevflip = (struct flipstacker *) NULL; + } + +#ifdef SELF_CHECK + if (counterclockwise(m, b, rightvertex, leftvertex, botvertex) < 0.0) { + fprintf(stderr, "Internal error in insertvertex():\n"); + fprintf(stderr, " Clockwise triangle prior to vertex insertion.\n"); + } + if (counterclockwise(m, b, rightvertex, leftvertex, newvertex) < 0.0) { + fprintf(stderr, "Internal error in insertvertex():\n"); + fprintf(stderr, " Clockwise triangle after vertex insertion (top).\n"); + } + if (counterclockwise(m, b, leftvertex, botvertex, newvertex) < 0.0) { + fprintf(stderr, "Internal error in insertvertex():\n"); + fprintf(stderr, " Clockwise triangle after vertex insertion (left).\n"); + } + if (counterclockwise(m, b, botvertex, rightvertex, newvertex) < 0.0) { + fprintf(stderr, "Internal error in insertvertex():\n"); + fprintf(stderr, " Clockwise triangle after vertex insertion (right).\n"); + } +#endif /* SELF_CHECK */ + if (b->verbose > 2) { + fprintf(stderr, " Updating top "); + printtriangle(m, b, &horiz); + fprintf(stderr, " Creating left "); + printtriangle(m, b, &newbotleft); + fprintf(stderr, " Creating right "); + printtriangle(m, b, &newbotright); + } + } + + /* The insertion is successful by default, unless an encroached */ + /* subsegment is found. */ + success = SUCCESSFULVERTEX; + /* Circle around the newly inserted vertex, checking each edge opposite */ + /* it for the Delaunay property. Non-Delaunay edges are flipped. */ + /* `horiz' is always the edge being checked. `first' marks where to */ + /* stop circling. */ + org(horiz, first); + rightvertex = first; + dest(horiz, leftvertex); + /* Circle until finished. */ + while (1) { + /* By default, the edge will be flipped. */ + doflip = 1; + + if (m->checksegments) { + /* Check for a subsegment, which cannot be flipped. */ + tspivot(horiz, checksubseg); + if (checksubseg.ss != m->dummysub) { + /* The edge is a subsegment and cannot be flipped. */ + doflip = 0; +#ifndef CDT_ONLY + if (segmentflaws) { + /* Does the new vertex encroach upon this subsegment? */ + if (checkseg4encroach(m, b, &checksubseg, iradius)) { + success = ENCROACHINGVERTEX; + } + } +#endif /* not CDT_ONLY */ + } + } + + if (doflip) { + /* Check if the edge is a boundary edge. */ + sym(horiz, top); + if (top.tri == m->dummytri) { + /* The edge is a boundary edge and cannot be flipped. */ + doflip = 0; + } else { + /* Find the vertex on the other side of the edge. */ + apex(top, farvertex); + /* In the incremental Delaunay triangulation algorithm, any of */ + /* `leftvertex', `rightvertex', and `farvertex' could be vertices */ + /* of the triangular bounding box. These vertices must be */ + /* treated as if they are infinitely distant, even though their */ + /* "coordinates" are not. */ + if ((leftvertex == m->infvertex1) || (leftvertex == m->infvertex2) || + (leftvertex == m->infvertex3)) { + /* `leftvertex' is infinitely distant. Check the convexity of */ + /* the boundary of the triangulation. 'farvertex' might be */ + /* infinite as well, but trust me, this same condition should */ + /* be applied. */ + doflip = counterclockwise(m, b, newvertex, rightvertex, farvertex) + > 0.0; + } else if ((rightvertex == m->infvertex1) || + (rightvertex == m->infvertex2) || + (rightvertex == m->infvertex3)) { + /* `rightvertex' is infinitely distant. Check the convexity of */ + /* the boundary of the triangulation. 'farvertex' might be */ + /* infinite as well, but trust me, this same condition should */ + /* be applied. */ + doflip = counterclockwise(m, b, farvertex, leftvertex, newvertex) + > 0.0; + } else if ((farvertex == m->infvertex1) || + (farvertex == m->infvertex2) || + (farvertex == m->infvertex3)) { + /* `farvertex' is infinitely distant and cannot be inside */ + /* the circumcircle of the triangle `horiz'. */ + doflip = 0; + } else { + /* Test whether the edge is locally Delaunay. */ + doflip = incircle(m, b, leftvertex, newvertex, rightvertex, + farvertex) > 0.0; + } + if (doflip) { + /* We made it! Flip the edge `horiz' by rotating its containing */ + /* quadrilateral (the two triangles adjacent to `horiz'). */ + /* Identify the casing of the quadrilateral. */ + lprev(top, topleft); + sym(topleft, toplcasing); + lnext(top, topright); + sym(topright, toprcasing); + lnext(horiz, botleft); + sym(botleft, botlcasing); + lprev(horiz, botright); + sym(botright, botrcasing); + /* Rotate the quadrilateral one-quarter turn counterclockwise. */ + bond(topleft, botlcasing); + bond(botleft, botrcasing); + bond(botright, toprcasing); + bond(topright, toplcasing); + if (m->checksegments) { + /* Check for subsegments and rebond them to the quadrilateral. */ + tspivot(topleft, toplsubseg); + tspivot(botleft, botlsubseg); + tspivot(botright, botrsubseg); + tspivot(topright, toprsubseg); + if (toplsubseg.ss == m->dummysub) { + tsdissolve(topright); + } else { + tsbond(topright, toplsubseg); + } + if (botlsubseg.ss == m->dummysub) { + tsdissolve(topleft); + } else { + tsbond(topleft, botlsubseg); + } + if (botrsubseg.ss == m->dummysub) { + tsdissolve(botleft); + } else { + tsbond(botleft, botrsubseg); + } + if (toprsubseg.ss == m->dummysub) { + tsdissolve(botright); + } else { + tsbond(botright, toprsubseg); + } + } + /* New vertex assignments for the rotated quadrilateral. */ + setorg(horiz, farvertex); + setdest(horiz, newvertex); + setapex(horiz, rightvertex); + setorg(top, newvertex); + setdest(top, farvertex); + setapex(top, leftvertex); + for (i = 0; i < m->eextras; i++) { + /* Take the average of the two triangles' attributes. */ + attrib = 0.5 * (elemattribute(top, i) + elemattribute(horiz, i)); + setelemattribute(top, i, attrib); + setelemattribute(horiz, i, attrib); + } + if (b->vararea) { + if ((areabound(top) <= 0.0) || (areabound(horiz) <= 0.0)) { + area = -1.0; + } else { + /* Take the average of the two triangles' area constraints. */ + /* This prevents small area constraints from migrating a */ + /* long, long way from their original location due to flips. */ + area = 0.5 * (areabound(top) + areabound(horiz)); + } + setareabound(top, area); + setareabound(horiz, area); + } + + if (m->checkquality) { + newflip = (struct flipstacker *) poolalloc(&m->flipstackers); + newflip->flippedtri = encode(horiz); + newflip->prevflip = m->lastflip; + m->lastflip = newflip; + } + +#ifdef SELF_CHECK + if (newvertex != (vertex) NULL) { + if (counterclockwise(m, b, leftvertex, newvertex, rightvertex) < + 0.0) { + fprintf(stderr, "Internal error in insertvertex():\n"); + fprintf(stderr, " Clockwise triangle prior to edge flip (bottom).\n"); + } + /* The following test has been removed because constrainededge() */ + /* sometimes generates inverted triangles that insertvertex() */ + /* removes. */ +/* + if (counterclockwise(m, b, rightvertex, farvertex, leftvertex) < + 0.0) { + fprintf(stderr, "Internal error in insertvertex():\n"); + fprintf(stderr, " Clockwise triangle prior to edge flip (top).\n"); + } +*/ + if (counterclockwise(m, b, farvertex, leftvertex, newvertex) < + 0.0) { + fprintf(stderr, "Internal error in insertvertex():\n"); + fprintf(stderr, " Clockwise triangle after edge flip (left).\n"); + } + if (counterclockwise(m, b, newvertex, rightvertex, farvertex) < + 0.0) { + fprintf(stderr, "Internal error in insertvertex():\n"); + fprintf(stderr, " Clockwise triangle after edge flip (right).\n"); + } + } +#endif /* SELF_CHECK */ + if (b->verbose > 2) { + fprintf(stderr, " Edge flip results in left "); + lnextself(topleft); + printtriangle(m, b, &topleft); + fprintf(stderr, " and right "); + printtriangle(m, b, &horiz); + } + /* On the next iterations, consider the two edges that were */ + /* exposed (this is, are now visible to the newly inserted */ + /* vertex) by the edge flip. */ + lprevself(horiz); + leftvertex = farvertex; + } + } + } + if (!doflip) { + /* The handle `horiz' is accepted as locally Delaunay. */ +#ifndef CDT_ONLY + if (triflaws) { + /* Check the triangle `horiz' for quality. */ + testtriangle(m, b, &horiz); + } +#endif /* not CDT_ONLY */ + /* Look for the next edge around the newly inserted vertex. */ + lnextself(horiz); + sym(horiz, testtri); + /* Check for finishing a complete revolution about the new vertex, or */ + /* falling outside of the triangulation. The latter will happen */ + /* when a vertex is inserted at a boundary. */ + if ((leftvertex == first) || (testtri.tri == m->dummytri)) { + /* We're done. Return a triangle whose origin is the new vertex. */ + lnext(horiz, *searchtri); + lnext(horiz, m->recenttri); + return success; + } + /* Finish finding the next edge around the newly inserted vertex. */ + lnext(testtri, horiz); + rightvertex = leftvertex; + dest(horiz, leftvertex); + } + } +} + +/*****************************************************************************/ +/* */ +/* triangulatepolygon() Find the Delaunay triangulation of a polygon that */ +/* has a certain "nice" shape. This includes the */ +/* polygons that result from deletion of a vertex or */ +/* insertion of a segment. */ +/* */ +/* This is a conceptually difficult routine. The starting assumption is */ +/* that we have a polygon with n sides. n - 1 of these sides are currently */ +/* represented as edges in the mesh. One side, called the "base", need not */ +/* be. */ +/* */ +/* Inside the polygon is a structure I call a "fan", consisting of n - 1 */ +/* triangles that share a common origin. For each of these triangles, the */ +/* edge opposite the origin is one of the sides of the polygon. The */ +/* primary edge of each triangle is the edge directed from the origin to */ +/* the destination; note that this is not the same edge that is a side of */ +/* the polygon. `firstedge' is the primary edge of the first triangle. */ +/* From there, the triangles follow in counterclockwise order about the */ +/* polygon, until `lastedge', the primary edge of the last triangle. */ +/* `firstedge' and `lastedge' are probably connected to other triangles */ +/* beyond the extremes of the fan, but their identity is not important, as */ +/* long as the fan remains connected to them. */ +/* */ +/* Imagine the polygon oriented so that its base is at the bottom. This */ +/* puts `firstedge' on the far right, and `lastedge' on the far left. */ +/* The right vertex of the base is the destination of `firstedge', and the */ +/* left vertex of the base is the apex of `lastedge'. */ +/* */ +/* The challenge now is to find the right sequence of edge flips to */ +/* transform the fan into a Delaunay triangulation of the polygon. Each */ +/* edge flip effectively removes one triangle from the fan, committing it */ +/* to the polygon. The resulting polygon has one fewer edge. If `doflip' */ +/* is set, the final flip will be performed, resulting in a fan of one */ +/* (useless?) triangle. If `doflip' is not set, the final flip is not */ +/* performed, resulting in a fan of two triangles, and an unfinished */ +/* triangular polygon that is not yet filled out with a single triangle. */ +/* On completion of the routine, `lastedge' is the last remaining triangle, */ +/* or the leftmost of the last two. */ +/* */ +/* Although the flips are performed in the order described above, the */ +/* decisions about what flips to perform are made in precisely the reverse */ +/* order. The recursive triangulatepolygon() procedure makes a decision, */ +/* uses up to two recursive calls to triangulate the "subproblems" */ +/* (polygons with fewer edges), and then performs an edge flip. */ +/* */ +/* The "decision" it makes is which vertex of the polygon should be */ +/* connected to the base. This decision is made by testing every possible */ +/* vertex. Once the best vertex is found, the two edges that connect this */ +/* vertex to the base become the bases for two smaller polygons. These */ +/* are triangulated recursively. Unfortunately, this approach can take */ +/* O(n^2) time not only in the worst case, but in many common cases. It's */ +/* rarely a big deal for vertex deletion, where n is rarely larger than */ +/* ten, but it could be a big deal for segment insertion, especially if */ +/* there's a lot of long segments that each cut many triangles. I ought to */ +/* code a faster algorithm some day. */ +/* */ +/* The `edgecount' parameter is the number of sides of the polygon, */ +/* including its base. `triflaws' is a flag that determines whether the */ +/* new triangles should be tested for quality, and enqueued if they are */ +/* bad. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void triangulatepolygon(struct mesh *m, struct behavior *b, + struct otri *firstedge, struct otri *lastedge, + int edgecount, int doflip, int triflaws) +#else /* not ANSI_DECLARATORS */ +void triangulatepolygon(m, b, firstedge, lastedge, edgecount, doflip, triflaws) +struct mesh *m; +struct behavior *b; +struct otri *firstedge; +struct otri *lastedge; +int edgecount; +int doflip; +int triflaws; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri testtri; + struct otri besttri; + struct otri tempedge; + vertex leftbasevertex, rightbasevertex; + vertex testvertex; + vertex bestvertex; + int bestnumber; + int i; + triangle ptr; /* Temporary variable used by sym(), onext(), and oprev(). */ + + /* Identify the base vertices. */ + apex(*lastedge, leftbasevertex); + dest(*firstedge, rightbasevertex); + if (b->verbose > 2) { + fprintf(stderr, " Triangulating interior polygon at edge\n"); + fprintf(stderr, " (%.12g, %.12g) (%.12g, %.12g)\n", leftbasevertex[0], + leftbasevertex[1], rightbasevertex[0], rightbasevertex[1]); + } + /* Find the best vertex to connect the base to. */ + onext(*firstedge, besttri); + dest(besttri, bestvertex); + otricopy(besttri, testtri); + bestnumber = 1; + for (i = 2; i <= edgecount - 2; i++) { + onextself(testtri); + dest(testtri, testvertex); + /* Is this a better vertex? */ + if (incircle(m, b, leftbasevertex, rightbasevertex, bestvertex, + testvertex) > 0.0) { + otricopy(testtri, besttri); + bestvertex = testvertex; + bestnumber = i; + } + } + if (b->verbose > 2) { + fprintf(stderr, " Connecting edge to (%.12g, %.12g)\n", bestvertex[0], + bestvertex[1]); + } + if (bestnumber > 1) { + /* Recursively triangulate the smaller polygon on the right. */ + oprev(besttri, tempedge); + triangulatepolygon(m, b, firstedge, &tempedge, bestnumber + 1, 1, + triflaws); + } + if (bestnumber < edgecount - 2) { + /* Recursively triangulate the smaller polygon on the left. */ + sym(besttri, tempedge); + triangulatepolygon(m, b, &besttri, lastedge, edgecount - bestnumber, 1, + triflaws); + /* Find `besttri' again; it may have been lost to edge flips. */ + sym(tempedge, besttri); + } + if (doflip) { + /* Do one final edge flip. */ + flip(m, b, &besttri); +#ifndef CDT_ONLY + if (triflaws) { + /* Check the quality of the newly committed triangle. */ + sym(besttri, testtri); + testtriangle(m, b, &testtri); + } +#endif /* not CDT_ONLY */ + } + /* Return the base triangle. */ + otricopy(besttri, *lastedge); +} + +/*****************************************************************************/ +/* */ +/* deletevertex() Delete a vertex from a Delaunay triangulation, ensuring */ +/* that the triangulation remains Delaunay. */ +/* */ +/* The origin of `deltri' is deleted. The union of the triangles adjacent */ +/* to this vertex is a polygon, for which the Delaunay triangulation is */ +/* found. Two triangles are removed from the mesh. */ +/* */ +/* Only interior vertices that do not lie on segments or boundaries may be */ +/* deleted. */ +/* */ +/*****************************************************************************/ + +#ifndef CDT_ONLY + +#ifdef ANSI_DECLARATORS +void deletevertex(struct mesh *m, struct behavior *b, struct otri *deltri) +#else /* not ANSI_DECLARATORS */ +void deletevertex(m, b, deltri) +struct mesh *m; +struct behavior *b; +struct otri *deltri; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri countingtri; + struct otri firstedge, lastedge; + struct otri deltriright; + struct otri lefttri, righttri; + struct otri leftcasing, rightcasing; + struct osub leftsubseg, rightsubseg; + vertex delvertex; + vertex neworg; + int edgecount; + triangle ptr; /* Temporary variable used by sym(), onext(), and oprev(). */ + subseg sptr; /* Temporary variable used by tspivot(). */ + + org(*deltri, delvertex); + if (b->verbose > 1) { + fprintf(stderr, " Deleting (%.12g, %.12g).\n", delvertex[0], delvertex[1]); + } + vertexdealloc(m, delvertex); + + /* Count the degree of the vertex being deleted. */ + onext(*deltri, countingtri); + edgecount = 1; + while (!otriequal(*deltri, countingtri)) { +#ifdef SELF_CHECK + if (countingtri.tri == m->dummytri) { + fprintf(stderr, "Internal error in deletevertex():\n"); + fprintf(stderr, " Attempt to delete boundary vertex.\n"); + internalerror(); + } +#endif /* SELF_CHECK */ + edgecount++; + onextself(countingtri); + } + +#ifdef SELF_CHECK + if (edgecount < 3) { + fprintf(stderr, "Internal error in deletevertex():\n Vertex has degree %d.\n", + edgecount); + internalerror(); + } +#endif /* SELF_CHECK */ + if (edgecount > 3) { + /* Triangulate the polygon defined by the union of all triangles */ + /* adjacent to the vertex being deleted. Check the quality of */ + /* the resulting triangles. */ + onext(*deltri, firstedge); + oprev(*deltri, lastedge); + triangulatepolygon(m, b, &firstedge, &lastedge, edgecount, 0, + !b->nobisect); + } + /* Splice out two triangles. */ + lprev(*deltri, deltriright); + dnext(*deltri, lefttri); + sym(lefttri, leftcasing); + oprev(deltriright, righttri); + sym(righttri, rightcasing); + bond(*deltri, leftcasing); + bond(deltriright, rightcasing); + tspivot(lefttri, leftsubseg); + if (leftsubseg.ss != m->dummysub) { + tsbond(*deltri, leftsubseg); + } + tspivot(righttri, rightsubseg); + if (rightsubseg.ss != m->dummysub) { + tsbond(deltriright, rightsubseg); + } + + /* Set the new origin of `deltri' and check its quality. */ + org(lefttri, neworg); + setorg(*deltri, neworg); + if (!b->nobisect) { + testtriangle(m, b, deltri); + } + + /* Delete the two spliced-out triangles. */ + triangledealloc(m, lefttri.tri); + triangledealloc(m, righttri.tri); +} + +#endif /* not CDT_ONLY */ + +/*****************************************************************************/ +/* */ +/* undovertex() Undo the most recent vertex insertion. */ +/* */ +/* Walks through the list of transformations (flips and a vertex insertion) */ +/* in the reverse of the order in which they were done, and undoes them. */ +/* The inserted vertex is removed from the triangulation and deallocated. */ +/* Two triangles (possibly just one) are also deallocated. */ +/* */ +/*****************************************************************************/ + +#ifndef CDT_ONLY + +#ifdef ANSI_DECLARATORS +void undovertex(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +void undovertex(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri fliptri; + struct otri botleft, botright, topright; + struct otri botlcasing, botrcasing, toprcasing; + struct otri gluetri; + struct osub botlsubseg, botrsubseg, toprsubseg; + vertex botvertex, rightvertex; + triangle ptr; /* Temporary variable used by sym(). */ + subseg sptr; /* Temporary variable used by tspivot(). */ + + /* Walk through the list of transformations (flips and a vertex insertion) */ + /* in the reverse of the order in which they were done, and undo them. */ + while (m->lastflip != (struct flipstacker *) NULL) { + /* Find a triangle involved in the last unreversed transformation. */ + decode(m->lastflip->flippedtri, fliptri); + + /* We are reversing one of three transformations: a trisection of one */ + /* triangle into three (by inserting a vertex in the triangle), a */ + /* bisection of two triangles into four (by inserting a vertex in an */ + /* edge), or an edge flip. */ + if (m->lastflip->prevflip == (struct flipstacker *) NULL) { + /* Restore a triangle that was split into three triangles, */ + /* so it is again one triangle. */ + dprev(fliptri, botleft); + lnextself(botleft); + onext(fliptri, botright); + lprevself(botright); + sym(botleft, botlcasing); + sym(botright, botrcasing); + dest(botleft, botvertex); + + setapex(fliptri, botvertex); + lnextself(fliptri); + bond(fliptri, botlcasing); + tspivot(botleft, botlsubseg); + tsbond(fliptri, botlsubseg); + lnextself(fliptri); + bond(fliptri, botrcasing); + tspivot(botright, botrsubseg); + tsbond(fliptri, botrsubseg); + + /* Delete the two spliced-out triangles. */ + triangledealloc(m, botleft.tri); + triangledealloc(m, botright.tri); + } else if (m->lastflip->prevflip == (struct flipstacker *) &insertvertex) { + /* Restore two triangles that were split into four triangles, */ + /* so they are again two triangles. */ + lprev(fliptri, gluetri); + sym(gluetri, botright); + lnextself(botright); + sym(botright, botrcasing); + dest(botright, rightvertex); + + setorg(fliptri, rightvertex); + bond(gluetri, botrcasing); + tspivot(botright, botrsubseg); + tsbond(gluetri, botrsubseg); + + /* Delete the spliced-out triangle. */ + triangledealloc(m, botright.tri); + + sym(fliptri, gluetri); + if (gluetri.tri != m->dummytri) { + lnextself(gluetri); + dnext(gluetri, topright); + sym(topright, toprcasing); + + setorg(gluetri, rightvertex); + bond(gluetri, toprcasing); + tspivot(topright, toprsubseg); + tsbond(gluetri, toprsubseg); + + /* Delete the spliced-out triangle. */ + triangledealloc(m, topright.tri); + } + + /* This is the end of the list, sneakily encoded. */ + m->lastflip->prevflip = (struct flipstacker *) NULL; + } else { + /* Undo an edge flip. */ + unflip(m, b, &fliptri); + } + + /* Go on and process the next transformation. */ + m->lastflip = m->lastflip->prevflip; + } +} + +#endif /* not CDT_ONLY */ + +/** **/ +/** **/ +/********* Mesh transformation routines end here *********/ + +/********* Divide-and-conquer Delaunay triangulation begins here *********/ +/** **/ +/** **/ + +/*****************************************************************************/ +/* */ +/* The divide-and-conquer bounding box */ +/* */ +/* I originally implemented the divide-and-conquer and incremental Delaunay */ +/* triangulations using the edge-based data structure presented by Guibas */ +/* and Stolfi. Switching to a triangle-based data structure doubled the */ +/* speed. However, I had to think of a few extra tricks to maintain the */ +/* elegance of the original algorithms. */ +/* */ +/* The "bounding box" used by my variant of the divide-and-conquer */ +/* algorithm uses one triangle for each edge of the convex hull of the */ +/* triangulation. These bounding triangles all share a common apical */ +/* vertex, which is represented by NULL and which represents nothing. */ +/* The bounding triangles are linked in a circular fan about this NULL */ +/* vertex, and the edges on the convex hull of the triangulation appear */ +/* opposite the NULL vertex. You might find it easiest to imagine that */ +/* the NULL vertex is a point in 3D space behind the center of the */ +/* triangulation, and that the bounding triangles form a sort of cone. */ +/* */ +/* This bounding box makes it easy to represent degenerate cases. For */ +/* instance, the triangulation of two vertices is a single edge. This edge */ +/* is represented by two bounding box triangles, one on each "side" of the */ +/* edge. These triangles are also linked together in a fan about the NULL */ +/* vertex. */ +/* */ +/* The bounding box also makes it easy to traverse the convex hull, as the */ +/* divide-and-conquer algorithm needs to do. */ +/* */ +/*****************************************************************************/ + +/*****************************************************************************/ +/* */ +/* vertexsort() Sort an array of vertices by x-coordinate, using the */ +/* y-coordinate as a secondary key. */ +/* */ +/* Uses quicksort. Randomized O(n log n) time. No, I did not make any of */ +/* the usual quicksort mistakes. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void vertexsort(vertex *sortarray, int arraysize) +#else /* not ANSI_DECLARATORS */ +void vertexsort(sortarray, arraysize) +vertex *sortarray; +int arraysize; +#endif /* not ANSI_DECLARATORS */ + +{ + int left, right; + int pivot; + REAL pivotx, pivoty; + vertex temp; + + if (arraysize == 2) { + /* Recursive base case. */ + if ((sortarray[0][0] > sortarray[1][0]) || + ((sortarray[0][0] == sortarray[1][0]) && + (sortarray[0][1] > sortarray[1][1]))) { + temp = sortarray[1]; + sortarray[1] = sortarray[0]; + sortarray[0] = temp; + } + return; + } + /* Choose a random pivot to split the array. */ + pivot = (int) randomnation(arraysize); + pivotx = sortarray[pivot][0]; + pivoty = sortarray[pivot][1]; + /* Split the array. */ + left = -1; + right = arraysize; + while (left < right) { + /* Search for a vertex whose x-coordinate is too large for the left. */ + do { + left++; + } while ((left <= right) && ((sortarray[left][0] < pivotx) || + ((sortarray[left][0] == pivotx) && + (sortarray[left][1] < pivoty)))); + /* Search for a vertex whose x-coordinate is too small for the right. */ + do { + right--; + } while ((left <= right) && ((sortarray[right][0] > pivotx) || + ((sortarray[right][0] == pivotx) && + (sortarray[right][1] > pivoty)))); + if (left < right) { + /* Swap the left and right vertices. */ + temp = sortarray[left]; + sortarray[left] = sortarray[right]; + sortarray[right] = temp; + } + } + if (left > 1) { + /* Recursively sort the left subset. */ + vertexsort(sortarray, left); + } + if (right < arraysize - 2) { + /* Recursively sort the right subset. */ + vertexsort(&sortarray[right + 1], arraysize - right - 1); + } +} + +/*****************************************************************************/ +/* */ +/* vertexmedian() An order statistic algorithm, almost. Shuffles an */ +/* array of vertices so that the first `median' vertices */ +/* occur lexicographically before the remaining vertices. */ +/* */ +/* Uses the x-coordinate as the primary key if axis == 0; the y-coordinate */ +/* if axis == 1. Very similar to the vertexsort() procedure, but runs in */ +/* randomized linear time. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void vertexmedian(vertex *sortarray, int arraysize, int median, int axis) +#else /* not ANSI_DECLARATORS */ +void vertexmedian(sortarray, arraysize, median, axis) +vertex *sortarray; +int arraysize; +int median; +int axis; +#endif /* not ANSI_DECLARATORS */ + +{ + int left, right; + int pivot; + REAL pivot1, pivot2; + vertex temp; + + if (arraysize == 2) { + /* Recursive base case. */ + if ((sortarray[0][axis] > sortarray[1][axis]) || + ((sortarray[0][axis] == sortarray[1][axis]) && + (sortarray[0][1 - axis] > sortarray[1][1 - axis]))) { + temp = sortarray[1]; + sortarray[1] = sortarray[0]; + sortarray[0] = temp; + } + return; + } + /* Choose a random pivot to split the array. */ + pivot = (int) randomnation(arraysize); + pivot1 = sortarray[pivot][axis]; + pivot2 = sortarray[pivot][1 - axis]; + /* Split the array. */ + left = -1; + right = arraysize; + while (left < right) { + /* Search for a vertex whose x-coordinate is too large for the left. */ + do { + left++; + } while ((left <= right) && ((sortarray[left][axis] < pivot1) || + ((sortarray[left][axis] == pivot1) && + (sortarray[left][1 - axis] < pivot2)))); + /* Search for a vertex whose x-coordinate is too small for the right. */ + do { + right--; + } while ((left <= right) && ((sortarray[right][axis] > pivot1) || + ((sortarray[right][axis] == pivot1) && + (sortarray[right][1 - axis] > pivot2)))); + if (left < right) { + /* Swap the left and right vertices. */ + temp = sortarray[left]; + sortarray[left] = sortarray[right]; + sortarray[right] = temp; + } + } + /* Unlike in vertexsort(), at most one of the following */ + /* conditionals is true. */ + if (left > median) { + /* Recursively shuffle the left subset. */ + vertexmedian(sortarray, left, median, axis); + } + if (right < median - 1) { + /* Recursively shuffle the right subset. */ + vertexmedian(&sortarray[right + 1], arraysize - right - 1, + median - right - 1, axis); + } +} + +/*****************************************************************************/ +/* */ +/* alternateaxes() Sorts the vertices as appropriate for the divide-and- */ +/* conquer algorithm with alternating cuts. */ +/* */ +/* Partitions by x-coordinate if axis == 0; by y-coordinate if axis == 1. */ +/* For the base case, subsets containing only two or three vertices are */ +/* always sorted by x-coordinate. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void alternateaxes(vertex *sortarray, int arraysize, int axis) +#else /* not ANSI_DECLARATORS */ +void alternateaxes(sortarray, arraysize, axis) +vertex *sortarray; +int arraysize; +int axis; +#endif /* not ANSI_DECLARATORS */ + +{ + int divider; + + divider = arraysize >> 1; + if (arraysize <= 3) { + /* Recursive base case: subsets of two or three vertices will be */ + /* handled specially, and should always be sorted by x-coordinate. */ + axis = 0; + } + /* Partition with a horizontal or vertical cut. */ + vertexmedian(sortarray, arraysize, divider, axis); + /* Recursively partition the subsets with a cross cut. */ + if (arraysize - divider >= 2) { + if (divider >= 2) { + alternateaxes(sortarray, divider, 1 - axis); + } + alternateaxes(&sortarray[divider], arraysize - divider, 1 - axis); + } +} + +/*****************************************************************************/ +/* */ +/* mergehulls() Merge two adjacent Delaunay triangulations into a */ +/* single Delaunay triangulation. */ +/* */ +/* This is similar to the algorithm given by Guibas and Stolfi, but uses */ +/* a triangle-based, rather than edge-based, data structure. */ +/* */ +/* The algorithm walks up the gap between the two triangulations, knitting */ +/* them together. As they are merged, some of their bounding triangles */ +/* are converted into real triangles of the triangulation. The procedure */ +/* pulls each hull's bounding triangles apart, then knits them together */ +/* like the teeth of two gears. The Delaunay property determines, at each */ +/* step, whether the next "tooth" is a bounding triangle of the left hull */ +/* or the right. When a bounding triangle becomes real, its apex is */ +/* changed from NULL to a real vertex. */ +/* */ +/* Only two new triangles need to be allocated. These become new bounding */ +/* triangles at the top and bottom of the seam. They are used to connect */ +/* the remaining bounding triangles (those that have not been converted */ +/* into real triangles) into a single fan. */ +/* */ +/* On entry, `farleft' and `innerleft' are bounding triangles of the left */ +/* triangulation. The origin of `farleft' is the leftmost vertex, and */ +/* the destination of `innerleft' is the rightmost vertex of the */ +/* triangulation. Similarly, `innerright' and `farright' are bounding */ +/* triangles of the right triangulation. The origin of `innerright' and */ +/* destination of `farright' are the leftmost and rightmost vertices. */ +/* */ +/* On completion, the origin of `farleft' is the leftmost vertex of the */ +/* merged triangulation, and the destination of `farright' is the rightmost */ +/* vertex. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void mergehulls(struct mesh *m, struct behavior *b, struct otri *farleft, + struct otri *innerleft, struct otri *innerright, + struct otri *farright, int axis) +#else /* not ANSI_DECLARATORS */ +void mergehulls(m, b, farleft, innerleft, innerright, farright, axis) +struct mesh *m; +struct behavior *b; +struct otri *farleft; +struct otri *innerleft; +struct otri *innerright; +struct otri *farright; +int axis; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri leftcand, rightcand; + struct otri baseedge; + struct otri nextedge; + struct otri sidecasing, topcasing, outercasing; + struct otri checkedge; + vertex innerleftdest; + vertex innerrightorg; + vertex innerleftapex, innerrightapex; + vertex farleftpt, farrightpt; + vertex farleftapex, farrightapex; + vertex lowerleft, lowerright; + vertex upperleft, upperright; + vertex nextapex; + vertex checkvertex; + int changemade; + int badedge; + int leftfinished, rightfinished; + triangle ptr; /* Temporary variable used by sym(). */ + + dest(*innerleft, innerleftdest); + apex(*innerleft, innerleftapex); + org(*innerright, innerrightorg); + apex(*innerright, innerrightapex); + /* Special treatment for horizontal cuts. */ + if (b->dwyer && (axis == 1)) { + org(*farleft, farleftpt); + apex(*farleft, farleftapex); + dest(*farright, farrightpt); + apex(*farright, farrightapex); + /* The pointers to the extremal vertices are shifted to point to the */ + /* topmost and bottommost vertex of each hull, rather than the */ + /* leftmost and rightmost vertices. */ + while (farleftapex[1] < farleftpt[1]) { + lnextself(*farleft); + symself(*farleft); + farleftpt = farleftapex; + apex(*farleft, farleftapex); + } + sym(*innerleft, checkedge); + apex(checkedge, checkvertex); + while (checkvertex[1] > innerleftdest[1]) { + lnext(checkedge, *innerleft); + innerleftapex = innerleftdest; + innerleftdest = checkvertex; + sym(*innerleft, checkedge); + apex(checkedge, checkvertex); + } + while (innerrightapex[1] < innerrightorg[1]) { + lnextself(*innerright); + symself(*innerright); + innerrightorg = innerrightapex; + apex(*innerright, innerrightapex); + } + sym(*farright, checkedge); + apex(checkedge, checkvertex); + while (checkvertex[1] > farrightpt[1]) { + lnext(checkedge, *farright); + farrightapex = farrightpt; + farrightpt = checkvertex; + sym(*farright, checkedge); + apex(checkedge, checkvertex); + } + } + /* Find a line tangent to and below both hulls. */ + do { + changemade = 0; + /* Make innerleftdest the "bottommost" vertex of the left hull. */ + if (counterclockwise(m, b, innerleftdest, innerleftapex, innerrightorg) > + 0.0) { + lprevself(*innerleft); + symself(*innerleft); + innerleftdest = innerleftapex; + apex(*innerleft, innerleftapex); + changemade = 1; + } + /* Make innerrightorg the "bottommost" vertex of the right hull. */ + if (counterclockwise(m, b, innerrightapex, innerrightorg, innerleftdest) > + 0.0) { + lnextself(*innerright); + symself(*innerright); + innerrightorg = innerrightapex; + apex(*innerright, innerrightapex); + changemade = 1; + } + } while (changemade); + /* Find the two candidates to be the next "gear tooth." */ + sym(*innerleft, leftcand); + sym(*innerright, rightcand); + /* Create the bottom new bounding triangle. */ + maketriangle(m, b, &baseedge); + /* Connect it to the bounding boxes of the left and right triangulations. */ + bond(baseedge, *innerleft); + lnextself(baseedge); + bond(baseedge, *innerright); + lnextself(baseedge); + setorg(baseedge, innerrightorg); + setdest(baseedge, innerleftdest); + /* Apex is intentionally left NULL. */ + if (b->verbose > 2) { + fprintf(stderr, " Creating base bounding "); + printtriangle(m, b, &baseedge); + } + /* Fix the extreme triangles if necessary. */ + org(*farleft, farleftpt); + if (innerleftdest == farleftpt) { + lnext(baseedge, *farleft); + } + dest(*farright, farrightpt); + if (innerrightorg == farrightpt) { + lprev(baseedge, *farright); + } + /* The vertices of the current knitting edge. */ + lowerleft = innerleftdest; + lowerright = innerrightorg; + /* The candidate vertices for knitting. */ + apex(leftcand, upperleft); + apex(rightcand, upperright); + /* Walk up the gap between the two triangulations, knitting them together. */ + while (1) { + /* Have we reached the top? (This isn't quite the right question, */ + /* because even though the left triangulation might seem finished now, */ + /* moving up on the right triangulation might reveal a new vertex of */ + /* the left triangulation. And vice-versa.) */ + leftfinished = counterclockwise(m, b, upperleft, lowerleft, lowerright) <= + 0.0; + rightfinished = counterclockwise(m, b, upperright, lowerleft, lowerright) + <= 0.0; + if (leftfinished && rightfinished) { + /* Create the top new bounding triangle. */ + maketriangle(m, b, &nextedge); + setorg(nextedge, lowerleft); + setdest(nextedge, lowerright); + /* Apex is intentionally left NULL. */ + /* Connect it to the bounding boxes of the two triangulations. */ + bond(nextedge, baseedge); + lnextself(nextedge); + bond(nextedge, rightcand); + lnextself(nextedge); + bond(nextedge, leftcand); + if (b->verbose > 2) { + fprintf(stderr, " Creating top bounding "); + printtriangle(m, b, &nextedge); + } + /* Special treatment for horizontal cuts. */ + if (b->dwyer && (axis == 1)) { + org(*farleft, farleftpt); + apex(*farleft, farleftapex); + dest(*farright, farrightpt); + apex(*farright, farrightapex); + sym(*farleft, checkedge); + apex(checkedge, checkvertex); + /* The pointers to the extremal vertices are restored to the */ + /* leftmost and rightmost vertices (rather than topmost and */ + /* bottommost). */ + while (checkvertex[0] < farleftpt[0]) { + lprev(checkedge, *farleft); + farleftapex = farleftpt; + farleftpt = checkvertex; + sym(*farleft, checkedge); + apex(checkedge, checkvertex); + } + while (farrightapex[0] > farrightpt[0]) { + lprevself(*farright); + symself(*farright); + farrightpt = farrightapex; + apex(*farright, farrightapex); + } + } + return; + } + /* Consider eliminating edges from the left triangulation. */ + if (!leftfinished) { + /* What vertex would be exposed if an edge were deleted? */ + lprev(leftcand, nextedge); + symself(nextedge); + apex(nextedge, nextapex); + /* If nextapex is NULL, then no vertex would be exposed; the */ + /* triangulation would have been eaten right through. */ + if (nextapex != (vertex) NULL) { + /* Check whether the edge is Delaunay. */ + badedge = incircle(m, b, lowerleft, lowerright, upperleft, nextapex) > + 0.0; + while (badedge) { + /* Eliminate the edge with an edge flip. As a result, the */ + /* left triangulation will have one more boundary triangle. */ + lnextself(nextedge); + sym(nextedge, topcasing); + lnextself(nextedge); + sym(nextedge, sidecasing); + bond(nextedge, topcasing); + bond(leftcand, sidecasing); + lnextself(leftcand); + sym(leftcand, outercasing); + lprevself(nextedge); + bond(nextedge, outercasing); + /* Correct the vertices to reflect the edge flip. */ + setorg(leftcand, lowerleft); + setdest(leftcand, NULL); + setapex(leftcand, nextapex); + setorg(nextedge, NULL); + setdest(nextedge, upperleft); + setapex(nextedge, nextapex); + /* Consider the newly exposed vertex. */ + upperleft = nextapex; + /* What vertex would be exposed if another edge were deleted? */ + otricopy(sidecasing, nextedge); + apex(nextedge, nextapex); + if (nextapex != (vertex) NULL) { + /* Check whether the edge is Delaunay. */ + badedge = incircle(m, b, lowerleft, lowerright, upperleft, + nextapex) > 0.0; + } else { + /* Avoid eating right through the triangulation. */ + badedge = 0; + } + } + } + } + /* Consider eliminating edges from the right triangulation. */ + if (!rightfinished) { + /* What vertex would be exposed if an edge were deleted? */ + lnext(rightcand, nextedge); + symself(nextedge); + apex(nextedge, nextapex); + /* If nextapex is NULL, then no vertex would be exposed; the */ + /* triangulation would have been eaten right through. */ + if (nextapex != (vertex) NULL) { + /* Check whether the edge is Delaunay. */ + badedge = incircle(m, b, lowerleft, lowerright, upperright, nextapex) > + 0.0; + while (badedge) { + /* Eliminate the edge with an edge flip. As a result, the */ + /* right triangulation will have one more boundary triangle. */ + lprevself(nextedge); + sym(nextedge, topcasing); + lprevself(nextedge); + sym(nextedge, sidecasing); + bond(nextedge, topcasing); + bond(rightcand, sidecasing); + lprevself(rightcand); + sym(rightcand, outercasing); + lnextself(nextedge); + bond(nextedge, outercasing); + /* Correct the vertices to reflect the edge flip. */ + setorg(rightcand, NULL); + setdest(rightcand, lowerright); + setapex(rightcand, nextapex); + setorg(nextedge, upperright); + setdest(nextedge, NULL); + setapex(nextedge, nextapex); + /* Consider the newly exposed vertex. */ + upperright = nextapex; + /* What vertex would be exposed if another edge were deleted? */ + otricopy(sidecasing, nextedge); + apex(nextedge, nextapex); + if (nextapex != (vertex) NULL) { + /* Check whether the edge is Delaunay. */ + badedge = incircle(m, b, lowerleft, lowerright, upperright, + nextapex) > 0.0; + } else { + /* Avoid eating right through the triangulation. */ + badedge = 0; + } + } + } + } + if (leftfinished || (!rightfinished && + (incircle(m, b, upperleft, lowerleft, lowerright, upperright) > + 0.0))) { + /* Knit the triangulations, adding an edge from `lowerleft' */ + /* to `upperright'. */ + bond(baseedge, rightcand); + lprev(rightcand, baseedge); + setdest(baseedge, lowerleft); + lowerright = upperright; + sym(baseedge, rightcand); + apex(rightcand, upperright); + } else { + /* Knit the triangulations, adding an edge from `upperleft' */ + /* to `lowerright'. */ + bond(baseedge, leftcand); + lnext(leftcand, baseedge); + setorg(baseedge, lowerright); + lowerleft = upperleft; + sym(baseedge, leftcand); + apex(leftcand, upperleft); + } + if (b->verbose > 2) { + fprintf(stderr, " Connecting "); + printtriangle(m, b, &baseedge); + } + } +} + +/*****************************************************************************/ +/* */ +/* divconqrecurse() Recursively form a Delaunay triangulation by the */ +/* divide-and-conquer method. */ +/* */ +/* Recursively breaks down the problem into smaller pieces, which are */ +/* knitted together by mergehulls(). The base cases (problems of two or */ +/* three vertices) are handled specially here. */ +/* */ +/* On completion, `farleft' and `farright' are bounding triangles such that */ +/* the origin of `farleft' is the leftmost vertex (breaking ties by */ +/* choosing the highest leftmost vertex), and the destination of */ +/* `farright' is the rightmost vertex (breaking ties by choosing the */ +/* lowest rightmost vertex). */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void divconqrecurse(struct mesh *m, struct behavior *b, vertex *sortarray, + int vertices, int axis, + struct otri *farleft, struct otri *farright) +#else /* not ANSI_DECLARATORS */ +void divconqrecurse(m, b, sortarray, vertices, axis, farleft, farright) +struct mesh *m; +struct behavior *b; +vertex *sortarray; +int vertices; +int axis; +struct otri *farleft; +struct otri *farright; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri midtri, tri1, tri2, tri3; + struct otri innerleft, innerright; + REAL area; + int divider; + + if (b->verbose > 2) { + fprintf(stderr, " Triangulating %d vertices.\n", vertices); + } + if (vertices == 2) { + /* The triangulation of two vertices is an edge. An edge is */ + /* represented by two bounding triangles. */ + maketriangle(m, b, farleft); + setorg(*farleft, sortarray[0]); + setdest(*farleft, sortarray[1]); + /* The apex is intentionally left NULL. */ + maketriangle(m, b, farright); + setorg(*farright, sortarray[1]); + setdest(*farright, sortarray[0]); + /* The apex is intentionally left NULL. */ + bond(*farleft, *farright); + lprevself(*farleft); + lnextself(*farright); + bond(*farleft, *farright); + lprevself(*farleft); + lnextself(*farright); + bond(*farleft, *farright); + if (b->verbose > 2) { + fprintf(stderr, " Creating "); + printtriangle(m, b, farleft); + fprintf(stderr, " Creating "); + printtriangle(m, b, farright); + } + /* Ensure that the origin of `farleft' is sortarray[0]. */ + lprev(*farright, *farleft); + return; + } else if (vertices == 3) { + /* The triangulation of three vertices is either a triangle (with */ + /* three bounding triangles) or two edges (with four bounding */ + /* triangles). In either case, four triangles are created. */ + maketriangle(m, b, &midtri); + maketriangle(m, b, &tri1); + maketriangle(m, b, &tri2); + maketriangle(m, b, &tri3); + area = counterclockwise(m, b, sortarray[0], sortarray[1], sortarray[2]); + if (area == 0.0) { + /* Three collinear vertices; the triangulation is two edges. */ + setorg(midtri, sortarray[0]); + setdest(midtri, sortarray[1]); + setorg(tri1, sortarray[1]); + setdest(tri1, sortarray[0]); + setorg(tri2, sortarray[2]); + setdest(tri2, sortarray[1]); + setorg(tri3, sortarray[1]); + setdest(tri3, sortarray[2]); + /* All apices are intentionally left NULL. */ + bond(midtri, tri1); + bond(tri2, tri3); + lnextself(midtri); + lprevself(tri1); + lnextself(tri2); + lprevself(tri3); + bond(midtri, tri3); + bond(tri1, tri2); + lnextself(midtri); + lprevself(tri1); + lnextself(tri2); + lprevself(tri3); + bond(midtri, tri1); + bond(tri2, tri3); + /* Ensure that the origin of `farleft' is sortarray[0]. */ + otricopy(tri1, *farleft); + /* Ensure that the destination of `farright' is sortarray[2]. */ + otricopy(tri2, *farright); + } else { + /* The three vertices are not collinear; the triangulation is one */ + /* triangle, namely `midtri'. */ + setorg(midtri, sortarray[0]); + setdest(tri1, sortarray[0]); + setorg(tri3, sortarray[0]); + /* Apices of tri1, tri2, and tri3 are left NULL. */ + if (area > 0.0) { + /* The vertices are in counterclockwise order. */ + setdest(midtri, sortarray[1]); + setorg(tri1, sortarray[1]); + setdest(tri2, sortarray[1]); + setapex(midtri, sortarray[2]); + setorg(tri2, sortarray[2]); + setdest(tri3, sortarray[2]); + } else { + /* The vertices are in clockwise order. */ + setdest(midtri, sortarray[2]); + setorg(tri1, sortarray[2]); + setdest(tri2, sortarray[2]); + setapex(midtri, sortarray[1]); + setorg(tri2, sortarray[1]); + setdest(tri3, sortarray[1]); + } + /* The topology does not depend on how the vertices are ordered. */ + bond(midtri, tri1); + lnextself(midtri); + bond(midtri, tri2); + lnextself(midtri); + bond(midtri, tri3); + lprevself(tri1); + lnextself(tri2); + bond(tri1, tri2); + lprevself(tri1); + lprevself(tri3); + bond(tri1, tri3); + lnextself(tri2); + lprevself(tri3); + bond(tri2, tri3); + /* Ensure that the origin of `farleft' is sortarray[0]. */ + otricopy(tri1, *farleft); + /* Ensure that the destination of `farright' is sortarray[2]. */ + if (area > 0.0) { + otricopy(tri2, *farright); + } else { + lnext(*farleft, *farright); + } + } + if (b->verbose > 2) { + fprintf(stderr, " Creating "); + printtriangle(m, b, &midtri); + fprintf(stderr, " Creating "); + printtriangle(m, b, &tri1); + fprintf(stderr, " Creating "); + printtriangle(m, b, &tri2); + fprintf(stderr, " Creating "); + printtriangle(m, b, &tri3); + } + return; + } else { + /* Split the vertices in half. */ + divider = vertices >> 1; + /* Recursively triangulate each half. */ + divconqrecurse(m, b, sortarray, divider, 1 - axis, farleft, &innerleft); + divconqrecurse(m, b, &sortarray[divider], vertices - divider, 1 - axis, + &innerright, farright); + if (b->verbose > 1) { + fprintf(stderr, " Joining triangulations with %d and %d vertices.\n", divider, + vertices - divider); + } + /* Merge the two triangulations into one. */ + mergehulls(m, b, farleft, &innerleft, &innerright, farright, axis); + } +} + +#ifdef ANSI_DECLARATORS +long removeghosts(struct mesh *m, struct behavior *b, struct otri *startghost) +#else /* not ANSI_DECLARATORS */ +long removeghosts(m, b, startghost) +struct mesh *m; +struct behavior *b; +struct otri *startghost; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri searchedge; + struct otri dissolveedge; + struct otri deadtriangle; + vertex markorg; + long hullsize; + triangle ptr; /* Temporary variable used by sym(). */ + + if (b->verbose) { + fprintf(stderr, " Removing ghost triangles.\n"); + } + /* Find an edge on the convex hull to start point location from. */ + lprev(*startghost, searchedge); + symself(searchedge); + m->dummytri[0] = encode(searchedge); + /* Remove the bounding box and count the convex hull edges. */ + otricopy(*startghost, dissolveedge); + hullsize = 0; + do { + hullsize++; + lnext(dissolveedge, deadtriangle); + lprevself(dissolveedge); + symself(dissolveedge); + /* If no PSLG is involved, set the boundary markers of all the vertices */ + /* on the convex hull. If a PSLG is used, this step is done later. */ + if (!b->poly) { + /* Watch out for the case where all the input vertices are collinear. */ + if (dissolveedge.tri != m->dummytri) { + org(dissolveedge, markorg); + if (vertexmark(markorg) == 0) { + setvertexmark(markorg, 1); + } + } + } + /* Remove a bounding triangle from a convex hull triangle. */ + dissolve(dissolveedge); + /* Find the next bounding triangle. */ + sym(deadtriangle, dissolveedge); + /* Delete the bounding triangle. */ + triangledealloc(m, deadtriangle.tri); + } while (!otriequal(dissolveedge, *startghost)); + return hullsize; +} + +/*****************************************************************************/ +/* */ +/* divconqdelaunay() Form a Delaunay triangulation by the divide-and- */ +/* conquer method. */ +/* */ +/* Sorts the vertices, calls a recursive procedure to triangulate them, and */ +/* removes the bounding box, setting boundary markers as appropriate. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +long divconqdelaunay(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +long divconqdelaunay(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + vertex *sortarray; + struct otri hullleft, hullright; + int divider; + int i, j; + + if (b->verbose) { + fprintf(stderr, " Sorting vertices.\n"); + } + + /* Allocate an array of pointers to vertices for sorting. */ + sortarray = (vertex *) trimalloc(m->invertices * sizeof(vertex)); + traversalinit(&m->vertices); + for (i = 0; i < m->invertices; i++) { + sortarray[i] = vertextraverse(m); + } + /* Sort the vertices. */ + vertexsort(sortarray, m->invertices); + /* Discard duplicate vertices, which can really mess up the algorithm. */ + i = 0; + for (j = 1; j < m->invertices; j++) { + if ((sortarray[i][0] == sortarray[j][0]) + && (sortarray[i][1] == sortarray[j][1])) { + if (!b->quiet) { + fprintf(stderr, +"Warning: A duplicate vertex at (%.12g, %.12g) appeared and was ignored.\n", + sortarray[j][0], sortarray[j][1]); + } + setvertextype(sortarray[j], UNDEADVERTEX); + m->undeads++; + } else { + i++; + sortarray[i] = sortarray[j]; + } + } + i++; + if (b->dwyer) { + /* Re-sort the array of vertices to accommodate alternating cuts. */ + divider = i >> 1; + if (i - divider >= 2) { + if (divider >= 2) { + alternateaxes(sortarray, divider, 1); + } + alternateaxes(&sortarray[divider], i - divider, 1); + } + } + + if (b->verbose) { + fprintf(stderr, " Forming triangulation.\n"); + } + + /* Form the Delaunay triangulation. */ + divconqrecurse(m, b, sortarray, i, 0, &hullleft, &hullright); + trifree((VOID *) sortarray); + + return removeghosts(m, b, &hullleft); +} + +/** **/ +/** **/ +/********* Divide-and-conquer Delaunay triangulation ends here *********/ + +/********* Incremental Delaunay triangulation begins here *********/ +/** **/ +/** **/ + +/*****************************************************************************/ +/* */ +/* boundingbox() Form an "infinite" bounding triangle to insert vertices */ +/* into. */ +/* */ +/* The vertices at "infinity" are assigned finite coordinates, which are */ +/* used by the point location routines, but (mostly) ignored by the */ +/* Delaunay edge flip routines. */ +/* */ +/*****************************************************************************/ + +#ifndef REDUCED + +#ifdef ANSI_DECLARATORS +void boundingbox(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +void boundingbox(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri inftri; /* Handle for the triangular bounding box. */ + REAL width; + + if (b->verbose) { + fprintf(stderr, " Creating triangular bounding box.\n"); + } + /* Find the width (or height, whichever is larger) of the triangulation. */ + width = m->xmax - m->xmin; + if (m->ymax - m->ymin > width) { + width = m->ymax - m->ymin; + } + if (width == 0.0) { + width = 1.0; + } + /* Create the vertices of the bounding box. */ + m->infvertex1 = (vertex) trimalloc(m->vertices.itembytes); + m->infvertex2 = (vertex) trimalloc(m->vertices.itembytes); + m->infvertex3 = (vertex) trimalloc(m->vertices.itembytes); + m->infvertex1[0] = m->xmin - 50.0 * width; + m->infvertex1[1] = m->ymin - 40.0 * width; + m->infvertex2[0] = m->xmax + 50.0 * width; + m->infvertex2[1] = m->ymin - 40.0 * width; + m->infvertex3[0] = 0.5 * (m->xmin + m->xmax); + m->infvertex3[1] = m->ymax + 60.0 * width; + + /* Create the bounding box. */ + maketriangle(m, b, &inftri); + setorg(inftri, m->infvertex1); + setdest(inftri, m->infvertex2); + setapex(inftri, m->infvertex3); + /* Link dummytri to the bounding box so we can always find an */ + /* edge to begin searching (point location) from. */ + m->dummytri[0] = (triangle) inftri.tri; + if (b->verbose > 2) { + fprintf(stderr, " Creating "); + printtriangle(m, b, &inftri); + } +} + +#endif /* not REDUCED */ + +/*****************************************************************************/ +/* */ +/* removebox() Remove the "infinite" bounding triangle, setting boundary */ +/* markers as appropriate. */ +/* */ +/* The triangular bounding box has three boundary triangles (one for each */ +/* side of the bounding box), and a bunch of triangles fanning out from */ +/* the three bounding box vertices (one triangle for each edge of the */ +/* convex hull of the inner mesh). This routine removes these triangles. */ +/* */ +/* Returns the number of edges on the convex hull of the triangulation. */ +/* */ +/*****************************************************************************/ + +#ifndef REDUCED + +#ifdef ANSI_DECLARATORS +long removebox(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +long removebox(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri deadtriangle; + struct otri searchedge; + struct otri checkedge; + struct otri nextedge, finaledge, dissolveedge; + vertex markorg; + long hullsize; + triangle ptr; /* Temporary variable used by sym(). */ + + if (b->verbose) { + fprintf(stderr, " Removing triangular bounding box.\n"); + } + /* Find a boundary triangle. */ + nextedge.tri = m->dummytri; + nextedge.orient = 0; + symself(nextedge); + /* Mark a place to stop. */ + lprev(nextedge, finaledge); + lnextself(nextedge); + symself(nextedge); + /* Find a triangle (on the boundary of the vertex set) that isn't */ + /* a bounding box triangle. */ + lprev(nextedge, searchedge); + symself(searchedge); + /* Check whether nextedge is another boundary triangle */ + /* adjacent to the first one. */ + lnext(nextedge, checkedge); + symself(checkedge); + if (checkedge.tri == m->dummytri) { + /* Go on to the next triangle. There are only three boundary */ + /* triangles, and this next triangle cannot be the third one, */ + /* so it's safe to stop here. */ + lprevself(searchedge); + symself(searchedge); + } + /* Find a new boundary edge to search from, as the current search */ + /* edge lies on a bounding box triangle and will be deleted. */ + m->dummytri[0] = encode(searchedge); + hullsize = -2l; + while (!otriequal(nextedge, finaledge)) { + hullsize++; + lprev(nextedge, dissolveedge); + symself(dissolveedge); + /* If not using a PSLG, the vertices should be marked now. */ + /* (If using a PSLG, markhull() will do the job.) */ + if (!b->poly) { + /* Be careful! One must check for the case where all the input */ + /* vertices are collinear, and thus all the triangles are part of */ + /* the bounding box. Otherwise, the setvertexmark() call below */ + /* will cause a bad pointer reference. */ + if (dissolveedge.tri != m->dummytri) { + org(dissolveedge, markorg); + if (vertexmark(markorg) == 0) { + setvertexmark(markorg, 1); + } + } + } + /* Disconnect the bounding box triangle from the mesh triangle. */ + dissolve(dissolveedge); + lnext(nextedge, deadtriangle); + sym(deadtriangle, nextedge); + /* Get rid of the bounding box triangle. */ + triangledealloc(m, deadtriangle.tri); + /* Do we need to turn the corner? */ + if (nextedge.tri == m->dummytri) { + /* Turn the corner. */ + otricopy(dissolveedge, nextedge); + } + } + triangledealloc(m, finaledge.tri); + + trifree((VOID *) m->infvertex1); /* Deallocate the bounding box vertices. */ + trifree((VOID *) m->infvertex2); + trifree((VOID *) m->infvertex3); + + return hullsize; +} + +#endif /* not REDUCED */ + +/*****************************************************************************/ +/* */ +/* incrementaldelaunay() Form a Delaunay triangulation by incrementally */ +/* inserting vertices. */ +/* */ +/* Returns the number of edges on the convex hull of the triangulation. */ +/* */ +/*****************************************************************************/ + +#ifndef REDUCED + +#ifdef ANSI_DECLARATORS +long incrementaldelaunay(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +long incrementaldelaunay(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri starttri; + vertex vertexloop; + + /* Create a triangular bounding box. */ + boundingbox(m, b); + if (b->verbose) { + fprintf(stderr, " Incrementally inserting vertices.\n"); + } + traversalinit(&m->vertices); + vertexloop = vertextraverse(m); + while (vertexloop != (vertex) NULL) { + starttri.tri = m->dummytri; + if (insertvertex(m, b, vertexloop, &starttri, (struct osub *) NULL, 0, 0, + 0.0) == DUPLICATEVERTEX) { + if (!b->quiet) { + fprintf(stderr, +"Warning: A duplicate vertex at (%.12g, %.12g) appeared and was ignored.\n", + vertexloop[0], vertexloop[1]); + } + setvertextype(vertexloop, UNDEADVERTEX); + m->undeads++; + } + vertexloop = vertextraverse(m); + } + /* Remove the bounding box. */ + return removebox(m, b); +} + +#endif /* not REDUCED */ + +/** **/ +/** **/ +/********* Incremental Delaunay triangulation ends here *********/ + +/********* Sweepline Delaunay triangulation begins here *********/ +/** **/ +/** **/ + +#ifndef REDUCED + +#ifdef ANSI_DECLARATORS +void eventheapinsert(struct event **heap, int heapsize, struct event *newevent) +#else /* not ANSI_DECLARATORS */ +void eventheapinsert(heap, heapsize, newevent) +struct event **heap; +int heapsize; +struct event *newevent; +#endif /* not ANSI_DECLARATORS */ + +{ + REAL eventx, eventy; + int eventnum; + int parent; + int notdone; + + eventx = newevent->xkey; + eventy = newevent->ykey; + eventnum = heapsize; + notdone = eventnum > 0; + while (notdone) { + parent = (eventnum - 1) >> 1; + if ((heap[parent]->ykey < eventy) || + ((heap[parent]->ykey == eventy) + && (heap[parent]->xkey <= eventx))) { + notdone = 0; + } else { + heap[eventnum] = heap[parent]; + heap[eventnum]->heapposition = eventnum; + + eventnum = parent; + notdone = eventnum > 0; + } + } + heap[eventnum] = newevent; + newevent->heapposition = eventnum; +} + +#endif /* not REDUCED */ + +#ifndef REDUCED + +#ifdef ANSI_DECLARATORS +void eventheapify(struct event **heap, int heapsize, int eventnum) +#else /* not ANSI_DECLARATORS */ +void eventheapify(heap, heapsize, eventnum) +struct event **heap; +int heapsize; +int eventnum; +#endif /* not ANSI_DECLARATORS */ + +{ + struct event *thisevent; + REAL eventx, eventy; + int leftchild, rightchild; + int smallest; + int notdone; + + thisevent = heap[eventnum]; + eventx = thisevent->xkey; + eventy = thisevent->ykey; + leftchild = 2 * eventnum + 1; + notdone = leftchild < heapsize; + while (notdone) { + if ((heap[leftchild]->ykey < eventy) || + ((heap[leftchild]->ykey == eventy) + && (heap[leftchild]->xkey < eventx))) { + smallest = leftchild; + } else { + smallest = eventnum; + } + rightchild = leftchild + 1; + if (rightchild < heapsize) { + if ((heap[rightchild]->ykey < heap[smallest]->ykey) || + ((heap[rightchild]->ykey == heap[smallest]->ykey) + && (heap[rightchild]->xkey < heap[smallest]->xkey))) { + smallest = rightchild; + } + } + if (smallest == eventnum) { + notdone = 0; + } else { + heap[eventnum] = heap[smallest]; + heap[eventnum]->heapposition = eventnum; + heap[smallest] = thisevent; + thisevent->heapposition = smallest; + + eventnum = smallest; + leftchild = 2 * eventnum + 1; + notdone = leftchild < heapsize; + } + } +} + +#endif /* not REDUCED */ + +#ifndef REDUCED + +#ifdef ANSI_DECLARATORS +void eventheapdelete(struct event **heap, int heapsize, int eventnum) +#else /* not ANSI_DECLARATORS */ +void eventheapdelete(heap, heapsize, eventnum) +struct event **heap; +int heapsize; +int eventnum; +#endif /* not ANSI_DECLARATORS */ + +{ + struct event *moveevent; + REAL eventx, eventy; + int parent; + int notdone; + + moveevent = heap[heapsize - 1]; + if (eventnum > 0) { + eventx = moveevent->xkey; + eventy = moveevent->ykey; + do { + parent = (eventnum - 1) >> 1; + if ((heap[parent]->ykey < eventy) || + ((heap[parent]->ykey == eventy) + && (heap[parent]->xkey <= eventx))) { + notdone = 0; + } else { + heap[eventnum] = heap[parent]; + heap[eventnum]->heapposition = eventnum; + + eventnum = parent; + notdone = eventnum > 0; + } + } while (notdone); + } + heap[eventnum] = moveevent; + moveevent->heapposition = eventnum; + eventheapify(heap, heapsize - 1, eventnum); +} + +#endif /* not REDUCED */ + +#ifndef REDUCED + +#ifdef ANSI_DECLARATORS +void createeventheap(struct mesh *m, struct event ***eventheap, + struct event **events, struct event **freeevents) +#else /* not ANSI_DECLARATORS */ +void createeventheap(m, eventheap, events, freeevents) +struct mesh *m; +struct event ***eventheap; +struct event **events; +struct event **freeevents; +#endif /* not ANSI_DECLARATORS */ + +{ + vertex thisvertex; + int maxevents; + int i; + + maxevents = (3 * m->invertices) / 2; + *eventheap = (struct event **) trimalloc(maxevents * sizeof(struct event *)); + *events = (struct event *) trimalloc(maxevents * sizeof(struct event)); + traversalinit(&m->vertices); + for (i = 0; i < m->invertices; i++) { + thisvertex = vertextraverse(m); + (*events)[i].eventptr = (VOID *) thisvertex; + (*events)[i].xkey = thisvertex[0]; + (*events)[i].ykey = thisvertex[1]; + eventheapinsert(*eventheap, i, *events + i); + } + *freeevents = (struct event *) NULL; + for (i = maxevents - 1; i >= m->invertices; i--) { + (*events)[i].eventptr = (VOID *) *freeevents; + *freeevents = *events + i; + } +} + +#endif /* not REDUCED */ + +#ifndef REDUCED + +#ifdef ANSI_DECLARATORS +int rightofhyperbola(struct mesh *m, struct otri *fronttri, vertex newsite) +#else /* not ANSI_DECLARATORS */ +int rightofhyperbola(m, fronttri, newsite) +struct mesh *m; +struct otri *fronttri; +vertex newsite; +#endif /* not ANSI_DECLARATORS */ + +{ + vertex leftvertex, rightvertex; + REAL dxa, dya, dxb, dyb; + + m->hyperbolacount++; + + dest(*fronttri, leftvertex); + apex(*fronttri, rightvertex); + if ((leftvertex[1] < rightvertex[1]) || + ((leftvertex[1] == rightvertex[1]) && + (leftvertex[0] < rightvertex[0]))) { + if (newsite[0] >= rightvertex[0]) { + return 1; + } + } else { + if (newsite[0] <= leftvertex[0]) { + return 0; + } + } + dxa = leftvertex[0] - newsite[0]; + dya = leftvertex[1] - newsite[1]; + dxb = rightvertex[0] - newsite[0]; + dyb = rightvertex[1] - newsite[1]; + return dya * (dxb * dxb + dyb * dyb) > dyb * (dxa * dxa + dya * dya); +} + +#endif /* not REDUCED */ + +#ifndef REDUCED + +#ifdef ANSI_DECLARATORS +REAL circletop(struct mesh *m, vertex pa, vertex pb, vertex pc, REAL ccwabc) +#else /* not ANSI_DECLARATORS */ +REAL circletop(m, pa, pb, pc, ccwabc) +struct mesh *m; +vertex pa; +vertex pb; +vertex pc; +REAL ccwabc; +#endif /* not ANSI_DECLARATORS */ + +{ + REAL xac, yac, xbc, ybc, xab, yab; + REAL aclen2, bclen2, ablen2; + + m->circletopcount++; + + xac = pa[0] - pc[0]; + yac = pa[1] - pc[1]; + xbc = pb[0] - pc[0]; + ybc = pb[1] - pc[1]; + xab = pa[0] - pb[0]; + yab = pa[1] - pb[1]; + aclen2 = xac * xac + yac * yac; + bclen2 = xbc * xbc + ybc * ybc; + ablen2 = xab * xab + yab * yab; + return pc[1] + (xac * bclen2 - xbc * aclen2 + sqrt(aclen2 * bclen2 * ablen2)) + / (2.0 * ccwabc); +} + +#endif /* not REDUCED */ + +#ifndef REDUCED + +#ifdef ANSI_DECLARATORS +void check4deadevent(struct otri *checktri, struct event **freeevents, + struct event **eventheap, int *heapsize) +#else /* not ANSI_DECLARATORS */ +void check4deadevent(checktri, freeevents, eventheap, heapsize) +struct otri *checktri; +struct event **freeevents; +struct event **eventheap; +int *heapsize; +#endif /* not ANSI_DECLARATORS */ + +{ + struct event *deadevent; + vertex eventvertex; + int eventnum; + + org(*checktri, eventvertex); + if (eventvertex != (vertex) NULL) { + deadevent = (struct event *) eventvertex; + eventnum = deadevent->heapposition; + deadevent->eventptr = (VOID *) *freeevents; + *freeevents = deadevent; + eventheapdelete(eventheap, *heapsize, eventnum); + (*heapsize)--; + setorg(*checktri, NULL); + } +} + +#endif /* not REDUCED */ + +#ifndef REDUCED + +#ifdef ANSI_DECLARATORS +struct splaynode *splay(struct mesh *m, struct splaynode *splaytree, + vertex searchpoint, struct otri *searchtri) +#else /* not ANSI_DECLARATORS */ +struct splaynode *splay(m, splaytree, searchpoint, searchtri) +struct mesh *m; +struct splaynode *splaytree; +vertex searchpoint; +struct otri *searchtri; +#endif /* not ANSI_DECLARATORS */ + +{ + struct splaynode *child, *grandchild; + struct splaynode *lefttree, *righttree; + struct splaynode *leftright; + vertex checkvertex; + int rightofroot, rightofchild; + + if (splaytree == (struct splaynode *) NULL) { + return (struct splaynode *) NULL; + } + dest(splaytree->keyedge, checkvertex); + if (checkvertex == splaytree->keydest) { + rightofroot = rightofhyperbola(m, &splaytree->keyedge, searchpoint); + if (rightofroot) { + otricopy(splaytree->keyedge, *searchtri); + child = splaytree->rchild; + } else { + child = splaytree->lchild; + } + if (child == (struct splaynode *) NULL) { + return splaytree; + } + dest(child->keyedge, checkvertex); + if (checkvertex != child->keydest) { + child = splay(m, child, searchpoint, searchtri); + if (child == (struct splaynode *) NULL) { + if (rightofroot) { + splaytree->rchild = (struct splaynode *) NULL; + } else { + splaytree->lchild = (struct splaynode *) NULL; + } + return splaytree; + } + } + rightofchild = rightofhyperbola(m, &child->keyedge, searchpoint); + if (rightofchild) { + otricopy(child->keyedge, *searchtri); + grandchild = splay(m, child->rchild, searchpoint, searchtri); + child->rchild = grandchild; + } else { + grandchild = splay(m, child->lchild, searchpoint, searchtri); + child->lchild = grandchild; + } + if (grandchild == (struct splaynode *) NULL) { + if (rightofroot) { + splaytree->rchild = child->lchild; + child->lchild = splaytree; + } else { + splaytree->lchild = child->rchild; + child->rchild = splaytree; + } + return child; + } + if (rightofchild) { + if (rightofroot) { + splaytree->rchild = child->lchild; + child->lchild = splaytree; + } else { + splaytree->lchild = grandchild->rchild; + grandchild->rchild = splaytree; + } + child->rchild = grandchild->lchild; + grandchild->lchild = child; + } else { + if (rightofroot) { + splaytree->rchild = grandchild->lchild; + grandchild->lchild = splaytree; + } else { + splaytree->lchild = child->rchild; + child->rchild = splaytree; + } + child->lchild = grandchild->rchild; + grandchild->rchild = child; + } + return grandchild; + } else { + lefttree = splay(m, splaytree->lchild, searchpoint, searchtri); + righttree = splay(m, splaytree->rchild, searchpoint, searchtri); + + pooldealloc(&m->splaynodes, (VOID *) splaytree); + if (lefttree == (struct splaynode *) NULL) { + return righttree; + } else if (righttree == (struct splaynode *) NULL) { + return lefttree; + } else if (lefttree->rchild == (struct splaynode *) NULL) { + lefttree->rchild = righttree->lchild; + righttree->lchild = lefttree; + return righttree; + } else if (righttree->lchild == (struct splaynode *) NULL) { + righttree->lchild = lefttree->rchild; + lefttree->rchild = righttree; + return lefttree; + } else { +/* fprintf(stderr, "Holy Toledo!!!\n"); */ + leftright = lefttree->rchild; + while (leftright->rchild != (struct splaynode *) NULL) { + leftright = leftright->rchild; + } + leftright->rchild = righttree; + return lefttree; + } + } +} + +#endif /* not REDUCED */ + +#ifndef REDUCED + +#ifdef ANSI_DECLARATORS +struct splaynode *splayinsert(struct mesh *m, struct splaynode *splayroot, + struct otri *newkey, vertex searchpoint) +#else /* not ANSI_DECLARATORS */ +struct splaynode *splayinsert(m, splayroot, newkey, searchpoint) +struct mesh *m; +struct splaynode *splayroot; +struct otri *newkey; +vertex searchpoint; +#endif /* not ANSI_DECLARATORS */ + +{ + struct splaynode *newsplaynode; + + newsplaynode = (struct splaynode *) poolalloc(&m->splaynodes); + otricopy(*newkey, newsplaynode->keyedge); + dest(*newkey, newsplaynode->keydest); + if (splayroot == (struct splaynode *) NULL) { + newsplaynode->lchild = (struct splaynode *) NULL; + newsplaynode->rchild = (struct splaynode *) NULL; + } else if (rightofhyperbola(m, &splayroot->keyedge, searchpoint)) { + newsplaynode->lchild = splayroot; + newsplaynode->rchild = splayroot->rchild; + splayroot->rchild = (struct splaynode *) NULL; + } else { + newsplaynode->lchild = splayroot->lchild; + newsplaynode->rchild = splayroot; + splayroot->lchild = (struct splaynode *) NULL; + } + return newsplaynode; +} + +#endif /* not REDUCED */ + +#ifndef REDUCED + +#ifdef ANSI_DECLARATORS +struct splaynode *circletopinsert(struct mesh *m, struct behavior *b, + struct splaynode *splayroot, + struct otri *newkey, + vertex pa, vertex pb, vertex pc, REAL topy) +#else /* not ANSI_DECLARATORS */ +struct splaynode *circletopinsert(m, b, splayroot, newkey, pa, pb, pc, topy) +struct mesh *m; +struct behavior *b; +struct splaynode *splayroot; +struct otri *newkey; +vertex pa; +vertex pb; +vertex pc; +REAL topy; +#endif /* not ANSI_DECLARATORS */ + +{ + REAL ccwabc; + REAL xac, yac, xbc, ybc; + REAL aclen2, bclen2; + REAL searchpoint[2]; + struct otri dummytri; + + ccwabc = counterclockwise(m, b, pa, pb, pc); + xac = pa[0] - pc[0]; + yac = pa[1] - pc[1]; + xbc = pb[0] - pc[0]; + ybc = pb[1] - pc[1]; + aclen2 = xac * xac + yac * yac; + bclen2 = xbc * xbc + ybc * ybc; + searchpoint[0] = pc[0] - (yac * bclen2 - ybc * aclen2) / (2.0 * ccwabc); + searchpoint[1] = topy; + return splayinsert(m, splay(m, splayroot, (vertex) searchpoint, &dummytri), + newkey, (vertex) searchpoint); +} + +#endif /* not REDUCED */ + +#ifndef REDUCED + +#ifdef ANSI_DECLARATORS +struct splaynode *frontlocate(struct mesh *m, struct splaynode *splayroot, + struct otri *bottommost, vertex searchvertex, + struct otri *searchtri, int *farright) +#else /* not ANSI_DECLARATORS */ +struct splaynode *frontlocate(m, splayroot, bottommost, searchvertex, + searchtri, farright) +struct mesh *m; +struct splaynode *splayroot; +struct otri *bottommost; +vertex searchvertex; +struct otri *searchtri; +int *farright; +#endif /* not ANSI_DECLARATORS */ + +{ + int farrightflag; + triangle ptr; /* Temporary variable used by onext(). */ + + otricopy(*bottommost, *searchtri); + splayroot = splay(m, splayroot, searchvertex, searchtri); + + farrightflag = 0; + while (!farrightflag && rightofhyperbola(m, searchtri, searchvertex)) { + onextself(*searchtri); + farrightflag = otriequal(*searchtri, *bottommost); + } + *farright = farrightflag; + return splayroot; +} + +#endif /* not REDUCED */ + +#ifndef REDUCED + +#ifdef ANSI_DECLARATORS +long sweeplinedelaunay(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +long sweeplinedelaunay(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + struct event **eventheap; + struct event *events; + struct event *freeevents; + struct event *nextevent; + struct event *newevent; + struct splaynode *splayroot; + struct otri bottommost; + struct otri searchtri; + struct otri fliptri; + struct otri lefttri, righttri, farlefttri, farrighttri; + struct otri inserttri; + vertex firstvertex, secondvertex; + vertex nextvertex, lastvertex; + vertex connectvertex; + vertex leftvertex, midvertex, rightvertex; + REAL lefttest, righttest; + int heapsize; + int check4events, farrightflag; + triangle ptr; /* Temporary variable used by sym(), onext(), and oprev(). */ + + poolinit(&m->splaynodes, sizeof(struct splaynode), SPLAYNODEPERBLOCK, + POINTER, 0); + splayroot = (struct splaynode *) NULL; + + if (b->verbose) { + fprintf(stderr, " Placing vertices in event heap.\n"); + } + createeventheap(m, &eventheap, &events, &freeevents); + heapsize = m->invertices; + + if (b->verbose) { + fprintf(stderr, " Forming triangulation.\n"); + } + maketriangle(m, b, &lefttri); + maketriangle(m, b, &righttri); + bond(lefttri, righttri); + lnextself(lefttri); + lprevself(righttri); + bond(lefttri, righttri); + lnextself(lefttri); + lprevself(righttri); + bond(lefttri, righttri); + firstvertex = (vertex) eventheap[0]->eventptr; + eventheap[0]->eventptr = (VOID *) freeevents; + freeevents = eventheap[0]; + eventheapdelete(eventheap, heapsize, 0); + heapsize--; + do { + if (heapsize == 0) { + fprintf(stderr, "Error: Input vertices are all identical.\n"); + exit(1); + } + secondvertex = (vertex) eventheap[0]->eventptr; + eventheap[0]->eventptr = (VOID *) freeevents; + freeevents = eventheap[0]; + eventheapdelete(eventheap, heapsize, 0); + heapsize--; + if ((firstvertex[0] == secondvertex[0]) && + (firstvertex[1] == secondvertex[1])) { + if (!b->quiet) { + fprintf(stderr, +"Warning: A duplicate vertex at (%.12g, %.12g) appeared and was ignored.\n", + secondvertex[0], secondvertex[1]); + } + setvertextype(secondvertex, UNDEADVERTEX); + m->undeads++; + } + } while ((firstvertex[0] == secondvertex[0]) && + (firstvertex[1] == secondvertex[1])); + setorg(lefttri, firstvertex); + setdest(lefttri, secondvertex); + setorg(righttri, secondvertex); + setdest(righttri, firstvertex); + lprev(lefttri, bottommost); + lastvertex = secondvertex; + while (heapsize > 0) { + nextevent = eventheap[0]; + eventheapdelete(eventheap, heapsize, 0); + heapsize--; + check4events = 1; + if (nextevent->xkey < m->xmin) { + decode(nextevent->eventptr, fliptri); + oprev(fliptri, farlefttri); + check4deadevent(&farlefttri, &freeevents, eventheap, &heapsize); + onext(fliptri, farrighttri); + check4deadevent(&farrighttri, &freeevents, eventheap, &heapsize); + + if (otriequal(farlefttri, bottommost)) { + lprev(fliptri, bottommost); + } + flip(m, b, &fliptri); + setapex(fliptri, NULL); + lprev(fliptri, lefttri); + lnext(fliptri, righttri); + sym(lefttri, farlefttri); + + if (randomnation(SAMPLERATE) == 0) { + symself(fliptri); + dest(fliptri, leftvertex); + apex(fliptri, midvertex); + org(fliptri, rightvertex); + splayroot = circletopinsert(m, b, splayroot, &lefttri, leftvertex, + midvertex, rightvertex, nextevent->ykey); + } + } else { + nextvertex = (vertex) nextevent->eventptr; + if ((nextvertex[0] == lastvertex[0]) && + (nextvertex[1] == lastvertex[1])) { + if (!b->quiet) { + fprintf(stderr, +"Warning: A duplicate vertex at (%.12g, %.12g) appeared and was ignored.\n", + nextvertex[0], nextvertex[1]); + } + setvertextype(nextvertex, UNDEADVERTEX); + m->undeads++; + check4events = 0; + } else { + lastvertex = nextvertex; + + splayroot = frontlocate(m, splayroot, &bottommost, nextvertex, + &searchtri, &farrightflag); +/* + otricopy(bottommost, searchtri); + farrightflag = 0; + while (!farrightflag && rightofhyperbola(m, &searchtri, nextvertex)) { + onextself(searchtri); + farrightflag = otriequal(searchtri, bottommost); + } +*/ + + check4deadevent(&searchtri, &freeevents, eventheap, &heapsize); + + otricopy(searchtri, farrighttri); + sym(searchtri, farlefttri); + maketriangle(m, b, &lefttri); + maketriangle(m, b, &righttri); + dest(farrighttri, connectvertex); + setorg(lefttri, connectvertex); + setdest(lefttri, nextvertex); + setorg(righttri, nextvertex); + setdest(righttri, connectvertex); + bond(lefttri, righttri); + lnextself(lefttri); + lprevself(righttri); + bond(lefttri, righttri); + lnextself(lefttri); + lprevself(righttri); + bond(lefttri, farlefttri); + bond(righttri, farrighttri); + if (!farrightflag && otriequal(farrighttri, bottommost)) { + otricopy(lefttri, bottommost); + } + + if (randomnation(SAMPLERATE) == 0) { + splayroot = splayinsert(m, splayroot, &lefttri, nextvertex); + } else if (randomnation(SAMPLERATE) == 0) { + lnext(righttri, inserttri); + splayroot = splayinsert(m, splayroot, &inserttri, nextvertex); + } + } + } + nextevent->eventptr = (VOID *) freeevents; + freeevents = nextevent; + + if (check4events) { + apex(farlefttri, leftvertex); + dest(lefttri, midvertex); + apex(lefttri, rightvertex); + lefttest = counterclockwise(m, b, leftvertex, midvertex, rightvertex); + if (lefttest > 0.0) { + newevent = freeevents; + freeevents = (struct event *) freeevents->eventptr; + newevent->xkey = m->xminextreme; + newevent->ykey = circletop(m, leftvertex, midvertex, rightvertex, + lefttest); + newevent->eventptr = (VOID *) encode(lefttri); + eventheapinsert(eventheap, heapsize, newevent); + heapsize++; + setorg(lefttri, newevent); + } + apex(righttri, leftvertex); + org(righttri, midvertex); + apex(farrighttri, rightvertex); + righttest = counterclockwise(m, b, leftvertex, midvertex, rightvertex); + if (righttest > 0.0) { + newevent = freeevents; + freeevents = (struct event *) freeevents->eventptr; + newevent->xkey = m->xminextreme; + newevent->ykey = circletop(m, leftvertex, midvertex, rightvertex, + righttest); + newevent->eventptr = (VOID *) encode(farrighttri); + eventheapinsert(eventheap, heapsize, newevent); + heapsize++; + setorg(farrighttri, newevent); + } + } + } + + pooldeinit(&m->splaynodes); + lprevself(bottommost); + return removeghosts(m, b, &bottommost); +} + +#endif /* not REDUCED */ + +/** **/ +/** **/ +/********* Sweepline Delaunay triangulation ends here *********/ + +/********* General mesh construction routines begin here *********/ +/** **/ +/** **/ + +/*****************************************************************************/ +/* */ +/* delaunay() Form a Delaunay triangulation. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +long delaunay(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +long delaunay(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + long hulledges; + + m->eextras = 0; + initializetrisubpools(m, b); + +#ifdef REDUCED + if (!b->quiet) { + fprintf(stderr, + "Constructing Delaunay triangulation by divide-and-conquer method.\n"); + } + hulledges = divconqdelaunay(m, b); +#else /* not REDUCED */ + if (!b->quiet) { + fprintf(stderr, "Constructing Delaunay triangulation "); + if (b->incremental) { + fprintf(stderr, "by incremental method.\n"); + } else if (b->sweepline) { + fprintf(stderr, "by sweepline method.\n"); + } else { + fprintf(stderr, "by divide-and-conquer method.\n"); + } + } + if (b->incremental) { + hulledges = incrementaldelaunay(m, b); + } else if (b->sweepline) { + hulledges = sweeplinedelaunay(m, b); + } else { + hulledges = divconqdelaunay(m, b); + } +#endif /* not REDUCED */ + + if (m->triangles.items == 0) { + /* The input vertices were all collinear, so there are no triangles. */ + return 0l; + } else { + return hulledges; + } +} + +/*****************************************************************************/ +/* */ +/* reconstruct() Reconstruct a triangulation from its .ele (and possibly */ +/* .poly) file. Used when the -r switch is used. */ +/* */ +/* Reads an .ele file and reconstructs the original mesh. If the -p switch */ +/* is used, this procedure will also read a .poly file and reconstruct the */ +/* subsegments of the original mesh. If the -a switch is used, this */ +/* procedure will also read an .area file and set a maximum area constraint */ +/* on each triangle. */ +/* */ +/* Vertices that are not corners of triangles, such as nodes on edges of */ +/* subparametric elements, are discarded. */ +/* */ +/* This routine finds the adjacencies between triangles (and subsegments) */ +/* by forming one stack of triangles for each vertex. Each triangle is on */ +/* three different stacks simultaneously. Each triangle's subsegment */ +/* pointers are used to link the items in each stack. This memory-saving */ +/* feature makes the code harder to read. The most important thing to keep */ +/* in mind is that each triangle is removed from a stack precisely when */ +/* the corresponding pointer is adjusted to refer to a subsegment rather */ +/* than the next triangle of the stack. */ +/* */ +/*****************************************************************************/ + +#ifndef CDT_ONLY + +#ifdef TRILIBRARY + +#ifdef ANSI_DECLARATORS +int reconstruct(struct mesh *m, struct behavior *b, int *trianglelist, + REAL *triangleattriblist, REAL *trianglearealist, + int elements, int corners, int attribs, + int *segmentlist,int *segmentmarkerlist, int numberofsegments) +#else /* not ANSI_DECLARATORS */ +int reconstruct(m, b, trianglelist, triangleattriblist, trianglearealist, + elements, corners, attribs, segmentlist, segmentmarkerlist, + numberofsegments) +struct mesh *m; +struct behavior *b; +int *trianglelist; +REAL *triangleattriblist; +REAL *trianglearealist; +int elements; +int corners; +int attribs; +int *segmentlist; +int *segmentmarkerlist; +int numberofsegments; +#endif /* not ANSI_DECLARATORS */ + +#else /* not TRILIBRARY */ + +#ifdef ANSI_DECLARATORS +long reconstruct(struct mesh *m, struct behavior *b, char *elefilename, + char *areafilename, char *polyfilename, FILE *polyfile) +#else /* not ANSI_DECLARATORS */ +long reconstruct(m, b, elefilename, areafilename, polyfilename, polyfile) +struct mesh *m; +struct behavior *b; +char *elefilename; +char *areafilename; +char *polyfilename; +FILE *polyfile; +#endif /* not ANSI_DECLARATORS */ + +#endif /* not TRILIBRARY */ + +{ +#ifdef TRILIBRARY + int vertexindex; + int attribindex; +#else /* not TRILIBRARY */ + FILE *elefile; + FILE *areafile; + char inputline[INPUTLINESIZE]; + char *stringptr; + int areaelements; +#endif /* not TRILIBRARY */ + struct otri triangleloop; + struct otri triangleleft; + struct otri checktri; + struct otri checkleft; + struct otri checkneighbor; + struct osub subsegloop; + triangle *vertexarray; + triangle *prevlink; + triangle nexttri; + vertex tdest, tapex; + vertex checkdest, checkapex; + vertex shorg; + vertex killvertex; + REAL area; + int corner[3]; + int end[2]; + int killvertexindex; + int incorners; + int segmentmarkers; + int boundmarker; + int aroundvertex; + long hullsize; + int notfound; + long elementnumber, segmentnumber; + int i, j; + triangle ptr; /* Temporary variable used by sym(). */ + +#ifdef TRILIBRARY + m->inelements = elements; + incorners = corners; + if (incorners < 3) { + fprintf(stderr, "Error: Triangles must have at least 3 vertices.\n"); + exit(1); + } + m->eextras = attribs; +#else /* not TRILIBRARY */ + /* Read the triangles from an .ele file. */ + if (!b->quiet) { + fprintf(stderr, "Opening %s.\n", elefilename); + } + elefile = fopen(elefilename, "r"); + if (elefile == (FILE *) NULL) { + fprintf(stderr, " Error: Cannot access file %s.\n", elefilename); + exit(1); + } + /* Read number of triangles, number of vertices per triangle, and */ + /* number of triangle attributes from .ele file. */ + stringptr = readline(inputline, elefile, elefilename); + m->inelements = (int) strtol(stringptr, &stringptr, 0); + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + incorners = 3; + } else { + incorners = (int) strtol(stringptr, &stringptr, 0); + if (incorners < 3) { + fprintf(stderr, "Error: Triangles in %s must have at least 3 vertices.\n", + elefilename); + exit(1); + } + } + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + m->eextras = 0; + } else { + m->eextras = (int) strtol(stringptr, &stringptr, 0); + } +#endif /* not TRILIBRARY */ + + initializetrisubpools(m, b); + + /* Create the triangles. */ + for (elementnumber = 1; elementnumber <= m->inelements; elementnumber++) { + maketriangle(m, b, &triangleloop); + /* Mark the triangle as living. */ + triangleloop.tri[3] = (triangle) triangleloop.tri; + } + + if (b->poly) { +#ifdef TRILIBRARY + m->insegments = numberofsegments; + segmentmarkers = segmentmarkerlist != (int *) NULL; +#else /* not TRILIBRARY */ + /* Read number of segments and number of segment */ + /* boundary markers from .poly file. */ + stringptr = readline(inputline, polyfile, b->inpolyfilename); + m->insegments = (int) strtol(stringptr, &stringptr, 0); + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + segmentmarkers = 0; + } else { + segmentmarkers = (int) strtol(stringptr, &stringptr, 0); + } +#endif /* not TRILIBRARY */ + + /* Create the subsegments. */ + for (segmentnumber = 1; segmentnumber <= m->insegments; segmentnumber++) { + makesubseg(m, &subsegloop); + /* Mark the subsegment as living. */ + subsegloop.ss[2] = (subseg) subsegloop.ss; + } + } + +#ifdef TRILIBRARY + vertexindex = 0; + attribindex = 0; +#else /* not TRILIBRARY */ + if (b->vararea) { + /* Open an .area file, check for consistency with the .ele file. */ + if (!b->quiet) { + fprintf(stderr, "Opening %s.\n", areafilename); + } + areafile = fopen(areafilename, "r"); + if (areafile == (FILE *) NULL) { + fprintf(stderr, " Error: Cannot access file %s.\n", areafilename); + exit(1); + } + stringptr = readline(inputline, areafile, areafilename); + areaelements = (int) strtol(stringptr, &stringptr, 0); + if (areaelements != m->inelements) { + fprintf(stderr, "Error: %s and %s disagree on number of triangles.\n", + elefilename, areafilename); + exit(1); + } + } +#endif /* not TRILIBRARY */ + + if (!b->quiet) { + fprintf(stderr, "Reconstructing mesh.\n"); + } + /* Allocate a temporary array that maps each vertex to some adjacent */ + /* triangle. I took care to allocate all the permanent memory for */ + /* triangles and subsegments first. */ + vertexarray = (triangle *) trimalloc(m->vertices.items * sizeof(triangle)); + /* Each vertex is initially unrepresented. */ + for (i = 0; i < m->vertices.items; i++) { + vertexarray[i] = (triangle) m->dummytri; + } + + if (b->verbose) { + fprintf(stderr, " Assembling triangles.\n"); + } + /* Read the triangles from the .ele file, and link */ + /* together those that share an edge. */ + traversalinit(&m->triangles); + triangleloop.tri = triangletraverse(m); + elementnumber = b->firstnumber; + while (triangleloop.tri != (triangle *) NULL) { +#ifdef TRILIBRARY + /* Copy the triangle's three corners. */ + for (j = 0; j < 3; j++) { + corner[j] = trianglelist[vertexindex++]; + if ((corner[j] < b->firstnumber) || + (corner[j] >= b->firstnumber + m->invertices)) { + fprintf(stderr, "Error: Triangle %ld has an invalid vertex index.\n", + elementnumber); + exit(1); + } + } +#else /* not TRILIBRARY */ + /* Read triangle number and the triangle's three corners. */ + stringptr = readline(inputline, elefile, elefilename); + for (j = 0; j < 3; j++) { + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + fprintf(stderr, "Error: Triangle %ld is missing vertex %d in %s.\n", + elementnumber, j + 1, elefilename); + exit(1); + } else { + corner[j] = (int) strtol(stringptr, &stringptr, 0); + if ((corner[j] < b->firstnumber) || + (corner[j] >= b->firstnumber + m->invertices)) { + fprintf(stderr, "Error: Triangle %ld has an invalid vertex index.\n", + elementnumber); + exit(1); + } + } + } +#endif /* not TRILIBRARY */ + + /* Find out about (and throw away) extra nodes. */ + for (j = 3; j < incorners; j++) { +#ifdef TRILIBRARY + killvertexindex = trianglelist[vertexindex++]; +#else /* not TRILIBRARY */ + stringptr = findfield(stringptr); + if (*stringptr != '\0') { + killvertexindex = (int) strtol(stringptr, &stringptr, 0); +#endif /* not TRILIBRARY */ + if ((killvertexindex >= b->firstnumber) && + (killvertexindex < b->firstnumber + m->invertices)) { + /* Delete the non-corner vertex if it's not already deleted. */ + killvertex = getvertex(m, b, killvertexindex); + if (vertextype(killvertex) != DEADVERTEX) { + vertexdealloc(m, killvertex); + } + } +#ifndef TRILIBRARY + } +#endif /* not TRILIBRARY */ + } + + /* Read the triangle's attributes. */ + for (j = 0; j < m->eextras; j++) { +#ifdef TRILIBRARY + setelemattribute(triangleloop, j, triangleattriblist[attribindex++]); +#else /* not TRILIBRARY */ + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + setelemattribute(triangleloop, j, 0); + } else { + setelemattribute(triangleloop, j, + (REAL) strtod(stringptr, &stringptr)); + } +#endif /* not TRILIBRARY */ + } + + if (b->vararea) { +#ifdef TRILIBRARY + area = trianglearealist[elementnumber - b->firstnumber]; +#else /* not TRILIBRARY */ + /* Read an area constraint from the .area file. */ + stringptr = readline(inputline, areafile, areafilename); + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + area = -1.0; /* No constraint on this triangle. */ + } else { + area = (REAL) strtod(stringptr, &stringptr); + } +#endif /* not TRILIBRARY */ + setareabound(triangleloop, area); + } + + /* Set the triangle's vertices. */ + triangleloop.orient = 0; + setorg(triangleloop, getvertex(m, b, corner[0])); + setdest(triangleloop, getvertex(m, b, corner[1])); + setapex(triangleloop, getvertex(m, b, corner[2])); + /* Try linking the triangle to others that share these vertices. */ + for (triangleloop.orient = 0; triangleloop.orient < 3; + triangleloop.orient++) { + /* Take the number for the origin of triangleloop. */ + aroundvertex = corner[triangleloop.orient]; + /* Look for other triangles having this vertex. */ + nexttri = vertexarray[aroundvertex - b->firstnumber]; + /* Link the current triangle to the next one in the stack. */ + triangleloop.tri[6 + triangleloop.orient] = nexttri; + /* Push the current triangle onto the stack. */ + vertexarray[aroundvertex - b->firstnumber] = encode(triangleloop); + decode(nexttri, checktri); + if (checktri.tri != m->dummytri) { + dest(triangleloop, tdest); + apex(triangleloop, tapex); + /* Look for other triangles that share an edge. */ + do { + dest(checktri, checkdest); + apex(checktri, checkapex); + if (tapex == checkdest) { + /* The two triangles share an edge; bond them together. */ + lprev(triangleloop, triangleleft); + bond(triangleleft, checktri); + } + if (tdest == checkapex) { + /* The two triangles share an edge; bond them together. */ + lprev(checktri, checkleft); + bond(triangleloop, checkleft); + } + /* Find the next triangle in the stack. */ + nexttri = checktri.tri[6 + checktri.orient]; + decode(nexttri, checktri); + } while (checktri.tri != m->dummytri); + } + } + triangleloop.tri = triangletraverse(m); + elementnumber++; + } + +#ifdef TRILIBRARY + vertexindex = 0; +#else /* not TRILIBRARY */ + fclose(elefile); + if (b->vararea) { + fclose(areafile); + } +#endif /* not TRILIBRARY */ + + hullsize = 0; /* Prepare to count the boundary edges. */ + if (b->poly) { + if (b->verbose) { + fprintf(stderr, " Marking segments in triangulation.\n"); + } + /* Read the segments from the .poly file, and link them */ + /* to their neighboring triangles. */ + boundmarker = 0; + traversalinit(&m->subsegs); + subsegloop.ss = subsegtraverse(m); + segmentnumber = b->firstnumber; + while (subsegloop.ss != (subseg *) NULL) { +#ifdef TRILIBRARY + end[0] = segmentlist[vertexindex++]; + end[1] = segmentlist[vertexindex++]; + if (segmentmarkers) { + boundmarker = segmentmarkerlist[segmentnumber - b->firstnumber]; + } +#else /* not TRILIBRARY */ + /* Read the endpoints of each segment, and possibly a boundary marker. */ + stringptr = readline(inputline, polyfile, b->inpolyfilename); + /* Skip the first (segment number) field. */ + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + fprintf(stderr, "Error: Segment %ld has no endpoints in %s.\n", segmentnumber, + polyfilename); + exit(1); + } else { + end[0] = (int) strtol(stringptr, &stringptr, 0); + } + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + fprintf(stderr, "Error: Segment %ld is missing its second endpoint in %s.\n", + segmentnumber, polyfilename); + exit(1); + } else { + end[1] = (int) strtol(stringptr, &stringptr, 0); + } + if (segmentmarkers) { + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + boundmarker = 0; + } else { + boundmarker = (int) strtol(stringptr, &stringptr, 0); + } + } +#endif /* not TRILIBRARY */ + for (j = 0; j < 2; j++) { + if ((end[j] < b->firstnumber) || + (end[j] >= b->firstnumber + m->invertices)) { + fprintf(stderr, "Error: Segment %ld has an invalid vertex index.\n", + segmentnumber); + exit(1); + } + } + + /* set the subsegment's vertices. */ + subsegloop.ssorient = 0; + setsorg(subsegloop, getvertex(m, b, end[0])); + setsdest(subsegloop, getvertex(m, b, end[1])); + setmark(subsegloop, boundmarker); + /* Try linking the subsegment to triangles that share these vertices. */ + for (subsegloop.ssorient = 0; subsegloop.ssorient < 2; + subsegloop.ssorient++) { + /* Take the number for the destination of subsegloop. */ + aroundvertex = end[1 - subsegloop.ssorient]; + /* Look for triangles having this vertex. */ + prevlink = &vertexarray[aroundvertex - b->firstnumber]; + nexttri = vertexarray[aroundvertex - b->firstnumber]; + decode(nexttri, checktri); + sorg(subsegloop, shorg); + notfound = 1; + /* Look for triangles having this edge. Note that I'm only */ + /* comparing each triangle's destination with the subsegment; */ + /* each triangle's apex is handled through a different vertex. */ + /* Because each triangle appears on three vertices' lists, each */ + /* occurrence of a triangle on a list can (and does) represent */ + /* an edge. In this way, most edges are represented twice, and */ + /* every triangle-subsegment bond is represented once. */ + while (notfound && (checktri.tri != m->dummytri)) { + dest(checktri, checkdest); + if (shorg == checkdest) { + /* We have a match. Remove this triangle from the list. */ + *prevlink = checktri.tri[6 + checktri.orient]; + /* Bond the subsegment to the triangle. */ + tsbond(checktri, subsegloop); + /* Check if this is a boundary edge. */ + sym(checktri, checkneighbor); + if (checkneighbor.tri == m->dummytri) { + /* The next line doesn't insert a subsegment (because there's */ + /* already one there), but it sets the boundary markers of */ + /* the existing subsegment and its vertices. */ + insertsubseg(m, b, &checktri, 1); + hullsize++; + } + notfound = 0; + } + /* Find the next triangle in the stack. */ + prevlink = &checktri.tri[6 + checktri.orient]; + nexttri = checktri.tri[6 + checktri.orient]; + decode(nexttri, checktri); + } + } + subsegloop.ss = subsegtraverse(m); + segmentnumber++; + } + } + + /* Mark the remaining edges as not being attached to any subsegment. */ + /* Also, count the (yet uncounted) boundary edges. */ + for (i = 0; i < m->vertices.items; i++) { + /* Search the stack of triangles adjacent to a vertex. */ + nexttri = vertexarray[i]; + decode(nexttri, checktri); + while (checktri.tri != m->dummytri) { + /* Find the next triangle in the stack before this */ + /* information gets overwritten. */ + nexttri = checktri.tri[6 + checktri.orient]; + /* No adjacent subsegment. (This overwrites the stack info.) */ + tsdissolve(checktri); + sym(checktri, checkneighbor); + if (checkneighbor.tri == m->dummytri) { + insertsubseg(m, b, &checktri, 1); + hullsize++; + } + decode(nexttri, checktri); + } + } + + trifree((VOID *) vertexarray); + return hullsize; +} + +#endif /* not CDT_ONLY */ + +/** **/ +/** **/ +/********* General mesh construction routines end here *********/ + +/********* Segment insertion begins here *********/ +/** **/ +/** **/ + +/*****************************************************************************/ +/* */ +/* finddirection() Find the first triangle on the path from one point */ +/* to another. */ +/* */ +/* Finds the triangle that intersects a line segment drawn from the */ +/* origin of `searchtri' to the point `searchpoint', and returns the result */ +/* in `searchtri'. The origin of `searchtri' does not change, even though */ +/* the triangle returned may differ from the one passed in. This routine */ +/* is used to find the direction to move in to get from one point to */ +/* another. */ +/* */ +/* The return value notes whether the destination or apex of the found */ +/* triangle is collinear with the two points in question. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +enum finddirectionresult finddirection(struct mesh *m, struct behavior *b, + struct otri *searchtri, + vertex searchpoint) +#else /* not ANSI_DECLARATORS */ +enum finddirectionresult finddirection(m, b, searchtri, searchpoint) +struct mesh *m; +struct behavior *b; +struct otri *searchtri; +vertex searchpoint; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri checktri; + vertex startvertex; + vertex leftvertex, rightvertex; + REAL leftccw, rightccw; + int leftflag, rightflag; + triangle ptr; /* Temporary variable used by onext() and oprev(). */ + + org(*searchtri, startvertex); + dest(*searchtri, rightvertex); + apex(*searchtri, leftvertex); + /* Is `searchpoint' to the left? */ + leftccw = counterclockwise(m, b, searchpoint, startvertex, leftvertex); + leftflag = leftccw > 0.0; + /* Is `searchpoint' to the right? */ + rightccw = counterclockwise(m, b, startvertex, searchpoint, rightvertex); + rightflag = rightccw > 0.0; + if (leftflag && rightflag) { + /* `searchtri' faces directly away from `searchpoint'. We could go left */ + /* or right. Ask whether it's a triangle or a boundary on the left. */ + onext(*searchtri, checktri); + if (checktri.tri == m->dummytri) { + leftflag = 0; + } else { + rightflag = 0; + } + } + while (leftflag) { + /* Turn left until satisfied. */ + onextself(*searchtri); + if (searchtri->tri == m->dummytri) { + fprintf(stderr, "Internal error in finddirection(): Unable to find a\n"); + fprintf(stderr, " triangle leading from (%.12g, %.12g) to", startvertex[0], + startvertex[1]); + fprintf(stderr, " (%.12g, %.12g).\n", searchpoint[0], searchpoint[1]); + internalerror(); + } + apex(*searchtri, leftvertex); + rightccw = leftccw; + leftccw = counterclockwise(m, b, searchpoint, startvertex, leftvertex); + leftflag = leftccw > 0.0; + } + while (rightflag) { + /* Turn right until satisfied. */ + oprevself(*searchtri); + if (searchtri->tri == m->dummytri) { + fprintf(stderr, "Internal error in finddirection(): Unable to find a\n"); + fprintf(stderr, " triangle leading from (%.12g, %.12g) to", startvertex[0], + startvertex[1]); + fprintf(stderr, " (%.12g, %.12g).\n", searchpoint[0], searchpoint[1]); + internalerror(); + } + dest(*searchtri, rightvertex); + leftccw = rightccw; + rightccw = counterclockwise(m, b, startvertex, searchpoint, rightvertex); + rightflag = rightccw > 0.0; + } + if (leftccw == 0.0) { + return LEFTCOLLINEAR; + } else if (rightccw == 0.0) { + return RIGHTCOLLINEAR; + } else { + return WITHIN; + } +} + +/*****************************************************************************/ +/* */ +/* segmentintersection() Find the intersection of an existing segment */ +/* and a segment that is being inserted. Insert */ +/* a vertex at the intersection, splitting an */ +/* existing subsegment. */ +/* */ +/* The segment being inserted connects the apex of splittri to endpoint2. */ +/* splitsubseg is the subsegment being split, and MUST adjoin splittri. */ +/* Hence, endpoints of the subsegment being split are the origin and */ +/* destination of splittri. */ +/* */ +/* On completion, splittri is a handle having the newly inserted */ +/* intersection point as its origin, and endpoint1 as its destination. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void segmentintersection(struct mesh *m, struct behavior *b, + struct otri *splittri, struct osub *splitsubseg, + vertex endpoint2) +#else /* not ANSI_DECLARATORS */ +void segmentintersection(m, b, splittri, splitsubseg, endpoint2) +struct mesh *m; +struct behavior *b; +struct otri *splittri; +struct osub *splitsubseg; +vertex endpoint2; +#endif /* not ANSI_DECLARATORS */ + +{ + vertex endpoint1; + vertex torg, tdest; + vertex leftvertex, rightvertex; + vertex newvertex; + enum insertvertexresult success; + enum finddirectionresult collinear; + REAL ex, ey; + REAL tx, ty; + REAL etx, ety; + REAL split, denom; + int i; + triangle ptr; /* Temporary variable used by onext(). */ + + /* Find the other three segment endpoints. */ + apex(*splittri, endpoint1); + org(*splittri, torg); + dest(*splittri, tdest); + /* Segment intersection formulae; see the Antonio reference. */ + tx = tdest[0] - torg[0]; + ty = tdest[1] - torg[1]; + ex = endpoint2[0] - endpoint1[0]; + ey = endpoint2[1] - endpoint1[1]; + etx = torg[0] - endpoint2[0]; + ety = torg[1] - endpoint2[1]; + denom = ty * ex - tx * ey; + if (denom == 0.0) { + fprintf(stderr, "Internal error in segmentintersection():"); + fprintf(stderr, " Attempt to find intersection of parallel segments.\n"); + internalerror(); + } + split = (ey * etx - ex * ety) / denom; + /* Create the new vertex. */ + newvertex = (vertex) poolalloc(&m->vertices); + /* Interpolate its coordinate and attributes. */ + for (i = 0; i < 2 + m->nextras; i++) { + newvertex[i] = torg[i] + split * (tdest[i] - torg[i]); + } + setvertexmark(newvertex, mark(*splitsubseg)); + setvertextype(newvertex, INPUTVERTEX); + if (b->verbose > 1) { + fprintf(stderr, + " Splitting subsegment (%.12g, %.12g) (%.12g, %.12g) at (%.12g, %.12g).\n", + torg[0], torg[1], tdest[0], tdest[1], newvertex[0], newvertex[1]); + } + /* Insert the intersection vertex. This should always succeed. */ + success = insertvertex(m, b, newvertex, splittri, splitsubseg, 0, 0, 0.0); + if (success != SUCCESSFULVERTEX) { + fprintf(stderr, "Internal error in segmentintersection():\n"); + fprintf(stderr, " Failure to split a segment.\n"); + internalerror(); + } + if (m->steinerleft > 0) { + m->steinerleft--; + } + /* Inserting the vertex may have caused edge flips. We wish to rediscover */ + /* the edge connecting endpoint1 to the new intersection vertex. */ + collinear = finddirection(m, b, splittri, endpoint1); + dest(*splittri, rightvertex); + apex(*splittri, leftvertex); + if ((leftvertex[0] == endpoint1[0]) && (leftvertex[1] == endpoint1[1])) { + onextself(*splittri); + } else if ((rightvertex[0] != endpoint1[0]) || + (rightvertex[1] != endpoint1[1])) { + fprintf(stderr, "Internal error in segmentintersection():\n"); + fprintf(stderr, " Topological inconsistency after splitting a segment.\n"); + internalerror(); + } + /* `splittri' should have destination endpoint1. */ +} + +/*****************************************************************************/ +/* */ +/* scoutsegment() Scout the first triangle on the path from one endpoint */ +/* to another, and check for completion (reaching the */ +/* second endpoint), a collinear vertex, or the */ +/* intersection of two segments. */ +/* */ +/* Returns one if the entire segment is successfully inserted, and zero if */ +/* the job must be finished by conformingedge() or constrainededge(). */ +/* */ +/* If the first triangle on the path has the second endpoint as its */ +/* destination or apex, a subsegment is inserted and the job is done. */ +/* */ +/* If the first triangle on the path has a destination or apex that lies on */ +/* the segment, a subsegment is inserted connecting the first endpoint to */ +/* the collinear vertex, and the search is continued from the collinear */ +/* vertex. */ +/* */ +/* If the first triangle on the path has a subsegment opposite its origin, */ +/* then there is a segment that intersects the segment being inserted. */ +/* Their intersection vertex is inserted, splitting the subsegment. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +int scoutsegment(struct mesh *m, struct behavior *b, struct otri *searchtri, + vertex endpoint2, int newmark) +#else /* not ANSI_DECLARATORS */ +int scoutsegment(m, b, searchtri, endpoint2, newmark) +struct mesh *m; +struct behavior *b; +struct otri *searchtri; +vertex endpoint2; +int newmark; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri crosstri; + struct osub crosssubseg; + vertex leftvertex, rightvertex; + enum finddirectionresult collinear; + subseg sptr; /* Temporary variable used by tspivot(). */ + + collinear = finddirection(m, b, searchtri, endpoint2); + dest(*searchtri, rightvertex); + apex(*searchtri, leftvertex); + if (((leftvertex[0] == endpoint2[0]) && (leftvertex[1] == endpoint2[1])) || + ((rightvertex[0] == endpoint2[0]) && (rightvertex[1] == endpoint2[1]))) { + /* The segment is already an edge in the mesh. */ + if ((leftvertex[0] == endpoint2[0]) && (leftvertex[1] == endpoint2[1])) { + lprevself(*searchtri); + } + /* Insert a subsegment, if there isn't already one there. */ + insertsubseg(m, b, searchtri, newmark); + return 1; + } else if (collinear == LEFTCOLLINEAR) { + /* We've collided with a vertex between the segment's endpoints. */ + /* Make the collinear vertex be the triangle's origin. */ + lprevself(*searchtri); + insertsubseg(m, b, searchtri, newmark); + /* Insert the remainder of the segment. */ + return scoutsegment(m, b, searchtri, endpoint2, newmark); + } else if (collinear == RIGHTCOLLINEAR) { + /* We've collided with a vertex between the segment's endpoints. */ + insertsubseg(m, b, searchtri, newmark); + /* Make the collinear vertex be the triangle's origin. */ + lnextself(*searchtri); + /* Insert the remainder of the segment. */ + return scoutsegment(m, b, searchtri, endpoint2, newmark); + } else { + lnext(*searchtri, crosstri); + tspivot(crosstri, crosssubseg); + /* Check for a crossing segment. */ + if (crosssubseg.ss == m->dummysub) { + return 0; + } else { + /* Insert a vertex at the intersection. */ + segmentintersection(m, b, &crosstri, &crosssubseg, endpoint2); + otricopy(crosstri, *searchtri); + insertsubseg(m, b, searchtri, newmark); + /* Insert the remainder of the segment. */ + return scoutsegment(m, b, searchtri, endpoint2, newmark); + } + } +} + +/*****************************************************************************/ +/* */ +/* conformingedge() Force a segment into a conforming Delaunay */ +/* triangulation by inserting a vertex at its midpoint, */ +/* and recursively forcing in the two half-segments if */ +/* necessary. */ +/* */ +/* Generates a sequence of subsegments connecting `endpoint1' to */ +/* `endpoint2'. `newmark' is the boundary marker of the segment, assigned */ +/* to each new splitting vertex and subsegment. */ +/* */ +/* Note that conformingedge() does not always maintain the conforming */ +/* Delaunay property. Once inserted, segments are locked into place; */ +/* vertices inserted later (to force other segments in) may render these */ +/* fixed segments non-Delaunay. The conforming Delaunay property will be */ +/* restored by enforcequality() by splitting encroached subsegments. */ +/* */ +/*****************************************************************************/ + +#ifndef REDUCED +#ifndef CDT_ONLY + +#ifdef ANSI_DECLARATORS +void conformingedge(struct mesh *m, struct behavior *b, + vertex endpoint1, vertex endpoint2, int newmark) +#else /* not ANSI_DECLARATORS */ +void conformingedge(m, b, endpoint1, endpoint2, newmark) +struct mesh *m; +struct behavior *b; +vertex endpoint1; +vertex endpoint2; +int newmark; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri searchtri1, searchtri2; + struct osub brokensubseg; + vertex newvertex; + vertex midvertex1, midvertex2; + enum insertvertexresult success; + int i; + subseg sptr; /* Temporary variable used by tspivot(). */ + + if (b->verbose > 2) { + fprintf(stderr, "Forcing segment into triangulation by recursive splitting:\n"); + fprintf(stderr, " (%.12g, %.12g) (%.12g, %.12g)\n", endpoint1[0], endpoint1[1], + endpoint2[0], endpoint2[1]); + } + /* Create a new vertex to insert in the middle of the segment. */ + newvertex = (vertex) poolalloc(&m->vertices); + /* Interpolate coordinates and attributes. */ + for (i = 0; i < 2 + m->nextras; i++) { + newvertex[i] = 0.5 * (endpoint1[i] + endpoint2[i]); + } + setvertexmark(newvertex, newmark); + setvertextype(newvertex, SEGMENTVERTEX); + /* No known triangle to search from. */ + searchtri1.tri = m->dummytri; + /* Attempt to insert the new vertex. */ + success = insertvertex(m, b, newvertex, &searchtri1, (struct osub *) NULL, + 0, 0, 0.0); + if (success == DUPLICATEVERTEX) { + if (b->verbose > 2) { + fprintf(stderr, " Segment intersects existing vertex (%.12g, %.12g).\n", + newvertex[0], newvertex[1]); + } + /* Use the vertex that's already there. */ + vertexdealloc(m, newvertex); + org(searchtri1, newvertex); + } else { + if (success == VIOLATINGVERTEX) { + if (b->verbose > 2) { + fprintf(stderr, " Two segments intersect at (%.12g, %.12g).\n", + newvertex[0], newvertex[1]); + } + /* By fluke, we've landed right on another segment. Split it. */ + tspivot(searchtri1, brokensubseg); + success = insertvertex(m, b, newvertex, &searchtri1, &brokensubseg, + 0, 0, 0.0); + if (success != SUCCESSFULVERTEX) { + fprintf(stderr, "Internal error in conformingedge():\n"); + fprintf(stderr, " Failure to split a segment.\n"); + internalerror(); + } + } + /* The vertex has been inserted successfully. */ + if (m->steinerleft > 0) { + m->steinerleft--; + } + } + otricopy(searchtri1, searchtri2); + /* `searchtri1' and `searchtri2' are fastened at their origins to */ + /* `newvertex', and will be directed toward `endpoint1' and `endpoint2' */ + /* respectively. First, we must get `searchtri2' out of the way so it */ + /* won't be invalidated during the insertion of the first half of the */ + /* segment. */ + finddirection(m, b, &searchtri2, endpoint2); + if (!scoutsegment(m, b, &searchtri1, endpoint1, newmark)) { + /* The origin of searchtri1 may have changed if a collision with an */ + /* intervening vertex on the segment occurred. */ + org(searchtri1, midvertex1); + conformingedge(m, b, midvertex1, endpoint1, newmark); + } + if (!scoutsegment(m, b, &searchtri2, endpoint2, newmark)) { + /* The origin of searchtri2 may have changed if a collision with an */ + /* intervening vertex on the segment occurred. */ + org(searchtri2, midvertex2); + conformingedge(m, b, midvertex2, endpoint2, newmark); + } +} + +#endif /* not CDT_ONLY */ +#endif /* not REDUCED */ + +/*****************************************************************************/ +/* */ +/* delaunayfixup() Enforce the Delaunay condition at an edge, fanning out */ +/* recursively from an existing vertex. Pay special */ +/* attention to stacking inverted triangles. */ +/* */ +/* This is a support routine for inserting segments into a constrained */ +/* Delaunay triangulation. */ +/* */ +/* The origin of fixuptri is treated as if it has just been inserted, and */ +/* the local Delaunay condition needs to be enforced. It is only enforced */ +/* in one sector, however, that being the angular range defined by */ +/* fixuptri. */ +/* */ +/* This routine also needs to make decisions regarding the "stacking" of */ +/* triangles. (Read the description of constrainededge() below before */ +/* reading on here, so you understand the algorithm.) If the position of */ +/* the new vertex (the origin of fixuptri) indicates that the vertex before */ +/* it on the polygon is a reflex vertex, then "stack" the triangle by */ +/* doing nothing. (fixuptri is an inverted triangle, which is how stacked */ +/* triangles are identified.) */ +/* */ +/* Otherwise, check whether the vertex before that was a reflex vertex. */ +/* If so, perform an edge flip, thereby eliminating an inverted triangle */ +/* (popping it off the stack). The edge flip may result in the creation */ +/* of a new inverted triangle, depending on whether or not the new vertex */ +/* is visible to the vertex three edges behind on the polygon. */ +/* */ +/* If neither of the two vertices behind the new vertex are reflex */ +/* vertices, fixuptri and fartri, the triangle opposite it, are not */ +/* inverted; hence, ensure that the edge between them is locally Delaunay. */ +/* */ +/* `leftside' indicates whether or not fixuptri is to the left of the */ +/* segment being inserted. (Imagine that the segment is pointing up from */ +/* endpoint1 to endpoint2.) */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void delaunayfixup(struct mesh *m, struct behavior *b, + struct otri *fixuptri, int leftside) +#else /* not ANSI_DECLARATORS */ +void delaunayfixup(m, b, fixuptri, leftside) +struct mesh *m; +struct behavior *b; +struct otri *fixuptri; +int leftside; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri neartri; + struct otri fartri; + struct osub faredge; + vertex nearvertex, leftvertex, rightvertex, farvertex; + triangle ptr; /* Temporary variable used by sym(). */ + subseg sptr; /* Temporary variable used by tspivot(). */ + + lnext(*fixuptri, neartri); + sym(neartri, fartri); + /* Check if the edge opposite the origin of fixuptri can be flipped. */ + if (fartri.tri == m->dummytri) { + return; + } + tspivot(neartri, faredge); + if (faredge.ss != m->dummysub) { + return; + } + /* Find all the relevant vertices. */ + apex(neartri, nearvertex); + org(neartri, leftvertex); + dest(neartri, rightvertex); + apex(fartri, farvertex); + /* Check whether the previous polygon vertex is a reflex vertex. */ + if (leftside) { + if (counterclockwise(m, b, nearvertex, leftvertex, farvertex) <= 0.0) { + /* leftvertex is a reflex vertex too. Nothing can */ + /* be done until a convex section is found. */ + return; + } + } else { + if (counterclockwise(m, b, farvertex, rightvertex, nearvertex) <= 0.0) { + /* rightvertex is a reflex vertex too. Nothing can */ + /* be done until a convex section is found. */ + return; + } + } + if (counterclockwise(m, b, rightvertex, leftvertex, farvertex) > 0.0) { + /* fartri is not an inverted triangle, and farvertex is not a reflex */ + /* vertex. As there are no reflex vertices, fixuptri isn't an */ + /* inverted triangle, either. Hence, test the edge between the */ + /* triangles to ensure it is locally Delaunay. */ + if (incircle(m, b, leftvertex, farvertex, rightvertex, nearvertex) <= + 0.0) { + return; + } + /* Not locally Delaunay; go on to an edge flip. */ + } /* else fartri is inverted; remove it from the stack by flipping. */ + flip(m, b, &neartri); + lprevself(*fixuptri); /* Restore the origin of fixuptri after the flip. */ + /* Recursively process the two triangles that result from the flip. */ + delaunayfixup(m, b, fixuptri, leftside); + delaunayfixup(m, b, &fartri, leftside); +} + +/*****************************************************************************/ +/* */ +/* constrainededge() Force a segment into a constrained Delaunay */ +/* triangulation by deleting the triangles it */ +/* intersects, and triangulating the polygons that */ +/* form on each side of it. */ +/* */ +/* Generates a single subsegment connecting `endpoint1' to `endpoint2'. */ +/* The triangle `starttri' has `endpoint1' as its origin. `newmark' is the */ +/* boundary marker of the segment. */ +/* */ +/* To insert a segment, every triangle whose interior intersects the */ +/* segment is deleted. The union of these deleted triangles is a polygon */ +/* (which is not necessarily monotone, but is close enough), which is */ +/* divided into two polygons by the new segment. This routine's task is */ +/* to generate the Delaunay triangulation of these two polygons. */ +/* */ +/* You might think of this routine's behavior as a two-step process. The */ +/* first step is to walk from endpoint1 to endpoint2, flipping each edge */ +/* encountered. This step creates a fan of edges connected to endpoint1, */ +/* including the desired edge to endpoint2. The second step enforces the */ +/* Delaunay condition on each side of the segment in an incremental manner: */ +/* proceeding along the polygon from endpoint1 to endpoint2 (this is done */ +/* independently on each side of the segment), each vertex is "enforced" */ +/* as if it had just been inserted, but affecting only the previous */ +/* vertices. The result is the same as if the vertices had been inserted */ +/* in the order they appear on the polygon, so the result is Delaunay. */ +/* */ +/* In truth, constrainededge() interleaves these two steps. The procedure */ +/* walks from endpoint1 to endpoint2, and each time an edge is encountered */ +/* and flipped, the newly exposed vertex (at the far end of the flipped */ +/* edge) is "enforced" upon the previously flipped edges, usually affecting */ +/* only one side of the polygon (depending upon which side of the segment */ +/* the vertex falls on). */ +/* */ +/* The algorithm is complicated by the need to handle polygons that are not */ +/* convex. Although the polygon is not necessarily monotone, it can be */ +/* triangulated in a manner similar to the stack-based algorithms for */ +/* monotone polygons. For each reflex vertex (local concavity) of the */ +/* polygon, there will be an inverted triangle formed by one of the edge */ +/* flips. (An inverted triangle is one with negative area - that is, its */ +/* vertices are arranged in clockwise order - and is best thought of as a */ +/* wrinkle in the fabric of the mesh.) Each inverted triangle can be */ +/* thought of as a reflex vertex pushed on the stack, waiting to be fixed */ +/* later. */ +/* */ +/* A reflex vertex is popped from the stack when a vertex is inserted that */ +/* is visible to the reflex vertex. (However, if the vertex behind the */ +/* reflex vertex is not visible to the reflex vertex, a new inverted */ +/* triangle will take its place on the stack.) These details are handled */ +/* by the delaunayfixup() routine above. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void constrainededge(struct mesh *m, struct behavior *b, + struct otri *starttri, vertex endpoint2, int newmark) +#else /* not ANSI_DECLARATORS */ +void constrainededge(m, b, starttri, endpoint2, newmark) +struct mesh *m; +struct behavior *b; +struct otri *starttri; +vertex endpoint2; +int newmark; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri fixuptri, fixuptri2; + struct osub crosssubseg; + vertex endpoint1; + vertex farvertex; + REAL area; + int collision; + int done; + triangle ptr; /* Temporary variable used by sym() and oprev(). */ + subseg sptr; /* Temporary variable used by tspivot(). */ + + org(*starttri, endpoint1); + lnext(*starttri, fixuptri); + flip(m, b, &fixuptri); + /* `collision' indicates whether we have found a vertex directly */ + /* between endpoint1 and endpoint2. */ + collision = 0; + done = 0; + do { + org(fixuptri, farvertex); + /* `farvertex' is the extreme point of the polygon we are "digging" */ + /* to get from endpoint1 to endpoint2. */ + if ((farvertex[0] == endpoint2[0]) && (farvertex[1] == endpoint2[1])) { + oprev(fixuptri, fixuptri2); + /* Enforce the Delaunay condition around endpoint2. */ + delaunayfixup(m, b, &fixuptri, 0); + delaunayfixup(m, b, &fixuptri2, 1); + done = 1; + } else { + /* Check whether farvertex is to the left or right of the segment */ + /* being inserted, to decide which edge of fixuptri to dig */ + /* through next. */ + area = counterclockwise(m, b, endpoint1, endpoint2, farvertex); + if (area == 0.0) { + /* We've collided with a vertex between endpoint1 and endpoint2. */ + collision = 1; + oprev(fixuptri, fixuptri2); + /* Enforce the Delaunay condition around farvertex. */ + delaunayfixup(m, b, &fixuptri, 0); + delaunayfixup(m, b, &fixuptri2, 1); + done = 1; + } else { + if (area > 0.0) { /* farvertex is to the left of the segment. */ + oprev(fixuptri, fixuptri2); + /* Enforce the Delaunay condition around farvertex, on the */ + /* left side of the segment only. */ + delaunayfixup(m, b, &fixuptri2, 1); + /* Flip the edge that crosses the segment. After the edge is */ + /* flipped, one of its endpoints is the fan vertex, and the */ + /* destination of fixuptri is the fan vertex. */ + lprevself(fixuptri); + } else { /* farvertex is to the right of the segment. */ + delaunayfixup(m, b, &fixuptri, 0); + /* Flip the edge that crosses the segment. After the edge is */ + /* flipped, one of its endpoints is the fan vertex, and the */ + /* destination of fixuptri is the fan vertex. */ + oprevself(fixuptri); + } + /* Check for two intersecting segments. */ + tspivot(fixuptri, crosssubseg); + if (crosssubseg.ss == m->dummysub) { + flip(m, b, &fixuptri); /* May create inverted triangle at left. */ + } else { + /* We've collided with a segment between endpoint1 and endpoint2. */ + collision = 1; + /* Insert a vertex at the intersection. */ + segmentintersection(m, b, &fixuptri, &crosssubseg, endpoint2); + done = 1; + } + } + } + } while (!done); + /* Insert a subsegment to make the segment permanent. */ + insertsubseg(m, b, &fixuptri, newmark); + /* If there was a collision with an interceding vertex, install another */ + /* segment connecting that vertex with endpoint2. */ + if (collision) { + /* Insert the remainder of the segment. */ + if (!scoutsegment(m, b, &fixuptri, endpoint2, newmark)) { + constrainededge(m, b, &fixuptri, endpoint2, newmark); + } + } +} + +/*****************************************************************************/ +/* */ +/* insertsegment() Insert a PSLG segment into a triangulation. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void insertsegment(struct mesh *m, struct behavior *b, + vertex endpoint1, vertex endpoint2, int newmark) +#else /* not ANSI_DECLARATORS */ +void insertsegment(m, b, endpoint1, endpoint2, newmark) +struct mesh *m; +struct behavior *b; +vertex endpoint1; +vertex endpoint2; +int newmark; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri searchtri1, searchtri2; + triangle encodedtri; + vertex checkvertex; + triangle ptr; /* Temporary variable used by sym(). */ + + if (b->verbose > 1) { + fprintf(stderr, " Connecting (%.12g, %.12g) to (%.12g, %.12g).\n", + endpoint1[0], endpoint1[1], endpoint2[0], endpoint2[1]); + } + + /* Find a triangle whose origin is the segment's first endpoint. */ + checkvertex = (vertex) NULL; + encodedtri = vertex2tri(endpoint1); + if (encodedtri != (triangle) NULL) { + decode(encodedtri, searchtri1); + org(searchtri1, checkvertex); + } + if (checkvertex != endpoint1) { + /* Find a boundary triangle to search from. */ + searchtri1.tri = m->dummytri; + searchtri1.orient = 0; + symself(searchtri1); + /* Search for the segment's first endpoint by point location. */ + if (locate(m, b, endpoint1, &searchtri1) != ONVERTEX) { + fprintf(stderr, + "Internal error in insertsegment(): Unable to locate PSLG vertex\n"); + fprintf(stderr, " (%.12g, %.12g) in triangulation.\n", + endpoint1[0], endpoint1[1]); + internalerror(); + } + } + /* Remember this triangle to improve subsequent point location. */ + otricopy(searchtri1, m->recenttri); + /* Scout the beginnings of a path from the first endpoint */ + /* toward the second. */ + if (scoutsegment(m, b, &searchtri1, endpoint2, newmark)) { + /* The segment was easily inserted. */ + return; + } + /* The first endpoint may have changed if a collision with an intervening */ + /* vertex on the segment occurred. */ + org(searchtri1, endpoint1); + + /* Find a triangle whose origin is the segment's second endpoint. */ + checkvertex = (vertex) NULL; + encodedtri = vertex2tri(endpoint2); + if (encodedtri != (triangle) NULL) { + decode(encodedtri, searchtri2); + org(searchtri2, checkvertex); + } + if (checkvertex != endpoint2) { + /* Find a boundary triangle to search from. */ + searchtri2.tri = m->dummytri; + searchtri2.orient = 0; + symself(searchtri2); + /* Search for the segment's second endpoint by point location. */ + if (locate(m, b, endpoint2, &searchtri2) != ONVERTEX) { + fprintf(stderr, + "Internal error in insertsegment(): Unable to locate PSLG vertex\n"); + fprintf(stderr, " (%.12g, %.12g) in triangulation.\n", + endpoint2[0], endpoint2[1]); + internalerror(); + } + } + /* Remember this triangle to improve subsequent point location. */ + otricopy(searchtri2, m->recenttri); + /* Scout the beginnings of a path from the second endpoint */ + /* toward the first. */ + if (scoutsegment(m, b, &searchtri2, endpoint1, newmark)) { + /* The segment was easily inserted. */ + return; + } + /* The second endpoint may have changed if a collision with an intervening */ + /* vertex on the segment occurred. */ + org(searchtri2, endpoint2); + +#ifndef REDUCED +#ifndef CDT_ONLY + if (b->splitseg) { + /* Insert vertices to force the segment into the triangulation. */ + conformingedge(m, b, endpoint1, endpoint2, newmark); + } else { +#endif /* not CDT_ONLY */ +#endif /* not REDUCED */ + /* Insert the segment directly into the triangulation. */ + constrainededge(m, b, &searchtri1, endpoint2, newmark); +#ifndef REDUCED +#ifndef CDT_ONLY + } +#endif /* not CDT_ONLY */ +#endif /* not REDUCED */ +} + +/*****************************************************************************/ +/* */ +/* markhull() Cover the convex hull of a triangulation with subsegments. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void markhull(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +void markhull(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri hulltri; + struct otri nexttri; + struct otri starttri; + triangle ptr; /* Temporary variable used by sym() and oprev(). */ + + /* Find a triangle handle on the hull. */ + hulltri.tri = m->dummytri; + hulltri.orient = 0; + symself(hulltri); + /* Remember where we started so we know when to stop. */ + otricopy(hulltri, starttri); + /* Go once counterclockwise around the convex hull. */ + do { + /* Create a subsegment if there isn't already one here. */ + insertsubseg(m, b, &hulltri, 1); + /* To find the next hull edge, go clockwise around the next vertex. */ + lnextself(hulltri); + oprev(hulltri, nexttri); + while (nexttri.tri != m->dummytri) { + otricopy(nexttri, hulltri); + oprev(hulltri, nexttri); + } + } while (!otriequal(hulltri, starttri)); +} + +/*****************************************************************************/ +/* */ +/* formskeleton() Create the segments of a triangulation, including PSLG */ +/* segments and edges on the convex hull. */ +/* */ +/* The PSLG segments are read from a .poly file. The return value is the */ +/* number of segments in the file. */ +/* */ +/*****************************************************************************/ + +#ifdef TRILIBRARY + +#ifdef ANSI_DECLARATORS +void formskeleton(struct mesh *m, struct behavior *b, int *segmentlist, + int *segmentmarkerlist, int numberofsegments) +#else /* not ANSI_DECLARATORS */ +void formskeleton(m, b, segmentlist, segmentmarkerlist, numberofsegments) +struct mesh *m; +struct behavior *b; +int *segmentlist; +int *segmentmarkerlist; +int numberofsegments; +#endif /* not ANSI_DECLARATORS */ + +#else /* not TRILIBRARY */ + +#ifdef ANSI_DECLARATORS +void formskeleton(struct mesh *m, struct behavior *b, + FILE *polyfile, char *polyfilename) +#else /* not ANSI_DECLARATORS */ +void formskeleton(m, b, polyfile, polyfilename) +struct mesh *m; +struct behavior *b; +FILE *polyfile; +char *polyfilename; +#endif /* not ANSI_DECLARATORS */ + +#endif /* not TRILIBRARY */ + +{ +#ifdef TRILIBRARY + char polyfilename[6]; + int index; +#else /* not TRILIBRARY */ + char inputline[INPUTLINESIZE]; + char *stringptr; +#endif /* not TRILIBRARY */ + vertex endpoint1, endpoint2; + int segmentmarkers; + int end1, end2; + int boundmarker; + int i; + + if (b->poly) { + if (!b->quiet) { + fprintf(stderr, "Recovering segments in Delaunay triangulation.\n"); + } +#ifdef TRILIBRARY + strcpy(polyfilename, "input"); + m->insegments = numberofsegments; + segmentmarkers = segmentmarkerlist != (int *) NULL; + index = 0; +#else /* not TRILIBRARY */ + /* Read the segments from a .poly file. */ + /* Read number of segments and number of boundary markers. */ + stringptr = readline(inputline, polyfile, polyfilename); + m->insegments = (int) strtol(stringptr, &stringptr, 0); + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + segmentmarkers = 0; + } else { + segmentmarkers = (int) strtol(stringptr, &stringptr, 0); + } +#endif /* not TRILIBRARY */ + /* If the input vertices are collinear, there is no triangulation, */ + /* so don't try to insert segments. */ + if (m->triangles.items == 0) { + return; + } + + /* If segments are to be inserted, compute a mapping */ + /* from vertices to triangles. */ + if (m->insegments > 0) { + makevertexmap(m, b); + if (b->verbose) { + fprintf(stderr, " Recovering PSLG segments.\n"); + } + } + + boundmarker = 0; + /* Read and insert the segments. */ + for (i = 0; i < m->insegments; i++) { +#ifdef TRILIBRARY + end1 = segmentlist[index++]; + end2 = segmentlist[index++]; + if (segmentmarkers) { + boundmarker = segmentmarkerlist[i]; + } +#else /* not TRILIBRARY */ + stringptr = readline(inputline, polyfile, b->inpolyfilename); + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + fprintf(stderr, "Error: Segment %d has no endpoints in %s.\n", + b->firstnumber + i, polyfilename); + exit(1); + } else { + end1 = (int) strtol(stringptr, &stringptr, 0); + } + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + fprintf(stderr, "Error: Segment %d is missing its second endpoint in %s.\n", + b->firstnumber + i, polyfilename); + exit(1); + } else { + end2 = (int) strtol(stringptr, &stringptr, 0); + } + if (segmentmarkers) { + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + boundmarker = 0; + } else { + boundmarker = (int) strtol(stringptr, &stringptr, 0); + } + } +#endif /* not TRILIBRARY */ + if ((end1 < b->firstnumber) || + (end1 >= b->firstnumber + m->invertices)) { + if (!b->quiet) { + fprintf(stderr, "Warning: Invalid first endpoint of segment %d in %s.\n", + b->firstnumber + i, polyfilename); + } + } else if ((end2 < b->firstnumber) || + (end2 >= b->firstnumber + m->invertices)) { + if (!b->quiet) { + fprintf(stderr, "Warning: Invalid second endpoint of segment %d in %s.\n", + b->firstnumber + i, polyfilename); + } + } else { + endpoint1 = getvertex(m, b, end1); + endpoint2 = getvertex(m, b, end2); + if ((endpoint1[0] == endpoint2[0]) && (endpoint1[1] == endpoint2[1])) { + if (!b->quiet) { + fprintf(stderr, "Warning: Endpoints of segment %d are coincident in %s.\n", + b->firstnumber + i, polyfilename); + } + } else { + insertsegment(m, b, endpoint1, endpoint2, boundmarker); + } + } + } + } else { + m->insegments = 0; + } + if (b->convex || !b->poly) { + /* Enclose the convex hull with subsegments. */ + if (b->verbose) { + fprintf(stderr, " Enclosing convex hull with segments.\n"); + } + markhull(m, b); + } +} + +/** **/ +/** **/ +/********* Segment insertion ends here *********/ + +/********* Carving out holes and concavities begins here *********/ +/** **/ +/** **/ + +/*****************************************************************************/ +/* */ +/* infecthull() Virally infect all of the triangles of the convex hull */ +/* that are not protected by subsegments. Where there are */ +/* subsegments, set boundary markers as appropriate. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void infecthull(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +void infecthull(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri hulltri; + struct otri nexttri; + struct otri starttri; + struct osub hullsubseg; + triangle **deadtriangle; + vertex horg, hdest; + triangle ptr; /* Temporary variable used by sym(). */ + subseg sptr; /* Temporary variable used by tspivot(). */ + + if (b->verbose) { + fprintf(stderr, " Marking concavities (external triangles) for elimination.\n"); + } + /* Find a triangle handle on the hull. */ + hulltri.tri = m->dummytri; + hulltri.orient = 0; + symself(hulltri); + /* Remember where we started so we know when to stop. */ + otricopy(hulltri, starttri); + /* Go once counterclockwise around the convex hull. */ + do { + /* Ignore triangles that are already infected. */ + if (!infected(hulltri)) { + /* Is the triangle protected by a subsegment? */ + tspivot(hulltri, hullsubseg); + if (hullsubseg.ss == m->dummysub) { + /* The triangle is not protected; infect it. */ + if (!infected(hulltri)) { + infect(hulltri); + deadtriangle = (triangle **) poolalloc(&m->viri); + *deadtriangle = hulltri.tri; + } + } else { + /* The triangle is protected; set boundary markers if appropriate. */ + if (mark(hullsubseg) == 0) { + setmark(hullsubseg, 1); + org(hulltri, horg); + dest(hulltri, hdest); + if (vertexmark(horg) == 0) { + setvertexmark(horg, 1); + } + if (vertexmark(hdest) == 0) { + setvertexmark(hdest, 1); + } + } + } + } + /* To find the next hull edge, go clockwise around the next vertex. */ + lnextself(hulltri); + oprev(hulltri, nexttri); + while (nexttri.tri != m->dummytri) { + otricopy(nexttri, hulltri); + oprev(hulltri, nexttri); + } + } while (!otriequal(hulltri, starttri)); +} + +/*****************************************************************************/ +/* */ +/* plague() Spread the virus from all infected triangles to any neighbors */ +/* not protected by subsegments. Delete all infected triangles. */ +/* */ +/* This is the procedure that actually creates holes and concavities. */ +/* */ +/* This procedure operates in two phases. The first phase identifies all */ +/* the triangles that will die, and marks them as infected. They are */ +/* marked to ensure that each triangle is added to the virus pool only */ +/* once, so the procedure will terminate. */ +/* */ +/* The second phase actually eliminates the infected triangles. It also */ +/* eliminates orphaned vertices. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void plague(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +void plague(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri testtri; + struct otri neighbor; + triangle **virusloop; + triangle **deadtriangle; + struct osub neighborsubseg; + vertex testvertex; + vertex norg, ndest; + vertex deadorg, deaddest, deadapex; + int killorg; + triangle ptr; /* Temporary variable used by sym() and onext(). */ + subseg sptr; /* Temporary variable used by tspivot(). */ + + if (b->verbose) { + fprintf(stderr, " Marking neighbors of marked triangles.\n"); + } + /* Loop through all the infected triangles, spreading the virus to */ + /* their neighbors, then to their neighbors' neighbors. */ + traversalinit(&m->viri); + virusloop = (triangle **) traverse(&m->viri); + while (virusloop != (triangle **) NULL) { + testtri.tri = *virusloop; + /* A triangle is marked as infected by messing with one of its pointers */ + /* to subsegments, setting it to an illegal value. Hence, we have to */ + /* temporarily uninfect this triangle so that we can examine its */ + /* adjacent subsegments. */ + uninfect(testtri); + if (b->verbose > 2) { + /* Assign the triangle an orientation for convenience in */ + /* checking its vertices. */ + testtri.orient = 0; + org(testtri, deadorg); + dest(testtri, deaddest); + apex(testtri, deadapex); + fprintf(stderr, " Checking (%.12g, %.12g) (%.12g, %.12g) (%.12g, %.12g)\n", + deadorg[0], deadorg[1], deaddest[0], deaddest[1], + deadapex[0], deadapex[1]); + } + /* Check each of the triangle's three neighbors. */ + for (testtri.orient = 0; testtri.orient < 3; testtri.orient++) { + /* Find the neighbor. */ + sym(testtri, neighbor); + /* Check for a subsegment between the triangle and its neighbor. */ + tspivot(testtri, neighborsubseg); + /* Check if the neighbor is nonexistent or already infected. */ + if ((neighbor.tri == m->dummytri) || infected(neighbor)) { + if (neighborsubseg.ss != m->dummysub) { + /* There is a subsegment separating the triangle from its */ + /* neighbor, but both triangles are dying, so the subsegment */ + /* dies too. */ + subsegdealloc(m, neighborsubseg.ss); + if (neighbor.tri != m->dummytri) { + /* Make sure the subsegment doesn't get deallocated again */ + /* later when the infected neighbor is visited. */ + uninfect(neighbor); + tsdissolve(neighbor); + infect(neighbor); + } + } + } else { /* The neighbor exists and is not infected. */ + if (neighborsubseg.ss == m->dummysub) { + /* There is no subsegment protecting the neighbor, so */ + /* the neighbor becomes infected. */ + if (b->verbose > 2) { + org(neighbor, deadorg); + dest(neighbor, deaddest); + apex(neighbor, deadapex); + fprintf(stderr, + " Marking (%.12g, %.12g) (%.12g, %.12g) (%.12g, %.12g)\n", + deadorg[0], deadorg[1], deaddest[0], deaddest[1], + deadapex[0], deadapex[1]); + } + infect(neighbor); + /* Ensure that the neighbor's neighbors will be infected. */ + deadtriangle = (triangle **) poolalloc(&m->viri); + *deadtriangle = neighbor.tri; + } else { /* The neighbor is protected by a subsegment. */ + /* Remove this triangle from the subsegment. */ + stdissolve(neighborsubseg); + /* The subsegment becomes a boundary. Set markers accordingly. */ + if (mark(neighborsubseg) == 0) { + setmark(neighborsubseg, 1); + } + org(neighbor, norg); + dest(neighbor, ndest); + if (vertexmark(norg) == 0) { + setvertexmark(norg, 1); + } + if (vertexmark(ndest) == 0) { + setvertexmark(ndest, 1); + } + } + } + } + /* Remark the triangle as infected, so it doesn't get added to the */ + /* virus pool again. */ + infect(testtri); + virusloop = (triangle **) traverse(&m->viri); + } + + if (b->verbose) { + fprintf(stderr, " Deleting marked triangles.\n"); + } + + traversalinit(&m->viri); + virusloop = (triangle **) traverse(&m->viri); + while (virusloop != (triangle **) NULL) { + testtri.tri = *virusloop; + + /* Check each of the three corners of the triangle for elimination. */ + /* This is done by walking around each vertex, checking if it is */ + /* still connected to at least one live triangle. */ + for (testtri.orient = 0; testtri.orient < 3; testtri.orient++) { + org(testtri, testvertex); + /* Check if the vertex has already been tested. */ + if (testvertex != (vertex) NULL) { + killorg = 1; + /* Mark the corner of the triangle as having been tested. */ + setorg(testtri, NULL); + /* Walk counterclockwise about the vertex. */ + onext(testtri, neighbor); + /* Stop upon reaching a boundary or the starting triangle. */ + while ((neighbor.tri != m->dummytri) && + (!otriequal(neighbor, testtri))) { + if (infected(neighbor)) { + /* Mark the corner of this triangle as having been tested. */ + setorg(neighbor, NULL); + } else { + /* A live triangle. The vertex survives. */ + killorg = 0; + } + /* Walk counterclockwise about the vertex. */ + onextself(neighbor); + } + /* If we reached a boundary, we must walk clockwise as well. */ + if (neighbor.tri == m->dummytri) { + /* Walk clockwise about the vertex. */ + oprev(testtri, neighbor); + /* Stop upon reaching a boundary. */ + while (neighbor.tri != m->dummytri) { + if (infected(neighbor)) { + /* Mark the corner of this triangle as having been tested. */ + setorg(neighbor, NULL); + } else { + /* A live triangle. The vertex survives. */ + killorg = 0; + } + /* Walk clockwise about the vertex. */ + oprevself(neighbor); + } + } + if (killorg) { + if (b->verbose > 1) { + fprintf(stderr, " Deleting vertex (%.12g, %.12g)\n", + testvertex[0], testvertex[1]); + } + setvertextype(testvertex, UNDEADVERTEX); + m->undeads++; + } + } + } + + /* Record changes in the number of boundary edges, and disconnect */ + /* dead triangles from their neighbors. */ + for (testtri.orient = 0; testtri.orient < 3; testtri.orient++) { + sym(testtri, neighbor); + if (neighbor.tri == m->dummytri) { + /* There is no neighboring triangle on this edge, so this edge */ + /* is a boundary edge. This triangle is being deleted, so this */ + /* boundary edge is deleted. */ + m->hullsize--; + } else { + /* Disconnect the triangle from its neighbor. */ + dissolve(neighbor); + /* There is a neighboring triangle on this edge, so this edge */ + /* becomes a boundary edge when this triangle is deleted. */ + m->hullsize++; + } + } + /* Return the dead triangle to the pool of triangles. */ + triangledealloc(m, testtri.tri); + virusloop = (triangle **) traverse(&m->viri); + } + /* Empty the virus pool. */ + poolrestart(&m->viri); +} + +/*****************************************************************************/ +/* */ +/* regionplague() Spread regional attributes and/or area constraints */ +/* (from a .poly file) throughout the mesh. */ +/* */ +/* This procedure operates in two phases. The first phase spreads an */ +/* attribute and/or an area constraint through a (segment-bounded) region. */ +/* The triangles are marked to ensure that each triangle is added to the */ +/* virus pool only once, so the procedure will terminate. */ +/* */ +/* The second phase uninfects all infected triangles, returning them to */ +/* normal. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void regionplague(struct mesh *m, struct behavior *b, + REAL attribute, REAL area) +#else /* not ANSI_DECLARATORS */ +void regionplague(m, b, attribute, area) +struct mesh *m; +struct behavior *b; +REAL attribute; +REAL area; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri testtri; + struct otri neighbor; + triangle **virusloop; + triangle **regiontri; + struct osub neighborsubseg; + vertex regionorg, regiondest, regionapex; + triangle ptr; /* Temporary variable used by sym() and onext(). */ + subseg sptr; /* Temporary variable used by tspivot(). */ + + if (b->verbose > 1) { + fprintf(stderr, " Marking neighbors of marked triangles.\n"); + } + /* Loop through all the infected triangles, spreading the attribute */ + /* and/or area constraint to their neighbors, then to their neighbors' */ + /* neighbors. */ + traversalinit(&m->viri); + virusloop = (triangle **) traverse(&m->viri); + while (virusloop != (triangle **) NULL) { + testtri.tri = *virusloop; + /* A triangle is marked as infected by messing with one of its pointers */ + /* to subsegments, setting it to an illegal value. Hence, we have to */ + /* temporarily uninfect this triangle so that we can examine its */ + /* adjacent subsegments. */ + uninfect(testtri); + if (b->regionattrib) { + /* Set an attribute. */ + setelemattribute(testtri, m->eextras, attribute); + } + if (b->vararea) { + /* Set an area constraint. */ + setareabound(testtri, area); + } + if (b->verbose > 2) { + /* Assign the triangle an orientation for convenience in */ + /* checking its vertices. */ + testtri.orient = 0; + org(testtri, regionorg); + dest(testtri, regiondest); + apex(testtri, regionapex); + fprintf(stderr, " Checking (%.12g, %.12g) (%.12g, %.12g) (%.12g, %.12g)\n", + regionorg[0], regionorg[1], regiondest[0], regiondest[1], + regionapex[0], regionapex[1]); + } + /* Check each of the triangle's three neighbors. */ + for (testtri.orient = 0; testtri.orient < 3; testtri.orient++) { + /* Find the neighbor. */ + sym(testtri, neighbor); + /* Check for a subsegment between the triangle and its neighbor. */ + tspivot(testtri, neighborsubseg); + /* Make sure the neighbor exists, is not already infected, and */ + /* isn't protected by a subsegment. */ + if ((neighbor.tri != m->dummytri) && !infected(neighbor) + && (neighborsubseg.ss == m->dummysub)) { + if (b->verbose > 2) { + org(neighbor, regionorg); + dest(neighbor, regiondest); + apex(neighbor, regionapex); + fprintf(stderr, " Marking (%.12g, %.12g) (%.12g, %.12g) (%.12g, %.12g)\n", + regionorg[0], regionorg[1], regiondest[0], regiondest[1], + regionapex[0], regionapex[1]); + } + /* Infect the neighbor. */ + infect(neighbor); + /* Ensure that the neighbor's neighbors will be infected. */ + regiontri = (triangle **) poolalloc(&m->viri); + *regiontri = neighbor.tri; + } + } + /* Remark the triangle as infected, so it doesn't get added to the */ + /* virus pool again. */ + infect(testtri); + virusloop = (triangle **) traverse(&m->viri); + } + + /* Uninfect all triangles. */ + if (b->verbose > 1) { + fprintf(stderr, " Unmarking marked triangles.\n"); + } + traversalinit(&m->viri); + virusloop = (triangle **) traverse(&m->viri); + while (virusloop != (triangle **) NULL) { + testtri.tri = *virusloop; + uninfect(testtri); + virusloop = (triangle **) traverse(&m->viri); + } + /* Empty the virus pool. */ + poolrestart(&m->viri); +} + +/*****************************************************************************/ +/* */ +/* carveholes() Find the holes and infect them. Find the area */ +/* constraints and infect them. Infect the convex hull. */ +/* Spread the infection and kill triangles. Spread the */ +/* area constraints. */ +/* */ +/* This routine mainly calls other routines to carry out all these */ +/* functions. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void carveholes(struct mesh *m, struct behavior *b, REAL *holelist, int holes, + REAL *regionlist, int regions) +#else /* not ANSI_DECLARATORS */ +void carveholes(m, b, holelist, holes, regionlist, regions) +struct mesh *m; +struct behavior *b; +REAL *holelist; +int holes; +REAL *regionlist; +int regions; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri searchtri; + struct otri triangleloop; + struct otri *regiontris; + triangle **holetri; + triangle **regiontri; + vertex searchorg, searchdest; + enum locateresult intersect; + int i; + triangle ptr; /* Temporary variable used by sym(). */ + + if (!(b->quiet || (b->noholes && b->convex))) { + fprintf(stderr, "Removing unwanted triangles.\n"); + if (b->verbose && (holes > 0)) { + fprintf(stderr, " Marking holes for elimination.\n"); + } + } + + if (regions > 0) { + /* Allocate storage for the triangles in which region points fall. */ + regiontris = (struct otri *) trimalloc(regions * sizeof(struct otri)); + } + + if (((holes > 0) && !b->noholes) || !b->convex || (regions > 0)) { + /* Initialize a pool of viri to be used for holes, concavities, */ + /* regional attributes, and/or regional area constraints. */ + poolinit(&m->viri, sizeof(triangle *), VIRUSPERBLOCK, POINTER, 0); + } + + if (!b->convex) { + /* Mark as infected any unprotected triangles on the boundary. */ + /* This is one way by which concavities are created. */ + infecthull(m, b); + } + + if ((holes > 0) && !b->noholes) { + /* Infect each triangle in which a hole lies. */ + for (i = 0; i < 2 * holes; i += 2) { + /* Ignore holes that aren't within the bounds of the mesh. */ + if ((holelist[i] >= m->xmin) && (holelist[i] <= m->xmax) + && (holelist[i + 1] >= m->ymin) && (holelist[i + 1] <= m->ymax)) { + /* Start searching from some triangle on the outer boundary. */ + searchtri.tri = m->dummytri; + searchtri.orient = 0; + symself(searchtri); + /* Ensure that the hole is to the left of this boundary edge; */ + /* otherwise, locate() will falsely report that the hole */ + /* falls within the starting triangle. */ + org(searchtri, searchorg); + dest(searchtri, searchdest); + if (counterclockwise(m, b, searchorg, searchdest, &holelist[i]) > + 0.0) { + /* Find a triangle that contains the hole. */ + intersect = locate(m, b, &holelist[i], &searchtri); + if ((intersect != OUTSIDE) && (!infected(searchtri))) { + /* Infect the triangle. This is done by marking the triangle */ + /* as infected and including the triangle in the virus pool. */ + infect(searchtri); + holetri = (triangle **) poolalloc(&m->viri); + *holetri = searchtri.tri; + } + } + } + } + } + + /* Now, we have to find all the regions BEFORE we carve the holes, because */ + /* locate() won't work when the triangulation is no longer convex. */ + /* (Incidentally, this is the reason why regional attributes and area */ + /* constraints can't be used when refining a preexisting mesh, which */ + /* might not be convex; they can only be used with a freshly */ + /* triangulated PSLG.) */ + if (regions > 0) { + /* Find the starting triangle for each region. */ + for (i = 0; i < regions; i++) { + regiontris[i].tri = m->dummytri; + /* Ignore region points that aren't within the bounds of the mesh. */ + if ((regionlist[4 * i] >= m->xmin) && (regionlist[4 * i] <= m->xmax) && + (regionlist[4 * i + 1] >= m->ymin) && + (regionlist[4 * i + 1] <= m->ymax)) { + /* Start searching from some triangle on the outer boundary. */ + searchtri.tri = m->dummytri; + searchtri.orient = 0; + symself(searchtri); + /* Ensure that the region point is to the left of this boundary */ + /* edge; otherwise, locate() will falsely report that the */ + /* region point falls within the starting triangle. */ + org(searchtri, searchorg); + dest(searchtri, searchdest); + if (counterclockwise(m, b, searchorg, searchdest, ®ionlist[4 * i]) > + 0.0) { + /* Find a triangle that contains the region point. */ + intersect = locate(m, b, ®ionlist[4 * i], &searchtri); + if ((intersect != OUTSIDE) && (!infected(searchtri))) { + /* Record the triangle for processing after the */ + /* holes have been carved. */ + otricopy(searchtri, regiontris[i]); + } + } + } + } + } + + if (m->viri.items > 0) { + /* Carve the holes and concavities. */ + plague(m, b); + } + /* The virus pool should be empty now. */ + + if (regions > 0) { + if (!b->quiet) { + if (b->regionattrib) { + if (b->vararea) { + fprintf(stderr, "Spreading regional attributes and area constraints.\n"); + } else { + fprintf(stderr, "Spreading regional attributes.\n"); + } + } else { + fprintf(stderr, "Spreading regional area constraints.\n"); + } + } + if (b->regionattrib && !b->refine) { + /* Assign every triangle a regional attribute of zero. */ + traversalinit(&m->triangles); + triangleloop.orient = 0; + triangleloop.tri = triangletraverse(m); + while (triangleloop.tri != (triangle *) NULL) { + setelemattribute(triangleloop, m->eextras, 0.0); + triangleloop.tri = triangletraverse(m); + } + } + for (i = 0; i < regions; i++) { + if (regiontris[i].tri != m->dummytri) { + /* Make sure the triangle under consideration still exists. */ + /* It may have been eaten by the virus. */ + if (!deadtri(regiontris[i].tri)) { + /* Put one triangle in the virus pool. */ + infect(regiontris[i]); + regiontri = (triangle **) poolalloc(&m->viri); + *regiontri = regiontris[i].tri; + /* Apply one region's attribute and/or area constraint. */ + regionplague(m, b, regionlist[4 * i + 2], regionlist[4 * i + 3]); + /* The virus pool should be empty now. */ + } + } + } + if (b->regionattrib && !b->refine) { + /* Note the fact that each triangle has an additional attribute. */ + m->eextras++; + } + } + + /* Free up memory. */ + if (((holes > 0) && !b->noholes) || !b->convex || (regions > 0)) { + pooldeinit(&m->viri); + } + if (regions > 0) { + trifree((VOID *) regiontris); + } +} + +/** **/ +/** **/ +/********* Carving out holes and concavities ends here *********/ + +/********* Mesh quality maintenance begins here *********/ +/** **/ +/** **/ + +/*****************************************************************************/ +/* */ +/* tallyencs() Traverse the entire list of subsegments, and check each */ +/* to see if it is encroached. If so, add it to the list. */ +/* */ +/*****************************************************************************/ + +#ifndef CDT_ONLY + +#ifdef ANSI_DECLARATORS +void tallyencs(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +void tallyencs(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + struct osub subsegloop; + int dummy; + + traversalinit(&m->subsegs); + subsegloop.ssorient = 0; + subsegloop.ss = subsegtraverse(m); + while (subsegloop.ss != (subseg *) NULL) { + /* If the segment is encroached, add it to the list. */ + dummy = checkseg4encroach(m, b, &subsegloop, 0.0); + subsegloop.ss = subsegtraverse(m); + } +} + +#endif /* not CDT_ONLY */ + +/*****************************************************************************/ +/* */ +/* precisionerror() Print an error message for precision problems. */ +/* */ +/*****************************************************************************/ + +#ifndef CDT_ONLY + +void precisionerror() +{ + fprintf(stderr, "Try increasing the area criterion and/or reducing the minimum\n"); + fprintf(stderr, " allowable angle so that tiny triangles are not created.\n"); +#ifdef SINGLE + fprintf(stderr, "Alternatively, try recompiling me with double precision\n"); + fprintf(stderr, " arithmetic (by removing \"#define SINGLE\" from the\n"); + fprintf(stderr, " source file or \"-DSINGLE\" from the makefile).\n"); +#endif /* SINGLE */ +} + +#endif /* not CDT_ONLY */ + +/*****************************************************************************/ +/* */ +/* splitencsegs() Split all the encroached subsegments. */ +/* */ +/* Each encroached subsegment is repaired by splitting it - inserting a */ +/* vertex at or near its midpoint. Newly inserted vertices may encroach */ +/* upon other subsegments; these are also repaired. */ +/* */ +/* `triflaws' is a flag that specifies whether one should take note of new */ +/* bad triangles that result from inserting vertices to repair encroached */ +/* subsegments. */ +/* */ +/*****************************************************************************/ + +#ifndef CDT_ONLY + +#ifdef ANSI_DECLARATORS +void splitencsegs(struct mesh *m, struct behavior *b, int triflaws) +#else /* not ANSI_DECLARATORS */ +void splitencsegs(m, b, triflaws) +struct mesh *m; +struct behavior *b; +int triflaws; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri enctri; + struct otri testtri; + struct osub testsh; + struct osub currentenc; + struct badsubseg *encloop; + vertex eorg, edest, eapex; + vertex newvertex; + enum insertvertexresult success; + REAL segmentlength, nearestpoweroftwo; + REAL split; + REAL multiplier, divisor; + int acuteorg, acuteorg2, acutedest, acutedest2; + int dummy; + int i; + triangle ptr; /* Temporary variable used by stpivot(). */ + subseg sptr; /* Temporary variable used by snext(). */ + + /* Note that steinerleft == -1 if an unlimited number */ + /* of Steiner points is allowed. */ + while ((m->badsubsegs.items > 0) && (m->steinerleft != 0)) { + traversalinit(&m->badsubsegs); + encloop = badsubsegtraverse(m); + while ((encloop != (struct badsubseg *) NULL) && (m->steinerleft != 0)) { + sdecode(encloop->encsubseg, currentenc); + sorg(currentenc, eorg); + sdest(currentenc, edest); + /* Make sure that this segment is still the same segment it was */ + /* when it was determined to be encroached. If the segment was */ + /* enqueued multiple times (because several newly inserted */ + /* vertices encroached it), it may have already been split. */ + if (!deadsubseg(currentenc.ss) && + (eorg == encloop->subsegorg) && (edest == encloop->subsegdest)) { + /* To decide where to split a segment, we need to know if the */ + /* segment shares an endpoint with an adjacent segment. */ + /* The concern is that, if we simply split every encroached */ + /* segment in its center, two adjacent segments with a small */ + /* angle between them might lead to an infinite loop; each */ + /* vertex added to split one segment will encroach upon the */ + /* other segment, which must then be split with a vertex that */ + /* will encroach upon the first segment, and so on forever. */ + /* To avoid this, imagine a set of concentric circles, whose */ + /* radii are powers of two, about each segment endpoint. */ + /* These concentric circles determine where the segment is */ + /* split. (If both endpoints are shared with adjacent */ + /* segments, split the segment in the middle, and apply the */ + /* concentric circles for later splittings.) */ + + /* Is the origin shared with another segment? */ + stpivot(currentenc, enctri); + lnext(enctri, testtri); + tspivot(testtri, testsh); + acuteorg = testsh.ss != m->dummysub; + /* Is the destination shared with another segment? */ + lnextself(testtri); + tspivot(testtri, testsh); + acutedest = testsh.ss != m->dummysub; + + /* If we're using diametral lenses (rather than diametral circles) */ + /* to define encroachment, delete free vertices from the */ + /* subsegment's diametral circle. */ + if (!b->nolenses && !acuteorg && !acutedest) { + apex(enctri, eapex); + while ((vertextype(eapex) == FREEVERTEX) && + ((eorg[0] - eapex[0]) * (edest[0] - eapex[0]) + + (eorg[1] - eapex[1]) * (edest[1] - eapex[1]) < 0.0)) { + deletevertex(m, b, &testtri); + stpivot(currentenc, enctri); + apex(enctri, eapex); + lprev(enctri, testtri); + } + } + + /* Now, check the other side of the segment, if there's a triangle */ + /* there. */ + sym(enctri, testtri); + if (testtri.tri != m->dummytri) { + /* Is the destination shared with another segment? */ + lnextself(testtri); + tspivot(testtri, testsh); + acutedest2 = testsh.ss != m->dummysub; + acutedest = acutedest || acutedest2; + /* Is the origin shared with another segment? */ + lnextself(testtri); + tspivot(testtri, testsh); + acuteorg2 = testsh.ss != m->dummysub; + acuteorg = acuteorg || acuteorg2; + + /* Delete free vertices from the subsegment's diametral circle. */ + if (!b->nolenses && !acuteorg2 && !acutedest2) { + org(testtri, eapex); + while ((vertextype(eapex) == FREEVERTEX) && + ((eorg[0] - eapex[0]) * (edest[0] - eapex[0]) + + (eorg[1] - eapex[1]) * (edest[1] - eapex[1]) < 0.0)) { + deletevertex(m, b, &testtri); + sym(enctri, testtri); + apex(testtri, eapex); + lprevself(testtri); + } + } + } + + /* Use the concentric circles if exactly one endpoint is shared */ + /* with another adjacent segment. */ + if (acuteorg || acutedest) { + segmentlength = sqrt((edest[0] - eorg[0]) * (edest[0] - eorg[0]) + + (edest[1] - eorg[1]) * (edest[1] - eorg[1])); + /* Find the power of two that most evenly splits the segment. */ + /* The worst case is a 2:1 ratio between subsegment lengths. */ + nearestpoweroftwo = 1.0; + while (segmentlength > 3.0 * nearestpoweroftwo) { + nearestpoweroftwo *= 2.0; + } + while (segmentlength < 1.5 * nearestpoweroftwo) { + nearestpoweroftwo *= 0.5; + } + /* Where do we split the segment? */ + split = nearestpoweroftwo / segmentlength; + if (acutedest) { + split = 1.0 - split; + } + } else { + /* If we're not worried about adjacent segments, split */ + /* this segment in the middle. */ + split = 0.5; + } + + /* Create the new vertex. */ + newvertex = (vertex) poolalloc(&m->vertices); + /* Interpolate its coordinate and attributes. */ + for (i = 0; i < 2 + m->nextras; i++) { + newvertex[i] = eorg[i] + split * (edest[i] - eorg[i]); + } + + if (!b->noexact) { + /* Roundoff in the above calculation may yield a `newvertex' */ + /* that is not precisely collinear with `eorg' and `edest'. */ + /* Improve collinearity by one step of iterative refinement. */ + multiplier = counterclockwise(m, b, eorg, edest, newvertex); + divisor = ((eorg[0] - edest[0]) * (eorg[0] - edest[0]) + + (eorg[1] - edest[1]) * (eorg[1] - edest[1])); + if ((multiplier != 0.0) && (divisor != 0.0)) { + multiplier = multiplier / divisor; + /* Watch out for NANs. */ + if (multiplier == multiplier) { + newvertex[0] += multiplier * (edest[1] - eorg[1]); + newvertex[1] += multiplier * (eorg[0] - edest[0]); + } + } + } + + setvertexmark(newvertex, mark(currentenc)); + setvertextype(newvertex, SEGMENTVERTEX); + if (b->verbose > 1) { + fprintf(stderr, + " Splitting subsegment (%.12g, %.12g) (%.12g, %.12g) at (%.12g, %.12g).\n", + eorg[0], eorg[1], edest[0], edest[1], + newvertex[0], newvertex[1]); + } + /* Check whether the new vertex lies on an endpoint. */ + if (((newvertex[0] == eorg[0]) && (newvertex[1] == eorg[1])) || + ((newvertex[0] == edest[0]) && (newvertex[1] == edest[1]))) { + fprintf(stderr, "Error: Ran out of precision at (%.12g, %.12g).\n", + newvertex[0], newvertex[1]); + fprintf(stderr, "I attempted to split a segment to a smaller size than\n"); + fprintf(stderr, " can be accommodated by the finite precision of\n"); + fprintf(stderr, " floating point arithmetic.\n"); + precisionerror(); + exit(1); + } + /* Insert the splitting vertex. This should always succeed. */ + success = insertvertex(m, b, newvertex, &enctri, ¤tenc, + 1, triflaws, 0.0); + if ((success != SUCCESSFULVERTEX) && (success != ENCROACHINGVERTEX)) { + fprintf(stderr, "Internal error in splitencsegs():\n"); + fprintf(stderr, " Failure to split a segment.\n"); + internalerror(); + } + if (m->steinerleft > 0) { + m->steinerleft--; + } + /* Check the two new subsegments to see if they're encroached. */ + dummy = checkseg4encroach(m, b, ¤tenc, 0.0); + snextself(currentenc); + dummy = checkseg4encroach(m, b, ¤tenc, 0.0); + } + + badsubsegdealloc(m, encloop); + encloop = badsubsegtraverse(m); + } + } +} + +#endif /* not CDT_ONLY */ + +/*****************************************************************************/ +/* */ +/* tallyfaces() Test every triangle in the mesh for quality measures. */ +/* */ +/*****************************************************************************/ + +#ifndef CDT_ONLY + +#ifdef ANSI_DECLARATORS +void tallyfaces(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +void tallyfaces(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri triangleloop; + + if (b->verbose) { + fprintf(stderr, " Making a list of bad triangles.\n"); + } + traversalinit(&m->triangles); + triangleloop.orient = 0; + triangleloop.tri = triangletraverse(m); + while (triangleloop.tri != (triangle *) NULL) { + /* If the triangle is bad, enqueue it. */ + testtriangle(m, b, &triangleloop); + triangleloop.tri = triangletraverse(m); + } +} + +#endif /* not CDT_ONLY */ + +/*****************************************************************************/ +/* */ +/* splittriangle() Inserts a vertex at the circumcenter of a triangle. */ +/* Deletes the newly inserted vertex if it encroaches */ +/* upon a segment. */ +/* */ +/*****************************************************************************/ + +#ifndef CDT_ONLY + +#ifdef ANSI_DECLARATORS +void splittriangle(struct mesh *m, struct behavior *b, + struct badtriang *badtri) +#else /* not ANSI_DECLARATORS */ +void splittriangle(m, b, badtri) +struct mesh *m; +struct behavior *b; +struct badtriang *badtri; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri badotri; + vertex borg, bdest, bapex; + vertex newvertex; + REAL xi, eta; + REAL minedge; + enum insertvertexresult success; + int errorflag; + int i; + + decode(badtri->poortri, badotri); + org(badotri, borg); + dest(badotri, bdest); + apex(badotri, bapex); + /* Make sure that this triangle is still the same triangle it was */ + /* when it was tested and determined to be of bad quality. */ + /* Subsequent transformations may have made it a different triangle. */ + if (!deadtri(badotri.tri) && (borg == badtri->triangorg) && + (bdest == badtri->triangdest) && (bapex == badtri->triangapex)) { + if (b->verbose > 1) { + fprintf(stderr, " Splitting this triangle at its circumcenter:\n"); + fprintf(stderr, " (%.12g, %.12g) (%.12g, %.12g) (%.12g, %.12g)\n", borg[0], + borg[1], bdest[0], bdest[1], bapex[0], bapex[1]); + } + + errorflag = 0; + /* Create a new vertex at the triangle's circumcenter. */ + newvertex = (vertex) poolalloc(&m->vertices); + findcircumcenter(m, b, borg, bdest, bapex, newvertex, &xi, &eta, &minedge); + + /* Check whether the new vertex lies on a triangle vertex. */ + if (((newvertex[0] == borg[0]) && (newvertex[1] == borg[1])) || + ((newvertex[0] == bdest[0]) && (newvertex[1] == bdest[1])) || + ((newvertex[0] == bapex[0]) && (newvertex[1] == bapex[1]))) { + if (!b->quiet) { + fprintf(stderr, + "Warning: New vertex (%.12g, %.12g) falls on existing vertex.\n", + newvertex[0], newvertex[1]); + errorflag = 1; + } + vertexdealloc(m, newvertex); + } else { + for (i = 2; i < 2 + m->nextras; i++) { + /* Interpolate the vertex attributes at the circumcenter. */ + newvertex[i] = borg[i] + xi * (bdest[i] - borg[i]) + + eta * (bapex[i] - borg[i]); + } + /* The new vertex must be in the interior, and therefore is a */ + /* free vertex with a marker of zero. */ + setvertexmark(newvertex, 0); + setvertextype(newvertex, FREEVERTEX); + + /* Ensure that the handle `badotri' does not represent the longest */ + /* edge of the triangle. This ensures that the circumcenter must */ + /* fall to the left of this edge, so point location will work. */ + /* (If the angle org-apex-dest exceeds 90 degrees, then the */ + /* circumcenter lies outside the org-dest edge, and eta is */ + /* negative. Roundoff error might prevent eta from being */ + /* negative when it should be, so I test eta against xi.) */ + if (eta < xi) { + lprevself(badotri); + } + + /* Insert the circumcenter, searching from the edge of the triangle, */ + /* and maintain the Delaunay property of the triangulation. */ + success = insertvertex(m, b, newvertex, &badotri, (struct osub *) NULL, + 1, 1, minedge); + if (success == SUCCESSFULVERTEX) { + if (m->steinerleft > 0) { + m->steinerleft--; + } + } else if (success == ENCROACHINGVERTEX) { + /* If the newly inserted vertex encroaches upon a subsegment, */ + /* delete the new vertex. */ + undovertex(m, b); + if (b->verbose > 1) { + fprintf(stderr, " Rejecting (%.12g, %.12g).\n", newvertex[0], newvertex[1]); + } + vertexdealloc(m, newvertex); + } else if (success == VIOLATINGVERTEX) { + /* Failed to insert the new vertex, but some subsegment was */ + /* marked as being encroached. */ + vertexdealloc(m, newvertex); + } else { /* success == DUPLICATEVERTEX */ + /* Couldn't insert the new vertex because a vertex is already there. */ + if (!b->quiet) { + fprintf(stderr, + "Warning: New vertex (%.12g, %.12g) falls on existing vertex.\n", + newvertex[0], newvertex[1]); + errorflag = 1; + } + vertexdealloc(m, newvertex); + } + } + if (errorflag) { + if (b->verbose) { + fprintf(stderr, " The new vertex is at the circumcenter of triangle\n"); + fprintf(stderr, " (%.12g, %.12g) (%.12g, %.12g) (%.12g, %.12g)\n", + borg[0], borg[1], bdest[0], bdest[1], bapex[0], bapex[1]); + } + fprintf(stderr, "This probably means that I am trying to refine triangles\n"); + fprintf(stderr, " to a smaller size than can be accommodated by the finite\n"); + fprintf(stderr, " precision of floating point arithmetic. (You can be\n"); + fprintf(stderr, " sure of this if I fail to terminate.)\n"); + precisionerror(); + } + } +} + +#endif /* not CDT_ONLY */ + +/*****************************************************************************/ +/* */ +/* enforcequality() Remove all the encroached subsegments and bad */ +/* triangles from the triangulation. */ +/* */ +/*****************************************************************************/ + +#ifndef CDT_ONLY + +#ifdef ANSI_DECLARATORS +void enforcequality(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +void enforcequality(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + struct badtriang *badtri; + int i; + + if (!b->quiet) { + fprintf(stderr, "Adding Steiner points to enforce quality.\n"); + } + /* Initialize the pool of encroached subsegments. */ + poolinit(&m->badsubsegs, sizeof(struct badsubseg), BADSUBSEGPERBLOCK, + POINTER, 0); + if (b->verbose) { + fprintf(stderr, " Looking for encroached subsegments.\n"); + } + /* Test all segments to see if they're encroached. */ + tallyencs(m, b); + if (b->verbose && (m->badsubsegs.items > 0)) { + fprintf(stderr, " Splitting encroached subsegments.\n"); + } + /* Fix encroached subsegments without noting bad triangles. */ + splitencsegs(m, b, 0); + /* At this point, if we haven't run out of Steiner points, the */ + /* triangulation should be (conforming) Delaunay. */ + + /* Next, we worry about enforcing triangle quality. */ + if ((b->minangle > 0.0) || b->vararea || b->fixedarea || b->usertest) { + /* Initialize the pool of bad triangles. */ + poolinit(&m->badtriangles, sizeof(struct badtriang), BADTRIPERBLOCK, + POINTER, 0); + /* Initialize the queues of bad triangles. */ + for (i = 0; i < 64; i++) { + m->queuefront[i] = (struct badtriang *) NULL; + } + m->firstnonemptyq = -1; + /* Test all triangles to see if they're bad. */ + tallyfaces(m, b); + /* Initialize the pool of recently flipped triangles. */ + poolinit(&m->flipstackers, sizeof(struct flipstacker), FLIPSTACKERPERBLOCK, + POINTER, 0); + m->checkquality = 1; + if (b->verbose) { + fprintf(stderr, " Splitting bad triangles.\n"); + } + while ((m->badtriangles.items > 0) && (m->steinerleft != 0)) { + /* Fix one bad triangle by inserting a vertex at its circumcenter. */ + badtri = dequeuebadtriang(m); + splittriangle(m, b, badtri); + if (m->badsubsegs.items > 0) { + /* Put bad triangle back in queue for another try later. */ + enqueuebadtriang(m, b, badtri); + /* Fix any encroached subsegments that resulted. */ + /* Record any new bad triangles that result. */ + splitencsegs(m, b, 1); + } else { + /* Return the bad triangle to the pool. */ + pooldealloc(&m->badtriangles, (VOID *) badtri); + } + } + } + /* At this point, if we haven't run out of Steiner points, the */ + /* triangulation should be (conforming) Delaunay and have no */ + /* low-quality triangles. */ + + /* Might we have run out of Steiner points too soon? */ + if (!b->quiet && (m->badsubsegs.items > 0) && (m->steinerleft == 0)) { + fprintf(stderr, "\nWarning: I ran out of Steiner points, but the mesh has\n"); + if (m->badsubsegs.items == 1) { + fprintf(stderr, " an encroached subsegment, and therefore might not be truly\n"); + } else { + fprintf(stderr, " %ld encroached subsegments, and therefore might not be truly\n" + , m->badsubsegs.items); + } + fprintf(stderr, " Delaunay. If the Delaunay property is important to you,\n"); + fprintf(stderr, " try increasing the number of Steiner points (controlled by\n"); + fprintf(stderr, " the -S switch) slightly and try again.\n\n"); + } +} + +#endif /* not CDT_ONLY */ + +/** **/ +/** **/ +/********* Mesh quality maintenance ends here *********/ + +/*****************************************************************************/ +/* */ +/* highorder() Create extra nodes for quadratic subparametric elements. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void highorder(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +void highorder(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri triangleloop, trisym; + struct osub checkmark; + vertex newvertex; + vertex torg, tdest; + int i; + triangle ptr; /* Temporary variable used by sym(). */ + subseg sptr; /* Temporary variable used by tspivot(). */ + + if (!b->quiet) { + fprintf(stderr, "Adding vertices for second-order triangles.\n"); + } + /* The following line ensures that dead items in the pool of nodes */ + /* cannot be allocated for the extra nodes associated with high */ + /* order elements. This ensures that the primary nodes (at the */ + /* corners of elements) will occur earlier in the output files, and */ + /* have lower indices, than the extra nodes. */ + m->vertices.deaditemstack = (VOID *) NULL; + + traversalinit(&m->triangles); + triangleloop.tri = triangletraverse(m); + /* To loop over the set of edges, loop over all triangles, and look at */ + /* the three edges of each triangle. If there isn't another triangle */ + /* adjacent to the edge, operate on the edge. If there is another */ + /* adjacent triangle, operate on the edge only if the current triangle */ + /* has a smaller pointer than its neighbor. This way, each edge is */ + /* considered only once. */ + while (triangleloop.tri != (triangle *) NULL) { + for (triangleloop.orient = 0; triangleloop.orient < 3; + triangleloop.orient++) { + sym(triangleloop, trisym); + if ((triangleloop.tri < trisym.tri) || (trisym.tri == m->dummytri)) { + org(triangleloop, torg); + dest(triangleloop, tdest); + /* Create a new node in the middle of the edge. Interpolate */ + /* its attributes. */ + newvertex = (vertex) poolalloc(&m->vertices); + for (i = 0; i < 2 + m->nextras; i++) { + newvertex[i] = 0.5 * (torg[i] + tdest[i]); + } + /* Set the new node's marker to zero or one, depending on */ + /* whether it lies on a boundary. */ + setvertexmark(newvertex, trisym.tri == m->dummytri); + setvertextype(newvertex, + trisym.tri == m->dummytri ? FREEVERTEX : SEGMENTVERTEX); + if (b->usesegments) { + tspivot(triangleloop, checkmark); + /* If this edge is a segment, transfer the marker to the new node. */ + if (checkmark.ss != m->dummysub) { + setvertexmark(newvertex, mark(checkmark)); + setvertextype(newvertex, SEGMENTVERTEX); + } + } + if (b->verbose > 1) { + fprintf(stderr, " Creating (%.12g, %.12g).\n", newvertex[0], newvertex[1]); + } + /* Record the new node in the (one or two) adjacent elements. */ + triangleloop.tri[m->highorderindex + triangleloop.orient] = + (triangle) newvertex; + if (trisym.tri != m->dummytri) { + trisym.tri[m->highorderindex + trisym.orient] = (triangle) newvertex; + } + } + } + triangleloop.tri = triangletraverse(m); + } +} + +/********* File I/O routines begin here *********/ +/** **/ +/** **/ + +/*****************************************************************************/ +/* */ +/* readline() Read a nonempty line from a file. */ +/* */ +/* A line is considered "nonempty" if it contains something that looks like */ +/* a number. Comments (prefaced by `#') are ignored. */ +/* */ +/*****************************************************************************/ + +#ifndef TRILIBRARY + +#ifdef ANSI_DECLARATORS +char *readline(char *string, FILE *infile, char *infilename) +#else /* not ANSI_DECLARATORS */ +char *readline(string, infile, infilename) +char *string; +FILE *infile; +char *infilename; +#endif /* not ANSI_DECLARATORS */ + +{ + char *result; + + /* Search for something that looks like a number. */ + do { + result = fgets(string, INPUTLINESIZE, infile); + if (result == (char *) NULL) { + fprintf(stderr, " Error: Unexpected end of file in %s.\n", infilename); + exit(1); + } + /* Skip anything that doesn't look like a number, a comment, */ + /* or the end of a line. */ + while ((*result != '\0') && (*result != '#') + && (*result != '.') && (*result != '+') && (*result != '-') + && ((*result < '0') || (*result > '9'))) { + result++; + } + /* If it's a comment or end of line, read another line and try again. */ + } while ((*result == '#') || (*result == '\0')); + return result; +} + +#endif /* not TRILIBRARY */ + +/*****************************************************************************/ +/* */ +/* findfield() Find the next field of a string. */ +/* */ +/* Jumps past the current field by searching for whitespace, then jumps */ +/* past the whitespace to find the next field. */ +/* */ +/*****************************************************************************/ + +#ifndef TRILIBRARY + +#ifdef ANSI_DECLARATORS +char *findfield(char *string) +#else /* not ANSI_DECLARATORS */ +char *findfield(string) +char *string; +#endif /* not ANSI_DECLARATORS */ + +{ + char *result; + + result = string; + /* Skip the current field. Stop upon reaching whitespace. */ + while ((*result != '\0') && (*result != '#') + && (*result != ' ') && (*result != '\t')) { + result++; + } + /* Now skip the whitespace and anything else that doesn't look like a */ + /* number, a comment, or the end of a line. */ + while ((*result != '\0') && (*result != '#') + && (*result != '.') && (*result != '+') && (*result != '-') + && ((*result < '0') || (*result > '9'))) { + result++; + } + /* Check for a comment (prefixed with `#'). */ + if (*result == '#') { + *result = '\0'; + } + return result; +} + +#endif /* not TRILIBRARY */ + +/*****************************************************************************/ +/* */ +/* readnodes() Read the vertices from a file, which may be a .node or */ +/* .poly file. */ +/* */ +/*****************************************************************************/ + +#ifndef TRILIBRARY + +#ifdef ANSI_DECLARATORS +void readnodes(struct mesh *m, struct behavior *b, char *nodefilename, + char *polyfilename, FILE **polyfile) +#else /* not ANSI_DECLARATORS */ +void readnodes(m, b, nodefilename, polyfilename, polyfile) +struct mesh *m; +struct behavior *b; +char *nodefilename; +char *polyfilename; +FILE **polyfile; +#endif /* not ANSI_DECLARATORS */ + +{ + FILE *infile; + vertex vertexloop; + char inputline[INPUTLINESIZE]; + char *stringptr; + char *infilename; + REAL x, y; + int firstnode; + int nodemarkers; + int currentmarker; + int i, j; + + if (b->poly) { + /* Read the vertices from a .poly file. */ + if (!b->quiet) { + fprintf(stderr, "Opening %s.\n", polyfilename); + } + *polyfile = fopen(polyfilename, "r"); + if (*polyfile == (FILE *) NULL) { + fprintf(stderr, " Error: Cannot access file %s.\n", polyfilename); + exit(1); + } + /* Read number of vertices, number of dimensions, number of vertex */ + /* attributes, and number of boundary markers. */ + stringptr = readline(inputline, *polyfile, polyfilename); + m->invertices = (int) strtol(stringptr, &stringptr, 0); + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + m->mesh_dim = 2; + } else { + m->mesh_dim = (int) strtol(stringptr, &stringptr, 0); + } + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + m->nextras = 0; + } else { + m->nextras = (int) strtol(stringptr, &stringptr, 0); + } + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + nodemarkers = 0; + } else { + nodemarkers = (int) strtol(stringptr, &stringptr, 0); + } + if (m->invertices > 0) { + infile = *polyfile; + infilename = polyfilename; + m->readnodefile = 0; + } else { + /* If the .poly file claims there are zero vertices, that means that */ + /* the vertices should be read from a separate .node file. */ + m->readnodefile = 1; + infilename = nodefilename; + } + } else { + m->readnodefile = 1; + infilename = nodefilename; + *polyfile = (FILE *) NULL; + } + + if (m->readnodefile) { + /* Read the vertices from a .node file. */ + if (!b->quiet) { + fprintf(stderr, "Opening %s.\n", nodefilename); + } + infile = fopen(nodefilename, "r"); + if (infile == (FILE *) NULL) { + fprintf(stderr, " Error: Cannot access file %s.\n", nodefilename); + exit(1); + } + /* Read number of vertices, number of dimensions, number of vertex */ + /* attributes, and number of boundary markers. */ + stringptr = readline(inputline, infile, nodefilename); + m->invertices = (int) strtol(stringptr, &stringptr, 0); + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + m->mesh_dim = 2; + } else { + m->mesh_dim = (int) strtol(stringptr, &stringptr, 0); + } + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + m->nextras = 0; + } else { + m->nextras = (int) strtol(stringptr, &stringptr, 0); + } + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + nodemarkers = 0; + } else { + nodemarkers = (int) strtol(stringptr, &stringptr, 0); + } + } + + if (m->invertices < 3) { + fprintf(stderr, "Error: Input must have at least three input vertices.\n"); + exit(1); + } + if (m->mesh_dim != 2) { + fprintf(stderr, "Error: Triangle only works with two-dimensional meshes.\n"); + exit(1); + } + if (m->nextras == 0) { + b->weighted = 0; + } + + initializevertexpool(m, b); + + /* Read the vertices. */ + for (i = 0; i < m->invertices; i++) { + vertexloop = (vertex) poolalloc(&m->vertices); + stringptr = readline(inputline, infile, infilename); + if (i == 0) { + firstnode = (int) strtol(stringptr, &stringptr, 0); + if ((firstnode == 0) || (firstnode == 1)) { + b->firstnumber = firstnode; + } + } + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + fprintf(stderr, "Error: Vertex %d has no x coordinate.\n", b->firstnumber + i); + exit(1); + } + x = (REAL) strtod(stringptr, &stringptr); + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + fprintf(stderr, "Error: Vertex %d has no y coordinate.\n", b->firstnumber + i); + exit(1); + } + y = (REAL) strtod(stringptr, &stringptr); + vertexloop[0] = x; + vertexloop[1] = y; + /* Read the vertex attributes. */ + for (j = 2; j < 2 + m->nextras; j++) { + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + vertexloop[j] = 0.0; + } else { + vertexloop[j] = (REAL) strtod(stringptr, &stringptr); + } + } + if (nodemarkers) { + /* Read a vertex marker. */ + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + setvertexmark(vertexloop, 0); + } else { + currentmarker = (int) strtol(stringptr, &stringptr, 0); + setvertexmark(vertexloop, currentmarker); + } + } else { + /* If no markers are specified in the file, they default to zero. */ + setvertexmark(vertexloop, 0); + } + setvertextype(vertexloop, INPUTVERTEX); + /* Determine the smallest and largest x and y coordinates. */ + if (i == 0) { + m->xmin = m->xmax = x; + m->ymin = m->ymax = y; + } else { + m->xmin = (x < m->xmin) ? x : m->xmin; + m->xmax = (x > m->xmax) ? x : m->xmax; + m->ymin = (y < m->ymin) ? y : m->ymin; + m->ymax = (y > m->ymax) ? y : m->ymax; + } + } + if (m->readnodefile) { + fclose(infile); + } + + /* Nonexistent x value used as a flag to mark circle events in sweepline */ + /* Delaunay algorithm. */ + m->xminextreme = 10 * m->xmin - 9 * m->xmax; +} + +#endif /* not TRILIBRARY */ + +/*****************************************************************************/ +/* */ +/* transfernodes() Read the vertices from memory. */ +/* */ +/*****************************************************************************/ + +#ifdef TRILIBRARY + +#ifdef ANSI_DECLARATORS +void transfernodes(struct mesh *m, struct behavior *b, REAL *pointlist, + REAL *pointattriblist, int *pointmarkerlist, + int numberofpoints, int numberofpointattribs) +#else /* not ANSI_DECLARATORS */ +void transfernodes(m, b, pointlist, pointattriblist, pointmarkerlist, + numberofpoints, numberofpointattribs) +struct mesh *m; +struct behavior *b; +REAL *pointlist; +REAL *pointattriblist; +int *pointmarkerlist; +int numberofpoints; +int numberofpointattribs; +#endif /* not ANSI_DECLARATORS */ + +{ + vertex vertexloop; + REAL x, y; + int i, j; + int coordindex; + int attribindex; + + m->invertices = numberofpoints; + m->mesh_dim = 2; + m->nextras = numberofpointattribs; + m->readnodefile = 0; + if (m->invertices < 3) { + fprintf(stderr, "Error: Input must have at least three input vertices.\n"); + exit(1); + } + if (m->nextras == 0) { + b->weighted = 0; + } + + initializevertexpool(m, b); + + /* Read the vertices. */ + coordindex = 0; + attribindex = 0; + for (i = 0; i < m->invertices; i++) { + vertexloop = (vertex) poolalloc(&m->vertices); + /* Read the vertex coordinates. */ + x = vertexloop[0] = pointlist[coordindex++]; + y = vertexloop[1] = pointlist[coordindex++]; + /* Read the vertex attributes. */ + for (j = 0; j < numberofpointattribs; j++) { + vertexloop[2 + j] = pointattriblist[attribindex++]; + } + if (pointmarkerlist != (int *) NULL) { + /* Read a vertex marker. */ + setvertexmark(vertexloop, pointmarkerlist[i]); + } else { + /* If no markers are specified, they default to zero. */ + setvertexmark(vertexloop, 0); + } + setvertextype(vertexloop, INPUTVERTEX); + /* Determine the smallest and largest x and y coordinates. */ + if (i == 0) { + m->xmin = m->xmax = x; + m->ymin = m->ymax = y; + } else { + m->xmin = (x < m->xmin) ? x : m->xmin; + m->xmax = (x > m->xmax) ? x : m->xmax; + m->ymin = (y < m->ymin) ? y : m->ymin; + m->ymax = (y > m->ymax) ? y : m->ymax; + } + } + + /* Nonexistent x value used as a flag to mark circle events in sweepline */ + /* Delaunay algorithm. */ + m->xminextreme = 10 * m->xmin - 9 * m->xmax; +} + +#endif /* TRILIBRARY */ + +/*****************************************************************************/ +/* */ +/* readholes() Read the holes, and possibly regional attributes and area */ +/* constraints, from a .poly file. */ +/* */ +/*****************************************************************************/ + +#ifndef TRILIBRARY + +#ifdef ANSI_DECLARATORS +void readholes(struct mesh *m, struct behavior *b, + FILE *polyfile, char *polyfilename, REAL **hlist, int *holes, + REAL **rlist, int *regions) +#else /* not ANSI_DECLARATORS */ +void readholes(m, b, polyfile, polyfilename, hlist, holes, rlist, regions) +struct mesh *m; +struct behavior *b; +FILE *polyfile; +char *polyfilename; +REAL **hlist; +int *holes; +REAL **rlist; +int *regions; +#endif /* not ANSI_DECLARATORS */ + +{ + REAL *holelist; + REAL *regionlist; + char inputline[INPUTLINESIZE]; + char *stringptr; + int index; + int i; + + /* Read the holes. */ + stringptr = readline(inputline, polyfile, polyfilename); + *holes = (int) strtol(stringptr, &stringptr, 0); + if (*holes > 0) { + holelist = (REAL *) trimalloc(2 * *holes * sizeof(REAL)); + *hlist = holelist; + for (i = 0; i < 2 * *holes; i += 2) { + stringptr = readline(inputline, polyfile, polyfilename); + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + fprintf(stderr, "Error: Hole %d has no x coordinate.\n", + b->firstnumber + (i >> 1)); + exit(1); + } else { + holelist[i] = (REAL) strtod(stringptr, &stringptr); + } + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + fprintf(stderr, "Error: Hole %d has no y coordinate.\n", + b->firstnumber + (i >> 1)); + exit(1); + } else { + holelist[i + 1] = (REAL) strtod(stringptr, &stringptr); + } + } + } else { + *hlist = (REAL *) NULL; + } + +#ifndef CDT_ONLY + if ((b->regionattrib || b->vararea) && !b->refine) { + /* Read the area constraints. */ + stringptr = readline(inputline, polyfile, polyfilename); + *regions = (int) strtol(stringptr, &stringptr, 0); + if (*regions > 0) { + regionlist = (REAL *) trimalloc(4 * *regions * sizeof(REAL)); + *rlist = regionlist; + index = 0; + for (i = 0; i < *regions; i++) { + stringptr = readline(inputline, polyfile, polyfilename); + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + fprintf(stderr, "Error: Region %d has no x coordinate.\n", + b->firstnumber + i); + exit(1); + } else { + regionlist[index++] = (REAL) strtod(stringptr, &stringptr); + } + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + fprintf(stderr, "Error: Region %d has no y coordinate.\n", + b->firstnumber + i); + exit(1); + } else { + regionlist[index++] = (REAL) strtod(stringptr, &stringptr); + } + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + fprintf(stderr, + "Error: Region %d has no region attribute or area constraint.\n", + b->firstnumber + i); + exit(1); + } else { + regionlist[index++] = (REAL) strtod(stringptr, &stringptr); + } + stringptr = findfield(stringptr); + if (*stringptr == '\0') { + regionlist[index] = regionlist[index - 1]; + } else { + regionlist[index] = (REAL) strtod(stringptr, &stringptr); + } + index++; + } + } + } else { + /* Set `*regions' to zero to avoid an accidental free() later. */ + *regions = 0; + *rlist = (REAL *) NULL; + } +#endif /* not CDT_ONLY */ + + fclose(polyfile); +} + +#endif /* not TRILIBRARY */ + +/*****************************************************************************/ +/* */ +/* finishfile() Write the command line to the output file so the user */ +/* can remember how the file was generated. Close the file. */ +/* */ +/*****************************************************************************/ + +#ifndef TRILIBRARY + +#ifdef ANSI_DECLARATORS +void finishfile(FILE *outfile, int argc, char **argv) +#else /* not ANSI_DECLARATORS */ +void finishfile(outfile, argc, argv) +FILE *outfile; +int argc; +char **argv; +#endif /* not ANSI_DECLARATORS */ + +{ + int i; + + fprintf(outfile, "# Generated by"); + for (i = 0; i < argc; i++) { + fprintf(outfile, " "); + fputs(argv[i], outfile); + } + fprintf(outfile, "\n"); + fclose(outfile); +} + +#endif /* not TRILIBRARY */ + +/*****************************************************************************/ +/* */ +/* writenodes() Number the vertices and write them to a .node file. */ +/* */ +/* To save memory, the vertex numbers are written over the boundary markers */ +/* after the vertices are written to a file. */ +/* */ +/*****************************************************************************/ + +#ifdef TRILIBRARY + +#ifdef ANSI_DECLARATORS +void writenodes(struct mesh *m, struct behavior *b, REAL **pointlist, + REAL **pointattriblist, int **pointmarkerlist) +#else /* not ANSI_DECLARATORS */ +void writenodes(m, b, pointlist, pointattriblist, pointmarkerlist) +struct mesh *m; +struct behavior *b; +REAL **pointlist; +REAL **pointattriblist; +int **pointmarkerlist; +#endif /* not ANSI_DECLARATORS */ + +#else /* not TRILIBRARY */ + +#ifdef ANSI_DECLARATORS +void writenodes(struct mesh *m, struct behavior *b, char *nodefilename, + int argc, char **argv) +#else /* not ANSI_DECLARATORS */ +void writenodes(m, b, nodefilename, argc, argv) +struct mesh *m; +struct behavior *b; +char *nodefilename; +int argc; +char **argv; +#endif /* not ANSI_DECLARATORS */ + +#endif /* not TRILIBRARY */ + +{ +#ifdef TRILIBRARY + REAL *plist; + REAL *palist; + int *pmlist; + int coordindex; + int attribindex; +#else /* not TRILIBRARY */ + FILE *outfile; +#endif /* not TRILIBRARY */ + vertex vertexloop; + long outvertices; + int vertexnumber; + int i; + + if (b->jettison) { + outvertices = m->vertices.items - m->undeads; + } else { + outvertices = m->vertices.items; + } + +#ifdef TRILIBRARY + if (!b->quiet) { + fprintf(stderr, "Writing vertices.\n"); + } + /* Allocate memory for output vertices if necessary. */ + if (*pointlist == (REAL *) NULL) { + *pointlist = (REAL *) trimalloc(outvertices * 2 * sizeof(REAL)); + } + /* Allocate memory for output vertex attributes if necessary. */ + if ((m->nextras > 0) && (*pointattriblist == (REAL *) NULL)) { + *pointattriblist = (REAL *) trimalloc(outvertices * m->nextras * + sizeof(REAL)); + } + /* Allocate memory for output vertex markers if necessary. */ + if (!b->nobound && (*pointmarkerlist == (int *) NULL)) { + *pointmarkerlist = (int *) trimalloc(outvertices * sizeof(int)); + } + plist = *pointlist; + palist = *pointattriblist; + pmlist = *pointmarkerlist; + coordindex = 0; + attribindex = 0; +#else /* not TRILIBRARY */ + if (!b->quiet) { + fprintf(stderr, "Writing %s.\n", nodefilename); + } + outfile = fopen(nodefilename, "w"); + if (outfile == (FILE *) NULL) { + fprintf(stderr, " Error: Cannot create file %s.\n", nodefilename); + exit(1); + } + /* Number of vertices, number of dimensions, number of vertex attributes, */ + /* and number of boundary markers (zero or one). */ + fprintf(outfile, "%ld %d %d %d\n", outvertices, m->mesh_dim, + m->nextras, 1 - b->nobound); +#endif /* not TRILIBRARY */ + + traversalinit(&m->vertices); + vertexnumber = b->firstnumber; + vertexloop = vertextraverse(m); + while (vertexloop != (vertex) NULL) { + if (!b->jettison || (vertextype(vertexloop) != UNDEADVERTEX)) { +#ifdef TRILIBRARY + /* X and y coordinates. */ + plist[coordindex++] = vertexloop[0]; + plist[coordindex++] = vertexloop[1]; + /* Vertex attributes. */ + for (i = 0; i < m->nextras; i++) { + palist[attribindex++] = vertexloop[2 + i]; + } + if (!b->nobound) { + /* Copy the boundary marker. */ + pmlist[vertexnumber - b->firstnumber] = vertexmark(vertexloop); + } +#else /* not TRILIBRARY */ + /* Vertex number, x and y coordinates. */ + fprintf(outfile, "%4d %.17g %.17g", vertexnumber, vertexloop[0], + vertexloop[1]); + for (i = 0; i < m->nextras; i++) { + /* Write an attribute. */ + fprintf(outfile, " %.17g", vertexloop[i + 2]); + } + if (b->nobound) { + fprintf(outfile, "\n"); + } else { + /* Write the boundary marker. */ + fprintf(outfile, " %d\n", vertexmark(vertexloop)); + } +#endif /* not TRILIBRARY */ + + setvertexmark(vertexloop, vertexnumber); + vertexnumber++; + } + vertexloop = vertextraverse(m); + } + +#ifndef TRILIBRARY + finishfile(outfile, argc, argv); +#endif /* not TRILIBRARY */ +} + +/*****************************************************************************/ +/* */ +/* numbernodes() Number the vertices. */ +/* */ +/* Each vertex is assigned a marker equal to its number. */ +/* */ +/* Used when writenodes() is not called because no .node file is written. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void numbernodes(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +void numbernodes(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + vertex vertexloop; + int vertexnumber; + + traversalinit(&m->vertices); + vertexnumber = b->firstnumber; + vertexloop = vertextraverse(m); + while (vertexloop != (vertex) NULL) { + setvertexmark(vertexloop, vertexnumber); + if (!b->jettison || (vertextype(vertexloop) != UNDEADVERTEX)) { + vertexnumber++; + } + vertexloop = vertextraverse(m); + } +} + +/*****************************************************************************/ +/* */ +/* writeelements() Write the triangles to an .ele file. */ +/* */ +/*****************************************************************************/ + +#ifdef TRILIBRARY + +#ifdef ANSI_DECLARATORS +void writeelements(struct mesh *m, struct behavior *b, + int **trianglelist, REAL **triangleattriblist) +#else /* not ANSI_DECLARATORS */ +void writeelements(m, b, trianglelist, triangleattriblist) +struct mesh *m; +struct behavior *b; +int **trianglelist; +REAL **triangleattriblist; +#endif /* not ANSI_DECLARATORS */ + +#else /* not TRILIBRARY */ + +#ifdef ANSI_DECLARATORS +void writeelements(struct mesh *m, struct behavior *b, char *elefilename, + int argc, char **argv) +#else /* not ANSI_DECLARATORS */ +void writeelements(m, b, elefilename, argc, argv) +struct mesh *m; +struct behavior *b; +char *elefilename; +int argc; +char **argv; +#endif /* not ANSI_DECLARATORS */ + +#endif /* not TRILIBRARY */ + +{ +#ifdef TRILIBRARY + int *tlist; + REAL *talist; + int vertexindex; + int attribindex; +#else /* not TRILIBRARY */ + FILE *outfile; +#endif /* not TRILIBRARY */ + struct otri triangleloop; + vertex p1, p2, p3; + vertex mid1, mid2, mid3; + long elementnumber; + int i; + +#ifdef TRILIBRARY + if (!b->quiet) { + fprintf(stderr, "Writing triangles.\n"); + } + /* Allocate memory for output triangles if necessary. */ + if (*trianglelist == (int *) NULL) { + *trianglelist = (int *) trimalloc(m->triangles.items * + ((b->order + 1) * (b->order + 2) / 2) * + sizeof(int)); + } + /* Allocate memory for output triangle attributes if necessary. */ + if ((m->eextras > 0) && (*triangleattriblist == (REAL *) NULL)) { + *triangleattriblist = (REAL *) trimalloc(m->triangles.items * m->eextras * + sizeof(REAL)); + } + tlist = *trianglelist; + talist = *triangleattriblist; + vertexindex = 0; + attribindex = 0; +#else /* not TRILIBRARY */ + if (!b->quiet) { + fprintf(stderr, "Writing %s.\n", elefilename); + } + outfile = fopen(elefilename, "w"); + if (outfile == (FILE *) NULL) { + fprintf(stderr, " Error: Cannot create file %s.\n", elefilename); + exit(1); + } + /* Number of triangles, vertices per triangle, attributes per triangle. */ + fprintf(outfile, "%ld %d %d\n", m->triangles.items, + (b->order + 1) * (b->order + 2) / 2, m->eextras); +#endif /* not TRILIBRARY */ + + traversalinit(&m->triangles); + triangleloop.tri = triangletraverse(m); + triangleloop.orient = 0; + elementnumber = b->firstnumber; + while (triangleloop.tri != (triangle *) NULL) { + org(triangleloop, p1); + dest(triangleloop, p2); + apex(triangleloop, p3); + if (b->order == 1) { +#ifdef TRILIBRARY + tlist[vertexindex++] = vertexmark(p1); + tlist[vertexindex++] = vertexmark(p2); + tlist[vertexindex++] = vertexmark(p3); +#else /* not TRILIBRARY */ + /* Triangle number, indices for three vertices. */ + fprintf(outfile, "%4ld %4d %4d %4d", elementnumber, + vertexmark(p1), vertexmark(p2), vertexmark(p3)); +#endif /* not TRILIBRARY */ + } else { + mid1 = (vertex) triangleloop.tri[m->highorderindex + 1]; + mid2 = (vertex) triangleloop.tri[m->highorderindex + 2]; + mid3 = (vertex) triangleloop.tri[m->highorderindex]; +#ifdef TRILIBRARY + tlist[vertexindex++] = vertexmark(p1); + tlist[vertexindex++] = vertexmark(p2); + tlist[vertexindex++] = vertexmark(p3); + tlist[vertexindex++] = vertexmark(mid1); + tlist[vertexindex++] = vertexmark(mid2); + tlist[vertexindex++] = vertexmark(mid3); +#else /* not TRILIBRARY */ + /* Triangle number, indices for six vertices. */ + fprintf(outfile, "%4ld %4d %4d %4d %4d %4d %4d", elementnumber, + vertexmark(p1), vertexmark(p2), vertexmark(p3), vertexmark(mid1), + vertexmark(mid2), vertexmark(mid3)); +#endif /* not TRILIBRARY */ + } + +#ifdef TRILIBRARY + for (i = 0; i < m->eextras; i++) { + talist[attribindex++] = elemattribute(triangleloop, i); + } +#else /* not TRILIBRARY */ + for (i = 0; i < m->eextras; i++) { + fprintf(outfile, " %.17g", elemattribute(triangleloop, i)); + } + fprintf(outfile, "\n"); +#endif /* not TRILIBRARY */ + + triangleloop.tri = triangletraverse(m); + elementnumber++; + } + +#ifndef TRILIBRARY + finishfile(outfile, argc, argv); +#endif /* not TRILIBRARY */ +} + +/*****************************************************************************/ +/* */ +/* writepoly() Write the segments and holes to a .poly file. */ +/* */ +/*****************************************************************************/ + +#ifdef TRILIBRARY + +#ifdef ANSI_DECLARATORS +void writepoly(struct mesh *m, struct behavior *b, + int **segmentlist, int **segmentmarkerlist) +#else /* not ANSI_DECLARATORS */ +void writepoly(m, b, segmentlist, segmentmarkerlist) +struct mesh *m; +struct behavior *b; +int **segmentlist; +int **segmentmarkerlist; +#endif /* not ANSI_DECLARATORS */ + +#else /* not TRILIBRARY */ + +#ifdef ANSI_DECLARATORS +void writepoly(struct mesh *m, struct behavior *b, char *polyfilename, + REAL *holelist, int holes, REAL *regionlist, int regions, + int argc, char **argv) +#else /* not ANSI_DECLARATORS */ +void writepoly(m, b, polyfilename, holelist, holes, regionlist, regions, + argc, argv) +struct mesh *m; +struct behavior *b; +char *polyfilename; +REAL *holelist; +int holes; +REAL *regionlist; +int regions; +int argc; +char **argv; +#endif /* not ANSI_DECLARATORS */ + +#endif /* not TRILIBRARY */ + +{ +#ifdef TRILIBRARY + int *slist; + int *smlist; + int index; +#else /* not TRILIBRARY */ + FILE *outfile; + long holenumber, regionnumber; +#endif /* not TRILIBRARY */ + struct osub subsegloop; + vertex endpoint1, endpoint2; + long subsegnumber; + +#ifdef TRILIBRARY + if (!b->quiet) { + fprintf(stderr, "Writing segments.\n"); + } + /* Allocate memory for output segments if necessary. */ + if (*segmentlist == (int *) NULL) { + *segmentlist = (int *) trimalloc(m->subsegs.items * 2 * sizeof(int)); + } + /* Allocate memory for output segment markers if necessary. */ + if (!b->nobound && (*segmentmarkerlist == (int *) NULL)) { + *segmentmarkerlist = (int *) trimalloc(m->subsegs.items * sizeof(int)); + } + slist = *segmentlist; + smlist = *segmentmarkerlist; + index = 0; +#else /* not TRILIBRARY */ + if (!b->quiet) { + fprintf(stderr, "Writing %s.\n", polyfilename); + } + outfile = fopen(polyfilename, "w"); + if (outfile == (FILE *) NULL) { + fprintf(stderr, " Error: Cannot create file %s.\n", polyfilename); + exit(1); + } + /* The zero indicates that the vertices are in a separate .node file. */ + /* Followed by number of dimensions, number of vertex attributes, */ + /* and number of boundary markers (zero or one). */ + fprintf(outfile, "%d %d %d %d\n", 0, m->mesh_dim, m->nextras, + 1 - b->nobound); + /* Number of segments, number of boundary markers (zero or one). */ + fprintf(outfile, "%ld %d\n", m->subsegs.items, 1 - b->nobound); +#endif /* not TRILIBRARY */ + + traversalinit(&m->subsegs); + subsegloop.ss = subsegtraverse(m); + subsegloop.ssorient = 0; + subsegnumber = b->firstnumber; + while (subsegloop.ss != (subseg *) NULL) { + sorg(subsegloop, endpoint1); + sdest(subsegloop, endpoint2); +#ifdef TRILIBRARY + /* Copy indices of the segment's two endpoints. */ + slist[index++] = vertexmark(endpoint1); + slist[index++] = vertexmark(endpoint2); + if (!b->nobound) { + /* Copy the boundary marker. */ + smlist[subsegnumber - b->firstnumber] = mark(subsegloop); + } +#else /* not TRILIBRARY */ + /* Segment number, indices of its two endpoints, and possibly a marker. */ + if (b->nobound) { + fprintf(outfile, "%4ld %4d %4d\n", subsegnumber, + vertexmark(endpoint1), vertexmark(endpoint2)); + } else { + fprintf(outfile, "%4ld %4d %4d %4d\n", subsegnumber, + vertexmark(endpoint1), vertexmark(endpoint2), mark(subsegloop)); + } +#endif /* not TRILIBRARY */ + + subsegloop.ss = subsegtraverse(m); + subsegnumber++; + } + +#ifndef TRILIBRARY +#ifndef CDT_ONLY + fprintf(outfile, "%d\n", holes); + if (holes > 0) { + for (holenumber = 0; holenumber < holes; holenumber++) { + /* Hole number, x and y coordinates. */ + fprintf(outfile, "%4ld %.17g %.17g\n", b->firstnumber + holenumber, + holelist[2 * holenumber], holelist[2 * holenumber + 1]); + } + } + if (regions > 0) { + fprintf(outfile, "%d\n", regions); + for (regionnumber = 0; regionnumber < regions; regionnumber++) { + /* Region number, x and y coordinates, attribute, maximum area. */ + fprintf(outfile, "%4ld %.17g %.17g %.17g %.17g\n", + b->firstnumber + regionnumber, + regionlist[4 * regionnumber], regionlist[4 * regionnumber + 1], + regionlist[4 * regionnumber + 2], + regionlist[4 * regionnumber + 3]); + } + } +#endif /* not CDT_ONLY */ + + finishfile(outfile, argc, argv); +#endif /* not TRILIBRARY */ +} + +/*****************************************************************************/ +/* */ +/* writeedges() Write the edges to an .edge file. */ +/* */ +/*****************************************************************************/ + +#ifdef TRILIBRARY + +#ifdef ANSI_DECLARATORS +void writeedges(struct mesh *m, struct behavior *b, + int **edgelist, int **edgemarkerlist) +#else /* not ANSI_DECLARATORS */ +void writeedges(m, b, edgelist, edgemarkerlist) +struct mesh *m; +struct behavior *b; +int **edgelist; +int **edgemarkerlist; +#endif /* not ANSI_DECLARATORS */ + +#else /* not TRILIBRARY */ + +#ifdef ANSI_DECLARATORS +void writeedges(struct mesh *m, struct behavior *b, char *edgefilename, + int argc, char **argv) +#else /* not ANSI_DECLARATORS */ +void writeedges(m, b, edgefilename, argc, argv) +struct mesh *m; +struct behavior *b; +char *edgefilename; +int argc; +char **argv; +#endif /* not ANSI_DECLARATORS */ + +#endif /* not TRILIBRARY */ + +{ +#ifdef TRILIBRARY + int *elist; + int *emlist; + int index; +#else /* not TRILIBRARY */ + FILE *outfile; +#endif /* not TRILIBRARY */ + struct otri triangleloop, trisym; + struct osub checkmark; + vertex p1, p2; + long edgenumber; + triangle ptr; /* Temporary variable used by sym(). */ + subseg sptr; /* Temporary variable used by tspivot(). */ + +#ifdef TRILIBRARY + if (!b->quiet) { + fprintf(stderr, "Writing edges.\n"); + } + /* Allocate memory for edges if necessary. */ + if (*edgelist == (int *) NULL) { + *edgelist = (int *) trimalloc(m->edges * 2 * sizeof(int)); + } + /* Allocate memory for edge markers if necessary. */ + if (!b->nobound && (*edgemarkerlist == (int *) NULL)) { + *edgemarkerlist = (int *) trimalloc(m->edges * sizeof(int)); + } + elist = *edgelist; + emlist = *edgemarkerlist; + index = 0; +#else /* not TRILIBRARY */ + if (!b->quiet) { + fprintf(stderr, "Writing %s.\n", edgefilename); + } + outfile = fopen(edgefilename, "w"); + if (outfile == (FILE *) NULL) { + fprintf(stderr, " Error: Cannot create file %s.\n", edgefilename); + exit(1); + } + /* Number of edges, number of boundary markers (zero or one). */ + fprintf(outfile, "%ld %d\n", m->edges, 1 - b->nobound); +#endif /* not TRILIBRARY */ + + traversalinit(&m->triangles); + triangleloop.tri = triangletraverse(m); + edgenumber = b->firstnumber; + /* To loop over the set of edges, loop over all triangles, and look at */ + /* the three edges of each triangle. If there isn't another triangle */ + /* adjacent to the edge, operate on the edge. If there is another */ + /* adjacent triangle, operate on the edge only if the current triangle */ + /* has a smaller pointer than its neighbor. This way, each edge is */ + /* considered only once. */ + while (triangleloop.tri != (triangle *) NULL) { + for (triangleloop.orient = 0; triangleloop.orient < 3; + triangleloop.orient++) { + sym(triangleloop, trisym); + if ((triangleloop.tri < trisym.tri) || (trisym.tri == m->dummytri)) { + org(triangleloop, p1); + dest(triangleloop, p2); +#ifdef TRILIBRARY + elist[index++] = vertexmark(p1); + elist[index++] = vertexmark(p2); +#endif /* TRILIBRARY */ + if (b->nobound) { +#ifndef TRILIBRARY + /* Edge number, indices of two endpoints. */ + fprintf(outfile, "%4ld %d %d\n", edgenumber, + vertexmark(p1), vertexmark(p2)); +#endif /* not TRILIBRARY */ + } else { + /* Edge number, indices of two endpoints, and a boundary marker. */ + /* If there's no subsegment, the boundary marker is zero. */ + if (b->usesegments) { + tspivot(triangleloop, checkmark); + if (checkmark.ss == m->dummysub) { +#ifdef TRILIBRARY + emlist[edgenumber - b->firstnumber] = 0; +#else /* not TRILIBRARY */ + fprintf(outfile, "%4ld %d %d %d\n", edgenumber, + vertexmark(p1), vertexmark(p2), 0); +#endif /* not TRILIBRARY */ + } else { +#ifdef TRILIBRARY + emlist[edgenumber - b->firstnumber] = mark(checkmark); +#else /* not TRILIBRARY */ + fprintf(outfile, "%4ld %d %d %d\n", edgenumber, + vertexmark(p1), vertexmark(p2), mark(checkmark)); +#endif /* not TRILIBRARY */ + } + } else { +#ifdef TRILIBRARY + emlist[edgenumber - b->firstnumber] = trisym.tri == m->dummytri; +#else /* not TRILIBRARY */ + fprintf(outfile, "%4ld %d %d %d\n", edgenumber, + vertexmark(p1), vertexmark(p2), trisym.tri == m->dummytri); +#endif /* not TRILIBRARY */ + } + } + edgenumber++; + } + } + triangleloop.tri = triangletraverse(m); + } + +#ifndef TRILIBRARY + finishfile(outfile, argc, argv); +#endif /* not TRILIBRARY */ +} + +/*****************************************************************************/ +/* */ +/* writevoronoi() Write the Voronoi diagram to a .v.node and .v.edge */ +/* file. */ +/* */ +/* The Voronoi diagram is the geometric dual of the Delaunay triangulation. */ +/* Hence, the Voronoi vertices are listed by traversing the Delaunay */ +/* triangles, and the Voronoi edges are listed by traversing the Delaunay */ +/* edges. */ +/* */ +/* WARNING: In order to assign numbers to the Voronoi vertices, this */ +/* procedure messes up the subsegments or the extra nodes of every */ +/* element. Hence, you should call this procedure last. */ +/* */ +/*****************************************************************************/ + +#ifdef TRILIBRARY + +#ifdef ANSI_DECLARATORS +void writevoronoi(struct mesh *m, struct behavior *b, REAL **vpointlist, + REAL **vpointattriblist, int **vpointmarkerlist, + int **vedgelist, int **vedgemarkerlist, REAL **vnormlist) +#else /* not ANSI_DECLARATORS */ +void writevoronoi(m, b, vpointlist, vpointattriblist, vpointmarkerlist, + vedgelist, vedgemarkerlist, vnormlist) +struct mesh *m; +struct behavior *b; +REAL **vpointlist; +REAL **vpointattriblist; +int **vpointmarkerlist; +int **vedgelist; +int **vedgemarkerlist; +REAL **vnormlist; +#endif /* not ANSI_DECLARATORS */ + +#else /* not TRILIBRARY */ + +#ifdef ANSI_DECLARATORS +void writevoronoi(struct mesh *m, struct behavior *b, char *vnodefilename, + char *vedgefilename, int argc, char **argv) +#else /* not ANSI_DECLARATORS */ +void writevoronoi(m, b, vnodefilename, vedgefilename, argc, argv) +struct mesh *m; +struct behavior *b; +char *vnodefilename; +char *vedgefilename; +int argc; +char **argv; +#endif /* not ANSI_DECLARATORS */ + +#endif /* not TRILIBRARY */ + +{ +#ifdef TRILIBRARY + REAL *plist; + REAL *palist; + int *elist; + REAL *normlist; + int coordindex; + int attribindex; +#else /* not TRILIBRARY */ + FILE *outfile; +#endif /* not TRILIBRARY */ + struct otri triangleloop, trisym; + vertex torg, tdest, tapex; + REAL circumcenter[2]; + REAL xi, eta; + REAL dum; + long vnodenumber, vedgenumber; + int p1, p2; + int i; + triangle ptr; /* Temporary variable used by sym(). */ + +#ifdef TRILIBRARY + if (!b->quiet) { + fprintf(stderr, "Writing Voronoi vertices.\n"); + } + /* Allocate memory for Voronoi vertices if necessary. */ + if (*vpointlist == (REAL *) NULL) { + *vpointlist = (REAL *) trimalloc(m->triangles.items * 2 * sizeof(REAL)); + } + /* Allocate memory for Voronoi vertex attributes if necessary. */ + if (*vpointattriblist == (REAL *) NULL) { + *vpointattriblist = (REAL *) trimalloc(m->triangles.items * m->nextras * + sizeof(REAL)); + } + *vpointmarkerlist = (int *) NULL; + plist = *vpointlist; + palist = *vpointattriblist; + coordindex = 0; + attribindex = 0; +#else /* not TRILIBRARY */ + if (!b->quiet) { + fprintf(stderr, "Writing %s.\n", vnodefilename); + } + outfile = fopen(vnodefilename, "w"); + if (outfile == (FILE *) NULL) { + fprintf(stderr, " Error: Cannot create file %s.\n", vnodefilename); + exit(1); + } + /* Number of triangles, two dimensions, number of vertex attributes, */ + /* no markers. */ + fprintf(outfile, "%ld %d %d %d\n", m->triangles.items, 2, m->nextras, 0); +#endif /* not TRILIBRARY */ + + traversalinit(&m->triangles); + triangleloop.tri = triangletraverse(m); + triangleloop.orient = 0; + vnodenumber = b->firstnumber; + while (triangleloop.tri != (triangle *) NULL) { + org(triangleloop, torg); + dest(triangleloop, tdest); + apex(triangleloop, tapex); + findcircumcenter(m, b, torg, tdest, tapex, circumcenter, &xi, &eta, &dum); +#ifdef TRILIBRARY + /* X and y coordinates. */ + plist[coordindex++] = circumcenter[0]; + plist[coordindex++] = circumcenter[1]; + for (i = 2; i < 2 + m->nextras; i++) { + /* Interpolate the vertex attributes at the circumcenter. */ + palist[attribindex++] = torg[i] + xi * (tdest[i] - torg[i]) + + eta * (tapex[i] - torg[i]); + } +#else /* not TRILIBRARY */ + /* Voronoi vertex number, x and y coordinates. */ + fprintf(outfile, "%4ld %.17g %.17g", vnodenumber, circumcenter[0], + circumcenter[1]); + for (i = 2; i < 2 + m->nextras; i++) { + /* Interpolate the vertex attributes at the circumcenter. */ + fprintf(outfile, " %.17g", torg[i] + xi * (tdest[i] - torg[i]) + + eta * (tapex[i] - torg[i])); + } + fprintf(outfile, "\n"); +#endif /* not TRILIBRARY */ + + * (int *) (triangleloop.tri + 6) = (int) vnodenumber; + triangleloop.tri = triangletraverse(m); + vnodenumber++; + } + +#ifndef TRILIBRARY + finishfile(outfile, argc, argv); +#endif /* not TRILIBRARY */ + +#ifdef TRILIBRARY + if (!b->quiet) { + fprintf(stderr, "Writing Voronoi edges.\n"); + } + /* Allocate memory for output Voronoi edges if necessary. */ + if (*vedgelist == (int *) NULL) { + *vedgelist = (int *) trimalloc(m->edges * 2 * sizeof(int)); + } + *vedgemarkerlist = (int *) NULL; + /* Allocate memory for output Voronoi norms if necessary. */ + if (*vnormlist == (REAL *) NULL) { + *vnormlist = (REAL *) trimalloc(m->edges * 2 * sizeof(REAL)); + } + elist = *vedgelist; + normlist = *vnormlist; + coordindex = 0; +#else /* not TRILIBRARY */ + if (!b->quiet) { + fprintf(stderr, "Writing %s.\n", vedgefilename); + } + outfile = fopen(vedgefilename, "w"); + if (outfile == (FILE *) NULL) { + fprintf(stderr, " Error: Cannot create file %s.\n", vedgefilename); + exit(1); + } + /* Number of edges, zero boundary markers. */ + fprintf(outfile, "%ld %d\n", m->edges, 0); +#endif /* not TRILIBRARY */ + + traversalinit(&m->triangles); + triangleloop.tri = triangletraverse(m); + vedgenumber = b->firstnumber; + /* To loop over the set of edges, loop over all triangles, and look at */ + /* the three edges of each triangle. If there isn't another triangle */ + /* adjacent to the edge, operate on the edge. If there is another */ + /* adjacent triangle, operate on the edge only if the current triangle */ + /* has a smaller pointer than its neighbor. This way, each edge is */ + /* considered only once. */ + while (triangleloop.tri != (triangle *) NULL) { + for (triangleloop.orient = 0; triangleloop.orient < 3; + triangleloop.orient++) { + sym(triangleloop, trisym); + if ((triangleloop.tri < trisym.tri) || (trisym.tri == m->dummytri)) { + /* Find the number of this triangle (and Voronoi vertex). */ + p1 = * (int *) (triangleloop.tri + 6); + if (trisym.tri == m->dummytri) { + org(triangleloop, torg); + dest(triangleloop, tdest); +#ifdef TRILIBRARY + /* Copy an infinite ray. Index of one endpoint, and -1. */ + elist[coordindex] = p1; + normlist[coordindex++] = tdest[1] - torg[1]; + elist[coordindex] = -1; + normlist[coordindex++] = torg[0] - tdest[0]; +#else /* not TRILIBRARY */ + /* Write an infinite ray. Edge number, index of one endpoint, -1, */ + /* and x and y coordinates of a vector representing the */ + /* direction of the ray. */ + fprintf(outfile, "%4ld %d %d %.17g %.17g\n", vedgenumber, + p1, -1, tdest[1] - torg[1], torg[0] - tdest[0]); +#endif /* not TRILIBRARY */ + } else { + /* Find the number of the adjacent triangle (and Voronoi vertex). */ + p2 = * (int *) (trisym.tri + 6); + /* Finite edge. Write indices of two endpoints. */ +#ifdef TRILIBRARY + elist[coordindex] = p1; + normlist[coordindex++] = 0.0; + elist[coordindex] = p2; + normlist[coordindex++] = 0.0; +#else /* not TRILIBRARY */ + fprintf(outfile, "%4ld %d %d\n", vedgenumber, p1, p2); +#endif /* not TRILIBRARY */ + } + vedgenumber++; + } + } + triangleloop.tri = triangletraverse(m); + } + +#ifndef TRILIBRARY + finishfile(outfile, argc, argv); +#endif /* not TRILIBRARY */ +} + +#ifdef TRILIBRARY + +#ifdef ANSI_DECLARATORS +void writeneighbors(struct mesh *m, struct behavior *b, int **neighborlist) +#else /* not ANSI_DECLARATORS */ +void writeneighbors(m, b, neighborlist) +struct mesh *m; +struct behavior *b; +int **neighborlist; +#endif /* not ANSI_DECLARATORS */ + +#else /* not TRILIBRARY */ + +#ifdef ANSI_DECLARATORS +void writeneighbors(struct mesh *m, struct behavior *b, char *neighborfilename, + int argc, char **argv) +#else /* not ANSI_DECLARATORS */ +void writeneighbors(m, b, neighborfilename, argc, argv) +struct mesh *m; +struct behavior *b; +char *neighborfilename; +int argc; +char **argv; +#endif /* not ANSI_DECLARATORS */ + +#endif /* not TRILIBRARY */ + +{ +#ifdef TRILIBRARY + int *nlist; + int index; +#else /* not TRILIBRARY */ + FILE *outfile; +#endif /* not TRILIBRARY */ + struct otri triangleloop, trisym; + long elementnumber; + int neighbor1, neighbor2, neighbor3; + triangle ptr; /* Temporary variable used by sym(). */ + +#ifdef TRILIBRARY + if (!b->quiet) { + fprintf(stderr, "Writing neighbors.\n"); + } + /* Allocate memory for neighbors if necessary. */ + if (*neighborlist == (int *) NULL) { + *neighborlist = (int *) trimalloc(m->triangles.items * 3 * sizeof(int)); + } + nlist = *neighborlist; + index = 0; +#else /* not TRILIBRARY */ + if (!b->quiet) { + fprintf(stderr, "Writing %s.\n", neighborfilename); + } + outfile = fopen(neighborfilename, "w"); + if (outfile == (FILE *) NULL) { + fprintf(stderr, " Error: Cannot create file %s.\n", neighborfilename); + exit(1); + } + /* Number of triangles, three neighbors per triangle. */ + fprintf(outfile, "%ld %d\n", m->triangles.items, 3); +#endif /* not TRILIBRARY */ + + traversalinit(&m->triangles); + triangleloop.tri = triangletraverse(m); + triangleloop.orient = 0; + elementnumber = b->firstnumber; + while (triangleloop.tri != (triangle *) NULL) { + * (int *) (triangleloop.tri + 6) = (int) elementnumber; + triangleloop.tri = triangletraverse(m); + elementnumber++; + } + * (int *) (m->dummytri + 6) = -1; + + traversalinit(&m->triangles); + triangleloop.tri = triangletraverse(m); + elementnumber = b->firstnumber; + while (triangleloop.tri != (triangle *) NULL) { + triangleloop.orient = 1; + sym(triangleloop, trisym); + neighbor1 = * (int *) (trisym.tri + 6); + triangleloop.orient = 2; + sym(triangleloop, trisym); + neighbor2 = * (int *) (trisym.tri + 6); + triangleloop.orient = 0; + sym(triangleloop, trisym); + neighbor3 = * (int *) (trisym.tri + 6); +#ifdef TRILIBRARY + nlist[index++] = neighbor1; + nlist[index++] = neighbor2; + nlist[index++] = neighbor3; +#else /* not TRILIBRARY */ + /* Triangle number, neighboring triangle numbers. */ + fprintf(outfile, "%4ld %d %d %d\n", elementnumber, + neighbor1, neighbor2, neighbor3); +#endif /* not TRILIBRARY */ + + triangleloop.tri = triangletraverse(m); + elementnumber++; + } + +#ifndef TRILIBRARY + finishfile(outfile, argc, argv); +#endif /* not TRILIBRARY */ +} + +/*****************************************************************************/ +/* */ +/* writeoff() Write the triangulation to an .off file. */ +/* */ +/* OFF stands for the Object File Format, a format used by the Geometry */ +/* Center's Geomview package. */ +/* */ +/*****************************************************************************/ + +#ifndef TRILIBRARY + +#ifdef ANSI_DECLARATORS +void writeoff(struct mesh *m, struct behavior *b, char *offfilename, + int argc, char **argv) +#else /* not ANSI_DECLARATORS */ +void writeoff(m, b, offfilename, argc, argv) +struct mesh *m; +struct behavior *b; +char *offfilename; +int argc; +char **argv; +#endif /* not ANSI_DECLARATORS */ + +{ + FILE *outfile; + struct otri triangleloop; + vertex vertexloop; + vertex p1, p2, p3; + long outvertices; + + if (!b->quiet) { + fprintf(stderr, "Writing %s.\n", offfilename); + } + + if (b->jettison) { + outvertices = m->vertices.items - m->undeads; + } else { + outvertices = m->vertices.items; + } + + outfile = fopen(offfilename, "w"); + if (outfile == (FILE *) NULL) { + fprintf(stderr, " Error: Cannot create file %s.\n", offfilename); + exit(1); + } + /* Number of vertices, triangles, and edges. */ + fprintf(outfile, "OFF\n%ld %ld %ld\n", outvertices, m->triangles.items, + m->edges); + + /* Write the vertices. */ + traversalinit(&m->vertices); + vertexloop = vertextraverse(m); + while (vertexloop != (vertex) NULL) { + if (!b->jettison || (vertextype(vertexloop) != UNDEADVERTEX)) { + /* The "0.0" is here because the OFF format uses 3D coordinates. */ + fprintf(outfile, " %.17g %.17g %.17g\n", vertexloop[0], vertexloop[1], + 0.0); + } + vertexloop = vertextraverse(m); + } + + /* Write the triangles. */ + traversalinit(&m->triangles); + triangleloop.tri = triangletraverse(m); + triangleloop.orient = 0; + while (triangleloop.tri != (triangle *) NULL) { + org(triangleloop, p1); + dest(triangleloop, p2); + apex(triangleloop, p3); + /* The "3" means a three-vertex polygon. */ + fprintf(outfile, " 3 %4d %4d %4d\n", vertexmark(p1) - 1, + vertexmark(p2) - 1, vertexmark(p3) - 1); + triangleloop.tri = triangletraverse(m); + } + finishfile(outfile, argc, argv); +} + +#endif /* not TRILIBRARY */ + +/** **/ +/** **/ +/********* File I/O routines end here *********/ + +/*****************************************************************************/ +/* */ +/* quality_statistics() Print statistics about the quality of the mesh. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void quality_statistics(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +void quality_statistics(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + struct otri triangleloop; + vertex p[3]; + REAL cossquaretable[8]; + REAL ratiotable[16]; + REAL dx[3], dy[3]; + REAL edgelength[3]; + REAL dotproduct; + REAL cossquare; + REAL triarea; + REAL shortest, longest; + REAL trilongest2; + REAL smallestarea, biggestarea; + REAL triminaltitude2; + REAL minaltitude; + REAL triaspect2; + REAL worstaspect; + REAL smallestangle, biggestangle; + REAL radconst, degconst; + int angletable[18]; + int aspecttable[16]; + int aspectindex; + int tendegree; + int acutebiggest; + int i, ii, j, k; + + fprintf(stderr, "Mesh quality statistics:\n\n"); + radconst = PI / 18.0; + degconst = 180.0 / PI; + for (i = 0; i < 8; i++) { + cossquaretable[i] = cos(radconst * (REAL) (i + 1)); + cossquaretable[i] = cossquaretable[i] * cossquaretable[i]; + } + for (i = 0; i < 18; i++) { + angletable[i] = 0; + } + + ratiotable[0] = 1.5; ratiotable[1] = 2.0; + ratiotable[2] = 2.5; ratiotable[3] = 3.0; + ratiotable[4] = 4.0; ratiotable[5] = 6.0; + ratiotable[6] = 10.0; ratiotable[7] = 15.0; + ratiotable[8] = 25.0; ratiotable[9] = 50.0; + ratiotable[10] = 100.0; ratiotable[11] = 300.0; + ratiotable[12] = 1000.0; ratiotable[13] = 10000.0; + ratiotable[14] = 100000.0; ratiotable[15] = 0.0; + for (i = 0; i < 16; i++) { + aspecttable[i] = 0; + } + + worstaspect = 0.0; + minaltitude = m->xmax - m->xmin + m->ymax - m->ymin; + minaltitude = minaltitude * minaltitude; + shortest = minaltitude; + longest = 0.0; + smallestarea = minaltitude; + biggestarea = 0.0; + worstaspect = 0.0; + smallestangle = 0.0; + biggestangle = 2.0; + acutebiggest = 1; + + traversalinit(&m->triangles); + triangleloop.tri = triangletraverse(m); + triangleloop.orient = 0; + while (triangleloop.tri != (triangle *) NULL) { + org(triangleloop, p[0]); + dest(triangleloop, p[1]); + apex(triangleloop, p[2]); + trilongest2 = 0.0; + + for (i = 0; i < 3; i++) { + j = plus1mod3[i]; + k = minus1mod3[i]; + dx[i] = p[j][0] - p[k][0]; + dy[i] = p[j][1] - p[k][1]; + edgelength[i] = dx[i] * dx[i] + dy[i] * dy[i]; + if (edgelength[i] > trilongest2) { + trilongest2 = edgelength[i]; + } + if (edgelength[i] > longest) { + longest = edgelength[i]; + } + if (edgelength[i] < shortest) { + shortest = edgelength[i]; + } + } + + triarea = counterclockwise(m, b, p[0], p[1], p[2]); + if (triarea < smallestarea) { + smallestarea = triarea; + } + if (triarea > biggestarea) { + biggestarea = triarea; + } + triminaltitude2 = triarea * triarea / trilongest2; + if (triminaltitude2 < minaltitude) { + minaltitude = triminaltitude2; + } + triaspect2 = trilongest2 / triminaltitude2; + if (triaspect2 > worstaspect) { + worstaspect = triaspect2; + } + aspectindex = 0; + while ((triaspect2 > ratiotable[aspectindex] * ratiotable[aspectindex]) + && (aspectindex < 15)) { + aspectindex++; + } + aspecttable[aspectindex]++; + + for (i = 0; i < 3; i++) { + j = plus1mod3[i]; + k = minus1mod3[i]; + dotproduct = dx[j] * dx[k] + dy[j] * dy[k]; + cossquare = dotproduct * dotproduct / (edgelength[j] * edgelength[k]); + tendegree = 8; + for (ii = 7; ii >= 0; ii--) { + if (cossquare > cossquaretable[ii]) { + tendegree = ii; + } + } + if (dotproduct <= 0.0) { + angletable[tendegree]++; + if (cossquare > smallestangle) { + smallestangle = cossquare; + } + if (acutebiggest && (cossquare < biggestangle)) { + biggestangle = cossquare; + } + } else { + angletable[17 - tendegree]++; + if (acutebiggest || (cossquare > biggestangle)) { + biggestangle = cossquare; + acutebiggest = 0; + } + } + } + triangleloop.tri = triangletraverse(m); + } + + shortest = sqrt(shortest); + longest = sqrt(longest); + minaltitude = sqrt(minaltitude); + worstaspect = sqrt(worstaspect); + smallestarea *= 0.5; + biggestarea *= 0.5; + if (smallestangle >= 1.0) { + smallestangle = 0.0; + } else { + smallestangle = degconst * acos(sqrt(smallestangle)); + } + if (biggestangle >= 1.0) { + biggestangle = 180.0; + } else { + if (acutebiggest) { + biggestangle = degconst * acos(sqrt(biggestangle)); + } else { + biggestangle = 180.0 - degconst * acos(sqrt(biggestangle)); + } + } + + fprintf(stderr, " Smallest area: %16.5g | Largest area: %16.5g\n", + smallestarea, biggestarea); + fprintf(stderr, " Shortest edge: %16.5g | Longest edge: %16.5g\n", + shortest, longest); + fprintf(stderr, " Shortest altitude: %12.5g | Largest aspect ratio: %8.5g\n\n", + minaltitude, worstaspect); + + fprintf(stderr, " Triangle aspect ratio histogram:\n"); + fprintf(stderr, " 1.1547 - %-6.6g : %8d | %6.6g - %-6.6g : %8d\n", + ratiotable[0], aspecttable[0], ratiotable[7], ratiotable[8], + aspecttable[8]); + for (i = 1; i < 7; i++) { + fprintf(stderr, " %6.6g - %-6.6g : %8d | %6.6g - %-6.6g : %8d\n", + ratiotable[i - 1], ratiotable[i], aspecttable[i], + ratiotable[i + 7], ratiotable[i + 8], aspecttable[i + 8]); + } + fprintf(stderr, " %6.6g - %-6.6g : %8d | %6.6g - : %8d\n", + ratiotable[6], ratiotable[7], aspecttable[7], ratiotable[14], + aspecttable[15]); + fprintf(stderr, " (Aspect ratio is longest edge divided by shortest altitude)\n\n"); + + fprintf(stderr, " Smallest angle: %15.5g | Largest angle: %15.5g\n\n", + smallestangle, biggestangle); + + fprintf(stderr, " Angle histogram:\n"); + for (i = 0; i < 9; i++) { + fprintf(stderr, " %3d - %3d degrees: %8d | %3d - %3d degrees: %8d\n", + i * 10, i * 10 + 10, angletable[i], + i * 10 + 90, i * 10 + 100, angletable[i + 9]); + } + fprintf(stderr, "\n"); +} + +/*****************************************************************************/ +/* */ +/* statistics() Print all sorts of cool facts. */ +/* */ +/*****************************************************************************/ + +#ifdef ANSI_DECLARATORS +void statistics(struct mesh *m, struct behavior *b) +#else /* not ANSI_DECLARATORS */ +void statistics(m, b) +struct mesh *m; +struct behavior *b; +#endif /* not ANSI_DECLARATORS */ + +{ + fprintf(stderr, "\nStatistics:\n\n"); + fprintf(stderr, " Input vertices: %d\n", m->invertices); + if (b->refine) { + fprintf(stderr, " Input triangles: %d\n", m->inelements); + } + if (b->poly) { + fprintf(stderr, " Input segments: %d\n", m->insegments); + if (!b->refine) { + fprintf(stderr, " Input holes: %d\n", m->holes); + } + } + + fprintf(stderr, "\n Mesh vertices: %ld\n", m->vertices.items - m->undeads); + fprintf(stderr, " Mesh triangles: %ld\n", m->triangles.items); + fprintf(stderr, " Mesh edges: %ld\n", m->edges); + fprintf(stderr, " Mesh exterior boundary edges: %ld\n", m->hullsize); + if (b->poly || b->refine) { + fprintf(stderr, " Mesh interior boundary edges: %ld\n", + m->subsegs.items - m->hullsize); + fprintf(stderr, " Mesh subsegments (constrained edges): %ld\n", + m->subsegs.items); + } + fprintf(stderr, "\n"); + + if (b->verbose) { + quality_statistics(m, b); + fprintf(stderr, "Memory allocation statistics:\n\n"); + fprintf(stderr, " Maximum number of vertices: %ld\n", m->vertices.maxitems); + fprintf(stderr, " Maximum number of triangles: %ld\n", m->triangles.maxitems); + if (m->subsegs.maxitems > 0) { + fprintf(stderr, " Maximum number of subsegments: %ld\n", m->subsegs.maxitems); + } + if (m->viri.maxitems > 0) { + fprintf(stderr, " Maximum number of viri: %ld\n", m->viri.maxitems); + } + if (m->badsubsegs.maxitems > 0) { + fprintf(stderr, " Maximum number of encroached subsegments: %ld\n", + m->badsubsegs.maxitems); + } + if (m->badtriangles.maxitems > 0) { + fprintf(stderr, " Maximum number of bad triangles: %ld\n", + m->badtriangles.maxitems); + } + if (m->flipstackers.maxitems > 0) { + fprintf(stderr, " Maximum number of stacked triangle flips: %ld\n", + m->flipstackers.maxitems); + } + if (m->splaynodes.maxitems > 0) { + fprintf(stderr, " Maximum number of splay tree nodes: %ld\n", + m->splaynodes.maxitems); + } + fprintf(stderr, " Approximate heap memory use (bytes): %ld\n\n", + m->vertices.maxitems * m->vertices.itembytes + + m->triangles.maxitems * m->triangles.itembytes + + m->subsegs.maxitems * m->subsegs.itembytes + + m->viri.maxitems * m->viri.itembytes + + m->badsubsegs.maxitems * m->badsubsegs.itembytes + + m->badtriangles.maxitems * m->badtriangles.itembytes + + m->flipstackers.maxitems * m->flipstackers.itembytes + + m->splaynodes.maxitems * m->splaynodes.itembytes); + + fprintf(stderr, "Algorithmic statistics:\n\n"); + if (!b->weighted) { + fprintf(stderr, " Number of incircle tests: %ld\n", m->incirclecount); + } else { + fprintf(stderr, " Number of 3D orientation tests: %ld\n", m->orient3dcount); + } + fprintf(stderr, " Number of 2D orientation tests: %ld\n", m->counterclockcount); + if (m->hyperbolacount > 0) { + fprintf(stderr, " Number of right-of-hyperbola tests: %ld\n", + m->hyperbolacount); + } + if (m->circletopcount > 0) { + fprintf(stderr, " Number of circle top computations: %ld\n", + m->circletopcount); + } + if (m->circumcentercount > 0) { + fprintf(stderr, " Number of triangle circumcenter computations: %ld\n", + m->circumcentercount); + } + fprintf(stderr, "\n"); + } +} + +/*****************************************************************************/ +/* */ +/* main() or triangulate() Gosh, do everything. */ +/* */ +/* The sequence is roughly as follows. Many of these steps can be skipped, */ +/* depending on the command line switches. */ +/* */ +/* - Initialize constants and parse the command line. */ +/* - Read the vertices from a file and either */ +/* - triangulate them (no -r), or */ +/* - read an old mesh from files and reconstruct it (-r). */ +/* - Insert the PSLG segments (-p), and possibly segments on the convex */ +/* hull (-c). */ +/* - Read the holes (-p), regional attributes (-pA), and regional area */ +/* constraints (-pa). Carve the holes and concavities, and spread the */ +/* regional attributes and area constraints. */ +/* - Enforce the constraints on minimum angle (-q) and maximum area (-a). */ +/* Also enforce the conforming Delaunay property (-q and -a). */ +/* - Compute the number of edges in the resulting mesh. */ +/* - Promote the mesh's linear triangles to higher order elements (-o). */ +/* - Write the output files and print the statistics. */ +/* - Check the consistency and Delaunay property of the mesh (-C). */ +/* */ +/*****************************************************************************/ + +#ifdef TRILIBRARY + +#ifdef ANSI_DECLARATORS +void triangulate(char *triswitches, struct triangulateio *in, + struct triangulateio *out, struct triangulateio *vorout) +#else /* not ANSI_DECLARATORS */ +void triangulate(triswitches, in, out, vorout) +char *triswitches; +struct triangulateio *in; +struct triangulateio *out; +struct triangulateio *vorout; +#endif /* not ANSI_DECLARATORS */ + +#else /* not TRILIBRARY */ + +#ifdef ANSI_DECLARATORS +int main(int argc, char **argv) +#else /* not ANSI_DECLARATORS */ +int main(argc, argv) +int argc; +char **argv; +#endif /* not ANSI_DECLARATORS */ + +#endif /* not TRILIBRARY */ + +{ + struct mesh m; + struct behavior b; + REAL *holearray; /* Array of holes. */ + REAL *regionarray; /* Array of regional attributes and area constraints. */ +#ifndef TRILIBRARY + FILE *polyfile; +#endif /* not TRILIBRARY */ +#ifndef NO_TIMER + /* Variables for timing the performance of Triangle. The types are */ + /* defined in sys/time.h. */ + struct timeval tv0, tv1, tv2, tv3, tv4, tv5, tv6; + struct timezone tz; +#endif /* not NO_TIMER */ + +#ifndef NO_TIMER + gettimeofday(&tv0, &tz); +#endif /* not NO_TIMER */ + + triangleinit(&m); +#ifdef TRILIBRARY + parsecommandline(1, &triswitches, &b); +#else /* not TRILIBRARY */ + parsecommandline(argc, argv, &b); +#endif /* not TRILIBRARY */ + m.steinerleft = b.steiner; + +#ifdef TRILIBRARY + transfernodes(&m, &b, in->pointlist, in->pointattributelist, + in->pointmarkerlist, in->numberofpoints, + in->numberofpointattributes); +#else /* not TRILIBRARY */ + readnodes(&m, &b, b.innodefilename, b.inpolyfilename, &polyfile); +#endif /* not TRILIBRARY */ + +#ifndef NO_TIMER + if (!b.quiet) { + gettimeofday(&tv1, &tz); + } +#endif /* not NO_TIMER */ + +#ifdef CDT_ONLY + m.hullsize = delaunay(&m, &b); /* Triangulate the vertices. */ +#else /* not CDT_ONLY */ + if (b.refine) { + /* Read and reconstruct a mesh. */ +#ifdef TRILIBRARY + m.hullsize = reconstruct(&m, &b, in->trianglelist, + in->triangleattributelist, in->trianglearealist, + in->numberoftriangles, in->numberofcorners, + in->numberoftriangleattributes, + in->segmentlist, in->segmentmarkerlist, + in->numberofsegments); +#else /* not TRILIBRARY */ + m.hullsize = reconstruct(&m, &b, b.inelefilename, b.areafilename, + b.inpolyfilename, polyfile); +#endif /* not TRILIBRARY */ + } else { + m.hullsize = delaunay(&m, &b); /* Triangulate the vertices. */ + } +#endif /* not CDT_ONLY */ + +#ifndef NO_TIMER + if (!b.quiet) { + gettimeofday(&tv2, &tz); + if (b.refine) { + fprintf(stderr, "Mesh reconstruction"); + } else { + fprintf(stderr, "Delaunay"); + } + fprintf(stderr, " milliseconds: %ld\n", 1000l * (tv2.tv_sec - tv1.tv_sec) + + (tv2.tv_usec - tv1.tv_usec) / 1000l); + } +#endif /* not NO_TIMER */ + + /* Ensure that no vertex can be mistaken for a triangular bounding */ + /* box vertex in insertvertex(). */ + m.infvertex1 = (vertex) NULL; + m.infvertex2 = (vertex) NULL; + m.infvertex3 = (vertex) NULL; + + if (b.usesegments) { + m.checksegments = 1; /* Segments will be introduced next. */ + if (!b.refine) { + /* Insert PSLG segments and/or convex hull segments. */ +#ifdef TRILIBRARY + formskeleton(&m, &b, in->segmentlist, + in->segmentmarkerlist, in->numberofsegments); +#else /* not TRILIBRARY */ + formskeleton(&m, &b, polyfile, b.inpolyfilename); +#endif /* not TRILIBRARY */ + } + } + +#ifndef NO_TIMER + if (!b.quiet) { + gettimeofday(&tv3, &tz); + if (b.usesegments && !b.refine) { + fprintf(stderr, "Segment milliseconds: %ld\n", + 1000l * (tv3.tv_sec - tv2.tv_sec) + + (tv3.tv_usec - tv2.tv_usec) / 1000l); + } + } +#endif /* not NO_TIMER */ + + if (b.poly && (m.triangles.items > 0)) { +#ifdef TRILIBRARY + holearray = in->holelist; + m.holes = in->numberofholes; + regionarray = in->regionlist; + m.regions = in->numberofregions; +#else /* not TRILIBRARY */ + readholes(&m, &b, polyfile, b.inpolyfilename, &holearray, &m.holes, + ®ionarray, &m.regions); +#endif /* not TRILIBRARY */ + if (!b.refine) { + /* Carve out holes and concavities. */ + carveholes(&m, &b, holearray, m.holes, regionarray, m.regions); + } + } else { + /* Without a PSLG, there can be no holes or regional attributes */ + /* or area constraints. The following are set to zero to avoid */ + /* an accidental free() later. */ + m.holes = 0; + m.regions = 0; + } + +#ifndef NO_TIMER + if (!b.quiet) { + gettimeofday(&tv4, &tz); + if (b.poly && !b.refine) { + fprintf(stderr, "Hole milliseconds: %ld\n", 1000l * (tv4.tv_sec - tv3.tv_sec) + + (tv4.tv_usec - tv3.tv_usec) / 1000l); + } + } +#endif /* not NO_TIMER */ + +#ifndef CDT_ONLY + if (b.quality && (m.triangles.items > 0)) { + enforcequality(&m, &b); /* Enforce angle and area constraints. */ + } +#endif /* not CDT_ONLY */ + +#ifndef NO_TIMER + if (!b.quiet) { + gettimeofday(&tv5, &tz); +#ifndef CDT_ONLY + if (b.quality) { + fprintf(stderr, "Quality milliseconds: %ld\n", + 1000l * (tv5.tv_sec - tv4.tv_sec) + + (tv5.tv_usec - tv4.tv_usec) / 1000l); + } +#endif /* not CDT_ONLY */ + } +#endif /* not NO_TIMER */ + + /* Calculate the number of edges. */ + m.edges = (3l * m.triangles.items + m.hullsize) / 2l; + + if (b.order > 1) { + highorder(&m, &b); /* Promote elements to higher polynomial order. */ + } + if (!b.quiet) { + fprintf(stderr, "\n"); + } + +#ifdef TRILIBRARY + out->numberofpoints = m.vertices.items; + out->numberofpointattributes = m.nextras; + out->numberoftriangles = m.triangles.items; + out->numberofcorners = (b.order + 1) * (b.order + 2) / 2; + out->numberoftriangleattributes = m.eextras; + out->numberofedges = m.edges; + if (b.usesegments) { + out->numberofsegments = m.subsegs.items; + } else { + out->numberofsegments = m.hullsize; + } + if (vorout != (struct triangulateio *) NULL) { + vorout->numberofpoints = m.triangles.items; + vorout->numberofpointattributes = m.nextras; + vorout->numberofedges = m.edges; + } +#endif /* TRILIBRARY */ + /* If not using iteration numbers, don't write a .node file if one was */ + /* read, because the original one would be overwritten! */ + if (b.nonodewritten || (b.noiterationnum && m.readnodefile)) { + if (!b.quiet) { +#ifdef TRILIBRARY + fprintf(stderr, "NOT writing vertices.\n"); +#else /* not TRILIBRARY */ + fprintf(stderr, "NOT writing a .node file.\n"); +#endif /* not TRILIBRARY */ + } + numbernodes(&m, &b); /* We must remember to number the vertices. */ + } else { + /* writenodes() numbers the vertices too. */ +#ifdef TRILIBRARY + writenodes(&m, &b, &out->pointlist, &out->pointattributelist, + &out->pointmarkerlist); +#else /* not TRILIBRARY */ + writenodes(&m, &b, b.outnodefilename, argc, argv); +#endif /* TRILIBRARY */ + } + if (b.noelewritten) { + if (!b.quiet) { +#ifdef TRILIBRARY + fprintf(stderr, "NOT writing triangles.\n"); +#else /* not TRILIBRARY */ + fprintf(stderr, "NOT writing an .ele file.\n"); +#endif /* not TRILIBRARY */ + } + } else { +#ifdef TRILIBRARY + writeelements(&m, &b, &out->trianglelist, &out->triangleattributelist); +#else /* not TRILIBRARY */ + writeelements(&m, &b, b.outelefilename, argc, argv); +#endif /* not TRILIBRARY */ + } + /* The -c switch (convex switch) causes a PSLG to be written */ + /* even if none was read. */ + if (b.poly || b.convex) { + /* If not using iteration numbers, don't overwrite the .poly file. */ + if (b.nopolywritten || b.noiterationnum) { + if (!b.quiet) { +#ifdef TRILIBRARY + fprintf(stderr, "NOT writing segments.\n"); +#else /* not TRILIBRARY */ + fprintf(stderr, "NOT writing a .poly file.\n"); +#endif /* not TRILIBRARY */ + } + } else { +#ifdef TRILIBRARY + writepoly(&m, &b, &out->segmentlist, &out->segmentmarkerlist); + out->numberofholes = m.holes; + out->numberofregions = m.regions; + if (b.poly) { + out->holelist = in->holelist; + out->regionlist = in->regionlist; + } else { + out->holelist = (REAL *) NULL; + out->regionlist = (REAL *) NULL; + } +#else /* not TRILIBRARY */ + writepoly(&m, &b, b.outpolyfilename, holearray, m.holes, regionarray, + m.regions, argc, argv); +#endif /* not TRILIBRARY */ + } + } +#ifndef TRILIBRARY +#ifndef CDT_ONLY + if (m.regions > 0) { + trifree((VOID *) regionarray); + } +#endif /* not CDT_ONLY */ + if (m.holes > 0) { + trifree((VOID *) holearray); + } + if (b.geomview) { + writeoff(&m, &b, b.offfilename, argc, argv); + } +#endif /* not TRILIBRARY */ + if (b.edgesout) { +#ifdef TRILIBRARY + writeedges(&m, &b, &out->edgelist, &out->edgemarkerlist); +#else /* not TRILIBRARY */ + writeedges(&m, &b, b.edgefilename, argc, argv); +#endif /* not TRILIBRARY */ + } + if (b.voronoi) { +#ifdef TRILIBRARY + writevoronoi(&m, &b, &vorout->pointlist, &vorout->pointattributelist, + &vorout->pointmarkerlist, &vorout->edgelist, + &vorout->edgemarkerlist, &vorout->normlist); +#else /* not TRILIBRARY */ + writevoronoi(&m, &b, b.vnodefilename, b.vedgefilename, argc, argv); +#endif /* not TRILIBRARY */ + } + if (b.neighbors) { +#ifdef TRILIBRARY + writeneighbors(&m, &b, &out->neighborlist); +#else /* not TRILIBRARY */ + writeneighbors(&m, &b, b.neighborfilename, argc, argv); +#endif /* not TRILIBRARY */ + } + + if (!b.quiet) { +#ifndef NO_TIMER + gettimeofday(&tv6, &tz); + fprintf(stderr, "\nOutput milliseconds: %ld\n", + 1000l * (tv6.tv_sec - tv5.tv_sec) + + (tv6.tv_usec - tv5.tv_usec) / 1000l); + fprintf(stderr, "Total running milliseconds: %ld\n", + 1000l * (tv6.tv_sec - tv0.tv_sec) + + (tv6.tv_usec - tv0.tv_usec) / 1000l); +#endif /* not NO_TIMER */ + + statistics(&m, &b); + } + +#ifndef REDUCED + if (b.docheck) { + checkmesh(&m, &b); + checkdelaunay(&m, &b); + } +#endif /* not REDUCED */ + + triangledeinit(&m, &b); +#ifndef TRILIBRARY + return 0; +#endif /* not TRILIBRARY */ +} diff --git a/autoarray/util/nn/src/nn/triangle.h b/autoarray/util/nn/src/nn/triangle.h index 5b17f96f6..43693a40e 100644 --- a/autoarray/util/nn/src/nn/triangle.h +++ b/autoarray/util/nn/src/nn/triangle.h @@ -1,288 +1,288 @@ -/*****************************************************************************/ -/* */ -/* (triangle.h) */ -/* */ -/* Include file for programs that call Triangle. */ -/* */ -/* Accompanies Triangle Versions 1.3 and 1.4 */ -/* July 19, 1996 */ -/* */ -/* Copyright 1996 */ -/* Jonathan Richard Shewchuk */ -/* 2360 Woolsey #H */ -/* Berkeley, California 94705-1927 */ -/* jrs@cs.berkeley.edu */ -/* */ -/*****************************************************************************/ - -/*****************************************************************************/ -/* */ -/* How to call Triangle from another program */ -/* */ -/* */ -/* If you haven't read Triangle's instructions (run "triangle -h" to read */ -/* them), you won't understand what follows. */ -/* */ -/* Triangle must be compiled into an object file (triangle.o) with the */ -/* TRILIBRARY symbol defined (preferably by using the -DTRILIBRARY compiler */ -/* switch). The makefile included with Triangle will do this for you if */ -/* you run "make trilibrary". The resulting object file can be called via */ -/* the procedure triangulate(). */ -/* */ -/* If the size of the object file is important to you, you may wish to */ -/* generate a reduced version of triangle.o. The REDUCED symbol gets rid */ -/* of all features that are primarily of research interest. Specifically, */ -/* the -DREDUCED switch eliminates Triangle's -i, -F, -s, and -C switches. */ -/* The CDT_ONLY symbol gets rid of all meshing algorithms above and beyond */ -/* constrained Delaunay triangulation. Specifically, the -DCDT_ONLY switch */ -/* eliminates Triangle's -r, -q, -a, -S, and -s switches. */ -/* */ -/* IMPORTANT: These definitions (TRILIBRARY, REDUCED, CDT_ONLY) must be */ -/* made in the makefile or in triangle.c itself. Putting these definitions */ -/* in this file will not create the desired effect. */ -/* */ -/* */ -/* The calling convention for triangulate() follows. */ -/* */ -/* void triangulate(triswitches, in, out, vorout) */ -/* char *triswitches; */ -/* struct triangulateio *in; */ -/* struct triangulateio *out; */ -/* struct triangulateio *vorout; */ -/* */ -/* `triswitches' is a string containing the command line switches you wish */ -/* to invoke. No initial dash is required. Some suggestions: */ -/* */ -/* - You'll probably find it convenient to use the `z' switch so that */ -/* points (and other items) are numbered from zero. This simplifies */ -/* indexing, because the first item of any type always starts at index */ -/* [0] of the corresponding array, whether that item's number is zero or */ -/* one. */ -/* - You'll probably want to use the `Q' (quiet) switch in your final code, */ -/* but you can take advantage of Triangle's printed output (including the */ -/* `V' switch) while debugging. */ -/* - If you are not using the `q' or `a' switches, then the output points */ -/* will be identical to the input points, except possibly for the */ -/* boundary markers. If you don't need the boundary markers, you should */ -/* use the `N' (no nodes output) switch to save memory. (If you do need */ -/* boundary markers, but need to save memory, a good nasty trick is to */ -/* set out->pointlist equal to in->pointlist before calling triangulate(),*/ -/* so that Triangle overwrites the input points with identical copies.) */ -/* - The `I' (no iteration numbers) and `g' (.off file output) switches */ -/* have no effect when Triangle is compiled with TRILIBRARY defined. */ -/* */ -/* `in', `out', and `vorout' are descriptions of the input, the output, */ -/* and the Voronoi output. If the `v' (Voronoi output) switch is not used, */ -/* `vorout' may be NULL. `in' and `out' may never be NULL. */ -/* */ -/* Certain fields of the input and output structures must be initialized, */ -/* as described below. */ -/* */ -/*****************************************************************************/ - -/*****************************************************************************/ -/* */ -/* The `triangulateio' structure. */ -/* */ -/* Used to pass data into and out of the triangulate() procedure. */ -/* */ -/* */ -/* Arrays are used to store points, triangles, markers, and so forth. In */ -/* all cases, the first item in any array is stored starting at index [0]. */ -/* However, that item is item number `1' unless the `z' switch is used, in */ -/* which case it is item number `0'. Hence, you may find it easier to */ -/* index points (and triangles in the neighbor list) if you use the `z' */ -/* switch. Unless, of course, you're calling Triangle from a Fortran */ -/* program. */ -/* */ -/* Description of fields (except the `numberof' fields, which are obvious): */ -/* */ -/* `pointlist': An array of point coordinates. The first point's x */ -/* coordinate is at index [0] and its y coordinate at index [1], followed */ -/* by the coordinates of the remaining points. Each point occupies two */ -/* REALs. */ -/* `pointattributelist': An array of point attributes. Each point's */ -/* attributes occupy `numberofpointattributes' REALs. */ -/* `pointmarkerlist': An array of point markers; one int per point. */ -/* */ -/* `trianglelist': An array of triangle corners. The first triangle's */ -/* first corner is at index [0], followed by its other two corners in */ -/* counterclockwise order, followed by any other nodes if the triangle */ -/* represents a nonlinear element. Each triangle occupies */ -/* `numberofcorners' ints. */ -/* `triangleattributelist': An array of triangle attributes. Each */ -/* triangle's attributes occupy `numberoftriangleattributes' REALs. */ -/* `trianglearealist': An array of triangle area constraints; one REAL per */ -/* triangle. Input only. */ -/* `neighborlist': An array of triangle neighbors; three ints per */ -/* triangle. Output only. */ -/* */ -/* `segmentlist': An array of segment endpoints. The first segment's */ -/* endpoints are at indices [0] and [1], followed by the remaining */ -/* segments. Two ints per segment. */ -/* `segmentmarkerlist': An array of segment markers; one int per segment. */ -/* */ -/* `holelist': An array of holes. The first hole's x and y coordinates */ -/* are at indices [0] and [1], followed by the remaining holes. Two */ -/* REALs per hole. Input only, although the pointer is copied to the */ -/* output structure for your convenience. */ -/* */ -/* `regionlist': An array of regional attributes and area constraints. */ -/* The first constraint's x and y coordinates are at indices [0] and [1], */ -/* followed by the regional attribute and index [2], followed by the */ -/* maximum area at index [3], followed by the remaining area constraints. */ -/* Four REALs per area constraint. Note that each regional attribute is */ -/* used only if you select the `A' switch, and each area constraint is */ -/* used only if you select the `a' switch (with no number following), but */ -/* omitting one of these switches does not change the memory layout. */ -/* Input only, although the pointer is copied to the output structure for */ -/* your convenience. */ -/* */ -/* `edgelist': An array of edge endpoints. The first edge's endpoints are */ -/* at indices [0] and [1], followed by the remaining edges. Two ints per */ -/* edge. Output only. */ -/* `edgemarkerlist': An array of edge markers; one int per edge. Output */ -/* only. */ -/* `normlist': An array of normal vectors, used for infinite rays in */ -/* Voronoi diagrams. The first normal vector's x and y magnitudes are */ -/* at indices [0] and [1], followed by the remaining vectors. For each */ -/* finite edge in a Voronoi diagram, the normal vector written is the */ -/* zero vector. Two REALs per edge. Output only. */ -/* */ -/* */ -/* Any input fields that Triangle will examine must be initialized. */ -/* Furthermore, for each output array that Triangle will write to, you */ -/* must either provide space by setting the appropriate pointer to point */ -/* to the space you want the data written to, or you must initialize the */ -/* pointer to NULL, which tells Triangle to allocate space for the results. */ -/* The latter option is preferable, because Triangle always knows exactly */ -/* how much space to allocate. The former option is provided mainly for */ -/* people who need to call Triangle from Fortran code, though it also makes */ -/* possible some nasty space-saving tricks, like writing the output to the */ -/* same arrays as the input. */ -/* */ -/* Triangle will not free() any input or output arrays, including those it */ -/* allocates itself; that's up to you. */ -/* */ -/* Here's a guide to help you decide which fields you must initialize */ -/* before you call triangulate(). */ -/* */ -/* `in': */ -/* */ -/* - `pointlist' must always point to a list of points; `numberofpoints' */ -/* and `numberofpointattributes' must be properly set. */ -/* `pointmarkerlist' must either be set to NULL (in which case all */ -/* markers default to zero), or must point to a list of markers. If */ -/* `numberofpointattributes' is not zero, `pointattributelist' must */ -/* point to a list of point attributes. */ -/* - If the `r' switch is used, `trianglelist' must point to a list of */ -/* triangles, and `numberoftriangles', `numberofcorners', and */ -/* `numberoftriangleattributes' must be properly set. If */ -/* `numberoftriangleattributes' is not zero, `triangleattributelist' */ -/* must point to a list of triangle attributes. If the `a' switch is */ -/* used (with no number following), `trianglearealist' must point to a */ -/* list of triangle area constraints. `neighborlist' may be ignored. */ -/* - If the `p' switch is used, `segmentlist' must point to a list of */ -/* segments, `numberofsegments' must be properly set, and */ -/* `segmentmarkerlist' must either be set to NULL (in which case all */ -/* markers default to zero), or must point to a list of markers. */ -/* - If the `p' switch is used without the `r' switch, then */ -/* `numberofholes' and `numberofregions' must be properly set. If */ -/* `numberofholes' is not zero, `holelist' must point to a list of */ -/* holes. If `numberofregions' is not zero, `regionlist' must point to */ -/* a list of region constraints. */ -/* - If the `p' switch is used, `holelist', `numberofholes', */ -/* `regionlist', and `numberofregions' is copied to `out'. (You can */ -/* nonetheless get away with not initializing them if the `r' switch is */ -/* used.) */ -/* - `edgelist', `edgemarkerlist', `normlist', and `numberofedges' may be */ -/* ignored. */ -/* */ -/* `out': */ -/* */ -/* - `pointlist' must be initialized (NULL or pointing to memory) unless */ -/* the `N' switch is used. `pointmarkerlist' must be initialized */ -/* unless the `N' or `B' switch is used. If `N' is not used and */ -/* `in->numberofpointattributes' is not zero, `pointattributelist' must */ -/* be initialized. */ -/* - `trianglelist' must be initialized unless the `E' switch is used. */ -/* `neighborlist' must be initialized if the `n' switch is used. If */ -/* the `E' switch is not used and (`in->numberofelementattributes' is */ -/* not zero or the `A' switch is used), `elementattributelist' must be */ -/* initialized. `trianglearealist' may be ignored. */ -/* - `segmentlist' must be initialized if the `p' or `c' switch is used, */ -/* and the `P' switch is not used. `segmentmarkerlist' must also be */ -/* initialized under these circumstances unless the `B' switch is used. */ -/* - `edgelist' must be initialized if the `e' switch is used. */ -/* `edgemarkerlist' must be initialized if the `e' switch is used and */ -/* the `B' switch is not. */ -/* - `holelist', `regionlist', `normlist', and all scalars may be ignored.*/ -/* */ -/* `vorout' (only needed if `v' switch is used): */ -/* */ -/* - `pointlist' must be initialized. If `in->numberofpointattributes' */ -/* is not zero, `pointattributelist' must be initialized. */ -/* `pointmarkerlist' may be ignored. */ -/* - `edgelist' and `normlist' must both be initialized. */ -/* `edgemarkerlist' may be ignored. */ -/* - Everything else may be ignored. */ -/* */ -/* After a call to triangulate(), the valid fields of `out' and `vorout' */ -/* will depend, in an obvious way, on the choice of switches used. Note */ -/* that when the `p' switch is used, the pointers `holelist' and */ -/* `regionlist' are copied from `in' to `out', but no new space is */ -/* allocated; be careful that you don't free() the same array twice. On */ -/* the other hand, Triangle will never copy the `pointlist' pointer (or any */ -/* others); new space is allocated for `out->pointlist', or if the `N' */ -/* switch is used, `out->pointlist' remains uninitialized. */ -/* */ -/* All of the meaningful `numberof' fields will be properly set; for */ -/* instance, `numberofedges' will represent the number of edges in the */ -/* triangulation whether or not the edges were written. If segments are */ -/* not used, `numberofsegments' will indicate the number of boundary edges. */ -/* */ -/*****************************************************************************/ - -#ifdef SINGLE -#define REAL float -#else /* not SINGLE */ -#define REAL double -#endif /* not SINGLE */ - -struct triangulateio { - REAL *pointlist; /* In / out */ - REAL *pointattributelist; /* In / out */ - int *pointmarkerlist; /* In / out */ - int numberofpoints; /* In / out */ - int numberofpointattributes; /* In / out */ - - int *trianglelist; /* In / out */ - REAL *triangleattributelist; /* In / out */ - REAL *trianglearealist; /* In only */ - int *neighborlist; /* Out only */ - int numberoftriangles; /* In / out */ - int numberofcorners; /* In / out */ - int numberoftriangleattributes; /* In / out */ - - int *segmentlist; /* In / out */ - int *segmentmarkerlist; /* In / out */ - int numberofsegments; /* In / out */ - - REAL *holelist; /* In / pointer to array copied out */ - int numberofholes; /* In / copied out */ - - REAL *regionlist; /* In / pointer to array copied out */ - int numberofregions; /* In / copied out */ - - int *edgelist; /* Out only */ - int *edgemarkerlist; /* Not used with Voronoi diagram; out only */ - REAL *normlist; /* Used only with Voronoi diagram; out only */ - int numberofedges; /* Out only */ -}; - -#ifdef ANSI_DECLARATORS -void triangulate(char *, struct triangulateio *, struct triangulateio *, - struct triangulateio *); -#else /* not ANSI_DECLARATORS */ -void triangulate(); -#endif /* not ANSI_DECLARATORS */ +/*****************************************************************************/ +/* */ +/* (triangle.h) */ +/* */ +/* Include file for programs that call Triangle. */ +/* */ +/* Accompanies Triangle Versions 1.3 and 1.4 */ +/* July 19, 1996 */ +/* */ +/* Copyright 1996 */ +/* Jonathan Richard Shewchuk */ +/* 2360 Woolsey #H */ +/* Berkeley, California 94705-1927 */ +/* jrs@cs.berkeley.edu */ +/* */ +/*****************************************************************************/ + +/*****************************************************************************/ +/* */ +/* How to call Triangle from another program */ +/* */ +/* */ +/* If you haven't read Triangle's instructions (run "triangle -h" to read */ +/* them), you won't understand what follows. */ +/* */ +/* Triangle must be compiled into an object file (triangle.o) with the */ +/* TRILIBRARY symbol defined (preferably by using the -DTRILIBRARY compiler */ +/* switch). The makefile included with Triangle will do this for you if */ +/* you run "make trilibrary". The resulting object file can be called via */ +/* the procedure triangulate(). */ +/* */ +/* If the size of the object file is important to you, you may wish to */ +/* generate a reduced version of triangle.o. The REDUCED symbol gets rid */ +/* of all features that are primarily of research interest. Specifically, */ +/* the -DREDUCED switch eliminates Triangle's -i, -F, -s, and -C switches. */ +/* The CDT_ONLY symbol gets rid of all meshing algorithms above and beyond */ +/* constrained Delaunay triangulation. Specifically, the -DCDT_ONLY switch */ +/* eliminates Triangle's -r, -q, -a, -S, and -s switches. */ +/* */ +/* IMPORTANT: These definitions (TRILIBRARY, REDUCED, CDT_ONLY) must be */ +/* made in the makefile or in triangle.c itself. Putting these definitions */ +/* in this file will not create the desired effect. */ +/* */ +/* */ +/* The calling convention for triangulate() follows. */ +/* */ +/* void triangulate(triswitches, in, out, vorout) */ +/* char *triswitches; */ +/* struct triangulateio *in; */ +/* struct triangulateio *out; */ +/* struct triangulateio *vorout; */ +/* */ +/* `triswitches' is a string containing the command line switches you wish */ +/* to invoke. No initial dash is required. Some suggestions: */ +/* */ +/* - You'll probably find it convenient to use the `z' switch so that */ +/* points (and other items) are numbered from zero. This simplifies */ +/* indexing, because the first item of any type always starts at index */ +/* [0] of the corresponding array, whether that item's number is zero or */ +/* one. */ +/* - You'll probably want to use the `Q' (quiet) switch in your final code, */ +/* but you can take advantage of Triangle's printed output (including the */ +/* `V' switch) while debugging. */ +/* - If you are not using the `q' or `a' switches, then the output points */ +/* will be identical to the input points, except possibly for the */ +/* boundary markers. If you don't need the boundary markers, you should */ +/* use the `N' (no nodes output) switch to save memory. (If you do need */ +/* boundary markers, but need to save memory, a good nasty trick is to */ +/* set out->pointlist equal to in->pointlist before calling triangulate(),*/ +/* so that Triangle overwrites the input points with identical copies.) */ +/* - The `I' (no iteration numbers) and `g' (.off file output) switches */ +/* have no effect when Triangle is compiled with TRILIBRARY defined. */ +/* */ +/* `in', `out', and `vorout' are descriptions of the input, the output, */ +/* and the Voronoi output. If the `v' (Voronoi output) switch is not used, */ +/* `vorout' may be NULL. `in' and `out' may never be NULL. */ +/* */ +/* Certain fields of the input and output structures must be initialized, */ +/* as described below. */ +/* */ +/*****************************************************************************/ + +/*****************************************************************************/ +/* */ +/* The `triangulateio' structure. */ +/* */ +/* Used to pass data into and out of the triangulate() procedure. */ +/* */ +/* */ +/* Arrays are used to store points, triangles, markers, and so forth. In */ +/* all cases, the first item in any array is stored starting at index [0]. */ +/* However, that item is item number `1' unless the `z' switch is used, in */ +/* which case it is item number `0'. Hence, you may find it easier to */ +/* index points (and triangles in the neighbor list) if you use the `z' */ +/* switch. Unless, of course, you're calling Triangle from a Fortran */ +/* program. */ +/* */ +/* Description of fields (except the `numberof' fields, which are obvious): */ +/* */ +/* `pointlist': An array of point coordinates. The first point's x */ +/* coordinate is at index [0] and its y coordinate at index [1], followed */ +/* by the coordinates of the remaining points. Each point occupies two */ +/* REALs. */ +/* `pointattributelist': An array of point attributes. Each point's */ +/* attributes occupy `numberofpointattributes' REALs. */ +/* `pointmarkerlist': An array of point markers; one int per point. */ +/* */ +/* `trianglelist': An array of triangle corners. The first triangle's */ +/* first corner is at index [0], followed by its other two corners in */ +/* counterclockwise order, followed by any other nodes if the triangle */ +/* represents a nonlinear element. Each triangle occupies */ +/* `numberofcorners' ints. */ +/* `triangleattributelist': An array of triangle attributes. Each */ +/* triangle's attributes occupy `numberoftriangleattributes' REALs. */ +/* `trianglearealist': An array of triangle area constraints; one REAL per */ +/* triangle. Input only. */ +/* `neighborlist': An array of triangle neighbors; three ints per */ +/* triangle. Output only. */ +/* */ +/* `segmentlist': An array of segment endpoints. The first segment's */ +/* endpoints are at indices [0] and [1], followed by the remaining */ +/* segments. Two ints per segment. */ +/* `segmentmarkerlist': An array of segment markers; one int per segment. */ +/* */ +/* `holelist': An array of holes. The first hole's x and y coordinates */ +/* are at indices [0] and [1], followed by the remaining holes. Two */ +/* REALs per hole. Input only, although the pointer is copied to the */ +/* output structure for your convenience. */ +/* */ +/* `regionlist': An array of regional attributes and area constraints. */ +/* The first constraint's x and y coordinates are at indices [0] and [1], */ +/* followed by the regional attribute and index [2], followed by the */ +/* maximum area at index [3], followed by the remaining area constraints. */ +/* Four REALs per area constraint. Note that each regional attribute is */ +/* used only if you select the `A' switch, and each area constraint is */ +/* used only if you select the `a' switch (with no number following), but */ +/* omitting one of these switches does not change the memory layout. */ +/* Input only, although the pointer is copied to the output structure for */ +/* your convenience. */ +/* */ +/* `edgelist': An array of edge endpoints. The first edge's endpoints are */ +/* at indices [0] and [1], followed by the remaining edges. Two ints per */ +/* edge. Output only. */ +/* `edgemarkerlist': An array of edge markers; one int per edge. Output */ +/* only. */ +/* `normlist': An array of normal vectors, used for infinite rays in */ +/* Voronoi diagrams. The first normal vector's x and y magnitudes are */ +/* at indices [0] and [1], followed by the remaining vectors. For each */ +/* finite edge in a Voronoi diagram, the normal vector written is the */ +/* zero vector. Two REALs per edge. Output only. */ +/* */ +/* */ +/* Any input fields that Triangle will examine must be initialized. */ +/* Furthermore, for each output array that Triangle will write to, you */ +/* must either provide space by setting the appropriate pointer to point */ +/* to the space you want the data written to, or you must initialize the */ +/* pointer to NULL, which tells Triangle to allocate space for the results. */ +/* The latter option is preferable, because Triangle always knows exactly */ +/* how much space to allocate. The former option is provided mainly for */ +/* people who need to call Triangle from Fortran code, though it also makes */ +/* possible some nasty space-saving tricks, like writing the output to the */ +/* same arrays as the input. */ +/* */ +/* Triangle will not free() any input or output arrays, including those it */ +/* allocates itself; that's up to you. */ +/* */ +/* Here's a guide to help you decide which fields you must initialize */ +/* before you call triangulate(). */ +/* */ +/* `in': */ +/* */ +/* - `pointlist' must always point to a list of points; `numberofpoints' */ +/* and `numberofpointattributes' must be properly set. */ +/* `pointmarkerlist' must either be set to NULL (in which case all */ +/* markers default to zero), or must point to a list of markers. If */ +/* `numberofpointattributes' is not zero, `pointattributelist' must */ +/* point to a list of point attributes. */ +/* - If the `r' switch is used, `trianglelist' must point to a list of */ +/* triangles, and `numberoftriangles', `numberofcorners', and */ +/* `numberoftriangleattributes' must be properly set. If */ +/* `numberoftriangleattributes' is not zero, `triangleattributelist' */ +/* must point to a list of triangle attributes. If the `a' switch is */ +/* used (with no number following), `trianglearealist' must point to a */ +/* list of triangle area constraints. `neighborlist' may be ignored. */ +/* - If the `p' switch is used, `segmentlist' must point to a list of */ +/* segments, `numberofsegments' must be properly set, and */ +/* `segmentmarkerlist' must either be set to NULL (in which case all */ +/* markers default to zero), or must point to a list of markers. */ +/* - If the `p' switch is used without the `r' switch, then */ +/* `numberofholes' and `numberofregions' must be properly set. If */ +/* `numberofholes' is not zero, `holelist' must point to a list of */ +/* holes. If `numberofregions' is not zero, `regionlist' must point to */ +/* a list of region constraints. */ +/* - If the `p' switch is used, `holelist', `numberofholes', */ +/* `regionlist', and `numberofregions' is copied to `out'. (You can */ +/* nonetheless get away with not initializing them if the `r' switch is */ +/* used.) */ +/* - `edgelist', `edgemarkerlist', `normlist', and `numberofedges' may be */ +/* ignored. */ +/* */ +/* `out': */ +/* */ +/* - `pointlist' must be initialized (NULL or pointing to memory) unless */ +/* the `N' switch is used. `pointmarkerlist' must be initialized */ +/* unless the `N' or `B' switch is used. If `N' is not used and */ +/* `in->numberofpointattributes' is not zero, `pointattributelist' must */ +/* be initialized. */ +/* - `trianglelist' must be initialized unless the `E' switch is used. */ +/* `neighborlist' must be initialized if the `n' switch is used. If */ +/* the `E' switch is not used and (`in->numberofelementattributes' is */ +/* not zero or the `A' switch is used), `elementattributelist' must be */ +/* initialized. `trianglearealist' may be ignored. */ +/* - `segmentlist' must be initialized if the `p' or `c' switch is used, */ +/* and the `P' switch is not used. `segmentmarkerlist' must also be */ +/* initialized under these circumstances unless the `B' switch is used. */ +/* - `edgelist' must be initialized if the `e' switch is used. */ +/* `edgemarkerlist' must be initialized if the `e' switch is used and */ +/* the `B' switch is not. */ +/* - `holelist', `regionlist', `normlist', and all scalars may be ignored.*/ +/* */ +/* `vorout' (only needed if `v' switch is used): */ +/* */ +/* - `pointlist' must be initialized. If `in->numberofpointattributes' */ +/* is not zero, `pointattributelist' must be initialized. */ +/* `pointmarkerlist' may be ignored. */ +/* - `edgelist' and `normlist' must both be initialized. */ +/* `edgemarkerlist' may be ignored. */ +/* - Everything else may be ignored. */ +/* */ +/* After a call to triangulate(), the valid fields of `out' and `vorout' */ +/* will depend, in an obvious way, on the choice of switches used. Note */ +/* that when the `p' switch is used, the pointers `holelist' and */ +/* `regionlist' are copied from `in' to `out', but no new space is */ +/* allocated; be careful that you don't free() the same array twice. On */ +/* the other hand, Triangle will never copy the `pointlist' pointer (or any */ +/* others); new space is allocated for `out->pointlist', or if the `N' */ +/* switch is used, `out->pointlist' remains uninitialized. */ +/* */ +/* All of the meaningful `numberof' fields will be properly set; for */ +/* instance, `numberofedges' will represent the number of edges in the */ +/* triangulation whether or not the edges were written. If segments are */ +/* not used, `numberofsegments' will indicate the number of boundary edges. */ +/* */ +/*****************************************************************************/ + +#ifdef SINGLE +#define REAL float +#else /* not SINGLE */ +#define REAL double +#endif /* not SINGLE */ + +struct triangulateio { + REAL *pointlist; /* In / out */ + REAL *pointattributelist; /* In / out */ + int *pointmarkerlist; /* In / out */ + int numberofpoints; /* In / out */ + int numberofpointattributes; /* In / out */ + + int *trianglelist; /* In / out */ + REAL *triangleattributelist; /* In / out */ + REAL *trianglearealist; /* In only */ + int *neighborlist; /* Out only */ + int numberoftriangles; /* In / out */ + int numberofcorners; /* In / out */ + int numberoftriangleattributes; /* In / out */ + + int *segmentlist; /* In / out */ + int *segmentmarkerlist; /* In / out */ + int numberofsegments; /* In / out */ + + REAL *holelist; /* In / pointer to array copied out */ + int numberofholes; /* In / copied out */ + + REAL *regionlist; /* In / pointer to array copied out */ + int numberofregions; /* In / copied out */ + + int *edgelist; /* Out only */ + int *edgemarkerlist; /* Not used with Voronoi diagram; out only */ + REAL *normlist; /* Used only with Voronoi diagram; out only */ + int numberofedges; /* Out only */ +}; + +#ifdef ANSI_DECLARATORS +void triangulate(char *, struct triangulateio *, struct triangulateio *, + struct triangulateio *); +#else /* not ANSI_DECLARATORS */ +void triangulate(); +#endif /* not ANSI_DECLARATORS */ diff --git a/autoarray/util/nn/src/nn/version.c b/autoarray/util/nn/src/nn/version.c index 664f3a5e6..5f9ab4f4b 100644 --- a/autoarray/util/nn/src/nn/version.c +++ b/autoarray/util/nn/src/nn/version.c @@ -1,18 +1,18 @@ -/****************************************************************************** - * - * File: version.c - * - * Created: 05/05/2021 - * - * Author: Pavel Sakov - * BoM - * - * Purpose: NN library version. - * - * Description: NN library version. - * - * Revisions: None - * - *****************************************************************************/ - -char* nn_version = "2.0.6"; +/****************************************************************************** + * + * File: version.c + * + * Created: 05/05/2021 + * + * Author: Pavel Sakov + * BoM + * + * Purpose: NN library version. + * + * Description: NN library version. + * + * Revisions: None + * + *****************************************************************************/ + +char* nn_version = "2.0.6"; diff --git a/files/release.sh b/files/release.sh index 323744511..0b5106329 100644 --- a/files/release.sh +++ b/files/release.sh @@ -1,31 +1,31 @@ -#!/usr/bin/env bash - -export PACKAGE_NAME=autoarray - -rm -rf $p/dist -rm -rf $p/build - -set -e - -export VERSION=$1 - -cat $PACKAGE_NAME/__init__.py | grep -v __version__ > temp - -cat temp > $PACKAGE_NAME/__init__.py -rm temp -echo "__version__ = '"$VERSION"'" >> $PACKAGE_NAME/__init__.py - -git add $PACKAGE_NAME/__init__.py - -set +e -git commit -m "Incremented version number" -set -e - -python3 setup.py sdist bdist_wheel -twine upload dist/* --skip-existing --username $PYPI_USERNAME --password $PYPI_PASSWORD - - -git push --tags - -rm -rf $p/dist -rm -rf $p/build +#!/usr/bin/env bash + +export PACKAGE_NAME=autoarray + +rm -rf $p/dist +rm -rf $p/build + +set -e + +export VERSION=$1 + +cat $PACKAGE_NAME/__init__.py | grep -v __version__ > temp + +cat temp > $PACKAGE_NAME/__init__.py +rm temp +echo "__version__ = '"$VERSION"'" >> $PACKAGE_NAME/__init__.py + +git add $PACKAGE_NAME/__init__.py + +set +e +git commit -m "Incremented version number" +set -e + +python3 setup.py sdist bdist_wheel +twine upload dist/* --skip-existing --username $PYPI_USERNAME --password $PYPI_PASSWORD + + +git push --tags + +rm -rf $p/dist +rm -rf $p/build diff --git a/test_autoarray/config/general.yaml b/test_autoarray/config/general.yaml index 6f331d141..37cb07e8f 100644 --- a/test_autoarray/config/general.yaml +++ b/test_autoarray/config/general.yaml @@ -1,38 +1,38 @@ -analysis: - n_cores: 1 -fits: - flip_for_ds9: false -grid: - remove_projected_centre: false -adapt: - adapt_minimum_percent: 0.01 - adapt_noise_limit: 100000000.0 -inversion: - check_reconstruction: false # If True, the inversion's reconstruction is checked to ensure the solution of a meshs's mapper is not an invalid solution where the values are all the same. - use_positive_only_solver: false # If True, inversion's use a positive-only linear algebra solver by default, which is slower but prevents unphysical negative values in the reconstructed solutuion. - no_regularization_add_to_curvature_diag_value : 1.0e-8 # The default value added to the curvature matrix's diagonal when regularization is not applied to a linear object, which prevents inversion's failing due to the matrix being singular. - positive_only_uses_p_initial: false # If True, the positive-only solver of an inversion's uses an initial guess of the reconstructed data's values as which values should be positive, speeding up the solver. -numba: - cache: true - nopython: true - parallel: false - use_numba: true -output: - backup_every_update: 10 - grid_results_interval: 100 - log_every_update: 50 - log_file: output.log - log_level: INFO - model_results_decimal_places: 3 - model_results_every_update: 100 - remove_files: false -pixelization: - voronoi_nn_max_interpolation_neighbors: 300 -profiling: - perform: false - repeats: 1 -structures: - native_binned_only: false # If True, data structures are only stored in their native and binned format. This is used to reduce memory usage in autocti. -test: - check_likelihood_function: true # if True, when a search is resumed the likelihood of a previous sample is recalculated to ensure it is consistent with the previous run. +analysis: + n_cores: 1 +fits: + flip_for_ds9: false +grid: + remove_projected_centre: false +adapt: + adapt_minimum_percent: 0.01 + adapt_noise_limit: 100000000.0 +inversion: + check_reconstruction: false # If True, the inversion's reconstruction is checked to ensure the solution of a meshs's mapper is not an invalid solution where the values are all the same. + use_positive_only_solver: false # If True, inversion's use a positive-only linear algebra solver by default, which is slower but prevents unphysical negative values in the reconstructed solutuion. + no_regularization_add_to_curvature_diag_value : 1.0e-8 # The default value added to the curvature matrix's diagonal when regularization is not applied to a linear object, which prevents inversion's failing due to the matrix being singular. + positive_only_uses_p_initial: false # If True, the positive-only solver of an inversion's uses an initial guess of the reconstructed data's values as which values should be positive, speeding up the solver. +numba: + cache: true + nopython: true + parallel: false + use_numba: true +output: + backup_every_update: 10 + grid_results_interval: 100 + log_every_update: 50 + log_file: output.log + log_level: INFO + model_results_decimal_places: 3 + model_results_every_update: 100 + remove_files: false +pixelization: + voronoi_nn_max_interpolation_neighbors: 300 +profiling: + perform: false + repeats: 1 +structures: + native_binned_only: false # If True, data structures are only stored in their native and binned format. This is used to reduce memory usage in autocti. +test: + check_likelihood_function: true # if True, when a search is resumed the likelihood of a previous sample is recalculated to ensure it is consistent with the previous run. exception_override: false \ No newline at end of file diff --git a/test_autoarray/config/grids.yaml b/test_autoarray/config/grids.yaml index 33f7c08c3..4c5c906c7 100644 --- a/test_autoarray/config/grids.yaml +++ b/test_autoarray/config/grids.yaml @@ -1,54 +1,54 @@ -interpolate: - ndarray_1d_from_grid: - MockGridLikeIteratorObj: true - ndarray_2d_from_grid: - MockGridLikeIteratorObj: true -# Certain light and mass profile calculations become ill defined at (0.0, 0.0) or close to this value. This can lead -# to numerical issues in the calculation of the profile, for example a np.nan may arise, crashing the code. - -# To avoid this, we set a minimum value for the radial coordinate of the profile. If the radial coordinate is below -# this value, it is rounded up to this value. This ensures that the profile cannot receive a radial coordinate of 0.0. - -# For example, if an input grid coordinate has a radial coordinate of 1e-12, for most profiles this will be rounded up -# to radial_minimum=1e-08. This is a small enough value that it should not impact the results of the profile calculation. - -radial_minimum: - radial_minimum: - MockGridRadialMinimum: 2.5 - - -# Over sampling is an important numerical technique, whereby light profiles images are evaluated on a higher resolution -# grid than the image data to ensure the calculation is accurate. - -# By default, a user does not specify the over sampling factor, and a default over sampling scheme is used for each -# profile. This scheme first goes to the centre of the profile, and computes circles with certain radial values -# (e.g. radii). It then assigns an over sampling `sub_size` to each circle, where the central circles have the highest -# over sampling factor and the outer circles have the lowest. - -# The size of the circles that are appropriate for determining the over sampling factor are dependent on the resolution -# of the grid. For a high resolution grid (e.g. low pixel scale), a smaller circle central circle is necessary to -# over sample the profile accurately. The config file below therefore specifies the "radial factors" used for -# automatically determining the over sampling factors for each profile, which is the factor the pixel scale is multiplied -# by to determine the circle size. - -# The config entry below defines the default over sampling factor for each profile, where: - -# radial_factor_list: The factors that are multiplied by the pixel scale to determine the circle size that is used. -# sub_size_list: The over sampling factor that is used for each circle size. - -# For the default entries below, oversampling of degree 32 x 32 is used within a circle of radius 3.01 x pixel scale, -# 4 x 4 within a circle of radius 10.01 x pixel scale and 2 x 2 for all pixels outside of this radius. - -# For unit tests, we disable this feature by setting the over sampling factors to 1.0 and the sub sizes to 1. - -over_sampling: - radial_factor_list: - MockGrid1DLikeObj: [1.0] - MockGrid2DLikeObj: [1.0] - MockGridLikeIteratorObj: [1.0] - MockGridRadialMinimum: [1.0] - sub_size_list: - MockGrid1DLikeObj: [1, 1] - MockGrid2DLikeObj: [1, 1] - MockGridLikeIteratorObj: [1, 1] +interpolate: + ndarray_1d_from_grid: + MockGridLikeIteratorObj: true + ndarray_2d_from_grid: + MockGridLikeIteratorObj: true +# Certain light and mass profile calculations become ill defined at (0.0, 0.0) or close to this value. This can lead +# to numerical issues in the calculation of the profile, for example a np.nan may arise, crashing the code. + +# To avoid this, we set a minimum value for the radial coordinate of the profile. If the radial coordinate is below +# this value, it is rounded up to this value. This ensures that the profile cannot receive a radial coordinate of 0.0. + +# For example, if an input grid coordinate has a radial coordinate of 1e-12, for most profiles this will be rounded up +# to radial_minimum=1e-08. This is a small enough value that it should not impact the results of the profile calculation. + +radial_minimum: + radial_minimum: + MockGridRadialMinimum: 2.5 + + +# Over sampling is an important numerical technique, whereby light profiles images are evaluated on a higher resolution +# grid than the image data to ensure the calculation is accurate. + +# By default, a user does not specify the over sampling factor, and a default over sampling scheme is used for each +# profile. This scheme first goes to the centre of the profile, and computes circles with certain radial values +# (e.g. radii). It then assigns an over sampling `sub_size` to each circle, where the central circles have the highest +# over sampling factor and the outer circles have the lowest. + +# The size of the circles that are appropriate for determining the over sampling factor are dependent on the resolution +# of the grid. For a high resolution grid (e.g. low pixel scale), a smaller circle central circle is necessary to +# over sample the profile accurately. The config file below therefore specifies the "radial factors" used for +# automatically determining the over sampling factors for each profile, which is the factor the pixel scale is multiplied +# by to determine the circle size. + +# The config entry below defines the default over sampling factor for each profile, where: + +# radial_factor_list: The factors that are multiplied by the pixel scale to determine the circle size that is used. +# sub_size_list: The over sampling factor that is used for each circle size. + +# For the default entries below, oversampling of degree 32 x 32 is used within a circle of radius 3.01 x pixel scale, +# 4 x 4 within a circle of radius 10.01 x pixel scale and 2 x 2 for all pixels outside of this radius. + +# For unit tests, we disable this feature by setting the over sampling factors to 1.0 and the sub sizes to 1. + +over_sampling: + radial_factor_list: + MockGrid1DLikeObj: [1.0] + MockGrid2DLikeObj: [1.0] + MockGridLikeIteratorObj: [1.0] + MockGridRadialMinimum: [1.0] + sub_size_list: + MockGrid1DLikeObj: [1, 1] + MockGrid2DLikeObj: [1, 1] + MockGridLikeIteratorObj: [1, 1] MockGridRadialMinimum: [1, 1] \ No newline at end of file diff --git a/test_autoarray/config/logging.yaml b/test_autoarray/config/logging.yaml index 3a6b54b0c..5c1f22c75 100644 --- a/test_autoarray/config/logging.yaml +++ b/test_autoarray/config/logging.yaml @@ -1,22 +1,22 @@ -version: 1 -disable_existing_loggers: false - -handlers: - console: - class: logging.StreamHandler - level: INFO - stream: ext://sys.stdout - formatter: formatter - file: - class: logging.FileHandler - level: INFO - filename: root.log - formatter: formatter - -root: - level: INFO - handlers: [ console, file ] - -formatters: - formatter: - format: '%(asctime)s - %(name)s - %(levelname)s - %(message)s' +version: 1 +disable_existing_loggers: false + +handlers: + console: + class: logging.StreamHandler + level: INFO + stream: ext://sys.stdout + formatter: formatter + file: + class: logging.FileHandler + level: INFO + filename: root.log + formatter: formatter + +root: + level: INFO + handlers: [ console, file ] + +formatters: + formatter: + format: '%(asctime)s - %(name)s - %(levelname)s - %(message)s' diff --git a/test_autoarray/config/visualize.yaml b/test_autoarray/config/visualize.yaml index 8934bb465..663084a51 100644 --- a/test_autoarray/config/visualize.yaml +++ b/test_autoarray/config/visualize.yaml @@ -1,303 +1,303 @@ -general: - general: - backend: default - imshow_origin: upper - zoom_around_mask: true - disable_zoom_for_fits: true # If True, the zoom-in around the masked region is disabled when outputting .fits files, which is useful to retain the same dimensions as the input data. - include_2d: - border: false - mapper_image_plane_mesh_grid: false - mapper_source_plane_data_grid: false - mapper_source_plane_mesh_grid: false - mask: true - origin: true - parallel_overscan: true - serial_overscan: true - serial_prescan: true - subplot_shape: - 1: (1, 1) # The shape of subplots for a figure with 1 subplot. - 2: (2, 2) # The shape of subplots for a figure with 2 subplots. - 4: (2, 2) # The shape of subplots for a figure with 4 (or less than the above value) of subplots. - 6: (2, 3) # The shape of subplots for a figure with 6 (or less than the above value) of subplots. - 9: (3, 3) # The shape of subplots for a figure with 9 (or less than the above value) of subplots. - 12: (3, 4) # The shape of subplots for a figure with 12 (or less than the above value) of subplots. - 16: (4, 4) # The shape of subplots for a figure with 16 (or less than the above value) of subplots. - 20: (4, 5) # The shape of subplots for a figure with 20 (or less than the above value) of subplots. - 36: (6, 6) # The shape of subplots for a figure with 36 (or less than the above value) of subplots. - 49: (7, 7) # The shape of subplots for a figure with 49 (or less than the above value) of subplots. - 64: (8, 8) # The shape of subplots for a figure with 64 (or less than the above value) of subplots. - 81: (9, 9) # The shape of subplots for a figure with 81 (or less than the above value) of subplots. - 100: (10, 10) # The shape of subplots for a figure with 100 (or less than the above value) of subplots. -include: - include_1d: - mask: false - origin: false - include_2d: - border: false - mapper_image_plane_mesh_grid: false - mapper_source_plane_data_grid: false - mapper_source_plane_mesh_grid: false - mask: true - origin: true - parallel_overscan: true - positions: true - serial_overscan: false - serial_prescan: true -mat_wrap: - Axis: - figure: - emit: true - subplot: - emit: false - Cmap: - figure: - cmap: default - linscale: 2.0 - linthresh: 1.0 - norm: linear - vmax: null - vmin: null - subplot: - cmap: default - linscale: 2.0 - linthresh: 1.0 - norm: linear - vmax: null - vmin: null - Colorbar: - figure: - fraction: 3.0 - pad: 4.0 - subplot: - fraction: 0.1 - pad: 0.2 - ColorbarTickParams: - figure: - labelsize: 1 - subplot: - labelsize: 1 - Figure: - figure: - aspect: square - figsize: (7,7) - subplot: - aspect: square - figsize: auto - Legend: - figure: - fontsize: 12 - include: true - subplot: - fontsize: 13 - include: false - Text: - figure: - fontsize: 16 - subplot: - fontsize: 10 - TickParams: - figure: - labelsize: 16 - subplot: - labelsize: 10 - Title: - figure: - fontsize: 11 - subplot: - fontsize: 15 - XLabel: - figure: - fontsize: 3 - subplot: - fontsize: 4 - XTicks: - figure: - fontsize: 17 - subplot: - fontsize: 11 - YLabel: - figure: - fontsize: 1 - subplot: - fontsize: 2 - YTicks: - figure: - fontsize: 16 - subplot: - fontsize: 10 -mat_wrap_1d: - AXVLine: - figure: - c: k - ymin: 0.5 - subplot: - c: k - ymin: 0.6 - FillBetween: - figure: - alpha: 0.6 - color: k - subplot: - alpha: 0.5 - color: k - YXPlot: - figure: - c: k - linestyle: '-' - linewidth: 3 - subplot: - c: k - linestyle: '-' - linewidth: 1 - YXScatter: - figure: - c: k - marker: . - subplot: - c: k - marker: x -mat_wrap_2d: - ArrayOverlay: - figure: - alpha: 0.5 - subplot: - alpha: 0.7 - BorderScatter: - figure: - c: c - marker: + - s: 13 - subplot: - c: k - marker: . - s: 7 - GridErrorbar: - figure: - c: k - marker: o - subplot: - c: b - marker: . - GridPlot: - figure: - c: k - linestyle: '-' - linewidth: 3 - subplot: - c: k - linestyle: '-' - linewidth: 1 - GridScatter: - figure: - c: y - marker: x - s: 14 - subplot: - c: r - marker: . - s: 6 - IndexScatter: - figure: - c: r,g,b,y,k,w - marker: . - s: 20 - subplot: - c: r,g,b,y,w,k - marker: + - s: 21 - MaskScatter: - figure: - c: g - marker: . - s: 12 - subplot: - c: w - marker: . - s: 8 - MeshGridScatter: - figure: - c: r - marker: . - s: 5 - subplot: - c: g - marker: o - s: 6 - OriginScatter: - figure: - c: k - marker: x - s: 80 - subplot: - c: r - marker: . - s: 81 - ParallelOverscanPlot: - figure: - c: k - linestyle: '-' - linewidth: 1 - subplot: - c: k - linestyle: '-' - linewidth: 1 - PatchOverlay: - figure: - edgecolor: c - facecolor: null - subplot: - edgecolor: y - facecolor: null - PositionsScatter: - figure: - c: r,g,b - marker: o - s: 15 - subplot: - c: c,g,b - marker: . - s: 5 - SerialOverscanPlot: - figure: - c: k - linestyle: '-' - linewidth: 2 - subplot: - c: k - linestyle: '-' - linewidth: 1 - SerialPrescanPlot: - figure: - c: k - linestyle: '-' - linewidth: 3 - subplot: - c: k - linestyle: '-' - linewidth: 1 - VectorYXQuiver: - figure: - alpha: 1.0 - angles: xy - headlength: 0 - headwidth: 1 - linewidth: 5 - pivot: middle - units: xy - subplot: - alpha: 1.1 - angles: xy1 - headlength: 0.1 - headwidth: 11 - linewidth: 51 - pivot: middle1 - units: xy1 - VoronoiDrawer: - figure: - alpha: 0.7 - edgecolor: k - linewidth: 0.3 - subplot: - alpha: 0.5 - edgecolor: r - linewidth: 1.0 +general: + general: + backend: default + imshow_origin: upper + zoom_around_mask: true + disable_zoom_for_fits: true # If True, the zoom-in around the masked region is disabled when outputting .fits files, which is useful to retain the same dimensions as the input data. + include_2d: + border: false + mapper_image_plane_mesh_grid: false + mapper_source_plane_data_grid: false + mapper_source_plane_mesh_grid: false + mask: true + origin: true + parallel_overscan: true + serial_overscan: true + serial_prescan: true + subplot_shape: + 1: (1, 1) # The shape of subplots for a figure with 1 subplot. + 2: (2, 2) # The shape of subplots for a figure with 2 subplots. + 4: (2, 2) # The shape of subplots for a figure with 4 (or less than the above value) of subplots. + 6: (2, 3) # The shape of subplots for a figure with 6 (or less than the above value) of subplots. + 9: (3, 3) # The shape of subplots for a figure with 9 (or less than the above value) of subplots. + 12: (3, 4) # The shape of subplots for a figure with 12 (or less than the above value) of subplots. + 16: (4, 4) # The shape of subplots for a figure with 16 (or less than the above value) of subplots. + 20: (4, 5) # The shape of subplots for a figure with 20 (or less than the above value) of subplots. + 36: (6, 6) # The shape of subplots for a figure with 36 (or less than the above value) of subplots. + 49: (7, 7) # The shape of subplots for a figure with 49 (or less than the above value) of subplots. + 64: (8, 8) # The shape of subplots for a figure with 64 (or less than the above value) of subplots. + 81: (9, 9) # The shape of subplots for a figure with 81 (or less than the above value) of subplots. + 100: (10, 10) # The shape of subplots for a figure with 100 (or less than the above value) of subplots. +include: + include_1d: + mask: false + origin: false + include_2d: + border: false + mapper_image_plane_mesh_grid: false + mapper_source_plane_data_grid: false + mapper_source_plane_mesh_grid: false + mask: true + origin: true + parallel_overscan: true + positions: true + serial_overscan: false + serial_prescan: true +mat_wrap: + Axis: + figure: + emit: true + subplot: + emit: false + Cmap: + figure: + cmap: default + linscale: 2.0 + linthresh: 1.0 + norm: linear + vmax: null + vmin: null + subplot: + cmap: default + linscale: 2.0 + linthresh: 1.0 + norm: linear + vmax: null + vmin: null + Colorbar: + figure: + fraction: 3.0 + pad: 4.0 + subplot: + fraction: 0.1 + pad: 0.2 + ColorbarTickParams: + figure: + labelsize: 1 + subplot: + labelsize: 1 + Figure: + figure: + aspect: square + figsize: (7,7) + subplot: + aspect: square + figsize: auto + Legend: + figure: + fontsize: 12 + include: true + subplot: + fontsize: 13 + include: false + Text: + figure: + fontsize: 16 + subplot: + fontsize: 10 + TickParams: + figure: + labelsize: 16 + subplot: + labelsize: 10 + Title: + figure: + fontsize: 11 + subplot: + fontsize: 15 + XLabel: + figure: + fontsize: 3 + subplot: + fontsize: 4 + XTicks: + figure: + fontsize: 17 + subplot: + fontsize: 11 + YLabel: + figure: + fontsize: 1 + subplot: + fontsize: 2 + YTicks: + figure: + fontsize: 16 + subplot: + fontsize: 10 +mat_wrap_1d: + AXVLine: + figure: + c: k + ymin: 0.5 + subplot: + c: k + ymin: 0.6 + FillBetween: + figure: + alpha: 0.6 + color: k + subplot: + alpha: 0.5 + color: k + YXPlot: + figure: + c: k + linestyle: '-' + linewidth: 3 + subplot: + c: k + linestyle: '-' + linewidth: 1 + YXScatter: + figure: + c: k + marker: . + subplot: + c: k + marker: x +mat_wrap_2d: + ArrayOverlay: + figure: + alpha: 0.5 + subplot: + alpha: 0.7 + BorderScatter: + figure: + c: c + marker: + + s: 13 + subplot: + c: k + marker: . + s: 7 + GridErrorbar: + figure: + c: k + marker: o + subplot: + c: b + marker: . + GridPlot: + figure: + c: k + linestyle: '-' + linewidth: 3 + subplot: + c: k + linestyle: '-' + linewidth: 1 + GridScatter: + figure: + c: y + marker: x + s: 14 + subplot: + c: r + marker: . + s: 6 + IndexScatter: + figure: + c: r,g,b,y,k,w + marker: . + s: 20 + subplot: + c: r,g,b,y,w,k + marker: + + s: 21 + MaskScatter: + figure: + c: g + marker: . + s: 12 + subplot: + c: w + marker: . + s: 8 + MeshGridScatter: + figure: + c: r + marker: . + s: 5 + subplot: + c: g + marker: o + s: 6 + OriginScatter: + figure: + c: k + marker: x + s: 80 + subplot: + c: r + marker: . + s: 81 + ParallelOverscanPlot: + figure: + c: k + linestyle: '-' + linewidth: 1 + subplot: + c: k + linestyle: '-' + linewidth: 1 + PatchOverlay: + figure: + edgecolor: c + facecolor: null + subplot: + edgecolor: y + facecolor: null + PositionsScatter: + figure: + c: r,g,b + marker: o + s: 15 + subplot: + c: c,g,b + marker: . + s: 5 + SerialOverscanPlot: + figure: + c: k + linestyle: '-' + linewidth: 2 + subplot: + c: k + linestyle: '-' + linewidth: 1 + SerialPrescanPlot: + figure: + c: k + linestyle: '-' + linewidth: 3 + subplot: + c: k + linestyle: '-' + linewidth: 1 + VectorYXQuiver: + figure: + alpha: 1.0 + angles: xy + headlength: 0 + headwidth: 1 + linewidth: 5 + pivot: middle + units: xy + subplot: + alpha: 1.1 + angles: xy1 + headlength: 0.1 + headwidth: 11 + linewidth: 51 + pivot: middle1 + units: xy1 + VoronoiDrawer: + figure: + alpha: 0.7 + edgecolor: k + linewidth: 0.3 + subplot: + alpha: 0.5 + edgecolor: r + linewidth: 1.0 diff --git a/test_autoarray/fit/test_fit_imaging.py b/test_autoarray/fit/test_fit_imaging.py index c0c525e71..b9c48c733 100644 --- a/test_autoarray/fit/test_fit_imaging.py +++ b/test_autoarray/fit/test_fit_imaging.py @@ -1,129 +1,129 @@ -import numpy as np - -import autoarray as aa - - -def test__data_and_model_are_identical__no_masking__check_values_are_correct(): - mask = aa.Mask2D(mask=[[False, False], [False, False]], pixel_scales=(1.0, 1.0)) - - data = aa.Array2D(values=[1.0, 2.0, 3.0, 4.0], mask=mask) - noise_map = aa.Array2D(values=[2.0, 2.0, 2.0, 2.0], mask=mask) - - dataset = aa.Imaging(data=data, noise_map=noise_map) - - dataset = dataset.apply_mask(mask=mask) - - model_data = aa.Array2D(values=[1.0, 2.0, 3.0, 4.0], mask=mask) - - fit = aa.m.MockFitImaging( - dataset=dataset, use_mask_in_fit=False, model_data=model_data - ) - - assert (fit.mask == np.array([[False, False], [False, False]])).all() - assert (fit.data == np.array([1.0, 2.0, 3.0, 4.0])).all() - assert (fit.noise_map == np.array([2.0, 2.0, 2.0, 2.0])).all() - assert (fit.signal_to_noise_map == np.array([0.5, 1.0, 1.5, 2.0])).all() - assert (fit.model_data == np.array([1.0, 2.0, 3.0, 4.0])).all() - assert (fit.residual_map == np.array([0.0, 0.0, 0.0, 0.0])).all() - assert (fit.normalized_residual_map == np.array([0.0, 0.0, 0.0, 0.0])).all() - assert (fit.chi_squared_map == np.array([0.0, 0.0, 0.0, 0.0])).all() - - assert fit.chi_squared == 0.0 - assert fit.reduced_chi_squared == 0.0 - assert fit.noise_normalization == np.sum(np.log(2 * np.pi * noise_map**2.0)) - assert fit.log_likelihood == -0.5 * (fit.chi_squared + fit.noise_normalization) - - -def test__data_and_model_are_different__include_masking__check_values_are_correct(): - mask = aa.Mask2D(mask=[[False, False], [True, False]], pixel_scales=(1.0, 1.0)) - - data = aa.Array2D(values=[1.0, 2.0, 4.0], mask=mask) - noise_map = aa.Array2D(values=[2.0, 2.0, 2.0], mask=mask) - - dataset = aa.Imaging(data=data, noise_map=noise_map) - - model_data = aa.Array2D(values=[1.0, 2.0, 3.0], mask=mask) - - fit = aa.m.MockFitImaging( - dataset=dataset, use_mask_in_fit=False, model_data=model_data - ) - - assert (fit.mask == np.array([[False, False], [True, False]])).all() - assert (fit.data.slim == np.array([1.0, 2.0, 4.0])).all() - assert (fit.noise_map.slim == np.array([2.0, 2.0, 2.0])).all() - assert (fit.signal_to_noise_map.slim == np.array([0.5, 1.0, 2.0])).all() - assert (fit.model_data.slim == np.array([1.0, 2.0, 3.0])).all() - assert (fit.residual_map.slim == np.array([0.0, 0.0, 1.0])).all() - assert (fit.normalized_residual_map.slim == np.array([0.0, 0.0, 0.5])).all() - assert (fit.chi_squared_map.slim == np.array([0.0, 0.0, 0.25])).all() - - assert fit.chi_squared == 0.25 - assert fit.reduced_chi_squared == 0.25 / 3.0 - assert fit.noise_normalization == np.sum(np.log(2 * np.pi * noise_map**2.0)) - assert fit.log_likelihood == -0.5 * (fit.chi_squared + fit.noise_normalization) - - -def test__data_and_model_are_identical__inversion_included__changes_certain_properties(): - mask = aa.Mask2D(mask=[[False, False], [False, False]], pixel_scales=(1.0, 1.0)) - - data = aa.Array2D(values=[1.0, 2.0, 3.0, 4.0], mask=mask) - noise_map = aa.Array2D(values=[2.0, 2.0, 2.0, 2.0], mask=mask) - - dataset = aa.Imaging(data=data, noise_map=noise_map) - - dataset = dataset.apply_mask(mask=mask) - - model_data = aa.Array2D(values=[1.0, 2.0, 3.0, 4.0], mask=mask) - - inversion = aa.m.MockInversion( - linear_obj_list=[aa.m.MockMapper()], - data_vector=1, - regularization_term=2.0, - log_det_curvature_reg_matrix_term=3.0, - log_det_regularization_matrix_term=4.0, - ) - - fit = aa.m.MockFitImaging( - dataset=dataset, - use_mask_in_fit=False, - model_data=model_data, - inversion=inversion, - ) - - assert fit.chi_squared == 0.0 - assert fit.reduced_chi_squared == 0.0 - assert fit.noise_normalization == np.sum(np.log(2 * np.pi * noise_map**2.0)) - assert fit.log_likelihood == -0.5 * (fit.chi_squared + fit.noise_normalization) - - assert fit.log_likelihood_with_regularization == -0.5 * ( - fit.chi_squared + 2.0 + fit.noise_normalization - ) - assert fit.log_evidence == -0.5 * ( - fit.chi_squared + 2.0 + 3.0 - 4.0 + fit.noise_normalization - ) - assert fit.figure_of_merit == fit.log_evidence - - -def test__run_time_dict__profiles_appropriate_functions(): - mask = aa.Mask2D(mask=[[False, False], [False, False]], pixel_scales=(1.0, 1.0)) - - data = aa.Array2D(values=[1.0, 2.0, 3.0, 4.0], mask=mask) - noise_map = aa.Array2D(values=[2.0, 2.0, 2.0, 2.0], mask=mask) - - dataset = aa.Imaging(data=data, noise_map=noise_map) - - dataset = dataset.apply_mask(mask=mask) - - model_data = aa.Array2D(values=[1.0, 2.0, 3.0, 4.0], mask=mask) - - run_time_dict = {} - - fit = aa.m.MockFitImaging( - dataset=dataset, - use_mask_in_fit=False, - model_data=model_data, - run_time_dict=run_time_dict, - ) - fit.figure_of_merit - - assert "figure_of_merit_0" in fit.run_time_dict +import numpy as np + +import autoarray as aa + + +def test__data_and_model_are_identical__no_masking__check_values_are_correct(): + mask = aa.Mask2D(mask=[[False, False], [False, False]], pixel_scales=(1.0, 1.0)) + + data = aa.Array2D(values=[1.0, 2.0, 3.0, 4.0], mask=mask) + noise_map = aa.Array2D(values=[2.0, 2.0, 2.0, 2.0], mask=mask) + + dataset = aa.Imaging(data=data, noise_map=noise_map) + + dataset = dataset.apply_mask(mask=mask) + + model_data = aa.Array2D(values=[1.0, 2.0, 3.0, 4.0], mask=mask) + + fit = aa.m.MockFitImaging( + dataset=dataset, use_mask_in_fit=False, model_data=model_data + ) + + assert (fit.mask == np.array([[False, False], [False, False]])).all() + assert (fit.data == np.array([1.0, 2.0, 3.0, 4.0])).all() + assert (fit.noise_map == np.array([2.0, 2.0, 2.0, 2.0])).all() + assert (fit.signal_to_noise_map == np.array([0.5, 1.0, 1.5, 2.0])).all() + assert (fit.model_data == np.array([1.0, 2.0, 3.0, 4.0])).all() + assert (fit.residual_map == np.array([0.0, 0.0, 0.0, 0.0])).all() + assert (fit.normalized_residual_map == np.array([0.0, 0.0, 0.0, 0.0])).all() + assert (fit.chi_squared_map == np.array([0.0, 0.0, 0.0, 0.0])).all() + + assert fit.chi_squared == 0.0 + assert fit.reduced_chi_squared == 0.0 + assert fit.noise_normalization == np.sum(np.log(2 * np.pi * noise_map**2.0)) + assert fit.log_likelihood == -0.5 * (fit.chi_squared + fit.noise_normalization) + + +def test__data_and_model_are_different__include_masking__check_values_are_correct(): + mask = aa.Mask2D(mask=[[False, False], [True, False]], pixel_scales=(1.0, 1.0)) + + data = aa.Array2D(values=[1.0, 2.0, 4.0], mask=mask) + noise_map = aa.Array2D(values=[2.0, 2.0, 2.0], mask=mask) + + dataset = aa.Imaging(data=data, noise_map=noise_map) + + model_data = aa.Array2D(values=[1.0, 2.0, 3.0], mask=mask) + + fit = aa.m.MockFitImaging( + dataset=dataset, use_mask_in_fit=False, model_data=model_data + ) + + assert (fit.mask == np.array([[False, False], [True, False]])).all() + assert (fit.data.slim == np.array([1.0, 2.0, 4.0])).all() + assert (fit.noise_map.slim == np.array([2.0, 2.0, 2.0])).all() + assert (fit.signal_to_noise_map.slim == np.array([0.5, 1.0, 2.0])).all() + assert (fit.model_data.slim == np.array([1.0, 2.0, 3.0])).all() + assert (fit.residual_map.slim == np.array([0.0, 0.0, 1.0])).all() + assert (fit.normalized_residual_map.slim == np.array([0.0, 0.0, 0.5])).all() + assert (fit.chi_squared_map.slim == np.array([0.0, 0.0, 0.25])).all() + + assert fit.chi_squared == 0.25 + assert fit.reduced_chi_squared == 0.25 / 3.0 + assert fit.noise_normalization == np.sum(np.log(2 * np.pi * noise_map**2.0)) + assert fit.log_likelihood == -0.5 * (fit.chi_squared + fit.noise_normalization) + + +def test__data_and_model_are_identical__inversion_included__changes_certain_properties(): + mask = aa.Mask2D(mask=[[False, False], [False, False]], pixel_scales=(1.0, 1.0)) + + data = aa.Array2D(values=[1.0, 2.0, 3.0, 4.0], mask=mask) + noise_map = aa.Array2D(values=[2.0, 2.0, 2.0, 2.0], mask=mask) + + dataset = aa.Imaging(data=data, noise_map=noise_map) + + dataset = dataset.apply_mask(mask=mask) + + model_data = aa.Array2D(values=[1.0, 2.0, 3.0, 4.0], mask=mask) + + inversion = aa.m.MockInversion( + linear_obj_list=[aa.m.MockMapper()], + data_vector=1, + regularization_term=2.0, + log_det_curvature_reg_matrix_term=3.0, + log_det_regularization_matrix_term=4.0, + ) + + fit = aa.m.MockFitImaging( + dataset=dataset, + use_mask_in_fit=False, + model_data=model_data, + inversion=inversion, + ) + + assert fit.chi_squared == 0.0 + assert fit.reduced_chi_squared == 0.0 + assert fit.noise_normalization == np.sum(np.log(2 * np.pi * noise_map**2.0)) + assert fit.log_likelihood == -0.5 * (fit.chi_squared + fit.noise_normalization) + + assert fit.log_likelihood_with_regularization == -0.5 * ( + fit.chi_squared + 2.0 + fit.noise_normalization + ) + assert fit.log_evidence == -0.5 * ( + fit.chi_squared + 2.0 + 3.0 - 4.0 + fit.noise_normalization + ) + assert fit.figure_of_merit == fit.log_evidence + + +def test__run_time_dict__profiles_appropriate_functions(): + mask = aa.Mask2D(mask=[[False, False], [False, False]], pixel_scales=(1.0, 1.0)) + + data = aa.Array2D(values=[1.0, 2.0, 3.0, 4.0], mask=mask) + noise_map = aa.Array2D(values=[2.0, 2.0, 2.0, 2.0], mask=mask) + + dataset = aa.Imaging(data=data, noise_map=noise_map) + + dataset = dataset.apply_mask(mask=mask) + + model_data = aa.Array2D(values=[1.0, 2.0, 3.0, 4.0], mask=mask) + + run_time_dict = {} + + fit = aa.m.MockFitImaging( + dataset=dataset, + use_mask_in_fit=False, + model_data=model_data, + run_time_dict=run_time_dict, + ) + fit.figure_of_merit + + assert "figure_of_merit_0" in fit.run_time_dict diff --git a/test_autoarray/structures/arrays/files/array/output_test/array.fits b/test_autoarray/structures/arrays/files/array/output_test/array.fits deleted file mode 100644 index 97c9a0707..000000000 Binary files a/test_autoarray/structures/arrays/files/array/output_test/array.fits and /dev/null differ diff --git a/test_autoarray/structures/arrays/test_repr.py b/test_autoarray/structures/arrays/test_repr.py index cf0bfa964..a81151e43 100644 --- a/test_autoarray/structures/arrays/test_repr.py +++ b/test_autoarray/structures/arrays/test_repr.py @@ -1,6 +1,6 @@ -import autoarray as aa - - -def test_repr(): - array = aa.Array2D.no_mask([[1, 2], [3, 4]], pixel_scales=1) - assert repr(array) == "Array2D([1., 2., 3., 4.])" +import autoarray as aa + + +def test_repr(): + array = aa.Array2D.no_mask([[1, 2], [3, 4]], pixel_scales=1) + assert repr(array) == "Array2D([1., 2., 3., 4.])" diff --git a/test_autoarray/structures/triangles/conftest.py b/test_autoarray/structures/triangles/conftest.py index a8d8580a3..8215a5826 100644 --- a/test_autoarray/structures/triangles/conftest.py +++ b/test_autoarray/structures/triangles/conftest.py @@ -1,56 +1,56 @@ -from autoarray.numpy_wrapper import np -from autoarray.structures.triangles.array import ArrayTriangles - -from matplotlib import pyplot as plt - - -import pytest - - -@pytest.fixture -def plot(): - plt.figure(figsize=(8, 8)) - - def plot(triangles, color="black"): - for triangle in triangles: - triangle = np.array(triangle) - triangle = np.append(triangle, np.array([triangle[0]]), axis=0) - plt.plot(triangle[:, 0], triangle[:, 1], "o-", color=color) - - yield plot - plt.gca().set_aspect("equal", adjustable="box") - plt.show() - - -@pytest.fixture -def compare_with_nans(): - def compare_with_nans_(arr1, arr2): - nan_mask1 = np.isnan(arr1) - nan_mask2 = np.isnan(arr2) - - arr1 = arr1[~nan_mask1] - arr2 = arr2[~nan_mask2] - - return np.all(arr1 == arr2) - - return compare_with_nans_ - - -@pytest.fixture -def triangles(): - return ArrayTriangles( - indices=np.array( - [ - [0, 1, 2], - [1, 2, 3], - ] - ), - vertices=np.array( - [ - [0.0, 0.0], - [1.0, 0.0], - [0.0, 1.0], - [1.0, 1.0], - ] - ), - ) +from autoarray.numpy_wrapper import np +from autoarray.structures.triangles.array import ArrayTriangles + +from matplotlib import pyplot as plt + + +import pytest + + +@pytest.fixture +def plot(): + plt.figure(figsize=(8, 8)) + + def plot(triangles, color="black"): + for triangle in triangles: + triangle = np.array(triangle) + triangle = np.append(triangle, np.array([triangle[0]]), axis=0) + plt.plot(triangle[:, 0], triangle[:, 1], "o-", color=color) + + yield plot + plt.gca().set_aspect("equal", adjustable="box") + plt.show() + + +@pytest.fixture +def compare_with_nans(): + def compare_with_nans_(arr1, arr2): + nan_mask1 = np.isnan(arr1) + nan_mask2 = np.isnan(arr2) + + arr1 = arr1[~nan_mask1] + arr2 = arr2[~nan_mask2] + + return np.all(arr1 == arr2) + + return compare_with_nans_ + + +@pytest.fixture +def triangles(): + return ArrayTriangles( + indices=np.array( + [ + [0, 1, 2], + [1, 2, 3], + ] + ), + vertices=np.array( + [ + [0.0, 0.0], + [1.0, 0.0], + [0.0, 1.0], + [1.0, 1.0], + ] + ), + ) diff --git a/test_autoarray/structures/triangles/test_area.py b/test_autoarray/structures/triangles/test_area.py index c7a1b6ccc..78627c7f7 100644 --- a/test_autoarray/structures/triangles/test_area.py +++ b/test_autoarray/structures/triangles/test_area.py @@ -1,90 +1,90 @@ -import numpy as np -import pytest - -from autoarray.structures.triangles.array import ArrayTriangles -from autoarray.structures.triangles.shape import Triangle, Circle, Square, Polygon - - -def test_triangles(triangles): - assert triangles.area == 1.0 - - -@pytest.mark.parametrize( - "vertices, area", - [ - ( - [ - [0.0, 0.0], - [1.0, 0.0], - [0.0, 1.0], - ], - 0.5, - ), - ( - [ - [1.0, 1.0], - [1.0, 0.0], - [0.0, 1.0], - ], - 0.5, - ), - ( - [ - [0.0, 0.0], - [1.0, 1.0], - [2.0, 0.0], - ], - 1.0, - ), - ], -) -def test_single_triangle(vertices, area): - triangles = ArrayTriangles( - indices=np.array( - [ - [0, 1, 2], - ] - ), - vertices=np.array(vertices), - ) - assert triangles.area == area - - -def test_triangle(): - triangle = Triangle( - (0.0, 0.0), - (1.0, 0.0), - (0.0, 1.0), - ) - assert triangle.area == 0.5 - - -def test_circle(): - circle = Circle( - x=0.0, - y=0.0, - radius=1.0, - ) - assert circle.area == np.pi - - -def test_square(): - square = Square( - top=0.0, - bottom=1.0, - left=0.0, - right=1.0, - ) - assert square.area == 1.0 - - -def test_polygon(): - polygon = Polygon( - [ - (0.0, 0.0), - (1.0, 0.0), - (1.0, 1.0), - (0.0, 1.0), - ], - ) - assert polygon.area == 1.0 +import numpy as np +import pytest + +from autoarray.structures.triangles.array import ArrayTriangles +from autoarray.structures.triangles.shape import Triangle, Circle, Square, Polygon + + +def test_triangles(triangles): + assert triangles.area == 1.0 + + +@pytest.mark.parametrize( + "vertices, area", + [ + ( + [ + [0.0, 0.0], + [1.0, 0.0], + [0.0, 1.0], + ], + 0.5, + ), + ( + [ + [1.0, 1.0], + [1.0, 0.0], + [0.0, 1.0], + ], + 0.5, + ), + ( + [ + [0.0, 0.0], + [1.0, 1.0], + [2.0, 0.0], + ], + 1.0, + ), + ], +) +def test_single_triangle(vertices, area): + triangles = ArrayTriangles( + indices=np.array( + [ + [0, 1, 2], + ] + ), + vertices=np.array(vertices), + ) + assert triangles.area == area + + +def test_triangle(): + triangle = Triangle( + (0.0, 0.0), + (1.0, 0.0), + (0.0, 1.0), + ) + assert triangle.area == 0.5 + + +def test_circle(): + circle = Circle( + x=0.0, + y=0.0, + radius=1.0, + ) + assert circle.area == np.pi + + +def test_square(): + square = Square( + top=0.0, + bottom=1.0, + left=0.0, + right=1.0, + ) + assert square.area == 1.0 + + +def test_polygon(): + polygon = Polygon( + [ + (0.0, 0.0), + (1.0, 0.0), + (1.0, 1.0), + (0.0, 1.0), + ], + ) + assert polygon.area == 1.0 diff --git a/test_autoarray/structures/triangles/test_array_representation.py b/test_autoarray/structures/triangles/test_array_representation.py index 832c0793f..af6a9954d 100644 --- a/test_autoarray/structures/triangles/test_array_representation.py +++ b/test_autoarray/structures/triangles/test_array_representation.py @@ -1,215 +1,215 @@ -import numpy as np -import pytest - -from autoarray.structures.triangles.array import ArrayTriangles -from autoarray.structures.triangles.shape import Point - - -@pytest.mark.parametrize( - "point, indices", - [ - ( - Point(0.1, 0.1), - np.array([0]), - ), - ( - Point(0.6, 0.6), - np.array([1]), - ), - ( - Point(0.5, 0.5), - np.array([0, 1]), - ), - ], -) -def test_contains_vertices( - triangles, - point, - indices, -): - containing_indices = triangles.containing_indices(point) - - assert (containing_indices == indices).all() - - -@pytest.mark.parametrize( - "indexes, vertices, indices", - [ - ( - np.array([0]), - np.array( - [ - [0.0, 0.0], - [0.0, 1.0], - [1.0, 0.0], - ] - ), - np.array( - [ - [0, 2, 1], - ] - ), - ), - ( - np.array([1]), - np.array( - [ - [0.0, 1.0], - [1.0, 0.0], - [1.0, 1.0], - ] - ), - np.array( - [ - [1, 0, 2], - ] - ), - ), - ( - np.array([0, 1]), - np.array( - [ - [0.0, 0.0], - [0.0, 1.0], - [1.0, 0.0], - [1.0, 1.0], - ] - ), - np.array( - [ - [0, 2, 1], - [2, 1, 3], - ] - ), - ), - ], -) -def test_for_indexes( - triangles, - indexes, - vertices, - indices, -): - containing = triangles.for_indexes(indexes) - - assert (containing.indices == indices).all() - assert (containing.vertices == vertices).all() - - -def test_up_sample(triangles): - up_sampled = triangles.up_sample() - - assert ( - up_sampled.vertices - == np.array( - [ - [0.0, 0.0], - [0.0, 0.5], - [0.0, 1.0], - [0.5, 0.0], - [0.5, 0.5], - [0.5, 1.0], - [1.0, 0.0], - [1.0, 0.5], - [1.0, 1.0], - ] - ) - ).all() - - assert ( - up_sampled.indices - == np.array( - [ - [6, 4, 3], - [2, 5, 4], - [2, 1, 4], - [8, 7, 5], - [3, 4, 1], - [4, 5, 7], - [0, 3, 1], - [6, 4, 7], - ] - ) - ).all() - - -@pytest.mark.parametrize( - "offset", - [-1, 0, 1], -) -def test_simple_neighborhood(offset): - triangles = ArrayTriangles( - indices=np.array( - [ - [0, 1, 2], - ] - ), - vertices=np.array( - [ - [0.0, 0.0], - [1.0, 0.0], - [0.0, 1.0], - ] - ) - + offset, - ) - assert ( - triangles.neighborhood().triangles - == ( - np.array( - [ - [[-1.0, 1.0], [0.0, 0.0], [0.0, 1.0]], - [[0.0, 0.0], [0.0, 1.0], [1.0, 0.0]], - [[0.0, 0.0], [1.0, -1.0], [1.0, 0.0]], - [[0.0, 1.0], [1.0, 0.0], [1.0, 1.0]], - ] - ) - + offset - ) - ).all() - - -def test_neighborhood(triangles): - neighborhood = triangles.neighborhood() - - assert ( - neighborhood.vertices - == np.array( - [ - [-1.0, 1.0], - [0.0, 0.0], - [0.0, 1.0], - [0.0, 2.0], - [1.0, -1.0], - [1.0, 0.0], - [1.0, 1.0], - [2.0, 0.0], - ] - ) - ).all() - - assert ( - neighborhood.indices - == np.array( - [ - [0, 1, 2], - [1, 2, 5], - [1, 4, 5], - [2, 3, 6], - [2, 5, 6], - [5, 6, 7], - ] - ) - ).all() - - -def test_means(triangles): - means = triangles.means - assert means == pytest.approx( - np.array( - [ - [0.33333333, 0.33333333], - [0.66666667, 0.66666667], - ] - ) - ) +import numpy as np +import pytest + +from autoarray.structures.triangles.array import ArrayTriangles +from autoarray.structures.triangles.shape import Point + + +@pytest.mark.parametrize( + "point, indices", + [ + ( + Point(0.1, 0.1), + np.array([0]), + ), + ( + Point(0.6, 0.6), + np.array([1]), + ), + ( + Point(0.5, 0.5), + np.array([0, 1]), + ), + ], +) +def test_contains_vertices( + triangles, + point, + indices, +): + containing_indices = triangles.containing_indices(point) + + assert (containing_indices == indices).all() + + +@pytest.mark.parametrize( + "indexes, vertices, indices", + [ + ( + np.array([0]), + np.array( + [ + [0.0, 0.0], + [0.0, 1.0], + [1.0, 0.0], + ] + ), + np.array( + [ + [0, 2, 1], + ] + ), + ), + ( + np.array([1]), + np.array( + [ + [0.0, 1.0], + [1.0, 0.0], + [1.0, 1.0], + ] + ), + np.array( + [ + [1, 0, 2], + ] + ), + ), + ( + np.array([0, 1]), + np.array( + [ + [0.0, 0.0], + [0.0, 1.0], + [1.0, 0.0], + [1.0, 1.0], + ] + ), + np.array( + [ + [0, 2, 1], + [2, 1, 3], + ] + ), + ), + ], +) +def test_for_indexes( + triangles, + indexes, + vertices, + indices, +): + containing = triangles.for_indexes(indexes) + + assert (containing.indices == indices).all() + assert (containing.vertices == vertices).all() + + +def test_up_sample(triangles): + up_sampled = triangles.up_sample() + + assert ( + up_sampled.vertices + == np.array( + [ + [0.0, 0.0], + [0.0, 0.5], + [0.0, 1.0], + [0.5, 0.0], + [0.5, 0.5], + [0.5, 1.0], + [1.0, 0.0], + [1.0, 0.5], + [1.0, 1.0], + ] + ) + ).all() + + assert ( + up_sampled.indices + == np.array( + [ + [6, 4, 3], + [2, 5, 4], + [2, 1, 4], + [8, 7, 5], + [3, 4, 1], + [4, 5, 7], + [0, 3, 1], + [6, 4, 7], + ] + ) + ).all() + + +@pytest.mark.parametrize( + "offset", + [-1, 0, 1], +) +def test_simple_neighborhood(offset): + triangles = ArrayTriangles( + indices=np.array( + [ + [0, 1, 2], + ] + ), + vertices=np.array( + [ + [0.0, 0.0], + [1.0, 0.0], + [0.0, 1.0], + ] + ) + + offset, + ) + assert ( + triangles.neighborhood().triangles + == ( + np.array( + [ + [[-1.0, 1.0], [0.0, 0.0], [0.0, 1.0]], + [[0.0, 0.0], [0.0, 1.0], [1.0, 0.0]], + [[0.0, 0.0], [1.0, -1.0], [1.0, 0.0]], + [[0.0, 1.0], [1.0, 0.0], [1.0, 1.0]], + ] + ) + + offset + ) + ).all() + + +def test_neighborhood(triangles): + neighborhood = triangles.neighborhood() + + assert ( + neighborhood.vertices + == np.array( + [ + [-1.0, 1.0], + [0.0, 0.0], + [0.0, 1.0], + [0.0, 2.0], + [1.0, -1.0], + [1.0, 0.0], + [1.0, 1.0], + [2.0, 0.0], + ] + ) + ).all() + + assert ( + neighborhood.indices + == np.array( + [ + [0, 1, 2], + [1, 2, 5], + [1, 4, 5], + [2, 3, 6], + [2, 5, 6], + [5, 6, 7], + ] + ) + ).all() + + +def test_means(triangles): + means = triangles.means + assert means == pytest.approx( + np.array( + [ + [0.33333333, 0.33333333], + [0.66666667, 0.66666667], + ] + ) + ) diff --git a/test_autoarray/structures/triangles/test_coordinate_implementation.py b/test_autoarray/structures/triangles/test_coordinate_implementation.py index d7c7a3388..26e8ebb0d 100644 --- a/test_autoarray/structures/triangles/test_coordinate_implementation.py +++ b/test_autoarray/structures/triangles/test_coordinate_implementation.py @@ -1,271 +1,271 @@ -import pytest - -import numpy as np - -from autoarray.structures.triangles.abstract import HEIGHT_FACTOR -from autoarray.structures.triangles.coordinate_array import CoordinateArrayTriangles - - -@pytest.fixture -def two_triangles(): - return CoordinateArrayTriangles( - coordinates=np.array([[0, 0], [1, 0]]), - side_length=1.0, - ) - - -def test_two(two_triangles): - assert np.all(two_triangles.centres == np.array([[0, 0], [0.5, 0]])) - assert np.all( - two_triangles.triangles - == [ - [ - [0.0, HEIGHT_FACTOR / 2], - [0.5, -HEIGHT_FACTOR / 2], - [-0.5, -HEIGHT_FACTOR / 2], - ], - [ - [0.5, -HEIGHT_FACTOR / 2], - [0.0, HEIGHT_FACTOR / 2], - [1.0, HEIGHT_FACTOR / 2], - ], - ] - ) - - -@pytest.fixture -def one_triangle(): - return CoordinateArrayTriangles( - coordinates=np.array([[0, 0]]), - side_length=1.0, - ) - - -def test_trivial_triangles(one_triangle): - assert one_triangle.flip_array == np.array([1]) - assert np.all(one_triangle.centres == np.array([[0, 0]])) - assert np.all( - one_triangle.triangles - == [ - [ - [0.0, HEIGHT_FACTOR / 2], - [0.5, -HEIGHT_FACTOR / 2], - [-0.5, -HEIGHT_FACTOR / 2], - ], - ] - ) - - -def test_above(): - triangles = CoordinateArrayTriangles( - coordinates=np.array([[0, 1]]), - side_length=1.0, - ) - assert np.all( - triangles.up_sample().triangles - == [ - [ - [0.0, 0.43301270189221935], - [-0.25, 0.8660254037844386], - [0.25, 0.8660254037844386], - ], - [ - [0.25, 0.8660254037844388], - [0.0, 1.299038105676658], - [0.5, 1.299038105676658], - ], - [ - [-0.25, 0.8660254037844388], - [-0.5, 1.299038105676658], - [0.0, 1.299038105676658], - ], - [ - [0.0, 1.299038105676658], - [0.25, 0.8660254037844388], - [-0.25, 0.8660254037844388], - ], - ] - ) - - -@pytest.fixture -def upside_down(): - return CoordinateArrayTriangles( - coordinates=np.array([[1, 0]]), - side_length=1.0, - ) - - -def test_upside_down(upside_down): - assert np.all(upside_down.centres == np.array([[0.5, 0]])) - assert np.all( - upside_down.triangles - == [ - [ - [0.5, -HEIGHT_FACTOR / 2], - [0.0, HEIGHT_FACTOR / 2], - [1.0, HEIGHT_FACTOR / 2], - ], - ] - ) - - -def test_up_sample(one_triangle): - up_sampled = one_triangle.up_sample() - assert up_sampled.side_length == 0.5 - assert np.all( - up_sampled.triangles - == [ - [[0.0, -0.4330127018922193], [-0.25, 0.0], [0.25, 0.0]], - [[0.25, 0.0], [0.5, -0.4330127018922193], [0.0, -0.4330127018922193]], - [[-0.25, 0.0], [0.0, -0.4330127018922193], [-0.5, -0.4330127018922193]], - [[0.0, 0.4330127018922193], [0.25, 0.0], [-0.25, 0.0]], - ] - ) - - -def test_up_sample_upside_down(upside_down): - up_sampled = upside_down.up_sample() - assert up_sampled.side_length == 0.5 - assert np.all( - up_sampled.triangles - == [ - [[0.5, -0.4330127018922193], [0.25, 0.0], [0.75, 0.0]], - [[0.75, 0.0], [0.5, 0.4330127018922193], [1.0, 0.4330127018922193]], - [[0.25, 0.0], [0.0, 0.4330127018922193], [0.5, 0.4330127018922193]], - [[0.5, 0.4330127018922193], [0.75, 0.0], [0.25, 0.0]], - ] - ) - - -def _test_up_sample_twice(one_triangle, plot): - plot(one_triangle) - one = one_triangle.up_sample() - two = one.up_sample() - three = two.up_sample() - plot(three, color="blue") - plot(two, color="green") - plot(one, color="red") - - -def test_neighborhood(one_triangle): - assert np.all( - one_triangle.neighborhood().triangles - == [ - [ - [-0.5, -0.4330127018922193], - [-1.0, 0.4330127018922193], - [0.0, 0.4330127018922193], - ], - [ - [0.0, -1.299038105676658], - [-0.5, -0.4330127018922193], - [0.5, -0.4330127018922193], - ], - [ - [0.0, 0.4330127018922193], - [0.5, -0.4330127018922193], - [-0.5, -0.4330127018922193], - ], - [ - [0.5, -0.4330127018922193], - [0.0, 0.4330127018922193], - [1.0, 0.4330127018922193], - ], - ] - ) - - -def test_upside_down_neighborhood(upside_down): - assert np.all( - upside_down.neighborhood().triangles - == [ - [ - [0.0, 0.4330127018922193], - [0.5, -0.4330127018922193], - [-0.5, -0.4330127018922193], - ], - [ - [0.5, -0.4330127018922193], - [0.0, 0.4330127018922193], - [1.0, 0.4330127018922193], - ], - [ - [0.5, 1.299038105676658], - [1.0, 0.4330127018922193], - [0.0, 0.4330127018922193], - ], - [ - [1.0, 0.4330127018922193], - [1.5, -0.4330127018922193], - [0.5, -0.4330127018922193], - ], - ] - ) - - -def _test_complicated(plot, one_triangle): - triangles = one_triangle.neighborhood().neighborhood() - up_sampled = triangles.up_sample() - - -def test_vertices(one_triangle): - assert np.all( - one_triangle.vertices - == [ - [-0.5, -0.4330127018922193], - [0.0, 0.4330127018922193], - [0.5, -0.4330127018922193], - ] - ) - - -def test_up_sampled_vertices(one_triangle): - assert np.all( - one_triangle.up_sample().vertices - == [ - [-0.5, -0.4330127018922193], - [-0.25, 0.0], - [0.0, -0.4330127018922193], - [0.0, 0.4330127018922193], - [0.25, 0.0], - [0.5, -0.4330127018922193], - ] - ) - - -def test_with_vertices(one_triangle): - triangle = one_triangle.with_vertices(np.array([[0, 0], [1, 0], [0.5, 1]])) - assert np.all(triangle.triangles == [[[1.0, 0.0], [0.5, 1.0], [0.0, 0.0]]]) - - -def _test_multiple_with_vertices(one_triangle, plot): - up_sampled = one_triangle.up_sample() - plot(up_sampled.with_vertices(2 * up_sampled.vertices).triangles.tolist()) - - -def test_for_indexes(two_triangles): - assert np.all( - two_triangles.for_indexes(np.array([0])).triangles - == [ - [ - [0.0, 0.4330127018922193], - [0.5, -0.4330127018922193], - [-0.5, -0.4330127018922193], - ] - ] - ) - - -def test_for_limits_and_scale(): - triangles = CoordinateArrayTriangles.for_limits_and_scale( - x_min=-1.0, - x_max=1.0, - y_min=-1.0, - y_max=1.0, - ) - assert triangles.triangles.shape == (4, 3, 2) - - -def test_means(one_triangle): - assert np.all(one_triangle.means == [[0.0, -0.14433756729740643]]) +import pytest + +import numpy as np + +from autoarray.structures.triangles.abstract import HEIGHT_FACTOR +from autoarray.structures.triangles.coordinate_array import CoordinateArrayTriangles + + +@pytest.fixture +def two_triangles(): + return CoordinateArrayTriangles( + coordinates=np.array([[0, 0], [1, 0]]), + side_length=1.0, + ) + + +def test_two(two_triangles): + assert np.all(two_triangles.centres == np.array([[0, 0], [0.5, 0]])) + assert np.all( + two_triangles.triangles + == [ + [ + [0.0, HEIGHT_FACTOR / 2], + [0.5, -HEIGHT_FACTOR / 2], + [-0.5, -HEIGHT_FACTOR / 2], + ], + [ + [0.5, -HEIGHT_FACTOR / 2], + [0.0, HEIGHT_FACTOR / 2], + [1.0, HEIGHT_FACTOR / 2], + ], + ] + ) + + +@pytest.fixture +def one_triangle(): + return CoordinateArrayTriangles( + coordinates=np.array([[0, 0]]), + side_length=1.0, + ) + + +def test_trivial_triangles(one_triangle): + assert one_triangle.flip_array == np.array([1]) + assert np.all(one_triangle.centres == np.array([[0, 0]])) + assert np.all( + one_triangle.triangles + == [ + [ + [0.0, HEIGHT_FACTOR / 2], + [0.5, -HEIGHT_FACTOR / 2], + [-0.5, -HEIGHT_FACTOR / 2], + ], + ] + ) + + +def test_above(): + triangles = CoordinateArrayTriangles( + coordinates=np.array([[0, 1]]), + side_length=1.0, + ) + assert np.all( + triangles.up_sample().triangles + == [ + [ + [0.0, 0.43301270189221935], + [-0.25, 0.8660254037844386], + [0.25, 0.8660254037844386], + ], + [ + [0.25, 0.8660254037844388], + [0.0, 1.299038105676658], + [0.5, 1.299038105676658], + ], + [ + [-0.25, 0.8660254037844388], + [-0.5, 1.299038105676658], + [0.0, 1.299038105676658], + ], + [ + [0.0, 1.299038105676658], + [0.25, 0.8660254037844388], + [-0.25, 0.8660254037844388], + ], + ] + ) + + +@pytest.fixture +def upside_down(): + return CoordinateArrayTriangles( + coordinates=np.array([[1, 0]]), + side_length=1.0, + ) + + +def test_upside_down(upside_down): + assert np.all(upside_down.centres == np.array([[0.5, 0]])) + assert np.all( + upside_down.triangles + == [ + [ + [0.5, -HEIGHT_FACTOR / 2], + [0.0, HEIGHT_FACTOR / 2], + [1.0, HEIGHT_FACTOR / 2], + ], + ] + ) + + +def test_up_sample(one_triangle): + up_sampled = one_triangle.up_sample() + assert up_sampled.side_length == 0.5 + assert np.all( + up_sampled.triangles + == [ + [[0.0, -0.4330127018922193], [-0.25, 0.0], [0.25, 0.0]], + [[0.25, 0.0], [0.5, -0.4330127018922193], [0.0, -0.4330127018922193]], + [[-0.25, 0.0], [0.0, -0.4330127018922193], [-0.5, -0.4330127018922193]], + [[0.0, 0.4330127018922193], [0.25, 0.0], [-0.25, 0.0]], + ] + ) + + +def test_up_sample_upside_down(upside_down): + up_sampled = upside_down.up_sample() + assert up_sampled.side_length == 0.5 + assert np.all( + up_sampled.triangles + == [ + [[0.5, -0.4330127018922193], [0.25, 0.0], [0.75, 0.0]], + [[0.75, 0.0], [0.5, 0.4330127018922193], [1.0, 0.4330127018922193]], + [[0.25, 0.0], [0.0, 0.4330127018922193], [0.5, 0.4330127018922193]], + [[0.5, 0.4330127018922193], [0.75, 0.0], [0.25, 0.0]], + ] + ) + + +def _test_up_sample_twice(one_triangle, plot): + plot(one_triangle) + one = one_triangle.up_sample() + two = one.up_sample() + three = two.up_sample() + plot(three, color="blue") + plot(two, color="green") + plot(one, color="red") + + +def test_neighborhood(one_triangle): + assert np.all( + one_triangle.neighborhood().triangles + == [ + [ + [-0.5, -0.4330127018922193], + [-1.0, 0.4330127018922193], + [0.0, 0.4330127018922193], + ], + [ + [0.0, -1.299038105676658], + [-0.5, -0.4330127018922193], + [0.5, -0.4330127018922193], + ], + [ + [0.0, 0.4330127018922193], + [0.5, -0.4330127018922193], + [-0.5, -0.4330127018922193], + ], + [ + [0.5, -0.4330127018922193], + [0.0, 0.4330127018922193], + [1.0, 0.4330127018922193], + ], + ] + ) + + +def test_upside_down_neighborhood(upside_down): + assert np.all( + upside_down.neighborhood().triangles + == [ + [ + [0.0, 0.4330127018922193], + [0.5, -0.4330127018922193], + [-0.5, -0.4330127018922193], + ], + [ + [0.5, -0.4330127018922193], + [0.0, 0.4330127018922193], + [1.0, 0.4330127018922193], + ], + [ + [0.5, 1.299038105676658], + [1.0, 0.4330127018922193], + [0.0, 0.4330127018922193], + ], + [ + [1.0, 0.4330127018922193], + [1.5, -0.4330127018922193], + [0.5, -0.4330127018922193], + ], + ] + ) + + +def _test_complicated(plot, one_triangle): + triangles = one_triangle.neighborhood().neighborhood() + up_sampled = triangles.up_sample() + + +def test_vertices(one_triangle): + assert np.all( + one_triangle.vertices + == [ + [-0.5, -0.4330127018922193], + [0.0, 0.4330127018922193], + [0.5, -0.4330127018922193], + ] + ) + + +def test_up_sampled_vertices(one_triangle): + assert np.all( + one_triangle.up_sample().vertices + == [ + [-0.5, -0.4330127018922193], + [-0.25, 0.0], + [0.0, -0.4330127018922193], + [0.0, 0.4330127018922193], + [0.25, 0.0], + [0.5, -0.4330127018922193], + ] + ) + + +def test_with_vertices(one_triangle): + triangle = one_triangle.with_vertices(np.array([[0, 0], [1, 0], [0.5, 1]])) + assert np.all(triangle.triangles == [[[1.0, 0.0], [0.5, 1.0], [0.0, 0.0]]]) + + +def _test_multiple_with_vertices(one_triangle, plot): + up_sampled = one_triangle.up_sample() + plot(up_sampled.with_vertices(2 * up_sampled.vertices).triangles.tolist()) + + +def test_for_indexes(two_triangles): + assert np.all( + two_triangles.for_indexes(np.array([0])).triangles + == [ + [ + [0.0, 0.4330127018922193], + [0.5, -0.4330127018922193], + [-0.5, -0.4330127018922193], + ] + ] + ) + + +def test_for_limits_and_scale(): + triangles = CoordinateArrayTriangles.for_limits_and_scale( + x_min=-1.0, + x_max=1.0, + y_min=-1.0, + y_max=1.0, + ) + assert triangles.triangles.shape == (4, 3, 2) + + +def test_means(one_triangle): + assert np.all(one_triangle.means == [[0.0, -0.14433756729740643]]) diff --git a/test_autoarray/structures/triangles/test_coordinate_jax.py b/test_autoarray/structures/triangles/test_coordinate_jax.py index b22701371..f224bdda2 100644 --- a/test_autoarray/structures/triangles/test_coordinate_jax.py +++ b/test_autoarray/structures/triangles/test_coordinate_jax.py @@ -1,127 +1,127 @@ -from autoarray.numpy_wrapper import jit -import pytest - -from autoarray.structures.triangles.abstract import HEIGHT_FACTOR -from autoarray.structures.triangles.shape import Point - -try: - from jax import numpy as np - import jax - - jax.config.update("jax_log_compiles", True) - from autoarray.structures.triangles.jax_coordinate_array import ( - CoordinateArrayTriangles, - ) -except ImportError: - import numpy as np - from autoarray.structures.triangles.coordinate_array import CoordinateArrayTriangles - - -@pytest.fixture -def one_triangle(): - return CoordinateArrayTriangles( - coordinates=np.array([[0, 0]]), - side_length=1.0, - ) - - -@jit -def full_routine(triangles): - neighborhood = triangles.neighborhood() - up_sampled = neighborhood.up_sample() - with_vertices = up_sampled.with_vertices(up_sampled.vertices) - indexes = with_vertices.containing_indices(Point(0.1, 0.1)) - return up_sampled.for_indexes(indexes) - - -def test_full_routine(one_triangle, compare_with_nans): - result = full_routine(one_triangle) - - assert compare_with_nans( - result.triangles, - np.array( - [ - [ - [0.0, 0.4330126941204071], - [0.25, 0.0], - [-0.25, 0.0], - ] - ] - ), - ) - - -def test_neighborhood(one_triangle): - assert np.allclose( - np.array(jit(one_triangle.neighborhood)().triangles), - np.array( - [ - [ - [-0.5, -0.4330126941204071], - [-1.0, 0.4330126941204071], - [0.0, 0.4330126941204071], - ], - [ - [0.0, -1.299038052558899], - [-0.5, -0.4330126941204071], - [0.5, -0.4330126941204071], - ], - [ - [0.0, 0.4330126941204071], - [0.5, -0.4330126941204071], - [-0.5, -0.4330126941204071], - ], - [ - [0.5, -0.4330126941204071], - [0.0, 0.4330126941204071], - [1.0, 0.4330126941204071], - ], - ] - ), - ) - - -def test_up_sample(one_triangle): - up_sampled = jit(one_triangle.up_sample)() - assert np.allclose( - np.array(up_sampled.triangles), - np.array( - [ - [ - [[0.0, -0.4330126941204071], [-0.25, 0.0], [0.25, 0.0]], - [ - [0.25, 0.0], - [0.5, -0.4330126941204071], - [0.0, -0.4330126941204071], - ], - [ - [-0.25, 0.0], - [0.0, -0.4330126941204071], - [-0.5, -0.4330126941204071], - ], - [[0.0, 0.4330126941204071], [0.25, 0.0], [-0.25, 0.0]], - ] - ] - ), - ) - - -def test_means(one_triangle): - assert len(one_triangle.means) == 1 - - up_sampled = one_triangle.up_sample() - neighborhood = up_sampled.neighborhood() - assert np.count_nonzero(~np.isnan(neighborhood.means).any(axis=1)) == 10 - - -ONE_TRIANGLE_AREA = HEIGHT_FACTOR * 0.5 - - -def test_area(one_triangle): - assert one_triangle.area == ONE_TRIANGLE_AREA - assert one_triangle.up_sample().area == ONE_TRIANGLE_AREA - - neighborhood = one_triangle.neighborhood() - assert neighborhood.area == 4 * ONE_TRIANGLE_AREA - assert neighborhood.up_sample().area == 4 * ONE_TRIANGLE_AREA - assert neighborhood.neighborhood().area == 10 * ONE_TRIANGLE_AREA +from autoarray.numpy_wrapper import jit +import pytest + +from autoarray.structures.triangles.abstract import HEIGHT_FACTOR +from autoarray.structures.triangles.shape import Point + +try: + from jax import numpy as np + import jax + + jax.config.update("jax_log_compiles", True) + from autoarray.structures.triangles.jax_coordinate_array import ( + CoordinateArrayTriangles, + ) +except ImportError: + import numpy as np + from autoarray.structures.triangles.coordinate_array import CoordinateArrayTriangles + + +@pytest.fixture +def one_triangle(): + return CoordinateArrayTriangles( + coordinates=np.array([[0, 0]]), + side_length=1.0, + ) + + +@jit +def full_routine(triangles): + neighborhood = triangles.neighborhood() + up_sampled = neighborhood.up_sample() + with_vertices = up_sampled.with_vertices(up_sampled.vertices) + indexes = with_vertices.containing_indices(Point(0.1, 0.1)) + return up_sampled.for_indexes(indexes) + + +def test_full_routine(one_triangle, compare_with_nans): + result = full_routine(one_triangle) + + assert compare_with_nans( + result.triangles, + np.array( + [ + [ + [0.0, 0.4330126941204071], + [0.25, 0.0], + [-0.25, 0.0], + ] + ] + ), + ) + + +def test_neighborhood(one_triangle): + assert np.allclose( + np.array(jit(one_triangle.neighborhood)().triangles), + np.array( + [ + [ + [-0.5, -0.4330126941204071], + [-1.0, 0.4330126941204071], + [0.0, 0.4330126941204071], + ], + [ + [0.0, -1.299038052558899], + [-0.5, -0.4330126941204071], + [0.5, -0.4330126941204071], + ], + [ + [0.0, 0.4330126941204071], + [0.5, -0.4330126941204071], + [-0.5, -0.4330126941204071], + ], + [ + [0.5, -0.4330126941204071], + [0.0, 0.4330126941204071], + [1.0, 0.4330126941204071], + ], + ] + ), + ) + + +def test_up_sample(one_triangle): + up_sampled = jit(one_triangle.up_sample)() + assert np.allclose( + np.array(up_sampled.triangles), + np.array( + [ + [ + [[0.0, -0.4330126941204071], [-0.25, 0.0], [0.25, 0.0]], + [ + [0.25, 0.0], + [0.5, -0.4330126941204071], + [0.0, -0.4330126941204071], + ], + [ + [-0.25, 0.0], + [0.0, -0.4330126941204071], + [-0.5, -0.4330126941204071], + ], + [[0.0, 0.4330126941204071], [0.25, 0.0], [-0.25, 0.0]], + ] + ] + ), + ) + + +def test_means(one_triangle): + assert len(one_triangle.means) == 1 + + up_sampled = one_triangle.up_sample() + neighborhood = up_sampled.neighborhood() + assert np.count_nonzero(~np.isnan(neighborhood.means).any(axis=1)) == 10 + + +ONE_TRIANGLE_AREA = HEIGHT_FACTOR * 0.5 + + +def test_area(one_triangle): + assert one_triangle.area == ONE_TRIANGLE_AREA + assert one_triangle.up_sample().area == ONE_TRIANGLE_AREA + + neighborhood = one_triangle.neighborhood() + assert neighborhood.area == 4 * ONE_TRIANGLE_AREA + assert neighborhood.up_sample().area == 4 * ONE_TRIANGLE_AREA + assert neighborhood.neighborhood().area == 10 * ONE_TRIANGLE_AREA diff --git a/test_autoarray/structures/triangles/test_extended_source.py b/test_autoarray/structures/triangles/test_extended_source.py index 4491bd834..efd711642 100644 --- a/test_autoarray/structures/triangles/test_extended_source.py +++ b/test_autoarray/structures/triangles/test_extended_source.py @@ -1,75 +1,75 @@ -import pytest -import numpy as np - -from autoarray.structures.triangles.array import ArrayTriangles -from autoarray.structures.triangles.shape import Circle - - -@pytest.fixture -def triangles(): - return ArrayTriangles( - indices=np.array( - [ - [0, 1, 2], - [1, 2, 3], - ] - ), - vertices=np.array( - [ - [0.0, 0.0], - [1.0, 0.0], - [0.0, 1.0], - [1.0, 1.0], - ] - ), - ) - - -@pytest.mark.parametrize( - "point, indices", - [ - ( - (0.1, 0.1), - [0], - ), - ( - (0.6, 0.6), - [1], - ), - ( - (0.5, 0.5), - [0, 1], - ), - ], -) -def test_small_point(triangles, point, indices): - containing_triangles = triangles.containing_indices( - Circle( - *point, - radius=0.001, - ) - ) - assert containing_triangles.tolist() == indices - - -@pytest.mark.parametrize( - "radius, indices", - [ - (0.1, []), - (1.5, [0]), - (2, [0, 1]), - ], -) -def test_large_circle( - triangles, - radius, - indices, -): - containing_triangles = triangles.containing_indices( - Circle( - -1.0, - 0.0, - radius=radius, - ) - ) - assert containing_triangles.tolist() == indices +import pytest +import numpy as np + +from autoarray.structures.triangles.array import ArrayTriangles +from autoarray.structures.triangles.shape import Circle + + +@pytest.fixture +def triangles(): + return ArrayTriangles( + indices=np.array( + [ + [0, 1, 2], + [1, 2, 3], + ] + ), + vertices=np.array( + [ + [0.0, 0.0], + [1.0, 0.0], + [0.0, 1.0], + [1.0, 1.0], + ] + ), + ) + + +@pytest.mark.parametrize( + "point, indices", + [ + ( + (0.1, 0.1), + [0], + ), + ( + (0.6, 0.6), + [1], + ), + ( + (0.5, 0.5), + [0, 1], + ), + ], +) +def test_small_point(triangles, point, indices): + containing_triangles = triangles.containing_indices( + Circle( + *point, + radius=0.001, + ) + ) + assert containing_triangles.tolist() == indices + + +@pytest.mark.parametrize( + "radius, indices", + [ + (0.1, []), + (1.5, [0]), + (2, [0, 1]), + ], +) +def test_large_circle( + triangles, + radius, + indices, +): + containing_triangles = triangles.containing_indices( + Circle( + -1.0, + 0.0, + radius=radius, + ) + ) + assert containing_triangles.tolist() == indices diff --git a/test_autoarray/structures/triangles/test_jax.py b/test_autoarray/structures/triangles/test_jax.py index c934bada0..62483b590 100644 --- a/test_autoarray/structures/triangles/test_jax.py +++ b/test_autoarray/structures/triangles/test_jax.py @@ -1,309 +1,309 @@ -from autoarray.structures.triangles.shape import Point - -try: - from jax import numpy as np - import jax - - jax.config.update("jax_log_compiles", True) - from autoarray.structures.triangles.jax_array import ArrayTriangles -except ImportError: - import numpy as np - from autoarray.structures.triangles.array import ArrayTriangles - -import pytest - - -pytest.importorskip("jax") - - -@pytest.fixture -def triangles(): - return ArrayTriangles( - indices=np.array( - [ - [0, 1, 2], - [1, 2, 3], - ] - ), - vertices=np.array( - [ - [0.0, 0.0], - [1.0, 0.0], - [0.0, 1.0], - [1.0, 1.0], - ] - ), - max_containing_size=5, - ) - - -@pytest.mark.parametrize( - "point, vertices, indices", - [ - ( - Point(0.1, 0.1), - np.array( - [ - [0.0, 0.0], - [0.0, 1.0], - [1.0, 0.0], - ] - ), - np.array([0, -1, -1, -1, -1]), - ), - ( - Point(0.6, 0.6), - np.array( - [ - [0.0, 1.0], - [1.0, 0.0], - [1.0, 1.0], - ] - ), - np.array([1, -1, -1, -1, -1]), - ), - ( - Point(0.5, 0.5), - np.array( - [ - [0.0, 0.0], - [0.0, 1.0], - [1.0, 0.0], - [1.0, 1.0], - ] - ), - np.array([0, 1, -1, -1, -1]), - ), - ], -) -def test_contains_vertices( - triangles, - point, - vertices, - indices, -): - containing_indices = jax.jit(triangles.containing_indices)(point) - - assert (containing_indices == indices).all() - - -@pytest.mark.parametrize( - "indexes, vertices, indices", - [ - ( - np.array([0]), - np.array( - [ - [0.0, 0.0], - [0.0, 1.0], - [1.0, 0.0], - ] - ), - np.array( - [ - [0, 1, 2], - ] - ), - ), - ( - np.array([1]), - np.array( - [ - [0.0, 1.0], - [1.0, 0.0], - [1.0, 1.0], - ] - ), - np.array( - [ - [0, 1, 2], - ] - ), - ), - ( - np.array([0, 1]), - np.array( - [ - [0.0, 0.0], - [0.0, 1.0], - [1.0, 0.0], - [1.0, 1.0], - ], - ), - np.array( - [ - [0, 1, 2], - [1, 2, 3], - ] - ), - ), - ], -) -def test_for_indexes( - triangles, - indexes, - vertices, - indices, - compare_with_nans, -): - containing = jax.jit(triangles.for_indexes)(indexes) - - assert (containing.indices == indices).all() - assert compare_with_nans( - containing.vertices, - vertices, - ).all() - - -def test_negative_index( - triangles, - compare_with_nans, -): - indexes = np.array([0, -1]) - - containing = jax.jit(triangles.for_indexes)(indexes) - - assert ( - containing.indices - == np.array( - [ - [-1, -1, -1], - [0, 1, 2], - ], - ) - ).all() - assert compare_with_nans( - containing.vertices, - np.array( - [ - [0.0, 0.0], - [0.0, 1.0], - [1.0, 0.0], - ] - ), - ) - - -def test_up_sample( - triangles, - compare_with_nans, -): - up_sampled = jax.jit(triangles.up_sample)() - - assert compare_with_nans( - up_sampled.vertices, - np.array( - [ - [0.0, 0.0], - [0.0, 0.5], - [0.0, 1.0], - [0.5, 0.0], - [0.5, 0.5], - [0.5, 1.0], - [1.0, 0.0], - [1.0, 0.5], - [1.0, 1.0], - ] - ), - ) - - assert ( - up_sampled.indices - == np.array( - [ - [0, 1, 3], - [1, 2, 4], - [1, 3, 4], - [2, 4, 5], - [3, 4, 6], - [4, 5, 7], - [4, 6, 7], - [5, 7, 8], - ] - ) - ).all() - - -@pytest.mark.parametrize( - "offset", - [-1, 0, 1], -) -def test_simple_neighborhood(offset, compare_with_nans): - triangles = ArrayTriangles( - indices=np.array( - [ - [0, 1, 2], - ] - ), - vertices=np.array( - [ - [0.0, 0.0], - [1.0, 0.0], - [0.0, 1.0], - ] - ) - + offset, - ) - - assert compare_with_nans( - jax.jit(triangles.neighborhood)().triangles, - ( - np.array( - [ - [[-1.0, 1.0], [0.0, 0.0], [0.0, 1.0]], - [[0.0, 0.0], [0.0, 1.0], [1.0, 0.0]], - [[0.0, 0.0], [1.0, -1.0], [1.0, 0.0]], - [[0.0, 1.0], [1.0, 0.0], [1.0, 1.0]], - ] - ) - + offset - ), - ) - - -def test_neighborhood(triangles, compare_with_nans): - neighborhood = jax.jit(triangles.neighborhood)() - - assert compare_with_nans( - neighborhood.vertices, - np.array( - [ - [-1.0, 1.0], - [0.0, 0.0], - [0.0, 1.0], - [0.0, 2.0], - [1.0, -1.0], - [1.0, 0.0], - [1.0, 1.0], - [2.0, 0.0], - ] - ), - ) - - assert ( - neighborhood.indices - == np.array( - [ - [0, 1, 2], - [1, 2, 5], - [1, 4, 5], - [2, 3, 6], - [2, 5, 6], - [5, 6, 7], - [-1, -1, -1], - [-1, -1, -1], - ] - ) - ).all() - - -def test_means(triangles): - means = triangles.means - assert means == pytest.approx( - np.array( - [ - [0.33333333, 0.33333333], - [0.66666667, 0.66666667], - ] - ) - ) +from autoarray.structures.triangles.shape import Point + +try: + from jax import numpy as np + import jax + + jax.config.update("jax_log_compiles", True) + from autoarray.structures.triangles.jax_array import ArrayTriangles +except ImportError: + import numpy as np + from autoarray.structures.triangles.array import ArrayTriangles + +import pytest + + +pytest.importorskip("jax") + + +@pytest.fixture +def triangles(): + return ArrayTriangles( + indices=np.array( + [ + [0, 1, 2], + [1, 2, 3], + ] + ), + vertices=np.array( + [ + [0.0, 0.0], + [1.0, 0.0], + [0.0, 1.0], + [1.0, 1.0], + ] + ), + max_containing_size=5, + ) + + +@pytest.mark.parametrize( + "point, vertices, indices", + [ + ( + Point(0.1, 0.1), + np.array( + [ + [0.0, 0.0], + [0.0, 1.0], + [1.0, 0.0], + ] + ), + np.array([0, -1, -1, -1, -1]), + ), + ( + Point(0.6, 0.6), + np.array( + [ + [0.0, 1.0], + [1.0, 0.0], + [1.0, 1.0], + ] + ), + np.array([1, -1, -1, -1, -1]), + ), + ( + Point(0.5, 0.5), + np.array( + [ + [0.0, 0.0], + [0.0, 1.0], + [1.0, 0.0], + [1.0, 1.0], + ] + ), + np.array([0, 1, -1, -1, -1]), + ), + ], +) +def test_contains_vertices( + triangles, + point, + vertices, + indices, +): + containing_indices = jax.jit(triangles.containing_indices)(point) + + assert (containing_indices == indices).all() + + +@pytest.mark.parametrize( + "indexes, vertices, indices", + [ + ( + np.array([0]), + np.array( + [ + [0.0, 0.0], + [0.0, 1.0], + [1.0, 0.0], + ] + ), + np.array( + [ + [0, 1, 2], + ] + ), + ), + ( + np.array([1]), + np.array( + [ + [0.0, 1.0], + [1.0, 0.0], + [1.0, 1.0], + ] + ), + np.array( + [ + [0, 1, 2], + ] + ), + ), + ( + np.array([0, 1]), + np.array( + [ + [0.0, 0.0], + [0.0, 1.0], + [1.0, 0.0], + [1.0, 1.0], + ], + ), + np.array( + [ + [0, 1, 2], + [1, 2, 3], + ] + ), + ), + ], +) +def test_for_indexes( + triangles, + indexes, + vertices, + indices, + compare_with_nans, +): + containing = jax.jit(triangles.for_indexes)(indexes) + + assert (containing.indices == indices).all() + assert compare_with_nans( + containing.vertices, + vertices, + ).all() + + +def test_negative_index( + triangles, + compare_with_nans, +): + indexes = np.array([0, -1]) + + containing = jax.jit(triangles.for_indexes)(indexes) + + assert ( + containing.indices + == np.array( + [ + [-1, -1, -1], + [0, 1, 2], + ], + ) + ).all() + assert compare_with_nans( + containing.vertices, + np.array( + [ + [0.0, 0.0], + [0.0, 1.0], + [1.0, 0.0], + ] + ), + ) + + +def test_up_sample( + triangles, + compare_with_nans, +): + up_sampled = jax.jit(triangles.up_sample)() + + assert compare_with_nans( + up_sampled.vertices, + np.array( + [ + [0.0, 0.0], + [0.0, 0.5], + [0.0, 1.0], + [0.5, 0.0], + [0.5, 0.5], + [0.5, 1.0], + [1.0, 0.0], + [1.0, 0.5], + [1.0, 1.0], + ] + ), + ) + + assert ( + up_sampled.indices + == np.array( + [ + [0, 1, 3], + [1, 2, 4], + [1, 3, 4], + [2, 4, 5], + [3, 4, 6], + [4, 5, 7], + [4, 6, 7], + [5, 7, 8], + ] + ) + ).all() + + +@pytest.mark.parametrize( + "offset", + [-1, 0, 1], +) +def test_simple_neighborhood(offset, compare_with_nans): + triangles = ArrayTriangles( + indices=np.array( + [ + [0, 1, 2], + ] + ), + vertices=np.array( + [ + [0.0, 0.0], + [1.0, 0.0], + [0.0, 1.0], + ] + ) + + offset, + ) + + assert compare_with_nans( + jax.jit(triangles.neighborhood)().triangles, + ( + np.array( + [ + [[-1.0, 1.0], [0.0, 0.0], [0.0, 1.0]], + [[0.0, 0.0], [0.0, 1.0], [1.0, 0.0]], + [[0.0, 0.0], [1.0, -1.0], [1.0, 0.0]], + [[0.0, 1.0], [1.0, 0.0], [1.0, 1.0]], + ] + ) + + offset + ), + ) + + +def test_neighborhood(triangles, compare_with_nans): + neighborhood = jax.jit(triangles.neighborhood)() + + assert compare_with_nans( + neighborhood.vertices, + np.array( + [ + [-1.0, 1.0], + [0.0, 0.0], + [0.0, 1.0], + [0.0, 2.0], + [1.0, -1.0], + [1.0, 0.0], + [1.0, 1.0], + [2.0, 0.0], + ] + ), + ) + + assert ( + neighborhood.indices + == np.array( + [ + [0, 1, 2], + [1, 2, 5], + [1, 4, 5], + [2, 3, 6], + [2, 5, 6], + [5, 6, 7], + [-1, -1, -1], + [-1, -1, -1], + ] + ) + ).all() + + +def test_means(triangles): + means = triangles.means + assert means == pytest.approx( + np.array( + [ + [0.33333333, 0.33333333], + [0.66666667, 0.66666667], + ] + ) + ) diff --git a/test_autoarray/structures/triangles/test_nan_triangles.py b/test_autoarray/structures/triangles/test_nan_triangles.py index 1c9fee576..24fe8aa1c 100644 --- a/test_autoarray/structures/triangles/test_nan_triangles.py +++ b/test_autoarray/structures/triangles/test_nan_triangles.py @@ -1,80 +1,80 @@ -import pytest - -try: - from jax import numpy as np - from autoarray.structures.triangles.jax_array import ArrayTriangles -except ImportError: - import numpy as np - from autoarray.structures.triangles.array import ArrayTriangles - - -pytest.importorskip("jax") - - -@pytest.fixture -def nan_triangles(): - return ArrayTriangles( - indices=np.array( - [ - [0, 1, 2], - [1, 2, 3], - [-1, -1, -1], - ] - ), - vertices=np.array( - [ - [0.0, 0.0], - [1.0, 0.0], - [0.0, 1.0], - [1.0, 1.0], - ] - ), - ) - - -def test_nan_triangles(nan_triangles, compare_with_nans): - assert compare_with_nans( - nan_triangles.triangles, - np.array( - [ - [[0.0, 0.0], [1.0, 0.0], [0.0, 1.0]], - [[1.0, 0.0], [0.0, 1.0], [1.0, 1.0]], - ] - ), - ).all() - - -def test_up_sample_nan_triangles(nan_triangles, compare_with_nans): - up_sampled = nan_triangles.up_sample() - - assert compare_with_nans( - up_sampled.triangles, - np.array( - [ - [[0.0, 0.0], [0.0, 0.5], [0.5, 0.0]], - [[0.0, 0.5], [0.0, 1.0], [0.5, 0.5]], - [[0.0, 0.5], [0.5, 0.0], [0.5, 0.5]], - [[0.0, 1.0], [0.5, 0.5], [0.5, 1.0]], - [[0.5, 0.0], [0.5, 0.5], [1.0, 0.0]], - [[0.5, 0.5], [0.5, 1.0], [1.0, 0.5]], - [[0.5, 0.5], [1.0, 0.0], [1.0, 0.5]], - [[0.5, 1.0], [1.0, 0.5], [1.0, 1.0]], - ] - ), - ) - - -def test_neighborhood(nan_triangles, compare_with_nans): - assert compare_with_nans( - nan_triangles.neighborhood().triangles, - np.array( - [ - [[-1.0, 1.0], [0.0, 0.0], [0.0, 1.0]], - [[0.0, 0.0], [0.0, 1.0], [1.0, 0.0]], - [[0.0, 0.0], [1.0, -1.0], [1.0, 0.0]], - [[0.0, 1.0], [0.0, 2.0], [1.0, 1.0]], - [[0.0, 1.0], [1.0, 0.0], [1.0, 1.0]], - [[1.0, 0.0], [1.0, 1.0], [2.0, 0.0]], - ] - ), - ) +import pytest + +try: + from jax import numpy as np + from autoarray.structures.triangles.jax_array import ArrayTriangles +except ImportError: + import numpy as np + from autoarray.structures.triangles.array import ArrayTriangles + + +pytest.importorskip("jax") + + +@pytest.fixture +def nan_triangles(): + return ArrayTriangles( + indices=np.array( + [ + [0, 1, 2], + [1, 2, 3], + [-1, -1, -1], + ] + ), + vertices=np.array( + [ + [0.0, 0.0], + [1.0, 0.0], + [0.0, 1.0], + [1.0, 1.0], + ] + ), + ) + + +def test_nan_triangles(nan_triangles, compare_with_nans): + assert compare_with_nans( + nan_triangles.triangles, + np.array( + [ + [[0.0, 0.0], [1.0, 0.0], [0.0, 1.0]], + [[1.0, 0.0], [0.0, 1.0], [1.0, 1.0]], + ] + ), + ).all() + + +def test_up_sample_nan_triangles(nan_triangles, compare_with_nans): + up_sampled = nan_triangles.up_sample() + + assert compare_with_nans( + up_sampled.triangles, + np.array( + [ + [[0.0, 0.0], [0.0, 0.5], [0.5, 0.0]], + [[0.0, 0.5], [0.0, 1.0], [0.5, 0.5]], + [[0.0, 0.5], [0.5, 0.0], [0.5, 0.5]], + [[0.0, 1.0], [0.5, 0.5], [0.5, 1.0]], + [[0.5, 0.0], [0.5, 0.5], [1.0, 0.0]], + [[0.5, 0.5], [0.5, 1.0], [1.0, 0.5]], + [[0.5, 0.5], [1.0, 0.0], [1.0, 0.5]], + [[0.5, 1.0], [1.0, 0.5], [1.0, 1.0]], + ] + ), + ) + + +def test_neighborhood(nan_triangles, compare_with_nans): + assert compare_with_nans( + nan_triangles.neighborhood().triangles, + np.array( + [ + [[-1.0, 1.0], [0.0, 0.0], [0.0, 1.0]], + [[0.0, 0.0], [0.0, 1.0], [1.0, 0.0]], + [[0.0, 0.0], [1.0, -1.0], [1.0, 0.0]], + [[0.0, 1.0], [0.0, 2.0], [1.0, 1.0]], + [[0.0, 1.0], [1.0, 0.0], [1.0, 1.0]], + [[1.0, 0.0], [1.0, 1.0], [2.0, 0.0]], + ] + ), + ) diff --git a/test_autoarray/structures/triangles/test_polygons.py b/test_autoarray/structures/triangles/test_polygons.py index e08401569..b5e738494 100644 --- a/test_autoarray/structures/triangles/test_polygons.py +++ b/test_autoarray/structures/triangles/test_polygons.py @@ -1,81 +1,81 @@ -import pytest - -from autoarray.structures.triangles.shape import Polygon, Triangle, Square -import numpy as np - - -@pytest.mark.parametrize( - "centroid, is_inside", - [ - ((0.5, 0.5), True), - ((0.0, 0.0), True), - ((1.0, 0.0), True), - ((0.0, 1.0), True), - ((0.0, 2.0), False), - ((2.0, 0.0), False), - ((2.0, 2.0), False), - ], -) -@pytest.mark.parametrize( - "shape", - [ - Triangle( - (0.0, 0.0), - (1.0, 0.0), - (0.0, 1.0), - ), - Polygon( - [ - (0.0, 0.0), - (1.0, 0.0), - (0.0, 1.0), - ] - ), - ], -) -def test_triangle(centroid, is_inside, shape): - assert shape.mask( - np.array( - [3 * [centroid]], - ) - ) == np.array([is_inside]) - - -@pytest.mark.parametrize( - "centroid, is_inside", - [ - ((0.5, 0.5), True), - ((0.0, 0.0), True), - ((1.0, 0.0), True), - ((0.0, 1.0), True), - ((1.0, 1.0), True), - ((0.0, 2.0), False), - ((2.0, 0.0), False), - ((2.0, 2.0), False), - ], -) -@pytest.mark.parametrize( - "shape", - [ - Polygon( - [ - (0.0, 0.0), - (1.0, 0.0), - (1.0, 1.0), - (0.0, 1.0), - ] - ), - Square( - top=0.0, - bottom=1.0, - left=0.0, - right=1.0, - ), - ], -) -def test_square(centroid, is_inside, shape): - assert shape.mask( - np.array( - [3 * [centroid]], - ) - ) == np.array([is_inside]) +import pytest + +from autoarray.structures.triangles.shape import Polygon, Triangle, Square +import numpy as np + + +@pytest.mark.parametrize( + "centroid, is_inside", + [ + ((0.5, 0.5), True), + ((0.0, 0.0), True), + ((1.0, 0.0), True), + ((0.0, 1.0), True), + ((0.0, 2.0), False), + ((2.0, 0.0), False), + ((2.0, 2.0), False), + ], +) +@pytest.mark.parametrize( + "shape", + [ + Triangle( + (0.0, 0.0), + (1.0, 0.0), + (0.0, 1.0), + ), + Polygon( + [ + (0.0, 0.0), + (1.0, 0.0), + (0.0, 1.0), + ] + ), + ], +) +def test_triangle(centroid, is_inside, shape): + assert shape.mask( + np.array( + [3 * [centroid]], + ) + ) == np.array([is_inside]) + + +@pytest.mark.parametrize( + "centroid, is_inside", + [ + ((0.5, 0.5), True), + ((0.0, 0.0), True), + ((1.0, 0.0), True), + ((0.0, 1.0), True), + ((1.0, 1.0), True), + ((0.0, 2.0), False), + ((2.0, 0.0), False), + ((2.0, 2.0), False), + ], +) +@pytest.mark.parametrize( + "shape", + [ + Polygon( + [ + (0.0, 0.0), + (1.0, 0.0), + (1.0, 1.0), + (0.0, 1.0), + ] + ), + Square( + top=0.0, + bottom=1.0, + left=0.0, + right=1.0, + ), + ], +) +def test_square(centroid, is_inside, shape): + assert shape.mask( + np.array( + [3 * [centroid]], + ) + ) == np.array([is_inside]) diff --git a/test_autoarray/test_jax_changes.py b/test_autoarray/test_jax_changes.py index f5104a942..458d64d5e 100644 --- a/test_autoarray/test_jax_changes.py +++ b/test_autoarray/test_jax_changes.py @@ -1,36 +1,36 @@ -import autoarray as aa -import pytest - -from autoarray import Grid2D, Mask2D -from autofit.jax_wrapper import numpy as np - - -@pytest.fixture(name="array") -def make_array(): - return aa.Array2D.no_mask( - [[1.0, 2.0], [3.0, 4.0]], - pixel_scales=1.0, - ) - - -def test_copy(array): - copied_array = array.copy() - - array[0] = 5.0 - - assert array[0] == 5.0 - assert copied_array[0] == 1.0 - - -def test_in_place_multiply(array): - array[0] *= 2.0 - - assert array[0] == 2.0 - - -def test_boolean_issue(): - grid = Grid2D.from_mask( - mask=Mask2D.all_false((10, 10), pixel_scales=1.0), - ) - values, keys = Grid2D.instance_flatten(grid) - np.array(Grid2D.instance_unflatten(keys, values)) +import autoarray as aa +import pytest + +from autoarray import Grid2D, Mask2D +from autofit.jax_wrapper import numpy as np + + +@pytest.fixture(name="array") +def make_array(): + return aa.Array2D.no_mask( + [[1.0, 2.0], [3.0, 4.0]], + pixel_scales=1.0, + ) + + +def test_copy(array): + copied_array = array.copy() + + array[0] = 5.0 + + assert array[0] == 5.0 + assert copied_array[0] == 1.0 + + +def test_in_place_multiply(array): + array[0] *= 2.0 + + assert array[0] == 2.0 + + +def test_boolean_issue(): + grid = Grid2D.from_mask( + mask=Mask2D.all_false((10, 10), pixel_scales=1.0), + ) + values, keys = Grid2D.instance_flatten(grid) + np.array(Grid2D.instance_unflatten(keys, values))