diff --git a/.github/issue_template.md b/.github/issue_template.md new file mode 100644 index 0000000..79b7996 --- /dev/null +++ b/.github/issue_template.md @@ -0,0 +1,28 @@ +## Description + + + +### Environment + + + +## Steps to reproduce + + + +### Expected behavior + + + +### Actual behavior + + diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..1bd4dd9 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,24 @@ +## Description + + + +## Checklist + + + +- [ ] I made sure that the source files are formatted properly. +- [ ] I added my changes to the changelog (`CHANGELOG.md`) +- [ ] I updated the documentation. + + + +- [ ] I added a test for the new feature. diff --git a/.github/workflows/build-and-test-dumux-master.yml b/.github/workflows/build-and-test-dumux-master.yml new file mode 100644 index 0000000..cec69bd --- /dev/null +++ b/.github/workflows/build-and-test-dumux-master.yml @@ -0,0 +1,48 @@ +name: Build and test (DuMuX master) +on: + pull_request: + push: + branches: + - develop + - main + +jobs: + build-and-test-dumux-master: + strategy: + max-parallel: 1 + matrix: + precice_version: [2.4.0, 2.5.0] + dune_version: [2.8] + container: + image: precice/dune-precice:${{ matrix.dune_version }}-${{ matrix.precice_version }} + runs-on: ubuntu-latest + steps: + - name: Print python3 version + run: python3 --version + - name: Print python3 version (/usr/bin/env python3) + run: /usr/bin/env python3 --version + - name: Build DuMuX master + run: | + ls -lah + git clone --depth 1 https://git.iws.uni-stuttgart.de/dumux-repositories/dumux.git -b master + ls -lah + export DUNE_CONTROL_PATH=${DUNE_CONTROL_PATH}:${PWD}/dumux/dune.module + dunecontrol --opts=/opt/DUMUX/cmake-test.opts --only=dumux all + - name: Check out code + uses: actions/checkout@v3 + with: + path: dumux-precice + - name: Build code + run: | + ls -lah + export DUNE_CONTROL_PATH=${PWD}/dumux:${PWD}/dumux-precice:${DUNE_CONTROL_PATH} + echo $DUNE_CONTROL_PATH + dunecontrol --only=dumux-precice --opts=./dumux-precice/test/cmake-test.opts all + cd dumux-precice/build-cmake/ + make -j2 build_tests + - name: Run tests + run: | + export DUNE_CONTROL_PATH=${PWD}/dumux:${PWD}/dumux-precice:${DUNE_CONTROL_PATH} + cd dumux-precice/build-cmake/ + export PYTHONPATH=${PWD}/dumux/bin/testing:${PYTHONPATH} + CTEST_OUTPUT_ON_FAILURE=1 ctest -j1 diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml new file mode 100644 index 0000000..85cf3a2 --- /dev/null +++ b/.github/workflows/build-and-test.yml @@ -0,0 +1,40 @@ +name: Build and test +on: + pull_request: + push: + branches: + - develop + - main + +jobs: + build-and-test: + strategy: + max-parallel: 2 + matrix: + dumux_version: [3.4, 3.5] + precice_version: [2.3.0, 2.4.0, 2.5.0] + container: + image: precice/dumux-precice:${{ matrix.dumux_version }}-${{ matrix.precice_version }} + runs-on: ubuntu-latest + steps: + - name: Print python3 version + run: python3 --version + - name: Print python3 version (/usr/bin/env python3) + run: /usr/bin/env python3 --version + - name: Check out code + uses: actions/checkout@v3 + with: + path: dumux-precice + - name: Build code + run: | + ls -lah + export DUNE_CONTROL_PATH=${PWD}/dumux-precice:${DUNE_CONTROL_PATH} + echo $DUNE_CONTROL_PATH + dunecontrol --only=dumux-precice --opts=./dumux-precice/test/cmake-test.opts all + cd dumux-precice/build-cmake/ + make -j2 build_tests + - name: Run tests + run: | + export DUNE_CONTROL_PATH=${PWD}/dumux-precice:${DUNE_CONTROL_PATH} + cd dumux-precice/build-cmake/ + CTEST_OUTPUT_ON_FAILURE=1 ctest -j1 diff --git a/.github/workflows/build-docker-containers.yml b/.github/workflows/build-docker-containers.yml new file mode 100644 index 0000000..55a3485 --- /dev/null +++ b/.github/workflows/build-docker-containers.yml @@ -0,0 +1,73 @@ +name: Build and upload Docker containers + +on: + workflow_dispatch: + push: + branches: + - develop + paths: + - 'docker/**' + - '.github/workflows/build-docker-containers.yml' + +jobs: + build-and-release-docker-image: + name: Builds a Docker container for testing the DuMuX preCICE adapter + runs-on: ubuntu-latest + env: + dockerhub_username: precice + strategy: + matrix: + dumux_version: [3.4, 3.5] + precice_version: [2.3.0, 2.4.0, 2.5.0] + steps: + - name: Checkout Repository + uses: actions/checkout@v3 + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 + - name: Login to DockerHub + uses: docker/login-action@v2 + with: + username: ${{ env.dockerhub_username }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + - name: Build and push Dockerfile + uses: docker/build-push-action@v3 + with: + push: true + context: "{{defaultContext}}:docker" + file: "./dockerfile.slim" + tags: ${{ env.dockerhub_username }}/dumux-precice:${{ matrix.dumux_version }}-${{ matrix.precice_version }} + build-args: | + DUNE_VERSION=2.8 + PRECICEUBUNTU=focal + DUMUX_VERSION=${{ matrix.dumux_version }} + PRECICE_VERSION=${{ matrix.precice_version }} + build-dune-precice: + name: Builds a Docker container for testing the DuMuX preCICE adapter (DUNE and preCICE) + runs-on: ubuntu-latest + env: + dockerhub_username: precice + strategy: + matrix: + dune_version: [2.8] + precice_version: [2.3.0, 2.4.0, 2.5.0] + steps: + - name: Checkout Repository + uses: actions/checkout@v3 + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 + - name: Login to DockerHub + uses: docker/login-action@v2 + with: + username: ${{ env.dockerhub_username }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + - name: Build and push Dockerfile + uses: docker/build-push-action@v3 + with: + push: true + context: "{{defaultContext}}:docker" + file: "./dockerfile_dune-precice.slim" + tags: ${{ env.dockerhub_username }}/dune-precice:${{ matrix.dune_version }}-${{ matrix.precice_version }} + build-args: | + DUNE_VERSION=#{{ matrix.dune_version }} + PRECICEUBUNTU=focal + PRECICE_VERSION=${{ matrix.precice_version }} diff --git a/.github/workflows/style-checking.yml b/.github/workflows/style-checking.yml new file mode 100644 index 0000000..8324925 --- /dev/null +++ b/.github/workflows/style-checking.yml @@ -0,0 +1,35 @@ +name: Style checking +on: + pull_request: + push: + branches: + - develop + - main + +jobs: + markdown_linting: + runs-on: ubuntu-latest + steps: + - name: Check out code + uses: actions/checkout@v2 + - name: Run mdl + uses: actionshub/markdownlint@main + python_linting: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-python@v2 + with: + python-version: '3.8.10' + - name: "Install style checker" + run: pip install --user black + - name: "Run style check" + run: black --check . + cpp_linting: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Run format check + run: | + sudo apt-get install clang-format-10 + ./scripts/format/run-clang-format.sh diff --git a/.gitignore b/.gitignore index b8c98bd..92a9f0e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,5 @@ # build system clutter -build-* +build-*/ Testing # auto-saved files diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml deleted file mode 100644 index 3a77d50..0000000 --- a/.gitlab-ci.yml +++ /dev/null @@ -1,154 +0,0 @@ -#image: dumux-precice:3.3git-iterative-pr-2.2.0 -#image: dumux-precice:3.3-2.2.1 -#image: ajaust/style-check:clang-10 -image: ajaust/style-check:0.1 - -stages: - - check - - build - - test - -check-style-clang-10: - stage: check - script: - - ./scripts/format/run-clang-format.sh - - git diff > style-patch.diff - - if [ -s style-patch.diff ]; then echo "Download the style patch as artifact and apply it or run ./scripts/format/run-clang-format.sh and commit again."; false; fi - needs: [] - artifacts: - when: on_failure - paths: - - style-patch.diff - expire_in: 2 days - -check-style-black: - stage: check - script: - - sudo apt-get update && sudo apt-get install -y python3 python3-distutils python-is-python3 wget - - wget https://bootstrap.pypa.io/get-pip.py && python get-pip.py && rm get-pip.py && ln -sf ${HOME}/.local/bin/pip3 ${HOME}/.local/bin/pip && export PATH="${HOME}/.local/bin":"${PATH}" && pip install black - - black . - - git diff > python-style-patch.diff - - if [ -s python-style-patch.diff ]; then echo "Download the style patch as artifact and apply it or run black . and commit again."; false; fi - needs: [] - artifacts: - when: on_failure - paths: - - python-style-patch.diff - expire_in: 2 days - -.build_template: &build-tests - stage: build - script: - - cd .. - - export DUNE_CONTROL_PATH=${PWD}/dumux-precice:${DUNE_CONTROL_PATH} - - cd dumux-precice/ - - echo $DUNE_CONTROL_PATH - - dunecontrol --only=dumux-precice --opts=./test/cmake-test.opts all - - cd build-cmake/ - - make -j2 build_tests - artifacts: - expire_in: 3 hours - paths: - - build-cmake/ - -build-tests:3.3-2.2.1: - image: ajaust/dumux-precice:3.3-2.2.1 - <<: *build-tests - rules: - - if: '$CI_NIGHTLY_BUILD == "TRUE"' - -build-tests:3.4-2.2.1: - image: ajaust/dumux-precice:3.4-2.2.1 - <<: *build-tests - -build-tests:3.4-2.3.0: - image: ajaust/dumux-precice:3.4-2.3.0 - <<: *build-tests - -build-tests:master-2.2.1: - image: ajaust/dumux-precice:master-2.2.1 - rules: - - if: '$CI_NIGHTLY_BUILD == "TRUE"' - <<: *build-tests - allow_failure: true - -.test_template: &test-partitioned-cases - stage: test - script: - - cd build-cmake/ - - CTEST_OUTPUT_ON_FAILURE=1 ctest -j1 -L ^partitioned$ - artifacts: - expire_in: 2 days - when: on_failure - paths: - - build-cmake/ - -test-partitioned:3.3-2.2.1: - image: ajaust/dumux-precice:3.3-2.2.1 - <<: *test-partitioned-cases - rules: - - if: '$CI_NIGHTLY_BUILD == "TRUE"' - needs: - - build-tests:3.3-2.2.1 - -test-partitioned:3.4-2.2.1: - image: ajaust/dumux-precice:3.4-2.2.1 - <<: *test-partitioned-cases - needs: - - build-tests:3.4-2.2.1 - -test-partitioned:3.4-2.3.0: - image: ajaust/dumux-precice:3.4-2.3.0 - <<: *test-partitioned-cases - needs: - - build-tests:3.4-2.3.0 - -test-partitioned:master-2.2.1: - image: ajaust/dumux-precice:master-2.2.1 - <<: *test-partitioned-cases - rules: - - if: '$CI_NIGHTLY_BUILD == "TRUE"' - needs: - - build-tests:master-2.2.1 - allow_failure: true - -.test_template: &test-monolithic-cases - stage: test - script: - - cd build-cmake - - echo $PYTHONPATH - - CTEST_OUTPUT_ON_FAILURE=1 ctest -j2 -L ^monolithic$ - artifacts: - expire_in: 2 days - when: on_failure - paths: - - build-cmake/ - -test-monolithic:3.3-2.2.1: - image: ajaust/dumux-precice:3.3-2.2.1 - <<: *test-monolithic-cases - needs: - - build-tests:3.3-2.2.1 - rules: - - if: '$CI_NIGHTLY_BUILD == "TRUE"' - -test-monolithic:3.4-2.2.1: - image: ajaust/dumux-precice:3.4-2.2.1 - <<: *test-monolithic-cases - needs: - - build-tests:3.4-2.2.1 - -test-monolithic:3.4-2.3.0: - image: ajaust/dumux-precice:3.4-2.3.0 - <<: *test-monolithic-cases - needs: - - build-tests:3.4-2.3.0 - -test-monolithic:master-2.2.1: - image: ajaust/dumux-precice:master-2.2.1 - <<: *test-monolithic-cases - rules: - - if: '$CI_NIGHTLY_BUILD == "TRUE"' - needs: - - build-tests:master-2.2.1 - allow_failure: true diff --git a/.mdl.rb b/.mdl.rb new file mode 100644 index 0000000..ecd03cf --- /dev/null +++ b/.mdl.rb @@ -0,0 +1,30 @@ +# Enable all rules by default +all + +###################################################### +# Deactivated/excluded rules +###################################################### + + +###################################################### +# Adapted rules +###################################################### + +# Enforce dashes as symvol in lists +rule 'MD004', :style => :dash +# Enforce indent with four space characters. This helps with +# mixing ordered and unordered lists +rule 'MD007', :indent => 4 +# Extend line length for text. +# This will complain for overly wide tables and code blocks. +rule 'MD013', :line_length => 99999 + +# Allow multiple headers with same content +rule 'MD024', :allow_different_nesting => :true + +# Nested lists should be indented with four spaces. +# Modification: Question marks should be allowed +rule 'MD026', :punctuation => '.,;:!' + +# Ordered lists must have prefix that increases in order +rule 'MD029', :style => :ordered diff --git a/.mdlrc b/.mdlrc new file mode 100644 index 0000000..b43d4b9 --- /dev/null +++ b/.mdlrc @@ -0,0 +1,2 @@ +# Load style file (ruby script) +style '.mdl.rb' \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 1eb02bc..fac7c03 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,34 @@ ## Not released yet +## v1.0.0 + +- 2022-09-14: The solver dummy has been cleaned up. +- 2022-09-14: Updated CI to use containers from `precice` namespace on DockerHub. Also makes sure that `dune-precice` containers are build for tests against DuMuX's master branch. +- 2022-09-14: Updated and fixed GitHub to build Docker containers. +- 2022-08-12: Update CI config to rebuild Docker containers if Docker recips have been updated or when the CI config for building the containers has been updated. +- 2022-08-12: Update examples to work with DuMuX releases newer than DuMuX 3.5. +- 2022-08-12: Update CI to test with preCICE 2.5.0. +- 2022-08-11: Updated documentation and removed it from readthedocs. +- 2022-08-09: Remove GitLab-specific files like CI configuration. +- 2022-08-09: Update links to point to the new GitHub repository of the code. +- 2022-08-09: Seperate workflow such that canary builds (builds using DuMuX master) are done independently of the normal CI tests. +- 2022-08-05: Moved CI to GitHub and updated CI workflows. Docker images now use the root user default user. Several Docker images have been added. +- 2022-08-04: Restructure repository to have a more logical directory structure. Code examples live in `examples/`. These codes are also used as tests. Reference data resides in `test/`. +- 2022-08-04: Update CI to also run tests against DuMuX master. Theses tests may fail. +- 2022-08-04: Remove leftover references to monolithic coupling from code. +- 2022-08-02: Fix CMake macro that creates files links to preCICE configuration files. +- 2022-07-29: Updated tests to work with DuMuX 3.5. CI was updated to newer versions of DuMuX and preCICE accordingly. +- 2022-07-28: Remove monolithic test cases and examples from repository. +- 2022-07-28: Add Docker recipe used for CI. +- 2022-07-27: Add DuMuX solverdummy and add it as test case. +- 2022-07-27: Add support for exchanging vector quantities. +- 2022-07-27: Make sure clang-format fails when files a badly formatted. +- 2022-05-25: Add CMake guards to prevent build targe generation of cases that depend of `dune-subgrid`, if `dune-subgrid` is not installed. +- 2022-05-24: Added missing include of `limits` in `couplingadapter.cc`. +- 2022-05-17: Added base setup for extended documentation to be hosted on ReadTheDocs and being created by `mkdocs`. Also adds a base configuration and style of the documentation. +- 2022-05-17: Added configuation for Markdown linter `markdownlint` and added it to CI. The linter can be called locally by typing `mdl .` from the root of the repository. This also led to an updated configuration of the CI. +- 2022-05-17: Add some more documentation on how to install the adapter to the `README.md`. - 2022-02-18: Updated CI to use images from account `ajaust` from Dockerhub. Changed tolerance for partitioned tests to 5e-5 due to minimal changes in the solution with the new images on a new VM. - 2022-02-09: Made sure all private member of the adapter are suffixed with an underscore. - 2022-02-01: Add some extra information on the documentation in the `README.md`. Removed old/out-of-date mkdocs documentation from `doc/mkdocs`. @@ -13,10 +41,10 @@ - 2022-01-25: Added [description templates](https://docs.gitlab.com/ee/user/project/description_templates.html) for merge requests and issues. - 2022-01-12: The repository has been restructured. The main changes are: - - The adapter is now called `CouplingAdapter` and resides in `dumux-precice/`. The build process has been adapted accordingly. - - Tests case reside in `test/` directory and there in the corresponding subdirectory depending on whether it is a `monolithic`ly or `partitioned`ly coupled test case. - - Other example cases reside in the directory `examples/`. This is mainly the directory called `appl/` before, but with a new folder structure. - - The configuration of tests has been changed such that it is possible to build all tests using the `build_tests` target. + - The adapter is now called `CouplingAdapter` and resides in `dumux-precice/`. The build process has been adapted accordingly. + - Tests case reside in `test/` directory and there in the corresponding subdirectory depending on whether it is a `monolithic`ly or `partitioned`ly coupled test case. + - Other example cases reside in the directory `examples/`. This is mainly the directory called `appl/` before, but with a new folder structure. + - The configuration of tests has been changed such that it is possible to build all tests using the `build_tests` target. For details check out the merge request [!18 Restructure repository and tests](https://git.iws.uni-stuttgart.de/dumux-appl/dumux-precice/-/merge_requests/18) - 2022-01-10: Add license file. The code is licensed under GPLv3 without template exception. diff --git a/CMakeLists.txt b/CMakeLists.txt index 34d22aa..3bbabec 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -13,13 +13,11 @@ endif() #find dune-common and set the module path find_package(dune-common REQUIRED) - -list(APPEND CMAKE_MODULE_PATH ${dune-common_MODULE_PATH} - "${PROJECT_SOURCE_DIR}/cmake/modules") - # Find preCICE library find_package(precice 2 REQUIRED CONFIG) +list(APPEND CMAKE_MODULE_PATH ${dune-common_MODULE_PATH} + "${PROJECT_SOURCE_DIR}/cmake/modules") #include the dune macros include(DuneMacros) diff --git a/README.md b/README.md index e13295b..55e682c 100644 --- a/README.md +++ b/README.md @@ -1,38 +1,92 @@ -# DuMuX-preCICE coupling +# DuMuX-preCICE adapter -This repository provides a [DuMuX](https://dumux.org/)-specific adapter to couple to other codes using [preCICE](https://www.precice.org/). You can find the source code of this adapter [on the IWS GitLab](https://git.iws.uni-stuttgart.de/dumux-appl/dumux-precice). +![build and test develop](https://github.com/precice/dumux-adapter/actions/workflows/build-and-test.yml/badge.svg) +![build and test develop with DuMuX masters](https://github.com/precice/dumux-adapter/actions/workflows/build-and-test-dumux-master.yml/badge.svg) -## Prerequisites - -- DuMuX **newer** than 3.2 - - Builds using the current `master` branch of DuMuX might fail. -- preCICE >=2.0.0 - - The adapter is build via the DUNE build system that is based on CMake. Thus, the CMake [link instructions for preCICE](https://precice.org/installation-linking.html#cmake) apply. +This repository provides a [DuMuX](https://dumux.org/)-specific adapter to couple to other codes using [preCICE](https://www.precice.org/). You can find the source code of this adapter [on GitHub](https://github.com/precice/dumux-adapter). The source code of the adapter was formerly stored [in a repository on the IWS GitLab](https://git.iws.uni-stuttgart.de/dumux-appl/dumux-precice). ## Structure of the repository +Note that this repository is a [DUNE module](https://www.dune-project.org/) and thus some parts of the repository structure are given by the typical DUNE module layout. + - `cmake/`: Contains CMake modules for building the adapter. Under normal circumstances you do not need - `examples/`: Contains examples on how to couple different domains. Some of the examples are taken from DuMuX or are slightly adapted from DuMuX test cases or tutorials. Please check the `README.md` file in this directory and corresponding subdirectories to find further explanations of the examples. Additional examples can be found in the `test/` directory. - `doc/`: Additional documentation. +- `docker/`: A Docker recipe that creates a container with DUNE, DuMuX and preCICE. The recipe is mainly used for the automated tests. Check the `README.md` in the subdirectory for more details. - `dumux-precice/`: The preCICE adapter source code and further code for some of the tests and examples. - `scripts/`: Contains useful scripts to run simulations and for checking the code's formatting. -- `test/`: Contains test cases and reference solutions (`reference-solutions/`). Test cases as divided into `monolithic/` and `partitioned` (=preCICE) test cases. The directory also contains several DUNE configuration files (`.opts` files) for configuring the project. +- `test/`: Contains test cases and reference solutions (`reference-solutions/`). The directory also contains several DUNE configuration files (`.opts` files) for configuring the project. + +## Installation + +The DuMuX-preCICE adapter is a DUNE module named `dumux-precice` which can be build using the [DUNE build system](https://www.dune-project.org/doc/installation/). The DUNE build system is build on top of CMake and comes with various tools that make installation and management of DUNE modules easier. Therefore, it is recommended to install `dumux-precice` using `dunecontrol`. Please check out the [DUNE installation instructions](https://www.dune-project.org/doc/installation/) to get an overview over the `dunecontrol` tools and how DUNE modules work. + +### Prerequisites + +- DuMuX **newer** than 3.2 + + - Builds using the current `master` branch of DuMuX might fail. + - If you run into trouble with a new DuMuX release, please open an issue in the repository and add the error message that you receive. + - Needs UMFPack (available via SuiteSparse) as solver for linear systems of equations. This is needed to run the examples included in the adapter. Otherwise you can skip UMFPack. + +- preCICE >=2.0.0 + + - The adapter is build via the DUNE build system that is based on CMake. Thus, the CMake [link instructions for preCICE](https://precice.org/installation-linking.html#cmake) apply. + +- `wget` or `git` to download the DuMuX-preCICE adapter. +- Optional: [`dune-subgrid`](https://www.dune-project.org/modules/dune-subgrid/) allows for modified grid geometries. +- Optional: [MkDocs](https://www.mkdocs.org/) if one wants to build the user documentation locally. The user documentation can also be found in the `doc/user/docs/` directory and is spread over several Markdown files. +- Optional: [Doxygen](https://www.doxygen.nl/) if one wants to build the API documentation locally. + +The DuMuX-preCICE adapter should build fine if DuMuX, preCICE and their dependencies are installed. -## Running tests +### Detailed installation steps -1. Configure the DUNE module +1. Install [DuMuX](https://dumux.org/) and the needed dependencies. The easiest way is to follow [DuMuX's installation instructions](https://dumux.org/installation/). The DuMuX project provides a script that installs and DuMuX and the DUNE modules required by DuMuX. This means, after installing DuMuX via the provided script you should be good to go to use the DuMuX-preCICE adapter. + + After the installation you should have a root directory that contains the base DUNE modules, i.e. a number of directories named like `dune-common`, `dune-geometry` etc., and a directory called `dumux`. + + - Note that extended features of DuMuX or the DuMuX-preCICE adapter may need additional DUNE modules. + +2. Download the DuMuX-preCICE adapter to the same directory as the DUNE modules and the `dumux` folder. At the moment there are no adapter releases, besides an outdated `v0.1` release, such the best way is to checkout the `develop` branch of the adapter. + + ```text + git clone -b develop https://github.com/precice/dumux-adapter.git + ``` + + You can also try to clone the repository via SSH: + + ```text + git clone -b develop git@github.com:precice/dumux-adapter.git + ``` + +3. Verify that the `dumux-precice` folder is in the same directory as the DUNE module folders and the `dumux` folder. + +4. Build and configure the adapter using `dunecontrol`. While being in the directory mentioned in the previous step via calling + + ```text + dunecontrol --only=dumux-precice all + ``` + + After the build and configure step a new directory `build-cmake` was created inside the `dumux-precice` directory. + + You can configure the build and configuration process using advanced options by manipulating CMake variables. `dunecontrol` allows to pass an options file for that ```bash dunecontrol --opts=OPTSFILE.opts --only=dumux-precice all ``` - You may use one of the `opts`-file provided by the adapter that resides in `test/`, e.g., + There is an `opts`-file provided by the adapter that resides in `test/`. You can use it as ```bash dunecontrol --opts=dumux-precice/test/cmake-test.opts --only=dumux-precice all ``` -2. Build all test. For this navigate in the `build-cmake/` directory and build the `build_tests` target. + This provided `cmake-test.opts` file turns off some system-dependent optimizations such that the tests create comparable results on different computers. + + For more ways do manipulate/adapt the build and configuration step, please consult the `dunecontrol` documentation. + +5. Optional, but recommended: Build all tests to verify the installation. For this navigate in the `build-cmake/` directory and build the `build_tests` target. ```bash cd dumux-precice/build-cmake @@ -41,17 +95,21 @@ This repository provides a [DuMuX](https://dumux.org/)-specific adapter to coupl You may speed up the build process by using more than one build job, e.g., use `make -j4` in order to build with for processes at the same time. -3. Run the tests from the `build-cmake` directory + Afterwards you can run the tests from the `build-cmake` directory using ```bash ctest ``` + If any tests fails, you should verify if something went wrong with the installation. + +There are advanced ways of managing DUNE modules, e.g. using the environment variable `DUNE_CONTROL_PATH`, that are beyond the scope of this short documentation. You can find more information in the [DUNE FAQ](https://www.dune-project.org/doc/installation/#faq). + ## Documentation ### User documentation -At the moment the documentation is provided by the API documentation (see below) as well as the test and example cases. If something is unclear or you would want something to be documented better, please open an [issue](https://git.iws.uni-stuttgart.de/dumux-appl/dumux-precice/-/issues) and let us know. +The main user documentation is currently not available on an online service, but can be found in the `docs/user/docs` directory. Additionally, one may find interesting information in the API documentation (see below) as well as the test and example cases that are provided with this repository. If something is unclear or you would want something to be documented better, please open an [issue](https://github.com/precice/dumux-adapter/issues) and let us know. ### API documentation @@ -66,11 +124,11 @@ This generates a HTML documentation which you can view in a browser of your choi ## Publications -### How to cite this code? +### How to cite this code There is no publication related to this code available yet. ### Publications using dumux-precice - Jaust A., Weishaupt K., Mehl M., Flemisch B. (2020) Partitioned Coupling Schemes for Free-Flow and Porous-Media Applications with Sharp Interfaces. In: Klöfkorn R., Keilegavlen E., Radu F., Fuhrmann J. (eds) Finite Volumes for Complex Applications IX - Methods, Theoretical Aspects, Examples. FVCA 2020. Springer Proceedings in Mathematics & Statistics, vol 323. Springer, Cham. - - Code can be found at: https://git.iws.uni-stuttgart.de/dumux-pub/jaust2020a + - Code can be found at: diff --git a/cmake/modules/AddPreciceConfigurationFileLinks.cmake b/cmake/modules/AddPreciceConfigurationFileLinks.cmake new file mode 100644 index 0000000..d7516b3 --- /dev/null +++ b/cmake/modules/AddPreciceConfigurationFileLinks.cmake @@ -0,0 +1,8 @@ +# Create file links to preCICE configuration files +macro(add_precice_file_links) + FILE(GLOB precice_input_files *.xml) + foreach(VAR ${precice_input_files}) + get_filename_component(file_name ${VAR} NAME) + dune_symlink_to_source_files(FILES ${file_name}) + endforeach() +endmacro() diff --git a/cmake/modules/CMakeLists.txt b/cmake/modules/CMakeLists.txt index f41599f..717881c 100644 --- a/cmake/modules/CMakeLists.txt +++ b/cmake/modules/CMakeLists.txt @@ -1,6 +1,7 @@ set(modules -"DumuxPreciceMacros.cmake" -"DumuxPreciceTestMacros.cmake" + DumuxPreciceMacros.cmake + DumuxPreciceTestMacros.cmake + AddPreciceConfigurationFileLinks.cmake ) include(GNUInstallDirs) diff --git a/cmake/modules/DumuxPreciceMacros.cmake b/cmake/modules/DumuxPreciceMacros.cmake index 613dfb6..544d09e 100644 --- a/cmake/modules/DumuxPreciceMacros.cmake +++ b/cmake/modules/DumuxPreciceMacros.cmake @@ -1 +1,2 @@ # File for module specific CMake tests. +include(AddPreciceConfigurationFileLinks) diff --git a/doc/doxygen/Doxylocal b/doc/doxygen/Doxylocal index 5da7d49..08b1499 100644 --- a/doc/doxygen/Doxylocal +++ b/doc/doxygen/Doxylocal @@ -20,7 +20,7 @@ INPUT += @top_srcdir@/dumux-precice/ \ # excluded from the INPUT source files. This way you can easily exclude a # subdirectory from a directory tree whose root is specified with the INPUT tag. -EXCLUDE += @top_srcdir@/dumux-precice/dumux-addon/ +#EXCLUDE += # The EXAMPLE_PATH tag can be used to specify one or more files or # directories that contain example code fragments that are included (see diff --git a/doc/user/docs/example-cases.md b/doc/user/docs/example-cases.md new file mode 100644 index 0000000..cace5d4 --- /dev/null +++ b/doc/user/docs/example-cases.md @@ -0,0 +1,34 @@ +# Example cases + +The source code of the DuMuX-preCICE examples can be found in the subdirectory `examples/`. After the configure and build step of the adapter, the corresponding build scripts etc. can be found in `build-cmake/examples`. This means for modifying the examples one has to edit the files in the `examples/` directory. For building and running the examples one has to go to the corresponding directory in `build-cmake/examples`. + +The examples often have two input files that should be passed to the executables: + +1. An `.input` file which is a DuMUX input file describing the simulation setting, e.g., pressure, name of output files or mesh size. +2. One or several `.xml` files which describe preCICE's coupling configuration, e.g. mapping types, data acceleration etc. These files are not provided for monolithic test cases since a preCICE configuration is only needed for partitioned couplings. + +!!! info "Test cases" + The examples described here are used for testing the correctness of the adapter as well. These tests are defined in the `CMakeLists.txt` file of the examples and relevant scripts and reference data reside in the `test/` subdirectory. + +## Free and porous medium flow + +All examples of coupling free and porous-medium flow reside in `examples/ff-pm` and corresponding subdirectories in there. We use the abbreviation `ff` for things concerning the free flow and `pm` for things concerning the porous-medium part. + +### Flow over a porous-medium + +We implemented a simple test case with a pressure driven flow in a free-flow subdomain (top of domain). At the bottom of the free-flow subdomain the subdomain is connected to the porous-medium subdomain. All other boundaries of the porous-medium subdomain are walls (no-flow boundaries). + +| | 2D | 3D | +| --- | --- | --- | +| Directory | `examples/flow-over-square-2d` | `examples/flow-over-cube-3d` | +| Name of executable(s) | `ff_flow_over_square_2d` and `pm_flow_over_square_2d`| `ff_flow_over_cube_3d` and `pm_flow_over_cube_3d` | + +The 2D test case comes with three preCICE configurations for parallel-implicit coupling (`pi`), serial-implicit coupling (`si`) with either running the flow simulation first (`free-flow-first`) or second (`free-flow-second`). The 3D test case comes with only one preCICE configuration file. + +## Dummy solver + +The dummy solver reside in `examples/dummysolver`. The solver does not solve any equations, but uses the DuMuX adapter to communicate some data between two instances of the dummy solver. The exchanged data is also checked within the dummy solvers as running the dummy solver is part of test implemented tests. + +The dummy solver can be used as an example on how to use the adapter, but also for developing and debugging a new code. + +The executable of the dummy solver is called `dumuxprecice_dummysolver` and one can start two instances via the provided `Allrun.sh` script. Please also refer to the `Allrun.sh` script if you are curious on how to start the solver manually. Several typical preCICE dummy solver parameters, such as the solver name or the mesh name are give as run-time parameters via the DuMuX parameter system. These parameters could also be provided by a DuMuX `.input` file instead of using the command line. diff --git a/doc/user/docs/example-usage.md b/doc/user/docs/example-usage.md new file mode 100644 index 0000000..adc6a34 --- /dev/null +++ b/doc/user/docs/example-usage.md @@ -0,0 +1,3 @@ +# Adapter usage + +Please check out the examples in the `examples/` directory to get an idea on how to use the adapter. \ No newline at end of file diff --git a/doc/user/docs/index.md b/doc/user/docs/index.md new file mode 100644 index 0000000..11108cd --- /dev/null +++ b/doc/user/docs/index.md @@ -0,0 +1,26 @@ +# DuMuX-preCICE adapter documentation + +!!! info + This documentation homepage is under construction. + +This repository provides a [DuMuX](https://dumux.org/)-specific adapter to couple to other codes using [preCICE](https://www.precice.org/). You can find the source code of this adapter [on GitHub](https://github.com/precice/dumux-adapter). The source code of the adapter was formerly stored [in a repository on the IWS GitLab](https://git.iws.uni-stuttgart.de/dumux-appl/dumux-precice). If something is unclear or you would want something to be documented better, please open an [issue](https://github.com/precice/dumux-adapter/issues) or [pull request](https://github.com/precice/dumux-adapter/pulls) and let us know. + +## API documentation + +The interface of the coupling adapter and also the internal (private) interface are documented using Doxygen. In order to build this documentation you need [Doxygen](https://www.doxygen.nl/index.html) installed. After configuring the project using CMake/`dunecontrol` you can build the documentation via navigating to the `build-cmake` directory and building the `doxygen_dumux-precice` target, i.e., + +```text +cd build-cmake +make doxygen_dumux-precice +``` + +This generates a HTML documentation which you can view in a browser of your choice. It is stored in `build-cmake/doc/doxygen/index.html`. + +## How to cite this code + +There is no publication related to this code available yet. + +### Publications using dumux-precice + +- Jaust A., Weishaupt K., Mehl M., Flemisch B. (2020) Partitioned Coupling Schemes for Free-Flow and Porous-Media Applications with Sharp Interfaces. In: Klöfkorn R., Keilegavlen E., Radu F., Fuhrmann J. (eds) Finite Volumes for Complex Applications IX - Methods, Theoretical Aspects, Examples. FVCA 2020. Springer Proceedings in Mathematics & Statistics, vol 323. Springer, Cham. + - Code can be found at: diff --git a/doc/user/docs/installation.md b/doc/user/docs/installation.md new file mode 100644 index 0000000..68dea37 --- /dev/null +++ b/doc/user/docs/installation.md @@ -0,0 +1,84 @@ +# Installation + +The DuMuX-preCICE adapter is a DUNE module named `dumux-precice` which can be build using the [DUNE build system](https://www.dune-project.org/doc/installation/). The DUNE build system is build on top of CMake and comes with various tools that make installation and management of DUNE modules easier. Therefore, it is recommended to install `dumux-precice` using `dunecontrol`. Please check out the [DUNE installation instructions](https://www.dune-project.org/doc/installation/) to get an overview over the `dunecontrol` tools and how DUNE modules work. + +## Prerequisites + +- DuMuX **newer** than 3.2 + + - Builds using the current `master` branch of DuMuX might fail. + - If you run into trouble with a new DuMuX release, please open an issue in the repository and add the error message that you receive. + +- preCICE >=2.0.0 + + - The adapter is build via the DUNE build system that is based on CMake. Thus, the CMake [link instructions for preCICE](https://precice.org/installation-linking.html#cmake) apply. + +- `wget` or `git` to download the DuMuX-preCICE adapter. +- Optional: [`dune-subgrid`](https://www.dune-project.org/modules/dune-subgrid/) allows for modified grid geometries. + +The DuMuX-preCICE adapter should build fine if DuMuX, preCICE and their dependencies are installed. + +## Detailed installation steps + +1. Install [DuMuX](https://dumux.org/) and the needed dependencies. The easiest way is to follow [DuMuX's installation instructions](https://dumux.org/installation/). The DuMuX project provides a script that installs and DuMuX and the DUNE modules required by DuMuX. This means, after installing DuMuX via the provided script you should be good to go to use the DuMuX-preCICE adapter. + + After the installation you should have a root directory that contains the base DUNE modules, i.e. a number of directories named like `dune-common`, `dune-geometry` etc., and a directory called `dumux`. + + - Note that extended features of DuMuX or the DuMuX-preCICE adapter may need additional DUNE modules. + +2. Download the DuMuX-preCICE adapter to the same directory as the DUNE modules and the `dumux` folder. At the moment there are no adapter releases, besides an outdated `v0.1` release, such the best way is to checkout the `develop` branch of the adapter. + + ```text + git clone -b develop https://github.com/precice/dumux-adapter.git + ``` + + You can also try to clone the repository via SSH: + + ```text + git clone -b develop git@github.com:precice/dumux-adapter.git + ``` + +3. Verify that the `dumux-precice` folder is in the same directory as the DUNE module folders and the `dumux` folder. + +4. Build and configure the adapter using `dunecontrol`. While being in the directory mentioned in the previous step via calling + + ```text + dunecontrol --only=dumux-precice all + ``` + + After the build and configure step a new directory `build-cmake` was created inside the `dumux-precice` directory. + + You can configure the build and configuration process using advanced options by manipulating CMake variables. `dunecontrol` allows to pass an options file for that + + ```bash + dunecontrol --opts=OPTSFILE.opts --only=dumux-precice all + ``` + + There is an `opts`-file provided by the adapter that resides in `test/`. You can use it as + + ```bash + dunecontrol --opts=dumux-precice/test/cmake-test.opts --only=dumux-precice all + ``` + + This provided `cmake-test.opts` file turns off some system-dependent optimizations such that the tests create comparable results on different computers. + + For more ways do manipulate/adapt the build and configuration step, please consult the `dunecontrol` documentation. + +5. Optional, but recommended: Build all tests to verify the installation. For this navigate in the `build-cmake/` directory and build the `build_tests` target. + + ```bash + cd dumux-precice/build-cmake + make -j1 build_tests + ``` + + You may speed up the build process by using more than one build job, e.g., use `make -j4` in order to build with for processes at the same time. + + Afterwards you can run the tests from the `build-cmake` directory using + + ```bash + ctest + ``` + + If any tests fails, you should verify if something went wrong with the installation. + +There are advanced ways of managing DUNE modules, e.g. using the environment variable `DUNE_CONTROL_PATH`, that are beyond the scope of this short documentation. You can find more information in the [DUNE FAQ](https://www.dune-project.org/doc/installation/#faq). \ No newline at end of file diff --git a/doc/user/docs/overview.md b/doc/user/docs/overview.md new file mode 100644 index 0000000..7d0e50c --- /dev/null +++ b/doc/user/docs/overview.md @@ -0,0 +1,11 @@ +# Structure of the repository + +Note that the DuMuX-preCICE adapter is a [DUNE module](https://www.dune-project.org/) and thus some parts of the repository structure are given by the typical DUNE module layout. + +- `cmake/`: Contains CMake modules for building the adapter. Under normal circumstances you do not need +- `examples/`: Contains examples on how to couple different domains. Some of the examples are taken from DuMuX or are slightly adapted from DuMuX test cases or tutorials. Please check the `README.md` file in this directory and corresponding subdirectories to find further explanations of the examples. Additional examples can be found in the `test/` directory. +- `doc/`: Additional documentation. +- `docker/`: A Docker recipe that creates a container with DUNE, DuMuX and preCICE. The recipe is mainly used for the automated tests. Check the `README.md` in the subdirectory for more details. +- `dumux-precice/`: The preCICE adapter source code and further code for some of the tests and examples. +- `scripts/`: Contains useful scripts to run simulations and for checking the code's formatting. +- `test/`: Contains test cases and reference solutions (`reference-solutions/`). The directory also contains several DUNE configuration files (`.opts` files) for configuring the project. \ No newline at end of file diff --git a/doc/user/mkdocs.yml b/doc/user/mkdocs.yml new file mode 100644 index 0000000..7aea033 --- /dev/null +++ b/doc/user/mkdocs.yml @@ -0,0 +1,24 @@ +site_name: DuMuX-preCICE adapter + +nav: + - Home: index.md + - Getting started: + - Repository overview: overview.md + - Installation instruction: installation.md + - Available examples: example-cases.md + - Using the adapter in your code: example-usage.md + +theme: + name: 'material' + palette: + primary: indigo + accent: deep orange + +repo_name: dumux-appl/dumux-preCICE +repo_url: https://github.com/precice/dumux-adapter + +markdown_extensions: + - admonition + - codehilite + - pymdownx.superfences + diff --git a/doc/user/requirements.txt b/doc/user/requirements.txt new file mode 100644 index 0000000..898468c --- /dev/null +++ b/doc/user/requirements.txt @@ -0,0 +1 @@ +mkdocs-material \ No newline at end of file diff --git a/docker/01_nodoc b/docker/01_nodoc new file mode 100644 index 0000000..d179b11 --- /dev/null +++ b/docker/01_nodoc @@ -0,0 +1,13 @@ +# https://github.com/lssfau/walberla-dockerfiles/blob/master/latex/01_nodoc +path-exclude /usr/share/doc/* +# we need to keep copyright files for legal reasons +path-include /usr/share/doc/*/copyright +path-exclude /usr/share/man/* +path-exclude /usr/share/groff/* +path-exclude /usr/share/info/* +# lintian stuff is small, but really unnecessary +path-exclude /usr/share/lintian/* +path-exclude /usr/share/linda/* + +path-exclude /usr/share/locale/* +path-include /usr/share/locale/en* \ No newline at end of file diff --git a/docker/README.md b/docker/README.md new file mode 100644 index 0000000..0ed0d4c --- /dev/null +++ b/docker/README.md @@ -0,0 +1,33 @@ +# Docker image + +This directory contains a Docker recipes and helper scripts for building an environment for testing the DuMuX-preCICE adapter. The recipes do **not** install the adapter. + +The following main dependencies are installed when using the `dockerfile.large` and `dockerfile.slim` recipe: + +- DUNE +- DuMuX +- preCICE + +The `dockerfile.base` recipe only installs: + +- DUNE +- DuMuX + +The "slim" image tries to limit the size of the container by compiling preCICE from source and deactivating many optional features such as language binding, PETSc, Python Actions and MPI. + +For more details on what is installed, please check the `Dockerfile`. + +The versions of the main dependencies can be manipulated when building the Docker image via the arguments with given default values + +- `ARG DUNEVERSION=2.7`: DUNE version. Available in all recipes. +- `ARG DUMUXVERSION=3.4`: DuMuX version. Available in all recipes. +- `ARG PRECICEVERSION=2.2.1`: preCICE version. Available only in "large" and "slim" recipes. +- `ARG PRECICEUBUNTU=focal`: preCICE target platform (here, Ubuntu Focal Fossa). Available only in "large" recipe. + +If one wants to build a "slim" image using DUNE 2.8, DuMuX from the current master branch and preCICE 2.4.0 one could call it with the following command: + +```text +sudo docker build --build-arg DUNEVERSION=2.8 --build-arg DUMUXVERSION=master --build-arg PRECICEVERSION=2.4.0 -t ajaust/dumux-precice:master-2.4.0 --file dockerfile.slim . +``` + +The script `rebuild-docker-images.sh` can be used to rebuild the Docker images locally. diff --git a/docker/checkout_repositories.sh b/docker/checkout_repositories.sh new file mode 100644 index 0000000..9808522 --- /dev/null +++ b/docker/checkout_repositories.sh @@ -0,0 +1,33 @@ +#/usr/bin/env bash + +DUNEVERSION="${1}" +DUMUXVERSION="${2}" + +if [[ $# -lt 2 ]]; then + echo "DUNE or DUMUX version missing" + exit 1 +fi + +echo "DUNE version ${DUNEVERSION}" +echo "DUMUX version ${DUMUXVERSION}" + +for module in 'common' 'geometry' 'grid' 'localfunctions' 'istl' 'subgrid' +do + echo "Checking out module: ${module}" + if [[ ${module} == 'subgrid' ]]; then + git clone --depth 1 https://git.imp.fu-berlin.de/agnumpde/dune-${module}.git -b releases/$DUNEVERSION + else + git clone --depth 1 https://gitlab.dune-project.org/core/dune-${module}.git -b releases/$DUNEVERSION + fi +done + +if [[ "$DUMUXVERSION" != "none" ]]; then + echo "Checking out module: dumux" + if [[ "$DUMUXVERSION" == "master" ]]; then + git clone --depth 1 https://git.iws.uni-stuttgart.de/dumux-repositories/dumux.git -b master + else + git clone --depth 1 https://git.iws.uni-stuttgart.de/dumux-repositories/dumux.git -b releases/$DUMUXVERSION + fi +fi +echo "Printing DUNE modules to screen:" +ls diff --git a/docker/cmake-test.opts b/docker/cmake-test.opts new file mode 100644 index 0000000..baa143d --- /dev/null +++ b/docker/cmake-test.opts @@ -0,0 +1,57 @@ +GXX_RELEASE_WARNING_OPTS=" \ + -Wall \ + -Wunused \ + -Wmissing-include-dirs \ + -Wcast-align \ + -Wno-missing-braces \ + -Wmissing-field-initializers \ + -Wno-sign-compare" + +GXX_RELEASE_OPTS=" \ + -fdiagnostics-color=always \ + -fno-strict-aliasing \ + -fstrict-overflow \ + -fno-finite-math-only \ + -DNDEBUG=1 \ + -O3 \ + -march=x86-64 \ + -mtune=generic \ + -funroll-loops \ + -g0" + +SPECIFIC_COMPILER="" +# if you want to specify a specific compiler, do it by setting (comment the above line) +#SPECIFIC_COMPILER=" +# -DCMAKE_C_COMPILER=/usr/bin/gcc-8 +# -DCMAKE_CXX_COMPILER=/usr/bin/g++-8 +#" + +SPECIFIC_GENERATOR="" +# if you want to specify a specific make file generator (e.g. ninja), do it by setting (comment the above line) +#SPECIFIC_GENERATOR=" +# -DCMAKE_GENERATOR='Ninja' +# -DCMAKE_MAKE_PROGRAM='/usr/bin/ninja' +#" + +OPM_FLAGS="" +# to build opm it might be necessary to set manually the following variables (comment the above line) +#OPM_FLAGS=" +#-Decl_DIR=[/path/to]/libecl/build +#-DUSE_MPI=ON +#" + +# set this to "ON" if you want to be able to have the headercheck target +DUMUX_ENABLE_HEADERCHECK=OFF + +# for debug opts you can set DCMAKE_BUILD_TYPE to "Debug" or "RelWithDebInfo" +# you can also do this in any of the CMakeLists.txt in Dumux +# just rerun cmake again afterwards (run cmake ) + +CMAKE_FLAGS="$SPECIFIC_COMPILER $SPECIFIC_GENERATOR $OPM_FLAGS +-DCMAKE_CXX_FLAGS_RELEASE='$GXX_RELEASE_OPTS $GXX_RELEASE_WARNING_OPTS' +-DCMAKE_CXX_FLAGS_DEBUG='-O0 -g -ggdb -Wall -Wextra -Wno-unused-parameter -Wno-sign-compare' +-DCMAKE_CXX_FLAGS_RELWITHDEBINFO='$GXX_RELEASE_OPTS $GXX_RELEASE_WARNING_OPTS -g -ggdb -Wall' +-DCMAKE_BUILD_TYPE=Release +-DENABLE_HEADERCHECK=$DUMUX_ENABLE_HEADERCHECK +-DDUNE_GRID_EXPERIMENTAL_GRID_EXTENSIONS:BOOL=TRUE +" diff --git a/docker/dockerfile.base b/docker/dockerfile.base new file mode 100644 index 0000000..a0363d6 --- /dev/null +++ b/docker/dockerfile.base @@ -0,0 +1,39 @@ +FROM ubuntu:20.04 + +ENV DEBIAN_FRONTEND noninteractive + +# Prohibit /usr/doc files from being installed +ADD 01_nodoc /etc/dpkg/dpkg.cfg.d/01_nodoc + +# Install dependencies from +RUN apt-get update +RUN apt-get install -y git gcc g++ gfortran cmake pkg-config libeigen3-dev libsuitesparse-dev python3 + +ARG DUMUXINSTALLPATH=/opt/DUMUX +WORKDIR ${DUMUXINSTALLPATH} + +# Obtain DuMuX and Dune repositories +ARG DUNEVERSION=2.8 +ARG DUMUXVERSION=3.5 +COPY checkout_repositories.sh . +RUN bash checkout_repositories.sh ${DUNEVERSION} ${DUMUXVERSION} + +# Install DUNE and DUMUX +COPY cmake-test.opts . +# Make dunecontrol available +ENV PATH /opt/DUMUX/dune-common/bin:${PATH} +RUN dunecontrol --opts=cmake-test.opts all + +# Make DUNE and DUMUX accessible +ENV DUNE_CONTROL_PATH=${DUMUXINSTALLPATH}/dune-common/dune.module:${DUMUXINSTALLPATH}/dune-geometry/dune.module:${DUMUXINSTALLPATH}/dune-grid/dune.module:${DUMUXINSTALLPATH}/dune-localfunctions/dune.module:${DUMUXINSTALLPATH}/dune-istl/dune.module:${DUMUXINSTALLPATH}/dune-subgrid/dune.module:${DUMUXINSTALLPATH}/dumux/dune.module + +ENV PYTHONPATH ${DUMUXINSTALLPATH}/dumux/bin/testing:${PYTHONPATH} + +# Cleanup +RUN apt-get autoremove -y && apt-get clean +RUN rm -rf /var/lib/apt/lists/* && rm -rf /tmp/* + +CMD ["bash"] + +# Reset frontend for interactive use +ENV DEBIAN_FRONTEND= diff --git a/docker/dockerfile.large b/docker/dockerfile.large new file mode 100644 index 0000000..0e4c5c6 --- /dev/null +++ b/docker/dockerfile.large @@ -0,0 +1,47 @@ +FROM ubuntu:20.04 + +# Install DUNE and DuMuX in /home/dumux +WORKDIR ${USER_HOME} + +ENV DEBIAN_FRONTEND noninteractive + +# Prohibit /usr/doc files from being installed +ADD 01_nodoc /etc/dpkg/dpkg.cfg.d/01_nodoc + +# Install dependencies from +RUN apt-get update +RUN apt-get install -y apt-utils vim htop git +RUN apt-get install -y openmpi-bin libopenmpi-dev git gcc g++ wget cmake sudo libboost-all-dev pkg-config python3 + +# Obtain DuMuX and Dune repositories +ARG DUNEVERSION=2.7 +ARG DUMUXVERSION=3.4 +COPY checkout_repositories.sh . +RUN bash checkout_repositories.sh ${DUNEVERSION} ${DUMUXVERSION} + +# Install DUNE and DUMUX +COPY cmake-test.opts . +# Make dunecontrol available +ENV PATH ${USER_HOME}/dune-common/bin:${PATH} +RUN dunecontrol --opts=cmake-test.opts all + +# Make DUNE and DUMUX accessible +ENV DUNE_CONTROL_PATH=${USER_HOME}/dune-common/dune.module:${USER_HOME}/dune-geometry/dune.module:${USER_HOME}/dune-grid/dune.module:${USER_HOME}/dune-localfunctions/dune.module:${USER_HOME}/dune-istl/dune.module:${USER_HOME}/dune-subgrid/dune.module:${USER_HOME}/dumux/dune.module + +ENV PYTHONPATH ${USER_HOME}/dumux/bin/testing:${PYTHONPATH} + +#Install preCICE +ARG PRECICEVERSION=2.2.1 +ARG PRECICEUBUNTU=focal +RUN wget https://github.com/precice/precice/releases/download/v${PRECICEVERSION}/libprecice2_${PRECICEVERSION}_${PRECICEUBUNTU}.deb -O libprecice${PRECICEVERSION}-${PRECICEUBUNTU}.deb \ + && apt install -y ./libprecice${PRECICEVERSION}-${PRECICEUBUNTU}.deb \ + && rm -f ./libprecice${PRECICEVERSION}-${PRECICEUBUNTU}.deb + +# Cleanup +RUN apt-get clean +RUN rm -rf /var/lib/apt/lists/* && rm -rf /tmp/* + +CMD ["bash"] + +# Reset frontend for interactive use +ENV DEBIAN_FRONTEND= diff --git a/docker/dockerfile.slim b/docker/dockerfile.slim new file mode 100644 index 0000000..cc6b3cc --- /dev/null +++ b/docker/dockerfile.slim @@ -0,0 +1,46 @@ +FROM ubuntu:20.04 + +ENV DEBIAN_FRONTEND noninteractive + +# Prohibit /usr/doc files from being installed +ADD 01_nodoc /etc/dpkg/dpkg.cfg.d/01_nodoc + +# Install dependencies from +RUN apt-get update +RUN apt-get install -y git gcc g++ gfortran cmake pkg-config libboost-log1.71.0 libboost-thread1.71.0 libboost-system1.71.0 libboost-filesystem1.71.0 libboost-program-options1.71.0 libboost-test1.71.0 libboost-container1.71.0 libeigen3-dev libxml2 libboost-log-dev libboost-thread-dev libboost-system-dev libboost-filesystem-dev libboost-program-options-dev libboost-test-dev libboost-container-dev libeigen3-dev libxml2-dev libsuitesparse-dev python3 + +ARG DUMUXINSTALLPATH=/opt/DUMUX +WORKDIR ${DUMUXINSTALLPATH} + +# Obtain DuMuX and Dune repositories +ARG DUNEVERSION=2.8 +ARG DUMUXVERSION=3.5 +COPY checkout_repositories.sh . +RUN bash checkout_repositories.sh ${DUNEVERSION} ${DUMUXVERSION} + +# Install DUNE and DUMUX +COPY cmake-test.opts . +# Make dunecontrol available +ENV PATH /opt/DUMUX/dune-common/bin:${PATH} +RUN dunecontrol --opts=cmake-test.opts all + +# Make DUNE and DUMUX accessible +ENV DUNE_CONTROL_PATH=${DUMUXINSTALLPATH}/dune-common/dune.module:${DUMUXINSTALLPATH}/dune-geometry/dune.module:${DUMUXINSTALLPATH}/dune-grid/dune.module:${DUMUXINSTALLPATH}/dune-localfunctions/dune.module:${DUMUXINSTALLPATH}/dune-istl/dune.module:${DUMUXINSTALLPATH}/dune-subgrid/dune.module:${DUMUXINSTALLPATH}/dumux/dune.module + +ENV PYTHONPATH ${DUMUXINSTALLPATH}/dumux/bin/testing:${PYTHONPATH} + +# Compile minmum version of preCICE +ARG PRECICEVERSION=2.4.0 +ARG PRECICEUBUNTU=focal +RUN git clone --depth 1 -b v${PRECICEVERSION} https://github.com/precice/precice.git precice-${PRECICEVERSION} && cd precice-${PRECICEVERSION} && mkdir build && cd build && cmake .. -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_SHARED_LIBS=ON -DPRECICE_MPICommunication=OFF -DPRECICE_PETScMapping=OFF -DPRECICE_PythonActions=OFF -DCMAKE_INSTALL_PREFIX=/usr && make -j 4 && make test && make install && cd ../../ && rm -rf precice-${PRECICEVERSION} + +RUN apt-get purge -y libboost-log-dev libboost-thread-dev libboost-system-dev libboost-filesystem-dev libboost-program-options-dev libboost-test-dev libboost-container-dev libxml2-dev && binprecice md + +# Cleanup +RUN apt-get autoremove -y && apt-get clean +RUN rm -rf /var/lib/apt/lists/* && rm -rf /tmp/* + +CMD ["bash"] + +# Reset frontend for interactive use +ENV DEBIAN_FRONTEND= diff --git a/docker/dockerfile_dune-precice.slim b/docker/dockerfile_dune-precice.slim new file mode 100644 index 0000000..853ecb9 --- /dev/null +++ b/docker/dockerfile_dune-precice.slim @@ -0,0 +1,43 @@ +FROM ubuntu:20.04 + +ENV DEBIAN_FRONTEND noninteractive + +# Prohibit /usr/doc files from being installed +ADD 01_nodoc /etc/dpkg/dpkg.cfg.d/01_nodoc + +# Install dependencies from +RUN apt-get update +RUN apt-get install -y git gcc g++ gfortran cmake pkg-config libboost-log1.71.0 libboost-thread1.71.0 libboost-system1.71.0 libboost-filesystem1.71.0 libboost-program-options1.71.0 libboost-test1.71.0 libboost-container1.71.0 libeigen3-dev libxml2 libboost-log-dev libboost-thread-dev libboost-system-dev libboost-filesystem-dev libboost-program-options-dev libboost-test-dev libboost-container-dev libeigen3-dev libxml2-dev libsuitesparse-dev python3 + +ARG DUMUXINSTALLPATH=/opt/DUMUX +WORKDIR ${DUMUXINSTALLPATH} + +# Obtain DuMuX and Dune repositories +ARG DUNEVERSION=2.8 +COPY checkout_repositories.sh . +RUN bash checkout_repositories.sh ${DUNEVERSION} none + +# Install DUNE and DUMUX +COPY cmake-test.opts . +# Make dunecontrol available +ENV PATH /opt/DUMUX/dune-common/bin:${PATH} +RUN dunecontrol --opts=cmake-test.opts all + +# Make DUNE and DUMUX accessible +ENV DUNE_CONTROL_PATH=${DUMUXINSTALLPATH}/dune-common/dune.module:${DUMUXINSTALLPATH}/dune-geometry/dune.module:${DUMUXINSTALLPATH}/dune-grid/dune.module:${DUMUXINSTALLPATH}/dune-localfunctions/dune.module:${DUMUXINSTALLPATH}/dune-istl/dune.module:${DUMUXINSTALLPATH}/dune-subgrid/dune.module + +# Compile minmum version of preCICE +ARG PRECICEVERSION=2.4.0 +ARG PRECICEUBUNTU=focal +RUN git clone --depth 1 -b v${PRECICEVERSION} https://github.com/precice/precice.git precice-${PRECICEVERSION} && cd precice-${PRECICEVERSION} && mkdir build && cd build && cmake .. -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_SHARED_LIBS=ON -DPRECICE_MPICommunication=OFF -DPRECICE_PETScMapping=OFF -DPRECICE_PythonActions=OFF -DCMAKE_INSTALL_PREFIX=/usr && make -j 4 && make test && make install && cd ../../ && rm -rf precice-${PRECICEVERSION} + +RUN apt-get purge -y libboost-log-dev libboost-thread-dev libboost-system-dev libboost-filesystem-dev libboost-program-options-dev libboost-test-dev libboost-container-dev libxml2-dev && binprecice md + +# Cleanup +RUN apt-get autoremove -y && apt-get clean +RUN rm -rf /var/lib/apt/lists/* && rm -rf /tmp/* + +CMD ["bash"] + +# Reset frontend for interactive use +ENV DEBIAN_FRONTEND= diff --git a/docker/rebuild-docker-images.sh b/docker/rebuild-docker-images.sh new file mode 100755 index 0000000..26e457d --- /dev/null +++ b/docker/rebuild-docker-images.sh @@ -0,0 +1,20 @@ +#!/usr/bin/env bash + +DUNE_VERSION="2.8" +DUMUX_VERSIONS=("3.4" "3.5") +PRECICE_VERSIONS=("2.4.0" "2.3.0") + +for dumux_version in ${DUMUX_VERSIONS[@]}; do + for precice_version in ${PRECICE_VERSIONS[@]}; do + echo "Building dumux-precice:${dumux_version}-${precice_version}" + docker build --build-arg DUNEVERSION=${DUNE_VERSION} --build-arg DUMUXVERSION=${dumux_version} --build-arg PRECICEVERSION=${precice_version} -t precice/dumux-precice:${dumux_version}-${precice_version} --file dockerfile.slim . + docker push precice/dumux-precice:${dumux_version}-${precice_version} + yes | docker image prune + done +done + +PRECICE_VERSION="2.4.0" +echo "Building dune-precice:${dumux_version}-${precice_version}" +docker build --build-arg DUNEVERSION=${DUNE_VERSION} --build-arg PRECICEVERSION=${PRECICE_VERSION} -t precice/dune-precice:${DUNE_VERSION}-${PRECICE_VERSION} --file dockerfile_dune-precice.slim . +docker push precice/dune-precice:${DUNE_VERSION}-${PRECICE_VERSION} +yes | docker image prune \ No newline at end of file diff --git a/dumux-precice.pc.in b/dumux-precice.pc.in index 1ee7a9b..c8685c7 100644 --- a/dumux-precice.pc.in +++ b/dumux-precice.pc.in @@ -9,7 +9,7 @@ DEPENDENCIES=@REQUIRES@ Name: @PACKAGE_NAME@ Version: @VERSION@ Description: dumux-precice module -URL: https://git.iws.uni-stuttgart.de/dumux-appl/dumux-precice +URL: https://github.com/precice/dumux-adapter Requires: dumux Suggests: dune-subgrid Libs: -L${libdir} diff --git a/dumux-precice/CMakeLists.txt b/dumux-precice/CMakeLists.txt index c18b48c..0a4fb70 100644 --- a/dumux-precice/CMakeLists.txt +++ b/dumux-precice/CMakeLists.txt @@ -4,5 +4,3 @@ install(FILES add_library(dumux-precice STATIC couplingadapter.cc dumuxpreciceindexmapper.cc) target_link_libraries(dumux-precice PRIVATE precice::precice) - -add_subdirectory(dumux-addon) diff --git a/dumux-precice/couplingadapter.cc b/dumux-precice/couplingadapter.cc index 1ca7cdd..d8e70e2 100644 --- a/dumux-precice/couplingadapter.cc +++ b/dumux-precice/couplingadapter.cc @@ -3,6 +3,7 @@ #include #include #include +#include using namespace Dumux::Precice; @@ -37,7 +38,8 @@ void CouplingAdapter::announceSolver(const std::string &name, wasCreated_ = true; } -size_t CouplingAdapter::announceQuantity(const std::string &name) +size_t CouplingAdapter::announceQuantity(const std::string &name, + const QuantityType quantity_type) { assert(meshWasCreated_); auto it = std::find(dataNames_.begin(), dataNames_.end(), name); @@ -46,11 +48,24 @@ size_t CouplingAdapter::announceQuantity(const std::string &name) } dataNames_.push_back(name); preciceDataID_.push_back(precice_->getDataID(name, meshID_)); - dataVectors_.push_back(std::vector(vertexIDs_.size())); + const int quantity_dimension = + (quantity_type == QuantityType::Scalar) ? 1 : getDimensions(); + dataVectors_.push_back( + std::vector(vertexIDs_.size() * quantity_dimension)); return getNumberOfQuantities() - 1; } +size_t CouplingAdapter::announceScalarQuantity(const std::string &name) +{ + return announceQuantity(name, QuantityType::Scalar); +} + +size_t CouplingAdapter::announceVectorQuantity(const std::string &name) +{ + return announceQuantity(name, QuantityType::Vector); +} + int CouplingAdapter::getDimensions() const { assert(wasCreated_); @@ -153,6 +168,38 @@ double CouplingAdapter::getScalarQuantityOnFace(const size_t dataID, return quantityVector[idx]; } +// std::vector getVectorQuantityOnFace(const size_t dataID, const int faceID) const +// { +// assert(wasCreated_); +// assert(hasIndexMapper_); +// if (!hasIndexMapper_) { +// throw std::runtime_error( +// "Reading quantity using faceID, but index mapping was not " +// "created!"); +// } +// const auto idx = indexMapper_.getPreciceId(faceID); +// assert(dataID < dataVectors_.size()); +// const std::vector &quantityVector = dataVectors_[dataID]; +// assert(idx+getDimension()-1 < quantityVector.size()); +// std::vector vector_quantity( quantityVector.begin(), quantityVector.begin()+getDimension()-1 ); +// return vector_quantity; +// } +// void getQuantityVector(const size_t dataID, std::vector& quantity_vector) const +// { +// assert(wasCreated_); +// assert(hasIndexMapper_); +// if (!hasIndexMapper_) { +// throw std::runtime_error( +// "Reading quantity using faceID, but index mapping was not " +// "created!"); +// } +// const auto idx = indexMapper_.getPreciceId(faceID); +// const std::vector& data_vector = dataVectors_[dataID]; +// assert(dataID < data_vector.size()); +// quantity_vector.resize( data_vector.size() ); +// std::copy( data_vector.begin(), data_vector.end(), quantity_vector.begin() ); +// } + void CouplingAdapter::writeScalarQuantityOnFace(const size_t dataID, const int faceID, const double value) @@ -205,8 +252,17 @@ const std::vector &CouplingAdapter::getQuantityVector( return getQuantityVector(dataID); } -void CouplingAdapter::writeScalarQuantityVector(const size_t dataID, - std::vector &values) +// void CouplingAdapter::writeScalarQuantityVector(const size_t dataID, +// std::vector &values) +// { +// assert(wasCreated_); +// assert(dataID < dataVectors_.size()); +// assert(dataVectors_[dataID].size() == values.size()); +// dataVectors_[dataID] = values; +// } + +void CouplingAdapter::writeQuantityVector(const size_t dataID, + std::vector &values) { assert(wasCreated_); assert(dataID < dataVectors_.size()); @@ -214,23 +270,38 @@ void CouplingAdapter::writeScalarQuantityVector(const size_t dataID, dataVectors_[dataID] = values; } -void CouplingAdapter::writeScalarQuantityToOtherSolver(const size_t dataID) +void CouplingAdapter::writeQuantityToOtherSolver( + const size_t dataID, + const QuantityType quantity_type) { assert(wasCreated_); assert(dataID < dataVectors_.size()); assert(dataID < preciceDataID_.size()); assert(dataID < std::numeric_limits::max()); - writeBlockScalarDataToPrecice(preciceDataID_[dataID], dataVectors_[dataID]); + writeBlockDataToPrecice(preciceDataID_[dataID], dataVectors_[dataID], + quantity_type); } -void CouplingAdapter::readScalarQuantityFromOtherSolver(const size_t dataID) +void CouplingAdapter::readQuantityFromOtherSolver( + const size_t dataID, + const QuantityType quantity_type) { assert(wasCreated_); assert(dataID < dataVectors_.size()); assert(dataID < preciceDataID_.size()); assert(dataID < std::numeric_limits::max()); - readBlockScalarDataFromPrecice(preciceDataID_[dataID], - dataVectors_[dataID]); + readBlockDataFromPrecice(preciceDataID_[dataID], dataVectors_[dataID], + quantity_type); +} + +void CouplingAdapter::writeScalarQuantityToOtherSolver(const size_t dataID) +{ + writeQuantityToOtherSolver(dataID, QuantityType::Scalar); +} + +void CouplingAdapter::readScalarQuantityFromOtherSolver(const size_t dataID) +{ + readQuantityFromOtherSolver(dataID, QuantityType::Scalar); } bool CouplingAdapter::isCoupledEntity(const int faceID) const @@ -275,22 +346,36 @@ void CouplingAdapter::actionIsFulfilled(const std::string &condition) precice_->markActionFulfilled(condition); } -void CouplingAdapter::readBlockScalarDataFromPrecice(const int dataID, - std::vector &data) +void CouplingAdapter::readBlockDataFromPrecice(const int dataID, + std::vector &data, + const QuantityType quantity_type) { assert(wasCreated_); - assert(vertexIDs_.size() == data.size()); - precice_->readBlockScalarData(dataID, vertexIDs_.size(), vertexIDs_.data(), - data.data()); + if (quantity_type == QuantityType::Scalar) { + assert(vertexIDs_.size() == data.size()); + precice_->readBlockScalarData(dataID, vertexIDs_.size(), + vertexIDs_.data(), data.data()); + } else { + assert(vertexIDs_.size() * getDimensions() == data.size()); + precice_->readBlockVectorData(dataID, vertexIDs_.size(), + vertexIDs_.data(), data.data()); + } } -void CouplingAdapter::writeBlockScalarDataToPrecice(const int dataID, - std::vector &data) +void CouplingAdapter::writeBlockDataToPrecice(const int dataID, + std::vector &data, + const QuantityType quantity_type) { assert(wasCreated_); - assert(vertexIDs_.size() == data.size()); - precice_->writeBlockScalarData(dataID, vertexIDs_.size(), vertexIDs_.data(), - data.data()); + if (quantity_type == QuantityType::Scalar) { + assert(vertexIDs_.size() == data.size()); + precice_->writeBlockScalarData(dataID, vertexIDs_.size(), + vertexIDs_.data(), data.data()); + } else { + assert(vertexIDs_.size() * getDimensions() == data.size()); + precice_->writeBlockVectorData(dataID, vertexIDs_.size(), + vertexIDs_.data(), data.data()); + } } bool CouplingAdapter::hasToWriteInitialData() diff --git a/dumux-precice/couplingadapter.hh b/dumux-precice/couplingadapter.hh index a779d64..946170d 100644 --- a/dumux-precice/couplingadapter.hh +++ b/dumux-precice/couplingadapter.hh @@ -13,6 +13,8 @@ */ namespace Dumux::Precice { +enum class QuantityType { Scalar, Vector }; + /*! * @brief A DuMuX-preCICE coupling adapter class * @@ -54,16 +56,18 @@ private: * @param[in] dataID Identifier of dataset to read. * @param[out] data Vector to store the read data to. */ - void readBlockScalarDataFromPrecice(const int dataID, - std::vector &data); + void readBlockDataFromPrecice(const int dataID, + std::vector &data, + const QuantityType quantity_type); /*! * @brief Writes full block of data to preCICE. * * @param[in] dataID Identifier of dataset to read. * @param[in] data Vector containing data to write into preCICE's buffer. */ - void writeBlockScalarDataToPrecice(const int dataID, - std::vector &data); + void writeBlockDataToPrecice(const int dataID, + std::vector &data, + const QuantityType quantity_type); /*! * @brief Gives the number of quantities/datasets defined on coupling interface. * @@ -133,13 +137,36 @@ public: /*! * @brief Announces an additional quantity on the coupling interface. * - * Internally, the quantity is announce to preCICE and the corresponding + * Internally, the quantity is announced to preCICE and the corresponding + * data structures are initilized to store information about the quantity. + * + * @param[in] name Name of the scalar quantity. + * @param[in] quantity_type Type (Scalar or Vector) of the quantity + * @return size_t Number of currently announced quantities. + */ + size_t announceQuantity(const std::string &name, + const QuantityType quantity_type); + + /*! + * @brief Announces an additional scalar quantity on the coupling interface. + * + * Internally, the scalar quantity is announced to preCICE and the corresponding * data structures are initilized to store information about the quantity. * - * @param[in] name Name of the quantity. - * @return size_t Number of currently announces quantities. + * @param[in] name Name of the scalar quantity. + * @return size_t Number of currently announced quantities. */ - size_t announceQuantity(const std::string &name); + size_t announceScalarQuantity(const std::string &name); + /*! + * @brief Announces an additional vector quantity on the coupling interface. + * + * Internally, the vector quantity is announced to preCICE and the corresponding + * data structures are initilized to store information about the quantity. + * + * @param[in] name Name of the vector quantity. + * @return size_t Number of currently announced quantities. + */ + size_t announceVectorQuantity(const std::string &name); /*! * @brief Get the number of spatial dimensions * @@ -267,6 +294,15 @@ public: * @return double Value of scalar quantity. */ double getScalarQuantityOnFace(const size_t dataID, const int faceID) const; + // /*! + // * @brief Gets value of a vector quantity. + // * + // * @param[in] dataID Identifier of the quantity. + // * @param[in] faceID Identifier of the face according to DuMuX' numbering. + // * @return std::vector Value of vector quantity. + // */ + // std::vector getVectorQuantityOnFace(const size_t dataID, const int faceID) const; + // std::vector getVectorQuantity(const size_t dataID) const; /*! * @brief Gets value of a vector quantity. * @@ -304,13 +340,26 @@ public: const std::vector &getQuantityVector(const size_t dataID) const; /*! - * @brief Writes value of scalar quantity on given face. + * @brief Writes value of scalar or vector quantity on all vertices. * * @param[in] dataID Identifier of the quantity. - * @param[in] values Value of vector quantity. + * @param[in] values Value of the scalar or vector quantity. + */ + void writeQuantityVector(const size_t dataID, std::vector &values); + /*! + * @brief Writes data from adapter's buffer into preCICE's communication buffer. + * + * @param[in] dataID Identifier of the quantity to write into communication buffer. + */ + void writeQuantityToOtherSolver(const size_t dataID, + const QuantityType quantity_type); + /*! + * @brief Reads data from preCICE's communication buffer and puts it into adapter's buffer. + * + * @param dataID Identifier of the quantity to read into adapter buffer. */ - void writeScalarQuantityVector(const size_t dataID, - std::vector &values); + void readQuantityFromOtherSolver(const size_t dataID, + const QuantityType quantity_type); /*! * @brief Writes data from adapter's buffer into preCICE's communication buffer. * @@ -323,6 +372,11 @@ public: * @param dataID Identifier of the quantity to read into adapter buffer. */ void readScalarQuantityFromOtherSolver(const size_t dataID); + /*! + * @brief Writes data from adapter's buffer into preCICE's communication buffer. + * + * @param[in] dataID Identifier of the quantity to write into communication buffer. + */ /*! * @brief Checks whether face with given identifier is part of coupling interface. * diff --git a/dumux-precice/dumux-addon/CMakeLists.txt b/dumux-precice/dumux-addon/CMakeLists.txt deleted file mode 100644 index af38585..0000000 --- a/dumux-precice/dumux-addon/CMakeLists.txt +++ /dev/null @@ -1 +0,0 @@ -add_subdirectory(multidomain) diff --git a/dumux-precice/dumux-addon/multidomain/CMakeLists.txt b/dumux-precice/dumux-addon/multidomain/CMakeLists.txt deleted file mode 100644 index f85a389..0000000 --- a/dumux-precice/dumux-addon/multidomain/CMakeLists.txt +++ /dev/null @@ -1 +0,0 @@ -add_subdirectory(boundary) diff --git a/dumux-precice/dumux-addon/multidomain/boundary/CMakeLists.txt b/dumux-precice/dumux-addon/multidomain/boundary/CMakeLists.txt deleted file mode 100644 index bbaa72a..0000000 --- a/dumux-precice/dumux-addon/multidomain/boundary/CMakeLists.txt +++ /dev/null @@ -1 +0,0 @@ -add_subdirectory(stokesdarcy) diff --git a/dumux-precice/dumux-addon/multidomain/boundary/freeflowsolidenergy/CMakeLists.txt b/dumux-precice/dumux-addon/multidomain/boundary/freeflowsolidenergy/CMakeLists.txt deleted file mode 100644 index 6429913..0000000 --- a/dumux-precice/dumux-addon/multidomain/boundary/freeflowsolidenergy/CMakeLists.txt +++ /dev/null @@ -1,5 +0,0 @@ -install(FILES -couplingdata.hh -couplingmanager.hh -couplingmapper.hh -DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dumux-addon/multidomain/boundary/stokesdarcy) diff --git a/dumux-precice/dumux-addon/multidomain/boundary/freeflowsolidenergy/couplingdata.hh b/dumux-precice/dumux-addon/multidomain/boundary/freeflowsolidenergy/couplingdata.hh deleted file mode 100644 index 9767065..0000000 --- a/dumux-precice/dumux-addon/multidomain/boundary/freeflowsolidenergy/couplingdata.hh +++ /dev/null @@ -1,340 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup StokesDarcyCoupling - * \copydoc Dumux::StokesDarcyCouplingData - */ - -#ifndef DUMUX_FREEFLOW_SOLIDENERGY_COUPLINGDATA_HH -#define DUMUX_FREEFLOW_SOLIDENERGY_COUPLINGDATA_HH - -#include - -#include -#include -#include -#include - -namespace Dumux -{ -/*! - * \ingroup StokesDarcyCoupling - * \brief This structs holds a set of options which allow to modify the Stokes-Darcy - * coupling mechanism during runtime. - */ -struct FreeFlowHeatCouplingOptions { - /*! - * \brief Defines which kind of averanging of diffusion coefficiencients - * (moleculat diffusion or thermal conductance) at the interface - * between free flow and porous medium shall be used. - */ - enum class DiffusionCoefficientAveragingType { - harmonic, - arithmethic, - ffOnly, - pmOnly - }; - - /*! - * \brief Convenience function to convert user input given as std::string to the corresponding enum class used for chosing the type - * of averaging of the diffusion/conduction parameter at the interface between the two domains. - */ - static DiffusionCoefficientAveragingType stringToEnum( - const std::string &diffusionCoefficientAveragingType) - { - if (diffusionCoefficientAveragingType == "Harmonic") - return DiffusionCoefficientAveragingType::harmonic; - else if (diffusionCoefficientAveragingType == "Arithmethic") - return DiffusionCoefficientAveragingType::arithmethic; - else if (diffusionCoefficientAveragingType == "FreeFlowOnly") - return DiffusionCoefficientAveragingType::ffOnly; - else if (diffusionCoefficientAveragingType == "SolidOnly") - return DiffusionCoefficientAveragingType::pmOnly; - else - DUNE_THROW(Dune::IOError, - "Unknown DiffusionCoefficientAveragingType"); - } -}; - -/*! - * \ingroup StokesDarcyCoupling - * \brief A base class which provides some common methods used for Stokes-Darcy coupling. - */ -template -class FreeFlowSolidEnergyCouplingData -{ - using Scalar = typename MDTraits::Scalar; - - template - using SubDomainTypeTag = typename MDTraits::template SubDomain::TypeTag; - template - using FVGridGeometry = - GetPropType, Properties::FVGridGeometry>; - template - using Element = - typename FVGridGeometry::GridView::template Codim<0>::Entity; - template - using FVElementGeometry = typename FVGridGeometry::LocalView; - template - using SubControlVolumeFace = - typename FVGridGeometry::LocalView::SubControlVolumeFace; - template - using SubControlVolume = - typename FVGridGeometry::LocalView::SubControlVolume; - template - using Indices = typename GetPropType, - Properties::ModelTraits>::Indices; - template - using ElementVolumeVariables = - typename GetPropType, - Properties::GridVolumeVariables>::LocalView; - template - using ElementFaceVariables = - typename GetPropType, - Properties::GridFaceVariables>::LocalView; - template - using VolumeVariables = - typename GetPropType, - Properties::GridVolumeVariables>::VolumeVariables; - template - using Problem = GetPropType, Properties::Problem>; - template - using FluidSystem = - GetPropType, Properties::FluidSystem>; - template - using ModelTraits = - GetPropType, Properties::ModelTraits>; - - static constexpr auto freeFlowIdx = CouplingManager::freeFlowIdx; - static constexpr auto solidEnergyIdx = CouplingManager::solidEnergyIdx; - - static constexpr int enableEnergyBalance = - GetPropType, - Properties::ModelTraits>::enableEnergyBalance(); - static_assert( - GetPropType, - Properties::ModelTraits>::enableEnergyBalance() == - enableEnergyBalance, - "All submodels must both be either isothermal or non-isothermal"); - -public: - using DiffusionCoefficientAveragingType = - typename FreeFlowHeatCouplingOptions::DiffusionCoefficientAveragingType; - - FreeFlowSolidEnergyCouplingData(const CouplingManager &couplingmanager) - : couplingManager_(couplingmanager) - { - } - - /*! - * \brief Returns a reference to the coupling manager. - */ - const CouplingManager &couplingManager() const { return couplingManager_; } - - /*! - * \brief Returns the energy flux across the coupling boundary as seen from the Darcy domain. - */ - template = 0> - Scalar energyCouplingCondition( - const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &darcyElemVolVars, - const SubControlVolumeFace &scvf, - const DiffusionCoefficientAveragingType diffCoeffAvgType = - DiffusionCoefficientAveragingType::ffOnly) const - { - const auto &darcyContext = - this->couplingManager().darcyCouplingContext(element, scvf); - const auto &darcyVolVars = darcyElemVolVars[scvf.insideScvIdx()]; - const auto &stokesVolVars = darcyContext.volVars; - - return energyFlux_(solidEnergyIdx, freeFlowIdx, fvGeometry, - darcyContext.fvGeometry, scvf, darcyVolVars, - stokesVolVars, diffCoeffAvgType); - } - - /*! - * \brief Returns the energy flux across the coupling boundary as seen from the free-flow domain. - */ - template = 0> - Scalar energyCouplingCondition( - const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &stokesElemVolVars, - const ElementFaceVariables &stokesElemFaceVars, - const SubControlVolumeFace &scvf, - const DiffusionCoefficientAveragingType diffCoeffAvgType = - DiffusionCoefficientAveragingType::ffOnly) const - { - const auto &stokesContext = - this->couplingManager().stokesCouplingContext(element, scvf); - const auto &stokesVolVars = stokesElemVolVars[scvf.insideScvIdx()]; - const auto &darcyVolVars = stokesContext.volVars; - - return energyFlux_(freeFlowIdx, solidEnergyIdx, fvGeometry, - stokesContext.fvGeometry, scvf, stokesVolVars, - darcyVolVars, diffCoeffAvgType); - } - -private: - /*! - * \brief Evaluate the energy flux across the interface. - */ - template = 0> - Scalar energyFlux_( - Dune::index_constant domainI, - Dune::index_constant domainJ, - const FVElementGeometry &insideFvGeometry, - const FVElementGeometry &outsideFvGeometry, - const SubControlVolumeFace &scvf, - const VolumeVariables &insideVolVars, - const VolumeVariables &outsideVolVars, - const DiffusionCoefficientAveragingType diffCoeffAvgType) const - { - Scalar flux(0.0); - - const auto &insideScv = (*scvs(insideFvGeometry).begin()); - const auto &outsideScv = (*scvs(outsideFvGeometry).begin()); - - flux += this->conductiveEnergyFlux_(domainI, domainJ, insideFvGeometry, - outsideFvGeometry, scvf, insideScv, - outsideScv, insideVolVars, - outsideVolVars, diffCoeffAvgType); - - return flux; - } - - /*! - * \brief Returns the transmissibility used for either molecular diffusion or thermal conductivity. - */ - template - Scalar transmissibility_( - Dune::index_constant domainI, - Dune::index_constant domainJ, - const Scalar insideDistance, - const Scalar outsideDistance, - const Scalar avgQuantityI, - const Scalar avgQuantityJ, - const DiffusionCoefficientAveragingType diffCoeffAvgType) const - { - const Scalar totalDistance = insideDistance + outsideDistance; - if (diffCoeffAvgType == DiffusionCoefficientAveragingType::harmonic) { - return harmonicMean(avgQuantityI, avgQuantityJ, insideDistance, - outsideDistance) / - totalDistance; - } else if (diffCoeffAvgType == - DiffusionCoefficientAveragingType::arithmethic) { - return arithmeticMean(avgQuantityI, avgQuantityJ, insideDistance, - outsideDistance) / - totalDistance; - } else if (diffCoeffAvgType == - DiffusionCoefficientAveragingType::ffOnly) - return domainI == freeFlowIdx ? avgQuantityI / totalDistance - : avgQuantityJ / totalDistance; - - else // diffCoeffAvgType == DiffusionCoefficientAveragingType::pmOnly) - return domainI == solidEnergyIdx ? avgQuantityI / totalDistance - : avgQuantityJ / totalDistance; - } - - /*! - * \brief Returns the distance between an scvf and the corresponding scv center. - */ - template - Scalar getDistance_(const Scv &scv, const Scvf &scvf) const - { - return (scv.dofPosition() - scvf.ipGlobal()).two_norm(); - } - - /*! - * \brief Returns the conductive energy flux acorss the interface. - */ - template = 0> - Scalar conductiveEnergyFlux_( - Dune::index_constant domainI, - Dune::index_constant domainJ, - const FVElementGeometry &fvGeometryI, - const FVElementGeometry &fvGeometryJ, - const SubControlVolumeFace &scvfI, - const SubControlVolume &scvI, - const SubControlVolume &scvJ, - const VolumeVariables &volVarsI, - const VolumeVariables &volVarsJ, - const DiffusionCoefficientAveragingType diffCoeffAvgType) const - { - const Scalar insideDistance = getDistance_(scvI, scvfI); - const Scalar outsideDistance = getDistance_(scvJ, scvfI); - - const Scalar deltaT = volVarsJ.temperature() - volVarsI.temperature(); - const Scalar tij = - transmissibility_(domainI, domainJ, insideDistance, outsideDistance, - thermalConductivity_(volVarsI, fvGeometryI, scvI), - thermalConductivity_(volVarsJ, fvGeometryJ, scvJ), - diffCoeffAvgType); - - return -tij * deltaT; - } - - /*! - * \brief Returns the effective thermal conductivity (lumped parameter) within the porous medium. - */ - template = 0> - Scalar thermalConductivity_( - const VolumeVariables &volVars, - const FVElementGeometry &fvGeometry, - const SubControlVolume &scv) const - { - using ThermalConductivityModel = - GetPropType, - Properties::ThermalConductivityModel>; - const auto &problem = this->couplingManager().problem(solidEnergyIdx); - return ThermalConductivityModel::effectiveThermalConductivity( - volVars, problem.spatialParams(), - fvGeometry.fvGridGeometry().element(scv), fvGeometry, scv); - } - - /*! - * \brief Returns the thermal conductivity of the fluid phase within the free flow domain. - */ - template = 0> - Scalar thermalConductivity_( - const VolumeVariables &volVars, - const FVElementGeometry &fvGeometry, - const SubControlVolume &scv) const - { - return volVars.effectiveThermalConductivity(); - } - - const CouplingManager &couplingManager_; -}; - -} // end namespace Dumux - -#endif // DUMUX_STOKES_DARCY_COUPLINGDATA_HH diff --git a/dumux-precice/dumux-addon/multidomain/boundary/freeflowsolidenergy/couplingmanager.hh b/dumux-precice/dumux-addon/multidomain/boundary/freeflowsolidenergy/couplingmanager.hh deleted file mode 100644 index e15094e..0000000 --- a/dumux-precice/dumux-addon/multidomain/boundary/freeflowsolidenergy/couplingmanager.hh +++ /dev/null @@ -1,682 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup StokesDarcyCoupling - * \copydoc Dumux::FreeFlowSolidEnergyCouplingManager - */ - -#ifndef DUMUX_FREEFLOW_SOLIDENERGY_COUPLINGMANAGER_HH -#define DUMUX_FREEFLOW_SOLIDENERGY_COUPLINGMANAGER_HH - -#include -#include - -#include -#include -#include -#include -#include - -#include -#include "couplingdata.hh" - -namespace Dumux -{ -/*! - * \ingroup StokesDarcyCoupling - * \brief Coupling manager for Stokes and Darcy domains with equal dimension. - */ -template -class FreeFlowSolidEnergyCouplingManager - : public StaggeredCouplingManager -{ - using Scalar = typename MDTraits::Scalar; - using ParentType = StaggeredCouplingManager; - -public: - static constexpr auto freeFlowCellCenterIdx = - typename MDTraits::template SubDomain<0>::Index(); - static constexpr auto freeFlowFaceIdx = - typename MDTraits::template SubDomain<1>::Index(); - static constexpr auto cellCenterIdx = - typename MDTraits::template SubDomain<0>::Index(); - static constexpr auto faceIdx = - typename MDTraits::template SubDomain<1>::Index(); - static constexpr auto freeFlowIdx = freeFlowCellCenterIdx; - static constexpr auto solidEnergyIdx = - typename MDTraits::template SubDomain<2>::Index(); - -private: - using SolutionVector = typename MDTraits::SolutionVector; - - // obtain the type tags of the sub problems - using StokesTypeTag = typename MDTraits::template SubDomain<0>::TypeTag; - using DarcyTypeTag = typename MDTraits::template SubDomain<2>::TypeTag; - - using CouplingStencils = - std::unordered_map>; - using CouplingStencil = CouplingStencils::mapped_type; - - // the sub domain type tags - template - using SubDomainTypeTag = typename MDTraits::template SubDomain::TypeTag; - - static constexpr bool isCompositional = - GetPropType, - Properties::ModelTraits>::numFluidComponents() > 1; - - template - using GridView = GetPropType, Properties::GridView>; - template - using Problem = GetPropType, Properties::Problem>; - template - using NumEqVector = - GetPropType, Properties::NumEqVector>; - template - using ElementVolumeVariables = - typename GetPropType, - Properties::GridVolumeVariables>::LocalView; - template - using GridVolumeVariables = - GetPropType, Properties::GridVolumeVariables>; - template - using VolumeVariables = - typename GetPropType, - Properties::GridVolumeVariables>::VolumeVariables; - template - using FVGridGeometry = - GetPropType, Properties::FVGridGeometry>; - template - using FVElementGeometry = typename FVGridGeometry::LocalView; - template - using ElementBoundaryTypes = - GetPropType, Properties::ElementBoundaryTypes>; - template - using ElementFluxVariablesCache = - typename GetPropType, - Properties::GridFluxVariablesCache>::LocalView; - template - using GridVariables = - GetPropType, Properties::GridVariables>; - template - using Element = typename GridView::template Codim<0>::Entity; - template - using PrimaryVariables = - typename MDTraits::template SubDomain::PrimaryVariables; - template - using SubControlVolumeFace = - typename FVElementGeometry::SubControlVolumeFace; - - using CellCenterSolutionVector = - GetPropType; - - using CouplingMapper = StokesDarcyCouplingMapper; - - struct StationaryStokesCouplingContext { - Element element; - FVElementGeometry fvGeometry; - std::size_t darcyScvfIdx; - std::size_t stokesScvfIdx; - VolumeVariables volVars; - }; - - struct StationaryDarcyCouplingContext { - Element element; - FVElementGeometry fvGeometry; - std::size_t stokesScvfIdx; - std::size_t darcyScvfIdx; - VolumeVariables volVars; - }; - -public: - using ParentType::couplingStencil; - using ParentType::updateCouplingContext; - using CouplingData = FreeFlowSolidEnergyCouplingData< - MDTraits, - FreeFlowSolidEnergyCouplingManager>; - - //! Constructor - FreeFlowSolidEnergyCouplingManager( - std::shared_ptr> stokesFvGridGeometry, - std::shared_ptr> - darcyFvGridGeometry) - : couplingMapper_(*this) - { - } - - /*! - * \brief Methods to be accessed by main - */ - // \{ - - //! Initialize the coupling manager - void init(std::shared_ptr> stokesProblem, - std::shared_ptr> darcyProblem, - const SolutionVector &curSol) - { - if (Dune::FloatCmp::ne(stokesProblem->gravity(), - darcyProblem->gravity())) - DUNE_THROW(Dune::InvalidStateException, - "Both models must use the same gravity vector"); - - this->setSubProblems( - std::make_tuple(stokesProblem, stokesProblem, darcyProblem)); - this->curSol() = curSol; - couplingData_ = std::make_shared(*this); - computeStencils(); - } - - //! Update after the grid has changed - void update() {} - - // \} - - //! Update the solution vector before assembly - void updateSolution(const SolutionVector &curSol) - { - this->curSol() = curSol; - } - - //! Prepare the coupling stencils - void computeStencils() - { - couplingMapper_.computeCouplingMapsAndStencils( - darcyToStokesCellCenterCouplingStencils_, - darcyToStokesFaceCouplingStencils_, - stokesCellCenterCouplingStencils_, stokesFaceCouplingStencils_); - - for (auto &&stencil : darcyToStokesCellCenterCouplingStencils_) - removeDuplicates_(stencil.second); - for (auto &&stencil : darcyToStokesFaceCouplingStencils_) - removeDuplicates_(stencil.second); - for (auto &&stencil : stokesCellCenterCouplingStencils_) - removeDuplicates_(stencil.second); - for (auto &&stencil : stokesFaceCouplingStencils_) - removeDuplicates_(stencil.second); - } - - /*! - * \brief Methods to be accessed by the assembly - */ - // \{ - - using ParentType::evalCouplingResidual; - - /*! - * \brief prepares all data and variables that are necessary to evaluate the residual of an Darcy element (i.e. Darcy information) - */ - template< - std::size_t i, - class Assembler, - std::enable_if_t<(i == freeFlowCellCenterIdx || i == freeFlowFaceIdx), - int> = 0> - void bindCouplingContext(Dune::index_constant domainI, - const Element &element, - const Assembler &assembler) const - { - bindCouplingContext(domainI, element); - } - - /*! - * \brief prepares all data and variables that are necessary to evaluate the residual of an Darcy element (i.e. Darcy information) - */ - template< - std::size_t i, - std::enable_if_t<(i == freeFlowCellCenterIdx || i == freeFlowFaceIdx), - int> = 0> - void bindCouplingContext( - Dune::index_constant domainI, - const Element &element) const - { - stokesCouplingContext_.clear(); - - const auto stokesElementIdx = this->problem(freeFlowIdx) - .fvGridGeometry() - .elementMapper() - .index(element); - boundStokesElemIdx_ = stokesElementIdx; - - // do nothing if the element is not coupled to the other domain - if (!couplingMapper_.stokesElementToDarcyElementMap().count( - stokesElementIdx)) - return; - - // prepare the coupling context - const auto &darcyIndices = - couplingMapper_.stokesElementToDarcyElementMap().at( - stokesElementIdx); - auto darcyFvGeometry = - localView(this->problem(solidEnergyIdx).fvGridGeometry()); - - for (auto &&indices : darcyIndices) { - const auto &darcyElement = this->problem(solidEnergyIdx) - .fvGridGeometry() - .boundingBoxTree() - .entitySet() - .entity(indices.eIdx); - darcyFvGeometry.bindElement(darcyElement); - const auto &scv = (*scvs(darcyFvGeometry).begin()); - - const auto darcyElemSol = - elementSolution(darcyElement, this->curSol()[solidEnergyIdx], - this->problem(solidEnergyIdx).fvGridGeometry()); - VolumeVariables darcyVolVars; - darcyVolVars.update(darcyElemSol, this->problem(solidEnergyIdx), - darcyElement, scv); - - // add the context - stokesCouplingContext_.push_back( - {darcyElement, darcyFvGeometry, indices.scvfIdx, - indices.flipScvfIdx, darcyVolVars}); - } - } - - /*! - * \brief prepares all data and variables that are necessary to evaluate the residual of an Darcy element (i.e. Stokes information) - */ - template - void bindCouplingContext(Dune::index_constant domainI, - const Element &element, - const Assembler &assembler) const - { - bindCouplingContext(domainI, element); - } - - /*! - * \brief prepares all data and variables that are necessary to evaluate the residual of an Darcy element (i.e. Stokes information) - */ - void bindCouplingContext(Dune::index_constant domainI, - const Element &element) const - { - darcyCouplingContext_.clear(); - - const auto darcyElementIdx = this->problem(solidEnergyIdx) - .fvGridGeometry() - .elementMapper() - .index(element); - boundDarcyElemIdx_ = darcyElementIdx; - - // do nothing if the element is not coupled to the other domain - if (!couplingMapper_.darcyElementToStokesElementMap().count( - darcyElementIdx)) - return; - - // prepare the coupling context - const auto &stokesElementIndices = - couplingMapper_.darcyElementToStokesElementMap().at( - darcyElementIdx); - auto stokesFvGeometry = - localView(this->problem(freeFlowIdx).fvGridGeometry()); - - for (auto &&indices : stokesElementIndices) { - const auto &stokesElement = this->problem(freeFlowIdx) - .fvGridGeometry() - .boundingBoxTree() - .entitySet() - .entity(indices.eIdx); - stokesFvGeometry.bindElement(stokesElement); - - using PriVarsType = typename VolumeVariables< - freeFlowCellCenterIdx>::PrimaryVariables; - const auto &cellCenterPriVars = - this->curSol()[freeFlowCellCenterIdx][indices.eIdx]; - const auto elemSol = - makeElementSolutionFromCellCenterPrivars( - cellCenterPriVars); - - VolumeVariables stokesVolVars; - for (const auto &scv : scvs(stokesFvGeometry)) - stokesVolVars.update(elemSol, this->problem(freeFlowIdx), - stokesElement, scv); - - // add the context - darcyCouplingContext_.push_back( - {stokesElement, stokesFvGeometry, indices.scvfIdx, - indices.flipScvfIdx, stokesVolVars}); - } - } - - /*! - * \brief Update the coupling context for the Darcy residual w.r.t. Darcy DOFs - */ - template - void updateCouplingContext(Dune::index_constant domainI, - const LocalAssemblerI &localAssemblerI, - Dune::index_constant domainJ, - std::size_t dofIdxGlobalJ, - const PrimaryVariables &priVarsJ, - int pvIdxJ) - { - this->curSol()[domainJ][dofIdxGlobalJ][pvIdxJ] = priVarsJ[pvIdxJ]; - } - - /*! - * \brief Update the coupling context for the Darcy residual w.r.t. the Stokes cell-center DOFs (DarcyToCC) - */ - template - void updateCouplingContext( - Dune::index_constant domainI, - const LocalAssemblerI &localAssemblerI, - Dune::index_constant domainJ, - const std::size_t dofIdxGlobalJ, - const PrimaryVariables &priVars, - int pvIdxJ) - { - this->curSol()[domainJ][dofIdxGlobalJ] = priVars; - - for (auto &data : darcyCouplingContext_) { - const auto stokesElemIdx = this->problem(freeFlowIdx) - .fvGridGeometry() - .elementMapper() - .index(data.element); - - if (stokesElemIdx != dofIdxGlobalJ) - continue; - - using PriVarsType = typename VolumeVariables< - freeFlowCellCenterIdx>::PrimaryVariables; - const auto elemSol = - makeElementSolutionFromCellCenterPrivars(priVars); - - for (const auto &scv : scvs(data.fvGeometry)) - data.volVars.update(elemSol, this->problem(freeFlowIdx), - data.element, scv); - } - } - - /*! - * \brief Update the coupling context for the Darcy residual w.r.t. the Stokes face DOFs (DarcyToFace) - */ - template - void updateCouplingContext(Dune::index_constant domainI, - const LocalAssemblerI &localAssemblerI, - Dune::index_constant domainJ, - const std::size_t dofIdxGlobalJ, - const PrimaryVariables<1> &priVars, - int pvIdxJ) - { - this->curSol()[domainJ][dofIdxGlobalJ] = priVars; - } - - /*! - * \brief Update the coupling context for the Stokes cc residual w.r.t. the Darcy DOFs (FaceToDarcy) - */ - template< - std::size_t i, - class LocalAssemblerI, - std::enable_if_t<(i == freeFlowCellCenterIdx || i == freeFlowFaceIdx), - int> = 0> - void updateCouplingContext(Dune::index_constant domainI, - const LocalAssemblerI &localAssemblerI, - Dune::index_constant domainJ, - const std::size_t dofIdxGlobalJ, - const PrimaryVariables &priVars, - int pvIdxJ) - { - this->curSol()[domainJ][dofIdxGlobalJ] = priVars; - - for (auto &data : stokesCouplingContext_) { - const auto darcyElemIdx = this->problem(solidEnergyIdx) - .fvGridGeometry() - .elementMapper() - .index(data.element); - - if (darcyElemIdx != dofIdxGlobalJ) - continue; - - const auto darcyElemSol = - elementSolution(data.element, this->curSol()[solidEnergyIdx], - this->problem(solidEnergyIdx).fvGridGeometry()); - - for (const auto &scv : scvs(data.fvGeometry)) - data.volVars.update(darcyElemSol, this->problem(solidEnergyIdx), - data.element, scv); - } - } - - // \} - - /*! - * \brief Access the coupling data - */ - const auto &couplingData() const { return *couplingData_; } - - /*! - * \brief Access the coupling context needed for the Stokes domain - */ - const auto &stokesCouplingContext( - const Element &element, - const SubControlVolumeFace &scvf) const - { - if (stokesCouplingContext_.empty() || - boundStokesElemIdx_ != scvf.insideScvIdx()) - bindCouplingContext(freeFlowIdx, element); - - for (const auto &context : stokesCouplingContext_) { - if (scvf.index() == context.stokesScvfIdx) - return context; - } - - DUNE_THROW(Dune::InvalidStateException, - "No coupling context found at scvf " << scvf.center()); - } - - /*! - * \brief Access the coupling context needed for the Darcy domain - */ - const auto &darcyCouplingContext( - const Element &element, - const SubControlVolumeFace &scvf) const - { - if (darcyCouplingContext_.empty() || - boundDarcyElemIdx_ != scvf.insideScvIdx()) - bindCouplingContext(solidEnergyIdx, element); - - for (const auto &context : darcyCouplingContext_) { - if (scvf.index() == context.darcyScvfIdx) - return context; - } - - DUNE_THROW(Dune::InvalidStateException, - "No coupling context found at scvf " << scvf.center()); - } - - /*! - * \brief The coupling stencils - */ - // \{ - - /*! - * \brief The Stokes cell center coupling stencil w.r.t. Darcy DOFs - */ - const CouplingStencil &couplingStencil( - Dune::index_constant domainI, - const Element &element, - Dune::index_constant domainJ) const - { - const auto eIdx = - this->problem(domainI).fvGridGeometry().elementMapper().index( - element); - if (stokesCellCenterCouplingStencils_.count(eIdx)) - return stokesCellCenterCouplingStencils_.at(eIdx); - else - return emptyStencil_; - } - - /*! - * \brief The coupling stencil of domain I, i.e. which domain J DOFs - * the given domain I element's residual depends on. - */ - template - const CouplingStencil &couplingStencil( - Dune::index_constant domainI, - const Element &element, - Dune::index_constant domainJ) const - { - return emptyStencil_; - } - - /*! - * \brief The coupling stencil of domain I, i.e. which domain J dofs - * the given domain I element's residual depends on. - */ - const CouplingStencil &couplingStencil( - Dune::index_constant domainI, - const Element &element, - Dune::index_constant domainJ) const - { - const auto eIdx = - this->problem(domainI).fvGridGeometry().elementMapper().index( - element); - if (darcyToStokesCellCenterCouplingStencils_.count(eIdx)) - return darcyToStokesCellCenterCouplingStencils_.at(eIdx); - else - return emptyStencil_; - } - - /*! - * \brief The coupling stencil of domain I, i.e. which domain J dofs - * the given domain I element's residual depends on. - */ - const CouplingStencil &couplingStencil( - Dune::index_constant domainI, - const Element &element, - Dune::index_constant domainJ) const - { - const auto eIdx = - this->problem(domainI).fvGridGeometry().elementMapper().index( - element); - if (darcyToStokesFaceCouplingStencils_.count(eIdx)) - return darcyToStokesFaceCouplingStencils_.at(eIdx); - else - return emptyStencil_; - } - - /*! - * \brief The coupling stencil of domain I, i.e. which domain J DOFs - * the given domain I element's residual depends on. - */ - template - const CouplingStencil &couplingStencil( - Dune::index_constant domainI, - const SubControlVolumeFace &scvf, - Dune::index_constant domainJ) const - { - return emptyStencil_; - } - - /*! - * \brief The coupling stencil of a Stokes face w.r.t. Darcy DOFs - */ - const CouplingStencil &couplingStencil( - Dune::index_constant domainI, - const SubControlVolumeFace &scvf, - Dune::index_constant domainJ) const - { - const auto faceDofIdx = scvf.dofIndex(); - if (stokesFaceCouplingStencils_.count(faceDofIdx)) - return stokesFaceCouplingStencils_.at(faceDofIdx); - else - return emptyStencil_; - } - - // \} - - /*! - * \brief There are no additional dof dependencies - */ - template - const std::vector &getAdditionalDofDependencies( - IdType id, - std::size_t stokesElementIdx) const - { - return emptyStencil_; - } - - /*! - * \brief There are no additional dof dependencies - */ - template - const std::vector &getAdditionalDofDependenciesInverse( - IdType id, - std::size_t darcyElementIdx) const - { - return emptyStencil_; - } - - /*! - * \brief Returns whether a given free flow scvf is coupled to the other domain - */ - bool isCoupledEntity( - Dune::index_constant, - const SubControlVolumeFace &scvf) const - { - return stokesFaceCouplingStencils_.count(scvf.dofIndex()); - } - - /*! - * \brief Returns whether a given free flow scvf is coupled to the other domain - */ - bool isCoupledEntity(Dune::index_constant, - const SubControlVolumeFace &scvf) const - { - return couplingMapper_.isCoupledDarcyScvf(scvf.index()); - } - -protected: - //! Return a reference to an empty stencil - std::vector &emptyStencil() { return emptyStencil_; } - - void removeDuplicates_(std::vector &stencil) - { - std::sort(stencil.begin(), stencil.end()); - stencil.erase(std::unique(stencil.begin(), stencil.end()), - stencil.end()); - } - -private: - std::vector isCoupledDarcyDof_; - std::shared_ptr couplingData_; - - std::unordered_map> - stokesCellCenterCouplingStencils_; - std::unordered_map> - stokesFaceCouplingStencils_; - std::unordered_map> - darcyToStokesCellCenterCouplingStencils_; - std::unordered_map> - darcyToStokesFaceCouplingStencils_; - std::vector emptyStencil_; - - //////////////////////////////////////////////////////////////////////////// - //! The coupling context - //////////////////////////////////////////////////////////////////////////// - mutable std::vector stokesCouplingContext_; - mutable std::vector darcyCouplingContext_; - - mutable std::size_t boundStokesElemIdx_; - mutable std::size_t boundDarcyElemIdx_; - - CouplingMapper couplingMapper_; -}; - -} // end namespace Dumux - -#endif diff --git a/dumux-precice/dumux-addon/multidomain/boundary/stokesdarcy/CMakeLists.txt b/dumux-precice/dumux-addon/multidomain/boundary/stokesdarcy/CMakeLists.txt deleted file mode 100644 index 76ffca5..0000000 --- a/dumux-precice/dumux-addon/multidomain/boundary/stokesdarcy/CMakeLists.txt +++ /dev/null @@ -1,5 +0,0 @@ -install(FILES -couplingdata.hh -couplingmanager.hh -couplingmapper.hh -DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dumux-precice/dumux-addon/multidomain/boundary/stokesdarcy) diff --git a/dumux-precice/dumux-addon/multidomain/boundary/stokesdarcy/couplingdata.hh b/dumux-precice/dumux-addon/multidomain/boundary/stokesdarcy/couplingdata.hh deleted file mode 100644 index 75b3674..0000000 --- a/dumux-precice/dumux-addon/multidomain/boundary/stokesdarcy/couplingdata.hh +++ /dev/null @@ -1,1623 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup StokesDarcyCoupling - * \copydoc Dumux::StokesDarcyCouplingData - */ - -#ifndef DUMUX_STOKES_DARCY_COUPLINGDATA_HH -#define DUMUX_STOKES_DARCY_COUPLINGDATA_HH - -#include - -#include -#include -#include -#include -#include -#include -#include - -namespace Dumux -{ -/*! - * \ingroup StokesDarcyCoupling - * \brief This structs holds a set of options which allow to modify the Stokes-Darcy - * coupling mechanism during runtime. - */ -struct StokesDarcyCouplingOptions { - /*! - * \brief Defines which kind of averanging of diffusion coefficiencients - * (moleculat diffusion or thermal conductance) at the interface - * between free flow and porous medium shall be used. - */ - enum class DiffusionCoefficientAveragingType { - harmonic, - arithmethic, - ffOnly, - pmOnly - }; - - /*! - * \brief Convenience function to convert user input given as std::string to the corresponding enum class used for chosing the type - * of averaging of the diffusion/conduction parameter at the interface between the two domains. - */ - static DiffusionCoefficientAveragingType stringToEnum( - DiffusionCoefficientAveragingType, - const std::string &diffusionCoefficientAveragingType) - { - if (diffusionCoefficientAveragingType == "Harmonic") - return DiffusionCoefficientAveragingType::harmonic; - else if (diffusionCoefficientAveragingType == "Arithmethic") - return DiffusionCoefficientAveragingType::arithmethic; - else if (diffusionCoefficientAveragingType == "FreeFlowOnly") - return DiffusionCoefficientAveragingType::ffOnly; - else if (diffusionCoefficientAveragingType == "PorousMediumOnly") - return DiffusionCoefficientAveragingType::pmOnly; - else - DUNE_THROW(Dune::IOError, - "Unknown DiffusionCoefficientAveragingType"); - } -}; - -/*! - * \ingroup StokesDarcyCoupling - * \brief This structs helps to check if the two sub models use the same fluidsystem. - * Specialization for the case of using an adapter only for the free-flow model. - * \tparam FFFS The free-flow fluidsystem - * \tparam PMFS The porous-medium flow fluidsystem - */ -template -struct IsSameFluidSystem { - static_assert(FFFS::numPhases == 1, - "Only single-phase fluidsystems may be used for free flow."); - static constexpr bool value = - std::is_same::value; -}; - -/*! - * \ingroup StokesDarcyCoupling - * \brief This structs helps to check if the two sub models use the same fluidsystem. - * \tparam FS The fluidsystem - */ -template -struct IsSameFluidSystem { - static_assert(FS::numPhases == 1, - "Only single-phase fluidsystems may be used for free flow."); - static constexpr bool value = std::is_same::value; // always true -}; - -// forward declaration -template -class FicksLawImplementation; - -/*! - * \ingroup StokesDarcyCoupling - * \brief This structs indicates that Fick's law is not used for diffusion. - * \tparam DiffLaw The diffusion law. - */ -template -struct IsFicksLaw : public std::false_type { -}; - -/*! - * \ingroup StokesDarcyCoupling - * \brief This structs indicates that Fick's law is used for diffusion. - * \tparam DiffLaw The diffusion law. - */ -template -struct IsFicksLaw> - : public std::true_type { -}; - -/*! - * \ingroup StokesDarcyCoupling - * \brief Helper struct to choose the correct index for phases and components. This is need if the porous-medium-flow model - features more fluid phases than the free-flow model. - * \tparam stokesIdx The domain index of the free-flow model. - * \tparam darcyIdx The domain index of the porous-medium-flow model. - * \tparam FFFS The free-flow fluidsystem. - * \tparam hasAdapter Specifies whether an adapter class for the fluidsystem is used. - */ -template -struct IndexHelper; - -/*! - * \ingroup StokesDarcyCoupling - * \brief Helper struct to choose the correct index for phases and components. This is need if the porous-medium-flow model - features more fluid phases than the free-flow model. Specialization for the case that no adapter is used. - * \tparam stokesIdx The domain index of the free-flow model. - * \tparam darcyIdx The domain index of the porous-medium-flow model. - * \tparam FFFS The free-flow fluidsystem. - */ -template -struct IndexHelper { - /*! - * \brief No adapter is used, just return the input index. - */ - template - static constexpr auto couplingPhaseIdx(Dune::index_constant, - int coupledPhaseIdx = 0) - { - return coupledPhaseIdx; - } - - /*! - * \brief No adapter is used, just return the input index. - */ - template - static constexpr auto couplingCompIdx(Dune::index_constant, - int coupledCompdIdx) - { - return coupledCompdIdx; - } -}; - -/*! - * \ingroup StokesDarcyCoupling - * \brief Helper struct to choose the correct index for phases and components. This is need if the porous-medium-flow model - features more fluid phases than the free-flow model. Specialization for the case that a adapter is used. - * \tparam stokesIdx The domain index of the free-flow model. - * \tparam darcyIdx The domain index of the porous-medium-flow model. - * \tparam FFFS The free-flow fluidsystem. - */ -template -struct IndexHelper { - /*! - * \brief The free-flow model always uses phase index 0. - */ - static constexpr auto couplingPhaseIdx(Dune::index_constant, - int coupledPhaseIdx = 0) - { - return 0; - } - - /*! - * \brief The phase index of the porous-medium-flow model is given by the adapter fluidsytem (i.e., user input). - */ - static constexpr auto couplingPhaseIdx(Dune::index_constant, - int coupledPhaseIdx = 0) - { - return FFFS::multiphaseFluidsystemPhaseIdx; - } - - /*! - * \brief The free-flow model does not need any change of the component index. - */ - static constexpr auto couplingCompIdx(Dune::index_constant, - int coupledCompdIdx) - { - return coupledCompdIdx; - } - - /*! - * \brief The component index of the porous-medium-flow model is mapped by the adapter fluidsytem. - */ - static constexpr auto couplingCompIdx(Dune::index_constant, - int coupledCompdIdx) - { - return FFFS::compIdx(coupledCompdIdx); - } -}; - -//! forward declare -template -class DarcysLawImplementation; - -//! forward declare -template -class ForchheimersLawImplementation; - -template -class StokesDarcyCouplingDataImplementation; - -/*! -* \ingroup BoundaryCoupling -* \brief Data for the coupling of a Darcy model (cell-centered finite volume) -* with a (Navier-)Stokes model (staggerd grid). -*/ -template -using StokesDarcyCouplingData = StokesDarcyCouplingDataImplementation< - MDTraits, - CouplingManager, - GetPropType::TypeTag, - Properties::ModelTraits>::enableEnergyBalance(), - (GetPropType::TypeTag, - Properties::ModelTraits>::numFluidComponents() > 1)>; - -/*! - * \ingroup StokesDarcyCoupling - * \brief A base class which provides some common methods used for Stokes-Darcy coupling. - */ -template -class StokesDarcyCouplingDataImplementationBase -{ - using Scalar = typename MDTraits::Scalar; - - template - using SubDomainTypeTag = typename MDTraits::template SubDomain::TypeTag; - template - using GridGeometry = - GetPropType, Properties::GridGeometry>; - template - using Element = - typename GridGeometry::GridView::template Codim<0>::Entity; - template - using FVElementGeometry = typename GridGeometry::LocalView; - template - using SubControlVolumeFace = - typename GridGeometry::LocalView::SubControlVolumeFace; - template - using SubControlVolume = - typename GridGeometry::LocalView::SubControlVolume; - template - using Indices = typename GetPropType, - Properties::ModelTraits>::Indices; - template - using ElementVolumeVariables = - typename GetPropType, - Properties::GridVolumeVariables>::LocalView; - template - using VolumeVariables = - typename GetPropType, - Properties::GridVolumeVariables>::VolumeVariables; - template - using Problem = GetPropType, Properties::Problem>; - template - using FluidSystem = - GetPropType, Properties::FluidSystem>; - template - using ModelTraits = - GetPropType, Properties::ModelTraits>; - template - using GlobalPosition = typename Element::Geometry::GlobalCoordinate; - static constexpr auto stokesIdx = CouplingManager::stokesIdx; - static constexpr auto darcyIdx = CouplingManager::darcyIdx; - - using AdvectionType = - GetPropType, Properties::AdvectionType>; - using DarcysLaw = - DarcysLawImplementation, - GridGeometry::discMethod>; - using ForchheimersLaw = - ForchheimersLawImplementation, - GridGeometry::discMethod>; - - static constexpr bool adapterUsed = - ModelTraits::numFluidPhases() > 1; - using IndexHelper = Dumux:: - IndexHelper, adapterUsed>; - - static constexpr int enableEnergyBalance = - GetPropType, - Properties::ModelTraits>::enableEnergyBalance(); - static_assert( - GetPropType, - Properties::ModelTraits>::enableEnergyBalance() == - enableEnergyBalance, - "All submodels must both be either isothermal or non-isothermal"); - - static_assert( - IsSameFluidSystem, FluidSystem>::value, - "All submodels must use the same fluid system"); - - using DiffusionCoefficientAveragingType = - typename StokesDarcyCouplingOptions::DiffusionCoefficientAveragingType; - - using TimeLoop = TimeLoopBase; - -public: - StokesDarcyCouplingDataImplementationBase( - const CouplingManager &couplingmanager, - std::shared_ptr timeLoop) - : couplingManager_(couplingmanager), timeLoop_(timeLoop) - { - } - - /*! - * \brief Returns the corresponding phase index needed for coupling. - */ - template - static constexpr auto couplingPhaseIdx(Dune::index_constant id, - int coupledPhaseIdx = 0) - { - return IndexHelper::couplingPhaseIdx(id, coupledPhaseIdx); - } - - /*! - * \brief Returns the corresponding component index needed for coupling. - */ - template - static constexpr auto couplingCompIdx(Dune::index_constant id, - int coupledCompdIdx) - { - return IndexHelper::couplingCompIdx(id, coupledCompdIdx); - } - - /*! - * \brief Returns a reference to the coupling manager. - */ - const CouplingManager &couplingManager() const { return couplingManager_; } - - /*! - * \brief Returns the intrinsic permeability of the coupled Darcy element. - */ - auto darcyPermeability(const Element &element, - const SubControlVolumeFace &scvf) const - { - const auto &stokesContext = - couplingManager().stokesCouplingContext(element, scvf); - return stokesContext.volVars.permeability(); - } - - /*! - * \brief Returns the momentum flux across the coupling boundary. - * - * For the normal momentum coupling, the porous medium side of the coupling condition - * is evaluated, i.e. -[p n]^pm. - * - */ - template - Scalar momentumCouplingCondition( - const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &stokesElemVolVars, - const ElementFaceVariables &stokesElemFaceVars, - const SubControlVolumeFace &scvf) const - { - if (couplingManager().couplingMode() != - CouplingManager::CouplingMode::reconstructPorousMediumPressure) - DUNE_THROW(Dune::InvalidStateException, - "This condition can only be used if the coupling mode " - "is set to reconstructPorousMediumPressure"); - - static constexpr auto numPhasesDarcy = - GetPropType, - Properties::ModelTraits>::numFluidPhases(); - - Scalar momentumFlux(0.0); - const auto &stokesContext = - couplingManager_.stokesCouplingContext(element, scvf); - const auto darcyPhaseIdx = couplingPhaseIdx(darcyIdx); - - // - p_pm * n_pm = p_pm * n_ff - const Scalar darcyPressure = - stokesContext.volVars.pressure(darcyPhaseIdx); - - if (numPhasesDarcy > 1) - momentumFlux = darcyPressure; - else // use pressure reconstruction for single phase models - momentumFlux = pressureAtInterface_( - element, scvf, stokesElemFaceVars, stokesContext); - // TODO: generalize for permeability tensors - - // normalize pressure - if (getPropValue, - Properties::NormalizePressure>()) - momentumFlux -= couplingManager_.problem(stokesIdx).initial( - scvf)[Indices::pressureIdx]; - - momentumFlux *= scvf.directionSign(); - - return momentumFlux; - } - - /*! - * \brief Returns the reconstructed free-flow pressure at the coupling interface - * corresponding to the normal momentum flux across the interface, i.e., - * [p]^PM = n*n*[div(vv^T - mu (gradV + gradV^T) + gradp)]^FF - */ - Scalar freeFlowInterfaceStress( - const Element &element, - const SubControlVolumeFace &scvf) const - { - if (couplingManager().couplingMode() != - CouplingManager::CouplingMode::reconstructFreeFlowNormalStress) - DUNE_THROW(Dune::InvalidStateException, - "This condition can only be used if the coupling mode " - "is set to reconstructFreeFlowNormalStress"); - - const auto &darcyContext = - this->couplingManager().darcyCouplingContext(element, scvf); - const auto &freeFlowScvf = darcyContext.getStokesScvf(); - const auto &curFreeFlowElemVolVars = - darcyContext.curElemVolVars.value(); - const auto &prevFreeFlowElemVolVars = - darcyContext.prevElemVolVars.value(); - const auto &freeFlowProblem = - this->couplingManager().problem(stokesIdx); - const auto &freeFlowElement = darcyContext.element; - const auto &freeFlowFVGeometry = darcyContext.fvGeometry; - const auto &curFreeFlowElemenFaceVars = - darcyContext.curElemFaceVars.value(); - const auto &prevFreeFlowElemenFaceVars = - darcyContext.prevElemFaceVars.value(); - - using LocalResidual = - GetPropType, Properties::LocalResidual>; - LocalResidual localResidual(&freeFlowProblem, timeLoop_.get()); - - typename LocalResidual::FaceResidualValue result(0.0); - - if (timeLoop_) - localResidual.evalStorageForFace( - result, freeFlowProblem, freeFlowElement, freeFlowFVGeometry, - prevFreeFlowElemVolVars, curFreeFlowElemVolVars, - prevFreeFlowElemenFaceVars, curFreeFlowElemenFaceVars, - freeFlowScvf); - - localResidual.evalSourceForFace( - result, freeFlowProblem, freeFlowElement, freeFlowFVGeometry, - curFreeFlowElemVolVars, curFreeFlowElemenFaceVars, freeFlowScvf); - - // consider momentum flux - using FluxVariables = - GetPropType, Properties::FluxVariables>; - FluxVariables fluxVars; - result += fluxVars.computeMomentumFlux( - freeFlowProblem, freeFlowElement, freeFlowScvf, freeFlowFVGeometry, - curFreeFlowElemVolVars, curFreeFlowElemenFaceVars, - darcyContext.elemFluxVarsCache->gridFluxVarsCache()); - - result /= curFreeFlowElemVolVars[freeFlowScvf.insideScvIdx()] - .extrusionFactor() * - freeFlowScvf.area(); - return result; - } - - /*! - * \brief Returns the reconstructed porous medium velocity at the coupling interface - * using Darcy's law. - * [v*n]^FF = [v*n]^PM - */ - Scalar porousMediumInterfaceVelocity( - const Element &element, - const SubControlVolumeFace &scvf) const - { - static_assert( - std::is_same_v, - "This function is currently only implemented for Darcy's law"); - - if (couplingManager().couplingMode() != - CouplingManager::CouplingMode::reconstructFreeFlowNormalStress) - DUNE_THROW(Dune::InvalidStateException, - "This condition can only be used if the coupling mode " - "is set to reconstructFreeFlowNormalStress"); - - const auto &stokesContext = - couplingManager_.stokesCouplingContext(element, scvf); - const auto darcyPhaseIdx = couplingPhaseIdx(darcyIdx); - const auto &darcyScvf = stokesContext.getDarcyScvf(); - - // v*n = -kr/mu*K * (gradP - rho*g)*n = mobility*(ti*(p_center - p_interface) + rho*n^TKg) - const Scalar couplingPhaseCellCenterPressure = - stokesContext.volVars.pressure(darcyPhaseIdx); - const Scalar couplingPhaseInterfacePressure = freeFlowInterfaceStress( - stokesContext.element, stokesContext.getDarcyScvf()); - const Scalar couplingPhaseMobility = - stokesContext.volVars.mobility(darcyPhaseIdx); - const Scalar couplingPhaseDensity = - stokesContext.volVars.density(darcyPhaseIdx); - const auto K = stokesContext.volVars.permeability(); - - const auto &insideScv = - stokesContext.fvGeometry.scv(darcyScvf.insideScvIdx()); - const auto ti = - computeTpfaTransmissibility(darcyScvf, insideScv, K, 1.0); - const auto alpha = - vtmv(darcyScvf.unitOuterNormal(), K, - couplingManager_.problem(darcyIdx).spatialParams().gravity( - darcyScvf.center())); - - return couplingPhaseMobility * (ti * (couplingPhaseCellCenterPressure - - couplingPhaseInterfacePressure) + - couplingPhaseDensity * alpha); - } - - /*! - * \brief Evaluate an advective flux across the interface and consider upwinding. - */ - Scalar advectiveFlux(const Scalar insideQuantity, - const Scalar outsideQuantity, - const Scalar volumeFlow, - bool insideIsUpstream) const - { - const Scalar upwindWeight = - 1.0; //TODO use Flux.UpwindWeight or something like Coupling.UpwindWeight? - - if (insideIsUpstream) - return (upwindWeight * insideQuantity + - (1.0 - upwindWeight) * outsideQuantity) * - volumeFlow; - else - return (upwindWeight * outsideQuantity + - (1.0 - upwindWeight) * insideQuantity) * - volumeFlow; - } - -protected: - /*! - * \brief Returns the transmissibility used for either molecular diffusion or thermal conductivity. - */ - template - Scalar transmissibility_( - Dune::index_constant domainI, - Dune::index_constant domainJ, - const Scalar insideDistance, - const Scalar outsideDistance, - const Scalar avgQuantityI, - const Scalar avgQuantityJ, - const DiffusionCoefficientAveragingType diffCoeffAvgType) const - { - const Scalar totalDistance = insideDistance + outsideDistance; - if (diffCoeffAvgType == DiffusionCoefficientAveragingType::harmonic) { - return harmonicMean(avgQuantityI, avgQuantityJ, insideDistance, - outsideDistance) / - totalDistance; - } else if (diffCoeffAvgType == - DiffusionCoefficientAveragingType::arithmethic) { - return arithmeticMean(avgQuantityI, avgQuantityJ, insideDistance, - outsideDistance) / - totalDistance; - } else if (diffCoeffAvgType == - DiffusionCoefficientAveragingType::ffOnly) - return domainI == stokesIdx ? avgQuantityI / totalDistance - : avgQuantityJ / totalDistance; - - else // diffCoeffAvgType == DiffusionCoefficientAveragingType::pmOnly) - return domainI == darcyIdx ? avgQuantityI / totalDistance - : avgQuantityJ / totalDistance; - } - - /*! - * \brief Returns the distance between an scvf and the corresponding scv center. - */ - template - Scalar getDistance_(const Scv &scv, const Scvf &scvf) const - { - return (scv.dofPosition() - scvf.ipGlobal()).two_norm(); - } - - /*! - * \brief Returns the conductive energy flux acorss the interface. - */ - template = 0> - Scalar conductiveEnergyFlux_( - Dune::index_constant domainI, - Dune::index_constant domainJ, - const FVElementGeometry &fvGeometryI, - const FVElementGeometry &fvGeometryJ, - const SubControlVolumeFace &scvfI, - const SubControlVolume &scvI, - const SubControlVolume &scvJ, - const VolumeVariables &volVarsI, - const VolumeVariables &volVarsJ, - const DiffusionCoefficientAveragingType diffCoeffAvgType) const - { - const Scalar insideDistance = getDistance_(scvI, scvfI); - const Scalar outsideDistance = getDistance_(scvJ, scvfI); - - const Scalar deltaT = volVarsJ.temperature() - volVarsI.temperature(); - const Scalar tij = transmissibility_( - domainI, domainJ, insideDistance, outsideDistance, - volVarsI.effectiveThermalConductivity(), - volVarsJ.effectiveThermalConductivity(), diffCoeffAvgType); - - return -tij * deltaT; - } - - /*! - * \brief Returns the pressure at the interface - */ - template - Scalar pressureAtInterface_(const Element &element, - const SubControlVolumeFace &scvf, - const ElementFaceVariables &elemFaceVars, - const CouplingContext &context) const - { - GlobalPosition velocity(0.0); - velocity[scvf.directionIndex()] = elemFaceVars[scvf].velocitySelf(); - const auto &darcyScvf = context.fvGeometry.scvf(context.darcyScvfIdx); - return computeCouplingPhasePressureAtInterface_( - context.element, context.fvGeometry, darcyScvf, context.volVars, - velocity, AdvectionType()); - } - - /*! - * \brief Returns the pressure at the interface using Forchheimers's law for reconstruction - */ - Scalar computeCouplingPhasePressureAtInterface_( - const Element &element, - const FVElementGeometry &fvGeometry, - const SubControlVolumeFace &scvf, - const VolumeVariables &volVars, - const typename Element::Geometry::GlobalCoordinate - &couplingPhaseVelocity, - ForchheimersLaw) const - { - const auto darcyPhaseIdx = couplingPhaseIdx(darcyIdx); - const Scalar cellCenterPressure = volVars.pressure(darcyPhaseIdx); - using std::sqrt; - - // v + (cF*sqrt(K)*rho/mu*|v|) * v = - K/mu grad(p - rho g) - // multiplying with n and using a tpfa for the right-hand side yields - // v*n + (cF*sqrt(K)*rho/mu*|v|) * (v*n) = 1/mu * (ti*(p_center - p_interface) + rho*n^TKg) - // --> p_interface = (-mu*v*n + (cF*sqrt(K)*rho*|v|) * (-v*n) + rho*n^TKg)/ti + p_center - const auto velocity = couplingPhaseVelocity; - const Scalar mu = volVars.viscosity(darcyPhaseIdx); - const Scalar rho = volVars.density(darcyPhaseIdx); - const auto K = volVars.permeability(); - const auto alpha = - vtmv(scvf.unitOuterNormal(), K, - couplingManager_.problem(darcyIdx).spatialParams().gravity( - scvf.center())); - - const auto &insideScv = fvGeometry.scv(scvf.insideScvIdx()); - const auto ti = computeTpfaTransmissibility(scvf, insideScv, K, 1.0); - - // get the Forchheimer coefficient - Scalar cF = - couplingManager_.problem(darcyIdx).spatialParams().forchCoeff(scvf); - - const Scalar interfacePressure = - ((-mu * (scvf.unitOuterNormal() * velocity)) + - (-(scvf.unitOuterNormal() * velocity) * velocity.two_norm() * rho * - sqrt(darcyPermeability(element, scvf)) * cF) + - rho * alpha) / - ti + - cellCenterPressure; - return interfacePressure; - } - - /*! - * \brief Returns the pressure at the interface using Darcy's law for reconstruction - */ - Scalar computeCouplingPhasePressureAtInterface_( - const Element &element, - const FVElementGeometry &fvGeometry, - const SubControlVolumeFace &scvf, - const VolumeVariables &volVars, - const typename Element::Geometry::GlobalCoordinate - &couplingPhaseVelocity, - DarcysLaw) const - { - const auto darcyPhaseIdx = couplingPhaseIdx(darcyIdx); - const Scalar couplingPhaseCellCenterPressure = - volVars.pressure(darcyPhaseIdx); - const Scalar couplingPhaseMobility = volVars.mobility(darcyPhaseIdx); - const Scalar couplingPhaseDensity = volVars.density(darcyPhaseIdx); - const auto K = volVars.permeability(); - - // A tpfa approximation yields (works if mobility != 0) - // v*n = -kr/mu*K * (gradP - rho*g)*n = mobility*(ti*(p_center - p_interface) + rho*n^TKg) - // -> p_interface = (1/mobility * (-v*n) + rho*n^TKg)/ti + p_center - // where v is the free-flow velocity (couplingPhaseVelocity) - const auto alpha = - vtmv(scvf.unitOuterNormal(), K, - couplingManager_.problem(darcyIdx).spatialParams().gravity( - scvf.center())); - - const auto &insideScv = fvGeometry.scv(scvf.insideScvIdx()); - const auto ti = computeTpfaTransmissibility(scvf, insideScv, K, 1.0); - - return (-1 / couplingPhaseMobility * - (scvf.unitOuterNormal() * couplingPhaseVelocity) + - couplingPhaseDensity * alpha) / - ti + - couplingPhaseCellCenterPressure; - } - -private: - const CouplingManager &couplingManager_; - std::shared_ptr timeLoop_; -}; - -/*! - * \ingroup StokesDarcyCoupling - * \brief Coupling data specialization for non-compositional models. - */ -template -class StokesDarcyCouplingDataImplementation - : public StokesDarcyCouplingDataImplementationBase -{ - using ParentType = - StokesDarcyCouplingDataImplementationBase; - using Scalar = typename MDTraits::Scalar; - static constexpr auto stokesIdx = CouplingManager::stokesIdx; - static constexpr auto darcyIdx = CouplingManager::darcyIdx; - static constexpr auto stokesFaceIdx = CouplingManager::stokesFaceIdx; - static constexpr auto stokesCellCenterIdx = - CouplingManager::stokesCellCenterIdx; - - // the sub domain type tags - template - using SubDomainTypeTag = typename MDTraits::template SubDomain::TypeTag; - - template - using GridGeometry = - GetPropType, Properties::GridGeometry>; - template - using Element = - typename GridGeometry::GridView::template Codim<0>::Entity; - template - using FVElementGeometry = typename GridGeometry::LocalView; - template - using SubControlVolumeFace = - typename GridGeometry::LocalView::SubControlVolumeFace; - template - using SubControlVolume = - typename GridGeometry::LocalView::SubControlVolume; - template - using Indices = typename GetPropType, - Properties::ModelTraits>::Indices; - template - using ElementVolumeVariables = - typename GetPropType, - Properties::GridVolumeVariables>::LocalView; - template - using ElementFaceVariables = - typename GetPropType, - Properties::GridFaceVariables>::LocalView; - template - using VolumeVariables = - typename GetPropType, - Properties::GridVolumeVariables>::VolumeVariables; - - static_assert(GetPropType, - Properties::ModelTraits>::numFluidComponents() == - GetPropType, - Properties::ModelTraits>::numFluidPhases(), - "Darcy Model must not be compositional"); - - using DiffusionCoefficientAveragingType = - typename StokesDarcyCouplingOptions::DiffusionCoefficientAveragingType; - -public: - using ParentType::couplingPhaseIdx; - using ParentType::ParentType; - - /*! - * \brief Returns the mass flux across the coupling boundary as seen from the Darcy domain. - */ - Scalar massCouplingCondition( - const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &darcyElemVolVars, - const SubControlVolumeFace &scvf) const - { - const auto &darcyContext = - this->couplingManager().darcyCouplingContext(element, scvf); - const Scalar velocity = - darcyContext.velocity.value() * scvf.unitOuterNormal(); - const Scalar darcyDensity = - darcyElemVolVars[scvf.insideScvIdx()].density( - couplingPhaseIdx(darcyIdx)); - - const auto &stokesScvf = darcyContext.getStokesScvf(); - const Scalar stokesDensity = - this->couplingManager().couplingMode() == - CouplingManager::CouplingMode:: - reconstructPorousMediumPressure - ? darcyContext.volVars.value().density() - : darcyContext.curElemVolVars.value()[stokesScvf.insideScvIdx()] - .density(); - - const bool insideIsUpstream = velocity > 0.0; - - return massFlux_(velocity, darcyDensity, stokesDensity, - insideIsUpstream); - } - - /*! - * \brief Returns the mass flux across the coupling boundary as seen from the free-flow domain. - */ - Scalar massCouplingCondition( - const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &stokesElemVolVars, - const ElementFaceVariables &stokesElemFaceVars, - const SubControlVolumeFace &scvf) const - { - const auto &stokesContext = - this->couplingManager().stokesCouplingContext(element, scvf); - const Scalar velocity = stokesElemFaceVars[scvf].velocitySelf(); - const Scalar stokesDensity = - stokesElemVolVars[scvf.insideScvIdx()].density(); - const Scalar darcyDensity = - stokesContext.volVars.density(couplingPhaseIdx(darcyIdx)); - const bool insideIsUpstream = sign(velocity) == scvf.directionSign(); - - return massFlux_(velocity * scvf.directionSign(), stokesDensity, - darcyDensity, insideIsUpstream); - } - - /*! - * \brief Returns the energy flux across the coupling boundary as seen from the Darcy domain. - */ - template = 0> - Scalar energyCouplingCondition( - const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &darcyElemVolVars, - const SubControlVolumeFace &scvf, - const DiffusionCoefficientAveragingType diffCoeffAvgType = - DiffusionCoefficientAveragingType::ffOnly) const - { - const auto &darcyContext = - this->couplingManager().darcyCouplingContext(element, scvf); - const auto &darcyVolVars = darcyElemVolVars[scvf.insideScvIdx()]; - const auto &stokesVolVars = darcyContext.volVars; - - const Scalar velocity = darcyContext.velocity * scvf.unitOuterNormal(); - const bool insideIsUpstream = velocity > 0.0; - - return energyFlux_(darcyIdx, stokesIdx, fvGeometry, - darcyContext.fvGeometry, scvf, darcyVolVars, - stokesVolVars, velocity, insideIsUpstream, - diffCoeffAvgType); - } - - /*! - * \brief Returns the energy flux across the coupling boundary as seen from the free-flow domain. - */ - template = 0> - Scalar energyCouplingCondition( - const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &stokesElemVolVars, - const ElementFaceVariables &stokesElemFaceVars, - const SubControlVolumeFace &scvf, - const DiffusionCoefficientAveragingType diffCoeffAvgType = - DiffusionCoefficientAveragingType::ffOnly) const - { - const auto &stokesContext = - this->couplingManager().stokesCouplingContext(element, scvf); - const auto &stokesVolVars = stokesElemVolVars[scvf.insideScvIdx()]; - const auto &darcyVolVars = stokesContext.volVars; - - const Scalar velocity = stokesElemFaceVars[scvf].velocitySelf(); - const bool insideIsUpstream = sign(velocity) == scvf.directionSign(); - - return energyFlux_(stokesIdx, darcyIdx, fvGeometry, - stokesContext.fvGeometry, scvf, stokesVolVars, - darcyVolVars, velocity * scvf.directionSign(), - insideIsUpstream, diffCoeffAvgType); - } - -private: - /*! - * \brief Evaluate the mole/mass flux across the interface. - */ - Scalar massFlux_(const Scalar velocity, - const Scalar insideDensity, - const Scalar outSideDensity, - bool insideIsUpstream) const - { - return this->advectiveFlux(insideDensity, outSideDensity, velocity, - insideIsUpstream); - } - - /*! - * \brief Evaluate the energy flux across the interface. - */ - template = 0> - Scalar energyFlux_( - Dune::index_constant domainI, - Dune::index_constant domainJ, - const FVElementGeometry &insideFvGeometry, - const FVElementGeometry &outsideFvGeometry, - const SubControlVolumeFace &scvf, - const VolumeVariables &insideVolVars, - const VolumeVariables &outsideVolVars, - const Scalar velocity, - const bool insideIsUpstream, - const DiffusionCoefficientAveragingType diffCoeffAvgType) const - { - Scalar flux(0.0); - - const auto &insideScv = (*scvs(insideFvGeometry).begin()); - const auto &outsideScv = (*scvs(outsideFvGeometry).begin()); - - // convective fluxes - const Scalar insideTerm = - insideVolVars.density(couplingPhaseIdx(domainI)) * - insideVolVars.enthalpy(couplingPhaseIdx(domainI)); - const Scalar outsideTerm = - outsideVolVars.density(couplingPhaseIdx(domainJ)) * - outsideVolVars.enthalpy(couplingPhaseIdx(domainJ)); - - flux += this->advectiveFlux(insideTerm, outsideTerm, velocity, - insideIsUpstream); - - flux += this->conductiveEnergyFlux_(domainI, domainJ, insideFvGeometry, - outsideFvGeometry, scvf, insideScv, - outsideScv, insideVolVars, - outsideVolVars, diffCoeffAvgType); - - return flux; - } -}; - -/*! - * \ingroup StokesDarcyCoupling - * \brief Coupling data specialization for compositional models. - */ -template -class StokesDarcyCouplingDataImplementation - : public StokesDarcyCouplingDataImplementationBase -{ - using ParentType = - StokesDarcyCouplingDataImplementationBase; - using Scalar = typename MDTraits::Scalar; - static constexpr auto stokesIdx = CouplingManager::stokesIdx; - static constexpr auto darcyIdx = CouplingManager::darcyIdx; - static constexpr auto stokesFaceIdx = CouplingManager::stokesFaceIdx; - static constexpr auto stokesCellCenterIdx = - CouplingManager::stokesCellCenterIdx; - - // the sub domain type tags - template - using SubDomainTypeTag = typename MDTraits::template SubDomain::TypeTag; - - template - using GridGeometry = - GetPropType, Properties::GridGeometry>; - template - using Element = - typename GridGeometry::GridView::template Codim<0>::Entity; - template - using FVElementGeometry = typename GridGeometry::LocalView; - template - using SubControlVolumeFace = - typename FVElementGeometry::SubControlVolumeFace; - template - using SubControlVolume = - typename GridGeometry::LocalView::SubControlVolume; - template - using Indices = typename GetPropType, - Properties::ModelTraits>::Indices; - template - using ElementVolumeVariables = - typename GetPropType, - Properties::GridVolumeVariables>::LocalView; - template - using ElementFaceVariables = - typename GetPropType, - Properties::GridFaceVariables>::LocalView; - template - using VolumeVariables = - typename GetPropType, - Properties::GridVolumeVariables>::VolumeVariables; - template - using FluidSystem = - GetPropType, Properties::FluidSystem>; - - static constexpr auto numComponents = - GetPropType, - Properties::ModelTraits>::numFluidComponents(); - static constexpr auto replaceCompEqIdx = - GetPropType, - Properties::ModelTraits>::replaceCompEqIdx(); - static constexpr bool useMoles = - GetPropType, - Properties::ModelTraits>::useMoles(); - static constexpr auto referenceSystemFormulation = GetPropType< - SubDomainTypeTag, - Properties::MolecularDiffusionType>::referenceSystemFormulation(); - - static_assert(GetPropType, - Properties::ModelTraits>::numFluidComponents() == - numComponents, - "Both submodels must use the same number of components"); - static_assert( - getPropValue, Properties::UseMoles>() == - useMoles, - "Both submodels must either use moles or not"); - static_assert(getPropValue, - Properties::ReplaceCompEqIdx>() == - replaceCompEqIdx, - "Both submodels must use the same replaceCompEqIdx"); - static_assert(GetPropType, - Properties::MolecularDiffusionType>:: - referenceSystemFormulation() == - referenceSystemFormulation, - "Both submodels must use the same reference system " - "formulation for diffusion"); - - using NumEqVector = Dune::FieldVector; - - using DiffusionCoefficientAveragingType = - typename StokesDarcyCouplingOptions::DiffusionCoefficientAveragingType; - - static constexpr bool isFicksLaw = - IsFicksLaw, - Properties::MolecularDiffusionType>>(); - static_assert( - isFicksLaw == - IsFicksLaw, - Properties::MolecularDiffusionType>>(), - "Both submodels must use the same diffusion law."); - - using ReducedComponentVector = Dune::FieldVector; - using ReducedComponentMatrix = - Dune::FieldMatrix; - - using MolecularDiffusionType = - GetPropType, - Properties::MolecularDiffusionType>; - -public: - using ParentType::couplingCompIdx; - using ParentType::couplingPhaseIdx; - using ParentType::ParentType; - - /*! - * \brief Returns the mass flux across the coupling boundary as seen from the Darcy domain. - */ - NumEqVector massCouplingCondition( - const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &darcyElemVolVars, - const SubControlVolumeFace &scvf, - const DiffusionCoefficientAveragingType diffCoeffAvgType = - DiffusionCoefficientAveragingType::ffOnly) const - { - NumEqVector flux(0.0); - const auto &darcyContext = - this->couplingManager().darcyCouplingContext(element, scvf); - const auto &darcyVolVars = darcyElemVolVars[scvf.insideScvIdx()]; - const auto &stokesVolVars = darcyContext.volVars.value(); - const auto &outsideScv = (*scvs(darcyContext.fvGeometry).begin()); - - const Scalar velocity = - darcyContext.velocity.value() * scvf.unitOuterNormal(); - const bool insideIsUpstream = velocity > 0.0; - - return massFlux_(darcyIdx, stokesIdx, fvGeometry, scvf, darcyVolVars, - stokesVolVars, outsideScv, velocity, insideIsUpstream, - diffCoeffAvgType); - } - - /*! - * \brief Returns the mass flux across the coupling boundary as seen from the free-flow domain. - */ - NumEqVector massCouplingCondition( - const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &stokesElemVolVars, - const ElementFaceVariables &stokesElemFaceVars, - const SubControlVolumeFace &scvf, - const DiffusionCoefficientAveragingType diffCoeffAvgType = - DiffusionCoefficientAveragingType::ffOnly) const - { - NumEqVector flux(0.0); - const auto &stokesContext = - this->couplingManager().stokesCouplingContext(element, scvf); - const auto &stokesVolVars = stokesElemVolVars[scvf.insideScvIdx()]; - const auto &darcyVolVars = stokesContext.volVars; - const auto &outsideScv = (*scvs(stokesContext.fvGeometry).begin()); - - const Scalar velocity = stokesElemFaceVars[scvf].velocitySelf(); - const bool insideIsUpstream = sign(velocity) == scvf.directionSign(); - - return massFlux_(stokesIdx, darcyIdx, fvGeometry, scvf, stokesVolVars, - darcyVolVars, outsideScv, - velocity * scvf.directionSign(), insideIsUpstream, - diffCoeffAvgType); - } - - /*! - * \brief Returns the energy flux across the coupling boundary as seen from the Darcy domain. - */ - template = 0> - Scalar energyCouplingCondition( - const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &darcyElemVolVars, - const SubControlVolumeFace &scvf, - const DiffusionCoefficientAveragingType diffCoeffAvgType = - DiffusionCoefficientAveragingType::ffOnly) const - { - const auto &darcyContext = - this->couplingManager().darcyCouplingContext(element, scvf); - const auto &darcyVolVars = darcyElemVolVars[scvf.insideScvIdx()]; - const auto &stokesVolVars = darcyContext.volVars.value(); - - const Scalar velocity = - darcyContext.velocity.value() * scvf.unitOuterNormal(); - const bool insideIsUpstream = velocity > 0.0; - - return energyFlux_(darcyIdx, stokesIdx, fvGeometry, - darcyContext.fvGeometry, scvf, darcyVolVars, - stokesVolVars, velocity, insideIsUpstream, - diffCoeffAvgType); - } - - /*! - * \brief Returns the energy flux across the coupling boundary as seen from the free-flow domain. - */ - template = 0> - Scalar energyCouplingCondition( - const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &stokesElemVolVars, - const ElementFaceVariables &stokesElemFaceVars, - const SubControlVolumeFace &scvf, - const DiffusionCoefficientAveragingType diffCoeffAvgType = - DiffusionCoefficientAveragingType::ffOnly) const - { - const auto &stokesContext = - this->couplingManager().stokesCouplingContext(element, scvf); - const auto &stokesVolVars = stokesElemVolVars[scvf.insideScvIdx()]; - const auto &darcyVolVars = stokesContext.volVars; - - const Scalar velocity = stokesElemFaceVars[scvf].velocitySelf(); - const bool insideIsUpstream = sign(velocity) == scvf.directionSign(); - - return energyFlux_(stokesIdx, darcyIdx, fvGeometry, - stokesContext.fvGeometry, scvf, stokesVolVars, - darcyVolVars, velocity * scvf.directionSign(), - insideIsUpstream, diffCoeffAvgType); - } - -protected: - /*! - * \brief Evaluate the compositional mole/mass flux across the interface. - */ - template - NumEqVector massFlux_( - Dune::index_constant domainI, - Dune::index_constant domainJ, - const FVElementGeometry &insideFvGeometry, - const SubControlVolumeFace &scvf, - const VolumeVariables &insideVolVars, - const VolumeVariables &outsideVolVars, - const SubControlVolume &outsideScv, - const Scalar velocity, - const bool insideIsUpstream, - const DiffusionCoefficientAveragingType diffCoeffAvgType) const - { - NumEqVector flux(0.0); - NumEqVector diffusiveFlux(0.0); - - auto moleOrMassFraction = [&](const auto &volVars, int phaseIdx, - int compIdx) { - return useMoles ? volVars.moleFraction(phaseIdx, compIdx) - : volVars.massFraction(phaseIdx, compIdx); - }; - - auto moleOrMassDensity = [&](const auto &volVars, int phaseIdx) { - return useMoles ? volVars.molarDensity(phaseIdx) - : volVars.density(phaseIdx); - }; - - // treat the advective fluxes - auto insideTerm = [&](int compIdx) { - return moleOrMassFraction(insideVolVars, couplingPhaseIdx(domainI), - compIdx) * - moleOrMassDensity(insideVolVars, couplingPhaseIdx(domainI)); - }; - - auto outsideTerm = [&](int compIdx) { - return moleOrMassFraction(outsideVolVars, couplingPhaseIdx(domainJ), - compIdx) * - moleOrMassDensity(outsideVolVars, couplingPhaseIdx(domainJ)); - }; - - for (int compIdx = 0; compIdx < numComponents; ++compIdx) { - const int domainICompIdx = couplingCompIdx(domainI, compIdx); - const int domainJCompIdx = couplingCompIdx(domainJ, compIdx); - flux[domainICompIdx] += this->advectiveFlux( - insideTerm(domainICompIdx), outsideTerm(domainJCompIdx), - velocity, insideIsUpstream); - } - - // treat the diffusive fluxes - const auto &insideScv = insideFvGeometry.scv(scvf.insideScvIdx()); - - if (isFicksLaw) - diffusiveFlux += diffusiveMolecularFluxFicksLaw_( - domainI, domainJ, scvf, insideScv, outsideScv, insideVolVars, - outsideVolVars, diffCoeffAvgType); - else //maxwell stefan - diffusiveFlux += diffusiveMolecularFluxMaxwellStefan_( - domainI, domainJ, scvf, insideScv, outsideScv, insideVolVars, - outsideVolVars); - - //convert to correct units if necessary - if (referenceSystemFormulation == - ReferenceSystemFormulation::massAveraged && - useMoles) { - for (int compIdx = 0; compIdx < numComponents; ++compIdx) { - const int domainICompIdx = couplingCompIdx(domainI, compIdx); - diffusiveFlux[domainICompIdx] *= - 1 / FluidSystem::molarMass(domainICompIdx); - } - } - if (referenceSystemFormulation == - ReferenceSystemFormulation::molarAveraged && - !useMoles) { - for (int compIdx = 0; compIdx < numComponents; ++compIdx) { - const int domainICompIdx = couplingCompIdx(domainI, compIdx); - diffusiveFlux[domainICompIdx] *= - FluidSystem::molarMass(domainICompIdx); - } - } - - flux += diffusiveFlux; - // convert to total mass/mole balance, if set be user - if (replaceCompEqIdx < numComponents) - flux[replaceCompEqIdx] = - std::accumulate(flux.begin(), flux.end(), 0.0); - - return flux; - } - - Scalar getComponentEnthalpy(const VolumeVariables &volVars, - int phaseIdx, - int compIdx) const - { - return FluidSystem::componentEnthalpy(volVars.fluidState(), - 0, compIdx); - } - - Scalar getComponentEnthalpy(const VolumeVariables &volVars, - int phaseIdx, - int compIdx) const - { - return FluidSystem::componentEnthalpy(volVars.fluidState(), - phaseIdx, compIdx); - } - - /*! - * \brief Evaluate the diffusive mole/mass flux across the interface. - */ - template - NumEqVector diffusiveMolecularFluxMaxwellStefan_( - Dune::index_constant domainI, - Dune::index_constant domainJ, - const SubControlVolumeFace &scvfI, - const SubControlVolume &scvI, - const SubControlVolume &scvJ, - const VolumeVariables &volVarsI, - const VolumeVariables &volVarsJ) const - { - NumEqVector diffusiveFlux(0.0); - - const Scalar insideDistance = this->getDistance_(scvI, scvfI); - const Scalar outsideDistance = this->getDistance_(scvJ, scvfI); - - ReducedComponentVector moleFracInside(0.0); - ReducedComponentVector moleFracOutside(0.0); - ReducedComponentVector reducedFlux(0.0); - ReducedComponentMatrix reducedDiffusionMatrixInside(0.0); - ReducedComponentMatrix reducedDiffusionMatrixOutside(0.0); - - //calculate the mole fraction vectors - for (int compIdx = 0; compIdx < numComponents - 1; compIdx++) { - const int domainICompIdx = couplingCompIdx(domainI, compIdx); - const int domainJCompIdx = couplingCompIdx(domainJ, compIdx); - - assert(FluidSystem::componentName(domainICompIdx) == - FluidSystem::componentName(domainJCompIdx)); - - //calculate x_inside - const Scalar xInside = volVarsI.moleFraction( - couplingPhaseIdx(domainI), domainICompIdx); - //calculate outside molefraction with the respective transmissibility - const Scalar xOutside = volVarsJ.moleFraction( - couplingPhaseIdx(domainJ), domainJCompIdx); - moleFracInside[domainICompIdx] = xInside; - moleFracOutside[domainICompIdx] = xOutside; - } - - //now we have to do the tpfa: J_i = -J_j which leads to: J_i = -rho_i Bi^-1 omegai(x*-xi) with x* = (omegai rho_i Bi^-1 + omegaj rho_j Bj^-1)^-1 (xi omegai rho_i Bi^-1 + xj omegaj rho_j Bj^-1) with i inside and j outside. - - //first set up the matrices containing the binary diffusion coefficients and mole fractions - - //inside matrix. KIdx and LIdx are the indices for the k and l-th component, N for the n-th component - for (int compKIdx = 0; compKIdx < numComponents - 1; compKIdx++) { - const int domainICompKIdx = couplingCompIdx(domainI, compKIdx); - const Scalar xk = volVarsI.moleFraction(couplingPhaseIdx(domainI), - domainICompKIdx); - const Scalar avgMolarMass = - volVarsI.averageMolarMass(couplingPhaseIdx(domainI)); - const Scalar Mn = FluidSystem::molarMass(numComponents - 1); - const Scalar tkn = volVarsI.effectiveDiffusionCoefficient( - couplingPhaseIdx(domainI), domainICompKIdx, - couplingCompIdx(domainI, numComponents - 1)); - - // set the entries of the diffusion matrix of the diagonal - reducedDiffusionMatrixInside[domainICompKIdx][domainICompKIdx] += - xk * avgMolarMass / (tkn * Mn); - - for (int compLIdx = 0; compLIdx < numComponents; compLIdx++) { - const int domainICompLIdx = couplingCompIdx(domainI, compLIdx); - - // we don't want to calculate e.g. water in water diffusion - if (domainICompKIdx == domainICompLIdx) - continue; - - const Scalar xl = volVarsI.moleFraction( - couplingPhaseIdx(domainI), domainICompLIdx); - const Scalar Mk = FluidSystem::molarMass(domainICompKIdx); - const Scalar Ml = FluidSystem::molarMass(domainICompLIdx); - const Scalar tkl = volVarsI.effectiveDiffusionCoefficient( - couplingPhaseIdx(domainI), domainICompKIdx, - domainICompLIdx); - reducedDiffusionMatrixInside[domainICompKIdx] - [domainICompKIdx] += - xl * avgMolarMass / (tkl * Mk); - reducedDiffusionMatrixInside[domainICompKIdx] - [domainICompLIdx] += - xk * - (avgMolarMass / (tkn * Mn) - avgMolarMass / (tkl * Ml)); - } - } - //outside matrix - for (int compKIdx = 0; compKIdx < numComponents - 1; compKIdx++) { - const int domainJCompKIdx = couplingCompIdx(domainJ, compKIdx); - const int domainICompKIdx = couplingCompIdx(domainI, compKIdx); - - const Scalar xk = volVarsJ.moleFraction(couplingPhaseIdx(domainJ), - domainJCompKIdx); - const Scalar avgMolarMass = - volVarsJ.averageMolarMass(couplingPhaseIdx(domainJ)); - const Scalar Mn = FluidSystem::molarMass(numComponents - 1); - const Scalar tkn = volVarsJ.effectiveDiffusionCoefficient( - couplingPhaseIdx(domainJ), domainJCompKIdx, - couplingCompIdx(domainJ, numComponents - 1)); - - // set the entries of the diffusion matrix of the diagonal - reducedDiffusionMatrixOutside[domainICompKIdx][domainICompKIdx] += - xk * avgMolarMass / (tkn * Mn); - - for (int compLIdx = 0; compLIdx < numComponents; compLIdx++) { - const int domainJCompLIdx = couplingCompIdx(domainJ, compLIdx); - const int domainICompLIdx = couplingCompIdx(domainI, compLIdx); - - // we don't want to calculate e.g. water in water diffusion - if (domainJCompLIdx == domainJCompKIdx) - continue; - - const Scalar xl = volVarsJ.moleFraction( - couplingPhaseIdx(domainJ), domainJCompLIdx); - const Scalar Mk = FluidSystem::molarMass(domainJCompKIdx); - const Scalar Ml = FluidSystem::molarMass(domainJCompLIdx); - const Scalar tkl = volVarsJ.effectiveDiffusionCoefficient( - couplingPhaseIdx(domainJ), domainJCompKIdx, - domainJCompLIdx); - reducedDiffusionMatrixOutside[domainICompKIdx] - [domainICompKIdx] += - xl * avgMolarMass / (tkl * Mk); - reducedDiffusionMatrixOutside[domainICompKIdx] - [domainICompLIdx] += - xk * - (avgMolarMass / (tkn * Mn) - avgMolarMass / (tkl * Ml)); - } - } - - const Scalar omegai = 1 / insideDistance; - const Scalar omegaj = 1 / outsideDistance; - - reducedDiffusionMatrixInside.invert(); - reducedDiffusionMatrixInside *= - omegai * volVarsI.density(couplingPhaseIdx(domainI)); - reducedDiffusionMatrixOutside.invert(); - reducedDiffusionMatrixOutside *= - omegaj * volVarsJ.density(couplingPhaseIdx(domainJ)); - - //in the helpervector we store the values for x* - ReducedComponentVector helperVector(0.0); - ReducedComponentVector gradientVectori(0.0); - ReducedComponentVector gradientVectorj(0.0); - - reducedDiffusionMatrixInside.mv(moleFracInside, gradientVectori); - reducedDiffusionMatrixOutside.mv(moleFracOutside, gradientVectorj); - - auto gradientVectorij = (gradientVectori + gradientVectorj); - - //add the two matrixes to each other - reducedDiffusionMatrixOutside += reducedDiffusionMatrixInside; - - reducedDiffusionMatrixOutside.solve(helperVector, gradientVectorij); - - //Bi^-1 omegai rho_i (x*-xi). As we previously multiplied rho_i and omega_i wit the insidematrix, this does not need to be done again - helperVector -= moleFracInside; - reducedDiffusionMatrixInside.mv(helperVector, reducedFlux); - - reducedFlux *= -1; - - for (int compIdx = 0; compIdx < numComponents - 1; compIdx++) { - const int domainICompIdx = couplingCompIdx(domainI, compIdx); - diffusiveFlux[domainICompIdx] = reducedFlux[domainICompIdx]; - diffusiveFlux[couplingCompIdx(domainI, numComponents - 1)] -= - reducedFlux[domainICompIdx]; - } - return diffusiveFlux; - } - - template - NumEqVector diffusiveMolecularFluxFicksLaw_( - Dune::index_constant domainI, - Dune::index_constant domainJ, - const SubControlVolumeFace &scvfI, - const SubControlVolume &scvI, - const SubControlVolume &scvJ, - const VolumeVariables &volVarsI, - const VolumeVariables &volVarsJ, - const DiffusionCoefficientAveragingType diffCoeffAvgType) const - { - NumEqVector diffusiveFlux(0.0); - - const Scalar rhoInside = massOrMolarDensity( - volVarsI, referenceSystemFormulation, couplingPhaseIdx(domainI)); - const Scalar rhoOutside = massOrMolarDensity( - volVarsJ, referenceSystemFormulation, couplingPhaseIdx(domainJ)); - const Scalar avgDensity = 0.5 * rhoInside + 0.5 * rhoOutside; - - const Scalar insideDistance = this->getDistance_(scvI, scvfI); - const Scalar outsideDistance = this->getDistance_(scvJ, scvfI); - - for (int compIdx = 1; compIdx < numComponents; ++compIdx) { - const int domainIMainCompIdx = couplingPhaseIdx(domainI); - const int domainJMainCompIdx = couplingPhaseIdx(domainJ); - const int domainICompIdx = couplingCompIdx(domainI, compIdx); - const int domainJCompIdx = couplingCompIdx(domainJ, compIdx); - - assert(FluidSystem::componentName(domainICompIdx) == - FluidSystem::componentName(domainJCompIdx)); - - const Scalar massOrMoleFractionInside = - massOrMoleFraction(volVarsI, referenceSystemFormulation, - couplingPhaseIdx(domainI), domainICompIdx); - const Scalar massOrMoleFractionOutside = - massOrMoleFraction(volVarsJ, referenceSystemFormulation, - couplingPhaseIdx(domainJ), domainJCompIdx); - - const Scalar deltaMassOrMoleFrac = - massOrMoleFractionOutside - massOrMoleFractionInside; - const Scalar tij = this->transmissibility_( - domainI, domainJ, insideDistance, outsideDistance, - volVarsI.effectiveDiffusionCoefficient( - couplingPhaseIdx(domainI), domainIMainCompIdx, - domainICompIdx), - volVarsJ.effectiveDiffusionCoefficient( - couplingPhaseIdx(domainJ), domainJMainCompIdx, - domainJCompIdx), - diffCoeffAvgType); - diffusiveFlux[domainICompIdx] += - -avgDensity * tij * deltaMassOrMoleFrac; - } - - const Scalar cumulativeFlux = - std::accumulate(diffusiveFlux.begin(), diffusiveFlux.end(), 0.0); - diffusiveFlux[couplingCompIdx(domainI, 0)] = -cumulativeFlux; - - return diffusiveFlux; - } - - /*! - * \brief Evaluate the energy flux across the interface. - */ - template = 0> - Scalar energyFlux_( - Dune::index_constant domainI, - Dune::index_constant domainJ, - const FVElementGeometry &insideFvGeometry, - const FVElementGeometry &outsideFvGeometry, - const SubControlVolumeFace &scvf, - const VolumeVariables &insideVolVars, - const VolumeVariables &outsideVolVars, - const Scalar velocity, - const bool insideIsUpstream, - const DiffusionCoefficientAveragingType diffCoeffAvgType) const - { - Scalar flux(0.0); - - const auto &insideScv = (*scvs(insideFvGeometry).begin()); - const auto &outsideScv = (*scvs(outsideFvGeometry).begin()); - - // convective fluxes - const Scalar insideTerm = - insideVolVars.density(couplingPhaseIdx(domainI)) * - insideVolVars.enthalpy(couplingPhaseIdx(domainI)); - const Scalar outsideTerm = - outsideVolVars.density(couplingPhaseIdx(domainJ)) * - outsideVolVars.enthalpy(couplingPhaseIdx(domainJ)); - - flux += this->advectiveFlux(insideTerm, outsideTerm, velocity, - insideIsUpstream); - - flux += this->conductiveEnergyFlux_(domainI, domainJ, insideFvGeometry, - outsideFvGeometry, scvf, insideScv, - outsideScv, insideVolVars, - outsideVolVars, diffCoeffAvgType); - - auto diffusiveFlux = - isFicksLaw ? diffusiveMolecularFluxFicksLaw_( - domainI, domainJ, scvf, insideScv, outsideScv, - insideVolVars, outsideVolVars, diffCoeffAvgType) - : diffusiveMolecularFluxMaxwellStefan_( - domainI, domainJ, scvf, insideScv, outsideScv, - insideVolVars, outsideVolVars); - - for (int compIdx = 0; compIdx < diffusiveFlux.size(); ++compIdx) { - const int domainICompIdx = couplingCompIdx(domainI, compIdx); - const int domainJCompIdx = couplingCompIdx(domainJ, compIdx); - - const bool insideDiffFluxIsUpstream = - diffusiveFlux[domainICompIdx] > 0; - const Scalar componentEnthalpy = - insideDiffFluxIsUpstream - ? getComponentEnthalpy(insideVolVars, - couplingPhaseIdx(domainI), - domainICompIdx) - : getComponentEnthalpy(outsideVolVars, - couplingPhaseIdx(domainJ), - domainJCompIdx); - - if (referenceSystemFormulation == - ReferenceSystemFormulation::massAveraged) - flux += diffusiveFlux[domainICompIdx] * componentEnthalpy; - else - flux += diffusiveFlux[domainICompIdx] * - FluidSystem::molarMass(domainICompIdx) * - componentEnthalpy; - } - - return flux; - } -}; - -} // end namespace Dumux - -#endif diff --git a/dumux-precice/dumux-addon/multidomain/boundary/stokesdarcy/couplingmanager.hh b/dumux-precice/dumux-addon/multidomain/boundary/stokesdarcy/couplingmanager.hh deleted file mode 100644 index 7344f36..0000000 --- a/dumux-precice/dumux-addon/multidomain/boundary/stokesdarcy/couplingmanager.hh +++ /dev/null @@ -1,981 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup StokesDarcyCoupling - * \copydoc Dumux::StokesDarcyCouplingManager - */ - -#ifndef DUMUX_STOKES_DARCY_COUPLINGMANAGER_HH -#define DUMUX_STOKES_DARCY_COUPLINGMANAGER_HH - -#include -#include -#include - -#include -#include -#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 4 -#include -#endif -#include -#include -#include - -#include "couplingdata.hh" -#include "couplingmapper.hh" - -namespace Dumux -{ -/*! - * \ingroup StokesDarcyCoupling - * \brief Coupling manager for Stokes and Darcy domains with equal dimension. - */ -template -class StokesDarcyCouplingManager : public StaggeredCouplingManager -{ - using Scalar = typename MDTraits::Scalar; - using ParentType = StaggeredCouplingManager; - -public: - static constexpr auto stokesFaceIdx = - typename MDTraits::template SubDomain<0>::Index(); - static constexpr auto stokesCellCenterIdx = - typename MDTraits::template SubDomain<1>::Index(); - static constexpr auto stokesIdx = stokesFaceIdx; - static constexpr auto darcyIdx = - typename MDTraits::template SubDomain<2>::Index(); - -private: - using SolutionVector = typename MDTraits::SolutionVector; - - // obtain the type tags of the sub problems - using StokesTypeTag = typename MDTraits::template SubDomain<0>::TypeTag; - using DarcyTypeTag = typename MDTraits::template SubDomain<2>::TypeTag; - - using CouplingStencils = - std::unordered_map>; - using CouplingStencil = CouplingStencils::mapped_type; - - // the sub domain type tags - template - using SubDomainTypeTag = typename MDTraits::template SubDomain::TypeTag; - - static constexpr bool isCompositional = - GetPropType, - Properties::ModelTraits>::numFluidComponents() > 1; - - template - using GridView = typename GetPropType, - Properties::GridGeometry>::GridView; - template - using Problem = GetPropType, Properties::Problem>; - template - using PrimaryVariables = - typename MDTraits::template SubDomain::PrimaryVariables; -#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 4 - template - using NumEqVector = Dumux::NumEqVector>; -#else - template - using NumEqVector = - GetPropType, Properties::NumEqVector>; -#endif - template - using ElementVolumeVariables = - typename GetPropType, - Properties::GridVolumeVariables>::LocalView; - template - using GridVolumeVariables = - GetPropType, Properties::GridVolumeVariables>; - template - using VolumeVariables = - typename GetPropType, - Properties::GridVolumeVariables>::VolumeVariables; - template - using GridGeometry = - GetPropType, Properties::GridGeometry>; - template - using FVElementGeometry = typename GridGeometry::LocalView; - template - using ElementBoundaryTypes = - GetPropType, Properties::ElementBoundaryTypes>; - template - using ElementFluxVariablesCache = - typename GetPropType, - Properties::GridFluxVariablesCache>::LocalView; - template - using Element = typename GridView::template Codim<0>::Entity; - template - using SubControlVolumeFace = - typename FVElementGeometry::SubControlVolumeFace; - template - using SubControlVolume = typename FVElementGeometry::SubControlVolume; - - template - using GridFaceVariables = - GetPropType, Properties::GridFaceVariables>; - template - using ElementFaceVariables = typename GridFaceVariables::LocalView; - template - using FaceVariables = typename ElementFaceVariables::FaceVariables; - - template - using GridVariables = - typename MDTraits::template SubDomain::GridVariables; - using GridVariablesTuple = - typename MDTraits::template TupleOfSharedPtr; - - using CellCenterSolutionVector = - GetPropType; - using VelocityVector = - typename Element::Geometry::GlobalCoordinate; - using CouplingMapper = StokesDarcyCouplingMapper; - using TimeLoop = TimeLoopBase; - - struct FreeFlowCouplingContext { - Element element; - FVElementGeometry fvGeometry; - std::size_t darcyScvfIdx; - std::size_t stokesScvfIdx; - VolumeVariables volVars; - - const auto &getDarcyScvf() const - { - return fvGeometry.scvf(darcyScvfIdx); - } - }; - - struct DarcyCouplingContext { - Element element; - FVElementGeometry fvGeometry; - std::size_t stokesScvfIdx; - std::size_t darcyScvfIdx; - - // quantities only reuqired for CouplingMode::reconstructPorousMediumPressure - std::optional velocity; - std::optional> volVars; - - // quantities only reuqired for CouplingMode::reconstructFreeFlowNormalStress - std::optional> curElemVolVars; - std::optional> curElemFaceVars; - std::optional> prevElemVolVars; - std::optional> prevElemFaceVars; - std::optional> elemFluxVarsCache; - - const auto &getStokesScvf() const - { - return fvGeometry.scvf(stokesScvfIdx); - } - }; - -public: - enum class CouplingMode { - reconstructFreeFlowNormalStress, - reconstructPorousMediumPressure - }; - - using ParentType::couplingStencil; - using ParentType::updateCouplingContext; - using CouplingData = - StokesDarcyCouplingData>; - - //! Constructor - StokesDarcyCouplingManager( - std::shared_ptr> stokesFvGridGeometry, - std::shared_ptr> darcyFvGridGeometry) - { - } - - /*! - * \brief Methods to be accessed by main - */ - // \{ - - //! Initialize the coupling manager - void init(std::shared_ptr> stokesProblem, - std::shared_ptr> darcyProblem, - const SolutionVector &curSol) - { - couplingMode_ = CouplingMode::reconstructPorousMediumPressure; - printCouplingMode_(); - - if (Dune::FloatCmp::ne(stokesProblem->gravity(), - darcyProblem->spatialParams().gravity({}))) - DUNE_THROW(Dune::InvalidStateException, - "Both models must use the same gravity vector"); - - this->setSubProblems( - std::make_tuple(stokesProblem, stokesProblem, darcyProblem)); - this->curSol() = curSol; - couplingData_ = std::make_shared(*this, timeLoop_); - computeStencils(); - } - - //! Initialize the coupling manager - void init(std::shared_ptr> stokesProblem, - std::shared_ptr> darcyProblem, - GridVariablesTuple &&gridVariables, - const SolutionVector &curSol, - const CouplingMode couplingMode = - CouplingMode::reconstructPorousMediumPressure) - { - couplingMode_ = couplingMode; - gridVariables_ = gridVariables; - printCouplingMode_(); - - if (Dune::FloatCmp::ne(stokesProblem->gravity(), - darcyProblem->spatialParams().gravity({}))) - DUNE_THROW(Dune::InvalidStateException, - "Both models must use the same gravity vector"); - - this->setSubProblems( - std::make_tuple(stokesProblem, stokesProblem, darcyProblem)); - this->curSol() = curSol; - couplingData_ = std::make_shared(*this, timeLoop_); - computeStencils(); - } - - //! Initialize the coupling manager - void init(std::shared_ptr> stokesProblem, - std::shared_ptr> darcyProblem, - GridVariablesTuple &&gridVariables, - const SolutionVector &curSol, - const SolutionVector &prevSol, - std::shared_ptr timeLoop, - const CouplingMode couplingMode = - CouplingMode::reconstructPorousMediumPressure) - { - timeLoop_ = timeLoop; - prevSol_ = prevSol; - init(stokesProblem, darcyProblem, gridVariables, curSol, couplingMode); - } - - //! Update after the grid has changed - void update() {} - - // \} - - //! Update the solution vector before assembly - void updateSolution(const SolutionVector &curSol) - { - this->curSol() = curSol; - } - - //! Prepare the coupling stencils - void computeStencils() - { - couplingMapper_.computeCouplingMapsAndStencils( - *this, darcyToStokesCellCenterCouplingStencils_, - darcyToStokesFaceCouplingStencils_, - stokesCellCenterCouplingStencils_, stokesFaceCouplingStencils_, - couplingMode()); - - for (auto &&stencil : darcyToStokesCellCenterCouplingStencils_) - removeDuplicates_(stencil.second); - for (auto &&stencil : darcyToStokesFaceCouplingStencils_) - removeDuplicates_(stencil.second); - for (auto &&stencil : stokesCellCenterCouplingStencils_) - removeDuplicates_(stencil.second); - for (auto &&stencil : stokesFaceCouplingStencils_) - removeDuplicates_(stencil.second); - } - - /*! - * \brief Methods to be accessed by the assembly - */ - // \{ - - using ParentType::evalCouplingResidual; - - /*! - * \brief prepares all data and variables that are necessary to evaluate the residual of an Darcy element (i.e. Darcy information) - */ - template = 0> - void bindCouplingContext(Dune::index_constant domainI, - const Element &element, - const Assembler &assembler) const - { - bindCouplingContext(domainI, element); - } - - /*! - * \brief prepares all data and variables that are necessary to evaluate the residual of an Darcy element (i.e. Darcy information) - */ - template = 0> - void bindCouplingContext(Dune::index_constant domainI, - const Element &element) const - { - stokesCouplingContext_.clear(); - - const auto stokesElementIdx = - this->problem(stokesIdx).gridGeometry().elementMapper().index( - element); - boundStokesElemIdx_ = stokesElementIdx; - - // do nothing if the element is not coupled to the other domain - if (!couplingMapper_.stokesElementToDarcyElementMap().count( - stokesElementIdx)) - return; - - // prepare the coupling context - const auto &darcyIndices = - couplingMapper_.stokesElementToDarcyElementMap().at( - stokesElementIdx); - auto darcyFvGeometry = - localView(this->problem(darcyIdx).gridGeometry()); - - for (auto &&indices : darcyIndices) { - const auto &darcyElement = this->problem(darcyIdx) - .gridGeometry() - .boundingBoxTree() - .entitySet() - .entity(indices.eIdx); - darcyFvGeometry.bindElement(darcyElement); - const auto &scv = (*scvs(darcyFvGeometry).begin()); - - const auto darcyElemSol = - elementSolution(darcyElement, this->curSol()[darcyIdx], - this->problem(darcyIdx).gridGeometry()); - VolumeVariables darcyVolVars; - darcyVolVars.update(darcyElemSol, this->problem(darcyIdx), - darcyElement, scv); - - // add the context - stokesCouplingContext_.push_back( - {darcyElement, darcyFvGeometry, indices.scvfIdx, - indices.flipScvfIdx, darcyVolVars}); - } - } - - /*! - * \brief prepares all data and variables that are necessary to evaluate the residual of an Darcy element (i.e. Stokes information) - */ - template - void bindCouplingContext(Dune::index_constant domainI, - const Element &element, - const Assembler &assembler) const - { - bindCouplingContext(domainI, element); - } - - /*! - * \brief prepares all data and variables that are necessary to evaluate the residual of an Darcy element (i.e. Stokes information) - */ - void bindCouplingContext(Dune::index_constant domainI, - const Element &element) const - { - darcyCouplingContext_.clear(); - - const auto darcyElementIdx = - this->problem(darcyIdx).gridGeometry().elementMapper().index( - element); - boundDarcyElemIdx_ = darcyElementIdx; - - // do nothing if the element is not coupled to the other domain - if (!couplingMapper_.darcyElementToStokesElementMap().count( - darcyElementIdx)) - return; - - // prepare the coupling context - const auto &stokesElementIndices = - couplingMapper_.darcyElementToStokesElementMap().at( - darcyElementIdx); - auto stokesFvGeometry = - localView(this->problem(stokesIdx).gridGeometry()); - - std::optional faceVelocity; - std::optional> stokesVolVars; - std::optional> curStokesElemVolVars; - std::optional> curStokesElemFaceVars; - std::optional> prevStokesElemVolVars; - std::optional> prevStokesElemFaceVars; - std::optional> - stokesElemFluxVarsCache; - - if (couplingMode() == CouplingMode::reconstructFreeFlowNormalStress) { - curStokesElemVolVars.emplace( - localView(gridVars_(stokesIdx).curGridVolVars())); - curStokesElemFaceVars.emplace( - localView(gridVars_(stokesIdx).curGridFaceVars())); - prevStokesElemVolVars.emplace( - localView(gridVars_(stokesIdx).prevGridVolVars())); - prevStokesElemFaceVars.emplace( - localView(gridVars_(stokesIdx).prevGridFaceVars())); - stokesElemFluxVarsCache.emplace( - localView(gridVars_(stokesIdx).gridFluxVarsCache())); - } - - for (auto &&indices : stokesElementIndices) { - const auto &stokesElement = this->problem(stokesIdx) - .gridGeometry() - .boundingBoxTree() - .entitySet() - .entity(indices.eIdx); - stokesFvGeometry.bind(stokesElement); - - if (couplingMode() == - CouplingMode::reconstructPorousMediumPressure) { - using PriVarsType = typename VolumeVariables< - stokesCellCenterIdx>::PrimaryVariables; - const auto &cellCenterPriVars = - this->curSol()[stokesCellCenterIdx][indices.eIdx]; - const auto elemSol = - makeElementSolutionFromCellCenterPrivars( - cellCenterPriVars); - - stokesVolVars.reset(); - stokesVolVars.emplace(); - for (const auto &scv : scvs(stokesFvGeometry)) - stokesVolVars->update(elemSol, this->problem(stokesIdx), - stokesElement, scv); - - faceVelocity.reset(); - faceVelocity.emplace(0.0); - for (const auto &scvf : scvfs(stokesFvGeometry)) { - if (scvf.index() == indices.scvfIdx) - (*faceVelocity)[scvf.directionIndex()] = - this->curSol()[stokesFaceIdx][scvf.dofIndex()]; - } - } else // CouplingMode::reconstructFreeFlowNormalStress - { - curStokesElemVolVars->bind(stokesElement, stokesFvGeometry, - this->curSol()[stokesCellCenterIdx]); - curStokesElemFaceVars->bind(stokesElement, stokesFvGeometry, - this->curSol()[stokesFaceIdx]); - stokesElemFluxVarsCache->bind(stokesElement, stokesFvGeometry, - *curStokesElemVolVars); - } - - // add the context - darcyCouplingContext_.push_back( - {stokesElement, stokesFvGeometry, indices.scvfIdx, - indices.flipScvfIdx, faceVelocity, stokesVolVars, - curStokesElemVolVars, curStokesElemFaceVars, - prevStokesElemVolVars, prevStokesElemFaceVars, - stokesElemFluxVarsCache}); - } - } - - /*! - * \brief Update the coupling context for the Darcy residual w.r.t. Darcy DOFs - */ - template - void updateCouplingContext(Dune::index_constant domainI, - const LocalAssemblerI &localAssemblerI, - Dune::index_constant domainJ, - std::size_t dofIdxGlobalJ, - const PrimaryVariables &priVarsJ, - int pvIdxJ) - { - this->curSol()[domainJ][dofIdxGlobalJ][pvIdxJ] = priVarsJ[pvIdxJ]; - } - - /*! - * \brief Update the coupling context for the Darcy residual w.r.t. the Stokes cell-center DOFs (DarcyToCC) - */ - template - void updateCouplingContext( - Dune::index_constant domainI, - const LocalAssemblerI &localAssemblerI, - Dune::index_constant domainJ, - const std::size_t dofIdxGlobalJ, - const PrimaryVariables &priVars, - int pvIdxJ) - { - this->curSol()[domainJ][dofIdxGlobalJ] = priVars; - - for (auto &data : darcyCouplingContext_) { - const auto stokesElemIdx = - this->problem(stokesIdx).gridGeometry().elementMapper().index( - data.element); - - if (stokesElemIdx != dofIdxGlobalJ) - continue; - - using PriVarsType = - typename VolumeVariables::PrimaryVariables; - const auto elemSol = - makeElementSolutionFromCellCenterPrivars(priVars); - - if (couplingMode() == - CouplingMode::reconstructPorousMediumPressure) { - for (const auto &scv : scvs(data.fvGeometry)) - data.volVars->update(elemSol, this->problem(stokesIdx), - data.element, scv); - } else // CouplingMode::reconstructFreeFlowNormalStress - { - for (const auto &scv : scvs(data.fvGeometry)) - getVolVarAccess_(domainJ, - gridVars_(stokesIdx).curGridVolVars(), - data.curElemVolVars.value(), scv) - .update(elemSol, this->problem(stokesIdx), data.element, - scv); - } - } - } - - /*! - * \brief Update the coupling context for the Darcy residual w.r.t. the Stokes face DOFs (DarcyToFace) - */ - template - void updateCouplingContext(Dune::index_constant domainI, - const LocalAssemblerI &localAssemblerI, - Dune::index_constant domainJ, - const std::size_t dofIdxGlobalJ, - const PrimaryVariables &priVars, - int pvIdxJ) - { - this->curSol()[domainJ][dofIdxGlobalJ] = priVars; - const auto &stokesProblem = this->problem(stokesIdx); - - for (auto &data : darcyCouplingContext_) { - if (couplingMode() == CouplingMode::reconstructPorousMediumPressure) - (*data.velocity)[data.getStokesScvf().directionIndex()] = - priVars; - else // CouplingMode::reconstructFreeFlowNormalStress - { - using FaceSolution = - GetPropType, - Properties::StaggeredFaceSolution>; - FaceSolution faceSol(data.getStokesScvf(), - this->curSol()[domainJ], - stokesProblem.gridGeometry()); - auto &faceVars = getFaceVarAccess_( - domainJ, gridVars_(stokesIdx).curGridFaceVars(), - data.curElemFaceVars.value(), data.getStokesScvf()); - faceVars.update(faceSol, stokesProblem, data.element, - data.fvGeometry, data.getStokesScvf()); - } - } - } - - /*! - * \brief Update the coupling context for the Stokes cc residual w.r.t. the Darcy DOFs (FaceToDarcy) - */ - template = 0> - void updateCouplingContext(Dune::index_constant domainI, - const LocalAssemblerI &localAssemblerI, - Dune::index_constant domainJ, - const std::size_t dofIdxGlobalJ, - const PrimaryVariables &priVars, - int pvIdxJ) - { - this->curSol()[domainJ][dofIdxGlobalJ] = priVars; - - for (auto &data : stokesCouplingContext_) { - const auto darcyElemIdx = - this->problem(darcyIdx).gridGeometry().elementMapper().index( - data.element); - - if (darcyElemIdx != dofIdxGlobalJ) - continue; - - const auto darcyElemSol = - elementSolution(data.element, this->curSol()[darcyIdx], - this->problem(darcyIdx).gridGeometry()); - - for (const auto &scv : scvs(data.fvGeometry)) - data.volVars.update(darcyElemSol, this->problem(darcyIdx), - data.element, scv); - } - } - - //! Pull up the base class' default implementation - using ParentType::updateCoupledVariables; - - /*! - * \brief Update the porous medium flow domain volume variables and flux variables cache - * after the coupling context has been updated. This has to be done because the porous medium - boundary volVars require the updated Dirichlet pressure variable from the free-flow domain. - */ - template - void updateCoupledVariables(Dune::index_constant domainI, - const LocalAssembler &localAssembler, - ElementVolumeVariables &elemVolVars, - UpdatableFluxVarCache &elemFluxVarsCache) - { - elemVolVars.bind(localAssembler.element(), localAssembler.fvGeometry(), - this->curSol()[darcyIdx]); - - // update the transmissibilities subject to the new permeabilities - elemFluxVarsCache.update(localAssembler.element(), - localAssembler.fvGeometry(), elemVolVars); - } - - // \} - - /*! - * \brief Access the coupling data - */ - const auto &couplingData() const { return *couplingData_; } - - /*! - * \brief Access the coupling context needed for the Stokes domain - */ - const auto &stokesCouplingContext( - const Element &element, - const SubControlVolumeFace &scvf) const - { - if (stokesCouplingContext_.empty() || - boundStokesElemIdx_ != scvf.insideScvIdx()) - bindCouplingContext(stokesIdx, element); - - for (const auto &context : stokesCouplingContext_) { - if (scvf.index() == context.stokesScvfIdx) - return context; - } - - DUNE_THROW(Dune::InvalidStateException, - "No coupling context found at scvf " << scvf.center()); - } - - /*! - * \brief Access the coupling context needed for the Darcy domain - */ - const auto &darcyCouplingContext( - const Element &element, - const SubControlVolumeFace &scvf) const - { - if (darcyCouplingContext_.empty() || - boundDarcyElemIdx_ != scvf.insideScvIdx()) - bindCouplingContext(darcyIdx, element); - - for (const auto &context : darcyCouplingContext_) { - if (scvf.index() == context.darcyScvfIdx) - return context; - } - - DUNE_THROW(Dune::InvalidStateException, - "No coupling context found at scvf " << scvf.center()); - } - - /*! - * \brief The coupling stencils - */ - // \{ - - /*! - * \brief The Stokes cell center coupling stencil w.r.t. Darcy DOFs - */ - const CouplingStencil &couplingStencil( - Dune::index_constant domainI, - const Element &element, - Dune::index_constant domainJ) const - { - const auto eIdx = - this->problem(domainI).gridGeometry().elementMapper().index( - element); - if (stokesCellCenterCouplingStencils_.count(eIdx)) - return stokesCellCenterCouplingStencils_.at(eIdx); - else - return emptyStencil_; - } - - /*! - * \brief The coupling stencil of domain I, i.e. which domain J DOFs - * the given domain I element's residual depends on. - */ - template - const CouplingStencil &couplingStencil( - Dune::index_constant domainI, - const Element &element, - Dune::index_constant domainJ) const - { - return emptyStencil_; - } - - /*! - * \brief The coupling stencil of domain I, i.e. which domain J dofs - * the given domain I element's residual depends on. - */ - const CouplingStencil &couplingStencil( - Dune::index_constant domainI, - const Element &element, - Dune::index_constant domainJ) const - { - const auto eIdx = - this->problem(domainI).gridGeometry().elementMapper().index( - element); - if (darcyToStokesCellCenterCouplingStencils_.count(eIdx)) - return darcyToStokesCellCenterCouplingStencils_.at(eIdx); - else - return emptyStencil_; - } - - /*! - * \brief The coupling stencil of domain I, i.e. which domain J dofs - * the given domain I element's residual depends on. - */ - const CouplingStencil &couplingStencil( - Dune::index_constant domainI, - const Element &element, - Dune::index_constant domainJ) const - { - const auto eIdx = - this->problem(domainI).gridGeometry().elementMapper().index( - element); - if (darcyToStokesFaceCouplingStencils_.count(eIdx)) - return darcyToStokesFaceCouplingStencils_.at(eIdx); - else - return emptyStencil_; - } - - /*! - * \brief The coupling stencil of domain I, i.e. which domain J DOFs - * the given domain I element's residual depends on. - */ - template - const CouplingStencil &couplingStencil( - Dune::index_constant domainI, - const SubControlVolumeFace &scvf, - Dune::index_constant domainJ) const - { - return emptyStencil_; - } - - /*! - * \brief The coupling stencil of a Stokes face w.r.t. Darcy DOFs - */ - const CouplingStencil &couplingStencil( - Dune::index_constant domainI, - const SubControlVolumeFace &scvf, - Dune::index_constant domainJ) const - { - const auto faceDofIdx = scvf.dofIndex(); - if (stokesFaceCouplingStencils_.count(faceDofIdx)) - return stokesFaceCouplingStencils_.at(faceDofIdx); - else - return emptyStencil_; - } - - // \} - - /*! - * \brief There are no additional dof dependencies - */ - template - const std::vector &getAdditionalDofDependencies( - IdType id, - std::size_t stokesElementIdx) const - { - return emptyStencil_; - } - - /*! - * \brief There are no additional dof dependencies - */ - template - const std::vector &getAdditionalDofDependenciesInverse( - IdType id, - std::size_t darcyElementIdx) const - { - return emptyStencil_; - } - - /*! - * \brief Returns whether a given free flow scvf is coupled to the other domain - */ - bool isCoupledEntity(Dune::index_constant, - const SubControlVolumeFace &scvf) const - { - return stokesFaceCouplingStencils_.count(scvf.dofIndex()); - } - - /*! - * \brief Returns whether a given free flow scvf is coupled to the other domain - */ - bool isCoupledEntity(Dune::index_constant, - const SubControlVolumeFace &scvf) const - { - return couplingMapper_.isCoupledDarcyScvf(scvf.index()); - } - - /*! - * \brief Returns whether the pointer to the gridVariables was set sucessfully. - */ - bool gridVariablesAvailable() const - { - bool result = true; - using namespace Dune::Hybrid; - forEach( - std::make_index_sequence>(), - [&](const auto domainId) { - if (!std::get(gridVariables_)) - result = false; - }); - return result; - } - - /*! - * \brief Returns the coupling mode. - */ - CouplingMode couplingMode() const { return couplingMode_; } - -protected: - //! Return a reference to an empty stencil - std::vector &emptyStencil() { return emptyStencil_; } - - void removeDuplicates_(std::vector &stencil) - { - std::sort(stencil.begin(), stencil.end()); - stencil.erase(std::unique(stencil.begin(), stencil.end()), - stencil.end()); - } - -private: - /*! - * \brief Return a reference to the grid variables of a sub problem - * \param domainIdx The domain index - */ - template - const GridVariables &gridVars_(Dune::index_constant domainIdx) const - { - if (std::get(gridVariables_)) - return *std::get(gridVariables_); - else - DUNE_THROW(Dune::InvalidStateException, - "The gridVariables pointer was not set. Use " - "setGridVariables() before calling this function"); - } - - /*! - * \brief Return a reference to the grid variables of a sub problem - * \param domainIdx The domain index - */ - template - GridVariables &gridVars_(Dune::index_constant domainIdx) - { - if (std::get(gridVariables_)) - return *std::get(gridVariables_); - else - DUNE_THROW(Dune::InvalidStateException, - "The gridVariables pointer was not set. Use " - "setGridVariables() before calling this function"); - } - - template, - Properties::EnableGridVolumeVariablesCache>(), - int> = 0> - VolumeVariables &getVolVarAccess_(Dune::index_constant domainIdx, - GridVolumeVariables &gridVolVars, - ElementVolumeVariables &elemVolVars, - const SubControlVolume &scv) - { - return elemVolVars[scv]; - } - - template, - Properties::EnableGridVolumeVariablesCache>(), - int> = 0> - VolumeVariables &getVolVarAccess_(Dune::index_constant domainIdx, - GridVolumeVariables &gridVolVars, - ElementVolumeVariables &elemVolVars, - const SubControlVolume &scv) - { - return gridVolVars.volVars(scv); - } - - template, - Properties::EnableGridFaceVariablesCache>(), - int> = 0> - FaceVariables &getFaceVarAccess_(Dune::index_constant domainIdx, - GridFaceVariables &gridFaceVariables, - ElementFaceVariables &elemFaceVars, - const SubControlVolumeFace &scvf) - { - return elemFaceVars[scvf]; - } - - template, - Properties::EnableGridFaceVariablesCache>(), - int> = 0> - FaceVariables &getFaceVarAccess_(Dune::index_constant domainIdx, - GridFaceVariables &gridFaceVariables, - ElementFaceVariables &elemFaceVars, - const SubControlVolumeFace &scvf) - { - return gridFaceVariables.faceVars(scvf.index()); - } - - void printCouplingMode_() const - { - const std::string mode = - couplingMode() == CouplingMode::reconstructPorousMediumPressure - ? "porous medium pressure" - : "free-flow normal stress"; - std::cout << "\n **** Coupling mode: reconstruct " << mode << " ****\n" - << std::endl; - } - - std::vector isCoupledDarcyDof_; - std::shared_ptr couplingData_; - - std::unordered_map> - stokesCellCenterCouplingStencils_; - std::unordered_map> - stokesFaceCouplingStencils_; - std::unordered_map> - darcyToStokesCellCenterCouplingStencils_; - std::unordered_map> - darcyToStokesFaceCouplingStencils_; - std::vector emptyStencil_; - - CouplingMode couplingMode_; - - // only for transient problems - std::shared_ptr timeLoop_ = nullptr; - const SolutionVector *prevSol_ = nullptr; - - //////////////////////////////////////////////////////////////////////////// - //! The coupling context - //////////////////////////////////////////////////////////////////////////// - mutable std::vector stokesCouplingContext_; - mutable std::vector darcyCouplingContext_; - - mutable std::size_t boundStokesElemIdx_; - mutable std::size_t boundDarcyElemIdx_; - - /*! - * \brief A tuple of std::shared_ptrs to the grid variables of the sub problems - */ - GridVariablesTuple gridVariables_; - - CouplingMapper couplingMapper_; -}; - -} // end namespace Dumux - -#endif diff --git a/dumux-precice/dumux-addon/multidomain/boundary/stokesdarcy/couplingmapper.hh b/dumux-precice/dumux-addon/multidomain/boundary/stokesdarcy/couplingmapper.hh deleted file mode 100644 index 716a231..0000000 --- a/dumux-precice/dumux-addon/multidomain/boundary/stokesdarcy/couplingmapper.hh +++ /dev/null @@ -1,206 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup StokesDarcyCoupling - * \copydoc Dumux::StokesDarcyCouplingMapper - */ - -#ifndef DUMUX_STOKES_DARCY_COUPLINGMAPPER_HH -#define DUMUX_STOKES_DARCY_COUPLINGMAPPER_HH - -#include -#include -#include - -#include -#include - -namespace Dumux -{ -/*! - * \ingroup StokesDarcyCoupling - * \brief Coupling mapper for Stokes and Darcy domains with equal dimension. - */ -class StokesDarcyCouplingMapper -{ - struct ElementMapInfo { - std::size_t eIdx; - std::size_t scvfIdx; - std::size_t flipScvfIdx; - }; - -public: - /*! - * \brief Main update routine - */ - template - void computeCouplingMapsAndStencils( - const CouplingManager &couplingManager, - Stencils &darcyToStokesCellCenterStencils, - Stencils &darcyToStokesFaceStencils, - Stencils &stokesCellCenterToDarcyStencils, - Stencils &stokesFaceToDarcyStencils, - const typename CouplingManager::CouplingMode couplingMode = - CouplingManager::CouplingMode::reconstructPorousMediumPressure) - { - const auto &stokesFvGridGeometry = - couplingManager.problem(CouplingManager::stokesIdx).gridGeometry(); - const auto &darcyFvGridGeometry = - couplingManager.problem(CouplingManager::darcyIdx).gridGeometry(); - - static_assert( - std::decay_t::discMethod == - DiscretizationMethod::staggered, - "The free flow domain must use the staggered discretization"); - - static_assert(std::decay_t::discMethod == - DiscretizationMethod::cctpfa, - "The Darcy domain must use the CCTpfa discretization"); - - isCoupledDarcyScvf_.resize(darcyFvGridGeometry.numScvf(), false); - - auto darcyFvGeometry = localView(darcyFvGridGeometry); - auto stokesFvGeometry = localView(stokesFvGridGeometry); - const auto &stokesGridView = stokesFvGridGeometry.gridView(); - - for (const auto &stokesElement : elements(stokesGridView)) { - stokesFvGeometry.bindElement(stokesElement); - - for (const auto &scvf : scvfs(stokesFvGeometry)) { - // skip the DOF if it is not on the boundary - if (!scvf.boundary()) - continue; - - // get element intersecting with the scvf center - // for robustness, add epsilon in unit outer normal direction - const auto eps = - (scvf.center() - stokesElement.geometry().center()) - .two_norm() * - 1e-8; - auto globalPos = scvf.center(); - globalPos.axpy(eps, scvf.unitOuterNormal()); - const auto darcyElementIdx = intersectingEntities( - globalPos, darcyFvGridGeometry.boundingBoxTree()); - - // skip if no intersection was found - if (darcyElementIdx.empty()) - continue; - - // sanity check - if (darcyElementIdx.size() > 1) - DUNE_THROW(Dune::InvalidStateException, - "Stokes face dof should only intersect with one " - "Darcy element"); - - const auto stokesElementIdx = - stokesFvGridGeometry.elementMapper().index(stokesElement); - - const auto darcyDofIdx = darcyElementIdx[0]; - - stokesFaceToDarcyStencils[scvf.dofIndex()].push_back( - darcyDofIdx); - stokesCellCenterToDarcyStencils[stokesElementIdx].push_back( - darcyDofIdx); - - darcyToStokesFaceStencils[darcyElementIdx[0]].push_back( - scvf.dofIndex()); - darcyToStokesCellCenterStencils[darcyElementIdx[0]].push_back( - stokesElementIdx); - - if (couplingMode == CouplingManager::CouplingMode:: - reconstructFreeFlowNormalStress) { - // get the list of face dofs that have an influence on the resdiual of the current face - const auto &connectivityMap = - stokesFvGridGeometry.connectivityMap(); - static constexpr auto faceIdx = - std::decay_t::faceIdx(); - static constexpr auto cellCenterIdx = std::decay_t::cellCenterIdx(); - - for (const auto &globalJ : - connectivityMap(faceIdx, faceIdx, scvf.index())) - darcyToStokesFaceStencils[darcyElementIdx[0]].push_back( - globalJ); - - for (const auto &globalJ : - connectivityMap(faceIdx, cellCenterIdx, scvf.index())) - darcyToStokesCellCenterStencils[darcyElementIdx[0]] - .push_back(globalJ); - } - - const auto &darcyElement = - darcyFvGridGeometry.element(darcyElementIdx[0]); - darcyFvGeometry.bindElement(darcyElement); - - // find the corresponding Darcy sub control volume face - for (const auto &darcyScvf : scvfs(darcyFvGeometry)) { - const auto distance = - (darcyScvf.center() - scvf.center()).two_norm(); - - if (distance < eps) { - isCoupledDarcyScvf_[darcyScvf.index()] = true; - darcyElementToStokesElementMap_[darcyElementIdx[0]] - .push_back({stokesElementIdx, scvf.index(), - darcyScvf.index()}); - stokesElementToDarcyElementMap_[stokesElementIdx] - .push_back({darcyElementIdx[0], darcyScvf.index(), - scvf.index()}); - } - } - } - } - } - - /*! - * \brief Returns whether a Darcy scvf is coupled to the other domain - */ - bool isCoupledDarcyScvf(std::size_t darcyScvfIdx) const - { - return isCoupledDarcyScvf_[darcyScvfIdx]; - } - - /*! - * \brief A map that returns all Stokes elements coupled to a Darcy element - */ - const auto &darcyElementToStokesElementMap() const - { - return darcyElementToStokesElementMap_; - } - - /*! - * \brief A map that returns all Darcy elements coupled to a Stokes element - */ - const auto &stokesElementToDarcyElementMap() const - { - return stokesElementToDarcyElementMap_; - } - -private: - std::unordered_map> - darcyElementToStokesElementMap_; - std::unordered_map> - stokesElementToDarcyElementMap_; - - std::vector isCoupledDarcyScvf_; -}; - -} // end namespace Dumux - -#endif diff --git a/dune.module b/dune.module index d106cf7..694e26c 100644 --- a/dune.module +++ b/dune.module @@ -4,8 +4,8 @@ #Name of the module Module: dumux-precice -Version: develop -Maintainer: alexander.jaust@ipvs.uni-stuttgart.de +Version: 1.0.0 +Maintainer: ishaan.desai@ipvs.uni-stuttgart.de # Required build dependencies Depends: dumux (>=3.2) # Optional build dependencies diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt index a0208a7..57c4329 100644 --- a/examples/CMakeLists.txt +++ b/examples/CMakeLists.txt @@ -1,2 +1,2 @@ -add_subdirectory(legacy) add_subdirectory(ff-pm) +add_subdirectory(dummysolver) diff --git a/examples/README.md b/examples/README.md index 328eeca..2019bfa 100644 --- a/examples/README.md +++ b/examples/README.md @@ -1,4 +1,5 @@ # DuMuX-preCICE examples +- `dummysolver/` contains a dummy solver similar to the dummy solver provided by preCICE. However, the included dummy solver uses the DuMuX-preCICE adapter. - `ff-pm/` contains examples of coupled free flow (`ff`) and porous medium (`pm`) flow -- `legacy/` contains older examples that are not actively maintained and may not work. + diff --git a/examples/dummysolver/Allrun.sh b/examples/dummysolver/Allrun.sh new file mode 100755 index 0000000..3bba36f --- /dev/null +++ b/examples/dummysolver/Allrun.sh @@ -0,0 +1,20 @@ +#!/usr/bin/env sh + +set -e -u + +rm -rf precice-run/ + +./dumuxprecice_dummysolver -preCICE.SolverName SolverOne -preCICE.ConfigFileName precice-dummy-solver-config.xml -preCICE.MeshName MeshOne > Solver_One.out 2>&1 & +SOLVER_ONE_ID=$! + +./dumuxprecice_dummysolver -preCICE.SolverName SolverTwo -preCICE.ConfigFileName precice-dummy-solver-config.xml -preCICE.MeshName MeshTwo > Solver_Two.out 2>&1 & +SOLVER_TWO_ID=$! + +wait ${SOLVER_ONE_ID} +if [ $? -ne 0 ]; then + exit $? +fi +wait ${SOLVER_TWO_ID} +if [ $? -ne 0 ]; then + exit $? +fi \ No newline at end of file diff --git a/examples/dummysolver/CMakeLists.txt b/examples/dummysolver/CMakeLists.txt new file mode 100644 index 0000000..f590201 --- /dev/null +++ b/examples/dummysolver/CMakeLists.txt @@ -0,0 +1,12 @@ +add_executable(dumuxprecice_dummysolver EXCLUDE_FROM_ALL main_dummysolver.cc) + +target_link_libraries(dumuxprecice_dummysolver PRIVATE dumux-precice) + +dune_symlink_to_source_files(FILES precice-dummy-solver-config.xml) +dune_symlink_to_source_files(FILES Allrun.sh) + +dumux_add_test(NAME dumuxprecice_dummysolver + TARGET dumuxprecice_dummysolver + LABELS dummy precice + TIMEOUT 30 + COMMAND Allrun.sh) diff --git a/examples/dummysolver/main_dummysolver.cc b/examples/dummysolver/main_dummysolver.cc new file mode 100644 index 0000000..5e8808d --- /dev/null +++ b/examples/dummysolver/main_dummysolver.cc @@ -0,0 +1,290 @@ +// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- +// vi: set et ts=4 sw=4 sts=4: +/*! + * \file TODO + * + * \brief TODO + */ +#include + +#include + +#include +#include +#include + +#include +#include + +#include "dumux-precice/couplingadapter.hh" + +int main(int argc, char **argv) +try { + using namespace Dumux; + + // initialize MPI, finalize is done automatically on exit + const auto &mpiHelper = Dune::MPIHelper::instance(argc, argv); + + // print dumux start message + if (mpiHelper.rank() == 0) + DumuxMessage::print(/*firstCall=*/true); + + // parse command line arguments and input file + Parameters::init(argc, argv); + + // Initialize preCICE. Tell preCICE about: + // - Name of solver + // - Configuration file name + // - Solver rank + + const std::string solverName = + getParamFromGroup("preCICE", "SolverName"); + const std::string preciceConfigFilename = + getParamFromGroup("preCICE", "ConfigFileName"); + const std::string meshName = + getParamFromGroup("preCICE", "MeshName"); + + auto &couplingInterface = Dumux::Precice::CouplingAdapter::getInstance(); + couplingInterface.announceSolver(solverName, preciceConfigFilename, + mpiHelper.rank(), mpiHelper.size()); + + std::cout << "DUMMY (" << mpiHelper.rank() + << "): Running solver dummy with preCICE config file \"" + << preciceConfigFilename << "\", participant name \"" + << solverName << "\", and mesh name \"" << meshName << "\".\n"; + + const int dimensions = couplingInterface.getDimensions(); + assert(dimensions == 3); + const std::string scalarDataWriteName = + (solverName == "SolverOne") ? "scalarDataOne" : "scalarDataTwo"; + const std::string scalarDataReadName = + (solverName == "SolverOne") ? "scalarDataTwo" : "scalarDataOne"; + + const std::string vectorDataWriteName = + (solverName == "SolverOne") ? "vectorDataOne" : "vectorDataTwo"; + const std::string vectorDataReadName = + (solverName == "SolverOne") ? "vectorDataTwo" : "vectorDataOne"; + + const int numberOfVertices = 3; + + std::vector writeScalarData(numberOfVertices); + std::vector writeVectorData(numberOfVertices * dimensions); + std::vector vertices(numberOfVertices * dimensions); + std::vector preciceVertexIDs(numberOfVertices); + std::vector dumuxVertexIDs(numberOfVertices); + + for (int i = 0; i < numberOfVertices; i++) { + writeScalarData.at(i) = i + numberOfVertices; + dumuxVertexIDs.at(i) = i + numberOfVertices; + for (int j = 0; j < dimensions; j++) { + vertices.at(j + dimensions * i) = i; + writeVectorData.at(j + dimensions * i) = i; + } + } + + std::cout << "DUMMY (" << mpiHelper.rank() + << "): Initialize preCICE and set mesh\n"; + double preciceDt = couplingInterface.setMeshAndInitialize( + meshName, numberOfVertices, vertices); + + // Create index mapping between DuMuX's index numbering and preCICE's numbering + std::cout << "DUMMY (" << mpiHelper.rank() << "): Create index mapping\n"; + couplingInterface.createIndexMapping(dumuxVertexIDs); + + const int readScalarDataID = + couplingInterface.announceScalarQuantity(scalarDataReadName); + const int writeScalarDataID = + couplingInterface.announceScalarQuantity(scalarDataWriteName); + const int readVectorDataID = + couplingInterface.announceVectorQuantity(vectorDataReadName); + const int writeVectorDataID = + couplingInterface.announceVectorQuantity(vectorDataWriteName); + + if (couplingInterface.hasToWriteInitialData()) { + std::cout << "DUMMY (" << mpiHelper.rank() + << "): Writing initial data\n"; + // Scalar data + couplingInterface.writeQuantityVector(writeScalarDataID, + writeScalarData); + couplingInterface.writeScalarQuantityToOtherSolver(writeScalarDataID); + // Vector data + couplingInterface.writeQuantityVector(writeVectorDataID, + writeVectorData); + couplingInterface.writeQuantityToOtherSolver( + writeVectorDataID, Dumux::Precice::QuantityType::Vector); + couplingInterface.announceInitialDataWritten(); + } + std::cout << "DUMMY (" << mpiHelper.rank() << "): Exchange initial\n"; + couplingInterface.initializeData(); + + // Check exchanged initial data + if (solverName == "SolverOne") { + std::cout << "DUMMY (" << mpiHelper.rank() + << "): Reading initial data\n"; + couplingInterface.readQuantityFromOtherSolver( + readScalarDataID, Dumux::Precice::QuantityType::Scalar); + couplingInterface.readQuantityFromOtherSolver( + readVectorDataID, Dumux::Precice::QuantityType::Vector); + + const std::vector &readScalarQuantity = + couplingInterface.getQuantityVector(readScalarDataID); + + std::cout << "DUMMY (" << mpiHelper.rank() << "): Scalar data\n"; + for (const double &value : readScalarQuantity) + std::cout << value << ","; + std::cout << "\n"; + + const std::vector &readVectorQuantity = + couplingInterface.getQuantityVector(readVectorDataID); + + std::cout << "DUMMY (" << mpiHelper.rank() << "): Vector data\n"; + for (const double &value : readVectorQuantity) + std::cout << value << ","; + std::cout << "\n"; + + for (int i = 0; i < numberOfVertices; i++) { + if (readScalarQuantity.at(i) != writeScalarData.at(i)) { + std::cout << "DUMMY (" << mpiHelper.rank() + << "): Reading initialized SCALAR data error\n" + << "Index: " << i << ", Expected " + << writeScalarData.at(i) << ", Found " + << readScalarQuantity.at(i) << "\n"; + throw(std::runtime_error("Did not find expected SCALAR data.")); + } + + for (int j = 0; j < dimensions; j++) { + if (readVectorQuantity.at(j + dimensions * i) != + writeVectorData.at(j + dimensions * i)) { + std::cout + << "DUMMY (" << mpiHelper.rank() + << "): Reading initialized VECTOR data error\n" + << "Expected " << writeVectorData.at(j + dimensions * i) + << ", Found " + << readVectorQuantity.at(j + dimensions * i) << "\n"; + throw(std::runtime_error( + "Did not find expected VECTOR data.")); + } + } + } + } + + int iter = 0; + + while (couplingInterface.isCouplingOngoing()) { + if (couplingInterface.hasToWriteIterationCheckpoint()) { + std::cout << "DUMMY (" << mpiHelper.rank() + << "): Writing iteration checkpoint\n"; + couplingInterface.announceIterationCheckpointWritten(); + } + + //Read data + std::cout << "DUMMY (" << mpiHelper.rank() << "): Reading data\n"; + couplingInterface.readQuantityFromOtherSolver( + readScalarDataID, Dumux::Precice::QuantityType::Scalar); + couplingInterface.readQuantityFromOtherSolver( + readVectorDataID, Dumux::Precice::QuantityType::Vector); + + // Check data + if (iter > 0) { + int offset = (solverName == "SolverOne") ? 0 : 1; + const std::vector &readScalarQuantity = + couplingInterface.getQuantityVector(readScalarDataID); + + const std::vector &readVectorQuantity = + couplingInterface.getQuantityVector(readVectorDataID); + + for (int i = 0; i < numberOfVertices; i++) { + if (readScalarQuantity.at(i) != + writeScalarData.at(i) + offset) { + std::cout << "DUMMY (" << mpiHelper.rank() + << "): Reading initialized SCALAR data error\n" + << "Index " << i << ", Expected " + << writeScalarData.at(i) + offset << ", Found " + << readScalarQuantity.at(i) << "\n"; + throw(std::runtime_error( + "Did not find expected SCALAR data.")); + } + + for (int j = 0; j < dimensions; j++) { + if (readVectorQuantity.at(j + dimensions * i) != + writeVectorData.at(j + dimensions * i) + offset) { + std::cout + << "DUMMY (" << mpiHelper.rank() + << "): Reading initialized VECTOR data error\n" + << "Index " << j + dimensions * i << ", Expected " + << writeVectorData.at(j + dimensions * i) + offset + << ", Found " + << readVectorQuantity.at(j + dimensions * i) + << "\n"; + throw(std::runtime_error( + "Did not find expected VECTOR data.")); + } + } + } + } + + ++iter; + + std::cout << "DUMMY (" << mpiHelper.rank() << "): Writing data\n"; + for (int i = 0; i < numberOfVertices; i++) { + writeScalarData.at(i) = i + iter; + for (int j = 0; j < dimensions; j++) { + writeVectorData.at(j + dimensions * i) = i + iter; + } + } + + // Write scalar data via DuMuX ID <-> preCICE ID mapping + for (int i = 0; i < numberOfVertices; i++) { + const double value = i + iter; + couplingInterface.writeScalarQuantityOnFace( + writeScalarDataID, dumuxVertexIDs[i], value); + } + couplingInterface.writeQuantityToOtherSolver( + writeScalarDataID, Dumux::Precice::QuantityType::Scalar); + + // Write vector data + couplingInterface.writeQuantityVector(writeVectorDataID, + writeVectorData); + couplingInterface.writeQuantityToOtherSolver( + writeVectorDataID, Dumux::Precice::QuantityType::Vector); + + preciceDt = couplingInterface.advance(preciceDt); + + if (couplingInterface.hasToReadIterationCheckpoint()) { + std::cout << "DUMMY (" << mpiHelper.rank() + << "): Reading iteration checkpoint\n"; + couplingInterface.announceIterationCheckpointRead(); + } else { + std::cout << "DUMMY (" << mpiHelper.rank() + << "): Advancing in time\n"; + } + } + //////////////////////////////////////////////////////////// + // finalize, print dumux message to say goodbye + //////////////////////////////////////////////////////////// + + couplingInterface.finalize(); + std::cout << "DUMMY (" << mpiHelper.rank() + << "): Closing C++ solver dummy...\n"; + + // print dumux end message + if (mpiHelper.rank() == 0) { + Parameters::print(); + DumuxMessage::print(/*firstCall=*/false); + } + + return 0; +} // end main +catch (Dumux::ParameterException &e) { + std::cerr << std::endl << e << " ---> Abort!" << std::endl; + return 1; +} catch (Dune::Exception &e) { + std::cerr << "Dune reported error: " << e << " ---> Abort!" << std::endl; + return 3; +} catch (std::runtime_error &e) { + std::cerr << std::endl << e.what() << " ---> Abort!" << std::endl; + return 4; +} catch (...) { + std::cerr << "Unknown exception thrown! ---> Abort!" << std::endl; + return 5; +} diff --git a/examples/dummysolver/params-solver-a.input b/examples/dummysolver/params-solver-a.input new file mode 100644 index 0000000..e69de29 diff --git a/examples/dummysolver/precice-dummy-solver-config.xml b/examples/dummysolver/precice-dummy-solver-config.xml new file mode 100644 index 0000000..4cd2a69 --- /dev/null +++ b/examples/dummysolver/precice-dummy-solver-config.xml @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/dummysolver/test.xml b/examples/dummysolver/test.xml new file mode 100644 index 0000000..4d46857 --- /dev/null +++ b/examples/dummysolver/test.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/ff-pm/CMakeLists.txt b/examples/ff-pm/CMakeLists.txt index 6312d5d..45a5251 100644 --- a/examples/ff-pm/CMakeLists.txt +++ b/examples/ff-pm/CMakeLists.txt @@ -1,2 +1,4 @@ -add_subdirectory(monolithic) -add_subdirectory(partitioned) \ No newline at end of file +# 2D cases +add_subdirectory(flow-over-square-2d) +# 3D cases +add_subdirectory(flow-over-cube-3d) \ No newline at end of file diff --git a/examples/ff-pm/monolithic/flow-over-step-3d/1pspatialparams.hh b/examples/ff-pm/flow-over-cube-3d/1pspatialparams.hh similarity index 80% rename from examples/ff-pm/monolithic/flow-over-step-3d/1pspatialparams.hh rename to examples/ff-pm/flow-over-cube-3d/1pspatialparams.hh index 2928e72..ef81c28 100644 --- a/examples/ff-pm/monolithic/flow-over-step-3d/1pspatialparams.hh +++ b/examples/ff-pm/flow-over-cube-3d/1pspatialparams.hh @@ -24,7 +24,11 @@ #ifndef DUMUX_1P_TEST_SPATIALPARAMS_HH #define DUMUX_1P_TEST_SPATIALPARAMS_HH +#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 5 +#include +#else #include +#endif namespace Dumux { @@ -36,15 +40,29 @@ namespace Dumux */ template class OnePSpatialParams +#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 5 + : public FVPorousMediumFlowSpatialParamsOneP< + FVGridGeometry, + Scalar, + OnePSpatialParams> +#else : public FVSpatialParamsOneP> +#endif { using GridView = typename FVGridGeometry::GridView; using ParentType = +#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 5 + FVPorousMediumFlowSpatialParamsOneP< + FVGridGeometry, + Scalar, + OnePSpatialParams>; +#else FVSpatialParamsOneP>; +#endif using Element = typename GridView::template Codim<0>::Entity; using GlobalPosition = typename Element::Geometry::GlobalCoordinate; @@ -90,6 +108,18 @@ public: return alphaBJ_; } +#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR > 4 + /*! + * \brief Return the temperature within the domain in [K]. + * + * This problem assumes a temperature of 10 degrees Celsius. + */ + Scalar temperatureAtPos(const GlobalPosition &globalPos) const + { + return 273.15 + 10; // 10°C + } +#endif + private: Scalar permeability_; Scalar porosity_; diff --git a/examples/ff-pm/flow-over-cube-3d/CMakeLists.txt b/examples/ff-pm/flow-over-cube-3d/CMakeLists.txt new file mode 100644 index 0000000..d341da6 --- /dev/null +++ b/examples/ff-pm/flow-over-cube-3d/CMakeLists.txt @@ -0,0 +1,51 @@ +add_executable(ff_flow_over_cube_3d EXCLUDE_FROM_ALL main_ff-reversed.cc) +add_executable(pm_flow_over_cube_3d EXCLUDE_FROM_ALL main_pm-reversed.cc) + +target_link_libraries(ff_flow_over_cube_3d PRIVATE dumux-precice) +target_link_libraries(pm_flow_over_cube_3d PRIVATE dumux-precice) + +# add a symlink for each input file +add_input_file_links() +# add a symlink for each preCICE configuration file +add_precice_file_links() + +# Dummy test is needed to build porous media solver. The default +# `dumux_add_test` (and the underlying `dune_add_test`) only accept +# one target executable. +dumux_add_test(NAME dummytarget_to_build_pm_flow_over_cube_3d + TARGET pm_flow_over_cube_3d + LABELS freeflow stokes precice darcy 3d + TIMEOUT 5 + COMMAND ${CMAKE_SOURCE_DIR}/test/return-test-passed.sh +) + +#dumux_add_test(NAME dummytarget_to_build_ff_flow_over_cube_3d +# TARGET ff_flow_over_cube_3d +# LABELS freeflow stokes precice darcy 3d +# TIMEOUT 5 +# COMMAND ${CMAKE_SOURCE_DIR}/test/return-test-passed.sh +#) + + +dumux_add_test(NAME test_ff_pm_flow_over_cube_3d + TARGET ff_flow_over_cube_3d + LABELS freeflow stokes precice darcy + TIMEOUT 30 + CMAKE_GUARD HAVE_UMFPACK + COMMAND ${CMAKE_SOURCE_DIR}/test/run-test.py + CMD_ARGS + --solver-one ${CMAKE_CURRENT_BINARY_DIR}/ff_flow_over_cube_3d + --solver-two ${CMAKE_CURRENT_BINARY_DIR}/pm_flow_over_cube_3d + --files ${CMAKE_SOURCE_DIR}/test/reference-solutions/flow-over-cube-3d/test_stokes_first_si_stokes.vtu + ${CMAKE_CURRENT_BINARY_DIR}/ff-pm-3d-precice-stokes-00005.vtu + ${CMAKE_SOURCE_DIR}/test/reference-solutions/flow-over-cube-3d/test_stokes_first_si_darcy.vtu + ${CMAKE_CURRENT_BINARY_DIR}/ff-pm-3d-precice-darcy-00005.vtu + --dumux-param-file ${CMAKE_CURRENT_BINARY_DIR}/params.input + --precice-config-file ${CMAKE_CURRENT_BINARY_DIR}/precice-config.xml + --precice-iteration-files ${CMAKE_SOURCE_DIR}/test/reference-solutions/flow-over-cube-3d/test_stokes_first_si_coupliter_stokes.log ${CMAKE_CURRENT_BINARY_DIR}/precice-FreeFlow-iterations.log + --case-name "flow-over-cube_3d" + --relative 5e-6 + --zeroThreshold {"velocity_liq \(m/s\)":1e-14,"p":1e-12} +) +set_tests_properties(test_ff_pm_flow_over_cube_3d PROPERTIES + ENVIRONMENT PYTHONPATH=${CMAKE_SOURCE_DIR}/test:$ENV{PYTHONPATH}) \ No newline at end of file diff --git a/examples/ff-pm/partitioned/ff-pm-3d/ffproblem-reversed.hh b/examples/ff-pm/flow-over-cube-3d/ffproblem-reversed.hh similarity index 86% rename from examples/ff-pm/partitioned/ff-pm-3d/ffproblem-reversed.hh rename to examples/ff-pm/flow-over-cube-3d/ffproblem-reversed.hh index 4efce03..9513357 100644 --- a/examples/ff-pm/partitioned/ff-pm-3d/ffproblem-reversed.hh +++ b/examples/ff-pm/flow-over-cube-3d/ffproblem-reversed.hh @@ -23,10 +23,6 @@ #ifndef DUMUX_STOKES_SUBPROBLEM_HH #define DUMUX_STOKES_SUBPROBLEM_HH -#ifndef ENABLEMONOLITHIC -#define ENABLEMONOLITHIC 0 -#endif - #include #if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 4 @@ -127,18 +123,7 @@ class StokesSubProblem : public NavierStokesProblem #endif using FluidSystem = GetPropType; -#if ENABLEMONOLITHIC - using CouplingManager = GetPropType; -#endif - public: -#if ENABLEMONOLITHIC - StokesSubProblem(std::shared_ptr gridGeometry, - std::shared_ptr couplingManager) - : ParentType(gridGeometry, "Stokes"), - eps_(1e-6), - couplingManager_(couplingManager) -#else StokesSubProblem(std::shared_ptr gridGeometry) : ParentType(gridGeometry, "FreeFlow"), eps_(1e-6), @@ -146,7 +131,6 @@ public: pressureId_(0), velocityId_(0), dataIdsWereSet_(false) -#endif { deltaP_ = getParamFromGroup(this->paramGroup(), "Problem.PressureDifference"); @@ -159,12 +143,14 @@ public: */ // \{ +#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR < 5 /*! * \brief Return the temperature within the domain in [K]. * * This problem assumes a temperature of 10 degrees Celsius. */ Scalar temperature() const { return 273.15 + 10; } // 10°C +#endif /*! * \brief Return the sources within the domain. @@ -202,15 +188,6 @@ public: values.setDirichlet(Indices::pressureIdx); } // coupling interface -#if ENABLEMONOLITHIC - else if (couplingManager().isCoupledEntity(CouplingManager::stokesIdx, - scvf)) { - values.setCouplingNeumann(Indices::conti0EqIdx); - values.setCouplingNeumann(Indices::momentumYBalanceIdx); - values.setBeaversJoseph(Indices::momentumXBalanceIdx); - } -#else - else if (couplingInterface_.isCoupledEntity(faceId)) { // // TODO do preCICE stuff in analogy to heat transfer assert(dataIdsWereSet_setBeaversJoseph); @@ -223,9 +200,7 @@ public: // values.setNeumann(Indices::momentumYBalanceIdx); values.setBeaversJoseph(Indices::momentumXBalanceIdx); values.setBeaversJoseph(Indices::momentumZBalanceIdx); - } -#endif - else { + } else { values.setDirichlet(Indices::velocityXIdx); values.setDirichlet(Indices::velocityYIdx); values.setDirichlet(Indices::velocityZIdx); @@ -273,17 +248,6 @@ public: { NumEqVector values(0.0); -#if ENABLEMONOLITHIC - if (couplingManager().isCoupledEntity(CouplingManager::stokesIdx, - scvf)) { - values[Indices::conti0EqIdx] = - couplingManager().couplingData().massCouplingCondition( - element, fvGeometry, elemVolVars, elemFaceVars, scvf); - values[Indices::momentumYBalanceIdx] = - couplingManager().couplingData().momentumCouplingCondition( - element, fvGeometry, elemVolVars, elemFaceVars, scvf); - } -#else assert(dataIdsWereSet_); const auto faceId = scvf.index(); if (couplingInterface_.isCoupledEntity(faceId)) { @@ -298,18 +262,11 @@ public: faceId) - initialAtPos(scvf.center())[Indices::pressureIdx]); } -#endif - return values; } // \} -#if ENABLEMONOLITHIC - //! Get the coupling manager - const CouplingManager &couplingManager() const { return *couplingManager_; } -#endif - /*! * \name Volume terms */ @@ -338,12 +295,7 @@ public: Scalar permeability(const Element &element, const SubControlVolumeFace &scvf) const { -#if ENABLEMONOLITHIC - return couplingManager().couplingData().darcyPermeability(element, - scvf); -#else return 1e-10; // TODO transfer information or just use constant value -#endif } /*! @@ -351,14 +303,7 @@ public: */ Scalar alphaBJ(const SubControlVolumeFace &scvf) const { -#if ENABLEMONOLITHIC - return couplingManager() - .problem(CouplingManager::darcyIdx) - .spatialParams() - .beaversJosephCoeffAtPos(scvf.center()); -#else - return 1.0; // TODO transfer information or just use constant value -#endif + return 1.0; // TODO transfer information or just use constant value } /*! @@ -371,7 +316,11 @@ public: using std::sqrt; const Scalar dPdX = -deltaP_ / (this->gridGeometry().bBoxMax()[0] - this->gridGeometry().bBoxMin()[0]); +#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR > 4 + static const Scalar mu = FluidSystem::viscosity(273.15 + 10, 1e5); +#else static const Scalar mu = FluidSystem::viscosity(temperature(), 1e5); +#endif static const Scalar alpha = getParam("Darcy.SpatialParams.AlphaBeaversJoseph"); static const Scalar K = @@ -409,14 +358,12 @@ public: return analyticalVelocityX_; } -#if !ENABLEMONOLITHIC void updatePreciceDataIds() { pressureId_ = couplingInterface_.getIdFromName("Pressure"); velocityId_ = couplingInterface_.getIdFromName("Velocity"); dataIdsWereSet_ = true; } -#endif // \} @@ -444,14 +391,10 @@ private: Scalar eps_; Scalar deltaP_; -#if ENABLEMONOLITHIC - std::shared_ptr couplingManager_; -#else Dumux::Precice::CouplingAdapter &couplingInterface_; size_t pressureId_; size_t velocityId_; bool dataIdsWereSet_; -#endif mutable std::vector analyticalVelocityX_; }; diff --git a/examples/ff-pm/partitioned/ff-pm-3d/main_ff-reversed.cc b/examples/ff-pm/flow-over-cube-3d/main_ff-reversed.cc similarity index 98% rename from examples/ff-pm/partitioned/ff-pm-3d/main_ff-reversed.cc rename to examples/ff-pm/flow-over-cube-3d/main_ff-reversed.cc index d6e0894..8eb87eb 100644 --- a/examples/ff-pm/partitioned/ff-pm-3d/main_ff-reversed.cc +++ b/examples/ff-pm/flow-over-cube-3d/main_ff-reversed.cc @@ -284,7 +284,11 @@ try { GetPropType; auto freeFlowGridGeometry = std::make_shared(freeFlowGridView); +#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 5 + freeFlowGridGeometry->update(freeFlowGridManager.grid().leafGridView()); +#else freeFlowGridGeometry->update(); +#endif // the problem (initial and boundary conditions) using FreeFlowProblem = GetPropType; @@ -349,8 +353,10 @@ try { "FreeFlowMesh", numberOfPoints, coords); couplingInterface.createIndexMapping(coupledScvfIndices); - const auto velocityId = couplingInterface.announceQuantity("Velocity"); - const auto pressureId = couplingInterface.announceQuantity("Pressure"); + const auto velocityId = + couplingInterface.announceScalarQuantity("Velocity"); + const auto pressureId = + couplingInterface.announceScalarQuantity("Pressure"); freeFlowProblem->updatePreciceDataIds(); diff --git a/examples/ff-pm/partitioned/ff-pm-3d/main_pm-reversed.cc b/examples/ff-pm/flow-over-cube-3d/main_pm-reversed.cc similarity index 98% rename from examples/ff-pm/partitioned/ff-pm-3d/main_pm-reversed.cc rename to examples/ff-pm/flow-over-cube-3d/main_pm-reversed.cc index 74b6d82..378ca1e 100644 --- a/examples/ff-pm/partitioned/ff-pm-3d/main_pm-reversed.cc +++ b/examples/ff-pm/flow-over-cube-3d/main_pm-reversed.cc @@ -326,7 +326,11 @@ try { using DarcyGridGeometry = GetPropType; auto darcyGridGeometry = std::make_shared(darcyGridView); +#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 5 + darcyGridGeometry->update(darcyGridManager.grid().leafGridView()); +#else darcyGridGeometry->update(); +#endif using DarcyProblem = GetPropType; auto darcyProblem = std::make_shared(darcyGridGeometry); @@ -386,8 +390,10 @@ try { "DarcyMesh", numberOfPoints, coords); couplingInterface.createIndexMapping(coupledScvfIndices); - const auto velocityId = couplingInterface.announceQuantity("Velocity"); - const auto pressureId = couplingInterface.announceQuantity("Pressure"); + const auto velocityId = + couplingInterface.announceScalarQuantity("Velocity"); + const auto pressureId = + couplingInterface.announceScalarQuantity("Pressure"); darcyProblem->updatePreciceDataIds(); diff --git a/examples/ff-pm/partitioned/ff-pm-3d/params.input b/examples/ff-pm/flow-over-cube-3d/params.input similarity index 93% rename from examples/ff-pm/partitioned/ff-pm-3d/params.input rename to examples/ff-pm/flow-over-cube-3d/params.input index d0ff043..8eaad8c 100644 --- a/examples/ff-pm/partitioned/ff-pm-3d/params.input +++ b/examples/ff-pm/flow-over-cube-3d/params.input @@ -17,7 +17,7 @@ Grading1 = 1 [FreeFlow.Problem] Name = ff-pm-3d-precice-stokes EnableInertiaTerms = false -#Name = navier-stokes-iterative-3d +#Name = ff-pm-3d-precice-navierstokes #EnableInertiaTerms = true PressureDifference = 1e-1 diff --git a/examples/ff-pm/partitioned/ff-pm-3d/pmproblem-reversed.hh b/examples/ff-pm/flow-over-cube-3d/pmproblem-reversed.hh similarity index 83% rename from examples/ff-pm/partitioned/ff-pm-3d/pmproblem-reversed.hh rename to examples/ff-pm/flow-over-cube-3d/pmproblem-reversed.hh index a8df566..c28ecc7 100644 --- a/examples/ff-pm/partitioned/ff-pm-3d/pmproblem-reversed.hh +++ b/examples/ff-pm/flow-over-cube-3d/pmproblem-reversed.hh @@ -24,10 +24,6 @@ #ifndef DUMUX_DARCY_SUBPROBLEM_HH #define DUMUX_DARCY_SUBPROBLEM_HH -#ifndef ENABLEMONOLITHIC -#define ENABLEMONOLITHIC 0 -#endif - #include #if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 4 @@ -37,7 +33,8 @@ #include #include -#include "../../common/porousmediumflowproblemwithgravity.hh" +#include +//#include "../../common/porousmediumflowproblemwithgravity.hh" #include "1pspatialparams.hh" @@ -93,9 +90,9 @@ struct SpatialParams { * \brief The porous medium flow sub problem */ template -class DarcySubProblem : public PorousMediumFlowProblemWithGravity +class DarcySubProblem : public PorousMediumFlowProblem { - using ParentType = PorousMediumFlowProblemWithGravity; + using ParentType = PorousMediumFlowProblem; using GridView = typename GetPropType::GridView; using Scalar = GetPropType; @@ -121,18 +118,7 @@ class DarcySubProblem : public PorousMediumFlowProblemWithGravity using Element = typename GridView::template Codim<0>::Entity; using GlobalPosition = typename Element::Geometry::GlobalCoordinate; -#if ENABLEMONOLITHIC - using CouplingManager = GetPropType; -#endif - public: -#if ENABLEMONOLITHIC - DarcySubProblem(std::shared_ptr fvGridGeometry, - std::shared_ptr couplingManager) - : ParentType(fvGridGeometry, "Darcy"), - eps_(1e-7), - couplingManager_(couplingManager) -#else DarcySubProblem(std::shared_ptr fvGridGeometry) : ParentType(fvGridGeometry, "Darcy"), eps_(1e-7), @@ -140,7 +126,6 @@ public: pressureId_(0), velocityId_(0), dataIdsWereSet_(false) -#endif { } @@ -149,12 +134,14 @@ public: */ // \{ +#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR < 5 /*! * \brief Return the temperature within the domain in [K]. * */ Scalar temperature() const { return 273.15 + 10; } // 10°C // \} +#endif /*! * \name Boundary conditions @@ -176,15 +163,9 @@ public: // set Neumann BCs to all boundaries first values.setAllNeumann(); -#if ENABLEMONOLITHIC - // set the coupling boundary condition at the interface - if (couplingManager().isCoupledEntity(CouplingManager::darcyIdx, scvf)) - values.setAllCouplingNeumann(); -#else const auto faceId = scvf.index(); if (couplingInterface_.isCoupledEntity(faceId)) values.setAllDirichlet(); -#endif return values; } @@ -231,22 +212,14 @@ public: // no-flow everywhere ... NumEqVector values(0.0); -#if ENABLEMONOLITHIC - // ... except at the coupling interface - if (couplingManager().isCoupledEntity(CouplingManager::darcyIdx, scvf)) - values[Indices::conti0EqIdx] = - couplingManager().couplingData().massCouplingCondition( - element, fvGeometry, elemVolVars, scvf); -#else -// assert( dataIdsWereSet_ ); -// const auto faceId = scvf.index(); -// if ( couplingInterface_.isCoupledEntity(faceId) ) -// { -// const Scalar density = 1000.; -// values[Indices::conti0EqIdx] = density * couplingInterface_.getScalarQuantityOnFace( velocityId_, faceId ); -// std::cout << "pm: values[Indices::conti0EqIdx] = " << values << std::endl; -// } -#endif + // assert( dataIdsWereSet_ ); + // const auto faceId = scvf.index(); + // if ( couplingInterface_.isCoupledEntity(faceId) ) + // { + // const Scalar density = 1000.; + // values[Indices::conti0EqIdx] = density * couplingInterface_.getScalarQuantityOnFace( velocityId_, faceId ); + // std::cout << "pm: values[Indices::conti0EqIdx] = " << values << std::endl; + // } return values; } @@ -303,19 +276,12 @@ public: // \} -#if !ENABLEMONOLITHIC void updatePreciceDataIds() { pressureId_ = couplingInterface_.getIdFromName("Pressure"); velocityId_ = couplingInterface_.getIdFromName("Velocity"); dataIdsWereSet_ = true; } -#endif - -#if ENABLEMONOLITHIC - //! Get the coupling manager - const CouplingManager &couplingManager() const { return *couplingManager_; } -#endif private: bool onLeftBoundary_(const GlobalPosition &globalPos) const @@ -340,15 +306,10 @@ private: Scalar eps_; -#if ENABLEMONOLITHIC - std::shared_ptr couplingManager_; -#else Dumux::Precice::CouplingAdapter &couplingInterface_; size_t pressureId_; size_t velocityId_; bool dataIdsWereSet_; - -#endif }; } // namespace Dumux diff --git a/examples/ff-pm/partitioned/ff-pm-3d/precice-config.xml b/examples/ff-pm/flow-over-cube-3d/precice-config.xml similarity index 90% rename from examples/ff-pm/partitioned/ff-pm-3d/precice-config.xml rename to examples/ff-pm/flow-over-cube-3d/precice-config.xml index 621c786..6d4c872 100644 --- a/examples/ff-pm/partitioned/ff-pm-3d/precice-config.xml +++ b/examples/ff-pm/flow-over-cube-3d/precice-config.xml @@ -40,12 +40,12 @@ - + - + @@ -64,13 +64,13 @@ - + - + - + diff --git a/examples/ff-pm/partitioned/ff-pm-3d/1pspatialparams.hh b/examples/ff-pm/flow-over-square-2d/1pspatialparams.hh similarity index 80% rename from examples/ff-pm/partitioned/ff-pm-3d/1pspatialparams.hh rename to examples/ff-pm/flow-over-square-2d/1pspatialparams.hh index 2928e72..ef81c28 100644 --- a/examples/ff-pm/partitioned/ff-pm-3d/1pspatialparams.hh +++ b/examples/ff-pm/flow-over-square-2d/1pspatialparams.hh @@ -24,7 +24,11 @@ #ifndef DUMUX_1P_TEST_SPATIALPARAMS_HH #define DUMUX_1P_TEST_SPATIALPARAMS_HH +#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 5 +#include +#else #include +#endif namespace Dumux { @@ -36,15 +40,29 @@ namespace Dumux */ template class OnePSpatialParams +#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 5 + : public FVPorousMediumFlowSpatialParamsOneP< + FVGridGeometry, + Scalar, + OnePSpatialParams> +#else : public FVSpatialParamsOneP> +#endif { using GridView = typename FVGridGeometry::GridView; using ParentType = +#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 5 + FVPorousMediumFlowSpatialParamsOneP< + FVGridGeometry, + Scalar, + OnePSpatialParams>; +#else FVSpatialParamsOneP>; +#endif using Element = typename GridView::template Codim<0>::Entity; using GlobalPosition = typename Element::Geometry::GlobalCoordinate; @@ -90,6 +108,18 @@ public: return alphaBJ_; } +#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR > 4 + /*! + * \brief Return the temperature within the domain in [K]. + * + * This problem assumes a temperature of 10 degrees Celsius. + */ + Scalar temperatureAtPos(const GlobalPosition &globalPos) const + { + return 273.15 + 10; // 10°C + } +#endif + private: Scalar permeability_; Scalar porosity_; diff --git a/examples/ff-pm/flow-over-square-2d/CMakeLists.txt b/examples/ff-pm/flow-over-square-2d/CMakeLists.txt new file mode 100644 index 0000000..7c8db8a --- /dev/null +++ b/examples/ff-pm/flow-over-square-2d/CMakeLists.txt @@ -0,0 +1,176 @@ +add_executable(ff_flow_over_square_2d EXCLUDE_FROM_ALL main_ff.cc) +add_executable(pm_flow_over_square_2d EXCLUDE_FROM_ALL main_pm.cc) + +target_link_libraries(ff_flow_over_square_2d PRIVATE dumux-precice) +target_link_libraries(pm_flow_over_square_2d PRIVATE dumux-precice) + +add_input_file_links() +add_precice_file_links() + + +# Dummy test is needed to build porous media solver. The default +# `dumux_add_test` (and the underlying `dune_add_test`) only accept +# one target executable. +dumux_add_test(NAME dummy_test_ff_pm_part_flow_over_square_2d + TARGET pm_flow_over_square_2d + LABELS freeflow stokes precice darcy + TIMEOUT 30 + COMMAND ${CMAKE_SOURCE_DIR}/test/return-test-passed.sh +) + +dumux_add_test(NAME test_ff_pm_part_flow_over_square_2d_si_st_first + TARGET ff_flow_over_square_2d + TARGET pm_flow_over_square_2d + LABELS freeflow stokes precice darcy + TIMEOUT 30 + CMAKE_GUARD HAVE_UMFPACK + COMMAND ${CMAKE_SOURCE_DIR}/test/run-test.py + CMD_ARGS + --solver-one ${CMAKE_CURRENT_BINARY_DIR}/ff_flow_over_square_2d + --solver-two ${CMAKE_CURRENT_BINARY_DIR}/pm_flow_over_square_2d + --files ${CMAKE_SOURCE_DIR}/test/reference-solutions/flow-over-square-2d/test_stokes_first_si_stokes.vtu + ${CMAKE_CURRENT_BINARY_DIR}/ff-pm-2d-precice-stokes-00005.vtu + ${CMAKE_SOURCE_DIR}/test/reference-solutions/flow-over-square-2d/test_stokes_first_si_darcy.vtu + ${CMAKE_CURRENT_BINARY_DIR}/ff-pm-2d-precice-darcy-00005.vtu + --dumux-param-file ${CMAKE_CURRENT_BINARY_DIR}/params-stokesdarcy.input + --precice-config-file ${CMAKE_CURRENT_BINARY_DIR}/precice-config-si-free-flow-first.xml + --precice-iteration-files ${CMAKE_SOURCE_DIR}/test/reference-solutions/flow-over-square-2d/test_stokes_first_si_coupliter_stokes.log ${CMAKE_CURRENT_BINARY_DIR}/precice-FreeFlow-iterations.log + --case-name "flow-over-box-2d-si-stokes-first" + --relative 5e-6 + --zeroThreshold {"velocity_liq \(m/s\)":1e-14,"p":1e-12} +) +set_tests_properties(test_ff_pm_part_flow_over_square_2d_si_st_first PROPERTIES + ENVIRONMENT PYTHONPATH=${CMAKE_SOURCE_DIR}/test:$ENV{PYTHONPATH}) + +dumux_add_test(NAME test_ff_pm_part_flow_over_square_2d_si_st_second + TARGET pm_flow_over_square_2d + TARGET ff_flow_over_square_2d + LABELS freeflow darcy precice darcy + TIMEOUT 30 + CMAKE_GUARD HAVE_UMFPACK + COMMAND ${CMAKE_SOURCE_DIR}/test/run-test.py + CMD_ARGS + --solver-one ${CMAKE_CURRENT_BINARY_DIR}/ff_flow_over_square_2d + --solver-two ${CMAKE_CURRENT_BINARY_DIR}/pm_flow_over_square_2d + --files ${CMAKE_SOURCE_DIR}/test/reference-solutions/flow-over-square-2d/test_stokes_second_si_stokes.vtu + ${CMAKE_CURRENT_BINARY_DIR}/ff-pm-2d-precice-stokes-00006.vtu + ${CMAKE_SOURCE_DIR}/test/reference-solutions/flow-over-square-2d/test_stokes_second_si_darcy.vtu + ${CMAKE_CURRENT_BINARY_DIR}/ff-pm-2d-precice-darcy-00006.vtu + --dumux-param-file ${CMAKE_CURRENT_BINARY_DIR}/params-stokesdarcy.input + --precice-config-file ${CMAKE_CURRENT_BINARY_DIR}/precice-config-si-free-flow-second.xml + --precice-iteration-files ${CMAKE_SOURCE_DIR}/test/reference-solutions/flow-over-square-2d/test_stokes_second_si_coupliter_darcy.log ${CMAKE_CURRENT_BINARY_DIR}/precice-Darcy-iterations.log + --case-name "flow-over-box-2d-si-stokes-second" + --relative 5e-6 + --zeroThreshold {"velocity_liq \(m/s\)":1e-14,"p":1e-12} +) +set_tests_properties(test_ff_pm_part_flow_over_square_2d_si_st_second PROPERTIES + ENVIRONMENT PYTHONPATH=${CMAKE_SOURCE_DIR}/test:$ENV{PYTHONPATH}) + +dumux_add_test(NAME test_ff_pm_part_flow_over_square_2d_pi_st + TARGET ff_flow_over_square_2d + LABELS freeflow stokes precice darcy + TIMEOUT 30 + CMAKE_GUARD HAVE_UMFPACK + COMMAND ${CMAKE_SOURCE_DIR}/test/run-test.py + CMD_ARGS + --solver-one ${CMAKE_CURRENT_BINARY_DIR}/ff_flow_over_square_2d + --solver-two ${CMAKE_CURRENT_BINARY_DIR}/pm_flow_over_square_2d + --files ${CMAKE_SOURCE_DIR}/test/reference-solutions/flow-over-square-2d/test_stokes_pi_stokes.vtu + ${CMAKE_CURRENT_BINARY_DIR}/ff-pm-2d-precice-stokes-00007.vtu + ${CMAKE_SOURCE_DIR}/test/reference-solutions/flow-over-square-2d/test_stokes_pi_darcy.vtu + ${CMAKE_CURRENT_BINARY_DIR}/ff-pm-2d-precice-darcy-00007.vtu + --dumux-param-file ${CMAKE_CURRENT_BINARY_DIR}/params-stokesdarcy.input + --precice-config-file ${CMAKE_CURRENT_BINARY_DIR}/precice-config-pi.xml + --precice-iteration-files ${CMAKE_SOURCE_DIR}/test/reference-solutions/flow-over-square-2d/test_stokes_pi_coupliter_stokes.log + ${CMAKE_CURRENT_BINARY_DIR}/precice-FreeFlow-iterations.log + --case-name "flow-over-box-2d-pi" + --relative 5e-6 + --zeroThreshold {"velocity_liq \(m/s\)":1e-14,"p":1e-12} +) +# Adding DuMuX directory to Python search path such that we can use DuMuX'x fuzzy (inexact) testing of vtu files +set_tests_properties(test_ff_pm_part_flow_over_square_2d_pi_st PROPERTIES + ENVIRONMENT PYTHONPATH=${CMAKE_SOURCE_DIR}/test:$ENV{PYTHONPATH}) + +### Setting test dependencies +set_property(TEST test_ff_pm_part_flow_over_square_2d_si_st_second APPEND PROPERTY DEPENDS test_ff_pm_part_flow_over_square_2d_si_st_first) +set_property(TEST test_ff_pm_part_flow_over_square_2d_pi_st APPEND PROPERTY DEPENDS test_ff_pm_part_flow_over_square_2d_si_st_second) + +###################### +# Navier-Stokes tests +###################### + +dumux_add_test(NAME test_ff_pm_part_flow_over_square_2d_si_ns_first + TARGET ff_flow_over_square_2d + LABELS freeflow navierstokes precice darcy + TIMEOUT 60 + CMAKE_GUARD HAVE_UMFPACK + COMMAND ${CMAKE_SOURCE_DIR}/test/run-test.py + CMD_ARGS + --solver-one ${CMAKE_CURRENT_BINARY_DIR}/ff_flow_over_square_2d + --solver-two ${CMAKE_CURRENT_BINARY_DIR}/pm_flow_over_square_2d + --files ${CMAKE_SOURCE_DIR}/test/reference-solutions/flow-over-square-2d/test_navierstokes_first_si_navierstokes.vtu + ${CMAKE_CURRENT_BINARY_DIR}/ff-pm-2d-precice-navierstokes-00006.vtu + ${CMAKE_SOURCE_DIR}/test/reference-solutions/flow-over-square-2d/test_navierstokes_first_si_darcy.vtu + ${CMAKE_CURRENT_BINARY_DIR}/ff-pm-2d-precice-darcy-00006.vtu + --dumux-param-file ${CMAKE_CURRENT_BINARY_DIR}/params-navierstokesdarcy.input + --precice-config-file ${CMAKE_CURRENT_BINARY_DIR}/precice-config-si-free-flow-first.xml + --precice-iteration-files ${CMAKE_SOURCE_DIR}/test/reference-solutions/flow-over-square-2d/test_navierstokes_first_si_coupliter_navierstokes.log ${CMAKE_CURRENT_BINARY_DIR}/precice-FreeFlow-iterations.log + --case-name "flow-over-box-2d-si-navierstokes-first" + --relative 5e-6 + --zeroThreshold {"velocity_liq \(m/s\)":1e-14,"p":1e-12} +) +set_tests_properties(test_ff_pm_part_flow_over_square_2d_si_ns_first PROPERTIES + ENVIRONMENT PYTHONPATH=${CMAKE_SOURCE_DIR}/test:$ENV{PYTHONPATH}) + +dumux_add_test(NAME test_ff_pm_part_flow_over_square_2d_si_ns_second + TARGET ff_flow_over_square_2d + LABELS freeflow darcy precice darcy + TIMEOUT 60 + CMAKE_GUARD HAVE_UMFPACK + COMMAND ${CMAKE_SOURCE_DIR}/test/run-test.py + CMD_ARGS + --solver-one ${CMAKE_CURRENT_BINARY_DIR}/ff_flow_over_square_2d + --solver-two ${CMAKE_CURRENT_BINARY_DIR}/pm_flow_over_square_2d + --files ${CMAKE_SOURCE_DIR}/test/reference-solutions/flow-over-square-2d/test_navierstokes_second_si_navierstokes.vtu + ${CMAKE_CURRENT_BINARY_DIR}/ff-pm-2d-precice-navierstokes-00007.vtu + ${CMAKE_SOURCE_DIR}/test/reference-solutions/flow-over-square-2d/test_navierstokes_second_si_darcy.vtu + ${CMAKE_CURRENT_BINARY_DIR}/ff-pm-2d-precice-darcy-00007.vtu + --dumux-param-file ${CMAKE_CURRENT_BINARY_DIR}/params-navierstokesdarcy.input + --precice-config-file ${CMAKE_CURRENT_BINARY_DIR}/precice-config-si-free-flow-second.xml + --precice-iteration-files ${CMAKE_SOURCE_DIR}/test/reference-solutions/flow-over-square-2d/test_navierstokes_second_si_coupliter_darcy.log ${CMAKE_CURRENT_BINARY_DIR}/precice-Darcy-iterations.log + --case-name "flow-over-box-2d-si-navierstokes-second" + --relative 5e-6 + --zeroThreshold {"velocity_liq \(m/s\)":1e-14,"p":1e-12} +) +set_tests_properties(test_ff_pm_part_flow_over_square_2d_si_ns_second PROPERTIES + ENVIRONMENT PYTHONPATH=${CMAKE_SOURCE_DIR}/test:$ENV{PYTHONPATH}) + +dumux_add_test(NAME test_ff_pm_part_flow_over_square_2d_pi_ns + TARGET ff_flow_over_square_2d + LABELS freeflow navierstokes precice darcy + TIMEOUT 60 + CMAKE_GUARD HAVE_UMFPACK + COMMAND ${CMAKE_SOURCE_DIR}/test/run-test.py + CMD_ARGS + --solver-one ${CMAKE_CURRENT_BINARY_DIR}/ff_flow_over_square_2d + --solver-two ${CMAKE_CURRENT_BINARY_DIR}/pm_flow_over_square_2d + --files ${CMAKE_SOURCE_DIR}/test/reference-solutions/flow-over-square-2d/test_navierstokes_pi_navierstokes.vtu + ${CMAKE_CURRENT_BINARY_DIR}/ff-pm-2d-precice-navierstokes-00011.vtu + ${CMAKE_SOURCE_DIR}/test/reference-solutions/flow-over-square-2d/test_navierstokes_pi_darcy.vtu + ${CMAKE_CURRENT_BINARY_DIR}/ff-pm-2d-precice-darcy-00011.vtu + --dumux-param-file ${CMAKE_CURRENT_BINARY_DIR}/params-navierstokesdarcy.input + --precice-config-file ${CMAKE_CURRENT_BINARY_DIR}/precice-config-pi.xml + --precice-iteration-files ${CMAKE_SOURCE_DIR}/test/reference-solutions/flow-over-square-2d/test_navierstokes_pi_coupliter_navierstokes.log + ${CMAKE_CURRENT_BINARY_DIR}/precice-FreeFlow-iterations.log + --case-name "flow-over-box-2d-pi" + --relative 5e-6 + --zeroThreshold {"velocity_liq \(m/s\)":1e-14,"p":1e-12} +) +# Adding DuMuX directory to Python search path such that we can use DuMuX'x fuzzy (inexact) testing of vtu files +set_tests_properties(test_ff_pm_part_flow_over_square_2d_pi_ns PROPERTIES + ENVIRONMENT PYTHONPATH=${CMAKE_SOURCE_DIR}/test:$ENV{PYTHONPATH}) + +# Adding DuMuX directory to Python search path such that we can use DuMuX'x fuzzy (inexact) testing of vtu files +set_property(TEST test_ff_pm_part_flow_over_square_2d_si_ns_first APPEND PROPERTY DEPENDS test_ff_pm_part_flow_over_square_2d_pi_st) +set_property(TEST test_ff_pm_part_flow_over_square_2d_si_ns_second APPEND PROPERTY DEPENDS test_ff_pm_part_flow_over_square_2d_si_ns_first) +set_property(TEST test_ff_pm_part_flow_over_square_2d_pi_ns APPEND PROPERTY DEPENDS test_ff_pm_part_flow_over_square_2d_si_ns_second) diff --git a/test/partitioned/flow-over-square-2d/create-reference-solution.sh b/examples/ff-pm/flow-over-square-2d/create-reference-solution.sh similarity index 93% rename from test/partitioned/flow-over-square-2d/create-reference-solution.sh rename to examples/ff-pm/flow-over-square-2d/create-reference-solution.sh index 78a81b8..6548a6b 100755 --- a/test/partitioned/flow-over-square-2d/create-reference-solution.sh +++ b/examples/ff-pm/flow-over-square-2d/create-reference-solution.sh @@ -117,26 +117,26 @@ clean_up_dir ################## run_test_case params-stokesdarcy.input ./precice-config-si-stokes-first.xml -move_result_to_dir "test_stokes_first_si" "../../reference-solutions/partitioned/flow-over-square-2d/" +move_result_to_dir "test_stokes_first_si" "../../reference-solutions/flow-over-square-2d/" run_test_case ./params-stokesdarcy.input ./precice-config-si-stokes-second.xml -move_result_to_dir "test_stokes_second_si" "../../reference-solutions/partitioned/flow-over-square-2d/" +move_result_to_dir "test_stokes_second_si" "../../reference-solutions/flow-over-square-2d/" run_test_case ./params-stokesdarcy.input ./precice-config-pi.xml -move_result_to_dir "test_stokes_pi" "../../reference-solutions/partitioned/flow-over-square-2d/" +move_result_to_dir "test_stokes_pi" "../../reference-solutions/flow-over-square-2d/" ################## # Navier-Stokes ################## run_test_case ./params-navierstokesdarcy.input ./precice-config-si-stokes-first.xml -move_result_to_dir "test_navierstokes_first_si" "../../reference-solutions/partitioned/flow-over-square-2d/" +move_result_to_dir "test_navierstokes_first_si" "../../reference-solutions/flow-over-square-2d/" run_test_case ./params-navierstokesdarcy.input ./precice-config-si-stokes-second.xml -move_result_to_dir "test_navierstokes_second_si" "../../reference-solutions/partitioned/flow-over-square-2d/" +move_result_to_dir "test_navierstokes_second_si" "../../reference-solutions/flow-over-square-2d/" run_test_case ./params-navierstokesdarcy.input ./precice-config-pi.xml -move_result_to_dir "test_navierstokes_pi" "../../reference-solutions/partitioned/flow-over-square-2d/" +move_result_to_dir "test_navierstokes_pi" "../../reference-solutions/flow-over-square-2d/" exit 0 \ No newline at end of file diff --git a/test/partitioned/flow-over-square-2d/ffproblem-reversed.hh b/examples/ff-pm/flow-over-square-2d/ffproblem-reversed.hh similarity index 85% rename from test/partitioned/flow-over-square-2d/ffproblem-reversed.hh rename to examples/ff-pm/flow-over-square-2d/ffproblem-reversed.hh index a8525a4..5b31c62 100644 --- a/test/partitioned/flow-over-square-2d/ffproblem-reversed.hh +++ b/examples/ff-pm/flow-over-square-2d/ffproblem-reversed.hh @@ -23,10 +23,6 @@ #ifndef DUMUX_STOKES_SUBPROBLEM_HH #define DUMUX_STOKES_SUBPROBLEM_HH -#ifndef ENABLEMONOLITHIC -#define ENABLEMONOLITHIC 0 -#endif - #include #if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 4 #include @@ -128,18 +124,7 @@ class StokesSubProblem : public NavierStokesProblem using FluidSystem = GetPropType; -#if ENABLEMONOLITHIC - using CouplingManager = GetPropType; -#endif - - public: -#if ENABLEMONOLITHIC - StokesSubProblem(std::shared_ptr gridGeometry, - std::shared_ptr couplingManager) - : ParentType(gridGeometry, "Stokes"), - eps_(1e-6), - couplingManager_(couplingManager) -#else +public: StokesSubProblem(std::shared_ptr gridGeometry) : ParentType(gridGeometry, "FreeFlow"), eps_(1e-6), @@ -147,7 +132,6 @@ class StokesSubProblem : public NavierStokesProblem pressureId_(0), velocityId_(0), dataIdsWereSet_(false) -#endif { deltaP_ = getParamFromGroup(this->paramGroup(), "Problem.PressureDifference"); @@ -158,12 +142,14 @@ class StokesSubProblem : public NavierStokesProblem */ // \{ +#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR < 5 /*! * \brief Return the temperature within the domain in [K]. * * This problem assumes a temperature of 10 degrees Celsius. */ Scalar temperature() const { return 273.15 + 10; } // 10°C +#endif /*! * \brief Return the sources within the domain. @@ -201,23 +187,12 @@ class StokesSubProblem : public NavierStokesProblem values.setDirichlet(Indices::pressureIdx); } // coupling interface -#if ENABLEMONOLITHIC - else if (couplingManager().isCoupledEntity(CouplingManager::stokesIdx, - scvf)) { - values.setCouplingNeumann(Indices::conti0EqIdx); - values.setCouplingNeumann(Indices::momentumYBalanceIdx); - values.setBeaversJoseph(Indices::momentumXBalanceIdx); - } -#else - else if (couplingInterface_.isCoupledEntity(faceId)) { assert(dataIdsWereSet_); values.setDirichlet(Indices::velocityYIdx); values.setBeaversJoseph(Indices::momentumXBalanceIdx); - } -#endif - else { + } else { values.setDirichlet(Indices::velocityXIdx); values.setDirichlet(Indices::velocityYIdx); } @@ -264,17 +239,6 @@ class StokesSubProblem : public NavierStokesProblem { NumEqVector values(0.0); -#if ENABLEMONOLITHIC - if (couplingManager().isCoupledEntity(CouplingManager::stokesIdx, - scvf)) { - values[Indices::conti0EqIdx] = - couplingManager().couplingData().massCouplingCondition( - element, fvGeometry, elemVolVars, elemFaceVars, scvf); - values[Indices::momentumYBalanceIdx] = - couplingManager().couplingData().momentumCouplingCondition( - element, fvGeometry, elemVolVars, elemFaceVars, scvf); - } -#else assert(dataIdsWereSet_); const auto faceId = scvf.index(); if (couplingInterface_.isCoupledEntity(faceId)) { @@ -289,18 +253,11 @@ class StokesSubProblem : public NavierStokesProblem faceId) - initialAtPos(scvf.center())[Indices::pressureIdx]); } -#endif - return values; } // \} -#if ENABLEMONOLITHIC - //! Get the coupling manager - const CouplingManager &couplingManager() const { return *couplingManager_; } -#endif - /*! * \name Volume terms */ @@ -329,12 +286,7 @@ class StokesSubProblem : public NavierStokesProblem Scalar permeability(const Element &element, const SubControlVolumeFace &scvf) const { -#if ENABLEMONOLITHIC - return couplingManager().couplingData().darcyPermeability(element, - scvf); -#else return 1e-10; // TODO transfer information or just use constant value -#endif } /*! @@ -342,14 +294,7 @@ class StokesSubProblem : public NavierStokesProblem */ Scalar alphaBJ(const SubControlVolumeFace &scvf) const { -#if ENABLEMONOLITHIC - return couplingManager() - .problem(CouplingManager::darcyIdx) - .spatialParams() - .beaversJosephCoeffAtPos(scvf.center()); -#else - return 1.0; // TODO transfer information or just use constant value -#endif + return 1.0; // TODO transfer information or just use constant value } /*! @@ -362,7 +307,11 @@ class StokesSubProblem : public NavierStokesProblem using std::sqrt; const Scalar dPdX = -deltaP_ / (this->gridGeometry().bBoxMax()[0] - this->gridGeometry().bBoxMin()[0]); +#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR > 4 + static const Scalar mu = FluidSystem::viscosity(273.15 + 10, 1e5); +#else static const Scalar mu = FluidSystem::viscosity(temperature(), 1e5); +#endif static const Scalar alpha = getParam("Darcy.SpatialParams.AlphaBeaversJoseph"); static const Scalar K = @@ -400,18 +349,16 @@ class StokesSubProblem : public NavierStokesProblem return analyticalVelocityX_; } -#if !ENABLEMONOLITHIC void updatePreciceDataIds() { pressureId_ = couplingInterface_.getIdFromName("Pressure"); velocityId_ = couplingInterface_.getIdFromName("Velocity"); dataIdsWereSet_ = true; } -#endif // \} - private: +private: bool onLeftBoundary_(const GlobalPosition &globalPos) const { return globalPos[0] < this->gridGeometry().bBoxMin()[0] + eps_; @@ -435,14 +382,10 @@ class StokesSubProblem : public NavierStokesProblem Scalar eps_; Scalar deltaP_; -#if ENABLEMONOLITHIC - std::shared_ptr couplingManager_; -#else Dumux::Precice::CouplingAdapter &couplingInterface_; size_t pressureId_; size_t velocityId_; bool dataIdsWereSet_; -#endif mutable std::vector analyticalVelocityX_; }; diff --git a/test/partitioned/flow-over-square-2d/main_ff.cc b/examples/ff-pm/flow-over-square-2d/main_ff.cc similarity index 97% rename from test/partitioned/flow-over-square-2d/main_ff.cc rename to examples/ff-pm/flow-over-square-2d/main_ff.cc index 08cccc7..849e631 100644 --- a/test/partitioned/flow-over-square-2d/main_ff.cc +++ b/examples/ff-pm/flow-over-square-2d/main_ff.cc @@ -182,7 +182,11 @@ try { GetPropType; auto freeFlowGridGeometry = std::make_shared(freeFlowGridView); +#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 5 + freeFlowGridGeometry->update(freeFlowGridManager.grid().leafGridView()); +#else freeFlowGridGeometry->update(); +#endif // the problem (initial and boundary conditions) using FreeFlowProblem = GetPropType; @@ -247,8 +251,10 @@ try { "FreeFlowMesh", numberOfPoints, coords); couplingInterface.createIndexMapping(coupledScvfIndices); - const auto velocityId = couplingInterface.announceQuantity("Velocity"); - const auto pressureId = couplingInterface.announceQuantity("Pressure"); + const auto velocityId = + couplingInterface.announceScalarQuantity("Velocity"); + const auto pressureId = + couplingInterface.announceScalarQuantity("Pressure"); freeFlowProblem->updatePreciceDataIds(); diff --git a/test/partitioned/flow-over-square-2d/main_pm.cc b/examples/ff-pm/flow-over-square-2d/main_pm.cc similarity index 98% rename from test/partitioned/flow-over-square-2d/main_pm.cc rename to examples/ff-pm/flow-over-square-2d/main_pm.cc index 0bfcf95..415111b 100644 --- a/test/partitioned/flow-over-square-2d/main_pm.cc +++ b/examples/ff-pm/flow-over-square-2d/main_pm.cc @@ -226,7 +226,11 @@ try { using DarcyGridGeometry = GetPropType; auto darcyGridGeometry = std::make_shared(darcyGridView); +#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 5 + darcyGridGeometry->update(darcyGridManager.grid().leafGridView()); +#else darcyGridGeometry->update(); +#endif using DarcyProblem = GetPropType; auto darcyProblem = std::make_shared(darcyGridGeometry); @@ -286,8 +290,10 @@ try { "DarcyMesh", numberOfPoints, coords); couplingInterface.createIndexMapping(coupledScvfIndices); - const auto velocityId = couplingInterface.announceQuantity("Velocity"); - const auto pressureId = couplingInterface.announceQuantity("Pressure"); + const auto velocityId = + couplingInterface.announceScalarQuantity("Velocity"); + const auto pressureId = + couplingInterface.announceScalarQuantity("Pressure"); darcyProblem->updatePreciceDataIds(); diff --git a/test/partitioned/flow-over-square-2d/params-navierstokesdarcy.input b/examples/ff-pm/flow-over-square-2d/params-navierstokesdarcy.input similarity index 89% rename from test/partitioned/flow-over-square-2d/params-navierstokesdarcy.input rename to examples/ff-pm/flow-over-square-2d/params-navierstokesdarcy.input index 283a51b..015ab34 100644 --- a/test/partitioned/flow-over-square-2d/params-navierstokesdarcy.input +++ b/examples/ff-pm/flow-over-square-2d/params-navierstokesdarcy.input @@ -16,13 +16,13 @@ Cells = 40 40 Grading1 = 1 [FreeFlow.Problem] -Name = navierstokes-iterative +Name = ff-pm-2d-precice-navierstokes EnableInertiaTerms = true PressureDifference = 1e-4 [Darcy.Problem] -Name = darcy-iterative +Name = ff-pm-2d-precice-darcy InitialP = 0.0e-9 [Darcy.SpatialParams] diff --git a/test/partitioned/flow-over-square-2d/params-stokesdarcy.input b/examples/ff-pm/flow-over-square-2d/params-stokesdarcy.input similarity index 85% rename from test/partitioned/flow-over-square-2d/params-stokesdarcy.input rename to examples/ff-pm/flow-over-square-2d/params-stokesdarcy.input index 00288db..7b1ef31 100644 --- a/test/partitioned/flow-over-square-2d/params-stokesdarcy.input +++ b/examples/ff-pm/flow-over-square-2d/params-stokesdarcy.input @@ -16,15 +16,15 @@ Cells = 40 40 Grading1 = 1 [FreeFlow.Problem] -Name = stokes-iterative +Name = ff-pm-2d-precice-stokes EnableInertiaTerms = false -#Name = navier-stokes-iterative +#Name = ff-pm-2d-precice-navierstokes #EnableInertiaTerms = true PressureDifference = 1e-2 [Darcy.Problem] -Name = darcy-iterative +Name = ff-pm-2d-precice-darcy InitialP = 0.0e-9 [Darcy.SpatialParams] diff --git a/test/partitioned/flow-over-square-2d/pmproblem-reversed.hh b/examples/ff-pm/flow-over-square-2d/pmproblem-reversed.hh similarity index 88% rename from test/partitioned/flow-over-square-2d/pmproblem-reversed.hh rename to examples/ff-pm/flow-over-square-2d/pmproblem-reversed.hh index 2fb35cd..43af5d3 100644 --- a/test/partitioned/flow-over-square-2d/pmproblem-reversed.hh +++ b/examples/ff-pm/flow-over-square-2d/pmproblem-reversed.hh @@ -24,10 +24,6 @@ #ifndef DUMUX_DARCY_SUBPROBLEM_HH #define DUMUX_DARCY_SUBPROBLEM_HH -#ifndef ENABLEMONOLITHIC -#define ENABLEMONOLITHIC 0 -#endif - #include #if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 4 @@ -122,18 +118,7 @@ class DarcySubProblem : public PorousMediumFlowProblem using Element = typename GridView::template Codim<0>::Entity; using GlobalPosition = typename Element::Geometry::GlobalCoordinate; -#if ENABLEMONOLITHIC - using CouplingManager = GetPropType; -#endif - - public: -#if ENABLEMONOLITHIC - DarcySubProblem(std::shared_ptr fvGridGeometry, - std::shared_ptr couplingManager) - : ParentType(fvGridGeometry, "Darcy"), - eps_(1e-7), - couplingManager_(couplingManager) -#else +public: DarcySubProblem(std::shared_ptr fvGridGeometry) : ParentType(fvGridGeometry, "Darcy"), eps_(1e-7), @@ -141,7 +126,6 @@ class DarcySubProblem : public PorousMediumFlowProblem pressureId_(0), velocityId_(0), dataIdsWereSet_(false) -#endif { } @@ -150,13 +134,14 @@ class DarcySubProblem : public PorousMediumFlowProblem */ // \{ +#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR < 5 /*! * \brief Return the temperature within the domain in [K]. * */ Scalar temperature() const { return 273.15 + 10; } // 10°C // \} - +#endif /*! * \name Boundary conditions */ @@ -177,15 +162,9 @@ class DarcySubProblem : public PorousMediumFlowProblem // set Neumann BCs to all boundaries first values.setAllNeumann(); -#if ENABLEMONOLITHIC - // set the coupling boundary condition at the interface - if (couplingManager().isCoupledEntity(CouplingManager::darcyIdx, scvf)) - values.setAllCouplingNeumann(); -#else const auto faceId = scvf.index(); if (couplingInterface_.isCoupledEntity(faceId)) values.setAllDirichlet(); -#endif return values; } @@ -233,16 +212,6 @@ class DarcySubProblem : public PorousMediumFlowProblem { // no-flow everywhere ... NumEqVector values(0.0); - -#if ENABLEMONOLITHIC - // ... except at the coupling interface - if (couplingManager().isCoupledEntity(CouplingManager::darcyIdx, scvf)) - values[Indices::conti0EqIdx] = - couplingManager().couplingData().massCouplingCondition( - element, fvGeometry, elemVolVars, scvf); -#else -// Nothing -#endif return values; } @@ -289,21 +258,14 @@ class DarcySubProblem : public PorousMediumFlowProblem // \} -#if !ENABLEMONOLITHIC void updatePreciceDataIds() { pressureId_ = couplingInterface_.getIdFromName("Pressure"); velocityId_ = couplingInterface_.getIdFromName("Velocity"); dataIdsWereSet_ = true; } -#endif -#if ENABLEMONOLITHIC - //! Get the coupling manager - const CouplingManager &couplingManager() const { return *couplingManager_; } -#endif - - private: +private: bool onLeftBoundary_(const GlobalPosition &globalPos) const { return globalPos[0] < this->fvGridGeometry().bBoxMin()[0] + eps_; @@ -326,15 +288,10 @@ class DarcySubProblem : public PorousMediumFlowProblem Scalar eps_; -#if ENABLEMONOLITHIC - std::shared_ptr couplingManager_; -#else Dumux::Precice::CouplingAdapter &couplingInterface_; size_t pressureId_; size_t velocityId_; bool dataIdsWereSet_; - -#endif }; } // namespace Dumux diff --git a/test/partitioned/flow-over-square-2d/precice-config-pi.xml b/examples/ff-pm/flow-over-square-2d/precice-config-pi.xml similarity index 100% rename from test/partitioned/flow-over-square-2d/precice-config-pi.xml rename to examples/ff-pm/flow-over-square-2d/precice-config-pi.xml diff --git a/test/partitioned/flow-over-square-2d/precice-config-si-free-flow-first.xml b/examples/ff-pm/flow-over-square-2d/precice-config-si-free-flow-first.xml similarity index 100% rename from test/partitioned/flow-over-square-2d/precice-config-si-free-flow-first.xml rename to examples/ff-pm/flow-over-square-2d/precice-config-si-free-flow-first.xml diff --git a/test/partitioned/flow-over-square-2d/precice-config-si-free-flow-second.xml b/examples/ff-pm/flow-over-square-2d/precice-config-si-free-flow-second.xml similarity index 100% rename from test/partitioned/flow-over-square-2d/precice-config-si-free-flow-second.xml rename to examples/ff-pm/flow-over-square-2d/precice-config-si-free-flow-second.xml diff --git a/test/partitioned/flow-over-square-2d/run-iterative-simulation-test.sh b/examples/ff-pm/flow-over-square-2d/run-iterative-simulation-test.sh similarity index 100% rename from test/partitioned/flow-over-square-2d/run-iterative-simulation-test.sh rename to examples/ff-pm/flow-over-square-2d/run-iterative-simulation-test.sh diff --git a/examples/ff-pm/monolithic/CMakeLists.txt b/examples/ff-pm/monolithic/CMakeLists.txt deleted file mode 100644 index 65032ec..0000000 --- a/examples/ff-pm/monolithic/CMakeLists.txt +++ /dev/null @@ -1,7 +0,0 @@ -# Monolithic test cases - -# 2D cases -add_subdirectory(td-ff-pm-2d-chaabani) # Chaabani et al. - -# 3D cases -add_subdirectory(flow-over-step-3d) # Chaabani et al. diff --git a/examples/ff-pm/monolithic/flow-over-step-3d/CMakeLists.txt b/examples/ff-pm/monolithic/flow-over-step-3d/CMakeLists.txt deleted file mode 100644 index d2ba4b6..0000000 --- a/examples/ff-pm/monolithic/flow-over-step-3d/CMakeLists.txt +++ /dev/null @@ -1,23 +0,0 @@ -add_executable(flow-over-step-3d EXCLUDE_FROM_ALL main.cc) - -# add a symlink for each input file -add_input_file_links() - - -#dune_add_test(NAME test_flow-over-step-3d -# TARGET flow-over-step-3d -# LABELS ff-pm stokes monolithic darcy -# TIMEOUT 10 -# CMAKE_GUARD HAVE_UMFPACK -# COMMAND ${CMAKE_SOURCE_DIR}/test/runtest.py -# CMD_ARGS --script fuzzy -# --files ${CMAKE_SOURCE_DIR}/test/coupling-ff-pm/monolithic/flow-over-step-3d/ref-sol-stokes-flow-over-step-3d.vtu -# ${CMAKE_CURRENT_BINARY_DIR}/flow-over-step-3d_stokes-00001.vtu -# ${CMAKE_SOURCE_DIR}/test/coupling-ff-pm/monolithic/flow-over-step-3d/ref-sol-darcy-flow-over-step-3d.vtu -# ${CMAKE_CURRENT_BINARY_DIR}/flow-over-step-3d_darcy-00001.vtu -# --command "${CMAKE_CURRENT_BINARY_DIR}/flow-over-step-3d ${CMAKE_SOURCE_DIR}/test/coupling-ff-pm/monolithic/flow-over-step-3d/ref-flow-over-step-3d.input" -# --relative 1e-6 -# --zeroThreshold {"velocity_liq \(m/s\)":1e-6,"p":1e-8} -#) -#set_tests_properties(test_flow-over-step-3d PROPERTIES -# ENVIRONMENT PYTHONPATH=${CMAKE_SOURCE_DIR}/../dumux/bin/testing:$ENV{PYTHONPATH}) diff --git a/examples/ff-pm/monolithic/flow-over-step-3d/freeflowsubproblem.hh b/examples/ff-pm/monolithic/flow-over-step-3d/freeflowsubproblem.hh deleted file mode 100644 index bf0576c..0000000 --- a/examples/ff-pm/monolithic/flow-over-step-3d/freeflowsubproblem.hh +++ /dev/null @@ -1,331 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 2 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \brief The free flow sub problem - */ -#ifndef DUMUX_STOKES_SUBPROBLEM_HH -#define DUMUX_STOKES_SUBPROBLEM_HH - -#include -#include -#include - -#include - -namespace Dumux -{ -/*! - * \brief The free flow sub problem - */ -template -class FreeFlowSubProblem : public NavierStokesProblem -{ - using ParentType = NavierStokesProblem; - - using GridView = - typename GetPropType::GridView; - using Scalar = GetPropType; - - using Indices = - typename GetPropType::Indices; - - using BoundaryTypes = Dumux::NavierStokesBoundaryTypes< - GetPropType::numEq()>; - - using FVGridGeometry = GetPropType; - using FVElementGeometry = typename FVGridGeometry::LocalView; - using SubControlVolumeFace = - typename FVElementGeometry::SubControlVolumeFace; - using Element = typename GridView::template Codim<0>::Entity; - - using GlobalPosition = typename Element::Geometry::GlobalCoordinate; - - using PrimaryVariables = GetPropType; - using NumEqVector = GetPropType; - using FluidSystem = GetPropType; - - using CouplingManager = GetPropType; - -public: - FreeFlowSubProblem(std::shared_ptr fvGridGeometry, - std::shared_ptr couplingManager) - : ParentType(fvGridGeometry, "Stokes"), - eps_(1e-6), - couplingManager_(couplingManager) - { - deltaP_ = getParamFromGroup(this->paramGroup(), - "Problem.PressureDifference"); - } - - /*! - * \name Problem parameters - */ - // \{ - - /*! - * \brief Return the temperature within the domain in [K]. - * - * This problem assumes a temperature of 10 degrees Celsius. - */ - Scalar temperature() const { return 273.15 + 10; } // 10°C - - /*! - * \brief Return the sources within the domain. - * - * \param globalPos The global position - */ - NumEqVector sourceAtPos(const GlobalPosition &globalPos) const - { - return NumEqVector(0.0); - } - // \} - - /*! - * \name Boundary conditions - */ - // \{ - - /*! - * \brief Specifies which kind of boundary condition should be - * used for which equation on a given boundary segment. - * - * \param element The finite element - * \param scvf The sub control volume face - */ - BoundaryTypes boundaryTypes(const Element &element, - const SubControlVolumeFace &scvf) const - { - BoundaryTypes values; - - const auto &globalPos = scvf.dofPosition(); - - if (onLeftBoundary_(globalPos) || onRightBoundary_(globalPos)) { - //values.setDirichlet(Indices::pressureIdx); - values.setDirichlet(Indices::velocityXIdx); - values.setDirichlet(Indices::velocityYIdx); - values.setDirichlet(Indices::velocityZIdx); - } else { - values.setDirichlet(Indices::velocityXIdx); - values.setDirichlet(Indices::velocityYIdx); - values.setDirichlet(Indices::velocityZIdx); - } - - if (couplingManager().isCoupledEntity(CouplingManager::stokesIdx, - scvf)) { - values.setCouplingNeumann(Indices::conti0EqIdx); - //consider orientation of face automatically - values.setCouplingNeumann(scvf.directionIndex()); - - // set the Beaver-Joseph-Saffman slip condition for the tangential momentum balance equation, - // consider orientation of face automatically - values.setBeaversJoseph(1 - scvf.directionIndex()); - } - - return values; - } - - /*! - * \brief Evaluate the boundary conditions for a Dirichlet control volume. - * - * \param globalPos The global position - */ - PrimaryVariables dirichletAtPos(const GlobalPosition &globalPos) const - { - PrimaryVariables values(0.0); - values = initialAtPos(globalPos); - - return values; - } - - /*! - * \brief Evaluate the boundary conditions for a Neumann control volume. - * - * \param element The element for which the Neumann boundary condition is set - * \param fvGeomentry The fvGeometry - * \param elemVolVars The element volume variables - * \param elemFaceVars The element face variables - * \param scvf The boundary sub control volume face - */ - template - NumEqVector neumann(const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &elemVolVars, - const ElementFaceVariables &elemFaceVars, - const SubControlVolumeFace &scvf) const - { - NumEqVector values(0.0); - - if (couplingManager().isCoupledEntity(CouplingManager::stokesIdx, - scvf)) { - values[Indices::conti0EqIdx] = - couplingManager().couplingData().massCouplingCondition( - element, fvGeometry, elemVolVars, elemFaceVars, scvf); - values[scvf.directionIndex()] = - couplingManager().couplingData().momentumCouplingCondition( - element, fvGeometry, elemVolVars, elemFaceVars, scvf); - } - return values; - } - - // \} - - //! Set the coupling manager - void setCouplingManager(std::shared_ptr cm) - { - couplingManager_ = cm; - } - - //! Get the coupling manager - const CouplingManager &couplingManager() const { return *couplingManager_; } - - /*! - * \name Volume terms - */ - // \{ - - /*! - * \brief Evaluate the initial value for a control volume. - * - * \param globalPos The global position - */ - PrimaryVariables initialAtPos(const GlobalPosition &globalPos) const - { - PrimaryVariables values(0.0); - // set fixed pressures on the left and right boundary - if (onLeftBoundary_(globalPos)) { - //values[Indices::pressureIdx] = deltaP_; - values[Indices::velocityXIdx] = - 0.25 * (globalPos[1] - 1.0) * (2.0 - globalPos[1]); - values[Indices::velocityYIdx] = 0.; - } - - if (onRightBoundary_(globalPos)) { - //values[Indices::pressureIdx] = 0.0; - constexpr double factor = 1.0 / 16.0; - values[Indices::velocityXIdx] = - factor * (globalPos[1] - 0.5) * (2. - globalPos[1]); - values[Indices::velocityYIdx] = 0.; - } - return values; - } - - /*! - * \brief Returns the intrinsic permeability of required as input parameter for the Beavers-Joseph-Saffman boundary condition - */ - Scalar permeability(const Element &element, - const SubControlVolumeFace &scvf) const - { - return couplingManager().couplingData().darcyPermeability(element, - scvf); - } - - /*! - * \brief Returns the alpha value required as input parameter for the Beavers-Joseph-Saffman boundary condition - */ - Scalar alphaBJ(const SubControlVolumeFace &scvf) const - { - return couplingManager() - .problem(CouplingManager::darcyIdx) - .spatialParams() - .beaversJosephCoeffAtPos(scvf.center()); - } - - /*! - * \brief calculate the analytical velocity in x direction based on Beavers & Joseph (1967) - */ - void calculateAnalyticalVelocityX() const - { - analyticalVelocityX_.resize(this->gridGeometry().gridView().size(0)); - - using std::sqrt; - const Scalar dPdX = -deltaP_ / (this->gridGeometry().bBoxMax()[0] - - this->gridGeometry().bBoxMin()[0]); - static const Scalar mu = FluidSystem::viscosity(temperature(), 1e5); - static const Scalar alpha = - getParam("Darcy.SpatialParams.AlphaBeaversJoseph"); - static const Scalar K = - getParam("Darcy.SpatialParams.Permeability"); - static const Scalar sqrtK = sqrt(K); - const Scalar sigma = (this->gridGeometry().bBoxMax()[1] - - this->gridGeometry().bBoxMin()[1]) / - sqrtK; - - const Scalar uB = - -K / (2.0 * mu) * - ((sigma * sigma + 2.0 * alpha * sigma) / (1.0 + alpha * sigma)) * - dPdX; - - for (const auto &element : elements(this->gridGeometry().gridView())) { - const auto eIdx = - this->gridGeometry().gridView().indexSet().index(element); - const Scalar y = element.geometry().center()[1] - - this->gridGeometry().bBoxMin()[1]; - - const Scalar u = - uB * (1.0 + alpha / sqrtK * y) + - 1.0 / (2.0 * mu) * (y * y + 2 * alpha * y * sqrtK) * dPdX; - analyticalVelocityX_[eIdx] = u; - } - } - - /*! - * \brief Get the analytical velocity in x direction - */ - const std::vector &getAnalyticalVelocityX() const - { - if (analyticalVelocityX_.empty()) - calculateAnalyticalVelocityX(); - return analyticalVelocityX_; - } - - // \} - -private: - bool onLeftBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[0] < this->gridGeometry().bBoxMin()[0] + eps_; - } - - bool onRightBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[0] > this->gridGeometry().bBoxMax()[0] - eps_; - } - - bool onLowerBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[1] < this->gridGeometry().bBoxMin()[1] + eps_; - } - - bool onUpperBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[1] > this->gridGeometry().bBoxMax()[1] - eps_; - } - - Scalar eps_; - Scalar deltaP_; - - std::shared_ptr couplingManager_; - - mutable std::vector analyticalVelocityX_; -}; - -} //end namespace Dumux - -#endif diff --git a/examples/ff-pm/monolithic/flow-over-step-3d/main.cc b/examples/ff-pm/monolithic/flow-over-step-3d/main.cc deleted file mode 100644 index 6380576..0000000 --- a/examples/ff-pm/monolithic/flow-over-step-3d/main.cc +++ /dev/null @@ -1,242 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 2 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * - * \brief A test problem for the coupled Stokes/Darcy problem (1p) - */ -#include - -#include - -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -#include - -#include "properties.hh" - -int main(int argc, char **argv) -{ - using namespace Dumux; - - // initialize MPI, finalize is done automatically on exit - const auto &mpiHelper = Dune::MPIHelper::instance(argc, argv); - - // print dumux start message - if (mpiHelper.rank() == 0) - DumuxMessage::print(/*firstCall=*/true); - - // parse command line arguments and input file - Parameters::init(argc, argv); - - // Define the sub problem type tags - using StokesTypeTag = Properties::TTag::StokesOneP; - using DarcyTypeTag = Properties::TTag::DarcyOneP; - - // use dune-subgrid to create the individual grids - static constexpr int dim = 2; - using HostGrid = - Dune::YaspGrid<2, Dune::TensorProductCoordinates>; - using HostGridManager = Dumux::GridManager; - HostGridManager hostGridManager; - hostGridManager.init(); - auto &hostGrid = hostGridManager.grid(); - - struct Params { - double amplitude = getParam("Grid.Amplitude"); - double baseline = getParam("Grid.Baseline"); - double offset = getParam("Grid.Offset"); - double scaling = getParam("Grid.Scaling"); - }; - - Params params; - - auto elementSelectorStokes = [&](const auto &element) { - //double interface = params.amplitude * std::sin(( element.geometry().center()[0] -params.offset) / params.scaling * 2.0 * M_PI) + params.baseline; - //return element.geometry().center()[1] > interface; - return element.geometry().center()[1] > 1.0 || - (element.geometry().center()[0] > 0.5 && - element.geometry().center()[1] > 0.5); - }; - - auto elementSelectorDarcy = [&](const auto &element) { - //double interface = params.amplitude * std::sin(( element.geometry().center()[0] - params.offset) / params.scaling * 2.0 * M_PI) + params.baseline; - //return element.geometry().center()[1] < interface; - return element.geometry().center()[1] < 0.5 || - (element.geometry().center()[0] < 0.5 && - element.geometry().center()[1] < 1.0); - }; - - using SubGrid = Dune::SubGrid; - - Dumux::GridManager subGridManagerStokes; - Dumux::GridManager subGridManagerDarcy; - - // initialize subgrids - subGridManagerStokes.init(hostGrid, elementSelectorStokes, "Stokes"); - subGridManagerDarcy.init(hostGrid, elementSelectorDarcy, "Darcy"); - - // we compute on the leaf grid view - const auto &darcyGridView = subGridManagerDarcy.grid().leafGridView(); - const auto &stokesGridView = subGridManagerStokes.grid().leafGridView(); - - // create the finite volume grid geometry - using StokesFVGridGeometry = - GetPropType; - auto stokesFvGridGeometry = - std::make_shared(stokesGridView); - stokesFvGridGeometry->update(); - using DarcyFVGridGeometry = - GetPropType; - auto darcyFvGridGeometry = - std::make_shared(darcyGridView); - darcyFvGridGeometry->update(); - - using Traits = - StaggeredMultiDomainTraits; - - // the coupling manager - using CouplingManager = StokesDarcyCouplingManager; - auto couplingManager = std::make_shared( - stokesFvGridGeometry, darcyFvGridGeometry); - - // the indices - constexpr auto stokesCellCenterIdx = CouplingManager::stokesCellCenterIdx; - constexpr auto stokesFaceIdx = CouplingManager::stokesFaceIdx; - constexpr auto darcyIdx = CouplingManager::darcyIdx; - - // the problem (initial and boundary conditions) - using StokesProblem = GetPropType; - auto stokesProblem = - std::make_shared(stokesFvGridGeometry, couplingManager); - using DarcyProblem = GetPropType; - auto darcyProblem = - std::make_shared(darcyFvGridGeometry, couplingManager); - - // the solution vector - Traits::SolutionVector sol; - sol[stokesCellCenterIdx].resize(stokesFvGridGeometry->numCellCenterDofs()); - sol[stokesFaceIdx].resize(stokesFvGridGeometry->numFaceDofs()); - sol[darcyIdx].resize(darcyFvGridGeometry->numDofs()); - - auto stokesSol = partial(sol, stokesFaceIdx, stokesCellCenterIdx); - - stokesProblem->applyInitialSolution(stokesSol); - darcyProblem->applyInitialSolution(sol[darcyIdx]); - - couplingManager->init(stokesProblem, darcyProblem, sol); - - // the grid variables - using StokesGridVariables = - GetPropType; - auto stokesGridVariables = std::make_shared( - stokesProblem, stokesFvGridGeometry); - stokesGridVariables->init(stokesSol); - using DarcyGridVariables = - GetPropType; - auto darcyGridVariables = - std::make_shared(darcyProblem, darcyFvGridGeometry); - darcyGridVariables->init(sol[darcyIdx]); - - // intialize the vtk output module - const auto stokesName = - getParam("Problem.Name") + "_" + stokesProblem->name(); - const auto darcyName = - getParam("Problem.Name") + "_" + darcyProblem->name(); - - StaggeredVtkOutputModule - stokesVtkWriter(*stokesGridVariables, stokesSol, stokesName); - GetPropType::initOutputModule( - stokesVtkWriter); - - stokesVtkWriter.addField(stokesProblem->getAnalyticalVelocityX(), - "analyticalV_x"); - - stokesVtkWriter.write(0.0); - - VtkOutputModule> - darcyVtkWriter(*darcyGridVariables, sol[darcyIdx], darcyName); - using DarcyVelocityOutput = - GetPropType; - darcyVtkWriter.addVelocityOutput( - std::make_shared(*darcyGridVariables)); - GetPropType::initOutputModule( - darcyVtkWriter); - darcyVtkWriter.write(0.0); - - // the assembler for a stationary problem - using Assembler = - MultiDomainFVAssembler; - auto assembler = std::make_shared( - std::make_tuple(stokesProblem, stokesProblem, darcyProblem), - std::make_tuple(stokesFvGridGeometry->faceFVGridGeometryPtr(), - stokesFvGridGeometry->cellCenterFVGridGeometryPtr(), - darcyFvGridGeometry), - std::make_tuple(stokesGridVariables->faceGridVariablesPtr(), - stokesGridVariables->cellCenterGridVariablesPtr(), - darcyGridVariables), - couplingManager); - - // the linear solver - using LinearSolver = UMFPackBackend; - auto linearSolver = std::make_shared(); - - // the non-linear solver - using NewtonSolver = - MultiDomainNewtonSolver; - NewtonSolver nonLinearSolver(assembler, linearSolver, couplingManager); - - // solve the non-linear system - nonLinearSolver.solve(sol); - - // write vtk output - stokesVtkWriter.write(1.0); - darcyVtkWriter.write(1.0); - - //////////////////////////////////////////////////////////// - // finalize, print dumux message to say goodbye - //////////////////////////////////////////////////////////// - - // print dumux end message - if (mpiHelper.rank() == 0) { - Parameters::print(); - DumuxMessage::print(/*firstCall=*/false); - } - - return 0; -} // end main diff --git a/examples/ff-pm/monolithic/flow-over-step-3d/params.input b/examples/ff-pm/monolithic/flow-over-step-3d/params.input deleted file mode 100644 index d9b1a1f..0000000 --- a/examples/ff-pm/monolithic/flow-over-step-3d/params.input +++ /dev/null @@ -1,46 +0,0 @@ - # for dune-subgrid - [Grid] -Positions0 = 0 0.5 1 -Positions1 = 0 0.5 1.0 2.0 -Cells0 = 20 20 -Cells1 = 20 20 40 -Baseline = 1.0 # [m] -Amplitude = 0.04 # [m] -Offset = 0.5 # [m] -Scaling = 0.2 #[m] - -[Stokes.Grid] -Verbosity = true -Positions0 = 0.0 1.0 -Positions1 = 1.0 2.0 -Cells0 = 20 -Cells1 = 100 -Grading1 = 1 - -[Darcy.Grid] -Verbosity = true -Positions0 = 0.0 1.0 -Positions1 = 0.0 1.0 -Cells0 = 20 -Cells1 = 20 -Grading1 = 1 - -[Stokes.Problem] -Name = stokes -PressureDifference = 1e-9 -EnableInertiaTerms = false - -[Darcy.Problem] -Name = darcy - -[Darcy.SpatialParams] -Permeability = 1e-6 # m^2 -Porosity = 0.4 -AlphaBeaversJoseph = 1.0 - -[Problem] -Name = flow-over-step-2d -EnableGravity = false - -[Vtk] -AddVelocity = 1 diff --git a/examples/ff-pm/monolithic/flow-over-step-3d/porousmediumsubproblem.hh b/examples/ff-pm/monolithic/flow-over-step-3d/porousmediumsubproblem.hh deleted file mode 100644 index 4039b74..0000000 --- a/examples/ff-pm/monolithic/flow-over-step-3d/porousmediumsubproblem.hh +++ /dev/null @@ -1,238 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 2 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * - * \brief The porous medium flow sub problem - */ -#ifndef DUMUX_DARCY_SUBPROBLEM_HH -#define DUMUX_DARCY_SUBPROBLEM_HH - -#include -#include -#include - -namespace Dumux -{ -/*! - * \brief The porous medium flow sub problem - */ -template -class PorousMediumSubProblem : public PorousMediumFlowProblem -{ - using ParentType = PorousMediumFlowProblem; - using GridView = - typename GetPropType::GridView; - using Scalar = GetPropType; - using PrimaryVariables = GetPropType; - using NumEqVector = GetPropType; - using BoundaryTypes = Dumux::BoundaryTypes< - GetPropType::numEq()>; - using VolumeVariables = GetPropType; - using FVElementGeometry = - typename GetPropType::LocalView; - using SubControlVolume = typename FVElementGeometry::SubControlVolume; - using SubControlVolumeFace = - typename FVElementGeometry::SubControlVolumeFace; - using FVGridGeometry = GetPropType; - using GridVariables = GetPropType; - using ElementFluxVariablesCache = - typename GridVariables::GridFluxVariablesCache::LocalView; - - using Indices = - typename GetPropType::Indices; - - using Element = typename GridView::template Codim<0>::Entity; - using GlobalPosition = typename Element::Geometry::GlobalCoordinate; - - using CouplingManager = GetPropType; - -public: - PorousMediumSubProblem(std::shared_ptr fvGridGeometry, - std::shared_ptr couplingManager) - : ParentType(fvGridGeometry, "Darcy"), - eps_(1e-7), - couplingManager_(couplingManager) - { - } - - /*! - * \name Simulation steering - */ - // \{ - - /*! - * \brief Return the temperature within the domain in [K]. - * - */ - Scalar temperature() const { return 273.15 + 10; } // 10°C - // \} - - /*! - * \name Boundary conditions - */ - // \{ - - /*! - * \brief Specifies which kind of boundary condition should be - * used for which equation on a given boundary control volume. - * - * \param element The element - * \param scvf The boundary sub control volume face - */ - BoundaryTypes boundaryTypes(const Element &element, - const SubControlVolumeFace &scvf) const - { - BoundaryTypes values; - //values.setAllNeumann(); - - const auto &globalPos = scvf.center(); - if (onLowerBoundary_(globalPos)) - values.setAllDirichlet(); - else - values.setAllNeumann(); - - if (couplingManager().isCoupledEntity(CouplingManager::darcyIdx, scvf)) - values.setAllCouplingNeumann(); - - return values; - } - - /*! - * \brief Evaluate the boundary conditions for a Dirichlet control volume. - * - * \param element The element for which the Dirichlet boundary condition is set - * \param scvf The boundary subcontrolvolumeface - * - * For this method, the \a values parameter stores primary variables. - */ - PrimaryVariables dirichlet(const Element &element, - const SubControlVolumeFace &scvf) const - { - PrimaryVariables values(0.0); - values = initial(element); - - return values; - } - - /*! - * \brief Evaluate the boundary conditions for a Neumann control volume. - * - * \param element The element for which the Neumann boundary condition is set - * \param fvGeomentry The fvGeometry - * \param elemVolVars The element volume variables - * \param scvf The boundary sub control volume face - * - * For this method, the \a values variable stores primary variables. - */ - template - NumEqVector neumann(const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &elemVolVars, - const ElementFluxVariablesCache &elemFluxVarsCache, - const SubControlVolumeFace &scvf) const - { - NumEqVector values(0.0); - - if (couplingManager().isCoupledEntity(CouplingManager::darcyIdx, scvf)) - values[Indices::conti0EqIdx] = - couplingManager().couplingData().massCouplingCondition( - element, fvGeometry, elemVolVars, scvf); - - return values; - } - - // \} - - /*! - * \name Volume terms - */ - // \{ - /*! - * \brief Evaluate the source term for all phases within a given - * sub-control-volume. - * - * \param element The element for which the source term is set - * \param fvGeomentry The fvGeometry - * \param elemVolVars The element volume variables - * \param scv The subcontrolvolume - */ - template - NumEqVector source(const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &elemVolVars, - const SubControlVolume &scv) const - { - return NumEqVector(0.0); - } - - // \} - - /*! - * \brief Evaluate the initial value for a control volume. - * - * \param element The element - * - * For this method, the \a priVars parameter stores primary - * variables. - */ - PrimaryVariables initial(const Element &element) const - { - return PrimaryVariables(0.0); - } - - // \} - - //! Set the coupling manager - void setCouplingManager(std::shared_ptr cm) - { - couplingManager_ = cm; - } - - //! Get the coupling manager - const CouplingManager &couplingManager() const { return *couplingManager_; } - -private: - bool onLeftBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[0] < this->gridGeometry().bBoxMin()[0] + eps_; - } - - bool onRightBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[0] > this->gridGeometry().bBoxMax()[0] - eps_; - } - - bool onLowerBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[1] < this->gridGeometry().bBoxMin()[1] + eps_; - } - - bool onUpperBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[1] > this->gridGeometry().bBoxMax()[1] - eps_; - } - - Scalar eps_; - std::shared_ptr couplingManager_; -}; - -} //end namespace Dumux - -#endif diff --git a/examples/ff-pm/monolithic/flow-over-step-3d/properties.hh b/examples/ff-pm/monolithic/flow-over-step-3d/properties.hh deleted file mode 100644 index 9bd6268..0000000 --- a/examples/ff-pm/monolithic/flow-over-step-3d/properties.hh +++ /dev/null @@ -1,145 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 2 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * - * \brief The coupled exercise properties file or the interface case. - */ -#ifndef DUMUX_EXERCISE_COUPLED_INTERFACE_PROPERTIES_HH -#define DUMUX_EXERCISE_COUPLED_INTERFACE_PROPERTIES_HH - -// Both domains -#include -#include -#include - -#include -#include -#include - -// Porous medium flow domain -#include -#include - -#include "1pspatialparams.hh" -#include "porousmediumsubproblem.hh" - -// Free-flow domain -#include -#include - -#include "freeflowsubproblem.hh" - -namespace Dumux::Properties -{ -// Create new type tags -namespace TTag -{ -struct DarcyOneP { - using InheritsFrom = std::tuple; -}; -struct StokesOneP { - using InheritsFrom = std::tuple; -}; -} // end namespace TTag - -// Set the coupling manager -template -struct CouplingManager { - using Traits = StaggeredMultiDomainTraits; - using type = Dumux::StokesDarcyCouplingManager; -}; -template -struct CouplingManager { - using Traits = StaggeredMultiDomainTraits; - using type = Dumux::StokesDarcyCouplingManager; -}; - -// Set the problem property -template -struct Problem { - using type = Dumux::PorousMediumSubProblem; -}; -template -struct Problem { - using type = Dumux::FreeFlowSubProblem; -}; - -// Set the grid type -template -struct Grid { - static constexpr auto dim = 3; - using Scalar = GetPropType; - using TensorGrid = - Dune::YaspGrid>; - - using HostGrid = TensorGrid; - using type = Dune::SubGrid; -}; -template -struct Grid { - static constexpr auto dim = 3; - using Scalar = GetPropType; - using TensorGrid = - Dune::YaspGrid>; - - using HostGrid = TensorGrid; - using type = Dune::SubGrid; -}; - -// the fluid system -template -struct FluidSystem { - using Scalar = GetPropType; - using type = - FluidSystems::OnePLiquid>; -}; -template -struct FluidSystem { - using Scalar = GetPropType; - using type = - FluidSystems::OnePLiquid>; -}; - -template -struct SpatialParams { - using type = OnePSpatialParams, - GetPropType>; -}; - -template -struct EnableGridGeometryCache { - static constexpr bool value = true; -}; -template -struct EnableGridFluxVariablesCache { - static constexpr bool value = true; -}; -template -struct EnableGridVolumeVariablesCache { - static constexpr bool value = true; -}; - -} // end namespace Dumux::Properties - -#endif diff --git a/examples/ff-pm/monolithic/td-ff-pm-2d-chaabani/CMakeLists.txt b/examples/ff-pm/monolithic/td-ff-pm-2d-chaabani/CMakeLists.txt deleted file mode 100644 index 8f42a64..0000000 --- a/examples/ff-pm/monolithic/td-ff-pm-2d-chaabani/CMakeLists.txt +++ /dev/null @@ -1,22 +0,0 @@ - -add_input_file_links() - -add_executable(td-ff-pm-2d-chaabani EXCLUDE_FROM_ALL td-ff-pm-2d-chaabani.cc) - -#dune_add_test(NAME test_td-ff-pm-2d-chaabani -# TARGET fvca-monolithic-reversed -# LABELS ff-pm stokes monolithic darcy -# TIMEOUT 10 -# CMAKE_GUARD HAVE_UMFPACK -# COMMAND ${CMAKE_SOURCE_DIR}/test/runtest.py -# CMD_ARGS --script fuzzy -# --files ${CMAKE_SOURCE_DIR}/test/coupling-ff-pm/reference-solutions/monolithic-new/stokes-final.vtu -# ${CMAKE_CURRENT_BINARY_DIR}/stokes-darcy-monolithic-coupling-test_stokes-00001.vtu -# ${CMAKE_SOURCE_DIR}/test/coupling-ff-pm/reference-solutions/monolithic-new/darcy-final.vtu -# ${CMAKE_CURRENT_BINARY_DIR}/stokes-darcy-monolithic-coupling-test_darcy-00001.vtu -# --command "${CMAKE_CURRENT_BINARY_DIR}/fvca-monolithic-reversed ${CMAKE_SOURCE_DIR}/test/coupling-ff-pm/reference-solutions/monolithic-new/params.input" -# --relative 1e-6 -# --zeroThreshold {"velocity_liq \(m/s\)":1e-14,"p":1e-12} -#) -#set_tests_properties(test_td-ff-pm-2d-chaabani PROPERTIES -# ENVIRONMENT PYTHONPATH=${CMAKE_SOURCE_DIR}/../dumux/bin/testing:$ENV{PYTHONPATH}) \ No newline at end of file diff --git a/examples/ff-pm/monolithic/td-ff-pm-2d-chaabani/problem_darcy.hh b/examples/ff-pm/monolithic/td-ff-pm-2d-chaabani/problem_darcy.hh deleted file mode 100644 index 9bc13bf..0000000 --- a/examples/ff-pm/monolithic/td-ff-pm-2d-chaabani/problem_darcy.hh +++ /dev/null @@ -1,299 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup BoundaryTests - * \brief A simple Darcy test problem (cell-centered finite volume method). - */ - -#ifndef DUMUX_DARCY_SUBPROBLEM_HH -#define DUMUX_DARCY_SUBPROBLEM_HH - -#include - -#include - -#include -#include - -#include "spatialparams.hh" - -#include -#include - -namespace Dumux -{ -template -class DarcySubProblem; - -namespace Properties -{ -// Create new type tags -namespace TTag -{ -struct DarcyOneP { - using InheritsFrom = std::tuple; -}; -} // end namespace TTag - -// Set the problem property -template -struct Problem { - using type = Dumux::DarcySubProblem; -}; - -// the fluid system -template -struct FluidSystem { - using Scalar = GetPropType; - using type = - FluidSystems::OnePLiquid >; -}; - -// Set the grid type -template -struct Grid { - using type = Dune::YaspGrid<2>; -}; - -template -struct SpatialParams { - using GridGeometry = GetPropType; - using Scalar = GetPropType; - using type = OnePSpatialParams; -}; -} // end namespace Properties - -template -class DarcySubProblem : public PorousMediumFlowProblem -{ - using ParentType = PorousMediumFlowProblem; - using GridView = - typename GetPropType::GridView; - using Scalar = GetPropType; - using PrimaryVariables = GetPropType; - using NumEqVector = GetPropType; - using BoundaryTypes = GetPropType; - using VolumeVariables = GetPropType; - using FVElementGeometry = - typename GetPropType::LocalView; - using SubControlVolume = typename FVElementGeometry::SubControlVolume; - using SubControlVolumeFace = - typename FVElementGeometry::SubControlVolumeFace; - using GridGeometry = GetPropType; - - using Indices = - typename GetPropType::Indices; - - using Element = typename GridView::template Codim<0>::Entity; - using GlobalPosition = typename Element::Geometry::GlobalCoordinate; - - using CouplingManager = GetPropType; - -public: - DarcySubProblem(std::shared_ptr gridGeometry, - std::shared_ptr couplingManager) - : ParentType(gridGeometry, "Darcy"), - eps_(1e-7), - time_(0.0), - couplingManager_(couplingManager) - { - problemName_ = - getParam("Vtk.OutputName") + "_" + - getParamFromGroup(this->paramGroup(), "Problem.Name"); - } - - /*! - * \brief The problem name. - */ - const std::string &name() const { return problemName_; } - - /*! - * \name Problem parameters - */ - // \{ - - /*! - * \brief Returns the temperature within the domain in [K]. - * - */ - Scalar temperature() const { return 273.15 + 10; } // 10°C - // \} - - /*! - * \name Boundary conditions - */ - // \{ - - /*! - * \brief Specifies which kind of boundary condition should be - * used for which equation on a given boundary control volume. - * - * \param element The element - * \param scvf The boundary sub control volume face - */ - BoundaryTypes boundaryTypes(const Element &element, - const SubControlVolumeFace &scvf) const - { - BoundaryTypes values; - //values.setAllNeumann(); - values.setAllDirichlet(); - - if (couplingManager().isCoupledEntity(CouplingManager::darcyIdx, scvf)) - values.setAllCouplingDirichlet(); - // values.setAllCouplingNeumann(); - - return values; - } - - /*! - * \brief Evaluates the boundary conditions for a Dirichlet control volume. - * - * \param element The element for which the Dirichlet boundary condition is set - * \param scvf The boundary subcontrolvolumeface - * - * For this method, the \a values parameter stores primary variables. - */ - PrimaryVariables dirichlet(const Element &element, - const SubControlVolumeFace &scvf) const - { - PrimaryVariables values = initial(element); - if (couplingManager().isCoupledEntity(CouplingManager::darcyIdx, - scvf)) { - //const auto& darcyContext = couplingManager().darcyCouplingContext(element, scvf); - //const auto& freeFlowScvf = darcyContext.getStokesScvf(); - //const auto& freeFlowElemVolVars = darcyContext.volVars; - - //using FluxVariables = GetPropType; - //FluxVariables fluxVars; - - //values = couplingManager().couplingData().freeFlowInterfacePressure(element, scvf); - values = couplingManager().couplingData().freeFlowInterfaceStress( - element, scvf); - } - - return values; - } - - /*! - * \brief Evaluates the boundary conditions for a Neumann control volume. - * - * \param element The element for which the Neumann boundary condition is set - * \param fvGeometry The fvGeometry - * \param elemVolVars The element volume variables - * \param elemFluxVarsCache Flux variables caches for all faces in stencil - * \param scvf The boundary sub control volume face - * - * For this method, the \a values variable stores primary variables. - */ - template - NumEqVector neumann(const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &elemVolVars, - const ElementFluxVarsCache &elemFluxVarsCache, - const SubControlVolumeFace &scvf) const - { - NumEqVector values(0.0); - - if (couplingManager().isCoupledEntity(CouplingManager::darcyIdx, scvf)) - values[Indices::conti0EqIdx] = - couplingManager().couplingData().massCouplingCondition( - element, fvGeometry, elemVolVars, scvf); - - return values; - } - - // \} - - /*! - * \name Volume terms - */ - // \{ - /*! - * \brief Evaluates the source term for all phases within a given - * sub control volume. - * - * \param element The element for which the source term is set - * \param fvGeometry The fvGeometry - * \param elemVolVars The element volume variables - * \param scv The sub control volume - */ - template - NumEqVector source(const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &elemVolVars, - const SubControlVolume &scv) const - { - return NumEqVector(0.0); - } - - // \} - - /*! - * \brief Evaluates the initial value for a control volume. - * - * \param element The element - * - * For this method, the \a priVars parameter stores primary - * variables. - */ - PrimaryVariables initial(const Element &element) const - { - //return PrimaryVariables(0.0); - return getExactSolution(element.geometry().center()); - } - - // \} - - //! Get the coupling manager - const CouplingManager &couplingManager() const { return *couplingManager_; } - - void setTime(const Scalar time) { time_ = time; } - - PrimaryVariables getExactSolution(const GlobalPosition &globalPos) const - { - PrimaryVariables values(0.0); - - values[Indices::pressureIdx] = pressureAt(time_, globalPos); - - return values; - } - -private: - Scalar pressureAt(const Scalar time, const GlobalPosition &globalPos) const - { - const auto x = globalPos[0]; - const auto y = globalPos[1]; - return (-std::pow(x, 2) * y + x * y + std::pow(y, 2)) * - std::cos(M_PI * time); - }; - - bool onLowerBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[1] < this->gridGeometry().bBoxMin()[1] + eps_; - } - - Scalar eps_; - Scalar time_; - std::shared_ptr couplingManager_; - std::string problemName_; -}; -} // end namespace Dumux - -#endif //DUMUX_DARCY_SUBPROBLEM_HH diff --git a/examples/ff-pm/monolithic/td-ff-pm-2d-chaabani/problem_stokes.hh b/examples/ff-pm/monolithic/td-ff-pm-2d-chaabani/problem_stokes.hh deleted file mode 100644 index d7919ed..0000000 --- a/examples/ff-pm/monolithic/td-ff-pm-2d-chaabani/problem_stokes.hh +++ /dev/null @@ -1,382 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup BoundaryTests - * \brief A simple Stokes test problem for the staggered grid (Navier-)Stokes model. - */ - -#ifndef DUMUX_STOKES_SUBPROBLEM_HH -#define DUMUX_STOKES_SUBPROBLEM_HH - -#include - -#include -#include - -#include -#include -#include - -namespace Dumux -{ -template -class StokesSubProblem; - -namespace Properties -{ -// Create new type tags -namespace TTag -{ -struct StokesOneP { - using InheritsFrom = std::tuple; -}; -} // end namespace TTag - -// the fluid system -template -struct FluidSystem { - using Scalar = GetPropType; - using type = - FluidSystems::OnePLiquid >; -}; - -// Set the grid type -template -struct Grid { - using type = Dune::YaspGrid<2, - Dune::EquidistantOffsetCoordinates< - GetPropType, - 2> >; -}; - -// Set the problem property -template -struct Problem { - using type = Dumux::StokesSubProblem; -}; - -template -struct EnableGridGeometryCache { - static constexpr bool value = true; -}; -template -struct EnableGridFluxVariablesCache { - static constexpr bool value = true; -}; -template -struct EnableGridVolumeVariablesCache { - static constexpr bool value = true; -}; -} // end namespace Properties - -/*! - * \ingroup BoundaryTests - * \brief Test problem for the one-phase (Navier-) Stokes problem. - * - * Horizontal flow from left to right with a parabolic velocity profile. - */ -template -class StokesSubProblem : public NavierStokesProblem -{ - using ParentType = NavierStokesProblem; - using Scalar = GetPropType; - using BoundaryTypes = Dumux::NavierStokesBoundaryTypes< - GetPropType::numEq()>; - using GridGeometry = GetPropType; - using GridView = typename GridGeometry::GridView; - using FVElementGeometry = typename GridGeometry::LocalView; - using SubControlVolumeFace = - typename FVElementGeometry::SubControlVolumeFace; - using SubControlVolume = typename FVElementGeometry::SubControlVolume; - using Element = typename GridView::template Codim<0>::Entity; - using GlobalPosition = typename Element::Geometry::GlobalCoordinate; - using PrimaryVariables = GetPropType; - using NumEqVector = GetPropType; - using ModelTraits = GetPropType; - - using CouplingManager = GetPropType; - -public: - using Indices = typename ModelTraits::Indices; - - StokesSubProblem(std::shared_ptr gridGeometry, - std::shared_ptr couplingManager) - : ParentType(gridGeometry, "Stokes"), - eps_(1e-6), - time_(0.0), - couplingManager_(couplingManager) - { - problemName_ = - getParam("Vtk.OutputName") + "_" + - getParamFromGroup(this->paramGroup(), "Problem.Name"); - } - - /*! - * \brief The problem name. - */ - const std::string &name() const { return problemName_; } - - /*! - * \name Problem parameters - */ - // \{ - - /*! - * \brief Returns the temperature within the domain in [K]. - * - * This problem assumes a temperature of 10 degrees Celsius. - */ - Scalar temperature() const { return 273.15 + 10; } // 10°C - - /*! - * \brief Returns the sources within the domain. - * - * \param globalPos The global position - */ - NumEqVector sourceAtPos(const GlobalPosition &globalPos) const - { - return NumEqVector(0.0); - } - // \} - - /*! - * \name Boundary conditions - */ - // \{ - - /*! - * \brief Specifies which kind of boundary condition should be - * used for which equation on a given boundary segment. - * - * \param element The finite element - * \param scvf The sub control volume face - */ - BoundaryTypes boundaryTypes(const Element &element, - const SubControlVolumeFace &scvf) const - { - BoundaryTypes values; - - //const auto &globalPos = scvf.dofPosition(); - - //values.setDirichlet(Indices::velocityXIdx); - //values.setDirichlet(Indices::velocityYIdx); - - if (couplingManager().isCoupledEntity(CouplingManager::stokesIdx, - scvf)) { - assert( - couplingManager().couplingMode() != - CouplingManager::CouplingMode::reconstructPorousMediumPressure); - - values.setCouplingDirichlet(Indices::velocityYIdx); - values.setBeaversJoseph(Indices::momentumXBalanceIdx); - } else { - values.setDirichlet(Indices::pressureIdx); - } - - return values; - } - - /*! - * \brief Evaluates the boundary conditions for a Dirichlet control volume. - */ - PrimaryVariables dirichletAtPos(const GlobalPosition &globalPos) const - { - return initialAtPos(globalPos); - } - - PrimaryVariables dirichlet(const Element &element, - const SubControlVolume &scv) const - { - return initialAtPos(scv.center()); - } - - PrimaryVariables dirichlet(const Element &element, - const SubControlVolumeFace &scvf) const - { - if (couplingManager().isCoupledEntity(CouplingManager::stokesIdx, - scvf)) { - PrimaryVariables values(0.0); - values[Indices::velocityYIdx] = - couplingManager().couplingData().porousMediumInterfaceVelocity( - element, scvf); - return values; - } else - return initialAtPos(scvf.center()); - } - - /*! - * \brief Evaluates the boundary conditions for a Neumann control volume. - * - * \param element The element for which the Neumann boundary condition is set - * \param fvGeometry The fvGeometry - * \param elemVolVars The element volume variables - * \param elemFaceVars The element face variables - * \param scvf The boundary sub control volume face - */ - template - NumEqVector neumann(const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &elemVolVars, - const ElementFaceVariables &elemFaceVars, - const SubControlVolumeFace &scvf) const - { - NumEqVector values(0.0); - - //std::cout << "Neumann BC: " << values << std::endl; - - if (couplingManager().isCoupledEntity(CouplingManager::stokesIdx, - scvf)) { - // std::cout << "vel is " << elemFaceVars[scvf].velocitySelf() << std::endl; - values[Indices::conti0EqIdx] = - couplingManager().couplingData().massCouplingCondition( - element, fvGeometry, elemVolVars, elemFaceVars, scvf); - values[Indices::momentumYBalanceIdx] = - couplingManager().couplingData().momentumCouplingCondition( - element, fvGeometry, elemVolVars, elemFaceVars, scvf); - } - return values; - } - - // \} - - //! Get the coupling manager - const CouplingManager &couplingManager() const { return *couplingManager_; } - - /*! - * \name Volume terms - */ - // \{ - - /*! - * \brief Evaluates the initial value for a control volume. - * - * \param globalPos The global position - */ - PrimaryVariables initialAtPos(const GlobalPosition &globalPos) const - { - PrimaryVariables values(0.0); - - values[Indices::velocityXIdx] = xVelocityAt(time_, globalPos); - values[Indices::velocityYIdx] = yVelocityAt(time_, globalPos); - values[Indices::pressureIdx] = pressureAt(time_, globalPos); - - std::cout << values[Indices::velocityXIdx] << std::endl; - std::cout << values[Indices::velocityYIdx] << std::endl; - std::cout << values[Indices::pressureIdx] << std::endl; - //if (onLeftBoundary_(globalPos)) - // values[Indices::pressureIdx] = deltaP; - return values; - } - - /*! - * \brief Returns the intrinsic permeability of required as input parameter - for the Beavers-Joseph-Saffman boundary condition - */ - Scalar permeability(const Element &element, - const SubControlVolumeFace &scvf) const - { - return couplingManager().couplingData().darcyPermeability(element, - scvf); - } - - /*! - * \brief Returns the alpha value required as input parameter for the - Beavers-Joseph-Saffman boundary condition. - */ - Scalar alphaBJ(const SubControlVolumeFace &scvf) const - { - return couplingManager() - .problem(CouplingManager::darcyIdx) - .spatialParams() - .beaversJosephCoeffAtPos(scvf.center()); - } - - void setTime(const Scalar time) { time_ = time; } - - PrimaryVariables getExactSolution(const GlobalPosition &globalPos) const - { - PrimaryVariables values(0.0); - - values[Indices::pressureIdx] = pressureAt(time_, globalPos); - std::cout << values[Indices::pressureIdx] << std::endl; - //values[Indices::velocityXIdx] = xVelocityAt( time_, globalPos); - //values[Indices::velocityYIdx] = yVelocityAt( time_, globalPos); - - return values; - } - -private: - bool onLeftBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[0] < this->gridGeometry().bBoxMin()[0] + eps_; - } - - bool onRightBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[0] > this->gridGeometry().bBoxMax()[0] - eps_; - } - - bool onLowerBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[1] < this->gridGeometry().bBoxMin()[1] + eps_; - } - - bool onUpperBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[1] > this->gridGeometry().bBoxMax()[1] - eps_; - } - - Scalar pressureAt(const Scalar time, const GlobalPosition &globalPos) const - { - const auto x = globalPos[0]; - const auto y = globalPos[1]; - return (-std::pow(x, 2) * y + x * y + std::pow(y, 2)) * - std::cos(M_PI * time); - } - - Scalar xVelocityAt(const Scalar time, const GlobalPosition &globalPos) const - { - const auto x = globalPos[0]; - const auto y = globalPos[1]; - return (std::pow(y, 2) - 2.0 * y + 2.0 * x - 4.0 * std::pow(y, 3) * x - - 3) * - std::cos(M_PI * time); - }; - - Scalar yVelocityAt(const Scalar time, const GlobalPosition &globalPos) const - { - const auto x = globalPos[0]; - const auto y = globalPos[1]; - return (std::pow(x, 2) - x - 2.0 * y + std::pow(y, 4)) * - std::cos(M_PI * time); - }; - - Scalar eps_; - std::string problemName_; - Scalar time_; - //std::vector analyticalVelocityX_; - //std::vector analyticalVelocityY_; - //std::vector analyticalPressure_; - - std::shared_ptr couplingManager_; -}; -} // end namespace Dumux - -#endif // DUMUX_STOKES_SUBPROBLEM_HH diff --git a/examples/ff-pm/monolithic/td-ff-pm-2d-chaabani/spatialparams.hh b/examples/ff-pm/monolithic/td-ff-pm-2d-chaabani/spatialparams.hh deleted file mode 100644 index fc0a412..0000000 --- a/examples/ff-pm/monolithic/td-ff-pm-2d-chaabani/spatialparams.hh +++ /dev/null @@ -1,96 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup BoundaryTests - * \brief The spatial parameters class for the test problem using the 1p cc model. - */ - -#ifndef DUMUX_1P_TEST_SPATIALPARAMS_HH -#define DUMUX_1P_TEST_SPATIALPARAMS_HH - -#include - -namespace Dumux -{ -/*! - * \ingroup BoundaryTests - * \brief The spatial parameters class for the test problem using the - * 1p cc model. - */ -template -class OnePSpatialParams - : public FVSpatialParamsOneP> -{ - using GridView = typename FVGridGeometry::GridView; - using ParentType = - FVSpatialParamsOneP>; - - using Element = typename GridView::template Codim<0>::Entity; - using GlobalPosition = typename Element::Geometry::GlobalCoordinate; - -public: - // export permeability type - using PermeabilityType = Scalar; - - OnePSpatialParams(std::shared_ptr fvGridGeometry) - : ParentType(fvGridGeometry) - { - permeability_ = getParam("Darcy.SpatialParams.Permeability"); - alphaBJ_ = getParam("Darcy.SpatialParams.AlphaBeaversJoseph"); - } - - /*! - * \brief Function for defining the (intrinsic) permeability \f$[m^2]\f$. - * - * \param globalPos The global position - * \return the intrinsic permeability - */ - PermeabilityType permeabilityAtPos(const GlobalPosition &globalPos) const - { - return permeability_; - } - - /*! \brief Defines the porosity in [-]. - * - * \param globalPos The global position - */ - Scalar porosityAtPos(const GlobalPosition &globalPos) const { return 0.4; } - - /*! \brief Defines the Beavers-Joseph coefficient in [-]. - * - * \param globalPos The global position - */ - Scalar beaversJosephCoeffAtPos(const GlobalPosition &globalPos) const - { - return alphaBJ_; - } - -private: - Scalar permeability_; - Scalar alphaBJ_; -}; - -} // end namespace Dumux - -#endif diff --git a/examples/ff-pm/monolithic/td-ff-pm-2d-chaabani/td-ff-pm-2d-chaabani.cc b/examples/ff-pm/monolithic/td-ff-pm-2d-chaabani/td-ff-pm-2d-chaabani.cc deleted file mode 100644 index 35756b4..0000000 --- a/examples/ff-pm/monolithic/td-ff-pm-2d-chaabani/td-ff-pm-2d-chaabani.cc +++ /dev/null @@ -1,399 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup BoundaryTests - * \brief A test problem for the coupled Stokes/Darcy problem (1p). - */ - -#include - -#include -#include - -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -#include - -#include "problem_darcy.hh" -#include "problem_stokes.hh" - -namespace Dumux -{ -namespace Properties -{ -template -struct CouplingManager { - using Traits = StaggeredMultiDomainTraits; - using type = Dumux::StokesDarcyCouplingManager; -}; - -template -struct CouplingManager { - using Traits = StaggeredMultiDomainTraits; - using type = Dumux::StokesDarcyCouplingManager; -}; - -} // end namespace Properties -} // end namespace Dumux - -int main(int argc, char **argv) -try { - using namespace Dumux; - - // initialize MPI, finalize is done automatically on exit - const auto &mpiHelper = Dune::MPIHelper::instance(argc, argv); - - // print dumux start message - if (mpiHelper.rank() == 0) - DumuxMessage::print(/*firstCall=*/true); - - // parse command line arguments and input file - Parameters::init(argc, argv); - - // Define the sub problem type tags - using StokesTypeTag = Properties::TTag::StokesOneP; - using DarcyTypeTag = Properties::TTag::DarcyOneP; - - // try to create a grid (from the given grid file or the input file) - // for both sub-domains - using DarcyGridManager = - Dumux::GridManager>; - DarcyGridManager darcyGridManager; - darcyGridManager.init("Darcy"); // pass parameter group - - using StokesGridManager = - Dumux::GridManager>; - StokesGridManager stokesGridManager; - stokesGridManager.init("Stokes"); // pass parameter group - - // we compute on the leaf grid view - const auto &darcyGridView = darcyGridManager.grid().leafGridView(); - const auto &stokesGridView = stokesGridManager.grid().leafGridView(); - - // create the finite volume grid geometry - using StokesGridGeometry = - GetPropType; - auto stokesGridGeometry = - std::make_shared(stokesGridView); - stokesGridGeometry->update(); - using DarcyGridGeometry = - GetPropType; - auto darcyGridGeometry = std::make_shared(darcyGridView); - darcyGridGeometry->update(); - - using Traits = - StaggeredMultiDomainTraits; - - // the coupling manager - using CouplingManager = StokesDarcyCouplingManager; - auto couplingManager = std::make_shared(stokesGridGeometry, - darcyGridGeometry); - - // the indices - constexpr auto stokesCellCenterIdx = CouplingManager::stokesCellCenterIdx; - constexpr auto stokesFaceIdx = CouplingManager::stokesFaceIdx; - constexpr auto darcyIdx = CouplingManager::darcyIdx; - - // the problem (initial and boundary conditions) - using StokesProblem = GetPropType; - auto stokesProblem = - std::make_shared(stokesGridGeometry, couplingManager); - using DarcyProblem = GetPropType; - auto darcyProblem = - std::make_shared(darcyGridGeometry, couplingManager); - - // the solution vector - Traits::SolutionVector sol; - //sol[stokesCellCenterIdx].resize(stokesGridGeometry->numCellCenterDofs()); - //sol[stokesFaceIdx].resize(stokesGridGeometry->numFaceDofs()); - //sol[darcyIdx].resize(darcyGridGeometry->numDofs()); - sol[stokesCellCenterIdx].resize(stokesGridGeometry->numCellCenterDofs()); - sol[stokesFaceIdx].resize(stokesGridGeometry->numFaceDofs()); - sol[darcyIdx].resize(darcyGridGeometry->numDofs()); - - // get a solution vector storing references to the two Stokes solution vectors - auto stokesSol = partial(sol, stokesFaceIdx, stokesCellCenterIdx); - - // the grid variables - using StokesGridVariables = - GetPropType; - auto stokesGridVariables = std::make_shared( - stokesProblem, stokesGridGeometry); - stokesGridVariables->init(stokesSol); - using DarcyGridVariables = - GetPropType; - auto darcyGridVariables = - std::make_shared(darcyProblem, darcyGridGeometry); - darcyGridVariables->init(sol[darcyIdx]); - - /* - const auto couplingMode = [] { - const auto mode = getParam("Problem.CouplingMode", "ReconstructPorousMediumPressure"); - if (mode == "ReconstructPorousMediumPressure") - return CouplingManager::CouplingMode::reconstructPorousMediumPressure; - else if (mode == "ReconstructFreeFlowNormalStress") - return CouplingManager::CouplingMode::reconstructFreeFlowNormalStress; - else - DUNE_THROW(Dune::InvalidStateException, mode << " is not a valid coupling mode. Use ReconstructPorousMediumPressure or ReconstructFreeFlowNormalStress"); - }(); - */ - - //couplingManager->init(stokesProblem, darcyProblem, sol); - - // initialize the coupling manager - couplingManager->init( - stokesProblem, darcyProblem, - std::make_tuple(stokesGridVariables->faceGridVariablesPtr(), - stokesGridVariables->cellCenterGridVariablesPtr(), - darcyGridVariables), - sol, CouplingManager::CouplingMode::reconstructFreeFlowNormalStress); - - //couplingManager->setGridVariables(std::make_tuple(stokesGridVariables->cellCenterGridVariablesPtr(), - // stokesGridVariables->faceGridVariablesPtr(), - // darcyGridVariables)); - - // intialize the vtk output module - StaggeredVtkOutputModule - stokesVtkWriter(*stokesGridVariables, stokesSol, stokesProblem->name()); - GetPropType::initOutputModule( - stokesVtkWriter); - stokesVtkWriter.write(0.0); - - VtkOutputModule> - darcyVtkWriter(*darcyGridVariables, sol[darcyIdx], - darcyProblem->name()); - using DarcyVelocityOutput = - GetPropType; - darcyVtkWriter.addVelocityOutput( - std::make_shared(*darcyGridVariables)); - GetPropType::initOutputModule( - darcyVtkWriter); - darcyVtkWriter.write(0.0); - - // the assembler for a stationary problem - using Assembler = - MultiDomainFVAssembler; - auto assembler = std::make_shared( - std::make_tuple(stokesProblem, stokesProblem, darcyProblem), - std::make_tuple(stokesGridGeometry->faceFVGridGeometryPtr(), - stokesGridGeometry->cellCenterFVGridGeometryPtr(), - darcyGridGeometry), - std::make_tuple(stokesGridVariables->faceGridVariablesPtr(), - stokesGridVariables->cellCenterGridVariablesPtr(), - darcyGridVariables), - couplingManager); - - // the linear solver - using LinearSolver = UMFPackBackend; - auto linearSolver = std::make_shared(); - - // the non-linear solver - using NewtonSolver = - MultiDomainNewtonSolver; - NewtonSolver nonLinearSolver(assembler, linearSolver, couplingManager); - - // solve the non-linear system - nonLinearSolver.solve(sol); - - // write vtk output - stokesVtkWriter.write(1.0); - darcyVtkWriter.write(1.0); - - // for (const auto& element : elements(darcyGridView)) - // { - // auto fvGeometry = localView(*darcyGridGeometry); - // fvGeometry.bind(element); - - // for (const auto& scvf : scvfs(fvGeometry)) - // { - // if (couplingManager->isCoupledEntity(CouplingManager::darcyIdx, scvf)) - // { - // std::ostream tmp(std::cout.rdbuf()); - - // tmp << std::scientific << "Interface pressure ff at " << scvf.center() << " is " << couplingManager->couplingData().freeFlowInterfacePressure(element, scvf) << std::endl; - // } - // } - // } - - // for (const auto& element : elements(stokesGridView)) - // { - // auto fvGeometry = localView(*stokesGridGeometry); - // auto elemVolVars = localView(stokesGridVariables->cellCenterGridVariablesPtr()->curGridVolVars()); - // auto elemFaceVars = localView(stokesGridVariables->faceGridVariablesPtr()->curGridFaceVars()); - // // auto elemFluxVarsCache = localView(gridVars_(stokesIdx).gridFluxVarsCache()); - - // fvGeometry.bind(element); - // elemVolVars.bind(element, fvGeometry, sol[stokesCellCenterIdx]); - // elemFaceVars.bind(element, fvGeometry, sol[stokesFaceIdx]); - - // for (const auto& scvf : scvfs(fvGeometry)) - // { - // if (couplingManager->isCoupledEntity(CouplingManager::stokesIdx, scvf)) - // { - // std::ostream tmp(std::cout.rdbuf()); - // tmp << std::scientific << "Interface pressure pm at " << scvf.center() << " is " << stokesProblem->neumann(element, - // fvGeometry, - // elemVolVars, - // elemFaceVars, - // scvf)[scvf.directionIndex()] << ", vself " << elemFaceVars[scvf].velocitySelf() << ", vDarcy " << couplingManager->couplingData().darcyInterfaceVelocity(element, - // fvGeometry, - // elemVolVars, - // elemFaceVars, - // scvf) << std::endl; - // } - // } - // } - - /* - { - double min = std::numeric_limits::max(); - double max = std::numeric_limits::min(); - double sum = 0.; - using FluxVariables = GetPropType; - const std::string filename = getParam("Problem.Name") + "-" + darcyProblem->name() + "-interface-velocity"; - std::tie(min, max, sum) = writeVelocitiesOnInterfaceToFile(filename, - *couplingManager, - *darcyProblem, - *darcyGridVariables, - sol[darcyIdx]); - const auto prec = std::cout.precision(); - std::cout << "Velocity statistics (Darcy):" << std::endl - << std::setprecision(std::numeric_limits::digits10 + 1) - << " min: " << min << std::endl - << " max: " << max << std::endl - << " sum: " << sum << std::endl; - std::cout.precision(prec); - - { - const std::string filenameDarcy = "darcy-flow-statistics.txt"; - std::ofstream ofs(filenameDarcy + ".txt", std::ofstream::out | std::ofstream::trunc); - const auto prec = ofs.precision(); - ofs << "Velocity statistics (Darcy):" << std::endl - << std::setprecision(std::numeric_limits::digits10 + 1) - << " min: " << min << std::endl - << " max: " << max << std::endl - << " sum: " << sum << std::endl; - ofs.precision(prec); - ofs.close(); - } - - { - double min = std::numeric_limits::max(); - double max = std::numeric_limits::min(); - double sum = 0.; - const std::string filename = getParam("Problem.Name") + "-" + darcyProblem->name() + "-interface-pressure"; - std::tie(min, max, sum) = writePressuresOnInterfaceToFile(filename, - *darcyProblem, - *darcyGridVariables, - sol[darcyIdx]); - const auto prec = std::cout.precision(); - std::cout << "Pressure statistics (Darcy):" << std::endl - << std::setprecision(std::numeric_limits::digits10 + 1) - << " min: " << min << std::endl - << " max: " << max << std::endl - << " sum: " << sum << std::endl; - std::cout.precision(prec); - } - } - - //TODO make freeflow - { - double min = std::numeric_limits::max(); - double max = std::numeric_limits::min(); - double sum = 0.; - const std::string filename = getParam("Problem.Name") + "-" + stokesProblem->name() + "-interface-velocity"; - std::tie(min, max, sum) = writeStokesVelocitiesOnInterfaceToFile(filename, - *couplingManager, - *stokesProblem, - sol[stokesFaceIdx]); - const auto prec = std::cout.precision(); - std::cout << "Velocity statistics (free flow):" << std::endl - << std::setprecision(std::numeric_limits::digits10 + 1) - << " min: " << min << std::endl - << " max: " << max << std::endl - << " sum: " << sum << std::endl; - std::cout.precision(prec); - { - const std::string filenameFlow = "free-flow-statistics"; - std::ofstream ofs(filenameFlow + ".txt", std::ofstream::out | std::ofstream::trunc); - const auto prec = ofs.precision(); - ofs << "Velocity statistics (free flow):" << std::endl - << std::setprecision(std::numeric_limits::digits10 + 1) - << " min: " << min << std::endl - << " max: " << max << std::endl - << " sum: " << sum << std::endl; - ofs.precision(prec); - ofs.close(); - } - } -*/ - //////////////////////////////////////////////////////////// - // finalize, print dumux message to say goodbye - //////////////////////////////////////////////////////////// - - // print dumux end message - if (mpiHelper.rank() == 0) { - Parameters::print(); - DumuxMessage::print(/*firstCall=*/false); - } - - return 0; -} // end main -catch (Dumux::ParameterException &e) { - std::cerr << std::endl << e << " ---> Abort!" << std::endl; - return 1; -} catch (Dune::DGFException &e) { - std::cerr << "DGF exception thrown (" << e - << "). Most likely, the DGF file name is wrong " - "or the DGF file is corrupted, " - "e.g. missing hash at end of file or wrong number " - "(dimensions) of entries." - << " ---> Abort!" << std::endl; - return 2; -} catch (Dune::Exception &e) { - std::cerr << "Dune reported error: " << e << " ---> Abort!" << std::endl; - return 3; -} catch (...) { - std::cerr << "Unknown exception thrown! ---> Abort!" << std::endl; - return 4; -} diff --git a/examples/ff-pm/monolithic/td-ff-pm-2d-chaabani/td-ff-pm-2d-chaabani.input b/examples/ff-pm/monolithic/td-ff-pm-2d-chaabani/td-ff-pm-2d-chaabani.input deleted file mode 100644 index 82a39da..0000000 --- a/examples/ff-pm/monolithic/td-ff-pm-2d-chaabani/td-ff-pm-2d-chaabani.input +++ /dev/null @@ -1,35 +0,0 @@ -[Darcy.Grid] -UpperRight = 1 0 -LowerLeft = 0 -1 -Cells = 10 10 - -[Stokes.Grid] -LowerLeft = 0 1 -UpperRight = 0 1 -Cells = 10 10 - -[Stokes.Problem] -Name = stokes - -[Darcy.Problem] -Name = darcy - -[Darcy.SpatialParams] -Permeability = 1e-6 # m^2 -AlphaBeaversJoseph = 1.0 - -[Vtk] -OutputName = td-ff-pm-2d-chaabani - -[Problem] -Name = "td-ff-pm-2d-chaabani" -EnableGravity = false -EnableInertiaTerms = false - -[TimeLoop] -TEnd = 2e-4 -MaxTimeStepSize = 1e-4 -DtInitial = 1e-4 - -[Vtk] -AddVelocity = 1 diff --git a/examples/ff-pm/partitioned/CMakeLists.txt b/examples/ff-pm/partitioned/CMakeLists.txt deleted file mode 100644 index 66be2d3..0000000 --- a/examples/ff-pm/partitioned/CMakeLists.txt +++ /dev/null @@ -1,4 +0,0 @@ -# 2D cases - -# 3D cases -add_subdirectory(ff-pm-3d) \ No newline at end of file diff --git a/examples/ff-pm/partitioned/ff-pm-3d/CMakeLists.txt b/examples/ff-pm/partitioned/ff-pm-3d/CMakeLists.txt deleted file mode 100644 index 53e89bf..0000000 --- a/examples/ff-pm/partitioned/ff-pm-3d/CMakeLists.txt +++ /dev/null @@ -1,23 +0,0 @@ -add_executable(test_ff_reversed-3d EXCLUDE_FROM_ALL main_ff-reversed.cc) -add_executable(test_pm_reversed-3d EXCLUDE_FROM_ALL main_pm-reversed.cc) - -target_compile_definitions(test_ff_reversed-3d PUBLIC "ENABLEMONOLITHIC=0") -target_compile_definitions(test_pm_reversed-3d PUBLIC "ENABLEMONOLITHIC=0") - -target_link_libraries(test_ff_reversed-3d PRIVATE dumux-precice) -target_link_libraries(test_pm_reversed-3d PRIVATE dumux-precice) - -# add a symlink for each input file -add_input_file_links() - -macro(add_precice_file_links) - FILE(GLOB precice_files *.xml) - foreach(VAR ${input_files}) - get_filename_component(file_name ${VAR} NAME) - dune_symlink_to_source_files(FILES ${file_name}) - endforeach() -endmacro() -add_precice_file_links() - -dune_symlink_to_source_files(FILES run-iterative-simulation-test.sh) -dune_symlink_to_source_files(FILES precice-config.xml) diff --git a/examples/legacy/CMakeLists.txt b/examples/legacy/CMakeLists.txt deleted file mode 100644 index 7fe1127..0000000 --- a/examples/legacy/CMakeLists.txt +++ /dev/null @@ -1 +0,0 @@ -add_subdirectory(cht) \ No newline at end of file diff --git a/examples/legacy/README.md b/examples/legacy/README.md deleted file mode 100644 index 45ea097..0000000 --- a/examples/legacy/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# DuMuX-preCICE legacy examples - -- `cht/` contains an examples for conjugate heat transfer. This is a legacy test case that might not work at the moment. diff --git a/examples/legacy/cht/CMakeLists.txt b/examples/legacy/cht/CMakeLists.txt deleted file mode 100644 index 00a7c00..0000000 --- a/examples/legacy/cht/CMakeLists.txt +++ /dev/null @@ -1,19 +0,0 @@ -#find_library(PRECICE_LIB NAMES precice HINTS "${LD_LIBRARY_PATH}") -#find_package(Boost 1.65.1 REQUIRED COMPONENTS log system) #Require same version as preCICE - -#string(REPLACE ":" ";" LIBRARY_DIRS $ENV{LD_LIBRARY_PATH}) -#find_library(PRECICE_LIB NAMES precice HINTS ${LIBRARY_DIRS}) -set(LIBRARY_DIRS "") -if(DEFINED ENV{LD_LIBRARY_PATH}) - message(STATUS "LD_LIBRARY_PATH is set. Use it for hinting") - string(REPLACE ":" ";" LIBRARY_DIRS $ENV{LD_LIBRARY_PATH} ) -endif() -message(STATUS "LIBRARY_DIRS: ${LIBRARY_DIRS}") -find_library(PRECICE_LIB NAMES precice HINTS ${LIBRARY_DIRS}) -find_package(Boost 1.65.1 REQUIRED COMPONENTS log system) #Require same version as preCICE - -add_subdirectory(monolithic) -add_subdirectory(monolithic-const-dt) -add_subdirectory(partitioned) -#add_subdirectory(iterative-reversed) - diff --git a/examples/legacy/cht/common/dumuxpreciceindexwrapper.cc b/examples/legacy/cht/common/dumuxpreciceindexwrapper.cc deleted file mode 100644 index 004192e..0000000 --- a/examples/legacy/cht/common/dumuxpreciceindexwrapper.cc +++ /dev/null @@ -1 +0,0 @@ -#include "dumuxpreciceindexwrapper.hh" diff --git a/examples/legacy/cht/common/dumuxpreciceindexwrapper.hh b/examples/legacy/cht/common/dumuxpreciceindexwrapper.hh deleted file mode 100644 index 28cab17..0000000 --- a/examples/legacy/cht/common/dumuxpreciceindexwrapper.hh +++ /dev/null @@ -1,92 +0,0 @@ -#ifndef DUMUXPRECICEINDEXWRAPPER_H -#define DUMUXPRECICEINDEXWRAPPER_H - -#include -#include -#include -#include -#include - -template -class DumuxPreciceIndexMapper -{ -private: - // Use a boost bimap? - std::map dumuxFaceIndexToPreciceIndex_; - std::map preciceVertexToDumuxFaceIndex_; - // AJ: I think we should not rely on the fact that the preCICE vertexIDs start at 0. - // It might happen that we have more than one interface?! We should check the performance. - //std::vector preciceVertexToDumuxFaceIndex_; - bool mappingWasCreated_; - size_t size_; - -public: - DumuxPreciceIndexMapper() : mappingWasCreated_(false), size_(0) {} - - void createMapping(const std::vector &dumuxIndices, - const std::vector &preciceIndices) - { - assert(dumuxIndices.size() == preciceIndices.size()); - size_ = dumuxIndices.size(); - - for (T i = 0; i < size_; i++) { - preciceVertexToDumuxFaceIndex_.emplace(preciceIndices[i], - dumuxIndices[i]); - dumuxFaceIndexToPreciceIndex_.emplace(dumuxIndices[i], - preciceIndices[i]); - } - mappingWasCreated_ = true; - } - - bool isDumuxIdMapped(const T dumuxId) const - { - return dumuxFaceIndexToPreciceIndex_.count(dumuxId) == 1; - } - - bool isPreciceIdMapped(const T preciceId) const - { - return preciceVertexToDumuxFaceIndex_.count(preciceId) == 1; - } - - const T getPreciceId(const T dumuxId) const - { - assert(isDumuxIdMapped(dumuxId)); - return dumuxFaceIndexToPreciceIndex_.at(dumuxId); - } - - const T getDumuxId(const T preciceId) const - { - assert(isPreciceIdMapped(preciceId)); - return preciceVertexToDumuxFaceIndex_.at(preciceId); - } - - size_t getSize() const { return preciceVertexToDumuxFaceIndex_.size(); } - - virtual ~DumuxPreciceIndexMapper() {} - - template - friend std::ostream &operator<<(std::ostream &os, - const DumuxPreciceIndexMapper &wrapper); -}; - -template -std::ostream &operator<<(std::ostream &os, - const DumuxPreciceIndexMapper &wrapper) -{ - os << "preCICE to DuMuX mapping " - << "\n"; - for (const auto &v : wrapper.preciceVertexToDumuxFaceIndex_) { - os << v.first << " -> " << wrapper.getDumuxId(v.first) << "\n"; - } - - os << "\n\n"; - os << "Dumux to preCICE mapping " - << "\n"; - for (const auto &v : wrapper.dumuxFaceIndexToPreciceIndex_) { - os << v.first << " -> " << wrapper.getPreciceId(v.first) << "\n"; - } - - return os; -} - -#endif // DUMUXPRECICEINDEXWRAPPER_H diff --git a/examples/legacy/cht/common/helperfunctions.cc b/examples/legacy/cht/common/helperfunctions.cc deleted file mode 100644 index 2b69538..0000000 --- a/examples/legacy/cht/common/helperfunctions.cc +++ /dev/null @@ -1 +0,0 @@ -#include "helperfunctions.hh" diff --git a/examples/legacy/cht/common/helperfunctions.hh b/examples/legacy/cht/common/helperfunctions.hh deleted file mode 100644 index 83e176b..0000000 --- a/examples/legacy/cht/common/helperfunctions.hh +++ /dev/null @@ -1,300 +0,0 @@ -#ifndef HELPERFUNCTIONS_HH -#define HELPERFUNCTIONS_HH - -#include -// DuMuX -#include -// preCICE -#include "preciceadapter.hh" - -namespace helperfunctions -{ -enum ProblemType { FreeFlow, Heat }; - -template -void setBoundaryHeatFluxes(const Problem &problem, - const GridVariables &gridVars, - const SolutionVector &sol) -{ - const auto &fvGridGeometry = problem.fvGridGeometry(); - auto fvGeometry = localView(fvGridGeometry); - auto elemVolVars = localView(gridVars.curGridVolVars()); - auto elemFaceVars = localView(gridVars.curGridFaceVars()); - - auto &couplingInterface = precice_adapter::PreciceAdapter::getInstance(); - - for (const auto &element : elements(fvGridGeometry.gridView())) { - fvGeometry.bindElement(element); - elemVolVars.bindElement(element, fvGeometry, sol); - elemFaceVars.bindElement(element, fvGeometry, sol); - - for (const auto &scvf : scvfs(fvGeometry)) { - if (couplingInterface.isCoupledEntity(scvf.index())) { - //TODO: Actually writes temperature - const auto heatFlux = problem.neumann( - element, fvGeometry, elemVolVars, elemFaceVars, scvf)[3]; - couplingInterface.writeHeatFluxOnFace(scvf.index(), heatFlux); - } - } - } -} - -template -void printCellCenterTemperatures(const Problem &problem, - const GridVariables &gridVars, - const SolutionVector &sol) -{ - const auto &fvGridGeometry = problem.fvGridGeometry(); - auto fvGeometry = localView(fvGridGeometry); - auto elemVolVars = localView(gridVars.curGridVolVars()); - auto elemFaceVars = localView(gridVars.curGridFaceVars()); - - auto &couplingInterface = precice_adapter::PreciceAdapter::getInstance(); - - for (const auto &element : elements(fvGridGeometry.gridView())) { - fvGeometry.bindElement(element); - elemVolVars.bindElement(element, fvGeometry, sol); - elemFaceVars.bindElement(element, fvGeometry, sol); - - for (const auto &scvf : scvfs(fvGeometry)) { - if (couplingInterface.isCoupledEntity(scvf.index())) { - //TODO: Actually writes temperature - const auto &scv = fvGeometry.scv(scvf.insideScvIdx()); - const auto &volVars = elemVolVars[scv]; - - std::cout << "Temperature on cell center is: " - << volVars.temperature() << std::endl; - // const auto heatFlux = problem.neumann( element, fvGeometry, elemVolVars, elemFaceVars, scvf )[3]; - // couplingInterface.writeHeatFluxOnFace( scvf.index(), heatFlux ); - } - } - } -} - -namespace freeflow -{ -template -auto reconstructBoundaryTemperature( - const Problem &problem, - const typename FVElementGeometry::FVGridGeometry::GridView::template Codim< - 0>::Entity &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &elemVolVars, - const typename FVElementGeometry::SubControlVolumeFace &scvf) -{ - using Scalar = typename ElementVolumeVariables::VolumeVariables:: - PrimaryVariables::value_type; - - const auto &scv = fvGeometry.scv(scvf.insideScvIdx()); - const auto &volVars = elemVolVars[scv]; - const Scalar cellCenterTemperature = volVars.temperature(); - const Scalar distance = (scvf.center() - scv.center()).two_norm(); - - const Scalar insideLambda = volVars.effectiveThermalConductivity(); - - const Scalar qHeat = - problem.neumann(element, fvGeometry, elemVolVars, scvf); - // q = -lambda * (t_face - t_cc) / dx - // t_face = -q * dx / lambda + t_cc - return -qHeat * distance / insideLambda + cellCenterTemperature; -} -} // namespace freeflow - -template -void printCellCenterTemperatures(const Problem &problem, - const GridVariables &gridVars, - const SolutionVector &sol) -{ - const auto &fvGridGeometry = problem.fvGridGeometry(); - auto fvGeometry = localView(fvGridGeometry); - auto elemVolVars = localView(gridVars.curGridVolVars()); - auto elemFaceVars = localView(gridVars.curGridFaceVars()); - - auto &couplingInterface = precice_adapter::PreciceAdapter::getInstance(); - - for (const auto &element : elements(fvGridGeometry.gridView())) { - fvGeometry.bindElement(element); - elemVolVars.bindElement(element, fvGeometry, sol); - elemFaceVars.bindElement(element, fvGeometry, sol); - - for (const auto &scvf : scvfs(fvGeometry)) { - if (couplingInterface.isCoupledEntity(scvf.index())) { - //TODO: Actually writes temperature - const auto &scv = fvGeometry.scv(scvf.insideScvIdx()); - const auto &volVars = elemVolVars[scv]; - - std::cout << "Temperature on cell center is: " - << volVars.temperature() << std::endl; - // const auto heatFlux = problem.neumann( element, fvGeometry, elemVolVars, elemFaceVars, scvf )[3]; - // couplingInterface.writeHeatFluxOnFace( scvf.index(), heatFlux ); - } - } - } -} - -template -auto getThermalConductivity( - const Problem &problem, - const typename FVElementGeometry::FVGridGeometry::GridView::template Codim< - 0>::Entity &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &elemVolVars, - const typename FVElementGeometry::SubControlVolumeFace &scvf, - const ProblemType problemType) -{ - const auto &scv = fvGeometry.scv(scvf.insideScvIdx()); - const auto &volVars = elemVolVars[scv]; - - switch (problemType) { - case FreeFlow: - return ThermalConductivityModel::effectiveThermalConductivity( - volVars, problem.spatialParams(), element, fvGeometry, scv); - case Heat: - return ThermalConductivityModel::thermalConductivity( - volVars, problem.spatialParams(), element, fvGeometry, scv); - } - throw std::runtime_error( - "helperfunctions.hh: getThermalConductivity was called with wrong " - "problemType "); -} - -namespace freeflow -{ -template -auto reconstructBoundaryTemperature( - const Problem &problem, - const typename FVElementGeometry::FVGridGeometry::GridView::template Codim< - 0>::Entity &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &elemVolVars, - const typename FVElementGeometry::SubControlVolumeFace &scvf) -{ - using Scalar = typename ElementVolumeVariables::VolumeVariables:: - PrimaryVariables::value_type; - - const auto &scv = fvGeometry.scv(scvf.insideScvIdx()); - const auto &volVars = elemVolVars[scv]; - const Scalar cellCenterTemperature = volVars.temperature(); - const Scalar distance = (scvf.center() - scv.center()).two_norm(); - - // const Scalar insideLambda = ThermalConductivityModel::thermalConductivity(volVars, - // problem.spatialParams(), - // element, - // fvGeometry, - // scv); - - // const Scalar qHeat = problem.neumann(element, fvGeometry, elemVolVars, scvf); - // // q = -lambda * (t_face - t_cc) / dx - // // t_face = -q * dx / lambda + t_cc - // return -qHeat * distance / insideLambda + cellCenterTemperature; - return 0; -} - -template -void setBoundaryTemperatures(const Problem &problem, - const GridVariables &gridVars, - const SolutionVector &sol) -{ - const auto &fvGridGeometry = problem.fvGridGeometry(); - auto fvGeometry = localView(fvGridGeometry); - auto elemVolVars = localView(gridVars.curGridVolVars()); - - auto &couplingInterface = precice_adapter::PreciceAdapter::getInstance(); - - for (const auto &element : elements(fvGridGeometry.gridView())) { - fvGeometry.bindElement(element); - elemVolVars.bindElement(element, fvGeometry, sol); - - for (const auto &scvf : scvfs(fvGeometry)) { - if (couplingInterface.isCoupledEntity(scvf.index())) { - //TODO: Actually writes temperature - couplingInterface.writeTemperatureOnFace( - scvf.index(), - reconstructBoundaryTemperature( - problem, element, fvGeometry, elemVolVars, scvf)); - } - } - } -} - -} // namespace freeflow - -namespace heat -{ -template -auto reconstructBoundaryTemperature( - const Problem &problem, - const typename FVElementGeometry::FVGridGeometry::GridView::template Codim< - 0>::Entity &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &elemVolVars, - const typename FVElementGeometry::SubControlVolumeFace &scvf) -{ - using Scalar = typename ElementVolumeVariables::VolumeVariables:: - PrimaryVariables::value_type; - - const auto &scv = fvGeometry.scv(scvf.insideScvIdx()); - const auto &volVars = elemVolVars[scv]; - const Scalar cellCenterTemperature = volVars.temperature(); - const Scalar distance = (scvf.center() - scv.center()).two_norm(); - - const Scalar insideLambda = - ThermalConductivityModel::effectiveThermalConductivity( - volVars, problem.spatialParams(), element, fvGeometry, scv); - - const Scalar qHeat = - problem.neumann(element, fvGeometry, elemVolVars, scvf); - // q = -lambda * (t_face - t_cc) / dx - // t_face = -q * dx / lambda + t_cc - return -qHeat * distance / insideLambda + cellCenterTemperature; -} - -template -void setBoundaryTemperatures(const Problem &problem, - const GridVariables &gridVars, - const SolutionVector &sol) -{ - const auto &fvGridGeometry = problem.fvGridGeometry(); - auto fvGeometry = localView(fvGridGeometry); - auto elemVolVars = localView(gridVars.curGridVolVars()); - - auto &couplingInterface = precice_adapter::PreciceAdapter::getInstance(); - - for (const auto &element : elements(fvGridGeometry.gridView())) { - fvGeometry.bindElement(element); - elemVolVars.bindElement(element, fvGeometry, sol); - - for (const auto &scvf : scvfs(fvGeometry)) { - if (couplingInterface.isCoupledEntity(scvf.index())) { - //TODO: Actually writes temperature - couplingInterface.writeTemperatureOnFace( - scvf.index(), - reconstructBoundaryTemperature( - problem, element, fvGeometry, elemVolVars, scvf)); - } - } - } -} -} // namespace heat - -} // namespace helperfunctions - -#endif // HELPERFUNCTIONS_HH diff --git a/examples/legacy/cht/common/preciceadapter.cc b/examples/legacy/cht/common/preciceadapter.cc deleted file mode 100644 index 4584cca..0000000 --- a/examples/legacy/cht/common/preciceadapter.cc +++ /dev/null @@ -1,281 +0,0 @@ -#include "preciceadapter.hh" - -#include - -#include -#include -#include - -using namespace precice_adapter; - -PreciceAdapter::PreciceAdapter() - : wasCreated_(false), - meshWasCreated_(false), - preciceWasInitialized_(false), - preciceWasFinalized_(false), - precice_(nullptr), - meshID_(0), - heatFluxID_(0), - temperatureID_(0), - timeStepSize_(0.) -{ -#ifndef NDEBUG - namespace logging = boost::log; - logging::core::get()->set_filter(logging::trivial::severity >= - logging::trivial::debug); -#endif -} - -PreciceAdapter &PreciceAdapter::getInstance() -{ - static PreciceAdapter instance; - return instance; -} - -void PreciceAdapter::announceSolver(const std::string &name, - const std::string &configurationFileName, - const int rank, - const int size) -{ - assert(precice_ == nullptr); - precice_ = std::make_unique(name, rank, size); - precice_->configure(configurationFileName); - BOOST_LOG_TRIVIAL(info) << "PreciceAdapter for solver " << name - << "was announced and configured."; - wasCreated_ = true; -} - -int PreciceAdapter::getDimensions() -{ - assert(wasCreated_); - return precice_->getDimensions(); -} - -double PreciceAdapter::initialize() -{ - assert(wasCreated_); - assert(meshWasCreated_); - - heatFluxID_ = precice_->getDataID("Heat-Flux", meshID_); - temperatureID_ = precice_->getDataID("Temperature", meshID_); - - heatFlux_.resize(getNumberOfVertices()); - temperature_.resize(getNumberOfVertices()); - - timeStepSize_ = precice_->initialize(); - assert(timeStepSize_ > 0); - - preciceWasInitialized_ = true; - - BOOST_LOG_TRIVIAL(info) << "PreciceAdapter initialized"; - return timeStepSize_; -} - -void PreciceAdapter::initializeData() -{ - assert(preciceWasInitialized_); - precice_->initializeData(); -} - -void PreciceAdapter::finalize() -{ - assert(wasCreated_); - if (!preciceWasFinalized_) { - precice_->finalize(); - preciceWasFinalized_ = true; - BOOST_LOG_TRIVIAL(info) << "PreciceAdapter finalized."; - } -} - -double PreciceAdapter::advance(const double computedTimeStepLength) -{ - assert(wasCreated_); - return precice_->advance(computedTimeStepLength); -} - -bool PreciceAdapter::isCouplingOngoing() -{ - assert(wasCreated_); - return precice_->isCouplingOngoing(); -} - -size_t PreciceAdapter::getNumberOfVertices() -{ - assert(wasCreated_); - return vertexIDs_.size(); -} - -double PreciceAdapter::getHeatFluxOnFace(const int faceID) const -{ - assert(wasCreated_); - const auto idx = indexMapper_.getPreciceId(faceID); - assert(idx < heatFlux_.size()); - return heatFlux_[idx]; -} - -void PreciceAdapter::writeHeatFluxOnFace(const int faceID, const double value) -{ - assert(wasCreated_); - const auto idx = indexMapper_.getPreciceId(faceID); - assert(idx < heatFlux_.size()); - heatFlux_[idx] = value; -} - -double PreciceAdapter::getTemperatureOnFace(const int faceID) const -{ - assert(wasCreated_); - const auto idx = indexMapper_.getPreciceId(faceID); - assert(idx < temperature_.size()); - return temperature_[idx]; -} - -void PreciceAdapter::writeTemperatureOnFace(const int faceID, - const double value) -{ - assert(wasCreated_); - const auto idx = indexMapper_.getPreciceId(faceID); - assert(idx < temperature_.size()); - temperature_[idx] = value; -} - -void PreciceAdapter::writeHeatFluxToOtherSolver() -{ - assert(wasCreated_); - writeBlockScalarDataToPrecice(heatFluxID_, heatFlux_); - for (auto v : heatFlux_) { - BOOST_LOG_TRIVIAL(debug) << "Written heat-flux is :" << v; - } -} - -void PreciceAdapter::readHeatFluxFromOtherSolver() -{ - assert(wasCreated_); - readBlockScalarDataFromPrecice(heatFluxID_, heatFlux_); - for (auto v : heatFlux_) { - BOOST_LOG_TRIVIAL(debug) << "Read heat-flux is :" << v; - } -} - -void PreciceAdapter::writeTemperatureToOtherSolver() -{ - assert(wasCreated_); - writeBlockScalarDataToPrecice(temperatureID_, temperature_); - for (auto v : temperature_) { - BOOST_LOG_TRIVIAL(debug) << "Written temperature is :" << v; - } -} - -void PreciceAdapter::readTemperatureFromOtherSolver() -{ - assert(wasCreated_); - readBlockScalarDataFromPrecice(temperatureID_, temperature_); - for (auto v : temperature_) { - BOOST_LOG_TRIVIAL(debug) << "Read temperature is :" << v; - } -} - -bool PreciceAdapter::isCoupledEntity(const int faceID) const -{ - assert(wasCreated_); - return indexMapper_.isDumuxIdMapped(faceID); -} - -void PreciceAdapter::print(std::ostream &os) -{ - os << indexMapper_; -} - -bool PreciceAdapter::checkIfActionIsRequired(const std::string &condition) -{ - assert(wasCreated_); - return precice_->isActionRequired(condition); -} - -void PreciceAdapter::actionIsFulfilled(const std::string &condition) -{ - assert(wasCreated_); - precice_->fulfilledAction(condition); -} - -void PreciceAdapter::readBlockScalarDataFromPrecice(const int dataID, - std::vector &data) -{ - assert(wasCreated_); - assert(vertexIDs_.size() == data.size()); - precice_->readBlockScalarData(dataID, vertexIDs_.size(), vertexIDs_.data(), - data.data()); -} - -void PreciceAdapter::writeBlockScalarDataToPrecice(const int dataID, - std::vector &data) -{ - assert(wasCreated_); - assert(vertexIDs_.size() == data.size()); - precice_->writeBlockScalarData(dataID, vertexIDs_.size(), vertexIDs_.data(), - data.data()); -} - -bool PreciceAdapter::hasToWriteInitialData() -{ - assert(wasCreated_); - return checkIfActionIsRequired( - precice::constants::actionWriteInitialData()); -} - -void PreciceAdapter::announceInitialDataWritten() -{ - assert(wasCreated_); - precice_->fulfilledAction(precice::constants::actionWriteInitialData()); -} - -double PreciceAdapter::setMeshAndInitialize( - const std::string &meshName, - const size_t numPoints, - std::vector &coordinates, - const std::vector &dumuxFaceIDs) -{ - assert(wasCreated_); - assert(numPoints == dumuxFaceIDs.size()); - meshID_ = precice_->getMeshID(meshName); - vertexIDs_.resize(numPoints); - int tmp = numPoints; - precice_->setMeshVertices(meshID_, tmp, coordinates.data(), - vertexIDs_.data()); - indexMapper_.createMapping(dumuxFaceIDs, vertexIDs_); - meshWasCreated_ = true; - return initialize(); -} - -bool PreciceAdapter::isInitialDataAvailable() -{ - assert(wasCreated_); - return precice_->isReadDataAvailable(); -} - -bool PreciceAdapter::hasToReadIterationCheckpoint() -{ - assert(wasCreated_); - return checkIfActionIsRequired( - precice::constants::actionReadIterationCheckpoint()); -} - -void PreciceAdapter::announceIterationCheckpointRead() -{ - assert(wasCreated_); - actionIsFulfilled(precice::constants::actionReadIterationCheckpoint()); -} - -bool PreciceAdapter::hasToWriteIterationCheckpoint() -{ - assert(wasCreated_); - return checkIfActionIsRequired( - precice::constants::actionWriteIterationCheckpoint()); -} - -void PreciceAdapter::announceIterationCheckpointWritten() -{ - assert(wasCreated_); - actionIsFulfilled(precice::constants::actionWriteIterationCheckpoint()); -} - -PreciceAdapter::~PreciceAdapter() {} diff --git a/examples/legacy/cht/common/preciceadapter.hh b/examples/legacy/cht/common/preciceadapter.hh deleted file mode 100644 index c1f3015..0000000 --- a/examples/legacy/cht/common/preciceadapter.hh +++ /dev/null @@ -1,102 +0,0 @@ -#ifndef PRECICEWRAPPER_HH -#define PRECICEWRAPPER_HH - -#include -#include -#include - -#include "dumuxpreciceindexwrapper.hh" - -namespace precice_adapter -{ -class PreciceAdapter -{ -private: - bool wasCreated_; - bool meshWasCreated_; - bool preciceWasInitialized_; - bool preciceWasFinalized_; - std::unique_ptr precice_; - - PreciceAdapter(); - - bool checkIfActionIsRequired(const std::string &condition); - void actionIsFulfilled(const std::string &condition); - - void readBlockScalarDataFromPrecice(const int dataID, - std::vector &data); - void writeBlockScalarDataToPrecice(const int dataID, - std::vector &data); - - int meshID_; - int heatFluxID_; - int temperatureID_; - - double timeStepSize_; - - std::vector vertexIDs_; //should be size_t - std::vector heatFlux_; - std::vector temperature_; - - DumuxPreciceIndexMapper indexMapper_; - - double initialize(); - - ~PreciceAdapter(); - -public: - PreciceAdapter(const PreciceAdapter &) = delete; - void operator=(const PreciceAdapter &) = delete; - - static PreciceAdapter &getInstance(); - - void announceSolver(const std::string &name, - const std::string &configurationFileName, - const int rank, - const int size); - - int getDimensions(); - - bool hasToReadIterationCheckpoint(); - void announceIterationCheckpointRead(); - bool hasToWriteIterationCheckpoint(); - void announceIterationCheckpointWritten(); - - bool hasToWriteInitialData(); - void announceInitialDataWritten(); - - bool isInitialDataAvailable(); - - double setMeshAndInitialize(const std::string &meshName, - const size_t numPoints, - std::vector &coordinates, - const std::vector &dumuxFaceIDs); - - void initializeData(); - - double advance(const double computedTimeStepLength); - bool isCouplingOngoing(); - - size_t getNumberOfVertices(); - - double getHeatFluxOnFace(const int faceID) const; - void writeHeatFluxOnFace(const int faceID, const double value); - - double getTemperatureOnFace(const int faceID) const; - void writeTemperatureOnFace(const int faceID, const double value); - - void writeHeatFluxToOtherSolver(); - void readHeatFluxFromOtherSolver(); - - void writeTemperatureToOtherSolver(); - void readTemperatureFromOtherSolver(); - - bool isCoupledEntity(const int faceID) const; - - void print(std::ostream &os); - - void finalize(); -}; - -} // namespace precice_adapter -#endif diff --git a/examples/legacy/cht/monolithic-const-dt/CMakeLists.txt b/examples/legacy/cht/monolithic-const-dt/CMakeLists.txt deleted file mode 100644 index 95f70e4..0000000 --- a/examples/legacy/cht/monolithic-const-dt/CMakeLists.txt +++ /dev/null @@ -1,5 +0,0 @@ -#add_input_file_links() -dune_symlink_to_source_files(FILES "../monolithic/params.input") - -add_executable(test_conjugate_heat_monolithic_const_dt EXCLUDE_FROM_ALL main.cc) -target_compile_definitions(test_conjugate_heat_monolithic PUBLIC "ENABLEMONOLITHIC=1") diff --git a/examples/legacy/cht/monolithic-const-dt/main.cc b/examples/legacy/cht/monolithic-const-dt/main.cc deleted file mode 100644 index eb2aa22..0000000 --- a/examples/legacy/cht/monolithic-const-dt/main.cc +++ /dev/null @@ -1,282 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup BoundaryTests - * \brief A test problem for the coupled Stokes/Darcy problem (1p). - */ - -#include - -#include -#include - -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -#include - -#include "../monolithic/problem_freeflow.hh" -#include "../monolithic/problem_heat.hh" - -namespace Dumux -{ -namespace Properties -{ -template -struct CouplingManager { - using Traits = StaggeredMultiDomainTraits; - using type = Dumux::FreeFlowSolidEnergyCouplingManager; -}; - -template -struct CouplingManager { - using Traits = StaggeredMultiDomainTraits; - using type = Dumux::FreeFlowSolidEnergyCouplingManager; -}; - -} // end namespace Properties -} // end namespace Dumux - -int main(int argc, char **argv) -try { - using namespace Dumux; - - // initialize MPI, finalize is done automatically on exit - const auto &mpiHelper = Dune::MPIHelper::instance(argc, argv); - - // print dumux start message - if (mpiHelper.rank() == 0) - DumuxMessage::print(/*firstCall=*/true); - - // parse command line arguments and input file - Parameters::init(argc, argv); - - // Define the sub problem type tags - using FreeFlowTypeTag = Properties::TTag::FreeFlowModel; - using SolidEnergyTypeTag = Properties::TTag::HeatModel; - - // try to create a grid (from the given grid file or the input file) - // for both sub-domains - using SolidEnergyGridManager = - Dumux::GridManager>; - SolidEnergyGridManager solidEnergyGridManager; - solidEnergyGridManager.init("SolidEnergy"); // pass parameter group - - using FreeFlowGridManager = - Dumux::GridManager>; - FreeFlowGridManager freeFlowGridManager; - freeFlowGridManager.init("FreeFlow"); // pass parameter group - - // we compute on the leaf grid view - const auto &solidEnergyGridView = - solidEnergyGridManager.grid().leafGridView(); - const auto &freeFlowGridView = freeFlowGridManager.grid().leafGridView(); - - // create the finite volume grid geometry - using FreeFlowFVGridGeometry = - GetPropType; - auto freeFlowFvGridGeometry = - std::make_shared(freeFlowGridView); - freeFlowFvGridGeometry->update(); - using SolidEnergyFVGridGeometry = - GetPropType; - auto solidEnergyFvGridGeometry = - std::make_shared(solidEnergyGridView); - solidEnergyFvGridGeometry->update(); - - using Traits = StaggeredMultiDomainTraits; - - // the coupling manager - using CouplingManager = FreeFlowSolidEnergyCouplingManager; - auto couplingManager = std::make_shared( - freeFlowFvGridGeometry, solidEnergyFvGridGeometry); - - // the indices - constexpr auto freeFlowCellCenterIdx = - CouplingManager::freeFlowCellCenterIdx; - constexpr auto freeFlowFaceIdx = CouplingManager::freeFlowFaceIdx; - constexpr auto solidEnergyIdx = CouplingManager::solidEnergyIdx; - - // the problem (initial and boundary conditions) - using FreeFlowProblem = GetPropType; - auto freeFlowProblem = std::make_shared( - freeFlowFvGridGeometry, couplingManager); - using SolidEnergyProblem = - GetPropType; - auto solidEnergyProblem = std::make_shared( - solidEnergyFvGridGeometry, couplingManager); - - // the solution vector - Traits::SolutionVector sol; - sol[freeFlowCellCenterIdx].resize( - freeFlowFvGridGeometry->numCellCenterDofs()); - sol[freeFlowFaceIdx].resize(freeFlowFvGridGeometry->numFaceDofs()); - sol[solidEnergyIdx].resize(solidEnergyFvGridGeometry->numDofs()); - - // get a solution vector storing references to the two Stokes solution vectors - auto stokesSol = partial(sol, freeFlowCellCenterIdx, freeFlowFaceIdx); - - // apply initial solution for instationary problems - freeFlowProblem->applyInitialSolution(stokesSol); - solidEnergyProblem->applyInitialSolution(sol[solidEnergyIdx]); - - auto solOld = sol; - - couplingManager->init(freeFlowProblem, solidEnergyProblem, sol); - - // the grid variables - using FreeFlowGridVariables = - GetPropType; - auto freeFlowGridVariables = std::make_shared( - freeFlowProblem, freeFlowFvGridGeometry); - freeFlowGridVariables->init(stokesSol); - using SolidEnergyGridVariables = - GetPropType; - auto solidEnergyGridVariables = std::make_shared( - solidEnergyProblem, solidEnergyFvGridGeometry); - solidEnergyGridVariables->init(sol[solidEnergyIdx]); - - // intialize the vtk output module - StaggeredVtkOutputModule - freeFlowVtkWriter(*freeFlowGridVariables, stokesSol, - freeFlowProblem->name()); - GetPropType::initOutputModule( - freeFlowVtkWriter); - freeFlowVtkWriter.write(0.0); - - VtkOutputModule> - solidEnergyVtkWriter(*solidEnergyGridVariables, sol[solidEnergyIdx], - solidEnergyProblem->name()); - GetPropType::initOutputModule( - solidEnergyVtkWriter); - solidEnergyVtkWriter.write(0.0); - - // instantiate time loop - using Scalar = GetPropType; - const auto tEnd = getParam("TimeLoop.TEnd"); - const auto maxDt = getParam("TimeLoop.MaxTimeStepSize"); - auto dt = getParam("TimeLoop.DtInitial"); - auto timeLoop = std::make_shared>(0, dt, tEnd); - timeLoop->setMaxTimeStepSize(maxDt); - - // the assembler for a stationary problem - using Assembler = - MultiDomainFVAssembler; - auto assembler = std::make_shared( - std::make_tuple(freeFlowProblem, freeFlowProblem, solidEnergyProblem), - std::make_tuple(freeFlowFvGridGeometry->cellCenterFVGridGeometryPtr(), - freeFlowFvGridGeometry->faceFVGridGeometryPtr(), - solidEnergyFvGridGeometry), - std::make_tuple(freeFlowGridVariables->cellCenterGridVariablesPtr(), - freeFlowGridVariables->faceGridVariablesPtr(), - solidEnergyGridVariables), - couplingManager, timeLoop); - - // the linear solver - using LinearSolver = UMFPackBackend; - auto linearSolver = std::make_shared(); - - // the non-linear solver - using NewtonSolver = - MultiDomainNewtonSolver; - NewtonSolver nonLinearSolver(assembler, linearSolver, couplingManager); - - // time loop - timeLoop->start(); - do { - // set previous solution for storage evaluations - assembler->setPreviousSolution(solOld); - - // solve the non-linear system with time step control - nonLinearSolver.solve(sol, *timeLoop); - - // make the new solution the old solution - solOld = sol; - freeFlowGridVariables->advanceTimeStep(); - solidEnergyGridVariables->advanceTimeStep(); - - // advance to the time loop to the next step - timeLoop->advanceTimeStep(); - - // write vtk output - freeFlowVtkWriter.write(timeLoop->time()); - solidEnergyVtkWriter.write(timeLoop->time()); - - // report statistics of this time step - timeLoop->reportTimeStep(); - - } while (!timeLoop->finished()); - - timeLoop->finalize(freeFlowGridView.comm()); - timeLoop->finalize(solidEnergyGridView.comm()); - - //////////////////////////////////////////////////////////// - // finalize, print dumux message to say goodbye - //////////////////////////////////////////////////////////// - - // print dumux end message - if (mpiHelper.rank() == 0) { - Parameters::print(); - DumuxMessage::print(/*firstCall=*/false); - } - - return 0; -} // end main -catch (Dumux::ParameterException &e) { - std::cerr << std::endl << e << " ---> Abort!" << std::endl; - return 1; -} catch (Dune::DGFException &e) { - std::cerr << "DGF exception thrown (" << e - << "). Most likely, the DGF file name is wrong " - "or the DGF file is corrupted, " - "e.g. missing hash at end of file or wrong number " - "(dimensions) of entries." - << " ---> Abort!" << std::endl; - return 2; -} catch (Dune::Exception &e) { - std::cerr << "Dune reported error: " << e << " ---> Abort!" << std::endl; - return 3; -} catch (...) { - std::cerr << "Unknown exception thrown! ---> Abort!" << std::endl; - return 4; -} diff --git a/examples/legacy/cht/monolithic/CMakeLists.txt b/examples/legacy/cht/monolithic/CMakeLists.txt deleted file mode 100644 index c837d86..0000000 --- a/examples/legacy/cht/monolithic/CMakeLists.txt +++ /dev/null @@ -1,5 +0,0 @@ -add_input_file_links() - -add_executable(test_conjugate_heat_monolithic EXCLUDE_FROM_ALL main.cc) - -target_compile_definitions(test_conjugate_heat_monolithic PUBLIC "ENABLEMONOLITHIC=1") diff --git a/examples/legacy/cht/monolithic/main.cc b/examples/legacy/cht/monolithic/main.cc deleted file mode 100644 index 05e7d1d..0000000 --- a/examples/legacy/cht/monolithic/main.cc +++ /dev/null @@ -1,286 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup BoundaryTests - * \brief A test problem for the coupled Stokes/Darcy problem (1p). - */ - -#include - -#include -#include - -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -#include - -#include "problem_freeflow.hh" -#include "problem_heat.hh" - -namespace Dumux -{ -namespace Properties -{ -template -struct CouplingManager { - using Traits = StaggeredMultiDomainTraits; - using type = Dumux::FreeFlowSolidEnergyCouplingManager; -}; - -template -struct CouplingManager { - using Traits = StaggeredMultiDomainTraits; - using type = Dumux::FreeFlowSolidEnergyCouplingManager; -}; - -} // end namespace Properties -} // end namespace Dumux - -int main(int argc, char **argv) -try { - using namespace Dumux; - - // initialize MPI, finalize is done automatically on exit - const auto &mpiHelper = Dune::MPIHelper::instance(argc, argv); - - // print dumux start message - if (mpiHelper.rank() == 0) - DumuxMessage::print(/*firstCall=*/true); - - // parse command line arguments and input file - Parameters::init(argc, argv); - - // Define the sub problem type tags - using FreeFlowTypeTag = Properties::TTag::FreeFlowModel; - using SolidEnergyTypeTag = Properties::TTag::HeatModel; - - // try to create a grid (from the given grid file or the input file) - // for both sub-domains - using SolidEnergyGridManager = - Dumux::GridManager>; - SolidEnergyGridManager solidEnergyGridManager; - solidEnergyGridManager.init("SolidEnergy"); // pass parameter group - - using FreeFlowGridManager = - Dumux::GridManager>; - FreeFlowGridManager freeFlowGridManager; - freeFlowGridManager.init("FreeFlow"); // pass parameter group - - // we compute on the leaf grid view - const auto &solidEnergyGridView = - solidEnergyGridManager.grid().leafGridView(); - const auto &freeFlowGridView = freeFlowGridManager.grid().leafGridView(); - - // create the finite volume grid geometry - using FreeFlowFVGridGeometry = - GetPropType; - auto freeFlowFvGridGeometry = - std::make_shared(freeFlowGridView); - freeFlowFvGridGeometry->update(); - using SolidEnergyFVGridGeometry = - GetPropType; - auto solidEnergyFvGridGeometry = - std::make_shared(solidEnergyGridView); - solidEnergyFvGridGeometry->update(); - - using Traits = StaggeredMultiDomainTraits; - - // the coupling manager - using CouplingManager = FreeFlowSolidEnergyCouplingManager; - auto couplingManager = std::make_shared( - freeFlowFvGridGeometry, solidEnergyFvGridGeometry); - - // the indices - constexpr auto freeFlowCellCenterIdx = - CouplingManager::freeFlowCellCenterIdx; - constexpr auto freeFlowFaceIdx = CouplingManager::freeFlowFaceIdx; - constexpr auto solidEnergyIdx = CouplingManager::solidEnergyIdx; - - // the problem (initial and boundary conditions) - using FreeFlowProblem = GetPropType; - auto freeFlowProblem = std::make_shared( - freeFlowFvGridGeometry, couplingManager); - using SolidEnergyProblem = - GetPropType; - auto solidEnergyProblem = std::make_shared( - solidEnergyFvGridGeometry, couplingManager); - - // the solution vector - Traits::SolutionVector sol; - sol[freeFlowCellCenterIdx].resize( - freeFlowFvGridGeometry->numCellCenterDofs()); - sol[freeFlowFaceIdx].resize(freeFlowFvGridGeometry->numFaceDofs()); - sol[solidEnergyIdx].resize(solidEnergyFvGridGeometry->numDofs()); - - // get a solution vector storing references to the two Stokes solution vectors - auto stokesSol = partial(sol, freeFlowCellCenterIdx, freeFlowFaceIdx); - - // apply initial solution for instationary problems - freeFlowProblem->applyInitialSolution(stokesSol); - solidEnergyProblem->applyInitialSolution(sol[solidEnergyIdx]); - - auto solOld = sol; - - couplingManager->init(freeFlowProblem, solidEnergyProblem, sol); - - // the grid variables - using FreeFlowGridVariables = - GetPropType; - auto freeFlowGridVariables = std::make_shared( - freeFlowProblem, freeFlowFvGridGeometry); - freeFlowGridVariables->init(stokesSol); - using SolidEnergyGridVariables = - GetPropType; - auto solidEnergyGridVariables = std::make_shared( - solidEnergyProblem, solidEnergyFvGridGeometry); - solidEnergyGridVariables->init(sol[solidEnergyIdx]); - - // intialize the vtk output module - StaggeredVtkOutputModule - freeFlowVtkWriter(*freeFlowGridVariables, stokesSol, - freeFlowProblem->name()); - GetPropType::initOutputModule( - freeFlowVtkWriter); - freeFlowVtkWriter.write(0.0); - - VtkOutputModule> - solidEnergyVtkWriter(*solidEnergyGridVariables, sol[solidEnergyIdx], - solidEnergyProblem->name()); - GetPropType::initOutputModule( - solidEnergyVtkWriter); - solidEnergyVtkWriter.write(0.0); - - // instantiate time loop - using Scalar = GetPropType; - const auto tEnd = getParam("TimeLoop.TEnd"); - const auto maxDt = getParam("TimeLoop.MaxTimeStepSize"); - auto dt = getParam("TimeLoop.DtInitial"); - auto timeLoop = std::make_shared>(0, dt, tEnd); - timeLoop->setMaxTimeStepSize(maxDt); - - // the assembler for a stationary problem - using Assembler = - MultiDomainFVAssembler; - auto assembler = std::make_shared( - std::make_tuple(freeFlowProblem, freeFlowProblem, solidEnergyProblem), - std::make_tuple(freeFlowFvGridGeometry->cellCenterFVGridGeometryPtr(), - freeFlowFvGridGeometry->faceFVGridGeometryPtr(), - solidEnergyFvGridGeometry), - std::make_tuple(freeFlowGridVariables->cellCenterGridVariablesPtr(), - freeFlowGridVariables->faceGridVariablesPtr(), - solidEnergyGridVariables), - couplingManager, timeLoop); - - // the linear solver - using LinearSolver = UMFPackBackend; - auto linearSolver = std::make_shared(); - - // the non-linear solver - using NewtonSolver = - MultiDomainNewtonSolver; - NewtonSolver nonLinearSolver(assembler, linearSolver, couplingManager); - - // time loop - timeLoop->start(); - do { - // set previous solution for storage evaluations - assembler->setPreviousSolution(solOld); - - // solve the non-linear system with time step control - nonLinearSolver.solve(sol, *timeLoop); - - // make the new solution the old solution - solOld = sol; - freeFlowGridVariables->advanceTimeStep(); - solidEnergyGridVariables->advanceTimeStep(); - - // advance to the time loop to the next step - timeLoop->advanceTimeStep(); - - // write vtk output - freeFlowVtkWriter.write(timeLoop->time()); - solidEnergyVtkWriter.write(timeLoop->time()); - - // report statistics of this time step - timeLoop->reportTimeStep(); - - // set new dt as suggested by newton solver - timeLoop->setTimeStepSize( - nonLinearSolver.suggestTimeStepSize(timeLoop->timeStepSize())); - - } while (!timeLoop->finished()); - - timeLoop->finalize(freeFlowGridView.comm()); - timeLoop->finalize(solidEnergyGridView.comm()); - - //////////////////////////////////////////////////////////// - // finalize, print dumux message to say goodbye - //////////////////////////////////////////////////////////// - - // print dumux end message - if (mpiHelper.rank() == 0) { - Parameters::print(); - DumuxMessage::print(/*firstCall=*/false); - } - - return 0; -} // end main -catch (Dumux::ParameterException &e) { - std::cerr << std::endl << e << " ---> Abort!" << std::endl; - return 1; -} catch (Dune::DGFException &e) { - std::cerr << "DGF exception thrown (" << e - << "). Most likely, the DGF file name is wrong " - "or the DGF file is corrupted, " - "e.g. missing hash at end of file or wrong number " - "(dimensions) of entries." - << " ---> Abort!" << std::endl; - return 2; -} catch (Dune::Exception &e) { - std::cerr << "Dune reported error: " << e << " ---> Abort!" << std::endl; - return 3; -} catch (...) { - std::cerr << "Unknown exception thrown! ---> Abort!" << std::endl; - return 4; -} diff --git a/examples/legacy/cht/monolithic/params.input b/examples/legacy/cht/monolithic/params.input deleted file mode 100644 index 42bd807..0000000 --- a/examples/legacy/cht/monolithic/params.input +++ /dev/null @@ -1,45 +0,0 @@ -[TimeLoop] -TEnd = 100 # [s] -DtInitial = 1 # [s] - -[SolidEnergy.Grid] -Positions0 = 0.5 1.5 # [m] -Positions1 = 0.0 0.25 # [m] -Cells0 = 20 # [-] -Cells1 = 10 # [-] -Grading0 = 1 -Grading1 = 1 - -[FreeFlow.Grid] -Positions0 = 0 3.5 # [m] -Positions1 = 0.25 0.75 # [m] -Cells0 = 70 # [-] -Cells1 = 30 # [-] -Grading0 = 1 -Grading1 = 1 - -[FreeFlow.Problem] -Name = freeflow -InletVelocity = 0.1 # [m/s] -InletTemperature = 300 # [K] - -[SolidEnergy.Problem] -Name = solidenergy -BottomTemperature = 310 # [K] -InitialTemperature = 300 # [K] - -[Vtk] -OutputName = test_ch_monolithic - -[Problem] -EnableGravity = false -EnableInertiaTerms = false -DiffCoeffAvgType = Harmonic - -[Component] -SolidThermalConductivity = 100 # [W/(m^2*s)] -SolidHeatCapacity = 1 # [kJ/(kg*K)] -SolidDensity = 100 # [kg/(m^3)] - -[Vtk] -AddVelocity = 1 diff --git a/examples/legacy/cht/monolithic/problem_freeflow.hh b/examples/legacy/cht/monolithic/problem_freeflow.hh deleted file mode 100644 index 63f9a1e..0000000 --- a/examples/legacy/cht/monolithic/problem_freeflow.hh +++ /dev/null @@ -1,350 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup BoundaryTests - * \brief A simple free flow test problem for the staggered grid (Navier-)Stokes model. - */ - -#ifndef DUMUX_FREEFLOW_SUBPROBLEM_HH -#define DUMUX_FREEFLOW_SUBPROBLEM_HH - -#ifndef ENABLEMONOLITHIC -#define ENABLEMONOLITHIC 1 -#endif - -#include - -#include -#include - -#include -#include -#include - -#if !ENABLEMONOLITHIC -#include "../common/preciceadapter.hh" -#endif - -namespace Dumux -{ -template -class FreeFlowSubProblem; - -namespace Properties -{ -// Create new type tags -namespace TTag -{ -struct FreeFlowModel { - using InheritsFrom = std::tuple; -}; -} // end namespace TTag - -// the fluid system -template -struct FluidSystem { - using Scalar = GetPropType; - using type = FluidSystems::OnePGas >; -}; - -// Set the grid type -template -struct Grid { - using type = Dune::YaspGrid< - 2, - Dune::TensorProductCoordinates, - 2> >; -}; - -// Set the problem property -template -struct Problem { - using type = Dumux::FreeFlowSubProblem; -}; - -template -struct EnableFVGridGeometryCache { - static constexpr bool value = true; -}; -template -struct EnableGridFluxVariablesCache { - static constexpr bool value = true; -}; -template -struct EnableGridVolumeVariablesCache { - static constexpr bool value = true; -}; -} // end namespace Properties - -/*! - * \ingroup BoundaryTests - * \brief Test problem for the one-phase (Navier-) Stokes problem. - * - * Horizontal flow from left to right with a parabolic velocity profile. - */ -template -class FreeFlowSubProblem : public NavierStokesProblem -{ - using ParentType = NavierStokesProblem; - - using GridView = GetPropType; - using Scalar = GetPropType; - - using Indices = - typename GetPropType::Indices; - - using BoundaryTypes = GetPropType; - - using FVGridGeometry = GetPropType; - using FVElementGeometry = typename FVGridGeometry::LocalView; - using SubControlVolumeFace = - typename FVElementGeometry::SubControlVolumeFace; - using Element = typename GridView::template Codim<0>::Entity; - - using GlobalPosition = typename Element::Geometry::GlobalCoordinate; - - using PrimaryVariables = GetPropType; - using NumEqVector = GetPropType; - -#if ENABLEMONOLITHIC - using CouplingManager = GetPropType; -#endif - -public: -#if ENABLEMONOLITHIC - FreeFlowSubProblem(std::shared_ptr fvGridGeometry, - std::shared_ptr couplingManager) - : ParentType(fvGridGeometry, "FreeFlow"), - eps_(1e-6), - couplingManager_(couplingManager) -#else - FreeFlowSubProblem(std::shared_ptr fvGridGeometry) - : ParentType(fvGridGeometry, "FreeFlow"), - eps_(1e-6), - couplingInterface_(precice_adapter::PreciceAdapter::getInstance()) -#endif - { - problemName_ = - getParam("Vtk.OutputName") + "_" + - getParamFromGroup(this->paramGroup(), "Problem.Name"); - inletVelocity_ = getParamFromGroup(this->paramGroup(), - "Problem.InletVelocity"); - inletTemperature_ = getParamFromGroup( - this->paramGroup(), "Problem.InletTemperature"); - } - - /*! - * \brief The problem name. - */ - const std::string &name() const { return problemName_; } - - /*! - * \name Boundary conditions - */ - // \{ - - /*! - * \brief Specifies which kind of boundary condition should be - * used for which equation on a given boundary segment. - * - * \param element The finite element - * \param scvf The sub control volume face - */ - BoundaryTypes boundaryTypes(const Element &element, - const SubControlVolumeFace &scvf) const - { - BoundaryTypes values; - - const auto &globalPos = scvf.dofPosition(); - - // inlet - if (onLeftBoundary_(globalPos)) { - values.setDirichlet(Indices::velocityXIdx); - values.setDirichlet(Indices::velocityYIdx); - values.setDirichlet(Indices::temperatureIdx); - } - // outlet - else if (onRightBoundary_(globalPos)) { - values.setDirichlet(Indices::pressureIdx); - values.setOutflow(Indices::energyEqIdx); - } else // wall - { - values.setDirichlet(Indices::velocityXIdx); - values.setDirichlet(Indices::velocityYIdx); - values.setNeumann(Indices::energyEqIdx); - } - -#if ENABLEMONOLITHIC - if (couplingManager().isCoupledEntity(CouplingManager::freeFlowIdx, - scvf)) { - values.setDirichlet(Indices::velocityXIdx); - values.setDirichlet(Indices::velocityYIdx); - values.setCouplingNeumann(Indices::energyEqIdx); - } -#else - //TODO preCICE - const auto faceId = scvf.index(); - if (couplingInterface_.isCoupledEntity(faceId)) { - values.setDirichlet(Indices::velocityXIdx); - values.setDirichlet(Indices::velocityYIdx); - values.setNeumann(Indices::energyEqIdx); - } -#endif - - return values; - } - - /*! - * \brief Evaluates the boundary conditions for a Dirichlet control volume. - */ - PrimaryVariables dirichletAtPos(const GlobalPosition &globalPos) const - { - return initialAtPos(globalPos); - } - - /*! - * \brief Evaluates the boundary conditions for a Neumann control volume. - * - * \param element The element for which the Neumann boundary condition is set - * \param fvGeometry The fvGeometry - * \param elemVolVars The element volume variables - * \param elemFaceVars The element face variables - * \param scvf The boundary sub control volume face - */ - template - NumEqVector neumann(const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &elemVolVars, - const ElementFaceVariables &elemFaceVars, - const SubControlVolumeFace &scvf) const - { - NumEqVector values(0.0); - -#if ENABLEMONOLITHIC - static const auto avgType = FreeFlowHeatCouplingOptions::stringToEnum( - getParamFromGroup(this->paramGroup(), - "Problem.DiffCoeffAvgType", - "FreeFlowOnly")); - if (couplingManager().isCoupledEntity(CouplingManager::freeFlowIdx, - scvf)) - values[Indices::energyEqIdx] = - couplingManager().couplingData().energyCouplingCondition( - element, fvGeometry, elemVolVars, elemFaceVars, scvf, - avgType); -#else - // TODO preCICE - const auto faceId = scvf.index(); - if (couplingInterface_.isCoupledEntity(faceId)) { - // Actually gets temperature - const auto &scv = fvGeometry.scv(scvf.insideScvIdx()); - const auto &volVars = elemVolVars[scv]; - const Scalar cellCenterTemperature = volVars.temperature(); - const Scalar distance = (scvf.center() - scv.center()).two_norm(); - const Scalar insideLambda = volVars.effectiveThermalConductivity(); - const Scalar boundaryTemperature = - couplingInterface_.getTemperatureOnFace(faceId); - // q = -lambda * (t_face - t_cc) / dx - //const Scalar qHeat = -insideLambda * (cellCenterTemperature-boundaryTemperature) / distance; - const Scalar qHeat = insideLambda * - (cellCenterTemperature - boundaryTemperature) / - distance; - - values[Indices::energyEqIdx] = qHeat; - } -#endif - - return values; - } - -#if ENABLEMONOLITHIC - //! Get the coupling manager - const CouplingManager &couplingManager() const { return *couplingManager_; } -#endif - - /*! - * \name Volume terms - */ - // \{ - - /*! - * \brief Evaluates the initial value for a control volume. - * - * \param globalPos The global position - */ - PrimaryVariables initialAtPos(const GlobalPosition &globalPos) const - { - PrimaryVariables values(0.0); - - values[Indices::pressureIdx] = 1e5; - values[Indices::energyEqIdx] = inletTemperature_; - - // parabolic velocity profile - values[Indices::velocityXIdx] = - inletVelocity_ * - (globalPos[1] - this->fvGridGeometry().bBoxMin()[1]) * - (this->fvGridGeometry().bBoxMax()[1] - globalPos[1]) / - (0.25 * - (this->fvGridGeometry().bBoxMax()[1] - - this->fvGridGeometry().bBoxMin()[1]) * - (this->fvGridGeometry().bBoxMax()[1] - - this->fvGridGeometry().bBoxMin()[1])); - - values[Indices::velocityYIdx] = 0.0; - - return values; - } - - // \} - -private: - bool onLeftBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[0] < this->fvGridGeometry().bBoxMin()[0] + eps_; - } - - bool onRightBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[0] > this->fvGridGeometry().bBoxMax()[0] - eps_; - } - - bool onLowerBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[1] < this->fvGridGeometry().bBoxMin()[1] + eps_; - } - - bool onUpperBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[1] > this->fvGridGeometry().bBoxMax()[1] - eps_; - } - - Scalar eps_; - std::string problemName_; - Scalar inletVelocity_; - Scalar inletTemperature_; - -#if ENABLEMONOLITHIC - std::shared_ptr couplingManager_; -#else - precice_adapter::PreciceAdapter &couplingInterface_; -#endif -}; -} // end namespace Dumux - -#endif // DUMUX_FREEFLOW_SUBPROBLEM_HH diff --git a/examples/legacy/cht/monolithic/problem_heat.hh b/examples/legacy/cht/monolithic/problem_heat.hh deleted file mode 100644 index def624a..0000000 --- a/examples/legacy/cht/monolithic/problem_heat.hh +++ /dev/null @@ -1,268 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup BoundaryTests - * \brief A simple heat test problem (cell-centered finite volume method). - */ - -#ifndef DUMUX_HEAT_SUBPROBLEM_HH -#define DUMUX_HEAT_SUBPROBLEM_HH - -#ifndef ENABLEMONOLITHIC -#define ENABLEMONOLITHIC 1 -#endif - -#include - -#include -#include - -#include - -#include "spatialparams.hh" - -#if !ENABLEMONOLITHIC -#include "../common/preciceadapter.hh" -#endif - -namespace Dumux -{ -template -class HeatSubProblem; - -namespace Properties -{ -// Create new type tags -namespace TTag -{ -struct HeatModel { - using InheritsFrom = std::tuple; -}; -} // end namespace TTag - -// Set the problem property -template -struct Problem { - using type = Dumux::HeatSubProblem; -}; - -// Set the grid type -template -struct Grid { - using type = Dune::YaspGrid< - 2, - Dune::TensorProductCoordinates, - 2> >; -}; - -template -struct SpatialParams { - using FVGridGeometry = GetPropType; - using Scalar = GetPropType; - using type = OnePSpatialParams; -}; -} // end namespace Properties - -template -class HeatSubProblem : public PorousMediumFlowProblem -{ - using ParentType = PorousMediumFlowProblem; - using GridView = GetPropType; - using Scalar = GetPropType; - using PrimaryVariables = GetPropType; - using NumEqVector = GetPropType; - using BoundaryTypes = GetPropType; - using FVElementGeometry = - typename GetPropType::LocalView; - using SubControlVolume = typename FVElementGeometry::SubControlVolume; - using SubControlVolumeFace = - typename FVElementGeometry::SubControlVolumeFace; - using FVGridGeometry = GetPropType; - - using Indices = - typename GetPropType::Indices; - - using Element = typename GridView::template Codim<0>::Entity; - using GlobalPosition = typename Element::Geometry::GlobalCoordinate; - -#if ENABLEMONOLITHIC - using CouplingManager = GetPropType; -#endif - -public: -#if ENABLEMONOLITHIC - HeatSubProblem(std::shared_ptr fvGridGeometry, - std::shared_ptr couplingManager) - : ParentType(fvGridGeometry, "SolidEnergy"), - eps_(1e-7), - couplingManager_(couplingManager) -#else - HeatSubProblem(std::shared_ptr fvGridGeometry) - : ParentType(fvGridGeometry, "SolidEnergy"), - eps_(1e-7), - couplingInterface_(precice_adapter::PreciceAdapter::getInstance()) -#endif - { - problemName_ = - getParam("Vtk.OutputName") + "_" + - getParamFromGroup(this->paramGroup(), "Problem.Name"); - bottomTemperature_ = getParamFromGroup( - this->paramGroup(), "Problem.BottomTemperature"); - initialTemperature_ = getParamFromGroup( - this->paramGroup(), "Problem.InitialTemperature"); - } - - /*! - * \brief The problem name. - */ - const std::string &name() const { return problemName_; } - - /*! - * \name Boundary conditions - */ - // \{ - - /*! - * \brief Specifies which kind of boundary condition should be - * used for which equation on a given boundary control volume. - * - * \param element The element - * \param scvf The boundary sub control volume face - */ - BoundaryTypes boundaryTypes(const Element &element, - const SubControlVolumeFace &scvf) const - { - BoundaryTypes values; - values.setAllNeumann(); - - if (onLowerBoundary_(scvf.center())) - values.setAllDirichlet(); - -#if ENABLEMONOLITHIC - if (couplingManager().isCoupledEntity(CouplingManager::solidEnergyIdx, - scvf)) - values.setAllCouplingNeumann(); -#endif - // Note: No special treatment for preCICE needed, all BCs are Neumann anyways - - return values; - } - - /*! - * \brief Evaluates the boundary conditions for a Dirichlet control volume. - * - * \param element The element for which the Dirichlet boundary condition is set - * \param scvf The boundary subcontrolvolumeface - * - * For this method, the \a values parameter stores primary variables. - */ - PrimaryVariables dirichlet(const Element &element, - const SubControlVolumeFace &scvf) const - { - return initialAtPos(scvf.center()); - } - - /*! - * \brief Evaluates the boundary conditions for a Neumann control volume. - * - * \param element The element for which the Neumann boundary condition is set - * \param fvGeometry The fvGeometry - * \param elemVolVars The element volume variables - * \param scvf The boundary sub control volume face - * - * For this method, the \a values variable stores primary variables. - */ - template - NumEqVector neumann(const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &elemVolVars, - const SubControlVolumeFace &scvf) const - { - NumEqVector values(0.0); - -#if ENABLEMONOLITHIC - static const auto avgType = FreeFlowHeatCouplingOptions::stringToEnum( - getParamFromGroup(this->paramGroup(), - "Problem.DiffCoeffAvgType", - "FreeFlowOnly")); - if (couplingManager().isCoupledEntity(CouplingManager::solidEnergyIdx, - scvf)) - values = couplingManager().couplingData().energyCouplingCondition( - element, fvGeometry, elemVolVars, scvf, avgType); -#else - //TODO preCICE - const auto faceId = scvf.index(); - if (couplingInterface_.isCoupledEntity(faceId)) { - // ALEX: I made the heat flux negative since the normal vectors of both solvers are different! - values[Indices::energyEqIdx] = - -couplingInterface_.getHeatFluxOnFace(faceId); - } -#endif - - return values; - } - - // \} - - /*! - * \brief Evaluates the initial value for a control volume. - * - * \param element The element - * - * For this method, the \a priVars parameter stores primary - * variables. - */ - PrimaryVariables initialAtPos(const GlobalPosition &pos) const - { - PrimaryVariables values(initialTemperature_); - - if (onLowerBoundary_(pos)) - values = bottomTemperature_; - - return values; - } - - // \} - -#if ENABLEMONOLITHIC - //! Get the coupling manager - const CouplingManager &couplingManager() const { return *couplingManager_; } -#endif - -private: - bool onLowerBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[1] < this->fvGridGeometry().bBoxMin()[1] + eps_; - } - - Scalar eps_; - std::string problemName_; - Scalar bottomTemperature_; - Scalar initialTemperature_; - -#if ENABLEMONOLITHIC - std::shared_ptr couplingManager_; -#else - precice_adapter::PreciceAdapter &couplingInterface_; -#endif -}; -} // end namespace Dumux - -#endif //DUMUX_HEAT_SUBPROBLEM_HH diff --git a/examples/legacy/cht/monolithic/spatialparams.hh b/examples/legacy/cht/monolithic/spatialparams.hh deleted file mode 100644 index 8665866..0000000 --- a/examples/legacy/cht/monolithic/spatialparams.hh +++ /dev/null @@ -1,70 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup BoundaryTests - * \brief The spatial parameters class for the test problem using the 1p cc model. - */ - -#ifndef DUMUX_1P_TEST_SPATIALPARAMS_HH -#define DUMUX_1P_TEST_SPATIALPARAMS_HH - -#include - -namespace Dumux -{ -/*! - * \ingroup BoundaryTests - * \brief The spatial parameters class for the test problem using the - * 1p cc model. - */ -template -class OnePSpatialParams - : public FVSpatialParamsOneP> -{ - using ParentType = - FVSpatialParamsOneP>; - -public: - // export permeability type - using PermeabilityType = Scalar; - - OnePSpatialParams(std::shared_ptr fvGridGeometry) - : ParentType(fvGridGeometry) - { - } - - /*! \brief Defines the porosity in [-]. - * - * \param globalPos The global position - */ - template - Scalar porosityAtPos(const GlobalPosition &globalPos) const - { - return 0.0; - } -}; - -} // end namespace Dumux - -#endif diff --git a/examples/legacy/cht/partitioned/CMakeLists.txt b/examples/legacy/cht/partitioned/CMakeLists.txt deleted file mode 100644 index 5df7d46..0000000 --- a/examples/legacy/cht/partitioned/CMakeLists.txt +++ /dev/null @@ -1,38 +0,0 @@ -add_input_file_links() -dune_symlink_to_source_files(FILES "precice-config.xml" "precice-config-serial-implicit.xml") - -add_executable(test_freeflow EXCLUDE_FROM_ALL main_freeflow.cc ../common/preciceadapter.cc ../common/dumuxpreciceindexwrapper.cc ../common/helperfunctions.cc) -add_executable(test_solidenergy EXCLUDE_FROM_ALL main_solidenergy.cc ../common/preciceadapter.cc ../common/dumuxpreciceindexwrapper.cc ../common/helperfunctions.cc) -#add_executable(test_preciceadapter EXCLUDE_FROM_ALL preciceadapter.cc) - -target_compile_definitions(test_freeflow PUBLIC "ENABLEMONOLITHIC=0") -target_compile_definitions(test_solidenergy PUBLIC "ENABLEMONOLITHIC=0") - -#set_property( TARGET libprecice IMPORTED_LOCATION $ENV{PRECICE_ROOT}/build/last/librprecice.so ) - - -set(LIBRARY_DIRS "") -if(DEFINED ENV{LD_LIBRARY_PATH}) - message(STATUS "LD_LIBRARY_PATH is set. Use it for hinting") - string(REPLACE ":" ";" LIBRARY_DIRS $ENV{LD_LIBRARY_PATH} ) -endif() -message(STATUS "LIBRARY_DIRS: ${LIBRARY_DIRS}") -find_library(PRECICE_LIB NAMES precice HINTS ${LIBRARY_DIRS}) -find_package(Boost 1.65.1 REQUIRED COMPONENTS log system) #Require same version as preCICE - - -target_compile_definitions(test_freeflow PRIVATE BOOST_ALL_DYN_LINK) -target_link_libraries(test_freeflow PRIVATE ${Boost_LIBRARIES} ${PRECICE_LIB}) -target_include_directories(test_freeflow PRIVATE ${Boost_INCLUDE_DIRS}) - -target_compile_definitions(test_solidenergy PRIVATE BOOST_ALL_DYN_LINK) -target_link_libraries(test_solidenergy PRIVATE ${Boost_LIBRARIES} ${PRECICE_LIB}) -target_include_directories(test_solidenergy PRIVATE ${Boost_INCLUDE_DIRS}) - -#include_directories(${BOOST_INCLUDE_DIR}) -#add_definitions(-DBOOST_LOG_DYN_LINK) - -#target_link_libraries(test_freeflow precice ${Boost_LOG_LIBRARY} ${Boost_SYSTEM_LIBRARY}) -#target_link_libraries(test_solidenergy precice ${Boost_LOG_LIBRARY} ${Boost_SYSTEM_LIBRARY}) -#target_link_libraries( test_freeflow precice ) -#set_property( TARGET libprecice IMPORTED_LOCATION $ENV{PRECICE_ROOT}/build/last/librprecice.so ) diff --git a/examples/legacy/cht/partitioned/main_freeflow.cc b/examples/legacy/cht/partitioned/main_freeflow.cc deleted file mode 100644 index ce835e5..0000000 --- a/examples/legacy/cht/partitioned/main_freeflow.cc +++ /dev/null @@ -1,301 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup BoundaryTests - * \brief A free flow test problem. - */ - -#include - -#include -#include - -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include - -#include "../common/helperfunctions.hh" -#include "../common/preciceadapter.hh" -#include "../monolithic/problem_freeflow.hh" - -int main(int argc, char **argv) -try { - using namespace Dumux; - - // initialize MPI, finalize is done automatically on exit - const auto &mpiHelper = Dune::MPIHelper::instance(argc, argv); - - // print dumux start message - if (mpiHelper.rank() == 0) - DumuxMessage::print(/*firstCall=*/true); - - // parse command line arguments and input file - Parameters::init(argc, argv); - - // Define the sub problem type tags - using FreeFlowTypeTag = Properties::TTag::FreeFlowModel; - - // try to create a grid (from the given grid file or the input file) - using FreeFlowGridManager = - Dumux::GridManager>; - FreeFlowGridManager freeFlowGridManager; - freeFlowGridManager.init("FreeFlow"); // pass parameter group - - // we compute on the leaf grid view - const auto &freeFlowGridView = freeFlowGridManager.grid().leafGridView(); - - // create the finite volume grid geometry - using FreeFlowFVGridGeometry = - GetPropType; - auto freeFlowFvGridGeometry = - std::make_shared(freeFlowGridView); - freeFlowFvGridGeometry->update(); - - // the problem (initial and boundary conditions) - using FreeFlowProblem = GetPropType; - auto freeFlowProblem = - std::make_shared(freeFlowFvGridGeometry); - - // the solution vector - GetPropType sol; - sol[FreeFlowFVGridGeometry::cellCenterIdx()].resize( - freeFlowFvGridGeometry->numCellCenterDofs()); - sol[FreeFlowFVGridGeometry::faceIdx()].resize( - freeFlowFvGridGeometry->numFaceDofs()); - - // Initialize preCICE.Tell preCICE about: - // - Name of solver - // - What rank of how many ranks this instance is - // Configure preCICE. For now the config file is hardcoded. - //couplingInterface.createInstance( "FreeFlow", mpiHelper.rank(), mpiHelper.size() ); - std::string preciceConfigFilename = "precice-config.xml"; - if (argc == 3) - preciceConfigFilename = argv[2]; - - auto &couplingInterface = precice_adapter::PreciceAdapter::getInstance(); - couplingInterface.announceSolver("FreeFlow", preciceConfigFilename, - mpiHelper.rank(), mpiHelper.size()); - // couplingInterface.configure( preciceConfigFilename ); - - const int dim = couplingInterface.getDimensions(); - std::cout << dim << " " << int(FreeFlowFVGridGeometry::GridView::dimension) - << std::endl; - if (dim != int(FreeFlowFVGridGeometry::GridView::dimension)) - DUNE_THROW(Dune::InvalidStateException, "Dimensions do not match"); - - // GET mesh corodinates - const double xMin = getParamFromGroup>( - "SolidEnergy", "Grid.Positions0")[0]; - const double xMax = - getParamFromGroup>("SolidEnergy", "Grid.Positions0") - .back(); - std::vector coords; //( dim * vertexSize ); - std::vector coupledScvfIndices; - - for (const auto &element : elements(freeFlowGridView)) { - auto fvGeometry = localView(*freeFlowFvGridGeometry); - fvGeometry.bindElement(element); - - for (const auto &scvf : scvfs(fvGeometry)) { - static constexpr auto eps = 1e-7; - const auto &pos = scvf.center(); - if (pos[1] < freeFlowFvGridGeometry->bBoxMin()[1] + eps) { - if (pos[0] > xMin - eps && pos[0] < xMax + eps) { - coupledScvfIndices.push_back(scvf.index()); - for (const auto p : pos) - coords.push_back(p); - } - } - } - } - - const auto numberOfPoints = coords.size() / dim; - const double preciceDt = couplingInterface.setMeshAndInitialize( - "FreeFlowMesh", numberOfPoints, coords, coupledScvfIndices); - - // apply initial solution for instationary problems - freeFlowProblem->applyInitialSolution(sol); - - auto solOld = sol; - - // the grid variables - using FreeFlowGridVariables = - GetPropType; - auto freeFlowGridVariables = std::make_shared( - freeFlowProblem, freeFlowFvGridGeometry); - freeFlowGridVariables->init(sol); - - // intialize the vtk output module - StaggeredVtkOutputModule - freeFlowVtkWriter(*freeFlowGridVariables, sol, freeFlowProblem->name()); - GetPropType::initOutputModule( - freeFlowVtkWriter); - freeFlowVtkWriter.write(0.0); - - if (couplingInterface.hasToWriteInitialData()) { - helperfunctions::setBoundaryHeatFluxes(*freeFlowProblem, - *freeFlowGridVariables, sol); - couplingInterface.writeHeatFluxToOtherSolver(); - couplingInterface.announceInitialDataWritten(); - } - couplingInterface.initializeData(); - - /* - if ( couplingInterface.isInitialDataAvailable() ) - { - couplingInterface.readTemperatureFromOtherSolver(); - } - */ - - // instantiate time loop - using Scalar = GetPropType; - const auto tEnd = getParam("TimeLoop.TEnd"); - const auto maxDt = getParam("TimeLoop.MaxTimeStepSize"); - auto dt = getParam("TimeLoop.DtInitial"); - - //Time step size can also be changed by preCICE - dt = std::min(dt, preciceDt); - - auto timeLoop = std::make_shared>(0, dt, tEnd); - timeLoop->setMaxTimeStepSize(maxDt); - - // the assembler for a stationary problem - using Assembler = - StaggeredFVAssembler; - auto assembler = - std::make_shared(freeFlowProblem, freeFlowFvGridGeometry, - freeFlowGridVariables, timeLoop); - - // the linear solver - using LinearSolver = UMFPackBackend; - auto linearSolver = std::make_shared(); - - // the non-linear solver - using NewtonSolver = NewtonSolver; - NewtonSolver nonLinearSolver(assembler, linearSolver); - - //Checkpointing variable for preCICE - auto sol_checkpoint = sol; - - // time loop - timeLoop->start(); - //do - while (couplingInterface.isCouplingOngoing()) { - if (couplingInterface.hasToWriteIterationCheckpoint()) { - //DO CHECKPOINTING - sol_checkpoint = sol; - couplingInterface.announceIterationCheckpointWritten(); - } - - // Read heat flux from precice. - couplingInterface.readTemperatureFromOtherSolver(); - - // set previous solution for storage evaluations - assembler->setPreviousSolution(solOld); - - // solve the non-linear system with time step control - nonLinearSolver.solve(sol, *timeLoop); - - // Write heatflux to wrapper - helperfunctions::setBoundaryHeatFluxes(*freeFlowProblem, - *freeFlowGridVariables, sol); - //Tell wrapper that all values have been written - couplingInterface.writeHeatFluxToOtherSolver(); - const double preciceDt = - couplingInterface.advance(timeLoop->timeStepSize()); - - // set new dt as suggested by newton solver - const double newDt = std::min( - preciceDt, - nonLinearSolver.suggestTimeStepSize(timeLoop->timeStepSize())); - - timeLoop->setTimeStepSize(newDt); - - if (couplingInterface.hasToReadIterationCheckpoint()) { - //Read checkpoint - sol = sol_checkpoint; - freeFlowGridVariables->update(sol); - freeFlowGridVariables->advanceTimeStep(); - //freeFlowGridVariables->init(sol); - couplingInterface.announceIterationCheckpointRead(); - } else // coupling successful - { - // advance to the time loop to the next step - timeLoop->advanceTimeStep(); - - // write vtk output - freeFlowVtkWriter.write(timeLoop->time()); - - // report statistics of this time step - timeLoop->reportTimeStep(); - - solOld = sol; - } - } - //while (!timeLoop->finished() && couplingInterface.isCouplingOngoing()); - - timeLoop->finalize(freeFlowGridView.comm()); - couplingInterface.finalize(); - - //////////////////////////////////////////////////////////// - // finalize, print dumux message to say goodbye - //////////////////////////////////////////////////////////// - - // print dumux end message - if (mpiHelper.rank() == 0) { - Parameters::print(); - DumuxMessage::print(/*firstCall=*/false); - } - - return 0; -} // end main -catch (Dumux::ParameterException &e) { - std::cerr << std::endl << e << " ---> Abort!" << std::endl; - return 1; -} catch (Dune::DGFException &e) { - std::cerr << "DGF exception thrown (" << e - << "). Most likely, the DGF file name is wrong " - "or the DGF file is corrupted, " - "e.g. missing hash at end of file or wrong number " - "(dimensions) of entries." - << " ---> Abort!" << std::endl; - return 2; -} catch (Dune::Exception &e) { - std::cerr << "Dune reported error: " << e << " ---> Abort!" << std::endl; - return 3; -} catch (...) { - std::cerr << "Unknown exception thrown! ---> Abort!" << std::endl; - return 4; -} diff --git a/examples/legacy/cht/partitioned/main_solidenergy.cc b/examples/legacy/cht/partitioned/main_solidenergy.cc deleted file mode 100644 index 6489dbf..0000000 --- a/examples/legacy/cht/partitioned/main_solidenergy.cc +++ /dev/null @@ -1,302 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup BoundaryTests - * \brief Main file for the heat problem. - */ - -#include - -#include -#include - -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -#include "../common/helperfunctions.hh" -#include "../common/preciceadapter.hh" -#include "../monolithic/problem_heat.hh" - -int main(int argc, char **argv) -try { - using namespace Dumux; - - // initialize MPI, finalize is done automatically on exit - const auto &mpiHelper = Dune::MPIHelper::instance(argc, argv); - - // print dumux start message - if (mpiHelper.rank() == 0) - DumuxMessage::print(/*firstCall=*/true); - - // parse command line arguments and input file - Parameters::init(argc, argv); - - // Define the sub problem type tag - using SolidEnergyTypeTag = Properties::TTag::HeatModel; - - // try to create a grid (from the given grid file or the input file) - // for both sub-domains - using SolidEnergyGridManager = - Dumux::GridManager>; - SolidEnergyGridManager solidEnergyGridManager; - solidEnergyGridManager.init("SolidEnergy"); // pass parameter group - - // we compute on the leaf grid view - const auto &solidEnergyGridView = - solidEnergyGridManager.grid().leafGridView(); - - using SolidEnergyFVGridGeometry = - GetPropType; - auto solidEnergyFvGridGeometry = - std::make_shared(solidEnergyGridView); - solidEnergyFvGridGeometry->update(); - - // the problem (initial and boundary conditions) - using SolidEnergyProblem = - GetPropType; - auto solidEnergyProblem = - std::make_shared(solidEnergyFvGridGeometry); - - // the solution vector - GetPropType sol; - sol.resize(solidEnergyFvGridGeometry->numDofs()); - - // Initialize preCICE.Tell preCICE about: - // - Name of solver - // - What rank of how many ranks this instance is - // Configure preCICE. For now the config file is hardcoded. - std::string preciceConfigFilename = "precice-config.xml"; - if (argc == 3) - preciceConfigFilename = argv[2]; - auto &couplingInterface = precice_adapter::PreciceAdapter::getInstance(); - couplingInterface.announceSolver("SolidEnergy", preciceConfigFilename, - mpiHelper.rank(), mpiHelper.size()); - - const int dim = couplingInterface.getDimensions(); - if (dim != int(SolidEnergyFVGridGeometry::GridView::dimension)) - DUNE_THROW(Dune::InvalidStateException, "Dimensions do not match"); - - std::vector coords; //( dim * numPoints ); - std::vector coupledScvfIndices; - - for (const auto &element : elements(solidEnergyGridView)) { - auto fvGeometry = localView(*solidEnergyFvGridGeometry); - fvGeometry.bindElement(element); - - for (const auto &scvf : scvfs(fvGeometry)) { - static constexpr auto eps = 1e-7; - const auto &pos = scvf.center(); - if (pos[1] > solidEnergyFvGridGeometry->bBoxMax()[1] - eps) { - coupledScvfIndices.push_back(scvf.index()); - for (const auto p : pos) - coords.push_back(p); - } - } - } - - const auto numPoints = coords.size() / dim; - - const double preciceDt = couplingInterface.setMeshAndInitialize( - "SolidEnergyMesh", numPoints, coords, coupledScvfIndices); - - // apply initial solution for instationary problems - solidEnergyProblem->applyInitialSolution(sol); - - auto solOld = sol; - - // the grid variables - using SolidEnergyGridVariables = - GetPropType; - auto solidEnergyGridVariables = std::make_shared( - solidEnergyProblem, solidEnergyFvGridGeometry); - solidEnergyGridVariables->init(sol); - - // intialize the vtk output module - VtkOutputModule> - solidEnergyVtkWriter(*solidEnergyGridVariables, sol, - solidEnergyProblem->name()); - GetPropType::initOutputModule( - solidEnergyVtkWriter); - solidEnergyVtkWriter.write(0.0); - - if (couplingInterface.hasToWriteInitialData()) { - using namespace helperfunctions::heat; - setBoundaryTemperatures>( - *solidEnergyProblem, *solidEnergyGridVariables, sol); - couplingInterface.writeTemperatureToOtherSolver(); - couplingInterface.announceInitialDataWritten(); - } - - couplingInterface.initializeData(); - - /* - if ( couplingInterface.isInitialDataAvailable() ) - { - couplingInterface.readHeatFluxFromOtherSolver(); - } - */ - - // instantiate time loop - using Scalar = GetPropType; - const auto tEnd = getParam("TimeLoop.TEnd"); - const auto maxDt = getParam("TimeLoop.MaxTimeStepSize"); - auto dt = getParam("TimeLoop.DtInitial"); - - //Time step size can also be changed by preCICE - dt = std::min(dt, preciceDt); - - auto timeLoop = std::make_shared>(0, dt, tEnd); - timeLoop->setMaxTimeStepSize(maxDt); - - // the assembler for a stationary problem - using Assembler = FVAssembler; - auto assembler = std::make_shared( - solidEnergyProblem, solidEnergyFvGridGeometry, solidEnergyGridVariables, - timeLoop); - - // the linear solver - using LinearSolver = UMFPackBackend; - auto linearSolver = std::make_shared(); - - // the non-linear solver - using NewtonSolver = NewtonSolver; - NewtonSolver nonLinearSolver(assembler, linearSolver); - - // TODO resize - std::vector boundaryTemperature; - - //Checkpointing variable for preCICE - auto sol_checkpoint = sol; - - // setBoundaryTemperatures>(*solidEnergyProblem, *solidEnergyGridVariables, sol ); - // couplingInterface.writeTemperatureToOtherSolver(); - - // time loop - timeLoop->start(); - //do - while (couplingInterface.isCouplingOngoing()) { - if (couplingInterface.hasToWriteIterationCheckpoint()) { - //DO CHECKPOINTING - sol_checkpoint = sol; - couplingInterface.announceIterationCheckpointWritten(); - } - - // Read heat flux from precice - couplingInterface.readHeatFluxFromOtherSolver(); - - // set previous solution for storage evaluations - assembler->setPreviousSolution(solOld); - - // solve the non-linear system with time step control - nonLinearSolver.solve(sol, *timeLoop); - - // make the new solution the old solution - - //TODO DO WE HAVE TO MOVE THAT? - solidEnergyGridVariables->advanceTimeStep(); - - using namespace helperfunctions::heat; - setBoundaryTemperatures>( - *solidEnergyProblem, *solidEnergyGridVariables, sol); - couplingInterface.writeTemperatureToOtherSolver(); - - const double preciceDt = - couplingInterface.advance(timeLoop->timeStepSize()); - - // set new dt as suggested by newton solver - const double newDt = std::min( - preciceDt, - nonLinearSolver.suggestTimeStepSize(timeLoop->timeStepSize())); - - timeLoop->setTimeStepSize(newDt); - - if (couplingInterface.hasToReadIterationCheckpoint()) { - //Read checkpoint - sol = sol_checkpoint; - solidEnergyGridVariables->update(sol); - solidEnergyGridVariables->advanceTimeStep(); - //solidEnergyGridVariables->init(sol); - couplingInterface.announceIterationCheckpointRead(); - } else // coupling successful - { - // advance to the time loop to the next step - timeLoop->advanceTimeStep(); - - // write vtk output - solidEnergyVtkWriter.write(timeLoop->time()); - - // report statistics of this time step - timeLoop->reportTimeStep(); - - solOld = sol; - } - } - // } while (!timeLoop->finished() && couplingInterface.isCouplingOngoing() ); - - timeLoop->finalize(solidEnergyGridView.comm()); - couplingInterface.finalize(); - - //////////////////////////////////////////////////////////// - // finalize, print dumux message to say goodbye - //////////////////////////////////////////////////////////// - - // print dumux end message - if (mpiHelper.rank() == 0) { - Parameters::print(); - DumuxMessage::print(/*firstCall=*/false); - } - - return 0; -} // end main -catch (Dumux::ParameterException &e) { - std::cerr << std::endl << e << " ---> Abort!" << std::endl; - return 1; -} catch (Dune::DGFException &e) { - std::cerr << "DGF exception thrown (" << e - << "). Most likely, the DGF file name is wrong " - "or the DGF file is corrupted, " - "e.g. missing hash at end of file or wrong number " - "(dimensions) of entries." - << " ---> Abort!" << std::endl; - return 2; -} catch (Dune::Exception &e) { - std::cerr << "Dune reported error: " << e << " ---> Abort!" << std::endl; - return 3; -} catch (...) { - std::cerr << "Unknown exception thrown! ---> Abort!" << std::endl; - return 4; -} diff --git a/examples/legacy/cht/partitioned/params.input b/examples/legacy/cht/partitioned/params.input deleted file mode 100644 index 14ce7aa..0000000 --- a/examples/legacy/cht/partitioned/params.input +++ /dev/null @@ -1,44 +0,0 @@ -[TimeLoop] -TEnd = 100 # [s] -DtInitial = 1 # [s] - -[SolidEnergy.Grid] -Positions0 = 0.5 1.5 # [m] -Positions1 = 0.0 0.25 # [m] -Cells0 = 20 # [-] -Cells1 = 10 # [-] -Grading0 = 1 -Grading1 = 1 - -[FreeFlow.Grid] -Positions0 = 0 3.5 # [m] -Positions1 = 0.25 0.75 # [m] -Cells0 = 70 # [-] -Cells1 = 30 # [-] -Grading0 = 1 -Grading1 = 1 - -[FreeFlow.Problem] -Name = freeflow -InletVelocity = 0.1 # [m/s] -InletTemperature = 300 # [K] - -[SolidEnergy.Problem] -Name = solidenergy -BottomTemperature = 310 # [K] -InitialTemperature = 300 # [K] - -[Vtk] -OutputName = test_ch_iterative - -[Problem] -EnableGravity = false -EnableInertiaTerms = false - -[Component] -SolidThermalConductivity = 100 # [W/(m^2*s)] -SolidHeatCapacity = 1 # [kJ/(kg*K)] -SolidDensity = 100 # [kg/(m^3)] - -[Vtk] -AddVelocity = 1 diff --git a/examples/legacy/cht/partitioned/precice-config-serial-implicit.xml b/examples/legacy/cht/partitioned/precice-config-serial-implicit.xml deleted file mode 100644 index c1b12d8..0000000 --- a/examples/legacy/cht/partitioned/precice-config-serial-implicit.xml +++ /dev/null @@ -1,99 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/legacy/cht/partitioned/precice-config.xml b/examples/legacy/cht/partitioned/precice-config.xml deleted file mode 100644 index 0fd714a..0000000 --- a/examples/legacy/cht/partitioned/precice-config.xml +++ /dev/null @@ -1,63 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/scripts/format/run-clang-format.sh b/scripts/format/run-clang-format.sh index 612f92c..7fdce5c 100755 --- a/scripts/format/run-clang-format.sh +++ b/scripts/format/run-clang-format.sh @@ -1,6 +1,15 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash set -e # Runs clang-format on all *.cc and *.hh files -find dumux-precice/ -regex '.*\.\(cc\|hh\)' -exec clang-format-10 -style=file -i {} \; -find examples/ -regex '.*\.\(cc\|hh\)' -exec clang-format-10 -style=file -i {} \; -find postprocessing/ -regex '.*\.\(cc\|hh\|hpp\|cpp\)' -exec clang-format-10 -style=file -i {} \; +DIRECTORIES=("dumux-precice/" "examples/" "test/" "postprocessing/") +for DIRECTORY in "${DIRECTORIES[@]}"; do + #echo "Check files in ${DIRECTORY}" + for FILE in $(find "${DIRECTORY}" -regex '.*\.\(cc\|hh\)' ); do + #echo "$FILE" + clang-format-10 --dry-run -style=file -Werror -i ${FILE} + done + if [ $? -ne 0 ]; then + exit $? + fi +done +exit 0 diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index f4012ab..e69de29 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -1,2 +0,0 @@ -add_subdirectory(monolithic) -add_subdirectory(partitioned) diff --git a/test/monolithic/CMakeLists.txt b/test/monolithic/CMakeLists.txt deleted file mode 100644 index 2aafe59..0000000 --- a/test/monolithic/CMakeLists.txt +++ /dev/null @@ -1,5 +0,0 @@ -# 2D cases -add_subdirectory(flow-over-square-2d) -add_subdirectory(flow-over-step-2d) # Chaabani et al. -# 3D cases -add_subdirectory(ff-pm-3d) \ No newline at end of file diff --git a/test/monolithic/ff-pm-3d/CMakeLists.txt b/test/monolithic/ff-pm-3d/CMakeLists.txt deleted file mode 100644 index 58f24e5..0000000 --- a/test/monolithic/ff-pm-3d/CMakeLists.txt +++ /dev/null @@ -1,41 +0,0 @@ - -add_input_file_links() - -add_executable(ff-pm-3d EXCLUDE_FROM_ALL fvca-monolithic-3d.cc) - -dumux_add_test(NAME test_ff-pm-3d-stokes - TARGET ff-pm-3d - LABELS ff-pm stokes monolithic darcy - TIMEOUT 20 - CMAKE_GUARD HAVE_UMFPACK - COMMAND ${CMAKE_SOURCE_DIR}/test/runtest.py - CMD_ARGS --script fuzzy - --files ${CMAKE_SOURCE_DIR}/test/reference-solutions/monolithic/ff-pm-3d/ref-ff-pm-3d-stokes_stokes.vtu - ${CMAKE_CURRENT_BINARY_DIR}/ff-pm-3d-stokes_stokes-00001.vtu - ${CMAKE_SOURCE_DIR}/test/reference-solutions/monolithic/ff-pm-3d/ref-ff-pm-3d-stokes_darcy.vtu - ${CMAKE_CURRENT_BINARY_DIR}/ff-pm-3d-stokes_darcy-00001.vtu - --command "${CMAKE_CURRENT_BINARY_DIR}/ff-pm-3d ${CMAKE_SOURCE_DIR}/test/reference-solutions/monolithic/ff-pm-3d/ff-pm-3d-stokes.input" - --relative 1e-6 - --zeroThreshold {"velocity_liq \(m/s\)":1e-8,"p":1e-8} -) -set_tests_properties(test_ff-pm-3d-stokes PROPERTIES - ENVIRONMENT PYTHONPATH=${CMAKE_SOURCE_DIR}/test:$ENV{PYTHONPATH}) - - -dumux_add_test(NAME test_ff-pm-3d-navier-stokes - TARGET ff-pm-3d - LABELS ff-pm naviewstokes monolithic darcy - TIMEOUT 20 - CMAKE_GUARD HAVE_UMFPACK - COMMAND ${CMAKE_SOURCE_DIR}/test/runtest.py - CMD_ARGS --script fuzzy - --files ${CMAKE_SOURCE_DIR}/test/reference-solutions/monolithic/ff-pm-3d/ref-ff-pm-3d-navier-stokes_stokes.vtu - ${CMAKE_CURRENT_BINARY_DIR}/ff-pm-3d-navier-stokes_stokes-00001.vtu - ${CMAKE_SOURCE_DIR}/test/reference-solutions/monolithic/ff-pm-3d/ref-ff-pm-3d-navier-stokes_darcy.vtu - ${CMAKE_CURRENT_BINARY_DIR}/ff-pm-3d-navier-stokes_darcy-00001.vtu - --command "${CMAKE_CURRENT_BINARY_DIR}/ff-pm-3d ${CMAKE_SOURCE_DIR}/test/reference-solutions/monolithic/ff-pm-3d/ff-pm-3d-navier-stokes.input" - --relative 1e-6 - --zeroThreshold {"velocity_liq \(m/s\)":1e-8,"p":1e-8} -) -set_tests_properties(test_ff-pm-3d-navier-stokes PROPERTIES - ENVIRONMENT PYTHONPATH=${CMAKE_SOURCE_DIR}/test:$ENV{PYTHONPATH}) diff --git a/test/monolithic/ff-pm-3d/ff-pm-3d-navier-stokes.input b/test/monolithic/ff-pm-3d/ff-pm-3d-navier-stokes.input deleted file mode 100644 index e115a6c..0000000 --- a/test/monolithic/ff-pm-3d/ff-pm-3d-navier-stokes.input +++ /dev/null @@ -1,30 +0,0 @@ -[Darcy.Grid] -UpperRight = 1 1 1 -Cells = 10 10 10 - -[Stokes.Grid] -LowerLeft = 0 1 0 -UpperRight = 1 2 1 -Cells = 10 10 10 - -[Stokes.Problem] -Name = stokes -PressureDifference = 1e-4 - -[Darcy.Problem] -Name = darcy - -[Darcy.SpatialParams] -Permeability = 1e-6 # m^2 -AlphaBeaversJoseph = 1.0 - -[Vtk] -OutputName = ff-pm-3d-navier-stokes - -[Problem] -Name = "boxes" -EnableGravity = false -EnableInertiaTerms = true - -[Vtk] -AddVelocity = 1 diff --git a/test/monolithic/ff-pm-3d/ff-pm-3d-stokes.input b/test/monolithic/ff-pm-3d/ff-pm-3d-stokes.input deleted file mode 100644 index 4f40d7c..0000000 --- a/test/monolithic/ff-pm-3d/ff-pm-3d-stokes.input +++ /dev/null @@ -1,30 +0,0 @@ -[Darcy.Grid] -UpperRight = 1 1 1 -Cells = 10 10 10 - -[Stokes.Grid] -LowerLeft = 0 1 0 -UpperRight = 1 2 1 -Cells = 10 10 10 - -[Stokes.Problem] -Name = stokes -PressureDifference = 1e-1 - -[Darcy.Problem] -Name = darcy - -[Darcy.SpatialParams] -Permeability = 1e-6 # m^2 -AlphaBeaversJoseph = 1.0 - -[Vtk] -OutputName = ff-pm-3d-stokes - -[Problem] -Name = "boxes" -EnableGravity = false -EnableInertiaTerms = false - -[Vtk] -AddVelocity = 1 diff --git a/test/monolithic/ff-pm-3d/fvca-monolithic-3d.cc b/test/monolithic/ff-pm-3d/fvca-monolithic-3d.cc deleted file mode 100644 index 6f993e1..0000000 --- a/test/monolithic/ff-pm-3d/fvca-monolithic-3d.cc +++ /dev/null @@ -1,499 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup BoundaryTests - * \brief A test problem for the coupled Stokes/Darcy problem (1p). - */ - -#include - -#include -#include - -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -#include - -#include "problem_darcy_3d.hh" -#include "problem_stokes_3d.hh" - -//#include "../common/outputhelper.hh" - -namespace Dumux -{ -namespace Properties -{ -template -struct CouplingManager { - using Traits = StaggeredMultiDomainTraits; - using type = Dumux::StokesDarcyCouplingManager; -}; - -template -struct CouplingManager { - using Traits = StaggeredMultiDomainTraits; - using type = Dumux::StokesDarcyCouplingManager; -}; - -} // end namespace Properties -} // end namespace Dumux - -/*! - * \brief Returns the pressure at the interface using Darcy's law for reconstruction - */ -//template -//auto pressureAtInterface(const Problem& problem, -// const Element& element, -// const FVElementGeometry& fvGeometry, -// const ElementVolumeVariables& elemVolVars, -// const SubControlVolumeFace& scvf, -// const ElementFluxVariablesCache& elemFluxVarsCache) -//{ -// using Scalar = typename ElementVolumeVariables::VolumeVariables::PrimaryVariables::value_type; -// const auto& volVars = elemVolVars[scvf.insideScvIdx()]; - -// const Scalar boundaryFlux = problem.neumann(element, -// fvGeometry, -// elemVolVars, -// elemFluxVarsCache, -// scvf); - -// const auto K = volVars.permeability(); -// const Scalar ccPressure = volVars.pressure(); -// const Scalar mobility = volVars.mobility(); -// const Scalar density = volVars.density(); - -// // v = -K/mu * (gradP + rho*g) -// auto velocity = scvf.unitOuterNormal(); -// velocity *= boundaryFlux; // TODO check sign -// velocity /= density; - -// // v = -kr/mu*K * (gradP + rho*g) = -mobility*K * (gradP + rho*g) -// const auto alpha = Dumux::vtmv( scvf.unitOuterNormal(), K, problem.gravity() ); - -// auto distanceVector = scvf.center() - element.geometry().center(); -// distanceVector /= distanceVector.two_norm2(); -// const Scalar ti = Dumux::vtmv(distanceVector, K, scvf.unitOuterNormal()); - -// return (1/mobility * (scvf.unitOuterNormal() * velocity) + density * alpha)/ti -// + ccPressure; -//} -// -//template -//std::tuple writePressuresOnInterfaceToFile( -// const std::string &filename, -// const Problem &problem, -// const GridVariables &gridVars, -// const SolutionVector &sol) -//{ -// const auto &gridGeometry = problem.gridGeometry(); -// auto fvGeometry = localView(gridGeometry); -// auto elemVolVars = localView(gridVars.curGridVolVars()); -// auto elemFluxVarsCache = localView(gridVars.gridFluxVarsCache()); -// -// std::ofstream ofs(filename + ".csv", -// std::ofstream::out | std::ofstream::trunc); -// ofs << "x,y,"; -// ofs << "pressure" -// << "\n"; -// -// double pMin = std::numeric_limits::max(); -// double pMax = std::numeric_limits::min(); -// double pSum = 0.; -// for (const auto &element : elements(gridGeometry.gridView())) { -// fvGeometry.bind(element); -// elemVolVars.bind(element, fvGeometry, sol); -// elemFluxVarsCache.bind(element, fvGeometry, elemVolVars); -// -// for (const auto &scvf : scvfs(fvGeometry)) { -// const auto &pos = scvf.center(); -// if (std::fabs(pos[1] - 1.) < 1e-14) { -// for (int i = 0; i < 2; ++i) { -// ofs << pos[i] << ","; -// } -// //const double p = pressureAtInterface(problem, element, gridGeometry, elemVolVars, scvf, elemFluxVarsCache); -// const double p = problem.dirichlet(element, scvf); -// pMax = std::max(p, pMax); -// pMin = std::min(p, pMin); -// pSum += p; -// const auto prec = ofs.precision(); -// ofs << std::setprecision(std::numeric_limits::digits10 + -// 1); -// ofs << p << "\n"; -// ofs.precision(prec); -// } -// } -// } -// -// ofs.close(); -// -// return std::make_tuple(pMin, pMax, pSum); -//} -// -int main(int argc, char **argv) -try { - using namespace Dumux; - //using namespace outputhelper::monolithic; - - // initialize MPI, finalize is done automatically on exit - const auto &mpiHelper = Dune::MPIHelper::instance(argc, argv); - - // print dumux start message - if (mpiHelper.rank() == 0) - DumuxMessage::print(/*firstCall=*/true); - - // parse command line arguments and input file - Parameters::init(argc, argv); - - // Define the sub problem type tags - using StokesTypeTag = Properties::TTag::StokesOneP; - using DarcyTypeTag = Properties::TTag::DarcyOneP; - - // try to create a grid (from the given grid file or the input file) - // for both sub-domains - using DarcyGridManager = - Dumux::GridManager>; - DarcyGridManager darcyGridManager; - darcyGridManager.init("Darcy"); // pass parameter group - - using StokesGridManager = - Dumux::GridManager>; - StokesGridManager stokesGridManager; - stokesGridManager.init("Stokes"); // pass parameter group - - // we compute on the leaf grid view - const auto &darcyGridView = darcyGridManager.grid().leafGridView(); - const auto &stokesGridView = stokesGridManager.grid().leafGridView(); - - // create the finite volume grid geometry - using StokesGridGeometry = - GetPropType; - auto stokesGridGeometry = - std::make_shared(stokesGridView); - stokesGridGeometry->update(); - using DarcyGridGeometry = - GetPropType; - auto darcyGridGeometry = std::make_shared(darcyGridView); - darcyGridGeometry->update(); - - using Traits = - StaggeredMultiDomainTraits; - - // the coupling manager - using CouplingManager = StokesDarcyCouplingManager; - auto couplingManager = std::make_shared(stokesGridGeometry, - darcyGridGeometry); - - // the indices - constexpr auto stokesCellCenterIdx = CouplingManager::stokesCellCenterIdx; - constexpr auto stokesFaceIdx = CouplingManager::stokesFaceIdx; - constexpr auto darcyIdx = CouplingManager::darcyIdx; - - // the problem (initial and boundary conditions) - using StokesProblem = GetPropType; - auto stokesProblem = - std::make_shared(stokesGridGeometry, couplingManager); - using DarcyProblem = GetPropType; - auto darcyProblem = - std::make_shared(darcyGridGeometry, couplingManager); - - // the solution vector - Traits::SolutionVector sol; - //sol[stokesCellCenterIdx].resize(stokesGridGeometry->numCellCenterDofs()); - //sol[stokesFaceIdx].resize(stokesGridGeometry->numFaceDofs()); - //sol[darcyIdx].resize(darcyGridGeometry->numDofs()); - sol[stokesCellCenterIdx].resize(stokesGridGeometry->numCellCenterDofs()); - sol[stokesFaceIdx].resize(stokesGridGeometry->numFaceDofs()); - sol[darcyIdx].resize(darcyGridGeometry->numDofs()); - - // get a solution vector storing references to the two Stokes solution vectors - auto stokesSol = partial(sol, stokesFaceIdx, stokesCellCenterIdx); - - // the grid variables - using StokesGridVariables = - GetPropType; - auto stokesGridVariables = std::make_shared( - stokesProblem, stokesGridGeometry); - stokesGridVariables->init(stokesSol); - using DarcyGridVariables = - GetPropType; - auto darcyGridVariables = - std::make_shared(darcyProblem, darcyGridGeometry); - darcyGridVariables->init(sol[darcyIdx]); - - /* - const auto couplingMode = [] { - const auto mode = getParam("Problem.CouplingMode", "ReconstructPorousMediumPressure"); - if (mode == "ReconstructPorousMediumPressure") - return CouplingManager::CouplingMode::reconstructPorousMediumPressure; - else if (mode == "ReconstructFreeFlowNormalStress") - return CouplingManager::CouplingMode::reconstructFreeFlowNormalStress; - else - DUNE_THROW(Dune::InvalidStateException, mode << " is not a valid coupling mode. Use ReconstructPorousMediumPressure or ReconstructFreeFlowNormalStress"); - }(); - */ - - //couplingManager->init(stokesProblem, darcyProblem, sol); - - // initialize the coupling manager - couplingManager->init( - stokesProblem, darcyProblem, - std::make_tuple(stokesGridVariables->faceGridVariablesPtr(), - stokesGridVariables->cellCenterGridVariablesPtr(), - darcyGridVariables), - sol, CouplingManager::CouplingMode::reconstructFreeFlowNormalStress); - - //couplingManager->setGridVariables(std::make_tuple(stokesGridVariables->cellCenterGridVariablesPtr(), - // stokesGridVariables->faceGridVariablesPtr(), - // darcyGridVariables)); - - // intialize the vtk output module - StaggeredVtkOutputModule - stokesVtkWriter(*stokesGridVariables, stokesSol, stokesProblem->name()); - GetPropType::initOutputModule( - stokesVtkWriter); - stokesVtkWriter.write(0.0); - - VtkOutputModule> - darcyVtkWriter(*darcyGridVariables, sol[darcyIdx], - darcyProblem->name()); - using DarcyVelocityOutput = - GetPropType; - darcyVtkWriter.addVelocityOutput( - std::make_shared(*darcyGridVariables)); - GetPropType::initOutputModule( - darcyVtkWriter); - darcyVtkWriter.write(0.0); - - // the assembler for a stationary problem - using Assembler = - MultiDomainFVAssembler; - auto assembler = std::make_shared( - std::make_tuple(stokesProblem, stokesProblem, darcyProblem), - std::make_tuple(stokesGridGeometry->faceFVGridGeometryPtr(), - stokesGridGeometry->cellCenterFVGridGeometryPtr(), - darcyGridGeometry), - std::make_tuple(stokesGridVariables->faceGridVariablesPtr(), - stokesGridVariables->cellCenterGridVariablesPtr(), - darcyGridVariables), - couplingManager); - - // the linear solver - using LinearSolver = UMFPackBackend; - auto linearSolver = std::make_shared(); - - // the non-linear solver - using NewtonSolver = - MultiDomainNewtonSolver; - NewtonSolver nonLinearSolver(assembler, linearSolver, couplingManager); - - // solve the non-linear system - nonLinearSolver.solve(sol); - - // write vtk output - stokesVtkWriter.write(1.0); - darcyVtkWriter.write(1.0); - - // for (const auto& element : elements(darcyGridView)) - // { - // auto fvGeometry = localView(*darcyGridGeometry); - // fvGeometry.bind(element); - - // for (const auto& scvf : scvfs(fvGeometry)) - // { - // if (couplingManager->isCoupledEntity(CouplingManager::darcyIdx, scvf)) - // { - // std::ostream tmp(std::cout.rdbuf()); - - // tmp << std::scientific << "Interface pressure ff at " << scvf.center() << " is " << couplingManager->couplingData().freeFlowInterfacePressure(element, scvf) << std::endl; - // } - // } - // } - - // for (const auto& element : elements(stokesGridView)) - // { - // auto fvGeometry = localView(*stokesGridGeometry); - // auto elemVolVars = localView(stokesGridVariables->cellCenterGridVariablesPtr()->curGridVolVars()); - // auto elemFaceVars = localView(stokesGridVariables->faceGridVariablesPtr()->curGridFaceVars()); - // // auto elemFluxVarsCache = localView(gridVars_(stokesIdx).gridFluxVarsCache()); - - // fvGeometry.bind(element); - // elemVolVars.bind(element, fvGeometry, sol[stokesCellCenterIdx]); - // elemFaceVars.bind(element, fvGeometry, sol[stokesFaceIdx]); - - // for (const auto& scvf : scvfs(fvGeometry)) - // { - // if (couplingManager->isCoupledEntity(CouplingManager::stokesIdx, scvf)) - // { - // std::ostream tmp(std::cout.rdbuf()); - // tmp << std::scientific << "Interface pressure pm at " << scvf.center() << " is " << stokesProblem->neumann(element, - // fvGeometry, - // elemVolVars, - // elemFaceVars, - // scvf)[scvf.directionIndex()] << ", vself " << elemFaceVars[scvf].velocitySelf() << ", vDarcy " << couplingManager->couplingData().darcyInterfaceVelocity(element, - // fvGeometry, - // elemVolVars, - // elemFaceVars, - // scvf) << std::endl; - // } - // } - // } - - /* - { - double min = std::numeric_limits::max(); - double max = std::numeric_limits::min(); - double sum = 0.; - using FluxVariables = GetPropType; - const std::string filename = getParam("Problem.Name") + "-" + darcyProblem->name() + "-interface-velocity"; - std::tie(min, max, sum) = writeVelocitiesOnInterfaceToFile(filename, - *couplingManager, - *darcyProblem, - *darcyGridVariables, - sol[darcyIdx]); - const auto prec = std::cout.precision(); - std::cout << "Velocity statistics (Darcy):" << std::endl - << std::setprecision(std::numeric_limits::digits10 + 1) - << " min: " << min << std::endl - << " max: " << max << std::endl - << " sum: " << sum << std::endl; - std::cout.precision(prec); - - { - const std::string filenameDarcy = "darcy-flow-statistics.txt"; - std::ofstream ofs(filenameDarcy + ".txt", std::ofstream::out | std::ofstream::trunc); - const auto prec = ofs.precision(); - ofs << "Velocity statistics (Darcy):" << std::endl - << std::setprecision(std::numeric_limits::digits10 + 1) - << " min: " << min << std::endl - << " max: " << max << std::endl - << " sum: " << sum << std::endl; - ofs.precision(prec); - ofs.close(); - } - - { - double min = std::numeric_limits::max(); - double max = std::numeric_limits::min(); - double sum = 0.; - const std::string filename = getParam("Problem.Name") + "-" + darcyProblem->name() + "-interface-pressure"; - std::tie(min, max, sum) = writePressuresOnInterfaceToFile(filename, - *darcyProblem, - *darcyGridVariables, - sol[darcyIdx]); - const auto prec = std::cout.precision(); - std::cout << "Pressure statistics (Darcy):" << std::endl - << std::setprecision(std::numeric_limits::digits10 + 1) - << " min: " << min << std::endl - << " max: " << max << std::endl - << " sum: " << sum << std::endl; - std::cout.precision(prec); - } - } - - //TODO make freeflow - { - double min = std::numeric_limits::max(); - double max = std::numeric_limits::min(); - double sum = 0.; - const std::string filename = getParam("Problem.Name") + "-" + stokesProblem->name() + "-interface-velocity"; - std::tie(min, max, sum) = writeStokesVelocitiesOnInterfaceToFile(filename, - *couplingManager, - *stokesProblem, - sol[stokesFaceIdx]); - const auto prec = std::cout.precision(); - std::cout << "Velocity statistics (free flow):" << std::endl - << std::setprecision(std::numeric_limits::digits10 + 1) - << " min: " << min << std::endl - << " max: " << max << std::endl - << " sum: " << sum << std::endl; - std::cout.precision(prec); - { - const std::string filenameFlow = "free-flow-statistics"; - std::ofstream ofs(filenameFlow + ".txt", std::ofstream::out | std::ofstream::trunc); - const auto prec = ofs.precision(); - ofs << "Velocity statistics (free flow):" << std::endl - << std::setprecision(std::numeric_limits::digits10 + 1) - << " min: " << min << std::endl - << " max: " << max << std::endl - << " sum: " << sum << std::endl; - ofs.precision(prec); - ofs.close(); - } - } -*/ - //////////////////////////////////////////////////////////// - // finalize, print dumux message to say goodbye - //////////////////////////////////////////////////////////// - - // print dumux end message - if (mpiHelper.rank() == 0) { - Parameters::print(); - DumuxMessage::print(/*firstCall=*/false); - } - - return 0; -} // end main -catch (Dumux::ParameterException &e) { - std::cerr << std::endl << e << " ---> Abort!" << std::endl; - return 1; -} catch (Dune::DGFException &e) { - std::cerr << "DGF exception thrown (" << e - << "). Most likely, the DGF file name is wrong " - "or the DGF file is corrupted, " - "e.g. missing hash at end of file or wrong number " - "(dimensions) of entries." - << " ---> Abort!" << std::endl; - return 2; -} catch (Dune::Exception &e) { - std::cerr << "Dune reported error: " << e << " ---> Abort!" << std::endl; - return 3; -} catch (...) { - std::cerr << "Unknown exception thrown! ---> Abort!" << std::endl; - return 4; -} diff --git a/test/monolithic/ff-pm-3d/problem_darcy_3d.hh b/test/monolithic/ff-pm-3d/problem_darcy_3d.hh deleted file mode 100644 index 5381465..0000000 --- a/test/monolithic/ff-pm-3d/problem_darcy_3d.hh +++ /dev/null @@ -1,294 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup BoundaryTests - * \brief A simple Darcy test problem (cell-centered finite volume method). - */ - -#ifndef DUMUX_DARCY_SUBPROBLEM_HH -#define DUMUX_DARCY_SUBPROBLEM_HH - -#include - -#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 4 -#include -#endif - -#include - -#include -#include - -#include "spatialparams.hh" - -#include -#include - -namespace Dumux -{ -template -class DarcySubProblem; - -namespace Properties -{ -// Create new type tags -namespace TTag -{ -struct DarcyOneP { - using InheritsFrom = std::tuple; -}; -} // end namespace TTag - -// Set the problem property -template -struct Problem { - using type = Dumux::DarcySubProblem; -}; - -// the fluid system -template -struct FluidSystem { - using Scalar = GetPropType; - using type = - FluidSystems::OnePLiquid >; -}; - -// Set the grid type -template -struct Grid { - using type = Dune::YaspGrid<3>; -}; - -template -struct SpatialParams { - using GridGeometry = GetPropType; - using Scalar = GetPropType; - using type = OnePSpatialParams; -}; -} // end namespace Properties - -template -class DarcySubProblem : public PorousMediumFlowProblem -{ - using ParentType = PorousMediumFlowProblem; - using GridView = - typename GetPropType::GridView; - using Scalar = GetPropType; - using PrimaryVariables = GetPropType; -#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 4 - using NumEqVector = Dumux::NumEqVector; -#else - using NumEqVector = GetPropType; -#endif - using BoundaryTypes = Dumux::BoundaryTypes< - GetPropType::numEq()>; - using VolumeVariables = GetPropType; - using FVElementGeometry = - typename GetPropType::LocalView; - using SubControlVolume = typename FVElementGeometry::SubControlVolume; - using SubControlVolumeFace = - typename FVElementGeometry::SubControlVolumeFace; - using GridGeometry = GetPropType; - - using Indices = - typename GetPropType::Indices; - - using Element = typename GridView::template Codim<0>::Entity; - using GlobalPosition = typename Element::Geometry::GlobalCoordinate; - - using CouplingManager = GetPropType; - - public: - DarcySubProblem(std::shared_ptr gridGeometry, - std::shared_ptr couplingManager) - : ParentType(gridGeometry, "Darcy"), - eps_(1e-7), - couplingManager_(couplingManager) - { - problemName_ = - getParam("Vtk.OutputName") + "_" + - getParamFromGroup(this->paramGroup(), "Problem.Name"); - - // determine whether to simulate a vertical or horizontal flow configuration - verticalFlow_ = problemName_.find("vertical") != std::string::npos; - } - - /*! - * \brief The problem name. - */ - const std::string &name() const { return problemName_; } - - /*! - * \name Problem parameters - */ - // \{ - - /*! - * \brief Returns the temperature within the domain in [K]. - * - */ - Scalar temperature() const { return 273.15 + 10; } // 10°C - // \} - - /*! - * \name Boundary conditions - */ - // \{ - - /*! - * \brief Specifies which kind of boundary condition should be - * used for which equation on a given boundary control volume. - * - * \param element The element - * \param scvf The boundary sub control volume face - */ - BoundaryTypes boundaryTypes(const Element &element, - const SubControlVolumeFace &scvf) const - { - BoundaryTypes values; - values.setAllNeumann(); - - if (couplingManager().isCoupledEntity(CouplingManager::darcyIdx, scvf)) - values.setAllCouplingDirichlet(); - // values.setAllCouplingNeumann(); - - if (verticalFlow_) { - if (onLowerBoundary_(scvf.center())) - values.setAllDirichlet(); - } - - return values; - } - - /*! - * \brief Evaluates the boundary conditions for a Dirichlet control volume. - * - * \param element The element for which the Dirichlet boundary condition is set - * \param scvf The boundary subcontrolvolumeface - * - * For this method, the \a values parameter stores primary variables. - */ - PrimaryVariables dirichlet(const Element &element, - const SubControlVolumeFace &scvf) const - { - PrimaryVariables values = initial(element); - if (couplingManager().isCoupledEntity(CouplingManager::darcyIdx, - scvf)) { - //const auto& darcyContext = couplingManager().darcyCouplingContext(element, scvf); - //const auto& freeFlowScvf = darcyContext.getStokesScvf(); - //const auto& freeFlowElemVolVars = darcyContext.volVars; - - //using FluxVariables = GetPropType; - //FluxVariables fluxVars; - - //values = couplingManager().couplingData().freeFlowInterfacePressure(element, scvf); - values = couplingManager().couplingData().freeFlowInterfaceStress( - element, scvf); - } - - return values; - } - - /*! - * \brief Evaluates the boundary conditions for a Neumann control volume. - * - * \param element The element for which the Neumann boundary condition is set - * \param fvGeometry The fvGeometry - * \param elemVolVars The element volume variables - * \param elemFluxVarsCache Flux variables caches for all faces in stencil - * \param scvf The boundary sub control volume face - * - * For this method, the \a values variable stores primary variables. - */ - template - NumEqVector neumann(const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &elemVolVars, - const ElementFluxVarsCache &elemFluxVarsCache, - const SubControlVolumeFace &scvf) const - { - NumEqVector values(0.0); - - if (couplingManager().isCoupledEntity(CouplingManager::darcyIdx, scvf)) - values[Indices::conti0EqIdx] = - couplingManager().couplingData().massCouplingCondition( - element, fvGeometry, elemVolVars, scvf); - - return values; - } - - // \} - - /*! - * \name Volume terms - */ - // \{ - /*! - * \brief Evaluates the source term for all phases within a given - * sub control volume. - * - * \param element The element for which the source term is set - * \param fvGeometry The fvGeometry - * \param elemVolVars The element volume variables - * \param scv The sub control volume - */ - template - NumEqVector source(const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &elemVolVars, - const SubControlVolume &scv) const - { - return NumEqVector(0.0); - } - - // \} - - /*! - * \brief Evaluates the initial value for a control volume. - * - * \param element The element - * - * For this method, the \a priVars parameter stores primary - * variables. - */ - PrimaryVariables initial(const Element &element) const - { - return PrimaryVariables(0.0); - } - - // \} - - //! Get the coupling manager - const CouplingManager &couplingManager() const { return *couplingManager_; } - - private: - bool onLowerBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[1] < this->gridGeometry().bBoxMin()[1] + eps_; - } - - Scalar eps_; - std::shared_ptr couplingManager_; - std::string problemName_; - bool verticalFlow_; -}; -} // end namespace Dumux - -#endif //DUMUX_DARCY_SUBPROBLEM_HH diff --git a/test/monolithic/ff-pm-3d/problem_stokes_3d.hh b/test/monolithic/ff-pm-3d/problem_stokes_3d.hh deleted file mode 100644 index 69358a8..0000000 --- a/test/monolithic/ff-pm-3d/problem_stokes_3d.hh +++ /dev/null @@ -1,426 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup BoundaryTests - * \brief A simple Stokes test problem for the staggered grid (Navier-)Stokes model. - */ - -#ifndef DUMUX_STOKES_SUBPROBLEM_HH -#define DUMUX_STOKES_SUBPROBLEM_HH - -#include - -#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 4 -#include -#endif - -#include -#include - -#include -#include -#include - -namespace Dumux -{ -template -class StokesSubProblem; - -namespace Properties -{ -// Create new type tags -namespace TTag -{ -struct StokesOneP { - using InheritsFrom = std::tuple; -}; -} // end namespace TTag - -// the fluid system -template -struct FluidSystem { - using Scalar = GetPropType; - using type = - FluidSystems::OnePLiquid >; -}; - -// Set the grid type -template -struct Grid { - using type = Dune::YaspGrid<3, - Dune::EquidistantOffsetCoordinates< - GetPropType, - 3> >; -}; - -// Set the problem property -template -struct Problem { - using type = Dumux::StokesSubProblem; -}; - -template -struct EnableGridGeometryCache { - static constexpr bool value = true; -}; -template -struct EnableGridFluxVariablesCache { - static constexpr bool value = true; -}; -template -struct EnableGridVolumeVariablesCache { - static constexpr bool value = true; -}; -} // end namespace Properties - -/*! - * \ingroup BoundaryTests - * \brief Test problem for the one-phase (Navier-) Stokes problem. - * - * Horizontal flow from left to right with a parabolic velocity profile. - */ -template -class StokesSubProblem : public NavierStokesProblem -{ - using ParentType = NavierStokesProblem; - using Scalar = GetPropType; - using BoundaryTypes = Dumux::NavierStokesBoundaryTypes< - GetPropType::numEq()>; - using GridGeometry = GetPropType; - using GridView = typename GridGeometry::GridView; - using FVElementGeometry = typename GridGeometry::LocalView; - using SubControlVolumeFace = - typename FVElementGeometry::SubControlVolumeFace; - using SubControlVolume = typename FVElementGeometry::SubControlVolume; - using Element = typename GridView::template Codim<0>::Entity; - using GlobalPosition = typename Element::Geometry::GlobalCoordinate; - using PrimaryVariables = GetPropType; -#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 4 - using NumEqVector = Dumux::NumEqVector; -#else - using NumEqVector = GetPropType; -#endif - using ModelTraits = GetPropType; - - using CouplingManager = GetPropType; - - public: - using Indices = typename ModelTraits::Indices; - - StokesSubProblem(std::shared_ptr gridGeometry, - std::shared_ptr couplingManager) - : ParentType(gridGeometry, "Stokes"), - eps_(1e-6), - couplingManager_(couplingManager) - { - problemName_ = - getParam("Vtk.OutputName") + "_" + - getParamFromGroup(this->paramGroup(), "Problem.Name"); - - // determine whether to simulate a vertical or horizontal flow configuration - verticalFlow_ = problemName_.find("vertical") != std::string::npos; - } - - /*! - * \brief The problem name. - */ - const std::string &name() const { return problemName_; } - - /*! - * \name Problem parameters - */ - // \{ - - /*! - * \brief Returns the temperature within the domain in [K]. - * - * This problem assumes a temperature of 10 degrees Celsius. - */ - Scalar temperature() const { return 273.15 + 10; } // 10°C - - /*! - * \brief Returns the sources within the domain. - * - * \param globalPos The global position - */ - NumEqVector sourceAtPos(const GlobalPosition &globalPos) const - { - return NumEqVector(0.0); - } - // \} - - /*! - * \name Boundary conditions - */ - // \{ - - /*! - * \brief Specifies which kind of boundary condition should be - * used for which equation on a given boundary segment. - * - * \param element The finite element - * \param scvf The sub control volume face - */ - BoundaryTypes boundaryTypes(const Element &element, - const SubControlVolumeFace &scvf) const - { - BoundaryTypes values; - - const auto &globalPos = scvf.dofPosition(); - - if (verticalFlow_) { - // inflow - if (onUpperBoundary_(globalPos)) { - values.setDirichlet(Indices::velocityXIdx); - values.setDirichlet(Indices::velocityYIdx); - } - - // left/right wall - if (onRightBoundary_(globalPos) || (onLeftBoundary_(globalPos))) { - values.setDirichlet(Indices::velocityXIdx); - values.setDirichlet(Indices::velocityYIdx); - } - } else // horizontal flow - { - // inlet / outlet - if (onLeftBoundary_(globalPos) || onRightBoundary_(globalPos)) - values.setDirichlet(Indices::pressureIdx); - else // wall - { - values.setDirichlet(Indices::velocityXIdx); - values.setDirichlet(Indices::velocityYIdx); - values.setDirichlet(Indices::velocityZIdx); - } - } - - //if(couplingManager().isCoupledEntity(CouplingManager::stokesIdx, scvf)) - //{ - // values.setCouplingDirichlet(Indices::velocityYIdx); - // // values.setCouplingNeumann(Indices::conti0EqIdx); - // // values.setCouplingNeumann(Indices::momentumYBalanceIdx); - // values.setBJS(Indices::momentumXBalanceIdx); - //} - - if (couplingManager().isCoupledEntity(CouplingManager::stokesIdx, - scvf)) { - assert( - couplingManager().couplingMode() != - CouplingManager::CouplingMode::reconstructPorousMediumPressure); - - values.setCouplingDirichlet(Indices::velocityYIdx); - values.setBeaversJoseph(Indices::momentumXBalanceIdx); - values.setBeaversJoseph(Indices::momentumZBalanceIdx); - } - - return values; - } - - /*! - * \brief Evaluates the boundary conditions for a Dirichlet control volume. - */ - PrimaryVariables dirichletAtPos(const GlobalPosition &globalPos) const - { - return initialAtPos(globalPos); - } - - PrimaryVariables dirichlet(const Element &element, - const SubControlVolume &scv) const - { - return initialAtPos(scv.center()); - } - - PrimaryVariables dirichlet(const Element &element, - const SubControlVolumeFace &scvf) const - { - if (couplingManager().isCoupledEntity(CouplingManager::stokesIdx, - scvf)) { - PrimaryVariables values(0.0); - values[Indices::velocityYIdx] = - couplingManager().couplingData().porousMediumInterfaceVelocity( - element, scvf); - return values; - } else - return initialAtPos(scvf.center()); - } - - // /*! - // * \brief Evaluates the boundary conditions for a Neumann control volume. - // * - // * \param element The element for which the Neumann boundary condition is set - // * \param fvGeometry The fvGeometry - // * \param elemVolVars The element volume variables - // * \param elemFaceVars The element face variables - // * \param scvf The boundary sub control volume face - // */ - // template - // NumEqVector dirichlet(const Element& element, - // const FVElementGeometry& fvGeometry, - // const ElementVolumeVariables& elemVolVars, - // const ElementFaceVariables& elemFaceVars, - // const SubControlVolumeFace& scvf) const - // { - // NumEqVector values(0.0); - // - // if(couplingManager().isCoupledEntity(CouplingManager::stokesIdx, scvf)) - // { - // - // } - // } - - /*! - * \brief Evaluates the boundary conditions for a Neumann control volume. - * - * \param element The element for which the Neumann boundary condition is set - * \param fvGeometry The fvGeometry - * \param elemVolVars The element volume variables - * \param elemFaceVars The element face variables - * \param scvf The boundary sub control volume face - */ - template - NumEqVector neumann(const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &elemVolVars, - const ElementFaceVariables &elemFaceVars, - const SubControlVolumeFace &scvf) const - { - NumEqVector values(0.0); - - std::cout << "Neumann BC: " << values << std::endl; - - if (couplingManager().isCoupledEntity(CouplingManager::stokesIdx, - scvf)) { - // std::cout << "vel is " << elemFaceVars[scvf].velocitySelf() << std::endl; - values[Indices::conti0EqIdx] = - couplingManager().couplingData().massCouplingCondition( - element, fvGeometry, elemVolVars, elemFaceVars, scvf); - values[Indices::momentumYBalanceIdx] = - couplingManager().couplingData().momentumCouplingCondition( - element, fvGeometry, elemVolVars, elemFaceVars, scvf); - - // std::cout << "v self is " << elemFaceVars[scvf].velocitySelf() << ", v darcy " << couplingManager().couplingData().darcyInterfaceVelocity(element, fvGeometry, elemVolVars, elemFaceVars, scvf) << std::endl; - - // - // using FluxVariables = GetPropType; - // FluxVariables fluxVars; - // - // const auto& gridFluxVarsCache = couplingManager().gridVars_(CouplingManager::stokesIdx).gridFluxVarsCache(); - // - // std::cout << "p is " << fluxVars.computeMomentumFlux(*this, - // element, - // scvf, - // fvGeometry, - // elemVolVars, - // elemFaceVars, - // gridFluxVarsCache) << std::endl; - } - return values; - } - - // \} - - //! Get the coupling manager - const CouplingManager &couplingManager() const { return *couplingManager_; } - - /*! - * \name Volume terms - */ - // \{ - - /*! - * \brief Evaluates the initial value for a control volume. - * - * \param globalPos The global position - */ - PrimaryVariables initialAtPos(const GlobalPosition &globalPos) const - { - PrimaryVariables values(0.0); - - if (verticalFlow_) { - static const Scalar inletVelocity = getParamFromGroup( - this->paramGroup(), "Problem.Velocity"); - values[Indices::velocityYIdx] = - inletVelocity * globalPos[0] * - (this->gridGeometry().bBoxMax()[0] - globalPos[0]); - } else // horizontal flow - { - static const Scalar deltaP = getParamFromGroup( - this->paramGroup(), "Problem.PressureDifference"); - if (onLeftBoundary_(globalPos)) - values[Indices::pressureIdx] = deltaP; - } - - return values; - } - - /*! - * \brief Returns the intrinsic permeability of required as input parameter - for the Beavers-Joseph-Saffman boundary condition - */ - Scalar permeability(const Element &element, - const SubControlVolumeFace &scvf) const - { - return couplingManager().couplingData().darcyPermeability(element, - scvf); - } - - /*! - * \brief Returns the alpha value required as input parameter for the - Beavers-Joseph-Saffman boundary condition. - */ - Scalar alphaBJ(const SubControlVolumeFace &scvf) const - { - return couplingManager() - .problem(CouplingManager::darcyIdx) - .spatialParams() - .beaversJosephCoeffAtPos(scvf.center()); - } - - // \} - - private: - bool onLeftBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[0] < this->gridGeometry().bBoxMin()[0] + eps_; - } - - bool onRightBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[0] > this->gridGeometry().bBoxMax()[0] - eps_; - } - - bool onLowerBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[1] < this->gridGeometry().bBoxMin()[1] + eps_; - } - - bool onUpperBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[1] > this->gridGeometry().bBoxMax()[1] - eps_; - } - - Scalar eps_; - std::string problemName_; - bool verticalFlow_; - - std::shared_ptr couplingManager_; -}; -} // end namespace Dumux - -#endif // DUMUX_STOKES_SUBPROBLEM_HH diff --git a/test/monolithic/ff-pm-3d/spatialparams.hh b/test/monolithic/ff-pm-3d/spatialparams.hh deleted file mode 100644 index 9c35c08..0000000 --- a/test/monolithic/ff-pm-3d/spatialparams.hh +++ /dev/null @@ -1,96 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup BoundaryTests - * \brief The spatial parameters class for the test problem using the 1p cc model. - */ - -#ifndef DUMUX_1P_TEST_SPATIALPARAMS_HH -#define DUMUX_1P_TEST_SPATIALPARAMS_HH - -#include - -namespace Dumux -{ -/*! - * \ingroup BoundaryTests - * \brief The spatial parameters class for the test problem using the - * 1p cc model. - */ -template -class OnePSpatialParams - : public FVSpatialParamsOneP> -{ - using GridView = typename FVGridGeometry::GridView; - using ParentType = - FVSpatialParamsOneP>; - - using Element = typename GridView::template Codim<0>::Entity; - using GlobalPosition = typename Element::Geometry::GlobalCoordinate; - - public: - // export permeability type - using PermeabilityType = Scalar; - - OnePSpatialParams(std::shared_ptr fvGridGeometry) - : ParentType(fvGridGeometry) - { - permeability_ = getParam("Darcy.SpatialParams.Permeability"); - alphaBJ_ = getParam("Darcy.SpatialParams.AlphaBeaversJoseph"); - } - - /*! - * \brief Function for defining the (intrinsic) permeability \f$[m^2]\f$. - * - * \param globalPos The global position - * \return the intrinsic permeability - */ - PermeabilityType permeabilityAtPos(const GlobalPosition &globalPos) const - { - return permeability_; - } - - /*! \brief Defines the porosity in [-]. - * - * \param globalPos The global position - */ - Scalar porosityAtPos(const GlobalPosition &globalPos) const { return 0.4; } - - /*! \brief Defines the Beavers-Joseph coefficient in [-]. - * - * \param globalPos The global position - */ - Scalar beaversJosephCoeffAtPos(const GlobalPosition &globalPos) const - { - return alphaBJ_; - } - - private: - Scalar permeability_; - Scalar alphaBJ_; -}; - -} // end namespace Dumux - -#endif diff --git a/test/monolithic/flow-over-square-2d/CMakeLists.txt b/test/monolithic/flow-over-square-2d/CMakeLists.txt deleted file mode 100644 index cd208bb..0000000 --- a/test/monolithic/flow-over-square-2d/CMakeLists.txt +++ /dev/null @@ -1,22 +0,0 @@ - -add_input_file_links() - -add_executable(test_ff_pm_flow_over_square_2d EXCLUDE_FROM_ALL main.cc) - -dune_add_test(NAME test_ff_pm_mono_flow_over_square_2d - TARGET test_ff_pm_flow_over_square_2d - LABELS ff-pm stokes monolithic darcy - TIMEOUT 10 - CMAKE_GUARD HAVE_UMFPACK - COMMAND ${CMAKE_SOURCE_DIR}/test/runtest.py - CMD_ARGS --script fuzzy - --files ${CMAKE_SOURCE_DIR}/test/reference-solutions/monolithic/flow-over-square-2d/stokes-final.vtu - ${CMAKE_CURRENT_BINARY_DIR}/stokes-darcy-monolithic-coupling-test_stokes-00001.vtu - ${CMAKE_SOURCE_DIR}/test/reference-solutions/monolithic/flow-over-square-2d/darcy-final.vtu - ${CMAKE_CURRENT_BINARY_DIR}/stokes-darcy-monolithic-coupling-test_darcy-00001.vtu - --command "${CMAKE_CURRENT_BINARY_DIR}/test_ff_pm_flow_over_square_2d ${CMAKE_CURRENT_BINARY_DIR}/params.input" - --relative 1e-6 - --zeroThreshold {"velocity_liq \(m/s\)":1e-14,"p":1e-12} -) -set_tests_properties(test_ff_pm_mono_flow_over_square_2d PROPERTIES - ENVIRONMENT PYTHONPATH=${CMAKE_SOURCE_DIR}/test:$ENV{PYTHONPATH}) diff --git a/test/monolithic/flow-over-square-2d/fvca-monolithic-base.input b/test/monolithic/flow-over-square-2d/fvca-monolithic-base.input deleted file mode 100644 index fe61db4..0000000 --- a/test/monolithic/flow-over-square-2d/fvca-monolithic-base.input +++ /dev/null @@ -1,30 +0,0 @@ -[Darcy.Grid] -UpperRight = 1 1 -Cells = MESHSIZE MESHSIZE - -[Stokes.Grid] -LowerLeft = 0 1 -UpperRight = 1 2 -Cells = MESHSIZE MESHSIZE - -[Stokes.Problem] -Name = FLOWPROBLEMNAME -PressureDifference = PRESSUREDIFF - -[Darcy.Problem] -Name = darcy - -[Darcy.SpatialParams] -Permeability = PERM # m^2 -AlphaBeaversJoseph = ALPHA - -[Vtk] -OutputName = CASENAME - -[Problem] -Name = "fvca-monolithic" -EnableGravity = false -EnableInertiaTerms = HASINERTIATERMS - -[Vtk] -AddVelocity = 1 diff --git a/test/monolithic/flow-over-square-2d/main.cc b/test/monolithic/flow-over-square-2d/main.cc deleted file mode 100644 index 40f1e63..0000000 --- a/test/monolithic/flow-over-square-2d/main.cc +++ /dev/null @@ -1,251 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup BoundaryTests - * \brief A test problem for the coupled Stokes/Darcy problem (1p). - */ - -#include - -#include -#include - -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -//#include -#include - -#include "problem_darcy.hh" -#include "problem_stokes.hh" - -namespace Dumux -{ -namespace Properties -{ -template -struct CouplingManager { - using Traits = StaggeredMultiDomainTraits; - using type = Dumux::StokesDarcyCouplingManager; -}; - -template -struct CouplingManager { - using Traits = StaggeredMultiDomainTraits; - using type = Dumux::StokesDarcyCouplingManager; -}; - -} // end namespace Properties -} // end namespace Dumux - -int main(int argc, char **argv) -try { - using namespace Dumux; - - // initialize MPI, finalize is done automatically on exit - const auto &mpiHelper = Dune::MPIHelper::instance(argc, argv); - - // print dumux start message - if (mpiHelper.rank() == 0) - DumuxMessage::print(/*firstCall=*/true); - - // parse command line arguments and input file - Parameters::init(argc, argv); - - // Define the sub problem type tags - using StokesTypeTag = Properties::TTag::StokesOneP; - using DarcyTypeTag = Properties::TTag::DarcyOneP; - - // try to create a grid (from the given grid file or the input file) - // for both sub-domains - using DarcyGridManager = - Dumux::GridManager>; - DarcyGridManager darcyGridManager; - darcyGridManager.init("Darcy"); // pass parameter group - - using StokesGridManager = - Dumux::GridManager>; - StokesGridManager stokesGridManager; - stokesGridManager.init("Stokes"); // pass parameter group - - // we compute on the leaf grid view - const auto &darcyGridView = darcyGridManager.grid().leafGridView(); - const auto &stokesGridView = stokesGridManager.grid().leafGridView(); - - // create the finite volume grid geometry - using StokesGridGeometry = - GetPropType; - auto stokesGridGeometry = - std::make_shared(stokesGridView); - stokesGridGeometry->update(); - using DarcyGridGeometry = - GetPropType; - auto darcyGridGeometry = std::make_shared(darcyGridView); - darcyGridGeometry->update(); - - using Traits = - StaggeredMultiDomainTraits; - - // the coupling manager - using CouplingManager = StokesDarcyCouplingManager; - auto couplingManager = std::make_shared(stokesGridGeometry, - darcyGridGeometry); - - // the indices - constexpr auto stokesCellCenterIdx = CouplingManager::stokesCellCenterIdx; - constexpr auto stokesFaceIdx = CouplingManager::stokesFaceIdx; - constexpr auto darcyIdx = CouplingManager::darcyIdx; - - // the problem (initial and boundary conditions) - using StokesProblem = GetPropType; - auto stokesProblem = - std::make_shared(stokesGridGeometry, couplingManager); - using DarcyProblem = GetPropType; - auto darcyProblem = - std::make_shared(darcyGridGeometry, couplingManager); - - // the solution vector - Traits::SolutionVector sol; - sol[stokesCellCenterIdx].resize(stokesGridGeometry->numCellCenterDofs()); - sol[stokesFaceIdx].resize(stokesGridGeometry->numFaceDofs()); - sol[darcyIdx].resize(darcyGridGeometry->numDofs()); - - // get a solution vector storing references to the two Stokes solution vectors - auto stokesSol = partial(sol, stokesFaceIdx, stokesCellCenterIdx); - - // the grid variables - using StokesGridVariables = - GetPropType; - auto stokesGridVariables = std::make_shared( - stokesProblem, stokesGridGeometry); - stokesGridVariables->init(stokesSol); - using DarcyGridVariables = - GetPropType; - auto darcyGridVariables = - std::make_shared(darcyProblem, darcyGridGeometry); - darcyGridVariables->init(sol[darcyIdx]); - - // initialize the coupling manager - couplingManager->init( - stokesProblem, darcyProblem, - std::make_tuple(stokesGridVariables->faceGridVariablesPtr(), - stokesGridVariables->cellCenterGridVariablesPtr(), - darcyGridVariables), - sol, CouplingManager::CouplingMode::reconstructFreeFlowNormalStress); - - // intialize the vtk output module - StaggeredVtkOutputModule - stokesVtkWriter(*stokesGridVariables, stokesSol, stokesProblem->name()); - GetPropType::initOutputModule( - stokesVtkWriter); - stokesVtkWriter.write(0.0); - - VtkOutputModule> - darcyVtkWriter(*darcyGridVariables, sol[darcyIdx], - darcyProblem->name()); - using DarcyVelocityOutput = - GetPropType; - darcyVtkWriter.addVelocityOutput( - std::make_shared(*darcyGridVariables)); - GetPropType::initOutputModule( - darcyVtkWriter); - darcyVtkWriter.write(0.0); - - // the assembler for a stationary problem - using Assembler = - MultiDomainFVAssembler; - auto assembler = std::make_shared( - std::make_tuple(stokesProblem, stokesProblem, darcyProblem), - std::make_tuple(stokesGridGeometry->faceFVGridGeometryPtr(), - stokesGridGeometry->cellCenterFVGridGeometryPtr(), - darcyGridGeometry), - std::make_tuple(stokesGridVariables->faceGridVariablesPtr(), - stokesGridVariables->cellCenterGridVariablesPtr(), - darcyGridVariables), - couplingManager); - - // the linear solver - using LinearSolver = UMFPackBackend; - auto linearSolver = std::make_shared(); - - // the non-linear solver - using NewtonSolver = - MultiDomainNewtonSolver; - NewtonSolver nonLinearSolver(assembler, linearSolver, couplingManager); - - // solve the non-linear system - nonLinearSolver.solve(sol); - - // write vtk output - stokesVtkWriter.write(1.0); - darcyVtkWriter.write(1.0); - - //////////////////////////////////////////////////////////// - // finalize, print dumux message to say goodbye - //////////////////////////////////////////////////////////// - - // print dumux end message - if (mpiHelper.rank() == 0) { - Parameters::print(); - DumuxMessage::print(/*firstCall=*/false); - } - - return 0; -} // end main -catch (Dumux::ParameterException &e) { - std::cerr << std::endl << e << " ---> Abort!" << std::endl; - return 1; -} catch (Dune::DGFException &e) { - std::cerr << "DGF exception thrown (" << e - << "). Most likely, the DGF file name is wrong " - "or the DGF file is corrupted, " - "e.g. missing hash at end of file or wrong number " - "(dimensions) of entries." - << " ---> Abort!" << std::endl; - return 2; -} catch (Dune::Exception &e) { - std::cerr << "Dune reported error: " << e << " ---> Abort!" << std::endl; - return 3; -} catch (...) { - std::cerr << "Unknown exception thrown! ---> Abort!" << std::endl; - return 4; -} diff --git a/test/monolithic/flow-over-square-2d/params.input b/test/monolithic/flow-over-square-2d/params.input deleted file mode 100644 index 6aa7424..0000000 --- a/test/monolithic/flow-over-square-2d/params.input +++ /dev/null @@ -1,32 +0,0 @@ -[Darcy.Grid] -LowerLeft = 0 0 -UpperRight = 1 1 -Cells = 40 40 - -[Stokes.Grid] -LowerLeft = 0 1 -UpperRight = 1 2 -Cells = 40 40 - -[Stokes.Problem] -Name = stokes -PressureDifference = 1e-9 - -[Darcy.Problem] -Name = darcy - -[Darcy.SpatialParams] -Permeability = 1e-6 # m^2 -AlphaBeaversJoseph = 1.0 - -[Vtk] -OutputName = stokes-darcy-monolithic-coupling-test - -[Problem] -Name = "fvca-monolithic" -EnableGravity = false -EnableInertiaTerms = false -CouplingMode = ReconstructFreeFlowNormalStress - -[Vtk] -AddVelocity = 1 diff --git a/test/monolithic/flow-over-square-2d/problem_darcy.hh b/test/monolithic/flow-over-square-2d/problem_darcy.hh deleted file mode 100644 index 04d6704..0000000 --- a/test/monolithic/flow-over-square-2d/problem_darcy.hh +++ /dev/null @@ -1,294 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup BoundaryTests - * \brief A simple Darcy test problem (cell-centered finite volume method). - */ - -#ifndef DUMUX_DARCY_SUBPROBLEM_HH -#define DUMUX_DARCY_SUBPROBLEM_HH - -#include - -#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 4 -#include -#endif - -#include - -#include -#include - -#include "spatialparams.hh" - -#include -#include - -namespace Dumux -{ -template -class DarcySubProblem; - -namespace Properties -{ -// Create new type tags -namespace TTag -{ -struct DarcyOneP { - using InheritsFrom = std::tuple; -}; -} // end namespace TTag - -// Set the problem property -template -struct Problem { - using type = Dumux::DarcySubProblem; -}; - -// the fluid system -template -struct FluidSystem { - using Scalar = GetPropType; - using type = - FluidSystems::OnePLiquid >; -}; - -// Set the grid type -template -struct Grid { - using type = Dune::YaspGrid<2>; -}; - -template -struct SpatialParams { - using GridGeometry = GetPropType; - using Scalar = GetPropType; - using type = OnePSpatialParams; -}; -} // end namespace Properties - -template -class DarcySubProblem : public PorousMediumFlowProblem -{ - using ParentType = PorousMediumFlowProblem; - using GridView = - typename GetPropType::GridView; - using Scalar = GetPropType; - using PrimaryVariables = GetPropType; -#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 4 - using NumEqVector = Dumux::NumEqVector; -#else - using NumEqVector = GetPropType; -#endif - using BoundaryTypes = Dumux::BoundaryTypes< - GetPropType::numEq()>; - using VolumeVariables = GetPropType; - using FVElementGeometry = - typename GetPropType::LocalView; - using SubControlVolume = typename FVElementGeometry::SubControlVolume; - using SubControlVolumeFace = - typename FVElementGeometry::SubControlVolumeFace; - using GridGeometry = GetPropType; - - using Indices = - typename GetPropType::Indices; - - using Element = typename GridView::template Codim<0>::Entity; - using GlobalPosition = typename Element::Geometry::GlobalCoordinate; - - using CouplingManager = GetPropType; - - public: - DarcySubProblem(std::shared_ptr gridGeometry, - std::shared_ptr couplingManager) - : ParentType(gridGeometry, "Darcy"), - eps_(1e-7), - couplingManager_(couplingManager) - { - problemName_ = - getParam("Vtk.OutputName") + "_" + - getParamFromGroup(this->paramGroup(), "Problem.Name"); - - // determine whether to simulate a vertical or horizontal flow configuration - verticalFlow_ = problemName_.find("vertical") != std::string::npos; - } - - /*! - * \brief The problem name. - */ - const std::string &name() const { return problemName_; } - - /*! - * \name Problem parameters - */ - // \{ - - /*! - * \brief Returns the temperature within the domain in [K]. - * - */ - Scalar temperature() const { return 273.15 + 10; } // 10°C - // \} - - /*! - * \name Boundary conditions - */ - // \{ - - /*! - * \brief Specifies which kind of boundary condition should be - * used for which equation on a given boundary control volume. - * - * \param element The element - * \param scvf The boundary sub control volume face - */ - BoundaryTypes boundaryTypes(const Element &element, - const SubControlVolumeFace &scvf) const - { - BoundaryTypes values; - values.setAllNeumann(); - - if (couplingManager().isCoupledEntity(CouplingManager::darcyIdx, scvf)) - values.setAllCouplingDirichlet(); - // values.setAllCouplingNeumann(); - - if (verticalFlow_) { - if (onLowerBoundary_(scvf.center())) - values.setAllDirichlet(); - } - - return values; - } - - /*! - * \brief Evaluates the boundary conditions for a Dirichlet control volume. - * - * \param element The element for which the Dirichlet boundary condition is set - * \param scvf The boundary subcontrolvolumeface - * - * For this method, the \a values parameter stores primary variables. - */ - PrimaryVariables dirichlet(const Element &element, - const SubControlVolumeFace &scvf) const - { - PrimaryVariables values = initial(element); - if (couplingManager().isCoupledEntity(CouplingManager::darcyIdx, - scvf)) { - //const auto& darcyContext = couplingManager().darcyCouplingContext(element, scvf); - //const auto& freeFlowScvf = darcyContext.getStokesScvf(); - //const auto& freeFlowElemVolVars = darcyContext.volVars; - - //using FluxVariables = GetPropType; - //FluxVariables fluxVars; - - //values = couplingManager().couplingData().freeFlowInterfacePressure(element, scvf); - values = couplingManager().couplingData().freeFlowInterfaceStress( - element, scvf); - } - - return values; - } - - /*! - * \brief Evaluates the boundary conditions for a Neumann control volume. - * - * \param element The element for which the Neumann boundary condition is set - * \param fvGeometry The fvGeometry - * \param elemVolVars The element volume variables - * \param elemFluxVarsCache Flux variables caches for all faces in stencil - * \param scvf The boundary sub control volume face - * - * For this method, the \a values variable stores primary variables. - */ - template - NumEqVector neumann(const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &elemVolVars, - const ElementFluxVarsCache &elemFluxVarsCache, - const SubControlVolumeFace &scvf) const - { - NumEqVector values(0.0); - - if (couplingManager().isCoupledEntity(CouplingManager::darcyIdx, scvf)) - values[Indices::conti0EqIdx] = - couplingManager().couplingData().massCouplingCondition( - element, fvGeometry, elemVolVars, scvf); - - return values; - } - - // \} - - /*! - * \name Volume terms - */ - // \{ - /*! - * \brief Evaluates the source term for all phases within a given - * sub control volume. - * - * \param element The element for which the source term is set - * \param fvGeometry The fvGeometry - * \param elemVolVars The element volume variables - * \param scv The sub control volume - */ - template - NumEqVector source(const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &elemVolVars, - const SubControlVolume &scv) const - { - return NumEqVector(0.0); - } - - // \} - - /*! - * \brief Evaluates the initial value for a control volume. - * - * \param element The element - * - * For this method, the \a priVars parameter stores primary - * variables. - */ - PrimaryVariables initial(const Element &element) const - { - return PrimaryVariables(0.0); - } - - // \} - - //! Get the coupling manager - const CouplingManager &couplingManager() const { return *couplingManager_; } - - private: - bool onLowerBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[1] < this->gridGeometry().bBoxMin()[1] + eps_; - } - - Scalar eps_; - std::shared_ptr couplingManager_; - std::string problemName_; - bool verticalFlow_; -}; -} // end namespace Dumux - -#endif //DUMUX_DARCY_SUBPROBLEM_HH diff --git a/test/monolithic/flow-over-square-2d/problem_stokes.hh b/test/monolithic/flow-over-square-2d/problem_stokes.hh deleted file mode 100644 index 5620d5f..0000000 --- a/test/monolithic/flow-over-square-2d/problem_stokes.hh +++ /dev/null @@ -1,424 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup BoundaryTests - * \brief A simple Stokes test problem for the staggered grid (Navier-)Stokes model. - */ - -#ifndef DUMUX_STOKES_SUBPROBLEM_HH -#define DUMUX_STOKES_SUBPROBLEM_HH - -#include - -#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 4 -#include -#endif - -#include -#include - -#include -#include -#include - -namespace Dumux -{ -template -class StokesSubProblem; - -namespace Properties -{ -// Create new type tags -namespace TTag -{ -struct StokesOneP { - using InheritsFrom = std::tuple; -}; -} // end namespace TTag - -// the fluid system -template -struct FluidSystem { - using Scalar = GetPropType; - using type = - FluidSystems::OnePLiquid >; -}; - -// Set the grid type -template -struct Grid { - using type = Dune::YaspGrid<2, - Dune::EquidistantOffsetCoordinates< - GetPropType, - 2> >; -}; - -// Set the problem property -template -struct Problem { - using type = Dumux::StokesSubProblem; -}; - -template -struct EnableGridGeometryCache { - static constexpr bool value = true; -}; -template -struct EnableGridFluxVariablesCache { - static constexpr bool value = true; -}; -template -struct EnableGridVolumeVariablesCache { - static constexpr bool value = true; -}; -} // end namespace Properties - -/*! - * \ingroup BoundaryTests - * \brief Test problem for the one-phase (Navier-) Stokes problem. - * - * Horizontal flow from left to right with a parabolic velocity profile. - */ -template -class StokesSubProblem : public NavierStokesProblem -{ - using ParentType = NavierStokesProblem; - using Scalar = GetPropType; - using BoundaryTypes = Dumux::NavierStokesBoundaryTypes< - GetPropType::numEq()>; - using GridGeometry = GetPropType; - using GridView = typename GridGeometry::GridView; - using FVElementGeometry = typename GridGeometry::LocalView; - using SubControlVolumeFace = - typename FVElementGeometry::SubControlVolumeFace; - using SubControlVolume = typename FVElementGeometry::SubControlVolume; - using Element = typename GridView::template Codim<0>::Entity; - using GlobalPosition = typename Element::Geometry::GlobalCoordinate; - using PrimaryVariables = GetPropType; -#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 4 - using NumEqVector = Dumux::NumEqVector; -#else - using NumEqVector = GetPropType; -#endif - using ModelTraits = GetPropType; - - using CouplingManager = GetPropType; - - public: - using Indices = typename ModelTraits::Indices; - - StokesSubProblem(std::shared_ptr gridGeometry, - std::shared_ptr couplingManager) - : ParentType(gridGeometry, "Stokes"), - eps_(1e-6), - couplingManager_(couplingManager) - { - problemName_ = - getParam("Vtk.OutputName") + "_" + - getParamFromGroup(this->paramGroup(), "Problem.Name"); - - // determine whether to simulate a vertical or horizontal flow configuration - verticalFlow_ = problemName_.find("vertical") != std::string::npos; - } - - /*! - * \brief The problem name. - */ - const std::string &name() const { return problemName_; } - - /*! - * \name Problem parameters - */ - // \{ - - /*! - * \brief Returns the temperature within the domain in [K]. - * - * This problem assumes a temperature of 10 degrees Celsius. - */ - Scalar temperature() const { return 273.15 + 10; } // 10°C - - /*! - * \brief Returns the sources within the domain. - * - * \param globalPos The global position - */ - NumEqVector sourceAtPos(const GlobalPosition &globalPos) const - { - return NumEqVector(0.0); - } - // \} - - /*! - * \name Boundary conditions - */ - // \{ - - /*! - * \brief Specifies which kind of boundary condition should be - * used for which equation on a given boundary segment. - * - * \param element The finite element - * \param scvf The sub control volume face - */ - BoundaryTypes boundaryTypes(const Element &element, - const SubControlVolumeFace &scvf) const - { - BoundaryTypes values; - - const auto &globalPos = scvf.dofPosition(); - - if (verticalFlow_) { - // inflow - if (onUpperBoundary_(globalPos)) { - values.setDirichlet(Indices::velocityXIdx); - values.setDirichlet(Indices::velocityYIdx); - } - - // left/right wall - if (onRightBoundary_(globalPos) || (onLeftBoundary_(globalPos))) { - values.setDirichlet(Indices::velocityXIdx); - values.setDirichlet(Indices::velocityYIdx); - } - } else // horizontal flow - { - // inlet / outlet - if (onLeftBoundary_(globalPos) || onRightBoundary_(globalPos)) - values.setDirichlet(Indices::pressureIdx); - else // wall - { - values.setDirichlet(Indices::velocityXIdx); - values.setDirichlet(Indices::velocityYIdx); - } - } - - //if(couplingManager().isCoupledEntity(CouplingManager::stokesIdx, scvf)) - //{ - // values.setCouplingDirichlet(Indices::velocityYIdx); - // // values.setCouplingNeumann(Indices::conti0EqIdx); - // // values.setCouplingNeumann(Indices::momentumYBalanceIdx); - // values.setBJS(Indices::momentumXBalanceIdx); - //} - - if (couplingManager().isCoupledEntity(CouplingManager::stokesIdx, - scvf)) { - assert( - couplingManager().couplingMode() != - CouplingManager::CouplingMode::reconstructPorousMediumPressure); - - values.setCouplingDirichlet(Indices::velocityYIdx); - values.setBeaversJoseph(Indices::momentumXBalanceIdx); - } - - return values; - } - - /*! - * \brief Evaluates the boundary conditions for a Dirichlet control volume. - */ - PrimaryVariables dirichletAtPos(const GlobalPosition &globalPos) const - { - return initialAtPos(globalPos); - } - - PrimaryVariables dirichlet(const Element &element, - const SubControlVolume &scv) const - { - return initialAtPos(scv.center()); - } - - PrimaryVariables dirichlet(const Element &element, - const SubControlVolumeFace &scvf) const - { - if (couplingManager().isCoupledEntity(CouplingManager::stokesIdx, - scvf)) { - PrimaryVariables values(0.0); - values[Indices::velocityYIdx] = - couplingManager().couplingData().porousMediumInterfaceVelocity( - element, scvf); - return values; - } else - return initialAtPos(scvf.center()); - } - - // /*! - // * \brief Evaluates the boundary conditions for a Neumann control volume. - // * - // * \param element The element for which the Neumann boundary condition is set - // * \param fvGeometry The fvGeometry - // * \param elemVolVars The element volume variables - // * \param elemFaceVars The element face variables - // * \param scvf The boundary sub control volume face - // */ - // template - // NumEqVector dirichlet(const Element& element, - // const FVElementGeometry& fvGeometry, - // const ElementVolumeVariables& elemVolVars, - // const ElementFaceVariables& elemFaceVars, - // const SubControlVolumeFace& scvf) const - // { - // NumEqVector values(0.0); - // - // if(couplingManager().isCoupledEntity(CouplingManager::stokesIdx, scvf)) - // { - // - // } - // } - - /*! - * \brief Evaluates the boundary conditions for a Neumann control volume. - * - * \param element The element for which the Neumann boundary condition is set - * \param fvGeometry The fvGeometry - * \param elemVolVars The element volume variables - * \param elemFaceVars The element face variables - * \param scvf The boundary sub control volume face - */ - template - NumEqVector neumann(const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &elemVolVars, - const ElementFaceVariables &elemFaceVars, - const SubControlVolumeFace &scvf) const - { - NumEqVector values(0.0); - - std::cout << "Neumann BC: " << values << std::endl; - - if (couplingManager().isCoupledEntity(CouplingManager::stokesIdx, - scvf)) { - // std::cout << "vel is " << elemFaceVars[scvf].velocitySelf() << std::endl; - values[Indices::conti0EqIdx] = - couplingManager().couplingData().massCouplingCondition( - element, fvGeometry, elemVolVars, elemFaceVars, scvf); - values[Indices::momentumYBalanceIdx] = - couplingManager().couplingData().momentumCouplingCondition( - element, fvGeometry, elemVolVars, elemFaceVars, scvf); - - // std::cout << "v self is " << elemFaceVars[scvf].velocitySelf() << ", v darcy " << couplingManager().couplingData().darcyInterfaceVelocity(element, fvGeometry, elemVolVars, elemFaceVars, scvf) << std::endl; - - // - // using FluxVariables = GetPropType; - // FluxVariables fluxVars; - // - // const auto& gridFluxVarsCache = couplingManager().gridVars_(CouplingManager::stokesIdx).gridFluxVarsCache(); - // - // std::cout << "p is " << fluxVars.computeMomentumFlux(*this, - // element, - // scvf, - // fvGeometry, - // elemVolVars, - // elemFaceVars, - // gridFluxVarsCache) << std::endl; - } - return values; - } - - // \} - - //! Get the coupling manager - const CouplingManager &couplingManager() const { return *couplingManager_; } - - /*! - * \name Volume terms - */ - // \{ - - /*! - * \brief Evaluates the initial value for a control volume. - * - * \param globalPos The global position - */ - PrimaryVariables initialAtPos(const GlobalPosition &globalPos) const - { - PrimaryVariables values(0.0); - - if (verticalFlow_) { - static const Scalar inletVelocity = getParamFromGroup( - this->paramGroup(), "Problem.Velocity"); - values[Indices::velocityYIdx] = - inletVelocity * globalPos[0] * - (this->gridGeometry().bBoxMax()[0] - globalPos[0]); - } else // horizontal flow - { - static const Scalar deltaP = getParamFromGroup( - this->paramGroup(), "Problem.PressureDifference"); - if (onLeftBoundary_(globalPos)) - values[Indices::pressureIdx] = deltaP; - } - - return values; - } - - /*! - * \brief Returns the intrinsic permeability of required as input parameter - for the Beavers-Joseph-Saffman boundary condition - */ - Scalar permeability(const Element &element, - const SubControlVolumeFace &scvf) const - { - return couplingManager().couplingData().darcyPermeability(element, - scvf); - } - - /*! - * \brief Returns the alpha value required as input parameter for the - Beavers-Joseph-Saffman boundary condition. - */ - Scalar alphaBJ(const SubControlVolumeFace &scvf) const - { - return couplingManager() - .problem(CouplingManager::darcyIdx) - .spatialParams() - .beaversJosephCoeffAtPos(scvf.center()); - } - - // \} - - private: - bool onLeftBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[0] < this->gridGeometry().bBoxMin()[0] + eps_; - } - - bool onRightBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[0] > this->gridGeometry().bBoxMax()[0] - eps_; - } - - bool onLowerBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[1] < this->gridGeometry().bBoxMin()[1] + eps_; - } - - bool onUpperBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[1] > this->gridGeometry().bBoxMax()[1] - eps_; - } - - Scalar eps_; - std::string problemName_; - bool verticalFlow_; - - std::shared_ptr couplingManager_; -}; -} // end namespace Dumux - -#endif // DUMUX_STOKES_SUBPROBLEM_HH diff --git a/test/monolithic/flow-over-square-2d/run-monolithic-simulations.sh b/test/monolithic/flow-over-square-2d/run-monolithic-simulations.sh deleted file mode 100755 index 4270094..0000000 --- a/test/monolithic/flow-over-square-2d/run-monolithic-simulations.sh +++ /dev/null @@ -1,88 +0,0 @@ -#! /usr/bin/env bash - -#testcase="VerticalFlow" - -pressureDifferences=("1e-9") -permeabilities=("1e-6") -alphaBeaversJoseph=("1.0") -meshSizes=("20" "40" "80") -hasInertiaTerms=("true" "false") - -#interpolation=("nearest-neighbor" "nearest-projection") - -i=0 - -#mkdir -p ${testcase} -#cd ${testcase} - -solver="fvca-monolithic-reversed" -inputTemplate="fvca-monolithic-base.input" - -#cp ../${geomtemplate} . - -#configurations="configs-${testcase}.txt" - -# Initial clean up - -rm -f *.csv *.pvd *.vtu *.log *.txt - -#echo "" > ${configurations} -basedir="${PWD}" -for hasInertiaTerms in "${hasInertiaTerms[@]}"; do - for dp in "${pressureDifferences[@]}"; do - for permeability in "${permeabilities[@]}"; do - for alpha in "${alphaBeaversJoseph[@]}"; do - for mesh in "${meshSizes[@]}"; do - i=$((i+1)) - - # Check if Stokes or Navier-Stokes - flowProblemName="stokes" -# echo ${hasInertiaTerms} - if [[ "${hasInertiaTerms}" == "true" ]]; then - flowProblemName="navier-stokes" - fi - - # Generate name of test case and create directories - casename="${flowProblemName}-${mesh}-${alpha}-${permeability}-${dp}" - echo "${casename}" - - # Setting up input file - inputFile="${casename}.input" - sed -e s/MESHSIZE/"${mesh}"/g \ - -e "s/FLOWPROBLEMNAME/${flowProblemName}/g" \ - -e "s/PRESSUREDIFF/${dp}/g" \ - -e "s/PERM/${permeability}/g" \ - -e "s/ALPHA/${alpha}/g" \ - -e "s/HASINERTIATERMS/${hasInertiaTerms}/g" \ - -e "s/CASENAME/${casename}/g" \ - "${inputTemplate}" > ${inputFile} - - # Running simulation - solverCmd="./${solver} ${inputFile}" - #echo "$solverCmd" - -# $(${solverCmd} > solver.log) - $(time ./${solver} "${inputFile}" > solver.log) -# $(./${solverCmd} ${inputFile} > solver.log) - - - mkdir -p "${casename}" - mv *.csv ${casename} - mv *.vtu ${casename} - mv *.pvd ${casename} - mv *.log ${casename} - mv *.txt ${casename} - mv "${inputFile}" ${casename} - #cd ${casename} -# ln -s "../${solver}" "${solver}" - #cp "../${solver}" . - - # Go back to root dir - cd "${basedir}" - done - done - done - done -done - -echo "In total ${i} cases were run" diff --git a/test/monolithic/flow-over-square-2d/spatialparams.hh b/test/monolithic/flow-over-square-2d/spatialparams.hh deleted file mode 100644 index 9c35c08..0000000 --- a/test/monolithic/flow-over-square-2d/spatialparams.hh +++ /dev/null @@ -1,96 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 3 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup BoundaryTests - * \brief The spatial parameters class for the test problem using the 1p cc model. - */ - -#ifndef DUMUX_1P_TEST_SPATIALPARAMS_HH -#define DUMUX_1P_TEST_SPATIALPARAMS_HH - -#include - -namespace Dumux -{ -/*! - * \ingroup BoundaryTests - * \brief The spatial parameters class for the test problem using the - * 1p cc model. - */ -template -class OnePSpatialParams - : public FVSpatialParamsOneP> -{ - using GridView = typename FVGridGeometry::GridView; - using ParentType = - FVSpatialParamsOneP>; - - using Element = typename GridView::template Codim<0>::Entity; - using GlobalPosition = typename Element::Geometry::GlobalCoordinate; - - public: - // export permeability type - using PermeabilityType = Scalar; - - OnePSpatialParams(std::shared_ptr fvGridGeometry) - : ParentType(fvGridGeometry) - { - permeability_ = getParam("Darcy.SpatialParams.Permeability"); - alphaBJ_ = getParam("Darcy.SpatialParams.AlphaBeaversJoseph"); - } - - /*! - * \brief Function for defining the (intrinsic) permeability \f$[m^2]\f$. - * - * \param globalPos The global position - * \return the intrinsic permeability - */ - PermeabilityType permeabilityAtPos(const GlobalPosition &globalPos) const - { - return permeability_; - } - - /*! \brief Defines the porosity in [-]. - * - * \param globalPos The global position - */ - Scalar porosityAtPos(const GlobalPosition &globalPos) const { return 0.4; } - - /*! \brief Defines the Beavers-Joseph coefficient in [-]. - * - * \param globalPos The global position - */ - Scalar beaversJosephCoeffAtPos(const GlobalPosition &globalPos) const - { - return alphaBJ_; - } - - private: - Scalar permeability_; - Scalar alphaBJ_; -}; - -} // end namespace Dumux - -#endif diff --git a/test/monolithic/flow-over-step-2d/1pspatialparams.hh b/test/monolithic/flow-over-step-2d/1pspatialparams.hh deleted file mode 100644 index 69307db..0000000 --- a/test/monolithic/flow-over-step-2d/1pspatialparams.hh +++ /dev/null @@ -1,101 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 2 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup OnePTests - * \brief The spatial parameters class for the test problem using the 1p cc model - */ -#ifndef DUMUX_1P_TEST_SPATIALPARAMS_HH -#define DUMUX_1P_TEST_SPATIALPARAMS_HH - -#include - -namespace Dumux -{ -/*! - * \ingroup OnePModel - * - * \brief The spatial parameters class for the test problem using the - * 1p cc model - */ -template -class OnePSpatialParams - : public FVSpatialParamsOneP> -{ - using GridView = typename FVGridGeometry::GridView; - using ParentType = - FVSpatialParamsOneP>; - - using Element = typename GridView::template Codim<0>::Entity; - using GlobalPosition = typename Element::Geometry::GlobalCoordinate; - - public: - // export permeability type - using PermeabilityType = Scalar; - - OnePSpatialParams(std::shared_ptr fvGridGeometry) - : ParentType(fvGridGeometry) - { - permeability_ = getParam("Darcy.SpatialParams.Permeability"); - porosity_ = getParam("Darcy.SpatialParams.Porosity"); - alphaBJ_ = getParam("Darcy.SpatialParams.AlphaBeaversJoseph"); - } - - /*! - * \brief Function for defining the (intrinsic) permeability \f$[m^2]\f$. - * - * \param globalPos The global position - * \return the intrinsic permeability - */ - PermeabilityType permeabilityAtPos(const GlobalPosition &globalPos) const - { - return permeability_; - } - - /*! \brief Define the porosity in [-]. - * - * \param globalPos The global position - */ - Scalar porosityAtPos(const GlobalPosition &globalPos) const - { - return porosity_; - } - - /*! \brief Define the Beavers-Joseph coefficient in [-]. - * - * \param globalPos The global position - */ - Scalar beaversJosephCoeffAtPos(const GlobalPosition &globalPos) const - { - return alphaBJ_; - } - - private: - Scalar permeability_; - Scalar porosity_; - Scalar alphaBJ_; -}; - -} // namespace Dumux - -#endif diff --git a/test/monolithic/flow-over-step-2d/CMakeLists.txt b/test/monolithic/flow-over-step-2d/CMakeLists.txt deleted file mode 100644 index 15f89f7..0000000 --- a/test/monolithic/flow-over-step-2d/CMakeLists.txt +++ /dev/null @@ -1,22 +0,0 @@ -add_executable(flow-over-step-2d EXCLUDE_FROM_ALL main.cc) - -# add a symlink for each input file -add_input_file_links() - -dumux_add_test(NAME test_flow-over-step-2d - TARGET flow-over-step-2d - LABELS ff-pm stokes monolithic darcy - TIMEOUT 10 - CMAKE_GUARD HAVE_UMFPACK - COMMAND ${CMAKE_SOURCE_DIR}/test/runtest.py - CMD_ARGS --script fuzzy - --files ${CMAKE_SOURCE_DIR}/test/reference-solutions/monolithic/flow-over-step-2d/ref-sol-stokes-flow-over-step-2d.vtu - ${CMAKE_CURRENT_BINARY_DIR}/flow-over-step-2d_stokes-00001.vtu - ${CMAKE_SOURCE_DIR}/test/reference-solutions/monolithic/flow-over-step-2d/ref-sol-darcy-flow-over-step-2d.vtu - ${CMAKE_CURRENT_BINARY_DIR}/flow-over-step-2d_darcy-00001.vtu - --command "${CMAKE_CURRENT_BINARY_DIR}/flow-over-step-2d ${CMAKE_SOURCE_DIR}/test/reference-solutions/monolithic/flow-over-step-2d/ref-flow-over-step-2d.input" - --relative 1e-6 - --zeroThreshold {"velocity_liq \(m/s\)":1e-6,"p":1e-8} -) -set_tests_properties(test_flow-over-step-2d PROPERTIES - ENVIRONMENT PYTHONPATH=${CMAKE_SOURCE_DIR}/test:$ENV{PYTHONPATH}) diff --git a/test/monolithic/flow-over-step-2d/freeflowsubproblem.hh b/test/monolithic/flow-over-step-2d/freeflowsubproblem.hh deleted file mode 100644 index 4cad716..0000000 --- a/test/monolithic/flow-over-step-2d/freeflowsubproblem.hh +++ /dev/null @@ -1,336 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 2 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \brief The free flow sub problem - */ -#ifndef DUMUX_STOKES_SUBPROBLEM_HH -#define DUMUX_STOKES_SUBPROBLEM_HH - -#include -#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 4 -#include -#endif -#include -#include - -#include - -namespace Dumux -{ -/*! - * \brief The free flow sub problem - */ -template -class FreeFlowSubProblem : public NavierStokesProblem -{ - using ParentType = NavierStokesProblem; - - using GridView = - typename GetPropType::GridView; - using Scalar = GetPropType; - - using Indices = - typename GetPropType::Indices; - - using BoundaryTypes = Dumux::NavierStokesBoundaryTypes< - GetPropType::numEq()>; - - using FVGridGeometry = GetPropType; - using FVElementGeometry = typename FVGridGeometry::LocalView; - using SubControlVolumeFace = - typename FVElementGeometry::SubControlVolumeFace; - using Element = typename GridView::template Codim<0>::Entity; - - using GlobalPosition = typename Element::Geometry::GlobalCoordinate; - - using PrimaryVariables = GetPropType; -#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 4 - using NumEqVector = Dumux::NumEqVector; -#else - using NumEqVector = GetPropType; -#endif - using FluidSystem = GetPropType; - - using CouplingManager = GetPropType; - - public: - FreeFlowSubProblem(std::shared_ptr fvGridGeometry, - std::shared_ptr couplingManager) - : ParentType(fvGridGeometry, "Stokes"), - eps_(1e-6), - couplingManager_(couplingManager) - { - deltaP_ = getParamFromGroup(this->paramGroup(), - "Problem.PressureDifference"); - } - - /*! - * \name Problem parameters - */ - // \{ - - /*! - * \brief Return the temperature within the domain in [K]. - * - * This problem assumes a temperature of 10 degrees Celsius. - */ - Scalar temperature() const { return 273.15 + 10; } // 10°C - - /*! - * \brief Return the sources within the domain. - * - * \param globalPos The global position - */ - NumEqVector sourceAtPos(const GlobalPosition &globalPos) const - { - return NumEqVector(0.0); - } - // \} - - /*! - * \name Boundary conditions - */ - // \{ - - /*! - * \brief Specifies which kind of boundary condition should be - * used for which equation on a given boundary segment. - * - * \param element The finite element - * \param scvf The sub control volume face - */ - BoundaryTypes boundaryTypes(const Element &element, - const SubControlVolumeFace &scvf) const - { - BoundaryTypes values; - - const auto &globalPos = scvf.dofPosition(); - - if (onLeftBoundary_(globalPos) || onRightBoundary_(globalPos)) { - //values.setDirichlet(Indices::pressureIdx); - values.setDirichlet(Indices::velocityXIdx); - values.setDirichlet(Indices::velocityYIdx); - } else { - values.setDirichlet(Indices::velocityXIdx); - values.setDirichlet(Indices::velocityYIdx); - } - - if (couplingManager().isCoupledEntity(CouplingManager::stokesIdx, - scvf)) { - values.setCouplingNeumann(Indices::conti0EqIdx); - //consider orientation of face automatically - values.setCouplingNeumann(scvf.directionIndex()); - - // set the Beaver-Joseph-Saffman slip condition for the tangential momentum balance equation, - // consider orientation of face automatically - values.setBeaversJoseph(1 - scvf.directionIndex()); - } - - return values; - } - - /*! - * \brief Evaluate the boundary conditions for a Dirichlet control volume. - * - * \param globalPos The global position - */ - PrimaryVariables dirichletAtPos(const GlobalPosition &globalPos) const - { - PrimaryVariables values(0.0); - values = initialAtPos(globalPos); - - return values; - } - - /*! - * \brief Evaluate the boundary conditions for a Neumann control volume. - * - * \param element The element for which the Neumann boundary condition is set - * \param fvGeomentry The fvGeometry - * \param elemVolVars The element volume variables - * \param elemFaceVars The element face variables - * \param scvf The boundary sub control volume face - */ - template - NumEqVector neumann(const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &elemVolVars, - const ElementFaceVariables &elemFaceVars, - const SubControlVolumeFace &scvf) const - { - NumEqVector values(0.0); - - if (couplingManager().isCoupledEntity(CouplingManager::stokesIdx, - scvf)) { - values[Indices::conti0EqIdx] = - couplingManager().couplingData().massCouplingCondition( - element, fvGeometry, elemVolVars, elemFaceVars, scvf); - values[scvf.directionIndex()] = - couplingManager().couplingData().momentumCouplingCondition( - element, fvGeometry, elemVolVars, elemFaceVars, scvf); - } - return values; - } - - // \} - - //! Set the coupling manager - void setCouplingManager(std::shared_ptr cm) - { - couplingManager_ = cm; - } - - //! Get the coupling manager - const CouplingManager &couplingManager() const { return *couplingManager_; } - - /*! - * \name Volume terms - */ - // \{ - - /*! - * \brief Evaluate the initial value for a control volume. - * - * \param globalPos The global position - */ - PrimaryVariables initialAtPos(const GlobalPosition &globalPos) const - { - PrimaryVariables values(0.0); - // set fixed pressures on the left and right boundary - if (onLeftBoundary_(globalPos)) { - //values[Indices::pressureIdx] = deltaP_; - values[Indices::velocityXIdx] = - 0.25 * (globalPos[1] - 1.0) * (2.0 - globalPos[1]); - values[Indices::velocityYIdx] = 0.; - } - - if (onRightBoundary_(globalPos)) { - //values[Indices::pressureIdx] = 0.0; - constexpr double factor = 1.0 / 16.0; - values[Indices::velocityXIdx] = - factor * (globalPos[1] - 0.5) * (2. - globalPos[1]); - values[Indices::velocityYIdx] = 0.; - } - return values; - } - - /*! - * \brief Returns the intrinsic permeability of required as input parameter for the Beavers-Joseph-Saffman boundary condition - */ - Scalar permeability(const Element &element, - const SubControlVolumeFace &scvf) const - { - return couplingManager().couplingData().darcyPermeability(element, - scvf); - } - - /*! - * \brief Returns the alpha value required as input parameter for the Beavers-Joseph-Saffman boundary condition - */ - Scalar alphaBJ(const SubControlVolumeFace &scvf) const - { - return couplingManager() - .problem(CouplingManager::darcyIdx) - .spatialParams() - .beaversJosephCoeffAtPos(scvf.center()); - } - - /*! - * \brief calculate the analytical velocity in x direction based on Beavers & Joseph (1967) - */ - void calculateAnalyticalVelocityX() const - { - analyticalVelocityX_.resize(this->gridGeometry().gridView().size(0)); - - using std::sqrt; - const Scalar dPdX = -deltaP_ / (this->gridGeometry().bBoxMax()[0] - - this->gridGeometry().bBoxMin()[0]); - static const Scalar mu = FluidSystem::viscosity(temperature(), 1e5); - static const Scalar alpha = - getParam("Darcy.SpatialParams.AlphaBeaversJoseph"); - static const Scalar K = - getParam("Darcy.SpatialParams.Permeability"); - static const Scalar sqrtK = sqrt(K); - const Scalar sigma = (this->gridGeometry().bBoxMax()[1] - - this->gridGeometry().bBoxMin()[1]) / - sqrtK; - - const Scalar uB = - -K / (2.0 * mu) * - ((sigma * sigma + 2.0 * alpha * sigma) / (1.0 + alpha * sigma)) * - dPdX; - - for (const auto &element : elements(this->gridGeometry().gridView())) { - const auto eIdx = - this->gridGeometry().gridView().indexSet().index(element); - const Scalar y = element.geometry().center()[1] - - this->gridGeometry().bBoxMin()[1]; - - const Scalar u = - uB * (1.0 + alpha / sqrtK * y) + - 1.0 / (2.0 * mu) * (y * y + 2 * alpha * y * sqrtK) * dPdX; - analyticalVelocityX_[eIdx] = u; - } - } - - /*! - * \brief Get the analytical velocity in x direction - */ - const std::vector &getAnalyticalVelocityX() const - { - if (analyticalVelocityX_.empty()) - calculateAnalyticalVelocityX(); - return analyticalVelocityX_; - } - - // \} - - private: - bool onLeftBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[0] < this->gridGeometry().bBoxMin()[0] + eps_; - } - - bool onRightBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[0] > this->gridGeometry().bBoxMax()[0] - eps_; - } - - bool onLowerBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[1] < this->gridGeometry().bBoxMin()[1] + eps_; - } - - bool onUpperBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[1] > this->gridGeometry().bBoxMax()[1] - eps_; - } - - Scalar eps_; - Scalar deltaP_; - - std::shared_ptr couplingManager_; - - mutable std::vector analyticalVelocityX_; -}; - -} //end namespace Dumux - -#endif diff --git a/test/monolithic/flow-over-step-2d/main.cc b/test/monolithic/flow-over-step-2d/main.cc deleted file mode 100644 index 6380576..0000000 --- a/test/monolithic/flow-over-step-2d/main.cc +++ /dev/null @@ -1,242 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 2 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * - * \brief A test problem for the coupled Stokes/Darcy problem (1p) - */ -#include - -#include - -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -#include - -#include "properties.hh" - -int main(int argc, char **argv) -{ - using namespace Dumux; - - // initialize MPI, finalize is done automatically on exit - const auto &mpiHelper = Dune::MPIHelper::instance(argc, argv); - - // print dumux start message - if (mpiHelper.rank() == 0) - DumuxMessage::print(/*firstCall=*/true); - - // parse command line arguments and input file - Parameters::init(argc, argv); - - // Define the sub problem type tags - using StokesTypeTag = Properties::TTag::StokesOneP; - using DarcyTypeTag = Properties::TTag::DarcyOneP; - - // use dune-subgrid to create the individual grids - static constexpr int dim = 2; - using HostGrid = - Dune::YaspGrid<2, Dune::TensorProductCoordinates>; - using HostGridManager = Dumux::GridManager; - HostGridManager hostGridManager; - hostGridManager.init(); - auto &hostGrid = hostGridManager.grid(); - - struct Params { - double amplitude = getParam("Grid.Amplitude"); - double baseline = getParam("Grid.Baseline"); - double offset = getParam("Grid.Offset"); - double scaling = getParam("Grid.Scaling"); - }; - - Params params; - - auto elementSelectorStokes = [&](const auto &element) { - //double interface = params.amplitude * std::sin(( element.geometry().center()[0] -params.offset) / params.scaling * 2.0 * M_PI) + params.baseline; - //return element.geometry().center()[1] > interface; - return element.geometry().center()[1] > 1.0 || - (element.geometry().center()[0] > 0.5 && - element.geometry().center()[1] > 0.5); - }; - - auto elementSelectorDarcy = [&](const auto &element) { - //double interface = params.amplitude * std::sin(( element.geometry().center()[0] - params.offset) / params.scaling * 2.0 * M_PI) + params.baseline; - //return element.geometry().center()[1] < interface; - return element.geometry().center()[1] < 0.5 || - (element.geometry().center()[0] < 0.5 && - element.geometry().center()[1] < 1.0); - }; - - using SubGrid = Dune::SubGrid; - - Dumux::GridManager subGridManagerStokes; - Dumux::GridManager subGridManagerDarcy; - - // initialize subgrids - subGridManagerStokes.init(hostGrid, elementSelectorStokes, "Stokes"); - subGridManagerDarcy.init(hostGrid, elementSelectorDarcy, "Darcy"); - - // we compute on the leaf grid view - const auto &darcyGridView = subGridManagerDarcy.grid().leafGridView(); - const auto &stokesGridView = subGridManagerStokes.grid().leafGridView(); - - // create the finite volume grid geometry - using StokesFVGridGeometry = - GetPropType; - auto stokesFvGridGeometry = - std::make_shared(stokesGridView); - stokesFvGridGeometry->update(); - using DarcyFVGridGeometry = - GetPropType; - auto darcyFvGridGeometry = - std::make_shared(darcyGridView); - darcyFvGridGeometry->update(); - - using Traits = - StaggeredMultiDomainTraits; - - // the coupling manager - using CouplingManager = StokesDarcyCouplingManager; - auto couplingManager = std::make_shared( - stokesFvGridGeometry, darcyFvGridGeometry); - - // the indices - constexpr auto stokesCellCenterIdx = CouplingManager::stokesCellCenterIdx; - constexpr auto stokesFaceIdx = CouplingManager::stokesFaceIdx; - constexpr auto darcyIdx = CouplingManager::darcyIdx; - - // the problem (initial and boundary conditions) - using StokesProblem = GetPropType; - auto stokesProblem = - std::make_shared(stokesFvGridGeometry, couplingManager); - using DarcyProblem = GetPropType; - auto darcyProblem = - std::make_shared(darcyFvGridGeometry, couplingManager); - - // the solution vector - Traits::SolutionVector sol; - sol[stokesCellCenterIdx].resize(stokesFvGridGeometry->numCellCenterDofs()); - sol[stokesFaceIdx].resize(stokesFvGridGeometry->numFaceDofs()); - sol[darcyIdx].resize(darcyFvGridGeometry->numDofs()); - - auto stokesSol = partial(sol, stokesFaceIdx, stokesCellCenterIdx); - - stokesProblem->applyInitialSolution(stokesSol); - darcyProblem->applyInitialSolution(sol[darcyIdx]); - - couplingManager->init(stokesProblem, darcyProblem, sol); - - // the grid variables - using StokesGridVariables = - GetPropType; - auto stokesGridVariables = std::make_shared( - stokesProblem, stokesFvGridGeometry); - stokesGridVariables->init(stokesSol); - using DarcyGridVariables = - GetPropType; - auto darcyGridVariables = - std::make_shared(darcyProblem, darcyFvGridGeometry); - darcyGridVariables->init(sol[darcyIdx]); - - // intialize the vtk output module - const auto stokesName = - getParam("Problem.Name") + "_" + stokesProblem->name(); - const auto darcyName = - getParam("Problem.Name") + "_" + darcyProblem->name(); - - StaggeredVtkOutputModule - stokesVtkWriter(*stokesGridVariables, stokesSol, stokesName); - GetPropType::initOutputModule( - stokesVtkWriter); - - stokesVtkWriter.addField(stokesProblem->getAnalyticalVelocityX(), - "analyticalV_x"); - - stokesVtkWriter.write(0.0); - - VtkOutputModule> - darcyVtkWriter(*darcyGridVariables, sol[darcyIdx], darcyName); - using DarcyVelocityOutput = - GetPropType; - darcyVtkWriter.addVelocityOutput( - std::make_shared(*darcyGridVariables)); - GetPropType::initOutputModule( - darcyVtkWriter); - darcyVtkWriter.write(0.0); - - // the assembler for a stationary problem - using Assembler = - MultiDomainFVAssembler; - auto assembler = std::make_shared( - std::make_tuple(stokesProblem, stokesProblem, darcyProblem), - std::make_tuple(stokesFvGridGeometry->faceFVGridGeometryPtr(), - stokesFvGridGeometry->cellCenterFVGridGeometryPtr(), - darcyFvGridGeometry), - std::make_tuple(stokesGridVariables->faceGridVariablesPtr(), - stokesGridVariables->cellCenterGridVariablesPtr(), - darcyGridVariables), - couplingManager); - - // the linear solver - using LinearSolver = UMFPackBackend; - auto linearSolver = std::make_shared(); - - // the non-linear solver - using NewtonSolver = - MultiDomainNewtonSolver; - NewtonSolver nonLinearSolver(assembler, linearSolver, couplingManager); - - // solve the non-linear system - nonLinearSolver.solve(sol); - - // write vtk output - stokesVtkWriter.write(1.0); - darcyVtkWriter.write(1.0); - - //////////////////////////////////////////////////////////// - // finalize, print dumux message to say goodbye - //////////////////////////////////////////////////////////// - - // print dumux end message - if (mpiHelper.rank() == 0) { - Parameters::print(); - DumuxMessage::print(/*firstCall=*/false); - } - - return 0; -} // end main diff --git a/test/monolithic/flow-over-step-2d/params.input b/test/monolithic/flow-over-step-2d/params.input deleted file mode 100644 index d9b1a1f..0000000 --- a/test/monolithic/flow-over-step-2d/params.input +++ /dev/null @@ -1,46 +0,0 @@ - # for dune-subgrid - [Grid] -Positions0 = 0 0.5 1 -Positions1 = 0 0.5 1.0 2.0 -Cells0 = 20 20 -Cells1 = 20 20 40 -Baseline = 1.0 # [m] -Amplitude = 0.04 # [m] -Offset = 0.5 # [m] -Scaling = 0.2 #[m] - -[Stokes.Grid] -Verbosity = true -Positions0 = 0.0 1.0 -Positions1 = 1.0 2.0 -Cells0 = 20 -Cells1 = 100 -Grading1 = 1 - -[Darcy.Grid] -Verbosity = true -Positions0 = 0.0 1.0 -Positions1 = 0.0 1.0 -Cells0 = 20 -Cells1 = 20 -Grading1 = 1 - -[Stokes.Problem] -Name = stokes -PressureDifference = 1e-9 -EnableInertiaTerms = false - -[Darcy.Problem] -Name = darcy - -[Darcy.SpatialParams] -Permeability = 1e-6 # m^2 -Porosity = 0.4 -AlphaBeaversJoseph = 1.0 - -[Problem] -Name = flow-over-step-2d -EnableGravity = false - -[Vtk] -AddVelocity = 1 diff --git a/test/monolithic/flow-over-step-2d/porousmediumsubproblem.hh b/test/monolithic/flow-over-step-2d/porousmediumsubproblem.hh deleted file mode 100644 index 2767bd2..0000000 --- a/test/monolithic/flow-over-step-2d/porousmediumsubproblem.hh +++ /dev/null @@ -1,245 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 2 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * - * \brief The porous medium flow sub problem - */ -#ifndef DUMUX_DARCY_SUBPROBLEM_HH -#define DUMUX_DARCY_SUBPROBLEM_HH - -#include -#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 4 -#include -#endif -#include -#include - -namespace Dumux -{ -/*! - * \brief The porous medium flow sub problem - */ -template -class PorousMediumSubProblem : public PorousMediumFlowProblem -{ - using ParentType = PorousMediumFlowProblem; - using GridView = - typename GetPropType::GridView; - using Scalar = GetPropType; - using PrimaryVariables = GetPropType; -#if DUMUX_VERSION_MAJOR >= 3 & DUMUX_VERSION_MINOR >= 4 - using NumEqVector = Dumux::NumEqVector; -#else - using NumEqVector = GetPropType; -#endif - using BoundaryTypes = Dumux::BoundaryTypes< - GetPropType::numEq()>; - using VolumeVariables = GetPropType; - using FVElementGeometry = - typename GetPropType::LocalView; - using SubControlVolume = typename FVElementGeometry::SubControlVolume; - using SubControlVolumeFace = - typename FVElementGeometry::SubControlVolumeFace; - using FVGridGeometry = GetPropType; - using GridVariables = GetPropType; - using ElementFluxVariablesCache = - typename GridVariables::GridFluxVariablesCache::LocalView; - - using Indices = - typename GetPropType::Indices; - - using Element = typename GridView::template Codim<0>::Entity; - using GlobalPosition = typename Element::Geometry::GlobalCoordinate; - - using CouplingManager = GetPropType; - - public: - PorousMediumSubProblem(std::shared_ptr fvGridGeometry, - std::shared_ptr couplingManager) - : ParentType(fvGridGeometry, "Darcy"), - eps_(1e-7), - couplingManager_(couplingManager) - { - } - - /*! - * \name Simulation steering - */ - // \{ - - /*! - * \brief Return the temperature within the domain in [K]. - * - */ - Scalar temperature() const { return 273.15 + 10; } // 10°C - // \} - - /*! - * \name Boundary conditions - */ - // \{ - - /*! - * \brief Specifies which kind of boundary condition should be - * used for which equation on a given boundary control volume. - * - * \param element The element - * \param scvf The boundary sub control volume face - */ - BoundaryTypes boundaryTypes(const Element &element, - const SubControlVolumeFace &scvf) const - { - BoundaryTypes values; - //values.setAllNeumann(); - - const auto &globalPos = scvf.center(); - if (onLowerBoundary_(globalPos)) - values.setAllDirichlet(); - else - values.setAllNeumann(); - - if (couplingManager().isCoupledEntity(CouplingManager::darcyIdx, scvf)) - values.setAllCouplingNeumann(); - - return values; - } - - /*! - * \brief Evaluate the boundary conditions for a Dirichlet control volume. - * - * \param element The element for which the Dirichlet boundary condition is set - * \param scvf The boundary subcontrolvolumeface - * - * For this method, the \a values parameter stores primary variables. - */ - PrimaryVariables dirichlet(const Element &element, - const SubControlVolumeFace &scvf) const - { - PrimaryVariables values(0.0); - values = initial(element); - - return values; - } - - /*! - * \brief Evaluate the boundary conditions for a Neumann control volume. - * - * \param element The element for which the Neumann boundary condition is set - * \param fvGeomentry The fvGeometry - * \param elemVolVars The element volume variables - * \param scvf The boundary sub control volume face - * - * For this method, the \a values variable stores primary variables. - */ - template - NumEqVector neumann(const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &elemVolVars, - const ElementFluxVariablesCache &elemFluxVarsCache, - const SubControlVolumeFace &scvf) const - { - NumEqVector values(0.0); - - if (couplingManager().isCoupledEntity(CouplingManager::darcyIdx, scvf)) - values[Indices::conti0EqIdx] = - couplingManager().couplingData().massCouplingCondition( - element, fvGeometry, elemVolVars, scvf); - - return values; - } - - // \} - - /*! - * \name Volume terms - */ - // \{ - /*! - * \brief Evaluate the source term for all phases within a given - * sub-control-volume. - * - * \param element The element for which the source term is set - * \param fvGeomentry The fvGeometry - * \param elemVolVars The element volume variables - * \param scv The subcontrolvolume - */ - template - NumEqVector source(const Element &element, - const FVElementGeometry &fvGeometry, - const ElementVolumeVariables &elemVolVars, - const SubControlVolume &scv) const - { - return NumEqVector(0.0); - } - - // \} - - /*! - * \brief Evaluate the initial value for a control volume. - * - * \param element The element - * - * For this method, the \a priVars parameter stores primary - * variables. - */ - PrimaryVariables initial(const Element &element) const - { - return PrimaryVariables(0.0); - } - - // \} - - //! Set the coupling manager - void setCouplingManager(std::shared_ptr cm) - { - couplingManager_ = cm; - } - - //! Get the coupling manager - const CouplingManager &couplingManager() const { return *couplingManager_; } - - private: - bool onLeftBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[0] < this->gridGeometry().bBoxMin()[0] + eps_; - } - - bool onRightBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[0] > this->gridGeometry().bBoxMax()[0] - eps_; - } - - bool onLowerBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[1] < this->gridGeometry().bBoxMin()[1] + eps_; - } - - bool onUpperBoundary_(const GlobalPosition &globalPos) const - { - return globalPos[1] > this->gridGeometry().bBoxMax()[1] - eps_; - } - - Scalar eps_; - std::shared_ptr couplingManager_; -}; - -} //end namespace Dumux - -#endif diff --git a/test/monolithic/flow-over-step-2d/properties.hh b/test/monolithic/flow-over-step-2d/properties.hh deleted file mode 100644 index a4494e8..0000000 --- a/test/monolithic/flow-over-step-2d/properties.hh +++ /dev/null @@ -1,145 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 2 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * - * \brief The coupled exercise properties file or the interface case. - */ -#ifndef DUMUX_EXERCISE_COUPLED_INTERFACE_PROPERTIES_HH -#define DUMUX_EXERCISE_COUPLED_INTERFACE_PROPERTIES_HH - -// Both domains -#include -#include -#include - -#include -#include -#include - -// Porous medium flow domain -#include -#include - -#include "1pspatialparams.hh" -#include "porousmediumsubproblem.hh" - -// Free-flow domain -#include -#include - -#include "freeflowsubproblem.hh" - -namespace Dumux::Properties -{ -// Create new type tags -namespace TTag -{ -struct DarcyOneP { - using InheritsFrom = std::tuple; -}; -struct StokesOneP { - using InheritsFrom = std::tuple; -}; -} // end namespace TTag - -// Set the coupling manager -template -struct CouplingManager { - using Traits = StaggeredMultiDomainTraits; - using type = Dumux::StokesDarcyCouplingManager; -}; -template -struct CouplingManager { - using Traits = StaggeredMultiDomainTraits; - using type = Dumux::StokesDarcyCouplingManager; -}; - -// Set the problem property -template -struct Problem { - using type = Dumux::PorousMediumSubProblem; -}; -template -struct Problem { - using type = Dumux::FreeFlowSubProblem; -}; - -// Set the grid type -template -struct Grid { - static constexpr auto dim = 2; - using Scalar = GetPropType; - using TensorGrid = - Dune::YaspGrid<2, Dune::TensorProductCoordinates>; - - using HostGrid = TensorGrid; - using type = Dune::SubGrid; -}; -template -struct Grid { - static constexpr auto dim = 2; - using Scalar = GetPropType; - using TensorGrid = - Dune::YaspGrid<2, Dune::TensorProductCoordinates>; - - using HostGrid = TensorGrid; - using type = Dune::SubGrid; -}; - -// the fluid system -template -struct FluidSystem { - using Scalar = GetPropType; - using type = - FluidSystems::OnePLiquid>; -}; -template -struct FluidSystem { - using Scalar = GetPropType; - using type = - FluidSystems::OnePLiquid>; -}; - -template -struct SpatialParams { - using type = OnePSpatialParams, - GetPropType>; -}; - -template -struct EnableGridGeometryCache { - static constexpr bool value = true; -}; -template -struct EnableGridFluxVariablesCache { - static constexpr bool value = true; -}; -template -struct EnableGridVolumeVariablesCache { - static constexpr bool value = true; -}; - -} // end namespace Dumux::Properties - -#endif diff --git a/test/partitioned/CMakeLists.txt b/test/partitioned/CMakeLists.txt deleted file mode 100644 index f71b271..0000000 --- a/test/partitioned/CMakeLists.txt +++ /dev/null @@ -1 +0,0 @@ -add_subdirectory(flow-over-square-2d) \ No newline at end of file diff --git a/test/partitioned/flow-over-square-2d/1pspatialparams.hh b/test/partitioned/flow-over-square-2d/1pspatialparams.hh deleted file mode 100644 index 69307db..0000000 --- a/test/partitioned/flow-over-square-2d/1pspatialparams.hh +++ /dev/null @@ -1,101 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 2 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see . * - *****************************************************************************/ -/*! - * \file - * \ingroup OnePTests - * \brief The spatial parameters class for the test problem using the 1p cc model - */ -#ifndef DUMUX_1P_TEST_SPATIALPARAMS_HH -#define DUMUX_1P_TEST_SPATIALPARAMS_HH - -#include - -namespace Dumux -{ -/*! - * \ingroup OnePModel - * - * \brief The spatial parameters class for the test problem using the - * 1p cc model - */ -template -class OnePSpatialParams - : public FVSpatialParamsOneP> -{ - using GridView = typename FVGridGeometry::GridView; - using ParentType = - FVSpatialParamsOneP>; - - using Element = typename GridView::template Codim<0>::Entity; - using GlobalPosition = typename Element::Geometry::GlobalCoordinate; - - public: - // export permeability type - using PermeabilityType = Scalar; - - OnePSpatialParams(std::shared_ptr fvGridGeometry) - : ParentType(fvGridGeometry) - { - permeability_ = getParam("Darcy.SpatialParams.Permeability"); - porosity_ = getParam("Darcy.SpatialParams.Porosity"); - alphaBJ_ = getParam("Darcy.SpatialParams.AlphaBeaversJoseph"); - } - - /*! - * \brief Function for defining the (intrinsic) permeability \f$[m^2]\f$. - * - * \param globalPos The global position - * \return the intrinsic permeability - */ - PermeabilityType permeabilityAtPos(const GlobalPosition &globalPos) const - { - return permeability_; - } - - /*! \brief Define the porosity in [-]. - * - * \param globalPos The global position - */ - Scalar porosityAtPos(const GlobalPosition &globalPos) const - { - return porosity_; - } - - /*! \brief Define the Beavers-Joseph coefficient in [-]. - * - * \param globalPos The global position - */ - Scalar beaversJosephCoeffAtPos(const GlobalPosition &globalPos) const - { - return alphaBJ_; - } - - private: - Scalar permeability_; - Scalar porosity_; - Scalar alphaBJ_; -}; - -} // namespace Dumux - -#endif diff --git a/test/partitioned/flow-over-square-2d/CMakeLists.txt b/test/partitioned/flow-over-square-2d/CMakeLists.txt deleted file mode 100644 index 4e4ac3b..0000000 --- a/test/partitioned/flow-over-square-2d/CMakeLists.txt +++ /dev/null @@ -1,178 +0,0 @@ -add_executable(test_ff_flow_over_square_2d EXCLUDE_FROM_ALL main_ff.cc) -add_executable(test_pm_flow_over_square_2d EXCLUDE_FROM_ALL main_pm.cc) - -target_compile_definitions(test_ff_flow_over_square_2d PUBLIC "ENABLEMONOLITHIC=0") -target_compile_definitions(test_pm_flow_over_square_2d PUBLIC "ENABLEMONOLITHIC=0") - -target_link_libraries(test_ff_flow_over_square_2d PRIVATE dumux-precice) -target_link_libraries(test_pm_flow_over_square_2d PRIVATE dumux-precice) - -add_input_file_links() - -macro(add_precice_file_links) - FILE(GLOB precice_files *.xml) - foreach(VAR ${input_files}) - get_filename_component(file_name ${VAR} NAME) - dune_symlink_to_source_files(FILES ${file_name}) - endforeach() -endmacro() -add_precice_file_links() - -# Dummy test is needed to build porous media solver. The default -# `dumux_add_test` (and the underlying `dune_add_test`) only accept -# one target executable. -dumux_add_test(NAME dummy_test_ff_pm_part_flow_over_square_2d - TARGET test_pm_flow_over_square_2d - LABELS freeflow stokes precice darcy partitioned - TIMEOUT 30 - COMMAND ${CMAKE_SOURCE_DIR}/test/return-test-passed.sh -) - -dumux_add_test(NAME test_ff_pm_part_flow_over_square_2d_si_st_first - TARGET test_ff_flow_over_square_2d - TARGET test_pm_flow_over_square_2d - LABELS freeflow stokes precice darcy partitioned - TIMEOUT 30 - CMAKE_GUARD HAVE_UMFPACK - COMMAND ${CMAKE_SOURCE_DIR}/test/run-iterative-test.py - CMD_ARGS - --files ${CMAKE_SOURCE_DIR}/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_first_si_stokes.vtu - ${CMAKE_CURRENT_BINARY_DIR}/stokes-iterative-00005.vtu - ${CMAKE_SOURCE_DIR}/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_first_si_darcy.vtu - ${CMAKE_CURRENT_BINARY_DIR}/darcy-iterative-00005.vtu - --dumux-param-file ${CMAKE_SOURCE_DIR}/test/partitioned/flow-over-square-2d/params-stokesdarcy.input - --precice-config-file ${CMAKE_SOURCE_DIR}/test/partitioned/flow-over-square-2d/precice-config-si-free-flow-first.xml - --precice-iteration-files ${CMAKE_SOURCE_DIR}/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_first_si_coupliter_stokes.log ${CMAKE_CURRENT_BINARY_DIR}/precice-FreeFlow-iterations.log - --case-name "flow-over-box-2d-si-stokes-first" - --relative 5e-6 - --zeroThreshold {"velocity_liq \(m/s\)":1e-14,"p":1e-12} -) -set_tests_properties(test_ff_pm_part_flow_over_square_2d_si_st_first PROPERTIES - ENVIRONMENT PYTHONPATH=${CMAKE_SOURCE_DIR}/test:$ENV{PYTHONPATH}) - -dumux_add_test(NAME test_ff_pm_part_flow_over_square_2d_si_st_second - TARGET test_pm_flow_over_square_2d - TARGET test_ff_flow_over_square_2d - LABELS freeflow darcy precice darcy partitioned - TIMEOUT 30 - CMAKE_GUARD HAVE_UMFPACK - COMMAND ${CMAKE_SOURCE_DIR}/test/run-iterative-test.py - CMD_ARGS - --files ${CMAKE_SOURCE_DIR}/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_second_si_stokes.vtu - ${CMAKE_CURRENT_BINARY_DIR}/stokes-iterative-00006.vtu - ${CMAKE_SOURCE_DIR}/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_second_si_darcy.vtu - ${CMAKE_CURRENT_BINARY_DIR}/darcy-iterative-00006.vtu - --dumux-param-file ${CMAKE_SOURCE_DIR}/test/partitioned/flow-over-square-2d/params-stokesdarcy.input - --precice-config-file ${CMAKE_SOURCE_DIR}/test/partitioned/flow-over-square-2d/precice-config-si-free-flow-second.xml - --precice-iteration-files ${CMAKE_SOURCE_DIR}/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_second_si_coupliter_darcy.log ${CMAKE_CURRENT_BINARY_DIR}/precice-Darcy-iterations.log - --case-name "flow-over-box-2d-si-stokes-second" - --relative 5e-6 - --zeroThreshold {"velocity_liq \(m/s\)":1e-14,"p":1e-12} -) -set_tests_properties(test_ff_pm_part_flow_over_square_2d_si_st_second PROPERTIES - ENVIRONMENT PYTHONPATH=${CMAKE_SOURCE_DIR}/test:$ENV{PYTHONPATH}) - -dumux_add_test(NAME test_ff_pm_part_flow_over_square_2d_pi_st - TARGET test_ff_flow_over_square_2d - TARGET test_pm_flow_over_square_2d - LABELS freeflow stokes precice darcy partitioned - TIMEOUT 30 - CMAKE_GUARD HAVE_UMFPACK - COMMAND ${CMAKE_SOURCE_DIR}/test/run-iterative-test.py - CMD_ARGS - --files ${CMAKE_SOURCE_DIR}/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_pi_stokes.vtu - ${CMAKE_CURRENT_BINARY_DIR}/stokes-iterative-00007.vtu - ${CMAKE_SOURCE_DIR}/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_pi_darcy.vtu - ${CMAKE_CURRENT_BINARY_DIR}/darcy-iterative-00007.vtu - --dumux-param-file ${CMAKE_SOURCE_DIR}/test/partitioned/flow-over-square-2d/params-stokesdarcy.input - --precice-config-file ${CMAKE_SOURCE_DIR}/test/partitioned/flow-over-square-2d/precice-config-pi.xml - --precice-iteration-files ${CMAKE_SOURCE_DIR}/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_pi_coupliter_stokes.log - ${CMAKE_CURRENT_BINARY_DIR}/precice-FreeFlow-iterations.log - --case-name "flow-over-box-2d-pi" - --relative 5e-6 - --zeroThreshold {"velocity_liq \(m/s\)":1e-14,"p":1e-12} -) -# Adding DuMuX directory to Python search path such that we can use DuMuX'x fuzzy (inexact) testing of vtu files -set_tests_properties(test_ff_pm_part_flow_over_square_2d_pi_st PROPERTIES - ENVIRONMENT PYTHONPATH=${CMAKE_SOURCE_DIR}/test:$ENV{PYTHONPATH}) - -### Setting test dependencies -set_property(TEST test_ff_pm_part_flow_over_square_2d_si_st_second APPEND PROPERTY DEPENDS test_ff_pm_part_flow_over_square_2d_si_st_first) -set_property(TEST test_ff_pm_part_flow_over_square_2d_pi_st APPEND PROPERTY DEPENDS test_ff_pm_part_flow_over_square_2d_si_st_second) - -###################### -# Navier-Stokes tests -###################### - -dumux_add_test(NAME test_ff_pm_part_flow_over_square_2d_si_ns_first - TARGET test_ff_flow_over_square_2d - TARGET test_pm_flow_over_square_2d - LABELS freeflow navierstokes precice darcy partitioned - TIMEOUT 60 - CMAKE_GUARD HAVE_UMFPACK - COMMAND ${CMAKE_SOURCE_DIR}/test/run-iterative-test.py - CMD_ARGS - --files ${CMAKE_SOURCE_DIR}/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_first_si_navierstokes.vtu - ${CMAKE_CURRENT_BINARY_DIR}/navierstokes-iterative-00006.vtu - ${CMAKE_SOURCE_DIR}/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_first_si_darcy.vtu - ${CMAKE_CURRENT_BINARY_DIR}/darcy-iterative-00006.vtu - --dumux-param-file ${CMAKE_SOURCE_DIR}/test/partitioned/flow-over-square-2d/params-navierstokesdarcy.input - --precice-config-file ${CMAKE_SOURCE_DIR}/test/partitioned/flow-over-square-2d/precice-config-si-free-flow-first.xml - --precice-iteration-files ${CMAKE_SOURCE_DIR}/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_first_si_coupliter_navierstokes.log ${CMAKE_CURRENT_BINARY_DIR}/precice-FreeFlow-iterations.log - --case-name "flow-over-box-2d-si-navierstokes-first" - --relative 5e-6 - --zeroThreshold {"velocity_liq \(m/s\)":1e-14,"p":1e-12} -) -set_tests_properties(test_ff_pm_part_flow_over_square_2d_si_ns_first PROPERTIES - ENVIRONMENT PYTHONPATH=${CMAKE_SOURCE_DIR}/test:$ENV{PYTHONPATH}) - -dumux_add_test(NAME test_ff_pm_part_flow_over_square_2d_si_ns_second - TARGET test_ff_flow_over_square_2d - TARGET test_pm_flow_over_square_2d - LABELS freeflow darcy precice darcy partitioned - TIMEOUT 60 - CMAKE_GUARD HAVE_UMFPACK - COMMAND ${CMAKE_SOURCE_DIR}/test/run-iterative-test.py - CMD_ARGS - --files ${CMAKE_SOURCE_DIR}/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_second_si_navierstokes.vtu - ${CMAKE_CURRENT_BINARY_DIR}/navierstokes-iterative-00007.vtu - ${CMAKE_SOURCE_DIR}/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_second_si_darcy.vtu - ${CMAKE_CURRENT_BINARY_DIR}/darcy-iterative-00007.vtu - --dumux-param-file ${CMAKE_SOURCE_DIR}/test/partitioned/flow-over-square-2d/params-navierstokesdarcy.input - --precice-config-file ${CMAKE_SOURCE_DIR}/test/partitioned/flow-over-square-2d/precice-config-si-free-flow-second.xml - --precice-iteration-files ${CMAKE_SOURCE_DIR}/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_second_si_coupliter_darcy.log ${CMAKE_CURRENT_BINARY_DIR}/precice-Darcy-iterations.log - --case-name "flow-over-box-2d-si-navierstokes-second" - --relative 5e-6 - --zeroThreshold {"velocity_liq \(m/s\)":1e-14,"p":1e-12} -) -set_tests_properties(test_ff_pm_part_flow_over_square_2d_si_ns_second PROPERTIES - ENVIRONMENT PYTHONPATH=${CMAKE_SOURCE_DIR}/test:$ENV{PYTHONPATH}) - -dumux_add_test(NAME test_ff_pm_part_flow_over_square_2d_pi_ns - TARGET test_ff_flow_over_square_2d - TARGET test_pm_flow_over_square_2d - LABELS freeflow navierstokes precice darcy partitioned - TIMEOUT 60 - CMAKE_GUARD HAVE_UMFPACK - COMMAND ${CMAKE_SOURCE_DIR}/test/run-iterative-test.py - CMD_ARGS - --files ${CMAKE_SOURCE_DIR}/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_pi_navierstokes.vtu - ${CMAKE_CURRENT_BINARY_DIR}/navierstokes-iterative-00011.vtu - ${CMAKE_SOURCE_DIR}/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_pi_darcy.vtu - ${CMAKE_CURRENT_BINARY_DIR}/darcy-iterative-00011.vtu - --dumux-param-file ${CMAKE_SOURCE_DIR}/test/partitioned/flow-over-square-2d/params-navierstokesdarcy.input - --precice-config-file ${CMAKE_SOURCE_DIR}/test/partitioned/flow-over-square-2d/precice-config-pi.xml - --precice-iteration-files ${CMAKE_SOURCE_DIR}/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_pi_coupliter_navierstokes.log - ${CMAKE_CURRENT_BINARY_DIR}/precice-FreeFlow-iterations.log - --case-name "flow-over-box-2d-pi" - --relative 5e-6 - --zeroThreshold {"velocity_liq \(m/s\)":1e-14,"p":1e-12} -) -# Adding DuMuX directory to Python search path such that we can use DuMuX'x fuzzy (inexact) testing of vtu files -set_tests_properties(test_ff_pm_part_flow_over_square_2d_pi_ns PROPERTIES - ENVIRONMENT PYTHONPATH=${CMAKE_SOURCE_DIR}/test:$ENV{PYTHONPATH}) - -# Adding DuMuX directory to Python search path such that we can use DuMuX'x fuzzy (inexact) testing of vtu files -set_property(TEST test_ff_pm_part_flow_over_square_2d_si_ns_first APPEND PROPERTY DEPENDS test_ff_pm_part_flow_over_square_2d_pi_st) -set_property(TEST test_ff_pm_part_flow_over_square_2d_si_ns_second APPEND PROPERTY DEPENDS test_ff_pm_part_flow_over_square_2d_si_ns_first) -set_property(TEST test_ff_pm_part_flow_over_square_2d_pi_ns APPEND PROPERTY DEPENDS test_ff_pm_part_flow_over_square_2d_si_ns_second) diff --git a/test/reference-solutions/flow-over-cube-3d/test_stokes_first_si_coupliter_darcy.log b/test/reference-solutions/flow-over-cube-3d/test_stokes_first_si_coupliter_darcy.log new file mode 100644 index 0000000..e7dbaf7 --- /dev/null +++ b/test/reference-solutions/flow-over-cube-3d/test_stokes_first_si_coupliter_darcy.log @@ -0,0 +1,2 @@ +TimeWindow TotalIterations Iterations Convergence QNColumns DeletedQNColumns DroppedQNColumns + 1 4 4 1 2 1 0 \ No newline at end of file diff --git a/test/reference-solutions/flow-over-cube-3d/test_stokes_first_si_coupliter_stokes.log b/test/reference-solutions/flow-over-cube-3d/test_stokes_first_si_coupliter_stokes.log new file mode 100644 index 0000000..61344d9 --- /dev/null +++ b/test/reference-solutions/flow-over-cube-3d/test_stokes_first_si_coupliter_stokes.log @@ -0,0 +1,2 @@ +TimeWindow TotalIterations Iterations Convergence + 1 4 4 1 \ No newline at end of file diff --git a/test/reference-solutions/monolithic/ff-pm-3d/ref-ff-pm-3d-stokes_darcy.vtu b/test/reference-solutions/flow-over-cube-3d/test_stokes_first_si_darcy.vtu similarity index 67% rename from test/reference-solutions/monolithic/ff-pm-3d/ref-ff-pm-3d-stokes_darcy.vtu rename to test/reference-solutions/flow-over-cube-3d/test_stokes_first_si_darcy.vtu index 02b8df5..c732053 100644 --- a/test/reference-solutions/monolithic/ff-pm-3d/ref-ff-pm-3d-stokes_darcy.vtu +++ b/test/reference-solutions/flow-over-cube-3d/test_stokes_first_si_darcy.vtu @@ -11,22 +11,22 @@ 0.0432204 0.042461 0.0600543 0.0590168 0.0570933 0.0545174 0.0515492 0.0484508 0.0454826 0.0429067 0.0409832 0.0399457 0.0636071 0.06214 0.0594846 0.0560053 0.0520529 0.0479471 0.0439947 0.0405154 0.03786 0.0363929 0.068627 0.0664515 0.0626998 0.0579662 0.0527098 0.0472902 0.0420338 0.0373002 0.0335485 0.031373 0.0758222 0.0723392 0.0668966 0.0604499 - 0.0535298 0.0464702 0.0395501 0.0331034 0.0276608 0.0241778 0.0864999 0.0801863 0.0720973 0.063407 0.0544894 0.0455106 - 0.036593 0.0279027 0.0198137 0.0135001 0.0535285 0.0531822 0.0525243 0.05162 0.0505581 0.0494419 0.04838 0.0474757 + 0.0535298 0.0464702 0.0395501 0.0331034 0.0276608 0.0241778 0.0864998 0.0801863 0.0720973 0.063407 0.0544894 0.0455106 + 0.036593 0.0279027 0.0198137 0.0135002 0.0535285 0.0531822 0.0525243 0.05162 0.0505581 0.0494419 0.04838 0.0474757 0.0468178 0.0464715 0.0538747 0.0534939 0.0527708 0.0517777 0.0506123 0.0493877 0.0482223 0.0472292 0.0465061 0.0461253 0.0546018 0.0541478 0.0532872 0.0521076 0.0507257 0.0492743 0.0478924 0.0467128 0.0458522 0.0453982 0.055783 0.0552082 0.0541224 0.0526401 0.0509083 0.0490917 0.0473599 0.0458776 0.0447918 0.044217 0.057539 0.0567796 0.0553543 0.0534219 0.0511759 0.0488241 0.0465781 0.0446457 0.0432204 0.042461 0.0600543 0.0590168 0.0570933 0.0545175 0.0515492 0.0484508 0.0454825 0.0429067 0.0409832 0.0399457 0.0636072 0.0621401 0.0594846 0.0560053 0.0520529 0.0479471 0.0439947 0.0405154 0.0378599 0.0363928 0.0686271 0.0664517 0.0626999 0.0579663 0.0527098 0.0472902 0.0420337 0.0373001 0.0335483 0.0313729 - 0.0758226 0.0723396 0.0668969 0.0604501 0.0535299 0.0464701 0.0395499 0.0331031 0.0276604 0.0241774 0.0865011 0.0801873 + 0.0758226 0.0723396 0.0668968 0.0604501 0.0535299 0.0464701 0.0395499 0.0331031 0.0276604 0.0241774 0.0865011 0.0801873 0.072098 0.0634073 0.0544895 0.0455105 0.0365927 0.027902 0.0198127 0.0134989 0.0535285 0.0531822 0.0525243 0.05162 0.0505581 0.0494419 0.04838 0.0474757 0.0468178 0.0464715 0.0538747 0.0534939 0.0527708 0.0517777 0.0506123 0.0493877 0.0482223 0.0472292 0.0465061 0.0461253 0.0546018 0.0541478 0.0532872 0.0521076 0.0507257 0.0492743 0.0478924 0.0467128 0.0458522 0.0453982 0.055783 0.0552082 0.0541224 0.0526401 0.0509083 0.0490917 0.0473599 0.0458776 0.0447918 0.044217 0.057539 0.0567796 0.0553543 0.053422 0.0511759 0.0488241 0.046578 0.0446457 0.0432204 0.042461 0.0600544 0.0590169 0.0570933 0.0545175 0.0515493 0.0484507 0.0454825 0.0429067 0.0409831 0.0399456 0.0636073 0.0621401 0.0594847 0.0560053 - 0.0520529 0.0479471 0.0439947 0.0405153 0.0378598 0.0363927 0.0686273 0.0664518 0.0627 0.0579663 0.0527098 0.0472902 + 0.0520529 0.0479471 0.0439947 0.0405153 0.0378599 0.0363927 0.0686273 0.0664518 0.0627 0.0579663 0.0527098 0.0472902 0.0420337 0.0373001 0.0335482 0.0313727 0.0758229 0.0723398 0.066897 0.0604502 0.0535299 0.0464701 0.0395498 0.033103 0.0276602 0.0241771 0.0865016 0.0801877 0.0720983 0.0634075 0.0544895 0.0455105 0.0365925 0.0279017 0.0198123 0.0134984 0.0535285 0.0531822 0.0525243 0.05162 0.0505581 0.0494419 0.04838 0.0474757 0.0468178 0.0464715 0.0538747 0.0534939 @@ -40,19 +40,19 @@ 0.0365924 0.0279016 0.0198122 0.0134982 0.0535285 0.0531822 0.0525243 0.05162 0.0505581 0.0494419 0.04838 0.0474757 0.0468178 0.0464715 0.0538747 0.0534939 0.0527708 0.0517777 0.0506123 0.0493877 0.0482223 0.0472292 0.0465061 0.0461253 0.0546018 0.0541478 0.0532872 0.0521077 0.0507257 0.0492743 0.0478924 0.0467128 0.0458522 0.0453982 0.055783 0.0552082 - 0.0541225 0.0526401 0.0509083 0.0490917 0.0473599 0.0458775 0.0447918 0.044217 0.057539 0.0567796 0.0553544 0.053422 + 0.0541225 0.0526401 0.0509083 0.0490917 0.0473599 0.0458775 0.0447918 0.044217 0.057539 0.0567796 0.0553543 0.053422 0.0511759 0.0488241 0.046578 0.0446456 0.0432204 0.042461 0.0600544 0.0590169 0.0570934 0.0545175 0.0515493 0.0484507 0.0454825 0.0429066 0.0409831 0.0399456 0.0636073 0.0621402 0.0594848 0.0560054 0.0520529 0.0479471 0.0439946 0.0405153 - 0.0378598 0.0363927 0.0686274 0.0664519 0.0627 0.0579664 0.0527098 0.0472902 0.0420336 0.0372999 0.0335481 0.0313726 + 0.0378598 0.0363927 0.0686274 0.0664519 0.0627 0.0579664 0.0527098 0.0472902 0.0420336 0.0373 0.0335481 0.0313726 0.0758231 0.07234 0.0668972 0.0604503 0.0535299 0.0464701 0.0395497 0.0331028 0.02766 0.0241769 0.0865019 0.0801879 0.0720984 0.0634076 0.0544896 0.0455104 0.0365924 0.0279016 0.0198121 0.0134981 0.0535285 0.0531822 0.0525243 0.05162 0.0505581 0.0494419 0.04838 0.0474757 0.0468178 0.0464715 0.0538747 0.0534939 0.0527708 0.0517777 0.0506123 0.0493877 0.0482223 0.0472292 0.0465061 0.0461253 0.0546018 0.0541478 0.0532872 0.0521077 0.0507257 0.0492743 0.0478924 0.0467128 0.0458522 0.0453982 0.055783 0.0552082 0.0541225 0.0526401 0.0509083 0.0490917 0.0473599 0.0458775 0.0447918 0.044217 - 0.057539 0.0567796 0.0553544 0.053422 0.0511759 0.0488241 0.046578 0.0446456 0.0432204 0.042461 0.0600544 0.0590169 + 0.057539 0.0567796 0.0553543 0.053422 0.0511759 0.0488241 0.046578 0.0446456 0.0432204 0.042461 0.0600544 0.0590169 0.0570934 0.0545175 0.0515493 0.0484507 0.0454825 0.0429066 0.0409831 0.0399456 0.0636073 0.0621402 0.0594848 0.0560054 0.0520529 0.0479471 0.0439946 0.0405153 0.0378598 0.0363927 0.0686274 0.0664519 0.0627 0.0579664 0.0527098 0.0472902 - 0.0420336 0.0372999 0.0335481 0.0313726 0.0758231 0.07234 0.0668972 0.0604503 0.0535299 0.0464701 0.0395497 0.0331028 + 0.0420336 0.0373 0.0335481 0.0313726 0.0758231 0.07234 0.0668972 0.0604503 0.0535299 0.0464701 0.0395497 0.0331028 0.02766 0.0241769 0.0865019 0.0801879 0.0720984 0.0634076 0.0544896 0.0455104 0.0365924 0.0279016 0.0198121 0.0134981 0.0535285 0.0531822 0.0525243 0.05162 0.0505581 0.0494419 0.04838 0.0474757 0.0468178 0.0464715 0.0538747 0.0534939 0.0527708 0.0517777 0.0506123 0.0493877 0.0482223 0.0472292 0.0465061 0.0461253 0.0546018 0.0541478 0.0532872 0.0521076 @@ -68,7 +68,7 @@ 0.0541224 0.0526401 0.0509083 0.0490917 0.0473599 0.0458776 0.0447918 0.044217 0.057539 0.0567796 0.0553543 0.053422 0.0511759 0.0488241 0.046578 0.0446457 0.0432204 0.042461 0.0600544 0.0590169 0.0570933 0.0545175 0.0515493 0.0484507 0.0454825 0.0429067 0.0409831 0.0399456 0.0636073 0.0621401 0.0594847 0.0560053 0.0520529 0.0479471 0.0439947 0.0405153 - 0.0378598 0.0363927 0.0686273 0.0664518 0.0627 0.0579663 0.0527098 0.0472902 0.0420337 0.0373001 0.0335482 0.0313727 + 0.0378599 0.0363927 0.0686273 0.0664518 0.0627 0.0579663 0.0527098 0.0472902 0.0420337 0.0373001 0.0335482 0.0313727 0.0758229 0.0723398 0.066897 0.0604502 0.0535299 0.0464701 0.0395498 0.033103 0.0276602 0.0241771 0.0865016 0.0801877 0.0720983 0.0634075 0.0544895 0.0455105 0.0365925 0.0279017 0.0198123 0.0134984 0.0535285 0.0531822 0.0525243 0.05162 0.0505581 0.0494419 0.04838 0.0474757 0.0468178 0.0464715 0.0538747 0.0534939 0.0527708 0.0517777 0.0506123 0.0493877 @@ -77,7 +77,7 @@ 0.057539 0.0567796 0.0553543 0.0534219 0.0511759 0.0488241 0.0465781 0.0446457 0.0432204 0.042461 0.0600543 0.0590168 0.0570933 0.0545175 0.0515492 0.0484508 0.0454825 0.0429067 0.0409832 0.0399457 0.0636072 0.0621401 0.0594846 0.0560053 0.0520529 0.0479471 0.0439947 0.0405154 0.0378599 0.0363928 0.0686271 0.0664517 0.0626999 0.0579663 0.0527098 0.0472902 - 0.0420337 0.0373001 0.0335483 0.0313729 0.0758226 0.0723396 0.0668969 0.0604501 0.0535299 0.0464701 0.0395499 0.0331031 + 0.0420337 0.0373001 0.0335483 0.0313729 0.0758226 0.0723396 0.0668968 0.0604501 0.0535299 0.0464701 0.0395499 0.0331031 0.0276604 0.0241774 0.0865011 0.0801873 0.072098 0.0634073 0.0544895 0.0455105 0.0365927 0.027902 0.0198127 0.0134989 0.0535285 0.0531822 0.0525243 0.05162 0.0505581 0.0494419 0.04838 0.0474757 0.0468178 0.0464715 0.0538747 0.0534939 0.0527708 0.0517777 0.0506123 0.0493877 0.0482223 0.0472292 0.0465061 0.0461253 0.0546018 0.0541478 0.0532872 0.0521076 @@ -86,260 +86,260 @@ 0.0432204 0.042461 0.0600543 0.0590168 0.0570933 0.0545174 0.0515492 0.0484508 0.0454826 0.0429067 0.0409832 0.0399457 0.0636071 0.06214 0.0594846 0.0560053 0.0520529 0.0479471 0.0439947 0.0405154 0.03786 0.0363929 0.068627 0.0664515 0.0626998 0.0579662 0.0527098 0.0472902 0.0420338 0.0373002 0.0335485 0.031373 0.0758222 0.0723392 0.0668966 0.0604499 - 0.0535298 0.0464702 0.0395501 0.0331034 0.0276608 0.0241778 0.0864999 0.0801863 0.0720973 0.063407 0.0544894 0.0455106 - 0.036593 0.0279027 0.0198137 0.0135001 + 0.0535298 0.0464702 0.0395501 0.0331034 0.0276608 0.0241778 0.0864998 0.0801863 0.0720973 0.063407 0.0544894 0.0455106 + 0.036593 0.0279027 0.0198137 0.0135002 - 1.73124e-06 -1.73124e-06 -5.10535e-12 5.02069e-06 -1.5582e-06 -4.59314e-12 7.81099e-06 -1.23209e-06 -3.62938e-12 9.83132e-06 -7.88231e-07 -2.32027e-12 - 1.08906e-05 -2.71015e-07 -7.97421e-13 1.08906e-05 2.71015e-07 7.97421e-13 9.83132e-06 7.88231e-07 2.32027e-12 7.81099e-06 1.23209e-06 3.62938e-12 - 5.02069e-06 1.5582e-06 4.59314e-12 1.73124e-06 1.73124e-06 5.10535e-12 1.90428e-06 -5.36675e-06 -7.66175e-12 5.51983e-06 -4.82765e-06 -6.88258e-12 - 8.58096e-06 -3.81404e-06 -5.4255e-12 1.07924e-05 -2.43804e-06 -3.46057e-12 1.19498e-05 -8.37858e-07 -1.18767e-12 1.19498e-05 8.37858e-07 1.18767e-12 - 1.07924e-05 2.43804e-06 3.46057e-12 8.58096e-06 3.81404e-06 5.4255e-12 5.51983e-06 4.82765e-06 6.88258e-12 1.90428e-06 5.36675e-06 7.66175e-12 - 2.27034e-06 -9.54135e-06 -1.41658e-11 6.5734e-06 -8.57161e-06 -1.26921e-11 1.02006e-05 -6.75838e-06 -9.96509e-12 1.28075e-05 -4.31203e-06 -6.33193e-12 - 1.41665e-05 -1.48023e-06 -2.1682e-12 1.41665e-05 1.48023e-06 2.1682e-12 1.28075e-05 4.31203e-06 6.33193e-12 1.02006e-05 6.75838e-06 9.96509e-12 - 6.5734e-06 8.57161e-06 1.26921e-11 2.27034e-06 9.54135e-06 1.41658e-11 2.87402e-06 -1.46857e-05 -2.83345e-11 8.30281e-06 -1.31591e-05 -2.52853e-11 - 1.28405e-05 -1.03358e-05 -1.97342e-11 1.60705e-05 -6.57148e-06 -1.24701e-11 1.77421e-05 -2.25126e-06 -4.25622e-12 1.77421e-05 2.25126e-06 4.25622e-12 - 1.60705e-05 6.57148e-06 1.24701e-11 1.28405e-05 1.03358e-05 1.97342e-11 8.30281e-06 1.31591e-05 2.52853e-11 2.87402e-06 1.46857e-05 2.83345e-11 - 3.79696e-06 -2.13566e-05 -5.89952e-11 1.09233e-05 -1.90431e-05 -5.23087e-11 1.67882e-05 -1.48543e-05 -4.0451e-11 2.08921e-05 -9.38678e-06 -2.53521e-11 - 2.29892e-05 -3.20457e-06 -8.61248e-12 2.29892e-05 3.20457e-06 8.61248e-12 2.08921e-05 9.38678e-06 2.53521e-11 1.67882e-05 1.48543e-05 4.0451e-11 - 1.09233e-05 1.90431e-05 5.23087e-11 3.79696e-06 2.13566e-05 5.89952e-11 5.18751e-06 -3.03408e-05 -1.279e-10 1.48051e-05 -2.68023e-05 -1.12201e-10 - 2.24968e-05 -2.06515e-05 -8.55328e-11 2.77203e-05 -1.29167e-05 -5.29586e-11 3.03334e-05 -4.38481e-06 -1.78696e-11 3.03334e-05 4.38481e-06 1.78696e-11 - 2.77203e-05 1.29167e-05 5.29586e-11 2.24968e-05 2.06515e-05 8.55328e-11 1.48051e-05 2.68023e-05 1.12201e-10 5.18751e-06 3.03408e-05 1.279e-10 - 7.33549e-06 -4.28634e-05 -2.93383e-10 2.06126e-05 -3.71737e-05 -2.52817e-10 3.06737e-05 -2.80324e-05 -1.88553e-10 3.71587e-05 -1.72438e-05 -1.14728e-10 - 4.02907e-05 -5.8027e-06 -3.83538e-11 4.02907e-05 5.8027e-06 3.83538e-11 3.71587e-05 1.72438e-05 1.14728e-10 3.06737e-05 2.80324e-05 1.88553e-10 - 2.06126e-05 3.71737e-05 2.52817e-10 7.33549e-06 4.28634e-05 2.93383e-10 1.08773e-05 -6.10752e-05 -7.29424e-10 2.96361e-05 -5.0996e-05 -6.1034e-10 - 4.24267e-05 -3.70601e-05 -4.40943e-10 4.99499e-05 -2.22233e-05 -2.62151e-10 5.338e-05 -7.38481e-06 -8.66157e-11 5.338e-05 7.38481e-06 8.66157e-11 - 4.99499e-05 2.22233e-05 2.62151e-10 4.24267e-05 3.70601e-05 4.40943e-10 2.96361e-05 5.0996e-05 6.1034e-10 1.08773e-05 6.10752e-05 7.29424e-10 - 1.74146e-05 -8.93643e-05 -2.01693e-09 4.46277e-05 -6.86739e-05 -1.61072e-09 5.94465e-05 -4.69879e-05 -1.11577e-09 6.6834e-05 -2.72038e-05 -6.45649e-10 - 6.98988e-05 -8.89792e-06 -2.1064e-10 6.98988e-05 8.89792e-06 2.1064e-10 6.6834e-05 2.72038e-05 6.45649e-10 5.94465e-05 4.69879e-05 1.11577e-09 - 4.46277e-05 6.86739e-05 1.61072e-09 1.74146e-05 8.93643e-05 2.01693e-09 3.15677e-05 -0.000138338 -6.31503e-09 7.20126e-05 -8.73432e-05 -4.70151e-09 - 8.38968e-05 -5.50111e-05 -3.10482e-09 8.80399e-05 -3.07046e-05 -1.75169e-09 8.94817e-05 -9.9005e-06 -5.65551e-10 8.94817e-05 9.9005e-06 5.65551e-10 - 8.80399e-05 3.07046e-05 1.75169e-09 8.38968e-05 5.50111e-05 3.10482e-09 7.20126e-05 8.73432e-05 4.70151e-09 3.15677e-05 0.000138338 6.31503e-09 - 1.73124e-06 -1.73124e-06 -1.32718e-11 5.02069e-06 -1.5582e-06 -1.19415e-11 7.81099e-06 -1.2321e-06 -9.43739e-12 9.83132e-06 -7.88232e-07 -6.03424e-12 - 1.08906e-05 -2.71015e-07 -2.07401e-12 1.08906e-05 2.71015e-07 2.07401e-12 9.83132e-06 7.88232e-07 6.03424e-12 7.81099e-06 1.2321e-06 9.43739e-12 - 5.02069e-06 1.5582e-06 1.19415e-11 1.73124e-06 1.73124e-06 1.32718e-11 1.90428e-06 -5.36676e-06 -1.98168e-11 5.51983e-06 -4.82766e-06 -1.78056e-11 - 8.58096e-06 -3.81405e-06 -1.40409e-11 1.07924e-05 -2.43805e-06 -8.95862e-12 1.19498e-05 -8.37859e-07 -3.07519e-12 1.19498e-05 8.37859e-07 3.07519e-12 - 1.07924e-05 2.43805e-06 8.95862e-12 8.58096e-06 3.81405e-06 1.40409e-11 5.51983e-06 4.82766e-06 1.78056e-11 1.90428e-06 5.36676e-06 1.98168e-11 - 2.27034e-06 -9.54137e-06 -3.63065e-11 6.5734e-06 -8.57163e-06 -3.25458e-11 1.02006e-05 -6.75839e-06 -2.5572e-11 1.28075e-05 -4.31204e-06 -1.62596e-11 - 1.41665e-05 -1.48023e-06 -5.56981e-12 1.41665e-05 1.48023e-06 5.56981e-12 1.28075e-05 4.31204e-06 1.62596e-11 1.02006e-05 6.75839e-06 2.5572e-11 - 6.5734e-06 8.57163e-06 3.25458e-11 2.27034e-06 9.54137e-06 3.63065e-11 2.87402e-06 -1.46857e-05 -7.15608e-11 8.30281e-06 -1.31591e-05 -6.39276e-11 - 1.28405e-05 -1.03358e-05 -4.99676e-11 1.60706e-05 -6.57149e-06 -3.16161e-11 1.77421e-05 -2.25126e-06 -1.0799e-11 1.77421e-05 2.25126e-06 1.0799e-11 - 1.60706e-05 6.57149e-06 3.16161e-11 1.28405e-05 1.03358e-05 4.99676e-11 8.30281e-06 1.31591e-05 6.39276e-11 2.87402e-06 1.46857e-05 7.15608e-11 - 3.79697e-06 -2.13567e-05 -1.45428e-10 1.09233e-05 -1.90432e-05 -1.29229e-10 1.67882e-05 -1.48544e-05 -1.00229e-10 2.08921e-05 -9.38682e-06 -6.29729e-11 - 2.29892e-05 -3.20459e-06 -2.14219e-11 2.29892e-05 3.20459e-06 2.14219e-11 2.08921e-05 9.38682e-06 6.29729e-11 1.67882e-05 1.48544e-05 1.00229e-10 - 1.09233e-05 1.90432e-05 1.29229e-10 3.79697e-06 2.13567e-05 1.45428e-10 5.18752e-06 -3.03411e-05 -3.02824e-10 1.48051e-05 -2.68025e-05 -2.66846e-10 - 2.24969e-05 -2.06516e-05 -2.04566e-10 2.77203e-05 -1.29168e-05 -1.27227e-10 3.03335e-05 -4.38484e-06 -4.30321e-11 3.03335e-05 4.38484e-06 4.30321e-11 - 2.77203e-05 1.29168e-05 1.27227e-10 2.24969e-05 2.06516e-05 2.04566e-10 1.48051e-05 2.68025e-05 2.66846e-10 5.18752e-06 3.03411e-05 3.02824e-10 - 7.33553e-06 -4.2864e-05 -6.50155e-10 2.06127e-05 -3.71742e-05 -5.65244e-10 3.06739e-05 -2.80327e-05 -4.25849e-10 3.71589e-05 -1.7244e-05 -2.6108e-10 - 4.02909e-05 -5.80277e-06 -8.76173e-11 4.02909e-05 5.80277e-06 8.76173e-11 3.71589e-05 1.7244e-05 2.6108e-10 3.06739e-05 2.80327e-05 4.25849e-10 - 2.06127e-05 3.71742e-05 5.65244e-10 7.33553e-06 4.2864e-05 6.50155e-10 1.08774e-05 -6.10769e-05 -1.45589e-09 2.96364e-05 -5.09974e-05 -1.23847e-09 - 4.2427e-05 -3.7061e-05 -9.09789e-10 4.99503e-05 -2.22238e-05 -5.47124e-10 5.33803e-05 -7.38498e-06 -1.8178e-10 5.33803e-05 7.38498e-06 1.8178e-10 - 4.99503e-05 2.22238e-05 5.47124e-10 4.2427e-05 3.7061e-05 9.09789e-10 2.96364e-05 5.09974e-05 1.23847e-09 1.08774e-05 6.10769e-05 1.45589e-09 - 1.7415e-05 -8.93699e-05 -3.4464e-09 4.46286e-05 -6.8678e-05 -2.83052e-09 5.94475e-05 -4.69905e-05 -2.00825e-09 6.68349e-05 -2.72053e-05 -1.17929e-09 - 6.98997e-05 -8.8984e-06 -3.87304e-10 6.98997e-05 8.8984e-06 3.87304e-10 6.68349e-05 2.72053e-05 1.17929e-09 5.94475e-05 4.69905e-05 2.00825e-09 - 4.46286e-05 6.8678e-05 2.83052e-09 1.7415e-05 8.93699e-05 3.4464e-09 3.15693e-05 -0.000138359 -8.7243e-09 7.20158e-05 -8.73567e-05 -6.77314e-09 - 8.38997e-05 -5.50195e-05 -4.59959e-09 8.80424e-05 -3.07093e-05 -2.6331e-09 8.9484e-05 -9.902e-06 -8.55181e-10 8.9484e-05 9.902e-06 8.55181e-10 - 8.80424e-05 3.07093e-05 2.6331e-09 8.38997e-05 5.50195e-05 4.59959e-09 7.20158e-05 8.73567e-05 6.77314e-09 3.15693e-05 0.000138359 8.7243e-09 - 1.73124e-06 -1.73124e-06 -1.62237e-11 5.02069e-06 -1.5582e-06 -1.45998e-11 7.811e-06 -1.2321e-06 -1.15409e-11 9.83133e-06 -7.88234e-07 -7.38089e-12 - 1.08906e-05 -2.71016e-07 -2.5372e-12 1.08906e-05 2.71016e-07 2.5372e-12 9.83133e-06 7.88234e-07 7.38089e-12 7.811e-06 1.2321e-06 1.15409e-11 - 5.02069e-06 1.5582e-06 1.45998e-11 1.73124e-06 1.73124e-06 1.62237e-11 1.90429e-06 -5.36677e-06 -2.40382e-11 5.51984e-06 -4.82767e-06 -2.16058e-11 - 8.58097e-06 -3.81406e-06 -1.70462e-11 1.07924e-05 -2.43805e-06 -1.08813e-11 1.19498e-05 -8.37861e-07 -3.73621e-12 1.19498e-05 8.37861e-07 3.73621e-12 - 1.07924e-05 2.43805e-06 1.08813e-11 8.58097e-06 3.81406e-06 1.70462e-11 5.51984e-06 4.82767e-06 2.16058e-11 1.90429e-06 5.36677e-06 2.40382e-11 - 2.27034e-06 -9.5414e-06 -4.34433e-11 6.57341e-06 -8.57166e-06 -3.89711e-11 1.02006e-05 -6.75842e-06 -3.06529e-11 1.28075e-05 -4.31206e-06 -1.9509e-11 - 1.41665e-05 -1.48024e-06 -6.68666e-12 1.41665e-05 1.48024e-06 6.68666e-12 1.28075e-05 4.31206e-06 1.9509e-11 1.02006e-05 6.75842e-06 3.06529e-11 - 6.57341e-06 8.57166e-06 3.89711e-11 2.27034e-06 9.5414e-06 4.34433e-11 2.87403e-06 -1.46858e-05 -8.38077e-11 8.30283e-06 -1.31592e-05 -7.49772e-11 - 1.28406e-05 -1.03359e-05 -5.87269e-11 1.60706e-05 -6.57152e-06 -3.72274e-11 1.77421e-05 -2.25127e-06 -1.27291e-11 1.77421e-05 2.25127e-06 1.27291e-11 - 1.60706e-05 6.57152e-06 3.72274e-11 1.28406e-05 1.03359e-05 5.87269e-11 8.30283e-06 1.31592e-05 7.49772e-11 2.87403e-06 1.46858e-05 8.38077e-11 - 3.79697e-06 -2.13568e-05 -1.6453e-10 1.09233e-05 -1.90433e-05 -1.46633e-10 1.67882e-05 -1.48545e-05 -1.14187e-10 2.08921e-05 -9.38688e-06 -7.19909e-11 - 2.29893e-05 -3.2046e-06 -2.45366e-11 2.29893e-05 3.2046e-06 2.45366e-11 2.08921e-05 9.38688e-06 7.19909e-11 1.67882e-05 1.48545e-05 1.14187e-10 - 1.09233e-05 1.90433e-05 1.46633e-10 3.79697e-06 2.13568e-05 1.6453e-10 5.18754e-06 -3.03413e-05 -3.23789e-10 1.48052e-05 -2.68027e-05 -2.87014e-10 - 2.2497e-05 -2.06518e-05 -2.21713e-10 2.77204e-05 -1.29169e-05 -1.38754e-10 3.03336e-05 -4.38487e-06 -4.70887e-11 3.03336e-05 4.38487e-06 4.70887e-11 - 2.77204e-05 1.29169e-05 1.38754e-10 2.2497e-05 2.06518e-05 2.21713e-10 1.48052e-05 2.68027e-05 2.87014e-10 5.18754e-06 3.03413e-05 3.23789e-10 - 7.33558e-06 -4.28646e-05 -6.33433e-10 2.06129e-05 -3.71746e-05 -5.57324e-10 3.06741e-05 -2.80331e-05 -4.25864e-10 3.71591e-05 -1.72442e-05 -2.63934e-10 - 4.02911e-05 -5.80284e-06 -8.90752e-11 4.02911e-05 5.80284e-06 8.90752e-11 3.71591e-05 1.72442e-05 2.63934e-10 3.06741e-05 2.80331e-05 4.25864e-10 - 2.06129e-05 3.71746e-05 5.57324e-10 7.33558e-06 4.28646e-05 6.33433e-10 1.08775e-05 -6.1078e-05 -1.21501e-09 2.96367e-05 -5.09983e-05 -1.05906e-09 - 4.24274e-05 -3.70617e-05 -7.98091e-10 4.99507e-05 -2.22242e-05 -4.88652e-10 5.33807e-05 -7.38511e-06 -1.63799e-10 5.33807e-05 7.38511e-06 1.63799e-10 - 4.99507e-05 2.22242e-05 4.88652e-10 4.24274e-05 3.70617e-05 7.98091e-10 2.96367e-05 5.09983e-05 1.05906e-09 1.08775e-05 6.1078e-05 1.21501e-09 - 1.74152e-05 -8.93716e-05 -2.20434e-09 4.46291e-05 -6.86794e-05 -1.90614e-09 5.94482e-05 -4.69916e-05 -1.41454e-09 6.68356e-05 -2.72059e-05 -8.54333e-10 - 6.99004e-05 -8.89859e-06 -2.84235e-10 6.99004e-05 8.89859e-06 2.84235e-10 6.68356e-05 2.72059e-05 8.54333e-10 5.94482e-05 4.69916e-05 1.41454e-09 - 4.46291e-05 6.86794e-05 1.90614e-09 1.74152e-05 8.93716e-05 2.20434e-09 3.15697e-05 -0.000138359 -3.35156e-09 7.20167e-05 -8.73572e-05 -2.94629e-09 - 8.39009e-05 -5.502e-05 -2.16829e-09 8.80436e-05 -3.07095e-05 -1.29478e-09 8.94851e-05 -9.90209e-06 -4.27973e-10 8.94851e-05 9.90209e-06 4.27973e-10 - 8.80436e-05 3.07095e-05 1.29478e-09 8.39009e-05 5.502e-05 2.16829e-09 7.20167e-05 8.73572e-05 2.94629e-09 3.15697e-05 0.000138359 3.35156e-09 - 1.73125e-06 -1.73125e-06 -1.2985e-11 5.02069e-06 -1.55821e-06 -1.16869e-11 7.811e-06 -1.2321e-06 -9.24033e-12 9.83133e-06 -7.88235e-07 -5.9108e-12 - 1.08906e-05 -2.71016e-07 -2.03211e-12 1.08906e-05 2.71016e-07 2.03211e-12 9.83133e-06 7.88235e-07 5.9108e-12 7.811e-06 1.2321e-06 9.24033e-12 - 5.02069e-06 1.55821e-06 1.16869e-11 1.73125e-06 1.73125e-06 1.2985e-11 1.90429e-06 -5.36679e-06 -1.91016e-11 5.51984e-06 -4.82769e-06 -1.71738e-11 - 8.58097e-06 -3.81407e-06 -1.35556e-11 1.07924e-05 -2.43806e-06 -8.65678e-12 1.19498e-05 -8.37863e-07 -2.97315e-12 1.19498e-05 8.37863e-07 2.97315e-12 - 1.07924e-05 2.43806e-06 8.65678e-12 8.58097e-06 3.81407e-06 1.35556e-11 5.51984e-06 4.82769e-06 1.71738e-11 1.90429e-06 5.36679e-06 1.91016e-11 - 2.27035e-06 -9.54143e-06 -3.40928e-11 6.57341e-06 -8.57169e-06 -3.06018e-11 1.02006e-05 -6.75844e-06 -2.40919e-11 1.28075e-05 -4.31207e-06 -1.53463e-11 - 1.41665e-05 -1.48024e-06 -5.26249e-12 1.41665e-05 1.48024e-06 5.26249e-12 1.28075e-05 4.31207e-06 1.53463e-11 1.02006e-05 6.75844e-06 2.40919e-11 - 6.57341e-06 8.57169e-06 3.06018e-11 2.27035e-06 9.54143e-06 3.40928e-11 2.87403e-06 -1.46858e-05 -6.4527e-11 8.30284e-06 -1.31592e-05 -5.77967e-11 - 1.28406e-05 -1.03359e-05 -4.5349e-11 1.60706e-05 -6.57155e-06 -2.87925e-11 1.77421e-05 -2.25128e-06 -9.85392e-12 1.77421e-05 2.25128e-06 9.85392e-12 - 1.60706e-05 6.57155e-06 2.87925e-11 1.28406e-05 1.03359e-05 4.5349e-11 8.30284e-06 1.31592e-05 5.77967e-11 2.87403e-06 1.46858e-05 6.4527e-11 - 3.79698e-06 -2.13569e-05 -1.22992e-10 1.09233e-05 -1.90434e-05 -1.09863e-10 1.67883e-05 -1.48545e-05 -8.58306e-11 2.08922e-05 -9.38692e-06 -5.42673e-11 - 2.29893e-05 -3.20462e-06 -1.85257e-11 2.29893e-05 3.20462e-06 1.85257e-11 2.08922e-05 9.38692e-06 5.42673e-11 1.67883e-05 1.48545e-05 8.58306e-11 - 1.09233e-05 1.90434e-05 1.09863e-10 3.79698e-06 2.13569e-05 1.22992e-10 5.18756e-06 -3.03415e-05 -2.31146e-10 1.48052e-05 -2.68029e-05 -2.05777e-10 - 2.2497e-05 -2.06519e-05 -1.59895e-10 2.77205e-05 -1.2917e-05 -1.00567e-10 3.03337e-05 -4.3849e-06 -3.42237e-11 3.03337e-05 4.3849e-06 3.42237e-11 - 2.77205e-05 1.2917e-05 1.00567e-10 2.2497e-05 2.06519e-05 1.59895e-10 1.48052e-05 2.68029e-05 2.05777e-10 5.18756e-06 3.03415e-05 2.31146e-10 - 7.33561e-06 -4.28649e-05 -4.20892e-10 2.0613e-05 -3.71749e-05 -3.73333e-10 3.06742e-05 -2.80333e-05 -2.88269e-10 3.71592e-05 -1.72444e-05 -1.80181e-10 - 4.02913e-05 -5.80289e-06 -6.10867e-11 4.02913e-05 5.80289e-06 6.10867e-11 3.71592e-05 1.72444e-05 1.80181e-10 3.06742e-05 2.80333e-05 2.88269e-10 - 2.0613e-05 3.71749e-05 3.73333e-10 7.33561e-06 4.28649e-05 4.20892e-10 1.08775e-05 -6.10785e-05 -7.22315e-10 2.96368e-05 -5.09987e-05 -6.39301e-10 - 4.24276e-05 -3.7062e-05 -4.90642e-10 4.99509e-05 -2.22244e-05 -3.04628e-10 5.3381e-05 -7.38518e-06 -1.02853e-10 5.3381e-05 7.38518e-06 1.02853e-10 - 4.99509e-05 2.22244e-05 3.04628e-10 4.24276e-05 3.7062e-05 4.90642e-10 2.96368e-05 5.09987e-05 6.39301e-10 1.08775e-05 6.10785e-05 7.22315e-10 - 1.74153e-05 -8.9372e-05 -1.1026e-09 4.46294e-05 -6.86799e-05 -9.8208e-10 5.94485e-05 -4.69919e-05 -7.52165e-10 6.68361e-05 -2.72061e-05 -4.64491e-10 - 6.99008e-05 -8.89866e-06 -1.56237e-10 6.99008e-05 8.89866e-06 1.56237e-10 6.68361e-05 2.72061e-05 4.64491e-10 5.94485e-05 4.69919e-05 7.52165e-10 - 4.46294e-05 6.86799e-05 9.8208e-10 1.74153e-05 8.9372e-05 1.1026e-09 3.15697e-05 -0.000138358 -1.27654e-09 7.2017e-05 -8.73571e-05 -1.19654e-09 - 8.39014e-05 -5.50199e-05 -9.31133e-10 8.80442e-05 -3.07095e-05 -5.75779e-10 8.94857e-05 -9.90208e-06 -1.93413e-10 8.94857e-05 9.90208e-06 1.93413e-10 - 8.80442e-05 3.07095e-05 5.75779e-10 8.39014e-05 5.50199e-05 9.31133e-10 7.2017e-05 8.73571e-05 1.19654e-09 3.15697e-05 0.000138358 1.27654e-09 - 1.73125e-06 -1.73125e-06 -4.92779e-12 5.0207e-06 -1.55821e-06 -4.43551e-12 7.811e-06 -1.2321e-06 -3.50742e-12 9.83134e-06 -7.88236e-07 -2.24387e-12 - 1.08906e-05 -2.71017e-07 -7.7149e-13 1.08906e-05 2.71017e-07 7.7149e-13 9.83134e-06 7.88236e-07 2.24387e-12 7.811e-06 1.2321e-06 3.50742e-12 - 5.0207e-06 1.55821e-06 4.43551e-12 1.73125e-06 1.73125e-06 4.92779e-12 1.90429e-06 -5.3668e-06 -7.21844e-12 5.51984e-06 -4.82769e-06 -6.49098e-12 - 8.58097e-06 -3.81408e-06 -5.12479e-12 1.07924e-05 -2.43806e-06 -3.27354e-12 1.19498e-05 -8.37865e-07 -1.12445e-12 1.19498e-05 8.37865e-07 1.12445e-12 - 1.07924e-05 2.43806e-06 3.27354e-12 8.58097e-06 3.81408e-06 5.12479e-12 5.51984e-06 4.82769e-06 6.49098e-12 1.90429e-06 5.3668e-06 7.21844e-12 - 2.27035e-06 -9.54145e-06 -1.27902e-11 6.57342e-06 -8.5717e-06 -1.14844e-11 1.02006e-05 -6.75845e-06 -9.04594e-12 1.28075e-05 -4.31208e-06 -5.7649e-12 - 1.41665e-05 -1.48025e-06 -1.97743e-12 1.41665e-05 1.48025e-06 1.97743e-12 1.28075e-05 4.31208e-06 5.7649e-12 1.02006e-05 6.75845e-06 9.04594e-12 - 6.57342e-06 8.5717e-06 1.14844e-11 2.27035e-06 9.54145e-06 1.27902e-11 2.87404e-06 -1.46859e-05 -2.39456e-11 8.30285e-06 -1.31592e-05 -2.14617e-11 - 1.28406e-05 -1.03359e-05 -1.68556e-11 1.60706e-05 -6.57156e-06 -1.07111e-11 1.77422e-05 -2.25129e-06 -3.66762e-12 1.77422e-05 2.25129e-06 3.66762e-12 - 1.60706e-05 6.57156e-06 1.07111e-11 1.28406e-05 1.03359e-05 1.68556e-11 8.30285e-06 1.31592e-05 2.14617e-11 2.87404e-06 1.46859e-05 2.39456e-11 - 3.79699e-06 -2.1357e-05 -4.48946e-11 1.09233e-05 -1.90434e-05 -4.01499e-11 1.67883e-05 -1.48546e-05 -3.14213e-11 2.08922e-05 -9.38695e-06 -1.98972e-11 - 2.29894e-05 -3.20463e-06 -6.7985e-12 2.29894e-05 3.20463e-06 6.7985e-12 2.08922e-05 9.38695e-06 1.98972e-11 1.67883e-05 1.48546e-05 3.14213e-11 - 1.09233e-05 1.90434e-05 4.01499e-11 3.79699e-06 2.1357e-05 4.48946e-11 5.18757e-06 -3.03416e-05 -8.22799e-11 1.48052e-05 -2.6803e-05 -7.34083e-11 - 2.24971e-05 -2.0652e-05 -5.72156e-11 2.77206e-05 -1.29171e-05 -3.60823e-11 3.03337e-05 -4.38492e-06 -1.22974e-11 3.03337e-05 4.38492e-06 1.22974e-11 - 2.77206e-05 1.29171e-05 3.60823e-11 2.24971e-05 2.0652e-05 5.72156e-11 1.48052e-05 2.6803e-05 7.34083e-11 5.18757e-06 3.03416e-05 8.22799e-11 - 7.33562e-06 -4.28651e-05 -1.4423e-10 2.0613e-05 -3.71751e-05 -1.28436e-10 3.06742e-05 -2.80334e-05 -9.97022e-11 3.71593e-05 -1.72444e-05 -6.25984e-11 - 4.02913e-05 -5.80291e-06 -2.1275e-11 4.02913e-05 5.80291e-06 2.1275e-11 3.71593e-05 1.72444e-05 6.25984e-11 3.06742e-05 2.80334e-05 9.97022e-11 - 2.0613e-05 3.71751e-05 1.28436e-10 7.33562e-06 4.28651e-05 1.4423e-10 1.08776e-05 -6.10786e-05 -2.33775e-10 2.96369e-05 -5.09989e-05 -2.08378e-10 - 4.24277e-05 -3.70622e-05 -1.61396e-10 4.9951e-05 -2.22245e-05 -1.00949e-10 5.33811e-05 -7.38521e-06 -3.42178e-11 5.33811e-05 7.38521e-06 3.42178e-11 - 4.9951e-05 2.22245e-05 1.00949e-10 4.24277e-05 3.70622e-05 1.61396e-10 2.96369e-05 5.09989e-05 2.08378e-10 1.08776e-05 6.10786e-05 2.33775e-10 - 1.74154e-05 -8.93721e-05 -3.27727e-10 4.46295e-05 -6.868e-05 -2.95738e-10 5.94487e-05 -4.6992e-05 -2.30103e-10 6.68362e-05 -2.72061e-05 -1.43802e-10 - 6.9901e-05 -8.89868e-06 -4.86659e-11 6.9901e-05 8.89868e-06 4.86659e-11 6.68362e-05 2.72061e-05 1.43802e-10 5.94487e-05 4.6992e-05 2.30103e-10 - 4.46295e-05 6.868e-05 2.95738e-10 1.74154e-05 8.93721e-05 3.27727e-10 3.15697e-05 -0.000138358 -3.34249e-10 7.2017e-05 -8.73569e-05 -3.21877e-10 - 8.39015e-05 -5.50198e-05 -2.57616e-10 8.80444e-05 -3.07095e-05 -1.62407e-10 8.94859e-05 -9.90207e-06 -5.50705e-11 8.94859e-05 9.90207e-06 5.50705e-11 - 8.80444e-05 3.07095e-05 1.62407e-10 8.39015e-05 5.50198e-05 2.57616e-10 7.2017e-05 8.73569e-05 3.21877e-10 3.15697e-05 0.000138358 3.34249e-10 - 1.73125e-06 -1.73125e-06 4.92779e-12 5.0207e-06 -1.55821e-06 4.43551e-12 7.811e-06 -1.2321e-06 3.50742e-12 9.83134e-06 -7.88236e-07 2.24387e-12 - 1.08906e-05 -2.71017e-07 7.7149e-13 1.08906e-05 2.71017e-07 -7.7149e-13 9.83134e-06 7.88236e-07 -2.24387e-12 7.811e-06 1.2321e-06 -3.50742e-12 - 5.0207e-06 1.55821e-06 -4.43551e-12 1.73125e-06 1.73125e-06 -4.92779e-12 1.90429e-06 -5.3668e-06 7.21844e-12 5.51984e-06 -4.82769e-06 6.49098e-12 - 8.58097e-06 -3.81408e-06 5.12479e-12 1.07924e-05 -2.43806e-06 3.27354e-12 1.19498e-05 -8.37865e-07 1.12445e-12 1.19498e-05 8.37865e-07 -1.12445e-12 - 1.07924e-05 2.43806e-06 -3.27354e-12 8.58097e-06 3.81408e-06 -5.12479e-12 5.51984e-06 4.82769e-06 -6.49098e-12 1.90429e-06 5.3668e-06 -7.21844e-12 - 2.27035e-06 -9.54145e-06 1.27902e-11 6.57342e-06 -8.5717e-06 1.14844e-11 1.02006e-05 -6.75845e-06 9.04594e-12 1.28075e-05 -4.31208e-06 5.7649e-12 - 1.41665e-05 -1.48025e-06 1.97743e-12 1.41665e-05 1.48025e-06 -1.97743e-12 1.28075e-05 4.31208e-06 -5.7649e-12 1.02006e-05 6.75845e-06 -9.04594e-12 - 6.57342e-06 8.5717e-06 -1.14844e-11 2.27035e-06 9.54145e-06 -1.27902e-11 2.87404e-06 -1.46859e-05 2.39456e-11 8.30285e-06 -1.31592e-05 2.14617e-11 - 1.28406e-05 -1.03359e-05 1.68556e-11 1.60706e-05 -6.57156e-06 1.07111e-11 1.77422e-05 -2.25129e-06 3.66762e-12 1.77422e-05 2.25129e-06 -3.66762e-12 - 1.60706e-05 6.57156e-06 -1.07111e-11 1.28406e-05 1.03359e-05 -1.68556e-11 8.30285e-06 1.31592e-05 -2.14617e-11 2.87404e-06 1.46859e-05 -2.39456e-11 - 3.79699e-06 -2.1357e-05 4.48946e-11 1.09233e-05 -1.90434e-05 4.01499e-11 1.67883e-05 -1.48546e-05 3.14213e-11 2.08922e-05 -9.38695e-06 1.98972e-11 - 2.29894e-05 -3.20463e-06 6.7985e-12 2.29894e-05 3.20463e-06 -6.7985e-12 2.08922e-05 9.38695e-06 -1.98972e-11 1.67883e-05 1.48546e-05 -3.14213e-11 - 1.09233e-05 1.90434e-05 -4.01499e-11 3.79699e-06 2.1357e-05 -4.48946e-11 5.18757e-06 -3.03416e-05 8.22799e-11 1.48052e-05 -2.6803e-05 7.34083e-11 - 2.24971e-05 -2.0652e-05 5.72156e-11 2.77206e-05 -1.29171e-05 3.60823e-11 3.03337e-05 -4.38492e-06 1.22974e-11 3.03337e-05 4.38492e-06 -1.22974e-11 - 2.77206e-05 1.29171e-05 -3.60823e-11 2.24971e-05 2.0652e-05 -5.72156e-11 1.48052e-05 2.6803e-05 -7.34083e-11 5.18757e-06 3.03416e-05 -8.22799e-11 - 7.33562e-06 -4.28651e-05 1.4423e-10 2.0613e-05 -3.71751e-05 1.28436e-10 3.06742e-05 -2.80334e-05 9.97022e-11 3.71593e-05 -1.72444e-05 6.25984e-11 - 4.02913e-05 -5.80291e-06 2.1275e-11 4.02913e-05 5.80291e-06 -2.1275e-11 3.71593e-05 1.72444e-05 -6.25984e-11 3.06742e-05 2.80334e-05 -9.97022e-11 - 2.0613e-05 3.71751e-05 -1.28436e-10 7.33562e-06 4.28651e-05 -1.4423e-10 1.08776e-05 -6.10786e-05 2.33775e-10 2.96369e-05 -5.09989e-05 2.08378e-10 - 4.24277e-05 -3.70622e-05 1.61396e-10 4.9951e-05 -2.22245e-05 1.00949e-10 5.33811e-05 -7.38521e-06 3.42178e-11 5.33811e-05 7.38521e-06 -3.42178e-11 - 4.9951e-05 2.22245e-05 -1.00949e-10 4.24277e-05 3.70622e-05 -1.61396e-10 2.96369e-05 5.09989e-05 -2.08378e-10 1.08776e-05 6.10786e-05 -2.33775e-10 - 1.74154e-05 -8.93721e-05 3.27727e-10 4.46295e-05 -6.868e-05 2.95738e-10 5.94487e-05 -4.6992e-05 2.30103e-10 6.68362e-05 -2.72061e-05 1.43802e-10 - 6.9901e-05 -8.89868e-06 4.86659e-11 6.9901e-05 8.89868e-06 -4.86659e-11 6.68362e-05 2.72061e-05 -1.43802e-10 5.94487e-05 4.6992e-05 -2.30103e-10 - 4.46295e-05 6.868e-05 -2.95738e-10 1.74154e-05 8.93721e-05 -3.27727e-10 3.15697e-05 -0.000138358 3.34249e-10 7.2017e-05 -8.73569e-05 3.21877e-10 - 8.39015e-05 -5.50198e-05 2.57616e-10 8.80444e-05 -3.07095e-05 1.62407e-10 8.94859e-05 -9.90207e-06 5.50705e-11 8.94859e-05 9.90207e-06 -5.50705e-11 - 8.80444e-05 3.07095e-05 -1.62407e-10 8.39015e-05 5.50198e-05 -2.57616e-10 7.2017e-05 8.73569e-05 -3.21877e-10 3.15697e-05 0.000138358 -3.34249e-10 - 1.73125e-06 -1.73125e-06 1.2985e-11 5.02069e-06 -1.55821e-06 1.16869e-11 7.811e-06 -1.2321e-06 9.24033e-12 9.83133e-06 -7.88235e-07 5.9108e-12 - 1.08906e-05 -2.71016e-07 2.03211e-12 1.08906e-05 2.71016e-07 -2.03211e-12 9.83133e-06 7.88235e-07 -5.9108e-12 7.811e-06 1.2321e-06 -9.24033e-12 - 5.02069e-06 1.55821e-06 -1.16869e-11 1.73125e-06 1.73125e-06 -1.2985e-11 1.90429e-06 -5.36679e-06 1.91016e-11 5.51984e-06 -4.82769e-06 1.71738e-11 - 8.58097e-06 -3.81407e-06 1.35556e-11 1.07924e-05 -2.43806e-06 8.65678e-12 1.19498e-05 -8.37863e-07 2.97315e-12 1.19498e-05 8.37863e-07 -2.97315e-12 - 1.07924e-05 2.43806e-06 -8.65678e-12 8.58097e-06 3.81407e-06 -1.35556e-11 5.51984e-06 4.82769e-06 -1.71738e-11 1.90429e-06 5.36679e-06 -1.91016e-11 - 2.27035e-06 -9.54143e-06 3.40928e-11 6.57341e-06 -8.57169e-06 3.06018e-11 1.02006e-05 -6.75844e-06 2.40919e-11 1.28075e-05 -4.31207e-06 1.53463e-11 - 1.41665e-05 -1.48024e-06 5.26249e-12 1.41665e-05 1.48024e-06 -5.26249e-12 1.28075e-05 4.31207e-06 -1.53463e-11 1.02006e-05 6.75844e-06 -2.40919e-11 - 6.57341e-06 8.57169e-06 -3.06018e-11 2.27035e-06 9.54143e-06 -3.40928e-11 2.87403e-06 -1.46858e-05 6.4527e-11 8.30284e-06 -1.31592e-05 5.77967e-11 - 1.28406e-05 -1.03359e-05 4.5349e-11 1.60706e-05 -6.57155e-06 2.87925e-11 1.77421e-05 -2.25128e-06 9.85392e-12 1.77421e-05 2.25128e-06 -9.85392e-12 - 1.60706e-05 6.57155e-06 -2.87925e-11 1.28406e-05 1.03359e-05 -4.5349e-11 8.30284e-06 1.31592e-05 -5.77967e-11 2.87403e-06 1.46858e-05 -6.4527e-11 - 3.79698e-06 -2.13569e-05 1.22992e-10 1.09233e-05 -1.90434e-05 1.09863e-10 1.67883e-05 -1.48545e-05 8.58306e-11 2.08922e-05 -9.38692e-06 5.42673e-11 - 2.29893e-05 -3.20462e-06 1.85257e-11 2.29893e-05 3.20462e-06 -1.85257e-11 2.08922e-05 9.38692e-06 -5.42673e-11 1.67883e-05 1.48545e-05 -8.58306e-11 - 1.09233e-05 1.90434e-05 -1.09863e-10 3.79698e-06 2.13569e-05 -1.22992e-10 5.18756e-06 -3.03415e-05 2.31146e-10 1.48052e-05 -2.68029e-05 2.05777e-10 - 2.2497e-05 -2.06519e-05 1.59895e-10 2.77205e-05 -1.2917e-05 1.00567e-10 3.03337e-05 -4.3849e-06 3.42237e-11 3.03337e-05 4.3849e-06 -3.42237e-11 - 2.77205e-05 1.2917e-05 -1.00567e-10 2.2497e-05 2.06519e-05 -1.59895e-10 1.48052e-05 2.68029e-05 -2.05777e-10 5.18756e-06 3.03415e-05 -2.31146e-10 - 7.33561e-06 -4.28649e-05 4.20892e-10 2.0613e-05 -3.71749e-05 3.73333e-10 3.06742e-05 -2.80333e-05 2.88269e-10 3.71592e-05 -1.72444e-05 1.80181e-10 - 4.02913e-05 -5.80289e-06 6.10867e-11 4.02913e-05 5.80289e-06 -6.10867e-11 3.71592e-05 1.72444e-05 -1.80181e-10 3.06742e-05 2.80333e-05 -2.88269e-10 - 2.0613e-05 3.71749e-05 -3.73333e-10 7.33561e-06 4.28649e-05 -4.20892e-10 1.08775e-05 -6.10785e-05 7.22315e-10 2.96368e-05 -5.09987e-05 6.39301e-10 - 4.24276e-05 -3.7062e-05 4.90642e-10 4.99509e-05 -2.22244e-05 3.04628e-10 5.3381e-05 -7.38518e-06 1.02853e-10 5.3381e-05 7.38518e-06 -1.02853e-10 - 4.99509e-05 2.22244e-05 -3.04628e-10 4.24276e-05 3.7062e-05 -4.90642e-10 2.96368e-05 5.09987e-05 -6.39301e-10 1.08775e-05 6.10785e-05 -7.22315e-10 - 1.74153e-05 -8.9372e-05 1.1026e-09 4.46294e-05 -6.86799e-05 9.8208e-10 5.94485e-05 -4.69919e-05 7.52165e-10 6.68361e-05 -2.72061e-05 4.64491e-10 - 6.99008e-05 -8.89866e-06 1.56237e-10 6.99008e-05 8.89866e-06 -1.56237e-10 6.68361e-05 2.72061e-05 -4.64491e-10 5.94485e-05 4.69919e-05 -7.52165e-10 - 4.46294e-05 6.86799e-05 -9.8208e-10 1.74153e-05 8.9372e-05 -1.1026e-09 3.15697e-05 -0.000138358 1.27654e-09 7.2017e-05 -8.73571e-05 1.19654e-09 - 8.39014e-05 -5.50199e-05 9.31133e-10 8.80442e-05 -3.07095e-05 5.75779e-10 8.94857e-05 -9.90208e-06 1.93413e-10 8.94857e-05 9.90208e-06 -1.93413e-10 - 8.80442e-05 3.07095e-05 -5.75779e-10 8.39014e-05 5.50199e-05 -9.31133e-10 7.2017e-05 8.73571e-05 -1.19654e-09 3.15697e-05 0.000138358 -1.27654e-09 - 1.73124e-06 -1.73124e-06 1.62237e-11 5.02069e-06 -1.5582e-06 1.45998e-11 7.811e-06 -1.2321e-06 1.15409e-11 9.83133e-06 -7.88234e-07 7.38089e-12 - 1.08906e-05 -2.71016e-07 2.5372e-12 1.08906e-05 2.71016e-07 -2.5372e-12 9.83133e-06 7.88234e-07 -7.38089e-12 7.811e-06 1.2321e-06 -1.15409e-11 - 5.02069e-06 1.5582e-06 -1.45998e-11 1.73124e-06 1.73124e-06 -1.62237e-11 1.90429e-06 -5.36677e-06 2.40382e-11 5.51984e-06 -4.82767e-06 2.16058e-11 - 8.58097e-06 -3.81406e-06 1.70462e-11 1.07924e-05 -2.43805e-06 1.08813e-11 1.19498e-05 -8.37861e-07 3.73621e-12 1.19498e-05 8.37861e-07 -3.73621e-12 - 1.07924e-05 2.43805e-06 -1.08813e-11 8.58097e-06 3.81406e-06 -1.70462e-11 5.51984e-06 4.82767e-06 -2.16058e-11 1.90429e-06 5.36677e-06 -2.40382e-11 - 2.27034e-06 -9.5414e-06 4.34433e-11 6.57341e-06 -8.57166e-06 3.89711e-11 1.02006e-05 -6.75842e-06 3.06529e-11 1.28075e-05 -4.31206e-06 1.9509e-11 - 1.41665e-05 -1.48024e-06 6.68666e-12 1.41665e-05 1.48024e-06 -6.68666e-12 1.28075e-05 4.31206e-06 -1.9509e-11 1.02006e-05 6.75842e-06 -3.06529e-11 - 6.57341e-06 8.57166e-06 -3.89711e-11 2.27034e-06 9.5414e-06 -4.34433e-11 2.87403e-06 -1.46858e-05 8.38077e-11 8.30283e-06 -1.31592e-05 7.49772e-11 - 1.28406e-05 -1.03359e-05 5.87269e-11 1.60706e-05 -6.57152e-06 3.72274e-11 1.77421e-05 -2.25127e-06 1.27291e-11 1.77421e-05 2.25127e-06 -1.27291e-11 - 1.60706e-05 6.57152e-06 -3.72274e-11 1.28406e-05 1.03359e-05 -5.87269e-11 8.30283e-06 1.31592e-05 -7.49772e-11 2.87403e-06 1.46858e-05 -8.38077e-11 - 3.79697e-06 -2.13568e-05 1.6453e-10 1.09233e-05 -1.90433e-05 1.46633e-10 1.67882e-05 -1.48545e-05 1.14187e-10 2.08921e-05 -9.38688e-06 7.19909e-11 - 2.29893e-05 -3.2046e-06 2.45366e-11 2.29893e-05 3.2046e-06 -2.45366e-11 2.08921e-05 9.38688e-06 -7.19909e-11 1.67882e-05 1.48545e-05 -1.14187e-10 - 1.09233e-05 1.90433e-05 -1.46633e-10 3.79697e-06 2.13568e-05 -1.6453e-10 5.18754e-06 -3.03413e-05 3.23789e-10 1.48052e-05 -2.68027e-05 2.87014e-10 - 2.2497e-05 -2.06518e-05 2.21713e-10 2.77204e-05 -1.29169e-05 1.38754e-10 3.03336e-05 -4.38487e-06 4.70887e-11 3.03336e-05 4.38487e-06 -4.70887e-11 - 2.77204e-05 1.29169e-05 -1.38754e-10 2.2497e-05 2.06518e-05 -2.21713e-10 1.48052e-05 2.68027e-05 -2.87014e-10 5.18754e-06 3.03413e-05 -3.23789e-10 - 7.33558e-06 -4.28646e-05 6.33433e-10 2.06129e-05 -3.71746e-05 5.57324e-10 3.06741e-05 -2.80331e-05 4.25864e-10 3.71591e-05 -1.72442e-05 2.63934e-10 - 4.02911e-05 -5.80284e-06 8.90752e-11 4.02911e-05 5.80284e-06 -8.90752e-11 3.71591e-05 1.72442e-05 -2.63934e-10 3.06741e-05 2.80331e-05 -4.25864e-10 - 2.06129e-05 3.71746e-05 -5.57324e-10 7.33558e-06 4.28646e-05 -6.33433e-10 1.08775e-05 -6.1078e-05 1.21501e-09 2.96367e-05 -5.09983e-05 1.05906e-09 - 4.24274e-05 -3.70617e-05 7.98091e-10 4.99507e-05 -2.22242e-05 4.88652e-10 5.33807e-05 -7.38511e-06 1.63799e-10 5.33807e-05 7.38511e-06 -1.63799e-10 - 4.99507e-05 2.22242e-05 -4.88652e-10 4.24274e-05 3.70617e-05 -7.98091e-10 2.96367e-05 5.09983e-05 -1.05906e-09 1.08775e-05 6.1078e-05 -1.21501e-09 - 1.74152e-05 -8.93716e-05 2.20434e-09 4.46291e-05 -6.86794e-05 1.90614e-09 5.94482e-05 -4.69916e-05 1.41454e-09 6.68356e-05 -2.72059e-05 8.54333e-10 - 6.99004e-05 -8.89859e-06 2.84235e-10 6.99004e-05 8.89859e-06 -2.84235e-10 6.68356e-05 2.72059e-05 -8.54333e-10 5.94482e-05 4.69916e-05 -1.41454e-09 - 4.46291e-05 6.86794e-05 -1.90614e-09 1.74152e-05 8.93716e-05 -2.20434e-09 3.15697e-05 -0.000138359 3.35156e-09 7.20167e-05 -8.73572e-05 2.94629e-09 - 8.39009e-05 -5.502e-05 2.16829e-09 8.80436e-05 -3.07095e-05 1.29478e-09 8.94851e-05 -9.90209e-06 4.27973e-10 8.94851e-05 9.90209e-06 -4.27973e-10 - 8.80436e-05 3.07095e-05 -1.29478e-09 8.39009e-05 5.502e-05 -2.16829e-09 7.20167e-05 8.73572e-05 -2.94629e-09 3.15697e-05 0.000138359 -3.35156e-09 - 1.73124e-06 -1.73124e-06 1.32718e-11 5.02069e-06 -1.5582e-06 1.19415e-11 7.81099e-06 -1.2321e-06 9.43739e-12 9.83132e-06 -7.88232e-07 6.03424e-12 - 1.08906e-05 -2.71015e-07 2.07401e-12 1.08906e-05 2.71015e-07 -2.07401e-12 9.83132e-06 7.88232e-07 -6.03424e-12 7.81099e-06 1.2321e-06 -9.43739e-12 - 5.02069e-06 1.5582e-06 -1.19415e-11 1.73124e-06 1.73124e-06 -1.32718e-11 1.90428e-06 -5.36676e-06 1.98168e-11 5.51983e-06 -4.82766e-06 1.78056e-11 - 8.58096e-06 -3.81405e-06 1.40409e-11 1.07924e-05 -2.43805e-06 8.95862e-12 1.19498e-05 -8.37859e-07 3.07519e-12 1.19498e-05 8.37859e-07 -3.07519e-12 - 1.07924e-05 2.43805e-06 -8.95862e-12 8.58096e-06 3.81405e-06 -1.40409e-11 5.51983e-06 4.82766e-06 -1.78056e-11 1.90428e-06 5.36676e-06 -1.98168e-11 - 2.27034e-06 -9.54137e-06 3.63065e-11 6.5734e-06 -8.57163e-06 3.25458e-11 1.02006e-05 -6.75839e-06 2.5572e-11 1.28075e-05 -4.31204e-06 1.62596e-11 - 1.41665e-05 -1.48023e-06 5.56981e-12 1.41665e-05 1.48023e-06 -5.56981e-12 1.28075e-05 4.31204e-06 -1.62596e-11 1.02006e-05 6.75839e-06 -2.5572e-11 - 6.5734e-06 8.57163e-06 -3.25458e-11 2.27034e-06 9.54137e-06 -3.63065e-11 2.87402e-06 -1.46857e-05 7.15608e-11 8.30281e-06 -1.31591e-05 6.39276e-11 - 1.28405e-05 -1.03358e-05 4.99676e-11 1.60706e-05 -6.57149e-06 3.16161e-11 1.77421e-05 -2.25126e-06 1.0799e-11 1.77421e-05 2.25126e-06 -1.0799e-11 - 1.60706e-05 6.57149e-06 -3.16161e-11 1.28405e-05 1.03358e-05 -4.99676e-11 8.30281e-06 1.31591e-05 -6.39276e-11 2.87402e-06 1.46857e-05 -7.15608e-11 - 3.79697e-06 -2.13567e-05 1.45428e-10 1.09233e-05 -1.90432e-05 1.29229e-10 1.67882e-05 -1.48544e-05 1.00229e-10 2.08921e-05 -9.38682e-06 6.29729e-11 - 2.29892e-05 -3.20459e-06 2.14219e-11 2.29892e-05 3.20459e-06 -2.14219e-11 2.08921e-05 9.38682e-06 -6.29729e-11 1.67882e-05 1.48544e-05 -1.00229e-10 - 1.09233e-05 1.90432e-05 -1.29229e-10 3.79697e-06 2.13567e-05 -1.45428e-10 5.18752e-06 -3.03411e-05 3.02824e-10 1.48051e-05 -2.68025e-05 2.66846e-10 - 2.24969e-05 -2.06516e-05 2.04566e-10 2.77203e-05 -1.29168e-05 1.27227e-10 3.03335e-05 -4.38484e-06 4.30321e-11 3.03335e-05 4.38484e-06 -4.30321e-11 - 2.77203e-05 1.29168e-05 -1.27227e-10 2.24969e-05 2.06516e-05 -2.04566e-10 1.48051e-05 2.68025e-05 -2.66846e-10 5.18752e-06 3.03411e-05 -3.02824e-10 - 7.33553e-06 -4.2864e-05 6.50155e-10 2.06127e-05 -3.71742e-05 5.65244e-10 3.06739e-05 -2.80327e-05 4.25849e-10 3.71589e-05 -1.7244e-05 2.6108e-10 - 4.02909e-05 -5.80277e-06 8.76173e-11 4.02909e-05 5.80277e-06 -8.76173e-11 3.71589e-05 1.7244e-05 -2.6108e-10 3.06739e-05 2.80327e-05 -4.25849e-10 - 2.06127e-05 3.71742e-05 -5.65244e-10 7.33553e-06 4.2864e-05 -6.50155e-10 1.08774e-05 -6.10769e-05 1.45589e-09 2.96364e-05 -5.09974e-05 1.23847e-09 - 4.2427e-05 -3.7061e-05 9.09789e-10 4.99503e-05 -2.22238e-05 5.47124e-10 5.33803e-05 -7.38498e-06 1.8178e-10 5.33803e-05 7.38498e-06 -1.8178e-10 - 4.99503e-05 2.22238e-05 -5.47124e-10 4.2427e-05 3.7061e-05 -9.09789e-10 2.96364e-05 5.09974e-05 -1.23847e-09 1.08774e-05 6.10769e-05 -1.45589e-09 - 1.7415e-05 -8.93699e-05 3.4464e-09 4.46286e-05 -6.8678e-05 2.83052e-09 5.94475e-05 -4.69905e-05 2.00825e-09 6.68349e-05 -2.72053e-05 1.17929e-09 - 6.98997e-05 -8.8984e-06 3.87304e-10 6.98997e-05 8.8984e-06 -3.87304e-10 6.68349e-05 2.72053e-05 -1.17929e-09 5.94475e-05 4.69905e-05 -2.00825e-09 - 4.46286e-05 6.8678e-05 -2.83052e-09 1.7415e-05 8.93699e-05 -3.4464e-09 3.15693e-05 -0.000138359 8.7243e-09 7.20158e-05 -8.73567e-05 6.77314e-09 - 8.38997e-05 -5.50195e-05 4.59959e-09 8.80424e-05 -3.07093e-05 2.6331e-09 8.9484e-05 -9.902e-06 8.55181e-10 8.9484e-05 9.902e-06 -8.55181e-10 - 8.80424e-05 3.07093e-05 -2.6331e-09 8.38997e-05 5.50195e-05 -4.59959e-09 7.20158e-05 8.73567e-05 -6.77314e-09 3.15693e-05 0.000138359 -8.7243e-09 - 1.73124e-06 -1.73124e-06 5.10535e-12 5.02069e-06 -1.5582e-06 4.59314e-12 7.81099e-06 -1.23209e-06 3.62938e-12 9.83132e-06 -7.88231e-07 2.32027e-12 - 1.08906e-05 -2.71015e-07 7.97421e-13 1.08906e-05 2.71015e-07 -7.97421e-13 9.83132e-06 7.88231e-07 -2.32027e-12 7.81099e-06 1.23209e-06 -3.62938e-12 - 5.02069e-06 1.5582e-06 -4.59314e-12 1.73124e-06 1.73124e-06 -5.10535e-12 1.90428e-06 -5.36675e-06 7.66175e-12 5.51983e-06 -4.82765e-06 6.88258e-12 - 8.58096e-06 -3.81404e-06 5.4255e-12 1.07924e-05 -2.43804e-06 3.46057e-12 1.19498e-05 -8.37858e-07 1.18767e-12 1.19498e-05 8.37858e-07 -1.18767e-12 - 1.07924e-05 2.43804e-06 -3.46057e-12 8.58096e-06 3.81404e-06 -5.4255e-12 5.51983e-06 4.82765e-06 -6.88258e-12 1.90428e-06 5.36675e-06 -7.66175e-12 - 2.27034e-06 -9.54135e-06 1.41658e-11 6.5734e-06 -8.57161e-06 1.26921e-11 1.02006e-05 -6.75838e-06 9.96509e-12 1.28075e-05 -4.31203e-06 6.33193e-12 - 1.41665e-05 -1.48023e-06 2.1682e-12 1.41665e-05 1.48023e-06 -2.1682e-12 1.28075e-05 4.31203e-06 -6.33193e-12 1.02006e-05 6.75838e-06 -9.96509e-12 - 6.5734e-06 8.57161e-06 -1.26921e-11 2.27034e-06 9.54135e-06 -1.41658e-11 2.87402e-06 -1.46857e-05 2.83345e-11 8.30281e-06 -1.31591e-05 2.52853e-11 - 1.28405e-05 -1.03358e-05 1.97342e-11 1.60705e-05 -6.57148e-06 1.24701e-11 1.77421e-05 -2.25126e-06 4.25622e-12 1.77421e-05 2.25126e-06 -4.25622e-12 - 1.60705e-05 6.57148e-06 -1.24701e-11 1.28405e-05 1.03358e-05 -1.97342e-11 8.30281e-06 1.31591e-05 -2.52853e-11 2.87402e-06 1.46857e-05 -2.83345e-11 - 3.79696e-06 -2.13566e-05 5.89952e-11 1.09233e-05 -1.90431e-05 5.23087e-11 1.67882e-05 -1.48543e-05 4.0451e-11 2.08921e-05 -9.38678e-06 2.53521e-11 - 2.29892e-05 -3.20457e-06 8.61248e-12 2.29892e-05 3.20457e-06 -8.61248e-12 2.08921e-05 9.38678e-06 -2.53521e-11 1.67882e-05 1.48543e-05 -4.0451e-11 - 1.09233e-05 1.90431e-05 -5.23087e-11 3.79696e-06 2.13566e-05 -5.89952e-11 5.18751e-06 -3.03408e-05 1.279e-10 1.48051e-05 -2.68023e-05 1.12201e-10 - 2.24968e-05 -2.06515e-05 8.55328e-11 2.77203e-05 -1.29167e-05 5.29586e-11 3.03334e-05 -4.38481e-06 1.78696e-11 3.03334e-05 4.38481e-06 -1.78696e-11 - 2.77203e-05 1.29167e-05 -5.29586e-11 2.24968e-05 2.06515e-05 -8.55328e-11 1.48051e-05 2.68023e-05 -1.12201e-10 5.18751e-06 3.03408e-05 -1.279e-10 - 7.33549e-06 -4.28634e-05 2.93383e-10 2.06126e-05 -3.71737e-05 2.52817e-10 3.06737e-05 -2.80324e-05 1.88553e-10 3.71587e-05 -1.72438e-05 1.14728e-10 - 4.02907e-05 -5.8027e-06 3.83538e-11 4.02907e-05 5.8027e-06 -3.83538e-11 3.71587e-05 1.72438e-05 -1.14728e-10 3.06737e-05 2.80324e-05 -1.88553e-10 - 2.06126e-05 3.71737e-05 -2.52817e-10 7.33549e-06 4.28634e-05 -2.93383e-10 1.08773e-05 -6.10752e-05 7.29424e-10 2.96361e-05 -5.0996e-05 6.1034e-10 - 4.24267e-05 -3.70601e-05 4.40943e-10 4.99499e-05 -2.22233e-05 2.62151e-10 5.338e-05 -7.38481e-06 8.66157e-11 5.338e-05 7.38481e-06 -8.66157e-11 - 4.99499e-05 2.22233e-05 -2.62151e-10 4.24267e-05 3.70601e-05 -4.40943e-10 2.96361e-05 5.0996e-05 -6.1034e-10 1.08773e-05 6.10752e-05 -7.29424e-10 - 1.74146e-05 -8.93643e-05 2.01693e-09 4.46277e-05 -6.86739e-05 1.61072e-09 5.94465e-05 -4.69879e-05 1.11577e-09 6.6834e-05 -2.72038e-05 6.45649e-10 - 6.98988e-05 -8.89792e-06 2.1064e-10 6.98988e-05 8.89792e-06 -2.1064e-10 6.6834e-05 2.72038e-05 -6.45649e-10 5.94465e-05 4.69879e-05 -1.11577e-09 - 4.46277e-05 6.86739e-05 -1.61072e-09 1.74146e-05 8.93643e-05 -2.01693e-09 3.15677e-05 -0.000138338 6.31503e-09 7.20126e-05 -8.73432e-05 4.70151e-09 - 8.38968e-05 -5.50111e-05 3.10482e-09 8.80399e-05 -3.07046e-05 1.75169e-09 8.94817e-05 -9.9005e-06 5.65551e-10 8.94817e-05 9.9005e-06 -5.65551e-10 - 8.80399e-05 3.07046e-05 -1.75169e-09 8.38968e-05 5.50111e-05 -3.10482e-09 7.20126e-05 8.73432e-05 -4.70151e-09 3.15677e-05 0.000138338 -6.31503e-09 + 1.73124e-06 -1.73124e-06 -5.14385e-12 5.02069e-06 -1.5582e-06 -4.62775e-12 7.81099e-06 -1.23209e-06 -3.65668e-12 9.83132e-06 -7.88231e-07 -2.33769e-12 + 1.08906e-05 -2.71015e-07 -8.03404e-13 1.08906e-05 2.71015e-07 8.03404e-13 9.83132e-06 7.88231e-07 2.33769e-12 7.81099e-06 1.23209e-06 3.65668e-12 + 5.02069e-06 1.5582e-06 4.62775e-12 1.73124e-06 1.73124e-06 5.14385e-12 1.90428e-06 -5.36675e-06 -7.71976e-12 5.51983e-06 -4.82765e-06 -6.93459e-12 + 8.58096e-06 -3.81404e-06 -5.4664e-12 1.07924e-05 -2.43804e-06 -3.48659e-12 1.19498e-05 -8.37858e-07 -1.19659e-12 1.19498e-05 8.37858e-07 1.19659e-12 + 1.07924e-05 2.43804e-06 3.48659e-12 8.58096e-06 3.81404e-06 5.4664e-12 5.51983e-06 4.82765e-06 6.93459e-12 1.90428e-06 5.36675e-06 7.71976e-12 + 2.27034e-06 -9.54135e-06 -1.42738e-11 6.57339e-06 -8.57161e-06 -1.27885e-11 1.02006e-05 -6.75838e-06 -1.00405e-11 1.28075e-05 -4.31203e-06 -6.37966e-12 + 1.41665e-05 -1.48023e-06 -2.18451e-12 1.41665e-05 1.48023e-06 2.18451e-12 1.28075e-05 4.31203e-06 6.37966e-12 1.02006e-05 6.75838e-06 1.00405e-11 + 6.57339e-06 8.57161e-06 1.27885e-11 2.27034e-06 9.54135e-06 1.42738e-11 2.87402e-06 -1.46857e-05 -2.85527e-11 8.3028e-06 -1.31591e-05 -2.54791e-11 + 1.28405e-05 -1.03358e-05 -1.98844e-11 1.60705e-05 -6.57147e-06 -1.25645e-11 1.77421e-05 -2.25126e-06 -4.28833e-12 1.77421e-05 2.25126e-06 4.28833e-12 + 1.60705e-05 6.57147e-06 1.25645e-11 1.28405e-05 1.03358e-05 1.98844e-11 8.3028e-06 1.31591e-05 2.54791e-11 2.87402e-06 1.46857e-05 2.85527e-11 + 3.79696e-06 -2.13566e-05 -5.94569e-11 1.09233e-05 -1.90431e-05 -5.27148e-11 1.67882e-05 -1.48543e-05 -4.07618e-11 2.08921e-05 -9.38678e-06 -2.55453e-11 + 2.29892e-05 -3.20457e-06 -8.6778e-12 2.29892e-05 3.20457e-06 8.6778e-12 2.08921e-05 9.38678e-06 2.55453e-11 1.67882e-05 1.48543e-05 4.07618e-11 + 1.09233e-05 1.90431e-05 5.27148e-11 3.79696e-06 2.13566e-05 5.94569e-11 5.18751e-06 -3.03408e-05 -1.28927e-10 1.48051e-05 -2.68023e-05 -1.13089e-10 + 2.24968e-05 -2.06515e-05 -8.61992e-11 2.77203e-05 -1.29167e-05 -5.33663e-11 3.03334e-05 -4.38481e-06 -1.80064e-11 3.03334e-05 4.38481e-06 1.80064e-11 + 2.77203e-05 1.29167e-05 5.33663e-11 2.24968e-05 2.06515e-05 8.61992e-11 1.48051e-05 2.68023e-05 1.13089e-10 5.18751e-06 3.03408e-05 1.28927e-10 + 7.33549e-06 -4.28634e-05 -2.95825e-10 2.06126e-05 -3.71736e-05 -2.54874e-10 3.06737e-05 -2.80323e-05 -1.90052e-10 3.71587e-05 -1.72438e-05 -1.15626e-10 + 4.02907e-05 -5.8027e-06 -3.86518e-11 4.02907e-05 5.8027e-06 3.86518e-11 3.71587e-05 1.72438e-05 1.15626e-10 3.06737e-05 2.80323e-05 1.90052e-10 + 2.06126e-05 3.71736e-05 2.54874e-10 7.33549e-06 4.28634e-05 2.95825e-10 1.08773e-05 -6.10751e-05 -7.35808e-10 2.96361e-05 -5.0996e-05 -6.15483e-10 + 4.24267e-05 -3.70601e-05 -4.44543e-10 4.99499e-05 -2.22233e-05 -2.64253e-10 5.33799e-05 -7.38481e-06 -8.73047e-11 5.33799e-05 7.38481e-06 8.73047e-11 + 4.99499e-05 2.22233e-05 2.64253e-10 4.24267e-05 3.70601e-05 4.44543e-10 2.96361e-05 5.0996e-05 6.15483e-10 1.08773e-05 6.10751e-05 7.35808e-10 + 1.74146e-05 -8.93642e-05 -2.0357e-09 4.46277e-05 -6.86738e-05 -1.62483e-09 5.94465e-05 -4.69878e-05 -1.12517e-09 6.6834e-05 -2.72038e-05 -6.51e-10 + 6.98988e-05 -8.89791e-06 -2.12376e-10 6.98988e-05 8.89791e-06 2.12376e-10 6.6834e-05 2.72038e-05 6.51e-10 5.94465e-05 4.69878e-05 1.12517e-09 + 4.46277e-05 6.86738e-05 1.62483e-09 1.74146e-05 8.93642e-05 2.0357e-09 3.15677e-05 -0.000138338 -6.3778e-09 7.20125e-05 -8.73431e-05 -4.74402e-09 + 8.38967e-05 -5.5011e-05 -3.1319e-09 8.80399e-05 -3.07046e-05 -1.76683e-09 8.94816e-05 -9.90049e-06 -5.7043e-10 8.94816e-05 9.90049e-06 5.7043e-10 + 8.80399e-05 3.07046e-05 1.76683e-09 8.38967e-05 5.5011e-05 3.1319e-09 7.20125e-05 8.73431e-05 4.74402e-09 3.15677e-05 0.000138338 6.3778e-09 + 1.73124e-06 -1.73124e-06 -1.33718e-11 5.02069e-06 -1.5582e-06 -1.20313e-11 7.81099e-06 -1.2321e-06 -9.50825e-12 9.83132e-06 -7.88232e-07 -6.07948e-12 + 1.08906e-05 -2.71015e-07 -2.08954e-12 1.08906e-05 2.71015e-07 2.08954e-12 9.83132e-06 7.88232e-07 6.07948e-12 7.81099e-06 1.2321e-06 9.50825e-12 + 5.02069e-06 1.5582e-06 1.20313e-11 1.73124e-06 1.73124e-06 1.33718e-11 1.90428e-06 -5.36676e-06 -1.99663e-11 5.51983e-06 -4.82766e-06 -1.79397e-11 + 8.58096e-06 -3.81405e-06 -1.41464e-11 1.07924e-05 -2.43805e-06 -9.02581e-12 1.19498e-05 -8.37859e-07 -3.09822e-12 1.19498e-05 8.37859e-07 3.09822e-12 + 1.07924e-05 2.43805e-06 9.02581e-12 8.58096e-06 3.81405e-06 1.41464e-11 5.51983e-06 4.82766e-06 1.79397e-11 1.90428e-06 5.36676e-06 1.99663e-11 + 2.27034e-06 -9.54137e-06 -3.65816e-11 6.5734e-06 -8.57163e-06 -3.27918e-11 1.02006e-05 -6.75839e-06 -2.57645e-11 1.28075e-05 -4.31204e-06 -1.63816e-11 + 1.41665e-05 -1.48023e-06 -5.61151e-12 1.41665e-05 1.48023e-06 5.61151e-12 1.28075e-05 4.31204e-06 1.63816e-11 1.02006e-05 6.75839e-06 2.57645e-11 + 6.5734e-06 8.57163e-06 3.27918e-11 2.27034e-06 9.54137e-06 3.65816e-11 2.87402e-06 -1.46857e-05 -7.21065e-11 8.30281e-06 -1.31591e-05 -6.44131e-11 + 1.28405e-05 -1.03358e-05 -5.03449e-11 1.60706e-05 -6.57149e-06 -3.18536e-11 1.77421e-05 -2.25126e-06 -1.08799e-11 1.77421e-05 2.25126e-06 1.08799e-11 + 1.60706e-05 6.57149e-06 3.18536e-11 1.28405e-05 1.03358e-05 5.03449e-11 8.30281e-06 1.31591e-05 6.44131e-11 2.87402e-06 1.46857e-05 7.21065e-11 + 3.79696e-06 -2.13567e-05 -1.46547e-10 1.09233e-05 -1.90432e-05 -1.30217e-10 1.67882e-05 -1.48544e-05 -1.00989e-10 2.08921e-05 -9.38682e-06 -6.34467e-11 + 2.29892e-05 -3.20459e-06 -2.15824e-11 2.29892e-05 3.20459e-06 2.15824e-11 2.08921e-05 9.38682e-06 6.34467e-11 1.67882e-05 1.48544e-05 1.00989e-10 + 1.09233e-05 1.90432e-05 1.30217e-10 3.79696e-06 2.13567e-05 1.46547e-10 5.18752e-06 -3.03411e-05 -3.05189e-10 1.48051e-05 -2.68025e-05 -2.68907e-10 + 2.24969e-05 -2.06516e-05 -2.06126e-10 2.77203e-05 -1.29168e-05 -1.28187e-10 3.03335e-05 -4.38484e-06 -4.33551e-11 3.03335e-05 4.38484e-06 4.33551e-11 + 2.77203e-05 1.29168e-05 1.28187e-10 2.24969e-05 2.06516e-05 2.06126e-10 1.48051e-05 2.68025e-05 2.68907e-10 5.18752e-06 3.03411e-05 3.05189e-10 + 7.33553e-06 -4.2864e-05 -6.5534e-10 2.06127e-05 -3.71741e-05 -5.6967e-10 3.06739e-05 -2.80327e-05 -4.2912e-10 3.71589e-05 -1.7244e-05 -2.63059e-10 + 4.02909e-05 -5.80277e-06 -8.82772e-11 4.02909e-05 5.80277e-06 8.82772e-11 3.71589e-05 1.7244e-05 2.63059e-10 3.06739e-05 2.80327e-05 4.2912e-10 + 2.06127e-05 3.71741e-05 5.6967e-10 7.33553e-06 4.2864e-05 6.5534e-10 1.08774e-05 -6.10769e-05 -1.46784e-09 2.96364e-05 -5.09974e-05 -1.24833e-09 + 4.2427e-05 -3.7061e-05 -9.16839e-10 4.99503e-05 -2.22238e-05 -5.51298e-10 5.33803e-05 -7.38498e-06 -1.83157e-10 5.33803e-05 7.38498e-06 1.83157e-10 + 4.99503e-05 2.22238e-05 5.51298e-10 4.2427e-05 3.7061e-05 9.16839e-10 2.96364e-05 5.09974e-05 1.24833e-09 1.08774e-05 6.10769e-05 1.46784e-09 + 1.7415e-05 -8.93699e-05 -3.47577e-09 4.46286e-05 -6.8678e-05 -2.85341e-09 5.94475e-05 -4.69905e-05 -2.02395e-09 6.68349e-05 -2.72053e-05 -1.18837e-09 + 6.98997e-05 -8.89839e-06 -3.9027e-10 6.98997e-05 8.89839e-06 3.9027e-10 6.68349e-05 2.72053e-05 1.18837e-09 5.94475e-05 4.69905e-05 2.02395e-09 + 4.46286e-05 6.8678e-05 2.85341e-09 1.7415e-05 8.93699e-05 3.47577e-09 3.15693e-05 -0.000138359 -8.80204e-09 7.20158e-05 -8.73567e-05 -6.8283e-09 + 8.38997e-05 -5.50195e-05 -4.63579e-09 8.80424e-05 -3.07093e-05 -2.65363e-09 8.9484e-05 -9.902e-06 -8.61837e-10 8.9484e-05 9.902e-06 8.61837e-10 + 8.80424e-05 3.07093e-05 2.65363e-09 8.38997e-05 5.50195e-05 4.63579e-09 7.20158e-05 8.73567e-05 6.8283e-09 3.15693e-05 0.000138359 8.80204e-09 + 1.73124e-06 -1.73124e-06 -1.63455e-11 5.02069e-06 -1.5582e-06 -1.47093e-11 7.81099e-06 -1.2321e-06 -1.16274e-11 9.83133e-06 -7.88234e-07 -7.43609e-12 + 1.08906e-05 -2.71016e-07 -2.55616e-12 1.08906e-05 2.71016e-07 2.55616e-12 9.83133e-06 7.88234e-07 7.43609e-12 7.81099e-06 1.2321e-06 1.16274e-11 + 5.02069e-06 1.5582e-06 1.47093e-11 1.73124e-06 1.73124e-06 1.63455e-11 1.90428e-06 -5.36677e-06 -2.42188e-11 5.51984e-06 -4.82767e-06 -2.17678e-11 + 8.58096e-06 -3.81406e-06 -1.71738e-11 1.07924e-05 -2.43805e-06 -1.09626e-11 1.19498e-05 -8.37861e-07 -3.76408e-12 1.19498e-05 8.37861e-07 3.76408e-12 + 1.07924e-05 2.43805e-06 1.09626e-11 8.58096e-06 3.81406e-06 1.71738e-11 5.51984e-06 4.82767e-06 2.17678e-11 1.90428e-06 5.36677e-06 2.42188e-11 + 2.27034e-06 -9.5414e-06 -4.37697e-11 6.57341e-06 -8.57166e-06 -3.92633e-11 1.02006e-05 -6.75841e-06 -3.0882e-11 1.28075e-05 -4.31206e-06 -1.96544e-11 + 1.41665e-05 -1.48024e-06 -6.7364e-12 1.41665e-05 1.48024e-06 6.7364e-12 1.28075e-05 4.31206e-06 1.96544e-11 1.02006e-05 6.75841e-06 3.0882e-11 + 6.57341e-06 8.57166e-06 3.92633e-11 2.27034e-06 9.5414e-06 4.37697e-11 2.87403e-06 -1.46858e-05 -8.44378e-11 8.30283e-06 -1.31591e-05 -7.55391e-11 + 1.28406e-05 -1.03359e-05 -5.9165e-11 1.60706e-05 -6.57152e-06 -3.75039e-11 1.77421e-05 -2.25127e-06 -1.28234e-11 1.77421e-05 2.25127e-06 1.28234e-11 + 1.60706e-05 6.57152e-06 3.75039e-11 1.28406e-05 1.03359e-05 5.9165e-11 8.30283e-06 1.31591e-05 7.55391e-11 2.87403e-06 1.46858e-05 8.44378e-11 + 3.79697e-06 -2.13568e-05 -1.65768e-10 1.09233e-05 -1.90433e-05 -1.47731e-10 1.67882e-05 -1.48545e-05 -1.15036e-10 2.08921e-05 -9.38688e-06 -7.25229e-11 + 2.29893e-05 -3.2046e-06 -2.47174e-11 2.29893e-05 3.2046e-06 2.47174e-11 2.08921e-05 9.38688e-06 7.25229e-11 1.67882e-05 1.48545e-05 1.15036e-10 + 1.09233e-05 1.90433e-05 1.47731e-10 3.79697e-06 2.13568e-05 1.65768e-10 5.18754e-06 -3.03413e-05 -3.26223e-10 1.48052e-05 -2.68027e-05 -2.89155e-10 + 2.2497e-05 -2.06518e-05 -2.23352e-10 2.77204e-05 -1.29169e-05 -1.39771e-10 3.03336e-05 -4.38487e-06 -4.74327e-11 3.03336e-05 4.38487e-06 4.74327e-11 + 2.77204e-05 1.29169e-05 1.39771e-10 2.2497e-05 2.06518e-05 2.23352e-10 1.48052e-05 2.68027e-05 2.89155e-10 5.18754e-06 3.03413e-05 3.26223e-10 + 7.33558e-06 -4.28646e-05 -6.38173e-10 2.06129e-05 -3.71746e-05 -5.61448e-10 3.06741e-05 -2.80331e-05 -4.28975e-10 3.7159e-05 -1.72442e-05 -2.65845e-10 + 4.02911e-05 -5.80284e-06 -8.9717e-11 4.02911e-05 5.80284e-06 8.9717e-11 3.7159e-05 1.72442e-05 2.65845e-10 3.06741e-05 2.80331e-05 4.28975e-10 + 2.06129e-05 3.71746e-05 5.61448e-10 7.33558e-06 4.28646e-05 6.38173e-10 1.08775e-05 -6.1078e-05 -1.22397e-09 2.96367e-05 -5.09983e-05 -1.06674e-09 + 4.24274e-05 -3.70617e-05 -8.0379e-10 4.99506e-05 -2.22242e-05 -4.92107e-10 5.33807e-05 -7.38511e-06 -1.64952e-10 5.33807e-05 7.38511e-06 1.64952e-10 + 4.99506e-05 2.22242e-05 4.92107e-10 4.24274e-05 3.70617e-05 8.0379e-10 2.96367e-05 5.09983e-05 1.06674e-09 1.08775e-05 6.1078e-05 1.22397e-09 + 1.74152e-05 -8.93716e-05 -2.21984e-09 4.46291e-05 -6.86794e-05 -1.91926e-09 5.94482e-05 -4.69916e-05 -1.42414e-09 6.68356e-05 -2.72059e-05 -8.60087e-10 + 6.99004e-05 -8.89859e-06 -2.86145e-10 6.99004e-05 8.89859e-06 2.86145e-10 6.68356e-05 2.72059e-05 8.60087e-10 5.94482e-05 4.69916e-05 1.42414e-09 + 4.46291e-05 6.86794e-05 1.91926e-09 1.74152e-05 8.93716e-05 2.21984e-09 3.15696e-05 -0.000138359 -3.37083e-09 7.20167e-05 -8.73572e-05 -2.9633e-09 + 8.39009e-05 -5.502e-05 -2.18092e-09 8.80436e-05 -3.07095e-05 -1.30239e-09 8.94851e-05 -9.90209e-06 -4.30496e-10 8.94851e-05 9.90209e-06 4.30496e-10 + 8.80436e-05 3.07095e-05 1.30239e-09 8.39009e-05 5.502e-05 2.18092e-09 7.20167e-05 8.73572e-05 2.9633e-09 3.15696e-05 0.000138359 3.37083e-09 + 1.73124e-06 -1.73125e-06 -1.30822e-11 5.02069e-06 -1.55821e-06 -1.17743e-11 7.811e-06 -1.2321e-06 -9.30936e-12 9.83133e-06 -7.88235e-07 -5.9549e-12 + 1.08906e-05 -2.71016e-07 -2.04726e-12 1.08906e-05 2.71016e-07 2.04726e-12 9.83133e-06 7.88235e-07 5.9549e-12 7.811e-06 1.2321e-06 9.30936e-12 + 5.02069e-06 1.55821e-06 1.17743e-11 1.73124e-06 1.73125e-06 1.30822e-11 1.90429e-06 -5.36679e-06 -1.92445e-11 5.51984e-06 -4.82769e-06 -1.7302e-11 + 8.58097e-06 -3.81407e-06 -1.36567e-11 1.07924e-05 -2.43806e-06 -8.72119e-12 1.19498e-05 -8.37863e-07 -2.99524e-12 1.19498e-05 8.37863e-07 2.99524e-12 + 1.07924e-05 2.43806e-06 8.72119e-12 8.58097e-06 3.81407e-06 1.36567e-11 5.51984e-06 4.82769e-06 1.7302e-11 1.90429e-06 5.36679e-06 1.92445e-11 + 2.27035e-06 -9.54143e-06 -3.4347e-11 6.57341e-06 -8.57169e-06 -3.08296e-11 1.02006e-05 -6.75843e-06 -2.42708e-11 1.28075e-05 -4.31207e-06 -1.54599e-11 + 1.41665e-05 -1.48024e-06 -5.3014e-12 1.41665e-05 1.48024e-06 5.3014e-12 1.28075e-05 4.31207e-06 1.54599e-11 1.02006e-05 6.75843e-06 2.42708e-11 + 6.57341e-06 8.57169e-06 3.08296e-11 2.27035e-06 9.54143e-06 3.4347e-11 2.87403e-06 -1.46858e-05 -6.50062e-11 8.30284e-06 -1.31592e-05 -5.82248e-11 + 1.28406e-05 -1.03359e-05 -4.56837e-11 1.60706e-05 -6.57155e-06 -2.90042e-11 1.77421e-05 -2.25128e-06 -9.92623e-12 1.77421e-05 2.25128e-06 9.92623e-12 + 1.60706e-05 6.57155e-06 2.90042e-11 1.28406e-05 1.03359e-05 4.56837e-11 8.30284e-06 1.31592e-05 5.82248e-11 2.87403e-06 1.46858e-05 6.50062e-11 + 3.79698e-06 -2.13569e-05 -1.23899e-10 1.09233e-05 -1.90434e-05 -1.1067e-10 1.67883e-05 -1.48545e-05 -8.64581e-11 2.08922e-05 -9.38692e-06 -5.46623e-11 + 2.29893e-05 -3.20462e-06 -1.86602e-11 2.29893e-05 3.20462e-06 1.86602e-11 2.08922e-05 9.38692e-06 5.46623e-11 1.67883e-05 1.48545e-05 8.64581e-11 + 1.09233e-05 1.90434e-05 1.1067e-10 3.79698e-06 2.13569e-05 1.23899e-10 5.18756e-06 -3.03415e-05 -2.3283e-10 1.48052e-05 -2.68029e-05 -2.07268e-10 + 2.2497e-05 -2.06519e-05 -1.61047e-10 2.77205e-05 -1.2917e-05 -1.01287e-10 3.03337e-05 -4.3849e-06 -3.44681e-11 3.03337e-05 4.3849e-06 3.44681e-11 + 2.77205e-05 1.2917e-05 1.01287e-10 2.2497e-05 2.06519e-05 1.61047e-10 1.48052e-05 2.68029e-05 2.07268e-10 5.18756e-06 3.03415e-05 2.3283e-10 + 7.33561e-06 -4.28649e-05 -4.23889e-10 2.06129e-05 -3.71749e-05 -3.75975e-10 3.06742e-05 -2.80333e-05 -2.90295e-10 3.71592e-05 -1.72444e-05 -1.81439e-10 + 4.02913e-05 -5.80289e-06 -6.15121e-11 4.02913e-05 5.80289e-06 6.15121e-11 3.71592e-05 1.72444e-05 1.81439e-10 3.06742e-05 2.80333e-05 2.90295e-10 + 2.06129e-05 3.71749e-05 3.75975e-10 7.33561e-06 4.28649e-05 4.23889e-10 1.08775e-05 -6.10785e-05 -7.27235e-10 2.96368e-05 -5.09988e-05 -6.4363e-10 + 4.24276e-05 -3.7062e-05 -4.93943e-10 4.99509e-05 -2.22244e-05 -3.06668e-10 5.3381e-05 -7.38518e-06 -1.0354e-10 5.3381e-05 7.38518e-06 1.0354e-10 + 4.99509e-05 2.22244e-05 3.06668e-10 4.24276e-05 3.7062e-05 4.93943e-10 2.96368e-05 5.09988e-05 6.4363e-10 1.08775e-05 6.10785e-05 7.27235e-10 + 1.74153e-05 -8.9372e-05 -1.10939e-09 4.46294e-05 -6.86799e-05 -9.88151e-10 5.94485e-05 -4.69919e-05 -7.56827e-10 6.68361e-05 -2.72061e-05 -4.67374e-10 + 6.99008e-05 -8.89866e-06 -1.57207e-10 6.99008e-05 8.89866e-06 1.57207e-10 6.68361e-05 2.72061e-05 4.67374e-10 5.94485e-05 4.69919e-05 7.56827e-10 + 4.46294e-05 6.86799e-05 9.88151e-10 1.74153e-05 8.9372e-05 1.10939e-09 3.15697e-05 -0.000138358 -1.2821e-09 7.2017e-05 -8.73571e-05 -1.20233e-09 + 8.39014e-05 -5.50199e-05 -9.35889e-10 8.80442e-05 -3.07095e-05 -5.78793e-10 8.94857e-05 -9.90208e-06 -1.94436e-10 8.94857e-05 9.90208e-06 1.94436e-10 + 8.80442e-05 3.07095e-05 5.78793e-10 8.39014e-05 5.50199e-05 9.35889e-10 7.2017e-05 8.73571e-05 1.20233e-09 3.15697e-05 0.000138358 1.2821e-09 + 1.73125e-06 -1.73125e-06 -4.96463e-12 5.0207e-06 -1.55821e-06 -4.46864e-12 7.811e-06 -1.2321e-06 -3.53358e-12 9.83133e-06 -7.88236e-07 -2.26059e-12 + 1.08906e-05 -2.71017e-07 -7.77234e-13 1.08906e-05 2.71017e-07 7.77234e-13 9.83133e-06 7.88236e-07 2.26059e-12 7.811e-06 1.2321e-06 3.53358e-12 + 5.0207e-06 1.55821e-06 4.46864e-12 1.73125e-06 1.73125e-06 4.96463e-12 1.90429e-06 -5.36679e-06 -7.27226e-12 5.51984e-06 -4.82769e-06 -6.53933e-12 + 8.58097e-06 -3.81407e-06 -5.16289e-12 1.07924e-05 -2.43806e-06 -3.29784e-12 1.19498e-05 -8.37865e-07 -1.13279e-12 1.19498e-05 8.37865e-07 1.13279e-12 + 1.07924e-05 2.43806e-06 3.29784e-12 8.58097e-06 3.81407e-06 5.16289e-12 5.51984e-06 4.82769e-06 6.53933e-12 1.90429e-06 5.36679e-06 7.27226e-12 + 2.27035e-06 -9.54145e-06 -1.28852e-11 6.57342e-06 -8.5717e-06 -1.15695e-11 1.02006e-05 -6.75845e-06 -9.11283e-12 1.28075e-05 -4.31208e-06 -5.80743e-12 + 1.41665e-05 -1.48024e-06 -1.992e-12 1.41665e-05 1.48024e-06 1.992e-12 1.28075e-05 4.31208e-06 5.80743e-12 1.02006e-05 6.75845e-06 9.11283e-12 + 6.57342e-06 8.5717e-06 1.15695e-11 2.27035e-06 9.54145e-06 1.28852e-11 2.87404e-06 -1.46859e-05 -2.41222e-11 8.30285e-06 -1.31592e-05 -2.16196e-11 + 1.28406e-05 -1.03359e-05 -1.69792e-11 1.60706e-05 -6.57156e-06 -1.07894e-11 1.77422e-05 -2.25129e-06 -3.69439e-12 1.77422e-05 2.25129e-06 3.69439e-12 + 1.60706e-05 6.57156e-06 1.07894e-11 1.28406e-05 1.03359e-05 1.69792e-11 8.30285e-06 1.31592e-05 2.16196e-11 2.87404e-06 1.46859e-05 2.41222e-11 + 3.79699e-06 -2.1357e-05 -4.5222e-11 1.09233e-05 -1.90434e-05 -4.04419e-11 1.67883e-05 -1.48546e-05 -3.16488e-11 2.08922e-05 -9.38695e-06 -2.00408e-11 + 2.29894e-05 -3.20463e-06 -6.84744e-12 2.29894e-05 3.20463e-06 6.84744e-12 2.08922e-05 9.38695e-06 2.00408e-11 1.67883e-05 1.48546e-05 3.16488e-11 + 1.09233e-05 1.90434e-05 4.04419e-11 3.79699e-06 2.1357e-05 4.5222e-11 5.18757e-06 -3.03416e-05 -8.28691e-11 1.48052e-05 -2.6803e-05 -7.39321e-11 + 2.24971e-05 -2.0652e-05 -5.76219e-11 2.77206e-05 -1.29171e-05 -3.63374e-11 3.03337e-05 -4.38492e-06 -1.23842e-11 3.03337e-05 4.38492e-06 1.23842e-11 + 2.77206e-05 1.29171e-05 3.63374e-11 2.24971e-05 2.0652e-05 5.76219e-11 1.48052e-05 2.6803e-05 7.39321e-11 5.18757e-06 3.03416e-05 8.28691e-11 + 7.33562e-06 -4.28651e-05 -1.45231e-10 2.0613e-05 -3.71751e-05 -1.29324e-10 3.06742e-05 -2.80334e-05 -1.00388e-10 3.71593e-05 -1.72444e-05 -6.30273e-11 + 4.02913e-05 -5.80291e-06 -2.14205e-11 4.02913e-05 5.80291e-06 2.14205e-11 3.71593e-05 1.72444e-05 6.30273e-11 3.06742e-05 2.80334e-05 1.00388e-10 + 2.0613e-05 3.71751e-05 1.29324e-10 7.33562e-06 4.28651e-05 1.45231e-10 1.08776e-05 -6.10786e-05 -2.35302e-10 2.96369e-05 -5.09989e-05 -2.09739e-10 + 4.24277e-05 -3.70622e-05 -1.62449e-10 4.9951e-05 -2.22245e-05 -1.01606e-10 5.33811e-05 -7.38521e-06 -3.44404e-11 5.33811e-05 7.38521e-06 3.44404e-11 + 4.9951e-05 2.22245e-05 1.01606e-10 4.24277e-05 3.70622e-05 1.62449e-10 2.96369e-05 5.09989e-05 2.09739e-10 1.08776e-05 6.10786e-05 2.35302e-10 + 1.74154e-05 -8.93721e-05 -3.2961e-10 4.46295e-05 -6.868e-05 -2.97467e-10 5.94487e-05 -4.6992e-05 -2.31465e-10 6.68362e-05 -2.72061e-05 -1.44659e-10 + 6.9901e-05 -8.89868e-06 -4.89568e-11 6.9901e-05 8.89868e-06 4.89568e-11 6.68362e-05 2.72061e-05 1.44659e-10 5.94487e-05 4.6992e-05 2.31465e-10 + 4.46295e-05 6.868e-05 2.97467e-10 1.74154e-05 8.93721e-05 3.2961e-10 3.15697e-05 -0.000138358 -3.35505e-10 7.2017e-05 -8.7357e-05 -3.23303e-10 + 8.39015e-05 -5.50198e-05 -2.58851e-10 8.80444e-05 -3.07095e-05 -1.63212e-10 8.94859e-05 -9.90207e-06 -5.53472e-11 8.94859e-05 9.90207e-06 5.53472e-11 + 8.80444e-05 3.07095e-05 1.63212e-10 8.39015e-05 5.50198e-05 2.58851e-10 7.2017e-05 8.7357e-05 3.23303e-10 3.15697e-05 0.000138358 3.35505e-10 + 1.73125e-06 -1.73125e-06 4.96463e-12 5.0207e-06 -1.55821e-06 4.46864e-12 7.811e-06 -1.2321e-06 3.53358e-12 9.83133e-06 -7.88236e-07 2.26059e-12 + 1.08906e-05 -2.71017e-07 7.77234e-13 1.08906e-05 2.71017e-07 -7.77234e-13 9.83133e-06 7.88236e-07 -2.26059e-12 7.811e-06 1.2321e-06 -3.53358e-12 + 5.0207e-06 1.55821e-06 -4.46864e-12 1.73125e-06 1.73125e-06 -4.96463e-12 1.90429e-06 -5.36679e-06 7.27226e-12 5.51984e-06 -4.82769e-06 6.53933e-12 + 8.58097e-06 -3.81407e-06 5.16289e-12 1.07924e-05 -2.43806e-06 3.29784e-12 1.19498e-05 -8.37865e-07 1.13279e-12 1.19498e-05 8.37865e-07 -1.13279e-12 + 1.07924e-05 2.43806e-06 -3.29784e-12 8.58097e-06 3.81407e-06 -5.16289e-12 5.51984e-06 4.82769e-06 -6.53933e-12 1.90429e-06 5.36679e-06 -7.27226e-12 + 2.27035e-06 -9.54145e-06 1.28852e-11 6.57342e-06 -8.5717e-06 1.15695e-11 1.02006e-05 -6.75845e-06 9.11283e-12 1.28075e-05 -4.31208e-06 5.80743e-12 + 1.41665e-05 -1.48024e-06 1.992e-12 1.41665e-05 1.48024e-06 -1.992e-12 1.28075e-05 4.31208e-06 -5.80743e-12 1.02006e-05 6.75845e-06 -9.11283e-12 + 6.57342e-06 8.5717e-06 -1.15695e-11 2.27035e-06 9.54145e-06 -1.28852e-11 2.87404e-06 -1.46859e-05 2.41222e-11 8.30285e-06 -1.31592e-05 2.16196e-11 + 1.28406e-05 -1.03359e-05 1.69792e-11 1.60706e-05 -6.57156e-06 1.07894e-11 1.77422e-05 -2.25129e-06 3.69439e-12 1.77422e-05 2.25129e-06 -3.69439e-12 + 1.60706e-05 6.57156e-06 -1.07894e-11 1.28406e-05 1.03359e-05 -1.69792e-11 8.30285e-06 1.31592e-05 -2.16196e-11 2.87404e-06 1.46859e-05 -2.41222e-11 + 3.79699e-06 -2.1357e-05 4.5222e-11 1.09233e-05 -1.90434e-05 4.04419e-11 1.67883e-05 -1.48546e-05 3.16488e-11 2.08922e-05 -9.38695e-06 2.00408e-11 + 2.29894e-05 -3.20463e-06 6.84744e-12 2.29894e-05 3.20463e-06 -6.84744e-12 2.08922e-05 9.38695e-06 -2.00408e-11 1.67883e-05 1.48546e-05 -3.16488e-11 + 1.09233e-05 1.90434e-05 -4.04419e-11 3.79699e-06 2.1357e-05 -4.5222e-11 5.18757e-06 -3.03416e-05 8.28691e-11 1.48052e-05 -2.6803e-05 7.39321e-11 + 2.24971e-05 -2.0652e-05 5.76219e-11 2.77206e-05 -1.29171e-05 3.63374e-11 3.03337e-05 -4.38492e-06 1.23842e-11 3.03337e-05 4.38492e-06 -1.23842e-11 + 2.77206e-05 1.29171e-05 -3.63374e-11 2.24971e-05 2.0652e-05 -5.76219e-11 1.48052e-05 2.6803e-05 -7.39321e-11 5.18757e-06 3.03416e-05 -8.28691e-11 + 7.33562e-06 -4.28651e-05 1.45231e-10 2.0613e-05 -3.71751e-05 1.29324e-10 3.06742e-05 -2.80334e-05 1.00388e-10 3.71593e-05 -1.72444e-05 6.30273e-11 + 4.02913e-05 -5.80291e-06 2.14205e-11 4.02913e-05 5.80291e-06 -2.14205e-11 3.71593e-05 1.72444e-05 -6.30273e-11 3.06742e-05 2.80334e-05 -1.00388e-10 + 2.0613e-05 3.71751e-05 -1.29324e-10 7.33562e-06 4.28651e-05 -1.45231e-10 1.08776e-05 -6.10786e-05 2.35302e-10 2.96369e-05 -5.09989e-05 2.09739e-10 + 4.24277e-05 -3.70622e-05 1.62449e-10 4.9951e-05 -2.22245e-05 1.01606e-10 5.33811e-05 -7.38521e-06 3.44404e-11 5.33811e-05 7.38521e-06 -3.44404e-11 + 4.9951e-05 2.22245e-05 -1.01606e-10 4.24277e-05 3.70622e-05 -1.62449e-10 2.96369e-05 5.09989e-05 -2.09739e-10 1.08776e-05 6.10786e-05 -2.35302e-10 + 1.74154e-05 -8.93721e-05 3.2961e-10 4.46295e-05 -6.868e-05 2.97467e-10 5.94487e-05 -4.6992e-05 2.31465e-10 6.68362e-05 -2.72061e-05 1.44659e-10 + 6.9901e-05 -8.89868e-06 4.89568e-11 6.9901e-05 8.89868e-06 -4.89568e-11 6.68362e-05 2.72061e-05 -1.44659e-10 5.94487e-05 4.6992e-05 -2.31465e-10 + 4.46295e-05 6.868e-05 -2.97467e-10 1.74154e-05 8.93721e-05 -3.2961e-10 3.15697e-05 -0.000138358 3.35505e-10 7.2017e-05 -8.7357e-05 3.23303e-10 + 8.39015e-05 -5.50198e-05 2.58851e-10 8.80444e-05 -3.07095e-05 1.63212e-10 8.94859e-05 -9.90207e-06 5.53472e-11 8.94859e-05 9.90207e-06 -5.53472e-11 + 8.80444e-05 3.07095e-05 -1.63212e-10 8.39015e-05 5.50198e-05 -2.58851e-10 7.2017e-05 8.7357e-05 -3.23303e-10 3.15697e-05 0.000138358 -3.35505e-10 + 1.73124e-06 -1.73125e-06 1.30822e-11 5.02069e-06 -1.55821e-06 1.17743e-11 7.811e-06 -1.2321e-06 9.30936e-12 9.83133e-06 -7.88235e-07 5.9549e-12 + 1.08906e-05 -2.71016e-07 2.04726e-12 1.08906e-05 2.71016e-07 -2.04726e-12 9.83133e-06 7.88235e-07 -5.9549e-12 7.811e-06 1.2321e-06 -9.30936e-12 + 5.02069e-06 1.55821e-06 -1.17743e-11 1.73124e-06 1.73125e-06 -1.30822e-11 1.90429e-06 -5.36679e-06 1.92445e-11 5.51984e-06 -4.82769e-06 1.7302e-11 + 8.58097e-06 -3.81407e-06 1.36567e-11 1.07924e-05 -2.43806e-06 8.72119e-12 1.19498e-05 -8.37863e-07 2.99524e-12 1.19498e-05 8.37863e-07 -2.99524e-12 + 1.07924e-05 2.43806e-06 -8.72119e-12 8.58097e-06 3.81407e-06 -1.36567e-11 5.51984e-06 4.82769e-06 -1.7302e-11 1.90429e-06 5.36679e-06 -1.92445e-11 + 2.27035e-06 -9.54143e-06 3.4347e-11 6.57341e-06 -8.57169e-06 3.08296e-11 1.02006e-05 -6.75843e-06 2.42708e-11 1.28075e-05 -4.31207e-06 1.54599e-11 + 1.41665e-05 -1.48024e-06 5.3014e-12 1.41665e-05 1.48024e-06 -5.3014e-12 1.28075e-05 4.31207e-06 -1.54599e-11 1.02006e-05 6.75843e-06 -2.42708e-11 + 6.57341e-06 8.57169e-06 -3.08296e-11 2.27035e-06 9.54143e-06 -3.4347e-11 2.87403e-06 -1.46858e-05 6.50062e-11 8.30284e-06 -1.31592e-05 5.82248e-11 + 1.28406e-05 -1.03359e-05 4.56837e-11 1.60706e-05 -6.57155e-06 2.90042e-11 1.77421e-05 -2.25128e-06 9.92623e-12 1.77421e-05 2.25128e-06 -9.92623e-12 + 1.60706e-05 6.57155e-06 -2.90042e-11 1.28406e-05 1.03359e-05 -4.56837e-11 8.30284e-06 1.31592e-05 -5.82248e-11 2.87403e-06 1.46858e-05 -6.50062e-11 + 3.79698e-06 -2.13569e-05 1.23899e-10 1.09233e-05 -1.90434e-05 1.1067e-10 1.67883e-05 -1.48545e-05 8.64581e-11 2.08922e-05 -9.38692e-06 5.46623e-11 + 2.29893e-05 -3.20462e-06 1.86602e-11 2.29893e-05 3.20462e-06 -1.86602e-11 2.08922e-05 9.38692e-06 -5.46623e-11 1.67883e-05 1.48545e-05 -8.64581e-11 + 1.09233e-05 1.90434e-05 -1.1067e-10 3.79698e-06 2.13569e-05 -1.23899e-10 5.18756e-06 -3.03415e-05 2.3283e-10 1.48052e-05 -2.68029e-05 2.07268e-10 + 2.2497e-05 -2.06519e-05 1.61047e-10 2.77205e-05 -1.2917e-05 1.01287e-10 3.03337e-05 -4.3849e-06 3.44681e-11 3.03337e-05 4.3849e-06 -3.44681e-11 + 2.77205e-05 1.2917e-05 -1.01287e-10 2.2497e-05 2.06519e-05 -1.61047e-10 1.48052e-05 2.68029e-05 -2.07268e-10 5.18756e-06 3.03415e-05 -2.3283e-10 + 7.33561e-06 -4.28649e-05 4.23889e-10 2.06129e-05 -3.71749e-05 3.75975e-10 3.06742e-05 -2.80333e-05 2.90295e-10 3.71592e-05 -1.72444e-05 1.81439e-10 + 4.02913e-05 -5.80289e-06 6.15121e-11 4.02913e-05 5.80289e-06 -6.15121e-11 3.71592e-05 1.72444e-05 -1.81439e-10 3.06742e-05 2.80333e-05 -2.90295e-10 + 2.06129e-05 3.71749e-05 -3.75975e-10 7.33561e-06 4.28649e-05 -4.23889e-10 1.08775e-05 -6.10785e-05 7.27235e-10 2.96368e-05 -5.09988e-05 6.4363e-10 + 4.24276e-05 -3.7062e-05 4.93943e-10 4.99509e-05 -2.22244e-05 3.06668e-10 5.3381e-05 -7.38518e-06 1.0354e-10 5.3381e-05 7.38518e-06 -1.0354e-10 + 4.99509e-05 2.22244e-05 -3.06668e-10 4.24276e-05 3.7062e-05 -4.93943e-10 2.96368e-05 5.09988e-05 -6.4363e-10 1.08775e-05 6.10785e-05 -7.27235e-10 + 1.74153e-05 -8.9372e-05 1.10939e-09 4.46294e-05 -6.86799e-05 9.88151e-10 5.94485e-05 -4.69919e-05 7.56827e-10 6.68361e-05 -2.72061e-05 4.67374e-10 + 6.99008e-05 -8.89866e-06 1.57207e-10 6.99008e-05 8.89866e-06 -1.57207e-10 6.68361e-05 2.72061e-05 -4.67374e-10 5.94485e-05 4.69919e-05 -7.56827e-10 + 4.46294e-05 6.86799e-05 -9.88151e-10 1.74153e-05 8.9372e-05 -1.10939e-09 3.15697e-05 -0.000138358 1.2821e-09 7.2017e-05 -8.73571e-05 1.20233e-09 + 8.39014e-05 -5.50199e-05 9.35889e-10 8.80442e-05 -3.07095e-05 5.78793e-10 8.94857e-05 -9.90208e-06 1.94436e-10 8.94857e-05 9.90208e-06 -1.94436e-10 + 8.80442e-05 3.07095e-05 -5.78793e-10 8.39014e-05 5.50199e-05 -9.35889e-10 7.2017e-05 8.73571e-05 -1.20233e-09 3.15697e-05 0.000138358 -1.2821e-09 + 1.73124e-06 -1.73124e-06 1.63455e-11 5.02069e-06 -1.5582e-06 1.47093e-11 7.81099e-06 -1.2321e-06 1.16274e-11 9.83133e-06 -7.88234e-07 7.43609e-12 + 1.08906e-05 -2.71016e-07 2.55616e-12 1.08906e-05 2.71016e-07 -2.55616e-12 9.83133e-06 7.88234e-07 -7.43609e-12 7.81099e-06 1.2321e-06 -1.16274e-11 + 5.02069e-06 1.5582e-06 -1.47093e-11 1.73124e-06 1.73124e-06 -1.63455e-11 1.90428e-06 -5.36677e-06 2.42188e-11 5.51984e-06 -4.82767e-06 2.17678e-11 + 8.58096e-06 -3.81406e-06 1.71738e-11 1.07924e-05 -2.43805e-06 1.09626e-11 1.19498e-05 -8.37861e-07 3.76408e-12 1.19498e-05 8.37861e-07 -3.76408e-12 + 1.07924e-05 2.43805e-06 -1.09626e-11 8.58096e-06 3.81406e-06 -1.71738e-11 5.51984e-06 4.82767e-06 -2.17678e-11 1.90428e-06 5.36677e-06 -2.42188e-11 + 2.27034e-06 -9.5414e-06 4.37697e-11 6.57341e-06 -8.57166e-06 3.92633e-11 1.02006e-05 -6.75841e-06 3.0882e-11 1.28075e-05 -4.31206e-06 1.96544e-11 + 1.41665e-05 -1.48024e-06 6.7364e-12 1.41665e-05 1.48024e-06 -6.7364e-12 1.28075e-05 4.31206e-06 -1.96544e-11 1.02006e-05 6.75841e-06 -3.0882e-11 + 6.57341e-06 8.57166e-06 -3.92633e-11 2.27034e-06 9.5414e-06 -4.37697e-11 2.87403e-06 -1.46858e-05 8.44378e-11 8.30283e-06 -1.31591e-05 7.55391e-11 + 1.28406e-05 -1.03359e-05 5.9165e-11 1.60706e-05 -6.57152e-06 3.75039e-11 1.77421e-05 -2.25127e-06 1.28234e-11 1.77421e-05 2.25127e-06 -1.28234e-11 + 1.60706e-05 6.57152e-06 -3.75039e-11 1.28406e-05 1.03359e-05 -5.9165e-11 8.30283e-06 1.31591e-05 -7.55391e-11 2.87403e-06 1.46858e-05 -8.44378e-11 + 3.79697e-06 -2.13568e-05 1.65768e-10 1.09233e-05 -1.90433e-05 1.47731e-10 1.67882e-05 -1.48545e-05 1.15036e-10 2.08921e-05 -9.38688e-06 7.25229e-11 + 2.29893e-05 -3.2046e-06 2.47174e-11 2.29893e-05 3.2046e-06 -2.47174e-11 2.08921e-05 9.38688e-06 -7.25229e-11 1.67882e-05 1.48545e-05 -1.15036e-10 + 1.09233e-05 1.90433e-05 -1.47731e-10 3.79697e-06 2.13568e-05 -1.65768e-10 5.18754e-06 -3.03413e-05 3.26223e-10 1.48052e-05 -2.68027e-05 2.89155e-10 + 2.2497e-05 -2.06518e-05 2.23352e-10 2.77204e-05 -1.29169e-05 1.39771e-10 3.03336e-05 -4.38487e-06 4.74327e-11 3.03336e-05 4.38487e-06 -4.74327e-11 + 2.77204e-05 1.29169e-05 -1.39771e-10 2.2497e-05 2.06518e-05 -2.23352e-10 1.48052e-05 2.68027e-05 -2.89155e-10 5.18754e-06 3.03413e-05 -3.26223e-10 + 7.33558e-06 -4.28646e-05 6.38173e-10 2.06129e-05 -3.71746e-05 5.61448e-10 3.06741e-05 -2.80331e-05 4.28975e-10 3.7159e-05 -1.72442e-05 2.65845e-10 + 4.02911e-05 -5.80284e-06 8.9717e-11 4.02911e-05 5.80284e-06 -8.9717e-11 3.7159e-05 1.72442e-05 -2.65845e-10 3.06741e-05 2.80331e-05 -4.28975e-10 + 2.06129e-05 3.71746e-05 -5.61448e-10 7.33558e-06 4.28646e-05 -6.38173e-10 1.08775e-05 -6.1078e-05 1.22397e-09 2.96367e-05 -5.09983e-05 1.06674e-09 + 4.24274e-05 -3.70617e-05 8.0379e-10 4.99506e-05 -2.22242e-05 4.92107e-10 5.33807e-05 -7.38511e-06 1.64952e-10 5.33807e-05 7.38511e-06 -1.64952e-10 + 4.99506e-05 2.22242e-05 -4.92107e-10 4.24274e-05 3.70617e-05 -8.0379e-10 2.96367e-05 5.09983e-05 -1.06674e-09 1.08775e-05 6.1078e-05 -1.22397e-09 + 1.74152e-05 -8.93716e-05 2.21984e-09 4.46291e-05 -6.86794e-05 1.91926e-09 5.94482e-05 -4.69916e-05 1.42414e-09 6.68356e-05 -2.72059e-05 8.60087e-10 + 6.99004e-05 -8.89859e-06 2.86145e-10 6.99004e-05 8.89859e-06 -2.86145e-10 6.68356e-05 2.72059e-05 -8.60087e-10 5.94482e-05 4.69916e-05 -1.42414e-09 + 4.46291e-05 6.86794e-05 -1.91926e-09 1.74152e-05 8.93716e-05 -2.21984e-09 3.15696e-05 -0.000138359 3.37083e-09 7.20167e-05 -8.73572e-05 2.9633e-09 + 8.39009e-05 -5.502e-05 2.18092e-09 8.80436e-05 -3.07095e-05 1.30239e-09 8.94851e-05 -9.90209e-06 4.30496e-10 8.94851e-05 9.90209e-06 -4.30496e-10 + 8.80436e-05 3.07095e-05 -1.30239e-09 8.39009e-05 5.502e-05 -2.18092e-09 7.20167e-05 8.73572e-05 -2.9633e-09 3.15696e-05 0.000138359 -3.37083e-09 + 1.73124e-06 -1.73124e-06 1.33718e-11 5.02069e-06 -1.5582e-06 1.20313e-11 7.81099e-06 -1.2321e-06 9.50825e-12 9.83132e-06 -7.88232e-07 6.07948e-12 + 1.08906e-05 -2.71015e-07 2.08954e-12 1.08906e-05 2.71015e-07 -2.08954e-12 9.83132e-06 7.88232e-07 -6.07948e-12 7.81099e-06 1.2321e-06 -9.50825e-12 + 5.02069e-06 1.5582e-06 -1.20313e-11 1.73124e-06 1.73124e-06 -1.33718e-11 1.90428e-06 -5.36676e-06 1.99663e-11 5.51983e-06 -4.82766e-06 1.79397e-11 + 8.58096e-06 -3.81405e-06 1.41464e-11 1.07924e-05 -2.43805e-06 9.02581e-12 1.19498e-05 -8.37859e-07 3.09822e-12 1.19498e-05 8.37859e-07 -3.09822e-12 + 1.07924e-05 2.43805e-06 -9.02581e-12 8.58096e-06 3.81405e-06 -1.41464e-11 5.51983e-06 4.82766e-06 -1.79397e-11 1.90428e-06 5.36676e-06 -1.99663e-11 + 2.27034e-06 -9.54137e-06 3.65816e-11 6.5734e-06 -8.57163e-06 3.27918e-11 1.02006e-05 -6.75839e-06 2.57645e-11 1.28075e-05 -4.31204e-06 1.63816e-11 + 1.41665e-05 -1.48023e-06 5.61151e-12 1.41665e-05 1.48023e-06 -5.61151e-12 1.28075e-05 4.31204e-06 -1.63816e-11 1.02006e-05 6.75839e-06 -2.57645e-11 + 6.5734e-06 8.57163e-06 -3.27918e-11 2.27034e-06 9.54137e-06 -3.65816e-11 2.87402e-06 -1.46857e-05 7.21065e-11 8.30281e-06 -1.31591e-05 6.44131e-11 + 1.28405e-05 -1.03358e-05 5.03449e-11 1.60706e-05 -6.57149e-06 3.18536e-11 1.77421e-05 -2.25126e-06 1.08799e-11 1.77421e-05 2.25126e-06 -1.08799e-11 + 1.60706e-05 6.57149e-06 -3.18536e-11 1.28405e-05 1.03358e-05 -5.03449e-11 8.30281e-06 1.31591e-05 -6.44131e-11 2.87402e-06 1.46857e-05 -7.21065e-11 + 3.79696e-06 -2.13567e-05 1.46547e-10 1.09233e-05 -1.90432e-05 1.30217e-10 1.67882e-05 -1.48544e-05 1.00989e-10 2.08921e-05 -9.38682e-06 6.34467e-11 + 2.29892e-05 -3.20459e-06 2.15824e-11 2.29892e-05 3.20459e-06 -2.15824e-11 2.08921e-05 9.38682e-06 -6.34467e-11 1.67882e-05 1.48544e-05 -1.00989e-10 + 1.09233e-05 1.90432e-05 -1.30217e-10 3.79696e-06 2.13567e-05 -1.46547e-10 5.18752e-06 -3.03411e-05 3.05189e-10 1.48051e-05 -2.68025e-05 2.68907e-10 + 2.24969e-05 -2.06516e-05 2.06126e-10 2.77203e-05 -1.29168e-05 1.28187e-10 3.03335e-05 -4.38484e-06 4.33551e-11 3.03335e-05 4.38484e-06 -4.33551e-11 + 2.77203e-05 1.29168e-05 -1.28187e-10 2.24969e-05 2.06516e-05 -2.06126e-10 1.48051e-05 2.68025e-05 -2.68907e-10 5.18752e-06 3.03411e-05 -3.05189e-10 + 7.33553e-06 -4.2864e-05 6.5534e-10 2.06127e-05 -3.71741e-05 5.6967e-10 3.06739e-05 -2.80327e-05 4.2912e-10 3.71589e-05 -1.7244e-05 2.63059e-10 + 4.02909e-05 -5.80277e-06 8.82772e-11 4.02909e-05 5.80277e-06 -8.82772e-11 3.71589e-05 1.7244e-05 -2.63059e-10 3.06739e-05 2.80327e-05 -4.2912e-10 + 2.06127e-05 3.71741e-05 -5.6967e-10 7.33553e-06 4.2864e-05 -6.5534e-10 1.08774e-05 -6.10769e-05 1.46784e-09 2.96364e-05 -5.09974e-05 1.24833e-09 + 4.2427e-05 -3.7061e-05 9.16839e-10 4.99503e-05 -2.22238e-05 5.51298e-10 5.33803e-05 -7.38498e-06 1.83157e-10 5.33803e-05 7.38498e-06 -1.83157e-10 + 4.99503e-05 2.22238e-05 -5.51298e-10 4.2427e-05 3.7061e-05 -9.16839e-10 2.96364e-05 5.09974e-05 -1.24833e-09 1.08774e-05 6.10769e-05 -1.46784e-09 + 1.7415e-05 -8.93699e-05 3.47577e-09 4.46286e-05 -6.8678e-05 2.85341e-09 5.94475e-05 -4.69905e-05 2.02395e-09 6.68349e-05 -2.72053e-05 1.18837e-09 + 6.98997e-05 -8.89839e-06 3.9027e-10 6.98997e-05 8.89839e-06 -3.9027e-10 6.68349e-05 2.72053e-05 -1.18837e-09 5.94475e-05 4.69905e-05 -2.02395e-09 + 4.46286e-05 6.8678e-05 -2.85341e-09 1.7415e-05 8.93699e-05 -3.47577e-09 3.15693e-05 -0.000138359 8.80204e-09 7.20158e-05 -8.73567e-05 6.8283e-09 + 8.38997e-05 -5.50195e-05 4.63579e-09 8.80424e-05 -3.07093e-05 2.65363e-09 8.9484e-05 -9.902e-06 8.61837e-10 8.9484e-05 9.902e-06 -8.61837e-10 + 8.80424e-05 3.07093e-05 -2.65363e-09 8.38997e-05 5.50195e-05 -4.63579e-09 7.20158e-05 8.73567e-05 -6.8283e-09 3.15693e-05 0.000138359 -8.80204e-09 + 1.73124e-06 -1.73124e-06 5.14385e-12 5.02069e-06 -1.5582e-06 4.62775e-12 7.81099e-06 -1.23209e-06 3.65668e-12 9.83132e-06 -7.88231e-07 2.33769e-12 + 1.08906e-05 -2.71015e-07 8.03404e-13 1.08906e-05 2.71015e-07 -8.03404e-13 9.83132e-06 7.88231e-07 -2.33769e-12 7.81099e-06 1.23209e-06 -3.65668e-12 + 5.02069e-06 1.5582e-06 -4.62775e-12 1.73124e-06 1.73124e-06 -5.14385e-12 1.90428e-06 -5.36675e-06 7.71976e-12 5.51983e-06 -4.82765e-06 6.93459e-12 + 8.58096e-06 -3.81404e-06 5.4664e-12 1.07924e-05 -2.43804e-06 3.48659e-12 1.19498e-05 -8.37858e-07 1.19659e-12 1.19498e-05 8.37858e-07 -1.19659e-12 + 1.07924e-05 2.43804e-06 -3.48659e-12 8.58096e-06 3.81404e-06 -5.4664e-12 5.51983e-06 4.82765e-06 -6.93459e-12 1.90428e-06 5.36675e-06 -7.71976e-12 + 2.27034e-06 -9.54135e-06 1.42738e-11 6.57339e-06 -8.57161e-06 1.27885e-11 1.02006e-05 -6.75838e-06 1.00405e-11 1.28075e-05 -4.31203e-06 6.37966e-12 + 1.41665e-05 -1.48023e-06 2.18451e-12 1.41665e-05 1.48023e-06 -2.18451e-12 1.28075e-05 4.31203e-06 -6.37966e-12 1.02006e-05 6.75838e-06 -1.00405e-11 + 6.57339e-06 8.57161e-06 -1.27885e-11 2.27034e-06 9.54135e-06 -1.42738e-11 2.87402e-06 -1.46857e-05 2.85527e-11 8.3028e-06 -1.31591e-05 2.54791e-11 + 1.28405e-05 -1.03358e-05 1.98844e-11 1.60705e-05 -6.57147e-06 1.25645e-11 1.77421e-05 -2.25126e-06 4.28833e-12 1.77421e-05 2.25126e-06 -4.28833e-12 + 1.60705e-05 6.57147e-06 -1.25645e-11 1.28405e-05 1.03358e-05 -1.98844e-11 8.3028e-06 1.31591e-05 -2.54791e-11 2.87402e-06 1.46857e-05 -2.85527e-11 + 3.79696e-06 -2.13566e-05 5.94569e-11 1.09233e-05 -1.90431e-05 5.27148e-11 1.67882e-05 -1.48543e-05 4.07618e-11 2.08921e-05 -9.38678e-06 2.55453e-11 + 2.29892e-05 -3.20457e-06 8.6778e-12 2.29892e-05 3.20457e-06 -8.6778e-12 2.08921e-05 9.38678e-06 -2.55453e-11 1.67882e-05 1.48543e-05 -4.07618e-11 + 1.09233e-05 1.90431e-05 -5.27148e-11 3.79696e-06 2.13566e-05 -5.94569e-11 5.18751e-06 -3.03408e-05 1.28927e-10 1.48051e-05 -2.68023e-05 1.13089e-10 + 2.24968e-05 -2.06515e-05 8.61992e-11 2.77203e-05 -1.29167e-05 5.33663e-11 3.03334e-05 -4.38481e-06 1.80064e-11 3.03334e-05 4.38481e-06 -1.80064e-11 + 2.77203e-05 1.29167e-05 -5.33663e-11 2.24968e-05 2.06515e-05 -8.61992e-11 1.48051e-05 2.68023e-05 -1.13089e-10 5.18751e-06 3.03408e-05 -1.28927e-10 + 7.33549e-06 -4.28634e-05 2.95825e-10 2.06126e-05 -3.71736e-05 2.54874e-10 3.06737e-05 -2.80323e-05 1.90052e-10 3.71587e-05 -1.72438e-05 1.15626e-10 + 4.02907e-05 -5.8027e-06 3.86518e-11 4.02907e-05 5.8027e-06 -3.86518e-11 3.71587e-05 1.72438e-05 -1.15626e-10 3.06737e-05 2.80323e-05 -1.90052e-10 + 2.06126e-05 3.71736e-05 -2.54874e-10 7.33549e-06 4.28634e-05 -2.95825e-10 1.08773e-05 -6.10751e-05 7.35808e-10 2.96361e-05 -5.0996e-05 6.15483e-10 + 4.24267e-05 -3.70601e-05 4.44543e-10 4.99499e-05 -2.22233e-05 2.64253e-10 5.33799e-05 -7.38481e-06 8.73047e-11 5.33799e-05 7.38481e-06 -8.73047e-11 + 4.99499e-05 2.22233e-05 -2.64253e-10 4.24267e-05 3.70601e-05 -4.44543e-10 2.96361e-05 5.0996e-05 -6.15483e-10 1.08773e-05 6.10751e-05 -7.35808e-10 + 1.74146e-05 -8.93642e-05 2.0357e-09 4.46277e-05 -6.86738e-05 1.62483e-09 5.94465e-05 -4.69878e-05 1.12517e-09 6.6834e-05 -2.72038e-05 6.51e-10 + 6.98988e-05 -8.89791e-06 2.12376e-10 6.98988e-05 8.89791e-06 -2.12376e-10 6.6834e-05 2.72038e-05 -6.51e-10 5.94465e-05 4.69878e-05 -1.12517e-09 + 4.46277e-05 6.86738e-05 -1.62483e-09 1.74146e-05 8.93642e-05 -2.0357e-09 3.15677e-05 -0.000138338 6.3778e-09 7.20125e-05 -8.73431e-05 4.74402e-09 + 8.38967e-05 -5.5011e-05 3.1319e-09 8.80399e-05 -3.07046e-05 1.76683e-09 8.94816e-05 -9.90049e-06 5.7043e-10 8.94816e-05 9.90049e-06 -5.7043e-10 + 8.80399e-05 3.07046e-05 -1.76683e-09 8.38967e-05 5.5011e-05 -3.1319e-09 7.20125e-05 8.73431e-05 -4.74402e-09 3.15677e-05 0.000138338 -6.3778e-09 0 0 0 0 0 0 0 0 0 0 0 0 diff --git a/test/reference-solutions/monolithic/ff-pm-3d/ref-ff-pm-3d-stokes_stokes.vtu b/test/reference-solutions/flow-over-cube-3d/test_stokes_first_si_stokes.vtu similarity index 66% rename from test/reference-solutions/monolithic/ff-pm-3d/ref-ff-pm-3d-stokes_stokes.vtu rename to test/reference-solutions/flow-over-cube-3d/test_stokes_first_si_stokes.vtu index 4c783bf..2a85305 100644 --- a/test/reference-solutions/monolithic/ff-pm-3d/ref-ff-pm-3d-stokes_stokes.vtu +++ b/test/reference-solutions/flow-over-cube-3d/test_stokes_first_si_stokes.vtu @@ -13,18 +13,18 @@ 0.0749999 0.0649999 0.055 0.045 0.0350001 0.0250001 0.0150001 0.00500011 0.0949999 0.0849999 0.0749999 0.0649999 0.055 0.045 0.0350001 0.0250001 0.0150001 0.0050001 0.0949999 0.0849999 0.0749999 0.0649999 0.055 0.045 0.0350001 0.0250001 0.0150001 0.00500009 0.0949985 0.084999 0.0749993 0.0649996 0.0549999 0.0450001 0.0350004 0.0250007 - 0.015001 0.00500149 0.0949991 0.0849993 0.0749995 0.0649997 0.0549999 0.0450001 0.0350003 0.0250005 0.0150007 0.00500085 + 0.015001 0.0050015 0.0949991 0.0849993 0.0749995 0.0649997 0.0549999 0.0450001 0.0350003 0.0250005 0.0150007 0.00500085 0.0949995 0.0849995 0.0749996 0.0649998 0.0549999 0.0450001 0.0350002 0.0250004 0.0150005 0.00500053 0.0949996 0.0849997 0.0749997 0.0649998 0.0549999 0.0450001 0.0350002 0.0250003 0.0150003 0.00500035 0.0949997 0.0849998 0.0749998 0.0649999 - 0.055 0.045 0.0350001 0.0250002 0.0150002 0.00500025 0.0949998 0.0849998 0.0749999 0.0649999 0.055 0.045 + 0.055 0.045 0.0350001 0.0250002 0.0150002 0.00500025 0.0949998 0.0849998 0.0749998 0.0649999 0.055 0.045 0.0350001 0.0250001 0.0150002 0.00500019 0.0949998 0.0849999 0.0749999 0.0649999 0.055 0.045 0.0350001 0.0250001 - 0.0150001 0.00500015 0.0949999 0.0849999 0.0749999 0.0649999 0.055 0.045 0.0350001 0.0250001 0.0150001 0.00500013 + 0.0150002 0.00500015 0.0949999 0.0849999 0.0749999 0.0649999 0.055 0.045 0.0350001 0.0250001 0.0150001 0.00500013 0.0949999 0.0849999 0.0749999 0.0649999 0.055 0.045 0.0350001 0.0250001 0.0150001 0.00500011 0.0949999 0.0849999 0.0749999 0.0649999 0.055 0.045 0.0350001 0.0250001 0.0150001 0.00500011 0.0949988 0.0849993 0.0749996 0.0649997 0.0549999 0.0450001 0.0350003 0.0250004 0.0150007 0.00500119 0.0949992 0.0849994 0.0749996 0.0649998 0.0549999 0.0450001 0.0350002 0.0250004 0.0150006 0.00500076 0.0949995 0.0849996 0.0749997 0.0649998 0.0549999 0.0450001 0.0350002 0.0250003 0.0150004 0.00500053 0.0949996 0.0849997 0.0749997 0.0649998 0.0549999 0.0450001 0.0350002 0.0250003 0.0150003 0.00500038 - 0.0949997 0.0849997 0.0749998 0.0649999 0.055 0.045 0.0350001 0.0250002 0.0150002 0.00500028 0.0949998 0.0849998 + 0.0949997 0.0849997 0.0749998 0.0649999 0.055 0.045 0.0350001 0.0250002 0.0150003 0.00500028 0.0949998 0.0849998 0.0749998 0.0649999 0.055 0.045 0.0350001 0.0250002 0.0150002 0.00500022 0.0949998 0.0849998 0.0749999 0.0649999 0.055 0.045 0.0350001 0.0250001 0.0150002 0.00500018 0.0949998 0.0849999 0.0749999 0.0649999 0.055 0.045 0.0350001 0.0250001 0.0150001 0.00500015 0.0949999 0.0849999 0.0749999 0.0649999 0.055 0.045 0.0350001 0.0250001 @@ -66,17 +66,17 @@ 0.0150007 0.00500119 0.0949992 0.0849994 0.0749996 0.0649998 0.0549999 0.0450001 0.0350002 0.0250004 0.0150006 0.00500076 0.0949995 0.0849996 0.0749997 0.0649998 0.0549999 0.0450001 0.0350002 0.0250003 0.0150004 0.00500053 0.0949996 0.0849997 0.0749997 0.0649998 0.0549999 0.0450001 0.0350002 0.0250003 0.0150003 0.00500038 0.0949997 0.0849997 0.0749998 0.0649999 - 0.055 0.045 0.0350001 0.0250002 0.0150002 0.00500028 0.0949998 0.0849998 0.0749998 0.0649999 0.055 0.045 + 0.055 0.045 0.0350001 0.0250002 0.0150003 0.00500028 0.0949998 0.0849998 0.0749998 0.0649999 0.055 0.045 0.0350001 0.0250002 0.0150002 0.00500022 0.0949998 0.0849998 0.0749999 0.0649999 0.055 0.045 0.0350001 0.0250001 0.0150002 0.00500018 0.0949998 0.0849999 0.0749999 0.0649999 0.055 0.045 0.0350001 0.0250001 0.0150001 0.00500015 0.0949999 0.0849999 0.0749999 0.0649999 0.055 0.045 0.0350001 0.0250001 0.0150001 0.00500013 0.0949999 0.0849998 0.0749999 0.0649999 0.055 0.045 0.0350001 0.0250001 0.0150002 0.00500014 0.0949985 0.084999 0.0749993 0.0649996 - 0.0549999 0.0450001 0.0350004 0.0250007 0.015001 0.00500149 0.0949991 0.0849993 0.0749995 0.0649997 0.0549999 0.0450001 + 0.0549999 0.0450001 0.0350004 0.0250007 0.015001 0.0050015 0.0949991 0.0849993 0.0749995 0.0649997 0.0549999 0.0450001 0.0350003 0.0250005 0.0150007 0.00500085 0.0949995 0.0849995 0.0749996 0.0649998 0.0549999 0.0450001 0.0350002 0.0250004 0.0150005 0.00500053 0.0949996 0.0849997 0.0749997 0.0649998 0.0549999 0.0450001 0.0350002 0.0250003 0.0150003 0.00500035 0.0949997 0.0849998 0.0749998 0.0649999 0.055 0.045 0.0350001 0.0250002 0.0150002 0.00500025 0.0949998 0.0849998 - 0.0749999 0.0649999 0.055 0.045 0.0350001 0.0250001 0.0150002 0.00500019 0.0949998 0.0849999 0.0749999 0.0649999 - 0.055 0.045 0.0350001 0.0250001 0.0150001 0.00500015 0.0949999 0.0849999 0.0749999 0.0649999 0.055 0.045 + 0.0749998 0.0649999 0.055 0.045 0.0350001 0.0250001 0.0150002 0.00500019 0.0949998 0.0849999 0.0749999 0.0649999 + 0.055 0.045 0.0350001 0.0250001 0.0150002 0.00500015 0.0949999 0.0849999 0.0749999 0.0649999 0.055 0.045 0.0350001 0.0250001 0.0150001 0.00500013 0.0949999 0.0849999 0.0749999 0.0649999 0.055 0.045 0.0350001 0.0250001 0.0150001 0.00500011 0.0949999 0.0849999 0.0749999 0.0649999 0.055 0.045 0.0350001 0.0250001 0.0150001 0.00500011 0.0949977 0.0849982 0.0749988 0.0649993 0.0549998 0.0450002 0.0350007 0.0250012 0.0150018 0.00500234 0.0949991 0.0849991 @@ -176,256 +176,256 @@ 1000 1000 1000 1000 - 0.531907 -0.000131015 -1.10071e-05 0.531874 -8.05443e-05 -1.01613e-05 0.531867 -4.9791e-05 -7.43124e-06 0.531867 -2.75035e-05 -4.3817e-06 - 0.531867 -8.8288e-06 -1.43803e-06 0.531867 8.8288e-06 1.43803e-06 0.531867 2.75035e-05 4.3817e-06 0.531867 4.9791e-05 7.43124e-06 - 0.531874 8.05443e-05 1.01613e-05 0.531907 0.000131015 1.10071e-05 1.07891 -7.04888e-05 -5.82994e-06 1.07889 -5.20036e-05 -6.21463e-06 - 1.07888 -3.42736e-05 -5.03644e-06 1.07887 -1.93565e-05 -3.14255e-06 1.07887 -6.25652e-06 -1.05672e-06 1.07887 6.25652e-06 1.05672e-06 - 1.07887 1.93565e-05 3.14255e-06 1.07888 3.42736e-05 5.03644e-06 1.07889 5.20036e-05 6.21463e-06 1.07891 7.04888e-05 5.82994e-06 - 1.4 -3.85139e-05 -1.71765e-06 1.39999 -3.16353e-05 -2.41736e-06 1.39998 -2.23007e-05 -2.25446e-06 1.39998 -1.30274e-05 -1.51085e-06 - 1.39998 -4.26801e-06 -5.2384e-07 1.39998 4.26801e-06 5.2384e-07 1.39998 1.30274e-05 1.51085e-06 1.39998 2.23007e-05 2.25446e-06 - 1.39999 3.16353e-05 2.41736e-06 1.4 3.85139e-05 1.71765e-06 1.5855 -2.29231e-05 1.22857e-07 1.58549 -1.98812e-05 -5.55267e-07 - 1.58549 -1.47284e-05 -7.66777e-07 1.58548 -8.88019e-06 -5.87873e-07 1.58548 -2.95218e-06 -2.14357e-07 1.58548 2.95218e-06 2.14357e-07 - 1.58548 8.88019e-06 5.87873e-07 1.58549 1.47284e-05 7.66777e-07 1.58549 1.98812e-05 5.55267e-07 1.5855 2.29231e-05 -1.22857e-07 - 1.67123 -1.46662e-05 7.81168e-07 1.67123 -1.30422e-05 1.94784e-07 1.67122 -9.95592e-06 -1.12924e-07 1.67122 -6.1389e-06 -1.59829e-07 - 1.67122 -2.06428e-06 -6.71438e-08 1.67122 2.06428e-06 6.71438e-08 1.67122 6.1389e-06 1.59829e-07 1.67122 9.95592e-06 1.12924e-07 - 1.67123 1.30422e-05 -1.94784e-07 1.67123 1.46662e-05 -7.81168e-07 1.67082 -9.73718e-06 9.42623e-07 1.67081 -8.73132e-06 4.49587e-07 - 1.67081 -6.75379e-06 1.43633e-07 1.67081 -4.21266e-06 2.05054e-08 1.67081 -1.4256e-06 -3.17412e-09 1.67081 1.4256e-06 3.17412e-09 - 1.67081 4.21266e-06 -2.05054e-08 1.67081 6.75379e-06 -1.43633e-07 1.67081 8.73132e-06 -4.49587e-07 1.67082 9.73718e-06 -9.42623e-07 - 1.58419 -6.43653e-06 9.19233e-07 1.58419 -5.7367e-06 5.09642e-07 1.58419 -4.42514e-06 2.35552e-07 1.58418 -2.76013e-06 9.42439e-08 - 1.58418 -9.34631e-07 2.42746e-08 1.58418 9.34631e-07 -2.42746e-08 1.58418 2.76013e-06 -9.42439e-08 1.58419 4.42514e-06 -2.35552e-07 - 1.58419 5.7367e-06 -5.09642e-07 1.58419 6.43653e-06 -9.19233e-07 1.39759 -4.01202e-06 8.34257e-07 1.39758 -3.47274e-06 5.03785e-07 - 1.39758 -2.61559e-06 2.70115e-07 1.39758 -1.60885e-06 1.29784e-07 1.39758 -5.41484e-07 3.84217e-08 1.39758 5.41484e-07 -3.84217e-08 - 1.39758 1.60885e-06 -1.29784e-07 1.39758 2.61559e-06 -2.70115e-07 1.39758 3.47274e-06 -5.03785e-07 1.39759 4.01202e-06 -8.34257e-07 - 1.07488 -2.11211e-06 7.08927e-07 1.07487 -1.69092e-06 4.69111e-07 1.07487 -1.20178e-06 2.83206e-07 1.07487 -7.15074e-07 1.51335e-07 - 1.07487 -2.37191e-07 4.76684e-08 1.07487 2.37191e-07 -4.76684e-08 1.07487 7.15074e-07 -1.51335e-07 1.07487 1.20178e-06 -2.83206e-07 - 1.07487 1.69092e-06 -4.69111e-07 1.07488 2.11211e-06 -7.08927e-07 0.524957 -6.32411e-07 4.45788e-07 0.524955 -4.52841e-07 3.33085e-07 - 0.524954 -2.95646e-07 2.23045e-07 0.524953 -1.67403e-07 1.27856e-07 0.524953 -5.43211e-08 4.17004e-08 0.524953 5.43211e-08 -4.17004e-08 - 0.524953 1.67403e-07 -1.27856e-07 0.524954 2.95646e-07 -2.23045e-07 0.524955 4.52841e-07 -3.33085e-07 0.524957 6.32411e-07 -4.45788e-07 - 1.09156 -0.000148973 -1.83567e-05 1.09153 -9.34595e-05 -1.74993e-05 1.09152 -5.8223e-05 -1.32459e-05 1.09152 -3.22515e-05 -7.98582e-06 - 1.09152 -1.03622e-05 -2.64796e-06 1.09152 1.03622e-05 2.64796e-06 1.09152 3.22515e-05 7.98582e-06 1.09152 5.8223e-05 1.32459e-05 - 1.09153 9.34595e-05 1.74993e-05 1.09156 0.000148973 1.83567e-05 2.46259 -0.000108262 -1.22774e-05 2.46256 -8.07126e-05 -1.30119e-05 - 2.46255 -5.37321e-05 -1.07858e-05 2.46254 -3.0536e-05 -6.8671e-06 2.46254 -9.89746e-06 -2.33371e-06 2.46254 9.89746e-06 2.33371e-06 - 2.46254 3.0536e-05 6.8671e-06 2.46255 5.37321e-05 1.07858e-05 2.46256 8.07126e-05 1.30119e-05 2.46259 0.000108262 1.22774e-05 - 3.3356 -7.45883e-05 -4.76874e-06 3.33558 -6.11106e-05 -6.01342e-06 3.33556 -4.33347e-05 -5.57114e-06 3.33556 -2.54726e-05 -3.77508e-06 - 3.33555 -8.37389e-06 -1.31929e-06 3.33555 8.37389e-06 1.31929e-06 3.33556 2.54726e-05 3.77508e-06 3.33556 4.33347e-05 5.57114e-06 - 3.33558 6.11106e-05 6.01342e-06 3.3356 7.45883e-05 4.76874e-06 3.85626 -5.13148e-05 -5.2639e-07 3.85624 -4.40746e-05 -1.79541e-06 - 3.85623 -3.26624e-05 -2.17147e-06 3.85623 -1.97631e-05 -1.64143e-06 3.85622 -6.58676e-06 -5.99156e-07 3.85622 6.58676e-06 5.99156e-07 - 3.85623 1.97631e-05 1.64143e-06 3.85623 3.26624e-05 2.17147e-06 3.85624 4.40746e-05 1.79541e-06 3.85626 5.13148e-05 5.2639e-07 - 4.09985 -3.55625e-05 1.36577e-06 4.09983 -3.12462e-05 2.17458e-07 4.09983 -2.37781e-05 -4.38755e-07 4.09982 -1.46785e-05 -5.02969e-07 - 4.09982 -4.9428e-06 -2.0601e-07 4.09982 4.9428e-06 2.0601e-07 4.09982 1.46785e-05 5.02969e-07 4.09983 2.37781e-05 4.38755e-07 - 4.09983 3.12462e-05 -2.17458e-07 4.09985 3.55625e-05 -1.36577e-06 4.09866 -2.45793e-05 2.02955e-06 4.09865 -2.17806e-05 1.03465e-06 - 4.09864 -1.67809e-05 3.34499e-07 4.09864 -1.04696e-05 3.37313e-08 4.09864 -3.54629e-06 -1.5879e-08 4.09864 3.54629e-06 1.5879e-08 - 4.09864 1.04696e-05 -3.37313e-08 4.09864 1.67809e-05 -3.34499e-07 4.09865 2.17806e-05 -1.03465e-06 4.09866 2.45793e-05 -2.02955e-06 - 3.85255 -1.6539e-05 2.137e-06 3.85254 -1.46034e-05 1.2978e-06 3.85254 -1.12422e-05 6.46978e-07 3.85253 -7.0219e-06 2.72354e-07 - 3.85253 -2.38115e-06 7.19531e-08 3.85253 2.38115e-06 -7.19531e-08 3.85253 7.0219e-06 -2.72354e-07 3.85254 1.12422e-05 -6.46978e-07 - 3.85254 1.46034e-05 -1.2978e-06 3.85255 1.6539e-05 -2.137e-06 3.32886 -1.03433e-05 2.00893e-06 3.32886 -8.9348e-06 1.33129e-06 - 3.32885 -6.76033e-06 7.67167e-07 3.32885 -4.18185e-06 3.84447e-07 3.32885 -1.41236e-06 1.15848e-07 3.32885 1.41236e-06 -1.15848e-07 - 3.32885 4.18185e-06 -3.84447e-07 3.32885 6.76033e-06 -7.67167e-07 3.32886 8.9348e-06 -1.33129e-06 3.32886 1.03433e-05 -2.00893e-06 - 2.45183 -5.3802e-06 1.71896e-06 2.45182 -4.37934e-06 1.23575e-06 2.45182 -3.17681e-06 7.88111e-07 2.45182 -1.9206e-06 4.32324e-07 - 2.45181 -6.42418e-07 1.37429e-07 2.45181 6.42418e-07 -1.37429e-07 2.45182 1.9206e-06 -4.32324e-07 2.45182 3.17681e-06 -7.88111e-07 - 2.45182 4.37934e-06 -1.23575e-06 2.45183 5.3802e-06 -1.71896e-06 1.07486 -1.57756e-06 1.0431e-06 1.07486 -1.1782e-06 8.29077e-07 - 1.07485 -8.05046e-07 5.74158e-07 1.07485 -4.71433e-07 3.33375e-07 1.07485 -1.5562e-07 1.09108e-07 1.07485 1.5562e-07 -1.09108e-07 - 1.07485 4.71433e-07 -3.33375e-07 1.07485 8.05046e-07 -5.74158e-07 1.07486 1.1782e-06 -8.29077e-07 1.07486 1.57756e-06 -1.0431e-06 - 1.42043 -0.00015231 -1.12941e-05 1.42041 -9.55261e-05 -1.13992e-05 1.4204 -5.94269e-05 -9.19956e-06 1.4204 -3.28928e-05 -5.78281e-06 - 1.4204 -1.05654e-05 -1.95522e-06 1.4204 1.05654e-05 1.95522e-06 1.4204 3.28928e-05 5.78281e-06 1.4204 5.94269e-05 9.19956e-06 - 1.42041 9.55261e-05 1.13992e-05 1.42043 0.00015231 1.12941e-05 3.34429 -0.000118267 -1.10896e-05 3.34426 -8.79113e-05 -1.16287e-05 - 3.34425 -5.84353e-05 -9.92757e-06 3.34425 -3.32e-05 -6.49724e-06 3.34424 -1.07621e-05 -2.24063e-06 3.34424 1.07621e-05 2.24063e-06 - 3.34425 3.32e-05 6.49724e-06 3.34425 5.84353e-05 9.92757e-06 3.34426 8.79113e-05 1.16287e-05 3.34429 0.000118267 1.10896e-05 - 4.62353 -8.88097e-05 -5.85756e-06 4.6235 -7.25011e-05 -6.68029e-06 4.62349 -5.13652e-05 -6.13706e-06 4.62348 -3.02095e-05 -4.20892e-06 - 4.62348 -9.93714e-06 -1.48417e-06 4.62348 9.93714e-06 1.48417e-06 4.62348 3.02095e-05 4.20892e-06 4.62349 5.13652e-05 6.13706e-06 - 4.6235 7.25011e-05 6.68029e-06 4.62353 8.88097e-05 5.85756e-06 5.40409 -6.57366e-05 -1.62127e-06 5.40407 -5.62171e-05 -2.55087e-06 - 5.40406 -4.15926e-05 -2.7727e-06 5.40405 -2.51704e-05 -2.0661e-06 5.40405 -8.39287e-06 -7.54723e-07 5.40405 8.39287e-06 7.54723e-07 - 5.40405 2.51704e-05 2.0661e-06 5.40406 4.15926e-05 2.7727e-06 5.40407 5.62171e-05 2.55087e-06 5.40409 6.57366e-05 1.62127e-06 - 5.77323 -4.79949e-05 7.82706e-07 5.77322 -4.19713e-05 -1.35831e-07 5.77321 -3.18585e-05 -7.18774e-07 5.7732 -1.96543e-05 -7.11281e-07 - 5.7732 -6.61872e-06 -2.84782e-07 5.7732 6.61872e-06 2.84782e-07 5.7732 1.96543e-05 7.11281e-07 5.77321 3.18585e-05 7.18774e-07 - 5.77322 4.19713e-05 1.35831e-07 5.77323 4.79949e-05 -7.82706e-07 5.77143 -3.42984e-05 1.86917e-06 5.77142 -3.02515e-05 1.02678e-06 - 5.77141 -2.32386e-05 3.2944e-07 5.7714 -1.44826e-05 8.23376e-09 5.7714 -4.90446e-06 -3.01988e-08 5.7714 4.90446e-06 3.01988e-08 - 5.7714 1.44826e-05 -8.23376e-09 5.77141 2.32386e-05 -3.2944e-07 5.77142 3.02515e-05 -1.02678e-06 5.77143 3.42984e-05 -1.86917e-06 - 5.39848 -2.35268e-05 2.21915e-06 5.39847 -2.06897e-05 1.48713e-06 5.39846 -1.58869e-05 8.01909e-07 5.39846 -9.91368e-06 3.55496e-07 - 5.39845 -3.36115e-06 9.63936e-08 5.39845 3.36115e-06 -9.63936e-08 5.39846 9.91368e-06 -3.55496e-07 5.39846 1.58869e-05 -8.01909e-07 - 5.39847 2.06897e-05 -1.48713e-06 5.39848 2.35268e-05 -2.21915e-06 4.61349 -1.48364e-05 2.19286e-06 4.61349 -1.2788e-05 1.59875e-06 - 4.61348 -9.66689e-06 9.89663e-07 4.61348 -5.98054e-06 5.16991e-07 4.61347 -2.0205e-06 1.58604e-07 4.61347 2.0205e-06 -1.58604e-07 - 4.61348 5.98054e-06 -5.16991e-07 4.61348 9.66689e-06 -9.89663e-07 4.61349 1.2788e-05 -1.59875e-06 4.61349 1.48364e-05 -2.19286e-06 - 3.32871 -7.70235e-06 1.89566e-06 3.3287 -6.28308e-06 1.48247e-06 3.3287 -4.57008e-06 9.99453e-07 3.32869 -2.76975e-06 5.63562e-07 - 3.32869 -9.27801e-07 1.80994e-07 3.32869 9.27801e-07 -1.80994e-07 3.32869 2.76975e-06 -5.63562e-07 3.3287 4.57008e-06 -9.99453e-07 - 3.3287 6.28308e-06 -1.48247e-06 3.32871 7.70235e-06 -1.89566e-06 1.39751 -2.24016e-06 1.1023e-06 1.3975 -1.68566e-06 9.36505e-07 - 1.3975 -1.16047e-06 6.73651e-07 1.3975 -6.83507e-07 3.97409e-07 1.3975 -2.26324e-07 1.30707e-07 1.3975 2.26324e-07 -1.30707e-07 - 1.3975 6.83507e-07 -3.97409e-07 1.3975 1.16047e-06 -6.73651e-07 1.3975 1.68566e-06 -9.36505e-07 1.39751 2.24016e-06 -1.1023e-06 - 1.61058 -0.000152827 -5.62832e-06 1.61055 -9.56373e-05 -5.81072e-06 1.61055 -5.93564e-05 -4.8818e-06 1.61055 -3.28073e-05 -3.16395e-06 - 1.61055 -1.05317e-05 -1.08635e-06 1.61055 1.05317e-05 1.08635e-06 1.61055 3.28073e-05 3.16395e-06 1.61055 5.93564e-05 4.8818e-06 - 1.61055 9.56373e-05 5.81072e-06 1.61058 0.000152827 5.62832e-06 3.87061 -0.000120795 -6.95941e-06 3.87058 -8.94534e-05 -7.22014e-06 - 3.87057 -5.92551e-05 -6.26436e-06 3.87057 -3.35964e-05 -4.17537e-06 3.87057 -1.08812e-05 -1.45499e-06 3.87057 1.08812e-05 1.45499e-06 - 3.87057 3.35964e-05 4.17537e-06 3.87057 5.92551e-05 6.26436e-06 3.87058 8.94534e-05 7.22014e-06 3.87061 0.000120795 6.95941e-06 - 5.41013 -9.39024e-05 -4.39624e-06 5.41011 -7.64356e-05 -4.77734e-06 5.4101 -5.40253e-05 -4.3595e-06 5.41009 -3.17338e-05 -3.01088e-06 - 5.41008 -1.04336e-05 -1.06792e-06 5.41008 1.04336e-05 1.06792e-06 5.41009 3.17338e-05 3.01088e-06 5.4101 5.40253e-05 4.3595e-06 - 5.41011 7.64356e-05 4.77734e-06 5.41013 9.39024e-05 4.39624e-06 6.36334 -7.21796e-05 -1.63364e-06 6.36332 -6.15766e-05 -2.11307e-06 - 6.36331 -4.5475e-05 -2.17437e-06 6.3633 -2.74961e-05 -1.60477e-06 6.3633 -9.16583e-06 -5.86239e-07 6.3633 9.16583e-06 5.86239e-07 - 6.3633 2.74961e-05 1.60477e-06 6.36331 4.5475e-05 2.17437e-06 6.36332 6.15766e-05 2.11307e-06 6.36334 7.21796e-05 1.63364e-06 - 6.81756 -5.44074e-05 2.08435e-07 6.81755 -4.74697e-05 -3.09907e-07 6.81754 -3.59661e-05 -6.51105e-07 6.81753 -2.21677e-05 -5.97412e-07 - 6.81753 -7.46272e-06 -2.35765e-07 6.81753 7.46272e-06 2.35765e-07 6.81753 2.21677e-05 5.97412e-07 6.81754 3.59661e-05 6.51105e-07 - 6.81755 4.74697e-05 3.09907e-07 6.81756 5.44074e-05 -2.08435e-07 6.81534 -3.97956e-05 1.16461e-06 6.81532 -3.50221e-05 6.60837e-07 - 6.81531 -2.68513e-05 2.03147e-07 6.81531 -1.6716e-05 -1.48226e-08 6.8153 -5.65834e-06 -2.97907e-08 6.8153 5.65834e-06 2.97907e-08 - 6.81531 1.6716e-05 1.48226e-08 6.81531 2.68513e-05 -2.03147e-07 6.81532 3.50221e-05 -6.60837e-07 6.81534 3.97956e-05 -1.16461e-06 - 6.35645 -2.7708e-05 1.54281e-06 6.35644 -2.43174e-05 1.09089e-06 6.35643 -1.86381e-05 6.17424e-07 6.35642 -1.16177e-05 2.83315e-07 - 6.35642 -3.93712e-06 7.82495e-08 6.35642 3.93712e-06 -7.82495e-08 6.35642 1.16177e-05 -2.83315e-07 6.35643 1.86381e-05 -6.17424e-07 - 6.35644 2.43174e-05 -1.09089e-06 6.35645 2.7708e-05 -1.54281e-06 5.39793 -1.76062e-05 1.58886e-06 5.39792 -1.51534e-05 1.2184e-06 - 5.39791 -1.14392e-05 7.87402e-07 5.39791 -7.0712e-06 4.22696e-07 5.39791 -2.38819e-06 1.31316e-07 5.39791 2.38819e-06 -1.31316e-07 - 5.39791 7.0712e-06 -4.22696e-07 5.39791 1.14392e-05 -7.87402e-07 5.39792 1.51534e-05 -1.2184e-06 5.39793 1.76062e-05 -1.58886e-06 - 3.85199 -9.14697e-06 1.38618e-06 3.85199 -7.46078e-06 1.13217e-06 3.85198 -5.4245e-06 7.89354e-07 3.85198 -3.28683e-06 4.53554e-07 - 3.85198 -1.10095e-06 1.46803e-07 3.85198 1.10095e-06 -1.46803e-07 3.85198 3.28683e-06 -4.53554e-07 3.85198 5.4245e-06 -7.89354e-07 - 3.85199 7.46078e-06 -1.13217e-06 3.85199 9.14697e-06 -1.38618e-06 1.58397 -2.65104e-06 7.84945e-07 1.58397 -1.99761e-06 6.90254e-07 - 1.58396 -1.37617e-06 5.08736e-07 1.58396 -8.10904e-07 3.03778e-07 1.58396 -2.68582e-07 1.00356e-07 1.58396 2.68582e-07 -1.00356e-07 - 1.58396 8.10904e-07 -3.03778e-07 1.58396 1.37617e-06 -5.08736e-07 1.58397 1.99761e-06 -6.90254e-07 1.58397 2.65104e-06 -7.84945e-07 - 1.69866 -0.000152867 -1.68389e-06 1.69864 -9.55458e-05 -1.74953e-06 1.69864 -5.92224e-05 -1.49687e-06 1.69864 -3.27053e-05 -9.85257e-07 - 1.69864 -1.04949e-05 -3.41062e-07 1.69864 1.04949e-05 3.41062e-07 1.69864 3.27053e-05 9.85257e-07 1.69864 5.92224e-05 1.49687e-06 - 1.69864 9.55458e-05 1.74953e-06 1.69866 0.000152867 1.68389e-06 4.11744 -0.000121358 -2.31728e-06 4.11742 -8.96881e-05 -2.38879e-06 - 4.11741 -5.92832e-05 -2.0862e-06 4.1174 -3.35631e-05 -1.40268e-06 4.1174 -1.0863e-05 -4.91346e-07 4.1174 1.0863e-05 4.91346e-07 - 4.1174 3.35631e-05 1.40268e-06 4.11741 5.92832e-05 2.0862e-06 4.11742 8.96881e-05 2.38879e-06 4.11744 0.000121358 2.31728e-06 - 5.78305 -9.5473e-05 -1.58976e-06 5.78303 -7.75944e-05 -1.6931e-06 5.78301 -5.47576e-05 -1.53912e-06 5.78301 -3.21294e-05 -1.06618e-06 - 5.783 -1.05584e-05 -3.79203e-07 5.783 1.05584e-05 3.79203e-07 5.78301 3.21294e-05 1.06618e-06 5.78301 5.47576e-05 1.53912e-06 - 5.78303 7.75944e-05 1.6931e-06 5.78305 9.5473e-05 1.58976e-06 6.82158 -7.45449e-05 -6.61622e-07 6.82156 -6.35219e-05 -8.02341e-07 - 6.82155 -4.68597e-05 -8.06366e-07 6.82154 -2.83132e-05 -5.92237e-07 6.82154 -9.43524e-06 -2.16315e-07 6.82154 9.43524e-06 2.16315e-07 - 6.82154 2.83132e-05 5.92237e-07 6.82155 4.68597e-05 8.06366e-07 6.82156 6.35219e-05 8.02341e-07 6.82158 7.45449e-05 6.61622e-07 - 7.31835 -5.70296e-05 1.0329e-08 7.31833 -4.97087e-05 -1.51402e-07 7.31832 -3.76265e-05 -2.58162e-07 7.31832 -2.3177e-05 -2.29271e-07 - 7.31831 -7.80039e-06 -8.98484e-08 7.31831 7.80039e-06 8.98484e-08 7.31832 2.3177e-05 2.29271e-07 7.31832 3.76265e-05 2.58162e-07 - 7.31833 4.97087e-05 1.51402e-07 7.31835 5.70296e-05 -1.0329e-08 7.31591 -4.2203e-05 3.82358e-07 7.3159 -3.71062e-05 2.19119e-07 - 7.31589 -2.84222e-05 6.45723e-08 7.31588 -1.76828e-05 -9.83047e-09 7.31588 -5.98388e-06 -1.22967e-08 7.31588 5.98388e-06 1.22967e-08 - 7.31588 1.76828e-05 9.83047e-09 7.31589 2.84222e-05 -6.45723e-08 7.3159 3.71062e-05 -2.19119e-07 7.31591 4.2203e-05 -3.82358e-07 - 6.81405 -2.96179e-05 5.41429e-07 6.81404 -2.59709e-05 3.91915e-07 6.81403 -1.98868e-05 2.2694e-07 6.81402 -1.23881e-05 1.05929e-07 - 6.81402 -4.19691e-06 2.95344e-08 6.81402 4.19691e-06 -2.95344e-08 6.81402 1.23881e-05 -1.05929e-07 6.81403 1.98868e-05 -2.2694e-07 - 6.81404 2.59709e-05 -3.91915e-07 6.81405 2.96179e-05 -5.41429e-07 5.76978 -1.89012e-05 5.70679e-07 5.76977 -1.62564e-05 4.47156e-07 - 5.76977 -1.22616e-05 2.94791e-07 5.76976 -7.57508e-06 1.60368e-07 5.76976 -2.55764e-06 5.01388e-08 5.76976 2.55764e-06 -5.01388e-08 - 5.76976 7.57508e-06 -1.60368e-07 5.76977 1.22616e-05 -2.94791e-07 5.76977 1.62564e-05 -4.47156e-07 5.76978 1.89012e-05 -5.70679e-07 - 4.09737 -9.82871e-06 5.00553e-07 4.09736 -8.01416e-06 4.16332e-07 4.09736 -5.82329e-06 2.94806e-07 4.09735 -3.52672e-06 1.70982e-07 - 4.09735 -1.18102e-06 5.55684e-08 4.09735 1.18102e-06 -5.55684e-08 4.09735 3.52672e-06 -1.70982e-07 4.09736 5.82329e-06 -2.94806e-07 - 4.09736 8.01416e-06 -4.16332e-07 4.09737 9.82871e-06 -5.00553e-07 1.67034 -2.84515e-06 2.79958e-07 1.67033 -2.14394e-06 2.49741e-07 - 1.67033 -1.47631e-06 1.86198e-07 1.67033 -8.69531e-07 1.11888e-07 1.67033 -2.87935e-07 3.70565e-08 1.67033 2.87935e-07 -3.70565e-08 - 1.67033 8.69531e-07 -1.11888e-07 1.67033 1.47631e-06 -1.86198e-07 1.67033 2.14394e-06 -2.49741e-07 1.67034 2.84515e-06 -2.79958e-07 - 1.69866 -0.000152867 1.68389e-06 1.69864 -9.55458e-05 1.74953e-06 1.69864 -5.92224e-05 1.49687e-06 1.69864 -3.27053e-05 9.85257e-07 - 1.69864 -1.04949e-05 3.41062e-07 1.69864 1.04949e-05 -3.41062e-07 1.69864 3.27053e-05 -9.85257e-07 1.69864 5.92224e-05 -1.49687e-06 - 1.69864 9.55458e-05 -1.74953e-06 1.69866 0.000152867 -1.68389e-06 4.11744 -0.000121358 2.31728e-06 4.11742 -8.96881e-05 2.38879e-06 - 4.11741 -5.92832e-05 2.0862e-06 4.1174 -3.35631e-05 1.40268e-06 4.1174 -1.0863e-05 4.91346e-07 4.1174 1.0863e-05 -4.91346e-07 - 4.1174 3.35631e-05 -1.40268e-06 4.11741 5.92832e-05 -2.0862e-06 4.11742 8.96881e-05 -2.38879e-06 4.11744 0.000121358 -2.31728e-06 - 5.78305 -9.5473e-05 1.58976e-06 5.78303 -7.75944e-05 1.6931e-06 5.78301 -5.47576e-05 1.53912e-06 5.78301 -3.21294e-05 1.06618e-06 - 5.783 -1.05584e-05 3.79203e-07 5.783 1.05584e-05 -3.79203e-07 5.78301 3.21294e-05 -1.06618e-06 5.78301 5.47576e-05 -1.53912e-06 - 5.78303 7.75944e-05 -1.6931e-06 5.78305 9.5473e-05 -1.58976e-06 6.82158 -7.45449e-05 6.61622e-07 6.82156 -6.35219e-05 8.02341e-07 - 6.82155 -4.68597e-05 8.06366e-07 6.82154 -2.83132e-05 5.92237e-07 6.82154 -9.43524e-06 2.16315e-07 6.82154 9.43524e-06 -2.16315e-07 - 6.82154 2.83132e-05 -5.92237e-07 6.82155 4.68597e-05 -8.06366e-07 6.82156 6.35219e-05 -8.02341e-07 6.82158 7.45449e-05 -6.61622e-07 - 7.31835 -5.70296e-05 -1.0329e-08 7.31833 -4.97087e-05 1.51402e-07 7.31832 -3.76265e-05 2.58162e-07 7.31832 -2.3177e-05 2.29271e-07 - 7.31831 -7.80039e-06 8.98484e-08 7.31831 7.80039e-06 -8.98484e-08 7.31832 2.3177e-05 -2.29271e-07 7.31832 3.76265e-05 -2.58162e-07 - 7.31833 4.97087e-05 -1.51402e-07 7.31835 5.70296e-05 1.0329e-08 7.31591 -4.2203e-05 -3.82358e-07 7.3159 -3.71062e-05 -2.19119e-07 - 7.31589 -2.84222e-05 -6.45723e-08 7.31588 -1.76828e-05 9.83047e-09 7.31588 -5.98388e-06 1.22967e-08 7.31588 5.98388e-06 -1.22967e-08 - 7.31588 1.76828e-05 -9.83047e-09 7.31589 2.84222e-05 6.45723e-08 7.3159 3.71062e-05 2.19119e-07 7.31591 4.2203e-05 3.82358e-07 - 6.81405 -2.96179e-05 -5.41429e-07 6.81404 -2.59709e-05 -3.91915e-07 6.81403 -1.98868e-05 -2.2694e-07 6.81402 -1.23881e-05 -1.05929e-07 - 6.81402 -4.19691e-06 -2.95344e-08 6.81402 4.19691e-06 2.95344e-08 6.81402 1.23881e-05 1.05929e-07 6.81403 1.98868e-05 2.2694e-07 - 6.81404 2.59709e-05 3.91915e-07 6.81405 2.96179e-05 5.41429e-07 5.76978 -1.89012e-05 -5.70679e-07 5.76977 -1.62564e-05 -4.47156e-07 - 5.76977 -1.22616e-05 -2.94791e-07 5.76976 -7.57508e-06 -1.60368e-07 5.76976 -2.55764e-06 -5.01388e-08 5.76976 2.55764e-06 5.01388e-08 - 5.76976 7.57508e-06 1.60368e-07 5.76977 1.22616e-05 2.94791e-07 5.76977 1.62564e-05 4.47156e-07 5.76978 1.89012e-05 5.70679e-07 - 4.09737 -9.82871e-06 -5.00553e-07 4.09736 -8.01416e-06 -4.16332e-07 4.09736 -5.82329e-06 -2.94806e-07 4.09735 -3.52672e-06 -1.70982e-07 - 4.09735 -1.18102e-06 -5.55684e-08 4.09735 1.18102e-06 5.55684e-08 4.09735 3.52672e-06 1.70982e-07 4.09736 5.82329e-06 2.94806e-07 - 4.09736 8.01416e-06 4.16332e-07 4.09737 9.82871e-06 5.00553e-07 1.67034 -2.84515e-06 -2.79958e-07 1.67033 -2.14394e-06 -2.49741e-07 - 1.67033 -1.47631e-06 -1.86198e-07 1.67033 -8.69531e-07 -1.11888e-07 1.67033 -2.87935e-07 -3.70565e-08 1.67033 2.87935e-07 3.70565e-08 - 1.67033 8.69531e-07 1.11888e-07 1.67033 1.47631e-06 1.86198e-07 1.67033 2.14394e-06 2.49741e-07 1.67034 2.84515e-06 2.79958e-07 - 1.61058 -0.000152827 5.62832e-06 1.61055 -9.56373e-05 5.81072e-06 1.61055 -5.93564e-05 4.8818e-06 1.61055 -3.28073e-05 3.16395e-06 - 1.61055 -1.05317e-05 1.08635e-06 1.61055 1.05317e-05 -1.08635e-06 1.61055 3.28073e-05 -3.16395e-06 1.61055 5.93564e-05 -4.8818e-06 - 1.61055 9.56373e-05 -5.81072e-06 1.61058 0.000152827 -5.62832e-06 3.87061 -0.000120795 6.95941e-06 3.87058 -8.94534e-05 7.22014e-06 - 3.87057 -5.92551e-05 6.26436e-06 3.87057 -3.35964e-05 4.17537e-06 3.87057 -1.08812e-05 1.45499e-06 3.87057 1.08812e-05 -1.45499e-06 - 3.87057 3.35964e-05 -4.17537e-06 3.87057 5.92551e-05 -6.26436e-06 3.87058 8.94534e-05 -7.22014e-06 3.87061 0.000120795 -6.95941e-06 - 5.41013 -9.39024e-05 4.39624e-06 5.41011 -7.64356e-05 4.77734e-06 5.4101 -5.40253e-05 4.3595e-06 5.41009 -3.17338e-05 3.01088e-06 - 5.41008 -1.04336e-05 1.06792e-06 5.41008 1.04336e-05 -1.06792e-06 5.41009 3.17338e-05 -3.01088e-06 5.4101 5.40253e-05 -4.3595e-06 - 5.41011 7.64356e-05 -4.77734e-06 5.41013 9.39024e-05 -4.39624e-06 6.36334 -7.21796e-05 1.63364e-06 6.36332 -6.15766e-05 2.11307e-06 - 6.36331 -4.5475e-05 2.17437e-06 6.3633 -2.74961e-05 1.60477e-06 6.3633 -9.16583e-06 5.86239e-07 6.3633 9.16583e-06 -5.86239e-07 - 6.3633 2.74961e-05 -1.60477e-06 6.36331 4.5475e-05 -2.17437e-06 6.36332 6.15766e-05 -2.11307e-06 6.36334 7.21796e-05 -1.63364e-06 - 6.81756 -5.44074e-05 -2.08435e-07 6.81755 -4.74697e-05 3.09907e-07 6.81754 -3.59661e-05 6.51105e-07 6.81753 -2.21677e-05 5.97412e-07 - 6.81753 -7.46272e-06 2.35765e-07 6.81753 7.46272e-06 -2.35765e-07 6.81753 2.21677e-05 -5.97412e-07 6.81754 3.59661e-05 -6.51105e-07 - 6.81755 4.74697e-05 -3.09907e-07 6.81756 5.44074e-05 2.08435e-07 6.81534 -3.97956e-05 -1.16461e-06 6.81532 -3.50221e-05 -6.60837e-07 - 6.81531 -2.68513e-05 -2.03147e-07 6.81531 -1.6716e-05 1.48226e-08 6.8153 -5.65834e-06 2.97907e-08 6.8153 5.65834e-06 -2.97907e-08 - 6.81531 1.6716e-05 -1.48226e-08 6.81531 2.68513e-05 2.03147e-07 6.81532 3.50221e-05 6.60837e-07 6.81534 3.97956e-05 1.16461e-06 - 6.35645 -2.7708e-05 -1.54281e-06 6.35644 -2.43174e-05 -1.09089e-06 6.35643 -1.86381e-05 -6.17424e-07 6.35642 -1.16177e-05 -2.83315e-07 - 6.35642 -3.93712e-06 -7.82495e-08 6.35642 3.93712e-06 7.82495e-08 6.35642 1.16177e-05 2.83315e-07 6.35643 1.86381e-05 6.17424e-07 - 6.35644 2.43174e-05 1.09089e-06 6.35645 2.7708e-05 1.54281e-06 5.39793 -1.76062e-05 -1.58886e-06 5.39792 -1.51534e-05 -1.2184e-06 - 5.39791 -1.14392e-05 -7.87402e-07 5.39791 -7.0712e-06 -4.22696e-07 5.39791 -2.38819e-06 -1.31316e-07 5.39791 2.38819e-06 1.31316e-07 - 5.39791 7.0712e-06 4.22696e-07 5.39791 1.14392e-05 7.87402e-07 5.39792 1.51534e-05 1.2184e-06 5.39793 1.76062e-05 1.58886e-06 - 3.85199 -9.14697e-06 -1.38618e-06 3.85199 -7.46078e-06 -1.13217e-06 3.85198 -5.4245e-06 -7.89354e-07 3.85198 -3.28683e-06 -4.53554e-07 - 3.85198 -1.10095e-06 -1.46803e-07 3.85198 1.10095e-06 1.46803e-07 3.85198 3.28683e-06 4.53554e-07 3.85198 5.4245e-06 7.89354e-07 - 3.85199 7.46078e-06 1.13217e-06 3.85199 9.14697e-06 1.38618e-06 1.58397 -2.65104e-06 -7.84945e-07 1.58397 -1.99761e-06 -6.90254e-07 - 1.58396 -1.37617e-06 -5.08736e-07 1.58396 -8.10904e-07 -3.03778e-07 1.58396 -2.68582e-07 -1.00356e-07 1.58396 2.68582e-07 1.00356e-07 - 1.58396 8.10904e-07 3.03778e-07 1.58396 1.37617e-06 5.08736e-07 1.58397 1.99761e-06 6.90254e-07 1.58397 2.65104e-06 7.84945e-07 - 1.42043 -0.00015231 1.12941e-05 1.42041 -9.55261e-05 1.13992e-05 1.4204 -5.94269e-05 9.19956e-06 1.4204 -3.28928e-05 5.78281e-06 - 1.4204 -1.05654e-05 1.95522e-06 1.4204 1.05654e-05 -1.95522e-06 1.4204 3.28928e-05 -5.78281e-06 1.4204 5.94269e-05 -9.19956e-06 - 1.42041 9.55261e-05 -1.13992e-05 1.42043 0.00015231 -1.12941e-05 3.34429 -0.000118267 1.10896e-05 3.34426 -8.79113e-05 1.16287e-05 - 3.34425 -5.84353e-05 9.92757e-06 3.34425 -3.32e-05 6.49724e-06 3.34424 -1.07621e-05 2.24063e-06 3.34424 1.07621e-05 -2.24063e-06 - 3.34425 3.32e-05 -6.49724e-06 3.34425 5.84353e-05 -9.92757e-06 3.34426 8.79113e-05 -1.16287e-05 3.34429 0.000118267 -1.10896e-05 - 4.62353 -8.88097e-05 5.85756e-06 4.6235 -7.25011e-05 6.68029e-06 4.62349 -5.13652e-05 6.13706e-06 4.62348 -3.02095e-05 4.20892e-06 - 4.62348 -9.93714e-06 1.48417e-06 4.62348 9.93714e-06 -1.48417e-06 4.62348 3.02095e-05 -4.20892e-06 4.62349 5.13652e-05 -6.13706e-06 - 4.6235 7.25011e-05 -6.68029e-06 4.62353 8.88097e-05 -5.85756e-06 5.40409 -6.57366e-05 1.62127e-06 5.40407 -5.62171e-05 2.55087e-06 - 5.40406 -4.15926e-05 2.7727e-06 5.40405 -2.51704e-05 2.0661e-06 5.40405 -8.39287e-06 7.54723e-07 5.40405 8.39287e-06 -7.54723e-07 - 5.40405 2.51704e-05 -2.0661e-06 5.40406 4.15926e-05 -2.7727e-06 5.40407 5.62171e-05 -2.55087e-06 5.40409 6.57366e-05 -1.62127e-06 - 5.77323 -4.79949e-05 -7.82706e-07 5.77322 -4.19713e-05 1.35831e-07 5.77321 -3.18585e-05 7.18774e-07 5.7732 -1.96543e-05 7.11281e-07 - 5.7732 -6.61872e-06 2.84782e-07 5.7732 6.61872e-06 -2.84782e-07 5.7732 1.96543e-05 -7.11281e-07 5.77321 3.18585e-05 -7.18774e-07 - 5.77322 4.19713e-05 -1.35831e-07 5.77323 4.79949e-05 7.82706e-07 5.77143 -3.42984e-05 -1.86917e-06 5.77142 -3.02515e-05 -1.02678e-06 - 5.77141 -2.32386e-05 -3.2944e-07 5.7714 -1.44826e-05 -8.23376e-09 5.7714 -4.90446e-06 3.01988e-08 5.7714 4.90446e-06 -3.01988e-08 - 5.7714 1.44826e-05 8.23376e-09 5.77141 2.32386e-05 3.2944e-07 5.77142 3.02515e-05 1.02678e-06 5.77143 3.42984e-05 1.86917e-06 - 5.39848 -2.35268e-05 -2.21915e-06 5.39847 -2.06897e-05 -1.48713e-06 5.39846 -1.58869e-05 -8.01909e-07 5.39846 -9.91368e-06 -3.55496e-07 - 5.39845 -3.36115e-06 -9.63936e-08 5.39845 3.36115e-06 9.63936e-08 5.39846 9.91368e-06 3.55496e-07 5.39846 1.58869e-05 8.01909e-07 - 5.39847 2.06897e-05 1.48713e-06 5.39848 2.35268e-05 2.21915e-06 4.61349 -1.48364e-05 -2.19286e-06 4.61349 -1.2788e-05 -1.59875e-06 - 4.61348 -9.66689e-06 -9.89663e-07 4.61348 -5.98054e-06 -5.16991e-07 4.61347 -2.0205e-06 -1.58604e-07 4.61347 2.0205e-06 1.58604e-07 - 4.61348 5.98054e-06 5.16991e-07 4.61348 9.66689e-06 9.89663e-07 4.61349 1.2788e-05 1.59875e-06 4.61349 1.48364e-05 2.19286e-06 - 3.32871 -7.70235e-06 -1.89566e-06 3.3287 -6.28308e-06 -1.48247e-06 3.3287 -4.57008e-06 -9.99453e-07 3.32869 -2.76975e-06 -5.63562e-07 - 3.32869 -9.27801e-07 -1.80994e-07 3.32869 9.27801e-07 1.80994e-07 3.32869 2.76975e-06 5.63562e-07 3.3287 4.57008e-06 9.99453e-07 - 3.3287 6.28308e-06 1.48247e-06 3.32871 7.70235e-06 1.89566e-06 1.39751 -2.24016e-06 -1.1023e-06 1.3975 -1.68566e-06 -9.36505e-07 - 1.3975 -1.16047e-06 -6.73651e-07 1.3975 -6.83507e-07 -3.97409e-07 1.3975 -2.26324e-07 -1.30707e-07 1.3975 2.26324e-07 1.30707e-07 - 1.3975 6.83507e-07 3.97409e-07 1.3975 1.16047e-06 6.73651e-07 1.3975 1.68566e-06 9.36505e-07 1.39751 2.24016e-06 1.1023e-06 - 1.09156 -0.000148973 1.83567e-05 1.09153 -9.34595e-05 1.74993e-05 1.09152 -5.8223e-05 1.32459e-05 1.09152 -3.22515e-05 7.98582e-06 - 1.09152 -1.03622e-05 2.64796e-06 1.09152 1.03622e-05 -2.64796e-06 1.09152 3.22515e-05 -7.98582e-06 1.09152 5.8223e-05 -1.32459e-05 - 1.09153 9.34595e-05 -1.74993e-05 1.09156 0.000148973 -1.83567e-05 2.46259 -0.000108262 1.22774e-05 2.46256 -8.07126e-05 1.30119e-05 - 2.46255 -5.37321e-05 1.07858e-05 2.46254 -3.0536e-05 6.8671e-06 2.46254 -9.89746e-06 2.33371e-06 2.46254 9.89746e-06 -2.33371e-06 - 2.46254 3.0536e-05 -6.8671e-06 2.46255 5.37321e-05 -1.07858e-05 2.46256 8.07126e-05 -1.30119e-05 2.46259 0.000108262 -1.22774e-05 - 3.3356 -7.45883e-05 4.76874e-06 3.33558 -6.11106e-05 6.01342e-06 3.33556 -4.33347e-05 5.57114e-06 3.33556 -2.54726e-05 3.77508e-06 - 3.33555 -8.37389e-06 1.31929e-06 3.33555 8.37389e-06 -1.31929e-06 3.33556 2.54726e-05 -3.77508e-06 3.33556 4.33347e-05 -5.57114e-06 - 3.33558 6.11106e-05 -6.01342e-06 3.3356 7.45883e-05 -4.76874e-06 3.85626 -5.13148e-05 5.2639e-07 3.85624 -4.40746e-05 1.79541e-06 - 3.85623 -3.26624e-05 2.17147e-06 3.85623 -1.97631e-05 1.64143e-06 3.85622 -6.58676e-06 5.99156e-07 3.85622 6.58676e-06 -5.99156e-07 - 3.85623 1.97631e-05 -1.64143e-06 3.85623 3.26624e-05 -2.17147e-06 3.85624 4.40746e-05 -1.79541e-06 3.85626 5.13148e-05 -5.2639e-07 - 4.09985 -3.55625e-05 -1.36577e-06 4.09983 -3.12462e-05 -2.17458e-07 4.09983 -2.37781e-05 4.38755e-07 4.09982 -1.46785e-05 5.02969e-07 - 4.09982 -4.9428e-06 2.0601e-07 4.09982 4.9428e-06 -2.0601e-07 4.09982 1.46785e-05 -5.02969e-07 4.09983 2.37781e-05 -4.38755e-07 - 4.09983 3.12462e-05 2.17458e-07 4.09985 3.55625e-05 1.36577e-06 4.09866 -2.45793e-05 -2.02955e-06 4.09865 -2.17806e-05 -1.03465e-06 - 4.09864 -1.67809e-05 -3.34499e-07 4.09864 -1.04696e-05 -3.37313e-08 4.09864 -3.54629e-06 1.5879e-08 4.09864 3.54629e-06 -1.5879e-08 - 4.09864 1.04696e-05 3.37313e-08 4.09864 1.67809e-05 3.34499e-07 4.09865 2.17806e-05 1.03465e-06 4.09866 2.45793e-05 2.02955e-06 - 3.85255 -1.6539e-05 -2.137e-06 3.85254 -1.46034e-05 -1.2978e-06 3.85254 -1.12422e-05 -6.46978e-07 3.85253 -7.0219e-06 -2.72354e-07 - 3.85253 -2.38115e-06 -7.19531e-08 3.85253 2.38115e-06 7.19531e-08 3.85253 7.0219e-06 2.72354e-07 3.85254 1.12422e-05 6.46978e-07 - 3.85254 1.46034e-05 1.2978e-06 3.85255 1.6539e-05 2.137e-06 3.32886 -1.03433e-05 -2.00893e-06 3.32886 -8.9348e-06 -1.33129e-06 - 3.32885 -6.76033e-06 -7.67167e-07 3.32885 -4.18185e-06 -3.84447e-07 3.32885 -1.41236e-06 -1.15848e-07 3.32885 1.41236e-06 1.15848e-07 - 3.32885 4.18185e-06 3.84447e-07 3.32885 6.76033e-06 7.67167e-07 3.32886 8.9348e-06 1.33129e-06 3.32886 1.03433e-05 2.00893e-06 - 2.45183 -5.3802e-06 -1.71896e-06 2.45182 -4.37934e-06 -1.23575e-06 2.45182 -3.17681e-06 -7.88111e-07 2.45182 -1.9206e-06 -4.32324e-07 - 2.45181 -6.42418e-07 -1.37429e-07 2.45181 6.42418e-07 1.37429e-07 2.45182 1.9206e-06 4.32324e-07 2.45182 3.17681e-06 7.88111e-07 - 2.45182 4.37934e-06 1.23575e-06 2.45183 5.3802e-06 1.71896e-06 1.07486 -1.57756e-06 -1.0431e-06 1.07486 -1.1782e-06 -8.29077e-07 - 1.07485 -8.05046e-07 -5.74158e-07 1.07485 -4.71433e-07 -3.33375e-07 1.07485 -1.5562e-07 -1.09108e-07 1.07485 1.5562e-07 1.09108e-07 - 1.07485 4.71433e-07 3.33375e-07 1.07485 8.05046e-07 5.74158e-07 1.07486 1.1782e-06 8.29077e-07 1.07486 1.57756e-06 1.0431e-06 - 0.531907 -0.000131015 1.10071e-05 0.531874 -8.05443e-05 1.01613e-05 0.531867 -4.9791e-05 7.43124e-06 0.531867 -2.75035e-05 4.3817e-06 - 0.531867 -8.8288e-06 1.43803e-06 0.531867 8.8288e-06 -1.43803e-06 0.531867 2.75035e-05 -4.3817e-06 0.531867 4.9791e-05 -7.43124e-06 - 0.531874 8.05443e-05 -1.01613e-05 0.531907 0.000131015 -1.10071e-05 1.07891 -7.04888e-05 5.82994e-06 1.07889 -5.20036e-05 6.21463e-06 - 1.07888 -3.42736e-05 5.03644e-06 1.07887 -1.93565e-05 3.14255e-06 1.07887 -6.25652e-06 1.05672e-06 1.07887 6.25652e-06 -1.05672e-06 - 1.07887 1.93565e-05 -3.14255e-06 1.07888 3.42736e-05 -5.03644e-06 1.07889 5.20036e-05 -6.21463e-06 1.07891 7.04888e-05 -5.82994e-06 - 1.4 -3.85139e-05 1.71765e-06 1.39999 -3.16353e-05 2.41736e-06 1.39998 -2.23007e-05 2.25446e-06 1.39998 -1.30274e-05 1.51085e-06 - 1.39998 -4.26801e-06 5.2384e-07 1.39998 4.26801e-06 -5.2384e-07 1.39998 1.30274e-05 -1.51085e-06 1.39998 2.23007e-05 -2.25446e-06 - 1.39999 3.16353e-05 -2.41736e-06 1.4 3.85139e-05 -1.71765e-06 1.5855 -2.29231e-05 -1.22857e-07 1.58549 -1.98812e-05 5.55267e-07 - 1.58549 -1.47284e-05 7.66777e-07 1.58548 -8.88019e-06 5.87873e-07 1.58548 -2.95218e-06 2.14357e-07 1.58548 2.95218e-06 -2.14357e-07 - 1.58548 8.88019e-06 -5.87873e-07 1.58549 1.47284e-05 -7.66777e-07 1.58549 1.98812e-05 -5.55267e-07 1.5855 2.29231e-05 1.22857e-07 - 1.67123 -1.46662e-05 -7.81168e-07 1.67123 -1.30422e-05 -1.94784e-07 1.67122 -9.95592e-06 1.12924e-07 1.67122 -6.1389e-06 1.59829e-07 - 1.67122 -2.06428e-06 6.71438e-08 1.67122 2.06428e-06 -6.71438e-08 1.67122 6.1389e-06 -1.59829e-07 1.67122 9.95592e-06 -1.12924e-07 - 1.67123 1.30422e-05 1.94784e-07 1.67123 1.46662e-05 7.81168e-07 1.67082 -9.73718e-06 -9.42623e-07 1.67081 -8.73132e-06 -4.49587e-07 - 1.67081 -6.75379e-06 -1.43633e-07 1.67081 -4.21266e-06 -2.05054e-08 1.67081 -1.4256e-06 3.17412e-09 1.67081 1.4256e-06 -3.17412e-09 - 1.67081 4.21266e-06 2.05054e-08 1.67081 6.75379e-06 1.43633e-07 1.67081 8.73132e-06 4.49587e-07 1.67082 9.73718e-06 9.42623e-07 - 1.58419 -6.43653e-06 -9.19233e-07 1.58419 -5.7367e-06 -5.09642e-07 1.58419 -4.42514e-06 -2.35552e-07 1.58418 -2.76013e-06 -9.42439e-08 - 1.58418 -9.34631e-07 -2.42746e-08 1.58418 9.34631e-07 2.42746e-08 1.58418 2.76013e-06 9.42439e-08 1.58419 4.42514e-06 2.35552e-07 - 1.58419 5.7367e-06 5.09642e-07 1.58419 6.43653e-06 9.19233e-07 1.39759 -4.01202e-06 -8.34257e-07 1.39758 -3.47274e-06 -5.03785e-07 - 1.39758 -2.61559e-06 -2.70115e-07 1.39758 -1.60885e-06 -1.29784e-07 1.39758 -5.41484e-07 -3.84217e-08 1.39758 5.41484e-07 3.84217e-08 - 1.39758 1.60885e-06 1.29784e-07 1.39758 2.61559e-06 2.70115e-07 1.39758 3.47274e-06 5.03785e-07 1.39759 4.01202e-06 8.34257e-07 - 1.07488 -2.11211e-06 -7.08927e-07 1.07487 -1.69092e-06 -4.69111e-07 1.07487 -1.20178e-06 -2.83206e-07 1.07487 -7.15074e-07 -1.51335e-07 - 1.07487 -2.37191e-07 -4.76684e-08 1.07487 2.37191e-07 4.76684e-08 1.07487 7.15074e-07 1.51335e-07 1.07487 1.20178e-06 2.83206e-07 - 1.07487 1.69092e-06 4.69111e-07 1.07488 2.11211e-06 7.08927e-07 0.524957 -6.32411e-07 -4.45788e-07 0.524955 -4.52841e-07 -3.33085e-07 - 0.524954 -2.95646e-07 -2.23045e-07 0.524953 -1.67403e-07 -1.27856e-07 0.524953 -5.43211e-08 -4.17004e-08 0.524953 5.43211e-08 4.17004e-08 - 0.524953 1.67403e-07 1.27856e-07 0.524954 2.95646e-07 2.23045e-07 0.524955 4.52841e-07 3.33085e-07 0.524957 6.32411e-07 4.45788e-07 + 0.524973 -0.000131073 -1.09546e-05 0.524939 -8.06231e-05 -1.01188e-05 0.524933 -4.98492e-05 -7.40079e-06 0.524932 -2.75362e-05 -4.36369e-06 + 0.524933 -8.83915e-06 -1.43209e-06 0.524933 8.83915e-06 1.43209e-06 0.524932 2.75362e-05 4.36369e-06 0.524933 4.98492e-05 7.40079e-06 + 0.524939 8.06231e-05 1.01188e-05 0.524973 0.000131073 1.09546e-05 1.07469 -7.05891e-05 -5.832e-06 1.07467 -5.21369e-05 -6.22126e-06 + 1.07466 -3.43777e-05 -5.04361e-06 1.07465 -1.94173e-05 -3.14757e-06 1.07465 -6.27621e-06 -1.05848e-06 1.07465 6.27621e-06 1.05848e-06 + 1.07465 1.94173e-05 3.14757e-06 1.07466 3.43777e-05 5.04361e-06 1.07467 5.21369e-05 6.22126e-06 1.07469 7.05891e-05 5.832e-06 + 1.39719 -3.85813e-05 -1.72417e-06 1.39717 -3.17212e-05 -2.42588e-06 1.39717 -2.23748e-05 -2.26253e-06 1.39716 -1.30743e-05 -1.51637e-06 + 1.39716 -4.28373e-06 -5.25778e-07 1.39716 4.28373e-06 5.25778e-07 1.39716 1.30743e-05 1.51637e-06 1.39717 2.23748e-05 2.26253e-06 + 1.39717 3.17212e-05 2.42588e-06 1.39719 3.85813e-05 1.72417e-06 1.58354 -2.2964e-05 1.19078e-07 1.58353 -1.99305e-05 -5.60061e-07 + 1.58353 -1.47732e-05 -7.71379e-07 1.58352 -8.91016e-06 -5.91087e-07 1.58352 -2.96256e-06 -2.15498e-07 1.58352 2.96256e-06 2.15498e-07 + 1.58352 8.91016e-06 5.91087e-07 1.58353 1.47732e-05 7.71379e-07 1.58353 1.99305e-05 5.60061e-07 1.58354 2.2964e-05 -1.19078e-07 + 1.66985 -1.46911e-05 7.7978e-07 1.66985 -1.30704e-05 1.92721e-07 1.66984 -9.98201e-06 -1.15049e-07 1.66984 -6.1569e-06 -1.61369e-07 + 1.66984 -2.07064e-06 -6.76995e-08 1.66984 2.07064e-06 6.76995e-08 1.66984 6.1569e-06 1.61369e-07 1.66984 9.98201e-06 1.15049e-07 + 1.66985 1.30704e-05 -1.92721e-07 1.66985 1.46911e-05 -7.7978e-07 1.66985 -9.75272e-06 9.4257e-07 1.66984 -8.74789e-06 4.48988e-07 + 1.66984 -6.76893e-06 1.42835e-07 1.66984 -4.22321e-06 1.98749e-08 1.66984 -1.42936e-06 -3.40898e-09 1.66984 1.42936e-06 3.40898e-09 + 1.66984 4.22321e-06 -1.98749e-08 1.66984 6.76893e-06 -1.42835e-07 1.66984 8.74789e-06 -4.48988e-07 1.66985 9.75272e-06 -9.42571e-07 + 1.58353 -6.44624e-06 9.19804e-07 1.58352 -5.74651e-06 5.09739e-07 1.58352 -4.43384e-06 2.35397e-07 1.58352 -2.76615e-06 9.40615e-08 + 1.58352 -9.36778e-07 2.41994e-08 1.58352 9.36778e-07 -2.41994e-08 1.58352 2.76615e-06 -9.40615e-08 1.58352 4.43384e-06 -2.35397e-07 + 1.58352 5.74651e-06 -5.09739e-07 1.58353 6.44624e-06 -9.19804e-07 1.39715 -4.01781e-06 8.35063e-07 1.39715 -3.47824e-06 5.04191e-07 + 1.39715 -2.62026e-06 2.70265e-07 1.39715 -1.61201e-06 1.29822e-07 1.39715 -5.42604e-07 3.84262e-08 1.39715 5.42604e-07 -3.84262e-08 + 1.39715 1.61201e-06 -1.29822e-07 1.39715 2.62026e-06 -2.70265e-07 1.39715 3.47824e-06 -5.04191e-07 1.39715 4.01781e-06 -8.35063e-07 + 1.07463 -2.11506e-06 7.09746e-07 1.07463 -1.69345e-06 4.69632e-07 1.07463 -1.20379e-06 2.83507e-07 1.07463 -7.1639e-07 1.5149e-07 + 1.07462 -2.37652e-07 4.77163e-08 1.07462 2.37652e-07 -4.77163e-08 1.07463 7.1639e-07 -1.5149e-07 1.07463 1.20379e-06 -2.83507e-07 + 1.07463 1.69345e-06 -4.69632e-07 1.07463 2.11506e-06 -7.09746e-07 0.524878 -6.33276e-07 4.46357e-07 0.524877 -4.53495e-07 3.33516e-07 + 0.524875 -2.96119e-07 2.23341e-07 0.524874 -1.677e-07 1.2803e-07 0.524874 -5.44238e-08 4.17582e-08 0.524874 5.44238e-08 -4.17582e-08 + 0.524874 1.677e-07 -1.2803e-07 0.524875 2.96119e-07 -2.23341e-07 0.524877 4.53495e-07 -3.33516e-07 0.524878 6.33276e-07 -4.46357e-07 + 1.07482 -0.000149021 -1.8245e-05 1.07479 -9.35351e-05 -1.74052e-05 1.07478 -5.82804e-05 -1.31757e-05 1.07478 -3.22836e-05 -7.9431e-06 + 1.07478 -1.03722e-05 -2.63369e-06 1.07478 1.03722e-05 2.63369e-06 1.07478 3.22836e-05 7.9431e-06 1.07478 5.82804e-05 1.31757e-05 + 1.07479 9.35351e-05 1.74052e-05 1.07482 0.000149021 1.8245e-05 2.45125 -0.000108362 -1.22759e-05 2.45122 -8.08581e-05 -1.30202e-05 + 2.4512 -5.385e-05 -1.07966e-05 2.4512 -3.0606e-05 -6.87511e-06 2.4512 -9.92013e-06 -2.33658e-06 2.4512 9.92013e-06 2.33658e-06 + 2.4512 3.0606e-05 6.87511e-06 2.4512 5.385e-05 1.07966e-05 2.45122 8.08581e-05 1.30202e-05 2.45125 0.000108362 1.22759e-05 + 3.32769 -7.46829e-05 -4.78304e-06 3.32767 -6.1231e-05 -6.03211e-06 3.32765 -4.34413e-05 -5.58919e-06 3.32765 -2.55412e-05 -3.78764e-06 + 3.32764 -8.39714e-06 -1.32374e-06 3.32764 8.39714e-06 1.32374e-06 3.32765 2.55412e-05 3.78764e-06 3.32765 4.34413e-05 5.58919e-06 + 3.32767 6.1231e-05 6.03211e-06 3.32769 7.46829e-05 4.78304e-06 3.85066 -5.1388e-05 -5.36727e-07 3.85065 -4.41593e-05 -1.80787e-06 + 3.85063 -3.27398e-05 -2.18338e-06 3.85063 -1.98153e-05 -1.64981e-06 3.85063 -6.60497e-06 -6.02145e-07 3.85063 6.60497e-06 6.02145e-07 + 3.85063 1.98153e-05 1.64981e-06 3.85063 3.27398e-05 2.18338e-06 3.85065 4.41593e-05 1.80787e-06 3.85066 5.1388e-05 5.36727e-07 + 4.09587 -3.56149e-05 1.36093e-06 4.09586 -3.13028e-05 2.11286e-07 4.09585 -2.38297e-05 -4.44888e-07 4.09584 -1.4714e-05 -5.0739e-07 + 4.09584 -4.9554e-06 -2.07608e-07 4.09584 4.9554e-06 2.07608e-07 4.09584 1.4714e-05 5.0739e-07 4.09585 2.38297e-05 4.44888e-07 + 4.09586 3.13028e-05 -2.11286e-07 4.09587 3.56149e-05 -1.36093e-06 4.09586 -2.46154e-05 2.02839e-06 4.09585 -2.18175e-05 1.03241e-06 + 4.09584 -1.6814e-05 3.31928e-07 4.09583 -1.04925e-05 3.1762e-08 4.09583 -3.55443e-06 -1.66081e-08 4.09583 3.55443e-06 1.66081e-08 + 4.09583 1.04925e-05 -3.1762e-08 4.09584 1.6814e-05 -3.31928e-07 4.09585 2.18175e-05 -1.03241e-06 4.09586 2.46154e-05 -2.02839e-06 + 3.85062 -1.6563e-05 2.13781e-06 3.85061 -1.46268e-05 1.29766e-06 3.85061 -1.12625e-05 6.46315e-07 3.8506 -7.03583e-06 2.71711e-07 + 3.8506 -2.38611e-06 7.16969e-08 3.8506 2.38611e-06 -7.16969e-08 3.8506 7.03583e-06 -2.71711e-07 3.85061 1.12625e-05 -6.46315e-07 + 3.85061 1.46268e-05 -1.29766e-06 3.85062 1.6563e-05 -2.13781e-06 3.32761 -1.0358e-05 2.01061e-06 3.3276 -8.94852e-06 1.33217e-06 + 3.3276 -6.77181e-06 7.67467e-07 3.32759 -4.18957e-06 3.84489e-07 3.32759 -1.41509e-06 1.15839e-07 3.32759 1.41509e-06 -1.15839e-07 + 3.32759 4.18957e-06 -3.84489e-07 3.3276 6.77181e-06 -7.67467e-07 3.3276 8.94852e-06 -1.33217e-06 3.32761 1.0358e-05 -2.01061e-06 + 2.45112 -5.38775e-06 1.72081e-06 2.45112 -4.38586e-06 1.23701e-06 2.45111 -3.18199e-06 7.88862e-07 2.45111 -1.92399e-06 4.32712e-07 + 2.45111 -6.43606e-07 1.37548e-07 2.45111 6.43606e-07 -1.37548e-07 2.45111 1.92399e-06 -4.32712e-07 2.45111 3.18199e-06 -7.88862e-07 + 2.45112 4.38586e-06 -1.23701e-06 2.45112 5.38775e-06 -1.72081e-06 1.07463 -1.57975e-06 1.04437e-06 1.07463 -1.17992e-06 8.3009e-07 + 1.07463 -8.06332e-07 5.74866e-07 1.07463 -4.72251e-07 3.33792e-07 1.07462 -1.55904e-07 1.09245e-07 1.07462 1.55904e-07 -1.09245e-07 + 1.07463 4.72251e-07 -3.33792e-07 1.07463 8.06332e-07 -5.74866e-07 1.07463 1.17992e-06 -8.3009e-07 1.07463 1.57975e-06 -1.04437e-06 + 1.3974 -0.000152339 -1.11916e-05 1.39737 -9.55833e-05 -1.13086e-05 1.39737 -5.94702e-05 -9.12861e-06 1.39736 -3.29162e-05 -5.73816e-06 + 1.39736 -1.05725e-05 -1.94006e-06 1.39736 1.05725e-05 1.94006e-06 1.39736 3.29162e-05 5.73816e-06 1.39737 5.94702e-05 9.12861e-06 + 1.39737 9.55833e-05 1.13086e-05 1.3974 0.000152339 1.11916e-05 3.32778 -0.000118338 -1.10794e-05 3.32775 -8.80283e-05 -1.16273e-05 + 3.32774 -5.85313e-05 -9.93051e-06 3.32773 -3.32565e-05 -6.50033e-06 3.32773 -1.07803e-05 -2.24185e-06 3.32773 1.07803e-05 2.24185e-06 + 3.32773 3.32565e-05 6.50033e-06 3.32774 5.85313e-05 9.93051e-06 3.32775 8.80283e-05 1.16273e-05 3.32778 0.000118338 1.10794e-05 + 4.61165 -8.8893e-05 -5.87045e-06 4.61163 -7.26104e-05 -6.69737e-06 4.61162 -5.14634e-05 -6.15409e-06 4.61161 -3.02732e-05 -4.22107e-06 + 4.61161 -9.9588e-06 -1.48852e-06 4.61161 9.9588e-06 1.48852e-06 4.61161 3.02732e-05 4.22107e-06 4.61162 5.14634e-05 6.15409e-06 + 4.61163 7.26104e-05 6.69737e-06 4.61165 8.8893e-05 5.87045e-06 5.39554 -6.5812e-05 -1.63374e-06 5.39553 -5.63039e-05 -2.56523e-06 + 5.39551 -4.16723e-05 -2.78638e-06 5.39551 -2.52246e-05 -2.07579e-06 5.3955 -8.41184e-06 -7.58204e-07 5.3955 8.41184e-06 7.58204e-07 + 5.39551 2.52246e-05 2.07579e-06 5.39551 4.16723e-05 2.78638e-06 5.39553 5.63039e-05 2.56523e-06 5.39554 6.5812e-05 1.63374e-06 + 5.7671 -4.80555e-05 7.75506e-07 5.76709 -4.20357e-05 -1.44108e-07 5.76708 -3.19169e-05 -7.26745e-07 5.76707 -1.96946e-05 -7.17001e-07 + 5.76707 -6.63305e-06 -2.86852e-07 5.76707 6.63305e-06 2.86852e-07 5.76707 1.96946e-05 7.17001e-07 5.76708 3.19169e-05 7.26745e-07 + 5.76709 4.20357e-05 1.44108e-07 5.7671 4.80555e-05 -7.75506e-07 5.76708 -3.43437e-05 1.86645e-06 5.76707 -3.0297e-05 1.02321e-06 + 5.76707 -2.32789e-05 3.25723e-07 5.76706 -1.45104e-05 5.45655e-09 5.76706 -4.91436e-06 -3.12212e-08 5.76706 4.91436e-06 3.12212e-08 + 5.76706 1.45104e-05 -5.45655e-09 5.76707 2.32789e-05 -3.25723e-07 5.76707 3.0297e-05 -1.02321e-06 5.76708 3.43437e-05 -1.86645e-06 + 5.39548 -2.35585e-05 2.21918e-06 5.39547 -2.07203e-05 1.48639e-06 5.39547 -1.59132e-05 8.00738e-07 5.39546 -9.93154e-06 3.54485e-07 + 5.39546 -3.36749e-06 9.60016e-08 5.39546 3.36749e-06 -9.60016e-08 5.39546 9.93154e-06 -3.54485e-07 5.39547 1.59132e-05 -8.00738e-07 + 5.39547 2.07203e-05 -1.48639e-06 5.39548 2.35585e-05 -2.21918e-06 4.61154 -1.48566e-05 2.19427e-06 4.61154 -1.28066e-05 1.5995e-06 + 4.61153 -9.68226e-06 9.8986e-07 4.61153 -5.99081e-06 5.16945e-07 4.61152 -2.02412e-06 1.58559e-07 4.61152 2.02412e-06 -1.58559e-07 + 4.61153 5.99081e-06 -5.16945e-07 4.61153 9.68226e-06 -9.8986e-07 4.61154 1.28066e-05 -1.5995e-06 4.61154 1.48566e-05 -2.19427e-06 + 3.32761 -7.71282e-06 1.89748e-06 3.3276 -6.29208e-06 1.48381e-06 3.3276 -4.57718e-06 1.00028e-06 3.32759 -2.77437e-06 5.63987e-07 + 3.32759 -9.29416e-07 1.81123e-07 3.32759 9.29416e-07 -1.81123e-07 3.32759 2.77437e-06 -5.63987e-07 3.3276 4.57718e-06 -1.00028e-06 + 3.3276 6.29208e-06 -1.48381e-06 3.32761 7.71282e-06 -1.89748e-06 1.39715 -2.2432e-06 1.10354e-06 1.39715 -1.68805e-06 9.37555e-07 + 1.39715 -1.16225e-06 6.744e-07 1.39715 -6.84636e-07 3.97849e-07 1.39714 -2.26715e-07 1.30852e-07 1.39714 2.26715e-07 -1.30852e-07 + 1.39715 6.84636e-07 -3.97849e-07 1.39715 1.16225e-06 -6.744e-07 1.39715 1.68805e-06 -9.37555e-07 1.39715 2.2432e-06 -1.10354e-06 + 1.5838 -0.000152847 -5.56347e-06 1.58378 -9.56847e-05 -5.75187e-06 1.58377 -5.93917e-05 -4.83443e-06 1.58377 -3.28258e-05 -3.13349e-06 + 1.58377 -1.05372e-05 -1.07589e-06 1.58377 1.05372e-05 1.07589e-06 1.58377 3.28258e-05 3.13349e-06 1.58377 5.93917e-05 4.83443e-06 + 1.58378 9.56847e-05 5.75187e-06 1.5838 0.000152847 5.56347e-06 3.85081 -0.000120848 -6.9481e-06 3.85078 -8.9551e-05 -7.21429e-06 + 3.85077 -5.9335e-05 -6.26215e-06 3.85077 -3.36429e-05 -4.17475e-06 3.85076 -1.0896e-05 -1.45488e-06 3.85076 1.0896e-05 1.45488e-06 + 3.85077 3.36429e-05 4.17475e-06 3.85077 5.9335e-05 6.26215e-06 3.85078 8.9551e-05 7.21429e-06 3.85081 0.000120848 6.9481e-06 + 5.39561 -9.39717e-05 -4.40354e-06 5.39558 -7.65298e-05 -4.78734e-06 5.39557 -5.41108e-05 -4.36983e-06 5.39556 -3.17893e-05 -3.01842e-06 + 5.39556 -1.04525e-05 -1.07065e-06 5.39556 1.04525e-05 1.07065e-06 5.39556 3.17893e-05 3.01842e-06 5.39557 5.41108e-05 4.36983e-06 + 5.39558 7.65298e-05 4.78734e-06 5.39561 9.39717e-05 4.40354e-06 6.35276 -7.22485e-05 -1.64284e-06 6.35274 -6.16565e-05 -2.12342e-06 + 6.35273 -4.55487e-05 -2.18422e-06 6.35272 -2.75464e-05 -1.6118e-06 6.35271 -9.18348e-06 -5.88772e-07 6.35271 9.18348e-06 5.88772e-07 + 6.35272 2.75464e-05 1.6118e-06 6.35273 4.55487e-05 2.18422e-06 6.35274 6.16565e-05 2.12342e-06 6.35276 7.22485e-05 1.64284e-06 + 6.80992 -5.44673e-05 2.02364e-07 6.80991 -4.75331e-05 -3.16574e-07 6.8099 -3.60236e-05 -6.57415e-07 6.80989 -2.22075e-05 -6.01928e-07 + 6.80988 -7.47685e-06 -2.374e-07 6.80988 7.47685e-06 2.374e-07 6.80989 2.22075e-05 6.01928e-07 6.8099 3.60236e-05 6.57415e-07 + 6.80991 4.75331e-05 3.16574e-07 6.80992 5.44673e-05 -2.02364e-07 6.8099 -3.98433e-05 1.16187e-06 6.80989 -3.50696e-05 6.57638e-07 + 6.80988 -2.68932e-05 1.99973e-07 6.80987 -1.67448e-05 -1.71588e-08 6.80987 -5.6686e-06 -3.06476e-08 6.80987 5.6686e-06 3.06476e-08 + 6.80987 1.67448e-05 1.71588e-08 6.80988 2.68932e-05 -1.99973e-07 6.80989 3.50696e-05 -6.57638e-07 6.8099 3.98433e-05 -1.16187e-06 + 6.35268 -2.77428e-05 1.54235e-06 6.35268 -2.43506e-05 1.08999e-06 6.35267 -1.86664e-05 6.16302e-07 6.35266 -1.1637e-05 2.82401e-07 + 6.35266 -3.94394e-06 7.79004e-08 6.35266 3.94394e-06 -7.79004e-08 6.35266 1.1637e-05 -2.82401e-07 6.35267 1.86664e-05 -6.16302e-07 + 6.35268 2.43506e-05 -1.08999e-06 6.35268 2.77428e-05 -1.54235e-06 5.39548 -1.7629e-05 1.58963e-06 5.39547 -1.51742e-05 1.21878e-06 + 5.39546 -1.14562e-05 7.87437e-07 5.39546 -7.08257e-06 4.22594e-07 5.39545 -2.39219e-06 1.31259e-07 5.39545 2.39219e-06 -1.31259e-07 + 5.39546 7.08257e-06 -4.22594e-07 5.39546 1.14562e-05 -7.87437e-07 5.39547 1.51742e-05 -1.21878e-06 5.39548 1.7629e-05 -1.58963e-06 + 3.85061 -9.15894e-06 1.38737e-06 3.85061 -7.471e-06 1.13307e-06 3.8506 -5.4325e-06 7.89923e-07 3.8506 -3.29202e-06 4.53846e-07 + 3.85059 -1.10276e-06 1.4689e-07 3.85059 1.10276e-06 -1.4689e-07 3.8506 3.29202e-06 -4.53846e-07 3.8506 5.4325e-06 -7.89923e-07 + 3.85061 7.471e-06 -1.13307e-06 3.85061 9.15894e-06 -1.38737e-06 1.58352 -2.65453e-06 7.85765e-07 1.58352 -2.00034e-06 6.90967e-07 + 1.58352 -1.37819e-06 5.09251e-07 1.58351 -8.12178e-07 3.0408e-07 1.58351 -2.69021e-07 1.00455e-07 1.58351 2.69021e-07 -1.00455e-07 + 1.58351 8.12178e-07 -3.0408e-07 1.58352 1.37819e-06 -5.09251e-07 1.58352 2.00034e-06 -6.90967e-07 1.58352 2.65453e-06 -7.85765e-07 + 1.67013 -0.000152885 -1.66224e-06 1.67011 -9.55899e-05 -1.72966e-06 1.67011 -5.92548e-05 -1.48069e-06 1.67011 -3.2722e-05 -9.74741e-07 + 1.67011 -1.04998e-05 -3.3743e-07 1.67011 1.04998e-05 3.3743e-07 1.67011 3.2722e-05 9.74741e-07 1.67011 5.92548e-05 1.48069e-06 + 1.67011 9.55899e-05 1.72966e-06 1.67013 0.000152885 1.66224e-06 4.09605 -0.000121405 -2.31257e-06 4.09602 -8.97777e-05 -2.38586e-06 + 4.09601 -5.93563e-05 -2.08466e-06 4.09601 -3.36052e-05 -1.40195e-06 4.09601 -1.08763e-05 -4.91133e-07 4.09601 1.08763e-05 4.91133e-07 + 4.09601 3.36052e-05 1.40195e-06 4.09601 5.93563e-05 2.08466e-06 4.09602 8.97777e-05 2.38586e-06 4.09605 0.000121405 2.31257e-06 + 5.7672 -9.55349e-05 -1.59196e-06 5.76718 -7.76806e-05 -1.6962e-06 5.76717 -5.48361e-05 -1.5424e-06 5.76716 -3.21803e-05 -1.06861e-06 + 5.76716 -1.05756e-05 -3.80091e-07 5.76716 1.05756e-05 3.80091e-07 5.76716 3.21803e-05 1.06861e-06 5.76717 5.48361e-05 1.5424e-06 + 5.76718 7.76806e-05 1.6962e-06 5.7672 9.55349e-05 1.59196e-06 6.80996 -7.4609e-05 -6.649e-07 6.80994 -6.35967e-05 -8.05995e-07 + 6.80993 -4.6929e-05 -8.09846e-07 6.80992 -2.83606e-05 -5.94727e-07 6.80992 -9.45185e-06 -2.17215e-07 6.80992 9.45185e-06 2.17215e-07 + 6.80992 2.83606e-05 5.94727e-07 6.80993 4.6929e-05 8.09846e-07 6.80994 6.35967e-05 8.05995e-07 6.80996 7.4609e-05 6.649e-07 + 7.30993 -5.70876e-05 8.01082e-09 7.30991 -4.97701e-05 -1.53901e-07 7.3099 -3.76821e-05 -2.6051e-07 7.30989 -2.32155e-05 -2.30949e-07 + 7.30989 -7.81407e-06 -9.04561e-08 7.30989 7.81407e-06 9.04561e-08 7.30989 2.32155e-05 2.30949e-07 7.3099 3.76821e-05 2.6051e-07 + 7.30991 4.97701e-05 1.53901e-07 7.30993 5.70876e-05 -8.01083e-09 7.3099 -4.22507e-05 3.81233e-07 7.30989 -3.71536e-05 2.17856e-07 + 7.30988 -2.84639e-05 6.33443e-08 7.30987 -1.77114e-05 -1.07283e-08 7.30987 -5.99407e-06 -1.26255e-08 7.30987 5.99407e-06 1.26254e-08 + 7.30987 1.77114e-05 1.07283e-08 7.30988 2.84639e-05 -6.33443e-08 7.30989 3.71536e-05 -2.17856e-07 7.3099 4.22507e-05 -3.81233e-07 + 6.80988 -2.96536e-05 5.41168e-07 6.80987 -2.60048e-05 3.91521e-07 6.80987 -1.99156e-05 2.26482e-07 6.80986 -1.24077e-05 1.05565e-07 + 6.80986 -4.20384e-06 2.93963e-08 6.80986 4.20384e-06 -2.93963e-08 6.80986 1.24077e-05 -1.05565e-07 6.80987 1.99156e-05 -2.26482e-07 + 6.80987 2.60048e-05 -3.91521e-07 6.80988 2.96536e-05 -5.41168e-07 5.76707 -1.89249e-05 5.70904e-07 5.76706 -1.62779e-05 4.47258e-07 + 5.76705 -1.22792e-05 2.94779e-07 5.76705 -7.58679e-06 1.60316e-07 5.76704 -2.56175e-06 5.01127e-08 5.76704 2.56175e-06 -5.01127e-08 + 5.76705 7.58679e-06 -1.60316e-07 5.76705 1.22792e-05 -2.94779e-07 5.76706 1.62779e-05 -4.47258e-07 5.76707 1.89249e-05 -5.70904e-07 + 4.09584 -9.84127e-06 5.00954e-07 4.09583 -8.02484e-06 4.16643e-07 4.09583 -5.83161e-06 2.95001e-07 4.09582 -3.53211e-06 1.71082e-07 + 4.09582 -1.1829e-06 5.55979e-08 4.09582 1.1829e-06 -5.55979e-08 4.09582 3.53211e-06 -1.71082e-07 4.09583 5.83161e-06 -2.95001e-07 + 4.09583 8.02484e-06 -4.16643e-07 4.09584 9.84127e-06 -5.00954e-07 1.66984 -2.84882e-06 2.80237e-07 1.66984 -2.1468e-06 2.49986e-07 + 1.66984 -1.47841e-06 1.86376e-07 1.66983 -8.70854e-07 1.11993e-07 1.66983 -2.8839e-07 3.70907e-08 1.66983 2.8839e-07 -3.70907e-08 + 1.66983 8.70854e-07 -1.11993e-07 1.66984 1.47841e-06 -1.86376e-07 1.66984 2.1468e-06 -2.49986e-07 1.66984 2.84882e-06 -2.80237e-07 + 1.67013 -0.000152885 1.66224e-06 1.67011 -9.55899e-05 1.72966e-06 1.67011 -5.92548e-05 1.48069e-06 1.67011 -3.2722e-05 9.74741e-07 + 1.67011 -1.04998e-05 3.3743e-07 1.67011 1.04998e-05 -3.3743e-07 1.67011 3.2722e-05 -9.74741e-07 1.67011 5.92548e-05 -1.48069e-06 + 1.67011 9.55899e-05 -1.72966e-06 1.67013 0.000152885 -1.66224e-06 4.09605 -0.000121405 2.31257e-06 4.09602 -8.97777e-05 2.38586e-06 + 4.09601 -5.93563e-05 2.08466e-06 4.09601 -3.36052e-05 1.40195e-06 4.09601 -1.08763e-05 4.91133e-07 4.09601 1.08763e-05 -4.91133e-07 + 4.09601 3.36052e-05 -1.40195e-06 4.09601 5.93563e-05 -2.08466e-06 4.09602 8.97777e-05 -2.38586e-06 4.09605 0.000121405 -2.31257e-06 + 5.7672 -9.55349e-05 1.59196e-06 5.76718 -7.76806e-05 1.6962e-06 5.76717 -5.48361e-05 1.5424e-06 5.76716 -3.21803e-05 1.06861e-06 + 5.76716 -1.05756e-05 3.80091e-07 5.76716 1.05756e-05 -3.80091e-07 5.76716 3.21803e-05 -1.06861e-06 5.76717 5.48361e-05 -1.5424e-06 + 5.76718 7.76806e-05 -1.6962e-06 5.7672 9.55349e-05 -1.59196e-06 6.80996 -7.4609e-05 6.649e-07 6.80994 -6.35967e-05 8.05995e-07 + 6.80993 -4.6929e-05 8.09846e-07 6.80992 -2.83606e-05 5.94727e-07 6.80992 -9.45185e-06 2.17215e-07 6.80992 9.45185e-06 -2.17215e-07 + 6.80992 2.83606e-05 -5.94727e-07 6.80993 4.6929e-05 -8.09846e-07 6.80994 6.35967e-05 -8.05995e-07 6.80996 7.4609e-05 -6.649e-07 + 7.30993 -5.70876e-05 -8.01083e-09 7.30991 -4.97701e-05 1.53901e-07 7.3099 -3.76821e-05 2.6051e-07 7.30989 -2.32155e-05 2.30949e-07 + 7.30989 -7.81407e-06 9.04561e-08 7.30989 7.81407e-06 -9.04561e-08 7.30989 2.32155e-05 -2.30949e-07 7.3099 3.76821e-05 -2.6051e-07 + 7.30991 4.97701e-05 -1.53901e-07 7.30993 5.70876e-05 8.01083e-09 7.3099 -4.22507e-05 -3.81233e-07 7.30989 -3.71536e-05 -2.17856e-07 + 7.30988 -2.84639e-05 -6.33443e-08 7.30987 -1.77114e-05 1.07283e-08 7.30987 -5.99407e-06 1.26254e-08 7.30987 5.99407e-06 -1.26255e-08 + 7.30987 1.77114e-05 -1.07283e-08 7.30988 2.84639e-05 6.33443e-08 7.30989 3.71536e-05 2.17856e-07 7.3099 4.22507e-05 3.81233e-07 + 6.80988 -2.96536e-05 -5.41168e-07 6.80987 -2.60048e-05 -3.91521e-07 6.80987 -1.99156e-05 -2.26482e-07 6.80986 -1.24077e-05 -1.05565e-07 + 6.80986 -4.20384e-06 -2.93963e-08 6.80986 4.20384e-06 2.93963e-08 6.80986 1.24077e-05 1.05565e-07 6.80987 1.99156e-05 2.26482e-07 + 6.80987 2.60048e-05 3.91521e-07 6.80988 2.96536e-05 5.41168e-07 5.76707 -1.89249e-05 -5.70904e-07 5.76706 -1.62779e-05 -4.47258e-07 + 5.76705 -1.22792e-05 -2.94779e-07 5.76705 -7.58679e-06 -1.60316e-07 5.76704 -2.56175e-06 -5.01127e-08 5.76704 2.56175e-06 5.01126e-08 + 5.76705 7.58679e-06 1.60316e-07 5.76705 1.22792e-05 2.94779e-07 5.76706 1.62779e-05 4.47258e-07 5.76707 1.89249e-05 5.70904e-07 + 4.09584 -9.84127e-06 -5.00954e-07 4.09583 -8.02484e-06 -4.16643e-07 4.09583 -5.83161e-06 -2.95001e-07 4.09582 -3.53211e-06 -1.71082e-07 + 4.09582 -1.1829e-06 -5.55979e-08 4.09582 1.1829e-06 5.55979e-08 4.09582 3.53211e-06 1.71082e-07 4.09583 5.83161e-06 2.95001e-07 + 4.09583 8.02484e-06 4.16643e-07 4.09584 9.84127e-06 5.00954e-07 1.66984 -2.84882e-06 -2.80237e-07 1.66984 -2.1468e-06 -2.49986e-07 + 1.66984 -1.47841e-06 -1.86376e-07 1.66983 -8.70854e-07 -1.11993e-07 1.66983 -2.8839e-07 -3.70907e-08 1.66983 2.8839e-07 3.70907e-08 + 1.66983 8.70854e-07 1.11993e-07 1.66984 1.47841e-06 1.86376e-07 1.66984 2.1468e-06 2.49986e-07 1.66984 2.84882e-06 2.80237e-07 + 1.5838 -0.000152847 5.56347e-06 1.58378 -9.56847e-05 5.75187e-06 1.58377 -5.93917e-05 4.83443e-06 1.58377 -3.28258e-05 3.13349e-06 + 1.58377 -1.05372e-05 1.07589e-06 1.58377 1.05372e-05 -1.07589e-06 1.58377 3.28258e-05 -3.13349e-06 1.58377 5.93917e-05 -4.83443e-06 + 1.58378 9.56847e-05 -5.75187e-06 1.5838 0.000152847 -5.56347e-06 3.85081 -0.000120848 6.9481e-06 3.85078 -8.9551e-05 7.21429e-06 + 3.85077 -5.9335e-05 6.26215e-06 3.85077 -3.36429e-05 4.17475e-06 3.85076 -1.0896e-05 1.45488e-06 3.85076 1.0896e-05 -1.45488e-06 + 3.85077 3.36429e-05 -4.17475e-06 3.85077 5.9335e-05 -6.26215e-06 3.85078 8.9551e-05 -7.21429e-06 3.85081 0.000120848 -6.9481e-06 + 5.39561 -9.39717e-05 4.40354e-06 5.39558 -7.65298e-05 4.78734e-06 5.39557 -5.41108e-05 4.36983e-06 5.39556 -3.17893e-05 3.01842e-06 + 5.39556 -1.04525e-05 1.07065e-06 5.39556 1.04525e-05 -1.07065e-06 5.39556 3.17893e-05 -3.01842e-06 5.39557 5.41108e-05 -4.36983e-06 + 5.39558 7.65298e-05 -4.78734e-06 5.39561 9.39717e-05 -4.40354e-06 6.35276 -7.22485e-05 1.64284e-06 6.35274 -6.16565e-05 2.12342e-06 + 6.35273 -4.55487e-05 2.18422e-06 6.35272 -2.75464e-05 1.6118e-06 6.35271 -9.18348e-06 5.88772e-07 6.35271 9.18348e-06 -5.88772e-07 + 6.35272 2.75464e-05 -1.6118e-06 6.35273 4.55487e-05 -2.18422e-06 6.35274 6.16565e-05 -2.12342e-06 6.35276 7.22485e-05 -1.64284e-06 + 6.80992 -5.44673e-05 -2.02364e-07 6.80991 -4.75331e-05 3.16574e-07 6.8099 -3.60236e-05 6.57415e-07 6.80989 -2.22075e-05 6.01928e-07 + 6.80988 -7.47685e-06 2.374e-07 6.80988 7.47685e-06 -2.374e-07 6.80989 2.22075e-05 -6.01928e-07 6.8099 3.60236e-05 -6.57415e-07 + 6.80991 4.75331e-05 -3.16574e-07 6.80992 5.44673e-05 2.02364e-07 6.8099 -3.98433e-05 -1.16187e-06 6.80989 -3.50696e-05 -6.57638e-07 + 6.80988 -2.68932e-05 -1.99973e-07 6.80987 -1.67448e-05 1.71588e-08 6.80987 -5.6686e-06 3.06476e-08 6.80987 5.6686e-06 -3.06476e-08 + 6.80987 1.67448e-05 -1.71588e-08 6.80988 2.68932e-05 1.99973e-07 6.80989 3.50696e-05 6.57638e-07 6.8099 3.98433e-05 1.16187e-06 + 6.35268 -2.77428e-05 -1.54235e-06 6.35268 -2.43506e-05 -1.08999e-06 6.35267 -1.86664e-05 -6.16302e-07 6.35266 -1.1637e-05 -2.82401e-07 + 6.35266 -3.94394e-06 -7.79004e-08 6.35266 3.94394e-06 7.79004e-08 6.35266 1.1637e-05 2.82401e-07 6.35267 1.86664e-05 6.16302e-07 + 6.35268 2.43506e-05 1.08999e-06 6.35268 2.77428e-05 1.54235e-06 5.39548 -1.7629e-05 -1.58963e-06 5.39547 -1.51742e-05 -1.21878e-06 + 5.39546 -1.14562e-05 -7.87437e-07 5.39546 -7.08257e-06 -4.22594e-07 5.39545 -2.39219e-06 -1.31259e-07 5.39545 2.39219e-06 1.31259e-07 + 5.39546 7.08257e-06 4.22594e-07 5.39546 1.14562e-05 7.87437e-07 5.39547 1.51742e-05 1.21878e-06 5.39548 1.7629e-05 1.58963e-06 + 3.85061 -9.15894e-06 -1.38737e-06 3.85061 -7.471e-06 -1.13307e-06 3.8506 -5.4325e-06 -7.89923e-07 3.8506 -3.29202e-06 -4.53846e-07 + 3.85059 -1.10276e-06 -1.4689e-07 3.85059 1.10276e-06 1.4689e-07 3.8506 3.29202e-06 4.53846e-07 3.8506 5.4325e-06 7.89923e-07 + 3.85061 7.471e-06 1.13307e-06 3.85061 9.15894e-06 1.38737e-06 1.58352 -2.65453e-06 -7.85765e-07 1.58352 -2.00034e-06 -6.90967e-07 + 1.58352 -1.37819e-06 -5.09251e-07 1.58351 -8.12178e-07 -3.0408e-07 1.58351 -2.69021e-07 -1.00455e-07 1.58351 2.69021e-07 1.00455e-07 + 1.58351 8.12178e-07 3.0408e-07 1.58352 1.37819e-06 5.09251e-07 1.58352 2.00034e-06 6.90967e-07 1.58352 2.65453e-06 7.85765e-07 + 1.3974 -0.000152339 1.11916e-05 1.39737 -9.55833e-05 1.13086e-05 1.39737 -5.94702e-05 9.12861e-06 1.39736 -3.29162e-05 5.73816e-06 + 1.39736 -1.05725e-05 1.94006e-06 1.39736 1.05725e-05 -1.94006e-06 1.39736 3.29162e-05 -5.73816e-06 1.39737 5.94702e-05 -9.12861e-06 + 1.39737 9.55833e-05 -1.13086e-05 1.3974 0.000152339 -1.11916e-05 3.32778 -0.000118338 1.10794e-05 3.32775 -8.80283e-05 1.16273e-05 + 3.32774 -5.85313e-05 9.93051e-06 3.32773 -3.32565e-05 6.50033e-06 3.32773 -1.07803e-05 2.24185e-06 3.32773 1.07803e-05 -2.24185e-06 + 3.32773 3.32565e-05 -6.50033e-06 3.32774 5.85313e-05 -9.93051e-06 3.32775 8.80283e-05 -1.16273e-05 3.32778 0.000118338 -1.10794e-05 + 4.61165 -8.8893e-05 5.87045e-06 4.61163 -7.26104e-05 6.69737e-06 4.61162 -5.14634e-05 6.15409e-06 4.61161 -3.02732e-05 4.22107e-06 + 4.61161 -9.9588e-06 1.48852e-06 4.61161 9.9588e-06 -1.48852e-06 4.61161 3.02732e-05 -4.22107e-06 4.61162 5.14634e-05 -6.15409e-06 + 4.61163 7.26104e-05 -6.69737e-06 4.61165 8.8893e-05 -5.87045e-06 5.39554 -6.5812e-05 1.63374e-06 5.39553 -5.63039e-05 2.56523e-06 + 5.39551 -4.16723e-05 2.78638e-06 5.39551 -2.52246e-05 2.07579e-06 5.3955 -8.41184e-06 7.58204e-07 5.3955 8.41184e-06 -7.58204e-07 + 5.39551 2.52246e-05 -2.07579e-06 5.39551 4.16723e-05 -2.78638e-06 5.39553 5.63039e-05 -2.56523e-06 5.39554 6.5812e-05 -1.63374e-06 + 5.7671 -4.80555e-05 -7.75506e-07 5.76709 -4.20357e-05 1.44108e-07 5.76708 -3.19169e-05 7.26745e-07 5.76707 -1.96946e-05 7.17001e-07 + 5.76707 -6.63305e-06 2.86852e-07 5.76707 6.63305e-06 -2.86852e-07 5.76707 1.96946e-05 -7.17001e-07 5.76708 3.19169e-05 -7.26745e-07 + 5.76709 4.20357e-05 -1.44108e-07 5.7671 4.80555e-05 7.75506e-07 5.76708 -3.43437e-05 -1.86645e-06 5.76707 -3.0297e-05 -1.02321e-06 + 5.76707 -2.32789e-05 -3.25723e-07 5.76706 -1.45104e-05 -5.45655e-09 5.76706 -4.91436e-06 3.12212e-08 5.76706 4.91436e-06 -3.12212e-08 + 5.76706 1.45104e-05 5.45655e-09 5.76707 2.32789e-05 3.25723e-07 5.76707 3.0297e-05 1.02321e-06 5.76708 3.43437e-05 1.86645e-06 + 5.39548 -2.35585e-05 -2.21918e-06 5.39547 -2.07203e-05 -1.48639e-06 5.39547 -1.59132e-05 -8.00738e-07 5.39546 -9.93154e-06 -3.54485e-07 + 5.39546 -3.36749e-06 -9.60016e-08 5.39546 3.36749e-06 9.60016e-08 5.39546 9.93154e-06 3.54485e-07 5.39547 1.59132e-05 8.00738e-07 + 5.39547 2.07203e-05 1.48639e-06 5.39548 2.35585e-05 2.21918e-06 4.61154 -1.48566e-05 -2.19427e-06 4.61154 -1.28066e-05 -1.5995e-06 + 4.61153 -9.68226e-06 -9.8986e-07 4.61153 -5.99081e-06 -5.16945e-07 4.61152 -2.02412e-06 -1.58559e-07 4.61152 2.02412e-06 1.58559e-07 + 4.61153 5.99081e-06 5.16945e-07 4.61153 9.68226e-06 9.8986e-07 4.61154 1.28066e-05 1.5995e-06 4.61154 1.48566e-05 2.19427e-06 + 3.32761 -7.71282e-06 -1.89748e-06 3.3276 -6.29208e-06 -1.48381e-06 3.3276 -4.57718e-06 -1.00028e-06 3.32759 -2.77437e-06 -5.63987e-07 + 3.32759 -9.29416e-07 -1.81123e-07 3.32759 9.29416e-07 1.81123e-07 3.32759 2.77437e-06 5.63987e-07 3.3276 4.57718e-06 1.00028e-06 + 3.3276 6.29208e-06 1.48381e-06 3.32761 7.71282e-06 1.89748e-06 1.39715 -2.2432e-06 -1.10354e-06 1.39715 -1.68805e-06 -9.37555e-07 + 1.39715 -1.16225e-06 -6.744e-07 1.39715 -6.84636e-07 -3.97849e-07 1.39714 -2.26715e-07 -1.30852e-07 1.39714 2.26715e-07 1.30852e-07 + 1.39715 6.84636e-07 3.97849e-07 1.39715 1.16225e-06 6.744e-07 1.39715 1.68805e-06 9.37555e-07 1.39715 2.2432e-06 1.10354e-06 + 1.07482 -0.000149021 1.8245e-05 1.07479 -9.35351e-05 1.74052e-05 1.07478 -5.82804e-05 1.31757e-05 1.07478 -3.22836e-05 7.9431e-06 + 1.07478 -1.03722e-05 2.63369e-06 1.07478 1.03722e-05 -2.63369e-06 1.07478 3.22836e-05 -7.9431e-06 1.07478 5.82804e-05 -1.31757e-05 + 1.07479 9.35351e-05 -1.74052e-05 1.07482 0.000149021 -1.8245e-05 2.45125 -0.000108362 1.22759e-05 2.45122 -8.08581e-05 1.30202e-05 + 2.4512 -5.385e-05 1.07966e-05 2.4512 -3.0606e-05 6.87511e-06 2.4512 -9.92013e-06 2.33658e-06 2.4512 9.92013e-06 -2.33658e-06 + 2.4512 3.0606e-05 -6.87511e-06 2.4512 5.385e-05 -1.07966e-05 2.45122 8.08581e-05 -1.30202e-05 2.45125 0.000108362 -1.22759e-05 + 3.32769 -7.46829e-05 4.78304e-06 3.32767 -6.1231e-05 6.03211e-06 3.32765 -4.34413e-05 5.58919e-06 3.32765 -2.55412e-05 3.78764e-06 + 3.32764 -8.39714e-06 1.32374e-06 3.32764 8.39714e-06 -1.32374e-06 3.32765 2.55412e-05 -3.78764e-06 3.32765 4.34413e-05 -5.58919e-06 + 3.32767 6.1231e-05 -6.03211e-06 3.32769 7.46829e-05 -4.78304e-06 3.85066 -5.1388e-05 5.36727e-07 3.85065 -4.41593e-05 1.80787e-06 + 3.85063 -3.27398e-05 2.18338e-06 3.85063 -1.98153e-05 1.64981e-06 3.85063 -6.60497e-06 6.02145e-07 3.85063 6.60497e-06 -6.02145e-07 + 3.85063 1.98153e-05 -1.64981e-06 3.85063 3.27398e-05 -2.18338e-06 3.85065 4.41593e-05 -1.80787e-06 3.85066 5.1388e-05 -5.36727e-07 + 4.09587 -3.56149e-05 -1.36093e-06 4.09586 -3.13028e-05 -2.11286e-07 4.09585 -2.38297e-05 4.44888e-07 4.09584 -1.4714e-05 5.0739e-07 + 4.09584 -4.9554e-06 2.07608e-07 4.09584 4.9554e-06 -2.07608e-07 4.09584 1.4714e-05 -5.0739e-07 4.09585 2.38297e-05 -4.44888e-07 + 4.09586 3.13028e-05 2.11286e-07 4.09587 3.56149e-05 1.36093e-06 4.09586 -2.46154e-05 -2.02839e-06 4.09585 -2.18175e-05 -1.03241e-06 + 4.09584 -1.6814e-05 -3.31928e-07 4.09583 -1.04925e-05 -3.1762e-08 4.09583 -3.55443e-06 1.66081e-08 4.09583 3.55443e-06 -1.66081e-08 + 4.09583 1.04925e-05 3.1762e-08 4.09584 1.6814e-05 3.31928e-07 4.09585 2.18175e-05 1.03241e-06 4.09586 2.46154e-05 2.02839e-06 + 3.85062 -1.6563e-05 -2.13781e-06 3.85061 -1.46268e-05 -1.29766e-06 3.85061 -1.12625e-05 -6.46315e-07 3.8506 -7.03583e-06 -2.71711e-07 + 3.8506 -2.38611e-06 -7.16969e-08 3.8506 2.38611e-06 7.16969e-08 3.8506 7.03583e-06 2.71711e-07 3.85061 1.12625e-05 6.46315e-07 + 3.85061 1.46268e-05 1.29766e-06 3.85062 1.6563e-05 2.13781e-06 3.32761 -1.0358e-05 -2.01061e-06 3.3276 -8.94852e-06 -1.33217e-06 + 3.3276 -6.77181e-06 -7.67467e-07 3.32759 -4.18957e-06 -3.84489e-07 3.32759 -1.41509e-06 -1.15839e-07 3.32759 1.41509e-06 1.15839e-07 + 3.32759 4.18957e-06 3.84489e-07 3.3276 6.77181e-06 7.67467e-07 3.3276 8.94852e-06 1.33217e-06 3.32761 1.0358e-05 2.01061e-06 + 2.45112 -5.38775e-06 -1.72081e-06 2.45112 -4.38586e-06 -1.23701e-06 2.45111 -3.18199e-06 -7.88862e-07 2.45111 -1.92399e-06 -4.32712e-07 + 2.45111 -6.43606e-07 -1.37548e-07 2.45111 6.43606e-07 1.37548e-07 2.45111 1.92399e-06 4.32712e-07 2.45111 3.18199e-06 7.88862e-07 + 2.45112 4.38586e-06 1.23701e-06 2.45112 5.38775e-06 1.72081e-06 1.07463 -1.57975e-06 -1.04437e-06 1.07463 -1.17992e-06 -8.3009e-07 + 1.07463 -8.06332e-07 -5.74866e-07 1.07463 -4.72251e-07 -3.33792e-07 1.07462 -1.55904e-07 -1.09245e-07 1.07462 1.55904e-07 1.09245e-07 + 1.07463 4.72251e-07 3.33792e-07 1.07463 8.06332e-07 5.74866e-07 1.07463 1.17992e-06 8.3009e-07 1.07463 1.57975e-06 1.04437e-06 + 0.524973 -0.000131073 1.09546e-05 0.524939 -8.06231e-05 1.01188e-05 0.524933 -4.98492e-05 7.40079e-06 0.524932 -2.75362e-05 4.36369e-06 + 0.524933 -8.83915e-06 1.43209e-06 0.524933 8.83915e-06 -1.43209e-06 0.524932 2.75362e-05 -4.36369e-06 0.524933 4.98492e-05 -7.40079e-06 + 0.524939 8.06231e-05 -1.01188e-05 0.524973 0.000131073 -1.09546e-05 1.07469 -7.05891e-05 5.832e-06 1.07467 -5.21369e-05 6.22126e-06 + 1.07466 -3.43777e-05 5.04361e-06 1.07465 -1.94173e-05 3.14757e-06 1.07465 -6.27621e-06 1.05848e-06 1.07465 6.27621e-06 -1.05848e-06 + 1.07465 1.94173e-05 -3.14757e-06 1.07466 3.43777e-05 -5.04361e-06 1.07467 5.21369e-05 -6.22126e-06 1.07469 7.05891e-05 -5.832e-06 + 1.39719 -3.85813e-05 1.72417e-06 1.39717 -3.17212e-05 2.42588e-06 1.39717 -2.23748e-05 2.26253e-06 1.39716 -1.30743e-05 1.51637e-06 + 1.39716 -4.28373e-06 5.25778e-07 1.39716 4.28373e-06 -5.25778e-07 1.39716 1.30743e-05 -1.51637e-06 1.39717 2.23748e-05 -2.26253e-06 + 1.39717 3.17212e-05 -2.42588e-06 1.39719 3.85813e-05 -1.72417e-06 1.58354 -2.2964e-05 -1.19078e-07 1.58353 -1.99305e-05 5.60061e-07 + 1.58353 -1.47732e-05 7.71379e-07 1.58352 -8.91016e-06 5.91087e-07 1.58352 -2.96256e-06 2.15498e-07 1.58352 2.96256e-06 -2.15498e-07 + 1.58352 8.91016e-06 -5.91087e-07 1.58353 1.47732e-05 -7.71379e-07 1.58353 1.99305e-05 -5.60061e-07 1.58354 2.2964e-05 1.19078e-07 + 1.66985 -1.46911e-05 -7.7978e-07 1.66985 -1.30704e-05 -1.92721e-07 1.66984 -9.98201e-06 1.15049e-07 1.66984 -6.1569e-06 1.61369e-07 + 1.66984 -2.07064e-06 6.76995e-08 1.66984 2.07064e-06 -6.76995e-08 1.66984 6.1569e-06 -1.61369e-07 1.66984 9.98201e-06 -1.15049e-07 + 1.66985 1.30704e-05 1.92721e-07 1.66985 1.46911e-05 7.7978e-07 1.66985 -9.75272e-06 -9.42571e-07 1.66984 -8.74789e-06 -4.48988e-07 + 1.66984 -6.76893e-06 -1.42835e-07 1.66984 -4.22321e-06 -1.98749e-08 1.66984 -1.42936e-06 3.40898e-09 1.66984 1.42936e-06 -3.40898e-09 + 1.66984 4.22321e-06 1.98749e-08 1.66984 6.76893e-06 1.42835e-07 1.66984 8.74789e-06 4.48988e-07 1.66985 9.75272e-06 9.42571e-07 + 1.58353 -6.44624e-06 -9.19804e-07 1.58352 -5.74651e-06 -5.09739e-07 1.58352 -4.43384e-06 -2.35397e-07 1.58352 -2.76615e-06 -9.40615e-08 + 1.58352 -9.36778e-07 -2.41994e-08 1.58352 9.36778e-07 2.41994e-08 1.58352 2.76615e-06 9.40615e-08 1.58352 4.43384e-06 2.35397e-07 + 1.58352 5.74651e-06 5.09739e-07 1.58353 6.44624e-06 9.19804e-07 1.39715 -4.01781e-06 -8.35063e-07 1.39715 -3.47824e-06 -5.04191e-07 + 1.39715 -2.62026e-06 -2.70265e-07 1.39715 -1.61201e-06 -1.29822e-07 1.39715 -5.42604e-07 -3.84262e-08 1.39715 5.42604e-07 3.84262e-08 + 1.39715 1.61201e-06 1.29822e-07 1.39715 2.62026e-06 2.70265e-07 1.39715 3.47824e-06 5.04191e-07 1.39715 4.01781e-06 8.35063e-07 + 1.07463 -2.11506e-06 -7.09746e-07 1.07463 -1.69345e-06 -4.69632e-07 1.07463 -1.20379e-06 -2.83507e-07 1.07463 -7.1639e-07 -1.5149e-07 + 1.07462 -2.37652e-07 -4.77163e-08 1.07462 2.37652e-07 4.77163e-08 1.07463 7.1639e-07 1.5149e-07 1.07463 1.20379e-06 2.83507e-07 + 1.07463 1.69345e-06 4.69632e-07 1.07463 2.11506e-06 7.09746e-07 0.524878 -6.33276e-07 -4.46357e-07 0.524877 -4.53495e-07 -3.33516e-07 + 0.524875 -2.96119e-07 -2.23341e-07 0.524874 -1.677e-07 -1.2803e-07 0.524874 -5.44238e-08 -4.17582e-08 0.524874 5.44238e-08 4.17582e-08 + 0.524874 1.677e-07 1.2803e-07 0.524875 2.96119e-07 2.23341e-07 0.524877 4.53495e-07 3.33516e-07 0.524878 6.33276e-07 4.46357e-07 0 0 0 0 0 0 0 0 0 0 0 0 @@ -513,6 +513,92 @@ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 + + 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 6.41754 6.41754 + 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 9.41254 9.41254 9.41254 9.41254 + 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 + 11.4075 11.4075 11.4075 11.4075 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 + 12.4025 12.4025 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 + 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 9.38751 9.38751 + 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 6.38251 6.38251 6.38251 6.38251 + 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 + 2.3775 2.3775 2.3775 2.3775 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 + 2.42255 2.42255 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 + 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 11.4075 11.4075 + 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 12.4025 12.4025 12.4025 12.4025 + 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 + 12.3975 12.3975 12.3975 12.3975 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 + 11.3925 11.3925 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 + 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 2.3775 2.3775 + 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 2.42255 2.42255 2.42255 2.42255 + 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 + 6.41754 6.41754 6.41754 6.41754 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 + 9.41254 9.41254 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 + 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.3975 12.3975 + 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 11.3925 11.3925 11.3925 11.3925 + 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 + 9.38751 9.38751 9.38751 9.38751 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 + 6.38251 6.38251 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 + 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 6.41754 6.41754 + 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 9.41254 9.41254 9.41254 9.41254 + 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 + 11.4075 11.4075 11.4075 11.4075 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 + 12.4025 12.4025 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 + 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 9.38751 9.38751 + 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 6.38251 6.38251 6.38251 6.38251 + 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 + 2.3775 2.3775 2.3775 2.3775 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 + 2.42255 2.42255 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 + 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 11.4075 11.4075 + 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 12.4025 12.4025 12.4025 12.4025 + 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 + 12.3975 12.3975 12.3975 12.3975 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 + 11.3925 11.3925 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 + 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 2.3775 2.3775 + 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 2.42255 2.42255 2.42255 2.42255 + 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 + 6.41754 6.41754 6.41754 6.41754 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 + 9.41254 9.41254 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 + 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.3975 12.3975 + 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 11.3925 11.3925 11.3925 11.3925 + 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 + 9.38751 9.38751 9.38751 9.38751 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 + 6.38251 6.38251 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 + 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 6.41754 6.41754 + 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 9.41254 9.41254 9.41254 9.41254 + 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 + 11.4075 11.4075 11.4075 11.4075 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 + 12.4025 12.4025 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 + 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 9.38751 9.38751 + 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 6.38251 6.38251 6.38251 6.38251 + 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 + 2.3775 2.3775 2.3775 2.3775 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 + 2.42255 2.42255 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 + 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 11.4075 11.4075 + 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 12.4025 12.4025 12.4025 12.4025 + 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 + 12.3975 12.3975 12.3975 12.3975 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 + 11.3925 11.3925 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 + 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 2.3775 2.3775 + 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 2.42255 2.42255 2.42255 2.42255 + 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 + 6.41754 6.41754 6.41754 6.41754 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 + 9.41254 9.41254 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 + 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.3975 12.3975 + 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 11.3925 11.3925 11.3925 11.3925 + 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 + 9.38751 9.38751 9.38751 9.38751 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 + 6.38251 6.38251 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 + 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 2.42255 6.41754 6.41754 + 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 6.41754 9.41254 9.41254 9.41254 9.41254 + 9.41254 9.41254 9.41254 9.41254 9.41254 9.41254 11.4075 11.4075 11.4075 11.4075 11.4075 11.4075 + 11.4075 11.4075 11.4075 11.4075 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 12.4025 + 12.4025 12.4025 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 12.3975 + 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 11.3925 9.38751 9.38751 + 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 9.38751 6.38251 6.38251 6.38251 6.38251 + 6.38251 6.38251 6.38251 6.38251 6.38251 6.38251 2.3775 2.3775 2.3775 2.3775 2.3775 2.3775 + 2.3775 2.3775 2.3775 2.3775 + diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_first_si_coupliter_darcy.log b/test/reference-solutions/flow-over-square-2d/test_navierstokes_first_si_coupliter_darcy.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_first_si_coupliter_darcy.log rename to test/reference-solutions/flow-over-square-2d/test_navierstokes_first_si_coupliter_darcy.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_first_si_coupliter_navierstokes.log b/test/reference-solutions/flow-over-square-2d/test_navierstokes_first_si_coupliter_navierstokes.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_first_si_coupliter_navierstokes.log rename to test/reference-solutions/flow-over-square-2d/test_navierstokes_first_si_coupliter_navierstokes.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_first_si_darcy.vtu b/test/reference-solutions/flow-over-square-2d/test_navierstokes_first_si_darcy.vtu similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_first_si_darcy.vtu rename to test/reference-solutions/flow-over-square-2d/test_navierstokes_first_si_darcy.vtu diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_first_si_ff.log b/test/reference-solutions/flow-over-square-2d/test_navierstokes_first_si_ff.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_first_si_ff.log rename to test/reference-solutions/flow-over-square-2d/test_navierstokes_first_si_ff.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_first_si_navierstokes.vtu b/test/reference-solutions/flow-over-square-2d/test_navierstokes_first_si_navierstokes.vtu similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_first_si_navierstokes.vtu rename to test/reference-solutions/flow-over-square-2d/test_navierstokes_first_si_navierstokes.vtu diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_first_si_pm.log b/test/reference-solutions/flow-over-square-2d/test_navierstokes_first_si_pm.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_first_si_pm.log rename to test/reference-solutions/flow-over-square-2d/test_navierstokes_first_si_pm.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_pi_coupliter_darcy.log b/test/reference-solutions/flow-over-square-2d/test_navierstokes_pi_coupliter_darcy.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_pi_coupliter_darcy.log rename to test/reference-solutions/flow-over-square-2d/test_navierstokes_pi_coupliter_darcy.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_pi_coupliter_navierstokes.log b/test/reference-solutions/flow-over-square-2d/test_navierstokes_pi_coupliter_navierstokes.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_pi_coupliter_navierstokes.log rename to test/reference-solutions/flow-over-square-2d/test_navierstokes_pi_coupliter_navierstokes.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_pi_darcy.vtu b/test/reference-solutions/flow-over-square-2d/test_navierstokes_pi_darcy.vtu similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_pi_darcy.vtu rename to test/reference-solutions/flow-over-square-2d/test_navierstokes_pi_darcy.vtu diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_pi_ff.log b/test/reference-solutions/flow-over-square-2d/test_navierstokes_pi_ff.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_pi_ff.log rename to test/reference-solutions/flow-over-square-2d/test_navierstokes_pi_ff.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_pi_navierstokes.vtu b/test/reference-solutions/flow-over-square-2d/test_navierstokes_pi_navierstokes.vtu similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_pi_navierstokes.vtu rename to test/reference-solutions/flow-over-square-2d/test_navierstokes_pi_navierstokes.vtu diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_pi_pm.log b/test/reference-solutions/flow-over-square-2d/test_navierstokes_pi_pm.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_pi_pm.log rename to test/reference-solutions/flow-over-square-2d/test_navierstokes_pi_pm.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_second_si_coupliter_darcy.log b/test/reference-solutions/flow-over-square-2d/test_navierstokes_second_si_coupliter_darcy.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_second_si_coupliter_darcy.log rename to test/reference-solutions/flow-over-square-2d/test_navierstokes_second_si_coupliter_darcy.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_second_si_coupliter_navierstokes.log b/test/reference-solutions/flow-over-square-2d/test_navierstokes_second_si_coupliter_navierstokes.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_second_si_coupliter_navierstokes.log rename to test/reference-solutions/flow-over-square-2d/test_navierstokes_second_si_coupliter_navierstokes.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_second_si_darcy.vtu b/test/reference-solutions/flow-over-square-2d/test_navierstokes_second_si_darcy.vtu similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_second_si_darcy.vtu rename to test/reference-solutions/flow-over-square-2d/test_navierstokes_second_si_darcy.vtu diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_second_si_ff.log b/test/reference-solutions/flow-over-square-2d/test_navierstokes_second_si_ff.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_second_si_ff.log rename to test/reference-solutions/flow-over-square-2d/test_navierstokes_second_si_ff.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_second_si_navierstokes.vtu b/test/reference-solutions/flow-over-square-2d/test_navierstokes_second_si_navierstokes.vtu similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_second_si_navierstokes.vtu rename to test/reference-solutions/flow-over-square-2d/test_navierstokes_second_si_navierstokes.vtu diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_second_si_pm.log b/test/reference-solutions/flow-over-square-2d/test_navierstokes_second_si_pm.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_navierstokes_second_si_pm.log rename to test/reference-solutions/flow-over-square-2d/test_navierstokes_second_si_pm.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_first_si_coupliter_darcy.log b/test/reference-solutions/flow-over-square-2d/test_stokes_first_si_coupliter_darcy.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_first_si_coupliter_darcy.log rename to test/reference-solutions/flow-over-square-2d/test_stokes_first_si_coupliter_darcy.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_first_si_coupliter_stokes.log b/test/reference-solutions/flow-over-square-2d/test_stokes_first_si_coupliter_stokes.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_first_si_coupliter_stokes.log rename to test/reference-solutions/flow-over-square-2d/test_stokes_first_si_coupliter_stokes.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_first_si_darcy.vtu b/test/reference-solutions/flow-over-square-2d/test_stokes_first_si_darcy.vtu similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_first_si_darcy.vtu rename to test/reference-solutions/flow-over-square-2d/test_stokes_first_si_darcy.vtu diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_first_si_ff.log b/test/reference-solutions/flow-over-square-2d/test_stokes_first_si_ff.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_first_si_ff.log rename to test/reference-solutions/flow-over-square-2d/test_stokes_first_si_ff.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_first_si_pm.log b/test/reference-solutions/flow-over-square-2d/test_stokes_first_si_pm.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_first_si_pm.log rename to test/reference-solutions/flow-over-square-2d/test_stokes_first_si_pm.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_first_si_stokes.vtu b/test/reference-solutions/flow-over-square-2d/test_stokes_first_si_stokes.vtu similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_first_si_stokes.vtu rename to test/reference-solutions/flow-over-square-2d/test_stokes_first_si_stokes.vtu diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_pi_coupliter_darcy.log b/test/reference-solutions/flow-over-square-2d/test_stokes_pi_coupliter_darcy.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_pi_coupliter_darcy.log rename to test/reference-solutions/flow-over-square-2d/test_stokes_pi_coupliter_darcy.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_pi_coupliter_stokes.log b/test/reference-solutions/flow-over-square-2d/test_stokes_pi_coupliter_stokes.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_pi_coupliter_stokes.log rename to test/reference-solutions/flow-over-square-2d/test_stokes_pi_coupliter_stokes.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_pi_darcy.vtu b/test/reference-solutions/flow-over-square-2d/test_stokes_pi_darcy.vtu similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_pi_darcy.vtu rename to test/reference-solutions/flow-over-square-2d/test_stokes_pi_darcy.vtu diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_pi_ff.log b/test/reference-solutions/flow-over-square-2d/test_stokes_pi_ff.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_pi_ff.log rename to test/reference-solutions/flow-over-square-2d/test_stokes_pi_ff.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_pi_pm.log b/test/reference-solutions/flow-over-square-2d/test_stokes_pi_pm.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_pi_pm.log rename to test/reference-solutions/flow-over-square-2d/test_stokes_pi_pm.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_pi_stokes.vtu b/test/reference-solutions/flow-over-square-2d/test_stokes_pi_stokes.vtu similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_pi_stokes.vtu rename to test/reference-solutions/flow-over-square-2d/test_stokes_pi_stokes.vtu diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_second_si_coupliter_darcy.log b/test/reference-solutions/flow-over-square-2d/test_stokes_second_si_coupliter_darcy.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_second_si_coupliter_darcy.log rename to test/reference-solutions/flow-over-square-2d/test_stokes_second_si_coupliter_darcy.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_second_si_coupliter_stokes.log b/test/reference-solutions/flow-over-square-2d/test_stokes_second_si_coupliter_stokes.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_second_si_coupliter_stokes.log rename to test/reference-solutions/flow-over-square-2d/test_stokes_second_si_coupliter_stokes.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_second_si_darcy.vtu b/test/reference-solutions/flow-over-square-2d/test_stokes_second_si_darcy.vtu similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_second_si_darcy.vtu rename to test/reference-solutions/flow-over-square-2d/test_stokes_second_si_darcy.vtu diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_second_si_ff.log b/test/reference-solutions/flow-over-square-2d/test_stokes_second_si_ff.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_second_si_ff.log rename to test/reference-solutions/flow-over-square-2d/test_stokes_second_si_ff.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_second_si_pm.log b/test/reference-solutions/flow-over-square-2d/test_stokes_second_si_pm.log similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_second_si_pm.log rename to test/reference-solutions/flow-over-square-2d/test_stokes_second_si_pm.log diff --git a/test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_second_si_stokes.vtu b/test/reference-solutions/flow-over-square-2d/test_stokes_second_si_stokes.vtu similarity index 100% rename from test/reference-solutions/partitioned/flow-over-square-2d/test_stokes_second_si_stokes.vtu rename to test/reference-solutions/flow-over-square-2d/test_stokes_second_si_stokes.vtu diff --git a/test/reference-solutions/monolithic/ff-pm-3d/ff-pm-3d-navier-stokes.input b/test/reference-solutions/monolithic/ff-pm-3d/ff-pm-3d-navier-stokes.input deleted file mode 100644 index e115a6c..0000000 --- a/test/reference-solutions/monolithic/ff-pm-3d/ff-pm-3d-navier-stokes.input +++ /dev/null @@ -1,30 +0,0 @@ -[Darcy.Grid] -UpperRight = 1 1 1 -Cells = 10 10 10 - -[Stokes.Grid] -LowerLeft = 0 1 0 -UpperRight = 1 2 1 -Cells = 10 10 10 - -[Stokes.Problem] -Name = stokes -PressureDifference = 1e-4 - -[Darcy.Problem] -Name = darcy - -[Darcy.SpatialParams] -Permeability = 1e-6 # m^2 -AlphaBeaversJoseph = 1.0 - -[Vtk] -OutputName = ff-pm-3d-navier-stokes - -[Problem] -Name = "boxes" -EnableGravity = false -EnableInertiaTerms = true - -[Vtk] -AddVelocity = 1 diff --git a/test/reference-solutions/monolithic/ff-pm-3d/ff-pm-3d-stokes.input b/test/reference-solutions/monolithic/ff-pm-3d/ff-pm-3d-stokes.input deleted file mode 100644 index 4f40d7c..0000000 --- a/test/reference-solutions/monolithic/ff-pm-3d/ff-pm-3d-stokes.input +++ /dev/null @@ -1,30 +0,0 @@ -[Darcy.Grid] -UpperRight = 1 1 1 -Cells = 10 10 10 - -[Stokes.Grid] -LowerLeft = 0 1 0 -UpperRight = 1 2 1 -Cells = 10 10 10 - -[Stokes.Problem] -Name = stokes -PressureDifference = 1e-1 - -[Darcy.Problem] -Name = darcy - -[Darcy.SpatialParams] -Permeability = 1e-6 # m^2 -AlphaBeaversJoseph = 1.0 - -[Vtk] -OutputName = ff-pm-3d-stokes - -[Problem] -Name = "boxes" -EnableGravity = false -EnableInertiaTerms = false - -[Vtk] -AddVelocity = 1 diff --git a/test/reference-solutions/monolithic/ff-pm-3d/ref-ff-pm-3d-navier-stokes_darcy.vtu b/test/reference-solutions/monolithic/ff-pm-3d/ref-ff-pm-3d-navier-stokes_darcy.vtu deleted file mode 100644 index a1864e1..0000000 --- a/test/reference-solutions/monolithic/ff-pm-3d/ref-ff-pm-3d-navier-stokes_darcy.vtu +++ /dev/null @@ -1,1613 +0,0 @@ - - - - - - - 5.37818e-05 5.34361e-05 5.27791e-05 5.18758e-05 5.0815e-05 4.96997e-05 4.86384e-05 4.77345e-05 4.70769e-05 4.67307e-05 5.41275e-05 5.37472e-05 - 5.30252e-05 5.20334e-05 5.08692e-05 4.96457e-05 4.8481e-05 4.74882e-05 4.67653e-05 4.63844e-05 5.48532e-05 5.44e-05 5.35409e-05 5.23631e-05 - 5.09827e-05 4.95326e-05 4.81513e-05 4.69721e-05 4.61114e-05 4.56572e-05 5.60319e-05 5.54585e-05 5.4375e-05 5.28952e-05 5.11657e-05 4.93506e-05 - 4.76195e-05 4.6137e-05 4.50509e-05 4.44757e-05 5.77837e-05 5.70266e-05 5.5605e-05 5.36766e-05 5.14339e-05 4.9084e-05 4.68385e-05 4.49054e-05 - 4.3479e-05 4.27187e-05 6.02918e-05 5.92583e-05 5.73409e-05 5.47714e-05 5.18082e-05 4.87123e-05 4.57443e-05 4.31666e-05 4.12403e-05 4.02008e-05 - 6.38323e-05 6.23724e-05 5.97275e-05 5.62584e-05 5.23134e-05 4.82112e-05 4.42583e-05 4.0775e-05 3.8114e-05 3.66426e-05 6.88305e-05 6.66688e-05 - 6.29352e-05 5.82178e-05 5.29725e-05 4.75578e-05 4.22998e-05 3.75589e-05 3.37962e-05 3.16116e-05 7.59865e-05 7.25322e-05 6.71208e-05 6.06988e-05 - 5.37946e-05 4.67417e-05 3.98189e-05 3.336e-05 2.78972e-05 2.43939e-05 8.65913e-05 8.03427e-05 7.23048e-05 6.3649e-05 5.47526e-05 4.57834e-05 - 3.68633e-05 2.81562e-05 2.00329e-05 1.36706e-05 5.37819e-05 5.34362e-05 5.27792e-05 5.1876e-05 5.08151e-05 4.96998e-05 4.86385e-05 4.77346e-05 - 4.70769e-05 4.67308e-05 5.41276e-05 5.37474e-05 5.30253e-05 5.20335e-05 5.08694e-05 4.96458e-05 4.84811e-05 4.74884e-05 4.67654e-05 4.63845e-05 - 5.48534e-05 5.44003e-05 5.35411e-05 5.23634e-05 5.0983e-05 4.95329e-05 4.81516e-05 4.69723e-05 4.61116e-05 4.56574e-05 5.60323e-05 5.54589e-05 - 5.43755e-05 5.28957e-05 5.11662e-05 4.9351e-05 4.76199e-05 4.61374e-05 4.50512e-05 4.4476e-05 5.77844e-05 5.70273e-05 5.56058e-05 5.36775e-05 - 5.14347e-05 4.90849e-05 4.68393e-05 4.49061e-05 4.34795e-05 4.27192e-05 6.02931e-05 5.92597e-05 5.73425e-05 5.47731e-05 5.18099e-05 4.8714e-05 - 4.57457e-05 4.31678e-05 4.12414e-05 4.02017e-05 6.38345e-05 6.2375e-05 5.97305e-05 5.62616e-05 5.23167e-05 4.82144e-05 4.42611e-05 4.07773e-05 - 3.81158e-05 3.66439e-05 6.88342e-05 6.66738e-05 6.29412e-05 5.82243e-05 5.29789e-05 4.75639e-05 4.23052e-05 3.75633e-05 3.37994e-05 3.16136e-05 - 7.59923e-05 7.25422e-05 6.71332e-05 6.07118e-05 5.38073e-05 4.67536e-05 3.98297e-05 3.33689e-05 2.79031e-05 2.43962e-05 8.65979e-05 8.03652e-05 - 7.23317e-05 6.36758e-05 5.47781e-05 4.58073e-05 3.68853e-05 2.8175e-05 2.00452e-05 1.36705e-05 5.37821e-05 5.34363e-05 5.27793e-05 5.18761e-05 - 5.08153e-05 4.97e-05 4.86387e-05 4.77348e-05 4.70771e-05 4.67309e-05 5.41278e-05 5.37476e-05 5.30256e-05 5.20338e-05 5.08696e-05 4.96461e-05 - 4.84813e-05 4.74886e-05 4.67656e-05 4.63847e-05 5.48538e-05 5.44006e-05 5.35415e-05 5.23638e-05 5.09834e-05 4.95333e-05 4.81519e-05 4.69726e-05 - 4.61119e-05 4.56577e-05 5.6033e-05 5.54596e-05 5.43762e-05 5.28965e-05 5.11669e-05 4.93518e-05 4.76206e-05 4.6138e-05 4.50517e-05 4.44765e-05 - 5.77856e-05 5.70286e-05 5.56072e-05 5.36789e-05 5.14362e-05 4.90862e-05 4.68405e-05 4.49072e-05 4.34805e-05 4.272e-05 6.02952e-05 5.92619e-05 - 5.7345e-05 5.47758e-05 5.18126e-05 4.87165e-05 4.57481e-05 4.31698e-05 4.1243e-05 4.0203e-05 6.3838e-05 6.23791e-05 5.97353e-05 5.62668e-05 - 5.23219e-05 4.82193e-05 4.42655e-05 4.0781e-05 3.81186e-05 3.66461e-05 6.88398e-05 6.66813e-05 6.29504e-05 5.82343e-05 5.29889e-05 4.75734e-05 - 4.23137e-05 3.75702e-05 3.38043e-05 3.16168e-05 7.60005e-05 7.25563e-05 6.71513e-05 6.07314e-05 5.38267e-05 4.67719e-05 3.9846e-05 3.33822e-05 - 2.79119e-05 2.44e-05 8.66063e-05 8.03937e-05 7.23689e-05 6.37147e-05 5.48159e-05 4.58428e-05 3.69174e-05 2.82015e-05 2.00616e-05 1.36711e-05 - 5.37823e-05 5.34365e-05 5.27795e-05 5.18763e-05 5.08154e-05 4.97002e-05 4.86389e-05 4.77349e-05 4.70772e-05 4.6731e-05 5.41281e-05 5.37478e-05 - 5.30258e-05 5.2034e-05 5.08699e-05 4.96463e-05 4.84815e-05 4.74888e-05 4.67658e-05 4.63849e-05 5.48542e-05 5.4401e-05 5.3542e-05 5.23642e-05 - 5.09838e-05 4.95337e-05 4.81523e-05 4.69729e-05 4.61122e-05 4.5658e-05 5.60336e-05 5.54603e-05 5.43769e-05 5.28972e-05 5.11677e-05 4.93525e-05 - 4.76212e-05 4.61386e-05 4.50522e-05 4.44769e-05 5.77867e-05 5.70298e-05 5.56085e-05 5.36803e-05 5.14376e-05 4.90876e-05 4.68417e-05 4.49083e-05 - 4.34814e-05 4.27208e-05 6.02971e-05 5.92641e-05 5.73475e-05 5.47784e-05 5.18152e-05 4.87191e-05 4.57504e-05 4.31718e-05 4.12446e-05 4.02044e-05 - 6.38413e-05 6.2383e-05 5.97399e-05 5.62717e-05 5.23269e-05 4.82241e-05 4.42698e-05 4.07846e-05 3.81214e-05 3.66483e-05 6.88452e-05 6.66883e-05 - 6.2959e-05 5.82437e-05 5.29985e-05 4.75825e-05 4.23218e-05 3.75768e-05 3.38091e-05 3.16201e-05 7.60081e-05 7.25689e-05 6.71678e-05 6.07495e-05 - 5.38449e-05 4.67891e-05 3.98613e-05 3.33945e-05 2.79201e-05 2.4404e-05 8.66134e-05 8.04167e-05 7.24006e-05 6.37491e-05 5.48499e-05 4.58749e-05 - 3.69461e-05 2.82248e-05 2.0076e-05 1.36733e-05 5.37824e-05 5.34366e-05 5.27796e-05 5.18764e-05 5.08155e-05 4.97003e-05 4.8639e-05 4.7735e-05 - 4.70773e-05 4.67311e-05 5.41282e-05 5.3748e-05 5.3026e-05 5.20342e-05 5.087e-05 4.96464e-05 4.84817e-05 4.74889e-05 4.67659e-05 4.6385e-05 - 5.48544e-05 5.44013e-05 5.35422e-05 5.23645e-05 5.09841e-05 4.95339e-05 4.81525e-05 4.69731e-05 4.61124e-05 4.56582e-05 5.6034e-05 5.54607e-05 - 5.43774e-05 5.28977e-05 5.11682e-05 4.93529e-05 4.76216e-05 4.6139e-05 4.50526e-05 4.44772e-05 5.77874e-05 5.70305e-05 5.56093e-05 5.36811e-05 - 5.14384e-05 4.90884e-05 4.68425e-05 4.49089e-05 4.34819e-05 4.27213e-05 6.02983e-05 5.92655e-05 5.7349e-05 5.478e-05 5.18168e-05 4.87206e-05 - 4.57518e-05 4.31729e-05 4.12456e-05 4.02052e-05 6.38434e-05 6.23854e-05 5.97426e-05 5.62747e-05 5.23299e-05 4.8227e-05 4.42724e-05 4.07868e-05 - 3.81231e-05 3.66497e-05 6.88484e-05 6.66924e-05 6.29641e-05 5.82494e-05 5.30043e-05 4.75879e-05 4.23266e-05 3.75808e-05 3.3812e-05 3.16221e-05 - 7.60125e-05 7.2576e-05 6.71772e-05 6.076e-05 5.38555e-05 4.67992e-05 3.98703e-05 3.34017e-05 2.79249e-05 2.44066e-05 8.66174e-05 8.04291e-05 - 7.24182e-05 6.37686e-05 5.48693e-05 4.58932e-05 3.69625e-05 2.82381e-05 2.00843e-05 1.36753e-05 5.37824e-05 5.34366e-05 5.27796e-05 5.18764e-05 - 5.08155e-05 4.97003e-05 4.8639e-05 4.7735e-05 4.70773e-05 4.67311e-05 5.41282e-05 5.3748e-05 5.3026e-05 5.20342e-05 5.087e-05 4.96464e-05 - 4.84817e-05 4.74889e-05 4.67659e-05 4.6385e-05 5.48544e-05 5.44013e-05 5.35422e-05 5.23645e-05 5.09841e-05 4.95339e-05 4.81525e-05 4.69731e-05 - 4.61124e-05 4.56582e-05 5.6034e-05 5.54607e-05 5.43774e-05 5.28977e-05 5.11682e-05 4.93529e-05 4.76216e-05 4.6139e-05 4.50526e-05 4.44772e-05 - 5.77874e-05 5.70305e-05 5.56093e-05 5.36811e-05 5.14384e-05 4.90884e-05 4.68425e-05 4.49089e-05 4.34819e-05 4.27213e-05 6.02983e-05 5.92655e-05 - 5.7349e-05 5.478e-05 5.18168e-05 4.87206e-05 4.57518e-05 4.31729e-05 4.12456e-05 4.02052e-05 6.38434e-05 6.23854e-05 5.97426e-05 5.62747e-05 - 5.23299e-05 4.8227e-05 4.42724e-05 4.07868e-05 3.81231e-05 3.66497e-05 6.88484e-05 6.66924e-05 6.29641e-05 5.82494e-05 5.30043e-05 4.75879e-05 - 4.23266e-05 3.75808e-05 3.3812e-05 3.16221e-05 7.60125e-05 7.2576e-05 6.71772e-05 6.076e-05 5.38555e-05 4.67992e-05 3.98703e-05 3.34017e-05 - 2.79249e-05 2.44066e-05 8.66174e-05 8.04291e-05 7.24182e-05 6.37686e-05 5.48693e-05 4.58932e-05 3.69625e-05 2.82381e-05 2.00843e-05 1.36753e-05 - 5.37823e-05 5.34365e-05 5.27795e-05 5.18763e-05 5.08154e-05 4.97002e-05 4.86389e-05 4.77349e-05 4.70772e-05 4.6731e-05 5.41281e-05 5.37478e-05 - 5.30258e-05 5.2034e-05 5.08699e-05 4.96463e-05 4.84815e-05 4.74888e-05 4.67658e-05 4.63849e-05 5.48542e-05 5.4401e-05 5.3542e-05 5.23642e-05 - 5.09838e-05 4.95337e-05 4.81523e-05 4.69729e-05 4.61122e-05 4.5658e-05 5.60336e-05 5.54603e-05 5.43769e-05 5.28972e-05 5.11677e-05 4.93525e-05 - 4.76212e-05 4.61386e-05 4.50522e-05 4.44769e-05 5.77867e-05 5.70298e-05 5.56085e-05 5.36803e-05 5.14376e-05 4.90876e-05 4.68417e-05 4.49083e-05 - 4.34814e-05 4.27208e-05 6.02971e-05 5.92641e-05 5.73475e-05 5.47784e-05 5.18152e-05 4.87191e-05 4.57504e-05 4.31718e-05 4.12446e-05 4.02044e-05 - 6.38413e-05 6.2383e-05 5.97399e-05 5.62717e-05 5.23269e-05 4.82241e-05 4.42698e-05 4.07846e-05 3.81214e-05 3.66483e-05 6.88452e-05 6.66883e-05 - 6.2959e-05 5.82437e-05 5.29985e-05 4.75825e-05 4.23218e-05 3.75768e-05 3.38091e-05 3.16201e-05 7.60081e-05 7.25689e-05 6.71678e-05 6.07495e-05 - 5.38449e-05 4.67891e-05 3.98613e-05 3.33945e-05 2.79201e-05 2.4404e-05 8.66134e-05 8.04167e-05 7.24006e-05 6.37491e-05 5.48499e-05 4.58749e-05 - 3.69461e-05 2.82248e-05 2.0076e-05 1.36733e-05 5.37821e-05 5.34363e-05 5.27793e-05 5.18761e-05 5.08153e-05 4.97e-05 4.86387e-05 4.77348e-05 - 4.70771e-05 4.67309e-05 5.41278e-05 5.37476e-05 5.30256e-05 5.20338e-05 5.08696e-05 4.96461e-05 4.84813e-05 4.74886e-05 4.67656e-05 4.63847e-05 - 5.48538e-05 5.44006e-05 5.35415e-05 5.23638e-05 5.09834e-05 4.95333e-05 4.81519e-05 4.69726e-05 4.61119e-05 4.56577e-05 5.6033e-05 5.54596e-05 - 5.43762e-05 5.28965e-05 5.11669e-05 4.93518e-05 4.76206e-05 4.6138e-05 4.50517e-05 4.44765e-05 5.77856e-05 5.70286e-05 5.56072e-05 5.36789e-05 - 5.14362e-05 4.90862e-05 4.68405e-05 4.49072e-05 4.34805e-05 4.272e-05 6.02952e-05 5.92619e-05 5.7345e-05 5.47758e-05 5.18126e-05 4.87165e-05 - 4.57481e-05 4.31698e-05 4.1243e-05 4.0203e-05 6.3838e-05 6.23791e-05 5.97353e-05 5.62668e-05 5.23219e-05 4.82193e-05 4.42655e-05 4.0781e-05 - 3.81186e-05 3.66461e-05 6.88398e-05 6.66813e-05 6.29504e-05 5.82343e-05 5.29889e-05 4.75734e-05 4.23137e-05 3.75702e-05 3.38043e-05 3.16168e-05 - 7.60005e-05 7.25563e-05 6.71513e-05 6.07314e-05 5.38267e-05 4.67719e-05 3.9846e-05 3.33822e-05 2.79119e-05 2.44e-05 8.66063e-05 8.03937e-05 - 7.23689e-05 6.37147e-05 5.48159e-05 4.58428e-05 3.69174e-05 2.82015e-05 2.00616e-05 1.36711e-05 5.37819e-05 5.34362e-05 5.27792e-05 5.1876e-05 - 5.08151e-05 4.96998e-05 4.86385e-05 4.77346e-05 4.70769e-05 4.67308e-05 5.41276e-05 5.37474e-05 5.30253e-05 5.20335e-05 5.08694e-05 4.96458e-05 - 4.84811e-05 4.74884e-05 4.67654e-05 4.63845e-05 5.48534e-05 5.44003e-05 5.35411e-05 5.23634e-05 5.0983e-05 4.95329e-05 4.81516e-05 4.69723e-05 - 4.61116e-05 4.56574e-05 5.60323e-05 5.54589e-05 5.43755e-05 5.28957e-05 5.11662e-05 4.9351e-05 4.76199e-05 4.61374e-05 4.50512e-05 4.4476e-05 - 5.77844e-05 5.70273e-05 5.56058e-05 5.36775e-05 5.14347e-05 4.90849e-05 4.68393e-05 4.49061e-05 4.34795e-05 4.27192e-05 6.02931e-05 5.92597e-05 - 5.73425e-05 5.47731e-05 5.18099e-05 4.8714e-05 4.57457e-05 4.31678e-05 4.12414e-05 4.02017e-05 6.38345e-05 6.2375e-05 5.97305e-05 5.62616e-05 - 5.23167e-05 4.82144e-05 4.42611e-05 4.07773e-05 3.81158e-05 3.66439e-05 6.88342e-05 6.66738e-05 6.29412e-05 5.82243e-05 5.29789e-05 4.75639e-05 - 4.23052e-05 3.75633e-05 3.37994e-05 3.16136e-05 7.59923e-05 7.25422e-05 6.71332e-05 6.07118e-05 5.38073e-05 4.67536e-05 3.98297e-05 3.33689e-05 - 2.79031e-05 2.43962e-05 8.65979e-05 8.03652e-05 7.23317e-05 6.36758e-05 5.47781e-05 4.58073e-05 3.68853e-05 2.8175e-05 2.00452e-05 1.36705e-05 - 5.37818e-05 5.34361e-05 5.27791e-05 5.18758e-05 5.0815e-05 4.96997e-05 4.86384e-05 4.77345e-05 4.70769e-05 4.67307e-05 5.41275e-05 5.37472e-05 - 5.30252e-05 5.20334e-05 5.08692e-05 4.96457e-05 4.8481e-05 4.74882e-05 4.67653e-05 4.63844e-05 5.48532e-05 5.44e-05 5.35409e-05 5.23631e-05 - 5.09827e-05 4.95326e-05 4.81513e-05 4.69721e-05 4.61114e-05 4.56572e-05 5.60319e-05 5.54585e-05 5.4375e-05 5.28952e-05 5.11657e-05 4.93506e-05 - 4.76195e-05 4.6137e-05 4.50509e-05 4.44757e-05 5.77837e-05 5.70266e-05 5.5605e-05 5.36766e-05 5.14339e-05 4.9084e-05 4.68385e-05 4.49054e-05 - 4.3479e-05 4.27187e-05 6.02918e-05 5.92583e-05 5.73409e-05 5.47714e-05 5.18082e-05 4.87123e-05 4.57443e-05 4.31666e-05 4.12403e-05 4.02008e-05 - 6.38323e-05 6.23724e-05 5.97275e-05 5.62584e-05 5.23134e-05 4.82112e-05 4.42583e-05 4.0775e-05 3.8114e-05 3.66426e-05 6.88305e-05 6.66688e-05 - 6.29352e-05 5.82178e-05 5.29725e-05 4.75578e-05 4.22998e-05 3.75589e-05 3.37962e-05 3.16116e-05 7.59865e-05 7.25322e-05 6.71208e-05 6.06988e-05 - 5.37946e-05 4.67417e-05 3.98189e-05 3.336e-05 2.78972e-05 2.43939e-05 8.65913e-05 8.03427e-05 7.23048e-05 6.3649e-05 5.47526e-05 4.57834e-05 - 3.68633e-05 2.81562e-05 2.00329e-05 1.36706e-05 - - - 1.72875e-09 -1.72823e-09 -5.20552e-13 5.01376e-09 -1.55574e-09 -5.27304e-13 7.80113e-09 -1.23056e-09 -5.36197e-13 9.82047e-09 -7.87701e-10 -5.40654e-13 - 1.08805e-08 -2.71304e-10 -5.35311e-13 1.08826e-08 2.70268e-10 -5.18108e-13 9.82595e-09 7.87425e-10 -4.90992e-13 7.80794e-09 1.23154e-09 -4.59527e-13 - 5.0193e-09 1.55799e-09 -4.31592e-13 1.73087e-09 1.73129e-09 -4.15096e-13 1.90123e-09 -5.35697e-09 -7.13591e-13 5.51143e-09 -4.81972e-09 -7.27551e-13 - 8.56917e-09 -3.80915e-09 -7.46425e-13 1.07797e-08 -2.43643e-09 -7.57919e-13 1.19385e-08 -8.38871e-10 -7.52531e-13 1.19414e-08 8.35425e-10 -7.26726e-13 - 1.07872e-08 2.43552e-09 -6.83579e-13 8.57851e-09 3.81243e-09 -6.32099e-13 5.51905e-09 4.82731e-09 -5.85471e-13 1.90416e-09 5.36729e-09 -5.57543e-13 - 2.266e-09 -9.52233e-09 -1.16752e-12 6.56159e-09 -8.55633e-09 -1.20314e-12 1.01844e-08 -6.74917e-09 -1.25153e-12 1.27907e-08 -4.30924e-09 -1.28388e-12 - 1.41524e-08 -1.48243e-09 -1.27977e-12 1.4157e-08 1.4755e-09 -1.23221e-12 1.2803e-08 4.30744e-09 -1.14728e-12 1.01997e-08 6.75594e-09 -1.04264e-12 - 6.57417e-09 8.57203e-09 -9.45355e-13 2.27085e-09 9.54375e-09 -8.8589e-13 2.86723e-09 -1.46524e-08 -2.03856e-12 8.28459e-09 -1.31327e-08 -2.13259e-12 - 1.28163e-08 -1.03205e-08 -2.25797e-12 1.60465e-08 -6.56735e-09 -2.34375e-12 1.77233e-08 -2.25553e-09 -2.34579e-12 1.77312e-08 2.2431e-09 -2.25157e-12 - 1.60677e-08 6.5642e-09 -2.07399e-12 1.28431e-08 1.03331e-08 -1.8482e-12 8.30686e-09 1.31622e-08 -1.63162e-12 2.87588e-09 1.46929e-08 -1.49552e-12 - 3.78566e-09 -2.12996e-08 -3.61478e-12 1.08935e-08 -1.8999e-08 -3.86736e-12 1.67498e-08 -1.48297e-08 -4.1893e-12 2.08557e-08 -9.38104e-09 -4.40455e-12 - 2.29628e-08 -3.21229e-09 -4.42423e-12 2.29768e-08 3.19121e-09 -4.23236e-12 2.08929e-08 9.3759e-09 -3.85682e-12 1.67977e-08 1.48523e-08 -3.36334e-12 - 1.0934e-08 1.90526e-08 -2.86995e-12 3.80156e-09 2.13744e-08 -2.54684e-12 5.16782e-09 -3.02431e-08 -6.38175e-12 1.47545e-08 -2.67291e-08 -7.07981e-12 - 2.24342e-08 -2.06125e-08 -7.90018e-12 2.76638e-08 -1.29088e-08 -8.4124e-12 3.02955e-08 -4.39769e-09 -8.46674e-12 3.03194e-08 4.36395e-09 -8.06953e-12 - 2.77288e-08 1.29011e-08 -7.28015e-12 2.25198e-08 2.06521e-08 -6.2036e-12 1.48289e-08 2.68249e-08 -5.06267e-12 5.19765e-09 3.03804e-08 -4.26547e-12 - 7.29961e-09 -4.2693e-08 -1.10782e-11 2.05241e-08 -3.70526e-08 -1.30992e-11 3.05701e-08 -2.79715e-08 -1.51721e-11 3.70705e-08 -1.7232e-08 -1.631e-11 - 4.02356e-08 -5.82168e-09 -1.63893e-11 4.02755e-08 5.77255e-09 -1.55553e-11 3.71811e-08 1.72223e-08 -1.39277e-11 3.07215e-08 2.80385e-08 -1.16086e-11 - 2.06622e-08 3.72206e-08 -8.93451e-12 7.35703e-09 4.29462e-08 -6.86125e-12 1.08082e-08 -6.07712e-08 -1.85568e-11 2.94761e-08 -5.07992e-08 -2.48171e-11 - 4.22549e-08 -3.69668e-08 -2.99498e-11 4.98136e-08 -2.22023e-08 -3.21919e-11 5.33001e-08 -7.40595e-09 -3.20886e-11 5.33634e-08 7.34786e-09 -3.03171e-11 - 4.99947e-08 2.2197e-08 -2.70856e-11 4.25181e-08 3.7075e-08 -2.22362e-11 2.97366e-08 5.10837e-08 -1.59095e-11 1.09232e-08 6.12434e-08 -1.01077e-11 - 1.72717e-08 -8.88041e-08 -2.85481e-11 4.43285e-08 -6.83694e-08 -4.97424e-11 5.9167e-08 -4.68477e-08 -6.16771e-11 6.66313e-08 -2.71557e-08 -6.4938e-11 - 6.97857e-08 -8.90053e-09 -6.35765e-11 6.98784e-08 8.87209e-09 -5.97944e-11 6.69082e-08 2.71827e-08 -5.38162e-11 5.96083e-08 4.70134e-08 -4.43201e-11 - 4.48306e-08 6.88163e-08 -2.94565e-11 1.75167e-08 8.9705e-08 -1.15825e-11 3.12429e-08 -1.37257e-07 -3.29645e-11 7.14324e-08 -8.69387e-08 -1.12638e-10 - 8.34685e-08 -5.47941e-08 -1.34707e-10 8.77608e-08 -3.05702e-08 -1.34219e-10 8.93278e-08 -9.81717e-09 -1.27485e-10 8.94466e-08 9.94751e-09 -1.19476e-10 - 8.81361e-08 3.07309e-08 -1.09853e-10 8.41517e-08 5.50515e-08 -9.39815e-11 7.24282e-08 8.75084e-08 -6.12032e-11 3.18119e-08 1.39045e-07 5.48709e-13 - 1.72874e-09 -1.72842e-09 -1.36186e-12 5.01375e-09 -1.55594e-09 -1.37952e-12 7.80111e-09 -1.23077e-09 -1.4028e-12 9.82047e-09 -7.87919e-10 -1.4145e-12 - 1.08806e-08 -2.71522e-10 -1.40057e-12 1.08827e-08 2.70059e-10 -1.35562e-12 9.82601e-09 7.87233e-10 -1.28474e-12 7.808e-09 1.23136e-09 -1.20248e-12 - 5.01935e-09 1.55784e-09 -1.12946e-12 1.73089e-09 1.73114e-09 -1.08634e-12 1.90122e-09 -5.35762e-09 -1.86592e-12 5.5114e-09 -4.82039e-09 -1.9024e-12 - 8.56914e-09 -3.80986e-09 -1.95178e-12 1.07797e-08 -2.43717e-09 -1.98194e-12 1.19385e-08 -8.39615e-10 -1.96799e-12 1.19414e-08 8.34711e-10 -1.90065e-12 - 1.07873e-08 2.43486e-09 -1.78795e-12 8.57861e-09 3.81185e-09 -1.65348e-12 5.51913e-09 4.82679e-09 -1.53171e-12 1.90419e-09 5.36682e-09 -1.4588e-12 - 2.26597e-09 -9.52365e-09 -3.04985e-12 6.5615e-09 -8.55774e-09 -3.14276e-12 1.01843e-08 -6.75068e-09 -3.26929e-12 1.27907e-08 -4.31083e-09 -3.35422e-12 - 1.41524e-08 -1.48403e-09 -3.34397e-12 1.41572e-08 1.47398e-09 -3.22013e-12 1.28031e-08 4.30605e-09 -2.99856e-12 1.01999e-08 6.75472e-09 -2.72554e-12 - 6.57432e-09 8.57098e-09 -2.47186e-12 2.27091e-09 9.54281e-09 -2.31692e-12 2.86714e-09 -1.46548e-08 -5.31644e-12 8.28437e-09 -1.31354e-08 -5.5611e-12 - 1.2816e-08 -1.03234e-08 -5.88863e-12 1.60464e-08 -6.57047e-09 -6.11406e-12 1.77233e-08 -2.25867e-09 -6.1212e-12 1.77315e-08 2.2401e-09 -5.87661e-12 - 1.60681e-08 6.56149e-09 -5.41403e-12 1.28435e-08 1.03308e-08 -4.82584e-12 8.30721e-09 1.31602e-08 -4.26231e-12 2.87602e-09 1.46912e-08 -3.90878e-12 - 3.7854e-09 -2.13039e-08 -9.40101e-12 1.08929e-08 -1.9004e-08 -1.00551e-11 1.67492e-08 -1.48353e-08 -1.0895e-11 2.08554e-08 -9.38711e-09 -1.14621e-11 - 2.2963e-08 -3.21841e-09 -1.15202e-11 2.29773e-08 3.18539e-09 -1.10244e-11 2.08938e-08 9.3707e-09 -1.00479e-11 1.67987e-08 1.4848e-08 -8.76481e-12 - 1.09348e-08 1.90492e-08 -7.48517e-12 3.80189e-09 2.13716e-08 -6.65008e-12 5.16712e-09 -3.02505e-08 -1.65177e-11 1.4753e-08 -2.67383e-08 -1.83102e-11 - 2.24329e-08 -2.06235e-08 -2.04477e-11 2.76633e-08 -1.29207e-08 -2.18053e-11 3.02959e-08 -4.40966e-09 -2.19717e-11 3.03206e-08 4.35263e-09 -2.09521e-11 - 2.77307e-08 1.2891e-08 -1.89034e-11 2.2522e-08 2.06439e-08 -1.61104e-11 1.48308e-08 2.68189e-08 -1.31652e-11 5.19845e-09 3.03761e-08 -1.11221e-11 - 7.29759e-09 -4.27052e-08 -2.84316e-11 2.052e-08 -3.70704e-08 -3.3547e-11 3.05669e-08 -2.79935e-08 -3.89452e-11 3.70693e-08 -1.72558e-08 -4.20046e-11 - 4.02363e-08 -5.8453e-09 -4.23045e-11 4.0278e-08 5.75031e-09 -4.01837e-11 3.71851e-08 1.72025e-08 -3.59641e-11 3.07265e-08 2.80225e-08 -2.99581e-11 - 2.06669e-08 3.72098e-08 -2.30996e-11 7.3591e-09 4.29403e-08 -1.78598e-11 1.0802e-08 -6.07887e-08 -4.68975e-11 2.94647e-08 -5.08358e-08 -6.23713e-11 - 4.22475e-08 -3.70133e-08 -7.57903e-11 4.98115e-08 -2.22509e-08 -8.20569e-11 5.33019e-08 -7.45313e-09 -8.21456e-11 5.33684e-08 7.30362e-09 -7.76959e-11 - 5.00028e-08 2.21571e-08 -6.93022e-11 4.25292e-08 3.70423e-08 -5.67294e-11 2.97487e-08 5.10632e-08 -4.06313e-11 1.0929e-08 6.12387e-08 -2.6293e-11 - 1.72505e-08 -8.88185e-08 -7.0025e-11 4.42954e-08 -6.84572e-08 -1.20517e-10 5.91518e-08 -4.69524e-08 -1.52403e-10 6.66294e-08 -2.72577e-08 -1.62901e-10 - 6.97908e-08 -8.99592e-09 -1.6073e-10 6.98882e-08 8.78293e-09 -1.51375e-10 6.69237e-08 2.70999e-08 -1.3566e-10 5.96326e-08 4.69417e-08 -1.10751e-10 - 4.48633e-08 6.8771e-08 -7.31801e-11 1.75346e-08 8.97157e-08 -3.04796e-11 3.11632e-08 -1.3721e-07 -7.49631e-11 7.13307e-08 -8.7205e-08 -2.55006e-10 - 8.34469e-08 -5.50463e-08 -3.20614e-10 8.7768e-08 -3.07889e-08 -3.2879e-10 8.93426e-08 -1.00123e-08 -3.1643e-10 8.94643e-08 9.76507e-09 -2.96964e-10 - 8.81616e-08 3.05535e-08 -2.70498e-10 8.42004e-08 5.48799e-08 -2.26614e-10 7.25227e-08 8.73755e-08 -1.43132e-10 3.18737e-08 1.39135e-07 -2.45338e-12 - 1.72873e-09 -1.72873e-09 -1.68146e-12 5.01372e-09 -1.55626e-09 -1.70325e-12 7.80109e-09 -1.23111e-09 -1.73201e-12 9.82047e-09 -7.88269e-10 -1.74652e-12 - 1.08806e-08 -2.71872e-10 -1.72943e-12 1.08828e-08 2.69723e-10 -1.67404e-12 9.82611e-09 7.86922e-10 -1.58664e-12 7.8081e-09 1.23108e-09 -1.4852e-12 - 5.01942e-09 1.55759e-09 -1.39517e-12 1.73091e-09 1.73091e-09 -1.34202e-12 1.9012e-09 -5.35866e-09 -2.30191e-12 5.51134e-09 -4.82148e-09 -2.34685e-12 - 8.56909e-09 -3.81101e-09 -2.40782e-12 1.07797e-08 -2.43837e-09 -2.44522e-12 1.19386e-08 -8.40814e-10 -2.42829e-12 1.19415e-08 8.33561e-10 -2.34548e-12 - 1.07875e-08 2.4338e-09 -2.2067e-12 8.57877e-09 3.81091e-09 -2.04109e-12 5.51925e-09 4.82596e-09 -1.89118e-12 1.90423e-09 5.36606e-09 -1.80147e-12 - 2.26591e-09 -9.52578e-09 -3.7566e-12 6.56137e-09 -8.55999e-09 -3.87079e-12 1.01842e-08 -6.75311e-09 -4.02683e-12 1.27907e-08 -4.31337e-09 -4.1322e-12 - 1.41525e-08 -1.48659e-09 -4.12052e-12 1.41574e-08 1.47153e-09 -3.96876e-12 1.28035e-08 4.30382e-09 -3.69645e-12 1.02003e-08 6.75277e-09 -3.36086e-12 - 6.57457e-09 8.5693e-09 -3.04933e-12 2.27101e-09 9.5413e-09 -2.85929e-12 2.86699e-09 -1.46587e-08 -6.53171e-12 8.28401e-09 -1.31396e-08 -6.83113e-12 - 1.28157e-08 -1.03281e-08 -7.23436e-12 1.60462e-08 -6.57545e-09 -7.5144e-12 1.77235e-08 -2.26371e-09 -7.52659e-12 1.7732e-08 2.23529e-09 -7.22836e-12 - 1.60687e-08 6.55715e-09 -6.66128e-12 1.28442e-08 1.0327e-08 -5.94016e-12 8.30778e-09 1.31571e-08 -5.25058e-12 2.87624e-09 1.46885e-08 -4.81908e-12 - 3.785e-09 -2.13108e-08 -1.15011e-11 1.0892e-08 -1.90118e-08 -1.22956e-11 1.67484e-08 -1.48442e-08 -1.33272e-11 2.0855e-08 -9.39673e-09 -1.40338e-11 - 2.29633e-08 -3.22814e-09 -1.41173e-11 2.29782e-08 3.17614e-09 -1.35173e-11 2.08952e-08 9.36241e-09 -1.23239e-11 1.68003e-08 1.48411e-08 -1.07562e-11 - 1.09361e-08 1.90437e-08 -9.19867e-12 3.8024e-09 2.13671e-08 -8.18754e-12 5.16602e-09 -3.02621e-08 -2.00638e-11 1.47506e-08 -2.67526e-08 -2.22139e-11 - 2.24307e-08 -2.06406e-08 -2.48306e-11 2.76623e-08 -1.29393e-08 -2.65331e-11 3.02964e-08 -4.42848e-09 -2.67812e-11 3.03225e-08 4.33479e-09 -2.55602e-11 - 2.77336e-08 1.28751e-08 -2.30656e-11 2.25255e-08 2.0631e-08 -1.96676e-11 1.48339e-08 2.68093e-08 -1.61111e-11 5.1997e-09 3.03692e-08 -1.36699e-11 - 7.2945e-09 -4.27234e-08 -3.41177e-11 2.05135e-08 -3.70967e-08 -4.01244e-11 3.05616e-08 -2.80268e-08 -4.67096e-11 3.70671e-08 -1.72922e-08 -5.06055e-11 - 4.02374e-08 -5.88185e-09 -5.11324e-11 4.02819e-08 5.71581e-09 -4.86299e-11 3.71914e-08 1.71719e-08 -4.35098e-11 3.07344e-08 2.79979e-08 -3.62363e-11 - 2.06743e-08 3.71931e-08 -2.80487e-11 7.36227e-09 4.2931e-08 -2.19231e-11 1.07927e-08 -6.08128e-08 -5.5103e-11 2.94472e-08 -5.08861e-08 -7.2659e-11 - 4.22352e-08 -3.70802e-08 -8.90158e-11 4.98073e-08 -2.23232e-08 -9.73077e-11 5.33044e-08 -7.52437e-09 -9.79979e-11 5.33763e-08 7.23667e-09 -9.28518e-11 - 5.00157e-08 2.20973e-08 -8.26777e-11 4.25467e-08 3.69942e-08 -6.74982e-11 2.9767e-08 5.10336e-08 -4.85763e-11 1.09376e-08 6.12308e-08 -3.23866e-11 - 1.72212e-08 -8.88321e-08 -7.91997e-11 4.42461e-08 -6.8562e-08 -1.33552e-10 5.91246e-08 -4.70925e-08 -1.72917e-10 6.6623e-08 -2.74024e-08 -1.8849e-10 - 6.97972e-08 -9.13481e-09 -1.87949e-10 6.99035e-08 8.65282e-09 -1.77405e-10 6.69489e-08 2.69815e-08 -1.58221e-10 5.96707e-08 4.68435e-08 -1.27999e-10 - 4.49109e-08 6.87138e-08 -8.46312e-11 1.75594e-08 8.97289e-08 -3.8889e-11 3.10629e-08 -1.37126e-07 -7.77463e-11 7.11868e-08 -8.7462e-08 -2.57493e-10 - 8.33947e-08 -5.535e-08 -3.44527e-10 8.7765e-08 -3.10793e-08 -3.66592e-10 8.93597e-08 -1.02821e-08 -3.58981e-10 8.94926e-08 9.51259e-09 -3.3772e-10 - 8.82064e-08 3.0317e-08 -3.04346e-10 8.42791e-08 5.46701e-08 -2.49214e-10 7.26523e-08 8.72402e-08 -1.53922e-10 3.19526e-08 1.3925e-07 -1.40396e-11 - 1.72872e-09 -1.72904e-09 -1.35881e-12 5.0137e-09 -1.55658e-09 -1.37641e-12 7.80107e-09 -1.23145e-09 -1.39967e-12 9.82047e-09 -7.88617e-10 -1.41145e-12 - 1.08806e-08 -2.7222e-10 -1.39771e-12 1.08828e-08 2.69387e-10 -1.35305e-12 9.8262e-09 7.86613e-10 -1.28251e-12 7.80819e-09 1.23081e-09 -1.20064e-12 - 5.01949e-09 1.55734e-09 -1.12798e-12 1.73094e-09 1.73068e-09 -1.0851e-12 1.90117e-09 -5.35969e-09 -1.8587e-12 5.51129e-09 -4.82256e-09 -1.89495e-12 - 8.56904e-09 -3.81216e-09 -1.94421e-12 1.07797e-08 -2.43955e-09 -1.97456e-12 1.19386e-08 -8.42006e-10 -1.9611e-12 1.19417e-08 8.32416e-10 -1.89445e-12 - 1.07876e-08 2.43275e-09 -1.7826e-12 8.57893e-09 3.80997e-09 -1.64911e-12 5.51937e-09 4.82514e-09 -1.52832e-12 1.90428e-09 5.3653e-09 -1.45608e-12 - 2.26585e-09 -9.52788e-09 -3.02873e-12 6.56123e-09 -8.56222e-09 -3.12059e-12 1.01841e-08 -6.75551e-09 -3.2465e-12 1.27906e-08 -4.3159e-09 -3.33202e-12 - 1.41526e-08 -1.48912e-09 -3.32333e-12 1.41576e-08 1.46909e-09 -3.20159e-12 1.28038e-08 4.3016e-09 -2.98256e-12 1.02006e-08 6.75083e-09 -2.71259e-12 - 6.57482e-09 8.56762e-09 -2.4622e-12 2.2711e-09 9.53979e-09 -2.30963e-12 2.86684e-09 -1.46625e-08 -5.25328e-12 8.28366e-09 -1.31438e-08 -5.49315e-12 - 1.28154e-08 -1.03327e-08 -5.81792e-12 1.60461e-08 -6.58037e-09 -6.04536e-12 1.77236e-08 -2.26867e-09 -6.05773e-12 1.77324e-08 2.23055e-09 -5.81969e-12 - 1.60694e-08 6.55287e-09 -5.36474e-12 1.28449e-08 1.03234e-08 -4.7862e-12 8.30834e-09 1.31541e-08 -4.23396e-12 2.87645e-09 1.46859e-08 -3.8892e-12 - 3.78461e-09 -2.13175e-08 -9.21335e-12 1.08911e-08 -1.90193e-08 -9.84544e-12 1.67475e-08 -1.48529e-08 -1.06739e-11 2.08546e-08 -9.40613e-09 -1.12488e-11 - 2.29635e-08 -3.23767e-09 -1.13249e-11 2.29791e-08 3.16706e-09 -1.08494e-11 2.08966e-08 9.35429e-09 -9.89522e-12 1.68018e-08 1.48343e-08 -8.64205e-12 - 1.09373e-08 1.90383e-08 -7.40149e-12 3.8029e-09 2.13627e-08 -6.59994e-12 5.16497e-09 -3.02731e-08 -1.59685e-11 1.47482e-08 -2.67662e-08 -1.7659e-11 - 2.24286e-08 -2.06569e-08 -1.97518e-11 2.76613e-08 -1.29573e-08 -2.11423e-11 3.02968e-08 -4.44667e-09 -2.13724e-11 3.03243e-08 4.31752e-09 -2.0415e-11 - 2.77365e-08 1.28598e-08 -1.84289e-11 2.25289e-08 2.06184e-08 -1.57259e-11 1.48368e-08 2.68e-08 -1.29163e-11 5.20089e-09 3.03623e-08 -1.10058e-11 - 7.29159e-09 -4.27403e-08 -2.68656e-11 2.05074e-08 -3.71208e-08 -3.14991e-11 3.05564e-08 -2.80577e-08 -3.67362e-11 3.70648e-08 -1.73266e-08 -3.99456e-11 - 4.02383e-08 -5.91651e-09 -4.04752e-11 4.02856e-08 5.68302e-09 -3.85415e-11 3.71975e-08 1.71429e-08 -3.44851e-11 3.0742e-08 2.79746e-08 -2.87353e-11 - 2.06812e-08 3.71773e-08 -2.23458e-11 7.36523e-09 4.29216e-08 -1.76504e-11 1.07844e-08 -6.08338e-08 -4.26412e-11 2.94308e-08 -5.09292e-08 -5.5787e-11 - 4.22228e-08 -3.71395e-08 -6.87114e-11 4.98025e-08 -2.23888e-08 -7.56798e-11 5.33064e-08 -7.58995e-09 -7.66011e-11 5.33838e-08 7.17485e-09 -7.2704e-11 - 5.00282e-08 2.20424e-08 -6.46831e-11 4.25633e-08 3.69505e-08 -5.27704e-11 2.97838e-08 5.10066e-08 -3.8262e-11 1.09452e-08 6.12217e-08 -2.62515e-11 - 1.71961e-08 -8.88411e-08 -5.95717e-11 4.42017e-08 -6.8642e-08 -9.8529e-11 5.90969e-08 -4.72079e-08 -1.29514e-10 6.66144e-08 -2.7527e-08 -1.43276e-10 - 6.98019e-08 -9.25691e-09 -1.4409e-10 6.99179e-08 8.53806e-09 -1.36315e-10 6.69731e-08 2.68782e-08 -1.21239e-10 5.97062e-08 4.676e-08 -9.76784e-11 - 4.49525e-08 6.86657e-08 -6.52204e-11 1.75803e-08 8.9734e-08 -3.29082e-11 3.09835e-08 -1.37052e-07 -5.56398e-11 7.10639e-08 -8.76286e-08 -1.76998e-10 - 8.33379e-08 -5.55766e-08 -2.46326e-10 8.77536e-08 -3.13101e-08 -2.69132e-10 8.93714e-08 -1.05024e-08 -2.67103e-10 8.95189e-08 9.30581e-09 -2.51963e-10 - 8.82501e-08 3.0127e-08 -2.25676e-10 8.43508e-08 5.45083e-08 -1.82732e-10 7.27579e-08 8.71411e-08 -1.1353e-10 3.20136e-08 1.3932e-07 -2.12639e-11 - 1.72871e-09 -1.72923e-09 -5.18664e-13 5.01368e-09 -1.55678e-09 -5.2538e-13 7.80106e-09 -1.23165e-09 -5.3426e-13 9.82047e-09 -7.88832e-10 -5.38768e-13 - 1.08807e-08 -2.72435e-10 -5.33545e-13 1.08829e-08 2.69181e-10 -5.16517e-13 9.82626e-09 7.86422e-10 -4.89614e-13 7.80825e-09 1.23064e-09 -4.58388e-13 - 5.01954e-09 1.55719e-09 -4.30679e-13 1.73096e-09 1.73054e-09 -4.14328e-13 1.90116e-09 -5.36033e-09 -7.09128e-13 5.51126e-09 -4.82322e-09 -7.22947e-13 - 8.56901e-09 -3.81286e-09 -7.41744e-13 1.07797e-08 -2.44029e-09 -7.53357e-13 1.19387e-08 -8.4274e-10 -7.48273e-13 1.19417e-08 8.31712e-10 -7.22895e-13 - 1.07877e-08 2.4321e-09 -6.80271e-13 8.57902e-09 3.80939e-09 -6.29396e-13 5.51944e-09 4.82463e-09 -5.83376e-13 1.90431e-09 5.36483e-09 -5.55859e-13 - 2.26582e-09 -9.52917e-09 -1.15446e-12 6.56115e-09 -8.56359e-09 -1.18942e-12 1.0184e-08 -6.75698e-09 -1.23744e-12 1.27906e-08 -4.31744e-09 -1.27015e-12 - 1.41527e-08 -1.49068e-09 -1.26701e-12 1.41577e-08 1.4676e-09 -1.22075e-12 1.28039e-08 4.30023e-09 -1.13739e-12 1.02008e-08 6.74963e-09 -1.03463e-12 - 6.57498e-09 8.56659e-09 -9.39378e-13 2.27116e-09 9.53887e-09 -8.81374e-13 2.86675e-09 -1.46649e-08 -1.99946e-12 8.28345e-09 -1.31463e-08 -2.09053e-12 - 1.28152e-08 -1.03355e-08 -2.21423e-12 1.6046e-08 -6.58337e-09 -2.30127e-12 1.77237e-08 -2.27171e-09 -2.30655e-12 1.77326e-08 2.22764e-09 -2.21638e-12 - 1.60697e-08 6.55024e-09 -2.04351e-12 1.28454e-08 1.03211e-08 -1.82368e-12 8.30868e-09 1.31522e-08 -1.61406e-12 2.87658e-09 1.46842e-08 -1.48338e-12 - 3.78437e-09 -2.13215e-08 -3.49849e-12 1.08905e-08 -1.90239e-08 -3.73748e-12 1.6747e-08 -1.48582e-08 -4.05243e-12 2.08544e-08 -9.41183e-09 -4.27258e-12 - 2.29637e-08 -3.24346e-09 -4.30348e-12 2.29797e-08 3.16154e-09 -4.12414e-12 2.08974e-08 9.34935e-09 -3.76239e-12 1.68027e-08 1.48301e-08 -3.28733e-12 - 1.09381e-08 1.9035e-08 -2.81804e-12 3.8032e-09 2.136e-08 -2.51565e-12 5.16433e-09 -3.02798e-08 -6.04062e-12 1.47468e-08 -2.67743e-08 -6.6755e-12 - 2.24272e-08 -2.06666e-08 -7.4688e-12 2.76607e-08 -1.2968e-08 -8.00208e-12 3.02971e-08 -4.45763e-09 -8.0962e-12 3.03254e-08 4.3071e-09 -7.73739e-12 - 2.77383e-08 1.28506e-08 -6.9865e-12 2.2531e-08 2.06109e-08 -5.96515e-12 1.48386e-08 2.67944e-08 -4.90775e-12 5.20161e-09 3.03581e-08 -4.19252e-12 - 7.28986e-09 -4.27501e-08 -1.01013e-11 2.05037e-08 -3.71348e-08 -1.18226e-11 3.05532e-08 -2.80758e-08 -1.37998e-11 3.70634e-08 -1.73468e-08 -1.50346e-11 - 4.02388e-08 -5.93708e-09 -1.5258e-11 4.02878e-08 5.66352e-09 -1.45399e-11 3.72012e-08 1.71257e-08 -1.30117e-11 3.07465e-08 2.79608e-08 -1.08486e-11 - 2.06854e-08 3.71678e-08 -8.46222e-12 7.36696e-09 4.29158e-08 -6.72589e-12 1.07796e-08 -6.08455e-08 -1.5879e-11 2.94211e-08 -5.09532e-08 -2.06822e-11 - 4.22153e-08 -3.7173e-08 -2.55361e-11 4.97994e-08 -2.24265e-08 -2.8237e-11 5.33074e-08 -7.62799e-09 -2.86601e-11 5.33882e-08 7.13889e-09 -2.7231e-11 - 5.00356e-08 2.20105e-08 -2.4222e-11 4.25732e-08 3.69252e-08 -1.97655e-11 2.97935e-08 5.09907e-08 -1.44075e-11 1.09496e-08 6.12155e-08 -1.00502e-11 - 1.71822e-08 -8.88451e-08 -2.1849e-11 4.41762e-08 -6.86832e-08 -3.5751e-11 5.90799e-08 -4.72701e-08 -4.73223e-11 6.66084e-08 -2.75959e-08 -5.27486e-11 - 6.98042e-08 -9.32531e-09 -5.32938e-11 6.99264e-08 8.47356e-09 -5.04906e-11 6.69875e-08 2.68205e-08 -4.48625e-11 5.97268e-08 4.67136e-08 -3.611e-11 - 4.49756e-08 6.86386e-08 -2.43128e-11 1.75917e-08 8.97339e-08 -1.29163e-11 3.09415e-08 -1.37011e-07 -1.98921e-11 7.09961e-08 -8.77056e-08 -6.18743e-11 - 8.33026e-08 -5.56906e-08 -8.77068e-11 8.77442e-08 -3.14304e-08 -9.71117e-11 8.93768e-08 -1.06194e-08 -9.70673e-11 8.9534e-08 9.19567e-09 -9.17319e-11 - 8.82757e-08 3.00265e-08 -8.19752e-11 8.43912e-08 5.44237e-08 -6.61505e-11 7.28138e-08 8.70889e-08 -4.15355e-11 3.20449e-08 1.39347e-07 -1.02263e-11 - 1.72871e-09 -1.72923e-09 5.18664e-13 5.01368e-09 -1.55678e-09 5.2538e-13 7.80106e-09 -1.23165e-09 5.3426e-13 9.82047e-09 -7.88832e-10 5.38768e-13 - 1.08807e-08 -2.72435e-10 5.33545e-13 1.08829e-08 2.69181e-10 5.16517e-13 9.82626e-09 7.86422e-10 4.89614e-13 7.80825e-09 1.23064e-09 4.58388e-13 - 5.01954e-09 1.55719e-09 4.30679e-13 1.73096e-09 1.73054e-09 4.14328e-13 1.90116e-09 -5.36033e-09 7.09128e-13 5.51126e-09 -4.82322e-09 7.22947e-13 - 8.56901e-09 -3.81286e-09 7.41744e-13 1.07797e-08 -2.44029e-09 7.53357e-13 1.19387e-08 -8.4274e-10 7.48273e-13 1.19417e-08 8.31712e-10 7.22895e-13 - 1.07877e-08 2.4321e-09 6.80271e-13 8.57902e-09 3.80939e-09 6.29396e-13 5.51944e-09 4.82463e-09 5.83376e-13 1.90431e-09 5.36483e-09 5.55859e-13 - 2.26582e-09 -9.52917e-09 1.15446e-12 6.56115e-09 -8.56359e-09 1.18942e-12 1.0184e-08 -6.75698e-09 1.23744e-12 1.27906e-08 -4.31744e-09 1.27015e-12 - 1.41527e-08 -1.49068e-09 1.26701e-12 1.41577e-08 1.4676e-09 1.22075e-12 1.28039e-08 4.30023e-09 1.13739e-12 1.02008e-08 6.74963e-09 1.03463e-12 - 6.57498e-09 8.56659e-09 9.39378e-13 2.27116e-09 9.53887e-09 8.81374e-13 2.86675e-09 -1.46649e-08 1.99946e-12 8.28345e-09 -1.31463e-08 2.09053e-12 - 1.28152e-08 -1.03355e-08 2.21423e-12 1.6046e-08 -6.58337e-09 2.30127e-12 1.77237e-08 -2.27171e-09 2.30655e-12 1.77326e-08 2.22764e-09 2.21638e-12 - 1.60697e-08 6.55024e-09 2.04351e-12 1.28454e-08 1.03211e-08 1.82368e-12 8.30868e-09 1.31522e-08 1.61406e-12 2.87658e-09 1.46842e-08 1.48338e-12 - 3.78437e-09 -2.13215e-08 3.49849e-12 1.08905e-08 -1.90239e-08 3.73748e-12 1.6747e-08 -1.48582e-08 4.05243e-12 2.08544e-08 -9.41183e-09 4.27258e-12 - 2.29637e-08 -3.24346e-09 4.30348e-12 2.29797e-08 3.16154e-09 4.12414e-12 2.08974e-08 9.34935e-09 3.76239e-12 1.68027e-08 1.48301e-08 3.28733e-12 - 1.09381e-08 1.9035e-08 2.81804e-12 3.8032e-09 2.136e-08 2.51565e-12 5.16433e-09 -3.02798e-08 6.04062e-12 1.47468e-08 -2.67743e-08 6.6755e-12 - 2.24272e-08 -2.06666e-08 7.4688e-12 2.76607e-08 -1.2968e-08 8.00208e-12 3.02971e-08 -4.45763e-09 8.0962e-12 3.03254e-08 4.3071e-09 7.73739e-12 - 2.77383e-08 1.28506e-08 6.9865e-12 2.2531e-08 2.06109e-08 5.96515e-12 1.48386e-08 2.67944e-08 4.90775e-12 5.20161e-09 3.03581e-08 4.19252e-12 - 7.28986e-09 -4.27501e-08 1.01013e-11 2.05037e-08 -3.71348e-08 1.18226e-11 3.05532e-08 -2.80758e-08 1.37998e-11 3.70634e-08 -1.73468e-08 1.50346e-11 - 4.02388e-08 -5.93708e-09 1.5258e-11 4.02878e-08 5.66352e-09 1.45399e-11 3.72012e-08 1.71257e-08 1.30117e-11 3.07465e-08 2.79608e-08 1.08486e-11 - 2.06854e-08 3.71678e-08 8.46222e-12 7.36696e-09 4.29158e-08 6.72589e-12 1.07796e-08 -6.08455e-08 1.5879e-11 2.94211e-08 -5.09532e-08 2.06822e-11 - 4.22153e-08 -3.7173e-08 2.55361e-11 4.97994e-08 -2.24265e-08 2.8237e-11 5.33074e-08 -7.62799e-09 2.86601e-11 5.33882e-08 7.13889e-09 2.7231e-11 - 5.00356e-08 2.20105e-08 2.4222e-11 4.25732e-08 3.69252e-08 1.97655e-11 2.97935e-08 5.09907e-08 1.44075e-11 1.09496e-08 6.12155e-08 1.00502e-11 - 1.71822e-08 -8.88451e-08 2.1849e-11 4.41762e-08 -6.86832e-08 3.5751e-11 5.90799e-08 -4.72701e-08 4.73223e-11 6.66084e-08 -2.75959e-08 5.27486e-11 - 6.98042e-08 -9.32531e-09 5.32938e-11 6.99264e-08 8.47356e-09 5.04906e-11 6.69875e-08 2.68205e-08 4.48625e-11 5.97268e-08 4.67136e-08 3.611e-11 - 4.49756e-08 6.86386e-08 2.43128e-11 1.75917e-08 8.97339e-08 1.29163e-11 3.09415e-08 -1.37011e-07 1.98921e-11 7.09961e-08 -8.77056e-08 6.18743e-11 - 8.33026e-08 -5.56906e-08 8.77068e-11 8.77442e-08 -3.14304e-08 9.71117e-11 8.93768e-08 -1.06194e-08 9.70673e-11 8.9534e-08 9.19567e-09 9.17319e-11 - 8.82757e-08 3.00265e-08 8.19752e-11 8.43912e-08 5.44237e-08 6.61505e-11 7.28138e-08 8.70889e-08 4.15355e-11 3.20449e-08 1.39347e-07 1.02263e-11 - 1.72872e-09 -1.72904e-09 1.35881e-12 5.0137e-09 -1.55658e-09 1.37641e-12 7.80107e-09 -1.23145e-09 1.39967e-12 9.82047e-09 -7.88617e-10 1.41145e-12 - 1.08806e-08 -2.7222e-10 1.39771e-12 1.08828e-08 2.69387e-10 1.35305e-12 9.8262e-09 7.86613e-10 1.28251e-12 7.80819e-09 1.23081e-09 1.20064e-12 - 5.01949e-09 1.55734e-09 1.12798e-12 1.73094e-09 1.73068e-09 1.0851e-12 1.90117e-09 -5.35969e-09 1.8587e-12 5.51129e-09 -4.82256e-09 1.89495e-12 - 8.56904e-09 -3.81216e-09 1.94421e-12 1.07797e-08 -2.43955e-09 1.97456e-12 1.19386e-08 -8.42006e-10 1.9611e-12 1.19417e-08 8.32416e-10 1.89445e-12 - 1.07876e-08 2.43275e-09 1.7826e-12 8.57893e-09 3.80997e-09 1.64911e-12 5.51937e-09 4.82514e-09 1.52832e-12 1.90428e-09 5.3653e-09 1.45608e-12 - 2.26585e-09 -9.52788e-09 3.02873e-12 6.56123e-09 -8.56222e-09 3.12059e-12 1.01841e-08 -6.75551e-09 3.2465e-12 1.27906e-08 -4.3159e-09 3.33202e-12 - 1.41526e-08 -1.48912e-09 3.32333e-12 1.41576e-08 1.46909e-09 3.20159e-12 1.28038e-08 4.3016e-09 2.98256e-12 1.02006e-08 6.75083e-09 2.71259e-12 - 6.57482e-09 8.56762e-09 2.4622e-12 2.2711e-09 9.53979e-09 2.30963e-12 2.86684e-09 -1.46625e-08 5.25328e-12 8.28366e-09 -1.31438e-08 5.49315e-12 - 1.28154e-08 -1.03327e-08 5.81792e-12 1.60461e-08 -6.58037e-09 6.04536e-12 1.77236e-08 -2.26867e-09 6.05773e-12 1.77324e-08 2.23055e-09 5.81969e-12 - 1.60694e-08 6.55287e-09 5.36474e-12 1.28449e-08 1.03234e-08 4.7862e-12 8.30834e-09 1.31541e-08 4.23396e-12 2.87645e-09 1.46859e-08 3.8892e-12 - 3.78461e-09 -2.13175e-08 9.21335e-12 1.08911e-08 -1.90193e-08 9.84544e-12 1.67475e-08 -1.48529e-08 1.06739e-11 2.08546e-08 -9.40613e-09 1.12488e-11 - 2.29635e-08 -3.23767e-09 1.13249e-11 2.29791e-08 3.16706e-09 1.08494e-11 2.08966e-08 9.35429e-09 9.89522e-12 1.68018e-08 1.48343e-08 8.64205e-12 - 1.09373e-08 1.90383e-08 7.40149e-12 3.8029e-09 2.13627e-08 6.59994e-12 5.16497e-09 -3.02731e-08 1.59685e-11 1.47482e-08 -2.67662e-08 1.7659e-11 - 2.24286e-08 -2.06569e-08 1.97518e-11 2.76613e-08 -1.29573e-08 2.11423e-11 3.02968e-08 -4.44667e-09 2.13724e-11 3.03243e-08 4.31752e-09 2.0415e-11 - 2.77365e-08 1.28598e-08 1.84289e-11 2.25289e-08 2.06184e-08 1.57259e-11 1.48368e-08 2.68e-08 1.29163e-11 5.20089e-09 3.03623e-08 1.10058e-11 - 7.29159e-09 -4.27403e-08 2.68656e-11 2.05074e-08 -3.71208e-08 3.14991e-11 3.05564e-08 -2.80577e-08 3.67362e-11 3.70648e-08 -1.73266e-08 3.99456e-11 - 4.02383e-08 -5.91651e-09 4.04752e-11 4.02856e-08 5.68302e-09 3.85415e-11 3.71975e-08 1.71429e-08 3.44851e-11 3.0742e-08 2.79746e-08 2.87353e-11 - 2.06812e-08 3.71773e-08 2.23458e-11 7.36523e-09 4.29216e-08 1.76504e-11 1.07844e-08 -6.08338e-08 4.26412e-11 2.94308e-08 -5.09292e-08 5.5787e-11 - 4.22228e-08 -3.71395e-08 6.87114e-11 4.98025e-08 -2.23888e-08 7.56798e-11 5.33064e-08 -7.58995e-09 7.66011e-11 5.33838e-08 7.17485e-09 7.2704e-11 - 5.00282e-08 2.20424e-08 6.46831e-11 4.25633e-08 3.69505e-08 5.27704e-11 2.97838e-08 5.10066e-08 3.8262e-11 1.09452e-08 6.12217e-08 2.62515e-11 - 1.71961e-08 -8.88411e-08 5.95717e-11 4.42017e-08 -6.8642e-08 9.8529e-11 5.90969e-08 -4.72079e-08 1.29514e-10 6.66144e-08 -2.7527e-08 1.43276e-10 - 6.98019e-08 -9.25691e-09 1.4409e-10 6.99179e-08 8.53806e-09 1.36315e-10 6.69731e-08 2.68782e-08 1.21239e-10 5.97062e-08 4.676e-08 9.76784e-11 - 4.49525e-08 6.86657e-08 6.52204e-11 1.75803e-08 8.9734e-08 3.29082e-11 3.09835e-08 -1.37052e-07 5.56398e-11 7.10639e-08 -8.76286e-08 1.76998e-10 - 8.33379e-08 -5.55766e-08 2.46326e-10 8.77536e-08 -3.13101e-08 2.69132e-10 8.93714e-08 -1.05024e-08 2.67103e-10 8.95189e-08 9.30581e-09 2.51963e-10 - 8.82501e-08 3.0127e-08 2.25676e-10 8.43508e-08 5.45083e-08 1.82732e-10 7.27579e-08 8.71411e-08 1.1353e-10 3.20136e-08 1.3932e-07 2.12639e-11 - 1.72873e-09 -1.72873e-09 1.68146e-12 5.01372e-09 -1.55626e-09 1.70325e-12 7.80109e-09 -1.23111e-09 1.73201e-12 9.82047e-09 -7.88269e-10 1.74652e-12 - 1.08806e-08 -2.71872e-10 1.72943e-12 1.08828e-08 2.69723e-10 1.67404e-12 9.82611e-09 7.86922e-10 1.58664e-12 7.8081e-09 1.23108e-09 1.4852e-12 - 5.01942e-09 1.55759e-09 1.39517e-12 1.73091e-09 1.73091e-09 1.34202e-12 1.9012e-09 -5.35866e-09 2.30191e-12 5.51134e-09 -4.82148e-09 2.34685e-12 - 8.56909e-09 -3.81101e-09 2.40782e-12 1.07797e-08 -2.43837e-09 2.44522e-12 1.19386e-08 -8.40814e-10 2.42829e-12 1.19415e-08 8.33561e-10 2.34548e-12 - 1.07875e-08 2.4338e-09 2.2067e-12 8.57877e-09 3.81091e-09 2.04109e-12 5.51925e-09 4.82596e-09 1.89118e-12 1.90423e-09 5.36606e-09 1.80147e-12 - 2.26591e-09 -9.52578e-09 3.7566e-12 6.56137e-09 -8.55999e-09 3.87079e-12 1.01842e-08 -6.75311e-09 4.02683e-12 1.27907e-08 -4.31337e-09 4.1322e-12 - 1.41525e-08 -1.48659e-09 4.12052e-12 1.41574e-08 1.47153e-09 3.96876e-12 1.28035e-08 4.30382e-09 3.69645e-12 1.02003e-08 6.75277e-09 3.36086e-12 - 6.57457e-09 8.5693e-09 3.04933e-12 2.27101e-09 9.5413e-09 2.85929e-12 2.86699e-09 -1.46587e-08 6.53171e-12 8.28401e-09 -1.31396e-08 6.83113e-12 - 1.28157e-08 -1.03281e-08 7.23436e-12 1.60462e-08 -6.57545e-09 7.5144e-12 1.77235e-08 -2.26371e-09 7.52659e-12 1.7732e-08 2.23529e-09 7.22836e-12 - 1.60687e-08 6.55715e-09 6.66128e-12 1.28442e-08 1.0327e-08 5.94016e-12 8.30778e-09 1.31571e-08 5.25058e-12 2.87624e-09 1.46885e-08 4.81908e-12 - 3.785e-09 -2.13108e-08 1.15011e-11 1.0892e-08 -1.90118e-08 1.22956e-11 1.67484e-08 -1.48442e-08 1.33272e-11 2.0855e-08 -9.39673e-09 1.40338e-11 - 2.29633e-08 -3.22814e-09 1.41173e-11 2.29782e-08 3.17614e-09 1.35173e-11 2.08952e-08 9.36241e-09 1.23239e-11 1.68003e-08 1.48411e-08 1.07562e-11 - 1.09361e-08 1.90437e-08 9.19867e-12 3.8024e-09 2.13671e-08 8.18754e-12 5.16602e-09 -3.02621e-08 2.00638e-11 1.47506e-08 -2.67526e-08 2.22139e-11 - 2.24307e-08 -2.06406e-08 2.48306e-11 2.76623e-08 -1.29393e-08 2.65331e-11 3.02964e-08 -4.42848e-09 2.67812e-11 3.03225e-08 4.33479e-09 2.55602e-11 - 2.77336e-08 1.28751e-08 2.30656e-11 2.25255e-08 2.0631e-08 1.96676e-11 1.48339e-08 2.68093e-08 1.61111e-11 5.1997e-09 3.03692e-08 1.36699e-11 - 7.2945e-09 -4.27234e-08 3.41177e-11 2.05135e-08 -3.70967e-08 4.01244e-11 3.05616e-08 -2.80268e-08 4.67096e-11 3.70671e-08 -1.72922e-08 5.06055e-11 - 4.02374e-08 -5.88185e-09 5.11324e-11 4.02819e-08 5.71581e-09 4.86299e-11 3.71914e-08 1.71719e-08 4.35098e-11 3.07344e-08 2.79979e-08 3.62363e-11 - 2.06743e-08 3.71931e-08 2.80487e-11 7.36227e-09 4.2931e-08 2.19231e-11 1.07927e-08 -6.08128e-08 5.5103e-11 2.94472e-08 -5.08861e-08 7.2659e-11 - 4.22352e-08 -3.70802e-08 8.90158e-11 4.98073e-08 -2.23232e-08 9.73077e-11 5.33044e-08 -7.52437e-09 9.79979e-11 5.33763e-08 7.23667e-09 9.28518e-11 - 5.00157e-08 2.20973e-08 8.26777e-11 4.25467e-08 3.69942e-08 6.74982e-11 2.9767e-08 5.10336e-08 4.85763e-11 1.09376e-08 6.12308e-08 3.23866e-11 - 1.72212e-08 -8.88321e-08 7.91997e-11 4.42461e-08 -6.8562e-08 1.33552e-10 5.91246e-08 -4.70925e-08 1.72917e-10 6.6623e-08 -2.74024e-08 1.8849e-10 - 6.97972e-08 -9.13481e-09 1.87949e-10 6.99035e-08 8.65282e-09 1.77405e-10 6.69489e-08 2.69815e-08 1.58221e-10 5.96707e-08 4.68435e-08 1.27999e-10 - 4.49109e-08 6.87138e-08 8.46312e-11 1.75594e-08 8.97289e-08 3.8889e-11 3.10629e-08 -1.37126e-07 7.77463e-11 7.11868e-08 -8.7462e-08 2.57493e-10 - 8.33947e-08 -5.535e-08 3.44527e-10 8.7765e-08 -3.10793e-08 3.66592e-10 8.93597e-08 -1.02821e-08 3.58981e-10 8.94926e-08 9.51259e-09 3.3772e-10 - 8.82064e-08 3.0317e-08 3.04346e-10 8.42791e-08 5.46701e-08 2.49214e-10 7.26523e-08 8.72402e-08 1.53922e-10 3.19526e-08 1.3925e-07 1.40396e-11 - 1.72874e-09 -1.72842e-09 1.36186e-12 5.01375e-09 -1.55594e-09 1.37952e-12 7.80111e-09 -1.23077e-09 1.4028e-12 9.82047e-09 -7.87919e-10 1.4145e-12 - 1.08806e-08 -2.71522e-10 1.40057e-12 1.08827e-08 2.70059e-10 1.35562e-12 9.82601e-09 7.87233e-10 1.28474e-12 7.808e-09 1.23136e-09 1.20248e-12 - 5.01935e-09 1.55784e-09 1.12946e-12 1.73089e-09 1.73114e-09 1.08634e-12 1.90122e-09 -5.35762e-09 1.86592e-12 5.5114e-09 -4.82039e-09 1.9024e-12 - 8.56914e-09 -3.80986e-09 1.95178e-12 1.07797e-08 -2.43717e-09 1.98194e-12 1.19385e-08 -8.39615e-10 1.96799e-12 1.19414e-08 8.34711e-10 1.90065e-12 - 1.07873e-08 2.43486e-09 1.78795e-12 8.57861e-09 3.81185e-09 1.65348e-12 5.51913e-09 4.82679e-09 1.53171e-12 1.90419e-09 5.36682e-09 1.4588e-12 - 2.26597e-09 -9.52365e-09 3.04985e-12 6.5615e-09 -8.55774e-09 3.14276e-12 1.01843e-08 -6.75068e-09 3.26929e-12 1.27907e-08 -4.31083e-09 3.35422e-12 - 1.41524e-08 -1.48403e-09 3.34397e-12 1.41572e-08 1.47398e-09 3.22013e-12 1.28031e-08 4.30605e-09 2.99856e-12 1.01999e-08 6.75472e-09 2.72554e-12 - 6.57432e-09 8.57098e-09 2.47186e-12 2.27091e-09 9.54281e-09 2.31692e-12 2.86714e-09 -1.46548e-08 5.31644e-12 8.28437e-09 -1.31354e-08 5.5611e-12 - 1.2816e-08 -1.03234e-08 5.88863e-12 1.60464e-08 -6.57047e-09 6.11406e-12 1.77233e-08 -2.25867e-09 6.1212e-12 1.77315e-08 2.2401e-09 5.87661e-12 - 1.60681e-08 6.56149e-09 5.41403e-12 1.28435e-08 1.03308e-08 4.82584e-12 8.30721e-09 1.31602e-08 4.26231e-12 2.87602e-09 1.46912e-08 3.90878e-12 - 3.7854e-09 -2.13039e-08 9.40101e-12 1.08929e-08 -1.9004e-08 1.00551e-11 1.67492e-08 -1.48353e-08 1.0895e-11 2.08554e-08 -9.38711e-09 1.14621e-11 - 2.2963e-08 -3.21841e-09 1.15202e-11 2.29773e-08 3.18539e-09 1.10244e-11 2.08938e-08 9.3707e-09 1.00479e-11 1.67987e-08 1.4848e-08 8.76481e-12 - 1.09348e-08 1.90492e-08 7.48517e-12 3.80189e-09 2.13716e-08 6.65008e-12 5.16712e-09 -3.02505e-08 1.65177e-11 1.4753e-08 -2.67383e-08 1.83102e-11 - 2.24329e-08 -2.06235e-08 2.04477e-11 2.76633e-08 -1.29207e-08 2.18053e-11 3.02959e-08 -4.40966e-09 2.19717e-11 3.03206e-08 4.35263e-09 2.09521e-11 - 2.77307e-08 1.2891e-08 1.89034e-11 2.2522e-08 2.06439e-08 1.61104e-11 1.48308e-08 2.68189e-08 1.31652e-11 5.19845e-09 3.03761e-08 1.11221e-11 - 7.29759e-09 -4.27052e-08 2.84316e-11 2.052e-08 -3.70704e-08 3.3547e-11 3.05669e-08 -2.79935e-08 3.89452e-11 3.70693e-08 -1.72558e-08 4.20046e-11 - 4.02363e-08 -5.8453e-09 4.23045e-11 4.0278e-08 5.75031e-09 4.01837e-11 3.71851e-08 1.72025e-08 3.59641e-11 3.07265e-08 2.80225e-08 2.99581e-11 - 2.06669e-08 3.72098e-08 2.30996e-11 7.3591e-09 4.29403e-08 1.78598e-11 1.0802e-08 -6.07887e-08 4.68975e-11 2.94647e-08 -5.08358e-08 6.23713e-11 - 4.22475e-08 -3.70133e-08 7.57903e-11 4.98115e-08 -2.22509e-08 8.20569e-11 5.33019e-08 -7.45313e-09 8.21456e-11 5.33684e-08 7.30362e-09 7.76959e-11 - 5.00028e-08 2.21571e-08 6.93022e-11 4.25292e-08 3.70423e-08 5.67294e-11 2.97487e-08 5.10632e-08 4.06313e-11 1.0929e-08 6.12387e-08 2.6293e-11 - 1.72505e-08 -8.88185e-08 7.0025e-11 4.42954e-08 -6.84572e-08 1.20517e-10 5.91518e-08 -4.69524e-08 1.52403e-10 6.66294e-08 -2.72577e-08 1.62901e-10 - 6.97908e-08 -8.99592e-09 1.6073e-10 6.98882e-08 8.78293e-09 1.51375e-10 6.69237e-08 2.70999e-08 1.3566e-10 5.96326e-08 4.69417e-08 1.10751e-10 - 4.48633e-08 6.8771e-08 7.31801e-11 1.75346e-08 8.97157e-08 3.04796e-11 3.11632e-08 -1.3721e-07 7.49631e-11 7.13307e-08 -8.7205e-08 2.55006e-10 - 8.34469e-08 -5.50463e-08 3.20614e-10 8.7768e-08 -3.07889e-08 3.2879e-10 8.93426e-08 -1.00123e-08 3.1643e-10 8.94643e-08 9.76507e-09 2.96964e-10 - 8.81616e-08 3.05535e-08 2.70498e-10 8.42004e-08 5.48799e-08 2.26614e-10 7.25227e-08 8.73755e-08 1.43132e-10 3.18737e-08 1.39135e-07 2.45338e-12 - 1.72875e-09 -1.72823e-09 5.20552e-13 5.01376e-09 -1.55574e-09 5.27304e-13 7.80113e-09 -1.23056e-09 5.36197e-13 9.82047e-09 -7.87701e-10 5.40654e-13 - 1.08805e-08 -2.71304e-10 5.35311e-13 1.08826e-08 2.70268e-10 5.18108e-13 9.82595e-09 7.87425e-10 4.90992e-13 7.80794e-09 1.23154e-09 4.59527e-13 - 5.0193e-09 1.55799e-09 4.31592e-13 1.73087e-09 1.73129e-09 4.15096e-13 1.90123e-09 -5.35697e-09 7.13591e-13 5.51143e-09 -4.81972e-09 7.27551e-13 - 8.56917e-09 -3.80915e-09 7.46425e-13 1.07797e-08 -2.43643e-09 7.57919e-13 1.19385e-08 -8.38871e-10 7.52531e-13 1.19414e-08 8.35425e-10 7.26726e-13 - 1.07872e-08 2.43552e-09 6.83579e-13 8.57851e-09 3.81243e-09 6.32099e-13 5.51905e-09 4.82731e-09 5.85471e-13 1.90416e-09 5.36729e-09 5.57543e-13 - 2.266e-09 -9.52233e-09 1.16752e-12 6.56159e-09 -8.55633e-09 1.20314e-12 1.01844e-08 -6.74917e-09 1.25153e-12 1.27907e-08 -4.30924e-09 1.28388e-12 - 1.41524e-08 -1.48243e-09 1.27977e-12 1.4157e-08 1.4755e-09 1.23221e-12 1.2803e-08 4.30744e-09 1.14728e-12 1.01997e-08 6.75594e-09 1.04264e-12 - 6.57417e-09 8.57203e-09 9.45355e-13 2.27085e-09 9.54375e-09 8.8589e-13 2.86723e-09 -1.46524e-08 2.03856e-12 8.28459e-09 -1.31327e-08 2.13259e-12 - 1.28163e-08 -1.03205e-08 2.25797e-12 1.60465e-08 -6.56735e-09 2.34375e-12 1.77233e-08 -2.25553e-09 2.34579e-12 1.77312e-08 2.2431e-09 2.25157e-12 - 1.60677e-08 6.5642e-09 2.07399e-12 1.28431e-08 1.03331e-08 1.8482e-12 8.30686e-09 1.31622e-08 1.63162e-12 2.87588e-09 1.46929e-08 1.49552e-12 - 3.78566e-09 -2.12996e-08 3.61478e-12 1.08935e-08 -1.8999e-08 3.86736e-12 1.67498e-08 -1.48297e-08 4.1893e-12 2.08557e-08 -9.38104e-09 4.40455e-12 - 2.29628e-08 -3.21229e-09 4.42423e-12 2.29768e-08 3.19121e-09 4.23236e-12 2.08929e-08 9.3759e-09 3.85682e-12 1.67977e-08 1.48523e-08 3.36334e-12 - 1.0934e-08 1.90526e-08 2.86995e-12 3.80156e-09 2.13744e-08 2.54684e-12 5.16782e-09 -3.02431e-08 6.38175e-12 1.47545e-08 -2.67291e-08 7.07981e-12 - 2.24342e-08 -2.06125e-08 7.90018e-12 2.76638e-08 -1.29088e-08 8.4124e-12 3.02955e-08 -4.39769e-09 8.46674e-12 3.03194e-08 4.36395e-09 8.06953e-12 - 2.77288e-08 1.29011e-08 7.28015e-12 2.25198e-08 2.06521e-08 6.2036e-12 1.48289e-08 2.68249e-08 5.06267e-12 5.19765e-09 3.03804e-08 4.26547e-12 - 7.29961e-09 -4.2693e-08 1.10782e-11 2.05241e-08 -3.70526e-08 1.30992e-11 3.05701e-08 -2.79715e-08 1.51721e-11 3.70705e-08 -1.7232e-08 1.631e-11 - 4.02356e-08 -5.82168e-09 1.63893e-11 4.02755e-08 5.77255e-09 1.55553e-11 3.71811e-08 1.72223e-08 1.39277e-11 3.07215e-08 2.80385e-08 1.16086e-11 - 2.06622e-08 3.72206e-08 8.93451e-12 7.35703e-09 4.29462e-08 6.86125e-12 1.08082e-08 -6.07712e-08 1.85568e-11 2.94761e-08 -5.07992e-08 2.48171e-11 - 4.22549e-08 -3.69668e-08 2.99498e-11 4.98136e-08 -2.22023e-08 3.21919e-11 5.33001e-08 -7.40595e-09 3.20886e-11 5.33634e-08 7.34786e-09 3.03171e-11 - 4.99947e-08 2.2197e-08 2.70856e-11 4.25181e-08 3.7075e-08 2.22362e-11 2.97366e-08 5.10837e-08 1.59095e-11 1.09232e-08 6.12434e-08 1.01077e-11 - 1.72717e-08 -8.88041e-08 2.85481e-11 4.43285e-08 -6.83694e-08 4.97424e-11 5.9167e-08 -4.68477e-08 6.16771e-11 6.66313e-08 -2.71557e-08 6.4938e-11 - 6.97857e-08 -8.90053e-09 6.35765e-11 6.98784e-08 8.87209e-09 5.97944e-11 6.69082e-08 2.71827e-08 5.38162e-11 5.96083e-08 4.70134e-08 4.43201e-11 - 4.48306e-08 6.88163e-08 2.94565e-11 1.75167e-08 8.9705e-08 1.15825e-11 3.12429e-08 -1.37257e-07 3.29645e-11 7.14324e-08 -8.69387e-08 1.12638e-10 - 8.34685e-08 -5.47941e-08 1.34707e-10 8.77608e-08 -3.05702e-08 1.34219e-10 8.93278e-08 -9.81717e-09 1.27485e-10 8.94466e-08 9.94751e-09 1.19476e-10 - 8.81361e-08 3.07309e-08 1.09853e-10 8.41517e-08 5.50515e-08 9.39815e-11 7.24282e-08 8.75084e-08 6.12032e-11 3.18119e-08 1.39045e-07 -5.48709e-13 - - - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 - - - - - 0 0 0 0.1 0 0 0 0.1 0 0.1 0.1 0 - 0 0 0.1 0.1 0 0.1 0 0.1 0.1 0.1 0.1 0.1 - 0.2 0 0 0.2 0.1 0 0.2 0 0.1 0.2 0.1 0.1 - 0.3 0 0 0.3 0.1 0 0.3 0 0.1 0.3 0.1 0.1 - 0.4 0 0 0.4 0.1 0 0.4 0 0.1 0.4 0.1 0.1 - 0.5 0 0 0.5 0.1 0 0.5 0 0.1 0.5 0.1 0.1 - 0.6 0 0 0.6 0.1 0 0.6 0 0.1 0.6 0.1 0.1 - 0.7 0 0 0.7 0.1 0 0.7 0 0.1 0.7 0.1 0.1 - 0.8 0 0 0.8 0.1 0 0.8 0 0.1 0.8 0.1 0.1 - 0.9 0 0 0.9 0.1 0 0.9 0 0.1 0.9 0.1 0.1 - 1 0 0 1 0.1 0 1 0 0.1 1 0.1 0.1 - 0 0.2 0 0.1 0.2 0 0 0.2 0.1 0.1 0.2 0.1 - 0.2 0.2 0 0.2 0.2 0.1 0.3 0.2 0 0.3 0.2 0.1 - 0.4 0.2 0 0.4 0.2 0.1 0.5 0.2 0 0.5 0.2 0.1 - 0.6 0.2 0 0.6 0.2 0.1 0.7 0.2 0 0.7 0.2 0.1 - 0.8 0.2 0 0.8 0.2 0.1 0.9 0.2 0 0.9 0.2 0.1 - 1 0.2 0 1 0.2 0.1 0 0.3 0 0.1 0.3 0 - 0 0.3 0.1 0.1 0.3 0.1 0.2 0.3 0 0.2 0.3 0.1 - 0.3 0.3 0 0.3 0.3 0.1 0.4 0.3 0 0.4 0.3 0.1 - 0.5 0.3 0 0.5 0.3 0.1 0.6 0.3 0 0.6 0.3 0.1 - 0.7 0.3 0 0.7 0.3 0.1 0.8 0.3 0 0.8 0.3 0.1 - 0.9 0.3 0 0.9 0.3 0.1 1 0.3 0 1 0.3 0.1 - 0 0.4 0 0.1 0.4 0 0 0.4 0.1 0.1 0.4 0.1 - 0.2 0.4 0 0.2 0.4 0.1 0.3 0.4 0 0.3 0.4 0.1 - 0.4 0.4 0 0.4 0.4 0.1 0.5 0.4 0 0.5 0.4 0.1 - 0.6 0.4 0 0.6 0.4 0.1 0.7 0.4 0 0.7 0.4 0.1 - 0.8 0.4 0 0.8 0.4 0.1 0.9 0.4 0 0.9 0.4 0.1 - 1 0.4 0 1 0.4 0.1 0 0.5 0 0.1 0.5 0 - 0 0.5 0.1 0.1 0.5 0.1 0.2 0.5 0 0.2 0.5 0.1 - 0.3 0.5 0 0.3 0.5 0.1 0.4 0.5 0 0.4 0.5 0.1 - 0.5 0.5 0 0.5 0.5 0.1 0.6 0.5 0 0.6 0.5 0.1 - 0.7 0.5 0 0.7 0.5 0.1 0.8 0.5 0 0.8 0.5 0.1 - 0.9 0.5 0 0.9 0.5 0.1 1 0.5 0 1 0.5 0.1 - 0 0.6 0 0.1 0.6 0 0 0.6 0.1 0.1 0.6 0.1 - 0.2 0.6 0 0.2 0.6 0.1 0.3 0.6 0 0.3 0.6 0.1 - 0.4 0.6 0 0.4 0.6 0.1 0.5 0.6 0 0.5 0.6 0.1 - 0.6 0.6 0 0.6 0.6 0.1 0.7 0.6 0 0.7 0.6 0.1 - 0.8 0.6 0 0.8 0.6 0.1 0.9 0.6 0 0.9 0.6 0.1 - 1 0.6 0 1 0.6 0.1 0 0.7 0 0.1 0.7 0 - 0 0.7 0.1 0.1 0.7 0.1 0.2 0.7 0 0.2 0.7 0.1 - 0.3 0.7 0 0.3 0.7 0.1 0.4 0.7 0 0.4 0.7 0.1 - 0.5 0.7 0 0.5 0.7 0.1 0.6 0.7 0 0.6 0.7 0.1 - 0.7 0.7 0 0.7 0.7 0.1 0.8 0.7 0 0.8 0.7 0.1 - 0.9 0.7 0 0.9 0.7 0.1 1 0.7 0 1 0.7 0.1 - 0 0.8 0 0.1 0.8 0 0 0.8 0.1 0.1 0.8 0.1 - 0.2 0.8 0 0.2 0.8 0.1 0.3 0.8 0 0.3 0.8 0.1 - 0.4 0.8 0 0.4 0.8 0.1 0.5 0.8 0 0.5 0.8 0.1 - 0.6 0.8 0 0.6 0.8 0.1 0.7 0.8 0 0.7 0.8 0.1 - 0.8 0.8 0 0.8 0.8 0.1 0.9 0.8 0 0.9 0.8 0.1 - 1 0.8 0 1 0.8 0.1 0 0.9 0 0.1 0.9 0 - 0 0.9 0.1 0.1 0.9 0.1 0.2 0.9 0 0.2 0.9 0.1 - 0.3 0.9 0 0.3 0.9 0.1 0.4 0.9 0 0.4 0.9 0.1 - 0.5 0.9 0 0.5 0.9 0.1 0.6 0.9 0 0.6 0.9 0.1 - 0.7 0.9 0 0.7 0.9 0.1 0.8 0.9 0 0.8 0.9 0.1 - 0.9 0.9 0 0.9 0.9 0.1 1 0.9 0 1 0.9 0.1 - 0 1 0 0.1 1 0 0 1 0.1 0.1 1 0.1 - 0.2 1 0 0.2 1 0.1 0.3 1 0 0.3 1 0.1 - 0.4 1 0 0.4 1 0.1 0.5 1 0 0.5 1 0.1 - 0.6 1 0 0.6 1 0.1 0.7 1 0 0.7 1 0.1 - 0.8 1 0 0.8 1 0.1 0.9 1 0 0.9 1 0.1 - 1 1 0 1 1 0.1 0 0 0.2 0.1 0 0.2 - 0 0.1 0.2 0.1 0.1 0.2 0.2 0 0.2 0.2 0.1 0.2 - 0.3 0 0.2 0.3 0.1 0.2 0.4 0 0.2 0.4 0.1 0.2 - 0.5 0 0.2 0.5 0.1 0.2 0.6 0 0.2 0.6 0.1 0.2 - 0.7 0 0.2 0.7 0.1 0.2 0.8 0 0.2 0.8 0.1 0.2 - 0.9 0 0.2 0.9 0.1 0.2 1 0 0.2 1 0.1 0.2 - 0 0.2 0.2 0.1 0.2 0.2 0.2 0.2 0.2 0.3 0.2 0.2 - 0.4 0.2 0.2 0.5 0.2 0.2 0.6 0.2 0.2 0.7 0.2 0.2 - 0.8 0.2 0.2 0.9 0.2 0.2 1 0.2 0.2 0 0.3 0.2 - 0.1 0.3 0.2 0.2 0.3 0.2 0.3 0.3 0.2 0.4 0.3 0.2 - 0.5 0.3 0.2 0.6 0.3 0.2 0.7 0.3 0.2 0.8 0.3 0.2 - 0.9 0.3 0.2 1 0.3 0.2 0 0.4 0.2 0.1 0.4 0.2 - 0.2 0.4 0.2 0.3 0.4 0.2 0.4 0.4 0.2 0.5 0.4 0.2 - 0.6 0.4 0.2 0.7 0.4 0.2 0.8 0.4 0.2 0.9 0.4 0.2 - 1 0.4 0.2 0 0.5 0.2 0.1 0.5 0.2 0.2 0.5 0.2 - 0.3 0.5 0.2 0.4 0.5 0.2 0.5 0.5 0.2 0.6 0.5 0.2 - 0.7 0.5 0.2 0.8 0.5 0.2 0.9 0.5 0.2 1 0.5 0.2 - 0 0.6 0.2 0.1 0.6 0.2 0.2 0.6 0.2 0.3 0.6 0.2 - 0.4 0.6 0.2 0.5 0.6 0.2 0.6 0.6 0.2 0.7 0.6 0.2 - 0.8 0.6 0.2 0.9 0.6 0.2 1 0.6 0.2 0 0.7 0.2 - 0.1 0.7 0.2 0.2 0.7 0.2 0.3 0.7 0.2 0.4 0.7 0.2 - 0.5 0.7 0.2 0.6 0.7 0.2 0.7 0.7 0.2 0.8 0.7 0.2 - 0.9 0.7 0.2 1 0.7 0.2 0 0.8 0.2 0.1 0.8 0.2 - 0.2 0.8 0.2 0.3 0.8 0.2 0.4 0.8 0.2 0.5 0.8 0.2 - 0.6 0.8 0.2 0.7 0.8 0.2 0.8 0.8 0.2 0.9 0.8 0.2 - 1 0.8 0.2 0 0.9 0.2 0.1 0.9 0.2 0.2 0.9 0.2 - 0.3 0.9 0.2 0.4 0.9 0.2 0.5 0.9 0.2 0.6 0.9 0.2 - 0.7 0.9 0.2 0.8 0.9 0.2 0.9 0.9 0.2 1 0.9 0.2 - 0 1 0.2 0.1 1 0.2 0.2 1 0.2 0.3 1 0.2 - 0.4 1 0.2 0.5 1 0.2 0.6 1 0.2 0.7 1 0.2 - 0.8 1 0.2 0.9 1 0.2 1 1 0.2 0 0 0.3 - 0.1 0 0.3 0 0.1 0.3 0.1 0.1 0.3 0.2 0 0.3 - 0.2 0.1 0.3 0.3 0 0.3 0.3 0.1 0.3 0.4 0 0.3 - 0.4 0.1 0.3 0.5 0 0.3 0.5 0.1 0.3 0.6 0 0.3 - 0.6 0.1 0.3 0.7 0 0.3 0.7 0.1 0.3 0.8 0 0.3 - 0.8 0.1 0.3 0.9 0 0.3 0.9 0.1 0.3 1 0 0.3 - 1 0.1 0.3 0 0.2 0.3 0.1 0.2 0.3 0.2 0.2 0.3 - 0.3 0.2 0.3 0.4 0.2 0.3 0.5 0.2 0.3 0.6 0.2 0.3 - 0.7 0.2 0.3 0.8 0.2 0.3 0.9 0.2 0.3 1 0.2 0.3 - 0 0.3 0.3 0.1 0.3 0.3 0.2 0.3 0.3 0.3 0.3 0.3 - 0.4 0.3 0.3 0.5 0.3 0.3 0.6 0.3 0.3 0.7 0.3 0.3 - 0.8 0.3 0.3 0.9 0.3 0.3 1 0.3 0.3 0 0.4 0.3 - 0.1 0.4 0.3 0.2 0.4 0.3 0.3 0.4 0.3 0.4 0.4 0.3 - 0.5 0.4 0.3 0.6 0.4 0.3 0.7 0.4 0.3 0.8 0.4 0.3 - 0.9 0.4 0.3 1 0.4 0.3 0 0.5 0.3 0.1 0.5 0.3 - 0.2 0.5 0.3 0.3 0.5 0.3 0.4 0.5 0.3 0.5 0.5 0.3 - 0.6 0.5 0.3 0.7 0.5 0.3 0.8 0.5 0.3 0.9 0.5 0.3 - 1 0.5 0.3 0 0.6 0.3 0.1 0.6 0.3 0.2 0.6 0.3 - 0.3 0.6 0.3 0.4 0.6 0.3 0.5 0.6 0.3 0.6 0.6 0.3 - 0.7 0.6 0.3 0.8 0.6 0.3 0.9 0.6 0.3 1 0.6 0.3 - 0 0.7 0.3 0.1 0.7 0.3 0.2 0.7 0.3 0.3 0.7 0.3 - 0.4 0.7 0.3 0.5 0.7 0.3 0.6 0.7 0.3 0.7 0.7 0.3 - 0.8 0.7 0.3 0.9 0.7 0.3 1 0.7 0.3 0 0.8 0.3 - 0.1 0.8 0.3 0.2 0.8 0.3 0.3 0.8 0.3 0.4 0.8 0.3 - 0.5 0.8 0.3 0.6 0.8 0.3 0.7 0.8 0.3 0.8 0.8 0.3 - 0.9 0.8 0.3 1 0.8 0.3 0 0.9 0.3 0.1 0.9 0.3 - 0.2 0.9 0.3 0.3 0.9 0.3 0.4 0.9 0.3 0.5 0.9 0.3 - 0.6 0.9 0.3 0.7 0.9 0.3 0.8 0.9 0.3 0.9 0.9 0.3 - 1 0.9 0.3 0 1 0.3 0.1 1 0.3 0.2 1 0.3 - 0.3 1 0.3 0.4 1 0.3 0.5 1 0.3 0.6 1 0.3 - 0.7 1 0.3 0.8 1 0.3 0.9 1 0.3 1 1 0.3 - 0 0 0.4 0.1 0 0.4 0 0.1 0.4 0.1 0.1 0.4 - 0.2 0 0.4 0.2 0.1 0.4 0.3 0 0.4 0.3 0.1 0.4 - 0.4 0 0.4 0.4 0.1 0.4 0.5 0 0.4 0.5 0.1 0.4 - 0.6 0 0.4 0.6 0.1 0.4 0.7 0 0.4 0.7 0.1 0.4 - 0.8 0 0.4 0.8 0.1 0.4 0.9 0 0.4 0.9 0.1 0.4 - 1 0 0.4 1 0.1 0.4 0 0.2 0.4 0.1 0.2 0.4 - 0.2 0.2 0.4 0.3 0.2 0.4 0.4 0.2 0.4 0.5 0.2 0.4 - 0.6 0.2 0.4 0.7 0.2 0.4 0.8 0.2 0.4 0.9 0.2 0.4 - 1 0.2 0.4 0 0.3 0.4 0.1 0.3 0.4 0.2 0.3 0.4 - 0.3 0.3 0.4 0.4 0.3 0.4 0.5 0.3 0.4 0.6 0.3 0.4 - 0.7 0.3 0.4 0.8 0.3 0.4 0.9 0.3 0.4 1 0.3 0.4 - 0 0.4 0.4 0.1 0.4 0.4 0.2 0.4 0.4 0.3 0.4 0.4 - 0.4 0.4 0.4 0.5 0.4 0.4 0.6 0.4 0.4 0.7 0.4 0.4 - 0.8 0.4 0.4 0.9 0.4 0.4 1 0.4 0.4 0 0.5 0.4 - 0.1 0.5 0.4 0.2 0.5 0.4 0.3 0.5 0.4 0.4 0.5 0.4 - 0.5 0.5 0.4 0.6 0.5 0.4 0.7 0.5 0.4 0.8 0.5 0.4 - 0.9 0.5 0.4 1 0.5 0.4 0 0.6 0.4 0.1 0.6 0.4 - 0.2 0.6 0.4 0.3 0.6 0.4 0.4 0.6 0.4 0.5 0.6 0.4 - 0.6 0.6 0.4 0.7 0.6 0.4 0.8 0.6 0.4 0.9 0.6 0.4 - 1 0.6 0.4 0 0.7 0.4 0.1 0.7 0.4 0.2 0.7 0.4 - 0.3 0.7 0.4 0.4 0.7 0.4 0.5 0.7 0.4 0.6 0.7 0.4 - 0.7 0.7 0.4 0.8 0.7 0.4 0.9 0.7 0.4 1 0.7 0.4 - 0 0.8 0.4 0.1 0.8 0.4 0.2 0.8 0.4 0.3 0.8 0.4 - 0.4 0.8 0.4 0.5 0.8 0.4 0.6 0.8 0.4 0.7 0.8 0.4 - 0.8 0.8 0.4 0.9 0.8 0.4 1 0.8 0.4 0 0.9 0.4 - 0.1 0.9 0.4 0.2 0.9 0.4 0.3 0.9 0.4 0.4 0.9 0.4 - 0.5 0.9 0.4 0.6 0.9 0.4 0.7 0.9 0.4 0.8 0.9 0.4 - 0.9 0.9 0.4 1 0.9 0.4 0 1 0.4 0.1 1 0.4 - 0.2 1 0.4 0.3 1 0.4 0.4 1 0.4 0.5 1 0.4 - 0.6 1 0.4 0.7 1 0.4 0.8 1 0.4 0.9 1 0.4 - 1 1 0.4 0 0 0.5 0.1 0 0.5 0 0.1 0.5 - 0.1 0.1 0.5 0.2 0 0.5 0.2 0.1 0.5 0.3 0 0.5 - 0.3 0.1 0.5 0.4 0 0.5 0.4 0.1 0.5 0.5 0 0.5 - 0.5 0.1 0.5 0.6 0 0.5 0.6 0.1 0.5 0.7 0 0.5 - 0.7 0.1 0.5 0.8 0 0.5 0.8 0.1 0.5 0.9 0 0.5 - 0.9 0.1 0.5 1 0 0.5 1 0.1 0.5 0 0.2 0.5 - 0.1 0.2 0.5 0.2 0.2 0.5 0.3 0.2 0.5 0.4 0.2 0.5 - 0.5 0.2 0.5 0.6 0.2 0.5 0.7 0.2 0.5 0.8 0.2 0.5 - 0.9 0.2 0.5 1 0.2 0.5 0 0.3 0.5 0.1 0.3 0.5 - 0.2 0.3 0.5 0.3 0.3 0.5 0.4 0.3 0.5 0.5 0.3 0.5 - 0.6 0.3 0.5 0.7 0.3 0.5 0.8 0.3 0.5 0.9 0.3 0.5 - 1 0.3 0.5 0 0.4 0.5 0.1 0.4 0.5 0.2 0.4 0.5 - 0.3 0.4 0.5 0.4 0.4 0.5 0.5 0.4 0.5 0.6 0.4 0.5 - 0.7 0.4 0.5 0.8 0.4 0.5 0.9 0.4 0.5 1 0.4 0.5 - 0 0.5 0.5 0.1 0.5 0.5 0.2 0.5 0.5 0.3 0.5 0.5 - 0.4 0.5 0.5 0.5 0.5 0.5 0.6 0.5 0.5 0.7 0.5 0.5 - 0.8 0.5 0.5 0.9 0.5 0.5 1 0.5 0.5 0 0.6 0.5 - 0.1 0.6 0.5 0.2 0.6 0.5 0.3 0.6 0.5 0.4 0.6 0.5 - 0.5 0.6 0.5 0.6 0.6 0.5 0.7 0.6 0.5 0.8 0.6 0.5 - 0.9 0.6 0.5 1 0.6 0.5 0 0.7 0.5 0.1 0.7 0.5 - 0.2 0.7 0.5 0.3 0.7 0.5 0.4 0.7 0.5 0.5 0.7 0.5 - 0.6 0.7 0.5 0.7 0.7 0.5 0.8 0.7 0.5 0.9 0.7 0.5 - 1 0.7 0.5 0 0.8 0.5 0.1 0.8 0.5 0.2 0.8 0.5 - 0.3 0.8 0.5 0.4 0.8 0.5 0.5 0.8 0.5 0.6 0.8 0.5 - 0.7 0.8 0.5 0.8 0.8 0.5 0.9 0.8 0.5 1 0.8 0.5 - 0 0.9 0.5 0.1 0.9 0.5 0.2 0.9 0.5 0.3 0.9 0.5 - 0.4 0.9 0.5 0.5 0.9 0.5 0.6 0.9 0.5 0.7 0.9 0.5 - 0.8 0.9 0.5 0.9 0.9 0.5 1 0.9 0.5 0 1 0.5 - 0.1 1 0.5 0.2 1 0.5 0.3 1 0.5 0.4 1 0.5 - 0.5 1 0.5 0.6 1 0.5 0.7 1 0.5 0.8 1 0.5 - 0.9 1 0.5 1 1 0.5 0 0 0.6 0.1 0 0.6 - 0 0.1 0.6 0.1 0.1 0.6 0.2 0 0.6 0.2 0.1 0.6 - 0.3 0 0.6 0.3 0.1 0.6 0.4 0 0.6 0.4 0.1 0.6 - 0.5 0 0.6 0.5 0.1 0.6 0.6 0 0.6 0.6 0.1 0.6 - 0.7 0 0.6 0.7 0.1 0.6 0.8 0 0.6 0.8 0.1 0.6 - 0.9 0 0.6 0.9 0.1 0.6 1 0 0.6 1 0.1 0.6 - 0 0.2 0.6 0.1 0.2 0.6 0.2 0.2 0.6 0.3 0.2 0.6 - 0.4 0.2 0.6 0.5 0.2 0.6 0.6 0.2 0.6 0.7 0.2 0.6 - 0.8 0.2 0.6 0.9 0.2 0.6 1 0.2 0.6 0 0.3 0.6 - 0.1 0.3 0.6 0.2 0.3 0.6 0.3 0.3 0.6 0.4 0.3 0.6 - 0.5 0.3 0.6 0.6 0.3 0.6 0.7 0.3 0.6 0.8 0.3 0.6 - 0.9 0.3 0.6 1 0.3 0.6 0 0.4 0.6 0.1 0.4 0.6 - 0.2 0.4 0.6 0.3 0.4 0.6 0.4 0.4 0.6 0.5 0.4 0.6 - 0.6 0.4 0.6 0.7 0.4 0.6 0.8 0.4 0.6 0.9 0.4 0.6 - 1 0.4 0.6 0 0.5 0.6 0.1 0.5 0.6 0.2 0.5 0.6 - 0.3 0.5 0.6 0.4 0.5 0.6 0.5 0.5 0.6 0.6 0.5 0.6 - 0.7 0.5 0.6 0.8 0.5 0.6 0.9 0.5 0.6 1 0.5 0.6 - 0 0.6 0.6 0.1 0.6 0.6 0.2 0.6 0.6 0.3 0.6 0.6 - 0.4 0.6 0.6 0.5 0.6 0.6 0.6 0.6 0.6 0.7 0.6 0.6 - 0.8 0.6 0.6 0.9 0.6 0.6 1 0.6 0.6 0 0.7 0.6 - 0.1 0.7 0.6 0.2 0.7 0.6 0.3 0.7 0.6 0.4 0.7 0.6 - 0.5 0.7 0.6 0.6 0.7 0.6 0.7 0.7 0.6 0.8 0.7 0.6 - 0.9 0.7 0.6 1 0.7 0.6 0 0.8 0.6 0.1 0.8 0.6 - 0.2 0.8 0.6 0.3 0.8 0.6 0.4 0.8 0.6 0.5 0.8 0.6 - 0.6 0.8 0.6 0.7 0.8 0.6 0.8 0.8 0.6 0.9 0.8 0.6 - 1 0.8 0.6 0 0.9 0.6 0.1 0.9 0.6 0.2 0.9 0.6 - 0.3 0.9 0.6 0.4 0.9 0.6 0.5 0.9 0.6 0.6 0.9 0.6 - 0.7 0.9 0.6 0.8 0.9 0.6 0.9 0.9 0.6 1 0.9 0.6 - 0 1 0.6 0.1 1 0.6 0.2 1 0.6 0.3 1 0.6 - 0.4 1 0.6 0.5 1 0.6 0.6 1 0.6 0.7 1 0.6 - 0.8 1 0.6 0.9 1 0.6 1 1 0.6 0 0 0.7 - 0.1 0 0.7 0 0.1 0.7 0.1 0.1 0.7 0.2 0 0.7 - 0.2 0.1 0.7 0.3 0 0.7 0.3 0.1 0.7 0.4 0 0.7 - 0.4 0.1 0.7 0.5 0 0.7 0.5 0.1 0.7 0.6 0 0.7 - 0.6 0.1 0.7 0.7 0 0.7 0.7 0.1 0.7 0.8 0 0.7 - 0.8 0.1 0.7 0.9 0 0.7 0.9 0.1 0.7 1 0 0.7 - 1 0.1 0.7 0 0.2 0.7 0.1 0.2 0.7 0.2 0.2 0.7 - 0.3 0.2 0.7 0.4 0.2 0.7 0.5 0.2 0.7 0.6 0.2 0.7 - 0.7 0.2 0.7 0.8 0.2 0.7 0.9 0.2 0.7 1 0.2 0.7 - 0 0.3 0.7 0.1 0.3 0.7 0.2 0.3 0.7 0.3 0.3 0.7 - 0.4 0.3 0.7 0.5 0.3 0.7 0.6 0.3 0.7 0.7 0.3 0.7 - 0.8 0.3 0.7 0.9 0.3 0.7 1 0.3 0.7 0 0.4 0.7 - 0.1 0.4 0.7 0.2 0.4 0.7 0.3 0.4 0.7 0.4 0.4 0.7 - 0.5 0.4 0.7 0.6 0.4 0.7 0.7 0.4 0.7 0.8 0.4 0.7 - 0.9 0.4 0.7 1 0.4 0.7 0 0.5 0.7 0.1 0.5 0.7 - 0.2 0.5 0.7 0.3 0.5 0.7 0.4 0.5 0.7 0.5 0.5 0.7 - 0.6 0.5 0.7 0.7 0.5 0.7 0.8 0.5 0.7 0.9 0.5 0.7 - 1 0.5 0.7 0 0.6 0.7 0.1 0.6 0.7 0.2 0.6 0.7 - 0.3 0.6 0.7 0.4 0.6 0.7 0.5 0.6 0.7 0.6 0.6 0.7 - 0.7 0.6 0.7 0.8 0.6 0.7 0.9 0.6 0.7 1 0.6 0.7 - 0 0.7 0.7 0.1 0.7 0.7 0.2 0.7 0.7 0.3 0.7 0.7 - 0.4 0.7 0.7 0.5 0.7 0.7 0.6 0.7 0.7 0.7 0.7 0.7 - 0.8 0.7 0.7 0.9 0.7 0.7 1 0.7 0.7 0 0.8 0.7 - 0.1 0.8 0.7 0.2 0.8 0.7 0.3 0.8 0.7 0.4 0.8 0.7 - 0.5 0.8 0.7 0.6 0.8 0.7 0.7 0.8 0.7 0.8 0.8 0.7 - 0.9 0.8 0.7 1 0.8 0.7 0 0.9 0.7 0.1 0.9 0.7 - 0.2 0.9 0.7 0.3 0.9 0.7 0.4 0.9 0.7 0.5 0.9 0.7 - 0.6 0.9 0.7 0.7 0.9 0.7 0.8 0.9 0.7 0.9 0.9 0.7 - 1 0.9 0.7 0 1 0.7 0.1 1 0.7 0.2 1 0.7 - 0.3 1 0.7 0.4 1 0.7 0.5 1 0.7 0.6 1 0.7 - 0.7 1 0.7 0.8 1 0.7 0.9 1 0.7 1 1 0.7 - 0 0 0.8 0.1 0 0.8 0 0.1 0.8 0.1 0.1 0.8 - 0.2 0 0.8 0.2 0.1 0.8 0.3 0 0.8 0.3 0.1 0.8 - 0.4 0 0.8 0.4 0.1 0.8 0.5 0 0.8 0.5 0.1 0.8 - 0.6 0 0.8 0.6 0.1 0.8 0.7 0 0.8 0.7 0.1 0.8 - 0.8 0 0.8 0.8 0.1 0.8 0.9 0 0.8 0.9 0.1 0.8 - 1 0 0.8 1 0.1 0.8 0 0.2 0.8 0.1 0.2 0.8 - 0.2 0.2 0.8 0.3 0.2 0.8 0.4 0.2 0.8 0.5 0.2 0.8 - 0.6 0.2 0.8 0.7 0.2 0.8 0.8 0.2 0.8 0.9 0.2 0.8 - 1 0.2 0.8 0 0.3 0.8 0.1 0.3 0.8 0.2 0.3 0.8 - 0.3 0.3 0.8 0.4 0.3 0.8 0.5 0.3 0.8 0.6 0.3 0.8 - 0.7 0.3 0.8 0.8 0.3 0.8 0.9 0.3 0.8 1 0.3 0.8 - 0 0.4 0.8 0.1 0.4 0.8 0.2 0.4 0.8 0.3 0.4 0.8 - 0.4 0.4 0.8 0.5 0.4 0.8 0.6 0.4 0.8 0.7 0.4 0.8 - 0.8 0.4 0.8 0.9 0.4 0.8 1 0.4 0.8 0 0.5 0.8 - 0.1 0.5 0.8 0.2 0.5 0.8 0.3 0.5 0.8 0.4 0.5 0.8 - 0.5 0.5 0.8 0.6 0.5 0.8 0.7 0.5 0.8 0.8 0.5 0.8 - 0.9 0.5 0.8 1 0.5 0.8 0 0.6 0.8 0.1 0.6 0.8 - 0.2 0.6 0.8 0.3 0.6 0.8 0.4 0.6 0.8 0.5 0.6 0.8 - 0.6 0.6 0.8 0.7 0.6 0.8 0.8 0.6 0.8 0.9 0.6 0.8 - 1 0.6 0.8 0 0.7 0.8 0.1 0.7 0.8 0.2 0.7 0.8 - 0.3 0.7 0.8 0.4 0.7 0.8 0.5 0.7 0.8 0.6 0.7 0.8 - 0.7 0.7 0.8 0.8 0.7 0.8 0.9 0.7 0.8 1 0.7 0.8 - 0 0.8 0.8 0.1 0.8 0.8 0.2 0.8 0.8 0.3 0.8 0.8 - 0.4 0.8 0.8 0.5 0.8 0.8 0.6 0.8 0.8 0.7 0.8 0.8 - 0.8 0.8 0.8 0.9 0.8 0.8 1 0.8 0.8 0 0.9 0.8 - 0.1 0.9 0.8 0.2 0.9 0.8 0.3 0.9 0.8 0.4 0.9 0.8 - 0.5 0.9 0.8 0.6 0.9 0.8 0.7 0.9 0.8 0.8 0.9 0.8 - 0.9 0.9 0.8 1 0.9 0.8 0 1 0.8 0.1 1 0.8 - 0.2 1 0.8 0.3 1 0.8 0.4 1 0.8 0.5 1 0.8 - 0.6 1 0.8 0.7 1 0.8 0.8 1 0.8 0.9 1 0.8 - 1 1 0.8 0 0 0.9 0.1 0 0.9 0 0.1 0.9 - 0.1 0.1 0.9 0.2 0 0.9 0.2 0.1 0.9 0.3 0 0.9 - 0.3 0.1 0.9 0.4 0 0.9 0.4 0.1 0.9 0.5 0 0.9 - 0.5 0.1 0.9 0.6 0 0.9 0.6 0.1 0.9 0.7 0 0.9 - 0.7 0.1 0.9 0.8 0 0.9 0.8 0.1 0.9 0.9 0 0.9 - 0.9 0.1 0.9 1 0 0.9 1 0.1 0.9 0 0.2 0.9 - 0.1 0.2 0.9 0.2 0.2 0.9 0.3 0.2 0.9 0.4 0.2 0.9 - 0.5 0.2 0.9 0.6 0.2 0.9 0.7 0.2 0.9 0.8 0.2 0.9 - 0.9 0.2 0.9 1 0.2 0.9 0 0.3 0.9 0.1 0.3 0.9 - 0.2 0.3 0.9 0.3 0.3 0.9 0.4 0.3 0.9 0.5 0.3 0.9 - 0.6 0.3 0.9 0.7 0.3 0.9 0.8 0.3 0.9 0.9 0.3 0.9 - 1 0.3 0.9 0 0.4 0.9 0.1 0.4 0.9 0.2 0.4 0.9 - 0.3 0.4 0.9 0.4 0.4 0.9 0.5 0.4 0.9 0.6 0.4 0.9 - 0.7 0.4 0.9 0.8 0.4 0.9 0.9 0.4 0.9 1 0.4 0.9 - 0 0.5 0.9 0.1 0.5 0.9 0.2 0.5 0.9 0.3 0.5 0.9 - 0.4 0.5 0.9 0.5 0.5 0.9 0.6 0.5 0.9 0.7 0.5 0.9 - 0.8 0.5 0.9 0.9 0.5 0.9 1 0.5 0.9 0 0.6 0.9 - 0.1 0.6 0.9 0.2 0.6 0.9 0.3 0.6 0.9 0.4 0.6 0.9 - 0.5 0.6 0.9 0.6 0.6 0.9 0.7 0.6 0.9 0.8 0.6 0.9 - 0.9 0.6 0.9 1 0.6 0.9 0 0.7 0.9 0.1 0.7 0.9 - 0.2 0.7 0.9 0.3 0.7 0.9 0.4 0.7 0.9 0.5 0.7 0.9 - 0.6 0.7 0.9 0.7 0.7 0.9 0.8 0.7 0.9 0.9 0.7 0.9 - 1 0.7 0.9 0 0.8 0.9 0.1 0.8 0.9 0.2 0.8 0.9 - 0.3 0.8 0.9 0.4 0.8 0.9 0.5 0.8 0.9 0.6 0.8 0.9 - 0.7 0.8 0.9 0.8 0.8 0.9 0.9 0.8 0.9 1 0.8 0.9 - 0 0.9 0.9 0.1 0.9 0.9 0.2 0.9 0.9 0.3 0.9 0.9 - 0.4 0.9 0.9 0.5 0.9 0.9 0.6 0.9 0.9 0.7 0.9 0.9 - 0.8 0.9 0.9 0.9 0.9 0.9 1 0.9 0.9 0 1 0.9 - 0.1 1 0.9 0.2 1 0.9 0.3 1 0.9 0.4 1 0.9 - 0.5 1 0.9 0.6 1 0.9 0.7 1 0.9 0.8 1 0.9 - 0.9 1 0.9 1 1 0.9 0 0 1 0.1 0 1 - 0 0.1 1 0.1 0.1 1 0.2 0 1 0.2 0.1 1 - 0.3 0 1 0.3 0.1 1 0.4 0 1 0.4 0.1 1 - 0.5 0 1 0.5 0.1 1 0.6 0 1 0.6 0.1 1 - 0.7 0 1 0.7 0.1 1 0.8 0 1 0.8 0.1 1 - 0.9 0 1 0.9 0.1 1 1 0 1 1 0.1 1 - 0 0.2 1 0.1 0.2 1 0.2 0.2 1 0.3 0.2 1 - 0.4 0.2 1 0.5 0.2 1 0.6 0.2 1 0.7 0.2 1 - 0.8 0.2 1 0.9 0.2 1 1 0.2 1 0 0.3 1 - 0.1 0.3 1 0.2 0.3 1 0.3 0.3 1 0.4 0.3 1 - 0.5 0.3 1 0.6 0.3 1 0.7 0.3 1 0.8 0.3 1 - 0.9 0.3 1 1 0.3 1 0 0.4 1 0.1 0.4 1 - 0.2 0.4 1 0.3 0.4 1 0.4 0.4 1 0.5 0.4 1 - 0.6 0.4 1 0.7 0.4 1 0.8 0.4 1 0.9 0.4 1 - 1 0.4 1 0 0.5 1 0.1 0.5 1 0.2 0.5 1 - 0.3 0.5 1 0.4 0.5 1 0.5 0.5 1 0.6 0.5 1 - 0.7 0.5 1 0.8 0.5 1 0.9 0.5 1 1 0.5 1 - 0 0.6 1 0.1 0.6 1 0.2 0.6 1 0.3 0.6 1 - 0.4 0.6 1 0.5 0.6 1 0.6 0.6 1 0.7 0.6 1 - 0.8 0.6 1 0.9 0.6 1 1 0.6 1 0 0.7 1 - 0.1 0.7 1 0.2 0.7 1 0.3 0.7 1 0.4 0.7 1 - 0.5 0.7 1 0.6 0.7 1 0.7 0.7 1 0.8 0.7 1 - 0.9 0.7 1 1 0.7 1 0 0.8 1 0.1 0.8 1 - 0.2 0.8 1 0.3 0.8 1 0.4 0.8 1 0.5 0.8 1 - 0.6 0.8 1 0.7 0.8 1 0.8 0.8 1 0.9 0.8 1 - 1 0.8 1 0 0.9 1 0.1 0.9 1 0.2 0.9 1 - 0.3 0.9 1 0.4 0.9 1 0.5 0.9 1 0.6 0.9 1 - 0.7 0.9 1 0.8 0.9 1 0.9 0.9 1 1 0.9 1 - 0 1 1 0.1 1 1 0.2 1 1 0.3 1 1 - 0.4 1 1 0.5 1 1 0.6 1 1 0.7 1 1 - 0.8 1 1 0.9 1 1 1 1 1 - - - - - 0 1 3 2 4 5 7 6 1 8 9 3 - 5 10 11 7 8 12 13 9 10 14 15 11 - 12 16 17 13 14 18 19 15 16 20 21 17 - 18 22 23 19 20 24 25 21 22 26 27 23 - 24 28 29 25 26 30 31 27 28 32 33 29 - 30 34 35 31 32 36 37 33 34 38 39 35 - 36 40 41 37 38 42 43 39 2 3 45 44 - 6 7 47 46 3 9 48 45 7 11 49 47 - 9 13 50 48 11 15 51 49 13 17 52 50 - 15 19 53 51 17 21 54 52 19 23 55 53 - 21 25 56 54 23 27 57 55 25 29 58 56 - 27 31 59 57 29 33 60 58 31 35 61 59 - 33 37 62 60 35 39 63 61 37 41 64 62 - 39 43 65 63 44 45 67 66 46 47 69 68 - 45 48 70 67 47 49 71 69 48 50 72 70 - 49 51 73 71 50 52 74 72 51 53 75 73 - 52 54 76 74 53 55 77 75 54 56 78 76 - 55 57 79 77 56 58 80 78 57 59 81 79 - 58 60 82 80 59 61 83 81 60 62 84 82 - 61 63 85 83 62 64 86 84 63 65 87 85 - 66 67 89 88 68 69 91 90 67 70 92 89 - 69 71 93 91 70 72 94 92 71 73 95 93 - 72 74 96 94 73 75 97 95 74 76 98 96 - 75 77 99 97 76 78 100 98 77 79 101 99 - 78 80 102 100 79 81 103 101 80 82 104 102 - 81 83 105 103 82 84 106 104 83 85 107 105 - 84 86 108 106 85 87 109 107 88 89 111 110 - 90 91 113 112 89 92 114 111 91 93 115 113 - 92 94 116 114 93 95 117 115 94 96 118 116 - 95 97 119 117 96 98 120 118 97 99 121 119 - 98 100 122 120 99 101 123 121 100 102 124 122 - 101 103 125 123 102 104 126 124 103 105 127 125 - 104 106 128 126 105 107 129 127 106 108 130 128 - 107 109 131 129 110 111 133 132 112 113 135 134 - 111 114 136 133 113 115 137 135 114 116 138 136 - 115 117 139 137 116 118 140 138 117 119 141 139 - 118 120 142 140 119 121 143 141 120 122 144 142 - 121 123 145 143 122 124 146 144 123 125 147 145 - 124 126 148 146 125 127 149 147 126 128 150 148 - 127 129 151 149 128 130 152 150 129 131 153 151 - 132 133 155 154 134 135 157 156 133 136 158 155 - 135 137 159 157 136 138 160 158 137 139 161 159 - 138 140 162 160 139 141 163 161 140 142 164 162 - 141 143 165 163 142 144 166 164 143 145 167 165 - 144 146 168 166 145 147 169 167 146 148 170 168 - 147 149 171 169 148 150 172 170 149 151 173 171 - 150 152 174 172 151 153 175 173 154 155 177 176 - 156 157 179 178 155 158 180 177 157 159 181 179 - 158 160 182 180 159 161 183 181 160 162 184 182 - 161 163 185 183 162 164 186 184 163 165 187 185 - 164 166 188 186 165 167 189 187 166 168 190 188 - 167 169 191 189 168 170 192 190 169 171 193 191 - 170 172 194 192 171 173 195 193 172 174 196 194 - 173 175 197 195 176 177 199 198 178 179 201 200 - 177 180 202 199 179 181 203 201 180 182 204 202 - 181 183 205 203 182 184 206 204 183 185 207 205 - 184 186 208 206 185 187 209 207 186 188 210 208 - 187 189 211 209 188 190 212 210 189 191 213 211 - 190 192 214 212 191 193 215 213 192 194 216 214 - 193 195 217 215 194 196 218 216 195 197 219 217 - 198 199 221 220 200 201 223 222 199 202 224 221 - 201 203 225 223 202 204 226 224 203 205 227 225 - 204 206 228 226 205 207 229 227 206 208 230 228 - 207 209 231 229 208 210 232 230 209 211 233 231 - 210 212 234 232 211 213 235 233 212 214 236 234 - 213 215 237 235 214 216 238 236 215 217 239 237 - 216 218 240 238 217 219 241 239 4 5 7 6 - 242 243 245 244 5 10 11 7 243 246 247 245 - 10 14 15 11 246 248 249 247 14 18 19 15 - 248 250 251 249 18 22 23 19 250 252 253 251 - 22 26 27 23 252 254 255 253 26 30 31 27 - 254 256 257 255 30 34 35 31 256 258 259 257 - 34 38 39 35 258 260 261 259 38 42 43 39 - 260 262 263 261 6 7 47 46 244 245 265 264 - 7 11 49 47 245 247 266 265 11 15 51 49 - 247 249 267 266 15 19 53 51 249 251 268 267 - 19 23 55 53 251 253 269 268 23 27 57 55 - 253 255 270 269 27 31 59 57 255 257 271 270 - 31 35 61 59 257 259 272 271 35 39 63 61 - 259 261 273 272 39 43 65 63 261 263 274 273 - 46 47 69 68 264 265 276 275 47 49 71 69 - 265 266 277 276 49 51 73 71 266 267 278 277 - 51 53 75 73 267 268 279 278 53 55 77 75 - 268 269 280 279 55 57 79 77 269 270 281 280 - 57 59 81 79 270 271 282 281 59 61 83 81 - 271 272 283 282 61 63 85 83 272 273 284 283 - 63 65 87 85 273 274 285 284 68 69 91 90 - 275 276 287 286 69 71 93 91 276 277 288 287 - 71 73 95 93 277 278 289 288 73 75 97 95 - 278 279 290 289 75 77 99 97 279 280 291 290 - 77 79 101 99 280 281 292 291 79 81 103 101 - 281 282 293 292 81 83 105 103 282 283 294 293 - 83 85 107 105 283 284 295 294 85 87 109 107 - 284 285 296 295 90 91 113 112 286 287 298 297 - 91 93 115 113 287 288 299 298 93 95 117 115 - 288 289 300 299 95 97 119 117 289 290 301 300 - 97 99 121 119 290 291 302 301 99 101 123 121 - 291 292 303 302 101 103 125 123 292 293 304 303 - 103 105 127 125 293 294 305 304 105 107 129 127 - 294 295 306 305 107 109 131 129 295 296 307 306 - 112 113 135 134 297 298 309 308 113 115 137 135 - 298 299 310 309 115 117 139 137 299 300 311 310 - 117 119 141 139 300 301 312 311 119 121 143 141 - 301 302 313 312 121 123 145 143 302 303 314 313 - 123 125 147 145 303 304 315 314 125 127 149 147 - 304 305 316 315 127 129 151 149 305 306 317 316 - 129 131 153 151 306 307 318 317 134 135 157 156 - 308 309 320 319 135 137 159 157 309 310 321 320 - 137 139 161 159 310 311 322 321 139 141 163 161 - 311 312 323 322 141 143 165 163 312 313 324 323 - 143 145 167 165 313 314 325 324 145 147 169 167 - 314 315 326 325 147 149 171 169 315 316 327 326 - 149 151 173 171 316 317 328 327 151 153 175 173 - 317 318 329 328 156 157 179 178 319 320 331 330 - 157 159 181 179 320 321 332 331 159 161 183 181 - 321 322 333 332 161 163 185 183 322 323 334 333 - 163 165 187 185 323 324 335 334 165 167 189 187 - 324 325 336 335 167 169 191 189 325 326 337 336 - 169 171 193 191 326 327 338 337 171 173 195 193 - 327 328 339 338 173 175 197 195 328 329 340 339 - 178 179 201 200 330 331 342 341 179 181 203 201 - 331 332 343 342 181 183 205 203 332 333 344 343 - 183 185 207 205 333 334 345 344 185 187 209 207 - 334 335 346 345 187 189 211 209 335 336 347 346 - 189 191 213 211 336 337 348 347 191 193 215 213 - 337 338 349 348 193 195 217 215 338 339 350 349 - 195 197 219 217 339 340 351 350 200 201 223 222 - 341 342 353 352 201 203 225 223 342 343 354 353 - 203 205 227 225 343 344 355 354 205 207 229 227 - 344 345 356 355 207 209 231 229 345 346 357 356 - 209 211 233 231 346 347 358 357 211 213 235 233 - 347 348 359 358 213 215 237 235 348 349 360 359 - 215 217 239 237 349 350 361 360 217 219 241 239 - 350 351 362 361 242 243 245 244 363 364 366 365 - 243 246 247 245 364 367 368 366 246 248 249 247 - 367 369 370 368 248 250 251 249 369 371 372 370 - 250 252 253 251 371 373 374 372 252 254 255 253 - 373 375 376 374 254 256 257 255 375 377 378 376 - 256 258 259 257 377 379 380 378 258 260 261 259 - 379 381 382 380 260 262 263 261 381 383 384 382 - 244 245 265 264 365 366 386 385 245 247 266 265 - 366 368 387 386 247 249 267 266 368 370 388 387 - 249 251 268 267 370 372 389 388 251 253 269 268 - 372 374 390 389 253 255 270 269 374 376 391 390 - 255 257 271 270 376 378 392 391 257 259 272 271 - 378 380 393 392 259 261 273 272 380 382 394 393 - 261 263 274 273 382 384 395 394 264 265 276 275 - 385 386 397 396 265 266 277 276 386 387 398 397 - 266 267 278 277 387 388 399 398 267 268 279 278 - 388 389 400 399 268 269 280 279 389 390 401 400 - 269 270 281 280 390 391 402 401 270 271 282 281 - 391 392 403 402 271 272 283 282 392 393 404 403 - 272 273 284 283 393 394 405 404 273 274 285 284 - 394 395 406 405 275 276 287 286 396 397 408 407 - 276 277 288 287 397 398 409 408 277 278 289 288 - 398 399 410 409 278 279 290 289 399 400 411 410 - 279 280 291 290 400 401 412 411 280 281 292 291 - 401 402 413 412 281 282 293 292 402 403 414 413 - 282 283 294 293 403 404 415 414 283 284 295 294 - 404 405 416 415 284 285 296 295 405 406 417 416 - 286 287 298 297 407 408 419 418 287 288 299 298 - 408 409 420 419 288 289 300 299 409 410 421 420 - 289 290 301 300 410 411 422 421 290 291 302 301 - 411 412 423 422 291 292 303 302 412 413 424 423 - 292 293 304 303 413 414 425 424 293 294 305 304 - 414 415 426 425 294 295 306 305 415 416 427 426 - 295 296 307 306 416 417 428 427 297 298 309 308 - 418 419 430 429 298 299 310 309 419 420 431 430 - 299 300 311 310 420 421 432 431 300 301 312 311 - 421 422 433 432 301 302 313 312 422 423 434 433 - 302 303 314 313 423 424 435 434 303 304 315 314 - 424 425 436 435 304 305 316 315 425 426 437 436 - 305 306 317 316 426 427 438 437 306 307 318 317 - 427 428 439 438 308 309 320 319 429 430 441 440 - 309 310 321 320 430 431 442 441 310 311 322 321 - 431 432 443 442 311 312 323 322 432 433 444 443 - 312 313 324 323 433 434 445 444 313 314 325 324 - 434 435 446 445 314 315 326 325 435 436 447 446 - 315 316 327 326 436 437 448 447 316 317 328 327 - 437 438 449 448 317 318 329 328 438 439 450 449 - 319 320 331 330 440 441 452 451 320 321 332 331 - 441 442 453 452 321 322 333 332 442 443 454 453 - 322 323 334 333 443 444 455 454 323 324 335 334 - 444 445 456 455 324 325 336 335 445 446 457 456 - 325 326 337 336 446 447 458 457 326 327 338 337 - 447 448 459 458 327 328 339 338 448 449 460 459 - 328 329 340 339 449 450 461 460 330 331 342 341 - 451 452 463 462 331 332 343 342 452 453 464 463 - 332 333 344 343 453 454 465 464 333 334 345 344 - 454 455 466 465 334 335 346 345 455 456 467 466 - 335 336 347 346 456 457 468 467 336 337 348 347 - 457 458 469 468 337 338 349 348 458 459 470 469 - 338 339 350 349 459 460 471 470 339 340 351 350 - 460 461 472 471 341 342 353 352 462 463 474 473 - 342 343 354 353 463 464 475 474 343 344 355 354 - 464 465 476 475 344 345 356 355 465 466 477 476 - 345 346 357 356 466 467 478 477 346 347 358 357 - 467 468 479 478 347 348 359 358 468 469 480 479 - 348 349 360 359 469 470 481 480 349 350 361 360 - 470 471 482 481 350 351 362 361 471 472 483 482 - 363 364 366 365 484 485 487 486 364 367 368 366 - 485 488 489 487 367 369 370 368 488 490 491 489 - 369 371 372 370 490 492 493 491 371 373 374 372 - 492 494 495 493 373 375 376 374 494 496 497 495 - 375 377 378 376 496 498 499 497 377 379 380 378 - 498 500 501 499 379 381 382 380 500 502 503 501 - 381 383 384 382 502 504 505 503 365 366 386 385 - 486 487 507 506 366 368 387 386 487 489 508 507 - 368 370 388 387 489 491 509 508 370 372 389 388 - 491 493 510 509 372 374 390 389 493 495 511 510 - 374 376 391 390 495 497 512 511 376 378 392 391 - 497 499 513 512 378 380 393 392 499 501 514 513 - 380 382 394 393 501 503 515 514 382 384 395 394 - 503 505 516 515 385 386 397 396 506 507 518 517 - 386 387 398 397 507 508 519 518 387 388 399 398 - 508 509 520 519 388 389 400 399 509 510 521 520 - 389 390 401 400 510 511 522 521 390 391 402 401 - 511 512 523 522 391 392 403 402 512 513 524 523 - 392 393 404 403 513 514 525 524 393 394 405 404 - 514 515 526 525 394 395 406 405 515 516 527 526 - 396 397 408 407 517 518 529 528 397 398 409 408 - 518 519 530 529 398 399 410 409 519 520 531 530 - 399 400 411 410 520 521 532 531 400 401 412 411 - 521 522 533 532 401 402 413 412 522 523 534 533 - 402 403 414 413 523 524 535 534 403 404 415 414 - 524 525 536 535 404 405 416 415 525 526 537 536 - 405 406 417 416 526 527 538 537 407 408 419 418 - 528 529 540 539 408 409 420 419 529 530 541 540 - 409 410 421 420 530 531 542 541 410 411 422 421 - 531 532 543 542 411 412 423 422 532 533 544 543 - 412 413 424 423 533 534 545 544 413 414 425 424 - 534 535 546 545 414 415 426 425 535 536 547 546 - 415 416 427 426 536 537 548 547 416 417 428 427 - 537 538 549 548 418 419 430 429 539 540 551 550 - 419 420 431 430 540 541 552 551 420 421 432 431 - 541 542 553 552 421 422 433 432 542 543 554 553 - 422 423 434 433 543 544 555 554 423 424 435 434 - 544 545 556 555 424 425 436 435 545 546 557 556 - 425 426 437 436 546 547 558 557 426 427 438 437 - 547 548 559 558 427 428 439 438 548 549 560 559 - 429 430 441 440 550 551 562 561 430 431 442 441 - 551 552 563 562 431 432 443 442 552 553 564 563 - 432 433 444 443 553 554 565 564 433 434 445 444 - 554 555 566 565 434 435 446 445 555 556 567 566 - 435 436 447 446 556 557 568 567 436 437 448 447 - 557 558 569 568 437 438 449 448 558 559 570 569 - 438 439 450 449 559 560 571 570 440 441 452 451 - 561 562 573 572 441 442 453 452 562 563 574 573 - 442 443 454 453 563 564 575 574 443 444 455 454 - 564 565 576 575 444 445 456 455 565 566 577 576 - 445 446 457 456 566 567 578 577 446 447 458 457 - 567 568 579 578 447 448 459 458 568 569 580 579 - 448 449 460 459 569 570 581 580 449 450 461 460 - 570 571 582 581 451 452 463 462 572 573 584 583 - 452 453 464 463 573 574 585 584 453 454 465 464 - 574 575 586 585 454 455 466 465 575 576 587 586 - 455 456 467 466 576 577 588 587 456 457 468 467 - 577 578 589 588 457 458 469 468 578 579 590 589 - 458 459 470 469 579 580 591 590 459 460 471 470 - 580 581 592 591 460 461 472 471 581 582 593 592 - 462 463 474 473 583 584 595 594 463 464 475 474 - 584 585 596 595 464 465 476 475 585 586 597 596 - 465 466 477 476 586 587 598 597 466 467 478 477 - 587 588 599 598 467 468 479 478 588 589 600 599 - 468 469 480 479 589 590 601 600 469 470 481 480 - 590 591 602 601 470 471 482 481 591 592 603 602 - 471 472 483 482 592 593 604 603 484 485 487 486 - 605 606 608 607 485 488 489 487 606 609 610 608 - 488 490 491 489 609 611 612 610 490 492 493 491 - 611 613 614 612 492 494 495 493 613 615 616 614 - 494 496 497 495 615 617 618 616 496 498 499 497 - 617 619 620 618 498 500 501 499 619 621 622 620 - 500 502 503 501 621 623 624 622 502 504 505 503 - 623 625 626 624 486 487 507 506 607 608 628 627 - 487 489 508 507 608 610 629 628 489 491 509 508 - 610 612 630 629 491 493 510 509 612 614 631 630 - 493 495 511 510 614 616 632 631 495 497 512 511 - 616 618 633 632 497 499 513 512 618 620 634 633 - 499 501 514 513 620 622 635 634 501 503 515 514 - 622 624 636 635 503 505 516 515 624 626 637 636 - 506 507 518 517 627 628 639 638 507 508 519 518 - 628 629 640 639 508 509 520 519 629 630 641 640 - 509 510 521 520 630 631 642 641 510 511 522 521 - 631 632 643 642 511 512 523 522 632 633 644 643 - 512 513 524 523 633 634 645 644 513 514 525 524 - 634 635 646 645 514 515 526 525 635 636 647 646 - 515 516 527 526 636 637 648 647 517 518 529 528 - 638 639 650 649 518 519 530 529 639 640 651 650 - 519 520 531 530 640 641 652 651 520 521 532 531 - 641 642 653 652 521 522 533 532 642 643 654 653 - 522 523 534 533 643 644 655 654 523 524 535 534 - 644 645 656 655 524 525 536 535 645 646 657 656 - 525 526 537 536 646 647 658 657 526 527 538 537 - 647 648 659 658 528 529 540 539 649 650 661 660 - 529 530 541 540 650 651 662 661 530 531 542 541 - 651 652 663 662 531 532 543 542 652 653 664 663 - 532 533 544 543 653 654 665 664 533 534 545 544 - 654 655 666 665 534 535 546 545 655 656 667 666 - 535 536 547 546 656 657 668 667 536 537 548 547 - 657 658 669 668 537 538 549 548 658 659 670 669 - 539 540 551 550 660 661 672 671 540 541 552 551 - 661 662 673 672 541 542 553 552 662 663 674 673 - 542 543 554 553 663 664 675 674 543 544 555 554 - 664 665 676 675 544 545 556 555 665 666 677 676 - 545 546 557 556 666 667 678 677 546 547 558 557 - 667 668 679 678 547 548 559 558 668 669 680 679 - 548 549 560 559 669 670 681 680 550 551 562 561 - 671 672 683 682 551 552 563 562 672 673 684 683 - 552 553 564 563 673 674 685 684 553 554 565 564 - 674 675 686 685 554 555 566 565 675 676 687 686 - 555 556 567 566 676 677 688 687 556 557 568 567 - 677 678 689 688 557 558 569 568 678 679 690 689 - 558 559 570 569 679 680 691 690 559 560 571 570 - 680 681 692 691 561 562 573 572 682 683 694 693 - 562 563 574 573 683 684 695 694 563 564 575 574 - 684 685 696 695 564 565 576 575 685 686 697 696 - 565 566 577 576 686 687 698 697 566 567 578 577 - 687 688 699 698 567 568 579 578 688 689 700 699 - 568 569 580 579 689 690 701 700 569 570 581 580 - 690 691 702 701 570 571 582 581 691 692 703 702 - 572 573 584 583 693 694 705 704 573 574 585 584 - 694 695 706 705 574 575 586 585 695 696 707 706 - 575 576 587 586 696 697 708 707 576 577 588 587 - 697 698 709 708 577 578 589 588 698 699 710 709 - 578 579 590 589 699 700 711 710 579 580 591 590 - 700 701 712 711 580 581 592 591 701 702 713 712 - 581 582 593 592 702 703 714 713 583 584 595 594 - 704 705 716 715 584 585 596 595 705 706 717 716 - 585 586 597 596 706 707 718 717 586 587 598 597 - 707 708 719 718 587 588 599 598 708 709 720 719 - 588 589 600 599 709 710 721 720 589 590 601 600 - 710 711 722 721 590 591 602 601 711 712 723 722 - 591 592 603 602 712 713 724 723 592 593 604 603 - 713 714 725 724 605 606 608 607 726 727 729 728 - 606 609 610 608 727 730 731 729 609 611 612 610 - 730 732 733 731 611 613 614 612 732 734 735 733 - 613 615 616 614 734 736 737 735 615 617 618 616 - 736 738 739 737 617 619 620 618 738 740 741 739 - 619 621 622 620 740 742 743 741 621 623 624 622 - 742 744 745 743 623 625 626 624 744 746 747 745 - 607 608 628 627 728 729 749 748 608 610 629 628 - 729 731 750 749 610 612 630 629 731 733 751 750 - 612 614 631 630 733 735 752 751 614 616 632 631 - 735 737 753 752 616 618 633 632 737 739 754 753 - 618 620 634 633 739 741 755 754 620 622 635 634 - 741 743 756 755 622 624 636 635 743 745 757 756 - 624 626 637 636 745 747 758 757 627 628 639 638 - 748 749 760 759 628 629 640 639 749 750 761 760 - 629 630 641 640 750 751 762 761 630 631 642 641 - 751 752 763 762 631 632 643 642 752 753 764 763 - 632 633 644 643 753 754 765 764 633 634 645 644 - 754 755 766 765 634 635 646 645 755 756 767 766 - 635 636 647 646 756 757 768 767 636 637 648 647 - 757 758 769 768 638 639 650 649 759 760 771 770 - 639 640 651 650 760 761 772 771 640 641 652 651 - 761 762 773 772 641 642 653 652 762 763 774 773 - 642 643 654 653 763 764 775 774 643 644 655 654 - 764 765 776 775 644 645 656 655 765 766 777 776 - 645 646 657 656 766 767 778 777 646 647 658 657 - 767 768 779 778 647 648 659 658 768 769 780 779 - 649 650 661 660 770 771 782 781 650 651 662 661 - 771 772 783 782 651 652 663 662 772 773 784 783 - 652 653 664 663 773 774 785 784 653 654 665 664 - 774 775 786 785 654 655 666 665 775 776 787 786 - 655 656 667 666 776 777 788 787 656 657 668 667 - 777 778 789 788 657 658 669 668 778 779 790 789 - 658 659 670 669 779 780 791 790 660 661 672 671 - 781 782 793 792 661 662 673 672 782 783 794 793 - 662 663 674 673 783 784 795 794 663 664 675 674 - 784 785 796 795 664 665 676 675 785 786 797 796 - 665 666 677 676 786 787 798 797 666 667 678 677 - 787 788 799 798 667 668 679 678 788 789 800 799 - 668 669 680 679 789 790 801 800 669 670 681 680 - 790 791 802 801 671 672 683 682 792 793 804 803 - 672 673 684 683 793 794 805 804 673 674 685 684 - 794 795 806 805 674 675 686 685 795 796 807 806 - 675 676 687 686 796 797 808 807 676 677 688 687 - 797 798 809 808 677 678 689 688 798 799 810 809 - 678 679 690 689 799 800 811 810 679 680 691 690 - 800 801 812 811 680 681 692 691 801 802 813 812 - 682 683 694 693 803 804 815 814 683 684 695 694 - 804 805 816 815 684 685 696 695 805 806 817 816 - 685 686 697 696 806 807 818 817 686 687 698 697 - 807 808 819 818 687 688 699 698 808 809 820 819 - 688 689 700 699 809 810 821 820 689 690 701 700 - 810 811 822 821 690 691 702 701 811 812 823 822 - 691 692 703 702 812 813 824 823 693 694 705 704 - 814 815 826 825 694 695 706 705 815 816 827 826 - 695 696 707 706 816 817 828 827 696 697 708 707 - 817 818 829 828 697 698 709 708 818 819 830 829 - 698 699 710 709 819 820 831 830 699 700 711 710 - 820 821 832 831 700 701 712 711 821 822 833 832 - 701 702 713 712 822 823 834 833 702 703 714 713 - 823 824 835 834 704 705 716 715 825 826 837 836 - 705 706 717 716 826 827 838 837 706 707 718 717 - 827 828 839 838 707 708 719 718 828 829 840 839 - 708 709 720 719 829 830 841 840 709 710 721 720 - 830 831 842 841 710 711 722 721 831 832 843 842 - 711 712 723 722 832 833 844 843 712 713 724 723 - 833 834 845 844 713 714 725 724 834 835 846 845 - 726 727 729 728 847 848 850 849 727 730 731 729 - 848 851 852 850 730 732 733 731 851 853 854 852 - 732 734 735 733 853 855 856 854 734 736 737 735 - 855 857 858 856 736 738 739 737 857 859 860 858 - 738 740 741 739 859 861 862 860 740 742 743 741 - 861 863 864 862 742 744 745 743 863 865 866 864 - 744 746 747 745 865 867 868 866 728 729 749 748 - 849 850 870 869 729 731 750 749 850 852 871 870 - 731 733 751 750 852 854 872 871 733 735 752 751 - 854 856 873 872 735 737 753 752 856 858 874 873 - 737 739 754 753 858 860 875 874 739 741 755 754 - 860 862 876 875 741 743 756 755 862 864 877 876 - 743 745 757 756 864 866 878 877 745 747 758 757 - 866 868 879 878 748 749 760 759 869 870 881 880 - 749 750 761 760 870 871 882 881 750 751 762 761 - 871 872 883 882 751 752 763 762 872 873 884 883 - 752 753 764 763 873 874 885 884 753 754 765 764 - 874 875 886 885 754 755 766 765 875 876 887 886 - 755 756 767 766 876 877 888 887 756 757 768 767 - 877 878 889 888 757 758 769 768 878 879 890 889 - 759 760 771 770 880 881 892 891 760 761 772 771 - 881 882 893 892 761 762 773 772 882 883 894 893 - 762 763 774 773 883 884 895 894 763 764 775 774 - 884 885 896 895 764 765 776 775 885 886 897 896 - 765 766 777 776 886 887 898 897 766 767 778 777 - 887 888 899 898 767 768 779 778 888 889 900 899 - 768 769 780 779 889 890 901 900 770 771 782 781 - 891 892 903 902 771 772 783 782 892 893 904 903 - 772 773 784 783 893 894 905 904 773 774 785 784 - 894 895 906 905 774 775 786 785 895 896 907 906 - 775 776 787 786 896 897 908 907 776 777 788 787 - 897 898 909 908 777 778 789 788 898 899 910 909 - 778 779 790 789 899 900 911 910 779 780 791 790 - 900 901 912 911 781 782 793 792 902 903 914 913 - 782 783 794 793 903 904 915 914 783 784 795 794 - 904 905 916 915 784 785 796 795 905 906 917 916 - 785 786 797 796 906 907 918 917 786 787 798 797 - 907 908 919 918 787 788 799 798 908 909 920 919 - 788 789 800 799 909 910 921 920 789 790 801 800 - 910 911 922 921 790 791 802 801 911 912 923 922 - 792 793 804 803 913 914 925 924 793 794 805 804 - 914 915 926 925 794 795 806 805 915 916 927 926 - 795 796 807 806 916 917 928 927 796 797 808 807 - 917 918 929 928 797 798 809 808 918 919 930 929 - 798 799 810 809 919 920 931 930 799 800 811 810 - 920 921 932 931 800 801 812 811 921 922 933 932 - 801 802 813 812 922 923 934 933 803 804 815 814 - 924 925 936 935 804 805 816 815 925 926 937 936 - 805 806 817 816 926 927 938 937 806 807 818 817 - 927 928 939 938 807 808 819 818 928 929 940 939 - 808 809 820 819 929 930 941 940 809 810 821 820 - 930 931 942 941 810 811 822 821 931 932 943 942 - 811 812 823 822 932 933 944 943 812 813 824 823 - 933 934 945 944 814 815 826 825 935 936 947 946 - 815 816 827 826 936 937 948 947 816 817 828 827 - 937 938 949 948 817 818 829 828 938 939 950 949 - 818 819 830 829 939 940 951 950 819 820 831 830 - 940 941 952 951 820 821 832 831 941 942 953 952 - 821 822 833 832 942 943 954 953 822 823 834 833 - 943 944 955 954 823 824 835 834 944 945 956 955 - 825 826 837 836 946 947 958 957 826 827 838 837 - 947 948 959 958 827 828 839 838 948 949 960 959 - 828 829 840 839 949 950 961 960 829 830 841 840 - 950 951 962 961 830 831 842 841 951 952 963 962 - 831 832 843 842 952 953 964 963 832 833 844 843 - 953 954 965 964 833 834 845 844 954 955 966 965 - 834 835 846 845 955 956 967 966 847 848 850 849 - 968 969 971 970 848 851 852 850 969 972 973 971 - 851 853 854 852 972 974 975 973 853 855 856 854 - 974 976 977 975 855 857 858 856 976 978 979 977 - 857 859 860 858 978 980 981 979 859 861 862 860 - 980 982 983 981 861 863 864 862 982 984 985 983 - 863 865 866 864 984 986 987 985 865 867 868 866 - 986 988 989 987 849 850 870 869 970 971 991 990 - 850 852 871 870 971 973 992 991 852 854 872 871 - 973 975 993 992 854 856 873 872 975 977 994 993 - 856 858 874 873 977 979 995 994 858 860 875 874 - 979 981 996 995 860 862 876 875 981 983 997 996 - 862 864 877 876 983 985 998 997 864 866 878 877 - 985 987 999 998 866 868 879 878 987 989 1000 999 - 869 870 881 880 990 991 1002 1001 870 871 882 881 - 991 992 1003 1002 871 872 883 882 992 993 1004 1003 - 872 873 884 883 993 994 1005 1004 873 874 885 884 - 994 995 1006 1005 874 875 886 885 995 996 1007 1006 - 875 876 887 886 996 997 1008 1007 876 877 888 887 - 997 998 1009 1008 877 878 889 888 998 999 1010 1009 - 878 879 890 889 999 1000 1011 1010 880 881 892 891 - 1001 1002 1013 1012 881 882 893 892 1002 1003 1014 1013 - 882 883 894 893 1003 1004 1015 1014 883 884 895 894 - 1004 1005 1016 1015 884 885 896 895 1005 1006 1017 1016 - 885 886 897 896 1006 1007 1018 1017 886 887 898 897 - 1007 1008 1019 1018 887 888 899 898 1008 1009 1020 1019 - 888 889 900 899 1009 1010 1021 1020 889 890 901 900 - 1010 1011 1022 1021 891 892 903 902 1012 1013 1024 1023 - 892 893 904 903 1013 1014 1025 1024 893 894 905 904 - 1014 1015 1026 1025 894 895 906 905 1015 1016 1027 1026 - 895 896 907 906 1016 1017 1028 1027 896 897 908 907 - 1017 1018 1029 1028 897 898 909 908 1018 1019 1030 1029 - 898 899 910 909 1019 1020 1031 1030 899 900 911 910 - 1020 1021 1032 1031 900 901 912 911 1021 1022 1033 1032 - 902 903 914 913 1023 1024 1035 1034 903 904 915 914 - 1024 1025 1036 1035 904 905 916 915 1025 1026 1037 1036 - 905 906 917 916 1026 1027 1038 1037 906 907 918 917 - 1027 1028 1039 1038 907 908 919 918 1028 1029 1040 1039 - 908 909 920 919 1029 1030 1041 1040 909 910 921 920 - 1030 1031 1042 1041 910 911 922 921 1031 1032 1043 1042 - 911 912 923 922 1032 1033 1044 1043 913 914 925 924 - 1034 1035 1046 1045 914 915 926 925 1035 1036 1047 1046 - 915 916 927 926 1036 1037 1048 1047 916 917 928 927 - 1037 1038 1049 1048 917 918 929 928 1038 1039 1050 1049 - 918 919 930 929 1039 1040 1051 1050 919 920 931 930 - 1040 1041 1052 1051 920 921 932 931 1041 1042 1053 1052 - 921 922 933 932 1042 1043 1054 1053 922 923 934 933 - 1043 1044 1055 1054 924 925 936 935 1045 1046 1057 1056 - 925 926 937 936 1046 1047 1058 1057 926 927 938 937 - 1047 1048 1059 1058 927 928 939 938 1048 1049 1060 1059 - 928 929 940 939 1049 1050 1061 1060 929 930 941 940 - 1050 1051 1062 1061 930 931 942 941 1051 1052 1063 1062 - 931 932 943 942 1052 1053 1064 1063 932 933 944 943 - 1053 1054 1065 1064 933 934 945 944 1054 1055 1066 1065 - 935 936 947 946 1056 1057 1068 1067 936 937 948 947 - 1057 1058 1069 1068 937 938 949 948 1058 1059 1070 1069 - 938 939 950 949 1059 1060 1071 1070 939 940 951 950 - 1060 1061 1072 1071 940 941 952 951 1061 1062 1073 1072 - 941 942 953 952 1062 1063 1074 1073 942 943 954 953 - 1063 1064 1075 1074 943 944 955 954 1064 1065 1076 1075 - 944 945 956 955 1065 1066 1077 1076 946 947 958 957 - 1067 1068 1079 1078 947 948 959 958 1068 1069 1080 1079 - 948 949 960 959 1069 1070 1081 1080 949 950 961 960 - 1070 1071 1082 1081 950 951 962 961 1071 1072 1083 1082 - 951 952 963 962 1072 1073 1084 1083 952 953 964 963 - 1073 1074 1085 1084 953 954 965 964 1074 1075 1086 1085 - 954 955 966 965 1075 1076 1087 1086 955 956 967 966 - 1076 1077 1088 1087 968 969 971 970 1089 1090 1092 1091 - 969 972 973 971 1090 1093 1094 1092 972 974 975 973 - 1093 1095 1096 1094 974 976 977 975 1095 1097 1098 1096 - 976 978 979 977 1097 1099 1100 1098 978 980 981 979 - 1099 1101 1102 1100 980 982 983 981 1101 1103 1104 1102 - 982 984 985 983 1103 1105 1106 1104 984 986 987 985 - 1105 1107 1108 1106 986 988 989 987 1107 1109 1110 1108 - 970 971 991 990 1091 1092 1112 1111 971 973 992 991 - 1092 1094 1113 1112 973 975 993 992 1094 1096 1114 1113 - 975 977 994 993 1096 1098 1115 1114 977 979 995 994 - 1098 1100 1116 1115 979 981 996 995 1100 1102 1117 1116 - 981 983 997 996 1102 1104 1118 1117 983 985 998 997 - 1104 1106 1119 1118 985 987 999 998 1106 1108 1120 1119 - 987 989 1000 999 1108 1110 1121 1120 990 991 1002 1001 - 1111 1112 1123 1122 991 992 1003 1002 1112 1113 1124 1123 - 992 993 1004 1003 1113 1114 1125 1124 993 994 1005 1004 - 1114 1115 1126 1125 994 995 1006 1005 1115 1116 1127 1126 - 995 996 1007 1006 1116 1117 1128 1127 996 997 1008 1007 - 1117 1118 1129 1128 997 998 1009 1008 1118 1119 1130 1129 - 998 999 1010 1009 1119 1120 1131 1130 999 1000 1011 1010 - 1120 1121 1132 1131 1001 1002 1013 1012 1122 1123 1134 1133 - 1002 1003 1014 1013 1123 1124 1135 1134 1003 1004 1015 1014 - 1124 1125 1136 1135 1004 1005 1016 1015 1125 1126 1137 1136 - 1005 1006 1017 1016 1126 1127 1138 1137 1006 1007 1018 1017 - 1127 1128 1139 1138 1007 1008 1019 1018 1128 1129 1140 1139 - 1008 1009 1020 1019 1129 1130 1141 1140 1009 1010 1021 1020 - 1130 1131 1142 1141 1010 1011 1022 1021 1131 1132 1143 1142 - 1012 1013 1024 1023 1133 1134 1145 1144 1013 1014 1025 1024 - 1134 1135 1146 1145 1014 1015 1026 1025 1135 1136 1147 1146 - 1015 1016 1027 1026 1136 1137 1148 1147 1016 1017 1028 1027 - 1137 1138 1149 1148 1017 1018 1029 1028 1138 1139 1150 1149 - 1018 1019 1030 1029 1139 1140 1151 1150 1019 1020 1031 1030 - 1140 1141 1152 1151 1020 1021 1032 1031 1141 1142 1153 1152 - 1021 1022 1033 1032 1142 1143 1154 1153 1023 1024 1035 1034 - 1144 1145 1156 1155 1024 1025 1036 1035 1145 1146 1157 1156 - 1025 1026 1037 1036 1146 1147 1158 1157 1026 1027 1038 1037 - 1147 1148 1159 1158 1027 1028 1039 1038 1148 1149 1160 1159 - 1028 1029 1040 1039 1149 1150 1161 1160 1029 1030 1041 1040 - 1150 1151 1162 1161 1030 1031 1042 1041 1151 1152 1163 1162 - 1031 1032 1043 1042 1152 1153 1164 1163 1032 1033 1044 1043 - 1153 1154 1165 1164 1034 1035 1046 1045 1155 1156 1167 1166 - 1035 1036 1047 1046 1156 1157 1168 1167 1036 1037 1048 1047 - 1157 1158 1169 1168 1037 1038 1049 1048 1158 1159 1170 1169 - 1038 1039 1050 1049 1159 1160 1171 1170 1039 1040 1051 1050 - 1160 1161 1172 1171 1040 1041 1052 1051 1161 1162 1173 1172 - 1041 1042 1053 1052 1162 1163 1174 1173 1042 1043 1054 1053 - 1163 1164 1175 1174 1043 1044 1055 1054 1164 1165 1176 1175 - 1045 1046 1057 1056 1166 1167 1178 1177 1046 1047 1058 1057 - 1167 1168 1179 1178 1047 1048 1059 1058 1168 1169 1180 1179 - 1048 1049 1060 1059 1169 1170 1181 1180 1049 1050 1061 1060 - 1170 1171 1182 1181 1050 1051 1062 1061 1171 1172 1183 1182 - 1051 1052 1063 1062 1172 1173 1184 1183 1052 1053 1064 1063 - 1173 1174 1185 1184 1053 1054 1065 1064 1174 1175 1186 1185 - 1054 1055 1066 1065 1175 1176 1187 1186 1056 1057 1068 1067 - 1177 1178 1189 1188 1057 1058 1069 1068 1178 1179 1190 1189 - 1058 1059 1070 1069 1179 1180 1191 1190 1059 1060 1071 1070 - 1180 1181 1192 1191 1060 1061 1072 1071 1181 1182 1193 1192 - 1061 1062 1073 1072 1182 1183 1194 1193 1062 1063 1074 1073 - 1183 1184 1195 1194 1063 1064 1075 1074 1184 1185 1196 1195 - 1064 1065 1076 1075 1185 1186 1197 1196 1065 1066 1077 1076 - 1186 1187 1198 1197 1067 1068 1079 1078 1188 1189 1200 1199 - 1068 1069 1080 1079 1189 1190 1201 1200 1069 1070 1081 1080 - 1190 1191 1202 1201 1070 1071 1082 1081 1191 1192 1203 1202 - 1071 1072 1083 1082 1192 1193 1204 1203 1072 1073 1084 1083 - 1193 1194 1205 1204 1073 1074 1085 1084 1194 1195 1206 1205 - 1074 1075 1086 1085 1195 1196 1207 1206 1075 1076 1087 1086 - 1196 1197 1208 1207 1076 1077 1088 1087 1197 1198 1209 1208 - 1089 1090 1092 1091 1210 1211 1213 1212 1090 1093 1094 1092 - 1211 1214 1215 1213 1093 1095 1096 1094 1214 1216 1217 1215 - 1095 1097 1098 1096 1216 1218 1219 1217 1097 1099 1100 1098 - 1218 1220 1221 1219 1099 1101 1102 1100 1220 1222 1223 1221 - 1101 1103 1104 1102 1222 1224 1225 1223 1103 1105 1106 1104 - 1224 1226 1227 1225 1105 1107 1108 1106 1226 1228 1229 1227 - 1107 1109 1110 1108 1228 1230 1231 1229 1091 1092 1112 1111 - 1212 1213 1233 1232 1092 1094 1113 1112 1213 1215 1234 1233 - 1094 1096 1114 1113 1215 1217 1235 1234 1096 1098 1115 1114 - 1217 1219 1236 1235 1098 1100 1116 1115 1219 1221 1237 1236 - 1100 1102 1117 1116 1221 1223 1238 1237 1102 1104 1118 1117 - 1223 1225 1239 1238 1104 1106 1119 1118 1225 1227 1240 1239 - 1106 1108 1120 1119 1227 1229 1241 1240 1108 1110 1121 1120 - 1229 1231 1242 1241 1111 1112 1123 1122 1232 1233 1244 1243 - 1112 1113 1124 1123 1233 1234 1245 1244 1113 1114 1125 1124 - 1234 1235 1246 1245 1114 1115 1126 1125 1235 1236 1247 1246 - 1115 1116 1127 1126 1236 1237 1248 1247 1116 1117 1128 1127 - 1237 1238 1249 1248 1117 1118 1129 1128 1238 1239 1250 1249 - 1118 1119 1130 1129 1239 1240 1251 1250 1119 1120 1131 1130 - 1240 1241 1252 1251 1120 1121 1132 1131 1241 1242 1253 1252 - 1122 1123 1134 1133 1243 1244 1255 1254 1123 1124 1135 1134 - 1244 1245 1256 1255 1124 1125 1136 1135 1245 1246 1257 1256 - 1125 1126 1137 1136 1246 1247 1258 1257 1126 1127 1138 1137 - 1247 1248 1259 1258 1127 1128 1139 1138 1248 1249 1260 1259 - 1128 1129 1140 1139 1249 1250 1261 1260 1129 1130 1141 1140 - 1250 1251 1262 1261 1130 1131 1142 1141 1251 1252 1263 1262 - 1131 1132 1143 1142 1252 1253 1264 1263 1133 1134 1145 1144 - 1254 1255 1266 1265 1134 1135 1146 1145 1255 1256 1267 1266 - 1135 1136 1147 1146 1256 1257 1268 1267 1136 1137 1148 1147 - 1257 1258 1269 1268 1137 1138 1149 1148 1258 1259 1270 1269 - 1138 1139 1150 1149 1259 1260 1271 1270 1139 1140 1151 1150 - 1260 1261 1272 1271 1140 1141 1152 1151 1261 1262 1273 1272 - 1141 1142 1153 1152 1262 1263 1274 1273 1142 1143 1154 1153 - 1263 1264 1275 1274 1144 1145 1156 1155 1265 1266 1277 1276 - 1145 1146 1157 1156 1266 1267 1278 1277 1146 1147 1158 1157 - 1267 1268 1279 1278 1147 1148 1159 1158 1268 1269 1280 1279 - 1148 1149 1160 1159 1269 1270 1281 1280 1149 1150 1161 1160 - 1270 1271 1282 1281 1150 1151 1162 1161 1271 1272 1283 1282 - 1151 1152 1163 1162 1272 1273 1284 1283 1152 1153 1164 1163 - 1273 1274 1285 1284 1153 1154 1165 1164 1274 1275 1286 1285 - 1155 1156 1167 1166 1276 1277 1288 1287 1156 1157 1168 1167 - 1277 1278 1289 1288 1157 1158 1169 1168 1278 1279 1290 1289 - 1158 1159 1170 1169 1279 1280 1291 1290 1159 1160 1171 1170 - 1280 1281 1292 1291 1160 1161 1172 1171 1281 1282 1293 1292 - 1161 1162 1173 1172 1282 1283 1294 1293 1162 1163 1174 1173 - 1283 1284 1295 1294 1163 1164 1175 1174 1284 1285 1296 1295 - 1164 1165 1176 1175 1285 1286 1297 1296 1166 1167 1178 1177 - 1287 1288 1299 1298 1167 1168 1179 1178 1288 1289 1300 1299 - 1168 1169 1180 1179 1289 1290 1301 1300 1169 1170 1181 1180 - 1290 1291 1302 1301 1170 1171 1182 1181 1291 1292 1303 1302 - 1171 1172 1183 1182 1292 1293 1304 1303 1172 1173 1184 1183 - 1293 1294 1305 1304 1173 1174 1185 1184 1294 1295 1306 1305 - 1174 1175 1186 1185 1295 1296 1307 1306 1175 1176 1187 1186 - 1296 1297 1308 1307 1177 1178 1189 1188 1298 1299 1310 1309 - 1178 1179 1190 1189 1299 1300 1311 1310 1179 1180 1191 1190 - 1300 1301 1312 1311 1180 1181 1192 1191 1301 1302 1313 1312 - 1181 1182 1193 1192 1302 1303 1314 1313 1182 1183 1194 1193 - 1303 1304 1315 1314 1183 1184 1195 1194 1304 1305 1316 1315 - 1184 1185 1196 1195 1305 1306 1317 1316 1185 1186 1197 1196 - 1306 1307 1318 1317 1186 1187 1198 1197 1307 1308 1319 1318 - 1188 1189 1200 1199 1309 1310 1321 1320 1189 1190 1201 1200 - 1310 1311 1322 1321 1190 1191 1202 1201 1311 1312 1323 1322 - 1191 1192 1203 1202 1312 1313 1324 1323 1192 1193 1204 1203 - 1313 1314 1325 1324 1193 1194 1205 1204 1314 1315 1326 1325 - 1194 1195 1206 1205 1315 1316 1327 1326 1195 1196 1207 1206 - 1316 1317 1328 1327 1196 1197 1208 1207 1317 1318 1329 1328 - 1197 1198 1209 1208 1318 1319 1330 1329 - - - 8 16 24 32 40 48 56 64 72 80 88 96 - 104 112 120 128 136 144 152 160 168 176 184 192 - 200 208 216 224 232 240 248 256 264 272 280 288 - 296 304 312 320 328 336 344 352 360 368 376 384 - 392 400 408 416 424 432 440 448 456 464 472 480 - 488 496 504 512 520 528 536 544 552 560 568 576 - 584 592 600 608 616 624 632 640 648 656 664 672 - 680 688 696 704 712 720 728 736 744 752 760 768 - 776 784 792 800 808 816 824 832 840 848 856 864 - 872 880 888 896 904 912 920 928 936 944 952 960 - 968 976 984 992 1000 1008 1016 1024 1032 1040 1048 1056 - 1064 1072 1080 1088 1096 1104 1112 1120 1128 1136 1144 1152 - 1160 1168 1176 1184 1192 1200 1208 1216 1224 1232 1240 1248 - 1256 1264 1272 1280 1288 1296 1304 1312 1320 1328 1336 1344 - 1352 1360 1368 1376 1384 1392 1400 1408 1416 1424 1432 1440 - 1448 1456 1464 1472 1480 1488 1496 1504 1512 1520 1528 1536 - 1544 1552 1560 1568 1576 1584 1592 1600 1608 1616 1624 1632 - 1640 1648 1656 1664 1672 1680 1688 1696 1704 1712 1720 1728 - 1736 1744 1752 1760 1768 1776 1784 1792 1800 1808 1816 1824 - 1832 1840 1848 1856 1864 1872 1880 1888 1896 1904 1912 1920 - 1928 1936 1944 1952 1960 1968 1976 1984 1992 2000 2008 2016 - 2024 2032 2040 2048 2056 2064 2072 2080 2088 2096 2104 2112 - 2120 2128 2136 2144 2152 2160 2168 2176 2184 2192 2200 2208 - 2216 2224 2232 2240 2248 2256 2264 2272 2280 2288 2296 2304 - 2312 2320 2328 2336 2344 2352 2360 2368 2376 2384 2392 2400 - 2408 2416 2424 2432 2440 2448 2456 2464 2472 2480 2488 2496 - 2504 2512 2520 2528 2536 2544 2552 2560 2568 2576 2584 2592 - 2600 2608 2616 2624 2632 2640 2648 2656 2664 2672 2680 2688 - 2696 2704 2712 2720 2728 2736 2744 2752 2760 2768 2776 2784 - 2792 2800 2808 2816 2824 2832 2840 2848 2856 2864 2872 2880 - 2888 2896 2904 2912 2920 2928 2936 2944 2952 2960 2968 2976 - 2984 2992 3000 3008 3016 3024 3032 3040 3048 3056 3064 3072 - 3080 3088 3096 3104 3112 3120 3128 3136 3144 3152 3160 3168 - 3176 3184 3192 3200 3208 3216 3224 3232 3240 3248 3256 3264 - 3272 3280 3288 3296 3304 3312 3320 3328 3336 3344 3352 3360 - 3368 3376 3384 3392 3400 3408 3416 3424 3432 3440 3448 3456 - 3464 3472 3480 3488 3496 3504 3512 3520 3528 3536 3544 3552 - 3560 3568 3576 3584 3592 3600 3608 3616 3624 3632 3640 3648 - 3656 3664 3672 3680 3688 3696 3704 3712 3720 3728 3736 3744 - 3752 3760 3768 3776 3784 3792 3800 3808 3816 3824 3832 3840 - 3848 3856 3864 3872 3880 3888 3896 3904 3912 3920 3928 3936 - 3944 3952 3960 3968 3976 3984 3992 4000 4008 4016 4024 4032 - 4040 4048 4056 4064 4072 4080 4088 4096 4104 4112 4120 4128 - 4136 4144 4152 4160 4168 4176 4184 4192 4200 4208 4216 4224 - 4232 4240 4248 4256 4264 4272 4280 4288 4296 4304 4312 4320 - 4328 4336 4344 4352 4360 4368 4376 4384 4392 4400 4408 4416 - 4424 4432 4440 4448 4456 4464 4472 4480 4488 4496 4504 4512 - 4520 4528 4536 4544 4552 4560 4568 4576 4584 4592 4600 4608 - 4616 4624 4632 4640 4648 4656 4664 4672 4680 4688 4696 4704 - 4712 4720 4728 4736 4744 4752 4760 4768 4776 4784 4792 4800 - 4808 4816 4824 4832 4840 4848 4856 4864 4872 4880 4888 4896 - 4904 4912 4920 4928 4936 4944 4952 4960 4968 4976 4984 4992 - 5000 5008 5016 5024 5032 5040 5048 5056 5064 5072 5080 5088 - 5096 5104 5112 5120 5128 5136 5144 5152 5160 5168 5176 5184 - 5192 5200 5208 5216 5224 5232 5240 5248 5256 5264 5272 5280 - 5288 5296 5304 5312 5320 5328 5336 5344 5352 5360 5368 5376 - 5384 5392 5400 5408 5416 5424 5432 5440 5448 5456 5464 5472 - 5480 5488 5496 5504 5512 5520 5528 5536 5544 5552 5560 5568 - 5576 5584 5592 5600 5608 5616 5624 5632 5640 5648 5656 5664 - 5672 5680 5688 5696 5704 5712 5720 5728 5736 5744 5752 5760 - 5768 5776 5784 5792 5800 5808 5816 5824 5832 5840 5848 5856 - 5864 5872 5880 5888 5896 5904 5912 5920 5928 5936 5944 5952 - 5960 5968 5976 5984 5992 6000 6008 6016 6024 6032 6040 6048 - 6056 6064 6072 6080 6088 6096 6104 6112 6120 6128 6136 6144 - 6152 6160 6168 6176 6184 6192 6200 6208 6216 6224 6232 6240 - 6248 6256 6264 6272 6280 6288 6296 6304 6312 6320 6328 6336 - 6344 6352 6360 6368 6376 6384 6392 6400 6408 6416 6424 6432 - 6440 6448 6456 6464 6472 6480 6488 6496 6504 6512 6520 6528 - 6536 6544 6552 6560 6568 6576 6584 6592 6600 6608 6616 6624 - 6632 6640 6648 6656 6664 6672 6680 6688 6696 6704 6712 6720 - 6728 6736 6744 6752 6760 6768 6776 6784 6792 6800 6808 6816 - 6824 6832 6840 6848 6856 6864 6872 6880 6888 6896 6904 6912 - 6920 6928 6936 6944 6952 6960 6968 6976 6984 6992 7000 7008 - 7016 7024 7032 7040 7048 7056 7064 7072 7080 7088 7096 7104 - 7112 7120 7128 7136 7144 7152 7160 7168 7176 7184 7192 7200 - 7208 7216 7224 7232 7240 7248 7256 7264 7272 7280 7288 7296 - 7304 7312 7320 7328 7336 7344 7352 7360 7368 7376 7384 7392 - 7400 7408 7416 7424 7432 7440 7448 7456 7464 7472 7480 7488 - 7496 7504 7512 7520 7528 7536 7544 7552 7560 7568 7576 7584 - 7592 7600 7608 7616 7624 7632 7640 7648 7656 7664 7672 7680 - 7688 7696 7704 7712 7720 7728 7736 7744 7752 7760 7768 7776 - 7784 7792 7800 7808 7816 7824 7832 7840 7848 7856 7864 7872 - 7880 7888 7896 7904 7912 7920 7928 7936 7944 7952 7960 7968 - 7976 7984 7992 8000 - - - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 - - - - - diff --git a/test/reference-solutions/monolithic/ff-pm-3d/ref-ff-pm-3d-navier-stokes_stokes.vtu b/test/reference-solutions/monolithic/ff-pm-3d/ref-ff-pm-3d-navier-stokes_stokes.vtu deleted file mode 100644 index 72abc66..0000000 --- a/test/reference-solutions/monolithic/ff-pm-3d/ref-ff-pm-3d-navier-stokes_stokes.vtu +++ /dev/null @@ -1,1699 +0,0 @@ - - - - - - - 9.50181e-05 8.51328e-05 7.51935e-05 6.52321e-05 5.52564e-05 4.52688e-05 3.52689e-05 2.52537e-05 1.52146e-05 5.12607e-06 9.50177e-05 8.5107e-05 - 7.51671e-05 6.52057e-05 5.52295e-05 4.52407e-05 3.52391e-05 2.52213e-05 1.51796e-05 5.1038e-06 9.50174e-05 8.5086e-05 7.51379e-05 6.51713e-05 - 5.51909e-05 4.51997e-05 3.51965e-05 2.51785e-05 1.51414e-05 5.083e-06 9.50171e-05 8.50674e-05 7.51081e-05 6.51357e-05 5.51515e-05 4.51576e-05 - 3.51539e-05 2.51381e-05 1.51088e-05 5.06642e-06 9.50169e-05 8.50521e-05 7.50814e-05 6.51023e-05 5.5115e-05 4.512e-05 3.51167e-05 2.51045e-05 - 1.5083e-05 5.05398e-06 9.50167e-05 8.50402e-05 7.50605e-05 6.50759e-05 5.50855e-05 4.50892e-05 3.50867e-05 2.50778e-05 1.50629e-05 5.04349e-06 - 9.50165e-05 8.50321e-05 7.50458e-05 6.50564e-05 5.50631e-05 4.50656e-05 3.50637e-05 2.50575e-05 1.50475e-05 5.03478e-06 9.50164e-05 8.50268e-05 - 7.50359e-05 6.50429e-05 5.50473e-05 4.50488e-05 3.50474e-05 2.50431e-05 1.50364e-05 5.02829e-06 9.50161e-05 8.50237e-05 7.50301e-05 6.50348e-05 - 5.50377e-05 4.50386e-05 3.50374e-05 2.50342e-05 1.50294e-05 5.02377e-06 9.50155e-05 8.50225e-05 7.50278e-05 6.50315e-05 5.50337e-05 4.50343e-05 - 3.50332e-05 2.50305e-05 1.50261e-05 5.02045e-06 9.50179e-05 8.51743e-05 7.52375e-05 6.52732e-05 5.52945e-05 4.53045e-05 3.53027e-05 2.52844e-05 - 1.5237e-05 5.11862e-06 9.50172e-05 8.51262e-05 7.51963e-05 6.52374e-05 5.52609e-05 4.52709e-05 3.52672e-05 2.5245e-05 1.51924e-05 5.09276e-06 - 9.50171e-05 8.50943e-05 7.51514e-05 6.51895e-05 5.52124e-05 4.52213e-05 3.52161e-05 2.51937e-05 1.51483e-05 5.07823e-06 9.5017e-05 8.50712e-05 - 7.51146e-05 6.5145e-05 5.51638e-05 4.5171e-05 3.51659e-05 2.51471e-05 1.5113e-05 5.06585e-06 9.50168e-05 8.50537e-05 7.50849e-05 6.51079e-05 - 5.51222e-05 4.51274e-05 3.51232e-05 2.51093e-05 1.50855e-05 5.05427e-06 9.50167e-05 8.50411e-05 7.50624e-05 6.50786e-05 5.50887e-05 4.50925e-05 - 3.50896e-05 2.508e-05 1.50643e-05 5.04427e-06 9.50166e-05 8.50322e-05 7.5046e-05 6.50568e-05 5.50636e-05 4.50662e-05 3.50643e-05 2.50581e-05 - 1.50483e-05 5.0363e-06 9.50165e-05 8.50263e-05 7.5035e-05 6.50418e-05 5.50461e-05 4.50477e-05 3.50466e-05 2.50428e-05 1.5037e-05 5.03047e-06 - 9.50163e-05 8.50229e-05 7.50286e-05 6.50329e-05 5.50356e-05 4.50366e-05 3.50358e-05 2.50334e-05 1.50299e-05 5.02655e-06 9.50161e-05 8.50216e-05 - 7.50262e-05 6.50295e-05 5.50316e-05 4.50323e-05 3.50317e-05 2.50297e-05 1.50267e-05 5.02373e-06 9.50179e-05 8.52211e-05 7.52955e-05 6.53314e-05 - 5.535e-05 4.53566e-05 3.53504e-05 2.53252e-05 1.52628e-05 5.10892e-06 9.5017e-05 8.51593e-05 7.52426e-05 6.52868e-05 5.53095e-05 4.5317e-05 - 3.53088e-05 2.52781e-05 1.52083e-05 5.07661e-06 9.5017e-05 8.51133e-05 7.51825e-05 6.52259e-05 5.52493e-05 4.52565e-05 3.5247e-05 2.52164e-05 - 1.51568e-05 5.06612e-06 9.50169e-05 8.50812e-05 7.51325e-05 6.5168e-05 5.51884e-05 4.51945e-05 3.51861e-05 2.51613e-05 1.5118e-05 5.05952e-06 - 9.50168e-05 8.5059e-05 7.50948e-05 6.51209e-05 5.51363e-05 4.51411e-05 3.5135e-05 2.51174e-05 1.50886e-05 5.05161e-06 9.50167e-05 8.50436e-05 - 7.5067e-05 6.50847e-05 5.50956e-05 4.50992e-05 3.50953e-05 2.5084e-05 1.50662e-05 5.04376e-06 9.50167e-05 8.50328e-05 7.50473e-05 6.50585e-05 - 5.50656e-05 4.50682e-05 3.50661e-05 2.50596e-05 1.50495e-05 5.03715e-06 9.50166e-05 8.50258e-05 7.50341e-05 6.50408e-05 5.50451e-05 4.50469e-05 - 3.50461e-05 2.50428e-05 1.50378e-05 5.03215e-06 9.50165e-05 8.50218e-05 7.50267e-05 6.50306e-05 5.50332e-05 4.50345e-05 3.50343e-05 2.50328e-05 - 1.50305e-05 5.02867e-06 9.50164e-05 8.50205e-05 7.50241e-05 6.50269e-05 5.50289e-05 4.50299e-05 3.50299e-05 2.5029e-05 1.50274e-05 5.02603e-06 - 9.50179e-05 8.52555e-05 7.53422e-05 6.53808e-05 5.53981e-05 4.54019e-05 3.53914e-05 2.53591e-05 1.52839e-05 5.10488e-06 9.5017e-05 8.51867e-05 - 7.52822e-05 6.53303e-05 5.53528e-05 4.53579e-05 3.53452e-05 2.53067e-05 1.52224e-05 5.06647e-06 9.50169e-05 8.51321e-05 7.5212e-05 6.52595e-05 - 5.52835e-05 4.52888e-05 3.52751e-05 2.52368e-05 1.51646e-05 5.05674e-06 9.50168e-05 8.50925e-05 7.51516e-05 6.51908e-05 5.5212e-05 4.52169e-05 - 3.52052e-05 2.51744e-05 1.51225e-05 5.05354e-06 9.50168e-05 8.50653e-05 7.51056e-05 6.51343e-05 5.51506e-05 4.51547e-05 3.51464e-05 2.51251e-05 - 1.50913e-05 5.04882e-06 9.50167e-05 8.50465e-05 7.50722e-05 6.50913e-05 5.51027e-05 4.51061e-05 3.51012e-05 2.50881e-05 1.50679e-05 5.04312e-06 - 9.50167e-05 8.50337e-05 7.50489e-05 6.50606e-05 5.5068e-05 4.50705e-05 3.50682e-05 2.50613e-05 1.50506e-05 5.03771e-06 9.50166e-05 8.50255e-05 - 7.50337e-05 6.50403e-05 5.50447e-05 4.50466e-05 3.5046e-05 2.50431e-05 1.50385e-05 5.03332e-06 9.50166e-05 8.5021e-05 7.50252e-05 6.50288e-05 - 5.50314e-05 4.50328e-05 3.50331e-05 2.50324e-05 1.50311e-05 5.03005e-06 9.50165e-05 8.50196e-05 7.50224e-05 6.50248e-05 5.50267e-05 4.5028e-05 - 3.50285e-05 2.50284e-05 1.50279e-05 5.02738e-06 9.5018e-05 8.52729e-05 7.5367e-05 6.54078e-05 5.54248e-05 4.54271e-05 3.54142e-05 2.53778e-05 - 1.52957e-05 5.10441e-06 9.5017e-05 8.52012e-05 7.53037e-05 6.53545e-05 5.53771e-05 4.53808e-05 3.53656e-05 2.53226e-05 1.52307e-05 5.06265e-06 - 9.50169e-05 8.51426e-05 7.52285e-05 6.52786e-05 5.5303e-05 4.53073e-05 3.52911e-05 2.52484e-05 1.51694e-05 5.05266e-06 9.50168e-05 8.50994e-05 - 7.51628e-05 6.52041e-05 5.52258e-05 4.523e-05 3.52162e-05 2.5182e-05 1.51252e-05 5.05069e-06 9.50168e-05 8.50691e-05 7.51122e-05 6.51423e-05 - 5.51591e-05 4.51628e-05 3.51532e-05 2.51297e-05 1.5093e-05 5.0475e-06 9.50167e-05 8.50483e-05 7.50754e-05 6.50954e-05 5.51071e-05 4.51102e-05 - 3.51047e-05 2.50906e-05 1.5069e-05 5.04287e-06 9.50167e-05 8.50343e-05 7.50499e-05 6.5062e-05 5.50695e-05 4.50721e-05 3.50696e-05 2.50624e-05 - 1.50513e-05 5.03804e-06 9.50167e-05 8.50254e-05 7.50335e-05 6.50401e-05 5.50445e-05 4.50465e-05 3.50461e-05 2.50433e-05 1.50389e-05 5.03393e-06 - 9.50167e-05 8.50206e-05 7.50245e-05 6.50279e-05 5.50304e-05 4.5032e-05 3.50325e-05 2.50322e-05 1.50313e-05 5.03073e-06 9.50166e-05 8.50191e-05 - 7.50215e-05 6.50237e-05 5.50256e-05 4.50269e-05 3.50278e-05 2.50281e-05 1.5028e-05 5.02801e-06 9.5018e-05 8.52729e-05 7.5367e-05 6.54078e-05 - 5.54248e-05 4.54271e-05 3.54142e-05 2.53778e-05 1.52957e-05 5.10441e-06 9.5017e-05 8.52012e-05 7.53037e-05 6.53545e-05 5.53771e-05 4.53808e-05 - 3.53656e-05 2.53226e-05 1.52307e-05 5.06265e-06 9.50169e-05 8.51426e-05 7.52285e-05 6.52786e-05 5.5303e-05 4.53073e-05 3.52911e-05 2.52484e-05 - 1.51694e-05 5.05266e-06 9.50168e-05 8.50994e-05 7.51628e-05 6.52041e-05 5.52258e-05 4.523e-05 3.52162e-05 2.5182e-05 1.51252e-05 5.05069e-06 - 9.50168e-05 8.50691e-05 7.51122e-05 6.51423e-05 5.51591e-05 4.51628e-05 3.51532e-05 2.51297e-05 1.5093e-05 5.0475e-06 9.50167e-05 8.50483e-05 - 7.50754e-05 6.50954e-05 5.51071e-05 4.51102e-05 3.51047e-05 2.50906e-05 1.5069e-05 5.04287e-06 9.50167e-05 8.50343e-05 7.50499e-05 6.5062e-05 - 5.50695e-05 4.50721e-05 3.50696e-05 2.50624e-05 1.50513e-05 5.03804e-06 9.50167e-05 8.50254e-05 7.50335e-05 6.50401e-05 5.50445e-05 4.50465e-05 - 3.50461e-05 2.50433e-05 1.50389e-05 5.03393e-06 9.50167e-05 8.50206e-05 7.50245e-05 6.50279e-05 5.50304e-05 4.5032e-05 3.50325e-05 2.50322e-05 - 1.50313e-05 5.03073e-06 9.50166e-05 8.50191e-05 7.50215e-05 6.50237e-05 5.50256e-05 4.50269e-05 3.50278e-05 2.50281e-05 1.5028e-05 5.02801e-06 - 9.50179e-05 8.52555e-05 7.53422e-05 6.53808e-05 5.53981e-05 4.54019e-05 3.53914e-05 2.53591e-05 1.52839e-05 5.10488e-06 9.5017e-05 8.51867e-05 - 7.52822e-05 6.53303e-05 5.53528e-05 4.53579e-05 3.53452e-05 2.53067e-05 1.52224e-05 5.06647e-06 9.50169e-05 8.51321e-05 7.5212e-05 6.52595e-05 - 5.52835e-05 4.52888e-05 3.52751e-05 2.52368e-05 1.51646e-05 5.05674e-06 9.50168e-05 8.50925e-05 7.51516e-05 6.51908e-05 5.5212e-05 4.52169e-05 - 3.52052e-05 2.51744e-05 1.51225e-05 5.05354e-06 9.50168e-05 8.50653e-05 7.51056e-05 6.51343e-05 5.51506e-05 4.51547e-05 3.51464e-05 2.51251e-05 - 1.50913e-05 5.04882e-06 9.50167e-05 8.50465e-05 7.50722e-05 6.50913e-05 5.51027e-05 4.51061e-05 3.51012e-05 2.50881e-05 1.50679e-05 5.04312e-06 - 9.50167e-05 8.50337e-05 7.50489e-05 6.50606e-05 5.5068e-05 4.50705e-05 3.50682e-05 2.50613e-05 1.50506e-05 5.03771e-06 9.50166e-05 8.50255e-05 - 7.50337e-05 6.50403e-05 5.50447e-05 4.50466e-05 3.5046e-05 2.50431e-05 1.50385e-05 5.03332e-06 9.50166e-05 8.5021e-05 7.50252e-05 6.50288e-05 - 5.50314e-05 4.50328e-05 3.50331e-05 2.50324e-05 1.50311e-05 5.03005e-06 9.50165e-05 8.50196e-05 7.50224e-05 6.50248e-05 5.50267e-05 4.5028e-05 - 3.50285e-05 2.50284e-05 1.50279e-05 5.02738e-06 9.50179e-05 8.52211e-05 7.52955e-05 6.53314e-05 5.535e-05 4.53566e-05 3.53504e-05 2.53252e-05 - 1.52628e-05 5.10892e-06 9.5017e-05 8.51593e-05 7.52426e-05 6.52868e-05 5.53095e-05 4.5317e-05 3.53088e-05 2.52781e-05 1.52083e-05 5.07661e-06 - 9.5017e-05 8.51133e-05 7.51825e-05 6.52259e-05 5.52493e-05 4.52565e-05 3.5247e-05 2.52164e-05 1.51568e-05 5.06612e-06 9.50169e-05 8.50812e-05 - 7.51325e-05 6.5168e-05 5.51884e-05 4.51945e-05 3.51861e-05 2.51613e-05 1.5118e-05 5.05952e-06 9.50168e-05 8.5059e-05 7.50948e-05 6.51209e-05 - 5.51363e-05 4.51411e-05 3.5135e-05 2.51174e-05 1.50886e-05 5.05161e-06 9.50167e-05 8.50436e-05 7.5067e-05 6.50847e-05 5.50956e-05 4.50992e-05 - 3.50953e-05 2.5084e-05 1.50662e-05 5.04376e-06 9.50167e-05 8.50328e-05 7.50473e-05 6.50585e-05 5.50656e-05 4.50682e-05 3.50661e-05 2.50596e-05 - 1.50495e-05 5.03715e-06 9.50166e-05 8.50258e-05 7.50341e-05 6.50408e-05 5.50451e-05 4.50469e-05 3.50461e-05 2.50428e-05 1.50378e-05 5.03215e-06 - 9.50165e-05 8.50218e-05 7.50267e-05 6.50306e-05 5.50332e-05 4.50345e-05 3.50343e-05 2.50328e-05 1.50305e-05 5.02867e-06 9.50164e-05 8.50205e-05 - 7.50241e-05 6.50269e-05 5.50289e-05 4.50299e-05 3.50299e-05 2.5029e-05 1.50274e-05 5.02603e-06 9.50179e-05 8.51743e-05 7.52375e-05 6.52732e-05 - 5.52945e-05 4.53045e-05 3.53027e-05 2.52844e-05 1.5237e-05 5.11862e-06 9.50172e-05 8.51262e-05 7.51963e-05 6.52374e-05 5.52609e-05 4.52709e-05 - 3.52672e-05 2.5245e-05 1.51924e-05 5.09276e-06 9.50171e-05 8.50943e-05 7.51514e-05 6.51895e-05 5.52124e-05 4.52213e-05 3.52161e-05 2.51937e-05 - 1.51483e-05 5.07823e-06 9.5017e-05 8.50712e-05 7.51146e-05 6.5145e-05 5.51638e-05 4.5171e-05 3.51659e-05 2.51471e-05 1.5113e-05 5.06585e-06 - 9.50168e-05 8.50537e-05 7.50849e-05 6.51079e-05 5.51222e-05 4.51274e-05 3.51232e-05 2.51093e-05 1.50855e-05 5.05427e-06 9.50167e-05 8.50411e-05 - 7.50624e-05 6.50786e-05 5.50887e-05 4.50925e-05 3.50896e-05 2.508e-05 1.50643e-05 5.04427e-06 9.50166e-05 8.50322e-05 7.5046e-05 6.50568e-05 - 5.50636e-05 4.50662e-05 3.50643e-05 2.50581e-05 1.50483e-05 5.0363e-06 9.50165e-05 8.50263e-05 7.5035e-05 6.50418e-05 5.50461e-05 4.50477e-05 - 3.50466e-05 2.50428e-05 1.5037e-05 5.03047e-06 9.50163e-05 8.50229e-05 7.50286e-05 6.50329e-05 5.50356e-05 4.50366e-05 3.50358e-05 2.50334e-05 - 1.50299e-05 5.02655e-06 9.50161e-05 8.50216e-05 7.50262e-05 6.50295e-05 5.50316e-05 4.50323e-05 3.50317e-05 2.50297e-05 1.50267e-05 5.02373e-06 - 9.50181e-05 8.51328e-05 7.51935e-05 6.52321e-05 5.52564e-05 4.52688e-05 3.52689e-05 2.52537e-05 1.52146e-05 5.12607e-06 9.50177e-05 8.5107e-05 - 7.51671e-05 6.52057e-05 5.52295e-05 4.52407e-05 3.52391e-05 2.52213e-05 1.51796e-05 5.1038e-06 9.50174e-05 8.5086e-05 7.51379e-05 6.51713e-05 - 5.51909e-05 4.51997e-05 3.51965e-05 2.51785e-05 1.51414e-05 5.083e-06 9.50171e-05 8.50674e-05 7.51081e-05 6.51357e-05 5.51515e-05 4.51576e-05 - 3.51539e-05 2.51381e-05 1.51088e-05 5.06642e-06 9.50169e-05 8.50521e-05 7.50814e-05 6.51023e-05 5.5115e-05 4.512e-05 3.51167e-05 2.51045e-05 - 1.5083e-05 5.05398e-06 9.50167e-05 8.50402e-05 7.50605e-05 6.50759e-05 5.50855e-05 4.50892e-05 3.50867e-05 2.50778e-05 1.50629e-05 5.04349e-06 - 9.50165e-05 8.50321e-05 7.50458e-05 6.50564e-05 5.50631e-05 4.50656e-05 3.50637e-05 2.50575e-05 1.50475e-05 5.03478e-06 9.50164e-05 8.50268e-05 - 7.50359e-05 6.50429e-05 5.50473e-05 4.50488e-05 3.50474e-05 2.50431e-05 1.50364e-05 5.02829e-06 9.50161e-05 8.50237e-05 7.50301e-05 6.50348e-05 - 5.50377e-05 4.50386e-05 3.50374e-05 2.50342e-05 1.50294e-05 5.02377e-06 9.50155e-05 8.50225e-05 7.50278e-05 6.50315e-05 5.50337e-05 4.50343e-05 - 3.50332e-05 2.50305e-05 1.50261e-05 5.02045e-06 - - - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 - - - 0.000532833 -9.46304e-08 -2.30441e-09 0.000532735 -4.29251e-08 -2.64575e-08 0.000532711 -8.60961e-09 -5.09654e-08 0.000532734 1.92679e-08 -7.27728e-08 - 0.000532793 4.47471e-08 -9.19095e-08 0.00053288 6.98119e-08 -1.08897e-07 0.000532989 9.60652e-08 -1.24037e-07 0.000533118 1.2566e-07 -1.36759e-07 - 0.000533265 1.62296e-07 -1.43853e-07 0.000533438 2.09143e-07 -1.3348e-07 0.00107585 -3.36059e-09 7.52037e-09 0.00107582 2.01877e-08 1.87715e-09 - 0.0010758 4.68246e-08 -6.57345e-09 0.00107582 7.48227e-08 -1.57194e-08 0.00107585 1.04079e-07 -2.47717e-08 0.0010759 1.34182e-07 -3.3449e-08 - 0.00107596 1.65156e-07 -4.15052e-08 0.00107604 1.96947e-07 -4.82689e-08 0.00107614 2.27559e-07 -5.18885e-08 0.00107624 2.43149e-07 -4.88303e-08 - 0.00139459 1.88296e-08 7.73882e-09 0.00139457 3.30697e-08 5.92342e-09 0.00139456 5.40458e-08 2.98165e-09 0.00139455 7.86112e-08 -9.57727e-10 - 0.00139456 1.05647e-07 -5.5958e-09 0.00139459 1.34024e-07 -1.0214e-08 0.00139463 1.62665e-07 -1.44004e-08 0.00139468 1.90077e-07 -1.76383e-08 - 0.00139474 2.12589e-07 -1.91235e-08 0.0013948 2.22489e-07 -1.81463e-08 0.00157927 2.41179e-08 4.70976e-09 0.00157926 3.4755e-08 3.99314e-09 - 0.00157926 5.23558e-08 2.77092e-09 0.00157926 7.36103e-08 1.03454e-09 0.00157927 9.6695e-08 -1.2654e-09 0.00157929 1.20672e-07 -3.75159e-09 - 0.00157932 1.44298e-07 -5.98358e-09 0.00157936 1.65723e-07 -7.64134e-09 0.0015794 1.81838e-07 -8.43325e-09 0.00157945 1.88365e-07 -8.33384e-09 - 0.00166548 2.40209e-08 1.15693e-09 0.00166548 3.20566e-08 8.66223e-10 0.00166548 4.60489e-08 2.50332e-10 0.00166549 6.35126e-08 -7.36366e-10 - 0.00166551 8.25401e-08 -1.98055e-09 0.00166553 1.02016e-07 -3.26761e-09 0.00166556 1.2082e-07 -4.40286e-09 0.0016656 1.37286e-07 -5.23212e-09 - 0.00166564 1.4915e-07 -5.65358e-09 0.00166569 1.5398e-07 -5.69657e-09 0.00166651 2.25785e-08 -2.14024e-09 0.00166651 2.84212e-08 -2.28929e-09 - 0.00166652 3.88316e-08 -2.59986e-09 0.00166654 5.2187e-08 -3.06059e-09 0.00166656 6.71493e-08 -3.61403e-09 0.00166658 8.26154e-08 -4.17581e-09 - 0.00166661 9.74242e-08 -4.66741e-09 0.00166664 1.10193e-07 -5.03243e-09 0.00166668 1.19354e-07 -5.2526e-09 0.00166672 1.23514e-07 -5.37465e-09 - 0.00158164 2.14499e-08 -5.04806e-09 0.00158165 2.55326e-08 -5.04343e-09 0.00158166 3.3088e-08 -5.06778e-09 0.00158168 4.31468e-08 -5.12885e-09 - 0.0015817 5.46908e-08 -5.21592e-09 0.00158172 6.67252e-08 -5.31072e-09 0.00158175 7.82232e-08 -5.40095e-09 0.00158178 8.80929e-08 -5.4921e-09 - 0.00158181 9.52351e-08 -5.62236e-09 0.00158184 9.8721e-08 -5.88578e-09 0.00139652 2.13595e-08 -7.84035e-09 0.00139653 2.41622e-08 -7.69238e-09 - 0.00139655 2.95199e-08 -7.46827e-09 0.00139657 3.68511e-08 -7.20826e-09 0.00139659 4.54082e-08 -6.9398e-09 0.00139661 5.43826e-08 -6.68837e-09 - 0.00139664 6.29465e-08 -6.48718e-09 0.00139667 7.02887e-08 -6.38839e-09 0.0013967 7.56677e-08 -6.48042e-09 0.00139673 7.84282e-08 -6.91534e-09 - 0.00107463 2.10712e-08 -1.02369e-08 0.00107466 2.26124e-08 -9.911e-09 0.00107468 2.58569e-08 -9.40091e-09 0.0010747 3.05087e-08 -8.79194e-09 - 0.00107473 3.60523e-08 -8.15058e-09 0.00107476 4.18901e-08 -7.54191e-09 0.00107479 4.74264e-08 -7.04183e-09 0.00107482 5.21486e-08 -6.7532e-09 - 0.00107485 5.57409e-08 -6.8363e-09 0.00107489 5.82279e-08 -7.56224e-09 0.000524825 1.02795e-08 -9.16401e-09 0.000524864 1.07065e-08 -8.31048e-09 - 0.000524902 1.17727e-08 -7.05668e-09 0.00052494 1.33955e-08 -5.6342e-09 0.000524978 1.53723e-08 -4.20636e-09 0.000525018 1.74597e-08 -2.92199e-09 - 0.00052506 1.94217e-08 -1.9447e-09 0.000525104 2.1081e-08 -1.49007e-09 0.000525151 2.24052e-08 -1.90559e-09 0.000525203 2.36762e-08 -3.82653e-09 - 0.00109459 -9.44463e-08 -6.70504e-09 0.00109446 -4.50269e-08 -4.89539e-08 0.00109436 -1.45486e-08 -9.54478e-08 0.00109426 8.50006e-09 -1.38857e-07 - 0.00109417 2.86763e-08 -1.78062e-07 0.00109408 4.82544e-08 -2.13331e-07 0.001094 6.89853e-08 -2.44674e-07 0.00109392 9.31504e-08 -2.70478e-07 - 0.00109385 1.2486e-07 -2.84533e-07 0.00109382 1.69674e-07 -2.67296e-07 0.00245562 -1.16175e-09 9.48408e-09 0.0024556 1.76992e-08 -1.90186e-09 - 0.00245559 3.69193e-08 -1.84023e-08 0.00245558 5.51894e-08 -3.6164e-08 0.00245558 7.29808e-08 -5.37143e-08 0.00245558 9.10194e-08 -7.04544e-08 - 0.00245558 1.09871e-07 -8.58113e-08 0.00245558 1.29926e-07 -9.84286e-08 0.00245558 1.50171e-07 -1.04932e-07 0.0024556 1.60204e-07 -9.92374e-08 - 0.00332188 2.76372e-08 1.26539e-08 0.00332187 3.63892e-08 8.41643e-09 0.00332187 4.93176e-08 1.53628e-09 0.00332187 6.38629e-08 -7.0034e-09 - 0.00332188 7.91129e-08 -1.63075e-08 0.00332189 9.48329e-08 -2.53815e-08 0.0033219 1.10824e-07 -3.34854e-08 0.00332192 1.26367e-07 -3.96071e-08 - 0.00332194 1.39088e-07 -4.21828e-08 0.00332196 1.4354e-07 -3.97079e-08 0.00384017 4.05837e-08 8.53129e-09 0.00384017 4.59954e-08 6.71719e-09 - 0.00384017 5.48925e-08 3.54127e-09 0.00384017 6.58183e-08 -6.98767e-10 0.00384018 7.79184e-08 -5.66889e-09 0.0038402 9.05236e-08 -1.07096e-08 - 0.00384021 1.03019e-07 -1.51408e-08 0.00384023 1.14419e-07 -1.83402e-08 0.00384025 1.22962e-07 -1.96793e-08 0.00384027 1.26298e-07 -1.89025e-08 - 0.00408521 4.47009e-08 2.07423e-09 0.00408521 4.84269e-08 1.2402e-09 0.00408521 5.49208e-08 -3.87692e-10 0.00408522 6.3205e-08 -2.69394e-09 - 0.00408523 7.25868e-08 -5.38095e-09 0.00408524 8.24193e-08 -8.06789e-09 0.00408525 9.1997e-08 -1.03974e-08 0.00408527 1.00445e-07 -1.20527e-08 - 0.00408528 1.06618e-07 -1.27898e-08 0.0040853 1.09408e-07 -1.25656e-08 0.00408769 4.4521e-08 -4.65349e-09 0.00408769 4.71633e-08 -5.05475e-09 - 0.0040877 5.19634e-08 -5.8349e-09 0.0040877 5.83068e-08 -6.91834e-09 0.00408771 6.5585e-08 -8.16516e-09 0.00408772 7.32103e-08 -9.40533e-09 - 0.00408773 8.05727e-08 -1.04785e-08 0.00408775 8.69776e-08 -1.12565e-08 0.00408776 9.16588e-08 -1.16691e-08 0.00408778 9.3962e-08 -1.17387e-08 - 0.00384595 4.22824e-08 -1.09674e-08 0.00384595 4.42021e-08 -1.10255e-08 0.00384596 4.77827e-08 -1.11765e-08 0.00384596 5.2611e-08 -1.14159e-08 - 0.00384597 5.82187e-08 -1.17109e-08 0.00384598 6.41202e-08 -1.20174e-08 0.003846 6.98076e-08 -1.23013e-08 0.00384601 7.47426e-08 -1.25544e-08 - 0.00384602 7.83814e-08 -1.28118e-08 0.00384604 8.02483e-08 -1.31632e-08 0.00332609 3.84996e-08 -1.68611e-08 0.0033261 3.98751e-08 -1.66366e-08 - 0.00332611 4.24968e-08 -1.62919e-08 0.00332612 4.60991e-08 -1.58936e-08 0.00332613 5.03346e-08 -1.54892e-08 0.00332614 5.48175e-08 -1.51226e-08 - 0.00332616 5.9145e-08 -1.48482e-08 0.00332617 6.29141e-08 -1.47456e-08 0.00332619 6.57403e-08 -1.4933e-08 0.0033262 6.72487e-08 -1.55684e-08 - 0.00245142 3.13537e-08 -2.10057e-08 0.00245143 3.21991e-08 -2.04658e-08 0.00245144 3.39028e-08 -1.95985e-08 0.00245146 3.63184e-08 -1.85555e-08 - 0.00245147 3.92055e-08 -1.74628e-08 0.00245149 4.22806e-08 -1.64431e-08 0.00245151 4.52539e-08 -1.56327e-08 0.00245153 4.78645e-08 -1.52003e-08 - 0.00245155 4.9922e-08 -1.53702e-08 0.00245157 5.13328e-08 -1.64302e-08 0.00107504 1.32677e-08 -1.68996e-08 0.00107506 1.35471e-08 -1.54752e-08 - 0.00107509 1.4157e-08 -1.32901e-08 0.00107511 1.50526e-08 -1.07606e-08 0.00107515 1.61396e-08 -8.20917e-09 0.00107518 1.73031e-08 -5.93173e-09 - 0.00107521 1.84281e-08 -4.23955e-09 0.00107525 1.94227e-08 -3.50239e-09 0.00107529 2.02511e-08 -4.21452e-09 0.00107534 2.0985e-08 -7.04547e-09 - 0.00142478 -9.18327e-08 -8.20232e-09 0.00142464 -4.32015e-08 -3.73643e-08 0.00142452 -1.32424e-08 -7.42014e-08 0.00142439 9.08651e-09 -1.11234e-07 - 0.00142427 2.82841e-08 -1.46074e-07 0.00142413 4.66896e-08 -1.77948e-07 0.001424 6.61415e-08 -2.0612e-07 0.00142386 8.90208e-08 -2.28681e-07 - 0.00142372 1.19595e-07 -2.4078e-07 0.00142363 1.63999e-07 -2.30877e-07 0.0033357 4.04418e-09 1.44627e-09 0.00333567 2.26285e-08 -8.11681e-09 - 0.00333564 4.11265e-08 -2.16953e-08 0.00333562 5.80186e-08 -3.63968e-08 0.00333559 7.39628e-08 -5.09658e-08 0.00333557 8.97733e-08 -6.47803e-08 - 0.00333553 1.06183e-07 -7.72265e-08 0.0033355 1.23732e-07 -8.71353e-08 0.00333547 1.41552e-07 -9.20722e-08 0.00333545 1.49673e-07 -8.81267e-08 - 0.00460517 3.35613e-08 7.01402e-09 0.00460515 4.25483e-08 2.70833e-09 0.00460515 5.51023e-08 -4.18191e-09 0.00460514 6.85558e-08 -1.21483e-08 - 0.00460513 8.22281e-08 -2.02398e-08 0.00460513 9.60398e-08 -2.79407e-08 0.00460512 1.09903e-07 -3.4678e-08 0.00460512 1.23185e-07 -3.96123e-08 - 0.00460512 1.33539e-07 -4.14963e-08 0.00460513 1.35542e-07 -3.9078e-08 0.0053818 4.82057e-08 5.89401e-09 0.0053818 5.34043e-08 3.8264e-09 - 0.00538179 6.17885e-08 2.43149e-10 0.00538179 7.18078e-08 -4.21109e-09 0.0053818 8.25767e-08 -8.90291e-09 0.0053818 9.35717e-08 -1.33732e-08 - 0.0053818 1.04261e-07 -1.72002e-08 0.00538181 1.13722e-07 -1.98651e-08 0.00538182 1.20254e-07 -2.07956e-08 0.00538183 1.21637e-07 -1.96139e-08 - 0.00575251 5.41557e-08 1.23465e-09 0.0057525 5.74776e-08 1.8963e-10 0.00575251 6.3268e-08 -1.68706e-09 0.00575251 7.06355e-08 -4.07454e-09 - 0.00575251 7.88451e-08 -6.65402e-09 0.00575252 8.72815e-08 -9.13796e-09 0.00575252 9.532e-08 -1.12445e-08 0.00575253 1.02156e-07 -1.26901e-08 - 0.00575254 1.06749e-07 -1.32264e-08 0.00575255 1.08147e-07 -1.2739e-08 0.00575561 5.45555e-08 -4.71117e-09 0.00575561 5.68495e-08 -5.19407e-09 - 0.00575561 6.10244e-08 -6.07518e-09 0.00575562 6.65121e-08 -7.22333e-09 0.00575562 7.27379e-08 -8.48753e-09 0.00575563 7.91606e-08 -9.71589e-09 - 0.00575564 8.52242e-08 -1.07634e-08 0.00575565 9.03069e-08 -1.15007e-08 0.00575566 9.37464e-08 -1.18335e-08 0.00575567 9.50218e-08 -1.17298e-08 - 0.00538878 5.09884e-08 -1.08017e-08 0.00538878 5.2646e-08 -1.09364e-08 0.00538879 5.57175e-08 -1.11978e-08 0.00538879 5.98276e-08 -1.15554e-08 - 0.0053888 6.455e-08 -1.19649e-08 0.00538881 6.94452e-08 -1.23778e-08 0.00538882 7.40597e-08 -1.27513e-08 0.00538883 7.79242e-08 -1.30552e-08 - 0.00538884 8.05826e-08 -1.32763e-08 0.00538885 8.16716e-08 -1.3409e-08 0.00460933 4.38557e-08 -1.6206e-08 0.00460933 4.50436e-08 -1.60955e-08 - 0.00460934 4.72802e-08 -1.5922e-08 0.00460935 5.03183e-08 -1.57251e-08 0.00460936 5.38466e-08 -1.55356e-08 0.00460937 5.75249e-08 -1.53815e-08 - 0.00460938 6.10036e-08 -1.52944e-08 0.00460939 6.39384e-08 -1.53128e-08 0.0046094 6.6011e-08 -1.54751e-08 0.00460941 6.69382e-08 -1.5786e-08 - 0.0033281 3.23929e-08 -1.87649e-08 0.0033281 3.31353e-08 -1.84234e-08 0.00332811 3.45906e-08 -1.7849e-08 0.00332812 3.66151e-08 -1.71495e-08 - 0.00332814 3.89979e-08 -1.64244e-08 0.00332815 4.14988e-08 -1.57699e-08 0.00332817 4.3876e-08 -1.52839e-08 0.00332818 4.59127e-08 -1.5067e-08 - 0.0033282 4.74488e-08 -1.52074e-08 0.00332822 4.84054e-08 -1.57166e-08 0.00139789 1.27022e-08 -1.27276e-08 0.00139791 1.29548e-08 -1.18049e-08 - 0.00139793 1.34785e-08 -1.02787e-08 0.00139796 1.42263e-08 -8.4521e-09 0.00139798 1.51173e-08 -6.59612e-09 0.00139801 1.60574e-08 -4.96338e-09 - 0.00139804 1.69541e-08 -3.80011e-09 0.00139808 1.77333e-08 -3.34671e-09 0.00139811 1.83629e-08 -3.80291e-09 0.00139814 1.88894e-08 -5.17202e-09 - 0.00161554 -8.96263e-08 -5.85431e-09 0.0016154 -4.15881e-08 -2.20733e-08 0.00161527 -1.18006e-08 -4.42048e-08 0.00161514 1.03818e-08 -6.74324e-08 - 0.00161501 2.93699e-08 -8.97908e-08 0.00161486 4.75059e-08 -1.1041e-07 0.00161471 6.66587e-08 -1.28549e-07 0.00161455 8.9254e-08 -1.42895e-07 - 0.0016144 1.19651e-07 -1.50766e-07 0.00161429 1.6439e-07 -1.46802e-07 0.00386101 8.422e-09 -1.25606e-09 0.00386097 2.67105e-08 -6.90369e-09 - 0.00386094 4.50958e-08 -1.51544e-08 0.00386091 6.18212e-08 -2.4295e-08 0.00386088 7.7454e-08 -3.34422e-08 0.00386084 9.28236e-08 -4.21124e-08 - 0.0038608 1.08719e-07 -4.98583e-08 0.00386075 1.2574e-07 -5.59573e-08 0.00386071 1.43097e-07 -5.90934e-08 0.00386068 1.5114e-07 -5.73526e-08 - 0.00538898 3.77067e-08 2.72438e-09 0.00538897 4.69635e-08 -1.05246e-10 0.00538896 5.96832e-08 -4.54104e-09 0.00538895 7.31735e-08 -9.62303e-09 - 0.00538894 8.67397e-08 -1.4804e-08 0.00538892 1.00311e-07 -1.9711e-08 0.00538891 1.13829e-07 -2.39705e-08 0.0053889 1.26677e-07 -2.70698e-08 - 0.00538889 1.36486e-07 -2.82994e-08 0.00538889 1.37808e-07 -2.70213e-08 0.00633732 5.21144e-08 2.87184e-09 0.00633731 5.75557e-08 1.37913e-09 - 0.00633731 6.61956e-08 -1.10544e-09 0.00633731 7.63467e-08 -4.06907e-09 0.00633731 8.71087e-08 -7.14312e-09 0.0063373 9.79674e-08 -1.00542e-08 - 0.0063373 1.08396e-07 -1.25251e-08 0.00633731 1.17456e-07 -1.42312e-08 0.00633731 1.23413e-07 -1.48257e-08 0.00633732 1.24044e-07 -1.4107e-08 - 0.00679303 5.82931e-08 3.27678e-10 0.00679303 6.17444e-08 -4.48123e-10 0.00679303 6.76964e-08 -1.77673e-09 0.00679303 7.51581e-08 -3.4146e-09 - 0.00679303 8.33512e-08 -5.15471e-09 0.00679304 9.16611e-08 -6.81161e-09 0.00679304 9.94582e-08 -8.20427e-09 0.00679305 1.05925e-07 -9.14987e-09 - 0.00679305 1.10012e-07 -9.49145e-09 0.00679306 1.10788e-07 -9.17823e-09 0.00679637 5.85284e-08 -3.477e-09 0.00679637 6.08779e-08 -3.83666e-09 - 0.00679637 6.51053e-08 -4.47557e-09 0.00679637 7.05955e-08 -5.28863e-09 0.00679637 7.67549e-08 -6.16964e-09 0.00679638 8.3031e-08 -7.0169e-09 - 0.00679639 8.88594e-08 -7.73368e-09 0.00679639 9.36147e-08 -8.23215e-09 0.0067964 9.66455e-08 -8.44939e-09 0.00679641 9.74727e-08 -8.38031e-09 - 0.00634466 5.38343e-08 -7.58754e-09 0.00634466 5.54994e-08 -7.70329e-09 0.00634466 5.85607e-08 -7.91836e-09 0.00634467 6.2622e-08 -8.20292e-09 - 0.00634468 6.72441e-08 -8.5216e-09 0.00634468 7.19794e-08 -8.8386e-09 0.00634469 7.63713e-08 -9.12109e-09 0.0063447 7.99551e-08 -9.34246e-09 - 0.00634471 8.22946e-08 -9.48704e-09 0.00634472 8.30743e-08 -9.55648e-09 0.00539275 4.4716e-08 -1.10619e-08 0.00539275 4.5894e-08 -1.10159e-08 - 0.00539276 4.80952e-08 -1.0945e-08 0.00539276 5.1061e-08 -1.08676e-08 0.00539277 5.44743e-08 -1.07984e-08 0.00539278 5.7994e-08 -1.07512e-08 - 0.00539279 6.12737e-08 -1.07399e-08 0.0053928 6.39785e-08 -1.07791e-08 0.00539281 6.58102e-08 -1.08802e-08 0.00539282 6.6529e-08 -1.10429e-08 - 0.00385114 3.14218e-08 -1.21319e-08 0.00385114 3.21524e-08 -1.19455e-08 0.00385115 3.35683e-08 -1.16274e-08 0.00385116 3.55186e-08 -1.12382e-08 - 0.00385117 3.7793e-08 -1.08372e-08 0.00385119 4.0157e-08 -1.04818e-08 0.0038512 4.23773e-08 -1.02271e-08 0.00385122 4.42476e-08 -1.01223e-08 - 0.00385123 4.56201e-08 -1.02e-08 0.00385125 4.64367e-08 -1.04531e-08 0.0015844 1.18747e-08 -7.38621e-09 0.00158442 1.21229e-08 -6.86734e-09 - 0.00158444 1.26284e-08 -5.98622e-09 0.00158446 1.33415e-08 -4.9171e-09 0.00158449 1.41832e-08 -3.82854e-09 0.00158452 1.50636e-08 -2.87895e-09 - 0.00158454 1.58955e-08 -2.21477e-09 0.00158458 1.66099e-08 -1.96e-09 0.00158461 1.71779e-08 -2.18529e-09 0.00158464 1.76462e-08 -2.84283e-09 - 0.00170385 -8.84789e-08 -2.05262e-09 0.0017037 -4.07456e-08 -7.20544e-09 0.00170358 -1.10361e-08 -1.44858e-08 0.00170345 1.11089e-08 -2.22823e-08 - 0.00170331 3.00493e-08 -2.98698e-08 0.00170317 4.81204e-08 -3.68946e-08 0.00170301 6.71992e-08 -4.3066e-08 0.00170285 8.97277e-08 -4.79325e-08 - 0.00170269 1.20107e-07 -5.06673e-08 0.00170258 1.65077e-07 -4.9741e-08 0.00410728 1.07235e-08 -7.3861e-10 0.00410724 2.88323e-08 -2.5659e-09 - 0.00410721 4.72002e-08 -5.28795e-09 0.00410718 6.39253e-08 -8.34284e-09 0.00410714 7.95194e-08 -1.1419e-08 0.0041071 9.48073e-08 -1.43376e-08 - 0.00410705 1.10594e-07 -1.6938e-08 0.00410701 1.275e-07 -1.89818e-08 0.00410696 1.4478e-07 -2.00648e-08 0.00410693 1.52949e-07 -1.9633e-08 - 0.0057605 3.9822e-08 6.25433e-10 0.00576048 4.91841e-08 -3.20572e-10 0.00576047 6.20252e-08 -1.80449e-09 0.00576046 7.56271e-08 -3.52043e-09 - 0.00576044 8.92595e-08 -5.27594e-09 0.00576043 1.02846e-07 -6.93779e-09 0.00576041 1.16334e-07 -8.37749e-09 0.0057604 1.2911e-07 -9.42643e-09 - 0.00576039 1.38804e-07 -9.86242e-09 0.00576039 1.39966e-07 -9.50497e-09 0.00679374 5.38332e-08 7.99356e-10 0.00679374 5.94179e-08 2.76769e-10 - 0.00679373 6.82369e-08 -5.78233e-10 0.00679373 7.8547e-08 -1.59128e-09 0.00679372 8.94232e-08 -2.64371e-09 0.00679372 1.00342e-07 -3.63903e-09 - 0.00679372 1.10772e-07 -4.48215e-09 0.00679372 1.1976e-07 -5.06495e-09 0.00679372 1.25555e-07 -5.27618e-09 0.00679373 1.25936e-07 -5.0618e-09 - 0.00729196 5.9819e-08 1.03248e-11 0.00729196 6.33884e-08 -2.63782e-10 0.00729196 6.94962e-08 -7.27697e-10 0.00729196 7.7096e-08 -1.29764e-09 - 0.00729196 8.53907e-08 -1.90109e-09 0.00729196 9.3754e-08 -2.47393e-09 0.00729197 1.01545e-07 -2.95428e-09 0.00729197 1.07933e-07 -3.28039e-09 - 0.00729198 1.11857e-07 -3.40129e-09 0.00729199 1.12398e-07 -3.30829e-09 0.0072954 5.97721e-08 -1.27908e-09 0.0072954 6.21896e-08 -1.40805e-09 - 0.0072954 6.65092e-08 -1.63543e-09 0.0072954 7.20865e-08 -1.92305e-09 0.00729541 7.83092e-08 -2.23324e-09 0.00729541 8.46116e-08 -2.53053e-09 - 0.00729542 9.04179e-08 -2.7814e-09 0.00729542 9.5094e-08 -2.95558e-09 0.00729543 9.79885e-08 -3.03233e-09 0.00729544 9.86439e-08 -3.01463e-09 - 0.00680123 5.44623e-08 -2.70523e-09 0.00680124 5.61602e-08 -2.74893e-09 0.00680124 5.92686e-08 -2.82928e-09 0.00680124 6.33737e-08 -2.93457e-09 - 0.00680125 6.80227e-08 -3.05167e-09 0.00680126 7.27576e-08 -3.16754e-09 0.00680126 7.71143e-08 -3.27019e-09 0.00680127 8.06247e-08 -3.34965e-09 - 0.00680128 8.28581e-08 -3.40023e-09 0.00680129 8.35227e-08 -3.42494e-09 0.00576409 4.44987e-08 -3.87656e-09 0.0057641 4.56907e-08 -3.8646e-09 - 0.0057641 4.79105e-08 -3.84666e-09 0.00576411 5.08894e-08 -3.82779e-09 0.00576411 5.43025e-08 -3.81226e-09 0.00576412 5.78028e-08 -3.80389e-09 - 0.00576413 6.10406e-08 -3.80647e-09 0.00576414 6.36816e-08 -3.82356e-09 0.00576415 6.54347e-08 -3.85772e-09 0.00576416 6.60807e-08 -3.90998e-09 - 0.00409637 3.06354e-08 -4.13577e-09 0.00409638 3.13703e-08 -4.07698e-09 0.00409638 3.27882e-08 -3.97604e-09 0.00409639 3.4733e-08 -3.85225e-09 - 0.0040964 3.69915e-08 -3.72505e-09 0.00409642 3.93277e-08 -3.61315e-09 0.00409643 4.1509e-08 -3.53404e-09 0.00409645 4.33314e-08 -3.50237e-09 - 0.00409646 4.46524e-08 -3.52653e-09 0.00409648 4.54253e-08 -3.60442e-09 0.00167077 1.14183e-08 -2.39421e-09 0.00167079 1.16672e-08 -2.22722e-09 - 0.00167081 1.21711e-08 -1.94088e-09 0.00167083 1.28784e-08 -1.59146e-09 0.00167085 1.37098e-08 -1.23524e-09 0.00167088 1.45758e-08 -9.25319e-10 - 0.00167091 1.53904e-08 -7.0952e-10 0.00167094 1.60859e-08 -6.25616e-10 0.00167097 1.66352e-08 -6.91303e-10 0.001671 1.70868e-08 -8.89753e-10 - 0.00170385 -8.84789e-08 2.05262e-09 0.0017037 -4.07456e-08 7.20544e-09 0.00170358 -1.10361e-08 1.44858e-08 0.00170345 1.11089e-08 2.22823e-08 - 0.00170331 3.00493e-08 2.98698e-08 0.00170317 4.81204e-08 3.68946e-08 0.00170301 6.71992e-08 4.3066e-08 0.00170285 8.97277e-08 4.79325e-08 - 0.00170269 1.20107e-07 5.06673e-08 0.00170258 1.65077e-07 4.9741e-08 0.00410728 1.07235e-08 7.3861e-10 0.00410724 2.88323e-08 2.5659e-09 - 0.00410721 4.72002e-08 5.28795e-09 0.00410718 6.39253e-08 8.34284e-09 0.00410714 7.95194e-08 1.1419e-08 0.0041071 9.48073e-08 1.43376e-08 - 0.00410705 1.10594e-07 1.6938e-08 0.00410701 1.275e-07 1.89818e-08 0.00410696 1.4478e-07 2.00648e-08 0.00410693 1.52949e-07 1.9633e-08 - 0.0057605 3.9822e-08 -6.25432e-10 0.00576048 4.91841e-08 3.20573e-10 0.00576047 6.20252e-08 1.8045e-09 0.00576046 7.56271e-08 3.52043e-09 - 0.00576044 8.92595e-08 5.27594e-09 0.00576043 1.02846e-07 6.93779e-09 0.00576041 1.16334e-07 8.37749e-09 0.0057604 1.2911e-07 9.42643e-09 - 0.00576039 1.38804e-07 9.86242e-09 0.00576039 1.39966e-07 9.50497e-09 0.00679374 5.38332e-08 -7.99355e-10 0.00679374 5.94179e-08 -2.76768e-10 - 0.00679373 6.82369e-08 5.78235e-10 0.00679373 7.8547e-08 1.59128e-09 0.00679372 8.94232e-08 2.64371e-09 0.00679372 1.00342e-07 3.63903e-09 - 0.00679372 1.10772e-07 4.48216e-09 0.00679372 1.1976e-07 5.06496e-09 0.00679372 1.25555e-07 5.27618e-09 0.00679373 1.25936e-07 5.0618e-09 - 0.00729196 5.9819e-08 -1.0323e-11 0.00729196 6.33884e-08 2.63784e-10 0.00729196 6.94962e-08 7.277e-10 0.00729196 7.7096e-08 1.29765e-09 - 0.00729196 8.53907e-08 1.9011e-09 0.00729196 9.3754e-08 2.47394e-09 0.00729197 1.01545e-07 2.95428e-09 0.00729197 1.07933e-07 3.28039e-09 - 0.00729198 1.11857e-07 3.40129e-09 0.00729199 1.12398e-07 3.30829e-09 0.0072954 5.97721e-08 1.27908e-09 0.0072954 6.21896e-08 1.40805e-09 - 0.0072954 6.65092e-08 1.63543e-09 0.0072954 7.20865e-08 1.92305e-09 0.00729541 7.83092e-08 2.23324e-09 0.00729541 8.46116e-08 2.53053e-09 - 0.00729542 9.04179e-08 2.7814e-09 0.00729542 9.5094e-08 2.95558e-09 0.00729543 9.79885e-08 3.03233e-09 0.00729544 9.86439e-08 3.01463e-09 - 0.00680123 5.44623e-08 2.70523e-09 0.00680124 5.61602e-08 2.74893e-09 0.00680124 5.92686e-08 2.82928e-09 0.00680124 6.33737e-08 2.93457e-09 - 0.00680125 6.80227e-08 3.05167e-09 0.00680126 7.27576e-08 3.16754e-09 0.00680126 7.71143e-08 3.27019e-09 0.00680127 8.06247e-08 3.34965e-09 - 0.00680128 8.28581e-08 3.40023e-09 0.00680129 8.35227e-08 3.42494e-09 0.00576409 4.44987e-08 3.87656e-09 0.0057641 4.56907e-08 3.8646e-09 - 0.0057641 4.79105e-08 3.84666e-09 0.00576411 5.08894e-08 3.8278e-09 0.00576411 5.43025e-08 3.81226e-09 0.00576412 5.78028e-08 3.80389e-09 - 0.00576413 6.10406e-08 3.80647e-09 0.00576414 6.36816e-08 3.82356e-09 0.00576415 6.54347e-08 3.85772e-09 0.00576416 6.60807e-08 3.90998e-09 - 0.00409637 3.06354e-08 4.13577e-09 0.00409638 3.13703e-08 4.07698e-09 0.00409638 3.27882e-08 3.97604e-09 0.00409639 3.4733e-08 3.85225e-09 - 0.0040964 3.69915e-08 3.72505e-09 0.00409642 3.93277e-08 3.61315e-09 0.00409643 4.1509e-08 3.53404e-09 0.00409645 4.33314e-08 3.50237e-09 - 0.00409646 4.46524e-08 3.52653e-09 0.00409648 4.54253e-08 3.60442e-09 0.00167077 1.14183e-08 2.39421e-09 0.00167079 1.16672e-08 2.22722e-09 - 0.00167081 1.21711e-08 1.94088e-09 0.00167083 1.28784e-08 1.59146e-09 0.00167085 1.37098e-08 1.23524e-09 0.00167088 1.45758e-08 9.25319e-10 - 0.00167091 1.53904e-08 7.0952e-10 0.00167094 1.60859e-08 6.25616e-10 0.00167097 1.66352e-08 6.91303e-10 0.001671 1.70868e-08 8.89753e-10 - 0.00161554 -8.96263e-08 5.85431e-09 0.0016154 -4.15881e-08 2.20733e-08 0.00161527 -1.18006e-08 4.42048e-08 0.00161514 1.03818e-08 6.74324e-08 - 0.00161501 2.93699e-08 8.97908e-08 0.00161486 4.75059e-08 1.1041e-07 0.00161471 6.66587e-08 1.28549e-07 0.00161455 8.9254e-08 1.42895e-07 - 0.0016144 1.19651e-07 1.50766e-07 0.00161429 1.6439e-07 1.46802e-07 0.00386101 8.422e-09 1.25606e-09 0.00386097 2.67105e-08 6.90369e-09 - 0.00386094 4.50958e-08 1.51544e-08 0.00386091 6.18212e-08 2.4295e-08 0.00386088 7.7454e-08 3.34422e-08 0.00386084 9.28236e-08 4.21124e-08 - 0.0038608 1.08719e-07 4.98583e-08 0.00386075 1.2574e-07 5.59573e-08 0.00386071 1.43097e-07 5.90934e-08 0.00386068 1.5114e-07 5.73526e-08 - 0.00538898 3.77067e-08 -2.72438e-09 0.00538897 4.69635e-08 1.05247e-10 0.00538896 5.96832e-08 4.54104e-09 0.00538895 7.31735e-08 9.62303e-09 - 0.00538894 8.67397e-08 1.4804e-08 0.00538892 1.00311e-07 1.9711e-08 0.00538891 1.13829e-07 2.39705e-08 0.0053889 1.26677e-07 2.70698e-08 - 0.00538889 1.36486e-07 2.82994e-08 0.00538889 1.37808e-07 2.70213e-08 0.00633732 5.21144e-08 -2.87184e-09 0.00633731 5.75557e-08 -1.37913e-09 - 0.00633731 6.61956e-08 1.10544e-09 0.00633731 7.63467e-08 4.06907e-09 0.00633731 8.71087e-08 7.14313e-09 0.0063373 9.79674e-08 1.00542e-08 - 0.0063373 1.08396e-07 1.25251e-08 0.00633731 1.17456e-07 1.42312e-08 0.00633731 1.23413e-07 1.48257e-08 0.00633732 1.24044e-07 1.4107e-08 - 0.00679303 5.82931e-08 -3.27676e-10 0.00679303 6.17444e-08 4.48126e-10 0.00679303 6.76964e-08 1.77674e-09 0.00679303 7.51581e-08 3.41461e-09 - 0.00679303 8.33512e-08 5.15471e-09 0.00679304 9.16611e-08 6.81161e-09 0.00679304 9.94582e-08 8.20428e-09 0.00679305 1.05925e-07 9.14987e-09 - 0.00679305 1.10012e-07 9.49145e-09 0.00679306 1.10788e-07 9.17824e-09 0.00679637 5.85284e-08 3.477e-09 0.00679637 6.08779e-08 3.83666e-09 - 0.00679637 6.51053e-08 4.47557e-09 0.00679637 7.05955e-08 5.28863e-09 0.00679637 7.67549e-08 6.16964e-09 0.00679638 8.3031e-08 7.0169e-09 - 0.00679639 8.88594e-08 7.73368e-09 0.00679639 9.36147e-08 8.23215e-09 0.0067964 9.66455e-08 8.4494e-09 0.00679641 9.74727e-08 8.38031e-09 - 0.00634466 5.38343e-08 7.58754e-09 0.00634466 5.54994e-08 7.70329e-09 0.00634466 5.85607e-08 7.91836e-09 0.00634467 6.2622e-08 8.20292e-09 - 0.00634468 6.72441e-08 8.5216e-09 0.00634468 7.19794e-08 8.8386e-09 0.00634469 7.63713e-08 9.12109e-09 0.0063447 7.99551e-08 9.34246e-09 - 0.00634471 8.22946e-08 9.48704e-09 0.00634472 8.30743e-08 9.55648e-09 0.00539275 4.4716e-08 1.10619e-08 0.00539275 4.5894e-08 1.10159e-08 - 0.00539276 4.80952e-08 1.0945e-08 0.00539276 5.1061e-08 1.08676e-08 0.00539277 5.44743e-08 1.07984e-08 0.00539278 5.7994e-08 1.07512e-08 - 0.00539279 6.12737e-08 1.07399e-08 0.0053928 6.39785e-08 1.07791e-08 0.00539281 6.58102e-08 1.08802e-08 0.00539282 6.6529e-08 1.10429e-08 - 0.00385114 3.14218e-08 1.21319e-08 0.00385114 3.21524e-08 1.19455e-08 0.00385115 3.35683e-08 1.16274e-08 0.00385116 3.55186e-08 1.12382e-08 - 0.00385117 3.7793e-08 1.08372e-08 0.00385119 4.0157e-08 1.04818e-08 0.0038512 4.23773e-08 1.02271e-08 0.00385122 4.42476e-08 1.01223e-08 - 0.00385123 4.56201e-08 1.02e-08 0.00385125 4.64367e-08 1.04531e-08 0.0015844 1.18747e-08 7.38621e-09 0.00158442 1.21229e-08 6.86734e-09 - 0.00158444 1.26284e-08 5.98622e-09 0.00158446 1.33415e-08 4.9171e-09 0.00158449 1.41832e-08 3.82854e-09 0.00158452 1.50636e-08 2.87895e-09 - 0.00158454 1.58955e-08 2.21477e-09 0.00158458 1.66099e-08 1.96e-09 0.00158461 1.71779e-08 2.18529e-09 0.00158464 1.76462e-08 2.84283e-09 - 0.00142478 -9.18327e-08 8.20232e-09 0.00142464 -4.32015e-08 3.73643e-08 0.00142452 -1.32424e-08 7.42014e-08 0.00142439 9.08651e-09 1.11234e-07 - 0.00142427 2.82841e-08 1.46074e-07 0.00142413 4.66896e-08 1.77948e-07 0.001424 6.61415e-08 2.0612e-07 0.00142386 8.90208e-08 2.28681e-07 - 0.00142372 1.19595e-07 2.4078e-07 0.00142363 1.63999e-07 2.30877e-07 0.0033357 4.04418e-09 -1.44627e-09 0.00333567 2.26285e-08 8.11681e-09 - 0.00333564 4.11265e-08 2.16953e-08 0.00333562 5.80186e-08 3.63968e-08 0.00333559 7.39628e-08 5.09658e-08 0.00333557 8.97733e-08 6.47803e-08 - 0.00333553 1.06183e-07 7.72265e-08 0.0033355 1.23732e-07 8.71353e-08 0.00333547 1.41552e-07 9.20722e-08 0.00333545 1.49673e-07 8.81267e-08 - 0.00460517 3.35613e-08 -7.01402e-09 0.00460515 4.25483e-08 -2.70833e-09 0.00460515 5.51023e-08 4.18191e-09 0.00460514 6.85558e-08 1.21483e-08 - 0.00460513 8.22281e-08 2.02398e-08 0.00460513 9.60398e-08 2.79407e-08 0.00460512 1.09903e-07 3.4678e-08 0.00460512 1.23185e-07 3.96123e-08 - 0.00460512 1.33539e-07 4.14963e-08 0.00460513 1.35542e-07 3.9078e-08 0.0053818 4.82057e-08 -5.89401e-09 0.0053818 5.34043e-08 -3.8264e-09 - 0.00538179 6.17885e-08 -2.43149e-10 0.00538179 7.18078e-08 4.21109e-09 0.0053818 8.25767e-08 8.90291e-09 0.0053818 9.35717e-08 1.33732e-08 - 0.0053818 1.04261e-07 1.72002e-08 0.00538181 1.13722e-07 1.98651e-08 0.00538182 1.20254e-07 2.07956e-08 0.00538183 1.21637e-07 1.96139e-08 - 0.00575251 5.41557e-08 -1.23465e-09 0.0057525 5.74776e-08 -1.89632e-10 0.00575251 6.3268e-08 1.68706e-09 0.00575251 7.06355e-08 4.07453e-09 - 0.00575251 7.88451e-08 6.65402e-09 0.00575252 8.72815e-08 9.13796e-09 0.00575252 9.532e-08 1.12445e-08 0.00575253 1.02156e-07 1.26901e-08 - 0.00575254 1.06749e-07 1.32264e-08 0.00575255 1.08147e-07 1.2739e-08 0.00575561 5.45555e-08 4.71117e-09 0.00575561 5.68495e-08 5.19407e-09 - 0.00575561 6.10244e-08 6.07518e-09 0.00575562 6.65121e-08 7.22333e-09 0.00575562 7.27379e-08 8.48753e-09 0.00575563 7.91606e-08 9.71589e-09 - 0.00575564 8.52242e-08 1.07634e-08 0.00575565 9.03069e-08 1.15007e-08 0.00575566 9.37464e-08 1.18335e-08 0.00575567 9.50218e-08 1.17298e-08 - 0.00538878 5.09884e-08 1.08017e-08 0.00538878 5.2646e-08 1.09364e-08 0.00538879 5.57175e-08 1.11978e-08 0.00538879 5.98276e-08 1.15554e-08 - 0.0053888 6.455e-08 1.19649e-08 0.00538881 6.94452e-08 1.23778e-08 0.00538882 7.40597e-08 1.27513e-08 0.00538883 7.79242e-08 1.30552e-08 - 0.00538884 8.05826e-08 1.32763e-08 0.00538885 8.16716e-08 1.3409e-08 0.00460933 4.38557e-08 1.6206e-08 0.00460933 4.50436e-08 1.60955e-08 - 0.00460934 4.72802e-08 1.5922e-08 0.00460935 5.03183e-08 1.57251e-08 0.00460936 5.38466e-08 1.55356e-08 0.00460937 5.75249e-08 1.53815e-08 - 0.00460938 6.10036e-08 1.52944e-08 0.00460939 6.39384e-08 1.53128e-08 0.0046094 6.6011e-08 1.54751e-08 0.00460941 6.69382e-08 1.5786e-08 - 0.0033281 3.23929e-08 1.87649e-08 0.0033281 3.31353e-08 1.84234e-08 0.00332811 3.45906e-08 1.7849e-08 0.00332812 3.66151e-08 1.71495e-08 - 0.00332814 3.89979e-08 1.64244e-08 0.00332815 4.14988e-08 1.57699e-08 0.00332817 4.3876e-08 1.52839e-08 0.00332818 4.59127e-08 1.5067e-08 - 0.0033282 4.74488e-08 1.52074e-08 0.00332822 4.84054e-08 1.57166e-08 0.00139789 1.27022e-08 1.27276e-08 0.00139791 1.29548e-08 1.18049e-08 - 0.00139793 1.34785e-08 1.02787e-08 0.00139796 1.42263e-08 8.4521e-09 0.00139798 1.51173e-08 6.59612e-09 0.00139801 1.60574e-08 4.96338e-09 - 0.00139804 1.69541e-08 3.80011e-09 0.00139808 1.77333e-08 3.34671e-09 0.00139811 1.83629e-08 3.80291e-09 0.00139814 1.88894e-08 5.17202e-09 - 0.00109459 -9.44463e-08 6.70504e-09 0.00109446 -4.50269e-08 4.89539e-08 0.00109436 -1.45486e-08 9.54478e-08 0.00109426 8.50006e-09 1.38857e-07 - 0.00109417 2.86763e-08 1.78062e-07 0.00109408 4.82544e-08 2.13331e-07 0.001094 6.89853e-08 2.44674e-07 0.00109392 9.31504e-08 2.70478e-07 - 0.00109385 1.2486e-07 2.84533e-07 0.00109382 1.69674e-07 2.67296e-07 0.00245562 -1.16175e-09 -9.48408e-09 0.0024556 1.76992e-08 1.90186e-09 - 0.00245559 3.69193e-08 1.84023e-08 0.00245558 5.51894e-08 3.6164e-08 0.00245558 7.29808e-08 5.37143e-08 0.00245558 9.10194e-08 7.04544e-08 - 0.00245558 1.09871e-07 8.58113e-08 0.00245558 1.29926e-07 9.84286e-08 0.00245558 1.50171e-07 1.04932e-07 0.0024556 1.60204e-07 9.92374e-08 - 0.00332188 2.76372e-08 -1.26539e-08 0.00332187 3.63892e-08 -8.41643e-09 0.00332187 4.93176e-08 -1.53628e-09 0.00332187 6.38629e-08 7.0034e-09 - 0.00332188 7.91129e-08 1.63075e-08 0.00332189 9.48329e-08 2.53815e-08 0.0033219 1.10824e-07 3.34854e-08 0.00332192 1.26367e-07 3.96071e-08 - 0.00332194 1.39088e-07 4.21828e-08 0.00332196 1.4354e-07 3.97079e-08 0.00384017 4.05837e-08 -8.53129e-09 0.00384017 4.59954e-08 -6.71719e-09 - 0.00384017 5.48925e-08 -3.54127e-09 0.00384017 6.58183e-08 6.98767e-10 0.00384018 7.79184e-08 5.66889e-09 0.0038402 9.05236e-08 1.07096e-08 - 0.00384021 1.03019e-07 1.51408e-08 0.00384023 1.14419e-07 1.83402e-08 0.00384025 1.22962e-07 1.96793e-08 0.00384027 1.26298e-07 1.89025e-08 - 0.00408521 4.47009e-08 -2.07423e-09 0.00408521 4.84269e-08 -1.2402e-09 0.00408521 5.49208e-08 3.87692e-10 0.00408522 6.3205e-08 2.69394e-09 - 0.00408523 7.25868e-08 5.38095e-09 0.00408524 8.24193e-08 8.06789e-09 0.00408525 9.1997e-08 1.03974e-08 0.00408527 1.00445e-07 1.20527e-08 - 0.00408528 1.06618e-07 1.27898e-08 0.0040853 1.09408e-07 1.25656e-08 0.00408769 4.4521e-08 4.65349e-09 0.00408769 4.71633e-08 5.05474e-09 - 0.0040877 5.19634e-08 5.8349e-09 0.0040877 5.83068e-08 6.91834e-09 0.00408771 6.5585e-08 8.16516e-09 0.00408772 7.32103e-08 9.40533e-09 - 0.00408773 8.05727e-08 1.04785e-08 0.00408775 8.69776e-08 1.12565e-08 0.00408776 9.16588e-08 1.16691e-08 0.00408778 9.3962e-08 1.17387e-08 - 0.00384595 4.22824e-08 1.09674e-08 0.00384595 4.42021e-08 1.10255e-08 0.00384596 4.77827e-08 1.11765e-08 0.00384596 5.2611e-08 1.14159e-08 - 0.00384597 5.82187e-08 1.17109e-08 0.00384598 6.41202e-08 1.20174e-08 0.003846 6.98076e-08 1.23013e-08 0.00384601 7.47426e-08 1.25544e-08 - 0.00384602 7.83814e-08 1.28118e-08 0.00384604 8.02483e-08 1.31632e-08 0.00332609 3.84996e-08 1.68611e-08 0.0033261 3.98751e-08 1.66366e-08 - 0.00332611 4.24968e-08 1.62919e-08 0.00332612 4.60991e-08 1.58936e-08 0.00332613 5.03346e-08 1.54892e-08 0.00332614 5.48175e-08 1.51226e-08 - 0.00332616 5.9145e-08 1.48482e-08 0.00332617 6.29141e-08 1.47456e-08 0.00332619 6.57403e-08 1.4933e-08 0.0033262 6.72487e-08 1.55684e-08 - 0.00245142 3.13537e-08 2.10057e-08 0.00245143 3.21991e-08 2.04658e-08 0.00245144 3.39028e-08 1.95985e-08 0.00245146 3.63184e-08 1.85555e-08 - 0.00245147 3.92055e-08 1.74628e-08 0.00245149 4.22806e-08 1.64431e-08 0.00245151 4.52539e-08 1.56327e-08 0.00245153 4.78645e-08 1.52003e-08 - 0.00245155 4.9922e-08 1.53702e-08 0.00245157 5.13328e-08 1.64302e-08 0.00107504 1.32677e-08 1.68996e-08 0.00107506 1.35471e-08 1.54752e-08 - 0.00107509 1.4157e-08 1.32901e-08 0.00107511 1.50526e-08 1.07606e-08 0.00107515 1.61396e-08 8.20917e-09 0.00107518 1.73031e-08 5.93173e-09 - 0.00107521 1.84281e-08 4.23955e-09 0.00107525 1.94227e-08 3.50239e-09 0.00107529 2.02511e-08 4.21452e-09 0.00107534 2.0985e-08 7.04547e-09 - 0.000532833 -9.46304e-08 2.30441e-09 0.000532735 -4.29251e-08 2.64575e-08 0.000532711 -8.60961e-09 5.09654e-08 0.000532734 1.92679e-08 7.27728e-08 - 0.000532793 4.47471e-08 9.19095e-08 0.00053288 6.98119e-08 1.08897e-07 0.000532989 9.60652e-08 1.24037e-07 0.000533118 1.2566e-07 1.36759e-07 - 0.000533265 1.62296e-07 1.43853e-07 0.000533438 2.09143e-07 1.3348e-07 0.00107585 -3.36059e-09 -7.52037e-09 0.00107582 2.01877e-08 -1.87715e-09 - 0.0010758 4.68246e-08 6.57345e-09 0.00107582 7.48227e-08 1.57194e-08 0.00107585 1.04079e-07 2.47717e-08 0.0010759 1.34182e-07 3.3449e-08 - 0.00107596 1.65156e-07 4.15052e-08 0.00107604 1.96947e-07 4.82689e-08 0.00107614 2.27559e-07 5.18885e-08 0.00107624 2.43149e-07 4.88303e-08 - 0.00139459 1.88296e-08 -7.73882e-09 0.00139457 3.30697e-08 -5.92342e-09 0.00139456 5.40458e-08 -2.98165e-09 0.00139455 7.86112e-08 9.57727e-10 - 0.00139456 1.05647e-07 5.5958e-09 0.00139459 1.34024e-07 1.0214e-08 0.00139463 1.62665e-07 1.44004e-08 0.00139468 1.90077e-07 1.76383e-08 - 0.00139474 2.12589e-07 1.91235e-08 0.0013948 2.22489e-07 1.81463e-08 0.00157927 2.41179e-08 -4.70976e-09 0.00157926 3.4755e-08 -3.99314e-09 - 0.00157926 5.23558e-08 -2.77092e-09 0.00157926 7.36103e-08 -1.03454e-09 0.00157927 9.6695e-08 1.2654e-09 0.00157929 1.20672e-07 3.75159e-09 - 0.00157932 1.44298e-07 5.98358e-09 0.00157936 1.65723e-07 7.64134e-09 0.0015794 1.81838e-07 8.43325e-09 0.00157945 1.88365e-07 8.33383e-09 - 0.00166548 2.40209e-08 -1.15693e-09 0.00166548 3.20566e-08 -8.66223e-10 0.00166548 4.60489e-08 -2.50332e-10 0.00166549 6.35126e-08 7.36366e-10 - 0.00166551 8.25401e-08 1.98055e-09 0.00166553 1.02016e-07 3.26761e-09 0.00166556 1.2082e-07 4.40286e-09 0.0016656 1.37286e-07 5.23212e-09 - 0.00166564 1.4915e-07 5.65358e-09 0.00166569 1.5398e-07 5.69657e-09 0.00166651 2.25785e-08 2.14024e-09 0.00166651 2.84212e-08 2.28929e-09 - 0.00166652 3.88316e-08 2.59986e-09 0.00166654 5.2187e-08 3.06059e-09 0.00166656 6.71493e-08 3.61403e-09 0.00166658 8.26154e-08 4.17581e-09 - 0.00166661 9.74242e-08 4.66741e-09 0.00166664 1.10193e-07 5.03243e-09 0.00166668 1.19354e-07 5.2526e-09 0.00166672 1.23514e-07 5.37465e-09 - 0.00158164 2.14499e-08 5.04806e-09 0.00158165 2.55326e-08 5.04343e-09 0.00158166 3.3088e-08 5.06778e-09 0.00158168 4.31468e-08 5.12885e-09 - 0.0015817 5.46908e-08 5.21592e-09 0.00158172 6.67252e-08 5.31072e-09 0.00158175 7.82232e-08 5.40095e-09 0.00158178 8.80929e-08 5.4921e-09 - 0.00158181 9.52351e-08 5.62236e-09 0.00158184 9.8721e-08 5.88578e-09 0.00139652 2.13595e-08 7.84035e-09 0.00139653 2.41622e-08 7.69238e-09 - 0.00139655 2.95199e-08 7.46827e-09 0.00139657 3.68511e-08 7.20826e-09 0.00139659 4.54082e-08 6.9398e-09 0.00139661 5.43826e-08 6.68837e-09 - 0.00139664 6.29465e-08 6.48718e-09 0.00139667 7.02887e-08 6.38839e-09 0.0013967 7.56677e-08 6.48042e-09 0.00139673 7.84282e-08 6.91534e-09 - 0.00107463 2.10712e-08 1.02369e-08 0.00107466 2.26124e-08 9.911e-09 0.00107468 2.58569e-08 9.40091e-09 0.0010747 3.05087e-08 8.79194e-09 - 0.00107473 3.60523e-08 8.15058e-09 0.00107476 4.18901e-08 7.54191e-09 0.00107479 4.74264e-08 7.04183e-09 0.00107482 5.21486e-08 6.7532e-09 - 0.00107485 5.57409e-08 6.8363e-09 0.00107489 5.82279e-08 7.56224e-09 0.000524825 1.02795e-08 9.16401e-09 0.000524864 1.07065e-08 8.31048e-09 - 0.000524902 1.17727e-08 7.05668e-09 0.00052494 1.33955e-08 5.6342e-09 0.000524978 1.53723e-08 4.20636e-09 0.000525018 1.74597e-08 2.92199e-09 - 0.00052506 1.94217e-08 1.9447e-09 0.000525104 2.1081e-08 1.49007e-09 0.000525151 2.24052e-08 1.90559e-09 0.000525203 2.36762e-08 3.82653e-09 - - - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 - - - - - 0 1 0 0.1 1 0 0 1.1 0 0.1 1.1 0 - 0 1 0.1 0.1 1 0.1 0 1.1 0.1 0.1 1.1 0.1 - 0.2 1 0 0.2 1.1 0 0.2 1 0.1 0.2 1.1 0.1 - 0.3 1 0 0.3 1.1 0 0.3 1 0.1 0.3 1.1 0.1 - 0.4 1 0 0.4 1.1 0 0.4 1 0.1 0.4 1.1 0.1 - 0.5 1 0 0.5 1.1 0 0.5 1 0.1 0.5 1.1 0.1 - 0.6 1 0 0.6 1.1 0 0.6 1 0.1 0.6 1.1 0.1 - 0.7 1 0 0.7 1.1 0 0.7 1 0.1 0.7 1.1 0.1 - 0.8 1 0 0.8 1.1 0 0.8 1 0.1 0.8 1.1 0.1 - 0.9 1 0 0.9 1.1 0 0.9 1 0.1 0.9 1.1 0.1 - 1 1 0 1 1.1 0 1 1 0.1 1 1.1 0.1 - 0 1.2 0 0.1 1.2 0 0 1.2 0.1 0.1 1.2 0.1 - 0.2 1.2 0 0.2 1.2 0.1 0.3 1.2 0 0.3 1.2 0.1 - 0.4 1.2 0 0.4 1.2 0.1 0.5 1.2 0 0.5 1.2 0.1 - 0.6 1.2 0 0.6 1.2 0.1 0.7 1.2 0 0.7 1.2 0.1 - 0.8 1.2 0 0.8 1.2 0.1 0.9 1.2 0 0.9 1.2 0.1 - 1 1.2 0 1 1.2 0.1 0 1.3 0 0.1 1.3 0 - 0 1.3 0.1 0.1 1.3 0.1 0.2 1.3 0 0.2 1.3 0.1 - 0.3 1.3 0 0.3 1.3 0.1 0.4 1.3 0 0.4 1.3 0.1 - 0.5 1.3 0 0.5 1.3 0.1 0.6 1.3 0 0.6 1.3 0.1 - 0.7 1.3 0 0.7 1.3 0.1 0.8 1.3 0 0.8 1.3 0.1 - 0.9 1.3 0 0.9 1.3 0.1 1 1.3 0 1 1.3 0.1 - 0 1.4 0 0.1 1.4 0 0 1.4 0.1 0.1 1.4 0.1 - 0.2 1.4 0 0.2 1.4 0.1 0.3 1.4 0 0.3 1.4 0.1 - 0.4 1.4 0 0.4 1.4 0.1 0.5 1.4 0 0.5 1.4 0.1 - 0.6 1.4 0 0.6 1.4 0.1 0.7 1.4 0 0.7 1.4 0.1 - 0.8 1.4 0 0.8 1.4 0.1 0.9 1.4 0 0.9 1.4 0.1 - 1 1.4 0 1 1.4 0.1 0 1.5 0 0.1 1.5 0 - 0 1.5 0.1 0.1 1.5 0.1 0.2 1.5 0 0.2 1.5 0.1 - 0.3 1.5 0 0.3 1.5 0.1 0.4 1.5 0 0.4 1.5 0.1 - 0.5 1.5 0 0.5 1.5 0.1 0.6 1.5 0 0.6 1.5 0.1 - 0.7 1.5 0 0.7 1.5 0.1 0.8 1.5 0 0.8 1.5 0.1 - 0.9 1.5 0 0.9 1.5 0.1 1 1.5 0 1 1.5 0.1 - 0 1.6 0 0.1 1.6 0 0 1.6 0.1 0.1 1.6 0.1 - 0.2 1.6 0 0.2 1.6 0.1 0.3 1.6 0 0.3 1.6 0.1 - 0.4 1.6 0 0.4 1.6 0.1 0.5 1.6 0 0.5 1.6 0.1 - 0.6 1.6 0 0.6 1.6 0.1 0.7 1.6 0 0.7 1.6 0.1 - 0.8 1.6 0 0.8 1.6 0.1 0.9 1.6 0 0.9 1.6 0.1 - 1 1.6 0 1 1.6 0.1 0 1.7 0 0.1 1.7 0 - 0 1.7 0.1 0.1 1.7 0.1 0.2 1.7 0 0.2 1.7 0.1 - 0.3 1.7 0 0.3 1.7 0.1 0.4 1.7 0 0.4 1.7 0.1 - 0.5 1.7 0 0.5 1.7 0.1 0.6 1.7 0 0.6 1.7 0.1 - 0.7 1.7 0 0.7 1.7 0.1 0.8 1.7 0 0.8 1.7 0.1 - 0.9 1.7 0 0.9 1.7 0.1 1 1.7 0 1 1.7 0.1 - 0 1.8 0 0.1 1.8 0 0 1.8 0.1 0.1 1.8 0.1 - 0.2 1.8 0 0.2 1.8 0.1 0.3 1.8 0 0.3 1.8 0.1 - 0.4 1.8 0 0.4 1.8 0.1 0.5 1.8 0 0.5 1.8 0.1 - 0.6 1.8 0 0.6 1.8 0.1 0.7 1.8 0 0.7 1.8 0.1 - 0.8 1.8 0 0.8 1.8 0.1 0.9 1.8 0 0.9 1.8 0.1 - 1 1.8 0 1 1.8 0.1 0 1.9 0 0.1 1.9 0 - 0 1.9 0.1 0.1 1.9 0.1 0.2 1.9 0 0.2 1.9 0.1 - 0.3 1.9 0 0.3 1.9 0.1 0.4 1.9 0 0.4 1.9 0.1 - 0.5 1.9 0 0.5 1.9 0.1 0.6 1.9 0 0.6 1.9 0.1 - 0.7 1.9 0 0.7 1.9 0.1 0.8 1.9 0 0.8 1.9 0.1 - 0.9 1.9 0 0.9 1.9 0.1 1 1.9 0 1 1.9 0.1 - 0 2 0 0.1 2 0 0 2 0.1 0.1 2 0.1 - 0.2 2 0 0.2 2 0.1 0.3 2 0 0.3 2 0.1 - 0.4 2 0 0.4 2 0.1 0.5 2 0 0.5 2 0.1 - 0.6 2 0 0.6 2 0.1 0.7 2 0 0.7 2 0.1 - 0.8 2 0 0.8 2 0.1 0.9 2 0 0.9 2 0.1 - 1 2 0 1 2 0.1 0 1 0.2 0.1 1 0.2 - 0 1.1 0.2 0.1 1.1 0.2 0.2 1 0.2 0.2 1.1 0.2 - 0.3 1 0.2 0.3 1.1 0.2 0.4 1 0.2 0.4 1.1 0.2 - 0.5 1 0.2 0.5 1.1 0.2 0.6 1 0.2 0.6 1.1 0.2 - 0.7 1 0.2 0.7 1.1 0.2 0.8 1 0.2 0.8 1.1 0.2 - 0.9 1 0.2 0.9 1.1 0.2 1 1 0.2 1 1.1 0.2 - 0 1.2 0.2 0.1 1.2 0.2 0.2 1.2 0.2 0.3 1.2 0.2 - 0.4 1.2 0.2 0.5 1.2 0.2 0.6 1.2 0.2 0.7 1.2 0.2 - 0.8 1.2 0.2 0.9 1.2 0.2 1 1.2 0.2 0 1.3 0.2 - 0.1 1.3 0.2 0.2 1.3 0.2 0.3 1.3 0.2 0.4 1.3 0.2 - 0.5 1.3 0.2 0.6 1.3 0.2 0.7 1.3 0.2 0.8 1.3 0.2 - 0.9 1.3 0.2 1 1.3 0.2 0 1.4 0.2 0.1 1.4 0.2 - 0.2 1.4 0.2 0.3 1.4 0.2 0.4 1.4 0.2 0.5 1.4 0.2 - 0.6 1.4 0.2 0.7 1.4 0.2 0.8 1.4 0.2 0.9 1.4 0.2 - 1 1.4 0.2 0 1.5 0.2 0.1 1.5 0.2 0.2 1.5 0.2 - 0.3 1.5 0.2 0.4 1.5 0.2 0.5 1.5 0.2 0.6 1.5 0.2 - 0.7 1.5 0.2 0.8 1.5 0.2 0.9 1.5 0.2 1 1.5 0.2 - 0 1.6 0.2 0.1 1.6 0.2 0.2 1.6 0.2 0.3 1.6 0.2 - 0.4 1.6 0.2 0.5 1.6 0.2 0.6 1.6 0.2 0.7 1.6 0.2 - 0.8 1.6 0.2 0.9 1.6 0.2 1 1.6 0.2 0 1.7 0.2 - 0.1 1.7 0.2 0.2 1.7 0.2 0.3 1.7 0.2 0.4 1.7 0.2 - 0.5 1.7 0.2 0.6 1.7 0.2 0.7 1.7 0.2 0.8 1.7 0.2 - 0.9 1.7 0.2 1 1.7 0.2 0 1.8 0.2 0.1 1.8 0.2 - 0.2 1.8 0.2 0.3 1.8 0.2 0.4 1.8 0.2 0.5 1.8 0.2 - 0.6 1.8 0.2 0.7 1.8 0.2 0.8 1.8 0.2 0.9 1.8 0.2 - 1 1.8 0.2 0 1.9 0.2 0.1 1.9 0.2 0.2 1.9 0.2 - 0.3 1.9 0.2 0.4 1.9 0.2 0.5 1.9 0.2 0.6 1.9 0.2 - 0.7 1.9 0.2 0.8 1.9 0.2 0.9 1.9 0.2 1 1.9 0.2 - 0 2 0.2 0.1 2 0.2 0.2 2 0.2 0.3 2 0.2 - 0.4 2 0.2 0.5 2 0.2 0.6 2 0.2 0.7 2 0.2 - 0.8 2 0.2 0.9 2 0.2 1 2 0.2 0 1 0.3 - 0.1 1 0.3 0 1.1 0.3 0.1 1.1 0.3 0.2 1 0.3 - 0.2 1.1 0.3 0.3 1 0.3 0.3 1.1 0.3 0.4 1 0.3 - 0.4 1.1 0.3 0.5 1 0.3 0.5 1.1 0.3 0.6 1 0.3 - 0.6 1.1 0.3 0.7 1 0.3 0.7 1.1 0.3 0.8 1 0.3 - 0.8 1.1 0.3 0.9 1 0.3 0.9 1.1 0.3 1 1 0.3 - 1 1.1 0.3 0 1.2 0.3 0.1 1.2 0.3 0.2 1.2 0.3 - 0.3 1.2 0.3 0.4 1.2 0.3 0.5 1.2 0.3 0.6 1.2 0.3 - 0.7 1.2 0.3 0.8 1.2 0.3 0.9 1.2 0.3 1 1.2 0.3 - 0 1.3 0.3 0.1 1.3 0.3 0.2 1.3 0.3 0.3 1.3 0.3 - 0.4 1.3 0.3 0.5 1.3 0.3 0.6 1.3 0.3 0.7 1.3 0.3 - 0.8 1.3 0.3 0.9 1.3 0.3 1 1.3 0.3 0 1.4 0.3 - 0.1 1.4 0.3 0.2 1.4 0.3 0.3 1.4 0.3 0.4 1.4 0.3 - 0.5 1.4 0.3 0.6 1.4 0.3 0.7 1.4 0.3 0.8 1.4 0.3 - 0.9 1.4 0.3 1 1.4 0.3 0 1.5 0.3 0.1 1.5 0.3 - 0.2 1.5 0.3 0.3 1.5 0.3 0.4 1.5 0.3 0.5 1.5 0.3 - 0.6 1.5 0.3 0.7 1.5 0.3 0.8 1.5 0.3 0.9 1.5 0.3 - 1 1.5 0.3 0 1.6 0.3 0.1 1.6 0.3 0.2 1.6 0.3 - 0.3 1.6 0.3 0.4 1.6 0.3 0.5 1.6 0.3 0.6 1.6 0.3 - 0.7 1.6 0.3 0.8 1.6 0.3 0.9 1.6 0.3 1 1.6 0.3 - 0 1.7 0.3 0.1 1.7 0.3 0.2 1.7 0.3 0.3 1.7 0.3 - 0.4 1.7 0.3 0.5 1.7 0.3 0.6 1.7 0.3 0.7 1.7 0.3 - 0.8 1.7 0.3 0.9 1.7 0.3 1 1.7 0.3 0 1.8 0.3 - 0.1 1.8 0.3 0.2 1.8 0.3 0.3 1.8 0.3 0.4 1.8 0.3 - 0.5 1.8 0.3 0.6 1.8 0.3 0.7 1.8 0.3 0.8 1.8 0.3 - 0.9 1.8 0.3 1 1.8 0.3 0 1.9 0.3 0.1 1.9 0.3 - 0.2 1.9 0.3 0.3 1.9 0.3 0.4 1.9 0.3 0.5 1.9 0.3 - 0.6 1.9 0.3 0.7 1.9 0.3 0.8 1.9 0.3 0.9 1.9 0.3 - 1 1.9 0.3 0 2 0.3 0.1 2 0.3 0.2 2 0.3 - 0.3 2 0.3 0.4 2 0.3 0.5 2 0.3 0.6 2 0.3 - 0.7 2 0.3 0.8 2 0.3 0.9 2 0.3 1 2 0.3 - 0 1 0.4 0.1 1 0.4 0 1.1 0.4 0.1 1.1 0.4 - 0.2 1 0.4 0.2 1.1 0.4 0.3 1 0.4 0.3 1.1 0.4 - 0.4 1 0.4 0.4 1.1 0.4 0.5 1 0.4 0.5 1.1 0.4 - 0.6 1 0.4 0.6 1.1 0.4 0.7 1 0.4 0.7 1.1 0.4 - 0.8 1 0.4 0.8 1.1 0.4 0.9 1 0.4 0.9 1.1 0.4 - 1 1 0.4 1 1.1 0.4 0 1.2 0.4 0.1 1.2 0.4 - 0.2 1.2 0.4 0.3 1.2 0.4 0.4 1.2 0.4 0.5 1.2 0.4 - 0.6 1.2 0.4 0.7 1.2 0.4 0.8 1.2 0.4 0.9 1.2 0.4 - 1 1.2 0.4 0 1.3 0.4 0.1 1.3 0.4 0.2 1.3 0.4 - 0.3 1.3 0.4 0.4 1.3 0.4 0.5 1.3 0.4 0.6 1.3 0.4 - 0.7 1.3 0.4 0.8 1.3 0.4 0.9 1.3 0.4 1 1.3 0.4 - 0 1.4 0.4 0.1 1.4 0.4 0.2 1.4 0.4 0.3 1.4 0.4 - 0.4 1.4 0.4 0.5 1.4 0.4 0.6 1.4 0.4 0.7 1.4 0.4 - 0.8 1.4 0.4 0.9 1.4 0.4 1 1.4 0.4 0 1.5 0.4 - 0.1 1.5 0.4 0.2 1.5 0.4 0.3 1.5 0.4 0.4 1.5 0.4 - 0.5 1.5 0.4 0.6 1.5 0.4 0.7 1.5 0.4 0.8 1.5 0.4 - 0.9 1.5 0.4 1 1.5 0.4 0 1.6 0.4 0.1 1.6 0.4 - 0.2 1.6 0.4 0.3 1.6 0.4 0.4 1.6 0.4 0.5 1.6 0.4 - 0.6 1.6 0.4 0.7 1.6 0.4 0.8 1.6 0.4 0.9 1.6 0.4 - 1 1.6 0.4 0 1.7 0.4 0.1 1.7 0.4 0.2 1.7 0.4 - 0.3 1.7 0.4 0.4 1.7 0.4 0.5 1.7 0.4 0.6 1.7 0.4 - 0.7 1.7 0.4 0.8 1.7 0.4 0.9 1.7 0.4 1 1.7 0.4 - 0 1.8 0.4 0.1 1.8 0.4 0.2 1.8 0.4 0.3 1.8 0.4 - 0.4 1.8 0.4 0.5 1.8 0.4 0.6 1.8 0.4 0.7 1.8 0.4 - 0.8 1.8 0.4 0.9 1.8 0.4 1 1.8 0.4 0 1.9 0.4 - 0.1 1.9 0.4 0.2 1.9 0.4 0.3 1.9 0.4 0.4 1.9 0.4 - 0.5 1.9 0.4 0.6 1.9 0.4 0.7 1.9 0.4 0.8 1.9 0.4 - 0.9 1.9 0.4 1 1.9 0.4 0 2 0.4 0.1 2 0.4 - 0.2 2 0.4 0.3 2 0.4 0.4 2 0.4 0.5 2 0.4 - 0.6 2 0.4 0.7 2 0.4 0.8 2 0.4 0.9 2 0.4 - 1 2 0.4 0 1 0.5 0.1 1 0.5 0 1.1 0.5 - 0.1 1.1 0.5 0.2 1 0.5 0.2 1.1 0.5 0.3 1 0.5 - 0.3 1.1 0.5 0.4 1 0.5 0.4 1.1 0.5 0.5 1 0.5 - 0.5 1.1 0.5 0.6 1 0.5 0.6 1.1 0.5 0.7 1 0.5 - 0.7 1.1 0.5 0.8 1 0.5 0.8 1.1 0.5 0.9 1 0.5 - 0.9 1.1 0.5 1 1 0.5 1 1.1 0.5 0 1.2 0.5 - 0.1 1.2 0.5 0.2 1.2 0.5 0.3 1.2 0.5 0.4 1.2 0.5 - 0.5 1.2 0.5 0.6 1.2 0.5 0.7 1.2 0.5 0.8 1.2 0.5 - 0.9 1.2 0.5 1 1.2 0.5 0 1.3 0.5 0.1 1.3 0.5 - 0.2 1.3 0.5 0.3 1.3 0.5 0.4 1.3 0.5 0.5 1.3 0.5 - 0.6 1.3 0.5 0.7 1.3 0.5 0.8 1.3 0.5 0.9 1.3 0.5 - 1 1.3 0.5 0 1.4 0.5 0.1 1.4 0.5 0.2 1.4 0.5 - 0.3 1.4 0.5 0.4 1.4 0.5 0.5 1.4 0.5 0.6 1.4 0.5 - 0.7 1.4 0.5 0.8 1.4 0.5 0.9 1.4 0.5 1 1.4 0.5 - 0 1.5 0.5 0.1 1.5 0.5 0.2 1.5 0.5 0.3 1.5 0.5 - 0.4 1.5 0.5 0.5 1.5 0.5 0.6 1.5 0.5 0.7 1.5 0.5 - 0.8 1.5 0.5 0.9 1.5 0.5 1 1.5 0.5 0 1.6 0.5 - 0.1 1.6 0.5 0.2 1.6 0.5 0.3 1.6 0.5 0.4 1.6 0.5 - 0.5 1.6 0.5 0.6 1.6 0.5 0.7 1.6 0.5 0.8 1.6 0.5 - 0.9 1.6 0.5 1 1.6 0.5 0 1.7 0.5 0.1 1.7 0.5 - 0.2 1.7 0.5 0.3 1.7 0.5 0.4 1.7 0.5 0.5 1.7 0.5 - 0.6 1.7 0.5 0.7 1.7 0.5 0.8 1.7 0.5 0.9 1.7 0.5 - 1 1.7 0.5 0 1.8 0.5 0.1 1.8 0.5 0.2 1.8 0.5 - 0.3 1.8 0.5 0.4 1.8 0.5 0.5 1.8 0.5 0.6 1.8 0.5 - 0.7 1.8 0.5 0.8 1.8 0.5 0.9 1.8 0.5 1 1.8 0.5 - 0 1.9 0.5 0.1 1.9 0.5 0.2 1.9 0.5 0.3 1.9 0.5 - 0.4 1.9 0.5 0.5 1.9 0.5 0.6 1.9 0.5 0.7 1.9 0.5 - 0.8 1.9 0.5 0.9 1.9 0.5 1 1.9 0.5 0 2 0.5 - 0.1 2 0.5 0.2 2 0.5 0.3 2 0.5 0.4 2 0.5 - 0.5 2 0.5 0.6 2 0.5 0.7 2 0.5 0.8 2 0.5 - 0.9 2 0.5 1 2 0.5 0 1 0.6 0.1 1 0.6 - 0 1.1 0.6 0.1 1.1 0.6 0.2 1 0.6 0.2 1.1 0.6 - 0.3 1 0.6 0.3 1.1 0.6 0.4 1 0.6 0.4 1.1 0.6 - 0.5 1 0.6 0.5 1.1 0.6 0.6 1 0.6 0.6 1.1 0.6 - 0.7 1 0.6 0.7 1.1 0.6 0.8 1 0.6 0.8 1.1 0.6 - 0.9 1 0.6 0.9 1.1 0.6 1 1 0.6 1 1.1 0.6 - 0 1.2 0.6 0.1 1.2 0.6 0.2 1.2 0.6 0.3 1.2 0.6 - 0.4 1.2 0.6 0.5 1.2 0.6 0.6 1.2 0.6 0.7 1.2 0.6 - 0.8 1.2 0.6 0.9 1.2 0.6 1 1.2 0.6 0 1.3 0.6 - 0.1 1.3 0.6 0.2 1.3 0.6 0.3 1.3 0.6 0.4 1.3 0.6 - 0.5 1.3 0.6 0.6 1.3 0.6 0.7 1.3 0.6 0.8 1.3 0.6 - 0.9 1.3 0.6 1 1.3 0.6 0 1.4 0.6 0.1 1.4 0.6 - 0.2 1.4 0.6 0.3 1.4 0.6 0.4 1.4 0.6 0.5 1.4 0.6 - 0.6 1.4 0.6 0.7 1.4 0.6 0.8 1.4 0.6 0.9 1.4 0.6 - 1 1.4 0.6 0 1.5 0.6 0.1 1.5 0.6 0.2 1.5 0.6 - 0.3 1.5 0.6 0.4 1.5 0.6 0.5 1.5 0.6 0.6 1.5 0.6 - 0.7 1.5 0.6 0.8 1.5 0.6 0.9 1.5 0.6 1 1.5 0.6 - 0 1.6 0.6 0.1 1.6 0.6 0.2 1.6 0.6 0.3 1.6 0.6 - 0.4 1.6 0.6 0.5 1.6 0.6 0.6 1.6 0.6 0.7 1.6 0.6 - 0.8 1.6 0.6 0.9 1.6 0.6 1 1.6 0.6 0 1.7 0.6 - 0.1 1.7 0.6 0.2 1.7 0.6 0.3 1.7 0.6 0.4 1.7 0.6 - 0.5 1.7 0.6 0.6 1.7 0.6 0.7 1.7 0.6 0.8 1.7 0.6 - 0.9 1.7 0.6 1 1.7 0.6 0 1.8 0.6 0.1 1.8 0.6 - 0.2 1.8 0.6 0.3 1.8 0.6 0.4 1.8 0.6 0.5 1.8 0.6 - 0.6 1.8 0.6 0.7 1.8 0.6 0.8 1.8 0.6 0.9 1.8 0.6 - 1 1.8 0.6 0 1.9 0.6 0.1 1.9 0.6 0.2 1.9 0.6 - 0.3 1.9 0.6 0.4 1.9 0.6 0.5 1.9 0.6 0.6 1.9 0.6 - 0.7 1.9 0.6 0.8 1.9 0.6 0.9 1.9 0.6 1 1.9 0.6 - 0 2 0.6 0.1 2 0.6 0.2 2 0.6 0.3 2 0.6 - 0.4 2 0.6 0.5 2 0.6 0.6 2 0.6 0.7 2 0.6 - 0.8 2 0.6 0.9 2 0.6 1 2 0.6 0 1 0.7 - 0.1 1 0.7 0 1.1 0.7 0.1 1.1 0.7 0.2 1 0.7 - 0.2 1.1 0.7 0.3 1 0.7 0.3 1.1 0.7 0.4 1 0.7 - 0.4 1.1 0.7 0.5 1 0.7 0.5 1.1 0.7 0.6 1 0.7 - 0.6 1.1 0.7 0.7 1 0.7 0.7 1.1 0.7 0.8 1 0.7 - 0.8 1.1 0.7 0.9 1 0.7 0.9 1.1 0.7 1 1 0.7 - 1 1.1 0.7 0 1.2 0.7 0.1 1.2 0.7 0.2 1.2 0.7 - 0.3 1.2 0.7 0.4 1.2 0.7 0.5 1.2 0.7 0.6 1.2 0.7 - 0.7 1.2 0.7 0.8 1.2 0.7 0.9 1.2 0.7 1 1.2 0.7 - 0 1.3 0.7 0.1 1.3 0.7 0.2 1.3 0.7 0.3 1.3 0.7 - 0.4 1.3 0.7 0.5 1.3 0.7 0.6 1.3 0.7 0.7 1.3 0.7 - 0.8 1.3 0.7 0.9 1.3 0.7 1 1.3 0.7 0 1.4 0.7 - 0.1 1.4 0.7 0.2 1.4 0.7 0.3 1.4 0.7 0.4 1.4 0.7 - 0.5 1.4 0.7 0.6 1.4 0.7 0.7 1.4 0.7 0.8 1.4 0.7 - 0.9 1.4 0.7 1 1.4 0.7 0 1.5 0.7 0.1 1.5 0.7 - 0.2 1.5 0.7 0.3 1.5 0.7 0.4 1.5 0.7 0.5 1.5 0.7 - 0.6 1.5 0.7 0.7 1.5 0.7 0.8 1.5 0.7 0.9 1.5 0.7 - 1 1.5 0.7 0 1.6 0.7 0.1 1.6 0.7 0.2 1.6 0.7 - 0.3 1.6 0.7 0.4 1.6 0.7 0.5 1.6 0.7 0.6 1.6 0.7 - 0.7 1.6 0.7 0.8 1.6 0.7 0.9 1.6 0.7 1 1.6 0.7 - 0 1.7 0.7 0.1 1.7 0.7 0.2 1.7 0.7 0.3 1.7 0.7 - 0.4 1.7 0.7 0.5 1.7 0.7 0.6 1.7 0.7 0.7 1.7 0.7 - 0.8 1.7 0.7 0.9 1.7 0.7 1 1.7 0.7 0 1.8 0.7 - 0.1 1.8 0.7 0.2 1.8 0.7 0.3 1.8 0.7 0.4 1.8 0.7 - 0.5 1.8 0.7 0.6 1.8 0.7 0.7 1.8 0.7 0.8 1.8 0.7 - 0.9 1.8 0.7 1 1.8 0.7 0 1.9 0.7 0.1 1.9 0.7 - 0.2 1.9 0.7 0.3 1.9 0.7 0.4 1.9 0.7 0.5 1.9 0.7 - 0.6 1.9 0.7 0.7 1.9 0.7 0.8 1.9 0.7 0.9 1.9 0.7 - 1 1.9 0.7 0 2 0.7 0.1 2 0.7 0.2 2 0.7 - 0.3 2 0.7 0.4 2 0.7 0.5 2 0.7 0.6 2 0.7 - 0.7 2 0.7 0.8 2 0.7 0.9 2 0.7 1 2 0.7 - 0 1 0.8 0.1 1 0.8 0 1.1 0.8 0.1 1.1 0.8 - 0.2 1 0.8 0.2 1.1 0.8 0.3 1 0.8 0.3 1.1 0.8 - 0.4 1 0.8 0.4 1.1 0.8 0.5 1 0.8 0.5 1.1 0.8 - 0.6 1 0.8 0.6 1.1 0.8 0.7 1 0.8 0.7 1.1 0.8 - 0.8 1 0.8 0.8 1.1 0.8 0.9 1 0.8 0.9 1.1 0.8 - 1 1 0.8 1 1.1 0.8 0 1.2 0.8 0.1 1.2 0.8 - 0.2 1.2 0.8 0.3 1.2 0.8 0.4 1.2 0.8 0.5 1.2 0.8 - 0.6 1.2 0.8 0.7 1.2 0.8 0.8 1.2 0.8 0.9 1.2 0.8 - 1 1.2 0.8 0 1.3 0.8 0.1 1.3 0.8 0.2 1.3 0.8 - 0.3 1.3 0.8 0.4 1.3 0.8 0.5 1.3 0.8 0.6 1.3 0.8 - 0.7 1.3 0.8 0.8 1.3 0.8 0.9 1.3 0.8 1 1.3 0.8 - 0 1.4 0.8 0.1 1.4 0.8 0.2 1.4 0.8 0.3 1.4 0.8 - 0.4 1.4 0.8 0.5 1.4 0.8 0.6 1.4 0.8 0.7 1.4 0.8 - 0.8 1.4 0.8 0.9 1.4 0.8 1 1.4 0.8 0 1.5 0.8 - 0.1 1.5 0.8 0.2 1.5 0.8 0.3 1.5 0.8 0.4 1.5 0.8 - 0.5 1.5 0.8 0.6 1.5 0.8 0.7 1.5 0.8 0.8 1.5 0.8 - 0.9 1.5 0.8 1 1.5 0.8 0 1.6 0.8 0.1 1.6 0.8 - 0.2 1.6 0.8 0.3 1.6 0.8 0.4 1.6 0.8 0.5 1.6 0.8 - 0.6 1.6 0.8 0.7 1.6 0.8 0.8 1.6 0.8 0.9 1.6 0.8 - 1 1.6 0.8 0 1.7 0.8 0.1 1.7 0.8 0.2 1.7 0.8 - 0.3 1.7 0.8 0.4 1.7 0.8 0.5 1.7 0.8 0.6 1.7 0.8 - 0.7 1.7 0.8 0.8 1.7 0.8 0.9 1.7 0.8 1 1.7 0.8 - 0 1.8 0.8 0.1 1.8 0.8 0.2 1.8 0.8 0.3 1.8 0.8 - 0.4 1.8 0.8 0.5 1.8 0.8 0.6 1.8 0.8 0.7 1.8 0.8 - 0.8 1.8 0.8 0.9 1.8 0.8 1 1.8 0.8 0 1.9 0.8 - 0.1 1.9 0.8 0.2 1.9 0.8 0.3 1.9 0.8 0.4 1.9 0.8 - 0.5 1.9 0.8 0.6 1.9 0.8 0.7 1.9 0.8 0.8 1.9 0.8 - 0.9 1.9 0.8 1 1.9 0.8 0 2 0.8 0.1 2 0.8 - 0.2 2 0.8 0.3 2 0.8 0.4 2 0.8 0.5 2 0.8 - 0.6 2 0.8 0.7 2 0.8 0.8 2 0.8 0.9 2 0.8 - 1 2 0.8 0 1 0.9 0.1 1 0.9 0 1.1 0.9 - 0.1 1.1 0.9 0.2 1 0.9 0.2 1.1 0.9 0.3 1 0.9 - 0.3 1.1 0.9 0.4 1 0.9 0.4 1.1 0.9 0.5 1 0.9 - 0.5 1.1 0.9 0.6 1 0.9 0.6 1.1 0.9 0.7 1 0.9 - 0.7 1.1 0.9 0.8 1 0.9 0.8 1.1 0.9 0.9 1 0.9 - 0.9 1.1 0.9 1 1 0.9 1 1.1 0.9 0 1.2 0.9 - 0.1 1.2 0.9 0.2 1.2 0.9 0.3 1.2 0.9 0.4 1.2 0.9 - 0.5 1.2 0.9 0.6 1.2 0.9 0.7 1.2 0.9 0.8 1.2 0.9 - 0.9 1.2 0.9 1 1.2 0.9 0 1.3 0.9 0.1 1.3 0.9 - 0.2 1.3 0.9 0.3 1.3 0.9 0.4 1.3 0.9 0.5 1.3 0.9 - 0.6 1.3 0.9 0.7 1.3 0.9 0.8 1.3 0.9 0.9 1.3 0.9 - 1 1.3 0.9 0 1.4 0.9 0.1 1.4 0.9 0.2 1.4 0.9 - 0.3 1.4 0.9 0.4 1.4 0.9 0.5 1.4 0.9 0.6 1.4 0.9 - 0.7 1.4 0.9 0.8 1.4 0.9 0.9 1.4 0.9 1 1.4 0.9 - 0 1.5 0.9 0.1 1.5 0.9 0.2 1.5 0.9 0.3 1.5 0.9 - 0.4 1.5 0.9 0.5 1.5 0.9 0.6 1.5 0.9 0.7 1.5 0.9 - 0.8 1.5 0.9 0.9 1.5 0.9 1 1.5 0.9 0 1.6 0.9 - 0.1 1.6 0.9 0.2 1.6 0.9 0.3 1.6 0.9 0.4 1.6 0.9 - 0.5 1.6 0.9 0.6 1.6 0.9 0.7 1.6 0.9 0.8 1.6 0.9 - 0.9 1.6 0.9 1 1.6 0.9 0 1.7 0.9 0.1 1.7 0.9 - 0.2 1.7 0.9 0.3 1.7 0.9 0.4 1.7 0.9 0.5 1.7 0.9 - 0.6 1.7 0.9 0.7 1.7 0.9 0.8 1.7 0.9 0.9 1.7 0.9 - 1 1.7 0.9 0 1.8 0.9 0.1 1.8 0.9 0.2 1.8 0.9 - 0.3 1.8 0.9 0.4 1.8 0.9 0.5 1.8 0.9 0.6 1.8 0.9 - 0.7 1.8 0.9 0.8 1.8 0.9 0.9 1.8 0.9 1 1.8 0.9 - 0 1.9 0.9 0.1 1.9 0.9 0.2 1.9 0.9 0.3 1.9 0.9 - 0.4 1.9 0.9 0.5 1.9 0.9 0.6 1.9 0.9 0.7 1.9 0.9 - 0.8 1.9 0.9 0.9 1.9 0.9 1 1.9 0.9 0 2 0.9 - 0.1 2 0.9 0.2 2 0.9 0.3 2 0.9 0.4 2 0.9 - 0.5 2 0.9 0.6 2 0.9 0.7 2 0.9 0.8 2 0.9 - 0.9 2 0.9 1 2 0.9 0 1 1 0.1 1 1 - 0 1.1 1 0.1 1.1 1 0.2 1 1 0.2 1.1 1 - 0.3 1 1 0.3 1.1 1 0.4 1 1 0.4 1.1 1 - 0.5 1 1 0.5 1.1 1 0.6 1 1 0.6 1.1 1 - 0.7 1 1 0.7 1.1 1 0.8 1 1 0.8 1.1 1 - 0.9 1 1 0.9 1.1 1 1 1 1 1 1.1 1 - 0 1.2 1 0.1 1.2 1 0.2 1.2 1 0.3 1.2 1 - 0.4 1.2 1 0.5 1.2 1 0.6 1.2 1 0.7 1.2 1 - 0.8 1.2 1 0.9 1.2 1 1 1.2 1 0 1.3 1 - 0.1 1.3 1 0.2 1.3 1 0.3 1.3 1 0.4 1.3 1 - 0.5 1.3 1 0.6 1.3 1 0.7 1.3 1 0.8 1.3 1 - 0.9 1.3 1 1 1.3 1 0 1.4 1 0.1 1.4 1 - 0.2 1.4 1 0.3 1.4 1 0.4 1.4 1 0.5 1.4 1 - 0.6 1.4 1 0.7 1.4 1 0.8 1.4 1 0.9 1.4 1 - 1 1.4 1 0 1.5 1 0.1 1.5 1 0.2 1.5 1 - 0.3 1.5 1 0.4 1.5 1 0.5 1.5 1 0.6 1.5 1 - 0.7 1.5 1 0.8 1.5 1 0.9 1.5 1 1 1.5 1 - 0 1.6 1 0.1 1.6 1 0.2 1.6 1 0.3 1.6 1 - 0.4 1.6 1 0.5 1.6 1 0.6 1.6 1 0.7 1.6 1 - 0.8 1.6 1 0.9 1.6 1 1 1.6 1 0 1.7 1 - 0.1 1.7 1 0.2 1.7 1 0.3 1.7 1 0.4 1.7 1 - 0.5 1.7 1 0.6 1.7 1 0.7 1.7 1 0.8 1.7 1 - 0.9 1.7 1 1 1.7 1 0 1.8 1 0.1 1.8 1 - 0.2 1.8 1 0.3 1.8 1 0.4 1.8 1 0.5 1.8 1 - 0.6 1.8 1 0.7 1.8 1 0.8 1.8 1 0.9 1.8 1 - 1 1.8 1 0 1.9 1 0.1 1.9 1 0.2 1.9 1 - 0.3 1.9 1 0.4 1.9 1 0.5 1.9 1 0.6 1.9 1 - 0.7 1.9 1 0.8 1.9 1 0.9 1.9 1 1 1.9 1 - 0 2 1 0.1 2 1 0.2 2 1 0.3 2 1 - 0.4 2 1 0.5 2 1 0.6 2 1 0.7 2 1 - 0.8 2 1 0.9 2 1 1 2 1 - - - - - 0 1 3 2 4 5 7 6 1 8 9 3 - 5 10 11 7 8 12 13 9 10 14 15 11 - 12 16 17 13 14 18 19 15 16 20 21 17 - 18 22 23 19 20 24 25 21 22 26 27 23 - 24 28 29 25 26 30 31 27 28 32 33 29 - 30 34 35 31 32 36 37 33 34 38 39 35 - 36 40 41 37 38 42 43 39 2 3 45 44 - 6 7 47 46 3 9 48 45 7 11 49 47 - 9 13 50 48 11 15 51 49 13 17 52 50 - 15 19 53 51 17 21 54 52 19 23 55 53 - 21 25 56 54 23 27 57 55 25 29 58 56 - 27 31 59 57 29 33 60 58 31 35 61 59 - 33 37 62 60 35 39 63 61 37 41 64 62 - 39 43 65 63 44 45 67 66 46 47 69 68 - 45 48 70 67 47 49 71 69 48 50 72 70 - 49 51 73 71 50 52 74 72 51 53 75 73 - 52 54 76 74 53 55 77 75 54 56 78 76 - 55 57 79 77 56 58 80 78 57 59 81 79 - 58 60 82 80 59 61 83 81 60 62 84 82 - 61 63 85 83 62 64 86 84 63 65 87 85 - 66 67 89 88 68 69 91 90 67 70 92 89 - 69 71 93 91 70 72 94 92 71 73 95 93 - 72 74 96 94 73 75 97 95 74 76 98 96 - 75 77 99 97 76 78 100 98 77 79 101 99 - 78 80 102 100 79 81 103 101 80 82 104 102 - 81 83 105 103 82 84 106 104 83 85 107 105 - 84 86 108 106 85 87 109 107 88 89 111 110 - 90 91 113 112 89 92 114 111 91 93 115 113 - 92 94 116 114 93 95 117 115 94 96 118 116 - 95 97 119 117 96 98 120 118 97 99 121 119 - 98 100 122 120 99 101 123 121 100 102 124 122 - 101 103 125 123 102 104 126 124 103 105 127 125 - 104 106 128 126 105 107 129 127 106 108 130 128 - 107 109 131 129 110 111 133 132 112 113 135 134 - 111 114 136 133 113 115 137 135 114 116 138 136 - 115 117 139 137 116 118 140 138 117 119 141 139 - 118 120 142 140 119 121 143 141 120 122 144 142 - 121 123 145 143 122 124 146 144 123 125 147 145 - 124 126 148 146 125 127 149 147 126 128 150 148 - 127 129 151 149 128 130 152 150 129 131 153 151 - 132 133 155 154 134 135 157 156 133 136 158 155 - 135 137 159 157 136 138 160 158 137 139 161 159 - 138 140 162 160 139 141 163 161 140 142 164 162 - 141 143 165 163 142 144 166 164 143 145 167 165 - 144 146 168 166 145 147 169 167 146 148 170 168 - 147 149 171 169 148 150 172 170 149 151 173 171 - 150 152 174 172 151 153 175 173 154 155 177 176 - 156 157 179 178 155 158 180 177 157 159 181 179 - 158 160 182 180 159 161 183 181 160 162 184 182 - 161 163 185 183 162 164 186 184 163 165 187 185 - 164 166 188 186 165 167 189 187 166 168 190 188 - 167 169 191 189 168 170 192 190 169 171 193 191 - 170 172 194 192 171 173 195 193 172 174 196 194 - 173 175 197 195 176 177 199 198 178 179 201 200 - 177 180 202 199 179 181 203 201 180 182 204 202 - 181 183 205 203 182 184 206 204 183 185 207 205 - 184 186 208 206 185 187 209 207 186 188 210 208 - 187 189 211 209 188 190 212 210 189 191 213 211 - 190 192 214 212 191 193 215 213 192 194 216 214 - 193 195 217 215 194 196 218 216 195 197 219 217 - 198 199 221 220 200 201 223 222 199 202 224 221 - 201 203 225 223 202 204 226 224 203 205 227 225 - 204 206 228 226 205 207 229 227 206 208 230 228 - 207 209 231 229 208 210 232 230 209 211 233 231 - 210 212 234 232 211 213 235 233 212 214 236 234 - 213 215 237 235 214 216 238 236 215 217 239 237 - 216 218 240 238 217 219 241 239 4 5 7 6 - 242 243 245 244 5 10 11 7 243 246 247 245 - 10 14 15 11 246 248 249 247 14 18 19 15 - 248 250 251 249 18 22 23 19 250 252 253 251 - 22 26 27 23 252 254 255 253 26 30 31 27 - 254 256 257 255 30 34 35 31 256 258 259 257 - 34 38 39 35 258 260 261 259 38 42 43 39 - 260 262 263 261 6 7 47 46 244 245 265 264 - 7 11 49 47 245 247 266 265 11 15 51 49 - 247 249 267 266 15 19 53 51 249 251 268 267 - 19 23 55 53 251 253 269 268 23 27 57 55 - 253 255 270 269 27 31 59 57 255 257 271 270 - 31 35 61 59 257 259 272 271 35 39 63 61 - 259 261 273 272 39 43 65 63 261 263 274 273 - 46 47 69 68 264 265 276 275 47 49 71 69 - 265 266 277 276 49 51 73 71 266 267 278 277 - 51 53 75 73 267 268 279 278 53 55 77 75 - 268 269 280 279 55 57 79 77 269 270 281 280 - 57 59 81 79 270 271 282 281 59 61 83 81 - 271 272 283 282 61 63 85 83 272 273 284 283 - 63 65 87 85 273 274 285 284 68 69 91 90 - 275 276 287 286 69 71 93 91 276 277 288 287 - 71 73 95 93 277 278 289 288 73 75 97 95 - 278 279 290 289 75 77 99 97 279 280 291 290 - 77 79 101 99 280 281 292 291 79 81 103 101 - 281 282 293 292 81 83 105 103 282 283 294 293 - 83 85 107 105 283 284 295 294 85 87 109 107 - 284 285 296 295 90 91 113 112 286 287 298 297 - 91 93 115 113 287 288 299 298 93 95 117 115 - 288 289 300 299 95 97 119 117 289 290 301 300 - 97 99 121 119 290 291 302 301 99 101 123 121 - 291 292 303 302 101 103 125 123 292 293 304 303 - 103 105 127 125 293 294 305 304 105 107 129 127 - 294 295 306 305 107 109 131 129 295 296 307 306 - 112 113 135 134 297 298 309 308 113 115 137 135 - 298 299 310 309 115 117 139 137 299 300 311 310 - 117 119 141 139 300 301 312 311 119 121 143 141 - 301 302 313 312 121 123 145 143 302 303 314 313 - 123 125 147 145 303 304 315 314 125 127 149 147 - 304 305 316 315 127 129 151 149 305 306 317 316 - 129 131 153 151 306 307 318 317 134 135 157 156 - 308 309 320 319 135 137 159 157 309 310 321 320 - 137 139 161 159 310 311 322 321 139 141 163 161 - 311 312 323 322 141 143 165 163 312 313 324 323 - 143 145 167 165 313 314 325 324 145 147 169 167 - 314 315 326 325 147 149 171 169 315 316 327 326 - 149 151 173 171 316 317 328 327 151 153 175 173 - 317 318 329 328 156 157 179 178 319 320 331 330 - 157 159 181 179 320 321 332 331 159 161 183 181 - 321 322 333 332 161 163 185 183 322 323 334 333 - 163 165 187 185 323 324 335 334 165 167 189 187 - 324 325 336 335 167 169 191 189 325 326 337 336 - 169 171 193 191 326 327 338 337 171 173 195 193 - 327 328 339 338 173 175 197 195 328 329 340 339 - 178 179 201 200 330 331 342 341 179 181 203 201 - 331 332 343 342 181 183 205 203 332 333 344 343 - 183 185 207 205 333 334 345 344 185 187 209 207 - 334 335 346 345 187 189 211 209 335 336 347 346 - 189 191 213 211 336 337 348 347 191 193 215 213 - 337 338 349 348 193 195 217 215 338 339 350 349 - 195 197 219 217 339 340 351 350 200 201 223 222 - 341 342 353 352 201 203 225 223 342 343 354 353 - 203 205 227 225 343 344 355 354 205 207 229 227 - 344 345 356 355 207 209 231 229 345 346 357 356 - 209 211 233 231 346 347 358 357 211 213 235 233 - 347 348 359 358 213 215 237 235 348 349 360 359 - 215 217 239 237 349 350 361 360 217 219 241 239 - 350 351 362 361 242 243 245 244 363 364 366 365 - 243 246 247 245 364 367 368 366 246 248 249 247 - 367 369 370 368 248 250 251 249 369 371 372 370 - 250 252 253 251 371 373 374 372 252 254 255 253 - 373 375 376 374 254 256 257 255 375 377 378 376 - 256 258 259 257 377 379 380 378 258 260 261 259 - 379 381 382 380 260 262 263 261 381 383 384 382 - 244 245 265 264 365 366 386 385 245 247 266 265 - 366 368 387 386 247 249 267 266 368 370 388 387 - 249 251 268 267 370 372 389 388 251 253 269 268 - 372 374 390 389 253 255 270 269 374 376 391 390 - 255 257 271 270 376 378 392 391 257 259 272 271 - 378 380 393 392 259 261 273 272 380 382 394 393 - 261 263 274 273 382 384 395 394 264 265 276 275 - 385 386 397 396 265 266 277 276 386 387 398 397 - 266 267 278 277 387 388 399 398 267 268 279 278 - 388 389 400 399 268 269 280 279 389 390 401 400 - 269 270 281 280 390 391 402 401 270 271 282 281 - 391 392 403 402 271 272 283 282 392 393 404 403 - 272 273 284 283 393 394 405 404 273 274 285 284 - 394 395 406 405 275 276 287 286 396 397 408 407 - 276 277 288 287 397 398 409 408 277 278 289 288 - 398 399 410 409 278 279 290 289 399 400 411 410 - 279 280 291 290 400 401 412 411 280 281 292 291 - 401 402 413 412 281 282 293 292 402 403 414 413 - 282 283 294 293 403 404 415 414 283 284 295 294 - 404 405 416 415 284 285 296 295 405 406 417 416 - 286 287 298 297 407 408 419 418 287 288 299 298 - 408 409 420 419 288 289 300 299 409 410 421 420 - 289 290 301 300 410 411 422 421 290 291 302 301 - 411 412 423 422 291 292 303 302 412 413 424 423 - 292 293 304 303 413 414 425 424 293 294 305 304 - 414 415 426 425 294 295 306 305 415 416 427 426 - 295 296 307 306 416 417 428 427 297 298 309 308 - 418 419 430 429 298 299 310 309 419 420 431 430 - 299 300 311 310 420 421 432 431 300 301 312 311 - 421 422 433 432 301 302 313 312 422 423 434 433 - 302 303 314 313 423 424 435 434 303 304 315 314 - 424 425 436 435 304 305 316 315 425 426 437 436 - 305 306 317 316 426 427 438 437 306 307 318 317 - 427 428 439 438 308 309 320 319 429 430 441 440 - 309 310 321 320 430 431 442 441 310 311 322 321 - 431 432 443 442 311 312 323 322 432 433 444 443 - 312 313 324 323 433 434 445 444 313 314 325 324 - 434 435 446 445 314 315 326 325 435 436 447 446 - 315 316 327 326 436 437 448 447 316 317 328 327 - 437 438 449 448 317 318 329 328 438 439 450 449 - 319 320 331 330 440 441 452 451 320 321 332 331 - 441 442 453 452 321 322 333 332 442 443 454 453 - 322 323 334 333 443 444 455 454 323 324 335 334 - 444 445 456 455 324 325 336 335 445 446 457 456 - 325 326 337 336 446 447 458 457 326 327 338 337 - 447 448 459 458 327 328 339 338 448 449 460 459 - 328 329 340 339 449 450 461 460 330 331 342 341 - 451 452 463 462 331 332 343 342 452 453 464 463 - 332 333 344 343 453 454 465 464 333 334 345 344 - 454 455 466 465 334 335 346 345 455 456 467 466 - 335 336 347 346 456 457 468 467 336 337 348 347 - 457 458 469 468 337 338 349 348 458 459 470 469 - 338 339 350 349 459 460 471 470 339 340 351 350 - 460 461 472 471 341 342 353 352 462 463 474 473 - 342 343 354 353 463 464 475 474 343 344 355 354 - 464 465 476 475 344 345 356 355 465 466 477 476 - 345 346 357 356 466 467 478 477 346 347 358 357 - 467 468 479 478 347 348 359 358 468 469 480 479 - 348 349 360 359 469 470 481 480 349 350 361 360 - 470 471 482 481 350 351 362 361 471 472 483 482 - 363 364 366 365 484 485 487 486 364 367 368 366 - 485 488 489 487 367 369 370 368 488 490 491 489 - 369 371 372 370 490 492 493 491 371 373 374 372 - 492 494 495 493 373 375 376 374 494 496 497 495 - 375 377 378 376 496 498 499 497 377 379 380 378 - 498 500 501 499 379 381 382 380 500 502 503 501 - 381 383 384 382 502 504 505 503 365 366 386 385 - 486 487 507 506 366 368 387 386 487 489 508 507 - 368 370 388 387 489 491 509 508 370 372 389 388 - 491 493 510 509 372 374 390 389 493 495 511 510 - 374 376 391 390 495 497 512 511 376 378 392 391 - 497 499 513 512 378 380 393 392 499 501 514 513 - 380 382 394 393 501 503 515 514 382 384 395 394 - 503 505 516 515 385 386 397 396 506 507 518 517 - 386 387 398 397 507 508 519 518 387 388 399 398 - 508 509 520 519 388 389 400 399 509 510 521 520 - 389 390 401 400 510 511 522 521 390 391 402 401 - 511 512 523 522 391 392 403 402 512 513 524 523 - 392 393 404 403 513 514 525 524 393 394 405 404 - 514 515 526 525 394 395 406 405 515 516 527 526 - 396 397 408 407 517 518 529 528 397 398 409 408 - 518 519 530 529 398 399 410 409 519 520 531 530 - 399 400 411 410 520 521 532 531 400 401 412 411 - 521 522 533 532 401 402 413 412 522 523 534 533 - 402 403 414 413 523 524 535 534 403 404 415 414 - 524 525 536 535 404 405 416 415 525 526 537 536 - 405 406 417 416 526 527 538 537 407 408 419 418 - 528 529 540 539 408 409 420 419 529 530 541 540 - 409 410 421 420 530 531 542 541 410 411 422 421 - 531 532 543 542 411 412 423 422 532 533 544 543 - 412 413 424 423 533 534 545 544 413 414 425 424 - 534 535 546 545 414 415 426 425 535 536 547 546 - 415 416 427 426 536 537 548 547 416 417 428 427 - 537 538 549 548 418 419 430 429 539 540 551 550 - 419 420 431 430 540 541 552 551 420 421 432 431 - 541 542 553 552 421 422 433 432 542 543 554 553 - 422 423 434 433 543 544 555 554 423 424 435 434 - 544 545 556 555 424 425 436 435 545 546 557 556 - 425 426 437 436 546 547 558 557 426 427 438 437 - 547 548 559 558 427 428 439 438 548 549 560 559 - 429 430 441 440 550 551 562 561 430 431 442 441 - 551 552 563 562 431 432 443 442 552 553 564 563 - 432 433 444 443 553 554 565 564 433 434 445 444 - 554 555 566 565 434 435 446 445 555 556 567 566 - 435 436 447 446 556 557 568 567 436 437 448 447 - 557 558 569 568 437 438 449 448 558 559 570 569 - 438 439 450 449 559 560 571 570 440 441 452 451 - 561 562 573 572 441 442 453 452 562 563 574 573 - 442 443 454 453 563 564 575 574 443 444 455 454 - 564 565 576 575 444 445 456 455 565 566 577 576 - 445 446 457 456 566 567 578 577 446 447 458 457 - 567 568 579 578 447 448 459 458 568 569 580 579 - 448 449 460 459 569 570 581 580 449 450 461 460 - 570 571 582 581 451 452 463 462 572 573 584 583 - 452 453 464 463 573 574 585 584 453 454 465 464 - 574 575 586 585 454 455 466 465 575 576 587 586 - 455 456 467 466 576 577 588 587 456 457 468 467 - 577 578 589 588 457 458 469 468 578 579 590 589 - 458 459 470 469 579 580 591 590 459 460 471 470 - 580 581 592 591 460 461 472 471 581 582 593 592 - 462 463 474 473 583 584 595 594 463 464 475 474 - 584 585 596 595 464 465 476 475 585 586 597 596 - 465 466 477 476 586 587 598 597 466 467 478 477 - 587 588 599 598 467 468 479 478 588 589 600 599 - 468 469 480 479 589 590 601 600 469 470 481 480 - 590 591 602 601 470 471 482 481 591 592 603 602 - 471 472 483 482 592 593 604 603 484 485 487 486 - 605 606 608 607 485 488 489 487 606 609 610 608 - 488 490 491 489 609 611 612 610 490 492 493 491 - 611 613 614 612 492 494 495 493 613 615 616 614 - 494 496 497 495 615 617 618 616 496 498 499 497 - 617 619 620 618 498 500 501 499 619 621 622 620 - 500 502 503 501 621 623 624 622 502 504 505 503 - 623 625 626 624 486 487 507 506 607 608 628 627 - 487 489 508 507 608 610 629 628 489 491 509 508 - 610 612 630 629 491 493 510 509 612 614 631 630 - 493 495 511 510 614 616 632 631 495 497 512 511 - 616 618 633 632 497 499 513 512 618 620 634 633 - 499 501 514 513 620 622 635 634 501 503 515 514 - 622 624 636 635 503 505 516 515 624 626 637 636 - 506 507 518 517 627 628 639 638 507 508 519 518 - 628 629 640 639 508 509 520 519 629 630 641 640 - 509 510 521 520 630 631 642 641 510 511 522 521 - 631 632 643 642 511 512 523 522 632 633 644 643 - 512 513 524 523 633 634 645 644 513 514 525 524 - 634 635 646 645 514 515 526 525 635 636 647 646 - 515 516 527 526 636 637 648 647 517 518 529 528 - 638 639 650 649 518 519 530 529 639 640 651 650 - 519 520 531 530 640 641 652 651 520 521 532 531 - 641 642 653 652 521 522 533 532 642 643 654 653 - 522 523 534 533 643 644 655 654 523 524 535 534 - 644 645 656 655 524 525 536 535 645 646 657 656 - 525 526 537 536 646 647 658 657 526 527 538 537 - 647 648 659 658 528 529 540 539 649 650 661 660 - 529 530 541 540 650 651 662 661 530 531 542 541 - 651 652 663 662 531 532 543 542 652 653 664 663 - 532 533 544 543 653 654 665 664 533 534 545 544 - 654 655 666 665 534 535 546 545 655 656 667 666 - 535 536 547 546 656 657 668 667 536 537 548 547 - 657 658 669 668 537 538 549 548 658 659 670 669 - 539 540 551 550 660 661 672 671 540 541 552 551 - 661 662 673 672 541 542 553 552 662 663 674 673 - 542 543 554 553 663 664 675 674 543 544 555 554 - 664 665 676 675 544 545 556 555 665 666 677 676 - 545 546 557 556 666 667 678 677 546 547 558 557 - 667 668 679 678 547 548 559 558 668 669 680 679 - 548 549 560 559 669 670 681 680 550 551 562 561 - 671 672 683 682 551 552 563 562 672 673 684 683 - 552 553 564 563 673 674 685 684 553 554 565 564 - 674 675 686 685 554 555 566 565 675 676 687 686 - 555 556 567 566 676 677 688 687 556 557 568 567 - 677 678 689 688 557 558 569 568 678 679 690 689 - 558 559 570 569 679 680 691 690 559 560 571 570 - 680 681 692 691 561 562 573 572 682 683 694 693 - 562 563 574 573 683 684 695 694 563 564 575 574 - 684 685 696 695 564 565 576 575 685 686 697 696 - 565 566 577 576 686 687 698 697 566 567 578 577 - 687 688 699 698 567 568 579 578 688 689 700 699 - 568 569 580 579 689 690 701 700 569 570 581 580 - 690 691 702 701 570 571 582 581 691 692 703 702 - 572 573 584 583 693 694 705 704 573 574 585 584 - 694 695 706 705 574 575 586 585 695 696 707 706 - 575 576 587 586 696 697 708 707 576 577 588 587 - 697 698 709 708 577 578 589 588 698 699 710 709 - 578 579 590 589 699 700 711 710 579 580 591 590 - 700 701 712 711 580 581 592 591 701 702 713 712 - 581 582 593 592 702 703 714 713 583 584 595 594 - 704 705 716 715 584 585 596 595 705 706 717 716 - 585 586 597 596 706 707 718 717 586 587 598 597 - 707 708 719 718 587 588 599 598 708 709 720 719 - 588 589 600 599 709 710 721 720 589 590 601 600 - 710 711 722 721 590 591 602 601 711 712 723 722 - 591 592 603 602 712 713 724 723 592 593 604 603 - 713 714 725 724 605 606 608 607 726 727 729 728 - 606 609 610 608 727 730 731 729 609 611 612 610 - 730 732 733 731 611 613 614 612 732 734 735 733 - 613 615 616 614 734 736 737 735 615 617 618 616 - 736 738 739 737 617 619 620 618 738 740 741 739 - 619 621 622 620 740 742 743 741 621 623 624 622 - 742 744 745 743 623 625 626 624 744 746 747 745 - 607 608 628 627 728 729 749 748 608 610 629 628 - 729 731 750 749 610 612 630 629 731 733 751 750 - 612 614 631 630 733 735 752 751 614 616 632 631 - 735 737 753 752 616 618 633 632 737 739 754 753 - 618 620 634 633 739 741 755 754 620 622 635 634 - 741 743 756 755 622 624 636 635 743 745 757 756 - 624 626 637 636 745 747 758 757 627 628 639 638 - 748 749 760 759 628 629 640 639 749 750 761 760 - 629 630 641 640 750 751 762 761 630 631 642 641 - 751 752 763 762 631 632 643 642 752 753 764 763 - 632 633 644 643 753 754 765 764 633 634 645 644 - 754 755 766 765 634 635 646 645 755 756 767 766 - 635 636 647 646 756 757 768 767 636 637 648 647 - 757 758 769 768 638 639 650 649 759 760 771 770 - 639 640 651 650 760 761 772 771 640 641 652 651 - 761 762 773 772 641 642 653 652 762 763 774 773 - 642 643 654 653 763 764 775 774 643 644 655 654 - 764 765 776 775 644 645 656 655 765 766 777 776 - 645 646 657 656 766 767 778 777 646 647 658 657 - 767 768 779 778 647 648 659 658 768 769 780 779 - 649 650 661 660 770 771 782 781 650 651 662 661 - 771 772 783 782 651 652 663 662 772 773 784 783 - 652 653 664 663 773 774 785 784 653 654 665 664 - 774 775 786 785 654 655 666 665 775 776 787 786 - 655 656 667 666 776 777 788 787 656 657 668 667 - 777 778 789 788 657 658 669 668 778 779 790 789 - 658 659 670 669 779 780 791 790 660 661 672 671 - 781 782 793 792 661 662 673 672 782 783 794 793 - 662 663 674 673 783 784 795 794 663 664 675 674 - 784 785 796 795 664 665 676 675 785 786 797 796 - 665 666 677 676 786 787 798 797 666 667 678 677 - 787 788 799 798 667 668 679 678 788 789 800 799 - 668 669 680 679 789 790 801 800 669 670 681 680 - 790 791 802 801 671 672 683 682 792 793 804 803 - 672 673 684 683 793 794 805 804 673 674 685 684 - 794 795 806 805 674 675 686 685 795 796 807 806 - 675 676 687 686 796 797 808 807 676 677 688 687 - 797 798 809 808 677 678 689 688 798 799 810 809 - 678 679 690 689 799 800 811 810 679 680 691 690 - 800 801 812 811 680 681 692 691 801 802 813 812 - 682 683 694 693 803 804 815 814 683 684 695 694 - 804 805 816 815 684 685 696 695 805 806 817 816 - 685 686 697 696 806 807 818 817 686 687 698 697 - 807 808 819 818 687 688 699 698 808 809 820 819 - 688 689 700 699 809 810 821 820 689 690 701 700 - 810 811 822 821 690 691 702 701 811 812 823 822 - 691 692 703 702 812 813 824 823 693 694 705 704 - 814 815 826 825 694 695 706 705 815 816 827 826 - 695 696 707 706 816 817 828 827 696 697 708 707 - 817 818 829 828 697 698 709 708 818 819 830 829 - 698 699 710 709 819 820 831 830 699 700 711 710 - 820 821 832 831 700 701 712 711 821 822 833 832 - 701 702 713 712 822 823 834 833 702 703 714 713 - 823 824 835 834 704 705 716 715 825 826 837 836 - 705 706 717 716 826 827 838 837 706 707 718 717 - 827 828 839 838 707 708 719 718 828 829 840 839 - 708 709 720 719 829 830 841 840 709 710 721 720 - 830 831 842 841 710 711 722 721 831 832 843 842 - 711 712 723 722 832 833 844 843 712 713 724 723 - 833 834 845 844 713 714 725 724 834 835 846 845 - 726 727 729 728 847 848 850 849 727 730 731 729 - 848 851 852 850 730 732 733 731 851 853 854 852 - 732 734 735 733 853 855 856 854 734 736 737 735 - 855 857 858 856 736 738 739 737 857 859 860 858 - 738 740 741 739 859 861 862 860 740 742 743 741 - 861 863 864 862 742 744 745 743 863 865 866 864 - 744 746 747 745 865 867 868 866 728 729 749 748 - 849 850 870 869 729 731 750 749 850 852 871 870 - 731 733 751 750 852 854 872 871 733 735 752 751 - 854 856 873 872 735 737 753 752 856 858 874 873 - 737 739 754 753 858 860 875 874 739 741 755 754 - 860 862 876 875 741 743 756 755 862 864 877 876 - 743 745 757 756 864 866 878 877 745 747 758 757 - 866 868 879 878 748 749 760 759 869 870 881 880 - 749 750 761 760 870 871 882 881 750 751 762 761 - 871 872 883 882 751 752 763 762 872 873 884 883 - 752 753 764 763 873 874 885 884 753 754 765 764 - 874 875 886 885 754 755 766 765 875 876 887 886 - 755 756 767 766 876 877 888 887 756 757 768 767 - 877 878 889 888 757 758 769 768 878 879 890 889 - 759 760 771 770 880 881 892 891 760 761 772 771 - 881 882 893 892 761 762 773 772 882 883 894 893 - 762 763 774 773 883 884 895 894 763 764 775 774 - 884 885 896 895 764 765 776 775 885 886 897 896 - 765 766 777 776 886 887 898 897 766 767 778 777 - 887 888 899 898 767 768 779 778 888 889 900 899 - 768 769 780 779 889 890 901 900 770 771 782 781 - 891 892 903 902 771 772 783 782 892 893 904 903 - 772 773 784 783 893 894 905 904 773 774 785 784 - 894 895 906 905 774 775 786 785 895 896 907 906 - 775 776 787 786 896 897 908 907 776 777 788 787 - 897 898 909 908 777 778 789 788 898 899 910 909 - 778 779 790 789 899 900 911 910 779 780 791 790 - 900 901 912 911 781 782 793 792 902 903 914 913 - 782 783 794 793 903 904 915 914 783 784 795 794 - 904 905 916 915 784 785 796 795 905 906 917 916 - 785 786 797 796 906 907 918 917 786 787 798 797 - 907 908 919 918 787 788 799 798 908 909 920 919 - 788 789 800 799 909 910 921 920 789 790 801 800 - 910 911 922 921 790 791 802 801 911 912 923 922 - 792 793 804 803 913 914 925 924 793 794 805 804 - 914 915 926 925 794 795 806 805 915 916 927 926 - 795 796 807 806 916 917 928 927 796 797 808 807 - 917 918 929 928 797 798 809 808 918 919 930 929 - 798 799 810 809 919 920 931 930 799 800 811 810 - 920 921 932 931 800 801 812 811 921 922 933 932 - 801 802 813 812 922 923 934 933 803 804 815 814 - 924 925 936 935 804 805 816 815 925 926 937 936 - 805 806 817 816 926 927 938 937 806 807 818 817 - 927 928 939 938 807 808 819 818 928 929 940 939 - 808 809 820 819 929 930 941 940 809 810 821 820 - 930 931 942 941 810 811 822 821 931 932 943 942 - 811 812 823 822 932 933 944 943 812 813 824 823 - 933 934 945 944 814 815 826 825 935 936 947 946 - 815 816 827 826 936 937 948 947 816 817 828 827 - 937 938 949 948 817 818 829 828 938 939 950 949 - 818 819 830 829 939 940 951 950 819 820 831 830 - 940 941 952 951 820 821 832 831 941 942 953 952 - 821 822 833 832 942 943 954 953 822 823 834 833 - 943 944 955 954 823 824 835 834 944 945 956 955 - 825 826 837 836 946 947 958 957 826 827 838 837 - 947 948 959 958 827 828 839 838 948 949 960 959 - 828 829 840 839 949 950 961 960 829 830 841 840 - 950 951 962 961 830 831 842 841 951 952 963 962 - 831 832 843 842 952 953 964 963 832 833 844 843 - 953 954 965 964 833 834 845 844 954 955 966 965 - 834 835 846 845 955 956 967 966 847 848 850 849 - 968 969 971 970 848 851 852 850 969 972 973 971 - 851 853 854 852 972 974 975 973 853 855 856 854 - 974 976 977 975 855 857 858 856 976 978 979 977 - 857 859 860 858 978 980 981 979 859 861 862 860 - 980 982 983 981 861 863 864 862 982 984 985 983 - 863 865 866 864 984 986 987 985 865 867 868 866 - 986 988 989 987 849 850 870 869 970 971 991 990 - 850 852 871 870 971 973 992 991 852 854 872 871 - 973 975 993 992 854 856 873 872 975 977 994 993 - 856 858 874 873 977 979 995 994 858 860 875 874 - 979 981 996 995 860 862 876 875 981 983 997 996 - 862 864 877 876 983 985 998 997 864 866 878 877 - 985 987 999 998 866 868 879 878 987 989 1000 999 - 869 870 881 880 990 991 1002 1001 870 871 882 881 - 991 992 1003 1002 871 872 883 882 992 993 1004 1003 - 872 873 884 883 993 994 1005 1004 873 874 885 884 - 994 995 1006 1005 874 875 886 885 995 996 1007 1006 - 875 876 887 886 996 997 1008 1007 876 877 888 887 - 997 998 1009 1008 877 878 889 888 998 999 1010 1009 - 878 879 890 889 999 1000 1011 1010 880 881 892 891 - 1001 1002 1013 1012 881 882 893 892 1002 1003 1014 1013 - 882 883 894 893 1003 1004 1015 1014 883 884 895 894 - 1004 1005 1016 1015 884 885 896 895 1005 1006 1017 1016 - 885 886 897 896 1006 1007 1018 1017 886 887 898 897 - 1007 1008 1019 1018 887 888 899 898 1008 1009 1020 1019 - 888 889 900 899 1009 1010 1021 1020 889 890 901 900 - 1010 1011 1022 1021 891 892 903 902 1012 1013 1024 1023 - 892 893 904 903 1013 1014 1025 1024 893 894 905 904 - 1014 1015 1026 1025 894 895 906 905 1015 1016 1027 1026 - 895 896 907 906 1016 1017 1028 1027 896 897 908 907 - 1017 1018 1029 1028 897 898 909 908 1018 1019 1030 1029 - 898 899 910 909 1019 1020 1031 1030 899 900 911 910 - 1020 1021 1032 1031 900 901 912 911 1021 1022 1033 1032 - 902 903 914 913 1023 1024 1035 1034 903 904 915 914 - 1024 1025 1036 1035 904 905 916 915 1025 1026 1037 1036 - 905 906 917 916 1026 1027 1038 1037 906 907 918 917 - 1027 1028 1039 1038 907 908 919 918 1028 1029 1040 1039 - 908 909 920 919 1029 1030 1041 1040 909 910 921 920 - 1030 1031 1042 1041 910 911 922 921 1031 1032 1043 1042 - 911 912 923 922 1032 1033 1044 1043 913 914 925 924 - 1034 1035 1046 1045 914 915 926 925 1035 1036 1047 1046 - 915 916 927 926 1036 1037 1048 1047 916 917 928 927 - 1037 1038 1049 1048 917 918 929 928 1038 1039 1050 1049 - 918 919 930 929 1039 1040 1051 1050 919 920 931 930 - 1040 1041 1052 1051 920 921 932 931 1041 1042 1053 1052 - 921 922 933 932 1042 1043 1054 1053 922 923 934 933 - 1043 1044 1055 1054 924 925 936 935 1045 1046 1057 1056 - 925 926 937 936 1046 1047 1058 1057 926 927 938 937 - 1047 1048 1059 1058 927 928 939 938 1048 1049 1060 1059 - 928 929 940 939 1049 1050 1061 1060 929 930 941 940 - 1050 1051 1062 1061 930 931 942 941 1051 1052 1063 1062 - 931 932 943 942 1052 1053 1064 1063 932 933 944 943 - 1053 1054 1065 1064 933 934 945 944 1054 1055 1066 1065 - 935 936 947 946 1056 1057 1068 1067 936 937 948 947 - 1057 1058 1069 1068 937 938 949 948 1058 1059 1070 1069 - 938 939 950 949 1059 1060 1071 1070 939 940 951 950 - 1060 1061 1072 1071 940 941 952 951 1061 1062 1073 1072 - 941 942 953 952 1062 1063 1074 1073 942 943 954 953 - 1063 1064 1075 1074 943 944 955 954 1064 1065 1076 1075 - 944 945 956 955 1065 1066 1077 1076 946 947 958 957 - 1067 1068 1079 1078 947 948 959 958 1068 1069 1080 1079 - 948 949 960 959 1069 1070 1081 1080 949 950 961 960 - 1070 1071 1082 1081 950 951 962 961 1071 1072 1083 1082 - 951 952 963 962 1072 1073 1084 1083 952 953 964 963 - 1073 1074 1085 1084 953 954 965 964 1074 1075 1086 1085 - 954 955 966 965 1075 1076 1087 1086 955 956 967 966 - 1076 1077 1088 1087 968 969 971 970 1089 1090 1092 1091 - 969 972 973 971 1090 1093 1094 1092 972 974 975 973 - 1093 1095 1096 1094 974 976 977 975 1095 1097 1098 1096 - 976 978 979 977 1097 1099 1100 1098 978 980 981 979 - 1099 1101 1102 1100 980 982 983 981 1101 1103 1104 1102 - 982 984 985 983 1103 1105 1106 1104 984 986 987 985 - 1105 1107 1108 1106 986 988 989 987 1107 1109 1110 1108 - 970 971 991 990 1091 1092 1112 1111 971 973 992 991 - 1092 1094 1113 1112 973 975 993 992 1094 1096 1114 1113 - 975 977 994 993 1096 1098 1115 1114 977 979 995 994 - 1098 1100 1116 1115 979 981 996 995 1100 1102 1117 1116 - 981 983 997 996 1102 1104 1118 1117 983 985 998 997 - 1104 1106 1119 1118 985 987 999 998 1106 1108 1120 1119 - 987 989 1000 999 1108 1110 1121 1120 990 991 1002 1001 - 1111 1112 1123 1122 991 992 1003 1002 1112 1113 1124 1123 - 992 993 1004 1003 1113 1114 1125 1124 993 994 1005 1004 - 1114 1115 1126 1125 994 995 1006 1005 1115 1116 1127 1126 - 995 996 1007 1006 1116 1117 1128 1127 996 997 1008 1007 - 1117 1118 1129 1128 997 998 1009 1008 1118 1119 1130 1129 - 998 999 1010 1009 1119 1120 1131 1130 999 1000 1011 1010 - 1120 1121 1132 1131 1001 1002 1013 1012 1122 1123 1134 1133 - 1002 1003 1014 1013 1123 1124 1135 1134 1003 1004 1015 1014 - 1124 1125 1136 1135 1004 1005 1016 1015 1125 1126 1137 1136 - 1005 1006 1017 1016 1126 1127 1138 1137 1006 1007 1018 1017 - 1127 1128 1139 1138 1007 1008 1019 1018 1128 1129 1140 1139 - 1008 1009 1020 1019 1129 1130 1141 1140 1009 1010 1021 1020 - 1130 1131 1142 1141 1010 1011 1022 1021 1131 1132 1143 1142 - 1012 1013 1024 1023 1133 1134 1145 1144 1013 1014 1025 1024 - 1134 1135 1146 1145 1014 1015 1026 1025 1135 1136 1147 1146 - 1015 1016 1027 1026 1136 1137 1148 1147 1016 1017 1028 1027 - 1137 1138 1149 1148 1017 1018 1029 1028 1138 1139 1150 1149 - 1018 1019 1030 1029 1139 1140 1151 1150 1019 1020 1031 1030 - 1140 1141 1152 1151 1020 1021 1032 1031 1141 1142 1153 1152 - 1021 1022 1033 1032 1142 1143 1154 1153 1023 1024 1035 1034 - 1144 1145 1156 1155 1024 1025 1036 1035 1145 1146 1157 1156 - 1025 1026 1037 1036 1146 1147 1158 1157 1026 1027 1038 1037 - 1147 1148 1159 1158 1027 1028 1039 1038 1148 1149 1160 1159 - 1028 1029 1040 1039 1149 1150 1161 1160 1029 1030 1041 1040 - 1150 1151 1162 1161 1030 1031 1042 1041 1151 1152 1163 1162 - 1031 1032 1043 1042 1152 1153 1164 1163 1032 1033 1044 1043 - 1153 1154 1165 1164 1034 1035 1046 1045 1155 1156 1167 1166 - 1035 1036 1047 1046 1156 1157 1168 1167 1036 1037 1048 1047 - 1157 1158 1169 1168 1037 1038 1049 1048 1158 1159 1170 1169 - 1038 1039 1050 1049 1159 1160 1171 1170 1039 1040 1051 1050 - 1160 1161 1172 1171 1040 1041 1052 1051 1161 1162 1173 1172 - 1041 1042 1053 1052 1162 1163 1174 1173 1042 1043 1054 1053 - 1163 1164 1175 1174 1043 1044 1055 1054 1164 1165 1176 1175 - 1045 1046 1057 1056 1166 1167 1178 1177 1046 1047 1058 1057 - 1167 1168 1179 1178 1047 1048 1059 1058 1168 1169 1180 1179 - 1048 1049 1060 1059 1169 1170 1181 1180 1049 1050 1061 1060 - 1170 1171 1182 1181 1050 1051 1062 1061 1171 1172 1183 1182 - 1051 1052 1063 1062 1172 1173 1184 1183 1052 1053 1064 1063 - 1173 1174 1185 1184 1053 1054 1065 1064 1174 1175 1186 1185 - 1054 1055 1066 1065 1175 1176 1187 1186 1056 1057 1068 1067 - 1177 1178 1189 1188 1057 1058 1069 1068 1178 1179 1190 1189 - 1058 1059 1070 1069 1179 1180 1191 1190 1059 1060 1071 1070 - 1180 1181 1192 1191 1060 1061 1072 1071 1181 1182 1193 1192 - 1061 1062 1073 1072 1182 1183 1194 1193 1062 1063 1074 1073 - 1183 1184 1195 1194 1063 1064 1075 1074 1184 1185 1196 1195 - 1064 1065 1076 1075 1185 1186 1197 1196 1065 1066 1077 1076 - 1186 1187 1198 1197 1067 1068 1079 1078 1188 1189 1200 1199 - 1068 1069 1080 1079 1189 1190 1201 1200 1069 1070 1081 1080 - 1190 1191 1202 1201 1070 1071 1082 1081 1191 1192 1203 1202 - 1071 1072 1083 1082 1192 1193 1204 1203 1072 1073 1084 1083 - 1193 1194 1205 1204 1073 1074 1085 1084 1194 1195 1206 1205 - 1074 1075 1086 1085 1195 1196 1207 1206 1075 1076 1087 1086 - 1196 1197 1208 1207 1076 1077 1088 1087 1197 1198 1209 1208 - 1089 1090 1092 1091 1210 1211 1213 1212 1090 1093 1094 1092 - 1211 1214 1215 1213 1093 1095 1096 1094 1214 1216 1217 1215 - 1095 1097 1098 1096 1216 1218 1219 1217 1097 1099 1100 1098 - 1218 1220 1221 1219 1099 1101 1102 1100 1220 1222 1223 1221 - 1101 1103 1104 1102 1222 1224 1225 1223 1103 1105 1106 1104 - 1224 1226 1227 1225 1105 1107 1108 1106 1226 1228 1229 1227 - 1107 1109 1110 1108 1228 1230 1231 1229 1091 1092 1112 1111 - 1212 1213 1233 1232 1092 1094 1113 1112 1213 1215 1234 1233 - 1094 1096 1114 1113 1215 1217 1235 1234 1096 1098 1115 1114 - 1217 1219 1236 1235 1098 1100 1116 1115 1219 1221 1237 1236 - 1100 1102 1117 1116 1221 1223 1238 1237 1102 1104 1118 1117 - 1223 1225 1239 1238 1104 1106 1119 1118 1225 1227 1240 1239 - 1106 1108 1120 1119 1227 1229 1241 1240 1108 1110 1121 1120 - 1229 1231 1242 1241 1111 1112 1123 1122 1232 1233 1244 1243 - 1112 1113 1124 1123 1233 1234 1245 1244 1113 1114 1125 1124 - 1234 1235 1246 1245 1114 1115 1126 1125 1235 1236 1247 1246 - 1115 1116 1127 1126 1236 1237 1248 1247 1116 1117 1128 1127 - 1237 1238 1249 1248 1117 1118 1129 1128 1238 1239 1250 1249 - 1118 1119 1130 1129 1239 1240 1251 1250 1119 1120 1131 1130 - 1240 1241 1252 1251 1120 1121 1132 1131 1241 1242 1253 1252 - 1122 1123 1134 1133 1243 1244 1255 1254 1123 1124 1135 1134 - 1244 1245 1256 1255 1124 1125 1136 1135 1245 1246 1257 1256 - 1125 1126 1137 1136 1246 1247 1258 1257 1126 1127 1138 1137 - 1247 1248 1259 1258 1127 1128 1139 1138 1248 1249 1260 1259 - 1128 1129 1140 1139 1249 1250 1261 1260 1129 1130 1141 1140 - 1250 1251 1262 1261 1130 1131 1142 1141 1251 1252 1263 1262 - 1131 1132 1143 1142 1252 1253 1264 1263 1133 1134 1145 1144 - 1254 1255 1266 1265 1134 1135 1146 1145 1255 1256 1267 1266 - 1135 1136 1147 1146 1256 1257 1268 1267 1136 1137 1148 1147 - 1257 1258 1269 1268 1137 1138 1149 1148 1258 1259 1270 1269 - 1138 1139 1150 1149 1259 1260 1271 1270 1139 1140 1151 1150 - 1260 1261 1272 1271 1140 1141 1152 1151 1261 1262 1273 1272 - 1141 1142 1153 1152 1262 1263 1274 1273 1142 1143 1154 1153 - 1263 1264 1275 1274 1144 1145 1156 1155 1265 1266 1277 1276 - 1145 1146 1157 1156 1266 1267 1278 1277 1146 1147 1158 1157 - 1267 1268 1279 1278 1147 1148 1159 1158 1268 1269 1280 1279 - 1148 1149 1160 1159 1269 1270 1281 1280 1149 1150 1161 1160 - 1270 1271 1282 1281 1150 1151 1162 1161 1271 1272 1283 1282 - 1151 1152 1163 1162 1272 1273 1284 1283 1152 1153 1164 1163 - 1273 1274 1285 1284 1153 1154 1165 1164 1274 1275 1286 1285 - 1155 1156 1167 1166 1276 1277 1288 1287 1156 1157 1168 1167 - 1277 1278 1289 1288 1157 1158 1169 1168 1278 1279 1290 1289 - 1158 1159 1170 1169 1279 1280 1291 1290 1159 1160 1171 1170 - 1280 1281 1292 1291 1160 1161 1172 1171 1281 1282 1293 1292 - 1161 1162 1173 1172 1282 1283 1294 1293 1162 1163 1174 1173 - 1283 1284 1295 1294 1163 1164 1175 1174 1284 1285 1296 1295 - 1164 1165 1176 1175 1285 1286 1297 1296 1166 1167 1178 1177 - 1287 1288 1299 1298 1167 1168 1179 1178 1288 1289 1300 1299 - 1168 1169 1180 1179 1289 1290 1301 1300 1169 1170 1181 1180 - 1290 1291 1302 1301 1170 1171 1182 1181 1291 1292 1303 1302 - 1171 1172 1183 1182 1292 1293 1304 1303 1172 1173 1184 1183 - 1293 1294 1305 1304 1173 1174 1185 1184 1294 1295 1306 1305 - 1174 1175 1186 1185 1295 1296 1307 1306 1175 1176 1187 1186 - 1296 1297 1308 1307 1177 1178 1189 1188 1298 1299 1310 1309 - 1178 1179 1190 1189 1299 1300 1311 1310 1179 1180 1191 1190 - 1300 1301 1312 1311 1180 1181 1192 1191 1301 1302 1313 1312 - 1181 1182 1193 1192 1302 1303 1314 1313 1182 1183 1194 1193 - 1303 1304 1315 1314 1183 1184 1195 1194 1304 1305 1316 1315 - 1184 1185 1196 1195 1305 1306 1317 1316 1185 1186 1197 1196 - 1306 1307 1318 1317 1186 1187 1198 1197 1307 1308 1319 1318 - 1188 1189 1200 1199 1309 1310 1321 1320 1189 1190 1201 1200 - 1310 1311 1322 1321 1190 1191 1202 1201 1311 1312 1323 1322 - 1191 1192 1203 1202 1312 1313 1324 1323 1192 1193 1204 1203 - 1313 1314 1325 1324 1193 1194 1205 1204 1314 1315 1326 1325 - 1194 1195 1206 1205 1315 1316 1327 1326 1195 1196 1207 1206 - 1316 1317 1328 1327 1196 1197 1208 1207 1317 1318 1329 1328 - 1197 1198 1209 1208 1318 1319 1330 1329 - - - 8 16 24 32 40 48 56 64 72 80 88 96 - 104 112 120 128 136 144 152 160 168 176 184 192 - 200 208 216 224 232 240 248 256 264 272 280 288 - 296 304 312 320 328 336 344 352 360 368 376 384 - 392 400 408 416 424 432 440 448 456 464 472 480 - 488 496 504 512 520 528 536 544 552 560 568 576 - 584 592 600 608 616 624 632 640 648 656 664 672 - 680 688 696 704 712 720 728 736 744 752 760 768 - 776 784 792 800 808 816 824 832 840 848 856 864 - 872 880 888 896 904 912 920 928 936 944 952 960 - 968 976 984 992 1000 1008 1016 1024 1032 1040 1048 1056 - 1064 1072 1080 1088 1096 1104 1112 1120 1128 1136 1144 1152 - 1160 1168 1176 1184 1192 1200 1208 1216 1224 1232 1240 1248 - 1256 1264 1272 1280 1288 1296 1304 1312 1320 1328 1336 1344 - 1352 1360 1368 1376 1384 1392 1400 1408 1416 1424 1432 1440 - 1448 1456 1464 1472 1480 1488 1496 1504 1512 1520 1528 1536 - 1544 1552 1560 1568 1576 1584 1592 1600 1608 1616 1624 1632 - 1640 1648 1656 1664 1672 1680 1688 1696 1704 1712 1720 1728 - 1736 1744 1752 1760 1768 1776 1784 1792 1800 1808 1816 1824 - 1832 1840 1848 1856 1864 1872 1880 1888 1896 1904 1912 1920 - 1928 1936 1944 1952 1960 1968 1976 1984 1992 2000 2008 2016 - 2024 2032 2040 2048 2056 2064 2072 2080 2088 2096 2104 2112 - 2120 2128 2136 2144 2152 2160 2168 2176 2184 2192 2200 2208 - 2216 2224 2232 2240 2248 2256 2264 2272 2280 2288 2296 2304 - 2312 2320 2328 2336 2344 2352 2360 2368 2376 2384 2392 2400 - 2408 2416 2424 2432 2440 2448 2456 2464 2472 2480 2488 2496 - 2504 2512 2520 2528 2536 2544 2552 2560 2568 2576 2584 2592 - 2600 2608 2616 2624 2632 2640 2648 2656 2664 2672 2680 2688 - 2696 2704 2712 2720 2728 2736 2744 2752 2760 2768 2776 2784 - 2792 2800 2808 2816 2824 2832 2840 2848 2856 2864 2872 2880 - 2888 2896 2904 2912 2920 2928 2936 2944 2952 2960 2968 2976 - 2984 2992 3000 3008 3016 3024 3032 3040 3048 3056 3064 3072 - 3080 3088 3096 3104 3112 3120 3128 3136 3144 3152 3160 3168 - 3176 3184 3192 3200 3208 3216 3224 3232 3240 3248 3256 3264 - 3272 3280 3288 3296 3304 3312 3320 3328 3336 3344 3352 3360 - 3368 3376 3384 3392 3400 3408 3416 3424 3432 3440 3448 3456 - 3464 3472 3480 3488 3496 3504 3512 3520 3528 3536 3544 3552 - 3560 3568 3576 3584 3592 3600 3608 3616 3624 3632 3640 3648 - 3656 3664 3672 3680 3688 3696 3704 3712 3720 3728 3736 3744 - 3752 3760 3768 3776 3784 3792 3800 3808 3816 3824 3832 3840 - 3848 3856 3864 3872 3880 3888 3896 3904 3912 3920 3928 3936 - 3944 3952 3960 3968 3976 3984 3992 4000 4008 4016 4024 4032 - 4040 4048 4056 4064 4072 4080 4088 4096 4104 4112 4120 4128 - 4136 4144 4152 4160 4168 4176 4184 4192 4200 4208 4216 4224 - 4232 4240 4248 4256 4264 4272 4280 4288 4296 4304 4312 4320 - 4328 4336 4344 4352 4360 4368 4376 4384 4392 4400 4408 4416 - 4424 4432 4440 4448 4456 4464 4472 4480 4488 4496 4504 4512 - 4520 4528 4536 4544 4552 4560 4568 4576 4584 4592 4600 4608 - 4616 4624 4632 4640 4648 4656 4664 4672 4680 4688 4696 4704 - 4712 4720 4728 4736 4744 4752 4760 4768 4776 4784 4792 4800 - 4808 4816 4824 4832 4840 4848 4856 4864 4872 4880 4888 4896 - 4904 4912 4920 4928 4936 4944 4952 4960 4968 4976 4984 4992 - 5000 5008 5016 5024 5032 5040 5048 5056 5064 5072 5080 5088 - 5096 5104 5112 5120 5128 5136 5144 5152 5160 5168 5176 5184 - 5192 5200 5208 5216 5224 5232 5240 5248 5256 5264 5272 5280 - 5288 5296 5304 5312 5320 5328 5336 5344 5352 5360 5368 5376 - 5384 5392 5400 5408 5416 5424 5432 5440 5448 5456 5464 5472 - 5480 5488 5496 5504 5512 5520 5528 5536 5544 5552 5560 5568 - 5576 5584 5592 5600 5608 5616 5624 5632 5640 5648 5656 5664 - 5672 5680 5688 5696 5704 5712 5720 5728 5736 5744 5752 5760 - 5768 5776 5784 5792 5800 5808 5816 5824 5832 5840 5848 5856 - 5864 5872 5880 5888 5896 5904 5912 5920 5928 5936 5944 5952 - 5960 5968 5976 5984 5992 6000 6008 6016 6024 6032 6040 6048 - 6056 6064 6072 6080 6088 6096 6104 6112 6120 6128 6136 6144 - 6152 6160 6168 6176 6184 6192 6200 6208 6216 6224 6232 6240 - 6248 6256 6264 6272 6280 6288 6296 6304 6312 6320 6328 6336 - 6344 6352 6360 6368 6376 6384 6392 6400 6408 6416 6424 6432 - 6440 6448 6456 6464 6472 6480 6488 6496 6504 6512 6520 6528 - 6536 6544 6552 6560 6568 6576 6584 6592 6600 6608 6616 6624 - 6632 6640 6648 6656 6664 6672 6680 6688 6696 6704 6712 6720 - 6728 6736 6744 6752 6760 6768 6776 6784 6792 6800 6808 6816 - 6824 6832 6840 6848 6856 6864 6872 6880 6888 6896 6904 6912 - 6920 6928 6936 6944 6952 6960 6968 6976 6984 6992 7000 7008 - 7016 7024 7032 7040 7048 7056 7064 7072 7080 7088 7096 7104 - 7112 7120 7128 7136 7144 7152 7160 7168 7176 7184 7192 7200 - 7208 7216 7224 7232 7240 7248 7256 7264 7272 7280 7288 7296 - 7304 7312 7320 7328 7336 7344 7352 7360 7368 7376 7384 7392 - 7400 7408 7416 7424 7432 7440 7448 7456 7464 7472 7480 7488 - 7496 7504 7512 7520 7528 7536 7544 7552 7560 7568 7576 7584 - 7592 7600 7608 7616 7624 7632 7640 7648 7656 7664 7672 7680 - 7688 7696 7704 7712 7720 7728 7736 7744 7752 7760 7768 7776 - 7784 7792 7800 7808 7816 7824 7832 7840 7848 7856 7864 7872 - 7880 7888 7896 7904 7912 7920 7928 7936 7944 7952 7960 7968 - 7976 7984 7992 8000 - - - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 12 12 12 12 12 12 12 12 - 12 12 12 12 - - - - - diff --git a/test/reference-solutions/monolithic/flow-over-square-2d/darcy-final.vtu b/test/reference-solutions/monolithic/flow-over-square-2d/darcy-final.vtu deleted file mode 100644 index d4918cd..0000000 --- a/test/reference-solutions/monolithic/flow-over-square-2d/darcy-final.vtu +++ /dev/null @@ -1,1918 +0,0 @@ - - - - - - - 5.3499e-10 5.34774e-10 5.34343e-10 5.337e-10 5.32849e-10 5.31795e-10 5.30546e-10 5.29107e-10 5.2749e-10 5.25703e-10 5.23758e-10 5.21667e-10 - 5.19443e-10 5.17099e-10 5.1465e-10 5.12111e-10 5.09497e-10 5.06826e-10 5.04112e-10 5.01374e-10 4.98626e-10 4.95888e-10 4.93174e-10 4.90503e-10 - 4.87889e-10 4.8535e-10 4.82901e-10 4.80557e-10 4.78333e-10 4.76242e-10 4.74297e-10 4.7251e-10 4.70892e-10 4.69454e-10 4.68205e-10 4.67151e-10 - 4.663e-10 4.65657e-10 4.65226e-10 4.6501e-10 5.35206e-10 5.34988e-10 5.34555e-10 5.33908e-10 5.33052e-10 5.31991e-10 5.30734e-10 5.29287e-10 - 5.27659e-10 5.25862e-10 5.23904e-10 5.218e-10 5.19562e-10 5.17204e-10 5.1474e-10 5.12185e-10 5.09556e-10 5.06868e-10 5.04138e-10 5.01382e-10 - 4.98618e-10 4.95863e-10 4.93132e-10 4.90444e-10 4.87815e-10 4.8526e-10 4.82796e-10 4.80438e-10 4.782e-10 4.76096e-10 4.74139e-10 4.72341e-10 - 4.70713e-10 4.69266e-10 4.68009e-10 4.66948e-10 4.66092e-10 4.65445e-10 4.65012e-10 4.64794e-10 5.35639e-10 5.35419e-10 5.3498e-10 5.34325e-10 - 5.33458e-10 5.32385e-10 5.31112e-10 5.29647e-10 5.27999e-10 5.26179e-10 5.24198e-10 5.22068e-10 5.19802e-10 5.17414e-10 5.1492e-10 5.12334e-10 - 5.09673e-10 5.06952e-10 5.04188e-10 5.01399e-10 4.98601e-10 4.95812e-10 4.93048e-10 4.90328e-10 4.87666e-10 4.8508e-10 4.82586e-10 4.80198e-10 - 4.77932e-10 4.75802e-10 4.73821e-10 4.72001e-10 4.70353e-10 4.68888e-10 4.67615e-10 4.66542e-10 4.65675e-10 4.6502e-10 4.64581e-10 4.64361e-10 - 5.36293e-10 5.36069e-10 5.35622e-10 5.34954e-10 5.34071e-10 5.32978e-10 5.31681e-10 5.30189e-10 5.28511e-10 5.26657e-10 5.2464e-10 5.22471e-10 - 5.20163e-10 5.17732e-10 5.15192e-10 5.12559e-10 5.09849e-10 5.07078e-10 5.04264e-10 5.01424e-10 4.98576e-10 4.95736e-10 4.92922e-10 4.90151e-10 - 4.87441e-10 4.84808e-10 4.82268e-10 4.79837e-10 4.77529e-10 4.7536e-10 4.73342e-10 4.71489e-10 4.69811e-10 4.68319e-10 4.67022e-10 4.65929e-10 - 4.65046e-10 4.64378e-10 4.63931e-10 4.63707e-10 5.37171e-10 5.36941e-10 5.36483e-10 5.358e-10 5.34895e-10 5.33775e-10 5.32446e-10 5.30918e-10 - 5.29199e-10 5.273e-10 5.25233e-10 5.23012e-10 5.20648e-10 5.18159e-10 5.15557e-10 5.12861e-10 5.10085e-10 5.07248e-10 5.04367e-10 5.01459e-10 - 4.98541e-10 4.95633e-10 4.92752e-10 4.89915e-10 4.87139e-10 4.84443e-10 4.81841e-10 4.79352e-10 4.76988e-10 4.74767e-10 4.727e-10 4.70801e-10 - 4.69082e-10 4.67554e-10 4.66225e-10 4.65105e-10 4.642e-10 4.63517e-10 4.63059e-10 4.62829e-10 5.38279e-10 5.38042e-10 5.3757e-10 5.36866e-10 - 5.35934e-10 5.3478e-10 5.33411e-10 5.31837e-10 5.30066e-10 5.28111e-10 5.25982e-10 5.23694e-10 5.2126e-10 5.18696e-10 5.16018e-10 5.13241e-10 - 5.10384e-10 5.07463e-10 5.04496e-10 5.01502e-10 4.98498e-10 4.95504e-10 4.92537e-10 4.89616e-10 4.86759e-10 4.83982e-10 4.81304e-10 4.7874e-10 - 4.76306e-10 4.74018e-10 4.71889e-10 4.69934e-10 4.68163e-10 4.66588e-10 4.6522e-10 4.64066e-10 4.63134e-10 4.6243e-10 4.61958e-10 4.61721e-10 - 5.39623e-10 5.39378e-10 5.38889e-10 5.3816e-10 5.37195e-10 5.36e-10 5.34583e-10 5.32952e-10 5.31119e-10 5.29094e-10 5.2689e-10 5.24522e-10 - 5.22003e-10 5.19349e-10 5.16576e-10 5.13703e-10 5.10745e-10 5.07723e-10 5.04652e-10 5.01554e-10 4.98446e-10 4.95348e-10 4.92277e-10 4.89255e-10 - 4.86297e-10 4.83424e-10 4.80651e-10 4.77997e-10 4.75478e-10 4.7311e-10 4.70906e-10 4.68881e-10 4.67048e-10 4.65417e-10 4.64e-10 4.62805e-10 - 4.6184e-10 4.61111e-10 4.60622e-10 4.60377e-10 5.41213e-10 5.40958e-10 5.40449e-10 5.3969e-10 5.38685e-10 5.37442e-10 5.35967e-10 5.3427e-10 - 5.32363e-10 5.30256e-10 5.27964e-10 5.255e-10 5.2288e-10 5.2012e-10 5.17236e-10 5.14248e-10 5.11173e-10 5.0803e-10 5.04837e-10 5.01616e-10 - 4.98384e-10 4.95163e-10 4.9197e-10 4.88827e-10 4.85752e-10 4.82764e-10 4.7988e-10 4.7712e-10 4.745e-10 4.72036e-10 4.69744e-10 4.67637e-10 - 4.6573e-10 4.64033e-10 4.62558e-10 4.61315e-10 4.6031e-10 4.59551e-10 4.59043e-10 4.58787e-10 5.43057e-10 5.42791e-10 5.42259e-10 5.41465e-10 - 5.40415e-10 5.39115e-10 5.37573e-10 5.358e-10 5.33806e-10 5.31604e-10 5.29209e-10 5.26634e-10 5.23897e-10 5.21013e-10 5.18002e-10 5.1488e-10 - 5.11668e-10 5.08386e-10 5.05052e-10 5.01687e-10 4.98313e-10 4.94948e-10 4.91614e-10 4.88332e-10 4.8512e-10 4.81998e-10 4.78987e-10 4.76103e-10 - 4.73366e-10 4.70791e-10 4.68396e-10 4.66194e-10 4.642e-10 4.62427e-10 4.60885e-10 4.59585e-10 4.58535e-10 4.57741e-10 4.57209e-10 4.56943e-10 - 5.45169e-10 5.44889e-10 5.4433e-10 5.43497e-10 5.42394e-10 5.41029e-10 5.39411e-10 5.3755e-10 5.35457e-10 5.33147e-10 5.30633e-10 5.27932e-10 - 5.2506e-10 5.22035e-10 5.18876e-10 5.15603e-10 5.12235e-10 5.08792e-10 5.05297e-10 5.01769e-10 4.98231e-10 4.94703e-10 4.91208e-10 4.87765e-10 - 4.84397e-10 4.81124e-10 4.77965e-10 4.7494e-10 4.72068e-10 4.69367e-10 4.66854e-10 4.64543e-10 4.62451e-10 4.60589e-10 4.58971e-10 4.57606e-10 - 4.56503e-10 4.5567e-10 4.55111e-10 4.54831e-10 5.47561e-10 5.47266e-10 5.46677e-10 5.45798e-10 5.44636e-10 5.43197e-10 5.41492e-10 5.3953e-10 - 5.37326e-10 5.34892e-10 5.32244e-10 5.294e-10 5.26376e-10 5.23191e-10 5.19866e-10 5.1642e-10 5.12875e-10 5.09253e-10 5.05574e-10 5.01862e-10 - 4.98138e-10 4.94426e-10 4.90747e-10 4.87125e-10 4.8358e-10 4.80134e-10 4.76809e-10 4.73624e-10 4.706e-10 4.67756e-10 4.65108e-10 4.62674e-10 - 4.6047e-10 4.58508e-10 4.56803e-10 4.55364e-10 4.54202e-10 4.53323e-10 4.52734e-10 4.52439e-10 5.50248e-10 5.49936e-10 5.49313e-10 5.48383e-10 - 5.47154e-10 5.45632e-10 5.43828e-10 5.41754e-10 5.39424e-10 5.36851e-10 5.34053e-10 5.31047e-10 5.27852e-10 5.24488e-10 5.20976e-10 5.17337e-10 - 5.13594e-10 5.09769e-10 5.05885e-10 5.01966e-10 4.98034e-10 4.94115e-10 4.90231e-10 4.86406e-10 4.82663e-10 4.79024e-10 4.75512e-10 4.72148e-10 - 4.68953e-10 4.65947e-10 4.63149e-10 4.60576e-10 4.58245e-10 4.56172e-10 4.54368e-10 4.52846e-10 4.51617e-10 4.50687e-10 4.50064e-10 4.49752e-10 - 5.53248e-10 5.52916e-10 5.52255e-10 5.51269e-10 5.49964e-10 5.48349e-10 5.46436e-10 5.44235e-10 5.41764e-10 5.39036e-10 5.36069e-10 5.32883e-10 - 5.29497e-10 5.25933e-10 5.22213e-10 5.18359e-10 5.14394e-10 5.10343e-10 5.06231e-10 5.02081e-10 4.97919e-10 4.93769e-10 4.89657e-10 4.85606e-10 - 4.81642e-10 4.77787e-10 4.74067e-10 4.70503e-10 4.67117e-10 4.63931e-10 4.60964e-10 4.58237e-10 4.55765e-10 4.53565e-10 4.51651e-10 4.50036e-10 - 4.48731e-10 4.47745e-10 4.47084e-10 4.46752e-10 5.5658e-10 5.56227e-10 5.55522e-10 5.54472e-10 5.53083e-10 5.51365e-10 5.49329e-10 5.46988e-10 - 5.44359e-10 5.41459e-10 5.38305e-10 5.34919e-10 5.31321e-10 5.27535e-10 5.23583e-10 5.1949e-10 5.15281e-10 5.1098e-10 5.06614e-10 5.02209e-10 - 4.97791e-10 4.93386e-10 4.8902e-10 4.84719e-10 4.8051e-10 4.76417e-10 4.72465e-10 4.68679e-10 4.65081e-10 4.61695e-10 4.58541e-10 4.55641e-10 - 4.53012e-10 4.50671e-10 4.48635e-10 4.46917e-10 4.45528e-10 4.44478e-10 4.43773e-10 4.4342e-10 5.60265e-10 5.59888e-10 5.59136e-10 5.58015e-10 - 5.56532e-10 5.54699e-10 5.52527e-10 5.5003e-10 5.47227e-10 5.44134e-10 5.40774e-10 5.37166e-10 5.33334e-10 5.29302e-10 5.25095e-10 5.20738e-10 - 5.16258e-10 5.11682e-10 5.07037e-10 5.0235e-10 4.9765e-10 4.92963e-10 4.88318e-10 4.83742e-10 4.79262e-10 4.74905e-10 4.70698e-10 4.66666e-10 - 4.62834e-10 4.59226e-10 4.55866e-10 4.52773e-10 4.4997e-10 4.47473e-10 4.45301e-10 4.43468e-10 4.41985e-10 4.40864e-10 4.40112e-10 4.39735e-10 - 5.64327e-10 5.63923e-10 5.63119e-10 5.61919e-10 5.60333e-10 5.58371e-10 5.56048e-10 5.53379e-10 5.50383e-10 5.47079e-10 5.43489e-10 5.39637e-10 - 5.35547e-10 5.31244e-10 5.26756e-10 5.22109e-10 5.17332e-10 5.12453e-10 5.07501e-10 5.02505e-10 4.97495e-10 4.92499e-10 4.87547e-10 4.82668e-10 - 4.77891e-10 4.73244e-10 4.68756e-10 4.64453e-10 4.60363e-10 4.56511e-10 4.52921e-10 4.49617e-10 4.46621e-10 4.43952e-10 4.41629e-10 4.39667e-10 - 4.38081e-10 4.36881e-10 4.36077e-10 4.35673e-10 5.68793e-10 5.6836e-10 5.67496e-10 5.6621e-10 5.64508e-10 5.62405e-10 5.59915e-10 5.57056e-10 - 5.53846e-10 5.50309e-10 5.46467e-10 5.42346e-10 5.37972e-10 5.33372e-10 5.28575e-10 5.2361e-10 5.18508e-10 5.13297e-10 5.08009e-10 5.02675e-10 - 4.97325e-10 4.91991e-10 4.86703e-10 4.81492e-10 4.7639e-10 4.71425e-10 4.66628e-10 4.62028e-10 4.57654e-10 4.53533e-10 4.49691e-10 4.46154e-10 - 4.42944e-10 4.40085e-10 4.37595e-10 4.35492e-10 4.3379e-10 4.32504e-10 4.31641e-10 4.31207e-10 5.73692e-10 5.73226e-10 5.72298e-10 5.70914e-10 - 5.69086e-10 5.66827e-10 5.64152e-10 5.61082e-10 5.57638e-10 5.53844e-10 5.49725e-10 5.45308e-10 5.40622e-10 5.35697e-10 5.30562e-10 5.2525e-10 - 5.19791e-10 5.14218e-10 5.08564e-10 5.0286e-10 4.9714e-10 4.91436e-10 4.85782e-10 4.80209e-10 4.7475e-10 4.69438e-10 4.64303e-10 4.59378e-10 - 4.54692e-10 4.50275e-10 4.46156e-10 4.42362e-10 4.38918e-10 4.35848e-10 4.33173e-10 4.30914e-10 4.29086e-10 4.27702e-10 4.26774e-10 4.26308e-10 - 5.79057e-10 5.78554e-10 5.77554e-10 5.76064e-10 5.74095e-10 5.71663e-10 5.68785e-10 5.65483e-10 5.6178e-10 5.57703e-10 5.5328e-10 5.48539e-10 - 5.43512e-10 5.38231e-10 5.32728e-10 5.27036e-10 5.21189e-10 5.15221e-10 5.09167e-10 5.03062e-10 4.96938e-10 4.90833e-10 4.84779e-10 4.78811e-10 - 4.72964e-10 4.67272e-10 4.61769e-10 4.56488e-10 4.51461e-10 4.4672e-10 4.42297e-10 4.3822e-10 4.34517e-10 4.31215e-10 4.28337e-10 4.25905e-10 - 4.23936e-10 4.22446e-10 4.21446e-10 4.20944e-10 5.84923e-10 5.84381e-10 5.83301e-10 5.81692e-10 5.79568e-10 5.76944e-10 5.73841e-10 5.70283e-10 - 5.66297e-10 5.61909e-10 5.57152e-10 5.52057e-10 5.46657e-10 5.40987e-10 5.35082e-10 5.28976e-10 5.22707e-10 5.16311e-10 5.09823e-10 5.0328e-10 - 4.9672e-10 4.90177e-10 4.83689e-10 4.77292e-10 4.71024e-10 4.64918e-10 4.59013e-10 4.53343e-10 4.47943e-10 4.42848e-10 4.38091e-10 4.33703e-10 - 4.29717e-10 4.26159e-10 4.23056e-10 4.20432e-10 4.18308e-10 4.16699e-10 4.15619e-10 4.15077e-10 5.91332e-10 5.90746e-10 5.89577e-10 5.87837e-10 - 5.85539e-10 5.82704e-10 5.79353e-10 5.75513e-10 5.71213e-10 5.66485e-10 5.61362e-10 5.55879e-10 5.50072e-10 5.43978e-10 5.37635e-10 5.31081e-10 - 5.24354e-10 5.17492e-10 5.10534e-10 5.03518e-10 4.96482e-10 4.89467e-10 4.82508e-10 4.75646e-10 4.68919e-10 4.62365e-10 4.56022e-10 4.49928e-10 - 4.44121e-10 4.38638e-10 4.33515e-10 4.28787e-10 4.24487e-10 4.20647e-10 4.17296e-10 4.14461e-10 4.12163e-10 4.10423e-10 4.09254e-10 4.08668e-10 - 5.98328e-10 5.97692e-10 5.96425e-10 5.94538e-10 5.92049e-10 5.88979e-10 5.85354e-10 5.81203e-10 5.76559e-10 5.71456e-10 5.65932e-10 5.60025e-10 - 5.53774e-10 5.47219e-10 5.404e-10 5.33358e-10 5.26134e-10 5.18769e-10 5.11302e-10 5.03774e-10 4.96226e-10 4.88698e-10 4.81231e-10 4.73866e-10 - 4.66642e-10 4.596e-10 4.52781e-10 4.46226e-10 4.39975e-10 4.34068e-10 4.28544e-10 4.23441e-10 4.18797e-10 4.14646e-10 4.11021e-10 4.07951e-10 - 4.05462e-10 4.03575e-10 4.02308e-10 4.01672e-10 6.05961e-10 6.05269e-10 6.03891e-10 6.01842e-10 5.9914e-10 5.9581e-10 5.91881e-10 5.87386e-10 - 5.82362e-10 5.76848e-10 5.70885e-10 5.64515e-10 5.57779e-10 5.50723e-10 5.43388e-10 5.35818e-10 5.28057e-10 5.20147e-10 5.1213e-10 5.04051e-10 - 4.95949e-10 4.8787e-10 4.79853e-10 4.71943e-10 4.64182e-10 4.56612e-10 4.49277e-10 4.42221e-10 4.35485e-10 4.29115e-10 4.23152e-10 4.17638e-10 - 4.12614e-10 4.08119e-10 4.0419e-10 4.0086e-10 3.98158e-10 3.96109e-10 3.94731e-10 3.9404e-10 6.14285e-10 6.13531e-10 6.1203e-10 6.09799e-10 - 6.06859e-10 6.03239e-10 5.98973e-10 5.94098e-10 5.88656e-10 5.8269e-10 5.76246e-10 5.69369e-10 5.62107e-10 5.54505e-10 5.46611e-10 5.3847e-10 - 5.30128e-10 5.21631e-10 5.13023e-10 5.04348e-10 4.95652e-10 4.86977e-10 4.78369e-10 4.69872e-10 4.6153e-10 4.53389e-10 4.45495e-10 4.37893e-10 - 4.30631e-10 4.23754e-10 4.1731e-10 4.11344e-10 4.05902e-10 4.01027e-10 3.96761e-10 3.93141e-10 3.90201e-10 3.8797e-10 3.86469e-10 3.85715e-10 - 6.23363e-10 6.22539e-10 6.209e-10 6.18464e-10 6.15258e-10 6.11315e-10 6.06674e-10 6.01378e-10 5.95473e-10 5.8901e-10 5.82039e-10 5.74609e-10 - 5.66773e-10 5.5858e-10 5.5008e-10 5.41323e-10 5.32355e-10 5.23226e-10 5.13982e-10 5.04668e-10 4.95332e-10 4.86018e-10 4.76774e-10 4.67645e-10 - 4.58677e-10 4.4992e-10 4.4142e-10 4.33227e-10 4.25391e-10 4.17961e-10 4.1099e-10 4.04527e-10 3.98622e-10 3.93326e-10 3.88685e-10 3.84742e-10 - 3.81536e-10 3.791e-10 3.77461e-10 3.76637e-10 6.33265e-10 6.32362e-10 6.30566e-10 6.279e-10 6.24395e-10 6.20089e-10 6.15029e-10 6.09265e-10 - 6.0285e-10 5.95839e-10 5.88289e-10 5.80256e-10 5.71795e-10 5.62961e-10 5.53807e-10 5.44385e-10 5.34745e-10 5.24937e-10 5.1501e-10 5.05011e-10 - 4.94989e-10 4.8499e-10 4.75063e-10 4.65255e-10 4.55615e-10 4.46193e-10 4.37039e-10 4.28205e-10 4.19744e-10 4.11711e-10 4.04161e-10 3.9715e-10 - 3.90735e-10 3.84971e-10 3.79911e-10 3.75605e-10 3.721e-10 3.69434e-10 3.67638e-10 3.66735e-10 6.44071e-10 6.43077e-10 6.41103e-10 6.38175e-10 - 6.34331e-10 6.29618e-10 6.24089e-10 6.17803e-10 6.10821e-10 6.03207e-10 5.95023e-10 5.86331e-10 5.77192e-10 5.67663e-10 5.57802e-10 5.47664e-10 - 5.37302e-10 5.26767e-10 5.16109e-10 5.05378e-10 4.94622e-10 4.83891e-10 4.73233e-10 4.62698e-10 4.52336e-10 4.42198e-10 4.32337e-10 4.22808e-10 - 4.13669e-10 4.04977e-10 3.96793e-10 3.89179e-10 3.82197e-10 3.75911e-10 3.70382e-10 3.65669e-10 3.61825e-10 3.58897e-10 3.56923e-10 3.55929e-10 - 6.55871e-10 6.54773e-10 6.52594e-10 6.49367e-10 6.45137e-10 6.39962e-10 6.33906e-10 6.27036e-10 6.19426e-10 6.11145e-10 6.02265e-10 5.92854e-10 - 5.82977e-10 5.72697e-10 5.62075e-10 5.51168e-10 5.40032e-10 5.28719e-10 5.17281e-10 5.05769e-10 4.94231e-10 4.82719e-10 4.71281e-10 4.59968e-10 - 4.48832e-10 4.37925e-10 4.27303e-10 4.17023e-10 4.07146e-10 3.97735e-10 3.88855e-10 3.80574e-10 3.72964e-10 3.66094e-10 3.60038e-10 3.54863e-10 - 3.50633e-10 3.47406e-10 3.45227e-10 3.44129e-10 6.68768e-10 6.67549e-10 6.65133e-10 6.6156e-10 6.56889e-10 6.51188e-10 6.44535e-10 6.37011e-10 - 6.287e-10 6.19683e-10 6.10038e-10 5.99841e-10 5.89164e-10 5.78073e-10 5.66633e-10 5.54902e-10 5.42938e-10 5.30796e-10 5.18528e-10 5.06184e-10 - 4.93816e-10 4.81472e-10 4.69204e-10 4.57062e-10 4.45098e-10 4.33367e-10 4.21927e-10 4.10836e-10 4.00159e-10 3.89962e-10 3.80317e-10 3.713e-10 - 3.62989e-10 3.55465e-10 3.48812e-10 3.43111e-10 3.3844e-10 3.34867e-10 3.32451e-10 3.31232e-10 6.82885e-10 6.81523e-10 6.78828e-10 6.74853e-10 - 6.6967e-10 6.63366e-10 6.56035e-10 6.47774e-10 6.38681e-10 6.28848e-10 6.18363e-10 6.0731e-10 5.95765e-10 5.838e-10 5.7148e-10 5.58869e-10 - 5.46023e-10 5.32999e-10 5.1985e-10 5.06625e-10 4.93375e-10 4.8015e-10 4.67001e-10 4.53977e-10 4.41131e-10 4.2852e-10 4.16201e-10 4.04235e-10 - 3.9269e-10 3.81637e-10 3.71152e-10 3.61319e-10 3.52226e-10 3.43965e-10 3.36634e-10 3.3033e-10 3.25147e-10 3.21172e-10 3.18477e-10 3.17115e-10 - 6.98363e-10 6.96831e-10 6.93804e-10 6.89353e-10 6.83572e-10 6.7657e-10 6.68464e-10 6.5937e-10 6.49401e-10 6.38664e-10 6.27257e-10 6.1527e-10 - 6.02786e-10 5.8988e-10 5.7662e-10 5.63069e-10 5.49287e-10 5.35329e-10 5.21246e-10 5.0709e-10 4.9291e-10 4.78754e-10 4.64671e-10 4.50713e-10 - 4.36931e-10 4.2338e-10 4.1012e-10 3.97214e-10 3.8473e-10 3.72743e-10 3.61336e-10 3.50599e-10 3.4063e-10 3.31536e-10 3.2343e-10 3.16428e-10 - 3.10647e-10 3.06196e-10 3.03169e-10 3.01637e-10 7.15372e-10 7.13633e-10 7.10205e-10 7.05184e-10 6.98695e-10 6.90879e-10 6.81881e-10 6.7184e-10 - 6.6089e-10 6.49151e-10 6.36731e-10 6.23728e-10 6.1023e-10 5.96313e-10 5.82049e-10 5.67501e-10 5.52727e-10 5.37782e-10 5.22717e-10 5.0758e-10 - 4.9242e-10 4.77283e-10 4.62218e-10 4.47273e-10 4.32499e-10 4.17951e-10 4.03687e-10 3.8977e-10 3.76272e-10 3.63269e-10 3.50849e-10 3.3911e-10 - 3.2816e-10 3.18119e-10 3.09121e-10 3.01305e-10 2.94816e-10 2.89795e-10 2.86367e-10 2.84628e-10 7.34122e-10 7.32122e-10 7.28198e-10 7.22482e-10 - 7.15145e-10 7.06371e-10 6.96339e-10 6.8522e-10 6.73168e-10 6.60317e-10 6.46788e-10 6.32682e-10 6.18091e-10 6.03095e-10 5.87763e-10 5.72159e-10 - 5.56339e-10 5.40356e-10 5.24259e-10 5.08094e-10 4.91906e-10 4.75741e-10 4.59644e-10 4.43661e-10 4.27841e-10 4.12237e-10 3.96905e-10 3.81909e-10 - 3.67318e-10 3.53212e-10 3.39683e-10 3.26832e-10 3.1478e-10 3.03661e-10 2.93629e-10 2.84855e-10 2.77518e-10 2.71802e-10 2.67878e-10 2.65878e-10 - 7.54872e-10 7.52537e-10 7.47982e-10 7.41402e-10 7.33034e-10 7.23119e-10 7.11885e-10 6.99535e-10 6.86244e-10 6.72164e-10 6.5742e-10 6.42121e-10 - 6.26358e-10 6.10212e-10 5.93749e-10 5.77032e-10 5.60114e-10 5.43044e-10 5.25868e-10 5.0863e-10 4.9137e-10 4.74132e-10 4.56956e-10 4.39886e-10 - 4.22968e-10 4.06251e-10 3.89788e-10 3.73642e-10 3.57879e-10 3.4258e-10 3.27836e-10 3.13756e-10 3.00465e-10 2.88115e-10 2.76881e-10 2.66966e-10 - 2.58598e-10 2.52018e-10 2.47463e-10 2.45128e-10 7.77956e-10 7.75172e-10 7.69791e-10 7.62111e-10 7.52468e-10 7.41186e-10 7.28546e-10 7.14789e-10 - 7.00111e-10 6.84673e-10 6.68607e-10 6.52023e-10 6.3501e-10 6.17644e-10 5.99991e-10 5.82106e-10 5.6404e-10 5.45838e-10 5.2754e-10 5.09186e-10 - 4.90814e-10 4.7246e-10 4.54162e-10 4.3596e-10 4.17894e-10 4.00009e-10 3.82356e-10 3.6499e-10 3.47977e-10 3.31393e-10 3.15327e-10 2.99889e-10 - 2.85211e-10 2.71454e-10 2.58814e-10 2.47532e-10 2.37889e-10 2.30209e-10 2.24828e-10 2.22044e-10 8.03824e-10 8.00406e-10 7.93898e-10 7.84781e-10 - 7.73544e-10 7.6061e-10 7.46326e-10 7.30964e-10 7.14737e-10 6.9781e-10 6.80314e-10 6.62354e-10 6.44014e-10 6.25364e-10 6.06463e-10 5.87362e-10 - 5.68103e-10 5.48726e-10 5.29268e-10 5.09761e-10 4.90239e-10 4.70732e-10 4.51274e-10 4.31897e-10 4.12638e-10 3.93537e-10 3.74636e-10 3.55986e-10 - 3.37646e-10 3.19686e-10 3.0219e-10 2.85263e-10 2.69036e-10 2.53674e-10 2.3939e-10 2.26457e-10 2.15219e-10 2.06102e-10 1.99594e-10 1.96176e-10 - 8.33109e-10 8.28728e-10 8.20614e-10 8.09573e-10 7.96315e-10 7.81384e-10 7.65183e-10 7.48005e-10 7.30062e-10 7.11515e-10 6.92485e-10 6.73064e-10 - 6.53328e-10 6.33336e-10 6.13137e-10 5.92774e-10 5.72283e-10 5.51697e-10 5.31044e-10 5.10352e-10 4.89648e-10 4.68956e-10 4.48303e-10 4.27717e-10 - 4.07226e-10 3.86863e-10 3.66664e-10 3.46672e-10 3.26936e-10 3.07515e-10 2.88485e-10 2.69938e-10 2.51995e-10 2.34817e-10 2.18616e-10 2.03685e-10 - 1.90427e-10 1.79386e-10 1.71272e-10 1.66891e-10 8.66775e-10 8.60785e-10 8.50257e-10 8.36584e-10 8.20757e-10 8.03428e-10 7.85018e-10 7.65809e-10 - 7.45992e-10 7.25705e-10 7.05046e-10 6.84091e-10 6.62898e-10 6.41513e-10 6.19975e-10 5.98315e-10 5.7656e-10 5.54734e-10 5.3286e-10 5.10956e-10 - 4.89044e-10 4.6714e-10 4.45266e-10 4.2344e-10 4.01685e-10 3.80025e-10 3.58487e-10 3.37102e-10 3.15909e-10 2.94954e-10 2.74295e-10 2.54008e-10 - 2.34191e-10 2.14982e-10 1.96572e-10 1.79243e-10 1.63416e-10 1.49743e-10 1.39215e-10 1.33225e-10 9.06432e-10 8.9738e-10 8.83044e-10 8.65747e-10 - 8.46703e-10 8.26552e-10 8.05653e-10 7.84221e-10 7.62394e-10 7.40266e-10 7.17903e-10 6.95355e-10 6.72659e-10 6.49844e-10 6.26935e-10 6.0395e-10 - 5.80907e-10 5.5782e-10 5.34704e-10 5.1157e-10 4.8843e-10 4.65296e-10 4.4218e-10 4.19093e-10 3.9605e-10 3.73065e-10 3.50156e-10 3.27341e-10 - 3.04645e-10 2.82097e-10 2.59734e-10 2.37606e-10 2.15779e-10 1.94347e-10 1.73448e-10 1.53297e-10 1.34253e-10 1.16956e-10 1.0262e-10 9.3568e-11 - 9.55141e-10 9.39259e-10 9.18791e-10 8.96658e-10 8.73757e-10 8.50425e-10 8.2682e-10 8.03027e-10 7.79096e-10 7.55061e-10 7.30946e-10 7.06768e-10 - 6.82539e-10 6.5827e-10 6.33969e-10 6.09643e-10 5.85297e-10 5.60937e-10 5.36566e-10 5.12189e-10 4.87811e-10 4.63434e-10 4.39063e-10 4.14703e-10 - 3.90357e-10 3.66031e-10 3.4173e-10 3.17461e-10 2.93232e-10 2.69054e-10 2.44939e-10 2.20904e-10 1.96973e-10 1.7318e-10 1.49575e-10 1.26243e-10 - 1.03342e-10 8.12093e-11 6.07411e-11 4.48592e-11 - - - 4.32185e-15 -4.32185e-15 0 1.29385e-14 -4.2948e-15 0 2.14742e-14 -4.24087e-15 0 2.98755e-14 -4.16046e-15 0 - 3.80901e-14 -4.05412e-15 0 4.60668e-14 -3.92258e-15 0 5.37561e-14 -3.76675e-15 0 6.11105e-14 -3.58768e-15 0 - 6.80848e-14 -3.38658e-15 0 7.46361e-14 -3.16477e-15 0 8.07246e-14 -2.9237e-15 0 8.63133e-14 -2.66494e-15 0 - 9.13683e-14 -2.39011e-15 0 9.58594e-14 -2.10096e-15 0 9.97596e-14 -1.79925e-15 0 1.03046e-13 -1.48685e-15 0 - 1.05698e-13 -1.16564e-15 0 1.07701e-13 -8.37542e-16 0 1.09043e-13 -5.04506e-16 0 1.09716e-13 -1.68499e-16 0 - 1.09716e-13 1.68499e-16 0 1.09043e-13 5.04506e-16 0 1.07701e-13 8.37542e-16 0 1.05698e-13 1.16564e-15 0 - 1.03046e-13 1.48685e-15 0 9.97596e-14 1.79925e-15 0 9.58594e-14 2.10096e-15 0 9.13683e-14 2.39011e-15 0 - 8.63133e-14 2.66494e-15 0 8.07246e-14 2.9237e-15 0 7.46361e-14 3.16477e-15 0 6.80848e-14 3.38658e-15 0 - 6.11105e-14 3.58768e-15 0 5.37561e-14 3.76675e-15 0 4.60668e-14 3.92258e-15 0 3.80901e-14 4.05412e-15 0 - 2.98755e-14 4.16046e-15 0 2.14742e-14 4.24087e-15 0 1.29385e-14 4.2948e-15 0 4.32185e-15 4.32185e-15 0 - 4.34891e-15 -1.29926e-14 0 1.30195e-14 -1.29113e-14 0 2.16085e-14 -1.27491e-14 0 3.00623e-14 -1.25073e-14 0 - 3.8328e-14 -1.21876e-14 0 4.63541e-14 -1.1792e-14 0 5.4091e-14 -1.13235e-14 0 6.14907e-14 -1.07851e-14 0 - 6.85077e-14 -1.01804e-14 0 7.5099e-14 -9.51356e-15 0 8.12244e-14 -8.78881e-15 0 8.68468e-14 -8.01086e-15 0 - 9.19323e-14 -7.18467e-15 0 9.64502e-14 -6.31541e-15 0 1.00374e-13 -5.40846e-15 0 1.03679e-13 -4.46937e-15 0 - 1.06347e-13 -3.50381e-15 0 1.08363e-13 -2.51757e-15 0 1.09712e-13 -1.51649e-15 0 1.10389e-13 -5.06488e-16 0 - 1.10389e-13 5.06488e-16 0 1.09712e-13 1.51649e-15 0 1.08363e-13 2.51757e-15 0 1.06347e-13 3.50381e-15 0 - 1.03679e-13 4.46937e-15 0 1.00374e-13 5.40846e-15 0 9.64502e-14 6.31541e-15 0 9.19323e-14 7.18467e-15 0 - 8.68468e-14 8.01086e-15 0 8.12244e-14 8.78881e-15 0 7.5099e-14 9.51356e-15 0 6.85077e-14 1.01804e-14 0 - 6.14907e-14 1.07851e-14 0 5.4091e-14 1.13235e-14 0 4.63541e-14 1.1792e-14 0 3.8328e-14 1.21876e-14 0 - 3.00623e-14 1.25073e-14 0 2.16085e-14 1.27491e-14 0 1.30195e-14 1.29113e-14 0 4.34891e-15 1.29926e-14 0 - 4.40321e-15 -2.17447e-14 0 1.3182e-14 -2.16085e-14 0 2.18781e-14 -2.1337e-14 0 3.04371e-14 -2.09321e-14 0 - 3.88054e-14 -2.03967e-14 0 4.69308e-14 -1.97345e-14 0 5.47631e-14 -1.89501e-14 0 6.22536e-14 -1.80487e-14 0 - 6.93563e-14 -1.70365e-14 0 7.60278e-14 -1.59202e-14 0 8.22273e-14 -1.47071e-14 0 8.79174e-14 -1.3405e-14 0 - 9.30638e-14 -1.20223e-14 0 9.76356e-14 -1.05676e-14 0 1.01606e-13 -9.04981e-15 0 1.0495e-13 -7.47836e-15 0 - 1.0765e-13 -5.86267e-15 0 1.09689e-13 -4.21242e-15 0 1.11054e-13 -2.53739e-15 0 1.11739e-13 -8.47453e-16 0 - 1.11739e-13 8.47453e-16 0 1.11054e-13 2.53739e-15 0 1.09689e-13 4.21242e-15 0 1.0765e-13 5.86267e-15 0 - 1.0495e-13 7.47836e-15 0 1.01606e-13 9.04981e-15 0 9.76356e-14 1.05676e-14 0 9.30638e-14 1.20223e-14 0 - 8.79174e-14 1.3405e-14 0 8.22273e-14 1.47071e-14 0 7.60278e-14 1.59202e-14 0 6.93563e-14 1.70365e-14 0 - 6.22536e-14 1.80487e-14 0 5.47631e-14 1.89501e-14 0 4.69308e-14 1.97345e-14 0 3.88054e-14 2.03967e-14 0 - 3.04371e-14 2.09321e-14 0 2.18781e-14 2.1337e-14 0 1.3182e-14 2.16085e-14 0 4.40321e-15 2.17447e-14 0 - 4.48514e-15 -3.06331e-14 0 1.34272e-14 -3.0441e-14 0 2.22849e-14 -3.00582e-14 0 3.10025e-14 -2.94875e-14 0 - 3.95256e-14 -2.87327e-14 0 4.78008e-14 -2.77993e-14 0 5.57768e-14 -2.66936e-14 0 6.34043e-14 -2.54232e-14 0 - 7.06362e-14 -2.39967e-14 0 7.74284e-14 -2.24237e-14 0 8.37396e-14 -2.07144e-14 0 8.95317e-14 -1.88799e-14 0 - 9.47698e-14 -1.69319e-14 0 9.94227e-14 -1.48827e-14 0 1.03463e-13 -1.27449e-14 0 1.06866e-13 -1.05316e-14 0 - 1.09613e-13 -8.2561e-15 0 1.11688e-13 -5.93205e-15 0 1.13077e-13 -3.57319e-15 0 1.13774e-13 -1.19339e-15 0 - 1.13774e-13 1.19339e-15 0 1.13077e-13 3.57319e-15 0 1.11688e-13 5.93205e-15 0 1.09613e-13 8.2561e-15 0 - 1.06866e-13 1.05316e-14 0 1.03463e-13 1.27449e-14 0 9.94227e-14 1.48827e-14 0 9.47698e-14 1.69319e-14 0 - 8.95317e-14 1.88799e-14 0 8.37396e-14 2.07144e-14 0 7.74284e-14 2.24237e-14 0 7.06362e-14 2.39967e-14 0 - 6.34043e-14 2.54232e-14 0 5.57768e-14 2.66936e-14 0 4.78008e-14 2.77993e-14 0 3.95256e-14 2.87327e-14 0 - 3.10025e-14 2.94875e-14 0 2.22849e-14 3.00582e-14 0 1.34272e-14 3.0441e-14 0 4.48514e-15 3.06331e-14 0 - 4.59528e-15 -3.97135e-14 0 1.37568e-14 -3.94642e-14 0 2.28316e-14 -3.89675e-14 0 3.17626e-14 -3.82268e-14 0 - 4.04936e-14 -3.72474e-14 0 4.897e-14 -3.60363e-14 0 5.71391e-14 -3.46018e-14 0 6.49504e-14 -3.29538e-14 0 - 7.23559e-14 -3.11035e-14 0 7.93101e-14 -2.90634e-14 0 8.57711e-14 -2.68468e-14 0 9.16998e-14 -2.44682e-14 0 - 9.7061e-14 -2.19428e-14 0 1.01823e-13 -1.92864e-14 0 1.05957e-13 -1.65155e-14 0 1.09439e-13 -1.3647e-14 0 - 1.1225e-13 -1.06981e-14 0 1.14372e-13 -7.6865e-15 0 1.15793e-13 -4.62993e-15 0 1.16506e-13 -1.54632e-15 0 - 1.16506e-13 1.54632e-15 0 1.15793e-13 4.62993e-15 0 1.14372e-13 7.6865e-15 0 1.1225e-13 1.06981e-14 0 - 1.09439e-13 1.3647e-14 0 1.05957e-13 1.65155e-14 0 1.01823e-13 1.92864e-14 0 9.7061e-14 2.19428e-14 0 - 9.16998e-14 2.44682e-14 0 8.57711e-14 2.68468e-14 0 7.93101e-14 2.90634e-14 0 7.23559e-14 3.11035e-14 0 - 6.49504e-14 3.29538e-14 0 5.71391e-14 3.46018e-14 0 4.897e-14 3.60363e-14 0 4.04936e-14 3.72474e-14 0 - 3.17626e-14 3.82268e-14 0 2.28316e-14 3.89675e-14 0 1.37568e-14 3.94642e-14 0 4.59528e-15 3.97135e-14 0 - 4.73441e-15 -4.90432e-14 0 1.41732e-14 -4.87349e-14 0 2.35223e-14 -4.81207e-14 0 3.27226e-14 -4.72048e-14 0 - 4.17161e-14 -4.59939e-14 0 5.04465e-14 -4.44966e-14 0 5.88593e-14 -4.27234e-14 0 6.69025e-14 -4.06866e-14 0 - 7.45266e-14 -3.84002e-14 0 8.16851e-14 -3.58795e-14 0 8.83348e-14 -3.31413e-14 0 9.44357e-14 -3.02034e-14 0 - 9.99516e-14 -2.70846e-14 0 1.0485e-13 -2.38046e-14 0 1.09102e-13 -2.03837e-14 0 1.12684e-13 -1.68427e-14 0 - 1.15574e-13 -1.32029e-14 0 1.17756e-13 -9.48591e-15 0 1.19218e-13 -5.7137e-15 0 1.19951e-13 -1.90826e-15 0 - 1.19951e-13 1.90826e-15 0 1.19218e-13 5.7137e-15 0 1.17756e-13 9.48591e-15 0 1.15574e-13 1.32029e-14 0 - 1.12684e-13 1.68427e-14 0 1.09102e-13 2.03837e-14 0 1.0485e-13 2.38046e-14 0 9.99516e-14 2.70846e-14 0 - 9.44357e-14 3.02034e-14 0 8.83348e-14 3.31413e-14 0 8.16851e-14 3.58795e-14 0 7.45266e-14 3.84002e-14 0 - 6.69025e-14 4.06866e-14 0 5.88593e-14 4.27234e-14 0 5.04465e-14 4.44966e-14 0 4.17161e-14 4.59939e-14 0 - 3.27226e-14 4.72048e-14 0 2.35223e-14 4.81207e-14 0 1.41732e-14 4.87349e-14 0 4.73441e-15 4.90432e-14 0 - 4.90353e-15 -5.86811e-14 0 1.46794e-14 -5.83117e-14 0 2.43618e-14 -5.75754e-14 0 3.38893e-14 -5.64778e-14 0 - 4.32017e-14 -5.50268e-14 0 5.22405e-14 -5.32329e-14 0 6.09491e-14 -5.11087e-14 0 6.92737e-14 -4.86691e-14 0 - 7.7163e-14 -4.59311e-14 0 8.4569e-14 -4.29132e-14 0 9.14472e-14 -3.96355e-14 0 9.77565e-14 -3.61195e-14 0 - 1.0346e-13 -3.23877e-14 0 1.08524e-13 -2.84638e-14 0 1.12919e-13 -2.43719e-14 0 1.1662e-13 -2.01371e-14 0 - 1.19606e-13 -1.57848e-14 0 1.21861e-13 -1.13406e-14 0 1.23371e-13 -6.8307e-15 0 1.24128e-13 -2.2813e-15 0 - 1.24128e-13 2.2813e-15 0 1.23371e-13 6.8307e-15 0 1.21861e-13 1.13406e-14 0 1.19606e-13 1.57848e-14 0 - 1.1662e-13 2.01371e-14 0 1.12919e-13 2.43719e-14 0 1.08524e-13 2.84638e-14 0 1.0346e-13 3.23877e-14 0 - 9.77565e-14 3.61195e-14 0 9.14472e-14 3.96355e-14 0 8.4569e-14 4.29132e-14 0 7.7163e-14 4.59311e-14 0 - 6.92737e-14 4.86691e-14 0 6.09491e-14 5.11087e-14 0 5.22405e-14 5.32329e-14 0 4.32017e-14 5.50268e-14 0 - 3.38893e-14 5.64778e-14 0 2.43618e-14 5.75754e-14 0 1.46794e-14 5.83117e-14 0 4.90353e-15 5.86811e-14 0 - 5.10387e-15 -6.86885e-14 0 1.52789e-14 -6.82551e-14 0 2.53561e-14 -6.73916e-14 0 3.52712e-14 -6.61043e-14 0 - 4.49611e-14 -6.44027e-14 0 5.43647e-14 -6.22993e-14 0 6.34231e-14 -5.98092e-14 0 7.20801e-14 -5.69501e-14 0 - 8.02826e-14 -5.37419e-14 0 8.79808e-14 -5.02066e-14 0 9.51285e-14 -4.6368e-14 0 1.01683e-13 -4.22512e-14 0 - 1.07607e-13 -3.7883e-14 0 1.12866e-13 -3.32908e-14 0 1.17429e-13 -2.85032e-14 0 1.21271e-13 -2.35492e-14 0 - 1.2437e-13 -1.84584e-14 0 1.2671e-13 -1.3261e-14 0 1.28277e-13 -7.98722e-15 0 1.29063e-13 -2.66751e-15 0 - 1.29063e-13 2.66751e-15 0 1.28277e-13 7.98722e-15 0 1.2671e-13 1.3261e-14 0 1.2437e-13 1.84584e-14 0 - 1.21271e-13 2.35492e-14 0 1.17429e-13 2.85032e-14 0 1.12866e-13 3.32908e-14 0 1.07607e-13 3.7883e-14 0 - 1.01683e-13 4.22512e-14 0 9.51285e-14 4.6368e-14 0 8.79808e-14 5.02066e-14 0 8.02826e-14 5.37419e-14 0 - 7.20801e-14 5.69501e-14 0 6.34231e-14 5.98092e-14 0 5.43647e-14 6.22993e-14 0 4.49611e-14 6.44027e-14 0 - 3.52712e-14 6.61043e-14 0 2.53561e-14 6.73916e-14 0 1.52789e-14 6.82551e-14 0 5.10387e-15 6.86885e-14 0 - 5.33691e-15 -7.91293e-14 0 1.59763e-14 -7.86287e-14 0 2.65126e-14 -7.76315e-14 0 3.68782e-14 -7.6145e-14 0 - 4.70067e-14 -7.41805e-14 0 5.6834e-14 -7.17525e-14 0 6.62984e-14 -6.88788e-14 0 7.5341e-14 -6.55802e-14 0 - 8.39065e-14 -6.18798e-14 0 9.1943e-14 -5.78034e-14 0 9.94026e-14 -5.33785e-14 0 1.06241e-13 -4.86346e-14 0 - 1.1242e-13 -4.36022e-14 0 1.17903e-13 -3.83134e-14 0 1.2266e-13 -3.28008e-14 0 1.26665e-13 -2.70979e-14 0 - 1.29894e-13 -2.12388e-14 0 1.32332e-13 -1.52578e-14 0 1.33964e-13 -9.18964e-15 0 1.34783e-13 -3.06904e-15 0 - 1.34783e-13 3.06904e-15 0 1.33964e-13 9.18964e-15 0 1.32332e-13 1.52578e-14 0 1.29894e-13 2.12388e-14 0 - 1.26665e-13 2.70979e-14 0 1.2266e-13 3.28008e-14 0 1.17903e-13 3.83134e-14 0 1.1242e-13 4.36022e-14 0 - 1.06241e-13 4.86346e-14 0 9.94026e-14 5.33785e-14 0 9.1943e-14 5.78034e-14 0 8.39065e-14 6.18798e-14 0 - 7.5341e-14 6.55802e-14 0 6.62984e-14 6.88788e-14 0 5.6834e-14 7.17525e-14 0 4.70067e-14 7.41805e-14 0 - 3.68782e-14 7.6145e-14 0 2.65126e-14 7.76315e-14 0 1.59763e-14 7.86287e-14 0 5.33691e-15 7.91293e-14 0 - 5.60441e-15 -9.00706e-14 0 1.67767e-14 -8.94991e-14 0 2.78399e-14 -8.83606e-14 0 3.87222e-14 -8.66637e-14 0 - 4.93536e-14 -8.44217e-14 0 5.96663e-14 -8.16514e-14 0 6.95954e-14 -7.83734e-14 0 7.90791e-14 -7.46119e-14 0 - 8.80594e-14 -7.03937e-14 0 9.6482e-14 -6.57486e-14 0 1.04297e-13 -6.07082e-14 0 1.1146e-13 -5.53062e-14 0 - 1.17928e-13 -4.95779e-14 0 1.23667e-13 -4.35596e-14 0 1.28644e-13 -3.72886e-14 0 1.32833e-13 -3.08029e-14 0 - 1.36211e-13 -2.41411e-14 0 1.38759e-13 -1.73419e-14 0 1.40466e-13 -1.04445e-14 0 1.41321e-13 -3.48804e-15 0 - 1.41321e-13 3.48804e-15 0 1.40466e-13 1.04445e-14 0 1.38759e-13 1.73419e-14 0 1.36211e-13 2.41411e-14 0 - 1.32833e-13 3.08029e-14 0 1.28644e-13 3.72886e-14 0 1.23667e-13 4.35596e-14 0 1.17928e-13 4.95779e-14 0 - 1.1146e-13 5.53062e-14 0 1.04297e-13 6.07082e-14 0 9.6482e-14 6.57486e-14 0 8.80594e-14 7.03937e-14 0 - 7.90791e-14 7.46119e-14 0 6.95954e-14 7.83734e-14 0 5.96663e-14 8.16514e-14 0 4.93536e-14 8.44217e-14 0 - 3.87222e-14 8.66637e-14 0 2.78399e-14 8.83606e-14 0 1.67767e-14 8.94991e-14 0 5.60441e-15 9.00706e-14 0 - 5.90842e-15 -1.01583e-13 0 1.76864e-14 -1.00937e-13 0 2.9348e-14 -9.96479e-14 0 4.0817e-14 -9.77277e-14 0 - 5.20191e-14 -9.51911e-14 0 6.28823e-14 -9.20578e-14 0 7.33378e-14 -8.83516e-14 0 8.33207e-14 -8.41002e-14 0 - 9.27698e-14 -7.93347e-14 0 1.01629e-13 -7.4089e-14 0 1.09845e-13 -6.83994e-14 0 1.17372e-13 -6.23043e-14 0 - 1.24167e-13 -5.58436e-14 0 1.30193e-13 -4.90586e-14 0 1.35417e-13 -4.19912e-14 0 1.39812e-13 -3.46841e-14 0 - 1.43355e-13 -2.71806e-14 0 1.46029e-13 -1.95241e-14 0 1.47818e-13 -1.17583e-14 0 1.48715e-13 -3.92672e-15 0 - 1.48715e-13 3.92672e-15 0 1.47818e-13 1.17583e-14 0 1.46029e-13 1.95241e-14 0 1.43355e-13 2.71806e-14 0 - 1.39812e-13 3.46841e-14 0 1.35417e-13 4.19912e-14 0 1.30193e-13 4.90586e-14 0 1.24167e-13 5.58436e-14 0 - 1.17372e-13 6.23043e-14 0 1.09845e-13 6.83994e-14 0 1.01629e-13 7.4089e-14 0 9.27698e-14 7.93347e-14 0 - 8.33207e-14 8.41002e-14 0 7.33378e-14 8.83516e-14 0 6.28823e-14 9.20578e-14 0 5.20191e-14 9.51911e-14 0 - 4.0817e-14 9.77277e-14 0 2.9348e-14 9.96479e-14 0 1.76864e-14 1.00937e-13 0 5.90842e-15 1.01583e-13 0 - 6.25132e-15 -1.13743e-13 0 1.87123e-14 -1.13016e-13 0 3.10487e-14 -1.11567e-13 0 4.31789e-14 -1.09408e-13 0 - 5.50235e-14 -1.06557e-13 0 6.65058e-14 -1.03037e-13 0 7.7553e-14 -9.8875e-14 0 8.8096e-14 -9.41027e-14 0 - 9.80706e-14 -8.87559e-14 0 1.07417e-13 -8.28733e-14 0 1.16082e-13 -7.64961e-14 0 1.24015e-13 -6.96679e-14 0 - 1.31174e-13 -6.24338e-14 0 1.3752e-13 -5.48399e-14 0 1.43019e-13 -4.69333e-14 0 1.47643e-13 -3.87618e-14 0 - 1.5137e-13 -3.03732e-14 0 1.54182e-13 -2.18158e-14 0 1.56063e-13 -1.31377e-14 0 1.57006e-13 -4.38729e-15 0 - 1.57006e-13 4.38729e-15 0 1.56063e-13 1.31377e-14 0 1.54182e-13 2.18158e-14 0 1.5137e-13 3.03732e-14 0 - 1.47643e-13 3.87618e-14 0 1.43019e-13 4.69333e-14 0 1.3752e-13 5.48399e-14 0 1.31174e-13 6.24338e-14 0 - 1.24015e-13 6.96679e-14 0 1.16082e-13 7.64961e-14 0 1.07417e-13 8.28733e-14 0 9.80706e-14 8.87559e-14 0 - 8.8096e-14 9.41027e-14 0 7.7553e-14 9.8875e-14 0 6.65058e-14 1.03037e-13 0 5.50235e-14 1.06557e-13 0 - 4.31789e-14 1.09408e-13 0 3.10487e-14 1.11567e-13 0 1.87123e-14 1.13016e-13 0 6.25132e-15 1.13743e-13 0 - 6.6359e-15 -1.2663e-13 0 1.98628e-14 -1.25816e-13 0 3.29556e-14 -1.24195e-13 0 4.58264e-14 -1.21781e-13 0 - 5.83901e-14 -1.18593e-13 0 7.05646e-14 -1.14658e-13 0 8.22722e-14 -1.10009e-13 0 9.34398e-14 -1.0468e-13 0 - 1.03999e-13 -9.87129e-14 0 1.13888e-13 -9.2152e-14 0 1.2305e-13 -8.50439e-14 0 1.31434e-13 -7.74376e-14 0 - 1.38995e-13 -6.93836e-14 0 1.45693e-13 -6.09338e-14 0 1.51495e-13 -5.21405e-14 0 1.56372e-13 -4.30565e-14 0 - 1.60301e-13 -3.37347e-14 0 1.63264e-13 -2.42281e-14 0 1.65247e-13 -1.45896e-14 0 1.6624e-13 -4.87198e-15 0 - 1.6624e-13 4.87198e-15 0 1.65247e-13 1.45896e-14 0 1.63264e-13 2.42281e-14 0 1.60301e-13 3.37347e-14 0 - 1.56372e-13 4.30565e-14 0 1.51495e-13 5.21405e-14 0 1.45693e-13 6.09338e-14 0 1.38995e-13 6.93836e-14 0 - 1.31434e-13 7.74376e-14 0 1.2305e-13 8.50439e-14 0 1.13888e-13 9.2152e-14 0 1.03999e-13 9.87129e-14 0 - 9.34398e-14 1.0468e-13 0 8.22722e-14 1.10009e-13 0 7.05646e-14 1.14658e-13 0 5.83901e-14 1.18593e-13 0 - 4.58264e-14 1.21781e-13 0 3.29556e-14 1.24195e-13 0 1.98628e-14 1.25816e-13 0 6.6359e-15 1.2663e-13 0 - 7.06536e-15 -1.40332e-13 0 2.11475e-14 -1.39424e-13 0 3.50843e-14 -1.37617e-13 0 4.87811e-14 -1.34926e-13 0 - 6.21458e-14 -1.31376e-13 0 7.50904e-14 -1.26995e-13 0 8.75316e-14 -1.21821e-13 0 9.93916e-14 -1.15895e-13 0 - 1.10598e-13 -1.09264e-13 0 1.21086e-13 -1.01978e-13 0 1.30796e-13 -9.40898e-14 0 1.39676e-13 -8.56548e-14 0 - 1.47678e-13 -7.67294e-14 0 1.54763e-13 -6.73713e-14 0 1.60896e-13 -5.76384e-14 0 1.66049e-13 -4.75889e-14 0 - 1.70199e-13 -3.72809e-14 0 1.73327e-13 -2.67723e-14 0 1.75419e-13 -1.61205e-14 0 1.76468e-13 -5.38303e-15 0 - 1.76468e-13 5.38303e-15 0 1.75419e-13 1.61205e-14 0 1.73327e-13 2.67723e-14 0 1.70199e-13 3.72809e-14 0 - 1.66049e-13 4.75889e-14 0 1.60896e-13 5.76384e-14 0 1.54763e-13 6.73713e-14 0 1.47678e-13 7.67294e-14 0 - 1.39676e-13 8.56548e-14 0 1.30796e-13 9.40898e-14 0 1.21086e-13 1.01978e-13 0 1.10598e-13 1.09264e-13 0 - 9.93916e-14 1.15895e-13 0 8.75316e-14 1.21821e-13 0 7.50904e-14 1.26995e-13 0 6.21458e-14 1.31376e-13 0 - 4.87811e-14 1.34926e-13 0 3.50843e-14 1.37617e-13 0 2.11475e-14 1.39424e-13 0 7.06536e-15 1.40332e-13 0 - 7.54345e-15 -1.5494e-13 0 2.25774e-14 -1.53931e-13 0 3.74532e-14 -1.51922e-13 0 5.20678e-14 -1.48932e-13 0 - 6.63216e-14 -1.44988e-13 0 8.01195e-14 -1.40125e-13 0 9.33722e-14 -1.34385e-13 0 1.05997e-13 -1.27815e-13 0 - 1.17916e-13 -1.2047e-13 0 1.29063e-13 -1.12406e-13 0 1.39373e-13 -1.03683e-13 0 1.48795e-13 -9.43623e-14 0 - 1.57278e-13 -8.45079e-14 0 1.64784e-13 -7.41834e-14 0 1.71277e-13 -6.34529e-14 0 1.7673e-13 -5.23799e-14 0 - 1.81118e-13 -4.10279e-14 0 1.84425e-13 -2.94596e-14 0 1.86636e-13 -1.77372e-14 0 1.87744e-13 -5.92265e-15 0 - 1.87744e-13 5.92265e-15 0 1.86636e-13 1.77372e-14 0 1.84425e-13 2.94596e-14 0 1.81118e-13 4.10279e-14 0 - 1.7673e-13 5.23799e-14 0 1.71277e-13 6.34529e-14 0 1.64784e-13 7.41834e-14 0 1.57278e-13 8.45079e-14 0 - 1.48795e-13 9.43623e-14 0 1.39373e-13 1.03683e-13 0 1.29063e-13 1.12406e-13 0 1.17916e-13 1.2047e-13 0 - 1.05997e-13 1.27815e-13 0 9.33722e-14 1.34385e-13 0 8.01195e-14 1.40125e-13 0 6.63216e-14 1.44988e-13 0 - 5.20678e-14 1.48932e-13 0 3.74532e-14 1.51922e-13 0 2.25774e-14 1.53931e-13 0 7.54345e-15 1.5494e-13 0 - 8.07449e-15 -1.70558e-13 0 2.41655e-14 -1.69438e-13 0 4.00833e-14 -1.67209e-13 0 5.57153e-14 -1.63892e-13 0 - 7.09532e-14 -1.5952e-13 0 8.56939e-14 -1.54132e-13 0 9.98411e-14 -1.47778e-13 0 1.13306e-13 -1.40512e-13 0 - 1.26008e-13 -1.32395e-13 0 1.37874e-13 -1.23493e-13 0 1.4884e-13 -1.13873e-13 0 1.58851e-13 -1.03604e-13 0 - 1.67857e-13 -9.27565e-14 0 1.75818e-13 -8.14017e-14 0 1.827e-13 -6.96097e-14 0 1.88474e-13 -5.74499e-14 0 - 1.93119e-13 -4.49911e-14 0 1.96617e-13 -3.23009e-14 0 1.98956e-13 -1.94462e-14 0 2.00128e-13 -6.49297e-15 0 - 2.00128e-13 6.49297e-15 0 1.98956e-13 1.94462e-14 0 1.96617e-13 3.23009e-14 0 1.93119e-13 4.49911e-14 0 - 1.88474e-13 5.74499e-14 0 1.827e-13 6.96097e-14 0 1.75818e-13 8.14017e-14 0 1.67857e-13 9.27565e-14 0 - 1.58851e-13 1.03604e-13 0 1.4884e-13 1.13873e-13 0 1.37874e-13 1.23493e-13 0 1.26008e-13 1.32395e-13 0 - 1.13306e-13 1.40512e-13 0 9.98411e-14 1.47778e-13 0 8.56939e-14 1.54132e-13 0 7.09532e-14 1.5952e-13 0 - 5.57153e-14 1.63892e-13 0 4.00833e-14 1.67209e-13 0 2.41655e-14 1.69438e-13 0 8.07449e-15 1.70558e-13 0 - 8.66355e-15 -1.87296e-13 0 2.59267e-14 -1.86054e-13 0 4.29991e-14 -1.83583e-13 0 5.97571e-14 -1.79908e-13 0 - 7.6082e-14 -1.75067e-13 0 9.18618e-14 -1.69106e-13 0 1.06992e-13 -1.62082e-13 0 1.21379e-13 -1.54059e-13 0 - 1.34935e-13 -1.45106e-13 0 1.47585e-13 -1.35298e-13 0 1.59263e-13 -1.24711e-13 0 1.69911e-13 -1.13423e-13 0 - 1.7948e-13 -1.01513e-13 0 1.87931e-13 -8.90573e-14 0 1.95229e-13 -7.61342e-14 0 2.01348e-13 -6.2819e-14 0 - 2.06267e-13 -4.91857e-14 0 2.09969e-13 -3.53068e-14 0 2.12444e-13 -2.12535e-14 0 2.13683e-13 -7.09605e-15 0 - 2.13683e-13 7.09605e-15 0 2.12444e-13 2.12535e-14 0 2.09969e-13 3.53068e-14 0 2.06267e-13 4.91857e-14 0 - 2.01348e-13 6.2819e-14 0 1.95229e-13 7.61342e-14 0 1.87931e-13 8.90573e-14 0 1.7948e-13 1.01513e-13 0 - 1.69911e-13 1.13423e-13 0 1.59263e-13 1.24711e-13 0 1.47585e-13 1.35298e-13 0 1.34935e-13 1.45106e-13 0 - 1.21379e-13 1.54059e-13 0 1.06992e-13 1.62082e-13 0 9.18618e-14 1.69106e-13 0 7.6082e-14 1.75067e-13 0 - 5.97571e-14 1.79908e-13 0 4.29991e-14 1.83583e-13 0 2.59267e-14 1.86054e-13 0 8.66355e-15 1.87296e-13 0 - 9.31653e-15 -2.05277e-13 0 2.78787e-14 -2.039e-13 0 4.62294e-14 -2.01161e-13 0 6.42319e-14 -1.97091e-13 0 - 8.17559e-14 -1.91733e-13 0 9.86788e-14 -1.85142e-13 0 1.14888e-13 -1.77385e-13 0 1.30281e-13 -1.68535e-13 0 - 1.44768e-13 -1.58673e-13 0 1.58269e-13 -1.47883e-13 0 1.70715e-13 -1.36251e-13 0 1.82049e-13 -1.23866e-13 0 - 1.92223e-13 -1.10813e-13 0 2.01196e-13 -9.71806e-14 0 2.08938e-13 -8.30509e-14 0 2.15423e-13 -6.85062e-14 0 - 2.20631e-13 -5.36259e-14 0 2.2455e-13 -3.8487e-14 0 2.27167e-13 -2.31651e-14 0 2.28477e-13 -7.73379e-15 0 - 2.28477e-13 7.73379e-15 0 2.27167e-13 2.31651e-14 0 2.2455e-13 3.8487e-14 0 2.20631e-13 5.36259e-14 0 - 2.15423e-13 6.85062e-14 0 2.08938e-13 8.30509e-14 0 2.01196e-13 9.71806e-14 0 1.92223e-13 1.10813e-13 0 - 1.82049e-13 1.23866e-13 0 1.70715e-13 1.36251e-13 0 1.58269e-13 1.47883e-13 0 1.44768e-13 1.58673e-13 0 - 1.30281e-13 1.68535e-13 0 1.14888e-13 1.77385e-13 0 9.86788e-14 1.85142e-13 0 8.17559e-14 1.91733e-13 0 - 6.42319e-14 1.97091e-13 0 4.62294e-14 2.01161e-13 0 2.78787e-14 2.039e-13 0 9.31653e-15 2.05277e-13 0 - 1.00404e-14 -2.24634e-13 0 3.00421e-14 -2.23106e-13 0 4.98078e-14 -2.20071e-13 0 6.91854e-14 -2.15562e-13 0 - 8.80308e-14 -2.09631e-13 0 1.0621e-13 -2.02345e-13 0 1.23599e-13 -1.93781e-13 0 1.40091e-13 -1.84024e-13 0 - 1.55587e-13 -1.73168e-13 0 1.70007e-13 -1.61309e-13 0 1.8328e-13 -1.48545e-13 0 1.95348e-13 -1.34975e-13 0 - 2.06165e-13 -1.20695e-13 0 2.15694e-13 -1.05801e-13 0 2.23904e-13 -9.03827e-14 0 2.30773e-13 -7.45291e-14 0 - 2.36286e-13 -5.83245e-14 0 2.4043e-13 -4.18504e-14 0 2.43197e-13 -2.51859e-14 0 2.44582e-13 -8.40786e-15 0 - 2.44582e-13 8.40786e-15 0 2.43197e-13 2.51859e-14 0 2.4043e-13 4.18504e-14 0 2.36286e-13 5.83245e-14 0 - 2.30773e-13 7.45291e-14 0 2.23904e-13 9.03827e-14 0 2.15694e-13 1.05801e-13 0 2.06165e-13 1.20695e-13 0 - 1.95348e-13 1.34975e-13 0 1.8328e-13 1.48545e-13 0 1.70007e-13 1.61309e-13 0 1.55587e-13 1.73168e-13 0 - 1.40091e-13 1.84024e-13 0 1.23599e-13 1.93781e-13 0 1.0621e-13 2.02345e-13 0 8.80308e-14 2.09631e-13 0 - 6.91854e-14 2.15562e-13 0 4.98078e-14 2.20071e-13 0 3.00421e-14 2.23106e-13 0 1.00404e-14 2.24634e-13 0 - 1.08436e-14 -2.45518e-13 0 3.24415e-14 -2.43822e-13 0 5.37741e-14 -2.40453e-13 0 7.46712e-14 -2.35454e-13 0 - 9.49723e-14 -2.28886e-13 0 1.14529e-13 -2.20827e-13 0 1.33209e-13 -2.11369e-13 0 1.50894e-13 -2.00612e-13 0 - 1.67484e-13 -1.88665e-13 0 1.82892e-13 -1.75639e-13 0 1.97049e-13 -1.61644e-13 0 2.09899e-13 -1.46793e-13 0 - 2.21397e-13 -1.31192e-13 0 2.31509e-13 -1.14944e-13 0 2.4021e-13 -9.81501e-14 0 2.47481e-13 -8.09029e-14 0 - 2.5331e-13 -6.32926e-14 0 2.57688e-13 -4.54043e-14 0 2.60609e-13 -2.73202e-14 0 2.62071e-13 -9.11961e-15 0 - 2.62071e-13 9.11961e-15 0 2.60609e-13 2.73202e-14 0 2.57688e-13 4.54043e-14 0 2.5331e-13 6.32926e-14 0 - 2.47481e-13 8.09029e-14 0 2.4021e-13 9.81501e-14 0 2.31509e-13 1.14944e-13 0 2.21397e-13 1.31192e-13 0 - 2.09899e-13 1.46793e-13 0 1.97049e-13 1.61644e-13 0 1.82892e-13 1.75639e-13 0 1.67484e-13 1.88665e-13 0 - 1.50894e-13 2.00612e-13 0 1.33209e-13 2.11369e-13 0 1.14529e-13 2.20827e-13 0 9.49723e-14 2.28886e-13 0 - 7.46712e-14 2.35454e-13 0 5.37741e-14 2.40453e-13 0 3.24415e-14 2.43822e-13 0 1.08436e-14 2.45518e-13 0 - 1.17358e-14 -2.68097e-13 0 3.51063e-14 -2.66211e-13 0 5.8176e-14 -2.62466e-13 0 8.0753e-14 -2.56915e-13 0 - 1.02658e-13 -2.49631e-13 0 1.23726e-13 -2.40708e-13 0 1.43814e-13 -2.30255e-13 0 1.62794e-13 -2.18392e-13 0 - 1.80561e-13 -2.05243e-13 0 1.97028e-13 -1.90937e-13 0 2.12126e-13 -1.75601e-13 0 2.25801e-13 -1.59361e-13 0 - 2.38014e-13 -1.42334e-13 0 2.48735e-13 -1.24635e-13 0 2.57945e-13 -1.0637e-13 0 2.65631e-13 -8.76401e-14 0 - 2.71785e-13 -6.85385e-14 0 2.76403e-13 -4.91541e-14 0 2.79482e-13 -2.9571e-14 0 2.81022e-13 -9.87001e-15 0 - 2.81022e-13 9.87001e-15 0 2.79482e-13 2.9571e-14 0 2.76403e-13 4.91541e-14 0 2.71785e-13 6.85385e-14 0 - 2.65631e-13 8.76401e-14 0 2.57945e-13 1.0637e-13 0 2.48735e-13 1.24635e-13 0 2.38014e-13 1.42334e-13 0 - 2.25801e-13 1.59361e-13 0 2.12126e-13 1.75601e-13 0 1.97028e-13 1.90937e-13 0 1.80561e-13 2.05243e-13 0 - 1.62794e-13 2.18392e-13 0 1.43814e-13 2.30255e-13 0 1.23726e-13 2.40708e-13 0 1.02658e-13 2.49631e-13 0 - 8.0753e-14 2.56915e-13 0 5.8176e-14 2.62466e-13 0 3.51063e-14 2.66211e-13 0 1.17358e-14 2.68097e-13 0 - 1.27293e-14 -2.92562e-13 0 3.8072e-14 -2.90459e-13 0 6.30706e-14 -2.86287e-13 0 8.75071e-14 -2.80108e-13 0 - 1.11179e-13 -2.72014e-13 0 1.33905e-13 -2.62119e-13 0 1.55526e-13 -2.50552e-13 0 1.75907e-13 -2.37456e-13 0 - 1.94938e-13 -2.22977e-13 0 2.12533e-13 -2.07265e-13 0 2.28626e-13 -1.90464e-13 0 2.43166e-13 -1.72714e-13 0 - 2.56122e-13 -1.54149e-13 0 2.67473e-13 -1.34891e-13 0 2.77205e-13 -1.15056e-13 0 2.85313e-13 -9.47486e-14 0 - 2.91796e-13 -7.40672e-14 0 2.96656e-13 -5.31025e-14 0 2.99894e-13 -3.19396e-14 0 3.01512e-13 -1.06595e-14 0 - 3.01512e-13 1.06595e-14 0 2.99894e-13 3.19396e-14 0 2.96656e-13 5.31025e-14 0 2.91796e-13 7.40672e-14 0 - 2.85313e-13 9.47486e-14 0 2.77205e-13 1.15056e-13 0 2.67473e-13 1.34891e-13 0 2.56122e-13 1.54149e-13 0 - 2.43166e-13 1.72714e-13 0 2.28626e-13 1.90464e-13 0 2.12533e-13 2.07265e-13 0 1.94938e-13 2.22977e-13 0 - 1.75907e-13 2.37456e-13 0 1.55526e-13 2.50552e-13 0 1.33905e-13 2.62119e-13 0 1.11179e-13 2.72014e-13 0 - 8.75071e-14 2.80108e-13 0 6.30706e-14 2.86287e-13 0 3.8072e-14 2.90459e-13 0 1.27293e-14 2.92562e-13 0 - 1.38386e-14 -3.1913e-13 0 4.13817e-14 -3.16777e-13 0 6.85274e-14 -3.12113e-13 0 9.50255e-14 -3.05216e-13 0 - 1.20647e-13 -2.96199e-13 0 1.45188e-13 -2.85201e-13 0 1.68477e-13 -2.72379e-13 0 1.90369e-13 -2.57903e-13 0 - 2.10752e-13 -2.41946e-13 0 2.29542e-13 -2.24681e-13 0 2.46676e-13 -2.06274e-13 0 2.62116e-13 -1.86884e-13 0 - 2.75837e-13 -1.66656e-13 0 2.87828e-13 -1.45725e-13 0 2.98088e-13 -1.24213e-13 0 3.0662e-13 -1.02231e-13 0 - 3.13431e-13 -7.98793e-14 0 3.1853e-13 -5.72492e-14 0 3.21925e-13 -3.44255e-14 0 3.23621e-13 -1.14877e-14 0 - 3.23621e-13 1.14877e-14 0 3.21925e-13 3.44255e-14 0 3.1853e-13 5.72492e-14 0 3.13431e-13 7.98793e-14 0 - 3.0662e-13 1.02231e-13 0 2.98088e-13 1.24213e-13 0 2.87828e-13 1.45725e-13 0 2.75837e-13 1.66656e-13 0 - 2.62116e-13 1.86884e-13 0 2.46676e-13 2.06274e-13 0 2.29542e-13 2.24681e-13 0 2.10752e-13 2.41946e-13 0 - 1.90369e-13 2.57903e-13 0 1.68477e-13 2.72379e-13 0 1.45188e-13 2.85201e-13 0 1.20647e-13 2.96199e-13 0 - 9.50255e-14 3.05216e-13 0 6.85274e-14 3.12113e-13 0 4.13817e-14 3.16777e-13 0 1.38386e-14 3.1913e-13 0 - 1.50819e-14 -3.4805e-13 0 4.50888e-14 -3.45407e-13 0 7.46316e-14 -3.40172e-13 0 1.03421e-13 -3.32445e-13 0 - 1.31195e-13 -3.22366e-13 0 1.57725e-13 -3.10107e-13 0 1.82824e-13 -2.9586e-13 0 2.0634e-13 -2.7983e-13 0 - 2.2816e-13 -2.62222e-13 0 2.48205e-13 -2.43238e-13 0 2.66422e-13 -2.23069e-13 0 2.82784e-13 -2.01891e-13 0 - 2.97281e-13 -1.79867e-13 0 3.09915e-13 -1.5714e-13 0 3.20699e-13 -1.33841e-13 0 3.29647e-13 -1.10084e-13 0 - 3.36778e-13 -8.59695e-14 0 3.42109e-13 -6.15894e-14 0 3.45655e-13 -3.70254e-14 0 3.47425e-13 -1.23536e-14 0 - 3.47425e-13 1.23536e-14 0 3.45655e-13 3.70254e-14 0 3.42109e-13 6.15894e-14 0 3.36778e-13 8.59695e-14 0 - 3.29647e-13 1.10084e-13 0 3.20699e-13 1.33841e-13 0 3.09915e-13 1.5714e-13 0 2.97281e-13 1.79867e-13 0 - 2.82784e-13 2.01891e-13 0 2.66422e-13 2.23069e-13 0 2.48205e-13 2.43238e-13 0 2.2816e-13 2.62222e-13 0 - 2.0634e-13 2.7983e-13 0 1.82824e-13 2.9586e-13 0 1.57725e-13 3.10107e-13 0 1.31195e-13 3.22366e-13 0 - 1.03421e-13 3.32445e-13 0 7.46316e-14 3.40172e-13 0 4.50888e-14 3.45407e-13 0 1.50819e-14 3.4805e-13 0 - 1.64819e-14 -3.79614e-13 0 4.926e-14 -3.76628e-13 0 8.14894e-14 -3.70723e-13 0 1.12832e-13 -3.62025e-13 0 - 1.42985e-13 -3.50713e-13 0 1.71694e-13 -3.37e-13 0 1.98754e-13 -3.21125e-13 0 2.24007e-13 -3.03334e-13 0 - 2.47344e-13 -2.83875e-13 0 2.68695e-13 -2.62981e-13 0 2.88023e-13 -2.40872e-13 0 3.05318e-13 -2.17746e-13 0 - 3.20588e-13 -1.93779e-13 0 3.33854e-13 -1.69128e-13 0 3.45144e-13 -1.43927e-13 0 3.54491e-13 -1.18293e-13 0 - 3.61925e-13 -9.23257e-14 0 3.67474e-13 -6.61134e-14 0 3.71161e-13 -3.97331e-14 0 3.73e-13 -1.32551e-14 0 - 3.73e-13 1.32551e-14 0 3.71161e-13 3.97331e-14 0 3.67474e-13 6.61134e-14 0 3.61925e-13 9.23257e-14 0 - 3.54491e-13 1.18293e-13 0 3.45144e-13 1.43927e-13 0 3.33854e-13 1.69128e-13 0 3.20588e-13 1.93779e-13 0 - 3.05318e-13 2.17746e-13 0 2.88023e-13 2.40872e-13 0 2.68695e-13 2.62981e-13 0 2.47344e-13 2.83875e-13 0 - 2.24007e-13 3.03334e-13 0 1.98754e-13 3.21125e-13 0 1.71694e-13 3.37e-13 0 1.42985e-13 3.50713e-13 0 - 1.12832e-13 3.62025e-13 0 8.14894e-14 3.70723e-13 0 4.926e-14 3.76628e-13 0 1.64819e-14 3.79614e-13 0 - 1.80677e-14 -4.14164e-13 0 5.39799e-14 -4.10769e-13 0 8.92346e-14 -4.04066e-13 0 1.23431e-13 -3.9422e-13 0 - 1.5622e-13 -3.8146e-13 0 1.87313e-13 -3.66056e-13 0 2.16489e-13 -3.48304e-13 0 2.4359e-13 -3.28508e-13 0 - 2.68514e-13 -3.06961e-13 0 2.91208e-13 -2.83939e-13 0 3.11657e-13 -2.59691e-13 0 3.29877e-13 -2.3444e-13 0 - 3.45898e-13 -2.08377e-13 0 3.59767e-13 -1.81666e-13 0 3.71534e-13 -1.54447e-13 0 3.81249e-13 -1.26835e-13 0 - 3.88958e-13 -9.89272e-14 0 3.94702e-13 -7.08052e-14 0 3.98513e-13 -4.25386e-14 0 4.00413e-13 -1.41886e-14 0 - 4.00413e-13 1.41886e-14 0 3.98513e-13 4.25386e-14 0 3.94702e-13 7.08052e-14 0 3.88958e-13 9.89272e-14 0 - 3.81249e-13 1.26835e-13 0 3.71534e-13 1.54447e-13 0 3.59767e-13 1.81666e-13 0 3.45898e-13 2.08377e-13 0 - 3.29877e-13 2.3444e-13 0 3.11657e-13 2.59691e-13 0 2.91208e-13 2.83939e-13 0 2.68514e-13 3.06961e-13 0 - 2.4359e-13 3.28508e-13 0 2.16489e-13 3.48304e-13 0 1.87313e-13 3.66056e-13 0 1.5622e-13 3.8146e-13 0 - 1.23431e-13 3.9422e-13 0 8.92346e-14 4.04066e-13 0 5.39799e-14 4.10769e-13 0 1.80677e-14 4.14164e-13 0 - 1.98767e-14 -4.52108e-13 0 5.93575e-14 -4.48218e-13 0 9.80379e-14 -4.40553e-13 0 1.35438e-13 -4.29331e-13 0 - 1.7115e-13 -4.1485e-13 0 2.0485e-13 -3.97459e-13 0 2.36301e-13 -3.77529e-13 0 2.6535e-13 -3.55433e-13 0 - 2.91913e-13 -3.31524e-13 0 3.15965e-13 -3.06123e-13 0 3.37522e-13 -2.79515e-13 0 3.56633e-13 -2.51946e-13 0 - 3.73361e-13 -2.23621e-13 0 3.87784e-13 -1.94713e-13 0 3.99976e-13 -1.65359e-13 0 4.10011e-13 -1.35673e-13 0 - 4.17955e-13 -1.05743e-13 0 4.23863e-13 -7.56417e-14 0 4.27777e-13 -4.54276e-14 0 4.29727e-13 -1.51495e-14 0 - 4.29727e-13 1.51495e-14 0 4.27777e-13 4.54276e-14 0 4.23863e-13 7.56417e-14 0 4.17955e-13 1.05743e-13 0 - 4.10011e-13 1.35673e-13 0 3.99976e-13 1.65359e-13 0 3.87784e-13 1.94713e-13 0 3.73361e-13 2.23621e-13 0 - 3.56633e-13 2.51946e-13 0 3.37522e-13 2.79515e-13 0 3.15965e-13 3.06123e-13 0 2.91913e-13 3.31524e-13 0 - 2.6535e-13 3.55433e-13 0 2.36301e-13 3.77529e-13 0 2.0485e-13 3.97459e-13 0 1.7115e-13 4.1485e-13 0 - 1.35438e-13 4.29331e-13 0 9.80379e-14 4.40553e-13 0 5.93575e-14 4.48218e-13 0 1.98767e-14 4.52108e-13 0 - 2.19581e-14 -4.93943e-13 0 6.55354e-14 -4.89441e-13 0 1.08121e-13 -4.80595e-13 0 1.49134e-13 -4.677e-13 0 - 1.88092e-13 -4.51151e-13 0 2.24634e-13 -4.314e-13 0 2.58515e-13 -4.0892e-13 0 2.89595e-13 -3.84172e-13 0 - 3.17824e-13 -3.57577e-13 0 3.43216e-13 -3.29513e-13 0 3.65835e-13 -3.003e-13 0 3.8577e-13 -2.70206e-13 0 - 4.03131e-13 -2.3945e-13 0 4.1803e-13 -2.08204e-13 0 4.30574e-13 -1.76604e-13 0 4.40865e-13 -1.44753e-13 0 - 4.48989e-13 -1.1273e-13 0 4.55017e-13 -8.05912e-14 0 4.59006e-13 -4.83807e-14 0 4.6099e-13 -1.6131e-14 0 - 4.6099e-13 1.6131e-14 0 4.59006e-13 4.83807e-14 0 4.55017e-13 8.05912e-14 0 4.48989e-13 1.1273e-13 0 - 4.40865e-13 1.44753e-13 0 4.30574e-13 1.76604e-13 0 4.1803e-13 2.08204e-13 0 4.03131e-13 2.3945e-13 0 - 3.8577e-13 2.70206e-13 0 3.65835e-13 3.003e-13 0 3.43216e-13 3.29513e-13 0 3.17824e-13 3.57577e-13 0 - 2.89595e-13 3.84172e-13 0 2.58515e-13 4.0892e-13 0 2.24634e-13 4.314e-13 0 1.88092e-13 4.51151e-13 0 - 1.49134e-13 4.677e-13 0 1.08121e-13 4.80595e-13 0 6.55354e-14 4.89441e-13 0 2.19581e-14 4.93943e-13 0 - 2.43783e-14 -5.40279e-13 0 7.27048e-14 -5.35008e-13 0 1.19779e-13 -5.24688e-13 0 1.64883e-13 -5.09724e-13 0 - 2.0745e-13 -4.90652e-13 0 2.4708e-13 -4.68069e-13 0 2.83529e-13 -4.42581e-13 0 3.16693e-13 -4.14755e-13 0 - 3.46572e-13 -3.85101e-13 0 3.73242e-13 -3.54052e-13 0 3.96829e-13 -3.21966e-13 0 4.17483e-13 -2.8913e-13 0 - 4.35364e-13 -2.55768e-13 0 4.50629e-13 -2.2205e-13 0 4.63427e-13 -1.881e-13 0 4.73885e-13 -1.54007e-13 0 - 4.82117e-13 -1.19832e-13 0 4.88212e-13 -8.56125e-14 0 4.92237e-13 -5.13729e-14 0 4.94239e-13 -1.7125e-14 0 - 4.94239e-13 1.7125e-14 0 4.92237e-13 5.13729e-14 0 4.88212e-13 8.56125e-14 0 4.82117e-13 1.19832e-13 0 - 4.73885e-13 1.54007e-13 0 4.63427e-13 1.881e-13 0 4.50629e-13 2.2205e-13 0 4.35364e-13 2.55768e-13 0 - 4.17483e-13 2.8913e-13 0 3.96829e-13 3.21966e-13 0 3.73242e-13 3.54052e-13 0 3.46572e-13 3.85101e-13 0 - 3.16693e-13 4.14755e-13 0 2.83529e-13 4.42581e-13 0 2.4708e-13 4.68069e-13 0 2.0745e-13 4.90652e-13 0 - 1.64883e-13 5.09724e-13 0 1.19779e-13 5.24688e-13 0 7.27048e-14 5.35008e-13 0 2.43783e-14 5.40279e-13 0 - 2.72288e-14 -5.91886e-13 0 8.11266e-14 -5.85626e-13 0 1.33406e-13 -5.73424e-13 0 1.83169e-13 -5.55857e-13 0 - 2.29747e-13 -5.33664e-13 0 2.72705e-13 -5.07645e-13 0 3.11829e-13 -4.78578e-13 0 3.47075e-13 -4.47168e-13 0 - 3.78528e-13 -4.1402e-13 0 4.06352e-13 -3.79627e-13 0 4.30756e-13 -3.44381e-13 0 4.51968e-13 -3.0858e-13 0 - 4.70211e-13 -2.72443e-13 0 4.85698e-13 -2.36128e-13 0 4.98617e-13 -1.99739e-13 0 5.09133e-13 -1.63343e-13 0 - 5.17383e-13 -1.26977e-13 0 5.23476e-13 -9.06545e-14 0 5.27493e-13 -5.43733e-14 0 5.29488e-13 -1.8121e-14 0 - 5.29488e-13 1.8121e-14 0 5.27493e-13 5.43733e-14 0 5.23476e-13 9.06545e-14 0 5.17383e-13 1.26977e-13 0 - 5.09133e-13 1.63343e-13 0 4.98617e-13 1.99739e-13 0 4.85698e-13 2.36128e-13 0 4.70211e-13 2.72443e-13 0 - 4.51968e-13 3.0858e-13 0 4.30756e-13 3.44381e-13 0 4.06352e-13 3.79627e-13 0 3.78528e-13 4.1402e-13 0 - 3.47075e-13 4.47168e-13 0 3.11829e-13 4.78578e-13 0 2.72705e-13 5.07645e-13 0 2.29747e-13 5.33664e-13 0 - 1.83169e-13 5.55857e-13 0 1.33406e-13 5.73424e-13 0 8.11266e-14 5.85626e-13 0 2.72288e-14 5.91886e-13 0 - 3.06389e-14 -6.49754e-13 0 9.11674e-14 -6.42184e-13 0 1.49547e-13 -6.27524e-13 0 2.04642e-13 -6.06616e-13 0 - 2.55662e-13 -5.80503e-13 0 3.02166e-13 -5.50268e-13 0 3.44006e-13 -5.16918e-13 0 3.81251e-13 -4.8132e-13 0 - 4.14113e-13 -4.44183e-13 0 4.42881e-13 -4.06057e-13 0 4.67876e-13 -3.67352e-13 0 4.89421e-13 -3.28365e-13 0 - 5.07816e-13 -2.89297e-13 0 5.23334e-13 -2.50278e-13 0 5.36211e-13 -2.11385e-13 0 5.46647e-13 -1.7265e-13 0 - 5.54806e-13 -1.34079e-13 0 5.60816e-13 -9.56549e-14 0 5.64771e-13 -5.73447e-14 0 5.66733e-13 -1.91067e-14 0 - 5.66733e-13 1.91067e-14 0 5.64771e-13 5.73447e-14 0 5.60816e-13 9.56549e-14 0 5.54806e-13 1.34079e-13 0 - 5.46647e-13 1.7265e-13 0 5.36211e-13 2.11385e-13 0 5.23334e-13 2.50278e-13 0 5.07816e-13 2.89297e-13 0 - 4.89421e-13 3.28365e-13 0 4.67876e-13 3.67352e-13 0 4.42881e-13 4.06057e-13 0 4.14113e-13 4.44183e-13 0 - 3.81251e-13 4.8132e-13 0 3.44006e-13 5.16918e-13 0 3.02166e-13 5.50268e-13 0 2.55662e-13 5.80503e-13 0 - 2.04642e-13 6.06616e-13 0 1.49547e-13 6.27524e-13 0 9.11674e-14 6.42184e-13 0 3.06389e-14 6.49754e-13 0 - 3.47983e-14 -7.15191e-13 0 1.03357e-13 -7.05834e-13 0 1.68974e-13 -6.87871e-13 0 2.3019e-13 -6.62579e-13 0 - 2.86095e-13 -6.31465e-13 0 3.36291e-13 -5.96007e-13 0 3.80777e-13 -5.57504e-13 0 4.1981e-13 -5.17011e-13 0 - 4.53791e-13 -4.75335e-13 0 4.83182e-13 -4.33064e-13 0 5.08448e-13 -3.90606e-13 0 5.30023e-13 -3.48231e-13 0 - 5.48298e-13 -3.06101e-13 0 5.6361e-13 -2.64304e-13 0 5.76245e-13 -2.22871e-13 0 5.86439e-13 -1.81793e-13 0 - 5.94378e-13 -1.41035e-13 0 6.00211e-13 -1.00541e-13 0 6.04041e-13 -6.0244e-14 0 6.0594e-13 -2.00677e-14 0 - 6.0594e-13 2.00677e-14 0 6.04041e-13 6.0244e-14 0 6.00211e-13 1.00541e-13 0 5.94378e-13 1.41035e-13 0 - 5.86439e-13 1.81793e-13 0 5.76245e-13 2.22871e-13 0 5.6361e-13 2.64304e-13 0 5.48298e-13 3.06101e-13 0 - 5.30023e-13 3.48231e-13 0 5.08448e-13 3.90606e-13 0 4.83182e-13 4.33064e-13 0 4.53791e-13 4.75335e-13 0 - 4.1981e-13 5.17011e-13 0 3.80777e-13 5.57504e-13 0 3.36291e-13 5.96007e-13 0 2.86095e-13 6.31465e-13 0 - 2.3019e-13 6.62579e-13 0 1.68974e-13 6.87871e-13 0 1.03357e-13 7.05834e-13 0 3.47983e-14 7.15191e-13 0 - 3.99956e-14 -7.89985e-13 0 1.18488e-13 -7.78091e-13 0 1.92802e-13 -7.55546e-13 0 2.61048e-13 -7.24366e-13 0 - 3.22235e-13 -6.8677e-13 0 3.76127e-13 -6.4479e-13 0 4.23001e-13 -6.00081e-13 0 4.6342e-13 -5.53885e-13 0 - 4.9806e-13 -5.07082e-13 0 5.2761e-13 -4.60258e-13 0 5.5271e-13 -4.13778e-13 0 5.73926e-13 -3.6785e-13 0 - 5.91742e-13 -3.22572e-13 0 6.06564e-13 -2.77966e-13 0 6.18722e-13 -2.34002e-13 0 6.28483e-13 -1.90617e-13 0 - 6.36058e-13 -1.47726e-13 0 6.41607e-13 -1.05231e-13 0 6.45244e-13 -6.30223e-14 0 6.47045e-13 -2.0988e-14 0 - 6.47045e-13 2.0988e-14 0 6.45244e-13 6.30223e-14 0 6.41607e-13 1.05231e-13 0 6.36058e-13 1.47726e-13 0 - 6.28483e-13 1.90617e-13 0 6.18722e-13 2.34002e-13 0 6.06564e-13 2.77966e-13 0 5.91742e-13 3.22572e-13 0 - 5.73926e-13 3.6785e-13 0 5.5271e-13 4.13778e-13 0 5.2761e-13 4.60258e-13 0 4.9806e-13 5.07082e-13 0 - 4.6342e-13 5.53885e-13 0 4.23001e-13 6.00081e-13 0 3.76127e-13 6.4479e-13 0 3.22235e-13 6.8677e-13 0 - 2.61048e-13 7.24366e-13 0 1.92802e-13 7.55546e-13 0 1.18488e-13 7.78091e-13 0 3.99956e-14 7.89985e-13 0 - 4.66924e-14 -8.76673e-13 0 1.37795e-13 -8.60998e-13 0 2.22699e-13 -8.31858e-13 0 2.98966e-13 -7.92567e-13 0 - 3.6567e-13 -7.46459e-13 0 4.2298e-13 -6.96304e-13 0 4.71682e-13 -6.44144e-13 0 5.12808e-13 -5.91367e-13 0 - 5.47419e-13 -5.38851e-13 0 5.76487e-13 -4.87107e-13 0 6.00856e-13 -4.36397e-13 0 6.21228e-13 -3.8682e-13 0 - 6.38182e-13 -3.38372e-13 0 6.52181e-13 -2.90986e-13 0 6.63594e-13 -2.44554e-13 0 6.72714e-13 -1.98947e-13 0 - 6.79765e-13 -1.54023e-13 0 6.84915e-13 -1.09633e-13 0 6.88284e-13 -6.56265e-14 0 6.8995e-13 -2.18499e-14 0 - 6.8995e-13 2.18499e-14 0 6.88284e-13 6.56265e-14 0 6.84915e-13 1.09633e-13 0 6.79765e-13 1.54023e-13 0 - 6.72714e-13 1.98947e-13 0 6.63594e-13 2.44554e-13 0 6.52181e-13 2.90986e-13 0 6.38182e-13 3.38372e-13 0 - 6.21228e-13 3.8682e-13 0 6.00856e-13 4.36397e-13 0 5.76487e-13 4.87107e-13 0 5.47419e-13 5.38851e-13 0 - 5.12808e-13 5.91367e-13 0 4.71682e-13 6.44144e-13 0 4.2298e-13 6.96304e-13 0 3.6567e-13 7.46459e-13 0 - 2.98966e-13 7.92567e-13 0 2.22699e-13 8.31858e-13 0 1.37795e-13 8.60998e-13 0 4.66924e-14 8.76673e-13 0 - 5.56709e-14 -9.79036e-13 0 1.63303e-13 -9.57369e-13 0 2.61233e-13 -9.1832e-13 0 3.46447e-13 -8.67585e-13 0 - 4.18498e-13 -8.10197e-13 0 4.78443e-13 -7.49821e-13 0 5.27938e-13 -6.88823e-13 0 5.68712e-13 -6.28588e-13 0 - 6.0232e-13 -5.69849e-13 0 6.30064e-13 -5.12923e-13 0 6.52997e-13 -4.57883e-13 0 6.71951e-13 -4.0466e-13 0 - 6.87576e-13 -3.53111e-13 0 7.00382e-13 -3.03052e-13 0 7.10761e-13 -2.54281e-13 0 7.19014e-13 -2.06593e-13 0 - 7.25372e-13 -1.59784e-13 0 7.30003e-13 -1.13652e-13 0 7.33027e-13 -6.80006e-14 0 7.34521e-13 -2.26351e-14 0 - 7.34521e-13 2.26351e-14 0 7.33027e-13 6.80006e-14 0 7.30003e-13 1.13652e-13 0 7.25372e-13 1.59784e-13 0 - 7.19014e-13 2.06593e-13 0 7.10761e-13 2.54281e-13 0 7.00382e-13 3.03052e-13 0 6.87576e-13 3.53111e-13 0 - 6.71951e-13 4.0466e-13 0 6.52997e-13 4.57883e-13 0 6.30064e-13 5.12923e-13 0 6.0232e-13 5.69849e-13 0 - 5.68712e-13 6.28588e-13 0 5.27938e-13 6.88823e-13 0 4.78443e-13 7.49821e-13 0 4.18498e-13 8.10197e-13 0 - 3.46447e-13 8.67585e-13 0 2.61233e-13 9.1832e-13 0 1.63303e-13 9.57369e-13 0 5.56709e-14 9.79036e-13 0 - 6.83591e-14 -1.10307e-12 0 1.98512e-13 -1.07112e-12 0 3.12484e-13 -1.01647e-12 0 4.07089e-13 -9.49255e-13 0 - 4.83433e-13 -8.76923e-13 0 5.44355e-13 -8.03962e-13 0 5.92915e-13 -7.32737e-13 0 6.31782e-13 -6.64315e-13 0 - 6.63084e-13 -5.99033e-13 0 6.88453e-13 -5.36852e-13 0 7.09118e-13 -4.77551e-13 0 7.26e-13 -4.20828e-13 0 - 7.39791e-13 -3.66361e-13 0 7.51011e-13 -3.13828e-13 0 7.60052e-13 -2.62925e-13 0 7.67211e-13 -2.13362e-13 0 - 7.72706e-13 -1.64869e-13 0 7.76699e-13 -1.17192e-13 0 7.79301e-13 -7.00883e-14 0 7.80586e-13 -2.33251e-14 0 - 7.80586e-13 2.33251e-14 0 7.79301e-13 7.00883e-14 0 7.76699e-13 1.17192e-13 0 7.72706e-13 1.64869e-13 0 - 7.67211e-13 2.13362e-13 0 7.60052e-13 2.62925e-13 0 7.51011e-13 3.13828e-13 0 7.39791e-13 3.66361e-13 0 - 7.26e-13 4.20828e-13 0 7.09118e-13 4.77551e-13 0 6.88453e-13 5.36852e-13 0 6.63084e-13 5.99033e-13 0 - 6.31782e-13 6.64315e-13 0 5.92915e-13 7.32737e-13 0 5.44355e-13 8.03962e-13 0 4.83433e-13 8.76923e-13 0 - 4.07089e-13 9.49255e-13 0 3.12484e-13 1.01647e-12 0 1.98512e-13 1.07112e-12 0 6.83591e-14 1.10307e-12 0 - 8.76132e-14 -1.25904e-12 0 2.49901e-13 -1.20759e-12 0 3.83101e-13 -1.12717e-12 0 4.85992e-13 -1.03605e-12 0 - 5.63792e-13 -9.44278e-13 0 6.22629e-13 -8.56365e-13 0 6.67585e-13 -7.7385e-13 0 7.02416e-13 -6.969e-13 0 - 7.29782e-13 -6.25116e-13 0 7.51547e-13 -5.57903e-13 0 7.69022e-13 -4.9464e-13 0 7.83141e-13 -4.3474e-13 0 - 7.94576e-13 -3.77675e-13 0 8.03818e-13 -3.22976e-13 0 8.11227e-13 -2.70228e-13 0 8.1707e-13 -2.1906e-13 0 - 8.21542e-13 -1.69138e-13 0 8.24784e-13 -1.20158e-13 0 8.26894e-13 -7.18355e-14 0 8.27934e-13 -2.39023e-14 0 - 8.27934e-13 2.39023e-14 0 8.26894e-13 7.18355e-14 0 8.24784e-13 1.20158e-13 0 8.21542e-13 1.69138e-13 0 - 8.1707e-13 2.1906e-13 0 8.11227e-13 2.70228e-13 0 8.03818e-13 3.22976e-13 0 7.94576e-13 3.77675e-13 0 - 7.83141e-13 4.3474e-13 0 7.69022e-13 4.9464e-13 0 7.51547e-13 5.57903e-13 0 7.29782e-13 6.25116e-13 0 - 7.02416e-13 6.969e-13 0 6.67585e-13 7.7385e-13 0 6.22629e-13 8.56365e-13 0 5.63792e-13 9.44278e-13 0 - 4.85992e-13 1.03605e-12 0 3.83101e-13 1.12717e-12 0 2.49901e-13 1.20759e-12 0 8.76132e-14 1.25904e-12 0 - 1.19806e-13 -1.46646e-12 0 3.30376e-13 -1.37303e-12 0 4.8403e-13 -1.24859e-12 0 5.89985e-13 -1.12348e-12 0 - 6.63114e-13 -1.00778e-12 0 7.14783e-13 -9.03371e-13 0 7.5238e-13 -8.09396e-13 0 7.80515e-13 -7.2432e-13 0 - 8.02081e-13 -6.46627e-13 0 8.18929e-13 -5.75005e-13 0 8.32282e-13 -5.08365e-13 0 8.42965e-13 -4.45816e-13 0 - 8.51555e-13 -3.86623e-13 0 8.58458e-13 -3.30173e-13 0 8.63969e-13 -2.75951e-13 0 8.683e-13 -2.23511e-13 0 - 8.71608e-13 -1.72465e-13 0 8.74001e-13 -1.22466e-13 0 8.75557e-13 -7.31938e-14 0 8.76323e-13 -2.43507e-14 0 - 8.76323e-13 2.43507e-14 0 8.75557e-13 7.31938e-14 0 8.74001e-13 1.22466e-13 0 8.71608e-13 1.72465e-13 0 - 8.683e-13 2.23511e-13 0 8.63969e-13 2.75951e-13 0 8.58458e-13 3.30173e-13 0 8.51555e-13 3.86623e-13 0 - 8.42965e-13 4.45816e-13 0 8.32282e-13 5.08365e-13 0 8.18929e-13 5.75005e-13 0 8.02081e-13 6.46627e-13 0 - 7.80515e-13 7.2432e-13 0 7.5238e-13 8.09396e-13 0 7.14783e-13 9.03371e-13 0 6.63114e-13 1.00778e-12 0 - 5.89985e-13 1.12348e-12 0 4.8403e-13 1.24859e-12 0 3.30376e-13 1.37303e-12 0 1.19806e-13 1.46646e-12 0 - 1.81042e-13 -1.76731e-12 0 4.67769e-13 -1.56948e-12 0 6.32655e-13 -1.37068e-12 0 7.26804e-13 -1.20149e-12 0 - 7.83896e-13 -1.05998e-12 0 8.2101e-13 -9.39946e-13 0 8.46636e-13 -8.36044e-13 0 8.65185e-13 -7.44358e-13 0 - 8.79098e-13 -6.62068e-13 0 8.89808e-13 -5.87124e-13 0 8.9821e-13 -5.18001e-13 0 9.04883e-13 -4.53538e-13 0 - 9.10219e-13 -3.92827e-13 0 9.1449e-13 -3.35143e-13 0 9.1789e-13 -2.7989e-13 0 9.20555e-13 -2.26568e-13 0 - 9.22587e-13 -1.74747e-13 0 9.24055e-13 -1.24046e-13 0 9.25009e-13 -7.41232e-14 0 9.25479e-13 -2.46574e-14 0 - 9.25479e-13 2.46574e-14 0 9.25009e-13 7.41232e-14 0 9.24055e-13 1.24046e-13 0 9.22587e-13 1.74747e-13 0 - 9.20555e-13 2.26568e-13 0 9.1789e-13 2.7989e-13 0 9.1449e-13 3.35143e-13 0 9.10219e-13 3.92827e-13 0 - 9.04883e-13 4.53538e-13 0 8.9821e-13 5.18001e-13 0 8.89808e-13 5.87124e-13 0 8.79098e-13 6.62068e-13 0 - 8.65185e-13 7.44358e-13 0 8.46636e-13 8.36044e-13 0 8.2101e-13 9.39946e-13 0 7.83896e-13 1.05998e-12 0 - 7.26804e-13 1.20149e-12 0 6.32655e-13 1.37068e-12 0 4.67769e-13 1.56948e-12 0 1.81042e-13 1.76731e-12 0 - 3.17637e-13 -2.26599e-12 0 7.27002e-13 -1.76689e-12 0 8.52019e-13 -1.46317e-12 0 9.00682e-13 -1.25181e-12 0 - 9.24655e-13 -1.09073e-12 0 9.38724e-13 -9.60385e-13 0 9.47968e-13 -8.50476e-13 0 9.54492e-13 -7.54999e-13 0 - 9.59315e-13 -6.70162e-13 0 9.62997e-13 -5.93421e-13 0 9.65867e-13 -5.22976e-13 0 9.68138e-13 -4.57506e-13 0 - 9.69949e-13 -3.96006e-13 0 9.71395e-13 -3.37683e-13 0 9.72544e-13 -2.81899e-13 0 9.73444e-13 -2.28125e-13 0 - 9.74129e-13 -1.75907e-13 0 9.74624e-13 -1.2485e-13 0 9.74946e-13 -7.45953e-14 0 9.75104e-13 -2.48132e-14 0 - 9.75104e-13 2.48132e-14 0 9.74946e-13 7.45953e-14 0 9.74624e-13 1.2485e-13 0 9.74129e-13 1.75907e-13 0 - 9.73444e-13 2.28125e-13 0 9.72544e-13 2.81899e-13 0 9.71395e-13 3.37683e-13 0 9.69949e-13 3.96006e-13 0 - 9.68138e-13 4.57506e-13 0 9.65867e-13 5.22976e-13 0 9.62997e-13 5.93421e-13 0 9.59315e-13 6.70162e-13 0 - 9.54492e-13 7.54999e-13 0 9.47968e-13 8.50476e-13 0 9.38724e-13 9.60385e-13 0 9.24655e-13 1.09073e-12 0 - 9.00682e-13 1.25181e-12 0 8.52019e-13 1.46317e-12 0 7.27002e-13 1.76689e-12 0 3.17637e-13 2.26599e-12 0 - - - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 - - - - - 0 0 0 0.025 0 0 0 0.025 0 0.025 0.025 0 - 0.05 0 0 0.05 0.025 0 0.075 0 0 0.075 0.025 0 - 0.1 0 0 0.1 0.025 0 0.125 0 0 0.125 0.025 0 - 0.15 0 0 0.15 0.025 0 0.175 0 0 0.175 0.025 0 - 0.2 0 0 0.2 0.025 0 0.225 0 0 0.225 0.025 0 - 0.25 0 0 0.25 0.025 0 0.275 0 0 0.275 0.025 0 - 0.3 0 0 0.3 0.025 0 0.325 0 0 0.325 0.025 0 - 0.35 0 0 0.35 0.025 0 0.375 0 0 0.375 0.025 0 - 0.4 0 0 0.4 0.025 0 0.425 0 0 0.425 0.025 0 - 0.45 0 0 0.45 0.025 0 0.475 0 0 0.475 0.025 0 - 0.5 0 0 0.5 0.025 0 0.525 0 0 0.525 0.025 0 - 0.55 0 0 0.55 0.025 0 0.575 0 0 0.575 0.025 0 - 0.6 0 0 0.6 0.025 0 0.625 0 0 0.625 0.025 0 - 0.65 0 0 0.65 0.025 0 0.675 0 0 0.675 0.025 0 - 0.7 0 0 0.7 0.025 0 0.725 0 0 0.725 0.025 0 - 0.75 0 0 0.75 0.025 0 0.775 0 0 0.775 0.025 0 - 0.8 0 0 0.8 0.025 0 0.825 0 0 0.825 0.025 0 - 0.85 0 0 0.85 0.025 0 0.875 0 0 0.875 0.025 0 - 0.9 0 0 0.9 0.025 0 0.925 0 0 0.925 0.025 0 - 0.95 0 0 0.95 0.025 0 0.975 0 0 0.975 0.025 0 - 1 0 0 1 0.025 0 0 0.05 0 0.025 0.05 0 - 0.05 0.05 0 0.075 0.05 0 0.1 0.05 0 0.125 0.05 0 - 0.15 0.05 0 0.175 0.05 0 0.2 0.05 0 0.225 0.05 0 - 0.25 0.05 0 0.275 0.05 0 0.3 0.05 0 0.325 0.05 0 - 0.35 0.05 0 0.375 0.05 0 0.4 0.05 0 0.425 0.05 0 - 0.45 0.05 0 0.475 0.05 0 0.5 0.05 0 0.525 0.05 0 - 0.55 0.05 0 0.575 0.05 0 0.6 0.05 0 0.625 0.05 0 - 0.65 0.05 0 0.675 0.05 0 0.7 0.05 0 0.725 0.05 0 - 0.75 0.05 0 0.775 0.05 0 0.8 0.05 0 0.825 0.05 0 - 0.85 0.05 0 0.875 0.05 0 0.9 0.05 0 0.925 0.05 0 - 0.95 0.05 0 0.975 0.05 0 1 0.05 0 0 0.075 0 - 0.025 0.075 0 0.05 0.075 0 0.075 0.075 0 0.1 0.075 0 - 0.125 0.075 0 0.15 0.075 0 0.175 0.075 0 0.2 0.075 0 - 0.225 0.075 0 0.25 0.075 0 0.275 0.075 0 0.3 0.075 0 - 0.325 0.075 0 0.35 0.075 0 0.375 0.075 0 0.4 0.075 0 - 0.425 0.075 0 0.45 0.075 0 0.475 0.075 0 0.5 0.075 0 - 0.525 0.075 0 0.55 0.075 0 0.575 0.075 0 0.6 0.075 0 - 0.625 0.075 0 0.65 0.075 0 0.675 0.075 0 0.7 0.075 0 - 0.725 0.075 0 0.75 0.075 0 0.775 0.075 0 0.8 0.075 0 - 0.825 0.075 0 0.85 0.075 0 0.875 0.075 0 0.9 0.075 0 - 0.925 0.075 0 0.95 0.075 0 0.975 0.075 0 1 0.075 0 - 0 0.1 0 0.025 0.1 0 0.05 0.1 0 0.075 0.1 0 - 0.1 0.1 0 0.125 0.1 0 0.15 0.1 0 0.175 0.1 0 - 0.2 0.1 0 0.225 0.1 0 0.25 0.1 0 0.275 0.1 0 - 0.3 0.1 0 0.325 0.1 0 0.35 0.1 0 0.375 0.1 0 - 0.4 0.1 0 0.425 0.1 0 0.45 0.1 0 0.475 0.1 0 - 0.5 0.1 0 0.525 0.1 0 0.55 0.1 0 0.575 0.1 0 - 0.6 0.1 0 0.625 0.1 0 0.65 0.1 0 0.675 0.1 0 - 0.7 0.1 0 0.725 0.1 0 0.75 0.1 0 0.775 0.1 0 - 0.8 0.1 0 0.825 0.1 0 0.85 0.1 0 0.875 0.1 0 - 0.9 0.1 0 0.925 0.1 0 0.95 0.1 0 0.975 0.1 0 - 1 0.1 0 0 0.125 0 0.025 0.125 0 0.05 0.125 0 - 0.075 0.125 0 0.1 0.125 0 0.125 0.125 0 0.15 0.125 0 - 0.175 0.125 0 0.2 0.125 0 0.225 0.125 0 0.25 0.125 0 - 0.275 0.125 0 0.3 0.125 0 0.325 0.125 0 0.35 0.125 0 - 0.375 0.125 0 0.4 0.125 0 0.425 0.125 0 0.45 0.125 0 - 0.475 0.125 0 0.5 0.125 0 0.525 0.125 0 0.55 0.125 0 - 0.575 0.125 0 0.6 0.125 0 0.625 0.125 0 0.65 0.125 0 - 0.675 0.125 0 0.7 0.125 0 0.725 0.125 0 0.75 0.125 0 - 0.775 0.125 0 0.8 0.125 0 0.825 0.125 0 0.85 0.125 0 - 0.875 0.125 0 0.9 0.125 0 0.925 0.125 0 0.95 0.125 0 - 0.975 0.125 0 1 0.125 0 0 0.15 0 0.025 0.15 0 - 0.05 0.15 0 0.075 0.15 0 0.1 0.15 0 0.125 0.15 0 - 0.15 0.15 0 0.175 0.15 0 0.2 0.15 0 0.225 0.15 0 - 0.25 0.15 0 0.275 0.15 0 0.3 0.15 0 0.325 0.15 0 - 0.35 0.15 0 0.375 0.15 0 0.4 0.15 0 0.425 0.15 0 - 0.45 0.15 0 0.475 0.15 0 0.5 0.15 0 0.525 0.15 0 - 0.55 0.15 0 0.575 0.15 0 0.6 0.15 0 0.625 0.15 0 - 0.65 0.15 0 0.675 0.15 0 0.7 0.15 0 0.725 0.15 0 - 0.75 0.15 0 0.775 0.15 0 0.8 0.15 0 0.825 0.15 0 - 0.85 0.15 0 0.875 0.15 0 0.9 0.15 0 0.925 0.15 0 - 0.95 0.15 0 0.975 0.15 0 1 0.15 0 0 0.175 0 - 0.025 0.175 0 0.05 0.175 0 0.075 0.175 0 0.1 0.175 0 - 0.125 0.175 0 0.15 0.175 0 0.175 0.175 0 0.2 0.175 0 - 0.225 0.175 0 0.25 0.175 0 0.275 0.175 0 0.3 0.175 0 - 0.325 0.175 0 0.35 0.175 0 0.375 0.175 0 0.4 0.175 0 - 0.425 0.175 0 0.45 0.175 0 0.475 0.175 0 0.5 0.175 0 - 0.525 0.175 0 0.55 0.175 0 0.575 0.175 0 0.6 0.175 0 - 0.625 0.175 0 0.65 0.175 0 0.675 0.175 0 0.7 0.175 0 - 0.725 0.175 0 0.75 0.175 0 0.775 0.175 0 0.8 0.175 0 - 0.825 0.175 0 0.85 0.175 0 0.875 0.175 0 0.9 0.175 0 - 0.925 0.175 0 0.95 0.175 0 0.975 0.175 0 1 0.175 0 - 0 0.2 0 0.025 0.2 0 0.05 0.2 0 0.075 0.2 0 - 0.1 0.2 0 0.125 0.2 0 0.15 0.2 0 0.175 0.2 0 - 0.2 0.2 0 0.225 0.2 0 0.25 0.2 0 0.275 0.2 0 - 0.3 0.2 0 0.325 0.2 0 0.35 0.2 0 0.375 0.2 0 - 0.4 0.2 0 0.425 0.2 0 0.45 0.2 0 0.475 0.2 0 - 0.5 0.2 0 0.525 0.2 0 0.55 0.2 0 0.575 0.2 0 - 0.6 0.2 0 0.625 0.2 0 0.65 0.2 0 0.675 0.2 0 - 0.7 0.2 0 0.725 0.2 0 0.75 0.2 0 0.775 0.2 0 - 0.8 0.2 0 0.825 0.2 0 0.85 0.2 0 0.875 0.2 0 - 0.9 0.2 0 0.925 0.2 0 0.95 0.2 0 0.975 0.2 0 - 1 0.2 0 0 0.225 0 0.025 0.225 0 0.05 0.225 0 - 0.075 0.225 0 0.1 0.225 0 0.125 0.225 0 0.15 0.225 0 - 0.175 0.225 0 0.2 0.225 0 0.225 0.225 0 0.25 0.225 0 - 0.275 0.225 0 0.3 0.225 0 0.325 0.225 0 0.35 0.225 0 - 0.375 0.225 0 0.4 0.225 0 0.425 0.225 0 0.45 0.225 0 - 0.475 0.225 0 0.5 0.225 0 0.525 0.225 0 0.55 0.225 0 - 0.575 0.225 0 0.6 0.225 0 0.625 0.225 0 0.65 0.225 0 - 0.675 0.225 0 0.7 0.225 0 0.725 0.225 0 0.75 0.225 0 - 0.775 0.225 0 0.8 0.225 0 0.825 0.225 0 0.85 0.225 0 - 0.875 0.225 0 0.9 0.225 0 0.925 0.225 0 0.95 0.225 0 - 0.975 0.225 0 1 0.225 0 0 0.25 0 0.025 0.25 0 - 0.05 0.25 0 0.075 0.25 0 0.1 0.25 0 0.125 0.25 0 - 0.15 0.25 0 0.175 0.25 0 0.2 0.25 0 0.225 0.25 0 - 0.25 0.25 0 0.275 0.25 0 0.3 0.25 0 0.325 0.25 0 - 0.35 0.25 0 0.375 0.25 0 0.4 0.25 0 0.425 0.25 0 - 0.45 0.25 0 0.475 0.25 0 0.5 0.25 0 0.525 0.25 0 - 0.55 0.25 0 0.575 0.25 0 0.6 0.25 0 0.625 0.25 0 - 0.65 0.25 0 0.675 0.25 0 0.7 0.25 0 0.725 0.25 0 - 0.75 0.25 0 0.775 0.25 0 0.8 0.25 0 0.825 0.25 0 - 0.85 0.25 0 0.875 0.25 0 0.9 0.25 0 0.925 0.25 0 - 0.95 0.25 0 0.975 0.25 0 1 0.25 0 0 0.275 0 - 0.025 0.275 0 0.05 0.275 0 0.075 0.275 0 0.1 0.275 0 - 0.125 0.275 0 0.15 0.275 0 0.175 0.275 0 0.2 0.275 0 - 0.225 0.275 0 0.25 0.275 0 0.275 0.275 0 0.3 0.275 0 - 0.325 0.275 0 0.35 0.275 0 0.375 0.275 0 0.4 0.275 0 - 0.425 0.275 0 0.45 0.275 0 0.475 0.275 0 0.5 0.275 0 - 0.525 0.275 0 0.55 0.275 0 0.575 0.275 0 0.6 0.275 0 - 0.625 0.275 0 0.65 0.275 0 0.675 0.275 0 0.7 0.275 0 - 0.725 0.275 0 0.75 0.275 0 0.775 0.275 0 0.8 0.275 0 - 0.825 0.275 0 0.85 0.275 0 0.875 0.275 0 0.9 0.275 0 - 0.925 0.275 0 0.95 0.275 0 0.975 0.275 0 1 0.275 0 - 0 0.3 0 0.025 0.3 0 0.05 0.3 0 0.075 0.3 0 - 0.1 0.3 0 0.125 0.3 0 0.15 0.3 0 0.175 0.3 0 - 0.2 0.3 0 0.225 0.3 0 0.25 0.3 0 0.275 0.3 0 - 0.3 0.3 0 0.325 0.3 0 0.35 0.3 0 0.375 0.3 0 - 0.4 0.3 0 0.425 0.3 0 0.45 0.3 0 0.475 0.3 0 - 0.5 0.3 0 0.525 0.3 0 0.55 0.3 0 0.575 0.3 0 - 0.6 0.3 0 0.625 0.3 0 0.65 0.3 0 0.675 0.3 0 - 0.7 0.3 0 0.725 0.3 0 0.75 0.3 0 0.775 0.3 0 - 0.8 0.3 0 0.825 0.3 0 0.85 0.3 0 0.875 0.3 0 - 0.9 0.3 0 0.925 0.3 0 0.95 0.3 0 0.975 0.3 0 - 1 0.3 0 0 0.325 0 0.025 0.325 0 0.05 0.325 0 - 0.075 0.325 0 0.1 0.325 0 0.125 0.325 0 0.15 0.325 0 - 0.175 0.325 0 0.2 0.325 0 0.225 0.325 0 0.25 0.325 0 - 0.275 0.325 0 0.3 0.325 0 0.325 0.325 0 0.35 0.325 0 - 0.375 0.325 0 0.4 0.325 0 0.425 0.325 0 0.45 0.325 0 - 0.475 0.325 0 0.5 0.325 0 0.525 0.325 0 0.55 0.325 0 - 0.575 0.325 0 0.6 0.325 0 0.625 0.325 0 0.65 0.325 0 - 0.675 0.325 0 0.7 0.325 0 0.725 0.325 0 0.75 0.325 0 - 0.775 0.325 0 0.8 0.325 0 0.825 0.325 0 0.85 0.325 0 - 0.875 0.325 0 0.9 0.325 0 0.925 0.325 0 0.95 0.325 0 - 0.975 0.325 0 1 0.325 0 0 0.35 0 0.025 0.35 0 - 0.05 0.35 0 0.075 0.35 0 0.1 0.35 0 0.125 0.35 0 - 0.15 0.35 0 0.175 0.35 0 0.2 0.35 0 0.225 0.35 0 - 0.25 0.35 0 0.275 0.35 0 0.3 0.35 0 0.325 0.35 0 - 0.35 0.35 0 0.375 0.35 0 0.4 0.35 0 0.425 0.35 0 - 0.45 0.35 0 0.475 0.35 0 0.5 0.35 0 0.525 0.35 0 - 0.55 0.35 0 0.575 0.35 0 0.6 0.35 0 0.625 0.35 0 - 0.65 0.35 0 0.675 0.35 0 0.7 0.35 0 0.725 0.35 0 - 0.75 0.35 0 0.775 0.35 0 0.8 0.35 0 0.825 0.35 0 - 0.85 0.35 0 0.875 0.35 0 0.9 0.35 0 0.925 0.35 0 - 0.95 0.35 0 0.975 0.35 0 1 0.35 0 0 0.375 0 - 0.025 0.375 0 0.05 0.375 0 0.075 0.375 0 0.1 0.375 0 - 0.125 0.375 0 0.15 0.375 0 0.175 0.375 0 0.2 0.375 0 - 0.225 0.375 0 0.25 0.375 0 0.275 0.375 0 0.3 0.375 0 - 0.325 0.375 0 0.35 0.375 0 0.375 0.375 0 0.4 0.375 0 - 0.425 0.375 0 0.45 0.375 0 0.475 0.375 0 0.5 0.375 0 - 0.525 0.375 0 0.55 0.375 0 0.575 0.375 0 0.6 0.375 0 - 0.625 0.375 0 0.65 0.375 0 0.675 0.375 0 0.7 0.375 0 - 0.725 0.375 0 0.75 0.375 0 0.775 0.375 0 0.8 0.375 0 - 0.825 0.375 0 0.85 0.375 0 0.875 0.375 0 0.9 0.375 0 - 0.925 0.375 0 0.95 0.375 0 0.975 0.375 0 1 0.375 0 - 0 0.4 0 0.025 0.4 0 0.05 0.4 0 0.075 0.4 0 - 0.1 0.4 0 0.125 0.4 0 0.15 0.4 0 0.175 0.4 0 - 0.2 0.4 0 0.225 0.4 0 0.25 0.4 0 0.275 0.4 0 - 0.3 0.4 0 0.325 0.4 0 0.35 0.4 0 0.375 0.4 0 - 0.4 0.4 0 0.425 0.4 0 0.45 0.4 0 0.475 0.4 0 - 0.5 0.4 0 0.525 0.4 0 0.55 0.4 0 0.575 0.4 0 - 0.6 0.4 0 0.625 0.4 0 0.65 0.4 0 0.675 0.4 0 - 0.7 0.4 0 0.725 0.4 0 0.75 0.4 0 0.775 0.4 0 - 0.8 0.4 0 0.825 0.4 0 0.85 0.4 0 0.875 0.4 0 - 0.9 0.4 0 0.925 0.4 0 0.95 0.4 0 0.975 0.4 0 - 1 0.4 0 0 0.425 0 0.025 0.425 0 0.05 0.425 0 - 0.075 0.425 0 0.1 0.425 0 0.125 0.425 0 0.15 0.425 0 - 0.175 0.425 0 0.2 0.425 0 0.225 0.425 0 0.25 0.425 0 - 0.275 0.425 0 0.3 0.425 0 0.325 0.425 0 0.35 0.425 0 - 0.375 0.425 0 0.4 0.425 0 0.425 0.425 0 0.45 0.425 0 - 0.475 0.425 0 0.5 0.425 0 0.525 0.425 0 0.55 0.425 0 - 0.575 0.425 0 0.6 0.425 0 0.625 0.425 0 0.65 0.425 0 - 0.675 0.425 0 0.7 0.425 0 0.725 0.425 0 0.75 0.425 0 - 0.775 0.425 0 0.8 0.425 0 0.825 0.425 0 0.85 0.425 0 - 0.875 0.425 0 0.9 0.425 0 0.925 0.425 0 0.95 0.425 0 - 0.975 0.425 0 1 0.425 0 0 0.45 0 0.025 0.45 0 - 0.05 0.45 0 0.075 0.45 0 0.1 0.45 0 0.125 0.45 0 - 0.15 0.45 0 0.175 0.45 0 0.2 0.45 0 0.225 0.45 0 - 0.25 0.45 0 0.275 0.45 0 0.3 0.45 0 0.325 0.45 0 - 0.35 0.45 0 0.375 0.45 0 0.4 0.45 0 0.425 0.45 0 - 0.45 0.45 0 0.475 0.45 0 0.5 0.45 0 0.525 0.45 0 - 0.55 0.45 0 0.575 0.45 0 0.6 0.45 0 0.625 0.45 0 - 0.65 0.45 0 0.675 0.45 0 0.7 0.45 0 0.725 0.45 0 - 0.75 0.45 0 0.775 0.45 0 0.8 0.45 0 0.825 0.45 0 - 0.85 0.45 0 0.875 0.45 0 0.9 0.45 0 0.925 0.45 0 - 0.95 0.45 0 0.975 0.45 0 1 0.45 0 0 0.475 0 - 0.025 0.475 0 0.05 0.475 0 0.075 0.475 0 0.1 0.475 0 - 0.125 0.475 0 0.15 0.475 0 0.175 0.475 0 0.2 0.475 0 - 0.225 0.475 0 0.25 0.475 0 0.275 0.475 0 0.3 0.475 0 - 0.325 0.475 0 0.35 0.475 0 0.375 0.475 0 0.4 0.475 0 - 0.425 0.475 0 0.45 0.475 0 0.475 0.475 0 0.5 0.475 0 - 0.525 0.475 0 0.55 0.475 0 0.575 0.475 0 0.6 0.475 0 - 0.625 0.475 0 0.65 0.475 0 0.675 0.475 0 0.7 0.475 0 - 0.725 0.475 0 0.75 0.475 0 0.775 0.475 0 0.8 0.475 0 - 0.825 0.475 0 0.85 0.475 0 0.875 0.475 0 0.9 0.475 0 - 0.925 0.475 0 0.95 0.475 0 0.975 0.475 0 1 0.475 0 - 0 0.5 0 0.025 0.5 0 0.05 0.5 0 0.075 0.5 0 - 0.1 0.5 0 0.125 0.5 0 0.15 0.5 0 0.175 0.5 0 - 0.2 0.5 0 0.225 0.5 0 0.25 0.5 0 0.275 0.5 0 - 0.3 0.5 0 0.325 0.5 0 0.35 0.5 0 0.375 0.5 0 - 0.4 0.5 0 0.425 0.5 0 0.45 0.5 0 0.475 0.5 0 - 0.5 0.5 0 0.525 0.5 0 0.55 0.5 0 0.575 0.5 0 - 0.6 0.5 0 0.625 0.5 0 0.65 0.5 0 0.675 0.5 0 - 0.7 0.5 0 0.725 0.5 0 0.75 0.5 0 0.775 0.5 0 - 0.8 0.5 0 0.825 0.5 0 0.85 0.5 0 0.875 0.5 0 - 0.9 0.5 0 0.925 0.5 0 0.95 0.5 0 0.975 0.5 0 - 1 0.5 0 0 0.525 0 0.025 0.525 0 0.05 0.525 0 - 0.075 0.525 0 0.1 0.525 0 0.125 0.525 0 0.15 0.525 0 - 0.175 0.525 0 0.2 0.525 0 0.225 0.525 0 0.25 0.525 0 - 0.275 0.525 0 0.3 0.525 0 0.325 0.525 0 0.35 0.525 0 - 0.375 0.525 0 0.4 0.525 0 0.425 0.525 0 0.45 0.525 0 - 0.475 0.525 0 0.5 0.525 0 0.525 0.525 0 0.55 0.525 0 - 0.575 0.525 0 0.6 0.525 0 0.625 0.525 0 0.65 0.525 0 - 0.675 0.525 0 0.7 0.525 0 0.725 0.525 0 0.75 0.525 0 - 0.775 0.525 0 0.8 0.525 0 0.825 0.525 0 0.85 0.525 0 - 0.875 0.525 0 0.9 0.525 0 0.925 0.525 0 0.95 0.525 0 - 0.975 0.525 0 1 0.525 0 0 0.55 0 0.025 0.55 0 - 0.05 0.55 0 0.075 0.55 0 0.1 0.55 0 0.125 0.55 0 - 0.15 0.55 0 0.175 0.55 0 0.2 0.55 0 0.225 0.55 0 - 0.25 0.55 0 0.275 0.55 0 0.3 0.55 0 0.325 0.55 0 - 0.35 0.55 0 0.375 0.55 0 0.4 0.55 0 0.425 0.55 0 - 0.45 0.55 0 0.475 0.55 0 0.5 0.55 0 0.525 0.55 0 - 0.55 0.55 0 0.575 0.55 0 0.6 0.55 0 0.625 0.55 0 - 0.65 0.55 0 0.675 0.55 0 0.7 0.55 0 0.725 0.55 0 - 0.75 0.55 0 0.775 0.55 0 0.8 0.55 0 0.825 0.55 0 - 0.85 0.55 0 0.875 0.55 0 0.9 0.55 0 0.925 0.55 0 - 0.95 0.55 0 0.975 0.55 0 1 0.55 0 0 0.575 0 - 0.025 0.575 0 0.05 0.575 0 0.075 0.575 0 0.1 0.575 0 - 0.125 0.575 0 0.15 0.575 0 0.175 0.575 0 0.2 0.575 0 - 0.225 0.575 0 0.25 0.575 0 0.275 0.575 0 0.3 0.575 0 - 0.325 0.575 0 0.35 0.575 0 0.375 0.575 0 0.4 0.575 0 - 0.425 0.575 0 0.45 0.575 0 0.475 0.575 0 0.5 0.575 0 - 0.525 0.575 0 0.55 0.575 0 0.575 0.575 0 0.6 0.575 0 - 0.625 0.575 0 0.65 0.575 0 0.675 0.575 0 0.7 0.575 0 - 0.725 0.575 0 0.75 0.575 0 0.775 0.575 0 0.8 0.575 0 - 0.825 0.575 0 0.85 0.575 0 0.875 0.575 0 0.9 0.575 0 - 0.925 0.575 0 0.95 0.575 0 0.975 0.575 0 1 0.575 0 - 0 0.6 0 0.025 0.6 0 0.05 0.6 0 0.075 0.6 0 - 0.1 0.6 0 0.125 0.6 0 0.15 0.6 0 0.175 0.6 0 - 0.2 0.6 0 0.225 0.6 0 0.25 0.6 0 0.275 0.6 0 - 0.3 0.6 0 0.325 0.6 0 0.35 0.6 0 0.375 0.6 0 - 0.4 0.6 0 0.425 0.6 0 0.45 0.6 0 0.475 0.6 0 - 0.5 0.6 0 0.525 0.6 0 0.55 0.6 0 0.575 0.6 0 - 0.6 0.6 0 0.625 0.6 0 0.65 0.6 0 0.675 0.6 0 - 0.7 0.6 0 0.725 0.6 0 0.75 0.6 0 0.775 0.6 0 - 0.8 0.6 0 0.825 0.6 0 0.85 0.6 0 0.875 0.6 0 - 0.9 0.6 0 0.925 0.6 0 0.95 0.6 0 0.975 0.6 0 - 1 0.6 0 0 0.625 0 0.025 0.625 0 0.05 0.625 0 - 0.075 0.625 0 0.1 0.625 0 0.125 0.625 0 0.15 0.625 0 - 0.175 0.625 0 0.2 0.625 0 0.225 0.625 0 0.25 0.625 0 - 0.275 0.625 0 0.3 0.625 0 0.325 0.625 0 0.35 0.625 0 - 0.375 0.625 0 0.4 0.625 0 0.425 0.625 0 0.45 0.625 0 - 0.475 0.625 0 0.5 0.625 0 0.525 0.625 0 0.55 0.625 0 - 0.575 0.625 0 0.6 0.625 0 0.625 0.625 0 0.65 0.625 0 - 0.675 0.625 0 0.7 0.625 0 0.725 0.625 0 0.75 0.625 0 - 0.775 0.625 0 0.8 0.625 0 0.825 0.625 0 0.85 0.625 0 - 0.875 0.625 0 0.9 0.625 0 0.925 0.625 0 0.95 0.625 0 - 0.975 0.625 0 1 0.625 0 0 0.65 0 0.025 0.65 0 - 0.05 0.65 0 0.075 0.65 0 0.1 0.65 0 0.125 0.65 0 - 0.15 0.65 0 0.175 0.65 0 0.2 0.65 0 0.225 0.65 0 - 0.25 0.65 0 0.275 0.65 0 0.3 0.65 0 0.325 0.65 0 - 0.35 0.65 0 0.375 0.65 0 0.4 0.65 0 0.425 0.65 0 - 0.45 0.65 0 0.475 0.65 0 0.5 0.65 0 0.525 0.65 0 - 0.55 0.65 0 0.575 0.65 0 0.6 0.65 0 0.625 0.65 0 - 0.65 0.65 0 0.675 0.65 0 0.7 0.65 0 0.725 0.65 0 - 0.75 0.65 0 0.775 0.65 0 0.8 0.65 0 0.825 0.65 0 - 0.85 0.65 0 0.875 0.65 0 0.9 0.65 0 0.925 0.65 0 - 0.95 0.65 0 0.975 0.65 0 1 0.65 0 0 0.675 0 - 0.025 0.675 0 0.05 0.675 0 0.075 0.675 0 0.1 0.675 0 - 0.125 0.675 0 0.15 0.675 0 0.175 0.675 0 0.2 0.675 0 - 0.225 0.675 0 0.25 0.675 0 0.275 0.675 0 0.3 0.675 0 - 0.325 0.675 0 0.35 0.675 0 0.375 0.675 0 0.4 0.675 0 - 0.425 0.675 0 0.45 0.675 0 0.475 0.675 0 0.5 0.675 0 - 0.525 0.675 0 0.55 0.675 0 0.575 0.675 0 0.6 0.675 0 - 0.625 0.675 0 0.65 0.675 0 0.675 0.675 0 0.7 0.675 0 - 0.725 0.675 0 0.75 0.675 0 0.775 0.675 0 0.8 0.675 0 - 0.825 0.675 0 0.85 0.675 0 0.875 0.675 0 0.9 0.675 0 - 0.925 0.675 0 0.95 0.675 0 0.975 0.675 0 1 0.675 0 - 0 0.7 0 0.025 0.7 0 0.05 0.7 0 0.075 0.7 0 - 0.1 0.7 0 0.125 0.7 0 0.15 0.7 0 0.175 0.7 0 - 0.2 0.7 0 0.225 0.7 0 0.25 0.7 0 0.275 0.7 0 - 0.3 0.7 0 0.325 0.7 0 0.35 0.7 0 0.375 0.7 0 - 0.4 0.7 0 0.425 0.7 0 0.45 0.7 0 0.475 0.7 0 - 0.5 0.7 0 0.525 0.7 0 0.55 0.7 0 0.575 0.7 0 - 0.6 0.7 0 0.625 0.7 0 0.65 0.7 0 0.675 0.7 0 - 0.7 0.7 0 0.725 0.7 0 0.75 0.7 0 0.775 0.7 0 - 0.8 0.7 0 0.825 0.7 0 0.85 0.7 0 0.875 0.7 0 - 0.9 0.7 0 0.925 0.7 0 0.95 0.7 0 0.975 0.7 0 - 1 0.7 0 0 0.725 0 0.025 0.725 0 0.05 0.725 0 - 0.075 0.725 0 0.1 0.725 0 0.125 0.725 0 0.15 0.725 0 - 0.175 0.725 0 0.2 0.725 0 0.225 0.725 0 0.25 0.725 0 - 0.275 0.725 0 0.3 0.725 0 0.325 0.725 0 0.35 0.725 0 - 0.375 0.725 0 0.4 0.725 0 0.425 0.725 0 0.45 0.725 0 - 0.475 0.725 0 0.5 0.725 0 0.525 0.725 0 0.55 0.725 0 - 0.575 0.725 0 0.6 0.725 0 0.625 0.725 0 0.65 0.725 0 - 0.675 0.725 0 0.7 0.725 0 0.725 0.725 0 0.75 0.725 0 - 0.775 0.725 0 0.8 0.725 0 0.825 0.725 0 0.85 0.725 0 - 0.875 0.725 0 0.9 0.725 0 0.925 0.725 0 0.95 0.725 0 - 0.975 0.725 0 1 0.725 0 0 0.75 0 0.025 0.75 0 - 0.05 0.75 0 0.075 0.75 0 0.1 0.75 0 0.125 0.75 0 - 0.15 0.75 0 0.175 0.75 0 0.2 0.75 0 0.225 0.75 0 - 0.25 0.75 0 0.275 0.75 0 0.3 0.75 0 0.325 0.75 0 - 0.35 0.75 0 0.375 0.75 0 0.4 0.75 0 0.425 0.75 0 - 0.45 0.75 0 0.475 0.75 0 0.5 0.75 0 0.525 0.75 0 - 0.55 0.75 0 0.575 0.75 0 0.6 0.75 0 0.625 0.75 0 - 0.65 0.75 0 0.675 0.75 0 0.7 0.75 0 0.725 0.75 0 - 0.75 0.75 0 0.775 0.75 0 0.8 0.75 0 0.825 0.75 0 - 0.85 0.75 0 0.875 0.75 0 0.9 0.75 0 0.925 0.75 0 - 0.95 0.75 0 0.975 0.75 0 1 0.75 0 0 0.775 0 - 0.025 0.775 0 0.05 0.775 0 0.075 0.775 0 0.1 0.775 0 - 0.125 0.775 0 0.15 0.775 0 0.175 0.775 0 0.2 0.775 0 - 0.225 0.775 0 0.25 0.775 0 0.275 0.775 0 0.3 0.775 0 - 0.325 0.775 0 0.35 0.775 0 0.375 0.775 0 0.4 0.775 0 - 0.425 0.775 0 0.45 0.775 0 0.475 0.775 0 0.5 0.775 0 - 0.525 0.775 0 0.55 0.775 0 0.575 0.775 0 0.6 0.775 0 - 0.625 0.775 0 0.65 0.775 0 0.675 0.775 0 0.7 0.775 0 - 0.725 0.775 0 0.75 0.775 0 0.775 0.775 0 0.8 0.775 0 - 0.825 0.775 0 0.85 0.775 0 0.875 0.775 0 0.9 0.775 0 - 0.925 0.775 0 0.95 0.775 0 0.975 0.775 0 1 0.775 0 - 0 0.8 0 0.025 0.8 0 0.05 0.8 0 0.075 0.8 0 - 0.1 0.8 0 0.125 0.8 0 0.15 0.8 0 0.175 0.8 0 - 0.2 0.8 0 0.225 0.8 0 0.25 0.8 0 0.275 0.8 0 - 0.3 0.8 0 0.325 0.8 0 0.35 0.8 0 0.375 0.8 0 - 0.4 0.8 0 0.425 0.8 0 0.45 0.8 0 0.475 0.8 0 - 0.5 0.8 0 0.525 0.8 0 0.55 0.8 0 0.575 0.8 0 - 0.6 0.8 0 0.625 0.8 0 0.65 0.8 0 0.675 0.8 0 - 0.7 0.8 0 0.725 0.8 0 0.75 0.8 0 0.775 0.8 0 - 0.8 0.8 0 0.825 0.8 0 0.85 0.8 0 0.875 0.8 0 - 0.9 0.8 0 0.925 0.8 0 0.95 0.8 0 0.975 0.8 0 - 1 0.8 0 0 0.825 0 0.025 0.825 0 0.05 0.825 0 - 0.075 0.825 0 0.1 0.825 0 0.125 0.825 0 0.15 0.825 0 - 0.175 0.825 0 0.2 0.825 0 0.225 0.825 0 0.25 0.825 0 - 0.275 0.825 0 0.3 0.825 0 0.325 0.825 0 0.35 0.825 0 - 0.375 0.825 0 0.4 0.825 0 0.425 0.825 0 0.45 0.825 0 - 0.475 0.825 0 0.5 0.825 0 0.525 0.825 0 0.55 0.825 0 - 0.575 0.825 0 0.6 0.825 0 0.625 0.825 0 0.65 0.825 0 - 0.675 0.825 0 0.7 0.825 0 0.725 0.825 0 0.75 0.825 0 - 0.775 0.825 0 0.8 0.825 0 0.825 0.825 0 0.85 0.825 0 - 0.875 0.825 0 0.9 0.825 0 0.925 0.825 0 0.95 0.825 0 - 0.975 0.825 0 1 0.825 0 0 0.85 0 0.025 0.85 0 - 0.05 0.85 0 0.075 0.85 0 0.1 0.85 0 0.125 0.85 0 - 0.15 0.85 0 0.175 0.85 0 0.2 0.85 0 0.225 0.85 0 - 0.25 0.85 0 0.275 0.85 0 0.3 0.85 0 0.325 0.85 0 - 0.35 0.85 0 0.375 0.85 0 0.4 0.85 0 0.425 0.85 0 - 0.45 0.85 0 0.475 0.85 0 0.5 0.85 0 0.525 0.85 0 - 0.55 0.85 0 0.575 0.85 0 0.6 0.85 0 0.625 0.85 0 - 0.65 0.85 0 0.675 0.85 0 0.7 0.85 0 0.725 0.85 0 - 0.75 0.85 0 0.775 0.85 0 0.8 0.85 0 0.825 0.85 0 - 0.85 0.85 0 0.875 0.85 0 0.9 0.85 0 0.925 0.85 0 - 0.95 0.85 0 0.975 0.85 0 1 0.85 0 0 0.875 0 - 0.025 0.875 0 0.05 0.875 0 0.075 0.875 0 0.1 0.875 0 - 0.125 0.875 0 0.15 0.875 0 0.175 0.875 0 0.2 0.875 0 - 0.225 0.875 0 0.25 0.875 0 0.275 0.875 0 0.3 0.875 0 - 0.325 0.875 0 0.35 0.875 0 0.375 0.875 0 0.4 0.875 0 - 0.425 0.875 0 0.45 0.875 0 0.475 0.875 0 0.5 0.875 0 - 0.525 0.875 0 0.55 0.875 0 0.575 0.875 0 0.6 0.875 0 - 0.625 0.875 0 0.65 0.875 0 0.675 0.875 0 0.7 0.875 0 - 0.725 0.875 0 0.75 0.875 0 0.775 0.875 0 0.8 0.875 0 - 0.825 0.875 0 0.85 0.875 0 0.875 0.875 0 0.9 0.875 0 - 0.925 0.875 0 0.95 0.875 0 0.975 0.875 0 1 0.875 0 - 0 0.9 0 0.025 0.9 0 0.05 0.9 0 0.075 0.9 0 - 0.1 0.9 0 0.125 0.9 0 0.15 0.9 0 0.175 0.9 0 - 0.2 0.9 0 0.225 0.9 0 0.25 0.9 0 0.275 0.9 0 - 0.3 0.9 0 0.325 0.9 0 0.35 0.9 0 0.375 0.9 0 - 0.4 0.9 0 0.425 0.9 0 0.45 0.9 0 0.475 0.9 0 - 0.5 0.9 0 0.525 0.9 0 0.55 0.9 0 0.575 0.9 0 - 0.6 0.9 0 0.625 0.9 0 0.65 0.9 0 0.675 0.9 0 - 0.7 0.9 0 0.725 0.9 0 0.75 0.9 0 0.775 0.9 0 - 0.8 0.9 0 0.825 0.9 0 0.85 0.9 0 0.875 0.9 0 - 0.9 0.9 0 0.925 0.9 0 0.95 0.9 0 0.975 0.9 0 - 1 0.9 0 0 0.925 0 0.025 0.925 0 0.05 0.925 0 - 0.075 0.925 0 0.1 0.925 0 0.125 0.925 0 0.15 0.925 0 - 0.175 0.925 0 0.2 0.925 0 0.225 0.925 0 0.25 0.925 0 - 0.275 0.925 0 0.3 0.925 0 0.325 0.925 0 0.35 0.925 0 - 0.375 0.925 0 0.4 0.925 0 0.425 0.925 0 0.45 0.925 0 - 0.475 0.925 0 0.5 0.925 0 0.525 0.925 0 0.55 0.925 0 - 0.575 0.925 0 0.6 0.925 0 0.625 0.925 0 0.65 0.925 0 - 0.675 0.925 0 0.7 0.925 0 0.725 0.925 0 0.75 0.925 0 - 0.775 0.925 0 0.8 0.925 0 0.825 0.925 0 0.85 0.925 0 - 0.875 0.925 0 0.9 0.925 0 0.925 0.925 0 0.95 0.925 0 - 0.975 0.925 0 1 0.925 0 0 0.95 0 0.025 0.95 0 - 0.05 0.95 0 0.075 0.95 0 0.1 0.95 0 0.125 0.95 0 - 0.15 0.95 0 0.175 0.95 0 0.2 0.95 0 0.225 0.95 0 - 0.25 0.95 0 0.275 0.95 0 0.3 0.95 0 0.325 0.95 0 - 0.35 0.95 0 0.375 0.95 0 0.4 0.95 0 0.425 0.95 0 - 0.45 0.95 0 0.475 0.95 0 0.5 0.95 0 0.525 0.95 0 - 0.55 0.95 0 0.575 0.95 0 0.6 0.95 0 0.625 0.95 0 - 0.65 0.95 0 0.675 0.95 0 0.7 0.95 0 0.725 0.95 0 - 0.75 0.95 0 0.775 0.95 0 0.8 0.95 0 0.825 0.95 0 - 0.85 0.95 0 0.875 0.95 0 0.9 0.95 0 0.925 0.95 0 - 0.95 0.95 0 0.975 0.95 0 1 0.95 0 0 0.975 0 - 0.025 0.975 0 0.05 0.975 0 0.075 0.975 0 0.1 0.975 0 - 0.125 0.975 0 0.15 0.975 0 0.175 0.975 0 0.2 0.975 0 - 0.225 0.975 0 0.25 0.975 0 0.275 0.975 0 0.3 0.975 0 - 0.325 0.975 0 0.35 0.975 0 0.375 0.975 0 0.4 0.975 0 - 0.425 0.975 0 0.45 0.975 0 0.475 0.975 0 0.5 0.975 0 - 0.525 0.975 0 0.55 0.975 0 0.575 0.975 0 0.6 0.975 0 - 0.625 0.975 0 0.65 0.975 0 0.675 0.975 0 0.7 0.975 0 - 0.725 0.975 0 0.75 0.975 0 0.775 0.975 0 0.8 0.975 0 - 0.825 0.975 0 0.85 0.975 0 0.875 0.975 0 0.9 0.975 0 - 0.925 0.975 0 0.95 0.975 0 0.975 0.975 0 1 0.975 0 - 0 1 0 0.025 1 0 0.05 1 0 0.075 1 0 - 0.1 1 0 0.125 1 0 0.15 1 0 0.175 1 0 - 0.2 1 0 0.225 1 0 0.25 1 0 0.275 1 0 - 0.3 1 0 0.325 1 0 0.35 1 0 0.375 1 0 - 0.4 1 0 0.425 1 0 0.45 1 0 0.475 1 0 - 0.5 1 0 0.525 1 0 0.55 1 0 0.575 1 0 - 0.6 1 0 0.625 1 0 0.65 1 0 0.675 1 0 - 0.7 1 0 0.725 1 0 0.75 1 0 0.775 1 0 - 0.8 1 0 0.825 1 0 0.85 1 0 0.875 1 0 - 0.9 1 0 0.925 1 0 0.95 1 0 0.975 1 0 - 1 1 0 - - - - - 0 1 3 2 1 4 5 3 4 6 7 5 - 6 8 9 7 8 10 11 9 10 12 13 11 - 12 14 15 13 14 16 17 15 16 18 19 17 - 18 20 21 19 20 22 23 21 22 24 25 23 - 24 26 27 25 26 28 29 27 28 30 31 29 - 30 32 33 31 32 34 35 33 34 36 37 35 - 36 38 39 37 38 40 41 39 40 42 43 41 - 42 44 45 43 44 46 47 45 46 48 49 47 - 48 50 51 49 50 52 53 51 52 54 55 53 - 54 56 57 55 56 58 59 57 58 60 61 59 - 60 62 63 61 62 64 65 63 64 66 67 65 - 66 68 69 67 68 70 71 69 70 72 73 71 - 72 74 75 73 74 76 77 75 76 78 79 77 - 78 80 81 79 2 3 83 82 3 5 84 83 - 5 7 85 84 7 9 86 85 9 11 87 86 - 11 13 88 87 13 15 89 88 15 17 90 89 - 17 19 91 90 19 21 92 91 21 23 93 92 - 23 25 94 93 25 27 95 94 27 29 96 95 - 29 31 97 96 31 33 98 97 33 35 99 98 - 35 37 100 99 37 39 101 100 39 41 102 101 - 41 43 103 102 43 45 104 103 45 47 105 104 - 47 49 106 105 49 51 107 106 51 53 108 107 - 53 55 109 108 55 57 110 109 57 59 111 110 - 59 61 112 111 61 63 113 112 63 65 114 113 - 65 67 115 114 67 69 116 115 69 71 117 116 - 71 73 118 117 73 75 119 118 75 77 120 119 - 77 79 121 120 79 81 122 121 82 83 124 123 - 83 84 125 124 84 85 126 125 85 86 127 126 - 86 87 128 127 87 88 129 128 88 89 130 129 - 89 90 131 130 90 91 132 131 91 92 133 132 - 92 93 134 133 93 94 135 134 94 95 136 135 - 95 96 137 136 96 97 138 137 97 98 139 138 - 98 99 140 139 99 100 141 140 100 101 142 141 - 101 102 143 142 102 103 144 143 103 104 145 144 - 104 105 146 145 105 106 147 146 106 107 148 147 - 107 108 149 148 108 109 150 149 109 110 151 150 - 110 111 152 151 111 112 153 152 112 113 154 153 - 113 114 155 154 114 115 156 155 115 116 157 156 - 116 117 158 157 117 118 159 158 118 119 160 159 - 119 120 161 160 120 121 162 161 121 122 163 162 - 123 124 165 164 124 125 166 165 125 126 167 166 - 126 127 168 167 127 128 169 168 128 129 170 169 - 129 130 171 170 130 131 172 171 131 132 173 172 - 132 133 174 173 133 134 175 174 134 135 176 175 - 135 136 177 176 136 137 178 177 137 138 179 178 - 138 139 180 179 139 140 181 180 140 141 182 181 - 141 142 183 182 142 143 184 183 143 144 185 184 - 144 145 186 185 145 146 187 186 146 147 188 187 - 147 148 189 188 148 149 190 189 149 150 191 190 - 150 151 192 191 151 152 193 192 152 153 194 193 - 153 154 195 194 154 155 196 195 155 156 197 196 - 156 157 198 197 157 158 199 198 158 159 200 199 - 159 160 201 200 160 161 202 201 161 162 203 202 - 162 163 204 203 164 165 206 205 165 166 207 206 - 166 167 208 207 167 168 209 208 168 169 210 209 - 169 170 211 210 170 171 212 211 171 172 213 212 - 172 173 214 213 173 174 215 214 174 175 216 215 - 175 176 217 216 176 177 218 217 177 178 219 218 - 178 179 220 219 179 180 221 220 180 181 222 221 - 181 182 223 222 182 183 224 223 183 184 225 224 - 184 185 226 225 185 186 227 226 186 187 228 227 - 187 188 229 228 188 189 230 229 189 190 231 230 - 190 191 232 231 191 192 233 232 192 193 234 233 - 193 194 235 234 194 195 236 235 195 196 237 236 - 196 197 238 237 197 198 239 238 198 199 240 239 - 199 200 241 240 200 201 242 241 201 202 243 242 - 202 203 244 243 203 204 245 244 205 206 247 246 - 206 207 248 247 207 208 249 248 208 209 250 249 - 209 210 251 250 210 211 252 251 211 212 253 252 - 212 213 254 253 213 214 255 254 214 215 256 255 - 215 216 257 256 216 217 258 257 217 218 259 258 - 218 219 260 259 219 220 261 260 220 221 262 261 - 221 222 263 262 222 223 264 263 223 224 265 264 - 224 225 266 265 225 226 267 266 226 227 268 267 - 227 228 269 268 228 229 270 269 229 230 271 270 - 230 231 272 271 231 232 273 272 232 233 274 273 - 233 234 275 274 234 235 276 275 235 236 277 276 - 236 237 278 277 237 238 279 278 238 239 280 279 - 239 240 281 280 240 241 282 281 241 242 283 282 - 242 243 284 283 243 244 285 284 244 245 286 285 - 246 247 288 287 247 248 289 288 248 249 290 289 - 249 250 291 290 250 251 292 291 251 252 293 292 - 252 253 294 293 253 254 295 294 254 255 296 295 - 255 256 297 296 256 257 298 297 257 258 299 298 - 258 259 300 299 259 260 301 300 260 261 302 301 - 261 262 303 302 262 263 304 303 263 264 305 304 - 264 265 306 305 265 266 307 306 266 267 308 307 - 267 268 309 308 268 269 310 309 269 270 311 310 - 270 271 312 311 271 272 313 312 272 273 314 313 - 273 274 315 314 274 275 316 315 275 276 317 316 - 276 277 318 317 277 278 319 318 278 279 320 319 - 279 280 321 320 280 281 322 321 281 282 323 322 - 282 283 324 323 283 284 325 324 284 285 326 325 - 285 286 327 326 287 288 329 328 288 289 330 329 - 289 290 331 330 290 291 332 331 291 292 333 332 - 292 293 334 333 293 294 335 334 294 295 336 335 - 295 296 337 336 296 297 338 337 297 298 339 338 - 298 299 340 339 299 300 341 340 300 301 342 341 - 301 302 343 342 302 303 344 343 303 304 345 344 - 304 305 346 345 305 306 347 346 306 307 348 347 - 307 308 349 348 308 309 350 349 309 310 351 350 - 310 311 352 351 311 312 353 352 312 313 354 353 - 313 314 355 354 314 315 356 355 315 316 357 356 - 316 317 358 357 317 318 359 358 318 319 360 359 - 319 320 361 360 320 321 362 361 321 322 363 362 - 322 323 364 363 323 324 365 364 324 325 366 365 - 325 326 367 366 326 327 368 367 328 329 370 369 - 329 330 371 370 330 331 372 371 331 332 373 372 - 332 333 374 373 333 334 375 374 334 335 376 375 - 335 336 377 376 336 337 378 377 337 338 379 378 - 338 339 380 379 339 340 381 380 340 341 382 381 - 341 342 383 382 342 343 384 383 343 344 385 384 - 344 345 386 385 345 346 387 386 346 347 388 387 - 347 348 389 388 348 349 390 389 349 350 391 390 - 350 351 392 391 351 352 393 392 352 353 394 393 - 353 354 395 394 354 355 396 395 355 356 397 396 - 356 357 398 397 357 358 399 398 358 359 400 399 - 359 360 401 400 360 361 402 401 361 362 403 402 - 362 363 404 403 363 364 405 404 364 365 406 405 - 365 366 407 406 366 367 408 407 367 368 409 408 - 369 370 411 410 370 371 412 411 371 372 413 412 - 372 373 414 413 373 374 415 414 374 375 416 415 - 375 376 417 416 376 377 418 417 377 378 419 418 - 378 379 420 419 379 380 421 420 380 381 422 421 - 381 382 423 422 382 383 424 423 383 384 425 424 - 384 385 426 425 385 386 427 426 386 387 428 427 - 387 388 429 428 388 389 430 429 389 390 431 430 - 390 391 432 431 391 392 433 432 392 393 434 433 - 393 394 435 434 394 395 436 435 395 396 437 436 - 396 397 438 437 397 398 439 438 398 399 440 439 - 399 400 441 440 400 401 442 441 401 402 443 442 - 402 403 444 443 403 404 445 444 404 405 446 445 - 405 406 447 446 406 407 448 447 407 408 449 448 - 408 409 450 449 410 411 452 451 411 412 453 452 - 412 413 454 453 413 414 455 454 414 415 456 455 - 415 416 457 456 416 417 458 457 417 418 459 458 - 418 419 460 459 419 420 461 460 420 421 462 461 - 421 422 463 462 422 423 464 463 423 424 465 464 - 424 425 466 465 425 426 467 466 426 427 468 467 - 427 428 469 468 428 429 470 469 429 430 471 470 - 430 431 472 471 431 432 473 472 432 433 474 473 - 433 434 475 474 434 435 476 475 435 436 477 476 - 436 437 478 477 437 438 479 478 438 439 480 479 - 439 440 481 480 440 441 482 481 441 442 483 482 - 442 443 484 483 443 444 485 484 444 445 486 485 - 445 446 487 486 446 447 488 487 447 448 489 488 - 448 449 490 489 449 450 491 490 451 452 493 492 - 452 453 494 493 453 454 495 494 454 455 496 495 - 455 456 497 496 456 457 498 497 457 458 499 498 - 458 459 500 499 459 460 501 500 460 461 502 501 - 461 462 503 502 462 463 504 503 463 464 505 504 - 464 465 506 505 465 466 507 506 466 467 508 507 - 467 468 509 508 468 469 510 509 469 470 511 510 - 470 471 512 511 471 472 513 512 472 473 514 513 - 473 474 515 514 474 475 516 515 475 476 517 516 - 476 477 518 517 477 478 519 518 478 479 520 519 - 479 480 521 520 480 481 522 521 481 482 523 522 - 482 483 524 523 483 484 525 524 484 485 526 525 - 485 486 527 526 486 487 528 527 487 488 529 528 - 488 489 530 529 489 490 531 530 490 491 532 531 - 492 493 534 533 493 494 535 534 494 495 536 535 - 495 496 537 536 496 497 538 537 497 498 539 538 - 498 499 540 539 499 500 541 540 500 501 542 541 - 501 502 543 542 502 503 544 543 503 504 545 544 - 504 505 546 545 505 506 547 546 506 507 548 547 - 507 508 549 548 508 509 550 549 509 510 551 550 - 510 511 552 551 511 512 553 552 512 513 554 553 - 513 514 555 554 514 515 556 555 515 516 557 556 - 516 517 558 557 517 518 559 558 518 519 560 559 - 519 520 561 560 520 521 562 561 521 522 563 562 - 522 523 564 563 523 524 565 564 524 525 566 565 - 525 526 567 566 526 527 568 567 527 528 569 568 - 528 529 570 569 529 530 571 570 530 531 572 571 - 531 532 573 572 533 534 575 574 534 535 576 575 - 535 536 577 576 536 537 578 577 537 538 579 578 - 538 539 580 579 539 540 581 580 540 541 582 581 - 541 542 583 582 542 543 584 583 543 544 585 584 - 544 545 586 585 545 546 587 586 546 547 588 587 - 547 548 589 588 548 549 590 589 549 550 591 590 - 550 551 592 591 551 552 593 592 552 553 594 593 - 553 554 595 594 554 555 596 595 555 556 597 596 - 556 557 598 597 557 558 599 598 558 559 600 599 - 559 560 601 600 560 561 602 601 561 562 603 602 - 562 563 604 603 563 564 605 604 564 565 606 605 - 565 566 607 606 566 567 608 607 567 568 609 608 - 568 569 610 609 569 570 611 610 570 571 612 611 - 571 572 613 612 572 573 614 613 574 575 616 615 - 575 576 617 616 576 577 618 617 577 578 619 618 - 578 579 620 619 579 580 621 620 580 581 622 621 - 581 582 623 622 582 583 624 623 583 584 625 624 - 584 585 626 625 585 586 627 626 586 587 628 627 - 587 588 629 628 588 589 630 629 589 590 631 630 - 590 591 632 631 591 592 633 632 592 593 634 633 - 593 594 635 634 594 595 636 635 595 596 637 636 - 596 597 638 637 597 598 639 638 598 599 640 639 - 599 600 641 640 600 601 642 641 601 602 643 642 - 602 603 644 643 603 604 645 644 604 605 646 645 - 605 606 647 646 606 607 648 647 607 608 649 648 - 608 609 650 649 609 610 651 650 610 611 652 651 - 611 612 653 652 612 613 654 653 613 614 655 654 - 615 616 657 656 616 617 658 657 617 618 659 658 - 618 619 660 659 619 620 661 660 620 621 662 661 - 621 622 663 662 622 623 664 663 623 624 665 664 - 624 625 666 665 625 626 667 666 626 627 668 667 - 627 628 669 668 628 629 670 669 629 630 671 670 - 630 631 672 671 631 632 673 672 632 633 674 673 - 633 634 675 674 634 635 676 675 635 636 677 676 - 636 637 678 677 637 638 679 678 638 639 680 679 - 639 640 681 680 640 641 682 681 641 642 683 682 - 642 643 684 683 643 644 685 684 644 645 686 685 - 645 646 687 686 646 647 688 687 647 648 689 688 - 648 649 690 689 649 650 691 690 650 651 692 691 - 651 652 693 692 652 653 694 693 653 654 695 694 - 654 655 696 695 656 657 698 697 657 658 699 698 - 658 659 700 699 659 660 701 700 660 661 702 701 - 661 662 703 702 662 663 704 703 663 664 705 704 - 664 665 706 705 665 666 707 706 666 667 708 707 - 667 668 709 708 668 669 710 709 669 670 711 710 - 670 671 712 711 671 672 713 712 672 673 714 713 - 673 674 715 714 674 675 716 715 675 676 717 716 - 676 677 718 717 677 678 719 718 678 679 720 719 - 679 680 721 720 680 681 722 721 681 682 723 722 - 682 683 724 723 683 684 725 724 684 685 726 725 - 685 686 727 726 686 687 728 727 687 688 729 728 - 688 689 730 729 689 690 731 730 690 691 732 731 - 691 692 733 732 692 693 734 733 693 694 735 734 - 694 695 736 735 695 696 737 736 697 698 739 738 - 698 699 740 739 699 700 741 740 700 701 742 741 - 701 702 743 742 702 703 744 743 703 704 745 744 - 704 705 746 745 705 706 747 746 706 707 748 747 - 707 708 749 748 708 709 750 749 709 710 751 750 - 710 711 752 751 711 712 753 752 712 713 754 753 - 713 714 755 754 714 715 756 755 715 716 757 756 - 716 717 758 757 717 718 759 758 718 719 760 759 - 719 720 761 760 720 721 762 761 721 722 763 762 - 722 723 764 763 723 724 765 764 724 725 766 765 - 725 726 767 766 726 727 768 767 727 728 769 768 - 728 729 770 769 729 730 771 770 730 731 772 771 - 731 732 773 772 732 733 774 773 733 734 775 774 - 734 735 776 775 735 736 777 776 736 737 778 777 - 738 739 780 779 739 740 781 780 740 741 782 781 - 741 742 783 782 742 743 784 783 743 744 785 784 - 744 745 786 785 745 746 787 786 746 747 788 787 - 747 748 789 788 748 749 790 789 749 750 791 790 - 750 751 792 791 751 752 793 792 752 753 794 793 - 753 754 795 794 754 755 796 795 755 756 797 796 - 756 757 798 797 757 758 799 798 758 759 800 799 - 759 760 801 800 760 761 802 801 761 762 803 802 - 762 763 804 803 763 764 805 804 764 765 806 805 - 765 766 807 806 766 767 808 807 767 768 809 808 - 768 769 810 809 769 770 811 810 770 771 812 811 - 771 772 813 812 772 773 814 813 773 774 815 814 - 774 775 816 815 775 776 817 816 776 777 818 817 - 777 778 819 818 779 780 821 820 780 781 822 821 - 781 782 823 822 782 783 824 823 783 784 825 824 - 784 785 826 825 785 786 827 826 786 787 828 827 - 787 788 829 828 788 789 830 829 789 790 831 830 - 790 791 832 831 791 792 833 832 792 793 834 833 - 793 794 835 834 794 795 836 835 795 796 837 836 - 796 797 838 837 797 798 839 838 798 799 840 839 - 799 800 841 840 800 801 842 841 801 802 843 842 - 802 803 844 843 803 804 845 844 804 805 846 845 - 805 806 847 846 806 807 848 847 807 808 849 848 - 808 809 850 849 809 810 851 850 810 811 852 851 - 811 812 853 852 812 813 854 853 813 814 855 854 - 814 815 856 855 815 816 857 856 816 817 858 857 - 817 818 859 858 818 819 860 859 820 821 862 861 - 821 822 863 862 822 823 864 863 823 824 865 864 - 824 825 866 865 825 826 867 866 826 827 868 867 - 827 828 869 868 828 829 870 869 829 830 871 870 - 830 831 872 871 831 832 873 872 832 833 874 873 - 833 834 875 874 834 835 876 875 835 836 877 876 - 836 837 878 877 837 838 879 878 838 839 880 879 - 839 840 881 880 840 841 882 881 841 842 883 882 - 842 843 884 883 843 844 885 884 844 845 886 885 - 845 846 887 886 846 847 888 887 847 848 889 888 - 848 849 890 889 849 850 891 890 850 851 892 891 - 851 852 893 892 852 853 894 893 853 854 895 894 - 854 855 896 895 855 856 897 896 856 857 898 897 - 857 858 899 898 858 859 900 899 859 860 901 900 - 861 862 903 902 862 863 904 903 863 864 905 904 - 864 865 906 905 865 866 907 906 866 867 908 907 - 867 868 909 908 868 869 910 909 869 870 911 910 - 870 871 912 911 871 872 913 912 872 873 914 913 - 873 874 915 914 874 875 916 915 875 876 917 916 - 876 877 918 917 877 878 919 918 878 879 920 919 - 879 880 921 920 880 881 922 921 881 882 923 922 - 882 883 924 923 883 884 925 924 884 885 926 925 - 885 886 927 926 886 887 928 927 887 888 929 928 - 888 889 930 929 889 890 931 930 890 891 932 931 - 891 892 933 932 892 893 934 933 893 894 935 934 - 894 895 936 935 895 896 937 936 896 897 938 937 - 897 898 939 938 898 899 940 939 899 900 941 940 - 900 901 942 941 902 903 944 943 903 904 945 944 - 904 905 946 945 905 906 947 946 906 907 948 947 - 907 908 949 948 908 909 950 949 909 910 951 950 - 910 911 952 951 911 912 953 952 912 913 954 953 - 913 914 955 954 914 915 956 955 915 916 957 956 - 916 917 958 957 917 918 959 958 918 919 960 959 - 919 920 961 960 920 921 962 961 921 922 963 962 - 922 923 964 963 923 924 965 964 924 925 966 965 - 925 926 967 966 926 927 968 967 927 928 969 968 - 928 929 970 969 929 930 971 970 930 931 972 971 - 931 932 973 972 932 933 974 973 933 934 975 974 - 934 935 976 975 935 936 977 976 936 937 978 977 - 937 938 979 978 938 939 980 979 939 940 981 980 - 940 941 982 981 941 942 983 982 943 944 985 984 - 944 945 986 985 945 946 987 986 946 947 988 987 - 947 948 989 988 948 949 990 989 949 950 991 990 - 950 951 992 991 951 952 993 992 952 953 994 993 - 953 954 995 994 954 955 996 995 955 956 997 996 - 956 957 998 997 957 958 999 998 958 959 1000 999 - 959 960 1001 1000 960 961 1002 1001 961 962 1003 1002 - 962 963 1004 1003 963 964 1005 1004 964 965 1006 1005 - 965 966 1007 1006 966 967 1008 1007 967 968 1009 1008 - 968 969 1010 1009 969 970 1011 1010 970 971 1012 1011 - 971 972 1013 1012 972 973 1014 1013 973 974 1015 1014 - 974 975 1016 1015 975 976 1017 1016 976 977 1018 1017 - 977 978 1019 1018 978 979 1020 1019 979 980 1021 1020 - 980 981 1022 1021 981 982 1023 1022 982 983 1024 1023 - 984 985 1026 1025 985 986 1027 1026 986 987 1028 1027 - 987 988 1029 1028 988 989 1030 1029 989 990 1031 1030 - 990 991 1032 1031 991 992 1033 1032 992 993 1034 1033 - 993 994 1035 1034 994 995 1036 1035 995 996 1037 1036 - 996 997 1038 1037 997 998 1039 1038 998 999 1040 1039 - 999 1000 1041 1040 1000 1001 1042 1041 1001 1002 1043 1042 - 1002 1003 1044 1043 1003 1004 1045 1044 1004 1005 1046 1045 - 1005 1006 1047 1046 1006 1007 1048 1047 1007 1008 1049 1048 - 1008 1009 1050 1049 1009 1010 1051 1050 1010 1011 1052 1051 - 1011 1012 1053 1052 1012 1013 1054 1053 1013 1014 1055 1054 - 1014 1015 1056 1055 1015 1016 1057 1056 1016 1017 1058 1057 - 1017 1018 1059 1058 1018 1019 1060 1059 1019 1020 1061 1060 - 1020 1021 1062 1061 1021 1022 1063 1062 1022 1023 1064 1063 - 1023 1024 1065 1064 1025 1026 1067 1066 1026 1027 1068 1067 - 1027 1028 1069 1068 1028 1029 1070 1069 1029 1030 1071 1070 - 1030 1031 1072 1071 1031 1032 1073 1072 1032 1033 1074 1073 - 1033 1034 1075 1074 1034 1035 1076 1075 1035 1036 1077 1076 - 1036 1037 1078 1077 1037 1038 1079 1078 1038 1039 1080 1079 - 1039 1040 1081 1080 1040 1041 1082 1081 1041 1042 1083 1082 - 1042 1043 1084 1083 1043 1044 1085 1084 1044 1045 1086 1085 - 1045 1046 1087 1086 1046 1047 1088 1087 1047 1048 1089 1088 - 1048 1049 1090 1089 1049 1050 1091 1090 1050 1051 1092 1091 - 1051 1052 1093 1092 1052 1053 1094 1093 1053 1054 1095 1094 - 1054 1055 1096 1095 1055 1056 1097 1096 1056 1057 1098 1097 - 1057 1058 1099 1098 1058 1059 1100 1099 1059 1060 1101 1100 - 1060 1061 1102 1101 1061 1062 1103 1102 1062 1063 1104 1103 - 1063 1064 1105 1104 1064 1065 1106 1105 1066 1067 1108 1107 - 1067 1068 1109 1108 1068 1069 1110 1109 1069 1070 1111 1110 - 1070 1071 1112 1111 1071 1072 1113 1112 1072 1073 1114 1113 - 1073 1074 1115 1114 1074 1075 1116 1115 1075 1076 1117 1116 - 1076 1077 1118 1117 1077 1078 1119 1118 1078 1079 1120 1119 - 1079 1080 1121 1120 1080 1081 1122 1121 1081 1082 1123 1122 - 1082 1083 1124 1123 1083 1084 1125 1124 1084 1085 1126 1125 - 1085 1086 1127 1126 1086 1087 1128 1127 1087 1088 1129 1128 - 1088 1089 1130 1129 1089 1090 1131 1130 1090 1091 1132 1131 - 1091 1092 1133 1132 1092 1093 1134 1133 1093 1094 1135 1134 - 1094 1095 1136 1135 1095 1096 1137 1136 1096 1097 1138 1137 - 1097 1098 1139 1138 1098 1099 1140 1139 1099 1100 1141 1140 - 1100 1101 1142 1141 1101 1102 1143 1142 1102 1103 1144 1143 - 1103 1104 1145 1144 1104 1105 1146 1145 1105 1106 1147 1146 - 1107 1108 1149 1148 1108 1109 1150 1149 1109 1110 1151 1150 - 1110 1111 1152 1151 1111 1112 1153 1152 1112 1113 1154 1153 - 1113 1114 1155 1154 1114 1115 1156 1155 1115 1116 1157 1156 - 1116 1117 1158 1157 1117 1118 1159 1158 1118 1119 1160 1159 - 1119 1120 1161 1160 1120 1121 1162 1161 1121 1122 1163 1162 - 1122 1123 1164 1163 1123 1124 1165 1164 1124 1125 1166 1165 - 1125 1126 1167 1166 1126 1127 1168 1167 1127 1128 1169 1168 - 1128 1129 1170 1169 1129 1130 1171 1170 1130 1131 1172 1171 - 1131 1132 1173 1172 1132 1133 1174 1173 1133 1134 1175 1174 - 1134 1135 1176 1175 1135 1136 1177 1176 1136 1137 1178 1177 - 1137 1138 1179 1178 1138 1139 1180 1179 1139 1140 1181 1180 - 1140 1141 1182 1181 1141 1142 1183 1182 1142 1143 1184 1183 - 1143 1144 1185 1184 1144 1145 1186 1185 1145 1146 1187 1186 - 1146 1147 1188 1187 1148 1149 1190 1189 1149 1150 1191 1190 - 1150 1151 1192 1191 1151 1152 1193 1192 1152 1153 1194 1193 - 1153 1154 1195 1194 1154 1155 1196 1195 1155 1156 1197 1196 - 1156 1157 1198 1197 1157 1158 1199 1198 1158 1159 1200 1199 - 1159 1160 1201 1200 1160 1161 1202 1201 1161 1162 1203 1202 - 1162 1163 1204 1203 1163 1164 1205 1204 1164 1165 1206 1205 - 1165 1166 1207 1206 1166 1167 1208 1207 1167 1168 1209 1208 - 1168 1169 1210 1209 1169 1170 1211 1210 1170 1171 1212 1211 - 1171 1172 1213 1212 1172 1173 1214 1213 1173 1174 1215 1214 - 1174 1175 1216 1215 1175 1176 1217 1216 1176 1177 1218 1217 - 1177 1178 1219 1218 1178 1179 1220 1219 1179 1180 1221 1220 - 1180 1181 1222 1221 1181 1182 1223 1222 1182 1183 1224 1223 - 1183 1184 1225 1224 1184 1185 1226 1225 1185 1186 1227 1226 - 1186 1187 1228 1227 1187 1188 1229 1228 1189 1190 1231 1230 - 1190 1191 1232 1231 1191 1192 1233 1232 1192 1193 1234 1233 - 1193 1194 1235 1234 1194 1195 1236 1235 1195 1196 1237 1236 - 1196 1197 1238 1237 1197 1198 1239 1238 1198 1199 1240 1239 - 1199 1200 1241 1240 1200 1201 1242 1241 1201 1202 1243 1242 - 1202 1203 1244 1243 1203 1204 1245 1244 1204 1205 1246 1245 - 1205 1206 1247 1246 1206 1207 1248 1247 1207 1208 1249 1248 - 1208 1209 1250 1249 1209 1210 1251 1250 1210 1211 1252 1251 - 1211 1212 1253 1252 1212 1213 1254 1253 1213 1214 1255 1254 - 1214 1215 1256 1255 1215 1216 1257 1256 1216 1217 1258 1257 - 1217 1218 1259 1258 1218 1219 1260 1259 1219 1220 1261 1260 - 1220 1221 1262 1261 1221 1222 1263 1262 1222 1223 1264 1263 - 1223 1224 1265 1264 1224 1225 1266 1265 1225 1226 1267 1266 - 1226 1227 1268 1267 1227 1228 1269 1268 1228 1229 1270 1269 - 1230 1231 1272 1271 1231 1232 1273 1272 1232 1233 1274 1273 - 1233 1234 1275 1274 1234 1235 1276 1275 1235 1236 1277 1276 - 1236 1237 1278 1277 1237 1238 1279 1278 1238 1239 1280 1279 - 1239 1240 1281 1280 1240 1241 1282 1281 1241 1242 1283 1282 - 1242 1243 1284 1283 1243 1244 1285 1284 1244 1245 1286 1285 - 1245 1246 1287 1286 1246 1247 1288 1287 1247 1248 1289 1288 - 1248 1249 1290 1289 1249 1250 1291 1290 1250 1251 1292 1291 - 1251 1252 1293 1292 1252 1253 1294 1293 1253 1254 1295 1294 - 1254 1255 1296 1295 1255 1256 1297 1296 1256 1257 1298 1297 - 1257 1258 1299 1298 1258 1259 1300 1299 1259 1260 1301 1300 - 1260 1261 1302 1301 1261 1262 1303 1302 1262 1263 1304 1303 - 1263 1264 1305 1304 1264 1265 1306 1305 1265 1266 1307 1306 - 1266 1267 1308 1307 1267 1268 1309 1308 1268 1269 1310 1309 - 1269 1270 1311 1310 1271 1272 1313 1312 1272 1273 1314 1313 - 1273 1274 1315 1314 1274 1275 1316 1315 1275 1276 1317 1316 - 1276 1277 1318 1317 1277 1278 1319 1318 1278 1279 1320 1319 - 1279 1280 1321 1320 1280 1281 1322 1321 1281 1282 1323 1322 - 1282 1283 1324 1323 1283 1284 1325 1324 1284 1285 1326 1325 - 1285 1286 1327 1326 1286 1287 1328 1327 1287 1288 1329 1328 - 1288 1289 1330 1329 1289 1290 1331 1330 1290 1291 1332 1331 - 1291 1292 1333 1332 1292 1293 1334 1333 1293 1294 1335 1334 - 1294 1295 1336 1335 1295 1296 1337 1336 1296 1297 1338 1337 - 1297 1298 1339 1338 1298 1299 1340 1339 1299 1300 1341 1340 - 1300 1301 1342 1341 1301 1302 1343 1342 1302 1303 1344 1343 - 1303 1304 1345 1344 1304 1305 1346 1345 1305 1306 1347 1346 - 1306 1307 1348 1347 1307 1308 1349 1348 1308 1309 1350 1349 - 1309 1310 1351 1350 1310 1311 1352 1351 1312 1313 1354 1353 - 1313 1314 1355 1354 1314 1315 1356 1355 1315 1316 1357 1356 - 1316 1317 1358 1357 1317 1318 1359 1358 1318 1319 1360 1359 - 1319 1320 1361 1360 1320 1321 1362 1361 1321 1322 1363 1362 - 1322 1323 1364 1363 1323 1324 1365 1364 1324 1325 1366 1365 - 1325 1326 1367 1366 1326 1327 1368 1367 1327 1328 1369 1368 - 1328 1329 1370 1369 1329 1330 1371 1370 1330 1331 1372 1371 - 1331 1332 1373 1372 1332 1333 1374 1373 1333 1334 1375 1374 - 1334 1335 1376 1375 1335 1336 1377 1376 1336 1337 1378 1377 - 1337 1338 1379 1378 1338 1339 1380 1379 1339 1340 1381 1380 - 1340 1341 1382 1381 1341 1342 1383 1382 1342 1343 1384 1383 - 1343 1344 1385 1384 1344 1345 1386 1385 1345 1346 1387 1386 - 1346 1347 1388 1387 1347 1348 1389 1388 1348 1349 1390 1389 - 1349 1350 1391 1390 1350 1351 1392 1391 1351 1352 1393 1392 - 1353 1354 1395 1394 1354 1355 1396 1395 1355 1356 1397 1396 - 1356 1357 1398 1397 1357 1358 1399 1398 1358 1359 1400 1399 - 1359 1360 1401 1400 1360 1361 1402 1401 1361 1362 1403 1402 - 1362 1363 1404 1403 1363 1364 1405 1404 1364 1365 1406 1405 - 1365 1366 1407 1406 1366 1367 1408 1407 1367 1368 1409 1408 - 1368 1369 1410 1409 1369 1370 1411 1410 1370 1371 1412 1411 - 1371 1372 1413 1412 1372 1373 1414 1413 1373 1374 1415 1414 - 1374 1375 1416 1415 1375 1376 1417 1416 1376 1377 1418 1417 - 1377 1378 1419 1418 1378 1379 1420 1419 1379 1380 1421 1420 - 1380 1381 1422 1421 1381 1382 1423 1422 1382 1383 1424 1423 - 1383 1384 1425 1424 1384 1385 1426 1425 1385 1386 1427 1426 - 1386 1387 1428 1427 1387 1388 1429 1428 1388 1389 1430 1429 - 1389 1390 1431 1430 1390 1391 1432 1431 1391 1392 1433 1432 - 1392 1393 1434 1433 1394 1395 1436 1435 1395 1396 1437 1436 - 1396 1397 1438 1437 1397 1398 1439 1438 1398 1399 1440 1439 - 1399 1400 1441 1440 1400 1401 1442 1441 1401 1402 1443 1442 - 1402 1403 1444 1443 1403 1404 1445 1444 1404 1405 1446 1445 - 1405 1406 1447 1446 1406 1407 1448 1447 1407 1408 1449 1448 - 1408 1409 1450 1449 1409 1410 1451 1450 1410 1411 1452 1451 - 1411 1412 1453 1452 1412 1413 1454 1453 1413 1414 1455 1454 - 1414 1415 1456 1455 1415 1416 1457 1456 1416 1417 1458 1457 - 1417 1418 1459 1458 1418 1419 1460 1459 1419 1420 1461 1460 - 1420 1421 1462 1461 1421 1422 1463 1462 1422 1423 1464 1463 - 1423 1424 1465 1464 1424 1425 1466 1465 1425 1426 1467 1466 - 1426 1427 1468 1467 1427 1428 1469 1468 1428 1429 1470 1469 - 1429 1430 1471 1470 1430 1431 1472 1471 1431 1432 1473 1472 - 1432 1433 1474 1473 1433 1434 1475 1474 1435 1436 1477 1476 - 1436 1437 1478 1477 1437 1438 1479 1478 1438 1439 1480 1479 - 1439 1440 1481 1480 1440 1441 1482 1481 1441 1442 1483 1482 - 1442 1443 1484 1483 1443 1444 1485 1484 1444 1445 1486 1485 - 1445 1446 1487 1486 1446 1447 1488 1487 1447 1448 1489 1488 - 1448 1449 1490 1489 1449 1450 1491 1490 1450 1451 1492 1491 - 1451 1452 1493 1492 1452 1453 1494 1493 1453 1454 1495 1494 - 1454 1455 1496 1495 1455 1456 1497 1496 1456 1457 1498 1497 - 1457 1458 1499 1498 1458 1459 1500 1499 1459 1460 1501 1500 - 1460 1461 1502 1501 1461 1462 1503 1502 1462 1463 1504 1503 - 1463 1464 1505 1504 1464 1465 1506 1505 1465 1466 1507 1506 - 1466 1467 1508 1507 1467 1468 1509 1508 1468 1469 1510 1509 - 1469 1470 1511 1510 1470 1471 1512 1511 1471 1472 1513 1512 - 1472 1473 1514 1513 1473 1474 1515 1514 1474 1475 1516 1515 - 1476 1477 1518 1517 1477 1478 1519 1518 1478 1479 1520 1519 - 1479 1480 1521 1520 1480 1481 1522 1521 1481 1482 1523 1522 - 1482 1483 1524 1523 1483 1484 1525 1524 1484 1485 1526 1525 - 1485 1486 1527 1526 1486 1487 1528 1527 1487 1488 1529 1528 - 1488 1489 1530 1529 1489 1490 1531 1530 1490 1491 1532 1531 - 1491 1492 1533 1532 1492 1493 1534 1533 1493 1494 1535 1534 - 1494 1495 1536 1535 1495 1496 1537 1536 1496 1497 1538 1537 - 1497 1498 1539 1538 1498 1499 1540 1539 1499 1500 1541 1540 - 1500 1501 1542 1541 1501 1502 1543 1542 1502 1503 1544 1543 - 1503 1504 1545 1544 1504 1505 1546 1545 1505 1506 1547 1546 - 1506 1507 1548 1547 1507 1508 1549 1548 1508 1509 1550 1549 - 1509 1510 1551 1550 1510 1511 1552 1551 1511 1512 1553 1552 - 1512 1513 1554 1553 1513 1514 1555 1554 1514 1515 1556 1555 - 1515 1516 1557 1556 1517 1518 1559 1558 1518 1519 1560 1559 - 1519 1520 1561 1560 1520 1521 1562 1561 1521 1522 1563 1562 - 1522 1523 1564 1563 1523 1524 1565 1564 1524 1525 1566 1565 - 1525 1526 1567 1566 1526 1527 1568 1567 1527 1528 1569 1568 - 1528 1529 1570 1569 1529 1530 1571 1570 1530 1531 1572 1571 - 1531 1532 1573 1572 1532 1533 1574 1573 1533 1534 1575 1574 - 1534 1535 1576 1575 1535 1536 1577 1576 1536 1537 1578 1577 - 1537 1538 1579 1578 1538 1539 1580 1579 1539 1540 1581 1580 - 1540 1541 1582 1581 1541 1542 1583 1582 1542 1543 1584 1583 - 1543 1544 1585 1584 1544 1545 1586 1585 1545 1546 1587 1586 - 1546 1547 1588 1587 1547 1548 1589 1588 1548 1549 1590 1589 - 1549 1550 1591 1590 1550 1551 1592 1591 1551 1552 1593 1592 - 1552 1553 1594 1593 1553 1554 1595 1594 1554 1555 1596 1595 - 1555 1556 1597 1596 1556 1557 1598 1597 1558 1559 1600 1599 - 1559 1560 1601 1600 1560 1561 1602 1601 1561 1562 1603 1602 - 1562 1563 1604 1603 1563 1564 1605 1604 1564 1565 1606 1605 - 1565 1566 1607 1606 1566 1567 1608 1607 1567 1568 1609 1608 - 1568 1569 1610 1609 1569 1570 1611 1610 1570 1571 1612 1611 - 1571 1572 1613 1612 1572 1573 1614 1613 1573 1574 1615 1614 - 1574 1575 1616 1615 1575 1576 1617 1616 1576 1577 1618 1617 - 1577 1578 1619 1618 1578 1579 1620 1619 1579 1580 1621 1620 - 1580 1581 1622 1621 1581 1582 1623 1622 1582 1583 1624 1623 - 1583 1584 1625 1624 1584 1585 1626 1625 1585 1586 1627 1626 - 1586 1587 1628 1627 1587 1588 1629 1628 1588 1589 1630 1629 - 1589 1590 1631 1630 1590 1591 1632 1631 1591 1592 1633 1632 - 1592 1593 1634 1633 1593 1594 1635 1634 1594 1595 1636 1635 - 1595 1596 1637 1636 1596 1597 1638 1637 1597 1598 1639 1638 - 1599 1600 1641 1640 1600 1601 1642 1641 1601 1602 1643 1642 - 1602 1603 1644 1643 1603 1604 1645 1644 1604 1605 1646 1645 - 1605 1606 1647 1646 1606 1607 1648 1647 1607 1608 1649 1648 - 1608 1609 1650 1649 1609 1610 1651 1650 1610 1611 1652 1651 - 1611 1612 1653 1652 1612 1613 1654 1653 1613 1614 1655 1654 - 1614 1615 1656 1655 1615 1616 1657 1656 1616 1617 1658 1657 - 1617 1618 1659 1658 1618 1619 1660 1659 1619 1620 1661 1660 - 1620 1621 1662 1661 1621 1622 1663 1662 1622 1623 1664 1663 - 1623 1624 1665 1664 1624 1625 1666 1665 1625 1626 1667 1666 - 1626 1627 1668 1667 1627 1628 1669 1668 1628 1629 1670 1669 - 1629 1630 1671 1670 1630 1631 1672 1671 1631 1632 1673 1672 - 1632 1633 1674 1673 1633 1634 1675 1674 1634 1635 1676 1675 - 1635 1636 1677 1676 1636 1637 1678 1677 1637 1638 1679 1678 - 1638 1639 1680 1679 - - - 4 8 12 16 20 24 28 32 36 40 44 48 - 52 56 60 64 68 72 76 80 84 88 92 96 - 100 104 108 112 116 120 124 128 132 136 140 144 - 148 152 156 160 164 168 172 176 180 184 188 192 - 196 200 204 208 212 216 220 224 228 232 236 240 - 244 248 252 256 260 264 268 272 276 280 284 288 - 292 296 300 304 308 312 316 320 324 328 332 336 - 340 344 348 352 356 360 364 368 372 376 380 384 - 388 392 396 400 404 408 412 416 420 424 428 432 - 436 440 444 448 452 456 460 464 468 472 476 480 - 484 488 492 496 500 504 508 512 516 520 524 528 - 532 536 540 544 548 552 556 560 564 568 572 576 - 580 584 588 592 596 600 604 608 612 616 620 624 - 628 632 636 640 644 648 652 656 660 664 668 672 - 676 680 684 688 692 696 700 704 708 712 716 720 - 724 728 732 736 740 744 748 752 756 760 764 768 - 772 776 780 784 788 792 796 800 804 808 812 816 - 820 824 828 832 836 840 844 848 852 856 860 864 - 868 872 876 880 884 888 892 896 900 904 908 912 - 916 920 924 928 932 936 940 944 948 952 956 960 - 964 968 972 976 980 984 988 992 996 1000 1004 1008 - 1012 1016 1020 1024 1028 1032 1036 1040 1044 1048 1052 1056 - 1060 1064 1068 1072 1076 1080 1084 1088 1092 1096 1100 1104 - 1108 1112 1116 1120 1124 1128 1132 1136 1140 1144 1148 1152 - 1156 1160 1164 1168 1172 1176 1180 1184 1188 1192 1196 1200 - 1204 1208 1212 1216 1220 1224 1228 1232 1236 1240 1244 1248 - 1252 1256 1260 1264 1268 1272 1276 1280 1284 1288 1292 1296 - 1300 1304 1308 1312 1316 1320 1324 1328 1332 1336 1340 1344 - 1348 1352 1356 1360 1364 1368 1372 1376 1380 1384 1388 1392 - 1396 1400 1404 1408 1412 1416 1420 1424 1428 1432 1436 1440 - 1444 1448 1452 1456 1460 1464 1468 1472 1476 1480 1484 1488 - 1492 1496 1500 1504 1508 1512 1516 1520 1524 1528 1532 1536 - 1540 1544 1548 1552 1556 1560 1564 1568 1572 1576 1580 1584 - 1588 1592 1596 1600 1604 1608 1612 1616 1620 1624 1628 1632 - 1636 1640 1644 1648 1652 1656 1660 1664 1668 1672 1676 1680 - 1684 1688 1692 1696 1700 1704 1708 1712 1716 1720 1724 1728 - 1732 1736 1740 1744 1748 1752 1756 1760 1764 1768 1772 1776 - 1780 1784 1788 1792 1796 1800 1804 1808 1812 1816 1820 1824 - 1828 1832 1836 1840 1844 1848 1852 1856 1860 1864 1868 1872 - 1876 1880 1884 1888 1892 1896 1900 1904 1908 1912 1916 1920 - 1924 1928 1932 1936 1940 1944 1948 1952 1956 1960 1964 1968 - 1972 1976 1980 1984 1988 1992 1996 2000 2004 2008 2012 2016 - 2020 2024 2028 2032 2036 2040 2044 2048 2052 2056 2060 2064 - 2068 2072 2076 2080 2084 2088 2092 2096 2100 2104 2108 2112 - 2116 2120 2124 2128 2132 2136 2140 2144 2148 2152 2156 2160 - 2164 2168 2172 2176 2180 2184 2188 2192 2196 2200 2204 2208 - 2212 2216 2220 2224 2228 2232 2236 2240 2244 2248 2252 2256 - 2260 2264 2268 2272 2276 2280 2284 2288 2292 2296 2300 2304 - 2308 2312 2316 2320 2324 2328 2332 2336 2340 2344 2348 2352 - 2356 2360 2364 2368 2372 2376 2380 2384 2388 2392 2396 2400 - 2404 2408 2412 2416 2420 2424 2428 2432 2436 2440 2444 2448 - 2452 2456 2460 2464 2468 2472 2476 2480 2484 2488 2492 2496 - 2500 2504 2508 2512 2516 2520 2524 2528 2532 2536 2540 2544 - 2548 2552 2556 2560 2564 2568 2572 2576 2580 2584 2588 2592 - 2596 2600 2604 2608 2612 2616 2620 2624 2628 2632 2636 2640 - 2644 2648 2652 2656 2660 2664 2668 2672 2676 2680 2684 2688 - 2692 2696 2700 2704 2708 2712 2716 2720 2724 2728 2732 2736 - 2740 2744 2748 2752 2756 2760 2764 2768 2772 2776 2780 2784 - 2788 2792 2796 2800 2804 2808 2812 2816 2820 2824 2828 2832 - 2836 2840 2844 2848 2852 2856 2860 2864 2868 2872 2876 2880 - 2884 2888 2892 2896 2900 2904 2908 2912 2916 2920 2924 2928 - 2932 2936 2940 2944 2948 2952 2956 2960 2964 2968 2972 2976 - 2980 2984 2988 2992 2996 3000 3004 3008 3012 3016 3020 3024 - 3028 3032 3036 3040 3044 3048 3052 3056 3060 3064 3068 3072 - 3076 3080 3084 3088 3092 3096 3100 3104 3108 3112 3116 3120 - 3124 3128 3132 3136 3140 3144 3148 3152 3156 3160 3164 3168 - 3172 3176 3180 3184 3188 3192 3196 3200 3204 3208 3212 3216 - 3220 3224 3228 3232 3236 3240 3244 3248 3252 3256 3260 3264 - 3268 3272 3276 3280 3284 3288 3292 3296 3300 3304 3308 3312 - 3316 3320 3324 3328 3332 3336 3340 3344 3348 3352 3356 3360 - 3364 3368 3372 3376 3380 3384 3388 3392 3396 3400 3404 3408 - 3412 3416 3420 3424 3428 3432 3436 3440 3444 3448 3452 3456 - 3460 3464 3468 3472 3476 3480 3484 3488 3492 3496 3500 3504 - 3508 3512 3516 3520 3524 3528 3532 3536 3540 3544 3548 3552 - 3556 3560 3564 3568 3572 3576 3580 3584 3588 3592 3596 3600 - 3604 3608 3612 3616 3620 3624 3628 3632 3636 3640 3644 3648 - 3652 3656 3660 3664 3668 3672 3676 3680 3684 3688 3692 3696 - 3700 3704 3708 3712 3716 3720 3724 3728 3732 3736 3740 3744 - 3748 3752 3756 3760 3764 3768 3772 3776 3780 3784 3788 3792 - 3796 3800 3804 3808 3812 3816 3820 3824 3828 3832 3836 3840 - 3844 3848 3852 3856 3860 3864 3868 3872 3876 3880 3884 3888 - 3892 3896 3900 3904 3908 3912 3916 3920 3924 3928 3932 3936 - 3940 3944 3948 3952 3956 3960 3964 3968 3972 3976 3980 3984 - 3988 3992 3996 4000 4004 4008 4012 4016 4020 4024 4028 4032 - 4036 4040 4044 4048 4052 4056 4060 4064 4068 4072 4076 4080 - 4084 4088 4092 4096 4100 4104 4108 4112 4116 4120 4124 4128 - 4132 4136 4140 4144 4148 4152 4156 4160 4164 4168 4172 4176 - 4180 4184 4188 4192 4196 4200 4204 4208 4212 4216 4220 4224 - 4228 4232 4236 4240 4244 4248 4252 4256 4260 4264 4268 4272 - 4276 4280 4284 4288 4292 4296 4300 4304 4308 4312 4316 4320 - 4324 4328 4332 4336 4340 4344 4348 4352 4356 4360 4364 4368 - 4372 4376 4380 4384 4388 4392 4396 4400 4404 4408 4412 4416 - 4420 4424 4428 4432 4436 4440 4444 4448 4452 4456 4460 4464 - 4468 4472 4476 4480 4484 4488 4492 4496 4500 4504 4508 4512 - 4516 4520 4524 4528 4532 4536 4540 4544 4548 4552 4556 4560 - 4564 4568 4572 4576 4580 4584 4588 4592 4596 4600 4604 4608 - 4612 4616 4620 4624 4628 4632 4636 4640 4644 4648 4652 4656 - 4660 4664 4668 4672 4676 4680 4684 4688 4692 4696 4700 4704 - 4708 4712 4716 4720 4724 4728 4732 4736 4740 4744 4748 4752 - 4756 4760 4764 4768 4772 4776 4780 4784 4788 4792 4796 4800 - 4804 4808 4812 4816 4820 4824 4828 4832 4836 4840 4844 4848 - 4852 4856 4860 4864 4868 4872 4876 4880 4884 4888 4892 4896 - 4900 4904 4908 4912 4916 4920 4924 4928 4932 4936 4940 4944 - 4948 4952 4956 4960 4964 4968 4972 4976 4980 4984 4988 4992 - 4996 5000 5004 5008 5012 5016 5020 5024 5028 5032 5036 5040 - 5044 5048 5052 5056 5060 5064 5068 5072 5076 5080 5084 5088 - 5092 5096 5100 5104 5108 5112 5116 5120 5124 5128 5132 5136 - 5140 5144 5148 5152 5156 5160 5164 5168 5172 5176 5180 5184 - 5188 5192 5196 5200 5204 5208 5212 5216 5220 5224 5228 5232 - 5236 5240 5244 5248 5252 5256 5260 5264 5268 5272 5276 5280 - 5284 5288 5292 5296 5300 5304 5308 5312 5316 5320 5324 5328 - 5332 5336 5340 5344 5348 5352 5356 5360 5364 5368 5372 5376 - 5380 5384 5388 5392 5396 5400 5404 5408 5412 5416 5420 5424 - 5428 5432 5436 5440 5444 5448 5452 5456 5460 5464 5468 5472 - 5476 5480 5484 5488 5492 5496 5500 5504 5508 5512 5516 5520 - 5524 5528 5532 5536 5540 5544 5548 5552 5556 5560 5564 5568 - 5572 5576 5580 5584 5588 5592 5596 5600 5604 5608 5612 5616 - 5620 5624 5628 5632 5636 5640 5644 5648 5652 5656 5660 5664 - 5668 5672 5676 5680 5684 5688 5692 5696 5700 5704 5708 5712 - 5716 5720 5724 5728 5732 5736 5740 5744 5748 5752 5756 5760 - 5764 5768 5772 5776 5780 5784 5788 5792 5796 5800 5804 5808 - 5812 5816 5820 5824 5828 5832 5836 5840 5844 5848 5852 5856 - 5860 5864 5868 5872 5876 5880 5884 5888 5892 5896 5900 5904 - 5908 5912 5916 5920 5924 5928 5932 5936 5940 5944 5948 5952 - 5956 5960 5964 5968 5972 5976 5980 5984 5988 5992 5996 6000 - 6004 6008 6012 6016 6020 6024 6028 6032 6036 6040 6044 6048 - 6052 6056 6060 6064 6068 6072 6076 6080 6084 6088 6092 6096 - 6100 6104 6108 6112 6116 6120 6124 6128 6132 6136 6140 6144 - 6148 6152 6156 6160 6164 6168 6172 6176 6180 6184 6188 6192 - 6196 6200 6204 6208 6212 6216 6220 6224 6228 6232 6236 6240 - 6244 6248 6252 6256 6260 6264 6268 6272 6276 6280 6284 6288 - 6292 6296 6300 6304 6308 6312 6316 6320 6324 6328 6332 6336 - 6340 6344 6348 6352 6356 6360 6364 6368 6372 6376 6380 6384 - 6388 6392 6396 6400 - - - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 - - - - - diff --git a/test/reference-solutions/monolithic/flow-over-square-2d/stokes-final.vtu b/test/reference-solutions/monolithic/flow-over-square-2d/stokes-final.vtu deleted file mode 100644 index 3db1297..0000000 --- a/test/reference-solutions/monolithic/flow-over-square-2d/stokes-final.vtu +++ /dev/null @@ -1,2054 +0,0 @@ - - - - - - - 9.87464e-10 9.62486e-10 9.37493e-10 9.12496e-10 8.87497e-10 8.62498e-10 8.37498e-10 8.12498e-10 7.87499e-10 7.62499e-10 7.37499e-10 7.12499e-10 - 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.875e-10 5.625e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.375e-10 4.125e-10 - 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 2.87501e-10 2.62501e-10 2.37501e-10 2.12501e-10 1.87502e-10 1.62502e-10 1.37502e-10 1.12503e-10 - 8.7504e-11 6.25069e-11 3.75144e-11 1.25363e-11 9.87478e-10 9.62485e-10 9.37491e-10 9.12494e-10 8.87496e-10 8.62497e-10 8.37497e-10 8.12498e-10 - 7.87498e-10 7.62498e-10 7.37499e-10 7.12499e-10 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.875e-10 5.625e-10 5.375e-10 5.125e-10 - 4.875e-10 4.625e-10 4.375e-10 4.125e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 2.87501e-10 2.62501e-10 2.37502e-10 2.12502e-10 - 1.87502e-10 1.62503e-10 1.37503e-10 1.12504e-10 8.75062e-11 6.25093e-11 3.75147e-11 1.25222e-11 9.87484e-10 9.62487e-10 9.37491e-10 9.12493e-10 - 8.87495e-10 8.62496e-10 8.37497e-10 8.12497e-10 7.87498e-10 7.62498e-10 7.37498e-10 7.12499e-10 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 - 5.87499e-10 5.625e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.375e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 - 2.87501e-10 2.62502e-10 2.37502e-10 2.12502e-10 1.87503e-10 1.62503e-10 1.37504e-10 1.12505e-10 8.75071e-11 6.25095e-11 3.75128e-11 1.2516e-11 - 9.87487e-10 9.62489e-10 9.37491e-10 9.12493e-10 8.87494e-10 8.62495e-10 8.37496e-10 8.12497e-10 7.87497e-10 7.62498e-10 7.37498e-10 7.12498e-10 - 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.625e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.375e-10 4.12501e-10 - 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 2.87502e-10 2.62502e-10 2.37502e-10 2.12503e-10 1.87503e-10 1.62504e-10 1.37505e-10 1.12506e-10 - 8.75071e-11 6.25089e-11 3.75109e-11 1.25125e-11 9.8749e-10 9.62491e-10 9.37492e-10 9.12493e-10 8.87494e-10 8.62495e-10 8.37496e-10 8.12497e-10 - 7.87497e-10 7.62498e-10 7.37498e-10 7.12498e-10 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.625e-10 5.375e-10 5.125e-10 - 4.875e-10 4.625e-10 4.375e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12502e-10 2.87502e-10 2.62502e-10 2.37502e-10 2.12503e-10 - 1.87503e-10 1.62504e-10 1.37505e-10 1.12506e-10 8.75069e-11 6.25081e-11 3.75094e-11 1.25103e-11 9.87491e-10 9.62492e-10 9.37493e-10 9.12494e-10 - 8.87494e-10 8.62495e-10 8.37496e-10 8.12497e-10 7.87497e-10 7.62497e-10 7.37498e-10 7.12498e-10 6.87498e-10 6.62499e-10 6.37499e-10 6.12499e-10 - 5.87499e-10 5.62499e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.375e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12502e-10 - 2.87502e-10 2.62502e-10 2.37503e-10 2.12503e-10 1.87504e-10 1.62504e-10 1.37505e-10 1.12506e-10 8.75064e-11 6.25074e-11 3.75082e-11 1.25087e-11 - 9.87492e-10 9.62493e-10 9.37493e-10 9.12494e-10 8.87495e-10 8.62495e-10 8.37496e-10 8.12496e-10 7.87497e-10 7.62497e-10 7.37498e-10 7.12498e-10 - 6.87498e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.62499e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.37501e-10 4.12501e-10 - 3.87501e-10 3.62501e-10 3.37501e-10 3.12502e-10 2.87502e-10 2.62502e-10 2.37503e-10 2.12503e-10 1.87504e-10 1.62504e-10 1.37505e-10 1.12505e-10 - 8.7506e-11 6.25067e-11 3.75072e-11 1.25076e-11 9.87493e-10 9.62494e-10 9.37494e-10 9.12494e-10 8.87495e-10 8.62496e-10 8.37496e-10 8.12496e-10 - 7.87497e-10 7.62497e-10 7.37498e-10 7.12498e-10 6.87498e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.62499e-10 5.375e-10 5.125e-10 - 4.875e-10 4.625e-10 4.37501e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12502e-10 2.87502e-10 2.62502e-10 2.37503e-10 2.12503e-10 - 1.87504e-10 1.62504e-10 1.37504e-10 1.12505e-10 8.75056e-11 6.25061e-11 3.75065e-11 1.25068e-11 9.87494e-10 9.62494e-10 9.37494e-10 9.12495e-10 - 8.87495e-10 8.62496e-10 8.37496e-10 8.12497e-10 7.87497e-10 7.62497e-10 7.37498e-10 7.12498e-10 6.87498e-10 6.62499e-10 6.37499e-10 6.12499e-10 - 5.87499e-10 5.62499e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.37501e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12502e-10 - 2.87502e-10 2.62502e-10 2.37503e-10 2.12503e-10 1.87503e-10 1.62504e-10 1.37504e-10 1.12505e-10 8.75052e-11 6.25056e-11 3.75059e-11 1.25061e-11 - 9.87494e-10 9.62495e-10 9.37495e-10 9.12495e-10 8.87496e-10 8.62496e-10 8.37496e-10 8.12497e-10 7.87497e-10 7.62497e-10 7.37498e-10 7.12498e-10 - 6.87498e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.62499e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.37501e-10 4.12501e-10 - 3.87501e-10 3.62501e-10 3.37501e-10 3.12502e-10 2.87502e-10 2.62502e-10 2.37503e-10 2.12503e-10 1.87503e-10 1.62504e-10 1.37504e-10 1.12504e-10 - 8.75048e-11 6.25051e-11 3.75054e-11 1.25056e-11 9.87495e-10 9.62495e-10 9.37495e-10 9.12495e-10 8.87496e-10 8.62496e-10 8.37496e-10 8.12497e-10 - 7.87497e-10 7.62497e-10 7.37498e-10 7.12498e-10 6.87498e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.62499e-10 5.375e-10 5.125e-10 - 4.875e-10 4.625e-10 4.37501e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12502e-10 2.87502e-10 2.62502e-10 2.37503e-10 2.12503e-10 - 1.87503e-10 1.62504e-10 1.37504e-10 1.12504e-10 8.75045e-11 6.25048e-11 3.7505e-11 1.25051e-11 9.87495e-10 9.62495e-10 9.37496e-10 9.12496e-10 - 8.87496e-10 8.62496e-10 8.37497e-10 8.12497e-10 7.87497e-10 7.62497e-10 7.37498e-10 7.12498e-10 6.87498e-10 6.62499e-10 6.37499e-10 6.12499e-10 - 5.87499e-10 5.62499e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.37501e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12502e-10 - 2.87502e-10 2.62502e-10 2.37503e-10 2.12503e-10 1.87503e-10 1.62503e-10 1.37504e-10 1.12504e-10 8.75042e-11 6.25045e-11 3.75046e-11 1.25048e-11 - 9.87496e-10 9.62496e-10 9.37496e-10 9.12496e-10 8.87496e-10 8.62496e-10 8.37497e-10 8.12497e-10 7.87497e-10 7.62498e-10 7.37498e-10 7.12498e-10 - 6.87498e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.62499e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.37501e-10 4.12501e-10 - 3.87501e-10 3.62501e-10 3.37501e-10 3.12502e-10 2.87502e-10 2.62502e-10 2.37502e-10 2.12503e-10 1.87503e-10 1.62503e-10 1.37504e-10 1.12504e-10 - 8.7504e-11 6.25042e-11 3.75043e-11 1.25045e-11 9.87496e-10 9.62496e-10 9.37496e-10 9.12496e-10 8.87496e-10 8.62497e-10 8.37497e-10 8.12497e-10 - 7.87497e-10 7.62498e-10 7.37498e-10 7.12498e-10 6.87498e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.62499e-10 5.375e-10 5.125e-10 - 4.875e-10 4.625e-10 4.37501e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12502e-10 2.87502e-10 2.62502e-10 2.37502e-10 2.12503e-10 - 1.87503e-10 1.62503e-10 1.37503e-10 1.12504e-10 8.75038e-11 6.25039e-11 3.75041e-11 1.25042e-11 9.87496e-10 9.62496e-10 9.37496e-10 9.12496e-10 - 8.87497e-10 8.62497e-10 8.37497e-10 8.12497e-10 7.87497e-10 7.62498e-10 7.37498e-10 7.12498e-10 6.87498e-10 6.62499e-10 6.37499e-10 6.12499e-10 - 5.87499e-10 5.62499e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.37501e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12502e-10 - 2.87502e-10 2.62502e-10 2.37502e-10 2.12503e-10 1.87503e-10 1.62503e-10 1.37503e-10 1.12503e-10 8.75036e-11 6.25037e-11 3.75039e-11 1.2504e-11 - 9.87496e-10 9.62496e-10 9.37497e-10 9.12497e-10 8.87497e-10 8.62497e-10 8.37497e-10 8.12497e-10 7.87498e-10 7.62498e-10 7.37498e-10 7.12498e-10 - 6.87498e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.62499e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.37501e-10 4.12501e-10 - 3.87501e-10 3.62501e-10 3.37501e-10 3.12502e-10 2.87502e-10 2.62502e-10 2.37502e-10 2.12502e-10 1.87503e-10 1.62503e-10 1.37503e-10 1.12503e-10 - 8.75034e-11 6.25035e-11 3.75037e-11 1.25038e-11 9.87496e-10 9.62497e-10 9.37497e-10 9.12497e-10 8.87497e-10 8.62497e-10 8.37497e-10 8.12497e-10 - 7.87498e-10 7.62498e-10 7.37498e-10 7.12498e-10 6.87498e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.62499e-10 5.375e-10 5.125e-10 - 4.875e-10 4.625e-10 4.37501e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12502e-10 2.87502e-10 2.62502e-10 2.37502e-10 2.12502e-10 - 1.87503e-10 1.62503e-10 1.37503e-10 1.12503e-10 8.75032e-11 6.25034e-11 3.75035e-11 1.25036e-11 9.87497e-10 9.62497e-10 9.37497e-10 9.12497e-10 - 8.87497e-10 8.62497e-10 8.37497e-10 8.12498e-10 7.87498e-10 7.62498e-10 7.37498e-10 7.12498e-10 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 - 5.87499e-10 5.62499e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.37501e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 - 2.87502e-10 2.62502e-10 2.37502e-10 2.12502e-10 1.87502e-10 1.62503e-10 1.37503e-10 1.12503e-10 8.75031e-11 6.25032e-11 3.75033e-11 1.25034e-11 - 9.87497e-10 9.62497e-10 9.37497e-10 9.12497e-10 8.87497e-10 8.62497e-10 8.37498e-10 8.12498e-10 7.87498e-10 7.62498e-10 7.37498e-10 7.12498e-10 - 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.62499e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.375e-10 4.12501e-10 - 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 2.87502e-10 2.62502e-10 2.37502e-10 2.12502e-10 1.87502e-10 1.62503e-10 1.37503e-10 1.12503e-10 - 8.75029e-11 6.25031e-11 3.75032e-11 1.25033e-11 9.87497e-10 9.62497e-10 9.37497e-10 9.12497e-10 8.87497e-10 8.62497e-10 8.37498e-10 8.12498e-10 - 7.87498e-10 7.62498e-10 7.37498e-10 7.12498e-10 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.625e-10 5.375e-10 5.125e-10 - 4.875e-10 4.625e-10 4.375e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 2.87502e-10 2.62502e-10 2.37502e-10 2.12502e-10 - 1.87502e-10 1.62502e-10 1.37503e-10 1.12503e-10 8.75028e-11 6.25029e-11 3.7503e-11 1.25031e-11 9.87497e-10 9.62497e-10 9.37497e-10 9.12497e-10 - 8.87497e-10 8.62498e-10 8.37498e-10 8.12498e-10 7.87498e-10 7.62498e-10 7.37498e-10 7.12498e-10 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 - 5.87499e-10 5.625e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.375e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 - 2.87502e-10 2.62502e-10 2.37502e-10 2.12502e-10 1.87502e-10 1.62502e-10 1.37502e-10 1.12503e-10 8.75027e-11 6.25028e-11 3.75029e-11 1.2503e-11 - 9.87497e-10 9.62497e-10 9.37497e-10 9.12497e-10 8.87498e-10 8.62498e-10 8.37498e-10 8.12498e-10 7.87498e-10 7.62498e-10 7.37498e-10 7.12499e-10 - 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.625e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.375e-10 4.12501e-10 - 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 2.87501e-10 2.62502e-10 2.37502e-10 2.12502e-10 1.87502e-10 1.62502e-10 1.37502e-10 1.12503e-10 - 8.75026e-11 6.25027e-11 3.75028e-11 1.25029e-11 9.87497e-10 9.62497e-10 9.37497e-10 9.12497e-10 8.87498e-10 8.62498e-10 8.37498e-10 8.12498e-10 - 7.87498e-10 7.62498e-10 7.37498e-10 7.12499e-10 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.625e-10 5.375e-10 5.125e-10 - 4.875e-10 4.625e-10 4.375e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 2.87501e-10 2.62502e-10 2.37502e-10 2.12502e-10 - 1.87502e-10 1.62502e-10 1.37502e-10 1.12502e-10 8.75025e-11 6.25026e-11 3.75027e-11 1.25028e-11 9.87497e-10 9.62497e-10 9.37497e-10 9.12498e-10 - 8.87498e-10 8.62498e-10 8.37498e-10 8.12498e-10 7.87498e-10 7.62498e-10 7.37498e-10 7.12499e-10 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 - 5.87499e-10 5.625e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.375e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 - 2.87501e-10 2.62502e-10 2.37502e-10 2.12502e-10 1.87502e-10 1.62502e-10 1.37502e-10 1.12502e-10 8.75024e-11 6.25025e-11 3.75026e-11 1.25027e-11 - 9.87497e-10 9.62497e-10 9.37498e-10 9.12498e-10 8.87498e-10 8.62498e-10 8.37498e-10 8.12498e-10 7.87498e-10 7.62498e-10 7.37498e-10 7.12499e-10 - 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.625e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.375e-10 4.12501e-10 - 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 2.87501e-10 2.62502e-10 2.37502e-10 2.12502e-10 1.87502e-10 1.62502e-10 1.37502e-10 1.12502e-10 - 8.75024e-11 6.25025e-11 3.75025e-11 1.25026e-11 9.87497e-10 9.62498e-10 9.37498e-10 9.12498e-10 8.87498e-10 8.62498e-10 8.37498e-10 8.12498e-10 - 7.87498e-10 7.62498e-10 7.37499e-10 7.12499e-10 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.625e-10 5.375e-10 5.125e-10 - 4.875e-10 4.625e-10 4.375e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 2.87501e-10 2.62502e-10 2.37502e-10 2.12502e-10 - 1.87502e-10 1.62502e-10 1.37502e-10 1.12502e-10 8.75023e-11 6.25024e-11 3.75025e-11 1.25025e-11 9.87498e-10 9.62498e-10 9.37498e-10 9.12498e-10 - 8.87498e-10 8.62498e-10 8.37498e-10 8.12498e-10 7.87498e-10 7.62498e-10 7.37499e-10 7.12499e-10 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 - 5.87499e-10 5.625e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.375e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 - 2.87501e-10 2.62501e-10 2.37502e-10 2.12502e-10 1.87502e-10 1.62502e-10 1.37502e-10 1.12502e-10 8.75022e-11 6.25023e-11 3.75024e-11 1.25025e-11 - 9.87498e-10 9.62498e-10 9.37498e-10 9.12498e-10 8.87498e-10 8.62498e-10 8.37498e-10 8.12498e-10 7.87498e-10 7.62498e-10 7.37499e-10 7.12499e-10 - 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.625e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.375e-10 4.12501e-10 - 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 2.87501e-10 2.62501e-10 2.37502e-10 2.12502e-10 1.87502e-10 1.62502e-10 1.37502e-10 1.12502e-10 - 8.75022e-11 6.25023e-11 3.75023e-11 1.25024e-11 9.87498e-10 9.62498e-10 9.37498e-10 9.12498e-10 8.87498e-10 8.62498e-10 8.37498e-10 8.12498e-10 - 7.87498e-10 7.62498e-10 7.37499e-10 7.12499e-10 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.625e-10 5.375e-10 5.125e-10 - 4.875e-10 4.625e-10 4.375e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 2.87501e-10 2.62501e-10 2.37502e-10 2.12502e-10 - 1.87502e-10 1.62502e-10 1.37502e-10 1.12502e-10 8.75021e-11 6.25022e-11 3.75023e-11 1.25023e-11 9.87498e-10 9.62498e-10 9.37498e-10 9.12498e-10 - 8.87498e-10 8.62498e-10 8.37498e-10 8.12498e-10 7.87498e-10 7.62498e-10 7.37499e-10 7.12499e-10 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 - 5.87499e-10 5.625e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.375e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 - 2.87501e-10 2.62501e-10 2.37502e-10 2.12502e-10 1.87502e-10 1.62502e-10 1.37502e-10 1.12502e-10 8.75021e-11 6.25022e-11 3.75022e-11 1.25022e-11 - 9.87498e-10 9.62498e-10 9.37498e-10 9.12498e-10 8.87498e-10 8.62498e-10 8.37498e-10 8.12498e-10 7.87498e-10 7.62498e-10 7.37499e-10 7.12499e-10 - 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.625e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.375e-10 4.12501e-10 - 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 2.87501e-10 2.62501e-10 2.37502e-10 2.12502e-10 1.87502e-10 1.62502e-10 1.37502e-10 1.12502e-10 - 8.75021e-11 6.25021e-11 3.75021e-11 1.25022e-11 9.87498e-10 9.62498e-10 9.37498e-10 9.12498e-10 8.87498e-10 8.62498e-10 8.37498e-10 8.12498e-10 - 7.87498e-10 7.62498e-10 7.37499e-10 7.12499e-10 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.625e-10 5.375e-10 5.125e-10 - 4.875e-10 4.625e-10 4.375e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 2.87501e-10 2.62502e-10 2.37502e-10 2.12502e-10 - 1.87502e-10 1.62502e-10 1.37502e-10 1.12502e-10 8.75021e-11 6.25021e-11 3.75021e-11 1.25021e-11 9.87498e-10 9.62498e-10 9.37498e-10 9.12498e-10 - 8.87498e-10 8.62498e-10 8.37498e-10 8.12498e-10 7.87498e-10 7.62498e-10 7.37498e-10 7.12499e-10 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 - 5.87499e-10 5.625e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.375e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 - 2.87501e-10 2.62502e-10 2.37502e-10 2.12502e-10 1.87502e-10 1.62502e-10 1.37502e-10 1.12502e-10 8.7502e-11 6.25021e-11 3.75021e-11 1.2502e-11 - 9.87498e-10 9.62498e-10 9.37498e-10 9.12498e-10 8.87498e-10 8.62498e-10 8.37498e-10 8.12498e-10 7.87498e-10 7.62498e-10 7.37498e-10 7.12499e-10 - 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.625e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.375e-10 4.12501e-10 - 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 2.87501e-10 2.62502e-10 2.37502e-10 2.12502e-10 1.87502e-10 1.62502e-10 1.37502e-10 1.12502e-10 - 8.75021e-11 6.2502e-11 3.7502e-11 1.2502e-11 9.87498e-10 9.62498e-10 9.37498e-10 9.12498e-10 8.87498e-10 8.62498e-10 8.37498e-10 8.12498e-10 - 7.87498e-10 7.62498e-10 7.37498e-10 7.12499e-10 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.62499e-10 5.375e-10 5.125e-10 - 4.875e-10 4.625e-10 4.375e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 2.87502e-10 2.62502e-10 2.37502e-10 2.12502e-10 - 1.87502e-10 1.62502e-10 1.37502e-10 1.12502e-10 8.75021e-11 6.2502e-11 3.7502e-11 1.25019e-11 9.87498e-10 9.62498e-10 9.37498e-10 9.12498e-10 - 8.87498e-10 8.62498e-10 8.37498e-10 8.12498e-10 7.87498e-10 7.62498e-10 7.37498e-10 7.12498e-10 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 - 5.87499e-10 5.62499e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.37501e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 - 2.87502e-10 2.62502e-10 2.37502e-10 2.12502e-10 1.87502e-10 1.62502e-10 1.37502e-10 1.12502e-10 8.75021e-11 6.25021e-11 3.7502e-11 1.25018e-11 - 9.87498e-10 9.62498e-10 9.37498e-10 9.12498e-10 8.87498e-10 8.62498e-10 8.37498e-10 8.12498e-10 7.87498e-10 7.62498e-10 7.37498e-10 7.12498e-10 - 6.87499e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.62499e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.37501e-10 4.12501e-10 - 3.87501e-10 3.62501e-10 3.37501e-10 3.12501e-10 2.87502e-10 2.62502e-10 2.37502e-10 2.12502e-10 1.87502e-10 1.62502e-10 1.37502e-10 1.12502e-10 - 8.75022e-11 6.25021e-11 3.75019e-11 1.25018e-11 9.87498e-10 9.62498e-10 9.37498e-10 9.12498e-10 8.87498e-10 8.62498e-10 8.37498e-10 8.12498e-10 - 7.87498e-10 7.62498e-10 7.37498e-10 7.12498e-10 6.87498e-10 6.62499e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.62499e-10 5.375e-10 5.125e-10 - 4.875e-10 4.625e-10 4.37501e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12502e-10 2.87502e-10 2.62502e-10 2.37502e-10 2.12502e-10 - 1.87502e-10 1.62502e-10 1.37502e-10 1.12502e-10 8.75024e-11 6.25022e-11 3.7502e-11 1.25017e-11 9.87498e-10 9.62498e-10 9.37498e-10 9.12497e-10 - 8.87497e-10 8.62497e-10 8.37497e-10 8.12498e-10 7.87498e-10 7.62498e-10 7.37498e-10 7.12498e-10 6.87498e-10 6.62499e-10 6.37499e-10 6.12499e-10 - 5.87499e-10 5.62499e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.37501e-10 4.12501e-10 3.87501e-10 3.62501e-10 3.37501e-10 3.12502e-10 - 2.87502e-10 2.62502e-10 2.37502e-10 2.12502e-10 1.87502e-10 1.62503e-10 1.37503e-10 1.12503e-10 8.75026e-11 6.25024e-11 3.75021e-11 1.25016e-11 - 9.87498e-10 9.62498e-10 9.37497e-10 9.12497e-10 8.87497e-10 8.62497e-10 8.37497e-10 8.12497e-10 7.87497e-10 7.62498e-10 7.37498e-10 7.12498e-10 - 6.87498e-10 6.62498e-10 6.37499e-10 6.12499e-10 5.87499e-10 5.62499e-10 5.375e-10 5.125e-10 4.875e-10 4.625e-10 4.37501e-10 4.12501e-10 - 3.87501e-10 3.62501e-10 3.37502e-10 3.12502e-10 2.87502e-10 2.62502e-10 2.37502e-10 2.12503e-10 1.87503e-10 1.62503e-10 1.37503e-10 1.12503e-10 - 8.75029e-11 6.25027e-11 3.75024e-11 1.25017e-11 - - - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 - - - 6.74333e-09 -2.41831e-12 0 6.74316e-09 -1.85139e-12 0 6.74316e-09 -1.50664e-12 0 6.74318e-09 -1.2751e-12 0 - 6.74319e-09 -1.10427e-12 0 6.7432e-09 -9.68957e-13 0 6.7432e-09 -8.56311e-13 0 6.74321e-09 -7.59192e-13 0 - 6.74321e-09 -6.73296e-13 0 6.74321e-09 -5.95826e-13 0 6.74321e-09 -5.24855e-13 0 6.74322e-09 -4.58992e-13 0 - 6.74322e-09 -3.97185e-13 0 6.74322e-09 -3.38618e-13 0 6.74322e-09 -2.82635e-13 0 6.74322e-09 -2.28691e-13 0 - 6.74322e-09 -1.76327e-13 0 6.74322e-09 -1.25139e-13 0 6.74322e-09 -7.47652e-14 0 6.74322e-09 -2.48692e-14 0 - 6.74322e-09 2.48692e-14 0 6.74322e-09 7.47652e-14 0 6.74322e-09 1.25139e-13 0 6.74322e-09 1.76327e-13 0 - 6.74322e-09 2.28691e-13 0 6.74322e-09 2.82635e-13 0 6.74322e-09 3.38618e-13 0 6.74322e-09 3.97185e-13 0 - 6.74322e-09 4.58992e-13 0 6.74321e-09 5.24855e-13 0 6.74321e-09 5.95826e-13 0 6.74321e-09 6.73296e-13 0 - 6.74321e-09 7.59192e-13 0 6.7432e-09 8.56311e-13 0 6.7432e-09 9.68957e-13 0 6.74319e-09 1.10427e-12 0 - 6.74318e-09 1.2751e-12 0 6.74316e-09 1.50664e-12 0 6.74316e-09 1.85139e-12 0 6.74333e-09 2.41831e-12 0 - 1.86058e-08 -2.11575e-12 0 1.86056e-08 -1.79922e-12 0 1.86056e-08 -1.511e-12 0 1.86056e-08 -1.28822e-12 0 - 1.86056e-08 -1.11596e-12 0 1.86056e-08 -9.77934e-13 0 1.86056e-08 -8.63032e-13 0 1.86056e-08 -7.64262e-13 0 - 1.86056e-08 -6.77177e-13 0 1.86056e-08 -5.98839e-13 0 1.86056e-08 -5.2722e-13 0 1.86057e-08 -4.6086e-13 0 - 1.86057e-08 -3.98664e-13 0 1.86057e-08 -3.39785e-13 0 1.86057e-08 -2.83547e-13 0 1.86057e-08 -2.2939e-13 0 - 1.86057e-08 -1.76843e-13 0 1.86057e-08 -1.25493e-13 0 1.86057e-08 -7.49721e-14 0 1.86057e-08 -2.49372e-14 0 - 1.86057e-08 2.49372e-14 0 1.86057e-08 7.49721e-14 0 1.86057e-08 1.25493e-13 0 1.86057e-08 1.76843e-13 0 - 1.86057e-08 2.2939e-13 0 1.86057e-08 2.83547e-13 0 1.86057e-08 3.39785e-13 0 1.86057e-08 3.98664e-13 0 - 1.86057e-08 4.6086e-13 0 1.86056e-08 5.2722e-13 0 1.86056e-08 5.98839e-13 0 1.86056e-08 6.77177e-13 0 - 1.86056e-08 7.64262e-13 0 1.86056e-08 8.63032e-13 0 1.86056e-08 9.77934e-13 0 1.86056e-08 1.11596e-12 0 - 1.86056e-08 1.28822e-12 0 1.86056e-08 1.511e-12 0 1.86056e-08 1.79922e-12 0 1.86058e-08 2.11575e-12 0 - 2.98433e-08 -1.87648e-12 0 2.98432e-08 -1.69807e-12 0 2.98431e-08 -1.48321e-12 0 2.9843e-08 -1.2886e-12 0 - 2.9843e-08 -1.12481e-12 0 2.9843e-08 -9.88063e-13 0 2.98431e-08 -8.72195e-13 0 2.98431e-08 -7.71969e-13 0 - 2.98431e-08 -6.83493e-13 0 2.98431e-08 -6.03969e-13 0 2.98431e-08 -5.31373e-13 0 2.98431e-08 -4.64215e-13 0 - 2.98431e-08 -4.01365e-13 0 2.98431e-08 -3.41944e-13 0 2.98431e-08 -2.8525e-13 0 2.98431e-08 -2.30705e-13 0 - 2.98431e-08 -1.77818e-13 0 2.98431e-08 -1.26166e-13 0 2.98431e-08 -7.53663e-14 0 2.98431e-08 -2.50671e-14 0 - 2.98431e-08 2.50671e-14 0 2.98431e-08 7.53663e-14 0 2.98431e-08 1.26166e-13 0 2.98431e-08 1.77818e-13 0 - 2.98431e-08 2.30705e-13 0 2.98431e-08 2.8525e-13 0 2.98431e-08 3.41944e-13 0 2.98431e-08 4.01365e-13 0 - 2.98431e-08 4.64215e-13 0 2.98431e-08 5.31373e-13 0 2.98431e-08 6.03969e-13 0 2.98431e-08 6.83493e-13 0 - 2.98431e-08 7.71969e-13 0 2.98431e-08 8.72195e-13 0 2.9843e-08 9.88063e-13 0 2.9843e-08 1.12481e-12 0 - 2.9843e-08 1.2886e-12 0 2.98431e-08 1.48321e-12 0 2.98432e-08 1.69807e-12 0 2.98433e-08 1.87648e-12 0 - 4.04558e-08 -1.69496e-12 0 4.04557e-08 -1.58617e-12 0 4.04556e-08 -1.43024e-12 0 4.04555e-08 -1.26967e-12 0 - 4.04555e-08 -1.12233e-12 0 4.04555e-08 -9.92475e-13 0 4.04555e-08 -8.78914e-13 0 4.04555e-08 -7.78973e-13 0 - 4.04555e-08 -6.89971e-13 0 4.04555e-08 -6.09651e-13 0 4.04555e-08 -5.36222e-13 0 4.04555e-08 -4.68281e-13 0 - 4.04555e-08 -4.04729e-13 0 4.04555e-08 -3.44689e-13 0 4.04555e-08 -2.8745e-13 0 4.04555e-08 -2.32422e-13 0 - 4.04556e-08 -1.79104e-13 0 4.04556e-08 -1.27058e-13 0 4.04556e-08 -7.58909e-14 0 4.04556e-08 -2.52402e-14 0 - 4.04556e-08 2.52402e-14 0 4.04556e-08 7.58909e-14 0 4.04556e-08 1.27058e-13 0 4.04556e-08 1.79104e-13 0 - 4.04555e-08 2.32422e-13 0 4.04555e-08 2.8745e-13 0 4.04555e-08 3.44689e-13 0 4.04555e-08 4.04729e-13 0 - 4.04555e-08 4.68281e-13 0 4.04555e-08 5.36222e-13 0 4.04555e-08 6.09651e-13 0 4.04555e-08 6.89971e-13 0 - 4.04555e-08 7.78973e-13 0 4.04555e-08 8.78914e-13 0 4.04555e-08 9.92475e-13 0 4.04555e-08 1.12233e-12 0 - 4.04555e-08 1.26967e-12 0 4.04556e-08 1.43024e-12 0 4.04557e-08 1.58617e-12 0 4.04558e-08 1.69496e-12 0 - 5.04433e-08 -1.55048e-12 0 5.04432e-08 -1.47882e-12 0 5.04431e-08 -1.36451e-12 0 5.0443e-08 -1.23508e-12 0 - 5.0443e-08 -1.10712e-12 0 5.0443e-08 -9.88066e-13 0 5.0443e-08 -8.80015e-13 0 5.0443e-08 -7.82592e-13 0 - 5.0443e-08 -6.94507e-13 0 5.0443e-08 -6.14288e-13 0 5.0443e-08 -5.40564e-13 0 5.0443e-08 -4.72158e-13 0 - 5.0443e-08 -4.08081e-13 0 5.0443e-08 -3.47513e-13 0 5.0443e-08 -2.89767e-13 0 5.0443e-08 -2.34264e-13 0 - 5.0443e-08 -1.805e-13 0 5.0443e-08 -1.28035e-13 0 5.0443e-08 -7.64691e-14 0 5.0443e-08 -2.54316e-14 0 - 5.0443e-08 2.54316e-14 0 5.0443e-08 7.64691e-14 0 5.0443e-08 1.28035e-13 0 5.0443e-08 1.805e-13 0 - 5.0443e-08 2.34264e-13 0 5.0443e-08 2.89767e-13 0 5.0443e-08 3.47513e-13 0 5.0443e-08 4.08081e-13 0 - 5.0443e-08 4.72158e-13 0 5.0443e-08 5.40564e-13 0 5.0443e-08 6.14288e-13 0 5.0443e-08 6.94507e-13 0 - 5.0443e-08 7.82592e-13 0 5.0443e-08 8.80015e-13 0 5.0443e-08 9.88066e-13 0 5.0443e-08 1.10712e-12 0 - 5.0443e-08 1.23508e-12 0 5.04431e-08 1.36451e-12 0 5.04432e-08 1.47882e-12 0 5.04433e-08 1.55048e-12 0 - 5.98058e-08 -1.43037e-12 0 5.98057e-08 -1.38008e-12 0 5.98056e-08 -1.29434e-12 0 5.98055e-08 -1.19038e-12 0 - 5.98055e-08 -1.08125e-12 0 5.98055e-08 -9.74652e-13 0 5.98055e-08 -8.74272e-13 0 5.98055e-08 -7.81297e-13 0 - 5.98054e-08 -6.9563e-13 0 5.98054e-08 -6.16601e-13 0 5.98055e-08 -5.43346e-13 0 5.98055e-08 -4.74997e-13 0 - 5.98055e-08 -4.1075e-13 0 5.98055e-08 -3.49893e-13 0 5.98055e-08 -2.918e-13 0 5.98055e-08 -2.35926e-13 0 - 5.98055e-08 -1.81787e-13 0 5.98055e-08 -1.28948e-13 0 5.98055e-08 -7.70142e-14 0 5.98055e-08 -2.56128e-14 0 - 5.98055e-08 2.56128e-14 0 5.98055e-08 7.70142e-14 0 5.98055e-08 1.28948e-13 0 5.98055e-08 1.81787e-13 0 - 5.98055e-08 2.35926e-13 0 5.98055e-08 2.918e-13 0 5.98055e-08 3.49893e-13 0 5.98055e-08 4.1075e-13 0 - 5.98055e-08 4.74997e-13 0 5.98055e-08 5.43346e-13 0 5.98054e-08 6.16601e-13 0 5.98054e-08 6.9563e-13 0 - 5.98055e-08 7.81297e-13 0 5.98055e-08 8.74272e-13 0 5.98055e-08 9.74652e-13 0 5.98055e-08 1.08125e-12 0 - 5.98055e-08 1.19038e-12 0 5.98056e-08 1.29434e-12 0 5.98057e-08 1.38008e-12 0 5.98058e-08 1.43037e-12 0 - 6.85433e-08 -1.32724e-12 0 6.85432e-08 -1.29017e-12 0 6.85431e-08 -1.22418e-12 0 6.8543e-08 -1.14013e-12 0 - 6.8543e-08 -1.04765e-12 0 6.8543e-08 -9.53523e-13 0 6.85429e-08 -8.6183e-13 0 6.85429e-08 -7.74604e-13 0 - 6.85429e-08 -6.92585e-13 0 6.85429e-08 -6.15775e-13 0 6.85429e-08 -5.438e-13 0 6.85429e-08 -4.76124e-13 0 - 6.85429e-08 -4.12167e-13 0 6.85429e-08 -3.51361e-13 0 6.85429e-08 -2.93175e-13 0 6.85429e-08 -2.37119e-13 0 - 6.85429e-08 -1.82748e-13 0 6.85429e-08 -1.29649e-13 0 6.85429e-08 -7.74394e-14 0 6.85429e-08 -2.57552e-14 0 - 6.85429e-08 2.57552e-14 0 6.85429e-08 7.74394e-14 0 6.85429e-08 1.29649e-13 0 6.85429e-08 1.82748e-13 0 - 6.85429e-08 2.37119e-13 0 6.85429e-08 2.93175e-13 0 6.85429e-08 3.51361e-13 0 6.85429e-08 4.12167e-13 0 - 6.85429e-08 4.76124e-13 0 6.85429e-08 5.438e-13 0 6.85429e-08 6.15775e-13 0 6.85429e-08 6.92585e-13 0 - 6.85429e-08 7.74604e-13 0 6.85429e-08 8.6183e-13 0 6.8543e-08 9.53523e-13 0 6.8543e-08 1.04765e-12 0 - 6.8543e-08 1.14013e-12 0 6.85431e-08 1.22418e-12 0 6.85432e-08 1.29017e-12 0 6.85433e-08 1.32724e-12 0 - 7.66558e-08 -1.23658e-12 0 7.66557e-08 -1.20816e-12 0 7.66556e-08 -1.1561e-12 0 7.66555e-08 -1.0874e-12 0 - 7.66555e-08 -1.00899e-12 0 7.66555e-08 -9.26422e-13 0 7.66554e-08 -8.43557e-13 0 7.66554e-08 -7.62744e-13 0 - 7.66554e-08 -6.85211e-13 0 7.66554e-08 -6.11445e-13 0 7.66554e-08 -5.41477e-13 0 7.66554e-08 -4.75083e-13 0 - 7.66554e-08 -4.11909e-13 0 7.66554e-08 -3.51548e-13 0 7.66554e-08 -2.9358e-13 0 7.66554e-08 -2.37593e-13 0 - 7.66554e-08 -1.83193e-13 0 7.66554e-08 -1.30004e-13 0 7.66554e-08 -7.76653e-14 0 7.66554e-08 -2.58326e-14 0 - 7.66554e-08 2.58326e-14 0 7.66554e-08 7.76653e-14 0 7.66554e-08 1.30004e-13 0 7.66554e-08 1.83193e-13 0 - 7.66554e-08 2.37593e-13 0 7.66554e-08 2.9358e-13 0 7.66554e-08 3.51548e-13 0 7.66554e-08 4.11909e-13 0 - 7.66554e-08 4.75083e-13 0 7.66554e-08 5.41477e-13 0 7.66554e-08 6.11445e-13 0 7.66554e-08 6.85211e-13 0 - 7.66554e-08 7.62744e-13 0 7.66554e-08 8.43557e-13 0 7.66555e-08 9.26422e-13 0 7.66555e-08 1.00899e-12 0 - 7.66555e-08 1.0874e-12 0 7.66556e-08 1.1561e-12 0 7.66557e-08 1.20816e-12 0 7.66558e-08 1.23658e-12 0 - 8.41433e-08 -1.15543e-12 0 8.41432e-08 -1.13296e-12 0 8.41431e-08 -1.09098e-12 0 8.41431e-08 -1.0341e-12 0 - 8.4143e-08 -9.67319e-13 0 8.4143e-08 -8.95016e-13 0 8.41429e-08 -8.20577e-13 0 8.41429e-08 -7.46336e-13 0 - 8.41429e-08 -6.73747e-13 0 8.41429e-08 -6.03597e-13 0 8.41429e-08 -5.36217e-13 0 8.41429e-08 -4.71639e-13 0 - 8.41429e-08 -4.09717e-13 0 8.41429e-08 -3.50201e-13 0 8.41429e-08 -2.9279e-13 0 8.41429e-08 -2.37157e-13 0 - 8.41429e-08 -1.82972e-13 0 8.41429e-08 -1.29903e-13 0 8.41429e-08 -7.76269e-14 0 8.41429e-08 -2.58232e-14 0 - 8.41429e-08 2.58232e-14 0 8.41429e-08 7.76269e-14 0 8.41429e-08 1.29903e-13 0 8.41429e-08 1.82972e-13 0 - 8.41429e-08 2.37157e-13 0 8.41429e-08 2.9279e-13 0 8.41429e-08 3.50201e-13 0 8.41429e-08 4.09717e-13 0 - 8.41429e-08 4.71639e-13 0 8.41429e-08 5.36217e-13 0 8.41429e-08 6.03597e-13 0 8.41429e-08 6.73747e-13 0 - 8.41429e-08 7.46336e-13 0 8.41429e-08 8.20577e-13 0 8.4143e-08 8.95016e-13 0 8.4143e-08 9.67319e-13 0 - 8.41431e-08 1.0341e-12 0 8.41431e-08 1.09098e-12 0 8.41432e-08 1.13296e-12 0 8.41433e-08 1.15543e-12 0 - 9.10058e-08 -1.0818e-12 0 9.10057e-08 -1.06359e-12 0 9.10056e-08 -1.02906e-12 0 9.10056e-08 -9.81361e-13 0 - 9.10055e-08 -9.24104e-13 0 9.10055e-08 -8.60701e-13 0 9.10054e-08 -7.93999e-13 0 9.10054e-08 -7.26153e-13 0 - 9.10054e-08 -6.58658e-13 0 9.10054e-08 -5.92456e-13 0 9.10054e-08 -5.28076e-13 0 9.10054e-08 -4.65743e-13 0 - 9.10054e-08 -4.05482e-13 0 9.10054e-08 -3.47186e-13 0 9.10053e-08 -2.90666e-13 0 9.10053e-08 -2.35685e-13 0 - 9.10053e-08 -1.81978e-13 0 9.10053e-08 -1.2927e-13 0 9.10053e-08 -7.7276e-14 0 9.10053e-08 -2.5711e-14 0 - 9.10053e-08 2.5711e-14 0 9.10053e-08 7.7276e-14 0 9.10053e-08 1.2927e-13 0 9.10053e-08 1.81978e-13 0 - 9.10053e-08 2.35685e-13 0 9.10053e-08 2.90666e-13 0 9.10054e-08 3.47186e-13 0 9.10054e-08 4.05482e-13 0 - 9.10054e-08 4.65743e-13 0 9.10054e-08 5.28076e-13 0 9.10054e-08 5.92456e-13 0 9.10054e-08 6.58658e-13 0 - 9.10054e-08 7.26153e-13 0 9.10054e-08 7.93999e-13 0 9.10055e-08 8.60701e-13 0 9.10055e-08 9.24104e-13 0 - 9.10056e-08 9.81361e-13 0 9.10056e-08 1.02906e-12 0 9.10057e-08 1.06359e-12 0 9.10058e-08 1.0818e-12 0 - 9.72432e-08 -1.01425e-12 0 9.72432e-08 -9.99173e-13 0 9.72431e-08 -9.7029e-13 0 9.72431e-08 -9.29799e-13 0 - 9.7243e-08 -8.8034e-13 0 9.7243e-08 -8.24558e-13 0 9.72429e-08 -7.64801e-13 0 9.72429e-08 -7.02973e-13 0 - 9.72429e-08 -6.40502e-13 0 9.72429e-08 -5.78386e-13 0 9.72429e-08 -5.1726e-13 0 9.72429e-08 -4.57486e-13 0 - 9.72428e-08 -3.99219e-13 0 9.72428e-08 -3.42471e-13 0 9.72428e-08 -2.87153e-13 0 9.72428e-08 -2.33112e-13 0 - 9.72428e-08 -1.80154e-13 0 9.72428e-08 -1.28057e-13 0 9.72428e-08 -7.65827e-14 0 9.72428e-08 -2.54855e-14 0 - 9.72428e-08 2.54855e-14 0 9.72428e-08 7.65827e-14 0 9.72428e-08 1.28057e-13 0 9.72428e-08 1.80154e-13 0 - 9.72428e-08 2.33112e-13 0 9.72428e-08 2.87153e-13 0 9.72428e-08 3.42471e-13 0 9.72428e-08 3.99219e-13 0 - 9.72429e-08 4.57486e-13 0 9.72429e-08 5.1726e-13 0 9.72429e-08 5.78386e-13 0 9.72429e-08 6.40502e-13 0 - 9.72429e-08 7.02973e-13 0 9.72429e-08 7.64801e-13 0 9.7243e-08 8.24558e-13 0 9.7243e-08 8.8034e-13 0 - 9.72431e-08 9.29799e-13 0 9.72431e-08 9.7029e-13 0 9.72432e-08 9.99173e-13 0 9.72432e-08 1.01425e-12 0 - 1.02856e-07 -9.51732e-13 0 1.02856e-07 -9.3903e-13 0 1.02856e-07 -9.1451e-13 0 1.02856e-07 -8.79743e-13 0 - 1.02856e-07 -8.36688e-13 0 1.02855e-07 -7.87398e-13 0 1.02855e-07 -7.33789e-13 0 1.02855e-07 -6.77504e-13 0 - 1.02855e-07 -6.1985e-13 0 1.02855e-07 -5.61808e-13 0 1.02855e-07 -5.04062e-13 0 1.02855e-07 -4.47054e-13 0 - 1.02855e-07 -3.91033e-13 0 1.02855e-07 -3.36103e-13 0 1.02855e-07 -2.82262e-13 0 1.02855e-07 -2.29432e-13 0 - 1.02855e-07 -1.77482e-13 0 1.02855e-07 -1.26246e-13 0 1.02855e-07 -7.55346e-14 0 1.02855e-07 -2.51424e-14 0 - 1.02855e-07 2.51424e-14 0 1.02855e-07 7.55346e-14 0 1.02855e-07 1.26246e-13 0 1.02855e-07 1.77482e-13 0 - 1.02855e-07 2.29432e-13 0 1.02855e-07 2.82262e-13 0 1.02855e-07 3.36103e-13 0 1.02855e-07 3.91033e-13 0 - 1.02855e-07 4.47054e-13 0 1.02855e-07 5.04062e-13 0 1.02855e-07 5.61808e-13 0 1.02855e-07 6.1985e-13 0 - 1.02855e-07 6.77504e-13 0 1.02855e-07 7.33789e-13 0 1.02855e-07 7.87398e-13 0 1.02856e-07 8.36688e-13 0 - 1.02856e-07 8.79743e-13 0 1.02856e-07 9.1451e-13 0 1.02856e-07 9.3903e-13 0 1.02856e-07 9.51732e-13 0 - 1.07843e-07 -8.93444e-13 0 1.07843e-07 -8.82586e-13 0 1.07843e-07 -8.615e-13 0 1.07843e-07 -8.31336e-13 0 - 1.07843e-07 -7.93571e-13 0 1.07843e-07 -7.49807e-13 0 1.07843e-07 -7.01604e-13 0 1.07843e-07 -6.50356e-13 0 - 1.07843e-07 -5.97231e-13 0 1.07843e-07 -5.43153e-13 0 1.07843e-07 -4.8881e-13 0 1.07843e-07 -4.34685e-13 0 - 1.07843e-07 -3.81088e-13 0 1.07843e-07 -3.2819e-13 0 1.07843e-07 -2.76059e-13 0 1.07843e-07 -2.2468e-13 0 - 1.07843e-07 -1.7398e-13 0 1.07843e-07 -1.23846e-13 0 1.07843e-07 -7.41341e-14 0 1.07843e-07 -2.46821e-14 0 - 1.07843e-07 2.46821e-14 0 1.07843e-07 7.41341e-14 0 1.07843e-07 1.23846e-13 0 1.07843e-07 1.7398e-13 0 - 1.07843e-07 2.2468e-13 0 1.07843e-07 2.76059e-13 0 1.07843e-07 3.2819e-13 0 1.07843e-07 3.81088e-13 0 - 1.07843e-07 4.34685e-13 0 1.07843e-07 4.8881e-13 0 1.07843e-07 5.43153e-13 0 1.07843e-07 5.97231e-13 0 - 1.07843e-07 6.50356e-13 0 1.07843e-07 7.01604e-13 0 1.07843e-07 7.49807e-13 0 1.07843e-07 7.93571e-13 0 - 1.07843e-07 8.31336e-13 0 1.07843e-07 8.615e-13 0 1.07843e-07 8.82586e-13 0 1.07843e-07 8.93444e-13 0 - 1.12206e-07 -8.38773e-13 0 1.12206e-07 -8.29373e-13 0 1.12206e-07 -8.11035e-13 0 1.12206e-07 -7.84619e-13 0 - 1.12206e-07 -7.51255e-13 0 1.12206e-07 -7.12206e-13 0 1.12205e-07 -6.6874e-13 0 1.12205e-07 -6.22034e-13 0 - 1.12205e-07 -5.73115e-13 0 1.12205e-07 -5.2283e-13 0 1.12205e-07 -4.71841e-13 0 1.12205e-07 -4.20645e-13 0 - 1.12205e-07 -3.69584e-13 0 1.12205e-07 -3.18879e-13 0 1.12205e-07 -2.68647e-13 0 1.12205e-07 -2.18926e-13 0 - 1.12205e-07 -1.69694e-13 0 1.12205e-07 -1.20884e-13 0 1.12205e-07 -7.23957e-14 0 1.12205e-07 -2.41091e-14 0 - 1.12205e-07 2.41091e-14 0 1.12205e-07 7.23957e-14 0 1.12205e-07 1.20884e-13 0 1.12205e-07 1.69694e-13 0 - 1.12205e-07 2.18926e-13 0 1.12205e-07 2.68647e-13 0 1.12205e-07 3.18879e-13 0 1.12205e-07 3.69584e-13 0 - 1.12205e-07 4.20645e-13 0 1.12205e-07 4.71841e-13 0 1.12205e-07 5.2283e-13 0 1.12205e-07 5.73115e-13 0 - 1.12205e-07 6.22034e-13 0 1.12205e-07 6.6874e-13 0 1.12206e-07 7.12206e-13 0 1.12206e-07 7.51255e-13 0 - 1.12206e-07 7.84619e-13 0 1.12206e-07 8.11035e-13 0 1.12206e-07 8.29373e-13 0 1.12206e-07 8.38773e-13 0 - 1.15943e-07 -7.87234e-13 0 1.15943e-07 -7.79006e-13 0 1.15943e-07 -7.62899e-13 0 1.15943e-07 -7.3957e-13 0 - 1.15943e-07 -7.09897e-13 0 1.15943e-07 -6.74886e-13 0 1.15943e-07 -6.35572e-13 0 1.15943e-07 -5.92947e-13 0 - 1.15943e-07 -5.47903e-13 0 1.15943e-07 -5.01204e-13 0 1.15943e-07 -4.53474e-13 0 1.15943e-07 -4.05199e-13 0 - 1.15943e-07 -3.56736e-13 0 1.15943e-07 -3.08335e-13 0 1.15943e-07 -2.6015e-13 0 1.15943e-07 -2.12261e-13 0 - 1.15943e-07 -1.64687e-13 0 1.15943e-07 -1.17401e-13 0 1.15943e-07 -7.03429e-14 0 1.15943e-07 -2.3431e-14 0 - 1.15943e-07 2.3431e-14 0 1.15943e-07 7.03429e-14 0 1.15943e-07 1.17401e-13 0 1.15943e-07 1.64687e-13 0 - 1.15943e-07 2.12261e-13 0 1.15943e-07 2.6015e-13 0 1.15943e-07 3.08335e-13 0 1.15943e-07 3.56736e-13 0 - 1.15943e-07 4.05199e-13 0 1.15943e-07 4.53474e-13 0 1.15943e-07 5.01204e-13 0 1.15943e-07 5.47903e-13 0 - 1.15943e-07 5.92947e-13 0 1.15943e-07 6.35572e-13 0 1.15943e-07 6.74886e-13 0 1.15943e-07 7.09897e-13 0 - 1.15943e-07 7.3957e-13 0 1.15943e-07 7.62899e-13 0 1.15943e-07 7.79006e-13 0 1.15943e-07 7.87234e-13 0 - 1.19056e-07 -7.38435e-13 0 1.19056e-07 -7.31164e-13 0 1.19056e-07 -7.16893e-13 0 1.19056e-07 -6.96135e-13 0 - 1.19056e-07 -6.69583e-13 0 1.19056e-07 -6.38048e-13 0 1.19055e-07 -6.02381e-13 0 1.19055e-07 -5.63416e-13 0 - 1.19055e-07 -5.21928e-13 0 1.19055e-07 -4.78597e-13 0 1.19055e-07 -4.34e-13 0 1.19055e-07 -3.88599e-13 0 - 1.19055e-07 -3.42755e-13 0 1.19055e-07 -2.96731e-13 0 1.19055e-07 -2.50706e-13 0 1.19055e-07 -2.0479e-13 0 - 1.19055e-07 -1.59034e-13 0 1.19055e-07 -1.13448e-13 0 1.19055e-07 -6.80051e-14 0 1.19055e-07 -2.26573e-14 0 - 1.19055e-07 2.26573e-14 0 1.19055e-07 6.80051e-14 0 1.19055e-07 1.13448e-13 0 1.19055e-07 1.59034e-13 0 - 1.19055e-07 2.0479e-13 0 1.19055e-07 2.50706e-13 0 1.19055e-07 2.96731e-13 0 1.19055e-07 3.42755e-13 0 - 1.19055e-07 3.88599e-13 0 1.19055e-07 4.34e-13 0 1.19055e-07 4.78597e-13 0 1.19055e-07 5.21928e-13 0 - 1.19055e-07 5.63416e-13 0 1.19055e-07 6.02381e-13 0 1.19056e-07 6.38048e-13 0 1.19056e-07 6.69583e-13 0 - 1.19056e-07 6.96135e-13 0 1.19056e-07 7.16893e-13 0 1.19056e-07 7.31164e-13 0 1.19056e-07 7.38435e-13 0 - 1.21543e-07 -6.9206e-13 0 1.21543e-07 -6.8558e-13 0 1.21543e-07 -6.72838e-13 0 1.21543e-07 -6.54242e-13 0 - 1.21543e-07 -6.30352e-13 0 1.21543e-07 -6.01827e-13 0 1.21543e-07 -5.69371e-13 0 1.21543e-07 -5.33693e-13 0 - 1.21543e-07 -4.95462e-13 0 1.21543e-07 -4.55281e-13 0 1.21543e-07 -4.13674e-13 0 1.21543e-07 -3.71079e-13 0 - 1.21543e-07 -3.27844e-13 0 1.21543e-07 -2.84237e-13 0 1.21543e-07 -2.40452e-13 0 1.21543e-07 -1.9662e-13 0 - 1.21543e-07 -1.52818e-13 0 1.21543e-07 -1.09082e-13 0 1.21543e-07 -6.54151e-14 0 1.21543e-07 -2.17989e-14 0 - 1.21543e-07 2.17989e-14 0 1.21543e-07 6.54151e-14 0 1.21543e-07 1.09082e-13 0 1.21543e-07 1.52818e-13 0 - 1.21543e-07 1.9662e-13 0 1.21543e-07 2.40452e-13 0 1.21543e-07 2.84237e-13 0 1.21543e-07 3.27844e-13 0 - 1.21543e-07 3.71079e-13 0 1.21543e-07 4.13674e-13 0 1.21543e-07 4.55281e-13 0 1.21543e-07 4.95462e-13 0 - 1.21543e-07 5.33693e-13 0 1.21543e-07 5.69371e-13 0 1.21543e-07 6.01827e-13 0 1.21543e-07 6.30352e-13 0 - 1.21543e-07 6.54242e-13 0 1.21543e-07 6.72838e-13 0 1.21543e-07 6.8558e-13 0 1.21543e-07 6.9206e-13 0 - 1.23406e-07 -6.47845e-13 0 1.23406e-07 -6.42027e-13 0 1.23406e-07 -6.30572e-13 0 1.23406e-07 -6.13814e-13 0 - 1.23406e-07 -5.9221e-13 0 1.23406e-07 -5.66306e-13 0 1.23406e-07 -5.36693e-13 0 1.23405e-07 -5.03973e-13 0 - 1.23405e-07 -4.68724e-13 0 1.23405e-07 -4.31482e-13 0 1.23405e-07 -3.9272e-13 0 1.23405e-07 -3.52844e-13 0 - 1.23405e-07 -3.12187e-13 0 1.23405e-07 -2.71013e-13 0 1.23405e-07 -2.29522e-13 0 1.23405e-07 -1.87859e-13 0 - 1.23405e-07 -1.46119e-13 0 1.23405e-07 -1.04359e-13 0 1.23405e-07 -6.26068e-14 0 1.23405e-07 -2.0867e-14 0 - 1.23405e-07 2.0867e-14 0 1.23405e-07 6.26068e-14 0 1.23405e-07 1.04359e-13 0 1.23405e-07 1.46119e-13 0 - 1.23405e-07 1.87859e-13 0 1.23405e-07 2.29522e-13 0 1.23405e-07 2.71013e-13 0 1.23405e-07 3.12187e-13 0 - 1.23405e-07 3.52844e-13 0 1.23405e-07 3.9272e-13 0 1.23405e-07 4.31482e-13 0 1.23405e-07 4.68724e-13 0 - 1.23405e-07 5.03973e-13 0 1.23406e-07 5.36693e-13 0 1.23406e-07 5.66306e-13 0 1.23406e-07 5.9221e-13 0 - 1.23406e-07 6.13814e-13 0 1.23406e-07 6.30572e-13 0 1.23406e-07 6.42027e-13 0 1.23406e-07 6.47845e-13 0 - 1.24643e-07 -6.0557e-13 0 1.24643e-07 -6.00312e-13 0 1.24643e-07 -5.89951e-13 0 1.24643e-07 -5.74767e-13 0 - 1.24643e-07 -5.55143e-13 0 1.24643e-07 -5.31538e-13 0 1.24643e-07 -5.04451e-13 0 1.24643e-07 -4.74399e-13 0 - 1.24643e-07 -4.41886e-13 0 1.24643e-07 -4.07386e-13 0 1.24643e-07 -3.71325e-13 0 1.24643e-07 -3.34075e-13 0 - 1.24643e-07 -2.95949e-13 0 1.24643e-07 -2.57205e-13 0 1.24643e-07 -2.18041e-13 0 1.24643e-07 -1.78609e-13 0 - 1.24643e-07 -1.39016e-13 0 1.24643e-07 -9.93365e-14 0 1.24643e-07 -5.96135e-14 0 1.24643e-07 -1.98727e-14 0 - 1.24643e-07 1.98727e-14 0 1.24643e-07 5.96135e-14 0 1.24643e-07 9.93365e-14 0 1.24643e-07 1.39016e-13 0 - 1.24643e-07 1.78609e-13 0 1.24643e-07 2.18041e-13 0 1.24643e-07 2.57205e-13 0 1.24643e-07 2.95949e-13 0 - 1.24643e-07 3.34075e-13 0 1.24643e-07 3.71325e-13 0 1.24643e-07 4.07386e-13 0 1.24643e-07 4.41886e-13 0 - 1.24643e-07 4.74399e-13 0 1.24643e-07 5.04451e-13 0 1.24643e-07 5.31538e-13 0 1.24643e-07 5.55143e-13 0 - 1.24643e-07 5.74767e-13 0 1.24643e-07 5.89951e-13 0 1.24643e-07 6.00312e-13 0 1.24643e-07 6.0557e-13 0 - 1.25256e-07 -5.65051e-13 0 1.25256e-07 -5.6027e-13 0 1.25256e-07 -5.50846e-13 0 1.25256e-07 -5.37022e-13 0 - 1.25256e-07 -5.19124e-13 0 1.25256e-07 -4.97545e-13 0 1.25256e-07 -4.72715e-13 0 1.25256e-07 -4.45081e-13 0 - 1.25256e-07 -4.15084e-13 0 1.25255e-07 -3.83143e-13 0 1.25255e-07 -3.49643e-13 0 1.25255e-07 -3.14923e-13 0 - 1.25255e-07 -2.79275e-13 0 1.25255e-07 -2.42943e-13 0 1.25255e-07 -2.06121e-13 0 1.25255e-07 -1.68964e-13 0 - 1.25255e-07 -1.31584e-13 0 1.25255e-07 -9.40663e-14 0 1.25255e-07 -5.64672e-14 0 1.25255e-07 -1.88266e-14 0 - 1.25255e-07 1.88266e-14 0 1.25255e-07 5.64672e-14 0 1.25255e-07 9.40663e-14 0 1.25255e-07 1.31584e-13 0 - 1.25255e-07 1.68964e-13 0 1.25255e-07 2.06121e-13 0 1.25255e-07 2.42943e-13 0 1.25255e-07 2.79275e-13 0 - 1.25255e-07 3.14923e-13 0 1.25255e-07 3.49643e-13 0 1.25255e-07 3.83143e-13 0 1.25256e-07 4.15084e-13 0 - 1.25256e-07 4.45081e-13 0 1.25256e-07 4.72715e-13 0 1.25256e-07 4.97545e-13 0 1.25256e-07 5.19124e-13 0 - 1.25256e-07 5.37022e-13 0 1.25256e-07 5.50846e-13 0 1.25256e-07 5.6027e-13 0 1.25256e-07 5.65051e-13 0 - 1.25243e-07 -5.26131e-13 0 1.25243e-07 -5.21758e-13 0 1.25243e-07 -5.13142e-13 0 1.25243e-07 -5.005e-13 0 - 1.25243e-07 -4.84117e-13 0 1.25243e-07 -4.64336e-13 0 1.25243e-07 -4.41532e-13 0 1.25243e-07 -4.16097e-13 0 - 1.25243e-07 -3.8842e-13 0 1.25243e-07 -3.58874e-13 0 1.25243e-07 -3.27803e-13 0 1.25243e-07 -2.95518e-13 0 - 1.25243e-07 -2.62288e-13 0 1.25243e-07 -2.28341e-13 0 1.25243e-07 -1.93864e-13 0 1.25243e-07 -1.59009e-13 0 - 1.25243e-07 -1.2389e-13 0 1.25243e-07 -8.85978e-14 0 1.25243e-07 -5.31973e-14 0 1.25243e-07 -1.77386e-14 0 - 1.25243e-07 1.77386e-14 0 1.25243e-07 5.31973e-14 0 1.25243e-07 8.85978e-14 0 1.25243e-07 1.2389e-13 0 - 1.25243e-07 1.59009e-13 0 1.25243e-07 1.93864e-13 0 1.25243e-07 2.28341e-13 0 1.25243e-07 2.62288e-13 0 - 1.25243e-07 2.95518e-13 0 1.25243e-07 3.27803e-13 0 1.25243e-07 3.58874e-13 0 1.25243e-07 3.8842e-13 0 - 1.25243e-07 4.16097e-13 0 1.25243e-07 4.41532e-13 0 1.25243e-07 4.64336e-13 0 1.25243e-07 4.84117e-13 0 - 1.25243e-07 5.005e-13 0 1.25243e-07 5.13142e-13 0 1.25243e-07 5.21758e-13 0 1.25243e-07 5.26131e-13 0 - 1.24606e-07 -4.88673e-13 0 1.24606e-07 -4.84653e-13 0 1.24606e-07 -4.76738e-13 0 1.24606e-07 -4.65128e-13 0 - 1.24606e-07 -4.50082e-13 0 1.24606e-07 -4.31904e-13 0 1.24606e-07 -4.10928e-13 0 1.24606e-07 -3.87502e-13 0 - 1.24606e-07 -3.61972e-13 0 1.24606e-07 -3.34671e-13 0 1.24606e-07 -3.05909e-13 0 1.24605e-07 -2.75968e-13 0 - 1.24605e-07 -2.45094e-13 0 1.24605e-07 -2.13499e-13 0 1.24605e-07 -1.81359e-13 0 1.24605e-07 -1.4882e-13 0 - 1.24605e-07 -1.15995e-13 0 1.24605e-07 -8.29756e-14 0 1.24605e-07 -4.98311e-14 0 1.24605e-07 -1.66177e-14 0 - 1.24605e-07 1.66177e-14 0 1.24605e-07 4.98311e-14 0 1.24605e-07 8.29756e-14 0 1.24605e-07 1.15995e-13 0 - 1.24605e-07 1.4882e-13 0 1.24605e-07 1.81359e-13 0 1.24605e-07 2.13499e-13 0 1.24605e-07 2.45094e-13 0 - 1.24605e-07 2.75968e-13 0 1.24606e-07 3.05909e-13 0 1.24606e-07 3.34671e-13 0 1.24606e-07 3.61972e-13 0 - 1.24606e-07 3.87502e-13 0 1.24606e-07 4.10928e-13 0 1.24606e-07 4.31904e-13 0 1.24606e-07 4.50082e-13 0 - 1.24606e-07 4.65128e-13 0 1.24606e-07 4.76738e-13 0 1.24606e-07 4.84653e-13 0 1.24606e-07 4.88673e-13 0 - 1.23343e-07 -4.52564e-13 0 1.23343e-07 -4.48847e-13 0 1.23343e-07 -4.41542e-13 0 1.23343e-07 -4.30838e-13 0 - 1.23343e-07 -4.16976e-13 0 1.23343e-07 -4.00234e-13 0 1.23343e-07 -3.80916e-13 0 1.23343e-07 -3.59333e-13 0 - 1.23343e-07 -3.35798e-13 0 1.23343e-07 -3.10609e-13 0 1.23343e-07 -2.84046e-13 0 1.23343e-07 -2.56362e-13 0 - 1.23343e-07 -2.27783e-13 0 1.23343e-07 -1.98502e-13 0 1.23343e-07 -1.68685e-13 0 1.23343e-07 -1.38465e-13 0 - 1.23343e-07 -1.07954e-13 0 1.23343e-07 -7.72397e-14 0 1.23343e-07 -4.63932e-14 0 1.23343e-07 -1.54723e-14 0 - 1.23343e-07 1.54723e-14 0 1.23343e-07 4.63932e-14 0 1.23343e-07 7.72397e-14 0 1.23343e-07 1.07954e-13 0 - 1.23343e-07 1.38465e-13 0 1.23343e-07 1.68685e-13 0 1.23343e-07 1.98502e-13 0 1.23343e-07 2.27783e-13 0 - 1.23343e-07 2.56362e-13 0 1.23343e-07 2.84046e-13 0 1.23343e-07 3.10609e-13 0 1.23343e-07 3.35798e-13 0 - 1.23343e-07 3.59333e-13 0 1.23343e-07 3.80916e-13 0 1.23343e-07 4.00234e-13 0 1.23343e-07 4.16976e-13 0 - 1.23343e-07 4.30838e-13 0 1.23343e-07 4.41542e-13 0 1.23343e-07 4.48847e-13 0 1.23343e-07 4.52564e-13 0 - 1.21456e-07 -4.17703e-13 0 1.21456e-07 -4.14248e-13 0 1.21456e-07 -4.07473e-13 0 1.21456e-07 -3.97565e-13 0 - 1.21456e-07 -3.84756e-13 0 1.21456e-07 -3.69307e-13 0 1.21456e-07 -3.51498e-13 0 1.21456e-07 -3.31615e-13 0 - 1.21456e-07 -3.09941e-13 0 1.21456e-07 -2.86745e-13 0 1.21456e-07 -2.6228e-13 0 1.21456e-07 -2.36775e-13 0 - 1.21456e-07 -2.10431e-13 0 1.21456e-07 -1.83426e-13 0 1.21455e-07 -1.55909e-13 0 1.21455e-07 -1.28004e-13 0 - 1.21455e-07 -9.98159e-14 0 1.21455e-07 -7.14268e-14 0 1.21455e-07 -4.29057e-14 0 1.21455e-07 -1.431e-14 0 - 1.21455e-07 1.431e-14 0 1.21455e-07 4.29057e-14 0 1.21455e-07 7.14268e-14 0 1.21455e-07 9.98159e-14 0 - 1.21455e-07 1.28004e-13 0 1.21455e-07 1.55909e-13 0 1.21456e-07 1.83426e-13 0 1.21456e-07 2.10431e-13 0 - 1.21456e-07 2.36775e-13 0 1.21456e-07 2.6228e-13 0 1.21456e-07 2.86745e-13 0 1.21456e-07 3.09941e-13 0 - 1.21456e-07 3.31615e-13 0 1.21456e-07 3.51498e-13 0 1.21456e-07 3.69307e-13 0 1.21456e-07 3.84756e-13 0 - 1.21456e-07 3.97565e-13 0 1.21456e-07 4.07473e-13 0 1.21456e-07 4.14248e-13 0 1.21456e-07 4.17703e-13 0 - 1.18943e-07 -3.84007e-13 0 1.18943e-07 -3.80775e-13 0 1.18943e-07 -3.74459e-13 0 1.18943e-07 -3.65252e-13 0 - 1.18943e-07 -3.53381e-13 0 1.18943e-07 -3.391e-13 0 1.18943e-07 -3.22672e-13 0 1.18943e-07 -3.04364e-13 0 - 1.18943e-07 -2.84434e-13 0 1.18943e-07 -2.63128e-13 0 1.18943e-07 -2.40671e-13 0 1.18943e-07 -2.1727e-13 0 - 1.18943e-07 -1.93106e-13 0 1.18943e-07 -1.68336e-13 0 1.18943e-07 -1.43094e-13 0 1.18943e-07 -1.17493e-13 0 - 1.18943e-07 -9.16259e-14 0 1.18943e-07 -6.55703e-14 0 1.18943e-07 -3.93895e-14 0 1.18943e-07 -1.31375e-14 0 - 1.18943e-07 1.31375e-14 0 1.18943e-07 3.93895e-14 0 1.18943e-07 6.55703e-14 0 1.18943e-07 9.16259e-14 0 - 1.18943e-07 1.17493e-13 0 1.18943e-07 1.43094e-13 0 1.18943e-07 1.68336e-13 0 1.18943e-07 1.93106e-13 0 - 1.18943e-07 2.1727e-13 0 1.18943e-07 2.40671e-13 0 1.18943e-07 2.63128e-13 0 1.18943e-07 2.84434e-13 0 - 1.18943e-07 3.04364e-13 0 1.18943e-07 3.22672e-13 0 1.18943e-07 3.391e-13 0 1.18943e-07 3.53381e-13 0 - 1.18943e-07 3.65252e-13 0 1.18943e-07 3.74459e-13 0 1.18943e-07 3.80775e-13 0 1.18943e-07 3.84007e-13 0 - 1.15806e-07 -3.51401e-13 0 1.15806e-07 -3.48359e-13 0 1.15806e-07 -3.42439e-13 0 1.15806e-07 -3.33845e-13 0 - 1.15806e-07 -3.22812e-13 0 1.15806e-07 -3.09589e-13 0 1.15806e-07 -2.94432e-13 0 1.15806e-07 -2.7759e-13 0 - 1.15806e-07 -2.59304e-13 0 1.15806e-07 -2.39796e-13 0 1.15806e-07 -2.19269e-13 0 1.15806e-07 -1.97907e-13 0 - 1.15806e-07 -1.75868e-13 0 1.15806e-07 -1.53292e-13 0 1.15806e-07 -1.30297e-13 0 1.15806e-07 -1.06981e-13 0 - 1.15806e-07 -8.34262e-14 0 1.15806e-07 -5.97018e-14 0 1.15806e-07 -3.58641e-14 0 1.15806e-07 -1.19617e-14 0 - 1.15806e-07 1.19617e-14 0 1.15806e-07 3.58641e-14 0 1.15806e-07 5.97018e-14 0 1.15806e-07 8.34262e-14 0 - 1.15806e-07 1.06981e-13 0 1.15806e-07 1.30297e-13 0 1.15806e-07 1.53292e-13 0 1.15806e-07 1.75868e-13 0 - 1.15806e-07 1.97907e-13 0 1.15806e-07 2.19269e-13 0 1.15806e-07 2.39796e-13 0 1.15806e-07 2.59304e-13 0 - 1.15806e-07 2.7759e-13 0 1.15806e-07 2.94432e-13 0 1.15806e-07 3.09589e-13 0 1.15806e-07 3.22812e-13 0 - 1.15806e-07 3.33845e-13 0 1.15806e-07 3.42439e-13 0 1.15806e-07 3.48359e-13 0 1.15806e-07 3.51401e-13 0 - 1.12043e-07 -3.19828e-13 0 1.12043e-07 -3.16943e-13 0 1.12043e-07 -3.11358e-13 0 1.12043e-07 -3.033e-13 0 - 1.12043e-07 -2.93014e-13 0 1.12043e-07 -2.80754e-13 0 1.12043e-07 -2.66771e-13 0 1.12043e-07 -2.51304e-13 0 - 1.12043e-07 -2.34576e-13 0 1.12043e-07 -2.16788e-13 0 1.12043e-07 -1.98122e-13 0 1.12043e-07 -1.78739e-13 0 - 1.12043e-07 -1.58777e-13 0 1.12043e-07 -1.38355e-13 0 1.12043e-07 -1.17574e-13 0 1.12043e-07 -9.65184e-14 0 - 1.12043e-07 -7.52584e-14 0 1.12043e-07 -5.38522e-14 0 1.12043e-07 -3.23484e-14 0 1.12043e-07 -1.07889e-14 0 - 1.12043e-07 1.07889e-14 0 1.12043e-07 3.23484e-14 0 1.12043e-07 5.38522e-14 0 1.12043e-07 7.52584e-14 0 - 1.12043e-07 9.65184e-14 0 1.12043e-07 1.17574e-13 0 1.12043e-07 1.38355e-13 0 1.12043e-07 1.58777e-13 0 - 1.12043e-07 1.78739e-13 0 1.12043e-07 1.98122e-13 0 1.12043e-07 2.16788e-13 0 1.12043e-07 2.34576e-13 0 - 1.12043e-07 2.51304e-13 0 1.12043e-07 2.66771e-13 0 1.12043e-07 2.80754e-13 0 1.12043e-07 2.93014e-13 0 - 1.12043e-07 3.033e-13 0 1.12043e-07 3.11358e-13 0 1.12043e-07 3.16943e-13 0 1.12043e-07 3.19828e-13 0 - 1.07656e-07 -2.8924e-13 0 1.07656e-07 -2.86478e-13 0 1.07656e-07 -2.81173e-13 0 1.07656e-07 -2.73578e-13 0 - 1.07656e-07 -2.6396e-13 0 1.07656e-07 -2.5258e-13 0 1.07656e-07 -2.39691e-13 0 1.07656e-07 -2.25521e-13 0 - 1.07656e-07 -2.10278e-13 0 1.07656e-07 -1.94146e-13 0 1.07656e-07 -1.77282e-13 0 1.07656e-07 -1.59826e-13 0 - 1.07656e-07 -1.41893e-13 0 1.07656e-07 -1.23585e-13 0 1.07656e-07 -1.04983e-13 0 1.07656e-07 -8.6157e-14 0 - 1.07656e-07 -6.71647e-14 0 1.07656e-07 -4.80532e-14 0 1.07656e-07 -2.88622e-14 0 1.07656e-07 -9.62565e-15 0 - 1.07656e-07 9.62565e-15 0 1.07656e-07 2.88622e-14 0 1.07656e-07 4.80532e-14 0 1.07656e-07 6.71647e-14 0 - 1.07656e-07 8.6157e-14 0 1.07656e-07 1.04983e-13 0 1.07656e-07 1.23585e-13 0 1.07656e-07 1.41893e-13 0 - 1.07656e-07 1.59826e-13 0 1.07656e-07 1.77282e-13 0 1.07656e-07 1.94146e-13 0 1.07656e-07 2.10278e-13 0 - 1.07656e-07 2.25521e-13 0 1.07656e-07 2.39691e-13 0 1.07656e-07 2.5258e-13 0 1.07656e-07 2.6396e-13 0 - 1.07656e-07 2.73578e-13 0 1.07656e-07 2.81173e-13 0 1.07656e-07 2.86478e-13 0 1.07656e-07 2.8924e-13 0 - 1.02643e-07 -2.596e-13 0 1.02643e-07 -2.56928e-13 0 1.02643e-07 -2.51849e-13 0 1.02643e-07 -2.44651e-13 0 - 1.02643e-07 -2.35628e-13 0 1.02643e-07 -2.25059e-13 0 1.02643e-07 -2.13196e-13 0 1.02643e-07 -2.00263e-13 0 - 1.02643e-07 -1.86449e-13 0 1.02643e-07 -1.71919e-13 0 1.02643e-07 -1.56808e-13 0 1.02643e-07 -1.41232e-13 0 - 1.02643e-07 -1.25286e-13 0 1.02643e-07 -1.09048e-13 0 1.02643e-07 -9.25857e-14 0 1.02643e-07 -7.59518e-14 0 - 1.02643e-07 -5.91906e-14 0 1.02643e-07 -4.23386e-14 0 1.02643e-07 -2.54262e-14 0 1.02643e-07 -8.47913e-15 0 - 1.02643e-07 8.47913e-15 0 1.02643e-07 2.54262e-14 0 1.02643e-07 4.23386e-14 0 1.02643e-07 5.91906e-14 0 - 1.02643e-07 7.59518e-14 0 1.02643e-07 9.25857e-14 0 1.02643e-07 1.09048e-13 0 1.02643e-07 1.25286e-13 0 - 1.02643e-07 1.41232e-13 0 1.02643e-07 1.56808e-13 0 1.02643e-07 1.71919e-13 0 1.02643e-07 1.86449e-13 0 - 1.02643e-07 2.00263e-13 0 1.02643e-07 2.13196e-13 0 1.02643e-07 2.25059e-13 0 1.02643e-07 2.35628e-13 0 - 1.02643e-07 2.44651e-13 0 1.02643e-07 2.51849e-13 0 1.02643e-07 2.56928e-13 0 1.02643e-07 2.596e-13 0 - 9.7006e-08 -2.30885e-13 0 9.7006e-08 -2.2827e-13 0 9.7006e-08 -2.23361e-13 0 9.70059e-08 -2.16498e-13 0 - 9.70059e-08 -2.0801e-13 0 9.70059e-08 -1.98196e-13 0 9.70059e-08 -1.8731e-13 0 9.70058e-08 -1.75568e-13 0 - 9.70058e-08 -1.63142e-13 0 9.70058e-08 -1.50173e-13 0 9.70058e-08 -1.36774e-13 0 9.70057e-08 -1.23037e-13 0 - 9.70057e-08 -1.09033e-13 0 9.70057e-08 -9.48229e-14 0 9.70057e-08 -8.04537e-14 0 9.70057e-08 -6.59644e-14 0 - 9.70057e-08 -5.13866e-14 0 9.70057e-08 -3.67459e-14 0 9.70057e-08 -2.20633e-14 0 9.70057e-08 -7.35702e-15 0 - 9.70057e-08 7.35702e-15 0 9.70057e-08 2.20633e-14 0 9.70057e-08 3.67459e-14 0 9.70057e-08 5.13866e-14 0 - 9.70057e-08 6.59644e-14 0 9.70057e-08 8.04537e-14 0 9.70057e-08 9.48229e-14 0 9.70057e-08 1.09033e-13 0 - 9.70057e-08 1.23037e-13 0 9.70058e-08 1.36774e-13 0 9.70058e-08 1.50173e-13 0 9.70058e-08 1.63142e-13 0 - 9.70058e-08 1.75568e-13 0 9.70059e-08 1.8731e-13 0 9.70059e-08 1.98196e-13 0 9.70059e-08 2.0801e-13 0 - 9.70059e-08 2.16498e-13 0 9.7006e-08 2.23361e-13 0 9.7006e-08 2.2827e-13 0 9.7006e-08 2.30885e-13 0 - 9.07436e-08 -2.03085e-13 0 9.07435e-08 -2.0049e-13 0 9.07435e-08 -1.95697e-13 0 9.07435e-08 -1.89114e-13 0 - 9.07434e-08 -1.81113e-13 0 9.07434e-08 -1.72014e-13 0 9.07434e-08 -1.62074e-13 0 9.07434e-08 -1.51496e-13 0 - 9.07433e-08 -1.40431e-13 0 9.07433e-08 -1.28996e-13 0 9.07433e-08 -1.17276e-13 0 9.07433e-08 -1.05338e-13 0 - 9.07433e-08 -9.32329e-14 0 9.07433e-08 -8.09995e-14 0 9.07432e-08 -6.86692e-14 0 9.07432e-08 -5.62663e-14 0 - 9.07432e-08 -4.38105e-14 0 9.07432e-08 -3.13174e-14 0 9.07432e-08 -1.87997e-14 0 9.07432e-08 -6.26806e-15 0 - 9.07432e-08 6.26806e-15 0 9.07432e-08 1.87997e-14 0 9.07432e-08 3.13174e-14 0 9.07432e-08 4.38105e-14 0 - 9.07432e-08 5.62663e-14 0 9.07432e-08 6.86692e-14 0 9.07433e-08 8.09995e-14 0 9.07433e-08 9.32329e-14 0 - 9.07433e-08 1.05338e-13 0 9.07433e-08 1.17276e-13 0 9.07433e-08 1.28996e-13 0 9.07433e-08 1.40431e-13 0 - 9.07434e-08 1.51496e-13 0 9.07434e-08 1.62074e-13 0 9.07434e-08 1.72014e-13 0 9.07434e-08 1.81113e-13 0 - 9.07435e-08 1.89114e-13 0 9.07435e-08 1.95697e-13 0 9.07435e-08 2.0049e-13 0 9.07436e-08 2.03085e-13 0 - 8.38561e-08 -1.76206e-13 0 8.38561e-08 -1.7359e-13 0 8.3856e-08 -1.68861e-13 0 8.3856e-08 -1.6251e-13 0 - 8.3856e-08 -1.54965e-13 0 8.3856e-08 -1.46563e-13 0 8.38559e-08 -1.37562e-13 0 8.38559e-08 -1.28141e-13 0 - 8.38559e-08 -1.18427e-13 0 8.38559e-08 -1.08506e-13 0 8.38558e-08 -9.84364e-14 0 8.38558e-08 -8.82593e-14 0 - 8.38558e-08 -7.80029e-14 0 8.38558e-08 -6.7688e-14 0 8.38558e-08 -5.73299e-14 0 8.38558e-08 -4.69406e-14 0 - 8.38558e-08 -3.65288e-14 0 8.38558e-08 -2.61017e-14 0 8.38558e-08 -1.56647e-14 0 8.38558e-08 -5.22215e-15 0 - 8.38558e-08 5.22215e-15 0 8.38558e-08 1.56647e-14 0 8.38558e-08 2.61017e-14 0 8.38558e-08 3.65288e-14 0 - 8.38558e-08 4.69406e-14 0 8.38558e-08 5.73299e-14 0 8.38558e-08 6.7688e-14 0 8.38558e-08 7.80029e-14 0 - 8.38558e-08 8.82593e-14 0 8.38558e-08 9.84364e-14 0 8.38559e-08 1.08506e-13 0 8.38559e-08 1.18427e-13 0 - 8.38559e-08 1.28141e-13 0 8.38559e-08 1.37562e-13 0 8.3856e-08 1.46563e-13 0 8.3856e-08 1.54965e-13 0 - 8.3856e-08 1.6251e-13 0 8.3856e-08 1.68861e-13 0 8.38561e-08 1.7359e-13 0 8.38561e-08 1.76206e-13 0 - 7.63436e-08 -1.50271e-13 0 7.63436e-08 -1.47589e-13 0 7.63436e-08 -1.42874e-13 0 7.63435e-08 -1.36725e-13 0 - 7.63435e-08 -1.29627e-13 0 7.63435e-08 -1.21935e-13 0 7.63435e-08 -1.13889e-13 0 7.63434e-08 -1.0564e-13 0 - 7.63434e-08 -9.72808e-14 0 7.63434e-08 -8.8863e-14 0 7.63434e-08 -8.04161e-14 0 7.63434e-08 -7.19553e-14 0 - 7.63433e-08 -6.34885e-14 0 7.63433e-08 -5.502e-14 0 7.63433e-08 -4.65515e-14 0 7.63433e-08 -3.80843e-14 0 - 7.63433e-08 -2.96186e-14 0 7.63433e-08 -2.11547e-14 0 7.63433e-08 -1.26922e-14 0 7.63433e-08 -4.23061e-15 0 - 7.63433e-08 4.23061e-15 0 7.63433e-08 1.26922e-14 0 7.63433e-08 2.11547e-14 0 7.63433e-08 2.96186e-14 0 - 7.63433e-08 3.80843e-14 0 7.63433e-08 4.65515e-14 0 7.63433e-08 5.502e-14 0 7.63433e-08 6.34885e-14 0 - 7.63434e-08 7.19553e-14 0 7.63434e-08 8.04161e-14 0 7.63434e-08 8.8863e-14 0 7.63434e-08 9.72808e-14 0 - 7.63434e-08 1.0564e-13 0 7.63435e-08 1.13889e-13 0 7.63435e-08 1.21935e-13 0 7.63435e-08 1.29627e-13 0 - 7.63435e-08 1.36725e-13 0 7.63436e-08 1.42874e-13 0 7.63436e-08 1.47589e-13 0 7.63436e-08 1.50271e-13 0 - 6.82061e-08 -1.25326e-13 0 6.82061e-08 -1.22527e-13 0 6.82061e-08 -1.17783e-13 0 6.82061e-08 -1.11831e-13 0 - 6.8206e-08 -1.05212e-13 0 6.8206e-08 -9.8278e-14 0 6.8206e-08 -9.12361e-14 0 6.8206e-08 -8.41949e-14 0 - 6.8206e-08 -7.72038e-14 0 6.82059e-08 -7.0279e-14 0 6.82059e-08 -6.34199e-14 0 6.82059e-08 -5.66189e-14 0 - 6.82059e-08 -4.98662e-14 0 6.82059e-08 -4.31524e-14 0 6.82059e-08 -3.64693e-14 0 6.82059e-08 -2.98097e-14 0 - 6.82059e-08 -2.31682e-14 0 6.82058e-08 -1.65398e-14 0 6.82058e-08 -9.92035e-15 0 6.82058e-08 -3.30621e-15 0 - 6.82058e-08 3.30621e-15 0 6.82058e-08 9.92035e-15 0 6.82058e-08 1.65398e-14 0 6.82059e-08 2.31682e-14 0 - 6.82059e-08 2.98097e-14 0 6.82059e-08 3.64693e-14 0 6.82059e-08 4.31524e-14 0 6.82059e-08 4.98662e-14 0 - 6.82059e-08 5.66189e-14 0 6.82059e-08 6.34199e-14 0 6.82059e-08 7.0279e-14 0 6.8206e-08 7.72038e-14 0 - 6.8206e-08 8.41949e-14 0 6.8206e-08 9.12361e-14 0 6.8206e-08 9.8278e-14 0 6.8206e-08 1.05212e-13 0 - 6.82061e-08 1.11831e-13 0 6.82061e-08 1.17783e-13 0 6.82061e-08 1.22527e-13 0 6.82061e-08 1.25326e-13 0 - 5.94437e-08 -1.01442e-13 0 5.94437e-08 -9.84709e-14 0 5.94436e-08 -9.36788e-14 0 5.94436e-08 -8.79653e-14 0 - 5.94436e-08 -8.19085e-14 0 5.94436e-08 -7.58271e-14 0 5.94435e-08 -6.98695e-14 0 5.94435e-08 -6.40862e-14 0 - 5.94435e-08 -5.84787e-14 0 5.94435e-08 -5.30269e-14 0 5.94435e-08 -4.77042e-14 0 5.94435e-08 -4.24848e-14 0 - 5.94434e-08 -3.73459e-14 0 5.94434e-08 -3.2269e-14 0 5.94434e-08 -2.72392e-14 0 5.94434e-08 -2.2245e-14 0 - 5.94434e-08 -1.72771e-14 0 5.94434e-08 -1.23282e-14 0 5.94434e-08 -7.39203e-15 0 5.94434e-08 -2.46321e-15 0 - 5.94434e-08 2.46321e-15 0 5.94434e-08 7.39203e-15 0 5.94434e-08 1.23282e-14 0 5.94434e-08 1.72771e-14 0 - 5.94434e-08 2.2245e-14 0 5.94434e-08 2.72392e-14 0 5.94434e-08 3.2269e-14 0 5.94434e-08 3.73459e-14 0 - 5.94435e-08 4.24848e-14 0 5.94435e-08 4.77042e-14 0 5.94435e-08 5.30269e-14 0 5.94435e-08 5.84787e-14 0 - 5.94435e-08 6.40862e-14 0 5.94435e-08 6.98695e-14 0 5.94436e-08 7.58271e-14 0 5.94436e-08 8.19085e-14 0 - 5.94436e-08 8.79653e-14 0 5.94436e-08 9.36788e-14 0 5.94437e-08 9.84709e-14 0 5.94437e-08 1.01442e-13 0 - 5.00562e-08 -7.87323e-14 0 5.00562e-08 -7.55319e-14 0 5.00562e-08 -7.0722e-14 0 5.00561e-08 -6.53676e-14 0 - 5.00561e-08 -6.00307e-14 0 5.00561e-08 -5.49461e-14 0 5.00561e-08 -5.0175e-14 0 5.00561e-08 -4.56996e-14 0 - 5.0056e-08 -4.14746e-14 0 5.0056e-08 -3.74501e-14 0 5.0056e-08 -3.35815e-14 0 5.0056e-08 -2.98317e-14 0 - 5.0056e-08 -2.61718e-14 0 5.0056e-08 -2.25794e-14 0 5.0056e-08 -1.90375e-14 0 5.0056e-08 -1.5533e-14 0 - 5.0056e-08 -1.2056e-14 0 5.0056e-08 -8.59857e-15 0 5.0056e-08 -5.15415e-15 0 5.0056e-08 -1.71724e-15 0 - 5.0056e-08 1.71724e-15 0 5.0056e-08 5.15415e-15 0 5.0056e-08 8.59857e-15 0 5.0056e-08 1.2056e-14 0 - 5.0056e-08 1.5533e-14 0 5.0056e-08 1.90375e-14 0 5.0056e-08 2.25794e-14 0 5.0056e-08 2.61718e-14 0 - 5.0056e-08 2.98317e-14 0 5.0056e-08 3.35815e-14 0 5.0056e-08 3.74501e-14 0 5.0056e-08 4.14746e-14 0 - 5.00561e-08 4.56996e-14 0 5.00561e-08 5.0175e-14 0 5.00561e-08 5.49461e-14 0 5.00561e-08 6.00307e-14 0 - 5.00561e-08 6.53676e-14 0 5.00562e-08 7.0722e-14 0 5.00562e-08 7.55319e-14 0 5.00562e-08 7.87323e-14 0 - 4.00437e-08 -5.73596e-14 0 4.00437e-08 -5.39015e-14 0 4.00437e-08 -4.92151e-14 0 4.00437e-08 -4.44641e-14 0 - 4.00437e-08 -4.0089e-14 0 4.00436e-08 -3.61798e-14 0 4.00436e-08 -3.26917e-14 0 4.00436e-08 -2.95437e-14 0 - 4.00436e-08 -2.66568e-14 0 4.00436e-08 -2.39655e-14 0 4.00436e-08 -2.14192e-14 0 4.00435e-08 -1.89799e-14 0 - 4.00435e-08 -1.66195e-14 0 4.00435e-08 -1.43171e-14 0 4.00435e-08 -1.20576e-14 0 4.00435e-08 -9.8296e-15 0 - 4.00435e-08 -7.62443e-15 0 4.00435e-08 -5.43542e-15 0 4.00435e-08 -3.25716e-15 0 4.00435e-08 -1.08505e-15 0 - 4.00435e-08 1.08505e-15 0 4.00435e-08 3.25716e-15 0 4.00435e-08 5.43542e-15 0 4.00435e-08 7.62443e-15 0 - 4.00435e-08 9.8296e-15 0 4.00435e-08 1.20576e-14 0 4.00435e-08 1.43171e-14 0 4.00435e-08 1.66195e-14 0 - 4.00435e-08 1.89799e-14 0 4.00436e-08 2.14192e-14 0 4.00436e-08 2.39655e-14 0 4.00436e-08 2.66568e-14 0 - 4.00436e-08 2.95437e-14 0 4.00436e-08 3.26917e-14 0 4.00436e-08 3.61798e-14 0 4.00437e-08 4.0089e-14 0 - 4.00437e-08 4.44641e-14 0 4.00437e-08 4.92151e-14 0 4.00437e-08 5.39015e-14 0 4.00437e-08 5.73596e-14 0 - 2.94063e-08 -3.75794e-14 0 2.94062e-08 -3.39563e-14 0 2.94062e-08 -2.97572e-14 0 2.94062e-08 -2.60124e-14 0 - 2.94062e-08 -2.28948e-14 0 2.94062e-08 -2.03154e-14 0 2.94062e-08 -1.81415e-14 0 2.94061e-08 -1.62595e-14 0 - 2.94061e-08 -1.45846e-14 0 2.94061e-08 -1.30564e-14 0 2.94061e-08 -1.16327e-14 0 2.94061e-08 -1.02838e-14 0 - 2.94061e-08 -8.9889e-15 0 2.94061e-08 -7.7332e-15 0 2.94061e-08 -6.50606e-15 0 2.94061e-08 -5.29973e-15 0 - 2.94061e-08 -4.10842e-15 0 2.94061e-08 -2.92768e-15 0 2.94061e-08 -1.75395e-15 0 2.94061e-08 -5.84214e-16 0 - 2.94061e-08 5.84214e-16 0 2.94061e-08 1.75395e-15 0 2.94061e-08 2.92768e-15 0 2.94061e-08 4.10842e-15 0 - 2.94061e-08 5.29973e-15 0 2.94061e-08 6.50606e-15 0 2.94061e-08 7.7332e-15 0 2.94061e-08 8.9889e-15 0 - 2.94061e-08 1.02838e-14 0 2.94061e-08 1.16327e-14 0 2.94061e-08 1.30564e-14 0 2.94061e-08 1.45846e-14 0 - 2.94061e-08 1.62595e-14 0 2.94062e-08 1.81415e-14 0 2.94062e-08 2.03154e-14 0 2.94062e-08 2.28948e-14 0 - 2.94062e-08 2.60124e-14 0 2.94062e-08 2.97572e-14 0 2.94062e-08 3.39563e-14 0 2.94063e-08 3.75794e-14 0 - 1.81438e-08 -1.98696e-14 0 1.81437e-08 -1.65977e-14 0 1.81437e-08 -1.35924e-14 0 1.81437e-08 -1.1335e-14 0 - 1.81437e-08 -9.6771e-15 0 1.81437e-08 -8.42249e-15 0 1.81437e-08 -7.42863e-15 0 1.81437e-08 -6.60396e-15 0 - 1.81437e-08 -5.89101e-15 0 1.81437e-08 -5.25337e-15 0 1.81437e-08 -4.6675e-15 0 1.81437e-08 -4.11781e-15 0 - 1.81437e-08 -3.59378e-15 0 1.81437e-08 -3.08814e-15 0 1.81436e-08 -2.5958e-15 0 1.81436e-08 -2.11307e-15 0 - 1.81436e-08 -1.63726e-15 0 1.81436e-08 -1.16631e-15 0 1.81436e-08 -6.98565e-16 0 1.81436e-08 -2.32656e-16 0 - 1.81436e-08 2.32656e-16 0 1.81436e-08 6.98565e-16 0 1.81436e-08 1.16631e-15 0 1.81436e-08 1.63726e-15 0 - 1.81436e-08 2.11307e-15 0 1.81436e-08 2.5958e-15 0 1.81437e-08 3.08814e-15 0 1.81437e-08 3.59378e-15 0 - 1.81437e-08 4.11781e-15 0 1.81437e-08 4.6675e-15 0 1.81437e-08 5.25337e-15 0 1.81437e-08 5.89101e-15 0 - 1.81437e-08 6.60396e-15 0 1.81437e-08 7.42863e-15 0 1.81437e-08 8.42249e-15 0 1.81437e-08 9.6771e-15 0 - 1.81437e-08 1.1335e-14 0 1.81437e-08 1.35924e-14 0 1.81437e-08 1.65977e-14 0 1.81438e-08 1.98696e-14 0 - 6.25627e-09 -5.8064e-15 0 6.25626e-09 -4.3634e-15 0 6.25625e-09 -3.27199e-15 0 6.25624e-09 -2.57459e-15 0 - 6.25624e-09 -2.12284e-15 0 6.25623e-09 -1.81047e-15 0 6.25623e-09 -1.57767e-15 0 6.25623e-09 -1.39208e-15 0 - 6.25622e-09 -1.23577e-15 0 6.25622e-09 -1.09836e-15 0 6.25622e-09 -9.7358e-16 0 6.25622e-09 -8.5745e-16 0 - 6.25622e-09 -7.47372e-16 0 6.25621e-09 -6.41593e-16 0 6.25621e-09 -5.38901e-16 0 6.25621e-09 -4.38435e-16 0 - 6.25621e-09 -3.39566e-16 0 6.25621e-09 -2.41818e-16 0 6.25621e-09 -1.4481e-16 0 6.25621e-09 -4.82241e-17 0 - 6.25621e-09 4.82241e-17 0 6.25621e-09 1.4481e-16 0 6.25621e-09 2.41818e-16 0 6.25621e-09 3.39566e-16 0 - 6.25621e-09 4.38435e-16 0 6.25621e-09 5.38901e-16 0 6.25621e-09 6.41593e-16 0 6.25622e-09 7.47372e-16 0 - 6.25622e-09 8.5745e-16 0 6.25622e-09 9.7358e-16 0 6.25622e-09 1.09836e-15 0 6.25622e-09 1.23577e-15 0 - 6.25623e-09 1.39208e-15 0 6.25623e-09 1.57767e-15 0 6.25623e-09 1.81047e-15 0 6.25624e-09 2.12284e-15 0 - 6.25624e-09 2.57459e-15 0 6.25625e-09 3.27199e-15 0 6.25626e-09 4.3634e-15 0 6.25627e-09 5.8064e-15 0 - - - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 - - - - - 0 1 0 0.025 1 0 0 1.025 0 0.025 1.025 0 - 0.05 1 0 0.05 1.025 0 0.075 1 0 0.075 1.025 0 - 0.1 1 0 0.1 1.025 0 0.125 1 0 0.125 1.025 0 - 0.15 1 0 0.15 1.025 0 0.175 1 0 0.175 1.025 0 - 0.2 1 0 0.2 1.025 0 0.225 1 0 0.225 1.025 0 - 0.25 1 0 0.25 1.025 0 0.275 1 0 0.275 1.025 0 - 0.3 1 0 0.3 1.025 0 0.325 1 0 0.325 1.025 0 - 0.35 1 0 0.35 1.025 0 0.375 1 0 0.375 1.025 0 - 0.4 1 0 0.4 1.025 0 0.425 1 0 0.425 1.025 0 - 0.45 1 0 0.45 1.025 0 0.475 1 0 0.475 1.025 0 - 0.5 1 0 0.5 1.025 0 0.525 1 0 0.525 1.025 0 - 0.55 1 0 0.55 1.025 0 0.575 1 0 0.575 1.025 0 - 0.6 1 0 0.6 1.025 0 0.625 1 0 0.625 1.025 0 - 0.65 1 0 0.65 1.025 0 0.675 1 0 0.675 1.025 0 - 0.7 1 0 0.7 1.025 0 0.725 1 0 0.725 1.025 0 - 0.75 1 0 0.75 1.025 0 0.775 1 0 0.775 1.025 0 - 0.8 1 0 0.8 1.025 0 0.825 1 0 0.825 1.025 0 - 0.85 1 0 0.85 1.025 0 0.875 1 0 0.875 1.025 0 - 0.9 1 0 0.9 1.025 0 0.925 1 0 0.925 1.025 0 - 0.95 1 0 0.95 1.025 0 0.975 1 0 0.975 1.025 0 - 1 1 0 1 1.025 0 0 1.05 0 0.025 1.05 0 - 0.05 1.05 0 0.075 1.05 0 0.1 1.05 0 0.125 1.05 0 - 0.15 1.05 0 0.175 1.05 0 0.2 1.05 0 0.225 1.05 0 - 0.25 1.05 0 0.275 1.05 0 0.3 1.05 0 0.325 1.05 0 - 0.35 1.05 0 0.375 1.05 0 0.4 1.05 0 0.425 1.05 0 - 0.45 1.05 0 0.475 1.05 0 0.5 1.05 0 0.525 1.05 0 - 0.55 1.05 0 0.575 1.05 0 0.6 1.05 0 0.625 1.05 0 - 0.65 1.05 0 0.675 1.05 0 0.7 1.05 0 0.725 1.05 0 - 0.75 1.05 0 0.775 1.05 0 0.8 1.05 0 0.825 1.05 0 - 0.85 1.05 0 0.875 1.05 0 0.9 1.05 0 0.925 1.05 0 - 0.95 1.05 0 0.975 1.05 0 1 1.05 0 0 1.075 0 - 0.025 1.075 0 0.05 1.075 0 0.075 1.075 0 0.1 1.075 0 - 0.125 1.075 0 0.15 1.075 0 0.175 1.075 0 0.2 1.075 0 - 0.225 1.075 0 0.25 1.075 0 0.275 1.075 0 0.3 1.075 0 - 0.325 1.075 0 0.35 1.075 0 0.375 1.075 0 0.4 1.075 0 - 0.425 1.075 0 0.45 1.075 0 0.475 1.075 0 0.5 1.075 0 - 0.525 1.075 0 0.55 1.075 0 0.575 1.075 0 0.6 1.075 0 - 0.625 1.075 0 0.65 1.075 0 0.675 1.075 0 0.7 1.075 0 - 0.725 1.075 0 0.75 1.075 0 0.775 1.075 0 0.8 1.075 0 - 0.825 1.075 0 0.85 1.075 0 0.875 1.075 0 0.9 1.075 0 - 0.925 1.075 0 0.95 1.075 0 0.975 1.075 0 1 1.075 0 - 0 1.1 0 0.025 1.1 0 0.05 1.1 0 0.075 1.1 0 - 0.1 1.1 0 0.125 1.1 0 0.15 1.1 0 0.175 1.1 0 - 0.2 1.1 0 0.225 1.1 0 0.25 1.1 0 0.275 1.1 0 - 0.3 1.1 0 0.325 1.1 0 0.35 1.1 0 0.375 1.1 0 - 0.4 1.1 0 0.425 1.1 0 0.45 1.1 0 0.475 1.1 0 - 0.5 1.1 0 0.525 1.1 0 0.55 1.1 0 0.575 1.1 0 - 0.6 1.1 0 0.625 1.1 0 0.65 1.1 0 0.675 1.1 0 - 0.7 1.1 0 0.725 1.1 0 0.75 1.1 0 0.775 1.1 0 - 0.8 1.1 0 0.825 1.1 0 0.85 1.1 0 0.875 1.1 0 - 0.9 1.1 0 0.925 1.1 0 0.95 1.1 0 0.975 1.1 0 - 1 1.1 0 0 1.125 0 0.025 1.125 0 0.05 1.125 0 - 0.075 1.125 0 0.1 1.125 0 0.125 1.125 0 0.15 1.125 0 - 0.175 1.125 0 0.2 1.125 0 0.225 1.125 0 0.25 1.125 0 - 0.275 1.125 0 0.3 1.125 0 0.325 1.125 0 0.35 1.125 0 - 0.375 1.125 0 0.4 1.125 0 0.425 1.125 0 0.45 1.125 0 - 0.475 1.125 0 0.5 1.125 0 0.525 1.125 0 0.55 1.125 0 - 0.575 1.125 0 0.6 1.125 0 0.625 1.125 0 0.65 1.125 0 - 0.675 1.125 0 0.7 1.125 0 0.725 1.125 0 0.75 1.125 0 - 0.775 1.125 0 0.8 1.125 0 0.825 1.125 0 0.85 1.125 0 - 0.875 1.125 0 0.9 1.125 0 0.925 1.125 0 0.95 1.125 0 - 0.975 1.125 0 1 1.125 0 0 1.15 0 0.025 1.15 0 - 0.05 1.15 0 0.075 1.15 0 0.1 1.15 0 0.125 1.15 0 - 0.15 1.15 0 0.175 1.15 0 0.2 1.15 0 0.225 1.15 0 - 0.25 1.15 0 0.275 1.15 0 0.3 1.15 0 0.325 1.15 0 - 0.35 1.15 0 0.375 1.15 0 0.4 1.15 0 0.425 1.15 0 - 0.45 1.15 0 0.475 1.15 0 0.5 1.15 0 0.525 1.15 0 - 0.55 1.15 0 0.575 1.15 0 0.6 1.15 0 0.625 1.15 0 - 0.65 1.15 0 0.675 1.15 0 0.7 1.15 0 0.725 1.15 0 - 0.75 1.15 0 0.775 1.15 0 0.8 1.15 0 0.825 1.15 0 - 0.85 1.15 0 0.875 1.15 0 0.9 1.15 0 0.925 1.15 0 - 0.95 1.15 0 0.975 1.15 0 1 1.15 0 0 1.175 0 - 0.025 1.175 0 0.05 1.175 0 0.075 1.175 0 0.1 1.175 0 - 0.125 1.175 0 0.15 1.175 0 0.175 1.175 0 0.2 1.175 0 - 0.225 1.175 0 0.25 1.175 0 0.275 1.175 0 0.3 1.175 0 - 0.325 1.175 0 0.35 1.175 0 0.375 1.175 0 0.4 1.175 0 - 0.425 1.175 0 0.45 1.175 0 0.475 1.175 0 0.5 1.175 0 - 0.525 1.175 0 0.55 1.175 0 0.575 1.175 0 0.6 1.175 0 - 0.625 1.175 0 0.65 1.175 0 0.675 1.175 0 0.7 1.175 0 - 0.725 1.175 0 0.75 1.175 0 0.775 1.175 0 0.8 1.175 0 - 0.825 1.175 0 0.85 1.175 0 0.875 1.175 0 0.9 1.175 0 - 0.925 1.175 0 0.95 1.175 0 0.975 1.175 0 1 1.175 0 - 0 1.2 0 0.025 1.2 0 0.05 1.2 0 0.075 1.2 0 - 0.1 1.2 0 0.125 1.2 0 0.15 1.2 0 0.175 1.2 0 - 0.2 1.2 0 0.225 1.2 0 0.25 1.2 0 0.275 1.2 0 - 0.3 1.2 0 0.325 1.2 0 0.35 1.2 0 0.375 1.2 0 - 0.4 1.2 0 0.425 1.2 0 0.45 1.2 0 0.475 1.2 0 - 0.5 1.2 0 0.525 1.2 0 0.55 1.2 0 0.575 1.2 0 - 0.6 1.2 0 0.625 1.2 0 0.65 1.2 0 0.675 1.2 0 - 0.7 1.2 0 0.725 1.2 0 0.75 1.2 0 0.775 1.2 0 - 0.8 1.2 0 0.825 1.2 0 0.85 1.2 0 0.875 1.2 0 - 0.9 1.2 0 0.925 1.2 0 0.95 1.2 0 0.975 1.2 0 - 1 1.2 0 0 1.225 0 0.025 1.225 0 0.05 1.225 0 - 0.075 1.225 0 0.1 1.225 0 0.125 1.225 0 0.15 1.225 0 - 0.175 1.225 0 0.2 1.225 0 0.225 1.225 0 0.25 1.225 0 - 0.275 1.225 0 0.3 1.225 0 0.325 1.225 0 0.35 1.225 0 - 0.375 1.225 0 0.4 1.225 0 0.425 1.225 0 0.45 1.225 0 - 0.475 1.225 0 0.5 1.225 0 0.525 1.225 0 0.55 1.225 0 - 0.575 1.225 0 0.6 1.225 0 0.625 1.225 0 0.65 1.225 0 - 0.675 1.225 0 0.7 1.225 0 0.725 1.225 0 0.75 1.225 0 - 0.775 1.225 0 0.8 1.225 0 0.825 1.225 0 0.85 1.225 0 - 0.875 1.225 0 0.9 1.225 0 0.925 1.225 0 0.95 1.225 0 - 0.975 1.225 0 1 1.225 0 0 1.25 0 0.025 1.25 0 - 0.05 1.25 0 0.075 1.25 0 0.1 1.25 0 0.125 1.25 0 - 0.15 1.25 0 0.175 1.25 0 0.2 1.25 0 0.225 1.25 0 - 0.25 1.25 0 0.275 1.25 0 0.3 1.25 0 0.325 1.25 0 - 0.35 1.25 0 0.375 1.25 0 0.4 1.25 0 0.425 1.25 0 - 0.45 1.25 0 0.475 1.25 0 0.5 1.25 0 0.525 1.25 0 - 0.55 1.25 0 0.575 1.25 0 0.6 1.25 0 0.625 1.25 0 - 0.65 1.25 0 0.675 1.25 0 0.7 1.25 0 0.725 1.25 0 - 0.75 1.25 0 0.775 1.25 0 0.8 1.25 0 0.825 1.25 0 - 0.85 1.25 0 0.875 1.25 0 0.9 1.25 0 0.925 1.25 0 - 0.95 1.25 0 0.975 1.25 0 1 1.25 0 0 1.275 0 - 0.025 1.275 0 0.05 1.275 0 0.075 1.275 0 0.1 1.275 0 - 0.125 1.275 0 0.15 1.275 0 0.175 1.275 0 0.2 1.275 0 - 0.225 1.275 0 0.25 1.275 0 0.275 1.275 0 0.3 1.275 0 - 0.325 1.275 0 0.35 1.275 0 0.375 1.275 0 0.4 1.275 0 - 0.425 1.275 0 0.45 1.275 0 0.475 1.275 0 0.5 1.275 0 - 0.525 1.275 0 0.55 1.275 0 0.575 1.275 0 0.6 1.275 0 - 0.625 1.275 0 0.65 1.275 0 0.675 1.275 0 0.7 1.275 0 - 0.725 1.275 0 0.75 1.275 0 0.775 1.275 0 0.8 1.275 0 - 0.825 1.275 0 0.85 1.275 0 0.875 1.275 0 0.9 1.275 0 - 0.925 1.275 0 0.95 1.275 0 0.975 1.275 0 1 1.275 0 - 0 1.3 0 0.025 1.3 0 0.05 1.3 0 0.075 1.3 0 - 0.1 1.3 0 0.125 1.3 0 0.15 1.3 0 0.175 1.3 0 - 0.2 1.3 0 0.225 1.3 0 0.25 1.3 0 0.275 1.3 0 - 0.3 1.3 0 0.325 1.3 0 0.35 1.3 0 0.375 1.3 0 - 0.4 1.3 0 0.425 1.3 0 0.45 1.3 0 0.475 1.3 0 - 0.5 1.3 0 0.525 1.3 0 0.55 1.3 0 0.575 1.3 0 - 0.6 1.3 0 0.625 1.3 0 0.65 1.3 0 0.675 1.3 0 - 0.7 1.3 0 0.725 1.3 0 0.75 1.3 0 0.775 1.3 0 - 0.8 1.3 0 0.825 1.3 0 0.85 1.3 0 0.875 1.3 0 - 0.9 1.3 0 0.925 1.3 0 0.95 1.3 0 0.975 1.3 0 - 1 1.3 0 0 1.325 0 0.025 1.325 0 0.05 1.325 0 - 0.075 1.325 0 0.1 1.325 0 0.125 1.325 0 0.15 1.325 0 - 0.175 1.325 0 0.2 1.325 0 0.225 1.325 0 0.25 1.325 0 - 0.275 1.325 0 0.3 1.325 0 0.325 1.325 0 0.35 1.325 0 - 0.375 1.325 0 0.4 1.325 0 0.425 1.325 0 0.45 1.325 0 - 0.475 1.325 0 0.5 1.325 0 0.525 1.325 0 0.55 1.325 0 - 0.575 1.325 0 0.6 1.325 0 0.625 1.325 0 0.65 1.325 0 - 0.675 1.325 0 0.7 1.325 0 0.725 1.325 0 0.75 1.325 0 - 0.775 1.325 0 0.8 1.325 0 0.825 1.325 0 0.85 1.325 0 - 0.875 1.325 0 0.9 1.325 0 0.925 1.325 0 0.95 1.325 0 - 0.975 1.325 0 1 1.325 0 0 1.35 0 0.025 1.35 0 - 0.05 1.35 0 0.075 1.35 0 0.1 1.35 0 0.125 1.35 0 - 0.15 1.35 0 0.175 1.35 0 0.2 1.35 0 0.225 1.35 0 - 0.25 1.35 0 0.275 1.35 0 0.3 1.35 0 0.325 1.35 0 - 0.35 1.35 0 0.375 1.35 0 0.4 1.35 0 0.425 1.35 0 - 0.45 1.35 0 0.475 1.35 0 0.5 1.35 0 0.525 1.35 0 - 0.55 1.35 0 0.575 1.35 0 0.6 1.35 0 0.625 1.35 0 - 0.65 1.35 0 0.675 1.35 0 0.7 1.35 0 0.725 1.35 0 - 0.75 1.35 0 0.775 1.35 0 0.8 1.35 0 0.825 1.35 0 - 0.85 1.35 0 0.875 1.35 0 0.9 1.35 0 0.925 1.35 0 - 0.95 1.35 0 0.975 1.35 0 1 1.35 0 0 1.375 0 - 0.025 1.375 0 0.05 1.375 0 0.075 1.375 0 0.1 1.375 0 - 0.125 1.375 0 0.15 1.375 0 0.175 1.375 0 0.2 1.375 0 - 0.225 1.375 0 0.25 1.375 0 0.275 1.375 0 0.3 1.375 0 - 0.325 1.375 0 0.35 1.375 0 0.375 1.375 0 0.4 1.375 0 - 0.425 1.375 0 0.45 1.375 0 0.475 1.375 0 0.5 1.375 0 - 0.525 1.375 0 0.55 1.375 0 0.575 1.375 0 0.6 1.375 0 - 0.625 1.375 0 0.65 1.375 0 0.675 1.375 0 0.7 1.375 0 - 0.725 1.375 0 0.75 1.375 0 0.775 1.375 0 0.8 1.375 0 - 0.825 1.375 0 0.85 1.375 0 0.875 1.375 0 0.9 1.375 0 - 0.925 1.375 0 0.95 1.375 0 0.975 1.375 0 1 1.375 0 - 0 1.4 0 0.025 1.4 0 0.05 1.4 0 0.075 1.4 0 - 0.1 1.4 0 0.125 1.4 0 0.15 1.4 0 0.175 1.4 0 - 0.2 1.4 0 0.225 1.4 0 0.25 1.4 0 0.275 1.4 0 - 0.3 1.4 0 0.325 1.4 0 0.35 1.4 0 0.375 1.4 0 - 0.4 1.4 0 0.425 1.4 0 0.45 1.4 0 0.475 1.4 0 - 0.5 1.4 0 0.525 1.4 0 0.55 1.4 0 0.575 1.4 0 - 0.6 1.4 0 0.625 1.4 0 0.65 1.4 0 0.675 1.4 0 - 0.7 1.4 0 0.725 1.4 0 0.75 1.4 0 0.775 1.4 0 - 0.8 1.4 0 0.825 1.4 0 0.85 1.4 0 0.875 1.4 0 - 0.9 1.4 0 0.925 1.4 0 0.95 1.4 0 0.975 1.4 0 - 1 1.4 0 0 1.425 0 0.025 1.425 0 0.05 1.425 0 - 0.075 1.425 0 0.1 1.425 0 0.125 1.425 0 0.15 1.425 0 - 0.175 1.425 0 0.2 1.425 0 0.225 1.425 0 0.25 1.425 0 - 0.275 1.425 0 0.3 1.425 0 0.325 1.425 0 0.35 1.425 0 - 0.375 1.425 0 0.4 1.425 0 0.425 1.425 0 0.45 1.425 0 - 0.475 1.425 0 0.5 1.425 0 0.525 1.425 0 0.55 1.425 0 - 0.575 1.425 0 0.6 1.425 0 0.625 1.425 0 0.65 1.425 0 - 0.675 1.425 0 0.7 1.425 0 0.725 1.425 0 0.75 1.425 0 - 0.775 1.425 0 0.8 1.425 0 0.825 1.425 0 0.85 1.425 0 - 0.875 1.425 0 0.9 1.425 0 0.925 1.425 0 0.95 1.425 0 - 0.975 1.425 0 1 1.425 0 0 1.45 0 0.025 1.45 0 - 0.05 1.45 0 0.075 1.45 0 0.1 1.45 0 0.125 1.45 0 - 0.15 1.45 0 0.175 1.45 0 0.2 1.45 0 0.225 1.45 0 - 0.25 1.45 0 0.275 1.45 0 0.3 1.45 0 0.325 1.45 0 - 0.35 1.45 0 0.375 1.45 0 0.4 1.45 0 0.425 1.45 0 - 0.45 1.45 0 0.475 1.45 0 0.5 1.45 0 0.525 1.45 0 - 0.55 1.45 0 0.575 1.45 0 0.6 1.45 0 0.625 1.45 0 - 0.65 1.45 0 0.675 1.45 0 0.7 1.45 0 0.725 1.45 0 - 0.75 1.45 0 0.775 1.45 0 0.8 1.45 0 0.825 1.45 0 - 0.85 1.45 0 0.875 1.45 0 0.9 1.45 0 0.925 1.45 0 - 0.95 1.45 0 0.975 1.45 0 1 1.45 0 0 1.475 0 - 0.025 1.475 0 0.05 1.475 0 0.075 1.475 0 0.1 1.475 0 - 0.125 1.475 0 0.15 1.475 0 0.175 1.475 0 0.2 1.475 0 - 0.225 1.475 0 0.25 1.475 0 0.275 1.475 0 0.3 1.475 0 - 0.325 1.475 0 0.35 1.475 0 0.375 1.475 0 0.4 1.475 0 - 0.425 1.475 0 0.45 1.475 0 0.475 1.475 0 0.5 1.475 0 - 0.525 1.475 0 0.55 1.475 0 0.575 1.475 0 0.6 1.475 0 - 0.625 1.475 0 0.65 1.475 0 0.675 1.475 0 0.7 1.475 0 - 0.725 1.475 0 0.75 1.475 0 0.775 1.475 0 0.8 1.475 0 - 0.825 1.475 0 0.85 1.475 0 0.875 1.475 0 0.9 1.475 0 - 0.925 1.475 0 0.95 1.475 0 0.975 1.475 0 1 1.475 0 - 0 1.5 0 0.025 1.5 0 0.05 1.5 0 0.075 1.5 0 - 0.1 1.5 0 0.125 1.5 0 0.15 1.5 0 0.175 1.5 0 - 0.2 1.5 0 0.225 1.5 0 0.25 1.5 0 0.275 1.5 0 - 0.3 1.5 0 0.325 1.5 0 0.35 1.5 0 0.375 1.5 0 - 0.4 1.5 0 0.425 1.5 0 0.45 1.5 0 0.475 1.5 0 - 0.5 1.5 0 0.525 1.5 0 0.55 1.5 0 0.575 1.5 0 - 0.6 1.5 0 0.625 1.5 0 0.65 1.5 0 0.675 1.5 0 - 0.7 1.5 0 0.725 1.5 0 0.75 1.5 0 0.775 1.5 0 - 0.8 1.5 0 0.825 1.5 0 0.85 1.5 0 0.875 1.5 0 - 0.9 1.5 0 0.925 1.5 0 0.95 1.5 0 0.975 1.5 0 - 1 1.5 0 0 1.525 0 0.025 1.525 0 0.05 1.525 0 - 0.075 1.525 0 0.1 1.525 0 0.125 1.525 0 0.15 1.525 0 - 0.175 1.525 0 0.2 1.525 0 0.225 1.525 0 0.25 1.525 0 - 0.275 1.525 0 0.3 1.525 0 0.325 1.525 0 0.35 1.525 0 - 0.375 1.525 0 0.4 1.525 0 0.425 1.525 0 0.45 1.525 0 - 0.475 1.525 0 0.5 1.525 0 0.525 1.525 0 0.55 1.525 0 - 0.575 1.525 0 0.6 1.525 0 0.625 1.525 0 0.65 1.525 0 - 0.675 1.525 0 0.7 1.525 0 0.725 1.525 0 0.75 1.525 0 - 0.775 1.525 0 0.8 1.525 0 0.825 1.525 0 0.85 1.525 0 - 0.875 1.525 0 0.9 1.525 0 0.925 1.525 0 0.95 1.525 0 - 0.975 1.525 0 1 1.525 0 0 1.55 0 0.025 1.55 0 - 0.05 1.55 0 0.075 1.55 0 0.1 1.55 0 0.125 1.55 0 - 0.15 1.55 0 0.175 1.55 0 0.2 1.55 0 0.225 1.55 0 - 0.25 1.55 0 0.275 1.55 0 0.3 1.55 0 0.325 1.55 0 - 0.35 1.55 0 0.375 1.55 0 0.4 1.55 0 0.425 1.55 0 - 0.45 1.55 0 0.475 1.55 0 0.5 1.55 0 0.525 1.55 0 - 0.55 1.55 0 0.575 1.55 0 0.6 1.55 0 0.625 1.55 0 - 0.65 1.55 0 0.675 1.55 0 0.7 1.55 0 0.725 1.55 0 - 0.75 1.55 0 0.775 1.55 0 0.8 1.55 0 0.825 1.55 0 - 0.85 1.55 0 0.875 1.55 0 0.9 1.55 0 0.925 1.55 0 - 0.95 1.55 0 0.975 1.55 0 1 1.55 0 0 1.575 0 - 0.025 1.575 0 0.05 1.575 0 0.075 1.575 0 0.1 1.575 0 - 0.125 1.575 0 0.15 1.575 0 0.175 1.575 0 0.2 1.575 0 - 0.225 1.575 0 0.25 1.575 0 0.275 1.575 0 0.3 1.575 0 - 0.325 1.575 0 0.35 1.575 0 0.375 1.575 0 0.4 1.575 0 - 0.425 1.575 0 0.45 1.575 0 0.475 1.575 0 0.5 1.575 0 - 0.525 1.575 0 0.55 1.575 0 0.575 1.575 0 0.6 1.575 0 - 0.625 1.575 0 0.65 1.575 0 0.675 1.575 0 0.7 1.575 0 - 0.725 1.575 0 0.75 1.575 0 0.775 1.575 0 0.8 1.575 0 - 0.825 1.575 0 0.85 1.575 0 0.875 1.575 0 0.9 1.575 0 - 0.925 1.575 0 0.95 1.575 0 0.975 1.575 0 1 1.575 0 - 0 1.6 0 0.025 1.6 0 0.05 1.6 0 0.075 1.6 0 - 0.1 1.6 0 0.125 1.6 0 0.15 1.6 0 0.175 1.6 0 - 0.2 1.6 0 0.225 1.6 0 0.25 1.6 0 0.275 1.6 0 - 0.3 1.6 0 0.325 1.6 0 0.35 1.6 0 0.375 1.6 0 - 0.4 1.6 0 0.425 1.6 0 0.45 1.6 0 0.475 1.6 0 - 0.5 1.6 0 0.525 1.6 0 0.55 1.6 0 0.575 1.6 0 - 0.6 1.6 0 0.625 1.6 0 0.65 1.6 0 0.675 1.6 0 - 0.7 1.6 0 0.725 1.6 0 0.75 1.6 0 0.775 1.6 0 - 0.8 1.6 0 0.825 1.6 0 0.85 1.6 0 0.875 1.6 0 - 0.9 1.6 0 0.925 1.6 0 0.95 1.6 0 0.975 1.6 0 - 1 1.6 0 0 1.625 0 0.025 1.625 0 0.05 1.625 0 - 0.075 1.625 0 0.1 1.625 0 0.125 1.625 0 0.15 1.625 0 - 0.175 1.625 0 0.2 1.625 0 0.225 1.625 0 0.25 1.625 0 - 0.275 1.625 0 0.3 1.625 0 0.325 1.625 0 0.35 1.625 0 - 0.375 1.625 0 0.4 1.625 0 0.425 1.625 0 0.45 1.625 0 - 0.475 1.625 0 0.5 1.625 0 0.525 1.625 0 0.55 1.625 0 - 0.575 1.625 0 0.6 1.625 0 0.625 1.625 0 0.65 1.625 0 - 0.675 1.625 0 0.7 1.625 0 0.725 1.625 0 0.75 1.625 0 - 0.775 1.625 0 0.8 1.625 0 0.825 1.625 0 0.85 1.625 0 - 0.875 1.625 0 0.9 1.625 0 0.925 1.625 0 0.95 1.625 0 - 0.975 1.625 0 1 1.625 0 0 1.65 0 0.025 1.65 0 - 0.05 1.65 0 0.075 1.65 0 0.1 1.65 0 0.125 1.65 0 - 0.15 1.65 0 0.175 1.65 0 0.2 1.65 0 0.225 1.65 0 - 0.25 1.65 0 0.275 1.65 0 0.3 1.65 0 0.325 1.65 0 - 0.35 1.65 0 0.375 1.65 0 0.4 1.65 0 0.425 1.65 0 - 0.45 1.65 0 0.475 1.65 0 0.5 1.65 0 0.525 1.65 0 - 0.55 1.65 0 0.575 1.65 0 0.6 1.65 0 0.625 1.65 0 - 0.65 1.65 0 0.675 1.65 0 0.7 1.65 0 0.725 1.65 0 - 0.75 1.65 0 0.775 1.65 0 0.8 1.65 0 0.825 1.65 0 - 0.85 1.65 0 0.875 1.65 0 0.9 1.65 0 0.925 1.65 0 - 0.95 1.65 0 0.975 1.65 0 1 1.65 0 0 1.675 0 - 0.025 1.675 0 0.05 1.675 0 0.075 1.675 0 0.1 1.675 0 - 0.125 1.675 0 0.15 1.675 0 0.175 1.675 0 0.2 1.675 0 - 0.225 1.675 0 0.25 1.675 0 0.275 1.675 0 0.3 1.675 0 - 0.325 1.675 0 0.35 1.675 0 0.375 1.675 0 0.4 1.675 0 - 0.425 1.675 0 0.45 1.675 0 0.475 1.675 0 0.5 1.675 0 - 0.525 1.675 0 0.55 1.675 0 0.575 1.675 0 0.6 1.675 0 - 0.625 1.675 0 0.65 1.675 0 0.675 1.675 0 0.7 1.675 0 - 0.725 1.675 0 0.75 1.675 0 0.775 1.675 0 0.8 1.675 0 - 0.825 1.675 0 0.85 1.675 0 0.875 1.675 0 0.9 1.675 0 - 0.925 1.675 0 0.95 1.675 0 0.975 1.675 0 1 1.675 0 - 0 1.7 0 0.025 1.7 0 0.05 1.7 0 0.075 1.7 0 - 0.1 1.7 0 0.125 1.7 0 0.15 1.7 0 0.175 1.7 0 - 0.2 1.7 0 0.225 1.7 0 0.25 1.7 0 0.275 1.7 0 - 0.3 1.7 0 0.325 1.7 0 0.35 1.7 0 0.375 1.7 0 - 0.4 1.7 0 0.425 1.7 0 0.45 1.7 0 0.475 1.7 0 - 0.5 1.7 0 0.525 1.7 0 0.55 1.7 0 0.575 1.7 0 - 0.6 1.7 0 0.625 1.7 0 0.65 1.7 0 0.675 1.7 0 - 0.7 1.7 0 0.725 1.7 0 0.75 1.7 0 0.775 1.7 0 - 0.8 1.7 0 0.825 1.7 0 0.85 1.7 0 0.875 1.7 0 - 0.9 1.7 0 0.925 1.7 0 0.95 1.7 0 0.975 1.7 0 - 1 1.7 0 0 1.725 0 0.025 1.725 0 0.05 1.725 0 - 0.075 1.725 0 0.1 1.725 0 0.125 1.725 0 0.15 1.725 0 - 0.175 1.725 0 0.2 1.725 0 0.225 1.725 0 0.25 1.725 0 - 0.275 1.725 0 0.3 1.725 0 0.325 1.725 0 0.35 1.725 0 - 0.375 1.725 0 0.4 1.725 0 0.425 1.725 0 0.45 1.725 0 - 0.475 1.725 0 0.5 1.725 0 0.525 1.725 0 0.55 1.725 0 - 0.575 1.725 0 0.6 1.725 0 0.625 1.725 0 0.65 1.725 0 - 0.675 1.725 0 0.7 1.725 0 0.725 1.725 0 0.75 1.725 0 - 0.775 1.725 0 0.8 1.725 0 0.825 1.725 0 0.85 1.725 0 - 0.875 1.725 0 0.9 1.725 0 0.925 1.725 0 0.95 1.725 0 - 0.975 1.725 0 1 1.725 0 0 1.75 0 0.025 1.75 0 - 0.05 1.75 0 0.075 1.75 0 0.1 1.75 0 0.125 1.75 0 - 0.15 1.75 0 0.175 1.75 0 0.2 1.75 0 0.225 1.75 0 - 0.25 1.75 0 0.275 1.75 0 0.3 1.75 0 0.325 1.75 0 - 0.35 1.75 0 0.375 1.75 0 0.4 1.75 0 0.425 1.75 0 - 0.45 1.75 0 0.475 1.75 0 0.5 1.75 0 0.525 1.75 0 - 0.55 1.75 0 0.575 1.75 0 0.6 1.75 0 0.625 1.75 0 - 0.65 1.75 0 0.675 1.75 0 0.7 1.75 0 0.725 1.75 0 - 0.75 1.75 0 0.775 1.75 0 0.8 1.75 0 0.825 1.75 0 - 0.85 1.75 0 0.875 1.75 0 0.9 1.75 0 0.925 1.75 0 - 0.95 1.75 0 0.975 1.75 0 1 1.75 0 0 1.775 0 - 0.025 1.775 0 0.05 1.775 0 0.075 1.775 0 0.1 1.775 0 - 0.125 1.775 0 0.15 1.775 0 0.175 1.775 0 0.2 1.775 0 - 0.225 1.775 0 0.25 1.775 0 0.275 1.775 0 0.3 1.775 0 - 0.325 1.775 0 0.35 1.775 0 0.375 1.775 0 0.4 1.775 0 - 0.425 1.775 0 0.45 1.775 0 0.475 1.775 0 0.5 1.775 0 - 0.525 1.775 0 0.55 1.775 0 0.575 1.775 0 0.6 1.775 0 - 0.625 1.775 0 0.65 1.775 0 0.675 1.775 0 0.7 1.775 0 - 0.725 1.775 0 0.75 1.775 0 0.775 1.775 0 0.8 1.775 0 - 0.825 1.775 0 0.85 1.775 0 0.875 1.775 0 0.9 1.775 0 - 0.925 1.775 0 0.95 1.775 0 0.975 1.775 0 1 1.775 0 - 0 1.8 0 0.025 1.8 0 0.05 1.8 0 0.075 1.8 0 - 0.1 1.8 0 0.125 1.8 0 0.15 1.8 0 0.175 1.8 0 - 0.2 1.8 0 0.225 1.8 0 0.25 1.8 0 0.275 1.8 0 - 0.3 1.8 0 0.325 1.8 0 0.35 1.8 0 0.375 1.8 0 - 0.4 1.8 0 0.425 1.8 0 0.45 1.8 0 0.475 1.8 0 - 0.5 1.8 0 0.525 1.8 0 0.55 1.8 0 0.575 1.8 0 - 0.6 1.8 0 0.625 1.8 0 0.65 1.8 0 0.675 1.8 0 - 0.7 1.8 0 0.725 1.8 0 0.75 1.8 0 0.775 1.8 0 - 0.8 1.8 0 0.825 1.8 0 0.85 1.8 0 0.875 1.8 0 - 0.9 1.8 0 0.925 1.8 0 0.95 1.8 0 0.975 1.8 0 - 1 1.8 0 0 1.825 0 0.025 1.825 0 0.05 1.825 0 - 0.075 1.825 0 0.1 1.825 0 0.125 1.825 0 0.15 1.825 0 - 0.175 1.825 0 0.2 1.825 0 0.225 1.825 0 0.25 1.825 0 - 0.275 1.825 0 0.3 1.825 0 0.325 1.825 0 0.35 1.825 0 - 0.375 1.825 0 0.4 1.825 0 0.425 1.825 0 0.45 1.825 0 - 0.475 1.825 0 0.5 1.825 0 0.525 1.825 0 0.55 1.825 0 - 0.575 1.825 0 0.6 1.825 0 0.625 1.825 0 0.65 1.825 0 - 0.675 1.825 0 0.7 1.825 0 0.725 1.825 0 0.75 1.825 0 - 0.775 1.825 0 0.8 1.825 0 0.825 1.825 0 0.85 1.825 0 - 0.875 1.825 0 0.9 1.825 0 0.925 1.825 0 0.95 1.825 0 - 0.975 1.825 0 1 1.825 0 0 1.85 0 0.025 1.85 0 - 0.05 1.85 0 0.075 1.85 0 0.1 1.85 0 0.125 1.85 0 - 0.15 1.85 0 0.175 1.85 0 0.2 1.85 0 0.225 1.85 0 - 0.25 1.85 0 0.275 1.85 0 0.3 1.85 0 0.325 1.85 0 - 0.35 1.85 0 0.375 1.85 0 0.4 1.85 0 0.425 1.85 0 - 0.45 1.85 0 0.475 1.85 0 0.5 1.85 0 0.525 1.85 0 - 0.55 1.85 0 0.575 1.85 0 0.6 1.85 0 0.625 1.85 0 - 0.65 1.85 0 0.675 1.85 0 0.7 1.85 0 0.725 1.85 0 - 0.75 1.85 0 0.775 1.85 0 0.8 1.85 0 0.825 1.85 0 - 0.85 1.85 0 0.875 1.85 0 0.9 1.85 0 0.925 1.85 0 - 0.95 1.85 0 0.975 1.85 0 1 1.85 0 0 1.875 0 - 0.025 1.875 0 0.05 1.875 0 0.075 1.875 0 0.1 1.875 0 - 0.125 1.875 0 0.15 1.875 0 0.175 1.875 0 0.2 1.875 0 - 0.225 1.875 0 0.25 1.875 0 0.275 1.875 0 0.3 1.875 0 - 0.325 1.875 0 0.35 1.875 0 0.375 1.875 0 0.4 1.875 0 - 0.425 1.875 0 0.45 1.875 0 0.475 1.875 0 0.5 1.875 0 - 0.525 1.875 0 0.55 1.875 0 0.575 1.875 0 0.6 1.875 0 - 0.625 1.875 0 0.65 1.875 0 0.675 1.875 0 0.7 1.875 0 - 0.725 1.875 0 0.75 1.875 0 0.775 1.875 0 0.8 1.875 0 - 0.825 1.875 0 0.85 1.875 0 0.875 1.875 0 0.9 1.875 0 - 0.925 1.875 0 0.95 1.875 0 0.975 1.875 0 1 1.875 0 - 0 1.9 0 0.025 1.9 0 0.05 1.9 0 0.075 1.9 0 - 0.1 1.9 0 0.125 1.9 0 0.15 1.9 0 0.175 1.9 0 - 0.2 1.9 0 0.225 1.9 0 0.25 1.9 0 0.275 1.9 0 - 0.3 1.9 0 0.325 1.9 0 0.35 1.9 0 0.375 1.9 0 - 0.4 1.9 0 0.425 1.9 0 0.45 1.9 0 0.475 1.9 0 - 0.5 1.9 0 0.525 1.9 0 0.55 1.9 0 0.575 1.9 0 - 0.6 1.9 0 0.625 1.9 0 0.65 1.9 0 0.675 1.9 0 - 0.7 1.9 0 0.725 1.9 0 0.75 1.9 0 0.775 1.9 0 - 0.8 1.9 0 0.825 1.9 0 0.85 1.9 0 0.875 1.9 0 - 0.9 1.9 0 0.925 1.9 0 0.95 1.9 0 0.975 1.9 0 - 1 1.9 0 0 1.925 0 0.025 1.925 0 0.05 1.925 0 - 0.075 1.925 0 0.1 1.925 0 0.125 1.925 0 0.15 1.925 0 - 0.175 1.925 0 0.2 1.925 0 0.225 1.925 0 0.25 1.925 0 - 0.275 1.925 0 0.3 1.925 0 0.325 1.925 0 0.35 1.925 0 - 0.375 1.925 0 0.4 1.925 0 0.425 1.925 0 0.45 1.925 0 - 0.475 1.925 0 0.5 1.925 0 0.525 1.925 0 0.55 1.925 0 - 0.575 1.925 0 0.6 1.925 0 0.625 1.925 0 0.65 1.925 0 - 0.675 1.925 0 0.7 1.925 0 0.725 1.925 0 0.75 1.925 0 - 0.775 1.925 0 0.8 1.925 0 0.825 1.925 0 0.85 1.925 0 - 0.875 1.925 0 0.9 1.925 0 0.925 1.925 0 0.95 1.925 0 - 0.975 1.925 0 1 1.925 0 0 1.95 0 0.025 1.95 0 - 0.05 1.95 0 0.075 1.95 0 0.1 1.95 0 0.125 1.95 0 - 0.15 1.95 0 0.175 1.95 0 0.2 1.95 0 0.225 1.95 0 - 0.25 1.95 0 0.275 1.95 0 0.3 1.95 0 0.325 1.95 0 - 0.35 1.95 0 0.375 1.95 0 0.4 1.95 0 0.425 1.95 0 - 0.45 1.95 0 0.475 1.95 0 0.5 1.95 0 0.525 1.95 0 - 0.55 1.95 0 0.575 1.95 0 0.6 1.95 0 0.625 1.95 0 - 0.65 1.95 0 0.675 1.95 0 0.7 1.95 0 0.725 1.95 0 - 0.75 1.95 0 0.775 1.95 0 0.8 1.95 0 0.825 1.95 0 - 0.85 1.95 0 0.875 1.95 0 0.9 1.95 0 0.925 1.95 0 - 0.95 1.95 0 0.975 1.95 0 1 1.95 0 0 1.975 0 - 0.025 1.975 0 0.05 1.975 0 0.075 1.975 0 0.1 1.975 0 - 0.125 1.975 0 0.15 1.975 0 0.175 1.975 0 0.2 1.975 0 - 0.225 1.975 0 0.25 1.975 0 0.275 1.975 0 0.3 1.975 0 - 0.325 1.975 0 0.35 1.975 0 0.375 1.975 0 0.4 1.975 0 - 0.425 1.975 0 0.45 1.975 0 0.475 1.975 0 0.5 1.975 0 - 0.525 1.975 0 0.55 1.975 0 0.575 1.975 0 0.6 1.975 0 - 0.625 1.975 0 0.65 1.975 0 0.675 1.975 0 0.7 1.975 0 - 0.725 1.975 0 0.75 1.975 0 0.775 1.975 0 0.8 1.975 0 - 0.825 1.975 0 0.85 1.975 0 0.875 1.975 0 0.9 1.975 0 - 0.925 1.975 0 0.95 1.975 0 0.975 1.975 0 1 1.975 0 - 0 2 0 0.025 2 0 0.05 2 0 0.075 2 0 - 0.1 2 0 0.125 2 0 0.15 2 0 0.175 2 0 - 0.2 2 0 0.225 2 0 0.25 2 0 0.275 2 0 - 0.3 2 0 0.325 2 0 0.35 2 0 0.375 2 0 - 0.4 2 0 0.425 2 0 0.45 2 0 0.475 2 0 - 0.5 2 0 0.525 2 0 0.55 2 0 0.575 2 0 - 0.6 2 0 0.625 2 0 0.65 2 0 0.675 2 0 - 0.7 2 0 0.725 2 0 0.75 2 0 0.775 2 0 - 0.8 2 0 0.825 2 0 0.85 2 0 0.875 2 0 - 0.9 2 0 0.925 2 0 0.95 2 0 0.975 2 0 - 1 2 0 - - - - - 0 1 3 2 1 4 5 3 4 6 7 5 - 6 8 9 7 8 10 11 9 10 12 13 11 - 12 14 15 13 14 16 17 15 16 18 19 17 - 18 20 21 19 20 22 23 21 22 24 25 23 - 24 26 27 25 26 28 29 27 28 30 31 29 - 30 32 33 31 32 34 35 33 34 36 37 35 - 36 38 39 37 38 40 41 39 40 42 43 41 - 42 44 45 43 44 46 47 45 46 48 49 47 - 48 50 51 49 50 52 53 51 52 54 55 53 - 54 56 57 55 56 58 59 57 58 60 61 59 - 60 62 63 61 62 64 65 63 64 66 67 65 - 66 68 69 67 68 70 71 69 70 72 73 71 - 72 74 75 73 74 76 77 75 76 78 79 77 - 78 80 81 79 2 3 83 82 3 5 84 83 - 5 7 85 84 7 9 86 85 9 11 87 86 - 11 13 88 87 13 15 89 88 15 17 90 89 - 17 19 91 90 19 21 92 91 21 23 93 92 - 23 25 94 93 25 27 95 94 27 29 96 95 - 29 31 97 96 31 33 98 97 33 35 99 98 - 35 37 100 99 37 39 101 100 39 41 102 101 - 41 43 103 102 43 45 104 103 45 47 105 104 - 47 49 106 105 49 51 107 106 51 53 108 107 - 53 55 109 108 55 57 110 109 57 59 111 110 - 59 61 112 111 61 63 113 112 63 65 114 113 - 65 67 115 114 67 69 116 115 69 71 117 116 - 71 73 118 117 73 75 119 118 75 77 120 119 - 77 79 121 120 79 81 122 121 82 83 124 123 - 83 84 125 124 84 85 126 125 85 86 127 126 - 86 87 128 127 87 88 129 128 88 89 130 129 - 89 90 131 130 90 91 132 131 91 92 133 132 - 92 93 134 133 93 94 135 134 94 95 136 135 - 95 96 137 136 96 97 138 137 97 98 139 138 - 98 99 140 139 99 100 141 140 100 101 142 141 - 101 102 143 142 102 103 144 143 103 104 145 144 - 104 105 146 145 105 106 147 146 106 107 148 147 - 107 108 149 148 108 109 150 149 109 110 151 150 - 110 111 152 151 111 112 153 152 112 113 154 153 - 113 114 155 154 114 115 156 155 115 116 157 156 - 116 117 158 157 117 118 159 158 118 119 160 159 - 119 120 161 160 120 121 162 161 121 122 163 162 - 123 124 165 164 124 125 166 165 125 126 167 166 - 126 127 168 167 127 128 169 168 128 129 170 169 - 129 130 171 170 130 131 172 171 131 132 173 172 - 132 133 174 173 133 134 175 174 134 135 176 175 - 135 136 177 176 136 137 178 177 137 138 179 178 - 138 139 180 179 139 140 181 180 140 141 182 181 - 141 142 183 182 142 143 184 183 143 144 185 184 - 144 145 186 185 145 146 187 186 146 147 188 187 - 147 148 189 188 148 149 190 189 149 150 191 190 - 150 151 192 191 151 152 193 192 152 153 194 193 - 153 154 195 194 154 155 196 195 155 156 197 196 - 156 157 198 197 157 158 199 198 158 159 200 199 - 159 160 201 200 160 161 202 201 161 162 203 202 - 162 163 204 203 164 165 206 205 165 166 207 206 - 166 167 208 207 167 168 209 208 168 169 210 209 - 169 170 211 210 170 171 212 211 171 172 213 212 - 172 173 214 213 173 174 215 214 174 175 216 215 - 175 176 217 216 176 177 218 217 177 178 219 218 - 178 179 220 219 179 180 221 220 180 181 222 221 - 181 182 223 222 182 183 224 223 183 184 225 224 - 184 185 226 225 185 186 227 226 186 187 228 227 - 187 188 229 228 188 189 230 229 189 190 231 230 - 190 191 232 231 191 192 233 232 192 193 234 233 - 193 194 235 234 194 195 236 235 195 196 237 236 - 196 197 238 237 197 198 239 238 198 199 240 239 - 199 200 241 240 200 201 242 241 201 202 243 242 - 202 203 244 243 203 204 245 244 205 206 247 246 - 206 207 248 247 207 208 249 248 208 209 250 249 - 209 210 251 250 210 211 252 251 211 212 253 252 - 212 213 254 253 213 214 255 254 214 215 256 255 - 215 216 257 256 216 217 258 257 217 218 259 258 - 218 219 260 259 219 220 261 260 220 221 262 261 - 221 222 263 262 222 223 264 263 223 224 265 264 - 224 225 266 265 225 226 267 266 226 227 268 267 - 227 228 269 268 228 229 270 269 229 230 271 270 - 230 231 272 271 231 232 273 272 232 233 274 273 - 233 234 275 274 234 235 276 275 235 236 277 276 - 236 237 278 277 237 238 279 278 238 239 280 279 - 239 240 281 280 240 241 282 281 241 242 283 282 - 242 243 284 283 243 244 285 284 244 245 286 285 - 246 247 288 287 247 248 289 288 248 249 290 289 - 249 250 291 290 250 251 292 291 251 252 293 292 - 252 253 294 293 253 254 295 294 254 255 296 295 - 255 256 297 296 256 257 298 297 257 258 299 298 - 258 259 300 299 259 260 301 300 260 261 302 301 - 261 262 303 302 262 263 304 303 263 264 305 304 - 264 265 306 305 265 266 307 306 266 267 308 307 - 267 268 309 308 268 269 310 309 269 270 311 310 - 270 271 312 311 271 272 313 312 272 273 314 313 - 273 274 315 314 274 275 316 315 275 276 317 316 - 276 277 318 317 277 278 319 318 278 279 320 319 - 279 280 321 320 280 281 322 321 281 282 323 322 - 282 283 324 323 283 284 325 324 284 285 326 325 - 285 286 327 326 287 288 329 328 288 289 330 329 - 289 290 331 330 290 291 332 331 291 292 333 332 - 292 293 334 333 293 294 335 334 294 295 336 335 - 295 296 337 336 296 297 338 337 297 298 339 338 - 298 299 340 339 299 300 341 340 300 301 342 341 - 301 302 343 342 302 303 344 343 303 304 345 344 - 304 305 346 345 305 306 347 346 306 307 348 347 - 307 308 349 348 308 309 350 349 309 310 351 350 - 310 311 352 351 311 312 353 352 312 313 354 353 - 313 314 355 354 314 315 356 355 315 316 357 356 - 316 317 358 357 317 318 359 358 318 319 360 359 - 319 320 361 360 320 321 362 361 321 322 363 362 - 322 323 364 363 323 324 365 364 324 325 366 365 - 325 326 367 366 326 327 368 367 328 329 370 369 - 329 330 371 370 330 331 372 371 331 332 373 372 - 332 333 374 373 333 334 375 374 334 335 376 375 - 335 336 377 376 336 337 378 377 337 338 379 378 - 338 339 380 379 339 340 381 380 340 341 382 381 - 341 342 383 382 342 343 384 383 343 344 385 384 - 344 345 386 385 345 346 387 386 346 347 388 387 - 347 348 389 388 348 349 390 389 349 350 391 390 - 350 351 392 391 351 352 393 392 352 353 394 393 - 353 354 395 394 354 355 396 395 355 356 397 396 - 356 357 398 397 357 358 399 398 358 359 400 399 - 359 360 401 400 360 361 402 401 361 362 403 402 - 362 363 404 403 363 364 405 404 364 365 406 405 - 365 366 407 406 366 367 408 407 367 368 409 408 - 369 370 411 410 370 371 412 411 371 372 413 412 - 372 373 414 413 373 374 415 414 374 375 416 415 - 375 376 417 416 376 377 418 417 377 378 419 418 - 378 379 420 419 379 380 421 420 380 381 422 421 - 381 382 423 422 382 383 424 423 383 384 425 424 - 384 385 426 425 385 386 427 426 386 387 428 427 - 387 388 429 428 388 389 430 429 389 390 431 430 - 390 391 432 431 391 392 433 432 392 393 434 433 - 393 394 435 434 394 395 436 435 395 396 437 436 - 396 397 438 437 397 398 439 438 398 399 440 439 - 399 400 441 440 400 401 442 441 401 402 443 442 - 402 403 444 443 403 404 445 444 404 405 446 445 - 405 406 447 446 406 407 448 447 407 408 449 448 - 408 409 450 449 410 411 452 451 411 412 453 452 - 412 413 454 453 413 414 455 454 414 415 456 455 - 415 416 457 456 416 417 458 457 417 418 459 458 - 418 419 460 459 419 420 461 460 420 421 462 461 - 421 422 463 462 422 423 464 463 423 424 465 464 - 424 425 466 465 425 426 467 466 426 427 468 467 - 427 428 469 468 428 429 470 469 429 430 471 470 - 430 431 472 471 431 432 473 472 432 433 474 473 - 433 434 475 474 434 435 476 475 435 436 477 476 - 436 437 478 477 437 438 479 478 438 439 480 479 - 439 440 481 480 440 441 482 481 441 442 483 482 - 442 443 484 483 443 444 485 484 444 445 486 485 - 445 446 487 486 446 447 488 487 447 448 489 488 - 448 449 490 489 449 450 491 490 451 452 493 492 - 452 453 494 493 453 454 495 494 454 455 496 495 - 455 456 497 496 456 457 498 497 457 458 499 498 - 458 459 500 499 459 460 501 500 460 461 502 501 - 461 462 503 502 462 463 504 503 463 464 505 504 - 464 465 506 505 465 466 507 506 466 467 508 507 - 467 468 509 508 468 469 510 509 469 470 511 510 - 470 471 512 511 471 472 513 512 472 473 514 513 - 473 474 515 514 474 475 516 515 475 476 517 516 - 476 477 518 517 477 478 519 518 478 479 520 519 - 479 480 521 520 480 481 522 521 481 482 523 522 - 482 483 524 523 483 484 525 524 484 485 526 525 - 485 486 527 526 486 487 528 527 487 488 529 528 - 488 489 530 529 489 490 531 530 490 491 532 531 - 492 493 534 533 493 494 535 534 494 495 536 535 - 495 496 537 536 496 497 538 537 497 498 539 538 - 498 499 540 539 499 500 541 540 500 501 542 541 - 501 502 543 542 502 503 544 543 503 504 545 544 - 504 505 546 545 505 506 547 546 506 507 548 547 - 507 508 549 548 508 509 550 549 509 510 551 550 - 510 511 552 551 511 512 553 552 512 513 554 553 - 513 514 555 554 514 515 556 555 515 516 557 556 - 516 517 558 557 517 518 559 558 518 519 560 559 - 519 520 561 560 520 521 562 561 521 522 563 562 - 522 523 564 563 523 524 565 564 524 525 566 565 - 525 526 567 566 526 527 568 567 527 528 569 568 - 528 529 570 569 529 530 571 570 530 531 572 571 - 531 532 573 572 533 534 575 574 534 535 576 575 - 535 536 577 576 536 537 578 577 537 538 579 578 - 538 539 580 579 539 540 581 580 540 541 582 581 - 541 542 583 582 542 543 584 583 543 544 585 584 - 544 545 586 585 545 546 587 586 546 547 588 587 - 547 548 589 588 548 549 590 589 549 550 591 590 - 550 551 592 591 551 552 593 592 552 553 594 593 - 553 554 595 594 554 555 596 595 555 556 597 596 - 556 557 598 597 557 558 599 598 558 559 600 599 - 559 560 601 600 560 561 602 601 561 562 603 602 - 562 563 604 603 563 564 605 604 564 565 606 605 - 565 566 607 606 566 567 608 607 567 568 609 608 - 568 569 610 609 569 570 611 610 570 571 612 611 - 571 572 613 612 572 573 614 613 574 575 616 615 - 575 576 617 616 576 577 618 617 577 578 619 618 - 578 579 620 619 579 580 621 620 580 581 622 621 - 581 582 623 622 582 583 624 623 583 584 625 624 - 584 585 626 625 585 586 627 626 586 587 628 627 - 587 588 629 628 588 589 630 629 589 590 631 630 - 590 591 632 631 591 592 633 632 592 593 634 633 - 593 594 635 634 594 595 636 635 595 596 637 636 - 596 597 638 637 597 598 639 638 598 599 640 639 - 599 600 641 640 600 601 642 641 601 602 643 642 - 602 603 644 643 603 604 645 644 604 605 646 645 - 605 606 647 646 606 607 648 647 607 608 649 648 - 608 609 650 649 609 610 651 650 610 611 652 651 - 611 612 653 652 612 613 654 653 613 614 655 654 - 615 616 657 656 616 617 658 657 617 618 659 658 - 618 619 660 659 619 620 661 660 620 621 662 661 - 621 622 663 662 622 623 664 663 623 624 665 664 - 624 625 666 665 625 626 667 666 626 627 668 667 - 627 628 669 668 628 629 670 669 629 630 671 670 - 630 631 672 671 631 632 673 672 632 633 674 673 - 633 634 675 674 634 635 676 675 635 636 677 676 - 636 637 678 677 637 638 679 678 638 639 680 679 - 639 640 681 680 640 641 682 681 641 642 683 682 - 642 643 684 683 643 644 685 684 644 645 686 685 - 645 646 687 686 646 647 688 687 647 648 689 688 - 648 649 690 689 649 650 691 690 650 651 692 691 - 651 652 693 692 652 653 694 693 653 654 695 694 - 654 655 696 695 656 657 698 697 657 658 699 698 - 658 659 700 699 659 660 701 700 660 661 702 701 - 661 662 703 702 662 663 704 703 663 664 705 704 - 664 665 706 705 665 666 707 706 666 667 708 707 - 667 668 709 708 668 669 710 709 669 670 711 710 - 670 671 712 711 671 672 713 712 672 673 714 713 - 673 674 715 714 674 675 716 715 675 676 717 716 - 676 677 718 717 677 678 719 718 678 679 720 719 - 679 680 721 720 680 681 722 721 681 682 723 722 - 682 683 724 723 683 684 725 724 684 685 726 725 - 685 686 727 726 686 687 728 727 687 688 729 728 - 688 689 730 729 689 690 731 730 690 691 732 731 - 691 692 733 732 692 693 734 733 693 694 735 734 - 694 695 736 735 695 696 737 736 697 698 739 738 - 698 699 740 739 699 700 741 740 700 701 742 741 - 701 702 743 742 702 703 744 743 703 704 745 744 - 704 705 746 745 705 706 747 746 706 707 748 747 - 707 708 749 748 708 709 750 749 709 710 751 750 - 710 711 752 751 711 712 753 752 712 713 754 753 - 713 714 755 754 714 715 756 755 715 716 757 756 - 716 717 758 757 717 718 759 758 718 719 760 759 - 719 720 761 760 720 721 762 761 721 722 763 762 - 722 723 764 763 723 724 765 764 724 725 766 765 - 725 726 767 766 726 727 768 767 727 728 769 768 - 728 729 770 769 729 730 771 770 730 731 772 771 - 731 732 773 772 732 733 774 773 733 734 775 774 - 734 735 776 775 735 736 777 776 736 737 778 777 - 738 739 780 779 739 740 781 780 740 741 782 781 - 741 742 783 782 742 743 784 783 743 744 785 784 - 744 745 786 785 745 746 787 786 746 747 788 787 - 747 748 789 788 748 749 790 789 749 750 791 790 - 750 751 792 791 751 752 793 792 752 753 794 793 - 753 754 795 794 754 755 796 795 755 756 797 796 - 756 757 798 797 757 758 799 798 758 759 800 799 - 759 760 801 800 760 761 802 801 761 762 803 802 - 762 763 804 803 763 764 805 804 764 765 806 805 - 765 766 807 806 766 767 808 807 767 768 809 808 - 768 769 810 809 769 770 811 810 770 771 812 811 - 771 772 813 812 772 773 814 813 773 774 815 814 - 774 775 816 815 775 776 817 816 776 777 818 817 - 777 778 819 818 779 780 821 820 780 781 822 821 - 781 782 823 822 782 783 824 823 783 784 825 824 - 784 785 826 825 785 786 827 826 786 787 828 827 - 787 788 829 828 788 789 830 829 789 790 831 830 - 790 791 832 831 791 792 833 832 792 793 834 833 - 793 794 835 834 794 795 836 835 795 796 837 836 - 796 797 838 837 797 798 839 838 798 799 840 839 - 799 800 841 840 800 801 842 841 801 802 843 842 - 802 803 844 843 803 804 845 844 804 805 846 845 - 805 806 847 846 806 807 848 847 807 808 849 848 - 808 809 850 849 809 810 851 850 810 811 852 851 - 811 812 853 852 812 813 854 853 813 814 855 854 - 814 815 856 855 815 816 857 856 816 817 858 857 - 817 818 859 858 818 819 860 859 820 821 862 861 - 821 822 863 862 822 823 864 863 823 824 865 864 - 824 825 866 865 825 826 867 866 826 827 868 867 - 827 828 869 868 828 829 870 869 829 830 871 870 - 830 831 872 871 831 832 873 872 832 833 874 873 - 833 834 875 874 834 835 876 875 835 836 877 876 - 836 837 878 877 837 838 879 878 838 839 880 879 - 839 840 881 880 840 841 882 881 841 842 883 882 - 842 843 884 883 843 844 885 884 844 845 886 885 - 845 846 887 886 846 847 888 887 847 848 889 888 - 848 849 890 889 849 850 891 890 850 851 892 891 - 851 852 893 892 852 853 894 893 853 854 895 894 - 854 855 896 895 855 856 897 896 856 857 898 897 - 857 858 899 898 858 859 900 899 859 860 901 900 - 861 862 903 902 862 863 904 903 863 864 905 904 - 864 865 906 905 865 866 907 906 866 867 908 907 - 867 868 909 908 868 869 910 909 869 870 911 910 - 870 871 912 911 871 872 913 912 872 873 914 913 - 873 874 915 914 874 875 916 915 875 876 917 916 - 876 877 918 917 877 878 919 918 878 879 920 919 - 879 880 921 920 880 881 922 921 881 882 923 922 - 882 883 924 923 883 884 925 924 884 885 926 925 - 885 886 927 926 886 887 928 927 887 888 929 928 - 888 889 930 929 889 890 931 930 890 891 932 931 - 891 892 933 932 892 893 934 933 893 894 935 934 - 894 895 936 935 895 896 937 936 896 897 938 937 - 897 898 939 938 898 899 940 939 899 900 941 940 - 900 901 942 941 902 903 944 943 903 904 945 944 - 904 905 946 945 905 906 947 946 906 907 948 947 - 907 908 949 948 908 909 950 949 909 910 951 950 - 910 911 952 951 911 912 953 952 912 913 954 953 - 913 914 955 954 914 915 956 955 915 916 957 956 - 916 917 958 957 917 918 959 958 918 919 960 959 - 919 920 961 960 920 921 962 961 921 922 963 962 - 922 923 964 963 923 924 965 964 924 925 966 965 - 925 926 967 966 926 927 968 967 927 928 969 968 - 928 929 970 969 929 930 971 970 930 931 972 971 - 931 932 973 972 932 933 974 973 933 934 975 974 - 934 935 976 975 935 936 977 976 936 937 978 977 - 937 938 979 978 938 939 980 979 939 940 981 980 - 940 941 982 981 941 942 983 982 943 944 985 984 - 944 945 986 985 945 946 987 986 946 947 988 987 - 947 948 989 988 948 949 990 989 949 950 991 990 - 950 951 992 991 951 952 993 992 952 953 994 993 - 953 954 995 994 954 955 996 995 955 956 997 996 - 956 957 998 997 957 958 999 998 958 959 1000 999 - 959 960 1001 1000 960 961 1002 1001 961 962 1003 1002 - 962 963 1004 1003 963 964 1005 1004 964 965 1006 1005 - 965 966 1007 1006 966 967 1008 1007 967 968 1009 1008 - 968 969 1010 1009 969 970 1011 1010 970 971 1012 1011 - 971 972 1013 1012 972 973 1014 1013 973 974 1015 1014 - 974 975 1016 1015 975 976 1017 1016 976 977 1018 1017 - 977 978 1019 1018 978 979 1020 1019 979 980 1021 1020 - 980 981 1022 1021 981 982 1023 1022 982 983 1024 1023 - 984 985 1026 1025 985 986 1027 1026 986 987 1028 1027 - 987 988 1029 1028 988 989 1030 1029 989 990 1031 1030 - 990 991 1032 1031 991 992 1033 1032 992 993 1034 1033 - 993 994 1035 1034 994 995 1036 1035 995 996 1037 1036 - 996 997 1038 1037 997 998 1039 1038 998 999 1040 1039 - 999 1000 1041 1040 1000 1001 1042 1041 1001 1002 1043 1042 - 1002 1003 1044 1043 1003 1004 1045 1044 1004 1005 1046 1045 - 1005 1006 1047 1046 1006 1007 1048 1047 1007 1008 1049 1048 - 1008 1009 1050 1049 1009 1010 1051 1050 1010 1011 1052 1051 - 1011 1012 1053 1052 1012 1013 1054 1053 1013 1014 1055 1054 - 1014 1015 1056 1055 1015 1016 1057 1056 1016 1017 1058 1057 - 1017 1018 1059 1058 1018 1019 1060 1059 1019 1020 1061 1060 - 1020 1021 1062 1061 1021 1022 1063 1062 1022 1023 1064 1063 - 1023 1024 1065 1064 1025 1026 1067 1066 1026 1027 1068 1067 - 1027 1028 1069 1068 1028 1029 1070 1069 1029 1030 1071 1070 - 1030 1031 1072 1071 1031 1032 1073 1072 1032 1033 1074 1073 - 1033 1034 1075 1074 1034 1035 1076 1075 1035 1036 1077 1076 - 1036 1037 1078 1077 1037 1038 1079 1078 1038 1039 1080 1079 - 1039 1040 1081 1080 1040 1041 1082 1081 1041 1042 1083 1082 - 1042 1043 1084 1083 1043 1044 1085 1084 1044 1045 1086 1085 - 1045 1046 1087 1086 1046 1047 1088 1087 1047 1048 1089 1088 - 1048 1049 1090 1089 1049 1050 1091 1090 1050 1051 1092 1091 - 1051 1052 1093 1092 1052 1053 1094 1093 1053 1054 1095 1094 - 1054 1055 1096 1095 1055 1056 1097 1096 1056 1057 1098 1097 - 1057 1058 1099 1098 1058 1059 1100 1099 1059 1060 1101 1100 - 1060 1061 1102 1101 1061 1062 1103 1102 1062 1063 1104 1103 - 1063 1064 1105 1104 1064 1065 1106 1105 1066 1067 1108 1107 - 1067 1068 1109 1108 1068 1069 1110 1109 1069 1070 1111 1110 - 1070 1071 1112 1111 1071 1072 1113 1112 1072 1073 1114 1113 - 1073 1074 1115 1114 1074 1075 1116 1115 1075 1076 1117 1116 - 1076 1077 1118 1117 1077 1078 1119 1118 1078 1079 1120 1119 - 1079 1080 1121 1120 1080 1081 1122 1121 1081 1082 1123 1122 - 1082 1083 1124 1123 1083 1084 1125 1124 1084 1085 1126 1125 - 1085 1086 1127 1126 1086 1087 1128 1127 1087 1088 1129 1128 - 1088 1089 1130 1129 1089 1090 1131 1130 1090 1091 1132 1131 - 1091 1092 1133 1132 1092 1093 1134 1133 1093 1094 1135 1134 - 1094 1095 1136 1135 1095 1096 1137 1136 1096 1097 1138 1137 - 1097 1098 1139 1138 1098 1099 1140 1139 1099 1100 1141 1140 - 1100 1101 1142 1141 1101 1102 1143 1142 1102 1103 1144 1143 - 1103 1104 1145 1144 1104 1105 1146 1145 1105 1106 1147 1146 - 1107 1108 1149 1148 1108 1109 1150 1149 1109 1110 1151 1150 - 1110 1111 1152 1151 1111 1112 1153 1152 1112 1113 1154 1153 - 1113 1114 1155 1154 1114 1115 1156 1155 1115 1116 1157 1156 - 1116 1117 1158 1157 1117 1118 1159 1158 1118 1119 1160 1159 - 1119 1120 1161 1160 1120 1121 1162 1161 1121 1122 1163 1162 - 1122 1123 1164 1163 1123 1124 1165 1164 1124 1125 1166 1165 - 1125 1126 1167 1166 1126 1127 1168 1167 1127 1128 1169 1168 - 1128 1129 1170 1169 1129 1130 1171 1170 1130 1131 1172 1171 - 1131 1132 1173 1172 1132 1133 1174 1173 1133 1134 1175 1174 - 1134 1135 1176 1175 1135 1136 1177 1176 1136 1137 1178 1177 - 1137 1138 1179 1178 1138 1139 1180 1179 1139 1140 1181 1180 - 1140 1141 1182 1181 1141 1142 1183 1182 1142 1143 1184 1183 - 1143 1144 1185 1184 1144 1145 1186 1185 1145 1146 1187 1186 - 1146 1147 1188 1187 1148 1149 1190 1189 1149 1150 1191 1190 - 1150 1151 1192 1191 1151 1152 1193 1192 1152 1153 1194 1193 - 1153 1154 1195 1194 1154 1155 1196 1195 1155 1156 1197 1196 - 1156 1157 1198 1197 1157 1158 1199 1198 1158 1159 1200 1199 - 1159 1160 1201 1200 1160 1161 1202 1201 1161 1162 1203 1202 - 1162 1163 1204 1203 1163 1164 1205 1204 1164 1165 1206 1205 - 1165 1166 1207 1206 1166 1167 1208 1207 1167 1168 1209 1208 - 1168 1169 1210 1209 1169 1170 1211 1210 1170 1171 1212 1211 - 1171 1172 1213 1212 1172 1173 1214 1213 1173 1174 1215 1214 - 1174 1175 1216 1215 1175 1176 1217 1216 1176 1177 1218 1217 - 1177 1178 1219 1218 1178 1179 1220 1219 1179 1180 1221 1220 - 1180 1181 1222 1221 1181 1182 1223 1222 1182 1183 1224 1223 - 1183 1184 1225 1224 1184 1185 1226 1225 1185 1186 1227 1226 - 1186 1187 1228 1227 1187 1188 1229 1228 1189 1190 1231 1230 - 1190 1191 1232 1231 1191 1192 1233 1232 1192 1193 1234 1233 - 1193 1194 1235 1234 1194 1195 1236 1235 1195 1196 1237 1236 - 1196 1197 1238 1237 1197 1198 1239 1238 1198 1199 1240 1239 - 1199 1200 1241 1240 1200 1201 1242 1241 1201 1202 1243 1242 - 1202 1203 1244 1243 1203 1204 1245 1244 1204 1205 1246 1245 - 1205 1206 1247 1246 1206 1207 1248 1247 1207 1208 1249 1248 - 1208 1209 1250 1249 1209 1210 1251 1250 1210 1211 1252 1251 - 1211 1212 1253 1252 1212 1213 1254 1253 1213 1214 1255 1254 - 1214 1215 1256 1255 1215 1216 1257 1256 1216 1217 1258 1257 - 1217 1218 1259 1258 1218 1219 1260 1259 1219 1220 1261 1260 - 1220 1221 1262 1261 1221 1222 1263 1262 1222 1223 1264 1263 - 1223 1224 1265 1264 1224 1225 1266 1265 1225 1226 1267 1266 - 1226 1227 1268 1267 1227 1228 1269 1268 1228 1229 1270 1269 - 1230 1231 1272 1271 1231 1232 1273 1272 1232 1233 1274 1273 - 1233 1234 1275 1274 1234 1235 1276 1275 1235 1236 1277 1276 - 1236 1237 1278 1277 1237 1238 1279 1278 1238 1239 1280 1279 - 1239 1240 1281 1280 1240 1241 1282 1281 1241 1242 1283 1282 - 1242 1243 1284 1283 1243 1244 1285 1284 1244 1245 1286 1285 - 1245 1246 1287 1286 1246 1247 1288 1287 1247 1248 1289 1288 - 1248 1249 1290 1289 1249 1250 1291 1290 1250 1251 1292 1291 - 1251 1252 1293 1292 1252 1253 1294 1293 1253 1254 1295 1294 - 1254 1255 1296 1295 1255 1256 1297 1296 1256 1257 1298 1297 - 1257 1258 1299 1298 1258 1259 1300 1299 1259 1260 1301 1300 - 1260 1261 1302 1301 1261 1262 1303 1302 1262 1263 1304 1303 - 1263 1264 1305 1304 1264 1265 1306 1305 1265 1266 1307 1306 - 1266 1267 1308 1307 1267 1268 1309 1308 1268 1269 1310 1309 - 1269 1270 1311 1310 1271 1272 1313 1312 1272 1273 1314 1313 - 1273 1274 1315 1314 1274 1275 1316 1315 1275 1276 1317 1316 - 1276 1277 1318 1317 1277 1278 1319 1318 1278 1279 1320 1319 - 1279 1280 1321 1320 1280 1281 1322 1321 1281 1282 1323 1322 - 1282 1283 1324 1323 1283 1284 1325 1324 1284 1285 1326 1325 - 1285 1286 1327 1326 1286 1287 1328 1327 1287 1288 1329 1328 - 1288 1289 1330 1329 1289 1290 1331 1330 1290 1291 1332 1331 - 1291 1292 1333 1332 1292 1293 1334 1333 1293 1294 1335 1334 - 1294 1295 1336 1335 1295 1296 1337 1336 1296 1297 1338 1337 - 1297 1298 1339 1338 1298 1299 1340 1339 1299 1300 1341 1340 - 1300 1301 1342 1341 1301 1302 1343 1342 1302 1303 1344 1343 - 1303 1304 1345 1344 1304 1305 1346 1345 1305 1306 1347 1346 - 1306 1307 1348 1347 1307 1308 1349 1348 1308 1309 1350 1349 - 1309 1310 1351 1350 1310 1311 1352 1351 1312 1313 1354 1353 - 1313 1314 1355 1354 1314 1315 1356 1355 1315 1316 1357 1356 - 1316 1317 1358 1357 1317 1318 1359 1358 1318 1319 1360 1359 - 1319 1320 1361 1360 1320 1321 1362 1361 1321 1322 1363 1362 - 1322 1323 1364 1363 1323 1324 1365 1364 1324 1325 1366 1365 - 1325 1326 1367 1366 1326 1327 1368 1367 1327 1328 1369 1368 - 1328 1329 1370 1369 1329 1330 1371 1370 1330 1331 1372 1371 - 1331 1332 1373 1372 1332 1333 1374 1373 1333 1334 1375 1374 - 1334 1335 1376 1375 1335 1336 1377 1376 1336 1337 1378 1377 - 1337 1338 1379 1378 1338 1339 1380 1379 1339 1340 1381 1380 - 1340 1341 1382 1381 1341 1342 1383 1382 1342 1343 1384 1383 - 1343 1344 1385 1384 1344 1345 1386 1385 1345 1346 1387 1386 - 1346 1347 1388 1387 1347 1348 1389 1388 1348 1349 1390 1389 - 1349 1350 1391 1390 1350 1351 1392 1391 1351 1352 1393 1392 - 1353 1354 1395 1394 1354 1355 1396 1395 1355 1356 1397 1396 - 1356 1357 1398 1397 1357 1358 1399 1398 1358 1359 1400 1399 - 1359 1360 1401 1400 1360 1361 1402 1401 1361 1362 1403 1402 - 1362 1363 1404 1403 1363 1364 1405 1404 1364 1365 1406 1405 - 1365 1366 1407 1406 1366 1367 1408 1407 1367 1368 1409 1408 - 1368 1369 1410 1409 1369 1370 1411 1410 1370 1371 1412 1411 - 1371 1372 1413 1412 1372 1373 1414 1413 1373 1374 1415 1414 - 1374 1375 1416 1415 1375 1376 1417 1416 1376 1377 1418 1417 - 1377 1378 1419 1418 1378 1379 1420 1419 1379 1380 1421 1420 - 1380 1381 1422 1421 1381 1382 1423 1422 1382 1383 1424 1423 - 1383 1384 1425 1424 1384 1385 1426 1425 1385 1386 1427 1426 - 1386 1387 1428 1427 1387 1388 1429 1428 1388 1389 1430 1429 - 1389 1390 1431 1430 1390 1391 1432 1431 1391 1392 1433 1432 - 1392 1393 1434 1433 1394 1395 1436 1435 1395 1396 1437 1436 - 1396 1397 1438 1437 1397 1398 1439 1438 1398 1399 1440 1439 - 1399 1400 1441 1440 1400 1401 1442 1441 1401 1402 1443 1442 - 1402 1403 1444 1443 1403 1404 1445 1444 1404 1405 1446 1445 - 1405 1406 1447 1446 1406 1407 1448 1447 1407 1408 1449 1448 - 1408 1409 1450 1449 1409 1410 1451 1450 1410 1411 1452 1451 - 1411 1412 1453 1452 1412 1413 1454 1453 1413 1414 1455 1454 - 1414 1415 1456 1455 1415 1416 1457 1456 1416 1417 1458 1457 - 1417 1418 1459 1458 1418 1419 1460 1459 1419 1420 1461 1460 - 1420 1421 1462 1461 1421 1422 1463 1462 1422 1423 1464 1463 - 1423 1424 1465 1464 1424 1425 1466 1465 1425 1426 1467 1466 - 1426 1427 1468 1467 1427 1428 1469 1468 1428 1429 1470 1469 - 1429 1430 1471 1470 1430 1431 1472 1471 1431 1432 1473 1472 - 1432 1433 1474 1473 1433 1434 1475 1474 1435 1436 1477 1476 - 1436 1437 1478 1477 1437 1438 1479 1478 1438 1439 1480 1479 - 1439 1440 1481 1480 1440 1441 1482 1481 1441 1442 1483 1482 - 1442 1443 1484 1483 1443 1444 1485 1484 1444 1445 1486 1485 - 1445 1446 1487 1486 1446 1447 1488 1487 1447 1448 1489 1488 - 1448 1449 1490 1489 1449 1450 1491 1490 1450 1451 1492 1491 - 1451 1452 1493 1492 1452 1453 1494 1493 1453 1454 1495 1494 - 1454 1455 1496 1495 1455 1456 1497 1496 1456 1457 1498 1497 - 1457 1458 1499 1498 1458 1459 1500 1499 1459 1460 1501 1500 - 1460 1461 1502 1501 1461 1462 1503 1502 1462 1463 1504 1503 - 1463 1464 1505 1504 1464 1465 1506 1505 1465 1466 1507 1506 - 1466 1467 1508 1507 1467 1468 1509 1508 1468 1469 1510 1509 - 1469 1470 1511 1510 1470 1471 1512 1511 1471 1472 1513 1512 - 1472 1473 1514 1513 1473 1474 1515 1514 1474 1475 1516 1515 - 1476 1477 1518 1517 1477 1478 1519 1518 1478 1479 1520 1519 - 1479 1480 1521 1520 1480 1481 1522 1521 1481 1482 1523 1522 - 1482 1483 1524 1523 1483 1484 1525 1524 1484 1485 1526 1525 - 1485 1486 1527 1526 1486 1487 1528 1527 1487 1488 1529 1528 - 1488 1489 1530 1529 1489 1490 1531 1530 1490 1491 1532 1531 - 1491 1492 1533 1532 1492 1493 1534 1533 1493 1494 1535 1534 - 1494 1495 1536 1535 1495 1496 1537 1536 1496 1497 1538 1537 - 1497 1498 1539 1538 1498 1499 1540 1539 1499 1500 1541 1540 - 1500 1501 1542 1541 1501 1502 1543 1542 1502 1503 1544 1543 - 1503 1504 1545 1544 1504 1505 1546 1545 1505 1506 1547 1546 - 1506 1507 1548 1547 1507 1508 1549 1548 1508 1509 1550 1549 - 1509 1510 1551 1550 1510 1511 1552 1551 1511 1512 1553 1552 - 1512 1513 1554 1553 1513 1514 1555 1554 1514 1515 1556 1555 - 1515 1516 1557 1556 1517 1518 1559 1558 1518 1519 1560 1559 - 1519 1520 1561 1560 1520 1521 1562 1561 1521 1522 1563 1562 - 1522 1523 1564 1563 1523 1524 1565 1564 1524 1525 1566 1565 - 1525 1526 1567 1566 1526 1527 1568 1567 1527 1528 1569 1568 - 1528 1529 1570 1569 1529 1530 1571 1570 1530 1531 1572 1571 - 1531 1532 1573 1572 1532 1533 1574 1573 1533 1534 1575 1574 - 1534 1535 1576 1575 1535 1536 1577 1576 1536 1537 1578 1577 - 1537 1538 1579 1578 1538 1539 1580 1579 1539 1540 1581 1580 - 1540 1541 1582 1581 1541 1542 1583 1582 1542 1543 1584 1583 - 1543 1544 1585 1584 1544 1545 1586 1585 1545 1546 1587 1586 - 1546 1547 1588 1587 1547 1548 1589 1588 1548 1549 1590 1589 - 1549 1550 1591 1590 1550 1551 1592 1591 1551 1552 1593 1592 - 1552 1553 1594 1593 1553 1554 1595 1594 1554 1555 1596 1595 - 1555 1556 1597 1596 1556 1557 1598 1597 1558 1559 1600 1599 - 1559 1560 1601 1600 1560 1561 1602 1601 1561 1562 1603 1602 - 1562 1563 1604 1603 1563 1564 1605 1604 1564 1565 1606 1605 - 1565 1566 1607 1606 1566 1567 1608 1607 1567 1568 1609 1608 - 1568 1569 1610 1609 1569 1570 1611 1610 1570 1571 1612 1611 - 1571 1572 1613 1612 1572 1573 1614 1613 1573 1574 1615 1614 - 1574 1575 1616 1615 1575 1576 1617 1616 1576 1577 1618 1617 - 1577 1578 1619 1618 1578 1579 1620 1619 1579 1580 1621 1620 - 1580 1581 1622 1621 1581 1582 1623 1622 1582 1583 1624 1623 - 1583 1584 1625 1624 1584 1585 1626 1625 1585 1586 1627 1626 - 1586 1587 1628 1627 1587 1588 1629 1628 1588 1589 1630 1629 - 1589 1590 1631 1630 1590 1591 1632 1631 1591 1592 1633 1632 - 1592 1593 1634 1633 1593 1594 1635 1634 1594 1595 1636 1635 - 1595 1596 1637 1636 1596 1597 1638 1637 1597 1598 1639 1638 - 1599 1600 1641 1640 1600 1601 1642 1641 1601 1602 1643 1642 - 1602 1603 1644 1643 1603 1604 1645 1644 1604 1605 1646 1645 - 1605 1606 1647 1646 1606 1607 1648 1647 1607 1608 1649 1648 - 1608 1609 1650 1649 1609 1610 1651 1650 1610 1611 1652 1651 - 1611 1612 1653 1652 1612 1613 1654 1653 1613 1614 1655 1654 - 1614 1615 1656 1655 1615 1616 1657 1656 1616 1617 1658 1657 - 1617 1618 1659 1658 1618 1619 1660 1659 1619 1620 1661 1660 - 1620 1621 1662 1661 1621 1622 1663 1662 1622 1623 1664 1663 - 1623 1624 1665 1664 1624 1625 1666 1665 1625 1626 1667 1666 - 1626 1627 1668 1667 1627 1628 1669 1668 1628 1629 1670 1669 - 1629 1630 1671 1670 1630 1631 1672 1671 1631 1632 1673 1672 - 1632 1633 1674 1673 1633 1634 1675 1674 1634 1635 1676 1675 - 1635 1636 1677 1676 1636 1637 1678 1677 1637 1638 1679 1678 - 1638 1639 1680 1679 - - - 4 8 12 16 20 24 28 32 36 40 44 48 - 52 56 60 64 68 72 76 80 84 88 92 96 - 100 104 108 112 116 120 124 128 132 136 140 144 - 148 152 156 160 164 168 172 176 180 184 188 192 - 196 200 204 208 212 216 220 224 228 232 236 240 - 244 248 252 256 260 264 268 272 276 280 284 288 - 292 296 300 304 308 312 316 320 324 328 332 336 - 340 344 348 352 356 360 364 368 372 376 380 384 - 388 392 396 400 404 408 412 416 420 424 428 432 - 436 440 444 448 452 456 460 464 468 472 476 480 - 484 488 492 496 500 504 508 512 516 520 524 528 - 532 536 540 544 548 552 556 560 564 568 572 576 - 580 584 588 592 596 600 604 608 612 616 620 624 - 628 632 636 640 644 648 652 656 660 664 668 672 - 676 680 684 688 692 696 700 704 708 712 716 720 - 724 728 732 736 740 744 748 752 756 760 764 768 - 772 776 780 784 788 792 796 800 804 808 812 816 - 820 824 828 832 836 840 844 848 852 856 860 864 - 868 872 876 880 884 888 892 896 900 904 908 912 - 916 920 924 928 932 936 940 944 948 952 956 960 - 964 968 972 976 980 984 988 992 996 1000 1004 1008 - 1012 1016 1020 1024 1028 1032 1036 1040 1044 1048 1052 1056 - 1060 1064 1068 1072 1076 1080 1084 1088 1092 1096 1100 1104 - 1108 1112 1116 1120 1124 1128 1132 1136 1140 1144 1148 1152 - 1156 1160 1164 1168 1172 1176 1180 1184 1188 1192 1196 1200 - 1204 1208 1212 1216 1220 1224 1228 1232 1236 1240 1244 1248 - 1252 1256 1260 1264 1268 1272 1276 1280 1284 1288 1292 1296 - 1300 1304 1308 1312 1316 1320 1324 1328 1332 1336 1340 1344 - 1348 1352 1356 1360 1364 1368 1372 1376 1380 1384 1388 1392 - 1396 1400 1404 1408 1412 1416 1420 1424 1428 1432 1436 1440 - 1444 1448 1452 1456 1460 1464 1468 1472 1476 1480 1484 1488 - 1492 1496 1500 1504 1508 1512 1516 1520 1524 1528 1532 1536 - 1540 1544 1548 1552 1556 1560 1564 1568 1572 1576 1580 1584 - 1588 1592 1596 1600 1604 1608 1612 1616 1620 1624 1628 1632 - 1636 1640 1644 1648 1652 1656 1660 1664 1668 1672 1676 1680 - 1684 1688 1692 1696 1700 1704 1708 1712 1716 1720 1724 1728 - 1732 1736 1740 1744 1748 1752 1756 1760 1764 1768 1772 1776 - 1780 1784 1788 1792 1796 1800 1804 1808 1812 1816 1820 1824 - 1828 1832 1836 1840 1844 1848 1852 1856 1860 1864 1868 1872 - 1876 1880 1884 1888 1892 1896 1900 1904 1908 1912 1916 1920 - 1924 1928 1932 1936 1940 1944 1948 1952 1956 1960 1964 1968 - 1972 1976 1980 1984 1988 1992 1996 2000 2004 2008 2012 2016 - 2020 2024 2028 2032 2036 2040 2044 2048 2052 2056 2060 2064 - 2068 2072 2076 2080 2084 2088 2092 2096 2100 2104 2108 2112 - 2116 2120 2124 2128 2132 2136 2140 2144 2148 2152 2156 2160 - 2164 2168 2172 2176 2180 2184 2188 2192 2196 2200 2204 2208 - 2212 2216 2220 2224 2228 2232 2236 2240 2244 2248 2252 2256 - 2260 2264 2268 2272 2276 2280 2284 2288 2292 2296 2300 2304 - 2308 2312 2316 2320 2324 2328 2332 2336 2340 2344 2348 2352 - 2356 2360 2364 2368 2372 2376 2380 2384 2388 2392 2396 2400 - 2404 2408 2412 2416 2420 2424 2428 2432 2436 2440 2444 2448 - 2452 2456 2460 2464 2468 2472 2476 2480 2484 2488 2492 2496 - 2500 2504 2508 2512 2516 2520 2524 2528 2532 2536 2540 2544 - 2548 2552 2556 2560 2564 2568 2572 2576 2580 2584 2588 2592 - 2596 2600 2604 2608 2612 2616 2620 2624 2628 2632 2636 2640 - 2644 2648 2652 2656 2660 2664 2668 2672 2676 2680 2684 2688 - 2692 2696 2700 2704 2708 2712 2716 2720 2724 2728 2732 2736 - 2740 2744 2748 2752 2756 2760 2764 2768 2772 2776 2780 2784 - 2788 2792 2796 2800 2804 2808 2812 2816 2820 2824 2828 2832 - 2836 2840 2844 2848 2852 2856 2860 2864 2868 2872 2876 2880 - 2884 2888 2892 2896 2900 2904 2908 2912 2916 2920 2924 2928 - 2932 2936 2940 2944 2948 2952 2956 2960 2964 2968 2972 2976 - 2980 2984 2988 2992 2996 3000 3004 3008 3012 3016 3020 3024 - 3028 3032 3036 3040 3044 3048 3052 3056 3060 3064 3068 3072 - 3076 3080 3084 3088 3092 3096 3100 3104 3108 3112 3116 3120 - 3124 3128 3132 3136 3140 3144 3148 3152 3156 3160 3164 3168 - 3172 3176 3180 3184 3188 3192 3196 3200 3204 3208 3212 3216 - 3220 3224 3228 3232 3236 3240 3244 3248 3252 3256 3260 3264 - 3268 3272 3276 3280 3284 3288 3292 3296 3300 3304 3308 3312 - 3316 3320 3324 3328 3332 3336 3340 3344 3348 3352 3356 3360 - 3364 3368 3372 3376 3380 3384 3388 3392 3396 3400 3404 3408 - 3412 3416 3420 3424 3428 3432 3436 3440 3444 3448 3452 3456 - 3460 3464 3468 3472 3476 3480 3484 3488 3492 3496 3500 3504 - 3508 3512 3516 3520 3524 3528 3532 3536 3540 3544 3548 3552 - 3556 3560 3564 3568 3572 3576 3580 3584 3588 3592 3596 3600 - 3604 3608 3612 3616 3620 3624 3628 3632 3636 3640 3644 3648 - 3652 3656 3660 3664 3668 3672 3676 3680 3684 3688 3692 3696 - 3700 3704 3708 3712 3716 3720 3724 3728 3732 3736 3740 3744 - 3748 3752 3756 3760 3764 3768 3772 3776 3780 3784 3788 3792 - 3796 3800 3804 3808 3812 3816 3820 3824 3828 3832 3836 3840 - 3844 3848 3852 3856 3860 3864 3868 3872 3876 3880 3884 3888 - 3892 3896 3900 3904 3908 3912 3916 3920 3924 3928 3932 3936 - 3940 3944 3948 3952 3956 3960 3964 3968 3972 3976 3980 3984 - 3988 3992 3996 4000 4004 4008 4012 4016 4020 4024 4028 4032 - 4036 4040 4044 4048 4052 4056 4060 4064 4068 4072 4076 4080 - 4084 4088 4092 4096 4100 4104 4108 4112 4116 4120 4124 4128 - 4132 4136 4140 4144 4148 4152 4156 4160 4164 4168 4172 4176 - 4180 4184 4188 4192 4196 4200 4204 4208 4212 4216 4220 4224 - 4228 4232 4236 4240 4244 4248 4252 4256 4260 4264 4268 4272 - 4276 4280 4284 4288 4292 4296 4300 4304 4308 4312 4316 4320 - 4324 4328 4332 4336 4340 4344 4348 4352 4356 4360 4364 4368 - 4372 4376 4380 4384 4388 4392 4396 4400 4404 4408 4412 4416 - 4420 4424 4428 4432 4436 4440 4444 4448 4452 4456 4460 4464 - 4468 4472 4476 4480 4484 4488 4492 4496 4500 4504 4508 4512 - 4516 4520 4524 4528 4532 4536 4540 4544 4548 4552 4556 4560 - 4564 4568 4572 4576 4580 4584 4588 4592 4596 4600 4604 4608 - 4612 4616 4620 4624 4628 4632 4636 4640 4644 4648 4652 4656 - 4660 4664 4668 4672 4676 4680 4684 4688 4692 4696 4700 4704 - 4708 4712 4716 4720 4724 4728 4732 4736 4740 4744 4748 4752 - 4756 4760 4764 4768 4772 4776 4780 4784 4788 4792 4796 4800 - 4804 4808 4812 4816 4820 4824 4828 4832 4836 4840 4844 4848 - 4852 4856 4860 4864 4868 4872 4876 4880 4884 4888 4892 4896 - 4900 4904 4908 4912 4916 4920 4924 4928 4932 4936 4940 4944 - 4948 4952 4956 4960 4964 4968 4972 4976 4980 4984 4988 4992 - 4996 5000 5004 5008 5012 5016 5020 5024 5028 5032 5036 5040 - 5044 5048 5052 5056 5060 5064 5068 5072 5076 5080 5084 5088 - 5092 5096 5100 5104 5108 5112 5116 5120 5124 5128 5132 5136 - 5140 5144 5148 5152 5156 5160 5164 5168 5172 5176 5180 5184 - 5188 5192 5196 5200 5204 5208 5212 5216 5220 5224 5228 5232 - 5236 5240 5244 5248 5252 5256 5260 5264 5268 5272 5276 5280 - 5284 5288 5292 5296 5300 5304 5308 5312 5316 5320 5324 5328 - 5332 5336 5340 5344 5348 5352 5356 5360 5364 5368 5372 5376 - 5380 5384 5388 5392 5396 5400 5404 5408 5412 5416 5420 5424 - 5428 5432 5436 5440 5444 5448 5452 5456 5460 5464 5468 5472 - 5476 5480 5484 5488 5492 5496 5500 5504 5508 5512 5516 5520 - 5524 5528 5532 5536 5540 5544 5548 5552 5556 5560 5564 5568 - 5572 5576 5580 5584 5588 5592 5596 5600 5604 5608 5612 5616 - 5620 5624 5628 5632 5636 5640 5644 5648 5652 5656 5660 5664 - 5668 5672 5676 5680 5684 5688 5692 5696 5700 5704 5708 5712 - 5716 5720 5724 5728 5732 5736 5740 5744 5748 5752 5756 5760 - 5764 5768 5772 5776 5780 5784 5788 5792 5796 5800 5804 5808 - 5812 5816 5820 5824 5828 5832 5836 5840 5844 5848 5852 5856 - 5860 5864 5868 5872 5876 5880 5884 5888 5892 5896 5900 5904 - 5908 5912 5916 5920 5924 5928 5932 5936 5940 5944 5948 5952 - 5956 5960 5964 5968 5972 5976 5980 5984 5988 5992 5996 6000 - 6004 6008 6012 6016 6020 6024 6028 6032 6036 6040 6044 6048 - 6052 6056 6060 6064 6068 6072 6076 6080 6084 6088 6092 6096 - 6100 6104 6108 6112 6116 6120 6124 6128 6132 6136 6140 6144 - 6148 6152 6156 6160 6164 6168 6172 6176 6180 6184 6188 6192 - 6196 6200 6204 6208 6212 6216 6220 6224 6228 6232 6236 6240 - 6244 6248 6252 6256 6260 6264 6268 6272 6276 6280 6284 6288 - 6292 6296 6300 6304 6308 6312 6316 6320 6324 6328 6332 6336 - 6340 6344 6348 6352 6356 6360 6364 6368 6372 6376 6380 6384 - 6388 6392 6396 6400 - - - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 - - - - - diff --git a/test/reference-solutions/monolithic/flow-over-step-2d/ref-flow-over-step-2d.input b/test/reference-solutions/monolithic/flow-over-step-2d/ref-flow-over-step-2d.input deleted file mode 100644 index d9b1a1f..0000000 --- a/test/reference-solutions/monolithic/flow-over-step-2d/ref-flow-over-step-2d.input +++ /dev/null @@ -1,46 +0,0 @@ - # for dune-subgrid - [Grid] -Positions0 = 0 0.5 1 -Positions1 = 0 0.5 1.0 2.0 -Cells0 = 20 20 -Cells1 = 20 20 40 -Baseline = 1.0 # [m] -Amplitude = 0.04 # [m] -Offset = 0.5 # [m] -Scaling = 0.2 #[m] - -[Stokes.Grid] -Verbosity = true -Positions0 = 0.0 1.0 -Positions1 = 1.0 2.0 -Cells0 = 20 -Cells1 = 100 -Grading1 = 1 - -[Darcy.Grid] -Verbosity = true -Positions0 = 0.0 1.0 -Positions1 = 0.0 1.0 -Cells0 = 20 -Cells1 = 20 -Grading1 = 1 - -[Stokes.Problem] -Name = stokes -PressureDifference = 1e-9 -EnableInertiaTerms = false - -[Darcy.Problem] -Name = darcy - -[Darcy.SpatialParams] -Permeability = 1e-6 # m^2 -Porosity = 0.4 -AlphaBeaversJoseph = 1.0 - -[Problem] -Name = flow-over-step-2d -EnableGravity = false - -[Vtk] -AddVelocity = 1 diff --git a/test/reference-solutions/monolithic/flow-over-step-2d/ref-sol-darcy-flow-over-step-2d.vtu b/test/reference-solutions/monolithic/flow-over-step-2d/ref-sol-darcy-flow-over-step-2d.vtu deleted file mode 100644 index d5d558d..0000000 --- a/test/reference-solutions/monolithic/flow-over-step-2d/ref-sol-darcy-flow-over-step-2d.vtu +++ /dev/null @@ -1,1448 +0,0 @@ - - - - - - - 0.067719 0.0678151 0.0680071 0.068294 0.0686745 0.0691468 0.0697086 0.0703565 0.0710866 0.071894 0.0727727 0.0737158 - 0.074715 0.075761 0.0768435 0.0779515 0.079073 0.0801958 0.0813079 0.0823975 0.0834537 0.0844668 0.0854286 0.0863323 - 0.0871733 0.0879484 0.0886563 0.0892968 0.0898712 0.0903817 0.090831 0.0912225 0.0915596 0.0918457 0.092084 0.0922778 - 0.0924294 0.0925412 0.0926148 0.0926513 0.203061 0.20335 0.203926 0.204788 0.205932 0.207351 0.209039 0.210987 - 0.213183 0.215611 0.218254 0.221091 0.224098 0.227246 0.230505 0.233841 0.237218 0.240598 0.243946 0.247226 - 0.250404 0.253452 0.256344 0.25906 0.261586 0.263913 0.266036 0.267956 0.269678 0.271206 0.272551 0.273722 - 0.27473 0.275585 0.276297 0.276875 0.277328 0.277662 0.277881 0.27799 0.338114 0.338596 0.33956 0.341001 - 0.342913 0.345287 0.348111 0.35137 0.355046 0.359112 0.363541 0.368297 0.373339 0.378621 0.38409 0.389689 - 0.395358 0.401033 0.406653 0.412156 0.417486 0.422593 0.427434 0.431977 0.436197 0.44008 0.443619 0.446815 - 0.449676 0.452214 0.454445 0.456385 0.458053 0.459466 0.460643 0.461599 0.462346 0.462896 0.463259 0.463438 - 0.472684 0.473362 0.474717 0.476743 0.479432 0.482772 0.486747 0.491338 0.496517 0.502252 0.508501 0.515217 - 0.522341 0.529809 0.537545 0.545468 0.553492 0.561524 0.569476 0.577258 0.58479 0.591999 0.598824 0.605218 - 0.611147 0.616591 0.621544 0.626009 0.629998 0.63353 0.636629 0.63932 0.64163 0.643585 0.645211 0.64653 - 0.647561 0.648319 0.648818 0.649066 0.606575 0.607452 0.609203 0.611822 0.615299 0.619621 0.624769 0.630717 - 0.637433 0.644876 0.652995 0.661728 0.671 0.680728 0.690813 0.701147 0.711616 0.722097 0.732468 0.742612 - 0.752418 0.761789 0.770644 0.778922 0.78658 0.793594 0.799958 0.805679 0.810777 0.81528 0.819221 0.822635 - 0.825561 0.828034 0.830086 0.831749 0.833047 0.834002 0.83463 0.834941 0.739589 0.740668 0.742821 0.746042 - 0.750322 0.755645 0.76199 0.769328 0.777622 0.786825 0.796875 0.807698 0.819205 0.83129 0.843831 0.856693 - 0.869727 0.882778 0.895688 0.908303 0.92048 0.932094 0.943042 0.953247 0.962658 0.971248 0.979014 0.985972 - 0.992152 0.997592 1.00234 1.00644 1.00995 1.0129 1.01535 1.01733 1.01888 1.02001 1.02076 1.02113 - 0.871526 0.872808 0.87537 0.879205 0.884302 0.890647 0.898217 0.906983 0.916904 0.927926 0.939981 0.952985 - 0.966831 0.981395 0.996529 1.01207 1.02782 1.0436 1.0592 1.07443 1.08911 1.10307 1.11618 1.12837 - 1.13956 1.14972 1.15888 1.16704 1.17427 1.1806 1.1861 1.19084 1.19488 1.19828 1.20109 1.20335 - 1.20512 1.20641 1.20726 1.20768 1.00218 1.00367 1.00665 1.0111 1.01703 1.02442 1.03325 1.04348 - 1.05508 1.06799 1.08214 1.09743 1.11374 1.13093 1.14882 1.16722 1.18589 1.2046 1.22309 1.24112 - 1.25844 1.27488 1.29026 1.30448 1.31747 1.32922 1.33973 1.34906 1.35727 1.36443 1.37063 1.37594 - 1.38046 1.38424 1.38736 1.38987 1.39183 1.39326 1.39419 1.39466 1.13134 1.13304 1.13644 1.14153 - 1.14831 1.15676 1.16687 1.17862 1.19195 1.20682 1.22316 1.24085 1.25977 1.27976 1.30062 1.3221 - 1.34393 1.36582 1.38744 1.40849 1.42868 1.44774 1.4655 1.48182 1.49664 1.50994 1.52177 1.5322 - 1.54132 1.54923 1.55603 1.56185 1.56676 1.57087 1.57424 1.57695 1.57906 1.58059 1.5816 1.5821 - 1.25881 1.26072 1.26454 1.27027 1.27791 1.28744 1.29887 1.31216 1.32728 1.34419 1.36281 1.38304 - 1.40474 1.42773 1.45178 1.47662 1.50192 1.5273 1.55237 1.57674 1.60003 1.62192 1.64218 1.66066 - 1.67731 1.69214 1.70521 1.71665 1.72657 1.73512 1.74244 1.74865 1.75388 1.75823 1.76179 1.76464 - 1.76685 1.76846 1.76952 1.77004 1.38436 1.38649 1.39073 1.3971 1.40561 1.41624 1.42899 1.44387 - 1.46083 1.47985 1.50086 1.52376 1.54841 1.57463 1.60216 1.63068 1.65981 1.68909 1.71801 1.74607 - 1.77277 1.79773 1.82064 1.84134 1.85981 1.87608 1.8903 1.90261 1.9132 1.92225 1.92995 1.93644 - 1.94187 1.94637 1.95005 1.95298 1.95524 1.95689 1.95797 1.9585 1.5078 1.51013 1.5148 1.52181 - 1.53117 1.5429 1.55701 1.57348 1.59233 1.61352 1.63702 1.66273 1.69052 1.72022 1.75155 1.78415 - 1.81756 1.85123 1.88451 1.91674 1.94727 1.97557 2.0013 2.02427 2.04449 2.0621 2.07728 2.09029 - 2.10136 2.11075 2.11866 2.12529 2.1308 2.13535 2.13904 2.14198 2.14424 2.14589 2.14696 2.14749 - 1.6289 1.63144 1.63652 1.64416 1.65438 1.6672 1.68264 1.70073 1.72148 1.7449 1.77095 1.7996 - 1.83073 1.86418 1.89966 1.9368 1.97506 2.01375 2.05207 2.08911 2.12399 2.156 2.1847 2.20994 - 2.2318 2.25053 2.26644 2.2799 2.29122 2.30071 2.30864 2.31524 2.3207 2.32518 2.32879 2.33166 - 2.33386 2.33546 2.3365 2.33701 1.74746 1.7502 1.75568 1.76393 1.77498 1.78887 1.80563 1.82531 - 1.84797 1.87362 1.9023 1.934 1.96864 2.00609 2.04612 2.08832 2.13211 2.17666 2.22092 2.26364 - 2.30359 2.33975 2.37158 2.39899 2.42224 2.44177 2.45807 2.47164 2.4829 2.49224 2.49997 2.50635 - 2.51159 2.51586 2.5193 2.52201 2.52409 2.52559 2.52656 2.52704 1.86329 1.86621 1.87208 1.88091 - 1.89275 1.90766 1.92569 1.94693 1.97145 1.99933 2.03064 2.06544 2.10373 2.14544 2.1904 2.23826 - 2.2884 2.33986 2.39129 2.44095 2.48696 2.52782 2.56286 2.5922 2.6164 2.63623 2.65244 2.66568 - 2.67651 2.68537 2.69264 2.69859 2.70344 2.70737 2.71052 2.713 2.71488 2.71625 2.71713 2.71756 - 1.97619 1.97929 1.9855 1.99488 2.00746 2.02332 2.04256 2.06527 2.09157 2.1216 2.1555 2.19339 - 2.23539 2.28154 2.33179 2.38592 2.44337 2.5031 2.56344 2.62189 2.67549 2.72172 2.75986 2.79053 - 2.81494 2.83433 2.84977 2.86213 2.87207 2.88011 2.88663 2.89192 2.89621 2.89966 2.90242 2.90457 - 2.90621 2.90738 2.90814 2.9085 2.08598 2.08924 2.09578 2.10564 2.11889 2.13562 2.15594 2.18 - 2.20796 2.24001 2.27636 2.31724 2.36289 2.41353 2.46932 2.53026 2.59604 2.66575 2.73746 2.80769 - 2.8714 2.92371 2.96431 2.99514 3.0185 3.03637 3.05018 3.06099 3.06955 3.07637 3.08185 3.08626 - 3.08981 3.09266 3.09492 3.09667 3.098 3.09894 3.09953 3.09982 2.19253 2.19592 2.20273 2.21301 - 2.22683 2.24432 2.2656 2.29084 2.32027 2.35412 2.39269 2.43632 2.4854 2.54037 2.60169 2.66975 - 2.74478 2.82641 2.91296 3 3.0787 3.13743 3.17853 3.20719 3.22757 3.24245 3.25359 3.26212 - 3.26875 3.27398 3.27814 3.28146 3.28412 3.28624 3.28791 3.28921 3.29017 3.29083 3.29124 3.29141 - 2.29568 2.29918 2.30621 2.31682 2.33112 2.34922 2.37128 2.39751 2.42815 2.46351 2.50395 2.54995 - 2.60203 2.66088 2.7273 2.80229 2.88691 2.98215 3.08796 3.20066 3.30597 3.36876 3.40521 3.42753 - 3.44214 3.45228 3.45963 3.46513 3.46936 3.47266 3.47526 3.47733 3.47897 3.48027 3.48129 3.48207 - 3.48263 3.48299 3.48317 3.48319 2.39533 2.39891 2.4061 2.41697 2.43161 2.45016 2.4728 2.49976 - 2.53131 2.5678 2.60968 2.65748 2.71189 2.7738 2.84437 2.92518 3.01844 3.1273 3.25608 3.40873 - 3.57574 3.62646 3.646 3.65557 3.66119 3.66489 3.6675 3.66943 3.67089 3.67203 3.67291 3.67361 - 3.67416 3.67459 3.67491 3.67515 3.67529 3.67534 3.67526 3.67499 2.4914 2.49503 2.50231 2.51333 - 2.52818 2.54701 2.57001 2.59741 2.62952 2.66672 2.70948 2.7584 2.81426 2.87806 2.95119 3.03562 - 3.13436 3.25255 3.40031 3.60244 2.58384 2.58748 2.5948 2.60587 2.62078 2.6397 2.66281 2.69035 - 2.72265 2.76008 2.80312 2.85239 2.90868 2.97299 3.04671 3.13174 3.23085 3.34821 3.49018 3.66541 - 2.67264 2.67626 2.68354 2.69455 2.70938 2.72819 2.75117 2.77855 2.81064 2.84781 2.89053 2.93937 - 2.99506 3.05852 3.13092 3.21379 3.3091 3.41927 3.5468 3.69255 2.75782 2.76139 2.76856 2.7794 - 2.794 2.81252 2.83512 2.86204 2.89355 2.93001 2.97182 3.01951 3.07368 3.1351 3.20465 3.2834 - 3.37248 3.47295 3.58521 3.70778 2.83943 2.84291 2.84991 2.86048 2.87472 2.89276 2.91476 2.94093 - 2.97152 3.00684 3.04724 3.09315 3.14507 3.20354 3.2692 3.34266 3.42447 3.51485 3.61329 3.718 - 2.91755 2.92092 2.92768 2.93789 2.95164 2.96903 2.99023 3.0154 3.04477 3.07859 3.11715 3.1608 - 3.20989 3.26481 3.32594 3.39359 3.4679 3.54867 3.63512 3.72565 2.99231 2.99554 3.002 3.01177 - 3.0249 3.04151 3.06172 3.08567 3.11356 3.14559 3.18198 3.22299 3.26887 3.31986 3.37616 3.43786 - 3.50486 3.5768 3.65287 3.73176 3.06385 3.0669 3.07303 3.08228 3.0947 3.11039 3.12945 3.15201 - 3.17822 3.20822 3.2422 3.28032 3.32275 3.36961 3.42098 3.47681 3.5369 3.60081 3.66781 3.73684 - 3.13234 3.1352 3.14094 3.1496 3.16123 3.1759 3.1937 3.21471 3.23907 3.26688 3.29827 3.33334 - 3.37219 3.41486 3.46134 3.51151 3.56512 3.62173 3.6807 3.74121 3.19796 3.20061 3.20594 3.21396 - 3.22472 3.23828 3.25471 3.27408 3.29647 3.32197 3.35065 3.38258 3.4178 3.4563 3.49801 3.54277 - 3.59033 3.64028 3.69207 3.74505 3.26092 3.26336 3.26823 3.27557 3.28542 3.2978 3.31279 3.33042 - 3.35076 3.37387 3.39979 3.42854 3.46014 3.49453 3.53162 3.57125 3.61315 3.65697 3.70226 3.74848 - 3.32146 3.32366 3.32806 3.33469 3.34357 3.35473 3.36821 3.38405 3.40229 3.42296 3.44608 3.47166 - 3.49967 3.53006 3.5627 3.59745 3.63405 3.6722 3.71153 3.75159 3.3798 3.38175 3.38566 3.39155 - 3.39943 3.40933 3.42127 3.43528 3.45138 3.46959 3.48992 3.51235 3.53684 3.56332 3.59169 3.62178 - 3.65339 3.68626 3.72007 3.75446 3.43618 3.43788 3.44129 3.44642 3.45329 3.46189 3.47227 3.48442 - 3.49837 3.51412 3.53166 3.55097 3.57201 3.5947 3.61895 3.6446 3.67149 3.69938 3.72802 3.75712 - 3.49086 3.49231 3.49521 3.49957 3.50539 3.51269 3.52148 3.53177 3.54356 3.55685 3.57163 3.58787 - 3.60553 3.62453 3.6448 3.6662 3.68857 3.71175 3.7355 3.75962 3.54409 3.54528 3.54766 3.55124 - 3.55602 3.562 3.5692 3.57761 3.58724 3.59809 3.61013 3.62335 3.63769 3.65311 3.66951 3.68681 - 3.70486 3.72353 3.74263 3.762 3.59613 3.59706 3.59892 3.60171 3.60544 3.61009 3.61569 3.62223 - 3.62972 3.63813 3.64746 3.6577 3.66879 3.68069 3.69334 3.70666 3.72054 3.73486 3.74949 3.76429 - 3.64724 3.64792 3.64925 3.65125 3.65392 3.65725 3.66125 3.66592 3.67126 3.67725 3.6839 3.69118 - 3.69907 3.70753 3.71651 3.72595 3.73578 3.74589 3.75619 3.76653 3.69768 3.6981 3.69892 3.70013 - 3.70174 3.70374 3.70614 3.70893 3.71213 3.71573 3.71971 3.72407 3.72878 3.73384 3.73921 3.74485 - 3.75072 3.75675 3.76285 3.76884 3.74769 3.7479 3.7482 3.74862 3.74916 3.74982 3.75062 3.75155 - 3.75262 3.75381 3.75514 3.75659 3.75816 3.75985 3.76164 3.76353 3.7655 3.76753 3.76961 3.77168 - - - -1.9234e-06 -0.00541559 0 -5.76218e-06 -0.0054233 0 -9.57645e-06 -0.00543867 0 -1.33483e-05 -0.00546164 0 - -1.70577e-05 -0.00549212 0 -2.06814e-05 -0.00552996 0 -2.41927e-05 -0.00557496 0 -2.75608e-05 -0.00562687 0 - -3.07505e-05 -0.00568538 0 -3.37229e-05 -0.00575009 0 -3.64356e-05 -0.00582053 0 -3.88442e-05 -0.00589614 0 - -4.09039e-05 -0.00597626 0 -4.25719e-05 -0.00606015 0 -4.38102e-05 -0.00614698 0 -4.45883e-05 -0.00623585 0 - -4.48866e-05 -0.00632581 0 -4.46989e-05 -0.00641588 0 -4.40339e-05 -0.00650508 0 -4.29165e-05 -0.00659247 0 - -4.13863e-05 -0.00667716 0 -3.94965e-05 -0.00675837 0 -3.73099e-05 -0.00683544 0 -3.4895e-05 -0.00690784 0 - -3.23222e-05 -0.00697518 0 -2.9659e-05 -0.00703722 0 -2.69669e-05 -0.00709385 0 -2.4299e-05 -0.00714506 0 - -2.16982e-05 -0.00719098 0 -1.91968e-05 -0.00723176 0 -1.68169e-05 -0.00726764 0 -1.45708e-05 -0.00729889 0 - -1.24626e-05 -0.00732579 0 -1.04892e-05 -0.00734861 0 -8.64177e-06 -0.00736762 0 -6.90715e-06 -0.00738306 0 - -5.26863e-06 -0.00739515 0 -3.70704e-06 -0.00740406 0 -2.20151e-06 -0.00740992 0 -7.30029e-07 -0.00741283 0 - -5.77821e-06 -0.00540789 0 -1.7311e-05 -0.00541563 0 -2.87717e-05 -0.00543106 0 -4.01075e-05 -0.00545414 0 - -5.12588e-05 -0.00548476 0 -6.21567e-05 -0.0055228 0 -7.27215e-05 -0.00556805 0 -8.28606e-05 -0.00562028 0 - -9.24688e-05 -0.00567918 0 -0.000101428 -0.00574437 0 -0.000109611 -0.00581537 0 -0.000116881 -0.00589163 0 - -0.000123103 -0.00597249 0 -0.000128145 -0.00605721 0 -0.000131891 -0.00614493 0 -0.000134245 -0.00623476 0 - -0.000135146 -0.0063257 0 -0.000134574 -0.00641675 0 -0.000132554 -0.0065069 0 -0.000129162 -0.00659516 0 - -0.000124519 -0.00668064 0 -0.000118786 -0.00676252 0 -0.000112158 -0.00684012 0 -0.000104843 -0.0069129 0 - -9.70571e-05 -0.00698048 0 -8.90059e-05 -0.00704263 0 -8.08766e-05 -0.00709925 0 -7.28299e-05 -0.00715037 0 - -6.49951e-05 -0.0071961 0 -5.7469e-05 -0.00723666 0 -5.03168e-05 -0.00727228 0 -4.35745e-05 -0.00730325 0 - -3.72529e-05 -0.00732986 0 -3.13414e-05 -0.00735242 0 -2.58126e-05 -0.00737118 0 -2.06254e-05 -0.00738642 0 - -1.57289e-05 -0.00739833 0 -1.10651e-05 -0.0074071 0 -6.57047e-06 -0.00741288 0 -2.17867e-06 -0.00741574 0 - -9.6566e-06 -0.00539246 0 -2.89321e-05 -0.00540025 0 -4.80919e-05 -0.00541581 0 -6.70512e-05 -0.00543909 0 - -8.57131e-05 -0.00547 0 -0.000103965 -0.00550841 0 -0.000121676 -0.00555416 0 -0.000138691 -0.00560701 0 - -0.000154836 -0.00566669 0 -0.000169911 -0.00573282 0 -0.000183698 -0.00580494 0 -0.000195967 -0.00588251 0 - -0.000206483 -0.00596487 0 -0.000215016 -0.00605125 0 -0.000221362 -0.0061408 0 -0.000225353 -0.00623255 0 - -0.000226878 -0.00632548 0 -0.000225896 -0.00641852 0 -0.000222447 -0.00651059 0 -0.000216659 -0.00660065 0 - -0.00020874 -0.00668772 0 -0.000198973 -0.00677094 0 -0.000187692 -0.0068496 0 -0.000175263 -0.00692316 0 - -0.000162057 -0.00699122 0 -0.000148431 -0.00705358 0 -0.000134704 -0.00711017 0 -0.000121149 -0.00716106 0 - -0.000107983 -0.00720642 0 -9.53674e-05 -0.00724649 0 -8.34068e-05 -0.00728156 0 -7.21576e-05 -0.00731195 0 - -6.1633e-05 -0.007338 0 -5.18111e-05 -0.00736001 0 -4.26417e-05 -0.00737829 0 -3.40528e-05 -0.00739309 0 - -2.59567e-05 -0.00740465 0 -1.82538e-05 -0.00741315 0 -1.08366e-05 -0.00741874 0 -3.59285e-06 -0.00742151 0 - -1.35727e-05 -0.00536923 0 -4.06687e-05 -0.00537711 0 -6.76128e-05 -0.00539285 0 -9.42922e-05 -0.00541642 0 - -0.000120577 -0.00544773 0 -0.000146315 -0.00548669 0 -0.000171325 -0.00553316 0 -0.000195394 -0.00558693 0 - -0.000218273 -0.00564775 0 -0.00023968 -0.00571528 0 -0.000259303 -0.00578908 0 -0.000276807 -0.00586861 0 - -0.000291843 -0.00595322 0 -0.000304074 -0.00604214 0 -0.000313189 -0.00613445 0 -0.000318929 -0.00622916 0 - -0.000321118 -0.00632515 0 -0.000319685 -0.00642126 0 -0.00031468 -0.0065163 0 -0.000306285 -0.00660912 0 - -0.00029481 -0.00669864 0 -0.000280673 -0.00678392 0 -0.000264374 -0.0068642 0 -0.000246459 -0.0069389 0 - -0.000227478 -0.00700766 0 -0.000207956 -0.00707029 0 -0.000188359 -0.00712678 0 -0.000169078 -0.00717728 0 - -0.000150422 -0.00722202 0 -0.00013261 -0.00726131 0 -0.000115785 -0.00729552 0 -0.000100016 -0.00732501 0 - -8.53105e-05 -0.00735017 0 -7.16283e-05 -0.00737134 0 -5.88901e-05 -0.00738886 0 -4.69876e-05 -0.00740301 0 - -3.57913e-05 -0.00741402 0 -2.51567e-05 -0.00742211 0 -1.49295e-05 -0.00742742 0 -4.94896e-06 -0.00743005 0 - -1.75383e-05 -0.00533812 0 -5.25572e-05 -0.00534611 0 -8.73982e-05 -0.00536207 0 -0.000121928 -0.00538599 0 - -0.000155988 -0.00541781 0 -0.000189393 -0.00545747 0 -0.000221916 -0.00550485 0 -0.000253285 -0.0055598 0 - -0.000283181 -0.00562211 0 -0.000311234 -0.00569146 0 -0.000337029 -0.00576747 0 -0.000360112 -0.00584962 0 - -0.00038001 -0.00593727 0 -0.00039625 -0.00602962 0 -0.000408389 -0.00612572 0 -0.000416055 -0.00622449 0 - -0.000418981 -0.00632471 0 -0.000417046 -0.00642508 0 -0.000410303 -0.00652424 0 -0.000398993 -0.00662089 0 - -0.000383541 -0.0067138 0 -0.000364534 -0.00680191 0 -0.000342672 -0.00688437 0 -0.000318719 -0.0069606 0 - -0.000293441 -0.00703022 0 -0.000267556 -0.00709313 0 -0.000241697 -0.0071494 0 -0.000216384 -0.00719926 0 - -0.000192015 -0.00724306 0 -0.000168867 -0.00728122 0 -0.000147109 -0.00731419 0 -0.00012681 -0.00734241 0 - -0.000107965 -0.00736632 0 -9.05015e-05 -0.00738634 0 -7.4303e-05 -0.00740281 0 -5.92163e-05 -0.00741605 0 - -4.50641e-05 -0.00742633 0 -3.16522e-05 -0.00743385 0 -1.87756e-05 -0.00743878 0 -6.22246e-06 -0.00744122 0 - -2.15617e-05 -0.00529902 0 -6.46236e-05 -0.00530712 0 -0.000107495 -0.00532334 0 -0.000150031 -0.00534766 0 - -0.000192056 -0.00538006 0 -0.000233354 -0.00542052 0 -0.00027366 -0.00546897 0 -0.00031265 -0.00552532 0 - -0.000349932 -0.00558941 0 -0.000385046 -0.00566099 0 -0.000417466 -0.00573973 0 -0.000446604 -0.00582515 0 - -0.000471836 -0.00591662 0 -0.000492525 -0.00601334 0 -0.000508062 -0.00611432 0 -0.00051792 -0.00621837 0 - -0.000521704 -0.00632412 0 -0.000519216 -0.00643009 0 -0.000510493 -0.0065347 0 -0.000495841 -0.0066364 0 - -0.000475828 -0.00673375 0 -0.00045125 -0.00682554 0 -0.000423063 -0.00691079 0 -0.000392305 -0.00698889 0 - -0.00036001 -0.0070595 0 -0.000327131 -0.00712261 0 -0.00029449 -0.00717842 0 -0.000262746 -0.0072273 0 - -0.000232386 -0.00726975 0 -0.000203735 -0.00730633 0 -0.000176971 -0.0073376 0 -0.000152152 -0.00736411 0 - -0.000129236 -0.00738638 0 -0.00010811 -0.00740487 0 -8.86039e-05 -0.00741998 0 -7.05104e-05 -0.00743206 0 - -5.35965e-05 -0.00744139 0 -3.76125e-05 -0.00744819 0 -2.22982e-05 -0.00745264 0 -7.38777e-06 -0.00745483 0 - -2.56464e-05 -0.00525181 0 -7.68801e-05 -0.00526004 0 -0.000127929 -0.00527651 0 -0.000178646 -0.00530124 0 - -0.000228849 -0.00533425 0 -0.000278306 -0.00537557 0 -0.000326721 -0.0054252 0 -0.000373722 -0.0054831 0 - -0.000418851 -0.00554921 0 -0.000461554 -0.00562337 0 -0.000501183 -0.0057053 0 -0.000537002 -0.00579461 0 - -0.000568205 -0.00589071 0 -0.000593951 -0.00599281 0 -0.000613416 -0.00609985 0 -0.000625858 -0.00621054 0 - -0.000630701 -0.00632332 0 -0.000627619 -0.00643646 0 -0.000616612 -0.00654806 0 -0.000598051 -0.00665625 0 - -0.000572682 -0.00675928 0 -0.000541574 -0.00685569 0 -0.000506023 -0.00694437 0 -0.000467429 -0.00702466 0 - -0.000427163 -0.00709629 0 -0.000386468 -0.00715939 0 -0.000346386 -0.00721436 0 -0.000307723 -0.00726177 0 - -0.000271049 -0.00730232 0 -0.000236715 -0.00733675 0 -0.00020489 -0.00736577 0 -0.00017559 -0.00739006 0 - -0.000148719 -0.00741022 0 -0.000124099 -0.00742678 0 -0.000101492 -0.00744018 0 -8.06249e-05 -0.00745081 0 - -6.11992e-05 -0.00745897 0 -4.2903e-05 -0.00746489 0 -2.5417e-05 -0.00746874 0 -8.41816e-06 -0.00747064 0 - -2.97904e-05 -0.00519637 0 -8.93213e-05 -0.00520471 0 -0.000148694 -0.00522141 0 -0.000207775 -0.00524653 0 - -0.000266389 -0.00528014 0 -0.0003243 -0.00532231 0 -0.000381196 -0.00537314 0 -0.000436667 -0.00543269 0 - -0.000490195 -0.00550098 0 -0.000541135 -0.00557796 0 -0.000588711 -0.0056635 0 -0.000632016 -0.00575729 0 - -0.00067003 -0.00585882 0 -0.000701659 -0.00596733 0 -0.000725792 -0.00608173 0 -0.000741395 -0.00620061 0 - -0.000747623 -0.00632218 0 -0.000743948 -0.00644436 0 -0.000730285 -0.00656483 0 -0.000707069 -0.00668125 0 - -0.000675273 -0.00679144 0 -0.00063634 -0.00689358 0 -0.000592028 -0.00698635 0 -0.000544224 -0.00706908 0 - -0.000494745 -0.00714162 0 -0.000445193 -0.00720432 0 -0.000396863 -0.00725785 0 -0.000350712 -0.00730309 0 - -0.00030737 -0.00734101 0 -0.000267188 -0.00737257 0 -0.000230283 -0.00739868 0 -0.000196598 -0.00742014 0 - -0.000165951 -0.00743766 0 -0.000138073 -0.00745184 0 -0.000112641 -0.00746316 0 -8.9298e-05 -0.00747204 0 - -6.76723e-05 -0.00747879 0 -4.73833e-05 -0.00748365 0 -2.80487e-05 -0.0074868 0 -9.28603e-06 -0.00748834 0 - -3.39844e-05 -0.0051326 0 -0.000101921 -0.00514102 0 -0.000169751 -0.0051579 0 -0.000237371 -0.00518334 0 - -0.000304631 -0.00521746 0 -0.00037131 -0.00526041 0 -0.000437094 -0.00531237 0 -0.000501556 -0.00537353 0 - -0.000564128 -0.00544404 0 -0.000624081 -0.00552401 0 -0.000680509 -0.00561345 0 -0.000732319 -0.00571222 0 - -0.000778241 -0.00581995 0 -0.000816863 -0.00593595 0 -0.000846699 -0.00605914 0 -0.000866308 -0.00618799 0 - -0.000874446 -0.00632044 0 -0.000870266 -0.00645395 0 -0.000853512 -0.00658565 0 -0.000824666 -0.0067125 0 - -0.000785003 -0.00683166 0 -0.000736484 -0.00694081 0 -0.000681527 -0.00703839 0 -0.000622694 -0.00712368 0 - -0.0005624 -0.00719679 0 -0.000502696 -0.0072584 0 -0.000445161 -0.00730962 0 -0.00039089 -0.00735174 0 - -0.000340533 -0.00738606 0 -0.000294383 -0.00741386 0 -0.000252455 -0.00743623 0 -0.000214569 -0.00745416 0 - -0.000180415 -0.00746844 0 -0.000149602 -0.00747974 0 -0.0001217 -0.00748859 0 -9.62541e-05 -0.0074954 0 - -7.28087e-05 -0.0075005 0 -5.09094e-05 -0.00750413 0 -3.01083e-05 -0.00750646 0 -9.96333e-06 -0.00750759 0 - -3.82107e-05 -0.0050604 0 -0.000114627 -0.00506886 0 -0.000191017 -0.00508584 0 -0.000267328 -0.00511147 0 - -0.000343455 -0.00514594 0 -0.000419214 -0.00518949 0 -0.000494315 -0.0052424 0 -0.000568334 -0.00530501 0 - -0.000640678 -0.00537764 0 -0.000710552 -0.00546058 0 -0.000776926 -0.00555408 0 -0.000838511 -0.0056582 0 - -0.000893753 -0.00577281 0 -0.000940851 -0.00589737 0 -0.000977834 -0.0060309 0 -0.00100269 -0.00617177 0 - -0.00101359 -0.00631762 0 -0.00100916 -0.00646537 0 -0.000988828 -0.00661131 0 -0.000953081 -0.00675142 0 - -0.000903587 -0.00688189 0 -0.000843066 -0.00699962 0 -0.0007749 -0.0071027 0 -0.000702625 -0.00719048 0 - -0.000629465 -0.00726345 0 -0.000558028 -0.00732288 0 -0.000490197 -0.00737051 0 -0.000427152 -0.00740817 0 - -0.00036949 -0.00743765 0 -0.000317357 -0.00746055 0 -0.000270586 -0.00747824 0 -0.000228808 -0.00749182 0 - -0.000191536 -0.00750221 0 -0.000158222 -0.0075101 0 -0.000128302 -0.00751605 0 -0.00010121 -0.00752048 0 - -7.63989e-05 -0.00752369 0 -5.33372e-05 -0.00752591 0 -3.15117e-05 -0.00752731 0 -1.04224e-05 -0.00752798 0 - -4.24423e-05 -0.00497975 0 -0.000127359 -0.00498818 0 -0.000212361 -0.00500513 0 -0.000297469 -0.00503076 0 - -0.000382647 -0.00506534 0 -0.000467776 -0.0051092 0 -0.000552619 -0.00516275 0 -0.000636788 -0.00522648 0 - -0.000719699 -0.00530091 0 -0.000800523 -0.00538661 0 -0.000878131 -0.00548407 0 -0.000951047 -0.00559371 0 - -0.00101741 -0.0057157 0 -0.00107496 -0.00584983 0 -0.00112109 -0.00599532 0 -0.00115303 -0.00615056 0 - -0.00116805 -0.00631291 0 -0.00116396 -0.00647861 0 -0.00113956 -0.0066428 0 -0.00109524 -0.0068 0 - -0.0010332 -0.00694485 0 -0.000957293 -0.00707309 0 -0.000872382 -0.00718231 0 -0.000783442 -0.00727208 0 - -0.000694806 -0.00734364 0 -0.000609756 -0.00739918 0 -0.000530445 -0.00744135 0 -0.000458033 -0.00747278 0 - -0.000392918 -0.00749582 0 -0.000334968 -0.00751247 0 -0.000283724 -0.00752434 0 -0.000238542 -0.00753268 0 - -0.000198697 -0.00753846 0 -0.000163449 -0.00754241 0 -0.000132074 -0.00754505 0 -0.000103886 -0.00754677 0 - -7.82396e-05 -0.00754785 0 -5.45288e-05 -0.00754851 0 -3.21788e-05 -0.00754888 0 -1.06369e-05 -0.00754904 0 - -4.66419e-05 -0.00489066 0 -0.000140006 -0.00489898 0 -0.000233599 -0.00491573 0 -0.00032754 -0.00494111 0 - -0.00042189 -0.00497546 0 -0.000516623 -0.00501921 0 -0.000611596 -0.00507292 0 -0.0007065 -0.00513724 0 - -0.000800808 -0.00521294 0 -0.000893709 -0.00530086 0 -0.000984028 -0.00540189 0 -0.00107014 -0.00551686 0 - -0.00114987 -0.00564645 0 -0.00122047 -0.00579094 0 -0.00127856 -0.00594998 0 -0.00132029 -0.00612222 0 - -0.00134164 -0.00630487 0 -0.00133905 -0.00649335 0 -0.00131022 -0.00668129 0 -0.00125513 -0.00686093 0 - -0.00117668 -0.00702442 0 -0.00108052 -0.00716558 0 -0.000973894 -0.00728135 0 -0.000863955 -0.00737192 0 - -0.000756561 -0.00743983 0 -0.000655746 -0.00748885 0 -0.000563794 -0.00752295 0 -0.000481617 -0.00754577 0 - -0.000409179 -0.00756038 0 -0.000345874 -0.00756916 0 -0.0002908 -0.00757396 0 -0.000242938 -0.0075761 0 - -0.000201263 -0.00757656 0 -0.000164803 -0.00757602 0 -0.00013266 -0.00757495 0 -0.00010402 -0.00757369 0 - -7.81447e-05 -0.00757245 0 -5.43596e-05 -0.00757141 0 -3.20379e-05 -0.00757065 0 -1.05834e-05 -0.00757026 0 - -5.07613e-05 -0.00479326 0 -0.000152423 -0.00480136 0 -0.00025449 -0.00481769 0 -0.000357203 -0.0048425 0 - -0.000460748 -0.00487618 0 -0.00056523 -0.00491928 0 -0.000670642 -0.00497247 0 -0.000776807 -0.00503661 0 - -0.000883324 -0.00511273 0 -0.000989478 -0.00520201 0 -0.00109413 -0.00530577 0 -0.0011956 -0.00542541 0 - -0.00129148 -0.00556229 0 -0.00137849 -0.00571749 0 -0.00145238 -0.00589146 0 -0.00150791 -0.00608349 0 - -0.00153918 -0.00629097 0 -0.00154038 -0.00650864 0 -0.00150714 -0.00672806 0 -0.00143838 -0.006938 0 - -0.00133786 -0.00712632 0 -0.00121423 -0.00728347 0 -0.00107871 -0.0074056 0 -0.000941923 -0.0074944 0 - -0.000811739 -0.00755493 0 -0.00069287 -0.00759343 0 -0.000587369 -0.00761581 0 -0.000495462 -0.00762699 0 - -0.000416307 -0.00763075 0 -0.00034855 -0.00762985 0 -0.000290663 -0.00762623 0 -0.000241146 -0.00762121 0 - -0.000198615 -0.00761566 0 -0.000161839 -0.00761016 0 -0.000129743 -0.00760505 0 -0.000101389 -0.00760058 0 - -7.59596e-05 -0.00759687 0 -5.27272e-05 -0.00759401 0 -3.10296e-05 -0.00759207 0 -1.02424e-05 -0.00759109 0 - -5.47422e-05 -0.00468776 0 -0.000164433 -0.00469551 0 -0.000274736 -0.00471117 0 -0.000386034 -0.00473501 0 - -0.000498667 -0.00476749 0 -0.000612909 -0.00480924 0 -0.000728933 -0.00486107 0 -0.000846762 -0.00492402 0 - -0.000966202 -0.00499937 0 -0.00108674 -0.00508867 0 -0.00120743 -0.00519376 0 -0.00132666 -0.00531672 0 - -0.00144195 -0.00545981 0 -0.00154964 -0.00562526 0 -0.00164456 -0.00581488 0 -0.0017198 -0.0060293 0 - -0.00176679 -0.00626689 0 -0.00177614 -0.00652218 0 -0.00173957 -0.00678433 0 -0.00165338 -0.00703668 0 - -0.00152215 -0.00725939 0 -0.00135981 -0.00743639 0 -0.00118482 -0.00756319 0 -0.00101329 -0.00764513 0 - -0.0008556 -0.00769206 0 -0.000716628 -0.00771414 0 -0.00059735 -0.00771988 0 -0.000496553 -0.00771563 0 - -0.000412039 -0.00770578 0 -0.000341355 -0.00769326 0 -0.000282157 -0.00767991 0 -0.000232368 -0.00766684 0 - -0.000190211 -0.00765472 0 -0.000154196 -0.00764389 0 -0.000123083 -0.00763453 0 -9.58344e-05 -0.0076267 0 - -7.15775e-05 -0.00762043 0 -4.956e-05 -0.0076157 0 -2.91109e-05 -0.00761253 0 -9.59916e-06 -0.00761093 0 - -5.85166e-05 -0.0045745 0 -0.000175832 -0.00458177 0 -0.000293987 -0.00459646 0 -0.00041353 -0.00461888 0 - -0.000534978 -0.00464954 0 -0.000658807 -0.00468912 0 -0.00078542 -0.00473855 0 -0.000915107 -0.00479902 0 - -0.00104798 -0.00487206 0 -0.00118387 -0.00495956 0 -0.00132218 -0.00506388 0 -0.00146165 -0.00518789 0 - -0.00160002 -0.00533496 0 -0.00173357 -0.00550888 0 -0.00185642 -0.00571349 0 -0.00195993 -0.00595195 0 - -0.00203206 -0.00622512 0 -0.00205781 -0.00652886 0 -0.00202164 -0.00685039 0 -0.00191343 -0.00716501 0 - -0.00173756 -0.00743816 0 -0.00151803 -0.0076395 0 -0.00128746 -0.00776563 0 -0.0010708 -0.00783089 0 - -0.000880748 -0.00785404 0 -0.00072069 -0.0078512 0 -0.000588852 -0.00783395 0 -0.000481361 -0.00780985 0 - -0.000393941 -0.00778349 0 -0.000322673 -0.0077575 0 -0.000264243 -0.00773329 0 -0.000215957 -0.00771153 0 - -0.000175664 -0.00769248 0 -0.000141652 -0.00767616 0 -0.000112558 -0.00766247 0 -8.72883e-05 -0.00765128 0 - -6.49558e-05 -0.00764244 0 -4.48243e-05 -0.00763584 0 -2.62548e-05 -0.00763141 0 -8.64247e-06 -0.00762917 0 - -6.20092e-05 -0.00445397 0 -0.000186389 -0.0044606 0 -0.000311852 -0.004474 0 -0.00043912 -0.00449452 0 - -0.000568908 -0.00452266 0 -0.00070192 -0.00455916 0 -0.000838833 -0.00460499 0 -0.000980267 -0.00466146 0 - -0.00112674 -0.00473027 0 -0.00127857 -0.00481362 0 -0.00143577 -0.00491432 0 -0.00159774 -0.00503601 0 - -0.00176293 -0.00518327 0 -0.00192817 -0.00536178 0 -0.00208764 -0.00557826 0 -0.00223142 -0.0058399 0 - -0.0023437 -0.00615276 0 -0.00240141 -0.00651776 0 -0.00237573 -0.00692335 0 -0.00224115 -0.00733483 0 - -0.00199664 -0.00768873 0 -0.00168728 -0.00791782 0 -0.00137621 -0.00802894 0 -0.0011017 -0.00805876 0 - -0.000875903 -0.00804202 0 -0.000696533 -0.00800265 0 -0.000556006 -0.00795486 0 -0.000446098 -0.00790633 0 - -0.000359692 -0.00786083 0 -0.000291153 -0.00781997 0 -0.000236185 -0.00778422 0 -0.000191555 -0.00775351 0 - -0.000154836 -0.00772751 0 -0.000124189 -0.00770579 0 -9.8208e-05 -0.00768792 0 -7.58052e-05 -0.00767351 0 - -5.61333e-05 -0.00766222 0 -3.85267e-05 -0.0076538 0 -2.24415e-05 -0.0076481 0 -7.3584e-06 -0.00764517 0 - -6.51406e-05 -0.00432682 0 -0.000195863 -0.00433265 0 -0.000327912 -0.00434444 0 -0.000462189 -0.00436254 0 - -0.000599614 -0.00438744 0 -0.000741133 -0.00441986 0 -0.000887725 -0.00446079 0 -0.00104039 -0.00451157 0 - -0.00120013 -0.00457396 0 -0.00136792 -0.00465031 0 -0.00154458 -0.00474378 0 -0.0017306 -0.00485856 0 - -0.00192579 -0.00500034 0 -0.00212855 -0.00517673 0 -0.00233454 -0.00539785 0 -0.00253443 -0.00567665 0 - -0.00270992 -0.00602824 0 -0.00282841 -0.00646608 0 -0.0028387 -0.00699043 0 -0.00267881 -0.00756222 0 - -0.00232055 -0.0080641 0 -0.00185824 -0.00831411 0 -0.00142841 -0.00837354 0 -0.00108388 -0.0083332 0 - -0.000824632 -0.00825263 0 -0.000633533 -0.00816251 0 -0.00049254 -0.00807652 0 -0.000387332 -0.00799979 0 - -0.000307577 -0.00793354 0 -0.000246063 -0.00787732 0 -0.000197787 -0.00783012 0 -0.000159242 -0.00779079 0 - -0.000127936 -0.00775825 0 -0.000102061 -0.00773156 0 -8.028e-05 -0.0077099 0 -6.15913e-05 -0.00769261 0 - -4.52455e-05 -0.00767913 0 -3.07075e-05 -0.00766903 0 -1.76261e-05 -0.00766204 0 -5.70802e-06 -0.00765824 0 - -6.7831e-05 -0.00419385 0 -0.000204009 -0.00419872 0 -0.000341746 -0.00420859 0 -0.000482111 -0.00422375 0 - -0.000626224 -0.00424468 0 -0.000775274 -0.00427204 0 -0.000930543 -0.00430675 0 -0.00109343 -0.00435006 0 - -0.00126548 -0.00440367 0 -0.00144839 -0.0044699 0 -0.00164402 -0.00455191 0 -0.0018543 -0.00465412 0 - -0.0020811 -0.00478279 0 -0.00232568 -0.00494694 0 -0.00258756 -0.00515975 0 -0.00286182 -0.0054406 0 - -0.00313313 -0.00581749 0 -0.00336359 -0.00632787 0 -0.00347187 -0.00701005 0 -0.00331483 -0.00785954 0 - -0.00274852 -0.00869135 0 -0.00199671 -0.00890098 0 -0.0013953 -0.00881791 0 -0.000980789 -0.00864787 0 - -0.000705211 -0.00847278 0 -0.000520425 -0.00831824 0 -0.00039329 -0.00818892 0 -0.000303114 -0.00808278 0 - -0.000237219 -0.0079962 0 -0.000187737 -0.00792565 0 -0.000149657 -0.00786814 0 -0.00011969 -0.00782128 0 - -9.56048e-05 -0.00778316 0 -7.58381e-05 -0.0077523 0 -5.92601e-05 -0.00772753 0 -4.50344e-05 -0.00770791 0 - -3.255e-05 -0.00769267 0 -2.14317e-05 -0.00768115 0 -1.16475e-05 -0.00767278 0 -3.55559e-06 -0.0076675 0 - -7.00051e-05 -0.00405602 0 -0.000210597 -0.00405978 0 -0.00035295 -0.00406743 0 -0.000498285 -0.00407921 0 - -0.000647898 -0.0040955 0 -0.000803196 -0.00411687 0 -0.000965743 -0.0041441 0 -0.00113731 -0.00417824 0 - -0.00131997 -0.00422077 0 -0.00151616 -0.0042737 0 -0.0017288 -0.00433984 0 -0.00196149 -0.00442322 0 - -0.00221862 -0.00452977 0 -0.00250551 -0.00466849 0 -0.00282821 -0.00485361 0 -0.00319216 -0.00510852 0 - -0.00359719 -0.00547324 0 -0.00402097 -0.00601788 0 -0.00437037 -0.00686237 0 -0.00436011 -0.00817453 0 - -0.00336199 -0.00994078 0 -0.00198479 -0.00978056 0 -0.0011753 -0.00934923 0 -0.00073876 -0.00896761 0 - -0.000494996 -0.00867239 0 -0.000349667 -0.00844875 0 -0.00025708 -0.00827813 0 -0.000194615 -0.00814621 0 - -0.000150448 -0.00804283 0 -0.000118007 -0.00796094 0 -9.34149e-05 -0.00789553 0 -7.4257e-05 -0.00784302 0 - -5.89552e-05 -0.0078008 0 -4.64266e-05 -0.00776695 0 -3.58878e-05 -0.00773999 0 -2.67363e-05 -0.00771882 0 - -1.84883e-05 -0.00770249 0 -1.0822e-05 -0.00769011 0 -3.97638e-06 -0.00768045 0 -4.22482e-07 -0.00767148 0 - -7.15969e-05 -0.00391441 0 -0.000215425 -0.00391696 0 -0.000361173 -0.00392215 0 -0.000510181 -0.00393015 0 - -0.000663886 -0.00394125 0 -0.000823868 -0.00395585 0 -0.000991917 -0.00397452 0 -0.00117011 -0.00399805 0 - -0.00136094 -0.00402748 0 -0.00156746 -0.00406429 0 -0.00179354 -0.00411053 0 -0.00204423 -0.00416915 0 - -0.00232637 -0.00424457 0 -0.00264952 -0.00434365 0 -0.00302759 -0.00447769 0 -0.00348144 -0.00466664 0 - -0.00404249 -0.00494905 0 -0.00475273 -0.00540804 0 -0.00562853 -0.00624701 0 -0.00639324 -0.00803545 0 - -0.00435455 -0.0131167 0 -0.00140516 -0.0109313 0 -0.000582349 -0.00983082 0 -0.000303953 -0.00920095 0 - -0.000186347 -0.00880042 0 -0.000126167 -0.00852623 0 -9.07498e-05 -0.00832866 0 -6.78169e-05 -0.00818108 0 - -5.19512e-05 -0.00806799 0 -4.04294e-05 -0.00797974 0 -3.17381e-05 -0.00791001 0 -2.49677e-05 -0.00785447 0 - -1.95324e-05 -0.00781009 0 -1.50253e-05 -0.0077747 0 -1.11283e-05 -0.00774668 0 -7.53462e-06 -0.00772487 0 - -3.84502e-06 -0.00770837 0 6.08528e-07 -0.00769635 0 6.98639e-06 -0.00768744 0 5.41957e-06 -0.00766648 0 - -7.25547e-05 -0.00377026 0 -0.000218332 -0.00377151 0 -0.000366135 -0.00377405 0 -0.000517381 -0.00377799 0 - -0.000673597 -0.00378348 0 -0.000836474 -0.00379075 0 -0.00100794 -0.0038001 0 -0.00119028 -0.00381194 0 - -0.00138622 -0.00382682 0 -0.0015992 -0.00384546 0 -0.00183366 -0.00386883 0 -0.00209553 -0.00389828 0 - -0.00239312 -0.00393571 0 -0.00273863 -0.00398385 0 -0.0031512 -0.00404685 0 -0.00366353 -0.0041313 0 - -0.00433858 -0.0042483 0 -0.00531892 -0.00441821 0 -0.00699778 -0.00468217 0 -0.0106997 -0.00513364 0 - -7.2844e-05 -0.00362486 0 -0.000219215 -0.00362476 0 -0.000367654 -0.00362456 0 -0.000519611 -0.00362428 0 - -0.000676646 -0.00362394 0 -0.000840488 -0.00362357 0 -0.00101311 -0.00362319 0 -0.00119683 -0.00362281 0 - -0.00139445 -0.0036224 0 -0.00160946 -0.00362188 0 -0.00184636 -0.00362105 0 -0.00211111 -0.00361944 0 - -0.00241194 -0.00361613 0 -0.00276067 -0.00360919 0 -0.00317504 -0.00359458 0 -0.00368289 -0.00356339 0 - -0.0043294 -0.00349463 0 -0.0051866 -0.00333435 0 -0.00634395 -0.00292983 0 -0.00772562 -0.00180237 0 - -7.24506e-05 -0.00347957 0 -0.000218029 -0.00347811 0 -0.000365656 -0.00347515 0 -0.000516764 -0.00347063 0 - -0.000672888 -0.00346444 0 -0.000835721 -0.0034564 0 -0.00100718 -0.00344628 0 -0.00118948 -0.00343369 0 - -0.00138529 -0.00341808 0 -0.00159785 -0.00339863 0 -0.00183121 -0.00337404 0 -0.00209061 -0.00334231 0 - -0.00238286 -0.00330017 0 -0.00271708 -0.00324219 0 -0.0031054 -0.00315888 0 -0.00356358 -0.00303307 0 - -0.00410954 -0.00283248 0 -0.00475412 -0.00249472 0 -0.0054658 -0.00190044 0 -0.00606849 -0.000847389 0 - -7.13805e-05 -0.00333574 0 -0.000214793 -0.00333295 0 -0.000360176 -0.0033273 0 -0.0005089 -0.00331865 0 - -0.000662422 -0.00330677 0 -0.000822331 -0.00329133 0 -0.000990396 -0.00327183 0 -0.00116863 -0.00324759 0 - -0.00135939 -0.00321762 0 -0.00156542 -0.0031805 0 -0.00179004 -0.00313417 0 -0.00203724 -0.00307557 0 - -0.00231182 -0.00300007 0 -0.00261937 -0.00290052 0 -0.00296592 -0.00276566 0 -0.00335649 -0.00257753 0 - -0.00379105 -0.0023075 0 -0.00425456 -0.0019116 0 -0.00469662 -0.00132982 0 -0.00500298 -0.000508958 0 - -6.96589e-05 -0.0031947 0 -0.000209587 -0.00319065 0 -0.000351356 -0.00318244 0 -0.000496238 -0.00316989 0 - -0.00064557 -0.00315267 0 -0.000800784 -0.00313031 0 -0.000963442 -0.00310213 0 -0.00113527 -0.00306723 0 - -0.0013182 -0.00302431 0 -0.0015144 -0.00297159 0 -0.00172628 -0.00290658 0 -0.00195651 -0.00282574 0 - -0.00220781 -0.00272402 0 -0.00248267 -0.00259417 0 -0.00278241 -0.00242573 0 -0.00310542 -0.00220388 0 - -0.00344361 -0.0019084 0 -0.00377644 -0.00151436 0 -0.00406315 -0.000998285 0 -0.00423989 -0.000357398 0 - -6.73277e-05 -0.00305771 0 -0.000202538 -0.00305249 0 -0.000339423 -0.00304194 0 -0.000479127 -0.00302581 0 - -0.000622835 -0.00300371 0 -0.000771793 -0.00297509 0 -0.000927317 -0.00293916 0 -0.00109081 -0.00289487 0 - -0.00126375 -0.00284079 0 -0.00144769 -0.00277497 0 -0.00164419 -0.00269481 0 -0.00185469 -0.00259679 0 - -0.00208025 -0.00247611 0 -0.00232108 -0.0023264 0 -0.00257563 -0.00213921 0 -0.00283917 -0.00190385 0 - -0.00310154 -0.00160787 0 -0.00334444 -0.00123916 0 -0.00353966 -0.000791559 0 -0.00365199 -0.000275055 0 - -6.44411e-05 -0.00292594 0 -0.000193816 -0.00291968 0 -0.000324672 -0.00290702 0 -0.00045801 -0.00288769 0 - -0.000594851 -0.00286128 0 -0.000736235 -0.00282718 0 -0.000883225 -0.00278456 0 -0.00103689 -0.00273232 0 - -0.0011983 -0.002669 0 -0.00136843 -0.00259269 0 -0.0015481 -0.00250092 0 -0.00173781 -0.00239047 0 - -0.00193743 -0.00225725 0 -0.00214576 -0.00209611 0 -0.00235986 -0.00190084 0 -0.00257408 -0.00166446 0 - -0.00277892 -0.00138006 0 -0.00296013 -0.00104285 0 -0.00309905 -0.000653734 0 -0.00317573 -0.000223866 0 - -6.10622e-05 -0.00280044 0 -0.000183612 -0.00279326 0 -0.000307438 -0.00277876 0 -0.000433392 -0.00275666 0 - -0.000562323 -0.00272654 0 -0.000695071 -0.00268779 0 -0.000832454 -0.00263958 0 -0.000975245 -0.00258084 0 - -0.00112412 -0.00251019 0 -0.00127961 -0.00242588 0 -0.00144197 -0.0023257 0 -0.00161102 -0.00220694 0 - -0.00178589 -0.0020663 0 -0.00196467 -0.00189993 0 -0.00214398 -0.0017036 0 -0.00231838 -0.00147308 0 - -0.00247993 -0.00120504 0 -0.00261812 -0.000898468 0 -0.00272067 -0.000556655 0 -0.00277582 -0.000189109 0 - -5.72578e-05 -0.00268212 0 -0.000172132 -0.00267415 0 -0.000288076 -0.00265809 0 -0.000405797 -0.00263366 0 - -0.000525977 -0.00260044 0 -0.000649271 -0.00255785 0 -0.000776277 -0.00250513 0 -0.000907507 -0.00244127 0 - -0.00104334 -0.00236505 0 -0.00118394 -0.00227493 0 -0.00132916 -0.00216907 0 -0.00147841 -0.00204528 0 - -0.00163042 -0.00190107 0 -0.00178307 -0.00173373 0 -0.00193301 -0.00154055 0 -0.00207552 -0.00131923 0 - -0.0022043 -0.00106856 0 -0.00231174 -0.000789317 0 -0.00238969 -0.000485312 0 -0.0024309 -0.000164086 0 - -5.30955e-05 -0.00257177 0 -0.00015958 -0.00256315 0 -0.00026694 -0.00254579 0 -0.000375741 -0.00251943 0 - -0.000486518 -0.0024837 0 -0.000599759 -0.00243805 0 -0.000715875 -0.0023818 0 -0.000835168 -0.00231407 0 - -0.000957782 -0.0022338 0 -0.00108363 -0.00213973 0 -0.00121232 -0.00203036 0 -0.00134302 -0.00190404 0 - -0.00147434 -0.00175897 0 -0.00160415 -0.00159337 0 -0.00172948 -0.00140563 0 -0.00184639 -0.00119474 0 - -0.00195001 -0.000960653 0 -0.00203487 -0.000704929 0 -0.00209544 -0.000431188 0 -0.0021271 -0.000145338 0 - -4.86396e-05 -0.00247003 0 -0.000146153 -0.00246089 0 -0.000244362 -0.00244248 0 -0.000343709 -0.00241459 0 - -0.000444597 -0.00237688 0 -0.000547372 -0.00232886 0 -0.000652296 -0.00226995 0 -0.00075951 -0.00219941 0 - -0.00086899 -0.00211637 0 -0.00098049 -0.00201981 0 -0.00109347 -0.0019086 0 -0.00120702 -0.00178155 0 - -0.00131975 -0.00163742 0 -0.00142973 -0.00147513 0 -0.00153438 -0.00129388 0 -0.00163054 -0.00109343 0 - -0.00171449 -0.000874385 0 -0.00178228 -0.000638558 0 -0.0018301 -0.000389172 0 -0.0018549 -0.000130895 0 - -4.39496e-05 -0.00237744 0 -0.00013203 -0.00236788 0 -0.000220647 -0.00234866 0 -0.000310135 -0.00231958 0 - -0.000400787 -0.00228035 0 -0.000492836 -0.00223057 0 -0.000586427 -0.00216973 0 -0.000681585 -0.00209726 0 - -0.000778178 -0.00201245 0 -0.000875867 -0.00191454 0 -0.000974057 -0.0018027 0 -0.00107184 -0.00167612 0 - -0.00116792 -0.00153403 0 -0.00126061 -0.00137586 0 -0.00134778 -0.00120133 0 -0.00142689 -0.0010107 0 - -0.00149515 -0.000804901 0 -0.00154966 -0.000585747 0 -0.00158777 -0.000356047 0 -0.00160744 -0.000119557 0 - -3.90783e-05 -0.00229441 0 -0.00011737 -0.00228454 0 -0.000196062 -0.0022647 0 -0.000275397 -0.00223472 0 - -0.000355581 -0.00219437 0 -0.000436759 -0.00214332 0 -0.000518991 -0.00208116 0 -0.000602226 -0.00200744 0 - -0.000686269 -0.00192164 0 -0.000770743 -0.00182319 0 -0.000855053 -0.00171155 0 -0.000938348 -0.0015862 0 - -0.00101949 -0.00144673 0 -0.00109703 -0.00129293 0 -0.00116923 -0.0011249 0 -0.00123411 -0.000943152 0 - -0.00128954 -0.00074877 0 -0.00133342 -0.00054348 0 -0.00136391 -0.000329713 0 -0.00137958 -0.000110553 0 - -3.40717e-05 -0.00222126 0 -0.000102311 -0.00221116 0 -0.000170833 -0.00219086 0 -0.000239811 -0.00216024 0 - -0.000309381 -0.0021191 0 -0.000379626 -0.00206717 0 -0.000450552 -0.00200415 0 -0.00052206 -0.00192971 0 - -0.000593929 -0.00184346 0 -0.000665782 -0.00174504 0 -0.000737064 -0.00163411 0 -0.000807014 -0.00151039 0 - -0.000874654 -0.00137375 0 -0.000938783 -0.00122423 0 -0.000998003 -0.00106217 0 -0.00105077 -0.000888237 0 - -0.00109547 -0.000703547 0 -0.0011306 -0.000509691 0 -0.00115485 -0.000308771 0 -0.0011673 -0.000103373 0 - -2.89694e-05 -0.00215822 0 -8.69681e-05 -0.00214796 0 -0.000145149 -0.00212736 0 -0.000203631 -0.00209629 0 - -0.000262505 -0.0020546 0 -0.000321814 -0.00200211 0 -0.000381529 -0.00193857 0 -0.000441534 -0.00186377 0 - -0.000501605 -0.00177745 0 -0.000561393 -0.0016794 0 -0.000620406 -0.00156945 0 -0.00067799 -0.00144752 0 - -0.000733329 -0.00131365 0 -0.000785448 -0.00116809 0 -0.000833233 -0.00101131 0 -0.000875484 -0.000844081 0 - -0.000910991 -0.000667488 0 -0.000938649 -0.000482966 0 -0.000957589 -0.000292306 0 -0.000967294 -9.76829e-05 0 - -2.38073e-05 -0.00210545 0 -7.14429e-05 -0.0020951 0 -0.000119164 -0.00207431 0 -0.000167059 -0.00204296 0 - -0.000215196 -0.00200093 0 -0.000263596 -0.00194808 0 -0.000312216 -0.00188427 0 -0.000360941 -0.00180935 0 - -0.000409564 -0.00172318 0 -0.000457781 -0.00162567 0 -0.000505175 -0.00151678 0 -0.00055121 -0.00139657 0 - -0.000595225 -0.00126524 0 -0.000636445 -0.00112316 0 -0.000673996 -0.000970905 0 -0.000706944 -0.000809288 0 - -0.000734359 -0.000639358 0 -0.000755417 -0.00046238 0 -0.000769565 -0.000279806 0 -0.000776711 -9.33318e-05 0 - -1.86241e-05 -0.00206302 0 -5.58318e-05 -0.00205269 0 -9.30063e-05 -0.00203183 0 -0.000130246 -0.00200031 0 - -0.000167623 -0.00195806 0 -0.000205156 -0.00190501 0 -0.0002428 -0.00184107 0 -0.000280448 -0.00176617 0 - -0.000317929 -0.00168026 0 -0.000354991 -0.00158332 0 -0.000391305 -0.00147542 0 -0.00042645 -0.00135675 0 - -0.000459918 -0.00122758 0 -0.000491112 -0.0010884 0 -0.000519362 -0.000939861 0 -0.000543937 -0.000782809 0 - -0.000564082 -0.000618277 0 -0.000579097 -0.000447388 0 -0.000588541 -0.000271205 0 -0.000592771 -9.0556e-05 0 - -1.34815e-05 -0.00203091 0 -4.02538e-05 -0.00202082 0 -6.67833e-05 -0.002 0 -9.32939e-05 -0.00196839 0 - -0.000119896 -0.001926 0 -0.000146605 -0.00187283 0 -0.000173378 -0.00180884 0 -0.000200125 -0.00173401 0 - -0.000226711 -0.00164835 0 -0.000252951 -0.00155192 0 -0.000278603 -0.00144486 0 -0.000303368 -0.0013274 0 - -0.000326882 -0.00119994 0 -0.000348723 -0.00106301 0 -0.000368403 -0.000917326 0 -0.00038536 -0.000763812 0 - -0.000398938 -0.000603552 0 -0.000408345 -0.000437692 0 -0.000412732 -0.000267069 0 -0.000412158 -9.10359e-05 0 - -8.52962e-06 -0.0020089 0 -2.49186e-05 -0.00199967 0 -4.05793e-05 -0.00197896 0 -5.62505e-05 -0.00194725 0 - -7.20616e-05 -0.00190473 0 -8.79911e-05 -0.00185146 0 -0.000103982 -0.00178744 0 -0.000119963 -0.00171268 0 - -0.00013584 -0.00162722 0 -0.000151497 -0.00153116 0 -0.000166789 -0.00142468 0 -0.000181535 -0.00130807 0 - -0.000195521 -0.00118177 0 -0.000208497 -0.00104636 0 -0.000220166 -0.000902624 0 -0.000230163 -0.00075156 0 - -0.000237963 -0.000594426 0 -0.000242614 -0.000432758 0 -0.000241885 -0.000268345 0 -0.000229339 -0.000102881 0 - -4.24802e-06 -0.00199612 0 -1.03116e-05 -0.00198999 0 -1.43648e-05 -0.00196892 0 -1.90672e-05 -0.00193691 0 - -2.41086e-05 -0.00189421 0 -2.93152e-05 -0.00184084 0 -3.45978e-05 -0.00177678 0 -3.9903e-05 -0.00170205 0 - -4.51882e-05 -0.00161669 0 -5.04103e-05 -0.00152081 0 -5.55204e-05 -0.00141462 0 -6.0462e-05 -0.00129844 0 - -6.51707e-05 -0.00117271 0 -6.95759e-05 -0.00103804 0 -7.36014e-05 -0.000895248 0 -7.71619e-05 -0.000745379 0 - -8.01357e-05 -0.000589833 0 -8.22646e-05 -0.00043057 0 -8.28555e-05 -0.000270671 0 -2.1108e-05 -0.00012586 0 - - - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - - - - - 0 0 0 0.025 0 0 0 0.025 0 0.025 0.025 0 - 0.05 0 0 0.05 0.025 0 0.075 0 0 0.075 0.025 0 - 0.1 0 0 0.1 0.025 0 0.125 0 0 0.125 0.025 0 - 0.15 0 0 0.15 0.025 0 0.175 0 0 0.175 0.025 0 - 0.2 0 0 0.2 0.025 0 0.225 0 0 0.225 0.025 0 - 0.25 0 0 0.25 0.025 0 0.275 0 0 0.275 0.025 0 - 0.3 0 0 0.3 0.025 0 0.325 0 0 0.325 0.025 0 - 0.35 0 0 0.35 0.025 0 0.375 0 0 0.375 0.025 0 - 0.4 0 0 0.4 0.025 0 0.425 0 0 0.425 0.025 0 - 0.45 0 0 0.45 0.025 0 0.475 0 0 0.475 0.025 0 - 0.5 0 0 0.5 0.025 0 0.525 0 0 0.525 0.025 0 - 0.55 0 0 0.55 0.025 0 0.575 0 0 0.575 0.025 0 - 0.6 0 0 0.6 0.025 0 0.625 0 0 0.625 0.025 0 - 0.65 0 0 0.65 0.025 0 0.675 0 0 0.675 0.025 0 - 0.7 0 0 0.7 0.025 0 0.725 0 0 0.725 0.025 0 - 0.75 0 0 0.75 0.025 0 0.775 0 0 0.775 0.025 0 - 0.8 0 0 0.8 0.025 0 0.825 0 0 0.825 0.025 0 - 0.85 0 0 0.85 0.025 0 0.875 0 0 0.875 0.025 0 - 0.9 0 0 0.9 0.025 0 0.925 0 0 0.925 0.025 0 - 0.95 0 0 0.95 0.025 0 0.975 0 0 0.975 0.025 0 - 1 0 0 1 0.025 0 0 0.05 0 0.025 0.05 0 - 0.05 0.05 0 0.075 0.05 0 0.1 0.05 0 0.125 0.05 0 - 0.15 0.05 0 0.175 0.05 0 0.2 0.05 0 0.225 0.05 0 - 0.25 0.05 0 0.275 0.05 0 0.3 0.05 0 0.325 0.05 0 - 0.35 0.05 0 0.375 0.05 0 0.4 0.05 0 0.425 0.05 0 - 0.45 0.05 0 0.475 0.05 0 0.5 0.05 0 0.525 0.05 0 - 0.55 0.05 0 0.575 0.05 0 0.6 0.05 0 0.625 0.05 0 - 0.65 0.05 0 0.675 0.05 0 0.7 0.05 0 0.725 0.05 0 - 0.75 0.05 0 0.775 0.05 0 0.8 0.05 0 0.825 0.05 0 - 0.85 0.05 0 0.875 0.05 0 0.9 0.05 0 0.925 0.05 0 - 0.95 0.05 0 0.975 0.05 0 1 0.05 0 0 0.075 0 - 0.025 0.075 0 0.05 0.075 0 0.075 0.075 0 0.1 0.075 0 - 0.125 0.075 0 0.15 0.075 0 0.175 0.075 0 0.2 0.075 0 - 0.225 0.075 0 0.25 0.075 0 0.275 0.075 0 0.3 0.075 0 - 0.325 0.075 0 0.35 0.075 0 0.375 0.075 0 0.4 0.075 0 - 0.425 0.075 0 0.45 0.075 0 0.475 0.075 0 0.5 0.075 0 - 0.525 0.075 0 0.55 0.075 0 0.575 0.075 0 0.6 0.075 0 - 0.625 0.075 0 0.65 0.075 0 0.675 0.075 0 0.7 0.075 0 - 0.725 0.075 0 0.75 0.075 0 0.775 0.075 0 0.8 0.075 0 - 0.825 0.075 0 0.85 0.075 0 0.875 0.075 0 0.9 0.075 0 - 0.925 0.075 0 0.95 0.075 0 0.975 0.075 0 1 0.075 0 - 0 0.1 0 0.025 0.1 0 0.05 0.1 0 0.075 0.1 0 - 0.1 0.1 0 0.125 0.1 0 0.15 0.1 0 0.175 0.1 0 - 0.2 0.1 0 0.225 0.1 0 0.25 0.1 0 0.275 0.1 0 - 0.3 0.1 0 0.325 0.1 0 0.35 0.1 0 0.375 0.1 0 - 0.4 0.1 0 0.425 0.1 0 0.45 0.1 0 0.475 0.1 0 - 0.5 0.1 0 0.525 0.1 0 0.55 0.1 0 0.575 0.1 0 - 0.6 0.1 0 0.625 0.1 0 0.65 0.1 0 0.675 0.1 0 - 0.7 0.1 0 0.725 0.1 0 0.75 0.1 0 0.775 0.1 0 - 0.8 0.1 0 0.825 0.1 0 0.85 0.1 0 0.875 0.1 0 - 0.9 0.1 0 0.925 0.1 0 0.95 0.1 0 0.975 0.1 0 - 1 0.1 0 0 0.125 0 0.025 0.125 0 0.05 0.125 0 - 0.075 0.125 0 0.1 0.125 0 0.125 0.125 0 0.15 0.125 0 - 0.175 0.125 0 0.2 0.125 0 0.225 0.125 0 0.25 0.125 0 - 0.275 0.125 0 0.3 0.125 0 0.325 0.125 0 0.35 0.125 0 - 0.375 0.125 0 0.4 0.125 0 0.425 0.125 0 0.45 0.125 0 - 0.475 0.125 0 0.5 0.125 0 0.525 0.125 0 0.55 0.125 0 - 0.575 0.125 0 0.6 0.125 0 0.625 0.125 0 0.65 0.125 0 - 0.675 0.125 0 0.7 0.125 0 0.725 0.125 0 0.75 0.125 0 - 0.775 0.125 0 0.8 0.125 0 0.825 0.125 0 0.85 0.125 0 - 0.875 0.125 0 0.9 0.125 0 0.925 0.125 0 0.95 0.125 0 - 0.975 0.125 0 1 0.125 0 0 0.15 0 0.025 0.15 0 - 0.05 0.15 0 0.075 0.15 0 0.1 0.15 0 0.125 0.15 0 - 0.15 0.15 0 0.175 0.15 0 0.2 0.15 0 0.225 0.15 0 - 0.25 0.15 0 0.275 0.15 0 0.3 0.15 0 0.325 0.15 0 - 0.35 0.15 0 0.375 0.15 0 0.4 0.15 0 0.425 0.15 0 - 0.45 0.15 0 0.475 0.15 0 0.5 0.15 0 0.525 0.15 0 - 0.55 0.15 0 0.575 0.15 0 0.6 0.15 0 0.625 0.15 0 - 0.65 0.15 0 0.675 0.15 0 0.7 0.15 0 0.725 0.15 0 - 0.75 0.15 0 0.775 0.15 0 0.8 0.15 0 0.825 0.15 0 - 0.85 0.15 0 0.875 0.15 0 0.9 0.15 0 0.925 0.15 0 - 0.95 0.15 0 0.975 0.15 0 1 0.15 0 0 0.175 0 - 0.025 0.175 0 0.05 0.175 0 0.075 0.175 0 0.1 0.175 0 - 0.125 0.175 0 0.15 0.175 0 0.175 0.175 0 0.2 0.175 0 - 0.225 0.175 0 0.25 0.175 0 0.275 0.175 0 0.3 0.175 0 - 0.325 0.175 0 0.35 0.175 0 0.375 0.175 0 0.4 0.175 0 - 0.425 0.175 0 0.45 0.175 0 0.475 0.175 0 0.5 0.175 0 - 0.525 0.175 0 0.55 0.175 0 0.575 0.175 0 0.6 0.175 0 - 0.625 0.175 0 0.65 0.175 0 0.675 0.175 0 0.7 0.175 0 - 0.725 0.175 0 0.75 0.175 0 0.775 0.175 0 0.8 0.175 0 - 0.825 0.175 0 0.85 0.175 0 0.875 0.175 0 0.9 0.175 0 - 0.925 0.175 0 0.95 0.175 0 0.975 0.175 0 1 0.175 0 - 0 0.2 0 0.025 0.2 0 0.05 0.2 0 0.075 0.2 0 - 0.1 0.2 0 0.125 0.2 0 0.15 0.2 0 0.175 0.2 0 - 0.2 0.2 0 0.225 0.2 0 0.25 0.2 0 0.275 0.2 0 - 0.3 0.2 0 0.325 0.2 0 0.35 0.2 0 0.375 0.2 0 - 0.4 0.2 0 0.425 0.2 0 0.45 0.2 0 0.475 0.2 0 - 0.5 0.2 0 0.525 0.2 0 0.55 0.2 0 0.575 0.2 0 - 0.6 0.2 0 0.625 0.2 0 0.65 0.2 0 0.675 0.2 0 - 0.7 0.2 0 0.725 0.2 0 0.75 0.2 0 0.775 0.2 0 - 0.8 0.2 0 0.825 0.2 0 0.85 0.2 0 0.875 0.2 0 - 0.9 0.2 0 0.925 0.2 0 0.95 0.2 0 0.975 0.2 0 - 1 0.2 0 0 0.225 0 0.025 0.225 0 0.05 0.225 0 - 0.075 0.225 0 0.1 0.225 0 0.125 0.225 0 0.15 0.225 0 - 0.175 0.225 0 0.2 0.225 0 0.225 0.225 0 0.25 0.225 0 - 0.275 0.225 0 0.3 0.225 0 0.325 0.225 0 0.35 0.225 0 - 0.375 0.225 0 0.4 0.225 0 0.425 0.225 0 0.45 0.225 0 - 0.475 0.225 0 0.5 0.225 0 0.525 0.225 0 0.55 0.225 0 - 0.575 0.225 0 0.6 0.225 0 0.625 0.225 0 0.65 0.225 0 - 0.675 0.225 0 0.7 0.225 0 0.725 0.225 0 0.75 0.225 0 - 0.775 0.225 0 0.8 0.225 0 0.825 0.225 0 0.85 0.225 0 - 0.875 0.225 0 0.9 0.225 0 0.925 0.225 0 0.95 0.225 0 - 0.975 0.225 0 1 0.225 0 0 0.25 0 0.025 0.25 0 - 0.05 0.25 0 0.075 0.25 0 0.1 0.25 0 0.125 0.25 0 - 0.15 0.25 0 0.175 0.25 0 0.2 0.25 0 0.225 0.25 0 - 0.25 0.25 0 0.275 0.25 0 0.3 0.25 0 0.325 0.25 0 - 0.35 0.25 0 0.375 0.25 0 0.4 0.25 0 0.425 0.25 0 - 0.45 0.25 0 0.475 0.25 0 0.5 0.25 0 0.525 0.25 0 - 0.55 0.25 0 0.575 0.25 0 0.6 0.25 0 0.625 0.25 0 - 0.65 0.25 0 0.675 0.25 0 0.7 0.25 0 0.725 0.25 0 - 0.75 0.25 0 0.775 0.25 0 0.8 0.25 0 0.825 0.25 0 - 0.85 0.25 0 0.875 0.25 0 0.9 0.25 0 0.925 0.25 0 - 0.95 0.25 0 0.975 0.25 0 1 0.25 0 0 0.275 0 - 0.025 0.275 0 0.05 0.275 0 0.075 0.275 0 0.1 0.275 0 - 0.125 0.275 0 0.15 0.275 0 0.175 0.275 0 0.2 0.275 0 - 0.225 0.275 0 0.25 0.275 0 0.275 0.275 0 0.3 0.275 0 - 0.325 0.275 0 0.35 0.275 0 0.375 0.275 0 0.4 0.275 0 - 0.425 0.275 0 0.45 0.275 0 0.475 0.275 0 0.5 0.275 0 - 0.525 0.275 0 0.55 0.275 0 0.575 0.275 0 0.6 0.275 0 - 0.625 0.275 0 0.65 0.275 0 0.675 0.275 0 0.7 0.275 0 - 0.725 0.275 0 0.75 0.275 0 0.775 0.275 0 0.8 0.275 0 - 0.825 0.275 0 0.85 0.275 0 0.875 0.275 0 0.9 0.275 0 - 0.925 0.275 0 0.95 0.275 0 0.975 0.275 0 1 0.275 0 - 0 0.3 0 0.025 0.3 0 0.05 0.3 0 0.075 0.3 0 - 0.1 0.3 0 0.125 0.3 0 0.15 0.3 0 0.175 0.3 0 - 0.2 0.3 0 0.225 0.3 0 0.25 0.3 0 0.275 0.3 0 - 0.3 0.3 0 0.325 0.3 0 0.35 0.3 0 0.375 0.3 0 - 0.4 0.3 0 0.425 0.3 0 0.45 0.3 0 0.475 0.3 0 - 0.5 0.3 0 0.525 0.3 0 0.55 0.3 0 0.575 0.3 0 - 0.6 0.3 0 0.625 0.3 0 0.65 0.3 0 0.675 0.3 0 - 0.7 0.3 0 0.725 0.3 0 0.75 0.3 0 0.775 0.3 0 - 0.8 0.3 0 0.825 0.3 0 0.85 0.3 0 0.875 0.3 0 - 0.9 0.3 0 0.925 0.3 0 0.95 0.3 0 0.975 0.3 0 - 1 0.3 0 0 0.325 0 0.025 0.325 0 0.05 0.325 0 - 0.075 0.325 0 0.1 0.325 0 0.125 0.325 0 0.15 0.325 0 - 0.175 0.325 0 0.2 0.325 0 0.225 0.325 0 0.25 0.325 0 - 0.275 0.325 0 0.3 0.325 0 0.325 0.325 0 0.35 0.325 0 - 0.375 0.325 0 0.4 0.325 0 0.425 0.325 0 0.45 0.325 0 - 0.475 0.325 0 0.5 0.325 0 0.525 0.325 0 0.55 0.325 0 - 0.575 0.325 0 0.6 0.325 0 0.625 0.325 0 0.65 0.325 0 - 0.675 0.325 0 0.7 0.325 0 0.725 0.325 0 0.75 0.325 0 - 0.775 0.325 0 0.8 0.325 0 0.825 0.325 0 0.85 0.325 0 - 0.875 0.325 0 0.9 0.325 0 0.925 0.325 0 0.95 0.325 0 - 0.975 0.325 0 1 0.325 0 0 0.35 0 0.025 0.35 0 - 0.05 0.35 0 0.075 0.35 0 0.1 0.35 0 0.125 0.35 0 - 0.15 0.35 0 0.175 0.35 0 0.2 0.35 0 0.225 0.35 0 - 0.25 0.35 0 0.275 0.35 0 0.3 0.35 0 0.325 0.35 0 - 0.35 0.35 0 0.375 0.35 0 0.4 0.35 0 0.425 0.35 0 - 0.45 0.35 0 0.475 0.35 0 0.5 0.35 0 0.525 0.35 0 - 0.55 0.35 0 0.575 0.35 0 0.6 0.35 0 0.625 0.35 0 - 0.65 0.35 0 0.675 0.35 0 0.7 0.35 0 0.725 0.35 0 - 0.75 0.35 0 0.775 0.35 0 0.8 0.35 0 0.825 0.35 0 - 0.85 0.35 0 0.875 0.35 0 0.9 0.35 0 0.925 0.35 0 - 0.95 0.35 0 0.975 0.35 0 1 0.35 0 0 0.375 0 - 0.025 0.375 0 0.05 0.375 0 0.075 0.375 0 0.1 0.375 0 - 0.125 0.375 0 0.15 0.375 0 0.175 0.375 0 0.2 0.375 0 - 0.225 0.375 0 0.25 0.375 0 0.275 0.375 0 0.3 0.375 0 - 0.325 0.375 0 0.35 0.375 0 0.375 0.375 0 0.4 0.375 0 - 0.425 0.375 0 0.45 0.375 0 0.475 0.375 0 0.5 0.375 0 - 0.525 0.375 0 0.55 0.375 0 0.575 0.375 0 0.6 0.375 0 - 0.625 0.375 0 0.65 0.375 0 0.675 0.375 0 0.7 0.375 0 - 0.725 0.375 0 0.75 0.375 0 0.775 0.375 0 0.8 0.375 0 - 0.825 0.375 0 0.85 0.375 0 0.875 0.375 0 0.9 0.375 0 - 0.925 0.375 0 0.95 0.375 0 0.975 0.375 0 1 0.375 0 - 0 0.4 0 0.025 0.4 0 0.05 0.4 0 0.075 0.4 0 - 0.1 0.4 0 0.125 0.4 0 0.15 0.4 0 0.175 0.4 0 - 0.2 0.4 0 0.225 0.4 0 0.25 0.4 0 0.275 0.4 0 - 0.3 0.4 0 0.325 0.4 0 0.35 0.4 0 0.375 0.4 0 - 0.4 0.4 0 0.425 0.4 0 0.45 0.4 0 0.475 0.4 0 - 0.5 0.4 0 0.525 0.4 0 0.55 0.4 0 0.575 0.4 0 - 0.6 0.4 0 0.625 0.4 0 0.65 0.4 0 0.675 0.4 0 - 0.7 0.4 0 0.725 0.4 0 0.75 0.4 0 0.775 0.4 0 - 0.8 0.4 0 0.825 0.4 0 0.85 0.4 0 0.875 0.4 0 - 0.9 0.4 0 0.925 0.4 0 0.95 0.4 0 0.975 0.4 0 - 1 0.4 0 0 0.425 0 0.025 0.425 0 0.05 0.425 0 - 0.075 0.425 0 0.1 0.425 0 0.125 0.425 0 0.15 0.425 0 - 0.175 0.425 0 0.2 0.425 0 0.225 0.425 0 0.25 0.425 0 - 0.275 0.425 0 0.3 0.425 0 0.325 0.425 0 0.35 0.425 0 - 0.375 0.425 0 0.4 0.425 0 0.425 0.425 0 0.45 0.425 0 - 0.475 0.425 0 0.5 0.425 0 0.525 0.425 0 0.55 0.425 0 - 0.575 0.425 0 0.6 0.425 0 0.625 0.425 0 0.65 0.425 0 - 0.675 0.425 0 0.7 0.425 0 0.725 0.425 0 0.75 0.425 0 - 0.775 0.425 0 0.8 0.425 0 0.825 0.425 0 0.85 0.425 0 - 0.875 0.425 0 0.9 0.425 0 0.925 0.425 0 0.95 0.425 0 - 0.975 0.425 0 1 0.425 0 0 0.45 0 0.025 0.45 0 - 0.05 0.45 0 0.075 0.45 0 0.1 0.45 0 0.125 0.45 0 - 0.15 0.45 0 0.175 0.45 0 0.2 0.45 0 0.225 0.45 0 - 0.25 0.45 0 0.275 0.45 0 0.3 0.45 0 0.325 0.45 0 - 0.35 0.45 0 0.375 0.45 0 0.4 0.45 0 0.425 0.45 0 - 0.45 0.45 0 0.475 0.45 0 0.5 0.45 0 0.525 0.45 0 - 0.55 0.45 0 0.575 0.45 0 0.6 0.45 0 0.625 0.45 0 - 0.65 0.45 0 0.675 0.45 0 0.7 0.45 0 0.725 0.45 0 - 0.75 0.45 0 0.775 0.45 0 0.8 0.45 0 0.825 0.45 0 - 0.85 0.45 0 0.875 0.45 0 0.9 0.45 0 0.925 0.45 0 - 0.95 0.45 0 0.975 0.45 0 1 0.45 0 0 0.475 0 - 0.025 0.475 0 0.05 0.475 0 0.075 0.475 0 0.1 0.475 0 - 0.125 0.475 0 0.15 0.475 0 0.175 0.475 0 0.2 0.475 0 - 0.225 0.475 0 0.25 0.475 0 0.275 0.475 0 0.3 0.475 0 - 0.325 0.475 0 0.35 0.475 0 0.375 0.475 0 0.4 0.475 0 - 0.425 0.475 0 0.45 0.475 0 0.475 0.475 0 0.5 0.475 0 - 0.525 0.475 0 0.55 0.475 0 0.575 0.475 0 0.6 0.475 0 - 0.625 0.475 0 0.65 0.475 0 0.675 0.475 0 0.7 0.475 0 - 0.725 0.475 0 0.75 0.475 0 0.775 0.475 0 0.8 0.475 0 - 0.825 0.475 0 0.85 0.475 0 0.875 0.475 0 0.9 0.475 0 - 0.925 0.475 0 0.95 0.475 0 0.975 0.475 0 1 0.475 0 - 0 0.5 0 0.025 0.5 0 0.05 0.5 0 0.075 0.5 0 - 0.1 0.5 0 0.125 0.5 0 0.15 0.5 0 0.175 0.5 0 - 0.2 0.5 0 0.225 0.5 0 0.25 0.5 0 0.275 0.5 0 - 0.3 0.5 0 0.325 0.5 0 0.35 0.5 0 0.375 0.5 0 - 0.4 0.5 0 0.425 0.5 0 0.45 0.5 0 0.475 0.5 0 - 0.5 0.5 0 0.525 0.5 0 0.55 0.5 0 0.575 0.5 0 - 0.6 0.5 0 0.625 0.5 0 0.65 0.5 0 0.675 0.5 0 - 0.7 0.5 0 0.725 0.5 0 0.75 0.5 0 0.775 0.5 0 - 0.8 0.5 0 0.825 0.5 0 0.85 0.5 0 0.875 0.5 0 - 0.9 0.5 0 0.925 0.5 0 0.95 0.5 0 0.975 0.5 0 - 1 0.5 0 0 0.525 0 0.025 0.525 0 0.05 0.525 0 - 0.075 0.525 0 0.1 0.525 0 0.125 0.525 0 0.15 0.525 0 - 0.175 0.525 0 0.2 0.525 0 0.225 0.525 0 0.25 0.525 0 - 0.275 0.525 0 0.3 0.525 0 0.325 0.525 0 0.35 0.525 0 - 0.375 0.525 0 0.4 0.525 0 0.425 0.525 0 0.45 0.525 0 - 0.475 0.525 0 0.5 0.525 0 0 0.55 0 0.025 0.55 0 - 0.05 0.55 0 0.075 0.55 0 0.1 0.55 0 0.125 0.55 0 - 0.15 0.55 0 0.175 0.55 0 0.2 0.55 0 0.225 0.55 0 - 0.25 0.55 0 0.275 0.55 0 0.3 0.55 0 0.325 0.55 0 - 0.35 0.55 0 0.375 0.55 0 0.4 0.55 0 0.425 0.55 0 - 0.45 0.55 0 0.475 0.55 0 0.5 0.55 0 0 0.575 0 - 0.025 0.575 0 0.05 0.575 0 0.075 0.575 0 0.1 0.575 0 - 0.125 0.575 0 0.15 0.575 0 0.175 0.575 0 0.2 0.575 0 - 0.225 0.575 0 0.25 0.575 0 0.275 0.575 0 0.3 0.575 0 - 0.325 0.575 0 0.35 0.575 0 0.375 0.575 0 0.4 0.575 0 - 0.425 0.575 0 0.45 0.575 0 0.475 0.575 0 0.5 0.575 0 - 0 0.6 0 0.025 0.6 0 0.05 0.6 0 0.075 0.6 0 - 0.1 0.6 0 0.125 0.6 0 0.15 0.6 0 0.175 0.6 0 - 0.2 0.6 0 0.225 0.6 0 0.25 0.6 0 0.275 0.6 0 - 0.3 0.6 0 0.325 0.6 0 0.35 0.6 0 0.375 0.6 0 - 0.4 0.6 0 0.425 0.6 0 0.45 0.6 0 0.475 0.6 0 - 0.5 0.6 0 0 0.625 0 0.025 0.625 0 0.05 0.625 0 - 0.075 0.625 0 0.1 0.625 0 0.125 0.625 0 0.15 0.625 0 - 0.175 0.625 0 0.2 0.625 0 0.225 0.625 0 0.25 0.625 0 - 0.275 0.625 0 0.3 0.625 0 0.325 0.625 0 0.35 0.625 0 - 0.375 0.625 0 0.4 0.625 0 0.425 0.625 0 0.45 0.625 0 - 0.475 0.625 0 0.5 0.625 0 0 0.65 0 0.025 0.65 0 - 0.05 0.65 0 0.075 0.65 0 0.1 0.65 0 0.125 0.65 0 - 0.15 0.65 0 0.175 0.65 0 0.2 0.65 0 0.225 0.65 0 - 0.25 0.65 0 0.275 0.65 0 0.3 0.65 0 0.325 0.65 0 - 0.35 0.65 0 0.375 0.65 0 0.4 0.65 0 0.425 0.65 0 - 0.45 0.65 0 0.475 0.65 0 0.5 0.65 0 0 0.675 0 - 0.025 0.675 0 0.05 0.675 0 0.075 0.675 0 0.1 0.675 0 - 0.125 0.675 0 0.15 0.675 0 0.175 0.675 0 0.2 0.675 0 - 0.225 0.675 0 0.25 0.675 0 0.275 0.675 0 0.3 0.675 0 - 0.325 0.675 0 0.35 0.675 0 0.375 0.675 0 0.4 0.675 0 - 0.425 0.675 0 0.45 0.675 0 0.475 0.675 0 0.5 0.675 0 - 0 0.7 0 0.025 0.7 0 0.05 0.7 0 0.075 0.7 0 - 0.1 0.7 0 0.125 0.7 0 0.15 0.7 0 0.175 0.7 0 - 0.2 0.7 0 0.225 0.7 0 0.25 0.7 0 0.275 0.7 0 - 0.3 0.7 0 0.325 0.7 0 0.35 0.7 0 0.375 0.7 0 - 0.4 0.7 0 0.425 0.7 0 0.45 0.7 0 0.475 0.7 0 - 0.5 0.7 0 0 0.725 0 0.025 0.725 0 0.05 0.725 0 - 0.075 0.725 0 0.1 0.725 0 0.125 0.725 0 0.15 0.725 0 - 0.175 0.725 0 0.2 0.725 0 0.225 0.725 0 0.25 0.725 0 - 0.275 0.725 0 0.3 0.725 0 0.325 0.725 0 0.35 0.725 0 - 0.375 0.725 0 0.4 0.725 0 0.425 0.725 0 0.45 0.725 0 - 0.475 0.725 0 0.5 0.725 0 0 0.75 0 0.025 0.75 0 - 0.05 0.75 0 0.075 0.75 0 0.1 0.75 0 0.125 0.75 0 - 0.15 0.75 0 0.175 0.75 0 0.2 0.75 0 0.225 0.75 0 - 0.25 0.75 0 0.275 0.75 0 0.3 0.75 0 0.325 0.75 0 - 0.35 0.75 0 0.375 0.75 0 0.4 0.75 0 0.425 0.75 0 - 0.45 0.75 0 0.475 0.75 0 0.5 0.75 0 0 0.775 0 - 0.025 0.775 0 0.05 0.775 0 0.075 0.775 0 0.1 0.775 0 - 0.125 0.775 0 0.15 0.775 0 0.175 0.775 0 0.2 0.775 0 - 0.225 0.775 0 0.25 0.775 0 0.275 0.775 0 0.3 0.775 0 - 0.325 0.775 0 0.35 0.775 0 0.375 0.775 0 0.4 0.775 0 - 0.425 0.775 0 0.45 0.775 0 0.475 0.775 0 0.5 0.775 0 - 0 0.8 0 0.025 0.8 0 0.05 0.8 0 0.075 0.8 0 - 0.1 0.8 0 0.125 0.8 0 0.15 0.8 0 0.175 0.8 0 - 0.2 0.8 0 0.225 0.8 0 0.25 0.8 0 0.275 0.8 0 - 0.3 0.8 0 0.325 0.8 0 0.35 0.8 0 0.375 0.8 0 - 0.4 0.8 0 0.425 0.8 0 0.45 0.8 0 0.475 0.8 0 - 0.5 0.8 0 0 0.825 0 0.025 0.825 0 0.05 0.825 0 - 0.075 0.825 0 0.1 0.825 0 0.125 0.825 0 0.15 0.825 0 - 0.175 0.825 0 0.2 0.825 0 0.225 0.825 0 0.25 0.825 0 - 0.275 0.825 0 0.3 0.825 0 0.325 0.825 0 0.35 0.825 0 - 0.375 0.825 0 0.4 0.825 0 0.425 0.825 0 0.45 0.825 0 - 0.475 0.825 0 0.5 0.825 0 0 0.85 0 0.025 0.85 0 - 0.05 0.85 0 0.075 0.85 0 0.1 0.85 0 0.125 0.85 0 - 0.15 0.85 0 0.175 0.85 0 0.2 0.85 0 0.225 0.85 0 - 0.25 0.85 0 0.275 0.85 0 0.3 0.85 0 0.325 0.85 0 - 0.35 0.85 0 0.375 0.85 0 0.4 0.85 0 0.425 0.85 0 - 0.45 0.85 0 0.475 0.85 0 0.5 0.85 0 0 0.875 0 - 0.025 0.875 0 0.05 0.875 0 0.075 0.875 0 0.1 0.875 0 - 0.125 0.875 0 0.15 0.875 0 0.175 0.875 0 0.2 0.875 0 - 0.225 0.875 0 0.25 0.875 0 0.275 0.875 0 0.3 0.875 0 - 0.325 0.875 0 0.35 0.875 0 0.375 0.875 0 0.4 0.875 0 - 0.425 0.875 0 0.45 0.875 0 0.475 0.875 0 0.5 0.875 0 - 0 0.9 0 0.025 0.9 0 0.05 0.9 0 0.075 0.9 0 - 0.1 0.9 0 0.125 0.9 0 0.15 0.9 0 0.175 0.9 0 - 0.2 0.9 0 0.225 0.9 0 0.25 0.9 0 0.275 0.9 0 - 0.3 0.9 0 0.325 0.9 0 0.35 0.9 0 0.375 0.9 0 - 0.4 0.9 0 0.425 0.9 0 0.45 0.9 0 0.475 0.9 0 - 0.5 0.9 0 0 0.925 0 0.025 0.925 0 0.05 0.925 0 - 0.075 0.925 0 0.1 0.925 0 0.125 0.925 0 0.15 0.925 0 - 0.175 0.925 0 0.2 0.925 0 0.225 0.925 0 0.25 0.925 0 - 0.275 0.925 0 0.3 0.925 0 0.325 0.925 0 0.35 0.925 0 - 0.375 0.925 0 0.4 0.925 0 0.425 0.925 0 0.45 0.925 0 - 0.475 0.925 0 0.5 0.925 0 0 0.95 0 0.025 0.95 0 - 0.05 0.95 0 0.075 0.95 0 0.1 0.95 0 0.125 0.95 0 - 0.15 0.95 0 0.175 0.95 0 0.2 0.95 0 0.225 0.95 0 - 0.25 0.95 0 0.275 0.95 0 0.3 0.95 0 0.325 0.95 0 - 0.35 0.95 0 0.375 0.95 0 0.4 0.95 0 0.425 0.95 0 - 0.45 0.95 0 0.475 0.95 0 0.5 0.95 0 0 0.975 0 - 0.025 0.975 0 0.05 0.975 0 0.075 0.975 0 0.1 0.975 0 - 0.125 0.975 0 0.15 0.975 0 0.175 0.975 0 0.2 0.975 0 - 0.225 0.975 0 0.25 0.975 0 0.275 0.975 0 0.3 0.975 0 - 0.325 0.975 0 0.35 0.975 0 0.375 0.975 0 0.4 0.975 0 - 0.425 0.975 0 0.45 0.975 0 0.475 0.975 0 0.5 0.975 0 - 0 1 0 0.025 1 0 0.05 1 0 0.075 1 0 - 0.1 1 0 0.125 1 0 0.15 1 0 0.175 1 0 - 0.2 1 0 0.225 1 0 0.25 1 0 0.275 1 0 - 0.3 1 0 0.325 1 0 0.35 1 0 0.375 1 0 - 0.4 1 0 0.425 1 0 0.45 1 0 0.475 1 0 - 0.5 1 0 - - - - - 0 1 3 2 1 4 5 3 4 6 7 5 - 6 8 9 7 8 10 11 9 10 12 13 11 - 12 14 15 13 14 16 17 15 16 18 19 17 - 18 20 21 19 20 22 23 21 22 24 25 23 - 24 26 27 25 26 28 29 27 28 30 31 29 - 30 32 33 31 32 34 35 33 34 36 37 35 - 36 38 39 37 38 40 41 39 40 42 43 41 - 42 44 45 43 44 46 47 45 46 48 49 47 - 48 50 51 49 50 52 53 51 52 54 55 53 - 54 56 57 55 56 58 59 57 58 60 61 59 - 60 62 63 61 62 64 65 63 64 66 67 65 - 66 68 69 67 68 70 71 69 70 72 73 71 - 72 74 75 73 74 76 77 75 76 78 79 77 - 78 80 81 79 2 3 83 82 3 5 84 83 - 5 7 85 84 7 9 86 85 9 11 87 86 - 11 13 88 87 13 15 89 88 15 17 90 89 - 17 19 91 90 19 21 92 91 21 23 93 92 - 23 25 94 93 25 27 95 94 27 29 96 95 - 29 31 97 96 31 33 98 97 33 35 99 98 - 35 37 100 99 37 39 101 100 39 41 102 101 - 41 43 103 102 43 45 104 103 45 47 105 104 - 47 49 106 105 49 51 107 106 51 53 108 107 - 53 55 109 108 55 57 110 109 57 59 111 110 - 59 61 112 111 61 63 113 112 63 65 114 113 - 65 67 115 114 67 69 116 115 69 71 117 116 - 71 73 118 117 73 75 119 118 75 77 120 119 - 77 79 121 120 79 81 122 121 82 83 124 123 - 83 84 125 124 84 85 126 125 85 86 127 126 - 86 87 128 127 87 88 129 128 88 89 130 129 - 89 90 131 130 90 91 132 131 91 92 133 132 - 92 93 134 133 93 94 135 134 94 95 136 135 - 95 96 137 136 96 97 138 137 97 98 139 138 - 98 99 140 139 99 100 141 140 100 101 142 141 - 101 102 143 142 102 103 144 143 103 104 145 144 - 104 105 146 145 105 106 147 146 106 107 148 147 - 107 108 149 148 108 109 150 149 109 110 151 150 - 110 111 152 151 111 112 153 152 112 113 154 153 - 113 114 155 154 114 115 156 155 115 116 157 156 - 116 117 158 157 117 118 159 158 118 119 160 159 - 119 120 161 160 120 121 162 161 121 122 163 162 - 123 124 165 164 124 125 166 165 125 126 167 166 - 126 127 168 167 127 128 169 168 128 129 170 169 - 129 130 171 170 130 131 172 171 131 132 173 172 - 132 133 174 173 133 134 175 174 134 135 176 175 - 135 136 177 176 136 137 178 177 137 138 179 178 - 138 139 180 179 139 140 181 180 140 141 182 181 - 141 142 183 182 142 143 184 183 143 144 185 184 - 144 145 186 185 145 146 187 186 146 147 188 187 - 147 148 189 188 148 149 190 189 149 150 191 190 - 150 151 192 191 151 152 193 192 152 153 194 193 - 153 154 195 194 154 155 196 195 155 156 197 196 - 156 157 198 197 157 158 199 198 158 159 200 199 - 159 160 201 200 160 161 202 201 161 162 203 202 - 162 163 204 203 164 165 206 205 165 166 207 206 - 166 167 208 207 167 168 209 208 168 169 210 209 - 169 170 211 210 170 171 212 211 171 172 213 212 - 172 173 214 213 173 174 215 214 174 175 216 215 - 175 176 217 216 176 177 218 217 177 178 219 218 - 178 179 220 219 179 180 221 220 180 181 222 221 - 181 182 223 222 182 183 224 223 183 184 225 224 - 184 185 226 225 185 186 227 226 186 187 228 227 - 187 188 229 228 188 189 230 229 189 190 231 230 - 190 191 232 231 191 192 233 232 192 193 234 233 - 193 194 235 234 194 195 236 235 195 196 237 236 - 196 197 238 237 197 198 239 238 198 199 240 239 - 199 200 241 240 200 201 242 241 201 202 243 242 - 202 203 244 243 203 204 245 244 205 206 247 246 - 206 207 248 247 207 208 249 248 208 209 250 249 - 209 210 251 250 210 211 252 251 211 212 253 252 - 212 213 254 253 213 214 255 254 214 215 256 255 - 215 216 257 256 216 217 258 257 217 218 259 258 - 218 219 260 259 219 220 261 260 220 221 262 261 - 221 222 263 262 222 223 264 263 223 224 265 264 - 224 225 266 265 225 226 267 266 226 227 268 267 - 227 228 269 268 228 229 270 269 229 230 271 270 - 230 231 272 271 231 232 273 272 232 233 274 273 - 233 234 275 274 234 235 276 275 235 236 277 276 - 236 237 278 277 237 238 279 278 238 239 280 279 - 239 240 281 280 240 241 282 281 241 242 283 282 - 242 243 284 283 243 244 285 284 244 245 286 285 - 246 247 288 287 247 248 289 288 248 249 290 289 - 249 250 291 290 250 251 292 291 251 252 293 292 - 252 253 294 293 253 254 295 294 254 255 296 295 - 255 256 297 296 256 257 298 297 257 258 299 298 - 258 259 300 299 259 260 301 300 260 261 302 301 - 261 262 303 302 262 263 304 303 263 264 305 304 - 264 265 306 305 265 266 307 306 266 267 308 307 - 267 268 309 308 268 269 310 309 269 270 311 310 - 270 271 312 311 271 272 313 312 272 273 314 313 - 273 274 315 314 274 275 316 315 275 276 317 316 - 276 277 318 317 277 278 319 318 278 279 320 319 - 279 280 321 320 280 281 322 321 281 282 323 322 - 282 283 324 323 283 284 325 324 284 285 326 325 - 285 286 327 326 287 288 329 328 288 289 330 329 - 289 290 331 330 290 291 332 331 291 292 333 332 - 292 293 334 333 293 294 335 334 294 295 336 335 - 295 296 337 336 296 297 338 337 297 298 339 338 - 298 299 340 339 299 300 341 340 300 301 342 341 - 301 302 343 342 302 303 344 343 303 304 345 344 - 304 305 346 345 305 306 347 346 306 307 348 347 - 307 308 349 348 308 309 350 349 309 310 351 350 - 310 311 352 351 311 312 353 352 312 313 354 353 - 313 314 355 354 314 315 356 355 315 316 357 356 - 316 317 358 357 317 318 359 358 318 319 360 359 - 319 320 361 360 320 321 362 361 321 322 363 362 - 322 323 364 363 323 324 365 364 324 325 366 365 - 325 326 367 366 326 327 368 367 328 329 370 369 - 329 330 371 370 330 331 372 371 331 332 373 372 - 332 333 374 373 333 334 375 374 334 335 376 375 - 335 336 377 376 336 337 378 377 337 338 379 378 - 338 339 380 379 339 340 381 380 340 341 382 381 - 341 342 383 382 342 343 384 383 343 344 385 384 - 344 345 386 385 345 346 387 386 346 347 388 387 - 347 348 389 388 348 349 390 389 349 350 391 390 - 350 351 392 391 351 352 393 392 352 353 394 393 - 353 354 395 394 354 355 396 395 355 356 397 396 - 356 357 398 397 357 358 399 398 358 359 400 399 - 359 360 401 400 360 361 402 401 361 362 403 402 - 362 363 404 403 363 364 405 404 364 365 406 405 - 365 366 407 406 366 367 408 407 367 368 409 408 - 369 370 411 410 370 371 412 411 371 372 413 412 - 372 373 414 413 373 374 415 414 374 375 416 415 - 375 376 417 416 376 377 418 417 377 378 419 418 - 378 379 420 419 379 380 421 420 380 381 422 421 - 381 382 423 422 382 383 424 423 383 384 425 424 - 384 385 426 425 385 386 427 426 386 387 428 427 - 387 388 429 428 388 389 430 429 389 390 431 430 - 390 391 432 431 391 392 433 432 392 393 434 433 - 393 394 435 434 394 395 436 435 395 396 437 436 - 396 397 438 437 397 398 439 438 398 399 440 439 - 399 400 441 440 400 401 442 441 401 402 443 442 - 402 403 444 443 403 404 445 444 404 405 446 445 - 405 406 447 446 406 407 448 447 407 408 449 448 - 408 409 450 449 410 411 452 451 411 412 453 452 - 412 413 454 453 413 414 455 454 414 415 456 455 - 415 416 457 456 416 417 458 457 417 418 459 458 - 418 419 460 459 419 420 461 460 420 421 462 461 - 421 422 463 462 422 423 464 463 423 424 465 464 - 424 425 466 465 425 426 467 466 426 427 468 467 - 427 428 469 468 428 429 470 469 429 430 471 470 - 430 431 472 471 431 432 473 472 432 433 474 473 - 433 434 475 474 434 435 476 475 435 436 477 476 - 436 437 478 477 437 438 479 478 438 439 480 479 - 439 440 481 480 440 441 482 481 441 442 483 482 - 442 443 484 483 443 444 485 484 444 445 486 485 - 445 446 487 486 446 447 488 487 447 448 489 488 - 448 449 490 489 449 450 491 490 451 452 493 492 - 452 453 494 493 453 454 495 494 454 455 496 495 - 455 456 497 496 456 457 498 497 457 458 499 498 - 458 459 500 499 459 460 501 500 460 461 502 501 - 461 462 503 502 462 463 504 503 463 464 505 504 - 464 465 506 505 465 466 507 506 466 467 508 507 - 467 468 509 508 468 469 510 509 469 470 511 510 - 470 471 512 511 471 472 513 512 472 473 514 513 - 473 474 515 514 474 475 516 515 475 476 517 516 - 476 477 518 517 477 478 519 518 478 479 520 519 - 479 480 521 520 480 481 522 521 481 482 523 522 - 482 483 524 523 483 484 525 524 484 485 526 525 - 485 486 527 526 486 487 528 527 487 488 529 528 - 488 489 530 529 489 490 531 530 490 491 532 531 - 492 493 534 533 493 494 535 534 494 495 536 535 - 495 496 537 536 496 497 538 537 497 498 539 538 - 498 499 540 539 499 500 541 540 500 501 542 541 - 501 502 543 542 502 503 544 543 503 504 545 544 - 504 505 546 545 505 506 547 546 506 507 548 547 - 507 508 549 548 508 509 550 549 509 510 551 550 - 510 511 552 551 511 512 553 552 512 513 554 553 - 513 514 555 554 514 515 556 555 515 516 557 556 - 516 517 558 557 517 518 559 558 518 519 560 559 - 519 520 561 560 520 521 562 561 521 522 563 562 - 522 523 564 563 523 524 565 564 524 525 566 565 - 525 526 567 566 526 527 568 567 527 528 569 568 - 528 529 570 569 529 530 571 570 530 531 572 571 - 531 532 573 572 533 534 575 574 534 535 576 575 - 535 536 577 576 536 537 578 577 537 538 579 578 - 538 539 580 579 539 540 581 580 540 541 582 581 - 541 542 583 582 542 543 584 583 543 544 585 584 - 544 545 586 585 545 546 587 586 546 547 588 587 - 547 548 589 588 548 549 590 589 549 550 591 590 - 550 551 592 591 551 552 593 592 552 553 594 593 - 553 554 595 594 554 555 596 595 555 556 597 596 - 556 557 598 597 557 558 599 598 558 559 600 599 - 559 560 601 600 560 561 602 601 561 562 603 602 - 562 563 604 603 563 564 605 604 564 565 606 605 - 565 566 607 606 566 567 608 607 567 568 609 608 - 568 569 610 609 569 570 611 610 570 571 612 611 - 571 572 613 612 572 573 614 613 574 575 616 615 - 575 576 617 616 576 577 618 617 577 578 619 618 - 578 579 620 619 579 580 621 620 580 581 622 621 - 581 582 623 622 582 583 624 623 583 584 625 624 - 584 585 626 625 585 586 627 626 586 587 628 627 - 587 588 629 628 588 589 630 629 589 590 631 630 - 590 591 632 631 591 592 633 632 592 593 634 633 - 593 594 635 634 594 595 636 635 595 596 637 636 - 596 597 638 637 597 598 639 638 598 599 640 639 - 599 600 641 640 600 601 642 641 601 602 643 642 - 602 603 644 643 603 604 645 644 604 605 646 645 - 605 606 647 646 606 607 648 647 607 608 649 648 - 608 609 650 649 609 610 651 650 610 611 652 651 - 611 612 653 652 612 613 654 653 613 614 655 654 - 615 616 657 656 616 617 658 657 617 618 659 658 - 618 619 660 659 619 620 661 660 620 621 662 661 - 621 622 663 662 622 623 664 663 623 624 665 664 - 624 625 666 665 625 626 667 666 626 627 668 667 - 627 628 669 668 628 629 670 669 629 630 671 670 - 630 631 672 671 631 632 673 672 632 633 674 673 - 633 634 675 674 634 635 676 675 635 636 677 676 - 636 637 678 677 637 638 679 678 638 639 680 679 - 639 640 681 680 640 641 682 681 641 642 683 682 - 642 643 684 683 643 644 685 684 644 645 686 685 - 645 646 687 686 646 647 688 687 647 648 689 688 - 648 649 690 689 649 650 691 690 650 651 692 691 - 651 652 693 692 652 653 694 693 653 654 695 694 - 654 655 696 695 656 657 698 697 657 658 699 698 - 658 659 700 699 659 660 701 700 660 661 702 701 - 661 662 703 702 662 663 704 703 663 664 705 704 - 664 665 706 705 665 666 707 706 666 667 708 707 - 667 668 709 708 668 669 710 709 669 670 711 710 - 670 671 712 711 671 672 713 712 672 673 714 713 - 673 674 715 714 674 675 716 715 675 676 717 716 - 676 677 718 717 677 678 719 718 678 679 720 719 - 679 680 721 720 680 681 722 721 681 682 723 722 - 682 683 724 723 683 684 725 724 684 685 726 725 - 685 686 727 726 686 687 728 727 687 688 729 728 - 688 689 730 729 689 690 731 730 690 691 732 731 - 691 692 733 732 692 693 734 733 693 694 735 734 - 694 695 736 735 695 696 737 736 697 698 739 738 - 698 699 740 739 699 700 741 740 700 701 742 741 - 701 702 743 742 702 703 744 743 703 704 745 744 - 704 705 746 745 705 706 747 746 706 707 748 747 - 707 708 749 748 708 709 750 749 709 710 751 750 - 710 711 752 751 711 712 753 752 712 713 754 753 - 713 714 755 754 714 715 756 755 715 716 757 756 - 716 717 758 757 717 718 759 758 718 719 760 759 - 719 720 761 760 720 721 762 761 721 722 763 762 - 722 723 764 763 723 724 765 764 724 725 766 765 - 725 726 767 766 726 727 768 767 727 728 769 768 - 728 729 770 769 729 730 771 770 730 731 772 771 - 731 732 773 772 732 733 774 773 733 734 775 774 - 734 735 776 775 735 736 777 776 736 737 778 777 - 738 739 780 779 739 740 781 780 740 741 782 781 - 741 742 783 782 742 743 784 783 743 744 785 784 - 744 745 786 785 745 746 787 786 746 747 788 787 - 747 748 789 788 748 749 790 789 749 750 791 790 - 750 751 792 791 751 752 793 792 752 753 794 793 - 753 754 795 794 754 755 796 795 755 756 797 796 - 756 757 798 797 757 758 799 798 758 759 800 799 - 759 760 801 800 760 761 802 801 761 762 803 802 - 762 763 804 803 763 764 805 804 764 765 806 805 - 765 766 807 806 766 767 808 807 767 768 809 808 - 768 769 810 809 769 770 811 810 770 771 812 811 - 771 772 813 812 772 773 814 813 773 774 815 814 - 774 775 816 815 775 776 817 816 776 777 818 817 - 777 778 819 818 779 780 821 820 780 781 822 821 - 781 782 823 822 782 783 824 823 783 784 825 824 - 784 785 826 825 785 786 827 826 786 787 828 827 - 787 788 829 828 788 789 830 829 789 790 831 830 - 790 791 832 831 791 792 833 832 792 793 834 833 - 793 794 835 834 794 795 836 835 795 796 837 836 - 796 797 838 837 797 798 839 838 798 799 840 839 - 799 800 841 840 800 801 842 841 801 802 843 842 - 802 803 844 843 803 804 845 844 804 805 846 845 - 805 806 847 846 806 807 848 847 807 808 849 848 - 808 809 850 849 809 810 851 850 810 811 852 851 - 811 812 853 852 812 813 854 853 813 814 855 854 - 814 815 856 855 815 816 857 856 816 817 858 857 - 817 818 859 858 818 819 860 859 820 821 862 861 - 821 822 863 862 822 823 864 863 823 824 865 864 - 824 825 866 865 825 826 867 866 826 827 868 867 - 827 828 869 868 828 829 870 869 829 830 871 870 - 830 831 872 871 831 832 873 872 832 833 874 873 - 833 834 875 874 834 835 876 875 835 836 877 876 - 836 837 878 877 837 838 879 878 838 839 880 879 - 839 840 881 880 861 862 883 882 862 863 884 883 - 863 864 885 884 864 865 886 885 865 866 887 886 - 866 867 888 887 867 868 889 888 868 869 890 889 - 869 870 891 890 870 871 892 891 871 872 893 892 - 872 873 894 893 873 874 895 894 874 875 896 895 - 875 876 897 896 876 877 898 897 877 878 899 898 - 878 879 900 899 879 880 901 900 880 881 902 901 - 882 883 904 903 883 884 905 904 884 885 906 905 - 885 886 907 906 886 887 908 907 887 888 909 908 - 888 889 910 909 889 890 911 910 890 891 912 911 - 891 892 913 912 892 893 914 913 893 894 915 914 - 894 895 916 915 895 896 917 916 896 897 918 917 - 897 898 919 918 898 899 920 919 899 900 921 920 - 900 901 922 921 901 902 923 922 903 904 925 924 - 904 905 926 925 905 906 927 926 906 907 928 927 - 907 908 929 928 908 909 930 929 909 910 931 930 - 910 911 932 931 911 912 933 932 912 913 934 933 - 913 914 935 934 914 915 936 935 915 916 937 936 - 916 917 938 937 917 918 939 938 918 919 940 939 - 919 920 941 940 920 921 942 941 921 922 943 942 - 922 923 944 943 924 925 946 945 925 926 947 946 - 926 927 948 947 927 928 949 948 928 929 950 949 - 929 930 951 950 930 931 952 951 931 932 953 952 - 932 933 954 953 933 934 955 954 934 935 956 955 - 935 936 957 956 936 937 958 957 937 938 959 958 - 938 939 960 959 939 940 961 960 940 941 962 961 - 941 942 963 962 942 943 964 963 943 944 965 964 - 945 946 967 966 946 947 968 967 947 948 969 968 - 948 949 970 969 949 950 971 970 950 951 972 971 - 951 952 973 972 952 953 974 973 953 954 975 974 - 954 955 976 975 955 956 977 976 956 957 978 977 - 957 958 979 978 958 959 980 979 959 960 981 980 - 960 961 982 981 961 962 983 982 962 963 984 983 - 963 964 985 984 964 965 986 985 966 967 988 987 - 967 968 989 988 968 969 990 989 969 970 991 990 - 970 971 992 991 971 972 993 992 972 973 994 993 - 973 974 995 994 974 975 996 995 975 976 997 996 - 976 977 998 997 977 978 999 998 978 979 1000 999 - 979 980 1001 1000 980 981 1002 1001 981 982 1003 1002 - 982 983 1004 1003 983 984 1005 1004 984 985 1006 1005 - 985 986 1007 1006 987 988 1009 1008 988 989 1010 1009 - 989 990 1011 1010 990 991 1012 1011 991 992 1013 1012 - 992 993 1014 1013 993 994 1015 1014 994 995 1016 1015 - 995 996 1017 1016 996 997 1018 1017 997 998 1019 1018 - 998 999 1020 1019 999 1000 1021 1020 1000 1001 1022 1021 - 1001 1002 1023 1022 1002 1003 1024 1023 1003 1004 1025 1024 - 1004 1005 1026 1025 1005 1006 1027 1026 1006 1007 1028 1027 - 1008 1009 1030 1029 1009 1010 1031 1030 1010 1011 1032 1031 - 1011 1012 1033 1032 1012 1013 1034 1033 1013 1014 1035 1034 - 1014 1015 1036 1035 1015 1016 1037 1036 1016 1017 1038 1037 - 1017 1018 1039 1038 1018 1019 1040 1039 1019 1020 1041 1040 - 1020 1021 1042 1041 1021 1022 1043 1042 1022 1023 1044 1043 - 1023 1024 1045 1044 1024 1025 1046 1045 1025 1026 1047 1046 - 1026 1027 1048 1047 1027 1028 1049 1048 1029 1030 1051 1050 - 1030 1031 1052 1051 1031 1032 1053 1052 1032 1033 1054 1053 - 1033 1034 1055 1054 1034 1035 1056 1055 1035 1036 1057 1056 - 1036 1037 1058 1057 1037 1038 1059 1058 1038 1039 1060 1059 - 1039 1040 1061 1060 1040 1041 1062 1061 1041 1042 1063 1062 - 1042 1043 1064 1063 1043 1044 1065 1064 1044 1045 1066 1065 - 1045 1046 1067 1066 1046 1047 1068 1067 1047 1048 1069 1068 - 1048 1049 1070 1069 1050 1051 1072 1071 1051 1052 1073 1072 - 1052 1053 1074 1073 1053 1054 1075 1074 1054 1055 1076 1075 - 1055 1056 1077 1076 1056 1057 1078 1077 1057 1058 1079 1078 - 1058 1059 1080 1079 1059 1060 1081 1080 1060 1061 1082 1081 - 1061 1062 1083 1082 1062 1063 1084 1083 1063 1064 1085 1084 - 1064 1065 1086 1085 1065 1066 1087 1086 1066 1067 1088 1087 - 1067 1068 1089 1088 1068 1069 1090 1089 1069 1070 1091 1090 - 1071 1072 1093 1092 1072 1073 1094 1093 1073 1074 1095 1094 - 1074 1075 1096 1095 1075 1076 1097 1096 1076 1077 1098 1097 - 1077 1078 1099 1098 1078 1079 1100 1099 1079 1080 1101 1100 - 1080 1081 1102 1101 1081 1082 1103 1102 1082 1083 1104 1103 - 1083 1084 1105 1104 1084 1085 1106 1105 1085 1086 1107 1106 - 1086 1087 1108 1107 1087 1088 1109 1108 1088 1089 1110 1109 - 1089 1090 1111 1110 1090 1091 1112 1111 1092 1093 1114 1113 - 1093 1094 1115 1114 1094 1095 1116 1115 1095 1096 1117 1116 - 1096 1097 1118 1117 1097 1098 1119 1118 1098 1099 1120 1119 - 1099 1100 1121 1120 1100 1101 1122 1121 1101 1102 1123 1122 - 1102 1103 1124 1123 1103 1104 1125 1124 1104 1105 1126 1125 - 1105 1106 1127 1126 1106 1107 1128 1127 1107 1108 1129 1128 - 1108 1109 1130 1129 1109 1110 1131 1130 1110 1111 1132 1131 - 1111 1112 1133 1132 1113 1114 1135 1134 1114 1115 1136 1135 - 1115 1116 1137 1136 1116 1117 1138 1137 1117 1118 1139 1138 - 1118 1119 1140 1139 1119 1120 1141 1140 1120 1121 1142 1141 - 1121 1122 1143 1142 1122 1123 1144 1143 1123 1124 1145 1144 - 1124 1125 1146 1145 1125 1126 1147 1146 1126 1127 1148 1147 - 1127 1128 1149 1148 1128 1129 1150 1149 1129 1130 1151 1150 - 1130 1131 1152 1151 1131 1132 1153 1152 1132 1133 1154 1153 - 1134 1135 1156 1155 1135 1136 1157 1156 1136 1137 1158 1157 - 1137 1138 1159 1158 1138 1139 1160 1159 1139 1140 1161 1160 - 1140 1141 1162 1161 1141 1142 1163 1162 1142 1143 1164 1163 - 1143 1144 1165 1164 1144 1145 1166 1165 1145 1146 1167 1166 - 1146 1147 1168 1167 1147 1148 1169 1168 1148 1149 1170 1169 - 1149 1150 1171 1170 1150 1151 1172 1171 1151 1152 1173 1172 - 1152 1153 1174 1173 1153 1154 1175 1174 1155 1156 1177 1176 - 1156 1157 1178 1177 1157 1158 1179 1178 1158 1159 1180 1179 - 1159 1160 1181 1180 1160 1161 1182 1181 1161 1162 1183 1182 - 1162 1163 1184 1183 1163 1164 1185 1184 1164 1165 1186 1185 - 1165 1166 1187 1186 1166 1167 1188 1187 1167 1168 1189 1188 - 1168 1169 1190 1189 1169 1170 1191 1190 1170 1171 1192 1191 - 1171 1172 1193 1192 1172 1173 1194 1193 1173 1174 1195 1194 - 1174 1175 1196 1195 1176 1177 1198 1197 1177 1178 1199 1198 - 1178 1179 1200 1199 1179 1180 1201 1200 1180 1181 1202 1201 - 1181 1182 1203 1202 1182 1183 1204 1203 1183 1184 1205 1204 - 1184 1185 1206 1205 1185 1186 1207 1206 1186 1187 1208 1207 - 1187 1188 1209 1208 1188 1189 1210 1209 1189 1190 1211 1210 - 1190 1191 1212 1211 1191 1192 1213 1212 1192 1193 1214 1213 - 1193 1194 1215 1214 1194 1195 1216 1215 1195 1196 1217 1216 - 1197 1198 1219 1218 1198 1199 1220 1219 1199 1200 1221 1220 - 1200 1201 1222 1221 1201 1202 1223 1222 1202 1203 1224 1223 - 1203 1204 1225 1224 1204 1205 1226 1225 1205 1206 1227 1226 - 1206 1207 1228 1227 1207 1208 1229 1228 1208 1209 1230 1229 - 1209 1210 1231 1230 1210 1211 1232 1231 1211 1212 1233 1232 - 1212 1213 1234 1233 1213 1214 1235 1234 1214 1215 1236 1235 - 1215 1216 1237 1236 1216 1217 1238 1237 1218 1219 1240 1239 - 1219 1220 1241 1240 1220 1221 1242 1241 1221 1222 1243 1242 - 1222 1223 1244 1243 1223 1224 1245 1244 1224 1225 1246 1245 - 1225 1226 1247 1246 1226 1227 1248 1247 1227 1228 1249 1248 - 1228 1229 1250 1249 1229 1230 1251 1250 1230 1231 1252 1251 - 1231 1232 1253 1252 1232 1233 1254 1253 1233 1234 1255 1254 - 1234 1235 1256 1255 1235 1236 1257 1256 1236 1237 1258 1257 - 1237 1238 1259 1258 1239 1240 1261 1260 1240 1241 1262 1261 - 1241 1242 1263 1262 1242 1243 1264 1263 1243 1244 1265 1264 - 1244 1245 1266 1265 1245 1246 1267 1266 1246 1247 1268 1267 - 1247 1248 1269 1268 1248 1249 1270 1269 1249 1250 1271 1270 - 1250 1251 1272 1271 1251 1252 1273 1272 1252 1253 1274 1273 - 1253 1254 1275 1274 1254 1255 1276 1275 1255 1256 1277 1276 - 1256 1257 1278 1277 1257 1258 1279 1278 1258 1259 1280 1279 - - - 4 8 12 16 20 24 28 32 36 40 44 48 - 52 56 60 64 68 72 76 80 84 88 92 96 - 100 104 108 112 116 120 124 128 132 136 140 144 - 148 152 156 160 164 168 172 176 180 184 188 192 - 196 200 204 208 212 216 220 224 228 232 236 240 - 244 248 252 256 260 264 268 272 276 280 284 288 - 292 296 300 304 308 312 316 320 324 328 332 336 - 340 344 348 352 356 360 364 368 372 376 380 384 - 388 392 396 400 404 408 412 416 420 424 428 432 - 436 440 444 448 452 456 460 464 468 472 476 480 - 484 488 492 496 500 504 508 512 516 520 524 528 - 532 536 540 544 548 552 556 560 564 568 572 576 - 580 584 588 592 596 600 604 608 612 616 620 624 - 628 632 636 640 644 648 652 656 660 664 668 672 - 676 680 684 688 692 696 700 704 708 712 716 720 - 724 728 732 736 740 744 748 752 756 760 764 768 - 772 776 780 784 788 792 796 800 804 808 812 816 - 820 824 828 832 836 840 844 848 852 856 860 864 - 868 872 876 880 884 888 892 896 900 904 908 912 - 916 920 924 928 932 936 940 944 948 952 956 960 - 964 968 972 976 980 984 988 992 996 1000 1004 1008 - 1012 1016 1020 1024 1028 1032 1036 1040 1044 1048 1052 1056 - 1060 1064 1068 1072 1076 1080 1084 1088 1092 1096 1100 1104 - 1108 1112 1116 1120 1124 1128 1132 1136 1140 1144 1148 1152 - 1156 1160 1164 1168 1172 1176 1180 1184 1188 1192 1196 1200 - 1204 1208 1212 1216 1220 1224 1228 1232 1236 1240 1244 1248 - 1252 1256 1260 1264 1268 1272 1276 1280 1284 1288 1292 1296 - 1300 1304 1308 1312 1316 1320 1324 1328 1332 1336 1340 1344 - 1348 1352 1356 1360 1364 1368 1372 1376 1380 1384 1388 1392 - 1396 1400 1404 1408 1412 1416 1420 1424 1428 1432 1436 1440 - 1444 1448 1452 1456 1460 1464 1468 1472 1476 1480 1484 1488 - 1492 1496 1500 1504 1508 1512 1516 1520 1524 1528 1532 1536 - 1540 1544 1548 1552 1556 1560 1564 1568 1572 1576 1580 1584 - 1588 1592 1596 1600 1604 1608 1612 1616 1620 1624 1628 1632 - 1636 1640 1644 1648 1652 1656 1660 1664 1668 1672 1676 1680 - 1684 1688 1692 1696 1700 1704 1708 1712 1716 1720 1724 1728 - 1732 1736 1740 1744 1748 1752 1756 1760 1764 1768 1772 1776 - 1780 1784 1788 1792 1796 1800 1804 1808 1812 1816 1820 1824 - 1828 1832 1836 1840 1844 1848 1852 1856 1860 1864 1868 1872 - 1876 1880 1884 1888 1892 1896 1900 1904 1908 1912 1916 1920 - 1924 1928 1932 1936 1940 1944 1948 1952 1956 1960 1964 1968 - 1972 1976 1980 1984 1988 1992 1996 2000 2004 2008 2012 2016 - 2020 2024 2028 2032 2036 2040 2044 2048 2052 2056 2060 2064 - 2068 2072 2076 2080 2084 2088 2092 2096 2100 2104 2108 2112 - 2116 2120 2124 2128 2132 2136 2140 2144 2148 2152 2156 2160 - 2164 2168 2172 2176 2180 2184 2188 2192 2196 2200 2204 2208 - 2212 2216 2220 2224 2228 2232 2236 2240 2244 2248 2252 2256 - 2260 2264 2268 2272 2276 2280 2284 2288 2292 2296 2300 2304 - 2308 2312 2316 2320 2324 2328 2332 2336 2340 2344 2348 2352 - 2356 2360 2364 2368 2372 2376 2380 2384 2388 2392 2396 2400 - 2404 2408 2412 2416 2420 2424 2428 2432 2436 2440 2444 2448 - 2452 2456 2460 2464 2468 2472 2476 2480 2484 2488 2492 2496 - 2500 2504 2508 2512 2516 2520 2524 2528 2532 2536 2540 2544 - 2548 2552 2556 2560 2564 2568 2572 2576 2580 2584 2588 2592 - 2596 2600 2604 2608 2612 2616 2620 2624 2628 2632 2636 2640 - 2644 2648 2652 2656 2660 2664 2668 2672 2676 2680 2684 2688 - 2692 2696 2700 2704 2708 2712 2716 2720 2724 2728 2732 2736 - 2740 2744 2748 2752 2756 2760 2764 2768 2772 2776 2780 2784 - 2788 2792 2796 2800 2804 2808 2812 2816 2820 2824 2828 2832 - 2836 2840 2844 2848 2852 2856 2860 2864 2868 2872 2876 2880 - 2884 2888 2892 2896 2900 2904 2908 2912 2916 2920 2924 2928 - 2932 2936 2940 2944 2948 2952 2956 2960 2964 2968 2972 2976 - 2980 2984 2988 2992 2996 3000 3004 3008 3012 3016 3020 3024 - 3028 3032 3036 3040 3044 3048 3052 3056 3060 3064 3068 3072 - 3076 3080 3084 3088 3092 3096 3100 3104 3108 3112 3116 3120 - 3124 3128 3132 3136 3140 3144 3148 3152 3156 3160 3164 3168 - 3172 3176 3180 3184 3188 3192 3196 3200 3204 3208 3212 3216 - 3220 3224 3228 3232 3236 3240 3244 3248 3252 3256 3260 3264 - 3268 3272 3276 3280 3284 3288 3292 3296 3300 3304 3308 3312 - 3316 3320 3324 3328 3332 3336 3340 3344 3348 3352 3356 3360 - 3364 3368 3372 3376 3380 3384 3388 3392 3396 3400 3404 3408 - 3412 3416 3420 3424 3428 3432 3436 3440 3444 3448 3452 3456 - 3460 3464 3468 3472 3476 3480 3484 3488 3492 3496 3500 3504 - 3508 3512 3516 3520 3524 3528 3532 3536 3540 3544 3548 3552 - 3556 3560 3564 3568 3572 3576 3580 3584 3588 3592 3596 3600 - 3604 3608 3612 3616 3620 3624 3628 3632 3636 3640 3644 3648 - 3652 3656 3660 3664 3668 3672 3676 3680 3684 3688 3692 3696 - 3700 3704 3708 3712 3716 3720 3724 3728 3732 3736 3740 3744 - 3748 3752 3756 3760 3764 3768 3772 3776 3780 3784 3788 3792 - 3796 3800 3804 3808 3812 3816 3820 3824 3828 3832 3836 3840 - 3844 3848 3852 3856 3860 3864 3868 3872 3876 3880 3884 3888 - 3892 3896 3900 3904 3908 3912 3916 3920 3924 3928 3932 3936 - 3940 3944 3948 3952 3956 3960 3964 3968 3972 3976 3980 3984 - 3988 3992 3996 4000 4004 4008 4012 4016 4020 4024 4028 4032 - 4036 4040 4044 4048 4052 4056 4060 4064 4068 4072 4076 4080 - 4084 4088 4092 4096 4100 4104 4108 4112 4116 4120 4124 4128 - 4132 4136 4140 4144 4148 4152 4156 4160 4164 4168 4172 4176 - 4180 4184 4188 4192 4196 4200 4204 4208 4212 4216 4220 4224 - 4228 4232 4236 4240 4244 4248 4252 4256 4260 4264 4268 4272 - 4276 4280 4284 4288 4292 4296 4300 4304 4308 4312 4316 4320 - 4324 4328 4332 4336 4340 4344 4348 4352 4356 4360 4364 4368 - 4372 4376 4380 4384 4388 4392 4396 4400 4404 4408 4412 4416 - 4420 4424 4428 4432 4436 4440 4444 4448 4452 4456 4460 4464 - 4468 4472 4476 4480 4484 4488 4492 4496 4500 4504 4508 4512 - 4516 4520 4524 4528 4532 4536 4540 4544 4548 4552 4556 4560 - 4564 4568 4572 4576 4580 4584 4588 4592 4596 4600 4604 4608 - 4612 4616 4620 4624 4628 4632 4636 4640 4644 4648 4652 4656 - 4660 4664 4668 4672 4676 4680 4684 4688 4692 4696 4700 4704 - 4708 4712 4716 4720 4724 4728 4732 4736 4740 4744 4748 4752 - 4756 4760 4764 4768 4772 4776 4780 4784 4788 4792 4796 4800 - - - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - - - - - diff --git a/test/reference-solutions/monolithic/flow-over-step-2d/ref-sol-stokes-flow-over-step-2d.vtu b/test/reference-solutions/monolithic/flow-over-step-2d/ref-sol-stokes-flow-over-step-2d.vtu deleted file mode 100644 index c3102f7..0000000 --- a/test/reference-solutions/monolithic/flow-over-step-2d/ref-sol-stokes-flow-over-step-2d.vtu +++ /dev/null @@ -1,2726 +0,0 @@ - - - - - - - 3.76943 3.77067 3.77122 3.77148 3.77162 3.7717 3.77175 3.77178 3.7718 3.77181 3.77182 3.77181 - 3.7718 3.77178 3.77175 3.77171 3.77165 3.77156 3.7714 3.77113 3.77069 3.77097 3.77125 3.77145 - 3.77157 3.77166 3.77171 3.77175 3.77177 3.77179 3.77179 3.77179 3.77178 3.77176 3.77173 3.7717 - 3.77165 3.77158 3.77151 3.77146 3.77123 3.77125 3.77136 3.77148 3.77157 3.77164 3.77169 3.77173 - 3.77175 3.77177 3.77177 3.77177 3.77176 3.77175 3.77173 3.7717 3.77166 3.77163 3.77159 3.77159 - 3.77148 3.77144 3.77147 3.77153 3.77159 3.77165 3.77169 3.77172 3.77174 3.77175 3.77176 3.77176 - 3.77176 3.77174 3.77173 3.77171 3.77168 3.77166 3.77165 3.77165 3.77159 3.77155 3.77156 3.77159 - 3.77162 3.77166 3.77169 3.77172 3.77174 3.77175 3.77176 3.77176 3.77175 3.77174 3.77173 3.77172 - 3.7717 3.77169 3.77168 3.77168 3.77165 3.77162 3.77162 3.77163 3.77166 3.77168 3.7717 3.77172 - 3.77174 3.77175 3.77176 3.77176 3.77176 3.77175 3.77174 3.77173 3.77172 3.7717 3.7717 3.77169 - 3.77169 3.77167 3.77166 3.77167 3.77168 3.7717 3.77172 3.77173 3.77175 3.77176 3.77176 3.77176 - 3.77176 3.77176 3.77175 3.77174 3.77173 3.77172 3.77171 3.77171 3.77171 3.7717 3.77169 3.7717 - 3.77171 3.77172 3.77174 3.77175 3.77176 3.77177 3.77177 3.77177 3.77177 3.77177 3.77176 3.77175 - 3.77174 3.77173 3.77172 3.77171 3.77172 3.77172 3.77172 3.77172 3.77173 3.77174 3.77175 3.77176 - 3.77177 3.77178 3.77178 3.77178 3.77178 3.77178 3.77178 3.77177 3.77176 3.77175 3.77174 3.77172 - 3.77174 3.77174 3.77174 3.77174 3.77175 3.77176 3.77177 3.77178 3.77179 3.77179 3.7718 3.7718 - 3.7718 3.7718 3.77179 3.77178 3.77177 3.77176 3.77175 3.77174 3.77174 3.77175 3.77175 3.77176 - 3.77177 3.77178 3.77179 3.7718 3.77181 3.77181 3.77181 3.77182 3.77182 3.77181 3.77181 3.7718 - 3.77179 3.77178 3.77177 3.77175 3.77175 3.77176 3.77177 3.77178 3.77179 3.7718 3.77181 3.77182 - 3.77183 3.77183 3.77183 3.77184 3.77183 3.77183 3.77183 3.77182 3.77181 3.7718 3.77179 3.77177 - 3.77176 3.77177 3.77178 3.77179 3.77181 3.77182 3.77183 3.77184 3.77185 3.77185 3.77186 3.77186 - 3.77186 3.77185 3.77185 3.77184 3.77183 3.77182 3.77181 3.77179 3.77176 3.77177 3.77179 3.77181 - 3.77183 3.77184 3.77185 3.77186 3.77187 3.77188 3.77188 3.77188 3.77188 3.77188 3.77187 3.77186 - 3.77186 3.77184 3.77183 3.77182 3.77176 3.77178 3.77181 3.77183 3.77185 3.77186 3.77188 3.77189 - 3.7719 3.7719 3.7719 3.7719 3.7719 3.7719 3.7719 3.77189 3.77188 3.77187 3.77186 3.77184 - 3.77175 3.77179 3.77182 3.77185 3.77187 3.77189 3.77191 3.77192 3.77192 3.77193 3.77193 3.77193 - 3.77193 3.77193 3.77192 3.77192 3.77191 3.7719 3.77189 3.77187 3.77174 3.77179 3.77184 3.77187 - 3.7719 3.77192 3.77194 3.77195 3.77196 3.77196 3.77196 3.77196 3.77196 3.77196 3.77195 3.77195 - 3.77194 3.77193 3.77192 3.7719 3.77171 3.7718 3.77187 3.77191 3.77194 3.77196 3.77197 3.77198 - 3.77199 3.77199 3.77199 3.77199 3.77199 3.77199 3.77198 3.77198 3.77197 3.77196 3.77195 3.77194 - 3.77169 3.77183 3.77191 3.77196 3.77199 3.772 3.77201 3.77202 3.77202 3.77203 3.77203 3.77202 - 3.77202 3.77202 3.77201 3.77201 3.772 3.77199 3.77198 3.77197 3.7717 3.77192 3.772 3.77203 - 3.77205 3.77206 3.77206 3.77206 3.77206 3.77206 3.77206 3.77206 3.77205 3.77205 3.77205 3.77204 - 3.77203 3.77203 3.77202 3.77201 3.77268 3.77275 3.77278 3.77279 3.7728 3.7728 3.7728 3.77279 - 3.77279 3.77279 3.77278 3.77278 3.77279 3.77279 3.7728 3.77281 3.77283 3.77286 3.77289 3.77288 - 3.77229 3.77216 3.77213 3.77212 3.77211 3.77211 3.77211 3.7721 3.7721 3.7721 3.77209 3.77209 - 3.77209 3.77208 3.77208 3.77207 3.77207 3.77206 3.77206 3.77205 3.77278 3.77278 3.77279 3.77279 - 3.7728 3.7728 3.77279 3.77279 3.77279 3.77278 3.77278 3.77278 3.77277 3.77277 3.77278 3.77278 - 3.77278 3.77278 3.77275 3.77266 3.77243 3.7723 3.77223 3.7722 3.77218 3.77216 3.77215 3.77215 - 3.77214 3.77214 3.77213 3.77213 3.77212 3.77212 3.77211 3.77211 3.7721 3.7721 3.77209 3.77209 - 3.77282 3.77281 3.7728 3.7728 3.7728 3.7728 3.77279 3.77279 3.77278 3.77278 3.77277 3.77277 - 3.77276 3.77276 3.77275 3.77275 3.77274 3.77271 3.77267 3.77259 3.77247 3.77237 3.77231 3.77226 - 3.77223 3.77221 3.7722 3.77219 3.77218 3.77217 3.77217 3.77216 3.77215 3.77215 3.77215 3.77214 - 3.77214 3.77213 3.77213 3.77213 3.77284 3.77282 3.77281 3.77281 3.7728 3.7728 3.77279 3.77278 - 3.77278 3.77277 3.77277 3.77276 3.77275 3.77274 3.77273 3.77272 3.7727 3.77267 3.77263 3.77257 - 3.77249 3.77242 3.77236 3.77232 3.77228 3.77226 3.77224 3.77223 3.77222 3.77221 3.7722 3.77219 - 3.77219 3.77218 3.77218 3.77217 3.77217 3.77217 3.77217 3.77217 3.77285 3.77283 3.77282 3.77281 - 3.7728 3.7728 3.77279 3.77278 3.77277 3.77277 3.77276 3.77275 3.77274 3.77273 3.77272 3.7727 - 3.77268 3.77265 3.77261 3.77256 3.7725 3.77244 3.7724 3.77236 3.77232 3.7723 3.77228 3.77226 - 3.77225 3.77224 3.77223 3.77223 3.77222 3.77221 3.77221 3.77221 3.77221 3.7722 3.7722 3.77221 - 3.77285 3.77284 3.77283 3.77282 3.77281 3.7728 3.77279 3.77278 3.77277 3.77276 3.77275 3.77274 - 3.77273 3.77272 3.7727 3.77268 3.77266 3.77263 3.7726 3.77255 3.77251 3.77246 3.77242 3.77239 - 3.77236 3.77233 3.77231 3.7723 3.77228 3.77227 3.77226 3.77226 3.77225 3.77225 3.77224 3.77224 - 3.77224 3.77224 3.77224 3.77224 3.77286 3.77284 3.77283 3.77282 3.77281 3.7728 3.77279 3.77278 - 3.77277 3.77276 3.77275 3.77274 3.77272 3.77271 3.77269 3.77267 3.77265 3.77262 3.77259 3.77256 - 3.77252 3.77248 3.77245 3.77241 3.77239 3.77236 3.77234 3.77233 3.77231 3.7723 3.77229 3.77229 - 3.77228 3.77228 3.77227 3.77227 3.77227 3.77227 3.77227 3.77228 3.77286 3.77284 3.77283 3.77282 - 3.77281 3.7728 3.77279 3.77278 3.77277 3.77275 3.77274 3.77273 3.77272 3.7727 3.77268 3.77266 - 3.77264 3.77262 3.77259 3.77256 3.77253 3.77249 3.77246 3.77244 3.77241 3.77239 3.77237 3.77236 - 3.77234 3.77233 3.77232 3.77231 3.77231 3.7723 3.7723 3.7723 3.7723 3.7723 3.77231 3.77231 - 3.77286 3.77284 3.77283 3.77282 3.77281 3.7728 3.77279 3.77278 3.77276 3.77275 3.77274 3.77273 - 3.77271 3.7727 3.77268 3.77266 3.77264 3.77261 3.77259 3.77256 3.77253 3.77251 3.77248 3.77246 - 3.77243 3.77241 3.7724 3.77238 3.77237 3.77236 3.77235 3.77234 3.77234 3.77233 3.77233 3.77233 - 3.77233 3.77233 3.77234 3.77234 3.77286 3.77284 3.77283 3.77282 3.77281 3.7728 3.77279 3.77277 - 3.77276 3.77275 3.77274 3.77272 3.77271 3.77269 3.77268 3.77266 3.77264 3.77261 3.77259 3.77257 - 3.77254 3.77252 3.7725 3.77247 3.77245 3.77243 3.77242 3.7724 3.77239 3.77238 3.77237 3.77237 - 3.77236 3.77236 3.77236 3.77236 3.77236 3.77236 3.77236 3.77237 3.77286 3.77284 3.77283 3.77282 - 3.77281 3.7728 3.77279 3.77277 3.77276 3.77275 3.77273 3.77272 3.77271 3.77269 3.77267 3.77266 - 3.77264 3.77262 3.77259 3.77257 3.77255 3.77253 3.77251 3.77249 3.77247 3.77245 3.77244 3.77242 - 3.77241 3.7724 3.77239 3.77239 3.77238 3.77238 3.77238 3.77238 3.77238 3.77239 3.77239 3.7724 - 3.77286 3.77284 3.77283 3.77282 3.77281 3.7728 3.77278 3.77277 3.77276 3.77275 3.77273 3.77272 - 3.7727 3.77269 3.77267 3.77266 3.77264 3.77262 3.7726 3.77258 3.77256 3.77254 3.77252 3.7725 - 3.77249 3.77247 3.77246 3.77244 3.77243 3.77242 3.77242 3.77241 3.77241 3.7724 3.7724 3.7724 - 3.77241 3.77241 3.77242 3.77242 3.77286 3.77285 3.77283 3.77282 3.77281 3.7728 3.77278 3.77277 - 3.77276 3.77275 3.77273 3.77272 3.7727 3.77269 3.77267 3.77266 3.77264 3.77262 3.7726 3.77258 - 3.77257 3.77255 3.77253 3.77251 3.7725 3.77248 3.77247 3.77246 3.77245 3.77244 3.77244 3.77243 - 3.77243 3.77242 3.77242 3.77242 3.77243 3.77243 3.77244 3.77245 3.77286 3.77285 3.77283 3.77282 - 3.77281 3.7728 3.77278 3.77277 3.77276 3.77275 3.77273 3.77272 3.7727 3.77269 3.77267 3.77266 - 3.77264 3.77262 3.77261 3.77259 3.77257 3.77256 3.77254 3.77253 3.77251 3.7725 3.77249 3.77248 - 3.77247 3.77246 3.77245 3.77245 3.77245 3.77244 3.77244 3.77244 3.77245 3.77245 3.77246 3.77247 - 3.77286 3.77285 3.77283 3.77282 3.77281 3.7728 3.77279 3.77277 3.77276 3.77275 3.77273 3.77272 - 3.7727 3.77269 3.77267 3.77266 3.77264 3.77263 3.77261 3.7726 3.77258 3.77257 3.77255 3.77254 - 3.77252 3.77251 3.7725 3.77249 3.77248 3.77248 3.77247 3.77247 3.77246 3.77246 3.77246 3.77246 - 3.77247 3.77247 3.77248 3.77249 3.77286 3.77285 3.77284 3.77282 3.77281 3.7728 3.77279 3.77277 - 3.77276 3.77275 3.77273 3.77272 3.77271 3.77269 3.77268 3.77266 3.77265 3.77263 3.77262 3.7726 - 3.77259 3.77257 3.77256 3.77255 3.77253 3.77252 3.77251 3.7725 3.7725 3.77249 3.77248 3.77248 - 3.77248 3.77248 3.77248 3.77248 3.77248 3.77249 3.7725 3.7725 3.77286 3.77285 3.77284 3.77282 - 3.77281 3.7728 3.77279 3.77277 3.77276 3.77275 3.77273 3.77272 3.77271 3.77269 3.77268 3.77266 - 3.77265 3.77264 3.77262 3.77261 3.77259 3.77258 3.77257 3.77256 3.77254 3.77253 3.77252 3.77252 - 3.77251 3.7725 3.7725 3.77249 3.77249 3.77249 3.77249 3.77249 3.7725 3.7725 3.77251 3.77252 - 3.77286 3.77285 3.77284 3.77283 3.77281 3.7728 3.77279 3.77277 3.77276 3.77275 3.77273 3.77272 - 3.77271 3.77269 3.77268 3.77267 3.77265 3.77264 3.77263 3.77261 3.7726 3.77259 3.77257 3.77256 - 3.77255 3.77254 3.77253 3.77253 3.77252 3.77251 3.77251 3.77251 3.77251 3.7725 3.77251 3.77251 - 3.77251 3.77252 3.77252 3.77253 3.77287 3.77285 3.77284 3.77283 3.77281 3.7728 3.77279 3.77277 - 3.77276 3.77275 3.77274 3.77272 3.77271 3.7727 3.77268 3.77267 3.77266 3.77264 3.77263 3.77262 - 3.7726 3.77259 3.77258 3.77257 3.77256 3.77255 3.77254 3.77254 3.77253 3.77253 3.77252 3.77252 - 3.77252 3.77252 3.77252 3.77252 3.77252 3.77253 3.77254 3.77254 3.77287 3.77285 3.77284 3.77283 - 3.77281 3.7728 3.77279 3.77278 3.77276 3.77275 3.77274 3.77272 3.77271 3.7727 3.77268 3.77267 - 3.77266 3.77265 3.77263 3.77262 3.77261 3.7726 3.77259 3.77258 3.77257 3.77256 3.77255 3.77255 - 3.77254 3.77253 3.77253 3.77253 3.77253 3.77253 3.77253 3.77253 3.77253 3.77254 3.77255 3.77255 - 3.77287 3.77286 3.77284 3.77283 3.77282 3.7728 3.77279 3.77278 3.77276 3.77275 3.77274 3.77272 - 3.77271 3.7727 3.77269 3.77267 3.77266 3.77265 3.77264 3.77262 3.77261 3.7726 3.77259 3.77258 - 3.77257 3.77257 3.77256 3.77255 3.77255 3.77254 3.77254 3.77254 3.77254 3.77254 3.77254 3.77254 - 3.77254 3.77255 3.77255 3.77256 3.77287 3.77286 3.77284 3.77283 3.77282 3.7728 3.77279 3.77278 - 3.77276 3.77275 3.77274 3.77273 3.77271 3.7727 3.77269 3.77268 3.77266 3.77265 3.77264 3.77263 - 3.77262 3.77261 3.7726 3.77259 3.77258 3.77257 3.77257 3.77256 3.77255 3.77255 3.77255 3.77255 - 3.77254 3.77254 3.77255 3.77255 3.77255 3.77256 3.77256 3.77257 3.77287 3.77286 3.77284 3.77283 - 3.77282 3.7728 3.77279 3.77278 3.77276 3.77275 3.77274 3.77273 3.77271 3.7727 3.77269 3.77268 - 3.77267 3.77265 3.77264 3.77263 3.77262 3.77261 3.7726 3.77259 3.77259 3.77258 3.77257 3.77257 - 3.77256 3.77256 3.77255 3.77255 3.77255 3.77255 3.77255 3.77255 3.77256 3.77256 3.77257 3.77257 - 3.77287 3.77286 3.77285 3.77283 3.77282 3.7728 3.77279 3.77278 3.77277 3.77275 3.77274 3.77273 - 3.77271 3.7727 3.77269 3.77268 3.77267 3.77266 3.77264 3.77263 3.77262 3.77261 3.77261 3.7726 - 3.77259 3.77258 3.77258 3.77257 3.77257 3.77256 3.77256 3.77256 3.77256 3.77256 3.77256 3.77256 - 3.77256 3.77257 3.77257 3.77258 3.77288 3.77286 3.77285 3.77283 3.77282 3.77281 3.77279 3.77278 - 3.77277 3.77275 3.77274 3.77273 3.77272 3.7727 3.77269 3.77268 3.77267 3.77266 3.77265 3.77264 - 3.77263 3.77262 3.77261 3.7726 3.77259 3.77259 3.77258 3.77258 3.77257 3.77257 3.77256 3.77256 - 3.77256 3.77256 3.77256 3.77256 3.77257 3.77257 3.77258 3.77258 3.77288 3.77286 3.77285 3.77283 - 3.77282 3.77281 3.77279 3.77278 3.77277 3.77275 3.77274 3.77273 3.77272 3.7727 3.77269 3.77268 - 3.77267 3.77266 3.77265 3.77264 3.77263 3.77262 3.77261 3.7726 3.7726 3.77259 3.77258 3.77258 - 3.77257 3.77257 3.77257 3.77257 3.77257 3.77257 3.77257 3.77257 3.77257 3.77257 3.77258 3.77258 - 3.77288 3.77286 3.77285 3.77283 3.77282 3.77281 3.77279 3.77278 3.77277 3.77275 3.77274 3.77273 - 3.77272 3.7727 3.77269 3.77268 3.77267 3.77266 3.77265 3.77264 3.77263 3.77262 3.77261 3.77261 - 3.7726 3.77259 3.77259 3.77258 3.77258 3.77257 3.77257 3.77257 3.77257 3.77257 3.77257 3.77257 - 3.77257 3.77258 3.77258 3.77259 3.77288 3.77286 3.77285 3.77283 3.77282 3.77281 3.77279 3.77278 - 3.77277 3.77275 3.77274 3.77273 3.77272 3.7727 3.77269 3.77268 3.77267 3.77266 3.77265 3.77264 - 3.77263 3.77262 3.77261 3.77261 3.7726 3.77259 3.77259 3.77258 3.77258 3.77258 3.77257 3.77257 - 3.77257 3.77257 3.77257 3.77257 3.77257 3.77258 3.77258 3.77259 3.77288 3.77286 3.77285 3.77283 - 3.77282 3.77281 3.77279 3.77278 3.77277 3.77275 3.77274 3.77273 3.77272 3.7727 3.77269 3.77268 - 3.77267 3.77266 3.77265 3.77264 3.77263 3.77262 3.77261 3.77261 3.7726 3.77259 3.77259 3.77258 - 3.77258 3.77258 3.77257 3.77257 3.77257 3.77257 3.77257 3.77257 3.77257 3.77258 3.77258 3.77258 - 3.77288 3.77286 3.77285 3.77283 3.77282 3.7728 3.77279 3.77278 3.77276 3.77275 3.77274 3.77273 - 3.77272 3.7727 3.77269 3.77268 3.77267 3.77266 3.77265 3.77264 3.77263 3.77262 3.77262 3.77261 - 3.7726 3.7726 3.77259 3.77259 3.77258 3.77258 3.77258 3.77257 3.77257 3.77257 3.77257 3.77257 - 3.77257 3.77258 3.77258 3.77258 3.77287 3.77286 3.77285 3.77283 3.77282 3.7728 3.77279 3.77278 - 3.77276 3.77275 3.77274 3.77273 3.77271 3.7727 3.77269 3.77268 3.77267 3.77266 3.77265 3.77264 - 3.77263 3.77262 3.77261 3.77261 3.7726 3.77259 3.77259 3.77259 3.77258 3.77258 3.77258 3.77257 - 3.77257 3.77257 3.77257 3.77257 3.77257 3.77257 3.77258 3.77258 3.77287 3.77286 3.77284 3.77283 - 3.77282 3.7728 3.77279 3.77278 3.77276 3.77275 3.77274 3.77273 3.77271 3.7727 3.77269 3.77268 - 3.77267 3.77266 3.77265 3.77264 3.77263 3.77262 3.77261 3.77261 3.7726 3.77259 3.77259 3.77258 - 3.77258 3.77258 3.77257 3.77257 3.77257 3.77257 3.77257 3.77257 3.77257 3.77257 3.77257 3.77258 - 3.77287 3.77286 3.77284 3.77283 3.77282 3.7728 3.77279 3.77278 3.77276 3.77275 3.77274 3.77272 - 3.77271 3.7727 3.77269 3.77268 3.77267 3.77266 3.77265 3.77264 3.77263 3.77262 3.77261 3.7726 - 3.7726 3.77259 3.77259 3.77258 3.77258 3.77258 3.77257 3.77257 3.77257 3.77257 3.77257 3.77257 - 3.77257 3.77257 3.77257 3.77257 3.77287 3.77286 3.77284 3.77283 3.77281 3.7728 3.77279 3.77277 - 3.77276 3.77275 3.77273 3.77272 3.77271 3.7727 3.77269 3.77267 3.77266 3.77265 3.77264 3.77263 - 3.77263 3.77262 3.77261 3.7726 3.7726 3.77259 3.77259 3.77258 3.77258 3.77257 3.77257 3.77257 - 3.77257 3.77257 3.77257 3.77257 3.77257 3.77257 3.77257 3.77257 3.77287 3.77285 3.77284 3.77283 - 3.77281 3.7728 3.77279 3.77277 3.77276 3.77275 3.77273 3.77272 3.77271 3.7727 3.77268 3.77267 - 3.77266 3.77265 3.77264 3.77263 3.77262 3.77261 3.77261 3.7726 3.77259 3.77259 3.77258 3.77258 - 3.77257 3.77257 3.77257 3.77257 3.77257 3.77256 3.77256 3.77256 3.77256 3.77256 3.77256 3.77256 - 3.77287 3.77285 3.77284 3.77283 3.77281 3.7728 3.77278 3.77277 3.77276 3.77274 3.77273 3.77272 - 3.77271 3.77269 3.77268 3.77267 3.77266 3.77265 3.77264 3.77263 3.77262 3.77261 3.7726 3.7726 - 3.77259 3.77258 3.77258 3.77257 3.77257 3.77257 3.77257 3.77256 3.77256 3.77256 3.77256 3.77256 - 3.77256 3.77256 3.77256 3.77256 3.77286 3.77285 3.77284 3.77282 3.77281 3.7728 3.77278 3.77277 - 3.77276 3.77274 3.77273 3.77272 3.7727 3.77269 3.77268 3.77267 3.77265 3.77264 3.77263 3.77262 - 3.77261 3.77261 3.7726 3.77259 3.77259 3.77258 3.77257 3.77257 3.77257 3.77256 3.77256 3.77256 - 3.77256 3.77256 3.77256 3.77256 3.77256 3.77256 3.77256 3.77256 3.77286 3.77285 3.77284 3.77282 - 3.77281 3.7728 3.77278 3.77277 3.77275 3.77274 3.77273 3.77271 3.7727 3.77269 3.77267 3.77266 - 3.77265 3.77264 3.77263 3.77262 3.77261 3.7726 3.77259 3.77259 3.77258 3.77257 3.77257 3.77257 - 3.77256 3.77256 3.77256 3.77256 3.77256 3.77256 3.77256 3.77256 3.77256 3.77256 3.77255 3.77255 - 3.77286 3.77285 3.77284 3.77282 3.77281 3.77279 3.77278 3.77277 3.77275 3.77274 3.77272 3.77271 - 3.7727 3.77268 3.77267 3.77266 3.77265 3.77263 3.77262 3.77261 3.7726 3.7726 3.77259 3.77258 - 3.77257 3.77257 3.77256 3.77256 3.77256 3.77256 3.77255 3.77255 3.77255 3.77255 3.77255 3.77255 - 3.77255 3.77255 3.77255 3.77255 3.77286 3.77285 3.77283 3.77282 3.77281 3.77279 3.77278 3.77276 - 3.77275 3.77273 3.77272 3.77271 3.77269 3.77268 3.77267 3.77265 3.77264 3.77263 3.77262 3.77261 - 3.7726 3.77259 3.77258 3.77257 3.77257 3.77256 3.77256 3.77255 3.77255 3.77255 3.77255 3.77255 - 3.77255 3.77255 3.77255 3.77255 3.77255 3.77255 3.77255 3.77255 - - - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 - 1000 1000 1000 1000 1000 1000 1000 1000 - - - -0.013537 -0.0152199 0 -0.0117373 -0.0135771 0 -0.00816554 -0.0115797 0 -0.00561933 -0.0102767 0 - -0.00396884 -0.00949276 0 -0.00285187 -0.00901104 0 -0.00203143 -0.0086997 0 -0.00137704 -0.00848736 0 - -0.000819107 -0.00833552 0 -0.000320126 -0.00822272 0 0.000140641 -0.00813649 0 0.000575229 -0.00806935 0 - 0.000991559 -0.00801698 0 0.00139656 -0.00797732 0 0.0017989 -0.00795029 0 0.00221122 -0.00793717 0 - 0.00264757 -0.00793612 0 0.00309318 -0.00791866 0 0.00334209 -0.00772041 0 0.00226666 -0.00655651 0 - -0.0106881 -0.0127514 0 -0.0130376 -0.0154956 0 -0.0122293 -0.0140411 0 -0.0102209 -0.0123699 0 - -0.00811858 -0.0111524 0 -0.00624165 -0.0103453 0 -0.00461199 -0.00981554 0 -0.00317778 -0.00946012 0 - -0.00188552 -0.00921295 0 -0.000696265 -0.00903353 0 0.000414525 -0.00889724 0 0.00146046 -0.00878912 0 - 0.00244721 -0.00870029 0 0.00337385 -0.00862565 0 0.00423119 -0.00856166 0 0.00499371 -0.00850064 0 - 0.0055965 -0.00841179 0 0.00588391 -0.00817601 0 0.00554214 -0.0073702 0 0.00429527 -0.00458442 0 - -0.00793571 -0.00887673 0 -0.0105459 -0.0144107 0 -0.0115034 -0.0149769 0 -0.0108729 -0.014073 0 - -0.00942067 -0.0130039 0 -0.00766522 -0.0121262 0 -0.00585379 -0.0114757 0 -0.00408224 -0.0110057 0 - -0.00238038 -0.0106615 0 -0.00075495 -0.0103996 0 0.000791861 -0.0101887 0 0.00225499 -0.0100067 0 - 0.00362308 -0.00983753 0 0.00487523 -0.00966719 0 0.00597548 -0.0094777 0 0.00686239 -0.00923402 0 - 0.00743376 -0.00885257 0 0.00753842 -0.00812731 0 0.00703653 -0.00657523 0 0.00611807 -0.00321405 0 - -0.00608779 -0.00626313 0 -0.00809186 -0.01241 0 -0.00951496 -0.0145971 0 -0.00973841 -0.0148598 0 - -0.00899273 -0.014415 0 -0.0076479 -0.0138154 0 -0.00598426 -0.0132616 0 -0.00417436 -0.0128013 0 - -0.0023171 -0.0124251 0 -0.000470607 -0.012108 0 0.00132621 -0.011824 0 0.00304081 -0.0115492 0 - 0.00463919 -0.0112615 0 0.00607979 -0.010936 0 0.00730768 -0.0105371 0 0.00824919 -0.0100031 0 - 0.00881218 -0.00921785 0 0.00890899 -0.00796351 0 0.00854081 -0.00586897 0 0.00798739 -0.00244843 0 - -0.00487089 -0.00469888 0 -0.00625027 -0.0105908 0 -0.0075383 -0.0137051 0 -0.00806646 -0.0150001 0 - -0.00775858 -0.0153282 0 -0.00678554 -0.01522 0 -0.005358 -0.0149482 0 -0.00365077 -0.0146318 0 - -0.00179184 -0.0143107 0 0.000127033 -0.0139878 0 0.00203682 -0.0136508 0 0.0038801 -0.0132803 0 - 0.0056028 -0.0128515 0 0.00714831 -0.012332 0 0.0084536 -0.0116742 0 0.0094494 -0.0108033 0 - 0.0100696 -0.00960081 0 0.0102802 -0.00788803 0 0.0101398 -0.00543586 0 0.00987661 -0.0020649 0 - -0.00402493 -0.00377729 0 -0.00492528 -0.00923265 0 -0.00589536 -0.0128052 0 -0.00640593 -0.0148614 0 - -0.00627185 -0.0159089 0 -0.00552747 -0.0163567 0 -0.00429781 -0.0164687 0 -0.00272345 -0.0163929 0 - -0.000929978 -0.0162019 0 0.000978502 -0.0159239 0 0.00291603 -0.0155621 0 0.00480884 -0.0151051 0 - 0.00658967 -0.0145303 0 0.00819382 -0.013803 0 0.00955768 -0.0128724 0 0.0106219 -0.0116651 0 - 0.0113426 -0.0100799 0 0.0117135 -0.00799052 0 0.0117973 -0.00527677 0 0.0117448 -0.00190829 0 - -0.00339645 -0.00323481 0 -0.00395429 -0.00831693 0 -0.00459461 -0.0121105 0 -0.00494199 -0.0146981 0 - -0.00480455 -0.0163437 0 -0.00414913 -0.0173217 0 -0.00303643 -0.017846 0 -0.00156683 -0.0180596 0 - 0.000151654 -0.0180473 0 0.00201767 -0.017853 0 0.00394059 -0.0174933 0 0.00583972 -0.0169657 0 - 0.00764207 -0.0162528 0 0.0092807 -0.0153232 0 0.0106951 -0.0141304 0 0.0118352 -0.0126114 0 - 0.0126698 -0.0106889 0 0.0132001 -0.00828257 0 0.013471 -0.00533949 0 0.0135672 -0.00188924 0 - -0.00290172 -0.00292295 0 -0.00321615 -0.00775652 0 -0.00356795 -0.0116788 0 -0.00370345 -0.0146469 0 - -0.00346319 -0.0167726 0 -0.00279278 -0.0182187 0 -0.00171602 -0.0191385 0 -0.000301493 -0.0196512 0 - 0.00136315 -0.0198388 0 0.00318679 -0.0197512 0 0.0050824 -0.0194137 0 0.00696979 -0.0188319 0 - 0.00877625 -0.0179954 0 0.0104367 -0.0168797 0 0.0118952 -0.0154468 0 0.0131079 -0.0136478 0 - 0.0140489 -0.0114281 0 0.0147157 -0.00874039 0 0.0151309 -0.00556783 0 0.0153304 -0.00195652 0 - -0.00249427 -0.00275871 0 -0.00263212 -0.00746849 0 -0.00274364 -0.0115035 0 -0.00266199 -0.0147684 0 - -0.00226929 -0.0172841 0 -0.00151519 -0.0191317 0 -0.000408363 -0.0204091 0 0.0010023 -0.0212058 0 - 0.00264606 -0.0215926 0 0.0044438 -0.0216188 0 0.00631632 -0.0213142 0 0.0081887 -0.0206911 0 - 0.00999249 -0.0197464 0 0.0116671 -0.0184637 0 0.0131612 -0.0168154 0 0.0144353 -0.0147661 0 - 0.0154639 -0.0122795 0 0.0162372 -0.00932914 0 0.0167574 -0.00591457 0 0.0170274 -0.00207919 0 - -0.00214685 -0.00269434 0 -0.00215172 -0.00739014 0 -0.00206266 -0.0115594 0 -0.00177296 -0.0150838 0 - -0.00120441 -0.0179299 0 -0.000322891 -0.0201215 0 0.00086335 -0.0217123 0 0.00231433 -0.0227642 0 - 0.00397073 -0.0233343 0 0.00576424 -0.0234683 0 0.00762487 -0.0231979 0 0.00948539 -0.0225404 0 - 0.011284 -0.0214996 0 0.0129659 -0.0200671 0 0.0144848 -0.018225 0 0.0158039 -0.0159496 0 - 0.0168968 -0.0132174 0 0.0177459 -0.0100136 0 0.0183381 -0.00634258 0 0.0186543 -0.00223736 0 - -0.00184225 -0.00270167 0 -0.00174119 -0.00747898 0 -0.00147825 -0.0118225 0 -0.000989214 -0.0155994 0 - -0.000231628 -0.0187405 0 0.000806499 -0.0212306 0 0.00210812 -0.0230911 0 0.00363408 -0.0243624 0 - 0.00533134 -0.0250898 0 0.00714031 -0.0253153 0 0.00900015 -0.0250714 0 0.0108524 -0.0243796 0 - 0.012643 -0.0232496 0 0.014324 -0.02168 0 0.0158541 -0.0196611 0 0.0171992 -0.0171778 0 - 0.0183316 -0.0142146 0 0.019228 -0.010762 0 0.0198646 -0.00682292 0 0.0202087 -0.00241735 0 - -0.00156871 -0.00276438 0 -0.00137585 -0.00771021 0 -0.00095114 -0.012279 0 -0.00026327 -0.0163199 0 - 0.000696265 -0.0197371 0 0.00191356 -0.0224894 0 0.00335695 -0.0245774 0 0.0049828 -0.0260279 0 - 0.00674089 -0.0268796 0 0.0085786 -0.0271721 0 0.010444 -0.0269397 0 0.0122877 -0.0262072 0 - 0.0140643 -0.0249892 0 0.0157331 -0.0232902 0 0.0172582 -0.0211062 0 0.0186084 -0.0184279 0 - 0.0197559 -0.0152443 0 0.0206738 -0.0115466 0 0.0213316 -0.00733271 0 0.0216892 -0.00260927 0 - -0.00131721 -0.00287448 0 -0.00103463 -0.00807555 0 -0.000443609 -0.0129294 0 0.000456012 -0.017257 0 - 0.00163623 -0.0209398 0 0.00305336 -0.0239211 0 0.00465758 -0.0261932 0 0.00639834 -0.0277787 0 - 0.00822691 -0.0287155 0 0.0100973 -0.0290444 0 0.0119666 -0.0288021 0 0.0137951 -0.028017 0 - 0.0155465 -0.0267075 0 0.0171878 -0.024882 0 0.0186889 -0.0225406 0 0.0200221 -0.019677 0 - 0.0211607 -0.0162814 0 0.0220765 -0.0123431 0 0.0227358 -0.00785331 0 0.023095 -0.00280549 0 - -0.00107952 -0.0030318 0 -0.000694938 -0.00858539 0 8.81916e-05 -0.0137937 0 0.00123052 -0.0184346 0 - 0.00265916 -0.022371 0 0.00429611 -0.025544 0 0.00607244 -0.0279509 0 0.00793159 -0.029621 0 - 0.00982778 -0.030598 0 0.011723 -0.0309275 0 0.0135845 -0.0306498 0 0.0153829 -0.0297963 0 - 0.0170916 -0.0283882 0 0.0186853 -0.0264363 0 0.0201404 -0.0239425 0 0.0214333 -0.0209013 0 - 0.0225396 -0.017302 0 0.0234314 -0.0131301 0 0.0240747 -0.008369 0 0.0244255 -0.00299983 0 - -0.000845785 -0.00324677 0 -0.000325017 -0.00927578 0 0.000705918 -0.0149173 0 0.00214432 -0.0198917 0 - 0.00385752 -0.0240558 0 0.00573017 -0.0273688 0 0.00767783 -0.02985 0 0.00964338 -0.0315465 0 - 0.0115887 -0.0325139 0 0.0134869 -0.032805 0 0.0153172 -0.0324641 0 0.0170616 -0.0315249 0 - 0.018703 -0.0300097 0 0.0202247 -0.0279302 0 0.021609 -0.025288 0 0.0228373 -0.0220769 0 - 0.023888 -0.0182833 0 0.0247354 -0.0138879 0 0.0253469 -0.00886601 0 0.0256803 -0.00318698 0 - -0.000599344 -0.00355 0 0.000131066 -0.0102237 0 0.00150947 -0.0163787 0 0.00332094 -0.0216802 0 - 0.00535532 -0.0260149 0 0.00746477 -0.0293918 0 0.0095617 -0.0318716 0 0.0115998 -0.0335286 0 - 0.0135562 -0.0344336 0 0.0154197 -0.0346469 0 0.0171831 -0.0342158 0 0.0188402 -0.0331746 0 - 0.0203838 -0.031545 0 0.0218046 -0.0293374 0 0.0230914 -0.026552 0 0.0242299 -0.0231798 0 - 0.0252025 -0.0192037 0 0.0259862 -0.0145987 0 0.0265513 -0.00933199 0 0.0268592 -0.00336227 0 - -0.000303085 -0.00401983 0 0.000787662 -0.0115751 0 0.00267403 -0.0182922 0 0.00494738 -0.0238515 0 - 0.00731672 -0.0282472 0 0.00962809 -0.0315803 0 0.0118167 -0.0339686 0 0.0138638 -0.0355168 0 - 0.0157708 -0.0363088 0 0.0175451 -0.0364095 0 0.0191944 -0.035866 0 0.0207233 -0.0347106 0 - 0.0221333 -0.0329625 0 0.0234218 -0.0306292 0 0.0245829 -0.027708 0 0.0256068 -0.0241862 0 - 0.0264793 -0.0200424 0 0.0271814 -0.0152457 0 0.027687 -0.00975579 0 0.027962 -0.00352145 0 - 0.000140523 -0.00486172 0 0.00189882 -0.0135822 0 0.00451337 -0.0207859 0 0.00729842 -0.0264162 0 - 0.00994292 -0.0306964 0 0.0123526 -0.0338521 0 0.0145235 -0.0360563 0 0.0164811 -0.0374338 0 - 0.0182554 -0.038073 0 0.0198723 -0.0380366 0 0.0213516 -0.0373674 0 0.0227065 -0.036093 0 - 0.0239447 -0.0342281 0 0.0250686 -0.031776 0 0.0260764 -0.02873 0 0.0269619 -0.0250735 0 - 0.0277144 -0.0207802 0 0.0283185 -0.0158139 0 0.0287527 -0.0101274 0 0.0289885 -0.00366074 0 - 0.00100962 -0.00664151 0 0.00404919 -0.0166003 0 0.00756441 -0.0238976 0 0.010731 -0.0292561 0 - 0.0134335 -0.0332035 0 0.0157359 -0.0360571 0 0.0177219 -0.0380084 0 0.0194607 -0.0391782 0 - 0.0210037 -0.0396459 0 0.0223878 -0.0394647 0 0.0236388 -0.0386695 0 0.0247737 -0.0372808 0 - 0.0258032 -0.0353079 0 0.0267322 -0.0327492 0 0.0275614 -0.0295939 0 0.0282873 -0.025821 0 - 0.0289023 -0.0214002 0 0.0293945 -0.0162902 0 0.0297473 -0.0104381 0 0.0299384 -0.00377684 0 - 0.00313492 -0.0109645 0 0.00857099 -0.0207529 0 0.0125946 -0.0272839 0 0.0155595 -0.0320014 0 - 0.0178749 -0.0354761 0 0.0197696 -0.0379815 0 0.0213704 -0.0396707 0 0.0227538 -0.0406379 0 - 0.0239693 -0.0409447 0 0.0250507 -0.0406315 0 0.026021 -0.039724 0 0.0268959 -0.0382361 0 - 0.027685 -0.0361712 0 0.0283937 -0.0335237 0 0.0290236 -0.0302785 0 0.0295727 -0.0264114 0 - 0.0300361 -0.0218882 0 0.0304055 -0.0166639 0 0.0306692 -0.0106809 0 0.0308112 -0.00386711 0 - 0.00284113 -0.00174707 0 0.00263235 -0.00202419 0 0.00273321 -0.00203152 0 0.00284957 -0.00198597 0 - 0.00293904 -0.00192958 0 0.00300665 -0.00186788 0 0.00306208 -0.00179989 0 0.00311278 -0.00172434 0 - 0.00316414 -0.00164047 0 0.00322048 -0.00154814 0 0.00328597 -0.00144767 0 0.00336549 -0.00133997 0 - 0.00346576 -0.00122673 0 0.00359725 -0.0011111 0 0.00377848 -0.000999393 0 0.00404645 -0.000905642 0 - 0.00448453 -0.000864679 0 0.00530153 -0.000970594 0 0.00706365 -0.00149218 0 0.011375 -0.00322847 0 - 0.0158856 -0.0154795 0 0.0182513 -0.0240397 0 0.0200446 -0.029814 0 0.0216424 -0.0340341 0 - 0.0230436 -0.03716 0 0.0242601 -0.0394088 0 0.0253184 -0.0409025 0 0.0262454 -0.0417166 0 - 0.0270643 -0.0419004 0 0.0277932 -0.041486 0 0.0284459 -0.0404925 0 0.0290322 -0.0389287 0 - 0.0295587 -0.0367942 0 0.0300292 -0.0340799 0 0.0304451 -0.030768 0 0.0308057 -0.0268316 0 - 0.031108 -0.0222338 0 0.0313472 -0.016927 0 0.0315165 -0.0108507 0 0.0316067 -0.00392962 0 - 0.00878953 -0.00126836 0 0.00845174 -0.00195632 0 0.00834197 -0.0020905 0 0.00837085 -0.00207224 0 - 0.00845435 -0.00201628 0 0.00855749 -0.00195193 0 0.00867118 -0.00188496 0 0.00879687 -0.00181567 0 - 0.00894026 -0.00174388 0 0.00910943 -0.00167023 0 0.00931508 -0.00159671 0 0.00957187 -0.00152726 0 - 0.00990116 -0.001469 0 0.0103358 -0.00143499 0 0.0109293 -0.00145017 0 0.0117717 -0.00156528 0 - 0.0130184 -0.00188982 0 0.014927 -0.00267103 0 0.0178529 -0.00447977 0 0.0219181 -0.0086174 0 - 0.0251312 -0.0178144 0 0.0264482 -0.0253875 0 0.0271529 -0.030964 0 0.0277421 -0.0350712 0 - 0.0283052 -0.0380871 0 0.0288378 -0.0402308 0 0.0293287 -0.0416296 0 0.0297733 -0.0423612 0 - 0.0301726 -0.0424741 0 0.0305299 -0.0419986 0 0.0308492 -0.0409519 0 0.0311342 -0.0393405 0 - 0.0313876 -0.0371623 0 0.0316114 -0.0344062 0 0.0318063 -0.0310527 0 0.0319725 -0.0270736 0 - 0.0321092 -0.0224307 0 0.0322147 -0.0170749 0 0.0322872 -0.0109446 0 0.0323244 -0.00396329 0 - 0.0144967 -0.000882732 0 0.0142042 -0.00171165 0 0.0139983 -0.00201953 0 0.0139287 -0.00210242 0 - 0.0139583 -0.00209923 0 0.0140524 -0.00206619 0 0.0141926 -0.00202457 0 0.0143735 -0.00198265 0 - 0.0145981 -0.00194488 0 0.0148753 -0.00191569 0 0.01522 -0.00190152 0 0.0156534 -0.00191263 0 - 0.0162065 -0.00196601 0 0.0169242 -0.00209042 0 0.0178722 -0.0023362 0 0.0191446 -0.00279403 0 - 0.020867 -0.00363014 0 0.0231747 -0.00514699 0 0.0261088 -0.00786385 0 0.0293295 -0.0125192 0 - 0.0317179 -0.0195141 0 0.032771 -0.026058 0 0.0331027 -0.0313298 0 0.0331723 -0.0353644 0 - 0.0331749 -0.0383596 0 0.0331707 -0.0404866 0 0.0331709 -0.0418648 0 0.0331735 -0.0425732 0 - 0.0331747 -0.0426626 0 0.033172 -0.0421648 0 0.0331644 -0.0410974 0 0.0331515 -0.0394672 0 - 0.0331339 -0.0372714 0 0.033112 -0.0344989 0 0.0330868 -0.0311298 0 0.0330593 -0.0271352 0 - 0.0330307 -0.0224771 0 0.033003 -0.0171063 0 0.0329793 -0.0109618 0 0.0329639 -0.00396794 0 - 0.0198682 -0.000638272 0 0.019652 -0.00144739 0 0.0194464 -0.00187236 0 0.0193371 -0.00207065 0 - 0.0193308 -0.00215431 0 0.019412 -0.00218634 0 0.0195668 -0.00219941 0 0.0197892 -0.0022111 0 - 0.0200811 -0.00223292 0 0.0204515 -0.00227541 0 0.0209165 -0.00235142 0 0.0214997 -0.00247926 0 - 0.0222338 -0.00268662 0 0.0231631 -0.00301684 0 0.0243442 -0.00353894 0 0.025844 -0.00436345 0 - 0.0277255 -0.0056645 0 0.0300071 -0.00770194 0 0.0325772 -0.0108132 0 0.0350729 -0.0152864 0 - 0.0368876 -0.0209499 0 0.0377542 -0.0265419 0 0.0379385 -0.0313619 0 0.037763 -0.0352264 0 - 0.0374354 -0.0381727 0 0.0370603 -0.0402942 0 0.0366821 -0.0416793 0 0.0363173 -0.0423964 0 - 0.0359705 -0.0424936 0 0.0356419 -0.0420025 0 0.0353312 -0.0409412 0 0.0350379 -0.0393171 0 - 0.0347622 -0.0371281 0 0.0345048 -0.0343631 0 0.0342674 -0.031003 0 0.0340526 -0.0270196 0 - 0.0338642 -0.0223757 0 0.0337076 -0.0170235 0 0.0335908 -0.010904 0 0.0335247 -0.00394424 0 - 0.0249045 -0.00048906 0 0.024756 -0.00123197 0 0.0245919 -0.00171808 0 0.0244903 -0.00201405 0 - 0.0244788 -0.0021931 0 0.0245599 -0.00230978 0 0.0247293 -0.00240017 0 0.0249848 -0.00248826 0 - 0.0253294 -0.00259223 0 0.0257719 -0.0027291 0 0.0263276 -0.00291848 0 0.0270184 -0.0031861 0 - 0.0278725 -0.00356811 0 0.0289246 -0.00411671 0 0.0302122 -0.00490779 0 0.0317678 -0.00604996 0 - 0.0336002 -0.00769188 0 0.0356616 -0.0100176 0 0.0378003 -0.0132064 0 0.0397323 -0.0173207 0 - 0.0411137 -0.0221117 0 0.0417891 -0.0269221 0 0.0418721 -0.0312491 0 0.0415669 -0.0348585 0 - 0.0410477 -0.0376938 0 0.040429 -0.0397792 0 0.0397764 -0.0411636 0 0.0391244 -0.0418954 0 - 0.03849 -0.0420134 0 0.0378813 -0.0415455 0 0.0373024 -0.0405086 0 0.0367556 -0.0389097 0 - 0.036243 -0.0367472 0 0.0357671 -0.0340108 0 0.0353315 -0.0306823 0 0.034941 -0.0267349 0 - 0.0346022 -0.0221332 0 0.0343244 -0.0168317 0 0.0341201 -0.0107747 0 0.0340064 -0.00389368 0 - 0.0296146 -0.000398714 0 0.0295194 -0.00107871 0 0.0294069 -0.00159475 0 0.0293375 -0.00196629 0 - 0.0293434 -0.00223529 0 0.0294378 -0.00244304 0 0.0296247 -0.00262329 0 0.0299068 -0.00280277 0 - 0.0302889 -0.00300431 0 0.0307796 -0.00325021 0 0.031392 -0.00356549 0 0.0321434 -0.00398124 0 - 0.0330544 -0.00453819 0 0.0341466 -0.00529088 0 0.0354372 -0.00631184 0 0.0369302 -0.00769441 0 - 0.0386005 -0.00955022 0 0.0403735 -0.0119936 0 0.0421062 -0.0151019 0 0.0435933 -0.0188442 0 - 0.0446272 -0.0230036 0 0.0451099 -0.0271884 0 0.0450904 -0.0310463 0 0.0446945 -0.03436 0 - 0.0440542 -0.0370326 0 0.0432743 -0.0390417 0 0.0424269 -0.0404011 0 0.0415576 -0.0411367 0 - 0.0406943 -0.0412744 0 0.0398536 -0.0408351 0 0.0390455 -0.039832 0 0.0382772 -0.038271 0 - 0.0375541 -0.0361501 0 0.0368817 -0.0334596 0 0.0362662 -0.0301824 0 0.0357153 -0.0262934 0 - 0.035239 -0.0217595 0 0.0348501 -0.0165387 0 0.0345659 -0.0105792 0 0.0344088 -0.00381837 0 - 0.0340044 -0.000345845 0 0.0339497 -0.000981704 0 0.0338861 -0.00151571 0 0.0338566 -0.00194634 0 - 0.0338909 -0.00229544 0 0.034006 -0.00259237 0 0.0342112 -0.00286617 0 0.0345128 -0.00314357 0 - 0.034917 -0.00344973 0 0.0354317 -0.0038102 0 0.0360671 -0.00425334 0 0.0368351 -0.00481282 0 - 0.0377476 -0.00553015 0 0.0388135 -0.006457 0 0.0400337 -0.00765648 0 0.0413927 -0.00920179 0 - 0.0428488 -0.0111693 0 0.0443232 -0.0136218 0 0.0456959 -0.0165791 0 0.0468202 -0.0199783 0 - 0.0475634 -0.0236465 0 0.0478597 -0.0273246 0 0.04773 -0.0307609 0 0.0472526 -0.0337721 0 - 0.0465234 -0.0362512 0 0.0456306 -0.0381504 0 0.0446432 -0.0394576 0 0.0436113 -0.0401791 0 - 0.0425695 -0.040327 0 0.0415413 -0.0399135 0 0.040543 -0.0389472 0 0.0395864 -0.037431 0 - 0.0386814 -0.035362 0 0.037837 -0.0327308 0 0.0370626 -0.0295213 0 0.0363693 -0.0257103 0 - 0.0357704 -0.0212674 0 0.0352825 -0.0161542 0 0.0349271 -0.010324 0 0.0347316 -0.00372094 0 - 0.0380772 -0.000318059 0 0.0380528 -0.000930471 0 0.0380304 -0.00148088 0 0.0380392 -0.00196043 0 - 0.0381034 -0.00237986 0 0.0382401 -0.00275978 0 0.0384606 -0.00312449 0 0.0387729 -0.00349912 0 - 0.0391838 -0.00390925 0 0.0397001 -0.00438167 0 0.0403286 -0.00494586 0 0.0410759 -0.00563552 0 - 0.0419459 -0.00648995 0 0.0429376 -0.00755481 0 0.0440402 -0.00888141 0 0.0452277 -0.0105233 0 - 0.0464525 -0.0125286 0 0.0476416 -0.014926 0 0.0486991 -0.0177051 0 0.0495192 -0.0207968 0 - 0.0500122 -0.0240643 0 0.0501323 -0.0273233 0 0.0498878 -0.0303881 0 0.0493286 -0.0331082 0 - 0.0485242 -0.0353814 0 0.0475453 -0.0371484 0 0.0464539 -0.0383808 0 0.0452994 -0.0390696 0 - 0.0441196 -0.0392149 0 0.0429425 -0.0388204 0 0.0417894 -0.0378888 0 0.0406766 -0.0364201 0 - 0.0396182 -0.0344096 0 0.038627 -0.0318476 0 0.0377159 -0.0287191 0 0.0368993 -0.0250026 0 - 0.036194 -0.0206708 0 0.0356203 -0.0156892 0 0.0352033 -0.0100166 0 0.0349748 -0.00360432 0 - 0.0418343 -0.000307605 0 0.0418322 -0.000914523 0 0.0418419 -0.00148407 0 0.0418825 -0.00200664 0 - 0.0419724 -0.0024878 0 0.0421265 -0.00294265 0 0.0423559 -0.00339152 0 0.0426689 -0.00385736 0 - 0.0430718 -0.00436482 0 0.0435697 -0.00494031 0 0.0441665 -0.00561256 0 0.0448638 -0.00641335 0 - 0.0456595 -0.00737789 0 0.0465454 -0.00854446 0 0.0475037 -0.00995266 0 0.0485036 -0.0116394 0 - 0.0494981 -0.0136319 0 0.0504239 -0.0159377 0 0.0512051 -0.0185321 0 0.0517642 -0.021349 0 - 0.0520381 -0.024279 0 0.0519937 -0.0271842 0 0.0516338 -0.0299227 0 0.0509914 -0.0323719 0 - 0.050117 -0.034439 0 0.049067 -0.0360619 0 0.0478946 -0.0372035 0 0.0466461 -0.037844 0 - 0.0453595 -0.0379741 0 0.0440655 -0.03759 0 0.0427885 -0.036689 0 0.0415488 -0.0352675 0 - 0.040364 -0.033319 0 0.0392505 -0.0308335 0 0.0382247 -0.0277964 0 0.0373042 -0.0241883 0 - 0.0365091 -0.0199847 0 0.035863 -0.0151554 0 0.0353944 -0.00966488 0 0.0351384 -0.00347157 0 - 0.0452766 -0.000309116 0 0.0452901 -0.000924421 0 0.0453229 -0.00151665 0 0.0453867 -0.00207851 0 - 0.0454948 -0.00261388 0 0.0456589 -0.00313482 0 0.0458889 -0.00365869 0 0.0461919 -0.00420619 0 - 0.0465733 -0.00480027 0 0.0470362 -0.00546578 0 0.0475818 -0.00622943 0 0.0482078 -0.00711983 0 - 0.0489079 -0.0081672 0 0.0496692 -0.0094023 0 0.0504704 -0.0108543 0 0.0512799 -0.0125471 0 - 0.0520545 -0.0144934 0 0.0527406 -0.0166881 0 0.0532784 -0.0191007 0 0.05361 -0.0216711 0 - 0.0536897 -0.0243105 0 0.0534929 -0.0269116 0 0.0530203 -0.0293628 0 0.0522944 -0.0315634 0 - 0.0513528 -0.0334315 0 0.0502402 -0.0349067 0 0.0490018 -0.0359479 0 0.0476795 -0.0365288 0 - 0.04631 -0.0366333 0 0.0449247 -0.0362515 0 0.0435501 -0.035376 0 0.0422093 -0.034 0 - 0.0409228 -0.0321152 0 0.03971 -0.029711 0 0.0385905 -0.0267735 0 0.0375849 -0.0232851 0 - 0.0367163 -0.0192241 0 0.036011 -0.0145646 0 0.0355004 -0.00927656 0 0.0352223 -0.00332573 0 - 0.0484047 -0.000318542 0 0.0484281 -0.000951896 0 0.0484756 -0.00156948 0 0.0485536 -0.00216752 0 - 0.0486709 -0.0027502 0 0.0488363 -0.0033281 0 0.0490576 -0.00391654 0 0.0493403 -0.00453412 0 - 0.0496883 -0.00520171 0 0.0501029 -0.00594194 0 0.0505828 -0.00677874 0 0.0511232 -0.00773695 0 - 0.0517146 -0.00884158 0 0.052342 -0.0101165 0 0.0529829 -0.0115823 0 0.053607 -0.0132528 0 - 0.0541759 -0.0151313 0 0.0546451 -0.0172055 0 0.0549674 -0.0194433 0 0.0550987 -0.0217913 0 - 0.055005 -0.0241763 0 0.0546681 -0.0265121 0 0.0540876 -0.0287091 0 0.0532797 -0.0306833 0 - 0.0522731 -0.0323634 0 0.0511037 -0.0336928 0 0.0498097 -0.0346294 0 0.0484284 -0.0351436 0 - 0.0469942 -0.0352148 0 0.0455383 -0.0348286 0 0.044088 -0.033974 0 0.0426682 -0.0326413 0 - 0.0413018 -0.0308209 0 0.0400107 -0.0285015 0 0.038817 -0.0256698 0 0.037744 -0.0223101 0 - 0.036817 -0.0184035 0 0.0360652 -0.0139281 0 0.0355219 -0.00885926 0 0.0352267 -0.00316971 0 - 0.0512188 -0.000332663 0 0.0512474 -0.000989786 0 0.0513021 -0.00163377 0 0.0513855 -0.00226469 0 - 0.0515031 -0.00288792 0 0.0516609 -0.0035136 0 0.0518643 -0.00415565 0 0.0521173 -0.00483079 0 - 0.0524221 -0.00555777 0 0.0527782 -0.00635665 0 0.0531825 -0.00724828 0 0.0536284 -0.0082536 0 - 0.0541047 -0.0093927 0 0.0545954 -0.0106834 0 0.0550786 -0.0121394 0 0.0555265 -0.0137676 0 - 0.0559058 -0.0155647 0 0.0561794 -0.0175149 0 0.05631 -0.0195867 0 0.0562638 -0.0217329 0 - 0.0560149 -0.0238923 0 0.0555497 -0.025994 0 0.0548676 -0.0279645 0 0.053981 -0.0297334 0 - 0.0529123 -0.0312382 0 0.0516908 -0.0324271 0 0.0503488 -0.0332591 0 0.0489196 -0.0337033 0 - 0.047435 -0.0337364 0 0.045925 -0.0333411 0 0.0444172 -0.0325036 0 0.0429376 -0.0312123 0 - 0.0415104 -0.0294563 0 0.0401596 -0.0272241 0 0.0389093 -0.0245032 0 0.0377848 -0.0212792 0 - 0.0368137 -0.0175363 0 0.0360268 -0.0132565 0 0.0354592 -0.00842002 0 0.0351517 -0.0030062 0 - 0.0537193 -0.000348868 0 0.0537491 -0.00103198 0 0.0538044 -0.00170158 0 0.0538855 -0.00236139 0 - 0.053995 -0.00301836 0 0.0541368 -0.00368269 0 0.0543142 -0.00436735 0 0.0545295 -0.00508744 0 - 0.0547832 -0.00585961 0 0.0550737 -0.00670136 0 0.0553962 -0.00763045 0 0.055743 -0.00866408 0 - 0.0561024 -0.00981794 0 0.0564583 -0.0111049 0 0.0567903 -0.0125332 0 0.0570734 -0.0141047 0 - 0.057279 -0.0158124 0 0.0573767 -0.0176386 0 0.0573366 -0.0195536 0 0.0571324 -0.0215157 0 - 0.0567446 -0.0234728 0 0.0561625 -0.0253662 0 0.0553862 -0.027134 0 0.0544254 -0.0287165 0 - 0.0532983 -0.0300593 0 0.0520292 -0.0311153 0 0.0506458 -0.0318456 0 0.0491776 -0.0322194 0 - 0.047654 -0.0322121 0 0.0461034 -0.0318048 0 0.0445534 -0.030982 0 0.0430299 -0.0297308 0 - 0.0415585 -0.0280393 0 0.0401643 -0.0258961 0 0.038873 -0.0232895 0 0.0377115 -0.0202069 0 - 0.036709 -0.016635 0 0.0358975 -0.0125594 0 0.0353132 -0.00796525 0 0.0349974 -0.00283761 0 - 0.0559063 -0.000365038 0 0.055934 -0.00107337 0 0.0559845 -0.00176604 0 0.0560565 -0.00244996 0 - 0.0561509 -0.00313369 0 0.0562694 -0.00382769 0 0.0564139 -0.00454424 0 0.0565851 -0.00529706 0 - 0.0567822 -0.00610083 0 0.0570023 -0.00697063 0 0.0572398 -0.0079213 0 0.0574865 -0.00896669 0 - 0.0577305 -0.0101187 0 0.0579565 -0.0113861 0 0.0581458 -0.0127732 0 0.0582764 -0.0142783 0 - 0.0583241 -0.0158921 0 0.0582639 -0.0175964 0 0.0580717 -0.0193636 0 0.0577271 -0.0211568 0 - 0.0572148 -0.0229316 0 0.0565272 -0.0246378 0 0.0556646 -0.0262234 0 0.0546352 -0.0276369 0 - 0.0534543 -0.0288308 0 0.0521422 -0.0297626 0 0.0507233 -0.0303961 0 0.0492238 -0.0307012 0 - 0.0476706 -0.0306535 0 0.0460909 -0.0302332 0 0.0445113 -0.0294239 0 0.0429578 -0.028212 0 - 0.0414563 -0.0265853 0 0.0400329 -0.0245326 0 0.0387143 -0.0220431 0 0.0375285 -0.019106 0 - 0.0365056 -0.0157105 0 0.0356787 -0.0118455 0 0.0350845 -0.00750059 0 0.034764 -0.00266603 0 - 0.05778 -0.000379493 0 0.0578032 -0.00110979 0 0.0578445 -0.00182144 0 0.0579019 -0.00252396 0 - 0.0579752 -0.00322728 0 0.0580647 -0.0039422 0 0.0581709 -0.00468044 0 0.0582933 -0.00545449 0 - 0.0584301 -0.00627726 0 0.0585775 -0.00716162 0 0.0587294 -0.0081198 0 0.0588773 -0.00916273 0 - 0.0590098 -0.0102991 0 0.0591126 -0.0115346 0 0.0591691 -0.0128705 0 0.0591599 -0.0143026 0 - 0.0590649 -0.0158204 0 0.0588632 -0.0174061 0 0.0585357 -0.0190342 0 0.0580662 -0.0206721 0 - 0.0574432 -0.0222811 0 0.056661 -0.0238185 0 0.0557205 -0.0252395 0 0.0546288 -0.0264998 0 - 0.0533992 -0.0275574 0 0.0520494 -0.0283742 0 0.0506007 -0.0289168 0 0.0490767 -0.0291569 0 - 0.0475023 -0.0290703 0 0.045903 -0.0286374 0 0.0443046 -0.0278416 0 0.0427328 -0.026669 0 - 0.0412135 -0.0251075 0 0.0397732 -0.0231466 0 0.0384391 -0.0207764 0 0.03724 -0.0179878 0 - 0.0362065 -0.0147724 0 0.0353722 -0.0111223 0 0.0347737 -0.00703097 0 0.0344517 -0.00249326 0 - 0.0593408 -0.000390936 0 0.0593573 -0.00113801 0 0.0593861 -0.00186327 0 0.0594248 -0.00257824 0 - 0.0594724 -0.00329392 0 0.0595286 -0.00402132 0 0.0595928 -0.00477167 0 0.0596635 -0.00555636 0 - 0.0597381 -0.00638673 0 0.0598122 -0.00727368 0 0.0598798 -0.00822717 0 0.0599321 -0.00925564 0 - 0.0599587 -0.0103653 0 0.0599464 -0.0115591 0 0.0598804 -0.0128364 0 0.0597442 -0.0141914 0 - 0.0595207 -0.015613 0 0.0591929 -0.0170841 0 0.0587454 -0.0185812 0 0.0581655 -0.0200756 0 - 0.0574445 -0.0215335 0 0.0565783 -0.0229178 0 0.0555684 -0.0241898 0 0.0544214 -0.0253109 0 - 0.053149 -0.0262442 0 0.0517668 -0.0269554 0 0.050294 -0.0274141 0 0.048752 -0.0275936 0 - 0.0471638 -0.027471 0 0.0455534 -0.0270271 0 0.0439455 -0.0262456 0 0.0423655 -0.025113 0 - 0.0408389 -0.0236176 0 0.0393922 -0.0217495 0 0.0380529 -0.0195001 0 0.03685 -0.0168621 0 - 0.0358143 -0.0138291 0 0.0349794 -0.0103963 0 0.0343815 -0.00656056 0 0.0340606 -0.00232081 0 - 0.0605886 -0.000398426 0 0.0605972 -0.00115564 0 0.060611 -0.0018882 0 0.060628 -0.00260903 0 - 0.060647 -0.00332983 0 0.0606671 -0.00406167 0 0.0606869 -0.00481527 0 0.0607044 -0.00560102 0 - 0.0607166 -0.00642885 0 0.0607188 -0.00730794 0 0.0607047 -0.00824634 0 0.0606663 -0.00925042 0 - 0.0605936 -0.0103243 0 0.0604749 -0.0114691 0 0.0602972 -0.0126826 0 0.0600463 -0.0139581 0 - 0.059708 -0.0152844 0 0.0592684 -0.0166452 0 0.058715 -0.0180192 0 0.058038 -0.0193808 0 - 0.0572309 -0.0207002 0 0.0562911 -0.0219451 0 0.0552205 -0.0230819 0 0.0540255 -0.0240768 0 - 0.0527165 -0.0248969 0 0.0513079 -0.0255119 0 0.0498168 -0.0258938 0 0.0482629 -0.026018 0 - 0.0466677 -0.0258631 0 0.0450537 -0.0254107 0 0.0434447 -0.0246452 0 0.0418652 -0.0235538 0 - 0.0403403 -0.0221254 0 0.0388964 -0.0203511 0 0.0375607 -0.0182236 0 0.0363621 -0.0157371 0 - 0.0353314 -0.0128877 0 0.0345016 -0.00967298 0 0.0339085 -0.00609287 0 0.0335908 -0.00214992 0 - 0.0615237 -0.000401329 0 0.0615234 -0.00116104 0 0.0615208 -0.00189398 0 0.0615143 -0.00261383 0 - 0.0615029 -0.00333263 0 0.0614853 -0.00406133 0 0.06146 -0.00481007 0 0.0614245 -0.00558831 0 - 0.0613755 -0.00640472 0 0.0613082 -0.00726702 0 0.0612167 -0.00818161 0 0.0610931 -0.00915319 0 - 0.0609286 -0.0101842 0 0.0607127 -0.0112746 0 0.060434 -0.0124208 0 0.0600806 -0.0136157 0 - 0.0596404 -0.0148484 0 0.0591023 -0.0161034 0 0.0584563 -0.0173616 0 0.0576947 -0.0185999 0 - 0.056813 -0.0197921 0 0.0558096 -0.02091 0 0.054687 -0.0219239 0 0.0534514 -0.0228041 0 - 0.0521125 -0.0235217 0 0.0506835 -0.0240493 0 0.0491801 -0.0243618 0 0.0476204 -0.0244365 0 - 0.0460246 -0.0242535 0 0.0444139 -0.0237957 0 0.0428112 -0.0230485 0 0.0412399 -0.0219997 0 - 0.0397247 -0.0206394 0 0.0382913 -0.0189597 0 0.0369667 -0.0169547 0 0.0357795 -0.0146202 0 - 0.0347598 -0.0119542 0 0.03394 -0.00895691 0 0.0333551 -0.00563083 0 0.0330424 -0.0019816 0 - 0.0621462 -0.00039929 0 0.0621366 -0.0011533 0 0.0621169 -0.00187933 0 0.0620862 -0.00259131 0 - 0.0620437 -0.00330125 0 0.0619883 -0.00401974 0 0.0619183 -0.00475629 0 0.0618311 -0.00551945 0 - 0.0617234 -0.00631678 0 0.0615904 -0.00715472 0 0.0614263 -0.0080383 0 0.0612242 -0.00897087 0 - 0.0609759 -0.00995368 0 0.0606721 -0.0109855 0 0.0603032 -0.0120622 0 0.0598589 -0.0131766 0 - 0.0593293 -0.0143178 0 0.0587052 -0.0154718 0 0.057979 -0.016621 0 0.0571447 -0.0177448 0 - 0.0561992 -0.01882 0 0.0551421 -0.0198216 0 0.0539762 -0.0207238 0 0.0527077 -0.0215001 0 - 0.0513458 -0.022125 0 0.0499025 -0.0225738 0 0.0483928 -0.0228241 0 0.0468334 -0.0228551 0 - 0.0452431 -0.0226487 0 0.0436422 -0.022189 0 0.0420523 -0.0214625 0 0.0404961 -0.0204582 0 - 0.0389975 -0.0191672 0 0.0375816 -0.0175827 0 0.0362748 -0.0157003 0 0.0351048 -0.0135174 0 - 0.0341012 -0.0110338 0 0.0332957 -0.00825198 0 0.0327217 -0.00517686 0 0.0324155 -0.00181667 0 - 0.0624561 -0.000392188 0 0.0624373 -0.00113209 0 0.0624004 -0.0018439 0 0.0623457 -0.00254126 0 - 0.0622726 -0.0032358 0 0.0621804 -0.00393757 0 0.0620673 -0.00465537 0 0.061931 -0.00539686 0 - 0.0617679 -0.00616856 0 0.0615738 -0.00697581 0 0.0613432 -0.00782253 0 0.0610696 -0.00871097 0 - 0.0607458 -0.00964143 0 0.0603638 -0.010612 0 0.0599151 -0.0116181 0 0.0593912 -0.0126525 0 - 0.058784 -0.013705 0 0.058086 -0.0147626 0 0.0572913 -0.0158092 0 0.0563956 -0.0168265 0 - 0.0553968 -0.0177939 0 0.0542955 -0.0186893 0 0.053095 -0.0194897 0 0.0518012 -0.0201719 0 - 0.0504231 -0.0207131 0 0.0489722 -0.0210915 0 0.0474621 -0.0212866 0 0.0459089 -0.0212799 0 - 0.0443301 -0.0210548 0 0.042745 -0.0205968 0 0.0411741 -0.0198938 0 0.0396393 -0.0189359 0 - 0.0381635 -0.0177152 0 0.0367712 -0.0162264 0 0.0354877 -0.0144662 0 0.0343401 -0.0124339 0 - 0.0333572 -0.0101308 0 0.0325693 -0.00756147 0 0.0320088 -0.00473296 0 0.0317102 -0.0016558 0 - 0.0624537 -0.000380108 0 0.0624259 -0.00109765 0 0.0623725 -0.00178807 0 0.0622946 -0.00246435 0 - 0.0621924 -0.00313742 0 0.0620652 -0.00381659 0 0.0619118 -0.00450984 0 0.0617297 -0.00522395 0 - 0.0615158 -0.0059645 0 0.0612659 -0.00673588 0 0.0609751 -0.00754105 0 0.0606377 -0.00838141 0 - 0.060247 -0.00925657 0 0.0597963 -0.0101641 0 0.0592783 -0.0110993 0 0.0586858 -0.012055 0 - 0.0580123 -0.0130218 0 0.0572519 -0.0139875 0 0.0563999 -0.0149377 0 0.0554535 -0.0158559 0 - 0.0544115 -0.0167238 0 0.0532754 -0.0175219 0 0.0520486 -0.0182298 0 0.0507373 -0.0188269 0 - 0.0493502 -0.0192929 0 0.047898 -0.0196085 0 0.0463938 -0.0197554 0 0.0448526 -0.0197167 0 - 0.0432911 -0.0194777 0 0.0417275 -0.0190252 0 0.0401814 -0.0183484 0 0.0386736 -0.0174387 0 - 0.0372264 -0.0162894 0 0.0358629 -0.0148964 0 0.0346079 -0.0132578 0 0.0334873 -0.0113742 0 - 0.0325287 -0.00924896 0 0.0317614 -0.00688811 0 0.0312164 -0.0043008 0 0.0309265 -0.00149953 0 - 0.0621389 -0.000363306 0 0.0621028 -0.00105062 0 0.062034 -0.00171293 0 0.0619346 -0.00236212 0 - 0.0618053 -0.00300817 0 0.0616461 -0.00365948 0 0.0614557 -0.00432313 0 0.0612322 -0.005005 0 - 0.0609725 -0.00570983 0 0.0606729 -0.00644112 0 0.060329 -0.00720108 0 0.0599355 -0.00799042 0 - 0.0594868 -0.00880823 0 0.0589769 -0.00965178 0 0.0583997 -0.0105164 0 0.0577494 -0.0113952 0 - 0.0570205 -0.0122793 0 0.0562085 -0.0131576 0 0.0553101 -0.0140172 0 0.0543232 -0.0148432 0 - 0.0532479 -0.0156193 0 0.052086 -0.0163283 0 0.0508414 -0.016952 0 0.0495203 -0.0174723 0 - 0.0481312 -0.0178712 0 0.0466843 -0.0181313 0 0.0451921 -0.0182363 0 0.0436688 -0.0181713 0 - 0.0421302 -0.017923 0 0.0405937 -0.0174797 0 0.0390778 -0.0168319 0 0.0376024 -0.0159721 0 - 0.0361888 -0.014895 0 0.0348591 -0.0135976 0 0.0336371 -0.0120794 0 0.0325475 -0.0103424 0 - 0.0316167 -0.00839145 0 0.0308727 -0.00623428 0 0.0303449 -0.0038818 0 0.0300645 -0.0013483 0 - 0.0615119 -0.000342181 0 0.0614683 -0.000992065 0 0.0613857 -0.00162009 0 0.0612669 -0.00223676 0 - 0.0611135 -0.00285085 0 0.0609256 -0.0034697 0 0.0607025 -0.00409943 0 0.0604424 -0.00474503 0 - 0.0601427 -0.00541038 0 0.0597999 -0.00609826 0 0.0594102 -0.0068102 0 0.0589688 -0.00754641 0 - 0.0584709 -0.00830562 0 0.0579113 -0.00908494 0 0.057285 -0.00987974 0 0.0565872 -0.0106836 0 - 0.0558135 -0.0114883 0 0.0549605 -0.0122837 0 0.0540259 -0.0130581 0 0.0530087 -0.0137982 0 - 0.0519095 -0.0144897 0 0.0507307 -0.0151171 0 0.0494766 -0.0156644 0 0.0481533 -0.0161156 0 - 0.0467692 -0.0164545 0 0.0453341 -0.016666 0 0.0438601 -0.0167354 0 0.0423605 -0.0166494 0 - 0.0408505 -0.0163963 0 0.0393464 -0.0159658 0 0.0378659 -0.0153495 0 0.036428 -0.0145413 0 - 0.0350528 -0.013537 0 0.0337615 -0.0123347 0 0.0325765 -0.0109353 0 0.0315216 -0.009342 0 - 0.0306216 -0.00756119 0 0.0299032 -0.00560209 0 0.0293942 -0.00347722 0 0.0291242 -0.00120252 0 - 0.0605726 -0.000317248 0 0.0605225 -0.000923345 0 0.060428 -0.00151167 0 0.0602926 -0.00209106 0 - 0.0601184 -0.00266892 0 0.059906 -0.0032514 0 0.059655 -0.00384359 0 0.0593638 -0.00444958 0 - 0.0590302 -0.00507248 0 0.0586512 -0.00571438 0 0.0582232 -0.00637628 0 0.0577422 -0.00705797 0 - 0.057204 -0.00775795 0 0.0566042 -0.00847329 0 0.0559387 -0.00919954 0 0.0552034 -0.00993071 0 - 0.0543952 -0.0106592 0 0.0535114 -0.011376 0 0.0525507 -0.0120704 0 0.0515128 -0.0127308 0 - 0.0503989 -0.0133441 0 0.0492119 -0.0138969 0 0.0479564 -0.0143749 0 0.0466385 -0.014764 0 - 0.0452664 -0.0150499 0 0.0438498 -0.015219 0 0.0424 -0.0152585 0 0.04093 -0.0151566 0 - 0.0394539 -0.0149029 0 0.0379875 -0.0144885 0 0.0365475 -0.0139063 0 0.0351519 -0.013151 0 - 0.0338197 -0.0122198 0 0.032571 -0.0111119 0 0.031427 -0.00982915 0 0.0304101 -0.00837627 0 - 0.0295439 -0.00676081 0 0.0288533 -0.00499344 0 0.0283646 -0.0030882 0 0.0281056 -0.00106254 0 - 0.0593212 -0.000289118 0 0.0592658 -0.000846078 0 0.0591615 -0.00139013 0 0.0590126 -0.00192826 0 - 0.0588214 -0.00246633 0 0.058589 -0.00300922 0 0.0583153 -0.00356095 0 0.0579989 -0.00412471 0 - 0.057638 -0.00470286 0 0.0572299 -0.00529689 0 0.0567715 -0.00590736 0 0.0562593 -0.00653374 0 - 0.0556897 -0.00717439 0 0.0550591 -0.00782643 0 0.0543639 -0.00848568 0 0.0536012 -0.00914658 0 - 0.0527683 -0.00980227 0 0.0518637 -0.0104445 0 0.0508865 -0.011064 0 0.0498373 -0.0116501 0 - 0.0487178 -0.0121914 0 0.0475312 -0.012676 0 0.0462822 -0.0130913 0 0.0449773 -0.0134248 0 - 0.0436243 -0.0136639 0 0.0422326 -0.0137966 0 0.0408132 -0.0138117 0 0.0393784 -0.0136986 0 - 0.0379418 -0.0134484 0 0.0365183 -0.0130532 0 0.0351237 -0.0125071 0 0.033775 -0.011806 0 - 0.0324901 -0.0109478 0 0.0312881 -0.00993309 0 0.0301889 -0.00876466 0 0.0292133 -0.00744831 0 - 0.0283835 -0.00599281 0 0.0277229 -0.00441017 0 0.0272559 -0.00271582 0 0.0270087 -0.000928698 0 - 0.0577576 -0.000258477 0 0.0576983 -0.000762086 0 0.0575867 -0.00125826 0 0.0574275 -0.00175198 0 - 0.0572235 -0.00224746 0 0.056976 -0.00274823 0 0.0566851 -0.00325723 0 0.0563498 -0.00377676 0 - 0.0559684 -0.00430849 0 0.0555386 -0.00485338 0 0.0550577 -0.00541158 0 0.0545228 -0.00598238 0 - 0.0539307 -0.00656405 0 0.0532784 -0.00715384 0 0.0525631 -0.00774786 0 0.0517825 -0.00834106 0 - 0.0509348 -0.00892724 0 0.050019 -0.00949906 0 0.0490349 -0.0100482 0 0.0479835 -0.0105653 0 - 0.0468671 -0.0110403 0 0.0456893 -0.0114627 0 0.0444549 -0.0118214 0 0.0431703 -0.0121053 0 - 0.0418433 -0.0123034 0 0.0404831 -0.0124053 0 0.0391002 -0.0124008 0 0.0377065 -0.0122809 0 - 0.0363147 -0.0120377 0 0.0349392 -0.0116646 0 0.0335948 -0.0111566 0 0.0322976 -0.0105105 0 - 0.0310645 -0.00972532 0 0.0299131 -0.00880227 0 0.0288622 -0.00774528 0 0.0279312 -0.00656111 0 - 0.0271406 -0.00525964 0 0.026512 -0.00385408 0 0.0260682 -0.00236119 0 0.0258335 -0.000801365 0 - 0.0558819 -0.00022607 0 0.05582 -0.00067335 0 0.0557037 -0.00111908 0 0.0555379 -0.00156612 0 - 0.0553255 -0.00201697 0 0.055068 -0.0024738 0 0.0547657 -0.00293844 0 0.0544179 -0.00341236 0 - 0.0540229 -0.00389657 0 0.053579 -0.00439156 0 0.0530836 -0.00489717 0 0.0525343 -0.00541254 0 - 0.0519285 -0.00593596 0 0.0512637 -0.00646484 0 0.0505377 -0.00699562 0 0.0497488 -0.00752376 0 - 0.0488957 -0.00804374 0 0.047978 -0.00854905 0 0.0469963 -0.00903231 0 0.0459518 -0.00948536 0 - 0.0448473 -0.00989936 0 0.0436865 -0.010265 0 0.0424746 -0.0105727 0 0.0412177 -0.0108126 0 - 0.0399238 -0.0109752 0 0.0386016 -0.0110511 0 0.0372613 -0.0110318 0 0.0359143 -0.0109091 0 - 0.0345728 -0.0106764 0 0.0332503 -0.0103279 0 0.0319609 -0.0098596 0 0.0307197 -0.00926917 0 - 0.0295425 -0.00855634 0 0.0284458 -0.0077232 0 0.0274468 -0.00677443 0 0.0265635 -0.00571767 0 - 0.0258148 -0.00456375 0 0.0252204 -0.003327 0 0.0248014 -0.00202545 0 0.0245799 -0.000680924 0 - 0.0536941 -0.000192688 0 0.0536312 -0.000581967 0 0.0535128 -0.000975764 0 0.053344 -0.00137477 0 - 0.0531278 -0.00177973 0 0.0528657 -0.00219147 0 0.052558 -0.00261076 0 0.0522041 -0.00303825 0 - 0.0518027 -0.00347437 0 0.0513521 -0.00391919 0 0.0508502 -0.00437233 0 0.0502949 -0.00483282 0 - 0.0496841 -0.00529904 0 0.0490158 -0.0057686 0 0.0482882 -0.0062383 0 0.0475002 -0.00670413 0 - 0.0466511 -0.00716119 0 0.0457409 -0.00760379 0 0.0447706 -0.00802549 0 0.043742 -0.00841913 0 - 0.042658 -0.00877704 0 0.0415225 -0.00909108 0 0.0403408 -0.00935287 0 0.0391192 -0.00955393 0 - 0.0378652 -0.00968586 0 0.0365875 -0.00974058 0 0.035296 -0.00971051 0 0.0340015 -0.00958878 0 - 0.0327157 -0.00936948 0 0.0314513 -0.00904787 0 0.0302216 -0.00862065 0 0.0290409 -0.00808623 0 - 0.0279239 -0.00744499 0 0.0268857 -0.00669965 0 0.0259422 -0.00585554 0 0.0251099 -0.00492099 0 - 0.0244059 -0.00390766 0 0.023848 -0.00283087 0 0.0234553 -0.00170982 0 0.023248 -0.000567806 0 - 0.0511942 -0.000159154 0 0.0511318 -0.000490113 0 0.0510141 -0.000831604 0 0.0508461 -0.00118213 0 - 0.0506307 -0.00154075 0 0.0503693 -0.00190693 0 0.0500622 -0.00228045 0 0.0497087 -0.00266122 0 - 0.0493079 -0.00304916 0 0.0488581 -0.003444 0 0.0483577 -0.00384519 0 0.0478047 -0.00425173 0 - 0.0471975 -0.0046621 0 0.0465344 -0.00507416 0 0.0458144 -0.00548511 0 0.0450365 -0.00589142 0 - 0.0442005 -0.00628885 0 0.043307 -0.00667247 0 0.0423572 -0.00703669 0 0.0413533 -0.00737534 0 - 0.0402982 -0.00768177 0 0.0391963 -0.00794897 0 0.0380527 -0.00816967 0 0.0368738 -0.00833654 0 - 0.0356668 -0.00844232 0 0.0344404 -0.00848 0 0.0332038 -0.00844302 0 0.0319676 -0.00832546 0 - 0.0307428 -0.00812227 0 0.0295416 -0.00782945 0 0.0283765 -0.00744438 0 0.0272608 -0.00696604 0 - 0.026208 -0.00639531 0 0.0252322 -0.00573538 0 0.0243479 -0.00499205 0 0.0235699 -0.00417416 0 - 0.0229134 -0.00329401 0 0.0223945 -0.00236774 0 0.0220299 -0.00141565 0 0.0218377 -0.000462502 0 - 0.0483823 -0.000126311 0 0.0483218 -0.000400005 0 0.0482077 -0.000689934 0 0.0480443 -0.000992471 0 - 0.0478343 -0.00130502 0 0.0475789 -0.00162582 0 0.0472783 -0.00195373 0 0.0469318 -0.00228802 0 - 0.0465384 -0.00262816 0 0.0460968 -0.00297364 0 0.0456055 -0.00332378 0 0.045063 -0.00367762 0 - 0.0444678 -0.00403379 0 0.0438188 -0.00439043 0 0.0431151 -0.0047451 0 0.0423563 -0.0050948 0 - 0.0415427 -0.00543589 0 0.0406749 -0.00576417 0 0.0397546 -0.00607486 0 0.0387841 -0.0063627 0 - 0.0377668 -0.006622 0 0.0367067 -0.00684677 0 0.0356092 -0.00703078 0 0.0344805 -0.00716775 0 - 0.0333277 -0.00725144 0 0.0321592 -0.00727585 0 0.0309839 -0.00723534 0 0.0298118 -0.00712483 0 - 0.0286537 -0.00694001 0 0.0275208 -0.00667756 0 0.026425 -0.00633539 0 0.0253786 -0.00591289 0 - 0.0243942 -0.00541133 0 0.0234848 -0.00483416 0 0.0226633 -0.00418745 0 0.0219429 -0.00348034 0 - 0.021337 -0.00272553 0 0.0208596 -0.00193981 0 0.020525 -0.00114443 0 0.020349 -0.000365576 0 - 0.0452583 -9.50094e-05 0 0.0452013 -0.000313859 0 0.0450934 -0.000554068 0 0.0449384 -0.000809985 0 - 0.0447384 -0.00107749 0 0.0444942 -0.00135371 0 0.0442057 -0.00163672 0 0.0438724 -0.00192524 0 - 0.0434933 -0.00221842 0 0.043067 -0.00251556 0 0.0425924 -0.00281595 0 0.0420683 -0.0031187 0 - 0.0414934 -0.00342263 0 0.0408669 -0.00372615 0 0.0401885 -0.00402722 0 0.0394578 -0.00432333 0 - 0.0386755 -0.00461142 0 0.0378426 -0.00488797 0 0.0369608 -0.00514897 0 0.0360327 -0.00539 0 - 0.0350617 -0.00560626 0 0.0340519 -0.0057927 0 0.0330086 -0.00594406 0 0.0319379 -0.00605502 0 - 0.0308467 -0.00612029 0 0.0297431 -0.00613476 0 0.0286356 -0.00609365 0 0.0275337 -0.00599263 0 - 0.0264477 -0.00582806 0 0.0253883 -0.00559716 0 0.0243666 -0.00529827 0 0.0233941 -0.00493108 0 - 0.0224823 -0.00449706 0 0.021643 -0.00399974 0 0.0208879 -0.00344523 0 0.0202285 -0.00284272 0 - 0.0196763 -0.00220507 0 0.0192429 -0.00154942 0 0.0189404 -0.000897793 0 0.0187818 -0.000277676 0 - 0.0418222 -6.6091e-05 0 0.0417702 -0.000233846 0 0.0416712 -0.000427229 0 0.0415282 -0.000638739 0 - 0.0413424 -0.000862918 0 0.0411143 -0.00109595 0 0.0408435 -0.00133528 0 0.0405294 -0.00157924 0 - 0.0401708 -0.00182674 0 0.0397668 -0.00207701 0 0.0393163 -0.00232935 0 0.0388182 -0.002583 0 - 0.0382717 -0.00283696 0 0.0376763 -0.00308996 0 0.0370317 -0.00334033 0 0.0363381 -0.00358601 0 - 0.0355962 -0.00382453 0 0.0348072 -0.00405298 0 0.0339731 -0.00426807 0 0.0330964 -0.00446614 0 - 0.0321806 -0.00464325 0 0.0312299 -0.0047952 0 0.0302492 -0.00491762 0 0.0292446 -0.00500608 0 - 0.0282227 -0.00505617 0 0.0271911 -0.0050636 0 0.0261581 -0.00502436 0 0.0251328 -0.00493481 0 - 0.0241248 -0.0047919 0 0.0231442 -0.00459329 0 0.0222015 -0.00433765 0 0.0213072 -0.00402488 0 - 0.0204721 -0.00365644 0 0.0197068 -0.00323578 0 0.0190216 -0.00276882 0 0.0184264 -0.0022645 0 - 0.0179308 -0.00173551 0 0.0175442 -0.00119902 0 0.017276 -0.000677497 0 0.0171361 -0.000199535 0 - 0.038074 -4.03694e-05 0 0.0380284 -0.000162032 0 0.0379408 -0.00031246 0 0.0378129 -0.000482556 0 - 0.0376454 -0.000665763 0 0.0374379 -0.000857552 0 0.0371899 -0.00105493 0 0.0369005 -0.00125601 0 - 0.0365687 -0.0014596 0 0.0361934 -0.00166492 0 0.0357739 -0.00187136 0 0.0353093 -0.0020783 0 - 0.0347991 -0.00228497 0 0.034243 -0.00249038 0 0.0336409 -0.00269322 0 0.0329933 -0.00289189 0 - 0.0323009 -0.0030844 0 0.0315652 -0.00326844 0 0.0307881 -0.00344139 0 0.0299722 -0.00360029 0 - 0.0291209 -0.00374197 0 0.0282382 -0.00386303 0 0.027329 -0.00395992 0 0.0263989 -0.00402903 0 - 0.0254543 -0.00406676 0 0.0245025 -0.00406959 0 0.0235513 -0.0040342 0 0.0226092 -0.00395758 0 - 0.0216853 -0.0038372 0 0.020789 -0.00367112 0 0.0199302 -0.00345824 0 0.0191187 -0.00319851 0 - 0.0183643 -0.00289332 0 0.0176766 -0.00254583 0 0.0170645 -0.0021615 0 0.0165366 -0.00174875 0 - 0.0161006 -0.00131969 0 0.0157635 -0.000891091 0 0.0155317 -0.000485415 0 0.0154119 -0.000131977 0 - 0.0340136 -1.85976e-05 0 0.0339757 -0.000100303 0 0.0339016 -0.000212521 0 0.0337919 -0.000344887 0 - 0.0336461 -0.000490053 0 0.0334633 -0.00064306 0 0.0332426 -0.000800728 0 0.0329829 -0.000961109 0 - 0.0326833 -0.00112305 0 0.0323429 -0.00128586 0 0.0319611 -0.00144906 0 0.0315373 -0.00161218 0 - 0.0310711 -0.00177469 0 0.0305624 -0.00193585 0 0.0300114 -0.00209471 0 0.0294187 -0.00225003 0 - 0.0287851 -0.00240032 0 0.0281121 -0.00254381 0 0.0274017 -0.00267845 0 0.0266563 -0.00280195 0 - 0.0258791 -0.00291182 0 0.025074 -0.00300541 0 0.0242456 -0.00307992 0 0.0233992 -0.0031325 0 - 0.0225407 -0.00316029 0 0.021677 -0.00316046 0 0.0208152 -0.00313037 0 0.0199635 -0.00306758 0 - 0.0191302 -0.00297001 0 0.0183242 -0.00283606 0 0.0175545 -0.00266481 0 0.0168303 -0.00245622 0 - 0.0161606 -0.00221145 0 0.0155538 -0.0019332 0 0.015018 -0.00162628 0 0.0145601 -0.00129823 0 - 0.0141861 -0.000960193 0 0.0139007 -0.000627984 0 0.0137073 -0.000323418 0 0.013609 -7.58931e-05 0 - 0.0296411 -1.41797e-06 0 0.0296118 -5.0262e-05 0 0.029553 -0.000129754 0 0.0294638 -0.000228656 0 - 0.0293425 -0.000339215 0 0.0291878 -0.00045639 0 0.0289982 -0.000577085 0 0.0287726 -0.000699503 0 - 0.0285102 -0.00082265 0 0.0282103 -0.000945989 0 0.0278724 -0.00106919 0 0.0274962 -0.00119198 0 - 0.0270815 -0.00131399 0 0.0266284 -0.00143476 0 0.0261371 -0.00155361 0 0.0256084 -0.00166967 0 - 0.0250431 -0.00178185 0 0.0244427 -0.00188885 0 0.0238089 -0.00198916 0 0.0231442 -0.00208109 0 - 0.0224514 -0.00216276 0 0.0217342 -0.00223219 0 0.0209967 -0.00228726 0 0.0202438 -0.00232582 0 - 0.019481 -0.00234567 0 0.0187143 -0.00234467 0 0.0179506 -0.00232075 0 0.0171972 -0.00227202 0 - 0.0164617 -0.00219683 0 0.0157524 -0.00209388 0 0.0150775 -0.0019624 0 0.0144453 -0.00180228 0 - 0.0138641 -0.00161439 0 0.0133415 -0.00140087 0 0.0128844 -0.00116568 0 0.0124986 -0.000915182 0 - 0.0121884 -0.000659097 0 0.0119565 -0.00041166 0 0.0118032 -0.000193204 0 0.0117276 -3.21944e-05 0 - 0.0249562 1.07198e-05 0 0.0249362 -1.30995e-05 0 0.0248939 -6.59218e-05 0 0.0248267 -0.000136069 0 - 0.0247321 -0.000215869 0 0.0246077 -0.000300631 0 0.0244521 -0.000387651 0 0.0242642 -0.000475472 0 - 0.0240433 -0.000563362 0 0.0237889 -0.000650983 0 0.0235008 -0.000738166 0 0.0231788 -0.000824783 0 - 0.022823 -0.000910653 0 0.0224335 -0.000995491 0 0.0220107 -0.00107887 0 0.0215552 -0.00116023 0 - 0.021068 -0.00123882 0 0.0205504 -0.00131375 0 0.0200039 -0.00138398 0 0.0194306 -0.00144832 0 - 0.0188333 -0.00150546 0 0.018215 -0.00155399 0 0.0175795 -0.00159243 0 0.016931 -0.00161922 0 - 0.0162744 -0.0016328 0 0.0156151 -0.00163161 0 0.0149591 -0.00161414 0 0.0143129 -0.001579 0 - 0.0136834 -0.00152493 0 0.0130779 -0.00145095 0 0.0125039 -0.00135639 0 0.0119689 -0.0012411 0 - 0.0114802 -0.00110561 0 0.0110446 -0.00095146 0 0.0106682 -0.0007816 0 0.0103558 -0.00060101 0 - 0.0101102 -0.000417567 0 0.00993226 -0.000243272 0 0.00981985 -9.59578e-05 0 0.00976772 -1.69774e-06 0 - 0.0199587 1.76803e-05 0 0.0199481 1.05506e-05 0 0.0199228 -2.19905e-05 0 0.0198783 -6.83335e-05 0 - 0.0198109 -0.000121555 0 0.0197182 -0.00017782 0 0.0195984 -0.000235125 0 0.0194508 -0.000292498 0 - 0.0192749 -0.000349521 0 0.0190705 -0.000406049 0 0.0188376 -0.000462051 0 0.0185762 -0.00051751 0 - 0.0182865 -0.000572365 0 0.0179687 -0.000626479 0 0.0176232 -0.000679618 0 0.0172506 -0.000731442 0 - 0.0168517 -0.000781501 0 0.0164275 -0.00082924 0 0.0159796 -0.000874 0 0.0155095 -0.000915028 0 - 0.0150196 -0.00095149 0 0.0145124 -0.000982478 0 0.013991 -0.00100703 0 0.013459 -0.00102414 0 - 0.0129205 -0.00103278 0 0.0123802 -0.00103193 0 0.0118429 -0.00102058 0 0.0113143 -0.000997788 0 - 0.0108003 -0.000962682 0 0.0103072 -0.000914548 0 0.00984125 -0.000852878 0 0.00940913 -0.000777471 0 - 0.0090172 -0.000688585 0 0.00867143 -0.000587149 0 0.00837703 -0.000475106 0 0.00813791 -0.000355913 0 - 0.00795612 -0.000235321 0 0.00783105 -0.000122509 0 0.00775849 -3.17547e-05 0 0.00772959 1.51382e-05 0 - 0.0146486 1.97425e-05 0 0.0146469 2.07387e-05 0 0.0146379 2.20556e-06 0 0.0146151 -2.52298e-05 0 - 0.0145741 -5.63395e-05 0 0.0145125 -8.86658e-05 0 0.0144291 -0.000121101 0 0.0143234 -0.000153194 0 - 0.0141952 -0.000184804 0 0.0140448 -0.000215932 0 0.0138722 -0.000246624 0 0.0136775 -0.000276919 0 - 0.0134611 -0.000306823 0 0.0132232 -0.000336288 0 0.0129641 -0.000365211 0 0.0126843 -0.00039342 0 - 0.0123843 -0.000420684 0 0.0120651 -0.000446706 0 0.0117277 -0.000471132 0 0.0113734 -0.000493554 0 - 0.0110039 -0.000513515 0 0.0106212 -0.000530516 0 0.0102276 -0.000544025 0 0.00982591 -0.000553482 0 - 0.00941925 -0.000558313 0 0.00901116 -0.000557937 0 0.0086056 -0.000551779 0 0.00820687 -0.000539285 0 - 0.00781963 -0.000519943 0 0.00744883 -0.000493305 0 0.00709965 -0.000459027 0 0.00677737 -0.000416924 0 - 0.00648723 -0.000367052 0 0.00623416 -0.000309847 0 0.0060225 -0.000246343 0 0.00585547 -0.000178536 0 - 0.00573453 -0.00010997 0 0.00565842 -4.66718e-05 0 0.00562191 1.46791e-06 0 0.00561393 1.88086e-05 0 - 0.00902581 1.72341e-05 0 0.00903231 1.8404e-05 0 0.00903714 8.76324e-06 0 0.00903245 -4.30342e-06 0 - 0.00901442 -1.82794e-05 0 0.00898157 -3.22726e-05 0 0.00893347 -4.59767e-05 0 0.0088702 -5.93159e-05 0 - 0.00879194 -7.23082e-05 0 0.00869897 -8.50044e-05 0 0.0085915 -9.7459e-05 0 0.00846975 -0.000109714 0 - 0.00833392 -0.000121789 0 0.00818421 -0.00013368 0 0.00802085 -0.000145353 0 0.00784415 -0.000156748 0 - 0.0076545 -0.000167773 0 0.0074524 -0.000178314 0 0.00723852 -0.000188229 0 0.00701371 -0.000197352 0 - 0.006779 -0.000205498 0 0.00653566 -0.000212463 0 0.0062852 -0.000218029 0 0.00602938 -0.000221963 0 - 0.00577023 -0.000224026 0 0.00551007 -0.000223975 0 0.00525145 -0.000221562 0 0.00499723 -0.000216549 0 - 0.0047505 -0.000208707 0 0.00451458 -0.000197828 0 0.004293 -0.000183737 0 0.00408938 -0.000166317 0 - 0.0039074 -0.000145538 0 0.00375064 -0.000121522 0 0.00362227 -9.46411e-05 0 0.00352477 -6.57111e-05 0 - 0.00345924 -3.63299e-05 0 0.00342452 -9.47908e-06 0 0.00341577 9.535e-06 0 0.00342237 1.21313e-05 0 - 0.00309337 7.42829e-06 0 0.00310794 7.14415e-06 0 0.00311911 4.02578e-06 0 0.00312368 5.47285e-07 0 - 0.0031214 -2.82493e-06 0 0.00311256 -6.02282e-06 0 0.00309748 -9.05642e-06 0 0.00307647 -1.19512e-05 0 - 0.00304978 -1.47348e-05 0 0.00301762 -1.74323e-05 0 0.00298012 -2.00648e-05 0 0.00293741 -2.26473e-05 0 - 0.00288957 -2.51886e-05 0 0.00283669 -2.76908e-05 0 0.00277885 -3.0149e-05 0 0.00271615 -3.25518e-05 0 - 0.00264872 -3.48813e-05 0 0.00257672 -3.71136e-05 0 0.00250039 -3.92192e-05 0 0.00242001 -4.11632e-05 0 - 0.00233594 -4.29061e-05 0 0.00224863 -4.44044e-05 0 0.00215861 -4.56111e-05 0 0.00206652 -4.6476e-05 0 - 0.0019731 -4.6947e-05 0 0.00187918 -4.69702e-05 0 0.00178572 -4.64909e-05 0 0.00169378 -4.54547e-05 0 - 0.00160452 -4.38082e-05 0 0.00151921 -4.15008e-05 0 0.00143922 -3.8487e-05 0 0.001366 -3.47305e-05 0 - 0.00130106 -3.02105e-05 0 0.00124591 -2.49347e-05 0 0.00120202 -1.89639e-05 0 0.00117059 -1.24615e-05 0 - 0.00115233 -5.79641e-06 0 0.00114679 2.52901e-07 0 0.00115119 4.15212e-06 0 0.00115873 3.38143e-06 0 - - - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - - - 1.00411e-08 1.00411e-08 1.00411e-08 1.00411e-08 1.00411e-08 1.00411e-08 1.00411e-08 1.00411e-08 1.00411e-08 1.00411e-08 1.00411e-08 1.00411e-08 - 1.00411e-08 1.00411e-08 1.00411e-08 1.00411e-08 1.00411e-08 1.00411e-08 1.00411e-08 1.00411e-08 2.81536e-08 2.81536e-08 2.81536e-08 2.81536e-08 - 2.81536e-08 2.81536e-08 2.81536e-08 2.81536e-08 2.81536e-08 2.81536e-08 2.81536e-08 2.81536e-08 2.81536e-08 2.81536e-08 2.81536e-08 2.81536e-08 - 2.81536e-08 2.81536e-08 2.81536e-08 2.81536e-08 4.56411e-08 4.56411e-08 4.56411e-08 4.56411e-08 4.56411e-08 4.56411e-08 4.56411e-08 4.56411e-08 - 4.56411e-08 4.56411e-08 4.56411e-08 4.56411e-08 4.56411e-08 4.56411e-08 4.56411e-08 4.56411e-08 4.56411e-08 4.56411e-08 4.56411e-08 4.56411e-08 - 6.25036e-08 6.25036e-08 6.25036e-08 6.25036e-08 6.25036e-08 6.25036e-08 6.25036e-08 6.25036e-08 6.25036e-08 6.25036e-08 6.25036e-08 6.25036e-08 - 6.25036e-08 6.25036e-08 6.25036e-08 6.25036e-08 6.25036e-08 6.25036e-08 6.25036e-08 6.25036e-08 7.87411e-08 7.87411e-08 7.87411e-08 7.87411e-08 - 7.87411e-08 7.87411e-08 7.87411e-08 7.87411e-08 7.87411e-08 7.87411e-08 7.87411e-08 7.87411e-08 7.87411e-08 7.87411e-08 7.87411e-08 7.87411e-08 - 7.87411e-08 7.87411e-08 7.87411e-08 7.87411e-08 9.43536e-08 9.43536e-08 9.43536e-08 9.43536e-08 9.43536e-08 9.43536e-08 9.43536e-08 9.43536e-08 - 9.43536e-08 9.43536e-08 9.43536e-08 9.43536e-08 9.43536e-08 9.43536e-08 9.43536e-08 9.43536e-08 9.43536e-08 9.43536e-08 9.43536e-08 9.43536e-08 - 1.09341e-07 1.09341e-07 1.09341e-07 1.09341e-07 1.09341e-07 1.09341e-07 1.09341e-07 1.09341e-07 1.09341e-07 1.09341e-07 1.09341e-07 1.09341e-07 - 1.09341e-07 1.09341e-07 1.09341e-07 1.09341e-07 1.09341e-07 1.09341e-07 1.09341e-07 1.09341e-07 1.23704e-07 1.23704e-07 1.23704e-07 1.23704e-07 - 1.23704e-07 1.23704e-07 1.23704e-07 1.23704e-07 1.23704e-07 1.23704e-07 1.23704e-07 1.23704e-07 1.23704e-07 1.23704e-07 1.23704e-07 1.23704e-07 - 1.23704e-07 1.23704e-07 1.23704e-07 1.23704e-07 1.37441e-07 1.37441e-07 1.37441e-07 1.37441e-07 1.37441e-07 1.37441e-07 1.37441e-07 1.37441e-07 - 1.37441e-07 1.37441e-07 1.37441e-07 1.37441e-07 1.37441e-07 1.37441e-07 1.37441e-07 1.37441e-07 1.37441e-07 1.37441e-07 1.37441e-07 1.37441e-07 - 1.50554e-07 1.50554e-07 1.50554e-07 1.50554e-07 1.50554e-07 1.50554e-07 1.50554e-07 1.50554e-07 1.50554e-07 1.50554e-07 1.50554e-07 1.50554e-07 - 1.50554e-07 1.50554e-07 1.50554e-07 1.50554e-07 1.50554e-07 1.50554e-07 1.50554e-07 1.50554e-07 1.63041e-07 1.63041e-07 1.63041e-07 1.63041e-07 - 1.63041e-07 1.63041e-07 1.63041e-07 1.63041e-07 1.63041e-07 1.63041e-07 1.63041e-07 1.63041e-07 1.63041e-07 1.63041e-07 1.63041e-07 1.63041e-07 - 1.63041e-07 1.63041e-07 1.63041e-07 1.63041e-07 1.74904e-07 1.74904e-07 1.74904e-07 1.74904e-07 1.74904e-07 1.74904e-07 1.74904e-07 1.74904e-07 - 1.74904e-07 1.74904e-07 1.74904e-07 1.74904e-07 1.74904e-07 1.74904e-07 1.74904e-07 1.74904e-07 1.74904e-07 1.74904e-07 1.74904e-07 1.74904e-07 - 1.86141e-07 1.86141e-07 1.86141e-07 1.86141e-07 1.86141e-07 1.86141e-07 1.86141e-07 1.86141e-07 1.86141e-07 1.86141e-07 1.86141e-07 1.86141e-07 - 1.86141e-07 1.86141e-07 1.86141e-07 1.86141e-07 1.86141e-07 1.86141e-07 1.86141e-07 1.86141e-07 1.96754e-07 1.96754e-07 1.96754e-07 1.96754e-07 - 1.96754e-07 1.96754e-07 1.96754e-07 1.96754e-07 1.96754e-07 1.96754e-07 1.96754e-07 1.96754e-07 1.96754e-07 1.96754e-07 1.96754e-07 1.96754e-07 - 1.96754e-07 1.96754e-07 1.96754e-07 1.96754e-07 2.06741e-07 2.06741e-07 2.06741e-07 2.06741e-07 2.06741e-07 2.06741e-07 2.06741e-07 2.06741e-07 - 2.06741e-07 2.06741e-07 2.06741e-07 2.06741e-07 2.06741e-07 2.06741e-07 2.06741e-07 2.06741e-07 2.06741e-07 2.06741e-07 2.06741e-07 2.06741e-07 - 2.16104e-07 2.16104e-07 2.16104e-07 2.16104e-07 2.16104e-07 2.16104e-07 2.16104e-07 2.16104e-07 2.16104e-07 2.16104e-07 2.16104e-07 2.16104e-07 - 2.16104e-07 2.16104e-07 2.16104e-07 2.16104e-07 2.16104e-07 2.16104e-07 2.16104e-07 2.16104e-07 2.24841e-07 2.24841e-07 2.24841e-07 2.24841e-07 - 2.24841e-07 2.24841e-07 2.24841e-07 2.24841e-07 2.24841e-07 2.24841e-07 2.24841e-07 2.24841e-07 2.24841e-07 2.24841e-07 2.24841e-07 2.24841e-07 - 2.24841e-07 2.24841e-07 2.24841e-07 2.24841e-07 2.32953e-07 2.32953e-07 2.32953e-07 2.32953e-07 2.32953e-07 2.32953e-07 2.32953e-07 2.32953e-07 - 2.32953e-07 2.32953e-07 2.32953e-07 2.32953e-07 2.32953e-07 2.32953e-07 2.32953e-07 2.32953e-07 2.32953e-07 2.32953e-07 2.32953e-07 2.32953e-07 - 2.40441e-07 2.40441e-07 2.40441e-07 2.40441e-07 2.40441e-07 2.40441e-07 2.40441e-07 2.40441e-07 2.40441e-07 2.40441e-07 2.40441e-07 2.40441e-07 - 2.40441e-07 2.40441e-07 2.40441e-07 2.40441e-07 2.40441e-07 2.40441e-07 2.40441e-07 2.40441e-07 2.47303e-07 2.47303e-07 2.47303e-07 2.47303e-07 - 2.47303e-07 2.47303e-07 2.47303e-07 2.47303e-07 2.47303e-07 2.47303e-07 2.47303e-07 2.47303e-07 2.47303e-07 2.47303e-07 2.47303e-07 2.47303e-07 - 2.47303e-07 2.47303e-07 2.47303e-07 2.47303e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 - 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 - 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 - 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.53541e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 - 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 - 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 - 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 2.59153e-07 - 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 - 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 - 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 - 2.64141e-07 2.64141e-07 2.64141e-07 2.64141e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 - 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 - 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 - 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.68503e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 - 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 - 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 - 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 2.72241e-07 - 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 - 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 - 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 - 2.75353e-07 2.75353e-07 2.75353e-07 2.75353e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 - 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 - 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 - 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.77841e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 - 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 - 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 - 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 2.79703e-07 - 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 - 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 - 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 - 2.80941e-07 2.80941e-07 2.80941e-07 2.80941e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 - 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 - 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 - 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81553e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 - 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 - 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 - 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 2.81541e-07 - 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 - 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 - 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 - 2.80903e-07 2.80903e-07 2.80903e-07 2.80903e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 - 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 - 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 - 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.79641e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 - 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 - 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 - 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 2.77753e-07 - 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 - 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 - 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 - 2.75241e-07 2.75241e-07 2.75241e-07 2.75241e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 - 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 - 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 - 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.72103e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 - 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 - 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 - 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 2.68341e-07 - 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 - 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 - 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 - 2.63953e-07 2.63953e-07 2.63953e-07 2.63953e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 - 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 - 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 - 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.58941e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 - 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 - 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 - 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 2.53303e-07 - 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 - 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 - 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 - 2.47041e-07 2.47041e-07 2.47041e-07 2.47041e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 - 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 - 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 - 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.40153e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 - 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 - 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 - 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 2.32641e-07 - 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 - 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 - 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 - 2.24503e-07 2.24503e-07 2.24503e-07 2.24503e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 - 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 - 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 - 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.15741e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 - 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 - 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 - 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 2.06353e-07 - 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 - 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 - 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 - 1.96341e-07 1.96341e-07 1.96341e-07 1.96341e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 - 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 - 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 - 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.85703e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 - 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 - 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 - 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 1.74441e-07 - 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 - 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 - 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 - 1.62553e-07 1.62553e-07 1.62553e-07 1.62553e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 - 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 - 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 - 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.50041e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 - 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 - 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 - 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 1.36903e-07 - 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 - 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 - 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 - 1.23141e-07 1.23141e-07 1.23141e-07 1.23141e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 - 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 - 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 - 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 1.08753e-07 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 - 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 - 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 - 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 9.37407e-08 - 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 - 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 - 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 - 7.81032e-08 7.81032e-08 7.81032e-08 7.81032e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 - 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 - 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 - 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 6.18407e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 - 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 - 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 - 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 4.49531e-08 - 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 - 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 - 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 - 2.74406e-08 2.74406e-08 2.74406e-08 2.74406e-08 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 - 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 - 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 - 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 9.30313e-09 - - - - - 0.5 0.5 0 0.525 0.5 0 0.5 0.525 0 0.525 0.525 0 - 0.55 0.5 0 0.55 0.525 0 0.575 0.5 0 0.575 0.525 0 - 0.6 0.5 0 0.6 0.525 0 0.625 0.5 0 0.625 0.525 0 - 0.65 0.5 0 0.65 0.525 0 0.675 0.5 0 0.675 0.525 0 - 0.7 0.5 0 0.7 0.525 0 0.725 0.5 0 0.725 0.525 0 - 0.75 0.5 0 0.75 0.525 0 0.775 0.5 0 0.775 0.525 0 - 0.8 0.5 0 0.8 0.525 0 0.825 0.5 0 0.825 0.525 0 - 0.85 0.5 0 0.85 0.525 0 0.875 0.5 0 0.875 0.525 0 - 0.9 0.5 0 0.9 0.525 0 0.925 0.5 0 0.925 0.525 0 - 0.95 0.5 0 0.95 0.525 0 0.975 0.5 0 0.975 0.525 0 - 1 0.5 0 1 0.525 0 0.5 0.55 0 0.525 0.55 0 - 0.55 0.55 0 0.575 0.55 0 0.6 0.55 0 0.625 0.55 0 - 0.65 0.55 0 0.675 0.55 0 0.7 0.55 0 0.725 0.55 0 - 0.75 0.55 0 0.775 0.55 0 0.8 0.55 0 0.825 0.55 0 - 0.85 0.55 0 0.875 0.55 0 0.9 0.55 0 0.925 0.55 0 - 0.95 0.55 0 0.975 0.55 0 1 0.55 0 0.5 0.575 0 - 0.525 0.575 0 0.55 0.575 0 0.575 0.575 0 0.6 0.575 0 - 0.625 0.575 0 0.65 0.575 0 0.675 0.575 0 0.7 0.575 0 - 0.725 0.575 0 0.75 0.575 0 0.775 0.575 0 0.8 0.575 0 - 0.825 0.575 0 0.85 0.575 0 0.875 0.575 0 0.9 0.575 0 - 0.925 0.575 0 0.95 0.575 0 0.975 0.575 0 1 0.575 0 - 0.5 0.6 0 0.525 0.6 0 0.55 0.6 0 0.575 0.6 0 - 0.6 0.6 0 0.625 0.6 0 0.65 0.6 0 0.675 0.6 0 - 0.7 0.6 0 0.725 0.6 0 0.75 0.6 0 0.775 0.6 0 - 0.8 0.6 0 0.825 0.6 0 0.85 0.6 0 0.875 0.6 0 - 0.9 0.6 0 0.925 0.6 0 0.95 0.6 0 0.975 0.6 0 - 1 0.6 0 0.5 0.625 0 0.525 0.625 0 0.55 0.625 0 - 0.575 0.625 0 0.6 0.625 0 0.625 0.625 0 0.65 0.625 0 - 0.675 0.625 0 0.7 0.625 0 0.725 0.625 0 0.75 0.625 0 - 0.775 0.625 0 0.8 0.625 0 0.825 0.625 0 0.85 0.625 0 - 0.875 0.625 0 0.9 0.625 0 0.925 0.625 0 0.95 0.625 0 - 0.975 0.625 0 1 0.625 0 0.5 0.65 0 0.525 0.65 0 - 0.55 0.65 0 0.575 0.65 0 0.6 0.65 0 0.625 0.65 0 - 0.65 0.65 0 0.675 0.65 0 0.7 0.65 0 0.725 0.65 0 - 0.75 0.65 0 0.775 0.65 0 0.8 0.65 0 0.825 0.65 0 - 0.85 0.65 0 0.875 0.65 0 0.9 0.65 0 0.925 0.65 0 - 0.95 0.65 0 0.975 0.65 0 1 0.65 0 0.5 0.675 0 - 0.525 0.675 0 0.55 0.675 0 0.575 0.675 0 0.6 0.675 0 - 0.625 0.675 0 0.65 0.675 0 0.675 0.675 0 0.7 0.675 0 - 0.725 0.675 0 0.75 0.675 0 0.775 0.675 0 0.8 0.675 0 - 0.825 0.675 0 0.85 0.675 0 0.875 0.675 0 0.9 0.675 0 - 0.925 0.675 0 0.95 0.675 0 0.975 0.675 0 1 0.675 0 - 0.5 0.7 0 0.525 0.7 0 0.55 0.7 0 0.575 0.7 0 - 0.6 0.7 0 0.625 0.7 0 0.65 0.7 0 0.675 0.7 0 - 0.7 0.7 0 0.725 0.7 0 0.75 0.7 0 0.775 0.7 0 - 0.8 0.7 0 0.825 0.7 0 0.85 0.7 0 0.875 0.7 0 - 0.9 0.7 0 0.925 0.7 0 0.95 0.7 0 0.975 0.7 0 - 1 0.7 0 0.5 0.725 0 0.525 0.725 0 0.55 0.725 0 - 0.575 0.725 0 0.6 0.725 0 0.625 0.725 0 0.65 0.725 0 - 0.675 0.725 0 0.7 0.725 0 0.725 0.725 0 0.75 0.725 0 - 0.775 0.725 0 0.8 0.725 0 0.825 0.725 0 0.85 0.725 0 - 0.875 0.725 0 0.9 0.725 0 0.925 0.725 0 0.95 0.725 0 - 0.975 0.725 0 1 0.725 0 0.5 0.75 0 0.525 0.75 0 - 0.55 0.75 0 0.575 0.75 0 0.6 0.75 0 0.625 0.75 0 - 0.65 0.75 0 0.675 0.75 0 0.7 0.75 0 0.725 0.75 0 - 0.75 0.75 0 0.775 0.75 0 0.8 0.75 0 0.825 0.75 0 - 0.85 0.75 0 0.875 0.75 0 0.9 0.75 0 0.925 0.75 0 - 0.95 0.75 0 0.975 0.75 0 1 0.75 0 0.5 0.775 0 - 0.525 0.775 0 0.55 0.775 0 0.575 0.775 0 0.6 0.775 0 - 0.625 0.775 0 0.65 0.775 0 0.675 0.775 0 0.7 0.775 0 - 0.725 0.775 0 0.75 0.775 0 0.775 0.775 0 0.8 0.775 0 - 0.825 0.775 0 0.85 0.775 0 0.875 0.775 0 0.9 0.775 0 - 0.925 0.775 0 0.95 0.775 0 0.975 0.775 0 1 0.775 0 - 0.5 0.8 0 0.525 0.8 0 0.55 0.8 0 0.575 0.8 0 - 0.6 0.8 0 0.625 0.8 0 0.65 0.8 0 0.675 0.8 0 - 0.7 0.8 0 0.725 0.8 0 0.75 0.8 0 0.775 0.8 0 - 0.8 0.8 0 0.825 0.8 0 0.85 0.8 0 0.875 0.8 0 - 0.9 0.8 0 0.925 0.8 0 0.95 0.8 0 0.975 0.8 0 - 1 0.8 0 0.5 0.825 0 0.525 0.825 0 0.55 0.825 0 - 0.575 0.825 0 0.6 0.825 0 0.625 0.825 0 0.65 0.825 0 - 0.675 0.825 0 0.7 0.825 0 0.725 0.825 0 0.75 0.825 0 - 0.775 0.825 0 0.8 0.825 0 0.825 0.825 0 0.85 0.825 0 - 0.875 0.825 0 0.9 0.825 0 0.925 0.825 0 0.95 0.825 0 - 0.975 0.825 0 1 0.825 0 0.5 0.85 0 0.525 0.85 0 - 0.55 0.85 0 0.575 0.85 0 0.6 0.85 0 0.625 0.85 0 - 0.65 0.85 0 0.675 0.85 0 0.7 0.85 0 0.725 0.85 0 - 0.75 0.85 0 0.775 0.85 0 0.8 0.85 0 0.825 0.85 0 - 0.85 0.85 0 0.875 0.85 0 0.9 0.85 0 0.925 0.85 0 - 0.95 0.85 0 0.975 0.85 0 1 0.85 0 0.5 0.875 0 - 0.525 0.875 0 0.55 0.875 0 0.575 0.875 0 0.6 0.875 0 - 0.625 0.875 0 0.65 0.875 0 0.675 0.875 0 0.7 0.875 0 - 0.725 0.875 0 0.75 0.875 0 0.775 0.875 0 0.8 0.875 0 - 0.825 0.875 0 0.85 0.875 0 0.875 0.875 0 0.9 0.875 0 - 0.925 0.875 0 0.95 0.875 0 0.975 0.875 0 1 0.875 0 - 0.5 0.9 0 0.525 0.9 0 0.55 0.9 0 0.575 0.9 0 - 0.6 0.9 0 0.625 0.9 0 0.65 0.9 0 0.675 0.9 0 - 0.7 0.9 0 0.725 0.9 0 0.75 0.9 0 0.775 0.9 0 - 0.8 0.9 0 0.825 0.9 0 0.85 0.9 0 0.875 0.9 0 - 0.9 0.9 0 0.925 0.9 0 0.95 0.9 0 0.975 0.9 0 - 1 0.9 0 0.5 0.925 0 0.525 0.925 0 0.55 0.925 0 - 0.575 0.925 0 0.6 0.925 0 0.625 0.925 0 0.65 0.925 0 - 0.675 0.925 0 0.7 0.925 0 0.725 0.925 0 0.75 0.925 0 - 0.775 0.925 0 0.8 0.925 0 0.825 0.925 0 0.85 0.925 0 - 0.875 0.925 0 0.9 0.925 0 0.925 0.925 0 0.95 0.925 0 - 0.975 0.925 0 1 0.925 0 0.5 0.95 0 0.525 0.95 0 - 0.55 0.95 0 0.575 0.95 0 0.6 0.95 0 0.625 0.95 0 - 0.65 0.95 0 0.675 0.95 0 0.7 0.95 0 0.725 0.95 0 - 0.75 0.95 0 0.775 0.95 0 0.8 0.95 0 0.825 0.95 0 - 0.85 0.95 0 0.875 0.95 0 0.9 0.95 0 0.925 0.95 0 - 0.95 0.95 0 0.975 0.95 0 1 0.95 0 0.5 0.975 0 - 0.525 0.975 0 0.55 0.975 0 0.575 0.975 0 0.6 0.975 0 - 0.625 0.975 0 0.65 0.975 0 0.675 0.975 0 0.7 0.975 0 - 0.725 0.975 0 0.75 0.975 0 0.775 0.975 0 0.8 0.975 0 - 0.825 0.975 0 0.85 0.975 0 0.875 0.975 0 0.9 0.975 0 - 0.925 0.975 0 0.95 0.975 0 0.975 0.975 0 1 0.975 0 - 0.5 1 0 0.525 1 0 0.55 1 0 0.575 1 0 - 0.6 1 0 0.625 1 0 0.65 1 0 0.675 1 0 - 0.7 1 0 0.725 1 0 0.75 1 0 0.775 1 0 - 0.8 1 0 0.825 1 0 0.85 1 0 0.875 1 0 - 0.9 1 0 0.925 1 0 0.95 1 0 0.975 1 0 - 1 1 0 0 1 0 0.025 1 0 0 1.025 0 - 0.025 1.025 0 0.05 1 0 0.05 1.025 0 0.075 1 0 - 0.075 1.025 0 0.1 1 0 0.1 1.025 0 0.125 1 0 - 0.125 1.025 0 0.15 1 0 0.15 1.025 0 0.175 1 0 - 0.175 1.025 0 0.2 1 0 0.2 1.025 0 0.225 1 0 - 0.225 1.025 0 0.25 1 0 0.25 1.025 0 0.275 1 0 - 0.275 1.025 0 0.3 1 0 0.3 1.025 0 0.325 1 0 - 0.325 1.025 0 0.35 1 0 0.35 1.025 0 0.375 1 0 - 0.375 1.025 0 0.4 1 0 0.4 1.025 0 0.425 1 0 - 0.425 1.025 0 0.45 1 0 0.45 1.025 0 0.475 1 0 - 0.475 1.025 0 0.5 1.025 0 0.525 1.025 0 0.55 1.025 0 - 0.575 1.025 0 0.6 1.025 0 0.625 1.025 0 0.65 1.025 0 - 0.675 1.025 0 0.7 1.025 0 0.725 1.025 0 0.75 1.025 0 - 0.775 1.025 0 0.8 1.025 0 0.825 1.025 0 0.85 1.025 0 - 0.875 1.025 0 0.9 1.025 0 0.925 1.025 0 0.95 1.025 0 - 0.975 1.025 0 1 1.025 0 0 1.05 0 0.025 1.05 0 - 0.05 1.05 0 0.075 1.05 0 0.1 1.05 0 0.125 1.05 0 - 0.15 1.05 0 0.175 1.05 0 0.2 1.05 0 0.225 1.05 0 - 0.25 1.05 0 0.275 1.05 0 0.3 1.05 0 0.325 1.05 0 - 0.35 1.05 0 0.375 1.05 0 0.4 1.05 0 0.425 1.05 0 - 0.45 1.05 0 0.475 1.05 0 0.5 1.05 0 0.525 1.05 0 - 0.55 1.05 0 0.575 1.05 0 0.6 1.05 0 0.625 1.05 0 - 0.65 1.05 0 0.675 1.05 0 0.7 1.05 0 0.725 1.05 0 - 0.75 1.05 0 0.775 1.05 0 0.8 1.05 0 0.825 1.05 0 - 0.85 1.05 0 0.875 1.05 0 0.9 1.05 0 0.925 1.05 0 - 0.95 1.05 0 0.975 1.05 0 1 1.05 0 0 1.075 0 - 0.025 1.075 0 0.05 1.075 0 0.075 1.075 0 0.1 1.075 0 - 0.125 1.075 0 0.15 1.075 0 0.175 1.075 0 0.2 1.075 0 - 0.225 1.075 0 0.25 1.075 0 0.275 1.075 0 0.3 1.075 0 - 0.325 1.075 0 0.35 1.075 0 0.375 1.075 0 0.4 1.075 0 - 0.425 1.075 0 0.45 1.075 0 0.475 1.075 0 0.5 1.075 0 - 0.525 1.075 0 0.55 1.075 0 0.575 1.075 0 0.6 1.075 0 - 0.625 1.075 0 0.65 1.075 0 0.675 1.075 0 0.7 1.075 0 - 0.725 1.075 0 0.75 1.075 0 0.775 1.075 0 0.8 1.075 0 - 0.825 1.075 0 0.85 1.075 0 0.875 1.075 0 0.9 1.075 0 - 0.925 1.075 0 0.95 1.075 0 0.975 1.075 0 1 1.075 0 - 0 1.1 0 0.025 1.1 0 0.05 1.1 0 0.075 1.1 0 - 0.1 1.1 0 0.125 1.1 0 0.15 1.1 0 0.175 1.1 0 - 0.2 1.1 0 0.225 1.1 0 0.25 1.1 0 0.275 1.1 0 - 0.3 1.1 0 0.325 1.1 0 0.35 1.1 0 0.375 1.1 0 - 0.4 1.1 0 0.425 1.1 0 0.45 1.1 0 0.475 1.1 0 - 0.5 1.1 0 0.525 1.1 0 0.55 1.1 0 0.575 1.1 0 - 0.6 1.1 0 0.625 1.1 0 0.65 1.1 0 0.675 1.1 0 - 0.7 1.1 0 0.725 1.1 0 0.75 1.1 0 0.775 1.1 0 - 0.8 1.1 0 0.825 1.1 0 0.85 1.1 0 0.875 1.1 0 - 0.9 1.1 0 0.925 1.1 0 0.95 1.1 0 0.975 1.1 0 - 1 1.1 0 0 1.125 0 0.025 1.125 0 0.05 1.125 0 - 0.075 1.125 0 0.1 1.125 0 0.125 1.125 0 0.15 1.125 0 - 0.175 1.125 0 0.2 1.125 0 0.225 1.125 0 0.25 1.125 0 - 0.275 1.125 0 0.3 1.125 0 0.325 1.125 0 0.35 1.125 0 - 0.375 1.125 0 0.4 1.125 0 0.425 1.125 0 0.45 1.125 0 - 0.475 1.125 0 0.5 1.125 0 0.525 1.125 0 0.55 1.125 0 - 0.575 1.125 0 0.6 1.125 0 0.625 1.125 0 0.65 1.125 0 - 0.675 1.125 0 0.7 1.125 0 0.725 1.125 0 0.75 1.125 0 - 0.775 1.125 0 0.8 1.125 0 0.825 1.125 0 0.85 1.125 0 - 0.875 1.125 0 0.9 1.125 0 0.925 1.125 0 0.95 1.125 0 - 0.975 1.125 0 1 1.125 0 0 1.15 0 0.025 1.15 0 - 0.05 1.15 0 0.075 1.15 0 0.1 1.15 0 0.125 1.15 0 - 0.15 1.15 0 0.175 1.15 0 0.2 1.15 0 0.225 1.15 0 - 0.25 1.15 0 0.275 1.15 0 0.3 1.15 0 0.325 1.15 0 - 0.35 1.15 0 0.375 1.15 0 0.4 1.15 0 0.425 1.15 0 - 0.45 1.15 0 0.475 1.15 0 0.5 1.15 0 0.525 1.15 0 - 0.55 1.15 0 0.575 1.15 0 0.6 1.15 0 0.625 1.15 0 - 0.65 1.15 0 0.675 1.15 0 0.7 1.15 0 0.725 1.15 0 - 0.75 1.15 0 0.775 1.15 0 0.8 1.15 0 0.825 1.15 0 - 0.85 1.15 0 0.875 1.15 0 0.9 1.15 0 0.925 1.15 0 - 0.95 1.15 0 0.975 1.15 0 1 1.15 0 0 1.175 0 - 0.025 1.175 0 0.05 1.175 0 0.075 1.175 0 0.1 1.175 0 - 0.125 1.175 0 0.15 1.175 0 0.175 1.175 0 0.2 1.175 0 - 0.225 1.175 0 0.25 1.175 0 0.275 1.175 0 0.3 1.175 0 - 0.325 1.175 0 0.35 1.175 0 0.375 1.175 0 0.4 1.175 0 - 0.425 1.175 0 0.45 1.175 0 0.475 1.175 0 0.5 1.175 0 - 0.525 1.175 0 0.55 1.175 0 0.575 1.175 0 0.6 1.175 0 - 0.625 1.175 0 0.65 1.175 0 0.675 1.175 0 0.7 1.175 0 - 0.725 1.175 0 0.75 1.175 0 0.775 1.175 0 0.8 1.175 0 - 0.825 1.175 0 0.85 1.175 0 0.875 1.175 0 0.9 1.175 0 - 0.925 1.175 0 0.95 1.175 0 0.975 1.175 0 1 1.175 0 - 0 1.2 0 0.025 1.2 0 0.05 1.2 0 0.075 1.2 0 - 0.1 1.2 0 0.125 1.2 0 0.15 1.2 0 0.175 1.2 0 - 0.2 1.2 0 0.225 1.2 0 0.25 1.2 0 0.275 1.2 0 - 0.3 1.2 0 0.325 1.2 0 0.35 1.2 0 0.375 1.2 0 - 0.4 1.2 0 0.425 1.2 0 0.45 1.2 0 0.475 1.2 0 - 0.5 1.2 0 0.525 1.2 0 0.55 1.2 0 0.575 1.2 0 - 0.6 1.2 0 0.625 1.2 0 0.65 1.2 0 0.675 1.2 0 - 0.7 1.2 0 0.725 1.2 0 0.75 1.2 0 0.775 1.2 0 - 0.8 1.2 0 0.825 1.2 0 0.85 1.2 0 0.875 1.2 0 - 0.9 1.2 0 0.925 1.2 0 0.95 1.2 0 0.975 1.2 0 - 1 1.2 0 0 1.225 0 0.025 1.225 0 0.05 1.225 0 - 0.075 1.225 0 0.1 1.225 0 0.125 1.225 0 0.15 1.225 0 - 0.175 1.225 0 0.2 1.225 0 0.225 1.225 0 0.25 1.225 0 - 0.275 1.225 0 0.3 1.225 0 0.325 1.225 0 0.35 1.225 0 - 0.375 1.225 0 0.4 1.225 0 0.425 1.225 0 0.45 1.225 0 - 0.475 1.225 0 0.5 1.225 0 0.525 1.225 0 0.55 1.225 0 - 0.575 1.225 0 0.6 1.225 0 0.625 1.225 0 0.65 1.225 0 - 0.675 1.225 0 0.7 1.225 0 0.725 1.225 0 0.75 1.225 0 - 0.775 1.225 0 0.8 1.225 0 0.825 1.225 0 0.85 1.225 0 - 0.875 1.225 0 0.9 1.225 0 0.925 1.225 0 0.95 1.225 0 - 0.975 1.225 0 1 1.225 0 0 1.25 0 0.025 1.25 0 - 0.05 1.25 0 0.075 1.25 0 0.1 1.25 0 0.125 1.25 0 - 0.15 1.25 0 0.175 1.25 0 0.2 1.25 0 0.225 1.25 0 - 0.25 1.25 0 0.275 1.25 0 0.3 1.25 0 0.325 1.25 0 - 0.35 1.25 0 0.375 1.25 0 0.4 1.25 0 0.425 1.25 0 - 0.45 1.25 0 0.475 1.25 0 0.5 1.25 0 0.525 1.25 0 - 0.55 1.25 0 0.575 1.25 0 0.6 1.25 0 0.625 1.25 0 - 0.65 1.25 0 0.675 1.25 0 0.7 1.25 0 0.725 1.25 0 - 0.75 1.25 0 0.775 1.25 0 0.8 1.25 0 0.825 1.25 0 - 0.85 1.25 0 0.875 1.25 0 0.9 1.25 0 0.925 1.25 0 - 0.95 1.25 0 0.975 1.25 0 1 1.25 0 0 1.275 0 - 0.025 1.275 0 0.05 1.275 0 0.075 1.275 0 0.1 1.275 0 - 0.125 1.275 0 0.15 1.275 0 0.175 1.275 0 0.2 1.275 0 - 0.225 1.275 0 0.25 1.275 0 0.275 1.275 0 0.3 1.275 0 - 0.325 1.275 0 0.35 1.275 0 0.375 1.275 0 0.4 1.275 0 - 0.425 1.275 0 0.45 1.275 0 0.475 1.275 0 0.5 1.275 0 - 0.525 1.275 0 0.55 1.275 0 0.575 1.275 0 0.6 1.275 0 - 0.625 1.275 0 0.65 1.275 0 0.675 1.275 0 0.7 1.275 0 - 0.725 1.275 0 0.75 1.275 0 0.775 1.275 0 0.8 1.275 0 - 0.825 1.275 0 0.85 1.275 0 0.875 1.275 0 0.9 1.275 0 - 0.925 1.275 0 0.95 1.275 0 0.975 1.275 0 1 1.275 0 - 0 1.3 0 0.025 1.3 0 0.05 1.3 0 0.075 1.3 0 - 0.1 1.3 0 0.125 1.3 0 0.15 1.3 0 0.175 1.3 0 - 0.2 1.3 0 0.225 1.3 0 0.25 1.3 0 0.275 1.3 0 - 0.3 1.3 0 0.325 1.3 0 0.35 1.3 0 0.375 1.3 0 - 0.4 1.3 0 0.425 1.3 0 0.45 1.3 0 0.475 1.3 0 - 0.5 1.3 0 0.525 1.3 0 0.55 1.3 0 0.575 1.3 0 - 0.6 1.3 0 0.625 1.3 0 0.65 1.3 0 0.675 1.3 0 - 0.7 1.3 0 0.725 1.3 0 0.75 1.3 0 0.775 1.3 0 - 0.8 1.3 0 0.825 1.3 0 0.85 1.3 0 0.875 1.3 0 - 0.9 1.3 0 0.925 1.3 0 0.95 1.3 0 0.975 1.3 0 - 1 1.3 0 0 1.325 0 0.025 1.325 0 0.05 1.325 0 - 0.075 1.325 0 0.1 1.325 0 0.125 1.325 0 0.15 1.325 0 - 0.175 1.325 0 0.2 1.325 0 0.225 1.325 0 0.25 1.325 0 - 0.275 1.325 0 0.3 1.325 0 0.325 1.325 0 0.35 1.325 0 - 0.375 1.325 0 0.4 1.325 0 0.425 1.325 0 0.45 1.325 0 - 0.475 1.325 0 0.5 1.325 0 0.525 1.325 0 0.55 1.325 0 - 0.575 1.325 0 0.6 1.325 0 0.625 1.325 0 0.65 1.325 0 - 0.675 1.325 0 0.7 1.325 0 0.725 1.325 0 0.75 1.325 0 - 0.775 1.325 0 0.8 1.325 0 0.825 1.325 0 0.85 1.325 0 - 0.875 1.325 0 0.9 1.325 0 0.925 1.325 0 0.95 1.325 0 - 0.975 1.325 0 1 1.325 0 0 1.35 0 0.025 1.35 0 - 0.05 1.35 0 0.075 1.35 0 0.1 1.35 0 0.125 1.35 0 - 0.15 1.35 0 0.175 1.35 0 0.2 1.35 0 0.225 1.35 0 - 0.25 1.35 0 0.275 1.35 0 0.3 1.35 0 0.325 1.35 0 - 0.35 1.35 0 0.375 1.35 0 0.4 1.35 0 0.425 1.35 0 - 0.45 1.35 0 0.475 1.35 0 0.5 1.35 0 0.525 1.35 0 - 0.55 1.35 0 0.575 1.35 0 0.6 1.35 0 0.625 1.35 0 - 0.65 1.35 0 0.675 1.35 0 0.7 1.35 0 0.725 1.35 0 - 0.75 1.35 0 0.775 1.35 0 0.8 1.35 0 0.825 1.35 0 - 0.85 1.35 0 0.875 1.35 0 0.9 1.35 0 0.925 1.35 0 - 0.95 1.35 0 0.975 1.35 0 1 1.35 0 0 1.375 0 - 0.025 1.375 0 0.05 1.375 0 0.075 1.375 0 0.1 1.375 0 - 0.125 1.375 0 0.15 1.375 0 0.175 1.375 0 0.2 1.375 0 - 0.225 1.375 0 0.25 1.375 0 0.275 1.375 0 0.3 1.375 0 - 0.325 1.375 0 0.35 1.375 0 0.375 1.375 0 0.4 1.375 0 - 0.425 1.375 0 0.45 1.375 0 0.475 1.375 0 0.5 1.375 0 - 0.525 1.375 0 0.55 1.375 0 0.575 1.375 0 0.6 1.375 0 - 0.625 1.375 0 0.65 1.375 0 0.675 1.375 0 0.7 1.375 0 - 0.725 1.375 0 0.75 1.375 0 0.775 1.375 0 0.8 1.375 0 - 0.825 1.375 0 0.85 1.375 0 0.875 1.375 0 0.9 1.375 0 - 0.925 1.375 0 0.95 1.375 0 0.975 1.375 0 1 1.375 0 - 0 1.4 0 0.025 1.4 0 0.05 1.4 0 0.075 1.4 0 - 0.1 1.4 0 0.125 1.4 0 0.15 1.4 0 0.175 1.4 0 - 0.2 1.4 0 0.225 1.4 0 0.25 1.4 0 0.275 1.4 0 - 0.3 1.4 0 0.325 1.4 0 0.35 1.4 0 0.375 1.4 0 - 0.4 1.4 0 0.425 1.4 0 0.45 1.4 0 0.475 1.4 0 - 0.5 1.4 0 0.525 1.4 0 0.55 1.4 0 0.575 1.4 0 - 0.6 1.4 0 0.625 1.4 0 0.65 1.4 0 0.675 1.4 0 - 0.7 1.4 0 0.725 1.4 0 0.75 1.4 0 0.775 1.4 0 - 0.8 1.4 0 0.825 1.4 0 0.85 1.4 0 0.875 1.4 0 - 0.9 1.4 0 0.925 1.4 0 0.95 1.4 0 0.975 1.4 0 - 1 1.4 0 0 1.425 0 0.025 1.425 0 0.05 1.425 0 - 0.075 1.425 0 0.1 1.425 0 0.125 1.425 0 0.15 1.425 0 - 0.175 1.425 0 0.2 1.425 0 0.225 1.425 0 0.25 1.425 0 - 0.275 1.425 0 0.3 1.425 0 0.325 1.425 0 0.35 1.425 0 - 0.375 1.425 0 0.4 1.425 0 0.425 1.425 0 0.45 1.425 0 - 0.475 1.425 0 0.5 1.425 0 0.525 1.425 0 0.55 1.425 0 - 0.575 1.425 0 0.6 1.425 0 0.625 1.425 0 0.65 1.425 0 - 0.675 1.425 0 0.7 1.425 0 0.725 1.425 0 0.75 1.425 0 - 0.775 1.425 0 0.8 1.425 0 0.825 1.425 0 0.85 1.425 0 - 0.875 1.425 0 0.9 1.425 0 0.925 1.425 0 0.95 1.425 0 - 0.975 1.425 0 1 1.425 0 0 1.45 0 0.025 1.45 0 - 0.05 1.45 0 0.075 1.45 0 0.1 1.45 0 0.125 1.45 0 - 0.15 1.45 0 0.175 1.45 0 0.2 1.45 0 0.225 1.45 0 - 0.25 1.45 0 0.275 1.45 0 0.3 1.45 0 0.325 1.45 0 - 0.35 1.45 0 0.375 1.45 0 0.4 1.45 0 0.425 1.45 0 - 0.45 1.45 0 0.475 1.45 0 0.5 1.45 0 0.525 1.45 0 - 0.55 1.45 0 0.575 1.45 0 0.6 1.45 0 0.625 1.45 0 - 0.65 1.45 0 0.675 1.45 0 0.7 1.45 0 0.725 1.45 0 - 0.75 1.45 0 0.775 1.45 0 0.8 1.45 0 0.825 1.45 0 - 0.85 1.45 0 0.875 1.45 0 0.9 1.45 0 0.925 1.45 0 - 0.95 1.45 0 0.975 1.45 0 1 1.45 0 0 1.475 0 - 0.025 1.475 0 0.05 1.475 0 0.075 1.475 0 0.1 1.475 0 - 0.125 1.475 0 0.15 1.475 0 0.175 1.475 0 0.2 1.475 0 - 0.225 1.475 0 0.25 1.475 0 0.275 1.475 0 0.3 1.475 0 - 0.325 1.475 0 0.35 1.475 0 0.375 1.475 0 0.4 1.475 0 - 0.425 1.475 0 0.45 1.475 0 0.475 1.475 0 0.5 1.475 0 - 0.525 1.475 0 0.55 1.475 0 0.575 1.475 0 0.6 1.475 0 - 0.625 1.475 0 0.65 1.475 0 0.675 1.475 0 0.7 1.475 0 - 0.725 1.475 0 0.75 1.475 0 0.775 1.475 0 0.8 1.475 0 - 0.825 1.475 0 0.85 1.475 0 0.875 1.475 0 0.9 1.475 0 - 0.925 1.475 0 0.95 1.475 0 0.975 1.475 0 1 1.475 0 - 0 1.5 0 0.025 1.5 0 0.05 1.5 0 0.075 1.5 0 - 0.1 1.5 0 0.125 1.5 0 0.15 1.5 0 0.175 1.5 0 - 0.2 1.5 0 0.225 1.5 0 0.25 1.5 0 0.275 1.5 0 - 0.3 1.5 0 0.325 1.5 0 0.35 1.5 0 0.375 1.5 0 - 0.4 1.5 0 0.425 1.5 0 0.45 1.5 0 0.475 1.5 0 - 0.5 1.5 0 0.525 1.5 0 0.55 1.5 0 0.575 1.5 0 - 0.6 1.5 0 0.625 1.5 0 0.65 1.5 0 0.675 1.5 0 - 0.7 1.5 0 0.725 1.5 0 0.75 1.5 0 0.775 1.5 0 - 0.8 1.5 0 0.825 1.5 0 0.85 1.5 0 0.875 1.5 0 - 0.9 1.5 0 0.925 1.5 0 0.95 1.5 0 0.975 1.5 0 - 1 1.5 0 0 1.525 0 0.025 1.525 0 0.05 1.525 0 - 0.075 1.525 0 0.1 1.525 0 0.125 1.525 0 0.15 1.525 0 - 0.175 1.525 0 0.2 1.525 0 0.225 1.525 0 0.25 1.525 0 - 0.275 1.525 0 0.3 1.525 0 0.325 1.525 0 0.35 1.525 0 - 0.375 1.525 0 0.4 1.525 0 0.425 1.525 0 0.45 1.525 0 - 0.475 1.525 0 0.5 1.525 0 0.525 1.525 0 0.55 1.525 0 - 0.575 1.525 0 0.6 1.525 0 0.625 1.525 0 0.65 1.525 0 - 0.675 1.525 0 0.7 1.525 0 0.725 1.525 0 0.75 1.525 0 - 0.775 1.525 0 0.8 1.525 0 0.825 1.525 0 0.85 1.525 0 - 0.875 1.525 0 0.9 1.525 0 0.925 1.525 0 0.95 1.525 0 - 0.975 1.525 0 1 1.525 0 0 1.55 0 0.025 1.55 0 - 0.05 1.55 0 0.075 1.55 0 0.1 1.55 0 0.125 1.55 0 - 0.15 1.55 0 0.175 1.55 0 0.2 1.55 0 0.225 1.55 0 - 0.25 1.55 0 0.275 1.55 0 0.3 1.55 0 0.325 1.55 0 - 0.35 1.55 0 0.375 1.55 0 0.4 1.55 0 0.425 1.55 0 - 0.45 1.55 0 0.475 1.55 0 0.5 1.55 0 0.525 1.55 0 - 0.55 1.55 0 0.575 1.55 0 0.6 1.55 0 0.625 1.55 0 - 0.65 1.55 0 0.675 1.55 0 0.7 1.55 0 0.725 1.55 0 - 0.75 1.55 0 0.775 1.55 0 0.8 1.55 0 0.825 1.55 0 - 0.85 1.55 0 0.875 1.55 0 0.9 1.55 0 0.925 1.55 0 - 0.95 1.55 0 0.975 1.55 0 1 1.55 0 0 1.575 0 - 0.025 1.575 0 0.05 1.575 0 0.075 1.575 0 0.1 1.575 0 - 0.125 1.575 0 0.15 1.575 0 0.175 1.575 0 0.2 1.575 0 - 0.225 1.575 0 0.25 1.575 0 0.275 1.575 0 0.3 1.575 0 - 0.325 1.575 0 0.35 1.575 0 0.375 1.575 0 0.4 1.575 0 - 0.425 1.575 0 0.45 1.575 0 0.475 1.575 0 0.5 1.575 0 - 0.525 1.575 0 0.55 1.575 0 0.575 1.575 0 0.6 1.575 0 - 0.625 1.575 0 0.65 1.575 0 0.675 1.575 0 0.7 1.575 0 - 0.725 1.575 0 0.75 1.575 0 0.775 1.575 0 0.8 1.575 0 - 0.825 1.575 0 0.85 1.575 0 0.875 1.575 0 0.9 1.575 0 - 0.925 1.575 0 0.95 1.575 0 0.975 1.575 0 1 1.575 0 - 0 1.6 0 0.025 1.6 0 0.05 1.6 0 0.075 1.6 0 - 0.1 1.6 0 0.125 1.6 0 0.15 1.6 0 0.175 1.6 0 - 0.2 1.6 0 0.225 1.6 0 0.25 1.6 0 0.275 1.6 0 - 0.3 1.6 0 0.325 1.6 0 0.35 1.6 0 0.375 1.6 0 - 0.4 1.6 0 0.425 1.6 0 0.45 1.6 0 0.475 1.6 0 - 0.5 1.6 0 0.525 1.6 0 0.55 1.6 0 0.575 1.6 0 - 0.6 1.6 0 0.625 1.6 0 0.65 1.6 0 0.675 1.6 0 - 0.7 1.6 0 0.725 1.6 0 0.75 1.6 0 0.775 1.6 0 - 0.8 1.6 0 0.825 1.6 0 0.85 1.6 0 0.875 1.6 0 - 0.9 1.6 0 0.925 1.6 0 0.95 1.6 0 0.975 1.6 0 - 1 1.6 0 0 1.625 0 0.025 1.625 0 0.05 1.625 0 - 0.075 1.625 0 0.1 1.625 0 0.125 1.625 0 0.15 1.625 0 - 0.175 1.625 0 0.2 1.625 0 0.225 1.625 0 0.25 1.625 0 - 0.275 1.625 0 0.3 1.625 0 0.325 1.625 0 0.35 1.625 0 - 0.375 1.625 0 0.4 1.625 0 0.425 1.625 0 0.45 1.625 0 - 0.475 1.625 0 0.5 1.625 0 0.525 1.625 0 0.55 1.625 0 - 0.575 1.625 0 0.6 1.625 0 0.625 1.625 0 0.65 1.625 0 - 0.675 1.625 0 0.7 1.625 0 0.725 1.625 0 0.75 1.625 0 - 0.775 1.625 0 0.8 1.625 0 0.825 1.625 0 0.85 1.625 0 - 0.875 1.625 0 0.9 1.625 0 0.925 1.625 0 0.95 1.625 0 - 0.975 1.625 0 1 1.625 0 0 1.65 0 0.025 1.65 0 - 0.05 1.65 0 0.075 1.65 0 0.1 1.65 0 0.125 1.65 0 - 0.15 1.65 0 0.175 1.65 0 0.2 1.65 0 0.225 1.65 0 - 0.25 1.65 0 0.275 1.65 0 0.3 1.65 0 0.325 1.65 0 - 0.35 1.65 0 0.375 1.65 0 0.4 1.65 0 0.425 1.65 0 - 0.45 1.65 0 0.475 1.65 0 0.5 1.65 0 0.525 1.65 0 - 0.55 1.65 0 0.575 1.65 0 0.6 1.65 0 0.625 1.65 0 - 0.65 1.65 0 0.675 1.65 0 0.7 1.65 0 0.725 1.65 0 - 0.75 1.65 0 0.775 1.65 0 0.8 1.65 0 0.825 1.65 0 - 0.85 1.65 0 0.875 1.65 0 0.9 1.65 0 0.925 1.65 0 - 0.95 1.65 0 0.975 1.65 0 1 1.65 0 0 1.675 0 - 0.025 1.675 0 0.05 1.675 0 0.075 1.675 0 0.1 1.675 0 - 0.125 1.675 0 0.15 1.675 0 0.175 1.675 0 0.2 1.675 0 - 0.225 1.675 0 0.25 1.675 0 0.275 1.675 0 0.3 1.675 0 - 0.325 1.675 0 0.35 1.675 0 0.375 1.675 0 0.4 1.675 0 - 0.425 1.675 0 0.45 1.675 0 0.475 1.675 0 0.5 1.675 0 - 0.525 1.675 0 0.55 1.675 0 0.575 1.675 0 0.6 1.675 0 - 0.625 1.675 0 0.65 1.675 0 0.675 1.675 0 0.7 1.675 0 - 0.725 1.675 0 0.75 1.675 0 0.775 1.675 0 0.8 1.675 0 - 0.825 1.675 0 0.85 1.675 0 0.875 1.675 0 0.9 1.675 0 - 0.925 1.675 0 0.95 1.675 0 0.975 1.675 0 1 1.675 0 - 0 1.7 0 0.025 1.7 0 0.05 1.7 0 0.075 1.7 0 - 0.1 1.7 0 0.125 1.7 0 0.15 1.7 0 0.175 1.7 0 - 0.2 1.7 0 0.225 1.7 0 0.25 1.7 0 0.275 1.7 0 - 0.3 1.7 0 0.325 1.7 0 0.35 1.7 0 0.375 1.7 0 - 0.4 1.7 0 0.425 1.7 0 0.45 1.7 0 0.475 1.7 0 - 0.5 1.7 0 0.525 1.7 0 0.55 1.7 0 0.575 1.7 0 - 0.6 1.7 0 0.625 1.7 0 0.65 1.7 0 0.675 1.7 0 - 0.7 1.7 0 0.725 1.7 0 0.75 1.7 0 0.775 1.7 0 - 0.8 1.7 0 0.825 1.7 0 0.85 1.7 0 0.875 1.7 0 - 0.9 1.7 0 0.925 1.7 0 0.95 1.7 0 0.975 1.7 0 - 1 1.7 0 0 1.725 0 0.025 1.725 0 0.05 1.725 0 - 0.075 1.725 0 0.1 1.725 0 0.125 1.725 0 0.15 1.725 0 - 0.175 1.725 0 0.2 1.725 0 0.225 1.725 0 0.25 1.725 0 - 0.275 1.725 0 0.3 1.725 0 0.325 1.725 0 0.35 1.725 0 - 0.375 1.725 0 0.4 1.725 0 0.425 1.725 0 0.45 1.725 0 - 0.475 1.725 0 0.5 1.725 0 0.525 1.725 0 0.55 1.725 0 - 0.575 1.725 0 0.6 1.725 0 0.625 1.725 0 0.65 1.725 0 - 0.675 1.725 0 0.7 1.725 0 0.725 1.725 0 0.75 1.725 0 - 0.775 1.725 0 0.8 1.725 0 0.825 1.725 0 0.85 1.725 0 - 0.875 1.725 0 0.9 1.725 0 0.925 1.725 0 0.95 1.725 0 - 0.975 1.725 0 1 1.725 0 0 1.75 0 0.025 1.75 0 - 0.05 1.75 0 0.075 1.75 0 0.1 1.75 0 0.125 1.75 0 - 0.15 1.75 0 0.175 1.75 0 0.2 1.75 0 0.225 1.75 0 - 0.25 1.75 0 0.275 1.75 0 0.3 1.75 0 0.325 1.75 0 - 0.35 1.75 0 0.375 1.75 0 0.4 1.75 0 0.425 1.75 0 - 0.45 1.75 0 0.475 1.75 0 0.5 1.75 0 0.525 1.75 0 - 0.55 1.75 0 0.575 1.75 0 0.6 1.75 0 0.625 1.75 0 - 0.65 1.75 0 0.675 1.75 0 0.7 1.75 0 0.725 1.75 0 - 0.75 1.75 0 0.775 1.75 0 0.8 1.75 0 0.825 1.75 0 - 0.85 1.75 0 0.875 1.75 0 0.9 1.75 0 0.925 1.75 0 - 0.95 1.75 0 0.975 1.75 0 1 1.75 0 0 1.775 0 - 0.025 1.775 0 0.05 1.775 0 0.075 1.775 0 0.1 1.775 0 - 0.125 1.775 0 0.15 1.775 0 0.175 1.775 0 0.2 1.775 0 - 0.225 1.775 0 0.25 1.775 0 0.275 1.775 0 0.3 1.775 0 - 0.325 1.775 0 0.35 1.775 0 0.375 1.775 0 0.4 1.775 0 - 0.425 1.775 0 0.45 1.775 0 0.475 1.775 0 0.5 1.775 0 - 0.525 1.775 0 0.55 1.775 0 0.575 1.775 0 0.6 1.775 0 - 0.625 1.775 0 0.65 1.775 0 0.675 1.775 0 0.7 1.775 0 - 0.725 1.775 0 0.75 1.775 0 0.775 1.775 0 0.8 1.775 0 - 0.825 1.775 0 0.85 1.775 0 0.875 1.775 0 0.9 1.775 0 - 0.925 1.775 0 0.95 1.775 0 0.975 1.775 0 1 1.775 0 - 0 1.8 0 0.025 1.8 0 0.05 1.8 0 0.075 1.8 0 - 0.1 1.8 0 0.125 1.8 0 0.15 1.8 0 0.175 1.8 0 - 0.2 1.8 0 0.225 1.8 0 0.25 1.8 0 0.275 1.8 0 - 0.3 1.8 0 0.325 1.8 0 0.35 1.8 0 0.375 1.8 0 - 0.4 1.8 0 0.425 1.8 0 0.45 1.8 0 0.475 1.8 0 - 0.5 1.8 0 0.525 1.8 0 0.55 1.8 0 0.575 1.8 0 - 0.6 1.8 0 0.625 1.8 0 0.65 1.8 0 0.675 1.8 0 - 0.7 1.8 0 0.725 1.8 0 0.75 1.8 0 0.775 1.8 0 - 0.8 1.8 0 0.825 1.8 0 0.85 1.8 0 0.875 1.8 0 - 0.9 1.8 0 0.925 1.8 0 0.95 1.8 0 0.975 1.8 0 - 1 1.8 0 0 1.825 0 0.025 1.825 0 0.05 1.825 0 - 0.075 1.825 0 0.1 1.825 0 0.125 1.825 0 0.15 1.825 0 - 0.175 1.825 0 0.2 1.825 0 0.225 1.825 0 0.25 1.825 0 - 0.275 1.825 0 0.3 1.825 0 0.325 1.825 0 0.35 1.825 0 - 0.375 1.825 0 0.4 1.825 0 0.425 1.825 0 0.45 1.825 0 - 0.475 1.825 0 0.5 1.825 0 0.525 1.825 0 0.55 1.825 0 - 0.575 1.825 0 0.6 1.825 0 0.625 1.825 0 0.65 1.825 0 - 0.675 1.825 0 0.7 1.825 0 0.725 1.825 0 0.75 1.825 0 - 0.775 1.825 0 0.8 1.825 0 0.825 1.825 0 0.85 1.825 0 - 0.875 1.825 0 0.9 1.825 0 0.925 1.825 0 0.95 1.825 0 - 0.975 1.825 0 1 1.825 0 0 1.85 0 0.025 1.85 0 - 0.05 1.85 0 0.075 1.85 0 0.1 1.85 0 0.125 1.85 0 - 0.15 1.85 0 0.175 1.85 0 0.2 1.85 0 0.225 1.85 0 - 0.25 1.85 0 0.275 1.85 0 0.3 1.85 0 0.325 1.85 0 - 0.35 1.85 0 0.375 1.85 0 0.4 1.85 0 0.425 1.85 0 - 0.45 1.85 0 0.475 1.85 0 0.5 1.85 0 0.525 1.85 0 - 0.55 1.85 0 0.575 1.85 0 0.6 1.85 0 0.625 1.85 0 - 0.65 1.85 0 0.675 1.85 0 0.7 1.85 0 0.725 1.85 0 - 0.75 1.85 0 0.775 1.85 0 0.8 1.85 0 0.825 1.85 0 - 0.85 1.85 0 0.875 1.85 0 0.9 1.85 0 0.925 1.85 0 - 0.95 1.85 0 0.975 1.85 0 1 1.85 0 0 1.875 0 - 0.025 1.875 0 0.05 1.875 0 0.075 1.875 0 0.1 1.875 0 - 0.125 1.875 0 0.15 1.875 0 0.175 1.875 0 0.2 1.875 0 - 0.225 1.875 0 0.25 1.875 0 0.275 1.875 0 0.3 1.875 0 - 0.325 1.875 0 0.35 1.875 0 0.375 1.875 0 0.4 1.875 0 - 0.425 1.875 0 0.45 1.875 0 0.475 1.875 0 0.5 1.875 0 - 0.525 1.875 0 0.55 1.875 0 0.575 1.875 0 0.6 1.875 0 - 0.625 1.875 0 0.65 1.875 0 0.675 1.875 0 0.7 1.875 0 - 0.725 1.875 0 0.75 1.875 0 0.775 1.875 0 0.8 1.875 0 - 0.825 1.875 0 0.85 1.875 0 0.875 1.875 0 0.9 1.875 0 - 0.925 1.875 0 0.95 1.875 0 0.975 1.875 0 1 1.875 0 - 0 1.9 0 0.025 1.9 0 0.05 1.9 0 0.075 1.9 0 - 0.1 1.9 0 0.125 1.9 0 0.15 1.9 0 0.175 1.9 0 - 0.2 1.9 0 0.225 1.9 0 0.25 1.9 0 0.275 1.9 0 - 0.3 1.9 0 0.325 1.9 0 0.35 1.9 0 0.375 1.9 0 - 0.4 1.9 0 0.425 1.9 0 0.45 1.9 0 0.475 1.9 0 - 0.5 1.9 0 0.525 1.9 0 0.55 1.9 0 0.575 1.9 0 - 0.6 1.9 0 0.625 1.9 0 0.65 1.9 0 0.675 1.9 0 - 0.7 1.9 0 0.725 1.9 0 0.75 1.9 0 0.775 1.9 0 - 0.8 1.9 0 0.825 1.9 0 0.85 1.9 0 0.875 1.9 0 - 0.9 1.9 0 0.925 1.9 0 0.95 1.9 0 0.975 1.9 0 - 1 1.9 0 0 1.925 0 0.025 1.925 0 0.05 1.925 0 - 0.075 1.925 0 0.1 1.925 0 0.125 1.925 0 0.15 1.925 0 - 0.175 1.925 0 0.2 1.925 0 0.225 1.925 0 0.25 1.925 0 - 0.275 1.925 0 0.3 1.925 0 0.325 1.925 0 0.35 1.925 0 - 0.375 1.925 0 0.4 1.925 0 0.425 1.925 0 0.45 1.925 0 - 0.475 1.925 0 0.5 1.925 0 0.525 1.925 0 0.55 1.925 0 - 0.575 1.925 0 0.6 1.925 0 0.625 1.925 0 0.65 1.925 0 - 0.675 1.925 0 0.7 1.925 0 0.725 1.925 0 0.75 1.925 0 - 0.775 1.925 0 0.8 1.925 0 0.825 1.925 0 0.85 1.925 0 - 0.875 1.925 0 0.9 1.925 0 0.925 1.925 0 0.95 1.925 0 - 0.975 1.925 0 1 1.925 0 0 1.95 0 0.025 1.95 0 - 0.05 1.95 0 0.075 1.95 0 0.1 1.95 0 0.125 1.95 0 - 0.15 1.95 0 0.175 1.95 0 0.2 1.95 0 0.225 1.95 0 - 0.25 1.95 0 0.275 1.95 0 0.3 1.95 0 0.325 1.95 0 - 0.35 1.95 0 0.375 1.95 0 0.4 1.95 0 0.425 1.95 0 - 0.45 1.95 0 0.475 1.95 0 0.5 1.95 0 0.525 1.95 0 - 0.55 1.95 0 0.575 1.95 0 0.6 1.95 0 0.625 1.95 0 - 0.65 1.95 0 0.675 1.95 0 0.7 1.95 0 0.725 1.95 0 - 0.75 1.95 0 0.775 1.95 0 0.8 1.95 0 0.825 1.95 0 - 0.85 1.95 0 0.875 1.95 0 0.9 1.95 0 0.925 1.95 0 - 0.95 1.95 0 0.975 1.95 0 1 1.95 0 0 1.975 0 - 0.025 1.975 0 0.05 1.975 0 0.075 1.975 0 0.1 1.975 0 - 0.125 1.975 0 0.15 1.975 0 0.175 1.975 0 0.2 1.975 0 - 0.225 1.975 0 0.25 1.975 0 0.275 1.975 0 0.3 1.975 0 - 0.325 1.975 0 0.35 1.975 0 0.375 1.975 0 0.4 1.975 0 - 0.425 1.975 0 0.45 1.975 0 0.475 1.975 0 0.5 1.975 0 - 0.525 1.975 0 0.55 1.975 0 0.575 1.975 0 0.6 1.975 0 - 0.625 1.975 0 0.65 1.975 0 0.675 1.975 0 0.7 1.975 0 - 0.725 1.975 0 0.75 1.975 0 0.775 1.975 0 0.8 1.975 0 - 0.825 1.975 0 0.85 1.975 0 0.875 1.975 0 0.9 1.975 0 - 0.925 1.975 0 0.95 1.975 0 0.975 1.975 0 1 1.975 0 - 0 2 0 0.025 2 0 0.05 2 0 0.075 2 0 - 0.1 2 0 0.125 2 0 0.15 2 0 0.175 2 0 - 0.2 2 0 0.225 2 0 0.25 2 0 0.275 2 0 - 0.3 2 0 0.325 2 0 0.35 2 0 0.375 2 0 - 0.4 2 0 0.425 2 0 0.45 2 0 0.475 2 0 - 0.5 2 0 0.525 2 0 0.55 2 0 0.575 2 0 - 0.6 2 0 0.625 2 0 0.65 2 0 0.675 2 0 - 0.7 2 0 0.725 2 0 0.75 2 0 0.775 2 0 - 0.8 2 0 0.825 2 0 0.85 2 0 0.875 2 0 - 0.9 2 0 0.925 2 0 0.95 2 0 0.975 2 0 - 1 2 0 - - - - - 0 1 3 2 1 4 5 3 4 6 7 5 - 6 8 9 7 8 10 11 9 10 12 13 11 - 12 14 15 13 14 16 17 15 16 18 19 17 - 18 20 21 19 20 22 23 21 22 24 25 23 - 24 26 27 25 26 28 29 27 28 30 31 29 - 30 32 33 31 32 34 35 33 34 36 37 35 - 36 38 39 37 38 40 41 39 2 3 43 42 - 3 5 44 43 5 7 45 44 7 9 46 45 - 9 11 47 46 11 13 48 47 13 15 49 48 - 15 17 50 49 17 19 51 50 19 21 52 51 - 21 23 53 52 23 25 54 53 25 27 55 54 - 27 29 56 55 29 31 57 56 31 33 58 57 - 33 35 59 58 35 37 60 59 37 39 61 60 - 39 41 62 61 42 43 64 63 43 44 65 64 - 44 45 66 65 45 46 67 66 46 47 68 67 - 47 48 69 68 48 49 70 69 49 50 71 70 - 50 51 72 71 51 52 73 72 52 53 74 73 - 53 54 75 74 54 55 76 75 55 56 77 76 - 56 57 78 77 57 58 79 78 58 59 80 79 - 59 60 81 80 60 61 82 81 61 62 83 82 - 63 64 85 84 64 65 86 85 65 66 87 86 - 66 67 88 87 67 68 89 88 68 69 90 89 - 69 70 91 90 70 71 92 91 71 72 93 92 - 72 73 94 93 73 74 95 94 74 75 96 95 - 75 76 97 96 76 77 98 97 77 78 99 98 - 78 79 100 99 79 80 101 100 80 81 102 101 - 81 82 103 102 82 83 104 103 84 85 106 105 - 85 86 107 106 86 87 108 107 87 88 109 108 - 88 89 110 109 89 90 111 110 90 91 112 111 - 91 92 113 112 92 93 114 113 93 94 115 114 - 94 95 116 115 95 96 117 116 96 97 118 117 - 97 98 119 118 98 99 120 119 99 100 121 120 - 100 101 122 121 101 102 123 122 102 103 124 123 - 103 104 125 124 105 106 127 126 106 107 128 127 - 107 108 129 128 108 109 130 129 109 110 131 130 - 110 111 132 131 111 112 133 132 112 113 134 133 - 113 114 135 134 114 115 136 135 115 116 137 136 - 116 117 138 137 117 118 139 138 118 119 140 139 - 119 120 141 140 120 121 142 141 121 122 143 142 - 122 123 144 143 123 124 145 144 124 125 146 145 - 126 127 148 147 127 128 149 148 128 129 150 149 - 129 130 151 150 130 131 152 151 131 132 153 152 - 132 133 154 153 133 134 155 154 134 135 156 155 - 135 136 157 156 136 137 158 157 137 138 159 158 - 138 139 160 159 139 140 161 160 140 141 162 161 - 141 142 163 162 142 143 164 163 143 144 165 164 - 144 145 166 165 145 146 167 166 147 148 169 168 - 148 149 170 169 149 150 171 170 150 151 172 171 - 151 152 173 172 152 153 174 173 153 154 175 174 - 154 155 176 175 155 156 177 176 156 157 178 177 - 157 158 179 178 158 159 180 179 159 160 181 180 - 160 161 182 181 161 162 183 182 162 163 184 183 - 163 164 185 184 164 165 186 185 165 166 187 186 - 166 167 188 187 168 169 190 189 169 170 191 190 - 170 171 192 191 171 172 193 192 172 173 194 193 - 173 174 195 194 174 175 196 195 175 176 197 196 - 176 177 198 197 177 178 199 198 178 179 200 199 - 179 180 201 200 180 181 202 201 181 182 203 202 - 182 183 204 203 183 184 205 204 184 185 206 205 - 185 186 207 206 186 187 208 207 187 188 209 208 - 189 190 211 210 190 191 212 211 191 192 213 212 - 192 193 214 213 193 194 215 214 194 195 216 215 - 195 196 217 216 196 197 218 217 197 198 219 218 - 198 199 220 219 199 200 221 220 200 201 222 221 - 201 202 223 222 202 203 224 223 203 204 225 224 - 204 205 226 225 205 206 227 226 206 207 228 227 - 207 208 229 228 208 209 230 229 210 211 232 231 - 211 212 233 232 212 213 234 233 213 214 235 234 - 214 215 236 235 215 216 237 236 216 217 238 237 - 217 218 239 238 218 219 240 239 219 220 241 240 - 220 221 242 241 221 222 243 242 222 223 244 243 - 223 224 245 244 224 225 246 245 225 226 247 246 - 226 227 248 247 227 228 249 248 228 229 250 249 - 229 230 251 250 231 232 253 252 232 233 254 253 - 233 234 255 254 234 235 256 255 235 236 257 256 - 236 237 258 257 237 238 259 258 238 239 260 259 - 239 240 261 260 240 241 262 261 241 242 263 262 - 242 243 264 263 243 244 265 264 244 245 266 265 - 245 246 267 266 246 247 268 267 247 248 269 268 - 248 249 270 269 249 250 271 270 250 251 272 271 - 252 253 274 273 253 254 275 274 254 255 276 275 - 255 256 277 276 256 257 278 277 257 258 279 278 - 258 259 280 279 259 260 281 280 260 261 282 281 - 261 262 283 282 262 263 284 283 263 264 285 284 - 264 265 286 285 265 266 287 286 266 267 288 287 - 267 268 289 288 268 269 290 289 269 270 291 290 - 270 271 292 291 271 272 293 292 273 274 295 294 - 274 275 296 295 275 276 297 296 276 277 298 297 - 277 278 299 298 278 279 300 299 279 280 301 300 - 280 281 302 301 281 282 303 302 282 283 304 303 - 283 284 305 304 284 285 306 305 285 286 307 306 - 286 287 308 307 287 288 309 308 288 289 310 309 - 289 290 311 310 290 291 312 311 291 292 313 312 - 292 293 314 313 294 295 316 315 295 296 317 316 - 296 297 318 317 297 298 319 318 298 299 320 319 - 299 300 321 320 300 301 322 321 301 302 323 322 - 302 303 324 323 303 304 325 324 304 305 326 325 - 305 306 327 326 306 307 328 327 307 308 329 328 - 308 309 330 329 309 310 331 330 310 311 332 331 - 311 312 333 332 312 313 334 333 313 314 335 334 - 315 316 337 336 316 317 338 337 317 318 339 338 - 318 319 340 339 319 320 341 340 320 321 342 341 - 321 322 343 342 322 323 344 343 323 324 345 344 - 324 325 346 345 325 326 347 346 326 327 348 347 - 327 328 349 348 328 329 350 349 329 330 351 350 - 330 331 352 351 331 332 353 352 332 333 354 353 - 333 334 355 354 334 335 356 355 336 337 358 357 - 337 338 359 358 338 339 360 359 339 340 361 360 - 340 341 362 361 341 342 363 362 342 343 364 363 - 343 344 365 364 344 345 366 365 345 346 367 366 - 346 347 368 367 347 348 369 368 348 349 370 369 - 349 350 371 370 350 351 372 371 351 352 373 372 - 352 353 374 373 353 354 375 374 354 355 376 375 - 355 356 377 376 357 358 379 378 358 359 380 379 - 359 360 381 380 360 361 382 381 361 362 383 382 - 362 363 384 383 363 364 385 384 364 365 386 385 - 365 366 387 386 366 367 388 387 367 368 389 388 - 368 369 390 389 369 370 391 390 370 371 392 391 - 371 372 393 392 372 373 394 393 373 374 395 394 - 374 375 396 395 375 376 397 396 376 377 398 397 - 378 379 400 399 379 380 401 400 380 381 402 401 - 381 382 403 402 382 383 404 403 383 384 405 404 - 384 385 406 405 385 386 407 406 386 387 408 407 - 387 388 409 408 388 389 410 409 389 390 411 410 - 390 391 412 411 391 392 413 412 392 393 414 413 - 393 394 415 414 394 395 416 415 395 396 417 416 - 396 397 418 417 397 398 419 418 399 400 421 420 - 400 401 422 421 401 402 423 422 402 403 424 423 - 403 404 425 424 404 405 426 425 405 406 427 426 - 406 407 428 427 407 408 429 428 408 409 430 429 - 409 410 431 430 410 411 432 431 411 412 433 432 - 412 413 434 433 413 414 435 434 414 415 436 435 - 415 416 437 436 416 417 438 437 417 418 439 438 - 418 419 440 439 441 442 444 443 442 445 446 444 - 445 447 448 446 447 449 450 448 449 451 452 450 - 451 453 454 452 453 455 456 454 455 457 458 456 - 457 459 460 458 459 461 462 460 461 463 464 462 - 463 465 466 464 465 467 468 466 467 469 470 468 - 469 471 472 470 471 473 474 472 473 475 476 474 - 475 477 478 476 477 479 480 478 479 420 481 480 - 420 421 482 481 421 422 483 482 422 423 484 483 - 423 424 485 484 424 425 486 485 425 426 487 486 - 426 427 488 487 427 428 489 488 428 429 490 489 - 429 430 491 490 430 431 492 491 431 432 493 492 - 432 433 494 493 433 434 495 494 434 435 496 495 - 435 436 497 496 436 437 498 497 437 438 499 498 - 438 439 500 499 439 440 501 500 443 444 503 502 - 444 446 504 503 446 448 505 504 448 450 506 505 - 450 452 507 506 452 454 508 507 454 456 509 508 - 456 458 510 509 458 460 511 510 460 462 512 511 - 462 464 513 512 464 466 514 513 466 468 515 514 - 468 470 516 515 470 472 517 516 472 474 518 517 - 474 476 519 518 476 478 520 519 478 480 521 520 - 480 481 522 521 481 482 523 522 482 483 524 523 - 483 484 525 524 484 485 526 525 485 486 527 526 - 486 487 528 527 487 488 529 528 488 489 530 529 - 489 490 531 530 490 491 532 531 491 492 533 532 - 492 493 534 533 493 494 535 534 494 495 536 535 - 495 496 537 536 496 497 538 537 497 498 539 538 - 498 499 540 539 499 500 541 540 500 501 542 541 - 502 503 544 543 503 504 545 544 504 505 546 545 - 505 506 547 546 506 507 548 547 507 508 549 548 - 508 509 550 549 509 510 551 550 510 511 552 551 - 511 512 553 552 512 513 554 553 513 514 555 554 - 514 515 556 555 515 516 557 556 516 517 558 557 - 517 518 559 558 518 519 560 559 519 520 561 560 - 520 521 562 561 521 522 563 562 522 523 564 563 - 523 524 565 564 524 525 566 565 525 526 567 566 - 526 527 568 567 527 528 569 568 528 529 570 569 - 529 530 571 570 530 531 572 571 531 532 573 572 - 532 533 574 573 533 534 575 574 534 535 576 575 - 535 536 577 576 536 537 578 577 537 538 579 578 - 538 539 580 579 539 540 581 580 540 541 582 581 - 541 542 583 582 543 544 585 584 544 545 586 585 - 545 546 587 586 546 547 588 587 547 548 589 588 - 548 549 590 589 549 550 591 590 550 551 592 591 - 551 552 593 592 552 553 594 593 553 554 595 594 - 554 555 596 595 555 556 597 596 556 557 598 597 - 557 558 599 598 558 559 600 599 559 560 601 600 - 560 561 602 601 561 562 603 602 562 563 604 603 - 563 564 605 604 564 565 606 605 565 566 607 606 - 566 567 608 607 567 568 609 608 568 569 610 609 - 569 570 611 610 570 571 612 611 571 572 613 612 - 572 573 614 613 573 574 615 614 574 575 616 615 - 575 576 617 616 576 577 618 617 577 578 619 618 - 578 579 620 619 579 580 621 620 580 581 622 621 - 581 582 623 622 582 583 624 623 584 585 626 625 - 585 586 627 626 586 587 628 627 587 588 629 628 - 588 589 630 629 589 590 631 630 590 591 632 631 - 591 592 633 632 592 593 634 633 593 594 635 634 - 594 595 636 635 595 596 637 636 596 597 638 637 - 597 598 639 638 598 599 640 639 599 600 641 640 - 600 601 642 641 601 602 643 642 602 603 644 643 - 603 604 645 644 604 605 646 645 605 606 647 646 - 606 607 648 647 607 608 649 648 608 609 650 649 - 609 610 651 650 610 611 652 651 611 612 653 652 - 612 613 654 653 613 614 655 654 614 615 656 655 - 615 616 657 656 616 617 658 657 617 618 659 658 - 618 619 660 659 619 620 661 660 620 621 662 661 - 621 622 663 662 622 623 664 663 623 624 665 664 - 625 626 667 666 626 627 668 667 627 628 669 668 - 628 629 670 669 629 630 671 670 630 631 672 671 - 631 632 673 672 632 633 674 673 633 634 675 674 - 634 635 676 675 635 636 677 676 636 637 678 677 - 637 638 679 678 638 639 680 679 639 640 681 680 - 640 641 682 681 641 642 683 682 642 643 684 683 - 643 644 685 684 644 645 686 685 645 646 687 686 - 646 647 688 687 647 648 689 688 648 649 690 689 - 649 650 691 690 650 651 692 691 651 652 693 692 - 652 653 694 693 653 654 695 694 654 655 696 695 - 655 656 697 696 656 657 698 697 657 658 699 698 - 658 659 700 699 659 660 701 700 660 661 702 701 - 661 662 703 702 662 663 704 703 663 664 705 704 - 664 665 706 705 666 667 708 707 667 668 709 708 - 668 669 710 709 669 670 711 710 670 671 712 711 - 671 672 713 712 672 673 714 713 673 674 715 714 - 674 675 716 715 675 676 717 716 676 677 718 717 - 677 678 719 718 678 679 720 719 679 680 721 720 - 680 681 722 721 681 682 723 722 682 683 724 723 - 683 684 725 724 684 685 726 725 685 686 727 726 - 686 687 728 727 687 688 729 728 688 689 730 729 - 689 690 731 730 690 691 732 731 691 692 733 732 - 692 693 734 733 693 694 735 734 694 695 736 735 - 695 696 737 736 696 697 738 737 697 698 739 738 - 698 699 740 739 699 700 741 740 700 701 742 741 - 701 702 743 742 702 703 744 743 703 704 745 744 - 704 705 746 745 705 706 747 746 707 708 749 748 - 708 709 750 749 709 710 751 750 710 711 752 751 - 711 712 753 752 712 713 754 753 713 714 755 754 - 714 715 756 755 715 716 757 756 716 717 758 757 - 717 718 759 758 718 719 760 759 719 720 761 760 - 720 721 762 761 721 722 763 762 722 723 764 763 - 723 724 765 764 724 725 766 765 725 726 767 766 - 726 727 768 767 727 728 769 768 728 729 770 769 - 729 730 771 770 730 731 772 771 731 732 773 772 - 732 733 774 773 733 734 775 774 734 735 776 775 - 735 736 777 776 736 737 778 777 737 738 779 778 - 738 739 780 779 739 740 781 780 740 741 782 781 - 741 742 783 782 742 743 784 783 743 744 785 784 - 744 745 786 785 745 746 787 786 746 747 788 787 - 748 749 790 789 749 750 791 790 750 751 792 791 - 751 752 793 792 752 753 794 793 753 754 795 794 - 754 755 796 795 755 756 797 796 756 757 798 797 - 757 758 799 798 758 759 800 799 759 760 801 800 - 760 761 802 801 761 762 803 802 762 763 804 803 - 763 764 805 804 764 765 806 805 765 766 807 806 - 766 767 808 807 767 768 809 808 768 769 810 809 - 769 770 811 810 770 771 812 811 771 772 813 812 - 772 773 814 813 773 774 815 814 774 775 816 815 - 775 776 817 816 776 777 818 817 777 778 819 818 - 778 779 820 819 779 780 821 820 780 781 822 821 - 781 782 823 822 782 783 824 823 783 784 825 824 - 784 785 826 825 785 786 827 826 786 787 828 827 - 787 788 829 828 789 790 831 830 790 791 832 831 - 791 792 833 832 792 793 834 833 793 794 835 834 - 794 795 836 835 795 796 837 836 796 797 838 837 - 797 798 839 838 798 799 840 839 799 800 841 840 - 800 801 842 841 801 802 843 842 802 803 844 843 - 803 804 845 844 804 805 846 845 805 806 847 846 - 806 807 848 847 807 808 849 848 808 809 850 849 - 809 810 851 850 810 811 852 851 811 812 853 852 - 812 813 854 853 813 814 855 854 814 815 856 855 - 815 816 857 856 816 817 858 857 817 818 859 858 - 818 819 860 859 819 820 861 860 820 821 862 861 - 821 822 863 862 822 823 864 863 823 824 865 864 - 824 825 866 865 825 826 867 866 826 827 868 867 - 827 828 869 868 828 829 870 869 830 831 872 871 - 831 832 873 872 832 833 874 873 833 834 875 874 - 834 835 876 875 835 836 877 876 836 837 878 877 - 837 838 879 878 838 839 880 879 839 840 881 880 - 840 841 882 881 841 842 883 882 842 843 884 883 - 843 844 885 884 844 845 886 885 845 846 887 886 - 846 847 888 887 847 848 889 888 848 849 890 889 - 849 850 891 890 850 851 892 891 851 852 893 892 - 852 853 894 893 853 854 895 894 854 855 896 895 - 855 856 897 896 856 857 898 897 857 858 899 898 - 858 859 900 899 859 860 901 900 860 861 902 901 - 861 862 903 902 862 863 904 903 863 864 905 904 - 864 865 906 905 865 866 907 906 866 867 908 907 - 867 868 909 908 868 869 910 909 869 870 911 910 - 871 872 913 912 872 873 914 913 873 874 915 914 - 874 875 916 915 875 876 917 916 876 877 918 917 - 877 878 919 918 878 879 920 919 879 880 921 920 - 880 881 922 921 881 882 923 922 882 883 924 923 - 883 884 925 924 884 885 926 925 885 886 927 926 - 886 887 928 927 887 888 929 928 888 889 930 929 - 889 890 931 930 890 891 932 931 891 892 933 932 - 892 893 934 933 893 894 935 934 894 895 936 935 - 895 896 937 936 896 897 938 937 897 898 939 938 - 898 899 940 939 899 900 941 940 900 901 942 941 - 901 902 943 942 902 903 944 943 903 904 945 944 - 904 905 946 945 905 906 947 946 906 907 948 947 - 907 908 949 948 908 909 950 949 909 910 951 950 - 910 911 952 951 912 913 954 953 913 914 955 954 - 914 915 956 955 915 916 957 956 916 917 958 957 - 917 918 959 958 918 919 960 959 919 920 961 960 - 920 921 962 961 921 922 963 962 922 923 964 963 - 923 924 965 964 924 925 966 965 925 926 967 966 - 926 927 968 967 927 928 969 968 928 929 970 969 - 929 930 971 970 930 931 972 971 931 932 973 972 - 932 933 974 973 933 934 975 974 934 935 976 975 - 935 936 977 976 936 937 978 977 937 938 979 978 - 938 939 980 979 939 940 981 980 940 941 982 981 - 941 942 983 982 942 943 984 983 943 944 985 984 - 944 945 986 985 945 946 987 986 946 947 988 987 - 947 948 989 988 948 949 990 989 949 950 991 990 - 950 951 992 991 951 952 993 992 953 954 995 994 - 954 955 996 995 955 956 997 996 956 957 998 997 - 957 958 999 998 958 959 1000 999 959 960 1001 1000 - 960 961 1002 1001 961 962 1003 1002 962 963 1004 1003 - 963 964 1005 1004 964 965 1006 1005 965 966 1007 1006 - 966 967 1008 1007 967 968 1009 1008 968 969 1010 1009 - 969 970 1011 1010 970 971 1012 1011 971 972 1013 1012 - 972 973 1014 1013 973 974 1015 1014 974 975 1016 1015 - 975 976 1017 1016 976 977 1018 1017 977 978 1019 1018 - 978 979 1020 1019 979 980 1021 1020 980 981 1022 1021 - 981 982 1023 1022 982 983 1024 1023 983 984 1025 1024 - 984 985 1026 1025 985 986 1027 1026 986 987 1028 1027 - 987 988 1029 1028 988 989 1030 1029 989 990 1031 1030 - 990 991 1032 1031 991 992 1033 1032 992 993 1034 1033 - 994 995 1036 1035 995 996 1037 1036 996 997 1038 1037 - 997 998 1039 1038 998 999 1040 1039 999 1000 1041 1040 - 1000 1001 1042 1041 1001 1002 1043 1042 1002 1003 1044 1043 - 1003 1004 1045 1044 1004 1005 1046 1045 1005 1006 1047 1046 - 1006 1007 1048 1047 1007 1008 1049 1048 1008 1009 1050 1049 - 1009 1010 1051 1050 1010 1011 1052 1051 1011 1012 1053 1052 - 1012 1013 1054 1053 1013 1014 1055 1054 1014 1015 1056 1055 - 1015 1016 1057 1056 1016 1017 1058 1057 1017 1018 1059 1058 - 1018 1019 1060 1059 1019 1020 1061 1060 1020 1021 1062 1061 - 1021 1022 1063 1062 1022 1023 1064 1063 1023 1024 1065 1064 - 1024 1025 1066 1065 1025 1026 1067 1066 1026 1027 1068 1067 - 1027 1028 1069 1068 1028 1029 1070 1069 1029 1030 1071 1070 - 1030 1031 1072 1071 1031 1032 1073 1072 1032 1033 1074 1073 - 1033 1034 1075 1074 1035 1036 1077 1076 1036 1037 1078 1077 - 1037 1038 1079 1078 1038 1039 1080 1079 1039 1040 1081 1080 - 1040 1041 1082 1081 1041 1042 1083 1082 1042 1043 1084 1083 - 1043 1044 1085 1084 1044 1045 1086 1085 1045 1046 1087 1086 - 1046 1047 1088 1087 1047 1048 1089 1088 1048 1049 1090 1089 - 1049 1050 1091 1090 1050 1051 1092 1091 1051 1052 1093 1092 - 1052 1053 1094 1093 1053 1054 1095 1094 1054 1055 1096 1095 - 1055 1056 1097 1096 1056 1057 1098 1097 1057 1058 1099 1098 - 1058 1059 1100 1099 1059 1060 1101 1100 1060 1061 1102 1101 - 1061 1062 1103 1102 1062 1063 1104 1103 1063 1064 1105 1104 - 1064 1065 1106 1105 1065 1066 1107 1106 1066 1067 1108 1107 - 1067 1068 1109 1108 1068 1069 1110 1109 1069 1070 1111 1110 - 1070 1071 1112 1111 1071 1072 1113 1112 1072 1073 1114 1113 - 1073 1074 1115 1114 1074 1075 1116 1115 1076 1077 1118 1117 - 1077 1078 1119 1118 1078 1079 1120 1119 1079 1080 1121 1120 - 1080 1081 1122 1121 1081 1082 1123 1122 1082 1083 1124 1123 - 1083 1084 1125 1124 1084 1085 1126 1125 1085 1086 1127 1126 - 1086 1087 1128 1127 1087 1088 1129 1128 1088 1089 1130 1129 - 1089 1090 1131 1130 1090 1091 1132 1131 1091 1092 1133 1132 - 1092 1093 1134 1133 1093 1094 1135 1134 1094 1095 1136 1135 - 1095 1096 1137 1136 1096 1097 1138 1137 1097 1098 1139 1138 - 1098 1099 1140 1139 1099 1100 1141 1140 1100 1101 1142 1141 - 1101 1102 1143 1142 1102 1103 1144 1143 1103 1104 1145 1144 - 1104 1105 1146 1145 1105 1106 1147 1146 1106 1107 1148 1147 - 1107 1108 1149 1148 1108 1109 1150 1149 1109 1110 1151 1150 - 1110 1111 1152 1151 1111 1112 1153 1152 1112 1113 1154 1153 - 1113 1114 1155 1154 1114 1115 1156 1155 1115 1116 1157 1156 - 1117 1118 1159 1158 1118 1119 1160 1159 1119 1120 1161 1160 - 1120 1121 1162 1161 1121 1122 1163 1162 1122 1123 1164 1163 - 1123 1124 1165 1164 1124 1125 1166 1165 1125 1126 1167 1166 - 1126 1127 1168 1167 1127 1128 1169 1168 1128 1129 1170 1169 - 1129 1130 1171 1170 1130 1131 1172 1171 1131 1132 1173 1172 - 1132 1133 1174 1173 1133 1134 1175 1174 1134 1135 1176 1175 - 1135 1136 1177 1176 1136 1137 1178 1177 1137 1138 1179 1178 - 1138 1139 1180 1179 1139 1140 1181 1180 1140 1141 1182 1181 - 1141 1142 1183 1182 1142 1143 1184 1183 1143 1144 1185 1184 - 1144 1145 1186 1185 1145 1146 1187 1186 1146 1147 1188 1187 - 1147 1148 1189 1188 1148 1149 1190 1189 1149 1150 1191 1190 - 1150 1151 1192 1191 1151 1152 1193 1192 1152 1153 1194 1193 - 1153 1154 1195 1194 1154 1155 1196 1195 1155 1156 1197 1196 - 1156 1157 1198 1197 1158 1159 1200 1199 1159 1160 1201 1200 - 1160 1161 1202 1201 1161 1162 1203 1202 1162 1163 1204 1203 - 1163 1164 1205 1204 1164 1165 1206 1205 1165 1166 1207 1206 - 1166 1167 1208 1207 1167 1168 1209 1208 1168 1169 1210 1209 - 1169 1170 1211 1210 1170 1171 1212 1211 1171 1172 1213 1212 - 1172 1173 1214 1213 1173 1174 1215 1214 1174 1175 1216 1215 - 1175 1176 1217 1216 1176 1177 1218 1217 1177 1178 1219 1218 - 1178 1179 1220 1219 1179 1180 1221 1220 1180 1181 1222 1221 - 1181 1182 1223 1222 1182 1183 1224 1223 1183 1184 1225 1224 - 1184 1185 1226 1225 1185 1186 1227 1226 1186 1187 1228 1227 - 1187 1188 1229 1228 1188 1189 1230 1229 1189 1190 1231 1230 - 1190 1191 1232 1231 1191 1192 1233 1232 1192 1193 1234 1233 - 1193 1194 1235 1234 1194 1195 1236 1235 1195 1196 1237 1236 - 1196 1197 1238 1237 1197 1198 1239 1238 1199 1200 1241 1240 - 1200 1201 1242 1241 1201 1202 1243 1242 1202 1203 1244 1243 - 1203 1204 1245 1244 1204 1205 1246 1245 1205 1206 1247 1246 - 1206 1207 1248 1247 1207 1208 1249 1248 1208 1209 1250 1249 - 1209 1210 1251 1250 1210 1211 1252 1251 1211 1212 1253 1252 - 1212 1213 1254 1253 1213 1214 1255 1254 1214 1215 1256 1255 - 1215 1216 1257 1256 1216 1217 1258 1257 1217 1218 1259 1258 - 1218 1219 1260 1259 1219 1220 1261 1260 1220 1221 1262 1261 - 1221 1222 1263 1262 1222 1223 1264 1263 1223 1224 1265 1264 - 1224 1225 1266 1265 1225 1226 1267 1266 1226 1227 1268 1267 - 1227 1228 1269 1268 1228 1229 1270 1269 1229 1230 1271 1270 - 1230 1231 1272 1271 1231 1232 1273 1272 1232 1233 1274 1273 - 1233 1234 1275 1274 1234 1235 1276 1275 1235 1236 1277 1276 - 1236 1237 1278 1277 1237 1238 1279 1278 1238 1239 1280 1279 - 1240 1241 1282 1281 1241 1242 1283 1282 1242 1243 1284 1283 - 1243 1244 1285 1284 1244 1245 1286 1285 1245 1246 1287 1286 - 1246 1247 1288 1287 1247 1248 1289 1288 1248 1249 1290 1289 - 1249 1250 1291 1290 1250 1251 1292 1291 1251 1252 1293 1292 - 1252 1253 1294 1293 1253 1254 1295 1294 1254 1255 1296 1295 - 1255 1256 1297 1296 1256 1257 1298 1297 1257 1258 1299 1298 - 1258 1259 1300 1299 1259 1260 1301 1300 1260 1261 1302 1301 - 1261 1262 1303 1302 1262 1263 1304 1303 1263 1264 1305 1304 - 1264 1265 1306 1305 1265 1266 1307 1306 1266 1267 1308 1307 - 1267 1268 1309 1308 1268 1269 1310 1309 1269 1270 1311 1310 - 1270 1271 1312 1311 1271 1272 1313 1312 1272 1273 1314 1313 - 1273 1274 1315 1314 1274 1275 1316 1315 1275 1276 1317 1316 - 1276 1277 1318 1317 1277 1278 1319 1318 1278 1279 1320 1319 - 1279 1280 1321 1320 1281 1282 1323 1322 1282 1283 1324 1323 - 1283 1284 1325 1324 1284 1285 1326 1325 1285 1286 1327 1326 - 1286 1287 1328 1327 1287 1288 1329 1328 1288 1289 1330 1329 - 1289 1290 1331 1330 1290 1291 1332 1331 1291 1292 1333 1332 - 1292 1293 1334 1333 1293 1294 1335 1334 1294 1295 1336 1335 - 1295 1296 1337 1336 1296 1297 1338 1337 1297 1298 1339 1338 - 1298 1299 1340 1339 1299 1300 1341 1340 1300 1301 1342 1341 - 1301 1302 1343 1342 1302 1303 1344 1343 1303 1304 1345 1344 - 1304 1305 1346 1345 1305 1306 1347 1346 1306 1307 1348 1347 - 1307 1308 1349 1348 1308 1309 1350 1349 1309 1310 1351 1350 - 1310 1311 1352 1351 1311 1312 1353 1352 1312 1313 1354 1353 - 1313 1314 1355 1354 1314 1315 1356 1355 1315 1316 1357 1356 - 1316 1317 1358 1357 1317 1318 1359 1358 1318 1319 1360 1359 - 1319 1320 1361 1360 1320 1321 1362 1361 1322 1323 1364 1363 - 1323 1324 1365 1364 1324 1325 1366 1365 1325 1326 1367 1366 - 1326 1327 1368 1367 1327 1328 1369 1368 1328 1329 1370 1369 - 1329 1330 1371 1370 1330 1331 1372 1371 1331 1332 1373 1372 - 1332 1333 1374 1373 1333 1334 1375 1374 1334 1335 1376 1375 - 1335 1336 1377 1376 1336 1337 1378 1377 1337 1338 1379 1378 - 1338 1339 1380 1379 1339 1340 1381 1380 1340 1341 1382 1381 - 1341 1342 1383 1382 1342 1343 1384 1383 1343 1344 1385 1384 - 1344 1345 1386 1385 1345 1346 1387 1386 1346 1347 1388 1387 - 1347 1348 1389 1388 1348 1349 1390 1389 1349 1350 1391 1390 - 1350 1351 1392 1391 1351 1352 1393 1392 1352 1353 1394 1393 - 1353 1354 1395 1394 1354 1355 1396 1395 1355 1356 1397 1396 - 1356 1357 1398 1397 1357 1358 1399 1398 1358 1359 1400 1399 - 1359 1360 1401 1400 1360 1361 1402 1401 1361 1362 1403 1402 - 1363 1364 1405 1404 1364 1365 1406 1405 1365 1366 1407 1406 - 1366 1367 1408 1407 1367 1368 1409 1408 1368 1369 1410 1409 - 1369 1370 1411 1410 1370 1371 1412 1411 1371 1372 1413 1412 - 1372 1373 1414 1413 1373 1374 1415 1414 1374 1375 1416 1415 - 1375 1376 1417 1416 1376 1377 1418 1417 1377 1378 1419 1418 - 1378 1379 1420 1419 1379 1380 1421 1420 1380 1381 1422 1421 - 1381 1382 1423 1422 1382 1383 1424 1423 1383 1384 1425 1424 - 1384 1385 1426 1425 1385 1386 1427 1426 1386 1387 1428 1427 - 1387 1388 1429 1428 1388 1389 1430 1429 1389 1390 1431 1430 - 1390 1391 1432 1431 1391 1392 1433 1432 1392 1393 1434 1433 - 1393 1394 1435 1434 1394 1395 1436 1435 1395 1396 1437 1436 - 1396 1397 1438 1437 1397 1398 1439 1438 1398 1399 1440 1439 - 1399 1400 1441 1440 1400 1401 1442 1441 1401 1402 1443 1442 - 1402 1403 1444 1443 1404 1405 1446 1445 1405 1406 1447 1446 - 1406 1407 1448 1447 1407 1408 1449 1448 1408 1409 1450 1449 - 1409 1410 1451 1450 1410 1411 1452 1451 1411 1412 1453 1452 - 1412 1413 1454 1453 1413 1414 1455 1454 1414 1415 1456 1455 - 1415 1416 1457 1456 1416 1417 1458 1457 1417 1418 1459 1458 - 1418 1419 1460 1459 1419 1420 1461 1460 1420 1421 1462 1461 - 1421 1422 1463 1462 1422 1423 1464 1463 1423 1424 1465 1464 - 1424 1425 1466 1465 1425 1426 1467 1466 1426 1427 1468 1467 - 1427 1428 1469 1468 1428 1429 1470 1469 1429 1430 1471 1470 - 1430 1431 1472 1471 1431 1432 1473 1472 1432 1433 1474 1473 - 1433 1434 1475 1474 1434 1435 1476 1475 1435 1436 1477 1476 - 1436 1437 1478 1477 1437 1438 1479 1478 1438 1439 1480 1479 - 1439 1440 1481 1480 1440 1441 1482 1481 1441 1442 1483 1482 - 1442 1443 1484 1483 1443 1444 1485 1484 1445 1446 1487 1486 - 1446 1447 1488 1487 1447 1448 1489 1488 1448 1449 1490 1489 - 1449 1450 1491 1490 1450 1451 1492 1491 1451 1452 1493 1492 - 1452 1453 1494 1493 1453 1454 1495 1494 1454 1455 1496 1495 - 1455 1456 1497 1496 1456 1457 1498 1497 1457 1458 1499 1498 - 1458 1459 1500 1499 1459 1460 1501 1500 1460 1461 1502 1501 - 1461 1462 1503 1502 1462 1463 1504 1503 1463 1464 1505 1504 - 1464 1465 1506 1505 1465 1466 1507 1506 1466 1467 1508 1507 - 1467 1468 1509 1508 1468 1469 1510 1509 1469 1470 1511 1510 - 1470 1471 1512 1511 1471 1472 1513 1512 1472 1473 1514 1513 - 1473 1474 1515 1514 1474 1475 1516 1515 1475 1476 1517 1516 - 1476 1477 1518 1517 1477 1478 1519 1518 1478 1479 1520 1519 - 1479 1480 1521 1520 1480 1481 1522 1521 1481 1482 1523 1522 - 1482 1483 1524 1523 1483 1484 1525 1524 1484 1485 1526 1525 - 1486 1487 1528 1527 1487 1488 1529 1528 1488 1489 1530 1529 - 1489 1490 1531 1530 1490 1491 1532 1531 1491 1492 1533 1532 - 1492 1493 1534 1533 1493 1494 1535 1534 1494 1495 1536 1535 - 1495 1496 1537 1536 1496 1497 1538 1537 1497 1498 1539 1538 - 1498 1499 1540 1539 1499 1500 1541 1540 1500 1501 1542 1541 - 1501 1502 1543 1542 1502 1503 1544 1543 1503 1504 1545 1544 - 1504 1505 1546 1545 1505 1506 1547 1546 1506 1507 1548 1547 - 1507 1508 1549 1548 1508 1509 1550 1549 1509 1510 1551 1550 - 1510 1511 1552 1551 1511 1512 1553 1552 1512 1513 1554 1553 - 1513 1514 1555 1554 1514 1515 1556 1555 1515 1516 1557 1556 - 1516 1517 1558 1557 1517 1518 1559 1558 1518 1519 1560 1559 - 1519 1520 1561 1560 1520 1521 1562 1561 1521 1522 1563 1562 - 1522 1523 1564 1563 1523 1524 1565 1564 1524 1525 1566 1565 - 1525 1526 1567 1566 1527 1528 1569 1568 1528 1529 1570 1569 - 1529 1530 1571 1570 1530 1531 1572 1571 1531 1532 1573 1572 - 1532 1533 1574 1573 1533 1534 1575 1574 1534 1535 1576 1575 - 1535 1536 1577 1576 1536 1537 1578 1577 1537 1538 1579 1578 - 1538 1539 1580 1579 1539 1540 1581 1580 1540 1541 1582 1581 - 1541 1542 1583 1582 1542 1543 1584 1583 1543 1544 1585 1584 - 1544 1545 1586 1585 1545 1546 1587 1586 1546 1547 1588 1587 - 1547 1548 1589 1588 1548 1549 1590 1589 1549 1550 1591 1590 - 1550 1551 1592 1591 1551 1552 1593 1592 1552 1553 1594 1593 - 1553 1554 1595 1594 1554 1555 1596 1595 1555 1556 1597 1596 - 1556 1557 1598 1597 1557 1558 1599 1598 1558 1559 1600 1599 - 1559 1560 1601 1600 1560 1561 1602 1601 1561 1562 1603 1602 - 1562 1563 1604 1603 1563 1564 1605 1604 1564 1565 1606 1605 - 1565 1566 1607 1606 1566 1567 1608 1607 1568 1569 1610 1609 - 1569 1570 1611 1610 1570 1571 1612 1611 1571 1572 1613 1612 - 1572 1573 1614 1613 1573 1574 1615 1614 1574 1575 1616 1615 - 1575 1576 1617 1616 1576 1577 1618 1617 1577 1578 1619 1618 - 1578 1579 1620 1619 1579 1580 1621 1620 1580 1581 1622 1621 - 1581 1582 1623 1622 1582 1583 1624 1623 1583 1584 1625 1624 - 1584 1585 1626 1625 1585 1586 1627 1626 1586 1587 1628 1627 - 1587 1588 1629 1628 1588 1589 1630 1629 1589 1590 1631 1630 - 1590 1591 1632 1631 1591 1592 1633 1632 1592 1593 1634 1633 - 1593 1594 1635 1634 1594 1595 1636 1635 1595 1596 1637 1636 - 1596 1597 1638 1637 1597 1598 1639 1638 1598 1599 1640 1639 - 1599 1600 1641 1640 1600 1601 1642 1641 1601 1602 1643 1642 - 1602 1603 1644 1643 1603 1604 1645 1644 1604 1605 1646 1645 - 1605 1606 1647 1646 1606 1607 1648 1647 1607 1608 1649 1648 - 1609 1610 1651 1650 1610 1611 1652 1651 1611 1612 1653 1652 - 1612 1613 1654 1653 1613 1614 1655 1654 1614 1615 1656 1655 - 1615 1616 1657 1656 1616 1617 1658 1657 1617 1618 1659 1658 - 1618 1619 1660 1659 1619 1620 1661 1660 1620 1621 1662 1661 - 1621 1622 1663 1662 1622 1623 1664 1663 1623 1624 1665 1664 - 1624 1625 1666 1665 1625 1626 1667 1666 1626 1627 1668 1667 - 1627 1628 1669 1668 1628 1629 1670 1669 1629 1630 1671 1670 - 1630 1631 1672 1671 1631 1632 1673 1672 1632 1633 1674 1673 - 1633 1634 1675 1674 1634 1635 1676 1675 1635 1636 1677 1676 - 1636 1637 1678 1677 1637 1638 1679 1678 1638 1639 1680 1679 - 1639 1640 1681 1680 1640 1641 1682 1681 1641 1642 1683 1682 - 1642 1643 1684 1683 1643 1644 1685 1684 1644 1645 1686 1685 - 1645 1646 1687 1686 1646 1647 1688 1687 1647 1648 1689 1688 - 1648 1649 1690 1689 1650 1651 1692 1691 1651 1652 1693 1692 - 1652 1653 1694 1693 1653 1654 1695 1694 1654 1655 1696 1695 - 1655 1656 1697 1696 1656 1657 1698 1697 1657 1658 1699 1698 - 1658 1659 1700 1699 1659 1660 1701 1700 1660 1661 1702 1701 - 1661 1662 1703 1702 1662 1663 1704 1703 1663 1664 1705 1704 - 1664 1665 1706 1705 1665 1666 1707 1706 1666 1667 1708 1707 - 1667 1668 1709 1708 1668 1669 1710 1709 1669 1670 1711 1710 - 1670 1671 1712 1711 1671 1672 1713 1712 1672 1673 1714 1713 - 1673 1674 1715 1714 1674 1675 1716 1715 1675 1676 1717 1716 - 1676 1677 1718 1717 1677 1678 1719 1718 1678 1679 1720 1719 - 1679 1680 1721 1720 1680 1681 1722 1721 1681 1682 1723 1722 - 1682 1683 1724 1723 1683 1684 1725 1724 1684 1685 1726 1725 - 1685 1686 1727 1726 1686 1687 1728 1727 1687 1688 1729 1728 - 1688 1689 1730 1729 1689 1690 1731 1730 1691 1692 1733 1732 - 1692 1693 1734 1733 1693 1694 1735 1734 1694 1695 1736 1735 - 1695 1696 1737 1736 1696 1697 1738 1737 1697 1698 1739 1738 - 1698 1699 1740 1739 1699 1700 1741 1740 1700 1701 1742 1741 - 1701 1702 1743 1742 1702 1703 1744 1743 1703 1704 1745 1744 - 1704 1705 1746 1745 1705 1706 1747 1746 1706 1707 1748 1747 - 1707 1708 1749 1748 1708 1709 1750 1749 1709 1710 1751 1750 - 1710 1711 1752 1751 1711 1712 1753 1752 1712 1713 1754 1753 - 1713 1714 1755 1754 1714 1715 1756 1755 1715 1716 1757 1756 - 1716 1717 1758 1757 1717 1718 1759 1758 1718 1719 1760 1759 - 1719 1720 1761 1760 1720 1721 1762 1761 1721 1722 1763 1762 - 1722 1723 1764 1763 1723 1724 1765 1764 1724 1725 1766 1765 - 1725 1726 1767 1766 1726 1727 1768 1767 1727 1728 1769 1768 - 1728 1729 1770 1769 1729 1730 1771 1770 1730 1731 1772 1771 - 1732 1733 1774 1773 1733 1734 1775 1774 1734 1735 1776 1775 - 1735 1736 1777 1776 1736 1737 1778 1777 1737 1738 1779 1778 - 1738 1739 1780 1779 1739 1740 1781 1780 1740 1741 1782 1781 - 1741 1742 1783 1782 1742 1743 1784 1783 1743 1744 1785 1784 - 1744 1745 1786 1785 1745 1746 1787 1786 1746 1747 1788 1787 - 1747 1748 1789 1788 1748 1749 1790 1789 1749 1750 1791 1790 - 1750 1751 1792 1791 1751 1752 1793 1792 1752 1753 1794 1793 - 1753 1754 1795 1794 1754 1755 1796 1795 1755 1756 1797 1796 - 1756 1757 1798 1797 1757 1758 1799 1798 1758 1759 1800 1799 - 1759 1760 1801 1800 1760 1761 1802 1801 1761 1762 1803 1802 - 1762 1763 1804 1803 1763 1764 1805 1804 1764 1765 1806 1805 - 1765 1766 1807 1806 1766 1767 1808 1807 1767 1768 1809 1808 - 1768 1769 1810 1809 1769 1770 1811 1810 1770 1771 1812 1811 - 1771 1772 1813 1812 1773 1774 1815 1814 1774 1775 1816 1815 - 1775 1776 1817 1816 1776 1777 1818 1817 1777 1778 1819 1818 - 1778 1779 1820 1819 1779 1780 1821 1820 1780 1781 1822 1821 - 1781 1782 1823 1822 1782 1783 1824 1823 1783 1784 1825 1824 - 1784 1785 1826 1825 1785 1786 1827 1826 1786 1787 1828 1827 - 1787 1788 1829 1828 1788 1789 1830 1829 1789 1790 1831 1830 - 1790 1791 1832 1831 1791 1792 1833 1832 1792 1793 1834 1833 - 1793 1794 1835 1834 1794 1795 1836 1835 1795 1796 1837 1836 - 1796 1797 1838 1837 1797 1798 1839 1838 1798 1799 1840 1839 - 1799 1800 1841 1840 1800 1801 1842 1841 1801 1802 1843 1842 - 1802 1803 1844 1843 1803 1804 1845 1844 1804 1805 1846 1845 - 1805 1806 1847 1846 1806 1807 1848 1847 1807 1808 1849 1848 - 1808 1809 1850 1849 1809 1810 1851 1850 1810 1811 1852 1851 - 1811 1812 1853 1852 1812 1813 1854 1853 1814 1815 1856 1855 - 1815 1816 1857 1856 1816 1817 1858 1857 1817 1818 1859 1858 - 1818 1819 1860 1859 1819 1820 1861 1860 1820 1821 1862 1861 - 1821 1822 1863 1862 1822 1823 1864 1863 1823 1824 1865 1864 - 1824 1825 1866 1865 1825 1826 1867 1866 1826 1827 1868 1867 - 1827 1828 1869 1868 1828 1829 1870 1869 1829 1830 1871 1870 - 1830 1831 1872 1871 1831 1832 1873 1872 1832 1833 1874 1873 - 1833 1834 1875 1874 1834 1835 1876 1875 1835 1836 1877 1876 - 1836 1837 1878 1877 1837 1838 1879 1878 1838 1839 1880 1879 - 1839 1840 1881 1880 1840 1841 1882 1881 1841 1842 1883 1882 - 1842 1843 1884 1883 1843 1844 1885 1884 1844 1845 1886 1885 - 1845 1846 1887 1886 1846 1847 1888 1887 1847 1848 1889 1888 - 1848 1849 1890 1889 1849 1850 1891 1890 1850 1851 1892 1891 - 1851 1852 1893 1892 1852 1853 1894 1893 1853 1854 1895 1894 - 1855 1856 1897 1896 1856 1857 1898 1897 1857 1858 1899 1898 - 1858 1859 1900 1899 1859 1860 1901 1900 1860 1861 1902 1901 - 1861 1862 1903 1902 1862 1863 1904 1903 1863 1864 1905 1904 - 1864 1865 1906 1905 1865 1866 1907 1906 1866 1867 1908 1907 - 1867 1868 1909 1908 1868 1869 1910 1909 1869 1870 1911 1910 - 1870 1871 1912 1911 1871 1872 1913 1912 1872 1873 1914 1913 - 1873 1874 1915 1914 1874 1875 1916 1915 1875 1876 1917 1916 - 1876 1877 1918 1917 1877 1878 1919 1918 1878 1879 1920 1919 - 1879 1880 1921 1920 1880 1881 1922 1921 1881 1882 1923 1922 - 1882 1883 1924 1923 1883 1884 1925 1924 1884 1885 1926 1925 - 1885 1886 1927 1926 1886 1887 1928 1927 1887 1888 1929 1928 - 1888 1889 1930 1929 1889 1890 1931 1930 1890 1891 1932 1931 - 1891 1892 1933 1932 1892 1893 1934 1933 1893 1894 1935 1934 - 1894 1895 1936 1935 1896 1897 1938 1937 1897 1898 1939 1938 - 1898 1899 1940 1939 1899 1900 1941 1940 1900 1901 1942 1941 - 1901 1902 1943 1942 1902 1903 1944 1943 1903 1904 1945 1944 - 1904 1905 1946 1945 1905 1906 1947 1946 1906 1907 1948 1947 - 1907 1908 1949 1948 1908 1909 1950 1949 1909 1910 1951 1950 - 1910 1911 1952 1951 1911 1912 1953 1952 1912 1913 1954 1953 - 1913 1914 1955 1954 1914 1915 1956 1955 1915 1916 1957 1956 - 1916 1917 1958 1957 1917 1918 1959 1958 1918 1919 1960 1959 - 1919 1920 1961 1960 1920 1921 1962 1961 1921 1922 1963 1962 - 1922 1923 1964 1963 1923 1924 1965 1964 1924 1925 1966 1965 - 1925 1926 1967 1966 1926 1927 1968 1967 1927 1928 1969 1968 - 1928 1929 1970 1969 1929 1930 1971 1970 1930 1931 1972 1971 - 1931 1932 1973 1972 1932 1933 1974 1973 1933 1934 1975 1974 - 1934 1935 1976 1975 1935 1936 1977 1976 1937 1938 1979 1978 - 1938 1939 1980 1979 1939 1940 1981 1980 1940 1941 1982 1981 - 1941 1942 1983 1982 1942 1943 1984 1983 1943 1944 1985 1984 - 1944 1945 1986 1985 1945 1946 1987 1986 1946 1947 1988 1987 - 1947 1948 1989 1988 1948 1949 1990 1989 1949 1950 1991 1990 - 1950 1951 1992 1991 1951 1952 1993 1992 1952 1953 1994 1993 - 1953 1954 1995 1994 1954 1955 1996 1995 1955 1956 1997 1996 - 1956 1957 1998 1997 1957 1958 1999 1998 1958 1959 2000 1999 - 1959 1960 2001 2000 1960 1961 2002 2001 1961 1962 2003 2002 - 1962 1963 2004 2003 1963 1964 2005 2004 1964 1965 2006 2005 - 1965 1966 2007 2006 1966 1967 2008 2007 1967 1968 2009 2008 - 1968 1969 2010 2009 1969 1970 2011 2010 1970 1971 2012 2011 - 1971 1972 2013 2012 1972 1973 2014 2013 1973 1974 2015 2014 - 1974 1975 2016 2015 1975 1976 2017 2016 1976 1977 2018 2017 - 1978 1979 2020 2019 1979 1980 2021 2020 1980 1981 2022 2021 - 1981 1982 2023 2022 1982 1983 2024 2023 1983 1984 2025 2024 - 1984 1985 2026 2025 1985 1986 2027 2026 1986 1987 2028 2027 - 1987 1988 2029 2028 1988 1989 2030 2029 1989 1990 2031 2030 - 1990 1991 2032 2031 1991 1992 2033 2032 1992 1993 2034 2033 - 1993 1994 2035 2034 1994 1995 2036 2035 1995 1996 2037 2036 - 1996 1997 2038 2037 1997 1998 2039 2038 1998 1999 2040 2039 - 1999 2000 2041 2040 2000 2001 2042 2041 2001 2002 2043 2042 - 2002 2003 2044 2043 2003 2004 2045 2044 2004 2005 2046 2045 - 2005 2006 2047 2046 2006 2007 2048 2047 2007 2008 2049 2048 - 2008 2009 2050 2049 2009 2010 2051 2050 2010 2011 2052 2051 - 2011 2012 2053 2052 2012 2013 2054 2053 2013 2014 2055 2054 - 2014 2015 2056 2055 2015 2016 2057 2056 2016 2017 2058 2057 - 2017 2018 2059 2058 2019 2020 2061 2060 2020 2021 2062 2061 - 2021 2022 2063 2062 2022 2023 2064 2063 2023 2024 2065 2064 - 2024 2025 2066 2065 2025 2026 2067 2066 2026 2027 2068 2067 - 2027 2028 2069 2068 2028 2029 2070 2069 2029 2030 2071 2070 - 2030 2031 2072 2071 2031 2032 2073 2072 2032 2033 2074 2073 - 2033 2034 2075 2074 2034 2035 2076 2075 2035 2036 2077 2076 - 2036 2037 2078 2077 2037 2038 2079 2078 2038 2039 2080 2079 - 2039 2040 2081 2080 2040 2041 2082 2081 2041 2042 2083 2082 - 2042 2043 2084 2083 2043 2044 2085 2084 2044 2045 2086 2085 - 2045 2046 2087 2086 2046 2047 2088 2087 2047 2048 2089 2088 - 2048 2049 2090 2089 2049 2050 2091 2090 2050 2051 2092 2091 - 2051 2052 2093 2092 2052 2053 2094 2093 2053 2054 2095 2094 - 2054 2055 2096 2095 2055 2056 2097 2096 2056 2057 2098 2097 - 2057 2058 2099 2098 2058 2059 2100 2099 - - - 4 8 12 16 20 24 28 32 36 40 44 48 - 52 56 60 64 68 72 76 80 84 88 92 96 - 100 104 108 112 116 120 124 128 132 136 140 144 - 148 152 156 160 164 168 172 176 180 184 188 192 - 196 200 204 208 212 216 220 224 228 232 236 240 - 244 248 252 256 260 264 268 272 276 280 284 288 - 292 296 300 304 308 312 316 320 324 328 332 336 - 340 344 348 352 356 360 364 368 372 376 380 384 - 388 392 396 400 404 408 412 416 420 424 428 432 - 436 440 444 448 452 456 460 464 468 472 476 480 - 484 488 492 496 500 504 508 512 516 520 524 528 - 532 536 540 544 548 552 556 560 564 568 572 576 - 580 584 588 592 596 600 604 608 612 616 620 624 - 628 632 636 640 644 648 652 656 660 664 668 672 - 676 680 684 688 692 696 700 704 708 712 716 720 - 724 728 732 736 740 744 748 752 756 760 764 768 - 772 776 780 784 788 792 796 800 804 808 812 816 - 820 824 828 832 836 840 844 848 852 856 860 864 - 868 872 876 880 884 888 892 896 900 904 908 912 - 916 920 924 928 932 936 940 944 948 952 956 960 - 964 968 972 976 980 984 988 992 996 1000 1004 1008 - 1012 1016 1020 1024 1028 1032 1036 1040 1044 1048 1052 1056 - 1060 1064 1068 1072 1076 1080 1084 1088 1092 1096 1100 1104 - 1108 1112 1116 1120 1124 1128 1132 1136 1140 1144 1148 1152 - 1156 1160 1164 1168 1172 1176 1180 1184 1188 1192 1196 1200 - 1204 1208 1212 1216 1220 1224 1228 1232 1236 1240 1244 1248 - 1252 1256 1260 1264 1268 1272 1276 1280 1284 1288 1292 1296 - 1300 1304 1308 1312 1316 1320 1324 1328 1332 1336 1340 1344 - 1348 1352 1356 1360 1364 1368 1372 1376 1380 1384 1388 1392 - 1396 1400 1404 1408 1412 1416 1420 1424 1428 1432 1436 1440 - 1444 1448 1452 1456 1460 1464 1468 1472 1476 1480 1484 1488 - 1492 1496 1500 1504 1508 1512 1516 1520 1524 1528 1532 1536 - 1540 1544 1548 1552 1556 1560 1564 1568 1572 1576 1580 1584 - 1588 1592 1596 1600 1604 1608 1612 1616 1620 1624 1628 1632 - 1636 1640 1644 1648 1652 1656 1660 1664 1668 1672 1676 1680 - 1684 1688 1692 1696 1700 1704 1708 1712 1716 1720 1724 1728 - 1732 1736 1740 1744 1748 1752 1756 1760 1764 1768 1772 1776 - 1780 1784 1788 1792 1796 1800 1804 1808 1812 1816 1820 1824 - 1828 1832 1836 1840 1844 1848 1852 1856 1860 1864 1868 1872 - 1876 1880 1884 1888 1892 1896 1900 1904 1908 1912 1916 1920 - 1924 1928 1932 1936 1940 1944 1948 1952 1956 1960 1964 1968 - 1972 1976 1980 1984 1988 1992 1996 2000 2004 2008 2012 2016 - 2020 2024 2028 2032 2036 2040 2044 2048 2052 2056 2060 2064 - 2068 2072 2076 2080 2084 2088 2092 2096 2100 2104 2108 2112 - 2116 2120 2124 2128 2132 2136 2140 2144 2148 2152 2156 2160 - 2164 2168 2172 2176 2180 2184 2188 2192 2196 2200 2204 2208 - 2212 2216 2220 2224 2228 2232 2236 2240 2244 2248 2252 2256 - 2260 2264 2268 2272 2276 2280 2284 2288 2292 2296 2300 2304 - 2308 2312 2316 2320 2324 2328 2332 2336 2340 2344 2348 2352 - 2356 2360 2364 2368 2372 2376 2380 2384 2388 2392 2396 2400 - 2404 2408 2412 2416 2420 2424 2428 2432 2436 2440 2444 2448 - 2452 2456 2460 2464 2468 2472 2476 2480 2484 2488 2492 2496 - 2500 2504 2508 2512 2516 2520 2524 2528 2532 2536 2540 2544 - 2548 2552 2556 2560 2564 2568 2572 2576 2580 2584 2588 2592 - 2596 2600 2604 2608 2612 2616 2620 2624 2628 2632 2636 2640 - 2644 2648 2652 2656 2660 2664 2668 2672 2676 2680 2684 2688 - 2692 2696 2700 2704 2708 2712 2716 2720 2724 2728 2732 2736 - 2740 2744 2748 2752 2756 2760 2764 2768 2772 2776 2780 2784 - 2788 2792 2796 2800 2804 2808 2812 2816 2820 2824 2828 2832 - 2836 2840 2844 2848 2852 2856 2860 2864 2868 2872 2876 2880 - 2884 2888 2892 2896 2900 2904 2908 2912 2916 2920 2924 2928 - 2932 2936 2940 2944 2948 2952 2956 2960 2964 2968 2972 2976 - 2980 2984 2988 2992 2996 3000 3004 3008 3012 3016 3020 3024 - 3028 3032 3036 3040 3044 3048 3052 3056 3060 3064 3068 3072 - 3076 3080 3084 3088 3092 3096 3100 3104 3108 3112 3116 3120 - 3124 3128 3132 3136 3140 3144 3148 3152 3156 3160 3164 3168 - 3172 3176 3180 3184 3188 3192 3196 3200 3204 3208 3212 3216 - 3220 3224 3228 3232 3236 3240 3244 3248 3252 3256 3260 3264 - 3268 3272 3276 3280 3284 3288 3292 3296 3300 3304 3308 3312 - 3316 3320 3324 3328 3332 3336 3340 3344 3348 3352 3356 3360 - 3364 3368 3372 3376 3380 3384 3388 3392 3396 3400 3404 3408 - 3412 3416 3420 3424 3428 3432 3436 3440 3444 3448 3452 3456 - 3460 3464 3468 3472 3476 3480 3484 3488 3492 3496 3500 3504 - 3508 3512 3516 3520 3524 3528 3532 3536 3540 3544 3548 3552 - 3556 3560 3564 3568 3572 3576 3580 3584 3588 3592 3596 3600 - 3604 3608 3612 3616 3620 3624 3628 3632 3636 3640 3644 3648 - 3652 3656 3660 3664 3668 3672 3676 3680 3684 3688 3692 3696 - 3700 3704 3708 3712 3716 3720 3724 3728 3732 3736 3740 3744 - 3748 3752 3756 3760 3764 3768 3772 3776 3780 3784 3788 3792 - 3796 3800 3804 3808 3812 3816 3820 3824 3828 3832 3836 3840 - 3844 3848 3852 3856 3860 3864 3868 3872 3876 3880 3884 3888 - 3892 3896 3900 3904 3908 3912 3916 3920 3924 3928 3932 3936 - 3940 3944 3948 3952 3956 3960 3964 3968 3972 3976 3980 3984 - 3988 3992 3996 4000 4004 4008 4012 4016 4020 4024 4028 4032 - 4036 4040 4044 4048 4052 4056 4060 4064 4068 4072 4076 4080 - 4084 4088 4092 4096 4100 4104 4108 4112 4116 4120 4124 4128 - 4132 4136 4140 4144 4148 4152 4156 4160 4164 4168 4172 4176 - 4180 4184 4188 4192 4196 4200 4204 4208 4212 4216 4220 4224 - 4228 4232 4236 4240 4244 4248 4252 4256 4260 4264 4268 4272 - 4276 4280 4284 4288 4292 4296 4300 4304 4308 4312 4316 4320 - 4324 4328 4332 4336 4340 4344 4348 4352 4356 4360 4364 4368 - 4372 4376 4380 4384 4388 4392 4396 4400 4404 4408 4412 4416 - 4420 4424 4428 4432 4436 4440 4444 4448 4452 4456 4460 4464 - 4468 4472 4476 4480 4484 4488 4492 4496 4500 4504 4508 4512 - 4516 4520 4524 4528 4532 4536 4540 4544 4548 4552 4556 4560 - 4564 4568 4572 4576 4580 4584 4588 4592 4596 4600 4604 4608 - 4612 4616 4620 4624 4628 4632 4636 4640 4644 4648 4652 4656 - 4660 4664 4668 4672 4676 4680 4684 4688 4692 4696 4700 4704 - 4708 4712 4716 4720 4724 4728 4732 4736 4740 4744 4748 4752 - 4756 4760 4764 4768 4772 4776 4780 4784 4788 4792 4796 4800 - 4804 4808 4812 4816 4820 4824 4828 4832 4836 4840 4844 4848 - 4852 4856 4860 4864 4868 4872 4876 4880 4884 4888 4892 4896 - 4900 4904 4908 4912 4916 4920 4924 4928 4932 4936 4940 4944 - 4948 4952 4956 4960 4964 4968 4972 4976 4980 4984 4988 4992 - 4996 5000 5004 5008 5012 5016 5020 5024 5028 5032 5036 5040 - 5044 5048 5052 5056 5060 5064 5068 5072 5076 5080 5084 5088 - 5092 5096 5100 5104 5108 5112 5116 5120 5124 5128 5132 5136 - 5140 5144 5148 5152 5156 5160 5164 5168 5172 5176 5180 5184 - 5188 5192 5196 5200 5204 5208 5212 5216 5220 5224 5228 5232 - 5236 5240 5244 5248 5252 5256 5260 5264 5268 5272 5276 5280 - 5284 5288 5292 5296 5300 5304 5308 5312 5316 5320 5324 5328 - 5332 5336 5340 5344 5348 5352 5356 5360 5364 5368 5372 5376 - 5380 5384 5388 5392 5396 5400 5404 5408 5412 5416 5420 5424 - 5428 5432 5436 5440 5444 5448 5452 5456 5460 5464 5468 5472 - 5476 5480 5484 5488 5492 5496 5500 5504 5508 5512 5516 5520 - 5524 5528 5532 5536 5540 5544 5548 5552 5556 5560 5564 5568 - 5572 5576 5580 5584 5588 5592 5596 5600 5604 5608 5612 5616 - 5620 5624 5628 5632 5636 5640 5644 5648 5652 5656 5660 5664 - 5668 5672 5676 5680 5684 5688 5692 5696 5700 5704 5708 5712 - 5716 5720 5724 5728 5732 5736 5740 5744 5748 5752 5756 5760 - 5764 5768 5772 5776 5780 5784 5788 5792 5796 5800 5804 5808 - 5812 5816 5820 5824 5828 5832 5836 5840 5844 5848 5852 5856 - 5860 5864 5868 5872 5876 5880 5884 5888 5892 5896 5900 5904 - 5908 5912 5916 5920 5924 5928 5932 5936 5940 5944 5948 5952 - 5956 5960 5964 5968 5972 5976 5980 5984 5988 5992 5996 6000 - 6004 6008 6012 6016 6020 6024 6028 6032 6036 6040 6044 6048 - 6052 6056 6060 6064 6068 6072 6076 6080 6084 6088 6092 6096 - 6100 6104 6108 6112 6116 6120 6124 6128 6132 6136 6140 6144 - 6148 6152 6156 6160 6164 6168 6172 6176 6180 6184 6188 6192 - 6196 6200 6204 6208 6212 6216 6220 6224 6228 6232 6236 6240 - 6244 6248 6252 6256 6260 6264 6268 6272 6276 6280 6284 6288 - 6292 6296 6300 6304 6308 6312 6316 6320 6324 6328 6332 6336 - 6340 6344 6348 6352 6356 6360 6364 6368 6372 6376 6380 6384 - 6388 6392 6396 6400 6404 6408 6412 6416 6420 6424 6428 6432 - 6436 6440 6444 6448 6452 6456 6460 6464 6468 6472 6476 6480 - 6484 6488 6492 6496 6500 6504 6508 6512 6516 6520 6524 6528 - 6532 6536 6540 6544 6548 6552 6556 6560 6564 6568 6572 6576 - 6580 6584 6588 6592 6596 6600 6604 6608 6612 6616 6620 6624 - 6628 6632 6636 6640 6644 6648 6652 6656 6660 6664 6668 6672 - 6676 6680 6684 6688 6692 6696 6700 6704 6708 6712 6716 6720 - 6724 6728 6732 6736 6740 6744 6748 6752 6756 6760 6764 6768 - 6772 6776 6780 6784 6788 6792 6796 6800 6804 6808 6812 6816 - 6820 6824 6828 6832 6836 6840 6844 6848 6852 6856 6860 6864 - 6868 6872 6876 6880 6884 6888 6892 6896 6900 6904 6908 6912 - 6916 6920 6924 6928 6932 6936 6940 6944 6948 6952 6956 6960 - 6964 6968 6972 6976 6980 6984 6988 6992 6996 7000 7004 7008 - 7012 7016 7020 7024 7028 7032 7036 7040 7044 7048 7052 7056 - 7060 7064 7068 7072 7076 7080 7084 7088 7092 7096 7100 7104 - 7108 7112 7116 7120 7124 7128 7132 7136 7140 7144 7148 7152 - 7156 7160 7164 7168 7172 7176 7180 7184 7188 7192 7196 7200 - 7204 7208 7212 7216 7220 7224 7228 7232 7236 7240 7244 7248 - 7252 7256 7260 7264 7268 7272 7276 7280 7284 7288 7292 7296 - 7300 7304 7308 7312 7316 7320 7324 7328 7332 7336 7340 7344 - 7348 7352 7356 7360 7364 7368 7372 7376 7380 7384 7388 7392 - 7396 7400 7404 7408 7412 7416 7420 7424 7428 7432 7436 7440 - 7444 7448 7452 7456 7460 7464 7468 7472 7476 7480 7484 7488 - 7492 7496 7500 7504 7508 7512 7516 7520 7524 7528 7532 7536 - 7540 7544 7548 7552 7556 7560 7564 7568 7572 7576 7580 7584 - 7588 7592 7596 7600 7604 7608 7612 7616 7620 7624 7628 7632 - 7636 7640 7644 7648 7652 7656 7660 7664 7668 7672 7676 7680 - 7684 7688 7692 7696 7700 7704 7708 7712 7716 7720 7724 7728 - 7732 7736 7740 7744 7748 7752 7756 7760 7764 7768 7772 7776 - 7780 7784 7788 7792 7796 7800 7804 7808 7812 7816 7820 7824 - 7828 7832 7836 7840 7844 7848 7852 7856 7860 7864 7868 7872 - 7876 7880 7884 7888 7892 7896 7900 7904 7908 7912 7916 7920 - 7924 7928 7932 7936 7940 7944 7948 7952 7956 7960 7964 7968 - 7972 7976 7980 7984 7988 7992 7996 8000 - - - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 9 9 9 9 - 9 9 9 9 9 9 9 9 - - - - - diff --git a/test/run-iterative-test.py b/test/run-test.py similarity index 78% rename from test/run-iterative-test.py rename to test/run-test.py index d52428d..82a0aa4 100755 --- a/test/run-iterative-test.py +++ b/test/run-test.py @@ -82,6 +82,23 @@ help="Name of the preCICE iteration file names to be compared (required)", required=True, ) +parser.add_argument( + "-s1", + "--solver-one", + type=str, + help="First solver", + required=True, +) +parser.add_argument( + "-s2", + "--solver-two", + type=str, + help="Second solver", + required=True, +) +parser.add_argument( + "-sc", "--skip-checks", help="If set, will skip checks", action="store_true" +) # parser.add_argument( # "--path-to-executables", # type=str, @@ -145,12 +162,12 @@ def diff_iteration_files(diff_file_name, file_names): # Start thread for Biot solver in background ff_proc, ff_output = run_solver( - "./test_ff_flow_over_square_2d", + "{}".format(args["solver_one"]), args["dumux_param_file"], args["precice_config_file"], ) pm_proc, pm_output = run_solver( - "./test_pm_flow_over_square_2d", + "{}".format(args["solver_two"]), args["dumux_param_file"], args["precice_config_file"], ) @@ -159,46 +176,53 @@ def diff_iteration_files(diff_file_name, file_names): pm_proc.wait() ff_proc.wait() -print("Comparing VTU files") +print("Files in current directory:") +for f in os.listdir(): + print(f" {f}") + return_code = 0 -for i in range(0, len(args["files"]) // 2): - print("\nFuzzy comparison...") - print( - "\n Compare: \n File 1: {}\n File 2: {}".format( - args["files"][i * 2], args["files"][i * 2 + 1] +if args["skip_checks"] is False: + + print("Comparing VTU files") + for i in range(0, len(args["files"]) // 2): + print("\nFuzzy comparison...") + + print( + "\n Compare: \n File 1: {}\n File 2: {}".format( + args["files"][i * 2], args["files"][i * 2 + 1] + ) ) - ) - result = compare_vtk( - args["files"][i * 2], - args["files"][(i * 2) + 1], - relative=args["relative"], - absolute=args["absolute"], - zeroValueThreshold=args["zeroThreshold"], - ) - if result: - return_code = 1 + result = compare_vtk( + args["files"][i * 2], + args["files"][(i * 2) + 1], + relative=args["relative"], + absolute=args["absolute"], + zeroValueThreshold=args["zeroThreshold"], + ) + if result: + return_code = 1 -print("Comparing preCICE iteration files") -if ( - diff_iteration_files( - "{case_name}-diff.txt".format(case_name=args["case_name"]), - args["precice_iteration_files"], - ) - != 0 -): - return_code = 1 + print("Comparing preCICE iteration files") + if ( + diff_iteration_files( + "{case_name}-diff.txt".format(case_name=args["case_name"]), + args["precice_iteration_files"], + ) + != 0 + ): + return_code = 1 print("Moving relevant files") if return_code != 0: try: shutil.move( - "fvca-iterative-ff.log", + "*-ff.log", "{case_name}_ff.log".format(case_name=args["case_name"]), ) shutil.move( - "fvca-iterative-pm.log", + "*-pm.log", "{case_name}_pm.log".format(case_name=args["case_name"]), ) except: