diff --git a/.github/ISSUE_TEMPLATE/new_pack_proposal.md b/.github/ISSUE_TEMPLATE/new_pack_proposal.md new file mode 100644 index 0000000..3d4328d --- /dev/null +++ b/.github/ISSUE_TEMPLATE/new_pack_proposal.md @@ -0,0 +1,37 @@ +--- +name: New Pack Proposal +about: Interested in contributing a new pack? Follow the instructions here! +title: "feat: add `` to `diffpy.cmi`" +labels: "" +assignees: "" +--- + +## Pack description + + + +## Pack submission checklist + +- [ ] Fork and clone this repository and cd to the top level by running `cd diffpy.cmi`. +- [ ] Create a requirements file by running `touch requirements/packs/.txt`. List all dependencies for your pack. +- [ ] (OPTIONAL) Create a directory to place your examples, if applicable, by running `mkdir docs/examples//`. +- [ ] (OPTIONAL) Copy your example scripts and data under the directory you just made. If you have multiple examples, house them under their own separate directory (i.e. `...//example1` and `...//example2`). +- [ ] List your pack and its dependencies under `docs/source/available-packs.rst` using the same format as the other packs. In this same file, add a description of your pack (1-2 sentences is recommended). +- [ ] Give yourself credit by listing your name and contributors to the pack you've created! + +## Local testing + +- [ ] Test to make sure the addition of your new pack worked by first creating a new environment and installing from source. Do this by running the following commands: + +``` +conda create -n testcmi-env diffpy.cmi +conda activate testcmi-env +pip install -e . +cmi install docs tests +``` + +- [ ] Run `cmi info` to see if your pack and any examples you may have added are listed there. +- [ ] Build and open the docs with the command `cd docs && make html && open build/html/index.html`. Navigate around the docs to make sure everything looks okay. +- [ ] Lastly, install your pack with `cmi install `. + +When the above items are complete, make a pull request (PR) with the changes, referencing this issue in the PR (i.e. "closes #issue-number"). diff --git a/.github/ISSUE_TEMPLATE/new_profile_proposal.md b/.github/ISSUE_TEMPLATE/new_profile_proposal.md new file mode 100644 index 0000000..a6e879d --- /dev/null +++ b/.github/ISSUE_TEMPLATE/new_profile_proposal.md @@ -0,0 +1,31 @@ +--- +name: New Profile Proposal +about: Interested in contributing a new profile? Follow the instructions here! +title: "feat: add `` to `diffpy.cmi`" +labels: "" +assignees: "" +--- + +## Profile submission checklist + +- [ ] Fork and clone this repository and cd to the top level by running `cd diffpy.cmi`. +- [ ] Create a requirements file by running `touch requirements/profiles/.yml`. List all packs used in this profile under the header `packs:` in a bulleted list. All additional packages used (if any) should be listed under `extras:` in a similar fashion (see [this file](https://github.com/diffpy/diffpy.cmi/blob/main/requirements/profiles/all.yml) for reference). If no additional packages are required, add the `extras:` header but leave the entries empty. +- [ ] List your profile and its dependencies under `docs/source/available-profiles.rst` using the same format as the other profiles. In this same file, add a description of your profile (1-2 sentences is recommended). +- [ ] Give yourself credit by listing your name and contributors to the profile you've created! + +## Local testing + +- [ ] Test to make sure the addition of your new profile worked by first creating a new environment and installing from source. Do this by running the following commands: + +``` +conda create -n testcmi-env diffpy.cmi +conda activate testcmi-env +pip install -e . +cmi install docs tests +``` + +- [ ] Run `cmi info` to see if your profile is listed there. +- [ ] Build and open the docs with the command `cd docs && make html && open build/html/index.html`. Navigate around the docs to make sure everything looks okay. +- [ ] Lastly, install your profile with `cmi install `. + +When the above items are complete, make a pull request (PR) with the changes, referencing this issue in the PR (i.e. "closes #issue-number"). diff --git a/docs/source/api/diffpy.cmi.rst b/docs/source/api/diffpy.cmi.rst index 3f3b7c1..9365832 100644 --- a/docs/source/api/diffpy.cmi.rst +++ b/docs/source/api/diffpy.cmi.rst @@ -1,18 +1,60 @@ :tocdepth: -1 -|title| -======= +diffpy.cmi package +================== -.. |title| replace:: diffpy.cmi Contents +.. automodule:: diffpy.cmi + :members: + :undoc-members: + :show-inheritance: -``diffpy.cmi`` includes Python and C++ libraries developed by the DiffPy team as well as external libraries necessary for functionality. +Submodules +---------- -Libraries developed by the DiffPy team --------------------------------------- +diffpy.cmi.log module +^^^^^^^^^^^^^^^^^^^^^ -.. include:: ../snippets/diffpy_libraries.rst +.. automodule:: diffpy.cmi.log + :members: + :undoc-members: + :show-inheritance: -External Libraries ------------------- +diffpy.cmi.conda module +^^^^^^^^^^^^^^^^^^^^^^^ -.. include:: ../snippets/external_libraries.rst +.. automodule:: diffpy.cmi.conda + :members: + :undoc-members: + :show-inheritance: + +diffpy.cmi.packsmanager module +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. automodule:: diffpy.cmi.packsmanager + :members: + :undoc-members: + :show-inheritance: + +diffpy.cmi.installer module +^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. automodule:: diffpy.cmi.installer + :members: + :undoc-members: + :show-inheritance: + +diffpy.cmi.cli module +^^^^^^^^^^^^^^^^^^^^^ + +.. automodule:: diffpy.cmi.cli + :members: + :undoc-members: + :show-inheritance: + +diffpy.cmi.profilesmanager module +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. automodule:: diffpy.cmi.profilesmanager + :members: + :undoc-members: + :show-inheritance: diff --git a/docs/source/available-packs.rst b/docs/source/available-packs.rst new file mode 100644 index 0000000..4092c2d --- /dev/null +++ b/docs/source/available-packs.rst @@ -0,0 +1,71 @@ +Packs +----- + +This page lists the dependencies required by each ``diffpy.cmi`` pack. + + +==== +core +==== + +The ``core`` pack provides the essential building blocks for creating and running regression workflows in ``diffpy.cmi``. + +This pack was created by members of the Billinge Group and the DiffPy community. + +- ``packaging`` +- ``PyYAML`` +- ``diffpy.utils`` +- ``diffpy.srfit`` +- ``diffpy.structure`` + +=== +pdf +=== + +The ``pdf`` pack is designed to handle pair distribution function (PDF) modeling and analysis. + +This pack was created by members of the Billinge Group and the DiffPy community. + +- ``diffpy.srreal`` +- ``pyobjcryst`` + +==== +docs +==== + +The ``docs`` pack contains the dependencies required to build the documentation for ``diffpy.cmi``. + +- ``sphinx`` +- ``sphinx_rtd_theme`` +- ``sphinx-copybutton`` +- ``doctr`` +- ``m2r`` + +======== +plotting +======== + +The ``plotting`` pack provides tools for plotting and visualizing data. + +- ``ipywidgets`` +- ``matplotlib`` +- ``ipympl`` +- ``bg-mpl-stylesheets`` +- ``py3dmol>=2.0.1`` + + +===== +tests +===== + +The ``tests`` pack contains the dependencies required for testing ``diffpy.cmi``. + +- ``flake8`` +- ``pytest`` +- ``codecov`` +- ``coverage`` +- ``pytest-cov`` +- ``pytest-env`` +- ``pytest-mock`` +- ``freezegun`` +- ``DeepDiff`` diff --git a/docs/source/available-profiles.rst b/docs/source/available-profiles.rst new file mode 100644 index 0000000..081c0a4 --- /dev/null +++ b/docs/source/available-profiles.rst @@ -0,0 +1,26 @@ +Profiles +-------- + +This page lists the packs and extra dependencies required by each ``diffpy.cmi`` profile. + +======== +pdf-plus +======== + +A comprehensive pair distribution function profile that includes plotting and Jupyter Notebook support. + +This pack was created by members of the Billinge Group and the DiffPy community. + +packs: ``core``, ``pdf``, ``plotting`` + +extras: ``ipykernel`` + +====== +_tests +====== + +Testing and development tools for ``diffpy.cmi``. + +packs: ``core``, ``pdf``, ``tests`` + +extras: ``_pytest.sh tar_url.txt``, ``_pytest.bat tar_url.txt`` diff --git a/docs/source/cli-commands.rst b/docs/source/cli-commands.rst new file mode 100644 index 0000000..f5157e2 --- /dev/null +++ b/docs/source/cli-commands.rst @@ -0,0 +1,124 @@ +:tocdepth: -1 + +.. index:: cli-commands + +.. _cli-commands: + +CMI Command-Line Interface (CLI) +-------------------------------- + +The ``cmi`` command provides access to ``diffpy.cmi``. +It allows users to explore, install, and run **packs**, **profiles**, and **example workflows**. + +============ +Getting Help +============ + +The ``-h`` flag is available for **all** cmi commands and subcommands. +It's highly recommended to use it wherever necessary. + +To display help for the main CLI, type + +.. code-block:: bash + + cmi -h + cmi --help + +Display help for a specific subcommand with, + +.. code-block:: bash + + cmi -h + +Open the full online manual in a web browser by typing, + +.. code-block:: bash + + cmi --manual + +==================== +``cmi info`` command +==================== + +To print information about available and installed packs, profiles, and examples, type, + +.. code-block:: bash + + cmi info + +To print information about packs, profiles, or examples, type + +.. code-block:: bash + + cmi info packs + cmi info profiles + cmi info examples + +======================= +``cmi install`` command +======================= + +To install packs or profiles into your environment, type + +.. code-block:: bash + + cmi install + cmi install + +Installation of multiple packs or profiles is also supported, e.g., + +.. code-block:: bash + + cmi install + +==================== +``cmi copy`` command +==================== + +To view all examples available to copy, type + +.. code-block:: bash + + cmi info examples + +To copy an example or list of examples to cwd, type + +.. code-block:: bash + + cmi copy + cmi copy + +To copy all examples from a pack or list of packs to cwd, type + +.. code-block:: bash + + cmi copy + cmi copy + +To copy all examples to cwd, type + +.. code-block:: bash + + cmi copy all + +To copy an example to a target directory, type + +.. code-block:: bash + + cmi copy -t + +To force overwrite a preexisting example directory, type + +.. code-block:: bash + + cmi copy -f + +==================== +``cmi env`` command +==================== + +To show basic information about your current conda environment, type + +.. code-block:: bash + + cmi env diff --git a/docs/source/conf.py b/docs/source/conf.py index bfa13cc..7d9b3a0 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -148,6 +148,7 @@ # html_theme_options = { "navigation_with_keys": "true", + "logo_only": True, } # Add any paths that contain custom themes here, relative to this directory. diff --git a/docs/source/data/Ni.cif b/docs/source/data/Ni.cif deleted file mode 100644 index cfaa968..0000000 --- a/docs/source/data/Ni.cif +++ /dev/null @@ -1,216 +0,0 @@ -data_New_Crystal -_audit_creation_method 'generated by CrystalMaker 9.0.3' -_cell_length_a 3.5200(0) -_cell_length_b 3.5200(0) -_cell_length_c 3.5200(0) -_cell_angle_alpha 90.0000(0) -_cell_angle_beta 90.0000(0) -_cell_angle_gamma 90.0000(0) - -_symmetry_space_group_name_H-M 'F m3m' -_symmetry_Int_Tables_number 225 -_symmetry_cell_setting cubic -loop_ -_symmetry_equiv_pos_as_xyz -'+x,+y,+z' -'+x,1/2+y,1/2+z' -'1/2+x,1/2+y,+z' -'1/2+x,+y,1/2+z' -'+z,+x,+y' -'+z,1/2+x,1/2+y' -'1/2+z,1/2+x,+y' -'1/2+z,+x,1/2+y' -'+y,+z,+x' -'+y,1/2+z,1/2+x' -'1/2+y,1/2+z,+x' -'1/2+y,+z,1/2+x' -'+x,+y,-z' -'+x,1/2+y,1/2-z' -'1/2+x,1/2+y,-z' -'1/2+x,+y,1/2-z' -'+z,+x,-y' -'+z,1/2+x,1/2-y' -'1/2+z,1/2+x,-y' -'1/2+z,+x,1/2-y' -'+y,+z,-x' -'+y,1/2+z,1/2-x' -'1/2+y,1/2+z,-x' -'1/2+y,+z,1/2-x' -'-x,+y,+z' -'-x,1/2+y,1/2+z' -'1/2-x,1/2+y,+z' -'1/2-x,+y,1/2+z' -'-z,+x,+y' -'-z,1/2+x,1/2+y' -'1/2-z,1/2+x,+y' -'1/2-z,+x,1/2+y' -'-y,+z,+x' -'-y,1/2+z,1/2+x' -'1/2-y,1/2+z,+x' -'1/2-y,+z,1/2+x' -'-x,+y,-z' -'-x,1/2+y,1/2-z' -'1/2-x,1/2+y,-z' -'1/2-x,+y,1/2-z' -'-z,+x,-y' -'-z,1/2+x,1/2-y' -'1/2-z,1/2+x,-y' -'1/2-z,+x,1/2-y' -'-y,+z,-x' -'-y,1/2+z,1/2-x' -'1/2-y,1/2+z,-x' -'1/2-y,+z,1/2-x' -'+y,+x,+z' -'+y,1/2+x,1/2+z' -'1/2+y,1/2+x,+z' -'1/2+y,+x,1/2+z' -'+x,+z,+y' -'+x,1/2+z,1/2+y' -'1/2+x,1/2+z,+y' -'1/2+x,+z,1/2+y' -'+z,+y,+x' -'+z,1/2+y,1/2+x' -'1/2+z,1/2+y,+x' -'1/2+z,+y,1/2+x' -'+y,+x,-z' -'+y,1/2+x,1/2-z' -'1/2+y,1/2+x,-z' -'1/2+y,+x,1/2-z' -'+x,+z,-y' -'+x,1/2+z,1/2-y' -'1/2+x,1/2+z,-y' -'1/2+x,+z,1/2-y' -'+z,+y,-x' -'+z,1/2+y,1/2-x' -'1/2+z,1/2+y,-x' -'1/2+z,+y,1/2-x' -'+y,-x,+z' -'+y,1/2-x,1/2+z' -'1/2+y,1/2-x,+z' -'1/2+y,-x,1/2+z' -'+x,-z,+y' -'+x,1/2-z,1/2+y' -'1/2+x,1/2-z,+y' -'1/2+x,-z,1/2+y' -'+z,-y,+x' -'+z,1/2-y,1/2+x' -'1/2+z,1/2-y,+x' -'1/2+z,-y,1/2+x' -'+y,-x,-z' -'+y,1/2-x,1/2-z' -'1/2+y,1/2-x,-z' -'1/2+y,-x,1/2-z' -'+x,-z,-y' -'+x,1/2-z,1/2-y' -'1/2+x,1/2-z,-y' -'1/2+x,-z,1/2-y' -'+z,-y,-x' -'+z,1/2-y,1/2-x' -'1/2+z,1/2-y,-x' -'1/2+z,-y,1/2-x' -'-x,-y,-z' -'-x,1/2-y,1/2-z' -'1/2-x,1/2-y,-z' -'1/2-x,-y,1/2-z' -'-z,-x,-y' -'-z,1/2-x,1/2-y' -'1/2-z,1/2-x,-y' -'1/2-z,-x,1/2-y' -'-y,-z,-x' -'-y,1/2-z,1/2-x' -'1/2-y,1/2-z,-x' -'1/2-y,-z,1/2-x' -'-x,-y,+z' -'-x,1/2-y,1/2+z' -'1/2-x,1/2-y,+z' -'1/2-x,-y,1/2+z' -'-z,-x,+y' -'-z,1/2-x,1/2+y' -'1/2-z,1/2-x,+y' -'1/2-z,-x,1/2+y' -'-y,-z,+x' -'-y,1/2-z,1/2+x' -'1/2-y,1/2-z,+x' -'1/2-y,-z,1/2+x' -'+x,-y,-z' -'+x,1/2-y,1/2-z' -'1/2+x,1/2-y,-z' -'1/2+x,-y,1/2-z' -'+z,-x,-y' -'+z,1/2-x,1/2-y' -'1/2+z,1/2-x,-y' -'1/2+z,-x,1/2-y' -'+y,-z,-x' -'+y,1/2-z,1/2-x' -'1/2+y,1/2-z,-x' -'1/2+y,-z,1/2-x' -'+x,-y,+z' -'+x,1/2-y,1/2+z' -'1/2+x,1/2-y,+z' -'1/2+x,-y,1/2+z' -'+z,-x,+y' -'+z,1/2-x,1/2+y' -'1/2+z,1/2-x,+y' -'1/2+z,-x,1/2+y' -'+y,-z,+x' -'+y,1/2-z,1/2+x' -'1/2+y,1/2-z,+x' -'1/2+y,-z,1/2+x' -'-y,-x,-z' -'-y,1/2-x,1/2-z' -'1/2-y,1/2-x,-z' -'1/2-y,-x,1/2-z' -'-x,-z,-y' -'-x,1/2-z,1/2-y' -'1/2-x,1/2-z,-y' -'1/2-x,-z,1/2-y' -'-z,-y,-x' -'-z,1/2-y,1/2-x' -'1/2-z,1/2-y,-x' -'1/2-z,-y,1/2-x' -'-y,-x,+z' -'-y,1/2-x,1/2+z' -'1/2-y,1/2-x,+z' -'1/2-y,-x,1/2+z' -'-x,-z,+y' -'-x,1/2-z,1/2+y' -'1/2-x,1/2-z,+y' -'1/2-x,-z,1/2+y' -'-z,-y,+x' -'-z,1/2-y,1/2+x' -'1/2-z,1/2-y,+x' -'1/2-z,-y,1/2+x' -'-y,+x,-z' -'-y,1/2+x,1/2-z' -'1/2-y,1/2+x,-z' -'1/2-y,+x,1/2-z' -'-x,+z,-y' -'-x,1/2+z,1/2-y' -'1/2-x,1/2+z,-y' -'1/2-x,+z,1/2-y' -'-z,+y,-x' -'-z,1/2+y,1/2-x' -'1/2-z,1/2+y,-x' -'1/2-z,+y,1/2-x' -'-y,+x,+z' -'-y,1/2+x,1/2+z' -'1/2-y,1/2+x,+z' -'1/2-y,+x,1/2+z' -'-x,+z,+y' -'-x,1/2+z,1/2+y' -'1/2-x,1/2+z,+y' -'1/2-x,+z,1/2+y' -'-z,+y,+x' -'-z,1/2+y,1/2+x' -'1/2-z,1/2+y,+x' -'1/2-z,+y,1/2+x' - -loop_ -_atom_site_label -_atom_site_type_symbol -_atom_site_fract_x -_atom_site_fract_y -_atom_site_fract_z -_atom_site_B_iso_or_equiv -_atom_site_occupancy - Ni1 Ni 0.0000 0.0000 0.0000 0.1 1.0 diff --git a/docs/source/data/Ni.gr b/docs/source/data/Ni.gr deleted file mode 100644 index a1565fc..0000000 --- a/docs/source/data/Ni.gr +++ /dev/null @@ -1,6022 +0,0 @@ -# xPDFsuite Configuration # -[PDF] -wavelength = 0.1836 -dataformat = Qnm -inputfile = Ni.chi -backgroundfile = -mode = xray -bgscale = 1.0 -composition = Ni -outputtype = gr -qmaxinst = 25.0 -qmin = 0.5 -qmax = 25.0 -rmax = 60.0 -rmin = 0.0 -rstep = 0.01 -rpoly = 0.9 - -#### start data -#S 1 -#L r($\AA$) G($\AA^{-2}$) -0 0 -0.01 -0.000497956 -0.02 -0.000963367 -0.03 -0.00136826 -0.04 -0.0016883 -0.05 -0.00190424 -0.06 -0.00200301 -0.07 -0.0019785 -0.08 -0.00183191 -0.09 -0.00157013 -0.1 -0.00120451 -0.11 -0.000765717 -0.12 -0.000279977 -0.13 0.000223969 -0.14 0.000716587 -0.15 0.00116932 -0.16 0.00155625 -0.17 0.00185559 -0.18 0.00204722 -0.19 0.00211684 -0.2 0.00206813 -0.21 0.00190414 -0.22 0.00163274 -0.23 0.00126516 -0.24 0.000814111 -0.25 0.000291589 -0.26 -0.00029348 -0.27 -0.000940567 -0.28 -0.00165528 -0.29 -0.00245064 -0.3 -0.00335283 -0.31 -0.00439854 -0.32 -0.00563399 -0.33 -0.00711292 -0.34 -0.00889334 -0.35 -0.0110333 -0.36 -0.0136142 -0.37 -0.0166653 -0.38 -0.0201915 -0.39 -0.0241829 -0.4 -0.0285954 -0.41 -0.0333445 -0.42 -0.0383002 -0.43 -0.0432836 -0.44 -0.0480648 -0.45 -0.0522996 -0.46 -0.0556565 -0.47 -0.0577668 -0.48 -0.0582263 -0.49 -0.0566146 -0.5 -0.0525102 -0.51 -0.0455077 -0.52 -0.0352366 -0.53 -0.0213724 -0.54 -0.00332425 -0.55 0.0187032 -0.56 0.0447171 -0.57 0.0745951 -0.58 0.108075 -0.59 0.14475 -0.6 0.184067 -0.61 0.225331 -0.62 0.26772 -0.63 0.310199 -0.64 0.35165 -0.65 0.390971 -0.66 0.427043 -0.67 0.458757 -0.68 0.485059 -0.69 0.504986 -0.7 0.517701 -0.71 0.522245 -0.72 0.517905 -0.73 0.504938 -0.74 0.483378 -0.75 0.453504 -0.76 0.415845 -0.77 0.371166 -0.78 0.320449 -0.79 0.264868 -0.8 0.205652 -0.81 0.144454 -0.82 0.0829324 -0.83 0.0226016 -0.84 -0.0350753 -0.85 -0.088739 -0.86 -0.137181 -0.87 -0.17939 -0.88 -0.214582 -0.89 -0.241725 -0.9 -0.260882 -0.91 -0.272364 -0.92 -0.276555 -0.93 -0.274102 -0.94 -0.265883 -0.95 -0.252975 -0.96 -0.236603 -0.97 -0.218096 -0.98 -0.198877 -0.99 -0.180474 -1 -0.164164 -1.01 -0.151087 -1.02 -0.142204 -1.03 -0.138263 -1.04 -0.139767 -1.05 -0.14696 -1.06 -0.159844 -1.07 -0.178527 -1.08 -0.20193 -1.09 -0.229259 -1.1 -0.259548 -1.11 -0.291708 -1.12 -0.324575 -1.13 -0.356963 -1.14 -0.38772 -1.15 -0.415706 -1.16 -0.43972 -1.17 -0.459257 -1.18 -0.473822 -1.19 -0.483157 -1.2 -0.48725 -1.21 -0.486335 -1.22 -0.480876 -1.23 -0.471549 -1.24 -0.459135 -1.25 -0.444714 -1.26 -0.429539 -1.27 -0.41473 -1.28 -0.401381 -1.29 -0.39051 -1.3 -0.383012 -1.31 -0.37962 -1.32 -0.380871 -1.33 -0.387346 -1.34 -0.399048 -1.35 -0.415568 -1.36 -0.436475 -1.37 -0.461135 -1.38 -0.48874 -1.39 -0.518352 -1.4 -0.548938 -1.41 -0.579429 -1.42 -0.608612 -1.43 -0.635447 -1.44 -0.6591 -1.45 -0.678862 -1.46 -0.694217 -1.47 -0.70486 -1.48 -0.710714 -1.49 -0.711934 -1.5 -0.708894 -1.51 -0.701933 -1.52 -0.69217 -1.53 -0.680561 -1.54 -0.668111 -1.55 -0.655862 -1.56 -0.644845 -1.57 -0.636023 -1.58 -0.63025 -1.59 -0.628257 -1.6 -0.630918 -1.61 -0.638149 -1.62 -0.649961 -1.63 -0.666128 -1.64 -0.686201 -1.65 -0.70952 -1.66 -0.735253 -1.67 -0.762427 -1.68 -0.789962 -1.69 -0.816601 -1.7 -0.841254 -1.71 -0.862927 -1.72 -0.880757 -1.73 -0.894063 -1.74 -0.902377 -1.75 -0.905474 -1.76 -0.903389 -1.77 -0.896252 -1.78 -0.884647 -1.79 -0.869669 -1.8 -0.852339 -1.81 -0.833825 -1.82 -0.815378 -1.83 -0.798279 -1.84 -0.783771 -1.85 -0.772998 -1.86 -0.767245 -1.87 -0.767258 -1.88 -0.773295 -1.89 -0.785498 -1.9 -0.80369 -1.91 -0.827379 -1.92 -0.85577 -1.93 -0.887798 -1.94 -0.92217 -1.95 -0.957378 -1.96 -0.991667 -1.97 -1.02346 -1.98 -1.05128 -1.99 -1.07382 -2 -1.09002 -2.01 -1.09912 -2.02 -1.10076 -2.03 -1.09493 -2.04 -1.08157 -2.05 -1.06223 -2.06 -1.03829 -2.07 -1.01142 -2.08 -0.983522 -2.09 -0.956668 -2.1 -0.932953 -2.11 -0.914387 -2.12 -0.902839 -2.13 -0.900459 -2.14 -0.90747 -2.15 -0.924067 -2.16 -0.949727 -2.17 -0.983142 -2.18 -1.02218 -2.19 -1.06388 -2.2 -1.1045 -2.21 -1.13928 -2.22 -1.16208 -2.23 -1.16767 -2.24 -1.15018 -2.25 -1.1037 -2.26 -1.02251 -2.27 -0.901327 -2.28 -0.735538 -2.29 -0.521425 -2.3 -0.254245 -2.31 0.0678304 -2.32 0.441659 -2.33 0.865151 -2.34 1.3346 -2.35 1.84467 -2.36 2.38849 -2.37 2.95777 -2.38 3.54294 -2.39 4.13307 -2.4 4.71536 -2.41 5.27782 -2.42 5.80862 -2.43 6.2962 -2.44 6.7297 -2.45 7.09923 -2.46 7.3962 -2.47 7.61359 -2.48 7.73974 -2.49 7.77584 -2.5 7.72285 -2.51 7.58212 -2.52 7.35706 -2.53 7.05305 -2.54 6.6772 -2.55 6.23821 -2.56 5.74602 -2.57 5.20886 -2.58 4.6428 -2.59 4.05984 -2.6 3.47163 -2.61 2.88933 -2.62 2.3233 -2.63 1.78283 -2.64 1.27592 -2.65 0.809631 -2.66 0.392363 -2.67 0.0237537 -2.68 -0.29486 -2.69 -0.563678 -2.7 -0.784307 -2.71 -0.959595 -2.72 -1.09342 -2.73 -1.19049 -2.74 -1.25534 -2.75 -1.29322 -2.76 -1.31176 -2.77 -1.31638 -2.78 -1.31211 -2.79 -1.30343 -2.8 -1.29412 -2.81 -1.28723 -2.82 -1.28498 -2.83 -1.28908 -2.84 -1.30022 -2.85 -1.3179 -2.86 -1.34136 -2.87 -1.36938 -2.88 -1.40043 -2.89 -1.43278 -2.9 -1.46466 -2.91 -1.4944 -2.92 -1.52019 -2.93 -1.54081 -2.94 -1.55557 -2.95 -1.56407 -2.96 -1.56627 -2.97 -1.56254 -2.98 -1.55357 -2.99 -1.54033 -3 -1.52403 -3.01 -1.50594 -3.02 -1.4877 -3.03 -1.47064 -3.04 -1.45598 -3.05 -1.44472 -3.06 -1.43765 -3.07 -1.43527 -3.08 -1.43781 -3.09 -1.44519 -3.1 -1.45745 -3.11 -1.4735 -3.12 -1.49254 -3.13 -1.51359 -3.14 -1.53561 -3.15 -1.55752 -3.16 -1.57826 -3.17 -1.59681 -3.18 -1.61222 -3.19 -1.62335 -3.2 -1.62982 -3.21 -1.63112 -3.22 -1.62685 -3.23 -1.6167 -3.24 -1.60044 -3.25 -1.57788 -3.26 -1.54884 -3.27 -1.5129 -3.28 -1.46959 -3.29 -1.41901 -3.3 -1.36084 -3.31 -1.2947 -3.32 -1.22019 -3.33 -1.13694 -3.34 -1.04463 -3.35 -0.943077 -3.36 -0.831813 -3.37 -0.711066 -3.38 -0.581781 -3.39 -0.444787 -3.4 -0.301259 -3.41 -0.152727 -3.42 -0.00107986 -3.43 0.151461 -3.44 0.302374 -3.45 0.448447 -3.46 0.586549 -3.47 0.713817 -3.48 0.82728 -3.49 0.924118 -3.5 1.00176 -3.51 1.05797 -3.52 1.09097 -3.53 1.09949 -3.54 1.08087 -3.55 1.03668 -3.56 0.967993 -3.57 0.876091 -3.58 0.762847 -3.59 0.630637 -3.6 0.482269 -3.61 0.320884 -3.62 0.149845 -3.63 -0.0276061 -3.64 -0.207184 -3.65 -0.385584 -3.66 -0.559751 -3.67 -0.726966 -3.68 -0.884918 -3.69 -1.03175 -3.7 -1.16611 -3.71 -1.28687 -3.72 -1.39285 -3.73 -1.48521 -3.74 -1.56449 -3.75 -1.63152 -3.76 -1.68739 -3.77 -1.73335 -3.78 -1.77075 -3.79 -1.80094 -3.8 -1.82507 -3.81 -1.84436 -3.82 -1.8602 -3.83 -1.87344 -3.84 -1.8848 -3.85 -1.8948 -3.86 -1.90384 -3.87 -1.91217 -3.88 -1.91994 -3.89 -1.92722 -3.9 -1.93406 -3.91 -1.94049 -3.92 -1.94652 -3.93 -1.95212 -3.94 -1.95726 -3.95 -1.96182 -3.96 -1.96559 -3.97 -1.96822 -3.98 -1.96898 -3.99 -1.96698 -4 -1.96105 -4.01 -1.94962 -4.02 -1.93071 -4.03 -1.90192 -4.04 -1.8605 -4.05 -1.80332 -4.06 -1.72695 -4.07 -1.62567 -4.08 -1.49698 -4.09 -1.3376 -4.1 -1.14419 -4.11 -0.913878 -4.12 -0.644398 -4.13 -0.334272 -4.14 0.0170227 -4.15 0.409033 -4.16 0.84306 -4.17 1.31213 -4.18 1.81158 -4.19 2.33546 -4.2 2.87661 -4.21 3.42679 -4.22 3.97685 -4.23 4.51697 -4.24 5.03626 -4.25 5.52152 -4.26 5.96415 -4.27 6.35448 -4.28 6.68367 -4.29 6.94404 -4.3 7.12923 -4.31 7.23451 -4.32 7.25691 -4.33 7.19244 -4.34 7.04032 -4.35 6.80856 -4.36 6.50215 -4.37 6.1277 -4.38 5.69331 -4.39 5.20825 -4.4 4.68272 -4.41 4.12752 -4.42 3.55339 -4.43 2.97281 -4.44 2.39701 -4.45 1.83577 -4.46 1.29786 -4.47 0.790855 -4.48 0.320938 -4.49 -0.107167 -4.5 -0.49027 -4.51 -0.823608 -4.52 -1.10901 -4.53 -1.34915 -4.54 -1.54662 -4.55 -1.70496 -4.56 -1.82845 -4.57 -1.92188 -4.58 -1.9903 -4.59 -2.03879 -4.6 -2.07139 -4.61 -2.094 -4.62 -2.11059 -4.63 -2.12426 -4.64 -2.13733 -4.65 -2.15126 -4.66 -2.16672 -4.67 -2.18352 -4.68 -2.20078 -4.69 -2.21664 -4.7 -2.22893 -4.71 -2.23511 -4.72 -2.23247 -4.73 -2.21825 -4.74 -2.18978 -4.75 -2.1446 -4.76 -2.08066 -4.77 -1.99587 -4.78 -1.88805 -4.79 -1.75834 -4.8 -1.6071 -4.81 -1.43531 -4.82 -1.24461 -4.83 -1.03725 -4.84 -0.816019 -4.85 -0.584182 -4.86 -0.345306 -4.87 -0.103802 -4.88 0.135774 -4.89 0.369149 -4.9 0.592084 -4.91 0.800467 -4.92 0.990416 -4.93 1.15836 -4.94 1.30111 -4.95 1.41438 -4.96 1.49614 -4.97 1.54603 -4.98 1.56316 -4.99 1.54728 -5 1.49877 -5.01 1.4186 -5.02 1.30836 -5.03 1.17018 -5.04 1.00516 -5.05 0.817851 -5.06 0.612352 -5.07 0.392403 -5.08 0.161907 -5.09 -0.0751693 -5.1 -0.314891 -5.11 -0.55345 -5.12 -0.787256 -5.13 -1.01209 -5.14 -1.22546 -5.15 -1.42504 -5.16 -1.60891 -5.17 -1.77564 -5.18 -1.92426 -5.19 -2.05429 -5.2 -2.16563 -5.21 -2.25842 -5.22 -2.33191 -5.23 -2.38843 -5.24 -2.42882 -5.25 -2.45391 -5.26 -2.4644 -5.27 -2.46081 -5.28 -2.44338 -5.29 -2.41204 -5.3 -2.36603 -5.31 -2.30376 -5.32 -2.22504 -5.33 -2.12845 -5.34 -2.01235 -5.35 -1.87503 -5.36 -1.7148 -5.37 -1.53013 -5.38 -1.31981 -5.39 -1.08201 -5.4 -0.816202 -5.41 -0.524455 -5.42 -0.208237 -5.43 0.130115 -5.44 0.487367 -5.45 0.859392 -5.46 1.24122 -5.47 1.62712 -5.48 2.01021 -5.49 2.38281 -5.5 2.73786 -5.51 3.06813 -5.52 3.36656 -5.53 3.62652 -5.54 3.84199 -5.55 4.00778 -5.56 4.11972 -5.57 4.17064 -5.58 4.16161 -5.59 4.09378 -5.6 3.96842 -5.61 3.78811 -5.62 3.5567 -5.63 3.27914 -5.64 2.96132 -5.65 2.60992 -5.66 2.23055 -5.67 1.8335 -5.68 1.42656 -5.69 1.01712 -5.7 0.612208 -5.71 0.218242 -5.72 -0.159087 -5.73 -0.514944 -5.74 -0.845144 -5.75 -1.14451 -5.76 -1.41345 -5.77 -1.65113 -5.78 -1.85756 -5.79 -2.03344 -5.8 -2.18011 -5.81 -2.29933 -5.82 -2.3932 -5.83 -2.46343 -5.84 -2.51171 -5.85 -2.54176 -5.86 -2.55556 -5.87 -2.55487 -5.88 -2.54114 -5.89 -2.51554 -5.9 -2.47897 -5.91 -2.43207 -5.92 -2.37493 -5.93 -2.30788 -5.94 -2.23175 -5.95 -2.14698 -5.96 -2.05413 -5.97 -1.95398 -5.98 -1.84756 -5.99 -1.73621 -6 -1.62154 -6.01 -1.5055 -6.02 -1.39056 -6.03 -1.27914 -6.04 -1.17372 -6.05 -1.07681 -6.06 -0.990859 -6.07 -0.918143 -6.08 -0.860692 -6.09 -0.820204 -6.1 -0.799382 -6.11 -0.798102 -6.12 -0.816264 -6.13 -0.853619 -6.14 -0.909433 -6.15 -0.982508 -6.16 -1.07123 -6.17 -1.17362 -6.18 -1.28739 -6.19 -1.41058 -6.2 -1.53951 -6.21 -1.67132 -6.22 -1.80318 -6.23 -1.93222 -6.24 -2.05559 -6.25 -2.17051 -6.26 -2.27419 -6.27 -2.36368 -6.28 -2.43486 -6.29 -2.48611 -6.3 -2.51465 -6.31 -2.51766 -6.32 -2.49226 -6.33 -2.43554 -6.34 -2.3446 -6.35 -2.21661 -6.36 -2.04766 -6.37 -1.83351 -6.38 -1.57472 -6.39 -1.26978 -6.4 -0.917849 -6.41 -0.518873 -6.42 -0.0737468 -6.43 0.415574 -6.44 0.945974 -6.45 1.51446 -6.46 2.1147 -6.47 2.73779 -6.48 3.3754 -6.49 4.01816 -6.5 4.6558 -6.51 5.2774 -6.52 5.8716 -6.53 6.42694 -6.54 6.92847 -6.55 7.36568 -6.56 7.73057 -6.57 8.0147 -6.58 8.21113 -6.59 8.3147 -6.6 8.3222 -6.61 8.23252 -6.62 8.04669 -6.63 7.76132 -6.64 7.38795 -6.65 6.93584 -6.66 6.41434 -6.67 5.83423 -6.68 5.20739 -6.69 4.54642 -6.7 3.86429 -6.71 3.17397 -6.72 2.48952 -6.73 1.82314 -6.74 1.18531 -6.75 0.585146 -6.76 0.0301897 -6.77 -0.473732 -6.78 -0.922568 -6.79 -1.31404 -6.8 -1.64677 -6.81 -1.91846 -6.82 -2.13639 -6.83 -2.30447 -6.84 -2.42752 -6.85 -2.51099 -6.86 -2.5607 -6.87 -2.5826 -6.88 -2.58249 -6.89 -2.56553 -6.9 -2.53682 -6.91 -2.5015 -6.92 -2.46303 -6.93 -2.42408 -6.94 -2.38658 -6.95 -2.35179 -6.96 -2.32036 -6.97 -2.29243 -6.98 -2.26793 -6.99 -2.24637 -7 -2.22708 -7.01 -2.20959 -7.02 -2.1936 -7.03 -2.17904 -7.04 -2.16611 -7.05 -2.1553 -7.06 -2.14736 -7.07 -2.14354 -7.08 -2.14494 -7.09 -2.15254 -7.1 -2.16733 -7.11 -2.19005 -7.12 -2.2211 -7.13 -2.2604 -7.14 -2.30732 -7.15 -2.36061 -7.16 -2.41849 -7.17 -2.47779 -7.18 -2.53512 -7.19 -2.58663 -7.2 -2.62803 -7.21 -2.65478 -7.22 -2.66221 -7.23 -2.64574 -7.24 -2.60098 -7.25 -2.52085 -7.26 -2.4049 -7.27 -2.25086 -7.28 -2.05747 -7.29 -1.82451 -7.3 -1.55292 -7.31 -1.2448 -7.32 -0.903396 -7.33 -0.532685 -7.34 -0.137314 -7.35 0.274162 -7.36 0.694636 -7.37 1.11652 -7.38 1.53194 -7.39 1.93296 -7.4 2.3118 -7.41 2.66101 -7.42 2.97232 -7.43 3.23781 -7.44 3.45467 -7.45 3.61892 -7.46 3.72768 -7.47 3.77925 -7.48 3.77314 -7.49 3.71003 -7.5 3.59178 -7.51 3.419 -7.52 3.19646 -7.53 2.93146 -7.54 2.62976 -7.55 2.2977 -7.56 1.9421 -7.57 1.57006 -7.58 1.18889 -7.59 0.805881 -7.6 0.429034 -7.61 0.0657826 -7.62 -0.277587 -7.63 -0.59513 -7.64 -0.881522 -7.65 -1.13215 -7.66 -1.34318 -7.67 -1.51164 -7.68 -1.63547 -7.69 -1.70984 -7.7 -1.73786 -7.71 -1.7211 -7.72 -1.66157 -7.73 -1.56216 -7.74 -1.42662 -7.75 -1.25952 -7.76 -1.06609 -7.77 -0.852107 -7.78 -0.623278 -7.79 -0.387977 -7.8 -0.152968 -7.81 0.0750366 -7.82 0.289536 -7.83 0.484409 -7.84 0.654075 -7.85 0.79364 -7.86 0.898304 -7.87 0.962703 -7.88 0.987507 -7.89 0.971944 -7.9 0.916357 -7.91 0.822197 -7.92 0.691977 -7.93 0.529202 -7.94 0.338267 -7.95 0.123735 -7.96 -0.108275 -7.97 -0.350204 -7.98 -0.59556 -7.99 -0.837821 -8 -1.07063 -8.01 -1.28795 -8.02 -1.48425 -8.03 -1.65466 -8.04 -1.79335 -8.05 -1.8971 -8.06 -1.96509 -8.07 -1.99623 -8.08 -1.99042 -8.09 -1.94854 -8.1 -1.87236 -8.11 -1.76454 -8.12 -1.62846 -8.13 -1.46685 -8.14 -1.2858 -8.15 -1.09096 -8.16 -0.887554 -8.17 -0.680936 -8.18 -0.476404 -8.19 -0.279102 -8.2 -0.093904 -8.21 0.0746902 -8.22 0.220648 -8.23 0.341757 -8.24 0.435477 -8.25 0.499718 -8.26 0.533084 -8.27 0.534889 -8.28 0.505169 -8.29 0.444673 -8.3 0.354688 -8.31 0.235407 -8.32 0.0922319 -8.33 -0.0713815 -8.34 -0.251477 -8.35 -0.443673 -8.36 -0.64325 -8.37 -0.845246 -8.38 -1.04457 -8.39 -1.23581 -8.4 -1.41282 -8.41 -1.57149 -8.42 -1.70751 -8.43 -1.81708 -8.44 -1.89703 -8.45 -1.94495 -8.46 -1.95924 -8.47 -1.93925 -8.48 -1.88402 -8.49 -1.79456 -8.5 -1.67519 -8.51 -1.52935 -8.52 -1.3613 -8.53 -1.17606 -8.54 -0.979258 -8.55 -0.776963 -8.56 -0.575492 -8.57 -0.381937 -8.58 -0.20307 -8.59 -0.0442459 -8.6 0.0895454 -8.61 0.194186 -8.62 0.266612 -8.63 0.304963 -8.64 0.308696 -8.65 0.278662 -8.66 0.215216 -8.67 0.124035 -8.68 0.0111315 -8.69 -0.117047 -8.7 -0.253067 -8.71 -0.38873 -8.72 -0.515325 -8.73 -0.623901 -8.74 -0.705572 -8.75 -0.748135 -8.76 -0.745952 -8.77 -0.692664 -8.78 -0.582919 -8.79 -0.412861 -8.8 -0.180311 -8.81 0.115113 -8.82 0.471919 -8.83 0.887157 -8.84 1.35893 -8.85 1.87505 -8.86 2.42666 -8.87 3.00356 -8.88 3.59451 -8.89 4.1875 -8.9 4.7701 -8.91 5.32976 -8.92 5.853 -8.93 6.32477 -8.94 6.73694 -8.95 7.08009 -8.96 7.34623 -8.97 7.52906 -8.98 7.62406 -8.99 7.62864 -9 7.54212 -9.01 7.36234 -9.02 7.09192 -9.03 6.74086 -9.04 6.31597 -9.05 5.82542 -9.06 5.27846 -9.07 4.68518 -9.08 4.05624 -9.09 3.40259 -9.1 2.73504 -9.11 2.0657 -9.12 1.40505 -9.13 0.762296 -9.14 0.145684 -9.15 -0.437683 -9.16 -0.981944 -9.17 -1.48255 -9.18 -1.9363 -9.19 -2.33781 -9.2 -2.68907 -9.21 -2.99198 -9.22 -3.24844 -9.23 -3.46125 -9.24 -3.63391 -9.25 -3.77047 -9.26 -3.87529 -9.27 -3.95287 -9.28 -4.00604 -9.29 -4.04116 -9.3 -4.06204 -9.31 -4.07179 -9.32 -4.07286 -9.33 -4.06693 -9.34 -4.05491 -9.35 -4.03691 -9.36 -4.01216 -9.37 -3.97852 -9.38 -3.93442 -9.39 -3.87727 -9.4 -3.80417 -9.41 -3.71204 -9.42 -3.59784 -9.43 -3.4587 -9.44 -3.29211 -9.45 -3.09528 -9.46 -2.86561 -9.47 -2.60475 -9.48 -2.3133 -9.49 -1.99282 -9.5 -1.64587 -9.51 -1.27601 -9.52 -0.887723 -9.53 -0.486338 -9.54 -0.077928 -9.55 0.329972 -9.56 0.72991 -9.57 1.11458 -9.58 1.47669 -9.59 1.80924 -9.6 2.10563 -9.61 2.35994 -9.62 2.56707 -9.63 2.71975 -9.64 2.81602 -9.65 2.85616 -9.66 2.83994 -9.67 2.7684 -9.68 2.64383 -9.69 2.46969 -9.7 2.25051 -9.71 1.99174 -9.72 1.69765 -9.73 1.37756 -9.74 1.03928 -9.75 0.690114 -9.76 0.337239 -9.77 -0.0124705 -9.78 -0.35264 -9.79 -0.677553 -9.8 -0.982296 -9.81 -1.26042 -9.82 -1.51092 -9.83 -1.73208 -9.84 -1.92313 -9.85 -2.08425 -9.86 -2.2165 -9.87 -2.32173 -9.88 -2.40242 -9.89 -2.46129 -9.9 -2.50077 -9.91 -2.52599 -9.92 -2.54035 -9.93 -2.547 -9.94 -2.54873 -9.95 -2.54785 -9.96 -2.54606 -9.97 -2.54439 -9.98 -2.54315 -9.99 -2.54181 -10 -2.53909 -10.01 -2.53312 -10.02 -2.52148 -10.03 -2.50136 -10.04 -2.46968 -10.05 -2.42325 -10.06 -2.3589 -10.07 -2.27266 -10.08 -2.16165 -10.09 -2.02501 -10.1 -1.86157 -10.11 -1.67099 -10.12 -1.45381 -10.13 -1.21152 -10.14 -0.946545 -10.15 -0.662259 -10.16 -0.362306 -10.17 -0.0527748 -10.18 0.260078 -10.19 0.57002 -10.2 0.870564 -10.21 1.15516 -10.22 1.41743 -10.23 1.65135 -10.24 1.85146 -10.25 2.00987 -10.26 2.12496 -10.27 2.19498 -10.28 2.21874 -10.29 2.19635 -10.3 2.12918 -10.31 2.01985 -10.32 1.87217 -10.33 1.69099 -10.34 1.48013 -10.35 1.24916 -10.36 1.00513 -10.37 0.755249 -10.38 0.506676 -10.39 0.266257 -10.4 0.040301 -10.41 -0.165636 -10.42 -0.346499 -10.43 -0.496762 -10.44 -0.61631 -10.45 -0.704313 -10.46 -0.761171 -10.47 -0.788447 -10.48 -0.788759 -10.49 -0.765617 -10.5 -0.723232 -10.51 -0.666002 -10.52 -0.599113 -10.53 -0.528254 -10.54 -0.457916 -10.55 -0.392007 -10.56 -0.333646 -10.57 -0.284995 -10.58 -0.247134 -10.59 -0.219988 -10.6 -0.202639 -10.61 -0.192261 -10.62 -0.184814 -10.63 -0.175856 -10.64 -0.160338 -10.65 -0.13285 -10.66 -0.0879024 -10.67 -0.0202152 -10.68 0.0749905 -10.69 0.203874 -10.7 0.368501 -10.71 0.569294 -10.72 0.806171 -10.73 1.0775 -10.74 1.38006 -10.75 1.7091 -10.76 2.05844 -10.77 2.42064 -10.78 2.78682 -10.79 3.14658 -10.8 3.49019 -10.81 3.80799 -10.82 4.09069 -10.83 4.32973 -10.84 4.5176 -10.85 4.64813 -10.86 4.71659 -10.87 4.71431 -10.88 4.64643 -10.89 4.51435 -10.9 4.32129 -10.91 4.07221 -10.92 3.7736 -10.93 3.43322 -10.94 3.0598 -10.95 2.6625 -10.96 2.25121 -10.97 1.83715 -10.98 1.42938 -10.99 1.03616 -11 0.664703 -11.01 0.320951 -11.02 0.00943022 -11.03 -0.266827 -11.04 -0.505069 -11.05 -0.704434 -11.06 -0.86865 -11.07 -1.00037 -11.08 -1.10311 -11.09 -1.18102 -11.1 -1.23857 -11.11 -1.28031 -11.12 -1.31056 -11.13 -1.333 -11.14 -1.3512 -11.15 -1.36767 -11.16 -1.3837 -11.17 -1.39957 -11.18 -1.41465 -11.19 -1.42747 -11.2 -1.43581 -11.21 -1.43691 -11.22 -1.42683 -11.23 -1.40242 -11.24 -1.36103 -11.25 -1.30011 -11.26 -1.21776 -11.27 -1.11291 -11.28 -0.985439 -11.29 -0.836249 -11.3 -0.667324 -11.31 -0.480665 -11.32 -0.281904 -11.33 -0.0762158 -11.34 0.130819 -11.35 0.33324 -11.36 0.524952 -11.37 0.699977 -11.38 0.852708 -11.39 0.978017 -11.4 1.06878 -11.41 1.12454 -11.42 1.14355 -11.43 1.12526 -11.44 1.07037 -11.45 0.980747 -11.46 0.859388 -11.47 0.710227 -11.48 0.537636 -11.49 0.346565 -11.5 0.144294 -11.51 -0.0634804 -11.52 -0.271254 -11.53 -0.473927 -11.54 -0.66699 -11.55 -0.846668 -11.56 -1.01003 -11.57 -1.15434 -11.58 -1.27806 -11.59 -1.38219 -11.6 -1.46747 -11.61 -1.53526 -11.62 -1.58744 -11.63 -1.62621 -11.64 -1.65391 -11.65 -1.67286 -11.66 -1.68495 -11.67 -1.69218 -11.68 -1.69603 -11.69 -1.69716 -11.7 -1.69566 -11.71 -1.69104 -11.72 -1.68228 -11.73 -1.66795 -11.74 -1.64627 -11.75 -1.61453 -11.76 -1.57096 -11.77 -1.514 -11.78 -1.44222 -11.79 -1.35464 -11.8 -1.25089 -11.81 -1.13127 -11.82 -0.996854 -11.83 -0.849457 -11.84 -0.691054 -11.85 -0.526043 -11.86 -0.358474 -11.87 -0.192727 -11.88 -0.0334482 -11.89 0.11462 -11.9 0.246821 -11.91 0.358758 -11.92 0.446284 -11.93 0.50356 -11.94 0.53022 -11.95 0.524586 -11.96 0.485851 -11.97 0.414095 -11.98 0.310266 -11.99 0.176128 -12 0.0141765 -12.01 -0.172927 -12.02 -0.382129 -12.03 -0.607674 -12.04 -0.845313 -12.05 -1.09073 -12.06 -1.33969 -12.07 -1.58808 -12.08 -1.83209 -12.09 -2.06815 -12.1 -2.29256 -12.11 -2.50192 -12.12 -2.69442 -12.13 -2.86792 -12.14 -3.02053 -12.15 -3.15052 -12.16 -3.25634 -12.17 -3.33648 -12.18 -3.38949 -12.19 -3.41233 -12.2 -3.40383 -12.21 -3.36369 -12.22 -3.29059 -12.23 -3.18331 -12.24 -3.04084 -12.25 -2.86248 -12.26 -2.64791 -12.27 -2.39732 -12.28 -2.10915 -12.29 -1.78679 -12.3 -1.43347 -12.31 -1.05243 -12.32 -0.647742 -12.33 -0.224279 -12.34 0.212328 -12.35 0.655788 -12.36 1.09927 -12.37 1.5343 -12.38 1.95338 -12.39 2.34915 -12.4 2.71444 -12.41 3.04253 -12.42 3.32735 -12.43 3.56366 -12.44 3.74719 -12.45 3.8743 -12.46 3.93868 -12.47 3.94467 -12.48 3.89318 -12.49 3.78637 -12.5 3.62754 -12.51 3.42105 -12.52 3.17215 -12.53 2.88686 -12.54 2.57119 -12.55 2.23188 -12.56 1.87803 -12.57 1.51673 -12.58 1.15487 -12.59 0.798989 -12.6 0.455166 -12.61 0.128913 -12.62 -0.174875 -12.63 -0.450731 -12.64 -0.694374 -12.65 -0.904443 -12.66 -1.07877 -12.67 -1.21572 -12.68 -1.3142 -12.69 -1.37353 -12.7 -1.39342 -12.71 -1.37392 -12.72 -1.31325 -12.73 -1.21293 -12.74 -1.07536 -12.75 -0.901818 -12.76 -0.693866 -12.77 -0.453421 -12.78 -0.182769 -12.79 0.115395 -12.8 0.437933 -12.81 0.78244 -12.82 1.1433 -12.83 1.51546 -12.84 1.89384 -12.85 2.27303 -12.86 2.6473 -12.87 3.01078 -12.88 3.35753 -12.89 3.6817 -12.9 3.97473 -12.91 4.23343 -12.92 4.45343 -12.93 4.63094 -12.94 4.76307 -12.95 4.84785 -12.96 4.88438 -12.97 4.8728 -12.98 4.81384 -12.99 4.70699 -13 4.55948 -13.01 4.3756 -13.02 4.16032 -13.03 3.91913 -13.04 3.65784 -13.05 3.38241 -13.06 3.09873 -13.07 2.81252 -13.08 2.52957 -13.09 2.25445 -13.1 1.99085 -13.11 1.74163 -13.12 1.50876 -13.13 1.29329 -13.14 1.09542 -13.15 0.914543 -13.16 0.749902 -13.17 0.599362 -13.18 0.459691 -13.19 0.328168 -13.2 0.201973 -13.21 0.0783467 -13.22 -0.0452695 -13.23 -0.171105 -13.24 -0.300956 -13.25 -0.436468 -13.26 -0.578251 -13.27 -0.726163 -13.28 -0.87971 -13.29 -1.03792 -13.3 -1.19943 -13.31 -1.36255 -13.32 -1.52544 -13.33 -1.68616 -13.34 -1.84244 -13.35 -1.99268 -13.36 -2.13562 -13.37 -2.27031 -13.38 -2.39624 -13.39 -2.51336 -13.4 -2.6221 -13.41 -2.72332 -13.42 -2.81828 -13.43 -2.90831 -13.44 -2.99575 -13.45 -3.08251 -13.46 -3.17044 -13.47 -3.26119 -13.48 -3.35612 -13.49 -3.45615 -13.5 -3.56173 -13.51 -3.67273 -13.52 -3.7885 -13.53 -3.907 -13.54 -4.02593 -13.55 -4.14239 -13.56 -4.25294 -13.57 -4.35368 -13.58 -4.44039 -13.59 -4.50864 -13.6 -4.55315 -13.61 -4.56813 -13.62 -4.55106 -13.63 -4.49834 -13.64 -4.40699 -13.65 -4.27471 -13.66 -4.10005 -13.67 -3.88242 -13.68 -3.62221 -13.69 -3.31902 -13.7 -2.97553 -13.71 -2.59718 -13.72 -2.18838 -13.73 -1.75433 -13.74 -1.30095 -13.75 -0.834725 -13.76 -0.362615 -13.77 0.108114 -13.78 0.569031 -13.79 1.01215 -13.8 1.43054 -13.81 1.81729 -13.82 2.16596 -13.83 2.47071 -13.84 2.72641 -13.85 2.92876 -13.86 3.07435 -13.87 3.15611 -13.88 3.17632 -13.89 3.13582 -13.9 3.03565 -13.91 2.8779 -13.92 2.66572 -13.93 2.40326 -13.94 2.0956 -13.95 1.74869 -13.96 1.3669 -13.97 0.961201 -13.98 0.539537 -13.99 0.110155 -14 -0.318524 -14.01 -0.738069 -14.02 -1.1402 -14.03 -1.51696 -14.04 -1.86023 -14.05 -2.16012 -14.06 -2.41333 -14.07 -2.61493 -14.08 -2.761 -14.09 -2.84871 -14.1 -2.87646 -14.11 -2.84381 -14.12 -2.75154 -14.13 -2.59993 -14.14 -2.39096 -14.15 -2.13255 -14.16 -1.83004 -14.17 -1.48957 -14.18 -1.11794 -14.19 -0.722473 -14.2 -0.310795 -14.21 0.1093 -14.22 0.529694 -14.23 0.941895 -14.24 1.3388 -14.25 1.71382 -14.26 2.06106 -14.27 2.37536 -14.28 2.65245 -14.29 2.88896 -14.3 3.08249 -14.31 3.22875 -14.32 3.32882 -14.33 3.38463 -14.34 3.39762 -14.35 3.37 -14.36 3.30463 -14.37 3.20492 -14.38 3.07471 -14.39 2.91819 -14.4 2.73836 -14.41 2.54152 -14.42 2.33241 -14.43 2.1153 -14.44 1.89426 -14.45 1.67305 -14.46 1.4551 -14.47 1.24339 -14.48 1.04054 -14.49 0.849793 -14.5 0.671893 -14.51 0.507976 -14.52 0.35876 -14.53 0.224574 -14.54 0.105398 -14.55 0.000894375 -14.56 -0.08954 -14.57 -0.166514 -14.58 -0.230476 -14.59 -0.283573 -14.6 -0.327067 -14.61 -0.362273 -14.62 -0.390528 -14.63 -0.413161 -14.64 -0.431471 -14.65 -0.44671 -14.66 -0.460036 -14.67 -0.472655 -14.68 -0.485663 -14.69 -0.499953 -14.7 -0.516311 -14.71 -0.535405 -14.72 -0.55778 -14.73 -0.583845 -14.74 -0.613868 -14.75 -0.648159 -14.76 -0.686602 -14.77 -0.728742 -14.78 -0.774106 -14.79 -0.822008 -14.8 -0.871552 -14.81 -0.921616 -14.82 -0.970853 -14.83 -1.0177 -14.84 -1.05997 -14.85 -1.09561 -14.86 -1.12258 -14.87 -1.13857 -14.88 -1.1412 -14.89 -1.12806 -14.9 -1.09678 -14.91 -1.0451 -14.92 -0.970903 -14.93 -0.87026 -14.94 -0.743297 -14.95 -0.589292 -14.96 -0.407754 -14.97 -0.198755 -14.98 0.0370128 -14.99 0.298201 -15 0.582777 -15.01 0.888093 -15.02 1.21179 -15.03 1.54789 -15.04 1.89163 -15.05 2.23774 -15.06 2.58054 -15.07 2.91409 -15.08 3.23226 -15.09 3.52896 -15.1 3.7975 -15.11 4.02995 -15.12 4.2232 -15.13 4.37278 -15.14 4.47493 -15.15 4.52678 -15.16 4.52641 -15.17 4.47294 -15.18 4.36653 -15.19 4.20667 -15.2 3.99508 -15.21 3.73822 -15.22 3.44057 -15.23 3.10739 -15.24 2.74465 -15.25 2.35882 -15.26 1.95674 -15.27 1.54542 -15.28 1.13215 -15.29 0.724621 -15.3 0.329302 -15.31 -0.0478994 -15.32 -0.401736 -15.33 -0.727728 -15.34 -1.02224 -15.35 -1.28256 -15.36 -1.5069 -15.37 -1.69192 -15.38 -1.83943 -15.39 -1.95145 -15.4 -2.02988 -15.41 -2.07729 -15.42 -2.09679 -15.43 -2.09196 -15.44 -2.06666 -15.45 -2.02498 -15.46 -1.97035 -15.47 -1.90808 -15.48 -1.84215 -15.49 -1.77612 -15.5 -1.71322 -15.51 -1.65626 -15.52 -1.6076 -15.53 -1.56914 -15.54 -1.54237 -15.55 -1.52924 -15.56 -1.52912 -15.57 -1.54197 -15.58 -1.56737 -15.59 -1.60457 -15.6 -1.65255 -15.61 -1.71005 -15.62 -1.77565 -15.63 -1.8479 -15.64 -1.92518 -15.65 -2.00536 -15.66 -2.08674 -15.67 -2.16766 -15.68 -2.24649 -15.69 -2.32168 -15.7 -2.3918 -15.71 -2.4555 -15.72 -2.51122 -15.73 -2.55764 -15.74 -2.59427 -15.75 -2.62037 -15.76 -2.63537 -15.77 -2.63888 -15.78 -2.6307 -15.79 -2.61082 -15.8 -2.57942 -15.81 -2.53633 -15.82 -2.48242 -15.83 -2.41893 -15.84 -2.34687 -15.85 -2.26742 -15.86 -2.18186 -15.87 -2.09161 -15.88 -1.99816 -15.89 -1.90301 -15.9 -1.80777 -15.91 -1.71404 -15.92 -1.62315 -15.93 -1.53627 -15.94 -1.45439 -15.95 -1.37823 -15.96 -1.30829 -15.97 -1.24474 -15.98 -1.18745 -15.99 -1.13643 -16 -1.09031 -16.01 -1.04794 -16.02 -1.0079 -16.03 -0.968523 -16.04 -0.927958 -16.05 -0.884193 -16.06 -0.835125 -16.07 -0.778526 -16.08 -0.711392 -16.09 -0.632404 -16.1 -0.539779 -16.11 -0.431991 -16.12 -0.307823 -16.13 -0.166426 -16.14 -0.00736698 -16.15 0.169334 -16.16 0.363574 -16.17 0.574853 -16.18 0.800384 -16.19 1.03802 -16.2 1.28515 -16.21 1.53869 -16.22 1.79517 -16.23 2.05077 -16.24 2.30139 -16.25 2.5422 -16.26 2.7681 -16.27 2.97524 -16.28 3.15935 -16.29 3.31641 -16.3 3.44275 -16.31 3.53514 -16.32 3.59089 -16.33 3.60798 -16.34 3.58279 -16.35 3.51573 -16.36 3.4088 -16.37 3.26343 -16.38 3.08199 -16.39 2.86774 -16.4 2.62475 -16.41 2.35793 -16.42 2.07285 -16.43 1.7753 -16.44 1.4732 -16.45 1.17376 -16.46 0.883993 -16.47 0.610836 -16.48 0.360931 -16.49 0.140444 -16.5 -0.0451108 -16.51 -0.191047 -16.52 -0.289598 -16.53 -0.341797 -16.54 -0.346725 -16.55 -0.304571 -16.56 -0.216843 -16.57 -0.0863435 -16.58 0.0828734 -16.59 0.285597 -16.6 0.515811 -16.61 0.767 -16.62 1.02912 -16.63 1.29382 -16.64 1.5526 -16.65 1.79699 -16.66 2.01884 -16.67 2.21053 -16.68 2.36523 -16.69 2.47573 -16.7 2.53513 -16.71 2.54312 -16.72 2.49799 -16.73 2.39944 -16.74 2.2487 -16.75 2.0484 -16.76 1.80254 -16.77 1.51635 -16.78 1.19504 -16.79 0.846691 -16.8 0.481023 -16.81 0.106529 -16.82 -0.268112 -16.83 -0.634282 -16.84 -0.983658 -16.85 -1.30844 -16.86 -1.60153 -16.87 -1.85422 -16.88 -2.06194 -16.89 -2.22233 -16.9 -2.33301 -16.91 -2.39291 -16.92 -2.4023 -16.93 -2.36269 -16.94 -2.27684 -16.95 -2.1486 -16.96 -1.98044 -16.97 -1.78081 -16.98 -1.55683 -16.99 -1.31539 -17 -1.0636 -17.01 -0.808633 -17.02 -0.557517 -17.03 -0.316945 -17.04 -0.0931206 -17.05 0.105948 -17.06 0.277245 -17.07 0.417156 -17.08 0.52302 -17.09 0.593222 -17.1 0.627213 -17.11 0.625508 -17.12 0.589652 -17.13 0.521771 -17.14 0.423897 -17.15 0.302831 -17.16 0.163559 -17.17 0.011546 -17.18 -0.14742 -17.19 -0.307392 -17.2 -0.462434 -17.21 -0.606785 -17.22 -0.73439 -17.23 -0.839154 -17.24 -0.918016 -17.25 -0.967651 -17.26 -0.985622 -17.27 -0.970453 -17.28 -0.921668 -17.29 -0.839812 -17.3 -0.726442 -17.31 -0.582916 -17.32 -0.413166 -17.33 -0.222913 -17.34 -0.0171874 -17.35 0.198484 -17.36 0.418237 -17.37 0.636035 -17.38 0.845851 -17.39 1.04183 -17.4 1.21698 -17.41 1.36642 -17.42 1.4866 -17.43 1.57413 -17.44 1.6265 -17.45 1.64214 -17.46 1.62043 -17.47 1.56175 -17.48 1.46737 -17.49 1.33711 -17.5 1.17638 -17.51 0.989475 -17.52 0.780679 -17.53 0.554676 -17.54 0.316379 -17.55 0.0707917 -17.56 -0.17714 -17.57 -0.422654 -17.58 -0.660307 -17.59 -0.886473 -17.6 -1.09775 -17.61 -1.29132 -17.62 -1.46496 -17.63 -1.61707 -17.64 -1.74664 -17.65 -1.85325 -17.66 -1.93663 -17.67 -1.99609 -17.68 -2.03441 -17.69 -2.05289 -17.7 -2.05304 -17.71 -2.03652 -17.72 -2.00502 -17.73 -1.96025 -17.74 -1.90384 -17.75 -1.83705 -17.76 -1.76121 -17.77 -1.67813 -17.78 -1.5889 -17.79 -1.49445 -17.8 -1.39562 -17.81 -1.29311 -17.82 -1.18759 -17.83 -1.07965 -17.84 -0.96983 -17.85 -0.858813 -17.86 -0.74731 -17.87 -0.635998 -17.88 -0.525601 -17.89 -0.416895 -17.9 -0.31069 -17.91 -0.207829 -17.92 -0.109162 -17.93 -0.015906 -17.94 0.0712245 -17.95 0.151628 -17.96 0.224627 -17.97 0.28963 -17.98 0.346141 -17.99 0.393761 -18 0.432189 -18.01 0.461219 -18.02 0.479968 -18.03 0.489031 -18.04 0.488558 -18.05 0.478627 -18.06 0.459359 -18.07 0.430912 -18.08 0.393485 -18.09 0.347325 -18.1 0.292717 -18.11 0.229405 -18.12 0.158666 -18.13 0.0811761 -18.14 -0.00220943 -18.15 -0.0904257 -18.16 -0.18217 -18.17 -0.27588 -18.18 -0.369721 -18.19 -0.461503 -18.2 -0.548346 -18.21 -0.627775 -18.22 -0.696975 -18.23 -0.753029 -18.24 -0.792994 -18.25 -0.814002 -18.26 -0.813364 -18.27 -0.788681 -18.28 -0.737007 -18.29 -0.656133 -18.3 -0.546896 -18.31 -0.409358 -18.32 -0.244391 -18.33 -0.0537243 -18.34 0.160036 -18.35 0.393418 -18.36 0.642129 -18.37 0.901351 -18.38 1.16456 -18.39 1.42508 -18.4 1.67635 -18.41 1.91171 -18.42 2.1246 -18.43 2.30874 -18.44 2.45839 -18.45 2.56849 -18.46 2.63177 -18.47 2.6467 -18.48 2.61276 -18.49 2.52957 -18.5 2.39805 -18.51 2.22045 -18.52 2.00028 -18.53 1.74222 -18.54 1.45204 -18.55 1.13491 -18.56 0.800718 -18.57 0.457648 -18.58 0.11381 -18.59 -0.222726 -18.6 -0.544163 -18.61 -0.843202 -18.62 -1.11325 -18.63 -1.34837 -18.64 -1.54032 -18.65 -1.68894 -18.66 -1.79219 -18.67 -1.84928 -18.68 -1.86064 -18.69 -1.82789 -18.7 -1.75371 -18.71 -1.64175 -18.72 -1.49589 -18.73 -1.32039 -18.74 -1.12322 -18.75 -0.910244 -18.76 -0.687362 -18.77 -0.46035 -18.78 -0.23469 -18.79 -0.0154361 -18.8 0.192904 -18.81 0.385794 -18.82 0.559452 -18.83 0.712479 -18.84 0.843376 -18.85 0.951372 -18.86 1.03638 -18.87 1.09893 -18.88 1.14008 -18.89 1.16138 -18.9 1.16385 -18.91 1.15015 -18.92 1.12328 -18.93 1.08559 -18.94 1.03939 -18.95 0.986835 -18.96 0.929927 -18.97 0.870425 -18.98 0.80982 -18.99 0.749385 -19 0.69007 -19.01 0.632418 -19.02 0.57671 -19.03 0.522985 -19.04 0.471077 -19.05 0.420661 -19.06 0.371295 -19.07 0.322469 -19.08 0.273614 -19.09 0.224205 -19.1 0.173846 -19.11 0.122273 -19.12 0.0693806 -19.13 0.0152551 -19.14 -0.0398097 -19.15 -0.0952996 -19.16 -0.150468 -19.17 -0.204156 -19.18 -0.255211 -19.19 -0.302283 -19.2 -0.343901 -19.21 -0.378517 -19.22 -0.404566 -19.23 -0.420522 -19.24 -0.424963 -19.25 -0.416317 -19.26 -0.39287 -19.27 -0.35489 -19.28 -0.302132 -19.29 -0.234777 -19.3 -0.153471 -19.31 -0.0593505 -19.32 0.0459534 -19.33 0.160319 -19.34 0.281297 -19.35 0.405531 -19.36 0.529284 -19.37 0.648907 -19.38 0.760615 -19.39 0.860603 -19.4 0.945175 -19.41 1.01087 -19.42 1.0546 -19.43 1.0723 -19.44 1.0623 -19.45 1.02443 -19.46 0.958428 -19.47 0.864912 -19.48 0.745379 -19.49 0.602222 -19.5 0.438687 -19.51 0.258805 -19.52 0.0668483 -19.53 -0.130751 -19.54 -0.328019 -19.55 -0.51904 -19.56 -0.697914 -19.57 -0.858948 -19.58 -0.996855 -19.59 -1.10694 -19.6 -1.18529 -19.61 -1.22571 -19.62 -1.22908 -19.63 -1.19504 -19.64 -1.12426 -19.65 -1.01858 -19.66 -0.881009 -19.67 -0.715634 -19.68 -0.52751 -19.69 -0.322404 -19.7 -0.106756 -19.71 0.111129 -19.72 0.324107 -19.73 0.525114 -19.74 0.707387 -19.75 0.864681 -19.76 0.991464 -19.77 1.08309 -19.78 1.13486 -19.79 1.14246 -19.8 1.10749 -19.81 1.03015 -19.82 0.911849 -19.83 0.755089 -19.84 0.56341 -19.85 0.341232 -19.86 0.0936976 -19.87 -0.174058 -19.88 -0.455357 -19.89 -0.743048 -19.9 -1.03103 -19.91 -1.31348 -19.92 -1.58501 -19.93 -1.84082 -19.94 -2.07678 -19.95 -2.28954 -19.96 -2.475 -19.97 -2.63197 -19.98 -2.76066 -19.99 -2.86114 -20 -2.93415 -20.01 -2.98098 -20.02 -3.0034 -20.03 -3.00349 -20.04 -2.98353 -20.05 -2.94473 -20.06 -2.89053 -20.07 -2.82328 -20.08 -2.74475 -20.09 -2.65632 -20.1 -2.55897 -20.11 -2.45325 -20.12 -2.3393 -20.13 -2.21686 -20.14 -2.08443 -20.15 -1.94181 -20.16 -1.78792 -20.17 -1.62162 -20.18 -1.44177 -20.19 -1.24742 -20.2 -1.03783 -20.21 -0.812622 -20.22 -0.571654 -20.23 -0.314546 -20.24 -0.0437377 -20.25 0.239012 -20.26 0.531387 -20.27 0.830539 -20.28 1.13314 -20.29 1.43544 -20.3 1.73338 -20.31 2.0223 -20.32 2.29682 -20.33 2.55321 -20.34 2.78728 -20.35 2.99517 -20.36 3.17343 -20.37 3.31913 -20.38 3.42997 -20.39 3.50435 -20.4 3.53978 -20.41 3.5361 -20.42 3.49604 -20.43 3.42129 -20.44 3.31423 -20.45 3.17795 -20.46 3.01606 -20.47 2.83268 -20.48 2.63226 -20.49 2.41905 -20.5 2.19865 -20.51 1.97616 -20.52 1.75604 -20.53 1.54244 -20.54 1.33905 -20.55 1.14903 -20.56 0.974922 -20.57 0.818601 -20.58 0.682708 -20.59 0.566533 -20.6 0.469369 -20.61 0.390191 -20.62 0.327393 -20.63 0.278877 -20.64 0.242142 -20.65 0.214394 -20.66 0.192663 -20.67 0.17391 -20.68 0.154678 -20.69 0.1322 -20.7 0.103995 -20.71 0.0679476 -20.72 0.0223701 -20.73 -0.0339523 -20.74 -0.101737 -20.75 -0.181367 -20.76 -0.273215 -20.77 -0.375553 -20.78 -0.487181 -20.79 -0.606581 -20.8 -0.732003 -20.81 -0.861538 -20.82 -0.993213 -20.83 -1.12507 -20.84 -1.25513 -20.85 -1.38139 -20.86 -1.50255 -20.87 -1.6174 -20.88 -1.72504 -20.89 -1.82481 -20.9 -1.91634 -20.91 -1.99945 -20.92 -2.07416 -20.93 -2.14023 -20.94 -2.19786 -20.95 -2.24757 -20.96 -2.28943 -20.97 -2.3233 -20.98 -2.34887 -20.99 -2.36556 -21 -2.3725 -21.01 -2.36858 -21.02 -2.35153 -21.03 -2.31993 -21.04 -2.27233 -21.05 -2.20685 -21.06 -2.12163 -21.07 -2.0149 -21.08 -1.88516 -21.09 -1.73119 -21.1 -1.55227 -21.11 -1.34624 -21.12 -1.11524 -21.13 -0.860893 -21.14 -0.585168 -21.15 -0.290774 -21.16 0.0188713 -21.17 0.339688 -21.18 0.667013 -21.19 0.9957 -21.2 1.31935 -21.21 1.63219 -21.22 1.92851 -21.23 2.20276 -21.24 2.44974 -21.25 2.66475 -21.26 2.84376 -21.27 2.98355 -21.28 3.08107 -21.29 3.13246 -21.3 3.14088 -21.31 3.10735 -21.32 3.03399 -21.33 2.92386 -21.34 2.78092 -21.35 2.60991 -21.36 2.41617 -21.37 2.20517 -21.38 1.98343 -21.39 1.75805 -21.4 1.53504 -21.41 1.32006 -21.42 1.1183 -21.43 0.934299 -21.44 0.771828 -21.45 0.633823 -21.46 0.523647 -21.47 0.44227 -21.48 0.388472 -21.49 0.361323 -21.5 0.359098 -21.51 0.379372 -21.52 0.419139 -21.53 0.474951 -21.54 0.543059 -21.55 0.619842 -21.56 0.700688 -21.57 0.781652 -21.58 0.859293 -21.59 0.930559 -21.6 0.99286 -21.61 1.04412 -21.62 1.08282 -21.63 1.10799 -21.64 1.11808 -21.65 1.11417 -21.66 1.09701 -21.67 1.06751 -21.68 1.02684 -21.69 0.976304 -21.7 0.917291 -21.71 0.851153 -21.72 0.779117 -21.73 0.701927 -21.74 0.620874 -21.75 0.536476 -21.76 0.448974 -21.77 0.358338 -21.78 0.264296 -21.79 0.166375 -21.8 0.063957 -21.81 -0.0437674 -21.82 -0.157879 -21.83 -0.278584 -21.84 -0.406308 -21.85 -0.541238 -21.86 -0.683268 -21.87 -0.831954 -21.88 -0.986488 -21.89 -1.14569 -21.9 -1.30804 -21.91 -1.47143 -21.92 -1.63347 -21.93 -1.7917 -21.94 -1.94358 -21.95 -2.08649 -21.96 -2.21791 -21.97 -2.33545 -21.98 -2.43699 -21.99 -2.51977 -22 -2.5825 -22.01 -2.62518 -22.02 -2.64757 -22.03 -2.65001 -22.04 -2.63338 -22.05 -2.59909 -22.06 -2.54902 -22.07 -2.48547 -22.08 -2.41052 -22.09 -2.32778 -22.1 -2.24051 -22.11 -2.15164 -22.12 -2.06399 -22.13 -1.98013 -22.14 -1.90228 -22.15 -1.83224 -22.16 -1.77129 -22.17 -1.72102 -22.18 -1.68083 -22.19 -1.65009 -22.2 -1.62776 -22.21 -1.6123 -22.22 -1.60176 -22.23 -1.59385 -22.24 -1.58606 -22.25 -1.57574 -22.26 -1.55957 -22.27 -1.53533 -22.28 -1.50077 -22.29 -1.45396 -22.3 -1.39341 -22.31 -1.31807 -22.32 -1.22742 -22.33 -1.12147 -22.34 -1.00045 -22.35 -0.864888 -22.36 -0.717399 -22.37 -0.55994 -22.38 -0.394762 -22.39 -0.224315 -22.4 -0.0511574 -22.41 0.122141 -22.42 0.293091 -22.43 0.459111 -22.44 0.617786 -22.45 0.767683 -22.46 0.907442 -22.47 1.03608 -22.48 1.15296 -22.49 1.25785 -22.5 1.35078 -22.51 1.4321 -22.52 1.50182 -22.53 1.56091 -22.54 1.61061 -22.55 1.65175 -22.56 1.6851 -22.57 1.71133 -22.58 1.73098 -22.59 1.74441 -22.6 1.7518 -22.61 1.75274 -22.62 1.74733 -22.63 1.73541 -22.64 1.71665 -22.65 1.69068 -22.66 1.65718 -22.67 1.61595 -22.68 1.56695 -22.69 1.51035 -22.7 1.446 -22.71 1.37526 -22.72 1.29922 -22.73 1.21918 -22.74 1.13671 -22.75 1.05353 -22.76 0.971537 -22.77 0.892672 -22.78 0.818923 -22.79 0.752801 -22.8 0.695442 -22.81 0.648142 -22.82 0.611842 -22.83 0.587067 -22.84 0.573892 -22.85 0.571921 -22.86 0.580288 -22.87 0.597853 -22.88 0.623002 -22.89 0.653021 -22.9 0.685569 -22.91 0.718178 -22.92 0.748361 -22.93 0.773721 -22.94 0.792059 -22.95 0.801479 -22.96 0.800017 -22.97 0.786426 -22.98 0.760868 -22.99 0.7235 -23 0.675025 -23.01 0.616669 -23.02 0.550122 -23.03 0.477471 -23.04 0.401097 -23.05 0.323665 -23.06 0.24814 -23.07 0.177111 -23.08 0.112927 -23.09 0.0576188 -23.1 0.0128024 -23.11 -0.0204029 -23.12 -0.0414293 -23.13 -0.0502927 -23.14 -0.0468583 -23.15 -0.0330749 -23.16 -0.0109798 -23.17 0.0172099 -23.18 0.0489553 -23.19 0.0815084 -23.2 0.112036 -23.21 0.137745 -23.22 0.156011 -23.23 0.163471 -23.24 0.158897 -23.25 0.140999 -23.26 0.108996 -23.27 0.0627 -23.28 0.00252891 -23.29 -0.0705133 -23.3 -0.154877 -23.31 -0.248602 -23.32 -0.349475 -23.33 -0.453987 -23.34 -0.559205 -23.35 -0.662151 -23.36 -0.759924 -23.37 -0.849798 -23.38 -0.929322 -23.39 -0.9964 -23.4 -1.04895 -23.41 -1.08506 -23.42 -1.10504 -23.43 -1.10876 -23.44 -1.09649 -23.45 -1.06893 -23.46 -1.02711 -23.47 -0.972346 -23.48 -0.906141 -23.49 -0.829779 -23.5 -0.74506 -23.51 -0.654087 -23.52 -0.558369 -23.53 -0.45927 -23.54 -0.357968 -23.55 -0.255446 -23.56 -0.152487 -23.57 -0.049689 -23.58 0.0524593 -23.59 0.153637 -23.6 0.253649 -23.61 0.352303 -23.62 0.449388 -23.63 0.544632 -23.64 0.63767 -23.65 0.728021 -23.66 0.815073 -23.67 0.897725 -23.68 0.975247 -23.69 1.04676 -23.7 1.11125 -23.71 1.16772 -23.72 1.21524 -23.73 1.25295 -23.74 1.28019 -23.75 1.29648 -23.76 1.3006 -23.77 1.29363 -23.78 1.27599 -23.79 1.24839 -23.8 1.21176 -23.81 1.16731 -23.82 1.11641 -23.83 1.06053 -23.84 1.00123 -23.85 0.94004 -23.86 0.878625 -23.87 0.818201 -23.88 0.759731 -23.89 0.703872 -23.9 0.650934 -23.91 0.60085 -23.92 0.553174 -23.93 0.5071 -23.94 0.461315 -23.95 0.414211 -23.96 0.364056 -23.97 0.308981 -23.98 0.24706 -23.99 0.176406 -24 0.095252 -24.01 0.00204348 -24.02 -0.105123 -24.03 -0.227269 -24.04 -0.364156 -24.05 -0.515738 -24.06 -0.681509 -24.07 -0.860504 -24.08 -1.05133 -24.09 -1.25219 -24.1 -1.46095 -24.11 -1.67538 -24.12 -1.89239 -24.13 -2.10906 -24.14 -2.32258 -24.15 -2.53021 -24.16 -2.7293 -24.17 -2.91735 -24.18 -3.09208 -24.19 -3.25144 -24.2 -3.39218 -24.21 -3.51369 -24.22 -3.615 -24.23 -3.69509 -24.24 -3.75315 -24.25 -3.78852 -24.26 -3.80069 -24.27 -3.78925 -24.28 -3.75388 -24.29 -3.6921 -24.3 -3.60592 -24.31 -3.49523 -24.32 -3.36 -24.33 -3.20032 -24.34 -3.01639 -24.35 -2.80862 -24.36 -2.57764 -24.37 -2.32405 -24.38 -2.04795 -24.39 -1.75272 -24.4 -1.44046 -24.41 -1.11368 -24.42 -0.7753 -24.43 -0.428637 -24.44 -0.0773746 -24.45 0.274496 -24.46 0.622488 -24.47 0.961466 -24.48 1.28726 -24.49 1.59552 -24.5 1.88211 -24.51 2.1432 -24.52 2.37539 -24.53 2.57581 -24.54 2.7422 -24.55 2.87129 -24.56 2.96227 -24.57 3.01688 -24.58 3.036 -24.59 3.02124 -24.6 2.97487 -24.61 2.89979 -24.62 2.7994 -24.63 2.67751 -24.64 2.5374 -24.65 2.38435 -24.66 2.22311 -24.67 2.0578 -24.68 1.89226 -24.69 1.73 -24.7 1.57405 -24.71 1.42696 -24.72 1.29067 -24.73 1.16757 -24.74 1.05763 -24.75 0.960713 -24.76 0.876361 -24.77 0.803622 -24.78 0.74115 -24.79 0.687283 -24.8 0.640133 -24.81 0.597683 -24.82 0.557914 -24.83 0.518445 -24.84 0.477437 -24.85 0.433272 -24.86 0.384613 -24.87 0.33044 -24.88 0.270088 -24.89 0.203264 -24.9 0.129942 -24.91 0.050315 -24.92 -0.0342715 -24.93 -0.122636 -24.94 -0.213325 -24.95 -0.304654 -24.96 -0.39476 -24.97 -0.481641 -24.98 -0.563215 -24.99 -0.637043 -25 -0.70054 -25.01 -0.752145 -25.02 -0.789957 -25.03 -0.812239 -25.04 -0.817453 -25.05 -0.804298 -25.06 -0.771743 -25.07 -0.719061 -25.08 -0.644842 -25.09 -0.549211 -25.1 -0.43348 -25.11 -0.298466 -25.12 -0.14539 -25.13 0.0241266 -25.14 0.208066 -25.15 0.40403 -25.16 0.609266 -25.17 0.820882 -25.18 1.03492 -25.19 1.2476 -25.2 1.45521 -25.21 1.65396 -25.22 1.84008 -25.23 2.00993 -25.24 2.16006 -25.25 2.28734 -25.26 2.38673 -25.27 2.45758 -25.28 2.49855 -25.29 2.50859 -25.3 2.48732 -25.31 2.43498 -25.32 2.35252 -25.33 2.2415 -25.34 2.10401 -25.35 1.94113 -25.36 1.75848 -25.37 1.55977 -25.38 1.34896 -25.39 1.1302 -25.4 0.907646 -25.41 0.685412 -25.42 0.467412 -25.43 0.257497 -25.44 0.0597822 -25.45 -0.123683 -25.46 -0.290784 -25.47 -0.439984 -25.48 -0.570342 -25.49 -0.681506 -25.5 -0.773693 -25.51 -0.847644 -25.52 -0.904015 -25.53 -0.944305 -25.54 -0.971422 -25.55 -0.987506 -25.56 -0.994785 -25.57 -0.995485 -25.58 -0.991735 -25.59 -0.985488 -25.6 -0.978452 -25.61 -0.972124 -25.62 -0.967638 -25.63 -0.965573 -25.64 -0.96617 -25.65 -0.969309 -25.66 -0.974549 -25.67 -0.981159 -25.68 -0.988184 -25.69 -0.994496 -25.7 -0.998656 -25.71 -0.999366 -25.72 -0.99549 -25.73 -0.985962 -25.74 -0.969899 -25.75 -0.946651 -25.76 -0.915835 -25.77 -0.877363 -25.78 -0.831459 -25.79 -0.77815 -25.8 -0.718892 -25.81 -0.654911 -25.82 -0.5876 -25.83 -0.518537 -25.84 -0.449432 -25.85 -0.382077 -25.86 -0.318284 -25.87 -0.259875 -25.88 -0.209241 -25.89 -0.167398 -25.9 -0.135642 -25.91 -0.115029 -25.92 -0.106345 -25.93 -0.110084 -25.94 -0.126437 -25.95 -0.155285 -25.96 -0.196457 -25.97 -0.249674 -25.98 -0.313051 -25.99 -0.385309 -26 -0.464964 -26.01 -0.550372 -26.02 -0.639761 -26.03 -0.731282 -26.04 -0.82305 -26.05 -0.913053 -26.06 -0.999202 -26.07 -1.0799 -26.08 -1.15359 -26.09 -1.21888 -26.1 -1.27462 -26.11 -1.31985 -26.12 -1.35389 -26.13 -1.37632 -26.14 -1.38638 -26.15 -1.38443 -26.16 -1.37139 -26.17 -1.348 -26.18 -1.31523 -26.19 -1.27424 -26.2 -1.22643 -26.21 -1.17329 -26.22 -1.11647 -26.23 -1.05764 -26.24 -0.998777 -26.25 -0.941607 -26.26 -0.887722 -26.27 -0.838589 -26.28 -0.795499 -26.29 -0.759537 -26.3 -0.731542 -26.31 -0.712079 -26.32 -0.702175 -26.33 -0.701052 -26.34 -0.708234 -26.35 -0.723002 -26.36 -0.744349 -26.37 -0.771 -26.38 -0.801443 -26.39 -0.83397 -26.4 -0.866702 -26.41 -0.89734 -26.42 -0.923867 -26.43 -0.944272 -26.44 -0.95662 -26.45 -0.959096 -26.46 -0.950064 -26.47 -0.928106 -26.48 -0.892067 -26.49 -0.840707 -26.5 -0.772802 -26.51 -0.689255 -26.52 -0.590303 -26.53 -0.476527 -26.54 -0.348847 -26.55 -0.208495 -26.56 -0.0569951 -26.57 0.10388 -26.58 0.272354 -26.59 0.446063 -26.6 0.622361 -26.61 0.79893 -26.62 0.973463 -26.63 1.14372 -26.64 1.30757 -26.65 1.46307 -26.66 1.60846 -26.67 1.74153 -26.68 1.86119 -26.69 1.96702 -26.7 2.05852 -26.71 2.13549 -26.72 2.19805 -26.73 2.24665 -26.74 2.282 -26.75 2.30508 -26.76 2.31639 -26.77 2.31801 -26.78 2.31167 -26.79 2.29896 -26.8 2.28143 -26.81 2.2606 -26.82 2.23791 -26.83 2.21461 -26.84 2.19178 -26.85 2.17042 -26.86 2.15098 -26.87 2.13369 -26.88 2.11845 -26.89 2.10488 -26.9 2.09233 -26.91 2.07984 -26.92 2.06627 -26.93 2.0502 -26.94 2.02968 -26.95 2.00333 -26.96 1.96951 -26.97 1.92663 -26.98 1.8732 -26.99 1.8079 -27 1.7296 -27.01 1.63744 -27.02 1.53047 -27.03 1.4079 -27.04 1.27088 -27.05 1.11998 -27.06 0.956112 -27.07 0.780516 -27.08 0.594761 -27.09 0.400683 -27.1 0.200351 -27.11 -0.00405243 -27.12 -0.209861 -27.13 -0.414444 -27.14 -0.615367 -27.15 -0.810257 -27.16 -0.996861 -27.17 -1.17309 -27.18 -1.33707 -27.19 -1.48717 -27.2 -1.62105 -27.21 -1.73793 -27.22 -1.83759 -27.23 -1.91961 -27.24 -1.98382 -27.25 -2.03032 -27.26 -2.05943 -27.27 -2.07171 -27.28 -2.06786 -27.29 -2.04769 -27.3 -2.01314 -27.31 -1.96555 -27.32 -1.90605 -27.33 -1.83577 -27.34 -1.75586 -27.35 -1.66745 -27.36 -1.57164 -27.37 -1.46951 -27.38 -1.36169 -27.39 -1.24972 -27.4 -1.13453 -27.41 -1.01704 -27.42 -0.898098 -27.43 -0.778532 -27.44 -0.659133 -27.45 -0.540656 -27.46 -0.423854 -27.47 -0.309621 -27.48 -0.198445 -27.49 -0.0908956 -27.5 0.0125118 -27.51 0.111329 -27.52 0.205177 -27.53 0.293754 -27.54 0.376834 -27.55 0.454102 -27.56 0.52529 -27.57 0.590765 -27.58 0.650594 -27.59 0.704887 -27.6 0.753782 -27.61 0.797429 -27.62 0.835975 -27.63 0.869543 -27.64 0.897997 -27.65 0.921357 -27.66 0.939805 -27.67 0.953225 -27.68 0.96143 -27.69 0.964168 -27.7 0.961132 -27.71 0.951975 -27.72 0.936335 -27.73 0.913417 -27.74 0.883073 -27.75 0.845278 -27.76 0.799897 -27.77 0.746919 -27.78 0.686486 -27.79 0.618914 -27.8 0.544701 -27.81 0.464537 -27.82 0.378991 -27.83 0.289549 -27.84 0.197532 -27.85 0.104299 -27.86 0.0112931 -27.87 -0.0800047 -27.88 -0.168124 -27.89 -0.251653 -27.9 -0.32929 -27.91 -0.399159 -27.92 -0.46094 -27.93 -0.514001 -27.94 -0.557994 -27.95 -0.592864 -27.96 -0.618865 -27.97 -0.636552 -27.98 -0.646762 -27.99 -0.650513 -28 -0.648966 -28.01 -0.644111 -28.02 -0.637563 -28.03 -0.630975 -28.04 -0.625974 -28.05 -0.624097 -28.06 -0.626733 -28.07 -0.635067 -28.08 -0.65026 -28.09 -0.673205 -28.1 -0.703742 -28.11 -0.74179 -28.12 -0.786941 -28.13 -0.838477 -28.14 -0.895393 -28.15 -0.956444 -28.16 -1.02019 -28.17 -1.08501 -28.18 -1.14905 -28.19 -1.21058 -28.2 -1.26803 -28.21 -1.31991 -28.22 -1.36495 -28.23 -1.40207 -28.24 -1.43047 -28.25 -1.44964 -28.26 -1.45876 -28.27 -1.45829 -28.28 -1.44892 -28.29 -1.43132 -28.3 -1.40639 -28.31 -1.37516 -28.32 -1.3388 -28.33 -1.29852 -28.34 -1.25554 -28.35 -1.21097 -28.36 -1.16602 -28.37 -1.12154 -28.38 -1.07814 -28.39 -1.0362 -28.4 -0.995841 -28.41 -0.956908 -28.42 -0.919001 -28.43 -0.881475 -28.44 -0.843336 -28.45 -0.803496 -28.46 -0.760782 -28.47 -0.713957 -28.48 -0.661783 -28.49 -0.603078 -28.5 -0.53677 -28.51 -0.461956 -28.52 -0.377767 -28.53 -0.283215 -28.54 -0.17891 -28.55 -0.0650895 -28.56 0.0576917 -28.57 0.18856 -28.58 0.326339 -28.59 0.469578 -28.6 0.616581 -28.61 0.765448 -28.62 0.913884 -28.63 1.05966 -28.64 1.20061 -28.65 1.33462 -28.66 1.4597 -28.67 1.57399 -28.68 1.67585 -28.69 1.76391 -28.7 1.83627 -28.71 1.89221 -28.72 1.93201 -28.73 1.95564 -28.74 1.96338 -28.75 1.95586 -28.76 1.93399 -28.77 1.89891 -28.78 1.852 -28.79 1.79425 -28.8 1.7279 -28.81 1.65497 -28.82 1.57722 -28.83 1.49634 -28.84 1.41396 -28.85 1.33157 -28.86 1.25052 -28.87 1.17196 -28.88 1.09717 -28.89 1.02668 -28.9 0.960917 -28.91 0.900153 -28.92 0.844457 -28.93 0.793734 -28.94 0.747745 -28.95 0.70614 -28.96 0.668506 -28.97 0.63461 -28.98 0.60363 -28.99 0.575115 -29 0.548668 -29.01 0.523974 -29.02 0.500814 -29.03 0.479076 -29.04 0.458764 -29.05 0.440027 -29.06 0.423206 -29.07 0.408512 -29.08 0.396332 -29.09 0.387089 -29.1 0.38122 -29.11 0.379141 -29.12 0.381223 -29.13 0.387759 -29.14 0.399113 -29.15 0.415436 -29.16 0.436357 -29.17 0.461611 -29.18 0.490767 -29.19 0.523239 -29.2 0.558284 -29.21 0.595023 -29.22 0.632455 -29.23 0.669398 -29.24 0.704545 -29.25 0.736709 -29.26 0.764682 -29.27 0.787288 -29.28 0.803418 -29.29 0.812052 -29.3 0.812287 -29.31 0.803359 -29.32 0.783966 -29.33 0.754069 -29.34 0.713682 -29.35 0.66275 -29.36 0.601388 -29.37 0.529875 -29.38 0.448634 -29.39 0.358225 -29.4 0.259324 -29.41 0.152132 -29.42 0.0381649 -29.43 -0.0815836 -29.44 -0.206146 -29.45 -0.334528 -29.46 -0.465723 -29.47 -0.598724 -29.48 -0.732528 -29.49 -0.866135 -29.5 -0.99839 -29.51 -1.12838 -29.52 -1.25516 -29.53 -1.37785 -29.54 -1.49556 -29.55 -1.60744 -29.56 -1.71267 -29.57 -1.81045 -29.58 -1.89982 -29.59 -1.97959 -29.6 -2.04968 -29.61 -2.10951 -29.62 -2.15855 -29.63 -2.19636 -29.64 -2.2226 -29.65 -2.23699 -29.66 -2.23939 -29.67 -2.22929 -29.68 -2.20657 -29.69 -2.17209 -29.7 -2.12615 -29.71 -2.06916 -29.72 -2.00161 -29.73 -1.9241 -29.74 -1.83729 -29.75 -1.7419 -29.76 -1.63833 -29.77 -1.52762 -29.78 -1.4109 -29.79 -1.28903 -29.8 -1.16284 -29.81 -1.03319 -29.82 -0.900907 -29.83 -0.766794 -29.84 -0.631644 -29.85 -0.496262 -29.86 -0.361482 -29.87 -0.228035 -29.88 -0.0966341 -29.89 0.0320226 -29.9 0.157249 -29.91 0.278373 -29.92 0.394737 -29.93 0.505701 -29.94 0.610085 -29.95 0.707745 -29.96 0.798194 -29.97 0.880964 -29.98 0.955657 -29.99 1.02196 -30 1.07964 -30.01 1.12858 -30.02 1.1687 -30.03 1.19949 -30.04 1.22192 -30.05 1.23637 -30.06 1.24329 -30.07 1.24325 -30.08 1.23687 -30.09 1.22485 -30.1 1.20788 -30.11 1.18661 -30.12 1.16163 -30.13 1.13385 -30.14 1.1038 -30.15 1.07192 -30.16 1.03851 -30.17 1.00375 -30.18 0.96767 -30.19 0.930174 -30.2 0.890938 -30.21 0.84953 -30.22 0.805566 -30.23 0.758512 -30.24 0.707805 -30.25 0.652884 -30.26 0.593229 -30.27 0.528396 -30.28 0.458053 -30.29 0.381683 -30.3 0.299405 -30.31 0.211634 -30.32 0.118777 -30.33 0.0214471 -30.34 -0.079551 -30.35 -0.183232 -30.36 -0.288455 -30.37 -0.393954 -30.38 -0.49819 -30.39 -0.599678 -30.4 -0.697039 -30.41 -0.788918 -30.42 -0.874054 -30.43 -0.951312 -30.44 -1.01972 -30.45 -1.07849 -30.46 -1.12705 -30.47 -1.16409 -30.48 -1.19038 -30.49 -1.20607 -30.5 -1.21145 -30.51 -1.207 -30.52 -1.19329 -30.53 -1.17102 -30.54 -1.14092 -30.55 -1.10371 -30.56 -1.05977 -30.57 -1.01034 -30.58 -0.956058 -30.59 -0.897421 -30.6 -0.834842 -30.61 -0.768613 -30.62 -0.698925 -30.63 -0.625873 -30.64 -0.54939 -30.65 -0.469329 -30.66 -0.385879 -30.67 -0.299045 -30.68 -0.2089 -30.69 -0.115621 -30.7 -0.0195128 -30.71 0.0789599 -30.72 0.179161 -30.73 0.280265 -30.74 0.381124 -30.75 0.480491 -30.76 0.577013 -30.77 0.66923 -30.78 0.755611 -30.79 0.834604 -30.8 0.904689 -30.81 0.964432 -30.82 1.01179 -30.83 1.04589 -30.84 1.06634 -30.85 1.07267 -30.86 1.06477 -30.87 1.04284 -30.88 1.00751 -30.89 0.959743 -30.9 0.900871 -30.91 0.832002 -30.92 0.755861 -30.93 0.674855 -30.94 0.5914 -30.95 0.508006 -30.96 0.427217 -30.97 0.351525 -30.98 0.283303 -30.99 0.224733 -31 0.178933 -31.01 0.146546 -31.02 0.128696 -31.03 0.126118 -31.04 0.139109 -31.05 0.16752 -31.06 0.21076 -31.07 0.267812 -31.08 0.337405 -31.09 0.418228 -31.1 0.507177 -31.11 0.601863 -31.12 0.699723 -31.13 0.79809 -31.14 0.894262 -31.15 0.985571 -31.16 1.06945 -31.17 1.14313 -31.18 1.20383 -31.19 1.25034 -31.2 1.28113 -31.21 1.29503 -31.22 1.29124 -31.23 1.26933 -31.24 1.22926 -31.25 1.17134 -31.26 1.09549 -31.27 1.00286 -31.28 0.895581 -31.29 0.775224 -31.3 0.643563 -31.31 0.50252 -31.32 0.354121 -31.33 0.200449 -31.34 0.0436012 -31.35 -0.114296 -31.36 -0.271002 -31.37 -0.424615 -31.38 -0.573395 -31.39 -0.715754 -31.4 -0.850274 -31.41 -0.975713 -31.42 -1.09101 -31.43 -1.19527 -31.44 -1.28682 -31.45 -1.36582 -31.46 -1.43206 -31.47 -1.48526 -31.48 -1.52529 -31.49 -1.55207 -31.5 -1.56561 -31.51 -1.56599 -31.52 -1.5533 -31.53 -1.52656 -31.54 -1.48717 -31.55 -1.43536 -31.56 -1.37143 -31.57 -1.29571 -31.58 -1.20862 -31.59 -1.11062 -31.6 -1.0023 -31.61 -0.884204 -31.62 -0.756706 -31.63 -0.621518 -31.64 -0.479773 -31.65 -0.332767 -31.66 -0.181948 -31.67 -0.0289203 -31.68 0.124575 -31.69 0.276674 -31.7 0.425239 -31.71 0.567856 -31.72 0.70269 -31.73 0.827716 -31.74 0.940977 -31.75 1.04064 -31.76 1.12503 -31.77 1.1927 -31.78 1.24245 -31.79 1.27244 -31.8 1.28212 -31.81 1.27221 -31.82 1.24291 -31.83 1.19482 -31.84 1.12887 -31.85 1.04637 -31.86 0.948914 -31.87 0.838369 -31.88 0.716291 -31.89 0.585608 -31.9 0.44904 -31.91 0.309043 -31.92 0.16805 -31.93 0.0284178 -31.94 -0.107637 -31.95 -0.23808 -31.96 -0.361112 -31.97 -0.474385 -31.98 -0.577191 -31.99 -0.668785 -32 -0.74862 -32.01 -0.816458 -32.02 -0.872346 -32.03 -0.916603 -32.04 -0.949775 -32.05 -0.972582 -32.06 -0.985205 -32.07 -0.989586 -32.08 -0.986811 -32.09 -0.977977 -32.1 -0.964158 -32.11 -0.946367 -32.12 -0.925528 -32.13 -0.902456 -32.14 -0.877822 -32.15 -0.85217 -32.16 -0.825993 -32.17 -0.799547 -32.18 -0.772971 -32.19 -0.746301 -32.2 -0.719486 -32.21 -0.692411 -32.22 -0.664914 -32.23 -0.636781 -32.24 -0.607778 -32.25 -0.577762 -32.26 -0.546576 -32.27 -0.514097 -32.28 -0.480235 -32.29 -0.444942 -32.3 -0.408199 -32.31 -0.370022 -32.32 -0.330376 -32.33 -0.289332 -32.34 -0.247001 -32.35 -0.203432 -32.36 -0.158666 -32.37 -0.112726 -32.38 -0.0656177 -32.39 -0.0173356 -32.4 0.0321377 -32.41 0.0829017 -32.42 0.134916 -32.43 0.18813 -32.44 0.242485 -32.45 0.297867 -32.46 0.354093 -32.47 0.410901 -32.48 0.467935 -32.49 0.524741 -32.5 0.580645 -32.51 0.634976 -32.52 0.686976 -32.53 0.7358 -32.54 0.780543 -32.55 0.820267 -32.56 0.854021 -32.57 0.880873 -32.58 0.899896 -32.59 0.909521 -32.6 0.909779 -32.61 0.900164 -32.62 0.88034 -32.63 0.850166 -32.64 0.809713 -32.65 0.759268 -32.66 0.699342 -32.67 0.630496 -32.68 0.553392 -32.69 0.469804 -32.7 0.381049 -32.71 0.288567 -32.72 0.193893 -32.73 0.0986113 -32.74 0.004324 -32.75 -0.0873927 -32.76 -0.174819 -32.77 -0.256286 -32.78 -0.330785 -32.79 -0.397235 -32.8 -0.454745 -32.81 -0.502625 -32.82 -0.540401 -32.83 -0.567811 -32.84 -0.584807 -32.85 -0.591022 -32.86 -0.586995 -32.87 -0.57368 -32.88 -0.551761 -32.89 -0.522038 -32.9 -0.485396 -32.91 -0.442777 -32.92 -0.395156 -32.93 -0.343511 -32.94 -0.288658 -32.95 -0.231742 -32.96 -0.173683 -32.97 -0.115262 -32.98 -0.0571777 -32.99 -4.56003e-05 -33 0.0556027 -33.01 0.109318 -33.02 0.160726 -33.03 0.209283 -33.04 0.25493 -33.05 0.297501 -33.06 0.336848 -33.07 0.372849 -33.08 0.405399 -33.09 0.434408 -33.1 0.459792 -33.11 0.481445 -33.12 0.498997 -33.13 0.512701 -33.14 0.522509 -33.15 0.528394 -33.16 0.530358 -33.17 0.528442 -33.18 0.522734 -33.19 0.513376 -33.2 0.5005 -33.21 0.484277 -33.22 0.465307 -33.23 0.444028 -33.24 0.42095 -33.25 0.396646 -33.26 0.371743 -33.27 0.346909 -33.28 0.322837 -33.29 0.300312 -33.3 0.280127 -33.31 0.262834 -33.32 0.249003 -33.33 0.239112 -33.34 0.233533 -33.35 0.232507 -33.36 0.236131 -33.37 0.244343 -33.38 0.257137 -33.39 0.273974 -33.4 0.294097 -33.41 0.316757 -33.42 0.341068 -33.43 0.366021 -33.44 0.390518 -33.45 0.413391 -33.46 0.433439 -33.47 0.44909 -33.48 0.459268 -33.49 0.462985 -33.5 0.459271 -33.51 0.447299 -33.52 0.426403 -33.53 0.396108 -33.54 0.356139 -33.55 0.306434 -33.56 0.246352 -33.57 0.177103 -33.58 0.0993637 -33.59 0.0139454 -33.6 -0.0781746 -33.61 -0.175876 -33.62 -0.277923 -33.63 -0.382995 -33.64 -0.489715 -33.65 -0.596563 -33.66 -0.702027 -33.67 -0.804756 -33.68 -0.903455 -33.69 -0.996911 -33.7 -1.08401 -33.71 -1.16373 -33.72 -1.23517 -33.73 -1.29728 -33.74 -1.34893 -33.75 -1.39017 -33.76 -1.42055 -33.77 -1.43968 -33.78 -1.44728 -33.79 -1.44312 -33.8 -1.42702 -33.81 -1.39889 -33.82 -1.35815 -33.83 -1.30469 -33.84 -1.23919 -33.85 -1.16177 -33.86 -1.07264 -33.87 -0.97208 -33.88 -0.860483 -33.89 -0.738348 -33.9 -0.606304 -33.91 -0.464652 -33.92 -0.314642 -33.93 -0.157704 -33.94 0.00489026 -33.95 0.171712 -33.96 0.341188 -33.97 0.511612 -33.98 0.681168 -33.99 0.847949 -34 1.0095 -34.01 1.16391 -34.02 1.3093 -34.03 1.44378 -34.04 1.56555 -34.05 1.67295 -34.06 1.76449 -34.07 1.83887 -34.08 1.89506 -34.09 1.9305 -34.1 1.94628 -34.11 1.94227 -34.12 1.91855 -34.13 1.87547 -34.14 1.81364 -34.15 1.73389 -34.16 1.6373 -34.17 1.52494 -34.18 1.39742 -34.19 1.25756 -34.2 1.10702 -34.21 0.947524 -34.22 0.780845 -34.23 0.608758 -34.24 0.433025 -34.25 0.255378 -34.26 0.0775409 -34.27 -0.0986404 -34.28 -0.271634 -34.29 -0.439986 -34.3 -0.602327 -34.31 -0.757375 -34.32 -0.903935 -34.33 -1.0409 -34.34 -1.16728 -34.35 -1.28159 -34.36 -1.3829 -34.37 -1.47109 -34.38 -1.5456 -34.39 -1.60599 -34.4 -1.65195 -34.41 -1.68333 -34.42 -1.7001 -34.43 -1.70242 -34.44 -1.68977 -34.45 -1.66307 -34.46 -1.62345 -34.47 -1.57174 -34.48 -1.50891 -34.49 -1.43607 -34.5 -1.35444 -34.51 -1.26533 -34.52 -1.17013 -34.53 -1.07004 -34.54 -0.966912 -34.55 -0.862251 -34.56 -0.757436 -34.57 -0.653768 -34.58 -0.55245 -34.59 -0.454562 -34.6 -0.361049 -34.61 -0.272702 -34.62 -0.190731 -34.63 -0.1151 -34.64 -0.0460907 -34.65 0.0161556 -34.66 0.071627 -34.67 0.120427 -34.68 0.162752 -34.69 0.198877 -34.7 0.229048 -34.71 0.253317 -34.72 0.272513 -34.73 0.287006 -34.74 0.29715 -34.75 0.303273 -34.76 0.305669 -34.77 0.304604 -34.78 0.300311 -34.79 0.292914 -34.8 0.282538 -34.81 0.269558 -34.82 0.254169 -34.83 0.236587 -34.84 0.217055 -34.85 0.195856 -34.86 0.173311 -34.87 0.149791 -34.88 0.125704 -34.89 0.101564 -34.9 0.0778845 -34.91 0.0551749 -34.92 0.0339462 -34.93 0.0146976 -34.94 -0.00210132 -34.95 -0.0160273 -34.96 -0.0267194 -34.97 -0.033663 -34.98 -0.0367669 -34.99 -0.0360636 -35 -0.0315798 -35.01 -0.0234424 -35.02 -0.0118734 -35.03 0.00282019 -35.04 0.0202602 -35.05 0.0400138 -35.06 0.0617195 -35.07 0.0847366 -35.08 0.108573 -35.09 0.1328 -35.1 0.157042 -35.11 0.180998 -35.12 0.20445 -35.13 0.227276 -35.14 0.249451 -35.15 0.271013 -35.16 0.292207 -35.17 0.313298 -35.18 0.334611 -35.19 0.356515 -35.2 0.379397 -35.21 0.403644 -35.22 0.429611 -35.23 0.457646 -35.24 0.488126 -35.25 0.521013 -35.26 0.556311 -35.27 0.593903 -35.28 0.633546 -35.29 0.67487 -35.3 0.717382 -35.31 0.760479 -35.32 0.803429 -35.33 0.845333 -35.34 0.885359 -35.35 0.922637 -35.36 0.956298 -35.37 0.985499 -35.38 1.00945 -35.39 1.02742 -35.4 1.03881 -35.41 1.04272 -35.42 1.03877 -35.43 1.02708 -35.44 1.00755 -35.45 0.980262 -35.46 0.945421 -35.47 0.903366 -35.48 0.854561 -35.49 0.799578 -35.5 0.738779 -35.51 0.673199 -35.52 0.603811 -35.53 0.531476 -35.54 0.45708 -35.55 0.381514 -35.56 0.305664 -35.57 0.230394 -35.58 0.156536 -35.59 0.0851109 -35.6 0.0167536 -35.61 -0.0479131 -35.62 -0.108313 -35.63 -0.16395 -35.64 -0.214414 -35.65 -0.259382 -35.66 -0.298629 -35.67 -0.332002 -35.68 -0.358974 -35.69 -0.380158 -35.7 -0.395741 -35.71 -0.406009 -35.72 -0.41134 -35.73 -0.412199 -35.74 -0.409132 -35.75 -0.402754 -35.76 -0.393704 -35.77 -0.382682 -35.78 -0.370631 -35.79 -0.358319 -35.8 -0.346511 -35.81 -0.335944 -35.82 -0.327318 -35.83 -0.321271 -35.84 -0.318365 -35.85 -0.319216 -35.86 -0.324312 -35.87 -0.333675 -35.88 -0.347416 -35.89 -0.365524 -35.9 -0.387864 -35.91 -0.414182 -35.92 -0.444116 -35.93 -0.477198 -35.94 -0.512972 -35.95 -0.550701 -35.96 -0.589582 -35.97 -0.628881 -35.98 -0.667846 -35.99 -0.705723 -36 -0.741773 -36.01 -0.775284 -36.02 -0.80559 -36.03 -0.83178 -36.04 -0.853411 -36.05 -0.870111 -36.06 -0.881484 -36.07 -0.887205 -36.08 -0.887025 -36.09 -0.880768 -36.1 -0.868326 -36.11 -0.849661 -36.12 -0.824297 -36.13 -0.792789 -36.14 -0.755364 -36.15 -0.712242 -36.16 -0.663705 -36.17 -0.610092 -36.18 -0.551801 -36.19 -0.489292 -36.2 -0.423066 -36.21 -0.353516 -36.22 -0.281613 -36.23 -0.20807 -36.24 -0.13366 -36.25 -0.0592018 -36.26 0.0144469 -36.27 0.0863982 -36.28 0.15575 -36.29 0.221504 -36.3 0.282472 -36.31 0.338081 -36.32 0.387564 -36.33 0.430242 -36.34 0.465541 -36.35 0.493013 -36.36 0.512353 -36.37 0.523409 -36.38 0.525895 -36.39 0.5199 -36.4 0.506276 -36.41 0.485585 -36.42 0.458547 -36.43 0.426017 -36.44 0.38897 -36.45 0.348475 -36.46 0.305665 -36.47 0.261714 -36.48 0.217944 -36.49 0.175526 -36.5 0.135521 -36.51 0.0988886 -36.52 0.0664661 -36.53 0.0389415 -36.54 0.0168372 -36.55 0.000497058 -36.56 -0.00951411 -36.57 -0.0135274 -36.58 -0.0119343 -36.59 -0.00515757 -36.6 0.00622686 -36.61 0.0215103 -36.62 0.039875 -36.63 0.0604208 -36.64 0.0821929 -36.65 0.104148 -36.66 0.125212 -36.67 0.144448 -36.68 0.160982 -36.69 0.174025 -36.7 0.182887 -36.71 0.186996 -36.72 0.185905 -36.73 0.179252 -36.74 0.166422 -36.75 0.147867 -36.76 0.123699 -36.77 0.0941471 -36.78 0.0595497 -36.79 0.0203398 -36.8 -0.0229672 -36.81 -0.0697874 -36.82 -0.119535 -36.83 -0.17155 -36.84 -0.224933 -36.85 -0.278959 -36.86 -0.332903 -36.87 -0.386044 -36.88 -0.437676 -36.89 -0.487112 -36.9 -0.533693 -36.91 -0.576624 -36.92 -0.615191 -36.93 -0.649033 -36.94 -0.677645 -36.95 -0.700566 -36.96 -0.717387 -36.97 -0.72775 -36.98 -0.731356 -36.99 -0.727969 -37 -0.717014 -37.01 -0.69853 -37.02 -0.672777 -37.03 -0.639836 -37.04 -0.599871 -37.05 -0.553136 -37.06 -0.499974 -37.07 -0.440815 -37.08 -0.376177 -37.09 -0.306364 -37.1 -0.232378 -37.11 -0.155087 -37.12 -0.0753114 -37.13 0.00607752 -37.14 0.0881767 -37.15 0.170064 -37.16 0.250811 -37.17 0.329504 -37.18 0.404926 -37.19 0.476416 -37.2 0.543225 -37.21 0.604665 -37.22 0.660142 -37.23 0.709163 -37.24 0.751349 -37.25 0.786438 -37.26 0.814218 -37.27 0.834174 -37.28 0.847046 -37.29 0.853099 -37.3 0.852715 -37.31 0.846382 -37.32 0.834686 -37.33 0.818295 -37.34 0.797944 -37.35 0.774362 -37.36 0.748377 -37.37 0.721036 -37.38 0.693181 -37.39 0.665633 -37.4 0.639173 -37.41 0.61453 -37.42 0.592363 -37.43 0.573249 -37.44 0.557835 -37.45 0.546565 -37.46 0.5395 -37.47 0.536763 -37.48 0.53836 -37.49 0.544176 -37.5 0.553981 -37.51 0.567432 -37.52 0.584083 -37.53 0.603508 -37.54 0.624934 -37.55 0.647557 -37.56 0.670607 -37.57 0.693272 -37.58 0.714716 -37.59 0.734091 -37.6 0.750558 -37.61 0.763299 -37.62 0.771147 -37.63 0.773563 -37.64 0.769986 -37.65 0.759857 -37.66 0.742705 -37.67 0.718167 -37.68 0.685986 -37.69 0.646027 -37.7 0.598273 -37.71 0.542167 -37.72 0.478649 -37.73 0.408129 -37.74 0.331114 -37.75 0.248225 -37.76 0.160192 -37.77 0.0678409 -37.78 -0.0279159 -37.79 -0.126108 -37.8 -0.225668 -37.81 -0.325316 -37.82 -0.42393 -37.83 -0.520377 -37.84 -0.613539 -37.85 -0.702324 -37.86 -0.785687 -37.87 -0.862646 -37.88 -0.932062 -37.89 -0.992765 -37.9 -1.04455 -37.91 -1.08687 -37.92 -1.1193 -37.93 -1.14154 -37.94 -1.15347 -37.95 -1.15505 -37.96 -1.14644 -37.97 -1.12748 -37.98 -1.0986 -37.99 -1.06081 -38 -1.01477 -38.01 -0.961215 -38.02 -0.900973 -38.03 -0.834927 -38.04 -0.76401 -38.05 -0.68919 -38.06 -0.611337 -38.07 -0.53163 -38.08 -0.451136 -38.09 -0.370807 -38.1 -0.29156 -38.11 -0.214273 -38.12 -0.139775 -38.13 -0.0688442 -38.14 -0.00220069 -38.15 0.0590686 -38.16 0.114608 -38.17 0.163967 -38.18 0.206672 -38.19 0.242309 -38.2 0.270521 -38.21 0.29101 -38.22 0.303536 -38.23 0.307922 -38.24 0.303291 -38.25 0.290358 -38.26 0.269167 -38.27 0.239835 -38.28 0.202559 -38.29 0.157624 -38.3 0.1054 -38.31 0.0463531 -38.32 -0.0190451 -38.33 -0.0904117 -38.34 -0.166505 -38.35 -0.246474 -38.36 -0.329386 -38.37 -0.414238 -38.38 -0.499969 -38.39 -0.585471 -38.4 -0.669607 -38.41 -0.751112 -38.42 -0.828602 -38.43 -0.901131 -38.44 -0.967639 -38.45 -1.02713 -38.46 -1.0787 -38.47 -1.12154 -38.48 -1.15495 -38.49 -1.17837 -38.5 -1.19087 -38.51 -1.19215 -38.52 -1.18258 -38.53 -1.16219 -38.54 -1.13116 -38.55 -1.08978 -38.56 -1.03848 -38.57 -0.977824 -38.58 -0.908444 -38.59 -0.830633 -38.6 -0.745565 -38.61 -0.65436 -38.62 -0.557949 -38.63 -0.457294 -38.64 -0.353376 -38.65 -0.247182 -38.66 -0.139696 -38.67 -0.0318891 -38.68 0.075165 -38.69 0.180508 -38.7 0.283273 -38.71 0.382627 -38.72 0.477787 -38.73 0.568023 -38.74 0.652665 -38.75 0.731109 -38.76 0.802805 -38.77 0.866624 -38.78 0.922823 -38.79 0.971133 -38.8 1.01137 -38.81 1.04346 -38.82 1.06742 -38.83 1.08334 -38.84 1.09146 -38.85 1.09194 -38.86 1.08484 -38.87 1.07121 -38.88 1.05163 -38.89 1.02674 -38.9 0.997233 -38.91 0.963815 -38.92 0.927228 -38.93 0.888205 -38.94 0.847427 -38.95 0.80562 -38.96 0.763488 -38.97 0.721569 -38.98 0.680316 -38.99 0.640085 -39 0.601133 -39.01 0.563612 -39.02 0.527569 -39.03 0.493012 -39.04 0.45976 -39.05 0.427505 -39.06 0.39594 -39.07 0.364713 -39.08 0.333442 -39.09 0.30174 -39.1 0.269234 -39.11 0.235582 -39.12 0.20039 -39.13 0.163482 -39.14 0.124789 -39.15 0.0842985 -39.16 0.0421046 -39.17 -0.00158839 -39.18 -0.0464667 -39.19 -0.0921114 -39.2 -0.138007 -39.21 -0.183467 -39.22 -0.227774 -39.23 -0.270198 -39.24 -0.30997 -39.25 -0.346315 -39.26 -0.378468 -39.27 -0.405696 -39.28 -0.42732 -39.29 -0.442701 -39.3 -0.45071 -39.31 -0.451509 -39.32 -0.444819 -39.33 -0.430485 -39.34 -0.408482 -39.35 -0.378915 -39.36 -0.342018 -39.37 -0.298154 -39.38 -0.247688 -39.39 -0.19098 -39.4 -0.129208 -39.41 -0.063178 -39.42 0.00623689 -39.43 0.0781031 -39.44 0.151444 -39.45 0.225256 -39.46 0.298522 -39.47 0.370132 -39.48 0.43892 -39.49 0.504023 -39.5 0.56453 -39.51 0.619589 -39.52 0.66842 -39.53 0.710326 -39.54 0.744698 -39.55 0.771032 -39.56 0.788477 -39.57 0.796822 -39.58 0.796274 -39.59 0.786818 -39.6 0.768563 -39.61 0.741742 -39.62 0.706709 -39.63 0.663937 -39.64 0.614008 -39.65 0.557231 -39.66 0.494755 -39.67 0.427622 -39.68 0.356782 -39.69 0.283233 -39.7 0.208011 -39.71 0.132167 -39.72 0.0567531 -39.73 -0.0171988 -39.74 -0.0884087 -39.75 -0.156046 -39.76 -0.219285 -39.77 -0.277363 -39.78 -0.329623 -39.79 -0.375525 -39.8 -0.414649 -39.81 -0.446709 -39.82 -0.471505 -39.83 -0.488458 -39.84 -0.498337 -39.85 -0.501418 -39.86 -0.4981 -39.87 -0.488889 -39.88 -0.474392 -39.89 -0.455302 -39.9 -0.432377 -39.91 -0.406386 -39.92 -0.378167 -39.93 -0.348791 -39.94 -0.31912 -39.95 -0.289996 -39.96 -0.262219 -39.97 -0.236538 -39.98 -0.213633 -39.99 -0.194106 -40 -0.178632 -40.01 -0.16773 -40.02 -0.161473 -40.03 -0.160036 -40.04 -0.16349 -40.05 -0.171799 -40.06 -0.184823 -40.07 -0.202328 -40.08 -0.22399 -40.09 -0.249581 -40.1 -0.27851 -40.11 -0.310095 -40.12 -0.343756 -40.13 -0.378885 -40.14 -0.41486 -40.15 -0.451057 -40.16 -0.48686 -40.17 -0.521676 -40.18 -0.554797 -40.19 -0.585726 -40.2 -0.614037 -40.21 -0.639319 -40.22 -0.661219 -40.23 -0.679442 -40.24 -0.693753 -40.25 -0.703977 -40.26 -0.709991 -40.27 -0.711358 -40.28 -0.708399 -40.29 -0.701173 -40.3 -0.689745 -40.31 -0.674211 -40.32 -0.654693 -40.33 -0.631333 -40.34 -0.604288 -40.35 -0.573702 -40.36 -0.539527 -40.37 -0.502248 -40.38 -0.462068 -40.39 -0.4192 -40.4 -0.373866 -40.41 -0.326302 -40.42 -0.276755 -40.43 -0.225493 -40.44 -0.17277 -40.45 -0.118879 -40.46 -0.0642436 -40.47 -0.00921512 -40.48 0.0458333 -40.49 0.100509 -40.5 0.154403 -40.51 0.207091 -40.52 0.258143 -40.53 0.30702 -40.54 0.353208 -40.55 0.396397 -40.56 0.436182 -40.57 0.472184 -40.58 0.504054 -40.59 0.531479 -40.6 0.554189 -40.61 0.571963 -40.62 0.584335 -40.63 0.591286 -40.64 0.592952 -40.65 0.589343 -40.66 0.580526 -40.67 0.566623 -40.68 0.54781 -40.69 0.524313 -40.7 0.496408 -40.71 0.464148 -40.72 0.428148 -40.73 0.388897 -40.74 0.346837 -40.75 0.302439 -40.76 0.256197 -40.77 0.208631 -40.78 0.160276 -40.79 0.111682 -40.8 0.0634868 -40.81 0.0162757 -40.82 -0.0293892 -40.83 -0.072951 -40.84 -0.113867 -40.85 -0.151613 -40.86 -0.185696 -40.87 -0.215657 -40.88 -0.241027 -40.89 -0.261072 -40.9 -0.275882 -40.91 -0.285244 -40.92 -0.289024 -40.93 -0.28717 -40.94 -0.279721 -40.95 -0.266807 -40.96 -0.24865 -40.97 -0.22544 -40.98 -0.197459 -40.99 -0.165523 -41 -0.130202 -41.01 -0.0921265 -41.02 -0.0519709 -41.03 -0.0104436 -41.04 0.0317308 -41.05 0.0738271 -41.06 0.115072 -41.07 0.154702 -41.08 0.192145 -41.09 0.226853 -41.1 0.258355 -41.11 0.286268 -41.12 0.310304 -41.13 0.330275 -41.14 0.346092 -41.15 0.357532 -41.16 0.364832 -41.17 0.368349 -41.18 0.368378 -41.19 0.365282 -41.2 0.359479 -41.21 0.351425 -41.22 0.341606 -41.23 0.330518 -41.24 0.318638 -41.25 0.306535 -41.26 0.29467 -41.27 0.283455 -41.28 0.273254 -41.29 0.26438 -41.3 0.257085 -41.31 0.251564 -41.32 0.247946 -41.33 0.246479 -41.34 0.246988 -41.35 0.249406 -41.36 0.253613 -41.37 0.259442 -41.38 0.266679 -41.39 0.27507 -41.4 0.284325 -41.41 0.294125 -41.42 0.304101 -41.43 0.313845 -41.44 0.322978 -41.45 0.331115 -41.46 0.337869 -41.47 0.342864 -41.48 0.345738 -41.49 0.346153 -41.5 0.343711 -41.51 0.338017 -41.52 0.329041 -41.53 0.316634 -41.54 0.300714 -41.55 0.281271 -41.56 0.258377 -41.57 0.232185 -41.58 0.202935 -41.59 0.17085 -41.6 0.136398 -41.61 0.100213 -41.62 0.062876 -41.63 0.0250238 -41.64 -0.0126586 -41.65 -0.0494556 -41.66 -0.0846376 -41.67 -0.117481 -41.68 -0.147059 -41.69 -0.172745 -41.7 -0.194067 -41.71 -0.210544 -41.72 -0.221799 -41.73 -0.227576 -41.74 -0.22775 -41.75 -0.222332 -41.76 -0.211478 -41.77 -0.195122 -41.78 -0.174073 -41.79 -0.149001 -41.8 -0.120608 -41.81 -0.0896913 -41.82 -0.0571235 -41.83 -0.0238307 -41.84 0.00923154 -41.85 0.0411021 -41.86 0.0705603 -41.87 0.0968467 -41.88 0.119149 -41.89 0.136747 -41.9 0.149028 -41.91 0.155499 -41.92 0.155802 -41.93 0.149713 -41.94 0.137047 -41.95 0.11749 -41.96 0.091754 -41.97 0.0601787 -41.98 0.023212 -41.99 -0.0186025 -42 -0.0646416 -42.01 -0.114219 -42.02 -0.166604 -42.03 -0.221074 -42.04 -0.276809 -42.05 -0.332925 -42.06 -0.388684 -42.07 -0.443377 -42.08 -0.496346 -42.09 -0.54698 -42.1 -0.594733 -42.11 -0.639119 -42.12 -0.679525 -42.13 -0.715575 -42.14 -0.747175 -42.15 -0.774122 -42.16 -0.796275 -42.17 -0.81355 -42.18 -0.82592 -42.19 -0.833402 -42.2 -0.836063 -42.21 -0.833717 -42.22 -0.826684 -42.23 -0.815276 -42.24 -0.799696 -42.25 -0.780166 -42.26 -0.756927 -42.27 -0.730232 -42.28 -0.700348 -42.29 -0.667549 -42.3 -0.631927 -42.31 -0.593964 -42.32 -0.553979 -42.33 -0.512255 -42.34 -0.469071 -42.35 -0.424706 -42.36 -0.379434 -42.37 -0.333525 -42.38 -0.287245 -42.39 -0.240872 -42.4 -0.194696 -42.41 -0.148975 -42.42 -0.103966 -42.43 -0.059924 -42.44 -0.0171049 -42.45 0.0242371 -42.46 0.0638493 -42.47 0.101442 -42.48 0.136621 -42.49 0.169303 -42.5 0.19927 -42.51 0.226318 -42.52 0.250271 -42.53 0.270979 -42.54 0.288328 -42.55 0.302247 -42.56 0.312594 -42.57 0.319323 -42.58 0.322735 -42.59 0.322988 -42.6 0.320303 -42.61 0.314965 -42.62 0.307314 -42.63 0.297751 -42.64 0.286721 -42.65 0.274692 -42.66 0.262255 -42.67 0.249991 -42.68 0.238442 -42.69 0.228141 -42.7 0.219595 -42.71 0.21327 -42.72 0.209581 -42.73 0.208875 -42.74 0.211649 -42.75 0.217968 -42.76 0.227815 -42.77 0.241164 -42.78 0.257889 -42.79 0.277772 -42.8 0.300502 -42.81 0.325687 -42.82 0.352862 -42.83 0.381574 -42.84 0.411093 -42.85 0.440798 -42.86 0.470069 -42.87 0.498294 -42.88 0.52488 -42.89 0.549266 -42.9 0.57094 -42.91 0.589431 -42.92 0.604029 -42.93 0.61472 -42.94 0.621289 -42.95 0.623599 -42.96 0.621593 -42.97 0.615287 -42.98 0.60477 -42.99 0.590192 -43 0.571683 -43.01 0.549342 -43.02 0.523734 -43.03 0.495176 -43.04 0.463994 -43.05 0.430522 -43.06 0.395086 -43.07 0.358 -43.08 0.319562 -43.09 0.280014 -43.1 0.239612 -43.11 0.198626 -43.12 0.157237 -43.13 0.115598 -43.14 0.0738367 -43.15 0.0320559 -43.16 -0.00965953 -43.17 -0.0512394 -43.18 -0.0926098 -43.19 -0.133709 -43.2 -0.174485 -43.21 -0.214868 -43.22 -0.254775 -43.23 -0.294102 -43.24 -0.332721 -43.25 -0.370477 -43.26 -0.407185 -43.27 -0.442519 -43.28 -0.476252 -43.29 -0.50812 -43.3 -0.537795 -43.31 -0.564921 -43.32 -0.589116 -43.33 -0.609982 -43.34 -0.627108 -43.35 -0.640078 -43.36 -0.64807 -43.37 -0.651007 -43.38 -0.648575 -43.39 -0.640465 -43.4 -0.626422 -43.41 -0.60626 -43.42 -0.579871 -43.43 -0.547236 -43.44 -0.508391 -43.45 -0.463079 -43.46 -0.412141 -43.47 -0.356008 -43.48 -0.295217 -43.49 -0.230415 -43.5 -0.162344 -43.51 -0.09184 -43.52 -0.0198101 -43.53 0.0527629 -43.54 0.124732 -43.55 0.195029 -43.56 0.262617 -43.57 0.326485 -43.58 0.385664 -43.59 0.439256 -43.6 0.486445 -43.61 0.526522 -43.62 0.558578 -43.63 0.581995 -43.64 0.596909 -43.65 0.603188 -43.66 0.600849 -43.67 0.590062 -43.68 0.57114 -43.69 0.544532 -43.7 0.510814 -43.71 0.470367 -43.72 0.424183 -43.73 0.37338 -43.74 0.318889 -43.75 0.261681 -43.76 0.202744 -43.77 0.143066 -43.78 0.0836188 -43.79 0.0253428 -43.8 -0.0306645 -43.81 -0.0835952 -43.82 -0.132751 -43.83 -0.177464 -43.84 -0.217157 -43.85 -0.251341 -43.86 -0.279624 -43.87 -0.301708 -43.88 -0.317395 -43.89 -0.326022 -43.9 -0.328114 -43.91 -0.323819 -43.92 -0.313335 -43.93 -0.296941 -43.94 -0.275001 -43.95 -0.247953 -43.96 -0.216308 -43.97 -0.180607 -43.98 -0.141299 -43.99 -0.0993988 -44 -0.0556342 -44.01 -0.0107597 -44.02 0.0344534 -44.03 0.0792283 -44.04 0.122795 -44.05 0.164403 -44.06 0.203246 -44.07 0.238442 -44.08 0.269572 -44.09 0.296103 -44.1 0.317578 -44.11 0.333631 -44.12 0.343988 -44.13 0.348471 -44.14 0.347006 -44.15 0.339377 -44.16 0.325672 -44.17 0.306426 -44.18 0.281956 -44.19 0.252652 -44.2 0.218964 -44.21 0.181397 -44.22 0.140492 -44.23 0.096818 -44.24 0.0508647 -44.25 0.00332636 -44.26 -0.0451542 -44.27 -0.0940319 -44.28 -0.142792 -44.29 -0.190957 -44.3 -0.238088 -44.31 -0.283793 -44.32 -0.32772 -44.33 -0.369394 -44.34 -0.408639 -44.35 -0.44528 -44.36 -0.479132 -44.37 -0.510038 -44.38 -0.537869 -44.39 -0.562514 -44.4 -0.583879 -44.41 -0.601888 -44.42 -0.616165 -44.43 -0.626944 -44.44 -0.634197 -44.45 -0.637898 -44.46 -0.638035 -44.47 -0.634612 -44.48 -0.627652 -44.49 -0.617203 -44.5 -0.603297 -44.51 -0.585815 -44.52 -0.565165 -44.53 -0.541507 -44.54 -0.51503 -44.55 -0.485949 -44.56 -0.454502 -44.57 -0.420945 -44.58 -0.385549 -44.59 -0.348563 -44.6 -0.310255 -44.61 -0.271006 -44.62 -0.231089 -44.63 -0.190762 -44.64 -0.150268 -44.65 -0.109825 -44.66 -0.0696294 -44.67 -0.0298511 -44.68 0.00933451 -44.69 0.0477898 -44.7 0.0854478 -44.71 0.12223 -44.72 0.15807 -44.73 0.192912 -44.74 0.226701 -44.75 0.259382 -44.76 0.290893 -44.77 0.321086 -44.78 0.349896 -44.79 0.377264 -44.8 0.403072 -44.81 0.427186 -44.82 0.44946 -44.83 0.469737 -44.84 0.487851 -44.85 0.503636 -44.86 0.516727 -44.87 0.527095 -44.88 0.534642 -44.89 0.539244 -44.9 0.540803 -44.91 0.539246 -44.92 0.534531 -44.93 0.52665 -44.94 0.515629 -44.95 0.50126 -44.96 0.483928 -44.97 0.463776 -44.98 0.440978 -44.99 0.415736 -45 0.388282 -45.01 0.358872 -45.02 0.327785 -45.03 0.295309 -45.04 0.261728 -45.05 0.227483 -45.06 0.192925 -45.07 0.158413 -45.08 0.124316 -45.09 0.0910079 -45.1 0.0588636 -45.11 0.0282578 -45.12 -0.000371337 -45.13 -0.0265513 -45.14 -0.0500643 -45.15 -0.0705927 -45.16 -0.0878486 -45.17 -0.101581 -45.18 -0.111582 -45.19 -0.117696 -45.2 -0.119826 -45.21 -0.117761 -45.22 -0.11155 -45.23 -0.101517 -45.24 -0.0878751 -45.25 -0.0709183 -45.26 -0.0510191 -45.27 -0.0286242 -45.28 -0.0042486 -45.29 0.0215332 -45.3 0.0481047 -45.31 0.0747079 -45.32 0.10064 -45.33 0.125218 -45.34 0.147779 -45.35 0.167692 -45.36 0.184376 -45.37 0.197319 -45.38 0.20609 -45.39 0.209982 -45.4 0.209037 -45.41 0.203228 -45.42 0.192572 -45.43 0.177202 -45.44 0.157363 -45.45 0.133404 -45.46 0.10577 -45.47 0.074985 -45.48 0.0414742 -45.49 0.00617465 -45.5 -0.0302267 -45.51 -0.0670308 -45.52 -0.103545 -45.53 -0.139099 -45.54 -0.173062 -45.55 -0.204857 -45.56 -0.233918 -45.57 -0.259586 -45.58 -0.281734 -45.59 -0.300114 -45.6 -0.314567 -45.61 -0.325019 -45.62 -0.331483 -45.63 -0.334046 -45.64 -0.332869 -45.65 -0.32807 -45.66 -0.319869 -45.67 -0.308801 -45.68 -0.295219 -45.69 -0.279495 -45.7 -0.262012 -45.71 -0.243151 -45.72 -0.223284 -45.73 -0.202769 -45.74 -0.181942 -45.75 -0.161148 -45.76 -0.140667 -45.77 -0.120735 -45.78 -0.101549 -45.79 -0.0832705 -45.8 -0.0660207 -45.81 -0.0498848 -45.82 -0.0349112 -45.83 -0.0211869 -45.84 -0.00864494 -45.85 0.00280404 -45.86 0.0132417 -45.87 0.022772 -45.88 0.0315174 -45.89 0.0396138 -45.9 0.0472066 -45.91 0.0544449 -45.92 0.0614713 -45.93 0.0684516 -45.94 0.0755133 -45.95 0.0827628 -45.96 0.0902828 -45.97 0.0981289 -45.98 0.106325 -45.99 0.114863 -46 0.123699 -46.01 0.132763 -46.02 0.141906 -46.03 0.150979 -46.04 0.159802 -46.05 0.168176 -46.06 0.175886 -46.07 0.182709 -46.08 0.188423 -46.09 0.192782 -46.1 0.195488 -46.11 0.196474 -46.12 0.195606 -46.13 0.192793 -46.14 0.187985 -46.15 0.181185 -46.16 0.172441 -46.17 0.161856 -46.18 0.149526 -46.19 0.135638 -46.2 0.120529 -46.21 0.104469 -46.22 0.0877522 -46.23 0.0706828 -46.24 0.0535697 -46.25 0.0367146 -46.26 0.0204028 -46.27 0.00494678 -46.28 -0.00941104 -46.29 -0.0225293 -46.3 -0.0342781 -46.31 -0.0445772 -46.32 -0.0533972 -46.33 -0.0607596 -46.34 -0.066734 -46.35 -0.0714355 -46.36 -0.0749574 -46.37 -0.0775567 -46.38 -0.0794821 -46.39 -0.08097 -46.4 -0.0822661 -46.41 -0.0836165 -46.42 -0.0852609 -46.43 -0.0874252 -46.44 -0.0903151 -46.45 -0.0941979 -46.46 -0.0991669 -46.47 -0.105321 -46.48 -0.112734 -46.49 -0.121439 -46.5 -0.131435 -46.51 -0.142682 -46.52 -0.155103 -46.53 -0.168593 -46.54 -0.183067 -46.55 -0.198254 -46.56 -0.213948 -46.57 -0.229917 -46.58 -0.245911 -46.59 -0.261659 -46.6 -0.276877 -46.61 -0.291271 -46.62 -0.304509 -46.63 -0.316181 -46.64 -0.326069 -46.65 -0.33388 -46.66 -0.339332 -46.67 -0.342165 -46.68 -0.342141 -46.69 -0.339054 -46.7 -0.332733 -46.71 -0.322922 -46.72 -0.309475 -46.73 -0.292562 -46.74 -0.272223 -46.75 -0.248557 -46.76 -0.221722 -46.77 -0.191937 -46.78 -0.159478 -46.79 -0.124676 -46.8 -0.0878303 -46.81 -0.0494458 -46.82 -0.0100645 -46.83 0.0298228 -46.84 0.0697107 -46.85 0.109089 -46.86 0.147454 -46.87 0.184318 -46.88 0.219217 -46.89 0.251534 -46.9 0.280959 -46.91 0.307226 -46.92 0.330069 -46.93 0.349279 -46.94 0.364705 -46.95 0.37626 -46.96 0.383911 -46.97 0.387685 -46.98 0.387344 -46.99 0.383319 -47 0.37581 -47.01 0.36502 -47.02 0.351181 -47.03 0.334546 -47.04 0.315383 -47.05 0.293973 -47.06 0.270592 -47.07 0.245437 -47.08 0.218965 -47.09 0.191474 -47.1 0.163261 -47.11 0.134623 -47.12 0.105853 -47.13 0.0772445 -47.14 0.0490862 -47.15 0.0216876 -47.16 -0.0045968 -47.17 -0.029552 -47.18 -0.0529221 -47.19 -0.074467 -47.2 -0.0939675 -47.21 -0.11123 -47.22 -0.126091 -47.23 -0.138422 -47.24 -0.14803 -47.25 -0.154837 -47.26 -0.158997 -47.27 -0.160575 -47.28 -0.159685 -47.29 -0.156493 -47.3 -0.151209 -47.31 -0.144085 -47.32 -0.135409 -47.33 -0.125449 -47.34 -0.114604 -47.35 -0.103264 -47.36 -0.0917705 -47.37 -0.0804533 -47.38 -0.0696163 -47.39 -0.0595295 -47.4 -0.0504205 -47.41 -0.0424672 -47.42 -0.0358874 -47.43 -0.0306792 -47.44 -0.0268043 -47.45 -0.0241938 -47.46 -0.0227232 -47.47 -0.0222182 -47.48 -0.0224623 -47.49 -0.0232048 -47.5 -0.0241713 -47.51 -0.0250434 -47.52 -0.0255136 -47.53 -0.0253057 -47.54 -0.0241645 -47.55 -0.0218664 -47.56 -0.0182265 -47.57 -0.0131054 -47.58 -0.00641376 -47.59 0.00190075 -47.6 0.0119286 -47.61 0.0234554 -47.62 0.0363503 -47.63 0.0504381 -47.64 0.0655058 -47.65 0.0813089 -47.66 0.0975795 -47.67 0.114034 -47.68 0.130371 -47.69 0.146254 -47.7 0.161413 -47.71 0.175586 -47.72 0.188534 -47.73 0.200045 -47.74 0.209938 -47.75 0.218066 -47.76 0.224318 -47.77 0.228537 -47.78 0.230665 -47.79 0.230808 -47.8 0.229003 -47.81 0.225322 -47.82 0.219863 -47.83 0.212752 -47.84 0.204136 -47.85 0.194184 -47.86 0.183023 -47.87 0.170899 -47.88 0.15806 -47.89 0.144715 -47.9 0.131077 -47.91 0.117352 -47.92 0.103741 -47.93 0.090434 -47.94 0.0776056 -47.95 0.0654688 -47.96 0.0541331 -47.97 0.0436901 -47.98 0.0342164 -47.99 0.0257592 -48 0.018336 -48.01 0.0119341 -48.02 0.00651163 -48.03 0.00199949 -48.04 -0.00163366 -48.05 -0.0045843 -48.06 -0.00698887 -48.07 -0.00899066 -48.08 -0.0107366 -48.09 -0.0123713 -48.1 -0.0140306 -48.11 -0.0158361 -48.12 -0.0178933 -48.13 -0.020306 -48.14 -0.0230946 -48.15 -0.0262696 -48.16 -0.0298092 -48.17 -0.0336606 -48.18 -0.0377418 -48.19 -0.0419457 -48.2 -0.0461447 -48.21 -0.0501882 -48.22 -0.0538998 -48.23 -0.0571433 -48.24 -0.0597824 -48.25 -0.0616994 -48.26 -0.0628025 -48.27 -0.0630324 -48.28 -0.0623673 -48.29 -0.0608275 -48.3 -0.0584464 -48.31 -0.0553489 -48.32 -0.0517353 -48.33 -0.0478062 -48.34 -0.0437957 -48.35 -0.0399644 -48.36 -0.0365918 -48.37 -0.0339669 -48.38 -0.0323788 -48.39 -0.0322011 -48.4 -0.0336824 -48.41 -0.037001 -48.42 -0.0423397 -48.43 -0.0498356 -48.44 -0.0595741 -48.45 -0.0715861 -48.46 -0.0858455 -48.47 -0.102269 -48.48 -0.120857 -48.49 -0.141274 -48.5 -0.163238 -48.51 -0.186462 -48.52 -0.210625 -48.53 -0.23538 -48.54 -0.260365 -48.55 -0.285206 -48.56 -0.309528 -48.57 -0.332847 -48.58 -0.35486 -48.59 -0.375233 -48.6 -0.393653 -48.61 -0.409834 -48.62 -0.42352 -48.63 -0.434485 -48.64 -0.442538 -48.65 -0.447472 -48.66 -0.448951 -48.67 -0.44713 -48.68 -0.441956 -48.69 -0.433409 -48.7 -0.4215 -48.71 -0.40627 -48.72 -0.387794 -48.73 -0.366173 -48.74 -0.341457 -48.75 -0.313742 -48.76 -0.283414 -48.77 -0.250702 -48.78 -0.215864 -48.79 -0.179184 -48.8 -0.140968 -48.81 -0.101546 -48.82 -0.0612646 -48.83 -0.0204779 -48.84 0.0203966 -48.85 0.0609645 -48.86 0.100855 -48.87 0.139705 -48.88 0.177168 -48.89 0.212915 -48.9 0.246642 -48.91 0.278075 -48.92 0.306802 -48.93 0.332683 -48.94 0.355638 -48.95 0.37555 -48.96 0.392341 -48.97 0.405969 -48.98 0.416433 -48.99 0.423761 -49 0.428013 -49.01 0.429052 -49.02 0.427187 -49.03 0.422593 -49.04 0.415411 -49.05 0.405795 -49.06 0.393902 -49.07 0.379895 -49.08 0.363938 -49.09 0.346195 -49.1 0.326699 -49.11 0.305774 -49.12 0.283586 -49.13 0.2603 -49.14 0.236084 -49.15 0.21111 -49.16 0.185553 -49.17 0.159594 -49.18 0.133421 -49.19 0.107245 -49.2 0.0812782 -49.21 0.0557246 -49.22 0.0307892 -49.23 0.00667768 -49.24 -0.0164064 -49.25 -0.0382643 -49.26 -0.0587051 -49.27 -0.0774903 -49.28 -0.0943889 -49.29 -0.109352 -49.3 -0.122252 -49.31 -0.132984 -49.32 -0.141466 -49.33 -0.14764 -49.34 -0.151472 -49.35 -0.152951 -49.36 -0.151982 -49.37 -0.148622 -49.38 -0.143041 -49.39 -0.135328 -49.4 -0.125592 -49.41 -0.113963 -49.42 -0.10059 -49.43 -0.0856403 -49.44 -0.0692987 -49.45 -0.0517048 -49.46 -0.033146 -49.47 -0.013893 -49.48 0.00580136 -49.49 0.0256704 -49.5 0.0454351 -49.51 0.0648062 -49.52 0.083487 -49.53 0.101176 -49.54 0.117446 -49.55 0.132061 -49.56 0.144755 -49.57 0.155262 -49.58 0.163342 -49.59 0.168784 -49.6 0.171415 -49.61 0.171106 -49.62 0.167766 -49.63 0.161115 -49.64 0.151469 -49.65 0.138938 -49.66 0.123693 -49.67 0.105967 -49.68 0.0860513 -49.69 0.0642896 -49.7 0.0410747 -49.71 0.0168285 -49.72 -0.00796439 -49.73 -0.0327481 -49.74 -0.0570301 -49.75 -0.0803229 -49.76 -0.102156 -49.77 -0.122086 -49.78 -0.13971 -49.79 -0.154669 -49.8 -0.166552 -49.81 -0.175027 -49.82 -0.180112 -49.83 -0.181722 -49.84 -0.179843 -49.85 -0.174528 -49.86 -0.165899 -49.87 -0.154139 -49.88 -0.139485 -49.89 -0.122109 -49.9 -0.102407 -49.91 -0.0808508 -49.92 -0.0578284 -49.93 -0.0337403 -49.94 -0.00899224 -49.95 0.0160118 -49.96 0.0408769 -49.97 0.0652227 -49.98 0.0886073 -49.99 0.1107 -50 0.131223 -50.01 0.149906 -50.02 0.166512 -50.03 0.180839 -50.04 0.19272 -50.05 0.202025 -50.06 0.208662 -50.07 0.21235 -50.08 0.213275 -50.09 0.211496 -50.1 0.207082 -50.11 0.200142 -50.12 0.190822 -50.13 0.179307 -50.14 0.165814 -50.15 0.150588 -50.16 0.133824 -50.17 0.115983 -50.18 0.0973978 -50.19 0.0784172 -50.2 0.0593974 -50.21 0.0406953 -50.22 0.0226603 -50.23 0.00562688 -50.24 -0.0100588 -50.25 -0.0240132 -50.26 -0.0361009 -50.27 -0.0461377 -50.28 -0.0539914 -50.29 -0.0595858 -50.3 -0.0629035 -50.31 -0.0639864 -50.32 -0.0629352 -50.33 -0.0598406 -50.34 -0.0549115 -50.35 -0.0485198 -50.36 -0.0409669 -50.37 -0.0325832 -50.38 -0.0237183 -50.39 -0.0147318 -50.4 -0.00598374 -50.41 0.00217524 -50.42 0.00934647 -50.43 0.015205 -50.44 0.0195245 -50.45 0.0220812 -50.46 0.0226964 -50.47 0.0212381 -50.48 0.0176227 -50.49 0.0118146 -50.5 0.00382467 -50.51 -0.0064327 -50.52 -0.0187498 -50.53 -0.0329386 -50.54 -0.0488307 -50.55 -0.0662324 -50.56 -0.0849301 -50.57 -0.104695 -50.58 -0.125289 -50.59 -0.146464 -50.6 -0.167981 -50.61 -0.189544 -50.62 -0.210907 -50.63 -0.231832 -50.64 -0.252088 -50.65 -0.271454 -50.66 -0.289719 -50.67 -0.306685 -50.68 -0.322154 -50.69 -0.335815 -50.7 -0.347648 -50.71 -0.357524 -50.72 -0.365335 -50.73 -0.370999 -50.74 -0.374455 -50.75 -0.375672 -50.76 -0.374648 -50.77 -0.371354 -50.78 -0.36576 -50.79 -0.358108 -50.8 -0.348516 -50.81 -0.337125 -50.82 -0.324101 -50.83 -0.309626 -50.84 -0.293895 -50.85 -0.277113 -50.86 -0.25946 -50.87 -0.241155 -50.88 -0.222433 -50.89 -0.20347 -50.9 -0.184422 -50.91 -0.165424 -50.92 -0.146582 -50.93 -0.127975 -50.94 -0.109653 -50.95 -0.0916585 -50.96 -0.073979 -50.97 -0.0565752 -50.98 -0.0394017 -50.99 -0.0224016 -51 -0.00551164 -51.01 0.011332 -51.02 0.0281884 -51.03 0.0451066 -51.04 0.0621295 -51.05 0.0792675 -51.06 0.0965096 -51.07 0.113825 -51.08 0.131162 -51.09 0.148449 -51.1 0.165596 -51.11 0.182501 -51.12 0.199053 -51.13 0.215086 -51.14 0.230515 -51.15 0.245241 -51.16 0.25917 -51.17 0.27223 -51.18 0.284365 -51.19 0.295543 -51.2 0.305755 -51.21 0.315001 -51.22 0.323254 -51.23 0.330642 -51.24 0.337227 -51.25 0.343078 -51.26 0.348259 -51.27 0.352832 -51.28 0.356844 -51.29 0.360322 -51.3 0.363258 -51.31 0.365604 -51.32 0.367335 -51.33 0.368364 -51.34 0.368575 -51.35 0.367824 -51.36 0.365948 -51.37 0.362767 -51.38 0.358091 -51.39 0.351652 -51.4 0.343232 -51.41 0.332757 -51.42 0.320095 -51.43 0.305149 -51.44 0.287865 -51.45 0.268235 -51.46 0.246307 -51.47 0.222183 -51.48 0.195914 -51.49 0.167792 -51.5 0.138164 -51.51 0.107352 -51.52 0.0757151 -51.53 0.0436477 -51.54 0.0115646 -51.55 -0.0201056 -51.56 -0.0509313 -51.57 -0.0803628 -51.58 -0.108026 -51.59 -0.133568 -51.6 -0.15665 -51.61 -0.176972 -51.62 -0.194285 -51.63 -0.208392 -51.64 -0.219149 -51.65 -0.226474 -51.66 -0.23003 -51.67 -0.23016 -51.68 -0.226971 -51.69 -0.220612 -51.7 -0.211278 -51.71 -0.199209 -51.72 -0.184682 -51.73 -0.168007 -51.74 -0.149503 -51.75 -0.129469 -51.76 -0.108421 -51.77 -0.0867437 -51.78 -0.0648237 -51.79 -0.0430431 -51.8 -0.0217752 -51.81 -0.0013775 -51.82 0.0178125 -51.83 0.0354312 -51.84 0.0511075 -51.85 0.0647041 -51.86 0.0760248 -51.87 0.0849169 -51.88 0.091274 -51.89 0.0950376 -51.9 0.0961986 -51.91 0.0947965 -51.92 0.0908149 -51.93 0.0844019 -51.94 0.0758606 -51.95 0.0654131 -51.96 0.0533135 -51.97 0.0398412 -51.98 0.0252942 -51.99 0.00998201 -52 -0.00578204 -52.01 -0.021678 -52.02 -0.0373722 -52.03 -0.0525848 -52.04 -0.0670643 -52.05 -0.0805892 -52.06 -0.0929711 -52.07 -0.104058 -52.08 -0.113733 -52.09 -0.12192 -52.1 -0.128459 -52.11 -0.133435 -52.12 -0.136902 -52.13 -0.138912 -52.14 -0.139538 -52.15 -0.138866 -52.16 -0.136995 -52.17 -0.134029 -52.18 -0.130072 -52.19 -0.125155 -52.2 -0.119464 -52.21 -0.113088 -52.22 -0.106109 -52.23 -0.0986005 -52.24 -0.0906307 -52.25 -0.0822619 -52.26 -0.073554 -52.27 -0.0645637 -52.28 -0.055347 -52.29 -0.0459939 -52.3 -0.0365816 -52.31 -0.0271968 -52.32 -0.0179366 -52.33 -0.00890868 -52.34 -0.000230278 -52.35 0.00797325 -52.36 0.0155477 -52.37 0.0223224 -52.38 0.0282047 -52.39 0.0330707 -52.4 0.0368076 -52.41 0.0393182 -52.42 0.040525 -52.43 0.0403735 -52.44 0.0388351 -52.45 0.0358453 -52.46 0.0314415 -52.47 0.0257501 -52.48 0.0188615 -52.49 0.0108908 -52.5 0.00197475 -52.51 -0.0077326 -52.52 -0.018064 -52.53 -0.0288441 -52.54 -0.0398995 -52.55 -0.0510259 -52.56 -0.0620466 -52.57 -0.0728036 -52.58 -0.0831524 -52.59 -0.092965 -52.6 -0.10213 -52.61 -0.110556 -52.62 -0.118167 -52.63 -0.124832 -52.64 -0.130563 -52.65 -0.135343 -52.66 -0.139154 -52.67 -0.141984 -52.68 -0.143827 -52.69 -0.14468 -52.7 -0.144542 -52.71 -0.143409 -52.72 -0.141194 -52.73 -0.137989 -52.74 -0.133798 -52.75 -0.128628 -52.76 -0.122496 -52.77 -0.115426 -52.78 -0.107453 -52.79 -0.0986278 -52.8 -0.089002 -52.81 -0.0786291 -52.82 -0.067672 -52.83 -0.056253 -52.84 -0.0445113 -52.85 -0.0326001 -52.86 -0.0206841 -52.87 -0.00893533 -52.88 0.00247108 -52.89 0.0133392 -52.9 0.0234683 -52.91 0.0327416 -52.92 0.0410298 -52.93 0.0482275 -52.94 0.0542573 -52.95 0.0590727 -52.96 0.0626595 -52.97 0.0650373 -52.98 0.0662058 -52.99 0.0662695 -53 0.0653956 -53.01 0.0637244 -53.02 0.0614144 -53.03 0.0586358 -53.04 0.0555652 -53.05 0.052379 -53.06 0.0492476 -53.07 0.0463526 -53.08 0.0438397 -53.09 0.0418172 -53.1 0.0403752 -53.11 0.0395766 -53.12 0.0394566 -53.13 0.0400234 -53.14 0.0412592 -53.15 0.0431224 -53.16 0.0455908 -53.17 0.0485375 -53.18 0.051863 -53.19 0.0554672 -53.2 0.059247 -53.21 0.0631007 -53.22 0.0669312 -53.23 0.0706489 -53.24 0.0741734 -53.25 0.07741 -53.26 0.0803246 -53.27 0.082878 -53.28 0.0850434 -53.29 0.0868051 -53.3 0.0881577 -53.31 0.0891036 -53.32 0.0896525 -53.33 0.0898113 -53.34 0.0895811 -53.35 0.0890102 -53.36 0.0881202 -53.37 0.0869339 -53.38 0.0854746 -53.39 0.0837669 -53.4 0.0818369 -53.41 0.0797129 -53.42 0.0774224 -53.43 0.0750036 -53.44 0.0725076 -53.45 0.0699823 -53.46 0.0674814 -53.47 0.065064 -53.48 0.0627943 -53.49 0.0607401 -53.5 0.0589716 -53.51 0.0575811 -53.52 0.056641 -53.53 0.0561986 -53.54 0.0563087 -53.55 0.0570156 -53.56 0.0583509 -53.57 0.0603314 -53.58 0.0629574 -53.59 0.0662115 -53.6 0.0700942 -53.61 0.0745177 -53.62 0.0793914 -53.63 0.0846227 -53.64 0.0901047 -53.65 0.0957178 -53.66 0.101333 -53.67 0.106814 -53.68 0.112021 -53.69 0.116767 -53.7 0.120932 -53.71 0.124386 -53.72 0.127005 -53.73 0.128672 -53.74 0.129283 -53.75 0.128746 -53.76 0.126983 -53.77 0.123919 -53.78 0.119396 -53.79 0.113495 -53.8 0.106198 -53.81 0.097505 -53.82 0.0874293 -53.83 0.0760008 -53.84 0.0632649 -53.85 0.0492834 -53.86 0.034111 -53.87 0.017805 -53.88 0.000564626 -53.89 -0.0174734 -53.9 -0.0361534 -53.91 -0.0553011 -53.92 -0.0747241 -53.93 -0.0942128 -53.94 -0.113542 -53.95 -0.132448 -53.96 -0.150641 -53.97 -0.167887 -53.98 -0.183929 -53.99 -0.198511 -54 -0.211388 -54.01 -0.222328 -54.02 -0.23112 -54.03 -0.237576 -54.04 -0.241399 -54.05 -0.242501 -54.06 -0.240906 -54.07 -0.236588 -54.08 -0.229567 -54.09 -0.219912 -54.1 -0.207736 -54.11 -0.1932 -54.12 -0.17651 -54.13 -0.157797 -54.14 -0.137466 -54.15 -0.115877 -54.16 -0.0933716 -54.17 -0.0703059 -54.18 -0.0470461 -54.19 -0.0239597 -54.2 -0.00140926 -54.21 0.020255 -54.22 0.0405708 -54.23 0.0593061 -54.24 0.0762001 -54.25 0.0910187 -54.26 0.103567 -54.27 0.113691 -54.28 0.121279 -54.29 0.126266 -54.3 0.128604 -54.31 0.128126 -54.32 0.125122 -54.33 0.119704 -54.34 0.112018 -54.35 0.102245 -54.36 0.0905931 -54.37 0.0772989 -54.38 0.0626185 -54.39 0.046805 -54.4 0.0301399 -54.41 0.0129882 -54.42 -0.00435681 -54.43 -0.0216069 -54.44 -0.0384832 -54.45 -0.0547218 -54.46 -0.0700777 -54.47 -0.08433 -54.48 -0.097226 -54.49 -0.108572 -54.5 -0.118316 -54.51 -0.126375 -54.52 -0.132706 -54.53 -0.1373 -54.54 -0.140187 -54.55 -0.141434 -54.56 -0.141139 -54.57 -0.139358 -54.58 -0.136293 -54.59 -0.13217 -54.6 -0.127177 -54.61 -0.121508 -54.62 -0.115359 -54.63 -0.108918 -54.64 -0.102361 -54.65 -0.0958507 -54.66 -0.089546 -54.67 -0.0835589 -54.68 -0.0779652 -54.69 -0.0728156 -54.7 -0.0681322 -54.71 -0.063909 -54.72 -0.0601153 -54.73 -0.056698 -54.74 -0.0535865 -54.75 -0.0507088 -54.76 -0.0479472 -54.77 -0.0452078 -54.78 -0.0424022 -54.79 -0.0394512 -54.8 -0.0362893 -54.81 -0.0328677 -54.82 -0.0291574 -54.83 -0.025147 -54.84 -0.0208329 -54.85 -0.0162776 -54.86 -0.0115371 -54.87 -0.00668255 -54.88 -0.00179644 -54.89 0.00303173 -54.9 0.00771005 -54.91 0.0121489 -54.92 0.0162545 -54.93 0.0199338 -54.94 0.0231555 -54.95 0.0258847 -54.96 0.0281066 -54.97 0.0298273 -54.98 0.0310736 -54.99 0.0318921 -55 0.0323467 -55.01 0.0325087 -55.02 0.0324796 -55.03 0.0323729 -55.04 0.0322908 -55.05 0.0323345 -55.06 0.0325997 -55.07 0.0331738 -55.08 0.0341323 -55.09 0.035537 -55.1 0.0374646 -55.11 0.0399335 -55.12 0.042936 -55.13 0.0464652 -55.14 0.0504995 -55.15 0.0550043 -55.16 0.0599338 -55.17 0.0652331 -55.18 0.070841 -55.19 0.0767039 -55.2 0.0827328 -55.21 0.0888535 -55.22 0.0949965 -55.23 0.101094 -55.24 0.107079 -55.25 0.112886 -55.26 0.118453 -55.27 0.123719 -55.28 0.128583 -55.29 0.133012 -55.3 0.136949 -55.31 0.140333 -55.32 0.143106 -55.33 0.145212 -55.34 0.146598 -55.35 0.147215 -55.36 0.147009 -55.37 0.14589 -55.38 0.143901 -55.39 0.141034 -55.4 0.137299 -55.41 0.132719 -55.42 0.127336 -55.43 0.121209 -55.44 0.114414 -55.45 0.10703 -55.46 0.0991616 -55.47 0.0909631 -55.48 0.0825613 -55.49 0.0740859 -55.5 0.0656648 -55.51 0.0574199 -55.52 0.0494629 -55.53 0.0418903 -55.54 0.0348044 -55.55 0.0282673 -55.56 0.0222846 -55.57 0.016859 -55.58 0.0119689 -55.59 0.00756945 -55.6 0.00359489 -55.61 -3.79416e-05 -55.62 -0.00342541 -55.63 -0.00667036 -55.64 -0.00989607 -55.65 -0.0132099 -55.66 -0.0167058 -55.67 -0.0204631 -55.68 -0.0245425 -55.69 -0.0289825 -55.7 -0.0337969 -55.71 -0.0389739 -55.72 -0.0444957 -55.73 -0.0502706 -55.74 -0.0562042 -55.75 -0.0621895 -55.76 -0.0681062 -55.77 -0.073826 -55.78 -0.0792181 -55.79 -0.0841548 -55.8 -0.0885168 -55.81 -0.0921276 -55.82 -0.0949588 -55.83 -0.0969498 -55.84 -0.0980639 -55.85 -0.09829 -55.86 -0.097642 -55.87 -0.096158 -55.88 -0.0938978 -55.89 -0.0909305 -55.9 -0.0873238 -55.91 -0.0832359 -55.92 -0.0787773 -55.93 -0.0740592 -55.94 -0.0691885 -55.95 -0.0642652 -55.96 -0.0593784 -55.97 -0.0546044 -55.98 -0.0500129 -55.99 -0.0456616 -56 -0.0415697 -56.01 -0.0377547 -56.02 -0.0342235 -56.03 -0.0309747 -56.04 -0.0280013 -56.05 -0.0252932 -56.06 -0.0228403 -56.07 -0.0206458 -56.08 -0.0187048 -56.09 -0.0170082 -56.1 -0.0155635 -56.11 -0.0143832 -56.12 -0.0134841 -56.13 -0.0128852 -56.14 -0.0126058 -56.15 -0.0126627 -56.16 -0.0130901 -56.17 -0.0138791 -56.18 -0.0150106 -56.19 -0.0164629 -56.2 -0.0182 -56.21 -0.0201717 -56.22 -0.0223132 -56.23 -0.0245463 -56.24 -0.0267818 -56.25 -0.0289059 -56.26 -0.030812 -56.27 -0.0323975 -56.28 -0.0335624 -56.29 -0.0342152 -56.3 -0.0342767 -56.31 -0.0336842 -56.32 -0.0323943 -56.33 -0.0303835 -56.34 -0.0275936 -56.35 -0.0241206 -56.36 -0.0200192 -56.37 -0.0153654 -56.38 -0.0102539 -56.39 -0.00479492 -56.4 0.000889731 -56.41 0.00667134 -56.42 0.0124155 -56.43 0.0179711 -56.44 0.0232217 -56.45 0.0280579 -56.46 0.032385 -56.47 0.0361245 -56.48 0.0392162 -56.49 0.0416183 -56.5 0.0433073 -56.51 0.0442527 -56.52 0.0444493 -56.53 0.0439641 -56.54 0.042832 -56.55 0.0410953 -56.56 0.0388006 -56.57 0.035997 -56.58 0.0327336 -56.59 0.0290585 -56.6 0.025002 -56.61 0.0206161 -56.62 0.0159584 -56.63 0.0110709 -56.64 0.00599712 -56.65 0.000783695 -56.66 -0.00451772 -56.67 -0.00984868 -56.68 -0.0151425 -56.69 -0.0203101 -56.7 -0.0252601 -56.71 -0.0298993 -56.72 -0.0341242 -56.73 -0.0378259 -56.74 -0.0408942 -56.75 -0.0432209 -56.76 -0.0447042 -56.77 -0.0452535 -56.78 -0.0447082 -56.79 -0.043085 -56.8 -0.0403735 -56.81 -0.0365818 -56.82 -0.0317502 -56.83 -0.0259525 -56.84 -0.0192962 -56.85 -0.0119208 -56.86 -0.00399405 -56.87 0.00429821 -56.88 0.0126916 -56.89 0.0209555 -56.9 0.0288543 -56.91 0.0361555 -56.92 0.0426373 -56.93 0.0480965 -56.94 0.0523552 -56.95 0.0552373 -56.96 0.0565522 -56.97 0.05634 -56.98 0.0545861 -56.99 0.0513199 -57 0.0466134 -57.01 0.0405785 -57.02 0.0333628 -57.03 0.0251439 -57.04 0.016103 -57.05 0.00647475 -57.06 -0.00346831 -57.07 -0.0134965 -57.08 -0.0233869 -57.09 -0.0329295 -57.1 -0.0419329 -57.11 -0.0502284 -57.12 -0.0576738 -57.13 -0.0640999 -57.14 -0.069427 -57.15 -0.0736444 -57.16 -0.0767289 -57.17 -0.0786817 -57.18 -0.0795248 -57.19 -0.079298 -57.2 -0.078055 -57.21 -0.0758595 -57.22 -0.0727276 -57.23 -0.0687801 -57.24 -0.0641141 -57.25 -0.0588049 -57.26 -0.0529258 -57.27 -0.0465483 -57.28 -0.0397419 -57.29 -0.0325751 -57.3 -0.0251161 -57.31 -0.0174213 -57.32 -0.00958519 -57.33 -0.00168438 -57.34 0.006203 -57.35 0.0139955 -57.36 0.0216088 -57.37 0.0289576 -57.38 0.0359564 -57.39 0.042519 -57.4 0.0485217 -57.41 0.053936 -57.42 0.0587076 -57.43 0.0627973 -57.44 0.0661832 -57.45 0.0688631 -57.46 0.0708554 -57.47 0.0721996 -57.48 0.0729441 -57.49 0.073155 -57.5 0.0729715 -57.51 0.0725048 -57.52 0.071874 -57.53 0.0712015 -57.54 0.0706073 -57.55 0.070204 -57.56 0.0700918 -57.57 0.0703708 -57.58 0.0711136 -57.59 0.0723307 -57.6 0.0740262 -57.61 0.0761765 -57.62 0.078731 -57.63 0.0816136 -57.64 0.0847259 -57.65 0.0879508 -57.66 0.0911483 -57.67 0.0941624 -57.68 0.0968525 -57.69 0.0990808 -57.7 0.10072 -57.71 0.101656 -57.72 0.101795 -57.73 0.101066 -57.74 0.0994193 -57.75 0.0967676 -57.76 0.0931621 -57.77 0.088655 -57.78 0.0832986 -57.79 0.0771622 -57.8 0.0703287 -57.81 0.0628903 -57.82 0.0549436 -57.83 0.0465857 -57.84 0.0378904 -57.85 0.0289754 -57.86 0.0199171 -57.87 0.0107784 -57.88 0.00161013 -57.89 -0.0075488 -57.9 -0.0166699 -57.91 -0.0257332 -57.92 -0.034724 -57.93 -0.0436239 -57.94 -0.0524272 -57.95 -0.0611177 -57.96 -0.069672 -57.97 -0.0780576 -57.98 -0.0862309 -57.99 -0.0941366 -58 -0.101708 -58.01 -0.108855 -58.02 -0.115461 -58.03 -0.121461 -58.04 -0.12676 -58.05 -0.131267 -58.06 -0.134896 -58.07 -0.137572 -58.08 -0.139233 -58.09 -0.139837 -58.1 -0.139316 -58.11 -0.137662 -58.12 -0.134958 -58.13 -0.131255 -58.14 -0.126624 -58.15 -0.121157 -58.16 -0.11496 -58.17 -0.10815 -58.18 -0.100855 -58.19 -0.0931865 -58.2 -0.085293 -58.21 -0.0773027 -58.22 -0.0693199 -58.23 -0.061434 -58.24 -0.0537168 -58.25 -0.0462213 -58.26 -0.0389815 -58.27 -0.0320124 -58.28 -0.0253306 -58.29 -0.0189022 -58.3 -0.0126922 -58.31 -0.00666423 -58.32 -0.000779479 -58.33 0.00499952 -58.34 0.010705 -58.35 0.0163606 -58.36 0.0219787 -58.37 0.0275536 -58.38 0.0330692 -58.39 0.0384926 -58.4 0.0437767 -58.41 0.0488633 -58.42 0.0536847 -58.43 0.0581676 -58.44 0.0622361 -58.45 0.0658091 -58.46 0.0687729 -58.47 0.0711096 -58.48 0.0727734 -58.49 0.073733 -58.5 0.0739733 -58.51 0.0734962 -58.52 0.0723201 -58.53 0.070479 -58.54 0.0680056 -58.55 0.0649464 -58.56 0.0614105 -58.57 0.0574718 -58.58 0.0532054 -58.59 0.0486841 -58.6 0.0439758 -58.61 0.0391407 -58.62 0.0342298 -58.63 0.029283 -58.64 0.0243317 -58.65 0.0193937 -58.66 0.0144759 -58.67 0.00957792 -58.68 0.00469444 -58.69 -0.000182309 -58.7 -0.00505962 -58.71 -0.00994158 -58.72 -0.0148261 -58.73 -0.019701 -58.74 -0.0245445 -58.75 -0.029324 -58.76 -0.0339964 -58.77 -0.0385079 -58.78 -0.0427964 -58.79 -0.0467926 -58.8 -0.0504232 -58.81 -0.0535746 -58.82 -0.0561932 -58.83 -0.0582207 -58.84 -0.0596002 -58.85 -0.0602864 -58.86 -0.0602478 -58.87 -0.0594685 -58.88 -0.0579491 -58.89 -0.0557064 -58.9 -0.0527149 -58.91 -0.0490896 -58.92 -0.0448938 -58.93 -0.0401992 -58.94 -0.0350839 -58.95 -0.0296294 -58.96 -0.023917 -58.97 -0.0180257 -58.98 -0.0120288 -58.99 -0.00599584 -59 1.02215e-05 -59.01 0.00594362 -59.02 0.0117681 -59.03 0.0174561 -59.04 0.0229876 -59.05 0.0283483 -59.06 0.0335271 -59.07 0.038508 -59.08 0.0432716 -59.09 0.0478139 -59.1 0.0521126 -59.11 0.0561385 -59.12 0.0598539 -59.13 0.0632132 -59.14 0.0661632 -59.15 0.0686444 -59.16 0.0705661 -59.17 0.0718546 -59.18 0.0724725 -59.19 0.0723628 -59.2 0.0714776 -59.21 0.069781 -59.22 0.0672525 -59.23 0.0638886 -59.24 0.0597052 -59.25 0.0546934 -59.26 0.0489421 -59.27 0.0425549 -59.28 0.0356279 -59.29 0.0282719 -59.3 0.0206085 -59.31 0.0127661 -59.32 0.00487626 -59.33 -0.00293125 -59.34 -0.0105074 -59.35 -0.0177423 -59.36 -0.0245421 -59.37 -0.0308267 -59.38 -0.0365345 -59.39 -0.0416242 -59.4 -0.0460742 -59.41 -0.0498822 -59.42 -0.0530631 -59.43 -0.0555974 -59.44 -0.0575872 -59.45 -0.0590856 -59.46 -0.0601496 -59.47 -0.0608367 -59.48 -0.0612012 -59.49 -0.061291 -59.5 -0.061145 -59.51 -0.0607881 -59.52 -0.0602249 -59.53 -0.0594708 -59.54 -0.0585137 -59.55 -0.0573307 -59.56 -0.0558898 -59.57 -0.0541528 -59.58 -0.0520777 -59.59 -0.0496225 -59.6 -0.0467329 -59.61 -0.0433596 -59.62 -0.0395058 -59.63 -0.0351603 -59.64 -0.0303254 -59.65 -0.0250175 -59.66 -0.0192676 -59.67 -0.0131213 -59.68 -0.00663731 -59.69 0.000122378 -59.7 0.00706512 -59.71 0.0140902 -59.72 0.0211042 -59.73 0.0280125 -59.74 0.0347216 -59.75 0.0411421 -59.76 0.0471906 -59.77 0.0527915 -59.78 0.0578424 -59.79 0.0623013 -59.8 0.0661409 -59.81 0.06933 -59.82 0.0718477 -59.83 0.0736835 -59.84 0.0748357 -59.85 0.0753106 -59.86 0.0751217 -59.87 0.0742395 -59.88 0.0727348 -59.89 0.0706464 -59.9 0.0680087 -59.91 0.0648603 -59.92 0.0612435 -59.93 0.0572046 -59.94 0.0527942 -59.95 0.0480669 -59.96 0.0430663 -59.97 0.037886 -59.98 0.0325963 -59.99 0.0272721 -60 0.0219913 diff --git a/docs/source/getting-started.rst b/docs/source/getting-started.rst deleted file mode 100644 index f4d0a8e..0000000 --- a/docs/source/getting-started.rst +++ /dev/null @@ -1,161 +0,0 @@ -:tocdepth: -1 - -.. index:: getting-started - -.. _getting-started: - -================ -Getting started -================ - -.. image:: ./img/pdfprimer.png - :alt: codecov-in-pr-comment - :width: 150px - :align: right - -For detailed instructions and in-depth examples of modeling Pair Distribution Function data with ``diffpy.cmi``, we highly recommend the book, - -*Atomic Pair Distribution Function Analysis: A Primer* by Simon J. L. Billinge and Kirsten M. Ø. Jensen (Oxford University Press, 2023). - -To purchase this book, please visit `this link `_. - - -Installation ------------- - -To install ``diffpy.cmi``, create a new conda environment or activate an existing environment and install the package from the conda-forge channel. - -.. code-block:: bash - - conda create -n diffpy.cmi-env - conda activate diffpy.cmi-env - conda install -c conda-forge diffpy.cmi - -To confirm that the installation was successful, type - -.. code-block:: bash - - cmi --version - -The output should print the latest version. - -If the above does not work, you can use ``pip`` to download and install the latest release from -`Python Package Index `_. -To install using ``pip`` into your ``diffpy.cmi_env`` environment, type - -.. code-block:: bash - - pip install diffpy.cmi - -Pack and Profile Installation ------------------------------ - -Use the `cmi` command-line interface to install and manage modular optional dependencies, known as `packs`, -and to configure or execute user-defined workflows that combine multiple packs with optional post-installation steps, -known as `profiles`. To use `cmi`, you can run the following example commands: - -Show available commands and options with, - -.. code-block:: bash - - cmi -h - -List installed and available packs and profiles, - -.. code-block:: bash - - cmi pack list - cmi profile list - -Show details of a specific pack or profile, - -.. code-block:: bash - - cmi pack show - cmi profile show - -Install a pack or profile (by name or path), - -.. code-block:: bash - - cmi install - cmi install - cmi install - -.. admonition:: Example installation - - For example, to install the pack for PDF modeling, type, - - .. code-block:: bash - - cmi install pdf - - To check to see if the pack was installed, type, - - .. code-block:: bash - - cmi pack list - - The output should look something like this, - - .. code-block:: bash - - Installed: - - core - - pdf - Available to install: - - plotting - - tests - - docs - - -Download examples ------------------ - -To list and copy example scripts and data to your working directory, type, - -.. code-block:: bash - - cmi example list - cmi example copy - -.. admonition:: Example - - For example, to see the example scripts for PDF fitting, type, - - .. code-block:: bash - - cmi example list - - The output should look something like this, - - .. code-block:: bash - - ch03NiModelling - ch05Fit2Phase - ch06RefineCrystalStructureGen - ch07StructuralPhaseTransitions - ch08NPRefinement - ch11ClusterXYZ - - To copy the example for bulk Ni PDF fitting, type, - - .. code-block:: bash - - cmi example copy ch03NiModelling - - This will copy the example directory ``ch03NiModelling`` to your current working directory. Within this directory exists - the scripts and data to fit the bulk Ni PDF. - - You can then run the fitting script with, - - .. code-block:: bash - - python ch03NiModelling/solutions/diffpy-cmi/fitBulkNi.py - - -Data and Examples ------------------ - -Worked examples and experimental data from the book are freely available at our -`GitHub repository `_. diff --git a/docs/source/img/CMI-logo.png b/docs/source/img/CMI-logo.png new file mode 100644 index 0000000..12a98cb Binary files /dev/null and b/docs/source/img/CMI-logo.png differ diff --git a/docs/source/img/Ni_fit.png b/docs/source/img/Ni_fit.png index e74a4f5..8f8865f 100644 Binary files a/docs/source/img/Ni_fit.png and b/docs/source/img/Ni_fit.png differ diff --git a/docs/source/img/diffpycmi_screenshot.png b/docs/source/img/diffpycmi_screenshot.png index b491920..579cf11 100644 Binary files a/docs/source/img/diffpycmi_screenshot.png and b/docs/source/img/diffpycmi_screenshot.png differ diff --git a/docs/source/img/issue_template.png b/docs/source/img/issue_template.png new file mode 100644 index 0000000..8a231df Binary files /dev/null and b/docs/source/img/issue_template.png differ diff --git a/docs/source/index.rst b/docs/source/index.rst index 80057f2..7b7566d 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -8,38 +8,64 @@ ``diffpy.cmi`` - Complex modeling infrastructure: a modular framework for multi-modal modeling of scientific data. -diffpy.cmi is designed as an extensible complex modeling infrastructure. Users and developers can readily integrate novel data types and constraints into custom workflows. While widely used for advanced analysis of structural data, the framework is general and can be applied to any problem where model parameters are refined to fit calculated quantities to data. +``diffpy.cmi`` is designed as an extensible complex modeling infrastructure. +Users and developers can readily integrate novel data types and constraints into custom workflows. +While widely used for advanced analysis of structural data, the framework is general and can be applied to any problem where +model parameters are refined to fit data. -diffpy.cmi is a community-driven project that supports Unix, Linux, macOS, and Windows platforms. It is designed to be used in Python scripts enabling flexible scripting and automation for advanced and reproducible workflows. Users are encouraged to leverage the software for their modeling needs and to contribute feedback, use cases, and extensions through the project community. +``diffpy.cmi`` is a community-driven project that supports Unix, Linux, macOS, and Windows platforms. +It is designed to be used in Python scripts enabling flexible scripting and automation for advanced and reproducible workflows. +Users are encouraged to leverage the software for their modeling needs and to contribute feedback, +use cases, and extensions through the project community. .. image:: ./img/diffpycmi_screenshot.png :alt: codecov-in-pr-comment - :width: 400px + :width: 600px :align: center ======================================= -Community Use and Extensible Modeling +The power of diffpy.cmi ======================================= -One of the key strengths of ``diffpy.cmi`` is its modular design, which allows the integration and fitting of *any* data type, not just PDFs. -While its current core functionality is in PDF modeling and multi-dataset fitting, **we actively encourage and support community-developed modules and workflows for any data types you see fit!** +``diffpy.cmi`` is designed to be a **generalized regression engine** for any data type, enabling researchers to fit, analyze, and combine multiple sources of information in a unified framework. + +.. raw:: html + +
+ diffpy.cmi can be used to fit ANY type of data! +
+ +One of the key strengths of ``diffpy.cmi`` is its modular design, which allows the integration and fitting of *any* data type. +While its most commonly used functionality is in pair distribution function (PDF) modeling and multi-dataset fitting, +**we actively encourage and support community-developed modules and workflows for any data types you see fit!** .. image:: ./img/cmi_problem_types.png :alt: codecov-in-pr-comment :width: 500px :align: center -Have you built a new workflow you'd like to implement into ``diffpy.cmi``? -We would love to **highlight your extension or application!** - -1. **Share your work:** Please `open an issue or a pull request `_ to share your work and help us expand the platform. -2. **Be recognized:** Community contributions and new use cases will be showcased and credited here. +To make ``diffpy.cmi`` easy to use, we organize functionality into **Packs** and **Profiles**, allowing users to contribute their own modules and workflows seamlessly. +Please see the :ref:`overview ` for more information on these concepts and how you can contribute your own extensions to the community! =============== Getting started =============== -To get started, please visit the :ref:`Getting started ` page. +To get started, please visit the :ref:`Getting started ` section. + + +.. image:: ./img/pdfprimer.png + :alt: codecov-in-pr-comment + :width: 150px + :align: right + +For detailed instructions and in-depth examples of modeling Pair Distribution Function data with ``diffpy.cmi``, we highly recommend the book, + +*Atomic Pair Distribution Function Analysis: A Primer* by Simon J. L. Billinge and Kirsten M. Ø. Jensen (Oxford University Press, 2023). + +To purchase this book, please visit `this link `_. + + ======= Authors @@ -52,7 +78,7 @@ https://github.com/diffpy/diffpy.cmi/graphs/contributors. Installation ============ -See the `README `_ +See the :ref:`installation` page or the `README `_ file included with the distribution. ================ @@ -76,14 +102,41 @@ If you use ``diffpy.cmi`` in a scientific publication, we would like you to cite ================= Table of contents ================= + .. toctree:: - :maxdepth: 2 + :maxdepth: 1 + :caption: WHAT IS DIFFPY.CMI? + + Overview + +.. toctree:: + :maxdepth: 1 + :caption: GETTING STARTED + + Installation + Command-Line Interface + Package API + +.. toctree:: + :maxdepth: 1 + :caption: AVAILABLE PACKS & PROFILES + + Packs + Profiles + +.. toctree:: + :maxdepth: 1 + :caption: EXAMPLES & MORE + + Examples + +.. toctree:: + :maxdepth: 1 + :caption: REFERENCE + + Release notes + License - getting-started - Tutorials - Package API - release - license ======= Indices diff --git a/docs/source/installation.rst b/docs/source/installation.rst new file mode 100644 index 0000000..624f5f8 --- /dev/null +++ b/docs/source/installation.rst @@ -0,0 +1,33 @@ +:tocdepth: -1 + +.. index:: installation + +.. _installation: + +================ +Installation +================ + +To install ``diffpy.cmi``, create a new conda environment or activate an existing environment and install the package from the conda-forge channel. + +.. code-block:: bash + + conda create -n diffpy.cmi-env + conda activate diffpy.cmi-env + conda install -c conda-forge diffpy.cmi + +To confirm that the installation was successful, type + +.. code-block:: bash + + cmi --version + +The output should print the latest version. + +If the above does not work, you can use ``pip`` to download and install the latest release from +`Python Package Index `_. +To install using ``pip`` into your ``diffpy.cmi_env`` environment, type + +.. code-block:: bash + + pip install diffpy.cmi diff --git a/docs/source/overview.rst b/docs/source/overview.rst new file mode 100644 index 0000000..dbf3783 --- /dev/null +++ b/docs/source/overview.rst @@ -0,0 +1,106 @@ + +.. _overview: + +Overview +=========== + +``diffpy.cmi`` is designed as an extensible complex modeling infrastructure. +Users and developers can readily integrate novel data types and constraints into custom workflows. +While widely used for advanced analysis of structural data, the framework is general and can be applied to any problem where +model parameters are refined to fit data. + +``diffpy.cmi`` is a community-driven project that supports Unix, Linux, macOS, and Windows platforms. +It is designed to be used in Python scripts enabling flexible scripting and automation for advanced and reproducible workflows. +Users are encouraged to leverage the software for their modeling needs and to contribute feedback, +use cases, and extensions through the project community. + +.. image:: ./img/CMI-logo.png + :alt: codecov-in-pr-comment + :width: 600px + :align: center + +To make ``diffpy.cmi`` easy to use, we organize functionality into **Packs** and **Profiles**, +allowing users to contribute their own modules and workflows seamlessly. + +.. _whats-a-pack: + +=============== +What's a Pack? +=============== + +In short, a **pack** is a collection of Python packages that work together to accomplish a specific modeling task within the ``diffpy.cmi`` framework. +All packs rely on the pack called ``core``, which provides the essential building blocks for creating and running regression workflows. + +For example, the ``pdf`` pack is designed to handle pair distribution function (PDF) modeling and analysis. It is comprised of two additional Python packages, +``diffpy.srreal`` and ``pyobjcryst``. + + +Why Packs? +----------- + +``diffpy.cmi`` is designed to be a centeralized place for all regression tasks. If a user wants to use ``diffpy.cmi`` for one specific regression task +and not another, they can do so without having to install unnecessary packages. This design limits version conflicts between packages +that may arise if all packages were bundled together. + +Overall, having a modular way to add new functionality is essential in keeping the codebase maintainable and user-friendly! + +How to contribute a Pack +------------------------- + +Have you built a new workflow you'd like to implement into ``diffpy.cmi``? +We would love to **highlight it here!** +To share your work with the community, we ask you to follow these simple steps: + +1. **Open an Issue:** Navigate to the ``diffpy.cmi`` `issues page `_ on GitHub and click :guilabel:`New Issue`. + Select the "New Pack Proposal" template. Fill out the template with the name of your pack and open the issue. + +.. image:: ./img/issue_template.png + :alt: codecov-in-pr-comment + :width: 500px + :align: center + +1. **Create a Pull Request:** Address all prompts in the issue thread and check all boxes. + Once everything is complete and the pack is ready to be added to ``diffpy.cmi``, + `create a pull request `_ (PR) linking to the issue. + The PR will be reviewed by the maintainers and merged once approved. +2. **Be recognized:** Make sure to add your pack to the list of available packs in the documentation! + Community contributions and new use cases will be showcased and credited here. + +=================== +What's a Profile? +=================== + +A **profile** is a pre-configured compilation of packs and packages for a specific data type or analysis task within the ``diffpy.cmi`` framework. +Profiles are designed to be easily installable configurations that bundle multiple packs and any additional dependencies +required for a particular modeling task. + +For example, the profile ``pdf-plus`` contains the ``plotting`` and ``pdf`` packs. +Additionally, it contains the package ``ipykernel`` to enable Jupyter Notebook support. + +Why Profiles? +------------------- + +Profiles are useful because they allow users to quickly set up and run modeling workflows without needing to configure each component individually. +Running a simple command ``cmi install `` will install all necessary packs and dependencies for that profile. + +How to contribute a Profile +--------------------------- + +Have you built a profile that you'd like to share with the community? +We would love to **highlight it here!** +To share your work with the community, we ask you to follow these simple steps: + +1. **Open an Issue:** Navigate to the ``diffpy.cmi`` `issues page `_ on GitHub and click :guilabel:`New Issue`. + Select the "New Profile Proposal" template. Fill out the template with the name of your profile and open the issue. + +.. image:: ./img/issue_template.png + :alt: codecov-in-pr-comment + :width: 500px + :align: center + +2. **Create a Pull Request:** Address all prompts in the issue thread and check all boxes. + Once everything is complete and the profile is ready to be added to ``diffpy.cmi``, + `create a pull request `_ (PR) linking to the issue. + The PR will be reviewed by the maintainers and merged once approved. +3. **Be recognized:** Make sure to add your profile to the list of available profiles in the documentation! + Community contributions and new use cases will be showcased and credited here. diff --git a/docs/source/tutorials/core.rst b/docs/source/tutorials/core.rst new file mode 100644 index 0000000..7afaf42 --- /dev/null +++ b/docs/source/tutorials/core.rst @@ -0,0 +1,9 @@ +==== +core +==== + +To copy an example to your current working directory, use the command ``cmi copy ``. + +Available Examples +------------------ +- linefit diff --git a/docs/source/tutorials/index.rst b/docs/source/tutorials/index.rst index 487326c..020f918 100644 --- a/docs/source/tutorials/index.rst +++ b/docs/source/tutorials/index.rst @@ -1,233 +1,9 @@ -Tutorials -========= +====================== +Examples by pack +====================== -The atomic pair distribution function (PDF) provides a powerful route to understanding the local atomic structure of materials in real space. -Despite its utility, PDF fitting and analysis can be challenging. -The process of understand PDFs requires time, care, and the development of intuition to connect structural models to experimental data. -Hopefully by the end of this tutorial series, PDF fitting will go from being a mysterious black box to a powerful tool in your structural analysis. +.. toctree:: + :maxdepth: 1 -Example usage of ``diffpy.cmi`` can be found at `this GitHub repo `_. - -.. _structural-parameters: - -Structural parameters ---------------------- - -Before we start fitting PDFs, lets first understand the parameters that will be refined on and what they mean. -It is important to understand these parameters as they will help you gain better insight into the fitting process and -how to interpret the results. - -.. include:: ../snippets/structure_params.rst - -.. _dataset-parameters: - -Dataset parameters ------------------- - -.. include:: ../snippets/data_params.rst - - -Bulk Ni PDF fitting -------------------- -Although it is easier (and recommended) to fit PDFs of bulk homogeneous materials in `PDFgui `_, -fitting a bulk PDF in ``diffpy.cmi`` will provide you with a deeper insight into the fitting process. Additionally, this pedagogical -example will help you build up confidence in using ``diffpy.cmi``. - -For bulk PDFs, we highly recommend using PDFgui. PDFgui is a great stepping stone before using ``diffpy.cmi``. -If you don't know how to use PDFgui, please see this -`PDFgui tutorial `_ -to fit the same Ni PDF with PDFgui. - -.. admonition:: Data Download - - To download the data and scripts for this fit, type in your command line, - - .. code-block:: bash - - cmi example copy ch03NiModelling - - This will copy the example directory ``ch03NiModelling`` to your current working directory. - Within this directory exists data for this exercise and a script to fit the bulk Ni PDF. - Below walks you through the code in the script step-by-step. - -1. To start, we must first import all necessary modules and packages. - - .. code-block:: python - - import matplotlib.pyplot as plt - import numpy as np - - from diffpy.utils.parsers.loaddata import loadData - from diffpy.structure import loadStructure - from diffpy.srfit.fitbase import FitContribution, FitRecipe - from diffpy.srfit.fitbase import Profile - from diffpy.srfit.pdf import PDFParser, PDFGenerator - from diffpy.structure.parsers import getParser - from diffpy.srfit.structure import constrainAsSpaceGroup - -2. As a sanity check, lets load the cif and PDF data to see what they look like. - - .. code-block:: python - - stru_path = "~/path/to/data/Ni.cif" - data_path = "~/path/to/data/Ni.gr" - # Load the structure and PDF data - structure = loadStructure(stru_path) - pdf_data = loadData(data_path) - print("Ni cif file:") - print(structure) - - r = pdf_data[:, 0] - g = pdf_data[:, 1] - plt.plot(r, g, label="PDF Data") - plt.xlabel("r (Angstrom)") - plt.ylabel("G(r)") - plt.title("Ni PDF Data") - plt.legend() - plt.show() - -3. Once you see the data and have a feel for it, we can begin the fitting process. We will first define - the :ref:`dataset-parameters` and :ref:`Structural parameters `. These values - will be used to initialize our fit. Given this data, these values are reasonable starting points. - - .. code-block:: python - - PDF_RMIN = 1.5 - PDF_RMAX = 50 - PDF_RSTEP = 0.01 - QMAX = 25 - QMIN = 0.1 - CUBICLAT_I = 3.52 - SCALE_I = 0.4 - UISO_I = 0.005 - DELTA2_I = 2 - QDAMP_I = 0.04 - QBROAD_I = 0.02 - -4. Now, we will define a function called ``make_recipe``. - This function will essentially tell the fit what to do. It contains all the necessary parameters and - contributions for the PDF fitting process. Because looking at a function with a lot of code is scary, - here is a gist of what the function does. - - - .. image:: ../img/makerecipe_flow.png - :alt: codecov-in-pr-comment - :width: 210px - :align: right - - - **Parses PDF data:** Given the PDF data file it extracts the Q_min and Q_max values. - - **Parses cif file:** Given the cif file it extracts the structure and space group information. - - **Simulates a PDF:** Given the structure, it computes a simulated PDF over predefined r-range. - - **Creates a Fit Contribution:** This will hold the simulated PDF and the experimental PDF. - - **Creates a Fit Recipe:** This is the main recipe that combines all contributions and parameters for the fit. - - **Refines params based on Fit Recipe:** When the function is called, the parameters defined in the fit recipe are refined to best fit the data. - - - - .. code-block:: python - - def make_recipe(cif_path, dat_path): - - # 1. Get structural info - p_cif = getParser('cif') # Get the parser for CIF files - stru = p_cif.parseFile(cif_path) # Using the parser, load the structure from the CIF - sg = p_cif.spacegroup.short_name # Get the space group to constrain the fit later on - - # 2. Get PDF data - profile = Profile() # Create a Profile object to hold PDF data and metadata - parser = PDFParser() # Create a PDFParser to get the appropriate Q_min and Q_max - parser.parseFile(dat_path) # Parse the PDF data file - profile.loadParsedData(parser) # Load the parsed PDF data into the profile - profile.setCalculationRange( - xmin=PDF_RMIN, xmax=PDF_RMAX, dx=PDF_RSTEP - ) # Set the calculation range for the PDF fit - - # 3. Create a PDFGenerator to generate a simulated PDF from the structure - genpdf = PDFGenerator("generatedPDF") # Give the generator a name - genpdf.setStructure(stru, periodic=True) # Give the generator the structure - - # 4. Create a Fit Contribution object - contribution = FitContribution("niPDFfit") # Give the contribution a name - contribution.addProfileGenerator(genpdf) # Add the PDFGenerator to the contribution - - # 5. Add the Profile to the contribution - contribution.setProfile(profile, xname="r") # Add the Profile to the contribution - - # 6. Set the equation used to combine the simulated PDF with the experimental PDF - contribution.setEquation("s1*generatedPDF") # scaling factor for the simulated PDF - - # 7. Create a Fit Recipe which turns our physics model into a mathematical recipe - recipe = FitRecipe() - recipe.addContribution(contribution) # Add the contribution to the recipe - - # 8. Initialize the experimental parameters - recipe.niPDFfit.generatedPDF.qdamp.value = QDAMP_I - recipe.niPDFfit.generatedPDF.qbroad.value = QBROAD_I - recipe.niPDFfit.generatedPDF.setQmin(QMIN) - recipe.niPDFfit.generatedPDF.setQmax(QMAX) - - # 9. Add scaling factor to the recipe - recipe.addVar(contribution.s1, value=SCALE_I, tag="scale") - - # 10. Add structural params to recipe, constraining them to the space group - spacegroupparams = constrainAsSpaceGroup(genpdf.phase, sg) # Extract SG constraints - for par in spacegroupparams.latpars: # Iterate over constrained lattice parameters - recipe.addVar(par, - value=CUBICLAT_I, - name="fcc_lat", - tag="lat") - for par in spacegroupparams.adppars: # Iterate over constrained ADPs - recipe.addVar(par, - value=UISO_I, - fixed=False, - name="fcc_ADP", - tag="adp") - recipe.addVar(genpdf.delta2, - name="Ni_Delta2", - value=DELTA2_I, - tag="d2") # Add delta2 parameter for PDF peak broadening - - # 11. Add instrumental Qdamp and Qbroad parameters to the recipe - recipe.addVar(genpdf.qdamp, - fixed=False, - name="Calib_Qdamp", - value=QDAMP_I, - tag="inst") - recipe.addVar(genpdf.qbroad, - fixed=False, - name="Calib_Qbroad", - value=QBROAD_I, - tag="inst") - return recipe - -5. Now we can call ``make_recipe`` and plot the fit, experimental, and difference curves to evaluate how well the data fit. - - .. code-block:: python - - recipe = make_recipe(cif_path, dat_path) # Call the function to create the fit recipe - recipe() - r = recipe.pdfcontrib.profile.x - g = recipe.pdfcontrib.profile.y - gcalc = recipe.pdfcontrib.profile.ycalc - diffzero = -0.65 * max(g) * np.ones_like(g) # offset the difference curve - diff = g - gcalc + diffzero - - plt.figure(figsize=(15, 6)) - plt.scatter(r, g, label="Experimental PDF") - plt.plot(r, gcalc, label="Fitted PDF") - plt.plot(r, diff, label="Difference") - - plt.xlabel("r (Angstrom)") - plt.ylabel("G(r)") - plt.title("Ni PDF Fit") - plt.legend() - plt.show() - - Once you run the above code, you should see a plot similar to the one below. - - .. image:: ../img/Ni_Fit.png - :alt: codecov-in-pr-comment - :width: 700px - :align: center - -Congratulations! You have successfully fit a bulk Ni PDF using ``diffpy.cmi``. You are now one step closer to becoming a PDF fitting expert. + core + pdf diff --git a/docs/source/tutorials/pdf.rst b/docs/source/tutorials/pdf.rst new file mode 100644 index 0000000..d12046e --- /dev/null +++ b/docs/source/tutorials/pdf.rst @@ -0,0 +1,249 @@ +=== +pdf +=== + +To copy an example to your current working directory, use the command ``cmi copy ``. + +Available Examples +------------------ +- ch03NiModelling +- ch05Fit2Phase +- ch06RefineCrystalStructureGen +- ch07StructuralPhaseTransitions +- ch08NPRefinement +- ch11ClusterXYZ + +Ni PDF Fitting Tutorial +----------------------- + +The atomic pair distribution function (PDF) provides a powerful route to understanding the local atomic structure of materials in real space. +Despite its utility, PDF fitting and analysis can be challenging. +The process of understand PDFs requires time, care, and the development of intuition to connect structural models to experimental data. +Hopefully by the end of this tutorial series, PDF fitting will go from being a mysterious black box to a powerful tool in your structural analysis. + +Example usage of ``diffpy.cmi`` can be found at `this GitHub repo `_. + +.. _structural-parameters: + +Structural parameters +^^^^^^^^^^^^^^^^^^^^^ + +Before we start fitting PDFs, lets first understand the parameters that will be refined on and what they mean. +It is important to understand these parameters as they will help you gain better insight into the fitting process and +how to interpret the results. + +.. include:: ../snippets/structure_params.rst + +.. _dataset-parameters: + +Dataset parameters +^^^^^^^^^^^^^^^^^^ + +.. include:: ../snippets/data_params.rst + + +Bulk Ni PDF fitting +^^^^^^^^^^^^^^^^^^^ + +Although it is easier (and recommended) to fit PDFs of bulk homogeneous materials in `PDFgui `_, +fitting a bulk PDF in ``diffpy.cmi`` will provide you with a deeper insight into the fitting process. Additionally, this pedagogical +example will help you build up confidence in using ``diffpy.cmi``. + +For bulk PDFs, we highly recommend using PDFgui. PDFgui is a great stepping stone before using ``diffpy.cmi``. +If you don't know how to use PDFgui, please see this +`PDFgui tutorial `_ +to fit the same Ni PDF with PDFgui. + +.. admonition:: Data Download + + To download the data and scripts for this fit, type in your command line, + + .. code-block:: bash + + cmi copy ch03NiModelling + + This will copy the example directory ``ch03NiModelling`` to your current working directory. + Within this directory exists data for this exercise and a script to fit the bulk Ni PDF. + Below walks you through the code in the script step-by-step. + +1. To start, we must first import all necessary modules and packages. + + .. code-block:: python + + import matplotlib.pyplot as plt + import numpy as np + + from diffpy.utils.parsers.loaddata import loadData + from diffpy.structure import loadStructure + from diffpy.srfit.fitbase import FitContribution, FitRecipe + from diffpy.srfit.fitbase import Profile + from diffpy.srfit.pdf import PDFParser, PDFGenerator + from diffpy.structure.parsers import getParser + from diffpy.srfit.structure import constrainAsSpaceGroup + +2. As a sanity check, lets load the cif and PDF data to see what they look like. + + .. code-block:: python + + stru_path = "~/path/to/data/Ni.cif" + data_path = "~/path/to/data/Ni.gr" + # Load the structure and PDF data + structure = loadStructure(stru_path) + pdf_data = loadData(data_path) + print("Ni cif file:") + print(structure) + + r = pdf_data[:, 0] + g = pdf_data[:, 1] + plt.plot(r, g, label="PDF Data") + plt.xlabel("r (Angstrom)") + plt.ylabel("G(r)") + plt.title("Ni PDF Data") + plt.legend() + plt.show() + +3. Once you see the data and have a feel for it, we can begin the fitting process. We will first define + the :ref:`dataset-parameters` and :ref:`Structural parameters `. These values + will be used to initialize our fit. Given this data, these values are reasonable starting points. + + .. code-block:: python + + PDF_RMIN = 1.5 + PDF_RMAX = 50 + PDF_RSTEP = 0.01 + QMAX = 25 + QMIN = 0.1 + CUBICLAT_I = 3.52 + SCALE_I = 0.4 + UISO_I = 0.005 + DELTA2_I = 2 + QDAMP_I = 0.04 + QBROAD_I = 0.02 + +4. Now, we will define a function called ``make_recipe``. + This function will essentially tell the fit what to do. It contains all the necessary parameters and + contributions for the PDF fitting process. Because looking at a function with a lot of code is scary, + here is a gist of what the function does. + + + .. image:: ../img/makerecipe_flow.png + :alt: codecov-in-pr-comment + :width: 210px + :align: right + + - **Parses PDF data:** Given the PDF data file it extracts the Q_min and Q_max values. + - **Parses cif file:** Given the cif file it extracts the structure and space group information. + - **Simulates a PDF:** Given the structure, it computes a simulated PDF over predefined r-range. + - **Creates a Fit Contribution:** This will hold the simulated PDF and the experimental PDF. + - **Creates a Fit Recipe:** This is the main recipe that combines all contributions and parameters for the fit. + - **Refines params based on Fit Recipe:** When the function is called, the parameters defined in the fit recipe are refined to best fit the data. + + + + .. code-block:: python + + def make_recipe(cif_path, dat_path): + + # 1. Get structural info + p_cif = getParser('cif') # Get the parser for CIF files + stru = p_cif.parseFile(cif_path) # Using the parser, load the structure from the CIF + sg = p_cif.spacegroup.short_name # Get the space group to constrain the fit later on + + # 2. Get PDF data + profile = Profile() # Create a Profile object to hold PDF data and metadata + parser = PDFParser() # Create a PDFParser to get the appropriate Q_min and Q_max + parser.parseFile(dat_path) # Parse the PDF data file + profile.loadParsedData(parser) # Load the parsed PDF data into the profile + profile.setCalculationRange( + xmin=PDF_RMIN, xmax=PDF_RMAX, dx=PDF_RSTEP + ) # Set the calculation range for the PDF fit + + # 3. Create a PDFGenerator to generate a simulated PDF from the structure + genpdf = PDFGenerator("generatedPDF") # Give the generator a name + genpdf.setStructure(stru, periodic=True) # Give the generator the structure + + # 4. Create a Fit Contribution object + contribution = FitContribution("niPDFfit") # Give the contribution a name + contribution.addProfileGenerator(genpdf) # Add the PDFGenerator to the contribution + + # 5. Add the Profile to the contribution + contribution.setProfile(profile, xname="r") # Add the Profile to the contribution + + # 6. Set the equation used to combine the simulated PDF with the experimental PDF + contribution.setEquation("s1*generatedPDF") # scaling factor for the simulated PDF + + # 7. Create a Fit Recipe which turns our physics model into a mathematical recipe + recipe = FitRecipe() + recipe.addContribution(contribution) # Add the contribution to the recipe + + # 8. Initialize the experimental parameters + recipe.niPDFfit.generatedPDF.qdamp.value = QDAMP_I + recipe.niPDFfit.generatedPDF.qbroad.value = QBROAD_I + recipe.niPDFfit.generatedPDF.setQmin(QMIN) + recipe.niPDFfit.generatedPDF.setQmax(QMAX) + + # 9. Add scaling factor to the recipe + recipe.addVar(contribution.s1, value=SCALE_I, tag="scale") + + # 10. Add structural params to recipe, constraining them to the space group + spacegroupparams = constrainAsSpaceGroup(genpdf.phase, sg) # Extract SG constraints + for par in spacegroupparams.latpars: # Iterate over constrained lattice parameters + recipe.addVar(par, + value=CUBICLAT_I, + name="fcc_lat", + tag="lat") + for par in spacegroupparams.adppars: # Iterate over constrained ADPs + recipe.addVar(par, + value=UISO_I, + fixed=False, + name="fcc_ADP", + tag="adp") + recipe.addVar(genpdf.delta2, + name="Ni_Delta2", + value=DELTA2_I, + tag="d2") # Add delta2 parameter for PDF peak broadening + + # 11. Add instrumental Qdamp and Qbroad parameters to the recipe + recipe.addVar(genpdf.qdamp, + fixed=False, + name="Calib_Qdamp", + value=QDAMP_I, + tag="inst") + recipe.addVar(genpdf.qbroad, + fixed=False, + name="Calib_Qbroad", + value=QBROAD_I, + tag="inst") + return recipe + +5. Now we can call ``make_recipe`` and plot the fit, experimental, and difference curves to evaluate how well the data fit. + + .. code-block:: python + + recipe = make_recipe(cif_path, dat_path) # Call the function to create the fit recipe + recipe() + r = recipe.pdfcontrib.profile.x + g = recipe.pdfcontrib.profile.y + gcalc = recipe.pdfcontrib.profile.ycalc + diffzero = -0.65 * max(g) * np.ones_like(g) # offset the difference curve + diff = g - gcalc + diffzero + + plt.figure(figsize=(15, 6)) + plt.scatter(r, g, label="Experimental PDF") + plt.plot(r, gcalc, label="Fitted PDF") + plt.plot(r, diff, label="Difference") + + plt.xlabel("r (Angstrom)") + plt.ylabel("G(r)") + plt.title("Ni PDF Fit") + plt.legend() + plt.show() + + Once you run the above code, you should see a plot similar to the one below. + + .. image:: ../img/Ni_fit.png + :alt: codecov-in-pr-comment + :width: 700px + :align: center + +Congratulations! You have successfully fit a bulk Ni PDF using ``diffpy.cmi``. You are now one step closer to becoming a PDF fitting expert. diff --git a/news/cli-docs.rst b/news/cli-docs.rst new file mode 100644 index 0000000..3b9c2db --- /dev/null +++ b/news/cli-docs.rst @@ -0,0 +1,23 @@ +**Added:** + +* Add comprehensive documentation highlighting new cli changes. + +**Changed:** + +* + +**Deprecated:** + +* + +**Removed:** + +* + +**Fixed:** + +* + +**Security:** + +* diff --git a/requirements/profiles/all.yml b/requirements/profiles/pdf-plus.yml similarity index 100% rename from requirements/profiles/all.yml rename to requirements/profiles/pdf-plus.yml diff --git a/src/diffpy/cmi/cli.py b/src/diffpy/cmi/cli.py index 9917de9..cc41441 100644 --- a/src/diffpy/cmi/cli.py +++ b/src/diffpy/cmi/cli.py @@ -34,7 +34,7 @@ def open_manual_and_exit() -> None: """ import webbrowser - url = "https://www.diffpy.org/products/diffpycmi" + url = "diffpy.org/diffpy.cmi" plog.info("Opening manual at %s", url) webbrowser.open(url) raise SystemExit(0)